kernel-rt-devel-4.18.0-488.rt7.277.el8 Dې>Dۀ  ANNDLDPDTDlD|dGRU]:@+ybY*DY'T)D=#ܐH[2.s}5"MKk81q\sZI ܚis^zT*~iq01w\}\:sI@EuQ<Úq(8uuI+?Gh;bAxr:YqQYoc3[ xJ;M?(G̋_}ߢKX@Zr! lvzƏ͡"-z1mIOq*OJ~&Tȭ*5BhK?ǧMrNX得MS fLFoW`!2*q{9DDܥ7VV/q}ipnn :}\wQXm>NqP XNlѕʃަ=;U9dc3j&T<2Q:o~)C_G|&tPqL ENJducAN9D%-xÌKLCc&(420051367f6309e910bc680c4c03fcc7ed4f858d8ee2c1a8e7bf0ef0e46b90ec2e5e8ed87318f73e7cc91254c9305304cefdfddb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c6aff6faf01e2b3d61a7ab9f1f7c8bf7a441529fce61cd6cf5555b298facce583ded2712d6e235236c42bce16fa78ecc02302c85722d3cf49808003c81d7046af1e5d83ed705316ed6f7030efff12d6c7eaa83834d860d2a043c58c4bba04f7302f50302047c435bb500683066023100fdf67feaf2560559959f861589d3545ec31db6c88c5f67acd03d9477a081aa374cc6d17450189736f145723e9ac0a69c023100fdb751634d742c5cf0a108bfa34cfdf7da1ea5ec024b4fb761817d76be9db831bed8b5a1ca175d600965f34e8285972a0302047c435bb50067306502300f6d9806b13f7ec105295d01d360599a8872cc9affda3477fd08970df279974cb26dfb0f233d332970e3969a978a5186023100bf1aa7242816b0e4b6061b255eabc8f844cf65889345cd4ae7ef77751bea8bb393d5e25cb868dea0c47b904208805f280302047c435bb500673065023100fba9c78194c4eaec177750d3c23b23c8f557221373c64d0580e2f798b868a753e1a96450d3462ab93a24ce3e5159588302300bb5b47d1ebf06e2f65a633ca3c609e2221725be4dceaa21e60051335e1c6d0a00214dcea7b1a64ee93031f79e53a2bb0302047c435bb500673065023100f8acaf5d8d0e0582d1cbbffcb3b05ca8b4247bbd005c0c004fbba01ef380bf3f21187c7138bc3c5e443eb47173af268702302cd5f65882144d13406d36094baefe742de1661ebc584c5f83b1294e0fc6da7c1e148d249e9a18da85444e8366387bfc0302047c435bb500663064023016c4e606ef402c259fbf1b6849031e4132b71246333e489bde325e59a804c6ebf08b5a05ce06d18ad47092dcc32db25402304d06640d01c3e88302489e2488dd1f4ec97dec007c73b4790278ba3be5359c1b326693400b9880d91dc467aa6c1300300302047c435bb500683066023100f2d2fbaacd3c25f3cdc5276a68ef0290bcc6540ce7276d1cebf0ec5cae699ef8a7016a8d5d243524267433df70a1421d0231008c2e89403f37f3fef92ffa82c6f16a93d579849b0a11dcafcdaa0f1920717ad491c0e4fa5060b72b4e011030e46cc6af0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100beced2b15b9f001f2caf7152864b9b3967743e4ad4e642a8d96b135062bf1418849ca8e7793766fe912d4d82b797d6380230532193b057eb8797b35417b639693170b8baee9c07ed63b05f9c3275ccc79a20bfebc3efee5eac2466b9a3a1276e17a10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f77d7a868dee56f717337ee9750496737766954d8f2bbf9a6e5691df8f7d3509b30629050c179f99a1f072d88550308e023100c01274d5b4cfe00e676a0b261f337262e7db45e849eac3acd554badd5b0abd4f0dcb96e7bbe5feb188aef70ddca762150302047c435bb50067306502302d46d425bf60747e48484308c3d41bf94bc9158fdc2976331d402fde4f73cb1733a96b7174a7406aecf2aa0e0f2414d5023100dd8e93cd0c8957bcc4c893dbec62c9acd4e6a12a15828d95446750c19fd945a616a63f8c8e3c7430c117180f35c529e90302047c435bb500673065023100c4727687f486cde29d2a5f3170ab33808d4dd947190c0bb2d7f86c88886c503282ca7638b89f78d168c5582c013ea35e02300567473261ce36555b30ecc41e79eb57f0e641ee4a2931ae77f56e3ba0d05d944dcc863964f8af4c0dcecc1714553cbd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d0420c99050cd9075358bf10096e3a9e672d1bc89a0289cbe0680f18420be13fadbe15772af46fbe9b4050da14030c5602307f2ca5145d45ba8c663950483f75e6cdf3479f3d8fa7718d9b07f9ff6b0d66bfca1d76c6daf9d3e20a66ffe65b8971c80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303016261c1ac5d17562347996c4b4f9ddb952bfe488a94f64690d4aa768ceb2a4323337fa9a1bbc5bc6e39d8d439bc82b023072f2471b06846829df86aeccaf73eb6e288ffe9404e331c098fe31458b395278f0401c1f1fec97ba7667d0532fe0a9c30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100fbada52711b4c32f9c093feff7c91f03258543f8f4651b2d359a9518b818c7ff6320f4cbcc27599f315c17615462a3f002304d0bf38e68a40762aa269a1e297af1ec0f3af382c3a0e5ab832143f6b84e62928e25e3fc448322bc3b70db5cc106aa690302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230388b6e7a7b20aa2e571c5635ed05a5c8bcb42f12397af0e885cb41cc787fa2e7959eb7abda2c83533bcbb32202488207023100c91abe2ee1c0c4209cddfda1ee903d3fa5ea535932441c9ad950ae810f577ec1cfc72691d1c00927a049fabda7ae32fa0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023071e46883378b0b31302e44764dc6fc9bf838b0a3a4ea51dc5d77e192230d908871e959bfbefcf55bbafddaeb2203c4ef023100f9811af35545a0bf190bae7cc75d265b195f3a96f55878764d8214474c6c7d038f6fbc96fd86f02c82342c3b5d59146a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303df428a2355f53f6bb96d803cde0d234fcd5cae3487acf5d0b288e8cc4d8c704d88cf38467eb202109760877780fe0c7023100dcbeb721f85e172ee061c61348273f7cfe56b3001f092506c3f95c19b4e510e9a3756573a02904597965d5d77033b45c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cb11164cb040dad5684a55827bfc0b4ae973e7ccbde2daaf81d092a5d7e4c77c594fb9629130965906fbc9a1b261aab3023100d60b2e6e33c1abe22cb0e7fd7bcb2589997e69838c549f76e932d4cb37fa1ff5ac563316836491e232bc9a8cb6ad03e30302047c435bb50066306402307b09c742f5ad91eb8629cf928774c205514cac7a3ac8acb934c6bcd22ac1cd537d1bb3ace238c6bb1262152f290a7cb0023060d07c29c66eac73cf45b4ab0f2c41d8b61b9944875ec443ab64a63a8500a5ead791d68e53ae1456bfa8bbb92ead723e0302047c435bb50066306402306c91f0a3e955d21f1c8e51b7e9b3a5e4ad05d7905c1106b6ac94f061ec12203ac52e218ff69744fc0a8022aa32ecfc820230288a9b86dfe41674e5e8ba621f5bc62ddb8b4dcd6d8cf545106b632961db9de7315087ef0a7dbbd9692c2d4760ce6c120302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304a50339958f213b987d2f13f1a4fd8e3e64d659e49bfa54b72b4fdc28636d0d783ba295585532a1b7db7aba8f93635b702307e80ec540d6d878ce65431855ee98201eafb4fccaebc98f4abd43e94e77a08dde0e9fdc401871d4c649a0c14ee9631180302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302d41eec4699ca848eda142b4e3b503d6990517a57abda5277170a04ea84206e73f2b2cef4db55984665b5b7e6a5a26aa02300c35aba3d7751d85279ef203c499f08a99b2224049a9bc2a6515449c52d61c9910acf7a18eab28f6b22a7468f497002c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023055542b0031208c43ecd1fb01d6fbba08c5972f6eb194d450fcd09dc2fbab12c8a06c1b4eb691488cc7321cebd68e7352023100f5ed3f1ae0c401cddb76d8b786b5daa0dc341a18fdf99ffe6f1d642dc141726a46126b2d31f3e2376168c826acaa2caf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023064acf2503c6a169da4589e86a61a2c4a4b0c77cd45bcd5977e8f289ac0f98e7967467f7a2eb0d35c58d3249c9cba053202305265c96106dc0cfab5c6c5f77c85bd3f4a549fbec7c11379d54182fbbf8b3caed2a0089e4968eba6eb80751026a171070302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304d42e0e5513e384666d162a9ae6e5c4c58d1d722f5c5787ecd2100c5be6ab2d0beaea70a44d06e8d935ce5e47454fed9023100f25014817e862521495d1c10db528287e1f79709841b9c054f2848aae6195a2757904e6afd96c6fe79d7b79a6fcd44e10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230321c8d7d2486a521ccbc14af83e779e854b3baeec5218a0f6788277bdc0646a765a2f860b03564e77a5a8c8eb0eee5f0023100aa065b34dc271c89aa2ff6a02778fb762581f139ff9d50c26a96592728aef4ddfeb2eef56aa7176eaca4496b7a98ecbf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310097aa2c7156c23037c26af778d85c3a7773de6f2695ac5c072754d9e632dc9ddfc6f000f83fd703c0c6d856601a7f570702303687319224f8d51596ec43977bdd46d6786aa94ba21a1176afd30bc2eaea028db2181b0235eb7cea17d2c4b70cb97e070302047c435bb50067306502303213c872889e97eef3124df5d08682d9c9dfbea2c50995908be46abcea3accdcaf988906892d51c6a6e48aaa6bc1669e023100da6f194e0a0ff270c592281fb94b6bea4f800c4154aeae51dd808205463ead687923de5546387aac0380da0481614b210302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f70d8767e569ca9ffb7ae78c6cbfcc06064578be96b5284a84efdeceec24b16352749ea209c82304871edc72597252390231008dd2599516819e562a33e71fefde4de1b815d408ff45e9f64057b67e7a038836678340b267c6b0aee461252576fa978a0302047c435bb500683066023100b2420e0f4f2f557b0d2562c72274977eb720b13ae146677213b49b941f08cc65d956ed2a83bcb1bd0201180305bfb996023100aec0f37d5e93ac1dcbe5c15d18514cb6ad5ef4ad0000f378d76be9adcd54cb4b2f5f019c39e457e15b755895cfdbe4ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023028453a372981afaf79107b6a6125251d339d650ca5b05bd366c4755b1a5ce4e28e4853a2e37595b9a47b24b5f084f48602305a68be5622c4a011378d927832e6f9da84c7e908523e8956645acfed88216c5c69a0a8e0b82dd20464d098e72d16d9e00302047c435bb50067306502301fdace6cd0e4a4c57e978e8968ce8aa92513f6b3ba7353a43e23e7218d648ab8ee96edead7a9db9289160a769d32d2f90231009ed6fd45ac4b702800d5db7ac3aeba90ab7b5d8db4513fb1dd9e478c5cd654ce2a58daa403d6c2b3141642954e1d7c2d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e414cc38bf11b0d846c84f13313a3ebe2a33c81b21f9c80b9c1c749957ee36af1e677c43d90003ad1fa5a9695a7e90f3023100c65757bd842b1fb488621f982ce5338065a021572ef08142412c1d242ac1202ae105fd3ebd8a5256bf44351f832bb7d70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100aa48e78e3de211457060bc5cad27ae1183797672b4c29064b8536df07a5e0bf94f21f0bc1e51e7f59ed225c873396ac00231008b943cfdf259fd9204a5d0b33cf0b7e754ff06b7474f8b54b1b239426e84a3e509d6e2dd8f636bd00e7e63e9702d4a110302047c435bb5006730650230349dee3ccff9149423f1ea40bc37ab0e509ce16bcf9004a126e41368f9b84b57623cd5c743c548a07fb3fe4e33b0523802310099cc9decbbe962408152457c08679b02285a57fcd4a8ca23d7f914e4164d9a54882d210f2490ef55fbd7a32b96d4ada60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100dae3f4363b482677c7c46dc13fd0ca2871086eab9bdddafed37000d193beed5f24ad6b90875dc43618ae030219fcf4bc023100b55de0c99f0bc06e34abdb13d1aee4683b263b4e82426fec21fba1bda3750be9963ad3d09241494a10c66f407bbf6c2e0302047c435bb5006830660231009db42d2d1647873b589383e6f3ae769e307fcf91467ff7ed6be81ac6144c2276a8f9bc0e7ffff508b79cde358e0ca2b90231009d275ddade78db6ca78d24c24454a1505dc68f9425b512bad9e8a1165e88d9390684cc0c334188930e99aa7ae6431f950302047c435bb5006630640230773d34c1cbedaf60e88fdea3b735aa6238b7b0e35bc9fc3e2dc662938a92dec5de469ad54fe92e19c3f7ddb7aae5400302303e9c4b885b99d04a9d60c0a3c070cbc3c3d0b417fb789d8d6ff0cddeaa6b57155e7ce315765c3ae7b7faf5e3ccc94f3e0302047c435bb500663064023027ece02920e7d4b45c6e13cb8e22652b45f83a83d672234b311bd64787aafe89820c1bb5c8a821b7f7f3909f01a840c80230653942cb91df5ce70bc1ca3d23fdce2f7565b7060f069c3f3025aa4cdb4c6e75f7ff86fbca2e015c154df7fed0abc0280302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100aebe75f1cc0af799c4280d38b3b01044c61509e02aafb01291c715f86f93afd85b3901007e3879c24706f3cf982fda9b023046857f67f76f71ffaf64b01a814729dae52bf004b4f51096a5ce21410c53647ca5268f9fa392ada92681ebc700b785c40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100837d9574bd249bd6828fe45a8c2d1bece15f5c10a09967227f80d91f11258d5cca4bb48ab03f04e4a18e977fd6c34dd802303644ae17ec0b5e52116626d98541b90bf7a0b4b432628f8ad5b52a0f85fd7bd45d38953621705450a4ba6c14215e21ae0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230786a35d6ef9641e983418c570be7d8d9a07108c0177004b3a8ac7853d203926a04b85917a04b3b9cd2072a38b19d57fb023100de0538e76c5a5063fbf7b183756674ff5644a9647a3107fa1b35b1eab30bb6a32bcb749244e7672ee264a7b25aeb2cdb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ee4da3a14ff0d383c8a9fe93e5c67fddd479a39006d29614c8788d5dec5ba35012537b04e2a694609d50e0a97d86a6c6023100a3ecb7954095b49a8491adff766ba1556778fe69614232560aa227546079e852b171cb827dac47b6027ada232b6cdb470302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100dd7482b1e947f67181f77796ebd346503d9e550c00bbe5696e1a3643f7a00254526c2c1ab69cfcce4bfc8a3cd5bfd4030230641fdbccca0e05f3034f34eeade657a62449ad891e98f80eaad185cc0088e346c198f8db25fdc11b3722620b66de039f0302047c435bb500663064023006ac8a4c367c11e2209e03062d311684858d1a4675860f5b31ac33828bde70a6dd087f11aaabef98e74bcc100e09f7a202300661bac3f1fd96cc2bcd67668460f014fb358499faf920ae8d0a9cbca43be48c02574ee89609d6ec22cd09fbbbb73b310302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c3e15d8bd447a0971559c0d20d3fabc52bdec6996b014941887a79634b7822bba12ee687611359d52e81066751da733002303b06db67a2f1d409e4819ccac710bf037a7703e16f0c37d2c4edc3faf02c9805d09dd0cdb700c7383852d03bb9d6e0bc0302047c435bb5006630640230588ed3b6c659acf4e9d44e5db9f7a0cb7be80e776459ecac1cd2c6000579ca5f6d7556fa74bb4dde76f2249922fd4ce702300256505804795d6a5ea702582c12c70af0176d73d4aa1e4b64fdabd89f0990070f813227caca741a175c8c836e58c3230302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e8849c631d8e79b4c661e6db55717bd420391f99bb644bb4733a49bb291b87faf0d97342b10a4b040342bd44331c8fdb02302fb6a3686ee155fbce8caa07b57dda0f847aedb7ffa639610f9d074394236676b6d5559f9bc0be63fe4879e91d15115a0302047c435bb500673065023100e9dcbb62388960da1d21381e70b1a4d7bdfaa4a0bf6eec4f8a3d535e55ef33f46d002c870d8273e79e62894593fa5bd602301a659dde3a5fa0950743dc0eb6d29d79f61357e7690b7707c98b29470eb1df5387ff2d8407de14668f36dcdb56c4fcb80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306ba29b289be4bd40f8332246ab48857f8aef018c1743f36a4ad550e723f38e4f3d9b09eefa2d22da598e163f5bae298d023061a2c6ac6507f5ee233ba74b08711358edfd7760766acb23118d0b1cc2fa6e85b4adb76b82ffadd60eb711f025d0b7430302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304dd027deb5dd9b007686616773b4a999956b5c0c1137055c0d766132f8cd1e1f02acfc043d08635d74d411282daa38f30230707c6d69f20bf2116ef6d3a3a096b74d7e1ffdddedaf7275690013927a948b01daeb28f2063f5930edace443d4c578aa0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f21e5ad9b42cfa9087f05896402ba6e73d872cc0d6c22f831fff4910f70fca0ecfcc0457df51a302fc8789b9660d07af02310081c45ad40b4c50473bd400cf56d9c1a0ca73493e9840cdd8417f581283909ac2acd537bdce477999e96df7bb0f7c8afe0302047c435bb500673065023100e11b4ad87458ca7bd0911313d09b9dbf29c294c310aa7aec100b5ff050b6c1294af9292786570c96beb5a49773ac5d5502307a6dfb5b1b9d9360c15338e24194ee53bc81148433f62d77039378e6e1378b46678bda6252e56e1e3458cec62b5256e60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d4dc6e5c1bffd623d40abf4e0be4c89eae93e9d1fb8563916a75c908f7481652abc581e76e6f1dae60b72215cba1354c023100cff46aec6e8c14db1cd1f5b44b5f4ce5c69c1dfe8c05a249f993f0f37e46f70ddd58f288917b8c7b005011089673990b0302047c435bb500683066023100c3599ab9ac38e3c9a2ef4951113f5de5cc9dc27dba7080c41866cac77bfd0c8c81541496c10761cd4ef58e344990dd64023100cc27316f71dca4293a71d1489b4c68a79eea82fa38fb6c19df271e6a806a4a220e34129c1370f66879437dd7b6a7c5a90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303e5efbca5ffb459a2c8550a6c2f2da1b5177298692dfca827c4a9ed5a18671a8a319a859e1aa5249b5a7e18dc2f07c2e023100fe0ef477b4f98768ee33815c9b8244b6f78963c1e4bed7b4dac8bc266daebc774086d49ff8ec981d8ba0864dce8771680302047c435bb500683066023100940579d06b004ec85637ecdb58cb99f9e3ef9348aee9cb797040f8b0323d39bb6e846c1533f45c4864268df347c17690023100977998c40e56716ae45091b5ab58de33ba9a24a0765bb029506867e32b6cda753515636e2484e797459ace58c0be6ccc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d850a0eccb9b7cb8a955c0ceb242c1f043e6ed58b64239cafeccbdb375fd1c739fe78690a186d7da68c2bf1f72caca89023100f53f1d3f627652e7a21d49caf36903219f5aebb0ac9b7e21f1f322c9f1635f8e0768a75c790c96249487d540122ae2ab0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c4d34bf0c832ffd8654411980cdeda32e01e452f4491364bc55a82ae92a348f671f14dfadb3a5b2d0b455b536b92663a023100a53bdf12dfaa00d34d72a8deba72a7ae7d0f64f490630f5abe261640c19a4d4dddb219ef127b1518c9f960a78b7776ca0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306fe15fb6528406cd2df3903aa4f810f420abf2e1715d6c8dd081c58ea46eacface8c50b6f05e4c8b16d8607ea136edd402307f6496a6cc73d8a9b2fe9cab3f838e8bf3b1467f43a8931afed96674c6cd596f1829a3fb730b1edec4cab322f52a9c630302047c435bb500683066023100dedc62ce2e290b5e513cd61cbbc67c99478e5f5beb330aea3c9e74f817bf917c818eff48d51e6fc7caac8622875dc037023100f4b07369ad512be8c917c7e8f3eb8389edaace80e1442c11425961ad3cb90da1e1258b4a3afa7f9e2a7f50cb9f8c1ef20302047c435bb500683066023100ed6a1c8e07e08a4518587d46ddf7097ea9b7da241c1803b126a8be85bf9ef760c9f75f53db0c26b88c238600ae088a4a023100f00b734f2323d25e6dfcfd3b5d27557a672163842c27faebfa0c5e73d088c73d401fef810e66f187d7a566074ae0ade70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100aff2026ba98d65f64c46ba7d1dacc6385399fdc40c4d7cf65fcbef6913251b135c942927235de6baa61d9f60641f25f2023100dc31cd5441869750961eef14f3fd32bf0029e3c3cd62414ffb050251ca6e21fe231fdc28b07d98ec58e826faf1ae621c0302047c435bb500683066023100ed4825a98503b8f5c2b7a9854982bcdd9a5a2de3281f60127a0fb73f1f10cee63499b8bda1d78382be005c96d3393b6a023100f69656b4a0f6480907252c5bd006c11a9f59785aff59fc0ecc232d0bdfcd2478d0a375e9a370cac7902567eb8427ab090302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301deacf0b2675ccaae69b530e41aad17622e94bf701e1d5e0ed6e17c7ca7649b60165092348e5bf577225974fb08c81710231008b6ddcd0460626e99f6b508952298426e2096259f6ddecf97334cc83250160897cf95370ab131d25c738947d9e4ed0d60302047c435bb500683066023100e9775b5a4c2670c3c4803535f74fead2911958b8ec52d82022ee9b3758737c8b9962f438ceb9c922e6d4e87ef26da207023100b308872b7d3c8807f1a242636694ea6b6a9ad443aae13ee196260cf99f5088cf0a553bbe075c88c4cb1fdae79fa34bde0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301820a5643ad03346d2edc946c5927de234ee38446a81ac669546d9cb11f36a44cf8ab841692ef81b0b1646eb30446ba9023100a970634d5562945b764bd2f827178840a9d4722b339fc9052f758b07a2627135f0b74fbb7f591c134a623b780ead99710302047c435bb500663064023068ba7d9a6d2b10b5f81cedc00f1053312924aa54a1f7014ea252159fd4970764ee70c9e84001be3f5c5bb8570b99699302300d7e28a7ac09c1223a5a172931792246d34156d220be892f8b70857d5be97720480eb42b9ebd79899cd9ae0df9c2393c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023011f5b2bfda7692d589ded633b3f9f3e5b70aec8d346630b222bc7a9a39784f596574645698b6b35fda83f89c313e6d220231009f703f2233e06a07e81515da9ce1b48b473adb47e6a4d8c4ec104ce6e96bc3bdd0ceca91935d169606d456a089c1a28c0302047c435bb500683066023100fe0843e14c46c35da427f6e73e98d6890b9a8a18004d4b712bfa93b449d2e0c8c48a8133664cd8ca49761e90d1ff3b38023100b758b6b280d2fd6c8432fc48aa6706f70f35cc80f69d542512708ec1b3bf8f156417b92d1961774a63e11670ae6d08f60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310089f0934a19a4be15c8c9b6e0be138a680982cabf14c3e9dcf24e2a17af41c8f213edec8f51d8873729239c294b84f7f80230357c4c9bb2b8479b87994c2bbbdd4a5ed1406737fd00401a62069863c30dfdf910758482c1b59f16c9dbee5c658c89cd0302047c435bb50067306502310081905fc81c61664148c4dbfeb3fd937bc9d75cb7202552c897ac6a1fb07497267c8d14dcb174d8c605f14850079ba9b90230093ece2a3658d70cbb3d2bae3d70424c0ba804cdfc041bfcc5c2ad5b724bd9cfcfd53870dfee934e2cfc91456473f2460302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300ae26c7ca05ceeb0fa19b2d1bfccf9d090aba8c1e16edd724d18f49883dc7c125b1d68617d7ea5799eb3d1e2be5db643023100aff6bcfaaf6444572116089a34583b806963aa4cf05bd396d4d43f50b43a414411628f9c3626dc43e0cfb1ea14964b210302047c435bb50066306402302699cf383fc3fb13afca3e60025384c9ba318b18bd7c81ffc7e42fa1d5e74789676fd2ed9453c83504cac7655abe12dc023012126547d7f32a1f2672f23f7a4a1b055a25a5f0029cb34fcd37797578956d428637977b48ffaa93dbedf700bd5e2e100302047c435bb50066306402300626b76989cba685d8984ecf9cf93709271346288706a65ce7f9deb96b9680a6ece16fbe9425b2934c130436269c032c023042205d6664f4f33d9aaee3fcbaf5a45ca6890027451d83852773c53406836a4e3985230667854aa5fe017ac3db41eb370302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023048cd388d04842d1d2138a15a63c3a3999fd77fd5dbb44dd660d4ded5c71c865a8973f295a9c3fa91a7ee3f236cb03e08023100f41d6ec943c62d1a23d10f2a61d10f9837a3e762ebc275b2722cf55b8adb5b73cf958ef364dc73b76ead237dd34b56290302047c435bb500683066023100fe649f35630bee7b31561a0fc2e86b99d7b485b4071095821798d49691e458f3deb7e4fd1980f1c6a25027cc7c3ab82c023100da0531b10b1ae7924aae339771a5e37faf29ca3f3de5c73419c72fa2b3e89f7cde9a59e029474ff15d7532afa8a7d11e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100afc4daeba1d1a6c68ac3b7e218425370978c9f1f92a3d16e6cf56f91f77471955cd5224034183274da6f22e0c73cc9aa023037cedb356b656e079375998c65ec09d7e9392656201e53a8c588049fe72077ab2801ceb45cfce462ee999542ddf16e5b0302047c435bb50067306502307ceb290741721398dbd1bf6ab0990ae089f61fb3fcfa920e9449b5db1d59b3b5218810028df5e044394d020becee6dbc023100dbe5e5a975e1fd4e60cb0cd535477beb1547c0a7e03dab8d33f4f60a4d505af027f24e8156e0e058ea86e274615961250302047c435bb500663064023000c4fc16307912506d29ff8e6d986aa825a1db47e9ae6b4fe4f331a163ca83390a3578f386c21803885ea087535b84b0023066daa3b60198bbc28f967f6d5373b9c8b7b7f7a7c517991c30a993c608cb3bac8012ebda2617872c4032c36eb8c1c0860302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023077adaefdcd0e482a92bc8b59c0c69b90436398450528176048f07951c64bf8e43983b10fec3dcd3d754f35c8219456a7023100da000960e61aa1b988d4bf9b1b9c61e4ebfe8052ddd10ed9c4d96338a1bf5d777a468e37a30d41b95f10e1e91ccd00360302047c435bb500683066023100a65082e5bacb03665d1ba25d53476bab3eb6a31da608d1f96e9110ff29e02e738503570c9aef60345c543241a7faa36c023100ffc0907debbe1b3815bd633f89da5815e76c0ace3180ba853417229e479c46d8d358c986adf87773007d9e37752347b20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305c8b9a15f91b893dac951817086f848c380f1516938de078553281e2432d0b54b511d5d0451ba4d603e284b854f2f1e0023100958c2e24332836eb9a0df2e79d84a784074e314dfbb93f2640699da85c0a8094f64308bc71d6b6aba263b72791fbfd020302047c435bb500683066023100ed6a1c8e07e08a4518587d46ddf7097ea9b7da241c1803b126a8be85bf9ef760c9f75f53db0c26b88c238600ae088a4a023100f00b734f2323d25e6dfcfd3b5d27557a672163842c27faebfa0c5e73d088c73d401fef810e66f187d7a566074ae0ade70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230268718aee434ace9f67f8704fcfae21e23f23bd83541da2c9a950be5924792a65e28bf3391d163897bf5e60e7690ec8c02303b85ad88ad1d499e4d80ff121bc7d9dc3515e6dce46004cc5976193288e497e2f99020a7da5aea485fa1769606a459840302047c435bb500673065023100a038b207f80f28ec52ac93951920aff285e0fce7268da60837971052976e0c6f6ac501724cce50dfcddfefa98d3e3b5e02305279b66587212f44f61b0c5812021bcf820bc618277dc97e04c71d602f13b4de97b1367e59495b7d6d16f667d75d6ad30302047c435bb500683066023100cae4bfe9bdfdadccec190ecda7ec2b9cfc4946b7b216b1ce0293fce4b6282ade7b68d5fadf795d197f37ed7c368ebc06023100aebd8e819757dfba9acae57922edf6cb8f6b827e2384e8d357730767771ea2bf894aa6c635b576ed1f788ee30cc7d4e20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304316a9f2dae6678393d20290282b7cf38ebb7cb8788058d847ca51e2c3b2fceebb4f8bbbc43b0db64a12690a5a3dd6d4023100836f82d0bd3ecf09268f98aa96a2d82daa6375b342699e55001f6a4fc78d7b0df803af5c0ee8d3358542af962a0fa20d0302047c435bb500683066023100c01279ab6ce4cce8af87d8216db1aa73df1831c5d450f68e32af835c441ef389c767d989b521920bbc763cd444acef21023100bab8a885ec8e2d2fa82a20f6e9786004260a7249442bb6f4d465ac14378e682c92b7f6b863b98c2728662fa7c0dfa01a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023028358fe757da130572e45259ed23db13a418d84cac044d3f4b849692bdf667f8e7594574e4cfe24eead89ffc19bc247a023100db8dd130a4d93d6ea56dc5ead6ca186db837fa3fe62d481f903f288b3771b628de2be09c9fec4fb371aa3ee958f97deb0302047c435bb500673065023029dfa46160fecb55355d0a8a2650780903127396b89a2d2810f87e87edd3b627c11b839a2ca480a3df0ed32750f3f8bb023100b91eb549f38a2cab457dc3f9269febfe69a3300404243898c05cb2ad17840c12b54229cebc152e103b794c60ac354d190302047c435bb500673065023100bb1e92ff7dd3cbf737898bbbbbb69c53dcc2076d021a1bf53e71f0b7a3cd2c406378b4e09a74a8f00d7a53ff02c78901023049e9c8323c4130d76d1ad81da4de6f04f3213749bf7c3c303f7d4acc3225c43c517f738538e7fad17576b10f7abca3320302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023028b3ca07a5da3d1fe757964b5e88de8ea070d725908d3232a5a6baae71674d192e992bd5d43130f772346bf8fc14004f02301af0c6008b9d5a424cb3dc02c4112d8d55d807f600e1d9d48939c1dc2099b2ff3ad30261752258d3858d8ff9674677740302047c435bb500673065023100a074bf026372c760155a69f1b567dc87f8669839575da56b03aa0206aae3fbb44ebd3b45884d563d8a5d7c5a56adcaea02304bb421efa13d10ba220c46d3d269e65997e2ea4867f369b97d9168ab8f87c8df87112547d02812dd25af799018eb12ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f25cf76623e20d13d562dbbd194b2449e5984d23084a5934bb1dbe783bfd598849f879a19d2003ac8c5b750ffd339828023068f5ceaf57216b63226b198a40348c4d7bf91de3e5bcee1aaf58108d8758396180bd717785b15dbcaac49f1503c62c890302047c435bb500673065023100862d8235865d0670a67228139bb4bf60530096ce4dce122ee213cc3563d22a3c81b9e7751abeeece033dd20378f33f88023006621ad025a22e8b15a098d5d269a539edabe126c19e879bf710a783462fec77a4c32c56c0c576ab235787a4d3afa9960302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023075eb43878699dc442d2e80ac1ba51dc67d30d22e18b852011ca8f4856e229a38f95e1bb5656ec52b46d7543e2ca6f41f023030afab40b885d6455296834d34cbbdd28c12dbb3c291af330e116879f142f34319c01c0ebb33300a31c28e98b4f7709b0302047c435bb500673065023100a2e91d5ca8a10ba5fc1bb5621aacf8f20cf9d9117c6b06b2d77935028a816bc662511a8747dd26618a3935ed841f3b9a023025a888a0b634ce41cf89c7ecb35d621217b44d6104dcf9ef2ec189b43c484a322beb083322c63d6a44cf052f5041efe80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304ed744ad01a6c9abf98e098877d17ecb5a2489bb3d083a6fd84c322230e7bcdef4ce4a64da5de77ebbf00d0449394868023100a6cee7a46246f6874163db5290adf5dd2e833168bf67ba9e8550cc8e79f704716eb93863f64c549913f25823faac5b1b0302047c435bb500673065023100e71028fdda7949f9995ba8b772da849d3d3905da850c7b27d57680ccc1fdf4afd41fbc4829e98e29dc766a11fc2422dc0230594b8b17a96df59d28b7b878824af6f06eb184215706db4743a3373f32997e44aed1b3494b43d6dd5552ec0019dc2ed30302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302855b7b7a4d6005a02b74fa7f0ffaba32fe925188d62a1455fecde5a64a20cac1c4177a0e89e7c921656b8f68f74ff8f02300746c49ed6f835e863f56b5f75469b24a83fab4c0311d46fb40b468e81ca8bbfdb4ce67f938db95261bab299f2445c720302047c435bb500683066023100f12d88059b37b4843f6cf17f368c9bcb99f77f55c1455af345f1b2fd93a931a64f252d196580c28e661ceea31e0b07ad023100ba353b62a0b0630163cc521806905ddfb80346f48b39a51b5f65e21df26bea805bc5e0975170b25fcad6426fe4871ff00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e78dfdda75ff12e7fa223bff5cc30a592e06e398650c92cf9795b3e37d953d70ffaab15a80784edec7090054359b8d0f023100dbffad546314aee0d8f2295003366668bed5957b6e9b9321ee9b9f7ddf238182e55a4c009f0aad2d0808b675d2d8c6490302047c435bb500683066023100baf42225328f5122eed3762adf33d56c28b1a98cc4945514c309da73dcb2f632ddfd687b9f27a5ea21f8c0da8bf88a9e023100ec6c8caae02bf566dfe3bf8d2ece7c841ccd15d9f8bbe969ad4d249826e32377014a337b8e02f2602c9dc9e52f4e8d1b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307757860a70b07748dbd4eba0a3ab9eb2d979fef6dde9d637d26c56cd1faff002f50de4a66bed7089af6108369f91d0b4023100b138df50258a24069dea5f057ba8980ac7596d8222624cd10223c4ce5f4c0f695b27f7edc6e99d7979668353b776a4400302047c435bb500663064023011f9f24a5fdbd740007a82ac7e823fd1cd5934fbf37713f19bb0fe971dd0c388c4c9c8bfdc50907d718f91af604b695802302d8bfbbe9c3c776820b8a0056d38ad81ee17de87f955cd3379f016b6d36ce170bba5329dcec85502d2df4332cfa921790302047c435bb500683066023100bb9d899f97b3d9c12dd26e2864e98d69721222eb0b9966937b9feda94c333bd98504519b04ae84c25fdafe25c793c3b40231008ad92eacc2ebb3c26271cb194f4b58c6acce9170d4698858d1052b1ffb63cca453663061a7f35c1d2be85bf08ebe552e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230621529a7211967266855c3e6e69a5883f14d98c98fb31af22b008d4b2b612d6af47308931b2888a959ecc71b8ec70ed8023100c0bc2bf5093e220104f633531e50c66c05dcd2279057e18aad4eb57718073cc4b248468ec4425176954778a7a14d6ce50302047c435bb50067306502306343c2710fd19c8c4a823d89e5423d4adc71e31f3e2c1af992f5938cdd3fd1154de22f2d55eb62c7094df5fc7b1e0b49023100a4857281eef36c8069e259ffd42937c8f5bcddb4150f59678b3b8f4425918b1581fc46d87f072cb4361a18d5729e66fb0302047c435bb500673065023100eef4db7d4a1d20e42baff5975335c764caffec67571a6da822f890d514c9c372a3db0a331a06141b0ecac9eded8fbe8902306a6ceabb7edac03b921baf0d93b13bca179471d83eeead82bdab25214ad80c3ea9d405bef95b30f509f9c15dc7b65fff0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f34339d36c4c1b6381676caddc882eb37dc4ad9cf048277fd94ccfdc7b49118593405d2613e6d29ce81f1b22f030a436023023b1c895478f72483499f6ddc05635a025a35313ddb00d0ea5c1a52410c6f8c29b18aa0928ab55b8370ac04b57b52c2a0302047c435bb5006630640230238577f2ad93da32ebd465345b268f48d969ab6a1aa91205bdbce29fa3bea562552c4d89f4573a7315b89fd66978e44d023040199d5904cb54bfa4a3fff225532c1d9fb19b8f61de6cf61084dba97bbfd44509106bad98a7b94d9336dcef62f0b3390302047c435bb500663064023000c4fc16307912506d29ff8e6d986aa825a1db47e9ae6b4fe4f331a163ca83390a3578f386c21803885ea087535b84b0023066daa3b60198bbc28f967f6d5373b9c8b7b7f7a7c517991c30a993c608cb3bac8012ebda2617872c4032c36eb8c1c0860302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230400fe970e9f2e1ed7c87943ff7be5db523967754f4afd94d47a58ad93a3ada111a9b26c71b383c1e9f1fe843c7d504c8023100c2b716d878f61bbee080adc5dc24542c4c9accf28bdb4562a611ff2a19ed2e159e985ab716c55e7dba00be7ba4f03a990302047c435bb50067306502305687885152ee13cfc11ad545cdc77bb707626cbb7148a23fabb2545d92bc75bf14dfefa6d756893a83c8ad4952a40bac023100dde4fbbe27582f3e7cc6d7b3a8ba9a1cf539bf7f00e8bbed45229a189b6b95bc27167aa03c47aafa312f149d92f589e90302047c435bb50067306502310093177b7594fa2f3e92eea01bbc5d8d8103c1da7a9d9c50e96d7388e21aeaceb930429441459f7a2f3a944e5d6fa394fd02302673c9f3fcf317b1030a3b8a7a3e222b02da55241b966afe9f064ad2dc39f4a2caa6d446b15c094cb9013c8e8d39a7740302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303e3d271a6f34dea925a5739df40eadc7aebfb6c5220bcd029ff8b7c68138802a2ccff72bdda2dec14697ea9515ecc59c023052572a13c772ee44a4348b4e7f72257e3192c1f534a31d2c4d25be92619cc464b51f8d794b1a44bfbcfc6b0286776f440302047c435bb50067306502301ce8235a8a09e1392bf9105ce5fd54ae997a1caf08a894dd2273e2db1501b6be4dfc667bab2bba3b846f1598482a0797023100d10b5d8f6c311b8e32d95489334446b98285a9adee07fe102b31cd0faadcba4ac78a00e86e6be3ec941cd42df3b2c9310302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300d9b3702f99e7e3200a5515a645fe3c3c129ebff72091cadb2213444ffdf9d5e99e374a03cb2401a4fc56b253d39debe023100ce9ba3ef7196da2643bf7bcd4a0e88b06b614dc1aea33bdc046abf3e77b89ba243574c08749d866ce5d31281487df36a0302047c435bb500683066023100d6cdb76ca48338240cdd86cb692d655bb4c214bbe12715201fc2a015139cfcfcaf491ad8c9a4452e2e0fc94f86e5411f023100efcc36ccae0f21838dfcd89011151779fd7324dfe1d1d546391187e81f077f406204f325546d442c5c358da5a7ff35610302047c435bb500673065023068a8fdf76f1e2f9372fe607824c1eac7c716b39237e6986a49e166209fe2665b29f0347f702e0c8f0c32cdaa1e6bb5bb023100ea7457c0b6910ff763a22ea0838c58136e7169a56bdf0c21ce4662daf1446f3082f113b104b7d9ba12209406ca7be3940302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023016e9f310d9fc84775b26bf70aebec67d8d7b354ff9cca8f7304d9cf973fe019f0223992ff8e526a08fd84f398431fb0d02304431a848668996d6d347a548e9c1a35fc3075d28986c4c9b8346927aa51130f11f676a68df2ae0556cdb287b8c3165ae0302047c435bb500683066023100ed6a1c8e07e08a4518587d46ddf7097ea9b7da241c1803b126a8be85bf9ef760c9f75f53db0c26b88c238600ae088a4a023100f00b734f2323d25e6dfcfd3b5d27557a672163842c27faebfa0c5e73d088c73d401fef810e66f187d7a566074ae0ade70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008a495164e9bbc5215864e8ba5b4da28c9e32dd759ecd3f98d32c4c8e4ad5430056f6cb13f88740cde1e5b25a5defc47e0230572c72dbd030450b0e40f99c8703ce14e72c2d33be1a93eb78d6ddfb91e522591c4557b6b0fb6d393e7a84447cad061f0302047c435bb50067306502307a083a14901866fd038a2a613010826b3aefa24e7c9d1aa7aceecd273b907b2525d26ca8b7a7facec21985937fba85f4023100d25c047196b2fe761b543697cb8d751e0dafbb93cd016fe607a7c2c439d10eb7e1a3dd82cbaed8b9f7458dfc7820d3930302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b1f9fac2d27b5aa9fe97dd843567c6b85f043c08450100c59fed9bf678cc2da554418028a45bca164a85456fe0c68b8202305ce45027155c827bef4e4adc2c107f573f78815d35430b8276942d2d118c385a46e83150512485c42fb8bb46137b5e580302047c435bb500663064023017026b24995584e931463130e7465ed3884cefcf5e1144f033d01144717298be0a823918d17c088622cb349c2c2c295902303cd633b8beb71d339a9b37e4a424f0193da53dafbd10430b52045854f402337dcc308cc191a088ffc24d5bda1e8bcf330302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310085b793a5778e246fd16d7f80f928d1a9014dbfbf3359d19396091b4f32468bf530b47d315ce0a843e0d0bfc022bf79a502306618669b0b4cd96083da378e3df5dce5410f31b01847f46d8153b3929eda322d8a8bc13188676f360ef686f4767356fa0302047c435bb50067306502301ea733ff2ce836656582b34f9597465cebb3412ddeb3b5b1f06a4c80576008947ff5acd1cae8dc16350fd6aa4257b740023100cb9137cd3c343248e5ab66da66cef4533f0dd104e7e28a83eddd38ad8c48faf2e187b02b12aecffd12f1c518b559c6da0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100cdae36fd5ee7a82f06df0567259ae2b14ec386f95aed9a35eb8ca62d12d1f99da92ec2573b452c137d599a60a99ebaa002301334225e6a278a34cf27c6aeaff20f8daf600e7be2f36a69d1203ea599d09282717b517d2b06c8c4038dbe51ee0f23bc0302047c435bb5006630640230375521a05a7f8f27e5f588713998377fc50b366f76519430dcd3d1adcfbdab47bdea6cf2619613533c8b36d6f21328ba023025ea0f739a94d4e22bbf766d834b67ed3bf6c81431e5665d95cf2eccaa84fca88de9371370fdadb0cffe37cb7c1261980302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230431ab3709bda71518cff47fa409eafe4732b179f23098c65cdb1aab499cc8e6fee57562db9396b75f8c92432c3696bf0023100fde68c538c8f9183020117fdd1e9d866b75693c6284450f7492ec6339d55a716a3f6d8eda4873860e079a5cf6c874e7c0302047c435bb5006730650231009ecd7b2977be172e965c48be1246355e964e8c1b055a8e39e55185fe7b7df6dde1427c2146ae0e3df766d639da5d8a1202306bf0ae7aa80d80f765480297cb88ad137612c5dc6c5646eef04201c9f19eac4e3ec73485098d8977e9226ed385f174110302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f370f57796211051409688d90421b4eab7027fab8312ce882332953c49eeca9cfa3085d7a01986fff72c64e54fccf5f1023007036137617467afbbca5d48c81dfc42bbb988f8bff4123a0c826d07e4710b73895aab1df9d446433d1b7396a8c7306c0302047c435bb50067306502301f0bb4d3b623fdb395ddd9e8826ce10c4ea23c97bd520f080d3f7fd96e83364ff24bf1d80c4ab2fb242acabcbc563e5c023100edd2b19f62964649da62c712e034b40401ac74a38276431adf34bd08b8eed76bfff84f73adfb183dc6244b4891d4134e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a813d3bb32d661435e6019bef51663a8fe19be3c7005affee91a231cac76f021b319634cc87c5767f234cc987f8171a2023100a98d7f9112a6d84d5f7e898682ec4b258c4153ba724fe8c97acb4716a13f7c6cffea4c2973a45d5ecdefc559a81c25010302047c435bb500673065023003f78a70315b8d5346b4b8f8d12230c08ffe8e3e1ea82ae0eaa2ed597bcf33dc3120f935e7b62fd709911cdf8361bf530231009af84b520ff51812f0c274754f394af9c8a42ee231bd97227d7dbc47b8dfcadf4587c81a53042130a4f875e856e7a4510302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302fc63129c0179d5974f16b4b4866319c107000e2a1f169f38dba80aaafa3b79ea1bcb4fa2619dcae123de0fba87a98330230200ab45fa05b6057bc5b8f7fe7421efc585d35647db135f04bb04071a2edca524d58597a5cb1b3e27ddadbb1cfc223fb0302047c435bb50067306502310087b499ce50dff5428855fbcb0a3db97bdf6be5bdd677d1955819f2f0b397366ffb2e1d2be01712343e7c38ac69be1fc002303354dd5fec08fb74d1e67e3680e489dd86a983fbceb3a1778b066c4bb4f23beb6986c079127e9ec47a6e30d3a39763b20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e81063d163d87b2ab9ffc530d75588c1be558f517976a504815245d6cb0e0f76965b7fc1cecc8349557b29a72c1e7c41023100b2a67923846a968a5b08a368a1ea2a9bc35140a7143c704702488f8b98463daa64bf76baab62a97184093ccfc548282a0302047c435bb500663064023029ae5438482a4180b5b08522baba6e3e2927f705628e73022cfd2ef747e4e47c20c80465cf4032093258976aa44c37080230607160ecad9f64510f84235a429cb33738dfe3a409c1da0bc054d967f16cd4c5f71c800b30ac86dff387b99c62a9371c0302047c435bb50067306502301fca6debd148e6f2631058c635e0dce3d8532af4ee18d60b78850a0020fa315b109ff932d6a42709e411724adf70ad84023100e407a7db8e5d82c3f9b260850261be08fb3a2c9c9872b2ea54466d2a065b512129f4e5cfc8eba7c4bebd78afde957cb50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a932dace009ca96f634f6cf88d724ec80bdee17b2034f45071131a38d3bcb427c46286034f7ea85b8e4627892faf6b5b023100decc30ce157a333dddbda6c7f42a35a79225a70a31b9cbe25322a5a1bbff428eaee82ee2ec51750790c58901e900ebd30302047c435bb50067306502310097d065e79e66af1a597ebd4b35cd2c7b2eee805d200ae20e5eb88c76f681fb66bb460466909dc1efb749467146a290ab02302f046f1eda30d5c97ff7a4e6ae7f5b9fd992ec2610e0db5e0a0e6385f2beddf62143edbbbf2f1344683ccf4efc07dab60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230611aec912c846e9a406b982fbf6bd0dd121ee4727265cf78fe7c3f0f35dcd1c1fa71169a513db44584888b7cf2c9ac4d0230071125727bfc2d47c4a71d43d053e86698bb5b48276ac8b062491534002e7d8bcce342d70cf9ec84fd843e8b135536310302047c435bb5006730650231009c61027693e673a5aeec590e2966724b8aa7e9627462e731e34ecafb8e78ddd786497afeaca5d86c46009c8e0685d6ea023046f30dcbe486a428288025d9c1ff88b5c1dd16d9744a2775cab3afc32d204cfe9ccad43043c86a71bff1d685feba022b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303f504262f1d87f4df8259c4f713e368028b336520e0be9ff1677a7c28f6a45450760f4660702b5d450c44a8bb61f55fc023100f8e94fbe81d102ddb7eb3122df2d9751019af637846339d45c986d6ae2c4a2e724aedde5c40449830223ac571422f4670302047c435bb50066306402306ac3521120d6ba166e52913fb7e4c7a17a372a01b9b4188173a426303411239e1c744beb86c2708303d41816136fafc50230480cc200644574e17369e098ea69a34290d968695b250dab4105cb41ac8aa425430d0d2a8719b6d8e3eb6e52b1d654860302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023028544cbd3d9498e3d064d31809cc34e981e54f630fc3212eb349f138901bebdf10391f54efa9808935914255d3f4fb6c023100fdaac104f011f6afb5cd75c9c10fe2f0fbdb834b233b32b2553b4eea1c6e8c08866276e419e8d32a3146ea25402d47220302047c435bb500683066023100d7453164a4d4156559ed79bb53c64978a5bd3a938b89d2224257727f08c30186e449608d5c0ea134d5b222aecc6ec5c902310086a8f5ae6b620fb0a0c781a72c823cc15c48b7798a0a61f9a999a19f0bf2a0ed18aff133fca30dccf74e1a93b99937ef0302047c435bb500683066023100d99cca1886daefaca100660cbd288a98c1176cd100ec974b4abdc2ecb44e97d4880aa86fbb4690055e0f97f0d5b2215d023100f1f9912d973687025e66f1ad1e37a9fb63ffe2f7288bd7f6323c12ee4ae47915a23b93fb7835621b834293c12bcf77790302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230419d029abf6ee9ac2745e07f1ddd2c50d58f0e9c9ca9095e2df581ba3b330b4d40c3babe705f30f2fd6b47242dfaab0102307fe7639c66d254110922251aa11f9a01d03c3792a73b732bbc210c67298470aea21dd69f5a8d23fd2637bc66ac9f499d0302047c435bb5006830660231008ee3eb198b866c7b58210e8b5b1123c164d51e3f2ea44d685fb794724e04c07fa1d88561f23d0e0f9b976101c6fba00d023100dbc847c9133bd18f95b7a468d93e4ac03eb58ce9a762f187096d3ea0f9728c86c001d104a7dbdd24b5a0392097f4506e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ee4026ee301ced11ae00a8db437aeaf0e8831a620c71654008d7bb6b9105167c08394f19a63101c30f829fa26bd686e002307a110224498d9b17bc9aabd74ebf6b952a68cc10f980a134d1ca85d4758d9968a7a6c3d0aa2b1800b81b6860e6f88fc60302047c435bb500673065023042dd03ccbf357af340f606806f1912d161f865c0c52806bb7e9053e23f5ec32851fc5578fb682455392b694121d5c5bc0231008d320ed612accc828f35413f78d7e86be0c1d318685cc779bac69c567ce20a934810df2fb5ebcbab03b7968b45a3e6ca0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307e1199085e9a414bbdb7b33fd1062ea269fd15be8538e5c6b4032028c797edbe7427ec6e72863f98ec42eedc9ba5abc9023100e98d8c6faa42b853e71cc1a60e7d6c18a0201eab50878fdc0ae1a7c934da2abbd72a470b19a1b91fc184fb59dd69540e0302047c435bb5006830660231008d25ea1a0e21ff19da7191d4289c74896817a538d6cf7e37252a74eadca5dc1fc2c8427fc985a25a5798eaa5074791a1023100c7c2da0f3e7a4ea7cf794c303c6b5dab9470761ca7e2285d93c17dbfb32dbc1b27a60eccb17b2a5aff8ba644af7220cc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b9ec01ee8c275f0f512e7c00e65b0629740fbfb80f95d2c936a390782e1ec029988b62822be0df2f95fbae37a3fc756f02301553b06f6e875a45114d075f21ba0ab17bdafb9140209109a75c794555369b991b8980fff36f5a31857e6c78b61630c70302047c435bb50066306402301636c8467a9a0cea56b4a281c2d6d64549ca9de112bfeafc660f96aaef1c88b073106cab770292f0e7731f5562569c4b023051e855a61a1a78ec0ddbcc9e467992b38c91442ee2b9634da3b36102adc7fea25d95341ac1cdc120a954726071450afa0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305955747e20e583cfe73aebb8ec64e876e5d32eab0ac3358d12649f5cfe7feecdc2937a5bd05beb43c661af404b749c0f023100dc3df09b3281192a81d82fc2ed6a8f192b9cbc9aa97215888da737ef21a52d5263372890dece6f8b2273dc956c8bafd80302047c435bb500663064023011331a4eb29d3402b759226153aed8f37bd17ce963736c3fc33095df959752b0bd348125f1478578a62ac9692e9561110230474f29688cbebdc697488e9edb1285518bce313929eb7d5ece085bf1b2e9c584577e3213420de7692c67926679f245cd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307024e9b4cc6fcaccc25df13f8c5967d3f2400f3aa7664b0d91c6f758390564e846f5b24236b9cf09fbe57a624106f9d302300457f1faadc873e756b05ec93f52426bdeb11c45896d024fcb82aca958fc15891d3831e92622922a56a3804138f530d20302047c435bb500673065023100bd14508a762c4219ea5926404cac457fc2d7d6630aa9268fba2f98381d624f1f3441d0e50e900e7788f2a80a10100b1002306e62e39f21011db3ade7240abd63403fc136f8d69b58631af1292c01524f996bf23dc7749961eaaecf17a96e55e5796e0302047c435bb500673065023100dc074f63c20540657430bf7ac4b1c56e6c2dfbe69d627191af36e52a2ded141f7de8f43a38025da92b4601f3fc9bbcc202306cc5c12d58dc8c0175b0db3320add4cb674a936f3edac6601dea64a710ea4e8a90e43e7d8b371789e6d55afcad6265540302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c07cae9753de4602e4283fddc7f43bffcb20fa7ff032751972f7ea00fdcd9fbc06fc31e7aa8e351a3b2e64937a9bb3f102306abedb3a00f2f6aa1f0a6cb79edfdc6f747823afd2cb1fe199d4e37c47ba860efe57b003571707e67b70424451be6fd10302047c435bb5006730650230283f8c404514dded723f503428ceb7c5f2dfd1e58c09a1a6bacb3eb89c0265f73cb4ee03c76f2e2e7fe463f223075d4c023100913d5e2fda887cc619207dec92c2987fcc00ec94dbb30cef7e6fb870beae5b0eba11a913a7abb30dd70fa16c2b931d830302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305dce85a5fdc8be4b19068f37c3892e535b912778435ab2cb69a09f6b07ba5184c08f7f163eb44d843cb51d2cd14892d6023033e24fd0259a8248ca09094509a4e2fb77b3bc4d4f151e4251abfa699a232f4453214430f5d9a676280836a42ae4430d0302047c435bb500663064022f24afa9777e9d8eb44d1f65b88c4edbf1a28d7f364bf465c0e4f634893ae64b4500c2a04afb4630e9304d8e5ffed6c90231008eb415b64fce9f1f4080d7a1f091b637b088d91f9855a50f43d07e28d761f7cfa0a42c59ab92a650452d3370e10d58db0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100bd6705726871151ae311e679bedef059ba1e4bd62e8075646f3555c7f82b0722111752b694de4fb90cfb51264b37be8a023100c5bcfa1bb739df78d2df0d552208831a30a6b9e6ced71c98fa65cf66eee438b25feef621537b96b5610c68248324b0880302047c435bb5006730650230270fb53baff08589e200a8b2547d9e88f6472c740c6c41a9e11ae9876c6d402ff7923cca5c95a1135756febf14245bc5023100abc51c3942c18c8274c7bf553fe84d20c57e0868378476f178a82ac220bb491fd7a4f267862d775f0e1e8d4a87d9c6fa0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e48d10825e4d4bbf806d6f8cbb0883ae9ff7815616727e44dc32c4cada6c45dc9dd30bea2fe26c4e2d78addde48a86df023100d32e2ee4656e44ebccbbe0cd99f8f083abbab4a24e863fbbaa72cd03fac738639bb4961fbae4365349ed6e05b8a3eae50302047c435bb500673065023100d42aaa0b43b54f65a7980bcbf3c64825fe6e3f41f69207ca12a547bf5b3a862588410e1af40df194fc07fa62f7d64f6502307c703d3067fbba5c2907b2229ec1199b317fa251fc68fb5c03e0c70807810ab6b0c7ae291c6af35d82fcead46ff52b410302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302feee4d21146c435b69235bbaaea367664b468b2682a70454b74e7caeb5f548c31d82b17810c9259b9640030f84b6f91023100b010e4d2347f681da10d7a3d4a0e7403a6e0ba90260610d8717da91475197235739fbddf379418a351e4dad178c429540302047c435bb500683066023100f7b82923fc4e4adec571ec37158bec5f663d86808fec83eefe27a57795cb83519291a02e07531403b9bc0c6b4bd2145f023100b060ffd04787be04e6340d12fa936954e3feada6c5bf768466f73383c6b5a0f4b91e3aabc65375c2bce0311f3061ddd70302047c435bb500663064023014905206a7897b2a154d854d2fcfdcf718a512a184b899b019ea2cfef2d2d91a100b2298ed27059e8943bfa601df5a1202301a8c4a32578bb86fc67e245886c2a1768d55c67cac52efe6075f0b4c0c463429285de6b39dbaa4afb9db42a8bfc86b9c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ce008403ce67f3ea5fec0880173ba95cee2052e8874314cd28bc34b503194cda9208dc4eb81e411846b840282d798205023100e25092403a0cb19108dca6e9c013337601caad8cf6481221040bbea59e0e5ed26cdcbf392d63f151ca658064cc89136e0302047c435bb50066306402301c39e02a48f8bce66f621ef6cd11e0ce6f3da230da38fecd3bd7ff806e75309debaa616c89c7867f13dd66c0e44193f602305496c0f04b76c3617999dbdd24ea78f4c14a6d77d34397d57150a54647d19217d6a0001506784645efb481d954cf8c790302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100fb3be68ee636fac51e308345bb6a0175dbf1a2bd62f33836d69b595ef76554497313f307a54f6df12b3d2ab191a13b29023100d6f0d88e1c5616e9a0cba857e1d1a701069b27551fb2ec10695afbe3b5e4fcb7c1188c8477b089b6f34a25ceb03f43120302047c435bb500663064023049d2aa977abd58944de27ffa8a47fa91f92bcabdd452ba9530ea06d17c7c397b95da747dce6184219befc97dc8cefe150230182c7b3f4fd090b718356bf73662ad8c7866f012ff09a326b04c5e0cec183c70bc6f8e5aab167207f574fc15706fdd0c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d5fa5f6b2e079254c848984ac9f12df9f228b4415c0e67c29f91eff478ea6be2e1aebc08a218d1ee63a2f3222f2c469402307308df2f96b5a57588acd19834cb9776ca342a02f4979c85703d70a6d3750b6635a777deb67076998443913a36e5cac60302047c435bb500683066023100d21747849aa96110b33d35f0bef5752f5f1ab0d08c73b9ee4376ef68ab07ff83ff58cabe15af31eeb073d43d7b9f8b42023100cd1cb6f3133b983c538199b772c803af85750c1f196e9769f6dc66e11f31dd88f9dec8cc19f44f7324be29d0eebde6c00302047c435bb5006630640230482386321df682a49b912e1d9bb240e456acbcc1a2f5ddc6214487021a8367cdcc78479a0c23bfbfd01b619f6258e62602302b2d4c9930a743e7e26d2e4abdcb26ce1587f91233a1e465c9241a8ebca814477fb6790f065173212d92a9417e831d6c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f658afc622358d3c49e91801ca57d5d5b447bbeba0ba69b93e733800d25e873321c4c2fc789edd7583e6f517e2592761023100bf576590b8887e9d547811b258138ce23bf2a8736edc59f4912eb939f90c8ee49db010f49a6ad89d63d8f9cc2cff2f110302047c435bb5006730650231008d045ccacff7711ba7e3618241a34837f6e8b7cc8ef3204f7a1379592c00b360183c8afe9905123aab117a9acf3bf5f002300b7028dc12e4a7d8bd394ce96cc044a2232a1f51ed3be5c3527d42ae5e00d53b5d3b72c67f06d4116b858e6e3f0f0f0f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e8176fd9d40af534545ffd5d82670a75a7d94cd5a1bdb9ea8dacc4c42bd0020c1d878cd2a989d6f9260c3e830a1aa7ab023100f2af53313f1c0ab0b69935b496b7be71caf7d2e10fee7ae371aaf88d210b469950336f298b1c2e3a7004c59f872a326f0302047c435bb500673065023100b0fe9c0534b2f9aa912d9bd274b857951475abaf3487484184f4a78790ef156acb8d562d4ea22032021bafdcebdeab16023052d69370c29a0e81afa87c13dd5cef7f9aa1a580fab958c0967b910a1df48596085055d4cf99db53183461ebb1a421230302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230796a902a0b4f62d05cf303d5c3b11e1023a431cf835aa0110a46f3bca67d7c3c2f7a54cff2a0aba7b6f0c3a2a676ef2502307f2db5b048a28884cdb68e9caa0c30bc9c5c4ab47d152175cac9bd5cb5d0e375c11add85fb9316f3a4bd342e3cf6ba830302047c435bb50067306502300086125525408a42d45fdf8d015108f4d3587181d7159091046d19eed3e9cf995d5f36dd955251bf466b4f6704e94a03023100c77ac03dbca3dbd10b8ddac77140b3f2301cd0d600d9c2fc3cb643d77a9bf2e10907b01513f1dcf515e2fb81e94f45400302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301340ed6179423f93acef75cc0f9a72bf197b5494286cc881edce8e4109c7dbb545e074cfaeb0f94eed723aab53e3b50b0230230fea52bb0639a8d61457f03c51ae0bc2359d322aa549714538922193a6b0f68a2581a51ca2ce1dad0bb819a38903870302047c435bb500673065023100a9689a8b889bce1ac6ba013afffa68087f867a3ae7dd3ef7899a02673c8c9c9726ecc2194962b449893cd970a5757f1502302371e8e7b94066a16283e3814ea2c661ff9391f0afcbe1d5e7282474ad737acac1c963722505dfb1f115c2185f8bea1e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ddc2711de129ea3e42108946de4fee3dfdb2a6fee10425d7ef2a40cff447cfe3d2e34505da6c3b5fa2ea87d1640a3148023049212c9e41455ab397cb59a37aecec471973913118d11712fe572bb254c936b4d6dee6b6c1b83fe6adf6b3b2e44bfd730302047c435bb500663064023016e9f310d9fc84775b26bf70aebec67d8d7b354ff9cca8f7304d9cf973fe019f0223992ff8e526a08fd84f398431fb0d02304431a848668996d6d347a548e9c1a35fc3075d28986c4c9b8346927aa51130f11f676a68df2ae0556cdb287b8c3165ae0302047c435bb500683066023100ed6a1c8e07e08a4518587d46ddf7097ea9b7da241c1803b126a8be85bf9ef760c9f75f53db0c26b88c238600ae088a4a023100f00b734f2323d25e6dfcfd3b5d27557a672163842c27faebfa0c5e73d088c73d401fef810e66f187d7a566074ae0ade70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008c778b67324cec23417377277f835da9c43ff84c06cacdd3a809f278380372378b50a3a4ae480df8590135db65ca9569023100e585ea11adecfac30366e471c48e913678d1db619664115de21ee23cf6f6ea1aa9f50a3fb6dd4f849ea4f618f4c59d620302047c435bb5006730650230760d57acdce1339d11d81fe4c261b6e583c2fa44701a0abb14c72c97ea81d1c92fa8d213df30bfe7f5438dad2c7ccc34023100fa2f7adee557af714359c870703c23f6668bf77041e8ef3e0352f53b9e72b31947e5f0e95925a9112afd6a30627501cc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023074749c0f3f99e52fab1b342fe70ebea54e377b1e2f984a9689f85418524e3ba9336165b49b9dbc1facab11910203f296023100e53b0b0ecb39f7531b74fd6f58f6ab809493d380fbef98635b061429e60cbac3179e71835c67e68d591addcef237bf500302047c435bb5006730650230724c629d17ccdb805d878b27ff0806aae43a14454161fb24403cdf6c983d5b5503b583fe79e5954c027d28386ab7059a023100d4638113672e33b3636a47d375a0db4d758a7cd3190052aeee5683a82bcd9638142b63ac24015fea4c7a50274c08bf220302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304353ec8c0daefc257045f7aadb9454322c1cf0c1096d4467030dd1bb80326ceb4dc2edf3e9a8f6f69b072cd960319d440230083d81411db820214299f735024b3aef3dc008326070f8a2a424e2c815c70f58d99fa2db658d57dbdeb462e28c2099fb0302047c435bb500673065023100f2ccada3b3ec7536b8fffe076ed21f70a65041234903b55249f7166b59dd9a366f8b43f7e5cb4015bbec028ee3c8783302301bcab10b8c551751895fe6e4bb03f9de509001dc892481a376e98a5b45361dc304024de84c0cdeb8991222900859728a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302f2b88675a6b9ff3a8eab0a7b30e5bd0e90ef91bd03aca4dcb39e38405cd9eb46035194aff9097b62029fabe260227c1023035bea1c07668f733f2b05c58121a8692fcbeb72c875e5276e48a8c7ae33dfaae324bfc54ccf1ac037c0330cccd48b92c0302047c435bb50066306402301a429e631a224f422779a544bd8e09b2064e1fc21dc89642a1c777b5b0efb6646aff5aee2bd75da05de8042d64cbc691023068aa1d46d628dc9c1df7d3748ff82e939dc73fa4bdc3df8a93b8fcc7ba72a0adfed140f29a2f51a61e2d0bd0d11f76420302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c673ca4e30dec5b00ed6e8e2bfdcf4c7b22ee7e5dbed70d1a32fd47c2fc464c2d2a50ed257d135fcec18cf934e7b6fab02300ff15d287c06abdaf4b6a554caa59e64dbb2af1fee766e3b5064b7d1151dec95e943d97095cb3ffaf204619ac5cfca4c0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c5d90b483ebf2cf0f3e09123268d58346052717e4dda7498a10912a037488d9418c2302801fb819f2800f04d8b6e3dff02304faf1d524f94cae241d23bdaa13de3be4485ac1be48d6c146f08ba70e426f531966d2b0d92d8fb2f645aabe72d986d220302047c435bb500673065023043a1754093afc588df540669102e36a9c25d6ce560da49cf5bf2ffd6e046d47f7795fc2998b97e833bd36e89f96b861502310095eb1dd1635be51921b1ba2c571b7ad0f694ee1811c010e288bc532581584c117cac65b82e317efbabf3156b619576270302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023046dd61fb43d9b2e13dbdf74ff3c9ecca3b49d0afff9ae2a3179509ee46df0c590bc17f3e97cd7512f888787b1536250f023100ee3e5da726ad3b8fbeeb6f84b3e82bfcc5d5b7be0149896332dfc40e20e3e9f306b118faa771605c9674aa963b7b59bc0302047c435bb500673065023100a13ccce57c5ef8fd4cf87369fc861c24000b31a34ea95b89f708991ec946aef99993a3f5448912c6eb94a064bc27a374023024069bce749a11eb33497d1a8f198fda3c36d2324ec95caa32200bdf77213002a8f843eae3f59574028d454fe61824080302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b438cb85c41aa950895ab9b48c0a4651708714f50682205eb4f5339e7c17c7a57a8bb0c5670ad0243ab3fd684a53c3cb023100c9fb53e534a5adcb4e438b6c9a985b06c5dffd85c1f02df031d5c74a3e413310056cf2e0a166282423d05c04b64960850302047c435bb50067306502303f26f5879813ff849db6b1e460932c54d16d4a601f6f6ec7af05fe5e4b55c3fedc33a7a3eea8ed4d0d8c7551b465da60023100f247afc4ad20791560a3051f13171f2b7bc342e4a8fc11d78a6dacfb13cc90edcac35e5cba6ab857d8126fab6f5f54e10302047c435bb500683066023100ed6a1c8e07e08a4518587d46ddf7097ea9b7da241c1803b126a8be85bf9ef760c9f75f53db0c26b88c238600ae088a4a023100f00b734f2323d25e6dfcfd3b5d27557a672163842c27faebfa0c5e73d088c73d401fef810e66f187d7a566074ae0ade70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f9b03802b6611cbad60cff09c6a3bf3436734317ab01653e84f69d5402d51d13c25d3406dd74cdabee5db82d20a03f73023100d7c2b45433e60544ccf4a3ea3b0378d5b9f3274401dec0a4844b4c70fd03d332196ebac5af117b4fdfdbf7505a6394790302047c435bb500683066023100b5cd383116f2a5de939432ffcca394a7bc8fb74aa49b39a5746b6bc52b8cfdc2c41c52b16bc190548ba21ed810c965d4023100e586fd284cbac8baa2475481bae9c480d9d9d68800292282969d449a7ffadc853adca95e938e1a8f60c2487a093536d40302047c435bb500683066023100bbddb692fecd5d8789488a1badd0c87910f85c9c0a94a64f0fba6d57f0cc288b6b7b821a77db2d14f6b87ec851e3e6d7023100d7903bd5f1ade6c0ffe342d82f776b399e61df2b56d0f880c59a93470f5441416fac778671d4e495b6b0bf949f5ffb930302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230040be192750900f8f205237ed0b9cb342d3dcd344ca4ba06ebea7bd9dc1f994a131bdd014e5a17db9e9f75cf953d9c5b023100be2ad2a0e9e81d0ac727aa9c712ca3639b3e53fb5280f1268f677c48db8df238cabcbdf6166b885035b8c3d99aa3ee140302047c435bb50066306402302a3164092c2aaf8ab326501a05e499e1817c77cf61809b0340d14281665c8f4351624fa680a6912b8b3a9f89683a0a6802304b3c807ce1bda92c48b7836b28ba6ca80f4dec7527f00abab0d98283533b05d2c80d2d1fc5dcd8d92d40dae0619a70f70302047c435bb500663064023100c3658c88f33cdc3e0123114646e86ba263a73ab356e307027d56acdf0b8efd00e72168ee3172374e7c7cb064936acf9c022f348f9641574ea30d57dcc5d260444439382b4f512fab1309013ce92e11de11fe60c01ef7ded37c818cbf201c2e50960302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100dd16cda50a577a5067037e14f7b19c191e28f460a9be8bb37861f1330b43061687a11c13da4e1f9d30815a79c39c7265023062303ba88b68702909b5318304b6fcc2a5aea5d08f2803f51483f9528e63fd2ce9d588d859170cb86f17dfc43aaee5640302047c435bb5006730650230171c3f54b6ee5b46762be3468818f8fa09df0925c22107f71998fd6d91ed3a1134df9249fbc3ac1c8d544de5b556aadb023100fc8501b5eaac5c2c0adeb0fbbbe45beff2e5fd0ae87c05d8f737c9961020e9dc9eb25ecedfa7728ad35c5b85ddf1b3440302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f04c513e0910fbd921bf08a35487faa5b4a30d78c3c3e1f51f4794c0ea379e3fddc18631bbed652b679c6abca594943602310094f76389f9a40034fd8f36b6ac561fb359b0561ad1ceb60b72984a49b89a26c91c593cd35434355b0a82a70cecaa261c0302047c435bb50067306502305cc29ede53f127a7cbbd417836cefb3c1ca83a2bf7ab61d2810409ca9c8bb7908b44af61cf20c1a9cb43cd7a9d6f4e8202310099603d9f841cba51ebc74cb0d05d3b716d4ef1a185f7c6608b0260e9a7550c4e758f00b357c2e0ff323306be35923a570302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310099ea6232bd6991422325282a84ca03ecec39eed77b489b7ab479bb9026fe81b7c12190145493e5784aca32ca6ecc77ca023100e5df0fd8de706ebc426140a046ab811d793c756ac4fa1c11b443d45e021f2c57a8afd0d96cc2bbe75c607391626476da0302047c435bb5006630640230090c0d21b94745fd63732e8f42e533fa5b4672187418148ef32fdae9f8baf5745d977938e54d7d1fbac536271c4aad960230365958e05bf600e47d4f34063491809f964bdf9f0697bb4a59079a8a34c26fb0ce0d532ce68894f732fce39d20cacefe0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230777651453f2a9f5641980beb40ec0158d670c91f3c3056fd7017deb87783543669cba0376aada8f1c7572f940477309a02303898c236ab047a0c89e46d279c6f2694563181ebff8c848eea3f86b348b3b810e774c06fc7b571fe2ba1acb01a1a6b690302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c68c95244dcc6ed7c61ec097481c9e8c76f1e55c9d94dd4842ab5cb997bc585384de04db0e91f8354f73bc50af44875902303be7e97a4ce831568c5d2949ac2f498ed398136c03a515df067986eeeb532c3f93dfa7b9498e59502ed9937e45002ab90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304548f3ae1f99fb51e87a959c8f39c8e7c2f42e3bf55af027783aa339865db1c98740a03c8302818cdebd354e214f502f02302779ea5078d7e07ca2649e6bcb2f5d9e8ad3e077fb4d2b83a535f7d93bc9802c372d79af5f2cf22bbba24fa92682f1e00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304703c80c5bac5f52e40c15353d805307d76b3a599ee670be9957a6c1e7574914829742e59ae1e566d8dec8ba7606f4a702306d9a43087500d21fce4363c82535bbf355d5ee93b8de3c0b08b42057055f11558406f3a8bd60420db615f2e9b5e794ef0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c57bae7e2e4226a55348431e9360ac00ce16355383e0bae9abba600b0ba44f360b1ce58894cefd622d7e6e1481f1a7d7023100cffbbf0b1eec6cdf924bf743479fafb980db0adde979025a1becf1f678b2dc65614a9ac326d8d076ece0bd020b7b1d610302047c435bb500673065023100d66d5563bb2c4acff298599997b8aa1d34e11538260ff36bc795b43d792c74d7fca5929befac60efddaf42c1de43fa7b02304dfd3b861a5f182c68033a54719a4b372794b9090c5f3ae2fc787eea25dff8f0dd835bf22b766110b36f4f885a59054a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301d19c6fd8b2f9f8227222b4e64e18361465bb8b65c763a112052e3d99ce800ce26358a8225c669b4d94785f551ec496102304a9378b80c9b9a9885f12af08b606a95a3605785f4369dd604938d8f9264f74b3b25f6cc35e09c9384a94a147594360e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301644e878d4c29f34051255ac45bbe5e72c01d08ff979be17129fb2a6b9ef4fee0039859013b1b851ecaffa7996f04a0f023100ee3ef726ddb130f642194dbe04e73142445c1451469cdd2c3267c92665be930c72298d7d062b6b9dfe9092f9b1d345c70302047c435bb500673065023100c832f7ca9ad89bea77f425d778eea596cfbe7742486303b9c1f98a9232159d7ce288b94b9ea0dfd59884c8042caa32c102304eaa65a6788ede9dd98ae7efd3006b09faaf8442e33d5b869b9bd2988e8a262a6f9311efa4e59a164885ec7c9333bf830302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230318f355c6a2cf11eec78a68ddd3359b18386f3c6276f0f096abf47f67f0f136f3f882508b7f4ea01dae2e4145083d53302304cb554c6a88838c19685f3caf2fb057c354ec2dcb0ad164bb74c9b0283ffc2f0258dbea23a1aaa202908cd77396dadb90302047c435bb500673065023100e0d115c5fcae628c72501d57dacc12e8c6a8fa096d4f000e0062f5bc18054cdedab0d7ed6f7e87274ecd4583c2774ea30230537d05dc5626dc7ef3e69ac816472124ef388353aaef2fcb2e9f17c2de39938cf6906a9813a220fddaaa83c6965884350302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305de7e10cb25faa5c540c9b81ea9f4b1c6f4c23498901a0d464bff44ea92752b54b03f3ee254e0d6daab5f8c8896488d102307e0bb45b3cc89ad4c8ade2df0de74f5b6fca2e249ab2600bf3dd8c93f75968dc1c2d1684fd85957509050b2694eb24520302047c435bb500673065023100fdcdd76165c17a600e07a633de9c166c0855f897ab8274babb7f4e170830c438b3c8017b25ad0ebc6d26ab36608e703902304c63a633934ee5ef7e5fc5a81f3224a859baa60c8a638f03cc5ea964731557cdef97c6b256219f5a0d423ba0b1c9af410302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008ae4f742cf4f081a69d50ec7fe1f7c57a07f919762da617e6cfedd69150a568b8d796f080d895eb62653a860612c4cf7023100dfc415be925398f9710216782b52492feb60e57c4938f8b4ba44c68c3cde241e1f909c91a57a57886ae6fbeb52744ef40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d2ca0bcf898793883b65fa2fc8b39af9536975f516bf84b39c4ad880cada03faf8b67426f5db78f2ebb18c7b93c2ee3902302a6699d2a7f4f8b0f8c6fa0beac57cd350968a1808665e501989a9555f21bb2c01313660d232a012fc304e9ed4497d620302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307b64e94305dfa3437381558a5438e164b615803f356a779141946ade113a3b2ef28f952ea4aa3d047de716b572de696402303d808f798a2206bebeb64e06617c52cca6c3378f3c36ddfa28467a48a566e234dffeee321b55a1b06ac4940cc9d21d460302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cf71cce06409463374da7582f96a8f071d1d31fd6c3cfb3c214e8fb114183386879f4e8bb0d5424b8fdc4e2f13f7cf940231009f9f2e20adf50f187460eb07d1675fee77a05665d8bcf7223d1fdfa164bf5d8dc21304ee6de284495dfb54180c888a6a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402300b600088ce902c0e3267dc66eb59ce45c51685cc2c7c387fcf8849c7754f1557cf4f419f7d75f6d6e2c8436e7f8fcb1c023010509b0097340b6126d6648ba8157e003148ce2dde6a2563a7c28df2d6d7a48138495d271e732c8983d051a907deeb950302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f0996711be8a884eed9985d38ae7390a9a977275925826494d937f6e5539569ef82b14abadfac091985c4d1d886c5b62023100d89663e3411fef2ea325ae9b39838cd993c31f37323b0a798e4a924c2493540c0589092eee144bc47633d3b0b9e9c4600302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230566b6ca72a296e9336b0111840a311a98df65bf63aaffb1eb267302482f42a714ef5271f052ac1f0397bdbc993b80f48023043fd4b83929084573ef884e3bafaf199172cbece73e1c9f856b67ec299194abffd51df88a6b09d0d5ea3a61dbafca6c40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301dc06ff908ab1e45e33f44792c2434e1c06c94b234ba9d51fb4fd22808c5f648ae920f52d38fc865ddab9047ea32819f02301d55d422a0164ebd4865852f42e7471908318635f732605c61e8d5cbe282c84b6d65768b6b9c5ff484ad68b39f6457430302047c435bb50067306502304f723877fbf8009ff4c8c4f258563cf79f9bc9c7b2acb1a2b5dee666d27781980d696536fa4eb21e8d5adbf4ead418d60231008ac82195ba926c049a67e3900ad1b0bcaeb9c3c0c743df42756c008566058b83e603241c5e7088d36423c199aff9cb2b0302047c435bb50066306402305b90ddca2ce26dd7743b88e59696704b6a2fdc965fbca32fc0b35e73799f3d3e40464f8813e60f261a780b9625ded4df02306cee8feddb5f5572be3c300403564c24397d078da63e552e3ae13d94ef8e866ae95018021c17c8077b73a5efabf21ec90302047c435bb500683066023100ff413b7fb5d90168c74d82d00aef46eba06fb74607e17fa993e204559dd69ef7b2289cbba20f1db6fb80bab93f762be4023100b6538a537787bc7c496475a38be1b9ae545daa162573fa2e4b14bbf88a41fec6740beffd074654e2b51853493b1469920302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100df926bec15035806f6131ba41a56512be9c0ca6d2b4fe0f13e2d8b5b632d75e26814bf566be0bc6afd4fd62c7e64c8110231008ee96155c77fc83e515918d2078cb2da723ace2d15e189c47912a2706c6eff81b1b4568124513fc55faa01cc1f9f40880302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230040df693fbcd7bf86cb791134fdab858822b7fe5a6c0b05fe1550368f43dc19091968f75c8b08bb97e0c04474cb498fa023074cf498801f6ec660540ddb30aad67585e18ec4552a7adabde88b89d2eedd39c825777ae6d0fddac5d642bebd6b745e70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a1cdf974b301f4a6f7f7948435b676c983fb850b336e5317f1f7e6b7b375f037760528e950969f1b83cf692ea858f620023100b76beacfbdc5878dd6d22f938e0a5e184b4c6e7739ad9d0092ba29a96039dd03fb9e30c0d61588c725671f73cf2aab5b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023019277c0bf2c7e775bc3207c9e599b1e182a2f8076f53f52064637538b97dbcdb4e3d7b5b1d4f46397e81f8857bc9a19e023100941fa5bcc09c98c17c1e22ed82acff0aecb696b2fc51679a288ba62dab8b80c4b86712f5c8771e271274b1f45a17aabf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d4c86d72168cbaee3946555a81bec685b15999cc5e72a806e1881f0562683a4af9c350f375f6f333de4832a6dfe7614f0231008d2a4ed22ed95dab7f2afd016c66e51bc1b2ffc4cfd7252577b8e915937a52180cb58334e96f58e09057a7c926fec8250302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d22239151392caa0ee4992ccb181de51aca45b2125b4f928349a2e60c273c76578f8fde27c6e0bf7dfcd8ccf3d3521b802303d3ce1d29d820bac132b0b915160c9ca544bab3d2a9a2fe78f3f23043904cd09e4ffd6799407171e5034f3b6ca99618e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b0c3e8adc124fc0dff917b3963a33ff5c355269ed4cbf0291110a1b2b06ad499217744d64f568489962aeca749062930023100a44d23e3a51d4991dc882e44795a233e99b3ebe78f8320112424ac9dcc5ce0e8ccbba209d816639e50014a30ce7887ec0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307bbdd0714a26779fede4ff979b3be5ed5b2c6f2bf32dc43aef3700bd2bbaa5dbeb598ec43bb31465af56bcb3304e6c94023053fbe7dcc59252784a7b0c906226f98558059d4a7a4c8c4e137b7ec180b6aae1b00d9f0004292cd89831b212d9e023190302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008656fd4e60dc3ae877674217896647c9eaae892a66b1f9f65f6fb200b00b56abaf94be7beecf76adbe4f9958858d270d023100b80f89eaa63b87877ebc7207c375f07267c9b6bbee902f78350465a9be451286ff7a2bb2dd96d45913c54112495554700302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b9f5cdcf745b081306582354a3d0150878a84968c041e4c49abcdbca048cbfd8b4cc9f5eeb34181656e623c62b72d104023024b6912afbd8e329aeaa5dcb56bfda8ebe30a89e90b41d27e0f215b02316030a934b605434ee7fa421906ed2f6423cd70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008e1e35fce0385172d10e82a5a45cf02ffd126e3fe475bbd5d2acefe94ac099cbf0ed31683c55a7734795444dd4f59941023012318e7d693e41696868d3e8915f3fbdd3ace43acbc7acafa83dbb036e062f135c7684de5b5f354a18b0f0692ad116880302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023068b346f4441be396f549d2003bd7820212a23882d24b22963d15fa287f07dd88efa07e059efef2fb6a92dfc923beefb502307f4496ae5c940851ae9e3ec602708723cb6d261b49bb1c29133d61d3ae99e90f826059afdb3b160a9dddf59d1cac039f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100db22421eedb8ae4a8295d90be48d8a1a6748287ec864234ffe786a7165309f311fbe2f44b80048be08b071fc929fb228023100dd129d34632b0619dd7c9a0643d5deab9f96f13a02323d4a5d473e86a94dd9b914c73c4d1c781228a34159586777bf940302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008b60339311e2dd4cf75b2fe6706faca2f9c2e3c37ac47ad550f7958c0d8e2e6c9b1d4f50ba5d4f81fff71fe5865207ba0231009c7150f8bdd32ecf946501e59104a44468291277cbd218ca2c7dc844aa193ca8d036302b24982795b1f8567931e4792d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008a828c0256d07ff66040b57b213fa62ee3872cdfd86989f75d44a1b9c14c4c3caee7cc2de7f3a702ad2b4b4e8cd523fd023100d2370281e1629170daf20a5fa2ce21fbc3b7dd3fddc2c360208a0cb3e2e41caf7606efcc5736fd37fe12129fbd28d4620302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230277b082cb49c04716081b80463badd3386ed8469de56bd675932bffdfd69bc96755e27e47e60e7d983f79f1180ad8307023100feccecef5e4a7ed8517081ba4b1b6a6ef67a2e37b7931410e826ba856c0b814cb7c04ea2193fd1d367af6116c54217bb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300b9e008cf1aab863d0977beb977d28540b32e963d1dced2b6623fe0ec7773849a006475167f6ad906c38140dcd44257102310095d08ed2750289f4e616007996d4bf338b3f474980cb6b231525e8d87eb9f4a6fc75c6c3994bfedd893f5ab2e633da040302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023038f8afb5ef28f1de1ee3fa4d5d80aacef4e5daae4f3e8aea4b82a2dc2651dacf35b0595e799822c1eb1ceae6aae248c8023100c2e2339f62cf40a08b53422a499761b88e9fef22244202e62a8c0fb3130acfee48925399be963e0b961495fec442b5790302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304763efd0382ef74275d17a7e92f6472fceaf474bb37354977cdd72100e1eebd4d10864ea13046f9c452566842f111ddf023100dd689ebdbc5a8bc428c1829230255558e42b71395beaa7d9449faf62e0705ac3f1763e164550e5c2a16368a16fa7b82d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230212f9cf6fe153d487e2b8a4e9da2f00148b0a515d3faaf9a4d8452120fd87413b8757c1045c2a20fc0555a61abccae82023055bab3e45e11221273c0d7108c902ab896c4fcae317b4dc824fc88f44b32384efb0b601f6f0c432cff47a3ee05b5c7e40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ae2df69db6933560d9330e68c9f5c1f91205c9b311ec80392ebc6135fb3fdfb2f5382a7a8f26c45b3a530e829a82303f023100a691b12b5ebf56ea0d766d7dd42857a10effe4c488539206a6322e3b65f0505bf86bc9a571c499eef71e0710eab468230302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305942e2bb071675d9ef0428ccdfacd6fdd91e9026ea0fa4f405d186049faa9699dc4152d3a3a3f6c654001c2d41a504db02310086ae2ad2402be6213f24ab41521144f76edb4801e3bb1a57e8b56579c8b2f56ce7b853cf4cad489f57c74b18b436d4330302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304eb035c770930ed31881cc87148998f62750e25b54caaada5967e662c24de8eb9049860b9c159f5f932b5fa60a45839d02307b467fbcf5429a79908a5f462928d66543d100d0ee4f5263f47c318a5349c55ce1e552f87b096c419f6e19632a53a9700302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100957bd6dc22b77887ff382885513d4813c86698880ba83e3f0c5d2baf1e143bb31245296ac70485ba9a3123370e42824602305b7bf1cd1aeec5b0c9c25bc26f7b599e1c8d8d7a4a7b6277a9a7553c22221c5ec7ca90552d643335571b9f0e97703fd70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f3b35cd011775ab2a7efcf535aa2a70dffa01d2290bdda97a2d2705257e66c7e98f8226ec8062150e2ec627d19a177520230013629f665c3d18a11fb3e16672ee7ba02170f21dd71d7668118d938a1a0f673a01ba78632ec685b16628bca1974b5560302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307cb5045742b9786885ebb6c913c710baf87e2331aeba4f1297502822cd8a26bb7ea40bf9bed1e1b795baa9c4a1a09458023100e04c34be90cc5ecca003e75027ae2eef10ac9eeafee6d8a25248a8117838ae860bbf80f0661cb0069675955fb9b7a85a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305ebd70fa9627b6d8188c11949ef661b3fe3efec8b74b1c1ff501cfc1df47bac7a91850f9328e68811b783a962489704f023100872437ea4d984b1eb490e8fe0a7a84a58baa36c711a20e811c69e618f3ce87be90779251637ecee31ed5de36960518f80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f4cf8c1bedfbf5522268d50c4dd0ff9ef898ba786538428f874be892a19d1d68fe898d9c8396d4194086e37272371a24023036107c6a15ffd2009e5c2ae49269afa724d9fbdb9c8afc653697ad11f949aa1ed701def705a8554786258ee22d86a3660302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100957c061eeeeae3b50bc8451ba991da27ac4911e074f7f3a23df9bf28446c3b07c0fbab0b67a10408560833dfa011589a0230137ae42bbb5b262e0192abd46b3e298cf05edf96afd5322f2e0b7f75218354c762f55b801057078b5e19ea11583051200302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230452bd792f4465b91d43524b5d4b1ac47c9a717e5bb1a774e3a04f6e07202cda7b2d11999085df1d886d5a90f9594f930023024e3204e5430cb436a88d591095036869944b8150bdad79fe99fb7f06435f7cd5c0d44aa7fa74d3af96ee8f13d17990a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306249d34a106d02f9f7da8f9ffe19821613af81f49a3c819ed94f640f63f60763907bf24a04e0f4104cee6d6c902c5466023100a6b63237946891539c554e3d534038c1290a07961ecfb84a22bb3f9cc317e1b64c324763cf1257ae5ed568b7ead2a7070302047c435bb5006730650231008244fcb17d460788d7657aa55f368ee8f0a4d9374d15856439daf14818ea11a50087c800d10fe8b0b85e368a42b9f942023028f34370c25467da29dfb8122c6d8930788e97ed117eed831b2da1948accf2fef3717a6f65c93cc3ec4988cbf4fee21d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009f2f355816d718e9a4212e47574b11c200048578de95603d65ba70159f787c6ae06875fb7efb4284648563fcd24ff3f902307279e21d344c4c86982e68a14c28509a448e02d188bd1252d9e1475de9125feb385860e44d6ae69fabc9b0866768225b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230213e68e616aa30f1a048ae52ee113d2011c13ce0a7e5d773c7b3cdf391ee954e0c94cb6df1ff27a4b0974f633bef36c2023100ae46b62b061f3747037ed2a8d89bdc2d0d082f83279acaebcd880275308b93abca4621a9a8af399345bf94f5ba2191980302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023040fefa7805b311e22ab392110774f90fab94c5fd83cd1b4809f5c049961db5324cbff2bd2471ea6b789c398f7ab82c4b02302ef8c3e59397bb036dbf64d2b8321d1bba653744f2c256440ecf3145dd5538df890bf95fc1085f8e5827c8054ae9b1850302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008b4ea4ca8cdc2b90312ccb9686b3c0d92d932a76f417fa864318d6776ffd7905c1f216363d28193ae6ef7e15208e267f023100a98ca7a2624400ab7b74e3d21551a9b367196e3b2402f9be599a9b7d195d53180347a6e79ee93b59243ee3e97c20b9580302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e87bc47d74bf734b3c2f62ad821a65c6c04b5430e41ac2a3a5197c8a9215a82262959f6b39f3817cf1f824b891a017db02305500fb56581a76f1b8a85ee625882428ba853603c4f46be2ec4cd59c4952ff9e4d3e8ea2973f18624529958768328f370302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c963d5f7a2d945cefe8e58baeccb78ce7195f1e1f8d524dfd8fa3b41ab2414869e0b2fe419beaf517de129b295439c4d023100fefea56f817c0eae4f0ccf1566b8ca74b91b800bdeef070fc661ad39a39a0f4716fad0fc6f0874754ca78e2134fea5360302047c435bb50067306502302dfb7cfff786bdcefc615ee5ce1955565032d1cca85120953ebe3268aba0fd784c8d4f7a3836b6c9ea615fb63978e360023100b721fe8b71c9d7dfda63e4f25990721b9a3b3416317068394d9975826dd7d576c16d27085c7fda3cc788bf5e32612a610302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023044c9fb8d9cd347f003b5f5f01b9f7aaa1df16b9246e0d97f20c542fd537d937a24e99884c50b862708c087164fa61151023036159aaaf64e1f59ddfda9c29a31ba7167bb63decffecbf05ecfdb8c2522d7931b0a123594b0c17f09ca28cb4e1626840302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b6b0a583da027182fc4a466bb82049a761956f31206dde1deb944b1c26aefb995869c1dd25a65ea91436f02d8697c17a023100b8ddb36b1a1d427b4c307f39cf71dddcaaca4218795b952ed4aa008403d692f98cccc19e486127b9273be426a58f39390302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230310a56d5e545ae658667a0e7b5dd4e70a6d129437650c7abe58804f85345d2c48a81e272d571438aeb40716b14cbb9fe0230621effd770d54ec4abbfe45f92256c546d9faf5746a1b2691f02e07b438f1350f4554fff55600b5e79272643a82f06c70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306c27a5cb71759d7b72ed1e3257fd5be4a50b95ae3e672dcb38aeca157518b640e7fd67d6651dc77fac12696071003a88023100f9cf8541e9fdb13b596c46236e27fe3ab32288bedb69faee1ba8e7eeeabd11bd2e02778e1d765f2114808740bc9880990302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100eab1c2ef7ef3046c432d875fde378ed3ab0b56107ddf05538a5e40d02e4086b9d08822fe52ca1ffad052303370451269023009a8c70a0536624d0d17c878a81561de4b8dc91564a6179052dec40e9e6ab51463514471515643b076f93c67225681a60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023014b8af26cd6aed97dc84d3b88afcfd8026a845772d6566e47a27bae19909737b6d40d49d82240ab211e1b0b0de3ad37a02301cdadfca53ae045ff503539c234b7d04cf52da4e35fc85ba803d899df260d38996cdb56adf35d6b1203b9030c0e8ea4c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c8c330e1b60dcb35b673533534da88a9724f235614f415ea2bf8f3713be4e6fba1f9c2ae5ca6d63f2818ccf76f831ae502302f33c51cac34c71dd03b699489ead0c0ae450b7be094e8046a37939d6521c6d1840c0840ad9014b7c48d40e5c8cf9b290302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b9089a46eec72ed00a647cc36e1c1ff1921ba4df8f9b547cc1c02556616c7da48c7364cbc1fd2c1f6a850708a53858240230144d2eae7d771f26ddb45b4a59ebe9d104adf0bbeb9af746179aa6b636dc1d51aaede49f689a6d0f0ea0d7d208fe3ba90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f19f7a3ec83e8b167946166de8bb9444c08d5cfcd79425481d47d1a62a710d8520b62d30f197b2e59f6c626483f7ff75023024280f828783111699bb1492ed7d1387d2c7f1acd5c2912d728801877181dedfb7564296702367838ca331385e3dea830302047c435bb500673065023100cda3698aa8e44d6853a8e039259ea02c423a3d33dccf22a1bf7c7f9a8ed618ca7812eef3f6ffde846382645e8d961456023072caa1a2b9fa343ec4f2281f6a95fd27c84b20f7496db00bfce68e4d90636fd62c5711e0e4bc3ca6bfed6bb898e7848f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303328155cebac45611e7db77f061604853fb2a7806606a3603352ede9255ecc812113b0ea7d040fcff2f2c0e3e422727d0230113c402da5625f8d9ebef9a93e404bd4419e6b9f92fbb8d739baa1528fda7c0faeb28ee653f5b4c398c3363326af51420302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230285c607c8d90826c7653504f442d3ecbbc2ba80c9c258010ad3cb659f7ce0f293f76c0ba3bd16d03ead39a85612782fa02300f8d1cf4b3768c156c1fcd31da7629a9d89206456fdae17ee9035b8a5527a233c7b5e9b71a41b752e732cb7a293b637a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023027c92de9c347d4d14fe139aa355852672ff5c8df3e24b843449a25b4dc020e750d3550ff2da4931ee84d6865fade8c9002302b58a764dd7f56501acb3dc29766e9a05b782b46f24b7fa8109980ca1c5ec6428346fbfc21a742f6c569218d4cff202a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304596ba9774c2244ee6ecd99e57204dc81139050a86f247519596155b94cc3b8af16f7ee9b2fcfc6ac1fb3fbcae3d07d3023100e91b98aaa91727e999840099bc49d8d43684b9faea921c7cc8402e8d1f152e8241a59683af602721153458f0709e85e00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402300857be84c210da8c4aef684e075da4092fa0226287a721be42e2c578d08c4915eafc4749dfdf0eaaeeacb3442cab459d023035df69d0b6e96210e27649e5fd926de87d8b35fdaf5c9f0d1bb3c95faaff2a8534c1685d8eb4e017219703e91268cdee0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c28ca4e89b753a52571548ba9307e7243b5a036ab4ff34a3fe12c8e1497558bdd28c3351421ef181fad0b1c42bedb28a0230076f72c9c73754b885ba100dc680395c2f877d0d233018f8d4fe7cc56e851a2c47d491c4f086c6b528df80187856f8b90302047c435bb500673065023035214ee3ca7686d643b0c9b3bfebc89fea6da5a2b9c665f31f101385589d145b14c8e3560f1e88a0899025d040ce761c023100d8f20da9eab0cdba24d86c3d82f086b6c819e9f40b2f8c6598d5eed58f2afd9eb6a6563e4ef0018cf3b339ae100a4fdf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100894b5ccbd23b072e278ab81dcd4da13b89ced12de89ecdc5f65c0f42b0759978fc63c825ad02b28563b10235504bd5e60231008a859f32e516b0aaadb6ad5883fe59028999eae5f1b222b1af5478128e42a6367229a1acf918093c1a6bc8521c7af4f20302047c435bb500683066023100ae8878e0dac8687a0512a5fce4d1d98e7cb3918f696c83ba62bd25ab026d6485b716f9cb5e219f971ed4235ce7707532023100a40946a274ea4aa2943bc8fe9254700f5a7308095586522727608497360eb98615ddc14cd3d8f2dcb1ded327d92d447a0302047c435bb50067306502301c39322ac785123ca79ec8dc97b4c259ac1e7ff6ccf078e637f333323128afefed9687be75aa9a9715c4092b412b5c4a023100cf6d4729b3137824ccf60520b37bcb8a40ed70fa0a33cef3f320350ea089290cfea13798cd3fa22c06910d93c7f4083e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a3cd7f11a6ae67643a90a32015c58d33740f56ddc3f6b6fcf80dcac751258528929a9826769e304b7e6cf13ed4c2848a02302ed24ad25daca67682c3305cd3b84cd0c52774d8338814ce1eb279f534294978a7f84291a8fe79a1517389084c98e42e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a9f4b773bd9ab431cf24c33925031324d2f217e65b2ffbec3bad0a3a5871d846259035405178d9d2766eca1079c390fe02303201e6b698b45ffc2b6e49cad3b623fb93b93e0862530ae7fa49e743c4b71c1eef966c3500bd3f0224eb366e2ccbe5d70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310080656e06baadf0a1ad775212717cff591331d1c0cac7e364359605120e39d18509f326b3ec301b2071ab4f1cd36c33c7023100ccba5e35c24758e22184842b09531e9d0dd8196e928063688d658fd37a3bb637f6c2cdaf3ad183c13b6819e30b346d800302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302c3276cff74b2fc950c38796fa8c6742db23eeda35dbf9709768af9ff4f9b2f32074dc3360f403101224e6978ea7768002310087ba04e19b03330b208b36f1f63b21c836ff04f62dd5445d85e4c7a0d7deb5aab915a57cd9acc284445fd47ff55a86320302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304a5f59df700843d7808a14481b3bf9e85898b186bea558f32c3b31d51dee8370f8cda670d2c376ef1efe610920cbc1080230397b9d0ac58648cebd20c772eaaac60c6912f3fb4db61e78d90b78e21db8f8e033bd52879834a114a6ee90ee20230d8d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301f92fa99b3eb22a2fc84948f80c418f07bcc74b95b36a99e6aa81bda91e4c9f044b7453ccc52b86082e9cf387826a34f023100bc28f465383678d6243aaf3b9a22cd5c56ad09e96975216fb6b31e2dcb9b5759f14d4c8a9ffe72d51816260e778e4e780302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230559a16d76c276d9bc871f4cedcfdce0fcb2621b43d3de261c5c9c6dc3d5ce97a06980f90121e1c26b0eecda13574f5d9023061b21fa02396e6d95bea6f148e7a351dc472132c8d03cc8137bda41c6c9b047dd712e69b448d1085a3e33115c65dfc060302047c435bb500663064023075e9822e79d1ae209ea0b978ecdf6d36a10dcd29c4750d93609806dbb76a9e2fd2a14328d54e021824dcb49f729e2d2402304dc7a9d6867a760e326e5c10265eb7a97718dfdd80e895242616770366cd98aa1de7849c23e6c038476bb60823c29a660302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402300f475e430015f1931df1efaa9253ee72a88115bb46a11d25144a2c3b89c9046ff7120fd8cd9a4392b6124aa8b259f4a00230792df2f37162c658e08bf3d4edb6f833173484cbc8713936ebf5d525cbcf8234caafd5e67e597b6328aee69c60be03970302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a2fe9a285c511ceaf3dd30b86e88ee953f38e58cb0e1aa3eeba503281d471936e51bb3f8dbd076975ef5ad229673e8650230757e6f6426a8d4aea23fe85a8b9bd7e7d21b220c66005ce1e45e6073b7df831bbdc8168f0f770ac174610e12bb6fc38b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c890e8acedcad1865ab154c65195a9ae63ed93870aae3f6eb5e7121fa801625728b8184494075b5b75956632bc6ea9f8023100b021d6bbe8cbbe516bbedb22ed0831d204c35c4c15d4cc42b801efcdc04c7ddce82cb383b14a24ba0c1b40c212a7edf00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230512f9b239c4cdcd9fdcc91872d436203855859fc34f26f156b938cb14a4176b38867c1e6ffcbfe0005f9c1a835decad10230324448221e78de01cf474d1b1784c436164096d1129c32bf20053a94f5961c78ce5682cd7c7b6049e0b129a2e12e08fc0302047c435bb50067306502307a91896e02c7a2781c9fb938c1dd1fa73f1b314aec7a1b075153966d5249e3827d5a305e0d50bbb047a1b682a0682970023100a39551add61aa38fbd287dc74c8759906f956abee7a86ef1375640d709b4fb0c2942a34e28ac1442eed8a09db48e46840302047c435bb500673065023100f2f8af2098e2353e31038a6a88c35ec38fe40e9436d96312ec5f6082ffe3bc63e9be206be20d6e327ef45b0e43ec7d5702300a74e9fd4af350fca8bc4bb09c9e32b232813561f714b946c17847414e1d33f3ce8ba4092ebd1893f836627dab7ff1bc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307772fc29469c49a8cabe1e54ef51d7881b2ba6f9de879e4489943d43e20a92e12219fa28b8c1dbd02290c46b25eb2a1f02302cb0a6de7b45cdb0aabf8bfea9e2141d993b2c929be65c4e0b013f010ab327fe1823101af333b5f02c8d1fd7499446d20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100918e4e9b9aa6782a0044d3c4852e24164114eb884ec8faff1ddd0c6d370a2d16a6fce39277621783a330872a1a2c90cb02306aa424f96d33a5b01069a639c4937ea675673930734151e413225a5a65154cd372a5cdb9646f30407bb2cac1ec9f9cf30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300ab6b82a7e98a764633eb1ab0471dfcf7a4ceda8a25157d646f1e1f2764a648e5347dc32176cc58c870d99c906f328ea02310087a61b4eda56eac5f571aabfa9a08b1d55fbb6c177f2eab6a0fd76c17224fa08e174c9ca330d5fa53bad62362f478d5e0302047c435bb5006630640230112daa1b6dba189379c274d3cedc97bac749865ec96ef066eea95be98f2784f93531830e6d799d10073a342f2d50c9fc0230497a243169de71e9cb53b62f15d0e1f4a5de0075b081529b181ad1957963f28498d1496e77bc67675fd01e81abb5173c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230071fa8e9cb735b38933a67783647a649cb6b31d599dbaa62edb9b20a4f4d925020e4256a758bb65696b2988ab8392af2023100ad1a29878954099ab4fc38e9a4e6198978b65e2f24e5ec9a37c6ad4cd2693f032fc1853d9e3cf660ef273ad38041d8d30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100bdc3f684335850baf1c3777d2815d2f6b792a5ed1fa815dec671490a8781fca9620301fb0bce95c45cbec8201ade285b023100aac8de8b078196a7e736746a78acbc78980a1ec660c715749cecd3b2b0a1a73b646c24091237651ba4d3c1970e072f440302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100cdc840b563722f806d3e0263aa047e7a518fd96bc40716caac2961c34c2ed8598826a93dba32b58f5e41f0235f8d40bf02303d7bc33e3189d6ed169deb6ba56736d212308998e6642dfe9b22f8cdf4240ae7a67b6ce8677db7087877a0a99b44e1900302047c435bb50067306502306bc3931fa75b4779ab223f603f06af4f4dd6f7cf0fba0e2418d8c52fe59016bb16b88fa9e6233c68e15b207912723200023100d6fd3f0a26ee2ef3c722c1410a82473663df36e35d6aaa4d0ac46d0b66e600e03cd33f3c1fa70a244147944f5311b0700302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304b54f907b9192373474411ff038f4eac1f74a8dc4505b642f00e724f67cd2bf1a6dc3937869808aede9fb2df3520035f02302392f0dcbb26dc1045ff53711ff52e65596a1a43a4c0436ecea1ae79c771a8159b45e7507a060c258260c4be75e1d0f20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e4fe26eae1258f44ec63d290c74f7cd15e5a494e0419142d1a3c2abb2b3260d1497f455c27a5292151ea474994ba39df023004a8d96106e7b34f01fbf1b440f18b0bd6a3097725953d50102490c7f8dae48bf6b329a194947f5169a4ca47c8f7c99e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008399853315a3ca369eba89fd70b2e1ae7e10c04e1819ca8f17c456ff91e1586e4dd8bf743f003d0ed31a8d0a812756b8023062eb544ded25853849e910f637a59362a21ec3636978617949776464861effdc0e5a1038e945a66c8c5d45b36d30cf2f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008f6d143de597f6c130ec6ae8c4ae05a4d277fb664e7f263bc725db4eb15db0a43632f986ff35246348dfb3f830e100b1023100a44d968ea6a932fa2107d9ddaf72404e4e0657d973e7caff8d5a0a7adee106d2c3b7a43d284b19960e9115a430bafc7f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b4e378177a660b87f64aad79e676c48e82e94c13d35aed599f946da7a234ec1200155dc7e80784343adf929b7ba4a6af0231009f5f82ad0ff5dbc3bc8038bc079f452cb95c03d77a3a168b2aa9a8a1f08f418b6f0319884687e2c538a89d7ea0f182a30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f16d7ca5a448788c26913ac1c418bfd09e1ceec5213d0d9ef144456a84e29a1a301c68188ef5a25805b1aad99dff7842023100aa75523f84cf73a7b714732f50e51158029d2ded96c397e8773f26e298a4a75d1681bb02a3914a22ce78b049ace71a510302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302c03e69ba1eab65eb5816b7f9bb819f6a2297a0a69a7c1a2e127346d9e21e9f2a36c19e2e7a6a5965b03e4463efc29c1023100d8b6fe9906606f90a8ced43bd692f02d0f3e59654725933c3a5b73eafe418300e63dde531e0812f76fd8bfee6f7cab270302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009aec1a66064d931332324090b63c67075d93bd5ecb8377a0252193a5baf5896db462bcbc0ecad3454cedc28a87b65c560230486465316d9661a4da51bb7364f3894e49699f1f3299d7ef44fde52e4a4322f7d1957d5bad761cc969b625757be74fb30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100963cf2c4d4f8a5ee3e05ca43c87129a1f6985f51962a686e3ce18c789e5c622b88165e0ca14078befd7d2cdc5f43b33c0231008aa976bf3af254be44dd630af1b1fa4c9a658c5471a80c43a6324aa91bcd2d6d1ed69363ce847bf65ec74586866f6aae0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230226c5000c0cb83942ac44d323a1862d3d59eba899cc0b0581984ab22384a25d9e2dfb23a38288c5e3b30e5bcc7abeb1d0230453771b15932b1e8dd9597c6ead789ac4eb11a8a79b50bb47c00c1f52c82d343dcace1b5e78f8aed600195ca9f234e870302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008c4fd7ff6abdeef1b13e9a42a7687c7d91990602644037d6e24a7499fac13540da6f291494f092e9e89eead0a0275b5d023061eba238ee153e6bd992268b31ce697da9446dd0bc0d68320625b907e5b5377168b56a3f8c034cf5b1ae80425501dfea0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100cf5443039a79583ce65fa7056c02bda26b99a35fa1b37aed5239e81dd5ce6d004269eb88581a911bede79b6ebf10984a0230260a40f14e3521aae0fe8d796175b898c4b8d7bfecabb2ddde86373a8d365d7e781b46bfab14cc754e166dc0397bdca60302047c435bb500673065023100be31ac3a3f6e7b66ec685049d49f214ea7bd032c2cb455a2baba85a9663a356b5f0d24cceecb0de8807f55902ba278b102306297df8c51068df92c5c06927664d1b8e779e556069f96504c4a5f9f00093437d798259335de06a33af8b75cbedb03720302047c435bb50067306502303ddd0ace34da449718134ceecf32b3813999a8d572918438568ffc0c0e179fee3a74a42e6ca721c9a530ef55f0055c65023100e748f5fccec79c3cebe5b6932d8df40e41b326baf31978d58058321e90bb1d8a2f0704e00bab5d40b5523965f4bad92c0302047c435bb50067306502302795738c238c0d6c51e7e3f0e272fd9b38b8af6e57b9875c98983e8b20fd4f9191fd7d5d2ce4ef253862c03ddb18710a023100d385c123d17d42a6aa0f37360bb2f9312ced6189fdac5af2456c8def13e57253ff5bbf2cdc26b95293c7d1911826ba1e0302047c435bb5006830660231008002244f16127d1436182858e482dd21b182203a5d8a4fd2b0e8c77d4671709cfa5af2a432933c78a232921049eda1700231009074f31acbf2c123801f4180c66338f2e3e0823e8ee3b4580971eca6a0f0eac3d99eae218ed6b3083cb5b52a9e8b597b0302047c435bb50066306402305d6ab45a15d7326f5086cd3075cc32d57ffe57a08c4ade43f96601de8e96261b4ee2c5e385fa4711f9df662ced5b2c380230407725a8e03323661340b62e633b385ebaf27110173db64463429023b675d66b00062374fb3ce14518752bb678e1d54a0302047c435bb500663064023073a75feddf27bc7cb7fe099ec50a76c11b0c9dd70441cd3a177cf8da012fff1daaca0772d2674b5a99cad9f263162dd8023033f577ce731aeaefdaa467bbeb319e683185f8c64ea64f2f241a880dfca32d183c3220677caa089dd86b7977498125480302047c435bb5006630640230532e59f7014571121929c90558f829e242b362bfeb73ba490f3a119a1ad3db9d6430a85bed786d5c032d72f04c6b5da102300663536cd0612cba79ba15545067b21858078b04714f455f93500e99c1964e983cf0628f86d929eb74c839d62194d6330302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402300f3a7f3bb0c314d4e017b2e532da8ab88adadaa50842a3de297e2eee3b2890e300f3ed49b9861bab74ed255cd54033ed02303063a4723bd48b8127f9d5dbc5329318ad6337906e8f0cfddebdeec4a5c9c3c408df957286e351184d2feef4ef69d2e80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310081b3ffb1ec14530c3cd586027f326e626b7d0e19e57c169a601712f5dd00ab40c66891c794cea48d703f90540e22db1c023100d53c3d599d44e937bbfb143cebdd920d23e93b3a9d0682d83c6d5d843f6350b962030c320093423eaac6cb7a1da04b900302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f6120b9b8b3e6cd37a8452a4238a8e3542c88258deab57de22c018925fd91cec87c39a22e937fd4520b707fd80454fa8023100e8f51cfd470472e1d2127de1609ed0cfd4ce237a875345863359ecd84727091a515104509f0333fcf843044f84327ec20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ecc1ff231fa9cbd7967134e9952d907ca971302f43308467d5225667ddd3824e807033af75d8cbc9de450d2da87b6de502300f75f68771470245ae5666353ffba259a5f52169b60308fb38a49ea728be7d593983e98d519f09eef3365484d17110700302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301dbe175e4ca59c0302540d2b4cbc5989e5a30b54013dbca9f4ff9d60134551699cd11ad41d64390d235019cb26cae5ce02310082e902ceb28ec015348cb051483c28ecdcb7ca81f2a75b0d07407e98e0882c964f1d53cd7a1f5900908383c3e20aa0480302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230030d09ef2e5eefdd82de34f94c12b5f4d393a79ee6d5ef3b5c2ae6c615c2da0e9af6b353873efc4dfd7f9685fc43baf80230028bf3c1696c1deba44aa72c835c7243384bd73b09cc073a98be936d7fc7a73e050b35bc30236aa715343e44ed2ab4410302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009e0401c34436fd7349c95dde81d66dd47baea98e21890282cb72e7a8a6335df8015293e1f1d760c78c090be05309c8c1023100825bbab388a7ae14568be233178203f1a7769585909663c73147854705252aa12122ea806ca27cccb5b90afb549eabf80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ee0686ee63ec1eeed9a35d104537443289f8db7bc9aea5235f4b042db6387c03f681c56b902ed3a1a3a74b800cf932bc023100ebec91be53a82ed5c0ba4b70b1e2fb032434983aa950ca603c95cc8ac98e08df4cbf1c4f8c6e575684be0b3367d038440302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009758f45825fa790ca80eb623dccee4d57955ee6253eacb0841f30bcbc812a13a64550a9faeccc1860092a296d309bbe2023100819e3a2ef9a86a7154537d5ddea715c3a62f60a2418b87d593b639fe4140be6c196bcd92d32c8118d6b6d42769961c2a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023073ea5b9a715b33096d2bd962a1ae5105701986b00795234b760511ed0c129a958e86ca0ba17eb592ba362f82de556c42023100e1dbd3e66e7f3d6d9b90a80d18de8de737d63e28c0d582bcfe4288a00e08eee5d021bed80cd3c7d16f36aa638f5c3f820302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100fa1c31609f1dd5b8704047a8ad3b4dffd5f6c46a61b380085f51e0e77a9330a0bb7f4d0fca9ef9788fc2df3dbd4a5d6b023100a10156f15a95b890a1740fce766ac0aec7e7702a7aaff60eb605ecf02a91f242bdb7340f8f99e529cd797d942ac485840302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100de0cad3f56cc247a188f9581545340dd511c22fd4b5e04669656221ae9510b7404c415da623e3cf28dd1b0bf60ec4c78023100b592cd1f44cb6d59a397978568ebc7621df16cc7dc1fea9b980a648ab553650003f842a78911727e92c8cd81649a2d420302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500653063022f28613fbd71c6eee2787eb106244e17fa637ee7719c4a92e1b8354833e440dc2f9541a352662c6becfe90303bfb9b6702302bcc9d028e949073fc93da96da23d86bc72eead2c43a6c720b5d3831e2e6029e9ead3509d5e4a2bf5339b996fdc595600302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306b57be7e823f1f4f6c5db855a27476862f5de9231437bdbde7806ada81429f543c521c872f7feb418573e72ef8c68a11023100c71fc84d2748810c949f3d18cd3f514c3532b86325e7c5fe5218b6265885447d9c1d4e92b1707de6d56e333a9064e56a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023051d0c8bac7a6a27da7074a8734925ce4e0647a1c36e2ebca1148c249d80da8ebbf376556825bb39eea30cf22ba166673023058c7e4ece4bbbd55ac1b40fa70f8000a39ef76b2564dfdbc70c12002e789a68af8e4d43c0a9fe6598c93d76e11e5e98b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100fb5d94c46fe75b81aa90ceda0f7eabdcff45b3464c036aa4377b5f58c81f8056fa423a752e8d3df5b9d5b79b5d46100b023039f298bf8fdbccb124cccbf09c40aebd9eacc8a3d89369edb2207128ff90b69899b34f521f245f78538ae977be7df4160302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023077008868cad5ba4abdb0e609a77798c4bc89ebd68cec6437d6e2d4438c7ed1ae5143a986f6124a8c27764a7cc04b3a99023001648b383c2fba72f0c1db1704032c57edd0cbb53273c75aebb89ea1a3028a40d758b6fbaeeef7bc73ec3754572c67810302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230296b28f41663c1f0d3880ae464c595fccb36c3e3b3655c2b1bf27390c445415ce150df0cef7fe2f2d98f885efce2ec4a02300d879dc016c474c343c8e674f742ffbd1775789f17e6df3edbe8b1fc76e9d697cf5789d4335237f44d1717b2a2705ddf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008ffd4030cccc344b6fe5553c712a0e83919ee2f1a4856b2ee85430e8f0784b56fdf0a44193e0efb9a8af6db90cbc1392023100a68ea4e18b4da9ac6141403e08650d27caf5c6afe067c6de3796b2d964e555fd9c8ddc440ae2cb6fd78557c4d0e267c60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310081587e801e5cf6b0b22b6f58554294a7f65b126a194038cf68d9059d5e1eaf411af3b7a60cd067648781c0a089059dbb023024605117fa7b7c706286981cc5ea198ba9375326d156a9e53e29e6684193d82ec893affd782ca89a96a2ef031a7af0b00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023038d019a33b87a2e4ab58385dde70c89f370624c9bea673b3352fd1a8b38da6f6a7dfb76403dec66da1d61d84ae7bfa5b023019646275c962c683090756ad134fe1d97d1968d51ff378d9c9a35e897ec177cfe9298c0707d7a0f5e8fb8f659ed2d3cc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023011181eb2ad1e50f92bfdce4f6bb486865bd863504c041303e166681ab3c797ec2dd0e0e6a97c5a59b583ea2301698a07023100b39f0fe79b9433f7cc6ad7aa90e8de4b59482e76cd91f63cb064efb45ac268428dd1d585f270ed3f6af45a6c07aafc550302047c435bb5006730650231009d9b931dd9cef215d4a0e61b43f5e4f65491e22aac17e4da90fcf7dd1681dfd242ceea9d48665b458a7bd51a48f43d0a023058d854470700d565a8e6e58a6876d514eba6dda8ad508746d07a6a99b7d87ce7ffda5c765ae61c8d659e1634fc620f740302047c435bb500673065023100cf7529ac70ebb8826684109aadedf3880b6d8d3498fa19ccf6ad80a279946438e135ff3e4274cd97002225ecfae2ef7702300a14d136b0a50adf15c876ddf8e2910832d94d1125cbd382a0523a77b79dbf392e3d6b24738b8ace91ad7b652126df060302047c435bb500683066023100a187dbe4d9effbb3e16f35d3701adaa392356bee0226cd7de3eae1e4765d6333e7a0bbc40fd713bf8086dff967cce151023100cf416e4a59c43ed498caefd4badd1367c1233a6ec7827be792d37b538cf06cbb933fa3df143e2d807ecf1f099fb1ad6e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e6bb1682dbbeec962b4bb77ad3f09e2931af9926aaadf085bc6a23a459d9f0f54dddb18330447115bc470d8d1bbacc1d023100d36fa736904c654f6b3bb0978b7ead90313651657273f83e12d11d65506bc749958d5547071c46c280df0d83e449e07a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023032f4f323107b54e84c99bf614de040be140abbaa6ef77302db1c1fce766fffc85d60a3f85826e4ea2106f234eeebabfe02306734b3725c650a5109be1dd85d5ded2d78ffb11cbc6ab5a93b82b480ac60a732b471dc6796bb02d339127087a50a44a40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310098aeb11ed191696bde16352f9dd78500a1e797c85594dc16d54f3155e0ac799dd69d0cc415edf9f41cd92ada7a06cc0c02302f7bcb8f67d93bd7267b1a98a38a6351648fab757848475558020a9076f4b0e93b83380a07a40b774def224389cad2030302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b439e18b6889fe5a06449c5e35b70197973c30473dcfa8aeb0a7fae5f23d0fce38ed846262f3b90b139b0be2b783703e023100c5eac78e8545ec3559ccf393ab2a3d103d32575f97c372a9311d406a925db118f231e709c92047e900bcf6125450460e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cdc61c0e324e157f5a853570c15cedb7a719d9542cf2b49f6e1a26f7c6a4a72c68d3853cea3b7aace1cf08faf5c29ac00231008a534ed08b5ef9e370c5bccf81de9439f146721689c9acbfad0155f1ac66dd40dfd86968a24017c4083ad9c769ff577a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303cccbc889b15324b223668310814315fa4f047aad4fbe241ca3186ccc8e206469e4837a52b479a839d9880153a6c401f023100d80e21347f9ed226a38b5d59ec503200e63a23e6aed1d767e70087e319623a5c5947ef2fd68c42fc27fbd8808da7dfa60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009684bad8c02071e824c5a74cdadf93ae971356609c4bb3500576bdd9b4d15b1e9e6264fa4fcfe41ec8dcc0175c98f1440230699c0508edc828c84799df16d172bf84dedd5d8d7d4f05fb10bdc347cf07f97d827d2e14de23581ad9702530a129fd690302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e27861c88b784fa90785d2890167f190955cb23b0cdcada83f027c28f76ee4547fff8398074b73952090a64dedc2cc07023064f30487d89bbfab1786227862d15d09dec9173eb6830d4d844e8b145963044b43b18ff45e1e8fad3f7625a87a6611020302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305e4c70368e4ecc48967bdfede02979e10c4fb45e5d71a06b8514b4c0a69510b92652765f986599921cf315005a1d7287023100a3e8d861a0f33e99865775416a602f53344fd997cee615c901ebb84d0080bca0432154d1754b4d5775e90efb2f0853940302047c435bb500663064023057c02e9a016a823dc3d6ba35679dab7899edbfa0704e70c32af6c0a176d4d9c0b4e8858337e29d4320becc0b9fdf1cfa023027b6840f108a46b72680b52085367300f1e13e7c906befd8dc044c217cba32d5456e705376733d0d8af0c065a6248cb80302047c435bb500683066023100cb23c58c61d11ac5bfc33a171ae33c8cf083db9bde0d124c34ee2eb43b2b461399db49fed0cb11e7c97de7b1777438f2023100d140e4f2e0e873e9985f4e0a8169d5a1f4359242d462fc7e01b7039dfab03f488651edfa59b7812204427cefa01901ae0302047c435bb500663064023009d0e51dc4be746979d1c928f45b32d9171bf24a60ff0281625c913f771a33631aa7dbd9719d553c550b662b9a818dbc02306fe5e1cbfc3555edd55f9433609d615b2f86f204e627992cd929459451a1d60c8468f527e34a0c99f5bf6462cdafd3cf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b1ece527faaebf69d08947193354453b2054222062040bcf74089058d4c52fe40fa32617a74a1cdf0f9986c5da15548302304117f3d6c871f02d525e7ed68fab990f6b617b92cf09de5b9a133a3e97a206ba7a7495c350cdac16a9e73479fd49fef00302047c435bb500673065023100fd8448d8c380919de459338f7f9f1bfcbf44f8c37bcbf911c303b67590728b36f36180c524689a78627d872bd2f9fd6c02304f60ef5ace165c5faccdd43cd194cb26f2055592bea286feb330c875e50779e7059c2b09d6a61777e9c7db4937dd1d520302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b877c6c40a5bb7a2695092ae10adc2ba6aefb03314e20ed1f6904a2e5be24be4f756c86e3024faca8b112fa1c709602a02303fc5125d063c0563817691907a4a13aae60fdc19704576e8868b2e68108ed2785a879a4ec4a874ff2c1895befdcb7be90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023023e9f3efd2db8ac3ddd78ef9c9c7dbe5f7a221dac35bcfbaeaa040e8c95b2f348c496dae90604810720058700dd0ad2a02305cc012cfdcde79ca64836e6ea19e8c8c139676e805f7801fc64d3a93e586307fc6927c6eaf84742b2a9547323c2984ec0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ca73265357a0be791e34815ad4eb046a082d8988223562ee5dc909063d5b19a087344f9f75db098ef25e65ef502ce716023100f327533898d8b79e000004466627ea6e1065b08390d59dbb1f4d6f96b16033f94bb8f1feff8a3868e906e3508e809e3f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e7be75b67c62b83113b521289f643071147310a83e86e77e03408ab0c39f1d08c203ba61f87e66f5e35ea366873b0bbf0231009eab699f09419dfdab3ad78563dfe7f60418306a84e5d8f2e4fb3953588ca1d3a2dd6619038e4cd8cb07f836649f47350302047c435bb50067306502304ef68fb29c9b72b190844ed2e2b99b6bd42cf24c9edb9447665097e3cdf76129c5516ce57a3c58653f1d96228b8d1937023100c7bfe7dd8c6ef4ddf40a9e4b5b741ef083978e74e567a8dbcb502c1c2ec18941076ff5491a0eb0719bcba82e13182e9a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402300a7117937a500453b239f0b9de5297407f3a4f2bf538c119f1fc25792efe65e0558dfef154770f6c18a0689e6d955c95023051a7e2ac52508c859cdda6a68f8686c882a6c2bb5b798b4f803878c012a6aa10c0986eaf9015d1d0d7b71abdac0d74a40302047c435bb500673065023016133bf8aa8b2f7440e59516eee2974ee561bfe55ae7ade03c4cd8f48196f49997055f8eb24db5a796a42749981ff86f023100e282d2be568753c7da594328f331e77a0135d78592ed9a66c0ec5bd54206b2d124e077b0e0bf7a74481a4d26fd904a320302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303d4e844bd623220ee5df4d2030842a6bd180999d0667fc5bb57cf0445fb5761bf1ff3da2e238d31e1d2a1563472cfc0b0230475ae92a46f466cad6f55efa6c1c9b55b605ca582ef7b72412e8e5e15d846eed1f5ab3bf9d2618976af4e982e4c580730302047c435bb5006730650230135ebdf79a7ee7264a80c66885e0da99ef1ddca1eb26f28d962d89ffad868864b758a1c1708690e69dca3847e661d647023100a7091bc2ec39215d8a8c510591082c72b14205cc64836ace63c5caae3744a21eff26f02f3fcfac81ed594a4b7332786f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230099bdb41346677dc85e8a0bb56dd338d541ca1b5737843be1d9420c34142acd7c179968b01f675f373ab30050deacf4e023019c9505d43ff9b7da1be8eb2450b32e079a0ac0fe958bda8c6afb2e22d998d80592b1a7dc66809cc80ff8141fb8fd9170302047c435bb50067306502305dfac22a254fc7a4f477f70fae739db00d5964ec9fc37870971368e9516373176c467589e95a123f88c584c1ff3067470231008646d72f57e323982a0f21d6f2bbdb460d02a8dbc775d8337b938190b5cfa008b98d0a2fa604000465d9c2049c336caa0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b81e6a3101cc26ee45bf1bfa76e80ed36c41276438af45683306656f67d59b1a06f85d52f422dcf689c1b2baf4565447023100839b683e110da19bdf65a49e5f878de75417ec613af93efca4d6499bc90b2933b3fb011b777782a879f27ccb73be7a550302047c435bb500673065023100cae05bda12756c0660d7f1d436910e1b0d439fa3bc513e6b8d6e821919036d3bdbf0e53d9785c6a32d42b6b474f5123502304cad6c32fa097a10939ba064ffc90637d82dc6ef090fa2ab75f8a05b2197fcc0174aa6dc0393062a767a68f89dd358a60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023061971d114aadec030268d2f70acb8b7ab13fd75ec2b4fdd04af110affd34cf2ee7ac95949b91b5e957c52349319aea98023100cbcac7e1ff1734f3d08753dd6cc413eb5f66395a8066075873cd309909dfd4dd0964e81477225aea2a42f2fb7056a45b0302047c435bb5006730650230379a2081908f522681c18cd9a6f2e2731ba0cfaea34d1a2a99ec6887c0c5b2e24a387b8629cca982b2aaf4f9f111d75b023100f864aaa4099ef3d86270707ee7a3203fec0fc673d6fbf6cf930e0639829297463c3138b6d87d02c93c60279599d0285f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c1be0fe6b6d8b5bc358411ea1e948c4e650281a8bed877d2cfbaa5de4d103006866d248bdc93ff935939b9e1472ad268023100a3631feab08b31036a498bbfb54d2becc26f6897e847bd54a9dfad31915006e1e13673b2cb1c4c4a14b6b2b0c8b0dcbe0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302e43bc1069ee8dce8755978a9c14f915a4f9cbccbe47780aae5a452eb377686fab66352854fb09731f985ddc415bd26502304ce09f81e5cf928bd32412a41b8068e575103dbaf5650d46cdce0c5bcbaed0151e0b4c1615909f8d7332b8aaf2e33b980302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310095addc6db751f00231a1367550faf30d50027dea02b75abbe90143cfde12b7a03f724a75572df35c69f736cf750798810230395e8a537e22f0ab72dfed96dc6858ade43e50737f0c47d46909e54c335a82695727ebbedc65d7f2afa389c723c9feab0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023055d0bb89dd3d6b8dc42f450606c6c799b7ef4a1eb5429fc01562704c7a087cf1cb47691d68685cfee154f99b01689c290231009d21db69bd21deb6d7e34695199694da639aead6adbf265740adc3492428bf582f68b7936bfea1acd873a95e822d3b380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304a2426acd444c7c0deec5b96f5caf679499a18700570542075ba22ae96449c639b9634b3463e994fbce7ff08886019a8023100f7100dc724dd92c3df683b2c14b4e31934c09be32be34ad1fc31d68cd02727f1e750964f32026b466eb2cb6a157d98130302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302267bf01de205b9566404ed1d6a8ddf904e2326f15133fc4a5ff1209a644c72c2ecbc725198421b0dfe6561b06f1465302301f58d5f6546f249a93969b723bebde092179de28c117c1c1a19554eaaf8d585b994e5b803fa7844265a0b0ec3ab4fc7b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100dd70ce48fb7a723f2d8f8e9766666b230dc8c6d15979d9a05cc67e18eb6d083bde49dee0a3e648d95ae04fa97a76e50b02302ed8df4f1cc1ab38a91855e4e583bcff3e908cf5bef356191dc33a7feecbc1f9e40f86a657d8dae9e64daa786c0cf5290302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302b914030fe48712378b98ede5c287a83252bd58bcee278a6ecfc6d983fe4229a1c678d7da2d5a202b2aaf27ba42d872502305ad32aad32310681027da2c5fc41ca5f471c8540b4e6dee15f9650a39153aa4c22d1730b71fe9784cf8eac81ae3f3ca80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023021ab8b9e447e47837b716de89c0b5f11d40867eb1d8a13c90bc3c6c434cf65564eb7bfc61f34de81de8817989d083d91023100fe52e58473d8e0d5bff4b3b265b7d619d916d06551feedb4d2cea4358722d208587a574f03c67f641e89dcd05e063aee0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023054ca08c267d6fef375b34e1059a6275097813889d8932f9c9e9d66bd68eef12624b383008fd150a8c58e46511297c594023100aae976aa7534bf87e6f1364f19ccd154df371718811ab6b578956d42588c687402bb9ec7ce30cc7f6872c106d7b28e7c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305c8b9dbbc7fd24fd236e55cacad2061fe99b8f829ff18af8074d4902b53bd826fb17c309fbaffff86f71c6b69c39485d023100a3fe6e55abb1d72ae7d9dd96b9d93f128ff3625a9e165f57f3246085d624cf22f10af6411dbf668254508f439862dc290302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d8a33b06d6c12e809d8ea0a5566cc5109a6bdf430dae7169af96f3e07a3148ebe333c5d8fa62323d4dacbc863d7fa93c023022240ff1fabfc4ed1aae799f674cb6198fd4c91e2d30026b354b57c05a2571966a7b986c54824804d4ea22bac071cbec0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008ef9c2658f68ce21493ceecad907b0f55e733aef0d902d55bc682cba908eeb35b4ecb4d2d530a29e60c6cf3e69d2f3fc02304e124daa8de89abe87313c3007492e3acfc1f4e09fdb8459eadabcd8a30f34479414ca4337dd73a84774fa0a268c5bb70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301a11c23df399b36015578393bb73653e4507d88cd6ed42edf6fa9d997f40837b94e6d59bf6afe70b0f5a03689c64b4440231008542b4df29ed31e59aa2bb8debb66d83fb95fbb2b557f2375a54a13258d7a29a947fe19a656d6bac6fbb0791680d52bf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230171d9cf045a8fd8bf81491053cf7cc86f4d6650f7ec680815e38777ee346b84bba566a4a6e81fcf8f13191efcebb7746023100ccc4e78a44bb8f79980db1e411126ab254dd377d08f6cecc1b88cc345ed032b13be039cebf6068f74e6cc03a034bccce0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b2d03045d18ce237173d3f52e67b3816b65eb9094aff57c7b9105d70719d5d3f91f6a526f79f02c3a0787103885b930b0231008ff87beec237d6598364b08bbb30d627c1019e81345e5ed6d72da2d02248100df848012109c8968ec9abed0923b78dde0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023076168d14ed356415b7e0114af5e27c31f7228248eb4ffe550c191d5d4027e27932dd5c0fee28822ad4cb83e22c79df77023100826cdece918d60cfd95db730ab3520ec953731ab1f865938e93c4780ccf7befe36a0e5ebd8c5be928d61f06953abbc3a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303b9c29c02a7b5324c6a0d67c4c96ed9bff65ad58dcc840ccb2bb8cc22b149ed059db69160015c3acb58c041a349add12023005e6d36c850a771b92516bb05cddb1549ee84ee08ef1937474d69c666e408f7dba4d684b93dee8aea6ec1c6fca35a2ad0302047c435bb500683066023100b07f7eef3392f590fce589808cb6a1e84289964996b5c65e071bbb956eb0e75a538e44ac6bd0119da2614ab7e866edc3023100bb29385a0de093506ebc38b1fbc53fba7d19a30ab815275e7d895bf5b03b7efd913348638e99e177a146ff698538368d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009b5edff7b4a2163e3541024ac4d3b64fbff8f1d7770b3bdbdd10b54e58a5acedb955c242e51a20a66b191c90bc4bfc9802306a40b8575bba9a5fadacbd4bdd527bb36fd3e8c0c557008fb35b7d362cdcd28b44a57a6f89679583120d46680b1287b20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cd0aaf4eb4b332596d22a54429b3edaa36ee51aba392a27f38b23225e0ba9652f82bd66b48858507de4a3b6e8847e904023100bc4621f6216ae4af19562500c3fce48394b530306d2fd02f8a355e85054f3366a65c618673492ce8d4b7bdb48463e31c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b5ec3b8dea5cc09709ba1ce1b13ae0342a169cac33e613a46de8abb47784cab0ecdf3dcbaddadefebc00ba370f101d910230099266f2a2c4dcaf4494c32ca34724894f4553dbb9b9d7aadec09c47a417341917650c0b8ed1ce47192a575ec33335ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305f9802848310b25a90cfb5dadeee66b52325dbc46bd5fdfe1663da7f49302f8a9c26dde6073c77cb7e5763f87bd22072023100951e6d5eb89ed7cacca3be0b8cce423905866df8fc5c71caa3d62c5b48237354f4fe8b1c8554495c73b4148ae93e8c830302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230750987c6f4cef75be5969e654e61f8cf370089617c92e8bfce812366ad0916d75ae030c762a61ece6583fd4dbd29634f0230229c0c4bc5d42fa4b543fabb4908d37543c62ff0f35afde039693811cd0020c3a9c95c13edc248e002690527cd7a28600302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304ce4f2917139a4913e46f929f37302d192e4581493bc9e577ccb40dad8c640c8e298fd070e8fdea0429db508587e2b660230287f3b96574c0afdc092e79332226f7091b3fc4f6d8b74fba59df39ce9871a25a6e8d87816720f8587533673271f404b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008420480c139577472ff7b287c6195b5d05c7f0998531028bf2037a67a1de546ffdbba00222b51c7a9a615f3968c40ff8023100e3797557b5db6b5c5d45567ba83ce4a8ea06b4d46a6a1252fbfd3b526c163f0e097234e73e4b8686b1dab10a656f8c3f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304c5aa961344e5b87eba9fc79232c6ea5fc3eeaf7bdc6dc3c8f17163337c71865db2549c1bf97eb6e1309cd6fdfeb822602300a113430fc70e8e1af1054c592456206589352df78a6a5053ff82037ff3437399d56da44357357030381641e204bb3540302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307104d2c8d0674f21a116979ece57e78211e2d5057ef555c84a2e9be04660147e6df646022d31022fa7099ee70b89993502305531e5c2e52e708dc79fab844a3535dba71728ac69d36fc6f4d6728016ad48beb6155140bc09145c893bd05d533ad48a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402300bdd6a6c77aa1f5357cf8b57812051690934849c3bb09b307a6f603d4761d4812549ba7bb8fc84ee0f02a173520e4b40023071c4345c36cc85bd025d62a9372b5e5a6e23798b76f79c6005458c43eee7924e898bbfb8503bd8fac0b93f2812793a6c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230148df24f2a06e79e8d33e7ddf071e149d7cf19761d598569f98547de786f5620b9a544eb46c7305c3933c326a60b49da02302dbaf755876f889ac6b31c2c763498c80cebbcad3784b5bc69fc95e3d72599e359e45692344541a68896c7b480fdaa180302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100cd24143e8c1af48a9bf85c9d5d5e300a3192dfedd8aa88952b8a6f0723047658726e5f2256d8e750bc256aab058cfaef023078fc4f57d562447076c687f568e889220d8d0e0d8f552033163a656cda6ac1b651ba7401fcf8169451f0434be058f04d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c09015d74aaa03c0130720b0768c7cce300235c43891f683c0a4c176d47d8d8644d6246a6637afeeffeab00e01852ded02305fd869f57a0115ffb5f1a944a65d212c7a034c97796a214c96f2a76a4aaf24dff57eb94f8a3ee18d68daeac63b1e89490302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cf7db600106a31423b5c9fd56ca507e4286320c2eef185eca56a45ca1e3e54ffa056e7cdb7563ce8461b5e3ef1a0fa74023100f50acf990e5df69fd01d31693be18ef9295e143b6935e7566cab267d667ecf52254dbe9f7c3412b060b159708c6226ea0302047c435bb500683066023100aa2d0953f824099ecdfa3ceab5669fec81e6beb7e585f1cf0def2a459b146bf87f863eee96974610465c40abbacc13370231009f78706674fbb56c9a6453fcd0fb45c2339f8284e5db312e8a45ffda85d1ab5f671746d032748940b37a5701ac28e5cc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ac5039bfe77c17deb9428f3be17cf0cae88f72d8fcbd95fc46f1b2d2d928d73bd50e082b9fbb18e68ecd9017779e048102302b6756755a15f025af8aa87ae6790c0736097b6e45d9874cded736153a12acbf267be9c8804d41140d130e4a26921ef10302047c435bb5006730650230267332b38bda26a72e597d69a86fed2924a723611ae497287a681678f97e172d1688454210871e55f7a2029d3110553d023100e1192878b9f8478b731030bd7f953e1d95ad8b54804837f7ce33e62c55a059481cca43d14b26d81c3e54aa682829f69a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305aa4a27c42a371ddfd367ffc214f12be0af3d44fae85d1183ca9636226e16785523cf32fb92c12d2f2bfdaabcebbbf790230578a32ee1709d349b3949ed116de9f9655bfff19d2f5bea9a3efbfa342f866785957e1d98020db95598f95db4ffd61600302047c435bb5006630640230124e291bb0df8266b9b434c1142993db825fa2719fe9a613b024c0fccb881043c38f994bf53b76e3cbc8faef582a03a70230210f710aecad7579c86ac5dc0f8c226e688edaf02d2990f22731a10107cbacbcaac3afc09f655769a10e8ea11f6ab9f00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301ca85fd95a9b5244766aba2d03bf3f3226b70d88027e104074df96a147c758ea8fef07dc79467c9ed5ccc460c2e4520b023100cde0ca21d7d38400222ac38823f6664ef31128b8cb6f2c763bb4568c545a45e4c07a9ca6c40256f0342ec36f2ea7dd370302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009dd1ba55c38b08179178e5c3743e4b86441e8f9493ffc692cf5b295706b99ddea87873e973a71322937ea0c4e12669360231009c35d8c65cd5b36ce62ae0a0148e81b5215d7b00581d7d992fd7bbd09eea677aeeb80ff051f3b30b6a799d1737f849160302047c435bb50067306502305d059d7ca22b87dbda8d6796cbad98058dffa62a7c5a569cd611a94207a1108893dedbb7495b263264e0cabb578252bd023100c576d5e89bfe3969b2171e06a62fe6b5955cdafc4996c1daf9c99372c8bf6aa9126ae3ea8c5a9773bfbee88e280755340302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230644462724ebd56ebc05dd292228185b18c5fa937c3780d7ab5cc70eac2401fe2a6613349f18c6f6eccd442ea6a44a569023100966330ce4f7f2d59379ec42495f7f98b635eac14b7491961e213e408d3ae704b0f5506698d0e38414b12cd64a357e7710302047c435bb50066306402301ddb0ee751b10507fed4302e3743aa5a4ff516e85b22eb4012eeca1ae18a2fd2ab99abdfe41c0406b1ba9f0f0fe84459023078cfaa6db1e863439837b4c1f24b7e45d25d9a902b411b766833e12f87f7f429d15c01eaf340e105ce98586d1e4c15bb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a1695db89907300f9b96f4ba7f680392a19bc78dd591045aa8cbb55ee95e4fb77e0e504ec6a7c9144417d724d8ca71f70230328da3703c9b4dded3024b460bcba95b30570bf05d03715e74bbdce03a2d09a6efb07976272473b2fd0345351910b83b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303238a2088769da84a4b656fd1533cd278af35db39c88ffd51c7bed42a71b9a6291f98183c2aa32f97eaef264160af27f0230503a4fb0a1546b8b653be79908594ec029f9ea0d13dcc1464c67ad275ea6304405134ac0af3cf560040878d9760edb990302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230627c4cfe1a2d147f77dc9fdedac159c472e3166e94c5e42549308db1fdaf93928347211c4f090d674d2e990e9d15d0a002305a7e902d125f7a3d47e61757db99c7c85eb7d58180ecc63c8eb38bb7b47dbd46c8d16553bf0b25a6d5b1f10cd38929a90302047c435bb50067306502302fd993bd4793991775a24f315f2572143500ce68df4dfea6b4b3ef8ea9e8fcdcd798cad3530e85e8c0e339244c66813302310094df92024f2370cf5736bf1754de778651f7106d822735f14d1eb1dfd45f2046aea290697c5033d751066a34a1de296f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306426e1075c77932a97390ad2a02bef63c46bdd0ceef57562260a1489d0614ffb4d8b423842f03c22902ea5e3b105b861023100e92c04a5f10a21297e03abbee9a9db40692794b4b02db651e858613433f9047b4b812012787eae486ac858ac80c246120302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d27b29bd21f53eca67b36ebdce64ee35afa099bd7d038be08327805546056d5433d7bc540a4051e2499fa7fef6ec978f02310084df442ffe2bc92365a19e470060c836f668e43c16e95ef5b0aae4971efaeaa50964154608802a5422aadc040a6df9c70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f4f3ca9c396a1c8f4a085ef4c432f90ab1bad5918878c3f3b3ce3d39baec015e8351265acafbca9afddde1d18d2816a2023029861c78e5b4dac9e8e030a9008c2ac7242e8ac66a9e65f3c653aa2b4b2741facf03f46dd1aa1bbc00b5915c2c3e729f0302047c435bb500673065023100cbb8bd9582fb17a5496c220c8880d0f6ae4cca6446277847160100223dcc1629d1003f9fbb4696183ffb2304a41e4991023008cbd634b3d94ed7f2483051488b100dc03e7b00cd73f144fb200de367d47a8c53f4f6ddf4b86efce8e379dad2a676e80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023060cad2fb423779af7db3869a327500b1698ce88b0fd536bea5d7e005aac53c956a3dc0013350a022c93346360bc6e361023100852518fbb573a17564f4ea87dce356bd24ef6482c27ff4ef162ce269a14586fd94f5784270f5fc5f202dbb70491da0390302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cb2bb8d3778b966c4117573bc4a89bb2bab78e35af9eeb523f635ffcf01f4ed8db9ebce24b95d1769ff21cfd83bb375f023100fc1a1477faed0971f0524f12b66fcb041def2b15de1d022adcd0d350a17ea418c4f53fed7cc197e9c24f4941761fda2e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307bca482ee61be8a2547ddcd4437d8a406a23386f0e890d9a705038d583e5ca622de680ad07feaf4c996ab6c870d9c48602304f40076b16ec230c55996569c66f2d5879e0f9f3a050dae5aaf52f57491e82183ec16738b0d8b46adcd60f398b2f5b6a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307c80656d11767bcdebcd1dd9d564f9ab7a516a185d504e32f844c6c61d2627d6f9838d213aea645fea0c09bb1a2d74a1023100a99a1b828083037624726728af601ddf31c33eb212565739c0622b389730f94c47e85bcf7c6f0d563e90cb2290ccd2520302047c435bb5006730650231009532c8dd4332f98a15362f00ba134fc27759bb101e3d6a2775c1b30b9857b040226589713e330ec4d13707eca2d0343102301ab41fb53840eb866323c7a7fbe96c50e4cb883b5dc90bfab8586a40724e380405bfa1f3f6b4d0fb3b2c586ec8ac9b2a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cd76a5a1b579ebcd8eb56cdb96b360138188a31fa840304641aa5ce9f5dbd45b76638baecc72e21c502cfaaab761730c0231009f87df2b8212eb73cc0c73c51d7f6a07882007d0b0ab59b5fa3acf0ac40296fe81b731e7bb1e3386c70136fac2ae4c320302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023065854369cf4c9270f639cd13de16271c10a01715aa3519b01cd8acc61a6251039f9cb0b71d455072ca86380831384614023060476efb202116aa33c6df6f78e86827581b5915e22ececde328f97ed0e1c70e6e223397b23cdb6b7ff5dd5b155f887c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a8f256d9ff23eca22beee434bface68b1b62b7919ac8aed3733eb1b57ee7c41a8781eab381a195e56fe700abbdf50dd4023100f3c399c6d7b34c4c273575a2354b3ef98ced277243dd192dfa0e500f34548a3162c4d9dbefad34f8f46e9f905ae936c90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100cdf1eda069e9a2bb47d7ec91a76b96cc4215f383f506b158f9ff21d42fbe31226405573c78c78a630e66fb205906038802303479769b963f0e0baca5c5a9046992059fecd1d2c47d5cff4bb18fb76025864fdf0b4d7b18df1bccef5824bd67211d420302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009d808953fda04cf1642a729e7ac745b9bf608ecb53db5c51af06e7844902d57c24b2ca7f31402cadf7453efab9614bbb023100e0b9e8d2d19498cb803b4bcafeccc8aa607dccabdb718fd7d4e328175b9c967de9753ce45b2078652b058312f1e9c8430302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e105838043bb0ea95d6700c4200c71893e06c03c466a078d3de35b384349fa6dfc0f53ca7d9a9455a7b519f85ebd79e2023100e3ece238f6f423002799a66e5c9fd3b46281714b28b8b1f1bb3fdbbbd2f35fd200714e8e91826195dca10c0bf381ef4d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100dcd60d00d4a008ba83896f72597be1e34d020b4c9479a57881df84c01e5529a67830fcff54af0d39180c2046a0c0f21f0231009d8f2e7be30dbebc3418e6236a577fdad08803d7022c1a5fe86c55ba2332ddfd27248a5810e4ecade50864002cfe09460302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100937acecef61897dcf6d2c37ef265115b0d390954d26f8233767eb693563844abb983e085afa687cd4f4cae7574ef1ac40231009e3696a9f0b9016ec9e9b9c1563e21c3e07d6283478d56baf594e5b6e3174c73cf684aa0e0adf89a7b2cbddf06e4b20a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307f2b4bbf49419b6c92b3d59a2a65301246f17e6f5d582efe2c91f65835ac46673b03aea85a38987e5a6421843c15015602310098034ecaf0c6250396587df9c2c138c1b39ac90bad83d662eb5a2e6b3b6179c4a8bccc21e02f86eac1f0ec8fb9b08c200302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100bbc633ee8f549db7263ba7af20b12a32dc5e222be4aee4b5f73bc29e687222dc4aef41fd9025b955cb172c1050d5b44a0230367a2f70fd8d6dd2fd4a3c65b8507986d1bd5a230e8147fe4daf9250ab3c56082dfb0b0c7a8e6519041df5e0b27ae7420302047c435bb500673065023100de885697f8fb57eb1dc5791e310bd335060f6fb5ed336778caff5af117986cbf96edc517a3832732beb1915cc8a7a360023054e3a617f4a25141e035d42872548f49ad6abbd4f9f874792127b4cc31bf28d6e202f5935e1004b32d9492448d8023190302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d4600ab2e1bea65a535bb1da4a8dbedd22d895123007ae7c731cfdc5ebe70ef7c34b5eb455ba8a97c5634ccc275c30eb0231009ac03d51d9ed945555bbdb34f53a315cdd745439346b4e67914590ac12dff29a93a0d4dc4d438bfa951ad417879f30fb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100936b8f574f14e94ebb92f6b9389c96b8ae4d8b78b81fe59a31036b3f2e43170ceeffb3b3ede17b745424adabbff4b10f0230519a7e307b789501d4372461dbae9faf9c83d9396b376fcfc822bfa65986f6107273143fea7b052703015d9936d09a220302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b9344a4b0f348706cf88676d420827b6f8602367677150f485d3334b495bdd6a5f9f322e6ea49ffda31097dfe465d96102306dc9b83b8b3cc3f4999c67cdd22b630ba23e5c159f9e8872d00c89b75b6963eb29884ffcb9792db015e12fd8368e9b7f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100980ed1ce0117cc376ad465dd47a3231efcc9b914b3ae5ab423afff2e941001b6f2ec3a4e5ad1708b9f88e19246f281f102303341fe20bef71f1c071d40ec731b75f7e85eacea1a07427f2a5b7aa0fe832fd5d91ce51850384393fd2b2111350376300302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c4269f3e1401eb264367d342246a6975e7f8ff0863c7b95b7bb3aea5d346f955a98f1997635dcb1462d5bdc56f473fec023100cde53a299c8242ebcc524b8891f8ffc5b60ccf262cc87ee01d524a2ca62838f41b237a3f97c53fb01397d25274af907a0302047c435bb500683066023100d40df67f5661ffc5c15e41f9b055d7e4236fa407930db090c537a0395e55243f5eb228a0a201be5bc9f1be1ea4a803f3023100a02f890f181f06b924d8327dcb839970f17bcb19769703be1e5c43908e6cde615c8adc1c5df58c83bba1c89ea850f46b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023074cd1b1a77a7dd10707b34622ed566b6fd3aa08e566e19bf612bbffe2a1c0b25147dd592393c6d5c15d5fdac98eae241023100eb22613a95b33ff3d07f1c4b887ed66f0dd509ebdf5d08dcb6ba1b4b6d176fc257177cc7d9763e20e655053230f4c1f30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ba570cb11ba82314c6a9e24d64f68b3d7da248a1e940560fbd2e875067566e4beb3059e169ab79bd7142a50770ea662a023100f5defc7798cc0a9e32c938975940aea22b1a1042122a04c5b8037eade544a1fb72f3120216386cfef1e15db61e4e0dfa0302047c435bb50066306402302882df5d0907b219d815bd20ed444f9ea8b2737ae22532314bb8234760595c3592e9e75e57d76b5d3f8c6b343d31741a02306cb40f281ff38b5086c52c817bef2599165adaad64766c2221bb898ef72fe276f8353c65cf850982bd5129ab05eaaa730302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f4501ea06d75fffa20c299daaa7aee619ea990fc35a54e77e73818d169414e69a35b7139060a030dbb925fdcae73a6bd023100a040cca9dc685ad571bf6dc5449f4751e15dd649ff1498a7e84492e9b06101bcd0ca856c42400706ca51a1092c4834c30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305eb54754bddb36c6be891917843d7c34ec864da3e632cc7ba43484ad2db361982da122b894f8162dae039c4af71d3e7802300aceaeda6415fdb8f65907d1bcc9ba5f771d1812f458cc107e19795300035ec0b5c766c4a289eedaa22f965299493cff0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023038de783037e8dce68afca4f13c4966fcb87b3b6a5534adb7395489433e269e04955c743c92fc93bfd93d8172d45a19da023100f4fffb2f57b55e6b3f76a5ed16937c6100bc7caacbacdf306dd2e92c9198011c4a642a016a5533ca1da16deb66b667160302047c435bb50066306402302bd30ba9b31afb398b65a444b17a5337f7bb4b8d5f6bbdb487a50612aae419a6eee2730244cba5addcec3b142108d7ff023048ae45714d24ea331c295ea2b9597dfee392b1d200b483e1d6d2e2cf347c6547b85425f09882aa9a2ed35ea82eaa18ab0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304eede259f09c565c59be25db033887845bc88fd7aec07ea6cec90844da54efbfe2226c0a14424688c41d6de98a62227f023100937ece7808a2dccf9f144b110c62edeb03ecdaaba98c13db3d99d6bee849bd44981ac99491675bcaf4bc3fb4244775780302047c435bb50068306602310098ba97a567880ba182dee77005a9d55383f94cc1e47f4a1c54444db5589f3f27fa760298afd2e4bd0c61ca1c5da0b70a023100dff424fb194454c84eaf726c7a8568d08e141de3aea0c5834276778a1e82d26dd510ff5f72ddb9b0624746b13ce4029e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008923c34fba9ce22611de6cee96534f89b33b36335766109e3d038507ebc5cdcaa2c1683e234370f5f39f13d45cc7a9d1023100fe868c8e81095d8b3b0496154c47e96c1754a09bd393e82f53599ce158d2c55311e29cc31b1327aa3456987b5318f2900302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023045e27fd1df4d0bcc1dd43e056065cda8cf011bdee8f66d72f5790e341813488fb415e6b34f8d16061e0e4026857a10c9023100b5e8edb74da3ee31aa22db91ca4ca82c148107fdf9252b3283fec5b5ce122b725d349b212563d590442947a29ef5eb010302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304ff577f1e7532db9d63161dfd7d8c98c002df31040b780009a64ecec1c317c815e12277eeeb95e3acf2222fa3e782bcc0230191f96ec5e9684f2c68b7026e4ed9248935024180d222cb95831d81409edac00fd8cf8eb3729c5c20aed655ca79aea310302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303e7b89163e7516030d033d1c06cef75a30a51c78f049bf6595b79b5012698ecb5f953da466a6c43c5a395d865fdf8215023100b9aecd2017c5f459d87326fee605e2919dbe13c76e8934aa1b947918b6b0303e950ec58568b3acb4b1d491d3452d39c10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306d031312bb1c3472bc2297a6d1edadd2a157def0ad03b5e9aceff970048c28183b992f3c910c734d46f00750f7247dbb023100fd1cac4e7705786ec14ca61a805a86214faf054faf3bae6386808670e23c6f31ff55d71a7d449a16ec96d9fb946d183e0302047c435bb500683066023100dbedc26f7126bb0c54f7d9270b4a0f47ea18471da91f82a9ff52ad174afefbc07039178d43edfe8a5c4305585e592bc5023100c6347f08d7970748b6d9dee9d15c2344b6448dc22b4f53c1044c3ab931cc7bc51e4b46be1d1692ccddb220c0f092be1b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307e93b1b411ed4d5684ba84a7970b1473afc9ce46cb8dc738fba62ec7a4bea89231eecbb257812445597299b4e07230e8023100db6d27a91599c70487306105ba11bce89d1d4abdaf18d342afd82f2b007a2398c436ef8d8ca3bbd8e085110a63888a590302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307d2f0cf75d0eb2fd7920f2c1707624625e903302e22de773132c50ebcc22dba9fd9efdcb490f6201f056bd6cad08968a023078a634d7ddc7c958b64861e037ab4f6acc98a55a5874c4122788a746fa4ad9c5013d78bd22eb792b14f553ce025c8b010302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100867da80ce730eadb2dd954be4ce05683a951baf9320fd0cf56d6650be0a4bc7a95fbfe357445afc60d3d13a48682bb7702304932d0b92bf2c090d8c9e0905e372a5e303fdf6857761fba35b585c698fed4fd5df148b195a2d9334fbebbaf0e9dd8330302047c435bb5006730650230745fa7bf3a2700aea0bbae35dba85e72ef7eb7afab4a8a54622b4a0e2551276f960932c1bc193142f3442fdb97ad24c6023100fe6a6b1faa10b4cf8118aacfc2cc3b0e68d75750e7ff841edd71ac4e9168b311e436d5c1ab3eeb510649c6478b414dc80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b73099ab9095881426c980dd000e18a4e2b0cb578f3cef8ac7479997021d28e622c6a9dd64691b070ad09a78bdd7558b02301185f81591ed11266e2179628d094f4be5660ff585d32108939e34106c7905e85982325fc5c73d0e9ebd28e5af39a7410302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009ab73a4f1cdb1666d0509e287f23b39ddfbc26f9fd3a352ef836176f6299347f0e125b5f1f567421c7915c7cb67b236a023100c75fc1061e81a24c0317ff3de12e6f5c1e70fc0eb4ee709f4fe7a94c6077643a5cb7e0b5ec0cea0e8a16f0e6f257dc330302047c435bb500683066023100a7e339a059be51fef680230ea8a593938a250b7dc3ba284ade3b964a2c4a9ec45a2db49e6074a405cec3e047477cea9c023100d40d873acaa1cdfd8384ef602242b61cf9954d3fbb4e783439717c3547215726027636890309bf5163a54cc676db6cfc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307a3b05d3e35870d06843e2bd85a4ecf5a69111afcd840e93dd81318513a638dd6c81084a78da1e9b6ada3ded5c58423402310096045d08a5fadff03ee86951a2ca2c8a5a2018360967518bb790ad461682f18f8239139d9b5ded91b798a49aa7ab383c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ed7f8f50b355718c6a7350c4980d199dc752d777a5d1dcf1ecabd812e2112f542163b8000a27699e63c669ce70579510023100d4013a666377f4ff14f992429895f7581c4a808b2314871aa83c31dc2d91cbde3c6d170203f1f5044bbef932adc8edbd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307a3b05d3e35870d06843e2bd85a4ecf5a69111afcd840e93dd81318513a638dd6c81084a78da1e9b6ada3ded5c58423402310096045d08a5fadff03ee86951a2ca2c8a5a2018360967518bb790ad461682f18f8239139d9b5ded91b798a49aa7ab383c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310089253c944daf259d21f910dbe0849bdaf46da2657c0a2e695202d903808f8279d61c32758237c2916e2973f4f841af310230524e55b48c2c06eda4c8a64bf8e24a3a270bafc25169c99a8317b29d7521676e3cdb74844da3b433093458c64a055f040302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301a1ccf1ae44f1d91b77d3612a81c59c2e06f6ad47c4b544c991f947b9f412bb12bcdc531a88cec29d2fae649c00c985b02305f331b1baff1cd693469c56b93ed0d96630c6941980067f3ac760f0c1787a96fcbbd78d17b7f9f53dc2fd418cceca3fd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302c2b928f80f3813dd09466572ed8ea3f4876dfbad0d69f5c2bf517914dc5b7a141d02394533428b078055db4cf6c4651023100f443aeb11919582d91be205e7e43610956a867a9b107aa2a7b3e0c971679b6ed683de2f54c8ed25295e7227c1cb92b240302047c435bb500683066023100cecb2b0e75c4242ee30f2a6a24e31665cb56038d7c844ec98085e7b6c384751616a85ae357464326939d7de252625b7b023100be4042d5c1ef7d31507f89b476dd5b785703ef7a6cf26cc1b5128ee989586eff9e9d8a688bcb88bf288fe6dfd29346c70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310096a7a14a95605bff186751f07cbcde09af514793fe432dd65eefa79a649b9f2efdb4f195fcd946958d40688df210ef4702310097e519eae299814938e88be46780e9b52e7c556ea16b4f2041d62699ac6a5211e868b68f6088b85539bacd19785a3c850302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301645b76a92e90ce8cfa6635edcc0f011bdbb32ec05fca47e752a2ba7b0b7e90f4c290b22e1e39bcbed67970f5be51dd902304ac90303d311297fcc93530ffa5d3f8064cc1bf56b57ad1dc5acf4b7ad34ce88b1a74381b2f98b3fd5da37b531032f4d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023029528bae8ab2d96c5cd19a63fe04e13008f588cd7e1b4280c9066b88917eac9f658c6bcf11a941a901e41e600a96488a02310098e076d3d3bfa4c380864f8bb1e3f4f5ac609a0672f5f80b081f805766a87ff297f3b2dbc8764a7e266653a4d716eaee0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023029528bae8ab2d96c5cd19a63fe04e13008f588cd7e1b4280c9066b88917eac9f658c6bcf11a941a901e41e600a96488a02310098e076d3d3bfa4c380864f8bb1e3f4f5ac609a0672f5f80b081f805766a87ff297f3b2dbc8764a7e266653a4d716eaee0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230575170f1ecf566c238c7eff9590d198dfeb34419d335275ab3573b2c3622339ac5d5c77f3505291cfeda9cad10fdac7f023100b91b9a6962282eb5c721c7e3af8f0296ee24e428b67b8776934872065c83d4360f646199e24c4434646248c2a7a7f8c60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100baba47d4493220bad52273fbba760a6ffa4155e561f533cc511a293111869954381fc16e8dc6a954588ba60172f4fed3023100db17bb27db49a6fadc0d9dd68c462fa88f03e52b8046494e52115fa24915750fa61420a17054b4afca54a1cc8102a6340302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e8356de3b92c53937f6e79654f8ca6e79ccb31f90c1c339b34ad55b0713554e18372dd74191b09392f3eae0fa2aa1f1f023100e825fd608d97367d6b05ad332ff0ba8d7d65ae65e4d5dd4179c79513ecb4b9b0762274a260adbbe48c8f5f4b01dd6ddf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230267e43d3f83c1df756f3679a5f4a43491d19111ccf47a41cea6a4c6635ec46a6397328006a2a397dfe7f0fd8fa89c513023015d74d85859e208d9a7679df395e3711335b1502bfcf9cf5d3a65695f37459fb2919d2f9cb22a39c5bfe6658430a693e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009b960174c02d99c0b871b0643d87269cd47688a7ee23ef68592b7e4bcd9d65f1078c78a6bdd03c32b59e4207b01cd807023100e814b4e2798b849e8a3e417ee47c071805bd78748a06f4d8b9b1b4fb6e7aee5bf3ff79c8ab344881dd04f416820c4d460302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009629a9954e4e188b9da436aa837516a7099896fc2b013efd74472915bd9b618c89cec9bc4488929286038d2d7d678988023100b7e41491f588d090722f471794e65d701403c7060cfefc1a46f881e23bb68dbf86b3066f61f571398aad5d788309393f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ee9f5eb71d0b308cc3cab327b4dcc4d0448d7b68d1c55320bfff379b944c789243368650d9f577bcf5a5b21b938d47cd02304d1bdd476385ac618b055ab794745a7126a80905255e85d30eea4bc487cefa78065a52f789fc81a0dce403e713c84f750302047c435bb50067306502307167770481f48231cbaef8fdf2f89a1d14681ce71bd36fad9f8a66c9ec47e5326a86604a5172c762311b27ec3e58ca82023100a87aa10c75a039f50132f4545997f4e0feb95f2caed7c77eb0ff9bb1444e259f2a64beb9a9a995acaffabbd7cd5044120302047c435bb50066306402303803c1cce4db89fc6a355ece0b7493eeab050f91f299f209274829883503a7677fa26ab71df883ba112d421a31d6a8ba02306243712b56e39cd462f8f26d7408385ad632b78f4b54388b7704372a3c1fd168f0f65d9dc2fd15557ad0115ab639afe40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e035ba5f55634e75376e8c91885f7c19647fac345c46ab4a304976ec03f3e8dc963446522edd4b9cb87633336fe29069023100cf06fef23139f80b0502b8e39ac225eb0d3053ea134107190ef96b356b7abd86f2f9ecc668418c0b0ab254bc5164c1a30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306bec168c1114f137ccca631fd41d5f813e63ee4131ee947f85ea7bcd0267d5603799fc94a4ec39ebd548d7145e4d4fba023100e5b51ac9ec92724b92bb088b1a1f55b0169f44d39c4b2dee5f6f7a400b1b35fa2282ff69abcc444c0efff6d5eaebe0f60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d582ec8903117498f8857ccf75192324d2909bb0a261614e6118d7ad8aa5be9a239c046ba3b1f39f733520ff8703b5390230227004a7ba664bcd695b44b0305968b86d7963c0967f4e6390206d9d4be8d89428e16c193e4d2d6716e57e580c1ae7d50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d861e249513d3cc3263558a7bd96ce7052149f769f93e21999e94ba2fafd12a328f20e0abcdd5a2ca06f3185f0514b82023012745f0324c9abc4733e9e6fa9bb6c4c850f56aa9aa8e0c13d7afa6812b639ad34cab0c8db3a918a168c3a9f4ae4a4150302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305ac9848b33598442e666f6e35b76648058eed0348ea28aa4575ee07e38aeab0c09c9de71d0ddfa1bab57e3fdbf00835e02303eaa1aa07348b1b99b2cf46118c34df7b64cc5e19aa4915b13e39ae2f24f30b697a8df1eeae83e8bc9975885f371468d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ce353bba34ad8cdf3ebb1baa44bbd42cc9453939640a4b60845d833ab62a2c3ad7cc34755f9565da1fb70075b74fe3400230289fb9ca70a7b308ab819ae2ee511efe02e2da30cbadacff07e07af2b7082e03adea7fe62a7d71853d8f4bd2ea10d7240302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307b525980cd47b89ff4cea3f0ca244d4f30dc92b756cc9277e82a1a21b518647bcac2a69d60c7e578fe39598f03841d1b023100d7800344214ffe78b2bed96331a7ca5086016517af752818d7437171f4fe7bc049d6b65b81753871d74776226a4621060302047c435bb5006830660231009b9630de2155bf124e9e07e5ff6194bdbd2196c2d7a6ee68622f1ac2c96da7dba3246b260595b1c04b0ebe4ea31e5aa6023100e8899c4f00db8df686478782e3591c38acdfb9fb1e64af6eb239fa6102b886a5bdd291fd3f7eaf82eb0999f0042c08f00302047c435bb50065306302305af21c613c8454ee0372175b902fc4d183570cabc36c43908a0e80623a89799c3315433df244c7bd29a0f4f1519c1150022f0c3e03275a2a01c3d3669f66523cdd6df8cf5e0e27d02c611754f919b95e6e83c966db38b28b06537ea60bed278eac0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303380694bf91be589fce2aa5e8246ff933f078592ffac8f09737d577d1593a10d1aed7261e3d6a395f6dc02553482670e023100c1299d4d06e23642a83c33240183d7e254bb59acd5e799122c9364874ea59e5515a953bc1668e2f526cbaf87e1239bbb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023003670d898ff2f0956c7505484e7f1ecea090752a89b2ffce7941b8d7f48d40ad93be254b3b68d9009f222a9ed9b0e0d4023100874aadd4e1fe3a245dcd9d260278c89c8950e1563233e3f1d99ae06d759cefc541a25992a64a6fec373542a24e8f243c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a2a112037e8f2d1422389c87649261a45942d0eb27ca58df33684aec1dd3d57f1c87237b8eeadd8d4fb69859425e9e780231008180b1268cf750efbed9c7d486773786d6e42127670700267ed08f6245f1b820beefa15779dcd029bf7985096a40f9140302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b07ee8856cc2230dae151fe3f237f0df3d20da53fb1e02bb6ee4092f4c584124d87c5d348a03da9e30c0795961fa514d023100a7551fc71f2a6bbe11f2d0efd5fcaa09d038d0ae93bee1f90dbc8b76762564fcd34ddfa4982ee35b2f6524665caec50c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e6890208a5878a28e4b6fdee46b6c8543692fb42af992d95d305e6b98bfe99e4f32dfb37c55503b10dbbda3a70f54c7b02305dbaf4931b1c218cb686ef0d28d1fed276a6463c62c4cba8c71d18efaa8f9e8d0c8c91c72b0dd04b32439f2a41a351890302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100966aafcca3030fdf9caf6ad9e471bee641f2c20c0d060aa73e160d9bfd1590f57f0214727c6fac62bedb4255001cb0d4023100f2f5763042a4238632785d90b5e72f467e416ee497c0a052c0a6278ae755ce82d11b62eda7bff7662c1309b995022d410302047c435bb5006630640230039918a3dec6e1f272b10a4a8595e5fd1664808dd797a0eeaf5ae1255ad0250f91381e44ea2754a21147ab196e680ff0023027c19c15d705cf980fb834790aa947f106014ba4efac86c5defb0936197353f8994fb55071622ca6f73d5b6441a249740302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303675c71181556ddaeb999e4fb432df65c21b92b92bad700243d6ad56e3afd067329a5bb1babd69d144d00e0397ddbaa802303f32ee5f507b1578fd0319bd893aa4a088d69edbb036c7b81e1aa371310774376f5d36202654989be5fb930687cd54c50302047c435bb50066306402307d9c3a9e450f610f53186060449380dd0a7ef80c5871898f772307b0d4615f4d6295e0ef01b68b7c85d53b08df7b334a02303da83bc1936834abaf892c688ab1015a4fc5fc2b5597ba0952042e9a27ffe4807b11c9ff95f52e436eb73f2afab2405c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304f126b946519f85a139d60de5975b17892f734b480885367fe097c2b34a28f90e9e6def02f9f5c0ef781fc130a4ae944023100c6335f1d1f7814b15a9be5d33b79629166af214d5a877ddf753cb7d86cbccb07c0922592547e7ac4230fdbbfef5932b70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f93adca4041f19d11411cdb092793c185ef88d79864b67c7ca2bf6030feebb4fa689287669686eb0aa7ff8c6f71ae3d602305010a5960d1bd64e0c81f2b5418d9a0fabeff4cdb91a28daa125a1219cd1134a85b50cd2df48a0742f5cc7c0e87591b20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b7aa57a17a192402b0f18d0fe2bef252fff8acad4ddcf46f82814bd5f904b34d13d28fab517009d48de540d2222add1702305a9278ddb41e7079f31aee8fc267744cc065e825705c90189f3d37fcd0861ac654d336d4c7d385570eea8df0586bc6370302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023079fbf2b7026b0e2efa4b0774cb772ae05b6ffbd7641b1dcc8ffaee9ea88ec1a4826bcdcebac03195b0c1cd720c79687c023071a3e57b556a96df610473b418d734cf4275eee342b21ddc8fa1f7a52ab5c0b0a62b83113d84afb4c798abfdacfb4c8e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023016d5d9d554025e139555733d3eb832a01b271f4a85b8cacab7fdb3ea62813456aa20f1c382ca7ca0b0c44286e866ff3d023100845d107541777e116ec18ef08c4bdd7bfe07cb7cb1018ce21cb8954417d9d773406442f58c17200352e8849e1d9d6d3b0302047c435bb5006730650230084e529020e5b960adb830f05a001d5fbdad95e4c83560450d555c72d0625ce661cc0f133dcc61b0e6cc3832fa7cb0d7023100bde5e095659a412ab6d26f21260189615df1013ba0c31584f88e98a064c8d5dc06bb6e6446c5a0137fc6368ebe54900f0302047c435bb500683066023100d2c5cc790a46e73ce59ddfdf7d273027d0990afae9979b89960472d697102d596e9a3a4435ddbe58a9c7a20b5e6d814f023100a8e38d60fc46033e5e98586cbe1d406a1a3509adee81bcde7b9fbaafd8396d6b502ac4f491a8d34886fe691c2d9c4b5e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304ca25db8f5aef0ef6b19b5966b85a43196bdbf5adcdf6668c8d5cbbc22f4f488d125b51dff25eebc7a672ecd7ca55b7c02303ab3ea5b510c5fab31a33e403652bb41042241d11ac65efe3aa523a5372f35fd600446cbf17ce47766ccee582eefe6340302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b7a13d4bbe51482650eaa8bb1116fb8655f34277c5b8756fb64e609f3f2cb01a53e3093511943768088f54ff27fcbc3302306f5c8d35c2cb56e338deed5fd715f3cefdd5c1269ed31bd406de5e7391df24d76bb46996ccc96d119677452a478b61a00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ad10b912a97df8eddb522f847e3d59d2ef9d813d9cbe6511b29f927e938059ee3c74e8cce2315020d8bdb9411061335e023100dd08aca7d5bece5cd60038a32459ac1004d2c1733a4c90cc09a90bed7d718390a6ea22a5f81572c375633837fe4453930302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301b3772d811612d06eb7df27160611b7dec4715d758c93fe06829a681792bf89146ad0bbb2f4703e4acd5b9fdef774922023057ad4b93fafc309ada3287e550936ad32a4c6cfbd57b72430fe0dbf4937563a4a9f02c129a9780b6d78d3e9a185206950302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100df94bcfc73ba1494b863001acc33d7b6920a922074a0b8e9f927d21525138aa768030376e2f0de405235c5e5da34e2a10230629a8dcaf436e70377852df9f4664e843fca7c344112cacf73873631642fa44163668dbc68faf69b5d007e0dc180206f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303acb461ed90a12714c5ab3a56132044008c7ff3f8f939bf48ba006d9582739b1d653d691b41035d1b6bf02917e90b312023100948c8c542047197d5fdaf905a44b9f7b3a8a71097f99dd23f0f2c260c4195e88fbbf7eea7c7bbdfeb0c0d8fe85c42ca30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306f5a2b18373415c14b53e2578be0812fb654035e6e8f6b3d4a2103f8f55d51c2e1a585f6c4dcb0499fd523e1d6d7472e0231008a5a31aab0ae19124f5e81c4cba549af87a684b37684e7ced64726de11466f3afb87e86908ade7c329381368cf010b000302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310098407e2c83bee112e2e146cf93d4dc3a5f2e87610c541cebd2d52ba8649795b6de82dc3848b5fbe8ac4ebe8e5b855958023100b64dd016015ea4563b0ce9e5d8886c6dd79fbe9a11d2bfc8e57b77a06cbed5e32fd300cf26b2b7052ecf36f35bd5126c0302047c435bb50067306502305172906c5e2a6f2a0a8cabc5d8b3fa804d65a806445a3327fb7dbf4857c8fc505f555845dc4afcba5abe959dc99d3a43023100b8df437eee8ca7899d4a4f3195ce3ea243b801fa1730060472f084bff8b4f134e1bc48dad2233835e49e14ec6400c43e0302047c435bb50066306402302b1484f1cb57a88ef1483b70826993f918781af2e1c1dc319b1cc8d70317fdf56018852167ff5dcf1b7265c47613582b023053f641ccbe0adbc237a682c928412602d895999ecdb721789f52e485daf5b0e5145a94e50096737ceccf43c77791d7070302047c435bb500673065023100de774a51cff86acbd1c0f097641da3932fc09a8dad32cc5f3008175aa640d0916779163c2c5bab40cc54a82969381349023032653d02d12ed1108a546dae6d08999fe5cba965f90894894fbf31ba0630828580e27605cddc028d7f6cbb7bf8c9e9200302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023027900558573c703c6d6fb14b3fd09bcd564928970a1a6033cf2f962d73f24ac35afd9003c3c534b50670a7e46a6954cd02302f5d5df6743c7f64ee82faa7ffdf4255e94ede6571a62375b56238bfe569ff7eab61ffcc8e359a37cdacbb06135fc10c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100bdf65210ad0f09574d98a09521d7f000973d861c1477b6fa7328051b7034ae61ab785bd1cdc5c002259cd67ffbf44034023100f63507f8761970410edc67e2a496f042e3d1fd9e3cc4374d3eafb75356757e175430cc32d947908cc4d1fe554ed19e660302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301f2898d9829e440cda1b2f349db0d3c39b39935c5882d6bb6b1262564b8a5104b3ae27a8fd2063990cbce669aa67f7b70230526d1ff94c83675ffb4bb331526bfaf937835a676bbde43755d68b9d63e9653ecaf05eb6f042f8fb0772456184e753710302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b023c3efd9e26a99e12321ab48ea5ea66f487bc88d4a982bb780846db320eb3622c44ecb42dd68e905fb9fcbeb586f2b023100a8f51b503461f46be8cfe4439455e9a5d1bd47191bfe5964c8615abb374d005792d2b8e535da1093a96e9b44255b78fe0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301013be2c75c3de31521c4131c7f47be2b87f6bf27b3b5a41d7d205d20f9d565dff78c13f9d43cbe3621201f3d9b75079023100c74f53a2655b61074f15ee342023c488e3bb870a9bb59ad40febf9b530a895851d75c5e68b6efb23eab672c12ffd6f180302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402300f33dad6a82e5df76e13e048d5c363b08f8dd0b944c78267a13e7dd9eb97f1d1c30449662b7f016241fdcbbf3df1bb5302305dc60e2c554e7efe5a33ca06ebda5707447eefcc8156e4f1eafd99feaaf9ebe28c2f6a0335d9e484a6e12b5a49cb16f40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100db30755b27b01eec279ade66b6e896f0c0e85b7493f10f1748420f8a38fd0a88c453581c571de6f4ac944b3b689acbe7023100ee984e6a90a29168c853a74303dc3c6a2a1d20559ed8b207f431e9e9cf675de8110912a5c02b870d3bb8719d209f4f580302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230024eeb3c8872aa5e2ae9055024b2320c3a880c4c333a0890c760aaf80f58a17656e3bb5398d3cb40e70b69355875ba87023100ac22e6d83dbc812a496f683addf2442d996322c64862f58fc5a4daead5d38bf90718d3cd619c9e41a387fecb09d675bf0302047c435bb50067306502306bb6a9b587f687cfec9a8fb308f95321480d4ca80d85109f916006d51163c3c51c9a9f14e107cdc7933cd4b214d5e94002310082a5e963443b395549570eb13fb77a621373337769901c12dab1ce4df895a9bab531c343685baed50042be7b7bc6893f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302241171cb183f62975fb909fdebe85a83e02ada4846598bce2744fdc35b280d75e6e98eb976dc65f118b776bf783819202302f1c0b17eafc2f77f9092e40827e7ea170111b0012d922adae19bee3501edfce01f02125364a757681dae706e028e4210302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023062a0fce7c2cc73f336ddb99371b8bc7c16e96fca38e74a76c61e60b0ed70f355d7eb5d9f0910f4c62479ea3613d61345023100d1ac7b4aea9e568994b34df0215334f83489c3eae16122fc45d4fe1b10dadfc69f1bafc3fd43862cd1f6b88cb5c16d5c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304cd0ba48f53101e630f6586c3b35033c33037fc2605f3f86c90ecdeccb96b97d3c158cb01f3f88752c963acf3adf8f6a023100ffbdafcfa371b38875f0824354286c64735b9f8026b5df14ee513404af0d80b6b0e168271265b83b8d093ed2723126a40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310083602ec63c24451dee03310b0edb0d4d4ac49208434531f1ed420319d91468845ecdd437502d439a576827ff54b57991023100f89f7e7b4c08c97a9e408d78d9062d67137f3c80f5b652556f9be7626dedeb780c26dbd01ad82895d7bd9aa64050ae1f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e044ff7378642105e641835cca30df4d1d0bc82c58b9f31c5159fedf3354f9e2d48f12b95a8dc770c1bd1dade0f909bd023033def94131e66b658a3145e57dcc11981b2542007bf05d0c1e603821ac9f0924475a298e961c2f3e20f6d9802c1935800302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230528f54b591bb970fe79644ea0b5231c6360974f7401ef646c8c19e4bb7d48c991db8c889c4891a6ceff1602cdacd78ca023100dc8d64361839f9650788eda778c6039d7e6fb80de086de401dc408decb56ea68d427b4d6b7094b0a6c780bda60dc6d1e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303d2a66cddda8e9f306d664c5f19b03c51da1dfe1e20b3a41ccc667f0bd5f756a684118f00e89a065778b7ae6792324c3023100f437557bf67c041c8405edf8657127358f44e181b43eb700cf0a0365d0fade927567f89e56a2fb8713dac2e298190ec40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305006dd62aa336612d55e494645f82020c6a373dd12548f95a0ef5da8c78a55501ad69849f1937d114e5bed701f34ae63023100d6db42663019425f579c0ae632d22feb8c81c0160238d5437a4c6d56ac8d7f9198a5f8230c7b9484ecfdee8e701d3a070302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d24712d3a03118ea25aeaf6990851abb6d1972d2946885d7ab0c9c61eeae1a86f2c5a869c35eb846634f6cf56bb32a9202303ebf40d7a3e3066d3193f5e72dafaa2baf600a539d395158e583d08273a25ac55796f2b2be41cb5e481557078fdb09880302047c435bb50066306402300dfd5a7ad061c95551e6b3aba57ab1193b35199d28a53b4cb9bc334c9f4c76ff304a029efa08fcbc87b93c4aeba1894002305659da24cd7d24995005fb4436b6f7ff343081a61d4239679614e4d2d12d5d1c351e627cff48c8ebf097acab2fe6ffc00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100984d4f548bbb2ead27f757cb804340f242cbe28d0edf0de88c0b95ebc4c2619420401e2279e8ee3a11dd04003fe8481b0231008f22ada9247e06aaae76a8cbf45148d0e077ff6d15425b336d2dd30704550df9b27750b05b771d95e8be73c7d09ce6820302047c435bb500673065023100a4903d9fc369e2dd7d1480e504de6d7238f45e55ad6c169ca1d57352f7cfdc605d119c4088762412b347c135805d20ae023016eb21ed057343d7fbbc10862c2ced351895dc259eab9eb7f7dfda0a8bb3f5b12d0d8480b6986773059c9c44bddf76bc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009a4f82eec2d38c1f70fd2d4efbffda03b6ca88e12227f38111fe43024c96fec492753f810b1e31d6e7d24c3f30315e3302304949c77b873eb90e5f8f241aa32986f9fcb8bd2cde345a9876e65c49067a381437011edf61a5d467771e4db2a8a263fb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230591ff29e8e55cfb3a858df94c389d34c48ef0b58dea41b74d9f4b839d13b673bd6cd99c8832389396ffe1c0d9d119169023100c129d3e098e5a8787393fe9ddf63f72ddb798c0f8acc8e87c2113e78025066852a1149a9a322c077df8d2d4eba7788530302047c435bb500683066023100c2e92e505ac68fb8120cc2772dc1f6cc2bc013cdff9a06cbba3963131bcd2636fcc7f4c5cbc87ebfdc3ece8122d0f49b023100ebfc378977e4f42c8d39108f8683a409f473e147965eedea62a47a50f417bd4e95997891282fdc1ad34fb260aa158ede0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f306e8c43b8bd0e8b5531d1c581867f23a666b161cdd423ee42e86ebe9fdab01cdc7e52661ffffb43334c818d96c0dcd023100db637e02dcb6afa51aa488227c8ec6b9f382e90865f15c6f7181863eaeb55ce11841aa34d79c08c852afb8f6216e71e30302047c435bb50066306402305560ed224a888575f8560d9bd207e24b9bd59dc901b05fd3f00994ec152969b1042989cd4bb1c94ee7f8e16391402559023042d97a4e56e25f4c7eb758f0ddfb97eb9f3ed5cb9e590d08b2b0af86eede8a422a9ecd3fc761f508c0780b66ce6e24bf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ef64484294d8423c24989977460865ae0f0879fbb270b161a2531ed9d849d0059cec4f9808a0999006d601a9eccd76dd023060cee0cbd83d878e76ffb2dd0e6fe06c96ed657c13af1c1b3d97d6a39983b84f6de5d1fd0985a012c93ef7f0dae2ceb00302047c435bb500673065023028feb7a96cefb17d0a664b3c614765677de9020e1d7141d7e10e01c278e633aebac3cf7fe0c950a947933010f137e92b023100a09559610e48b0ccecef863c2ae6b332513d402b89d18dc976df568a6f41f45111cd09765b9d35a880c990ab29946b2f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c6c9b416cbf3f45c7fdef96bd5fb265a0ba63ad71515e6340047f22a1bf5a004ea024482193d074aba1d852bd1b5d23702301f13207d51c1ada01542da85673335da478872e324cda3396d8809f3df7362d2ca1a4661096de913770411aacbb8f35c0302047c435bb50068306602310088d25974af616a1663bea478d29e3ec6b5ff0ff2cf18adbf251d918a6444e1390e46a054a426e29f6e5ea313d40de520023100b3678c5e5d39c20878069c6fca3c6f9a54a61483ce0bd43c419148dbd960dd37056e7c16e233ddf415a1b7a56aad002c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402300ab23ceb9d22d0ab50662df1988fb28b9b235c057683c873c4bf8a1457a0aca3c66e6fe1eea6a1f32322bf1521cc9da90230744a3320feeb918ed9d63f94f37e26070729ecfb89757f8e480c7b7a0ebb77994498aa2dab2b844256a9c7e2aea3de6b0302047c435bb5006630640230499322886f4ccb1e7ba6c47de67a6ff3e296dcc91ab80bf09817c107fe1bf3c169e26c4a40736740815bee041a57f5b8023007758c7200fb43bee6790f25682d2801bb42f3b51b66ce3c657c4059d8c0c316043b96ca38d14b3dd9e2707bc72a73dc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402300e04143f25b7647745a35409e7a2785b18ce033395af0434833f422850083a1fa25af15d996f68b7e4d677d65db6032002305cb23cd738d704a4ec81072cde97e5ca06f954f9edc376531da0554e1ce415140921e1cefbd228559e7e151f6494d89b0302047c435bb500673065023038aba6c638c5e1102adf0b40c2ad57e18f2657f545358993bbcffa1d94c526ce1481ff08f656c31f5c8c35cf0ce6aa03023100cb92ed8212279d7d5a2e24fcb1466124b07a80f9d0c5a0995850bfc5868fec1f4e535e4e214d4b3333ee9c89ad1d40830302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304b681a7e2f3b62d6d6eabb371cf734334448564d779fce290a16ff51c0383d22d700e7fef791eb0633a47ff0b7288375023100dc72c563738163dfd37527c133c333709a17106705531deb6ff172600e54a7c5773ddc9c6c5c410e3582a45a351fd7560302047c435bb500683066023100b800be56b63559eb936c9111117a87737898f64db77337f6d20e505e0d9a49f7ccec889bbc35435c7ac950d166e4b11c023100f4293ab62308c32d56cc0498c5746070e5e504e9c7de432396cbf097bf83bf0a89baca6810045774165fccff13b82b330302047c435bb500673065023100b02228a94b89ac07ac999d552735d4c5c63a086c79f34595f2be34b57bcb7a03f955703a928d80bd5ef4e07404e694e002300c3458d0d52f958e0b374be28683481005c2012c38d8726da8f31e435820c8da7435af5e84322d54d765744b7b0ee1dc0302047c435bb500683066023100879dafff37cd363be206767c0b6b78b7d7183d4d228b6fc7e0672deaad338ad22a4bf878b4613da86b3a6b072967e337023100eabb9611ff0f3de50b2707c3969960edad4a7ef2e4b592a59271cb6ed07af9cb423b980401f9d52974c9ec77ff66ae930302047c435bb500673065023100b9b814a80ba4d08e4c44164cb10661b5fb0b2a31633b734b275a0d54fd966ff7c55c8dca31eae851a9647945a4ca381c02306b02e8d4a4a460acbccd6c8fd4e2dbd5737834fe4e13ccc2725a73c8cb85747eed21290c93680eb50cbdd9f981c5791f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f60a9fc887e2eeab9165b436b789f7042231e581df901d19b0ed3abb3733c5943302c4e0a353d8a7db0c51b1173f66b7023051830cbfac5fb5a619ea07f1142dba2d37f56f1d3570011ed3fd38b098079aa7c3e50648abfcf3238229ad87231d9c2c0302047c435bb500673065023003810fa51418897d7c3c1c8ae3519be8e9b91099d16907a6e72fe618e5169068e621665dba0269883ce2ed6c82c65fdf023100e3fcee645fd382a1765b19ed10c67e29ddab654a544f39ebbc1599ccb50fda3236e13a806d714a2b6a0999f547db51680302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ba9fcf6cfcca99a3da7b382144fb113a3727e5feb7bb96b49d22994c2e87ed4a039f3e2c82eb6e6c081b30c7fd5ecbeb023100e30a8c3c62c522da51b69f2f06604a7ccfcff7bb0146a4f48fd749f80a161f308375be777df9937e62f2e4198425959f0302047c435bb50067306502303517025d699cc1f52d0d447672353ca0c617569424a969556fddc4299c72e67743631bd5cca7dc594ea08e2ab067719c02310095037e975c1a7b3c8d49ee3636332960ecb82c79b99fcd1d857d54fcfe644c47b4be96ccc878accfde897646c14e31050302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008bfdd1564a4632620bfecc4a256312858492661284505383d853c0e221375893e1c471ef483860a870d17c12a8c6f09c023100cb79f152bc3fbaba4b7f19c20652fa25277fc71c75e26807db7a60593d0b9253a038f6481d77c726309195272da94de30302047c435bb50066306402300342cfd60b57ec28daae8dcef9913d0096c9333990ec418b4d603e2f42d45f68cd0fbd9e77f91d028e7e5cfde0dd8578023026e74424c73d393bb6ae3bf3ba0c96b295557f569497bd615a32d39abbce4ef238924d08843fe92a2d706b3d0b9a214a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230048dc4311f38acf205c66a98a282a29313324c8e760b515ffdda1a17433be714f183b61ffef4ea57c760cebb6ba3247e023100a2f1b983c26e83d45a3e3e76dbcf45d299142bb4ee6dc34ef0c029762f657cb3bb710a8d45690f6195c36000c4f9963f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023066eb272c57e1e58d72721c7b29c74a6225d18fee8283899fa6350bde09efec313ea99d030a83602feb484b3177001a08023100fd29671dd26786a9965374598b629d514efa33ef9d029ef5aa65e83e003f7ca050b5d2e86834b403e957ad6631b2f6da0302047c435bb500673065023100eb7412bf78c773321f0329320658bcea4b11eeab4a8fbe73629e887cc5f5161e8afcbfdf665a11ba471374d9cca291b8023002b39a6f1a6036a96ea37a064844ae19ef456ea826fc20efddf4f55484692f9252a93f8ccab1514ef9f951171fac3cb00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d31386fb022b8762337422c2b69ffa8b0fc2d88753ebc949ad9c48967636cc24284f8f860cfb48287d2dd381d9582de202304636368644fca1ce3705ab35b5034d1045b14909e1ba6e99327c280f06070443e2b8d20b1407c4c4af3e28d8fbe713bf0302047c435bb500673065023100883a4595cd91a8e56edd759a9c3beeade2db2a65fc901300b24b46390b5220033679782238f2718b394b47404a6bceea02301f937dfdd84785c3467b91d4b8c6f33ccffb09fc2b27aa9afc05edd45320a3be2b1867a792037a943e77c985d284e2a30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305307c14b0347114e31aec9a05dbfe4f4b9b845b57aefec64b7b3b8021ce7e5e53e4708b89072c197e5f1d32f4110158f0230395f068d443f5e9dba316fa59c200e120ebead2da3a332905d68c69869d46a53f669d8d7f5bfeffa023e86d32f15af070302047c435bb50066306402304ce78cdb2b7a65a2a22d3d0556a8a58c74cb3d2bddd50fae6bdff21db262997c5e629e70dbc04b3aea8cb91a84022353023032a3ab5350338c274ae5188ee1c89749847b69ffc361e476c4a1ce3b230d794bddbd8c8580742283962d153a1bc401fb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e27b33cdc78f4220dd86ec4b1aa200c7d9c35aa0ce5c168b05732b468c1eeeb47fad58fe3b765c6c2c1e1bfdeaa99bf9023100bc27626ede6129637aba78c49920f448b05c29bf73fe9666d07342330b91aea1a5a89d0d9e6cb467f7d505871cf6dc750302047c435bb5006730650230640b175c4747120fbc379a33a9e263a3c8f7f797ad8a3c40934e2b10e737707a4f6a2229d6ad2ed61e71f633c5dab2f102310083660f0bc973a870fbf57f67cee35cd41d6fad03d7745a163f128e4e6b69d42e3952891a8da0898b034b506de6b79d5e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301a0233a36eb8b1415d9911f9e2ecfd78dfb780756aed580a8f9b9780d24e760dbe41dc1070958e60879f420f969d21d7023100e5f9f909e9f0f93607eb022bdf00e2ad85502ef23fbd99451467d4423d44218f164ab43d6f19079088e6ad3d40714f070302047c435bb50066306402303dbaa1877c8c83375d9d1917362728da8accea2a2ca620c728ce334728f3a4a5214f5d5be3a5a6bb7f39c4ae975d1dc102306eb77b20c002f6b5792ea44892f64f227f527bd1caa882054d85bfdffdea7f35fe2c92c77e1fbb99bf0e8eb80455d5380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100922b96ec0572a286e2b3051d744335867c7dac2358a0311b2d84e6d56acea11cfe68abf901646e8894bfd45a331de085023100ae84207d7c48137f0e237ef15a9ad6f05c36553276b72e7965397e7bac0954979867edf195d6a13d842727b65de764080302047c435bb50067306502307b311aed5589593d2531545e88c03ff1ec20a2e5ae8bdb31ec016172ff53b1b2110fc13a65526343cefbfd9dcd7a8741023100bb68fbe48ad9b1089eb70b552ef11813e7d1a15fc3737ef912846e2d56506ba00363273d9962b53a0d5f4756cc05b3470302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304babefef09d55bd9d59e976f8a8713ae7aa25dfb48e2750c0ac67bf1df42c76d497e757a0da68b8b6dca700b24f1a69e023100c68354f159d91b4ecd9dc4ec3fcd5875bd231fa6de8dc6bc0c1c056eaaba1e974598107955ed903f1ee6da06215ac77f0302047c435bb50066306402303cd823a39432d0952bf2f1fb340c54a90ae319b66772b07381314820782ad0277b22b5a1260ce5147438e995f8af7a3f023056caf8b80f58f6eb95e39fd034230fca83e2d89cf13a14d6fb98ef6961708529c97171e3d330d29abfad0ca6319d35400302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303043d8c4031fde6798dd7ab0397c10a016d859252377eed25bcaeeaff4ceec789fe453dd4e669d0e5e1fb00362fa4dea023100b4976593a3f77137ab94a2a6c42f171eb0849b1877b4d6c767a273e471ea6ccc9afafa4dbb8206f25f8ef034c88d86c20302047c435bb500683066023100c4b4eddaa38254cfca59f4b9e1608bb15fa395a176acbc1d5fc56e28c5f0e166c13ebc8cf7206db5213df844d1d6f95e0231009e45462e1713824cfade5f23426d365cdaf4378e133677b747d42d5c28cc3bdb8633c2d1f55314e9dc519cf895f023160302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305ba2db85f8c2620a4b8e5bb5c11c937e8934596994a5b0e2db88d80e7897d29dbdb56f721890662d7574f41a9055df840230020661edf3ad467da8ca69b833e2a90627ba5aa4c19a38bafbd6dae0b2224ce9a7333b2e6b31361cfa4df088da2bd3730302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e49cbd8410adfcb1b4eca1a753f15364dae9a51cea2376b5e78efdf1d0b3aed7b110e8357782cc2142d644c42b080f3a023100f24e7078be29b0f6e8943c0d3c8b0132ddd694502baf35c14e5c4aa5a210e29ab315c042852667b97190728307146c9f0302047c435bb50067306502307653b7a5af6ced6168cb78beb46982b8216fb06d354fe6958590350ee6de2442d6ee796eee316cb561cfb6f5e7a64a60023100b8f4fbbf103db991869dccacde19b60d75baf41dc845459b3bcb2260a3f6cdd60518b5748dfee59630cc2009ae0785fd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023044d8831819460057d8af218536694eac28f8f86060c14c79abc8c5863b47aed6ec7265118e77fd0ad044ded46f5914ae023100f58586d7d5613e9e1578da9d74a22012ea8497c37a366874d6f9af0b51505d6551efcec783e863cb5ac6090d93a5dffe0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303fcdb5d256562ef286f4e123339ebc6866b9880e2705c104c93a48c7fc8af9c965e983e8f2397279a09ce4cef3b5e5d9023026f50f2b06c6c2ab336547131e6f4e8a29774a48f4359dca81e30c78506417f15c0d56fe06e1c37c112b6f57ab0a9d450302047c435bb5006630640230664fd904e7ebba2b16022c779e1d6c5bf342c4492f85e4d41b0c14e91ca418ba5527e8aad867a39bd2b89f2525efd7070230606200867ed2e2759fc979a67a16ad1228ec278112f3fd88045f7ab5fa50f4063c6a277eca1ac75be31151127c7219cb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d5a3e59ac198f807dc2e4781584c535c0c4844524e3fc61a3741cfd2b4a192dff106169fc0a182cfa76ead2b98cb2045023054c4c28833df4fc1a808fe3d3d7a518c4f2054f50d3620829b26dabf0e7feec9f305e33c2835c5da352b0d8749817e270302047c435bb500683066023100ae7f00381001f5b3ec385c0a458e0320ba759a98c99dded5fafac8857fd3f1f2afc3d8047a7a0a29c47d1c5d1c9455cc023100fef1b40bf97ceae823f9b453057d56008d2da36cbbc20873d82db21327109e8b0761dad0f25d834e085cdf74234d03430302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305366d51996609a7f0ec153fa5577de192e6f21b8d57b64cee82926c7cf7bcca5891bb0249e8fc4f2252ec75b38f2aaeb023100b1faf213be698fd912d29d02c393e900b1fced7770815e9a951bcdf4adbd1447b3b7bc882b75c7ead532fa0461ff204c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306ecc571bb9f304adbeae5934b206781f5b4b8f05c4974b3993f2759158a7a78ab3b152546a220e903c38100220b4e9560231008061442a80f5d21686adce16c8b382cd27623bbfdef3cf78daad18ca021c4c49c3739003d660fa237071421a7e2653460302047c435bb50066306402302734ed7ac94d7fe6759c23bb6cd805708de4994a270d396bae27118601b8cbd5f0d303a6daebd896e786633ed96f4d65023036954e4ec7e75df46e41d52e1ac5ee3ea73fb552626ff747c2ac81255d3c0f9994a5c2ec209032bb2b674ad44d7fc7b40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c8888816c90d41f5f351c91a2882738e3a7cb58bdfdd25101e16ef4f769ec041a68f918525d68c5f9d8097243a53dff302301b409228a9ff43b4ee9f81b3e047279ada20426a49c38870fe5ef47c658b9d02c725ebbd9d7027b40b258d5907351a540302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023069af9e6f4d588b8632d6a160aff1f9220bbf746746a777b0d5040d3fcd24920c95a75d9d2285fa0fe3a87594a6b3cd65023100a8fb6ecb3cc4a9df67c2c7eb5cb6500beba099e23f6da23344d69905b070380280dd26d6b6b4820206820b54d352abfb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304fd6cde22a97c3e1d692d3875b8c61263c501ad08d4dbc702644f807edd443577e467502b83301cd0fd53a4200fe2b63023100f13b4c29adc97e6993d5d3ed0f90d08a2908a197805f5afb3f7ba37e8c85f3b2eab1e2170b7602eb43df6d483a42b31f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230500ce4cc6c211f6858babcadad8d27a531f328d812401c8ca941afdcf6af59b920c8ddd43458c683a76bf1144ec2490502303c9fa7b52688955f238aa9d217bbf6d9a16492a19ddf42c98243f03e95e89cbb4f1bec23f1804fbb6669cb1f7984c6480302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303c9329ef8991957f11f4b64b171eebc45618f74be48f8deee0d1581c6553fe656402dd53c6d515fef46bc9a1e5749dae023100a1b8799140ae59e82f29661c8fa905a018cddaebbecb1097cd578abbcd478bc5b95350540531360d732a5e2fa2f3af290302047c435bb5006830660231009be498d3ddde98d5fcfe9c11d1ba197857cfd494957f33f3ea9ae78474686bbc4d4be9a0be7aa5286b0d3e70cec2d693023100b41e6fb7352876b79cddc75bd9477cb18e760cfccc3f6a63ff5e1ffb040f3fa2854ecc5dbe493af229980e425f46d2000302047c435bb50067306502301ad80f605ab6b188aaf5377185fdbda81091aeb31e67a5687174a0b7464f2c7c41ad1285b958ac034a9ef81f186f7ca2023100e18aeea768e8241d5a8b86fdc2e211dde6f65ea9acdc07da2a80dc7eb0f9a88b96f0d63df3b0737c0c14193282f509bb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310080e0cc1cc086345c8ac002f18b4f2b3e6163c239bd320530d1bb06295d57e97d9bc7912eb2b1e44aba6df89359dbe0b0023100ce47548b25a27dbbc93566e5b2bd52289c35892943421f27bc27eabe6e4bea95ba2291f64a45d86ed708d1c8643880b90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f892f3bffc8f0154bdf9e2e78178208af6e6aff3a30cfed26a86adedc8407149b99ba27efe8aeaa264fdfc9e2253140a02307853dc6fd2026082ee4e564dcbf347da9e2f564de3b426e18f51d809bf0023f734870dd0f1d4447d7936660e532e577b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307c2fcc1e2ce2f181e123509c310951d42ebf2f1214a20f865f684e4bfb22563c6db5fdc8017079aaa229615b9cf969dc023100f70f87cec6b9ed06d3c252f07d00226be3078cbe9848518875a31e21f61e9f8cef9d6dc8a9cb9c61c4c66f8d1587eef00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ddc1f63986e5017c0b2f03af19c15bb8180d0d51714ef094669efafa63684eec0fd14a125da96b880a23d9676211e1c6023100c7c8fbe4cae0cf04e7a09011ee7fdea6420aba3e0e3cda6e17d18013a5978c10f40eefa938e12d807e5caa4622317d060302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306d47211253010d0e26a82855f2ff3c038f64157dbd5981058df118545224bc57243135a38d106bfb153a9d6da18266b6023027f22b23fe1a65df5bbc7614feca1e8633430cd23791c266a1649e032ef38d8cb183621db3f27f03773ca40fda7277110302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306407aac981534a91f63be2f9f4561ce8940b140bd99aa552ca0469b13810d2d90f4637fb76461ed3aa9e720fda90882e023028b37fa0c7c7822f3fa0fc01791c521e2c86b4c992e420c21cc9e2c4b2c84f330d7418e058908ee8fadae96f9a6195760302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100cf8053094467cb90893051ce47b922b3598fda12b2b92976eadcfbc95cccb897cc476d3c7d2d7699f92a9cee566bf99202305a959d5c717cb4fa1b969cb0ece8e0fb7ea073c1f15c6d833b3ffc5ac681e65501df144a504f32287f7629a0457242540302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d7154cbf9aca80bf4b73522b840df3a99dc46bfe538fc23e57701009ceff6661cff52b5f151b3fdd400365bf561ab882023050e7a236c268a777721e89b531adda66e70edd3f3395520c045eb3fa6162b24b65ab22e94c5f8eeaf4f2cbe2acf677d90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306721a8de53d3214e0709ac273c34c777a89b9639c1970a4ea6cf986e71a1cdb5b1fe1b1e5a113ec911fa0720105593ac02301e1cc3eca62eae3e7729845fb9a8a259ceff5f27efc7743d2311e8038e85ef83cd8ef1cc021670ca7773077231386f190302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310099c5e4b460734b8b15ed7196a707e8d22e5165b139f3e9449f91e3c3b596a510f1c33c879eaaad7ac416381877c7e9a1023100b1ff5d7a5f6da1599a57bcb586431095f1f47d8513cef5596a42606a557b0669bc24fd5a34fd6a0b4e7d80330964f8070302047c435bb50066306402307fcb7a599c3059c7867baf67e09edc7c54d9f0e0163a455e56b35898115579f11800ff03b5de508d9cdf7ebf15674b6f02302e0811b1c85a017e75efbc5c4e6df1a199d919d4a05ce804cef5b36faddb95e68acfa52aa05a64280794e7cf984ff17d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230322ab81ff7c21a8a4a87ca9f18eb4ee456a2f062d4f278fede4a26f7583264690302705a1ddb0ebd286a9941188b025c023100b789d1cb69ded4355b3f8b484dbee584e5a3b2441fc30a649d1c3e816d20a3c134710eba7303d6a356b532ad2c0424ae0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306f01f77e47ca04f47c08e0f7ec2e19f9773b43c5ccc5a17c2339c22934d8cf989a14eeed10273269ce504a7769d0a62002306745bc8d71d910a8da7dc2692e9c250f10367a3ed8b8dc28f1ea85cf2a4ce52cd445672afbd56f0a5947d9cf08b3dda00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302f52963a1225e0ae8bfdcfcc598a452137060bac07aece43d171d2d7256bd1a5303fed64510bed81eef6718ae434cde40231008ff70ae4a079c3153a49e25b3d76322968a11c03fe45f3dd30597c19d8fed6d4da297993e7ea9104a7ae868e50f6de790302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008f7f3be1f146402b80367a8f21f9cb5d5c7a7891aadb8e29ae9702f02faa6e986f9014d6cf1f07faa85c6cbfcf30f41b023100ba7a18719ea9be41033e4c8e07958943e6ad88496d84778e12657f84c95c8f9ffd739738dbff874e1dc8709d7ce13ac30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a8cb1c669a08071101c98e353d46942c8a11d4d3825314c99ff94e14ffbf56a05d891fa75dfdf5c47840457f7d18a3820231008440cee48e0c5a93468332e7fc1758db42573b12da23ff8df1d67009d0db823c9287aa90f962481d2b17de717305a3f40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301ac4b499b3d86cd98747e3b54384b2d2d3771da9cdc4d1692815845c43f787bf227a4beb0976627c5e0a04ecb7d41634023100e79b28835ad8890df6de59c56a063b63c4639f8538f42951ae92e82356ba7f76a1e5360c13aa8d1a418fc3cc01c6e7330302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100bb4206f7c951589f14ee42557d3a97e94535fac46bbc151fef8420206a3556b9431f32b86ebf91f6be0892fbee09b3fa023060ed453a4aa884a55a1bf5dc26c6cf1fafd86db52d73e9f55b76bca5eae7656f03b000e73e7b795745e26c23c31f57fe0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008735304f9f05c13d3ea99846c656bad4aee25fe8e27e1adfb5554eeaed1edd6327817285089f29e4559911ae40b88fe802310089eafcab2261633cdc92b1f292a968a70ad40a9f64fe361ef63dbafda70e571a2d24d219e9b3e92282b3fa858e53c6eb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100dd4f5c19bed1e41d38228e758e929f15487761b2661d81a269602dd510b93d239552fd19d564617b855b023f2837241e02305841fbce2937c47c32330de5dbbf901d520ce853a7d71a5fa5418ff309276a8ac78cfb445db93c1727c41ae0632c06810302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310091615811528b7e8eb94c6cc5beb9a6f3c71286ea05b1ff12eaa0f88e45e800fe50b350a5ded48361376479a17592b625023100bca6d9f49cd71e7165056a671a7823bb0645119781fd54590ce6fd78a780d3462a259928a394bb011a383a32325365780302047c435bb500683066023100ef7f0db4ae387a8f3230c9b63176a5b3b27e5358d8d4861fbb84193d21f726f7e96be81f9e57a1f20dfa99530db59531023100d6be2f0e2fd022c440a671034f9890df5206d653cd1f2c61598c671da8342413b46e5c2873459a73149b219b0a3f3a650302047c435bb500683066023100d557a2104b3d069b367fbd9f6e84f861156e1c5f7e531986696dd1030b59045fe905f0aee500937ccdbce7796c0a7b20023100d721ae4788e2c0fd2d85430efd5e6a751331a54250ee0ca191628b960f62e0e87550e628378ab52ba5328683a06c96db0302047c435bb50068306602310093543ff5cf835f83be7bee5bd20c3112b378b273c9a55973207e2d36a1d9d2077d8f083489da147016d9636b5cecf72802310083d6d1ce7ea90b056d56a9abc88c1623328267075875d08e81ba1ce342798c01f44b14292f0ca6f2d2463c79da8bcbb10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230279f276cc1bc291769550bc7f46ef57716297ebe5f3b9a7ba0a841045bbaf64b956c3264d5a1ad2a03cd782ca930152b023100959c08d25ad8607200b016422f20e428912c96773a4bc5d8408a7a4a795b359d62613c122116ab488979cebc288743920302047c435bb50067306502303e2c1dd6068148552aa92f3374e5254700d7245d6d4ee377875c2d38326d325431d65c4842c606c132e8939cd081517c023100b7d91553facbdaae11f72f14195a35da9017fbbe6e19c3d50b56ea7811e090a39e7b96c732b113329ef743251ea812c70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306734627a7b89410b89da29bc9d91852138692d131559b5ee6bf802211d1dd5878e5da91e42b82fdf4394d5276d4b191d023100b14612c60e4a939dfafa165a6600a587716728ac786e2a0a04b2faad60b0090219fb03e7e1bb1756634bcfc08d49be240302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100fedd6fd5accec6b9899437bf0edcd9b534224849adf56fb4dc71290e55ece0e6d67c051ebc367a162effe39c6fb5b8210230098650a58a145e9475bcc0b1b18e82df64e6813a78a8e9abecb86a858563e54c102a4177fa32142b2c632ab7b2be75a10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402300f5b1582beb443b031e916cfadff6c4d0fcb436e6986f504df60d79c98eacd08589901545067175002320815b4210fd5023042234f9421cd55bdec8966621133fd82675156b8e1e7a9e4b247b1c1b2becb6d4780d51e1edf9f9d89bcc56a2c8428a50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c120a419453993e4a4692b12945f553e7aa2de3cd928dc24ab5e6392bf6655604120d859e8d7d5f1047a21533527f854023100ed8477e8ea24b1b830863db3e19dc50961335c71ea842462ac5b253c8e53f133af4065034619db414545cdb967fc31180302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023054a0f80c29e01ec34c48e42f6497bd0e1606c1b2eb5341c1fe4f32e3fb4296e4a22eda3ace9c2ca72319e419856d6fd30230100e14278c5ab8f7d64d0a1ebe867041de674494675fae9aac65145e7f5cf07f5611d430d5849044e43230d1cddbd64f0302047c435bb500683066023100c7642e20aa9123da0bcc9107787b89b93bc096cf0fa379da9304c35e84190d5b8e3614096ea5b8de995d012381718cbc023100b493fbe95780d5e0fa584ee7366b8cd036d015305a8c3f997c2d2fe22b5e04e95d39a9961a3abff950a1cb402b13d8c60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305bf3bc87afbeb6d585ed35dbfad73e917e01c197cecf0d98b2ef87dacb449fb2aefd70df04f459d11cc567ef11c2a4f3023009879f6947fe9d97cefc776a6796748362e3361585e88d9232df2c3a5feea5df9e1cc45986b27acab8f782608a85d4df0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301d80cf34c70b773eee7ae9a69cd2d88deea21d0151b67dcd78695d63518bc6baa219646eef95aec53e2a1ea0db4aef33023100d6fdac40bbdf36d5c027e552f90413a16f8848eb5654b5a24ada7d5113d66d702dfd7e3e8c3d66c75c28cf8f78a82fca0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310082516e1ac52c926f0aa1ea5224792ad34da4d0b73759710c4326f4338805ee5b67c737746de88236795fdb3d586ef93d02303ab9f049dd907fa4d690cdca1ebcdc7980686883b6a4480a618cd2195e785b9349773984afa779a5316bfcc810b0b0040302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ead444fa09426748cf0c922fbb3ab4c288870480c9feb75447ee675d0089a1c52aee281c89bd83f8d6b2b69f2f3354e902305db367909ec9333009959217c0b93e5390d05040a67fa5144f92a04db5919805500c89cfdf76d1b49d86836bc4e86b2d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f46532f2995eff81dbb2cd1bf552dacad7e7b9552134f33a9417438d33df908d6fb9c761337fccf5c764a2cf9275d8850230670e368047ca136072cfa65671566afae8f8c4196000a234e5bfca54aaa638c20ac0134a1c40ca481562c605fb33b8500302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402300f1879c7d5d80f0a83d8e6089b505b9eec52ff18a3777485aa080e08827add060bd36dacab52c1e613387a6cebd3c5e502304fbc2257c4356746ad6d321b9e571aa8259089668dc8f3c4c451b27b16de9d0889285a285610224d9cad61129b28d3260302047c435bb500673065023030e46e646756af439ac7c9abb3ae4167ea445604e5e0da5cef77f309f167922b7f803a2612c0a364d83d3d0528b8929f023100b435ae907c9004d4d165827e5680d238f151094b3ac2e8e4d7717f7f9af27b95f29ebd7ac7f87df1cb4101d5d6f2f6d10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302037c9e932e6349b0cc7d4ccc08dd05cdd26370b1fc93cb936107ed1e76a32c07820eb76a25b850bc940740a8b6a7cd3023100b9e9cb95f1cdb15ad0d3d2c6a4a351c26cc5960e51cac611fdbf31a1c94b2fd6e27266d9554439a70c4a4c23c87502510302047c435bb500683066023100c7c1b94d918ee80fba2016fdcf3d38b83f3ae3cb475964ab56541e915d69be202b9b5ce78917eaf938c939921733ad59023100f9253bf792bd4e4e2dba61daa3a4347764d83e60072b26fef6bacac3a316fb376ce1603abe8ced6377fd539b85abae120302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f0dac97a726666e227c2e4c48dc0d6da0fdd6a88293e10773b1201de1bfbc1c240dbd811235dadf523d9aff03a3ac8c4023100f9969309b590f04a0f13becd8117d1bba3e9a24cf4ddf6f58e01ed146fbfa6ce11910c389d8701a986ccc511a8f880320302047c435bb50066306402307fa381cb54314e64d418734d39eb643de64e740bbd2245641ce863ec7535e7cac976f71c5c468ce241f6ac9ed9d9060502300da6ff02d32842ebcb43eec8545bfb5033c7b62929122e25503eed09a6517f90ac3d33a300be250794bc51f4f91191620302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100aa74920fa9f397bb2cc7a3d9c90451e20abd5ec0cc0135468cc27f601dcfb4bf66375dd199290e4ac2b26b02579a9de302310097414a217d7f64b639c92f7712e1503e9804c80e0921a44d1a67f5977af1a29fc20aba76afba3934ff7bb73a20829f3c0302047c435bb500673065023100a6f65a2062c8bc223c51e9e2a3f003dcdeec2483a03719e5f815fdac0c5f45475e297438059cb9c125a2c37de6ce51c702304ffdfe8076cc0fb68ff306c560dc958f9f8609cc1c8a68defab0f46d6813595d258d9dae3de148ecab5e228f8a1a15a40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230514a5ec0cd702345cc0fe53de9450984df5bda85cd49dd97b3f712e5a42af5fc5408f167a8b71484934b1357140ae687023074b313164fbd2987f1ff6dbb1893142e332d5d84fdd36a491dddd8e361f81620bb8d5f8863fea814c16eaf50cd9a83f10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cb724c73e26b692f97c7115e1ead93e3f21d4b54cf22763aa39aa3cc7002428f9802267e5279f7900b2d281f82a364d5023100b3f0b75fce78adf666bca1259d5f144b24772489d6bbbb7c7c4a903cbe744c98ea45b1de1f2be930828b865c85c5831c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305afd91a0779ba6276466aa311ddfe1b2d4be8e7b353a97e8e03cbd7070ae7cf50ac431dd7c1cbbb4ca20bde8596f760d02302e8e1e89c5fc97fc6bf82da32116c88f1aff80f373b8e4d0cb390f900a7516552099fcffbaf48b031a17a5524700d4030302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306df7f275d14fef734b67ff22d6d87362264464b274181dff11b3542a166800b9e32c9a33fb14f9735e092020cab18c8202306e7bf4727fbb21415f2468950e79649abb4b5c1aebc01cd1a9e204d22dce6ce681f945fb1764525e0432add898ac41180302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303e2965ae9ef7390d73af8a1f142f2a9ddb11e27d5870a737dcaafa7c2da4a6c522e047ddc01430e4592cdce359b392cf023009811d92a25f8d5df34e600a7cd7d0afa6c6d5b2c9dabfc2353c6e3cfa2f52e71e9c1b7b91182cb864147eb3dc8ad0770302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d8730380a9e305b738c838735d29fc1631b571aa6bc227b53afa277a8266531879c8d251e6a7c21bac8df2db36937b1602310091afb0cc0b60a888ef5d41fca7d74d5b0902565aa4214b9ea7dcf9a3c02a4cbb6082525094472daacb0883a6a67f33be0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d0ee2a0ec4f2d3a3e6d6b0e4ad786a2a8a50f411eb84127cd43e6e6a63d277a357cf68e5084d87b48e96b19d722ae429023100ac255e03aaaf6fffdbc8fe0a8044060b14929d1ae62448eee96fd22e18cead0c8265a6dda1f0f0252e9ffaa1b15d5b110302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305a0d49a6c1148b9f5c20bb1c27c4f4cef684f3cc0a3d61e8e9164665b0d40cbca813a4dc0db00ca6129d3171e206c9dc023100b931f70ced8e7859779255f53d8aee1bf591586fd8119c29d573675f875dc09935afe31829434dd5b3a36a38ed26b93c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023016a713f6d3b043691b6d108b8a19f5e4aecdc7e18bfaa7a1c805f16fa8a3342067685b9168e53e8b089177fdbc1a6ed0023100d98de99dd154b2d68c16fdd17abcb448de9e42db30cd0624a1ffffed86c22e7337da5b51de738a4719809df3eed68a7f0302047c435bb50067306502305e45ed4c6b6aa0ed646e086c6bf7d3a9498faf22642db066317f0f755a6dce384e2203b3043f59ee0efb5cf550c599da023100dc39556a2ba1d34311c4441287d5d279bacbbb703eda97b8ad04f6baa31a6230f55df5d03f58ee497e93be03e53807c60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305a6f73121bff09219a585f8d0840d02a527e0795cbe8eba89ee101dafde4f778a63e8efd4f26f75bd75985d84d957727023100caf9affe3c799bfade52941c493a211903dfdd01902acddad7d7c1227bdb3438719b202e5de21c8793759414a7e257330302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d0f7d9eaf032aba0f40c8893bea84591ebf8a71d32c63c7c03077c6d173bc7d9ee991c7e9e7b1d639443e20584f4f0ba023100eae94747c9732ef5aa3325ae9e60354ce188ec276310fc9ddd504bfe0bd83a4991332be82955dc7fe8257e3f7e3405e50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023042721466b17b7057c2116b3488db7a2cb48046f62c828865f239b7f75c4948c7a19dc441fe32c59240d426a87e270977023100b3bab840ac339aacbda3607154e824c95c1a904cd5e83b539c827eef3dc6f7fc9a995fd7db0591483496baf521964e880302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304a9ef8407aa842a4cf0c161f5586d68640ca49643964aa6a44cbd7d1296a888d5869b7527f0f2b3d9b3c9a5e3d872396023100c4701359b0dbc64784e1a20d54985f211fe22b4491f9b326d0f667c8845873b67673282a7907ab1fc730aa9167e017d70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008a55f82402c34745e3c2109a8d8ade3978437252e8f1b8199c8f6fc70ba0bdd865ea3c24ed3402cd880bdc545c5c947d02305431edb963ac2c48e2772acbd67f327e89e763fe3357ff57dec3046cf6c62f41ce19d412697b8a229516234973e893d80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f6dcb501f89acd01b1e168b917f8d65d1f7a15e039be16c142cd40b43fd9d82844fc3cd83154fb8c3339b20759c946fc02304424810a9af561d61ce2e25775e51333e7aaa6d214e077399fb6c1193283e35137f0547f110cde9a29a8ed490019220f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100cd336c260db5c873e7cfa8a5bf325ee578963858d258d02c17972972ba170c4f964178000a6c74143fcdc8c0d462e1ef02305e4d839570c73c55a2f9d2897b9f80ee82b630a414fe12fda12bb6cb85ab49c8ad071df50b0034127cbc9bebd294b64c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b9ced38ed0f33a7439cf24be906d41ed18373d4992316741f1dbe7e75f41a353edac5ad4c73f63ea8317cc8c3f72b0b302310081bb1f5c1e4f4ca0449c196788e51c060bde401131f6692e91531059173e564d5b3b1fa0a2d02790cacc6a24170e0b820302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a814fa8259bc947e1585aa9591a008a857f2eacb7bbf74ca8f472c08057eb01ec71f8bec46657971c2fb625b15037550023100bb30ab93218f3c2a7759a16435fdbdb8f8f41f65cdd84c0b1c37c89a214eb0349882408c92f6651031f1adf9d3da1bba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310087ce744b984e4ea6cadeabda80abd7ea9b6075e0a6320c5fa40d4ce4cd515195e35eb328ea23c59f4fde5830189c734902305c2263a60aa8f4e969b5f1ec8712735d99e296b8f48ea5bcbf0a1e494d111821981f9c6dfc0d02546b99976883136e3c0302047c435bb500673065023100dfc896ae1050e5dd3df119aefd89a6575156150596db430362e60201241e397eb52ae2e5002bc62b90f82588009c6412023068f14f9ff463b9f0f9bb41303e07b489c6d7c4fc899af896ab034afd1d65a2c841937161dc3489e5319cca18ee0fe66d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c2827bce55335504d8b733dcbcdd58be9f897abe2a8e849fcc59bb0b3673f2609dd940415afbe5d8da72b4da6f056134023100ae9b840be0affef3ee420b2da8b027fc2f746ba6b5e095bebf3fa4fa3896062d74f8016deb1424a8a89e694c1b2eea470302047c435bb500673065023100de30784c84ee56e715df767a9c3809d4ca1d61f18a202c9022204342a6e30d83a35e8e845e1c1f281eb27a253d6f7b2d023008a9ecaa1508b3d3e904afa3b8dcba09bf90c579a3ec257b6b5dd5e15418a6ea74dbdc7581df7990e7c73d02e281b2000302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100dddf291a57dd48c73ea2cd046686533c515dcd79d37d4d67c17cf6d5e37c2ec55b4d9b165770dde392f0343336f96b14023100b20169d6d8443dc907db800c07d38f392f8a8ff1c46c22b8aa63396978463e3dd6d00dea26d393c08b20c7af5d4cbcd40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b7adcb020a271be2fe419efaebe004a727ca5e39e5e3e384d7e397e3b7a3712947e25e8b3bea3c41ad8c563e449fe118023100f3ca314bc0c3e755d15fa1c4ce63c976e4ad17fa85324bba360097c1c60f767a9b48e8d4ee3ff2314e8762a0dae339c50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302128b74d195e9bbe9fb4080ece136b9b53436aaa56c5d457c13596611de9ff9e3ee2cf2f52a04d293ae223e859d9c865023100ab9a36d981e19be5cfbcb7edd3d7b7a54cc1f47820e3be0c0c05e82c4d2b0ba701a99bb68982bb107ead42497544941c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304eeb10656a5885d5f1aa379a50fcfb5e6206a23b45058582aac2ea19943e4df0f5264374f4764fff6f9b51c74fc8dab3023100eb1ea2118c87229ab2e49f671338ccf38491e8fa2646118ee7d8aae3b900308773d1754e9b67a84016449e2b92cea5450302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100957421493a5e9c50d8c6066502ad82780e7142a47920c8c683a35301312eee7feaf6be433f380572e30579a8f8243d740230028ed4140123a2141b7c8bf7477d05d1169a9a419c2d6e44c8a6eb9add5f2d16326db58c82c6c8bb729f1b46085d7e160302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305e5a5f169b93834c36286add0c5a57d37e2c4ef74f681d46ab7d33222b4476891f23f178e3b2cd173561761b4f1a3200023100a9d1d3d638691660a95db7d6f51bb67a507f53ee6fe55132973f3d5604694e52634c34b32cf214cb2f00024b7cbd2d2d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f4bd17934daeffbc0c47550c507fcb9713f85b0475dc2e766137b22e8e28fbc71b5c517fa175fe01e7734f7a1d669862023059374721fc6c8050f968671d1579bc18c793d634c12706939630bc090dcca23571e5b8e41942b867d93b82ecb2166fe40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230182edb4995d71c559bd6f82a2f94296ee0c331831104d583a30cef6b4cd9bb219b3c469a0e0da38c1275adcd2cd6462f02307ebec439d5d40a56813a67afca605cab2c628419bd898178000709bf322f7081ea3b675fab1433e517e5f5424d175dec0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023054b7e9e7463c9cbdf98a187c3e94e7f8a108a31fe22a7320b4488ee21ea630b52fb677c44aa36ae586b6df5e158bc3b9023100dff529928b33d23ec925a1ecfac974b65f660f02f9ce288161a17be057a1df47f88300f2aec690aaa4ee3024bcb039ab0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230581e11d0ef674f450d170b90fb8094370d3b509c7395b9028df027f7c3dd63b23d8e57441495d87c8f4a3bb8a5df0f14023034d360c645f91b53f8fbec9866d049a74faf1a69a2a29eb6cc7ab40046e1c290297b4b88e7ea85b4eeafebee61e28b080302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023077bee618d883ad55dab23bf8f4b31a2a5fcb8e3ee00185096b38b0482b0e44c5d9bcc28642650f880cbf8d18c0de1ad4023100e9e22ba7a3a1de406f24e3f5acaeedba6e065d8a92572831da41b029be11157c2d19c0521d6a2ad5c0e3be522e1750170302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306b3e48f03e37f748125fabba91f6959756efeae8e90426813e91351084c10763262ef6fd2386c415f296bde4236808ee023100d2bec31847aa73290b177d26feacfbbd12edd7dcac6bf4f00a4b2d8d455c57e9a8a44606b264ad4625d627a9b33152ab0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023008e6ea87995082f4f6c7fa937ef0f0234e739e4c9914e2656debe9743b632192ddf93741ed87face8053438eabcd819902310098d30c3abfd483bc817c197a41c147d5dc2f3d469fb9919418e69328219088cf0d567830ae33fa066cc245e399edbb1b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230656a854e8405a2d9874cd1fb8fe8ccd5a124eea3192caa4a3ebc111682da6f1411c1380fd5ba0d269912585f98087776023100af21a849ef5b525acc27b7fd98aab87c7dd99c751985aaa0eac6f9cddc1589bd11457dc0d6bd0fcef3f4650a814bae810302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100adc82285b6c772ae50d97803104688965d5230ffde28ede65ba3aedc6ade96671738feafaa295e5d26c4f4d244e6b7ca02306078c83145c2e9b4cdc5a8599f0d5c4c6d797cab5c0218fb5d5bf81bc15a6baf0f66d4237f363cddb0758b35861c4fb60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303b9452f1551a6e4ef5bf57b3b90a0f03c4b32e0a5a89549d475927bcab94e3d64315bcbffe0996970fec6023e125e50f023100fdca7a42f093521511120ca8db0dbcab2630be0b76eed04589ee8c56c921c9a0b95047ed44385cd5bb782bc5d1247d580302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305ed2df4cf42fa3a52f7ed0cf2104f5d76cbcea6a29cfdc88a51d742084eda4015228f7ba999b02bf36d102f41dfb71cc023044a11ca8b9137c10bc1da4ded0c330d51c0b53e925df37a4b1a5c95a9e61708497e58e35c0c2213cee09a51e789c54700302047c435bb500683066023100ed95666ad1f6a1e471c993cd0b65e6ee511d98db8ebd5b64d4a46a9fd42802207852086d2b89cd0b56f46334d30874ab023100ae1eef9fb4f03c645c39a784056a2fb9073a672b92c8da1880e2105bf4ac496931c3ab9a42fead45c4db7002ee2fdcc50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230431288cba7e66ea47eb34e69701e74d6470c283cf9717c8cc4546baa30d4c375ba93cc915da471c399cff901a3a4536e0231009c48045500b01fbbcc226a92d0e6810007b5e22d630a75b2dd1e2fd2672707753c686abfe1d7cebf29fa6932ca0786790302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023061bd2379aba9c5f2e6e74ce1b376ceb17656a7cb8bf25a0aeb5e2c99fcc97942e332f198c64014004b07577a62311c69023100f163479d9ab5a306cfeb141b7fd6ff23b41f36f466e96c2cfa5e28f32a098bb2469cbd34ed67586079a2fd89442d79d90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500653063023063f44208ae4cc0abd4f147ad0f826dc1839051a5af287bd6366e0bab4746e7500254035e0f93693ef82521685fcd7946022f6b37a2fdcdefd0f844de1be400b4ba75f2993ffabb7e49b1fc60462a5fd21b9dc2663053ca89225b7bcd264a7cf5290302047c435bb500683066023100ed0b26204ad98508d9fcc77bbbd0db37b657199b34a446e3504f214cd16ca32f283f9e65f1621a216ccee8c923ceeea3023100f8195cc984b6ae2c11a8592abf2a04e0f157d9850a5232a2eee731714f51ba38210de488d7a762f5d84025c8dfd29c6c0302047c435bb500673065023100c7d3349ed21eff4f9ea9eac68a00451c9df672b0b4c9d5f9ea166231c50c7f79c3c3c4b936d9eedb641f8b7eaea6df58023070268187d36c3c5c07a1043bf2d46326eaa533d72a03788dd7f386740f04217c3caf9db03c4025ac232783ad938f53aa0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310090a9f2a409da268a392cca85ab77f86abb0747fd41535c9fce1f9a7a65a578ac8957f4f8aadd42d9aea23fa2e191fcda0231008f02c75e181bf973030840e2a7c9d37f1820b6345b1a1ef480a02d3534942620571245b7eed5a6019f70e42f0f0169990302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023017a87c365d1d379a1a1ebf4cb61ba2c0a32dec283bef887f3a8509ccf731c7c22ece4907468610911988204d3b36a2c9023100cf2acd837e7907ae54247cec5da0c88b1d80dd86ed6c9dff9e5c4360f4b86030a67e1e207e7bcbc7418a5ada68d2afe90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a516e4efd9ac07a65fc6b6960fd7a07a7445a0f8116306b8cd32341b0c181918c6d19e2b7083ec36a7c3494955237244023010b4b65ef0d9053c7d50e81309319c4536c586dd9bd514cc2b8dc9caa0680303b4e08e1345ea711bf24f451144e26d800302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009478f797e64c07b870bced2e7c6da44494aa5d22d314161a7587c002ed12e30ae667ad9b3f2e9ded1fa6a9393530e2b4023075d530e594fa0d8d34e7a274f5069397da051c05042f53d88dab2dfeec353d8f3a61c5f43689692d4ca86ea6728bbed50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023076b32950aea61ed5107ee9c5deb18a8b34a20ab04f403a99d7fa2ddc24055e6663283cd3f3c9fbde5e0c8e51aab6bf6c02303c922440a86fb0fab863891738890384bc009f01ac68ab5137bc5500b5c99790ab3e023a36ea173d9684a8b170dd5ca40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100da13812f485763813f5e8ddae5e27ed070444ffacaf92b6e790dc961102d79c991dcd71c7caf56bb61850902b65304ee023100c7a17f41bd479d9807ab9db9065d47821202780948ca72918740deddcf652abc115ffda02ff457bbf9c186ea3e12f5fb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c6fc12c80ba46e76fc8a1160596b2d456635bfc50b23f74d8bababc915e136dacb35e9a689569a244d57282553256a97023100cb4c411dbb76ca34d684dfef432279e4ecc2b4cfae84722e581e8b6b12beb3ea8312b690d283c5dca9b46a55c8a62c450302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307e0a72b95889f5da6cbb4291a931bd6255f54e52b3ad11b1cc602dc8cae92784b0f2f91db0d384c6e61762a1d33f9dc7023100c9119e9203e100b88ba8853537599881f749b0ded3b22bc85cd2611ada33b3453f9dcf4d94f28c42a10b71ad042470fb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303c91fda61003fb3653944e630f7d7c9d41229a0c3538777be3bf92227fe790896280ff8a813657253608952fb7f945d0023100c3abedbcd85fb7f3cb431f202c13ec8e8f8634d603dc4c29df5177a1e4f6712ed8bcf9bc1a5c4c2cc89a2442d33103fc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023044caf9473b95db72abc06971b9ac573636ff8833c5351fa74a40f3b3e2ed09914d8a4f18d958de051eb4d04d4b0303bc023100e6d16f806a9bd5fbf2b4a3a761760cd97cc4891118b09b241eeec6ce2583e87862605fcae23ffbf8517dac4b0dfccf700302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f0cac74e461b773080a31e85f1194f768cc49f6ec064e592dfe25b6759d9359161ecaed7d00bc75334752285da178aa502304133e51ce6eb2783a3c0e02a6583d2b5edc1a0cfa9f59aba696bc3a81ac7619965cb847ff3513f1837418ff1b635bf0b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307d2646e0d2e580b634ccf23fb4fed68d2c2bad5ddd5672a603b30e062e1f9c82809ad2db6c262650da7e00166bf4047002302cd7a5be0c849de9bb486f8c375e423d08f8dea97de84e6feab42aa26b73ba7f8023742d4cce6804d1117770217c284b0302047c435bb50067306502305907c4a86a8b631bc9f8378b8a2d47d46ecb79c4859e9170d01bca6ec34d2f01f9b848cd98b64efe8160784fa50d7f56023100e4c39b38441d09d9be63952ba57c0d021a250da2cdd1de26a973114c823979851d85a36a9e2a0a540d06a26af0a3e84c0302047c435bb50067306502310081214fe34ef7a1a09216cf4a7be964db6f756a6dcaa564b5c8358c976f65f26cc5c8926f38ff1e197bb4e790d43b790d023005bbe5f3c800714f55cb37fac226bcf14c69e6af7de6141849f4e7ec13f522efc14469f136a6ff92c2828d26a3ca923a0302047c435bb50067306502301285cc3f38ade466356c2177b8e321d1a63ccf98232327da0515c3568f9139760fd1d3fdd548a833a40912347bf47000023100ce26f4cd5cde2ad27a5dff4eac0998cd92c246bac2e0899de56e8aa6d365d6f24e9a1e5d66a9be39b2b88d8166f672de0302047c435bb500673065023100f34a41e885cdc5ab0fa0ce7fc3980fd72dc8998e943991848ae3e69ad625a7b215710ac6b626f5e2b84ce34b5ba5f9ef023029cf30338b947468dc40edf324f523fe7c149f6c6c5858977083d5ca1e6b40d6dec4389976e29a64c9de101581618b9d0302047c435bb5006730650231009ba14738020499c56961739975f26cdc63a8fe0e7b10ed5c8a7fbb1df58948d7c1c8257c536497422fa0b86afcb7c8ff023062caf939ab438472188e905cc8a974acce905778c1609f8c68a153bf0cad2253d5b03342cdd383a20e363b7854743c8b0302047c435bb500673065023070913a52ea001a7405c977425b6ffdb65c28987a1d1091c07fbd5046372c9bd9222bfb460f5064ee7f1ad0060395f9c302310092d405ac35164a5d6702237ee30686b24bb2c6091949972722d90f8ec8fabe219afb2209093369a6335cc8870ba656fb0302047c435bb500673065023100cab59e3546d43c4a3fe1c12d2982af940471d632e1905536b5f0890c444d011f8e3cf3695cac6dc333cd78dfc2da40ed02300c5976a02c0dbf4c5aba674a7bea80bd0bd45949460cc899a9c2736168467a9f181c4bea17397a67cf9c4f26093aebc20302047c435bb5006730650231009ec979a26267b94d65654df2033cf8f8e77fb6b5aa874c4320a93a4d0dcdc13423598f745fc7069eb30f4f0f5fb47ef602303692fb9e99bff634d98998f009cb3252918dea2e819b81d786ac1c84aadc53d24c3ee3502593af712d89f6a877b29ff80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303bf45467a4e677839a504b199fe472a030c9111ad22d447ca47eb1e500d79fbe2d2e77f112cd2f2049c279005770811602310089400efc44b88b657c6b92d343d68f14b707e0d423188fc6616aacf5eadeb0ea32bb4a2356727842573357a6e8cb4be80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009fe69124b7f2e1b9639d9c9d5f7639c1c77b3ea68b3cffd04dbd7ab8a0d89b40500d51943be6d6b3c53298954ac3f5150230173f7118050109a998c26424535f76b618b832151f4075a9edae8654916ad850180fcee73eea9f5ddfcdbffb5adaf8e40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009a7d40868aa2cefb5faacf61f13ca35f0b39bc7fdc9a0e17542b168c5cb451102dd0819e0a89b33b7aa760375ddb444102307b215097f626632d270f3f8e495bdb1c7907fb11731b52df616fbb917980d198bc9d75ed7e0a82997e3f2397bfa231db0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023028709e78eba10b127772c8760aa1610be0c3a0cb403062f6b0c7a54462bd65818db53a002767b53fff582f4fff3573b5023025031d144dc8326888929aeeb31fe5d80b763d0dcdde2d9ae5e2a5630b257076bfe4f73c97288120ebacf89ac9a8b36e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303badb1e92628ddc4afe21e7e0b17f04e01499e432ce49b3d26a7acef236432f05ca2c74d0f49fd7649c3743e565d955c02307a9005d7b6f2a406ae6c728180f2c92e29f47ed3c25c2fcc736b7496ef06194e920b0675db19aafe03f5fe18af1b7fc90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f724414419e9492b8a79c68a4007ceaf7a73296660b401aedf996338ef83341352d3a93600aa7eaabc099725d3f3372c023025665dd0f5e5f49de7178fc47d53f03dbb1e451804e07a26cb26c0e7f60e57309781ec823ca8c87f38c836ddd2cdc4ed0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301d8ffa0dd5a1f383072f39fe43e1f7dab6d0bdc4068ebfef781ad4726dc582e6247fbff5c8d2a031a6282eb712d4b77e023100a7d84048f4dabe7c17becc29301680cf866011833159e3bfc963d4398b161620a33a4993e212d4925d50d472f3458ec40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100985de9767c81b9989a8ef8bc737391a7c6b3fb50d1354814f26c159c098b1a09fc616830c5992d9ee4461740a98dce92023100df3e6ac34db1e40023bea923f26c5014510a1c3e21a21cf608f6b685b036001abb6df063d6345a849ffceaa5afb68b280302047c435bb500683066023100997aee1e05a8c4e04c2f22b82896c84c4f216d48318615a1c30d92ece2fa380d427be39fd14552f8c04502e8269fcce6023100b82e82905ed2ae50046fd69d6dd3460ca2a83da313edd3b9abfe2bbf95f6a43e98fe87eae3e620cb092346792044b6060302047c435bb500673065023100edfdd358c7ce4c131d8870f4cadaa42bb0a09d55e4047b8ce348744308fd9014150fa8838f31c02fadce529c490563770230021ab1b1099987c50f650fffe086aec497ff9d08cd00e7d65e6eda391639483d27297b70aaee72b360289b6755ee66b60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301cf6d9924220fe0aeff7d6070a9adec5b7c3dfca27f13724ca75a8c010a07bb6bc1846434c9c88540783b63199b078b8023100bfc4607abbddf9d57d1868569301a6a6e2a7c3616e475af2a179b440293dad864426945c885000ce5e368ada85134e7b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100932b1d66f45d6472f3b840a7a8d6601144ce291d6950305bb73269e604ee2d1c92a5d9500a8bb197b25e17800f30676302306829786c69bf855d7412b8f723b6a80e00e0cda8f16323e1e1862a8879133a7306a98083658a79112288ede1f1af72c10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230329152f2ae8b1962d30324f3f00f772128f07b02dba8fd44438f1ecb4e33090060d27ee7cd2db26888d1039a2ecbb71602305e45c26fe9866e3595a2581e4fd46f1833140563d869182f164658a29f61516379a04a374b94af12c87cf7ba3cf28dca0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230713bb0be03639912818b4850a33076fc78db5a1f138de635f809e948642476e0ab20d38af4b26212f85f6973606f5f9a023100ca83ee02e916afac3f3d91f4587cb118df4474734107722c824c55c563f54a04ffb30b5e06348ae834b9aa2078b08b360302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023014d8354aebbc49781b1d26f5777ec6336ffb4f06aa82b362aa265f3229ff877272fa49e0db3a06d3aa0e1acb638dd8c3023100d2739ef1cb5a0154e480a4201a8544745a3375e4f8739c2cdf1277a4d267bc4e8e2fe0803b0fd9f5ee76118645e6f50a0302047c435bb50066306402307a0f996c4ab7ebb711d6972b2b761dea01c8647f70844fb62ee7fccf1bb46dac3355a2a9f1d8407854309ba5f04544b902305ec18f2edba7e99309987478f5e3939788f464a1e9211ae39cf651483da8925296754a4383e9653672092862a2f6d4620302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310096e571c7ccd4135b1722bfa9545530f5f7de4e52c87c2e1c28c8146481d30a90300f813fae8f957ba428ff81c8388170023100d9b8df243deae84b7ec9025e1f547d7a3e7d9c43ebb50fbf2341052c37a6c970c7280d95734ca22b44a9a0d65219ff270302047c435bb500683066023100e6bab9775417ef2919207c811611c7decc051bf9160b7fa374f84711714a374b8bd5a083ead21a886d6ab63385c62f07023100aea66ddea517cc12086327602bf732a4604feecc0dc0995422d49277ab06fe0e678f44216f670de953309902aa53a3800302047c435bb50067306502301235f1eca992275eba6e6ba8723ec8466c6504224905d769b1e197674392ec54f7587b4a9c2e80906d5c977b0c19b32e023100f31475cf171357e46ae2af9ee4677ae98412cb524a66bbd66a6df82fa231441e36e0a2ae6cfb2dd34e4e527e697be5bc0302047c435bb50068306602310095ef73520378e5ddd73d2c8af93c1991b381de2854172b2792a5240503ee17233b7aa18f463ab007906586fead44f917023100d7a189d8f78447321f6539c89c8fc3da80d0dab8ba7c175d5760b3309b66aa3534830ad0d302325a958e32b3b4ef04cb0302047c435bb500663064023024519d9e9c728ccb85de1e693420f0c2179055c623e6dcbac845f885ba89fb85d37bb598a8ca378190350c4499f97e640230567572d71a7550aa624d4759e82148d22f390187813bd1e0051a2fabb936af718046d2898fc21d7f6d7dbcac5a6fa1f30302047c435bb500683066023100d1768b79e631c2bb4d57006f2bfefa8a5d799b5009342161a66cbea1ef43ee5bbf5e4ca96029b9cf138bf7ba97fcbfcb023100d464a193b65c97c0b88f714cb6e900c97f2f66f93d4c04991c2530559b22c0cc2da65abcf530e70ca0f7cd79b81fa30d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230145daf7eafdae0bc4695b29285a8330d8d342987e28b14f1f0cdb75b1d710d26ee04acf9e6be06e06cb8af7e8eb6e60b0230508d536819719cd1fec394d2eed6e553d9bac07f76f9919a906472a6ad888f067a0c9f16c30f2ed04432498cb4a535fd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301d21faf44b2f6f8007561607addeaf2bfa752f34da0004fbb4c6c05f45232a3fd11a99da615ce7e83f64f3e27a3f43a0023026b8aaad7f097ca7a2edfff7a244b76323adaf54037f1b2bf2b828abf64229977a93db9b1d7eda3dffb7f192849bcae50302047c435bb500673065023100fce1761b863bb166ea9ea493b776db4a4b1c0d2a470092f010245f6efef288d12b1827b0f1a3f00c030b6fba49953a28023032737f42457ffd5af63a5692ddaa7572962ae900a5cffa8fff0a612849d658438e4426163926faac54136b2be8a592d90302047c435bb5006730650230509ae3be3d20cb1f01e3f29ca957517cac2eb5b8ab2ef1e0c799110b8a7d81183d09641eb3d4bcbbbd3652edb000a2a5023100c070035eeecaaf0b16abe935b870753f48deb8e8217d21e55ee206a05d4d5f740fa0f3aee2db044688d7f43677178cff0302047c435bb500683066023100ff770286e2b7a27efe853bff1c74d46d79328446439fdf78be330d478c7274644db85bca299b296634996b81391bc19c023100fcb04a350555832935d6876423c8c92be7ad789396842a34794bbb0a7bbc19b6bb617c5d0cc03ff80c8666297833b3590302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023004d12974e545d791f44c8c9d2f71af6db3f1b3b28eca444a02722c324f9d5c0502c28d8fdf6b0351ec11351660fed34302302b3779a505e359e227f8c42a9567d2b2e9922f886b6dde0973a99c3e4f682ceca0bc890a66109f3f9c6c0df18aa60c380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c3468f02add636b25cd4d4de6f1c3e94c3033ec686d73d971d1a5c2adc2589af128e18336ca3cd4ffd822bad2f1633db023100eb0f8ca4b99b3e34701e1f2e33f0dcc5c9bc4bd70e0a0f52a0b70d9c1522425524bcc67cacdb7d256496f309265b89570302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e89106ec106ac560531a01ab180a3a42553b6bdc04d58476fb826dd41fe1d24b5128e4fad5e945d6cfcc7d2346f631c702310081120cfaf701e40161e360680ff102a31feb85c5f0c6fce87f0af5c0ee047286f82fd8ed692c25d47fffc2f6c5c4cbe60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e3b5013d989688b20ee424542ab3531dc5753a970571e82be697196eee6e79130901ee088c2b97805ead6720ad610f6902305f607dd76f335b4dc9d1568c880a8ecb4544c978766d223b1096ae117aca825996241d9c6ec9dfbf60139571a53bf2bf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089e3b3ba9c6803799933bed13b09d8e55422f2ff25ebb428e29a313bae9d63e15b8785a2f478e6eed26b00a00176fe2e023100ab1847a54720f56b174c3fb105d90ce79c65a1067d93018528bbdf39534352dd0fd4dfd1c2fa74f5a9ea3b06e54e728d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303b656cc21b07ae3420a5b934dfb0e08ebf17312dc0d5ec3dc34d5db12eca7c86a23d4b146b46f1fc7c749b7eff25629d023069f0d76cb9acc16db87e269da6d93acfb011485ed4b5ee9fc5d86ce3e3948cc6e74c530b060f261261bd7514831709c50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230280f555c86fabf90b1fc8e745de4f34a78e15da5af978210b4a661eca47608daa14e2360b8181e24ca4541a013e653b8023067bce52b439cb88d08002bdfa983556d88a0fd58f56358179751c4dd9227498599367c79974cb12fd461d9833ecc46980302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100fafb29068f854e2a73796251b49274c9715060afb56c7751fc08085276be060a50634391e63f3546b391f3356bd18661023100bdd2f5df9f4945738c0ddbdf5866fc44b80b91d5441e4f08f18f829cf638208c4b18c920677e42786ff3cba169d67eca0302047c435bb500673065023100a3fed5a945db4eed581a497caf070fd4a4fdeddb012357cef0bbeed20356b3c5ef06a8b9b3af19da725ce991375e993b0230732c5a601b953870ac5fa12073d9a81a6e8c251292323070d0dd06e58dd40f6a55fa92a8bf0276eb4faa123957f64a100302047c435bb50066306402303fbef12a43fe3740073a210ec36e37197d4520f4e0d9c152f4c383bf22c78b518b842323a77f25403e4cc2ec9459bc63023076bc35dc4b53ddc0e626b31d2c1228306ddf5241bc6c1ca4739e6e95ad8a3ef243c22b15a0e0d50547ab62b7f075f7750302047c435bb500683066023100eee194940f0a4ef0847d21b946e133cd470c735d7738e08b03942863143dfa508c40b90cead37925ac08d27fbddccd08023100d71210b1573bda770b2a7665ac01413088a1a76d0d9f21e42bec32640bd3893b780d7a8fa97173c2262cc075fd2894ed0302047c435bb50067306502307e0d9f5a7d9c00a4673792010d6cc72ce6cc3d5f3364bade7b457dbcdb5ad854e78005e5c9d11a67566b890e66a60f37023100e7f2533480da1510322e538b7b46182d10f1b93748e762fb0835d2872baf8fb771492bb7ab40d63248f1e6b1b5fc50f80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e5fe06970dbcc6c34843a9578cd78475d66a95cbbc2c34bbd0f985d838a33f29b372ffd5e3d53ee42dba3e9e1131c605023003f13a348cdda0e3da828b5af729f13d96a89a8380fa2fcf061382a7509057b6b5a2d08167989015212cf8c60f9619d60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230400374c12583e536b38d84b9a20d1403d55faa589938fe61fbc4578901ac29010dca75d4539f8fea650c4d89c9928ff2023075ed5a3c1a74450ba290fb0402683f08852105135ea82175a5f23dbc7123c6f19e89fafaf278d32ba77c7fb25a92d1f70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304dc1daff67c067d73fc2b78e7cf001fdac8d5412174d8affde48286e4640bea4f83477d0f9db3604107b2de33bee19cf023100e0ad3ea009cf0a5f7867d07ccd0bcacb6145d92f4d287724bd0415606a51fa9a39c1b8c51dd23b05efdaaa5adde9d3260302047c435bb500683066023100a92d50db7869523097e52c9e75e29bd2469da0b5b7b80cd90d042e785fc70fc2525ea8de9863a6de3eaa8e6a454ef664023100e6081f63c8af890483398d5bf363757c278a054772f8f8116123bd2a99f54d629eb186bf4362d280f91c88ebe1d082d60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cbd605ab71fe13dc23638bad1974853ac193e7dddabe67534933feab97076e64bd474d3f81ceafbc95e682f910e5fb34023100919e8747c9b26836cf089de3e3bec6fd565159942c65678891a8e61769c1a7521fc05ffbcb9af0a377a5e5f6b86134890302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306b7a4a1a071931bb54fd37aae7042747421972cdd22f78226784e65786c21a416407822a035bad19fa92e227150c04da02302f11d391c362221c8fd723b0e4d99de8229d1528e9697b6c0fdf73f85678a3de17ef0af471053711d3914dbbd2ae6a1d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310096c62afa8d756744f03632e6c7d36dfc41ffdfeafe7464d1fc05b3fb7a16f8308790de095e35b661be13c9fc742e7525023067589c1c86654aedb937984b6faeb1c333f8a4c4e9d6684c4654d0e6a31d7b2b6faa88878c0787f965f4366a0f6f1cec0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b5fd89a359dcdc0773d589a37f803cbd6c905562fe477f333b87564d248078c878b6fa96254d16947d68dc57c65bc3b60231009d2e2dd53c54003de388a6a814cd5f3fbdbe38bcd937304ec5147a2b02cdf6900ea705e64d156e75e93af3ff16f2f2db0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023010cf5c5051c6134df2ff98981546f9af1f2b24f896b25881c8456c47787eca15c0778859e0c4006891a1d60f41306171023100eb4c31f85ee8c0e3c7ef31f22120c103e299f9249a31b234b5eae11afdc7e8feb4c19fd504894a5778ac2312ecfd9fd60302047c435bb5006730650231008422731ae19e63f75f653b1f10b3ea727c9e6817f0eb5559ace74d7461c7f355f78e1d7da3418fa488e63c65f216fdd70230152939ce896ea80cbb19aa4bc35bdc20dc0fbf998e68dd5cf3d6a5857695ae872c1d53950aa22186f35ae2c94ceb81fc0302047c435bb50067306502306ebe9d09d4bd8ae4ce3215ca2d992fec3f2d251ae9f1bf8f4e6eb5da281f584ee5e1f52b7c9ebdc0867120431dc167fe023100870c242094dae3f29c56f27ca7fc996f600523a1c19ae2013d3cda4d78f59d3ca8e37b490498a504fe50136724e77cd10302047c435bb500683066023100b0c28d1ab6b58d3e98fe4cf241cf3ac4a9ceb85e88b76cbcfdca9357b105fce39c3f9ba0eead288b225578d1527b436f0231008fb14ebd5b7edceca9fd59dfdd2a79e52f5155f3ba79ab10510187660fbdfc1d2bb88e8480f28516d3a4ab6eb6edde2f0302047c435bb50066306402304c549838543cc7194bee3b29e2875855b4836c1591030b0932f74420455e2ddaa96a89aff8b679894ca55fef39f5e5120230039562e2d19ff6ddf9487c5502f1dedde7fd11b46048e3a9c6875f3dadfdce2a86de32be1d522f4a7c1b613a8671405d0302047c435bb500673065023013a91584530556a6ab630ec5f232deba249ea15a24145d709c44f830e5444f13cc00f75df21153e7e60a9eff5171d6a3023100a4b998445ef46abc552761dc1c998ad9ce73fb67bfe786b33069be4ec9d5ccae0e627436a1393171224baec1bd3092410302047c435bb50066306402300a165d41e63b3f190c87b0b2c31ea89064b1320b2f19dd10eaf92ee5c371fc0c51a573681384a243642690e68667eecb02300e20e8ce39e102269c3e6b71660449db43419724592bbe19043409b2a4093ac31573d282f927ab13c36f873dc65a334d0302047c435bb50066306402302c14fd78adb30df43e1a01ecbfc2f6b2f3969672db5864575e2c1b2c36d9fb97aae80f5793a1c2330c9c70c2c3a7d628023022425338650e283b79052052f741be3b07fdd5075508385c5aa933c1a4a39fa88fd1faea18b40fe1bb9d85290ae49b940302047c435bb5006730650230350967ba75f8a09dcf06e61b14c6dfceace06c369b6149e5d9ce2916d1ae140c1426c0f3ffca69453f45221c6204bcc00231009760cdc70f203d46c764dcc2e5d6f7fbf765287dcb12fb6c368bdc1fd3181a591460b9dc857e942317b06a9b42e75ad00302047c435bb500673065023100f780970143041c9b1d4fefc0ca61caec44ad544284d2ab4184d69debfbcb9c7f50aab220b8f8bc8d91d509d5db53a23a0230733fff7330ec9558585cfe199aa1d08279199777b1d4f6cfdb158d71a09e2c5540621893ea7a9b7ead6eca5e08575f3c0302047c435bb5006830660231008e117ec5f2f035b9db4725f3ccb71f2481833efb03248004c30ca4b7d89580bfc2683bdb1bdd37ba21619e802f612465023100f736deeaa2ce30b7b3b5d6ada2a1de77f8cdc48ba0f7fda4183d93afbaf164f1661fe2c440863a56524b3fa1d80fcfbb0302047c435bb50066306402306216069004615163f6ddd8d9515c641c3f4a14838449ce78bb02e4ac775c1e50543cdaecb37d60ab73a9e63386c62c2502302eae273b2b5d333b329234703620451d11c7814074e57369caed5deaef398efc76a3c56bb988de262391cacf233bc8ef0302047c435bb500673065023100f99e4a3e9208d5cc86d7463bdbef32afbef07b6a51db6a0a42e552ee61f16ae9f100b6c2b48113abf9bf34b3ebee08fe023071e9f82da5563fff32bc5b56cd46d598572804730c110f28785227d6623dffac5ecefdab73cf9a51541c317f9b6d29c70302047c435bb500663064023065968f7c256a71f8e73aa5dec853bfe52c1a3927b6ddaf7f3ea62e0ef558bfecc8f3baf05f6b1850f90cc4b93169cf3702307bc6ac9d6ae6195cf849cbb88c4b6b857c56dd349eca078db8ed3a830d19c76f635a5e0b848c006e2e1d8350ac986ed10302047c435bb50066306402302e77da3728b4e865024b78627dbe89694afe18ee5a84e39e9502e153d2e2f26e7b6711b786794c480ed122b262b222770230640c9cf324fa0f7f072af5c630e0a897146e7971cb20ff8a5b5280a5c6b24c1d0b8d7dc68428ace7548f6f9ffdd98c790302047c435bb500673065023064c7b2a1c679e29da3e652a52827c3fea3cf5d68de7a19ac00c29b5f2d700d998fe39f4e35e5ba524f234bc96cdc96f602310098e1e738e14ecedb8bfc3ad55eab46861d10391dd6e17dafb8f8fd8dfbf32165a417c22ff5af7f716cf580531621cee40302047c435bb5006730650231009eb3d3b9d99eed8c9892101a117d6cb9a8adce6cdf11adcbbf53bd3bc6489f01030f288e89ddfd9071957316e6e85ade0230031710748a0af5cd6304ef927c2fcd9c07f7d73ce2967d51012a3e8caa202ec4336ef14031ad627cb12d55c7b26692890302047c435bb500683066023100fd2a8459b02957f27b0d4860e703fab27330b685f1ff6afccc18447c00cce430a8080a1cb3c2ec6dfe55c81ce45e1f85023100cb0d82cb636361fa2734dff9fe9f6a808a01a880e5bb08f310c5ac1c01dafb26e47d26d132dff6ceaceda4f293b843c70302047c435bb5006630640230387b18077253a01a82c2ea6d00e7cfa8e3fe5c561ccddcbb12e0cc939ab0fdc473cf6dbdd32c8b99534ac6787229a28702305ccf147bdfca832bc1ea87e525fe3478626847aa00f87772d775bba264f72e6796ebc8824313b4f5c202ab0b3efeff710302047c435bb5006830660231009d0a211f025ec35152194d4feb67c28690766eaf39803a054b2ff13ed1c30757952b4d7782ec9463ebf6b487530b2990023100ab204851b0a6b1997affdb4bc3a9398c114ba1d0c80b678843a2b6d4be6121135eacb38a84ce1ef7bd166a0ef53693ac0302047c435bb500663064023018ab3dfcfb2925223212bb388159646614921ad0d98d535384f612ebb2eab4e41c1a10791d06c78ccdb5d97ef605b6f2023041590ac8e035cf623207febc2d42c2aedcd746b2b017f42e19737862a0c95877ff2593665c20f03b0729df29e44b04410302047c435bb500663064023054090d73f1458be43b6d0b7cfe2284c42b0a54f5813aca0ac0696213b7ea0242b832bd724b01f9e40db2d6b2ddadf32e023035f80cd3c4278eca611cc56600394da216debbf875dd552ccbf5189b6f32b009a1a5b27a25ab6a1666c87eade9fb98960302047c435bb500673065023056de94dc9eac7fca5b0adc765990f30dc9b2ddf1dd4d2a65c974a6ae4b1696f81a93ad128c93af07e1bc28c681d50836023100f2c5c7cbf94668a8ba820b30e85d067b3c2a2c01fe05d049246a769bd4a47c14cef7528de1681933a0d6953ee9483e620302047c435bb500683066023100e60318963888ea554eb34c7fcaf56571220ffdabb4564f347794c3890c4a6c957164bf3ce8dfdc43b474fa04ed11e90d023100b5ce75e9a91ef437b07f46dbb5b5968a1a3eef2de37f4c539f28ad2c206c14419c4971dcc662b9075862677c1e9745a00302047c435bb5006630640230487ecf5f629ad7c5396ffa601d3dad4713d74c1f22077513a9ff741280cf427b9f4da773d8fb57fc52dc59a2cc0c595c02301720831f4230dd44765a9392f3ce9aeb6b0c9007fa809d78aacabf07bd3bf6f021eac90f607133794529337bae3a3c920302047c435bb500683066023100b136c257b86f5f2d28986eac36741a04b1ce428debef43818cb997ffea0766cf2b00e5900cc4a89318f3a1ab7da76a5a02310084de9ed7945ed728a068a772efff7b423d2f3d1cc424333cce1a7c32a48167ce7069ebe11350b4128f3c9e349e71d4e60302047c435bb500683066023100fdc50e36bdb45670418694af3a2a1d8aa312ba19d4338541bc744a0a1ec05f517dac8d2bcc985ac921c4e2c6e03b787a023100d5ae8ffb4aaaa5484e61b60747fdb5096c53196a3ed0e63f34d3b73201cc4b42cdaff508eeb57396e508c512c3d3257c0302047c435bb50066306402305440d2068ffd027482277e095b31aab444943229ff53f1811d9b7c9a16f50717b1e4cb3b06528b5e085e7eaf10ed5c85023048156519a8b68627c72709b28bc350e03904e5cbc85cb67b09c8b311feec1a4393d568cb6ee5d760f5dbb719ab3494260302047c435bb500673065023100d9ebb7aa716beb0550db3b7a24778dc875e9bfd590199ac9667925c47ab342b6b902bd2b043da0c2841f87123286614202304b2af1e2e10702a89d761534dbc48e3da6964ad0651e23f258b84b5ce2f9120f37f640b27531cdebb5420371775f66340302047c435bb500673065023100d15b8fc26a48c1a9d89b708247dc159ad7e8564dee560a8f8c4f4e3018d8fd895343bdda5c0d1e795c098b202d60275b023047d37f37b3c75ac77a06282bf357577872f8c24e1bf788c6dbd3c41f0635d1ef1b7b8b8f73d6b460a78f35c729b3d2390302047c435bb500673065023100dade9ec97ffada8bdb1f53d341331a97aea7c1c525744a83d2aa708dea289498b45bad38479e917fd6d79a3cc61911dc02303e99b5897213b27cedf044579d4f83b9040179902c35f208027c365cec2dc9767d7ba1a569475d25a3337414197d8c320302047c435bb500673065023027e5adc5f3717bd127e70cb2d95218126a2e920069b9fc937e031e435585d016e9f5990f13794e0855f732a09156edd4023100c6fae71eff2a557ef52bfa810e1d57c049660982e577866da9ff201fd107cd70571bff919666f73fb8795d9001d22ca10302047c435bb500663064023008f804735d30d9c325ad0876307439335472efd0544b640bc7904a47aef44f74e0881ff30b94ad2f3bd9da3b6711337b023069f6df52ffc1381a6a0ac093a885035040714da0b17865e8f05055a097eaa951195ba59e4544676fb2d2918191adb3620302047c435bb50067306502310087ac20bcc36907e4ab6a6dd2edd1e97e0a8769a2dd151942c2bfce5f8e7c5775096ed684679098bc4916a22ca8e499e0023054a0f1fb373f048b0d39be7b8d64a01be2311a8f3202171d51e2f951430012c0bf9aa5c4cde937048d54f2ad422a56d80302047c435bb5006730650230322e9ac149a43cb586b8de62ea5f38ea3a3b57c001d689ab3cf69818f6bbdfb39a7527426c26182fb33b22b5877ed066023100c50e276f82bb8584e0de67c27036a4774d8541c1070839d8f842309e316527f27b310c76f2147184920f0bf13aacc2c80302047c435bb500673065023100f5945179aca67e804cfbd8a377e8b7ed4a367bc5cc49c70d64f9915ac70018039d15e2182b7f0946447d7203c2681e70023006dacee81365f6a9708aa9252ae7cef12ab564162350771cd0afed674431436b148142c2661d5d3d5ea5a19525be52e40302047c435bb5006730650231008309dbe96d3b4f6566e9db20a1345f0b536b9b38faf1d22a36d3c29ade7482335f445b3cee1ece23bbf3abea65e63b6f02307950194c686123ba1ee55f8812a5d46f0f99e1489654d07a79c7147989b21d15be0769f77c09fdabad42f71f52c46fa70302047c435bb50067306502310080922c131086da31e2f3499688e4e8255a097aca78aa35d331e04669ea7da084d683891d7ea0bc48ac5e6709c0f7a3fb0230749872ab73278f11a5640cf461ead661c20e17d3806df92724a5c00291738469d1cb670c5d17fa3d4c5ef02c58a3dcb70302047c435bb500673065023100ce6b221a48b85d3e1e4a922837ce8674aede2af91c204cdb5412f3b953bfc75f6883a2288a1d5942901ee4bffcce077f02302b6543bb75d82d75bae794753eca0be875f441c817f743557c6dd914eee242585ed5feff99410894e50b0dbb2bd261810302047c435bb500663064023011f3217ea5bd8bec900ee5b16a71d39a830239c75f2b225f2d38d0f8047638cec2b0a30a6d6915b69dee6054bab3a822023066ad0d61a8843a760a81acd65e5fc4eb4a7bb1a4be7a588e4d7777695c0409f58dd7a345c24072e846d44f5da4822fea0302047c435bb50067306502302eb2056ec4e799655baab549a79e28d5ebe5fd290a68e5966bd4cf700ee2d9092503d3f20dee693c026646d51fec73be023100fafc2a52934876ccf5ae4e8d411c96287a6d6665f73125c6d742db15c06119d96c05175a3b7ef902cc5c480a454bc3c80302047c435bb5006630640230145a1b94c23d80c7b5f025e9cfce3ff2c2a3c6330f039b000dbc31b21e2fefbe865497d08fc04d6ef85455e497130bc902302b224e48141c874411b75a2ecd2af3e51fa741308ece19f58d47380a9acf25911c5376556e4e5c6aabd45d75b8cf8dd30302047c435bb5006730650230521b2c67b3747a7894b58cbaf2c714d523a4f087f787a5bfc8971836a2086d420e42cfeb74f0dab0f6fd156cbaeea92b023100c7d95a485c53827b2c519773111e3149e1a129606d1d6c1bec94842776a49fe549e44183ae30889ee08858116a35d4a40302047c435bb500683066023100dd63465781f05f04c79bfa9c5f6e5c011b4428d67a6782e8351b39c68e16b65df94760d7dcb6b505473a71792c1ce374023100d590e8ad22f64037fb1eca69b3d9ffb65d7543029e451becd69e0410b841540d86f7b0eafc366820793259092fd65ce70302047c435bb50066306402300993297320edf262bb69c277f390bbbc41db49a05b80ad063145267c773b97c596d89c89423ee8a57f389b550a8d371b023065fc9483067323e2744cc23bd8c7cd6bb8ae7e62da0ced185fdddfb95e351a1f28c808a67ed24043271476b125b317cc0302047c435bb500673065023028d7f28d983827d1c55158927355201a0354de8928d6bd45f76f54515097eb2b19c6e9830077a76e480f639768708f56023100cbe4a65cdab7dcfd1c58caa324b065b5bb28df8bf64f9df3b20b73b0dafe7760951f3aef9cbb7e97f6cb561c6386dfa60302047c435bb50067306502300990c533143a9d4290eaa5c1a91eb353d69dd4068d7f0a061dc5117e0463f8f146648298d3904e5901ed77e4c67316e4023100c99a9c5697aedda1e4565c63e9b6946b685f32e049d39f95984c778134e37c532f0b7c204ad6c23a380ce421d98d41520302047c435bb500673065023100e4823d3bffefdd9ee902361874a228bdb2f523b3f12f727b803f7ae7d2b16239dc2aedc706d5d08fab25fe4ec47a2b6a023002b36562a3c81c184065abbbdfecd2deb669fd228abf487b954bb94df26c94dd3c75689813a6cb615c95b2899718909a0302047c435bb500683066023100fac767310771bb4520df4313c1881dec062e994bef16811352d217d2c1712d6cc4d768985fb742b7662b75bca47684050231009953e7210e9da53d3e4ddd3645903cacbd9f8b487d3cd60888368f2e90862ec830b3c2567a6788945cd49fb7bb6de1cf0302047c435bb500673065023011ee5c17ff99a9366df620db6c4814a50241c230e1d0da4ee74713a231f967be72ae74339b6465e8fb4f073dc2868d82023100a40204b7770175c4d6e81c954a97deb3d31e501bd827b0ca1cdbe9b7b05aa4260758f7077efc451cef4635c7af05f4c80302047c435bb500673065023060ed3d70aebae276d9c718a7255de3dc6d0e6079d8ff24018b449c29d9051a0cc7fc1484271cadd4f6a86e22fa5caa10023100cd47b63a20d77e3267b0ee0971191b32560b65a0d4ef3b5cf0646dea4376fc751a0be6013e308799c577518e56a9ec3e0302047c435bb5006630640230473421163b042b50cd588ff1ebfd4862acb67bbb4ae83a0c092e9d6786c8edd0f68138d70e22ef46ba2aa3da692a69d402300cac526b95043b6613a4bbbff38c47963ebb786a36086a71cd91f4f58ec72f6571e6a2720ed3a593673087bc7ff7d4210302047c435bb50067306502303e9c1220cafc4f3b06a775812174c7879157719e07e5da98777e5e6bb5eae640cdec28e1f438b795f3967a6f6c8dab120231009d47598dfa8bd0a038bb62f21db6b131bcfebd469ee7f5ba43ff99b92b4af4cdcad85e0a4ee7c2f3751398783bd443ba0302047c435bb50066306402307d45b7f32a38f8ccf15e715649d493403364d6b79fe362be1fc8fe84a1b2ad1d0398eb35046397aebf748fc995455e4902300ed997e9da444c0e1d585a7e2e87ea30d70012ae3d23c044b9c4211367ec2aa53fa3f1970e59ac7494c2f983b76e7d350302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ee320a9450e368221763e6286631a4b28bddda8cd9370fae8b0863ec9f9077c68f5b8ecb25fa36f5c35d36427c9ad480023100d1bf7588501dcd94b09663cc18b7ef47240e22abfa4d615b4384c61d69f630ae67cac383e431ea5fd9463711329f1a490302047c435bb500673065023100e85d5644647ec12337c1f1008924fe197dd5dcd9a269e285e30645a5cb60445043b8d59f88d80de9e4242c665f33498a02301bfbab6ab992e4aa9b70f7adcd0dddbeecb08f8d434e50df490e29a957166ed68ac347e60d656943099a052d973751b50302047c435bb5006730650231009fb4caee33c039349a844108bada4480624ba60ef966a00a39fb7c0cfada75f187fce083a3440943badcab8ad581f0600230308aba2295deb5dccc4b81ff6892b70753d071b2964fe6e5c10c549a285cf604afe82c2f30d8bd98a2c90358934522b00302047c435bb500673065023100f157c7bcc4df81c1d5685dd01f40af2f0ccd9c63214d7b9788827026e8afcd28b68dca195a66db31fd25fbf479677fd6023012fecca328b137df464cb7f3b46dbafdbd64a03697c6ac541294f2da0abf2bd091f9941014e5363ea9bce3b79cb587f90302047c435bb5006830660231008821946f2be106cfd5bf26cf166c9a619f9fb227de6c67a86e6d297188d4679a08c37ebe883cb080cdeabdc71738e0ac02310099f11ff1afd50198c588de4f87bd9050bc9823b10f6a9d0cd33cffe852a06502c664c280498db97c296457692b9469650302047c435bb5006730650230170dbeadecf71a9bb2d2271d4ef088f87d66946821b6f39eff7aa590c3392470504b5eb1c46cd539faa3adac8a6d1456023100bf9e8647115d86d5b2268062189c5b3a355f920cf330137da1ad8111151bc25c1c470db7bb45b326d8cfa22d27df23020302047c435bb500683066023100b0394604f33a557a9fbeb9cf9eef390330838fdd152823e8ec3ebcbfcb41898ef998b763baa850ccc580753a559bf99d023100fcc8fd05b38bea3a54b1be55f5c4f00d4247f17129f26190a02ea7b6115590e58498d37c017dbbdba87b2f50e09871df0302047c435bb500683066023100e64d9e3695c3e9c26602d7e9304efa2709c5bc8ae7c2e59cd59cfaba93e752976ec0ecc71e3769b5d69d0c46dd049eee023100e771dff258111f810fd1fccbaebf142b5190e4a89f36dc68e40af31d438f072b2ccab356a57e890637c160e2121327360302047c435bb50066306402305f4592edd78377e2a75a8e563b484086ef361ed73ef83c595ac3f069bdbf9142df2699e20ed8fdfbb3eb853e9ec7a1ac0230068fe3d486c84ac0edc3e60d11ff45c93fcb7b0a32437a25e5a05e50fc5d55a01872ef793686785316e6b659a90d51e40302047c435bb500683066023100de4e9ab89c7c7349729b1975535f7c2a00447442cc122c288b316bcd4d3b3c4f1db02f248e1c3fc9f62dcb1c8692d450023100ae07eb69109f1e7a52d0dc2ea036426b40dd65336a61a2dbea44e5889e254d5666d6d04ea8fc08f3dec12c670ce4f1810302047c435bb50066306402305384cabb8791e4ca855ee80c252309720a50b1c523248170942a7e9495a93085812577420530cda47ac7306a1cfadeba0230203973512bb64b397592e56a82976482e9400bc42187ac6b506b2a0226d6877e86f2caf0c655d2e5d03daeb8a70bf6880302047c435bb500683066023100b741bee31cea818ffad173015fd52c266afc3f0b99a80c65d4f51d3d1241b1d79dcc5e776687907f02cc4929887bbd8802310082dcc1be048ff30868795e01f81e334e37d136b422c8e397454ac862644276d85c14356834a6509fb406137b45ffcc130302047c435bb500683066023100d5ca36d3db88d80e199f3ab99249db727a006bd3cc884a95dd7df7a17bde60ae97fcb4b0ac2b2eb911910c849fcecf5102310098ced9d306ab60910dd03cc5c447f73d7abcd4b7cde4c2fdfc843fc36f763fe7fbfd8942e7fe46dca4b3f0903eceb5b80302047c435bb500673065023100aeaa94f622049fc1d9eed5770e682528eefb987a05abca710dfc55e259febe61e81e83bfb4eaf20f2f9ed433a6f07a26023045622c4732d47866d685b8ff89f2981f90c3ab13943247976cfbaf9cbfffbf8bd7dacd45ac84fb5ed87fa2f207bd94850302047c435bb50067306502301c212e1a4361d50e0be26ef4345ee3576a1add6da3bcdcb302d160981eef616b37b2c0a9a44db3739b8660e0d05609d9023100bf1847a570592823ce5b8f7da77b461685a00ce3d7964a9ae7d7cdce258120c80e8d99a3010b24a2a9865433d5c428260302047c435bb50067306502300e3fe5e9f2fd4fe70932c37a47395ac15a561a7d30a878a9f963f646e5cfbb1a0be33c27454bcca9bb74048ae040a39f023100915e331c0e3d0a93b80ab882d5bedbad14560cdc0712f776ce6c5997b3724525a15be2565079d3f4426d1dfe322a6e9b0302047c435bb5006830660231008f07c9ce4fa0cd244e14d8690d2e6de91e5af4e0002b9ffdbf1d9e2549c4a6df8fb18a8aa78bf5fdff5666f3c7a66428023100bf171590224b6334210afa0421474a31ab0fb9552f8300011d53d47f226355a9a7b038cf59192c2fd0ff757d4f2ec1af0302047c435bb500663064023024fbbdaf4dd451c9f82c45c512c828931adee85312064762323ff1769f97760b80b66f6ab915ca39f1e18bf69f62364d02300a8bf77cf7d4d17497296359fc5af06e87eee34d21309f41694953fca7490dd9dc5431fbc479019a63a93c43d1d4f22b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ab3c9f5dfc7cde6d78b13f99c31ef65bf88cea246905089299ad9cdab00d41e2219f87d203043894357a922e4caaa2a002306d8c01b07701590837d82dc8e87177f4c063a83ff4d4bfa07a3c4b4e9c925ff7d9bebaec3665616e5b2ba6686b0ae8f30302047c435bb500683066023100b897663d682fb58f7bf1a93e69e6f91d6fd983849c6a25f12c97a98b608b0dd8d7173f0f6ad141f0e2582e97c8b9edae023100cb8d00be428f331e6c16b174fcaf068883bc1cf29bf1d0cd61e8f5ea6b37664d194669d29bbed03f2d5573310028526e0302047c435bb500673065023056da940768d71dd92ce0b2ac480853d4fe19afa2ce41bfa175ed38187755d27f00da386ffacf86afd0c2ea1d3ecdd8c8023100bdc3fee4f8d8014d7d6fcfdad136b622c2abc804b40669f6dc924dddfa5ff5596f1bb6f643b0abb0e12223bd6a362b070302047c435bb50066306402307248165601a2731d1521969ca01e7f340e9e1e891bbb6f737603f486a4a09d2ad1f13c0dd675d8edb020afc36c430831023016e9185da22ecf2181c6ab5dab788f386fe5a4d4fcd3edffa1a0c56ea487621e437624f9c4be03d2c15c476cc5f904dd0302047c435bb500683066023100af086bb8ba097014d01e3241149bec7af943667720241c83ffef5a30af0ea748941225cf37f2218b272711d3f045da570231008c55f220d9aaabdbccaf70c17e32ad789d3cb0e512697a4767b6127aa3ef38a803b50b310027de4d27a2538101e8cf8e0302047c435bb500673065023100a731bd4e0f0ca6d2e94fdd3285670cc1fe90e1682c0cc05b7d7c7b8b395faa453f9e0718d947831380fc5de9b98d13fb0230411283860c31898ffcd776574a75c91c726cc994f6131b67379572a70fde744b1dac6e9202d85d1130e06139e92c56ee0302047c435bb500673065023070239e3d5b361b85e4fa2fc05a9564559f36ab96ee911f731eb3920b92d911c9ed200f2197c5ac65359c4fecb666cc35023100a5f26bf2dca9cfe61819d325d382791327c61d4a6044c87432cdc853cd094a14e9d8f0aa1296668c08dbf8e5b640cdff0302047c435bb500683066023100f5f9c9f5f05eb4e3433ae3b68903f1ce27d2f853b73ffe713287c738fc8cbe563460b6a51523e3a138088e264c11898f023100e57a135470f832bfda63c22e1444ce9b5b2674b26bc760eb3f26803ee6d6f96b7496bd760254312aad35def7738852240302047c435bb5006630640230037bf416843656a8dfc9e39716108f763f8a9f01df07868a7230f0536c18818299e3eda649a9ee08846820629be7efe902303abf2267ca5cefe2827126c0443767abceb59e154a31637108d7182c6da6180c4c6461e036847961384fcacf56ce7c030302047c435bb500673065023100af0d8bb9b00dfa2731867b5bf764d0bdf13aaedb094dab6151db05ff2e9d4a1cce044755d2a6979424b63c0068566bff023053ac99b5f8df5a461daeb525bc4b6dcb1e426b8e603c8727d2d4e12c84d1d8b54967bb827e99d46b20d26ef9237a6c740302047c435bb50067306502305ceed03d7eea69c04d51556b1f37b9b906c93f51099fafba2a612eb92ebbc5ea7a902da9863dc7e444d9fc45172b9cb7023100e8e3270a03f88ac97eb5d0edb07e2ea7ffb08529ed64030340f15f7d10b1b4799672bdc7c77174f3e939fde20d9689720302047c435bb50066306402303e5169a2b9c6476af606c8ffee69a5ddc2859fac13a0fdcd0e9113fb6b7575d72989cb6f547c8b69316dbe960d4adaa402300204ff823ce24c0a4f3618edb870ecb503c7debf7e51e6e12a54593060f67916869f1e5563ec3e66ec2af0ae7902e5570302047c435bb500673065023100be36feffb4993a79071a112a1a2ee3e8c587fac289d2021f86a3d10b4838da8538b5b7d877b8952462b19865943ae20c02305ac4c55bf9b4cc48f77a235f9a4433a6eb33b180257fbc558949c8f09752c0d075d475e5eff254cfdf430dc5fd427d510302047c435bb50067306502301f7ad2b579c2c1957b75372451ad6eb62c0a0c9bb7cf26e14e48537e1b25874a99fce6cd54eedc93fe6b8c75f64f8b55023100cd812a134b8ac69c883aa9ef0db27b42ccb4de5a1b1bdf001af4043faee81b55061df161aef64ede7c72a147f36d23a30302047c435bb500673065023100ca8c5e15e3a017c9465ffdf8a5372dca3f943861e17edba92fb2141958c9c7ff9ccbfa411deb29867f4aa7c17babb64a023010ccc5cba2264c79e8a4625fb2b0ab83b927055c2b6a74cf8abf569019effb1b88b3ec9daea86eef55f414c63ae1059c0302047c435bb500663064023051ec83515b5d0ef6c40aad8808bc2cec14a86201315f63066d968bd81b222db00616f24e3c0aa6236a7f26bf6883a75002301960ff4b8584fc39de17cd76364dce3aba4ddcc426c3858ab621fee7cf4abf1bc8020081b627399eec0ebb6bcf15631c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023068e89a26c4169175d3ca2340144a981f31185402145de341f3b2bcec47e15415bed8da7b515139fd5ddd41d0414cd68e023100c0105b83dc043c521b6c42a330cdd22b199a1d9ee0ed2ca6a8ccbdd60386b1a90c7995b83bb9db14ca455ff7bbb635230302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500673065023100cdd97195c2af4eeaf7ff1a28d8a59f1db863c738fc7a3f97ee188cadc522c979cb383388a05eebad9d471b3ef2f4b8530230165ea130a212e8ffb021f7877f957ff1b4dd2e9705d7ea450eaf9f614492cd902edcec086a60584b56f5bbdeae910cc40302047c435bb500673065023100e3c782f4ec697a7c7ce5bc77504a48d2fe5109015a919482de620dc20ee608fcf98d424b7c7404322c7c6e8b266f5d3d02303918351f521d8c0a131b64fb349230a1494b8077e5b621767d18574506c9d626d6ebec1a0c9287302b9235c171f2363b0302047c435bb500683066023100db5e5e8ccdad6bcde4e65bbcc05a6f4d3f87ab585ebcd4436f0c23f862a888fb67b836eb3400f73fba1ca4e2e3c7f3da023100ca9ad14384cc2ce8860efc9730740aa55f1ac1dd24bb840f05ad4603757c7bcfc09a41f114533299d3d8a8e94fc6a4ff0302047c435bb500683066023100e0c8938678760696944f964c5e542759172bbdf230488ff97209b8abb8c06cd0a939f559cdf0c63764e2a3ca4c215557023100d43babef5140dc2e954f648c6aec6fd866fe9b8eb5a8c6445452650620898dabffeab354997570db88a80bdf65824a9a0302047c435bb50067306502307aed244904d19d6660b439c298e9967ecb24b21ebcce05c8e5a153836828a4ce9099ae3e6ea4cbecbd6665eae8464050023100c007fb0ab08c60b482a26c04e666ab258a4343b075e0c0b39bb3f234af361f9d9abf69141e622997992f72670f83da4e0302047c435bb50068306602310080014fa7c44b3252562c43f882e2a4bc504da43a47f299cc5b9d13589fd9b6db56c29446a83641f4266b5d71be57b1b7023100f39cbc3c3037201224987bfa31151f089b504b90a20e89e61b8af5a0b611d375522b421b2e0656308cce2d381f914ee20302047c435bb500683066023100b2c6a168074fa98ea57d2eed5bb878e1e04a89add9de6566cb5163793343e12c53b96952cd99aed9c027c1261c0347b1023100dc8062f6d28be82ab8815e454c787e3157f90c12ad5e97c9d01a84cd2b25dc8b6b3af70acc021d5b0308d9a0507969030302047c435bb5006730650231008d73cf68ecdf4435967684b0d4d7d4efa75e1f90522cb8491dada424d9291d10effcb7498954f71995cacf9d374e6e6c0230736b9a4884f4691ccd6e3e01a849d772f0772b05bec685fad686ce2508aaed5e8198bce0dcb91a53bd195bae48a0fe250302047c435bb500673065023100e6a335d3c633b4fbcd034146722aab6f2a82c9fdbce935e276a2500bdedc23d35a220946d2e0cc539c932acab6dd7d330230763a19e5908435b49e8f650e0dcf236d8ead8e45520d162dc5ac3ca4fdc22b5c0c2e86ddd46d1b8fcb9b0bf98b6f66f90302047c435bb500673065023100c65059da6b85959f9b9505579f90283b720a5b239b0af22b43881e724221d1b20543d2fe085941349100eb818983845e02303142cf793dc6ac832aa60ef19cec5c867c174982268f66a03ce11ff64b12e3a0114b36d057806ba08711edd8e1e6fd5f0302047c435bb500673065023100d270bf854ffa767cd0c59f8bbc39479378546a21184fb3599481aea8698c485aa5c3cb64e2742d42ab1b7775cd809fd302301b3be639f431ad7c52772f81e45f2cdae832c560c1fd69fedca56aa9d0851739c24f884669e81608a045b6a2e56908820302047c435bb50066306402303fc9a3bd436690e3c50d0af6279ee122819b85cff5f1d5bd194560b795ba5b8d0252d1d4ec08fb5d8b5841b0c33f7cd3023076809c4fdaf30eb287d17a45a53dcc51ffb77395c5dfb95187ab1f2be95b181f41c38217b4d2a8504d4b8ca9d3ce96890302047c435bb500673065023100a60611581b97eb26f99e2e09d535ca40b697166b15a3707fdaf4e369cd2f2aac72915a20c06d8b2573417f5c9b7e2f6102300fdef4602fa964fc6267d2ba0050d69233e231f334299a510e8d1e55bfc4859876e2bd91481f5cfbd13f138ff9a396530302047c435bb5006830660231009f3bbcdff7ad7e29919ad6af0e58d724320bf4c0081d2be9b3a972ab1a74c48e95ca7b12cc200ce21d18ded49578275d023100bcf74fdbfb76cc86b9b8522febaa6eda12744d4024a46d86846915b1da7113962eb4037e6b64405a233d929d1d4fc0530302047c435bb500673065023100d6edc686ee67d55951102278c4c361c9a2df5a4129312df23ee45a8b3b1af3a2cdc19838d9dd4c0f5c421eb8f12e204702304b69ad55789522219596c8713ef32a36361a6eecd9913d1e90a115ee4d52ec0fb353c1aa59de6d8dce8cf5a9bf3f36e30302047c435bb500673065023100dce3faddfb0e13051ce1ee734baf9dc2a52210636a8ac55451aea3801649312b7ce9ea4d24396a967892ae66a64f9e3d023038c600951afacd593423bfcae6e2769477b9529d59f068c8887dc9267544f37f8cd7e1a8af54c95d2f008674e19b27960302047c435bb500683066023100de57a9ff987e2e34b3a3a72c924cf2e02f2cff61d1d1df0e10123195fdbc41c1ca3373d0030f78ab302b94a97fbc37d2023100b70ee10322fc649159f91cd2e7426beaf03e20ed45bbcccf7802cca91eb721dfc47958d48bfe7b1f0f0137c61d3d8f560302047c435bb500683066023100f4188b623e49698810e745be5f3964db751acd710976ff7bf90d333bd5480188c862ed239bacef57833952001a82f44c023100a61d8d7fe69dad0c0c3edcc0fdd77b7e96d180681648f7b06ccdc761707d526210e3c57dd7ddecf04e6443f1edecda520302047c435bb5006630640230428483e785606655d98f774f1c66034a8d019aa0074d64ad207fc4c980e2331cd9422cfa08e9fac330ff3e0648588dce02305854d694b305e3d62778bf1dd73f7e9b5263abbd05d363191e223f4e5486fc98d6d80e960b1e896867c6c03d96bb456b0302047c435bb50066306402302bbb366719cce438277c5d9312ec4ae00c9aad6bbf7b80cc373f8ea30cb180c2998e4a89f9c016ede5580a3e0bd2dec2023028a311ec64e03e88a3e7ff0fe92278182707b12815467149f31001e5c9b3f1c7f489653b7289568a46008cb7b596b3e00302047c435bb50066306402300d51248e668afc5371c3558a3c589e803df1e41a61ea6c1c0b67df8a708e7d82b00155ab21b955f7490a9b99da80b0570230399eb2ed9a84a7cb6cc1f9283a1d04fe6688ef006bba223cfaa7dfd14591ea5c58b05b4023d7a54b5ca56996d110dc4d0302047c435bb5006830660231008f4bd0bf6a0fc38450e2297cf37715b01684899c18084ca3638d3b0f11382bffcfc42f514b7975863cb021f9b0a2470d0231008453cf618ce09b0ee8c9b45239b0b551e4a5d358c59498e54697bbe6083c8224da65b6660bfd277e7405daa800d4c4070302047c435bb5006630640230541b2cb44af4f20af133ce7bfa0530d8d1cd65e8283b4a9a22d62c145e08468be605212f4976d157526d27aa8594dfef02305eb7989f358e7ac32097e66d8c24908c493eb97a2cd2519e9a18cb4ea95737308adf8cb182332671c912d4fa42d0bbb40302047c435bb500683066023100ad6bf2f3a188d9ecf05b02f55f4c82667e6581211e534ad1ec753253dae14270e50d1eb6050eed40e99861de5a18d1c3023100fae614b587795adc0f59482c9db1db22870a937b35582784e391633d4114a406e64184b8ce2efae0eed010b1e545ee270302047c435bb500683066023100ffa671007d00bcd38f2b82c9667a3e5824c5a34353128748c1e12072bce09f77b9884b2bd5c6a21447e58b4a736391240231008ebb94172fa24f7013aa8a97e50ea03f82461d0fe74d0a36ba6cb3e4c1b1c49ed1dcd693bfdca73e8889d2edc178af4b0302047c435bb50067306502310091c315e6e18ba58a0bc187762ca93bd0f83e1ed98e97798b5b521eb799da2dd8efdf9393e63596ed6c901045c2a1e95d02305c67b3ad86c422a9cfce0e7aeb823a7bc114b2244d9b7ee0e98eb56b6d57e67ab1be3130a88ef69ac4c9e6656eab29c10302047c435bb500673065023100ca366d1b1f23e829d63058e24f7bd4e8217a3fa2cb27e8802f9710dfa69a57459effbbebb1538d660252498fa32f8f84023060d28c0406f755a8046dcde70a845edee1a4fb3cc6eec5e57b5d53604152fdd0c163e6d1b6758b71d8a337b25a2d2ff20302047c435bb50066306402303c3925da1748325c8334978ea88d64ebb6fa0a2ac783da02d310c841e23ad127d115835cec341a9658f29f0ee2d06204023059341addb944311c8001c2382b40e289d5749ad76b19872c3cbbf73ffd188c7a25f04e72192819f68486782f921f93fc0302047c435bb500683066023100defa1f10686833ec17ca915855aa8023399b40b9a9746b93714a1f153818531f282ff753c2f9f99cece46114da0b722b023100f16226f7d7669b14b5bf99c770165372cd2177e35395a436dae841b7cf109ff707b9a325b8176a0329e7242401850f9a0302047c435bb50068306602310089bfdce7ae968e1bb62864fff0e74142e68abe9ce1ea4a3cd1a2bda0efc8ff1ee34cb847cb2d867a2dc457f7c117b94d02310082cf31e733aaf82c4befadd117e373d9947c8819d39762aaa22eb497092129bde4180fbadd40ba0ed4bc45cfae41d6d50302047c435bb500673065023100ed117ae1043e8512be0a0a4a36087e18a6c73a1e239ef68a95f9c60e697649c26fe7d06aa06f71af423492fdcb488fec02306fc02d436e4e9a43e6218d276b1f42b83c1a81d26b77a9f145314e45050167a79ac7b18014855a76923aceb77459f2c30302047c435bb500673065023045a82bb784434cb358522cc1d4e88677b0a06e47bc994e079855d721f942dc797b5a7e6525de52e8e5022dadfcaaa0cd023100c0ae74d9b76d894cef6fd754a8b5499bc51f836ac14079e28fc29fd30ca90770e1e19af388e98c0f4dadf79194b597620302047c435bb500683066023100fad59725617264dd6f3500d497a5e1e098f8b0b9d47f18fa02f6e774345c1ec33f2d7f389465458217b3d269f9d2fba10231009119232497316f043b8ed65a3d391207d4313932cf2050ae20bd78d7ad1f83e4980728b220957dc13961075652396e010302047c435bb500663064023025ab73ecddd5689f8f280128f9b5ee00092456e861cf1e4282c40e94ba7fbeb49d38dba7ae3b247a9b6f2d622f3cac3302304561321f2008eac9d2b9cebd751add6acb6431a3ef09792ab6bade0f2f00fa341857d8875e970ccaf22c85b87770abab0302047c435bb500673065023019d16665cb3086b33120855995ec419ac6b34007a844b41ee32aa49e82f1315b16d93c548d30888a1d430f49cf085359023100f2d37ce62d53f9cb76e12f7d6e5a4466acda79c1181b4153d9f4b5b5ec2a24e3051a892afcac8f77bcf497e66298e09c0302047c435bb5006630640230659d1cdc4921790d064dfd23efd046119e3255084808770f5ac29a56fe9b06dd27add60044004fe1decc8582707adb54023063f5853017069a6443d65e10f5f18731a65f2da2e6095acdf3080ea3bcb55f515176cd5d2eba0ab0a52c422004093fd30302047c435bb500673065023100b69cef424c353c8254038b3b7d3e0d375a0e04567de8e49ecc4b5984d839f7ac0a5c5960ae6876219c9cb0bb06e12876023029fbf02a4a124a15ce77a7b593740e657d77406a13a8cb7ed262cd5de0213ef60904d2cc4981808028789ad592b672fd0302047c435bb500683066023100b7edc220e2cf6a44fbb1c92d2cb3f46b97411a7b259045dcfd1be40343fe9b3392310cc5082c641cba6306c3f000a0de023100c8561080c486b6cf306f107912349d2fc9cb676debf1f7dbe1ccb1f69b556502a7a26fd30f46ee0cbcf35025c8a2d3380302047c435bb500673065023042a6bd47c63277bfc475fca71cab5bbfba38317409a0ebbbcec41926b5fb141f9fdb386499fb26ed0873c68bbaeb729c023100ffa4c158585ce287967225273c96ec2817394894045792976ee2de1393e9a8c26b1f81b22e6ba0ca422afd2e097ca5b80302047c435bb500683066023100ae746b908d153ed0fa06cdb28353152a9e02d1212e94e5f4457594f0f37e1c90014451d465ce22e60da5cabc6c2e5d51023100e3caeb74e49fbccc5a0fe6f8f8ca3eadc0a77b39dfe2becc542d8c30cb46f3ce6e228f90147598ceed1b31f19045e03f0302047c435bb500673065023100a14704e83c6b701902b2cb453b20d878b2651e058f820dc3314df1fa39e0f4a5befedd95505fb07b7d928a2bde7c965c0230587ce0bfdc54dcf63cbbdcf04836cf93c79ec04ffc22f17f42413e293b066d982d53cbdfa336dc2cb8996c2427c2a7390302047c435bb5006630640230304f8c966dee606933a7231dd8902d71f67c40e6ebb796a3bb5e25c7c009a0ea86170336de00865eac632c91853cc8b002307baa6664acd9ee3c98c37e156b295c59b03e7cd40fba46f35d5c7d2322db75b297463db3fba918dbb11dd41230ada5900302047c435bb500683066023100f93a8e8adacd0b256c7e3dacde02b8e5984578ef5fb0055c478a35fb57e616ee5adb1a7ce30edf30423ee45147944291023100de16b777a0816ba34cfadf5a3909aa31129873b9d32c92ec268f1154c1d30d7cae8735d5472043ac2f95009691ee0f1b0302047c435bb500683066023100a137f06cd947f49317eb49e08b805b25b7a0934372451c9c22edaf9317b68fe2e2984aa6933371676835ba8b350157ed0231008ee67ede407e2158cc62f0a87ceb314489866f9d8181dd6a6829d942e1c9ecf2fa515a8c110e4a744dca63854cbbf87e0302047c435bb50066306402305cf3888c5a8ed9eb245d434760de9ffa9419287e53a530c60e66d30565fd57d3b56165c968e98cd80310800a9a1c8a8c02303825f90d62021314ac4388ffdc0004369c35e5b9a77f79a70d8ff500054c5628c219111fee7fb07fe4525407c7a3a11d0302047c435bb500673065023100e44023b56336b75c0df1f7c7facfd99c13418839ff8bfc4ceab88ce2e85dff696fad6da0694b3cbc5122db644f61b8ec02301c3e5afa174c90152432aea7742c8027a55d489feeaea893cc2daafaf94dd96873c59ff39a04c3bb6b5f5db7b2bb90f00302047c435bb50067306502310083b8c1a76a5340d7fe3f89f00bcccb25f71914547f84d12a1267ffba97f8398cf85c9a07cd0b1fadda47964d156ee2b102300ac1182162caf713cc4e6db4234d8ab26e1712ed7cc50bea828448eb4134e44a1fb378bcea90939741b724106de075420302047c435bb500673065023100fb01ee425368a5df3bac036127f9475f9f0d0651f182ba24b86303aea3146fa7728ac553a34424b38bea4bd33204fcc60230389b81d00d30b3900fb18f2510793da314f2374a72032caca36706b3ef07f81aeb60b80eae15c8e970abd4b189efc5b00302047c435bb500673065023000fcbc4fc8e9c9870b4273487a88dceac107096516c7b30c12a3c6bea30e2d86758484d091a0a92779fd2c57e237359d023100c5ef9804fbf18716cd3c16d8c03aefa8c868adccc6814e1379e4a54998ec98880792d9cfd88b758b2701b060751492b20302047c435bb500683066023100fb610ffa6397edda2832d1a6944e398cdcdd4b7eeae3573c211f7967ac22d1f2786028cc2ea3f378b0d7c3f6406756b6023100d6fceb324c28700931463f5144dfdb261cb961bcd769ac70ab0a05e41a82fbb165114bb9c2a3290602c468580a6b9a770302047c435bb500683066023100811391d4bc53fae9ec8a1fd435d43bcd4955277c23fa577ea37d021afc3837659d047e05869bb7fe3e83bfbf58146bb5023100c381a72004d1543979bc1bd58dc9c8b7f97a5859e6ddfca0c0d79f6c7088c9fb307ca7dc3cec973e9bae088daa4075620302047c435bb500673065023100e97ad97fcc2f77436310af16be1668d8d24209cecb3a71e36a81b371219f7dfc7b781caf0bf29589bf42af061084bb7e023054f484fd7f2feef850cdb472494a50e4c6d319136567874e334b5ddb577b191f0020371b93226cbc9be624f2591c5d8d0302047c435bb50067306502306d69b2209be495b3a378e6050be8eead58417d8421d87e87db784eee044ea4ae38d9e8e4c5cf96ef006729765d12af77023100e1cfbb07db19f2133b6a1b2a11594b21a02e6c71eb98a857e0f7734a7656481153a7623bb292e2f2034ee2b0795f4cb70302047c435bb500673065023100ac2dedd61709d402b71bd2d887333f70ceb6cf5371962b2394f46b761c0e31a28c6f908191f9e52ecfe340f1ff7a17f00230297f49b8b3f4beb6b205357381452f38461ffb344dc3f11cf1620658118b26975faf6581cc8e732bfe51c4386beaa0f50302047c435bb500673065023100f4029d959279c1926c6791c8ed2a693f5a515f896c313483f3572c8b7332d71a665fe27f3045fec18008e89b078c987302302f2d27d22a11c3180934636c7dcd662e3a8539659f166110e7fce262945fd56206db9a19f0a6a8aecebc622a5d26d94e0302047c435bb500673065023100e9fd1de0912f5e22fe1bf79fa283d1c334e5973c6ce6775ced76dddf56107081c747712c1f31e269db0ee03f05ec265e02307f1adbb5f8d9fce48901de098e4165389d1eddfe1dd0c5e7d0650606550880049a3e7e54061d9ba240a28e910698ccb00302047c435bb500673065023100fc2d02c3ae54e4a6ef66ca785ef93bb1bbd6cb0b223e8d9809b6b486925a577fd75faece1a785c527623e9770dc951960230272d30e8bb19e14469e138de9369367317c5a3651b173bf960990f1d3efc4d5a572daf06c8ec865a4e7f12027db3fb960302047c435bb500673065023100c749d7762e7b9a4e5cb061931136cf09d7c29263a27f3a75ca8b81af1db50b03c27d0d67af2985362e5c63bc082ced3c02307cfbe4779786626b376013220a3a9c2addecb1838098dee475f730661e84e8a891409ff24871b18d48f6c8a541eb97800302047c435bb500673065023056183a2cdf30df2b040e38d19348bb0fd9b93789eaec6625d2012c01a4a9b7bda00edc5e73278c35c4e3970c4e0101e0023100a566d95c1c636c9e4dc0d58a067a2e129dbaf292a25fe2a05a90e7025e2ee6e73c9cef96165d8ec7d0a7d538a2abb25d0302047c435bb50066306402300fba3b79efebc5c65f48ade6803e11240f2fadd7d05902ab5b7457db44f514fd2b3518158d27d8c8a8a5bf7ab09274410230136b7526a51c6ffadd306dfc59e2e9daabffe652324308d9db078749b1b4c1ff0f0b151a7acf504e5ea1683ea8d3a4030302047c435bb50066306402307557d5ff94f0dddbe661ac49816df6497257253696d6c060d3284442ea176d5b0102062fb4b1fa51b3530049be0571cc0230486286f884875cbf18f2f74334951b14360d3352aea9f9671d298f091b10be329d843703b64b151fd633049a36ef8c1c0302047c435bb500673065023100bcb62fd0570402349a4d381b095eecb0b5e67a6bf19edcdf26929cfc1f2bc55f118834ed76d95350caf984b0cba0a1cd023049ff4afa9616c6530ac9e348ce6db3d71b9628bfcf3f324ab02208b35920edb3c69a475bf2cc1792368b5c6144c561090302047c435bb500673065023016c7a1b429e4433462d5e553ad35159f1b74d2dda1c289e5d7140d8064ca1ad3ff7170c47b509686394e6c6289d43b67023100d816347c9c9b18222ed0b6bc6284bf5e32d605983e08d9552daf39a5b9807fa33e8cddea6118fd84bb35ff2fdbcb81f30302047c435bb50067306502304628bc6498bb3cdf47cad70fc7da06b17dfd49633720e4370c0cde4b9055c1250ed47d37aa18891245da6e5046cb96030231008015dadad90a0ddd7adc35e2a016ac66c94026b31f3b64576d25672df9435bd38d38a848cf2d6c8ec7dead359600bffc0302047c435bb500673065023100de58b0ce65c7ef9a1721c8fbf2bbf61e3dee438a98d4032473d0b382eb1a7f288fbea234a9b36af66fe6b63511e4e74402304a7099a7b88636cbf12c495627af0761ec35697e104f4e58f8d0bf146d022abd5e6a50535309bdbc15b1d16679188bfe0302047c435bb500683066023100cc35602940e0536899e450a0f166024e08e27ab83b2a73e9308551bf68710240f0df45ac175508262109b44fec1dedbd023100c7ceac36151c2b35a778dfff5a0e80a174c963cf7b18ce55d5bd990d5df988c2447a92708dd0d387a3bbb1a033e98ebe0302047c435bb50067306502304fc1d26e88a6a1a8673f81db72b32314eb265ef01980fb73397167fbc763de0551b5c73228f4e380114b155649f1a541023100fe539d9aa99eb566b88410526cb63c76b1ff144c61ac416da83dd823d4180862870f9f5284d0d03878ec55f766ba2fc40302047c435bb50066306402303b3692de3912b82205ff65aa9a825162be9cabae16a80460b7dcbfc08df98ec88545d45eaacc98ed2cb0a46228294140023022a3bf9b21e3857bdb00b476663913e88f8c1acb218d3479920f920e2c5a8cd37b255a0debf5b66e6177c3536f5664c00302047c435bb50066306402307c5f017e3ee3c3f4d3bf76997f82f478a1166c1ee9c611b9f4d284756b4fa626df265c4273e0e2e733c722f254791034023047c914483f88b091afced23285dbc112961661196c3f9e93078738f13c7ecf007e596ef9cb2e837cd6603b402c2a033e0302047c435bb500673065023100c7b8b021fb1f34514ea5346f67675a862e6b760476695f6d07282b110308c651b7afac9268d2e6dd19176c2229468d4d0230286ff4decd65a7e75fd66a8110a16c090094b41a394d55095a65c14f824cddb78f3187436bfb4fd3da884a4c031be1400302047c435bb5006730650231008ff4f4be72142d28c05c7ef70b34e10130d171aea51038c77b9f9ca8671c7b56613668da5eceb4cb82f3abd5ef44ea9e02304bbf222c76889b56060e3e981d98000e8d79c68d8a34b84174763fa20defdf8f6824e98c45fdc82afb1d82695ebf4def0302047c435bb500673065023072d173bb84892ed9dc0c24e380a93a5285381465efc2aa526606c10f6a8fc9c8dff47bb50f7179db8ff9f608be4192c8023100fd06b917a7041c2577c20854bbb165fb857ae1e941cafd5d329b590a625334e5901396b35ab2f977c80578e8936e87d30302047c435bb500673065023100b75f3d104ebf6da37761fb1beae25bcd857e6956ac2a7457d00aadabffb854118a6069f03250f55f2446ae1e89599e27023045a49f4196ba5188aeba860864c555d9f0b75ca55dc2cea4984a46d43d2ba6f40253cc1b6de453fcdc102d79151a2e7b0302047c435bb500663064023055ceddddf9af4b9580cd231cb453e18df17e512d0cb85557824b7960ea76f9b725f8babadaee2522e44388f2a1ce2df8023016466161f5523a7582404c4a13e31f592f47f263b8a13a80c9a6971771af8beededc8d7b41b35255c3432e85748cc6190302047c435bb50067306502301656d06120979021a965cdaa4d01830e1add9d73d4abf6b31a077024413dd170d30f1b8fbd1ea260daac66076e3cb189023100845c29e6e7e0a699759119e145b2f4d3ac8a98266688d9709333b4e90015ed88900c253a3a5cd92923d47994152320a60302047c435bb5006730650231009936e5d95d0f3894b3492c48a803bab5299d14e6e52e3943ef67e373915aa39d808dc6fcf6c065520708ea2e8a190ea802306baffed2d75531ed5d53eeca8e036003eae8f0475dd0e29cb67eb035813cbc9db9d201750f03e7d7d5d20f5fa69b52750302047c435bb500683066023100e010bfa77a8a621c9d3349992613f6102d1ebec26f2e91658bfb03e8ab732fce5d8cd7dad3e2c22870336ed6882357c4023100c1089c10a34f374467ea929029ca3dc58deb6ebcf2206f3c230204c726f8d70742f67809a6cee1e58e0d5ec3e180fb810302047c435bb500683066023100fc74edba9491811f2263334f406f568f12b3382fa11288bd3eb3a879d0075a54fc979e3646f5445c0a576ea153f40007023100c5dcb3dd5f71fd363c208478c7b8d28d604735a55e587df2a9c3296d5b83c0ed9942e060e1045d8475c7a2a69f720d010302047c435bb500673065023100af9f205677a29beb87f3ebb7560f2de0c04a3c8154fd316aa46601ac193152251063d978caf60993443c7c041e3e8b0d02304f665ce2ad762d42967677393c3291aed09980afaa86b0a045b60c14aa28fd5d98a028f62ec1993567aa3f03a31ab9fa0302047c435bb5006730650230609a354872d3005ae88dd71de36ee0fca372009d583e5b42ceecadba863ff45bff9c51140224046766216b28b322b02b023100844f50fc79b7b82793cf57d0295c6d451056272b95a8ff1bcceb64d9285d0bb4255e3b834b5e026a65c4bf54e9a7efb90302047c435bb50067306502310098fc1e15c1f4d8220ff2416165dabf017ee93b1803da20d08607560de87dfb1e1f6248214af2f1f45c9f938ec3020dac0230208cb3d5c8208932a21d11b5e7df5dae36f25c3c5d622b00f704ce6208d2cecc57d88c174ef909d0b2a1fc4a99e7f5b00302047c435bb5006630640230384871881e08b8e652816479f3f7eb37d04bea60058edbe78d8dfda45f340323a4c00ec02dcbb9c576d425d99a37159802300ad1559c35fc5f7d357ac066f9393b4e2b74e5ce972a0059a7b16537d0211c63c3f3a747e23e151d9a2a63801afb5a8f0302047c435bb500673065023100caf570116a7b812b891eb26e49a10b3364c9b51dc9853ceac96f11d34f51b990213c48e7c9b980945204873f0fc0750c02305adedae0d978c32d0dee4e2e014ddebe55ff09764dbe4e01a871340f72c3f8281bb51f8e4e258a0bed2677491005b24b0302047c435bb5006630640230213d7a32794e9cd5f536572b646a2121ec5318a3c76c2a875806df88ef6b92c155c0839996e1d20b34db6b5d23465536023051bb8935cef0abe067f4f6ac75c204b6c26a7d99b4341598cb0c47e9f2441973bd0fd9e300f8ac8cacd8709ebdd65e2c0302047c435bb50066306402304edccc9d31e37d22e9c855f3b0f775a98523116b25584a4fc1d8ecb7baec2820f6be087d7923c3e18c6fd6d57666f8330230738be0582165257cb6eeef2e836bed0bf0c12a6ce68da8df48ec0f773166a7e62f8dc95891859b296e30b0c319cbd1380302047c435bb500673065023100dcf36c1cee64e5aca9fba194e3864053b9bd0f635b448c55c71f81108c83ea09c4770af4df885df2cacd1a4e06a144a202307d4728ec201a97d77c40bfa6da09d4a5cdcfc33a7f415c32d9aee836446bb5e943dc15511790a401b038e5ed52d9134f0302047c435bb500663064023055ca603d64eeaab3ebd19386cf85806b2f2bd9e67d482a893259dc675f80c7c6025d25394e2ab1366287feae03e54f36023024c0e5187a203e9a3e65d102748f0e801252001b8df0bc582796cd704c0156c7c94f9426f0a1681a50daf7f31a5611670302047c435bb500673065023046ce957b6082eb24ac29ca91dbc3b006e885eab0a2194ec175fbb2208865668a44b013df4bf4ca9e433a6dd49f1226a6023100e023875eecde0ed23b365670ef51e416e9cda59bdad229a2fbf1ce57585dd2260dc641f758b1b1af19f1b6a1362422420302047c435bb50067306502305316da03f68de7d9fe1938fe18a32a2f06d168f606d0fb4eaf5ac7c9d29b5e34f0a374a46905223a0b09e3be17655b23023100abdfef646958f78260a9c25fa6611b3b37aac6ed9607f2b40d2fd1a30244dea52235541a94aa396429325e73d5b639e70302047c435bb50067306502310098875d4bb0f447475ab7d12babe011e1bc5cedfa0be9f10b003c5f16da652038431bc6e9faa7663cba781aa6c64bd523023002988ac373281ec60e8ba02ef774e01de931a91d5ba2a5af1d6b619e8c8a80440d867c3057c92411259f8cfae71ad6ce0302047c435bb500673065023100ef3c49bb320bc3a1571823eca34d66e1b4318632c3dfd10112e1e2c620c605dd36e35fc30fed21e504cd5c18f4b2b8af023035925ea661447106279d3fb97017d8fba70cce073e166bb5819d1f6517ac1c0b0e45795471627cf530bb3e5e418f548b0302047c435bb500673065023020daabda309592884b8f02b577cd33a4435ffa9eabb1dea609b9ebe064332bca0559bbf47b822fc052a8379b75520079023100de85f1f14c60a84b55cb04c8396c6a2548545d9b5fc48fcf07e6d99d6e6cc7973d70052180f4051c3c6594673124f4b90302047c435bb50067306502302edb8371e558a6bf7010b09309acf1d1b6e2c1d98af761dd5aa36b81a6c8f3e090ae03ff74145f86339f63e396389f81023100bea431cc0a362d50067ab3093b2f9932032241f102ae91968a0440909e4d46e20223571075272a3d7a177e312193f9a50302047c435bb50067306502307ae287ef3ed6443a422d68ede534858b375b415ea313bc88abae2003831e50f7b4431203b09aa77e7395626d0ed62703023100c30e0ea70f1b71e060090dc35d30785d7fad561aac0bbdb2a706874db34acbfd636816e03846cfa633f1065b3f6c7e250302047c435bb500683066023100f9e73b306f20e37bb3f71ee5061721b2617e2872733521aab8645337326d7efbc158b85597370b1047e4de59f7aeda35023100db9231bafc2789186d3b10d8fe14d75364d70eeb1073524732ef2818010b204db81c43d1ee81dabcad92e27eae485d4a0302047c435bb500673065023100c5b5d1287662149586556f8fce83323e03251cb2615315b01a48a6821c3deb493cb39903e7892a5cf3317bcfb797ab000230484090b20354f2f252db1cb001a57feb65611709dcf5b15f528abe43229b7cd57cd11125f6d157a9b5a62be4cfbbbab80302047c435bb50066306402304d84128baa8292362f4489501602db055d0507f5615e1d6025eb38cbe8ed29e8cebe6b3ab27de5330f918c4be9ee860202302f7d43a553d7174d12a0e4564d061317f9d8b803905d5a54129ea47dad9bdb07a75d6634392556643c2fe13761637c2e0302047c435bb500673065023068db88967bedaab7f1397abd50bd4a54c9b8f4df0632d36464006527b12122aa4f7d6305842f91bad762a4fad11e1673023100f07fd6713d58ffa3b197ae560ab0a3685cd458582ffd131ace60b798bf26fda28af6c582ae1a4eccb2e9602993c318640302047c435bb500683066023100a040e76468de7f594f55f4ccf387d77b2effaccb9b705956cfa9d6e75312597722ffbbea3215745af43c9ee56bb122e5023100efb2cdc09504ad4ba11a67d68cf68dbd1f53d4e585bcc6801a67d35012914ab464dca580fc985577d451b5b85e51f1350302047c435bb50066306402305d5b658fd85162a510e8adf845c138e5dc7a2084e6f1034b7b24946025b52645f6cdc4f3ee9fe3ab6e5b77b9cee4eec602304c42db972fd5c820bd8b85632a7ca692a796238665e58e7f1396a28dd20512ea70b0eea2147fea90d3be8b86051212c90302047c435bb500673065023010c0dd8aceda59ad867305a9270d55023b1d8ba541d14b86e5dff726e563bc6bbb0b159281969b8bbd85bbf017c072e5023100ae041716d6570d9001a9f3089a0e4f0a7ceed6e3599f7d42307e0d319bd2e241062d3f0e267812df8ece3409438b6e6c0302047c435bb50066306402301abd1363dbb7e69dc99dc5dedd91deb6c88b5cfa945fa95f6f12ddfa298da9790ce05ad49e084deacf0845466357f1eb0230343345d3fd3b011113988d8df973d5e5d474d47d55507e09b20b2ae06111d089d20d51dd240e6bb33ce6b060217dca490302047c435bb500663064023000e3d627d7dea48cfe5f5092a98714272ed509af139574a00bb5521c2023f1e809ee9ef2509d36cfce0e51e1443b8f11023012e602c734908e29a540b7c00ecade9b19ffd8ffa162308a1bc69d56355dc344699ebd831fe5484e95d706deeb68eadb0302047c435bb500673065023100e8b38e88a92625098c4aa9096074bc8853add0bf9c70ce3b639c2a651e0d833686a53806ff02bdd3d36f5bf152ed75d402300f9d66d8dd94b25b23e4543fe87cd28ccbb69098ce7688d23a021fe93703c131055522bdc046b7d258928478270a122b0302047c435bb5006730650231008f46db7f36e4968626c3fdab05b96dc3850d97b2a15816db1081a784341248cd31e9c0cfbbcff341819dc553bbe5ec2c02303ed69d2140a038a631b56fd646c1692c3995c742dedfb41992c88709eb095751fb45c6b282a510cce3568245ff892b370302047c435bb500683066023100826c159324e69543d960b7b050f817d2698af9c4638fa64ab5c28efc47962cea2c63554847bec527396320e854fda5ce023100c7e7a923cc4ad40d33fa903131eeced79d12ff3c258eb24c2081a2558ba4c19ff8bcb49b22bbceb86402b9c9596150c00302047c435bb500673065023100c0441d766d4d59819df5a44a8271ee79b9f36f953f1a8081e4a0e143b2dc23fd40f8cfd58ac69e35bb57eef79e528e6b02302c69da30e54190a973a2935d522757f6e35d061e54ccc6eb1bae9fce895f266cb8cdd9be2effb954c14f055461978cc60302047c435bb50067306502302c62be91d963c5e7b9dbb1b6942c4108634f0120f82b8b024cbfba15fe1e2706abf2ed9afa1b619f2253946ac7f18058023100832bf582231bad01a913a3a019c2bb916e19ba994d73594e7a121e88b7f14757f6116904a4d32d172d08599ff12b4cc60302047c435bb500673065023100cd179479e76109a2741a433df4b1d1264de995c15168886f21f1cf9773660498f61a2567b07657167541a1e9a4db01ef02303031a3aa550500d44ef9dec47df2ef97a91656232f4adc7cce236a5ab62de2722fe2d99d69ce314186516a86683269fb0302047c435bb500683066023100dfb699078c150ad293306c6644358601e6f700f308e8f7723b2478b0ff0ca388846ca380b728141b5eb0afe6b187a58002310090a58d1c0583cd8a612c3604f6bbbccd6cd7ae2ab7dc7861e7240b86f1f93f113b9eda390577521a03fe4c88e8e7c6510302047c435bb500673065023050c3f7cc2deed5490e7b2348117a1a1d214afa7ce51c4edb1f7ae7f09571c715fa14afaaa6cffe251981dd8ec022ce45023100951ac6b5d5e4565ebbf5af6e1d800f6598da621e686453187ec5687382c880b02501a86fe3032d962cc1692cdbecce4e0302047c435bb5006630640230774b9a7be47887dacaf94bfe9488100b85b4b55e677aadafdd2e7e3603240379a4989743da055577ab4919103d412c8f02306a113bb2ba68636fdd0a9317c62d2be479dbccb01e7c5a57ab02ed37a16313745204f869dfe5168a28d50332fbf27e540302047c435bb500673065023100981dcd736b37f5520e406d6b560ab548721d1f02b5de7547c8ef75e00021ee92a1021a0b7fcc944ad2d3b1b5338cd0be023077ea25705f2cc9e3df3b4c92aacd52c60cebd70e8a9b2bbbbb6fea21574053318639b3d19bea7f9153cab6a07ffa38fa0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009c2a0fc0786264741085b48ae2593d20339ded4fb3d3541e2594252584cf795f39c083f31034854111d7ddd40d48fe0302303039abc7e54c026606a5458b5d36f97b0f169a0ca34a78addb9fb89fe11ddb7bb63fdbd70e35f211f4a286b680d20f860302047c435bb500663064023071ff3e261d7bff1594b888ee4e2f7ab83a7c16aa60855c342293e2ca3c27a2869fcc409b793e1109cd25192fc704849f0230311750520da4a04b3f53fe62f280fca44d86368019e2be389734bff497ab0275fa45efb586fcac8ce3c086d367e91c4a0302047c435bb50067306502304fdea280ac039af8e301b3df44d1153d95470cd1d271ccf587cadcbfbc4c8e669ffa6f88def32f2930544042cf1b61d20231009287c649efb8f6baff6935680c957f850df90a8d0649553f227f462cae345743550cc322f99ede3b393883c99f8c84d90302047c435bb500673065023100df1e16115c7333f840803856e99f75797d44e80dc6f88c3f7af0359132899db5686db074b80d386ec9a701ea923bd42402300543858e3181b04622839ed36fd2641fb531ec15ffd85bb2fa9ce53c45094a5535ebb47de705decff650cff846b6384f0302047c435bb50067306502310091fa34b6428366984f1a7b9c76c182fd093ca6826b8ed799346032c482b4d6a2a1f3cf34f8489e70705cf91187a7eff8023009e428413abc811dadfba270277bd109619e9860bcbcc3d8dbc18366bc590c10bde9dc3ae8ece0b9f87174916be08dbc0302047c435bb50067306502310094200c817057e1d676ac1f61312a548dca93c3d4c1e5a842d040035aa1a06129c00a247993c3d282d4532500258bb51102303ebe2c0aeb5ece893b521f08fc5e305b3fe87b521edfaf0f783701719fc7239bda66275ac238d2b42a7e194cc00a55df0302047c435bb500673065023100d4c18d45fc3fa7ae010e1204f65f9f97e6294f2991f3b5ba6eb2d0ad3853b4592d64456d1c1bbe51efaf96a8f8100a4b0230567ebea16a02030e7741a62193e16d1d42f3f35dadb3f8c66babf3d34df0f66b41145f17729759cdf23e09b27df911e40302047c435bb500663064023078e5e7f144a984ffc2b5534e7c506a3de6db149e200b3698db99af661807aaf531a3f98f199cbda65dfba6028caf05ed023017a0b7601a8f55a5fd66c9499b3412a515361af12b254dc232f564b649060511afa2975da289f8f05ccdddb9762f0dd10302047c435bb500673065023100be254adf1af5a075e33bc82802d0add910dd8ad71205ef4851bf387a088014799a0d3fcc81f042a4e28a85c4cf221a2402305ffc2cbd5b90a502b7b76fd3e3a200dc9b0f2f4bac25abba500c5654a2b0bf724d7f4777a270ce83d93e6f5f29a81b170302047c435bb500683066023100e41beec1bd4d985ebe0824b357882760a66abb748861ce43e80f7b159cbe8c6018648aa9bdec8bdb768346a0d23b40f702310099f29ba5170b22d0821763ed04d155ab372f3ca95e2321c8831af1cf5041ca7604414e16b92fb611949328acee3d8c920302047c435bb500683066023100ade897a65386cc539700baf3e586b483efa45b16e662875690a4c166ad12e38ef1bcd8b7372f58ceb8d9049ff35d7d7e023100dc24cd5f8cba37156969f6908e2428111c37c185edeba2371ec3d25d792de2c52dfa4b190f7aa49f5bf11e7b179598700302047c435bb500673065023100d798d0704d51b6156f34b6bb816c858fb1b909e91ed9b842bea20a93aaaaa0af1ece02bc961970632fc0b531ca90f03f023042765b9187060d85c9eb465c63d2162d4ad5d0ced698efc0dcee1794b5dd24265e08834aa633241131c87af58c6b34660302047c435bb50066306402300910cccb0be03f48fbfb3b8706b995a45ada1cee9d16556112c0dcbdc8858eed42b79dab96309d5751b7010456687e2402302f425e4f1c1a27e4c78fe5cb312500019ac06d8c72951962878d23a1968bb1e10704d365b5d64acfe610c4948ebf68650302047c435bb50067306502310091545b7284d640ff6e21ae860d2e1b8aac3aff690f6470d647cbeb9009bb76122e8925971c6ef0ae33866b6ed7578edc023068bae312b4dd62261da2b8f7b8bff5bd95c85b42f4c95323af7ea3c5b1397e617f2d03a71d4cbe8e4b137a56283466180302047c435bb500663064023054c50b148c1aeb6934b9e7c3dd15820ec8366b0b2244a516b8488f428a5308c457cdf543496a5099a425434ff433ee0302302f2cda014264b4e9fa39adef1085321ba65db72576c0eafa9f305c5c7be385b9f164871a6bed4f59bb805e5a99d8a32d0302047c435bb5006830660231008150239dc7dfb379c65cd04074c85970146ec3cd1706b1a5dc49f1d5bd555da28e79ec1bd6bdc1949c215bbba267e553023100cf0e46ae93dbd05c0eeb6d42e63c3b54040ba9c937f44b46961f493a1af7e6cdbd23f55eb5fb2f0f4c75be8724b3356d0302047c435bb500683066023100f94049069c909aabbb91d26fecf014364d9d4f301b828156cb6db992d711dbbed5a9fc833f6a79278c9e779a6e7b55a8023100ff164742d17efa178e7068dbd03599ce14fe7f07ccd5630c2204b409939f614fd3668ed8c8ebcbb61c220875d2cd81550302047c435bb50067306502307128b22d2c6faf55877fe64c7b01037bbe11b956abba0712a50ba9e1fbf6a7d3f398a734ebd2b1f80ef544d72564fce1023100976fe858d828b4515f46c836f22cf522bce85a7ebceb1ff00dc050d43a40c35a07c4072bfa336d8f8530bc0c515855490302047c435bb500673065023100dea3a95b9d5c05f802c9a8ba29a38dc37c3301d963a65bec5d8722407b6dca399c2474b578e368f44971dfe8748bdec30230032a9becaafd12a9572dabe710087180f2ba8f8782e3f7fd4f4ccb523a95a7c6273fd7cb2df4b699ce47ff4c683598250302047c435bb500683066023100962465c7ce79eab722b463d7ad2c2e06aea815777e095fb01b0466151e285ce037b8e00f4629561e69c7e1aa900933f7023100a0eb521c6262ff30e1724556ef5b0d0fafd0f5e5f819d5ee5194c0c8fef2ac5dda4e6ea367ea0a0cb5c9cb9c6f30f7cb0302047c435bb500663064023050be35d283ff9acb6e7ba43b8dd3e4040256e710f0207d984190ec6de2392945ebaed3007c34c7319672ffdcf4abe65702302dae24cb47635e5ded49d81ee4c92cbf29e36597eec5a207dfa4424f3d9b11ec7c64b2bb9595b5850bf8976ea6d994990302047c435bb500663064023011bd63947e1e378cc3d9a019d30d396f7086831030a4b460e95be4f23388d5f859a927a34233973923a85f068eb0b5d602300375b88448e58dca5539b7549529ff47663290e98890a816bc0a25d4f8c096f809c06d7e638f9989be589c355ee215620302047c435bb50066306402304c2e1acb6d97532399c6149d6f67fab9fb364a8a9f0280d56b29bbc4a05ae6b6388701caab2086ddd3604721fc69d6da02305a47b70c930e592a6c7fcc51b2f4f19de66d17464cbddba136d04ec0f65d6691191e02363546fa8f5805bbe08d2695660302047c435bb500683066023100f7bfc85bbf0410f1c4df17bb61dca1ea6c426994890aeef496dc791dc6f835b3dffe6a473551a5730b10db669b3108dd023100dec8e244c2d1b60565c212799eb25c600bf5cfb51667b90e3e21d4a1b9bee01c212a02d86119a470377cbd51511d162f0302047c435bb50066306402307ddc420dfd9b823318b59ef22fe80f19468aeab7c22e45ea2b1044ff8533f59fc3a723a1c59382258692543b08636b5702304c9b0e0e5af2dd0c3b197d09492fa5ac178f3e10fe2316b3cd4d2a503e0e8f147e8e84c0ace787fae7fec2ea9a3ad61b0302047c435bb500673065023100db84dcf8009c0861059593b34de0ad81b2d8b016965be202beed6c01ed0020399e52be6f8c2e77fc50c4f60fcdd250b402300299d04a8dee9f6e50648edbbe1825605b9d4ff4ff0fa61512fac98afe19ca3d30f2a5b8dc8768d67582c9740ccf71e90302047c435bb500683066023100a8abfb2d9d0bea3070ef269458348706d8bf9484ed9aa73126921caa55d345124cee5566e432d2c40fcc7968a2575ec402310088184e110c2c5ba573caa159d964e2b08b231a52d00fd07f47094e59e7fcdb4d68badf4367333442f480013284c4c5550302047c435bb5006830660231009856d2b13bafba9f0db66076daab57173cda84c834c589de031546c582fed695f47ebb38c9ca7bcd002d9969641d8679023100dc18149fbfad1489f6c0f7875f147f52cd4ff92c1b0951b23ce75742cad450e62e7b6c6a2cab43d84c22efd565d476d50302047c435bb5006730650231008759c07f6fa4c40b3c8f66f3aafa9d0f2bec24911db22c88b05d75e3dd32731e2f54e5a6a56354e7f3eeafd6922eee48023003f2873bc37ad2440cc717b3f5147c5ff1b7a4525425625a6bd80cb2ad121fbf2682521d66c4bebb6c1c5b93a76b3a670302047c435bb500673065023100c9882d1075654134f240ae7cbb0d81c37c4ecb01801be45dd5408424fda5e1cea396722a77c1c832c45275d374f86e480230089dca1588ee0ea4f383764ce0ef736189842921fbf7035c9d674679172e89deae5de24a4e77a466d5301dd2964d9d3f0302047c435bb500683066023100cf102387ee0f4aadff876898391e2284b165a941c448d3a3b864c23b24a8cbc9eb8af7c961481a228062dfd057a23c23023100e08137eb2262135e2cc8e9d9710f6d1ca0a7cb7c258585bec898ecd438072c36bb37aed9d02e9dc769d1877c201e3a6f0302047c435bb500673065023100b04aaae099ad48dab2f3df5169b5ec64c5672bd2f0e835257f8f637e6ba64c16ac5a62be1a6fb737d209e89a1d7fe908023004415b38c51e02dd510e8571537606ac5ae517acca2d571e3678e288e5257ff7326a223c952cc0e4f26dd250996a291c0302047c435bb50068306602310098f76c148f234cb2d75f02c1315cd8aaa3e3466bc5d41702bdb34d0301d469d69f66215c046da5e8c457682f94e5b7f2023100dfdbc6ed93f72050c8604f48b8f984c758496b986904a15b68af2e204b050d510f56d3b1980314dd0c240df779901efb0302047c435bb50066306402305dcc3b5dc2923c36568226a778fee5534369a549f4256462fdd459ad628f89b75f2779766e3b365d2797868e04f8226d02302d044c0b71e7e6d1dc19c3791d07359a9f6b2bb673424ccb1f53ecb5f60050d9424eec74e97a5749742818da425651570302047c435bb50066306402305b3c2c491f5723a7a86205f89f8ec32578bd644f26b3545bbaf3f1f608ff04d93af525019ad0638aa62a37063ed0322f0230278a8444446b6a86efeacbec89233e78d2a671f4a3c2551e3b8582530a7fcf1aac3e5d4c0ccf79748d3433c6e34b6a4b0302047c435bb500663064023053986fe8def827f4e9665907659c55baff8cc408a950cf8a3804004b17d1cd9e447794aa664abaedfabf4bf56695cf32023044b0056451b3b98485882f7293d9b52e276c16850ef113f0698f1bd39bf3474e69c864ec326197f5cb17f2826c1fc65f0302047c435bb5006830660231008ef34e7f9bf5ef990364354e951e05919191c93d2ebb4d8abdec19f9ae0691f0c96d9cdb629e8ee9899aeae2bb269803023100fbc47698b6d73e7feecb54e9cfac151382a8b4785ace272f0eb47b997f60099f348e3e60602a5e412c1a9b572a2af4300302047c435bb50067306502307a5de0161d277bffa3c921cf0b9c69b235253845dc0c535e1fd12c340c576a37f015012a31b9709efa8e4b1fc4ebc9ee023100cdb883d5dbcf9a64e1422b5f44247692014cc640bc4080343d9c163c1c047c52c0725ebb5623bbfc6d9531298b3b0bd80302047c435bb50066306402301794dd54053c37b14f863dbffa7e8521f56ec29d9809ce35d61858a1470db1df953fa4497057cdb2dfbc3b85125ce5bb0230561bc0be0db732a29639f0cc16fe0ad062153959062e9a6c834622dc65d1e2aa5755cf35bedc90538369a10b06002d090302047c435bb50067306502300e2706a765f6ff00051d0e388bdc2673aea652e6d2eae5937ab75a39a77c7b02d415a5dd15675d2044dfb4c13613b930023100b9b9f91bbae6591583475823a981e264306075fb29d1b3b6aa5da76ba88ba7d89bbd8e68653aa361b76b6b9d1025119b0302047c435bb50066306402307b15b1fcb9342a54b107c2bf178a194302acdfd909f80573dd85288d7f8f22d5672a6389b4630d1dcb997ce6f28b0bcf023063537fc5c40bdde75a673297854922740e0738a544ede661cb78934a69bb64ab057f042d6a808d45cf0ee42c6b0ac5210302047c435bb50066306402303a115f781b5f046444d83f36bf87312d909012ffb1a17ff171aea61fae0758c3f06f4a1ca1837a7471afaa8aa4d8e43a0230310b11bbd56041e2db7135deedadfb74d7dd44dbec8cc2673db911f8162fba55b3ec83ebda9e0e086280b885d149fc480302047c435bb50067306502305ae577ec627a7203b7f94a67eb585abd22688fff10bbfb22df2bd325cde5357d145772828325da27b4e89097a15a930702310094c94382ac0d7bc8c7bbad5b06d4d305891f39505aee3a0c37c59d040e7bef271cdd4e9536efc145887b3809e37bac1d0302047c435bb500683066023100b87498a7f15236e3f0614644b53d4a2b661cc5c224055d9c5624c9cf3669c0b6e9732898333e97289a55fce930a56e4b0231008a934c8c9d0118c5dc953446556cc574dba9f210b8a44920a5da244ff8dcb7a790b89c18c6ce2d01bcf285bae638cde80302047c435bb50066306402302b0b5984c38ad80a83ab9e0f21a5d5645df46ef40a412ed89680b53f34005949200d9925d8290b69d8a2a4c4b1a8cb4c0230589b2a5260df33eae2254c7e1c3ce8d4415c603e97ded8de7bc51bfea3c07cb67f5fba0a67ed53bce234ec414a1ab4380302047c435bb500673065023100943c6ef5a420d3749a764531bfcfdc02810a8c7b13d029757a7d7af79b03746d1139971686a4e81513a5fd6d6ce1e5c40230206fc8427b9c815211785eeb69faa3a62595f6fcdb892f4eb6bea1b352a7e603b07a71135d383f5ace2a4f4827f018140302047c435bb50067306502307933c0ce49e6f7e54d08e71357bfe5776d4e2b3de489d32ac572b70dab4157d46bc83d6832dcce54d6984d9e61525fe3023100cd117970a9bd6721dcde51a8dd4da190847d560601447066b51454d7520fab1159ae34bf9a39d1c8e0adea9bb9d7c83e0302047c435bb50067306502302b095ac7967c0451db3af3e4181c745ef46acbe4676e1410c8e4e7c9162d040fab42f323537ca903d5c1d4029f120125023100d8cc9f7e857442ace782b8e892ec46252379e008d92f3909c9fc6bd6a198cbf505c3eb20df1575349db4c44f21fc76aa0302047c435bb50067306502300a93680ade88e3eecc632415352092643f22d2e8eeaf85bf7fd0a82dffcf1ee0004dbd22f2c13daae311341943e3606a023100eac43c07a9abca89fdc96281ab09eccf5991238a37dc0060c83373a7304e012c0a720940ee6ef076fd69d68631dfd53d0302047c435bb500673065023100da4c73a153962ac02257920ca11240671788b96c655acd3181ebe92f891c5ebd4d746f3c582871eb1d060caf92513a6d023046966741f58d3b48a22b1007f36c40efce162d3aa72bc04082037143ee489773c01fd3b42f327d37cb353ab110d0a3430302047c435bb5006630640230276cef8b795273d1f9e9758f82095733955b2bc3d97a021ee48e05e6ecbce6bb7d31ea51b99c2fbd3d0077563b6a466702307507d46f53a1b1174ef043fc7d1073d2ce0aa88a09488c4822ef74d92a1db185fb128eff3175853a93fc019df809f8d70302047c435bb5006730650230700dafc9161a888a18706604a0ab64ced76499e6521b9c27897f466ad656562b6e554c62e5dc3dd0b5a2c222e4d2ce6a023100c3f96a69743ad2aa836059e0200c991e75618ffcc4a45dfc8f395af73d191bc1b7aa638d6e29dca05fc9af7c29f9bd0f0302047c435bb50066306402303f4ad9507894cbf00bc56e4389d60c146e50db849b507b1b311e20a6d7a35397f02655a39d2b9fdaf526ca857b510d9102304136133605f8df93614cadddcf1b9203b73740724165d8931b7d20730482c65157ec4969a3a55d493348312211becf340302047c435bb5006730650230487c699dc52298491f57f8b50fa2e22525a1422c92e9a2b8aba113ad23e42c2d82b9f35e6f7bfd11a9fc4fbd03fbc1430231009958a364aae047e41468964e947305ba9594f15faea62d5c1fdb245ba47dc048832b7c3f0145cbbf190da6a8687c7b210302047c435bb500673065023070a09876d33578ecc5cc3145f5e227feee3a7b2795d8b9d5d4cd32495cf19036e88d49cb1a97cd884bbd3658eb1c92b7023100c8106913912faec40cbbbf31d9c11a81b316fcdca89580cdb9efcbdb1ba0804b47906213c69e5fca72fc600fa29d320c0302047c435bb50067306502307141302d3d9b105e6335761933c52b39aed47ffff49b245b9f92cb53c987eb5f476e6f84db3371d5eeb8db13a0dbdd5d023100a2a494e0503ffb388082aac226eb4e36e33a1115d9aeff3c8e4d94505bef9e2865c83cc1ae7b4d49e36b1399a2f2185f0302047c435bb500673065023100873fef6014fb11eb974bd5e4e25cdf66805a4e6fb91c54888794beedd0bf7d4aa74133714e602ff9cc8d2fcbf0d93415023042f7d6c14d1c87201283603ead21b94f2018d18c6dd192c9e77243eaad40f8b7c71fdb1f0f54ff80210189e3cfd7d3aa0302047c435bb500663064023058c7b41a4e43244ca24810ef4bd352fea1a6e9d19023ca29d32151047d9a77aca88d10d4694417e07a3e76f8a52a7752023072ef0e851492d781fda0b8a7badf61cde9dd1997b9d7326aa40e8f907602bb836522a4eb741182a4b87e37ce64902dd10302047c435bb500673065023100b544b232b6a9b2e878f0a0090f9b1e36578d09c219f5cea6bd30ed27342cb3334d8713acaeafa276228e5b44545818c302306a1294a65a7f473af2c4e55d33aa57c640746692d8343f2718fa9cbd8ca0ff010b6a3928926de7d5cc5fd731f37a59350302047c435bb500673065023100ad11b708d38c0957ae6836c1720b95e76085d05caeb6c39a49ce6da36b8bd454857641004bf596f314a982121303e85d02306c57fbd94c5abc29d37dffe6c30b8f4b46f40d6fb76d2dff9a830c5cf9cfa0aa045de3c88e5bd491e307ab920927164a0302047c435bb500663064023059f0ea59c2b5c545ca02d194f70a5dfb4671fe5baa1ef7a0d8510a2810fa671ec8110577bbfdef2a87b186af46e5498a023012ddb9f7a3414978b6654019ebcda12f0d9e6009332d5933420da59599a815e8622d4833441e17a69bd311e0366276480302047c435bb50067306502310091c12a9dbd65a165998c153b01ea5d52a74652a0bce7fa42055c9f0fb405cfe4baa87911251f924fae067b7f6f7921e2023007e294bd6b66bb34104b758807c65e92db9fcf9d0af6362f09fc03548f036443b14bb69eb93cc894d1f6611ff3b6cb770302047c435bb50066306402306993f436720baefd17d64a79e1518816e90bfced85948d5e5860ea1997d44c4d3a6daf225c65fd9be138404090a654370230365358f95c43c893d659bed030b12d264af88e2f2d1b57ce56ec41701d6f354d6b2b0ce24c528d33bcc84f2309dbf6120302047c435bb500673065023100d3a9308514cddc730a0d4759b959fd3cc13814a3799acb29c6652b96c20e871d8225fe1603832e4ed7729d48c746ec48023056705c3ed6532c5c1b380c0be6bc58b85a64e2557393f7abdc7c5ffb60f91854375641c1278e085db1af1d842f4ef2f80302047c435bb500683066023100f9f85d018086685cb44b2f1dbbaccd0c38431d394c1a4a73cf8c9cee911a4eb2d364b82c13c3d9756add10051a4e529c023100bb06eda9c7bc3ec45a7965eba56954b7ac12c68d448cd787caf78fbe0dc5f1dcaa8efe60f681d83b43af789c4a53e10b0302047c435bb500673065023100dfda54072127052a6401da40b206fd08deb1b7f039403969f2d57df81ea19a8f92bc63a21157f1ee92d08ae2709c12af023069566c82a8b772b2459801972a03bcebd5c0e563c52d6b93fc0ba8951f8d7d429a98f7dca25e8942653a6e334b167db60302047c435bb50066306402305f19bac76f53932003b48df9cd759bda2ef01e6dd4fa03cd049584f948ba7147170ef4a166cce98e9a747c32c04d6e2502301b31d694cc4a332dc02cdac1f351d5993c6c5125645ac922db0f5eb71e40168f95286c18f044d211b6f0240007f8190a0302047c435bb5006630640230699014b29a7595c62e358937b1ba62dd478b3af4c59a27bf0971a9b44283c5b90f24dd1658948d83f3e8666257a03bdd023051838fd9f5050f5e5a89d9378d7dbcf1211bfa23d6d0dbd0534e427ce003ee21590fe249759bdd3691c6a3f6d5bfc6a60302047c435bb500673065023100ab3dafb775c84dc65b60274483783664bc3eddead4715fc013786fa749dd51a0425d5cc7ecc4ad13b696f7816e7517dd023077df9152e1c8a908778f3a970edfa55125f593b09128bb976c437043f15120091c989cd3ec134e63c402b9659eea76ee0302047c435bb500673065023010f481f7e59ca4ba69cc5664d3bb3846b036345b71edbf1574ea3cdec505218295d04de74be62f4fc4498e260d6bba470231008ba74e20e90b3220ea016636796c1a492b5cf77a2824186558c30194327792dcc3e984e060a206dc1ebf64e2325658c50302047c435bb500683066023100fc1fd9acbd59a3512426e8bd24d70b1a69fa2e4bcdb48db4d831fd634a04b11dff1977b57ed083671f3a5d5d19cc0dab023100e91bd1b33f1e367d890c60b787abaa9327658fa77a06875b748e072e818110f8662f55df57bf870ca7a66f5d4b5197560302047c435bb50067306502304e604b6c4220d51a1228f322f2f2161c70889f8ccee4cbc9c9bda1081741a19e9665b4f23b954b36ed1ede16e8ceb07c023100b42ae85398285486ffd817ae575674829bbf973cc134d30f2af6185c10ea01ad838735d9b8360daf5e632b329900ee830302047c435bb500673065023100a5c184eabda3918f9e5a88f39afc85715f291b2f7fe515993258de8ed2072ea2456b524bfd7715897f0fb673edf1828302303714962bb279066378f7fc2fbfb6a0874378d67ed8771c0e30a04f18cd1f34bfd577715284a5bc14e1c40ac357b8dbf80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023070d3f0114815acf740c1b7d85784386b791a2e83ab84dd5f597d77d507e02666ca059fe9efa6823486d1d9eec0978ca3023100dccf61f86e6e787bd382ca81b2f69b0129b1012f0eef2125d1965bdc763241a204f12b81dca4822d26b2344579e9b25d0302047c435bb500683066023100db17265c99aaeb2ea42c92eea59afd30c7ef7ad1021a4129c6515c72d214c1d2d8b72d6641ab5d410ccfe622b86d7021023100d11d5cf999b5de3d7dc97d41ef6c11072041a7e65a638adc4df1d42ffdfeb0c1deda49c4afce42f0aa58a928d8ee2ec00302047c435bb500663064023076a4bd5a791c4e48073b08fb0f6cc4f7639f4da588b3bac72a179bd47af1d0afc9a1e824d03bf2784fc9b57fc7239b2a02303e41cce501a5d26ea7069f772f97ea5074dd0eb60c67b16b05920bcc9d89fa17688865adbb746fa76190fbdaa989a6f90302047c435bb5006630640230152fc41341c181e51cc6cb73fc74a8338a2d55f1caa872377c4d2c94c800361cd21871f1f20dd2a640bfae4e8b6c839002303837f5b249efabb9b3ee1bb3912920e7791582c662cdaf7dfdd467d37915f59b4f079befd1849a01e4566eb075101ff90302047c435bb50066306402301e7c142910e912b4925a2b70ccad95e253a6c62bf99a1bf77b5e278f1786d9931037a9fbb04d812b3b9117e85a88d03c02306cede2d021128fd11286784dd5ebc9bd4d280f17e3f609896ebefb8e1710623f65d6b0ea54a72b2305a9b0e450eea0810302047c435bb500673065023100947ab196e72a17698365b20038f35867072e28eea37f03017cb119b0afdab5b3a7840101d16ab7dadc070b03eec44aab0230650178593a8bccb5d55f56fd9f940cd14a51cbbbd4ae02932d7a33a27ed5a347b828df592c9f993048d073b8158b7efb0302047c435bb500673065023100ce53a443a3c9304b3994c46c7e4448bf3a34d3312124c7ca70cc529d780822195578a695b164baeff870afd01d9aba6002304ccb11ef5c7d93ed22002af3e5deca9417d9d6dcb0eac5302da81fb70910b57b0e0223f11811c1c082c799957d3d8db00302047c435bb5006730650230532e1f7881775d5c22ada5d0b72b12d17ab3cdd1c5cf444eb1477ff3715dac20f4d00b98e6a3ff23c125e0f1e8e3d877023100f6ac4185a94fe9a110da5e657867a554484ed430ce1778ab8661fabe3647f96d124ae69b0504cc567e3f53ee69113fd70302047c435bb50067306502306648663866146f4e50f17e9be114fb68d498b4206a0303d488ee172151d9d31745e3f7237a02f6f050bf9d38dddc139d023100fbf25704d612134a0d13e3c0bb403d2b2915fa2b00afac0838fc4237da9fc4a2927c06a1dc6e1add66e53b75783380600302047c435bb500673065023100c5ec7b300e05b9667cd253fd0b3d878a2006cd4c20f174773e5b71f73aae851f0b51bea69e92bba60c9b7b9e6b1f9a60023027e0cd3acdf15ff811a472026afa76c38c2187abe49ba842aefe1a60185b10380b42b6721f5e972c6715a438725543bc0302047c435bb5006630640230647cdacaada041f868f809e436d84a38ad96104575aabe82b506e458d2c0132d80601e4902dd0646d5080e46a342efa7023059a3b524a52bab8f635213efabb8e2a28ead05bb73bbe9467223524ca691bbe6f7a866a6030523819b84faa16b25b6550302047c435bb500683066023100ee0e3a739cd11eb6d11c467f72af0adf4ebe49418810209dc2393dabc953e3e38b8c3be93cf0d7168406ef83797d7f93023100c41fad7cc9451360a84e6c67bd41ce60a1b898e1f30aa76e707317d94c9182a98fea9cf46da864936185a663ce439a070302047c435bb500683066023100ff7c850d07b15d7dc4b140537ad1a32073a13bb5cf7b528f49e0a19fd654b42b67766ac566b42d3f4991594a4ecab171023100b4b8bc648226405e3f235921caadd5b7b6fce7defce51c806b83d17a6e219959f3012fd974a66b5446ac582917c7dddb0302047c435bb50066306402302aa1022396637a3f8017ea9bdb09c4efa9498e4d42fce2dd8aa8a3cc6dae5db5c810ddc544b2a8b7900cd6c5a2ce95ac023039b8c67294d7452377eb2ad173abb9ccb0e822a236ea0b8e1c11b9214b2f2d477490112a4e18ec01b42001f13f611bbe0302047c435bb50066306402304caf02b194e207c19966f0ee033352126466dc0e47781af8651c2ec231edd671f4fe6962a1db5daf05ccadec8197cf4b023062d877d2faaf948ca0564e3a492f27c1a24b73790e1d277af92f29cc20b57da57a4a3bf1dc9249c9de075130923dbeb30302047c435bb500683066023100ba173482206fec172cc3ace6ab15093c51643803319169a4dc41905e8c1c8a4627c8abfd885112a9b1b12d4a1d16a042023100e4c6753db2ed7dec3095e409bbb8a07b437639eedcc2cd1a47b64a550d6052037d0fe2729382b1973b7fedd8e4feaa380302047c435bb500683066023100c31e2b687cba14d15846e059d6e646b80a309fa7d42ad14c9df69abba0ae472ca7a1ae8062d365bc759252872b6721bb023100cf00d77105509cd0428440c7a05c9aa236913c413c7a04c3f8ec9d8c39d533db07fb63470af067e5005231a7a1f50d570302047c435bb500673065023063ce8676f25fba29a18e7f964a913dc626a11ccceb7b523759d29295c9185a10d85f3b22da3e2eddcf4e76158682a39e023100a328fb851abcce0b622a885b76212ddc005cf4f5479271609ba7d701398885e896be766e66e3be5f1f7e6f6c80e606470302047c435bb500683066023100c0563580d270b41d53657d08b1dc6ade1096a7d13472766c39fe267276e63cc6c9edac156d573461d9081140283d730a023100c1873ddd4a6c67550a85828b1c6cc96377b0192b8c9408411d4dc17dbc7a33746a8f44cb63ea5d56571bb20d3e2fe9f80302047c435bb5006730650230161a766a9c7d1a357fe2c29098cbca579eb8cc19fc68401228e139ee8e477de7466249d9aeb013b79e3a07d8dea45ca5023100a4e29f07397163a2919eef3b78ebc91b2d7907089be536b190d695fc64c59a017cd186a86580cbb0710ef9c5e46b5d270302047c435bb500673065023100d3e84333443b0fda8c5025363622e6ba290dbb53592f0ded6943f2e230f54d5567c45e835bf5c1fc5d2fcee42f47fa9702300617ff6a5896f5c3819b105e1b061bcca4aeebd4b1f75d90fc3727edd0b5fa8295a8e6cfc688794bbd655c775b46186b0302047c435bb500683066023100f026a093061cafaf8609fa09787b767b6da8a2694fc227dbae3a0db4a628219f7e3af26a9575721e3bc050235b5598f6023100b7b9131e757f6fa4b400705ece9e1bff6fbaf54736840917d92debcbded5f5c29dfb8ed3659da7134c8970cd21ec088e0302047c435bb50066306402304786f0eb5e725fad52379d5a548305f10f60afa0cc3352b399d2a5dcdda914598b86eec00922b461cc801d9a435e099902305117fce441ce6d9d6ec9ba5b8721f1bcafce98562412a2a8e22e4efe5459bbaa3d278e4fee4197500fa11816b81e26710302047c435bb500673065023100e334d3149baa747b9b76694cb2558c8d2e96b1c100996d398d67e0528bf958de43039f1e5b62c8315b956a480120b3a602304203c2a83bae8cd229f6e3929a483a31c6b2efacf350b533df93fdaff05c02e050375f60f24adfa5dfa9cc6cfc60c17c0302047c435bb5006830660231008a08e6b750d9244012caa79c65d9bee592b167b64e94046519b8ec6f2f1b5b358ce4b2ec518694fda4e28908ed5fdb0f023100f3f9a95440f43403884223026eb6e1e856c73e8d1d8f8f64a0aaba79c87c24d707202cc7d96dd46f0d297a0de1f460b10302047c435bb500683066023100b9380017b49624c3a28ea751c759d31435018f5d1047545dce87bac6fe41ba4c624d617cf6cd4fae22d83ad549af7b7e023100b9cd5edf1fea791f48718662e913eeac99f70120375f47dec6420eeff731191942b73428455c9543f879ce26431bcf770302047c435bb500673065023100dc001db81ff2b1fb090425f09e4fcac0d8743bf1a87dbe16f296e4ab0b0686538347418426d17348ac447771c004aff302304df85cb221ed8d816054eefde72c910f7cc8dad1f16967f30e4b5045b75f2e68e10f535ba39143487ce1a06c371fefbe0302047c435bb500673065023100b94097f274315e3f3b831a64de9abb4ff125822aee2cffac78e341a39e101b2402868105c0eeb598af623fb6175b01ae02306af5ec82bc4c820feb4bb4acb64e062b527267d19c4bac706fc013b9be24210aa3b8bfccae197769c428c3fecf421f1a0302047c435bb500663064023031d3375de13e5b243d1ae9a248958d4d4eed5b1923d20f8d42e050de7cbe086fdaa8169bbee13b1c57d8f60a00b24e7602307b5f9fb1b3d6fc959d40234b1204d470a67d56382dea54423a9cdd94ee842fb2166e5a72770585e407a5c1f1597ab09f0302047c435bb50067306502301370adca91217f86125765d227b21184160c1b3d811b7f40555606ec495599ee8d8e95d15b442474de6cccd9c618055a023100d4219d8b30cf5e6aeb9cee1385e86b27281044d860faf2e118049af636994d50e9d08ee306e90a609d65ac682fbe08c80302047c435bb500663064023009699c6b12f678632382b5db7db95b69ad1bcbacce1ae9b93b5538cf7c555cf1a9912d166d7fb2a33c278b54a5c8f9a5023069b90c948ea0becbaf82f1ab9aaa571a9a2220da869547d25bf70b1ca4221f5d73f0458bf3cc0f946ef02f21113e4d110302047c435bb50067306502310099159738d33a76a1daf99ead71324a670a6e5e7596ba2583c7db2ea4a33600172830e0a031095fad237e12afb5e2c92e023022d633b0dc83a9a13e4785d0e6cac7ee4a6df8958e5ab3f4a2b606cae4ca9f5e595e321deb269f9cffefdc6e5d8a93c20302047c435bb50066306402300ccab2d42beaecb99a9a802b16c89eba865d4b4dc9188a2929947f2d12a792345736b4a91b32c209ae8d25f5d5dfc7fb0230349b9cb8b02c2eb47242ba61de26f2d358eeabe0e629875e1f3d256f7d18a7451351a52c979d078dfc0bf3ddf10217510302047c435bb50066306402307ccee2e6532562104da19fecd28801d4ca4abed78ae560a614970d1247aa248d26c102ef270479f5f3f653ba5f0f7cdc02302acfda341b79dd6954cd2de32cd35c553a19e0a1f2536686ae93c3e35fcb43d88fe8b415923019e705d2f6ce2323267c0302047c435bb500673065023100c505ab109fc2700dc30a1ae1d004708cb6fe4400b3d73b08b4eb3c1fc2fe1d18b70f0cf49493d76e2a7c0a8762c43e62023007e21b1216c408d447e6cc2e4bd2bf5309399a61cf8017c3d9bc732dde11fee680980fddd28480f01a46cade33c2ba690302047c435bb50066306402305b2719259303031a4d63f746a73849ed3d2fa0614bfbbc9f41e1baa28706a12ec2a9c36962df67975c070b41ce6e3b32023036b6d86af9b89c296e565bcfa22a7fa23c3624f4f4cf69634c5b19c7dc9129fed59f18c6740999af14c413d0c3100b3e0302047c435bb5006730650230451cc612e9de189d56bfc9970504142343d6e693ce472a4fb022af1593141742e7f2ac4a21db9c414ab5f3bc2a91ec210231009d966fa10468d17e1139c85214c6ab8e0f3221b749b08c1c415a5143f9301f22cab529f61107e38a38c2a218717ace5b0302047c435bb50066306402304cbd58b4fe23182f78a77e542464bdc906014149da09813b2b4f1ff2ea35e749154c4eda0712e23f05f43cf48dd1343802300b751bb97568061e026cc5cf3c29b42298b476583638d401d727e2b81acc2a4cc2af65ce8443f8b8c4ad414ac765a7a80302047c435bb500673065023100f38a23d17270b9caf475ca52c5f66627cb1c41d5c23cb1d725beba9167e4ec112d53c998792977184065fdd127dd8e54023069b29c921f908e8c5fb860ed69d329ac3cb6363042618d849f2cbf31330aa609c6a07128fb369fbb6b768cdf6aef0b630302047c435bb5006730650231008e23606f99e8a7e49f44b2080499359223b5f4245cd886175b59dba831247871deaae3d0c6b8451f42ddf807f9b6abdf02302d7aa63330b66942982d83aa73215f200abb98fed4171d6ff01ebcfd09c70c29cef9ce29b72d6c3de160605de19684960302047c435bb5006630640230669461e96db35337ef2cf7fb0b425592dbd39cea8375b501323285c3f97222532db899a5702dd6787719e0012fb47cd202304a3914730af9696fb5670f4a7db4e0d2c95cbb754ae1407b345561a4eab19bc8687c146e053d169d17c629f17ad97d7c0302047c435bb500673065023023c47252544c52d76b9834902392eac8036e3e884b4988c518bd538eaf3f9c61969273fd35927884a870b4b6d99db4a3023100d59740f45a482a6aebf0e512aa8491242c3d6eb7bf02fece9a8846c24f919f3cf386f76478b1cb6837b618100d1182690302047c435bb5006630640230206a00eecbd4f1a952738b737d2bc5b4a89b635f58bcfcdf58d791a84e6e284d744c45058fc46972f6f140e6bb84257e023036f3f87528bacc70b091fa5697ec1e580232ce93a9ee697a8ae4e061f2498f9d9117beb889e3c5a58ce114c72f2da7940302047c435bb50066306402305beb029637eb85c5980d38433a0bcfc255d8313094925383c2f022eabb5cec1ee997d0022ee1950d5fb11292c19fc591023065a179ed39924362f94a6f1919135f04b433cc8d37edc4e4e35eaa4092b02dbbf6eb628d995ed59db6b4f5cc5b2d59de0302047c435bb500673065023100a3a1c496e91e2daec1ca48454b184fb8abfa261cafb78449334daf3dc4d34a0fdea29cb4830c22cb45e85f9a7fc00b6202302a307d424277a69e9f7ed8ac869173b06f3b5737e184af57105433b05f6cacada5b3fa11259055819c3fe3af5e68269c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e3c38a8208f31c7ffd5eb9be048f55f1b965b3cd08eb997be3377b480055096af911ed89c4d184717f7d01c7e0909ce802301c09cab5447ed41a5f73594f778f81d4e67b7fb0787d96aefd00ffe2f569dd144eead6432e50793a9a02290da988603b0302047c435bb500673065023100e8f51cf10d7bedef904af67438fedfc2cbd3f0ec10cce617923ba5e7b47d6dd53584fc64b16e6e1ff9a11330a5a3e737023058d96cbc7eeb171f4e1a1d2f3017b787860b5c0f1e4e55d3f4395c4de26b8d379d58df65b6483441b3f69cb104a423940302047c435bb500683066023100f036e3e04b34c2d3ab39e14e19e67384a5758256bec5bc629c5e343951b3474672a77bb5818eec8383042a9d853ac47e023100b13246909cc4255ca1ab90d0bd6597ddd42a8d3d78f904800d1682159ae3670639fd1fc24b5558f4d1af53195b6aa1c10302047c435bb50067306502304b824063a9350114fc07c4bfab2b38c94528d7d767e66600a99df2ce36accb9cf8ea556ae83716f086fb928589fb920702310083eceb206e630d753bab76b1243657010cc203d89da827a36dedd1174bb3bcbfbc2c042a9e2e4f0eea2bcc214111fc410302047c435bb5006830660231008abce0d2009105a0ae86f4ef5a0b5b4492e2332a98e20c8c2317a3ed3d22d9383ddeb6e83ae03605aa54fdea34d848c9023100f76f873bffc7976f04f351f54309f91674f94052a73772171f007b6507cc2776fda3f592dfaed680b6a3b509978a7d100302047c435bb50066306402302f6460b9b916e60ebe57c5fed6ea02f38d1d18c752bc15afa0cdb9dbafbe7d5bbb805c6d9422d90e22c48081a31e0f060230300af142981a9dbcbc567752b3d050760cc03f54b34b091a36b75d7abbf25a3dbd30e2cae8ad249b2984fedf20ed73480302047c435bb50066306402302b67f90fab6708e6dd6c68309974b35fa79e10a30dbec00510f74b4be640930f83e3a9dab9a67231630e6d9ac8b8228602300a2bba4169695d49b57b8051374e29350d7c5bae7323a9abb8f99181379a4086e45f0044dffdd4267cc41e8dc436fa4b0302047c435bb500673065023100a1773d53e00342e59a5a89e80b2ec47410fa3a9f5023b653ec584a079852122584cdcb408d34158c4f1d99c67e405f6d0230482977cc26561b002350ed6cdb37a2c74f668d17136ca25db0e86b2d0a55ef080ab411ffeaf5816d311911a40f4b2f440302047c435bb500673065023100d696c699a68232710ce97de0ac6dd6263d7097d4ab4440ace8782979c78ad79ad1b2ff77fc27f1a37c5a6a2b6743efc402306feb69d557cc03498279cb794b58412412d51f6cd6e26d8ef86d82d8a6d9ebe527e134a8e08dd0606ed4000efc6178e10302047c435bb500673065023100e942ccabf98e0ab4c6c733663591caf3d348effd6696dc28c28d5ae9129c7c514e3baf5e59f0c12bd5a49e41ef6b288002303a92233d5070d4b0ce9a8d24b6222b3ba82ab80c67645502555eb1c50951600d6cd16ec55f9278b05dfb862488ccd4f50302047c435bb50067306502300f19c761b6257749dd5fd6ed2b94e969c1cf58365eb4402db88dae2eef6cc12282f021d272d5042b4a29d68205def036023100946f1699517aae43ff057ad67b62d399a90c1f8cf92fa8b9765a2346185f30aab0289ab10d29c5b2947088ab21f1b8fc0302047c435bb500683066023100f3f050301efe5670acc35d4c641acf990470b7ab961de08101c7eff76c2694996e01a505a398489da17a7672bab2404c02310084e3de51c376b05929d7e62c864b552d73a0ebad56f8302e73adc57b5d1fd01f9c6c178b908a2b3cfcbbc8512216e2e70302047c435bb50066306402304ea9c7c55ece35b7bd95d03f49af28af05692e0d95644d67de6b5e9b5bd6b4b435b2b971b3105eb85026b683cf56433d02306c6e62daadfeac61252856173a826db34ead480115fdb85d5e52f3b6712cf9cb60266ff61f96830c7ec97e40a5c2fad50302047c435bb5006730650231009de218e19d0bb77969304f376b93c765425d20d74ff174ded891458f56349d553bca59fea9bab44d2af79742c2597d6902302c54a513f85ad3e0a25e7394df4673ddc390d6d0c9f1f3772991d2eac7b8686119ed2d4a8eff3145de371cb2d7db692f0302047c435bb500673065023100edf22a07e4147bbb3570d7fe636904a385e6987ed703163a5ade00072679580bf2a868d9e383aa3b3c047fec51270be0023058847cf10cc6bbb0e7d88c6a0f61e724c66a697c0c2598b45eb03ce201fae878be50ff0f2af95d94960c07f203cb197b0302047c435bb500663064022f3769e99463cbf08fbb4b9a59e36a6c6c597228a0bdc78f9c72a36c26fdcb315d5b666d16b954f9a2dc792057153385023100a8c035c03917ed0d133fbed2500423294a55dfcac7f3886e3520df7f2c8ad926c4f9ade2f674fd656afb6bba3923d9050302047c435bb500663064023025fab651cee211361d084261a01bc22327a598decf2ca162d21b12715db6afbebdda9421c982d0545c619f0d7f72991902306759a4ba4046288bee5898161b6a82225a1c6e63b33819414395c545eb31015803cfdd050c7bf258abdda6e27aff246b0302047c435bb500673065023039ff9c14af5734ed9e0d4f91215501bc3b1a1a80fa03620d1e54406284509f4e0820aec937857c46c29840627ae0e984023100c909aab14073f214767999b275513274222359dd75467660d3c4c0f6ce7291a249a5f5a19a0b290e4a2c7f031c472e990302047c435bb500663064023004b283b36064580e84b71995af52bc0cc08a7ebc7ce8032ffbb0d9cf9319f5787865e8d73dd3fb1b0aea6949d369a75f02305a1a700450c12c70c48d2d87b40e4e54c480ae4af6ac79a5e57337727f064a91e100e2cd44ac517fc8626628b7ee23970302047c435bb50067306502306ad55c70c4523d105cd64e5c7e4b9d3bc6bf89bc97dc3817d92ec271bad13019fd393442aca539f89c60ab6bd98ea40002310095119f9c833cc368117a7e9ed76a99f61d38166e27b92282030c779eec13c2d73474f69f4ce178275bdbcefa453b1c4c0302047c435bb500673065023030e53c0c5b6a317a8762ff46b1efff844ab2eaf1fdd1c46c8102d6323463b9c4c4774d8701ece035adb6be626ba325f0023100f6b2f0d9a68cc5a95d6edba006f0393213d342955f7bedbe6f225781f999e2a7ce8d6b9a4106aef05dae2028a66be31e0302047c435bb50067306502301a5fd5aef3ac6dd23bae90574da9fedd3df0bbc90587cb41b207e67c30f490085dce1e8c9f2d12adf53c60b1b51acfb2023100d90e3622be55b170508c715b72b69de30f13ff7c1238dbac7376c0ac4c89f7601039f23b12da9f56ecef35cea0b817250302047c435bb5006730650231008ba27db0e624e13829cdce4a28a7d4d831744ea425160a8c6579e153a388689ae55933faadb4473dd3ab6eef89b2bab302305f2c6580272cc4395fa0b531ff0dac5ba14f72ab8e1f2d72ee052929fc4ca4e414d9e115e15d7566373ab4756f00c9c80302047c435bb500683066023100f2fc785caeb94434beb9fd2026c6b3ead10168b44f8d78d2790ad71d95f5c095c3f2bbfa7b625090e54bdc9c644313d0023100c0d1a9ecfe4f10b0579c19c2797fb22342e7eb04288b4fa87b2acb76a08d951af007caa7576064b7fa1cde31335e1b450302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304992a7455cf132ca740aab4d44990009fdff26fa505e1dcd3b3e8228aa081acecf5bba3dc21589889e41a366480b8293023100de95a09f3fe15cbd6e7dbed14e758a10a4887766e5ebd246c8dab04c07883e5c7b83789242ff1e0393b44a873c0e52cb0302047c435bb500683066023100baccb2a7f3e5d4e548c62abe489c5b7c96986c79096925f5c2cafc1f6861ddc7e566474e37ca919c09b667d1503ae602023100d6fa50019b26f8448dba67ffda75776257a0bb272be55de0c9f706bee68341da704897b59686f429160ee5326431e7510302047c435bb500673065023054a24e2025f4ec51204889fffdf2b4850a5ded95bd8bed85d0bf615eb7918710243bf9d0c89395e0dde0891097f12783023100912ade802b87ba8a597fa879516be5c35d3e91899a48ccfcdfd5cd2de20e4eb507a9048e61b87ab2d66b32409bcad0380302047c435bb5006630640230050c5eb46b7a7247c4d0ead16a04f94aab006e419dd5226fc7c9ebe0481069d5aa03fc5969f0bbf5e0131d80f7e01b3f0230492d5d220440bc9faf4f38ed6db54ad2ad03c26999a56581b2fc025b0694dd930a67ef0086e64d2410480ec2d94732050302047c435bb500663064023033434c099678869a0bcd1b2fb80aa90495d18ea16f37051b3b155f6e29c5d9297d09e440b1d68d4e004c3d811148272b02305b585387065d1caa14a4adeb5ac3fc6021b792b8690d8007d3be605ff93ec82563d4ab0949cb6d898c9336265ebf5b650302047c435bb5006730650231009e58acdc8b23b066b0472def94d8a8e5ffb4ff032a46bb7342eac074e2b1c0120723f9f257aac0befdfd2b16d6472d4202300a3d1c8a83c3ca34c2399e60d9f60569e54e0bb6a7613ebdba166494cda05c4cb8fc266c89fc3b81a3c268e64e63fe650302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023068fb36be1c7edb1a41d83572e5ecc0ce89cee33f8586806ff999341b433e4c079c8b9f92ac3c2573f5260d832f4fcdd502305b1a3ee03236a3754efa0baccb4675345d9eef061fef2d502d6a64eab22f3bf36d72a11060d77e28e811a715c3dc12f00302047c435bb50066306402301652ccf827cddfa71b5cc48ac97855b0dd8b777fba4df5911d1fdf9f12101093c8e420778e5e09d12fef08dde3e581c80230038e568b614f5f2ec366d57f29ce4759ab83f164d67ebbd2c7dd18e26f1f619c1aaf0d0ce722eb915f2b376ae0630d3f0302047c435bb50066306402301e05f46ac760c8d774b713c4dac8c5bd1a6345b5de1752634e6a9460fc94651f650a349323d0e44ccef663a3a73cd77202300135aa58aec431cdb56ff439d91b330ff14677d6c391389634f97ed570d32bb1b08267d799fbbd44e7ea09b535370dd00302047c435bb50067306502306d65708f2de81f12a7acf956a0eb3db02f5b030b245ff44171bb544fd9235647e19fdca1420abb41894759093de6ad78023100e699f40506f114dce76f7a57fc9b1c9817b5eb9a9e66bca45b188254670029b5a17778a0ffe16f6aefa78a7dbc5c9afb0302047c435bb500673065023100bacebca71eb411878157e1ce9e2f3997602548a7c44da220aa5f096ca2e97b693311b14735c1ab90a42e94803dbefac30230319b866efd32b2d014f85c40e75698102bbd4ac4d72d1c05594932c55c699e8bae9897f7be7ac38804194112c0120b220302047c435bb500673065023100cd21f58ba18addf550d340cd29b2e13e1455ffe1a76971f36e9e5bec210207e91dc20c54b34ace754afbc1adab44f8bf02305e5a37d78ec045c75c847e024ca97d51c56c8655e635aa5cbc27e162edbcbefa1eb01070e05a88fbc641941c5501c99e0302047c435bb500683066023100f2995713398eebfd723ee4fe2641ac5395dce1bac0fabf3ce179b52e31e1ab66e0b49186be089d28de897e3a72828084023100c2879467d1267dc8898bcaa2aa1c7461c4d3888cd19ffac4efa3c4ff54264ed798975d4628008783d34273e11135fa9c0302047c435bb5006730650230351b406857b99a4516c7e375c11d7e724d487c3f2ac8f9d12f03fe92e2e6231992ad9c2aeaaf7016ca72c6017163e2d702310092d6b6feeda19f5a002ea045991163e0294b980071ac0e9053c70a4bf0486d3088566b7479ea565e2b121e3a023bc3d40302047c435bb500683066023100ce34f8e45e91b18316981270b6ed4d73b2e1c5cfd9547694d33232fccaf9e90fc3555cb8c2f91bee505c227aa06d7ade02310087f54de276ec4011b8d2134138c9e44bba034d9a912a899d3351d72c3ab458378f16166532f007e36316ef5f14ee93060302047c435bb500673065023100f98d5af00eeb4d682f94d3edd07f60181d5064e676cab0210e4af0fe6bf29a47db6445a9653c4f8cf1e736e68aa9705d02300d49fbc0aa9391aba02ca05bea210181b4ba2b7e94da91a326ca6726d25a256d08754bee6066571293d1ad2199d3d8b30302047c435bb50067306502305a58361096d4d9d77e5131165fee82d0f13bbcfe0ce9981b129399a33b033eaf2051ebcf4419d2b2efb4e74c6ba965a9023100e16fa8262a639bbaf519b77c9d0716d15594b5890d33f75da021fa866db6641485ef78a6fd682fa966bdc263dcf267e20302047c435bb500683066023100b1364740a4791f7bb0fd098b90c7285e60bb8537d7aa83b62051bbe9fea4dfc886e370cd2522bed8a8ee2cd9a32509e0023100d5ba580c7fd9a62ce06c164f8b8df7d3b78589eaf52aa3e7a1191020e3d31ce7c5b61a859dfc8e997a9206a9ef4792dd0302047c435bb50066306402303cc5ce8eb70abb9aa0db05f6683fad4289946a49e10cf2bd0042946d0ed65f4ba4c33f6c648fa95f4f1ab1f5be6bc38502302950ded723be6e0548c3e0b28387408f7ff4ef4836f769d796ce1433560cd86f6559855348621d09b4d0bd2bdf72d2d50302047c435bb50067306502304ec624bf06de359f021dd5eef4d05f9e1c80ade3574f5d1e235963ab6c809d420dd9b284f853eaeabd7435e2e248a168023100b58f1a80726fbad135b4a33fe45a4275c36d062440a4158351a9f71fe4cf0cb02b20a6296d1b3f816f04da51e689578a0302047c435bb500683066023100bac0edbd3e6dd90d898f20b67d01e599d8d56f2fb360717696e430835c6a07a770cd875f3b1c67f49c8518c0034b21e9023100e66f6d0386860a563212eb2529a7c833e1268ed8baaa2ad2f6ed232326382aa6d10fdeb36d1229fe0a96726a73c257dc0302047c435bb500673065023043984d61f7c5884657324f5ccb59463e265a8e6e0d221ff501a2c5028462ad76c8d881b27df61f7a1847fd8abf8999aa023100c1cc2e5a87bbf564cc654d4a13167b1b5e6cfc3cb00ea31d2e7f3477e6d5d93028c3ee9e3eda69b213b1988b35e93a7c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b4f963b5331ccdb6f13064f86613b0328b3858fe1c3bf471d2ae774e2b650367a361f8b354d720b3959661c9527a4a96023100967e896f8dd6e1ed54a52d2066e94cf02a3dab48fcbb66cd12ea1c102c02cffbd1dd1c87b6bba335856ca5167aba27ec0302047c435bb500673065023100984da6e0042e2715b627419211d9c540b2dcc7f42c49d7ca685e1a27082f9efd858248395b56e30f985caf13090fd3fc02306a924841a622baa85361550c1b3c33ab7bb1d0f665830852904873293ca1633d2d6ec8b60e6a2b4e49469d99905089c20302047c435bb5006730650231009a4e6c349617262a2673563a14f7b4e81f684116c2492ce8159724c49fcae8427b781805292524e39b3cc76542aefe6602302a9e1329c3cc42d452ff6e1d9a4a965ec72b9d1b59d4bb69b164cfc2e9733931de3cd229123f64c7b69763976416109e0302047c435bb500673065023100fef4bb6cd58d8bf2ab6ef8093c4ca28e25ba7e6a4321e82eeafabf994a6d8f67a04010aaa769635711b494dd291c0672023060b81de13e7ca3f31bf8aa66e6c45eab5731d96fc14900bfb2bd84512dd5691cf871f2440fa53839c9ffd6ee3d841f8c0302047c435bb50067306502302e669d4d9baeceefe7b6fe2bb123fbd27618c5dd8a54557fc0489121612adf098ff96fd99b2995f2cb8e2937d9a8b78d023100a3420f4ed1603c052b06a56e4fdbb6e1483465899523a53481aeb64d3328a9fc26b0fe42071d7b7787c72a7bbe2337430302047c435bb5006730650231009c0ae4831230a225c90a5abf8db3330ff2100c7bd22032db52e5989562637c8b806c36cf8303860d3ae7302bbfa3078b02304583bf923a659fa599eaccc6cefb5ebae3ef058e9de6958207360c283b54940583db42ed6d78732d530290cfeb26b6570302047c435bb500683066023100c6b2fc255561de2ec62ea7d63e4f013a668e62dfa91af7cc44efa32051525fc3bc580c63a7ec68c3f360847353b73cc3023100be1a0c4d976d0226a1a6d70729d61353d113e586946d6377435cb409e767ccf809cbc100ebe4388e7654a4be12a31de50302047c435bb5006730650231009e8b2545060c71dab6ec68347b8a9c9779f8786dda8b289646a8d41cd3f7597203183d5266b587c63f058402f1f0fce9023037d99f2778e432932096085f68bf07a22133b02c147ede2119adeee8fcea56224d13c699680b8cd367f17459724eb8c70302047c435bb500663064023048ca03749b35a6ee718ba3bea1934a9c02c464ebb4f1a2f395d30f83995bb3cd4b41ae5d70a7cb9822f9c3f1564e8eef0230525e85df9d5e7e1c5b1d296fad565f184058b63208cdc3678fd1894a67f6489ef2805b48da8d2608852465e640ed995e0302047c435bb500683066023100c818a9f2971900e85b2e3b85171a3f56626f60a96c64bac0f5d95a1b1454ed90676f0d17c200e20b2ee9c7265d3eff470231009c2e80519dbc35b332eaa0e44a0e9427ca055c36fa483a87bcab1afab5665b7702d46efc39c15ce607cc8b9ebea018780302047c435bb500683066023100d99ac2dc53578486a101fc07b301dd62c59075071e1c5326e4701d34fd42aa4b09a5db5c8c0282e57c4cc0a4c643d6fa0231008874cb6221859747975b8a48f72264531914158e00296d1063aa37b0b8b8b6189f1efdc0d4f5d5eb0e7523d8a65ceed00302047c435bb500683066023100a4a182838fcf4e828e6faabb8c52643dc49e339a8873a6897889b3a442328ec75109b668b6b4f57a5458e9c172cac8540231009a70b55e24cec79a72cdc8c502ca5329cf4a57ae2983ad4e7c78451e1d61cf86151f5f8e7ae41cdb3b1bd3f1a07b0bb60302047c435bb50067306502310096f92a77c9b4168b4b3b432cb1dff5a9cca164f9c41f5a221e8e9bb3bb326f734613a7aa0bbaf0dc7d31f6b96c1d7a9c02301effa4e07d1c4b76885aab5d459dcc060dd1067cee34a8917baa501fff390b9000476c21b2e2065349d4c775a21ae3790302047c435bb50067306502305619cb899bc8657162292f2adbbd7418bd5b8c51c5b978099f10e55b2e39484e1c9b36e4c017affb08a1f401af5d489102310080a7126acbeb6d38240381214f44ee5a2ecd71176bea68c00294aee5670fab97d3e0fa1c780c987a58ed26d0cc81922f0302047c435bb5006730650231009b76bc3ef2f66e1ea9cec83ca5f52a7ddea1a1de6975910c3d1543ad787fc5f11dfbb7dc0c4c08f6a6be957adbf73bb70230659db114f831e5aebc6337272074e0304d6cd2bb45f29715b9817c867efbb6e30cf578fa4d01dc393ffae5c067862d3d0302047c435bb50067306502306dd8c1dc0fd94456364341d54b61e0811f6ec599d871082766b812bcea846b68badf54e45b55c84d91d6c1ff1099cb010231008760e499759f5e6915b707634c990828087ffcf018f89f190d8d91951e110059a64bfdf2e3bf84006f2842685d0b5fa20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303396afe4ddeba7d1764c2b02f3a874791a572f6acc3a5f6c2f8bbdb88c4ea65e1a601167c6e02f1b8047dade9ad6007a023044c24b3fc2b4fefddad66b6106e5c7536cab3ca7f0370b5857cb9acbe1b5496e736a4832a4a1eb82af5c58a216f863e90302047c435bb5006630640230123e3757d38bbcca2a6b3014124e2dcc65edaff23dc4aa1cac474e51c1d884c93789b009552dd07bdd2003f9dfe4548902302558a25a7ae9c768ff170d5e8209aadb1375868b4b18eaf32bbc2a9abf4475f05f00e382739b7ce0b62be679fb5a03f20302047c435bb50066306402304da579cfe11e430004068f126a460e45797a78423156c26a5f01363870b771084e91485df3a7a03e68940dc61cb143ea023038775b760f150a2f316464af98e604c03fc9feea0d0e8513b651679dfe97446eac2b5c9a304cf697886d2a3c49f9f91a0302047c435bb500673065023003a149e4fd01e341f935446b5aa231656e41b27b03405085bba2da43c66ae5b248e96721cdf76cf0044e0becd2a765ca023100fd2ea27ff8003d87933c56998a68e9f76a912335893611e93c55276ab499db142f426b9d8df6e2a51269635967627ac70302047c435bb5006630640230540d93e4f3f9d9d77abdafad4ed71766b07d051a2c329052af5ef92c02f7ffd8b19a83b8dbc7733055d5deb215b34d6902303b69bfc6594a9ccd2781c967455c6352ffa6b34d9f141f3f0c2cadfe0338a2553630a995a4cde2706dabb5af545d1e010302047c435bb500683066023100f50ec82e5d9ee894c03d4a4dc9bf748f71051d6b801bfb64d4ace3c62aaac08b7155d0f854526e57b7f4254506c8dd95023100b8ee1492c20110acd4abde4403a4c30253518c18852bd23f2b587a94668b09e3d8f325cf51d62d8a2326224c4e3f60fc0302047c435bb500683066023100f980214de03b3e1727c70983c72f41b3bae35473468c3f4c92dd5755ad4eaaa16c2b18de4aad1012c127fc2eba9da1c6023100c65b9597d90db0d8aeaa33e30d5501343342b3c2d50f49c0034c9ebf53171d04cb77343f0e062346106b0ac85ae339170302047c435bb500683066023100bfa3a7faa107d8bd9d92587ad74308d32f1e803e2cc26744a9a558b663afaca9edbc7b6a06200da4b82d0dcaa60b9e8702310080ef57b3d845209700470136b6999455d0931650d38c3fd7a526fb21d979d734cb1f96d53fa21b877639912221ae07190302047c435bb500663064023029e09c2ef8146078e90ef0b214cc2d32129a3ea24b61ee01ec84ec23c0b80319ab1f30df054271e4fb0e893899a8a97f023024ce5aebb221d950e60a5ed6bcfb05050b79411e955863863db742f1e3ac2ecf428d3ab221ee3d1fc3bf1094b221b29c0302047c435bb50067306502301afbc26bf8465669186231b5105b3b4fe2cef102e80f8a50f451447356ecf4712e3450d6fe289adac1224f406e0320e8023100ac49fe2d53ca693313a7b34f98173eaea6dcf7e040786c96129af3ab0638c26e085b45f8238b47fd5b359b7768e0d5310302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307d064dcf2ebaa7b047622a321d2d1fc559703bda8069597654e84407790ad7d472eee9ba96e5d180a84373c6fa44a36102303bb9a4dd36c5474507728dabb50999e503c9952a5d3bafc3a9e3eae52365f1beec5ce78c0de83127bfa9cdf20fae61fe0302047c435bb500673065023100a63b830336731ce772fbee9432abdbcf41bb766f0569ec43cfccd0a3dae85b1cb8c1adab1e31350c6d39551f96aaa26202307b686d3d52489ab11ce9c10190f13a636b4f12e68fe05ced79cd93868f52d906cd36c0dbb377769f54808ee8789754fd0302047c435bb50067306502300ae1dae3c96acbcb930e0b4d08ce54dc1e20c29916440fa4a67abf83ce6aba49eff37396c8afbc1c5b255749659e93cc023100f462800483832e8f90db17d6f44e0e4b9f56638cbdab9f4587d415f24e4f8081eefb76f1ce9c3c98552c995e90a8ab840302047c435bb500683066023100f0fd7fc4fb99dbdaadb0b46911dc0f0228366937519403cae7e30c5398f12f7bb0513a0845415e8cd133efff524dd898023100c1b08fc61d62735828b427dc5c0fc542261e69a20772b7126e3ccaa991ab40519fabecbf0408251e83b5b0010700b4800302047c435bb500663064023008cb92aa4cfdd568ec579edec26340016ecafeeada0f1c00a9e0dfc36ebb55a617bde192c132692d1f0b688208801406023013fe24f8065146351be2adaf6b13b8ddf38e4ee6b8772ea4bd89397c1dc46a47e25fd3908bc81d6c3004ae90cd8962f50302047c435bb500683066023100c46469231d47c2f0f8ffc7525749bdf706ffc66c20a4e13d88f79ac18dfb3af7fcfc5b0bb59fa508909c2516392c3624023100c16fa71173e57d0ff9631d7cf9aec9e5ab83be1463c08539d19ae8c5e5cae30d68fcf51c9bc84ee958445c2379f0a3db0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100fdbf87d9ede7a89cceafa6ab3cd395ad4a03121870a08feda0ef6d0b291bae8f6e93536db7fef93bfe82e89886d205ef02300da69c092b02be93d1407b4dd8e94f700a1925d3f51e26c77f437644ddfda26f677d502985010bdcfbab847ff0db6a1a0302047c435bb50067306502310085e09af5407e85a5f0cc486fe609020ddd69365a671f2f490624c50262170f2cfbc403ffd9c68e2bd3ec4ff4657a103a0230104f829dcfe5df6b470bcb384462854e843bd3dcb3ff4d81290b227906f3d59b89cea964dff6de0ff812eefd992a58b50302047c435bb500663064023016de7fc7c844a2c183f82f425211f16b9bab350f1166f180c4bad771dd2da5e4b0885532d60f2ed111a503732cfdb84b02305a35b09a5f5939420dd2346eec63377574c7296303016f9e79d083599858121e0c715b668d1aee9bfb6254bb5c2a97640302047c435bb50067306502304a8fa4fe1b0339016bec2b7cbd77ec036520f6f110eba65a3974a83a8c5266e88275c9efd2b8b2ee4a5916a379cd8877023100a793c2009317c3f7ba9c000507f417739784becc25ca0276e4421d5de58cd6cd94c75b29bda42a6d11091f73e5dd50a90302047c435bb500673065023100e7cab519a654d582be7a29aaa72b6eb0daae95c1972251c24683db2c0bcf4cd9d6efa97f60ae6eab9490e9cdad9eb20d0230034b93cb72bdc0466d2eaf943b5eb2e2e3e0b44c0fca2997ac774858db005b08cc87a7d2de5741c90895f80c2b893e3f0302047c435bb500683066023100ace584acad80a76667ebaa1e763dc8005c532fa8219da932a3bd68d41d1d7b1443539e01d1bc6e7930055ed40a459c05023100dcb9a094e51e29d5cdc5b5246153c0e79530c2e8caf6a0ee0bfa12af46b955ae78edd91258bcc60d7d9fab9f0df9e8d10302047c435bb50066306402307eed1e3247f85f73242dfa9f7f6c97d2abe288721d19d31817676b2b75983d4592a99218739d99c93d6062a25401d49202301ca03c89ce0f75f88c60496d76a8a332bcbecf6761b59846d7add19bd2711d68ea87b3053309f6f5ca651ec2aaf8c3fd0302047c435bb500673065023025bdc1454c1d1a20087c517179f1ae973271d3321f78fc3d71c3aa0cde496c3c88bf54e312583e0cf4251be96d6caeff023100a1fc80f9b12b22783568de5d48d6bf9a12f6ccfbce660e020feeaaf67f452fc15bad82861956fe6311063f85f737ac690302047c435bb500673065023100aee13da3eba8c48d843be9958721a3269405d3c29df14598ea1e094c3ae8af00945ee4e39fb6df0bbf962d9d5e21fd6602307d1ecca08c9a3d77be10c066d6c3872d3cab65f0355ce397e66121a08bec546b77d4cfa6f0249ef0d7017ef2fb8a93390302047c435bb5006730650230052ece4561bdc3f7aca26c5c7b7cd2fec90743066da742796a74b56a787b7631f1c7ea0352bf96bb2f1b4f16664d0319023100ccf60afbf62d6830d9f03546bce8932ab08ff56087b559beb1859b164cfbdd2830dcb756457bb1d932d24fe0e8ff4bb50302047c435bb500683066023100c7ae95deae68d21edf5007a15e8e5f446b7e419a58caf851f337958296b96c0cb46b26129aa1c61660696b77e5615e92023100f57547d0815593f786429a6633070226e3b8bedf36a2f0eb61c62afda44425092e0e7cb4cadf87f3dfeed87c5aa42fb10302047c435bb5006730650231009d6e57805e5fb02fa0cf8ca332aa6fef477a37ff5d2b5c83bad90fa8974734fec2bf64eb1a05cd8ba81d300d2a630e7102307696755013586619741a79b15efd11730fc045a3366c82693e9acdbb14cd83a73d0f1b08d448b8bdabf746471c88629e0302047c435bb50066306402302c9f9bf6602cb652a838b8212bc923d3382cabc396b80a4fbb9eddac97a6205051ad8fd06f2817d40f830e2ac548ec9402306f3aba360422c3f8ad5a826c3b713c052cec05c4e0bfabdf02357d50c8c4f711df70703d12a14c3dfe003ff5b15725ba0302047c435bb500683066023100ab3d96ab50b2fdbfa626cd6363b46a4edc042a7474738244dc2e93c774443e87d53565cbf445d62f596b6214e84b258f023100eed5b14bc6a5d308679ef972651b401a366020dc397c53535bdc1f850c646bc6e3da822c52af12949f625dfadecc94460302047c435bb5006630640230143b06f3fc1562b6f45460bf4df6cf16fe5a2f7a574956d99cf4c1a774f8b8e929af84833eb3232205e34d265491cf4502305d2424a7055d40cb3cb188480defd3e94d186d1bbb1334ee2df8ad9f980601d4b4fba5d35f974412e4eb57dea44e07100302047c435bb500673065023100be404f6f75404ab61b31accf01db4c27f18e4c1c8648b4417dc8f3f93c6a573d7afcdf9036ee8275d8f89b208347ced102306aa2aa4d653b56c09e3a72b5575454cb404c81e2f97de6f7fc0ef9920eab81c81819990bb2ec37c0defaa57385488ff70302047c435bb500673065023100fd803dc814e2db9ef3b3f9b10c2804958167416ed4f3a641a7f2d50831121a8b27589e160761a0be59233da8223751e702306018a045cfab3890f1fe20e1a3f27e1d0aa9cfd48fb1854991a6415870ee1201634cf72b4086d09997a2c8bc269b1c900302047c435bb50067306502306538ae95d38166b84a9088094c5b6396aaf7527d281337f6be139533e083e8d7c77f3656e36fe35acdb7082099a4ad65023100ced7ff68fd0b38692ec733eefa32011044195bdb102d0395bc4f7beea2ea60de45df75677e430346c88e825facbc66a90302047c435bb500673065023100c86ce6eec0b67a3703d533ded15741892fa8ccb0c45c11b3867b239a47812bc3bd760b760a44d0ad86fc58193b38222d02301503fccdf1425326e6a07aa6cdebfb41b1d66598c9d29fe719bf180dab94f4f6734bbac02e407107abace66acbfc2cc10302047c435bb5006730650230782f59ff26327d74bce1227843786193ce07f88a7815f35d9cc44fc8effa6a26f02e4c1fed6798669ff267d2a328f05a023100c75f4c50d7ed2978393768ecd00c7bc8b62410e3e2a75dbd7eead7ee8b0c3f97049f4441f7127f243855542e9aaf27660302047c435bb500683066023100fada8bc24657955b63a0a9395a2d7ce8b825498158f1d5ffda37618c2c64561b74b2586e94112a4fb7349ed6eae2ceb6023100dec42df45aa37284750c011f6f9e64d3cb0c7113724f1ccd42ab56d572a8da8028fb6b4b6ef8663826d16902997fc77b0302047c435bb500683066023100f4ec9bc92182ff4e370b804d4d486b9251fcc6fc5b6237ebcf119544536f3af55abe71c1565db558601a82891c61bcf7023100b828c35df331ede479e32ef7238d8925c878dbbefea55e51e94c80002472da16ac8efd3f49059f72676b6265405f60a10302047c435bb500673065023100c841ed3f4add4b45c0d4e0e20543b0b8fb30123890be169b59baeea27801f77e6a7147d556d2516fd43b8f5048f4f0c1023004515f8be9186f9d82a43e43e9527d086794cdd33a1c14e8035125eea1e6102b1cb453a3025d01523d59754a3df3bb470302047c435bb5006730650231008e2caffdc099946e513a34712a3204811a8e0fbe377d6a8a7ed6fd273740c78d8bffec00c46bfe50ecb5317ceadcf37102300b8b5713a7f7c01d992fd30be22cc3064361af2de830a5f61e3e79970035675b1d0693ebb19180ef6cb8bcf252d5a19e0302047c435bb50066306402307b58c6710e423aabe007b04d22ce0728e2b0cb942ce891eb01bd73414e49b2f42e0324665334c64793c4cc68028aa8a002306cb89d0babe67932503c893a096c4d9d1db40612ae05d15d30975788f2a1cee80e4557a0defef1bcb17fad45876ed5dc0302047c435bb500683066023100a8a7d4b660c590edc97997ab6c4bdd8a4f18e8dce6b96b6a222e7aef690d37f06f18785b3aa558eb66bab23ff779a086023100f96eebf15642494fc53410ec1bbab7c1b31a036db7ce70b2792a8cc81218ded664e7aefe66dcd16c3e893c35426780ef0302047c435bb500683066023100c983d45e08609d51f6315f4afd2e0e6374c8b39ed0ae1c5817e817c96d13e056406a2b7b71860ea0974b806e0c6e85d3023100e50e553ca1e4ee5282af6f1ffdf220182e7ce3a6efcbef302ebc2aaa60e41dbd85e803be43df1ebea13cf85cc587daf00302047c435bb50067306502304c1f48a1ef54976e15245a2b8d94bb42ad4eed417a1c13e48a184e9bf191e6617c04699016bc42d7ab2ef2052e51366d023100c2d16e774c81296adc1e2bede46d4c0110715e4d9abb11e45e19c24794d4e57e233079ec20a1e0c0913694ce1d95d00e0302047c435bb500673065023100d9b69395bf9aa9c085d4d1e7d07e0bcc6ac8712a8b8a675060f8a4a3b2b06b4ccb821ce0ffdeaa86ec7050ae6c2931d8023065ffd741c24cce765722d2b00d9384c45b622546e26343da54e3348c10c69dd503b6484f3fd425f64623c44bf779f9ae0302047c435bb500673065023100b5a41053202e5b84c47e715f96d6c2384cd334d041809e6f2a86d7181c89e4a3837388b634c5002fc92244a38ebe2d0d0230199072978d0106c4810e4ec3bda3e18ef0a6799282918c9b581f554da3cada4e6c17c22df7c481433a3ff5e94cabdc940302047c435bb50067306502306175f6f90af1a1d90477fe5b9da2ec486f6583ca1b2ac1713721070c91c01827be3e87dbb12ed9f26a5632a1f0553bb3023100899bb6cceb2e2b84ca9cc176b74e81531a8bfee49987b896c9ff766772bce0e1683aab67e18b91cf49a60ca2ea6be1ce0302047c435bb500683066023100bf991511aa42d6c077ffc24facf7458bf74cd050e969c22593c46ae3aca94306402f1131dfee527600fd090e0d642072023100e86f58d76cb36921624e31ddb09b2b078c3382819e376cce3127821a13a2b43bcb5a53ba8f5ca71674e44eae79d5b0240302047c435bb500683066023100a0ba279683c1a384767e2108a9702208e7cb57a5d1f44c8f321a8dd2b165d12b02246028aa016c66b40624242ad2fb83023100affa5267d0c4678a3a30fda8fb865af45e884c4e902085cae43b94900497a42f1e586cedfd2860fc858fd718ce3b94000302047c435bb5006830660231008c99148ebf8ead4aa1482bc4e48d720888ee97613103d374698129c46f83061f5af6aa1f13c4496ac2239efc2a660562023100881d30cf5926a935fbec2fe10486040e945e65a4cc393095856b28e9254fe7b843387068efaf340b700236a6414720e80302047c435bb500673065023036862fe8dec49be784e2591ba6623f00dbeb123fb588b626865fb627c8d01a50230b8ee4124915ed4c62715df775dae7023100c31534131ca96b80c5e74ba0478eaf9452aee39f263affd6af09f8836e74f8767c66694cbb8c4249ba615da3ec23d1a60302047c435bb50066306402300e63b62b8269eeaec6849df814fcb7975964ca8fb7171c37b1433060aed0c7d7b99a97f2a37308627cbf03f9b5384c15023066adbc2e21f87e3f1686a19fc05ca41a565de7f2d93e2aa16cac0a64bd70b7a344418f38d44ae0829328957615d804db0302047c435bb500683066023100e698db91e366bf95d4d295a3edf0f1d87b4596cb259d5d40d1cfc778f7afa32a67ff1c0638c95f60e84a61305911757d023100b8f3dc952aef7f3d9de232e68af72b99f41647756e8f5997f2c876c2281206716dd9f5c08b00fc02e3356f2511af21530302047c435bb50066306402302721c4ad82112bee7e57ebcbf7b8fc1ebf4577bd81947286161e3920f2338dd23d289643e1ba540d13e88b2c7017f4e302304690ea4a5ac093cc325dd77abf8a5718dba405cd59a0905a4c3bb065a49f7dfa59743284858f634e6ed7ac038c66d3990302047c435bb500673065023100ddd0d1a1dc4f0d42c8b436c0e3f5f3e15279cd484c99fd2d1bf75fd94b41142a52be53ecf649504d3ffd51fe86b397a1023057efe469c4ed490b77fa6543de2277998f0d75aa44b06346ec9f40a92d804506037159b4805f178475b12728445a52a10302047c435bb50067306502301a0d71ff31ea161ffc63fe305281b5298aa8e81f5397b2f77c671842c957bc05421f607f1d9248665aac0a3595713c790231009a7bfae79dd4777dbc4c9e5ed8d7036546e1f8408d278270441f6ef8ecaa0bd27cd045e0c178d8914886291f5a153df40302047c435bb5006730650231009d4a570d128d51bcac1d25b93cf1cddd08eb25214143d4868efccc90fd1e18241692c7d0768e48b2750ad98d16ac478302307bdc19c7be74f1e7c2a6880223b8e0bafcc2036b48a4254114b3d142930f9ad31bdb2f5f49025ff1cb9f0654aff9e3050302047c435bb500683066023100fcc8e7fd6e8c649008e36263e12463daefac77bcd346a7c638972157d600cf47a2c375d99ffb454d67121f9caaaaf85402310099574e84fa62682d766c3d4d16593ead0b07f05b0e3fbc36f93f9932ec79cee839542cc1d179c6be4941347f2a48f2100302047c435bb5006730650230715f057f390d15f9b1944ab96b0d89d35099069069cdf12291e66451a1e6259cd63d4c7d98aa2ce57218f09f0c5dfa840231009718ecd71b666f18681410f6efcbd7206a19078590bb2060699b858663d1b695d638a43fc93830496e0871644d160a3e0302047c435bb50066306402303ae4d07157c9174dcdb6f6893749e585a9f232bc063ea8d96ed61dac329084e836f5d90f535fd81ee719d4e232bf1577023052ffca737cf01fc842b405e04e44e53c0030db8a62243cda0f7d26ccf7e059ef9687d2171f5bb78687306cfabf19686c0302047c435bb500673065023100dc23204d85cb03b20c0b35184c3b42a8397680b2cc57a5dd06e77c1dc55b14c06d138d61d201d93b1dbd667037fbcd6b0230758771a98575d35a3914f5f10337e8214c124cb80c90b444a5280076327c7153994132405f6e425dbfb6b10069eaa1740302047c435bb50067306502310091208be998c1d230e899e068e1bfe8c43a68ea75c80adab091829de87380c61fc3ae36534547f6feec1df77fc64fe412023041121ecb35891cd5c00c48d02517e29f179c80c42e6ef14ea49001e8801a272eaac5453c3eceef4119172c0653cb447a0302047c435bb500683066023100e8f0e97a81a5992c0677a24d06f9a17478f4725e3aa22927ca4111b65181f936d42778a8ae47003669f2902035585409023100ad89b710869d7073d659935bafad4438afbfe8227aeaed61e9573416369e69f07c0628d3a60aa048d6e857f43c9666940302047c435bb500673065023100ec0241139b00b2b7f44ba33cb6d63672c85a6ab49284680fd26babaa36319a75c0cc839df9e0b886c051f16b59b7dae50230042803b4058d6138f35115d82d1a2d27da2404b5e1898bb54360cc0264416654b38ded1adb71fda72e7551c8872ca0d10302047c435bb500673065023100b54db41ae86eab2db8cb016d7ec255abebc4020ff3503879177787ddc69edf09779807df9349bd6fbe2318032f13ac3d02304a3a15d8dc15807480010a928da2daa10347eeedd6555f19a084d7cedfc0bb200523d09ac6438c67bd10f9a244d184f50302047c435bb50066306402301226d0b8a488737deb09d597d5b7d3d59e2a229471d5823153c660efd53c513c338982d46b1a79108a30ad7541138abd023008b6771247c1ed797aaa4002f0352d9822d4bc76778b2185d4b3e2de203d6d9d4dc0c1f643f5b4fdf7611670d4717cd90302047c435bb500673065023100a2625247f09a761fca46f958ddd2bf966656773b710c4b14ec35e7913eaef58b8e1a30efe7f7ac5898b7928569a8a1cb02304f8af3f1fbc96ea3561a751a58f8771ed7844f5b24270be4b6c1fcd52cdf8a83fefb19dfa20bee794af3984fa26ec3940302047c435bb500673065023100f29b66d82bda4676476da25619a7789602735e0f22a7fff846186ec4f42129e8805fa7745ce0dd32342cbfbf8a81a8e902304411ac7300942194e37c6c6bee93bc14a676937321ba5d7e23cf91e78c423d749cf7cdb4af1419a6d428e5034c6e374e0302047c435bb50067306502306a877cc14ced730d1da0ee96608c8508c438387ee9677c933e285c368b5ed6a333484f7c27ccb25f0be1f2765d56c187023100cd251389f220fa6b945d34f66cca4886b916ec8d5b8f7b7a4dfd9bb795ee4dd297b1f5f3ade4bc62ee14d6af50c52c900302047c435bb500673065023100f93f51e45ecda9480cd283e2695ebf004274f5987b740702f5e96f6606599d2b11aafe65a5e87d8e5c122c2101197fab0230201c1b0fed75740628262f540e802bb4efcfd913e19162a2bf30033847743e31949f516ccece22437cb5a79682d86fff0302047c435bb50067306502306a0cdb7b439135be0e68162f286af053da35712b4bc83ee60b11ef477571979016a0ec0c57b134a402bd1ae52bbd9c24023100e5898451d6f358831f4be4c98071586f786ac98e76b9ad0bb51097335d1d44e823b864329390925db16eb9fe782b97b90302047c435bb500663064023079aec4ff805bfcc0533b223cb4f1ff22d34aa1c0bafa87b81fc4a939ef2a8a47ff483664eb46999c05a11b671f0b662e02305a9434c8b396362b8519d29e17f89df80e2528ce5e59353428f69299e3e325467586da30e9820a2ce94c356feb58687f0302047c435bb50067306502305eef408eb1ab83047505f8446406188d86ba5285866c9cdf35fa3174e32cf2e9798a8075d68f3055237bf12e004e3791023100bb86cdd8eb93d17f495cff59c8de09ae0c3f4c6e89edbf2751a1cebc9138d9c00b66c82cde2c343b0c4e38904bbddffc0302047c435bb50066306402301a51f61eaa9bb945562d300b706c5b45b09ef4586f7751dc12dacd771eb3b2fe890b8295fd0ab251787a2e5821fa86c70230249eb1ea02c88fa96ab99e7cbbb1c70c8f454bb54628d5bcfbb2cbf72ffbbe77e27e58c8f4bca586fe4643fcb5540ddc0302047c435bb5006730650230154503eef272b2e4294f83aac494314520bfb06d791eb7fbb50912509aa624f481a9f9ad75765046d094a3dd1e4d9e3c023100b75b099232b01e2978724ce263f9fa814a4b1bc168a84221fb5cba4969d4eb763df1dc6cc95bf2fc21a36981646787b40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c759431dd2749740e9536d0877c5689385c5a0a5fb211d3c8add9cd5448f3de23dd6bd7f9d99919c41a79fc71826b29a02305f422ef0be5c0a52ab0b475e5035371e1a71d88ee4833a827dd32ae3b1dec67d84c878181c9889099c71a1cec51177370302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304642e6bc5e0f9aa1d86d63d86d8d542d690a27af0ffbe64f9e321e57cd554571e3cb497d5033be7bf1500ccccfab0515023074d3a9bfa46e52e22c14d7654a775ef57611842e402f322b53f05cc201f3a0d8caffab058de1dfc757d4442b85a9778e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307f03ddfd0bab5cbe640105f85f7b44ea49f9a9ef2f46b6e153530f8891188d729dbe4d8dc4ec03c625e6d50cbcfe4401023028003ce60f0e31d2631c785e9e769beb7a9981beebd289a0f6d5163a395c2b5b581b4aa6cdd7e3be1dd773855ec696c30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023027b9f346ac8020a04610390e4856f2949ef61cef095d04795aa8c5f12d5131280674465b3706b3671169eb96f207d12702301e51084b4452fbcb315a2998cdafa570784824f066413c6acf28ae952caeba9a1fff459744a224722d6fcb102db817d40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023061711b30e0d44f693609ca8e79dd400b1c3553ae4e5c1c014bb58d0cb29c6a6b91367683fd695c849d8b217a1e8ec779023100f4e0967c78e3fb7de6b0c7610adce2de5362b40cf80b1f93a264001813510f0410c110df458f17e460bb81f24141e23a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023071cf13e48169dd554b4f69c43d17ca632d7449b09befa3db18e84bacfea4483ecc3499ebf36f0122671f64c479f74a5d0230784c0042e4c712da84319d239155c2f2f522a3e34a0a6777e3d44d03f7fc01acb45dea9fe13c073637f0ce35e8f2a0020302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b54f4fbcf8ae2e6f640109b8f77a15148aa038bcdf93ca6fdc36ee0b78cc107acc450108e4e817fbc6f4c50a48318c17023005ab95102bb25de944c420aa845f90f7f33e8d9bcff713e13ba2bc25243858a208fbe9329fec9f3c63a97f29d6fbaf500302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023018a8b274228416044a0482117265191f7493fdfe3b1af4aa6f9f4989e56c38e71fc1cb6b24d7dac1236010043e8b59e9023100abfb21b0f4fc2a9648a72b123bc3d664853c8206b656a4d00b5da1144adbfda1b977f26c02fec0abdc0e24caef2285120302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100aa0978d7c3db46eaff2891dfb6225dd5eb652bb0a2805c47041e213d2d417f1247a3b637278ca5c44f04e3951407f7e8023018d8c98f650f383182f71a3343180d1203862528e0e3e38406d9e044523239a4c97a798c929174987c560ddbf1ce460e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305303ac3f7d791a3e61f974afe66c6d646a9647b9d3f34c681e406d4ca0c0a7f757472500f4cfa5bb0baef9a6c39878b3023100b40697a9451cd7bce8811edf9fbf3a32f3993ce9fbf72f99cb887f23b2cfea59da82d68b412d7a6fc500c520c3df5b930302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e2a4b3fd0117abaad9dcd5d0537d260075ed0e8384ad559475d0d8e20cbcefdf9008b4c53af7763e9db21155748f4b64023100de7dbbb97a90c7b8cabd729e09d2699ea8cec463f19c8a5ad0bba3b9293a1d35b822f0097cd579198ac2e0fec56a35f60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023062662c47705a3056767a65a2b00e1f8dadc02c6f1459bbefa090fca2ca769f3914643a4762144e4a8817a5d5309f666d023100e436132715519705de4ad27c1bcd88985b841b10d5364057e158c6fdf3361bec41e77bfe36e531fe45ba0e2f94be69ed0302047c435bb500673065023060c9edc9106c5231bdb20ea75fc93b45241fabeb043ae5a315fe5eb94b99c312229d39a84fb2960d736fc150ce00ceb3023100b8f293f849ed2f28c62799cc68a0f1a5c4d299d6e7280aa449ec91a5d57d1a0d681209896361d9d13c9c6140c157f61b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a55830535397febc8a86e85daaf2f41395dc815444daa0962fcaac3d9dee2f4b24d770101617cfd4a838fa7716206a81023100fd43a7b2680085fd20575725f105ac214917028f6aa1c65a697f37bcdd65fec3e4338f3e24a442f6cf94a12f876d8ea20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a99bb530923365eb67942557095b86a8308b771f2728a76eeaaf1cd4a7260c3e3c77fef78fa650144655ae2e29f68d1d023100b568532511c59aa0b5076d85f683031ae82a5b6562e95afea58185c0e6e34b235486e441336b5a20a059635962c450d60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100dc68ce54f948d22c2c29f754e1348b9e3e8df78379c8209253114ab296f5fd133847fd064c77ed0ddeb44c2870c0c049023100958a35ea5da69d0d837beca303eadfe3b2391cd5fae04ac699c3ab66ed3866d739f17f6fae68375917ccd15bee49e04b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230606d2af4a29a0f539bc0d23fba5fd05d25c65feca24f811834d4565d48ad764f82199616497cbed4e50df668d6f6360202304b4cf80a81c150c92be7cb5ca5d6f04e0c1172fe633862655ef7f4b99335e36c43ed3d613f0b9e39afab8c6ec26837170302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230694c9089c73563ae7fa60ccef3b728e3d324fb74a029bab0111b8211fc6e246c902e77f34b3227dc2b9e6c7855055cc6023100b4765aef3b904665aaff637c4a7b4a94a530b926a0fe87a1068aa85e0e895279789664bdc6094622fad8ae9968d59f000302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230175c23acc98645f050a048bb9f1d8343163d67f249c96014f7c21f32f046d04e39039d472799f1d202a455e7cbde871a0230495746b52caa4f4f417e7a67b138ba9103aef2ef7dc0687fd0e6810f2c19d95e4bfd9c556aedfb6df98eaf2943e7c5f50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302889a80773920a919c4c51914872c964fea28cf31e0fb0fc825473b2487e9fe1e9e496f2dcaa53614ebd76b0940d773f02306fa8c04109a5ed22525902110a8cb0196933b15b75a3bca7056ea9a760cd2ad72963837f78627bb9f9eae17f307701800302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310088a0728fe5d6e85dff8489bfecd1f009b2194c87db345ebd528a137a0cc67ee5069329a45aada8b4e89d79916c5e668602306c7ba54c532d71a64f50d81fc4f04a4337400e86cb4848f7f02c25dbc9daf52f9ba6ce449597d379c44b84276fc266770302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008d54c023f12862ffe3a3aa060afbf745e82b65259226dfef02d3e288fb8f685ec38803b37aff546536b407a517e28317023018e2e0d7a0a68d9744fc1b997cbfbe0fded3c76471ad503420e4884ba80ae4ff3137c9c5d27fcfeac1cd726acea31fbe0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304f70fc067fe3ad4f04a3d252a5aeed2fe5d7bd2f5d004f4ebd9be0439a60fca53ce01e4a9bd8664d1eb2291bb174e43e0231009cafbe4e5d180199c86ab31884880378ac3d399e42c7c8f9bc2188753fc67abc4a22fb7c7dceba9f83486fe9c6dbbd9d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304f61828619d953cbea29cb8a35f60b41fb8068ca7b2520a8e79505ecc5dd847af60b8da67e45c3fbfb6f387aaf94019102306043de84cbb1488ef2954fabec14c2bf2bc8be714894d8d9bd849ee5e3f07dba2deeb38137fac00852737a4d699795330302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f830319a3facae8975ce06926c051141ecd5a1ed7366f0f6b1fb85f49acf6e18e20809a3a1a96455f85fac4556682a44023100905f50694c9e7607190fc141596c9d4698cb5de637ecd21a688e3048eff6ada1f0f6fbaacd31532aebe4508646fc9ed40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500653063022f6856fbaa9d6497156a92dbf6a773e8db5e14b179ed2c5ee7181930475476712c21f55ddd0858756edb5097f8fdf97f02305bf8c2a22c0f0db35d9453868cd32db69f1b508b8d5996592bc9857de1cade4ffdd70c04fa5eff792472206eeba18a950302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303342ce3383b9a2d475b72062e3e7f1640951acf09362c6e26e667d114ef59ffc5acb4e16740a8002bf594acd67c0e91b0230192100384d9289304f8c8f83b90becad5b72a2398573ad89e602abcd5e25af9024a661771c366575076a6d624a3e30df0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023074b09dbe8cf991e95dfaeb908ccc68a795405e190505da791f59e99276ac0c45006aed0b36c868f79fa08fa2965483fc0231009c7c28e604092bfe76d8939dd068dd85e9926fb0f8331466ace87a2d7ae66c5950fe5571603800c731fa52cdf352af690302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b13256061ece216ff9e6d245db0ec393021a8c4c16881427fe7cf41fbbdaa3cab6c46fb7c2937bc74c42f3d1197af41f02306d774757ce20116d583b35907164c9c0d33397af8c85d2c78ef6d946514d9059e100497825055e43f10af3c4b3635b660302047c435bb500663064023048a26633645d21fcc6fd64523f0de832038dc3d0e719a70eef92c063f848fa7c583d8a8161ed6dc00bf8ba85daf76acd02301c8854ab7ea8635bccb0060fcc09a5b62cf7ebf95ce112c21af679650926e6b53284885dae54a0b33efdbb204333ecd80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ef9c026879cb1b74e7378659e988bc9b7bee1e2530b8aaf2cc0a3e1cb746738e07c6ad98c7bf6d4419131df79fbc3f5b02310093d5ca7ef1595c55eefe6f9920b07779a05ae6d9a3b27db19c6e12d69ef7818f84cdd12e60d54aeb326414a213671c0f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ac200053cb776c19b5e491aa6bdf728a242ee8f23d2272ebed3a7b6ca98b9602b4da23625384455fdce3d51ffbaf428602306c14c02c8a35232f93fc1e550302488229e85c1a536abb49f6b3445f81a4ce44560b7c91a0ce3d74071a09c7fc5f91bc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230137c8038dd5bc272a8faa98d00103d4f47ad99cb4de504456bd92ec2537971ca0d5738a2e0da7af2d2561a2b5510e79e0230331d9c9dfaa73d8a17607518380cfaccf2dc396c14e5a584fa27dc7ad69c9e9008e79b3e8d9e2a52ef7b8c28ee748d710302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100929d0187e8e0380d723c39b1e2a53439882aab2b93e60b1cef6574becc8a3a78518fa4f57227dd970ce21c1fc055e0430230683851091d298c35dc9a61bdbf27daf6743f97b6f43523f68335a1e5092efac08546f0b2406a176bb785126c4ef9a8d30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230795bf97ab791d2eb0c1c97859d9c01ece1b3f35fa282b620230d2ea595d34d4f482bd0dba1f44523bc176d3ded8979e70230547a89c3bf35c1d9c554c9c3391d07d2715c9ce7348f00e509c0802ecfa627df443ac500ac8382dbf32e1666d67377250302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307736fd6a2abba7e6441f5497091e90878caafb8af5736b0a4f277117472c8ca830d1194e65da7d14c08400e8172a7c4b023006aa76697642b61519c2b25ed56d1452ed1228cb00cb10ffe3056e788bfc15911f1b8d47b3b560322ad8f389ad9bbf120302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ab55655e982f692d23138fec1151104c66824a4d5dc00f0a3f3cdf8e18f142faefd126715c4b1073444637d776000492023060d5749ff2d19dd5f11af7508c3334b1c51cfbee504b7e344fc21daec349b18edeeed07861c61105e40f8626ab57bdcf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008b3a534f1c5b62106163c00ff012434405c837b32153fa369bfb8e199632e8ab45bcc2b58fedeea578d8a2db63e47803023019b641b4454ded19f6bf24e9ea8832bdca3d76b91906bf6af415f149725796ae93b030abdfdc0a17ae32ef60ecc3cd100302047c435bb500673065023100abc80466e8a920a2ebaf6f2271eeb912704eb01f4aa664982b1353c56deb6296621c8fbc5149eb6d78c9c383fdefaffc02301cf0730bb14ba3e00101fcfcb16c5d96c686688b1bbcb65ce352cd2e92532f6463181710430c6e19b4c18e487b78cb590302047c435bb500683066023100a4eb225828b2f2f1537c3bd29dae0dec5e204f7715edeb426b9d4eadff41b1ef5bcd02d5f0aace2b723e8dfb349e0ade02310088a10890e0ea0e121b6e0fc919f499c9db7367b8f001bacd5129089f3ab03ddf7a7bf18a56e3638bdba7a07c3d0afd630302047c435bb500673065023079c2d9c47a5db8810b8eb74d51849c4f3e995ad73510c91abc653bf5945d2bd9a56ae034714ff7e890343d018d4a697e0231009b5cadab2838ea688131e339fc5beaa0d991bdd02b0969852a91e8700092b481c387888b0e461ebfa0a7aa3bafd5f7bf0302047c435bb5006630640230574ac2c88e3bb08fb8832d9463d643735723bd737238ec419d6f213d99f496a479bdabeaa4bbf192d1b2692a41e1b8ae02300af39fb46c14a7b4031e63c89792f4021c203fa22ea49e46b3edaafb52160845a38c1830b8c0c0c5f5bb60a88b3dc4b30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023071ed7d17ff8bbeecc7fd24e56d7efbfc6e8524035d18f568690840869d822df57b891eaef47b08c6ef6c846fd7bad6450230198bf6e6fbb1772a911e2fd07d7ae51bf90ab625cd3cab0fa2fd73adcf6aadca08a149349174800a535bc0b8c8da47b00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d07a8b5aa7a75c402fe39780490248e03b1823a616cf10b781c2bbc657f53c011f1b7a6cea873b17cdaa19a6d940168302307a2085f8ff674c353cf7e05da7c35541b5360c9ec0f66286554af09df25c7bbd083756f2a44d02c441979ec938098beb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304a6a08aa76d22dfb9488fdda35e81802079404d00ac4ae0cd70b945fc4daf95760085c01970345a0d674efe925a14e46023041c49de80aa1aeb4ff574f0d38783e5b2de1a16d837cf0890b0f9b040971c77aaf981ea11f5da02d3606be65c45bc9c70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ece177aa4f5230da50e1b812c9f5d4e918528f1a922d484ab92a13e3a4b8c77f034808d167296f5c26194f418d453b810230545eedc132d51a6ba44326100f32f60ca945586a196eaef34be2c77b827d45c163eb86add61af30652e39646f30135810302047c435bb50066306402305ffc107e22638e64cfdda7f57a9251220499953a7f9120816d7167532fad2d4e875fa6a6c71cd263ebbd71c69c39397202301e6c17ba6a0c9fa0a96fa4e10f6865978f9ba8e4aefe06650c48f92384ba9e988801416051a2c75dcfa0eb52bc8069960302047c435bb500673065023100ca51f4e5d96b54dad8aab96e97b04391bdd958ee382116d51a608e7cae779c7bb47d4a12011b7b9b30b445b86975d07e0230592afe4c7bf3038abc6367a80379784da162d00da3ff2ed1067a84df5b0dc89f4e67ddf29353673a7efb11fd922e901a0302047c435bb500683066023100c5565b22ea6b54b72a9080b16d173869752b023247086584397d27a255be566dcb6ff49abbd1ff5b0ad0ecf5d5ca855b02310088d2918a809da39ed65eca872003b91ecc9a77b035ff76b68a924ca7e21c5a1e0b6d2184f290d04908def0bfc4d60ef80302047c435bb500673065023052edf0c405755caca3aadfa69abc3877c6f61103bf59978cb1b44a7a170c6634a0f6195e1d7ccac1b6f83e6a21df2716023100fab83cb4e43b9b594e44cd8026c1571c85fc7649b8060e87c9c2a819ae21db0426a0867ed0299f0049bc93f7a15b96430302047c435bb500673065023100a7601d117d93c2684c8290d4fcda88fc0de9b75c3fb84ae54a5a9f4022e83bae0b283d574e2e8a2e33790b047aa59a5502302f1c8e787acb71d433ab3df949b39c66e4123ea2a6579a8cf19e3a106ae7ae68d01c4dff2298e24e39bb09da29d168de0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e37c8b93da75606972902d95ddd81eafbc754895759d38d0da4887b76d003c83490d5c81fedd8a56c4d0056c64855d8202303c57e67a43a3d62da3b39aa7822307fbcfa8a323b73f220f538684d790bcb6f8f320231855e9b74352349f41a39c83200302047c435bb50066306402305cbdf1c0ae02f8f8ae3227b17bf7a1e34290e32d238adece2bf438b348821e2cb872c2391b23a9c04d6e8d06907834d102301d79bcec938014343234737f08778ce993ae5043a73eac94e94c88c4ed5d533251f7930fa5b63fb6035f9102e39f7c420302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d30677349a7cc59093d53641badd8837c1b356d386eb46ae00dc582b06a673457027817b6f529e9b9618d68a8069e9590231009c7ad270f20f3604143b28d6aa3d403777c8f34db88c2155ae5fd6853bbcf0aa307dc369a57b984108d22378ee562b4c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100941fd3ee93b50a13c763f64a15d9dd016a2d65433a57aea5c3f47d81ea2581795eba35409372925f23b72ed437ac01dc023100e1936ceda30fef07860d363660748a36ad0bf556822d9f1ef8d60d417349b6d557bed7f82fc6b9e47534115e8f4bb4dd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304772d5201c00095be4d2c1cef5cddd0e3705d525b166d1f0bdefd11caa7b893be5fd3dda56a22a284737e9c5908645060230675e8dbc0716ae1e8b3ec284a8124344ee66a12d9bc33c4008ec2ca57f232d93df9c7f1cfcfaa95eeddcc73d58db8cdd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c5053cfc00a76b188197a2edb1b8a8be7ce1ca81fda15a6650c9b801b984c719dc26567106cf320d52f20852e4ef5432023041166708c1569689b2d8794782f05e33510c7e5d20f57b19c89c00fdab4a974b0836be5d7e78e3146c50ed8e5953cbb00302047c435bb500673065023100a386a2cb04557d29936b0c6d8fa1a381dfcef26cd35971a64300dbe3e3e1c22a224b43bfd13205f89cb0830bfedb1f4302306d0ef97a73dd60db6528bb981f95060e7b2395884c6d69975e67b03ded2c0e0a2b95986fd9928c815ea7df6970c2b6aa0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310093368091d8cb6bc972ec992c6af43eb88d8e340eafe7b346b210f5c693ae63a16a2c931dd75a5fde8377a68495b636580231008d77511e8e17aa44eb4f7efce07f612c3677b024485ee630e1a9b893fe887d57dfd4c4ff4a41effed287cb91ccc377fa0302047c435bb50066306402307403864bb6eaa99d3e5994013394aaebde35808724eb1edc70762eff63ead032322f27540919140aec9f61bcb24708160230530ac9af9dcbbf604da41eafbeab00e15b61d5c24080b46f87adbbba2ed7c07eec7361b55caddfad23715b852ecb64c30302047c435bb500673065023100be34b86f7586fc6cd38395571d515e5e55a64c34370340be2799023add544bd2fdf69cbf488f1357189bd7a590785ac502300fe2f1b86278fd9c2652a9a6695d718a217ee26851e05fa5f105a13c62a6c8d8669757fed014ce7b654907dbab5604d20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306de5af0ca962d88bc522356a93c5b75e3c16fe642e9b8fd99a77b15f14a666f8b7c6fb094e059232719f703fe4d7ac7b02301629f20b02a937a97072ab473845499e34c2ddadf19299eed98297604f02aaf2acbc59742b2904f84c38452b455b92dc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100890dabd9fd3dbd2b133db956118fe4c27e18f81393f6833e868948fe73c071fdb09b64f159efcba480c891dc0aa6596f023100fd28e5b0193bab47d9a71b291cd32396e8c58ab8c572428bd2a8cad66cbc609546b84bda96c7c4fa2ecfe88fbeab96f10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009e61a2f9ec978b5e86a9c92b5a432b14679f4d1f3f4539ea582e3f51cf18df8c121c4a7f284052a59fa7662188affd990230687cfe3e42bd8077c581591c7a8600b80375ea9f0b8a937ad31047a9122f1101536079dc160e0bdeb3ce25727ae3757c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023028f8d28fa7e4669fa8db2e52ca4962b09510819cbdf7dc583d7de5edc20150c893a1266a9b3368b6216bf355048acecc0231008775a5d3dd507b208d1331498c83ebcdea315a84a2a7f74ac6e15a9b2275642d1cfc0fb46ca10b6bf274d378744548d50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ac3d5ab18daf6a267a5e13ecc61861a89c9f63939cbef56f138e5dcfb75af15fc31d966c554cc8e5c0bbbb476d6e312a02300b6d97873c631f055fa5fea55ff30337eb82dd555dcbbed52cc78b0c795e37ad81cb2e9e12afb7986d6471481b475d350302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306524111057cb533ded53afaaf665a789a5954ddecba90130b2413b35159821733901fcec560e7068c68b466dc4996a0b02303cff62d71c1a8d93bd8eaf50b53d7671268893408873380ca217d1652e482dbb7d76bf7c54306645fd0c7c7ffea920b50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300d1e2111647766b5d77c36002274d2f9833eb860c6a073626bf0947efe4532cbd03342d272ca13c4fda0e3fe969011430231008279d038fafc2893f18cbec4382cd7e9259ad9043f62bf3c4751bba08b0ea655919dc30c7df6ac3d9d7d41c0d595c4ea0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230499cd047e4d5073513b05d25d1a21fa7535a6e096f1468a8cd91a51e1d17d842c1f7e374fe963ac3ff3274e3563ebafb023100cd03a7d59fae53193c37413593461d4ccc6cc08062a7d66ef550489871300589d0ddf55ddbcf831eb72dd1006de1ae350302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306c7173f1d4be76732dd3a8d68d54a4fb6427317450ad9e8b58b2fc30a9d8af16c31b6ff0e712820ed1a68a4c109af9dd02301a78851f1efcb625999bddc7bb12c7447d259554cee91f40e49864ac9ad3c16867dfa1d9c44fbe2aad5ac101d9edefdd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304d3e697de81f23001ca4b85ee09b61618616d64a1a596713652f8246eea8df5bd83f7ded434c571985133ea8c441369d023100a8bdf86806f94c84408d69640a36e4b706fb3e8695e173b8ad3638f7760f27d3b1b5b1cfcd1f42de36a50b8e520a412f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307c1400757e7a3ce1dd9db4d5cd351954ecb898d61e548a63c9d27dc7a391377e7c7bff94f60cdaeae342ee5586a47def0230476087104cb0a9f41b830115efe4431e63ffa4778403f68f2014e03e023f62f6c837cbd63548bb0ba83ec5efbb6c176b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009aa95a92318f45412dcdc69cb55289300f339f4aa294583a862aa2c48a1cc6038dca953c2864f2bc5636300c481e6d15023100d889ceb3600132fb038cb825bd308c00f28f66f3682579d8161a2d3c11007db42b53e4d0de97e483912449a4f997f1390302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100934a504a5489549930d4e556fd16892e40c83a59c62073b4f55fb85e41e712ba767b1e0070833724fa9af546025a6e6602302c7dc89b62a83f8ac6895db596b99186f2ef41e1ac93bb8fbc6ee3b2e6afc59482bfafe0844f6b413fdac03c49d3e63d0302047c435bb500673065023100bad8cd234472865f8280ee874b10661cf317b014ff86c69cbce30730ea5ebdbdd90e146d16fb9d47b3c0560a2f3f036302304c34cd10a8df32e8e29b197adc1721106dda8ab46393c7e2d40815a666ebf736b28201668e2b02560dd73798edefd1e70302047c435bb50067306502302b1f8e5070a38a43fc6e5a1d37666a5ef6320c1a99ca6071b49d33a9df8ffef2a13083b9d19d2602bc852afdfd9d3374023100b3bf4e77d05c0cc7f16fa01ffaf1e1715d0227587b880cd41ad8bb26ec2bb65cfee5ea25ac9470ef1f2f158b0441331f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307c69354360e1ccd02093fb50a8307b7b29a41bf5d760bae02e5dfbcf3c3eeeaf09e3b2c8d1a5c6c72481ad1af6a1519a02302ead6f7dd4c45c8e3f9b1cea2cedb3df204ca70caa891acc5caec8860fbc820a0619a27e840ddc6cbb613c7593430c150302047c435bb500673065023100a275f42dd3b84f43f4feca5a361d68cfcb2516046dc04a02df203d271100fee1630929e8ac93fe70d84de27acd9e60db02304a733d33dbb3dd564c8cf4cfd406ced80d8ff9a67e27ff80800b437496cc8a7ed1e5f27f10b89ec49eaac05ccc0ad3500302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100fd351af16fc2737629a938c15c4baf1795eaa51616d5a1319e480b1f0787fdd219e1d3b68d288d47aa796fc415d0f7e1023100c4935bc02d6416a9c5c6104dfb6a17e6e8dc9dbf195a97db1273175efa6d292ac68d195d1480caa76720b13a2725d0f90302047c435bb500683066023100d6c4e0f33e9fed0c6072d05a6a2796e0e42870749e50cef5fc8d015ac80321969ec6e44b9bf921d79677d7b1927079db023100a0cb7c9a9c4a2a4eefa48ef66a4f7f71644f081294ce682632ea9a59f97ed46ccf834b9ca484eca410e0e6b5c327d1210302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230407e7ccfa8cb82eabd00a1a1384c6a1916b19b2706b15674453e1d2a1e6fbc6ccd981fa82bfb9e91db6f2b70db925744023064d4b9f6e9d2a5463ba69b3fb12328a43ddf4685d9e3b27cab636c6d9815cc1035917a50ced7dbb355959de1b47c2a260302047c435bb50067306502303990309c48c35aa20e722b97d7254fbea209ff8e2b240a9c0648900e6ea6f6ce957b3cf27efbc32c7c3d486b95141e26023100c2998d67433711ded7bf90f4a2c8b790f9cb83fa7a364422df7bf25cdd27d433bdb8d287a7c1325adbadff4c2b9bbf760302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023073e3413348a23b8542b2f9a532889aa0f51aa669b0a52c3edc61e12c30a4c949406fdc380d3a59a2fbfaf20fdfcb8ecd02301cf090cd18bdced7040c6098c9b7a1521a49aede59278b6187d8cb3514da312cee1442c73b2c7d89edd7cbdf928457490302047c435bb50066306402306ae1b2cf88eac205308fb041c4a8d550b331c3bfd4c33bf636564bdaf9374278114e38087d466dc19c59150bb1e5ecb602305e5d2a5161e3063639f6897443047fc764ac89ddee14ff5915f31bf543ffe673cef83fa36c300f1d12a88cf277d455620302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ab4598c04f7800bf3dcc7d75877106adeafc987f80b08d51662403f1b7ed4c32e664ca703a6f4ef838e361247e7aa775023100d6daf91fab93eefe9074f7e8820ed9bbc56c6159cc45ae1e7523a2cf4e73c23afa3bbc91896b3fbf5f9f32a89d7d380a0302047c435bb500673065023073e478144aa30c42b7c1ac2f2392d18b9c27f17683131403f0d9445196b5d934dfdb204648d42ee4898ab55a44aeee93023100e20ca15ef1c947c59bffa6739593b0a2e4270935574c7bee099274651c3c361f5d021d5e14a415fd8a4f06ac11f0d6e20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023013b2866a288e48c7fbd038ff5d60b996201b99bb1a970f01b95665d94da2d1bd49354113fe2efbd5a92f805a5576669302307c5fd32aebdc53bbfe42e6c33d63076649e7d0037ab752e875fdfc225a3a885ace878b498d5afa63700de537020e7f340302047c435bb500683066023100fefe77ba3dc35a51f2eb1704e6b4f08ccd09798d69da80738a48750130d8f89ebb4f7018bd8e04c52b82e71c59d9d2ac023100d73bdf7562c91ea362fa689a0cbb5f01b47d35ebe572a1d8cdcce4179e647e4ab01ff20af580192af1b396c18781af760302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100aefd78004cbe38559c77f9bc3ce2ecc5d1b29b23cb7dd86bda7010b8f656e4fb941acc83d57a9aa37643a3919bb6bd2e023100fac28d99b4ac7bdd85ea125b361e0de67aa3191194e9ac9abea84c00cd6fd2febd85c54fc5a0994c0ed930dd4986108d0302047c435bb500663064023038457fa23961d9829b713f2c62b2b0b78c7715ee82ea2437061d0e6b4f178762f134859d19670ab9312b63c88bf00c7f02305bb1a48c14dcefef53c48c1cff9cf100c85d9ee680888b0a0324119e67fe63e7f0b9fba7910a0adb7476b50eef87a8ee0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008b23e2c990d5c9fc939702c2b145dd716ff02d13635bbd7373a5df2156b33931ddae3bd51d6c062b0df0c917188caf8a023056ba50621d2c43bd70590c9f89a220e75f4a00c1c62eb6615bc2134db625097014ffb497de0639efd8a4cec40adf31330302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306bc8e6a1d82ad485bc02537029ebecfbb4130bd759a9cdbb62fd35643dbca8e7d265af76e43dfc7fa8e8f6a3ccfe555402306de7f4ca3f8c430168dcb7cf25280ae4b81e8f468faa7d5161013ab923ffab74ec32b9625d8c82d08fec822405faaf2f0302047c435bb500683066023100d5ba902d699c0871144636c08cf4bf3ccf4355951edca962247cc36cd99764fb34fd1704104b5421f749282bb98ea2db023100a4e4c2e9bf0a747372d42eec0f6b16e79efb959f6efd21cd44662751efe99df49fffdcbe46a698a34ad3ea7a62b214920302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e435f4fffc7fe3f78ae79d6e10447a7f58ddbfc0925043b25277e73f5af01cedf5bc1a1f4a5164e2c74a5faf548e4d17023100a57246b65febf1a698920c5fe5c404c415d0fbc12d556bb54223da439c605cc9b957c689f88073bf6889f3a624bfdfba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d2a007e93883af07f8c1d8d0bd20b7f1f95d5a7a4bff4f58a8bc0968cdf56aed7fcf3ab1b6166f4aa076c81db79099c802303c80aa65c33295f98a7e9ad4a4aba4482328c953a58828662bcbcfd29964d6090a5d85ba7f16ebbbef7940e11604a5020302047c435bb50067306502302b5522805e828f3b2c6f6a48155ecf6378f6e8c9b37c0b73d85de3276504e151ac5d2a93b737d607640c634b5f3a1b18023100f402a6860d5363d82cf323d11f9a67991d975bfffd05bf805ebbda1d24a293ae36a6a2eebdd1febbf616a0f71cc08e200302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d52b65e99f3ad368ded9e9de08dbaea67db0e29807aa6bf062894b44d61cc74a3ef6f0e0f97217e85cda9da2b24946d7023100c07238d558c5fccbcc6d98b2454d5c1cfc2fea34ac8889b223c09bcd040ba725515504a3777d21fe29def46e693ee4790302047c435bb50066306402303ca1532dd631e774a965e3efdfdd54499833ff50120a7e51bea051cb40c8363f5a24778f4235f760e422c3e65f1345640230134e4f74a39ed67d663d4194d15b9c3e1aaf71663cb930464f303cbe4a1fecf205f7d5aa661710d287505d66084970180302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ba68e0a01a07b150da8ca91501a3916a223e5acb00e4522afe3c306bbab854dc2d7f9b208c01f97b0426267dce26d97002305e6eef30972a83b31b7ef4a1bd9eb4c0c33f8bfef0e5ed9d3f889c33604916abcfb9c45b8711975d151e0fbf1b095b530302047c435bb500683066023100bf0a4bc99b5178151dfa6a4cddf86496ee1f3a258b02beaacf41349d48acc84381623844c9f319f4ffbd0d85995befa302310080539fb31404f38f4861bea6bcbf12ec1a1534702ea6abebb7f5bc6e7fcaf17e80354ee29f17beaa4c79c60003419c090302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230252150b02aa3f3a83a2f3875c734dca41f42280d7c2be705ca06b7c3017b89430498b381b490c6a4f21a76c40772cb3402310092e041c950e3d3f5516290b4f883aeef12a2adb8cdae53d68c33dcc5f75a6268b1ecc37b5d79fc828f6b03776de1843f0302047c435bb5006630640230627b5ff4bb9fa17cdc7934ba18dcc97c9495e866a5385c69f012c90ca5c5d8fcb0fb94742a248ee3d7c9d9d6e1e9cb74023039e56643c543842bb69301ce245b19207c00bf3af0814c18eef66c0d3ed8410f68d2c5bd8f65c352e64d10d0ee1b5e940302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023051c6217bd1507a349eca24ae9b8649c097d0604a3d573cbd8cfa184bc0a94456c71cea93c870664a7f243fdf08f24069023100b80eea9fe3962e0ded44739c78e603d7fd2b55d67b1cf7a0f1eb2984a48f6361bfded25ccac823963e3b656361d27f800302047c435bb50066306402304e85151dacadf389725b80624b4f11264e2e68182ab5595293493bd9bdae4d55041d5436245f3c0d6f8c49cbd1a3e6c502301b244b6cfd6ad6376f6d6c0feb9f7c65aaeef33946ae615b05981dcea3cf60e048f4e64ed85c3b5b81d0cee5f776d48e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310091545db15a3378eec2a075fb686884e6aa1e1a4ee712cb1f2d1ba87ff554db71784873d65539c0e8be3ba6c2ce897209023100f670f81abacc28c16fe42d9088dc16293a52d33f9c7144e8418c5223a5047f7a5644570a104881cfe67802ad9d4609ec0302047c435bb50067306502304f64836651dcbc5aa75fd941b9bfc4eb19528f5bcb3e64a07210011bc4e1b81421f428c40db9f91c1cf308c155b9ca5b023100945c8bfe83f433bac17e0c43f8b2ceef642f45aab2a0fb9f92cda449293dcd674a0924d6d6b9686236a12fed8f2ccaa20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009069e8ab51e26bdb5d284097cb17f6a34411ec6f761a7287813b22238192603836446d82328b24d2248a5afd1f76890e0231008dad47de906e219649d7606d15a46a4d32ce972495ed225d57a1c6f5bc841b5bb22a3fd5c3f4d0fd4749e91196cc01920302047c435bb500683066023100bdda553de5c0f7a52404bd56eb912dc48263e53905260c5986585ffe2be3274f59649f4455960589d86a01740eeed87b023100b4a26e5180306f237f13ade5489e411fd49946c69eec526bc87503389d1029b90cbab577da83194d48057a48fcb7c10d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230104fd8b1023584d8eae8415940199a72309c4a0d872d1d6cddbd1308e799d10a9cc19cf24d673c408f24713d8890a32f02303600edabc57105985c8478c82e57d5db1f6aa9dba7d9bb23bbe08dbbe60fadf9af44ff4cc68ba4b70cda9489f66b18cd0302047c435bb500673065023100d46587621fe47634b6ed4da309873f53e951daae73884da00599b4190d241ac22bb4b59371f8acb268b29100e5b6804002307b4a3dd20a2625de3ec9575d5d47c264f4cf1c24989c2b91509f41860875e5f528e73977be8dd87c4daa1a7c148facbc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023028cc5f9cacdaa450736683e01ed0c5db02f70c7a882f89742e8a5b6e5b50bb6d4d4100ef977f31e16c7acfa292d3140002303c9c676197342f8fe4ffeff3adf9b917dc76341b218e94e0f9ed152e7d35d2de8541841c031cc55547f1ce48946be9b40302047c435bb500673065023031c4ab0ac1eeeda3ba4266978f448988586afa6b4a55195f4caf1d9a9e8d77430ae66216f108ef9e231842bbd3ed3bea02310098734c7cb320821ff2172ce115e5e1b26338f279f79c00a11550eae2c60b6b410f76d1e4d1ea41d8d341ba55b2d131df0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023061be35746746ec741f7d8151d51bec7915eb5c0976bbfe60c0b5fd950edeedff359dd58d300c99521378acdf2152b7da023100b5f03f049012422168b01caadca2c7c059b1afe40dc90befbe3b559eeb9fad4055da62ff1193452ca59f46fd230aec780302047c435bb500673065023063952a67afadf2b90dd344d830a6e81822f7e0043ebb3ef927c8251923ecb308cb9afe739c94fbf55ad8689f4a90b990023100a0dddb0d03ced74c3a1203a64a71b20f868a5ebab99c66b3b41946daa00259c06cfe5fcf7d6c07d4fe7bc566166c601d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e3ae9018bd5f21091487250722f937f6f30acd2e30d232f24eea9d0aae7865d05139d672bab8ca178f66999c1cf70e18023100de7193efdf7241c24468a4eab31310c5283b4e50871b1164037d9415d87f76b8a686c824e2f999bdafd43e18ed67ca180302047c435bb5006630640230246dfb0c9a124e347c18a1500eb473121fdc2ac074273cf1d0a4129e0a24ef60e1d62654584a4f78c78b46a40b1390c902304d8bfcd8c11ee9b7fb0aa888c172fda942bfa25c03ef4ac593307d40d9505a45cc54882c50c9063d57b43c21eb0cc4430302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a2c3b555fbe02f6dc8ac558fbf3024da77a2c3a12cd51d913f616e8e628c47d33b04289e4279d7bbb62d226e4830e9ec023100ac7371298dbc289c120f3df1da7e7b457c5bbbb91fb1fc738a0b871870d3b7fcfbc22859f1ed32018ca760525028b7870302047c435bb5006830660231008d2820c4fb5ac6c21c262fea814a89523fee638bd8bbfaa332b04f7fcfae6b2f333caf6ed111b8f0b446916fa282e396023100e55107efadcb5b5e0b18b6c952ec91c96e546969e35a2210c45854c5e71108fcaf397f398b559666877756f911f382370302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304d43f926d14acc3e48c6033287826ff977aebeb19b4f8cb8217faadf53d9a60e43f86b291df41e11de2f318e993618e502305cc22a1a2cd79f506aba92f519dd1f343688b0dcc7f63fb63fc0f57d61bfaf91a8a4baa35ea4507c4f59ff67695d4a330302047c435bb500673065023100a2fdc0fe70b6349743b13c358f7db5e2268405e1d93db22a07f2410b9d9ca75a47622846c282ee1f343fa4ada90ac13602306da7a5f713c8542cff836b3dc569ada332114a9adad896e86a939a5093ccb6d937bf35e86d47b8b9609712ca21a2eeec0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500653063022f62239bef770a5c3dbbeba6f66b20f5acad905298747ed705852e4d9a5792519dc74f00112bcc8bfd0df4878c8bf50502302a913f251036751f80346426f4c3015f386132466c780a2da7395ca40ec19bda7c78984d01d72f484e7a3188e7d24a050302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f5ff31476a14b286cc8fc3efd88a9534aa7ab48367899e4585cfe95ebcf71bc416bcc4bce491db1060a8c64508443d76023100df0255b17e888ef23a8059885f841606b62af246fb0d4333265c5642b4e94f5a0fa09bcfac1f1b7061273046c7f2c0830302047c435bb500673065023100d8894589617e0993c5151b337991bfcf70457d5b77581c383626c7a6698d991c847e21b1660768ca7f92828b05619fb102302d9586805a1ac3162324bf08d1decdef7fc79eb27fbc7956f7d059c869d85bbcd654c457ff661bbceb3be5f456cb11760302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ac566f1cf5f0fd95e81e5b1c29e7d82bb926f94f6b7a2a8ccf51d88b3967d8323ccb619c0d3228b26a10d88905b5081102307a63d012466eb204bfc3b95829e44a0715a0013ae2ea343f3434f3fb4304813986b4aa3e594d6e51e50fcc0ef24339ea0302047c435bb50066306402305c85f5caa202b1b1d886539706398b764b2e6c7b371ddca4a6b59846db99612b56dc5c10fc82e5dc5dc5a9935143bcf202301839719dc9af8bfd00ba5f38b7839b108aa49f1b6b7800095cc71aff68de3e045f3c5243987b7ed3cd6b9a6eb58da8d10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b6e5b81cd6571b95c901cdff398344ecd8614956908f4674dae61eddad267fb2e84eb571a2c18ecdaa3875a834d8946f023100f65dcab1fa23c14367bf69d99e05f560a08784b92dd8a69470cddc1d7fcee42af1aa5b9db03082ea22a1abc8733ecabe0302047c435bb500683066023100cf29820222c6ab31dc7641a3555fc0ba8054166c89c5a364004a02e0f2bdab97c7255e634ecc80b187a44611d66a6ad80231009d208e442a98730cc3d5d121f07b10f7c3ebde54a3fd12f3b82fd788681c51911ac6e81ad9f5d1f0bfd03cbb7a3c98a20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f9520aee601f205626e56127433fa587ab9576df239eb577d0658d9ff8b4e4826aeb3acf02a6a316f3a1d0dbf2d23b0702310082b519d4c8cb28a82afef0beadb35d1598d4ace17e0d5ad19cca4013cfd0813d220e3dc81b4198635d24b8e4268919a20302047c435bb500673065023100ef517ce2b4fd64c4a0f5c0c34d342c0dbf87dcac4f5758f95dac1e88a3d25b52b6dffd5c05b50f680515e4dbf6e2f8ea02307e536d78a7fc8786a1a78ad3d8e40b93cfa3e4f8f954e6519c3ad5b43a3a3cd9f6f34889a5d9b5b7109b499059868c5d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023024e33b46817c35e2246821d876d6bf3e2ceb27b1be23b34e47c1a31d4a357a5c84aa6492e8937c485924351705423e3e0230425962c96d39e1d195d9c1e00eb53f509b451d9c9d2d4ffe216320a6816f35d5afdd8ec08f1b58093cfde8bc4c1fe0230302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100fd80dd06d9ea8c3384a40e40ed7c8bcae64509483442fe1ffcb8a1ed7ec5c15c6193e3b5f659fa0798110ed598faa7e902306f4d1f95bc08218578f0fccfce769bf4009b7e9ff8d327b2e5354f83b1e92d636f006649b3c0f2b368918ee5b1a929060302047c435bb50066306402304918b8939d0aef6433b84e5a8e0a008765d4340b4a2c812e6caf3ee5705f3bdcb43334057fdfdd7d4c8464279c3a62ff02304249237e1b165d8c2ba9126d4c9254f48d41e640fe805839a6c71267f6a3a12979c12540abe2465f688f3d32cfd26f460302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a4bee36de232c2864d6de69ee29d391c988fb39aee8f3f4bddb0308b30e85f25dd6f00c78bf55d753de8ca2481f66974023100c7ccbe3a71f8b2e4cdb0a9eb73d57f87159e096fba4cf6236c5d10f1a3155333241aa066a8178e06456517ef576ef9440302047c435bb50067306502307a138f024a36b4273d83773ae66410aa8545b4bc7ed4d10791a9ae4b658420ebd13afea348267e534542e8d1b99dcbd2023100c2abce9006c35e7e5ef57998db0b7c23ddaa38732d7e36999c2f07823948a3a25bd809dfc30ce7b3036f1d04804ae63d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c51a4dffc9b1bd6a47e1d4c7d984310800ea05fa0be596eb7e3210ca5449c7018fe6d7df302c34463d80479f683ded4102310096b18deda323ec7ae9041943db3eb8f1092ff3877ce66888c5f318829bae1cce6da75c827a6652ec9f4b1216a0b9d8e70302047c435bb500683066023100ded3268e3e4317f5b1fad6d90b528e6b9ee45709016bbcc97fd1e8c4ad112c8bab442e5faaa355d95b10dc7ec38da95a023100e79840006edafee1f76124a33f74768a6ae1a43fc650c00546096bee363e56c411b34991b938853256866b92673133070302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ab3a31f93f2b856a56c86a9d2367553d18684d36d71de9d752bffaeae3f7838a9e9ded96a447a635871b04c1afa5505d023044e370c7b62df4f9fe228817ee55d82898e70fa951771ef097654d4f7e0f0ac6746138f9755e4c81bfa5e455355ed9ef0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100fbdf93f5a43a80ef54a6dc764182b92b8c49b544a5cc6ca663b25fb9478bb5eaa61477e40568956e6277c45b020246c0023100f0424f7314518e5d20e0ac0b52ab9b803be4f4d1fd4b85468af1d8d363b31fbd54b39d019a129b307e2226a8b7664c110302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300f3ad2c3955fac517a8de1bcc9676fb38e618901d19f8d2cd7979aebd97fb78b0fbc9e962b208b5a12f09d4c84da4589023100ac48da15582936dd917de05733d7bf298efe4b12a095189b4416d609593565345a0e091e5b0946513b7284c14cd746be0302047c435bb500673065023100813a96b712443d75e5c8996dfe982152765417a9afe0203a01cb1c6ce925e354ed52e6f03303f0e155a8a2fc449c1f4002306741b019f3035b51090de7b4043067dcb8363f49607669ff89ce8d55407dc08d63b24326924a33f53b69677fef2b03580302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cd90ae8aaf3a8c84de758f5f28c78c76c56ddd8616b7195cacbba7ed9139a42eb276e943ddc56a06c17a50147e392128023100ea5a2b8dea226dc9362303b772bd91d15d5b120bc24e0e1085353d2aef3b1d0076ba3c1875a4f2d2c61c6faaa5d265020302047c435bb500673065023100e7523279cb938dd45ce346dd4b30452aa5a28124b313e41c97e1995979c7788b9144d2193b25e8cec376cae7e618a8180230140c9838010ec3d5e70780294bf32f6ebc4a4b04df19f03c1deb8c7f8e8406779982fb39c11999c4d7717b38d48568ab0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009cf1062c144293902d928cdf242cf24910b3dcf2de5bd03a75bd797e06ff0fdbfd0d9eefb272dbbd07e6e08e596d5bde023100ba08adbaa16e8029cc41ed6edfccde4cc638e4e2c8eaad9a8acacf35c9009ba7d0164bd3b1b8e4c848cae1376ca4caeb0302047c435bb500683066023100f0a01c1326073d1e662d6f7e6de7cc0f6cc533acae94e8ce6dd1c0c9ed72e7708ed9a4004570ad35eaea6e76279896fb023100f5f1a9e08fc37ed10bb2731f963eddcc34e4180a1b901a262bf80b8ca56aeee1dbb25c99a02807debff33196339425290302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023070826d78d3a18e134e8bd47d6a276328175af5729e7f0da6a1f19e9315ff67f6c22282f9f6c786e5316b95f0b838254802310087ef2c40c2de8245a960d527aafef6581a2186d9a900c34576a8d28b49fa1d5b74eb664878352db00e0ced25cf916c340302047c435bb500683066023100d683dd48b2c0aef3a9214f668c6c711e9198f88370134b20cabd00955bddcf3eb65e443a9cf2301422a3d3646e78bbf4023100c70e53e1bb77f44fdc45ec49685cde93843da357343b1840294d222255489e6c5344d4bfa512669177a2568c8582b8090302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a0512b001e4b147768e7e1d5cab1bd6e6340b3ea31e8640327bb0085ae30631d5f1f58c78c14b63163b637509ae8a33002307d4a72f1161dc0e9ad214e17982103c44db9111528a48c65cf0a5a1f930ea014fd22a7f31b37e9b735c9579bea0f3c990302047c435bb50067306502307d862c8094d207ae28bb54de681e151ea30ea88cf7de8b5a2752306adaef691ae2eb9687f60f2679ab6740ec55d4fc89023100bd836614b458155d01272de79500d95841d83fa575a065d3202f0221a99fb1823b4149bb622e89c19feda61c7e88c7dd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100935c3dc20d3d3aa080a311724d273395ad149b252ff6914827441cb55bbfe34bf85b57a701f1af62e371cff77fdb778c0230423fd006a9afc1a2f70493707606a637269feeff8aae379c627389c04732684fba71ea0ecc0843c8ac4578740f8cb0640302047c435bb500673065023100dd21a539242af194ad3adf162071380f35885d7cdad395b9c7794da98ec26b5d05da49a36f97fb26cc57614395ec0a6502307cdf172794237a9f0809af13b16d8fd35821a0047f24c562d865a8e98355625392b957445aa9ade7054946ace3fc02bc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100af2303506e9c990f35588bfb26a226a4277bcca39883feb2ed788fe4b807f44e71e636ef025187d6d0534e92d239f4d7023100d0d82c49dc2a129dcd77aadf75d9e2bbc284e2aeb8d1518ca7c49acb606b90ddcdf7e53d7f809cc64871958f76eb46e20302047c435bb500663064023020d79ba33bf8a0b8a3d869fcf85a071f555fd2320b82ffa634a29c6c3652b6aa0136c3c7872c8513a7545051040ad41b023000e0fc7dd1f18e73907b7960096903ca41f1daccb5e17f6bbeeb56c771a1d94b102d5fbb9cbe072fcead8f06af1aa1070302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023026b30ecb46c84de7e806181b43ab603c17406e53cdf98352d1d70d2d3b75836cc777ebfa0cd784e86369f8129735f6aa0230675538a2dfcde459ce5b5842ef3bbd3c25fdf4b1b9dca5f7a4c635450aa23842cc0061d07f6385f8a6807f40c8ac8a070302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e1b47f857b312c7918d3ae5c59b6ca0b92bd45bba537541c4aa49739a6125260764adb77384b00700417fd2f79738db0023064419f675635b501ada75f5389db25edd76e47e0cfc3fa0807ef81cd3aeffba16384221b148c16f9e1d440922f6e1bc00302047c435bb500673065023025fc9fa73ecde800a22f2cfec3c4dc29cb594d317794ac8ca19d8469fa22287d0285edf7029c237722d97fb72d45cbf0023100b0cd046808b064358fa029874dc56fff1906ebaad8ff7b30aa769a1cc37e49b7d6a207d3b38b8fb0cbd22ab1a5a819b00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023039c1e212abc952dd23181cb8fc42c3c28c9a37e3e493c60a06d705d82d50d6dc83bb1d47ef3d6f4899c9b7fc915ab588023100d55dddda4ff807c29fcb042b5539c74f5c2188677e5dc28aa902445a73d42608e9c736b6f6de0ad2986ce461ce0d5aa20302047c435bb5006830660231008013eb8dcab5617124a79a3ec787977b0b899d0f33a7e91a083b102ac9b726e279eb7bf5ed403ec15eebafcbc1568b30023100823691a716d25b2bb0300190bf6e3bbd66949d2881c391594ab634d8bc69618311a4803089ef3d54c4dea74956576e3a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300327a5a33fbf4619275e967e01f6872dee4c82de58889a2c5b185156c618161e239c4fdd38fc945493d55aed98ca092d023100dff96881147cadea1e5cc005813fcede9d4232825a08d1ffe6aa7b36f0b997e6d4784011ca011c79f3a37ae72424d8260302047c435bb500673065023065db6c6f36da8177157ad97249faf69c82190880640dcb95bc2ba0f877c665de92da4c0f5efcad532f79c1c13126cd0c0231009ff748efd7dd2b1c53c662f7943ce0542c637b791b2342ebf4f227b92850627b00c6ff6c579ff2ae74981de8bc9d5c910302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301c88c540a2577c8c2413491074a9363885dcfd3efc64c2f1f659f5da3ecf4c8e096403507b1efb40f996858a77ee4fb60230613e3ed36c8016f4addb078758f6526c3f8f785dcd5fcca3636883a52cf21126c03794ceb247e1ab2ced23c352f7bfb80302047c435bb50067306502310083b07e224124eaecf3439a1ebaf5d9e65cb4c4654d275ece46797043ada00e3afe6a35e91a36abaebec77c17b71a23c2023050c2e97a61350a805769d1f1675e462dc48403f0c4bd4adc559bf63c7579e41b0eed0e52e56e45f00fba7434fcc430900302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009407546c44c87481c35278789651789fd6a22ec76e7263f85bcdf2d37725c99a7b63872eaf9575fabf874a27fd9f5392023010504a812800995f97209877e1c89ac89fda2cd5a5b4c9cea20ef4413b325c30e4ad84186dfe4ecd8a8f6f6f7b183f300302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ce4f002d6c7b4e0e4b921b46784444aa02fd894a53e72f56d6f2cfeba1585b60de10f2dddea07d22d83dfaaa5cadcb0502310088ffd3b9ea3257581808e6df21aaa2ee670a2319e35e7078509cba771ea69d438682cb44ec03a1a010c0d2feaf0631fb0302047c435bb500683066023100fa1366021cb49d2e37c4c735a925fcd87f7d595fa56b9e8cdc32b74b3cedd4d1b40c49bc92a714c298f4e48d404cb293023100ffbdc1b8bf111210d6bbd0e7733ccd55df0bae520e7f44bcf3bc6da51e4af5744e9317db951b4bfc3e3d37b82ab04ba20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023074e1df58fc89e990fb5e00a761830893fb7381854a25fbe96ffa496ae5bf4e19de13f23b627258382485719c1c85994a023053da00c57a98ce39bce3ee0e8af408fc6ac5e104d9e385a44f952b51846f9cb334215c98ad2b089bf34f1a96ab2049a30302047c435bb500683066023100efcc5b5af020f8a6ec2c0ade1f1ae186c73523a727b7cbeff32602b110a6cd091b9f2a28c36cccd75e5a79366add0ffd023100f7ed0bc88c53d78d23e3277b6da1dfa81a7559423379572f9cf537891557cc6297e7d8e790ae36efdf2a70b73634884f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306da13a592b72a4ac7c8cd2aefc340850106732a4fb06b8ad301fdd3b886b772f603c8bbb1d0cca28be3b22f2a4b37aa002304a3f6cb8b5ea89ac7fcd2d49de535a4ae499d0927435fa38fbaf0330f7476de81074ae9867732072f46041539ccb10100302047c435bb500683066023100a1cafacdac672e35df85bf0a5768ca47d58fc7e3c74b99ee37ff9adad4d396ddc854f47e10e0cf3522326b2bc97e18ce023100f1a36f02c27db3928c0bf74e28d29efa53616553358b256007b4345c53ad02f3eb66a0fe664a22ae9f56a33a3aadb6cf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230629ace7b878acc7edfeede641208211adcd00fd9d705166a5c68fc5294a1c3f8d90e2cff5eb78576ca1cf584361ea542023100ea9eecacd09855b5e9d7ff1d2de867ba20455b50091014c2220d686401086aa5cb63b1701fc8628085f63cebd77aebd50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f781711bb618a401934c29ee3554d60c5249d645bcbd53056355360318209d5523fb1d31b671b4d5852d3f1ed0bfe26d023038c2a77b6b380a61648d092ebb5461c3c7974b43559131dbb0b702bd479f5e231a75ca3799899203a6d212b0ec5f41390302047c435bb5006730650231008090b52a7fccae0dd72935b642bd7180fc045640753280325d33ee76e5401860c39d398ab1daeafa41e76413c396a6d5023066c483a5ed8cfc8ff86f08b70ed704356947da2890c4282f5bc66f42c020a7a100a638dc0ad790cbde8e189dd048f2f70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305d2180b49133d1afa79ecdb370156a7ccf04f90148e6f1cb7df2ae3b78684558469563ecc7090e0b7a9724ba5008c6bd02304106f04927cdde3b60b05d0dd441c4816af29f8aee96de5fc127c2ebecd3777e1de60d533eb9f720d1765e4b994749880302047c435bb50066306402305599f20182fba3f18407f1d67f9bee5346e3e26e55b1b8be4cb51adc35900bbce6d8d0ce94ce3f5348285d43965e7411023064bff68d6440e257ffd5924dae7f5a35f796c0eda7e2e46601dd83fd50db973e78425a9420cee94d0f0830b8ddf71c450302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100be18dbe5b3fac8c8d544ed0799c072b85a8894cd95eb35dbab539aefcb330383c86cf46b1a8c604fe2dd64537755b45d02300c5911fc54289c867d98e002398ed65bd4aa011f04f9921fbba243a08307d9984bae6ceeeee1e0538ea6fb0d0f7d5c350302047c435bb500673065023100a836010386392ddd4df03fc75a60f9ae6ce3041eb4f2eddb3a6d8a281d425bc1091f50946e95c45ea96996305e01d3d302305b6578641f1273433999ee5672b443281ceb36720d7f4fac138658a304de939ca75bba36bbbcce8c8246b2466443e9170302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023025471d21abf9f03933b800e9b7ede07dfe0995bee72d17617170657f1fb06c08f8f7d774811a69840efc58940bf43ebf023100f78fba72f5e52162c992005dff83603acdebf85de659211b05130d9dd7d5077987e3f460885bbbc28982cb630129d7e40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402300de575db202ce34be416c8583dea7807165ff9488fe5191978c4bd7776950f30e2a0b7761b20abc551a72f4a34b100f002301f31080d05de2729982b11564daacc0d03096b57d7f4d45372272cf58132f1582ee9fc9c73a78d9502781616b7500da40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100847365a89c42a2c843a17b14fc0615daa1dc26b34fe260bff6d0598d6abe18dea9cab0b83ee0438549df44f1bb484f5e0230201623fb28796352b7a27d3222d14159f0ff12a7ef38cfe16cd88fe790206579e220e2e37aaf73208e0937b1b613089c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ce83407b03baeebb416eefb653eb6432b658758b6eab4b06abdacc6a717f163b9921f50d57d7506d285f6cd581f4cefc02304dc86d5457d6c4122960068e5e1f068f9bbd495045cf59ecac67d1fc66d78e6938364ebd695dd151e6173abf73e333760302047c435bb50067306502304d63234e5b8514decd32b7b2ae5520a75527bfffc48513c9bb415d9658524d421941a3350c86f42a03ce868823602da1023100b255e7476e1814d868a722ad71081a2cf18436d4110403033487a65df181084a7442a069769841c31814bf988c8f06670302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100986b9693b011a0e61a45905d2a6c0298481a5ef2fe61e676328598da29fec097efb54f8783ab8f2a765f48faca2af89f0231008b24074f46af970690b3f58919cd6e90d876ba88f417fc102f6d18ef419282f6cbddebd5ae322dd7b0c9d99017309e740302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b2efdafccae58bbdb812c2b88f7c376985755f92a27ffa81e6786b67eba82f51c69eb0a26c4d153298669fdd5cc2767e023014cc0cabad5bf1f72a5288d5b182ba61f06217af102197e20dfa329d884eca15662e4dce92bb1b2a79071b1dbfa266b90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008b61dcd77469b93d19ff7db17e4eabf187effd2f6f39979f4ad888ae1ed99a95f7408ab404c1f8e9b7e3056240224aea02307b32e189eeb34327aa178dabd2e21a9e49c9c61022dfe3e524a6e0cd6a0986a2d594bdcd9b01ee966230b5ad570833aa0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305352052bf61fde041679d0990fb61b1926eb6cf8972f383ba87d897aa5db7b692809737c81bc7780b953564ca193154f023100f6afeba4d50c1086b2d8068645353c280b665535f6c5fb9cda2ba8db30ac34c84b7c7d2927f7fa565f6813a457802a4d0302047c435bb50067306502310082c7fda61b8e3ca1ef627715a3c4acc18aa30d1b8b820911a5bdae370bc29e2d28749eddb5f3877c04380a4ccb9dc5de0230622105eac547151a2a79d5230f4166be0b46f54396f9d52a21b67fc3abf59564e10623a24cf2fa68f4d190de6194bbab0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023068e8afc9c64793377fea0c750f24bf88c5fa521a3784af56e6e446ad59f2ccd5a8f31b299a30dfda78257f57202935d20231008f24007bf4a7062b665fb2b85813a50134728b9cedd5c9092b16e726c1a0572e132396690d5fd87760298ca3076fbbf40302047c435bb50067306502310082645fd83a4adc3f21b36159271aba2bdf7f351e1b139dc5634f32b68eb1be097524578bcb23d43ff3a0c6d3da336f8202300cbb2988615b3c19f7dcfef40451934babed25c8f0dc3815e4b29f3809b26594e42581ab61c8043367a209710a27097a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023016990e8db6783f6e7fd476f47747aa7cacee9365e435a2c348594b2bfa6c590a16c1b54b50e400365225500695078ce4023100c6e80e38beae5702266f7ad696fdf133cbc5912c6486a942656a8b3ca7f792e86197c70c3ecc83070efc557e1ebc65a20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230066ee9c6846b7dfa7b1fc1fd3f43a1396f9fa1cda8a64b8bbd314180b7f55c9617a54bde42492080a16d8feb30b4bfaf02304e10744bdf20183dcc49241569ca32e7e6646a04af2d8b781b62929098ec6b143ef8e264e58cf110025dd81a0f5aa1a70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023065b5a44b1e528ab984df61ea8bae2abe7a0c6f932a25a6edf8705653919b7a38da5b65d424a80bf51e08cf5fdd9a246602305f7d9987736af2a66c64d9791ca2dbb28c34e1a2c14a247fae1532d31b83f454137aafbedf680399259a6d017ffca4060302047c435bb500683066023100aed3789860db39201c5889bff57acae8e620c424e1b7aa6f17c4d2520b64abc577c77ce05ed69ffa5b2d6ead57bee0d0023100bbf158b60af4222e4955e06d3877aadc3886ff6f711b74141a6e2c5d4f07d35085b72daae68316904dd61e32ea4fead50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cf46bd5a49b84aacae2a87352afd17a9f81ea326c48ec63285db4c86365850810ae4678ae61a557fecc0c5561ef2059a023100b9e1f7378e2850ff7d36041beb0b017430149170618a5dc7509bcbcaa72caf2bf1f0febce9c38d1a688b540e3d8df7ed0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b2b67c6a78ac0c6796d4dabedb1e47696313ca38ceed800e5c444c3005ead28d7b008931c77233bb3d15af9448949c8302310092958790a781ce774968533efa67a8c35bc5f9397e98f5c27d080880c26e48ded3bfa91cb0425b90c5fa4e1c17979ff90302047c435bb500683066023100ab6a07bdf04c04e9a581dba9ab4813988cada4102b610d30e0d0810c5567c36e072900bbee39508ca24b1745fe0f6626023100e18eb35ba03b1cd15c6d94b902411fa017c72fe5449aa41a116a173a911f7e20ba4ae812dd4f5928f4ced6e5558e2fa50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ec4ec84c23781eea68c7bc13e306f16abc54acb81d695099f48f9eb53ed84a3bd198fabfa592a0ed730577c63d15710b023100a53698abce003dd047c25d978b3bfa60941cf1ebb8a4d892999827ba361309d4b3b5fc4c7cabe7ac0faff33916bd51310302047c435bb500663064023006b54fe06b0ce20a97de90d0169ebdebd98936b6899efeb98aa9ad82d77da662723e07c84b1d112820d42cec7611c29b023029bacbc704d815d4f64a60f7732bba3c977039fc6c1db5725c922037c8770db4091dbe02bd6db355010030583d7d33760302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100fa542918de604ba9169bad0dbb1c847cdb753acde2990bc132e1dc1d66e8fb53504bcdcbc3780eeccf232b56ae8a2f430231009522b639d341cfc2871d66952be9d80ccfcc5893c2e24f5e0154e00a4a52ef270578a836e08f331aa0fdc4b0a026574d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008fc693c008c70fd7d77893131a70fe3e4ece3e264d8a79ded9f093edf3b89cd6dc6771045305b496ed5434c715df9e7b023037aef715ef819435fa1052bd1934c71129536792cd3c6a5a028a65085afd004864a10afb963302e37792f265a6c122910302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023038d5294c06983b8fbcb05ece2abf48e360e51d29cb2e0cb68db4bd7815626c1c9399becb83ab0d65465d37cf86cf9beb02300fcfbd77f40adbcd92a918d4d7b5f806883db00fdcf47af7161a669799481ffaea1215d7ea76ecaf9a533103b888d24a0302047c435bb500673065023100d16195c5a7656120ddadb263855b343631d5d8db1f867817bef16dfb6ab222ed4711d3b7b077f1ca8a2d5b3c6c9bd5e4023060fdecb7ceb1bb5fc797ba92c5f08ee5f1ed9addd1e2e3a0f8893a3e130ef8f4868b4a922c514822e1abd089b76b5d280302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302b79f3833e94e727ca7737147081e83db4e420d62cf28655ab9c35868346c70840682df1c7ca42560e9a1fe29716f31b02306c774f83221af03f2289939f0ca45a09f9bcd5e53a2e204bf4a0099d9e980fa16695c1f591fea222b88b040d1b416d570302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a13caf01d30a4ccd44e2e35f4054930fa25040416268b0dac1bb3f780a3aba26016079658ac62c40151b1ae9bbdfb5480230787be1b69bf62b555f073cd37852b1614a0888018e2aa06d4532d48b17e6f0df75d4e0815925f91bd06d8ac60ae1d83c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100def7eee372fef1e4350477329efea89aec83aace384f5f402b317cade8f91db16f250bb4824d1661a0b3d959f9b1cbf5023055a3f84196d90eb068b08f00b3d379261655cbf31fe0e8478fe1b853e338488e91cf3f59a6a84e23c116c65ea0fc63000302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230270c2787367c517c3273ab5cbb0d3aef3add3a9c0f3b461f8ac9f803174d2acddda1bbb498afa06fdcc6ec542846e337023100cd189383675e832aed668a256e133924910e087c7275f2da5fe5efb3c1ba06bb34384880ab34336d31d0a9759c0fb5670302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ab70fa92cd77d116a6989aeba6c83e5b9821997f2fec2e28db9df3869dfe11944da5d6c706fe82e5a9656b36d3c90132023100b2a723e2d83e24ed0ed9fa98192a5cde715e0f8fdbf08b60768ffdf893c67d26d93f7f62413c9696805e8d1f04762a790302047c435bb500673065023100ec13c661f54cabd5f5a3fd5c7457049aa0198a0e8a38776cf8434e03c99f5d6e44704f90dc8bccca373f3d3f56f66ebc02307b965ed210a9bbca90cb2e5125dacc6d91bf2f6870bcb9c618341a55ee5087df1df19aa1330a236446f53b121d51f2930302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023066eb3d9cf239df188413eb6f971f7fcb430eff34ead6530100e1830b019372934c7b40a1cf735f63a789b2a923d64fc8023025c6de4dca2ebce21d24eb487181cdf16f4e3f3c4a9581da23c48072bb0bad2763b12b708d1ba3cd90a4cbef35e2fc7c0302047c435bb500683066023100abf7aa42819cf890f1a01d3eeef68525c586ff519b26f7e9417e4cfa357dbf104df80a632c1d8c0621ee9969731e7d64023100a11d2a803d7e25dd4949bce6c511e7b9dc23650bb148971b6aac439e5ec9349792cd6d0127962004ac3a622b339747050302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f31301ad0285a3dcb61bf6d61933538c9d45439c3f0a0c3439e10f01d8c859e46ba6da047415c91408f87618e9c43364023024511896f2642b6296d1db1a232bf1a2110f1ee7d747171f77da3ec34e56c63f92ce4878da3604960284bb61f2bdd4d10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a776b39b74168e9b381d0d5f37e9bbacb3b25bed216530fcf3dd3196a8e357894a0f32356341e26079fde08d4cf64df1023042fce0b67fba058cd11fb540b4e87fd6dae33156ff2d14b590f5e201ca37ebf792490dd5f513784cab408b26a313ac4c0302047c435bb50066306402301a1ec3d5d7a3f740fedb7e17da76dcdb909d1585a081b6bfebea5f98cab1e12ff750b73dd1aff6370e788f55489d26b802306cc16cc49fece7c259538d06639412bb1d20179b4fe18e5917df8d060a5391e027d19d6644a34fbd14f2db58d6adb7720302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306065c7ca5010ffce6b4d1986d9e5e7460ce4b5a8bab13ebbb40df5c97b6d069ebc703e8547b5c824f799df6b9630ce3802301a7f00ecc6e8943727b31c4873cc46b652eac9a71f831b9fc7044bf963af6dec8a7b8e267fc723e60decdddbac9ffb190302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230621fc11fec832cb5b83abfcf228e21d3abb0da125a467075a63e0d7a6cea2d560a7de76f13c3db042ee7459befec54bd023039eff5c9bc5f438b3ba5a31fc5b7f03be9336fd91a89b60ffdfc434ab0aeb571e4e66913d011527449bc53fbd06747a10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302276fd91da201ff9080944e77c0beb5eec5e29c3b36778f057d2572db4061a9041b8b0a1e95a96f86bd9f0b5204086d4023048709633c3f9fe53dbd32d1400f7173eda6fcbaa60de6099a286d0c61a2b3ad7b5fca2fbfb8271af193abd8a436e86640302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f3fb4c7d2c20a5c57edf1b1136dec840bdc994ae6e0b21c9f0909466657a0648abfd8f7282015189c8fde870aa9dadcb023025d7da20fcb48da435ceb0e25cda2e69d27402b25498526dc9c0642578fbc7e3a6d830a9d2684eab47c328b9ea28f32c0302047c435bb500673065023042e5314fb5a9f7d25327a1d433e987cb4bd6ba6098d985f2430c3712e95b899d2e6104dfdd816eed4bb3bc9631d9356c023100d2464702aa5ab498c32ab2c1268b7e92c9d9ab3a97d612c8617de63c83e4b215c622d645f455616a7b99457424eaa7450302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e705f396d91542ec1e344733485a0221ad55276c1672efd95992f88b4dc52fc20989a477ddb6dcb28e61fe7737101f82023100c895093c7e37b288ac61e014524306e46e08088342d51c36619b183303b0944cfebd6bbe6b288a4926d0469252da80070302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310091efb2cbd8336703fa8adf07fb632139fcfd0e598f3e44d65191684a136327f3ecdf9f85bb35b507ed845bf592e873a802302af0e3644a41361b90d0d0345d1b08b90d40cbbfb04b70e76fc8f1dd7c69ebbb61756416e22e64c81ab62dd81283bcc50302047c435bb5006730650231008b107533da2c437e98353226243dc2af4e2813115bdd3f4f6e95955b2ebf85d426b07ed8144b01719cbc751e96dfa2d002302c485d40ce54125aff51967ca14d4b264d4364b49564262fcd8561cf8810f8b67ae808a57f6cba17d76ab9024a3693c20302047c435bb50066306402304a61aacda6fd1cd06574fb7b1a655541f4540a3800a6cdb930a95c79f67e484d3d4c17ff31a69acafdcfd55d150d6891023052a79ea31e9b99fb19651272945d3defe9817413a777c7f87b1604da94649fb4b5b9920c7fccbce6b7814289adf2f3d50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c51dd428db68ff274cdeb80f9fd65f0583f8095cd36193a63f635cd3a7dac170c9dd3fa23534e28f7015f084f2502ebe02300c5778fc0c8e82201213a88d25ddab8d86a9f5b15c6d36004c7194128b9659f93187ca63da78e21329cd2d6a51a2f4bb0302047c435bb50068306602310080df969ed50af9cede124184ecdc15b32754b9b29fad7bb99df12a29ec30b130444d3092fb71004a1224d107ba5d1dc8023100f7cf0f47f085069f5fc08c772fdef042da1fc425206eb168a8067650fc66d54ceda4295caeea1c971ab8aa27adb989f40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301f03be264297a5a1f613aab703f6a7fb94b643795720f71b9e29fc6b2e3e0f0b94e323f5aa24d8fd9169a8dceab3e24f02310087b24c3f9dbb22cd8cd49696788fed459decca1c7773f8be74c345120a38268cac7184d73d222342d8d0917690adf1500302047c435bb5006830660231008ca7a5c1ea67db73d0a484605921b6bf90d9760f84c08f6c7d6fdfd8e52049a5b7300b662c23108881885788adf7c1aa023100ec30433ecb18a775984e67a35f34598df33fba1898765987ee2fb506830ed1c7dc84811dcdb44ab6a6b4f30c731732750302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100bff342c13d53d7fb5e3c9feee44e75699f78fbd1d213d62d52497d665d500bb0608e45ce3f29df2ed45a827ec679032d023100f70ed176aa9df301f8c1a69195b5e3c2489f7f1f564cae39c3a517b7d9b6319a4dd170bf5c6e3b179f3a94d1a95337250302047c435bb500673065023100eedfd5014f960cd28b2f97a0788749da9ef954296c1317bad9b6dcef9c3321ed3b463a7477644279aaa69835d88cfa7202304f4710041fc2bb4af3d4a9f1f3b274f9969bd54dd207e95221356980cc1cb87507eff36faa831a89197b2615c20b7e5d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100895fa39468de7893b55c9f33ddc776c02461153c0c152aeb24589c33d92f7ec75a9e5dd5652fdc2b30af1a06e7241761023100f0954c4db2c780761ddbcb8acb42e6fed3ceb98fe3395b571cb950c5eda40bd22d9e2e9c8c99bd6132d3e0750a2071400302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b2d699b02568bc843ab27d214aa2f48e56cfc3e99106b8b60fbfdb7a05251882537ce059728b4604fc687bd8413a68930230725d1032769a612e6e9fd236fb675d5223c087caa8989a4fe78492f29b70291b1904cb3d21e689ac843ba428f9fbe0ef0302047c435bb5006630640230198e8aa4b611c38500fa2c8aa16afb6ffa68a6407ca3a9d5e3ef043081f4207c2fc1c308138e38cff44680df06cd871d02303dda13c7616d04436d8927e21a82adc58cdf902c7de94641bf0a048c223615fd192290675098da2dbea8a8570e9ad6a70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ca47c18ed09e7d7884279f632dd8ea7277b3e6e963a1fcf5c3b976c6f7697f52a47a056a542bf8d6be48316afe4344480231008b85be4af0ed004c29b2279a172992eefbd187ffac3be87aee2f88294093817ee870e486f68c555486d58b1e67dcddfd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f28af37b72379ef31b46168918daf7f7ada60c7c1d1250fcb3caa79c15f4c83099f6781f6c6e1165ae9abde8b4f022f4023100c7f647f67eaeb48b178053413c1f6655396ce3fe7a779749489c3e19ada20380c11b81578ca5d29ec9f8450de894809f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304083e8e0a3dafa9818eefc01392181c7603bd325822c5e53a46873bd08bc50eb4b406769265bd9ff91d1bb79901d57ee023100ddb4c519cdea9ebf22e3999f749e96f3ca49a6c133118828fa722ab1839b30fd7ed622cee3b11bbb8748fc22b8fe07250302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302f80464e9b497e032b07c7de5c5c93b3c372835c19f6af0ba03044a53f556f5b7c03b8d2d4a21a7d8408497c38503f12023059901c2e4238d3a4558fdb697261bd71dc04b5419fce598c0e610f62d86b8e1c4b9827df75365a35ef153a12dd6b688f0302047c435bb500683066023100e6b7970b82a5eae4c8f39fffb8f0fe499e75501cc647debafdc92c384bae7b7fb842f7ca9ef64ba98554594a57602ab6023100d6687ff3dafd34ad827f29beaa275c753524897a9c0bbe5562e4a03fda0538533c11338f4c4ad8aa564e69635b2466180302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230144e5a708b5e62769899bef38578b37cc486bb1aabd5269538124b4f36d706b50051f4050ccd0ccf35fa8d5cd80bc02902300c3d825e1be0b72e007571f60186fa9b3adc197ba9dce2977a4838773b290854eb23bb5348b8665c1409536d4ca576670302047c435bb500673065023001df2fa563f7899319e17606055ea49b700e93c04b81375e14157a22f0c828d3c05db44ac58e29d1e353088ea17016a502310088a162ee12682c3a08027f6586823680aaf5d50f4c0ca4e22a593fddfb1ee37495b42e929db16ce6d5f7bd22fd4c9f3b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009f27ef36deac74e37128d8fea340a4089c24dcf49433e48b6065f40f00d9bdc93a0f99286d6e71dae85a40a61c8eddd002307d689cd00f6f845bcb6c37e5929392e9934f3e605dfa02d150ba3549cafafcaa20bbdccfced6cd0ecbc47bf2c61d7feb0302047c435bb5006830660231009dce189c5240ed2859878a0b6335777d52b8473cc7d23027fcacdf385b26977c57e75583fa8cdc3eee03dcf09c823fbf023100c76768e2638ee074f3a220394a26d6702c9293a9505a26d4003272a3761b9e2ab320bd825b5e2fd12e7e7c9146b8f9650302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e3f3cf9def42db436746871f1cc56c9e54ea69bd4a2bdfe5eecc487cd19714af8c13fe30e23f9c7682e35506cd2f2f16023002e0253286a846461c2ec0ee0f306e7e95e53bb05e8f7a40c3dccd89614cc651948b8f190027928181fafcd35dcda6dd0302047c435bb500673065023100a3e5153e456dc097d59cec3a44ba1ea0988e203f7a6a7abb60bccfaa0a93da2e7ff49055256de89bef3e268d49ef02dc0230389caf9a105e7ee9caaccf65d23ff4020a1fe363c25ae83eb6e09b2000435282801aaa03930549d4c9fefe47bac2bf830302047c435bb500673065023028ee03e0d1cec46fab6b1587705aae39c529499adab2b855b86f7a560b143d2e80d801d1d7a53b497bce6924475ae3d0023100dda898ee3197907dbf28505ea8e8b49127bb6b0e9a7c5d89141dca17ca1f354b5bff343f89bd8c212193fd69371716bf0302047c435bb500683066023100e5af0723efe9c9f432f938757bca42e1d6cfc30109ece60910b80e8968a4348dcc2e728c6751e42015d780ae01467aa4023100804713b916e4c76ea4eb9c59357b535fcd2542ef6e152b4ef4f2c6763620e18b8afa47daf708a46743449a2dcf4ebc6c0302047c435bb5006730650230243291892c8117785b98b2d773c138e7341da8517bd39c2e214ad160f6a26694ac58d619e6c068d968fd64e857c3d60f023100b1442bf003bd3faab5b741966a3de07370926ec0086ea7cce931df0808b2697c00e6c3129d91ed0520a6f341c918bf9b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023053c2e94ebf808e2f2d658359607f2f3abd81ced3226d3fbc76d89b92a5197455aeeb1ed62ed0457c50f33a9665b876630231008d811e51a3eca88a87bc143ba65fc5284d5ba3da4647c5eceb9e7a6db45fa98e516e85a77ed1ef61a4988d42f82674bc0302047c435bb500683066023100a35693ae3aa7cdaab62628a956c7ba18ea382016c4345421071495b6b87f30a2602b77fa40a03f4903edfbe1df59296c02310088def9c76f83073d880dab76cd3471f5d695e99fd27f4a54a86702de9cb47cb54be8c77b7cb587753340518616abe5660302047c435bb5006630640230367eb1004090d6abfa9e1cd9356bfdc0ad8c6df6e0db10f0e1c77cac02ee33a6e46e5c9b08eb3082edf274407fd04b1d0230730552c1d843642a93edfcaeaa92c9feeeda04f3a25b9c8ee6e702545ff8dd1e7df2e8a3d2fcc2da15f1e8af49062dca0302047c435bb500683066023100db0fa3609e6e51f32acd989cf1931c2ac54084cd7ffe2cc4824ff771584fd856876dc1044a9ce87ac42c3503d44a79c0023100ad15f2e6847f9fece834e5772e5bf76834d5a6b98da1ea99b068f7d1283f15bdf4c6dc886ec9729af1805370bfbbedf70302047c435bb500683066023100b7e083111b16e5d18e0a1bd7083c28f47f8a576fecca67021f6fa055eda4473d548e94ca9652723a6b115783cea8201b023100946e05123e97158dd0fffdea73e9a4bb02352ca95a456d6762e7141ff385197408650ff397b912865a030988671c45140302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301e60b4484faf831bb373e5ab8ca2b570f2888535c7dab0e29436f11cd6dbc18b056df37259f8866aaea4d7d14c2ba902023100d5881be4f6396a86df4e26ba60d0bdbacdc389938c29e6020b3fe1bbc89c759592aa87b0a31dec2a43deef76c62a19ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303d391d55bd2a3e4de7b57bafa9c6341a24ea8a798243cc7402c4c86a55f4a4dc7d7f29f2f9e5e49c988ec7fcee2ffeb402306d4c96a80d740073a1a7921286f8063c4cfb1d7522299f8c7126504add77f935b061258c136bbd54d0d97e16c59d74d30302047c435bb5006730650231009c0d0cba4642e1a3a647e3610527d3704e3f8107c311b26b833daab5f9c276be7a5bfc6dc577cd1f4038cb56160553c7023025611a58cdc3c8780c15e9d7dceffbac1ec75bafc9ea4385ff1c85d6eda4ed6b243219a14b264e5869cdbad1749b45b20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f2726b759fd1570a1645b544355f1f1b10aa43b7fd68d25201c6d31183ca0375ac49d072f52a752ce4025549a31b449a023100af3e78c17ceecbfafc02aa2d948f56c339c6a43283f56e69b994d3a8f3217991c154539892d056ef5a1b4ea09805b8fb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230531b88974fc90a70567a22d0942f06340ccd622147f096eba98a4aa972fa94047013c4d799aa166ebc7ee4e98199688b02302559b96bc6d7da870e92ebb3270d51e5fba8f75ffe5c63a68334c6f360771ec99e79bc7ee155e0e9978804b97e194f430302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ea3ff19736abd117810d6ba561c26e5475cbe7499d1785b2526eac75078944ba16592475daec20a820810a2131dfa19602301270a3b4c4a61e419d2bccbaf29f497bcc40aba33fadac4575c338dfc6b4c1c4e0144911721223945cec0cbd8942ed0b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a1fda848d5a22b177ab7e8423c42fe0c8454416da912d3568814fd4f677df478130d7de0de6cd95b3f80c85612a647a7023100ec45d0c86937c72c27d0ae9f99877364e0445c7fa0e4638c78978ca2af0fbd9b0763081769e6340a2a8b9312f1f2a6f10302047c435bb5006830660231008708a72eea94568355f58dfc1079194b92d6be197544402d20849dde140f9828149adadb598871ef7bdba6d7121395c3023100bd2feea1626dedf92afea0387d5ec89e4aea8e7427d669452653700fcb1033cc8487f7481ab0a64136abcb008b9f3a970302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ad69acea8ecbde69605c756ac77b3b2b186a5cb6b6ef33edd2b8d29a6aaaf68ffd02e88b184fb4df169b46f65e2fe1e8023044a60d3a1fa8ff1a7a33025a325a1edbc861edf1abb63a2a591cf83edcacfb6a6acb4de340717e3972ed9b26d50bf43f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023024dc367a3c105d7ed8799760a4d5723e224e67026e3e28cc796b9a6383ee643e369339f607757ff7249d106e18331ade02300f3c989feb5410b1f66ac3c4eb6868c4708588e309fe4eb75c87ecb4dff0a794699ca1f0143f7011524ba3c5bdc418760302047c435bb500673065023100e369d435e5fb3df6b8fa70c2c9cc67d8232c8be355f6ae1aad68b520fd35870ab1632a06e12b339f3e78cdcf339eed6802303287ca8f2d52fed376052039f14557712a8cb934232b0ede7ee29f928e6961fe7b2f96012e0e28319ba9ff8c393170ee0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302ea2690a71ae78bbaacac134a15e5f7b71f3c5ee5ffaa12cc5d5d41614dd8355bfdb11a7c557a31809fc7fe2adacc91f023100ebcb5a5022661881a09fa2550ff08756a023bd6b9f230550df50927f1698c9b414c97b65118ebdb29df4034a353167140302047c435bb50067306502307bb922c85a2e6a3348fe66b2d44bd7dbd920a4079501ad8b82f8ce3db6428e3851380fed0714e2f8a55de23cf06b75f0023100f888ac98111c8f5119e474bf12763aebb74373d9fac12580679efd1913dbd2c8d5b6975c8195251407615856a69a2adb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e38a8d33b9874e8e060a871e51fdd231d018e90578ddc6ecd4cd0adef995a0f308661e32036f2d6258a0e763556675ff0231008aa09d847643b9fd5314baadb0e9ec3c909f5795db7c375711c56b5d5829aedc18ca140a08b11147b63dca07eca3093e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306ecc82c7f93c3b7c256bf90809094f9da50f2636c0e5c3e33328aad0494eaf36a56076d94fe3757d0aa42a04891274c802305c7ae326b3d9eab1e363f4cbdd4d8e4c61f49f2357994d2057921f2d884cd78606be6d826d4472c7734db369ab5b47180302047c435bb5006630640230138dea3585ea9ba72f631cab4602dbdb48ad452d582af14cffc094f9766486d8eaeccc13448f4dbc8f2955f18c93f0c902306d0c27bb5cc59d5dbcde79d286b77f3d4cc7603de12d69ef37cc082ea127f4ae3085aeb56e4f561772d4758032c4bcaa0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306549f28cacbf7dd936121e2df9fd840c0e21b55eb147a6b65e79fba7a95aacff8e56758e2e2e7e5464b531c3b867576802302b15171b36a37977862b1c158c3357684b70a90a4b572815a66e8e85db0f574de737a8f63662b9945f7cc209c1bc537a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100dd990a3680ce269bc9b8cdce42951bff2d304902444e31b696513402364c2eee396f35753d98eaa6fa99414a24cb3c2a023030a82ecb25ee8633f1396e4da4996782dbfe8487578d2119cee6c56db1bf63f031f63b0ae58dfad18ca443df0605ad420302047c435bb500673065023100b76d16ea8e72226c264b36f50ca4d33b668bc62c4903fc72cc7f7632d8e42bab8cd32c58a8157ebb488a60930e8903d202304cda300d6daa1ffdfd24b8db19c06027f3ef8139f9b01aa1a3d999478a235c1f2e41d2162c17595071cdc1d4616c4bb90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023079220317fb43da16b5549cdf44f29171ead786e0fcbb95c7a2b595bf55c0596b0de8cde388a6eaf5abfbdb6dbf0d24e6023100d91f06ec7b8e7f27bc78b5c2b011dc98385c3c3f93c1021571a29b681c755b56021062f4b578fd5c666493268c308f1d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230438a5650f3c01bc1675bb53e240fa223b8a9c8fc5c74d0fb237480ea65ec483b5b223070c3061fc8187c0e2822a6e6de02303bf77866bb46878360b3aca6bada8b4bfcc0c6a305c4341d197de506f3676b7e1ec5ef8cb9b4f5252a4596b48b68e7ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300eef777d60a56f0ff5ea9f7622387b3ad9f1b613acb1a57a519a1d09cdc56db9f3732d8c961ace8dfe33384dbb606700023100a85064a573416f9394223bc0bc5e8e6a5c18aa0971c458219bcd4b3c91e1e11251a9095f5a4566da30213e8f70478b520302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100fb6743a9e27a45e9d1e797cb82bf5c13784b011d64bd113b38621239b5554c7116ec975067ba9aa6c000f427ea9caed9023100bf27c103950f4b589312444c6bb7b50fa8da3c1071eec2f4513554ef56674309a07b3e00d9947d388aec6225b71101800302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100978176ae987e2d7e10a45a4a16f586ca60ef35134c1729e01ad6169971ac75bf0ce721b24ea5a45f493f118c0e729ea802303740b31eea58feb295461aecdacca1ac961df5bf752ad8acd3392e266f6d6f2018d315cdad16ebf008dd75c4be4141820302047c435bb500673065023100cbd8d6075e5da9fb0959f5ac024668d9b465e96db4ba7e4f4934694b13c9ce304b9d28e5486e03a5c6e94a615ef4283b023025cd173f59cf673898a96aefba625444e3023eef849c7427315f3aa4eb2d9f78fcee9863e27c8b0061eb0d3284ddaa250302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100fc927d9e255b1168cbd808b5e72d6d3891d40f8ad55b967e663b8c4e39058ab7507d18b21f9842c67c656fb6315c5c3502310083964019588269fe053eed5dbdfbad8e567cf17d9d7e1b46622bd92d7bdb9bea89ab3440909c91dfcae654422eee7aa00302047c435bb500683066023100e243b706e9a486b3d5d84525a5cb3398b658b74285ed65a1a3f02a3869ac36d1a110b5a41b9c6aa3d1b90c82a412dfb9023100b4d3e82a3cbed5bbe61b1c21432aa16559ae9eb8ba062985ec7973e21663ba6e10c86de1770b3656e57c6957fb1ba0d10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008e013b5c2a967309b7aa642c7511bd9290f9d4b974e1d1389622ccd2ed33958a4ecc729145223ddc71974614ad757373023100ca7ce8381ca14a3c4cdcf75063052fc785dad9bcc58db1d2401311efb9b991df093bb6ed25ea32a1d1fcd0f183ca07690302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307b8b2f013c00b1c75f8148fcffc264618a5c3d9b0a23d772d93a04bc77ed5ef81bcc38882aa3bed5f1f7da1bde8c6ebf023100f8b3ec323e8775d032ad0810819dcf142aa4ab63a05a07a73a157aa766d93605914a82c479a0f2da690b71db65f722cf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b1b786b17f32748322f2381cac94fb1774c75f972ef8a4db450827a2c105f4fd14e64103407be81be86f13413bd5d7a20230556e0becdbdbeb1903c08d3d49bcdb3306f6d05cbbab36e8c6b5badc86bbbc111a59a25395bd7c4cb1ac592ee2657f3e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230058b2af6011c7b3f47c6a609ebdb6659eb3f902e2d51c7c19f46ce8835a8b43699e7d59a458a16e161dc9bf3537dcf92023100f8ff5fc3f4b67ac868d3cc185aec8fe20633255f5b8cb66fff300b187abd45d0e4283542cae4a86431dac3ea849df49a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d83b73d4f0d51aac5905ca9b644522bf6991158543b5395b3001301a061fc01bc83486d30264a5f1efa0dcb53c38ba6602305c3f82ec659d1321348b47237c42145d24797d2b70bcee6e2c8d1a614943d4d0a9148da6e9e2cfeed005c4535c7f144d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307885d7c15c8b6cbd3e79d7b8a525eda7e15cb6c7d0b2b129f022065da4ce9909c4dd016d77f49e510cb3fed6ad040102023100cac3de2519734392cc0c7b299cb997e90558af5ba01c7162ea8c95dfd48fa30a908ebf06955d6485dab98f5c11d325d10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f1cd723a037b4c3f576432c449a56c9ac09fca0df59d66980a6b0922cc6a25c89dd36071c9ba021eaf08b66218c400c1023010796773c08afce67e02909007fcfc6a5d62ea9c665e3d71c60a5beb96e314242b94aafe962000c70dff9f26f1d3a3300302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023052cf947a9ac424ea59d105aaf77b4e45b322c6ff84ad6122befe88dfb35ed91a8f9d62620a9547f3351ede19456f1c30023100a932cfed2e5155c1434bca959f6ebb8d6fe17c0bfa7bf4b44e9ad7f8d20dc8569a87690719615db5e056273ff44127050302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023008ad2bb70e11ad6f1d0281e33b335b0d5e1c624d8f8ea350c778fabc28b194d11c45b3936d3baf7501d25d0309205740023100f9530584ebdbfb740578eb9b457b9a9ae2d05435a8879e76db20f33986e4bca26257d0cd6de73952821b7fe84e80c5540302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300962bc7745cfbdbcaed4f2404d19aa886edb1d4949ec1f1492356ce656e744a88314898c6dd60307b27d8045db0073af023100d1866ecf680942481be23f755678ac64bc0480ebba80ece305d5196c9fbe12fe49ed886a2a75a7463addaa586d1097250302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009ce482c0840115b7122882f1dab0512e59eaf2f406c9ae5cd2f719e4ea8926ba9a27659717334e02f788f204fb98163f023100be2ce436bdc40945f1fa84b19e611a081a05ee1f6eeb75eb4bac20712ac2ae11360f7e9267a7b9ae624c4f7a583b113e0302047c435bb500673065023100dea5c8bd0021d212faaca60796734d6b83f7aad32be7452a0436b9db4972ca5395eb755a93c50bbf6ff0fc1ec68994fe0230425a31ac6b77748b8964db5845f412089364186828ae90954e7e2c6317ac2ec98c5addae9813ad36ed0d4f9204bfaad40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d0a4ff89a8bbfdcbf3fa441cabfb140dab0e9d7aeb422f9546b87661ee0d10281e2ecb4aa0592a48c65657613dd8d8b7023061762f2f8685c2bc97cffae0ef6759ce557366b9f96795c11db0c40abe56236fdfec6f8f160b88def486efd2c315c3b70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303129ab187e48ed725648c2452f6cd8b8fe37768ba796bedc9bf8d38733504c683e6b60d36422e9c3c21325a3f9a04ff4023100dd38a00f17d33c05ed6383b3c8b1ae56571c84e298971b8c34885964d60a7badbe042a5bd6a38908c007833ce728c9bc0302047c435bb500673065023100b9dc05ed7267da841dae92ca7254e1bdd2e532a34e6fbe6bfc221eafdd9d5b4690a85ae427f99d81926eae61362086aa0230760e72d5907ba5ae6f914a6125d66a7e998286240e7f5b74cd889c5d2a087e9c966c318f33efe922b6cac59772b7c75f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303d10711f666e627b237f48cd1c09b0a30cfc3c2e47f5de3345af4c617140778b200a78004d144454cc6c8d00fa528cd3023037a85efe762a099b29520e9adaf39bf99afb4956213d7d9569a3c04749f04a4d31e7b07b089dfff8b2c268b473daf3ac0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300bcaf28b051989c471fc73e6d352127094c636924f23a098a6250760e2c9b267976e9f3dfe6efc29d69af94d4214d24902310081c20cd29864c5c9f3435125cbd9bdf3a6250ddfbbc7fc620dd77e8f0ffbc0755727fdada5b1d106bb7980f1c40ee5390302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023040baf25bc4e3b418ee27d30276c27cea0a7c48a6cb391a89f833dbacb5d9b0f546ab231c9fb656f46b81a2c8b04ebd7c023100b26e2c58bd3cb2a453cece3d017d325b1a02347b14510772cf7b546dc1989aaed6823b83e2344f8c5aaaf4fcf70bae810302047c435bb500673065023100b49409eac5b65d17afed680cb4bc8a1c4fc0b2403867d9450be64d03b91fdf7434db0aba62165d1fe224a691f9da38dd023022785b33042decc52c2ef14da46afc5ba59549898490ea704cdb9a007589ca557665206a76070c0910cfce1bf6060a1e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c41a6d70b55c134328732c2328a3754b86a79422f7b8e217a87a8e952d5c9548086e784a81959a684a69d0032d66175b023100809cf4539558d608243fb3b0b374fdd1843389a0f5585caba5ca5c0d16da519bff08ed19b34cddc5eb53a72272f208da0302047c435bb50066306402306adcd37081600522a7aeb4acf601f8f26c3c309377a7c9444e6149b14a0c4d49184451906bc3538a85c9904322e5d1dc02304cf88d5cc2199f9351c3509af8a4ff910c8fe722e1cbb2982c37bdb2e351399e967bc59f49011703891692b47c85336e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b27b331f0800b3478197330011b905d9d7c7e0efa4e0466134c2afa90eb4d286b1d8979c72d301463119924e0c1fd7e6023100a9b5d1d206dbf3d8122b5953f634413f346d3aec0863a9f6315069de89e5efcfd88d9d62c624854ad25c3e742af2a4fa0302047c435bb50067306502301b6603d93868909568aa41ed71041c90805598ff01f58d92bcc86375833ee5105ba307622a8689bfd738c63d087b60ca023100e5179b8c92425eecfa652763685b1397e16b3de7cf01848c0547205ad9688aed8cb183b0ee4f958505bc2830cb287a4e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a347334187fc7c55771457f6a8c85cef64fcd7401084157b0d6381d0e7c573a80f455389ecdd094642b3e50e68ee44df023100f71b5952cf4bcac48b6cc1092dfdb34eaccd08ffc7974c85683f663dc7a84bd393e87997e121722f1faebb84731a29e70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d9dda5eb98c297b63c9cd716fd299d0edc7e86c4f888f6be018c117da7d0007d2ed9e2c803f9b86b96aa3ae57d3f7da6023013143fc92c0661d7eced647888fbe39b02d53a2f839374b74e793fc29a38e38c496a0f152abbabc0f829be287dd44f370302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100cedfe672b1947ced6ca77d2e2f0b1249b316b82998868108c0ba41bc00e047672ceec66eec3315bf6ff7419f7553194b02301a21487f9d61d64cecdb10ec129f68900a55b55540b29de2d5221cc9fd39ce216aad9964264e4733ff353531e6b6bfb70302047c435bb500673065023100abdc16c4872d62394406865034179ce14b4d1f399d10c3a2277a19322717459f99b52b6c99603292ad3600bc4448bd0e023054fa7652b67c817a21b2d523e388363e1172a15e0eb7cf21a8841a28490c26d011ae9112b5b3f311f6707ebfad8e323a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009956e0ac7b166c74dfa6c370798b66eff60287b442465c7ca63e96f787c7aac16afe5f93d3f0df1ea1bbb0304f30295a023100bf5eb980d13605850b94d2fa0fe4e22bea5d3512820cf9797b5c8f17c66860ac67d1e418eeba738c241bb15e8b8a53200302047c435bb500683066023100b20252db2376467d48679a69bcea69f959f20f9406fb692b6d4903580c82276510e22e3d64d35727154411604e441fcb02310088c69d97c2b0c3266c285e52d790340af2ce594b266cf30d0b114b87fabeffe18d6a6019eac77b49b48389d5a9c65d350302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306807d75cb97dcb1174a428bc09bc62400b3c6fc31fe17a1d289cb151c0176b81894c8cf4788db9336392f66dc062e6b702300f916f1b096cfba771faf3132355e16932e181dbf68d6030436275072715b9a139074332d63004a3aaad00707203186d0302047c435bb50066306402303c035202e48ba98baf4e435154c31d7376eb7f5b647967b252624ce88d1ebec6ec53ac53cce16a2c330a53aff3621003023037ead42a7e863272c72fcdcb377283b1659b89c98bab92c97091283f9d5fa6f9ad3d0ec6a32cf0d30ebf48206bc103b70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023062f5689644d8793dea79b9fa14a123eef34300557ebaf6e8dc35df5aa05df248b6ecee6a29be492e6249a15d69cd35c802300d46c0794393f27091925ec514b389d08e59e413105f3e0f10663393a133360ddc16fb8b74e655527c74c56a00cfdd780302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c33eb1310d46668e017dfcb106880619bf34e43702d1adc0edaae91a6185575a562f24a7423001fab20dd9d96b2532d6023100cadab3a31e18f8ea37b964502931b043960d3b20c86866ed9342a29c6c689267c8086f2c4dd2cc76e2e0d0b55d932e230302047c435bb50067306502302d1228987846fa9f950d244281389233026c9d3faf235f2a38a657f697fcd31add8ecc9bf3ed9c7e2bad0fd42d3dac70023100b0a0bd3facdbbe8fb1ebb4ae8b6adc56b67a826cb20fbbb834a55220a89408ed27112057efa4e21052a26e6def0d488e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b391b551dfd2704b23549ce2bc8c76e3a9fc3c7defe26beccdd5e336defcfea08a446108228e30f809a7f9c26bd65a9f023100f5daa697a7b9c54205cb072499320391b93c8db28e9e3d35c9b9143414c8301043d284e440967c46437118fca311de590302047c435bb50067306502302cc694b0024bb5644f025a66083d7b14f6b3282473b73094b4369e87a9b62d286575ab7f4078f106f53ae1c79c4b9c6102310087241e32311ce62edb1997a4a9af5cfa19f9353a29c26f508d43a9e142419d21236aca3585e280c7eeabfd3541d2b9d40302047c435bb500683066023100d655dd9ef1c6d9c032be7457e3d0a4a2d864491545489f0474255cea5b28da223ccc74e4c8c72a8efcd80d3b82027197023100eaf2ee598e24387dd3eea6e9000a0568f6f9bffef47e0170b6bee555cf8a7c59daf039f11fbd72c30ca7bc72c43de90d0302047c435bb5006830660231008d40ec121789e28cbe148a3d139f2907a9402afe217f0594f56b89160608a151b41c42de507115f074f4f98197ea5245023100bab5de756b6fb4e06c95c8558a61729bc9bb889da85820933cf505965acc5c41b9a02ef56499dcd85917017ad5d172900302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230711c1f05cc1dc239c1c4b3cfd58021066d62e806fb6d2840b9f0a453abe0df59809e924c2bebc1a4c62b5422b88e4e1f0230455b80060a25764a100173e3820cef859e5705e5e91c42d376935df539a5960ac2105695c1fb996d399b4fdd0a791f830302047c435bb500663064023037422a6c3e1401b19da801252dbe6aaa9d85f959a634c70ba0766bc0ad5d557b88efd7ac3b5ee595a1752027eac3ecbb02304c294bc7d4d835923a3447d399cce3df885b84ac44b058443101d9153f5f2041eb56897d475c07293a93dbdf7468919c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310084e99af9af856ee8b264bd10f211cdb1f310a61feb8f7e947c56d17a2347d5198763908e8d7351d4ca5ff4934cc3269e023100a75c736013f71898d6cdc4650949416b5d9444c082860ca926bddd737c59c52b53a22c848b6df8f139f35e479bf1e9d80302047c435bb50067306502303120551c27529ce2af9e190504c1336efd7d0fa1b1d8981daab72a2c26c1a5e74f9150aa9c8a2b368c69704ee3364e37023100c30a47f08ba8deeaa19782d2950c7dbe7f773a69ea668cccf73cf2cf985171b5a3f84658ede61b1f30bf2b4df893d3780302047c435bb50066306402305413d73db694ca6a598d3a4e32f3edfde482e720f1d58204ed2be205b302fca44743c4ce78c31d721e48de765b1b50a802307876061a94b46ccd567176fb046d60b4c8d422a7907691a567656f6932a3d51e5cc134e615b6aecc66415df15bc4e5490302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f847233ee0be7b7a5ee4740c9d3a333e7ca811290f35dde89abe496d66af8af55f287a460bdaf8446a5682ff07004cba02300ebdc1711d4dd4b008ce4b17d9233e351cd9737b2aeac9338646042218f34c9844d3964bf5014363b727c2e81addb94f0302047c435bb50066306402302dd56705018f2f61b2945bbb0151360a5f71023844b88a43a085452f18e4d205a64614f925acd0cdd272a5fc5065f8ef0230489b85a39d6a8345bd1446dcd68b726a4d45f28f94e732a67071397efdb518fb1a40fc7dfa3f8d5206795e0ad82e31730302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008a408828025dc7034313986ceecb99c9b1385467b66b0febb27326ab3501f775beecdb1b547ef06604ab67fbc71a36b702310083d2b5474c1e8296a653d92a651067292f4048771df3d8be6ccb698f35ee50b2dddfd92da0a6e90b351a5acbe794e06e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304b5ccb6f39b4052f34a87a1a4ff2edfd841b9078ec3a82b7cbf8f911846388714733d520312c0b5ddf7facf90c24fda2023100885a3c8d49990bc1c5b73963c247892fa5c9b168e76b4038a85140d52e3d2e9a7854807259ecdd6e0c06c39152d298270302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301615d72ba1e39ade78660414ce0e21662a17b5c5ad422b827b905e87b6d91ff64cdb58cae334266e48b3fcc9e029304302305649a84ee0457632e9eb89c6ac70b15769d0faefec232b405f8e3670eae0dec104071121a124fa5ffe7ac1b2678e39150302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310088d6d67bc4a2ec55948847ce8815e6a1fe077aea8e51fe12304a48f0ecf7bf689c92be2c8ac9718a86afd9b21dcde119023050abeb4b22bd87b0f0caeb0b3a058daca5936d2eb1261f86148c4d892309c1f8e4201cf24ffe51bbefe137f3c046d3ba0302047c435bb500673065023100fdea2e9fb1b1ed68e49758829f6bade937830b907c0e8a99ffc543541304436181a36eeafda63a15a8529d46ee13555f023008489906a04a0e07e06c86c8a04509840ea7e47e654391780aa2498267f2d56c3946cb8f285de5e1c516d177f3e26ff00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009a8d3d255817ec56d66332e33835a32269d60142c671e45131729b2c6b386a7eefd75bb3cfbf95463e816c60482bd2e1023100c4ced20b52710038f336cc050b5f50eae64fab976e329e2ea54000497ef1fa23d23a5e06a741e61990129aa0fa0efbf00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ad90acd22621e4f37dc1ff5da42c73f11db0c4421a983e409d474ca83a68b7ed3e15dbb04455458ed6df392eaf5d06e9023100d91d19647399fd9c4bb8e28348faffc947260e874d2eb0611201d480c799159a333ab4b1a6c93e1ee72689052a0431a20302047c435bb50067306502305fa263ffc0c090db0952ff3f3a99ed797e99567873199bbfae1f1f26f1e2916d0da6979134f4a5423341b8fa254af727023100c6095648d0ea1d2ef3da3a7d6e36576a5abcb5c89679e38dac18ae573409c496ced50241fd738b05157d94fac172453f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100bcc7d9984c964e9e13f86bae046cd40f3bb5411ec13fde0e243da67e1452e6b287406945733fc6937b8d4c565240e184023069af5e4beb378fc76139e8b0997b4a7eb238ca85b482374a32bd9ae8d73dc99bfb6a49b9ce87f6a9a037581377c573b40302047c435bb500673065023100e3847001c3f011643ec0979116520b47f000eeff994f50ce07e556fd32e7c5511c79b93897f688056fe3d593dc1f87890230199d85535304a551d8bec8aab029b1c883a4984aefea31521bafef187c785dd28eec84863960d3f6766bd53f2a582a6d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100fb4795d74b6035cac655beaf23da03ffa637a8b1c0de23c4313a2f2ecca3e027c2e8aba5ae8a9ea01190c37a803adc2b023079209dd08d5dc4f070705e3c58ba23099cb18a9d765c02a312527e94d94457edeb77a86d908ea2ae97086654356c5fc30302047c435bb500683066023100fe0f90850775f12ef7efe4fae95232a34f1debc13e6166b410ac7d68480bcb7a5aa36cc294103be13e53c4211d0bf1b1023100f46cf5b627d2c0aa67cfcad7de2a019abbf58ec2b70b4312605001ab04ac9be89c4220dd80e488637f4f7f1320f445800302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305a33fa67542a188ab579499c40a698a90a8af716a3b5658ac04118bf4f32f313c515f4d39a9d6c04eff6a7b17ddd1b67023100fa48d3ef00cf717f1932273501e45f80fe7d89aa92a08e1e228cb6c069b55a14d8b969d2ded222700a36cdb22cbc67470302047c435bb50066306402304fedbb72e01d659f777b06908443556ac62314d62a05fe47cf5a0ae7b1f07c765ca5eb47cd4526a330faf09460caa33302307cd16e81767abfed6a2044ea277801eb1430823104fb3e1c80b9c2269d5a81cd655020f6d6fc016034b1c31903eb73bb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023072437355d44756de4c886e9d72be5dbe8fcef1b4c6c7a0da2429266db1ec775124ed26feba1961743c04cb689b58cf45023100f6f3246215741ec4d4cae17aaa616b37fa3b720d5996ac00b0f93e1a70f6e8d0b8c20d54f8168fe3d691849627c3ee980302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402300c1fb7761b13dae6430d745b89c4c865e3efbbaf66a4ed1e3553983dbf74c32ca473a125962491e5af9948ebcda8faaa0230299cc6c668c34c83ba4bdf04d97e755ad4c028b9f3e0f0aa15940fd93c17b155e8d211dfdc05fd879c35308e6473e3b10302047c435bb5006630640230783a7e883e97460b2d6211c4443bf92b5580729a41449744c84063078b6c1f92392b68dd8247ff6caf09e068de24dcaa02305f6457fc5cf519370cf17a4cf54d4a9307b111a92f16cda6bd1d4b5cac3aaa5872b25fe1249bab32d847d1a6623f88290302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a4e437ce2a107a9d3436eb2f3996929ff22100f10d01ef16973615d5a3b7f9ce6b03e09420bdbc7eee51e3fe3659a8b602307e427198c264a59fdd2f112d8bdb377565963ae7d2c50036580845bd642d9e33fb5c751d1662813e4fc083577f6b6b2a0302047c435bb500673065023100ee7d8a1f196637a265ff85d56987a3b0f871903f1de1ff396864bc5ebf36ae05cbdd9530f1a9764f53edc5a4acb096eb023055a7bbfb450f03a97b64083ca4b35955be8aa106325c01e2f715c8eaa36fca6a94effad5fad8068a3e2b438ea66369790302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230209b6affac83929bf54773510f25d3a5609ddba37ddee0df445d94b8896531439dc4ac60ef8ccaa163c8e18844a86c30023100d3d551bed370de9407b9c93a4a6a60755a3b4cfbdb620e7ad461e74b92618107efc03c6a65164072b34c9a0f90cb4a860302047c435bb50067306502300cb3166890247d57efb40d65f5a10ec80c4ea99033c9226e28b7c2db9c5c626b52709c573d2045cb10ed6627c183d250023100a2d1c8b1996073a3922b31c95d78798a8a6f5404dbc999d52cfeff36144af7adb8c6062e5340c233cec03ade2cfd3fd50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a4b44573df4e3586dde1247ce66e529b17ecc93054edb261e5c17bbd0fab8ea7d3ddefc904622cfc2737d413f6c79a85023026167dfc4fc216c989a5e466db54f0ee4fbf619f57a80de79ee83a8ac330eee5ab5cbc794f1d81a611933a2c0edc7be70302047c435bb50066306402300d0ec5c626e4d138aad371d51ce3324a0dd034bca8f1784e38ad7ff721ed65f06d08faa2280739d99af75c0d9e7c143802300940d25d2174bda30d665c87becf536777a77950586757e0a300bdb12c563e6c306c1085408dfc92b195fd49cc1c6b340302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306b9ff89da2da601bc8039f8dfe739b21d30b09c7a299f9571435383373ec326465c27948309552cd54afcff7891aeb18023100992aedbe8f7cf17d0172d0dde26369b558f4ad2629478c4feebec95cf29847ed8fca3e67db6abe41aed075017693070d0302047c435bb500683066023100dc52c62e550978fe6bebe8fb0ec8783dd0405e29257013206fd1389f7ca5849ff4b28ac9d7c4d99c1ab0aec065f637a7023100e9a0bd2013c36664217b542911513bc8e9a109a2b4667ac95a3aa8067d6d6d7ea28a1e55fd1b3f5d0984ed6667da8b2a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305975b1564d84906218b07b4ea4f19cd4b71bf66b5ce7791acc1ad28c617a9ef47c144365432ad940c6368413b52da3b6023100aaa28cfa6f644cd2be557db90a44800ca975b3edbc23989df37b82fa821a88fb8fb5608d52df19825cb487eb82971b450302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100996cc4992cca7af16d3c361bf63233c9efb32e7a1d1e376f56de86e4da5a5c8773550acc6e00bc14e83030c39cb48412023100b78d4af7a53784702dabe52bac7109d46697fd96aece554777f1478378461adacc7906e0eea879f18319cc515e6550890302047c435bb500673065023100df32bb5d6361df4c79d236ba11205b49c5fcdb4908ddda91ba69857dd5157bdfc92b8b861e4c93098bdfddbd1036013102303c1bd75af4314cfa688c20a2362b6243a4325e1d7ec993aa47347012d525ea7f6ffe491d1796216122fa0edd7fddb9930302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d6fb7bc354fc3fe8763e6535d69b681531a5794264ebb585051e0c67d404b489d124c33ba9c6af4b42d43eb1312a5252023100d1cb265f1db176bd06520d9d22fb68d2b7e0a3c04bed7e1b23ce6cde0935a6a78b596272790ffa3f6c87337994db0e140302047c435bb500673065023100c072119caba48beb6692a24dc59482de2901b56ef570848b7c519c3b74443b8a74a9380720936b6886f02109824c209e023066b590f4ad8fffcfbd51419e2085c6a41dcd97824503d500eb382136afa5f882359e7497dfecb093cc02cd2617e984d20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305d745c8842d31a9e400e3a53d1a804d3e6c5ba7fb06764dcfc380e36d9beda457f227748143d11f77620432b415ece9a023100bf5876fc561714958e0c1f57aff79354dc2f3464fdf10917f646ebc5b6812f6be8ec25b54ec3b0371cc392627c303d690302047c435bb5006630640230415417a1ca99391452721b21daaa6d07f2b914387bea22034e39ed3383a76d932f583ddaf58c451edda61b1c5cee4893023025fd7e5b11fa6a0198b7a906c76630372d23fa272c4683daf4b7fb9ebedb96535a56c31c0024757e6fb4ea3d4bb12d4a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230149285063ae90ef7871debf874989a97591f47fe64e76140620c3e7d615e76c501a59b71d1626e45e456271bea6dc28202310092216c23edbdd2fbfc5ccec99566e61d11477e59c2a2af90a7e25e345bd58f12d7796a2c36a3aa582083a9f56d728d560302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303d2a691bba62e86c6b5603e328aba0d0fed245a0c959e0ad59d10988c2530920074272516462fc0ec3bde8f5acc820670231008fbafda15442909d19fa7146cc856f83083d41c214f613992d0f037e7a2d4a3900d65db46b90df037fd81473015eb5450302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100817921b5a76fb5d6926bc48d68eba5f12394fdd40e81fd9c015107d9292593d33f2374074e6bb5b00f5938603ae5542b0230523956c755279305b4bb61a256a11d432d74035308c6dea85e8e952f31d510f83748493041f8224c53f4c702b607d58a0302047c435bb500673065023100909bebad3adfe4b96d3c2e859d8004f072526152a0f1abbd16dac3c0e5cc961a756df43141800e8b29237173de5a484e0230022281188d973dbdb23e310184a619bcd18b5edec371e8b974809f4c22719b2b677c333ebd6b2622a01fb1a5eb14b99f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230492ee971fd645b7168163de8282f0cd7fa12157ada56ac63efff41f54391d37851ee3c9e820c8e4a90d079d93898c9c002307ef1caae6f4c75476cfb95ac5ff79bad53b098b4730ca396c0ca04c9393c25eca1655dce266901b0f787674bba8916b70302047c435bb50068306602310090e58270a55cece7d1c1b9b9008ab2741e8fbff7ecfa882685340715064abf920a60d5f00f94124919c0919349b4a2cd023100fbbbffcd3120c718dff3f16ea881988ceedff8c04c2505700de327b0ea23ce4b3700014aa8fbf88fdff4aef16ef0737e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ca3a3f65751430b1efad9265cb999063a28bfba915b7f044fad1a4ef014371f86145258db0fecf19ecb73e964aee74f40230279f89355eea6e8c6b90124f8359448f21df08cc12f4e8d4bde7e8ab2844715716d9dc662c42a92de30a362b87c449240302047c435bb500683066023100bca7c1d4d31f051f941a842bef0e537b9896b69cbe4c5b0297bf2462a7b011a5f8afcd7f2fee8199b9a53dbbabd68bdf02310094d2eb2ae9937c06c4ad60cf6bfd4f683fb9190ca643873127708e2f4d17932d2c1a5d4deb28ed15f2028f2f997d2d150302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301f7388795203f30aa1e93bf3971acf141ce3efe5ec5f0a4721417b15a22974ebf37d5476aa2c2ad17deb9bc13b8c26eb023100a0594b553befd41bcf3f27d5b2bec6383b3e7658d02f04b6d56c9f8e3f3d4ff194d5e45a2f31ff66135a390b1f9510690302047c435bb500673065023100f9cf1ee3470602bdaa937855ad9b3b9ca6aae4399619afcc2c2d11b1700b521be2982c5add991e7d0d1aa0ed4fc4958002300b44558bcff50da326c2a718c1bfad644fc6ef19034b54289327060512f3ca822c4c18adc8412d567f45fb8ebff4efe70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305298c0871260a2c58a5ffb78b3474efa1e72dc2d1f3e91be0f88e2cfd208ca2263ea7c86a856db797e9218a2bb7f6aab02305dfe8ffb87b8ff82786e690b8e5fbd5e2a92117ecdd9ec7379e4d60573ef2a403484b5073987a6e43c164aa79108b9ad0302047c435bb500673065023100cc62d09fb3ac00e0936e57682db6b1f2988f5387fa4028ef8ba7501a3c2ed9cc0f494965bdcc70071d9c26801b573e09023010f6156db9edc638181e7235b16b270b5bb7e03df4707dcf6ff7cd7dafcba7eef5f71250aef5df823b14c029b344a9f00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301a8d8189b1cb1cf868b202e077576ee2b233b1543780a4e1f9f65426eb73587143233b5e68a78d99241cea5939227c8d0231008d08cf67ac35e60f5698e98b12b61925fdeeade74170a33532ce417806dce54961ffbee9d1b6e0669feed8521356712b0302047c435bb500683066023100f9ef942e218b3fe6eadc01953bacf764f7f0881cf18c49b937818e043a824c3aa16774346ae00cb95acdc260b50ea87a0231008980a0d27c1db8d97bbadfda9cd2ffcec22a6f55bc3c14a770efe103df68d4674c0c3faa88f36adfdce2f9b2165dd5300302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300ff9c2124bc647c2ef78874f4096827fdf61975f83a8dda3546cda6e3b1e758ab4f9ea43e519244833f39f2a375cb031023100990194bfaab33627b83dbf447228287b73f7acec669a730945e4aa5f6c1c20f5422947fecf16cefd64ffc344cf4191ef0302047c435bb500683066023100f49933a66741cc92db57648293c7a4cb8fb64ad927bd643093f00bbd7d5f7ffa91248091677e57dc05a551c16e34c0d1023100fc08bd7afef8e73914d709efa3f33c3c9b68e142249370b334fb0b82d2e4be61dca0e5276e5bf68704d9b748c1e9edcf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c440a6a5b7ef93ec5f25f739d9a348af6f8b733fa423ee59b9574a5bf8cdc1b816e2f8d90a523e94330b92d9e9c79baf023100b2c4bebbe600cf2a03eaa9ae568ef352bd2095cfe7065d73c77916a272675076bade1b3a82c506f502e6d83e9a1a9f860302047c435bb500663064023027163aec731a225ebb082d15ef93145327cc81015fa3109025406d2fae6c0ea58a212bc053586167f754f4c3f4d8becd02301cae4b0b78b4442360fb075f0152277cb9094ab901ae91ff57d2d186a719beffaa31a0d9ee192f3774e98af5b81bb50f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307d458ba511a7430b63bd61caf986d3112ca18579813c332745121ad1fa2ab3babc9b44f41290fb896d7116bc19a010c1023100fd1dbd248a858cccbee3afd18f0fe1a40f15c2916f061ef1f19a2961dedf679ccb7cb00d2e8196b2243e2db07719fc240302047c435bb500663064023015c79d41fbc2ac3e943472c0d7ceaf9e703dffeaa13758faef2eaca20300e4bced9a0d8b90a99acfb6d21b2eb195ff6402302ea169918905fe8b36bec9f7fe51430ff1ae167ffe3512a758fc191b003e2d5a5613c1b746b43eca0fe03081766a50dc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100bf83b5a818e2cff31cceeca034811582b87fe2fdad3d8c5e8d50a255ad8f8d0f5b544855bc843e6e026331d2866751cc023035cd4f26a0005dcff9d99a8fc865b8e9c9257a5c0a522109ebaefce6314a411a8709024675b6d4e6446336b0d20ee3ea0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301c7f587e0be6299cfec4e4a89c72f506729ba06b05a8850f6ddaad70419045027e38f37ea4e3d23f4e6707394811fd9c023100ccc4865e17ab229f26967f63235f7176495a94b28557b77823e184eccec5dd9271c6e47567e348f9b6e7f162a083d6b60302047c435bb500673065023100fb88870ad97d526c18c2c8158cc362efb88893069ce5bd253190c33270839290968737d45c84fdc88045e2d065e2146702301808e0da6d2f1a609a634c60514ead5d986250de1b536d06f695b3742f2a8bffd7fa212b3b006e2dfd2706f06c674ea90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307dc367535e6caeccd46dbf4704e44cb5e0a6ad73cb7928c9c1a697f665087f5a7dcb428569fc00e6a210a6fbf17eb6da02304fa1be69af4f1973736442ede883ef4ca8f53f413ea6c99f8b481a183c9717abd5a53fc5702480ce72d415d490229c850302047c435bb500683066023100bd798a01e9e07ade027d1a751cb4ccbf42086c6f87f82111d5aae7855fb9b49826ed9659a1e2a18e92540d7ef345b9b1023100f2f5c2bc77afcec29b78a3e64e75cfce14108b82adf6ff28f752265af05c814b20d669353b2593bc3c8ee1e299fe67550302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230394578767048f6cb0eec152fbd10a63820c2ed28bc7656c8e474a1c8175a6dd4b20dfbf7befb1d18bce8eee09a04ec70023100b58b529118996110a899280ccf394f32c971ad4cfbe11d5e51a51f85c1327c375ff23e1ae078fad7392d8249ae740de90302047c435bb500683066023100945081f7d1ff074160ba9340bfca858628fff10fa88b93dcc17927c6bc94b51d6970f99b04a74be7e7aa2e49be24fedb023100f3a6a115f08a4a52fe262f5944a79f8dd4e49fd3dcb1d3062f305e50ce1644e388c9429075875e1a5f3906e27f43eddf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100fe1d3d831bb480748e3ed98d5ca934ff394852064ad4f0eeea1b57ff54686134e0eef470ea9d75fe83e19210f596eaf2023100bf4c1ce42dd0e2d179a836b72a0dd6d8d7b7c88d02d1f19c94e280772803bb12ade1472d1ab8a7bc9bc59101c0d355030302047c435bb50067306502310082c5490985165433752078350b3ac4fc41d458eae4ea55a725c20b397f8ca6a744ed4834c993320147cc5425ead0516302303219d14b5f0772d7414b6160e7075624bc661683ec87c1dd7db51c5dd936476ebb1f3da562378e909224f454e7d8983c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023015a7ac5e09ebcd0dde8aa6d8cd778c54e52731159c2afdb5318263b871fd734783902b392ea23637026750490c3acfbc0231008269bcc2d604a4cc8b562c5fc277d14d85199a32d97b38208d71e2dbb577c139d55c95f807760f0f498f4315fba550c20302047c435bb5006830660231008a848170e497c72183747f7d428e786084ea3e2c71611340b7424b680c69a638cf3d9236f80cfb65234e0ea7344c16210231008660f09495e1a5660202b36cab49fc118f28071cff183844da0d7eec088997a1db11a055d19e3aa2b2e7dde5133e4e300302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023054768fc232388fdedba6ad904f659d4edfc9970693c20be5c1dd89dfd37e7d984dfbd0df4a3b0bd6a54fef5a189614a9023061cc740c33b0fc542024cd0861d335ebf70a62130c8517f415c47af4c6fe98b3117189b2f58e23a00f2abea8bb5195970302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301e9145817b9cb4a0b5d4bbde172f1d60df6a922f534f02f002f9e1407afac974431df7caefffc48d28b6e2b5be02e7fd02306864e386f713d1fe49c7d65c62f6c348d9dae6c9f4e8b3957e185218fa4881415f5e96cc760a49ebfe69ce5e82f6a3b50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d67916fea02569f25c54c6225080612bdfc6cebc2a73a0c9b301561cdc3ddcffd779326fe70df26c75b7ca808b82335402303d4f90878bad6513a89623cdc770a359d566254eb3e49d1815afd21b306dc0d0263b4170e60ca2aa417f4eeb4b45e4a80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230595a831d7cf7e4aaa5ac39042f56fda4e28cb3cd2453d28dc30afe091d840176c9c830bf89d12a9566f6d387a61ce1280230609bbee11000de3d426a192c114a118542130af9d7953a873b8feebf7604b53e7e83de8b1aa81f51c4b05fec844061cb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305e66e1d539598a20b8aa0f2093d5e378587cfddc60ec885a5cb82497b1fba012e03c84dea796b778b7e294fc461a82900230550fd04c00410c4d40431173dcca4d678f499bb381185ed376f39d0676df80362f2a3258806586931ae5c5d28432dda50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305d270416936578447b37e6df9aaae5cae749079726b1fea9d0ebfe029f5f50946110041cd7f4904016c0e41419b0f4ab0231009554e96325ae140580e4fe9140879e4541843ca3d824f8ccd898d29a61c92ed12b5f1a07c02e82fbcb69888c425ca04c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301bf6cc114a6bdc18963822862994fa40784799a9574e9f82d3d4b198def3c16e2b9d08996b31748d62043aca3b0db1cd0230456928c611dc6b32de9cd295220f3c6765ca87db618bebdbd1ab6ae6daa153739f86b7a61b4c97c3219edc18891a8cef0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230453a576de6d16fa707b8085a6611408b075177afd58bc94009bc427a8cea276b6bb45ec022d2a1a341f039aa65896215023100bd4629e7a24c89601ee58dc37a2a9b7fada690ec68831c9139e2d7849c872b48969dcf2741ff6877e5646cae09e945a50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230329f7a89147a91db229bbf444ad416487f7a39db29fa1502848251b41658971bbbfb8da84da76725b54985dc008b9dae023100c7fdef6b3a72c78d0f009437b703615f9591326e4f7b7cec20740dcc21ea06d14621f9eb8bc4843e7b00eeb9bd17a5d50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d923d3484186ff48ae4338a5141d23f3fcd24f180b20d1962cb3af66852aff4eb7f2893f707f5ec53e2bc9f2a6dd2c08023070eb06f5c06ae9c3a1fcd87846ed6d6cc828413912f36d0b8bd9743ab78800925f4773419f5724acd06867375c4c41d80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023000e6d9ca0f67284edc3074d719cc1465d4bbe053edc8c22c136445a54f3c9a6de3ef3a029b823e43314d927f5f587b900230239138bfa55dc45208c2346ec6e4a7eb1756ea9ad29ed9d06b3ad3d08c53f59adaba89683bba5a01e0f4e45b280dd1ea0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100aae9310e295e48e255ba764f582ad6c88e3665b39421fde4430455f9626b0a7475566f0e0542695279b90823805536a5023100b99b09d4b3d5ba99e963d78fc8ce2abf61f55e72c7b2ab7428f07703dcf43cb2449aff588ba5b8b17181a2d2156245f60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304935ce3206c7f4ecc1e16ec0c1244ebfb8f414b8c2ae5b2a3acaa79f5edc44695faa688d9d64a63bf4006c5ad21f18db023100b73f7a14d282fc70c89a0336560e16b7851fcccd5bffa1638ba77f529b9274bb526e967c6dedaf4f178966b75265ca5d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023077f03307526e1067878b14635f0c25a2f0a1f27d353c7e03870bfc02d5d8c9e698031ff69a2b08069c02b07fb74bb2b3023100cc3ae07fb8ceefffaf74271a9cb7b8292f6324f059a36fe977c7f9be101ddc87c08e2ae81e49a2dae039a4e1e20f30010302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b222419760d6c0ec63031221e140a36fdb38245640a1ce3f29f09e35b19b668d5059db8d771b998bec083112f211a2830230082d85e0620fcf26f0ad2084e29febbff61d19bd2804d985fe99c26e7793ff29b261d402879c705b168b84b8ae721cce0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310080d040ec720e27d4a041ad1d35a75b4d544d0d35367758fe30d598ef97337d2c670d964161caaed8c7c5a0cb605e051f02302f48dc45d98b2ed636691a18b610d2d19c90484a3875d8bc3f5c9767c66cc5328fa4011d51be07dcaf914021932dc3520302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302a065c7a924a80d259a1d5515f9ae4121d9af7e709b2226c67ac0e8af2d999a527cc397f09bfc529da803ece82dfbf510230589bfacae5f99ac9df04f5dde4df6a639700878e34d57aa95b8499750643b5c24ee1c74679d4c1a0eb4a4731ad2770a70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306d15aa238681f26738f02892d6e05319f93bbcf8d1c24574b02a94530df7429a6accaa863eebec23e0491f47b4716cd2023100db9f420163a3359618f4628d7c1c4a1eaa54641db8fc8adc3b85071940b6e55465391e23ae7465eeb3681d81ba33ae2f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a17d035dd0cc76319e6763dd15d37d0a5059cafff38881f6273c230a486750724d2c588bc72b7364f6e8765fb35db87c023100c60a76ccd9952d966e898bef979c3004fa81d652caabb1fb9722efc34593de80ebee7160bd356db61da2a1d48d403cdc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402300eb6c166f7b5496e619f153c2fb5cfade48ba7a970764ffb6866f1fc630e7477b7ee62d0401ed8855e63b7828657b453023006f138562f0601bf629cc8d72d70bc3bf4b65e52b68325b1d3654515ed2352db4b1e8a75fdd15486e52c7cfb907b84f00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100bd73bc18cb61cfe35ec25ccfb9f4699e1cc391e001e4e89a11d3d85ab60ee0579d6f2052ac4fb4072ad9b528e95354ae02306c328160f6f41ed8d4def5a44a0ca21e6bbee156616fdf4baf73e175b4ad7938b492167260f9f5a97fd1e6c7e1e0fcce0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230288446e8868109ec5b0cd0f4578319e74ccf2f06541b8232c9bda4e4503eab56f4d91b774ddbb500fd40e5e758d14036023100e2dffd2d4543f917a93691fc50052df2c5fb5bed116725c03b423d1435741145c5141c9c1b4aa8e5659bcb58bdcd52330302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301fc551d12dc678f88c1f68b5a773e159d4327b0d2607233f991bb02eb6c7a3a43629cc32dc8462b849e94809771a6bdc0230464bab5b1506fc1af2fad410f7fea959247a0e3f68ee61e71ee2d03217973be4436d3793a52ca575dc654428dfda1e490302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008ecf9318699a38e24f131e447eae610e7e5a4af93b040f7c3b6938c3d72374be0942ff5e792bf3ea1285438f2c6537d6023042380fb7ff8a24e7bd37dc444192a77798ea30166207da66796a77a46dbfb98f25f73e0a39be46e100aef6015c0e2f050302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301da08cd8446a36ca06f30e9906ac82ac6637d7a382cbc955f1252adda7405ba3757ccdbf8bf0951efd37f70e5be5e15e023100fc10fe2efd7420ec8ba68a8de973665ae38709f8ca0d73c3c5072f5558bbcbe2f081c27aa61fb3864efc9bfd3f5722840302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300b6a3aeb64ea2a644cec75cba754cb4fb180a917fcc91358fd77b29f1703845c24993e90c7dc1c3a91f5340199b5925402310087bc18ee08e1a829fb5f130895abcd4fab74b7e92e113fee1d7f28d6054c069c1054101e7eedc2e5c0b223edeeb23a850302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023073a7f250463fca363e827e875b6f2d27a4357a46653448276b9f2a234b1e3ed0c0dcae6951d7f6ad54528c0fa2bdb6190230779ee92a8fc29eb202a1489af35ffc523ca5320a1cb6506f76dec69a0ff23979ff42f25f54dceb1d3f99db01914be5ce0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008b0c17eeff175398c67e6f71caf73cb4cdacc826550f4086f6554d5f01d1d6dd09c75c12d02e939dd7ae6fdf3f716cba023024b645362604eba50e79d086574bf6c7cb03938084486a3b4c6e0aaa91098ddb7e01340f4c4ca80c0350f7c358b04f7c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230471d64b21645ea9098ca27a4f6cff177ed46eafea562ea3036eca31767a3779064d3a5d62a294b0b40fa32c56772364c023100c225e8e1b3b9740fa4e83ad20579329017f9b45546c8411e2226774332646e7e771cac5966a0a741c19fbc489acc2e7f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230165638fa09d02b36f71e0c371c1a4943e3d1e48c9b8dc3959dedb0ac66d72edad2ec1ca2942f6666a8b410a3f52807bc02306903b8a18d5fd9397f1f001b51ef1b5f35f611ba9c71bbd37fe4153e9ca9b76dd6f4195b3f4043c48337b0bbba60f0730302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a971a2b8178b6d82d4dc40c657847dfb37e37e2c2d2b6dc22d1c1fa5fbaf7891da8a7b3a72ece2006d0f0bede4788f2f023100e50baf1182edf59d9db7e9f2df09fc5b4d270a1b14e6033319da0728ea2ab0b00affc01addd5c46ea2a0823ddc5ff6450302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304169016331849b142777aed47ebd7b0fdd5d1ab2dc8ea567b186482838ad08b9ef092509bcac954949a568c30b7acb84023100bd3d40123b839530f055b7af7b8147b3bdca834ca11b926d5d78db62acde99b7e8c48ae59c5b118708e0f986e5af874a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a8a9316804af813a5edfeadcd39c67304bd2cb6467e75b37327924da199e2931953409a47019eb3e4c00dcecfe5c2810023100f73f10d5f2fc5333c42b166f5c413d8fc1d2f60c4deb3a9aead1128fe5e7a2b22fa8c367fd2a39ad24f95248e6e091c20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b41bd4ec82ea504ea6cb98c7deb093a6651bee5ff0a7ca6b3988ff3e6a6abbbfcc5985c5cd582e895f2aec6d73e0ac5202303fdfbbab26f156abf8162f58e8ae125bade9c5519d37efa890b8f7d6ae6d67c536182fcf6bed4e906d86792e0861ff770302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023056bd38951cfa05f82b490f1a063e0606a459eb33ee7100aabf9b897c6a575f906f9244271d77fc1ec873a42e8a2536440230201b1982dc641a732b83db3e3ee67ab124ade9ad357d1ea210f64a6436f45df8dd7776b1204835aa8dfa45421d369c890302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100808254090791fd72c5d5f4b0414f3745990857aabec6d54391ee9d6cccb2a2439fec9affaff43443400451eeeaeecff902305e26b43397b1e61f12429f474c4c6733b7254918043da091a432ab5d270102cbf29569b6582ae25ae718ba5cff8de9e50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307df9434c2bcbc6445197d4274b5925a84edcda268be5751fd8d2f1584297defb88d9d8b578d5be4b39c1939263dc174c0230359c8c80aac04e8c6f196fddb4e616b170cfd282b3bcef3298408438119509c3dd818eaa2a462c79caef5b9f8e2fe4a60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023004a9d11d349222304e9cf71418a3ec3b69337d1d7287c3645bf4098ff088108c7defba89dab486bdd5201c89da88b43f02302df44ba7fae3a816fe3d47cce9a36217c1e4b973bdd5b8c7219513bb1293747d55fea29eaca435ad5373afd671fe83a60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d6df0d1f5f4510ff5da8cb56765f1a685fc5a859d01e267b8a9cd714d502115a9c70a9370ca4a2b41f0665229d461b35023100d7a242131dd10cdfb24955b6f9ef8c44c2b6101e6bca6b7acaaebf303b2725c25932976271a7ee70060b4d950d2e7bdd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a0a3cf58343dec4d55f4042a9f0a4d008c02c9a8f7477c7293b12fc41a23b869059cef4804a6d802cef9d5c3ab20cb66023100ab02bb428ca78b534889494bcd308f0a6dc881c730e7496d0657b59a8ecc9590da50e5b6a981d7ab117e0284bebda4ad0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d9066d41d577de11a47b09a4386d50cb1f1b11fd4f17a843268a3409e0cc021b6a0bb726925189910b477296f5f3e982023100ae78677290d4186d1d4df783e43ff3000e24a718f8b6e22f0876a272360f3fe1fb48d374b9f0ed98cefab6cf2c61c2dc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306d8e4225f6367d8d9d3bbdca05140ac8b9c7498c796600fbe15f7dc7d22bd638649bfc24a99b1c68c92f3f0be03ea39d02310082de50c2225261b283af99dc37e2662b32df31f7ae1127b817db7efe636724a1bce288c734a46ef6f232235ec3f04d310302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f79606d1f0822536cce8460c8d5536869487989acfcab8506252efd170db4ee51f96f146e5b5ff4e46ec840c981a0818023100defbcd956dc9dc6f98141776f44fda2d39c6fb5703d864b2f532f7a0b3a1c333fea433b58cced065eda368865f74dc510302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009fff839b653a03c4530d9acdf450a991138daf633bd39645e560a3ad3ed3d04cfa47802a28109c5ce44b1731f7a339f1023100bff766ff88a2e2a9eea53788bd42c8964ffb960f1973445ace28f6a97a3625646cf3919a045d1a013b1bc5fc36cf30b90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100956ae9d7a915f18df66b62ad0a970ad80954115806ff1951a14ba8b990e4c48b83a49ad78a403f9d1a6068d1509a43f70231009dd227c6676bfcb64dae770a3f4d5151f25dcb6718784a45b920f647f6c3b039b9bd2434456fbbf2cd7a26005b81fd990302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100dcad7c78a7c71e0f67e20ef57d85879d1f0f13fe94390b50136c4770b112126372b939833d1b8ddc07cd07fe85ca619a023100b0a955b7f9d143c3b43031cc79b7e4309618c415314052c5d6ce9545aa8b7fe2a0f0875f53580c335d0ec74b7adca82c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cb13231b948252258229ce51f0e12adca4cee26de2a7042eed692a0880a40591e47dd8cddacba54e96edd55a9bc29167023100d1861a6ba4587bdc8c4d9f9372daae33b7c882fde5a7cf0fb31af9df8ed0634bc520bdf2739d4a91c5f30f6c372c85780302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306f9e3cc8b6d8c97c9743e95b509a162c79157215fb7db1afc13586c4eae37511facc02ab2db3c54204e15f8b9c440bb0023100ad138e3208923a1085a83f5ee6fd390f6f88dccd6c48c3f72f5d48b8e416535fc6a24460922ada221fcbbc7d8852680e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a94c414ae5fe4f0c68edee60e8f0e291c50db0bbd8681c88fbb5501f6fb640e1646b53c9bfd31f30aa273f53bf9bc53702304b07a89e14aaa60eae103a219ea2d189cbfe79224811bf5c89cb562f7288cd26b4d66ae4d6d7cc8569731286723ea86f0302047c435bb500683066023100cd6322dbf8cf99a8f513838ce84248d3f7421c9c38b3f3dba1336dca3ff67609b3b1e59ae1d0ba3d0171aade7ed8d47d023100c37851f36e5225bf47d04959ae97d2c7651e203b29a71d0b612fdbae514d3ecc20c2e82f6fbfb6b38f0d918455389c790302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ac5e0b27c8c41e5a42195171978c44e84c3babcf6e71b66278d34733265877deb0fabb6b1a530b3623f021775bb702ee023100f95c6a8b21fbe0f0c50e22b701854219b72cac91bc849777da3060f9b93368de5fb19a1674b5b27c7bcf51c6acc253830302047c435bb5006830660231009ef2b44de95a9d5d27b10c391858fc2bcec10ea3b203070b3fed441cd73f02658815ad31cc03c0fd59d309a0e825200c023100ffb7a5357f1cad51f69c8521d11770281651508e02255f1171d69f93d72abb2c8a5bacc898e955e7f9544cccbeb511720302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f829ff10aed1b2640dab6477066cbcc48574e1faec04eb7f67a3f44b2b14c3abf147b1a5b3467f599a662a589e8d9edc02310094d430e994bd8a0fe73c60095691d1cf0ae51fdc6139c66c188ea10feb7256b8d50c5e93e303ee41a09461dd8f68e38d0302047c435bb500683066023100f029773cd05772b25e5d243fb68e903c127e3ff261e9009247e6c5c08b44bc8d3be45d30b15392a0833c4a6f02534fa8023100965a2b7032e97be24e5d166a99c8817404f94147ad25177a208108f462f9acb5c55dbd8201b9409e82f91c6042bbe3ea0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305cdecd10d6922f0594a0f1953495a24c466d3a652939ded384c83d76859f2d1b8ded570629e2efdb5f3717ecbeed629402306ca7c5d7dbe4b925431f9b3c0be64426bda44a0430b0b552d1edcaf5f4c5821798106db985a99ad2801c5d7f62f960830302047c435bb5006730650230681068b28f12302db4c7c4eb7a86c33f25c40b4606d2ccc21a463f091af2d11a55a62565eec789bb1301d2a38e4c9acb023100ee86bd550bc738b480f3215883fa95600c36b5e16867f4c60784909caba008ff0e18eacc24138ce2511dd3cecd2929150302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100bb23ad1eeb7cf5b5ab455d2e3bd10c14f0c359c4ece320fdd3a03a1deb0196adea16b9fd8f5b335793586c6131869d1a023100e2c1c1cdeb2f0b4657491d1a20a977c9bb21b095ff02fe57f69852d3e6ee298e614fb88179ab1e05c63254366e05d7410302047c435bb50066306402305d1c4679a07501775c4eaa6e364fbcb873ebbd5bcd940e73c309aead7ab66965837b3e8ddf2b93573109179957480b0a023012b977edc6e6cccdc69c5d6ff23eb7d2abd170187820e26396c87928c52f3c5c244d10c227c081c2ad14b3b8883f9d6b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008baecebda99c2ae1c0a42e4588acb20415982fbecf11092d9e754dbd404efec908acc81e15fd609b9358beddb8029a580231008b4f439fb6a8d3a8c447c831a5a69985258402ba6a57062c2faf13a6314823489500840eec101f5b55f78f99bbfa46fa0302047c435bb5006730650230585e49e861d18c1d320f498b6f44087e23f46b05c7599bf356c7ebf729cbe1783792b2430cf11a1bbc9d26ac0fc67668023100e6d7cd18a96cfa33efdec812dddd89fd69ab614db25991f79739204b4134a90b493cec8356a52707668e5edf4a38e9020302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302c134a169da8a19ec1606e2e4c8ae904a801d7dc6e1b9166ac5218ecface532ec5b34f76795cfbbce93d72dd889558ac023100fc38f3ca5468d93fd196fc1c72363af41e5b65b041916a07e1a57fe1e24d289e7043a61a5cad5f2a8f2b6a2acaaa624d0302047c435bb500673065023040ffd56bd26c365223a7eef5c1a4e0793616d088e012e8a13cb7c1a9aa60e8f3006bc72707cb0d21790690cb5f6599b4023100f4e90b69df4af718fe3f2c74291b8788b352afa0347dba21afcc53cf49a7ba0a5ac0440d530bf9ea2de503147b86b2480302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a5d0f87b187ab01f602c08dc381aaebe18561174b2706f14f9b76a708c8dc02da006fb316a03293eae0112c5b2fa8734023100acc32e1727791867d29f12d9e63edde5e83ffea6f525272bba2748d621e9fadedbe56117f1ccdda2ec1db685b36c2a5b0302047c435bb50067306502306e73fdce272dc72ea0bfa768306da30df5c053789d59e3c41d0594c04c42094e34ac164c9b11cb8fe3ee2dbd84c12c81023100e1e06907752a4ac19c1ed0dd90ea2ab8cc0d8b03b1b40c382394563dd052e428473cc080793c2fecbdf3f2906b777e720302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305e717b1a877876e9f03bc529f24548b12ff5a4df3dcf88a70d263e1c60d5bff4b33c94255c555f92c209972d86f45860023100d57adecea1948645f882b53dc9e3651f1288f0879d629b674cbad391a83f7286428e8551361383bff4867d1e485c30770302047c435bb5006630640230447bf88d0e4d181e1b805a17f43d0bc8bfb8c1a04f953cd1e2f3b607acd50660a0090b71c09dbf727e050bad69c943d302303dd4c5a2cc1e83b86c369018a3182cc3d96089a980f12c02fe1c8f1cdab3d1b9f14eadc3ff679ad6aafb0b47d52beaa30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303d8d7bf8d2d8b587c35b6b3ec491ac35511e8c0397b0e1a945c98cab62692744ff9e79e4525515e52e4e0234e939eecc0231009d6b29a5f035a8c9230475ed5c531f36d82f66810f422cac15e06af8f77befc288487e74319cbc795b91a576677bee7a0302047c435bb500673065023100e07a5a12acf964cc79063c1dfdca51482a7099713d7c195491d3b91629b0e235b6ff739000bf2c20fa6a39db8988179102303261cbf3e0edec328e6e70ae84c413e161de592c1626b70c53726a03d49f45c0b8a0f01860012c49d8817d66379c721c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304eefb380acc83bcea8b08dc580c35ba518a86595e25cd049369df4c5ca1d14b6cbb62102601b78b6c9c73a2c6ed5ff6102304b5bd55fc5e5a01e3af803780c98f8bee3fc1f73e7ddc600f3569e2f1873aaaff0889f29b2071130154f7efe279a34ce0302047c435bb500683066023100a4d4c835c0b723605840320f7116889b447e079a39b15f828a43abf50afc7d4312cf38679501c41a433b85f6569f5eb60231009945fa21863f5179bb507d39feb62ab0c083a8682c32ae015fac1f3d4f7d332f92064956a4cf5ebbfc2d20d2ecdb61250302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023006abb7e9949c8c894e05965735f4762f2231d16c4d67c8797361dda2cd7cab5f247810e56ceb9176e46ee41a78895913023100f410988389f2ec357e31a84edf3f11705e0d0f821911b3bdac72dd51ba17d7ac1ce2056078aed789bc73f10c6ddd24f50302047c435bb5006730650231008fe90f9b3faf0218226ad6bdbc5962b4de066518a54072e1c22a11bbd3717ef09aecc69f880702172c3cbb2551d2e393023018b861e207349e70d7cd9ae98c39e25047b1b6ab0a2125816e134b7c074629f8efec24aea8938fd6dd56bed353e297ca0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e2f3b181b6fb705e3c03cc63a44106d6dd4899ed7033dbda02de4e9ea8292f41b29888d119e8e3e98060788641bb8dbc02301f3ec58094ab3a251f8c986c6e94620b9f173a2bf6462c5ebcc88af9fdc10a4e3e0f39a6c5afe51a3ebae53acb9d800c0302047c435bb500673065023100c169b903e4033174276d2b4d9648f708d1a41509c4cde672ffdda5ea75a03cde982ea52713c096557ba02e67fc6be6f30230331e6efe9cc302ac9ca8aa26d7da9b8f0620638a872df72f47dc4fcfb5278765aa8b3ef4fbd98888146676ccc5483bae0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305e465da37d113d71277368ff324de7e1a49da5579be5a0db2780d19b18e130434a958edcee6feb145f97aee065d755c30231008e01eaf0c4d2da332da237feee9729e09d5af644c101b6cb066577e9f1ceaef9b1f1cbc8b6a2ef4e0231ad3dd1805f550302047c435bb50066306402301644bc12f011daf65910d998d75c2cd702d852d4155204500db4c9e9c446ad19d16e5b9aeea29e8ff7773caa970c7da802307bf5829288511c6d664c08bd370f566766e12c72e70007c5c4d1fd61fc6c54e8396273848d551d90af8d434b7c5977d00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304ddafe7dafb8002b3f3cccb2cfede951bc1b7edc192c9d7176268d1be6190bb68229b881fdd70b9b137707bf3d169ce102306104072d2cba689b97cc3b61110257e44692a67b048e213b475c1a1d4f1309cb288aa1a1c0dd5d7a38b4a18d688d91990302047c435bb50067306502302dafee48f3b2dd80b8615468fd6d5014ac78ecbf6de19e824b035d07c034e6893772e74d2442bfa2bc89569c77a039e50231008839190b057d735b61da33565bc578bdf210365e091773a45ebd9d184bd7a9ab885b2cb59c537f61385d3b5b9bb646080302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100aaf161d3c78f7bf94954d8f73d01d4a02705334972c5189c47a5cd4de20a47675354d2852d8aa883317dd8bcb60b80e1023100c678887d62d98b18eb173f62950c123ef0979685a7b1383c4fdd9828eca17cdf6f1073a6005f25cdefa114021b10b9ea0302047c435bb500673065023100fdfaa2423bd765cf6311269ec3632bd232065cf6013538222fa95f78c53a19bfe65c9e0cdeddbcec1a51838dbe7ccc8c0230789ca07545312c3a5feaee54037b569ede9a0bdf7692948c37d776f9152ce6988d679bfb03c6cf8f231fe151ca40f9dd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a414b88ed625e068d8b19bacf0772ec9b7cc4e87965369467ab2772733e6e308d4b30727d9795861c4326cdbca47c9a00231008819a16a5ed7d4b35884b07f6ee514d6637b448abba1d4d393de762cb4c70a8523dec9ddc7a94b4de12eacbf136c374e0302047c435bb500673065023038d7849226b765d71cc0660baba20d6fc88e953f2664fbe9a7f33d1f6d5ef8cfc25d27c2ffe58ba835e1ff26bb8759c8023100a095ad7b0171733112e4ad8905d173c58239b471e2f0dec9aa9af93ce871686d9989e6b5b638673d0c38c402235d15350302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cafe0b27d2e476b2c050231c4b2373bf4bf2b233fe01fcab6d92719dd9bdc7f3c621d1d4eaa4562bdfb0fed5208f8b7e023100ffe04f637afa95832fc0cd5fa21b19a580d4e4fc892450b8a441d120e69cc5c8b2880495c1807f5e305080653beb2e430302047c435bb5006730650230446cf1d23d49e1dcabe448ccf7542fa755b466dbae24b7b7bce0a161d9f1edf1cff99f9447207ca4fd16053bfb684605023100d9467e88206477162b51cb8d068edcf6443d81c2a69c47d3bb6844f9018c18883bd2a5bf6ca5c81b58e3fafd5cc12fc70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402300fae7bc37786ae6dba08e5548359657fee4426403f0cf3f0d41e136fe1db6d2898b27f2f0ec5ce0d3dea4b3b9830a77502307bfc9e030fd4c2a6061422da0e34fb5b8225219f1a4785e242a74df43573cd9b842d20b7358ca0671cdff23e70e63d3c0302047c435bb500673065023052aa34bd5770af7604e9010e60d27f87e98fee44b4ca1009d1d233051c0bda2221bed0890989824c3d7938d44dd652790231009613646389c1d2569b2e56ae80964db1b26631b043421ec0074402c9a6bd8073242e5616acefdfaecd9ca0da57fec0700302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100fb224a974460d45b0ce064f1f607313581f9db028f7b9c2943f315cf46d208f198d2dddb51f027deb255063db8632c0e023100d40c68b38db96e6f68524ff8813a83d8cc051b6b44c70a0f4bad1e11429a40d490e56a942dda53435bcad05449b084c50302047c435bb500673065023100cae85fa50264f05863e8419629171bd5b7af647e4d6d72cccd7facc1cf2ee46f32dd200cc23f5e3f9cbe1da0ecb7833902305f13bc09c22feb71396ceb9384b96f376699017a57549d151e6a465176b670557734dee677cfea78458b2e8f1460d4670302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023014d64b300d15cd271d281d37db9b0e3280ce57f339062c64c299a01246d06cd5cad9bc77df2a851568c1323f901ca6a1023100b762f376631f60d568e0ba01c28c7bfb156aaa8208fb41dbd229bbc28c933ae8958ae5aa101ee6d90ec7f303cf7b5af80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310095303285d69d13056e02a63e4bd3e494ff79577a2369af7f4d77f8fa2dcdcff6725cc12016cad6dd46d60f0fdf571f6a023042f72a971e6199ee82d5ec047f82ac27e10a099a2beef5b178127f97f94342f1bbc9f1eb0a901b16699fac21f21910050302047c435bb500673065023100920478a8dbdc2e614043cf44dc34e4b51579ee047bf9d2cfc0900702155e80bd9c228c33f94d1f0a4df77ae6d7ad83480230739e26f8562e4217fae14be9a048a64529f8ff03a125fdaf53a6982eff361054960c826bff01f24b3171fcc44e03ba470302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008147e66deb90c69f43ba6ec2d43dec29f520ebc7765c6fded5d8a62c26f83aec188ec12da1e2980f9b81cc88ffa2dc08023033b3d5192c5b41f87c76b49314e54b12ab6d3124f773a364ba0870efd47a0be3dca7d2b65bd03ae9d12cf91b611edfde0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301430877f2d6f7f2468e619749588e3fcd62672491713627fde4492fd3c36fd82eb41a82b66e3d5bc8533d8df6370c3ed02304f1d773ab91ecc15a071b88b456ee395012228cacc9ec58a2d5b8221ca02d028663c4c837f076c6e77e2a2c3870574d10302047c435bb5006630640230528107bbd5641cb97cff2df5dab485c830db86819cedbfcfe07e742741da30a756f458f16f91a0ca1348d35c6a2a63ae0230097f734b6f18751013bb4e2e0d8b37e374f5dc937e59c0fd30673b2f1483578c42a787602c3ba40e1d0cbb265fc5fa060302047c435bb50068306602310095e0135483873f4021c07d29ca64fa5b5c79c75cfcb0290151f23b1f0341b798fb6c1015d6f4501624c3ad51e4a5592a023100c3131b03344c9cf2ec96dde1a18a2915eba3bb8589a9674a1f9e235e788f55809f7bc77f9c0fdb1fd92b7b3c0e0039f70302047c435bb500673065023100d43d48a778afead1adb44c48cd3e355efe193c1b5903604bda6e2d00597d3d488fe4682aa903eb891b68e95b619f2ec1023004d0ddf49ec3dffcc72eb4c9e620ef0eb487c0cda8dfcce1bd8e56075cd97fc23c52ccbe5adc6ad6bc20ee6f637577000302047c435bb500673065023100833a0059a36ff02683e1061d15a3bb2ba9374f72c37ea3b7a2a029f39b56471256a1585df97c44fd4806b4280fa5647202302048bcc44c5f2ba589cee0ff375a276b64123aae025ff88f769d299362fd200c6f5d537d8cd4bed76859c9838322de3b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e6a664929ac78af34b0cd4a82ecf122fa54a0f8a7aaad5bd11525c653af2b14d909354f356413af2d527b498ffc6eb9e023100a2b584fdf1d49d01125ff202b1c8502ef7341a8a38a2b3c3462a6b89379046471f1b260aa7b496bbf87cdd62e9509fc20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ff6dae3df2c4c0badfa2ba9360f1cebec5907753f99d4a816795ae2069f9a6880bd9442c2224729bdf312821526d9a320231008de57cdc6c8f56861be40574660a29f9bb7399057a95df09be5c665bbef0dd34e57b0494dd80d361b198e257dbf132f80302047c435bb500673065023032bf5d8912dd62b6be3830bab53c35b01feafe4a4d779a2bf3cb58293a85450b3adc02645276e3a5c5cc498ac0a1fdb80231009ca7ff0fa485e4e97aeb65a3f20975382be553d432f869c29b5eebc87700d80a0c49b7ea10ab5cb10d857fce523d1acd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b07dda2ddf6382b7db9af72bc960ba38be8633d8d5336dcdae73ecee9df699b9ab95fbdf9306ad19653850a663fd11390230156009df2c16b9effd59eda575280e3c2824f3a15eb795fbcbaf96fadd367c7c8ee0b9e98ac2b23f5782ccb5b9aab4c70302047c435bb500673065023100d6542c46816413bdd10bd94dcaad239dcd3cac32ccbaa534feadd4bb549a26673570ab5973b855ac3df1b77014e67394023035c56f6952246e9d0e83e6691aa5200fdf101252be0686b27dac04796476cf2803c617d9e6a1b8bd35b2c9280fd798c60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c8e629e768600e74ce60be19d747f6eaf763df9ca993b37751ef31c0a0792f0c647fa7c5dc339e1249a65e5e116cb66d0231008054c8d081dc33d93f4ef644fed21e48d3bc37e24cd646c07d0a6ab1e09c03209f166c195a8305388f768ff9baf09b840302047c435bb500683066023100bf7c7f4290e37e95669537d86c9d238cc7843724e3b00377305ccdcfb392cc90fce874ba3c0513a5f2af21085f57be19023100d8c61f76a38f2bb1b56fbe782b2afbc38990fde9baa273f7416e72cb7c052ed28486002d7e2c0cf258b55bdfd2a4aa630302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304fc3c6dfc5602e10e16dc065d21a52df368acce51d8034a4eba118ca926a425b97434c9e5f91f868965a545821e3bfc7023100b9dea39c962e9f64ac3d941bb93553c2938c8683d7182cdc9daa1cfb3e40fbfec224c1a865bcb9d5dd3d7b57fece615c0302047c435bb500673065023100c6f0646f26f79e0500c2d7de675f42b936c31db0692ebcd2619ca35529abe3c40a93880ccc33997dc0412aebffe9c0d70230126d14e480b6bc801223f0c8cfc820399784585f5080a1d2627d4b7c6cc0c26319d9eca2324765e1a33eaeffafe0e3660302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d3a4d97b3c3a5f4ba4b252bde20b67970a23bc698d89c0b9c624d8ec852fe7c08081cf90b49a01a30596076529fe6eff02305947bc74b749c9f6a83695767e0fce65692668a57ac5a19741b38732877c5a3bb6825bc34f9998085a9ca4b41c1a3ec60302047c435bb50067306502306d4089abdb369b815080b59466e177da5954e3a09e6d988c387731a5bf3dba123e96f4311432e47f5bc0da0718cf837802310096493ed7fbfa9303abc86839cf2046d21d834e45b117d4a92f772bb0cd844e84f672b97b61e4463ab940e77b3c672d9c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e39c1e32e769b1bb87cc3a1481fe892c37642932ed14c5c1c1cf952fe053aabf8110ec7c01bd79d07f11bec09bf5e96b023100e068bb5c54ab92af3b7b08d3224450100719927d19676774fb0803a8d88e839804f62e596a4e27cb3d79e0393bcaa2f30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c795d900bf4e13b20bb8a6957f8217637762158c25e7be1f3c84d22a785538bc9ef8548f4dab6972c01ff6caff8c113b02303a6d6bb05b58d986f112a671b2a5a59548eb5a107234546c817c40c1aa436b39351d8aaa78c751ad1cea84324995d50e0302047c435bb50067306502302e45b303a23168ebe7370542a52b600f11d9501a63de3251acfc029fe32b8d4be8954ecde02550f02860b5a7322084b6023100944337f21ac1a86e60ee3ac5e78480cb36684efb4fe22c664c040539cd800a73a209ff52bc05c69a0227f2f234affb2f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008c2046429fc8586b1199f3d8ffe694a1f112367c07330c1bb44d4ddebc170bdccd75cf8a82a77cdf19fb725d4996b49702302c560409dd03266d140389b4f832887d3cdf0fe4f6ac88f5c3afef2dfcd6c1839c5d374f1a869326f507d61822697bd90302047c435bb500683066023100ffcf13aad71d17e7472b9082077708a85ee5dcfb512aeac611f6c0c4490e27c3a4474a134628eab738a314bf0679493e023100b5400551f4269f6006e82c8510633762f5bf5020b8b545fed6ed1c6a805bf88db9cd72f76a3ad79d621b883dafc9f2890302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230188dd7b063e8db5dbccc71d68dd792130f9fd4464f2af21015e290493220cb7fa5452e5a5b8d82b89b47658fdde58f97023034a0223004d06cb728733482761c1f18f50cf580e5c541d4aa05aa5e8feacbbf79aee645ce63dc62551ac36523522eb40302047c435bb5006630640230401382715549eafedc0d591e1413e752380ae7c6f51217a607145c8c69a1a8a5330b9c862b5dd88fe65adca8cbcc2c65023024d69b223663b68e2483c631096ad705a3c40601480359b0f2d2985c6a53d1e30039d34dce6a54957885c3bd617013090302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f9c9419d2d7b0cf3073c39f6f1be2f825d782e6003f5b49ea96473fe21431c5748e58c98009bad75da62871ba11ce847023028f74964ec4ff7f826ca533148d36569c9e842e5e6335a196b3013832ccbd6ced5ba6e93d65bdc6759784e3cf0b2e46f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310095c0b035b00f849113a9789afd4658fd5fa09bebf26911e55fd530c291924916a59a285ab47bb4d10714a098631966320231009efcafcebb89e87fa0a3d0633cb5b0d1f7a2924de6d13d93788f2872914badecd5022e3a7035c4bae386170f606936a80302047c435bb5006830660231008980c17be49c2ce3a1bbf3353e00179a28e43404dde2217d18107226b3d58378f42bfd2e1845a93245d68ae6783d339c023100b14388c20e10e30575660d40d7c864e6d2a8838a36a0d74fb929fb0841a6ce51c3374ed3190788dc330b5045bcc459070302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304b0a15834afdec605a343110523f29eff791a8bf656d4cbb3ca67125560dfb9da50d67dffc63effa290dfac46ff8002602300e130b71fd4c530c44c71980432b6d8b7113d366ff2c397bf8c26a6a69580d2df34b66c558417df2e3d3f5745e1068720302047c435bb5006730650231009970563a29f3f637c3a1a7df31507f0cbf0619b580ed05eb62231073d1ec1c94c2a2cdfd03df2a0d095c92bea3a7a800023036e2c04d27367048d63f9f7b6cb544fd9032adf31149a08dd4ee66d31405a03652be958c749c133e1fe5114c225b37660302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d3cf69c70c348ac5f2f1e37cdfb7b3577dfa5ef7f51120c84b5b793caa189700ea91a240741486cce88e78abc9631f6a0231009a61cfeee918c2358f5a65bb75c98adec72cf7f7d7d5e4fb5da087ff06eb26793ce72c25859c081f783f9fd41426ba030302047c435bb50066306402307fc3c0b2420eebd0e68b3919f4daf5211ceaed5b7bce03ac13cad9b882f4574d0a6a5b3ede37db32af95edf0e3afc5e502305566c4d7895c1b4be4e2f25409bbcac14ded23483511139509ca0d9ffc39492fe7507d6828e6703a0d8b1d71eb35889c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f4fc927e112fc4b3a21a4c6ad4ed32c31ab8841671f794395a327f590d1fa1c76175d49e969fb53a744a26b9ca6db72a023100824cff50ca9e3372b25854b34e28a447b8eb5e9b0519ea593f7c6d67f16c2e9b2dacba207f0ac332b368129a9981fbb60302047c435bb500683066023100fd5b147934052e1569686e9509715426b5b07c7898e75cebfcb95b94ad9d11b7c13d1dd78b23bd635f82e7389433c2f402310086c2bad17319becffd2bdcc00a4a4fca566fb3b2107256bdc42d309f14c10d6d53fe135eef04150cd5752c6f7de321710302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230641cbddb838865b409314f63ce058812fce789897e4b6e9fa6220450eace35b5e11812ba7f722c1e1463f0728eb7d02802306d6e0d6b975b7dc7f2bd1272ba6ccd63bb68f1f6825faf7be9fe227308edd86ca65f732600d5b7136f346c1158921fbf0302047c435bb50066306402307d1d85d21f05ae0b1592b165039d606c09cf13f642faa5de490aeb2bbfba5a16926cbd3c75288a9b5bb39780b4d3fed702304af1029d0f57ad2e3ff59d549e1fe662d6bd5ea1b6f211b8a61e3366093ff6fc5f8eb173d1771f6bc6be2330a8d45b980302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023009d176580f7443222487f10950936cf2eb7e6a48520389db18bcdc8ce2d3a7ab17dd80c9829a1dad483bdd2f2c70744e023100d7c30cef48acc214db6136c38c629a209dd4a88eac2d214c59de55e4c741c05182b84f9d464ccee1e9b369841391b19e0302047c435bb500673065023100f65ea215d97c79ab8a67c14c40e32067d15d858418b7a86301820d3481465bcff9b4557f56f542385fcf9fbb9ed8b26b023026fcf75a5cf8f3d5287eae971d0e461404d1018b05da3390bb9e6c7a875860da1559a879e139d3e51adf55c089667e9f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f69c71a221c281fb794b614a1fac4e5d86afa51d2ba5fdbca49780a0b1a01d7e8a4101ed8e036fd4fd5bdaed1c3044b80230075a703d86b3273d9bbf426b706541468dac267ef81b2538af6b77d3452b0a0c7b4e8af434dbec526ed6de1601af08930302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302e31fd0e8607036dd1624d8e4e2896d73d44dee73d15d1aec98cf29c59855b48115c3f219c81e67ff4f040b939cb046102303a9a72bd6a1dff8cd4ea552a0ef8cc3284970807d1d754bc57e5bb8c948c28ecba8a1377f44edb94e991d6d0d0ea62fc0302047c435bb500673065023041226c6f52b7e31f50a8cd96fe82771c413a70588720803f46dd1737d02d278e75680059e73c396db8411a5ad8530fa8023100d4f54c0d5fbb5d1f4588fd4cfaa96a9fe2fe4c8e3a22b06e8ca91d4051ece6cef690b6d546316d068267129f117073e00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303b0d675b1084dba7d912f05f1e3f2b32fb85e46d2e0d8079ea73fec979ea468b22627b3dde630280251280dde21fdcfd0231008cab5ce9a31d183f9b822364634d830d5985ee0635f1299d05a6796122c951e6ac89b583ede378a98e89710a3c8b99b80302047c435bb500663064023039d0390180d1173140cc5c8ac646ff012fdc42f84e3185e03bff1436b5330312e5946a78643868386de7fe532e3fbcf902305a5d783e9bbfc17236f033e5f9ae851f364fee8649f318816f79d140671861693840ec71de7e642f687346d839dce3b00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303a6e7f8c7801475c0af65b4007c6213a8ce4df631d5a2ac2158fcd1c231edcd82a97693f1c922e0adb1b2d6d9c5d68c00230488474b1110bab7565155d5bac4ae88df46e170f8467bbdbaa00725d7367956a05b36415c0bf36455325b619e7eeac9d0302047c435bb50067306502306c3fd046580d57ade7ada27f0a6b0b1bf9302f2a57e5ec13b03a117dbd441967be485b8a07b9dffde304b487cbcf2f08023100e0e8e6ba916b3623db8886e27ca40f965711cd99775007611894971bc8d3d730a2ffcdd737437c9e9a1fc46ba731bdb80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d7d996c58fafc80fcf01fedc8f338aacfbf7569adc0693cf28c4793e98606b697fcf601f0f987bcf5ff313b4ce2ad747023004915e3f2c3cedcfd4b251eb26a5fadc4c7abde9f40d341f0b6f5e5f2bd59c0561d0c791a0267ef68183497bd31796e10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023003906a5fe1eadaa7fa362451d7d73021834cab40217aa8c933afc7791ab4530bbad550fe570f0f6ce725eefdb181364102304a1e43b6b406b947d127f9f3f044dcb901bcf00168cf120cadd6c6e3e1e5cd7d78fb88ecf665e0cc83e08ba52abe5ca60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023014c771a4a0d0669d900cdc7afb997852ea9baf237e7232ec81c2328e33f0cfeaab064fe08077a98ac46624ec1b27bb510231008ad55f38d291ced83648dee1376bf7052abc192e9ba8ebe18dfbafa9ede5765ff03c899d6ccd49f390261bea6fcc9da60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306439971c3b5395a602a7ca81acd13b726253ea19a9dd74e69d0b213b6c158eec866e5c944060896c3810ec0c307418fd0230144866278dd1223d3c92a0eabc2bdc56f4258927e214dd65fca1a1cde8a9697f316b50d6d05a9a7f341684e6f09675480302047c435bb5006630640230783c8d2d04e6e41f63ac3f160ff5d8a2e9dd02568a6e2ccfa4f42f7e6901589b63760997eb4e450a10fb3aab36db7a620230729139227376ce7017bc9e4cae80e9a76eb18ba171d0ee99de190cb713eba68e56060106081558f7d41313c3541cdb2f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303b2d292d2625fe632a54474bee3d3834c98fa443deefed06722a94b73805c7131bc29dc06c58fe1a0e61c59f315f438c02300c1121f126f6ab1d013144dc45772fabd882869db435f73cd123214e28391a02c441584bda236db92f4b36ea14baf4050302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023047080b12c0749296e5f07fa73d69a7c2ea73ae2d18326a8bf8fc9fdd3728fc8fa187e9a13f7027a104bdc1a32a30ce3c023100ff7c7999ad447767c2d69defe054abf6386f994d81a7691f5abc563ea2f689bbda3a06c2f8f36ee0ec31d6646cd2874a0302047c435bb500663064023011b7e4bb8d81d54c4ae302e379eff0f1950b43bac0d7c9d70342c15e1c04cf359a2839ec651c83a5a4c02f4dff9620da023059186630a7376ae31dda7dc2197c90d2e1645fb2c54171552014c02dabca7655d5d74f0ac172077e458dedbc736c9aba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d626914edd5e115be81901d626ee569ad5e785c7a71f284623ed9aeacd0a6351f82d55776130e44f7ac461c5060f69ba02302688b8877ac883ae325331b2428a2e181fe13c0e5a6c1695c7c1ccbb24e62ae60fd034af874ac58601d63266719228db0302047c435bb50067306502310095a3735351d1ac4517a8b53f12df64ac59bb4fa4f48ac71eb061f0ccfe0de4dcc54b38cd79c3f7b58ce4821b6f3164e702306de552023148fc31f6221af5fd042c287940d028bec7ec753794c0b4917043fb596926599295fda70291ea923366379d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305db0ebea71b129f3096d3194498067544a3d519423a90a87e88728c2ea00530192a59d654d23c557563d87fdc356705702310088d3ab77e87068dc6ff1eb59a6a4c386769aad003d68ec6dafb2ba64c2e4698b5eb75b24ddae2b1952b1b2ffdba127690302047c435bb5006630640230218f30835ee5d077decbabc61bdb1f9f6f290bda0a1e711333942b6e3937f68902b6053cbad467d76254e221d15271f802304bb8528665e56b49d12cd5a0bdf4a7ce692946027aa64c8e400cf8a145d6e1d8a89990af88340371ba1535fec7f01bc60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230386eb39dd7f1574c69872e5029f244d4de4c331cd769d2c64605defa14140c260f332dff7dfa2caba998c048def8d61f02300ec07efd9abdeff3dea981439e2dbd9bc05a39ab1aac204bafa41796034ea0662488ce0711b7e0a276cdb947e820522b0302047c435bb50066306402304b12983c39df1058ff8f2236546c51858c6bced70528b6798b5277d020938f1e2df3867f3615e873ad19dd6708c07b74023068e4ab21e1b9fb11723b583df2e11856a24c6a775bbc13c18b0646e8ca0a5133dc27d282f07ddc80c31d27e6698296240302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c39407304209ee637e484c4ba3b9edb588d5861f7fd9b92e463ff6e63a113541d764fe8a126457fe0061d5b27933439f02305d96d7269c5a9439747bfa1556ee578213010d6d6e5cf2bde0d82efacae6941f5c1af29d9b65205fd345c1924e2339950302047c435bb500683066023100d5402a1196b248037339f92cf4a931a340c27d14bbd1304e5dd7a37cdcbaef9f611631133d74b1fd214d618403df530f023100f5e11dfd243a4e6c9a3827463affb21f8f9b29923c97f8dd3d4f3587cea404083ac77c325d8d0698f4c8e66dcfabd7de0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009a705e264ada66d4c8014f55f6106b20c1c57ac6c28741fb08a55df4ef791f9c4cde5c977eab1a7be49171526116d846023100dca9793b2b24d531c128f2c448554a25d88303d4d252dde32fc1305a84f55d28fb5566da29b747e5fde2d67a51b303ad0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023016120bb8f71a0f1a8c302f89f7ef4fdcbfe23f5f0564596d8d8ce23c1c3bbd4996fe54cebd79cfeb4b457a2b08ddf0d6023100e01ab2decc1fd662c046996f73af3f7648d2641e9c4a285e452e8253ccd886b081ce78076c56d51478815254a9b548710302047c435bb5006630640230770971f6b6fc453712ddd944cb1ee9589a525ee576caf855b1200a7d0b8550108821a8f584c5e551e60ece0bb3fd9986023009bf77592044eef977d67c5cea2d66882011e7efc9444278e9b3fbf1b7fbdb4c2d3a1bed32653fc7aff961be83fa1f4c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023033922ed4690db7c8026c3e481282eb9a593d5d433b3634371454670e19f63b70cde9d78dd0cc062e15f2e2fe506db0e9023100bf58073f794c1471d612301e59f9fc3b7d187acb5e1c9c1a32b0e7c291ce197c49aac38bfbb31fd3339d11912e35211c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305b80a4ad4cf8fbfef6d5db560401b62bb90e6ca47bf4de4d380f295f036db33f972f3528b286d229d68d26a4b84ec0f10230031ac163c5769ee0a7b767c2e3db01bf04fccdf018d30ea4d3aceefdc07734b091249d01fcbbe898eed25f08ddb298cb0302047c435bb50067306502301fc7850788a9495ec7db078d52c2d989cfc7eb71a93d8fc7edbee6aa3893c46d4243814da77a942504ce068351f3245e023100910f9209f9be8a0fb416a76dc9135307a6cba236401fc74a4677aa45ee7e2fce54d7f834c0cda5f9e7cc933e2258a4b40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100945cd9bd18557098e77bb0e7f7d3e9cfa3f38dc4d60553ac0e6d5b130c06922965c8ad3bd9cc9ade13d0f52fb81864cf023100c142c52a7b6285e517fc3a88d7e7b845bc66308c56ff5aca32c62143bc4abd3c693ea55836c196a5f99a0f2866f45e9e0302047c435bb500683066023100e33aeb9c45731631746a1eae8b0576cfdb9898ba056fd62fb92b1ca6350ae84a1848502548beb7fc8a697d29b1cdc811023100db3bbb771e6d1ea34d6911c158713bca66bc313dac7d2d3f2f01ea5b51bba951e218c12bca33e30d60698892ad4115aa0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230338163d623e2d8af5ceaf2f135d31a3e75e907ac0cf79e8e0f3d5a643c81a0c2bb57d74fb7634c26cd1f4743ee54de08023100b061b6f5e1f593105a3dd7428813ed0e128cbd690b57ad92b14966884ffdff019e0b2ece5e5f9efce495edadd80bc6480302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023060737a4a77ea13f0dc7f688317d13e32e7a7a21d4139e01f61007ae36301e983bf4b179bb4a3bfbeaf9f9280961d29fb023100ceee3d690d5709d2bcf7d8fc9ea9447e5bdddf0cd84b6a44f222a3ffe7b37439c5be6ac85b6334620e42a8477faed2d20302047c435bb500683066023100a8672e39b3d5cd9bd0ae397a4c2e0c6fadb9863927da067ff1fd810f88b3ac7053ea17ae41e7407e6b754c84d0f2278b0231008d4fd78fc4b403c6ba3ddefa485cffd847c0258ae840e8322120d5606cf753920f09988bb2266baf622de729887b72700302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023079a84914e1ec495b72f13e7f1eba26b2c9f7e360a243bf8481aaf50e5dd9d24770fea5e391babe4c8e2d9cd509b9af9f02303ab0c83ebe63e62f4cb31bac8faf90b9796d0cef01ac4628cc18f5ce4fdaacc12409acd2aa015d1e02ff3af8238103870302047c435bb50066306402303bd44b70f37618bccb9ba689128a0b4684799ffd9da82c204cbb6289b9aeff3847f899e4ad146c7afe01191a6e13041a02307f70fec4c7ea069045053dbfc597bdd57a776bf130949c81e2a3f593481d89a541d91017a7260c8b4bcb51a818f2183f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d70f076fe2b6dbf58cc48a012504fe415f0953517a8362f22a1c33d111609b806685500af6068faebdf135a7230288a5023100befa390147572b56d1c525dbb27a12113e94d398f0737c91b1477d6a257860bf07a9fa1a0755457d6bf45f205ab0e9fa0302047c435bb50068306602310096f45a03fbcde0850be89b0ba7757a97417b3502408c7fd01ad4e9de5eb6b8ca77cb5e805ec2c60ee99e459839bca5cb0231009fd41f34d215c02166e44aaae8bcd1d20dfdce601e433ede457f370499940f372614e2575b304a38a509127c108bd04a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023010d2876a0c64d67021c9973b00233d09d8dc85022d4141954e5e7d82dbdaced9e13a5bccf7b0849850b4755cb1753dc0023100d1faed1574988e835b29fb06c253894d0ec32aafd1d737a85a36e0627b6f5aacb5a6ae5a233f3a3a8465f70f2a846c110302047c435bb50066306402303cd0aecaaad77a90f86f5334e47ffc8e8bec6c8400d0c1f6a8593825902770dfebf727d33af5624260580b4cd0eaf786023046bee634456fbecf986ca3cf3db3543a93a4b317b13601c67567abcab7a593d3f24ce340adb0694d553689e4ca4adcc50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304ac6283a9458d9692910d185b501f396698b1c13242daf3fde96dc97340da025835bfc3432681e632e3af4d1573629e20231009f9acd8b3980c9abea46f51295f44939c949b2f8a4e1c03856158d138c53b11820e09713e9f28073f91f91286522b5840302047c435bb50067306502305e56ed25dde36d08d9d7521cb8e5b4b0b8ae84a8b387b786d13ba0238e7a31c6d90b16022a066e4643a15f67578c5b7a023100a53aa6beae0d06a77cfc722ccaf7216b27cceda3c03de21464d6efee6e2deae4072ae3f97c4e9d25efa422798a2b8a620302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c2a7ef04847de4ca49b4fb541f7d17855fa6def9d3a9879805cb8cbf8c60b262659b62e4c358aa7c2742b59a3df2223f0231008ed5a9f3b45d314d64343bed8550d06532e4135f4eb24440636f6574d61aa80a689a1ff15d2568a929c9c8af453535790302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008dbf61f2ada99d4a61c8dd3da8e051f0695f018ecb52547481c34f664a62d18e34e28551c27d3bdefe5a295f9b82309002300b7cd86fc02144ac66eda4ab3db57b0d3141fbc54ad3bb3dea95e6abdad3dc4186488cda2b9617449d63436e36133ff70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023055fa437e52f292a257db6d873c463ff42350609b0d4d18ef450e4997da78d81c85eef249af7ecef34374065c3843d53d0230120cd0003c57c6189badb1dad0ece8fd507ded4ba197931dcf6c79fc8f4b5d7f742b73d2c0f7491779e97dcca51907710302047c435bb5006630640230054a5e66d03ee3dc6994d143e10c3bb96808255f0e779e0f886fec3666b92527b3008a59266235ae77e7504fcfa5ff88023002afbc681540a6eb62a836acf1b8143117acb5857ef5e94e30cbd0649ad40672af4def1de82f83b5359fd560104352fb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023051a118412c2f29150b158948fb459bb3ca4f5b1a7fb1948a764e4ed612d2e1e86a7747a170de2f65e4d8e94365d9f16702306bae4a30391f90d4450176b52a13dc756ecf6e95787b86678adf068bd49e0724af9cac805cc6c4b2df739ed937f6272d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307b34f70bfb33e14a76cea2ecc4d6ff6622010efc98a50e5eec39b53e7640f93d71e3774d91e91dbe0f06d8d071a01b7202310086f8a1b298daec4118a6a34e4f3b274a4cc7bd4d6554e6e9a50b7a036293fe54ec309ebc3a180286910677d002d639c50302047c435bb500673065023100f47e0a5cbb788a4ef8e7c899ab87e73e98017897117d7bbf2f67039b7ff853f467e124c77e8ed4166d10272549518778023067f68226eb36d99660330220de82550a2c195348573f4ca576fe5686c2036e309962853897226f3bf0cc6ee6cf406fde0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023007a6325062e2c74723cbc782b65adf7a08500f9c5485a21305b801c8eb74a907a0531b0da7464322fca581ec5b3bac39023100c92b7a3715bb069adc6a6cf3ee65eb1a05f606dd87365ab445c5c599f7560729b48aada027a84ef0d0a5ca5b16a512740302047c435bb500673065023100bd2077198e40d7b516fece1235428f63bdd5aa9337352faa974b52e0257da5aec5d32be3fb62711f0847ddfb675d792402303351f7aa571ef96f20329e28a369d981366ee9626aa7320e81d9201a588d26d4cbcfffc1551c528eced0625a69d390770302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d6a9cd01c1c6010ec383a707628a2b106b371407d25eab09e56b7e41fc269ee14776eaf48e7da33bd8d7a8a497aeff0a02301c7915f26eb5cb6c2d35a08ef1de99919a32ea1a2d551377a9df7af883f2be167f2da3c7fd22c46db12d8bf50ab84c450302047c435bb50066306402301b5f1d69cd5f729ca892958ce4ec3fbff05dab1951c08636e7ef114cfc2b90aff895015e415ff06cac3017b50578233c02302ec1026c42e21d1ac2d5420ef87f632ffcfe1a1222d20a4da73b20bc84babfc4accfdd0a7d6a55d81b53b9519117b05d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a40e571d0a3c9ddb59b9382ca2d1bd47727601cf6b8572ee0993623fda6667fecec3bd68021a15166518cdf88e2f9a4502310091130e0802b16b10460c5f137f2cd7a94a00595f32b78e2b7a5d82564b52e5fbc5ce74bfa49a2ca4a8e88b5f0930aedf0302047c435bb5006630640230438fb24ec8ee621ef60ea43eb36db3c34c895615cbcdbe8e7ebd1cb25ec41ae5c9dab0046daea419a8bf7aad1ee771e202302c9b04e59918c73d98fc1a289992e3c5377f656953b3dc7c6b81b148c0c63b890c99b1899ef6cd8544ded6c3fd9493a60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b404edf48a220e9ddb9581276a6a480d7d7a32a1edf27d3c3e63b9d36ed6749ef0ce8b9a5dc99d79fb18db1a3305684002303b28b8aef0e825b6486d9387d09e45cf76bac15e25ae52dcdc419ec6b2d253f85f0da8645b1eb2caef75f8fddfda06e70302047c435bb500683066023100874a95ad1782c31cbd35b2da5025a9abc55c469acee8ce4f754e287eb63062024916060df926b981e28599a964e312ba023100e29d3ec0a0af5f8e91a273f4cd882248c2a7ff7480dbdeaaca58cefcc8832d4304103f23ff7580ae934f56b6db18776a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009a422339f63bba82fb9d0bb755d23959c14ab3fcb9feb5692dc5bc5289d898a7eb6ce324e9c1c2ab79eebbd6a3cfa916023100d412a1a27101848baa687e769cf9471b096a2d59a069b18d1ff0a34862a1ba37909b2426b5d54f1d7af1d4411e887be70302047c435bb500683066023100ca5ded540c2672e69d75a61dab99ddd5fce4fd30d9f19737b298d46d60e20ccba0d2cf229f9c155ee795ad3ffec6c6ec023100ccdddb8476128a14cc54b404539a0282ce77a0e081e5f995a025c90560127c87037c54551943c39fe7df93d9e783e4100302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305cfa2c9bbbeb9ba8b405f9a5a9d01b6900d67f7994e823786f6c4467ba2bfe5432ff9a932f805e94259f22d95ecc6d2402304d57b144416ae15bb6f06c688e141f6207df8e216dec798e210aceeb5091a3c16d44252831a2aaf9480cdc03fd6e98da0302047c435bb50066306402307275d8a037522099cfc42fef922636677996c65eade275a4a20eb6580bcf713bdec7af02e59865a9bdd1a656534c449c02302d510bd38ba1dfe3a6efe81adee5d04fabefea68d8066eca2ed90e9182233656a5c40b489588b799a82294848f287fd70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023062640d4cc8409a6175abea50b63d57f1e9627149b0b468ece62099e45e4150f42177390ef5f15270bf81646459d29b82023100a2de5ec8ac8a489a0609d155fdcbd3451382484ffbdcb80c3de978cd82c0a5bb5149bff4d618a886bbdc990ef4bc9bb50302047c435bb5006730650231009fea5b5e36609e2a3e175be5bec8e069ccd7ecd3f15f8a2f5611656dad1af8eb22ddaf5eebb35c96141e4b527da4098b0230741cbf17beb30ede98f941a52fa3de26f48ec1e417c16f83938ac6ee6f7471fbfda3a02b3956ac59df68486e002daa3f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100bbbb685f3b3726246eda6ff23a5a29d0a37e7b246b01017195db0b217f92dcaed892a0e9264a66a010a7e93566e34cbb02307d375dff015f2c728b525dcba90a08a84c9cc7e66e05997c213cd33d2ec9ad72caebcec6f5e8a41c93debc2c91cd18170302047c435bb50067306502305353dff6afeb30a5da8026eae415a0505abca6aa843b896b4f08650a6a706d80214ea211ff9ce827ae168122391fbcf2023100a81317a935132c56bf1a085892feeb1fc83d6c887f9b44adbfafa15f2288d81e612dc33fb5418c59be97ac7c2c9f5aa20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310093a0c46b6a328834c955893a0ad741c197bc8bd1ce0f08dd558bf82529d762d1797358643f085275f191a1d7c05351aa023077056493955826ac890a25289d29f465e89ac72d88d27baf44b5647a2cf4f34638007b72fd14e3b38c3cca2c3e75b3110302047c435bb500673065023014f83d3d9fe7a5829ccebb4c36eca39007a29559babf4ed21ddb3b5a49acc8cf4645e1bf83f16c13084841ce7fe1555a023100bde06c4f85f58d95144569872a6a6d411cb925155457601c6d545ef51fef279065dbfaa7e29b67b0b123f7d00dedb8eb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a70e1bb9b34b0b6e430322232150b6b56228d5f38df12ab4ff56bd0e04634999b14c6b7110874eb78a7d36d6a7b957bf023100b5e7237b0b7ba0fb21f871abc7555dd1dd62d250ddddf9fc025f4dc3061de9ddfceb3305a0f67c951389e5a1b675aa3a0302047c435bb50067306502307577efef5d2ccd6baae4eab7309e35046964cdeeea1db7ec6c12c44f093df4d22b18184684ba1920859cd94289b0f273023100e1ec1e4eeb101b3796378d31b9c9c6fc4f94132b71d34f69605e90677eeab4125d45168e03295e209dbb4165500b61e00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009eb9c2d465f6a06b298f7a41b4b71a348f8c60812dd332fcbfda0b0a115215cea1c04024db441a50a3fd9d39241a3e12023100b5809b034089b04a3469a05ddf686baa0e35caf345436927bbce5fcc73c121244da2d351c85d52fdc6e24c600ee92f4d0302047c435bb500683066023100b1ece4ed80ff90934b29eff4c8ba9ebb3f20d82d18062e19ea73313ada6c7d18f666b009ce4b7e9c4b10885a5bd75697023100917a8c4c8492fc3c30ce02e35014beca7c996f33f0edd815ddc846bda8e4105af3c02522d71eff86e10452231ac57f000302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100aaf9d21821e07cbeebe9af5db6de68d535259fd96927d9cfd642a2a28119a06aeaa12f670907a86866f2eabc755080d3023021defbb03c412f044aac8c3ebcb5b9b3b260a892bf32a29715d91c97b0e04916c0a8cf371325b441d9a196c9c7a962040302047c435bb500673065023100d9109b2f06bf46f981e0cec14aa8a438daf670f5978278c0d9c57b171c2ff06aa42837247ffc7db52e30120a0a0d96390230139e3600524d305c5d94a4df06d49a45cbe485956709a6fe1fe7a5ec03e877b3d0dd7e9fc4ba1875342a4c91339ab7220302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305f3d6285bc56c6eeeb4f7fa317f4355ea1c72fd7ffd428d0bea48d3cfe8393242bed3dfe6144c55f45c4661b057902c602306007ed9c4c873a44ffa41b55ebfe65c0d9e9045c6083dfb254f1b0e4e6016c9c89ac30b2fc3636467ba567c0247c8c520302047c435bb50067306502301ad984c08ec7236b019dd398c2d9916553bed9921030dc4507670933403d88f21299db95ae6213baece554eb36476ac9023100d95bc0006343ba2413389ed22a5e32670f8fc9954f08b73033a00a659bb38abdc4252431451c8f814e7baf464f1738970302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cfd31b689820ec92094c62dce403bc7c7af7f28cd4766a2e37b32f0604eb8147a3c820337cf25a720d2c0ca6a06c84e8023100e6209ad7b4d5b1af6ce9a80033afcb0322458fb5aa1f84a31620c254d365eb9a394a50b86360313e3af1d70bc139f1bc0302047c435bb500683066023100f72b9e56926a52725631ea326c97e8306e6cd3d0efa46776a27618235f3f6d5bf5919f47a6619de2c0bb1d8cd7cb5c38023100e2738300f20a947f37d4b1b0dad31cbd96826984a2755aec27f63333142229eb99c399457d35f6564a7194a86bf11e410302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310092d90c7c2ed61b74b9bca7393a16eaae1c3ab5ca1719efd36b5d771600365e70fedcf1d75413660a172b9beb7129807f0230730a18a92e8abc1f260899e6e982c9198f4f7dd60473e4fbc06b14702ad715d67af696b323aa3e5dcbb785cbac3cd6150302047c435bb500673065023028de7e394608f50a891e079991438bc05ccec7465c7d84f395a1232e63b1f49015e4018ed8dbd1c766e95f80e94a364f0231009956c846fcb76d093701e730f2205d77920a708bf80fc16ed1eaa2557c170b4e2b28cacadee58abb90c7170533fbfdab0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230151ef7245f4d768bcf34eb138cbf690b2889cbd49d156868fc5dba08670f2c21955fbccd09a8c3abd990a5e6e42bc8d4023100eec420046433780773053f5dc18c29057d561f3d41619145418e5348e1593ee47c5d0ba75d7d9cf1eb1b8b8d4aa313bb0302047c435bb500673065023058a9b4864e18402a3725ff903dd860fd9084899f30b0c9c438226e4bd1e6ebc1e208486d84c5bb7f81cf6289185d5e7e023100f568d6915dcd206fc1c768d38cdcd42703da8499baae4a63b050df2ebbe1ab7147594b8835229fd8d9640c58808ca9fb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a3dd4fdb8f6a67d4f6b1503b41aa96e19ab8cfe2467bf2869e60abf081947ac70b91df953e0b06a885d5102eade883870230541d609da5ac748e19caf85c7f68e82ef6c46480a4751b3d37f957e05acb4ec28ccaac582b4c1907f1bc42ad1e36e37f0302047c435bb500663064023001d7505ac252a93b2b52de61462c6e8820e19ff6380515fd06bb6e18118e412232c9cefe5c2814dd407ee966ed033fc30230634d8fe19a57d3da3f57044dd57f969a6e44b27912c77b9852693a6201094c4f57a04f89582bc84177c64ddb76f6b3930302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023029f1f32a435c28f1087b2f3e03c8beebec39d484f0ee110cd8feb3e888396fa1ccced169e027befbdf0ef033576b6666023041ac7f858823abe68c971bc2a000b07dfeb68264e5542e383fc819bb2dc77c96be1fb8edc924cb87e6159598762d08920302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e9a844266b9bbc66dd96453d388402aeee72a7c696999d18595f42d4860b455e4717aa32eac679efe88180f15a948ea002302ae1d95d70b8f72cdb050acda724d598e9e9a7bf0c827e0453f3d3aea4342c09d75c840365ac7cea0fe18c1cc943cefb0302047c435bb500673065023064072e5a821b806d9b5c2e952525e5e66cfd2c9e4e14de8f0890424464dc5cd746e8e044e732b4c8b26436de2ea51e1a023100eabbdc55c64c456c6b15b7caabf1c63d2bd26b1c2b5404ef534958920985448df7faa49fe817b60555be76ea4f709c710302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305fcbab109cbca35cdcf90749d867f60cb8fffc2676452f58e0e490bf12f5ce96749939170f8b7671b57e8c388864de77023100e36137cb5bfaa2cce5b602896c2c417e069b00ccba1692a0e720e175dbf98383c24f4a4cb4b500f69bb2b912900562210302047c435bb500683066023100cec7c1e3cdee78212ccc5e06bcd86ac8b44b3a5ec59dba7b75549109f3d3d5a2ed7d3ed5c0913bdf157c0e3433584927023100acfcf108730b80ecbeca5b9d2a8e71de118cb2b97343006ca187faebb085930a74fcdb929b2662347f4848f4029112d80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e2a2939a1bb78826f3407bf71e114c73e1b4dee3f8f5e1b88d871dab28029fdf310d5b3b4868f37e606c54743e6a2bf60230471101cce3a12f6a47d22577e905cd0cfa75ced2abefed98aae7f41573ec971af0346e0e48cdc5f54a5b5fcb0975a2510302047c435bb5006630640230422b4fc05a6bf8f992ad20ca9e0c61ec89fca0ac27ff5ef3bd17fe3b7706182002d3b94acede9080a789285ff87832ac0230722488d255ec7fcc56c84acf7ba7f579367e133e58ff3bb9614987c9515784de7b3579f6874e07d6204c875ce82740a60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301794ef72c985f44d00574274dcb7b0ca1a3aa2173d14054eacaeec0c76a100f489a9b92d63a790396b427193e2e73c02023100ebd7ad24b21c3c1d4f276bbc08c4e80b377b5ca00c7a3739d1a6537caef7c4c7d529034388f1c4d2a253b72708e426810302047c435bb50066306402302ec5bdebf3ef3d09a2e0b18c2adb226bedd6622d78b979b5fe2b243ebb42614020643d934d7ec4d24ac491f1d89edb76023024c850cb691875e4761bbcb02e1a609fdc1cf065cfd1a2347e9745839f39a4e3d36c7bed15ff1f557e1e7838289257dc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d7c1805a745c933731fb19e209ac9408d24d89e6a761082b1b49441bf3d38c76953dd6fdfe2a54d7b69b2c87989862f3023100e8943ad31cf597bb1061041ff97dbb311c3f6ac028d5ddfef748bfafbe4037726185e90ff24c464881c505b20260d1bc0302047c435bb500673065023100d4ae0fcef4c80c66e8403b932f3e5b21eb1e1a0cf39872abacda59981fa0040a5d3fcb09d4daa1956372f6fda7ef3b86023059905afe3ea8ac9d54aef51db3e9123ca3bac05d4e44bbc6f8f16682646a89ca0d59a1333473e0c65dd1052576f5fb6e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402310096693c100502c9ff62319298a6c606cc7bb41d9c40c401f85047674b6f45af024bf5c4c9dc3a22b812f07460e63bd17d022f5fb1ac9074c21293137b67ba7a069b23413abfdfd75bf35e4d3d6162c049b81e9a64165e677a7f015cf13cf0df7a800302047c435bb50067306502307acfbbfd5f896808e36dd20f3415e20dce71de368d3ffb2e37229944fcd70631f8ed9246360b8fc6de51142249b70be5023100e7fcfe81fa6e179a8fb85b59b1c9d4d009f39d45e1d771580dbaadb633ae1e62cae841dd85b5d0078cddbcfbecf1f6460302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302ee45940b6101304052a186924c8a201167565c930d2130ce0861da481daa0a948b946e587fe0eb0c3c2e5b86ceeae6d023023aedbf7fd99ddaf3654b34f657122414af3a840cde9f2559bbc67c51a69e4636bdc35363a1ea8b51656f246d3dd103c0302047c435bb500683066023100efa659992f359aa59c3a2272a7f222ee3bac8a3f091a7f30edfc3e7e82df91112178bc78241813376ba9a496b15c8d210231008c85ccff8c14186107a27852dc147c8bd4c15bfd317daa5af4a0cca4ecabee24efed3175849ddb43ec0ec1d9956078aa0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023055d1e5f03d98f24150be54bb1e6d2d9fd0049c30e751f8383e0c4bb563097a5ae48af5f885d68a4d507d08f0e3da8dcc02304656838396de8ba48251a460e496cd61444b891704f8016cc7f0bd299b689e85a784588caeea89b16b7fbc5b78e940fb0302047c435bb500673065023100bd86d31e53de64f0b525452e448877a958c7ff7406b901f0e8e4fb789e3b19b58277cfa52ef46ae2b5fb31521be44dfa023026c8846366bf857aedcd6b9370cd7be091b5f9a1096420f212c8e16691d1f3c7ab1b2f7699749a9090b9edbd02fab58e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303ad00658896a2361b52df2a42fd7fb8f165ba0082c8adcdb02e5ea0788c661b9d3a3bad1d1426b30864851117009321e02307e983226fd28c42084287808780eef651b4cd9d1477c50b8934730c50d2f4dc283b34810e6c52a005c9c379461d9d68a0302047c435bb500683066023100d1183ff0d2bb876ad31f1e26cce03f4e03ed996915551493b423912775927bd863245f721dc07ba3b79f7a853dbb2aac023100fa7404d754bde966945a5a04c4ecb87f6ccfa067e94a408925f8f6e3aa58e73cd1e6d243ff2665040cabfb3a5053fdd50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c21183355697a4cd611df3f96138c84d7579bd7bb5dc5a6e78b8eb6970b490f666dba196f8d5d4dec4a92ad689fb4f2002303ac824edbfcc09a0f797be346fac4019b226a82c4ec12264cf7d253d807dd42536804303a523fe000f4c77fcac90153f0302047c435bb50066306402305a5316356cff37b43e0ff72a0f02b9d3e7b8722d7ae36503fc421545a07420a2be99acd1d5a975a10b47c94a6829f9940230682ee0f7a9be0acf1e45d90b77396c8f12e080560f3411979bec9ee2b9b83274ca7f161acfcacdb1b61fc05c74f874f30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305afd8720be1d1cc47153bbb4a99ad83a797dcf23a2e474bf326a0b938935c308d76d937fdc333bf1ebe2e23b09071d9702306e25e117e3b5b978c78e66b2b2d5f59e9329cae809b6e29e87e64872e620e7c791812ded202e96e3ade8db8ac92c335f0302047c435bb5006830660231008a95c03a6628daa6f1d4d4805e691958849b5a5f9ac265b14258c3d72efac2fadcad27f8be046c3e3b069be0dbb29e24023100e477b91a279a7e549d328b6d0018a3d0a2434f44f2a1d1b53e4bc621d6e1fac725230ef457e64b54b057fdea250058990302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304962bbec18d1d5f636bcbcdb5cecf84eedbec05495d12d503538a87ec35c6fa3bae1e2807e93164c81f029affedf74ea0231009eed6b6ab82b09038765a3456371470ed1d50dde68282127d8a7deeb4209adfe970fd5e747a662154364f4c8c88986330302047c435bb50066306402307fdee9491bf0c5c2d4562dc4b0ef553e63933635bb6ff681ad93516e9b1fb258ba79fbd63258ee638c5b2a7607eaa8cf02304a9677cd79a4ec57ad5495f64c964116b4ef5765cd2c984dc70642e4b799a06c78ee76563bb6d0a7a7f31ead452815160302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301b4762c7c85b7f8453e8b32fe8ef255bb5d7f6e54bb0fdf01fcb201ac6414d7060010055957714bd0dd82a52342bef790230718cba67542b166e97e73b5ba2dad4591f6f4e2b956533a538951beb7ebc370326e02dbfa1b9fc6b27a88c8bfa25f4d40302047c435bb500673065023064b257086c602314147a1f014a13fcbae6a2f42d8fb2f0b37af988499b000d84b3a5a30267a7e7a2331da0123f6df12b023100ed85c3fca1fc4f6924e6e2f1740fa41618131f5aac94c469d2b0e66af402751d9b1fa8390b47512923e45bef1cbf16d10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302bf5f26d888a8f0ee927588aa825d5ea4308b4753f9857159008c0907cd4e2b201a845e231a413b67e129e4ad6770029023100eeaf9b7ebe1ebd240574ac1bd41c05da4ef49877c2a66adbfdab5978eb5146a8617abcd67ce6519a03d0f7ba83ce2a140302047c435bb500673065023100ca19c1ad40e487e57a5d4028ded3a42a81ea3475f37cdde8a857fc7a35f63afda7743d74325dbdb3987db6a7704efde002305fe67fb12960c39a3238ceba1419684a106712672b14146745c0bd8b611aea9aaeea095d7a5f73d2d56f7d698a6212990302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023047cad831d317c0b302b1b0ee594655133c11c9409b768582f2af355554fbb08b7257e1cdd12da5dda2fbe9fafcb7568f023100d7ef187b0f74c0a772cea2554cef6d21a6249b589488a15c2bda8caa029498cead134ad6152ac33a2828d8c3b7763dfc0302047c435bb50066306402306a784022d47e6ba90e47a4b47ddd451fa0fc7fc3c29b1b2bb9a071b62079f7ff914a2bb7e12876e09c9e5e8147d57219023072c9b3616b84f45f020ded513a626980c409fbe4df60c4b7245fa3f02e7859662c2d12b196dd921436429124af49d8260302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e3c051fafbc85df482cfad00dbe2e78106563f97f6e853f614c57586e51e3e388309b3510e7cfd33790ad371bfefa771023100c607323330721ee09da2a136a2e2832e96b680227a2b6fe3a53f1b0c3d029388a2da4624ffd5edde047f9fe64788d9c30302047c435bb500683066023100b363e1b681c6b8221e1aef2f4203141caa34f83366903334efc596eb22b7f561d46f6aefe1b3c9a1ffcd7c0e607b342d023100d3e07ca266a61d75b44de51e16260f5bca2de4fa7ae577378947ba5d8b2b278b09b00a8aea45dabc36f656f089d999f60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023036c2653f3f1c8ab737f52e710433725d62d38c4619a7d2cfea773351492b04fe865a1637436d323dae1c7ad1b7e59ec0023100cdb587ceaf89be740df651028b7ce8ceb221e82f2ca9356aae99a669487186b6f5dd3f883071255f2352e9adf7c391e70302047c435bb500673065023100c2dd1cf572c9f66bd0350749d41984e88e06ccac9efeaddaa10b49777584cae498f181439a90b42604d00990644e170802306f2a6e8dd7966658d1d2a6d4fa429979a155e6e7ba1cda90f0d4c67686da49c0fd56bfae1e64af80363d52d6469db5ca0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b828cd9a12fc03f4261cc8f3a3417f66d3052d9cbeb94afd044620d31c4a111da2744641ef4410ec1fe8ad1c4a58afc702303711feb50adffb39f88bc7f5b60c89a2040c5553869bdde32c0dd76f7173e406b0c6614d2b1c92cf271fa2f33405d48d0302047c435bb500673065023075a1fb188f8907be8133d6ec5eb08f1620d38dcc02ac073a6b0a98fca4c187a1c086eed1ff31b215532b8db8792a00bd023100af9ae41868cdb41967c31a7b216e07914a8b6717c29ae7d6737513fb3194ac7840c6ab8871ebff65688a9c080f8ae25f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023067c5ecdc26fee5ee9e2e8fdfd2370a06256a7ff56da3efb6fed6dcf1d64c7b9e4af4fdb0584b28198438cf9dd124b8f1023100a471b39b2ecbc10364866ae3cf91388ceb561f3b504a47565395be5b7ff27fa4fb832a94848efd8c18c07d526dd5bd1d0302047c435bb500683066023100e4bc6228bc12f0899dd22129f973be82dbce5e93d05158b89f3a78069a1b3024c544bff132f4f5b7bae06f0eb3533ab9023100cb2a8f14010d53f596fac6fc5954c9a592036573c4606f9b7b601d02d010954a1c0d06341629e56627e789af572826c50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230452613b33751281f2c8423e60272fa68e6b4a349024f018ee8d448d7e747ebb0aef8738767f517a3c576b47dd4913d9f02305cfaddbcead7c35ebf3a83b774a416badd526b914dee88dfba79d619053f355d9e6f4aabaf4ad3b9633f3418a49acda40302047c435bb500673065023100b7d7e17e56e574097806a4f1fc150ad51752d6364a0a4e5eba33282b4effa823eecec0f13605c9cf03a23cd1eec00bbe0230072bad10c9444ae1937210b2e4d555907c4ccf266d98b6191c976192dbff08a9eaf79fa7121737262772ce16b83c6efe0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b17939abd389fe699f9f8a96413005fef2975c3f5f16ebff50c9761b67a224457735b15ada82a8ed2ad7adb75a47db3f0230009d892a052908113e77fa41813935c385dcdc1d98fff26969491f6355ccea1e6b1432e37ec9df26031437c88f89d9340302047c435bb500683066023100c802cce7eaaef747a99d586cdc878131ac3fe54ca89db0e21bd7483c6f68a83324ac02ad7faff8df11ffaeb64a320402023100c6d236aa483ce27d71102f549b4bf47fe89e83f3df28b760d002f4e4e5b831254748f8fa0ff2b3cf5d4a0395a3cd75e40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310095d58df856f42d8716d29f5c68aa0c350c7040d48c5df45fe4ecde79adab397ab33be28b8c63e03dad832d38cc824c0d023100ed792f561221fb5845170a1559eb5c15dac84c5a340383232173dd948bde8d11e2a7eb50a211dab6b64c8a04b8ef01990302047c435bb50067306502306077b814b00f4678a1cddf7b52d82dd18d0c5fa7245d2022c480cac3507a7d0bbf6cb7ddba05e3db7f0e3338546cdb27023100ee51e4f2f8f43ba0f837e00378f854db93813afe1fc2d8be5b0ded30e0a4f7903b1bfb67603907ebd7c1d8925b6c502c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100811e43c534173849af50297116c788e227fcb0f7a9be4c36cce6baff17e35152bc56491a5d48db5270277e3239e7351c023100aebc4f7eb98d04a92f59936d3189209ea0c556390ef2e9512b9443960b53a5ff8e961c8f2d58b3c4f5c4331a4c9a68250302047c435bb500683066023100a7e434820e9036a58c574f93cc40d1c26da5f5f1084589c0be505b248892526ed6b0ffe909f444fea838a66d0a22e8cb023100f96c862b580841b4c00851562af28d750433f0908bc4d5b8a6374b281b151cfe2a07d609a285bd777b3d603055ccba510302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009f9e3e1ebe7b5d0e1b9852bb1e0b65d14d54178412cfc401b6f5055d242849501532d4ab1d683eac78e63a453f4d61db023100e1d4c14f38ad51f124695d2d3e17651e625ccc31f3201e7e28b13ff181ac5a64cc0421fcf1fe5b0f72a292c340008ad10302047c435bb50067306502310088f9cc7534310f2a3603e10c7286a5fe2c13efced646829e4f66283130f6aaf71812dba0f52d6ac45699a857cb332aed02305922ff9b49e4e270313827341c9d326243df3fb2fd556ab3a8a37727e8c51b11a8922a568e9bba4d213cb32d846e8c5f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310087226238755f8745ab3480057cf4a675f5416c2bd5964078ba371e8f491c885ac57cb2d587b90fca5b09a0613daf7354023100a95e7511fac2f8d0b3884bb07e6eaea0ef3de4f997fd99d6679c32cd12b270fcb94b7fb06e51b70500eb0dadc0223a650302047c435bb500663064023023b323ff9f0f3701303d6633cd0f3159d872e0ec4bf3a65ad222b75f6f91b98fb6380056b328416fbebc53b78ec43cdd0230193071392efa4af6dafeec6dbf76860ed3fcb3c1b98ff80df3c3456dd58249c2db4016e66e0ecaa4095bb2ec4d4235070302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303c32cf92d1c518241fd22ed07b1cedc3b243059601440c49b8f3050c493333c3f51fdcc47c45358ed7b69913d0ce9859023100be1506b993dce99cc18c53e63b69fb7ae4e96096051f5dfe30f4dee65f721a5ffc1f29ece36f83781985f6440a305a530302047c435bb50066306402303b1924d7622c1174ffd82e119cdacf6853d3a9ae399e29b1802f9afc17f502b9957eaad7666aef3c6021a78ef0d4239b02307964f8e1148463869bb7edc0bb2d0da661246e5c89467389a151bdb975a43f6008c464b1ed1af10d93f9fed752f1c43b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230677ca61dc4dd255f89c2b467b8f51cdb5772cc2d93a9eefa34e0b9bc3f43ce0f7146224388282c8793a33f585488ad6702304ebc848448276c9ba41656bd6c4d744cb6de10b16f31a41bbcd13101ba5babd5056ca6dad6922146d4482b80214416d00302047c435bb500663064023058c685226596d12039a3edde1f4957e0b4bbb76793d15faf2c474c206c7a552f2ab299def0cdfcf18ddf48f235f567e30230403072da060d1f119f6d33c83f4252b42fb7eb78505d25fcf216e66258dc5125bb562239351430e99d1be0761496abd20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100842525a11502f4c74be40be7693afb7ba13c3bdb435399d5fac4bf0942a09361bfa90cb17ab5f50f67a503acf7ed2878023100f11037f1350303810ffc0231da22337e20b383d9f495ff2621582932067c73b03766faed89e2f55c43a110e1c79b07890302047c435bb500683066023100fa0297645625841a974bbf8928d65b92bd881438b5122bf1c282e4ada934467436aa0e04a34f9809b49a5a594642434e0231009614e4be64aef67750d3ebea43929d5c2b872e126325aa90c501b4e5ef120aba3866388fbb1e738f9f8e7379db072e8c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cc68ecdf13ab4607d95576b8e82f8acf19c7ff863ece9cb58ee3370db8739153165d36c43f44492dba77363bae0dfb2e023100a0b7bf6fe11d49ac0b42a2f3b0af260985f8729634b3e655027e61c22b9d4bea9727ed976fec91b6295f73f262085d2c0302047c435bb50066306402307909cd5e0469aa25452d5fd6bc9f7e46a876f10ec510833823cf938aa7b569b8a75dbe510c290c608d41b2f67c7588cd02302889093dcaf6a7de3f3e3650171f6bfc536b2950276711dc696ec4eda529bb5bb4120b1a3dad18aee00928a3ac109c590302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c43213607aa33a4a353cd001f766784b63dac6488b76a0e84f0bb769b786b13914214cfff2c0b81c3e4beaaeb9dd3585023100b36b15ceb7026a11832a0dc0f976b5f6bb80f03fe040fba851bf59297e747b1f5278b7e8fa62c6d72fd56538b9e92cd90302047c435bb500673065023100ef39aa0b974a9e4e37a18f8a26089c33774ea65f821c8b79356507b227a83bf7252e913f546ba8d867d16ad03758cda30230369d41b632b5084d1c786873f776afbfedf5fdd762aca9ce2da68e6061ff08feb06807f0037672f077dcc1f47d120b780302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306fc9fe485a032c46951a1ff9c031790b51d7d3525fb07691a9e821600093be7e881ed07df517f4c5e24176eef62af85b023100f786e6f942a90b7f8b0a7e807cdcb2742ec195e79939b9928c1d12e9e882ea98b07f9ce7f6e0bcc0c749921a9e44a3720302047c435bb500663064023055de0baa14cabd196b4ab80e94b7ba0cd243b952f71c192ab7fc7df87d0a7317c43060fc0b0eb69682c98af6e6dd7233023053643599765fce8e3f3a6ed2c103206cec384ddeafaee57d31bd3fc125a67aa5eeeaa368557568e1b626dbf785136fa10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230031afa332dac111df122a320c6463e410dfcaee1ad398447c8c3637113086d0a5916511f274ff7312f001805b44d6ff60231008dc0214bc39f03072c354db869008b98ecee3a68836d0bf922dbfb3fcf9846a2ddab4aabca3b9dde15be16cfb9f254cb0302047c435bb5006630640230792f42c79ff59a39aa3d0ba428d07a07e6691f05b5d1c514b2f1aab61fd89a4cf9ed181e38b99ded9cc11d46b1bc02fa023012d2f7792769a793beea546ecce67d3463c659cce9fcf85f13f6cf866f13af5d92c654d96a0dd301bdda18a3df18bffe0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c22a42a404a68ba11e3fcf39182cd018bdc8a866d40df1e508de1a54c6695861c0361b1e521f835cd7509b4dc1b3936502304d10cf54dee28abdf8bee8542bb44d24b87362174cd2fd38741c9a75b42e32d72e5254536b340e1ac58df69a839034320302047c435bb500673065023036032d2e633bd1a102963f85fb5c4c40be2d606e24a71c69a325880d23b2e617e13528d923b1f0d5883b690e3e32e8b4023100a7b8d76f045e8feb4b0d00f3250d4263eccec1aebb1e715515aef8b80aed022e7fed08b92c20b7079a96a011ea51edf70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d459a814d9cf2936dfb885691149757abd8e1d1ffa9d0ede9bb049664e78c7fac6b464e80dd987d3311d3c1415856e0902302d6cac26b85b62f788b302f5d60e31acf04208289af6f4b90a9ab90489052f2681a6395b55f12247f3c7a40608a3208d0302047c435bb50067306502300118bbe41601e10e22983514a8907711155a6408af0c3f256528d07a893546492eec64e0a5126dc2d4621084e600d4e702310090f00ed4f6e88889b8a3f222e7dd729f277f3095ef83440bb3c67e18c97adb3c0d4d04ef618f7b2653c1b9c0663c89a40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230604eab2433965a5c9809433914673301e6c4ae8bf0758bc2add12ab3ab35685bac6e015cc2e601f06a8ce42ab134f754023100d31f2151f010f06fdcd269dc46b01e2b65ef465183e0b68db5885392236d78585bb418e908f45fb24e400c8e30eb5e150302047c435bb5006730650230739cf6fa34fc5303d2fbf13bc9fe606ab9885c4c6e41dd008e7476ceab05e2ab69ae17dedd8cacad875b62b16bf9b136023100aefe16b5ddfce03fd19630a20b629b95d7e3545eea2817827e53cbc99b61b302954fb87f7c5b65d71a559bcebe5fcb280302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100fbb3449bf81d0038d33a7b7008164597fb064c3ece76b633b4017e3af5a0c4d216ec20d8a47222a7428ef494f2c7eb54023017723159513a461f48b04bf95d967bfc44b37235b94412508c296dfe2e49a42ea2286998143f8a083650558841c23a430302047c435bb5006630640230525603c588ab7c301cf1cd0d725e354c8165dd7a5d06040427429d2b3ee7581b3c10e0c2cf07e8761e027cb07f2d55fd023032e25ec20354f42d32755af08521e6b8ca1c0bf94bcf3b305e7f2709513b951393e3f4d5128d05d94253072acba892c80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023012cd07419b3460a650d21b89cc7491097c3ed6d1c33bbff384009d263f46b40aafd49599d123348f7dbeba2bde7b2b5a023039cdc9842ca99d23d24391379ae26c7bbd4eda3dacd4a27eff7eb5f72576ce5e40a2cd0f24a06be307fc8de511489cd20302047c435bb500683066023100d4fe5130b1b18e45a592e796748e2c8463ad8c8ca4d3ca07eb4c24591490b57c18e1609678f3d9aedc4ff9b197035a74023100c6d62dfcf15f7f8f79c4ebac2c0fb845e349cd4463efa12f3e7dff467b6cf5c9f050cf9712bd712af3d4b28192d7dad80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310096af360044d7a2d60f157f88859e7bb68b63525f4d1e8681aa9ec396f39c5560c088c4813b9ed272decdf64141e39d56023100cb12da259980ea025118907a1e84cf53b5b346c66b5e31a4e0ad25a3b149862f17223d68cc90e3835879b241244072190302047c435bb50066306402306fc6eaabc4c00cb466ac2b884af499275f11d4111f8d7f9f5fd732af3b2ce0a00118b5aa57f89752e7b0e841d7255d6302302a074009945d039221ab046d2628431d1f85e94acdef5bff477c43a5fe4921f04af8d01f740f5a7da2f0344c3c4feafa0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310081399f28055b73107b261f88e5b4453fa58b9e908632e3db01f6a2e1c32aa160b29eb75aae74e89d98ab0cf3ef17722402301f28f99622f1e7046d54dd1787b56b36bd7c1e2c49bdf1669e0e4cdfec7e6a4083426791ee51fe73c85eed569bfb9ee50302047c435bb500683066023100cfa5f86c8dd5213b9e87183f07d3b8d9451daf237ce25e062928e879041f69ab1f1838b6dc334d123e19e3f692773364023100e3d97c086ade56e39bcef2e726bc1182338d0c96287b0700c2463d48090a1ef12149479f66303ad9709fee702917f6200302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402300fd45f86e7f685c614150169542a91868e9cf82f95b258e7e62deeb094973f2239357088b45b0ca495b40d6f97b55f0f023036ca684174371f19e308c45bee08bc2ca9e0a18ec0806ddf2da55061a91186395d784b839a5333f3ea837a489059afe70302047c435bb500673065023100aad7ff825c6f24b694b2953320c25045c3f9437cc57f5b928d3eeae6f5153dddf35c5edeaf3606e8ba621689cdbb061b02305d492f1c7d261a057c6d7f80bd55419a2b987298b8e22bf211be19c8cec1d2b41ff1f8941aa96795e78c26be2f1f0b1d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a89c46220f151ea0a59e58c9e475519ede511a6a7a9337f6032b87517dcbe1916499fed5e43034923570193712bdd757023100d15974bbdabc5a4bb9907ba1742c000d79515e225e4f45c6d3a9ebcbf10844b5b194cef3d298c14676a584186e53f98f0302047c435bb500673065023100deb4d1681cebeb8e235bc9cbb9275dd3b46c9115b015f491b737754daa8e514465b9852f7e59c58d26650a07ed3a311e023023f1e89ab652820220784adcefccd8f1ed2aa0cdb8c79bc9ded86aee9964da70998cdca268074e493a167a2f12c96b780302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305fe4def8a98ec98ffca82eed06bab86aaaca0a5a37e4fcd58d6dd79be08ee2e853f9ab6f196a9d431ae0e120f429d9b7023100978a5258049497e9c7b3e2d8a73fb4079daa061ee911212cac163dda002accbde1c42f615c494edbf1ee12cdadd64c510302047c435bb500683066023100d1ba309aac605263fc9b21c7e44cc75d7171f517308ac46a935d443abaf141bbf01cab6490abb7844b6944a3a566b742023100b108b14d19a832d1f428833aed051fd4d9683ce98ea61b644599d2983955fefa59aad1cebfead8257dfdb23d379d159e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009e7db27c28a93316fde7ae13eb43807d8f429d78ebcbf39c1f59598e8e5cf5eb2ce24228600bd5db5fe8ffdf5db4b6db023100af1c47661929dba6c8981e59be573221f4c2c358813901b2adbc37adc95845df69c9674261afd53de598f89345326caa0302047c435bb50067306502304a08a59db9f206f87e4715d187c38e26bb6ad745b7ad12c3b8a0236b2b90323465b17346bb249d27e64817e53fc932ec023100f7a9c0c2a7b903134225778841789059179208c0df72f619a40ef88bc19c16268313790ebf90e240ace6a8897ee5a9e10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c2702e211c37b3e0d3c3881cad47d6c4594a20c6203f2d74887ba90c1afb9ba75ba2d9518fda0d8a7ea72acb15ebb100023100f38eada079ae6c7aea0f89e6020b1ef4b701b55a36b2234d5cd06fd8af55d28fdfd4d6696a33f1ee2d02b02730c177820302047c435bb500673065023026a287f5a853f8da50a5a06138efd366b18eb17e66076db2a80318f24e83b8ef2c6656d24a482fab4bedd5f93efaa618023100eb709cce045bb09124c633ca5bcbf1b7294717f3579dfb95cf5262bd7d45fcd414f6978c1e0c2720320b5afa096af67f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e682c644fe78ce7c91fabf01a147f06f827ae1505e0acaf6c8f5fbdd3084742cc5995e7efa8e6bb21c8dbac1897964d8023100a0fc5e608afa578c678c04f52ebe09847204e2b1675573cd1eb350403da9e568fabfae88d398db010e2ee4ff91b1e8300302047c435bb5006730650230008216f5da231aa408b60e0762fc8e2642b47be8b59cd759f69dad26fc8dd7085b24547fbff43a3ebb6f77b9dc6ea28f023100f9cbc97852304c593546204f64cf5a9ffc6b166b3328e6f3436acc840222df1659e24580a8c8b8088fb319ef7aa2a33a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301cff1515291a28407e60a88b8e8395855313876e080cefa2f16e872b79214f2a3a620250ee197ca1a2a28e53b4070ec7023100d654817afa82c692b4a252e4a97b37111e52f54b2053814d0b3e129d1001da98176be00f772b7e4638ed6241d781b4620302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100820bd4d6c998a4bd902e10cc114a41f69d13f5be3d4ba1036bef08ee5fcfe24da736d17dac06a53f2120e8e0a485e463023100ba17eb27883f986c7c7bcd9a10fecdde846d27bee9c4171c0291bee7a5e0ac54a6b6941e0a544b0936ba44cce70106b60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023064f75d5811affb86ff040e0a86793cfa1279d724284f52c7048bda4e8275c44c06018f24fefdde2cfa6b5b5bf8049611023046f042c55912e8312a744cf896a768e5aca9f4a8f131289e658b1e0371c1d12e60675a4dcf227a8d6802b8b00b498dde0302047c435bb50066306402302981ad9e75dec327b58f9fb207c3900eb0090ff113819ed0cdb2843ab0a3c966e391eca717d1f534d768be1a398b6474023038e01b009d909f2a516c2da537e26c41daecfafdec81324ad6f175dfc8ed4efd038e8c32a6882e04db235857b611a0a30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e1864f2bd64ecc6914ff5bf25bc2f13a36c45a51b1c8dcc01d5de2cdc9ddb64395bed5468f580ad4cea4e587ccd29b11023011073c1faea35f878b6399d8f2be6bf398fb4b4b9f389842134dfff98c04d97d0af79f18ce38fdca7e6b1b1501b35fed0302047c435bb500663064023059b21dd52dbda90cf6940fa7b247a89d9af06a5ce98b01cf17b619c08f39cdde24c3b5d3fe8264339a6333dffb10964a02302d95a610704c79b737cd844fbbd4cb7d266beb92ae684e0fbc2973bbe8904535c0e390106cab16df6919ae732b4629340302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023056cef867c93ca177df444a44622463441ea5639d2800d8ccfaab34632c20266c94aa060b7774e661cc691ae9a94d621a02300d955563a580b74485ac8d1e12f9f96436f23d00013bba7b36698db40f570eaf3190ae8f8775a23047c1c77c2312a4e50302047c435bb500673065023100e954ef0f43fe09752c62a9f648f12ad58ced70affa63eec89127a09a209a0b7e42abf90fa3a4b1f218afed45288034ca023011e58852c560bd2a790b1a8ab65664ed830488442125ccb6e267d0dcbc9948afb9d35cf3bdd026b079e056684c18d7170302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230316e1b38ff6e3d5497babff37f3b68158d9f16a458a0b41a0f61444d5585cf5ec83e8e3e97283c7d0331f083b489e05702303252d7219c29d1d2f17dd78c36c1dfd925deba0f8f8a004a729dc8b0f611bf4c038e8810843a83153259f8df76f08ed40302047c435bb50066306402306b014c18635cc5842cd19ea31480bb02934e4f772760b8565a4ecf2bcf11a20552209ae6010f506b780c729b0896263f023074ef572c694e9ca06b5df1d0c415be66699403b0eba0b781e6a51ed3f4493b59d6620678b45f00daa90a6fb09135c1610302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ae9b84c1265bfa0812224bd94007dc15592414af8aa05b41e88f83ba8cf2f2c3b160162dbc9d930bcd4e96286391138d023100a8b227d5e61ef8c018832f2809a2ba51643de17c825a27ca31a43332a166c5bb2b29a57794009c384b87284300e28d280302047c435bb500673065023100a655afc8337d427436df57c76676972c40b76043eba1a93399a130436b5e32f7e52567aab2b6cd9265200927a1bf3d250230040fed58836d821b383111e548130ccbab3f98adcbc730de1a7268c9621f996cac4d4e96225d5cd5f882201f0a429e580302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023061b1220157fa8719332af2680813be1f285c9d1f79d20b39610952768a4c0db81e57db64ba7d694a4c0571e6121633e0023100c1b6f4d44645e64c829232a7821470ec378a36fd664b41ed7c0e731847d719ef1938a0cbbe33f88109a0592af6eed8cc0302047c435bb500683066023100c63ca01e03f926b02508991c6b16545c8bd8c144fee324075f65081617d975ae31eedaf74d852c29eabe433c3909abc202310091104dfea5c40ed6783e44fa02edee83e14bc27017c45dfeaa0d633169821b6e52d8315854ead68110aae729957063d90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305c38b4c0a42c6a1b889f159f48c28bbedd672f072e257c921b62a269653e00ef5d34600b62f8a372019896213264b6dc023045af7e73efec75564369456c143feaa210601919f931aa44e09106d5632e8b4269b669cb9e24fa9f4dd7904a10c5a6d10302047c435bb500673065023100e4b468ace840650ac4fef3fadf12c0b6c1999feecaa8212720fdec1940bbec66c2163eb0f6bcc0af11f07955e4302b6b023028220d366915402daebb2af4ff76ac5b9a634643b6815d2c8e0f26922720e43874c0cd738b83bb0fc64165d38936909f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100cbfd43ff0d4aae94172ca44e5dd3d06f0883a84a93f10ba3fd9d83cbda9b62ad2ede82e372ea8f3fda187b1ff537759302301c14a2fc8edabdae174bef4631e7898adb7a39428b58c738cbe964eb271b9a8830f4ea58b96c93b4503121e38b9c4a0d0302047c435bb500673065023100e8abc2237414ef0437c459777a3073a9a1475de850c72d921b1401c59dc812da8762ce42955d37a6a7a320f1d5ab3dee023065bb199dd70a1663b9c2aefa3b068819e1c96db7ec96c635c2f2b3646bcaa0a1b66e4ca2d248590b8e81c0e905f8910e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023079b9226d5526f2e44324d626f41331636bdd42187d22fee04cbb62a80f05712c0dc9e213d56c99f3707e1871c1c94a47023100bf7098a5f72d6f5a81267d07be9cb0a19f66bb03d571d218dbb5d7f891b9b04e6f8d01410df6c7e95bf2a24c03fad3630302047c435bb500663064023045d45f5b1e966fd4eb63b9edf9600ea9cb3a94fad733a72a926509b17be143ce9239f6f24bfa5fcff261f93252f15a2b02306bfb3ad2f8cd561a9dae3da8a843e5c23eda98d540e84945b334685afe994335cd13e89e4715d66d76660dc2f0afee570302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302873deeeba2901b038e70ff07785e6c492a8d77651a458ff1d1a1ed36b54c3f9b1d65251b2ae3dc3899f0e616649d0fc0230025ea8939724967f2d85f3eb4cc3bdfa4b86aadfb263afd35d42aaf17885d7a6ee8387b5fe4342830805784059bec0260302047c435bb500673065023062f6469f1dda60a0aacffed1002276993f3c2dfc262624044e0e8b4ed4d12c014f8817054e8a843d8cebd298cd003cef023100d4693da26abf16397b5d5345783a15636b1c8007ab84b2b7ca36003c6c17d46ccf780f4df74b9f38ff9d1f0239acade00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009af1f2de8b7bca00c6831ea25a5a7a3d2361aaef51c1c475a3407df5c1641dda9569d16c1eb6c3cbaf2f8b8a83f3f98502305ab2d0e2e12f3c33983f98fed649985999db224904936e7ed7276f2b2de0adedbd8e88aadc7f0376085994879b189a640302047c435bb50066306402300add053865dd2c4b967b92c083a25ec862cb0cfe38c83ef775adac0e11980b4cf5b4c328f62b0fadafdbb755e4c21e6d02306061a4479a9cb48a11c113f3f9c58c1e0109a16651d68a48c4309366ab02187c7967ec6e564a66c43269489886f5e6e90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c14381adf6071285dad2f5f515984824751074c53191c43368b4503eb8d67de4ba9a1a63a0089be0f7ef12ca51dd3dc302303e36ed78876f730c82ecc30de3bb3c93e4833d5efb032c563385a62aa4dff9312c2d54e7bbc4eb2c3762034f9497ca850302047c435bb5006730650231009eac4aff945def54be46d2c6d90160985973391104d63770f4d2cf179735502935969e7d401aa42997a9be6dd214022002303431c4e77920a6816201eb005ac8e4da98ced50aad71bcf75f6f91a2f65e9ff05603a0ba59ab333f154bddab2c417c480302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e18bf074ea3e4d940511ebc5446b5c3a294504f0367acf705e73f02c87dee49443b96a30f40715c5c8f7392eb99d7dcf023100badc0e542bec591725ede5857349f861c5dabf87947ccc9ffdd5a445f1f2ee29ae7642b715b774aff1022ab319dded090302047c435bb50067306502305c9221bbbae3c62e0ad8da34ac71fabe757d639cdf599c93060638e48dc57e15b0a1479fc54e806239047c5ea21c1a060231008502f52fc2fb082ffb01ad66054b26db94cb182a16c78e6d4b2c3c93e0d7d4f5d753cb0888837896b71841cf40c735ed0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100be7e6cf32f63a03722db9c18805d6824460faec65d6660c2c4b5adf4e9fc386906cdea5cf3427ec34658f2d7cd576cd502310098e6b0dacd4014b5560017cebb6a302deb7b2783f2af24ea33c2cd505370852f8c55fc98ecf69a2504a702de00770a740302047c435bb50067306502306a604ab0549c17e364e706442ab608b58beb387e8d6b3845844ab450dea5b8d62a9030f05dc3ef31af5d1f6d281addd50231008752fa5aecbbd26cd5afc5eb84a1ce036b6db7b24c746bb178535ec24e23dabd53aef83e9d123503ab5fc4bd31cbe3f00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304e5768f673760b984931d878bb71590b490c7f5a63f4bd3468df996fa8b61c5e04e584a4b29dc05da1ac9a85bfe77f9d023019871f2a72da522dac40d189854b67b92535b8630dc69bd60429d82bc6c1442787653450eba1516accd133c2ed6f5b020302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a5ca3291d8c0f53da2f54b894d3026a9a2deeaa93d9f588579c8e992b3955ef13f9a13f6f337c5847fa441329960e2f50231008d95952aa1489bf255847958625a28edface9c546cbcaca7b90050541fffa12e91a542f51db826a545595ba4444a40a90302047c435bb500673065023028e2b30b73e834ba367211d9520e0b8691e62cb34aa8a84c84e97ff4fe9cd3df56a19f359552baba64d70ff79c64f988023100cb126ca1f7ca30af5eaa3c19a2a08ae7b67fdd599ac07cbb6d60e1799d7ed7b09fb18309b6168f161aa0c734fc2c30d40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023001ae878cc04baf7bf4cee5cdd0a9862481080fa06488d27efe54481a30d68f269733d105fbd36442a197ef20cd79f1590230785176da6e2659dcb22b0af121176c59aab6e9a43afc0a346ce6c69a7d3698722f39f9b00bde3279f48af83ff74749f10302047c435bb500683066023100c5e566cb2c1f84bc17d025a623b99aaaff5c65138b19f78e17420f8b1a4f84c12c803e9caa086eadcf1476d4149ea523023100d95b4a3f0542ff0c402078dea971e4c64805619970822fadb8c521bab2cd8d64a701449afc23dbb0481f0c9bc6592a560302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009d81f9223b005a1ec733b3c363cdb3a738e5f34270f5f0b0359a8368483e9b149eeb1688d27a5696058af14040b3e82a0230706054f24436ff8f31cf3837607100e3e1f08101afd798c0d763adb2de39cc6153bdec42307a8629fb09581b07c925910302047c435bb5006730650230696d914f55795bd0ec3b75b5b91b2bcbb74e6eb5d409e1580bafb534b3fbf58ef19f3da935bb6fe0441981d3cc6a7fdc0231009da072e5c89c1dcc0f77411ae53d6ba9103b4f7082360644c592b8978901ca858c5e9babdf0d75231c9f94c5061ecc6a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100bab7ac18a229a38c70334cb7dd7f5897d7064189505a13857db14888030fea72471a5ec30f57c7cd794a8e340bd8ae9d023100b69400da004a5b94d0814f9e2b4ea534c41397d6b5a191d1af997e1410ae04230d793e97c53617135c34e1c10599b9b60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100addda4622410957059d7ab14b45160a65fc1634267d5df3e1d527af807acab601c4b2b9d792edb4554d7c39593da1cfe02305a0ff784844a8a0e29ef4a6b0f99ce92400f2254ee3d74d1077059310035cb10e53640df7b21031defd9d013a59a62270302047c435bb500683066023100886ed42dbd184bf0f393d192f83600d3aa63d34a435fdd1769b9ff5121b03d5f23d7bcfab869f0096f10e506d944e737023100f7cd9ddee5ea4ef82eb1835f571c4211c31b6ceb612e690d5f5324c0d515d0070d8e9814ff026f1a4b02086da1065ac20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100fd9fa6efa565025dc22cae5cc2a9471b7ce1dd1ecbb422f21ad7a553370ff1a798859a7ad7f9e716b9d3ea540481436d0231008d1e296402ab79ba20938a951c58cb820419817136505fffc2096f6fe001cb9cf2eb3ada9513f10f464b3090d60568010302047c435bb500673065023056674ea7f20cc004f94280ca7dabb91fa637102737092487e7669db93cdaa2c72d8c1d6a71241bd3a63c4f80ec441899023100f932b8737c5889264167ef31dbfdaa2c511b5529cfeb3edc51bda3da2bb2180b9b0acb35aa5f23380fc317d824b39d430302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100dbfcf1de2af291f731d4f128f0ecc7a652ceead7fd562a766b037b95fedf903682f1f235a6784ac68598ca9cd750cd2f023045df5fef2fc2a2d67ad641fe1407ac973ad573896c0d3a749d40790071c143b31974576ac5c8e117d9464fb72cd64c760302047c435bb500683066023100a1f0e9660ebb6d918be14ff25ff4de436b3f1b97284d853b6c680bcfd65b222492240ae3ca5e005bc7be90966fa05f94023100ff2beffceba69f8416ac2952be809bf2b5e897977bcca4d3bf061c006ebd0ca531b358e3e086f828c7ae8048cdc546070302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009995e6b7474d956c8da6ec84f371ebbeccbfdad10e0b7382560edcaf56ed9ed255c723c687085ead08ce653b27870562023100c611fa778149aaf0cc7b8c7e46670c74c4bafeb3bdd036ca519b439f58fec5feb95c7d5b9045e733ed8922a88e4f68790302047c435bb500673065023100fd2e9b9134f0565657313f954ef9b7a02605fcacb848983d45c087e4a9e634a40eed38f116bf8e0913c633f9975a9e7f02303226a4dcd1ef9c1d2e1560a1d83a3371165d412228563a916b746b2b0714051b783beae0ded376051adc6440f98a7f070302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009dfe6cd23f8d1e514a8925f70010b18f8748707c5047b66f2c409724669efcbfed5bf3460108c94561ca9f1146ccf681023100aafbd6eafd9f1ed762f78c36c83a4df9dd4a21d176a823290251f019e3d2b37634d92c062a13a425dc1e40378b0175540302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302d8f671bdff85261862af21926c54228ffc92048ee714d41438f8917e5a7024adde91b7b67a91017c223546422f032a1023043d56d131968f0220243fe1294b1c0883453ecab258d8903e8a45387b8262b7bece2f0159ecb4a954de1b1188fe12d050302047c435bb500683066023100cce31fd021bdb5a1d3a54ae9b70bd262e157a5026735a83c8ad254f223f589de0b6a21597f15f584b97f45d7af1bfb49023100eb6899608930da7bc3cfb31f8edb74c77d8450f102fcbea566ee34c7cecd4ac4f36798e8c02b8eeebba021923ec08cd10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100df8e847fbd1ad7e019c6c0891e309105aafff976e1166afc9d67876a68244424d0a575d4a2004e323a01bacfb66d6473023034bb265a7e85b3498ad0ba463eec5cd1e17fb5c249ef2b01944abd8e30a483b83568689785829ef133d777909c134dd30302047c435bb500673065023100e56520f2aa4983bbc29f3f308c859b1328e37312729c1b1c8526a81593c756c1f0c6ed4c76ff8aac3e21de9e223531d5023036ab8a520ca09eafcfd3f682aaa39d1c7496e49518eb4854a83148a5dc946b116f98028cbace95d5cfc81601d369a0270302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230344fce3244f02a583e1d8d8f6aad198935e1ef44b85267c409fea2043b79ebc283003c0209c58e37e392d8d39dac0b0102302cf8a751723c3d5365863c5d6d01d77fe23ce5fa2a0d63ae246a7ef2186b7cb12baa2a88ea02d7e43439b2e27bc7ed650302047c435bb500673065023100ae0480f6527a9b77d7b7fd45c792372b1c115e6f77cf92db348cda2f035f5d1fd8af44eeba8bc28c2926eb5315e6d093023077ddaea627099bdd4472decc36f6b86206819f6744d29f50ea3237c3b40a9f31a97a2b2a631ea83f800c2d957efb61040302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310081651cccfddc41ea40b538c10e6ab2bc2159a20d1126fac2d803eedeb87d95eef3af17b15a06a162479caa5d913b2275023100a9f9db6cb4abdd60888ac915e97856d85c60a8065a0bfdcb09462ab32b69e475978356ba16a5ca906fa96f256a55fdfa0302047c435bb500683066023100b6ef8cd44fd0b1946f0bd7740bee7f006c6616fff8492d96f48fd1ca39be1660fc6d36dbdd3ce64f4544739c16ab3f0f023100be92ff84c64eaaacd82b21ebaf254169ceafd91ce3fabddeba3b156b52726050c12dff6d5dde832c3caf374bf24c1f380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cbd1515e9f67ede9a41ae68546e32d67567699a2890abef59da146c7c8ec18f78f8df63a5d67de2d3503a3ac88fe6a86023100a42000d718379dbf39d4e30345340f01d2d873b857cc1d0f0e2c149c6a5f319dfd409d89a82ceb2f3fe77c9a52f21bcc0302047c435bb50066306402303d83746f36a59e2f446c16297b36f665552ef2fe48cb5762dc7df2b8e07ad8f1e404a520ad491698a5fefe4a1f4232d90230655318e8ea6c635a5cd6ab02a368be9f45c6881b539c9684a23eaad1035845908294092db305313cc671bdb3fd6b4ef90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304496a0a3c82ddc7dda34a1a2f7edbba0cdd129350ea4d450008c6ac66b7c41e5049c1632a3b3ee6d7431a52124ea417a023100d3fc7d7352924a07165efa4f1a70d935e7768219bd54cbca52507b650a7a5632b548a337100080c0c7e9d714f9d3f74c0302047c435bb500683066023100b9e1d25c44dbb6fe6451492f2e32fbebe86317cda23eff0743461d310b058a3d4dbf2175fc95c8e7483bdf4fc374629e0231008b53977dfbfca42dcf1ccf25c29dd057fe514af6fd4c3e2b2f8814d40434869371d35070ad2772be57e0f6f2b8345caf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ad1475abf015fe65a31af56fc0351ac834fa438c66115583edc6e435a0ecbddb77bb52896e0d0a0241b7fee329738170023100e74c712b9b3c024474732cd8e4af8e9ee95a54402c4816ff5be274403ef30e36e68918ef7621f7a8910dbfa8b9973ac80302047c435bb500673065023100b9d47aca9efa604783d6345bb9100d2cd94c1595f126c440d5449274d0bcd9481092e35424d3d75e1cf2bfa099c1ad3702303a495935c39505efdb322fe451dcf1e094c73dd017e6eee7db121f6c27b1fccbf7663f73716a31c7880bb340ce3accf10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303f297a534098ed273600cf32066be1d197f175d19683f812c69df8d3b8f5d98c097a5f2bca903166c4e7c2773c29b453023100ab280f6fbd82cda955f39d426245509571f115ca8d9a44e2441bf65ad5d8e4236abe9da765fae48744e88880c70f7f0d0302047c435bb500673065023100c7e8f8bc3aabb86e8356128df00f4727f30ec0e0ea76e2a77611241d4a8c3b126b150f1875939ecd46ab20f0fbd5c41802301bed1e27c3651f028a95cbc88aa445f28bbe7957bd8583a622388bfd4ab4c2a07f5f82d5f85b4293fe5eeba553cb272e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310090d65df658b5b07bf33474ed5515b6da4304c280f4ec8179e1faabdcd7728e9021c71c4927df27c3fd301a0abddb9d32023062663bd448c5deaac081c0a85a293deebc68ae3481b757bc1ee5cac93c16312c4362255de19156a638bf06f45c0788fd0302047c435bb500683066023100a16731de35be3fcc59cac2010dc5d9fae7cbf06220e54a2eec8e9df05ae5242ff0579b4c1075e544fe988cf81e18e3ca023100e198cd356eb2622fd91554e04ed8ecd1259f710e03643fbeaa759b1554b984766a676bb272923b6c87faa7d07d8a65c30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302dafbd04c76aa26f6f4ea2bf47a5b59c0812d7cb802d92422bba697363417d6539b3c89a69894b9fd52c59d0dfc1deb6023100e404bba7f3436bb7e741974548c83d82e6bcbb76e0f21c58a50134936c26e90983d9199d0d4fc790aa4393f31f9703500302047c435bb500673065023100cc4b7e5537cfa078a007754b5ee1139c0e94e2e8c022c7b5623630473feedd61503568585ca3d316c4e5b029151bf98d023076bcf12892c71da30ada02c692ebe89abde2f109c6bef54395dcd819f3c4025a00c74fa459ad0619855b39a0962a00680302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023052728c5b486de341b87c0f30f3749c51cc7397ba90e488c1e7388b333be3000588a828efdf8514a4e541bfd6cba282000231009c2708f7f192d069c40ad2a6dc88a8621491519c299767729f5ac7812d7ff56128f705936d226c78032681bb478853a70302047c435bb50067306502307247ebb0df47481a7446969de25793326ab2e9cddd40830162e3ba0412f0187787232253bf54d7d1de66ba534cf2df8b023100b4b894a01b7c24254ef41c5289fd3ba627ef970f82d7aac066ae4e40abf05fcd0b1dbb9416be685cd0ebce5819f925a40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307cdb307b19a7df896e1b7aacfb35685a069121ac7ff83e2d93c3ebdafa94a26be7feb9c6f4c8c7ce17c9596aad6ce98b023100ea895b4ab02851eedc7a03878867b3d03388e8c2095343d67135c8ef4fafef54b09428b4ea4d6e31f6de6c9240511fa30302047c435bb500683066023100e50c22e1f35ae593e512c775276e2ec7ad2e2fb8d60c1331acb589856f234922895af7809415a496527a626cb2872ea5023100d8588c2d4f571e22d839b05b1313271ae8dc27b137d73bb935ae728b4903ea9bd4adfd593f8ef6e8fbe184c24605d4ad0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310096af4ac9ab75a039e43e592f23efaa1da064f2567e58aae1296937aa316676a0393ed246c9374dddd6f85cc608fd43b3023048e12b0a742b2da50f4e5abc4b04b2c797d6051772d4a596eb0f5bf40d38b35ced7448e3b85c1412a752e0d74d56966f0302047c435bb500683066023100df968410cb4c514578456b7560528d84288b5d988c9705c8d8b6d312de26cac10d6fb52af74a552fb436d3764c7c99ac023100a18b96e967afedefbda2f638b3b30f1553585cbcbc7b877a6c1e65e735f6125c3a25bf73979a6bb082203912e69074f50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f61efe05c9784d333fef24fd8a99a2c1783b2288c96f131cb6dbb45cbe745b81af16fd443228a7134e00e0687be8122202304f48158d515756ab7b68bfad1969f197d0951ec31eace145d2d196f6043f73e73a3ebb903db77489aafbef801be93bd00302047c435bb5006730650231009fc54cc3b83a44fd7e61abd0b6cb6de0ebb17bc96a23ec3182c8b6122a965491bfd49714bf8dcb61058c4a8e3c4d985002301b8ca73ba04ba2ca220624770c1837ebd008ecb3bd92f2ad929fe283280cb0c6a69f35a464f69d9b35374a2907914c300302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b978753fe2ff415669ca8b8e410d2a1fcb0a2595192b5aab5ac0ee42999d4d157ca3a0bb07321008733046793d1c6ac9023002fa4eb8e69b88163ab5476c5a8984cf1c8d8804b4482f3adf25391715577e32fb386955ec98fb94f3edebe7c6ad16e40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f91c2756d893b9ff90622e53bc090e14e55a23524b8cda6c96f2ad43122fa6544ad4ae690d4a27f13fd029b4888e60f0023100ea3e5824fbf5a379bb22063d6b3923b05aa7bab07d0d725bf8970cbbfda5fc370677ed8e6613662b2ce2569c85e02ff00302047c435bb50066306402306459f9394e967af9749fe47dce4f5a1000213e82a36c504bd3274286b175c5810b31688581e84fa268afb4e33acaeb88023028db610fac2c159f21d6f6c5e6115b95a4d026c9d8bdf3c7c8f688b6df7eefe5ad9175d6018ac2907d27f44b5bad0afb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310086d2a6b3a4c3e871c369cc492d9eb599bb8823ca3b826784b37eb97fd7e81b6365259b6ab67eae534efc0d61144cca9d02304f1c823f18c60f69be72751026e337da7232eca37db4dd2ff6211d5e939b7b079972a014c5d82c192c0e68f654bb3c9f0302047c435bb500673065023100999bf402f0d8faa47970f9caf930126c922854131d249ef6fdcbd5f5989db0e8cf2d254e94112a06ae9b7d2a93beb86f023072e0f20fe935ebca41af5c3bc0e9bc555cca1086e7652eca1dbbad8fc58d8ce228ac92aa5e385f65d2137fc44c7a26350302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023020b5ff2f2e4e719e2bb3fe4f862ef5ab61c9280f72e6485464bb0f1a77060e694f66435522a9dc634b17da4cd847efd7023100ff3c86e701afe45ee89436bd5ac5e7bc32d3979c15a00c9be3a6b1af0ecd493e3ee5251fdbc22ab0d7165850dba1bcdb0302047c435bb500673065023100b968643185c9a1fc2c2206ee1a63e5460d6060f11d5c52b268dce06eb9c3b20fd3738177667b3212b1359ce2d71475b6023045009de311650ea86d5d96ef148347f8fe45f17b495258db16422651678f4d14308d066c2372a91e2990250329d8f44c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c102efb2336c99b41c1bb586a6f5880fbe1eb1156adbd067c757ed8208c137252edb2e6fd28665027ce468077f99d1a5023071b46e6b9746bc427447625ead5de657871d158c2f56ddab4fc42dc5d1478cd32b35a052760a3db60be8a19e5aee5bf10302047c435bb500683066023100913336a6de86b28a813e790a80b90be181ed352c576587655d35af0e0eae852fd113e500cc18cbd00e9b3cb7d848f506023100c1ad3fa3b91d18b28920bdadeb45fe29971dd6ee16e57fe6619d0cfc07ba26c4f38a64da5a36f2152b43353168ae0b780302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230768e03de764559ef21eca8ca0d060378ab34b1a1c63b00e7a27602fe710a1c9b1a74c4149a69a381897f32f4ff468b2a023100d2766b1632932ad9071edc398da21d7a89312e3d31495f667fc6cc7095ae873818e7c3a8f95e05f5d2f303283ce4a3fa0302047c435bb50066306402304a722c6a8d4d428829b1a7a84f7476ccf9802d6ef5f172d21963c3794b8fa650b1cba0e114f441944bdbdb25c21d1b43023022b739384540967b92dabb901544e81b7d8737df285834e34071553ad3aeeb105c3e1f6a0f9a615b8bfad4303af91a040302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f17d8a0353174cb28136178fd2eddc379447591c11fe881789a76e8c427c5585727951759cba5c894c1420934af90c86023030172ae5fe2d3b1ed161212747d218aff8b8556e14efe256cf1a3bf78f9722bb17490f3b54e6fb4291ec011aca78e0650302047c435bb500673065023100aca00bdfa07600d3bed6c5c74d5341b15828c61fa1a1634bd2cc88d3001c923f769066c34d45c1074140e15c5bcdff3c023057614e33c17b103b265429a2d8ae653b4d6c1531abcab1dc88aef28856d8eb1cdcd85c11fb322f80dd13cc0f8041ed1d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c734ec1253e9f5c1f2f8e11426c3c745b653f2cce228fea97895e91596ff21e232dda2b428e1f3cfbc439d67fb5ffa75023100a44f4360396e989610736426dd3724244713fca819f3c779701a830e5b2bc212fffca9d193622f4f2a451b12b99bf11c0302047c435bb50067306502304ebda90df6778f2fb0c0782f520c3d724ef0e7a202421403c3a37a6f43306e4bd668dba58e6afc5b0658959356775a5a023100e52d47d7c5432090031cb61742a5a1cd0ef319aaf6e89221b5a98ebaec80ec991987aaf1bd31073f366d8294c6b271460302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230062c250e946fc1a5ebcbe71a22f1c3b9fa35950b1d9fa6df37bcf4d91f8be92ff00d971d0eb2fd96d20f216f1aae65de0230245c65296708b69a914c01ce5bc6a97902a9dc1f92adb8481b9c8e624b5af970de1a70520680be6f891317d2b64e23200302047c435bb50067306502307dc8e84ccbf0da51da91e30c8ae13dbe8afef7c95648af72d9affd4644c4df0fdba27c2c2f9ecbabcff1fba57ad3871f023100968538a7d8318aa8bf07d324e2a62d28acdd21355290a89eb1afcbf4ca4aa271e3edeecb91c69edc427a3a9807f1a5a80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230074f63e582c7f82a317d6db71ee91c10cfc39a7a05a7abfa93dd467f5ee9240cac8dfda06fd2400cecdeb5ec3f83840c023100abce9c91c6177303c1217f08531cdc4b37bf689f506628f9f3831f8dd7210e473a5aa4795cac5ef53f2a2b5f08f5e9b20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e3a64cdb4af3eb0f911d2af79a1950401a558bf9d48b703b77f73804ce0d05668a44ca3bec7625fb5b6de46c2a3c51b8023100934ea77a2057cdd254c07f368f3d65cb863ff4f3bcd1dd6a0f0266de8620c5b00abfc7ff1522cc355785a5d30d0a990b0302047c435bb50066306402300516819b986ef5c0ebcd6858de8baad1b30568e742e0c7a032b0920e4a89e9ad5b1c8d8e7fdf83647b40661aef5e081e02300f6516027203c2df5092e70fc6a092a555dc58d3ea4e1228da4aef142ab2803378d7f20c445fee47a2e23c84646a878b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310081285d586dc1634a03ea3f1f92b7f1fae604efe952dd82cbaacf472d99ea04da587fc42b335638408e078ab1198e988802305eb7e413de093eaf19e2c956d8e2167e2df7db856ee83abbdb07e427c3649d8b2153714c2f2da573b618ad6017ca34750302047c435bb500683066023100d0c5cdfa087009a43046f138a14df0d9969ac48dc9ab2e2500b1eef912b2583f08c752ea6d1daceaff6695359316c003023100b04b9ab89945349ffe2e818a5ec2a4a5d97b2943366cad89381f3efff9f8e27f85c83643dbbe160694fb4a97c9ea79c40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009785082d2945f1a2e7400208113965ebe821dcd73bc8c0e7fb666acdbb08ebf54cbec1f259108c676759505bea168d73023100ddb4c655ab60177cb108f117a21cbe0faa842380b9da36a4c93b7592b317e92f906fc6d11829810476c62f2a9dff2eec0302047c435bb500673065023100854330cd9a34b8d61de88e17144a0207e934438c4f6035495362b51953050ed7977b85f68cd63595b87704ffad18bf75023031c81672483b76affc89c1673ea3ac1f3d6b665afd0842f705028ccc230c7edf7d5981fdfa67a62b61442ba00bf47b080302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302f5e97e2fc0ce518e2ff9d42b8250941f6f6736c8502150250a1877e2864369d5fddffbe425d271e77db97bf986bf4dd023100e7491de4d6ff9b37a516f8a5767fecde8281edbbbf9c42321f4d8f52fb15097f71b43a1602c135a078be1bb472fbb0050302047c435bb50066306402304b59a24d35cd9d8ddbc05e7c7154fa246d6725685b13a773e2dc254544af86a03918eecbe095ea93510f8623418b5a7102303ac57c58cf1e42c7cd6ec9bfa837745327596c14c4d2d9b959cb950b2346caba7658736a3a1d2ab763d18301c811f8f30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100deb3864f23ad42cc7e41093e8bfcb03e20b84243171e07edfbd9773e7707f9fec5e53fc03100d369f20f1ee0843e7423023100880435c14ac5bdf819dde5bb811d6d52f634e3921fe5304a52c830b039da1438a8134f255a485888f4f689d4974d97620302047c435bb500673065023100f570cec25634a25e1d59c0aacd7874668c43d7ffb15b57c7abf5e00a6e4d6296c287429ce5d305b37e6332bfa20c94e102300142987963b7d98af05428e95ffb687abf4ce2d31d6cc79b2f8ec5e77d2199801986cdb39be81df58f42bdd5c20513220302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e4ae25c3605dab63690ce96e52dabbf7ce4720ab75fca13c532b7a1db74e164de6fc2634fb09067bc5732e42c79da28002304f599bb33a6228d95a7f06def16f72b1c8fe78d677c24e9e187f5e1ba6ad0e6bcb44a20791d478c2725316e56bd6c0bc0302047c435bb50066306402306a2b4a7c5afff9eb9602b773a60723ebe274c018fe52cdddd3199e0390928fd229573a67f2829360aee4729f0c5d75d702302e27f238d105b952f314004cc5338297b8b09babc9821cea3d15d051a66ca44079a564a661c70a589e27e2b3b46bc21d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100999f49faf48d22fe4fd9f7c376db6da0fa55ff5cde9797d5857a17f5d281b64b2c0bc5f553251b01a3efa2dc90a5d07c0230648ea33910787d0178aeaf4505b33bd85709f165527d4ee4dcf57b291f9b391c970eeb8863c08c3bee83c5cf3bc57da60302047c435bb500673065023100e73f2ee0e7cec98ce8073ed827c7eae9a732d35fe54a8aa5b2462425cf724f8bdb4cea1729f63699c21a36c618dcfb4602305a60bed0a6232684239ef4f081da0997f242e2bb2e3d4e5a1e38bf0e152284507ceaa3ce8def2e28cf4b3bb17580ef580302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303c8089bad9ef2ef4d45042a808ac45d790deb150ea12d3aceeac2f6677050b4ddb246f72ec31140d9f3c6cd1ba974a2d02301b1d5ae78715845ed70f805b0e44d1086f02676305e3da0874a3a93138f740f4fbe414f302203ee1baee4874ff5304a00302047c435bb500683066023100f3536160a8baa68ea33b42a1af3d1b4848bd3c79f2fff3c038a8be2c7eebfce0546087bd9aa8feab8e84af3e6fd270bf023100d785724e48bba980aa80751c806229d7c6ad6271fa253890e46b47fbe3ca98a28dc5ceda8706ef26e91ddc40cef9141b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230162e6b7560b583c7209b8b36e4cffbc82479e81db25b226b74f4c419574244c4068156aa5166b4d1c18ca6a95faaa22c0231009a4ed44b0c1f793b25da8ea29c146d496c2ab299a8958c24d3f4849fd06c811de5a84d47c3f798cf2bb3f8456d31451b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d3b035ccaaaa4ba3428757a2891d6796bdd0f1e6cee783458ea66a4096b62390a869bfc405f0ab2c98a33c4b65117fc00231009ce33663124a19166a3298053d19ceb6545791c1e0c1f8e0bf074016986ad80ec254c4ac5c79001e7b029678ff051a1a0302047c435bb50067306502300e9288451e0f68a05c14c30e2c804b7b2631ada645dff202721b5d49ff9b07d75aa22d59da1a06d3ea5a417c22a72c7b023100bfd0ac3ae7769f7525a1d8cc230855dee0964891650edaefcf43dc570554e2f25c241b10818b5abc250833bb0b55c6aa0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ecafd2573130e3201d57cc0fae1b99028e51543f53e1ffaef67f32b1ed0951d3fc656e828fc7e65b4a8880648a089d0d02306347f767b76e4229c0e70e69033606dabf9c02d7b441e40c0443ae093524b07c657e812487890d36f0b243b7b5399d060302047c435bb50068306602310082cd2f47acdbdc5e26cfc6956c972b33c7588912bce40e61cb948e48f3b9916729860640a41f35efe26288881ec8996e023100e73c4eb97412f42401ff021ae639f039dceeb153ee394014623cc639da3fcc7e793176bbdd37cd04bcfd6cfaa0504ad80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ebce6ce49c539612968fcd23a7d0fe785de0c5f31b1dedfc77b2f6a8109f46114c47b0c2931252de33ee2be91451ebe2023100aae889f2544b1f9256a0a097c8aa19e7b99b172fb2a11eaa4735a01caf6e54bcfbc74c7f8d8f82b302a66945c6db108e0302047c435bb500673065023100a0bc7d3a07f87cc8a45d06133449948c5f2b5f33cbf9660222769c89d1403eeb8e2429161c928d42138a64af1fffcca902302c8332c7cadfb89e497ea18670881fea407741269f364c1aaa511410d0c16bb68955d8a3b9fbbac42d3658ff7fd409450302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b79138d216fd26485c4cb7f193362e08ba52da2a7e91828689eeee4204cb7253df8dfeaa11a23a463f18d97cae198b3d0230356a16ace94a03f87ae3c9dc7582da16a170602df49983fe4e065d292cd8271f8e0d8c5ad20f9d0bb34f0a507997fa4f0302047c435bb50067306502303c7ef27e767017062b36fc29957cd4c6b0f000014682681dd654c1326ebd3593d3c293e540c477aea5e623ff5b45033c023100ce83ac491cd7dba1367953107204abf059506dc66527ffd115f98f2300a5b3f7e4206ac21440c2f399675bcd1620c2dd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310091e24151bdb10ce445e2f1ec59321267ab7789ffcac20d549b74361d545c41cb3d368ab7f46dba15473122389f1efc15023100b4e98a18bbd007c6a426a5c2899c9ae4c7c9ff07ae100fce48fc71e7e6fc90aada17b7e8bd72fc1280ba5ecc17dded670302047c435bb500673065023100ce195975d5b16c971432074cc9fa1943a16b0560c541a13d8043675d3a482ba0222903b51286dfce469ffdde6fc7dfc402303f39b7a94cb4ae30badfd753aff5525aa161294301d999f8e83712d657ddd96ee972ca43644c4e2bb9e291e8bcb425320302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100eb583642c277df00f33870346ae3f13fce1afa79bd41552597fbbe17d630bf8fd20e99beb088f78935546a256065fc2c023100d868a4c7fd474ce7e707d4cd0e789beef8a084f1373cad4116f732a3efa4fa9b39a537c481937716827508f5ab668ce50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302eb802af63d3cffb0e9dd0c34cc019cb31ab3d8e23e6288e28ef26db33978fd2d46379172b6cfbcc13e33ae7f2551f22023100d2996aaa4c88e2cde13f823bebc654cbdbab8527845a67036f60573fc9bf18e3e4257d096d4084bd771cafe7c158b0ad0302047c435bb500683066023100c8c0c74027f46696875ad785eb186d65936608934dbbab3aea5e25169022a492eb20fac3e56c50a44c91a09dde3cab65023100eeb7e49ed11720802f92d7306e51265f3a873f0f7c0ca13f2f0b319ae0c7957d7ada289d3d75c378c44dc98c0e1bf0a50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100bcddd91af317c0538cd3e64289a96382c3d3a7a4b4e2dfdf3a2937b19cd6d75b5e2f66abccbfde57a6d8de9a5dd6245d023100bb82664dd5272a0c159ef5a5a6d4801722e2657e676443f41705a972eec1fde44fca2abfc2115ab8eb7039790f60ea440302047c435bb5006730650231008db745c6c2036dfbf900166ee5f4cdab927c6682c27a6fb0fd697e03f8eee04f93c43deb53d8c6977da7c0a475ed1ca30230593d60a6881ca23d6b9f111dfa290391c389a1a05ae3f48e640b5a35807fad9f6532128b76b27edde307b1b63bd730cb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023006753bc02ee6607e23bb33490d26c18e365f30131828efe09a78561ee23d7660d6535fe0f837e61a886bb39267fe192b02306b63a0f38bcdf7c0c9b78befdbf52c355e885e7f05bebec112e7fcbc4233a0d3c639fcf31946cda86068c735c854fb790302047c435bb500673065023100b1b208d84716cff748f63805c48328d9b4b9701b1a721dddc7e0d47ed7e8e7750a9e62f0caaef0570a9e73c4d81130b902301eddc815cbf5ed652eca43018574db222d54122fa8b023e615b0d5057dc46c37a17b0e9c3917543a4b32c68549582f4b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302462abb2c94dda21242c68bb8b66bb672a1359e8754c184810314bfcf6e9d2f5391d7375a03dc50bb3bdac586a8406b4023040df066d7a657ff5e06ec4a371b98f20ae3d371590b528224e2e7cc82e045a03bc7f829726f16e8bbd9dfed6a5b595d40302047c435bb500663064023003aac5881383f7db7928d0bd5c34a724036d42acbf4a2a8e1d45c9eff474900dff105f362ae2a7f0b266ed1c7466ec1c023043bedcfc25a2bdcaa11f029be680ffb41aa561e5b350997d10525fd645587d2cd5fe605962e2a668987fba06242ef55d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023011e3028a299fe49ca2cf14c92336dbafaf98d22a4d28fc4b04ec906e5d8d9635ed36369e8eae49236248acb905f3d264023100abcc85288784a7ab3f9808c1440fd7244bbeadb8f3a2851e49956b5e0a4cb6b30675c226a3fd0b4a9df376bd51f8cc740302047c435bb500683066023100ecf9822ec9c20feda4684c7097a19756c0597c152d999f1415f99f58b1d2a68d296be858b8d868885cd9bafad67810d802310080807d40342b3c37876ec57e01579dae07b99978712233395c9426118009bf0ad24cc3e096fe8b7c95afe6ed66fa48600302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305488569391d27c2dc8622c364fb73570c5279df9adb6dc4a7ce95059c6b34f9e9a12aa71b968ca4a3678091f1aa327e802310095a30c09dd7829bd5e4e17fe137775d985e32d5ab12a75c66f94d8372f38e8b295befc4ad0f75de9ca56d13cf07063fe0302047c435bb500683066023100a360a7171beaa809df5bd4872d6d9dce16d2151f5ab249ad0c8f05001153785a0793f39093fd46685a61b08bbef24c21023100f4d30ea398e3029e3f99e39614a2bcfffc38bbad48ebdb3256850dc966eb5a54c05820cb9ffdb839ffcd59edb5388de70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a8d528335710c5e732a4a6d633ee03bd06ba5d432808fb07b4011879586c7d73091c08b40eb767dc37774529b8797b8e0230308aa410c6ae2226bd4868090e1788164e7f9ca24748c5fade0387e17b5a55465e97a370e132e809efc0b7306612b9150302047c435bb5006630640230497c1f543561d985cf19f4dd2ae98a24a91abdd68090273a9a55dd87afe9325600d97b18dfcf8d04a68d3f7ec4b11ec5023032c2d32d835cb0aa272b48c49954553a8e7ef4841def659f26e7dfa749e6983d51ccf706ccfb164ca402aeb9de84b4320302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f1d1a004bf2758d57e2781025fbb622949353c9fb19fff68a8d2fd217fb5fb65a4835d1b235b37650c220d4b9fba0621023100f6119ec1f882b131a525e025a6f80759d95a50814d04c3b96ed4d4d87326dcdc9f35b00bbddcb80e8f807cb5e293a4240302047c435bb5006730650231009ae81723aec5a7f368887bcda327a45507de63c65429f8041169da818792bf51228ddfbf15c6c4dc43bf031bfb02b870023042792605128a06a650cd339cae9c48e386b7c7ab2f62598c0faea4d4ee01351a49a24668a117044381c644e9a8dc976c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e77828112f0ffea7874c3894cabdb6b06b630f52703cc90a0100ad83ba78a98e265d273165967378f08623e59bd9057f0230536b3cc84c167fc8fb82f5bd9c91c38103d24542f1325734c073dae1dd75c12fcd3fc5e6a39b1e42367d12d1be52c7cb0302047c435bb500673065023100a96ae2c20e5a73e6dc6c52349cc58cfeef2274439678ff007a6dd6219b32051c9960656a4761d794f58a5eb639b46476023009e50e18102ae77c3adc715149ff4922e92e01e519c387c1210e9c4344f4a2e3c30741147ca2c772415402eca284a51e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009cca4d4ad1fee17c5cd61dd6dc35fdac27eba5e4c91d7adee5597c31a8d26ab537657c69f7e936ceee5c4bd675fa4fce0230459ed81fda9e3945d24b1782d675c5f9d54a20ad64aa232d695fc0c2c1d0b80a49515470b6c87916c64cd6a250efe07f0302047c435bb50066306402300455a8a725b6feeaf3db2957b0d68e70256c6a00c34b12604a4bc95837ec4e2fea8d19a65478d34a2ac74ce67fb24dec023042d0f632eb908f469b71f2985c9af78b819f999bed9eb14a06dfb7ecccea98519724e0f17c93f9dcdc98bddbfc49430e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100805fee839618de3124986af8629251b3d2d32e63a6a46a62164f2f53eb99df8dea513d6caedb91d697fc9cc94ffb17fe023100ae76cf5fe3802f7e0a7f534b0558904933ad4cd1ccc2c53edf337de72c404d63427c1414d83784478ac906807fe7f5f70302047c435bb50066306402305874b1224ee624b87df04121394b0b2c5f89c0ed71d1e7def1c1808e69969942c4ed82a54a94c03884819dbbf612ff5402302197f83988e55185fbd9ed0ca778b1541384c670c9245dfaa2adc708c0037f0cf624185698cabe62e9db156fa8798a440302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b2636c04db80ed8cac6c34ac52eecdc2abb3c7e6850143bfb932362b19fb3e13408d1894dbae377a5f72cee7db6005c402302ae95bb565503020f3eaf3344dbe63a1d89a7df96a3a7da5febfb92e5f12d0cb40dbfdf99aae1541aa501a35ef21dd4d0302047c435bb500673065023062bd5eac798d267492f610c4fa9d3f671ca2dd2bf28533e7897600efe4fab49a3f6a06a191d0748b3d68081653d4fc61023100d05655bbb675536a6785ab8f0881be41fb712db1faec69cfcc8bc6c07f418545e5fbc5db10e284b1925258e2d9615d800302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300a11112cd7e3846da16f3b76c57f36ab5c17b1aaed2abc0174af1b66588942deed337f0605f1f6bc4f11b643c966c85f023100d78acc4a4b4233372e7bb8ffc16a9529310db6af26fb15189691671e546d062972ee7f439bd490b8251679aba1ebcc060302047c435bb50067306502300831dec913902498397a5c6450ad4141099e2818fcf23b43216ad9279c4ef127712a3a7dbaa3f222876c829db54968ca023100e67ce402ab74c721b879e2d9d5bac306b3e1ca49752b685946ba4d2268a3bc9a86103a531e98473434f13a4c8fe803830302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b04fd8a423d5e01675934516b59f7f4b43131d8910ef00e21dfaddb14e180f4884a5e40aed6a0f2c558daaf540464e3e02306d0250b4401386dea4aac5eac221bf5dc2ccaeaad730d468b1a55e2fac76f0be99e9b5acff3623b1be2716397c9975880302047c435bb5006630640230445d262acf397ad5ba5e871ebe989f94fa44cbda6ac5fc96db5ae638e0e0ab6fdb43564a7f39d2ca20bc5f02fd430cb6023049ca5fac674cee8d0a2f18010f4489efe3c4a2a0475fd827ab4505f52f50614118ddcaaafe44f536de728bee1506769a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023071e932121891292ddb02fcef6c761ad2ba4146cbe5b1bf78dd07a8301824e5750c60e1d1635ff386886c082a4650c8b4023100bbe8bd584ed489e5603a809e360de66b4cdf5f732ccda74d0bfe2576c40c3a890c3437cb1cf4d5938b3d3725949d35d30302047c435bb500683066023100a2168c75a9cc24a03791ff50d2dee73dd276abd30dfb2e40cf8bf247a40e61f68324bc05b20fadd209be9df4390e7618023100852251300a35096829ce2c5343b4108c9bfdad56e8182e97b8f9b8c2702a39c925bede7604c67329a92e89647111c11a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023002fc9dd8e6d6b4efbd6a39fe5ea7bbf1b9b3fe94390f11bb58db70b738cb3afe038726b1b28d6fff542caed71beb44b4023100aca390eee345d6bc3154844a60d97269e58ba43491bd469fe9b381997c22867c9f80fce7270804d641d7ab3332b70d180302047c435bb500673065023100e2f03f67d6206496bbb09c2ea4c5a0791caadf025f9bbdd83c55a708383e3b86829d1d871ec0a8d68e9d704f963c3bf5023024e425fdf9771a7c009ec5d71cd0678c582aa6f1b1eed091219426eae4414292327d298fd6fc40c9e27bff92a266d0790302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023023a7fb60b5b018e59bccea023889f3e119f34c30c2aa5fb47a6f0e2aa5056a9273776d611fa29cfcf73a67b8c09b49dd023057263941d4a5a40686c630ba2b67d6380da66ffe82c9d3599d741dc2ff63884da5b0d391098fe660eca75f76b914394d0302047c435bb500673065023100f3fc1359c908c623eea56a2274fd1cca3f5e7f62502ca642b309f5f91ba90e44d1d3ec03ea8233010bdafa9d6ef5d3d8023036bf8d34bb9331083ea72d92b3686daf58c0bcf04ae2a1dff9b873bfbff5380bc600e877acc0a55d58572622e28005fa0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307e7d22c6a1c256579dffe4ad981db4f70ba3e25ffe164105bf8ae4f7b45904c2bb10d4e36f41ff1acb4bd83631cd5990023100b7a4ddc8cc48638ac824a813c744a986b029578416800d03b74bd2a3c6f5160ed506942733a8355fa24bc42a34f009ec0302047c435bb50066306402302a74832de0b828dfafe91d1c81fc03bb2b00dd7313dc0397806e277e79b336c46d31602de09edf958c3c89fff2c9983d0230345326abc2b948c56c61b64405b17386c91b8fa0dee69d1f982a9739c1a9b66b96f845443f1808a916f9e07367dee14e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d0e686a726f7e8376f18d03911f4728d349729e85c15b7f44c7d191e0cae2bebeeafc212662029dcb2375425643c5566023049367808ee5625eb5721b29e19a1bd970d5cef8ad25246e5175f35cc8f6f5447f6a576a0c1a8e728fd173f4efa5d14f50302047c435bb500673065023100e2dafc5bacfc70daebdc71231d12c5fc8da83977454d68d5df920cef78dd9721ae985858d2ba3ab844ee4d2076c853f7023077e6245c61edc91b0f389b2f0ac349fae723774049ac504af30862672ce2432c6de9f90d1f04244a782bd334a244065f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023044e69eb41558fa208ac2d74d052bccd0b728c81073c2d64ed5c2449f420470e13bd2277a6402c2cb0fabecb89f0b31310230700fd352304b05e17e65ea52621ec1235d16a15a3cec4313dbb14f0b466704db02e069a9e64bb9c686e55e972596fe2e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ddd929bfa99187bfec38eced57e36a7f439924f426a40ab3db51aa416aebe579d0de7a7b350f9e37fdf0316429232b7b02300acd50776983f7fe900c3e79df37784b19358b327bb5dc3b531e74b7a40135ba7f07edff0685a3b5a283113f552c79930302047c435bb500663064023059d78471feae62ec4fb6986ea1aa9aad7817d3ce15e984dac19565251d7526303105c142634be02e0fc86dd650e798e8023016d2736559794bd00cc12a7d7d67a6858db513c61491ae3f501630728bedc6df2be88b2aa5c7acd62c2b6f47c81cb4e50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100964034f42ae049157ae159a98dc90a87076eba76f437902d5c4e3c85554b9a565d958f1b2a2fe89f3353716faede8966023100adbf445e807a9d799ca6c08c70b365f1ca4f555aa5b0a448890e167f7fa7b4dd380d97dc653ee450f22461a43e688c480302047c435bb5006830660231009de194f296d9ad72e3917c2b3d8c1fde05d4e7921c7cc87495cc2820bde5fdb18c4f594912dd65cffec0bad9f07d4a32023100c08d743192be425497e05978d303fe7671ea5a8f3bca06462639b0d82408d65f241fa4f1e35cb7438208f2e80632c4d90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009c3c1b7e070055e1f20bc7e1c7b097a70370ed4f7ab4cfd18f63ffeaa5bfcf090a9f068e4f86c40c40f0aacee5f120ca023071a2ef914a2ff5d8552ff55b8a1828d3038c27cea890bb4d47aa00f0ce4b7de80ddec51a01a9018f2331d41e2a426ade0302047c435bb50066306402305b914ce8f3e6bf496b6b43cd54a2ba07e83fc6808d4f19130b4677f625fa38de0b019acfa1458a4d6e6a7c72126e69e7023016928931da23f10df847ea2030655829ab9aa8c97a1cc50f6ab142dd3bca81366f480b13463656de5da01bd059d930130302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230205058fbc4eea250f0a1a9e4afa365ac28dc281dd9cfb5b6713cb4b74bf70f466e16c594086a6d7cb8369b88e6f3b8e7023100a909617b694e4d45244a39b36a0bb4c6c6257d7f582354326b0ab933760be0e7302bf2e296fd6064581fbdbe94c5671d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305be2f56cd7674477480caa7cc04cbc4176dc46eb9dd14f5b0fd3fe8dc7f55657d7e6d8bbc5b2cb5f1ed72e1833e883da0230776b045026b886db06467413ef79f5fa002c268a0c53057b6c1c8c7eaf71db56046b524c7b3b772cf54293224575dc900302047c435bb50066306402300e6f738976718dcd87b9d5f8d2515e73b985eae51ff0e21026baddb6b056ebc87cf1341539066a01a0b3e9033c54d29802305b1f97ccd65b8d51afb52f65bb3272a91744e075b541428a7c1b1bd1d8b5e219a5893ade1790a4a675c7d28aa3e096bd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023017c488eec5f83614e5aadde5a87af575f5786dd471812cc84112517aad1cb4531694e572c6db6c5f93daa0fcd229004b02303e1fa2c1770a5c73ee0e48ab82118585adc843a2c9013c5b49dd0a2e3dc94d2e744d8426218b72885553012e16706e630302047c435bb500683066023100fce7cc6d6ad3c47cd09238bbd65b083f13e15fd2bc018ec33ccc17e6efc8d1ad6730264c149a93712fefd4c395f2c2ab0231009a187313051b51e92218ef12fcc8d4f02f1db06f679851de97a098d43c2e73f8df47a308ee16dc6d9a2214ff2e96520b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100bf1e2f9e5d7e6ce04be85e83d2a1cc54f57d871f10d2ef708c869dd993e7f0cdaf2d9ad65d4b3e6ac264de4757d39db002310094a1ed4a17d72c550f2ba5887d9bec1b6ccccaf49332693723bd5d470b5458a9b0669338fe3521590ef4f301acd1cf710302047c435bb50066306402307ba5016410add25e2601695ab2b731e2f378e94b70add9aa33006fb07eb3f6a611facbf43c43ed401ae78522d0697a3102302ec361c4342c4bfdd7f93e38b4fc69dc8bc7f5ba0cf1d10e5c5faea7ab2c83e60e397ae3e536ce6e1fa35a2077159b9c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303a68350492c1ebe33e0c7b33e022ec78ecdc1997e3e624bcd1dce563514688654ca7a5b4c8b59fa0e89915809ce6f752023100b5b9ddf12ac6f480ed3088c0e9c3b5bb3921b39f89c1633c5b9df3608017325ae723ea9834c1f77c8b58e0326ebbdbc40302047c435bb500673065023100dbbb9d182f186da0b86f92826254aee9c17f36a36cc7b2659e0b95bdf258de516671d5e785385b5fa51f62c36d800aff023036a41ede37bd69ad21093b57b3ea03230b150f328b6a374e3939090585b90b3a67969a2268928664aa79bcb0d7f6277d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230308ad77aa0db697e0b5eaccfedbf1271f410dbe581d55bb8362587ddfb7c7a7415ab35a54a935ee5974cadc47dede739023035a003d70cbc3076e47cd932a96485349f0b58c7c1caf842100230c99415d04bd1695ad5cce54a2a7065b8ddbab728480302047c435bb500673065023100ae24a7ac4b289c616cc7283575fc2f2f2b8b5c8593894ce002897f40fede31e2ef3147ffb7c32e4a4bbf3e895c601e2602301970452c0e833c8c29637d834cbe138f333bca213020f10e9a924749951ac468d678a38f79429e97d433a3ad19987fd50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230045bf99e49b66e5792425c1567327e51f8641c77c04a16b9d3643fe41e4e3dda39303ac7a4f9acea97b8a526f724ba1a02310083af4bbd6fd64e38bdf3b2762dd66eb8ef5babbbcb98b6a1d939079a42dca2dce041c22efdc5d68207b7f547584c97210302047c435bb50066306402307074a507048e2419b6431782b420d7f5ddbf0b900ed78d7f35bbc3ca63c0fccfe8b8969b0826eab8df6cdb3fc60544b20230097d5e8679428f614f05b5209b1498fabf63c9811c30f5e8bd7a39fd36d2e277778dbdca662b143ab7017a9b97583af60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303cbbdb4c23ef49115776632498dbe8f306ddf7a0b0216ab04fe59046a8460b7a0509dd6aec569fd9b3c29671b0fdbc5202305d2ee1f659c733bfd19e8c4c92deceb15acb1c8725ebdf58e0724963009b2ccfe7a8fe35ae0b26223a70478a77bdbd030302047c435bb50067306502304f75a9f017e74c20533a4211918a21e1b5d7ec198133f48c05ddc2c0bdc4262e35501f6a90628b2edac899d9cf6106df023100b0e0f06f907c16f695e5497e8ae83989c13237543c0d18435a6c71dbfd1a66374a72850bf2c50000de7540a8f5fda8360302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c5fd3c52a54a219e0b67686e1d3600d35ecce9672403a29ad74c49cdd3d358ee51fb68dd455ac4d5fcbb3a2020f2c016023100bca7bba72b68b9e1bc5de8354d385ff740827399b87ab6239a090973eea78ea74253c7fc871693f4d3a0372de8adeb4b0302047c435bb5006730650230209c1ba9d3e33c7958dc40751bbb8a000b7abbe0e39f41167551694f82e723d7e04d85d59b1f90fc0908b87a3e720f59023100c8d32432f897c8e3ae25cf65f048742393adb8f50b6648c4f47c92fba5b4ea4f85783059faaa3327c3efc7a617637e3e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023033a8036fe97ec1c83f304dbd18fbfa57d1d20511d9620595b8b10fea49c5dbc9e6101602a50090c8f9d88ebf3e441bdb023026dcfc735fd74c99de23133895cc36d03c33b5f12740bb42c169417c0f49dc9dbcbe8348b00da133c7ab16bbdf20a8a80302047c435bb500673065023100842bd44abb12b47adafad519f7dacfbacf68af5bd4607e81f078c20b7c2a3675b749a01f64c8e6f6134078c697b62fb80230074a900962849154c2a5a07436790bc6d8d34796a67ba8efc422d72e5c4a4e4bec98c262e913d60f52e0dd152ddfcec70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d602d30323f135a85ba291d9c100e7c5f9f44a5019fec52d1def0095dfdcedd4e475562a4e4e213a7d66d9b88060c9fc023100f5013668a2ec8844a10cd1bfaddbc7d78d157e0b15c2b1d027bb3eac33b087adc5f839b2e242f0b71ab7b17c3fd71ee20302047c435bb50067306502304370cf00cbd284ed792e0e9b091f73cd83910f49b6cc3f697dd93c075149fbbc234807bca31efef9147b277dc3097af2023100c601a61dc16be0b64e755fe0995c378f159cbd90e2994092efe8660e19435d943a1767f3fc7e6639d6e5d559484d46410302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230402cf171c0a5a52b4ae8dc45213355b5f3dcf16f811a21fb0d88c4da8aca7bf9fb66d07cd73f0a7ea895c1d3173fbe02023008f948272a089720dc8899d0e39ac4c616ec510ad0d5e9cf44cc6448b352dfcb37df6c6711a051aff79bfb935231d0be0302047c435bb5006630640230785c1e3c7d6656379ad50b4a129c453f313223d9a22b3b2b60831dd582bf18af6f6da246c291cd3ba75f8966288e0edb0230728e707f22a81f736f10344bbb21d8995cf6729b101b5f0877eb3d80b8a426244a8493590eea5fa328b18d6b61fa68120302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023071cd804c6f0fa8a0bc2f1077134fe728ae5916fee2273e70d0c176dd55134c33d985c7d648680b3f4204597dfce9d8aa023100cb0032141b21fa23a3ec3a3b05f0ef22623978b6c26f08fa0f56c544acce82980b675fb12667b02a2c7bd05b4f2c71ef0302047c435bb500683066023100e6675511516d69a30b296b44c7928dd5123fdd4e4b6d684d97d625a4eb8d875a7a2ef470f4338ecf93cc950e2021e0f3023100b664c42626f69bfb0435b66752def71ffd36a733216dce4068be9a33a9c411a85dc4c4e6ad9be4992c194390a1f451c10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b0ca435bdade5c3cbf22493756ce3bb088158d4abe111bb089802991eea0dbd069dd364e3933ff5d353127dd6eb6e430023100ea307fa1760ffba8571be1cbf0161c688bfd5c0dc9ab9b102a84940df17f7989b406397721ef49e98faa97bc3092da780302047c435bb500673065023065aacc8ddd97ffec877a6e90f674c8f20e3139c8ef3824288d7b8d293f0a79ea840d8de0aa749f50af5cc86581953ab2023100b3c4d7da7fd0c61f1c6725aac370a5ab39e4fbb4b4623be5ac9cca5a39831f81eedb3062ec1e527fc5e412d8d04359f40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305146cdcbba3e3f06173de5ac2cf10050905b1e7f5733b2923dff400b4fa61691d22243c1e0b9c0f43e842606685a1e1102307f3bf9556f984374c6441c480ae6a4435ed30078ee2156a7818c40466edcd235122d00293fa6e11559166e467ca4ea730302047c435bb50066306402304ce21988133d8867d2cccd7f7926989467c4ce58b899b3a56b290248facde83451669e1d4e3439dce61ca9fd1cfddd5e0230185ea9bd67cb0bf40e8fbaa8f1fd61a1e9b68dfb5f630cca1bac43420bef25c452b8ae2553459f869941bcc5961985e30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a0ee558df535cdc7dbe376c624519baef389131b0aaf395419232add5e5572eeba50f3e206910b115c853c34bcc4aa5502306a52231c4d2e22276c23444058ea876f2284958db622fe727f363290c5c71b3200af6d2a773b5673f35229bad9fb33860302047c435bb50067306502307b73c8dab8debecb977666413a0b4cc1042efe209b41f4aabe0392cd29b44fdae7fc23b6115ebc8341bcef7f616b5441023100a9c60200141637044dbec4b428e0349e6491c2cd4949f27de968b3da93eb02013f477906a905e3d57eb1fc118662b8d70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301062a691c28b1ee89f77850514bfb8d672799ac9ce5b947e92f4a0698422bb7b81d423ee63a55980f03075ae781db60e023100e90676d8858d401c7deb0e66ef183eace481c4d7818b6aed36dd495eba47d9dc6ece2d88d9cc26a8d48c1007800682570302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303ccb177c214ccc392c1277d5ba34306803040877af0293cd8dd172b01a0e70ddbcab1950bb521f482295e30da9ba250d02304a4b1a4ed429fb8983809b47319c6bf734341b15228a23b060fb6ddb390832a938265dfeb8fb9b7da26d1255e8dbc8320302047c435bb500683066023100c6831c0d53f6d1cee6f5709b07fe3b56eb36ae88e8f58b02dc479cb4c52887b5f096c4c951e418433c2501222f9689b0023100c6c4b9af164bebc5a12c5ef79132a8cbb4f14d76ff48007f988ecdcbdcbb2b1257bcc99002629b7d2d58b6cb630e602c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009d830debaa0ca9c23df8d512d5e45b81ccbcb6904ac9bca00d992e5a5d01b779951a2a3967f772a0e225bf39bb15efc4023100ecefbc36fbd9df87e2ee64bf82350f4862608d8cd5b1bea74b3e5db1fae9162e52bb13f22228c5356df8e00328de46470302047c435bb50067306502306407cb836ff1f5aa7f588fdfb6cc6604f581c251151fa8a9cf733b5c6c77f5f4920adc4a3535c733a0bb4729815b148302310080ea2d4cb0ab104d23476bed8050c8d43da57b3d809dcef4068316f6121b0a96c424d3d8d4b84e3920dd6b383cd77a540302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100bbc0d4e2f24129fbd047ab2f60b06acd0dba56fa7811721247697f34d5d4fa429cf84cc9585b32bddd72e0eeb56b9c8002306247853e9f89f19f681ca1810ac66afdeca178791ee7a60d788b6744ca9a7bbf29b995f33e3b95bd58eba6e15b0a118d0302047c435bb5006730650230648221fdf83cf97ad25de24da2c956350b9d37686e7f5ae07804bc47581441c63e7a1821c26f07567a294f78d07e55aa023100e97034171b45868f6f59790065aec2b605012199bf544cf7b3d20d15d5e0fa273f7c4bc9864fa04cf93152f70c4938de0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e8ff6b8941e2048fa40c1fa883d269559447958bc9ada5ce98e1b087f9a02ae09e4cd673156679151ac81327c99576240231008808e524ee07f989b039e6b5a464099f3486eeb5a39f91122fcd63c30c561b5e05f49a672470a44cc53f7066fb6527e00302047c435bb500673065023048043975020d5697d112ce8ad9219073b073365537a40658db02f33a19e13d41503bf349e849c5c274fb1091fbcebca0023100a8583b502218534eb9c1c6242087b3dbf8eeb59d82a89c195ca7f8ef33db690915a97fad5459a7d0006525ab878d035e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310098a2fca6feafdc79f3ecbe203516af4ab369d41d8163f5487572d9bed8792dd10520e19b90b87607572e3a68236be22f023100cf2516f30021772a744240eec4b43e49eaf80ac4e08f51c32f72156ed80bcf84433852b537498d9b031400e7df12566a0302047c435bb500673065023100cd28e709420be8b15c0fa54577703f63ce1d18795598519c52957e19e28e5d79ed3757d34cc6bb08f07129da0738c1b502302f2640f22eb17e62e41c7de4dc8e30b95651873c657abf4a2d93cc5defdddbe83b1b17d01f0032324df0301e6f2b902c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100dff7d540509b3c65113f429211caeb815c4be020ace417341549166dd7d4b9d7db22641e5071b044ecf47fd4c0e4f9c80230612cbc7dc773a137fd30c66aba2b5f1937e71c43cd9805b9bd57315db6f5c698d89dc753cec6f620bfda87c826eb07e00302047c435bb5006830660231008c9762be5617c3c9589301196d3dcc9bcb1aca6505654e39ab9ffc942470ba65d188231ecf2074e9fa0fcaec6c82ec0c023100a8c8fad116a484a9bce721c1331e3e3f9a0bbee10b4c8957823b07e3f2c7ae58efcaba4a71ad200cf802879b2ef4a3330302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008a98597c7bb8f63c31e0399148234451047d8b797b7ea7d607108ad0310c10d02bc8350186c1c9227bdafea0881de4bb023100a885edf9165ff1abf5a40b8f3896fce90f909adfda962e4064b8a1fc82d0a4acaed9ff0f068d7c2808afacfcf6d358b10302047c435bb50066306402306b144c890e3f85904c4a56d1e6733b483020be0873229c222a8dff1f57e2be4071485e741fbbb2c948cfc390552fc4ff02302c9a93cb692b6028af18432b22fda921e05ce7854f7eef0445900536dde77430c7413bed4780109eed6878246a60dc930302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b606f5af7bf1e36ac17e1585fdf73f4bcbdfa3b74a844813dfe4e8f24327b7e6cce43be45d46ad3199c21ed07f48593f02305b17e1b85bbc5f86071cca844c942c09494d181e78f1f0bde914d0b9b643635b7c38465804fb57bd8e61007c4016c57b0302047c435bb50067306502304e95e2713288ac10444aac508504a5e4f7172aa1147545f3e508749b53c694ee42705f508c569ac766a7ca013ff3be04023100f9957eab79ae0b1a0ce3748c0014a8442dbfc6266e1e10d72cd242448a27c4f556ccfa3048b46e05e220bd59c183d9b40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100dccd1e1088f674536049e631b973c0713147eb3b5003db1e1867f5566a81edd066950d466cd688bb31f534e90ac4c837023100cfb8b9f0a7147492e9fcdb78d2257fcf0a1b3453b9b1827d7352d90fe0445d454205dd17f280907f8855e7b24894b57b0302047c435bb50067306502306f83f9d2ea5de1d53249a8a72e8e555c3c61b85b571ac9f4e61db69c16ba18da3fd4f37ad28459d9ca768d938636a894023100ac108f9a57c5a0ab3a6a061238e8908ec1176cb8c3fb2d1f3ae176ae920064b3d876ce2351857acebc9838f3186fa52b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009f9918d7b724fbdccd0790780845da1e1b85318dc2ecf1e2873782f7dd75a77fd9d13fb946a29eb593d787b4f9e4bbfd023033e6af2546bf9ce9ccf30bfb2d17cd22802dfee79561c69cb386a04a5bc77335585c3eb61cefc8e91291b0c4721f7c740302047c435bb500683066023100d4c370e3cf8043b09efe55357b2f5e04b573f80b27b5179796cbaabf5cb5548594bd5b0b1d91357f1c1cc1571570ae470231009bc33ea5f0954a3d7bf8725781e4d28f492d18377433b20e3fe285b4e7960badb8d835b4256b28d8485e69e662bac8620302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100dc1189cd5ef759791fef9d0a74fbda2ab947dc92b2e8ab16c1fc1e77889f5af7269ddac1d23d1de2772170138d1585460231008f56ee27f3339e394fc7b51cb8066b0aec99a2c1e8345ce405fa773bee66d3cb7b82ef899c7065e2693bf25c8d3b7afe0302047c435bb500673065023100bdc671a4bfd2620752ba87b53677a2f9b84ea20854bea9a08dbd4a7db7788308f2c6f222490cf9c932054b18e72b00dd02306fe5ebd3306eb8a0778f66a373f659faa911fa87bbeeb3fa958369773b7f0a83688a59411eb6cf90f5aabc14dc8a71580302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230735389dc226e7cdc5ded1db877c14c6e13c6e824550956a285a53029783485c51f8457dd4fc69ac8268a410baf5fc119023100887102f63532e37ca0706647ba5eaf512918c057d625f92684c99e7d0d9dabcad305eec99482431e236b9e66b6c6431d0302047c435bb50067306502304ce16878c34ee9d3734f1f6cac9960bbb69a586afa79b49fa39fd640ef602984400c81873c3e7fbe30587d944279e3db02310088e4d5a8da6664209a52dff0658aae711a35e7bf4d07513bb02d0862f60f152a705430e9fd8024fd55ac73b5323d03e90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306bba961714209ff01cf27ffe97dda530d6b0d23bc0f291ebf2297a3833b382d2e23970fa093557c132efa8e96c323044023100fcd9049bd628d5a399f88f3a1209343e0707dca9c76cedc7729d89e3e083adf7a3e03db3263699b06b1e8031b71972870302047c435bb500673065023100fe08aa9787373efa53a44d1118a0537e75ec6b559a08764e2f160905c77b60b3993a2596ddd30a24f1b4d9265aed37f402305c61db2a99d0292290fc34b02971a5a41a58f0198c9d27ae0da903dda889fe6a06ace978697809d9ccb8c40fe31dbca60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307767445f49761589228dcf41101703bd7705a32700b46290cd972ca82632c5dcd3eff6177e7f775f93fd32f918f52299023100999bce5effcff1a55c833cda8f3921fbe2ea388717799ec1a1e3e562357abfffe6b37aaacdeaf09a14d7b5c86cf3c0f00302047c435bb500663064023003389381b21142d44f0deb98322823e825a9c126e8de14fdf1d492650b65bc9c593964a9118ed44b5069880891a38723023019f828348c4d94fead329ed0a75ba2db9ebe622d7bbfb17375edffc19c2a86eebc5e3e169662a671e21c96615c0677900302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100cf0255bda302a8479ef40d395514a92466f78c220a4b91151a873d5e9e28e0da888f983a21fb47c303be307ea75d49c202306d9a02214e2a8c854c7b3239a9402443eb0ec4d2ff86ab31053afc9b05c607ba62f403f85810d3e8ac1d5e4edeed423a0302047c435bb500673065023100c197fc627bba0f84d945b5c0ca864f0007a9b873e151bcbd8f819316c500bed8a01a356ab7b8947e66427909fdcb3ac9023037378a703bb39679b84477093b9cec51563f578d404ac8ea8b4c4cffcd86c62868527d1f4a68b532465454fa2cc1d6e70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f6741ea75b7d62cef605e762f7b7ff0b3e5750d636e2a35c2f3fe43e283a30f69aba3a6846aaf6713b8022d9decfad2402310093aac627fde44faf2a43610109e680371a6b05e1a3ff7f2d94a771f6adee949591a80fc2381e49c1538073ef86c593850302047c435bb500683066023100cfeb08261c49c22e5475c03f3cd03df20c1771e1d87e628270410ee8d42e78ec7e09d3eabf7c250a3f1c20631eda5482023100ae47a56961ea795b9f6aa01a978d456f5f8a8d97865786a9006ebc5ae9e22921a0473d52e89598bf54945dbbe1c507740302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b5038458cdb2bfe263a7435f3fceff9171b46b2ec2896282204ee5eb1b772d46c5010539e1c514552f36d9354a0597b3023100b6d62072f53d7412233eee14596c0bbf5cb4b219dc627c59cd305a10994d8bcf4764f7f638671b42890b188310bc63080302047c435bb5006630640230634513fbd37a262986f5270aad096db3f75c3d5dd2a5d0a92e86c4198e1b4e8ad7ba8bd1d88ffbfd4f16fc9fbc3bc5e5023039a53954dd52ae89afb4200f45a027281824864dea6237cf36a83e0a950fe97b5f6f138a8cb2f3305d305fec9a09a4d30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301524a0a4b12d1942011bfe9ae53017e149fba5853e759a401ee1a3146766ba0956d270921b03c18e833e54d9048df37a023100dfcd92d0d1462b0b788bdd100fc67b871e1e8ddfe2531435c377421df57b77e627662f488adbd9ffb2325415775ce49e0302047c435bb500673065023055e7453b2711060d9779a28d113354f2ab4dee613393c0eaba889d0e7b7a1cf5191251d6e1da7619724789b4077269d00231009ef884df06f827926974e0428900a88e3ee7eb40cb0fb647b80e733d90b5e0cef689dc32daffd9e09e59fee6f4f788bc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302d37b345f582d0c4fce4359bcc4e0e8f25dda7d41ac9b79f5b2f3eeb772024f3620f386f42e5ba73c46ef539d9f6b513023100de1cd8dd48a65b7b23f9a6c34b14af9f3bf6845b03d85cdb575530d3b0dc3d60df88b26b645a101ba6fce672db66bb080302047c435bb50067306502305ad6d148afb772f6fa6cdc269e364d108b1d3257c6157b89e87aa965c0ce12043630e90b58149a8d3768f0cf71536571023100a2d68b1229cba852eee57d0f5bd9c139da6b0710fc6f1f0e4fdad27e35327c0ac9dad54532733cb6ba3216ace36ddff90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a6d7921ce600dca9f7a23c716454e31ae7ad8c217920b98a5d19bab2b2dc274ee9901c65dc23277650cd2ca429d3aa84023100d88d861280de0985ad67ed88ccff92461d24ca7afcd3486db4774e0912bde66555ca83ff956eca41e7ade61228f595900302047c435bb500673065023021e80583371a8adeff49840d5ecd880be58c9ff01d63c480917eb4c1c41ca005102d3214cdde474870e6aaee8701e05702310094439b88ed06379d0556bd9081f2fa433036de8a8c65409517841b4c6f54e17f850d056323e68c87b2a09b16bd4780bc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b8c7c993d8e4ab86cade97063f84fc3eff387b804141f7a24112ef7c4b1707b4c55541dc22604e3194237df090d0f6d902310082d4f4626bc74df187889c0b0b04409ffa85e7da3cbd0ff0b853c2dfb8830df5868e312fbfab3deacfbc330ce13daf890302047c435bb500683066023100cfc74ed4e531a9cf00f7fa3e03f8f8843cad9f881773e2af42dbf7e18dc55503aede247e0116566bf787428e917048a30231008cac9e82dc1b72cb7bc0516f12742262b0203b621347ec7d807880fef136f3e321e3c9b5bdf5cc969a5553f8dcde22310302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ad0633d4e68d4e0a27cd4b4833ba2c3e17edb7b70542cb4576776808acfa22a0e87de4b83593b7819c82ee1dbb9e6cb8023040c9e4b8c97fabd8107fc4170162db763e12cb639d70d815fa3efd75f935c2ebb4cf95ae8abdfa723b6c216e98f4d4820302047c435bb5006830660231008bf19c9b7546a7e0839d83bddd53fb9d83fe101bca626fb9f50b486b666eaa9b41ff23f3e69749761a1d38036d4f4d24023100c6e580d09c7bdd386db905737512ffb050d5be92636565e10c3e0f84596b3f1013ade850f687ed2be706cfe7e216272d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023019c50ce0e670179eab6c993684f2ab83e559cbb6f98e849073365b12a40dbba3f164025da62a6c7ff4e53dc633637afd023049426743e8430e295bcccc49569525a3a10238ed06d60edb9d5527f59f7f16e5d01d8123325e2c1ab32d3b3050c806b00302047c435bb500683066023100a9bbc0551ceadb410aea27a9f3cba26ff85057be6fbd2c38e3367920e85889f5448c5aed1ab6958ee79c80d1a78941cb023100b0db553d08f0564f66a62bf5186a6674eaed33c1affb0591cf1954cfec65c0be70292d18c4884409793e51df08f2752c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009b5b7143dadf55f4c1150b36395be00d0d1bb3f37f92a306c646686818398c49563ef9cdd463f207acf4d9bf6eb1dc35023100d69c6ac4ed8417d0748b088bb72d851c4c219cbd8e1e0304cd59cf197efea30b2f7a2fd5acd6aa50066dbf87f9e10e010302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e787bdd91e6c07430be8d57778329ab7f325a2213de7f8cf8c75b0f1d3c4d3fdbf89b3e0319f8808268c56b99659cb0f02301b9be54280f7b28efc35573eaf2825d3dd5fb84ccee9601fd910d16b788042c901f90583ffa22ac3e527c3037d2bef2b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023017aa2bca48ce1d9339f5e91a0f5403a5e525ad3e834b5d9b61bc9ede99856a36675210abd6622078214ed5db56aae25d0230054f8d31e71e042914b5517ebbae00c85e718ac1c72882193dab89429972f46c65295c1d7cbcab5c7f57750737220bd10302047c435bb50067306502310085537225754b389209b4543fc7aa69b2b4aedfc49e2fa90960bcc618e1a911f28cf18f99146452c51c75bb080c36dc3402303fc01779dc183e2730d28bb4c7d6b584eae6cf304cc50486edfe07b09117926513c3d04165f0beac4af9bdb4cc23b8890302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303e68420274c991e062c53dbc00e11ccd4e52a78cacdbfd4776478b8b05e7e9ccd951462467566a7759d54e3fb49ee6f902305a7cca707aa8f79a9a92a2854168e6af8e7527ef15d6f122e52f064e014fe1201cf130912b87fb9a27d364f8f1655f4f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023012c140ca7acdee5cfd1f94219cf8961056a40d4f0bae76aeff5a43df345fa40cf0c8ba36f15bfe0fba7d16d652b0bd4002306ee25119bb6554569c509430815d5b54ae096330f6b723e1a8252fdb20363da613739f09412087e6a667b36e090510870302047c435bb500673065023100d7f54e2fa930e1be3e14e23dfcea94217be707ce884a1f5c47a9c98f774eaf285e30b02cc0e3ddbcf063e2f6bce700ba02301d0d01c6b08fe14c70d900a8fd7183872b2fbefa1f6e9b68da0655fcc2dc2b24ece14e262482aa6c5bd642f126556a0a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305cd71ed0a351e46e43a6f8ab9cb5314718245a20be967f4106f9d89621a8f97946cfdaffef2be14fd71264e7f3c8f85c02306a2ecbd53cd3c689fb726310a6fd1bc3d9abf1849432094cb6e1bd54e329abbe8e8e9e9a79e785a7617e711f9cd7f2dc0302047c435bb500673065023036618ecfd6be91cb4c20d2dac7639be5230b2402bc6579823fd821e2314dff5f3a81f38612c8ba5ed6503fae3ebad668023100e5a6495bcba3f2a472191f04cfa8e6491d88e2b9dd31894bb6f33b8dbd6cec89e0bbaa2043c7ceef62b598a6c67df0300302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306aa396d0e25bbab4008bbbee532ec5498ac44deda51def679b4741d3027b0b959fed5f78efb913b3800a46d973e5a292023100c2cb64b74ad79ac630c1c5d47f85e6d5ba5c763349806861379038300b5c8f700a5865892f7b49dfdef1a94327587e7e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023064c9d3ab2f7967070961ce246e4a72a1ff4fa064e6b38eed2eafccdbad74864a57d32cab710d8147409624b61eb97d7f023015d0bacd72741cd26bd87bc5176d2ec0cd10235a079a52c59fe23aa108b53580821155337924523413221b35a3b692da0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d1e638797cbcd6a2eb0e4a90ec48a146008a10d031b4353ccc79b31a4bec6ec17a8d2890fa9b044619ada5ef082c4fa9023100de7f50d61c46a9a15d51c9a83246d8cf07c3187efc5d861b6e49ce123506e9fd63fd6740693c38bffeeb942ae0419f730302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ea21137042258e9c074187e2cdb6ba5efd4caf920a87da0d465529d860b8d73ac4d345294b48cf44982ebab6f456fd0f023100abecb45ed6bafb25af9987a8ff4e269cd01e8ae3e596f667641e82ed328116cdb9a7535b09018d5d15d65c64c0f4234b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b66470f8bb41fd4d97002c9f7b1b1810403b0464d8f671d055d5a74861cc40674171f4bb19959ec3597b4e2ff220e43a02301d72fefd6a91d541cfe9552d282df21d89754dd24ceb8aba8b2810ca974ff04362691e5eb05a041df421dcd008be53b10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100dd69dda4a83c5362793085e74251f3c5003c8c82f907ba8af3b93d124f38ac910478558b4b57b844cbd723b26499add1023100ad07d084bfccffb8ab7cd7adc87c8b778de355687b4c4528b15751930c0f4171d816f16e7389049b9e52a858fab80eb10302047c435bb500673065023003fc9fc8aad4655be09ba39a475532d4732dc3bad91bfaa4b5b6d5f399fc87ab2db4ef25c1efdda9acf4ca88011918e6023100abde9da80a922b63df0f54824c506f55c22f901b7c407b2003cf0049018dfd6785391e0b4a62d6fa8256019911893d390302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008a5d6eda22fcc8601a4ffc3fff88a34e14c1461e58fa9a63cda910fef5f92864bf49f4bad9b5e967bd270633e5fdf220023100e66c927e132f4f6931aeff0cb7484eb666d4e9567ca614be3a931f527515eb70b026a2208efbde7a0543798791373a520302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ee3485f68e25c67a7a59a65a7142a4d74fba49b813d26ab2fc87dd6f159ab8dbf55a53f29fc805a6b9b387709222486002310084ce1033c4150129ced0f157696d2b9a314d08a9e714f58098e9bc8511e462a1d02805dea90f4d2fdfc676d5bc6dca940302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008bfb729df4a3a9f9c2c42e0ea17a8486cb7f82d4666bdbdf917c567c263d891d368ef529e40b6930553b5c07b8cf3d8002310097e4bb39b9b08c50aedc23288a796c31d08734d926a700f75b0b72484d7d7657c31bfe852776f1b2f6c910550f58b3790302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008ab8c06f5d8dfb1ddcd7c9c373067239c52652172e63a1f07bf373c60278d34f2412c52a6c6f890681b17f53af990f5902302f07f6e4f1a4b070c0da1c7fb9d878ef453630656a806b960580b9783ef4dd1193c458625709032c7a7c87fa4a797a090302047c435bb50067306502305c737e69536dc1b368b4c8fb9d3b1876e032cd92f98d7488d096d8184a12c4679fdba2688174033101d1bb6145bd0d00023100bfcb868087412ff6569967905b07f87d88948cb8a294a60d03de099edef5bd52065f0fdc2d987a3fe9b0464e2d441de80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310084c84a729b67ada16cc4545a2774bbfce265cbbe98f7539f1435aeee966a64c54ae8c1e159aa498096f00596626257a3023100bd57af7dc7639bdecd04adbb25b6c468600c05d7602ba9ee269a0f166776f2693a6db8415c275bd23270cd07defb07430302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100dab8dfc1bf97181a0480987eb29280d2cc46ac10f79e825adfee6866f5ab00b8afa2157a423788b28a1cbedb52c78eb7023100ccb00313cb4a47d4edce8777e2765c94fb4c13200f01e3d29eb7a5dec8aed1ab08388ee07932f07972e71a9bc3f4d9db0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307ed6f5c8a95f8e5564833dfc2a7613904934c77e261c9f46e3e0341069ba338cec83e1c07ff8c11b802e879be2f2a232023100969cbcd8f64df7bd2d60efe56d746fbff84d4aa1aae26c5546c52a6292db45841806fc37817cc3be7258ee450c62ac8f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a0832f0739ae177bef943b004d47ab1a0f8f8ecaebbd1a2b21c74217422b5d2c8a109429205a4b2ebf58bae4fc2d894b023100a99d22850f845afb28deedb13dcacfdb25220489ae3dfebf0ac028153543cd3c8964bfce244ff8286cd2452a903ada750302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230223eb1c0ccb038418dfad6fb47c3d81f1bb066fb0657ae002ef8b1eb33226eb1952e69f127860644fb3fcea04d688e82023100a305919414e9c572a2e0ecd031d8aadeedb544fe3d54dbf3c0b180a782db1f77f1a5dbb41d89831ca37e0e1f3c3cc6260302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ed9ae44c70925c7bd3ecd165a5029f2b4b670a28bcaf30e0475ad9ea2dde83c76dba455014797f0412fd55da9b0b37f90231009d44656ebdf356445cc39eec96a1d2c57c5a66f7b31dd63a3c5b1be2895fc9fe1cd2141c6a11db798ac0e500897d91ae0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ce2b05a01cd72d807fee4afbc7ed0086e36b780736c91a43415e0734e185cb30c7c13aa672965e4b08c4a31cb06c9cec02301b3f7dc65dba13308565bb9fef6422db9ca0cfdaa74eaed74c3dbaea765b4c446d47123deb6abe2a1c69fbcef16753750302047c435bb50067306502300d515723663c3b3597a63dfe8ef41303ccbcbff716cdf27d5235c7b48a268196e16e30a17a88c1646bfd80b59661590f0231009aa241832df24a74d02824ac48f4dd091df1613316da77ae4bb9fcb371e3a9fe3ee73eb20887e20dfa9d9a45ec2b9c000302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301a4f895147da1df580df497dd267d5ed7cfc80924bf5b759668d47665509108ee15b2401fc21236bd4f1aeb265ac93db0230211f4da44c97494592eecf2eea069eb0ee9259340d3895bef1cbbcbc016aa8b8eb8bd3d8a8ff583812e0266d2b0467a50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302247d4202c71a3112e8943336d18cbfdb50142f6edc98679f38ffb73a11b8cb88669f4d28199d77054b6c75a206e9d7702303ef2af950ab9b0fe4a0c9764b794f8c400f4c16d944ccd04214497f1432d4fc9fc63cf11b11131ac02beceb6e8a8cd670302047c435bb5006730650231009673fecd4570d9e782547b45fef9b35ef9dc3585ab7e852713bc84a117f6c6be85f6c51e547b6e51e344132ce1582e770230481a1f97ca38ce55d239795cadd611caedc0ba2eabb0c8dc161836877afacbac207c25f41e758fc3b8932425428b95e30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e282e7312d89e990ec37896a454aa6c1b04c709a6a8d6b73da1e88f5e8809f77cc6aa35ab8d436cd24356f617b3c17ea02304e078180a2f0b273e7888691e143645dbd43295a284c55b7b8743346e3aabf07ae891d6a759df0d680f6c73a6c52cca40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301f76f0c97568d5f54617d9a81d01066f2b246085975238f783506e97e12a6ffab0e031dcaf3f478dffa9c0285bb115ec02306552e728454a1485aca6e90828383f4e4bf1a33db45c37715648698ba9e67d882a086fdad8ec9472e867b6cfb4beb4e10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023070a20d956da6b38b0fb15558bb2ce2d944de85575c26d0916c7b8e9058bd0c9a7014927a8041ed9d841664a9f0156a1302306fe3dee4048534a5f03a89d09e8531a438328e0df9b7e1afb494005f8e00edd15050a9fa856b045a1acf7af320bcc5d90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310090a69adfcaf270c7f4b032e859684bc4bd0757c6523650785c3282c23893d4610534ad1b2b118cc3d1343d7f6b1653c0023100a7d4865e884a74dc84b6d1be42a047627f60e1be571e3643abd2f552df4d28ab95401d7e58f4050ff74ba0f66ec524110302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305c36b7389757f5406987b423dc7ceb576228129d04ec949682e93d5fa9a05b2c8816e04d886cc5cebd6d1c7e72353de302302601010c0a9c49aef3c4dff02e7fa9b787f9caa1d33f93d70f5fb73ea79ccc8de5e28885fc1c013be03a0f5995aadfee0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230446baacca24bba599d1dea996fec879ccd15ee2706b9750afa871219bca015ae5ea487f3f4ff430372795920e71fcee7023100dee335b0b0e5ca0ce271059477cac6cee774ca5cc67b4c3bce16bddd72ca639f18599c46a91e69729583406d08e235fa0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cf70f3b3795473ebf5aba294e98f9de4a18e5de1efcb68f774562508758a3295a1a50a5363e81ca3db46284a41ebed1802310094614634fe527c591ecb5971ac0a183d5e1232c44c6697561a3d6a4a8c25c796d6cab49ee8a2384526fa8889823bcf1f0302047c435bb500683066023100eb06488c5aad5ce27d756dee095969f6d10ea710cafee3275c06294b5e468889291a0b770e6fc0efd3b3683db1aaffc9023100ec370e04131ed7d0476f97fa008151c7846431c57284aa36cfbd79d352bc7fe11f624c08bb40e33b6410bceb5f61f2920302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e0fcb790bb881a0cc3688d2f538e564a972727a6e526ca0ce3f6ca26b85161fe8dff64fb945c3150817b7adcb0ffec0d02302776cdbb02cc629f0d24190d9a85f5f896e5bb3eb80d3874f9b9bdcc6690869f2a7f759b0b2d738e83a9201fde9eec1c0302047c435bb500683066023100e69778ddf978c84ddd410db51804d7f1fb237299481ed5fd21670b9662b9ac659bcbc43b745618a5ed0f68d23d809b1f023100948bb0a500d8196ca721813c82608e3dd96b249e79e9b6811778ada225ebd0042924454a81df02831801318cbae4a8cc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ad4d0360d21b71a80359f68225d49e1a51858e81356e269322757a9bc8a9aa66f79c177fc6dc8910fa8777602918a9b2023100f091aafbfcb0196f27d92e9f18c7651042f48a651bf9c1aa93505b21e3db41e497146ef283b4313c4d3c24c56bfda0280302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100be2b012b9403a8bfc49fa019ca53e1b5a5594bc5131f645cb706db865beb7984130cad7f6c75489579a5b9596fb62c4602302173d4cb20d1265327d0456eb4fcd590eb8f0eb8393bdb0251aac7ea0ec12a039ed6396d99785628bfea11fdfbfafc950302047c435bb500673065023100e94565542b9afa7f7d69863daa7c2faf7c0a3c81738b540b1cbbc8c6b3dee5140e2503f7264851fcaebcd68b721d7969023011e3ca7b79e7163da4c0f578082fe2b164f08c42d3eee7041c4630fa72b531544e507aa1360eafe846a2e23b856c868a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023058fd13f0be165518b41d95da2b766e5abc1534ce8e6ca562fd0d8e18feb63dd920b6873b7a0cab33ccbda5710b241429023100cec66520e7acd4a8e550fefaa02bb11ba5390fa07687c1ab0f32a151b2e48f2ee86a484fa02f55ca2b432c31582ac2dc0302047c435bb500673065023100a3ded8694e24f7ae59993b757870ab6dcbdeabe6739f24bf4130b7200d688d35b1b170019a41ac2cda81f722abce1b350230200d75d860a72717ae73ca2bed72e51a210e2508822da5de1abcc49fb232eec9ea66118b89c3092c45d33c56537fe0330302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100acbc4258b0df9d7beca1bf951449001922ad04e9c7922ed0c43a9cf05da5c663a0d2f68ed27649cceec46b1bdc86c4ef02310087ccac22c0942e648f23e85b7a6e9d2a5255d5531cf36da7f4e2a05d0af67145ceaed0fa2079775e0312d073fcddfa250302047c435bb500673065023100c183ebc58b90f2d68066a4e207d0239effdd90c9a2697b8baebb14ad78f85f5e3cba047a62771b0e5b0ac56404a5115c02304b6a74fd3d22c65a1e4d3c96f20e07024bb3f2e37b70fd3b7ee8983aeb14a5cc9d4d982ca2942ecf12b0c02b69baa4380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306b2124eb4c2888e4edcc2dd8231fdb9d3167f5182dac95962a453c383ad11e1e4d2f18f203984a7cd37ac77b21d7233c0230400584f21865234d388e57e0fbf0e980d64633286bfaff497f0e1a75867a6c25748086c5100895c76bd3175eff2c14a30302047c435bb50066306402302c03b6550fc1d4d3a42c8dbe380016e7807c28fd5872834ae6b2a5b89e821506c69adb1beed217bf2e63d99e679d27bf023060f7dbf810db27e99787229121784fc8444064d50998c8573a44fbea7df282868ed910d646a229121169bb66ea6598950302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023053ca6ff733500b70f506ab811ab0597b998ce5ddf91f8e62b0ad30d4190aeeb3ebd9038385a61bbeadfe6ca76b7c74ad023100f93d1f54cf21a67314ee1455dc4e713c1ad39b6055356e88d329febab9a5a0f726e47a3ce3e228b940e5c4e8de718ffa0302047c435bb50066306402306d0fb4428eb01edacd61552dfccd70af50fcb7c17d027905ac3536edc744d47e257504f5c0baa1f42bca1c9cdd768a1402307accc70c8e16b785ba50b149f80b8067acbe78045d3e0aff2298ccbeaf9e8cc89b71d21b51e6e7c4e185ff7a967fef780302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a15fd33abbedb3b71b1b2541b67146a894194b625572d0d982c988a06a6ac363dc77f14c84e3cb03e7b554f6b4184c44023027a60d70b1c364270e9d366c04e99e078b39b8c744e128a804e7163a02949decda549e6444ad1b42a0f2d2b9c84a90670302047c435bb500673065023100baf1cf29a6b491a973d735370f1e2a7866a0aaf33c31d0c3a39efc08647db0267f5178892ae5ea30aaf75ca0d067e03b02301be9952a8b99d2ce132d0a2eadb74ef601681f7b85049647927d244bf721687dd1eea4a3fac649dedd361f232dc22eeb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023028ff9b67d51617d426cd6885f80b764d842541aeec01affb927a86cca4296528da58f1db443eb22a35383254871cab87023100a1823b7cbeab7fa2b2fcd76ab6d9165728e66803fc3c16a5e28fdbe122ac41fb77795fac1f8f2624470a5355bf4db1980302047c435bb500673065023100893b58f913f03bcab62c8fe90d8a38bf021014c10a387f404be6837fd215c5e124e506bba2798cf3ffadb003bdec005f0230243dcbdec37fcbabe7c4a95a804b2f7130d7eac81a190ad6bf2fd3b7593aae8d33603e14df3baac387d0bcbd1bc37b370302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e25529e86c6a224f96d9b2fcbeb8b2ada6d9deb9d4144a2f1ce0618274fb88047012e002ca23dccee77851c8521e5ad90230447c228c981e0b29a3c0c722c3a67ec14ec82ed1c10e9247178cf5d8ff955445bf24648e00528dce73371e8ab159d8960302047c435bb500673065023048d8458e04859e81a68c5598a0550e4d41e20338a91a92d861fb24b43208b16f1920c9ed57140bff3fe1e5ab135ac412023100aeba34a6e7e1db9d0046d58bcd907a5eb64d4d7908d75b5a9f21c16e3484404fed495d37a4bb27c5b4c030e2a877638d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230628587ae9db0b340d69c21f27f936e67877266013946f5b0e549783fc1d463bcc6faf14569768b02e9a94600125c3b380231009f704a281901bfd5854377f71048fba4303e97a9aed021621b72ebcbe82d1d2f47f4feecf554d261a7bd727c512d56180302047c435bb50067306502310093f16ad12ca79daa575687928eff14841256f8b0eb39fec4ae56c277e88ede4f85930f38deff982067fbae4b2a1a38ad02304e0110a7de333c60c11f05f34957e6089c573b2ad57abb030f63175e08f94cbcd72e242f8ee54889dda34668f53d59730302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302715c8430ef98a7701a0a0a2f76a7472407ad62be99eb498392848efc24ceed8bfa7b7f93bf5bc84706ae63c294aa3a002301ec6c677b5389f107f22ea43877926c10ef8f767e6e05d6d7a07eb675fd15604de225856f1f2a390d41c1646d235c4f10302047c435bb500683066023100a249259a82080eae448a5693ed04748d4f2b79b263a9cf130cf7180e9c1ab4efa6ef4bcc7caa58557d03b2987eb52f4e023100b0146a667369fb66b66faca709a5cf0aab697bd4c02df2369caad8ae54f4f0ff06fce697e71914f7022700f9cae974380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e67537670bdb85533b0af18ddbde57e872d68450e3308319fd670850d38eca724a23863b79e6d6711e2dd14e2af38c07023037ebeec9aea97150219c7c233187597b70a577733405979c33db69d9b3695ddbf3ad5eb693e603cea4699233756982460302047c435bb5006730650231008bc6e5609f3d1d569b2637fb45cea64e77289c8e97eaeac73d949d430e99e8c0a64c107dcac216d2a7153cd5e415f10b02302201c3a5276c43a501e3ae3209f229f1c5144f85e8b054fe4adfabc49c648e5392e4c976fe8e2d51175bbd59735706630302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d6ca442220fea2a723f8a8ce7f8a9b746d5652ed341ec8609de6f5d9750a59e63cf1036fb5a939794e76e9fcbdaaab8b02305399958ca27dadae3ccb74999107615b0e77a97b4b092d13eb74a9490304fe2b53cb38ea11e7326f3d5d7a34ede2515a0302047c435bb50068306602310093934514d0920f3f4efde9f084d306fae9ebe0cdac3b81791c4fcf24d54052add59ea0386288ebe81d3d2b8bea7adc3402310097953454f6e2d3b0db56de9e71e3301bbda35342e00df222bf475c612571ea670516e96bb03065e2fcdd2cfa96e949260302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ab8701aed34465fa30cccc23b1c512d124e3c2c300aea1a75df48dd4ca12c508437a8befaddcee955c9cc4e0b2ae7b56023024830cd217813803841545fee252943e61173e155056e6b9850fd1cb0e62e9d2ea8ce9da08d99c48d90e6271e1d0dbd90302047c435bb500673065023100842a9101e3bdbc7de33083178580d1c6ef3d5a03795fc373fe952106a7a380b9f5f944d8bed4d224414820925d3d221e02305d7838e6d1262ff061625f44ea4e2391d05b9cec5ac949eeb44ed1b9214cd20a57da8adc287fefe0dee64fec18cd2e6b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230190a1ca9df635ccc99a5c3e376787ca666c7cfa814c772260fa1b3a8bef83b2529b7cf663d3b1bd60ddfebb3db23a7000230438b161fc6d3caf2b0aa6b1ece99101aa44c2dffa4c1b53a3e8a7285853f7a197ef0d0c38b403c2a78d1b1e8dfd2dc350302047c435bb500673065023040e64f7309a9eb7e38d2aafbe10f7b02a2440a5cc544311c4809c9a0afdb922bb2b02fdc558ac6ab2d72ea724c2422f1023100c5d6d66210d8bf16c58a94b3413b0f66471812f261649a64a24c5dfd215e3593d88aefe04c6cb323d11cd8ae83c418650302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302a77ac53b03abe62397a35f4b3f347c177c6e23fb04cc5d98371183393e4aca89120f79a13e30fea0cf207e7bc2a16e4023100ae60c71a46e7369c558951fc1c96941bc645e6a968e4334cde143f5e71ff520c20d20e32834181976e8ae7b049f9fbad0302047c435bb5006830660231009de2dc7a9d03e4f272fc4ccf99a015908f6bdc83fd6ca1c8e78ffa3dee8ef5df368af069038bcaf26e38ab341356bbf8023100de919b6131a7449ace3b87a1f8ec234d144b643b5ebc6297ff175ae3fe3146b2ed3d013e6da9150e51afe22da755d75d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100fe6fc1bde3bf08a841a346db830c566d5d411a79b93e8c52e5a03bcaf07609f841ab9abed8c7208eda81fe2a13eaf5d4023100c60bff4e0d05dc025e4a21fe3bbb20845d59922e9e9392bd51ac1123b3670512768ae3597a798eb35cf5cc8f7ca345e80302047c435bb500673065023011bbcea8c2f0a4cb201776ec1b2591e8aa32545cea88641c47a4e5414a725324686ea31a0565693d4c4b968d6c0d405d0231009bd421d687c1f44c82575855da7973e10fc745182a91772806c428032c11985691a5735f368e83bb58be4fe57ab1f9e90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c1545fb2f5db8cb8234aaf9b44bf67cac625af5700831305ae5e1cb7d2055702c7091c897c5222cf533f97002a2a884a023100a99e33679b68b0ea9bcf45cbbe7267acf9242a9fac281a81eb2610f1472b1034c18b5afc3f6623e144a96221a1c59a7d0302047c435bb50067306502307817fe5be2971c54b38eee6837635423fb60f853efe297be217d3b94cae6de8843ae8af7862b1ee7ba2faae65df6e03e023100e7f89dc8ca4a0f1e3073830742f9937545ee02d6cec1b85d8980101f777efff3e0c3b57f90a1902c28b7784cfe2729cd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303e248633dbb39b97f04dce94e73f409ba58c154da50049f1199e52360c38abca846764d4fb1da316c90580896a25ac6d02310094a289229b4f3a78e7efdcb30a78a7303106cf550f3d4093da4ccd25e272e957f9ce807c872ca02bec7f20b8fa42853c0302047c435bb50067306502304f92986b613db5ac8d663103f25729364f89f7e4f416538d859718e2e9443728022acdf1bbe6f0e474cc4d347b5499f7023100c1a5dc13e12fd22590a1cc96c5ba71dfed31eeb8642ec5d356bc9ffa8076df7d9007c801db9353aa1a0b35ff0ee4843f0302047c435bb500673065023074208736db471157c65d29416fadbb8a7c061eeb23881efc3bb9602eb744ba054ee4da06cfccc090347b3f49679287ed023100cad0db5daa61a1ce563fdc785b18170298f3bb9f96c4043dfe4976afd2bac579d6ef7775de8aee6fec9e3b37fa72be960302047c435bb50067306502305b36fb862b62aa34d1aa9c7d28462becb3f674bb30113c28527048474c3c9805fa4ea3949a4ea666fc733a68408d0d4902310091fcb5ed07b2276d6550ff23b2a9afc7729816e0c1f8b1edf553892f396e39f8c8dc9cda1139dfcedff54397885e68ef0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b111f78ae5ab50af6effc5653cb043b0a17dac92f109664ec536732b548ed590847951e64899385a690eef477d89e2c3023100f30f2dfe825ea66f51f9420f4fed4818f963972598e44b406c9035e270a2d7c0ba47c11a597a61ab576bbcf9ea61b81c0302047c435bb50066306402302f6db0348393c887fbfc6726cd7c6caf2e550f98412a8425a57a01fa0ade4b3d98cbbf14eacf56b2e8b3c0cbf74e659b02300c1f73a870fa4dd9a900fdc132d993c793938ba383ea4d3f1c9c99bbf7fc3924e33ad4691a6567853bd20e0dccf563670302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f017e5b4ab7010a15f5473830c9ac0ae0f67daf8a9f6d5788ed7db0273df1401253d844e778fa3b1550737d913d7c468023006e0936f16e97e012db3c2c2c808cb143395af2a64b870f39e2348eb5470e5823f790af7e0c9f951a3e479a38427cbeb0302047c435bb5006830660231009868c6d3e9323a43ac96c590af53d8c711cf9cb3cb27539c6b0a772fcaea3b040430409f10e420ce533a0e4dd856f840023100fdd6a87ff03cd53acbd6d64e2e5a86a55c5ebab61a7f332b2f8ac5eea49265ffffb62c6503be3d11004195b667c577b00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230205b5cfbb8cd6a798cd6f1b05eff569ff29aec4d7f6b63b4de8f80b129143f621404ad8d20e9aa3c3063d09a2530cd3502306a09a237fb81569e01e86503c6be80f449f4fa1607cb9df0d8afd1a167266000237b364ea69ec2ac75e74b1b3dc1c3120302047c435bb5006730650231009647cadcadbbd42f699f1833ce31f3e0c8566c73057a2e4467438c9f036b7dd2b1fcb04e078f787ba035c3aadb2dec4d02303cc9189056cebd2ce508658d8d9a9aed629a7af93af418c784c4485bf6a4b99cd50d0595b07b6f688631b118bf8ec4830302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e60c490bb9a39ccc04651faebbde7da31f93be923b15f12265022aabd701acf8b0347d44ded8c4f1b9e539cf872f99aa023100e8c5081f5e3119d5e3ba459431aaf94c24c37b94c27c1582d6147e8dd58c52bc3fe79c31f018b508e00e830ae57fbfe50302047c435bb500673065023022a10587d4d5ee877020b0d7beaddadf67ad1ab188b896ea2bcfbd71eb4d5aea351265ae0869224ed6861d5539f5e1210231009f61859f0fae30024a2a77c6dca2556248aa6e036929b42bd2dbcce7f506df79c2999104de99542634634c5a804228ef0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307e137c22e7947d026925234a605f69a160518087f00b5d836842d96edbb93300eed5b58393704f3d40925024e57928e3023100c8b3488d12553c403124579530b5b4065c53a572d3dca75f97e3173f37c1297b319fe6f95d23d31dbacda8ecdf702fb50302047c435bb500683066023100db632528444f1c0b87f82684855e6b30cabf767b7f5c39d1f60fbfe115a8d7ad55cc5fe72219bb13d5f6b2fe7ffc484e023100a63c31e7efd90eea3b46ac8e453f662a1ec801722fe8de78e1270b0974ec8ceffe898b872a52ec4350217a719a2214570302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307b84c18727e4032d1079c3b5cd453efe3246f6bf7ea5355bb90262ecd80d7bdd012fc07f33b6cc230ee263a0532b061702310084281d32fe4b765999dfe7d5cac9d4e065dbab8aa979b3ad9765308173080eb8ab0b08c1a877d17d69082803b42389a90302047c435bb500673065023020a2c1ee4f9816147a2de7f98e2c679187b5703968cb02c2c40db2d45dc965d5d016e61794efbb4fa8ef2d987994cfc3023100ff2946f745e56b6062d222d1cf7e88dcfbf6baaa2a57eba21a0fc3663fda290a35af6110b0e9ccfa5823cfdeabaf00190302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f9bb834d2c16d1609edd0e2a2c3421d4361391e5c483e5353760478e0261d29adff527e0fde438758519bc7da59cb84902307121c0a5891e23ccde2ec7720464a115780a2617e9b2dab798076e2a68ec4c75bf268d2cef7839bf0a848cbeb99959b40302047c435bb500683066023100b9693ff8e2d9efe240beaf066e88eda819c688bd108ac1fcca9d337ed040d2650e2d49bc4be29350aaf7d39df84d470b023100dff3fcd4cbdfcab5e7abe9ea9fd244f9e4999465311c9b5e1300790b9c933f9a6de95c002674d1b7119e025ffe4516bc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a6778254206ed2fce42ae8d2ca47a30254e3c690fa5a026789755c1b8aa876c7e1a8a65df4e3d46e48a823633d7dbfa402304dfeeebc51d4c4fb354575f82810fec1e959739d0ad181037f84e58465a1f11a322c71856f1c4f377c7c6f327d7509e50302047c435bb500673065023100b1b1a4ff5e9710ddf55da316b5631a63b8bbec400b5f38239ebb16e5e600b50c18b253ac5d351f541c54bda7e9a743e6023079e33d32333dbec719f19d69a5659a85392016fed6b8fade5713fdba3224d0fd3e4e26a9caf201c75cb9205ccc9746160302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023064e7033f80961e4987d43109f63be1ff90f523a5a96cd63ce534e326b2e1820ed3ea9063b3dd1f32f792187311be441902301c361adbeaaa1d851732ac83458e059ce316647d819bab7e5c4c9836e9a6ae7f869efb030089c86238e7f8f614b5c6e10302047c435bb500683066023100ea524f641c2a48a16806934f5ff106b300be47099f3a4979bbe9528800fa0fc6e5d493cc175687303e8f666dae59a86d023100a42a1244a6a8e76ce361106a2772d68998e24867fe9eb31f087587561d332799c567a2b1de305d9c6dbdaf3390362ffc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c17590fe3916054a60ce9267f346d3f9a11cde8c18f56e077a74a06ec9323378ad3696473c33e65f8021a3e34daf9b010231009d0a81d88aa2f114265908e012ba167a22bbbda02f00c6ee96fb900892d10de6072df9f4caad0ae1c818878c77f6eb8e0302047c435bb500653063023077a989fff20402981da4175f2c424779cdda02fd0e14b6220137e9dfadff570ebb40c6914883d0ce1b323d64aca77e9a022f3daf195dfec8b1e08c10e86a709980416dbcc1b0cecbccefb20eeede65cebef1e70dbfba5b2324a625c9f969d703ac0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023026f2bbfd0358c56c18ece78c82bc3eb2eb6abd9f8677afb1acec24f77c6fd0adf68ec4ab7c2854640475200074d161a602306b9f39d50e298fcd057b9abce36c28ec4b4a11042c432c9cae946dee7f9e3b22bc5ff3d97255295d49f18fca371ab6950302047c435bb500673065023100ceffbf1096a39a1c12c46d593da27f888c7f86c04f467f5168daa1dd1fc21de546d5e4daf20949ef94cf4ee659a1071902303c931a0a70583ebacba6ac56405a41c34463bffbf0ad67ae279f7485301f2bd1c5163dc195998caba905db488ed6b9590302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f7f3ece6e7b74ed975ae131bb5593373476e3e3381eb361bd192ef4c0b68a7dca33ab94bd47d8bd394a75c827761adb5023100d603b60f6b4efe6fdc191d0524c363942e3aeedf0775e9ff5841d522d4e36fddb364793e7fcb794ed65137d873510c160302047c435bb500673065023100987d428440d00bf6dbce4553087f829573564c5531099cee658735bf7d64a25a0b61f12a1ded25b9baf35c73debe02eb023033143b4c0d94fce7e3823e0ac06c6dbc02a2fd3835e4b9b6d0025a52ac66654f805a0970aa598f60837229fed27c9db00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230329f204e8617f6a3bf179574d1407b27f7d6e717baa678c44c16e27a81211816de75d465d237340c5f84a7bdb850fb1a023100d76ca786fc9f9c4d1813157584ab00b80073b86f538f16f2b0bc6731eb97f4d54c94024b1ad7980cbb6194091ed79ae40302047c435bb5006830660231008c5396a4a42b2423d81e79c3c09f0b904c8484224ac82d04eef628b2a821a8d98864c8ba0c001a22070da2e8fd375f6e02310099204f9cb31f82704a81712ac757df1b34144bcd578c82bb060daa816162ae8116b2da026dd621505e9baa420d4b0cf90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100cb645ca1d0275c8e5c0fa587e96495ccc52aa80922e4e235ad58129a954563bb39b1ecebb053b5cfc27c6b3d237d37700230559523ccfcbb04fa09fd12cf90030bf172133f6633b346b5abe37dce00a195b95d8822a8ae8ad502e2ba1c2dbcc32cff0302047c435bb500683066023100b95605813a91a4ddf9dc5665719a5ecfad643e65b49d55fb3c063de181792ba314ef7928da17c9bcb70e85f666931136023100b2c16b5a3809ed6018ee1647b9c25a2389fbb2023c4c7642f74d3c5e3a779d65f6cd62a2afb641dcc75c5d16ec5763130302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230497b27a599c0df7e4959496d447a4e325cd1ceb50b8d9b1003ab0bc033216c802443ce5992a220f8e9036659c59f50cf02300bade4940d49c27cc2651f5c093094e6c56dbc270d98cc09bc0ce004eb09e03e1b2403dfa55c1d6ae565310a89ce02d40302047c435bb5006830660231009eda036b576ecc790644127e76993fde27adb74fa242cb8ff01e855d85d0feb15276166c98ec42c7dfd303eef3802b3102310098432582a14ed10b80864fc477c4d8922ddb7d45be4422c447ddeee7c0d07bffdcb515bc8fc3bdeea86037ad04dd66a50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c021cc797c85b2936f498e62453f0ecd47181ee5794b80f550684a718b4b85a0db50d6c1d5ccd7b6f8bc59eb5ed325d002301cd4da699b34e860944e6c446d617929e7ef73536854e6038e52639e4656f04ee06b5f041255c32933ac69ad5c1ea6d60302047c435bb500673065023013ce1ca96843176597621419249479152ebefa24457edbc29e729c341a86df5713865d8f7ed778a088643cb355501f720231009b18153f0e26a2d0041532ae4a9acef776a1f476d6eb8fdbcd66a9c9e93eb62c6ff96932fe4681e9645ab4d07ab00d540302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ab0b8f9fe1bd82d9f806b2af4fa1eae49c34699221d480484beaa71d11e2c14560ba2c1479c1f901b4f7e59682d63b64023100a1b64ec8874c5de83ea83468d195d342665a1c1c576a4e12cd22c4dc82dde5f5078bbdc769ec41190058cfd30ef81c8d0302047c435bb500673065023100b5db5230ef59a92596a492a92fe2b234a09170e7a06c54f490ab7b5b714aacd6006d7b64db37bcb31683b09ce8a88d30023031b726d261bb203729ad65b8ce73d9b74f2e33e41b0057d68ffc0dd55581178cdf3aebcf43ec3504e3ca47aa19bf75b00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f2602a0784171b05135f5a0c65638aafbcb2a61ea87aaa8b72381d86a97bb4e6073887858da6cfb73c9b23d86307da17023100a7a49d59ea39cdc38e5ad1c7bdf30925c3d777b80691514bfb967ddb0045cb28a6c38aeb9688d2cfea11433226ad759d0302047c435bb500683066023100e9d8a602dbab3c237cfa28abe0dc3c118bad14c7c93bf5eaa69ce69c755aea95375a6b75e54f090ca87565a6c69eb26d023100932a5132c9606d6b5a198264c6939d5ee96794ee59f58147285cf537e85fb77024071dbfa68e1b736d0ca8ef07467d040302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310093b9075b889fd2fb5f088dfa8565ec1909314a2693c588652ae184c106664600435d12981b2fd9921142c484940672d60231009e35b5ce424ec83fe877891e83ff3258a0bb2ade67cafa0a50f2c1135afc16ffa1da2b811860da5b3fddb21463ee1ca30302047c435bb50066306402302e0679e0bd7a86882de2efe313dd348e6be2eca0f72d85783bf5fe9829fd648110f3e7c5da0549c2b12f6cc81602e2d3023045381538cc0e455e771ccb9663a2fbe36b08c48933287a22aea02912387a83536d283e2c32966505aa0a07b31528587d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100fb6b1f89ca86a9288b9eea5259286cc6582cb6ae12d703867264db8f8f1be87311a6ae173e3267465d1a4c91e3e174b8023004645b5acd48c1574547f81fc5854b7944c8aa108e8adac2704b7c716021f0aa3f799231a106556a2cf121659a7b83a60302047c435bb500663064023041b58b59386de4bbffcda1e221f9a64716f67501effc8302cb7b57c6483669d2fd8c97460ea9d9a9c48d729740fee6d102306b96ac75b883ad435cc0d73fe9eb661c3402229f9af4e003eb3ae1e807acea48ade83aaf31913563423bb66ed2d20f110302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100fc01c46835ba39a6d4e141aa2fc4e7d278788382433653a9e4beb33dd2b57cfc50a278692bb9d279a60c5e401a15e5a602300afb90fa43b0e7051c6af01740a665bdd7e36a88e2755e678fbaa0b88abae9155f965d032e0c5365e89bc3d25448b5da0302047c435bb50066306402307a3e6c175bd9a257d92b92465be11f816483040c7dac5ba72c4641da60c7f9f89aa2f9686e28dca84a825a16f83cf7f1023034d1858c548261fb24be313f594e73730b7148ed753b204c8566bd80b02e4a7261df677538871dc1b142865950533a450302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c42002ae83db571d593adaf32a1eb9e36b6e46aa1a3945c33ae42dfb1ab2598b983c92785ed7dd0cf179372ac22b87ce023100bce868a7586f5e6ad0b7b863fc49b00e77a95d9a0da539ca52fbcc709e11b1fc0c4aa48dab88e729967e506da6ac855d0302047c435bb50066306402300d0d157bcaa15dda78a748c573c1e7455c14e461addfecfd0f842ac201e769b9a02add37da5f2dffcb5ec069d7820a340230609e7cf0f6cfbcd8e4bbb26a7c494ed6bc314806b6be144f0ce36f533651ce1ae1f09f47a420869689fd1eb3b6a635c80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307c6bcfde285900c73c91f092412685b42caf45b74bc39bd1ce117aac177317f482b5d0e913eb0830b858510e14204ec3023100ba4322011a60a2af154421bded8c6e4f4f0401ee3e9fcab105324c222a208d93a4e675965d1c6d71a5f9ba4458dea97b0302047c435bb500683066023100a2e5d19847b201c98935f5fe35c0a86141af83e2971422d0ff91a9097a8c99820888cf1f8f16435047ff4255657e49c5023100d1fb3e8f55f14e9446ea7ea594ea897cefbbedd891c8e41ce026c82f49cf6b61f4327a5e076e161705eb0bcae7415f540302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008d0f6f82f68200b8f88b21ea69662ae14a3e472596493270246d077c9732ae63a9ac2a629e2c2ba1043eb8151a07f2ee023003018f6b27b96d613ac9dbf38f3adbcda28450b13e419508673a305db4b44f48d3cbc1548211cc67eb50fd959ca0f5e00302047c435bb5006730650231009b61bc56a3d85f2d1f7fac7e3e51a572a6668a5c43767159f75a6f2452bc4b687645b896ea709dd12abc780b3636b88a023048b90ce1d31cc8dbc717df2eda886a7f5f1dfae69c7970f4ff27e75b91e85474dd182e10ce36e4a677d945ef878fa0840302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307242aa27b6b95162b4342268cfd5da6a68085e27275de752e437f1c865d6d7f40e51b803175cdc4b6e35c7b344fa0e85023031b0616de0a05f19ba0f9c53668122f1ca3cd0ad67b5eeb409df349c38560c037a71652a1ee56312cf40558183f19fd60302047c435bb5006630640230167fb39b94d0638be4f9369089bd1d9272663014985c5e3f36592723ba3d7dc2e786202931d94170a35ff994c2c62af202302db51442647fdf34c3e0756b8b6ce5aaf3c6a264b9aebb8ede7cd60f5256678547bcd6c8bbfeb54ff2db62d7ceea97700302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b08c892e8e2d46ebb2f12fb0d645f0952013350ba91b86edb7c63a9fda78d20228f472b4b06f5b25bbe66158db33a03c023100f0f2d35321698ad9999674b6523726771fb8f463650c02d4d10781f1192f6fec7a07b068cfefd8bf78dcfea809098e980302047c435bb500673065023100a446b63cc06ba29cd8212aecf4d63f3dcbf36631dceaba4b4518d8a9955096d0a33750c5afcf93926b3a9e8aacf01f8a023060855c100394a664869a32f02079a2756a0644c2c7e791b44106ad9a5e34343c9eea6a4cf4ea50af7d8065a45fe7a53e0302047c435bb500683066023100a1b2c4b6e77d715ef7208e8140abc53ae629a58b6d3be7257140093700a5134253711cb73e4304531d10aa5bac2586d0023100a6d618afbb4d5b16f19e90446ae0cf87efc7fe6172e736099cca1d83834de76580a16a0fc21ba7f35f1b7591826876000302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023056d3bc766a64781d6070df78367db48f850397db63ac57a08ba7c18936e96ab01aaf8e2318dfbcd63bc9757549a8244d023100b29a57c435c578406fc93275e9b9a4e42e31a019872a97e109f36f0d2878a95f5bdf95138a0a2488622100d261599b610302047c435bb500673065023100c0f45f31d13ac132913f12b7a96fc055068645ee9cbfd9df6a6e6dbd66a3ab9d71fd0274212c47953965f6ce924c13d702303c22f19e532d697f6223fbdb495e051508a79fb3b79a3bac75e1c5112be20ba1fa4a59f04bea5296e418b9716782b8690302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023052ac2de03fe248e57e3825376e3b2c68ba11077ec65416a8af2d03e30ca7a9c436e3109e95c6d1368a5e9c8b041c2dea023100f9800f0cefa2a1134e6fa718eec0c667828db7988c31becd5e3c070f5e8af89498c17aeba3403d5dab2dc36d56ec2de00302047c435bb5006830660231009807f5ac321e949e14e4d03bd1c94b9cd374a979cbdeebd299f06a521b944a966c2d5dc79fbce77b0ef2527bb86f28c8023100953535b2e6562d75787b4f11b63289fb062caa0e80417b954dda9092ddf21b34669750382db1555e0b7b294e1a6c9e2f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023074d80f7137bebd6974fcb384102a6de91f8c939d0b9970d8b1fe2c36196a3a4829866ce3624230c1a6f050825a7ca428023100bf2d66f7f5c469567967740d7303230596c67a57bf0b7335b428932b73f917d2a0c61a8020f6a94d1bbdbe78ad080da10302047c435bb5006730650231008b775b4950014e2d04b59e6d122735ac8efb6b4de2f8774c85a57773b6dc34b73fc76ce6db6f0f6ded22366769a339200230681d70f300e11109093f6927f4a5bea47194a94bf2fa35675c3729052669dbd1851555f6c39139935c8d4acfe7001ef10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c8d722a64f8953306d2b4f38ad802ee4d9967dd26679f9d49575d8bf74d963eedbc423755e737b6bea03287925e7220d02302a99e36e2403216b71e98e46343769b18ce46d0c61a6b5d1d076187aa2372cb845d445a43d092e1b9b5526872f531a730302047c435bb50067306502307d27049081421f124e608418e1c4af1029b8d8a1d466da1a8eb37002659b2c29d1df7ab45a0c9202a73a81dcd26811a7023100b00d2c46fc16f133b730ef4b976017442574f706376aa4a70c1dbb84b3aa569b935b89a7ac72d20516d8856ac1e3d85c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d8991b6ab179f8f5eeca55ea1526cd4edaf45e05d43ea308cf14c247db1758e0b6841fad01d67099cd908e9b40ad063e023057dd8eca2542c869754657565772bb7200e7005f5b7df0178ab2aa9a2dab98684ead87873d1575b7ba0b49541a2c62350302047c435bb50067306502307b73a604b9fc87d1031a690d28dd98f94998386719313d2b81f0148c831ad2c5011f1d0151314548b7cbe1741e7ee642023100d89a6c58172103c881e66e0db857c53e44e98b2a0a706dabcc2d6226d0a01a6fd430235d2f134a5e2b4503c4b636d5cf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305af1f79057ad4e634f842853eb812663250d34f70c88e00e07b432146b4bdefd561c78329f8ae5dea3107a01a02e3cc6023100857f43f82d9b4f5849baf7d89e0eedf50311a0912ab7e5d20146658f709567b0fb215780149807e813a73412d741c8a70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310084f18843dbf4a3502a7fab1c5f35e46356bfd9c53aec11e64e37b019d0f9ab4834fd219103acf9fa53ed18a06088c251023100b87bca86689f423a0e35b1b1df42d062824db3e61c03478d66c19216ed890591400125b4eadf007b569072e5529241720302047c435bb500683066023100a936265e8716dd90aa5eaf6b4ba04c0e911fa6f9c318a9e814201759186002e2fa60aeb81436683351b9cbd371d90c0a0231009775f83a664aaf5df7876c49d43dd9757135fd3ae8ab96cbec41f35ac9b3b22b3107e8e8a3639cacc8cd6a1d9840cb3b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023014159b2489d1688f52da1535c651aa3d863f1b9a8c6f6a48095cc84c02b06e92cf77d8278ceea9600c05fb446f2c98da023065a509e618541bb43fc8fd2960ad22c6454ae7e27a96e735afe92a3c176b0d954f87a61f152869d54f4523c72bf14e530302047c435bb500673065023070e018d0316352600f9906ebef4052840cdad700dc85075d12b2c6a403e69ef0a0f8fdd2414a188dfe48a01b83ff6a95023100cb0b98d8da560778e3adfd4707e9b0265e7dcf5a6c1a3785eb833c99ae928241d7d474257c61bc343fe2bdf43bf4bc220302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ee1716d3b2c4e7d0136737b125ef2749c1ba24931970b5cc4991b5e0a66799282e143a323365dd0dfcf2185087334bbc023100ff6870cfe34e8b1e5f6a517aa103538b81534057d61190b7d2167137545f6af1764a93f798476550d4531b714466cfc00302047c435bb50067306502304644e6c22c4deb655f4cd221d65e693ae9d0a977f989391b536cdd39ae32785bf1c59de70b187f30a4e0c3faeba841c402310095fba131c2749e2014dff278aea299b1f8c9b49f8426d35ed65253c44cc4cc25bfa41da763a15250af0297ff734c79d80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301a91cae2f9d6cea443a0bc4cf32a0b6f34258295b851df0d01bece6bc38a27b61eec896bdd9655bc59dde6cf97d75e4c023100cfe44254c40a5b15ab7ae15a27441710ad2ebd6497a140fe35b2efb473cf36bcd8de3c8e466c4bc1e8652ad7e9d480550302047c435bb5006830660231008a93d7ed4b5af53de04f7704fc0de72823065b0704b169c93575443af1ee398feaced660686703099a229b2f1eca7b8302310082fa30db8e730c793a2475aab725e9cdf726353791725172a5d408a168358110fcb1d99248ff46c522afdf3b475f10f10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310089de2abd91854980676b02c9cc6848474dd1868f49ddb3d7ea58127d35522b0843d5584ed82e3837d995ae8fe2d1643c0230239e09c9fd808d891442765292eabcecc2ee74232c79d1facbad04d6916a4fa3c524bf8687c86511acc439fa196c41260302047c435bb500673065023100c70a6ac215be627049cc7975cd445392f8cd7f8d817216bc94f9a86eda54c690f01675a2e6cd103a67ed4594f50ed35c0230764d668b512d00a26505f829abb3bb52b3e537fd7a50d03ad2cc65a28a78f72c72cf52f7d7fe64609892d7a3d5e92fe80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304e5c0b6dbdee839384ef00926f0eea9827be48a9458aceeb4604f2487436e295cbfa71ddb987864b1553b16b2f9415be02307b1ba08ad0729add9d385f6268fe90e880eb13312646073db59457c0bd2328044a478de8ad98895184ca32a213783f990302047c435bb500673065023019236ad32207e6ad9a69b425e8f4c85c1f9418272acf22f0a51b0005e628b58a7df439e23981189df0ecc3f81ba6631d023100f6360fec42938843be3b061e2c043bca57b2d7c09b1fa2e37c12d525351a2fe961962cf83199f532375eadb945b589b50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305241d237f0081151b211de1af10d4fd7e9b6e286c27310e39c32d778a3b3e87bdeeea2bfb7fc67c5af28ef771a2afefe02301e3619e69ab4e37cdd77ef4c8964571f3d1732a3926c185bc4046ddaecaded4db85f6fa51e7ed16683006dcee4fbfe390302047c435bb5006630640230397849d2f613cfb24e9351e6e45e543ed154e312a5fa39064d68510708d60c6c68c0e629af1296da6d7167f69e6955bc02303615789d21e3a8182f66554fccdedd1e0d811e971421e34c80f07bcb3f196a888021e2c5f42e70185a9e65931517d9de0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ebdff8d1448eabe3971d47956b47b286f76b8fa18381cc1f2eec87b45d89143fbc048a1fad289737d9c6593f20cd1636023100e3cfe8370c64c44f8288292e5baa015a2fd03e554a4d5f0b1c38d8c856d974bd0bf27fc4510d3f99ee76ec601829a6940302047c435bb5006730650230589a9bcd9b993ec2b35ff5802f7a4db5cbaad72ba8a9f690d19c27e3221c8b203775ce086491367cb1c1406cb8787a0c02310089d65d4514005170ad10b220822241ab141fb5c9fb33c226d216cf64648dd88d17257c63d7cf07179e54f271fdfd92f70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023040435cae6906bb57c8c984405610f57fc94692f26d7ad7d41243220cb5d64acc02defa4d994dc048b28bbfd50054dc14023100fee6755ed4628369eecffd969a085b91883802308564ebc267c4b99c8e3179850b298ebe1e4786b0f72d0b20a1ebd9a60302047c435bb500683066023100d6abf59f177ade571bd20a20ef261a8a257db415050cfbbdaeb9e3db642ae7a47915deec2d4f6775836866834c603f81023100e4b4610ace12db05a484ebc160e8ce3d365394b9f36c560dc1c0370f5d2e278b6a0a6f2c911afdf118598069c83aeb270302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023045bd64253bd1a2974f40dd81795817bc90bc9645828cb6e25c81e24a4e7295c71b3a2dc74af5ff074efb3eb3edf0bfcb02303c4a1f9d2221418b8dfbe8730d5abb03eff5b5722b44088cf7e37a0460caf5514adcfc9a331ae89126b0722807fbc1c60302047c435bb5006630640230668d11d1d0db1259f6904f20abbfcebe219f8e261fa0247b9d673074d2947944b7f43ff9ce41c8dd88e964a4655eb223023072cbbdad0264bd5594463e6e5df52361036666bfed6c7bf9797e4b9a52700e46e2ae43b0819e3adf0b01913e56c7ee5e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100913c8e3900fd91fa0a3eae5bab27b64ff11c1011a7e72dd8d5c0862c1ef3b9fb200c5ea542a70343497d1c5db943058f02302aa89db25bd06257fb2cd6641b37394e42c1a6de75433d31cc9777679b8920016fe4b96a8383b9bee7df1d311c69fd430302047c435bb500673065023061d60c39bd2b3f2580341855ebb2e5d1bf071bcd01bebea8209b64e03076d0d6e1f798f1a73a56a2f71b236e127dfcb8023100d648838edcbd9f516d082d68253737c82a60a2e05e764251accf7b76dc6482c8a96f7e1caa17033345b216178b643b8a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008762399fd24d2151d70756ee8bf30d5fa3bd34acb9880859cf2c4abbda6f895a2740c4bcc395e9b53b9b2030e61042fa023010db831465eaf7cce1ffd01b378efd88097c4954bfedd09e9f6762811adca4649413abe8126b8f4952ce07519727eefd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230267724483ba41f3b567477ca5980b66664ee2545dd10f126f2a3e5b54ab5e928ace6f5d65e925694c060d952a8e12b86023041c1480a078cb3f137034aa1c4e49e6da53daad221fffe132d2c0ed31a93677b86299bdbbbb911be2edc4f05d72baf7c0302047c435bb50066306402301c4c759fa59a940c84e55d7bfcf85a05bcf6642cdb78244738b3ea061a7653007756e918994b3fa778d8e1b78d4f1f2602305fb9f8fcdbaf460de978dc01f7130daacf2413a94f3638e3e2cb90bb649c349c387b278738ba5166da4101b87fae93260302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d61ddd0706be0299f8dcce5cabb0b996f3d5d649dc499273a31b7eb2c78b321a0b07b9a98efd50541b9d2196365f73c1023100d5355f0256203d9d1b6ff2e74cd94cb92a4f242b33248370e8a805d0a575d368671d876b6d1b2b10a31b33a475ebb7fb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304da7b886d2e8ea4344f655fe6183b98fa419a5a8db8603f0544b9a8731d285f1a50aaa1407dbca7445d0aa821edc7d9a023026e6bb7e9c0322da069dab24174d3b161aac390c111d9c52e7f0c108ee4533963c29720c3f61c88b50ed3841b9e8fbeb0302047c435bb500663064023065e5e381addd17a9481a13b87f0d9d52d1e8c16724b7307a3c1fb64aa80dc33edb7bbb81febf374ccd287db7508b3e4602306ba1439533d262474f2727b384518e9c130480e74fcfb31c344fd008946e9a2328f34052058fb315c558a3a3be306f0f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e6948e530b7d7e721217de8bd41b7f4539fbabd4e0051e7ae2520401661b3656cf725b34a73aef3d1814b894daedd5c20230100a3fbe2e4b7cb62667dcdcf0cc95141f4d680987068aab5fbd48e4d04b368d5f3abd9afbd944c4a59286884f9591360302047c435bb50066306402307d8722dc823ccc19e6a7faa2d1c5c7e3bcd720e1413f5e079092c9bfcef7c5c26b60f6c256754e31a3a15ce6981d8b91023012971cf12392e4da6289d2e10b530776989d755529f131800ac20531442c476cd9f286ae807df901ea9334b78d75f8390302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d3be81de894e5edb9031af5e2735bebd27f700871916c8a7756f38c401a0e4ab6f779956634f8e9b07e22e5b7d90833a02304101d5c03f2cc91130dc4548179dc628d17fbd82edef9257fa692165a682b74b89d32e31e44c53d6c1f2a9b570a203290302047c435bb500673065023100d6c3ea33dba1047094479ed6167a5e9789c4722fc3a57856abb33d1712a6f8a713ce4ef6e4dca758a3a9112780156a4e02305e569f4e38fbc794501a719a24c9ca8854b839f4ffe0474d98554767cb2750380f5bd77f3ba73439a1d1170b88e605a30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305da24942c08ac64fe369b3a854e0c6243166b344c564dd816f4fc9176096a50e4337a0fe9b3b6de8ff1c1b39220486f5023100bcff4197e06c071a5291786f2e7e12c85565a95d22ae9ee57657d6d525993c77d2d21119ae3e6cbcadfa235ce49954470302047c435bb5006730650231008d2b16f17d645a39fe4832cbd578c5e6e35fc7562cac586407dc704537c38059766c29e61f751cc1a15167ddc8497ebf02303b8c111ad87eec1a5b31b5ec1d43f513f53007718ffc4a3b7bf4c2b676ea11c001d43b1d78baf45d7cd3aebed3eee9560302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304b5834bf70f780c0a6441060d7219dc3a8e6be2a0564d959e3a53a9f1559ce6e58e0dccb67bb292eef134692ce8dcb2e023100fa56a305e41c4b843e831d6446cf627909f3fe8bf0d3818ae8d5bd788668cfbaf5f47c357d40c76a07d8e34aecf7ccc80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310089f622a6e2add02decb9e3b12ef5eb68f9871a9da8fe797301dab77bf964c375b4341828a6256a0253370b49191da77a0230186fded21fd6383acb551682aab8e431f7e011f82982379b982ef1cd53f9d9cf94bfbda198f84aa2cae7429e4a155f8d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402300bd07f380566a9a3577b62c390e3f09121772c9287364a3330c93197ff9d998aae538fc0753d49de55aa6d12edd68bef023046400176b22431479fa88aa9a4fdc0652716cdca523f24d4ee6fba1163aeea1bf28e250bd9378f3a6a0b647a258dbd940302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023078f36303c5691ff5a5d2a372019c46a8bb6c915d8f64d52589686ac5465075022c26e96024298486f95d46ff20fdcfbc023100b7426960813cfc568d075b20fbe78d212ac330ddf08d69f64d10ead68d6dd6fbe86feebe1ef435235490962fa0d7dadb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302dcd5692ac903b53858b1630d29ff8904d145e9a5dcad83b1f9735dde49da026812a0dc1d92e3d4faa737e845364bddb023100e8e89ecd7585ee420ba60757dd1d6986b681b6b500da1bfced2f22943a35e85c57b0173a91c2498ae2711e54ae1cf2510302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230557b34754c1bbfc2f9673a98e4ac3010a972d0310068b25b36be977240bdb98e610b6c905de06d02a683e316fdb0aa58023100c967b7140894fe58a24db43d7308bad0e309977a622375f0946a103b915ef5ac00adf81ee9c8e1e3186dcb979d982e2e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305c8826fc36821e63933c225800d4aebc0e332b6cddc198a52ce9bb805377afb9528d55f8a55ccb69810863d72d5a586b02303dc242af597814b83cb6282ebf2ec646f1a106b76ac2259278994fa12b7b1486077db5240032d3ab551168fc932224ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d5197d1223e3d9d6dc4050faed5ce5c84445d12336d2205dbd26d8f0a3b7f7fc3b81951d3b011589a41f0dc7faef570e023100affc9f8c5d68e26e122a897c9e50d610c679a71a0c1c10fe8dd70ca28892f317bb2e1882f62476a01a0ea4536cf331f90302047c435bb5006630640230219f97f5f645d9e163afca8cc21dd0c378e5ea2d5e6fa296327b6eb8cea9700b309c6d16e5f500001a165bd6c5262f0f02300c4a98cfde350b1d28466e13a90dd13ec0fd4f5c19bde320209f7318e49039f5b038a14e08ed79e8bf6686d57249d7780302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f2b326fe652966dd8e21ad385626b14f0cd36da49a69941db8dfe418baa3096533d145b550375fc117132c0f0e6e5f3102302cea75ca9c15a27de342ecbd08fb429aa307c8418d39591a3ad89f261ae4bcef1d175afbf99d970a2f7a55fa55e7c65b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d362d1aff989f8352d8b2a5cfcea6f62689ac06c064e63a4c8ee5a4d41c0b05d5548c00cdc91433c4d2a4d0019c88474023100dec49b4cbca7479e878c96cb2b3237afdcb74e0e05924024b086eb509528c1506485fecc2a028b326094fe8eaf032ea50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304598b3a0ee424021988e27e3f50a909e79c7ee20fc82b762a552fb8e19176a5c4f9a754b8834e8f781a037d2f514e2de023100a8494637c5d0be1fb26910a5a9dad015fa5dbd16856c4883a10fe963b99e10dc8b403985673de35e077fa076ed8c72c70302047c435bb50066306402306612ff3401deeb8ed49daddf19854e7458a5becb92abdc147b4f313a91bc2a03df1f12c955a7d5214f536af9013590c70230075820b70f4cfa7c0ded757823001a2f461c6a0585da2ba14bbbd527eba4809e4893027eedef8da694034cc79f4343d50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023052b9c1c0b2dce065c92325301142086f3044945b8a37c9a53aaaee4869f50e722cb86cc0df0ca72198c1f024123de085023100a85c88ec4a92a580fa068b0a5893c5fa3423c91dd98951edb4764d1226068f26937d18518cf65b11a45552f8b13c16bf0302047c435bb5006630640230711d856a92629c85e888c66a75e63dd9e755d8cfcb7625c228ebfb33cb25b1ae43bd0e174e0e44ae40063ba3fd73d90002304f1fadc2b8a9c5af1cab915b87237c4351791b5b8ca16a3c42ba3e8a125b506f5d9a1679cbaf325bd6cefcfa97884c920302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230272f993c5df49095eeb316eb1ec5ad97806261e97ee51971eda3fb9616a55c6cc6e49758e1490b46ac409941b92685b402310092636549dbd10e6008405a0db6e82abb09b984c81899e661bd05f8db4cd92c3ab6657a6de235b5c00de0c7ce7274b6880302047c435bb50066306402306ff6f35993193f24515fe57c1415f89742c4376d9a5072800a0b2b7e761aada6476711aeb897bb09bfd5c3869b2d251b02303cdfafffe78c97c2bb95abf96198ae2b54fcf4867da7774b0970a5ce3a983f86f57c175524999a4ecea55d3f0add9fd10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ac8f3cf3347eeed21cc1ca248de30404ddfa30fa4fc1affded00b85316f830ab57cd88d25efede9cbc76d538234b2d3a0231009a626b26c5af5e1b280cbdb5e74ab97038a8a504c20b7d491b23555e105b97c58f7731502f3cd766edf16bbbce045ebc0302047c435bb50066306402303ffd4c20fadfe33e30976e8f529d71791288b9440a42f2fa9060a2f875bca8ad959a6b18dbddd6b5319c234dc657686102305932bb6d232d7a67161e42fe1e89c0186e35e2db84374235ad5d5cf96ad0a6c751570540cddf807ecf05f779990e1c5c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a27071ef4a0a36d2978e2dcf90a02e4863eff167af2394d949e08d84a3cf4731331fbaac4cfc37b3c1acd6c0763caf1f0230439ea295965b2af8ccb2c7ee811a3cdae14d72dee91fe5fce42f94e12bc021f0b03612b18408f56f571a3f3c98de4fbd0302047c435bb500673065023008380a94380230256573fd150b71decd594abcc17a5bfbaed8c1de8e135903eda386d998eccac3b0868d9691a2d1f65f02310090adfc5f2158b40e7dd5a1658bf2c83f0b3eef20d15190944be6ec3b08394c99dee4fda838390cab0e5a4b57c95716560302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b722278035993c99dd037a1c36efd513cb112b3264129f98c0aeed0f1259a02753941e36443a6e42aeddef7c6a5aeba4023100e45b6f55cb5a63df97d63c8850078ccac595c91e51ce6da321dd1f9799c179086a4204252ca7c7985b1f51acd14b5ed50302047c435bb500673065023069330fba7283120a225d548efd0d9ad0bca0d58ba84238bb8883ced8ab95d8fbce3b344b6a36add67a48a5e47cff379c023100d7c1a44699a8869e3834b960f98bbee880d3a2de9bea654ef342a226b8d0ffe845c5736610eaa0c8cbc48f5ca37f83e40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e6a3e1e2db2bb1a713226ce545a6055b2a811513f01364b2c44146b6076d1909ef9446eb1557e7bfab9b5206d76d3f26023100f041adafb31194fba7fb12af97b470fc3a03e2b64bf438115f08236f30fd53bb088c3a73422f5005c26e778691f8389c0302047c435bb50066306402304dfe8a3614c5eb359676ca7a7be254c99d63920a68ad8280c0cf86362512734c2024c74dc994c798a0ed67d9f09ebd7d023064e0eae071209b5be060e4db82b34ff72326115df67598471293e8cc8e9664c16d38aeb71a59e5c834e034fe503fe9ca0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a73290aaf8f74fd119a16e412eee098efedecb60ada9ee89087af594fcc8c661796308638d10446a90aebeb1a4ca62f002301cc3878f8ad66efbd3d1373bebefa7052449944bdb8b1347cfbae7e086453be54f32a99a37aef22af54191f3b84e231d0302047c435bb500663064023030545a84feaa7cbb59479ef341a7bf79adaf3184ebfb7e6105d1598d369dc1c571600d25a065fdef3c7b2bed75732aa502307bd20a360b6ea812d83449df53c7b3d1395e8dc1d201ddfd3facf5b6a8aaf29910baa77eb3ca9a1100a15f08adc378d00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301891493ff4f1d4d3dd05dd893533e810afcf62f075915455e3dada5a729fa7754dbba8f8aaa430b02c2fecf51c39c0f8023100c6f9a08fb6daaceb79e02f9fb68cd553dc1dad7cb810180b22a74c917b5a18c2ad4836c2153f9b98ed910e8b3d713d630302047c435bb500673065023012798fe2f3dedccb72cd0a2ea3ae950d27e7dcdd54d4887c464b502827b6996f3e0b42b02e03f531d1368f47ddea9e20023100bb0cc0a729d21e1a699ad331d8278c7a1de01cad87ba2d4c1f60a9311bc921518001459de42cd7e1c355cedbf75e366d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310098a0a928b06ebc7f3708c801a0fb114a00437e6f22bab03216df54d137ce4850d675c72eb9a04992c6ee04146aff24e50230232012d6278642ae2771b2fa0e9bf2e97775241568273f3b0784cd9cd747cc48a43834436adcf4d5e930298adb27c8c10302047c435bb50066306402303a66e7d93d4e7a2fea09944af763619007639caffd76764acf0a2538a65b2cb79a46ba49666f2007c25ce3df380b29f4023071ded143d0fdecb935dd31b43e295524223230e5cb1019e93df9fb3b71610ab88394046bcf8119c1e7033bb3c6d2c7140302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a3f54ef0d7056bfa40bc39221d382d8b080422e959fae0a106296082e4f27d9076ffe6222ab84dacb5de42647c8bd6c20230049cc0ec0cfc48e87cacb921135f43a8c234c0c818a9881e93e36af13be864d7123a4dd05e344b9a09aa796fef92eccc0302047c435bb500673065023100f50f8816b64c62222208b28e80ca70919b6b15fc11d1fd6a186c51cd5b9e81230b539b6d573f9ee23e8a74ac7e3ef342023027fca931c2ecb8ea4a956c19c670c54ef4158b93d025e0f669aac96ec61ec5ae173cd061b445f50defc0b0276f2b76530302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230172b58d0889628443763b8907435d17e9986f880b4848bcba3d8e977abb5710ab3dc3f7ed683aca6467d221ddff3ce3a02303f58d9654bebee95eef37c21a3c8e592644e6f29ecc45282e3228d301a1390d4ee2f7f3d50361c23e9e1c245b30a98810302047c435bb50067306502300a4eb3e6acd791b7386a67dd84dd3b07cb3ea10e2f1111ac83d4f200a962585e12e2db7e353e7114724d9cf294932567023100d390793b11949d6a373cb146c2701be1a18fbee5660c65884fbdc87b074ae8e128c4cfde28a2d8f9f5ec8a75ffce2a470302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023073b2104b9275d8734da3f1c7ea1d6424dfd8989a92f0776cc6917882661a77c3fa5b6a70382f14ce63aba24dd229a05402300c41c307e4719f3d79b94a169652b92d6122bb11e1e396b13dbed3fc98ffe0ac954917f184dd0664de107d9efda04b550302047c435bb500683066023100de66acbd96c4ec0445f65695974d04c2660093a930156c60ab8ee72857cf1633773b8cb48419dc55c488c9b2b5089c33023100d15dd086c84dc304c4fcdd3e8ae32d3a382f1d2b74e9aedb209e8ef0e53af072e2aa8951021c90f98abeab7e3d6bd4610302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304fe20eefc39277cc6754d046938a98731d088fc25c35a0fe8594116f9a5cdd3ddc26cdc4826cdcaf245fd0e109b3372e023100ec2a43fec497017ae9b7e11fb7840cf7a415eb7cdbabf11bbb98849b6766c1feaee0b198ca117e0a962e7c7c5b35b9760302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023072561b5da3aa4790b99c9f059dae96a016164edf09af629d79ff0ced5fef3ede00bcc44d1c44ab3ad1b77c3495ae1822023100dbe5deccec131a8398ec09592b36556a83c3ec2826b4be440061f944cef43ddb6cd646be3dd50db4485c75ad1f55592c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ecac5b026eae45160e192395c0fe6855e53d36eda093173c05ebc37ad44b44723a3b123e674006ef113526093e34424d02307cd98deb4dca84a7c41ab819c1c1fb5190b8139867f5d8a2d9418d1c95a1963e02847c02a08aebc0f53561058a1d94270302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302c47f00cc97d97ebc25bb78fed6c8f268e099fda031ab1bc04d3f6c987ed01ebbd8fe8a5fa6aa683f709d0547c904451023100f8b6851898bffe8572006597f30fdb4234de479044bf01949444a4d466e798a1d51d69b42d6b56c461aad2746b8383170302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307fc567e1cdc1ed29e48c379261b4600ce5932d283156d3f0135a2b17e10e51b77798f8d346b62ec61c6c4fc2729bb08b023056ba38574bbacef0a3d0a1d2cb6781198582e17f8849a87cca843b7f4efa278a82d342e3a78b255c107eac1066cacc200302047c435bb5006730650231008c3b28ad8fb175ea3859f77afb78169acccf7bea71dbee55cb4523526124b950fe5e067acf178aec768d47ca280a0b74023007e48bc4e8967241d2fc7b5b3d3a7b6b38b96e76208490e388963b269abfc22d770388f77abd78e8b7cfff16497d5cdb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310087a324f07148bf25c67c15b3f0d7265b449ca38c3189821b2cce4f991f8ab11cb5c0b641ada7fc8d95b7ccb374cf939502307d9eabe8265b5c487a2bc4ea4eff2a2faf5cd322a2afd77c6ae88f88a7e3a186989c74408fa06e0c2e047763d62b37f20302047c435bb500673065023100aaf248569ee271a363e3a61bda3446bac74339d2b9d63ddf5ecf99b3d85ee0c24e9cb780e6b88327b7338474934c712402304edad111de604088c2ce361ad4b1cb6d321e54ab72ba2063834750790e51f4ee9e1ee7e17b5429cc0993b6ac793da6ea0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b3dbb756dc8abca2caa200eeee8033412489496fe3bf6f210365b3747188eb664d320fb7e5867bc6683d4790818344b602305858f2101837edc79923225e348bb6a40b602501fca5360cd2ca77672c18f6027e834336cce0cb45ea85ad35cee2b7ad0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300d3fe0da60a9f19e5f85a103dbea171352004bd8eb2875197a931a526c932fa9350c18d85ab33629e73e30fc5dfb1789023100cc779aa9456d4aff63a87b74893348c7df2a3f74f7bfec59b5a8216c1c6ffd607c1ae5c3eb6d1012f17d5d71a74015710302047c435bb50067306502307d371381835106d6695d3d3ab985ec8796b12b8ed86c9cef2721a6dc7b49e299f1844fabd9cae131f816f6a1ac007657023100b3e1319c91cc7c32901c536af6928ace92ec9767417e665041b1177498c0c47109435268ab4a63b6b2db96512a7c09b80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b334dc0b46ac8c26f218dd51028744bf832b209b861145f0ac8ee791c407f4c3c3ca5549a950fcdadf37189d0f2d61ed023047394f38179480154228578c680c2b02a4e65da398663750de4f7c418f948b0b3a134c6e6478b755199cdcfbf603cc510302047c435bb50067306502300e7ec49257d9aa473900203bedf699ac57dac96c6d7ac9b8bdf013ef16855960d2bd076bb28cef6e88f031a23715c87f023100f53bbd9e4cee7270ef6e73ddad0ff21229cb58975e5dd59747e5c04ced0501fdb777d0092c7b22113dad027be8360a650302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023072df87ac73b9f83b7152eef57ca0725048dbb7eb8ac5d5d71f181ea836c7cb45ee962ee7886d72ffef566da90b206188023100f03bb82cc01d42fb93b471b1d0e3e34d1c047c9cb08b9e988c0d5b1619d874ae64a140b24b44491e13e49e842f3eac9b0302047c435bb5006730650230312708209aaef2c357965e4d77fc1a0e7c75c38cb333d66e46b020dcccc4bea27ca8462e8ad94485799e041ff405653f0231009e7c806124a4a66272f496b40ca0fa3b2821c93d7435d861dfb713e6068f2d290fba54e1865842a95b0f43000fc6b39a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303b3181e43381619270c26b3fd5095fc59cdbbd94d40145039e360b875927fc6b67f0a18a753afb2115163b37674c3d54023079efe2704167050cc8b650621d7df5f4a50b46e301c397bc66bbd37abccbc58018e2cb8682a1348df43c841524e1cb470302047c435bb50066306402306c7f1aa548befc71b42f051aed2c2a5dc6983032f6fd3582fde812c3dba20c88b39537afecc968793863c11dadc7a66e02303920e7830463589fe6626d14c4e6777879b3a52e40dd3f89fb4b1ae6fe019013abf3391e1b0cf8feb463942744c524400302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e45d4f6557df96b5c618b020bed90fd313c498b117222901d0dc0dea8cbf793b456016154151f5f773afb025ff9f34cf023100cb7c0d367c85aa5ce3f3752dcbbe0e8c2fc7614a9e328f764bf4e591b8d1509130c166d5ceb677cd2ff8741b4a54ea5b0302047c435bb50068306602310084c4bd5e92f31e97d5e0fcacf413ffd544126988bf30e972792dea2373e2bfff93d69c1621b4ea5218358e359f67c3d5023100dbf4577908d12a71143b0608ba306de608f9a2c059806a0ab3d0ea86795d116ab9dbfd44c783b5323b7827ddb6c39c9b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230409a8295cad1e698d8f494fa9224442b276abb2af77dd13c5298e2f730ce2da80c1b631bb7e65c43c6b7aa5ff1096c6502301ec4ca5ff78e67d11669f20a71748cab59500c59690e26592df58f60dc51221fa739e1b765c275307e2d884185271dc00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060680bd6d6d3d6102b981ac5d7d591e500e6af70b10ef2e9afea0886fe514cd5752af34f98c82b55c738d08719a7456502304448e040f2023d5b58b97537d5393e39928fa74876a91d4d50814c8cda13067f4a091c72b584913c8d09b53cbb6fa8970302047c435bb500673065023100b2f25336145856f0ca3cd37c162387a1aaf4e20ea8917e8a655b9824a5e799c3579deb85a8a1dadde50d2b515e69b1f302306b79c4ddc3ed985caac9b7dbe2b09930b9e6baeb4bf276c22f12067867fd8c0a3b70f125f1e576dad574f6394539235f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ed182aa99f1e74079be023bebab5786298757c2b2b7e288ebd9de8eae2ecc65b6135ee2d5c55ae073be695abc2b0eddd02304ddda4c5a83ecc58d16a3c0bac417692764d8103dd423cf1bf816183468d9a535b06a3b371111b2cec3bbfb985edd7b60302047c435bb500683066023100bc817ad9c53406ef6fad9177d54991c96cb68a26969b15a9cac88e4b61c3ce7107538eba2f7232422945adff0bcbe878023100a3f253b7bd84589428458a15a525b0d8fc9df4586cd748fea2e4c9f7247faca4d5166fecbc0718ccc195fbf318f2a3e80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230529ea8772f7fa2d1c7ba8a89c559efbf24c6022c31fa40d3b75bc5cdf193cd06cb7469c913d9d7d54ee83179c2a31772023100825f7fb4f5dbce44cd41a29221c587837a30912a454414e4617022175987c7c2eb3b18eb348af6137a25a43f66f8958c0302047c435bb500683066023100892c152509e44293d6fb9cbc698c279bf0019a61e995cf1e302edf07a481e5024d743321425bbece82dae79a8bb3be68023100ef2331bae4d47f2ae5554194f157f1dd571aee4d49541fed965b832b686895cf2e126be4dbd06ccee0dbbe92d619d3a30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307b1f685496966c91a1e1072ded28d9889cee8536efad8cac62c0199b9250bca00cc6b307e92d29fc6fb7e07ad5ab22dc023078020191a9a49ade31ec1d13add8558a5edf4cc57d07e2afd0be40f25282138584896a427ee3317c19914bde3d3748e80302047c435bb50067306502303dcde12aece71098b93612c6d3379ec48c3700f40cb2d7b4d9de38a51a56c3715a222828e9b0485def4968b87f7429ed023100c8f2c80ed957c0a14f6823514a869883ff04780881d8ba99b870225745366b1acba3e8eb3895104f4424ab5a817ec0c90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100825e3463bc899751673f1cabe2f19477dfc48191749bbf745c7b2a02329890aad005278a8208e0309caae4946b14ee6e02300d2f670157a01f6930a704e6426f843e255190ca78bbb3572c8d2f751020cd637d1ca9c13ee95b354ae9b91e03678f680302047c435bb50067306502306aa65703a30e63df1c287129e4b16a2a382650ad6c895567897c9b324b685a52b5c674a84d69cefcbe99fd2ed3cd9220023100b763617806aef8b3c34cb164a37734cf3006b28976c47c2f542cbb2e3654de5ea80f8742e4f370bd5875d4245326fafe0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c2d1716dcd0b8c3c84865a44b71be3f08c4c69f62f0cc34533527cda4f6b2e09451abc2ac7e64958d846181873b3ede8023100b39724612f6b73a09d9e5e57c5b896e6bfdbdb94eebda31a2e5d862e729daf26941d7daabeaa803a3b5d43343ebbd42f0302047c435bb500683066023100b6aca0a2d30bfcb5ad4628635282a33312211a75b2d04a622cfac0d9d44130bbb85a512032feade793fc11bf3213b982023100de020786ed8acdc6a56b2ba3232c81ec77d985adbd0f871e8e8b568ce3184472cc2eef0b443475a0ba22013b204f56660302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f80e33cb5b64ca5468240f7c31c08e342471f69fce5d08e076ada13f018f96ff36fb070ae9b4bb1d4a2bac715c8b48b00231009d6d047d566f4368bb99546605e70fd714f585eb38b27bbdd23e4e0bbfa0d6fd4e017c47338adcd9d2b36924383fb9e90302047c435bb500663064023004774088e9fcc176d7dd0282494220f86a354491bdf093f90c0cdc2ae9e594cb2de21546c10dcae7e2ae7cc92484e008023054983d7995e51b66ec4d3a264d415484b66a2dbe58910ca84485dc9ad5a6337a37a007d97e3232aa05944bf32611864c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307bd5d64298a96d50cf4af0837617dc006fcbb4f282e95db9b776126597f40b080f2268c97e18838ac0c0625639d07219023100a20e7bb305ad7584cb63b32bb68e9aed73191be40c76595679283e199cdf1277e8bfa4f1a2186af5d6cb7173a352e14a0302047c435bb500673065023100facdfeed820c4761e582c1cf17d848e21815b113ffef6e506c39735ab4df82cd0b0af4d0a38a88cfaea95ee5790865760230217f6da7ae61fb3e2da74e5a2e65a31f81032673f42326a76e00ad750c9a74006e1ed95b679b5cd25486a9030fb2534b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009c0449851d0bf265600653bbeac70abe6bcbdfa3469ec0f79acae5d2d63ef5eae554e7f82db2d6f8d7396c892deb3ab1023100e681d26b9b75dcf04448b4bf8a8cb9b7b78c0164614700092874bc1820ab738e4a02cb9ea56555a5bd82d101eb9cb0cd0302047c435bb500663064023057059faf9c9fdd64e01b7371df13bab11b56dbb7507d03d9a6ea9dc99e0e0bbd9d111394c5a93c09c855896e5ce9e7cc02300f6a7863461ade3d002abdad95d81ceaa0bf7f90f81a0b464e21ac84cccc9130aa7e8f3f9578354bab2c525ebd0d56190302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023034a3ddf92ed694cd0a3d2a85c1d7fa45cca66e5bd0c74e5b246a300ef2622802740b5b18b8b4bb981d470b3d0670e0f502307d583d43f167de4d836fb955aa9a8a9f937ab522f35a6531ab4f883a4b6b710dbac7b4f53fd4b14c02ea028c34a72f1a0302047c435bb500673065023100fd853b824a316add9d6bda32af780097552cac5cec3bf09a1c606144915cd1c88b74510a4e2050d0f01714d6c216f950023079d13d1203a7ba7ce850f2b22cb9dfad9a8cf50020c1baa6c767696431f31af47d1c3fee849ce5ae3c0054ad9fc0246a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e10ce83115984b767d00df1299c7b0bdc8c6435942a0bd7ddc0bc69c49c15b14f4f7f56845c33e90a1e5b037cb5f5117023100af631c5485bb066d2ee46146a977450ee3adeaadde9aeeb17cd1d0e139ffea058e674084bc6fc4f9b9d6efe25b2f47000302047c435bb5006830660231008b8e76eeeae7df04216450c28d66ffbb342488f83f6372992709634aeb37d80b63e25b51105b75c2a476caa1d255decf023100bf222d8f409b23efce271851a07ea86f0d227d3eee11e57e2488b135a554ad6668e6a8dbb3146b621401035cb6d0055f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230234c1b86cb40a4df3411460d86f495c4d326b8ec8b707d7429bc58dae96ebb4edac77e0ff77a65a1893992329990e6f00230681eb5c491ed6c41e59d92d3ef6a7dad8c1d140f6144b8e0ddbc0bcdfb7dc4636d26ff34d609a34b1cf7dfb7f1a917810302047c435bb500663064023038419b6a4ead3a81183818e7860e38909443519c094b2036417bcde20504afb87ee510731769aa7369e72e754e1716da023046f8c1391ade8d57caa7e36b576b038d6701a325c46f93bb2ee8bec3b6f399e115ac6c9c43b457f4304e9374ee4e05f90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306683ac3874e6b2fa1f9c358c969cab826cb88a950a1657b7b272a03e1fc6bca0526406d46faa377128023c19b5cbfb07023068d2964ac6f6908c8094b1c5fa8ec7939c101d309c38b721f7c0aa638dd61b9f573e7c572fbf4f8431e13146d60ff6160302047c435bb500663064023020eb898f4881dc153ec67f0b0989fa2756ae2f287ccb130638d4cbb6b9105ce47d2dab6d7b145c2fe03766f4657292a70230172219a70e2cdc072a0b27aaad5fe16c7be2677279080fef634028096f1a6c05c025106a5226f81b4ec7c784e2a27ca60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023030c8d456588e0e26fd17e8bd673baeb72ebc69e47883caf2288d1b55f7f738cac54dd1b55e0ffb533c4f7309afabefa10231008adba7a9bcbd332254507088759750582a45d7394020b547e9132e2bdc08c684eea18b1dae2adc7a53b4c2065c88fab90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100fc13acde08fa90ef4a4efb7c45e489c89b981ac20ded80e5509add9001fe8c9ce0cf6ffef9ee6097f2dd4e70fbded7a302307becbccbc3fedf2d7dedc1929bda9611dc82941be0c5a0dea9fbd3c33dd8e551a02c6666b64b29e441715097bb8cffae0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c35b6c49abc4fccdd34e174d02a87a66d1c78c1f02d8a6e161775bef1a274d4310eec2f3d6b59662e8caed46442e45690230447cce7b574bd5975deda604ac2fad5f71d34e2a90916b66a7f70a13e237dfc4d3e1785d3ad31e8410912443686f09900302047c435bb50066306402302387da8d407a0621ccfd63f3797d35d001e97da289a14767542d7ccf4d3288074e5988e6db3e1d259951f9a08525b42002302e89abf3238188e35b71e0b778f2d1dca2e898e4a95da30a4a4a8b6faa24119f34e298297ff4a455466c1cab921718490302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009c18b3e37da6ba00997986d050a80aafc54afc58449f85cb39ed71effd96b3780f9de11b08c45856d16ab8497b0bbb22023100beba5faee6b593342f5fe843a6017e14821fc0b759f187c3ef295894fa9f64849c0b8512134aaff6317bcb5c542defeb0302047c435bb500673065023067c82d42973e7f90a0d8b849ef1a8179f8875c347824aa2d6e0e1a396d118e01b320bd269e45c35d6e91aa3b5ee0e742023100dff366c180ae7755a6c56f79910e1fc5fa6c225227e9fb1742e0015776f029b292b000c4f3da5e54888debd0f853c6580302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100bf3ad3433807f37dbccf6e5d70dfe766388893015c32b35b6647bf980c3d625ef6ad7e60abcbca0f481b0fddb68139db02307d099ceb83dca94c954a3495c6812612ecd97debbdc62258777ff6133dc15dd90a9a3d2621656878cbd2d84123c136280302047c435bb50066306402304cccc114adee6d1b96a1695302ff640f35da426e230b9d0c6051288d9015fd1dc13b6d6f2647e97c24295df064ecaec202307b5532970d351183aca286a7a5f9b4817f495c34dd0413ba241834823a6ec833817d0a3c7843072ac7f9cc4f771b84340302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230182fbad6c713a44088d54503ba83880d0fe1369b555238f73be54dfb447c501ec4fcf8e4b866bbcffe249b6182e4a3a0023100e05f90498ca5200228efe9c710ee4ace3c3ceaf0c44bcbfee00241a4340a05a81af7b04038dbf080f6b6c8ea02d6e39c0302047c435bb50066306402307b26b4f03cdcf7522002e30a7995dea2a4114e1bd21e95943e18146f3e18a30444000cbddc8a7675d6e4897ae2c34d7a023064efb40175b47afeb34a6eee2e8718883985f5ac6dd6ed48f6a91fc120ec9f6e903c994c8d9939c3d2c77945a4bb49820302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100eaee7830652ec0740e343df91c691208870efd246b3b2bb29e1ad3391e0ef31cb9ea5419fbd396b4f5ebca9ba7c147ac02300b563795d9978c6db16f01d2ffb70ffbaf5d419b1d2e4704e71e71652b3965b8d05304566682fa9bb61aa19d94df56ca0302047c435bb5006630640230323f261ba0777a4b0d299c5a62ce610f1eb4c243c3d79e77128e973647cfb99a4c9d7be30b005becd6ba9ac08b2dedea023044df19a7ca6a716272694e5a1d99a22541868b1f2bb14d77a47f2e3c6e2bc2a0caab18807721210fc412f204c36384c20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f1296de380696d8c01fe54d62801b24c106dd9aad22328ad8b8f20663cafcde0f645796d07feac8e8a46845c5cd891d6023024ce12104d15f38cb157abe874d2a8ae3dd895a09678cbfb364090211370b9ea8b022a58f7219c26d23e94a2b64b9b6b0302047c435bb5006730650231009463092e371d17c6715ef63c1c7759be61112b3ff0fefb8afc83b13b297737069357f21c06c86e277d84fd9971a3dd5c02305040246a40b2e143b206b175ef88064e385dc55491bba56bdd7046ba09c7714f0d15a301ad338eb58ae685c5846e49440302047c435bb5006630640230461530e18a04e79e3aca08c22285d583b09d39d5743b8ec24d41de6c7551bdbacbbcd6e99d9960436b22cad174a9f446023052875e946978506f300565cb5a557e16264a57ee57b73e8489a96984b1f7a51268244dc470cd791ee5686883159d9bf70302047c435bb50067306502310093681e48cb2ddbcf9134d5158cf902657e360c3359513225dc74edacee35d4294322b4dcd2a2b60cfce3900b90bbb6890230033be7506f02faba224786cd155c9d95cd98a07b2a03e23742d66dba74e407a37fde83a0b1066fc72a0aa0a5e38ff25a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303ea28dad7d38a0d27ab7ea03362abec2795362e3d6deb0f453af9b589ee3145448fd72e9638073f0fa99333a587cb2810230652fe17c188388cd1224c1491cf0e67129f9e5356ef4584dd5f1d855927b47306cda71b6ccae2ebe1a312394432637ce0302047c435bb50067306502306c90a340e87c6f5805faea12994068e6bc132ac359eaf5cfe51e41499b6566d82a0f778564e0fb848f6f90fd37803b8b023100caf91722f98961064b1a580fe30227d5d040b27291a30a4b5e4d468ac34c98fcf9aeff997dbec0b6bb5a9f2acfb2306f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303318033b088b154c7e7b9f041988c5e618d91d15122a833cde409049369d3230f055476ca673b9a20afc1eb0237e2625023037fb8efe1223830cf0e9f6fba06fb9810c999bf9803662127c15c66630fd50c4e5cf10ba319a66548b3063b6dfde80150302047c435bb500673065023014291d27b2cc402aed46d77c936cc7be2631b7e74648cc3de9b4dce4e330dc9d8916b856c96b4d2c0a75289261f9926d023100ffcae97ea78895458aa145586f16b56aee14fa1823b3257ad71456d20de6b741674b1cb4b8584cb5e982134b068065850302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e29db14e4dbb9b6717d9a7f4a9a923e9da02acedb692751d53d03b07a5e9e29d713b8fd91b6be9a6a18b75c0ff7e7e320231008e625d1a22c4afae321c4875d42600f9a949e29870f14830713abb6e859e7efef34830c0e3126500bafec327477896510302047c435bb500663064023010ddaf3a8d980835d63624fc22437823bf523e169f96e34679d4709f3aa5e8576057f57e3d5869a4acaa05b28f6476c002306c65ce45951a5d889bda820381a7f64160ead1b1afb68cf7a042a26147e78dc454a443d34316b48915b6b89c7e265daa0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301110ccfb613d818a2ab323ce3961f1d9f3099c5ccbbac3e29a87a2eef7691ed0cdd04264ccef2b2dc9f5cda5b9745a81023100db0ce2a78d66cb8b21b57833b5bcb06495f09903b3d73cd51c892deba0074133e054fc8863da8d00144ab40aaecb2c780302047c435bb50067306502300ba38aa127d5e892ac4b82e41b8f053158c4fbb0ac2a9d2360437b58cb36d51ded26f68a471f3c22f646bff5171726980231009c9e739fff4ba4d6ba04b9ea6dbcd476968ff16aea3f252a7a5ffe04a44efa6fd63b188085d24eb003dea513e52e687f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023023874341a62b04c946602ef97bb8135e7c481a7f97bbb9c44acadb3af5c0a9a8b8bbce4b98ce7666f6e258cac3fc9297023048e025e38b14213a4e5d846848470596f823f1009c6036e2d296686458a0bc7c05514c085f166cca0863b7c1997b902d0302047c435bb50068306602310096a89a1dcc5cf2a1145a8521de098361119af14ad3328627601b0443268867cdf8fd90553ff0ee137a334ce6bb1bb3f5023100d182f37f79486de62b37da703ca95a6650b64c5dc6ec176dfe2c7735d1ef1524825391a8b1aa3617629b588c2d487dca0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302ec85b383892d4a3fc8fda805fed039da595a1f0dbed103e1c956d379d9d05c5f19eb1ab8cb4483d1c8735162998f749023100a0d7990d65a3e0290f9cb8824cdfa5d7772cee5af929eb599e3175abab8973e554da8d483e345eb6041a72be7cfef2eb0302047c435bb500683066023100d20a073e71c8291d29ee90ca1ce6c495003581cc735d9cd0ea7917061384eb46579b50de1bdc0d4e886340f371f48153023100fc5a58c0d0020b9c9e4b0fc3a43c36bc2361cf264ed2f2cd2d3960ed5a6786e461d3903a471fc7daea10df63e62b94800302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230680e2efe207002851b7e992214a5ec3a5bc755b12b39326cfa409850599ea91430da8d1705ae4e7b6d9674b66f13da09023100eb240b03c54a2f4f534d70377501977154e86f575358b2a69ba1c7de27408fe32a9cbc82c22358d1e293d96cd5affd240302047c435bb500673065023100ccd90f4689cf78df843230eb05330dc83d317115354055b2bc2155c8c1b0d5fa6733e405a5e470d07ac85b35dd764cea0230061f88060e5eeefe453fec37b370c09803403c6d98ee38f72e793688cb0e2769ee76beb353a1d8160eb1e35ade0806000302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302e1f0cab036f82230eb7e34d6bf2e1a130dd99e3bc8bd91dafd8d8ad423bf401c69a8285b39a4a2c567103eb7970706102307f9dd774837733d1df4f81cf95a6ffdb24632bd051c79100bf11bef662d04ea0d384c48e20469de6e3fc99ea3ab368330302047c435bb5006630640230640377317549ec67a8d3a2bb78bbae3e370bc72017257681cdbe7d9eb36f13f98d48b705f5c28598c8b713855c345dd9023070e60366602853315e41ef960574391002dc0bf4d9741bcc1934b9f672652cf7df494c5bfb31a671afb60d2ecdf903a70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023031f500a1c6abd6f7690cb9515f7fb618a20abdb22c91604fd6b25d12e49391b816b46485c7814cd23b68ff687bb48eb6023009ff5f958a93f3177c0244c29102fbb3e35f34f97709c60de8104cb84cfc2b3f6152b8cebb776cf81000a04c7a276af20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023036f704021435540a9e9114c38d95fcf3c509e52210a7bf85427b1159e42df544caef9b554509124cf1f1ad538af9b62f023027bc2fb9623c1b7dde5f93fc5fb025d6b3f2c627494e5817c185ef051c0370f7573b91aa6032a57f16d97cd38c7ff10f0302047c435bb500683066023100f9a532baf2f4eee88b4c203dab6f0ef66977c1899ad0632890b30a31c51d5a0be7fecc70d7ac8ef2e36d789b5c684de1023100dd1af42d0ef751cae4f3c3d10f1a81683281412aadd17eb1ba7bec3170925b34ece08b3d33ec519da7dd232a954b90010302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e8d33985bea8b73117fa84042d994f9bdacd4af5623deeb7cec08e672bc36d66a533745ffeff14c882d09459c7db6bd8023100cbad01e224ec2c819cca887f4be08d279149404d00a59cf96707f2fe61f87035c183428cbef379ce5e28410c7bec6bac0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100dd397447cefa9a69471490f9125dc063e68d91afe064d870202dbf5a5c3bab89071ff668396397742bc049943def6d9b023100e7d1ddc6e09ebf50832f7e91b38afa926f57de67199121f8fdc27adbf06107bb3573be31f837eb23012a914d1382413c0302047c435bb500683066023100b9c0709e7fe10299ea126d0787803a239508ab57a0876a27c6edb930d65e6e4e1f71f494255e08ab8cf18c5945cc0fc2023100caf57403543cbb5b7e21272c61a4ad8950e7d93326668fc6f7e888f5b73f930275379631311b3835ffe1397d7502d8740302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ec53421dec0acae1cf9624d5c6a55cb473fd5fb0a96ebabdca4cd2e35260f3c6552391c06566ff34dcb7d163ed9868fc02303c8ca4959df7b6aab6d67bc3b61190d65e7b196aa93aeb90a5f5c8911e16bfc72a375cb0e6b6020184ecf293e9b062b50302047c435bb50067306502310096618f760c6aadc286e6b58d88c923400f1c130d731aa8a63048ebae814270293942a0d9c6a381a28431c7be35c0408702302d51e341086385a90b85c3c7dcf0e5f0709158b1ed129b5b6d35e701e051d09e0a0a2396843f144bf18d5dc8d3c59b210302047c435bb50066306402303cee46d62d8074cd0a26120e261321e62abf5a0aef7fa31124f449667130b12b4779c12ba0a90a763581b6b1554a333202301752cad57d98e7069972415e04d66d1b2676b94ebe9fce172ad5fe5b85cbafc90869fea998bf9f83386557fcc28575980302047c435bb50067306502303eb406169b88900535ea278cb77568f442002d660a1b2320008702130e3fba86a3aa4cb76b591e104caeaa254457f3f0023100eb98288cdb0fa54b5ff34e4de42d7239bdc7ab4dc6084a71daf7739ce77c44f8712c88608e31e8c82e38ed47b7b3adc60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310084ec31a27b1de389a76860019718ef144df12bdf8a09d6fa352e8c0eabbee09bb4e7e256c4182cf18d4ca20dace793ea023100ccdb624a4ba1679e54c45ad9181f0a805286cc0b4af7c01b2d68edf2745e90d28a093c897db671da4c2f0711022c3d620302047c435bb500663064023060de1fc96488d1c6e32251f927f9694a339ce9a094edbbff346681ec9820a598c040e3cd286a76e0bbac5c7bda8871df023055197199d5fab1ce9a89812ef1f6d10688bd03b6e76f3568eabd23e3b44bd00b00cfbf1e50f9a13fbeda403722a7aae50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023018f71306ad4dfaadad55c39244f75474a19ba525762a96165e8b47a65e6ac5c20d285d08d8e1411f0e126ba1df6f2669023100e15a054fe72c73149897aff615566efc48c0bef276bca6e2f731ba3a1d233fa0cd00abb3fbfc12f1f3da0e32e9ead93c0302047c435bb5006730650230611ec44277930467a7db31311ca333bac66edac44be3eb37dcd5d1d981031cfc9006f0ce9cf77e648e6cb15f6fa2a9e5023100ca6d58fabfce3580b2e437eee1c8162216f6902c682ccdbbf3ff7492e3e6fb9f8549aa1ca6dcef63eb58fd43ff0f80e30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023062e0ab9e6fa97a1b9496504e1ace35adf6714ab1b450e67458ebff67e1db39fdcfdf8e77b3b48f79d2db63fbd0e38c7202300671ff132b987ce7810c1efaae41d042f0ae8c5e3f53d7a945bc75992fde070f060ddca239ad73dcfda9c88c5f2705880302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e9b3d0afbf2f7afa2a9a3119ec54d2f3e930d207a512e55e7ef70e2b9a7cc2f2245d077591e86ab2050fdeb05d1e9b7102301ca44084fe3577fd4abfe94d31b406c8ee1e1251e065b955d6dc091d1f42d887e4a7ee35a0fe657d1e4b5df0503f201e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100fc19d1d82db54e0e62143f91cf42455367514a79b50fa07b58ef5ba6aa462b1558ea17c65e1d86200d995e1181014373023100c982d1ab3edaee5974ecbae1122b4cef12adfb2c6b8a0dc4db51e52d7780e2dd084a8ae83cde386f811ed18b1f5124370302047c435bb500673065023100c5a63ad0c4dac3a54926e3e94dbdb2783dfc436dc40428a301784c5c87ae35cd826c7cdb2f81c270dd7e43f6f6df95650230693e653a0ddef5e6dc6a185063a0f1c578e351d1df571e967484c048378fe76c2e76970fdb40eafbaeb904a0242964ca0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023043fb800aeb6c43906e9aa79f5da21386236af863f2372b2b6da906b5abcb89e60ed1e04a522d5d333482e30fd506dc45023100fb26f160d4178d20d02d53f06c95b50981ddbc44605e9a673de50845a6a5d1d45597cadf417feec884fb710b45e46a350302047c435bb500653063023014cbc7965152cb7a608b8e44c549c4876d643fd6f25ebca0c2936ccafe05e84840856938d510922feb94e1b222d684f3022f109a8ddf2ea0052c868d3123ccbf5d290e380f561353800f89168480c735bbbcf76e0bb96e839ed916b5d296547b320302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a95b3b97f47fa31154ee81a4ecdcbcc37265e30a59eb66a4f6c33e3561bd1f17828c0015487ba7fccd780de492a16e3002306e7a2b62d4bcfe69c7f23769f962866247e7a510862b0c4f122ba4da71975244def9214b354b2d46d5ae1ff0c0fc46720302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009d59273cd54e0bc3d5826bed688eaf87ea1bad5b94f70461dc6184bd9b89bb7880197957eb6d1e56bea1ecf234a1e45002300b4dcbcf0c535b2e09f9bdee3fb80070b6aefb3316605d13ad4236c12586c34ad0cb272f25af07304748e474064e63e70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307b55ae88c1f4a0cd261c8b59744ef81a072281f294ebb82f49966043999e80cc8fcd000c813339bb8d2c5ba06783884b02302ba7c2834006aeef3d86de7ad7dba124cb28d7bb5cbbf11268e908ecb7d40e2bc2a9324d416cd1ffa432b04ccb9b57ad0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230069b2d9c93a3818a75bac1888cbc7d035a823dcd5139d1d37509bca5659483c483c9b058a43f62d797ce72a2615b93aa023100cb1e5a9fb1cf3a229d96b855e112b92a623e39ee272525c59624ae9f084e440434c059928468dafe4161bbc1f0ff34d50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310093553065ec0ebd786145fcc919ce806eb81179c9c22f7ec8cfb35a7850be0a1416144049284df5e699082800770b33480230495a04641416d622567d3f1385a030a834294c13e9aae2955bc9674004acefb38b7bf35ee3c2f606742142629b5691a70302047c435bb50066306402303d394eaa002c133302ffc30172c4c40ad08e2ca347b8fa909103d690151afd92e260e1c6521db28cf66dd61bc16e2af202306ec43f280404c664ea1dcf7079a3cd1568a50d11824f2ca1cbb87e2524a91589f05e7419069c502ff39a274e4e85e78b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008cc3ae247dac06977d0c91736ad9540342f3a490a1fa38e93ecda824deaf18150f5e739048ed01cb9128dab2e28550d00231009c88bde546b86cc1053ab8bead3971beeded74bc9e6ca9269ea9dfded3b4d0ac362ccb630e5b76c4d6eed12be691e5770302047c435bb5006830660231008ab6f9ece8aa89cf1c7f7a87f1099bba437e46db5b6d976699a4a85a9d0b2d7218175932b94f2828d689c101bf1f866d0231008ed36f54c4ac965162d564ffd464f7fde2ed6b2fc647c3f5e82210e84a93454e40f2e66ad408c98316db3ab6e97791fc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301af3143f56316c71a5df0fbf720807af7f94c20bea226d6b9f1f2a1a8483fad1403c6da1a13e042a9f9a1439445d8ae50230221cd2a3c90ffce4122d0ccba674938ca668ef35d5855706ca77b4d7ab2fe5e603ae6dfd200873007992b9cf5eeead470302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b4a14693f4f37ee23a44f7f9d384feb20ab5b785c96923b0d3b5eeb95fb99a611174c8b63b4d5d55ab75cc5f47d70703023100f4a7c5ae11953da00a0c955890fe2b267b0432fc238ffbcf1da344a0257e841affea470701b5fc70909d737cef7b659d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e3c223e2ba6f527615d13658cbb90fcc6de43bff13e20b6d16e52495ce5e423d13050320b76a0592653fc2d777438c080231008d46e45a8ec43606154852f756b99aecefc17dca429fee818db78aac9deef4ef1ed107ea4ef35fb31631bbfd35aeb6930302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230155e3689849ac4cac22bcf6c0dbac23b797af1d31ea86485a0b46b6325f3f2e4bb98713fa759e15c5e792eb5521632510231009102686f40c8dfc400412f7265121e133c471511fcbb42c067f8989b3d5a0450c7231c99ca66882fc8b6615122f6ea980302047c435bb500663064023052b3100103b22ce9582b1f205826fb32d32ddb9c0aa57ebc675403194e09c61cc24413ca8e3fb27085e8d30c3d52097002300ce956030290db43b6cfb1b1939d7afbfba47e7375f7605b4fce4ae8c977d3b17e60796d15c99359668244c6bc38325b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310096dccbff0fbf633013e5b75ede9231382b849fdb81db778b344e8328bb40fb9aab37d13e89828c4b798e32f7e06a8bba02303448d2ebf9f293b880202fc9d48e99f17d67305fb0e612b0dbce2e7a81e1e0cfd3dedc10f928cb0294e7fbb42d2be8890302047c435bb500673065023100e2b1ccb1adf9dc396416dc768f10a23bebef4bd71fa146b5040c0c7b8ac2b6e38d4b01908fba90f469a4895e4187894e02305a4a52b67e663b94d078cf6fc7b45e2909dd4d0a26fbe30570e06432f4ac5e23438d01f0620592c21d13975871a012ff0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301b0802026a05730bd520496c44ecad22f1d8f97e028a2917d8e1e52253ca333493eae7ea04f1d835f4ab7a3e093bd6a00230341dbde0e2ed593134cff678ecd070575a08a0d3fcb39da61df870774ba5d41239d986881afaeccb5045af2720ebaef40302047c435bb500673065023100bdb8bc9d76457c5a5e51a9ffc3d96e80808c702ceb1ff60990621c6329081f16cade070fe1ebfbf82324ad7bf235b2ac02302e21008e76adbdb650701bb035a797975fb50f93cb40b3b9e5697f878856d0ee66f3471dea827ba1decadfdacd1468c00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008e351952249e251360f095413fd768e1298589a771f449d5bacefc92f82aee19bcfb0a2273d17b9883b5373016bcc5c6023100cd7a81d00b19eea83855d62717a49eecc2ce6ee051b666985da911cac74b86188ff7a2c6a45dfc5ea853adc4026dae690302047c435bb50067306502305070301472fdd9b54fcb3ce8cb7ece90110e288c165a517dc1e6ccc8f8b7513e45339917d081e0ce54a084fb148e36e0023100eae11226d8a6a1c3acb68f4db2d2ca2d8636b8fad4d370f4830275f9af5112f44349c0c1e23c7f2d0f0490d5fa845cfa0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023066e58cb8df20a060c3869657e1336b2c499f7d3257c9eab9fa786130a91868ef1aa32984e0ca11c8e92946318292bc0d02304bfc1ddfa2d44433e9b2e488410d9347ba8fbf55777d1fbf62b3caba777e398907ac1835f16ccdec2acce8b085c222d40302047c435bb500663064023049a5fe31f495372b57cec17d277f66fc6efb620f30c29d5afc584d18b6a98562c1a3a83a5952d30a923bea78bec9fc25023017dff59703a45c7d9fd18e4e0f26b756dd2fc2e65ca37657c3133e58609b42a3b841b9dca3b3a6ba5b880560c13171eb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b8f562329f245334b787a0e613f9643ac1ac0bf0adc6a414f87a3bb205d6db449a20e7ac509788e437782a3753379ec1023045ce2fd6da823f2ba1d42600cb2b10ed1b3e4b10d8e768ff4ab3467c4e1c0cba639ee934041a257795b8356a8b453a6a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f47318a8bd917bcac69c4a95b326fce9f1f79e26a13df1e0654436e24443f3ea20be00e2a5009df63c799cb3ba68485c0230565ba298d773e0eca2d17ef81742c2caecb8e06a6d1b6fd7d2110cd5c86a496bba2b4ea780e1be6a577d1e396cc207cf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f160d44bea26a79b693e6036e2b7f3b6e789d0b0c33545b1bc85f9a96708d33dcdc6cf74782f868ec44a2c3a9f62ceea02305a9ac11647e282c28f495aca2f4dfc43d65c529d6d2b4a69f0a5ff58c29ea6c143432389c555511d5a349ce9a11fd5480302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023071567c23233ea9c53ec3dd69b72e60cbf6135b1eb60724b8f25eb91b4aababa3a5ec0aea94969beb3dd3c20be9672df4023100f978c9c842dc7b3baf6849996d8554d1af5e73cbe84b42dc1a63b72a32fab68db63cf9edb2e17349aeaa9ce6826a4b630302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307f7357e52e171dcc7eccb081e0219323af488d76e46f99681bf2ab6063c21a84221cf4fc5cbb18d2ddc94be14251d7350231009d834fd0c1e7bc2d1e8125c13da95b4ccf92df6ee12c5ad71ce93b01a1dbb159d5b60cab654a69321a43525424c2a5ac0302047c435bb500673065023100c41c6d4e12a1d494c713638bbdfef193e06a9fcae32493e180710760516638c254766660a31c777de41e747b5ad47be902301f9e1c747819678f4eb7a7d3aa66ade2f4ab0023e0875e7ddd6a45b17d78bff395159faf96f4e9f51821365eed02e1c70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023049cb3b7e4be34fa32cf51676eb61e77df1fe013f482b2ec943366e0d45d1e3a3534be81b9413b4fb6d485f4bbcf75378023100accd835e3beb6815c060d5cf3441cde4cd19329aa57f2abb7afb0539467373960de627e5a406dcc20fef626df400b0ec0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c79ad26778f025c0482aeaacccbc1e6d23c76da1883b39b19cc4e4248ba55817b6b23ba3275610aae75bc93a709c7540023100cfbfe3bc5f163470c46ff79c5f3a69d57867f65a36d2e5905ee39be9b809925d479c7e31512006811bf5f0b45f620aee0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300a5cdb02cec57d7925b5dfdff2c26164b8687c9d57e8c14b43ebd0ed89550d55bb0e31d620b00c029e5b7356d1b50208023100f2541817d7dd0c812577f815d49d1948fb72ffdc0b772c20ca2f9d035cfc4816f4c8742e91cbaee7b9a190456346cbc90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304faaa2a4643498d9eb3387cb6ba1d86863a658ab466c24d33bb893e926614bd90120067c23e26fa074fd7a866df435a7023100a172cae360af52beebfc06b72163a10479b5fb1da61e6c78b22660b4160d8d15a074fb4652d30fe9820814f9f7b5c69c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ed883a9afde09070c3cc039ed982f1078c43b69f7c625ce974820588140ddb2d83e95131eb57e71fddc1c0e10d64bf8e0230290b041a64d3d322b7f23afc706442ebdb357a0415ba08c6e5d225402836136d94bc2535e919e1b7a1746ca17b6ff85a0302047c435bb500683066023100c1452625a94f3733e2c39defa6eaf19fa2dd1040022a45c73624fbbeff9f5b7eaa104d026988ce11d38ec6f723f157840231008f7c66348711dbb7a9bedfeb391752816563a37322b17c2c9e99029e41ac71d33ef5412d1e7647b36d3bebbb420aabbf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100fda536d35ca21cfe84ed87e58a8ea1e24a94be2ceeefe4699c6695e523bafeb721df4957c09e571c5b353e04bf9a0cc602307d8a3b00e11a643082b1b64860f8efb36df644de92b8933b3d7503844387600f637163e2b0e63d0efb1e4aacd7c93c190302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100bea6a3a7f6849006b72d33022f796a279f77bf48256f492c6cf344a2f13f10b98ebba471b76c9986e824a97257975d2f023029e0083b6abeb19f94a16ac5de75472744cc994ab4a0cf7426b74c1229f548a581d627f928c63ed4103b7aafccf0f5850302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d8550ab60b780d0d800f9f18902f9c3b5c6a5a1cf6f761a3dbfdbdb34a258d152a5f5799ddcea1fe046a520bd87d9b72023100b9f7b7cb3e81f5d4636b05f36bb1932e9ac98f45f61ee35735d12f98acec6020bd3ae38850282d0c16d831a538dc2d880302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023008c3b0199bf0b093ea1c606d6557bb4ae8e87f9566dfcf6d91f343c602ed7fe1e3b80c18729172ef0d46e15773bc1692023100945dcf1448809e96a2e7c278fc30aebcd49be2dba939a928114cb03fee7db688a1e2950f481d1a2a99cc801d2f30a9a30302047c435bb500673065023062611a44d57d50d0fa23dc30996cc0c80c5b33cbf6d84ddb4f17adaf58133c789e3d12726909be9269a541c4040f3956023100d14e2c5c0a14339965ac2c4be3a62e7314dbd61c94eea62fa438f5e93bdf790c9f60bbd32c845d61fe4b2ddda47aa21d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023061ca23c72235bb5f352d64ad8687aa83283517d8cf34ea9e6964171e1f8f5dfe94075d7d07c3ffaa0511c95e7161594c0230680fd39cd3f10334efe61594c385ced468c4e61044783e2567ca0a69852672a5b9f05c4688717302c2078265ec2f9e690302047c435bb500673065023030f8a9d866a7999d19774f0fc0b1a7e9d4508214f2ac4b28f716706bf0f455aca126d362e57e7cb9def367bc8daf8477023100f49bec7264f92134bfc8153d49643c2c315af968e22d338cdc62f5fe085905e49efca3ae015de2d55a102f439cc54fa20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023017372673add98f8bf75361810a4a7769edb9604b8a5a8eb8969b2bb76e05d72da9283112913a384e592316ccb4665b64023100cc5269f2307672bfe5672f47deb679c1dc7b27c318c91811b8b13972fafb0de925dfefecdb5e82e4c6c7cc588cffcf310302047c435bb500673065023100fd1d58e475406680dab8c36e3599908a3049b711850eb4702a661b76dd89fcfd20d3b8801bd83f67577bdda60d86270a02305022eee664cc7d9e60cdd20a2a84f2bf906c354c249b47ef5bdeedd4822ade763e2ca6e1ef95b788f20e6a77820874a30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e8a4f0edf2e69f43578b09cdda61a2a955ae5abce16fdd82a977f116a60dd09d0374fa2d70170ccc4d9f84fd177d355e0231008f4a4073e223ed9c136a8821cec413b2ccdff437174896dc159356fdcb30cd19c430f7c02671e7df7184a6a5504e0f660302047c435bb500673065023100b8a51d3d580a5dd082d87de247f971fb94e3214494b7eaad00aad5e5dadf20d20015b783e2ebc1020b305a16ab67d49202305a88476a4c26714adec983e2cf11a7f6c331a37ddd2ba07aa54f825a413f90e5af84f025659b16d53629f45ff76fed350302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c61dc73beb13588fc5e9d6ff3c28eeb9e1b235f470055210b6405c5052b9ef8bf4761655d9f0ba5baf123973c6323f3a0231009ac344dcbf9539f9ab126eebf240de8e7bd52150f04990b4faf6c29dd1e2f30af423ee08a9ab5689875c706bfd1e98120302047c435bb50066306402306c5a1642cb0f48df6da957834e86efb55711e5a24b1c55f3b85f8ba168e0ddc16d6d870ab2f7964dda5bac3f9871923202305eb998a77170ce1ff810383cb9dc76839d16fd0a60075c4088265a2c3c1373fc9076e318e01021729ca3f8e4479b4a1f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230053b3f7269482046f6de2741b2728e0ab0a30a21b2c8629ee59aa2b5b8bd582076b32540457d7907e87fe79d25e17176023100d0b0702013819539cf69c734ba733b26ed28f0d7ce554e5bd65422431a98ecc3446b935e54ad7eae3bf1909c9ae96c4c0302047c435bb50067306502301c3e142aaed4bd8b97d49fae0fba417d48a314764e679c750364155743ba4add3b55e13f3ab94dc6f73086e2c3fff391023100eacd116f87c75bacd741c82c655d9bd7fbd402d7bb741fb57267fb58520df6cf17385cff61f1addc30583b9cf221f2600302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023042ef416be6847a4ac0c6c48a7eeec06ecb02c90b43a52446f1e90df165ffd9f5da367b5125bfda2784fd492fc7c12751023100af64bfa99d3be087129cde1fc1df7256e5f9c3bbd31ce6ebd5dd875536bd5aaea7a1eb37f77f7e6f636287be722c72f60302047c435bb500683066023100ff5748f49b883e829ecbb8c8e456f7896170ab51461ed9602f6c50dca5ad61f124967b3c0bc1a8c648f6cda2e9222b800231009e2d35efbc4b2014f1796b66008f0d711547641988fd45a277d6d298b3563e65d481e0c8cb28255a4893bec477693ae40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230644b1ff42b62ab7b5ab525c1718be43f3ccd7b26dd115b72cf9e340e642ebb853812ffa090e7daf09c54a5ecd3a8c56102310096e6a7295b11149512d1c505d55817bf1aef84890ac7d5431667702ae8e62849837ce4b369a8c04790333ef7dcc800240302047c435bb500653063023020373e83ab888902ace93b0ec28f933219206cd6eb4767bc2a8ca2fc9408aef4e003f38e8f34b433df13f05c657a90df022f51815e339821f79a03c58d641b370f2642bf2243d26472a45a403b0bdb3d6a753f90979bc83c9b7b030491eae197fc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230490f129b78dfccea410d2cf5c8afb7db47baecf52a4e19b59ed22b684d6e797fe0ec893e643b4f47cc74e03530bbf34c023100c7bde19f48ff5a628e494ad12e79fc4e0537e872d7978c42fd72dd19f346c0663d4d651255addfddb38c0355bec9da0d0302047c435bb50067306502301c2a598c62173deab620ecd5a375956944c6160a15a6998344ccf9f37802baf07b9053ca4ca9fff1e250c9b25b00c972023100f7602862955124609319615f069860c180f6eb9a609b7f46dee9ad6ec9ab2cbf6a7876860bd283fad89f7dc350b0c3f90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ea7ee15b45e3286779ba0e69f77f2010f4a5479029300b66bda73ea092e9a16fcb3b3146c1e3d984d20e3ddcdc2310fb02301042da0c8d6b6cdcf2d1b7e5f29e016806ffb7bb4941525a2a97a6f4a88386b8998c1f819eb08f0400054259ed1cab730302047c435bb500683066023100fbbf2a0238f0987d81e543d98dc8be8609c93f41dd5d24b8259c15a80caf413bd8fa38437c3ec22619e6d804e61aed4a023100cab211e8f71dc4fb9a932545b280d2a79520dcd30f6133fbbc7c4c37447b04c615c79dbc97d81850d3b459819790ce630302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ed78ad6329a8d2904c930b1d6f6d3a7707a3f86fbb57e700c9d446905b6d1cacca17450aacef03f3763d92c540a8ba60023100a4051a9076f6702e0860f0365584f0d082555083849dbdceaff942def0acf5e5caf947d2e527c516266cd4f6aff74d7e0302047c435bb500683066023100b31b6f4fb342dfbda262db15e26bb8f2148b9345c2e9652e749538ffb730ec7057052b6374218cde8e3b6601370a93fb023100950ad017bc368cf132e19f4049a1fd32c8383934354a99a6e9404dc490dc9e4523c6d7a573bc7832059bb258c1b64b420302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d4b4db6d10e5484ead3d48e010fb06e3eda7f5a6bc281dd06b7897ce6d1859042ea4cd56371de957dd82e96bf93c7ffc023100df7195650eb54b62c2c7d7d5a08dd71563bd147e02985bb6d9ae5308868d9022aa8109c52c5d2d0179846971bbe747900302047c435bb5006730650230701f7ecf638bbd7c1f1c9e28546830988bf9d2fc58cedee72f3e040167000ffae6eb9e8b14fee49c6de0a629ab395206023100f3734a76bf4852c0d6e6acd510d75da2ac00490ef9217d40fed6683dbcd7b5d4db4ec0c4e936cec3aef92914ac6665750302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100bb93509863cca012c983b79075998f9e73bc23867657bf3f2b863d501b44cef7fc2f819191b7a48a32ea742b7263ec3d023010706b18b3cc1bad3cc08cd4c79786160918e48fea0ba0a2e277c024cad083596095ac488749829280b0d598f04a8f970302047c435bb500663064023065de1bb6157ae353d5b1cec468cfd327211db7b9df2954465a3a4b9b46e0f01f2e0cf6777b5ea3502d0f4d982030d8cb02305155a2b453a632ccddaf77b4a12d6906c7af506e3ed2899eb85ec3a66e02167ef8a74e684d8d0a2677e7e2d3c5657c7f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230627fbcdce8b2e6ceb8a8bed49cecfd6b5b7bf82498c843f7e52c6cd2e8f6557b0476dceb3713c72caac2091d145ee3f102307051d53310782263a96f9d6f3d9851e1b3bca96ff50486eaf67238b6cdd82ff1e6e404465bd613bbcb43feaf88a9422b0302047c435bb500683066023100f842f3cf4010e974c1a7143baaa499dcc0e6e6b85e8a8b22fd8e58fa54eac2f98c22f284319ddb6dd215daac69a966aa023100a7e455afa936acee80ffc8caacc384cf898823d866dedde4db0c2c69f6f1f79043cd74e156fe22d1af4d85527988f0570302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a9e3fb9a178a8c95d306b85de6c1641f453d37a94af615034ace3ddb65100e122b40bbd8811d2f993e46c6d078ce024602310081d501433e0c691523474d7daebdab5df5d4b47fdd656b780a250a8174c5ac755c930659a0635db40ecd3a2baf3d881d0302047c435bb500673065023100aac7b7bed624a11f29771a8f3630798169d46de0d2cd4a08c85f3b9711dd9a5cde63c3e2fac2acbc6c3718c47c1c366c0230779816ac8dba4dfa2d0773f42d76c1c26e77c17f32ac736ba7b4744adb1214b32a0c54daf5ae44df5bcd5b1e76d0bbd10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023038f22d4d226b927d92cce438f7550555abf2f5b151e30b18332788b750b2b7c09fbbd532d49e1d8541ac2c46b328dcee02300c2e5c1c3b9434aecd2b92cdcb004b21c5b5c52180ee576212dc05b1c39b922c0988166ffdb6045744edaf7619622fe40302047c435bb500673065023100a69614c2cb793d88980d9ff9d340db4b080694c1232b09fd35237e9496e96a6614a57aa5c4823c2150728c11cd6186ee02302f319cb66d55d6b4c38383ba8c0b190239407eaac1a66a1fc17bf4de15d59051d752e0946f399bd8a39b3836fc9a7d910302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230464114f12f60e0fa68cdfc942c3792c437a150198550710243cda18443f9553485987a3fb85cacb8d0602098bc4ae5a702307977987529b8021f92d79af2d9ba0d3bc8a25602500572e2513c5673385442c1e9da5b94ef530c2b4d545f45fa6a334c0302047c435bb500673065023032fa7c1a03b84fa7f757c1da4838af1e10d5ebf6449a5976fbdbde12f98bd1611b8eeab0c7d56ea581f41aeb707136a0023100ed942c1a40228a08e21e8d2d32454c4e35cf6e0ddd6e9670d76e6c6866c6f5236923421a559b385231e39f71eebc40680302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a3d9ce89f57a409ce0c597b84603407ca092d6fbad7d8c85e2ca9ac0576762d7af89ed3b47d49b85c306f6ae7a18e27102302905ab8c02b14e348da326fb24da778f53f58147ae1880d669286b46a87f236c76de3e06921ee92687824dfdbd9151cd0302047c435bb500683066023100899efac0eb8ea6b1a0d07a51cca44e9898f0b1860297bda36d1b94a7038ca58950b85e211f7fa578992461c05fef3c84023100d78981cae659926737c1b40366fbe40a3d1bf3b1646c387dc76663b9a5b72ea5846bf9450fe05feea3a139c906a57e090302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302f03764dc1db8d06b8ec92792930f0efbab3e25760c14a64e917aa12130356c047edc3d775f5e50532a419ddbe5e2c03023100a4cd4eab401d0d91419cba6cdbf7ae8469d4f3c3eb27ed9af79eb449bca3123e579666ac083976a447a67ba8b84d10920302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a84ac77bef9b7499b88c201345780d0be33973c3013a2a51312824a52c4bc5be13495468f4afff6f4ad32f2b731344680230237999931674ef56a29fab27a818682025da41914affdb142f85fb2e8e500c96d70d1557d49161d1c92d11a9806b7e7a0302047c435bb5006630640230215a3b389c0dc30a2b563b2be0214770a96942b16ecfe2422466c01c154b23254d10b9a06569536b65e75adf236ddcd202306fd785df44ed10637f07a3d62eecb69e9fab5cbfd238f20d623f4333efd636f83f171610883f58659cae4c8bd940693d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307cfdc38088c977b130888f40b9c469e1265dc6cd397728c4fe1f12f7d0243e764cc5074fbc7329bb7deede46ad6cb8c4023030f5357e1c920e2c8ee5807368abdd0eafb5a0c7d444f0fe6240104e8d7c09edd2b41bd2ae8329fbbc8922fb099a8f800302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402300fc70cd4602a89f88ba984428303c1431aaf1dcba689b5533aa20785d68722efb2ec77cc676f8f6cdab02f3b1ba68d97023017292d93a2588ef74e8f9bbac869b26b708bd6e3370bd86dcbda0d5480c1cfd86fc2a90f240a3d08359410da9450696b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008fdabc8d483048c0f47c0a9c6eb2fc41e03a716016e8b939d33a3b2d434e0fecdd526b6fb220e1f80b1cf8d5ccfcefe80231009a2f88dfc346f3bdc1c45423f5e17eea05ea14d35569a01f291690d062402dc1cc1523668f390252dac62112b16fcb480302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ef4c2cba9c15981a170164479931505f48852392c0daade63567116278677d7e6d060f03f6a91a70fb150d36fe3a99a3023100a88c6f7ccfdcf5553bee37981e045bcd5adfa3d81f2d462cee13ba88f65130cb65bcfbc40820a0b531a62ea24c99bad90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230582ed2918df6b7955f108cea27a39169fc3a09cfa7a874d32448dd7e6d3f5815797c558ce2e9c5e31ec0406bf600529f02303865a834494ed1d33b0bd5a758bc397a06ae2f3c253983497a258cb9f37dc650690ab659b2b338360cde52d6a683bbac0302047c435bb5006730650230728e52890d384c5f2b40163673a2a4ed78e6deaa4addd1f366c4db21f42d1416ec0630070bbf70b572ccb62d70ddfdba023100a457e200ee8a835adf7e0d508ac040ac07f78552cc3564c8d6d19de9d396512f4f925eacfc1085b663db38902f3566ff0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301a6d0a0715ddf0bb1d8f35e6ab75f2b3e0fbaf07e42d718f69a17c2e84c1ac297e0828ca993c9a41f3ead45d6b24c192023100af851dc0fee04f998f2878277eaf79bd134cd73a8c6a9be3131445beb39e806664c794a4d6bf4b4238b2bf71a7aabb3b0302047c435bb50067306502302e7c16c6507e0271084746f71ba5f2298c34ec5ab5be161deee44d371cc472d0739605804f4633a5cf87a621e68aa7e6023100b822e6abe44bcdc731bff2f610b4df33310d8e5ef9ca77313c8762997ebe0256a6de72fec83deb8cae6ad0f1e2f22d0e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d02a5ef3cca8ad45c8fbb40adda0af4f1bd9bd965dddcc48fe556a22caa532b36ad9cf7e97aa0af01e83f200a47f824e02301dab578a559c5121084e352cbc637a167a50bf0d1fdc1a12d3f2e8fc56fc6c7832ba366c617eb4862074c91fedfd5cfe0302047c435bb500683066023100c3c7ff9d66f0d80d18c93da1743ccef708efcc18e37105b1b4bf94c95cc7ff84e50b16130038f041315218d7128f84bf023100f0d034f20da01e6688f45007fcef36774737f080607586ae706794e7c28526ca098dff046e98a87a5b789a7474a212390302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100883ff0f5686d9e75e60c5f19aae29f58111d6211b07b951da1a349c651a3ce8135afaa81b986983edaa5f315c9a7960202305f1b2752307b273f9413913a5e6fc1188c6ce6f7653fd9da8d2b008dc93466daecbbaab557530c8f409bf5c260cb1c7e0302047c435bb500673065023100a348e6b0ff227b39d6dcbd8ff1a614196e339df8ad68c00eb07d3d6f8b5e6f7b546f16267dfe30fb23bcac6531cbbbcd023037126e88ba8a34571269389887738365668e81bfcfc794c75bbe64d1b4ad6011f2c881af6dc51dc422f059ba816e26800302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008005dc044d427e168ea180d563e6abcd8de9a8317a1950cf4321fa496e40982eaa313261619082565eb873d6d59b710802307018774a6a4d9351d61f6ea065e118fe12fa028ccc29613dee37f8f5340b894c561a079247c193830f6aef37ae0127fd0302047c435bb50067306502303dddab312e62f1916ec06825d2bd668b4d15b52074c3612e1bb4faf0f760d01b0b6acbe9ea7c624c126d1d8076a6fb1e023100fa0c8a7a4f875c53e470aa42876614a23113ea9be1deb269bcd59675b72765b60121cb4d8b9f852150a155ab6198dc310302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f936c0dc6de51b0543e9404361647294ea22bada3c5c78cde42fd8aad58a938fcee241ed42e0d0b1c55b572979a5118c023100d2e667d3683403cb923cd9fb2742394d432ac291e0440c4aaa865a5901f3a003b3ef9747ea38b9b468e7123fb325b4260302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230557084155e015fc4ba32a16b0d206d0eadb68f28236e206f6d6e240d240fcc3158b2bbe40fc6c5a049110cb0f8de3dd502300f9318db889739665918b44c5726a22d867155467c07e16c5cfa2b7a87e4a9a62e29485825662bdb326c5d9a171771140302047c435bb50066306402306396edcc802fd8301a6953894020a5e7b7a76fe109eda78fa9d7ccfb30cbac3fcdf1adbd770a01116ecfffb88981752b02304df65c0aae9ea5a2eec58e44af9dc85d49c834bd168c631588ac73bbcdbd9637a062b3aea90987dfe75f4db1bb3464bb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100bd317695746ffb2bbdd95a5040df78c3884be70bf0ee9e9b33f559022f34c412a9b87c570daaee7253ae190cd89bb18b02302f78645477b1e4057819565f94bbdbe8a53fcb3016b434f54e0e17f92bc352812d29384b9039d6709b4e810013a3bf120302047c435bb50066306402301b588d682c79d684895a3390866bac4acc091bc3c57a95069d77d9449be4f114447ca74e617af086f4c113f86a84d79f0230560d24c9cee01025324f269c66e6d8c7ce2b3e6d59d58e5bc5fcf6ad4e7e9d51a67810cf8a80cc636fa3c1321921327b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a11aa81fe0ff22b7265c2efa4675152a566b31f31e82ca90941f57e1e446316ff491f9293ce38896eba31299ad52e76b023100ae9d92c19491c9b0dc31f39a2ecff6bd066c7bccddeb9be2f6b8ed3c6588763c1f94c9bbf7a67cdeda22a7313a79be7d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100cea8b8f721cb27c1f140b1579b8e56fde11cac4ba1c7dbd49c4c3158a862263e4e1bedcf5384a16f4e26d0a6a487132e02307580b90b60cb47ff8a94b2b57f197455798d3e4bcc1441cc4777529a143930b31deaf90f8fffb64da7c8702307eca23e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230670fb68ce91c0bd66a935a068b360fabe0e69ae675f2a4bf1d10356c92a9ca554108f3a9f9f1b6675f841258d79033e902304b33cdd41501ca41b805c6e14f4278099d2a94f3150b458a8d772d1cf21e1420b3b17d9cdf86d461b86d29f39be01c440302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e07f483717e05ec9cf5a6317ba014d998211ec11b1bbceada23db97902b18f84a406d5a56745423eec10451239217088023100c8cbe04ad0bbe4ed2643686ea1ac81ccaea4711178901e9a847d0b4d6dbbc97cbaf43b867e40ce9e87122f8be0c546870302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b54bfd2f4a829b1dc76297a166c4fe62da5909aaa84b199e3d11ed4fc6f242c7a8a8334cd720eec04abce7407adfccc90231008d6b8ed822150e5be86838eebe78dca3af18e89090ebc54bf35b69d2ac00270314608362733c9fd7d3b82fc619d4d1590302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307ec2994405bdb3a974bc3e1ecfea9bc24b6e62df694d75d6a7779d71d27a564e614b2fb1fdb7f6180d346ddcaabca766023100aad5ccae5d1725f7a91890f135d656cd32aa2afa4bc382816796b6690438759b6c9ee4d4931fd99d0bee23501b3293620302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e4f13f724004bd0360329fbec5276c7ef44cea6beb08b72c75f9f82d207bc030f2b91b16f6cf5b004db1e051281d7d46023100a3254a5572a9f50a26213cfbd3f8d94f1d109b92e78dd738785edd9e1098521d7887ceeca793fc8b4465faf0447848cd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d3d707ab53ad17fb559f96a6d267bc1da7b4a8989ca998ecadd5ae61409ebc76bba25ed5f200b38ffa69512d797acab40231009f23113a4679a01c5f7d0c8a5f567afef66d00d6b93e70d75164a0684b34ed2d0889e7332b35f5a65a6ba0b6c64fea290302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310086edcb48a8e9816628133adda320d5c7dcba0ea60f83af4a19af0a08be7cba8fff39fa106b561cf49736767aeb470cf802310088cf36e3f1d6f7b1fdcd6aa483187ba3a90a7f82ced111af609102f6ba815384f236bb790a2f405f3ac56384815137e50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d2d16aba3bd7871e61c3e3fcc1c9b2f4c8be7f1d209821da8ed7c08c483eef0d983d07521172c648e75c1c38622713cd02305e23327474458ad5a2ab703dcd6e557a576dfc6a8e2e98e8f0fc41b909b54b7cbd6e50d64c5d1fa53f32e4bb95346a5d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306205f6121f7ca50483316ce51d7b3e11380abf507fef31183ea79d4b59c7ab3b3b5596f965c9b2521caa2d79208e528e0230273964cd0aae802f4c912e9c8ec1c6c99e17096f2b47b4140a0b393cb5680e732377a30dfc58f26023788f7655635ddf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305e8828b61a43ddb464a24391c783749a806b956075ba20659b84a05ec63fb9738a9635c50211636fba0fc70648640284023100bb23a1e1360496b35c738c44846ce3be7fb77b594a2593cc8f97a42cb6e7e92cff70c410150c71c964850e0c71ebd7f60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100fd596c506b3f79994e3b0b4a3eafc90a25d109829550816057fbf1abe11f7cca96e6a3662d082bb3c2e3d59f5980616302305e9b1c790fe4307a0732ca26905696de3fab6a4f79b6fe0f196c325f13b82ae69880520662c25203eaab808de97e6c040302047c435bb500683066023100b71d41e9aaba385f9b35448a2afb9c72dcf2aa1650259dfd715fe85b4b2c76ba0c8c7d3f0dc047c72d18493e0056575202310086ecd536fc1d720ed88e082a1d4e43ed5ee80b6908572c758c1e1f5329ad184a068f42b8bd36fc44b54dd10ae193ddda0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c789479de049be0e14dbfee40b347f75af0b30abd0ecd24a4c4ea1738ee2aa89c07e4e0dc4f909d59bf572bbcbab69f60231009fec47f9cce8509d7937f4e8c81f6bb6f39daebe92f676b6d2ce0d9bd61bee53f944114621120b8070c75db53909ce570302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230020ab8c6fe327ff7eaa90801804bffacf0fddb79c71704a00ff27982a82f4c5314444a82754ab662197ce0624b5914c902310087e2b118956fa14d96dc50002cbc54f6713a8dd1fbc68c9a98a7d6dd349915735ce45eabb6b09e84d6e49af887caaca40302047c435bb500683066023100eb79e38c00e5fe31a20ffa6db53aab080ba5aeb24e0298b3df09f22d66b375a5a758f3e357306376ff3d430fb85fe2a5023100e966acaeb0b584315f83ade426e840f8c5de7446933a0dbb4d0c554dce79d46364e5bd7711c0c39c984d471481f781be0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023019f38a00f5dbeee38bd4d8b44443a5bfbc0e324d895379c9e47e50b149a954e7f25b2291613434e0f2c8fd3bc91398d1023100ff6835b7434508e4eb2ceff914c241bc16fa73d27df3eb3759019e2e1727fe0b0516d6c616ed8100fa091d29c51e3afa0302047c435bb5006830660231008d85fff32525170df346e484a329482e447b30a4a157b14e0ed3615840a498d29537f7b1f7185b46f71556617535fb29023100c14ca816ae03e1d1b62b697033468cb7dfc2d23c07606b32be3426b4364386311e1ba8ced38b76fb169363d6dd3b074f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230484f221b90279b892919dfd5bfe7bcd4662db8449de842901cc3f81fff0d216b3db23d955b2328e7bfe512ab3b51b3910231009b73f83ef142f869a653446569a83fd19a7c25ffa7a25245f4a897f98fa9deb4dc3f3476fd30e249661edab12e5a598f0302047c435bb50067306502305b01ffdff37c147689cef530f22577821ce6a6a7f2f1ca3b7f94d4f9cecd1fdc69a86b2ffdc0880e4f8950671b7749d20231009340d305feaa81bc82415f393dff8e9e31e20ec806046c3c7afe1d5735d2b71012a66ab616ef67420fcfd675137102bc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303241e066abecb3108b8da14a3435de9ee2547cb5800c74fe53c046e41bf21d292ef8bbd7d836e03db5ea56c652e2a799023024aa9988a6c53789c595dbb4659b59851a6b5ee99a3163baec37d2f19d07fed714e5ac5b6874432723d5e9d878f147cc0302047c435bb500673065023100c22dec1f7369379e5d25cf2e61c2dd1f56dea567466c3335168f00209dfd5e3362814b939a9f765ca6145081b124a2b70230717787237a5723472d530c008e6898c94b3488fd063b8798a2354bd2d1734c58b389acde2669483b360d50619f8ecdd60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f309d55d88c6e6ceef5c26040a63ba7529830f20c180ae51ca774538e8020d85c114f5d1be67a951224f2244806c59d002302206f2c6c204bcc3d164ef88e12befec34d0f508ae2bbb3336785826ff8f034f99374581c047e4dc4d8a7a26e6cb82270302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f309d55d88c6e6ceef5c26040a63ba7529830f20c180ae51ca774538e8020d85c114f5d1be67a951224f2244806c59d002302206f2c6c204bcc3d164ef88e12befec34d0f508ae2bbb3336785826ff8f034f99374581c047e4dc4d8a7a26e6cb82270302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f309d55d88c6e6ceef5c26040a63ba7529830f20c180ae51ca774538e8020d85c114f5d1be67a951224f2244806c59d002302206f2c6c204bcc3d164ef88e12befec34d0f508ae2bbb3336785826ff8f034f99374581c047e4dc4d8a7a26e6cb82270302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305cd771e54b0fc42b823307aa443f9e58016d13c67d0de780ca1916d1f1a498358268b0ea8cb54d1c47b2a7a0ef70b5f6023100f4fe0ddbee20448fc4790c73d704fdcc625269d2dfdcda6a6b6be4be0e70c55c4fe71938693810c3df9787accd3f7bf80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f309d55d88c6e6ceef5c26040a63ba7529830f20c180ae51ca774538e8020d85c114f5d1be67a951224f2244806c59d002302206f2c6c204bcc3d164ef88e12befec34d0f508ae2bbb3336785826ff8f034f99374581c047e4dc4d8a7a26e6cb82270302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023037be9a5e1e0da7593d9f33bf7fae5e7a62a895d2d98b476fb78dacbd7523742fedb377b7c0fed4d32b927f3207f67c4d023100ac3121cbc364ec9ef4b8025f7984fda98eefe2a5a75c5c6dd1be2ee6dc8ec4f4844a344eba3e49add32ccf84e3b10d100302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f309d55d88c6e6ceef5c26040a63ba7529830f20c180ae51ca774538e8020d85c114f5d1be67a951224f2244806c59d002302206f2c6c204bcc3d164ef88e12befec34d0f508ae2bbb3336785826ff8f034f99374581c047e4dc4d8a7a26e6cb82270302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f309d55d88c6e6ceef5c26040a63ba7529830f20c180ae51ca774538e8020d85c114f5d1be67a951224f2244806c59d002302206f2c6c204bcc3d164ef88e12befec34d0f508ae2bbb3336785826ff8f034f99374581c047e4dc4d8a7a26e6cb82270302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f309d55d88c6e6ceef5c26040a63ba7529830f20c180ae51ca774538e8020d85c114f5d1be67a951224f2244806c59d002302206f2c6c204bcc3d164ef88e12befec34d0f508ae2bbb3336785826ff8f034f99374581c047e4dc4d8a7a26e6cb82270302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023037be9a5e1e0da7593d9f33bf7fae5e7a62a895d2d98b476fb78dacbd7523742fedb377b7c0fed4d32b927f3207f67c4d023100ac3121cbc364ec9ef4b8025f7984fda98eefe2a5a75c5c6dd1be2ee6dc8ec4f4844a344eba3e49add32ccf84e3b10d100302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305c57f2715d390ef435a84f4cbc3865bc617592bc1e98af65ac19cfbd9dc3bc360980fac1d33c6c40534485918e11763d023004c14a560cc2bfaec6cb677fb5c5e42dbdf09fe49cfed050f7c21b3ac03ac93907311f9421be1e1231af78de74ceaf640302047c435bb5006730650230464fe726c5bca3e4361bc37203694e39dd34805ba488e8a5ae23ce7bc6b53a38f8bded3f49b56b0a78502839eb2683da023100b352db7eb7e475fd3b35a7157761a5da1f100e9ef1b7e673d7ecb66207dddf7485d98ac94af3f1b3d592afcb7811a43c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c43484ec54385c7e2f952ff3c99a6d446d0d89d30a4ba6ce844bf52ae00796dfa4ba63a5ddb65328ea9b187fb6b199ce02304ca03b91518c927ac7b7887ecb95a35434369e866794bfcb747ab6b6d239d33bed33328e47cc4e8d5fc4e00f4499f3f60302047c435bb50066306402306deb2c4139b4af73d5a9824f6950d9cbff440029cdfeb64c96e829469b5725fcdc5182c35f2af44845cb5f4fd648bef902302558e6cf0acee0f4b333c9aa9241c7948434bf01441ac2c03ecd37fe57a8e2398ae7ed6f811dc48e4dcb873639f64e0d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307da8fbfbd067c9cdb65661ff0a5aba8bff2cea8d87fc755b115150139e9abace8fdf3b8cb10857749b0824284a99c25f02301974b49a6453794d5353d843df5fa9e8148d5e564ace318fd8d41e9736ed51de4997035d904d26a3f51b48c49d1ea1f20302047c435bb500673065023100f4cc47742502a1fe66dc677382f2d263a8d776e29739331d85a3f2b54202dc7de3807d97627af322aecf32ec8ef17c9e0230416f3584a25dc0ac14d4cdf9ff42273126660eada177d3888b39e9a3020f7e44666f0ca4cd8c1a119fa657d803c8cc740302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a708ffe8146297ed3ea699b32e878df0a004f3666ed6b7ff53f359de03d3ffcad0de2940b50a026087196ad0baccff150230453eac56a99e7a5d444aebc186eea533cc5fea44835bb193d9e4165f58f521d35210108a072aae659b11fb4ab0f5e7860302047c435bb50067306502310086474d823fd2062828e691baf916912beb6cc931d344d48ea552d067157ce3315ffabbcb342a3bbe4fbb4306d254bd64023061da46c9026a8ca123b695ee2ce8ad82c879122701ba2e2995d81eaf7b11202968cadc07a0ae691542b952fb583e3de80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310091062371a9a5ba3431ac5f81111b748091f346ecadbf2676ad533a79caf340178a8f3128ed5a33d532a5558c15fd92f902304fedfa10c29715e3a835d50275797c933f3e1c068a80e417364378b66c50a4a90bc516687e0b7e366f02154f2d31f6600302047c435bb5006730650231008c085a549d6ba672a8e96319e48ccebf670501fb98e31d4cfae9d4de7944759094ff3d5f684739abb29bf3eac10bf91402304919e1f9b517ffeda6cc4377b07a78c25db0f1777ae1e4b5907c2108e8df6f6b72fcca53d9c2d6cb7b769c3c3e8aef260302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100904a705ef68341b66cb963509bfc5542804a1ef3748769fb10d1c2ed3f8ad96c00f5e2275f2ff916fb078e0bec69e61302310090e5cc4c31295f38ca996d4236b19ebf0c8698bb7a99a7e0705bdf82941f32c86487e7d1e88841ef7dd53e4274fce4120302047c435bb500673065023000e3dd685e954991fa2cf0c3164065d054d11d5243f1957cd6301b7ff624211384dc2807adc7f9d110f1f651de299e06023100a8884ddb885defef52a7245d0deb555cfe54d9f106b985e32beced540d3237959210fa5253badff9c0280c824aa356c80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302a68b2f26c1380ee082e96bfc2277416f454ef870915e71142978c0948654d02f3afe175a0aacdef13d639962977371b023047b1e5e66c41505d331afcdeaa01054b41ae20cb0a219847ad4031b62b0801e3593101844a3c2f894f4c5a40c810ce2a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a036e66bbafa88c13a0a1b4123b2ed6006b23be865c7a3c920230fb88c8091b9afb271db5a05c4c8c13b2bb31eeb6c10023100e0f25824d06ddba056b39ef9266179815539f118dbbfe6220f2bfba512bab8d31db5f0961df4ec22100e6b47e8cdb0f30302047c435bb5006730650231009f7f8a74c645ddf671ed0e827be598953458d92975670d3dafea59e40cedcc54761ba2cf952cbe9c476133dd315ce2df02307629f336cacaa7688b1d74cc2c18be0c0e6c2f42ba89ff8fa6587ca879469708c324bfec35982c174087c1f2bc618ee00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301d832b3d1a1a71200e7e71c63a3705304d0acbe56a54afba740803af3232534e151740d6dafbbb778e2d6e71e35799cb02302f78b6c71fcee4b3093076bb0dc85d0f1063649885388eac6539f0f447f42b0d544a3635f88051e8c272edcfb02190cf0302047c435bb50066306402307c5baf355e610fb3c388b2140fc186b8256af1cb52920b4223f0f605d2e61a17c5397a967b9f59d5b384eda2e890ff7d02301579ceafaead7905689d14da6e30b742a9d733589145e8011134d9fd62a04adf5a294fd5ee0b1b4eb07a71ed5a60a5990302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100db3a010f234a29ff58393759ef4ef65e9faf476314f2a9696caf2dd3efb557be7b79f55a63599d9ab94c13c119b762ff023100e351ea25721920070dcfbaf757340a3727d9c88c07bd3795fb4f1f47b162176aa1b7c49449c068a906f2afa76327b4100302047c435bb500663064023056e3f43282b0ac94ab92845ca0988d9ee169b3dda4af068c212702f7dd6af43048a80562cd3284e18c74bbad8eecb8f7023048b9655101c6b1e1151ce5ff49c01d627a3b3d73493d860aff8838b257f64389bd456ea2ca5c0979480b1ddea469c3790302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ea7ce2f14a60927eaed38c3d632146442ba609d13dd7af98482e30956d902afdc8228a2bd5addec4cc048862639aa64d023100f402a2dd63c69772ac88bada0c1312c4743fb7c11c3cb6fedaa22fe33b031db398c1cfa7641c8cc8b34b1df982dd99d00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100da15f8726ffbb379249c8c10feabf4e21387bddb8191165e4e1f5efc1510ded07b7d3fcbcb6c878108cd28ca0a3b044a023100d77aa3a74151df15a9c2202d4e54af89d4473cfbda84f8a5e28bb30932840bd0d02a497ec48d8d1db3a4d7e88e835c2a0302047c435bb500673065023100e8b803e337784cf21716bcfc74c3c737cbb0fcdd38ebc4160d4c1691c2e88ec377057280840ac8ae71d95305720b2ec702307e81f41c9796d2b348d6fa989ce86d4f14342e765e17fd7611af094f09e81677ae19dff7cdcecbf5d3f05d840724ddb70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100eb51d28ae2faf9a17dd6337fe21ac8b4b569178ec32d345d069626080b14914a18f0cd8601d72732fe0518b281e4cd69023100a886d3ae7e1b889f3cf377cc2028f7ecc532716bf6412d93b49c7013891631b2fd9178a844850aa9c3d582cdb72dc42e0302047c435bb500673065023100b9b11faef8e9a05995e17704b8081269d5f7cd4c538a87a91868f38bcf4d79d7bd58c4e862a0ac28468c0c6ec130019d023068014482c57d1d1f23842b112fec34f4eb08a7babb825e5876f955ae27de704d42cf9b608ac05f9c27b2465d7305c10e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c0970aedf7ce354dad81239e4ad302c087d059a1543b67438c75259d1076dd645732f9fd78eeeb2f87d82ea0bc4b7c1602305f247586572278457eb8c5e16eab531ec9c96dafe6bdaf1e14b8ce181a3d97ea36ac7351d7d51932fb89637b719550d80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d9e7929a7201ba8a67bae1fe417ffc22346b9b3c432fec03adedfbd92b23fe1fade1d2ec8faeeed7368845a3dc21128f02300eff19e61c9bb95cec4a523934d9279d8af3ce0247bea1f3fc74131fc6bad46074ebf4261dc9b6908607e8938799d94c0302047c435bb500673065023100eb33a2dda45093c6aa0c53e5ac3c73efcb47cf2a1c2add4c01707b4f54fc996a6f90f83ebb973e73158e29612c00d5610230414cbbec1df067350b24301fc56c07f9304d1d7f7da721efe7fd7922bc50e4fb504c0851663190870744fcb5ca8feb270302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ec116a3cf2ab8f0e94daefdc998fc6f48d0b1196722da48048d31a8ff802dd3c8936a5c66aa7895498a1ab614fc3c18b023100d6234c5aff04c06584a9869a93791f6560968c73b1b4ee4b88334a9705ec1b88f7ade6aec85a35a1a59e4f60436443450302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e9b3d0afbf2f7afa2a9a3119ec54d2f3e930d207a512e55e7ef70e2b9a7cc2f2245d077591e86ab2050fdeb05d1e9b7102301ca44084fe3577fd4abfe94d31b406c8ee1e1251e065b955d6dc091d1f42d887e4a7ee35a0fe657d1e4b5df0503f201e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e9b3d0afbf2f7afa2a9a3119ec54d2f3e930d207a512e55e7ef70e2b9a7cc2f2245d077591e86ab2050fdeb05d1e9b7102301ca44084fe3577fd4abfe94d31b406c8ee1e1251e065b955d6dc091d1f42d887e4a7ee35a0fe657d1e4b5df0503f201e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e9b3d0afbf2f7afa2a9a3119ec54d2f3e930d207a512e55e7ef70e2b9a7cc2f2245d077591e86ab2050fdeb05d1e9b7102301ca44084fe3577fd4abfe94d31b406c8ee1e1251e065b955d6dc091d1f42d887e4a7ee35a0fe657d1e4b5df0503f201e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e9b3d0afbf2f7afa2a9a3119ec54d2f3e930d207a512e55e7ef70e2b9a7cc2f2245d077591e86ab2050fdeb05d1e9b7102301ca44084fe3577fd4abfe94d31b406c8ee1e1251e065b955d6dc091d1f42d887e4a7ee35a0fe657d1e4b5df0503f201e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e9b3d0afbf2f7afa2a9a3119ec54d2f3e930d207a512e55e7ef70e2b9a7cc2f2245d077591e86ab2050fdeb05d1e9b7102301ca44084fe3577fd4abfe94d31b406c8ee1e1251e065b955d6dc091d1f42d887e4a7ee35a0fe657d1e4b5df0503f201e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009516aa6750b12e004c1c3d0dae6bc4d86c4e3821d2b0d708784ae235430ff709def5149145ff7fa506483ecebc13b0a602303b8c725a6b7f6c1f2029a7f5eafc2158710d9a0f949a03ded0980c93465611e9837ba9233ee4ae8ccaa3cc1806ac1e100302047c435bb50066306402300a47aeeecb3fe31dc03bb934d4f010f16b0c0e2c0e9f971f2398cdb9815396f2d6462d5b6766b077f74eb45714e47e2002302c9d653c5d44aff195925b55323f121019a592e7f5239a62b98c81597bdecc40652de026f2418a841bc59042bea111390302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f94f7cec4fbbbc5abe5aad06235ce7248649775860420ed4a9eec17cf777d6f64fca2f49ac92ea771172e5a7eeef48ea02304234aebe1ceb51634dd0fe98a475a394df351cf3de82009569fa55e321f2bccd62724dcf1e56a330cb9b865ecf09db430302047c435bb500673065023074bfea3da18d3f401201f736220fe3d0680ff627035dd1b55953c3608a0ab33c07ee59a73063bb9759e1fc274cb215a7023100c4505c99b4e211f11aae29a44c370c2519ef7836088c16b69a90c5bb044816210986c9c5fc8c977b279489f2da910acb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e34980df085d65a65ac69d9ad3003a492042e002698d0d9d601be9d1fc1ce37d4638a2f8653d05b5b290c4c73e7f1959023100b700b5d653230f5df85273c6395bbe3aa357373a8af093c1aac95615bce0ea10d3b00250693f6bcd897b958845760fbf0302047c435bb500673065023100aaeb57601ca6de193ee923590fdc3ad9ee5f0ce74c322e0cb71865da2ea83b4cea53a55afd835e34e9fae1acca838f7202301e1c9620f1afe73a3127b6ae0ac325881de0b87da9256e14cee96697e19e4dcad2a3209ded25210b702b7be43385ea960302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310092f3a161cf85ef390a37fddf3bed5c24497a12110be3171d0db8049727c7bc33f98710b9cbff67e0db1243b4feac31210231008e619b127b5aedfa132186380bd3ca17ac08c693cfe3b002319ba50a0775b56161d429d4266a3628545811d954b476270302047c435bb5006730650231008e01b73eae2acb875538c8699518f8389b5d2724fa85abf73f66694a8c9de418eb946c29578d06f4d54b92455fd8ebad0230335a83d417f1a0a0ad1aebd5e51366bfb467c34602f27673429a994fff9b2acf12bf80599f70862a23d5fe4939bba5770302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cb60281b849d45c1d481eb8fc876f28ca4e9c5d2ce4bef114e45c4584d8d52c98fed58af406c9c578ba439798102a898023100d49ecec53d06df9520c9121377bb5b9d4ca940bfa1d79a58d9dce6f9e4dc1fc5026abada553759ea1fb1f27faf369fb00302047c435bb500663064023049642ac55b6dbd3b62bba26f2cdc87992baec52afdcce9e0dbfbf23ba50416bcbe9e0debdcffed611ddb73c3e730e09a023067c48cf1ca304cbe616b4e6af4003c42a6725c9eac26cb04c6a7d50c9a67b6aa101e188cc841170ef7c368a6029970270302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100dd1ea0d70eba147c459b074975f5eaf1c5df7b3d4591d837d2ba02db9b863848172fc14a6077e6d4f08264eded0ef99b0231008cb0317ed810cf82acd559ca56cfc6e17a2607e3aafd4ff3b8b03dd77620106df476d01571066629ab018a7bf5249bbd0302047c435bb50068306602310097e36bcfed6fb9989dc8db6bfee2037184df59c828ccda3f96c5f69b83503804bc44a98d91ad13f7f571e639415b7760023100f6cb0ca98151d5bab17873ca99f9d9b91cd4032e6120ba8974454494fdfe0b91242afaee7efa26f64f58a8d729d444c50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306e23bc1c4f6e94835716ccffce139259bfac4c5fdb005894d62575b5f32e8fa7e134a28aaa01ac03627f9bb4ee0418730230755d0442cb3efe529c946b532fe306acccd0d456567ae36f95a83f6017028347b9079b1844b3cadef5a7f3e58e9bc2a70302047c435bb50067306502300d954eddc00cc0abb4ec675f3f6e0928edaadc6d29ce9d3417c366e362bb3cae3e514d1009c2c0b0cf5b76b0fadeca4a023100c3bb0d0c50d89bd83216fb781db9fce5095695503c193d1f87116c6f9ca6348ca3714a2c63c66514d56685586013076c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301fd595944e3c61e63ea1919a2c372e6f793f17f37821443106e6e2b12143f8062c7f101f5c55382cb168ccce3b52454d023100d44ec0b6798b343eb433f2995547577058bdba99d3a99f4031a550a8e0fad57b5f6b1edaad1b880c0d547aa59a1d26de0302047c435bb500673065023100b805c4edb9fe0ce6420e5d28116f65c5cd2af1d1c198e07cd23f34779cd0d609c5a75d88011c8cbe37d0782b7d8d0eb302303bfc67e3d5b6b08c206148806aade1fbded9a24ea2247829db4426d32237bccc36186061b432fd51be88403ebb90b3360302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230594c6adeffb9104201dd9cf20862aa1de24c15782ad4d821a204a6a59729f4fb71d9ef67a495793ded93a27683e6ce2502304681c3580b8f0c5c10f7623edb3457c579462eec3e356a7af6d16ef173d48ac17e902913dd3065b06504c5bd7784de400302047c435bb500683066023100ca95983d358e01c05943f0f1ddd4769659b478f7b8690508fd8a3eeea6bd249bfa434b505e4e7a759c1b5232bec0388d023100aaf74a3e85811c1b7a37be6395d32ba5ba1e157f74690153279b7ec5d2005a04b6bf820d25ea006fbc9384aa090956160302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008ce7bb4c5c52eb429153005a9d654e46f179091454291f9ce4a74a53b3cdaf10ebce1cea5870fd0a5c3965c922bb5e1902310092264484c4e8231594846754a94d21905d058261da2fdde570b4258fdbf3f1f6239cb7e873bd2da7ddcd44aeff2e23cd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301f3a92b98ea96031c6b5b6d75c76810d7d3f891f811f8f39381ffa0b3a65812468c2ef473a0e34bd81c113e2cc7a3fd60231009696572f3a93db513560db872a575035a8887999b8ad2847201972d461017f2498502e701351d14e41091f32c75911910302047c435bb50067306502310086fd1bf425140046a4dd3609ef840d119658d1a3fde43d091a26888cb2a09f4a626e45256b4aeae9d31f375bbb44256202307006c0112cece212ec878005f4327a6cc46b2f2014dd97676874d6d52cfb2fcee42e2894927a9adcde2e4a71dc073a020302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303f5a15e1f7bc878edc3e92d5a28ecb713bf83059f5b860deee872c5bc6787dc01f1883999c68ec72c01f953bf07ec891023100d61c27daaca27b82811e945ed509a1370628c7044e403b7c40745a4f5e87bc27a5fca466357f1e178bf40b12d2e2e0510302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c925dfd5363dd3228fda130be5f1e83dda241faae625b02d4da3f070f3eae8b0452a557e9d4a069fc5d5c9a462dab0bf023100c149f91d1334fe8cb0c960562475dad5880a67a94809b3cf041d1916cd456e1f428071abfba4b4610b32fad48744ead60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307c2611a5d0ef21402f0baa48db82299eaf56c541a50fe19e1a58494bb4c8299b9ecdd5a39711de98f8129d567673533302310094b082eb8576e7b90d0266ca40d04b1d48b8a2d7464b14946f56f39ef283a1e5e83f114c3f23ae222befc7f8b3c95d6a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023014bdf838bac8b71245001a10921656b2bc0deba1bcbac71238ee6c8667cc13f4d341f19fab4f945c13848c3fedb0085e023004ea1695d49eed58d4af6788ad28e19adc59a417d3c3a0a89cb5cc4933c35f84043036738d33e96559b4e4e24de6c4f30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e05c44a0493855c999584f5602d25d0eac236c0b71333e45000cdcd8574ccc1465015ae0d367c55d422fbaf54a24feed02307d32cdec120c97c0c6593b6f05cb6cd1b3df157ee1d2e940c6aff4d2631fce8050dac485f7c8d82e2333521a4dd282650302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e7a17eeaba462101b6a45811426b225e455add14cf194929fed83c7ab270b8aa4b09ea1c5fecd69fb22c1c618231c6da0231008e0be7453c464aa37f669bc41f4426c203ee3c6a69a9f2008ec5e060c589cd31dbcf5791057606308d352a4b550bd6960302047c435bb5006730650230445b0c75f0ea2be91ff814437545262b86e4497132cf6445a05678ac288d753c631b6e55cc96c1be2fce930ce0f4def40231009217002b9a5784e4e311589ff9edd9f89b7245829fa1a473912a84284904c605c64650f1c636528b97b9ace002ad80d80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023003dba0ef7f9965afe961ffdaad328bff291a81d0e49c3108246ff03622762fd9663283fdd310e7c85fd353fef50e76b602302397858489ccf05106ec7150316c87ed4628dec240a68a6976edfd35ea20bb60b38ea3b26a2788a6d831b4cb45cd4a5b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100db87e391ade1ad1870cff13d579bc7b06e053431e9022a0b47d4a3bce65cc67fa381c1a26f8c07973420d545e22c9555023100cde3f179798037d2ac5e3347729b9e20672ed31066e3a2243e0443908dbcf88d1ec0282a138224b7e8282cf81e9fefb20302047c435bb50066306402302651b60a0f371e8e94dd2acb705ea50d7b7cbffadaf76572e89d78f7cd5d362b990782c93c6e2bb000751e67010a506d0230137415293d20aed13b1e3d427b9ec9c29e2bef3aa256eff498bf96ab9d4938b2c79d0bf40bf20a5cfe70f332a30ff7510302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304c603e7e93b698aad7a5e0bcccfdec55ca8c986206bbbf1e8da798b1c2330ac222a4175401ef27b554f2516a9f0a653902302f5684737d058ee057dc3d0dfd96bfc430fe770b0bfde6390f6c3d0701bd32dba20a2967d231fea86240eb47b71e2f200302047c435bb500653063022f18a11d59cac144ed593b54c138f193a3dc1695a99eaf1d4526165592aa528c71886be564ed8e6275612238bf5e42f7023069e62cf6adc13750cf0f93e1d3dd57b18fe7d3e143be80fef5a3b1f44144ec09ca49d35a6e129756b8e99d314d10c1a60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cf1f9af852adc240dc223b92d181e91253b300a843ca8e02f65da9aa167ca83b7eb0bbce417a1da14d4d476229a38122023100f64287213e8a3b505a4868f80a1b7d9196508a1540105f5ba072db58ab6ec1b59e4855638d227bfb030bbf34d63691210302047c435bb500673065023100ce85eb418b1a37f309e16be17adc517c9850358a5824d8d1d54bd9def41161df02e75bfa9fa4c087a7a4d76e63263edb0230601ff180a2f79dbb3436bbf1e93d5374f4781b509894c88750fb014e698ebe30c2094e21d19fd8f93a24f2506fdb22890302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100fcdcb8f4bcaa06492f6127322b2cefb20a725dcb0c82dea03ad1bd17d0bae07765e176c08e6ece9ef95f4d569d8e6348023100fddf1f2531d9c4d3741ec59d4e31425b40f373c79a74c174a7800252f1783f7a98ff5673bee52b2f1b45286a7ad4fbb00302047c435bb500683066023100afb599c76edacb76a98867b41c1a2e9554570ba7020087f632410ad5982c6fc50d684a7b35f8a0754c30a3c1fa12499702310096fdce3519b0197d4c8827bd0071ecf518e41353961ff191c666881e3437bd7fc8b8a9a10ab63b7ccc0d09d08aeead230302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304062e4f43fa0964fb2100598bbf38db0917cdbd00dc983e324650f87c095a5f76b8c5fc1b35bf78ee8bd4e12c7706ab102306761f571a468ae031bd69a9ab8d8d248e484987f278b62ea72c1470c66edb5b2151c86d89bd04980f529cf5df3218a2c0302047c435bb5006730650231009f0e257bfb94b831b64a09e146e9b1e78b5687385840577d2790ec7e85270e000be69dd619513cf964af2bb41cc1e2d302307be65cf80d2046943b445c74f0b06e1be0a1144e91cf2575820965631caa7b57bdd21f1ed255b92cde71d03ff484c1a60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d77d58d6c2fdd58f7258b1636be2478010bfe221f8e3676c1b3a8dd4b42c47c1b6edd4edf4b332782c660b77ff7a0405023100bc7af97d4089ff3c1c076006571ee6996272393ab5377a4a7dc088099ef6c73769140fe818790ed0e4fdb889a4a1c40e0302047c435bb500673065023060692d0d8e6daa6d4739e6e28bef27361767d4f8b4a6ed57192528730d62a0e10fd3b825f66e2513148a52d8a2bec8a5023100ee9d8a3dbf6300b83abfa1af1d65397887114d66f126ddfdbf2d80762fe93b050ef4f9d049008667a02a23c37cdb69120302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f0e9ce726d3a41cc88ef7c1e4a7e39de152f7d41e20707e88960ac72f874a17c826a4d83938c36393aa2b03e4cafaf60023100cc99e3679961b856d6e7646d622110143b46a9a02c35fc4a10cb271981729c73fe5547fb7859a58b5974e9ca540cec030302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306c86f1787dbccdf4cd6550a253897b90563a6a9afe2eb09168afe4df9a43dbaad44ce8a6b8772b882035cac72e81e5f1023100d962ee821a6aee7fb3c3845ab8ae5f5a0c70397d5daca62592296273d7fad8dd63eff01900359fbbd020a9a0d961fe8b0302047c435bb50068306602310095b43e4646dd84ff053287bfd06ceafbc57913b12146f7a8e8bdeee8fa187c0c6e9be406c040fed73dbc96d934c194180231008ed4e4389603906fcf981f5a38d3f64bdb07007564dee58140696a3738004dc9727a23c26b9f8633bb6e17fe93363f940302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100baf3b3b499534ed6d061d783bef0aade68ee15f98d210077c1a458a97d6667d798a4e72d6ed0e98747ef0a00735cfccc0231009a3e735efe94c83db40d46df73673e5101aee55787b9f59d1b8cc16684d900eac54cc48a10e7dc7c101a9dda7d54b5e50302047c435bb500683066023100a475b0cbba600874d96a8168a54570d2fd16dba92e4281db035a2a26f5214d99dd8c5eee43981fe56458113b99481523023100f983dc906fdad8df0bf122939f49f55bc122ce6a8c92bc24dc5c0736bddb4065e688c38092aa2598b8b180ba532db25e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a2458dc86b7c34f499043cd941789799251cd052031d4956eb91094642a025b6e8f854840945c28e0e9de284c5b6c13d0231008cbc877b39ccc4249a562f9f0e2b57ff806b587ab23d8a7d511af811e85ae52a67fece356a7d4b0fc4f4797e209bfa500302047c435bb500663064023021a7f0698d80620aeec8c7130f0b7e3d1835927db9ff6d9fc4f23d233fdffa1138ac108a627b226134b6050482cd51b802303cfa8d2e35fd47c30d3359719ad9e6021ec0e40861d4fbde1c6f822bee820276e0b5ae9770d7586d2b3ea12ec6f55a2e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100fc5374185fb5f466191027d7c66190835d88c03545c549c70e21309512a9569f8e8e29c718d7edb916db6d257adeef8f023100bdf47f856aa1ecaf9ab34e0870f85ab50a652e36f98de2ae1153dfd4d3506506d8b9c4f678b02377307898933e9b360c0302047c435bb500673065023070242adc666bbca907ec2e393e0765fcab8f61b453211e8af7be0cde455f287a5c561dc463d03476d732627a20de3163023100fa99c1d02925a6b3c2a24db38703d6fe1b03bb2564348547f83c016ee3ce439674cb551e5e6fa21aefd76f063cf69b6e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008916ae5b1a6d7ab0000766fd1c5cbf795687f6cbe425c9b64a6bea849dfab90e6849048be3c211ff1be1ff5d3d8c08eb023074b2211f80d8f146ff9d74e2517ba9b2d8f2cec4ec7da3d4f3bf45abe22e01ad7cf4291e645d0359292c042f96140b2c0302047c435bb5006630640230308f109291aafea5eb204974de597fcdaa9b8a3bdd57bd1496dbcd55f73f8f20b811f434f6ccfa7d5577fe3a5e575b8902302aae30c5c69ebf566e0df0da9ca01e2afd1fb159fff5282ddd6534eeefb452d753ba408e447c6e19741393e3e67b37660302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306ad98b5bae380d2ad2ceb3863d13528d15227f0abc8e929ff3502c0d3966e808026eef741084b9304ff539e36e49b91a0231009d1b81e4bca0af365eb19077971ba3ae4d2451cf7c3c59be8644f4c01c5c4ee74bb219cf37a815a1bdddeb6ac9661ca00302047c435bb500663064023058638e66f092061fbc286f130be449892270d06d984d524441f979ba8137fdb8325b30aa04cfa95ea2029a845ffb7c0402305a82b4284e08da22bbafa0dd1284cefab64366d43a165a01c374a7afeb117898fc1c0ddee3ae4134ef6bd6b3d9d79bba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b73ac6b4479bf5e155c47155340f4f95b4f3e1c44a3a2c56cf86af10935d8fb7eabbce0786392d471dfa33655bea0e97023100e77226df49c0254c627f2dacd4661ee183d98023798c7c2129b252bc451185fdd0bdc6b13fdc236f7ad0d2a4a4a960420302047c435bb500663064023030b2158aa5d7ee21f074271d41f51257d8cc628d15ba433aa3f2c3b1f3ddd446e4ebc20436ac26f093a3444c2c61972902300e5e68f3669d65a54e9cde6fc7d61fa03298c51c4904cf254fc0e3185d4d76419ee53686b206c9d7321971fe4529341a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230768d2ae2d83ac7ac77e5c461bf452780ec552b160dd27e3203024c977272cbb9f1a891e05fecb16dee2c23610fbf04b502307284d9988d37b289737cefd7ca98fba26283f06f85f6ab4fd49624b4f01cd52db13ffbdb511199cd39cdd64399b131520302047c435bb500673065023100958ba95654178edbd4b38c7a62b965c7a205925b8d0a6b08afec4f3019260850fe1d73812b70b0a192e9c0693977a7f9023055e352d586b932a0de11ef95d937af58be0388891b71d4da7ae0e1f8e3292a3f90a9ce8302c0bc0abf6779bcee4b46ff0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023019e3b9a39c19403bbab02d7d48650aada66ce2e937cfb357f6078f3efafb01ac1786780f11ea848b3057b3e0d7272c040230095014378664803c1da5db3c9534e6ba37f246560d880baeaeba97a94264c45330f1535a3e867a172c735391957c751d0302047c435bb50065306302307dc723eabe66595e2d3b5ae93b39d5d414599f73edacb8923a63c73c3df03c5528eb112a8c6d00a512376b9bd6f6646e022f461c4ac280ef605e56b94b34f9bcf8743d17478519caf69ed0d953a6d02362b6beaa99dad1f1de967d3aa21bf022400302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100bcf95f19b43f6e889eaf898aaa36ec8a7c804d353cdf72525f17479f5ca0fdfadd200232f462de51782474336801a315023100b2f163e18fd37da80282000fdd0f25eec092067648ee8b893a32c63376f900b3e008fd0ccfeb89147f23db2a26bc56d10302047c435bb5006630640230543e994d9a9f67b7316c08165cee800273839dc126ded6ba93f3e16ff1a7dbc1a21b1225963723d352247b94fd91da3202306cd964b04340203d394a55374f1ce1d96d982e3d6c28d872d33d4c247c036cd53ad14309de3c27912326766db287ccc20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d949283fa04ee2ec6226769bdec95bd60e3d3a8512b9b8c92b237a038f595b2a6b4f19b799a0a5ae2ce0136563dba82d023021805db7fac829cd8350f6f491736dd8c8e8cc508187770ec83020401e3a9eaa448389f3dbd1c192cf5875ad61b7e0060302047c435bb5006630640230467fb40a8ad1cf260ad454e4a3f044a97a067120a7de0c111a637465090d8decc202400bc032c0ac2203f3949ae49b8b02303c9e50e4b85d4d08417b0f6a2ddc411611039dacc888a693b8d95655bc3b3273484776a6fadf6cc19de730943e10894b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305b90c4533ff31fa941858ed539ad090e5d0aab343fbf9a2140900cc478ae103c7d36f5380ab800a548aff654bae384b1023027a53e5e399010417bcba5b81f8a31fcf8fc68d62c5387fa03f642d19d7132f753cfe719651958aa4c24734a4522f6fc0302047c435bb50066306402305589f895674c4efc4c5684ee437f1329758ec10f58e1e1cfae0f5ed42e6b138bd5c0ce71b51548e3a8e8bb7e3b311e530230705eb5921ec09fc6dd5bc0a7c5e1e2dd87978d4da3ca72f1db407411e3470d3e1b69eee5bbd434e5299d91d54f7ae63a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e27b81656ef7f97b2ac91e9b8fe407b493f864936e1f757602698c7ced0cc49b1847070cddbd2356a7056aa00c01b988023100a5cc9b9afaba1f6f16d08fc8f20639dfa597eabae26ba4fa5b5c5a9d60e4fe5a863e60ac38dd63c81b13476b196e8cad0302047c435bb50068306602310094ac89aee40ab4fa06a80e6b5142c225c5a645e9d7d8a8935262e08d2c56ff2776c96705d4c66f6d92b220cc70b7643f023100daa553e05ea65b6c3806528be9897f7fd1cabf81fc27559856e9a372064e9049a28796e17d037db7ee2191b15c6506b50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023052efe400e11a12aa9e56c106d3f210c46201f117092ee4c6947f2e9d506224a04fae60430d1b70ca98966d42bbaeb2b902303f73f3a7636b1113c204f8103daac0712211a84dbeca5a8b4f31d8c427b9b3094c3a66f1262ab17d983d463550e4480a0302047c435bb500673065023100f23cd10fb9e09876139c16c583bca703e89fefaffee2594a991e867d2c049fac5ac73fa3893e29d26ffa335c78390f58023010a5833b5609717d2f5ef0266dd7f2bc52dd628e297499fb74ba2b07f559d7c761489e02f2cacf055361e39a71987d360302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008eec654a1f0aa30b8f455b6e4ff7de90e4964a6a2d5ee7a82611ba93d234fbdea4e2ddb2f2fc7117256315c2835313f2023100afbd0468d335e3614d1b431c56d3fc46eee5dd5982e9df4075f4216fa1e6d413dae5feacb46968521a37362305c1a16c0302047c435bb500683066023100a94b6f924bc966ce59de5e703dc14549a1dfcfbb019afd7bb1960e5ff5a18d25ba57f1ba7f25ea05d8134a03354aaea0023100be251f025d286319d2d6243fecf6ae25625c229883c11c54c6c5b24e580fbbf46557173988d0c95c0181fe56f74f29830302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023035aa3541c8fea5feea8592306d5080f3d5fe575c60b1fa5785ccb4ce1e0b4cb387e9e73eaddcc67a9608f82e4e31f276023100a7142f638cdc6639d4ed0398db75f9b499d61ecf5c5d5a75635f8363ebc7075a388f8f3effd8059d96f79f08ca7de5930302047c435bb50067306502306cbb83cf80dae6313bff1c852d5c6349f88126028a1391769a508a2ce65aa7b497721a8d6ad3575057142fe2ca23233f023100fddf8a9856ab8ca73841271bbe7dfb37ae1a10e98285f87d289f4622cf858bfffe694149cf1388a73bdede27e62b01020302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230017f5e23a9ab76b69c7194504146454d4ce9b195e162c3e282fb5bc2b787781d9c24e957451093301c6986c5017e403702310082949f2ae8d18e79863a4370c044c907fb2c1cff4fe864fe47a4a9469025980e4ada8ce4414b0ac48d5493d04fc99faf0302047c435bb500673065023100f861f7b23ea0c68399f901dcfc42f9aef7782635a50567a148a33daf6cd0f928ea8f102d4ec83c6bad42ffbf6cbd6e3b023077a5cf7574a6261a320a57a334319b8ce10c03f80cdf3327948da5d6d4f992493a09bf1d5a6d5e332a9d6aa64c6cf8dd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008b2cb703b838e29a8c8161d9df79bb30fe7b738f1177e90667166c2067013799fc569781b45311e955af22f4b3f999ee02310096eff6eb4067b7c474a000e026223ebc6fedfb879a3640257e57a278c8c874d4bf5178fa987e7f75e8de962b8b9a47380302047c435bb500673065023100ce30653222fc6493b80c8ab871d723a5ea8b8ccfa65ab30368b80db9b5b7ae189a736fd60f7edd84016f92d8217b3baa0230035dfdfcfb144740834267124d5bc8826c9471e16e236569e61e17d3c7d7c766476d0ac513fad41321123881373fe6660302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100fdf111ee349da6359cc240d05089cfb53ea36c09ee4e8939810ac17f1578e257bc4717b3845ff4f8f8345bbf6bbf685102304950fb267d0d04630faa651de231936a4dbcc467ea302035aa04a6c442a35429f817ff131a55bf176735dde66657efbc0302047c435bb50066306402303675df59cee5bfb1b2f93bda7926422efab93d5762efcc91d58a0f91d2fa14ee6e22900d932a247a6d3e47e0cfa8959502304fd90c558c76fd73a525af0d428c8c4166ba6c3d4c4c3b1ab7da5531a41191c6f57558a7e3494f68dfb9433b39c5e54b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b8afbd9c10b83da94c053087b0b7e8249a325bfdc26c19d1fb9871e332b4db7581ebe0caf1e9542c8bf08b674b7e768b023034d1fb28d805e01f4561b50b4373a908fe38f8bae054c3948ab1abc787ed598cee5e5d1217fc77b852e9efccaa15dd2a0302047c435bb50066306402306f13578339ba85cd10e8a948a62066de65bad1224bb8a8593d9e764b606d335fea14f2faabb77bbe8dcbf87b211e521602300d4886385a6e781bbcac7dfa03ab461f46e58dae742c58601560efab13355f554f1aa8c7d9b1f23f339cfa13026dc4c50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303d5f7971c9099785dfa241a9ae7058d74a2b4eb1a02c429a64f567f019a094e787b2b09fa8d6a6b633069e6d0ce48e5d02300361d877ab8537952ba44fab909c0b9b75d30a4d9b49069b3a69f8f6b86a64408f7f4191bfd79effd9d875594546a2420302047c435bb50066306402305cf974d75d9c1eb956b66bfebbacc30f5cdefc2a3b320942547f0243a6470542593786d74ccd14629ee33a3de0266cd702305512fb0ce7b88261118e10094a8fe6b9130c60e1e56c8896269d6ccd4e00f0dece69a4cacf21c19675041c45c4ec8f6c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100de6f5824c3b3edd50e743368cd78286e746333067e698a4efd864feb4a2b38e188a27b0649c81cddfb79614d8805d67302300c7dd4196fe5a3ec012f37ca69d52b8411357da93e3ea6f4a358dfb281d28aa925fedfe2e5448675d22dd4fdfd8741040302047c435bb50067306502303161460b85eef3d5fb03d7658538a8fd1743361677f3b9014af3a5dbc21e52ace13f55dbe00a593ccf51460f324b770802310095f8070c1e847dc5f9af3cde56c416565b3629b5ea4434d92422a59c2d65b89999171318512171072b488953f7d9b45c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008ebd5338c48fdbaede6771dd9062d61e5ac757b51cacbea1d10d8bdb7477509c3398781dda26e27936c46359e3b01192023026a8a4275f611188f681b196e09c0b34603d2d5aab16d017e26e98114f47465bcb7811a540970bd980bcca95edb40bf70302047c435bb500683066023100e785d000c6a26c05ce432a847c1fa3c088e3fcc6c2143cc3e4fb8e1eca40e1b2dba04c6db5e829820aa9106551734de30231009ffe053405dc83deb199103f0781015e4152f10e3c9a2c3b563cc8adef22dd72ad9b2e9634c3723ed7d37b68630024d20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e58ada7f7e7f15539267b01aec60fe222956abd11c6307c2644a8eaf355587d012417bed467b6ae88e2771614dc99c31023100cd751fdf532749c43e204e52bce1d39cb576d962627417a3a21312f1bfaf7d348af925505a97690d651bdc17216da97b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008597c89fbed98b582a0fcc47181878d2a1cc60d9271d4193d93ea2f945e2cd470dd859594dfd2eac9534ba8dd8b9a772023100a275f94b91b63e3556a3de5d717a2404a4460e2984fc5ab11c645fcad903792c4f9fda2f00cb5766a750429e2ab82d7e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ac8cdc12c1ad26b327cf81979fc62af5360bf576c159b99bd66126b5cceba8a463087b5d53e41d72f8a55f77259122fb0230587f20e0d6b8db94abe12f858b731f018cabeeebf2e3db86fa306de1b31b57da688bf36581e0dbd95c148e4a95fcdf1f0302047c435bb500673065023100b44ac1c13df1b677a370288eda04798f2f6f2cd6a1c70317fb7cd773927a14782ac18e06c91ef746e94c1bb3749314d8023028e18b097e66450b83ba0df9fbe4e2f51bd9659de972da189dc0ba4b2d4d3855ccf133e34c6d49348a63dfc3b5bddf720302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100fa73c2974f7fe2da12c5af78ee5c52626a82104808e0b575f14dbcb85dafdf1276b75a51bb1efb26f0bf1082896bd39a023100f900d26755d677842a7035c2fa9f373abee438c36a4e1896ae80376a55cf6f4d6b90aa589fd0e55e37fb5a6a21cf86000302047c435bb500683066023100d0d9942cfceb8fe153e5fde72f6414625c479d2f4287f1d4e04b3e4c063aa0b89e164db335dbace14331d1f804b47a7302310091fc73e12adc65133bbbcda14cf972690866dc6edb4bd3fcfd426f2309c216fa1e123dfa47e9247d273eebe0ed0e39a60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230576df4820d59563c73e8f5e4f676268c8fb78d99fe84d0afeefd81bd2bab103c71fd29968778df7e38726efb95561d4d02300d2818bfaca0da2b84aecf5489162d9e52b56ea3fe4b42b172ba843a011d041f99280fdfe7ef1c21f97df229ec20ee0e0302047c435bb50067306502300f53ccca790f80fd36e8c5fe5534dae8ea71a2c4ac6247cf5987c7a131e50478beb1f4674893f08c872683617058433c023100de4680666a1824c2e10ee4192f02e2e10a2dabd4eceaf636267bfc5b991ade770975b4769e4ce748460083d906e2e9050302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302294b2d1dec7d014ffb68809a7a75611cee7a726fbed415b583bb91defd14d56016f30baa1aafdd8e20264d502a3ffe102310092f0b7c548d8deaeb481b73658856c6b5ad858f7f0e8a88178d2c2b15a7573b65917d06dd63e761f21a6e1fdd99660700302047c435bb5006730650231009e53e6e658d664c69c78d473af6914c4d46d35a9580a34ee7a9f593dae1bca36b06bda5e6d18c70734f5ed209610f11d02305aa713bc1934495165a1cee32995988875f60466a7af2d753c08aa1320fab9991deb249d5f494f378b24ecdd3257a46d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300d0bc9ebf6cb822579e0334e4cc9f9892ca4d9aaeec22cf1810d905bbdf7239a9ecef5cc0dee404dcd16953650d0c0c7023100f974a21f7462680e7ff0fb27eadd02130f10b77e97a0660bceda99bd592ad4febdb246c2cff9b83c6d6abe7c4d264c030302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b60d9476908f6c0c976e4114080e58c49d48f17bcbbe05cbaae680c5727cb9a9ee32d4d20b3f9acff147f0e81bf82536023100830eec8d2f98d91a3345b91c30261fe01241e82cf825032ece2c3af517a29eb7d3eb6b2582658b0c3e221f75d17fea6e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303a07d1bd290058295888ff7830abe9e8599f06b0d59de662e817f287d0fd8488754576fafdf29dbf66fc24c346695d7702302bd1236d852749e750dbc5d90d29a3a693d9fcd1203c1d27d7e689b6b192561421bd3ba395b96702ffe7b4dca562e6e10302047c435bb500673065023030a7d8a7dd5c7df9b80e27bf41fd8d659c7335edc3b34a1aa6b1ad84fdd64503bc727c3b42e5e3db7cf3e29330147e020231008e1d55571864f2cba4749259c4a4f375fef17beb70c4293c1c13dcd98f737e3758a629ee08d0591058dd12bdb70efdf70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023030a2513791c75b88eccad00cf362447cce206e18299d21d7695fcb9d733c08fa8a848b5fca4106fd7717cd2f7f5c652e0230021aa64e2a24fb60e7c53437aff54f76ca2427ac9f881246a02eb181f184844646c753029665ab72d17197da5284dfbc0302047c435bb50067306502304799c41f2344a59342dbc701e56dac576b8d5a180c0780bedfeb82ba91d2a00530a384c9835f6b8461f7c4980db9c69702310083b4abc4cbb911984e4af0627d16c401aaa434b572e40404d94fee3fbf8fbca64c2489273bdb8168c4f0a93aa567b7370302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b01f3ef9424ab4af4e8e0f089ada561631369513e61006501597e4c92188a4a0a4739b80ea4bf19d649f5f93038c5fe60231008ad03990e241dbaf7bc0178570fa5d8d1a899669ca069d51fe8d0f379879d87d847f7e3f1a91f3e54e44a51a0bae0cdf0302047c435bb500673065023100c3bb86dee95e961aaf08e0bdb925d275204d6b5d72ea77aaf8325deb93cd36b3f4b0f61d1b5ba4367a52b65e54a1495e023011d9ffa2e251a21fa1d0f1835f46d74e453c5667787041e86679cc4ff05d73ca3960c7fde2e329c17a27230d90757e840302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301ffee6a99f9ef4343f55a20ec597fa8641c5ac76d14e0485094146b1f3cb37b475c6b73f8c381b5c4e2ccef1c51ec2f1023070144004f3db8e5ee487cbf56e1bc936dc7250b1856aacb97bf162ae1def5b03932e41bb54c8b23365d4944e44b9dd8d0302047c435bb500673065023100b5f15291669aedda8c7b4769f6ac7f7f3eae81a006f9233cfa54429944d75306bbbc902d1d734164eb3b30085ca1449602302d243b65d47be827b3b206a3cf5cb1be7deacf5bea2e7540825ff3b7331e577d1d76a245f8f0fd0c93bb3e2d2218811e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023008f29e1854e17c095ac74ac675f88edd8d2fc578786932464c2e289aea26d80d33e549bf928c7372604816202a211ba30230133db9d07767c5c1c621ac92784b642e8e0594232283785a0ce226c6586fcbc13603c7883f1e9e1d24acec6d4e02ac0d0302047c435bb500673065023054077f189f1203b0501741332483615b3636a877d580274159a33c7d6e4b85c652edf1fc0f343098447f59abe047cebb023100a756c1b893c28ad0a415595c8d4f9896f109a124f2ef35f93af6ceb8ef407714f86f111d86a7833b8f8c0f55a9a16e890302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310095017cc8ae03c1e0145ebee2c8986b14c8ada8de22f83227cf73b8dab31b27271ed613910a10afeeecc55ec01b87c5f90231008bba2fda58771ed2433ca758ad34feaf67a4b1a7bd96e1d8b494c7b5577c5bc8d0e619c4d29905b9a3267fbf10514f4d0302047c435bb500663064023070f8e1cae11a411df1d6de0ca76b4f1539d63318b96ac28338888d589124b566820cfa1aafe736a6dde2157da8f1ac0e02305fd7f2555b3b241da151d2235c38758ffb0ae8df44431512a3f90b56dbaa7bb0fa3f92765aef1249dd88df7c424687290302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023026b57716762e9762c4616d975f6cadf2aef930769f34412109655f068c06db84497b779e77511addfeb3d299ec3bc7220231009c45196b5f476044a391a946dac8588879e1f4d2d4bdf632ba94100cd44c3229269c096963609deba7381640594f8d230302047c435bb5006730650231008a21c23fb86e11ae9cd779c42cdbcc061b5b46456b8edf96f377442b307c656757fdc1b5de76261b04405bc3bdf1bed402307580366360edb609b6d48157e4120879aabb0c65539b73faa14d13d9e67e3d0f704ecb88dc337bf1ec56921cfec2e5a10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230770a9bf55c3d89810a59e714a303b2645eacc6dbed75de60b86c87d98a1ab51cb2ba0c8d0ed7e57b006dea1fb126b351023078bc26ec50d5d420f352e94ba9dc7871e6ab2b926a9374f2d5da3e6ceeebb00cb6c1507e47d229760fa026597d9736d50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023002a17fa68f0cf917a7e1f6eb25295f9ec0c8310018a40ded821a92ce3831256c714871f62d38af5ba639c489853a5912023100a43ddcb1054e6d5e4c407e038e2abfda9792f25e78e65ab22fc7dced9cf886b8309c9d89706da136de6b468ca5d5355d0302047c435bb50067306502305e7beeb64c92a8cf683840e50299618a01eab6ab9222b2f07dfb284c24a82b345367438a62d618379015c05ebdf2ac31023100b417e76a04813513e26c5eabe7e413d7a56f4dd043a5376f2f6c4b87638188ba755b6239cf399d48c8117a7d11b0ffa70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100943301b9590f6e7af712352388bf36074dfba163d80b187d73d104eddcac4af7366a5b8e057c3ddee656724f85af76a302306e5fba94a0f44f8c0474c781b41131f308f7edf99393db6ff02306589d806cd37324e1082bafa74077ee1aa9e573ff440302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100eca72fbfb1bf22a169c99720749773ab336ca01264ef38a6057d280f05c4ef43c93b3952b6b38853b5aac3ec7365f93b023100ec10a30c74c7f6f6cce865953a6fb856cd7c8622ea0f6ddffb0a6049ae7ce0ea97b1844965aac90ef638829616e6328b0302047c435bb500673065023100dd71904c5320e8d0587decb3b73b46c2beae5c50a703beed71ed22c8339ef24480c331b927a9e690d179edcb870285440230120916d0ba7a2eb6af16f8f5038478823adb896894d71ef5f9f3d31295a6245bdd4ebc85e1f417a8eb5d246297a972230302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305438d03c65adbe002a77132fe04e356d69f73f1b336b260bc6df3165e56292ec993816708ba18b17a27646973dcd05e6023061fd772ec3ba7fab077a5b3b3b978a689a09bf1778353ec0d4b88e73a7424f4ff44364ff5a8d30ffdee17cfd0b5b43460302047c435bb50066306402302e55a75c2dec0f98a3e823c369208fdaec7589eed1e5650caf189011b9321847a5734e493eca4e7b8f851b4bd379f7f402300b68444dfb5e51667e6d932fd62d242c4e9d6aad627986b69ea8975b049a126607ce4a875a1208e3a767ce184f7b2e620302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306422377c211a3d3dacfaf177f64164533eeb0806bca8723ff3b47041d167739b77f4c4169cca8b0c0f2f84bf98ec86fa023100f16df2d8ecd7399474bacc948d5aaff530f592fb5101fe943eb846496751b17fc75f2c08d7ee59e9e45a2c949786f9a60302047c435bb5006730650231008f6ac8ae0ebb5ef1d68f6c0608e93327f762a9c382aca134a05e976f3f7951e731e79e470a14e1b09a53cd83aaf163e002306e8d6cdff5f6b574cb220e09c7b1186126db8375e2d4b2a17a13038dff0753c9d3d24cd9c057c1c1eed1179056379d830302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a59b97f81115f974c8326ac25283af824896c75f5e7511c8408bbbad26f295e710d79f77af7e49914c398f47c86b6700023021cca481e652301efbfc78132d2ac1ffa7b0e3247d18aed00e160654e2e30c7e8a44b1d6808eabff5df27e9ae3bbc8e30302047c435bb500683066023100fbf13f6010807c28fa5bc7e489fac9de8a7815dd7ef5d9591a70a2f6f1ed59b2443b0659c450584bb1e15160bf9ec15e02310091d65610f1c1da33e769bf4d0dc00d648b6fd309e41cdd61d2f8f08ce02201319ef24003d946d0bea4496a212cc586f00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100af0624a9e6796debe33a27aef8cf63bb18f40adbd0318497d89a908f04e549a2291b89773ae8eb1b6b213566b0db4875023100df0fe2a73c179fdc33e2606b01ae75832503f473c1c2eddfd579bd20a5078eafeafaabb43d2ad5e44306f64f5a035c850302047c435bb500673065023100b7bb83167064000010be46d1cb29e82842d57881e28e6d21e9c65a72b3da9a30337098c657e0ffcb05486fe1ee8576ff02303461aef0aaa92219af671ff2c164976416208c540a3b3403450aadbc34a89da800b46c9a9ea9a5c476990ff8406f03cc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303f1a220133bdfaaaad6d6ec201743df9cf2619bd3a2c73b9c3c95f9e17ebbc6501081a6d8fab0298ebc7cc6f3cb812ff02302a6026f3265d6c3558de34361a012c3ba0619ecadc9f67b241f22c864fca67032b05bceb5dad52118b85ee644a43d8770302047c435bb500673065023100871b7c1941ebe766b72cf8e1620ab49f726784f884a3d3f7f7ae3f1235cea84a68516993abd8e338e9c84f6ca2787ff202304173c16a062b3d4a92410573368b7e2e3cd02987121d6d899eaf53b8790f7d6067e2d4fe0b877b8a9d99a4bac9b5104f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301409deceac5a33a7776ee3e46f95b8a563adf7832afb6e3b3b5f11c6497254af52c04ffde44cf7d4bb6f5fe4256c375e02304c504f115567666a3350f363d1072ac691e718f9b85a664340646bb3e670380524749d84aa55c0e07840338d93b1845b0302047c435bb5006630640230687dbe5e01d6d9d2edb56bff13dd71bce6ebab5f18ecc7a85b576b6f043f5a5d9ce2fe314cd2b321c03ffd9bd4c861ca02307db51b2dd00a6063368430c01e6e21011b8c5d1dc8864b380203c9cfaf21cc633a80e437b82c68076da9f064ec5198480302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c96f96140674047095be0f00a872b3659f9b5cbd61df3c8c6b19a51ef6b48edfe2d950440fb81689f62f3302abc7e12002300eb0e41be6db4cf20306905d53beed912c8e6cc51315e92bd9c55c07e008337fff312f4cf82ad2d3d621957323dd3a5c0302047c435bb500673065023041f8808c92b7680370b3a84e5efd05ac4d7a0ce785ecac534598405944fab43541e383628a7bcdb23a54b77fd941b2a0023100adc3aea69ebb4908e07f7e99f8a7d36bf003ec8db8d9539e3d4a99718b6b991abf37838f643566b2232b73789369e5400302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304d2433898da6ffcf3ea252aa5faf816b7123022b7d94f2b32dced5ae760345a85ba25b9db1f4c3df878c75a5b74c456902301d1e8e2a4948690cfd6cc823c35fae74b7fb7660eb75592e8e37969d2cf09555c0de82ddf99d5151aa8ee8ebdd4fbdf60302047c435bb50066306402300e709a28584b6f92d7daba4619b8be086d528be2e5f4ccb31de3128cf4d7ad4928774e0f1c4f4582c7d2d5e5a4c0ce8002303bac4be79d8b76d46a4ccf22d27a7ebb678ae070952933876ba17b2423ed595599085dbe3e9c10b569473ae03e75c2b40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023075f899706015749f6ffa4869f663cca7bf258dd8f304af6428874863a5efb426e08f0d5b2d09329f84f24b1865ab954b02305eda115218ad5315d053c55823cac2d0bc77c3c0cc37b82046efa3cfcea8190edded057d39431d46d1750f801cc2571d0302047c435bb50066306402305ef45eab76e09e3cadc8f0900406643bdd3c4b8c7caa8f2efbbaa59263d9fac88741946a135fffe36e7f1de73c6c4e590230149616b7e4707a4657195b679985e307bc2b78286ad9a577e061b140f12dc76be8fc5a175fb1e99a360f6442fdb35a860302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303ed8d829a374a05fad97fa60720eadfd275ac9806475f550d4ea622b57741f8fe30906d806e5d159422c4ef532e2e99b02307d629c740308eb9c79f3731a94fb5828cb235843bf2c723726fe45210f0853fae5716e5b83c0c08b2debcc57445b5d760302047c435bb500683066023100868f8d560d5b0d67789051e5b82cf615700bed4755b9dc55574a40e0a9f01107aedaf1f510c31c6f5a216d2d40707cf702310089e960d9c5343c23d0654939cc750c035108b87a18e203fe60c3ae690b8014ba888b3d65414a399fbedc5fbc4398ae710302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100827f433d61ea9053fbeea10bdd793c0f22fae0f8f134614c55d2fcab07e0572b2681057d8e0b3bbb1ad1608bf2efdbc802305060c12b7be82986a7012452b50b7ea2c32a6d0f846677878549ce823ae7e2be65b762a0373cbcfb0bafc624930ed0d80302047c435bb500673065023100b6aaeab5907688fb8946cc0c4b136a8bdf2a1ce5531db0eed075dc528f6de76443265c08b8709e4642823e95297531ef0230452e965c38023ee3a534970aa78c28406e3c5c6785403b46a20174c796035e5c5e6b177cdbdf8b29a0343c3455d1f9450302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230059d2e1fb5c8f20e1cf4d194cefd7646f6478f40e65f42f064c1c4452adcde1c0d73f259c43483531cb4804660afddf3023100f5748b80aac05c62be703ba19ee9cac09388966a131b590cb8ed6705cdf753093aedd946069c58fb0756384c8badf2660302047c435bb50067306502304c636e8a4b17acc5bc650d8d79df5de5d006f0821f0bb2fa16865dfca333f9fdceb1c30664f0f0af0067cf315911ec80023100e212f576edc8030ac5d0a51edb483c9ef55b57a973d763e6740e62fdbc312ea6da8b36a3efac7699b8c8caff514e86230302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301e8ff9c1b9f23118b124918c0a0f96812fa1f8050cd391e7aacbfc1a198194f08519035a4323e59cf9a182bfdb476c7f02306d3ae36d98acddb0e6cf12c3910414bc6ce3acaaf8a9c193d93b0270b79edc7fa77f011eabe7ca4521f3ec31cff5bc890302047c435bb50066306402305111139266418672063f029be89436cd429510654e14a99aef484345074f79839b4239ee836eb8532182eb17a9ff345a02301739fe390638ed2d3330ffc8b382d54f6875e72c69d31c758de231a63b7a764715700b10e64c2e29fdb0533dab9541d80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304f19dc6b513138c6fdf260817e58f0e264b32c9b4861f7e1a8e42d8e000bb6988093cd3b603d8052500c58c6fcafda67023100f6da466fc348bd585ee698477b969ab3e6fdd4ddf65be1317e25f614d9fd7875352fe1b2987a3f9119eaa4501cf0961c0302047c435bb50066306402306387b07d36dafbb8d494e516a1683971f91d83487ec88d42d379edeed05c45ea56b2c70d3405cb2ee4e4e2b2b719f75c02306c4537a6263f9a79c326e5f8c252823f145fe3bfd4ced1554ef7bce4aea249d08a5c055d398436f8bbef22493174ebbc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305ec266e119de8735659ad64d551a3a740de0b598db6c6cbe2c63bb905e0cf2bf7ee42d67cc824aead76efdfd0f62ce2302306cfe645d4f1d755bbcbb8182d24dba98aac23b1d6d3403eb4926dc67be7561675aaf7d4f48ce9a9ba3133fbfaad1c2610302047c435bb500683066023100e64ab7a3ea391aca17ae3c14ca18621ac21b3abe406e7e03b9d13d326c0c251bba7e9b93f587b7495aab7902f95a029d023100a22a64e0575aa895cb584981cc987d5eaf1dd1e7decd7b36b2992454586c6a69b4cfed5d2e17097291adc03d3bd27a3f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008eed450fae6b2fc1201b0036827cc9b14463b6ef4d5fe76a2422a855174da15df362065c55691568aa00f43f503e465302305e91332b88bce0e1aa0d20ae08b3ec33a1284ac4e3b7225e90e292ad954618eea74d9622358dddb60f3b7be4114395ed0302047c435bb500663064023024a39e08c8d41e7acda5d630bf5ef6317cd16fda9f1a67726cd323f931dcd082870479a8001f1e07b3991f274874c2c302304bd9cbc9b9804b10571ea10766f30756b1056ab60944d378d5edbf084d324f5a2c2132947e33d314424b3b80c69a36fd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b603c4cc82d54708bd31c98d43ed9bb2d07223eedf231606d6c26745ba576280135d7529f1fa510883110bb94d546fc7023100b6ec6c4f78aa8c5f57f08455385696bcb1b5dc2745baef019e0bb92b61dff59dd6da80660f79defee8f7fe9f49a5bc560302047c435bb500673065023002c77d8a872f0a1b9ef6d6babb601de93c7708880ff64a04618958dee69fad7f85c8d6b493a96c1196ca65b609f4cf61023100c64ab012d5f8e7a1ed8679049233f51fb117c96e83ade9bcb44bf8739ee937c2534a608ddf7efaf62ed787ce64ff64290302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100808cd78c1f66cef64c11d716ed1fcfeba09ad464ec57029c5d447f7a0c9e3cc4ecaa6589e092d14dda826e83b762ba5d0230192725963bc6f0a116815f02660065339062ac499c156252338c87fea209585b44ff2075db24bd395dd166109d718e5d0302047c435bb50066306402304a31d1758af37ad8afec2a6175046f7c1db60fd5b1747d4cdf6291364f3c5a2883e08bce96e1bdc92090a8e764fd849e023031824067eab5ac47211afa85be1168f54fc2412e8b57564c13dd2ee0090b04409231550ac94a4e1a5fb1b9a41755fb8e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c16515c729db64196c6819a5f71471723a2ab45f8de397e511872df6830630b81a6a9a7b4774c8fa50daa596b9b05842023100a0f512a7c33ea7c2f2186389f1d44b6f995be394823d0533cca9555e9966d7a4b92bc1927fdc90cdce8c453299c28b2f0302047c435bb500673065023100d28432258ec2db2954446222a5a01a4ac377411473d1b26be183d01697f9788f3100e622b2a66748730d6fa659972cd60230037c4d01a9a21c8a4e07341f8088a1ce2e3c0e56a377902edbf0d512d29f5870f45c6eaef87070e0a740ee3edf559b260302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100de048e52bc84e3eb161d97981fdffa5a907dba8b51a169c3e047ed35308dc103fd36d1463a8ec5d1ede148b7ce3c805a023100c4d58b2c0d86859151d12c9d7a389b7f369f44cd73cbe6debcfd8ad752bf58309d2d16a3556d693e61165fe99233fd100302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e3e57fcbd51dfe5c9a775aa9af039f69266e6458b01fec2077324b9ee8aa8d88c7cb6181094877871ed07ec3f7b8de1d02307c6fed8b888a6475c7860edca7b735c132ffde2741cb45a1df7363d6bc59e3f247e27e103ea29d80cf2e538dc685594d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307d248f9946b8d38cfc0ff65dcbdb8e3432443579c0d2f682476c166be0a905ae19468c66f98c36df7d1e2cae8400490702307369620a2efcc0a0149bc8ae9c6727a78a260ce9a26fb75d3bb0069fb353039162ef58a18bc57ebd809f8020e0d810e30302047c435bb50066306402303941037d1595cf89f6a575b76b7116d156c21ea623f8500af1e30626045379e6df385994b9bd5afb1a880b6dfaf84a5002301a142e7e8e4edd5a1bea308e1d1242159486d48b581f7e06c16979bea1058655f760996387448b0f4916616dcd7442a20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302527dcca912dd91d7cf6a464d65094966159297329b45be0cdc19a8b1aec5ab91396f8288d0e6ebb1fe6a827ab63a93202305412d9cc6438faba94f62b78510b37e9b42507518f77f04dfb877c6871734fcf3abd76ed622cac4c7eeab8f9eb807b170302047c435bb500673065023060443efb6d7a43d8162dd0d48d6da53494f3909a027999efea2eef5e97b9cbe311a5f685f6c0eeffec61f9f5f0ce141a023100b2ae2de5071a1e047a0cbdb89bf52c865d055933702f23253a28c19d8dc46cc7c8e08b3c8739255754f43725d5375dfe0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301f99cf94b2621bfe5f1569af0d0ff4a0fa73e9959e0a7a8e511f879f6e072f18eea3f01d03384d917fcda7f458bf201002302a7e92d9ba33d4399e6e753f7b90b05a52e0ce8c51015d201413de6ca44d45fc041f26197d61f4cfaf83e98ab114efdd0302047c435bb50067306502303a5b57899c7183039a4b8136781efb263e77b4b986e260ec7c5d383cf5880b1dac745f88a1edce0a0ac9d8c0c9592e8f023100d61ac0d3b2c053a62fbb961d385ac38665c35aafe6f468e3812dbb7e5f01b01f210070b7dac96c69e89e5719b2cbeba90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301fe524896e1eee9dccb49d7f266d62b4bd8f1cb7e57534e84d6c9395e04923316d6e7e6b7397259d40948b33d3d59636023100dfa8fa09551b7d9ad98c0f19cb307da5deed89733b093da25cc95f0f55cc93aa044880e953796c15f760d3da2da8c0a90302047c435bb500683066023100fbad62ac384b77deba11758ba88559a2608f0c850349750a166733d2a7532eee84b2027258d6765c3f9e9b25989e46eb023100c57e8a08441094097c66a683ca7b6a77a3f52e614a8bc4deb58213f370134c217dd4414f3dde71f0eac6efb3d4f71fc90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305adefbd4b4a1e2e539f67fb65438896ef5db3ab3103e872d8ece386b585cfcffb2f3ed833a5eadc95b03bbf5f8d07ef602310082eb00360ad142a7fe388a4c784cad730f224f4c65d42a1ab2da45495afd4d7e3fba6822f601fdf064f07f368e5c7fcb0302047c435bb5006630640230317525a28a7db1620e4f86a9b9de9f1cd736d28ed0bd320b67cd4c530832c639211513e31ad4436942630dc27b42e891023062e4a2f314ab4f524d0fc2767976e7bffd5bfeef1a768f17e527d25859d377a4c5a89b28b34aa1ef170c3708c2367d580302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023022f46130697ae9b1a1b9e8296cb52a79488917cdd8e7e56dc0c09ed9624921c2bdeb40c9d688bbab64100eef1679a659023100f084b0e3e0d5ca8ffb14e092795386af2839dd3267294c70ed94deb43f91fdecfe682d938f114b2fd949e57b9d8c63b40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023000bdd9a11bf82eb75ecc41f3a6ffde3f4917b1bc218853e80e0aa79e915de5a713b80fd96a092d9d27241f5430f754e8023100f5e77a982545b4cb10c3c437b6b38857ba0663993b03145e24984d5cf8886b3846c1bdfba9b06d9911ed6f243440f7800302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e0267019d429670b5dd93489a22b36f13f389928ffc65407c85761732913e963e2ba53ba660fc267b0187cf359326e7102304db2333ef4e4b4e72bd1669cc57b27ef731339ca20288cb747344f6957d37dadd4d7db262659cd2b8dd9183eb2643b1b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c56a7243e31064f9873bf806e6a65651cb6e1985ac5ffe872e25d66e070ace2da04fa28b7d9c0ceea8ad035d5173a06e023005d76d812a5f89d8a19c0aba1e70162d2ede1e99192bc70d12e155cd7cefe3d2688557ea42f9bfd45e955d6f5608dadc0302047c435bb500673065023100a40b6571eba1abdcd1f7711297ebd504a192b9788630a4c9aa6eb6a3a834f49132c70106d79726944098b87b151f263902304d8643c5b94f00af10a18cb36b6dea1609a9d7e4565f4e1fc1f6ab9710f3ced80eecc560269ba3bb6164efd751e8c3d30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303f4cb332f658b885f74500db181d8f6fcf864c43b76b01be1ea0643a178347e6b66ac5e6c220ab09ee84b21ffe6508f8023100e4fd7da7792af91a35f29fa225d3d56c8aad1aaf12f641591220f56a566a34a9a9e4be9c3e882bb90c471c335dd4323a0302047c435bb50066306402304b1ec445f3bf61b08fd7313f07041b001cc90946e6d9e2f1ee55098870c53d7667beab723621b6276ef0d4d0ed9e7a350230231173ea764ef4906a46356b4120245acb3192860dd0712bb8467c1b47f3b721fb3de0b37bdd4609f802c08d5666c0a70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307031118b2eea70602bac78a1ba700f23584c436144055849ffbc846b30352d72d1bd583f961a345dd30824de2ab71b96023100bb6fa4e8650e4de9b6c2c5f3cf6b44e0bbf835fefefbdd2bd955f269a8270ad95e91e2df31cb8bc24d59aa52193a11380302047c435bb500673065023100e2a2575ecaa691469e4bdd731256525ca194131d1e4b2a7381a08e9c30265ad58152313bc95581b84daa53b3be89af3d0230122a2f5dcef4ce47750a40a4853c13eaf7d41bb564a3762fe942136f17d3227037718c17f60acbd327cc0a4d503ada9f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230385e7c03685218b1bee225a457d062953a03bafa9d79b5e0b7842d3689630dd83db9e06f42410c9970a95ee75eaa47f6023100d974032010faadef8c9e8f5f4c537836b4caf85939736fc502841288791d7883bdece7533c30a37f6bd004499bd9ad950302047c435bb50066306402304dc38e205b81cfd6f649af8985cc485a98f77e8ae2558319f97de50489c936996e4e22d5d2f9792899ada3276efc293b02303f6fec68b08a7c76d2e23e074d98c12cdf3200de4517182d6cde3c13f5aba521255165fa05837ba4398558d21eca94160302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307893025ed0c6740bbe2f464e4a413a416fa70172df208710e3d1e3aef188a2f5b78f8871f3a41a9df3f1592bce945d6c02304afa606cd59b65f1a5b3f7190c8cd02ff953c770a2ceb14ec1be0dd19b3de9642df826ecd24fdf31b44287584425b5dc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230722bf3758947a17892d62a2201c390a87c9f00a6c8db660bcfa07c8c263311ae0d283b3012d56792326ae467a1ac91fd023100c376c43eebec3571edddc37c2d75040527a54d41499d3aad87c9beebb405b9d94fbffbec699b6f0e099663f1202212df0302047c435bb5006730650230078b9f0a0f8cc28c0acc0dcb4d7f3140ef47197d5f6d8a5ee8b20dc47ade894599f1307df347bce46886cae9a290132f0231008de42c08403430b671249780ba3443555bdaa56e83d5f0262f032a6c4811377c7e5c296769e71b935270449452c2c6580302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a2479dfc149926db1c02754a1b73c673b03d780a86801d178eef42f5217fcd087b172922f6ea748eccc943ccf4333ceb02304c72f27a9ca3cebedc3e0464371c2fb4e4af499c4329a5ba5cb368d363c11095fe7a9ded224f6f7c37c4e53298f2b1d40302047c435bb500673065023100ef426fcbba73454cdf5f80159ee561c3d32d782cd1be8f8c887cc7b9f6c6cbb74fa3152779f38c4b16c6e3b7c7a5101902301e020b6d7b45951d8ae332b1fcab0af47ab8b543e9a3332464719cf3664db39d806aaee85e17ef0deb983e3d93adff2a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230156f6c21be0da9a9da046eba8e5ad95938f99a8b3451454fce28b943c03c475bea3d29636ef319f74f6ba21907cf9f5b023075aa34ecab4e3eec3323c8c1b2a95803c43a2cc706fcf2f60c0cd1f7f9f75bfa0f17f0e446ec60d2fcf4494401fe182f0302047c435bb50068306602310087e02bfaa4cf52fec32035ee5f0cceddec04f16981e5ad70bcfdbf7b4422c8ab9b3aef205f49ed56bd970b0cf7a0f222023100d26da5f5ebb37645361f8830ae7211f06199c283143f71c553cd0560709e641cd89d2a9ac21e666b024f6a8f41e70d970302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100aab939fa007c872e265afd430fcde4038ca402e03a853b44db15a713b031749333c50201abc299b9f8edc80b84efce20023100c85f6579fea23ab8105ab2fde53c6fa21b9dd8451d6e087f31f07afe65e075e15db8434d0f61f5ce4cfd0169cb208a920302047c435bb500663064023010eaa745cbfc0c11bbdbfe8b160cc76254ffd258dba69ebe80dd0010f23d226c0f808a78fcd5d0e905799562f7fc5fda02307565994842c61aefdc233e3c5ee924440cae33596e385422614ed3802ed29952d87c4860d365435ff4a3f43af9b6c2210302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402300ce79f7648fee431e35d3467667d19e09bbcf765f349e5c11903abd5155863fceda40392367f9744cec99db08b10c4100230397d0cfd0e0261fb96211c37260f4f001aab4ec423f04e27c7fa6f6a3a79882ae8d1acb12c4cb2cc2e5de937f80c6cbc0302047c435bb5006630640230514d76cde96a5a833d9d8e854c482887f36282d119c769286c43b056acc7b045ddeed0ec3a2e0eec981682e0d017826f02304ce377954cb5d039b1bfced2c805924b01dc8a69888af41a6ba20f19e89c163cda93e07f521318ca7b8249d6cc8268db0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e797553ab78a67e5b72f6a0373ead20bc76d2b350b36c2e7aa58133db27f31d0d991079b27d2c8f04b6b4fc0d45be450023068efd798b761ed9e608cc426e50a4a55c3a4b64b3406c1a5d454f26dc2b7f37296b1ac5f845fba722aab87c33f6ac1260302047c435bb500673065023064e69ac7725e338e80b8a6f7c3f10e171f997a53c120fb7ce2cd1ca74052ecf13a4463e452adf78941c019624c135248023100dbe5ac425584f5e7012b18972399db1053bf9f7ef5329c7e5ea8f21cf3ee25696c45e2c9a6bbc8d828629fc8cefa1bd70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230683289fa7000a988c65e7f32ee8b46f3b4be08a1d1e81cfa71aa2d3ff2a44b276e86361992e04dd4e03c5c286dcec2390230317ff536402afbc31ec735319c13f431b6e1249d275b702baf696ffeb7f68801d56b29201efb9ca0807c8f0c87428d3b0302047c435bb500683066023100f5b687f5b040738ce1cf33f8f3defb41603888c0d7c6a1a0fd9e8588461e8b34c2bdbfea93cb9dc78c4effef24796f8b02310083bdbebca1cbfa1bb270b25b021fb166f3de854218631b4c3fbca70f540c6e84b0c15743288ce0b2a0e5b3b354f4d9380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307316332de273e6ec0ecb5a0b0cd82c30a97611622d36579c598a5d73c792258313714c0c348fb9c2b183157955c8a6ba023100dd0a78537b1b44dbcbd754488c6ef62702c7de85f542b801911a2990def6fbed9f3623a6839c655723556fe756374e5b0302047c435bb5006830660231009d53394a4c80864a377ce970e9dcfae253ce5d2cf9d796cf8c5496557e7b79ded0cb35d8ca93108f41b24ea3c78eaec3023100f1495707ccd4386302854dcfc3677cae79d16c42aa010abb4b9c6e8c23938447a3dcaf1a0c2a3b6da538a3a1368fd51c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ecf742684b9bba0fc0994b74531c70d76e3515153879036fc34c517c3e1ff47e567999c661431b21008d32d6102e3d72023022e3ed741407abfeb76d764a60622800b078ff76691a21bcfc6b03c2e65e4ae9715f12e655f15b32aa7ebd1fc27fea0a0302047c435bb50066306402307c474f8e11e41a72abefd4e76467cba9a4a36adddaed1ab34c7ec73ce786eb00988b08374b75975e6a825f0153eda8ca02302ed88aabcbbc79be98632da34e630aefe7f2523c460dcb1cbd0f17820842706e4884dccb96e88320c95f42bd0b3af22e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100af02d772612f17c0e202288607d031ab43e07237ce602e5b32f567716ab509bf5159cc8470628d39bb044e56cc23bf0c023100f20b87eb1689e1fbe31e370d17e50ac589b971a4c14595ddd1f227dd688ca115a6771a8f8577cf1a20604cdb4120325a0302047c435bb5006730650230489d6916e0df4f66cd5f56a6dd6cbaa87907ad3aee31966b208e3eaae92c6a3fdb0b6c7ef2ddd9764a672d8e6efec643023100c6f9f3b6adb194284439a56b7df0621595cc568e426cd8efadcf65af3b68ffd4465bc7d8e003d3d6d383e353d22958150302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303766e01c81341c159500335f575690469a77af737065e3d994f288283689836d68d4a3c2a543e552a0bb766e75d54fe102305a4d9c876741ac05d08e5dfea94bf017ce44ece3134b4c14cb6ea010337586cdf74faa4d7575d7d5235f41b0aa9122a90302047c435bb500673065023047071e7108562f40095a5a3b5499396681e9189d56e2fd2cb6080eacaac5467f7d8198bb47200a29b835a9b5fb7c5a83023100b65f5cf3a667feb2bc0180172dedc12b3783629697e682e4b70e7dc00b7e9616eda571db0a69555a4cfe8279b65abb0f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100db30dcfcad9923a40061e5f8090044d676bac53edcf23885c06cfd74151b6c4089a647f1c8a0a7c1135226c9619c950a023100fdb7b7f75433ba223800a823f269ac621ed610aab4a509e98ed292e350ab234c5ae56eccb46124c3e0cc7a378ecfeae10302047c435bb500683066023100a7d7a18dbf81aade4d86b8400739b2b78e8544dd3c4306f9a22bdddfa40c8c1016b9d98a5f6c1e172706bf7f629f02c3023100a68efc2dcd90a186cc17d32b2b4dfd22b4954aca6d08b8229a92116974d2ecbbdf971ee2a3f8c87837f051b926520d2a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230467969d56c95cd1834c66f8da5c9a5bccd9e0d35ac232901fb78aac67efd5bf7d00950112733fb029dc8096ad26d938c023100b804cb3acafceb4f090c87ca7ab511e5026b09f497004241634c6627cc4c7ce5719b1412a7e90b0b40067788fb8d96890302047c435bb50066306402300da9942c5bb9606528bc1783179982aed7f9f0a31bdb754c8aa8f1d4afa409ba16e5f8867178bd6498a71f386f0b6d2702304ee651a0b2cf9ecd36405196a42a8322b0dae74724238633ad0c6b216f6beb4df4ab7f1297a42a1a282531edc1686b0d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023021ea078bce05cd25e2f98a02e1065133e4f839888105b260f6ad42ed360ce38f74af75c29d103658d0dba91d79754c57023100aaee778421ecda741483df23e6c07ee18bab04a49c95ef05338326627b86fec2c1eff9ab75e36b66deb7051764f8a1580302047c435bb500683066023100c80614de82cdf3927f75ed9a88c5156f2b56f04af9e1781832b0becd331d3c95964fe496a9000d9a827231ccb1a0c0d2023100acd89878f8edcf920d622a4710d4f6cec25df2817a84a663caae05d3c3fa2df4445653d1c81e1c4759f538a6795696360302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023028aac68d07651e223570e2fc63c3d905db30153ae7acf559e985bd36500e38b140fa061684287ccfd916af5253e76160023100eb2b8326f58e90b96c052fe5b48d420a9d15c2213235bc6484b9f2c454c687ffdbd6a5277bf6306b8f592efb23e557b50302047c435bb50067306502300209ebdf1d9c48899b554f679d8363ac91bf2a0f1f53ea8dcaa98298e568b1d422349c01027084547e0e636c70dd5d9e023100ed91feb3a087c91db8f6846b57b1012796b9b034b8a493a49457061dd63e7d26ee4c82b2aa39376acdfe23406bfd01860302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402300677dc5edaaffa997edafa7367050229f75754c962bd198f3bc2cec64a8a8137ec1154ec17fc78722ee88fb42251309002306df1dd4695261c981b0b8a81729943068c39817af627140328c82fac58ba0a9c0274bdf13b23022fbf1d7056710ab1770302047c435bb50066306402302be1e2363f1307b1d2b649c8080bcb3d9188c50e3f8e0ef7ea10cae114494e2a184ff39b70914c4d1255cdc93a3803b00230793b0fd4bf8ed8553626c2807d328c304076b8f541a8ae09ab7ee8fc5615e3d18d32dfd776f27400b8698f84d020ee840302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ed502eea95fc59ce3c0a2a0fec98b57a0d6d8abaa81c4a37110fe6183b1e8bb648d7b3b746cadbb2179d797a45245c2b02310098a6fc5aa6a5dfbb5e649f43d518eca4393694c584bc4bd79c7bea3dba63f852876c2c7d0652d90e591efc1d1a7e2f7b0302047c435bb5006730650230639a16ebfd08ffb917f48ae00c2f9bbbe98f9eb7c1bcf3ea4ffa4331f123a7fe87d27837076ea2615d4d4cd0c920177e023100a500a278878dae74139903c39db63a5363a5c33fea4f449541b46742f872d84a7d891ec90d6d8407b57f73d0bb9c0e120302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307e9a7ee4bb95bfc29bd7d88712f6d130c50c9baed38ee2329ae2d526eec1ed9614d4cb1f00b750d30c749ae2bdc2288b023045acb738f02fa1d210674f00dad46f8c9a9ac24eaf324ce4e72c62bd3f2cad9fb3236dbb505e5a8bf86f216dbacc592a0302047c435bb5006630640230179e20706b20c6926d81173bac4e5d659680227cb03267d9808ebd5d8befbae9b3b44a6a9ade1b3fd01b80354e17efc8023041d3c2b38be41c76d2aa8908e5093480f54dab84350ad5a7d62bb1d5f41ac43066d99b606e0e8673afc15d8d8283490e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023071762c2b346e2052ea86b730c554e939bae13f9c0f15207ccd51ed3bf62277cab10211e08d8191f4d580f9f6148d44190230733a453d24ef8924812de3825497547c5964b37c349d083a3a3f04224407c300b205fd65f574fd0b7911a9c6a8f3c45a0302047c435bb50066306402302f73cba62bb72380952e9d902e530f128b511dacb552bb0fbe8182f8db647aa799bfd769bc3439e069048540eba82c06023024b561bf7fc13e9feef47e268d3ceba22246d53bab20d755d0115fbae25f5a65723cfe513d4d4e217c5d958c8a26d9bb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303c2045374c9a159b83ff1babf1ddcea845e224ebeeb79f71b79421af3ed887cd356061acba7fe222637d6e869c9485a602300243a23e8684b59922e06ebb84e711185d25aeb29b5bde3e49a9559893f8d5498465e4607c2e51b3f76f809f163564040302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008bda8f1b667817c55fbf84208e67a1315fcb81f50b18d73feef0399538d2183d5ff77ca5ab625b0a0ea08bbc078a324902304ce5b4642425ffd415790ee09a2a1e531d8701649788874d30499df788e5680b00ad4b427cf292390901e5c65ce54a870302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c7bf87f800cbf24dd9c08e811a4754fab72ffd058ea54edd05c803971a303e1d37b464c0e4a51f97c8d67cc9609adb1602303c672020c0c56d65463662c8ec5cf13853e74669d89e9995cc8072819d5ae6d088d0eb81e992f83a421affc30eb5acf90302047c435bb50067306502300957f94e23824cc133ebc09bb1d556803b32cdb95082b800b2dba90cfccae69a17451e1aa767ad62134b2ece0ed40892023100bef935dc1cd78e9c09a4a6572a7fb6162c591091b54aec878fb9b1ca20d285ea23ac87899d802e89079b67b681277ea40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230313c7de3d10884e119be0f5ffc6a0e8cfe9aee833337e1118078e78012df8e2dd29983b2a40034bcffdcc85d6f211b89023100ac0017098ec0b64ad193fce07150dca6a881262953a22bb36f236eaccd3132de08dd3924cd3abc07638b4b2ec1123f0a0302047c435bb500673065023100f242ec5116c5c382dce46869233c9ef9fc363415a0b98a54606797ab694954062557f9be996fb8176a8c78607345864702306afededc636ae2cbb7e77117ad1d6c788ee11dc23f57d50106ce9d00ff5bc348efb976c2988d2703f28bd26f177845a20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230056066fd82eaa4b9092ec42723307b84b5eac1ed201913498b01a2605765ab65ef4373927450ef17a06433e3a0a50c40023100840edbe4d97af464ee73f4a921e323627d9abcb20ccccde4f98ea51fa77fb394a23a08020a29f0a24970df5f552db34a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009876e44343a7b1999c6ee1581d8028ee0a7b5d101d28ef2bef98acf0582ee02442a413b1b0317d25d3b4ee558d18b6f40231009efce5cdbe113d8add55a57dcafea1a301b92746feca8856580c139a078710aa82ecbdeb94c853aac1b24e0be729dcaa0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50065306302303100bba5e5c7c41c2623b64635d982df34c3a5436df208bf93a833a476f1887648a168e32a61ea86af9bd6867390ab1d022f11bb92376e0ec1bdbf024f04d6c64a5dc72cbe1f79cda3e619d5100fbb8d502f5718e1df6e83aec49392fd489bcf500302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b50580ef32c233d5a2adb7f3a62812a949df22e6ae9d33fbad42dbfcff9eef1713ecfa737f05c56c1f194162d1aa7e9b023100db74ed8b8efa53f15581c3055d41684ef7f0ce3d81c7d18f142cfe91cb1e6b87de5e55f5feb44d7073c54add950f94660302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b421d0baaa44c9c91647200ea4920a2b23de84f0681023b2b3596364c370a9699cbad22998f39e1d52394a455f1c7b0b023100dfa33f4b85b7f2e564110d4a843c7e61b1025fce3f3fe5bf7dad06186d278bbceeef62d8a687a9ea568bb5525810c7c70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230447dd4fd721cde1f882f85948cf9a6b859e996b02d7fd9f34c043594b1a8e6c9347967022512236a3d2b21757f80aa7d02301c95acc61a022a3db8982cd274e9bd57b4acab241d75b0b4163086612d45075f0d24f209e73eb7655a2facf26db46b5c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302a4e84a9fbb27f0786cb2c73f97677b0b5c34214d9c942d71a77fe9d0357226deefabf52f56f91a6719231ef0021ded7023012d956e4d6704cbcfe285fddbf7a51621bc3d0ff327a613d3239c9e2ca7840c281e96a9e2770ccf20ae4c342c10c45da0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303b8f71e13d47df7b8be9e1aef1e40d5fc5913df14c55c44a20c6518774190b727a9ff2c4f970f4bac22bc1f8e2d9b7dc023016b8bdbefc6db42853fe6dea7d75a1c3f915421064ebf13a51a72465f4d0731a4706047f23675b8a1d2b9d494a8cc2ab0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300ccdf11ccbd8b0f61c11e718dc90bac3e292d8ffc6240e3e94acce816d8b14695e17fe8a8cb394e8ee018771dfc8dfa30231008b314f405c9421b10cfc01764130ef7e38785369eb13e99b0430277be5bcfe8a38c178e72d371e45401d35313c1938530302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310081aa60d3b050a19c499b0326e4d13c9c636884a96f595ba02a80c5ed11acccaa2eaf17ac6555a7b93a6a6bc4377717ea02304bc4487594f150aeee04da9bfead4bb94ddb482b96894a477cdfc8232a639338a17842bb916c912d60936ce3cffd0f410302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f8baba4434d1c46134d51dc6fa517ae3c596dcf97325f08c6874cc89db9b753de0f6ea7af0d0adc49cd19397df33b4dc0230708d0a9cc9778613691b972ab3cdf4a4e7001f1869fd528d6727e9c0c8cf366ab2e79495ae327d7bd528465ed96c6d8d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a91e348540747d3003854b4f484fd0e2b074b753bbfc3e399ff72a6cc3d9fed0bb239a8b3def6473f63ae0c03a3ad4990230421dfa290526ba982711c743329f9ae0f91d12ec2315b4737c504fea69acfb149ce3e382207224b73ece16545125af720302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a88912286e4292dbdb67124fc14d0e08119278e9771d339225cde2b6f58e814a13507e8bd97da2571db5daeecc449ec3023100a058baeee9ebb6eadbe1210078e7fc6086325ed9f83381e2ef04d13596254c501b4fc3b57bb642e0874eff8bb1c4e5700302047c435bb500663064023048716a1ed7927ff3ac19c6956749b0328ccc6b92042ca5362cef16bfd0fcc32bd5ad5fcd7a5ae65559c9f1a94f8c46360230455d555bb2ca840bba2c2020978dfed06cc6421b4ad0a7d5dcec2c4c6f5a3c2c6c4a9bb4b9eaddbab09ed3d01a3c24400302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023076c17f692aae831ef25dcccb76f5fce9be7076cda1b689d143a58b7516df971b4bb831dbc5e107541db6082e5c84439102307373380776ba8ac2f63d9ecb126ba95cb714308437f273f3aec7ecb9d386bdfe0bdb2aa1bc5ac671ae5f1df19f5444b70302047c435bb500673065023100a7708c4e7566125490b1ea9817e586c63ad9d4ebe2d997fc34406e42d58ab0cf44296d7c375d646314415b6d38a0300902300a31d0560d3fd9a8753701d94c289466912b1fe58cfe6c70e75a8111ac6f70c0d44324a287bded30ebb3dbb09f5c01920302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023051bd0f3596fd844c520dc8278a50f641e26d0f986797006913fc8ea92cff47791d182339441cbcc134cbeadfc6fd6bb5023100c94b6d2d3d85931e8e0f4d80d1ea4968e5cc7c4676faf3d77f33604e6fd53187ad07d7f127d0aead70978dfe678152690302047c435bb500683066023100cc83a08a9abc06273e04aea4f92cf281dc1115e2009ab3c88c43e39a7fab36564b8d7b4f556537141cfbe2c27a70f7cf02310084dd5249638afdb59fefcece84b8fb9a80194718b7e53cc731ad027923a37785f9e35151c6aa75cb4c6ff59787a5ec460302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023020d8ed9179354978ee5815e6b9a92b1a5bf6077bc18bdc6941723e607f071f1fc8a88afa94dcd2dfc66b77ba45534ae1023044e002ba3601d904bf51133f88a9606a1f4cc879f2e9eb1b33d90dde8c865dae4b700a2983f673ffc055b004e4bb6db50302047c435bb500673065023100e98de9719bfa2917761bdb06b1132dfc7fe80eaf1d42870e2481bcce03497b3070a5af865b0b3b1ec9f38e053d5c8e2702304f94b3ed70f18d8bcf8d46aa776eb75e450d0c2d8d37b140a08afac6c51b5d1c67dc9dbeaa822b200def4f159eeab5a30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023046d035af17e8bdd6f6bbad3b056bb78f0674ef0b5d29fcdca9cdb436a90152cb33a8f5da163c999aaef9a5cf92653cd20230760e7f256025bd9cf9c4aa59e05c31cd026b74493b8068ab8d1ef48621657540653b1484bd46199507e9f596c84c80f00302047c435bb50066306402305e163f3a30f9ca0799e1e21ee1d29ae98c87d98748ddcb4e2d8065f5d77bfd104101f5bbfe43207805a1ae90c10e172a02306ba06790c28c54e966486961a1f439a89cb4a9f748f96e0b87f3b11445427a3bd056472c9fb4b0e0d0ca10e627cc14df0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023043d9debe4139f0e7098103d352cf0b312f1e2b54d57f6d7c6ba8305cb8fae1ffca96cada3bfef08dec24d4253800825502300b98f929fb1cb2b2ad7f86ed53cb3e6cb93404e53f03bd03cb2f7492351afea1fd91fd3861d6f995b2c176c69bfbfc940302047c435bb500673065023100f96b7cc4d5e6847af14040a9bc8933a88ca22f185fd4581858ca4d0507149f69cb48562bc9a278005d1f5b89acae287c023031ba73023ae7da714b49b13af1e9b19f57041a72b59a3a5a7e4be53ab438971c43a543592030f3518cc29b068de03a160302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c428c0baf5e3dc3a1e33d108ec9d6fe775d793770e2294506730d3c156c34b9e7ea9a254baad9da1d8a1ed4792178881023006ef907a238ec5b8ecd19907b80a59505a12ad3e9115f937fe8d1e6793a77f1df5c4532d49cfb628e320562a206261a00302047c435bb500683066023100bbe4b0cd54596dff1c54f6d72d00fd0feae7cf3cef511d905b918290822940ce0cd60349fe8f41654371ea1be14a5299023100b1de535628e99ad4913a8d6ec46d547adc493b1cd3430d0847b068776178423ed82635e3bf5b7628fa7c050177dae07f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d488ed95d49778d609ddfd50b5261e9cb935756eae3f8db55fa069d9e203a3af6fcd9ead2a36c201923c7b57a0ac3de3023100a7784a05998cedc46199292bd428dfcf8214eb5fb5b1d938e823baf85f7f3568c068b3c16d5e0143f81891da76be66a70302047c435bb5006730650230287a0b8da921168bb033cafecf778a6db9de617e78c8ece247cd6438f8a2400e6533d29b6ef8f0c3ee49087678c9c2990231008c767ad9afcb219936006f104564948af5639b7716e6efff2e34090d4e7ffd2e7920ad17b6de44cc6f1d6b696bc15c650302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100fb72cb091ea432660c0e9c0946c582726506279cf35142195b4d53f5a26a049f064fdbd240bc3f656011c0eea3b34a450231009ff073ef5919098ce7845a6d59aa337026aa7054c40cc4bb2c782896a66ec630d38f64b65217125736c5398132df85750302047c435bb500673065023100dd42b1abb3872757ebfdb6cc58a07fc534cd535213928a51719ff88ccb615c203357633de739019caa59d8591e31ca8a023068f0cad409fb63aabc058819396ee947be9ab2817a7653806c9a94df13b3cd90b8275ec1b5ddc6061a4c466ea712a9cf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023056cfe5943e50311801ec843dceccbca6b27cace4cd7fcdabb8c18eb3b4a8bfd367e703646a5fa2733b0980f5a73502a202300a823c441a7ed6785470b8318f828670fbd6ade3e4b708b6bdab340d0f3117ef18e939089a1cd5a94ad2efd9ca0c8cb70302047c435bb500673065023100f0b27a541a8547e4b4474fc7c8cec45d1ed6ed25c82fa812f3e1cde5807c1b48e03310a14c9e5eef66ad55ef714772e702304924180b09baad6549fd16cf830adecfe056f2ad30dc81524f1d6346e077146a01f219b694b74239d4eb25be3b8c3f970302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310097f8a90dc59a0a2d5df5227c473585a0ac3ede858d7127a07ac18778726997557d9735af91851f403bbc0a11d1475f3e0231008f00e7bec623e9ba22f4a34c1e876aabda1d2e654c1f3f0a1a0d7b5433b413f4372ba4dd414b123d0075a7588b6880e90302047c435bb500683066023100f485d2b4f2757cd8ead32731a16c2410d6609a2ee3200abbd3b2da279339ba1ab8066cb2999e1ba82d3f3e99ce8a5685023100fd3124cedd6eb579655739de2eb91525f339c5341455b219d1b7ecb8886998769c635e4baaa513a635629cea09a48e6f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023036eb9e2f05cc6029599456f3c04f41ca459adf8f899482374a973b73ad6ffc793fb6ab44c5131778d91598643bfafe61023100be59080ed3224e89bb04572a085c062f39e30c714001938e8750b5868ae9f8816b3cab0d31805472ae9dfe91b50c939a0302047c435bb50066306402301afea66a6f6c98c723ab2b97514d3e0f52997db1046162fbbc26a756e80b46fec7270c779aa2c2c9024b960cc981351d0230092493f0c96591fd1f6926c4fe9b68f4ab5dcf213c3aebb91ebfb4e3581829454af02bbdc4534af135037356bd84177d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023055d6716c36993cdefa020e4ff77d4b88df8d0052c16182a84ef9d4fbc7edf229ed8c04870a9e1f407c4598bffe5d37c502305412973c6f522e92a1b8d86964123fd3021249835acd4455ee3c02ee97cb66113059b4fad013a7ff5865ef29602cd09a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301cd46cacbff2507367236d63ccddff57b0e34c1809ada882379c7b269f0023d5075bf4577892237856a0a5e00af9d94702310093a9de1872e683c74cc7b9dbd66817923c0bb75033bec7640ea57a581b044313d2b4f6c9694f9a4a77491f7b60ead87d0302047c435bb500683066023100fdaa3ab2bafac89846d7466939f2fd5f6795c7edb595f3fafb2b37041dd000ebbccebc41359d3eed4071e3649f04e374023100f97ae1c47da36d8e3d21c498b90f326591d62a0c6fb5a7240e9aa9f7defb93e34ca84c4924abed8462ced742c47dddcf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ff85564cdd4c4181021c698da23df7c95ec8a3f8ced3bd1940dc544492d5e8b4b8bea4b0b0fdd191403951c5782d207302306081525dd391d81ccee6fc9f9f080c29da204fce9f02b102e87319a32dd2c53c51bdb6a3bac5aaa6e84a977f721946120302047c435bb5006730650230319252197790d745662451c525ef64dc6f14918377c23e84b16391ad9eb4e67b185e78b131bf5c412ef44f37b3931f81023100f9ccdf67829ddb151d0c57ac81a4d04c7b12fb51b5284c210773571684e9f03ce7de7e681d2ba6c25a9e85c8c79c78040302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c8b831b2308eb7b37bbc91381f57c141a6298062ebe137104a5d802bb10c39d7276e8b53929771ebc4e52b45c93185cd023005279c9e54edca04e9007386e709333da94726bf6058ebee2b225315373885c7927141f36e11a479bcfe1c84935f419e0302047c435bb500673065023100a494dad1e40610964021b8d8a69f34e044177b758e3fa106d145b24feb6a6346f8773f40ca928a63c17aaabaca886b5f023066d6a2f9c9b0f4e970a55f6d967b4ff9ed0790b3fefa7fa67917685acf54a0f5a5828f122b6d6f6057a9ce6a927498950302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d9b375aa87b87a7339e9ae37c36320d76aeb554238f380d9c9ebce2cb60bf9bff96988b5e28e052544ab0df355a8f5cf023100d495191db6beaadabfbce114b4c9ed88a2cc06a18c6f7365042bcb842146859ea7ee2c8e49ab8ab31c8a7969fb86ca8a0302047c435bb500673065023033d3a89ab04d4484613a65a0f0c93877a2a75eebf505a577d4d078593ddd943b37571f15227444a08e97f63bc8144ece023100d1c62d7d63935d2ff1040c20322a5af94a5039d9248981f6a9283c8b09dc985ce31a70a95ab5878ecc1064a54819eb2e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307561913ccb070c603dac187e4ce94fc8a005563c031eca69f320dd225c34ecf08f5c47dca1f6b7cf073b81d986208aa2023019e281922d9354cb14d980c7d8ae2751edecd765006472f16b9028bdf72d1626886b29497d45c007601dd80f312f86530302047c435bb500683066023100ebaaf7b1ab47c298ae4107955446e4455fb417b0aebe67f7a87842bee3f1863f04d26ea8716de3cf9ebd976e4784ff7f023100b7d62fd35e140334fa15afda2a238aa95d6282550430d6d524c2fcf3e711ff3df274dba04c9ed8ca16667817b94cd76d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008402c53a557261677c8d28dbbb03a5d0e68fc45af164eb397bcd83b52ca70ff2b31cf1073c48879ad807f172a65eb43f0231009f48ea2ce92af2b6adce429789f1b59ab0425fdadcd5b29b53003807b76e6f736b656dac4227e9fe59d911913441d9150302047c435bb500663064023057dfcf565e6ea388a6abc34c91edf1115aa3cd069e30241665780d85eccccc26835264fe8af7077b835f34ad5fa54a98023015b46b98288f1052fa9ef542283f052fc205e8f87afce5048b6698e8d3352fcd777138054480acf1488824613199b74a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a11296f3195b0124c6fe7b7f9aeeb6f784fd74151527a989bfe852588448d3a4ef75a12d2840df0d0790da732b51b8eb02310092c66848e354b173a846cb062d8d02636b4bd277da30a123ce6bead6a7c77e39c0b088e4b6df50980079554d147333610302047c435bb500663064023043e2e37bd04d7d4504f2cec6b71e7e6dd7998d9227fd1d7804a7120fc0c59cb9d6566a3eb279559648bcb3a8859268c1023008d637fbef608a073fe04692aa9394f54e62a9d5ad42145fdec6eaec763a3cf558c875c72e7589d5926ffbd08ac1fa830302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230758b5960f9061d332f862d0ea6e9ec5ddfd5758597b09069f3049e9742591f2a8f8bc86012b3dd9018dbd61e30714471023100ddd3c1098b5fce2fc56f5841c56effe9cdb931ec463da4ec495df5109583a89c8f5f38ad3da7e3a6b7bb66b250cbe9a50302047c435bb500673065023100d77f16332e38338476ffc52ec8343ba6e666e67141ef540a3a9869974ce90d9b6c7a694cf0aeea712d0536da6f29a9b0023055e1c0acf74d625d2c746a79dce3ea0da7cb186f954d91f772ee45505cbd03746c360bdd0c7d99adfcba079b8aebbb2b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100da4a3e3e501fc26e64bef007ab2e4d02bd8d5526fd50ac2a85edd774b481bb4534d3d12e810301a3777dc54e526e153b023033d9cf5fd163c970b485244a0d184140347f61303f2c493f7fc28cfe63b73379cf97d6a82f952484fbd4ba381fe15ad50302047c435bb500663064023050e4a3cc7237318615bad54e9c5cf1e9ae704cf9d0e356a9f19b2a0d6f097ebcb67225b61a503897e2822a96a84a036202302737711f7c5fb125295a577620e0c076cffb4ca2ac8a122a90c5d121278de5af42075d5adf10bf11a94508c7c038a8470302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230038bf8c4afcaf44f3a237eddd239754c7ea860a375705c8b0976678637989cfb1de46eaf403723574c14af921b39caa902305d28e37e5e362ad821f9f3118aaef726ed5bfc260669d2df3dd539a32fd5ca23230bca52bf37d89efc4fdece0439f4190302047c435bb500683066023100d71efc246b7e8bc68b666883f905c09da1e6644299e2d1642b76209811dd643c77506abf02044e7a69befffd2110a607023100c8e4504c0d333122775962f90a6bf47471d4424944205eb334891afc38ad72d38a6a97a69175816c5b66c444fc6333020302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100de12dae796ec94c29266735e57e420719eeb2d0d9f05a3a4d847b600347b50fc952464463aed1c4bb5fc2f20c3ca1b370230561c587509efeac67936e63016c355a42baeb10aa54b8a1eac04596497fd6e72ddd9c67fed9f787856d727cd87e57d7f0302047c435bb50066306402305686626798e665d7c7cc2573068db238aece295ddc777f53ee9ecc0cba0128efc3def4823e54f654927174a40462d86602300d8088d981743392f4e0561a1f935a09002c424d4a9e69e93a55f4d62e03303f88f025a3998fd40bc2888934226d2aad0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304f11b479be1fabd0d8dd020263bbaa2b03b61406dda790171b2c59f58e592df62fe87de57ec40c9e94ca877a3fefe925023100e2ec583b0c14c1a9c4ce36abb7f22f250d6a8a16d1ff14bad0af804ca93d3df3fb0002a88835694de69172b080d5bd8a0302047c435bb5006730650230074ba66ca64c3ec8b63b13eb9411937a9bebc2449073f9d2d26edb8a0aa8a7e7da2f57263012a39a0c91530308b08372023100f40a45b942d980754ba954ee5f58886990322aab8c23d2ffb35171cb9f9d0a105b1104341d6e4b1f6ff709e19aa2f2e40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023012f439b9e41faf9dec6dcc9d36019e2f9714b47ecb68d08b8d8f53143f6cb74e5c73fcf252dec9d258ad59bfcdd4ea92023074e386eb4568064d484aa18fe201cc7a4b1f31dfb03645feea7b00ae6575001f3f41de18d7d539f42ab2038a34c2880a0302047c435bb500683066023100cf81709122a44abe195680bc2d3ecc549d4fe6266ad5fd4bfc19c41042baf741f9b26e97085410dac753dfe5d152b068023100fe441aef7e5d0672fe2229370656b0998d1190a2bceaacde109e793c76ec2e915856481550d490f6854206a06cc461110302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e87b2806d163a3f20ae8daca3a373aea755f41b1b06221d24c7da5ed6ec420b711abb2a50057dc624ef1018751c72b6e02304fb7ba1b692b70b76829dff55d6b7872f842f1dc99737489eb4989ac5791de72912ecb2d56a3f6af465d65928eb915d80302047c435bb500673065023100c1347ce60c372027de9cd2099ffdfc93a4e80682f97a7e89c463c96387022233f75fdaf8349a5ece6c2d2202b2bc445d0230142ee4f077fe974425d5ba10714b0b6fe5d5b80023b1ab3e01c7852fd62d7c69e7654e7cccaafb6e5fae494ddcc802030302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e177abf609b1155a916a90f05aa5bbcfdd0f36e57ecec8aef77762f74af84e9dc9dc106eadfe54970f650774208ad5fc0230460dcc7686e2af715afee92d30203543c9703b5ee75c1238236cb46bc832d3566bf8e8557b22c70bda5a2eccbb3abab50302047c435bb50067306502307d4fa6016fdbcb4e6f3b48d58056c16f5992a9bc2c6cdf0210721eca42064f276432080f23a947b6297afdd4ab70337d023100a2114108a65c34d9b65ad0e27fa5f6c528fc44257acb5abf62453929ee59986ef10481575837f607052866bd6af470660302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ae6a47bd883a119eae8137cbbfdb66d0a8838db435cfb415f328009b8bd56846fe62583ef5633e0716c5a1547bf50387023100822ecfbb63b1989ea06af91052d2fa63ba402fe39e3ce07e4903aeb3ffe738eaea49a4c62b0166c8cac16a063d4539eb0302047c435bb50066306402302f70dd18dffa845f0200f38d2dc883083a08925b37b9e8c7f9463c1b25e51a49684de141e3b934eb18a82427c04210b502302186627a449ee78e2ec312948409d9bbf867a7118cb3ad7b0671437dd5868cab6bb949dd755d832da051f1baa5f932bb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100bfd55dd0f55e4daecd4fe7795226896f856df0392a61cc16eb5e5ce50f12eac167e97c8d450be8f908a08c40399c319f023021cfe894bf122e3f3c5012b2d56676ea164d4a78a8fd6d0425b4d5980a529cc79ae378b9ac3aa70c4277c985522731a30302047c435bb50067306502303d049d079a97bb363eff491f29b77bfdcc1cf57e27a4388226cba0fdafb3d151649be35eaa1b7963c734146158ebe77002310082d4e5750f4d3f42586ea26898f6f3375390ed6ddee79019c9fd9b5cfa29d8b13e47c74c4a7356b42067b4df3f7b997b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b9dc24cd18ac125b6abe253216333c8d0ad1cbe3a2f42a576e937c6117b6e15fb33de17c6a0c585a502dad5325264812023100b8ad47061f502e2291a31d5cd90be41ac407bbd021a44c548a4f014cb79a7492378eae996c23751e29380e898d709d000302047c435bb500673065023100c0613dc7d1b8695d72fa3540c3fcffc1c0bf86a75cdede0569956d08e9e7b82a1c46b6e4e6211e6141a5218607255674023059bcd0ccb128236bdbf28bc54080db3cdcc6ef6a226c32b1e7405120badec340b5aa76a03891069af6ba2c947d36afb30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303fce86627a572c258b72efd5241b559c90d8f9a23d05823d8a6737141464dd8e6d249830e55493c0f9ac2daa3588db33023100c3a07d418af742d4b5fdbf6c8a767946ba0534666ccba3544a1a192a7306c9628543bfae9e717d7bb6718c7e24ff235e0302047c435bb500673065023100f61b82a606becfc33909bd45c785ad069bfbb08a4db82f8c13182c4086139f8da114d6e04483ea851f2514d32d15668002305fc533deba69391cc51e2b2c734661921e71524dd2080d14742d8084d2ed86c391f635a947cf805d5bab52416f327c950302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023052d685496efda2e729e3a394fc001cef4d5d4546b029c01abf609bc2ecff7e4433e7b01575bc4b2ec8e3aadcd7bce7b80231009736885bcbee3de213d4b63953cc594c1f77cad38c7efb925692ce22e87e42ceb6ccb2ce3715532b6a6bb1fd867de72e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301af2127fe0633fa2b632c302ce73c66e6054bbc27e6cd758730e234c1d9f1dcebdd41781e7c3ddfea36f839ee119d8ff02303a8bac8b7bbd676e8c7b0a233337411a4bd9e1bdf8743bffd37793839a69a07551eb46b6fc4d76abb70e487cb780d78d0302047c435bb5006730650230143a0af9ed7dcb4e2237539ba435bf865e2ed3d815e925eb82bd0f35501d5e590c655eb2682886532711d09549cabb77023100d8432d3f6ed846aa287285f9ca185f5aeaa8f0555c94ea5efd738749c4865190ad851104161a6e1a27211c17ae0782580302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303f5e5e2c74d2f0570928b887b6264a21c77f1e1322762e5481e8084fa4ca63566355b4e9591d4f2e249590a3166c388802301a884aaa6d5d89dd083b2dc9604964256d0694b84a95f46ea03a56f82a64db473d1701d0d47ee399eb1a48a8be63a83c0302047c435bb500673065023100d0753607bcea6599811410079e35c4bd87ae726e09fe4ed66fad8c0ec750ac37996ec1d797c44d4baac44368ed8902b7023019bb2b8c8579755bd644681b19784d3a8cc28e8d1969fd53ba761acd98dd394c5a0d2d785b8d020ec8e124a70d47b3a90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306e83dff442b552aedf3f28c423b933f6c4ea0f24e5e44bde956210a5747f7ff21b7c96a972d656652f9d2d63d5233bda0231009888a3740d5d8431dfcc8105060ecf015ba30eeb2f2d14a9b7a1b19106c36ad3fdc5a49fbb44238d24d43fe72172f3250302047c435bb50067306502305d39375d4436d48873ccca6e93f1f546fe0d67a16095e4e87d7239709541c62d8f4df96bdaf70c030230cee19e95c38b023100f90b4126a2da8d725dd1d6e8650a2404865e78fb5e7a20d872a61789b2fe5bda6a82a8d611b9a2ceaffa17c45d8c426c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301a181fd25fddc273748e83cbd375d442b43dab457d7d2bcd70da8d07b7024fe9d8c41b8bf0d4a42483773ee20cbbc57c02302a16143fe645149346f6658089a13c3246407c7a246c8a978588e53b953c92d2b111904671704d9d58568e5f8be95a8d0302047c435bb500683066023100db7b99f2584bf8a8c69b6577367b5c1fd17b4f62321170a5e9617fe4de3d6a316509042f57569a3e7c9c203556779c54023100db8502c62f0d8e31d601700fe3fe9c5aeef39721d5c644229b27f13a9f6666ca62ab65c658dc5c6cea9519b6fa933b6f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100adbd436fe5d6b47e2726fdf932b0255774c191a54d6c6f33fefcbf93fbcf79f0aac66f2221c7983329c8f1d34779f0a1023041ebaf5de1216271d9caace141ecdd34a1fde5f0f5ab781085414d7afbbfbd89bcd4a974573a7693a2078b7742c08eb10302047c435bb50066306402303db034d8f42cb51407faafb005819977777f4347b8f363c8ea1c9d05970cc765eb2700b8a494c27cd15139719c8e463202306e9cf9a087516523be2988670781a659f63aae4da3035f244c2482970bbdc9876c54cd3fdbf8c09fb63f49b411679deb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009a2bfd20b80e9816642920c2a511db0c6e8deb7fc59e1907fe40d22c8373f997b4069591d5a8a06ea9d53d2a2ec02f040231009d4694ce20b3abd4e97c2e4ed8ee5c8b3de9096389dc9b1205381100b8462e574134f1f0f48ac939f8a5d2167a887d690302047c435bb500663064023061c60fd2dc7352d78a6306fd11ef64643aef3d1a9e35ff0e93b9378f058616d9f0c0aaa72fccbc808656ac9140d91dac0230663defd80c6b77a061fdd1bd841983e4d76f75123c388c92d6d62104469813cc67a5ab7e50ca75413f2a4142980a2c210302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023009661108e404312a3a90dea8167771ea1890a74316e8d4a66302a34446f25c2dee75d2b751dd524f1596e4618e8b5875023076a77ae73ffd4652996af66565cf69fcf0d884d417704ad197ded18523070105973fe2a02118be00b8d15dffb31ced690302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303b4029ae55d2d87fbef16beaa47194ea0c1c83fa79e1e840184162ff772d3459a54141790c3f78013260c7f32fd8795702304ada810c32d3d04bfe16c87fbc702f892b3dc424b44f6f19696b850c181769bf5cc77c825f25dfa8b3f4dab8dd8633cd0302047c435bb50067306502305e538a9443dd07cbba08c4f93f309b3dfc84a2f406964402b39b951776688762cdddbb45d0b837a55d0e04fa4716ab5e023100b50c10c527171c10287711c80f088bc3fcfac41e120c435d54b1a2c0b3c451053d15794576a7635adcb88a0196ae08130302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100bd89c39cae2cda2a983ca9cfb0a9265941c014913e678c0931b05d449e49461a23ffb0e58f0424a0073e21a3469f813b023032582470694b5f38b327f1826a5c1cea45cc8db1be33a0851dca8d2194c8e921a39fdf7964da7f0eae5606a56f6283d20302047c435bb50066306402304dc51ba4d47f17fa7030dad6c8cd21d3ccf175600911fd3ef9af8ac329c0a70649e2644e415e3c55064f0331fa36f25c02304eeadda6c083840c3209281f4167f23a37fc2f93ee58ca047ddb77e10699ad69d643237956f031b0670a62f1d17e57db0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023055b4a4c6be1b1d31a3001a79b1eb0223c30a21563532d208c088a4a9165389733b6a4793c534cb6bed9581da5fd9a61e023100d8957df2988862b79ab893f2b7847b9e7411219af9c74a0d172e13d62d200224175491332456d44e6f09c7332461bbb40302047c435bb5006730650230515400b8f712e770bbe6e8814ce72b6e41130363ef6799a3f3e343d46e147e8d11d40445315c32ceb26936da2267d184023100c6b1b661a15cd8833e9ba27c91011d2f8c09e7bf8c149054bc059726f44f17738a71843e5af26d6a759338c6e18e078d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c9084a90134e9b7f3f72202c60206f16143bef6ebe7d07efada78286f483345b894e1932aac2a2f9bdb0f0211f1d95fc0231008634c2cdf7407adfb6f4b3bfe791c612c094449aaa5937816344c5dc3586a2145b6367380ae4409d584bc4e4b01ff7e10302047c435bb50067306502303652323481c0bb24e71a5b1824ada47d3ae6804b9061af3439270451734e6e3efce999407ddbcaa1699a0aaca7f35856023100b84ed4f4ea3c4f7250aed2069201d9dd6f4c95deba8c1fb9e230969b3cb38b50fb546b4449a7021c255485aa6ce414340302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008ae148458f20980508b3158b980aa44e898f699ac4d34c38d5b5828dcf0104271be58ad580092a982bcf5f0e0f6d585c02301633ea7d1daad4b04220e7e11ec5728f48f8f9eb262d138701de1099f40d3cde3e567ba657a61e42e2f4d6b4229a938d0302047c435bb5006830660231008f90f79e6ef08e4014683dd632f5dd489384e2a0cc717052774673f48ef78ffc9a73f5505346279ccabdb4cbb0762eaa023100a27143253280f0ae14254a0671f1716306adecaede1cdb608497c2663111bd15e6b00bcc61fa6435185b4f97c0aed89f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306d361f2bace2e77d76aab2dd714f5a08c39545a225eebcd780642352bfab894ed62f19436901258780f8d5b0140786f702300b811fdf5929d6398d46bf438b8ffc2ffe7e379ace3518cf6380f434b1db0b35ea770a91e4b5590eade80f4d3db456000302047c435bb50066306402302837639dd1da141ac65cf22a6038b1f913c6da9c409b564c0f16d5bef3cd6aacf743ba342fe8bfa2bdcb780b99c0938a023056f3867caed136b996eb2258831fbbf3ecff837ea42ed01a588ac0caae94e29378e8d2bd281cf51cd63774d778b9eebd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303e204098b0ffe8bc88067d700c883f8e95517cc80c8c9bb176d28019e11d17907f996692b0edd09fbf16ecd3d38a7d67023058b6109ccab744657aa8d234bf42a421fc832bf634fe537e3ac8f792ed3448c8000d1dbce5c6976fafd3648f6b380cff0302047c435bb500673065023100a8a1d82c580ffd6c6b142fa3a90ef2e3e2dca517efa0519d65f0273c6894fba35d0f3a58e727c2292061e7e911b86bd4023047bcc2050c449b97401b565c7f3ed557827177c49c55088be74715e439569924bb4bd43ea8730091a94ea95a7f4edb230302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cfffe4e78a22a104c9f6c2f274da71e7b546fb9d0985771cb4633f68b25b1dff51ba42635c1825f421e0e43b097b587d023100886d28633b3fe9bf52abc04dc68b4818cc4b421871840296e90d652d8af00204a726c84a3ea3fcc29eaf0b4f64cfd09d0302047c435bb500683066023100dbe812922d7d47a7f242a1da60a85ef155769d301ceee1186756db9c020d1b5a50cef4883030834f4305b307ba93d1000231008388b69bd13ea1c2305507189e674c359f0ecaa37b40b6b528dabed5d78554c0d2ab6dc05afb49db5a928558fddd36ca0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023019a064baca12beb27a18be6ab9980d7245eb837dd3752a163799cfe6e59188e9ce7aab81d2f8c922da44b4caf9e14c15023100a0cb8157e0695d02671642e912c1e5799539fd31be8cfe145c81481e8e1fcfaf34e5c332760c6040415fdd88016ec5e90302047c435bb500683066023100c93add4f8d1b03daa6736458ce5940c7e01e3dded45141e306858122047a1fe979e5bf1edc4753551a168ac5a611c30a023100ff35896b984d69e0af4ba7a34efc06eaa191b354c6764f44fc697eee917c58244f582ed354c11004909ec6c2906a1d510302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e8f976f1be911fd9a0ddd1255d803d16fdd2028462d112ad704b86a220bd82e572d00de8cb2f067a0fd23484edf2033e0230500b16cc7c353223533651dce61fb7efbf57fb3c5b4d26b899509e5d14e11461c2ba7dc4c3ba43c550ab4f741fc599d80302047c435bb50066306402306e589fcce43246b27d53a8abae11fafa610a0c91ec78fb428b1a7138fac75c887cc4f66e1ff463cea051ebab0a3dae780230640c69dfb5150316868bf16331a31657e418132849919c80502dc5f97cc3d93ae8d61c1787fc90a6de466f6dbd0ccda20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c4629f70c307b9583cc52afed6f4ad440df0f9309df77f5a9411c3e6444df7f06d281bce3f0854867b8946bf619f5c9f023100cd6482e62e8b6e6c868b2893dc7feebcdf61aa535bd34f1fa37b31183969c8067adade8ebd5094a7aee976ac0bba51720302047c435bb50068306602310082f97f32c4dfba111ab84ec1837407655ae7172181dee7c285f21828b6a182c8c4086657e6a9f162f91168392294d1ce023100d6c378308690a8dbac163eb816474f1678f243867c1f9f8dcb41d8ce44410f5539140e5b65cb0f37d61b051adbefcfe00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305764275b4f575f9eac77f17b1f158f5442a976b08257c1781e46bb0d51b08061ab1bfdf39ee528fbafcdedc9bd4bb1cb023100d1d04fd1977864c8f597fa7c60a817f98c4971ad8614393dd5b4f799484240ceefa8a3e9db2a2f0adaf51093d52196f50302047c435bb50067306502304b656c7b7d667f4c3d74b17d285e0e5ab7cadb229e22ef1eab9a801dc0ebd87e959a87e5357119e9082caf92cc197eb302310091b6c14e2debee696d0a48599ca1816505d2a80b4d7806664fd92fa5a8fe83546f332d4020984189d2701839574cf9570302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009a76e5b6bf2fec6b759ad3e1143179a44f3e72d6b13e1659c276c165d91c83ee05bcce749c84e994faf04bb924c1ef5a023100c0be35a0be5d590f9c03422bcd765b38b1b000cb5f73ec2a58b76578d3f68d3d1f849a3533759a2a91da9b22d73ed6e20302047c435bb5006630640230766bf74edf7708bb74f69d73b94055a06aa69b565e0a809b737e376233cbe0d70782da069a64029499d0b30d04b4014f023057ef80fdb57ceeb5db5626d1f30c0104c8d75623b21c541f02534dc2dcda92266a149488a7aa3eee4eca4aa9e1b78b1f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302c4f6c609d5e2570e7b00035c46e47c0ed2688e0771ff7ce3f6f774a6b14744591c09102fa99b98a336e1365c0a47a1602302bc7a8c80bbd0a0eb789100e124ac65a4b8d9045fc9a1073fac32e04ed8b63136fac7828cef61ec55752457b045975410302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a496ed685dc89b22072356afb03180c7ad5226fd8f3a1faa6c351d59527a83ef2caeb2de8bffcdd9d23fad4bbdd25019023100f9236a98f4d0faed640f41e039aa3961f7beeee50ad07daefd201bb74578003c9192ec07ea3407fe52592df58ecb3ce90302047c435bb5006730650230090f475e22911ea50d09ed7fe1a6fb9a89e6bec2d30467402b1b1badc7b6dcec854cd8d2d56bfe54bdf595c4baab2417023100a279fe274086281cd10b4f23bbccf21fb2b6cab448d835a09f06b1da1d1e68b8c533b2beaf8e7a4846f01f6c1a09034d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100eb99c87c97b65bfb2f2ac45ebca30f3da56c53b3079da3e79c09a8ba0c94a7acddd5c32fa4f9c11b523e2d58c5279f750230738a3cc2e12687f394d87d3a7c72e54b0cdcb6af8a5a034bc9c428fd82c86f93b286bc2ec80a9fd01ea39e77a3d7f9230302047c435bb500683066023100ae2ba0c04273f0910f1b55635074c11854d88e5b0f7d6f3c06b70b867e9d73db8fb7ef0bd4cd0f8cde31f302e52d94d5023100e0cb005d89173ebdf1ccd0fec598fef7e3c47568077f4f104a9ae006b6d796b6f3bc4a2e775eb47769e96f9b7697774b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230432e2e52fa8b5a9188ca9109669ad376483be140ce40f065b7343c1f7029f271758c86078ac314a8befed152f34118a1023025755368d90d94f90a23198250cb328affc08ad6047e08d2a77446fa892d60eaa4b94ec61ee0e1691235021745a13b410302047c435bb500663064023010df9c993dff8b51ae813094565a7e5179b4919fc88dc81df3d989dcfdded818b8e934da6c6c3d428b3fbfff74b54908023047c5a850d283ac87fea68b4c1d74a8e369a04d8dc4747f9a213428d56470e7f8d66538ab17026630aafd791e00e5f6120302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301e4d9dfbcfb6c6d56c1f4be09918a48e565ca690364e97ab44e6ca57b9e5a160c8e33346c0b06443753663e8b2d5a19002310082b03acd54c9482dd2284b8e0a537324c143ee18aa879583e884b5af4313332fcd3e198b227905cc9bd72a12ee8507330302047c435bb5006830660231008176e0b4b891154b7df13807be55e98ffbb99853aae3c43a01c809945a3865608ad321947b863066bb1a603844b6d5cb023100d6681ba96e262ec9c91765f74a799cfc830c270d93930530f3782534c1a5c3860a444a358a3eb3fb06f29eb2c573a23a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023010828aace0af8939496020cddfc1756e67b3c02cede797a381ee334785f799a0811c24244442318e327e545676a2b56602301f630af06f79b8aac3125ebd3cf9a40ce4f2962bc8d35f4b7317900d928a754a1744216a0858f13af896b2fffd3a5dac0302047c435bb50068306602310095adeb9c9f5a2659b75e5623d3d4a9a0ba9c3371b5ec0d94d4fc6f730abd1627ac897b84a74feb3188fc50c0af40a2a30231008e15710b1db7304e91dbaf9e5b86fc33c31431e9febc549ee91cf9d5d26b0764f2f65e428e204c6f1a4c526bd9e1f6190302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100cf342fdec471fa188d17b7f393835ab2d255153b1e7ab977bba220d1d1d1a01ab6042abfc101b6101eda618f9121603a02300f6895b31dcf3b74a8bd8916fdd6f3c9eaa354e3489aacc55b8523b014534cfeb071456e757eb7ef0b71ef61375d9b050302047c435bb500683066023100e8d0f3f5adf7f5b8a5b35bed34c7691bbafed2d226af53df03a6f641a14b41d6f1f8a4bb73fd031ae42269ec41271288023100e9741647fdbb393c908bb7c4a37379248b536e69ba29cce3c9d6f3bc3af7289c10d19edcc06c06a27f4a4f7f14b736730302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303f1d86dad67d8f4a8ca90c6e89b57a1ecf3081f678f9c1f2dc18fd1c7bce485beecc5d4e23ba57b9f99eea45926045e60231008e81b6b01bf30ebda79aa3d9b34a6da660dbd14676e09f9332e4eb2606c47dbcfb77c2afdedd1426b658fa394c8f4d9c0302047c435bb50067306502307baeca8ebfc980a6d981e8dc242b73474e6b8de39bb77c98d41cdcd1b10a7b65fbea5189e1d4c7ac4747893b85fd9702023100b99d04aaf47439631d30f71dda2433b90ac8c6e814a0664151bc432f0ebeddf6d4890af1f7ba7aeb792006b236fb8bc70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300101c4a325b5519f32971c9cd9533ba944ea11df4edcfdc63561c0d4f51738c9249950e48df8d36b5ddb5705bbacb4eb023100b9d3d107bea4a82efc52e261f7962b1dc98eef1708586c24ebf2dd0cd7168fc47858fc53364ce42ac724b511cdf858150302047c435bb50066306402302233bd456a4fd7e223cb9f123199e022c350cbd103f358f74ab2a8a5da416f6f533e25c37762e6381404863a6d79e17202303517f960181b78751952383a680a23205f55a7bf9ce7b2c8c74e25fb473b4d9f0983af4768b7f062826f20504fd4144b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e84d762774767f512ed141caa481cbaacab7164f35cb42117d479757891333cf7b30143d4ecd20a91ab1828ce18a9f3a02301bd0ed8a85d9619a664429a623374ec75b7bb0622d773f9dc6d338b145c7d0ee5ac8838626b7504e322b1ab3b61790ac0302047c435bb500673065023100bb91caa27401cd52ecef1457fb4996dee4a667cb101cad5ccbfe5c54f2b1e5560c60ffe3349e613884f2a8f3280d46a902305396670582688cad8b617b7eeb6233c9342d862d82f2eac54668826ea330edd93abcb32570ac3d663d1a016c58cab1ab0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f7a0d856bdd8ae5e10b0b11f42fe026cb17365a9a79311197444b74fd9cf3f40dd6ce947b0bddd7f92f264436cc0b40502305805e2e0bcab36c906540555380c6d7ef44e8c8d63e995e2495c5c85c997f1cd1bcc5713ce9a93d8f93bdbae63d989790302047c435bb500663064023026123ad3178ea64533912af972b1af93b1cde1c6d1514d2f5f50b82f8448662dcce7e9dfd3586ede7cfe7588b857b12402300ebf963380c4eef999a7fee9b49a422918822f6f3d436562d31e0cd754f3c08ba9caec4139ce6b0ecf9b4d09f51539bb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100941fd5fcf54723cff382ac3763f08a36a35f9d500da2c39dc1ae12a1868726047f26899e9e54250b026070c602e2fe35023100bb47e8c8af05e24d5bdbe06d1bdcf5bdc7629709697722999966aaf17b0edcfa3fabe78bc26bb899de0187d65ef447ab0302047c435bb50067306502300ae9a4334eb76547d40205b1b5620fcfcead34c775eab9b2a081fede07162c45eeb66ba4d050af5c6195ec8d001655e4023100fe70b171c4a02900a32d09bb5c5795723afb8ec22fb14ac1f9242f56158c0243e0ad944d3108a118b5ce0b046e770ed80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e2c267ad15de9d66257ceff1723eeea43ed35c533acb6518a878113f08165289ce219fdd39b2bde6ba7d4c3f1bbda56802300380a91bf7038197b53c106c65f1f06537dbd3b90a2cd6eb1e3506c8bde351ca22c3b047cf81db34f33043be81432f0a0302047c435bb50067306502306a5f58382f9f31bdbb162223acacc6a34c7b079bf57f5701ba9d560787bc37ac736842ba59b137b02f66976069135e93023100d3a48ea9dbdb22ba8c2150e1f7bedd6eff0e40ab37b700581bc3557d120545816ff300a27ee2a130f120de3d32fb4d750302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008043065998b0fb553f5cc0ffe918e4d87deb60404e2f1c4a01c6ecbf3d8413948400353a8fe13bd92e1b83adafa5aaff023100cba92662318a8603ee422017fb2aefb8e61b513942e58f3668652b515318b4272797fcb0d7082e69f5c792f04ba7c7530302047c435bb500673065023100c581dbe08a7c2ff2cbe69d3341502b49169c2ed7840caa05393d50e43b32e4fc5a43e2b921d46e84cfe9fe60a3219625023049b92135011aefe294bd0b4f9ee0f5a00d2601b16a317a8a6809db8ec83528175c9d1ce8e28435c6fc629f346be500550302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c0e0d6849aa0aad298a25faca909e5236b90ea4169b4598017b632e23113a0f304a6ca9715baa01f27b1113d80a355190230276db6bbc2cb00ed8b0e0d22e9c0068dcf4169172e991bd0a919c298bd426920a7690bc917457ac5bed687ea3b06f9cd0302047c435bb50067306502307d0fcd14c54b5cbf4053cdd6b58a68840449953b12fc01474e5be7baa8f7a2250c4ad08c519e8f5994bc6337727c9303023100a322f589255dbf9a8eb5883e67333c40fac412a0f07766e7845554ee128c38889d91d7f2601542b76d13617c086a43870302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cd17c5c22d32ffb2aa0bfdd7568845fbf32feb9f9481a959a123a55637d044e78c71203351e9ce860565a06e159d9b78023100af682772cd36c79fb1dd17669ef010a3781d50794a91367f4b56ab3a2954faf5fb9380a3bc6fd4fcfb0964033acc9a9e0302047c435bb50067306502301f07ff7a9863fb463036d1f8a3b1dc3181c920bb768b4febfa81ebf81ee126ecdd4f0c47e9aa66b5917cf6457ebb2618023100bf1905689343cb8e42dc83f419418699b2c163ea5100eb2b1e556538d985f4063459dd9bce6c7cbec063a4723d8327d10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307f103ae85d0fd9521863a8d8cf297541ffb2545ac0c6bf5cca526bf053c0a4213d188e24457b8963831d8b424c2d3072023100e639f7dea2d4f466d32823de6030a289f85686488ef0824cc96cf7663293e27b1d38f60e4491f45af0241adf152da2170302047c435bb50066306402300b2ce6b5fa7d22d93a9e2dbc71464979cef76b43a8882811306a05ea561d67dab38a71e46d3186936f2e351dbd03c87802304fc33ca7e57341a9dbdb72d8994adddd423a2ad0edc67dbfb9e6caf9d68cc95eb24ddbe2d5cd5ccdfa86e5e372d560e80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301ba80d8efa13b2800750cea85e3dc5f41acd5cfa240cb385225fb30f1c0a191b0dc0ea345282ea949fbf2e91908e8c93023100874468d91fe5b330c675bf5a6d278e449e5ba87b96803a5e3d0f4705d40f00ad52c11c61ed0c7f613f6d5e9a48657cb70302047c435bb500683066023100debdb1527188ca54da8ff5d1888950f451bec99f897f0d78182f7418ca5d811fa25030312518524243118a31f2b3a3d702310094e4790a3575466d884951ca8e001d462ac2c2799e6b4802e20d6b120c9b4a8aa034a453bd99bdd7ec1f022ec8726c920302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307ba1f80954c3a0d2f9168a54e4e63bfc6ca89db1749fdf4a8bb9984f7ce1c797e6912b5c51a7f8680a824a38cf814c85023009b8db67c75a6016effbc9dacde434b4adbbf91eddf42731aad6d60658dbd6c8e42b7de37aa55c9e5ed3c3091ce3ade70302047c435bb50067306502302a796a00f5fd1a2f5a4ea80bb28c519fffbb677e1ca63d53168d786f1ea860f7dcefd617ebc6a45c43658aea26f3bffc02310096197b303723f4947aa8f63b67373b8e4f2468156b7a47d3318d3616103ed43007aaf4b60fdc4fb61475f221afe7dfd50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307a881b9405da45e2256a366e43fb56c741bf9690cffd8170beac62ac4e366576a04647fe9812056ddceade0eb68c751a0230474dd3b1cc35be80bda36c559336916c8d8e890cdb6ac3de2660c0e595e8de1252080af88d6eb92268a38d26c0654ff10302047c435bb50066306402307c85f4d8207acb6aa3632b903d4d6c30c339a1148842c176023c4669be6b021b9e1ce3bb04b71e193eaf9f03eafda88902305abdb4f6ef0e52ef499ac79847964c0b673a608dba55869ea6e1e50f7629c978a5ff767b5d8058ef9a7463fa24bd4c060302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d2c92e9670290f893014841dcc74c9f69984e584ed10a1e8481dbbd54f1463d2999d98195c7f40bf4e63e04b9961c3fb023100f52a5904a687f31f87495dd06187b50f9db0106d555dec2a582bc30831ccbf3d28094d976398a5e4cce249e1a3fa6f0d0302047c435bb500663064023018f65a3eccff0a5664db90d804229bdec940c1e7a715d344db200642d8734fa10ae2805196f1dcd5f54f1b5e9cb6455c023073499e3c795e0adeed911d9601bd2b83426c3451099a072360096b0c9027dbed117469b157d8bb7ed159303d27cfd0110302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100bb1929e29d12408a8c8d0c8a4816255e2e6e4dfe55994cb04dea805440ba200880090524b5a46a7dc829b728211140b3023100922580239ece3b8af3e5c479254f2c5b1a76db03c144c5be17811bdb72140a0a66b1dddd07d4cc92c3df6a786b553c360302047c435bb500663064023070f7e7dca2de657699454976c3474674b36539bde4f8159ab98b6b602dd00d887e84c8f8b0256289e538abf28bac0485023063ec1ec45d0fcefc9d66fa381afb9522faa4e8c95fbc276def292a44bf2aff13aae17baabcb34b28d9e06918007ad6c40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100bab6034d6cd6b19e92b095463db1d5a6ec58c90c37fe0e42f60421900eb4116a6b08908d336d7170ca469f2e305becce023100b159edb673bca95f1cf24acca447685ede21b21b6d77bcce3dd7db1d8f7bde3fe652bc774a4684f2ead41cfe76c21da50302047c435bb500673065023026795530847aea4ae3ed79019de85ef38a4a48b3c0f25c409032bc551f089ce868a410fb4b71c85e002e1b286b30f66002310099189482a96869a159728386d38c961225b1b119d4c69a4b125da9566d4e52a6c7bd78d7c8ccbd9de9330d4256f1cb040302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d3ecbead41167865a4a935bdb6a071cba4d126d444261417af51f44a0dc6f398363cfb4649608717da70f93bc1b898030231009ff37313f2d418ea0afbf718fdba80c2a1f455c14ed3502b2a31968113b499cafe5ef36fdc88b1a198844804db8403100302047c435bb500673065023100ccdeae98a4e1d36625d4050a576a8b40182b0c0ac3d75b1b8ac06d0340d4ffaa3abb080cbb20750edf5a6e2c92acac3802300589cb0de3e0cb710d266b0caca7133d984d54613d0b2e0fe8939d6104e24f9e003a5dd5792743b13bb302173e6d44820302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307b98f63e02c1c46692f5e0867306de0fd3a6eba0857bf1d47aacb9e2d9156b0377fc27f5601921293a30e416ea557d40023100e26eb30178e2792f40631a0fbe1493d295708eee5ddaf26ce25d0200c67a951ca30f5d3a663094afa10f45718826df3a0302047c435bb50066306402301b3ecab0b1c82ab2ba2a48f314694ef2322ac59db03af31cedc6ce046acf2af48eec44961a5276fe1fea17dbeb1a3d3b023034021da8a7a4122676a924658669b0348796f0a9a06d1813e6b5a23673b4069b4588a95f6ef8ae8a9d339a406d44e8140302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230533c024d257cb48f8e2a4e77e500c12eb7bb1670d8c1e44c06e25326f5328a38c8e7fa148129a4afd67efa08a60e27c8023100c4ad9b0edc5f0bbb84efcf0434a5fa53652fe5b696cf1172dd9f4be38156664b3e5532da631257765f46a25d997111e90302047c435bb50066306402304f7110491b58b6ff4c6e8ef6fa9ad567f2c003e64dac75b44089f7eef9306edcb3413b5ab3885f8f08c510b405a28556023062a0cd4173c1a9fb0ac78c19e4637fade29e3ea6eeee3544eb8da924c4129664a289ffb158f3a0747846b24bce5f5c8a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008f164de8593319006708004910751b27c69785c899b9d758cda2ef65858d734dc8a56671567107b692131908ac1b0f86023100f9c425e7e8c10184925bb7be47642ba46dd4d836934927aafffe8bf222247df6912db354ba23e1cdd21644304bb891400302047c435bb50067306502302a1d863d6f03d999ecff13afeb3c90ce28ce73f6928af116034dd13f00e55d525ae7b6ea4b4b04865fa304e7bec30bca023100b13b4199c31b1352da2f640cd1c01763ae8046ec416f263c6fe95a6f20a486504574aaaebf6da0601b9e64efb0f8220d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d4c9344ee16a5bb28b1e10bd21220ffc376a4f2e57babbd53148bc74e6fefce56d34b82eed3b23352cec316b36b1580902301e8b556529eb591ffdabe3f426506ddaee6daee8f83b51412297650224c2c75d40d8cdced52c181b3b2bc263e0ba85680302047c435bb50067306502307afbc0a3035c4e9de0ccb3c52525371b3a1bb27c141653a77bacb5e93dd7c678beee99634ffb5f122d0c8174ac61d876023100927050ed6a26bfe4e58dfd6e544531b15d844ef7a0eb963f2a603b39d67daad6fd7af6e962de87959f6e46cf0511d2f50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c323aec795d4bde8f4c2e2ead5537802bba4d0c00cbc34482e86c6a8b708bf11cc9a493271b31b9345a0227b48dee7f5023100bdf5a1aecb09103efde72cdffa1279448aa0ab469bf17c15f104bce1977292563729ca11ae15f4474385974d1874d23d0302047c435bb5006830660231008ed5828285dfd856b782b401e3875263b25c61d04813ac277e8f9e52d7c204a57dbcff84a0bc43b3dd2f5d5dc925d4ab023100843271a7e12b320ded1cf8b83b7bec6959296e98fa803704abca2935a84c94baa2ac59d0f1eb37ced51a275db388fcca0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008707b98886510ea54cfdb63a9e1018d265033db9cb0c0d70778ff38b91e1f5b20add7d11119b1f49cff89e26e4bafda5023022ee02e85edc2f0222b664f92e17ed9c3c15c8bd1b72a02f101eca5f368a1ead3033b538b14242b39d9e23dfa05acb720302047c435bb500663064023030b7d589b2fe882ca61504716ea27f106a112d9ce9e72bc67ffca6b7bbd70992736aa1dc535d4d7fc86f70d908bebbb70230028ba7a1f97f4349e07e48d34614f622e1d36961bc5d23e71d9754d4ae971d1328a2708dcf3590dc3d8e727c2350af1a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023013d2e8d74c1773d0bf1e2f2b9cd77f6d802bd92379361aec74fb4b45c66d195ebacf8c15fa26d01fc5e1a65d40a0a9270230529e5b156e569dfa817d3cabf4bb3cd2c63612d2379a736d839bb718f2b0a87a38f235897a7c5d140fdefbaa61af5f690302047c435bb500673065023032389e266e358c361cd4eae92e8093d7feef224f7cc7fb35fcf26274643921a6421c7d84ebc5199d045b478c77dfbe5d023100ad93f5491fc3c62b7c5d900b77aa6f3142b2b6509d2f212f44881253a5051ab8771d4b3ab9f1bfc8247dfbbe8021e32e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008ae1b28fd42335996b6ad2db09fcb8f1dc133fdb42fa3885643992f68f48cfda04734a4ff9a9eb8671d817d811b6d730023100fccd325a9885627dd28fbd3bf4864afd8b31bb13bcd986c8d85bc925a1d697b774957ab9a5ee0088aa93e482c1f4cfb50302047c435bb500673065023073f2c0699421b3292c7f394e02152e6ced8431933641ac6a96e8eac511a785438240df53c385b497e85e4efa1ce41938023100bd5905d2d1204b8505113903a868ef2abb1cfb53dd33798d23a7e803162dad18fe1a8661388e003157b70fdc9fdafc3d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300f33baf2b09fc8da352b6b4cb4b7214b1659b5f2d49fbed678021c90efa4b1058815a66e8802c9aa484ece780b861d2e023100a18b03ecf2cc732d59e66ef7225c3614d63c2b8b5b4b3c9105ed894ff0e45cd882b6b4e241a5f16356aeda98274a75320302047c435bb5006730650230472b731d7cf0fa6f46a93e21d8f135eb9c6d53a22202cb7cae506bb4f9ae8045bab61b4dc604856654f32777c4b70271023100aeb43c7f418e572c4570ff4b5d2dd4c15b5a1d606baeda958c56a3d1875f71fda0c221e32f5c40152c457e0cc98865d50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023042c26d42b389c9600e04be820f3aa53a67ef65af5e2a917140cd0eb407922d9149bb0d2a004356d3200d2323f70af33e023038499481af9bf8d4220d56b63a3c0598d67d2622284d466799dda43e6c2bf9fffa529baaf34586992f88c517ce8874e90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023017bfc5917ac607c76e54e69726cb4af362bd41f559a33c81683aa92afbf990097bc22132b1011fcf731325f4641e974d02305ca1053245213fce13857a0f8ac466c661b548ae630208f0a424fc2cae1ee2b19c223e6feca093925550d0efe691d25a0302047c435bb500673065023055c95a596109a821d1dda4d5f3fc06236c7479320e76d3833b275e741eb3704bd8c890b856fc9ef4dd12b16f3169af97023100d38150a357e6edd791c5a30c58b259fdf3d8de3e0a9b59bbbda89461475df7f1219589f3355d6113ca6aef42f6474b2f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230325f9a03689cdb1fb5cb979d7f0e50bdfad7b7989012e0f1e61a60ed16c9e8de0c7832e4f1c9e03361910e03d2470a4902302e7f592b7510e03d3f14a522a59ee787205d8e1ebb1f5f6420bc34372a36cd32e7125459ae75ce241558cec7abdd3c940302047c435bb500673065023026aa8bd5dac20f191f15557b14a339d77d6fec9890cdd0b095917f9d8f2101f94a0dba2ffbd08bf09c0baab73f340c750231008bb442ca912c76599bd432135015c455bb6b79cf7271dae6e27b077d00dee055e07249b8841a0711351eebe6e5e67a410302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023037773c304e95f16336293b3def179df4665cbf3d78ad0d7038d838b3d140760fd0f6855518da57dc67b24ca658aa5f480231009b3826837c25ba07769de8f28bcc53ffe7271a32a2c96db8a8ab589a1f9a35fe4a5cfafd6cd2aa29efa7ebc9f49c291d0302047c435bb5006630640230054cdbec95ad2ffb2510adcedb452e33daaa97a29828664f7f0de31c7f0165c4db26533ea1057245f51fe832df5af7c202300252788f1e8c13007f539f245e7e8d50c8ea367dc93cf7dbfe20aee3d2de3daf7ca9c6d5f767d4aa1d214c6386abe01f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009c473db466b5259b36f0df540f22fce34d6853d23f3cea4857dbcf528233fd5c9de70370d0ca093dd7b5ff7021b0906102305b85b9a1dcb36e665436b18db8d9e969c224bc90746b5c3e445e54b135d995101c2fe91e69d1be3436080b91a5950d250302047c435bb50067306502304358a924e40629dbb4c177a796372414bf4ffa35993c15f480b735f1aae16c9ddba12ae71e4db439f8c1c8fc2c547818023100cd577c4c0267e6de2890bcf987a8248a1eed814b037f7eec149d979f732bcae8c3b025a4071624816175f9e9180805060302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f64ec9ed68e1e0473a9ec4b849b129f0e0b4c38d35fe767b11cb029292f75abfa3b96c5ff0afba3f6c3ae02e771fbcd3023100da3e2eb346aeb8d4292958f44fc16a6c9d732a96343bded01f6305f11a2b5dd58ab18652c779e06867328017232484a00302047c435bb50066306402305162c2849288d52c65efd19975de59d7df136e71e9957a55336bd34b8c7fddc90eaaea59bc4fb101f642e4a73552f70f023011b770dd5034765338bbf7f76623bdfad04b0a51468061b85fee9eb28b2c3fa44511ffa77d7daff0cde9e6b94da9b93f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402300ffe9c6eb109b64e97dd6cbf977c889ce41c8ded7e5da26cb95a28cecec80b947e678241521995eae0c280c39a7f87e502302f60fb0b605396af4e2902775333503f449acf90716c81c7f9994ec91660301e8cf2486197447034c24fef14b352f7910302047c435bb5006830660231008f2edf215e04dab62736fe3f4bbf0e76a9aaeb97ade1685bd3cefaa045a951ba76fa86efa08cd46e9ba7010331d873060231008f6a9affcbea03a624845d69cee5a92c166dcb7b67263b714d97e0a227d7d9426bb074aa26fcad769adbe50b751c214a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d2dbd96e300889662cba53f2ec76083cd75d84dc5e3d90fabe04b83a7a75f82ced96409076586a7d9faf065c82e7ef6702300d9fca21e4dd336e7d0d7011f6adc4f62920d98dc62800a06acd7a056af19476f7be58e0b1915d1aef9057982902fdf80302047c435bb5006730650230251dad019139c2eb3c2db255fce74db53f8333ddae8418b82f08bc2d16a0908098c7da6b9f4655161d594c451cbc692302310083a42e158bbc3306b98be430c1f356d93b14bc4a8cfe9869b66e61c04cd7e131b550eefd1598aefce369353f963d7b380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306a21074bc6d29e8fc62649f6c607323c150a64e3a5559314144b1f9bef734ae96feaf479f5aeeb82e126fbfcde9866e5023002876ad62d6930cf7285e0ea807a2415499bc937f8629c0d89190a65c6f1b2cdd7984ac2d61fd8e23e815c4be653009e0302047c435bb50066306402301a0cf8bb0f6a3e73b1c5994daceca878795cc4b6b6928881e117e5b5c6b9007214989bda2157f2a2caa41676d71f736c02304b12dc1611040161de3dc5b3a65808f607cda31cd0cb327efdbdf29a41c1c40bad1db50c1ba36b7a0391db06010a95370302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310086c1532f3f9a61c71336e598c3b1d4dbf2e3260aafbc0f2a6d7ed4efad1d3a37f56310f42e7d88e2423fb61731359985023100fda2739cbdc7fe3b8f94808079871d60615aacd417c5430f036068b10b81e7769f9a2c25f24ae1652c3ebacd27a52e870302047c435bb500673065023100fb9591ed635a700bcecc577172e11fe7bee791794f5d6e0f1b2f8c7c472bf6b6fa538488182db2c0b9309cc62844df7a02304480d02bcecbac5f0b756d0c663102ccd91c8b5a3aafa119dc16b3e36d1d7e7b39306980cf39d3eaf5946b10d1d0a7930302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e8e08fd762dcc4b1d7d3eeb793339cabd17822c5e07d9460150820d11df22e1f822cb85bc1a7edda6535e9b5973684ef023067aa0952101f6fea852c1cfd3c00ba500050a314184a855ac1618e9dfc1f3580168bc602779da9cf50ef053953e7d4480302047c435bb500683066023100e3373d693e5c36e332c875035beb9e771290762d59a1b802bfe5658557de43560397722f7df882de1ed4a07fc5da35270231009e304ec217dfe17c2f6ae7a17cc4232823d39ec4f9eea1a115ad927937d77ec5e5e9ada29d4040dd44c3a7c071abb2170302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303acbaae6a5376a0a34f5c9a5183aaabe439cc77a4f91faa217f5a21ac47d130f8c7070472460ff6f284707cce33b583502304747c0511a5fda73070f40042d9306a197514880a3a361296b6a7204712420ba960a84632ecfa5105328e20a5dd1863c0302047c435bb500683066023100a5cab59097462a014d43ba4b023ee801266053e3c9554a4d2ab6dba837d2b6e66ef73556a2559f78b965c6e766f7001202310099d18bbd2fddc313028e95132599ff003b13312eee4d79618c3cb568d14a22df20f113c29d1e7f062d25992c4a0e85d10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307d21bd0eb65b388bd8288a98eda4e54dbff226c7d391ae1578c33a967f1687c6cf491a454f21d8e398a71579305e80120231009bdc7956eaf8c830240ea8cd947e503b1051f1baa39e6305caf5079138b81c898c82b484d87151af4c741b3512c465580302047c435bb500683066023100dc9f0d0ae0bc1c23b4f9aefd6eda182bbdcb2230343dc3687a30838d4d672777aa3a99bddb4275eac7fe0dced9ff4b20023100d51732741ba2c361611122592a6f8a9d24b9749ca87c8bc40da51bdaad12b4749ec76fdc60d354e668c622cc0b843cb30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023029d449ce9014f6bb892f841729447e45947a0d54466b34138b6efc074e15a99bae8449352496ae0ae9d1c2605bf33b9f023100b6a4b0d31e447c6ea4209011b9fe17986b207143ac724bbbf3b267af643e9b08365f7d91f926ac6ed602ba71a15a11ea0302047c435bb50066306402301f4b7c7d67626146243630a50ec8672258ca6d2a6a704cfeefa3e6b49403fe4d9324de611d45ed17e534ca14bd002e2f02304c966b6aaf0ab8804606b2dcc52eef13831b360ce0a829d163c2766d225acf97099c45b6d83eac511cf9ca798edd7a220302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023001a931abfa57b7b6c2bb18080dc990aa11b3db1db53446aa03e8afe9651b63c59b235391c01d3c9325f5431e2ff7aabd023063f874d722c86e016270cacc4238a217d971036b5b16b90610b88981a76a3a76befdbf275eea4f4e418d22127571c0df0302047c435bb500673065023072d47d377216ba45232d53181fe1ac2b7b812288fd49bd292ef23e7b86d72f0e09091653cdee1ce56baa35cab8f74362023100e1aef8195955ec952ec0fa0d4556f06df9ebb43b02d6953adbacb24f5dc0c0858fb25e7aeb197097342a841e9d563e230302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230420a4e71879d2f924be3f10b5d18bcb8b72f962dc2c7974fd8cbc0386af489f5967e1e03e44e16d96e0034aa09c68cc202300ca67ebfba51f53abc8fb7176f2e34b2a038b701fa505435f3263218c3c78dd7294443514ac032f379d7ae285bc2d8c90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310086e871920eea434d3c749c3d525c757b5b52e898c38028b94a0ff56a91697829120728e17cf1bbf1eae47d31e06990f8023079abbc7e9b1e16d8c1521f8220e333fc048c25004fbaba307ba058611185084fce9fa6ff0014f9d03995e8e19626e79c0302047c435bb500683066023100c105f8704d4518c42e0af6badd4a5ae7abe983109e12ecfe38bdd8c5988959031e7c01e13d6cc1d7f5e92ad998731f06023100d841132bc3bd1e5b187358dfeb98937a8d1cf93c1a1bc1f11df1809333acaa00358cbacc5c0f31947f072d1e9ca1ce0b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305e7b45b62522797f11af6a2db7d112c383362f5170607e45931d924274387e3a8bc6644254406250f561eb0b58feba0b02305631549090803447eb915cf12506af34bdc3c772afaff41b036a04ab89ad94722d2e7bc9985a6810027ddd5951154c120302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c530427edaf533b27d4aad9899f2abbd8dae97c639275ae3d8778f7f185eb71e2da155f98733034da4d6949b5d257a8a023100ef1e6237e0f7ee445fe8e55c317cbd0cb01e1cdd52b2441086ec07fdba2e8c3f35ef473e906e1102a497ed8e3a7b692d0302047c435bb500683066023100e940605df663dcf471b9d3088f80b286c2b2df6691ccba21dd86bb47a7c9204ea17c7ee8859291892a20afdcec1416ad023100d21e3455c09601ab202f8cdf074c4c5679bf741661a298d9ea058ac9e8aa88e34f22664c59a0857bc2f2508cd3227a4a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e35282bfc40228991d48779ab3d30d61f9b57108c7de0372482e23665e81cd664fabdbcc0ac05d477ec9e2b45f56c99b0230778356326dd0a8986742b6cf5c3ff26fd0176750f9f3b4fc3b81db87fcb858c9a1538cf6d131539ffe361411383b8bdd0302047c435bb500673065023100ef826cd3e77c90fc6a47a3538fbca936e80ed435f86c1d88d1f2cd5a3c630589b3d91c303795c4923d65091769e4bb0502303c09d30065f0e5515b0c3d21d5ea9b4f37a1a596fc5fbaf3ef90dcd495e9c872c3700a8ecd44ac58b3d3fff643ccfc050302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307d7991dd03f4ba0c0da38b7977d52c3537636133845683b5c174a989725089eee8496e313ffe53e92f94cb17d531d2bc0231009d3db2db471ac51ce857255fb224f87902cf9d5ff079cbfd4f146f7e804b0e74154d27668aaf7e4ae7fb6d6393a067f10302047c435bb50067306502307818da24715e4a11d2fb9abfc1992479f472e29636cf71eb8b5aeeeb43457f9ac008c07e2d5efebea7160fa7cf6df288023100cf0e8f2e1d2846d8f700b56e4285ddf91c7fce2d73f25ff7f07b1a5b745515f86848465e85a5ad3e14ee18586e1baf480302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305f2cf02a43b580ae0b4be1d0763303b556e53391e0f6db1c74c86d4696eb96b2e03d77425df4b34a13470914add178a502303edc09d78d1a804529999a29074a5094a757c8f349e115af41962b2bbd710556a5812ec1023bc64400b8607aee3076fb0302047c435bb500673065023100e317c1948a106d5c6e05680fe88d0cdbbc9c684e34293a5df095452bf84b5ac4726a7ed6d84007f4da96354830fb668a023037770a8884c519b46ad0105ccb97da5489ce82fdbb998fd292637836ac6cd0a8f7be6325abcb2ea1647057148aa35cd90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b6446c354f2782271340f70426731d643bd72131863ad83cfaaf73cc9cc2c0f121e09e0e128e16fdcf4c12d0039534f9023100a4215bc57f848135edd6112905c4603e60ce1329ff75306feaf3c69b5a3c1a37fef0d2e2f8a70ca53b2ff68566c9d26a0302047c435bb50066306402300de41c846b4088d5f064f403f7048a10a07573de92a22a65342230fc8120208adf7b2ff8f97f5bb251acac9739ef498b02300303ce7c1d46ef3727a6518843a7acf5b52504a5333d82ca7f18d1c8e0620d4da5ef9550e7753393afc77892252e5cbc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ba42b253da705e851cb30c47f5bcaffba65d4c9731566d6ecea23923ff130bfd0d29a5b8e5a2677e29150926b9e81d7a023003dbfcd49b8f28dda07aa0443df7b4db1419dae5bee259862b33f2a926366e4bef7a76f4123d3ee483e2d02898c5975b0302047c435bb50067306502305f569966f1970f790a036aa9f0344bae91af32c49aa95633128bec9fd74e12a4ad85e8a5b8c5aaf06cb2f1c2b11866200231008292a0102c58db0a312b10bb0893a2c9961208316344d3f8e494f0bb70b4a8a41291da1110dc874a74947fd5c7124cf10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ce20a9f1f5e5be8546bca72db30635af838dd2f3cd536f576b4f665c1c1354418b44b65cf70a674461c662538d893640023100fb98ff48b03e27b51053b219cf4e782b75bc8c95daa592ea090e4c1847cfd43e988558532aabac4ef7e74ba7733e40d40302047c435bb5006730650230292847357f733597e2ca2dfa8d9ca63c1e19e167613ac4c2741b3546e707cebbb4f392cc9cb41af1fdd7f4a262be60db023100f86275ff121f8daa3a2771e580fd6ba724ec4c9371c08cb1869f37166f0b53029878cdf075a9b9d4b7aa45bb31cae9390302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023015ac0fcf401a52d371b3a9dd1fea16ed52ad0d90d47487d1c030bbd572489185898e535f8d9394505348de4d89aa1a3902301c72903567577c4e3beea48ccea9880021f4e254a0b43db762c4b04abbf13a9ee758e1b254206d7dbdd26647c7a4d0800302047c435bb5006630640230040ace777504b13381c71e5e7a11196d657ff5deb061d0892c5002c7033c6cbaa74a870b71f0270f9c49fdb087d2cfac023070b58908ccd6d4b4847d6c488baa250ab8363fa2d74ee5745a52c54727d1e5c123cb6affa7461c6601b66678d52fcd210302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e8fe6e17ae52c25e0be366a40c635cb4b8faa63cd36f29db5960a732b345c2f2647dc722a554227d664ab0ed840a8aae02300390d37da108bf2c913574d31e5437c2bfc3aa7056b425ca1a465426df52e244538039ad7944437a9981b66b8b8c9d470302047c435bb500673065023100ce77343aa2fb8657f67591ff33138f8fc660650b3754e07c10e5fc2d794fb53768e95ebae20dc92362bee75cad22c18f0230450b8d6d2f0ef337ebf7fdbc3877ddeb782ad7466871306e5334d05633be4f769c81dc5a07762df0a9937306c34ab22d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304cf1d688b603a2a901710e25b4ae31a13c8619d4324cf4b83b8be0ec8e2fbade574d6045512d961b63c9b537a5f8d5de02306448527e0ad268a905e659b94ae70a8f1a918138ac8552ad4cd5b063926dead88ac0f4533718b9fb587f2a71f52a67420302047c435bb500673065023100bc94b50efa425a800e59778075d74c6aa27b6a2122b558a44b9581c25b5bdf22ece52ea6cd0d36437cbd2d193ebf1a3702307d2d97e790e307cbf6eacdcc6c2c3846ec89d8a0be1e06b18b6aefd6f684140612d866cb5ea3b522f7bd73c1453707720302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302067203ade8d97b256e0b2ff234415f14e6cf13ebdc2d1d8112d096d6061885c61893dc82b0517dceb4dc8f9ee1ed0d6023100ef799fda40f52b26b5e1326d4d8b701b9117d8fe1ea7b3bdba2007f25613f30d81ced154d5041b0fdc9f254337cf11480302047c435bb500673065023100b02ef045fc5c10d552128f39d7baf5976301b723b592224b1d5191e9c1ab54195b951ca01ec7f2efd7345b007612bfd70230275a99edb12a59caf371ce20488bae37d6dc07162b9391aeb55e20d3a33d0beb0ecd321580fa3154b606b5b3ff3189330302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009828bc11b5629138bd87ac8e9860f27ee5d67e6ef26a43f539b9d1931a8be8ace928001b340db3aae2fc0c590129f63b023100a8f820d9ee160bbb8d04f64023c3fbe9a0ca4d9e60fde4cbd5b2170dea6620327819ccee9ee23715929ec0968810a1df0302047c435bb500683066023100873ff91e077279125c34bea7d90cf0743d31f0e6bb70b817f568bb10359902b82537184c77b95bcfa75d5888b1a9d030023100e59a3fae2dd2c108f984b43bcd03ef340ba0e9baca43f4fb29eda7e5d8d50c1690e3ac100436f418c78c45285c885ae20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302ff79d6d1bc8d10368c07280fda2d3bc874e0c3ea8c93601fe8ebca974198414f7818f4d0a1b26f7d0529e7a1febc3e3023043c2a899f59336a1e5faf504569f60c8bf7fa59a938e69c10e167e47da6652b1e564bb0a0928e3f3670e6f06799c5b5c0302047c435bb50067306502300cf6fe730498f145f9d0c111093abba4cf539653b85efabd05b803260e1bdafbd7fc83038c4c7e1954d69b73d8053d87023100ab6ca109e80d82308683a3b59c132195ae9ab51a8cc23390b555faa271fd91b8b3a124d048d060f0b2147880d97e461d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307a946f955ecc21c01f785e048d27b98bc35ac65f288e94477602ad4dfb1b15f9d608947de435096165bdd883dc1bd7e2023100874e989041541ffcdc0f53569a8304aa28b81503c7ad93710279105acc2a1e0d34dedeec2a54173c0cc10f87437da55b0302047c435bb500673065023100876882f0d0f53751d8a589ea4804d0438ca5e9aaa1b6d8e0125272779411b3442f6b970c8f22b44bbe1200b56be8ec010230257e48a637b73f98c00e37522b139ee6f577020a4366060973cc47c1b7ccc04163bea945f78db44866492f525af9684a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230543a66f7008c3e251a3d96c583c00076ac51998a81023d7f6ccbfae5e1285d90c743e6c21a5f69250e6e7ee3892206f402302671c17f19d86f4316041dc5b901408cdf7c4200e083b2bcdba289e005147e3c17f88b0fe1394158886252fb9f9b00ed0302047c435bb500673065023100b1797f58d95cf2eddcb3fde6c0ac160cf934fc99970b0365d3f2898c3179c3a629308a5b36208eeea2d377d1096dcc2e0230200cd905b867a0f41686611e4d459b7f1ea075fcda8351280e4e3625bf7ed47384cdbc70317ab1e784fbb73b0409fb310302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230524acd03934bd5221aeab6816ef94fe0a1ac42291643e56cc97aa86222b68562904a3507760d72bc2f639de0d3d5d3f4023078a916bf2bdebf517accc2f3c37dd1db1e3e798bb3f75b39c1cf44c5092aa6c117646a85531a641f1506e611695c100e0302047c435bb500663064023020f6d895895066c4d730fff59f82c57780b9eda7c1978201ca52675fd4a3bc72e7431731dd5707731c274acde42cdf55023054dd3f4a1edf6bdd5723cd5642412f27c79501d2f6d6da4a815d654e6b2158491a33cf1117b3b927e936139883694d8c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023050eb8653709bac981270799fddafec493b29f56b037bf33c57bb90738f229ddcad0c22e58410b49e8f989c21b12d60b0023100eedc924dec6003c95622afa894f4b5497ebea9084d79a7afe45c81c42b2e1f7b65a5186e371749c09e5cbb7f68d25ebf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100dfa5f5018129432a68e019a31c6fb525b56af5f91cdc159c59807888fd5c45818a2b3f07c611e58a3a32f3548afa6c300231009f4adde855a9161352e539ada26569cb51cd44abce5e23d5013af08d23dc4c54fa1ff1498afcec8c173f5538681458b80302047c435bb50067306502300bfbccc98ad6eaf409f3037429a928ef93863498472af2c3525fb39095c0d65af6bc3e6271efd9eba76c0edd9f93729d0231008299b2dc0fe1429d4104b0c5705a2abd4112fd7a2b5f5ac871341b2b30d1eb03b2ff2ef23cc5bcb475d057472b3bd1050302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d9b2f3259aea0b010d817751c0a839114a70c5fe8c7e8c7bc4c3c7034b0cd769d1b7ba233ce19e5b02b028b5322b854602305ebd57fccdcb31d5edfcebdc1f6f37aca0761ac9c4d20bd1319541b546de663180c3ac18f0b31edb61910f1b65a26f130302047c435bb50067306502304329730ca8d6eb0d50d6069e369d2ded54fd20ae231cb72750806e98ce6f5a3ca9e53de9a60e624982a59bbd62389ea5023100fd8a91ae9dc329eb799181ccde9d6763dbda8317c9678062b0adbbdd8c23c5d3dd3efaf3788bb771218450a3036bfc270302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a42b897302c2f1dc4332d58522d064b78b50deb73590fe96eeaf7c119fb646bcd7a883186b93db16bffcf2b6a0af2a8e0231008df96dfca59da526bea67f4aaa52acc30f0779e50b6e30c53d2eccb2755d56d4b5092b9ef65d95c106b387bd681f2fb30302047c435bb500683066023100a213f5f4f6db4af4c28fdcfeb385a1756c4e5eaa68c346653408835c3c19535432d08d5d8b92e84015528be01049af21023100a6564a52a40e29eecd4be929db14852cd1035527bdae567906ca587a1c4c6ab5747817f54107e330a0b6ff984e33ffe80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302354735c3616c2547ddd9517672ba03ff5c415d3e093a19a53620179ce2ba084eef2b320c4b1c906d522a22fddb7b619023100dd8671da1d97ed9d2fb6c0d695e1a8ca8556832e2b218fc9a879c5d4e2fd0c868756bdc8523e04a24cb0ae6f8fe2597c0302047c435bb50067306502304b7e3ac01779c8aa549f35d8464bf1cdc6a31c76712bf531fd443b85ffadae30c139fe9829a244aa0f484b07ba1d3073023100e222fb09d6fb11768c13d3f13e962c4bdb076020ea08e9ce487b3cd4a9e333dc93954bf88b6b7f34930b9ce67bae6cc50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009c8d690be94cfada18a26073ddbdd1366474de2be0b4444e39643ae006e9c060c6ddf5a33fc6ed7487a781485d507d290231009d9e65b2a8a472f67dad1756025e5a3fdc82d5d2db194a6f14091174223ecc0eb979b8a805bbfb612f7765cc91d89b580302047c435bb500683066023100e72fc945e52cad5485d01107fad4f05f698aaf6fd31193bbdc7d992b3d196513dbb690be2fbb214bc80d40e38d29de79023100d83d7012236b6088c8ac720e00e8ea6e5b94bc132a352778d392ae87380e0c89ea0d3d387f5e6148d959e4a1b7a319130302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306e24c57536458d4bbd079b009fb314fec307cee1434c4d4b6da4140574d7f787023b33fee54a3c4b4bdc0a0312fadc01023100d847246e0d5fb87437d7d315bea06f44e501f239b80f906e9aa745bbad1e5eb3b8ea42c3732dc8ffe6077a6b82a81e3e0302047c435bb5006730650230017c0c97bb72248d3aa4059c6724d72bc218c5dcf9d35598c99c07539d6210fc5edc3cf6305a5caa278efcb39715dd6e023100faf89227258bf100db9b9b1d0ddbc7401bfa9c69b5e79274d10865bcce06f2f1abba2b9a9978515362b3fb058c5015b60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310089cacb618c048288cbb71a03f94c929738acad65f0b157499a99436c4811f8a759d24e5c492512c8603c6d4d5f1f8344023013825376ca21167bfdb01daf31ab41d1a5c430a4e69ebc02ea169f711051c2cae27b304705e32ae41491abfe46b5601b0302047c435bb500683066023100ea8ab4d9f00b3f6432ff973fe9e7db47e00104843c1a83dd399a89df889f0432fbcd6d886d6bb3fe147dfe5c78b39674023100f315c5a5ef72aa1b0f5b0daa0f5c11c70cc852163cd0fb5d7bc184b5b4cccd8c27c32424ec0347d06dde11549d88285b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ac6e78e07dae75038f6242a1b016cec8e72cad408459abd2500eb8e92915007db72f92f2c37783c1d6112f0e474dc755023100bcc7154ceaeea8bfdcc4a1b0fa23203abbc44b2f9755142626c43f541d4012284fe0eb5305603fb855d523f72d2458cb0302047c435bb5006630640230063669c6755d6266df7948ed9de951a54eb6ac2ebdb03d85d349fa603bd0eee683fcf36714f1a4c36874f938cabdc98a023038ae708b4fd070e00042c3dc265573dabca86d7d2b9aecec66046e4c140e477a78c5030f70a7c984b3092371683657060302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023064eab9d949ae86ec2c904bc188b8196539242d8bf94b3dfeb12a4c11e43907d3c7dc110a270f367bfe6ca3ee9a90b578023100aa3542868afbe05d0cb403b7e5a762a24b188ab56eef0b29177589e5692a81b032c846b542efa2fc4e3a78159ac2cceb0302047c435bb500673065023008e81d79bb58699eab2bb3dba038d28e0bb115c9f6da9fd4e9ffad9230240dd3dc257121ca8f8cb898ebe4dd788ae6b3023100d05ddee4ecc4bd084dc9fd3a49afb64ac24e24747e51daf3ff5777633cda6333ae82160a5e36e0f62d4abd7af2f9851a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023004c3769e5840e2eb518afdd5ae1abfcc51f5e5d207a90e7258441439d05ae8e08b2f25a8a8581cde64d0ad862a80ba8c023017c9f45823cba8a29558948d85a555197dae5a215dbe9557c8d4790cc3adeada4ea99236c66789872e7ffb5a5d6270d80302047c435bb50066306402303c6f756cda193e69d2535acb0dc4bc037e5b8b35f9c24c8df4eef9fbe27a8bfa003e06ea34ee8c2984710ad012a21e67023008307da3f75553382409f48baf35e686d51542d285d5603455e1e79bfe27aaaa3dee8ecb0176331053081b3f895367e20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c5dbeb44099ca0e5a30db51188469eb18fe2c6818f7672fee7afc04c175301ba53e03b5dee2d7e04d67987d0ffb84ab0023100f00f7cc06c98d9828edaf9bd8319e01e4f718a41b0e62c53eabd90b96c5f745b381b7f742f02bfdbd1ffc16f5801fcd90302047c435bb5006830660231009d1a8624c5f2a11001da4d019353bffe451f4e9e657fb75825f14b923e8688bff5f09453f92c9d1b95b39a41c309d021023100b4b007fb2f6ed9bb2f91d25147211abcddfebf5b539423a81b9063cbd2e6b5c4b5bd5b7db02d3394201ec066b0ac82e50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009158652833d7706a8a4e35db108a5962c971178ddbc6d3382df5a84e09370b6a9461a97270e2ffc35cb97c1c6d52261e0231009f9478366fe9cf8e7b01c3a287c3181591ff5aadfc5bddf436bed4b783ce414c543eabfc5aa30619e26e41956871fb4c0302047c435bb5006730650230326e61ec0588a7fe59cac52f14ac1bbf7713d2b10e793003f620221a9553bf7d0f5c7cf8dec18e0fcb1f25cbb4effd3d023100b44eec4aa09ea26531438f76315de6be04fd6f94d64a2f3ac7b96d3ed1015769effea58ad41512b95fc14abaa5136b280302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b719768e55b28c930badac8dfb9faefd03d59b8d72432093ad859a7ab699fa09757fed17f53cb691002226212aef258702300d523e4dad8b41a1b9d0b583c8fb40bcb3a52e2408f57213aec3a52cb2bb103b21ef2f3ba614b5f520bec2f2eca0900d0302047c435bb500673065023070bef7743f8f260f4c035330c24c392c4a9b05d035447472005c31ff9446baecfb3e103ff5b4a673e87f5a29b411d266023100e1806f54174c2d417f6d77b0c6db044d95d29af6759f84c8487bbb7eab374a4724aa8845e6ac5a92cb620b7d0409ab0e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d2d670f4541c1e68e27b87b49e839a3d40979edb3e7ba5bb3bbbe731e6125ddbfdc3acc962c75357c73baec24f64a5da02300f088571d6116c3da6e01104000f35ba480a981fdb76f3089035313743c7f8b1de97b3340a000f3252bf8129e7895a3b0302047c435bb50066306402304b7f24703ae3b09720fc49dd32bde4d4d4b2ab9946957792ea1842691982f8410536f73f336ca8fc6ce9c2ee7d9bca24023061563262c60b5ce2bbbe398a284e93d343d3f2b191640f67202d55a2b4aec38aff11daa7e44c5b81f3b45ca7f13e7dd20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230219fbea3501a1c85e285aa005c28d17138cbc01f2a94b0fe481afb6ebcdfdc976a5caae761910c8864a3316af899339b023100815698da74858c56bc1959ca13a854abdd501ce874d30658859bb5f86479c7200ad82935afd8f759e9af512a54b710200302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023003b122994feea4543d506d1aead43c13b9ee73e4a79732e3c6b66cfa8f25fa4ced0787772f43fd9b1dd3ee2625c63417023100cd61a3b0cb52d614a5a92c5c967da156e41c489e3e6753ee06c2e06d55a394d87b0c60e9ac9cd14662280e5e8c38eeed0302047c435bb50067306502303653b57a24cf8a219f31591e58fb508a562e0aa856bfdb66837df85b58beaf70c440e7e576cd3e92264fdcbb2d7f7f8f02310090127c6ffbc75478c91483d4f360dda31d7f033e6cc39301fe5a053f8edafe62fe5fd30efce35057958744b72ec11d5f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306cbd2443ae15c76cb3d7aeb3c2e99465b526042ab129c755b1181e1ee087628371c3ccaa132a8a91711de28da263316d023072c6de9f1222a03bba540075b84f7a8ef7afbb1ad24d9146588e1685224cd87ff837721f4b6000cc724ee618c787f21d0302047c435bb500683066023100f35eb0790738a37713de09bc7f9978454f648bf73e58d8000b808d4a456c571d33d9b4466b3d9fe02a7e545a5875cc7f023100ebfc9668b9e64b312e9b40ca7114b6df2b5fd00c5a097a1798f8376ba4c89fabf0f786c08d727615154561dc998b56010302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a9d8847b7df02cafc04dff3150a441be6c558a9f24b4ed4d734c74b943aa062d7266c2eb88e0c11efe7d23dbf3496bcd0230291f23aa2210514676ccaca4a840a5db5e2790360a115cf79b36f7d4770fd24fa434bfd2381b7ebc08a5a9af12d5dd7a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100fb03c80ecff9b926def796f3868feaf85585dfab7258c0800c0aee23ab11dd890676b0bfc2066ad28a0bb89ed24335f702300ddac9d64db30525daae3238c7a2750b4e732f5a652ff09c5de9977339c828bafa61d2c720f2d4453f76d41a64e302f60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b1cb11e2b3094ffd986059897bfc78e01c469c418534cbb8a472ad31376a742f57e8675c8adef14123ab49079dda529d02305060faa9f433c89dace2003083da1311cea1ad7dada1f4195b73cd0eba59da30b8317f4b3243ac896abd1e7ddc4f45960302047c435bb500673065023034650cc505ea088790406614db7ea7a952fa34fc11c3757e7b9cfce3b186e47de9e11913927b155f4259b693a44c1c16023100dc71c705fcda76d73d5b5582d7691bffdf78b0142e3ae19fc4baabfca68791c70e9118798f517bbff7fd259cf63754af0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100afaa8c499e54f23907682a37a5c853d0b9e5c05ccc2ceee22c8e87d2cc381ca9acec67fe3337562b3445966300ac22c9023011d18eb34a1cff3608ba1c76f48c87350b0d2f9149d394e0445b9769d816825551925a475468ef09a559f40f339cf7020302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306c2d0715877e04c0e0645901ed1ededdde2bb9018eeb9e1d57e8aacbe3dc96480bffff12bd703fc948a0a737c307860a023100e4859355faff5a67819f4bba2a3e61f27befe90a1ca80d9ab514649f5ff9fa24d4348c839e1a59a2479bcd138188814a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303a7c752c962ad4f7746e94264d55c7c981d2b8f79483a89534bd43f7f49f5d91834af22322960cc65b374c787d7110c602301efa217f9778a4b58a11ec3ec71554a7b648f5ff3ec45c2bbc9945573e986610a51d51b27d438632f44a14a071cf57280302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100fac98ea911f46baa9fac9c967d37df5909f284540b9adaeb667c755f34e5153e4451066e74680ce9a3292eb48d95916702303ee499db50c0cb734b7da989c6b46962b5394db804e01faaaa189060b5ac0939f92f4017dbc54c3f73a7339d4cfdfe160302047c435bb5006730650231009251dd3da19859c711f6d15a94e5ffc78387952e2efcafac9d91f4edbfda3eb6c13dc26c79efdfbb19ffb7cee4bd47670230415657e0aefc7af4dacdba2f7e6691430bdd5d704f9cc64171e6a3be185221e5fb65ea5dc414b655da242dc927f899830302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230513dc6922797352c19ea2942b6b091befef4fdcc60234d4b736376526e37833d33329f3a8bb812230d52a22c039ac9c6023100e48eab30a4a97f004e94b1993ca795d17f5b82a044fd6584b96052fa93841da374a8a20273f51c5ac3f0b3f6d47fa5800302047c435bb500683066023100aa0604a8a2d9d555180e872a30763f60e76e621c1cf4bc5cf48054ef26d8a5063d0513506e807597f69ad1bbb21334bf023100ad52dbc14af058c7f688ff92b8d8b19c71c184d5dea4cc68acf7ae1e507444a9f90a0f034bf81f17c15f9be1832fc2cd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008d564e2ab4c13e6dbca764ff87a81dd556d9423643c102754f06c4d93014181723bafb5c696abfef6a5a9a22edde299c023100d47bff722b7de671ddfe151088fd63d275ec32120596170ab8637d202080793aa10986a48778825bcedce24330a329cd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303a745b1d427e34fc7b53a72e9f171fb4fcac1dce0f8792de1633ed386c116015e6afb3747b774e1132b27268ca5b6f2b023011004ba692453c4b7bbb55af599622a6ba3f44492e41b8250b065dd122a6b97c185f3c5c9455405fb226c0cf61875d0f0302047c435bb500683066023100b22e6de0aaaa4973e41eadbb1ae739c608def0355b6b484d1d1dc39b700667a960d06caf203ab18e2b1f4916153c332f023100ff9b76183a19fda65013e442436688fe0160d095a3dfd2e0e3d129ef0f7cc02880ff7a37dbd9341e9e0dcbe81722dbcd0302047c435bb500683066023100b2b07149cd1f05977e1571a0dcc225177931b018f16cf18b4c4e040a3d249e0476bf705fa43d174c1a5461d591ab24fa0231009c7825ba07a75e01aca91d97ae9a5e9c214e67035be236eb385517be9ae122f06c59bb6bb27036641a22495430fadc660302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a91b59c045ba42d0fe8c2b40f237eec318e313166cd7831de681e4e530be07337a26535e42d872b550955b5e48d0e43b023100947101b999071086640fd82a671ce72b35b44010bd382d674151051930c813265ae136d1f77c39396e48071170f8d7df0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023075eb4e84935a44b3de8f9c1c69ca8369a8eaf9b565263cffa97eaaafa7f6671e369e0204acdadc10d7de1f7b19dcdb0f023100c522ed812a7321fa6b36b88ffaf043d93bc094c859e3d983c8c76baa3264519651792e4f65ee7632b57dca8d7d89476c0302047c435bb500663064023063c6262d4ccd96fd21809d10fb31d4638a049e56b89ea0c2c2a902d00db34a364c9ce4317a37a3052ead48832b94105402304ef244788906045d240b7f0501c62a0536df82b110ff0a4a37441c62181b10a384aa89f59171e8869258db0367cb270c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402300101bfb19fa97b8e05141811d29103046e8f3a77453211a1bb7a5c7577392f7a8e6ac29e6b1148ff32e21843dd39688b023039d759ae3877b6d6e5e2cd9edf2286a40f899adb4c9116931fbf35a2f839a123ed3b546f455427e0ca9c448a021812ea0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a8435c2fa4e757b3c68d2a01e73730452707b522646c831464556057beab298e4cee376869903715541588ddd794fd190230074e4d4499fe74ef578c0483ded2c0718c276e9be6df2c73bced5a8c04d4431104ace682694c004ad7baf61594394a4e0302047c435bb500673065023002a10c8c02da0032b5ec2a30bcb104d78604bde1123beabc9b3b2720cdde37748989d81ed73735620fea79eecc25757f023100aa33fc66676da5d156b0f28713accaaa868b118ca3d7e294987c1eb1c818e0d80c87d0ac4e32a1780a40d0d7c47e897e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008de5afc937351bb1f3a6777eb5da2bb1a586144685296b1b3269822c773f726fff8073c775ae063759a10e91c8325587023100e0550cccb697fac4c33c7d106e395442c546375860ebf4a2de93dd9468ac9db641c3e67a9c8c9c4d880df961e0de57020302047c435bb5006730650230766cdcf95027a3908d47db84b8927c8b9b63bf322aca14314966e97a10be43b1fc71d87be04860891517f535eaf0865c023100ad6ea876fc16213999dae68b75227f3872a0ae2f942ce85d51a8c6c629350ebe2d8f36e711136c2b96e3d04cc171dea10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f979728add8d25d9e049c78f090ac63e2ea8c10b007c39f9d1e2cfe7d07eac65aefc06bae793b881ddfd12414419a80a02301bb2a6f25f7506e58a8b075b78f18c7fa5f9565c3d92a6f678e7089fb555d791994b0a1fffee6bf2504fc78eae9de5360302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a79c661995c580c699e4013576a12d0f34e5622823f5dad14b767843fd2b6c8de20b6dea29a6780412a55c084267dcfa023100f19e81b65bb82207a9403c02c5407b949b18ddb663a1ba8627e1f077a88642462960a356fb10a8da41f4c4e2e84bbcf70302047c435bb50067306502306118efa1308bd224855860293477579947144b19f5ef5f97432b9dce9bc368a025af97845ddff7bd1974a1e4d1660ce6023100bc35eca2d23e33885a67709aae0fa4e948c9aeab06d0fe93f8c82385ca446c7af6d8aa21a5815cebd509bf6a58da502e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304ce5b1c6ef088c76d6a5ae29117aaebf97ecb9c527f7bf7e3c93aafd6f456701e8d50bed48adc5340546659ab1fa569702301ec03bd4d5806ebdfa0b43daea8266e0a07b04012b19a4854b201ceef104ae28b00b89e5fb83b24e82ffe12693bff09d0302047c435bb500673065023049207dbfd81ab243cbcd729582601aaf4209af69796c282fc21464392ad750e7d725bcc81837852725112f452476fcc2023100d395342ee3dba2991b1c4c32a9f9928f8cda79e35d67150a217653bb4a2b0e33a4caaac596c67dfd44000fb01e4a1cd40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e2b6dab57da5942229b318eed2b4ba4e15bd9617acda15bb7c056bd8b61076375d69bce277b41062431974c9758674b5023100e246e2f95b91a4977e9615fa0206e6499aff490a5e04bcc46358f68407204fe4488dee94dbda12683b32da9b01867e3d0302047c435bb500683066023100912cc46fc7c3bf0d3f10907b110ba40eb527ae361ecbb6df5b4f2b6cf505482ba4b601eb483ef27e79e711d082f5175a023100c45434bf23eb0e87565f7a28e1755b071fa678568261cb373a96fb469df1772503886bb8ffb0c69581db3cdcdcf2041c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100baeff27e73e056de44b696484c0475575dfb54542c674fa867fcaf84ca56ddc1f870511a850a585a5cbe9ad1289270b702301c85cdb7cff30a09f87eac126cd36cddee622e1280fca97bb3219edc428b21c1736895bceed670013b16d7fd2a97a1350302047c435bb500663064022f778f94ce02c572922a7f2cb5a723a52d4dbaccbf5056564faf68810efd3272c7f5618ee2687d4fb12e8987c56b84d8023100a73961843e6ae78f57d111838669f078e1ce2e0b1d0c2348d7cc896238bf378c08f3f492883f9c3dbd9dcb8eef9f62690302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008aca260783bc60d63edf26b3019d51a3c31ae17bb0295583875ea8bdc0e2606f38154559de0581fc295bbdd78aa988ea0231009188906436220be525a66cf4fef2a93dc5cf5a814a4b357b4dfd58930e1ad3273151248ce46a40f1cde10f151d1016060302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d71dd5d46ea037d133171f415aa9035262e32b2f2052c078fd354d3e9bcbea0793f4c6c03683666d4316d9a916255f1d023100b8a657677a3801a01f57dfc400f8e0d90951c30bfc6b7bf3a1e39fbfa7febbeb9ab5e09e190d7f1b5d85da46c689428a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008bd66bd0642c8775859d88f3b768f9b51860a98786a7f647c385a21c4bef8c4dda1c9cf75a23a9f88541804e7c37ef46023100f10d5dfea090d867b6f3912d5749c48613d92bc77b3caa911c238eff4a7704d5917e7937a5f4dab1da0e42dab5b306c20302047c435bb500683066023100c40743d9c058f00da60bde411b32602f47342fe91071b40b733cf991b4d590126bed2f4a1a5ed7fb6d48a89a40c5b599023100a217590ae7fe168ba709dde56f6155d56fe6fec33c2e5139c68ca0cc718b1a7a566a4e44eb049a4955c3d3d4dacb9c6c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ad0b25bda2cdadcc7b11203114b90947ad7e5384d1892afa818f64f890c854d3b33e8b988f12aa37e0130d79aeb155840230714e4cd31b65bde8abd9ff936f97325ba2f69fee9492c54ff137f6b2f0918cc8323a274563633199ea94a00b887f19f60302047c435bb5006730650230221ce825f9cae8f66538720667d2e8f093f5ecf871d865837020b432973d4bfc120259f9ab432d059980fba3966cacf7023100bd7de1979ab540adccd7cd2f1bc7aa1fe4e7d3ac5d46edfef57e5ed924cbc83e4d2351eadf3d894fbd0afb01679f20350302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a52a41ccbc05c79582bd25c2a159c41efdd44789ab360762d0954d87642132db6c73a8bc8620d7aa21bf9d4662f970c602306dd034c5f58de96aeb7a193f1a0c5180b7d73e45bd5d4036b91eed0e3f1266962a08680f469251d41f3e1a3692ff8d080302047c435bb50067306502300b9291f5f4744d58eede0c4f8daafa2475e9d81316616dec3ce1f76440e349f2b361699481c6718468597b275539b1cd023100a89538c09aea10f12f03b9a631906a0e7adbb6a3329bf655d3ee5603af6672017f9f81e3f9175577b437a840a3e3ea650302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b6ae3afe2925ea2a6460f75dfdd02984163c126232d791b137f6b4accad05441919cfb35d0376f9313196c01505ba0c0023021c9fc6415887dc536a6162d004fe30a8a5c5cc44fa5beaaab1369917d16f7958323ebdcf0718162cf6915104f39f24e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303605976585e0c95edffd296d42f14e5e4a68ae1008692041a37427fc6734e0b697a33f6ff08124c95f2b58e6fc1dd05a023100d39b4a623d6bc19ab769cc71a8e7017a6efb34bb17d2bd4bab6b861f83b2d64f38bd78c958d6eb7b0d2f7b5e51e432960302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c078d324dac51b2c59dc70e7430e50e64bb16934dac6693be9ec1eaf7c1bb4876e5887e3e733f51259f2f021b209d2530230562814e27bc26da50909016953f10ad9db404292179fab2244588298bbcedac6bcaa3be2d6af5ccf1b9069f2a268ae510302047c435bb5006630640230690885b45d676e9ac0dde030444643f664150ca8c6580e14150fa457013f8c1857c49828984ac9c925fb800bbf544b8202304c6fbb7451154430eb4e08063acf3f80e8228a3be0f5fbebd6c7465a97ec0989028b30c48c27d46cd3d935552c6437d90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305b85ca518e3c39d691141096aa02742c80e522097d4854e17dd10ba839821743e52540ac56d46b6875cb9eb1a70ff625023013aa4f9063a3aab34e3f690e43815a157f98f3ad23799dad473f6a857a4417e047cdf10e31a12cb80870355a31c4c2900302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023010336cce78e028e32317c32db3b99c69e0aeaa7fc3dfebb76bf2fcac4095b3d83da803a668cbcee14826c641256376a1023100b04e2956adb666ad9a7d315c8bb569c40b5502bd15d5e918dbd58fd6a9063b866051d6228733c6df0cbdfc7dc9d2cfb10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023054f9f768cbcdfc9312b93b07d4f63c0e6a957ab061324d85fe3356f276f26e9e886db05f0ae7e1049424b54053896314023022e1d8ea429343841c2308f5fc0d12e1c7ef3bc0cd492fa91502309db1053af57a77c474345082a4fc5d034a8c207dff0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303d3fb56294786b873622e1c097238e0026f9f2de4e8da7b3bb7561ff880a62478c0c23d4745be1723d3ebb98a199f52402300a1debc7c61aace342661c969d36fb1740f9e6541fee73ab00751b0852d04468843321f5cb4ee3931f81361bbb7a6b810302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230669523100270ceb5320aef31b408c3ff609b7629ab1087c4ff81eacfbdff1620485e90b7aa69c501d51ad24fd98e968b02307ff2aac331f766fcac0d18365edbd59b5556d3111be6973eb2b6610a73759dfc20f7e819c1a7bedc32c58318bb1b455f0302047c435bb5006630640230790beebb848cc243425050a2e945e83997f469c967014bf8f86bc0be4159cdc39c61585934ec17dbd1b0b52dfdec0f6702306719fafdc27c29048b66099fd7ec00ac1a3c1f9e43ebf25aad118f37545a2eca02b9faa2dd91ea8ec031948f5cdbb4aa0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100beee296951acf9c71f3430fcb5f3deeda6bfdb558f97272e26df122ffbd617ebcf0de25be479ee75ff37ab83607be2f2023100b574efe755f545ab88dd5c81a3562a603e65223c57a0c65a850f55e6a14f0776634a082eb06a377867316c203e7167d80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a446bb6c19125f71f086a361d55150b8746a9dfe1cba39ad20e75950f392dae4925a078ae2b775761ad873a926bd2b63023100f8b77d570c6f5c5c08563a8528a78a9f025643847570ee35cad078082bbef564a06f1398a846cf2457e9662d85066b130302047c435bb5006630640230380066b4ea726c1846265e11a0f7c72a0463a05ee6d701983ccdc9635a9f87e3a83030fbfeeb26bf9648f81eaddf5cc002303095bf66772c8fa7eaa84001037bb4bea22cd8e101758aa619c1947adecdb1690c7a3427b0b4a950a45588937682ec250302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301fd886f374b7de799e79f5325c7e5a0a637fb3bcaeebc13e41c2d3b9e4dfec1e735715dde790959794d922faae5ff64802302e94c1877f19026434559523536d763b439a9b5857c28a22bfef080a88e58a7c3c5a881532357f1437b7c8a926a32ef40302047c435bb50067306502305cd1938794a4a57e5077987f4b1b4de0e08a2641c7c4a9b042a84aa622f200b72edd6d8bfeafb3010788d6ff21ab465c0231009b61445167107e0ce4539b9e3f8f9b2e7fb433f79e2855e9fe8d3190e714c6a66b10c9229b90ee9272d1fa5cc7b97eac0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a4468d521b8ff6318fb646678afd84683c58b0762fe2bc2df56ba1a8f8a80ba7bcb7d5baa041442fca49568b63e834e50230684bdeea8938ffd3a8c6332fa8f8023f60e4aab86b3ea714fd8d93497ffabd6a42a961484fd4caa666764fcf46d8f7ee0302047c435bb5006730650230208ac78cbad35a39097b64fb7b8b91879ccbededcd26cee47a278af99405e4a047d7bd587a4e488017d6ac3d6549d376023100c2b5ac282dcedeb05094c0702c04b608ccaac83596869834af3cf235ab1f3bcaff039ca8bc23ebcbb0cf9974270373ce0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023028868db4d613130ac7bc2d8b9fe925f7f77738746d5e6fd66a634117c9f8b14e36a7948612861e32e1b4914e64483feb02303f8bd2a4850cce32fbba885ef4696435f10a11dba4db2a19fb67a670a16bdf398aea5314151f9afc8c1075821868a0700302047c435bb50068306602310094a06f359d34f6e1cd3e3d2b17cdfac7ea71c93fd46d7cccec5e531c873696afcaa401164af7a19e2db80c982ec2e248023100a13df51b72da3bb13a836dd041c87359bfd8548388ee3f5f08ac08221ac7d93c7f3917fbff8d4a1b95dabc163801a80b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023059cf08a17332b5ef54c2ba3436076f5f58f95afadaa55ed402e70aa5b1eecfe12a79a5c18630d99e9b8286d85771f246023100f2af61118369d3214c07917a19b3a6b8855f4011c5a807f14b87c9806a6d4542b828c4b9ac53f3e3ab38eae0c6406d900302047c435bb500683066023100a0e340bd40bd14ab7e9e81cc916b5cce0b3216e3298ebb25c91265504fb65c1efbcd142334ccff74411d21bc1e19a689023100bded50a066391ebcbc9b4e1c1700e776739b52b1166ac580a2436e952e5b44d38afcd7776ffe1bb21d3d8d2994753a630302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023058bf72c3bd546553ec8ba50f34800d93804b2001533b56a1016133f5da93afffd01ddc9045b207f4cfb499c07528e02c023100ce761bb3e5fdf2e59b37e207c44ba2eb3a2103151db2419b3bc0cd2d7331963b139f73094530fc36fde2a84049b551e90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023032eafcf04aa2294a9e1059fb7fcc24c406e83c5814a240b20f819928d71831b8859c550dcb554aa64119eaa9002dfc35023013fd8f38e05bf9cdeac2da43cd3378ee934447c9a989ee2c5319752b021432b0319bd2d27206a06fdab349bbd3b95d490302047c435bb50067306502302196312f47ecb062e771e1326c5ac150f90a687e60a9d9121d612f91ddc562b1d35472c6b8d3630a421ad5ecfe842833023100dff8f78011ea2f5334faecd57f4ee14c8d18b0d42b94ebfe0de75f695212fb63ad30be3d507d8e3e8a39a88e701c23fe0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023050b050b7bb393f6af9f601c5d1c732e1ec798d712c831c9719b7abcc8578621e36ba5979dbc77387af1a81f381e4447802300ae696e4d9a78a2567c6365b47613d360cd338939523ecb80c24e915c3a3d5c650a8d05dcae02fb1a991720e7f118dbf0302047c435bb5006630640230464568feed9a541ed684cb38a3d8b1cc4142635d3094b5452e78ca0aeacc5c2e8656d48bdf12d68b3bc1be525dc6abf102307e8a210e67e61faed196dea2a53b0acf51ec2aa98f9493512f7d822c8f55bb865a5536b4f784d86a72408d3741a457ed0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100aee1958334e3590609aa22be201701add27e06e475c2654639aa282af72e43b881d4f4f96fb85085103a20b4a5e23e3d023100c5040e5a67f830862ab38778fcdd03795d56c06ff73e10fb51d73272f94e87f3f1b58f51dabd66e9645840de3953eba90302047c435bb50066306402305f9ec2c2769a66c1e855d1058adb2b20429c0d00a314304a85c9435e7b94e8570222b8b65b588d8f1afef0d6bdfaa4bb02300c41b991c039b7ca7e5ecc410706de216d5d536f17b645b65f87abd5129023f8aac4ae9d08fe9b9e054391cff46a769b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ade00539f2982867375c985bbdb28e5b64b4a29b35425cf81ea32775c43754901d5b5228fb3ae71710bd2f0e1a5eac46023015dacc7dfa62d288fd69a3017600045a76331b56f47653be7394e7256f9dea7b1d9ad798cebb30262493acdfb8409bfe0302047c435bb5006730650231009bf412e1ae569f4b0e0258981000dfc980c7f64a54c0163b0e5613f18199a8bde63061b1fe3a59a5f1b21651d81b681702302782b0b132dc20617901027b83fee9e06f8e75fcc46e03e3b187a4d83093c8299aac20522bf98b02f119bb646fe8ce370302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310093a45ab470f0296693967ffa0fcc32473ab355bc40b50304602caaecf8968ca378244beac7926e75e52d9c2a8f6055be0230594fed6b85df2a9d0139152f99cf03a46088aa95cc56accc5e54fca162a47e0244dc7f45927ad00ddf5a10bdbc8703cb0302047c435bb5006730650230746748ab5091be1a6de71b18781e7cfb36e6cdadb0736daaf92e77abe5239109a1348e9f5207a743d71bf1f793941501023100ad1a59af01d70d034fd04d038ceb0e92b8dd11124bf39369acdcadb565368534652e851674a7aa391bcde0840f93e1ad0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023044bbbd22bb90a5059923fba26bdb33b2a77018f46f1a41de3326e275b1198cb4283eb62f3be9fc09d4babd36df33411c02302d92bacdd8b1d80a5ebf43b38cd139d83c47e4140f18b1a6c8cc9911595ca0f58c4a96baf226ccef1eb535d1bb99cc440302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230618ae71a9ed0242e35c30cf20c0fe09f9476d8719d9feb23915adb04726ce6f989180c5c17ebd8c4233ea7e66c3992a202300f3c5010ee0f1398a81192556a23cfb867d13cdd2b0eaa73964f811bd67279b2c6c39cb6a9fc778a497f9662bc792cc40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b26a7a4fb5b368fba15639751ec0ea9bca9bdee5c7ca7bf8ed66cfc78ff95ea4225a405a71e80c180dc1fa01dd6af2a6023100930dc1d475281530322b1d026189124c8d007d0d0109f22db2dbcfe38bc54310c5678e09ccef1a32a2b26ec3faebfd7f0302047c435bb50066306402305c92c84256ed31ef9c635c7c123c62cde2909d1055c41664133daa0051f6d01cf9f40c3719bca6a8f5c6070000ea6e730230184148d7027094ed1fb2369312d3a2b65b64ad3c3306c82a1d6f348597e06f622959bdd0f8798c6a21855d54a607dec10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100cc6fc8a0afe261b026949a41feaf429f575642629d73566865d53b03df6e70e766add8b42c1699056fdde1d21c54f60b023045d188da34b431eea1784ccf05edfb9925e161c943b9c637e0b9231accf19cf2b8ad7a94e8e14846612a3531079ce8330302047c435bb500683066023100f01a097081f243a3d40d7a6128bea9d9ac40ab7a071b716512ddb888721a2be2d8179fb8c3223518e4e25a1e90c518340231009004f5edf1f4b8a9bb71d624992860de43376926a8010755926a9330941a934e360e06ed58243115c244181bb6392eee0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c3542ae22a1dae079960f7ce04c9e6065a6331260f5705b76b48a9da23c9c683bef644ed73e65448f7c016faa1c49f4e023040074369e03a3a8ac1d8ee111fa51d59f61a480b61b414d9e1b76649faefd7cb612bed3b5fcfd1d837cda560f40324230302047c435bb50067306502302327a1f52cd7f6e539803ea044dcfd15e86c30d936b853a6cc68ad58e22f5d7d22595bed25fc5601877d677f8df1ae87023100a2b882b244e6099c744775ccb6732b48bd58e7a5f9a4b042dad9fad15a7ab960520f8426e4863b624d829207a013796b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cae80af4a4c2c83a46aad509b8b2246a45fb838c6caa60b2436fce665ec92bbf3ed8721ea0cf9a52be2cfd703d107002023100d53281549ea276ed7b9bf8df9cbfeaabc32c185c4714081cab16a1a0543f236e022ae116dd8e995f8c5fce1f6392609b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d61719ccb8b2408a1891a3d54c89cc9cf63a1ac941c51fa2e2fdf3b33aeef165719258bc67915f9b37fb7499996a861a02303e89ecdd4126eb24cc45932eeac5b4704a09cfabf06aca1dd8086c6a8f7ecabb5052a4d62edab4b55bfd4bd331ef856e0302047c435bb500683066023100e22a4d9dbd1903e6632ec00539ea54902f1b41e573b50a80f7c8b317a8244c2d06f51f44f9c2fbeee03b3d22a07d1200023100b110886b2539f451e36f068ac52684a65afa4f74b21f3bc5d2b715eeae6e7cdeae757f4d739844a9b6828bd88e27ea9a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023017b2d5baea803da545fe1ff7b505ff9b04783d0bec140e92e071cc40c4cb1e1c7aa2a7cd996a674f719f5afec995fd120230322ed4ccda66ba6a368f37d8e6c1da54d373708245ef52634504eb71bdc688bdca9e22183f66dad0bdf4d67e786b526d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305156613d425139f274b5f3ddc6fdee1e0c57ce8de1476a9a99131fc7df28d130a466c1442be346c57252745cbdecfb4b023100c5cbc3ad91773b8a9472e6094f3a5e2edc7993bace298f26d47db19df8c17c579d1f22b0fafe3dc4c49594528d7042490302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b34ae1dc644f1f44680aaf6038d46f6fdd129b7da95be592822915b338ba61694c990ec3625c17065e086cbb70ac280e023031e7275164506e8fd6d8068f46139779fde1caf9a86da502f78d756aae1ae4acfc2d52e3dbab7f57ff16dfd97000b0470302047c435bb500673065023100c7ef1cc2004fb1d82137a2f640c7dfe6d438fa05c27139dea3274de1ad60e3042f7234f1e79018ffd662f7743ed556fe0230145911fda6431afcf96d4541c43428d75f00fe129d186cda9535ca808ec8d3e032b52f7fafd832595aeccd4a97f68bab0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e8ae8d02c82908b5fdeb99634f9f9c61e18b6366e9ed88e5b26695ae346b59335880c07fbbdbc1d1bcb4691ac1c94fd402301f2d09ffbc47eb32eaf705b92db81d70d2c05c5f4edc2b959ff69a82d4f9d5af65b87521091ab1bd929aca5c76ebde660302047c435bb500683066023100ffa3cf1e5bdf5b77bfdb2a1e58bcb840ac1fe5e70128c4979a2803adefdac0f0fa6671fd46fd0f793c5c956e82949a23023100ab173150a8fb9ff861b1b2f3910326afaf20b339d85f5e61be5f0e6847ad8ef6b68278f0b11e7ed0a11efbf332e9b69b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100fcad148cdcd4f3cd94de48a2294318fcf6ab034d7e7446a6108bcdaa1b058277fe575a6fc616a074702abde560f4579802304918d94dff36b0265f4c05f78d20180a898f5831914675195d3a42601926d2b994ecc7533f96540236de483c64e2fa610302047c435bb500683066023100dc15bba91f3f3277560c59b1f62f4dd59de11d053f695953bcf991cc4be5ec5610af61037f87e7e1693216d5a7cfbd75023100f6df500935437e85c7a918a983423f47975fefca0a9fe74b1afb08e03eccc6d15f1439aa61a5c04426799119f30494a20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306033006b5ee4d8fe3792b3c7e055dff8929cef34522b658ac54e284c21fe9dcb1dba93ca79d33c0b893d18737c6f03f7023073bd6e8c3de1467338d96c366c2a1b12d74fbcac23564e9a581228a51d37891f7b8ec161e1b492c49358fae18105eab60302047c435bb500673065023100f899373a38a1a0238a658bdaade244da09d7a351c4bba931e862fa958f0379ff6b2fbcc326cda17bdf55d829b37a94a702302aca798e605ee91afbaa4ccfade743edea5b92e4f8e01bab1554eaa98375387e5d32d3c9fb52d7ddfd8be9c02d38990a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e821c6ede0441588eb8411c5f6372ef52ef07d2d6cf1eac4986fcfb5c42b132af22782a8f0c30255864dff8643aaa1ec023100922cf4cb4d63cb51445bd0d143663ced2a986daa06e91046879bd6a92a722d9a906dd4da1092dd7505d348b951941ba10302047c435bb500663064023075217bf396a438d759650b1413f087e7d2619d8b77bd0564e84e9cbd71bd461c26aff729bf95bfd40f0ca9b831acd91a02305f4012c435d6b62b210d647060b6f024b93d5961433608fb0a1905baf702eb40bea44de13953387b1f1cd1eac3c3ccc20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306b1f9bb5f00710c3e3eca483411972915f45e9a11dbfed69843a3f8813051af4ed3db70a198eb40d5a54cae63b9af3d402310080421a1d3f67062f3b3603de0322f8cdc354249c0daf3ef9dbd2efb40cb47e622e2fa237f8d874f9260f2bb7509493940302047c435bb500673065023041a473a57449ebf8cc2edfa56e603878f1331f27a736afd309d082c7ffe4d964a4be0e9a1847daf40825b7572e5ca105023100f7327416942f6e5ff47d0754a1e70272ec5824460ae86179d21ee57cb1ce79012516075dc7094a80d027708ebe0028050302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303b9dc096d677289ea7387aa84d3744b959c60454388f7479dc592ed6a6b55e112a692b6b32e6510733df6f15f8f0f766023100e7fa8d40217e3074fdcfde03dd77e73ac8faa48e99383ce10f8611b25f50b9eabaaaf703c0b566b6212a4afbbe0cf1110302047c435bb50066306402306e8c9674f6f7920d881ebd706379cc5a48fa168f57cf42f2f1d8b5a86045fb769d0faab2326316b80dfb1194b28aa29602300a7866eebd1953925736a68e05a0a28fff9aee07511d862564f4e4333ea5f1bc3b439f001a1233460543454f344877130302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100fea525aa429de7a26e5bffcf155d36cac35044f4edb1a615ca7ab49899c2c45f697cafa44a629e1b478ccfa4f4da725502307cab7a0eca42d6e251014e3fc429d5bcdb28b8b5901558ddd95f2b347e682e2f8e81af44512568f685503153d5bfc8360302047c435bb500663064023022a3f97371dfd49d1e6a832f8b679a3994d29fb01dbf59b0aab8879e77b7dba37990dac32937a4346334436ff04db833023053b907d5b734f6541806ba3719d29fa3b12b4a6b0c70200d30aa7c18b986b18f617365b6f3a3ba013da5c8a62ba1f2240302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023075ae58222315dab593141da988377c7ad3b453e9b986aa7215ff445db891677ebad23fc782b3b49654409ef714a596790231009646665a291d5f96142910ba2cd1def1bce2066d6b01f7662b4b0063655f170afd4f8b0e74f7adbebf6ac4e63e8398660302047c435bb50067306502301108956f09b748d59c04707beb7cac3730ce61f25b90c747ceb7454594ad6a00b0e2b76a87eac41d2a59849967d58d08023100d7fdaf9a1563dffaf5f0da7dc4290396e078e041ec68d95951682fe474a85edac8964fff7bb41c6111627a87b977a0b90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c73d4cf07197e5ed380e5b25cf9443368d8e4f784db7702b01473d63642086817759930647907b82c3cbfee7ce38fd8302310087e4d481c18e98d87f30b9e92db9323c79a46eb16f3eca416150318ebead562b5bb688c911aaf05cfd071eb159a60c130302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303a677a66d223163a51f3ca0879367a66115f1de5000378eb65f1bad4ce054851198313a8600093e3ba9ffef8bff6d6f6023100da13b220fc8497a0de8c9dfb5e0104955abba05ad588e2202cefa29559f6ec2e6219e8a338878a1f5b90155f70a2d5200302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c5b8f42c0932a2de9a0e255b97c3f4e2bbd75bb3fb0c2f75d4a442a9f5d5f2982cbd129492e7674b11fd74c1696a4012023100dc842a9c34412304bf92a32aee12ba5fbbeaad4afc06d89396ed9c2686a2d6483ff4278fc14e2fdbe2330773821510790302047c435bb500673065023100a27417db8bb82f1b5ce92d7da4b2aef87b066bd1533506364a9b5db4a6c90ad407e38132185b7cf654fddca05435f07402304f613e06bd522b5195f87bc46affd69acc40fccc9f8f36a477455ac64f7caaddeba2b51505c6a6a6a4955d0b2467bc8f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230318f06297d1bdbb2a69b5633516e4e44d9a75feab7db2114b0907637d4084019eebae4d9961afd5154f48890a2b98c790231009842a7e4acfac88a0e0ff9b4b23beac7a7e3f2e52fb413e7cacc8063a77b8bf24dfb855a871a964ef8cc52bc42b952700302047c435bb500673065023100f9de1bdb5066f89cb4761caf908bc97127f855b29b6d42bb2761a0a6a7095fe57b6310368f0361d326d4362cf74e8b050230060cf557df67fd9249dcd515a9d37bb29b70d8e065c066ca1c1d82b7bef28128a624422b0dfb56dc93422b7ccb1c930d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230329daa53d1dfaf76a2f1e940294511a2ca4b178a00469ed0dbdd3bec497a967359f211530aa0b847cf5675fac388d9c5023100c85158003ea367a43bdbf7a4b9248d0de969a00b0db71b45164e62e185d4767dd918c94c0d3f9bce1dea3b48ac0db17f0302047c435bb50067306502301a01a266aeff40b3388d9c37397bdad0f90d2347c95f2e80f4557e58fa4832a2a3e257980d8f507a02e2f9a42c94f71e023100c3226b074139d01f4fbe6a64f9e18ac061293021010bc44805e94b41087d599101a06f657e97e3c660c578e88f363c6e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303d3bf7626241d81353757ec0e846e6b0beb120b74f03b2d766c8aaf0e66c3ee49938add3c58f6bc1f49e7685f9e7d22302300f9da22b3bfcce0583a80e4a814c331c6b62e8ec901285748f1f4fbf8670f91242fab54318608a8d8d5ad78152a450a50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c947c37f7745d5ba049c4d890c8c24c78939ba05960355003c159e5c2ef9752764c76441c532fb4f32efde4c5f9e4c15023007060219b5d47813025e894b90085543e63078bde37ed24611059fbd901a92b811613c2a9dccf4548596129d2345e8190302047c435bb500683066023100df17972b77d708df4b6c7226518033a2ebe6683d23f55c1a5534233a926bf266bbc622bac0f3a247e2845d683584e06a023100e1091ff1b171b29a39d01d570c6cda387040e153844dc50c6ea54868a106ba6381935aab96d418ca5bf8e82de7210b100302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c31dc341d060b18516aa406bf48526ee7a4925230155a5a59dbe92ea23779a19eb2e88ec6aae7833eb7bfa759d553dd302307d25a8454a3f6bf310a1ca01ac8bfe289845f9a80ecd54e0d67be95bf14e186f8b6ca8e2723c896bd20892b197e290ea0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302265d90686506a410f6db7873d6c8097d76040c4aa717ec0789140b403b9ffd1608678cab2afb3c5262e0a9b2e849252023100ab38fd85a74fd6f40379cf2e2a4639645f90b42b1cafa855316b8083ee1e86c28965cdb0576d8b5d44912dbd8f50e2bd0302047c435bb500683066023100cb73efc1083d0824af96072c57aeb00833de15855925870ceb72bcc2b7d415239d99b12c5d99c0fc0167fb901ad54ad9023100a0bf3b669b07c4168640ae66c1db1e216b0a2bc64b7f03a4fa3cf3f42427cb5621ecfabd215295665fe54a1d682113920302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e21e688552982b9dc91dcbb6743e412fdeb9cad1c16e6f4fa0ff6396bd5ca427c0ae77e3b2b980b37b3cf17a367dbe170230482a2267a1f0b7d8631ffa267575f2bee9d380d9b6a060565a52f0eefc60280d170f13452ec40afdd5cd1ea4e36bdfd30302047c435bb500663064023063c8a4b86fb8fd0b805e0053658b2b5232bd86107d3cc721c09890cfdad1fbb0e9db0b06dde830379477aad29a71473d0230096007a435ad1ffbeecab7b99c3f294901fb63f1f5f2aa679536bb6bb1ecef0b9dd657c8529474b22d43003b185c5db60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310086140d407dcceb1812a16ea6b0be1a4abb395297e2fc880f8135041bb991cd533727121376862fa38faf8829444c9b34023100d330b1e43b92f23953aec8ded4e614096a54dab28fa31660ce086279e9dcb1bf9fb252fd21c2b75f068e133dea014b000302047c435bb50066306402305c65a1617fe8d4c1a6f2285dfcf3f11d226dc3ea99672e8bf658cd589b27900b33294e086012d915757951443fee021f02306bbc21379804faac5a4edfc069b98f7817f71c488c987f11afc22cb0a73a2d5a1ab716d76ca11f2fd2f025dfd79f78490302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008cec3964d2ff4be6688a23214a81d24fd5d536af1f9a655c51355a0637b1994c84d81caff0d08708e42343f3302b079c023100f94c76f71ce20c54f98b61eff8475694b7693efcb37fb3e5b67331b66ee05844762d93f16600bdd680ed8ba2e189505a0302047c435bb5006730650230349a0af4543e0ac205c714d17786cf902d6beb8a9e713e137ac09de08fdef81c2448c687a18634d9dad7f6a8e6d5be54023100f0bb6b067104bce479888d89f1dd56cab1af3cb49ef3a886eae811d19dd646971b0299d55777d683f3c8c9a8847d6f380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009b67dfb0f6c21422a00caa2ec9f5655efc9b2c87a7858becf7c212cb700e1eeece752fa442c2426e9e84899a6213088c023100e613cc5d5ad0249bc76d6511059c3a90b18db8ae2ff4ca3cd9e7e25c858bc540a8e773d86bf0685cdfceaddb8f54af660302047c435bb500663064023043f202517f5cb561fadb2d084cdb839bded020b7ec3b89fe1e5ebd9e02b64f50e897b25a110868a9e6d7640176f1cf2b023058e176c6d20a8b2176c2f30d1a1343d2c81f9eea8d91e3d7f7ce3b4d8898c9a2a3fe5ed3e38919df12dbfbdf536084370302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023079ba6918fb599ef505ed56a5815a5cbdd862dee10b61dbd2fec4882fa3380b3526608d283a8528ff4e60a66ba5797354023100e00ca4f53a183d7aba4d5683600e13bb35d04443f61bef47936abbe0b32d10c30fc9012e186f23698e3c707d0fb653fc0302047c435bb500673065023100e51ac0e09d74c9cea57cf25a0d177f3b3938f8d9af7b7ca2d4de090e091e5bf73987684557f76d9c495155d2d45288170230099faa50f1c20510b6e148419029d2697832616a3c17f58dc5750dd72408c6e81cbc7bfca7fcb8b4fe5da662a8b9cc5c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304fee7203e3d61d7ad46e985522271b36b02b3d87e08de3ee985dc8ba92d08247cfcdf7d74a1b48b07f485b5007a6083802310087740d8c3706c82e4aed9d745ef3164293104eb350ef14ac638843191a147e2c563ce201cf28ecfdee2884682d0ce9db0302047c435bb500663064023067416e7ee8f75ee14a272e1fdb5d41cf27a51804e82463b9dfe6065af42ef09664818dfc147dc919eb67245dff6c47db023021937b6d8a42165ad9ccbfbef8887abef9ac59fd85421274490dc684aba7adcf8269216696191c27911a60d1a53213660302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310084afa75c5e897e82ba725884f2bc191a21735c5a43670da8993fe778f5066bcd85403869d19404ecb0af0063b1fed12502310087e86a9ccd23d6b19bbeac478f88b26c8e0f2dadbd1357f051969388080feeff41d70c7d2ad161aa9533028c2645d5850302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302178532043c0d8c4b18c1c3a351eb195567653b1ea8666f462fd37c08ecd2d3f7bd21920865c7fac82c7eac83580f171023062c94f22db7af5bbc7a564e2838338d41fd5ae0933241267a291619fdc6e6e50871664fca222eddaf7b9390c8d9d43d40302047c435bb500673065023100a47fdcb9f87e5c6ab06bb6f8ceea1ef7565291d96338e0a4c331a7fcaf83edd476e8052816f5425143489abe734824a3023046bd877b062cfdb611b04ed0598eb4428bfbe0ba5875aa5b0ca08751d0a85e7b73cb2d9fdfc5b734c926584e274d97f80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a87af78bf841a837b2ad26f7b54af0d3ab7d4a890cae0143d99a0717e36f045a7e212c75d3b801b70abf91e11b9700c10230298be51638173fb24b831e68974621e222e1ed9e93a5a629e9992872d51b592fb3d04b4445863c3de805fa2870d16af70302047c435bb50066306402304cd55ce7cf7455dcd460fbd3c87d5563d721462f42ca6ea18d4f62d33c7411e53213bd76282515683a3c55cd3e919725023066342cf9f929f7022d67154ea530f162b86a0137f674ef463b943e40f0e0ca5934aa7043c91c30a13b4bd6aae88dec1b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500653063022f10edec468f27cf6e36594d588bc5907a246953b0067b1cd8e8fab45d58e70df0d5df8c43f86934ef1d16d31895e16c02300ee869447c52a44a1f4e6ace553f2c120166961e08a3eb06530b5182b4719dfcae4d6634bef434c31da0e98f8a5a7f540302047c435bb500673065023100dc2598950b2578c49183564a89efa2d0584fbc68b5f14a9a66767cb930a62c33f8c9ef71ff21eb27fac2bd038b94900a023024b17448993fea56de9b49d1bcfc4ddc3890b07d249aa5e25d7381849c2fb43b28535deef0dc227dc8a41efed41bb9c40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307b82e2a70a6fe112675eb5d0ede02a15ec290754c5c5984f167d52bb00da5a708556d5a0dabba55fe5893d15f996d2bc023025b636b2cca79785bc2ff80e1fb8fa7e5b0f0e8b00d58d06ea43e8b13e1df3038d5e3c0771b5df64765324aaa261dde30302047c435bb500683066023100e9e5f0f2d832e39d975250454d4bed3bda4e9e6544e5883af550b8367131b542c0151a36650e91dd2c4a8d7bd2ce6315023100aeeb0d72492062115f518b6c4e943dabad702699fd7d95615c31575b22d575fc2a6cb6c321a15a2f3b43fb20f7d1973c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307912ed33ec81f62d95f8810241d5423394d4f42d3b9e47cb123679e224f8d73d51fafced1529625cde441cf768f429b3023100dda2d8aa914e8cb96b56a7a1bd348561d3c7683686d743b24d785ed98103533a1cb2b5a9be2bd260d6c5b841d2b44a2b0302047c435bb5006830660231008c80440f4bcaac06410a5adfa394361a84af05c85d1c343b6ebefff28ef674386beb4d6e82217550666370e35066228d023100a8482d316749fd2ef90d7e04a1c001d805186dff5ae5462a1bcd41af639862f492ef298aa9f74b9c43a7d3eaeb2038eb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023027e8e9563d9111722737c7bd5bb3f7dedcfb7066dc3b32f67ef945fedb98e36e53af9afe952fb572619db2e96776ff34023100c5986043ee1fe5c42f582e43174a527398b0515b8f85f50c02c207e9041f477de31e9071cb32501fa63f25b6c02704410302047c435bb500673065023100e62593235b7aafd9fdd3483633a2d7c33de9a239174fdc650604200408f9c4ce2ef4be6ee0f6c20960ff135a5bc3052d023029b6265c4c1c60391201aea6b43a1c1c1977e196af6657c7df9d938f9058d55b8a1c8f845f6f50547ad868704a3fe3950302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304802fec3101df6885f59bf0384d798d67451ac7eba31aeca31fb6dddb96c00b217c9ddd991f1cd41c117e77beaca0b970231009aa16930f8310d50c0b858db7335ee76497ab0b2c416a6164cc7007d9a4718db8cb9743a7dc9e513f58c3d8e00847c610302047c435bb500683066023100ae6cbef9490dd137c391bd279417f8a67c334ee359b7694f1aa509c93f0c18e5126b0e32195d709103b57bce064718ea023100cddc123160871735f5c4e467a4ade5e3aaaf226a80a8f15d78d3a6b9bb2f3546b9904e288b72eb083b73a934eeebb40b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023052bb18819b058a08d5d89a802043a51d4d09aec75e401e986a3a1394773f792322d66fd8aca00883d506d2bbeb401b30023050a97e06e97abe63f30ca8cdd83070e5c10abe9f5948a6c1c5625cd8c148c0c25dfec00d97072d6237e86adf251f3aeb0302047c435bb500683066023100f1466736a140a03d16032995351b23d41fc477513d08eea05a013cd1b20501fd1da2719985c2d1c037a157c4696ba2bf023100e318a773d2def6bbec4d71e31990903fa42378e919402780c4cc3774508cc76055edc6d2907a64acf4cd2c010bc66e310302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c4dbf7b1d8d583be83cbe248c6372a3dca86493f5d24b43a5a8ad3a5cb3c212c53b2aa86175591398210c1f85038a331023076e842d2abd233f817f0230a6f19b560da7370e95ff6e9252d21089f2ca5d78bbc7fc433c5b00ca4a6637296dbd5e82d0302047c435bb50066306402305233899987501232633cc30cf076c8cb1a74a6a90840abad72606df9cfe3c497673bb9add108ba4672b8dc5c1cf2539602305c7182c599a31422a8b5023e29ef25e4d909188aa27e4efa5f7933d2de9037aa9a7e742ec0e3551e276b6ef7765e0bbb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009f854ab9a7a6b31cd9db0fe3ad5c31d87f9ffab8c57e0582b72b8644fad5075bc11a36f82b877cfdc7c183876ec0723a02306c65cd31b0695d1717b48635f9c138c0e2d8673b22475d7f98261f6c2b280d5bd31a5b6120a2be22af7c50b9a3dd5f820302047c435bb500673065023075aec4d9af73df665c644d36a06c9c5ddfbc86c5531b16865a69a49d5e72369a4afe9612bf711e082a3df1777c898692023100b0e2a7a669209b4e735d473953862dab6f3cb2ccd3450a7c8ea6395ad75ea6bbf8327c19356671258433f36d5b13ff070302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307bc62547619ee25055be1329baba8f61cd94a6baff5f693553a97e98a788fd4b06dc18d59cbc6e6e821a9f33042c6230023100d7dac18558ca0db132ee4fd02416543c2f980e0c60922291ce49dc17f797124ee3e3a6c388c43dd2788b4af8ede6d3c80302047c435bb500683066023100ab9bb2f5fc14cbaca04a12b698e1ffb4711ee9e24fc144e41dd8d81f3f5caaa3992861c5d9f35c15d0a7bfca892624cc023100e50b779ba5460690566c16cdcb83062b3f30bcc03f94dd0142dd0f38bdc551a73fd06395153afec389f5991d406df3fd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300f8124ea047bf6a768a9fb09b7cae0b660245b891a80b7b28fa88d281ed4652b54e8af68e9b09a9e5b61588e030d8e45023100d91b80b6d23dae7b2905defe74836ba6715a21945da9b886ad44f76f8ba30877cdab67383660ca05ca438848d0b11c000302047c435bb500663064023058c5b6d0b4c92394f340402a3fcc2d366782cbfd04c94df5937748e7435c33af1dc10f51ad1e813e1da88756e204ba5202307a21f543c9990ce5ff142d4a2f36e86bdd0acbb7cd02e9e24c8b38278de23e3c5fdd74debc366c81d76ede9d93bac59c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307ab7975b223f4caaf4c47586f9ad1c411bb1f11a9a28d90f7863f12b0ce2da5e6b39bca6dcfe5c2da21739f287b083ea023100e13113ef5fea5ad865d2d454d343ec8816197a01f78d17a5a5159711e6568d5b6c4343c48bfe53d36e9806ea00727b090302047c435bb5006830660231009e6619d7c1af5239759adc85a3cdf4ae5db41b3fb713baa66399e6d0c3b62799015fa46332d6dbbc4f3b9a218895d0c50231008ff9e10023ff1979ef3537dcadfa3eb1854fe0b2a09d8bf69ffb7895b43f088c17d6a7c4814aa1ab1b66dd6bdddb4e4d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b0ca56d39bca28bee71b0737a8b311d5f622322e4d829e88ef4a98c1990b9a1b44d3f3d4437b95aad08b586ee9566528023100cbf1aee329882c75fcd3af9402b79be9311cdb1eb5b737e72e69e5c99f38a9708ca13506924f04cdd9bb4d1f0f580be10302047c435bb500673065023039d85d5bfd6c0a5ce23f7c44e4454c46d32a1e043b73fa40717fe69c55b22012bef9bc892d0fd29689c8691008d1a77d0231008f0cccb7b86c1a9e6cfb5119b1385baf7f218431d0287c9a97647de19750aee966d6f56542b81c40466b3c6643f516b30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f56f296c2662984d5fd5893b41c408ba37cd6c6abefbd4395955807fac8d851a86fa63756b6773741a92de2f9f710da2023023ca9e5e0a76e87c172ee561d24a5e1885c662ca76f1403f2120927a588429070068dce6296e221d6078d2ea66ef30680302047c435bb50067306502302578b42bf5d08ff1526a910d5fe226e355ac2d8b9ff321ad87f3c9a6977fe1b764ac0df3fd9e9c60bc04d1d0c4cc93890231008471d11ef06c33197ed67891eb6a662b0a99b430cd7a91976138481e7d6bfbd5ccd289dfce9b72c31ede45da9de5e51e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e9695d45e9852d0d32f9d59f8babea73bcfd8ea6cf4ce62d249925352769ee76148a5b5cf7c9a57f12ee2f6e6cfaa689023060f1dfa3c15519282f657e67b6547f8a98a9fd8b8e52169958b726f7cb8816822d9e91358ede2fef8735c2caa6b35ad30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100aa56dfc6b44054475ae7d568521990239d3f17a36304cd42721e016c4d7bfbc1ad8b1e7c5d6120b74719f7714ba2611e023012edb954d4ca1dc6adb7cee32bae0723fe47d9ce9057385255e183da4e12873ce965063f501ec3e209ae92d0f5ec63bb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023019de10f99b1bac98192bbbe40dd446bae1b3409f5c9ae3ab4b9301d295c201ad5c485b8b1a95883beb632b1aa17626c102304ed5ca7ff8e93dca3a14aa635dd10f82b806bf0769b78aa7e2f92523a22a13b3058e9843447a5ea397193dfa9e5c3dfd0302047c435bb500683066023100e1b3e77ea3eb6349cc23644832d3a7252ce10fd088b0d6cefd8b289cae0ae138c97828c5a2513997bb56d0a07c469358023100d5ac9018378e16fd423211160a2e36973909f63dc85f0f0f49c8b38208bd267840dc91a47155bcf61100dcb26c5491ca0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100974d2a542f0ef0a0508298c2ec2f13ca0cdb489b0a66db534815ec38e256568d76620150393aeda502d1ec516441fdf30230023878e2e49bebb79187f8f6dd589ec0638581fe372eb3eb3a08b28461ae9906ff40d52f79d9e8caa68fa1e3e04b7fc70302047c435bb500673065023100c2aa77f5c6bcb9f92c322d88b4f2c724922e0c630f4ed8b55f3ba03f8a8bcf0f36832a70e6a00f8cc828f7f2df3e590902300278adaa26c7a74bc69607d0399b68fb67a69e57714a803524be4408583be25ad5f2c87ad07d5aa8b6a47ee326c5f9d90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023023a6f5c2722489409039ca6c57b96df021ee9d604a6e0f2fd8d3787dc32fd55cfe6f49cc84fc3a7269eda37efdb81fb402303453e2e1e32ce888ae503c906398a9392d8e5e200bca388361243ce21b6eb846762df4711b3e29f6e7d52827ad2902bd0302047c435bb50066306402300f7e80ad08e7d3ea4c8c07c697c98e57bb98a7d92e209eb5871d245c26ad20d7630c6dbf10f16d5782475505a1b01c3e02303f42d3931ba960f524675cd304a4bb41aead230fe515fc660e0d0e55774106238a2c03c4ce4b1b2f8edb900695bd8dd10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307761e11f292c319aaf7860237e020089a0a1f83035f39e2d38aec7043869c33e8b723c7227fecd6a27be7d5d5ea484fc023100e2422be26bc1a1cef355cdb1a63b78802f2aca40fe3b9cde9526b56829206d82dc4bb501d40b91787ad71d1c3aad32d80302047c435bb50066306402304b135df2b2ba171f6592e3d688a742cc7135a706b8e19b4da898aa04c05dbccdf11481705e6e9690eba2472a957f049f02306d848cc0e9571f2fed476b08b0533733d583f5380499f70e3d398c10235bef04e822f2ce39bd4515accc2f1cafaf77210302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305962b09e7c20a4aa4601095b81c1976b331b7c85852f2da4fabf01414b238a8a1ed0fd1eb73ede8e26e199c0766d582a02304a4853953ef550955410ba8437da91cce81af98fddb9eaf349b41ad768ba19b59117a65b3aff03406cca34f82ec873550302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b389c7d7fbd464ba975d6c4d2b8bfcd4991cbdd55197c55155f4f001f6759cc3f920af2bd5dec7cd76af17c74f426e0d0231009311658f9cf1e53b81f4eabd729663258e2540a4016225338b6c315a58d0e881c20a78068e2fcca62079f1b9509ce8090302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100eb62c9cd8b89fe5a4eedbe3c2956110d56ff35a37c9b49b289071852dac94a9aa87b076c0be87fcf1184742790a8ef3502306bda58b072978d58021e35465daaff9075980a27247a91b7e39f76bc4883eab8858e4bb2d3bdf087dc4c8b1441c527710302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023060d21d0c0e49be5898760378dad5ac377a7537081fed00c698269bbec0561eecc91204699c13450fee92909144f0fa7d023100b0f6dc7936cc2f13683414b9100f340525f00848dff6803f09e24302d34da5126d5f42eb56676a477a181e19197098620302047c435bb500673065023100dd6cce8550522811cfac1508e3311c0d51608221d29e6d660833a00aaa044ecb3a80c632b68540382fcb3842d1432fa80230775394daa2dcd411ba815ca9a758afecffadcbef8f7bb4ee1694124f6640ff032cd2df29725dab8340c679f850d449f80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023018a4fc2c44c19f300556da970cffd9fb55bb08bdb96459e999083c9c7d2fb33457dfe6a05d5f37aa7218a6d41c8bec4502304f587c14557cb1115b6e99092fa810462aa89ea3740537b205484b279776559ebe8d13a8e2513e5a337a9240e0f795610302047c435bb5006630640230637e7de93de47dc426bb05c34d24801ed573b19283d36ad6fd7e2662de236cc4840b5cb7180320dc7419a3c67f3d674c023005a6512a1411f573adf1da9505058e9263b4aff5c849e0e03fcab49038a3092df430e47c42763a2436e3f3b13a527c040302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301acd2d4551a838689d47f59d8f1938b33b4bbd63a5e3b3314b7040fb3182a0b3e52135bdf32b6f811eddb4818dc036ad02301d2935064a10bc85911bf4a20b00b783e6cbd69a188a0e1d64cbe2885e0ac8f8fceff86672e942067a2495964fdb4d6e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303b0b8a396305222757ccb55fb35f2802e50ebff48fa9735d96950782b34ef0c122c003b59fd82b6457da3dac3a4b63dc023100cc5e7c7eca9e61a65bd02e4205675e14e5b94d1f9f1fcca63379075d91076abdefe4a19aeb99fa860e2b5eddc0899b710302047c435bb5006730650230045419484e9c0d3706f974e7cd78625812d5ee7acb0961a9781f63eed423fb7dc615f32f22e64490bc276ee9c1b67e91023100b127e3a385bcf60c283946b5aca5b8dd977e511c982b18efefb74d00c5113cd96dd2722c9fe5b8511f2d2796c2f0c4d40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230127dd18cfc4a68a0c774eacf95b4d31060babde48520e8cfe2df51fde30bcea45d4aad5e420c504344fbbf90292234880230315078daadd847066baaec0a94af0c15d1931a9dd4aee37a8401ca990976c56e4200d9fd15f44ec4c61f914f6ba2c3630302047c435bb50068306602310081e6455ce84cc5a7acc511db6df54de74a4cb15d1657369cb245eb0dea526ae8ed23cde50ee72ec587da05941551b346023100e60d5ffe7e4918fc86df2854a45143e7f3a95822be8193f62e208827c74fc54f2c4f908002e1f54e6f251d8dca6df3180302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100adc4797f1dbfc06f2b7d0d64ba12ebf2732fe5d62c2adc0f830d3f3338f3e39673855f38e9e377c13ba49be0c8a64b7a023100b15c05be57bf68433dbe385bb4ae1adb358cb3c9e9538a553c4c6e81217093ec4510933a5b17149ef8f73c4e8d154d7b0302047c435bb500673065023100a4755657f327c1999d4108344e8e8b61fbce0f86238011e32e665b646cd34124be72cc30e1c384d82e0ec24ca9c1a8bb023015bf724cc66e38cceb68a10bc20a19c22fa7dc80f7b12d6b0f1bac8c8ef6479ae359f6d38e7140d5e78402e3255a1a510302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100becea4e20d522bfec1810e8117719059d98e2b5c71d5b3f1af84b21755c1f68d8228a751843b64a1dd0e7a6fa5c8482602310087bfcb43ede7074afb7b63d77dd366eef9e8a568f8f5ed41605e3491cf774153851d21bbc5b4af5d4e1323202642a0950302047c435bb50066306402306f036e1ed548c529c169dd0fdccf305483a0ea4f6a47c4671587469b21f5bba1dd465ce5faa45761966646aeb1ddbfb20230092c9433dda804c816308d4ff2355c9a5662f9b860b9e624a883112ec03b958625f9cb5cd077742106327c1986d1c2460302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303b498b3b6a0247813ce7ab498059f0f23e7c74f9e20bc756520971ab88f09bf0625bb68ce015a6f5db4fd5496f27d9d30230232bf2f742c96a6678d3ab905ac7e352e9bd5a94e6728fbdf239ae98d853224e60291e3d4eba2981a025af9cc02ee4870302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023040f0a17e3ac2f8b9e9572ad2b8f22c2e6243c86ec195c45afdd2ae9ad04a9065c1d6e3b6cf9712d75f7417e827800b8d02301449fd4cc4d792995bd35c60138ca5023cf4a7733e55d84c9e9ebee0619237e0999a057202ffec322f27789f5b0222f90302047c435bb500663064023036968d1ba5107fc07aa3d6106bc429ccd3c163c046700515e4e6c49c1dbcf4f6f6109cd041ed1a2921a208862bad6bbf023031326f8feeedd2428978507383f584fc2329975b27c974cd277207383fc275cbe6e6d5fa67bc5c3a628761207454b04d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307b8878ddecbd7b0d0c3968b676870b7b1dd702cd4a628751fb372bf8195b9fb299ebc0410a948693e5129ba7d776055a023100d0c80d06c0f04c13471f12648c261aa41436f744a33298f93ec5395000e12831222fcf55bae7afc02b823f17b69a58720302047c435bb50066306402302cc4ba4a935aba05a60ddfc5d1c726407473ce7d057c06ff28d868be0b1095ee472ed87799543c7201b09f4f1f4fc7c10230239a6e022d956143dba561f8f2dc100174f30f15ddb1f06f0b2972e58eddc0bb5c6501a85ad0e403aa67b86fd752400d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100af4983da8954f3385550ac4e25da04d80006554aab941443a0ea7fafb1a6b859d398f7f5e39021a63f3196c52c371bf50231009e7ec2dd80418f890900c460dc372946a0f068319ffa13be3cb874f7ddace5f1da1e928bfc80131e6233db945a429fb70302047c435bb50067306502302e97a3fc01b4916c7ce1a346e1c73c7b7a4b8e23bf1ab8a72eb1be62e44f8310549a1da7b26220236ccd4cbb0e074c19023100dde33410d6969f77a4e209db89e4db41f4a3dcc0c2d5454fbc81b528da31416555b7a340a77046934e2edc0a1c8689ee0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b35fd50528afa1c431f2c4c7032b259d6acf19926a280cf9e4249aff8ab7d70e164cca0d8e208492fe82509d0c33d498023100bbeac5f204d3f8adbd13a946f84d6a81ba58763f1423ea5cc747a73a2b0d450f1953cd937046665b88501221bb6b02c80302047c435bb50066306402306e70f07460d441c6e603e7e67c30767c898d9a99df8566a27a8b20f5f0cab145c174f97259dfe1d2926685f85713d4f6023021a7a3b1f3c160adc20f472028efef6c39e1bc0b61836a5fbb7102324da85f27252ad4997cd2b3c5c097ddefe54391f20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306cd671b616528f25d7fe0e341d5fcf1447152892bb0855fb11c45353a5a01f22fb14010964ff04f1d333598a5cd1763b023100cf070df7d385d77a0c6892fb9725740e0ec972fdc5416217afffcc13c8e0ae62c7f4c74665612d8bd1d6854ea200dfe80302047c435bb500683066023100a282c3cdb4e65ee7e0b1dadd31ca30e1f914b7294a6cd24bf040dcc498fd5da2e79c66e762354d22af35d9a9250b439b023100c3364dfaa0060f6c99d86b406172c8e79d2a9bf896550ccd0925a580602b08c818ab7103889f8ba897e710d6adcf23870302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c29fde40cc6ace73ff38e235ebfa5b7c12a04a2d1a0af83f9461eed54476c14d251ab913f00ef27c37f68a99ddad1d0f023068c61200ab2a329962e07574c894558cb60a232accae0e68a85589f1a5d2dfb3d9bca7f1328f7807eb2f63a9930827fe0302047c435bb50067306502302c6f3aa10aa1e9ab57650986b3334d465ec9432af35b7763433e14e7dda16d899badad38057933194e4d573d0a039b4f023100d83c6f3da9b49c051c57a3bbd8d94390542d36059f9f45174da8c6c4632c9ed4f8cd8e70e280aae5d40ce16781e3946c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100eafdaaccb7f35a17fc90499fb06a64270cb902bcdb990e285fa523093d8c18044ba53184b142ac9908b6d846bf983521023100b25cb89481ea6030079d34d0021174a3e958438f518e9729cb8a1020fe4c3a7ed7f7cc8dbc809ac158aee3c876055fe90302047c435bb500673065023078d6ec0c91cf0174b38e82c28de56e16749e615473a4f9ce8afe3118f373c09f8db4b737ae685ed8bfc83f2e705cda3f023100f20017672e47c22a5c2b9ac1be646ec9aab16c1902164c660a44b3d87be32a2b74012a62d455110ac92358b52fc816060302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100be901c7e550d530cd1f4e5d8af0e89b89f6785e7447c136d78c08f072458a0dc6c13fce4be9a501a13f7463480c9c2b30231009738bd8788621c712d20be35c31b5ebb3967cc4663a0c391db2e622d386f69f0f45567b4d0d71e440eb29c918027822c0302047c435bb5006630640230082b91bafcfca86ef00a9e47df811562846857a2b1cadfb54332c97733e2b0650ef0c2447660f31cd24e07bff77fc0260230504f8d3db94c74452423e854b88593668e802615fce12d70acbde348d79a71a21b8db23b8899a41ad962fcfbfd7deb010302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023049ab3da481f4b6add5fd415c72e3330173d135828abbd98b7378502f73229f144fcfba677ee0742caa7a74e3ea8596a90231008f2648ce76249e561901d33c9edc254f935a7edab47060cd35d4a0c3428d359b7cabb40b775ec3920f46e69c963147550302047c435bb500683066023100e3d380eabe00b223c1fba436642c60925d768fa232fb9dd102904deeea74031cf10a089325cba18e00f35f4a6ee4344f023100d98300741c8c3ca513a847d16d574d389ebfa750ecde613e828dad4451b40affcc833dcf2cf1328105d424a6af1187130302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e40a001a63de34574090e2a0e7506fbe8885d7c385a2954f3ec341d776573c7768dc6c668b3ffaaaf833f42acc660f9c0230396c5f000ab4667b610742f2ae2af435d19ac22e00afcb106a1cb037cb4012c2df450ffe4a5338c13ad1528217debb060302047c435bb500673065023040a1f161498a167c7dde2894f352fff9ea8fa0040ae9e372837356c3c7171109d6163e9989ac2e646b9e3645c5827728023100d08a82e5c0f98f0cf4af665534198f0346ac22466aaad381d3d37f9872da2dce334629983d2e4d042c275bdba06459060302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d4f9704c0adb5d4e991636af9729b3b664cd1780b4202999e7ff8cc5f50c4ff0b9e3fd6d8e45de72c40e30bc55d31798023000bf86822b3e67db9b08e239565cf18d3f2bc2713baa6293f87018c58c9696b0728e3aeea432aabc00ff8ca3b783c3410302047c435bb500673065023100f8495a8ca176cbae341b4134da0eba037000ff5cd0974965b2d72e60c1d6829094bc15c7d9439f19064700104785f3fb02307fb33a854419a3aebabd40ebf215c494eda9ec9ba342d3a02aadf97cb08f8940ed6f225519ef8339d017ef4c7b850d3a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100fb562891de0506f352e7561e572ccb49a1d99b73f39c9c89066c059250e5878437100a6a1edc8e5a6fc317194d46ccfb023100d11752f0fb4a271817669003ee1f55041ab6c95c05f640d784a2c3fe358878e3256bd83c0f43fbf17ed007d4112a03e00302047c435bb500673065023007915a1e2280393d5f4c19beda441e515b6c13399f3a72fa6b83f280f7628ac71547c927e8eca54c6586d3b80a40470f023100fd2f660bb41a90621c6411c3ac7337fc43e2b4b79f449d82f575f0f44dc5e548ec8fa51acf925f4946dd4ade64c11ccf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100bbdc3c190a1df6ffcf668b057a1bf81b2c64db48bd523823750273018e732a69fd8c7ed4ae4d61c5f237e769e8f59748023100c30b763e0c4ff05c4ca35aceb9abede2c7cc5c93120d5ddf42aa36eecdcdb612ea7338e9a2c11503f94968124985054d0302047c435bb50067306502307abb28dd58f5b8c09e995e42535ee96e63aed03e195670724df664f712efd41b7513679bb30b78accbba5b96cbbd456d023100880c2ec813df43a79dfe3d64307e9bd9eea7a1655c3fc42cc3966ba447dce0ea7236b1f07a125b2e21a91e614de7a2c60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230008f46125ad127677c0d6826b28af7c6abf3dad1121f6441bb30a9227532a683f6185a1b6a06115e7897b3cd4f0e2a3d0230657d9b0c6a7b7dad47dc38c45e4ddbc1e206cff17991bb9a5950273b7216a8606b2d33c1fec77ff1ce554edf0e7469de0302047c435bb5006730650230270c8ae467dd57d5fa3ed8ad490c7fe8240e45fcda7224738c33d8dd508a4a205269c48d6d40e6abce62429af4674171023100f631d6f8f3a1dd8a281c2293d805cbc25a52057bdcbb531ab2a3e9240cfe8116ebc1304c903ba24921aac3f4475bc63b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f05b38398242bb1c15d4dba927d18bfb03655317c68ba032959eaca048d2a0f78c11f6e18c49282607a93cd5e93463e2023100f93b16445f5d802239bb5f836125ae7666ec51e9fcd197bc22b6b636955cb5f4bbc3a490566a9f3e238b7fad1bc91bc90302047c435bb500673065023065369f48d8da1a2fe13890d2d0d6c2fa349787af6afd21dfadfe78c9298890f73c975bf01fb9a56011685b65db87c56a023100c722721d105136b7450537d9a834c19d018b01dd5d057a85ae1db065f575a6927d2d414881b2fa56b6bc13b9913ee7c60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230406fe1d3b8712512783da0d1a8d762bb144db83fa03aa628a5709aef749e6dd220c8711eca963560d637584e0e11ca0d02305668d3678585e33ae919eb5237365c4bc825cc2a97bc518bc4557b71b665e88d1652807297dfdc5eff87fc94dc1ad5e20302047c435bb50066306402303fad638dda7da1356b35a1fde11d5e5c2a908832f2a953380ff866e65aa0accb76a380abddc074afa75a9f5284036529023046a1a1254d3b5152c37a3c0e0992bcde1d99420d95dbac5ac2246f1951e206eb32d5aeb2440c207800ca1614d274fd3d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304e4e92f1267f34bd2b79c83ef9f73bfde21694f1a9b0da5723814dac0375ad5aecb13290730ac08fbf8504f3ee464b27023100d6ac2d60a7178b82d7b40ac2deba15454d13a62db1d31941a3d1c2db8af8742026af60c85bee58448f032b0e68c9619e0302047c435bb50067306502302663de2920455bf8274368c40b8ada5c8314db0a7507228aebfcb6b59e311bbc7d85612874eb86b545c1406ed20f14450231009637f2f60ee07990e248efd8af62610765a9a6a54d456d39dd783bdeefd11709515ca493dbb02221840b4e766f162ed80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023054a43689ffce690107d541c49e2930d2b20ea840d66b58cc50e80dff689e9bd304bd5cc3f242b0ea805929bf7720ae4102307dc54a7d12a32106b60c95c7d63040ec555f20cad765ed07b92cbb5b79abef15a0e4ecc7973d43c6e9ff581a0a24301a0302047c435bb500683066023100cb7e30526759e8bf3c309db010cce10e2bcc88ec35f776ac6bcea8c471cc5e0cae3a09bec768a401621e2a1cb559b3780231008f6df0d969750054c1d9b2abcae664e9abbc18e12da331b9ef3c670ca4b552afaf332f52ef4b36353e84ecaed3b406300302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310098bf8b1ab46568e94f5a056b44924b0c1a3ff0eae4c01ebd8d57c0c9991882d56e00f4c3740b3d3f47e432bdd44730e2023100fa0bdf5d83ebe005573af62edf089820c9fb54ddb8c392eae046a1f0da15e0b899ce44d6ac9a447fd3a4c5357857b6470302047c435bb500663064023047faa8fe025c6745ff23b28cd7a2393485f21020953d1d6e9b523bbcbafd1e1d311666a086e0a51b482e5c3afbf35c3702303acf9e98f53887d5ec7a10ea26ba6057d0db21acc5954df11706263301618151a32702cbae66544267c7761b9678659f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023003f65f0935ee1961be85890906c34a3d0f01c2e5a7efc1a5b2829b4b8a615fa725693999b1cc3805dd2d7df728f7ae0c0231009051542fe4aa675d01197b90b531117d58928674e7735f33c808a2f15b4a140f7afab7aaac7ca399eb2ef78b9aca0af80302047c435bb50068306602310097b051942971e7a688153617a09e29889fb0b5ddc1fc52b5bc19e18cc962e4b61dcc22859c13f7cf07877af1d2b93940023100f66c1696d579ca2f733251e762ede8dd1e3827921d8326276c3ae97a7038d8a7a367701c0a4b0215d215fe401d3f1c680302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100de3f00618b1221f5a2c3aa903d493f69e4ab180c9abd57a69f1ae420adbc49b1ae15be3bbbf388a702a18f38b449bcaa023001d40ae3a7c7d7a7a67af7a28c7aa3264dfb032102063cf0c6416c9232deb95bd3d89ab5940f2d40ff88d26fa9c21cf70302047c435bb50066306402300137438bce8df425eea3f9f87d19d6c2712b18ca73e633082212982c188ef92269323371f00990ce9863309d560a4e2702303897d3aa1a0b939c75dd752b75933862057526a4911e63a57f349ac5c1c2489037ca3d6ba2ca6426dee02450074e2f5c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304b9dedec920e065a2f37f2ca7b39a7ca43106cc5c1bcded94bf5c2564d4032d93a78764579c86cb55c8bddc07a70118f023100d74aacaa2672dab44b60650d9f8f1eb7106a901e03775d21dc12ace84f5ea4d1f7d77a11be933e3c16e48ebeb9ece11c0302047c435bb5006730650231008101c0ffc565122fcc8434ca5b786d11837d0159e812d00542e4f9ac2c0c6f446a3b93207745492784312e36ce0421ad02305efd69daf95238544963ffb5d673e34965d4fae3f951c24334808b2b0c588ee6b933085d9c3af632a14516916a005e550302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100bf8ea426d4462a0cbe4d4c1a57ce4218af81a751141b33dfb9635c6fa420ed7acaed979d9cae0a72c3089ad6351f81b3023100888b4865f7e35ffc326405a35744c835786cf4b30923b4be2295db07ee39819e99126c46252df5a193659f9fe1af7ba20302047c435bb50067306502304795a2739a2b3ef3dec38ff81a72ecd9031bd79160d8fb62e72d85d4b4e2b0163f160298a0fd281d13852c3886178de4023100f7afd116be903547a7d044aebfb8c1582d289af0bb3a997f77cee38046e1230ef827ed366f5c72c317db05baf38e20f40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100829400111591267bf20fc442e37977a0ecd82588bb38c88a7ebd6153c7152839b7c1c277f37ec718ae72f7a27d318781023100c05feff0e99820b72f78ca4376870f407fcd821744a49da47ea87c078cfa60edae4e90685afbd7e6f2431022cecefc680302047c435bb50066306402303f0aba34e578751476d8dc6a5fb0b9ae00756550bb7e292e70d9b73fb4f123170c17df983179306a516aea1570a3e5cd023000ffb165ec8801643fce7b583b4d5b5d550c5b1ee96050f3bcac3998efe91de4ea30acab52ad110f78f6b256a68791c60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023069729eb76c3819317ee5f8856c83c8ae725092677e3261c928d5339b6527be371ccf31bbb700d306ffadf315c1c178710231009f5c4baabfadc2868ba62389b53db7a212fa2c4fb2afc60252f6eddfa936ccdce3279e170579bb8f8a57b27e58a5f90d0302047c435bb50067306502307f8e78c19674c72b270254448dbe6425ed3aa8a77f5e36e3c9eca9835c1b3955ffaa84a149d268c156ad9117e6b9132a0231009d4d09dd43a3d13023f8735adf0bca3f4444c648ae7d60ea410a357299bb796b3024d6e1839be35c9153fd3a90ada38d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023038182a2c1ff5293c591ce4d5a31b0537c14a15f1bcf4f0d926da44249d2bc4bdb48d1104a2732325946aa8eacc13833b0231009f3f0dd36c0a3d1890336f6c67bef3046d53c7f6fbf56b9172d471e951632b1424f24b8b730555cccbe6ffadc186a9d40302047c435bb5006730650230481e41546dcece3d3391d00585739a608169520cea160718ffeae8a77b51bfb9b081aa15ceab1e954cbe30ab58c439c8023100905e8225aab15a254a672dd44cb3052bb0bae6937589f3d2ad92faf02cb5f92a51980ba93e45f47784a93075413c9fd20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023042283289ff59a21fd39dcbe042612a808129435756cbe3e08157d2f08d5f92cf1214b6b6a3e48425f0541a6ef20937d6023100a93dc267a4f2905c6a7307d80c96c8971e194a17751b9b3f0eac5bad80cf0c2dad242e76e9f952173547d4a05d6615bd0302047c435bb50067306502306c382a4fbacd60423517d37325087ce891ea1056658042bef7525ca4b72e61213cbdc51e0034fd800f9c308d18f3e73c023100f3c0b13f518386376e6c46149bab70a1b35dcb17bed8e80ad83ab5bcacb0ab0b06f15e97622f1395b1ddb9594329a5e90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023032228b3d8d99fc8b49fd2bc6afbef6c1474b586ba64252592a7c0f502ed7d47844dcf26e2dd2b6875cd5f0cf05c17986023100b90841d73e6fc95495e4c1b0d8421409472965efc9d426dcc0a8c835a5153e339cc9f8c67e4cc80187597e2e8b9ef6750302047c435bb50067306502300d3bdb166ca7879957b8620d7b64d9ca9aa596db14175736acdce7f490c1d81d1e70dffed944d4cf744602f73b6282f1023100e31b1704dfb8cba01baef810c658ecf28a00849414250b54942385689ccac854be8169391de093d0aeb8e46240c470790302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230104807ae85788cee6af1aef80124526af619e3c40a812c149f9dba425d17a863c281ea7a51ceef608867ec5a1d533ce30230624ded010a484cfb1deec7094fb08f56a24a846fc3a49e418a8dad6d2b0d4bbf7b98bbf014a8b8da503f2cc58c2083570302047c435bb500683066023100d0d8eae0d099e747fe014d517af490560f034e8c55c25fff45df6ff86f9e50cdb4200a2baed99c4e3b79254dfae00e43023100e2003718e0253915762681efd8f2894ceed6f66fe4e43a7da4ea2a01e87864efc4644b00a744c8938f0d3732642ec0350302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305448d1ea7ab41a11c299cbcd0fafee5f241cf5a981fc9d18eb99d1f9c94693a721e2cdb5dbe14123fd0dfd3f22cd75840231009946c217b68e34553304d84f97e6e805af93f8714da9fb5a5335e00e9e6c92fe63155c26699d4e549b34c0d23d8ee4230302047c435bb50066306402300b038cf5989ee1ef94f2527027a3b74f879c78938835028cea5f7b6469ee9a6cb6bd97d4af7fa109c0811e1c371535aa023030c7c1d46ae7f4d7b31fb0bb022f54600e5328706ed3e7c51b94c60969d6c1d25c881efe2850f2843461e24f842649660302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009b98b997f08e1cc03504016ad78ab3c962adc1ad472f4b669d28abdf4f8a4809d5689bfb8948390c7abe6786d99afd9c023100fa7343a7785ae3cc8c15b5e0e1893c6f41d36628c004e724a25dc126205e8c1bab471492b47bb77191dbb8e142a7a6610302047c435bb500683066023100b1a486099ad6cd60b50eb65ab6d9870ebdfea9f9d741e3c86d03e861572fa2baadfd02b6178a1fdd46ec506df0dc79ab023100f9dbd5faa31ad520a5b82fa43cc37383451d81f607c6c50d3f991b2e56b5baf7aa72c0a307a01870424762617a6974f70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307716a733a00a948dba607ce649d92101080758f76b1c43475d6e65091cb473a1bfb6e971c62d433a1ecfaf4274f74f5202303a3097bfdef2fca8e7585a55f4d85eae46ab0bee3b3cd6edce7416a49b13e6f78cf825c547c8c1147161b9a100e224370302047c435bb500683066023100dafaf67e3f508ea3caceb7c35823148a41ea33c6bc870977cc5251a84ee9a079eaa58d1047630131642ada6d39c80fba023100fcc2b4caae08614eb482908ee26a8c66c400aa56510f802c5e5e78f46588b20d34b783d23156b9df683b4b44808f9f3d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307521e5a891eec1f9a17860bd2e4dc52e032b611df3937b8294f13f5bf09a76804a72688e056911949434625913d85eb1023100ffcdc6001784bc61aa6f360d9ab4eb113baa050b18af3d5b940a5c3624b64b06e867078871c4e8f6a52cd7dbc13fd3880302047c435bb50066306402305ccb3ece05fdf12d143e8a8a0e91facbd8c05998d607a74d0504199e5ff36caeb464a2da9ae460ae518bd8ef14520f60023039ba5b032f3bf8d81e6052b388b43a563d4ba1beed640820acff82562e14daf670f2e864e46d24495d1abe1ae6840adf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304efb91b0ee60f18fe2c0f486873637dcd72ae68959593e3e9ab9b99015e30faf67bb0dc43be1303a2cecaf7a88f44d39023100b21ef448b0571d124e0a4b36877616c74d20c1c21bb782f9e3188a6f31f566f5877287f396cd2d2bbfd6356c74273df70302047c435bb500683066023100d219ef9764ab72c85982a69db55fd63ad72cc7343838694dfd4ca35cbf9bc005a9670eeb733a0f4b1de1b69fcaa3294c023100d24d7c7d9e97bca7f3c5f3483a8f7966b82b5d014d16560e0fa903767c04d21e152d61fb446d64675d68f5ed16c0ee340302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f26487fbb6e48583ca97da7c25bd940c6cfd710c1c45a22dfe344b501647331577a86dee7ae9e73f3308a3950faadc23023100caad57461a7cadf04085e7ea641871a79dac39856732f99a4dca4e74d63765e7c4345e8430b6ea70da42d031bcf37aa20302047c435bb500683066023100b1cc52176f1683ba0bd7a89aa7e104281ddb24a9caebc876cdef0b7aea1483745d4ebe47baca4772985621cbd8c759e0023100805449bab19504bd7e8b269b9d9bd512afaba616c56534d34a76a14039718fa2d0ebcd6ac3637806507685c06c37f3780302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023061a86d707b4650cc5d7e7dcf0ce159f611933acb41b40773a4c0a77d8ea7021554257345531ce32be95aae68655aeb29023039761d9439edaffd410cd2844d6634928f9288685f9916e92377d4cec7406ac1fd315b4058328c06888a413215b23d9a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023054a022f3946632456fce7bbf8cb02e20d30198a1b6628d40909417e3fd952fc065b9df523934d37b94860133fddf3444023100a1b5759d42ab0f06456934d87a36ad7f4403b612c0a32ffcb7460636f34fc06285f1bd1a50ff3b070a64577dd77e0ac30302047c435bb500683066023100ea749595fd48b1ae0ca2473584fb5f0c5eb8ae540c2bd0152109568ac3609801999c8d2d8941681f31adb040ecb0949c023100adfa3fcf3163a4b3344f87370bf8e48c433c819c2226a55f72d39aa5dad4641fc9208e7b6af260d9ff3f7a86e82583160302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c3652fd94f602687c7becc2f952464978651c3de4e168d99fec0ad03fbccd11257eee7d71c7c08961accb8c772fb8606023100d64f875317334e9608b0d4865c0aa4cc28d269637dc5ef201527aec07228f1f29ce4d77ab15d563bd51cdcf8384a8a830302047c435bb500673065023100a93d0ea12776447006fcd9720728c6befbbc527a4ab9cb0b6e10fd0c9fda7c49ea253f60bdaa0dbfd03ebe7cf1447692023000c50872ef1fc1ad1761bb1dbe81153583c63495b5182d418f9efb7fd826df0ecd7fbb91802d8babfcadc1dc2d3a6c630302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e97989f5c97b1a6d0bc8ab17065b5f9a21ba55ba62d6df99b0e8f5054f5bff4a46beb9646df57b990ba01d8b4821b585023059c95e9d7dce6304df33da41eb57beb20a15c8923ce7965b1afa701455fc35e815050bfa7e2a335f69d8550633cf8a320302047c435bb50066306402302423cb8f3e2f9c832483b1ff60027e09de2b4129b07069b6cdf04de4957a83f2afd46b0c2b2b156a1c7ee0fd30add11002300a60b6623eebcc5dd2be21d4c7aae105b19f88c121afeca5bc94b91e4c12959387458b80d24be5847a39bbd78745023d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f76a408b5f5fa5d8e2a4038256e719bbd101ab5b9eef00e66217f79503c9268b4f9287a20ce3a29ff727a01f69ae67090231009f8fd035a711c255fb49faffdf1b12f5c1419ae7d69c667c617a16a40fa1aafed699eb45d7301c2ef3b8de926ce7857f0302047c435bb5006830660231008eebdb123255caa1fc3e595c0a805a5105c5574efbcac9a412aa219bb295d362d8d1e49cfb584555c817866f5222c2cf0231009a752fbd4a7c32464de48f7cad6b3eb1cc6d0e0dbd656454142a8edad4e25399d7ee2af4952f4018fefe0bddd7c4f3b60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009f3f763776ea42f084a5746eb6977851da1df4f6d228a48cf0b11dcd6f385edb90254c7d3eb66f632e7bbdf7802f3061023100cf85ed905d78b2a327cfa5404bbeb06b78baa57e3a626d9535aa551f791cca5d5b06510e288763fdefc89d24798b62100302047c435bb50066306402306f225ccb7745d57105207788aa81ff090ba4dddf7afb52602dc1ab6435a811ecfaf43fa3666fa811eb0af15b8c2e310902303b6fc874fb5d70132bfed122efe14f7b501b0ffb7ab1501c571ea1c5b8f6d96d167aee1bb8f56267e44f77d0d2aaa7670302047c435bb50066306402305d4916a9b397092958c49003199b496aff5d8b8dbce9f3bf816c6b221566c8bedcf93a5871abf566b5170204a8ca851d0230160788f6821faade4ceb977b6c220a7ba1fd90e32de4a2bf654922211b81ea3e2a819e742e4c4112368cff672c6e2d750302047c435bb500673065023033e954839e6c33f81754b0df9294ef2c4170616e98d9f66ca5eff59009dd2a911b63be8e7cc3e8a6b34518423bc46963023100bb3bd6d1c7f44f00890f390b04ad4bd3dbe832b04cb31fd06cfcf2e1f9232d2837d93ca36c1238149d22502d6e2d3e100302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d4e353564751bffb36bdfe25e29a80ee13b01ec174b5a38493015541900de44a3e60052d9cdfd8db058350973b317438023100f501a788873317bcc7167c501fca897c8405903053263665fca6887b38e9ae0512d91fafaf0323b799c3849ebaf0743e0302047c435bb5006830660231009b6e22cb474a809611b91fd59d4650563f1acf73a31b17fef027f2b90529c1674389c7e8578e4a8d9965c40fc8fe1286023100cf292952e2bf33ac3d9980d8f031aca520fb45e41c1ac221fa4f2a42ac8acbf0da2d732549ee18aaeb228874af6f154a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304dab27399255bfd01ed6e0c28d1233cae001d4e13cf09124f3a9a91c31092a7c316f6d0203c639f5531093ebec4cd105023100d571b70c8ddb339fa3e4c90456fba7a0eecbd9fa70abb4b2d9095f121b082e73a4dd1722cbfb91e17e1e6efb69800f420302047c435bb500683066023100ade19286e5cc2e9addd46b1dc1f3ad17d3d689c6db1214e09a47420f752d4a3e63b8e78d0fae00277f8f9176575e3ba6023100b8de0574c0bf0099fd5a86ea1f63071ee6867411e3d5bb1738a9376bfae734aacfff2b0b3c895b5e536e1dac1f2418a70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023006e7974e1ad6830980f1a8ce6f45a77db4abf1745aaa7e50f9cf9523a4fdbbfc082df1f81b2128dc2fe8e67f7da05f4a02305cbbbab4a2d4d476f4df527b6f81e4105b9c25e05c97a3ed4f8c11f5eecdacef2ca3cfe6ed547afc30ae3a52a78c82200302047c435bb500663064023013de6fea1e1d50621eb9a64a6e8c2ba0a99d339e02fca672c096ac44fab60870c1e2447bc26edff1df6ebfb8e005b64202305a9d68f2de1cf94cf758680ec3baee769b8d89a46568111708ee250b80d5e222485a84e48a520350422d6df5447135280302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300f436f5b6cfa84bb7747aa406470d10aec0cf1f4a842fccd5e1b2249da1a0d0bdd31e97afee16c0998185b26de7abbb60231008cc5100529be61719182b8a68325919c64c03e4a011807177e5d6ea79af83f7a20f41c58bf1d71452e22f50d78efced90302047c435bb50067306502305da020ab1e3dbc0634587a67f20ccaba007628c877da818b83fa94f836fe48288bbb33561cd8849816e30823e2301fd302310097c92f46c85b5d78d28866ad5b520bd57a227cddef1b87d46404d5efbe52da4efc0cec41c50b572cd385fa681f7ae41b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008e8ab2a87556ce1d218271751272ee418f3f00a805a1cd77c8834380c20a075241dc0d8ed359cd6623be8f9cd348238e023043cb90b4e45521dc6b928541f2b3cfd764c5d34fd98cc2b1d50f8e14e8721a0e8b29df3ff370c61580b053f025564e050302047c435bb50066306402300b5a820ecf7b72ca6bc227e1fd033515a762f9bd9ac0da655843e5e7fb751e130c2243d3abc52985a96f02c65ac7ba7002304aa8b9f8733f2f498137fbd5b5891dbc4e1ce308e26011bb386e4a9cafa95deefc1c1b24fe7fd1592e8975ea1cf71b750302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c6164a2e531ba2e7714a407d96e37ba1eadcd228e36366ff81a2c05949bc1b76b8397446dda240fcdf4897a21e5387dd0230175e171e691f2db73131e8bf071679a5256477b4767e9db8f4f5837040443203fea79adb5f53b214cf29a0b863559cf40302047c435bb500663064023007a23054e229d3f54126e705cedbb04bff1ea23518d914b9e83c026239c8ebd06cb3086562da5d5a74e0fec43a136ba602301105144946a9cb70a59581a0145e8aa2a12126cd240a91cd02a4b3dcc43b2e7412577c6621cfe5c764d7c8fcc257a60d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023059ed4f23564b2da2cb705dac209568d4e3c595956dbbea2d6d42f11376e198d3c265f23f22e14d5dc2d5dbbfa81fa414023038048b77e88a41ad3ce19c0932aececa120babe3178e9977978836ee71f61c2a322f716c334f3c21454b99097766ee1c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306b4b883d035bf5486607de370bb5ce74d77ef16b8b5cf160bb4af70ca47e35e7d71cc1d73bfaca96f4f163db929ea7f50230045787916ab94a428e950fd9c96260a419e5684226aefc2ed22ea553a56277079d1c89e28eaaf529d18cf7cc9a4044030302047c435bb500683066023100fba52f41711b5c04563f350090a791c5d7f33df520e4c1f6dc3022e2c6c7fa8eeeeb267e983439d8fb12fbdc4a3aa6a0023100f189c455c752791cd2cd4e4417de38338b504c192a252167f35d23f7616f7d5f5cf816601879cad26f6e46653029c8660302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ee5c66c922bd2378129b20f102ccfc7b20a175e13e65e9688d05bd4ada80abf2cde54832c873ae32b1018475e1f69da2023065ba20f28f4a5e392ca53c10566995e198ef8c95f332b6ce253987be176ac66b495ac4614ed7f73e65e49dcebba9f5ec0302047c435bb500683066023100f96af681f821655c71a764fa07612e7e085147ab74940dfee1dc8aa85a79245122d03849a8c2f73810045ba83ebd0841023100950b33fe39beaefcc72695f6b4feb8ffc713d85df8059a66bb879cf3da26084849e780affe9151ff4d532837370844030302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301588108c87da1f988c7d3e829e282584a13a777f2cf5c9272fd52757ea5256f8f75aa5920bd656ef7505fd8ef2f8cd81023100c2bb36b0bd938336af74928198d50cd819fb3f4c1b12864ac5e78982757dc33a4a2a258e014dc67e32dd2e8b075651fe0302047c435bb500683066023100be739a92279ccb12b7ca00ff8e8d0e39266df55ebbb30b0c221f54489736b675fe37f3b4e581fb3a14d83fce2a6a33ea023100b6dedec7d7cb364323bd26eddde896281f43b14999a65fb9949d3a32451d50a47e65adbd863603c6f9d200a6a61e8a9f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023064fe7bfce30932eac4540bd03851cc91b0782e4768dd467aa08a676326498b8ed12d1150de19953fbe0fd6467c3c9685023100dac8067b7678fb388f37c796c6719824a107ec7fe4bf8b22c5cac95c329fdabf328e6c57a959b31ce6fd925a83ac38220302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100aecabf8fedf8d14ffad924ee5789b7ef34fee2dfb7232adcafbb5725411ba439926988b38bd9011ceb6f12d42e70e6f7023100a1c4ab79573ae1c44f01ea214f2bb3d6daff26456aec8662f899c66bc7395051ea7de6f9af5837c9a282481f7aaa0b790302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e7063621dbc0c52e40a72f7064f19f21c8028edee320f4c53dcda75b93743303a16942feebb73484dbb04618ceff1e2402303c475cf9c0e489a25011e18fbb3ea56f1914a134f2937094ba4de90b2db36495f5ec7bfa09f50e73369ab9f435f793a30302047c435bb500673065023100c1b87d5d19fb90d99ac7113a8cc8e4ee62f7fd7f5a5f3dcb3df1033ba9e6bab44db0c276a23f5668e12c2c9ef6f86b35023055c38c8e6d034297b011518b2723bedadf77936e43488bd6ba00d5cc363d17f569f5c4f9f4629bf569f2d25f4e6bf5030302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303d79f5ac5ee60018f620d3fd05e768959fb51a188cfde76144c08c72941684b82dff1849e4f0ee64112fad44fe456372023100b00de3833eab938b4ba86d70ac3a62d319a8094d132cc4277489e3ca3769100c7f06bedbb5c34c1ae20b075d91dba89f0302047c435bb500683066023100d5a72bd45640772e58dac0c61e0aca92bc924c9567238845f1cf27d23de058de0181bac51d0925319378ec4292613612023100b104ab2a005f38b35bb4027ae25e6445912dd49819e0bf0baea5923a42e842742dfc30563e14952463e7621418d236fb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e9d986fab47dc7caa78cec96cfc5d9aef0b8ecc0cf1a86d5f869484abf508a6ac1c940ae66ef50febb89e0e4fdf71282023069e0b09891951fb6d20141bec33730abd6ddf0b42c116cff1b7889f8457d4e803df16e0ce68d7a677808f633a0ba58830302047c435bb500663064023026dff9f03000505ae3f856195635071fcad4afaefd2151d8d56161b3373ccd9154e58b3206836e27875abda1ba5b0b9f0230086de4a634f319e0d42d36b9725f1eabd971cb7edabbc904c335ba138beebae02fbf5741a6642c69bfe127c5327bc52a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230447dc4c62903c3aaa0a081c2a710b4e04f1bb0e9252e9dc9fcf65de6fc1e7ec93b5a0956daa2704d5a3adab9ecef2352023016a0b7a027ada3c5c2eb3ec4e728c230ae6fd77f66a2d0f905d5537b71d4590e8e2294ea9ac6abbe5652e710a6974c1a0302047c435bb500673065023100926f1658fc4d00a33aca7c36d9dd53db356e5e5bc5e37aaf0e5f2806c77bc806e13184d8a46b3e5ec3e3b4f473317a6e02305c932068ef6e93b3526cc8f8bba7df670debefd1a45df32518cf0363904835d684ed7a6b99b7d441d5f9c327d4b0dbe90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d3a9ef9a92428bcdc2bab646ba4959ff8dd7085dc889105477a6c5a071b8d156619ad3a9810d8846ecae66938ea52a02023100a4e4594d730f1886b0c57f8cfda6112f507faba65da230480ff6d925d9d45938e42985bb26175451f0f320d0204856d00302047c435bb500673065023100de43ab6e88d35383a5090c5cc331f055b0dd6c07aaf5f02c99b61ada10bce1315d19297b2d801093977138f1e6c8d4470230722299160c067dbe9e9793527265f84190ece5b36df631aa899ac5cf40295cc266dc80505ee46994f5575de8fe1a98360302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023068590f294400d0069b9b0dca96a4492ee55fb1faf8e4db01dd8b42f07d3c8f76deabc2d7c291b6e4a79d0d252199241e023100c6fdc48613391c293faa839e73d561e59dfa37042bce5038dcecc710be90e427542bd61185e8709002dafca6db96b9640302047c435bb500673065023100a183ff57b4d35b3aad803166fc3525a326a71f01c062e732536be777a3c73612d09335c06295e6e00197e647b2d8e5f1023072d8fc5f67d245a75fb70802f187a3569b1bf2959825588244ab358c2f7f5e00fa1c777f6d5b8178dfa779f18c5e45dc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303bbd22aeeee78ff2dad9c14cdddb7e64f915ff07f541576103558fbc129ffd9b3f5f6fd57d1397e1cf59198d329a6d4802300f9c9396da177f255a030f7df24bf7d320788847f1eb85c5438e142640b6b3fe648959251a8d08feaaa2ea83db3a918e0302047c435bb500673065023002a139c1471cfb735ea8ff3ee9c4788533a72e2ab93d7da618ee7855f49c99f7e717a8a7325702f43024287b59778800023100a6268495cadbebfce4391a12ccbec0e5d483697ad300619b42655ebacd1554ddd2cc92a445e5eecdc137849774c791050302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009d5cde2864557d4cf087d94eb9a6e5e159d2dfb33230daf8e3a8891ba109899c663506b9048289f575fdb2c8df3405bc02302d9c9d42ddea40335580c87a37a4e0f418068c195dddab46b5b9bca5557269cddd267811c70ea82bd43ae6f50b4117460302047c435bb5006730650231009bed67bae01feaadde2082a4f577dfc88ab86e79dfa4cd920b6e0f4660a36b17418afdec868c92e2276b25859bce4acd023078314ab0e6e6438f6a19a3144d0fde70a1d798df35d0e55cb008483ec4e6133e58b9b419a873d861a0e64963e49008580302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cb986ab40e86ead49102b19914bcbb1b13452716827453722673696da79e77bc8e28c4187ed7c45366424b2685e22c1a023100cd26bea3a46c9f5fcecf73a2bb62d6813e060e87f51efa80b3d8d8fdbc75abeba0bc85febec27e8946283a17f2494d980302047c435bb50066306402303894a166f9ef195658b806b1f65d35a596ee9b088417a890e498318099279fbcb9b56272111e3e8eb6f3288bb0da1a40023028b773f332459b8a439ec8054c53dbdc1944a1588e11b6cb87a6c38d4c7f8f22c303f6e8605eaf72c292c9b122ac49690302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230470d555998f1fb7ea5227d329805b08dd08c41721e9c99927ebbf0e9871da8b234c50c9dbf6f9a46d28faf2d0c1d7656023100d8f0eee4b145a0032b1ae13145d6104ba5712e0d2655480203be9eb0ef433228031c428e713c502b75baefff1ac1eda50302047c435bb500683066023100b69fcb1b29dc61322e67a0bc14e599c2ae9a90096eb6946eea75be08a29a02d2c4dee8c3d7011ab446621a09ee5e6f05023100b3d3522acff6d91062ad5b366b0f03c89bea24ce58676ab1337ffd33ea0dba98cfa10b075b5ff35990481d3e54f361bd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100db1f184f635e88fbc0f8a2c3285c6e32c5fe51ce518fce5db15028b2e94b3c04687589bec40d710daaf1f17ecbca225d023064d075bec992daf11580d76a7f4af32f0f4597746fa130dba40ea3fd53288ffe680c5c5e66400049d4302ab95e0f60300302047c435bb5006730650230748dc5a983d18a83dedbb70e907d0693125d711e86f6946e9853783f3416fbc7320792b466855059539b5661702f4a76023100fe73405bf3252ad0da0668136e0c56e228dff0e9e7be8d766d27507db86497eb820177d23f782f846cae0f7b9c7557600302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b2d3071e0e7b806961a55b09802559f23d264dfc9e718a7c48b68cd40e8e8b1e0974a7c2acfe339ddbb3e2af1793c40f023100c34c2ce43cc5d8164933ab2191390be558cdd969709d852f976cac2f1d328a8c83f558ccce2b9ea7cfa8150fa886d65f0302047c435bb50067306502304cb516d3672973a5d8dbf29b43f317b5a9a8b5d6ea080d2b6e077d4b8d1bc072a229e341a9415a96dc35828b8326dad502310096e3787be28dc46dc57391a579084575085520ff8ace2f7f121934639f57cd71ed3194456a832887c8800e3ef4df92be0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303863a8560a8f046bf63f62d84a1367a68073da63b5d41be6f1f33d1cab8d4558f1a8f955bc982f86fa25797dce92085f02304218221a3e5363de50d7ae8c3e275e5e31077a8aa97fbc9aee4f9eaf45572e940b8e786626233609972a8d1db99e30000302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023068245839c852b7d1649b1c3dfcdf0133b4588928ffb0353bf88a84115d28a3fb56441991539a6ff87a607183928c3c98023100a3ffc66b8ab977cac1406f9dda259ea4007d77bdbc971a5c11198e73a8111bfdf05fc8e69f476c3e0c02a957bb05ca720302047c435bb50067306502306f51c05b5ce39a054671a99174434a69e1e137d5076a243f15a933a3555976178675bbcefe61490a2d07a52477f0330a023100c96f9777540a0bbe330f0570430372c7ac18f3dd8354b1f483dc760071253e452e783b479b6984487022c0262711fd8c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301f8508055f3816f4b488db12db16558c7d30e191ae2d147346eb83621d1091be09cc1984fd00bd5b27b1c06d8e333ada023100d7c36702d54de3bd3d9cdea64658a3c8e339056c7d631607f02167dbf67673703fd9a938e00510bfcf87b8491be020670302047c435bb500673065023100f3eb1d0b55aafb30c49afcb73c6931499c7137809b57bdcbcd491a3e5053203aeab665ae2d8593eeaea4ba65255d4be90230580cd296c9a82332ea9119af8e8fd3451c8c86a867fdfc6dc99792406f22b78cc04f8c8bd68c2d6de4d213a2f58f58d30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023029be35ed04979c35a68371bda8aef641e3b2e38773a77eccb7587a1ce241e8ab979fec644a86a39e18243addf44d59fc023100c38c3d4829ad704fccf560b8736a2e36671ce6cbc9de38ddbf1f670e4990b4252702620842de59ba7162b8a79705679d0302047c435bb5006630640230107b871b7b6f3c8074638eac49ea9255fbc6374b26b2feafe51f58e036837da76199ddbe25ab4a7f1aadfd8f64094d4c02302c5ac1faa82acc6afff514b33917b83697fa0076fc0dd86c4227430f5ba4aa1e231c94d6ea3a9186022a75abe634733f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230241cf49e4b8530382074c324c54b48925e7bff3a958b7dc87923e6c6eb894afaff428248700378e49d2c1c076c0bb20c023100f333d3e16317de882b8967b71419948988099ee1bf61ded93dcf91e34f842156c6e07abb21a4e5e915a5365c4bde82110302047c435bb500673065023100a8e779d93729ab36c831f3440d96e9705ab1f241e22ccaf459de2dbe3037c7d6afe08271eac5da3033ab479c3b6657bf023036921d863c77a8f7bd6b1933eea0fe2af4d5e7c88cfd3abe123d3e3f64eeb94a44e9d8782b33b284249f716bfc6ae0dc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b0f7b3f4cea4f8bd482c0c5a9477c1bc25a58f7f9dbd308d85db4abb33a03fe21aa816e5bcacd100beed9dab3bca3240023100c277cfd4c1d73b7db2a800fa8b0714744f6d2796e014a9e08dc65e6e25db95e60ec2853f1ff53155be473c4d30fa50e00302047c435bb500673065023100bac4355d05b67f6d70ea8a6358eca8871e2e8b5755e0812e9b7c025fd161019b61643801c89380bbba5e9e47d0e1c4d70230626b208172586e1e5cf82005f98d64d363af682a3c8a2345cfe3b515b0c9c42916434c5eefb8d72b514e0bcefdffafed0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305de11079f85c2fcac98e97800dbe85402134a51055980644271fce24534032e03942fee5919cf90032fba540b1cfe1fc023100a06d9c3c360d1d90f2e66947845cffb34063ecd0736ca196d7c7f7f5375a0ec74b18e06a071228646ca4399dedc36dd90302047c435bb50067306502303f57223b9ee1c7aa69d1fe65bf71e6e9386a0fea61bbe78dae89fceb2abbe0000239e7a70c4bb48241821c96a0c8a861023100a6790cf1a3ab8ee745713e13afbccf3cee361a9dc8b4bc538664ac1e9a2a89f28420283de3941ba013d57c3b423b1fe70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e03732dbd1d817ce39bea2fd9420d5a1a85ccdb50982a09f5952886794192c5cfbe12d4b2397da2f512bd7f60e2b0a1f023100a6d5a596f3774d7cbe5b92141c3829f275d47dbd4915a0951776a5f96a259012e88ce89b228b2d235a05dbd8797738d90302047c435bb500673065023100d8d92277ae861f0db243c0c941a63df7236b0f68d10efb7ddc18e61ab5cf02dc7aef922994f65983ca6fc01848f4aded023047792232c37dd2d2ea8772645f99362373d6d338084eb68af0b624dbc5c5c97053135f1679347a0385453ad19735db020302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cd0f56d18a8f1f1103dbb0c30d9014f641a631ca90ddefbfa536d53017ef52a19ddf06e0b86dd690a01927242307afab023100a4bfcf1fbcd7d129991a5f9affb94fb8fca635a12e3bed5bcdc9329cf9411c5204ef287be2c638e42db8b86a26f490370302047c435bb50067306502303a8eb4f53478a2d38433ed6b2cc04ea1aa6b08b823f268dfec0586997c84057f9c67d665db7b740fd0275267ddff8a69023100d4e799bdc767d77edad3ef0569f0dc9da80e19cc417f6994667e9a06685dd3bbbb8e03e78e52ee832cf95c4df191fdf70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310099e9e3639c62401050a1a92a11cd7a31a07110ec97a821170fd75e408de80597b64ab1b7c8532b6ca61a76563dc5af72023025747b080933efe20cbbca60509bbef5047b058b3d8c7099334fdeecaf148d40b9e5f8a09485a4d81e1a7d6834939bae0302047c435bb50067306502303094ea47ef5e0246a7f4ad8cb318c1d7a99493f4370d9803af3a76ebef74a24740cbeaa75fe996495cf6e7ee3eb75fd5023100ec974b35aba82f55f3c42bda3c9968dc8b77728d1844ed489e487bbd21b24b218b28788703c884d75b7d46ab14f070ea0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304b055724edaa33792b9fe0ffa9736a78216ffc8756afdd02a7061d2329bc750cd352353ec3e6e456ceacc91bd0492b2202310096f88295188e8d4d5cabfc8670c559c212e267d1a9709e7516f88bb2010d5e20ac5fb81d1fb8bd5f1dcc68e156cde7c30302047c435bb50066306402301b429be6052649a9f4b4e59158b6f156bf0f2a4665195b34d332c3328e4ac0b173477f0410cde531ffb3fbc73867a17302306f0397000bdc13fdd29b9266858fc024f4fdb7882f367d3c0c76aa21a96b2e76637d3685c454d4ae2f19ad17adf2a3290302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023001233261da34c1550fed7718611aa4228c4f5e208ffdbd39e565d54aa647e5801593081a75842dbf78451fc12e8ca2b002307462e2b48e8802a1c701a0b093309b8701d7c54453c3c691ca00a32549fd2b5c4d63a8834da60860752e9465bbe4c5d00302047c435bb500673065023100a8c6642024500e9a06f8f51f433b6b48e7a6ba2d375456e60c413a4d64f9d641426212aed2bacbc5cebce7830a2cc4ba02305c7302d4676aa852db7db0183878118aa29e5d5253bcc5071792748b69f21bd96ee6edaba535edcf6db8642420397f960302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302a5322bdceadcb6e879dc4909540e4d19f2e6fab730da857dc4504678ad9a9a60767bcf3275e9bb472617540baf6778702307a147422cb4abaa3c619375a31d42d23e44727473e68c2f29ed0663e24c738cf82bc7ba1ab7f305f08da8159852ad7da0302047c435bb500673065023100f71b95d96fdb53d3e81d00f8f5b85434a5053ad8d9cbacbb7d346d0cd1ee9e0305e151cd050f08a01a91b7e51976e8220230195eb35bd597a034629307ce64e1a5ef73b0eb6260a65ed6482ad193496059058f3d001e1e7692bab92ceaf94c2f19fd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310086e675d0e56cda4b66406cf5e9da8459ff8e50e07a6799e331c69fd09fca134afefb40f3e1d51e4570750c70383e3cd1023100e004964d7453640cd710a7509b1979be8b69969dfe3384cd95b71c3bb7d4a86562f044f99b31634b4620489d558e3d3d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023018a9c06ada8529b16d2ce9adfc2ddc7b01420a80f104a140a13f4c81eab9925c065263e557cac324848ff6f9d253ade1023100dde55a3b52ea5e396e0f47d684a3151ded4fd7ea5b716fc3988a45efe2aacdad50898fad3a2116b6c747fe723a8538f00302047c435bb500673065023036f662bb4966d86cc9d014deecec00ad1465cb95584a7065844ac12a2bba049b51d58f74858d92af9e4995f2efd021af023100cedfd2005af45d2be28c74706d0d3cc6bc0aa246e5b7da134cc571813d6ad305037845a89a6840b4ff326325af2afd210302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c35a3b1d4401a9c7e58dea4b62b7b79ea11042369556f538566a1bd85606ee47d11c20f0c0a4a5a8f6422535179c781c023100dd29b2b8728018ce410a734e4feae87b57bcc3b488a3b899796d53abb50258aa6e0dd83c3ae6256681be7757b6ecd1480302047c435bb5006730650230561858aea620e0b8bcb21044dca7d78f2e872efade3c729414bd4acc39873604d0d7f4a0c86b305f72ebba72313b705c0231009066e89c53127da0c780c9d9e5392d2a6ab845643125bfd4d726a9c1f4c8fb50bc339c1ca55001fe8b890ace214840230302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307adef8d965964ec1c254185ed741fba24a66f4d7cf456f6cee918f149a753d71b4fcfb4b8a64eb5550e7f4aa32c5fc40023100a9680a4d57949b10af6476a48ece215444e0aa9b4d7ed1bb85c001a5d6aba5fc259af3e2a2370045c7daf3f8997732e50302047c435bb50066306402302e4481aedb579892721b81fd82c891ce09dbcbcba6be2c745db7d98dcbb40149d34b61a406668d7f5ed2af5f3229108e023029f59dcd1bac4e2a7543a33aa95ba8bb589521cafea4eaf153e23ab44b1f3bb6f68eff7bcbdaf4cbb996fbe2c9bb15960302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023014d03e7e2845c4ba8dc1dad2d11421593d9c64d0f588644dd744961570908aa4cf994f4b2ed4493b8ec34a2a442091a5023100dd113c98ee1f3c223b34782cb438fc4ded892a2e5a620b8e0ae71619f40aebbe6be903a583f85daa6bc89a06131f43f00302047c435bb500683066023100e5726fc3aba6cbc4963431397445c501d495b8782d9c80077fd93680939564315a7f917ddd5fde00479dc9a931e7cb0b023100bdd12dce1bb740e53e6e7c62df37fb70ccb6e294f045103f77143a60e78ecf0166acef4b2f2c2f033a692f6fc613e5890302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100df2722be607da420b947df29dc7e8d8585c67f61db30633dd888370224b860a23dcc43b51960a32bf0abefd7e42ebeb4023100da2097212a2e12f07300ef5b87a5f72409d56a7b5bc490486980397f439ea7b66dff01e8dc0e9fd008a8e769e76f5a0c0302047c435bb500673065023100f12448c55fc69e4f6fec529a5a6622223ba4435750673dd853d3eed437702fe55b41bc42b7eec8613c05cf84c4eb582c02303b0e09bcf9e8cdd14b6d307562a05799493365042b14005f218b1611b609cd7aa2eb2ee082f10cdcf9112d394c2e81810302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310093b2379c69f8103e535bf7681300dd65436c939c488bc44af988cf9067c737e4334a7e9252828102f1fb656150dcaf1d02300c3bcc4bd71dd2481c659ba9671e998a590518fba128a8f5b3f58b253b8663b906c88a2b6a4903753d3bb632347041ae0302047c435bb500673065023030f2ef269cfb08ee9fd6cbe0a7555bd869a5e0d7a6ed713c51e1711e50072abe2fc67ab6353fe25c9f7e28869bcabc3e02310083731b752bfed3a9fc85143d9abd45f6554483a225bf35b39a690c6df6465f50fc4d91fb80f484541f9e4b8b969909f90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303aabdf078d65b568b6543cb8c4f785809757399790759ad5fe44bd6bbaad6a6da8f7bbd937e32e8e80a99fea1fdec01a02301a2b75eb65a5a415d68158d25aaed289cb46243e1d711dcae9429ae0a676c514ec751f8f0d40dfdee1607e7cd2b6cb570302047c435bb500673065023100b3eaced9bcc6b6548307a8aa5d0564f515ebe8c868c4bcf5c7a7a457accd239d8e62bb80316ed407c8c26bad9ac29c29023063c4d89079af7f05643377cf23729707b17304383745581f4c79790d68a8f00167f2e935754ca2b25c7100a6ec13273f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023075c37677bdeb9d3e5182f1052efb119c205ca791b05837efd86105666e6f869103661d55dfdb7f7c0e1afa5af54788aa0231009b1dde4044743a2f4c1e27d4240965493d1da07dd78b3ff5c0ca01b9120287d9f136c27239d5bc1f4e2f368c644ddab80302047c435bb50068306602310083c80715ca00db87eedc931ff6b31eb69590bef98a327021d4f7b61251533df1b25c71b199cb5c2ca91a2708845b9abe023100c36f3f15740702f6c103bbaa6ce677d39a4f8057bfcaf75dd026effb2e51b4dfaec1ff5fa4c1bd49fb406a1c2ac1070a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306a490e44b5ed8999e2f151dbbf4a9dd493ba77e3fa4618c9a9cc57ca6521b4cbd8e68b8f7ec13dc7029948ae1b79b19d023005fbbbb8990905438ac0760409ee95436f549d46a0cd58e9cf632cd0c45415060eaac205be2c2f15f50981f9997db8fc0302047c435bb500673065023051f4cff5c7573b18451e532b3a0f3818b6be7e3ef76c8259c6f34f3769571bf2ee9a75bd5b9bcd9cb4f15d63af7dc54e023100e5d35e370162757ae3382847acf61fc977772295f194333bdcf28a585b0a652937cfa32f0c32931c495187fd4249abc60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f1cd2fe4a442d8d630358d8e2869af62d9b073dcb8cfea27054c0be5d1c5d056c136b5de1f38deda618789cfe0f8b383023100ce9c57ee519498aed43a29409f8964d12f382588914912bab558721a4f527d693fcb0849a1aacf409939f5e1b09d6d170302047c435bb50067306502307ac68cc601679e0206e8012a845679724bdc77882c5953006006c2911c30b53e3248261e183a18f9ffae3698a1735ac6023100aadeb2d47e61334495f7f1526c14fcfa4032acb7f8da03f9b25453346e4a2c30b2c4d7a6f614b5a9712e24718612c81d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023012c59385fdcd04279701eac6a51923372a424a0affadcd236a846e0d6485c54eb2e4e0502709ff2a90133d09dfb1a0cf023061912eec58f440d73e234c3b88028c8845e88c1b545b8175d0f99d7d4dad1ad75e709f16fbb4c101b2726e8239f62a360302047c435bb500673065023100a490f9937e564f80dc3c76f05a78bc4337af04db5d9639102f1799d98da39f9e5c03606ae017ec29c9a43a8a73b5b12f023021ae34769da737c4283c80d3cdeaa3703097967ed3d1290560fa52f59d5a1ced156a8c9a41854f9223ae46965529453b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023071ca0e70aebce35a203738455949c85cb91393b8a1fcad1d88454120cd5382568ce5fdb6d8ce38d678fe303b71fee32a023100ae77c5f34930fb00d351629b97b796a524fde4af11908ffd0f391d514321120c3df6108861afe72d50e8c4ca79e5c2f40302047c435bb5006730650230734b6352a0cc7e902133242233103dc0f4d8214f8952d3a2b6e03cdf3150531a38037cdb67d56b24e1735d5ec484111c023100b8da81f4cc0645c5a002e976e1532d50dce9feb910dc4f3cfeaf0c3b781998eb753c41c198da25273d00d92b5807b8f60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230734c0ad1a5792d31fe9d5b935d566aa17f4ce4b0712e59060d3a07a696d94677e4de4e4aaf00f62eae1cd6e7f8edea3302302b2b7b702e7ab63bcec4ba5d6e03f56d9f29cbbe69b846b6a02565664410e4d676c4d1a2b355c1526284f9ec10b55c160302047c435bb500663064023065d2ec3ef81c93ba3b31c02409043120ab8d85795a3656317f616a491c6d1d85568d5dae495227fae2db44749a5f220c023037b2a8c8e62c5c693786666450146809aa198bd20a81eaaa0da5e5b7e3fe2842b36381d3cdce1256a3db96d425629ffd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023006b8e31a02764d6f29704cf87d6a5e26711eac3bae53fd7dd90b83eaeb41af6691010e8f6461c6ee718ea6e2e5e048b30231009f013a4c2082f576c012d0db67bd7fedec925b331c4726662eb6b1dae7fc5ba9fa44a1fdea3d2785c3c3cd41446428c30302047c435bb500663064023032c3a6ea9c9da9e4cb7e0ded9584532268a124a3fcdf55e60bfa85b7a9fb9462d94d823c8c68157d395e1b56658ce2c602304d44fc28c6ff138376f52c01a16939f7e67df830f341e773b8d559fccabc39252539ec5e9c5698f795a3c8d4311ef2e00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100facacb779fb496465c33fd4202cddaadf8fdd6e6095e164326bceb93f2e14e9ed127ea7d5b1a05adfec531ca2509c668023100e31e3607c033f773e0cb034818f229798c0471ef71b4182e0af375c35f6bb1e2dec4bc665854aee0db4b6f838127d6680302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f1d957b6eb27d7e79b5448b201b52ad628a3acc85d9ee313d5cb72dd95c965f749f47603590d20c46e47b91fe26798cf023100a9e7c2ebd6a4c1beb321b9046915ac265eb2e02a615af54dcee2b06718c2d9150b94f64ba73e7bc6785f42a063f68ae60302047c435bb50066306402301454a784fafbda97c098e1eaf5aba3df9ebe4526bf70a676737690763f7a0cbf8ead0f0310f986b0e77df7302196204602300d0d4c15fad77609f44787df7f2a23cd9869002d83aef6e3b6aa4fda0780f6a391e25dc7569ae7dfb64e02dc1aac0a190302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b0a8a83196a6700e62942b8decdb76bc103b9daf1bbb592629fd89f9efcfb2eafdbd3395f1c042e214c5c4544828192a02300fc383009f6e3723c97a2b969020b138d6e0c776481a75cd115f0958acf297dec91f61dbd1c0758d7a55764c29de88310302047c435bb50067306502310089292d4e84bd895f2ae4655da4161f7166ff1a096d9bd5604845c50b8eb8bd9c93b537289033e287e901626811de70cd02300b1fa8ec014f56bd285c4a72936afe4060ace3f91e31ce7016b151306c35b003466d58b906a8e753a80d39a086993c920302047c435bb500683066023100e0fe33e39cd3c0d2f7fc2d9fcfb148e4fd18d7a61303e5f24d1c6cd5bb458d3082ab849df4f0b3ef8efcea913b8ab555023100d8e066a8b955f3b6d4cc3d11d64749b1e4bff0eb0190813ae9a098bcbf91177699759ff4e324051cda899199a8ace9980302047c435bb500673065023100dc464a163128e3bd940a02eb2b61d179f38f7d18cfdbc570e962d52a23290e26608c83a20dd7f95f6d3533c83a2399ba02307e63c93ea3e9f91192b10149b52e291b61f6b67a3ecbe80cbd734f8511f1e8a35ccbc1c6201f20e41dd2381d7d4d51e80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e5637255ac5d23f1c3a6da5cc1146f8bbc444e456af1980a98afd8b61c18e9886923ba05a555200653fde5e98779569202310086ac3d9b3fd7aa55a78b873031e03fe1888e05df7acbbcf156ee45243bea0535ed07f677b0e5cd0e97ef2816e50dbf5f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ba3fd109a0c7393298bf283a38b8f32c85e8a359607c20e812abd44a515276e6193313e634a2dca1ed0ee5de8cd8ef6f023100fb3ad79fc9604880741629c53c29eb911205777b75f35cf0736008d4bd424c7d25002d5016f76caaffb71be620bd45ad0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d34d503e0448c25647262a636e073dfed116bf55384f450e5e9425a3f5afaed30de2575f569dc1902bebb6ae876991a202310081b2af3c2c9a547b98b9be55fd2066e0b08b22a50a960d7f78a8d3d81f2b640808c25f633d48a9781d63ff12e7872d9b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100dcfcdba5a590126c167496c9fe0f1854949d13b03fbb08d1bbbc52a4bfa6aa7621179750ea23038bf1be2eee308867c0023046ac55480de51c74585a9110104c988e1ae9076709beb8f65ba1cae70515c1d81a290dd3c3f8a095a7d52414d96e16a00302047c435bb500663064023025333731760a3019b6b834d41a802dcf9d0ac97b0cb5a7c63c72e2d2c3663e320632869cf1750f32ab0d334640fba51402304378453ba478748979b23dec3ca34e1733f1e6f3f61435e069343f760c202e8e32fdb347413f0bfa332361e049a7c7840302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100dbc590ad20a73333905dd94c2e37eb3ca6f1fc0210d0a952f569e9938d4f69dcc1e4445d95faf6e1d476c3325dd6d75a02301e599b5bc8897e61df94f8e89a7085ddf2ab1712f4fcee9391f1aa2cc4d7ca96d579dba44d3ce6450e3c4c1b6d255b410302047c435bb500683066023100982bde42b89954db7a26a32aa11f30b53c5abef52496677279537ef0a506f5cf5088c9fb7e3bd89d6723777bea51173c023100a1f86fca904ad6a40a6c5eb3161afcbdd48e4c96766dcdebb2879ccca35a43baceaf65eba6f3356454db35d445ceb2e10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023035f52714cfc5e17a90b4a2b25c9fc3fe89f8a3227178ec258766fdab1526c4bf2399fd1dee21467f2a607e6bdc67549602301d1147b68ed59150bb39d9f1dc14ba930f4c8fb6523fcd3ac493e2415cd1801ccd43f077665880d4cc6ca6556f675a9d0302047c435bb500683066023100c36f6d94428a054ea710aae4bb9c46bbad4cf04f692eebace64eec313da69798661da51921d59741ae98a51c03daac68023100ae9ff00863760edbc5a71409332a056ff8a3f602d98ae9cd1d3450a49b41b023f91ca088f098d12ccfd174e78dc476ed0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307c473b7e274f8560c8c9b2b81b8ed7e76dcec6bfb8a80b6fa6ad38330bee38be5fddc676fc60251fdf3f2d6e4b033ce7023063ef20fc178434658d0214e8d768a4682d3b3b2c4aaecdcf7c8440f38d05713bc68197293060a2b7dcc5c99dc485db4e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008fdc932465b817bd2ec938844e0b430ffcc404e6250ba89484cd8a2c5274880cd0c4158062ca5097770b282f778739cb0230016c62f38f90ba73a03312bc6a222cd442bdabf0b6ce014440c7b0b14b4c1ff789ec7e59ebf931c0d02e1b7333899aba0302047c435bb500683066023100cde9c8258addbb9969ced1fb3f30f3173a698dae2ab577aba3d273162b720a338b79f75cce2338f9145d0d3ee0bda8350231009ec773149d4eacb5f0b3adaacd7427709a6add44fc225aad9d91147f7d90970689efc110a4b8715ad3a67f9517b85b150302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009799d2fc890d5ec787acd69b2755512aba3b3d0e9df2ff96a6d356559847c88e88771f899eeb73ecc627f2378425173802310085b54b9b59e8dafc0195508447c33870f0bf3c176a3b2dfbd479bc83e72e3b5f32f9ead3effc1e0ea804370139946a9b0302047c435bb50066306402302687a49d151e7c8f218d30e386b19696808431778453f10a3c41ae225597a0cb91346a48451b990a6d84d628414ba44602305e25ac7aa10199727c2d0db143da938ef1a8513213893571420214daefec32c6adc697a02b633929a2e9b829d9cfdb090302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cbfeca7251b50f1dab15c01df2ab2437bcf40989b05c8fd4a3c839251a5ba78754022e2d7c338513b97bf834fb8ae0ab023100aa4c6ae78f0675b0919f2c1daae412244719d1afa773ed043041c1f91a6879d4b69a1bc0bcf2c248d7033f2021b7bb2d0302047c435bb5006730650231008f6f0914a96539eee5b243b4093313331e641856f4ce8e0067b6026314da15f6c9085816836d851c803060de50a20d8c023013955b291550222b79359e2656ad7b7db3b269af91f5f5f50c7fe19c5d5296798243486fada3efa9a00bf5029a50e5ea0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023021e4c596494e1d25ee0839cc3378d202a32ae2df435b104d12993f4266ef34cac5ca3c5d6eeee2aff8fcc33e9810c5da023100ab3ba7365f1c36875da22d160ed67942f1d0c086692411e8ac8703b20c01083009672b61e05910dce0b87c269928dbec0302047c435bb50068306602310093b8c009db14e60c7f5c75ee95590cc52bcea9b799dae38d9cfbdb6f59cac32ad2696fd84c9a79d2580ebbb18054e93a02310082a9a5b0612e589e64c926ed83d6ff38b446f4ee04246127014c26c86fc3d8c940d04e6ef0a0a6bd69b042680619bc490302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230374b022099c36d6343e1b78b9d0db988d6ce158f83b2262c605d059ce1f1ad81f91aa1a93334ce7a3f1c0eb96f8d1e59023100857d5f87e4b5d75bc4569b3fded021e4983a8d84957fe2fd5e59ddb14c4af7cf6ebc2dde41fc884fd8264851940f25ff0302047c435bb50067306502310094c44d39f1377f9c69f650a0a5a68824e19f3586a537bfbf9d99b02c9689007d4fc4ccdd3783133dde42f01868ed57be02301651cb8dee609a97ee0f1bd866b1dd8d370c5cd5202d4a5bdb2b97bd51b932919eec09c185ebfadcd29e7a89c6530e000302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f01530c35dcc9519e2aa524d64618050bdde14c5c703bb60194f846dd111bf9a04ef73738679b886dbd4eb4700032baf023100ab68beff98108f6e06f224fb5f2898f9f82cdbc770b5673bc026fb7fa622b7a74196e8fbcfc64c0c72cf20e271a2fd6c0302047c435bb5006730650231008fa1337b9cb288b2756b59244a30f51660c8bcd71c1308924c8ba0a0920bb47cd9514623b96d0db03c172345a69a9d4702301c80f18d6c057d821e6c8b570ebc61ea8c8940aaa1ac5014e129c3ff3ec1bb09d6b851728daf024140b29ce371860ac60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ac329199a5568a7ce61c94f60fcb3dc2bb55d478f5b1d95b6e6ce3cf846b6db51628d7a38bb8dc2a2105528a6b6d3c9e0230047e4962728c3d442d0cb36ea9f0aecdef36cceb1c8d9d1f080e291aeb1a7a4548e3a29f570c593e025ec708d49267470302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230694f4d70e7d7031d24e50f4f8b54619a779a86446fa8a1fcff4f8c7cedc984c1037789eae3700f69ef61cb62cbe88445023100ef00c3cedb5dccae0bed28a1f546aa5ef9ce69c8976a3444589b32e8a724adc0fb26293176137ad38428cd313f0e293c0302047c435bb500673065023100936eadd83c0bd920ecce1d7b493442f5b6d713775b9af62b7bba086c842245a3a3f58c4e90d7431898444a331e763f9b02306e5947dbaca2e12f823049070b0d171f3d7a1318fc9b3a7979aec96b8303a1ac4df6dd9d10c1c77f2c3bfa91982bcce90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ad4012a6e8f99a80fce334097e5bd97175ecebd3c2cc55092a72d7eb4769a5bc6714d01046413e02a82ef006786be14e023100bf8a887fb36110e546cb64ff29816e1d8b49e9fb4767dad60d068bfc8274eefb7bc560e794b9b04489d9768cf79fa0510302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304d201e333c4acbd6a91dc934607028d90bd82223b5bb60aae3bb1c0773472c2bf403d09ac50ea77ad14d35c2e7f197a80231008e5e6257d2e178934b2dff36a6c5c53d71d4887a40b83b070e37d32ee41c77a1deeb008b12640657b2799593565ede2e0302047c435bb500663064023025297f02639f8505a6dfba3aed375297660334a12c3ac91edbc122cc95ce0723df14ef37e0cad5b36816bc2cf9c1d68202303e86b7c2ec86dcfac5ee4f9292538d166f4cb15d65448095360e9b1ffcc11dfd13d1dfb81f51556d40f58647b23866fd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009d20da2904a1023c048c77b6aa2c88c50b5a9a376ffb4b4caa728c268c2fb7ad1e9ed996051b35fca0bccc15857b4b41023100c3bf5e8adae8bf0b9f5ed807481f6e8719a15800b4065baa12eb2a52309f12ab03b2128e290df13ce0da45345936f7370302047c435bb500673065023070377193d5f5d00be49225451f50844c83c5c083c8bfa9a2b5e5317775b588e6ce1ba8983b487d0a1c9ced6a9682e29d023100d3e3a74e1091b468147b7ddac136000601d4d8c15c51bdf644d7dff1b3544da7b5cc159179f0a11458cd3400190bb5d50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008519ec33e3984ab619cef6d8757f3ab57aa98a32e5f4827f6f2f008740971f9a61c97a6e5644a3e3c269846ec43d11d3023001b3cf6de9d27146c09af133445ddd41eab9dbc57839e680feabf76b05ec89fcbd8e77bf229b58b277f987c2fc075c110302047c435bb500683066023100cfbd9ddfd26aaff848b771e6062a85b17001276b373713861326d41d716ac83f9c274c4c2d421f286830510dbb2b7875023100c365b57f1cef0ad3bbe81e2b4a5ead9c22e079b56e34df991c45a354a8aa42e063fbb250ab44dfdb3038ce667df21d5e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c973237582511970e83d8ca242b0ef3374b9d3a48311b673bc1cb6b74cf7a4ad02b922b71794f2db9a25dc46f084593602302aeb94f8104a8dc6ae7630e7e62442475f3693910ba81dbf0e65a03f8b1ace25f179d794c99c21dd6036dff60f7c2a600302047c435bb500673065023100c1f073194b534ccdec8f55b1c454f9dcaaace4fd1973db1b0b384936d909d00d82612282c77d5188be4322154a4a02750230074d62a0918242d263e12e5e2782bfcd14a5ab3da297dbdccc333d7078b9d10088f91f2a97e99c19aca733bcd6c578420302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100fffcb3ff5e0683cae9e6db181e60dcfe89bbf76dca99a3b555f6de3e9c36e9e9fb9fb9b9da051c556d7a1cf81f3703e302300ff9e245b78af4bf02a44039b842353aa5adea5f7e6afd0bb461fc63a8e0d2069ca2eb8e86945e67366ac452fba60fa20302047c435bb50068306602310095821f775f40b89b3087045d188685ca14029cf99fc7e1bb469030213860cc622d4aec2a25764e31e17c97ddd4aed3850231008b10ec705ab90a3af841e9dd410b96258722177f56bb4cde8a4ef8cc36bea16d445702cad505c62374136f0a543790e40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008f88446d14528af7b1ab6a1790b848e8f1cd5f2903636842ce9f85c28f3f994b41e99c4ace96fbdc11240fdf5ffc69b10230573c8fa9b8bb75beacea72b3ddaf08ee9eeb4fac92be9a5116406fbf8a2eb0ce09da0320325ebe27710a83a0518b00ac0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305653caed378de80483aa4eba2f4c1eb4d9267dcd15e3072abc2bfd2a3887445c13f8b717b3792af65919252b2beb5e1102302a9dc79a52c41cc3354bc31c0a14f6d17e66967f8c2dc025d6101ebd417d7af9d5ff1c765ca69661c75f877e557e812f0302047c435bb5006830660231009f43d814bfb7542034c032f0a5e5f9c1d4318653cc774172150cedfa665b0df935d5e7c514334a03c032042f61d09b81023100acbb2cad141edb9757916e95655c4a73c013c4db36ed198815e68d2ce9d23d5deaac1fe79ae06fa010980491d9751d960302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e25dfbaa4e8d420a035bff2ce68af7bb933358a1e2928bac8bb954499a995620b60f1da4e4a284e4c63ca88e7f6bda87023100be4ea875ac80fff98c6e671a952c4df7288e939c6d1a97826c6da21526c7f9d75b6761d47c286c8f54c6f2610592339c0302047c435bb500683066023100c695920cb2dac31072dd2ffe54c431b1a37b69820973f9edec36673415183affe30418ab77c96a5638ab84fcbb1aa194023100bc2c9f4c271c242497086a9e04f505479e0973ce1ed2dc25d8f08c24eee17ceb1ab1fc28ef9a420ee093fc74e84935f90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b4148517a1bf0fbc7687ef8805f620b2bf48ec6d6f46a93dbc525d34a479af969be4ff73a68187e73c48a117ae56521d0231009f3352e87dbd1f697bdc47a183bcb513d04a3f6460f4333955b7b2f5cd088948909dfccad602ebbf9bf095f7dfb55faf0302047c435bb500683066023100e883dc7d452ee1dd082fadd22295cdde2f259cfc733b53e1addd24a13f9f469fa0ceee1d39445d71cefb4646e32dc969023100a250d949287ff892badadbe9434b74d2ee7b1cecbc7b18de91ba746502b915090adf91e3b8654a1c75a614279b2b348f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d98b1f48f70412af09c45dab216eb48a7ae71a648078cb229b588a45e22e4e3715a499ea32c1bbc8109ccaf3953c10cc023100b304566f28d986d0c884bdc5bcb400a22c4822c1be1ae27ce58a4286fa0877173c88c3c4742b08a7f15ed7584f062f3d0302047c435bb5006630640230590eb0d72bd49dfb42273a9e8a7b916db48bd08d3ee85e3a5e27e5c63a3744bf3a5a6e0954a0926a99ec4c3f6826405f023054739154fed4b6843a7f0fd6902f4ee67d551a5873cf33bba5640e67bcde03616c544b2fee7a59f68cd361e9942847cb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310099649ee04f275c08a812cf8765faaa25fa101436ed50618e7eba788e0b442911810faa543447015cfb6c060f5d1c6fb2023100dbb8b148cdac679183e332ad973f4b7d54c85c16a1d39f3406051e0fe4e975a3fa660ff039896453d7af9b6344ae59900302047c435bb5006730650231008d558288bf55dd79f6ea0e896e691b6968ac29c9e359394c83794f95b32cfb9d2993abc2d6c5ffb71faad69c6628918c0230358d08a294868f073df60a577bad700360e0cf66c45fc070a75a3becd175ce624aac96d8b8bf9d1e5afe66c06a2a15d10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230175a33dc53d306be46449fbeac5ffccafe31a7ddef193d9efd5a908c14d880be32cabbe805c220fe3ee367f726db6f39023100b23cf214f65827155763af2ac8581bc4e706d94ded7d543dcffff36e6d250e05f1fad7236224fc433c0a5f3de9aecb6d0302047c435bb5006730650230458ef0cf3aa416d54e66f2a85f7071cbecc27ec61233e8346200203d9ee0bf9c971ba3630097586643d6bd6eac5ff44f023100d6be859b9dffd97125a10b3f66bad21d24dd12de43195b9fe90c08ec318b0949ff256f4397ee8dd8ad1f8b24d373fe630302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d5952540426e38ea9bbcdce76770481725c43c082fd455ca0752ae914fa10ed3a5f76ef61252c3088f466297cab4f7a5023100c8dd121b8fa968526ca0c0cebb9a2eaf15d2764e1cdd2deee4b67e13095bf09e233f806b9a3a26541de2a6d9fc4f48c70302047c435bb50067306502300a3fe25adc58334829b985a1edc0cf6944692e378b526948898c93dedf26da1b2a24ea00911984d4e8e34c69b5a235ee023100f9e9142dc165165779cfc60c5e4958bec83a2026be3c9e950bad0c65236cae6a852d96bee810ddd93773182c56a1bfe30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310099474234dddf096bc752221b9b9ffa335e3690dca193b1b930e169242bbedb2756f68fb545d96dfe844c69116327ebe1023100ea510fa2e614e1478e6a535afde9961911183a27a1332cde140fd2985e538a8256664b5a38eb6f2622c7b30c2a234a330302047c435bb5006830660231009bf4ba9bb7cdc4ef5dcdaf855f81794a273beef27a918fff50c083786305ed125a74b2178a27e7ba1aef25d8cd7e0580023100e54af885106f00fc7b71eaf6eb53e3fb071e40ecbd7312f471ea096e0fab9398015d24e19458e659adc458c9315f163b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310098544e16cecb70304b6ff01419f463af71c401d8ec98c5839877709af9837f0654bb1ef0d39ec7c6637ef95de3fa05a3023100f4219eaf14292e0221762b5771d693766ab2a1d79488092eafd133764815db08911866ed284d9b0d90ce450eed5bb6ab0302047c435bb500673065023100824b44ac428192f354196f36d8ad7ffdda30f9d30021ed79544218a932e0d4717f49727861c41ec59743dc46666afa53023068ebc21bfb91fd19ff0113de443cc30526037686966f88965ef978bbc3b21ce2176b4ab5c69b88e5d4926f15b27be2020302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f17540042c50f624eb38fcc4ac05f33319255f150602b3bbe4f0a3e1b46b9315afb755997ca7631eaf4a4c73fc1b0160023100de48939380296f39f39225bc320f6464804135c036b29c7f8791ccc159c29806393a41b8a695e81ab4ff53eb942c38000302047c435bb500673065023056a905826e506faaa834e9e944e8815e28103f23c241a95d70c88e6693d6507f52307ca8549d27339eb7afdf61393393023100803a571685d0efa46e9178d3ca9c0c667c62f5798d7684f6537bee3e80964a04585248e4e27c03a94b7c2b65459dd7080302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d2fe8d0ffbd6cac75bf55b57b773965aeee287c2d4b4f0fc4bc46dea07d7fdd1b57674ef960511d01457a28b5b1b456002307d30170b5a954c02c56871d3dd4fe9cc291ad493687337992526b4a27a57086e79660ce5f4942c11350c7974c6ae12b40302047c435bb5006730650231008e18d99bc695b83bc4b8b3ecd1070f5839c78a1f4b71651e069319f1b372b9ed661ae8623939d7634c932ce7de7ae8cb023029388a3bb9c562b695fe56384fbeb29448f0b507f8bc10aa30617b5f832682a0b79da194de8303ea50441c4ee1f827ce0302047c435bb5006630640230478886310d3af838a018bb510023344b2b67353de5246bccb6e62909554e1ed423034689db1427e1f8251e81a916d6b402300103bd322e95a3d3e33811fdaf2064e474d915292ab8e594f5ddd6fec31c0a6962b91c432b607b605a7191630e740ecf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230754bdb957f91e7f673b086ef292ad732a40586711762b9a9a5cbc59a0b51964d9b177069e9fd49cc298be1b814a0eeca023100b5f72f78f2e66f1d334dd2eb75b50017ca00438cfa4ac78fe436bf10aa88b39bf314bbf5185a84ef93675ee620437b2a0302047c435bb50066306402302387da2d4dc2dbe6da62fe566eb23fa62b516906c0f1795694f725d4d8237b2aafaade38ac29d859d26ea552f16fbd2702304e0c593c5536f5ef00ad510f4122ea926e96b6f6b74ea61d542cae762976d748672cc1be0b8b778d061fe9568ba0fbd70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307bde9cf74ccccea0e212c12cb219e99086986c5345e6254a728288470105de8170258fb20ad20e9ca83faee8b34f515e023070118c6898e2d6e1dfcc44199f2d2d522986e2d4c507ceeb1b1041775b8b0aae36ad8b678eaa8b40ad0a4c560b3851ef0302047c435bb5006630640230407115315cf7e276795884061e4dac2df325ef67be2c49ac7d6daa808c4b128698c4165bc5f7af8bb27a88d586ffce3802301f8b15c797f0784d13cbc76fcaea3016ea6bb0ebdfb48ce446873ef6f398d0f5f966a17aa30e046f9847bcc90c3a9d720302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100dbd2f8acea6779da45e25d7c8f3bc715aff4e56354f0ed414af0f8ade006a0f7a58ec45dacdd6e50a6d80e531e196d84023100dda05891f9524d8a8d096d72479060d5bfff984556860daa98fb195bac4d9eb7accf203da79941f974e83dccf95180490302047c435bb500683066023100e2274400b83253102c5e1a86e0a8e78f2ab8946ffd1aa85b1904f33487ca0a95b3d32e81ccfe8a0ce6490d63106eeadb023100c815ffc5ed059eafcce1ce4d7613ad58442fb8caed683a75bb4b478cc5546646ebbd698d4e374b854ed0c90032006ed40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d6a8981fe8e69313ae27988eb934eca5f45271e022aef4299e52d1921e2207974fd34e163cd2fd42ba9df3c19236063f023063b4bb2082c1a911b676f69941f296320d87e361077edfbf80f4fadcc0c9f4e6c23d2563c53d7b3e5633cfe3b837c5680302047c435bb500673065023100a1379f8224e999aa9e658df101a6c02f77206c2a50bcd832aa3d2f8b2ccb9db4ef22242c44055585b19d63ab3a8b19ce023046db9f664a20f642b71b2dbf4f8d861b63115e7e20f322f665237a63da7e35ff049694a94eb946bf6ecbc67ebb6b7cc90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023066e48b2beaf5ae7773b2ed18c5551ce35d1bc9d1f33dd7da4ace1512adb683538d0f3b153ad10eeacf249b813581c219023100eae686bcb93af9058d5ea4bf7026e10c2d985945540d0aa5e49b996492b5f6abd46cb8539f2977bbe486937733059cf50302047c435bb5006730650230757560f9afe858c21866474280226b7267ad8f0e93e36b81a667eaecdcc14303e7780b4400b92ee9e6aa0086d623ab05023100cc70416ff11e91ba6e5e72e637cf81bec510177101eb37ecb7e6de241fa4437186c73a998b22426a4cf5885c649d05f50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230741b184abd69110630afde4c45e6d176a530acd6b5316ac1bb6e0a7dc4f1862a7c060db6a4de93cc977012610f02acad023066562566a96b236082194d8f01a961950cb837c3ebfd952d7cd498004318c4b6d2099e949a70099abfa1d966278256b40302047c435bb500673065023100a8a94a8427c6db410d499ef009ef39927c4480a623b1cf375cb8ad4248376c5c3be20ae58f31eead728482e5ff11aa4602300d336c8f6421f79cc88cdeb56f9b44afb41812a57959672e9cc5b9e3ecf3a090c7fbc41c38284af57d89cc33f42c4d600302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023034a504c11cb3b435fb712225ba4958491ed1b45bef0b0f6bac161c8a8cf1f3380ad170259693ece5b1f3e9c287620183023058aa6da18b4d34620ce90d2585f4d1e87578c3722e1d91401de73a7af50d8bbdf045a17f6abeafd4e6ae924b129b4b650302047c435bb50067306502306e32b8990ad937c2684d28a3a018e26c4ecd8b34695b0d0572efe628475ea97d9914cf039123ca5d2c8e82ff5b42554a023100e76e18e3850b00e4b2be5e5e7becfdd3dee8668ac837a2821ae7ce5bf45eb6be2b92c3b75b8acfe9afa2b1c22759d2db0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a84ab75802e94ed6db4dd0730a4ccca2fb833b41c86e4dd9798cadecf5672999dee3e71cf6a0332ce62b233a9f8bc114023100ab7d42712fafab10aeff851fb522594ea7807a06850d4636fcef39adfd22b08c565a55dbd1f4d2ddd885243b86d3d88f0302047c435bb500663064023019cdf7c6d4f960fcc225ee14dfb5c27ea648276520c79a20178170f8475cd53662ba8b765329ffa816bdde1e60e6952a0230010ffc1e0f86d9d3a3383fb371845adfd2d2a08f5a765dfc1db447d37e18f3b523bd01bb4bb03e9ef26f41e3d4a068350302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008057f1da7b8fa617f751be4b1fbd998c5d6fae8cb6126d9fc8be4029a266a892700836ae406e02741c25740db6ed9e3c02305763ffa5ddcf3ea05d4b10352c5472c3630c418ee1f9b748b04250e112bf5792b453861f690329d70d056d964c69f4380302047c435bb50067306502301a4eead080deda3981a2cbe32246c525c1372d0358a1396665cce3c325151ea903d1eef71627cfc95e4164e6e992977802310093d09f99db37dcf90e392f7fc510eaf5ba32b61c3d6f85a59b96d3ce06d80752f21f6b6252364ce728fc8e4e966488910302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307e2db5520513e2e6aad60199003528cdd088b8e26cbabd012feb7beb5577ed230b4fde7d55d8fdf77ecadb61cf9126b20231009b9aa9b7352dcaec1e41eb3da09640395be917f0292c8a6de23e80b37d6935db2768511091248c3e7549faa98833012f0302047c435bb5006730650230089efa9d439b88df52f15323895fef86a9570d5555653de67c733f5aa4f4bb2fc958a6dc7db5c43145e54bbd31c621ce02310088e183f3064a26795ec4826c765f4abfd63d6e923a27899bb19d7cf8239c5c8a358191d00b54a86afd45ce2c79b197430302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023058489ccdb2a8cc5bfa7afef08f525502e18f33372a3d59bd5f6d840f5dc280fd149c8de034bad20d6d41679b108746ca02310081431a1f50e8b4433883bd8a8d85c5babe046fbc4e9f095336f089b369da872beb5e6513780be766ef45ca748cdc125a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b22647a890df33e1af4d9b33738e4929c0cb3038f63d0acacea49fccc825702a37348388e95634b8656294731f505544023100e74688c49d37197de72db78131a1aa3235eff5c14ef52b1bea258fe1b5a03c3f0515e463313f0ca2dfdbe589031c6ab40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305d74c2d618a8d2bcd69d48f0b8245f4ab4e4dd18070cea1a623c0cb8feeab2c439a8aee4cb72edfd285ea49f5cae8ab1023100a6090f54813d143ff3c65e66af412f3b89827e4f60007a6d76e2cc5af0d80fc1d9583a95e87e1cb4bb244bafbc4f6aef0302047c435bb500673065023100d2f9beeae8ed91a1104057aa08e917af685432e3822e7db8bc1ba73776a874b64e9d96dc2f37f081adba9f0033b0e3b7023008eb4b361b937a2f53cd3270236eda366f84a871b32dac85bf4335a37ae4e112bb27b1c45516b68380628d05a9eb77210302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230497b88d89156cdf98156464ba11445711c245254b15ff55a1827a0de5fdb8e75071a5be16079c8e31138d19ac3688238023100e3ef7383c061ef00b58ac495f2737f239bd852f15fb09e02a95beda6e967541b3b82e15df922d388e5edef37afc038640302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302500b4ebede69b404e8ab8753444f1e8dad7a258bf112747790e2ba4176bf43cc818d6e670326859057fd9d7138ccf59023043878f168085077530f6ea2eed39564eb5679afa5916ac62f243a6c1bb3af6e6192d92dabbe36311ad8d6956ecf97c150302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023009879913a17af83e05e1d25fafb08e7478735e0a97f22c9deb08e4c3dca41167c2ba32c4e05306a4a0824672fa56db9f02305b12769e009aa526f9ff6e49ccd99a31ab75937d5478b602be8068cac121bdf1a0af7c103dec883f2ff99f823fb119040302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e9dc318a0da5eec5d3a3a7b642d53cbd5f4ec8dcb0be0a15e4f1e9178d34f9b63d06ca071545182617651474a165062a023019b98f96cdb38f8a41f96a202122fcf4fb634b9c7854988a32195428bbfcfbfe02027d1071bf817f2f27e1ca3545cb800302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023030f1270e97a4f2d30c24900f632fc16fd70a95cde84f83a9de92fb9b703cbb372d5e5a08545eb947496391f25e377af2023054c83bf4d61c26a25389053b15751c150abef7d645b991a3f3415a37db2820df98640aee43a803c1f809f77fa1e9d18b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f01d4418f80cfa8bbe658b3cfc0a2ed4bd1d1d7fa12cec0304ab660e6ad4b3b3b0f2c6dcd313187591c46ad0229dc39a023047354fd2526a0407e1de5a85dcdf86e6b2cca58be097bfd7f6d20ac9224e4d52e415948103d170d468486def1577dbde0302047c435bb500673065023100e944238d6fbc6e18563d4303c6a004c8b55c0b9c7d82838ff8000d998d9e491fff09c7c03f9f9f88ddccfd5b2ae825f6023038a6ae6ce33cca0e5976f0348516969469a7ea89932e5589fbcf9204febe070506c3a9bb7d0131c0399617600ce7837d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ff775484bb1d0c602a49537955801db0a0c343bab4dd16160352200a519589e6493b2feb97c1e6f843b9ed243f550c58023100cd84b789a30bb1d1e51598c2a1e09c773cda780da33d1f6a19feb69e31deb860373681a3c38cc1d4318133f81da7acee0302047c435bb500673065023036bbcbf39e3c6076662ff3b5c24c27fab59560d45b9fe323d6e7ec3ffb3ae10037922ae99fd401eadf2bb2b87de37d54023100c0b843dbe0763ac587232d46bf9bc08270e2b0dc4c42724714eabe39201e26274501682c1c981b03aa160daafb99db500302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d2005958549fc43358191830a066259e9a5ff55b40a06f6288590099ebb8324b17613218a51402225bab934b98fa6671023048375ba2d1562d6ff7f0897d7161fa77a10c99221281fb5ed7bff397016f32da70e29917ad217b729a31c9c47e41f4390302047c435bb500663064023027bccc6aeb165b822913042c6769f3d91e613d86c2467d512d4cd992d90d2d73877990b451f7a9246a6b78752bde8a4602302c8c8e15911676cfc013da42d0554efc7934a5741733e24aab111d7e8cf25ca5d0df007c3b5bab75fa1f2b5327a1cecd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230231c2816af1a9c79c57cb5f0397d5bbf2182d760f7d595f7200994ffe4ab13d1d0fb36777bc3f6acc2f9a28e86c3593a0230253eb46b15c2f0fc28a9a0ecd4a018a7aefbebac58fbb9babbdd18961991873056f5538e9116c065ba0c2d0e43199aee0302047c435bb50068306602310099061be103bb3e58c19227e34a27d9e2a18792e0c22089e750df0919b3b710d8fd9e7432b60ea7e3a4ba512713e2f9a6023100bd9e65db8f3ab6cb2d6eca422797ccfa4831e6ce30d955c48fe7f41147130a902adfc423208b17ad633bff35fed78ac60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023071edfdf130814fd03485d58ade4ac5fda85ec9a33a3279dd7786a8e7ec723c04280e04b308b9e8d10b6d788d88b25bbc023043aeb688587a3bf70913a19274ee40bad0643804ff732bb46d9f4b31cbefd5388a2b65f1ab74e595b01d4b78b306902b0302047c435bb50067306502300ac4fb526b64fdfd9bbf02fc710ef88b7af06d6fd5305965d43e69b2786d376fa3643690c7049b62a5e833648cc01573023100f19e19174becdb4ef601eff83780ca107cdf2d12f8e8d444ed3cbdbb349c392d840761945d659011ee8cd14dc51127440302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303ba5aa7317664b311bce9b7fbad6473bcb64dc7e0e9e52493d59f257faaf5661578da00f85cded1ed25ffec1580f03d8023014437bb782bb1446323721573ef3d32cd1dc222522f5a3c8aa801c432d3449119d092bcf6088fd64bc9f24a607f2ec350302047c435bb50066306402305478714ef23da1189648583113b9ab39807b6958ce2bb2e2a9fe9d841efa83f73bb6cedbc4c72de9c78c9bd0a829f97e02302846061bfa461a6de5098d34477e301c82ae8668d68b09b4abf6434f8788db19f6672e3110f8cbc7dbb72eed03eec5940302047c435bb500683066023100cd9d1715c77549eaa6f5f9964254604f043935793da8b61068d811cb91aa998bf10c666acff3eaa9441da31945a5fc43023100e0beb65fcf87e60d2dc2e51587f03910af0e26780ca11dc82c92608ed6439442e58db62373bc1aa8e03729bd873940be0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023028bddf4e4bd1449489f89a8b9aea7294ae4bc834159485334cd7350ed452adc2d972b407ab2fc50f49feb296da14280e02305c289d89b7f696155bf525ca86c0d364da65922b65ea5380db3b6853c83f7c336fdfe089e4dd01044a686437838962090302047c435bb5006830660231008350f75a9759e4b0d69266ad86140f5f29f81563e15d4439017cebf830d72171c35831b19528e69cff77f72e6a8fa3fa023100b3f8d51676615833e60f188a056ca06a86b8b1d9d3d5936fffe141f96fba485a273e56926af6617de59d448479003d4f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a01d61bf61cb215585d5af2a457f26e27a69a775ea9906cdb629620418b68dca389a4445c7b712ccf8a578eb60f24d990230789c24f0622fd378b808ba233a5bd382629151f7a038b980db7af073a442914d75d54f327fc9e35097396f4d549df4410302047c435bb50067306502300174f69566d3d6eea84c2cf4c9762bafb75f9affd62afb5ef93c5745af990d7a63b341ddd4da81fcd9d6e6b1f545414e0231009af7ccd627057f6ddd77b24b5240b07b032a26745e5a2db6ecf94336b9811714ed161fdeb470efa2a36c95db00e274ab0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100dbc4bb2387d86dc8e87aa64efe290a2e48c2d2a3e320aef73cae8621adccf01ed9204bc7c263d65b59d66970ee63cb01023100d3913860b57adf5659da799ba70d44c7b084750044ae35758d110d041a06ca0072b9102bb755140e097e09427cda6e5d0302047c435bb50067306502305a14c1aed2e1f3fb17190ee4611e86dcdfa60155e859d06da9fe25f1e709153e68b1ed293c2a14d30eaf7912e32bf524023100c59b2152721e2cfb3ac4555abeac7cfbff790cefbc81bd19bfa9d971d6c47c668891f90b3bc33bbf300836563569e9fd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ce84ad860f37e2d80a47df584a62947da7d8e6fd47a7991ea9c23cdb3597e50d39b01a2b013adc72b176382f8c793170023100c65e33312f83f70870c964e9baa49dd8a3de337f0358ec162ba352f3f0a99dd8bc3a795607deb9d9c54520db8f6d9bfd0302047c435bb500673065023047b8575adbb24ff8d1e7422ab9eec27e74533fb7f65fd81932300c0cbb89a4602e95223475653378123ce6b3fc92f7220231008d143915be999cd92e6569a1b01f9fedf53445cc978ac85955def0298c63f03a70ca9bde14c6a7cebb272fea987611ff0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023046e5e94f7c9fcd3863f437d13dddd55a29286ff434105a20622a66104a011794999445580245410ae336774647172521023100f5e2955cd0da879729dcace2adcdb2bbb42b279d9251fc3c5d4162885f6f84bf7662872d078635d44949ffa5ab489acf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306b6010d5957e15cc07e38e4e05299f76dd8f8a9831dca5b76bf5512115014a8fc63b5f844c3225d3dced314d19c8c412023007ca87faafe9a55a188bfeba7ed0251356541afb0db75d89bbe4fdc16c43fc6345a91da621bdada96660cff4c3fc04db0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100af69db26813e94c7ee8c37fe2d8bfa3e88633f321b50fe0360351da18e3aad19e163fa0f1a40c9e61c550ecfb2ffb5a7023017ab6e703f0851ca6b3b9357d2488eadc7ffe83696b3e534d65863588181d5c15013339626c59bb34437252f16766c580302047c435bb500673065023100f36fa08e11d15729ec8748ef0965ec8ad19b6b30661102055a12902cbd7968290ec5146f55655b1302d24b111dfc1c89023077dc1afa3c7fcf5a2cc784d78b83e4f2bc70d6d14e89015c4a04ac9ef4c798ff1ed782de060de617b42909e4911883d50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023024326183343dfaa7c2dd326747b14469468db1dbe3ca0b8afcca66b084168abe77c3c43074d96d2a98038c3648bcd61002307c8c9a88bbc42cb168f0d1b026bf25c769dbde4c2841ee17557e656317d7463f8ca7d90df831d7a12ba82763fc7470da0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023013e0c250d02860faa8bcffab14ce39236ed1856867bce6f17e9ae52a14930f77986f9826368544b24b397cae6c93b74a023038c6a1abb15ee11cb4c8f5df31f0757ceecd06dc506886f2ac4bd24485d9437c6090cb37ec9e503d85ba27b1cfc72acb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300ec63d645e78eb7fb7f63f7382997d2236f5dfc101423c7e9f040ab09c5326ffbbe7616854c4162702a4ff4b08abd3d4023100c6593d266f7df7fdef8f827d613e50e08dfa7d4963e13a7a1b9290dd1633406ab42fd7318e9dfe71c5b481a61afa491c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304751dba91e10444d9bbe2b164f06589a509b96405ac0bab1db8ee1b9cc99cf6de98f6116cf376ec2f354622a1ec4ba5802302d8e47cc8ff7e6a259b5a60447b6ca77ff69a61752040344c25e58cad58b68f2761f21f8980359153d1b699fc9457dfc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023047afc0dd3c4ce5db205cfa976902c664e32b0dddbb3914beb8ed5e7f6bbce2ab90c8483265ef2eddb772b0f85e975ac5023043ec260c14754e7c991eac7762bca907c231767cd589c06e7dbfc44a7e049f2362b02a6e9ffae519c6c14648c64627470302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c7165b6506b3fbe3e8eca5ed3866acca323966e28d98895cfeac8ca3390c19d7e49d0673f504d9b290d0e42fc680b85602307d4d7f628ed434746d70e88ed4b061b39661b87dedc44f6ad139097d878221419a66f2069a21995fb299bfa75e6511990302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060e5d641b7a2761748cab974bc3aeb5db1a76c41384da44064ad819ccba868fe40fe45194fc0d9b7728050c212e730fc02305c8c748ea2f8e80b7684551c5adb7707e744a6b21ebf3af69b7d1ad3d4261a159aee6da2268c8d6b65c6891a5efafac60302047c435bb500663064023027adb880e47b2e52cea546f1d8065a499eb9cc93361b133f6c787b5bff8c81fc0fc2f3b30639c84fca82792f9d18a29802304323be9a4be158816451b0781f8c733821f04e9047f6c21dacb9e3e03c71815627e8202d29a96a36a8bb356228c30ccb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023003f448e5d6f73b93f211dbe99827c7895ff3a9cf1feca8ecfed9f8bf49a58419d2510b62c21bc89391aba54d14c08437023059fe3584c6347834e067d245fd982a0b6ea46b72cdb0a70638299dc245e1301e2a338be30335d6d0631476e24a36a8d00302047c435bb500663064023011891ff95509365a9573a88c191a0b6b809f3e8aaef9cc73f391e5469a938aff2edd7948f547946e3f458da429347cfe023068a7734ec3e7ac0ec6072f403c3c6351ee961af83a9329595fad167306623894305c565fa9e95edec9fa268f085b56970302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230170349fa201723ab8a12096f8dee84c4c774f9afca3bc02631e9d7d8080265f7577ae54233076a4f85228d6f3b261ef1023100ccdfb165c0718d5111acb93f4076a8d8b4da24cfc34f11a00e1e9c19505c24185b703afe670fcf6066ccd8237f7109530302047c435bb500683066023100849cee7b150850db0ffe291dc35a2ba9b421d71de137c212ad2c08de42a59d105203619f60267c9f4112150ec8b41c160231009c7208669f6c1c997f2f5146e21a9c7d45c1187ad5abdd8124a19e00d6740a6a3292358d2b14650e0be292706d62e7940302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100967b45a8593336ad945f4f4e6c2bd9d8eac6c59d38e8b020845bedbbfd2931fbf971b92386d56dfba0121b30bb923199023021e989c7121652910001213df4d2078e8b154d08cd3f73c0534f51220e57e7a659731bad38730c683a93a31bd28073ab0302047c435bb50067306502310098213d9c264289d405a5f5f4fa18c9b167a90a8f178cb4fc2a49510a0594542fa7919924a7e1f80c893c843e439f5cfc02305ef448ce642638c95d9eced5e477cc05522323315b32117129a1a5c95cb7c568f89f350ff6c1fbdc004e6be942b3e3710302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023031ebf41a82eab6d0ae13ff29c1e470fc05e4a0829067276c10592cc0976e31370e5cc351fb91babe39b708325eefc8e2023100a2ca40153111ca4cdea68daed8d1c26df44f4bd9e7975dc006b4b77a762ffe1683907ae28c86decb3f06a97a2da0f26f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009c84d27829a2558e45dc7857bb2bb011b319715eca767167d62af6730fc0b070c1ade055ee0e0fe37e545c602506d73f023100b64f109f0772339f85bd70d8de141601931326930f149241d82f71a2792f41d39a33606e44894ddb7f5c4400326e4f450302047c435bb50067306502310099d5c5d47b16eb02a9465a1f2d84b1f5fedc9cce38ea04820dafbad28c6e6b558f1ce55a4ae08397354f2b938bfef846023022adce4e84af58b8a3323dc58160890699e63507aaa6e5817a7fe98fb685e5334f6a0a374a45d70e49441af9ed7b58830302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230087cf2c190f6b92e42cfbc99213fa8baeb7edf9f5c1b77b8c25b791f0dfe22ef448e51568b06be5441fbf58df58e6c37023036a86ba87771349e5b266935f4714ace8875808fe63f6b8498f4a109ef6e8da35ce88939c86ba3c566df0effe93375e50302047c435bb500683066023100f0c71fbf7a1fe4716f2cbec0d7e671546aca005747d48ee2067434ac1573f9039915c2e0208611160406e3a5fbb865e70231009693e163e491d7a8b9c6ea34ab7f60998212277d407877cf853bb0f9467d7e6afb0e2d867dba17f3e11bd7a072aa90330302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023058a75e6befa1c3c229542d742d5a14768a85879d6fe514f0411f2eae46a4741efc9981864817ec2044dacf5818c7fd3102306a94af3c4e6cc2fc9a6a4d5c7f8f2122c6d8aec4db67115abbe55d4111a03f0baf4ca42b0b6ed0d0af6661d69f8abae10302047c435bb50066306402303bee745d7915287a22981611d8d29d8eef7bfa9616ed8a171d53820fe92326153fd9c787143a1b901279015f4a4cc58702304799638aebb44a6892edc224cd1a066b520b288017a90650d68d4cfbe26dd70a16949cbb94ed9775e0ce9692e9918c380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c2aae9a65749fc80ad9eb6caa4b08ff59582f2fb89d48ca9e54a8d52094d4c10860933afdfb857ad2c752d02df8a9d2e023100b536c001a9bdeeac84bbfa5e1790a209073db487d1da2fa7290a0ce3fa2653776bed3ad53fe685095df0fb2a71dbf4d30302047c435bb50067306502302c7d20c4d8a07193391d02d6168956908f1ebb850e0e03a006e4e96485b9f2e96b1903ac61b00f21454e1d05ba4e58f90231009ccc30196ab14a7293e9ba745fd880746f9ff3dc50c538e8f2937525e2fbcd3ab66839fd5defbe37936b3b11266e5ca90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302bb5d669149886d53dfc516b014bbfaf67e67fd188a7f0530cfb4914a5596ea531331baf7f2fbd541487de60e1c7d51002301cbcd2b63563ff10ebd7e94f75dd4802bbf48ca161643465af1ddb7c47514d180ed2b52bad62c97cf2e1290c5abfb0910302047c435bb5006730650231008ad394bed15b798314814c7834daf3411ca7418676cd8072fce402d2db2fb0e678c016538a5b3921390930cc430f968302304a7cef6e136def975bc35ae9fabb724dbc02afe43731b22a0f83602e7323742ff9d9dc576e7efd7f45e9d79b40118bdf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023017eb82787cb377399c5241dd7bb0804ca03d5913a060466f38f52dfb6ec8114c5549cb759a553c200eb14c9df86f50c3023001a10d774f5fe2331eb6f12697f47fcfc3a5b68e52086f4788c5ff1023fa1a5baadaf0c976a5e19404234fa44e8adadb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023052a542161962d210eb13a1484453a11fb36c2181721a41fdabf9abba88e9c290e33ffbf03c681204a00c9c9e25f99cb002306b75dff02ac9640b1f8ea9e3ca71fa03bb64cdb321ed462faba66278c9bf68b62e7e7672eac9f0d742ffd3c02ff3969f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300439a95c1e63d6953a3378c4c5b49687f05acace5ec17a2cb7c5a3d24272e936aaf97ab0c57cdb80a68290f409e45a3d023100f3d3e6a961519bafdd91041755ffbfc96c9c937079a9e6a563da74bd4cf27198d46882bb292291e82e4ee1b6b93dbfd60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023058f291664535e134984462e05fb345f5dc6abd7a2befccd472f8a514f9d8a99f53b936d6cfbd42cc4db31d457656c1fb023100daea494baacbe33082ce590e05ab0477af5b9a32a78c05ae351ca2e1978ed24aa6a1d5525286022b743c0fe2979325a70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a57695d0be5d204e7293fdffbe8a0a51f31cf791ed0d120677f04859766ba5ac7f092cd0f350eaf21096ce70f9b375690230223cc4c41c52d9373aea7ffa1e1d90f1984a3aca15ee43a75a02a518b44e365f4ab3569717dc899e8a27be60f488a6830302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230048ce8eec4b6631bb692b55b0a81b7efc3f129ad913dd66841379ced2464e59bfdae3187a569c6f8fa863a03363111cb0230262f8ec1a1769f8aeba29eab7da45dc3764db09849aa8007c865ffac1852f22cd4dc33e13e52d670156f14d425e0ee030302047c435bb500683066023100ca682247e6ac4419eeb794bc6860100be3e08f449fe7314dc40a2170cec027cc79d3bb055f76c97a393bcb70f1964404023100ecf531d8f8e7a37ad13b962611bedfbc5c99e050f7532acfb082b9e8b81b8743c7b800e119040ff96270167045c2cd2f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023029c30d0341fac4f42aadf4c2b17b0c41cd9744ff66856fbd1bcbf6b1609c2cb798e0823e25012aec5d82ddf176900048023100f616b2dc75b723a062819edb718b18fb18141ca5646de53e4e133412dcb974ba3f1c11eedcad46441b9d12fb8f6770d10302047c435bb500683066023100f35f0b9787cff9052e2a50cd3fceee17ee2e08476e6cf96bd179efa3577a164a8f5d70edec8a87265f9483adf64f5a22023100ec09210fc2576df727ba0d2c99d0f75e4e0a243bff27ad3fe546fb4a864f56d5c76f903a0a68b6f2aa9b0acc9776f53e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305fda451f9cae4e2a29bda4207a8d4f315f20c8959efa3b825ef1532506fd8fd2a3c29c6d96058048760323c135efa47f023100bcc5e6e0b7960cec61ae459f1c4fd771302b00d023e0cfcbf0b78947fd399c4f044df556b4a8bb54c4cac4cded9841af0302047c435bb500673065023034489a36b7f1cbb862c9348fef3e0e3305c5892a4aec9b3c8249d3a7c5b039c6653f1942ffc15ee0425e897ab9509af2023100e199772237a5c6808325070609907e3b050b8b1526d9de066e8d98543682c514202935323157a3d9429fa761290d4db20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023015e0281d23f9f1c84a2e26dddc8c03a64b479df2a841e9ec7e230e3398cf99e87b0faa4d48bfddc6d7e48d59cf5c3a98023100d4cdd663cc118cc7be4544b9e1c1f1f51d34729abb78306b623565a6d5e7059d305bae0991c6dc5997748611e54b311a0302047c435bb50066306402307b61f846c36457f95b9c7b92271d76ee8443c1655fbde3a909866509a6c2a3ccb7730c3afe6703bb8cdd56aafcdf53dc0230444c37c0d33f80fafe9a9c635e3b05238066b3f4f7f9e4d5ec2f284b463e70b9f0b868855944e26462149e229173d3860302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023006f12dea1b3e9a74e36b6f682bb4d44c5f3ca3585d45ee17ef9e0a1fbd6b1c55523646178cf6be0cde6830d6346ef58e0230562ff3c7f9b02af31e674ab6f9709e59f21379e5b49010a7dd9d93c74f72e030675bb304f1bb6e6a550eb1e754b2af240302047c435bb5006830660231008f99da1a3a25a23675bd804df73d09dc1a9d880e1ed1b39976ab26d3c022a2917d8cf392b4caff217892858dd8196af2023100a2f505d5fab488279e2d61b19bfe356859be13494f918074e162158b247c316d878e5719d42c61bb27248c7f958168160302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100eb12fd4e43863c83aebff08fd668ccf689262b890d8c88a1dc97120ce8f411ae9b0753392770d2bcd3d62ea5f7d83fb20230065903900d11fd064e37f949585e70d8616ba3588ea615f8e2259565b2878e0f0c530b51c29f0c9454f92b58973205630302047c435bb5006730650230013e858648815d97506b5ef13920cfdada0a538ab1ab34089428c7aa4e02040093b96ab65f3fea2c765a03ca26f766b40231009e7b06c3a43c71ef294e4de3f57ef025ad4a7332db5a5a0be3950a798d96cffd9649b61bb54fe3d6bfb4facfd77413cf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230301a0792ee09b8b64a3d9d789a618ea5df953db5e5ece94cade38ac2e7e8a963fbc0845b2d31e4909894bc8da87e6d1e023100e294ada7b96060c6f10a73cd056c2a9e446d1872719afab9c0d489f87673b70da92967c63d84827e9fd32ec04b7257e00302047c435bb500673065023001be9cbdd08d503228cdd2b8b178738b3bb3e616bf05f1acaf4160a1e354ac17d3524b208023031c30f7478b02f001d202310083d74396cc05f49cbed27210bf81ee6d637cdb442356d567e6fea3e942b2830063fc604f3060a1d923b54e8a7369baf00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100bb52c5147d589041bbcd21d82ef0c2245e019dd3221e2525a22f093cb6d7737012caf7fea3b06d2391225c13035d07aa023100b4b58493205f260444abab6bff04a7d932d3cc399e4252d088f4dd5d85bfbbe4bb28388cd09359884202fbb45ef6e3c90302047c435bb500673065023100b5a6d97906c12498f53e4ace3ed5a7c59f04651f609089de696cb305f109252228adcb25b61d135d97b53ff93861000a023059c2910be21aa7d7ec57a6d7d78d9884b31438cb963e9512cf52b12ac721abaceed447299872dc452738b8ed429734d70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009537780ce8510938ab79aace82b1aaf70b7263651ee9f8fb6eaf2e8a3a3c890709514af7dd70cdba6423870412a3fe2202307a2ec2d43e44732bc2b2a91d81d068eb6b06af129e245db0aadec1ff0ef23c74b7c3d778791c9c0a3e1088890a0725050302047c435bb500673065023030bc5af46ef0236e5484efe43ea486c923ad7f6fe701bb5e95d62c3939abb1dcdda1ef5e2c92da19c0f695e42cbad2dc023100f2487c00dc7367a437f770eb8f2e510cc4a3ec1b1844ebca9f30dea48820cff81e7956bc033a3fe42353807a9f90d4630302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100eb95f2c0d2efda962a592370b41ebbebc144c8a54bff7608658563b215815e0272f3c6a76a9ab98aba84af44604a69ec02301474e85434453e8aab50e21c8bf6c1d06f7779af2e6b46ae038e516a6c3f215b8cce88936aca7fa91224a75b6353aa7d0302047c435bb500673065023061ade57a698ad542a0a8afadcebdea5a8a6b1266b2a69df1cf79450c17e12f90de79b6522488e4533d506c9e8490853d023100cb2b9486cdbe3d9a7d3628216db4c47927b98baee42779d2553727032eb3d8f626068b4867e4cb19cab0f65d57e2487f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301e74c03396879724dac1c7aa30f3b747d7e738976c42b1eebb5e6e76565c2984387221ef3c13779048528003678a9580023100ab5ee16a542b47e0400418ef6f74fb30b70ba06d49deb0a2493aa677b4a3d1d494736e8eebaf61e7ebdb0d774df5ad7f0302047c435bb500663064023065c30c93d0fe5e594d42ed674c1499aff91c3e08c87d0b645726bf573b1825697c92c1e951639f0e9c8d5238347f536702304071c4fb57cf01cd273b768e7287a0bf7baae90880b7300f84be5de18e7da8f7ebc6ac121de8d676dc354c1426d244250302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b75ab601efd4ca66f55d1249a42b816d6d8b457bef9cf78609f3abf760a475210ea0650f9663dfde86c7269bd451f7ef0230121b024127bc27089f91d7263dd200c1d0fb1b9645c1182daea8be31d7e7eb314baeaa89766f66634a485aa967a88ec80302047c435bb50067306502310096e244f1adcf745b6a6d11928ea8469c706714a86594d128ab1e1811b28c241128d8befb1286808ba6593d6202487f1f02303fe2b534add7b3c53b1fde1ac2e7a6876f0c0f0c9d836698716239b47f43f73ed0e58b48b0aab74131e37980871cacb00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023033f572e0051a7a866d26e2957fc8a779cf79cd7dab05a67d798e5a83eeda57cbef990e1d8f844d5acc5199468de1e114023100c6303774da067535e1fcbb19d77e69b6aa6a02e0a6a76b637dce534965f4d7ffa7a84ac18b1f76e333ed863666d593660302047c435bb5006730650231009cf60bb55794da790b5fa9c6951a554d4a662584931536ed2ff8b979960429ab0e0270b7a9a3b9f246ef780a6d3b398702305c60d376af09171460c784e6275c8ff2b6ee97eb09b097aa070ca63b55d741fafa516c05460bf5eba5dc4d592340c40e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306c4eb0bed5234936477c1e5d8e699fb4be85837d555c07cd34fa52159f61edcc954463269b6e2810de59a481ca0365ad02305c4f7b56038491ce253d090daa4c1e67c2f5023031beb9a95050fdca2a13a77c4e57fb72fa69bd456a9cf725923591240302047c435bb500673065023100e7ef2406d9c60a3c688a5b2da258e8ca39adbaa688bf3e2c1f5d968d1b2648fd90b0427fee424b03366f6d775335323d02304d0c44de7d88a7b55baec3cbcb55af773069ffdcb871d2c49757cf579a8a570e4c404f332c265e4065e467ef1d2389c20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c451780b704df5e1a21bc9e07383966696d9a6310199e6b78cdaeb608afdfe594a03ed71b8c40fbe2c9d5d2df84845ff0230075fc8ebc9c51f1c0ddbac03f98d14b53388f6e86fc7f383106d875b77240addeb4b585402ac82fe9e379cd8af4157190302047c435bb500673065023100a79eac528574fd1804e7bdcbc5b6b692052c4a5ff4485b1d3dbaf878a02971a01bf265a217932f64d067df070dc19e45023042aa7471c8cd90a9674ecf349e1200abf041bd2ca6107c5fd414f2bc1102761cc3344f30a533078be37ed286a47a680b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023029a10c58b6fc8dc1dee4eb23ac87566eb05bf09a2f8b14814d74dbc3dfd01e729463fbea9823dafeabac25ce447921a302304eca863f7d27c92bae3aa395c74c16a135222205858a7c59d4b4c97a871ee4fb3826f2ded4f0784c2951d132b5d3689a0302047c435bb500663064023056a7625212cf0361e72d94b21662620764f4619866187d29baf8d3de21064835bccf5a132a7e1960c7d2328ac978d2b202306fc3b287c091a0027f864926b6d109ebead3d34f38da5f15bc0b5474e78fe179c9bf4dcf1c3eec0eefa1b0597fd25b810302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306b75a716913dc79ee95dd445de74beda7da614ed17f1bdcc8001342020b3ea7a90e3b61d974a7307f0771b85377ecce50230732646e2c0a886e1cccb85474419dda46bfc36725d06f7e471016f9bb8b9288a2021528d216152aefa5bd60ba06c2a320302047c435bb500673065023100e989ad5c25218376ecf9870e88c0b98ac6e7338fc738982ba7f25c1167407e458ddeb08f84a264a3328a9730faa4bc2d02305f9929d5bd1fb4e6c301e5fd4691cc4e294d7eb3bbb507025392a1d1916559d899baa73a341f4fcce18c03e03b9d86f10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a92016b40ca3b79b2da944748ed2d561ec762922d9db8243197eb261b62b07f9e43d1f7ba7c6d2c2a2d46549039dc8cc0231009dcdc1f3865e346066dbf256ce9091ff17cbb896b8daaf2d8ba67723cb93504f7095c97d9a78177e3136a8075f3880220302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100da30102e5ca117feaebc76c72f0e91daa813dd09ccb7c26e8380ffffd055186c84921625e0d3d1207d41738103c5ebeb023067bfc372ebc5b29f409cc65655c5afd7a3a6f3e13a7f632fa9eed9943b4356f4bf09991fdd4f7c8d9d862830f41923870302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023075f7f1f9dc5c73c95dca564bdf9dd639dd53c3c1c53a9fc469fa0a6c56f2dce5b4be85adbb632e07eda902eab32596ee0231009b8a2e77d6bf01d0939dbd568833ab97249d9d6d5e1b10339814b86445c3d0eac913d7512da42df047a6482228bda22a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310093abc7b7b212e2422b0be61bb1825df37078cc126c25e8a61ff25ede131d88bf6037d0cbee989b4a95cbcaeb8f839cc6023100e575de48436fd0d7f6beb8fe887ae7dfa9e703e017e5a2a06317492e8a3c7cb124de65a286b132f4f1739d767b798c4a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100fc10c97121587c48ac9fb43d2b75207089c2fdedccb7856f92284fc332f35611d623d05693650eb7018fcb4d45befeac02303ddef4e624d1dff4e7e00473baccececb3171ed08429f60291f448fe48430300513bd53f6be65af8820ab9b72f3e74e70302047c435bb500673065023100bcdedda66cc6aee71faae3fb0c730a0e2f8d5bf56c9bcf0ff92f3767dc58a1d236037920c9f4cb4b8fb781ef1e8ca3b002306698a8e0dfb4d6602e9e3d29e54d79637ec83389e0825424c0e4194883bdaddf5ec3aadd9493fa0f2eb0cf408ea5641a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230173100fe16dd2a859dc4505c8cf87b8664427badf18efa1b3035e465d7e748a82237dbc882ae11561539dc2cc64d48b90231009ca1d4b7331beac8cab03b697f0cdd7bbaac3da842342ab24b73b574f63bedb184569fc709b2342c61454cb51e7ff6ff0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310096c3838b37964e7d53be99ec97f0c022ce6a9329939072943b370a16639aeb2ec08c2766d5c6bb24288ead1af234d167023100ea261993b44cae31c148b13026ac1523699f808c4ba99a69c3ca3fb8bd4b7f8b5c114e02b5599dce6db4655902df7bca0302047c435bb50066306402306d27aafd3b3b039b0088d6d34fcc1d00b1ab114b1c0794e2582fcb3d34215e45e162bb71b562a65b199defc7bddccc0d02302905f80b36736a9b0c1966befbf9b4f886f8c3f1be1914dc29fd06d4d73df12a395591536385f0c678abbf1a321dd7320302047c435bb5006630640230799eb00ce173b07d4cba0d311c266d53e0af7119b1d7be4bf7c1ae0125d6e4b338974d2401178ed94cbb87618eb02b7d0230427352ebea5090c6c9e3f25276298199a11124ae24206de63929d0306b7ac0f56e9b1a94ee6aaea26be05253fc6e873c0302047c435bb5006630640230106146178f2fb6eff1f9e9adb20df1dad9d47cacb8f57fa2b436437d6075eec2bb8d36716fe886dc2eb6732de81dae3e02307b069866d4905543394c1dd963b8153f9c08b3ffaf3096e2985a6a7f477195d4552e9ba1266ecda2966aa5f64c16a3000302047c435bb50066306402305e23dd90035ee9c0d4c8bc45946cbeefdb3f3f926bb2cd8152b1cea11e5b6cefae906f2340d54285786d6b6ad0200c1202307e89872db9704e94e30a06bde25d12179d2a59796ea6157e368c43877d6e172cd7cfb6e4779193932bb3ef62979045f60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306c1ef1ad059f2e2695d16af4a182f3147b9be15416370c92b5281c78aba700731352b0a83801ba2ffd830b76ed0308cf023033453ba018be18845f9f5f8e192edd9bd3b77eaf71ebebea21d0f197b2ac6915a618a10f17b554811994d78c618374340302047c435bb500663064023067221f7b1f60673e81a2ef05784c1d261b1a3ce905b3cb84028abaf023c9080bd897e163e00cad0962b875a9ff26b6060230050f5a9a48f9182b28079817d8ea2a3b5ab0892a2efe54f1c21ef300c749bea84d3bc98df4515021454151d31075a3780302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230443d44564d64abdfb7da9b21d4194171dab03839a8c066f7b5223ac414c3480c841ec39a206abe327293846254ee79de023030410f4c646fa1a669dffcec31a0b298dee61877fdc6a1969d8d3c50106203860a5ea5bd10bfdafd62a51a3a648a6bec0302047c435bb500673065023100d3f7ee28d24397ace211a00a9ddf72fd9a411e8ebb2e66139e1da9608699895b268bc94efbd3bc7782fc626b06d383c00230782369f482c818390fe84ca96059ef449e83cd0703c89ea20277624d1549af3d1d47d26b8b48109687b184b681737bba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009ed9b86549037e2dfd139c1a8f3798df73b808a1495d7a44b9c49bc8494dd28c288334e3fa3f77102eadcf6cd1bfad9e023100d51e15d44db76da01a4bef420da7142ad3a433d6a52b81b803ec0fe3b10aa1dda7df4ace29d2930de5da96e9eed894af0302047c435bb500673065023100c00d9f462cdff67cbf17f37ae786adec87f6f9c54538a7c524e23cd383fdb01f5dad68840179797ecc21b3c5e6f448b602300269ffb6a871cf97581cf3eafc783607508d33c4b7e1783e4a625d26ec399aac7a61b876f3f8b364222759c010ecf8290302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302a5bbd74661434ec75986332033d8f532454492eeb953d8d3501d60239b4dba4080004f9597c77e58e7a325d5e64ce280230752ebda85b251cd4d5e38ef56d0ea8f769dff14c8d74b28a6e6f2d37a069181326f11fa31ffb239ee445a1383c76d3c80302047c435bb500683066023100f10559feddb00a7d8969a3e566c9c73033a559c8691b9fbd06f95c379a6d26202dbff0d3397e2155ee38592e2a434248023100d73659ddf87ee12d7c86affd2696e4ea264f649d7c53d5bfcff4c7a272b16bcaddb7d39a7e6e1ae06c2cffa5b923d6580302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230112a14b0121bde3352610fdd13f8708416769e46d357c3a655306d04e171a02676af1a83178bbe84d89895a6f09b0f40023100ea991cd64e06cff42a67ae7748b817b08fa686b7f3aaf8cc0547938d7cb96b3d86fd3a67e4c162f69379cfa9997705a70302047c435bb500683066023100f4ee12c75b9204488a446a8c543e756068f9802b650ee9b3445bb0603b9f4712e87b7ade50d1f54d68c5c6143faca9d6023100d8e23bb9515e8f7979e1e2b3e0197cb88739d33a2f3f30fd3d82c504dd570b2b7bd3839cf689e76996a1467decf0623d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304e0d7772cdbc5790b2cf040cf5c1ca8ea32c7d7476f8e695fdf044dcfb718415638b40458735ee727e33dc89bccac308023100903192cfdc63ecc1d1ac305a90b5d07344f88f84e3d9cb2f008577acfd1e79f7ccf6ed5c176fd78db403b7d0be6f70be0302047c435bb50066306402303bc4b101adf34d9a72b3c590d5496b6700befbd20667490cd8aea749c2ee0765a9a4a7417966d41c7a69e730dc9e492002300de94b014cfc43cd59ed7534e0eee22639a80caf295bcb143a1958df6193329c2ba80500e510bb4280546e2ff8b446600302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023038c24f460fb2aac2bec88a17b58c49fd77bb8396c8eacf138b4aa306c509d8e0978954759d9204119e132241ae93784a02304c8193afca6d6c00cd4022c1d1d4a22bb873817bdc969ce3c6fda05ad7315f25be09ddf77fbad0bdb3164e5f24c4a5a20302047c435bb500683066023100ffb37d43fb2d5266e650023902d5231d73320e32ca3dd6ec068962f2db82649d6e8ee766e08fbdb1da1c85f4991da017023100e8f4b33a2f8562fda5c4e5256bc2fcb72ded039d6c766c62e3c35ee570e9cab316840c292cfedf1706e7f8f93a8033f20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100dfec5d0005d44cc7477baafbeefa853ecc0fdc7e8ff469704415d2ec693eee0cb891b7a26c199fa8a70be19510371ad4023100ed1ed60390a7e7af70b1d6ca50f566d9086c61c9bdd66f59dec0f3d9cccc83626db695aad46fdf5c1325dcfaf73da2ba0302047c435bb50067306502306d609eb7aae1b9d5fd33cda98c9fe3b085cff94723cd639d6bd0117309360e1d66ea32b5a22529b4adf6cff8552e0f94023100d938acc069f738656d5581e1a099b226fae887781d0e533b8c89f60f204ddee62453e5b169c56b5121b90826390aa9d10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100aa7ae1fbdf19f9b2515d532274a7e064795369db181457d561678d0287ed666a85c951a6f778660b33b1faee852c6e7d023100fed04fe12c0ed10c44b1e59344933760376b965d1e2093766b4102af312eac15c7a413532dc66b63d8321d90ab2892a90302047c435bb500673065023100a9de4b0679182ba004609a0224a3b5d93306c5d0f10a8326c0b8afe87b5e39c35051c00c3778be542f14ee37ee932d0f02302f6bde43e99c60a80dced3fe678f259b77ade76a56bfe4631e465bdf71c80742098a1e0dd267402b79dd101afdbc511c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301c5d61dc3218a12dd914b179a2757ce655036b092110f646a26782464007d19033a84179f38be911e0466e407dbf63f3023100817547ab2c4233fd46d3d580d301d6b36215bc0d5eeb3dd22d4f041d9196fa27a04055b58e73a643a9c2d1561c37c3830302047c435bb500673065023005520bdb6f2253b3c59d4b4bf4e3ae7f39fdb93638ad027e33b66cec76ba49caab5c1b42e8af23b9b7f4162368705c42023100cf3beffb8c781762059527c6c3c11a0859f337c74f70c1fa573883295a40576329a9b82acc34d11af1b8653e8ff391310302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300363949a6a4d11c7dec1a7a7ade681cd9b8416765878e113c3134aa3791b14c21a16796bd6eca63df1e26ec7257954ce023100c73db5852e2eeb219708c18daa538272de2255c4e47d5f566c28680f8191f4a6dd1bf8a106a2ed1cdda61820daeade7c0302047c435bb500673065023100acf0464aa45a95dd2f871dd15c5ff9f2570def148dee506f3a0457ba1683d9ff232031a99c9da6bc6ddadebe266e10fb023010c453f6a785db6be8f1a84fc03145219efc425cf7648378735ef1e31ea716293a44e478acec5c23bab34fbf8754dfc70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230216f160e36931b70cf08b6f0918081dad91a83c222d5b038c626ee091f960acf220bb67f295c9fcf6ca77489b101bd27023100efd90126bc0f1f20452a05fdd0cb2530ea7fe7394aa50e76712c19deef264266cee5fbd0bf552f456bc6302792162d3f0302047c435bb50067306502305f60e31b2907c94dbf08b51b7e68a9672a7cafaaab7a5c03b195e9ee778b32e296f9f08bfdb8164aae411d15fed2bf32023100dc6c6878e014ff0ae22f1eeefb782fe2cf0cedff558129535c363b2de323b3345a1f3df64b9efae25436fb723fc6fa820302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f1ad8c42fbab63df451c4c4467cd490a5485512c054a8a6f9d162fbd7d289864b38a4ed1dfd55a8e6651bd7b6dafcf4002310092ec4db6686faf5435f6fec5792f45fbc2d538d85e6022c723418206751fbdc8a00f60555488ad93890a6a3cac57c7e20302047c435bb500673065023100a68401004299386661a41f529caacb882b18e80ec72f43b15f13affb4bf20929cf6f4fb8bb466ee7e49e619f6a5f4b2b02304bfa227234a6df2249b5349d147cb908ab7a9bedb3f4e6cb8ff6003ccb77693583807494d1e62af9eb82eab7a6d376400302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306aa1853faca0293771cf3b7caac56aafbe59c32672f07d80eaeabfdd8593343141e5d89bcca93154a6127f6095e1207d023023c6b1809c7b7f97f44a21fbbb60cfd1a66beb07d0456319e17732857072cd4e5389bcafdee58061e8520ecf93c16f4e0302047c435bb5006830660231008e52285f052dd58443fd22f5793c5bcbdfff72619bedf541927de8d9cb2aeb3182fdfbc0dd28dead90aae12967ea92ef023100a2307d13f1f821a2b461c0e8f6cb299c6c024c7f265036e57c9c3c076f2c4ef52e8b9df36378778d84236604037e390a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310098af89749b9324984f18fa555257555b05ad71a29637e79e0008f8431513ad4d4c848a6a55955053185a0db0c4bf4dcc02304ad4cad3ff39b6e9eefb2049c7b59b8fcc75470f7d64a24498ca6213d3eca929365ac9a81e83d4e4b13eb423ce30992c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307c962e8405fe29b1f70be225b9c69398556df9478e481c5b7ad75803edc9cadc7ba1f94d4bc132e3d282f94ce07172a9023100ff28082a3118e21b1f8f06dbc45037cb980e64c70733cdbd14657253da0bf74982717e55817543102b5fc8b8b2d8b6ff0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e32eabf914518d44cbe01663066dd7aaef8f12332e9ab6f2a2192b522f9f3b5935a6d583df49b7278c2f0e1e6b312755023100e45e9cc846df2bbcece83eadb9c457cb091637842fa2111df0bb98a5c6f0fb1d01aafc40ae6459df4fb56d460b942baa0302047c435bb500673065023039a5cae9b6c256c9237e68124d568ca247d69aa1ad7adcfce52a3bcdc54ea90e593b2e94fd6311b0cb3eb42f9ff16af0023100fe21a1957c168de76a4cdda0791fbb569f787a4e93eb8ccd3ba515b2d09c5fc35deac61413e9ed1540f0fab3536b92d10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023023074c6902fadf8f882f8226710c1e70c474b529bf7ce4ba1201f0196871a80867f8674082701d11ae350d18b649a89c023100951e0b746e2f6152d7982c576ad758ef35301e8dd78fd00c4477248d6062719d234f711ccaebaec7346025e1b4128aa30302047c435bb50067306502307c1489382e4f2d0a3c562fb3de89ccedd6b46be6d076db20b37cfdb2e106da048f8d8fce20d0f15c68838a77233df89002310085bd6f957ee3af0eac24abbe75998b4f006b780a1fd2110f2a899811a38c5808fbdeb3e947bbf25467c4c811e80a03940302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301209d5f56777c8617ae2a87ca7bb6551ace8c8c88fcdc8df52f6abcbcd560eca38660aece550ebc77253fb905b5163e9023100be91e2dbe16933c548abe6a0d9e88634ebbdb98e3709badc6c2d5a34f376501b8a8f17a24f0f40bd274b5b9a4cf43b930302047c435bb500673065023100b195106d8dce0d5714a6a2e5777b1b6b0e618d3f5055b8ecc751a4162785277545d7bd93cbe649beb8e4267e2cafb6d30230686e31975508f716fa4f8231ddfeefba44e7a4b7eb895c5a721e6773e2f1a182f365408ce20c3f0f3edf42b979e7c69b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008db503886bbc85d2424f789214308e07b02a7925007e6a8f43e5d23a1221a4fc5affa7fc97df3252d6ca172851caf5c1023100ff9f979d1576a5e42a4e772e745a228aacb0ad40aa8a577ab86015b85ec41d3505c58f859d165852b7074cdc8831bdf20302047c435bb5006830660231008b2e79db295397b245b8dcfd934258d28b9585f35d0b3fcdc90de77cc235bbc0e5f9ec9f82667a72209f5c7ca83c5420023100acf77244b1d82833c0c867e2cee8aadc70324dbed71adbbfeef4cdf4788d32ffdca977b60dd7d5117833881ca227b3300302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402300781fd46201cfd563053fb1b665eda7cc21af1c3111b6203e7b105ecf0a9dafa4effd578a8da36a1764b62bb9a4370d702301c6f30359a5a7395541de2ebc93ce890671cb21766bb3bcb607fafa9dddaf5a997ea4dde507a9107fab21dc0890f4be60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230770cc73aee0719d061528022a0a4e0f85fb171fe067ae5f525e438d9114a33adc7958fbf67ef5a31418aa8c228e5214c023100bb83af1adf7e0d6805593f3bceac586912b389b78248d60266de85ea9efc0a9ce2183763e92cbe10a88b11fca31776380302047c435bb50068306602310096539e673167f1c0ea017e3b3bd825912aa1982f17cd0177efeb48dcbc2eef9f7b6ae338bec124c9f327f65fc7ea9580023100a7ffe1ed115317818cdd6a27c947635b686cf25cbfd2986d623ce5838a0d97008a3a33dbc673c4c6b23f6f8c7d0be7370302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303a2c6ca3a49a33376ec3abd6240132b61b8176e496f1bad5bf871b00af5cc731f73a0745bd1cfbd28da6f6192b9ea10b023006062d8c90e6edb64d50513a0da49e7f1793538b58065f09d1fd03418450787cb4a0722946b78819369e4d3f8869e60e0302047c435bb500673065023038ec27f1897fcbd9ce1ad9e2a5af853ad8811ba13344b598b3e47d56feb614ea73a412bd80b91f98f92bd3395bfa202d0231009f804929e4b96f7c5d4e67c639ac8462669c0395b526e07dc10cf4b22dafbd2ff1bc1887e40e206b817646b96741e4b60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301482286cb950c899a8ecc636d0c715b9007aa676ec4f8c4c4e81f4511e67576947d83a1ccdb2b90c03eaa661e9170a370230747396683989239222313d1bcf526ffc9ac1821f05e569e6a45305de3a5a5b292f7811e7f1b96ec7f052c64e63c7f3bf0302047c435bb50067306502301e875e1359d3059c394dfad9f3bb60e9f28d643020e3f4e7517cfa22041a9fc26eed6540b5e4738bc1dfd40b4278364d023100f60b1d9483c7024a5250fe0f98a9e349ca34d312f936a3138a35048254dd1138a67bcd57cd387f37f2909b5b2b0460c30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e6f866f8b94cadb4f178e03ddcef4837f98420c13b9e3041ccd69f5adcaf6be985afa857046eae77d559140665096429023073e2073b03dd46fff74eeee8f8acc6ee6c842af73731b87d394c2de397e5e6511b2ca82158c411ffa61b424b8d36e4e00302047c435bb5006630640230176e337438f1d8be99e576e4b3efd8543c84704cc6123e2bb5fa88a84fba5ee4494a7d280b75c10dd640a9fcb30d024302300e302cdef03955ddf3d2b8aca2768be292178cb512460c911f59b78f9efc785e0d01d0a408d56d5701196e1c3fe8d3650302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023028a0bb8b92085e85eb5e8bfd7f9323c3145c028c0a86e1ce3d56875c6c8bf877223c8c163d449c2623289b0457b4b2bf02301ad38d365bfa86588edabb4a3eb668a5be033956ce8ce888cc206e25f3407b3bcb7dbf28825d99070aadffa3c1d2c4c30302047c435bb500673065023100a0028ddcedd92a9aac6072b463d5c1481ab63bfdb875840071410a95fb2d4d95328ea7307215150cb67adec627d46c4a02304509737c87afb12d87220b42db77891c55a9fa5757526ec670fc49230287f187d594bffcdf4030c036f574183093bd770302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306a98c28f884fae8196265d327421724545a0b379508dd026832706a26ab8eae7792de5e241386bae2679a808fa18b7e5023027e43ca18e28d8e90233dd88d9ac10f2607870146d1441606cda6fc0fd9d00f3e995ad38ded9783c6dd4919332703ece0302047c435bb50068306602310093ccfdd41d5d92d65d19b281d6ce92eae7494c8cc150d400d6bdfbe29b238cec114d741527cca389bbbafd5d951f66b3023100aa1e91407e1bbbbb18bb971de3b2f1179905500977c7257af1781fe08e9e183d594e77a31eefa50325f2e94e7b9e6d5f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302cc288ab39758908c0fd1897700f82903c9cb5f5b220fd1dbe08f6dd5cd0c2d34eb2e4da6f542a082b5f52a9b9e7a43f023100921d492011855fccccf75fdad1dd006b503aab16214ec532d1d946e386793fb929676dc91b326b0ec6ac9da607154b580302047c435bb500683066023100c07ab37207972f20aa482dd321b15345b7e212e8e0ca5fe86f0ffa79dec5c03db66aa21e2e83075c1c223d567b262fae023100b855beba5a0e51ed9e2fea743d7d842c7463fc6ea9eb9531d4ca6eb77ccfae8e8595f062057aeca8871bfeb749e8b3d80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b7acf2590cd1a9e0688be62660f11c54d4a47f5618c1ab913c28f077291ec0a3a04f1fa8a1b52d0a8eb476ca92705990023100913a0e2a71f3476f44447df63f68cfe46cc5513f1276f04d05c3d6e975ee26eea720919d14313ec244fa0779f86b35ea0302047c435bb500663064023025865748791ac6c232b8f84f8fa6bcfd69fac126a890bec65c49851801fe75e7ca28b4717842993bb5228d2a26d8c9d10230208d5580aee249e0483d0194b12276d845421a20eec86ef1d7aa26a27b6c629869cfe9c2b6bd18749e093bdc4dd70e220302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023051e858afd26d3c93b4f0b164e2632f68e95183ba910758ea123ba5bad2301b55694ce48e891a51dc1a72e0d4593fe87b023100c7df66c6402265d663e5d1dd51a9cf8e366eb0205a6d616cd3db487df66edcd5208381901003a2ed82ae666949828c3d0302047c435bb500673065023100a73fb0859256e19995a41d474bdd6faa45b67c00498d1db1c304fa20b1407afe4fe61ace60a6820e2113d43a88bf95c102305235e25ab6b05d10c097d70e1e62963b888aeec46467d06728abce56417cd243a3f53d6dcdd3ab14a028d96172eaf14b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f5c8515b342c0c9dabb06e462ceaa9607cd73a182a4112d4eeceffc0f7672b386a31b9f3e06d862247238107a25f3b8e023054440d65c1240810515a553baaec3132261e384526eaf17c1bccc58f7737e0da23a4e543200bcbafd9b229de639f8b9b0302047c435bb50067306502303a589f07b3d186630dba8e6f6c73f50b771bcd7619193abbf211c7cd93bf4ee6dc07d50c54b6c7288bdb9c835bb74451023100d5bbdb18df79cc965cea6fcc79c36091661c63441e14788e360de4fbe531f7c1583d193c4cbe197207748064d7b641bc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e25f7ba2f14b875a9914c55f5b60d2e6e2ab577258ddf244b6278f3deea44690f9ae6f9aeddd2d1c204a222dd09f884c023100e9f41a6e91318df0a58cea9eebee85f1d3adde64d3707388a040007bd0c2c4fb35186e04a4c08b33426cb2c3a2914d8f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d27260c04f97e8ee3aa970824683270d6db7d8cb33b6be80c4c67ad8d422c5b70b1229caf6c5784cad4f608380478b0402304671f2d81f1e7efd90317a7d6935b9bcbb12db8336e2dcb030f5bcf562407928709f6d1f767116718ef8103a912f68c60302047c435bb50066306402303f56acfde096e33bb21c797b6b7d6daa985aea7fadb3051215b1dc8bb09d4c582f58d047c8e327909dfcc0ade979d9e902304b41e3049cda2a12bad05f20dc233cf06ff3977f0c10a7f3f0e7336a30da099da7d44a3045f556f1788bf1fe5ca3e1450302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100fd0465836d388778532441f6afb311edbc2a8c26e6679c4118325412a2bef00e20fbd3ddc8f9e2f7802b5e5e1889dd290230645178fffde475e35dd609fede051185fda4a932de489bcf57c2f37b9154d8d922f7d60877e34f4d0d32deb0bc7f54cb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c5eccd6d5df4c92021234b870c87f0c005345099011f3a25d8f21536051e53c597388abec327651d7b07c1ff6c5da468023100a13b5bd3e94ea114903b938fc2999bb92d9ee3c30c434925131bc28e98462e1e14a3558c138f04aecedfdf5ce443ea070302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303131c1aa10d5e18cde2549ea8bbd66ff2657149df0545190317fc9b5807e2b822c24bb4a7c776786da4a19750578fcf4023100f4cceab38f3a3db4455666fc8244ae30c4bebf9b8779ab621e4934e7e46ecbc68b2a923642803f57bb0f3c53fd7327120302047c435bb500683066023100d1a48c6694147d8a0efb9f799d9782ee16f55827358916ee95b0c0e0ad1eeecd395066b742dcc625ad785bb00df0d20e023100e934510148631599cd165c2715efd7664f0dc2cf651fa9e02938de90139c02a2cc79ce5090298f3df0e851e8da3a20890302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f09d6a70bb696f6b900a1223f72cdb4aa5e1483fc64302d72522844c521a1256f00b5800ce17179504cfcf3eb8587d1d02304bbeabcec89168c735eb52aabf96a7f8bb39092a35b8a16a3a3d7b11faa3e321a7cf3aaf295a7c82800403bd1d827f280302047c435bb5006830660231008e4399941ea04a5605ac484a1b3ab8c91525ee28dbf4b9cbb8a5f1f7071153ad52a89cb1fcd57205cdba74dfb4fe3b45023100bdb34cafa4dea120cc95e37573699ea8fdefb02a117cade77599305994e4cc50494ddd51c9fe615950ab5a2f3894e17f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023056d3ec7c35b74de4553ac7fecd9610a9138d6e2290fedbb3c5660a295e2c69a12266e4c49f81c5aece67a4073846119602302d6e00f11ae6da7290255b3ca78026e19e35694ee252c85bef8c34d0f8e7d55388e0772124d3035d20e02c1164b9dc6e0302047c435bb500683066023100b6078ae7941fd693fb6b9016a1ebe948e449154b8ba9599d55a54de7e98a9bba12cae379702f722ab670a28c22db8f4702310082c59ca2004e247173b88ad1882319d5fd021da5c126c6a7d584f6c31eb6861894fc89fcf293b9c0a6b35af41d4e12820302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230666d77e98b2071878fc6bbbfbf90edc09c3d2c02017ba988891d11ecdda8cb962aca1ea7a69c814132affa461d39cada02306f9fb888ce22e5a381a98522ef62a66bb4d976bd58496105ac404bef89fd4dbffdac56b5e2de4bd31c4c74906a74c3750302047c435bb500683066023100810190fa54a8a36ef644110f60a7673fadfcacade0442f860130527f2681af9f1ff7e5123752ae47f9ba283145a7103b023100df66e76c9d9c0e7d0564919360adea997f0103a4058bf6b79952615b337a2f3fca86352d3e29e248c4dcd65ab2f2efcd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230471d75c7e78111d6ef3fb698e09ff9a2d97e762bc3f9df2b86a58b99ad733ed48b92d5639f0cfde74e91fc9c46109737023100d4efbb81bb1f45733a73bad41141b6ce1f5845d99efce4b06a5455b80a0ef910d2c13152d68a5cbcf0cb5eee524a222a0302047c435bb50066306402307fde3d276d798b4dbfbf8ca2ed85f0a12a333553df36cc14b55dc2e2f6030b2269d1730f6442ecc373dbc2aa6194b4e902303cd9c3bb15e4f3f1e75db4dfc27b77ea47d4b3a5fe7480effa7ef068df97bb1fa11184be623c6f8462f45cdab76b4b790302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023034d6d44fc9b491f8f41ba9e9e43198f7ddb4cb87e01e7ac0ec9f9ce18aba599406d1f8ac4336e1d79c43d037db20445a0231008b4cbb449f49b94411c30040b3edd96c626eb9c51438d8ea23d6d6e54540d79eb6019c333cfa2c99bab0eedf269fdcae0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100be66c2774ea0fcd93866ba51c205d53d4c31ca8ca66a86cd064a96943f578b437c8893c82df381597509ad9f2cfa2f55023036d7315b6700951e120840477f87dbc686d55f10fee5f86585c450fcfb6bceaeb39ecf583310c01440433786f38f23d00302047c435bb500663064023027367434f6b511c6bf1cf2cbd99d044b53980cb417272f1b1aa7c3b763da86dc3295aedeee2f93f96e7105e8f7df41d002300d239126e31c2c1911ca4f83905aba220b5705f4f53e14456aa67864447e5ab65a3cd9109b62266355d0c145dae24c150302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302181ee3f125579dd3237eb5a26c1c3599d145a3cca76d67e24830ecb665f15831b0ebb039017032e6faecb9e89ead643023002c2c96bb9c19f891d888549b8538b80bbc63f64ee859fa729f55d0a97ec4f90bd1f9a7a0ac3d2d3a86a34950c71c3570302047c435bb50067306502302bb911abd00972ad108e643c69a84717e75020dcb9adb4095f759480624994dedf2db609d83f26400bbaf2c0fefe3766023100f326e039dcefba398113b5b4577f4fc1f7f7b5536092eadfd4eb5cdf740d5c17d534464614b43b0c0283dde028244eff0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305c22b5d08ac48f28b8f5ed94924c003fb37f6e84f5decdb671734a033dbc0e416052e9137b915f42d528fd3bf613b14802305f7f11aee5d036d149e9011b27794f8bd53648934c34fd47aa7968f1ad94e49aba9a4393ae0aa19ddc7a455f1f27dbb10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305e3635887ca64d269e7075a66d72875bbec967a0b095cc821ebd636efe66b10cf97525d5b98d525406a3d7410bbcc73402302af27661d99974ccf3a3211e8e96e79698743ea09a53f1e5938f37d2ba1055db1ebdb55856b3c6ad4daa8295fdc60c4c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d9476dfe8181ff0f216210728eb4f5c31f8ebbef07712a4eafb80d0628e2c1c0bdedc1769cbacb4de268bcd60f99ea13023076ebf961c9a898c0b936d0129857c1f9c0db38ee87b6d9db78f60ceb491386747581f4ecd0608fbb0453a4af7b4da0760302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301c93e639e05e37bc81a57e7f7946cb90668a55505cc71fd2eb6f84658bc65c3ca806d19b8d8a8788f9e506b672c52427023008b14e8ff05b7ebaa4c108313b668cb0085a85df973604697e7b2a56a3c55dfa94f06e8244a3cd6a0d7397ff726584dd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ccec9a3a9517d2791dd346c8e58f45157f53ad0b7bafbd4691548e1d2432dcb218240a7ef61dc88bef7e47d4669776e302306a98e091318cbd524bf223330b72a78b3a94bff7f16dab5401571b01a6d0e10b883dd3d7f072e60ebbaa3b7a63ce62490302047c435bb500663064023024b6feddb28cc52cea2afbaad29cb3bc37f616a81d6fff73aea15380523a0bb8b16c676749ec7d72597dc2eebe9af594023033423f61b82c2d7aeab2b15b81c76e176973b36b1c2aaaad485ce34dd953b1490e5c370ab6878e853e71b16a8155038c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d89aff32cf9fb0dd0687a0c6ece95be28cee2837aa39e3e51d79c278c03d5c25f062394fe7b70b452daaaa02cbd0ee0c02307e337645a9cbedd651d5c29f55edffb2d523cc0629d3119223205c406c302da54f24a5b914800ad97008c179e8413a280302047c435bb50066306402304c826f8a03b4ed793c857e2d1077c2ac8c24844bb612c0420e0cbeb13fdc42385fcc1e96691d6e332c1dd51b931850d5023024eb388b8912821196ee7f2d0b372290c0f44ca950379ce21b0594e6971bdda2d225f3b9cf6609d876f83a4906f4fbba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cd173a270f54022dd424cc172a3a534a68dd148eab2517e0241265c9d8f858628d45e72ba2cdc246cec010cdefa052dd023100bb01cc200dcc7bd74ee306c2d13c6dc06fad6a6ba24be175f62a33e9d758b98d0dc9cc6b2df07c8aa6cc3c318179f43e0302047c435bb50067306502301a79a30593b4a8ed722855f711b66cfa6b65b473dbf133d486a5250ad22b4ad8ff3d32efe680987826d75e6b4ef62a7e0231008c1bf749e252b473574a09a75d48908be974d430365ddd8f4b68963a78e0e9aa895bec7f7b6a28b5504313a50b65a0d10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ee0101d2c60eaa60395edafffb8c1a1cbd7a51c508cc937ec383299d463d064ad90a9ecefe5386133a86ccf6341f0ecd02303b7807ae9663bfad06d8312e43d769d1760ae66cdd68dfde83468dd5a5ad2634f4a4b4b64095ddb03ef9a175f1ac05c30302047c435bb500683066023100cce917c6ae6b8941a3f7532d6028afe2796a5e392b0337f904cca25a56572c69baa9314ae56071ab6462ae7d9d2d66330231008c2362444cdc1fc58456bca0486a289b89e8bf274bf123c71a3831a0261d974059be9b27f7df44b72a4d53f7175bf54e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023042e9b352b67bda6d0737e4afd9a28823a533432b155742b26342ab28c2c8a64f2a930b8fe2e4530c2f4c5a030f0527b702307d4f60695d0e0309006a12ac942b0d9c132606fa76f350c202273035cd47b3e2ed8a8b4e475e58b2031e3f6491836bc30302047c435bb50066306402306fa14004517c4c10151e5710721d845cc3387d1797d65f1598254286fc770f2fdb482a244f9c99cccb52003c10640cc602302d4b9e3b085eab490448400a24df7b2fd756a5142ce8ca9509b724e15235eae014793c3a19847e02b50e845aad4541f70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230360c119a53fc3362d268d345e850c549a6a716bad869faa2b9f70461f7dcdb3e43a2e073f34da28de81b35b4db4bc461023100c36c0687d8bf0eef7f0af347efdee2797dc46fb28e43f8c3fec8b60e3cb1cbcdbea26197e4c0c3bc6d939520b55dd6830302047c435bb500683066023100b5daf1a0c1b7b18bfc3e691f8263694e9bbc6a4d78f6539719d7c85520037a04c7fe937ebb70abb5fe91f663934be6fe023100db121a0e8fb3f0b1fabef65ada75431607a2554609768982825ccc5bd02c46ebc3cab5c6fdde7c5443aa740890759b320302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310087e6043e5ec2823dfe32b24417c27295765c3edf3dc65abec2d7d9fb155bd339e422c01449d30b045810a7a0efc8470d0230442a4063d699feaf0b9f910df829357f1d9983efc7a0dccc3bec75732239e91783974920d1ef3bbbc60524bb3f94551c0302047c435bb500673065023100922082480b6bd9f1d6810cbd1cda17b68002192a1c227a6442935fd9e92b8750124406a82be4c591caca8ebf0537d4bf0230151f63eb9ac82e01be949b06c69bbe3a1c18a7fd29237fbda3155fc48e6ff0cece2b443775d584c6d33394b6142f47470302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303aef4105f8a55e1455b3ca3fe6000fcdaa9b4b9a98d2b3fc40680774531059f868b52baaba1a14a7c7eeb0de19a740d202310084bf886b272af8a4b02988d915fff3983f2080a985122865f473c4a4d8f220811486b6d72a1b593f60934de2b3b3a5cb0302047c435bb5006730650231008d773924030c024fa2393467d48777455380de6f263d20c91d842582a40eea9188606eaaeb734901a978dae94bec5f020230391ee67af82c4995b0346975ef544f6fdefb947698f5de1b31446d7336ea0a4f38338d2a872c9231ee0a1980c48e74010302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230645e1a69d930207d322afd720414ae65bd264831a60ce5887bbb3259e68eb3720f9596b22f3d4f99b6d5ddead45e9ff50230077451643b2242b3aac59b89b1060611c814de1c349c13e2987e1aa70bc619fe318cf86576122b4abcde8ef92c4287580302047c435bb500673065023056313d053f5c1422a6c7a46472a113a244390ce606f325e35eff20e5bb0edb2d9572a8dc17e55dda3ef63d2d65000c38023100a2af910d7854e9b2eeec905adf80280b89ebca9abc7ea2f561bd95cda96dd764fc1fb8a032d5f2374f1178dac2e70aa50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c281f431b6f46f96304c962539a2c093e968c51bef9445a57d8e1490608e792a8adae65bd10154f7422bd909a44bc107023100bc94296f9e45a597026759d1e0fd18792b9f116283995460c72e11b93d919cb49ddd36ef4058fe2f117b22792fe38a460302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ac901eec8ec54495fc2e47df86d414b724029f8d3a759ff696898d6e0fb0bc6ed8b820282f02293871adf268b660d30a02301d07525575e44005612907cb91d6c9e080da29852c9e46dbc4d84c31be54c1bf762d9ab65eb9753368a3ee268d2148970302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230648b80dfb215b3589f0caaed3f486e41fb16d3f331485f87fdba44510d6f3dfc294bcb7724cc45342b021c8b50825a4a023055bfb1c8db330153b5182326ee7f4b7429943e5b2931377b1cd430e1359126c024ceebb9e942b5a0b7b82f2680c19f2f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ca5b3b73dc8d0982e80c7d03171c7ca4c748942c9c08624e21eb572dd9f94a8cd9c3a4a864b92688db8a5ea0333f51c6023100bf0a6e5ee78c57e9c88e64f33816a1009a9ecea3ff4adabc38b28749ac07ddd01a779725961c27b2ba2ed0798cb240530302047c435bb500673065023100844e9e7a03000174826737e12e2018fbb2b21ccd030e32ddc9f296dbaba8059625c905c69e7259aae5512d651bac438602306419bf62b9e4c0623460b38c913ce5caffca117718b34521fd7c3fbf43440babaa903114a4434a4af346baf6d19e6e960302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100db2665aff3c817fab00c455d8cfab91100ddd2f3f387efe04e9496cdc8d35a0cfbb24cc6118151f8685a36ace284036e0230240e1c2dc5392bc0eb34d3f26d8671b689907a740c82a3918bc7b0daf51fdfe662cd39c6e077793b05f32930154b98f70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230520d342fdc9c332a9797e3ff576b6fe4a3cc57dad165eb80d9954a3dc5c69cf5bdeaac2748aa016ad351258947f39860023079b5addd3e6db1dbf83977fb2bc6a3f7a6ea9037aba299d9a062cf452b3262ebb77741b9c734cd66649bf4110e31e8050302047c435bb500673065023025b567e6024b6a8d3fa037a81dccac83dba556c3b3a74ea0407f0465dfc5634e8f497bba5046a583235d4285ade1145e023100ed1913379a6dc7c701330dabc537431f2ea5df4eb81e79301202b6b8ec22c217b502019d60aece79fd2a12b6814c5a320302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301b1bc07dc693edf3d67ac0dea729a3300ad51c5b8defc39022e5bb8c97f58112d8bccce8597e61ddfcd2db623e6975b4023028c80d00f39fe45ccb685c88d1411b5748d5b37a5aaa21fe8e771c4f37533f0e9c8cad3a8992f866526edc71f10e04b10302047c435bb500663064023019b0f7655c14849bb29e71cd41cf3d13c1cee78d4917a2e6135e8ebcb8219f367bdb3054a369124bd606a9571e531246023004a1b84b2ddbe5b243b6f7f7ce49e7bac46ff023b81ea328ef7a0deaee444ad767923a217f474be57b11011b5df4d2e90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e67ca437e53154720dd9adb00adc33b73de910217770119b2cd154442553fc0b6b9f9e74c73b458861ee45ce36f25ade02300fa84f68fb07ff2079adc3f5dbf797122267512f53cd0790077b2c9c9e369fce83d34ca1db6a484511b81402a57d62430302047c435bb50066306402307964fef4d7d0b48fde9343f3a27fa6fcd3163a7a8d5c3dcbb33d424eb838f5be0b2ebc994ad412dcd0a41fcf552d92990230133518d2c2652462cf8ecc87cfd63eed928a356addbad53eb07388aa1ca7d75401d853a082483f618bf58e7e3d4331f70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305403603e743c1b729a0629a96fc0529ab7c3584fb391eb38d6cd578dab5a56bae06a3677b5f777d1e3739a8b4927d4f6023044f4a3e574b8466b34675e15dc633f185ed5c0bc49ffddd62b07ec51bbd0913bc8deebd216bae402fa6ca804b66f5d540302047c435bb50067306502304bf4a08dead577d1be82aa0445e3e876d02a5b618c948c3c0fada294647ec7abc16df60943853762cf8abad22ed95df9023100b635136dde55dd0b94db7e9728e65342d18ed0f01bdef9bd7e3f0f6d785758ebd1842055254867da3abbb3bb735d71f80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230132302cb76b5923d3080882f21a6063e89081d38eccb2a73835ada7ee50c44b56d7a4d50209c90f7eba69629a0df3642023031bbacfe0c194b0f7dbd70cd3d1138c2cc159bb504333c3325c7ed0305fbeca9c1acc369f374e955deb3acfff5d353120302047c435bb50066306402306bb1a83bd3541a2962f93592c7c47d8d8f09d04f75326490ee89a1ad35e465fbd118594574554ce90e8d87fe490485d902302993a6aebdbc075422f15b1f8161ccbae3d8f71948498279d301ac08faf635ef3193465a8695080ff21c383ff97dc44e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100bd954fbbdad0ace80947f07b97f7db6f42c148d6070725d34124a871a9f353d010e6f52284acc51c8f967da87fbc431f0230275cd4177b3b5c7ee0af4f94f5619728eab7298b797a2e4f69b199072a974a84e6b66e05dbd9c1b1966e5e37876803550302047c435bb500683066023100e86eea8462afee73b9fa3564fa9935fe9ecdfb7503189159c0083da4c55a06a24d822ca90ae2307cd1db39ca8cff06b8023100b9093e4bf616006256c5e0ffb7ba1b6c7a4ce71b8b8383b4f903d2eabdbebe1b60c33de61adce57af4092a6f4a09bb3c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023050afe2169d68ed00f5b0621ab020dc8a2858d9565e90af08dfae73aa957681d8637bc19a28d877827850517b7610e94f02305b0c4ac387e79eb7e692bd6b737851efe1db119f65b1999020a00957c0c120c6b334a9cbf0186b6abcbd11c21c56cd140302047c435bb500673065023073136068540251382c8bff95eb92ae9cb7119444953a8b363b25d84d0d268027c615285805be7c5238b8f4ca3b7d15a9023100a1292f115815a401ebc3434dbd19939b53f8d159b4ec4558378c877e0b743d6df27791130010c8ad8679701104b426300302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230271744b2ea9f9fdf6df155425b30475caea56979f1e7506160a7b384ab08943457496cdfff114c35f53568909443525602306f390ea60a0d670b3881bf5acce641daa84fce9fb55d4d44de75807cc8738f878eaee13eef59079b807493876b8b2af70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100fde022eceffa46d1051b7fb235d9db21166d96816ce0f134bae6750de635fc83f7ed07215072abd63912549228df897002306e81d90e0d42afaf305107a4238bbba20c8fbd9950a143a88f083925ba32187420328f18cda2d7523670d183e8ec0ad00302047c435bb500683066023100e9c89eb7164e63f6c91714df406245b7a2974f1661b438ed95a16a2ac1f2eddca06b5415c8a82c32f321d8aae898caa90231008525b58a0e495d8f4a2264795db18133acc9064f4844dd731ba9c15d0d090e488b50eb47219e0348abae9f26a4ddaf1c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310095dc04c65bb12c7b78c5c9e5f903ea42b7d3348c778c72a26c65c848ac6ae1d95979c6af00f26c79787ec8baf4908b53023100d1c61b176089caefe87bc8b964db3a2ee11cb4549ec2a88a820225300c62ada980bc7f8d02c7b9048cf6b3c507419e8a0302047c435bb500683066023100a9ee537a840b9251bb067a106792f051194352dddfb4ad909e38deb9ebd6a8a94653efc52d6424c91fcc81d53d9d8217023100fcd596affc277d304036104bb78980923063e4527b5e752de67c7e22b9edd3550b351bf4891308c5760d84e4b8a528c80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306ad395166043b3e43cf3334a6b4921109df9e7fecdceca281863ac1909727e9e75c0fbad22740be2389d9035e217f5f602310083303123515293c327d78485a17daf00bd31a8ad8d19b5f0a41cd57d4c3d2672bd84a48325d5688841d9716c792b4c670302047c435bb500683066023100a06a5c8be553798404c58927ea6bb1c063aac11e2d9c1f437903cf8f4fc8d166d534183ce12744e1e7b081a2d13985dc023100b6ae74c3257fbbbc2fff893633e72edb961612b670b60bbdf1109bca83cc7cce32d84cf33fd86b5d7f03b0e81a93d2590302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300394d156b758941d36e19cda881545a89e7e51e4af2bb5abf25c798b4fd41c8c52a00ecbe8dac3f57a34f79229a260ae023100e78ce1d0440a11d1b2a649a5f812c7c7c6cfbd55cb632d8509abd26ab3fa5b4864b4eb3bf8fa963eb952f97e3b6fd2200302047c435bb500673065023100ddce083000b7ed47b0963ce8181e88e52a8c96d18514f599675443c6b36cca09d18e9fba5ff38277948f973a05ab639f0230689ab7fdd681480bf83e7b4454621dab4d636237439e9754870d658010ffa83937324c34816b0ec85d95cc0b8feb6e1b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a7e66a0d519f04488aea3342dba5b5b967e48c1c4c36a89cf57ba70053ab1afb476551092454e9fafa01f77548ef519c023100dfea59ad5252a9885fbf0dcb9fe32eca6d21c91d51a81f3ad94a443c84e14296b74a7a314675ec15f0831b3d2e8d96710302047c435bb5006830660231009a6881799d69665e23b4ad1b4f2c7086334d3d9b378f2e258163c7e3393b3b9e17af88ff5e6a82858e1692c2080c3968023100ee1d875cf9145fa4328adf6e63f4bd47d47bd8cc6c14ca0c0f5162636470d21adc2584e31b20bab4d3bb3be40d79cd750302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305078691042cdd3c406962e9aa31a64f9bff46b67ba415bd17a7109dc491fbfe3ddd78536fb74bc0efcfe5b7e2ed46955023100c208d5c68f1c19cf2707adb3481e21db0231086e65f760603b8845c1f6082bd5ad53d8da86934b7d65118bcd27ffc2660302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302ca5eb602d529b622302026a2f211fde7a2e3ddb335875a86ba8f08564f3798dfdb9ce02ac0d15dc2a173746335976fa02301fdd3c836904d314c58dd02fd66de39f3ab976cf92d14274d9b1cfee78ad89fb36fbb7cc0b964d874e1a4aedae15681a0302047c435bb500673065023059caabed73b759deae08ede1a84b672cbd61c692503445e6b67ec3d428e2c0713108f02ee04bd74ca007d96e2da0a9c60231008808b41a473b38c3e38e06c8a824b6d6debb9142bcf2fb4a235b292a1cb78d819c2de06287ac2e0aad1fc9c30f7514440302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e89444533efe41d9f825cb09eec55637a08920748c01387cf3d609d1e36141d0ab470e6a5f89f9d537402b05fb905fc50230025b5abc3246ba07a97a2c07652d581a966fd5d4c57cf444de6be036ea0fc77df8cda13e2b0ee07a264dfad107732ce80302047c435bb50067306502305d344ff49dff225c6130e0027db804a456b295297f6fa30c66fbea20efccb9d8cd4cd003cf93778d144d9ea3f1930b0e023100ce1fdde751ebca0d4926469059247ed7755193416d54ffc7c71020146d60c0366fb7f71d9068ff2a559153d943a3977c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100aa3bb4556acff1d055f74cc3923609e0eed5db957dbac06eb64c2b76dadd1ef8a082741a79affb218858485f7200dca9023027fbf300bc8b73845e274769e82a15e618308f305e207bd351e81f32e012ded5f21dfcecc8cc7376057690fd69bb08b10302047c435bb500683066023100b0e337e05beb40d7f87d3a43ba6e52b83923c4a467e6e651b7e5afea716aa02efd3331f56a245cb50856777f844c42bc02310094fc72f6c16f39e1dd69f71b3d89ec1a48fc0a0d47a23f4700852bb88d0f9374ac3a9044a64a7917405fe02d4749296c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e8e0e9d7e759295f1509df116c99fec716b85b624bfaa4bb331c50b308d689cb747a706a822a518d4e62cf79268e6683023060d231f925bfb6d0d7636cf2491a997b6785c8af6fac5235f961450f1520cd211a142686e35e61b544f8fddebd98c7010302047c435bb500673065023021d235703cf4a610f4d1be2b2a761aea61b79366491d17556f80f32c3dd3acda42b18ddb0d10bec513dd342ffdaa0cdb023100aa9fb56b625a9e6673f57c8b6fd8152764d594a45c9c245432050d6f17e86cd917e445aaa8f3bbcc245694457d2b9d600302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304d81cfc49a26d8bf455e0fe7806f901d21eb21230cf0a285f34831df84078c6f64c326fa4cf006ae9f025a231de4323f023100890675c784a4be55c4b6cbba600aebf3b2047ff13dd3d7fb055796e132278ab90352f6edfc17cf5da6b936e6864d7e120302047c435bb500673065023100b648cf0d5c4374743a7b1af90158d1230912ced1b94ce788e351ac080191428ffd473f7037fd6ce06146cad0c9cb04cd0230125ee786134b1f250a164ae8b07d9229fb97ab88b7d05014550a5e1890ff4c4e9bb8791c11cff6eae0ccb2db7e8334930302047c435bb50068306602310085b799e8f3868be8e73329bb28700eec91c7fb22acacd699a7cbcf02d5c7a055248e13073daeb9544228eeff37484922023100f57cbd2888ff27774e2da37ca17fde40944c082ee598c7cc7b6db096bd0792ab0b1bd04e6bae57f058abb5c06160a29c0302047c435bb500673065023049c7083947665e78d87a802ed856da51c1003c1f6ecb6d1f95ea57f3ccd42d041798a85fe2663663bd95edc6e161150d023100f9d9f792bec935308d277ecc14dadcc0c0b654922f96976d40a335074c6d9e98cd7b652485ef889082ef7713747accd50302047c435bb50068306602310095fcd1e47cd1302d265512d666cca4e309d49c21ac8b414d5df3a5c168e72e30f9bdae6465dffbdf52fe7f61397e293602310085cd9eb5f3749c0e5842667d42f654660050fce7d2cb36b74310ace200d3f9d7cbd9c9c198d3440c9ed3766bae3032a60302047c435bb500673065023100ba5c198da18473d2910e6998b6f337ef7dbe431bdb1f9111a95edeff6a73982d740a84cb475f91f6a3cd6634b7d4d1f902304d20a5e4c062464d343be3935eae8f3bd3275c0a27103282147b6d67b57377af656edc040e97556a69c89acc552974e50302047c435bb500673065023100e96e69668f123a34989ff64f1d6b4af24296eb2e9ea235ca37fcfb1f574628bfd4886552b0b2884008f928335c9a48e602302a7b0450848ce8fc00bc56276bdf42b76e00fefcaf3d10a7b855092eace76bb03fd75cf075a0d5c55820f68abf7ce3230302047c435bb5006630640230484f23b73b5637bae8ac78100728a2d8d7eb06ea5f52909d6c31f65c36a248a0c94dcfdbc979f540f23fb5176091ff7e023017a22bc7edee2adbb641ebd6026e6a79462107e978f6f869a605c8efefa50f61701c10e2da6000684307376997d56cb50302047c435bb500663064023039346787d9bbde13466801e99954617c1ad67a3311396f796b2fedfddfb12ef8504206e00a4bdbd9dc81c5ab34f2682b02304792d068e0a3916dad9d882deaacfc86cc743bbd915fe3ff27f851087b253551d8d1127b74df8c55caf0121b02e83c1b0302047c435bb500683066023100b5dc0c00e557c5da2d531fc1fe1021ea8c0d0c6b285c0f075a57e8e1c3289717b91d7aa82ba14dec9c071eba910a2998023100c0c0a4bf63424c9a7e83826ee80486189e97900ed685dd1c6f0bc3e204a545cb41421598cdd4e27a74857ab4b016b1e30302047c435bb5006730650231009bfcd21b5fc23fd230a924b23ea253295c4afbcb94baf4418451a5a95a21400ce5b32780f687944637d176bcafeec65202307bf01bbfa2816a9e0cbbd468423ce02086d5fc89e21910d1e18051a150f02ed7b3f5fc21c8e5d35732d69f912cf6867f0302047c435bb5006830660231008dc268a8726fad241264463db9a61db4c27ccff8ce4c7e6f9132f05d1f1e37af20b244e9055858b1b8d1d8e2a6cc2dc3023100b3e11e83480fec17397e9716222faa1115ad1e326505a40fe95e112f372413d197ad97a74ce87472bdd2a131e0ee42da0302047c435bb50067306502300addb7a5212e726465f145433a8bd30da9b858aa97d3928fe77dab43a45476309884660c81e9054458574b1637a8014c02310090b6ea2129558bdc6497fdfa39db8c022d0d97f8611f7f9892c0f2260adcf5e9638e4301813c1a6ac0d27f496dfc468f0302047c435bb500673065023065c7c755309878b1a58ecaaf55e7d9594a7973e7d251802dba7fbe1e487c720973236b3915909f07c8c47ee4c78e06e90231009e4dccec9f192c284decd6171b14d7d0babf3aea6b80a9c957b6351df8bbe2094639f44fbe4b9a40fbc08839e6bf2d240302047c435bb500663064023030a54d0f87e821354564f2bb1b7378c792d3990d21248778884ee50e627fb15191e6988d3c97c0bdfa73c981db0f37a90230438c74f0fb2b1110e132ed8987c533ac45e03bd6a0dae858bcb6702d3f93a37623c3f5d2906ac63cdd3a933dcb55e2d70302047c435bb50066306402305511ab13e5ca575034ceb7087e8007ab5bc45b83d90bb1e4ad28647f02074dc9b15723b7a3a49aa79316cbe0027039ea02300af20674d3e321118957547e3b2d78e7b8e31fdff64d3c2e28f564674e0e0cf0c8bf41b79ba32e571834b3dd5bffe80b0302047c435bb500683066023100d20a9e2fb96ec2b8f0494de77128284361d917e9ae2a7e71b5bcc9ffc91d4671c6ac869768951702c93ab2f115edddfa023100b3af4b2a09d967cc020adf5e78eab84b8c15c484543b44ad685dfea757d45039a426c7a112805c9bf755f57cc89c8fbb0302047c435bb500683066023100dd833cf5837c8f625b0e680e829d715e1b782b61af6d417df6851a73366912b2b785a9b20a608dbed574cfb977a18597023100fa0f3ae3cfee1740b5e4d29587031b73607cc36695f4c418107feb5ad2b202848c074efc3b08c198c2be7981cb2cc1960302047c435bb500663064023058e05780e2057b808c8a38d444c3f055b06330079e4b53be037cd6bd8bd0f21dc2757fac6dbf2e4576113418a78b76eb02304ecf8d468fbc0ec3d804df8b0d837477cf3eb58dc1d71a613c1beab68a33e968e3a665e33cef48a6a726992d515516380302047c435bb500663064023037379a1195aef56c30bfbd65cee9df5e2c99d25963fb9e76ad32cc954a75bab9cfbb873f24c69fad657f663822b8649002305fd98b2658c4ce2c90cb9ceb4289082be884d60d0002b36b894a7c94764325b8ffa1f185bdf64694142708f14f5b0f310302047c435bb500673065023019511879a80785ad0a9fb6c8579b6e82d85f495fcfcde0e4b6cdaa3246cf0d1716273467d559f31fead3cf6da8a8293f023100cb612d04885a7e7d213433d5b35b62f8900380b709de29d079a6560b4a6c0ae954740e3578aad5eb220ba1697312f9b70302047c435bb500673065023017b08e0f1eafaece629eaee2821b64ed6cdae14fa452f31f171a674a041b21100492020dc88605db2de9da6d1f27dfa9023100cb4a404cba6b2b0d39e9ce6e1d3e56c3354b21d4060c146c98c8dfcf3b7031f1f0c756e95af1bb007b5791eb2b8754b60302047c435bb500683066023100d50f415ff22a706649699d70c299aeca90a2553889e930faf0d4184c096a2e317a11e72df1ed18061ce48e88b3053605023100d4b42d0fa7ac2f846a60b122665a01e5b8936dd0b6d0747ccba92b50b00b06f85c96a288b968390b7c3e29860348489f0302047c435bb50067306502300cb6a6e7e926b5fb9c273f4c577865dfe450b5200fac1fb2096b0fe718e430bdf79fce7bf582234fd8fa1fd79503e7af023100b16d47a4c1b37a71c95fb6259483f1aa932f56144450fc072e2e4b5b74ae25df45ecbf4b33920e79ea6ae3d18a6752130302047c435bb50067306502310093a14b49d0792b46e7b56b3cba7048d7f46dcdd6fc6d81064951632e3d49ec6e22146fa953b8b8f9b58fe111abf0427a02303bed3a522924733d0e98bb9da07820269865c8ac2f5a4a831ff6f7d28596ece388b0c7a877e1b80a92ae2167d55a82d00302047c435bb5006730650230133484d9791a45b97c0c268a423f27bed96d3a14102291b37d16be3f8ebfb311c626459f42286da63ed81e589e920886023100c1291995f4487797fa24061abe82c618fee9a397777018b8639269eb020e0ab9db0a69091d8a0770d728cdbc3ee3131d0302047c435bb50066306402300b97cd7bbf2b7937b8641dd852495e375237a37e5d4ab8ef8beedf5dac437c46b3aa1622941f1203e2aad3c2b9d6bd25023008ac69598f0a0fafa6c81de4982c3728a953e6962a4858bc8769dd80862028aca7fb763d9f3c17ca1bf4fed3a0acaa060302047c435bb5006730650231008f179a164cdb7c7f14e870bc30aaa39606b1d7be36eb8da4554ceeac2867e838c985e8e30f999203bf6bd88a14ee4cae02300099a361c747dc705c53443d60c951dbee86ab11e4e490e3d444ab36525f2fc514aa0dacb061b0fce6c58cf4ea8abe310302047c435bb50067306502307a27d1e79b853a8041f0d13bce55ecc19465ecc12e55350f1f49e704e842a9621acb20f71ad0cf14e58ccf8e5302f8b6023100ebf8bbb7ebefead57bf50e70d860ce632bfdf6b22935628430c868dcf76c9a76b80d2de90c918096ca962afec08118690302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304f726ded830d0176a4e4da36531c0128a685ed2a94f2e434e2c4ef4affbaeb0e19bd5d37a22676d72fc9c9978e874ad702310090b2a63c32988724a97ed4ed09c406608998c1eb2aed2cb0f8c10a80abdb0782694247611ad0ac6ef581b2e4acb2c95a0302047c435bb500663064023021e3559dfebfa3a8452b0bfb25cfb74e8a1cb51b74c9cb5cb9f74d559c1646cca6a31be2ba09fdda9d9990f2a1070eb7023062ad4a45148b89b3aebcedeee69b622ca03c47a3d0bd5c260383495f56921b4c523029216cc16abbd79538b1b9ff2d550302047c435bb500683066023100a875134d81264743ee3f7824c51e113703973fb8f0d671c2349f1ffc44afd6ba1ad1c0384e0ee691012911283571630c023100dd53ee66b4e494095530414a8d357db7a2bc2d3952b3c71ddec81357012b7159b228f08690640cd7738fb78fc30300350302047c435bb50067306502301f4445e3ddd49a6b573286a51ba3620e0fecaca5339309f541bbcce0936918ac19d81ce87c80175d6750573ebba92f63023100e3396c812f7abf3a9d9ee62aa98863e2aba31a716e66477fb20ba468e446a0c52840ae9b18eaf8e27c036ca7247f563c0302047c435bb500683066023100dbe94822a2b87131e24e24446b377de77a4c4d775c4ac3b22b95ca964f7b34837fd780bc0c26474920e0b50c23a91ae5023100c767bacdc2b53e6aa623cafcb362d9814ee43394f32b45f5b30cff5f2a1bd57d7cbb2948d9fb8e529d0b80a9b96ee79f0302047c435bb5006730650230598640f40b30114d165dfc1268f52331b7e3c4f7344e3df3ca950024a85b26dc4af7463b79a559197c66f2700f193694023100da67d5eb744cdee396e19071925fd497d0bde39da4f89eaaeeb5fd05a0b7eadb7bdf2f908dd1a8940700f45ba47f18dd0302047c435bb5006730650231008c73f2806f4cd1c54788116379ec74c1b92d325e8d62c31caaeb381bc9388d16b75e523e69b4bddf213f46b10a664ea2023038810b96140ea1787d593008363e5bb24fe41949fd08e03ac32933127d7464d5d8d4e5307b2f9c2fa9424a76c47fcd550302047c435bb500673065023065aa2e0b67ac71f7af90cf1ebf15b94596715fe8987ae5fe15547f43483a4d60fe51a0b87e9883557424116683bd1376023100f618db958958acd9f7de4ada6feb434fcffb01d094ed589dea725be9eb8875367a8aae25697b2a3937175065b8f766da0302047c435bb50067306502303b584af02d76f145cc35223310c01ac88efc45c046b276fb199c9ec5544f5448d5b20f30be7ee545c01a60241b0251b3023100b9f0d18e1aaed25b608b29ce56349af91c1aea7accf19ca71af5d2288205e19c654054ae1e4e6e4aa92e9ff9970040c30302047c435bb500673065023100ba0258d828b7fe027cd03ba2536c4ba9b182b5ba2b6128bfc02e284c02c01eaffb23e87b8054ec1bfb8aa586bd3583c402301e93efe07fba0577c5a65c97f008ab6fe234e7fa0876389a4abbeeffc898749afeb3314286e312aee0930d10d743a18a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230009bb52cb36439fdbd999039025de0cd753045efe7e148302d52f3522f5c989ffd863f14f6347d66e3f1c2620521e55c02300e1389ea99ba9212f536740e252689c2181a0cd5abef1a90cb90d0c03a9a49682a2542c93fe726c37f1d0cea89393ff00302047c435bb500673065023014e88b45269671db074264ea03a026af5f39622a0f84499e84b91c9688b88376a6b28a1be4dd1b6ce86476a7ca9cfbc402310099f7ba92ac4ab5749b333f9503cf8ea3f9674f53b4323afb722431849ad1320310cd879c3d7e471d2d1095fc14f8ac5e0302047c435bb5006730650231009eb3d3b9d99eed8c9892101a117d6cb9a8adce6cdf11adcbbf53bd3bc6489f01030f288e89ddfd9071957316e6e85ade0230031710748a0af5cd6304ef927c2fcd9c07f7d73ce2967d51012a3e8caa202ec4336ef14031ad627cb12d55c7b26692890302047c435bb500683066023100862d35ddbd26a5ee6285f4a80489be4d3a43698b54ecd8b2a3cd1941d40831a11b4dd256754878dccca589c25a86a316023100d6e1bd21e2b7142c6d358471f00b5a7eda7d723febe66e5e0b137c17072583472dcaf98a483384d5861306a7cc255c330302047c435bb500673065023100b23e944c352c4ee4a196e384da418f4fae90bfa5ba4e9ab36d7b877f135cd56d167b28de96b8cb16a0b0b253513cd257023034db419a82d8476b9c549d8741fb6078245417c00f4b422029e07ef1771fa2fae758aa4acb43d6b7947a2e5475c78a640302047c435bb5006630640230242b04945a9b71fae9b7d63bf267210dd28e7633b097a85df1614d04e1a88078c7dfa073fb6611a85a74ba3f5f24756c023044f95ca3bc8ee6ebf646a98c7ee1b98a065d69a9c778280d4b362912a70efb3d1bfb529c6fbbca64cef6a235628b66d40302047c435bb500683066023100f3ce950d391e5a1888a27c42cb3fc3fff790718aa1c280bec05cdc36fc1e84eeb45a2f5f3543b51c6ff7b118cb9e89dc023100c991f534846fa2b47276f96a01c7ed3b42d7217fd9db97e41a5a968175cb527e1029712820cf119abf61b2739f13835a0302047c435bb500673065023100cd00dca12c0c8839a0f14bf4b3a41a0e9da58361e384798e5ff497f1fe1ae8c630a6a2b85fa58e30566ca37f4a7a867302303f9193ea56d72f857b48490642bb611298fce89297124d5e064a3a19d2dce022de78ef179f7cffba035b1925793ac58d0302047c435bb5006730650230795dd10ddd1776f6f5caff812bd668702d78777c963bf6cfd3d1757a42af1152656cf84561677794e2fc65d4f357b6fd023100d05c8d3df0096512fd3b1c6656b1d3f08c356c314c84fb4413e3e22f361340a833517810809a8a03ff3ca5a49cdef89a0302047c435bb50066306402304e80c03acc018b14f7c3aa6530d06a81115cafd5f493a96471215d5ca57f507c38caa58842a39dbdd4f5aefe922fd19802307e7850162e83ef3a0e7e32566f3141665de9c076283fe89ed51aa56a2ee6e79aecc8b31b661aabbf2fcb7a5845ee22980302047c435bb500663064023014b7a7ca4a70ca33186cdd2c65457f7965bcaebaff8e2f9b267b7f147363e2ee816a12db3f4cb619a895bab680066c6f02302074ded1336cba8d0c510eae9e7387455dd0c69e30f86671c44d8f3fd637ed1508590aebd9cb3909fa2d1ac3cc3ff8300302047c435bb50066306402306f6cca9c072a8d31bf36e7d8ecb31c32a0d04bea208ba321e2894eba4f5662d053ea6aedbd05fc763cd7651cbdc6ab06023029b3c687dc680d9a4669cea71ab8de0f1069d776d948efc65f52c5e1c4f4944e0cd7cfd584df60fadc6f05b04d8916c50302047c435bb50066306402302034865dc36811c0895bc856757a7f545469279caf1712d6695574739c08395e332b5ca191293c495becf0c6db7a940a02303ccd1cd86d803fa11d0fb907e58198ddd7369f57b753515f793c289cb0c5cea8661323e20bd9e2017f9a2f7ac51e1b800302047c435bb500683066023100da32ffd64a363431df85165f5a039ddfa1749de91e4dd1610ae66727ac8920c29caaceb06079e6e526acf72a4ae93cfa023100f2888383cfd8970c2d6714a8ea4ec53ac3da955f28e5e370695f6c4f03a45c848f3089133402a93491b810e95bdd4b2a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f29fdcb65f92a573c86976775e0a9cf754d094fc2d3cefdd081fdebfbaf8867178d0fc099c5d9b10cb76aeda1accb7ed023100b055978f8e9dce6ca68d267c434bdc93b5c50424ac30af38c549263dd4e82a01ebdf816a7963b1d2b746d0a8733348e20302047c435bb500673065023100f890dffd940f89ffa95df0b65f6dd1ca06eaa68cf651d0dc638178722ce04b8612d286b50187bcedebf92e50590a596602306b54108df1bbf986179abfe8887ff1d32a659683cfff3de149b33cf5883f875f871fac8f812cc740bd86039a1194800a0302047c435bb5006830660231009bea3af02ff2a1121f40f7aa2fbb9ce045d1630ed2c63b51da2174149941392bc1bb99bdc8cbaeec45ed1602abe3b120023100bb3b323bf0c52e5b3ab8c90ec6ade599132511c91a96d692aadc80fd3bfc826479f72e5b54283c6dcc638f00f5d815040302047c435bb5006730650230471c14e9fd8b3d12a4d197d8fe225cd3f619fbeb9c1a53c58811101e34f446d9a1396cf0a413791c75c0a92d183c96cb023100fb4bfd00f830cf820474c847edb1f21a2aefaf0dcf5d2f13b9285971417e14f2a0ebd3a28ea976fcdee789ccb05b168c0302047c435bb500673065023100f458e3126a834e969717a3eabd25fc2c9f672334e9b78c7133ece9ede28aeba0a5f07feabdea955e485c790c3ed1db3602302e3555572b2c0098a3e91b3be46b63d02a1a261c59681ece32859e4983f7ce931311ba3ca798449e76564280afa5cc0e0302047c435bb500673065023000f80f54c016f9b45b0eff9424c6ba8dd4524205af163c18b1ba473b4340db13c26e21e90fde66a360dbc2b9ad7ec95b023100bcbdf0795debf7df1c7fe8801f3c7a6a9133efd9be0e1abcbade9c3067d45d210f5265174f8dd0c8a080c93f65b462910302047c435bb500683066023100bfd28dce1f0e34cd6dd781a52a1466eb09ba5358bb9db97de0a04072a276cca7146abe1305fdbaf12d68a016c108149302310082a10606c27a195ecc4abffdb9407c69fc4fcfa1279172b6a9978e3ebec3831fe290c62e3d7db2ed27e6cbe9431f3dba0302047c435bb500673065023100a20d96abc8cd05dfdf4b61c56597fa793c1233f60fa472078b13f04ff22cf7865bf69a97c7fee9b2f7d3cf455aa38c0f023012944411d52689e74d86b4f501424c6256d23471c41c0dd7cbc8479f377c43466c29833c19cd3bdf390be29c7333c6620302047c435bb500663064023014c433ee3d1257db6a38460bd84753eb122b49d40ee30a5d7697d5fd7dc84d4d6b2809670c8ecc5f0d4bfb7c5c2ae6ad02303cc45e18e3535a4b1cf00d091eeaea36ff54c5e6e7527b8cf90026f501859c8cc53adb8c04de3daea0cd4dde4d6545440302047c435bb5006830660231009d4a0ee01f8a598bc72918e16403e9b24ff61b60accf421fb49b5f90cff017b2f29b17728e36a35d4cba8a2b89ec50fc023100e15e6c93953bc6b1302de46c7247d1aa3b1d2439af2ca607e9d3bd302bf89f63958540955930948c5e2fa26d101da42a0302047c435bb500673065023052e99840bb2c1b0458e6beb60ba3806dce010d8dc09ead0bdd2763db7a32722e4f7f541935148946bba0bef407ea5c6002310087f1fb3349ec9330191bb083c02a455c1c3c3e878476b7c91b4cb943dadabb50ebfb237ee1bcf28524828f896551da6f0302047c435bb500673065023100de2bf04366a14e571532d83dab7e9b5b30db748b7b74792500a98ece14e5e937feaf6249e1d11f50029e1306f6bc7ea8023067a9116cbfd05c5a9997d04510391aac8b7b1daa53ced4663cabb40becd9d85c95cb0941824d46be3f46998e6912f2660302047c435bb500683066023100f462a6e7d0ac77bf095bc3597f1c037451a07f7f9e594b12e8e9703a823f87d92021064ef4b086adcd3f55a6689e87b90231009ad91b3c2bd44a48f79ad76e13291e179320a3c9b35f63e840a6107758bcc1317e924ebd51e4db3f6ac9dea555a5c9760302047c435bb500673065023023631ace5a9057d2d4e1e0226e6f9860bd92fdde015d14ccb3c7aa9720256242c3c8a55638e453f8d0ec69c514175f97023100996678ea33343618e9052606a8bd567c5937338f3caced0855ff8dfe3c329e75d84dbd83b062e60968ffc957f5989dfc0302047c435bb50066306402307312128eeb5966b037bfaf7d3505d9a0a4ac8a7b16448d75bd15e169cd5fc8698827a031c104c3141a506141528bcad90230062bb5e586eaf2b882f3589d76decbec4872e6bf405db598f03ec1d575a5cd40a2e2d49502f9bdeb155f7c56ca4384880302047c435bb50066306402306d2ed6c9126f3cf0a53f4bbed699c5049de3139935a17fdfaeb1354093fc92b5b844eecb13842cc46b7f0c97b18b597a0230142f03af0d5c5c1b3b5a0683ee48622ec4e344f279e9a4df1826e9257a5258c15d1d6b9fb13b130af35f771c509800ec0302047c435bb50066306402303473218211d2402285bc3f32c0bcc4b72745a4305b234003a624a3ee2d1a1758f5f9f5642f3cdf8a0a29f0aa8c93dba802300a02beed4935f70de71646e01f99b3e44b777cca00e32f92a79414aa5a4f3f307723c9b3946e67e3c16474168f16f70c0302047c435bb500673065023100adc69d6a6991699d46ddf58fab6ef1ecd842e1c5db601c69e2ab88204e7de32d48d44675088d2bcbf8c289827777d78d02305a5e2b425ec89e1dbc452add452510a14a6bfec42af8a4ed27e2e73e75501fe3cacf52801550656b235fb1419faec8fb0302047c435bb5006730650230441ee81536143c911e299b0d1582acf20926d90c2dbe0bd9f65bf8da5679c41548406003b74199c85378275a584108d60231009050e3af2e2345fe14e09fbbaeeeacbe3ecc145b53cbf673f0d6c19bf49415f75134a60a1738905fb096980edec573ae0302047c435bb50067306502304f6aa9a7cbe309c243b316d00ce2d107d763914c132de6623e2dab2f47a79efa453b3e7376986d2a19fafc2dbc75714f023100caaf77b4192270ba6747b810015ecf40684ffa9f53181f5ca78aa3c56569021e723581e623f74fc8b8fd9a68db49c50e0302047c435bb50067306502302ed01a07f4dc5ba5e03c510904adc3fcf6deb4748a228c328316c80998ea9357f8aa4fc5fd632ef839fd70024fe6a27c023100a841691004434b87b1cbfe7104ab0e5df09d554691e53437a7db329c012b841a067c7683ada3a4e0ea719b7cae8cb1fb0302047c435bb50066306402305d66d31f55f235f99641b7f30b2426d4004440108c2fc141824cce744583dd192e7fbc16b97ab1c71a894f3157b163620230144d473b4d86e1cc87beb78058502d2eccbe7d37e15aa2586a8c0a394ca1cd15625c435206283862087afd7ff61fd9d20302047c435bb5006730650231008d49eadbd4a18d3405f99aeb27780ef6092ebe2ef976aee516bf25b1e9c38da78c8fa45030816eba7be180f4fef9b2f402300a1eccbf96cba987294c172837b8a95d3d6a003bf8649c4f7f04e7a623ac46f918decb179ad48d5502b56a6f3dc089640302047c435bb500673065023035a661730ccf3be38317d3daf44e6b3fe339dcb9a6171a2114f2cc079977b461032fd580358aaff8bad8c74991fef3fd02310090929aacc106557159f64e0e3ac43ccdef1ea269b3f3ef45e5a514c773f98cc077ef5c511099a636f7858e939b9e26bd0302047c435bb50066306402306857d51dcf4c6841a88d555b1da09638c944ac7d2d42895b63ea2756ece4c56c8acee14b99d851b654cc3c1e1869d8b1023000959edc68578746ba32dae05c7b6e92f23ee3e37832d9468a2ef53a0216f038095670dfa2be8c441db477540ebcf4ed0302047c435bb500683066023100c83d0febeb01fc664f19a731ff1cf07f6c374799b6e159dc0aad11fa5a7365a3efc8231615c93ea10c8923ef6e26ef760231009d93cb65255e480634275098b6041c39e5cc5a96c8f8bffdd673b37110753029ec13051dd94cf3ee2f884d12c6340ee50302047c435bb500683066023100b217aa8559032cf5db74de4825c0dce1052a131bcb19372529f97e88389443d2b75dfae1419ff99ef900601ee4957683023100d45b5291a55e41516deacd8e4ec94b2c27fffa79208f0af8fa5e64caaabc5390a0055c421cb0302c8333fb8fdc17c2ff0302047c435bb500683066023100d108bc0541ee1b14933a392198a9c57805222fc10223e8c7e92eca95e2fc67ef37ab4e3eef9e61a121eadc0e88d6a691023100cb696a8af678884a1d1d9197b4050f81f713d44344277a2b7b03bbce83c275bb8ea17e6504867d723230b72ef1ac97d90302047c435bb500673065023100c9b83376fab1a0944126ccc0cd1f558b6852552042a6ffad651ecccc5d5c111b881c9b8ebc78ba80f1d523db6af21959023045868abafda431f9524d380d127f6401adfd81ed3e15e5a64ecb491fd5c271954af24e651e7ff83cd5c1e218b733362e0302047c435bb500683066023100fefcfcc08365a9534b71adeeef7aa15540cc808077c400b557dcb2b69c47cad79e42d4a656d8d3bf72d7fc9771de91cf023100d291b3c538f4c27384965a20a2c92f9c67533f86f80a2061a51ec3bcfbd0a3f7257105ef56f6561e5729849e4ac3eaf30302047c435bb500673065023100b6a93be0ba499044b4c0cd06585205a8c258888e86c93238d3b3f2d34090ec14d2df18e6b5502ad696dfb4637b068d9e02305ff471f390de521801a3a7bcb7fbaf6a7ba3fc1c47ef60cb83a17068bf592ac025ca3593ece6981cf0a10165732017390302047c435bb5006630640230417e8eb867b242ef558c4699d2b7fc0f97d3794d8dff7ce2cf254d5da4afbdb26424d539fd69fa4280c98a7fc715b0950230498eeb012b2ee692964ab4b875bc5caa2e82a6d21435dfac6ca8bc45c0bc0df838ff3bd790917d7efeb34b51ea5db13b0302047c435bb500673065023100e987397470c574d0e534f1d1a1bc456b224c66dbb379cd6f97f09d83c32f534893d9c743aaa0bf1f84f1d22cf3c67c8d023037cc0b16e8972aedc4a65b9621a26ad838ecd0774448f296e03c57d5a87aa9eab03158516964ffb55f8f3ad016a11c210302047c435bb50066306402304f011f2325ae8c6b5cb1858f952a6877017576541782fcbdc81a53fe995e2edf8d91a0f7f4e5a9f83369bc4c1423c5a00230262d6913262ad67130125fb14086d5ff6d88255a95a275dfa1fa2ca90b050576d48bf991990860067ad48edb1db8061e0302047c435bb500683066023100c84471acc6d38bb0e2cd1e3195549b188aa6344788d3e4b0fca70716799085e2a19c1c0ce9102e9889c28abc61ad7361023100dfbcdb53b22b8e261247ae7b611db73923a6671703970339a5aaac25fede6844d849af5762a7126bb4b7eca1167b92600302047c435bb50067306502310083a868cd97af69cf7ff818c9698b03c193d139713eb3889a724a239492d9ac16a79510364c5ef334155581f7cfcd0ad902306df389ce5abfdaf8f7a55314e6a0ca3052d921d9bc5a4f228428c8314856748df356e7e8280142a87951db6a60775b170302047c435bb500673065023100d659482b6c8acf99a5330b05d0ee90f214b6a3330816f76604e59bf8b830d946ec0331454daac65bf446c93fed0cb038023015fb8f6bae9f7cc803c2e14a9a4212e1b55f7fb747c7c06f9f73500732a6bc50aa667f0edeacf2f64e00dceef9a7ba8e0302047c435bb50066306402305ead4a5241e6d057cd4adad5fb6ff0d2131c4a6b773c6deab5f89c044234432145af9ffad35ddbfe7586af07d23b419702307c9dafb460e4d7515556f0a1a72575a37de2ef3deb1a99a3a62ca8c2d5e70843b9dd11bda13c231d869e6807e4bf61650302047c435bb50066306402302549205fa9d9cd4bb2fa1b518d099ea5904f3986a4799bfb926cfddc30da95a3e64d2dcd24ba6fb8c008ca9b93853b5002302c3e367a726e4dd342806ca7801b0eecd35eafe70c5a1921d3ea8e04767618f8c768e6fc42e77b2cdd69e8815851a0ec0302047c435bb50066306402306f70786c8e58b25e5c67018e807201f9a5382e5e2bffea71a796587abd2ce0602b41bd7885f5f1118358de7e2cc820af023060fca987f362078e750c19b7f6d95eba998eee1ba5ee31a79236238ca168676d069cfccec72a2b07cce1168319d5c00e0302047c435bb50067306502301d5ff806ea49d4d67eaa4abcf71bf7d4dc159e6fb1b6a8813b9af3326073fe2f36195b86db3e21429a07b27e16f0b54d0231008668c17e43912c3d53c45597fdd3c73028acc836b963c0b8025863be01bbf0f18322009a264a4e20ff2cb31c91e7fb4b0302047c435bb50066306402304f2100f745adea7f1510cb3f277b8e377afe4d098998b1534d5dd006dc0794e9aef2aed50707bd24733a9cd5dcd1567702300274c457f13f39e63480526319b1f7f2e73f9cba5618619234205c91f59b1466affae885bef3d26b8ab43e3a6e0274550302047c435bb5006830660231008abf0619e7e48074ca188a91217589fe2465bde8ad058ee82d64a877cb3642964091bdffaed95c903152a6f6938432e702310085ae60ebb31bb62b421e95c829f2d6b3aa2809802891f5390b1ccf51cbba4b28f2a659706bd4b1b3168d2ac2c03544460302047c435bb500663064023068e4d4f8c3df44a9b9237e6ed8456c75737ea68209e444cb1d961587ddfc5736c584c8b46403b1b983d31e1f11e79adc023013cc4a64fc84cd1eba75bfa938ba68182e5ee8f14c71c58be2ad169a7a4149d39295974b91cb86e31bd47aeac3c3c0270302047c435bb500663064023023d7f3198fe9fa0da9b2ee1de60e5dfb28bc0cd1d5bf752c794c7e4b0a7a4cb82f01600649efc457338d53577dc8e56302300efd1471109d2d9cfa126ed8eb3a266e754c450a86c76e7590c26df34be11c1a0e961cd32d497888ffad5aa482fd91ef0302047c435bb500673065023100ebc92cde238fe4e2b7737150afb44ac33e364cf9861129c7812b08857ee8bf9c01dec4f78489072e324de2fc7802405f023028cc948f0c838c7764b47eb86c961acbb29ffe7b9a9b6b0ca33dd7ad9b5ee9e720dc6727817040a32ce7998e7b9a09150302047c435bb500673065023100b1bea89a3e77648b9ac4aca07ccd38f75bd4be74e20e14af2bee0c1394504619e7167dad8fbbb5c744783e170846d9e502300478118b0c065cd567982663cbdf0f8747000f2e3311047f34c204eb42df8a4b00a9e3a856d98a364cf90169e973a4080302047c435bb500683066023100b4f504e0c9802377282b81737c0963acf3f829821ac5b039826fb1c7479bb01313259f796b4ac060e589541fb5030546023100ef53446bfee705f1d958e3c4a1d3e0350be6869ac3871696d90ce3730a500e4a36dd9befe9e175678f0757016266b0700302047c435bb50067306502303043db188645cd31277b38330c96899c677becdbaa0bf1ba5f65e46a63ee9bd573bb0d0edf6aad3abd85d8e8f23b3e0b023100e2c092384343b37f765840d2263710e14852e140591899b79c4900f650915d30b98281b628fd913d266b8f1d2106eafd0302047c435bb50066306402303fecbeb47ddf617a79edd93d2cbbf19ad8b35cb9aa61d33e24b2fa316a5848445e6b77da818c1166fbf76e82df1f64ff02301e7837eab427f4563d4b2bb110a3ab49c67178c16bf297335404c3204760f2e5114d2ab324a8bfec76d9fb76306bf1270302047c435bb500673065023100d5965bf736a1159ba9b111fe2447cffce9cbbbdd3a8bd560e26f5f6789db5183b17529867f679c842df9ccfca11e7c4d02303cb4ebe36f1f473e7730443a7aa866f9729c783f9fe638e3061873fd97385f28cede024c0a4806d19dd55c665fd094f20302047c435bb500673065023076cf6efa622804ff3fc09517306c807ebbb2279da7ad4dfe735c40ae87478890f29a349154216089052b8fcfe90f98b1023100f68fbe43f3d923c75922439319d917e1cf745aa799b6f400d4022aaaf5714c546f44fd06929b75e59d10fe0c743d3e730302047c435bb500673065023059e2173b2a942969fdff0cdcbfdd8bc5b1996b0ef02915f0e5139d107da115d59c53d1c6f6eb4ef49b9a8bb2e9b70297023100d81f7e09c6137f0814191994754dd733e1d624f3f92d7f9c590300573070515f32bc945902d722ce913f5cd5c92ab2d10302047c435bb500683066023100bb7882251a9f65e1e97dc5a75f2a713f97c667fa22ed3448c0379e9344c0e091a74c0ca593da85f0130a6d9463f7a07a023100fcabbb984f6be9c83bd53157c7f5bb458d03cdfa0d9eb7215d9def09c9e92505b6eb5937850ae386fd6736948ea58cf40302047c435bb500683066023100cd1f6896bc0da63f907535e3a4e4f250b4066a101983744276ce613fcd9b6efcee569f4ed992e3085308febf3c058dba023100fb06e6d393efac74efeae56a5e74892140b28d1f750ebecfdfcc9acb15de9079e07556f6a2a7ebaaff4bea02e1c227920302047c435bb500683066023100cce06a3160fbe07f1fb54cb803b72ca18541695fa179859a43c6a19fce27b300efbbe6cb31cbb854f965cb32cbeaa9bb023100a29746801b46b194adfbc28124881724c4cd9d94887d6d7c8f4b043af291e930368ad441d4d8178c2e6ec341600c15d20302047c435bb500663064023067f9190c9a31f5c499dc771b7e39f6534cc4a3ff61714e5eec01b7dbfa49c787db164a880bacaac4f271f6e4c3f63295023003faefa8333cf2c7c9b8a6f735ca92979bbd606aa4ead1e6541ab79862442e1f4611ef5b456e02edb37e59e4824409da0302047c435bb500673065023004aa5a16fc3ba6e19384ea4c4d71f971ee7694d71396d5e4a81500801b6bf333aaa91e31aed945a7a8c49bb3b0ec83b30231009d4106b466912a41be557eb359749a30638df4fcd6543f0a164028a72384cdc97cf8470feea25cbf0ff7c0d7f9bb108c0302047c435bb5006830660231009d0dd22e58d1867d69ab21db4b9e1843d45d39fdf51262b9b0b8969829a51f3203372048091ba8dbebeaae29ebe524d10231008faeea149226f16855989dead1dd908543fa408aad8145b8f773533b0ae026c0b683e6e9a5601e2a11c7e91b201af16e0302047c435bb500683066023100d1ee7e468c44fcfca8505f82b93e1797a6d504fa481271c3f26270c811531f551fc8e024101d169d3acf899fcec94786023100cc6df0d93f23805c582c95779478f2bde031a54959eae4a6c5e5638bbe1fd84b07cbf289f572150b4a69cfa4ff0ecac30302047c435bb5006730650230797c33ca67d3941c9f788dc6ab0f4a27c2e5529853d3aae9a94a02156c531afa3a28c6e52e418b2af7d2a16bc62ac78f02310080c0f7f2dacfa9fa508ddf0e5ae7b945040493ffe458a25bbd36140b5be7e28a3cada0b3154bd984e250cf3f3088bff00302047c435bb500683066023100ca0fd72e64be0c9f0f448e4f68e7235226854067fb79f9484d362e6532e8d0a05e5ccdeaef24b31627b9a745364f0112023100be15a31a3c577828b7c303f24a9fb3177ab21c4b0220f56f28f9a38241ce6d3e7b32e6c4f34be7233e788ab9df59297c0302047c435bb500683066023100edf2f541cb4c3305a26582b23fd6217236a86827eba67e5d02ab336afc1404cd737286166c64faeabc8c24e6ed385cd3023100a48b0e87ea530bea02bc3019535b0a44f8523e34d7ecc5e80ba8a2da9d43b92c2412cc8c8f214ba31a3fddf23ea506c70302047c435bb50067306502306a1b2ed6dd0b0c7f2bcf6ae08b7f177ce8aa0587e7d036e6663955bdbfb94427f34bb816417a55f1f65b2db0d0816cdf023100aa4c2399cf24f3d2036a6b7e534b6853ce948cd561cd20e1453d69779bc06bb1a86332213aa54da532c3ab60a911fd890302047c435bb5006830660231009a46f67ff62da994ac873118f0c654c07c7e757c7c98ef10722f75070dfd682da7fcfbd23c7bbe10b9d912c33df7d6d9023100b971535ed935602769f3afaf60131457b8e28821b686c9807139b4e6d366d587241a7dad6f074251562308df541cd2e90302047c435bb5006730650231008a872326c8c797eb07af8e54994e7c08b014b6ddb5e69cd7ee6e052b543fd38f3bc361b81e6acc57092eae7a0416ce6f023036ea3ac9d06375a4b9c76ddd9e76c8ecff5f4a7fea13fc2083fdbd0d2de2279a9f20ed869f6127947dffb2387cab496b0302047c435bb500673065023043b525e67305fd1b7c2fbec12aec46903ed4a2eed5331ed83251680fffb67a3cbf3e1b0808d1640f197bbf471d656cde023100f5cdbe430d5e7efe7b11b54ac7122fb1c6d12f0260f9d141a561272e0d8ab01306e48a58e831c055131448bcaff768cd0302047c435bb500673065023100dcad3ed72d408c0f860d3ae559923106ac79a3a7545237a014817fdff2d6972495b6bf64904cd2c28f6d6df6114d36ef0230261db63391b6c83b514b4d8d8283896368976abec400a7759dfc5438f62451377b60a6d631ec1f0f8775a0d5fda2ff4b0302047c435bb50066306402304764b8ae0f99dcc3e4edd6254dd4bfe86e4fd9ac80c284f8c2364961c9a6dedf47dd2cd74cf4bd101b70eb2b350ca2860230008367d63efcd078b21c757e43cb0bf029b7e12968cba6568112fcc8245fd86c8d70db42b290654bd3f9977959761e320302047c435bb500673065023100d40d8b81af8ad499f9a13cf453382de401d9bed71ae4349e24afd432bbccf91370f10344fe9581c1b3c98ebae5365eee02303a821331e0c459204c57a1163a66c15250b37b38e1b56e5ca37d414e29cd1bde200f66f21bcb3eb2cf378bc94acb88af0302047c435bb500673065023100e649bb842cc7f60516060acda19eefbdd6d3d59edf4a150cc6fcca273e15a06b39687fc7d19360e2b9a9981b88a2f97d02306619ec691469a8bb303778effadbc168b379eb9bfc8fb7fe0051273c24ff31e5953ebea6ff70739df04e0d9cd19217d20302047c435bb500663064023072f91a5c94494872c948bd7b40795f5fb1f0d29913e8e98fe8ea1ab9cf750ee2bb2d84e4bd43d7aa952493fb3b01eb410230529d4c22c4593c9a842e95e840b927cf580f0986e67f472ca1f57488fe4d5fac191dcd591033820c0aff8239702649b80302047c435bb500663064023064b58cb4cf65f8d254ecb9bdc73984dff44933722e1cfbf701c6ef4cbdce4e00399c02bb2c3e0cb645aff15991c4042c0230589d8042932c1fce34769efb98193df55a6f1fb6cf6d26812d40d1c509b4502ac7673372a6fb17f39af07888d1d2ff670302047c435bb500683066023100c6473645579e49bb4787bb965e7f802d0758f07deb97ce4f8305c0192e646836b1e1ef341e9c850d4b1ddab66bb55cfb023100f3ae9f1b9140604a6357eea1796c197c303e593dc491392a48402854312baa756c66995cd3a108ec519466cebd2922b50302047c435bb500683066023100a777769cce59540bd6bf33f2b9c399c0c5ea1cc6fe268e4daa8cee76d23306cfa707146ad8b684edb30294273f0e69d6023100c256675bd85c00374419b2c69d81be19397a43ef611f70b70e7e30f21be68c915920f4396563b6ee9fe8e4066aa048690302047c435bb500673065023100ca1d550430f1db1184fdb7e7c9e67e7a0b98bcd3e97e3e96d8352c66f60a063f09adb00008cb0640b32ff117facb7aca023005b95092dec3b7e320351185d8e68e1d9bcc9d29e013a462fe7b21a79b97f38540c576f4e077112965193deafbe177d60302047c435bb500673065023100c9d49f6c2be4e4640dafc305a6d61e4efaceddc2728b2cddc9a631cfa81abab861557b786c5ab67a77b547177143bb7f02300c17146a5ab172dbe24dc13ccb865119de775035e5692d30e1b7df6de64aebd7fa68b4e6edc1d4663c9c63d6a945fe1f0302047c435bb50068306602310094af3ad76927ccb29ca1b6911413e85c84e2d51fce01a1160a0a74d6b88af0041e2b0ab8bc423f39e42305e53e2070d7023100977381fc200b9306641f396d48c4a240055e9cce8fedbac10899bc3c892242b35bfa35b74d7563032fcc2a6abb2e0d610302047c435bb50067306502302dd0c07b1e9123ac018407ef83afc13fa9f05bbb84f0fe693f950a13f8871e2861bd30eb6d9363ac9a1f2f8d6513117e023100a26de5c4c880ea687869183c1258defa7096e34236cbcf19a0ef31d73c207914bc02ccf2ba260816ab9000bc85db47920302047c435bb500683066023100e6b76f328587a1d132316862ad1cc346567f0424863b0853fff751fc912802b985ff76f0cd885cc096c3c2ce32663ede0231008f6216132ab90eb55189c6fe37ea0d67c3a2f4bc184b29f85e31f2af5d60d62ff8ea1b0b6d2512def5b65d4f5fe2f63d0302047c435bb50067306502304ee502cd62c20200db525dbeb93431219b258d306bd27da81d4331a3e48ce6d7fd9dac860533ca4c04bf2aa4787b57e602310096199acb72d2a961b685d3515ac95db6818d68a536d69462c4ce627d479423b3787cf68b56d0b26112b901780c0b230d0302047c435bb500663064023058d01460feddb293ed81796cdca201f078065904c9fa3497208271a4638eb143be52f60eab8e5af11c79baf82dd6392502302d46bac684a2ce30dcaa029de5e85f09c47d4eb186dfd1b3e35f0b2f4430ac37416214b9fdcd418a6fc745d9cd5560420302047c435bb50068306602310094507a71c9b35945c9a429cc54543513c1a01e11ff1d39a69739e4caa725eb463d76a5e0035c90df98352ab243dfe87b023100bd04fb503ed552a19444770b2b812dc38d32629a0930a5a1038544c61ecaa359421eba473e59aea0c2081a2a702c7e130302047c435bb500673065023100f303009a54cfe3738f26f24085feff68ffdeea8b4f08fc13078a0fb1cd0f9f41b46445f32fec263684ca78ffe76061710230558512921030fb0ba451890ea9a9f37055603770b0fc6e0e0f4f5c58470ded86472c10e82b74d50956cd2dbf695746910302047c435bb5006630640230328f3da2c31d025d3f285ae5f51e11c618ff1017df777bf83b8f0d6ab101f834091d8daa93571133b7a909c8b3d12fce023055cef0d051923b858942a41a4eead992ec5566cbd8392875497f0d669ae4847e4febbe59ab8948928444da68dc9b88df0302047c435bb500673065023078352d75bb8b68f447d9783059ddbe86fe534144aa584bd21e95c6b2ad8a75e74fb3f1be576819d55f92fbd8bd892769023100bb9336f4dba4cfaee6d8f6af905bd9295683da12cd7f100077a6b6e24c1e8d6753ac3150fb3cb2b61ed79c0c399568fb0302047c435bb500673065023065f30db7d64c10e8072295ea7750ace3170c69922798c800a4ba34268bcd7b1788b8d7de8976bf5e991bbfbd047265da023100f78161bd8e96dbfce604f85bb4489cc13d266eb8b2afefa9ccbe156aa09e57fc180097d833fc7420d3b46e10e442bcdd0302047c435bb50066306402303fd5574834a7c280a99a54ab85b77045193604392b1891e5c2be38b10313565c6ff885d664608be58bb6dcaaa1484acc023067104dc9660db855d228ff2d07dbfcafb1b05af791e7618a024e5d473461aa6e351d0ac0dc6bf74562354c99d8895ed80302047c435bb500673065023100dc3023f1da9d3679b1ac4e9e5131b401037e1338d9df082db6b127bfc7e886f4a92686fa7a68a576bed0a6c53538174902306807a20b22e464518c8dc06a50c03576ee9c452bb6078bea2849cbb326dceaa579874565b771f3f0c24db1bdfa1698de0302047c435bb50067306502304ae460fee80e80dd0fef4527a59a6840206d96e4956370a1a0b16e05ea2ab11c0fac8eb76f4d6ca60761458a80c260fc023100d1f14a040670f166c9a1171aeaf6288fe4fc1ca843b50d0ef8e7cb01acfecbf1a902a30441b7fc3c493d137be585fe380302047c435bb500683066023100b0b88c96e46138b068e1bdf59c0f245a9ec5b1cc0f02f4cacbca11b9b6242f0476606d2128bfa2b9de74fa9786b03cc7023100cea0a9bed1aa6f4d262a01d1398bf3597e876c4ff9e606ea99525f818dcacf7d0ceee4fa2ce6323a9f87c739702f4ad60302047c435bb500673065023100b33554363caf2e48f1ecbaff04de792e5aa20998aa83f7ddb9e133e307426b4d656ea0f45ee319bad278200f81e6727702303ae43fb31a6361ee911fea2325f977c88ba7bf666a8372e2cf239e710250bede8e82adcff0e640ffefa229b1e0e3b2160302047c435bb500683066023100d4b18af30a6c84e8ef1946aa36b7cb2cbb33500d32289aba3b9f839e227a4d4ca9eb7120078d98828429160f54cc4da9023100e2aedc10c8baf2441e98a8bbc4f4057a9db92b87e83df257f37f42c2444c9f9998c6c013c6d75e169dab5d43034f1af90302047c435bb500663064023051853c2cbd35f48fb3b704cd2a072c1fbf5586438f26ff857b70f4cd56b592cb6de69c7f2190b8e7d8c1c6a964713f75023040398d29463987a5a1b314977681d5e0f1f5d7feab9e01ab764fbe7d4411f18f86bc9b48961f2bd559c146aa7f7d87930302047c435bb500683066023100a55d002d2e027780d70c3e4c5d4dcdddf21dc5e1d55ee1540b3a5a4ee4a08f465bb6b5ce484ff7433fad87ba3c0b1985023100e82cd30d6247da632397f85e6d4841def366e578c76bc3cacd82a4d9a8c33399a28072f9177121ff7dffab6d232516dd0302047c435bb500683066023100892857a77241e2d0b62508ea284f855b83ec09ceb60b5af64d23224795bf015c26a7d1ebf4f58cae21f941dff7d4f09002310088392081a95cdd65d4f2f81b00517ebce9ae8ce259965c41dd20d56cc9ebd373af6a69e52819654ce91d9b644f3e85fd0302047c435bb500673065023051cc2af304cc132035a8a5af22267e2e77e616291e433466f0609289a1b02b53df32eb09426e24ecf5af17f8a0ab315c02310080343c993b384d6ccfe4fa027f1c25ad3f985d9774689e921aa19a8a4138177087b7afbbde80b473752a305174dd73c10302047c435bb500673065023100ac06e7bfe50b033deb3d67dbf085a7b65f6d3a41d710e709d837eb0797c0f9b720e335afc22c51eaac93f6f521d6be850230501d01412cc7b5e5aa75f30dd63efd9ab60f18a1e7666731aa98997df50b0d1a2be58d9677aff13aea40c9d790e585450302047c435bb50067306502310091e649ecf25ff4d4387c18435a2b2dfcc2902b84904b3eb28d81f8813b57d88a10e47d532d9bc40411644ed0851c857b02301b392cb9620f5e7889d79316bcd8f87cf530c626a2e93a43a192d6091616e453a060ca396d61a4929aef66e0477626220302047c435bb500673065023100af409c5c86a6fa12ec4291a71e3a4623501e35baacadd622ea07bd5914d10e55179b781a7649373a428d973ce6f6c4fd02304883e22a0c115f0302e6248b23e4dc7083d86412042b878b285eeb6186d425b8339c3fb4ce2e79e961195f55f2aa3a060302047c435bb50067306502302cf0d84e43981170965aa73ee581c6887aa592c06a0ebcb274a80de4ed495d4ebbf58d6b9fdf8b7027ed95c8f0c12529023100e87ce2457c5c6d64ed0aab879bd50dd68443a39ab36556368c7b0b88c13015aaac865c5a3e58aa94119c1d0ce68e547b0302047c435bb50067306502303fd68ad79cee3d9f00deec8d6155f82d007bc1dbf9ab48b3e0d4dcc205a6deb2a960332e9b0ae2e981d7afc3af36df45023100ce31ecc7897ee1f9e6124e6a8b258328c2f23d5a1bbea72600a365902feab425afc9d012cfa4d69d91461dd2ea2f967b0302047c435bb500673065023100b5a1e321ecddb063cb533be75d490bdfc70a583de635fd149268d7a7345ce24a9662b78028690fa5a44a759a0d2f9c9002306704bd7271ae5e7646499c9284075971377f59f602f5d1705feff5d967a9642bfe2d8434a2ebc464ae2e1f23b05945600302047c435bb500673065023060674a70037b869df20a4cc3772f5d5430c71e58f6aa7a454f3ef21a0efcc268f0c75d95aeeb0c129e08bc8b5bb8c288023100b24e0fcefe354cbcef06183ea9bf343a5819286ef211aec902a2c159eed19534071c2302dfab409aa6c42b0d4e036a5f0302047c435bb50067306502304fd33fe9605d16b4a13d606299dcc373641f3ec66f65b8b90791b33db0b1a8683ca89bd606d1459fe64f8b96bf7097b60231009afc600986ceed23888587c53c4b5a8fd21a835806a78e228880bb8697b7d59de7988297d3f48d6c08abe08526cc48be0302047c435bb50066306402307ee80eb68567e5651fd316bd6d0d429bcfbc447dc9ed5792936bce71843311bb320b265f1dcaf8a963ea4379f0aeb2b2023026050ad4230f1ebb8590bb2663e922e0a59288c8361a03ef196ca2a294682703750cb2b9275372ce148d7c5dc0c683cd0302047c435bb5006630640230614c8e1e0da1594853c81f2aa538105c6566070c14db578e5f8e8dd4b0e777225ebf4dbd079db08a9a87c466af26fea6023009f29f4adacc68af02761a46f4dfa710eae4228b71872054e87859ce546ed9dc8741ff7767c3e13d2c3b9e91006b838a0302047c435bb50067306502307d7e1ecc538223ca3170033681d6404786c0980fba0daed54a14a24a8bd44040c543c52e62c538ece05be7b86f157d02023100cf604d7c2e440467ffac5fc941306ca998926e72e7e4a1f4d2c8a411e5b3ea8ebf6162c47310a52811415eab1ce917230302047c435bb5006830660231008dae1c5e3f573e9f617b7b7841c26c027c25fd318a87bfe7a4afd1885c8b2dc40dbc34cbf6555629fd3da3252d01e2ac023100ecac6cbc700db53118b7c4ded8578c28770d50a9c63ee39d399b534d465e9afa122294d746b2af1f8e9f676453abdbef0302047c435bb500673065023100a071dc7918c7a935c2303e4753c97219e7d377738837a377875ec7218befcb0b9c848e9e8d2574ceb0e6631d7ee8504402300e8e710d09394a76ca6abb323a3b92a7256b2586fa2f9c9adb502d2fadb4ed5289648d3805e550b58f8e5c7a950984e70302047c435bb50066306402302374fc8e027ce37486e0fde42fe0dc75aee016a4f147871cf185690d67e32c68d5b18865e5658375ea6cada1a162bf65023069b430bceb426ee93bc96233c7e4b35720ab2983bccc236b8864102b1aba18dfc30cb17b04a8973738800900b1bcb9950302047c435bb500683066023100f41e0e70e95d720009356ae47b885e419d24b7179e46181c8884079a3d706f6bcfe64fe3a9d74da9711f38f6966d1d0c023100e1294024de9d64662665c5547bc1da948176c8d958ec721ab79e6616f90c2480ab8a614d2c583bc3901529b02329d3710302047c435bb500683066023100e73cb70aa4de86abcc1f24777703900cf075280e58c23d8ab3eb8a80238b0a4a81cb659be4d03c09525815f384e55cd5023100e0b0d893e1716fa13ba1582f20cc6a5bfce68f7ec799c55db5888f4e55d6fe91d6ee53e67d0f3c156b800564f4516f8e0302047c435bb500683066023100a3cb66c7b146a64c083cce862c382578fc1950e649953bcbc150051623dd53bef41988ff6b8a2a91bac55d76978f10bf023100e3fe3c6bad723ac996bb4dc8bf199bbe4ee27fca6db82693024da9810138d6267e731d0626aa03cec80e03df2aeb8fd70302047c435bb500683066023100ac7acecc6e8693b2038b488554f5d4c780b3b55bc3a21e0fc6726c778268b5a5deab42d0339e42c82b82b4c4c8e7c206023100a348b0ed60e70f21620784c106497392e20c998db15472ee372c10922544f4c72f5a470d34cb18d231c8016301017fc40302047c435bb5006830660231009ca88ed9661fb8c7febc3654743e2947808fc6a21c4a2b5adb34ccd3d901f891994905bd949e8fc2db4b482f1aad993d023100df73441650a5dd2b6598e60d84be1cfb1f31a196e82be1189b352ff22a673d76fa39f395fbec004dd4e41cdf50ab5d480302047c435bb50067306502310090f263f498784543b16098ab5bce640f012de97ce4537be27f0f334531f263320f98f2ea8fb700d1cda64522a9d1c752023039819f8a2e30856fd41f7b4bed30a99535bc4660582a8ed8a65776ffcf1d9989b1131af9b850e7440f509d5dda732ddb0302047c435bb5006830660231008346e374792e9bd1067cf40c9dc80bb31209d499949a1d2aa0f5d329a39cdfb19801f059a649b191d58657ca987b8170023100aa59eca3c77865bb9a7df7d7ccbd933e461e888a2662c47c4f17e1e459c97dec7134e0918ce456093ea8189022928c2e0302047c435bb500673065023100f97d892701e95e50797657725decaa335dcf7532d469ebb56c139833a44a29087b42df704faec2b08cae51919763b10602300e72b4fee6f103f628cf154669e2e308bdd68ad89af95d42e8fec3ff0d9555911a505ace889745b765cfe13ef1ecfb270302047c435bb500663064023039cdfb01a88ba759ec9d42c66af63cafce8bc2e2db7da03e073222eeb7280efca5fe39e6abe447bd696b939b2b73702b023047c4709824d29c9b82fc528974c9603cb428d9937e55b56db9abb5e36807c62770b390159483e7cba8bd7e963d755a8e0302047c435bb500683066023100c1e8bca3d09dfde692cd6be0d953ab383c3af2a0a44e37a0a2c85204bfdf9ad772dc972be29e379071ec88dd67334df3023100b420660e229e309b8d52daff07c21cf75658b77546d992070a157f0a6f70356012719a3e7474010709cb11a968a2d5850302047c435bb5006730650230032c5272907b4560772a19bfb5afd0c0a50477a8b60f6c43d54f8e6292ebb664956cdcec3b2081b9c08533a828fbb34b023100875a29b44b17e291d9304dc2eaed69b20d99217cd9fd98614f2d843d6922af3523730d7e97fb4c2b6b7ea8a486b5851c0302047c435bb500683066023100f64d0a33a60703d353370ba45b243c8249821cf851d39fd3aa830e162e263c494ea89a20435f86f7051c05756f312fa5023100f8cae21a81d66b32ba5007882da602f59cd2b4e9f397dcc428ecf62e2fbc25f55cd26b3a6604270afe84cc08085d4a620302047c435bb500673065023100e9b40b43a38ba4784e694616e3824d8995f9ad1881fc43cd83bf0c8a15f97454d260f2f67591d62ba942577b76c077d602304149d654bad771e347c5f19665c6d7bff45159ebda85fc2675d3c38e44389b65ac130660ee5bd132130265739a0350f10302047c435bb5006630640230089f070ea6a0805c044720fa8eb6d2a5fb7b41ea73508c4181e07f221b1f7992ad8f11920b156f316073c0f26388303a0230047b1c7133200eb00244f1dca03abfb0ea506f17eafb9106516d80226ce6586b8b4fd19270588f3d4b89ee04534e32f10302047c435bb500673065023100ab1839ba7b32cbbe2a2177233879510d17a5bb2365594f2f7bbcef324d5c0ff68c2c7253c873ce44188ebf08aea4ef8c02306c889c05a9c8434e344eb3fe8586f370b7116ebabc533f070a60b4c7592a0312acacb4c1fc36b88cda657c5c070f3acf0302047c435bb500673065023100f4136d677c97de27412bbc326429ce38d9a7d3e2654d0bc5c094a1140971af9ec9bd9b5e1cb29de9bda2e5828792f66d0230424650ea757436ab999a72b8b7d4850cd23df1163fc2a695de85f5cc959bffbf1a61b0dd19bab728f2c4469cd9814bdf0302047c435bb500673065023100b6601eb9e31e4d832f4cfd9784df2f940eb370252e5d05113cb7a206ad2999c9fd1313c532c499feef44fb8a860c9dfa02304e447b55c8069a9dd83908b818cffb433f00a1849ca00857bdb08cfba2e7fe0358796a7360762202569d5f8043b168e30302047c435bb500673065023033725c76971a571a0f2a9928a6d8f28f091212bf4a8404de4e8edaea6ba3a981da4bb7bcd9ecb6383f08bc97eb9c49d8023100b25dad6532d7d00b260257edfde1bd694121f260106c43475788cbab7b9b8f16e8fdc1dc45db9ce07a105028009bd0ac0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301c56dba166d884d9dc90088e37cddb866e1406574990f79fec2c0ffbb5a0739985bd1d6ce7910610cb14017793d95c66023100a983dcfe319bd99515866103498d65d2b11e2fc469f955b43efa4507835bd0238752e902282174804038f58ac0a7221d0302047c435bb50066306402300fa28b0c56a8c62d9d238ea94d529dc46cfc3e087437218fdc7afade713826b84331c6b5d1149bc71063b9cbbb86ba480230509b002fffc1d0b0fbadc7977aface8243cb349205fc7eb8e490d954cc1eef5165095ac9df66a9cefb47b702f6e080130302047c435bb500683066023100e3b64f2557f9d20e195091452d2ecb16eaef7a0318d5397c332cf1f84d37f5501bc79f3108dca05ea80136d2c038468b023100db07ce0bcecc11314874fe50fce16fb205f241715052116bd4c8cf3ea3a6ed1119876b68be2e19311e9985f264e3fe160302047c435bb5006630640230670b0a2fe5ad0befc262761532691a161460856fdefe2d6b0932481fa848d2123c2540e18ceebce3588da6acd4aa4b10023018cdeb83d9c23007e76abcccac07737361fc57f6a6ebdee6e5f3da9e599be56cc2c2142ef76a777260c8fd3ba0180d9b0302047c435bb50067306502305f5598dfec24a4172e20b0d5d2d5bb4ee71da108e62648db7312934b1da91dec1f402dbdf5f4f1183d7639e09ef60ce5023100c2e2c28c7407064ffe33206a59d5abee82ac8f533fe12b6a35271fbe5d222f1f6e249e0fc2fd3f1f5e405ed52083b9f00302047c435bb500673065023100ebcd492e12a5abd559fd86abca9d3f7fb43659311c85b14f614e202421b31a75a5ed7e84ed250f0cc7dd75fb1a906c4a02303cc900e3eb234aa2f851eed2d2b01534af2c05812026de89c1a28cce68418d502f6aa6ba6f8ba1f6e68566635f7350fb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c5c90082f91fe4f3d3bb6bb6839a005809ed772ef4c223d1f06e9a425712d3d2e05e77342318135073f6754cfdd4e41802310091fffbc41fd846868fc0a782556c4573b66d6002c1d2f3dbecc6167c1cbef1b9f2fd3e8a609e5f1eb6b0c9745bd904de0302047c435bb5006630640230536365d167802705ba7e9ba16b7c72124c531a05e68322549ecebf7242c5b2116ee2026dc253ca7a2626d523aa3c8a0b02304899ae658738f24b34fdd4d2e0fe08c6f70ef02acc238e692acbeac16d97f5bb6a6a64c0675cd7f71fb1a52d4e7eb6eb0302047c435bb500673065023064bb19106fb204075836c0432dc5e831c5b3cf3d4b7190b073ac2876d51a96a4d4853c3df8cbea419b76f87ec27fe186023100b42bc7587a61ede990d35718563b757020b3d776ff7c86c71de2efabf022e784be7d4dfbe77d2484d550d285b8ca8e1d0302047c435bb50066306402304c5088609ccbbc148e7ba9c28438f8c98c3d4d289c5ad6bc1d9bbfaffd1026e89861565faa4965d7de9228f3df6697aa02302af5aa8d059e1b75af4cfdddb94874aedd4dcd9cd9e38551913ab0e842ef99c1b3ca1483593b9524b79d3fe42e27b75d0302047c435bb50066306402301a6beca71175af430f5d7c575a2be761e4bdda8c129e2b74621b966ed74aa7b0c923b9a8dd7feb55bb5ab05773a7c7ec02302b6ac08fa2689189a93a1c1f5d4e5b22992c57d55c81dd88e659423c745403687f65418e62cc2a2bce60f07a46f45ff30302047c435bb500683066023100b20f17371213fe3733611dd545b111772acaff8c754bc7db9b76264a9661f185aa9c5e5149ba77ee7049b74ef2daeae5023100e6c3d225e524e3bba6bcae17ecb98aa7f44e988bc07629fcbedb9b2f6014cb339dc985164e1608cacb5eea14cf05e2c80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500673065023100c6aff6faf01e2b3d61a7ab9f1f7c8bf7a441529fce61cd6cf5555b298facce583ded2712d6e235236c42bce16fa78ecc02302c85722d3cf49808003c81d7046af1e5d83ed705316ed6f7030efff12d6c7eaa83834d860d2a043c58c4bba04f7302f50302047c435bb500683066023100aa625759e824b72d37efc3075cb0e0914f54d6d7f13ca3261232308075541e2a7fea4d440f1dd0aff39e4d9f5c797249023100fbc7fc237b72a4c97d0cd6b8f7490fe804e2b37258d5ac0d22f02ae82d5916e9cd1094013ce8c8b6b350569007e297d30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f99ba04df6e9df7352a995d49ba972e8d69a9ef400f69e0d90026c66880d7a11b83c9aa7452eb02ea1dfb21f984d9e45023070704b2cdc5aa623e169788b7bb1a2e607f1b07c0e2b3bd5aac318e2df0d9d72996f22996616bed04827b8f7757f4cfd0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500673065023100df47351f0a97df0b64b2cf151abbbee4f7c72682681f8871b22162b44cf3272545b4a5444ef318c5dc8be9364bec120e0230257a4ea7c554d2f9833b7fa039bfba1b081839c3faf4e02a9cf7227e4bdc63da72dfb920bfdf714e9d404b082ec7a9740302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023057a91c4714dcb1c0d20538d01171c81a59f9ecadf70806534582fed58dd538a6a806d0cd4628d0608c7360493b97f2ab023056cf754d2da25ce5626585bd6a0aa9f677754f3df130cc4446123ad988d56aacc68f64e09403b01d61df194847344e680302047c435bb500673065023100cbd904941d49ddc728389b559486ea930d8b1bbbd96f6f52a2ee930c047046a3ecd966bcbb1c5021863d3406358783ac0230247252c3d6a0d5efb93f44f2c9c138cfaec3b5f879b26c7e0ee6fafd25d6a5beb61dd2ce5d52a1e2d816675a5c91e3cd0302047c435bb500673065023100dfe6eebbb97c464daebb9dd9b99e99182123591fb18170f9f64ed0efeef02af7bd0e3cf91bc68a5c1597d64b7529f05702301b490fb3305ecadf17f82ff5398233d2b26d78396c1213833c237eaf976eea2eb7d11ab588acb317512cdd7866c890960302047c435bb5006730650230702f46446334654296030c799d74df9960be5d0e6f0912d3f343cb06f38c2f2225518c2ab1ff2b6c255cd7529fa5338c023100c2a527331f8f81ed0d87882f67b2d2ff998d28576060e25ca7db051bbf2d89476294d827080146c8c25566d098e308350302047c435bb500673065023037e536235f5a096c465237c78e617debca0cd0cbaf44259c99b9f9537651f5ff78fe8435f872ba4b8dea3d4de41bd63c023100dfb4af6a3c484086f26d3be2778f8788ac6fa648c88e72153c0ab817fd2fa3d639b72ac2d6fb6e39e1d866cb1c049de90302047c435bb500673065023011f49e85a6080d47253b4c7728114c63aca24b245ccc6f0bbdc47b5ff11cb3902ed57f29d1068c0d23142d9aba3b7ee8023100ab7c1658d45b68c6d60619a5b42cbfe7e96dff8aab8b2161f46c74ad642ddc4746f80c648670e8e8edc0aaaf4d52bfc90302047c435bb500683066023100afe9793b6e1dd476c6a88f6f905cc39f7332f1c76a9605a5d1dceb3773c5eb4df2c2f972aa08cdce601eeffcda4220cb023100a6660de467f26b8942eb010a199e516851b173e64311c9981b5d8664e3c0653fd49bbd1166c00c63b7e80a353115ab1f0302047c435bb500683066023100b1b5d21351fcef24f57546a41ea7f9879c2794fc38ed0c95695de5b5112c24c6805bd07527c2116748c17d3d5d3df974023100f723a4f37d194996e756c60cac7a5f7c833eb39e422ea0ea6531515a8174de2368b341cc7f5ad6ac313771b05a1571700302047c435bb500673065023100986fba09f5f969bfcd7f5d1c8942f656dde18bab0e81a1f2f8927ca6d9c5c1388353a24cc4a52b0ce8930274c32ef3e7023002c1ad6d37abee82cab59861fd5518af446826864db807ceaef96a8137729204d3d5144a186b54bfcba0d48b2ca27ff20302047c435bb500673065023056cf6557bdf3b8ff3cdd457d7ba5119ecff3809b4dc1d79398acf5e44320008c84138e5aad3b0530333505108e2ef8ed023100d70fa07f804989db4afaa9595b3d70c3d4b9427115060ba29ff30c52f6d514fe5c5ede69a91f8eef3bda07b697d458580302047c435bb500673065023100aadc20a150e6c13df9919e2e4b740cbca299736d697a6578dd5d5737ebc7cef049f644965de4a27055134b7d67165a330230231cdbf8cbf26177b519f94a31be53ec5ef5c818b01d31e421eb304254ba2a7f1547f37497c4e205cd861ae53339cf980302047c435bb500683066023100a74f85faa0c02afddfe5ab914afb1ed2bbce9204ff13359dc38409641d0cb574da2025fcf0797c04023ffdf29e9a38f0023100f6172c56c8d9d12159605fb25794d488cab824daf0a52d8e632b57a9a9e75fe561cf0b0e27b55cf61eb40300f8e063ac0302047c435bb500683066023100ade4bd8b81fcf449b4c3dd9a7180493777bf3250fd408e723dcedd55f0cc5db50a3fcdf0dc28510d518bbcc1c05a062a02310090fe3aaccf9ca8bb06ce5b2ed6141044c0b9a16c50aeafa137f0a46a01d6752c708e5a38a2f17d176704ec0e6b253d010302047c435bb500683066023100c5f2a385598f2c34b174543fce61188a3dda886a9dc9335254fd29ac53f942e9ffa5d38f29a5aee79c9547b87a56b0c7023100f6bac2cf8c55fb255fd9e4fd3f61936bb253461e68d891c64724a4914b43529bafe9757ec8cce896b098221e4e8c64d90302047c435bb500663064023004c29d98a2cb8f809b023d275203199b738f629bfb35e2a3809c57a626834550e56d532242903b8c66bc8e5ae3cb6bb9023054ad707847523c16c602cc3731ed02940e6ecf59206c336068e2e51e68c688f3476ac6af62563402a13485dccf662d380302047c435bb5006730650230433dab554d5036d01c8afe5258428bf324d9b07f7fc47b258619aa5ca1c784d5748f925f29304b445f57a81b973816c2023100f8c65e55679bbc21598b49d5737d03074ad36dfbedb7009a9d5ff5fb531149bf01c4701fdf45160de764381896acd03b0302047c435bb500663064023065edda6c552a109d33ee2c6da75b48aaca0da0bc52bc4e561e5b9d7abfe3fced6254203114886169a47940c0d16c7383023022b38e3a2a5b60952754eab3f14588d1fab563444fcbe0ca696301a6b3bccd5decca92e8266341b0fc43fbcc86a686ac0302047c435bb5006830660231009b8f796347df05bf829d13432890194849ff11cd30bc476a602eba1f6a9393d7c2ac12d59454fe69d578805ed7d5cc5d023100dbc010f5a71ff7cb434a78490b1db6f69981dc837d5a7f6a97d19934fc6da77b3f0b12a2c8d7400edbabfc1db833ad5f0302047c435bb500683066023100af3a50e710e71cc407023c37de5dffd2e3c09a4a08f3cb3026e1ecdac0477860db4ba2fe35e0f0f6ffc954993f2c0d4e023100c0f52aaf9b2f5ae2155e1a8e87b6c73c958fceaf10dbe495624c934b28b8d559bd0509be7a3d5c43ef99f14bfee4d4d60302047c435bb50067306502304f70ae003fb7a0f4dde2fa0686b244251f2e22cb75c4691ed3c2efdf6068f66858fab0a9d44c6baf4bd38993d2dd73e90231008e3cc3acc4959ed6e8e436264b35ecca5cca195578b25d08c2cfa7809c5c0b165e5f03b61d180aa447f543a8f44f36ae0302047c435bb500683066023100e3e9ddbb707a584cf85458eba7e14ce83d3b4980f85b69f05475dc9b98c8f0a01dfc51bca12372956c18216078ec8344023100949c8ba707f04d7f91fd80c875d1fe25c6f4ffc9f04aa256c84282d1827b91edc7006b3da90eaf4d46bb965cacd527d70302047c435bb50067306502300202686731f6d4c8d19531f491fb443753c49bf31db328daac04cbbd4865476f277cb4af1336535b547d4980635f9259023100fe813ebb6023e569c839be01468b8e2c32526143e88d5c29a12655580d1d3b8a6f041c188c60990575615682ad85a5a00302047c435bb500673065023100c150cb84c2a207c6fc265e28e2e3908cddcd221c9b48d023f7a33bd0e5270c83bb1e0dcab1ac9f4c65f22c83fcc4f4950230038308f054b0a7dd63d5b16b70b05ebcebd4d85a2107c01e2c50bc6c504068c982d9c45c4838f9ad39cd6506719004880302047c435bb50066306402305ff06a179dbd6a417b62b00fdf74949e4e5ff439e5cf0958559d11c7cff3b3b5f8c3b3f340154935af5fe719cdba779e023061f7196f2e976531bde834b023862c12fd5100142dd117bb4d356b37615a080a4836c7a998856928a3c02048dc0f76990302047c435bb50066306402300ec351cfa4715f9264a7bd97adb32befcf724afc30211d805b74597a3353d249bdde0e0607986cf591f9792f008cd7d302302f0180aed8e863a64cf84a535af8e969314f42ead658954720d7f05a39c8517f56dde208a27a7d84fc964c0e8a609ced0302047c435bb50068306602310086de6f063dca2d34456e51fb3972c95f10cbe20bad535d712d3ba79cf45d251333bf32f0e64eeca6d3c68df962c2bba90231008fb654f92f3f093012adfafcacd4a3a982065b0444354fdacd3675a99b0d775630f5709e9f178745fef506ab7808b7350302047c435bb500673065023100ec16c836e4c1400a5008941be9a06798d475692ab7a44f6ad9df7e8b78b5db7699b1744ecd4e9915d2ee328fd33c31090230418c277b69ab478ac9701d8d298a74dc642a5025a8524fffc08f1c191730444ce5331cc9422a3fad3ecf5622333baaef0302047c435bb5006830660231008faca1a2c16dc9609c5d7233da94714ea8f8b5d42300e7d9329501d60f3f9425712b39fb2c3cf55651f36e9d06e4209e023100916325aab8f2a0d92d31c08fcd6243fe859d4611e7eacb5741ebbc5a90ef8f1f178e1ce4267c2a2efe0940672775db0a0302047c435bb500673065023009211a6529b13ac3aadcdfa23e3ade2a117d84fbe776b3c7f2916a9d59556bedaf416d1dffe6bc69a94d0c8f6f5bbbcd023100e26e39ce5de58a40da169704fc98b962e9b1bbc4c8a2cc7081af5a00a199a5638c15e6447fd2eb0c23a2968ad3de6c050302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023061a0c2b21e9e0185ae47e66b0dd719d111add9f4da2f4adf598d22ba3c58b922f9a27448286136267810e63c0e57f95e0231009b712de9146fd52b47e4f670f81847b62759a9b485395ecd38fdc85cb968af10fed31fe45164e421b2d8e2955445f9a20302047c435bb50067306502307b66c4b55a5884d0eccc2102f49fd3600d48d472ef73ee1c79d3fc9c8a3dd13f097f2fd3437c99e9d6f2a8dc4df2b7c2023100ebeed59e151cbe206579e1c639ac13333d84cc2efabcfa532a68be4087f9fd321c6543c3dd9750b6379a68a9d933c3bf0302047c435bb50067306502306a906344fad6ac9a6611f5a18d3c0a7d04ad821d5f8f88d6df7529d57e1928874b43977c897ea8db1ea3f81d2c699aa4023100e6c0c5d79d946efb22e6e60a05dde3941101aae3887654d4949b6dd2394c2daa4da44ba9082d2e278b201fc482c9761c0302047c435bb50066306402302de75c8122913ae4211827ed75c153c3a82f608469b9dd71f47be027b001d1431589e3d672e9a319414f0f3433624574023078aa8f5d016f9fe9625768ee8375c17f94a8fb5ec54e0e8c70a903836d24e1b67d89c051085ee1aa3844af29b733da8b0302047c435bb500663064023014c34666a04f1965cd78e115e34775d4006e7ca27576248f370898486f20a9ad204ed4a9001b0b3d5e82d3f71cf86e9802304bbc92959fc9b7c58d575ec1045b5b68a4aec63291670db3832a84c639e6103af4e339e363405272f7582d25eb5b127c0302047c435bb500663064023076b362f11bde0f480cdaff2199dc41128916b258bba9ef172e175560ee0f09a961507d009f4bd43eabae7a04ec3099120230037e5e9ef86b4860bcb0f098e04458a0ca04031b8758dd9164249bca6fb0c0e06b3cd31562883e4cdb11d26e442fa97b0302047c435bb500673065023046ff35ed401aeffe3b26c892c9a617c392638d8d43ab1fec770d27aed20e2097713944c8b84886ffc9e216371969a5cd0231009312e0c5cda5479d05c509c6dbe15daaafc8fe4383c47023112945cd302be530ceb687348bc73bf931f45fcdf75e5b0e0302047c435bb50067306502304f47a54dc6fdaf9ab50e966acadc3e5221a64a9e7e3f51ba571d0db261129dc64d87050d9fd7e4d041e5298c641e87cc023100f4433b45531b1912b80b9ce7072a66d2b206604cd9219daade4bbeff13aaaf5642933b82c13f183182144c01921b20de0302047c435bb500683066023100afda1e60c6723b70da17fe9aee316948f7695bcd24ecece4fbe848f015ee940af903e71f2ce62a44c4c9ba9859c9204c023100f4b404989967d3a393725621d9d97242f9aa29d11dc69e5abe1a55a3022e1bb4815c7cd4f9b566a6ff2e385244d14c1d0302047c435bb500683066023100c288917369bcd45a427e338dae04f805068f14fd27032ee6ec4a14bd24a82fc5771f414f3c7f339f7cd08928c2051def0231008785eea40529ba8d00cd60f9e713f5b15ad287f9628ee66a74bc2409eca731f379b7f3e1691b3ad73201cb528e99e5ff0302047c435bb500673065023060dd38c1aeefd37f5132e2c8b5a2ab890b57e2cad646f763f88e17dfa3b2ed56d0988cb4a24723e2b903e2a5278b8737023100bf844ebdade876b689a2625d2b2d38b1acb0d0534a85f7086ce692a24ee04dc0f0dffe81747d30aed045e71dd8527e430302047c435bb500683066023100aea121ffbf56e8e84954b72aeb2503cd0c8a0dbdf7db964a2fbc99ad824850b9dcb5390676ddd8967a2c68a45d7cf634023100ee7f3181404b7f18d7ecc17056a4e9b9314601a9875fccc27ed0c9a5061d355306537c4a3940aff814f42ce185afe1d20302047c435bb500683066023100d07ebc31faf379f8be102c986c88b98dfa782e8029d84828e8e7627e5ed42c2d4fa360e75313aaa57cf30e08ba3d2a91023100ebe2b249ca954fad4555066a85f8d83ce61235f4cfb64c90e60530b6c624e6c5f449b505ffe2885f6ce44cd28740f30b0302047c435bb5006730650231009fc4cb719bb81f6a694ef70fbcb85e25027baff18d9a2e4690e248d64f2801ff4bb594305cf39a62e60ec9cd30828a740230607a100fd9f6f0af77d019420e8a7b68066e0d3286cc0834b53437ed5e4183a5ab301125c1569bee32223a7746cbb0c80302047c435bb500683066023100aafdd43294f420b5b51208d8cc5dff6b450df88fb518ab975b33fa6afa69e2d3b186346e54ea31959c09f38b112e7611023100df2f34c9f5899f9b346ed2213abcb0c484515362d7dc582f52ac091b07c7e44963393e77994eeaae027490aca89b910e0302047c435bb500683066023100e2cdf35d51eea0f0d228828711f86271b0d6463086c9b962ab2376fbe7e789363c470ebb6271895abfc632417e2ae0e8023100bac7abdf7db7916e92ba7fa021ca6a3a3d8000c8b56e66bfc4b0f623b985eea90c95a3f13c94bc9532a5fcf5c315769e0302047c435bb500683066023100a240e79f510f8496a8e8f5ca0cf040d965908bfb4311a741352eb5a5e53e6e041b6ebc16229fcafd28de98f37bc1fdde023100cb9e682c741e1c2212375c065bbd7d0d0823aa61730dcedc152339b0c321c86975171d799d4da968b9ecccdb1f71c5d70302047c435bb500673065023072474ae27c71bdf8576bf68ee29383162f0158bb215debf02e79121b3bddebccb63f570c9dd4c60d50ab9c128b7e54f8023100addfdfb5a9f1429a74ba40cb1f051ee58db53ea18bd92bc43fe72497f85259e95a651c804d0d37d262f1344caf6bb2f10302047c435bb500673065023100cf9417313cc05d0d986786408f3c0bcfaaf0aed3e3d7b68d989bde60d7bc662ed9f1df4a916be5fe5c68ccf3ff8517030230697e09a3d63b85f246d5ba414b3f742c1c9a6c9b2b116426deeeada8c3b199cc295b2266bcbb2c76c1682c726580d3ff0302047c435bb50066306402305bae17431661c2b18b8e3bbd46219ce2a45afdcb7d020640afa810bc9c81847cf3faca870aa7b4daab565a28b1d33848023041bfce94913d7574c3c5acdf73a1f30b103b2932f576b25a7b8bf318e558c2a28fb92ce4efc42cadb070eb35990ac0470302047c435bb500673065023100a57bdc746c7bef4a42d549f269112a64a6dceb8a61e7fce7577400e99390a2630f91b793058b0ea2a683cb5b13af102502304a07f361e536f0aecaa2f544c782143c5d8f7114433503680fef7f1e8590e182e0942e131bc517380785d7bfc63870c90302047c435bb500683066023100e3cc5efcae0a6d2632076b5b89922bad6f35f1683b01653c46d42d1936bd752ec6e2ac785592c0cf03e9950346218be8023100e3dc5912d06d3db883bd6158a67187e55b690d7ef33a535774b7bd40485f8ce5835d6ab6a8e5f29631791b23786e94be0302047c435bb50067306502305c2c8ad1e892cc042702e353eb3692fc2ba0249e561eef007f7d6cab3a6933920a687b6a3790cf9ece1d399648662c8f023100faff849160a60463cefda3dd3af98a57e0c6e1ab968c473c4cbbc01d40f39554b9d58d430adea5aecf691973cd1bb8ac0302047c435bb50066306402303aa459da5626b23eb9d5faaba92336e77833581caa224559fdbeb6ac12c80bf2cba6651297bdbfe25f7def975ac6c5430230354760d64ade4813f91c16b0f90127e1887b340e3d2c25150a1f22fcc2953fdcaa12ecee0658401f7a4c2e2e7b6e566e0302047c435bb50067306502300c11757d13bff33da12e60f730a3593309dd9ee010a0f0daed04d2b60af4217f2ecf13c0e0487ad236c5aa60c33ecdaa023100ea9c6cd0649eb725cc4a46ebef393bcc506478dc8199c49cca7ef729ac729bceb1721799c7bff8d4835a1b1ab65c33a10302047c435bb500663064022f311ffa055b9d658d75a61c8db22cabe24e6919a54657cf84e0cd1b8a86a7f12c780d13f0a92273eef9e9fefe82cf23023100a98c6a6458922e88339dad1739e3336e26bb303bd938e06af48cac2c6ffa774b50ba2af5948b46cad238b90657b1a3740302047c435bb5006730650230136d5713661f86147a57d28df6369a7ffff2025c59ef9ba170f0cfdbd894a94f5345a7540a212d9e415944296a92ed27023100b91523879bd031b0449b53860e7bdc3e175cae023c62d0e6418f9e62df98bc71a50e58ca0b152cc24b632d0b34c32a1d0302047c435bb500673065023100a558d8ad592c6feb9108b393e22a593e613ff1e2715726a7a85bc5856129f8751f0202b8a419cc645f4ef150b05e81d50230048e4a5a90f6d08edf1e987e09714b6eabf6269ee87737b86537024d6e830df452c0e52e3817829b5298776f2c089eba0302047c435bb500673065023049e9234271d6ddb6069d3fb317db5aeb22b64114bed3e0d01f83e975488568ac36754a2a1b8036077954b87b025b5e1c023100b0f4b136fd28ad1ec613194464cbf31c943b3fa17b257e2fb0c0c8da555fdff71ec0db8ca3a5e43332df448432db2fcb0302047c435bb500683066023100b47e062bc2355e9009a64dd77153671601dd032cc9c58090f868aa8d0c6184979f064565136677e3a3129bc4d24ae2de023100c89e982e984218340dd636dd94fff02b56203ba445d1c3eb2389a06937c91cb1070af86d6b77150cb91b108a3ac4e8d50302047c435bb500683066023100eaaf7981e81401a4a83b5258f72bbbcc427bc5cad81a09f8d3ad7d4a047f401858f6f01c46d94fbd3b5b704d0bbe605b0231008cbf0f2cf8095ec611b2dab3fe964efab2ad37ce6c7120995d84ff4e1d824d76de2686d1754fd531d0a286f20392f6d90302047c435bb5006630640230775a2521abd8486c079958e38de296d2a727ee0f1d49871992627935865b6d516384052d9e136411767c496c30be57d9023022d56ba1d96e536e421d3beee564d44e4fb6500271050237177df06bcf82fda88812ce285d9d9e1cf525f8061cb8abc70302047c435bb50066306402307cf66290496f9a0dc21519830c57a71d0fc7e24d82eb9ca563588d9f8d4c23f40561949eed221cd1cde058296b3ba56802304f3a8af0ed8b93be6f7cc62dc5e393c6c4bda042427d043a498be73b27f6652604f92ac130b2892b86d74f0daefa6a590302047c435bb500683066023100d107448c6b9b0e39120adb50d2a51f4475758ebc7e229d514b7758d4d25898acc2cd155bf9c89d841ba7afa6a3bc2d470231008f561b9593644a837bc1defcf8da74a6eacdda60de7376fce0910c8d239bd86c9f1d750d7db6e0bfede46efca530ec3e0302047c435bb50067306502301f2409dd4b05739b5d948367f97d54e615e2e57e25ea888d6fd15caa301ecaa6c0cec1152219ba6a745f9e4cff62571402310088c438d8c8fb74709625512c22c5437a12997ab63ec147d1e638519e1116f7b853458a61eb5f1f96ee53b0b63f54cd560302047c435bb50068306602310093c0505b9246bce36288e547cb5096dc6a8358d920cdb0d0986652ef67bb40aee9a8667dd154e9ff799b2ba0cc8df855023100c48d787f01fe7eda6b4e4d96870e584ced9cbebd14c2d25254aea120b20f55bbe652647db5c4911ed8f38c6ead43e0260302047c435bb50066306402300491096866bafd0186d8955fc57267c7e47f38bf346c38ae2a974643d3486fca818c426d199adf67a4ec572be742458302305295b93823e840f98c12ef7e5666f99d69b31ef92412509efef4339d21c23e1a47cd2523f5f7b0b8214eb961be8278580302047c435bb500683066023100c7e88c074611fc1705692c2299a5aa2f8674cb5baea898429a7492530e4a10cb5468197ba01f103ca35f95c9e5e5b76b023100a2c521496bc82aff5241fc855d7638321631910f5409385f672f1d84e00076c509976e6d3df23b8268945d29381033640302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230210a2dfbd9c5044b6f83995bb95018f047a6266325be6fbc42cb91b031419a516eb9bf5bcbb15b339be35d3fd3c92b100231009239692489b9278606313cddca30a1b0a3efbb3a2e61a37f4980ec446952412f483d4d9a5de04598da6596eab7576c2f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cbe87630ed415a6df0c84c09dc92025105b96f75952559960adaad2b6d8829626191866bb2bfc98b5c8d2873cc9a51eb023100fcb9ead435e53fde22f06a117950f439d709eadde913d2a3aad0ffe6d19a9931c6f7cc4b395fa63d725e9bb1a057a6040302047c435bb500683066023100fe60dfbd4ce1451e6d5fb2fa2eb35240b5895ef6b98a8f8d48e95bfc6ee3071bee65f3c345f3b9cdd224277172e686c3023100fac012cf8e15180ce05f416c49ed9746a7c12e7f508100cc32e8ccdda8f6e236ba7bbefd6fadd5ebf25a152fe3bf36e10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100bd35613924d7cccc147f12654700aed65c2fcc474eef9e5d6e28b68a446457d946d16c91f79c2bc50e592975fe774f55023100e9348ea2f196556a2193f128d78e4d22b5ec45b8d22f4b2fc25e03073705889ef8a3575a2f8ba7095450c0299d2b51de0302047c435bb5006630640230164ea23951d512ad4519193c4900a1e339bb4e89b4b9cc9a1b5b713e1f069875b711283cb0b9bb8b01f8a67a0504ead8023028faeb335baa2304d911677101b4fe57209a02711dfe28afe6ef9092abdfaf9c6311102a378ce586bb7d5ebea526d03d0302047c435bb5006730650230250c9e005099921b55e8dc8172c92fd78e1e7288b68cefd67cdc0a4dfeedba8bbb924619869c319553cbca06fc7fc24a023100db13ffd86c3086a956f2d1d42b4045decb5f3f5b140ffc314bff142472aa392012d3269ba97c3147619b00d1f6d872330302047c435bb50066306402304a06dd4062f49327dd46f7d1d2fe145676ca52fedbeddc424ab27f51d76d941baf0cf15bbaa1af11f68fc6daeb78a1d402300568e1a46cc4cfecdd8b457597b47e74655ccbf57a9a909e85eb83e719058b809df5b45be264e41f5fce2690de8eac7a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303dd71894a2a7703072f015eabef0362c34a060f49ae605246575dd049d712d6f1b6bd9cd8dac73907ffaa79e734079b302307c1231242302c72d71ec22194e19f4cf20134b6c263c0b6d324d77db6e14fe1a40d6af8933e8a7f121ebf7c1dc160a530302047c435bb5006730650230692123f79b9ce394c0022098fe57f5c1365514f49ede8ef18a18ed6aa2e4a0f8a2c44ccdbb451fb98dab9a2e027980b3023100da35276737983f07bf5964539e6cf49727ffde116b153595adc9ecedcef35c9f7152a1a359ec01f92146b0479509769a0302047c435bb500673065023100b3c1752fddd69f6821b20efd4222483085847e1d99261f6ab6f35ce9234ab64639b28e65c6b2101cb671870421d8e17902303f34586f15dd725f914b81286a6faab64005b2c6f78ea384cc5f3979dc72e8c4f653f4b7d54b2d120a460f6b56653d4f0302047c435bb500663064023051f99bdfb198299f1cd109c290b51ed775402affd33134ee0b3892a386a8be22311e2e722fc1b8c825d3f5e9106bd81902307e477d8cc4102d34c2544d1e3cd00db9d31b5e9eb84294268fea785d6a7775bc1b94a9941f7f69c0a7d02550d769f3180302047c435bb5006730650231008384caacd165acb19efc0d6999286537935f625a6f0a0f21610ca24773290fbc3ddae1305c7cf0b69e4d5dfcda5405a00230184e526728099af8f36d8f23dfc9d19daadaaa29d1aad1a6f01c88c0fa3079d8b0717b22481a9f5add5f88f5e630e2890302047c435bb5006730650230649ec861de04c46bad211bb6f3fbbc7e3bd122e3f4810db78df78f25929cdcf95c13bf96c921a748a8ae9fce2cc2dda80231008fb0183a8dca719630486b12b8b46e5b47768b7752ca35111d8cbbc3d35202ed57e17f4101ad6a5a3ac64f24f0a28f470302047c435bb500683066023100bb6e770151e4d3cdb8dbdf78170b1419bffefea3fc5d7d8a1e0123087e6999f9b28b4424b83bef9499bc83202892d9200231009eb0addbd6a8e801991263edf0899bc0077b10f7d5c31686c812d5dbfef4ffd76629664ced24c8b6f130388375be0a610302047c435bb500673065023100aa3e241c718edb69f7ac08ad13af400f83d9f70f088c304598af3a7c3556a4426bc12703830aac42719599a6c1357efb023064d463c616abc3340f7813e21a2aeac41e65d432069d446927dd088fb7de73eeba25c2cdabc8e7ac30d484aa0586955a0302047c435bb500673065023075e5b9d01158374fd1250ab4f906802430137880102e5a9bebda7ad46a55424036ce023024e33cfff043c37b04ad2211023100ec3a654dfaee2425e388195ab7a5fc33656f69f18e2bb50d029a13575e2abd24e5f708972190767179b64266141099450302047c435bb50067306502302137ff7958795e80327974a3e0a4f8047b05bc6bc6e207ce0e0e23f27033bfad155ef7f7792964698275dede319267df023100b6f9d98f624cb29f422cda723645c4a1923a8d4f22ea913f673335c13628a64a4ae62acba6b89e6dfe6d6ff24f41dd710302047c435bb500673065023100c4ee397a896a884a08b330e60c9a605be08aca4ac936e064def601a448d8b48660137d82b1ad8f241de68f27b115d788023046b4c6eab9ea90b958758ed391f1b538fb19fdc94dfb24af7a101c293348b276ea9b3dd43212f89f7e82f6faf90c93450302047c435bb5006730650230333dd768b8a3bed8cb186b3f32b7e65abc2f2e2384953703965d0d26ee35285e36477a1b7e9f98e5294381356b0e899f023100e6bfef8b907b9dbc5d58dfe602790867a29b2f99e0f7a868bcc2202f35d8c8a5a149addcacba6b6d1585cdb2c6f6a8c00302047c435bb50067306502305a04d2fd72fc4da94f08884690183f4997c0c8c3f28f1490c5a732166127235b49ff0996fda5b070a89e94a535212aa702310091d2bd9594a9cf13ea611a9ff97e14b28ef4b1d22e84aacac13864d135ea807aef6e5ce1754de08e1d358cd7e1f480e40302047c435bb500673065023100ea99b1f75c6ba1321048bb330b1de2a3a5a3989ce85bb24db7a7c4c21f503172154a095d045580fc485519de30965f730230364a9ad5eb96d103b41f4588ba45229bb9835867bfaecbc0381e7d0b81744c89a15f75c7cf587a5ac942c1a03fef894b0302047c435bb50066306402303613f8c5f23d0c62f1e737f49206c117e09ab850ca94077549c984f4bc205d9db14c85bed3881d163b746db0bbadb2c6023072409801a02225382e05f2e94d401358031152ec8cfc23debcf2f715121e099d813f28e959a3e656930bb766ca050c740302047c435bb50067306502307e0cd76bbe9e6cb85e4e33b85dee01a53f0e108e0c4165cef2753fd4ee84476f121387e3d3ac8221773d82e0a8026d77023100bda4201da68232d5d0396d9f9388c0ff5e554a358fb5f542102d93d0ee66829f919de648bd14ec8b4375e8d90daa66e20302047c435bb50067306502305213f55048459c8d29edd9a8ed5724f7162ecf04dbe7daf59a1855be91ae37be1c7e2dec4d7c01bbbaacec8d04404d39023100e7eb001ad85ab3eb5fb6a9f6f3c1e559ad0e051da702e43f2518bb4d1fef67338a0b34937509ce554d32d8eff87a45e70302047c435bb500663064023008b764ba8b864ed90532a8a9b3b106155c77fe6d08172f0b70928c0ab450ed7270041453634313ba6a0c6374c5105876023041a420918d70ea49b90194c47073262786ebb120e81f2a00f79496493410051810e549220dbc528def42f7c6531dc5980302047c435bb5006730650231008b23a1c2fdae63a756884142e792a348c59bf506ed35380b2b1aedf02eb7621416a7280c514673b93a6714037340c701023025789f12de60e8cae3425ee9a8e44e88e2e47ebd806f54cbd1e6ebc87d7ac9eab87e78ae90a2324d8dd44743ac31b1d90302047c435bb500673065023100d22e3102c2075a9bcf692010ef638efb34a13a7f057156a8c92f3fa3346f62795ef0675ac6f280541e8caacd83e5f7e402300981f751765f2c83f4343ffa03d2130603b3481af23ceac99d43d6e4e945f3c63e228c9cb6a1f60c77d7491218aaf2c20302047c435bb50066306402306edd7c449039321f0ad6f02db2d6aea7b0e2c5dd1237679411180ab57e5a9b6a02874ef2af4328898ac99d012dd6fc0f02300283aebc9b2388056d5109075a50e28c7d879719fb9fa03b6c44211bb806a51aff2d09f0002f0d11ed2df12a86f7333c0302047c435bb50066306402302756052efa035f5f396e1f582f4d3b992070232042a937039465432137368e3a4c5fff4dbf6e20b6e8fdc1784cb88a170230352933979ce0eef55702de10640345b8403a392809ba38e1dbdffa75b855fbdc200e71cade95a5437ee77293578d30600302047c435bb5006730650231008772e96dea226b52c09fcd8d7dc59e7e12252d81a9f8f33cf8e2f9c987912b7b9d655383f64634a73a7011e3314e9c480230494584406dc0e3d40f5447f8e2c0478c3f1417d953fdac78f003aa7cf4bed634eb30bcacd6af445c963fedabf4ab35510302047c435bb500673065023100eb1827b9b758b9d8502c20570f16bccf8992cf358f5ccaf4a92bc48b120d8f49b4db3309964fe8641239636941409513023017f7a92538d6e67dd3891a62b4c40ee8dd2f392428ece57553530ff4815e25d7089e3ca35906e166c8dfa55c9ac6904b0302047c435bb500673065023013bad8c333e32d8a2416a5d6fde46ad11198995192f17506650ccf2833de28f24a084167695528f9f55fe78457d10488023100bf7f2fe1c222108e2b6b64a175ec350cb2b47887d526bd37e4406c13d0f1edd39b7378345744e4c898973eae3d92283f0302047c435bb50067306502310098ffb664c2ae6aa0d7e7709bc57460d4c616abe68f9285fe2b79c47651f977b576a7dab76da4a00074922bbd5e9d5ed902303c7d7526a54f507ddad1694404583b3bf0f8019490fb6c9d2fb3aba89d382a3e31334fa45e712c7b73f9110b5b2f42450302047c435bb500673065023010527cbe1c9345fadd56a2c973da81380d46c8e959724940f795afbb7d4516beb1e75070ea7009dce3681d5e8d42329e023100c6d63e72f17d4c1a40ee59e7491ce9e9a55a1bdb7fa9d7b5beeddd691c392e3c73b4fedb69f877a42de17c662cf6e3e90302047c435bb5006630640230757fc70ddfb8c08bbd655174c02e1c36a14a08289f0f8f84d18697e0e65845b339574664b65e7d374406477eed44018502301c46ee3b17d58e479b0c6d405b97752119f1f24deb3352f658004de7199b328caa8dd669d47f5debfb39ad619dc7b9dc0302047c435bb500683066023100f844f24e4537422b6a7f7ec9dbbd6358bbe29e659da3569f82d2d9c9e79cb15995aa2a6fd0555dcb118db1fd02fb1349023100c5329bdcd6723a966ca0e0950331f691a73d9af6cbb4d0eebe9fb2e79a1ef9f5393fd57926d3f366e88da171b0dbc35d0302047c435bb500683066023100f1b23daa3235546044a8499ee91af8b60f2179b61d8ad05cd841285b2020b978c6ca622a96a5960ffefe890dd1b1dfc502310093ea7a10c51051c591bd2b16b31adaf4c3a4ebc93d93795d5b246fb7af08aa0a2f1362308305b024ef12d7a18adb2a600302047c435bb5006730650230476c3ced7bb3e4bd7944fb932de0221d744ce9959fe2b7eb08c7c81b63671d84329c3caf03e7571b3cc40ec54d7a75ca023100ae49860b68d863472f95b093bafb45017b70b4d752ed70ca4c3213bca11df3e3a28e81c41106897a7cba482b347dd2ae0302047c435bb5006630640230758c385f5735dcc6d6e1b65f09e34cbfd2b687eec5883d7f7d8da6e9c34b9115c0856cf146a38de0a0a6a56dd500c0440230467d08a9c56b6eacc4449ba48ca405c330589db9b82e26f52324532b4fed47234936a159b9c486566cade8ba732437500302047c435bb50066306402306624db352967776a36bae385d20fb51468edf21b5ae14db942267c3d2a44dbd803a6cefb8165c0ababfffeda6094d17e023066d2d10d837d4535a84a39f6e2641eca12d99da63d53605b1da1a99bb28b42b28b2c3424c7e2c0422839e1aed7dc424a0302047c435bb5006830660231008cc1192214952525d214ba80e0449633aa8d830411114d5b3f1b5ca3e98f17860eee308c3f2c4ce83b6dbdb28ba7c9ed023100a169bc68747ec74505a06a0dcad8ec6f57f3195cecd9d95169d723b4c01f135099e0af36677bef8aa7a3b47bb4205e040302047c435bb50067306502306378a253baf83f5a8e98541551940405f476367765ab347546f429d0ffe11ac8455a23c2d01e6c930d9bea92d41ffe350231009b0f48d9b74f0b849f28e10327f3e2a9d17e1496957837fa2c7e3a721c761d2af0d8a8cf759b0d50012d57cb0f58a60f0302047c435bb50066306402302424f8a72356a5b268bdea86b4f7a5ab21384cd9e11c7ecf4f73cfc3dafee17921afdf75928013d4b8c8b6398a2d72a60230076ce6775660060492070c8c1b7451502b0cdaa9f3e774d90fab6ee6722cdd06ec62b5ef88eb058650933a0476a274f80302047c435bb5006730650230129aae948ee4f5cf6dcecc03266c47e24d9bbd1dbfee194915391ef21035ed8c0ddf559a7165844f989f83541b81f38e023100b101cd4fc9495cc38ab5ee565896f72b0619aa839425ccb52feff3e5b9b0f62f40354c8745c1d50c98fe278749e9eea60302047c435bb500673065023031339d50fe187508f5e2ee77b62cdd4c5d079e13bf47088b26009cd8a444bbb9a4145c6f47b6736fcbffbd48466c030c023100ca5563b56675e198c3a4868060e28645b566d64d07a46c48f2cc5a21f4e1f886029b64e2c98a429363ddd899364ef5c80302047c435bb500673065023043a6d79158cea3a512b4873bbf1da62e80df50e8b912a8643429face9baa8340b5e17232b1143aadbfd7061c7d533141023100940a6bb5c10aeb7e0e674410e4b739747040d983538eb3ae58ea4f7467c67ef1dc2ff46d9c418aa7ed14780d13768f7b0302047c435bb50066306402307eecbb67044dba8600cf012821c6692cb2b5c4c3b8ac5a0a0cb92a63535ab8f96a56011ed2da39b9321efd6d3431eae00230505faf54f39162e7774975d44a4d67b9510f5c61660fb7fb4ba14f672d65d502b5c01c6199f45bb7f529455d33a591eb0302047c435bb500673065023044ef80651762a6cb879fab4f16ad6bfa8cd67224460c08598ba70a2f06b0c8125ba2c6788c525529c1e6f53614d108cf023100cfbcb4ae630eba36400efe95a265d397b3656a1c6a4606fe98be31fbbe466a3f3cac9952657ba84e9380f052737a49840302047c435bb50066306402307142c32a405b06ebf2f22405df9c23541f04e590322b5899e2919e304f81d92a58dafd45f8bd8de7cb5837d9a835e51c02307de094edee38267d2b4b45646ec1e78042ee375a830267773c6dd5e0295796ef2335aa502f79c0079bc6695b5be652a80302047c435bb50066306402307642b5e9fb79925dbc02a9034a92e883fb8c7759f480176c713bf6d586e9fdd95c584cb77c1777e8590bd338ca3f6a4e02303b6a5a277d0181fe46a617eff7496b083ce76edf8e89830425b3c134775ae6ac393587ce382ce92a757062e6b5fd1abe0302047c435bb500683066023100cff2aede2af6006b3921deaccf17dff1967cb1d7bf75ea31a6f323218975199c7290292b6963994672231b22d0de2140023100df2271b5c0d78c18f67d9a1ed1d8a087b6af9a735debcaf25896719f94a9d110349907279d442ef2b1197bb0e31b83730302047c435bb500663064023034df313f3f9a1b1c0ff78f19c1d266ef1081d98e1b63e923fe4f10f34afc76bfce1c78e2a3af79ee1710504ad8524aed023007cb3113bf39959684963aceb1884d14d4eb0053f0828853feb97c4cdf3e8f820a6fc73aca9ae817db3af3e323931c680302047c435bb50066306402306e1c1aa012772ba6152694808783867bf1cee88bc9f9f1bd980e65a4e3cfe88d20ae8bae888016e5b5f50aea37b33d5702301c9a7b7a1125aeb61f4aaa6aecd1a63fd2c288402da105c63842a5f22784b1d9efe4c0a6a9351b6604dd884d3114031b0302047c435bb500673065023033a2e15303227a2ba52ae10ad42590967973f7ccf61e49d5844dd8ba1fecf2f7f89ef8967fe5d9f56be1f7323a3b13d0023100fbaa960fc3861db300c65fc0d673d62c42f546ecb71e04399dc58fb2ba6c73c9171405db22b4fabad6939227f9689ee80302047c435bb500683066023100bdbbca978a7f3e2d88bb40e13f8af289598b238b0a4c7d0020d938bc1ecd02301506c383b34c325525da43cc33c8a793023100bf8d117f248d59861efb236d6ea61765e86ab636fabb0d23f85f6189ba30f847e5c764a55b7cd4d403e67158a12f2f250302047c435bb500673065023051e2c7e1f1b6a6abf76a2c0305f9caaaa22c4eba6f63620f7f06ac73fef609028e4c3a646a6b28032d2fd7b06863b34d023100bf7fd224c2d89277f277b8f5e82c331a7eeffcba1224d088167e459e71708f11c7be16f85ea4f303cdc89b4fbf6902890302047c435bb5006830660231008f4e3c959ec4fdd36bb7386ca1313cdc89612c23c8eb3ccf732ae51a1061842cbf7fe1ba430dabdebafcbdae6fda129f023100c3edafb157a8dd45db55840bc160f1e7db45ae40ca0d6a5fee96db94468182a9a3e149442259d8b871b4f8ce0d8929df0302047c435bb500683066023100cdd2403667c56bbd01cee77cc9327d84dad2e75807dcbc8ef9c61a35c236caf3b2f1eed3a1f2b68c6acc8a6c15c74a2e023100c57452ee5cef39660f40dbfcb2e28399ecb575c474564c0c57f25b7b24f4bb26a84e49ef5f851d0a7d19a618017be7a20302047c435bb500673065023100881b1d18d29e4d7bf7cb94eacce0c340bdc267fcd335d75abdd862f6a92b1edbf0caadb2a13d271872cf330983c991cc023043a2adefd373e8f59998303333a54d25ed3dcf8eca8c3a44861c7194f1a86c5b2ee449969da91ea17e73d38eaac212ff0302047c435bb500673065023100def8851170370b38370e1ca57bb7f81a5ce6656db4bdbe86d0cd98becf7b8d898f7eaa328dd54093c59e407bfdd4cf8b02304e86d7ec51689312bed222026c8683d1d1d568226c544089306fab5b4e087998c8e6fa332ac7679a365c7068257fa4fe0302047c435bb5006730650231009d74146db79e60b49d21378defeb0c9c68e3832c7ad3261ad3523a013eabf0512d186888f4bd3829ef55b233d95e02d202304001b7416a7b81d1a38b173e82b2f1e054672c06c514b2bacc9d43c4e8adc404026d94b6f597633cf6e0e8ee84f545bd0302047c435bb500683066023100d9ea7d9e35304aca537f74846a29ccaed877af89cafe578cae595fdf236f1f1088fd11a2179f1356a2045461baf3a54202310098b948e45dbc702430415d50b5933309f061075b7c12e3b691512c126a09930ff4227be616459c36ad97ee3a671f6de60302047c435bb500683066023100d70bfc1709ba53bbf3e4e4c0a840b7d07ec4634e93f15c6c4004c0cb0e583ca643c4b562566d675352d508377ce2183602310083fd1cccc8d9ca231a3a4142a6902c61162e1452fb8379eb1b018ec60166ca8119c97f1c1555105f4678dded4330b8950302047c435bb50066306402301156ff2a0ba104b519158c0dd8737fb471ecbef08b79e6f177c93aea4581aeaee9c6c8cd514651803df8367e973d25b802307116766930fbbec7a5e630d45544af946fed8cc0f88732823f5f6291b1b797ad9406dad51bcaa660e62fc8f71404329b0302047c435bb5006630640230408d99113a06577d6dc201abf522c7be755e80f65f98b4e95af92111383e87de230885e64de178724744c54f200fc1b302303d4939d960adc40c085d7529f39b7c64360ea120e6cd64fb6f233765edd4da8fc6e1badf53c1c20afc284c1a836b368a0302047c435bb500673065023100c8bfba609cb229ffa2e19be4f149bce43a90b6762f02cf459627ca447303521fc2592c8b86d2d66cbe5b6dd519d6359f02303d005b147ea7b668285ef8eff1032c3f63ac5f0e7b449f7daba2522c1a87269e013083acf7afad5a4779ecd3302047710302047c435bb500683066023100ed519a33bafc97e27f3d73bf1d0cd7de626f42767d95c5da08e89f2bc3245c0cc2bd855689180486edcb8db49cc5c5d2023100a186ad8e1b94b5311692e8d6fb5a70146f947d15813169c5ace7245cc2ff3d7f569f7256feffae70d41c521e168293e00302047c435bb5006730650230348fb66e03bda7275340469cd5f67fe4372635819ccdb46e3b11eab8ef2c35c58c86da645f9881a1fd3850d74b402c88023100ce4ffcd635438f819e5846fc4e40337ffffb18875d29ecbe85c4ccbb51bf68ba518eb91a64b73ec8d42326f01a3381130302047c435bb500683066023100941cac00edae42125ff76fe9a07efb43aa13e81ce904f6ceb890c45ed3bb4e178e3466e725213b55fa0e1980d4b1d568023100e9d58c93b93786ffc51e49950ae6a40d69a517e406e30c007a39719c94cddad6b44f04ee455cb21b6395e874942a1fdd0302047c435bb500673065023100f6dbf75f2a3b3b3e49f3cda97758b4aabc72bfb4754d40943b197b822d54557a6fd5a614e2bb4204a48d1f2075e38b00023030e46aa73e882c4b2fd513aa913e840816d4d932da7115dc76724cc22b72ae92711d9576eeb761d36d3f131e595d4af00302047c435bb500673065023100b21925363ef6d35ef7b9557bedcc1f279bd3f2212b5ccc640c94b089197ae280edcf76efccf170a1c97f199a1ef5384c02306ea4abdf3dd826587c6c6e76f363ccd42678f6c737113c4621bbe89313a95da4396e9c77cf7adc0fa3c78df615ebffaa0302047c435bb5006730650230026a008629ac88997d12122d6721fcc962d892098b683c5a7eaeb5d835b78212fd2a1527d09bd8b9a29cd2769b56702902310094ea400e88ee89a158e6e0e88d3b8e339b1526153d099d28f1350762661f4a41f05401afe8ba0deb373202d8c01cd5eb0302047c435bb50067306502301a1310e7078a7d27c10fb473cd5baa7d592c1257e491b7c96fe824c3b44305466761acb406fa820cceb52c3485f07c0a023100af24a9dd0dc94fff5c6776074225ed350047e45cc42927e2530756a68ba4f0cb7724840ef1932222277d7da051d6ac8e0302047c435bb500663064023058a8199fb8a6104fa7bab849cb1e5ce64164ebec83d4e6dd02ffff5a9fc1c48a422e343bc00dbe63365ffbc1cba15890023007ef6db7c70a4ee997bfe466b7e061c8f91fa2e3966cd10a68c025a81204449c52342f0b0fa9e0259535f53d94546c8e0302047c435bb500673065023100b6c0b05f22b9cae013316464f9a02f26d423bef058993942e8b1bf048edb8715dc0dcfa6ef449cddb7e092b2dc43c7850230791b8ee04c04bd5c47b85e123e714fc2eaa22a7118f539c09e12b31aa12eb8a39d60584c19ff37c738d568894e53f79d0302047c435bb500673065023100cf80e1914145c01bcd8220b7d3dcba968a9f62139991a1d6bf3b043e7a84d4a8f4058a81fffc82c5d72cee681062575202304e8964a740a96940afd2f3aa76a3e48a067c0d91440610f2f715b5dbd66b6217c67d6b685f6118f4aa9b31d960d4f3b70302047c435bb500683066023100bcaa57a3ee6b645e2c864766964f2f75625998267a2e51d13805c51dd290b94a6da698ddaae7d0bd54402d746f3801d5023100fbcc416789fef0fe388b637664ca5152f6635675bcbde83a5369d2a09df749133de096f081ff82104874738484d141300302047c435bb50066306402305c5fd3909a0118c37d6f96ca1639e61cf01ae1952f42297c9c2cd7ea3396adb893c39c0e2d6daa7c97f131c88d45c57b02305b3acde4cd11b2083b498186b3b7520d4d7507b5e90ffff3880a15ae97ecde372d09582da326eb328f7afac9a712fab80302047c435bb500683066023100a6f891ac6b3f17746f542858b2d258527b24a1958369b9e2769c79f5c260cf8dd246c6838db4867181ab41ee4deb3c0b023100c8aaab8c4a3485ebfae4d52c1014a2f5b4f67b6f90e49b08c5e3d061088ad598e3abb665f487bb7d2fe80e4230d70bee0302047c435bb500683066023100acf1b1bf14eb413ac21f99fb7c459ab387e2b407e1f5896b5488b522458ab0e71a7f1df03249e1c76b8fdb35e3c1fd41023100db35b433743db346c13f951741e9c35f5f4632dccd110b54c0ad35831a6b19d34e445691cb5f0268be39e252bb19ef3b0302047c435bb500673065023040e55033a0e16e525c648d46ae88fa94b249696ad7256fa2612b91a7dbf509751f34d60201b488d62ecc3f955194228502310093723ed0263795df6e1c50cfc4122144ce0ddb2583b3a48e4c3ba0938f4dc22cbdf14d42a11181c7900c742ac89d6a810302047c435bb500673065023008cb32a474388ddedac249be4f971a126a741a6fe0c1273be757f4d3ea63b4f415e2cb912e766780b7a26db1cde6a301023100d15b92050f020d7e4541a6e5cb946e0eb491fe4f71b8d15df0af0fdc6ae30fe4bbf614f741967632add27fbe490ade530302047c435bb500683066023100a2d555a447d3cdbb8de6db4b607371379fbc566ee447dacbe1d9b03a9e758ad74e8c5febd754939b2d1bfc68b159efd9023100e4cdd3518279230636982a39fe85f6e7751045717ff39512a6e111397c24e4e0f03ff44ca9ac4da2468cc4bc698469ef0302047c435bb500683066023100f1f12a9eb64550a6c5bab880be35437ffc50263734eecb89238cc5f893b4e921838cff76dfdbf43125de79c7e56ff594023100da1afcd82f6ddd82c688b661b993229a7a77cb1d0547ee3ada5e8a10ad631e8b13412c1e84f814e3c2a240c732d154480302047c435bb500673065023100caea28ddab8b408c979d29a925a46e6394b13b066b9f37b8787ee29c8beb189f1e7b3046ba645e99f876ce0c919cace8023042747e1a5d889e165e37726cf8de8fdedf0bcb967d9126ec258bbc51ea5673aa1abcf8a7081f40e852355a882d1513010302047c435bb500683066023100fa3ac9f62669246bfd1e3efb5eeefe2916cd1a2dbdeb5958c70c1cc5a3a37220921f4199039f7f93bfb96decdcd33f9a023100e9cb144f7059fe91295bc5a93f0951fa41a138c5261649b90675fef9dae8466963e2a3fa68f22d54df585996070008080302047c435bb500673065023100a14e7c49703523d818c07fa8b38cbf57a984567ccaa456ee2a53c2f4f06af2d6634ce76391a6b1e6eb1d620818ad55cd02307ac53a118ac207156027bba516fb82ad033fa07a5c6a83651f4e177d2b0f264a537f1724f15135e4cd5960e878b5cda30302047c435bb500673065023100cda8d57e15ff66e4b2d9dcf6af9c2a3b583fe7b0f15ba0965b72ac214d4accced7ede31e8ad1d6562309db223867c9b602305dd819d80b52bd75fcc6c7db34db7117e60f00f51d506bf67fa8f5d7384b25570f4b4617c96c1f029407ebcdaf1656c10302047c435bb50067306502305b19b6b39312ed5a4161870d7e074190adf2d60c376fc381b4180b35d6be58a315137e3a0696955258e69e8c192bc1cc023100f872f8ce2bbb11cb4e6e28d705036cabe065536ad6f4be3e65a4f05dc110a3fd699f73b985351769ca2dda10d83399290302047c435bb500683066023100dbde95a26a23e448cd715f778d49d2abfdbd4a7a1af4b12f3c7761367f11f6eccef41a2b8f986a0419802628fbde2c3002310080de654eb7d229ce1c7ed6a1de35bfca738b04e61cc36a3376f0996c76212e700eb2a7e6f0b04350f930c9013c0f1b280302047c435bb500673065023100f74dd7c56670303d940540db7e5ce1bdd3d169eb81c7003fb253cf8eb4979119ba76493f8eb542254a29d20431b30c26023060c77ed87a1cee7c3804bb406fc0f149ea8a1233a396d03ef1258013fb0e6dad3caf0e60d6b378b95539cd5f1480a1f90302047c435bb50066306402303d7845cd0cc8051bdaeeaddbc77cc4b37e7a98cba3c7ed3f9bf75922016eeda4d0c10a1ed7bca681a240b4b559ea396802301cdbb5d9b0a29c9fa235652327fe078ee0614699950bd91654506731434b9c8bca73f8b372b4e59323cc2abaf4c27f4b0302047c435bb500683066023100b32c158c91800c6071ffafdac65ca07a3a94e17cc1d3308f9862bb4dad0bf1d3a109fa9eeb5c930a2a1174db6a79a932023100f82e481701bd8a4510f2382dede880daea640a363acc41de4c17622b68d53c8661ac8238654f9564478380094bd5650b0302047c435bb500673065023100c0ef3e75d2be318cd96304391f8f07d8a92853c7fdfb34cfd3bc73e934b578a7ebb87f32bf230ae9156cad7944f6b28602305e544d6dedc54ee037799e188a0a09996a20af1cb4ee622a7dd5aa7ef475d6e9c04c490da03f7390358d0302e3b3456b0302047c435bb50066306402306699cb3c26533a323e8c88c62992b1f95eca467254f3a6062fc74980024afab6fc3a91059c80a55bdaf560b6b2539b91023044ff5d7f72bc67e7e8e3abcd703532500a2944d62a7f4349b06d38084c3612e18948b3e877793746470b45102fd23f510302047c435bb500663064023012df073f86ba72e2acef5f48f4d492fe9bd479c63a02f3a81e37239dbfb7c566ed24b87a1f3030dcaa9399f4576cbb6802303a24b96f1fa363fc282052c73ca8c6cc6f1f9a144100b9ecb3cb3464ff5c08cd098baf4505a7659a25f9c68ba327e1a40302047c435bb5006730650230379827cc908cf4f0479398d5b74b352737f13dd47684739f5f79117e5a62b8c4b2699a00664df3a263e4a9d13c837aaa023100b4028f2927e2e901e710027c0dde3e62bedc08a1b9f32300372845eb6424a56ba3b1d22488984cda16402b0d4aa739ca0302047c435bb500673065023100ef6ac30ce7f9e76abdb044ccc6924c468870d29d3e3e69b75c7f1e8262c1f53821250246995cb40261d080d6a66eec2b023042d64fe32dee8fa4289a4159596f4aa4eb506791e1e3e108c772fbb7f7e0d06e120beda4bf28b8918b1997f94233cb450302047c435bb50066306402303a825a02286ed3d48b4e86c61b034d87787001f11b667c95318afe85b06b8d26a9c6e2fc2888e7a9abc88623fccedffd023020b5ca265bbc9f0cc6296d19bee39ebd393ac8da7b7734fcb0b5c4185ac5f28d6e7c067c083c764f326cdc110e249e6e0302047c435bb500683066023100af58e2dfe3c42c2a2d2981698410038d80eb34ce9b249f2a761764a6891d0d5ed0b7e51fbbd2b89efc653697bf29b031023100f81fb7e78c0022a65b73c11a1987a962da42632397379163275697a18fed9a282a0e3d5390cc6dbc09ed0981f2968b790302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023026a9c5b51dd94eab7696b7bba03daa5a37b26d769c991f9e1304d2012d34975729f874a431331662af7b8f395f5a0384023100af1397d93f6feb0a11d83a3cce447a60f02435d4865db8d61467558ba0e1b5073519d131f8b9dfd3a50ebfee10b8704b0302047c435bb500673065023100a158dedcf61cb0112009794627f1467a4d6e5e2794148bbd6e1e356061dc29aa47eee239d0a83d14f52d73c71ba635c3023040fc3627a644691cdf0cb93147290d2395d5836079d2a1a7fca586e7667ffe5299d2235f2ed797d6de6097a29c9215920302047c435bb500683066023100f0c7f860291dc0162cacd5b010ff39f37bfe56c432a4d17f6c8392938398d0cd7a7a72429456df4d250cfe2fe2d71ea7023100ab8376ba172bee0af32a5fa31f29791713d5c0bce374ae4015f4adbdc2e4503517b57ed2e91a129a9e807f6e4a1000590302047c435bb5006730650231009c0f86591357a85ee1f86cdf65e5d4b353a80d301fb1fe88422c1deb67f00b1e2c6e50c2158733baac9932b157b0e4c402304453471e697378e040a4e1bf59f6ee6990ac780297a9076d98ba531ccf08474dcdd50d8d1389db4eef47b3aec1d75ecb0302047c435bb500683066023100ba89a7fb792d25fecbb3e5f857325b990bff03bcc65f28a6cd3e39a08f59137bb74a71719d3979d507ee7dc391279e6b023100a16161a593448343f09e575f55d52bdcff97c1551c92a50fa85b49ccb71194793a82c91aa31f48849157e961d3479c760302047c435bb500673065023100b6d4e73ac85192894816c071f665e18163f96a3c3e15d5e413c3408aa0125c9657b576cf8d3a8c7490102c1a6d02ffa90230298a897e09751cee5ec3b7291b14c53a015b2c59999517bffb60ac6ff471a8888f3dbd5ded49e9e93a3fa09ea23919460302047c435bb50066306402302803e3ef72105046935b2fe9e73db00c8392215136231ba91042a15276eee2566375f4379784e942d859fde9c0d9b01302306923255b601494a529728fc8c1d6ea8fb3542d2d01c585d5211f12a7e2e63856db746f7acaf75c4dae520fa9c874a0dc0302047c435bb50066306402302545ef6bd3ff00cdc66baf43007bee16a3f7874e25c3679961d46c716df4e46e667de97ecdcc081ce43822ad11390df8023057822e6f73a3fea7693fe9bf05684e41ead5a05cd29e674538db327a1ff566b44663c04b45e1301fb157d0fe6738fc770302047c435bb50066306402302e1264b4fa6e714f9dd92656f33e9e32bb111ad58c5c2400387045d6f31a7bb11c21da077297447ed4087ca1b047f88c0230062eded3a7a1cfea3bfc5d150244c02ffa6d345b9183502705cda8503940de9a9d9fc10f22dd8c00e0e390f4a756b86b0302047c435bb50066306402305ca2cdb56ee0b4894b4cefb18a479fa36a9e7730c336fe2f9ffb53ad0efc74cc2eedfbd8185b784675448c12ef9285e202305229a74b8307210b18d9eba025706fffccff7fddcdd7b6b23b45104817ff0f7dc7a6086c7d3d89e865d7de6d0c75c4840302047c435bb5006730650230221d2e7f94e6258ee6b6fec55a615b1a097d9a169a3616f45eb71c8eb927356344c8c9e283c5d976e125db5165fd0515023100e1c35bc83991f0a0d24a2072b682e512c0ce1c7f2d079fae9ae8e5cfe14a5bd1fa85db3606ee2ea76b8f8c407639ea3f0302047c435bb5006730650231009b98ac3dc891ac89f494ce616a27254cb84e80cfb7b40d5d47a088471041d22b8b62c3f60dddc8a503399e49b63c6fa1023032ea6d9ef08e21fbd5d80f2ee49605022fa3b3ebd57fe97a3cf4beec20465f1ed64ab16b63b34e76152d645d265df1690302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a1230141d0c78eb7318303ff4e36d99faa48d926a668f059a4cf92bb75a386e7ef8df2d251e576d2357bb5cecb064a0802306cb2527aa6257ffe214758a7204113602ba473848cc5ebe2041ffb27b61427eca21f58a66e05cf1416b0dbe144bd7a5c0302047c435bb5006630640230550495bfe9283b1c83867ec2f827f0878db7429f80980e6c5c20a466e28c0929a6db65ce1867671dc976a5851018175702300ee4138ed1ad7d9f99e1212ad864d47580eedfa81157f88168aa4f19387055cb4bc9f09deea435d365341673b73ba6970302047c435bb5006730650230133fe11bbdf6b5714643fd5fec496fbc4a4b17ad44bb690560920c5eff59aed539b0841b4e18d6ea00b385f1b2d76925023100e3854a5161652121c98bbf51f56304e7dea6ab9f802cd3629c3fb6e1cda3d6f9ca238197300e838e229cedfeab3e1bcc0302047c435bb500683066023100f39b203823b1e3958b9981fa325a12a7fda67c9a6a7a7a09408dc58a9aa77d2bd80e25f394c9715bfdb770f996e6131b023100b86a83a1d93625902f6c3149f39d04847ab4d76675f24274513ef93816c12c10cef789094ef5a7565d1a9430911dc17b0302047c435bb500683066023100f9221b70ac6ca9a656605e17b6d4e8e2483365fe9c47fedabdc24e1fce4a006242920fcf5d62a259b7100aebf983cbd9023100c5f0a9ab4eb2ed5606f257f6707356e1dfba7be6aa03e6b39c5bb7ae690f6c3d58dda1245da7ffb226f90c059b850a310302047c435bb50067306502300108df4e1cc1bcdefbc7f70b7adcb9a4660fb6d52b0f2b1187d69e5b31fc968ef3b183e318848d79914a3f0bafa06852023100dae10ffd89e1bcbc5df154f5fec37f6c4531d8073465dfa21c75261f765be765e521f8dde81157fb2d059bae69d778880302047c435bb50066306402303b7541d1e495e1037ee27f4f6ae315c4d3c492ce86710c320ee6dd3bc497e55eea69af92602480caf3d7d3e5bff1aaa702305a1621680ab54f75c18b7dbcd98b257a7ed765cfd6c03737fc9f04a87a23c892d0377aa8f255232ab917ba4a4cb7b22f0302047c435bb50067306502300c75dfe9a1faa7f9c6fdabcf5c1bc5a2cddf5be51971134b696a484d56bf0a8305955ab922737983ecab8fb259e57914023100fc46db19635583f108be15aaa698d1b0a23b3fe7330a43233e3a5a2dde7a6982462ad4f4b9de3d97cf9d2e7d4844874e0302047c435bb50066306402307509b5580a1cc62184ea259cfd20f2be5371ab76e3613094203c27afd3e8ca6d8dbf4dfd958c57e7f208354bc0303df202307732602782cbe8dc1e5ef48b03ffd066cb74247287b775d681f8a99db54d6fdaf001e9931593255bd184813df24908070302047c435bb500663064023010885412bcb2f2b89d3d71b398e7e77868df58608dda96c2f54ab0d12ac010ed3606cbc01b22b4f076ad3acdfc38007302305eaa6bd3d7853918ac64f23cbbe6d67d35e1176b577e05d7b3d263b8d1e89db7ed19465a070ac92e41b021de840b452b0302047c435bb5006630640230097108b45c7bea866d80005a8fb3b2dc9ea59cdd75a44e413b837d248905540414538bdfcb40769f583f75ff0f7f64c002301a592754260a5456ec57d2943f0c992ee6068274fbfc5ed0d4e380015df87c2455a4fcbc52842d7f6906b6e7fbc864de0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100caa0a5e1ced49fa7990dc7095febafbd5b62f18de0ec5bdca9371a2cfdc99fe5a55f2dfb4c1c505d669ebf0a5d6f8da4023022e830c40129076ae0672d6f2fd9d9bbccb73cbb5ddecee429ebf94ea1d0a76809501324e8cf64b7d8c1c1cd50fa80770302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230775a88b3c489540c7248aabee69843129525b8a6312075f94e5a076cae15c6730121c43f6f72845f74d388a5adfa0c02023100e7076f91405e5cd294ce8a6c46230c067321ef84de238302f407330b60794d62494833ece5c46ef3e2daa37ebdb5d1e20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100acd80c624918c9572727d864d4adabaf59324ed795013babd7bc1870592b38262ee86e242b1be062354f6addb787b59102300eb5fe5f90165ada5163a8b9f964066e27a94130ceba2375a677b81d529f7cbed37edfcbdf1d53327cf3249b812033a60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cc0591514e2f2afb91676afdc3e83e6ab1725b6f5b5c0a46f7c3388c5af77140d5c7158df366cc63a7b8e9cc0cde0f16023100d56db2cabfe38ab5b0ca8789283fd81ef88f1f7148721840f280c4edee812546e2d6434ae9c1700d3f8f9963450b3ac00302047c435bb500673065023046cdea6ce0408fdbc4205139cbae2a0ef2d5106969d4be3edc755ab67113e57459c7f8caba5ed8567c514e199b0ae162023100f851c44b50985223508f3a21319da38de99f83447c754c24369830fabba00b8cc161f5794c942fac14f34ec5179076430302047c435bb500683066023100c166146cdcebecaa54948eb6b12755378dbbe2e7198ac654b48090dd42ef6d1e386ae83ad6241cfb2b9a1ec3efaf6a13023100ae2d4e0349605d4c3203f1112bb063166cd30032a4335f11f6a96a6dc4b51d29b7609bcdf45949a7607db201917e47970302047c435bb500673065023068189bd7d4ed88f42b38fb23a8dcd4eb4b37568eb2baf5af50c35a7cc0ef6e9509d87c3eead30f0db2acb929e24bb0f8023100be12cc3c736e81bd0502cb1985021a02ce55e0a01deba83256075f8286b18047e3028216f6d40716c6fe55d2e42284bb0302047c435bb500673065023100b0e65983412ca29c750ad3676e82b934948c2d5a22e5780fb44930ef809563764cf4ce42c0885d48db010ff2d040859202303a1c90e41f0a1b16d8e741f8369322eed6fcb25c2feb835bec37d4ca51bb26a355881dd621b928421d6b1ca6a9a829b50302047c435bb500683066023100c66e7abc63a779b827ae4d91d61ab9293275e77b527ec35d99f75001c214b90357a1cb76db8559c9062a48c4ad737ebf023100f8f5ecbb282ba663e9b6b856702e7aea71948597db9315bfc9b4f73c210219020013db2e5dc9516156404339bc0b098c0302047c435bb50066306402305120608e715f521db45aee5e52011543adb8f66d88f9f15582fa7264870fd5d63c384d49b86fcaaae2090430541a140f0230112e726582a197efcc85824c0507e72451763a3c86807732ac3f323988618386344230b0a32f016c974cfbf2b2f1a4d60302047c435bb50068306602310086ef331554f05d3c89c1262bd1538b0c32db26dd0a1a56795889758ecfbdbfaefb46ec4f59b6c9c317de922ae3b861cd023100f95176404ab9b0a705a6901c0b3a7fb9cc50c422c5f8bce3b6b1ab9f2f48f81a52c1eb1b56815d86267d4404b2cae84d0302047c435bb500673065023063ce404f7c789eb9d14ac8bb9618a47d2d60bf9e4e6963957ceb8c305b0a379cbefc69216bcbaf3dad0524d0b5428858023100fa5d9dba4ce33e8c617a3fa809591345a81c502cb98b02b200c0e7a203308594cf8aa5bc7b037b5b6408857ed035a2a80302047c435bb50067306502310093902157d0ca9524df30fc1a7ad2da3f41b4891b2f9f7c9ad43032dcff4a58e62fbba1705cceafabea5182e5a5082b2502303951ec6a1ae92262bd1824e8ff8adf82fcc50b3b4d718d25da6243bceda11ed3d4853e3567efb8801b2336f0143d929e0302047c435bb500683066023100aa3a199d44e53348261e5e32b052e104cd23796229617ace2600e4383d93c56224b3f944caee65d578551f9f1fdad213023100fd00ba7fd9dbf869069ae0a970cbba082c0dbba9195d1d924f32ec4ed64fdecccd1180a4fb4b25c64fa1b67e85e8abbc0302047c435bb50066306402304481c21b52ba818cfa4c11f76755387034cecafc060affd6a8c81e21620f5a63eaf28a29073b18c42daa56131000b2ad023045fca2f6826b03ecb561df453f2a4f0cf70f2964dda54e0a3f7d49cef065f817ba1e58dd5ce5d50eea7ed52cbadc95590302047c435bb500673065023100cb87a182bcb3b9fa6538d5f3ebade0e4451104b7552da5fb4b99a0bdaaeaec7fceb20d2c4c3620c5081f8309aa173aa3023003d8e044b44975598274d32f71831989861b51c73ab9a69e05faf9bb016a187c4216a830bdbf9dbb60b88ed4df94bb0e0302047c435bb50067306502302344e77a6b2f3e0f437ba09d9c01f2daa57727f11d25eb4e184e95f8e86cc20b5fcabccce3bf4d1ef9cebae39747ef48023100819e603b91128869fd1fdb299a4f5a6cb09b19d0ae755e950f58247eba6d213be8b13bbaaa44689b39d032fefc4755700302047c435bb50067306502306fc7451c65ef755a00d50ca53deff54111b4ba2947c9cd2ab5ec03c12c859dccb8adceb3ee7138df22aa36ab97456893023100ea2ee04c5e09b39d4ac43161cd27b7ee85b60792f8b1dd7bf2dadef45925500b0255328af0f13074b7f3281567656fbc0302047c435bb50066306402302462bcd21215a4cc88348cf298f34b72ef2776a2ecd6c322f7be1420b7885291413dc87b39556cfd235809fca0ccc880023001514983352358757e933c52aef3ca32d6498e4ab1a7cbe555ba3da9590b4a4df6a6ede8a5486d0b50fc7906cdf85dc80302047c435bb500663064023075d35cf4ca74694b15aaf1aac48e0f6966dd347ca9504a55df41f77f547f44c48814ce0a55371755455de40f1e46c91902304cecd12650299b56e4066af977c01c7bdaf17febf86f8fc1c40c0301196469f21af6d46a87b3af2598696039b6517d770302047c435bb500683066023100d17eb06a86b0490906ac554357293d5911ca6090ec628f48ab6863265ca505125583f80323d7540dece4a7a264440d65023100a0d98b5e05004a9917e85bae80e793845435459739e69e44647eb8c722439f3cef4433078465980a9073e71c16bb2c700302047c435bb500673065023100f956fe76533ad5eb15fdfdc8f4431d7db731fd6a14be9cafd085858f18ffe434f66e092184ab1ccd2ce5d10fd5a6b67302306a0e96ab760d769e23a9aa891d6fc9d912ab18cb9ae39e88cbc54703160d1aa00019a5b4e67001ea109cdfabd01f1ffa0302047c435bb5006730650230644ae675df7ff5fde083391ce8eaa2b50d97bb4478fcac53ecba7a3a0ff5e9ca00249c69c440b488421d54d111b09121023100fefb4927d2eee1d3e515c647f6381122eb1ef172c0dd634e8d201c95866ab2db848088de1ef300dd5714c44be44860a70302047c435bb50066306402303d657b5658f4606328dc117acd62d994c96cfe664940e72f0dd49b5066a2c54b81a3af4430b11785c1718f408b3e8ab802305d43951daaf85b0aeb02e7c5b24c9425d11d8afc9a79fe8dd491d74d44ae8ba6694175078d8470ab25d4575483e85bf30302047c435bb500673065023100e4b31af2b8e66ee08aa5107a2efa23b4372a3c5fe3f69079a80ab27d91a1032c1d29deb69d96784cf006617354ecee5f023038c62039ae23730fc23d7c2271664ba55228c98023c0985c182de71267eff050467111c965995f780d65a112c8f14b0d0302047c435bb500673065023100ff9c6b7bf56b3ae7a52c44d9aa18e7cb0543466ac97177ae0f91706da1bb53f70c849c2f7aa27bc1f75676b63a969c40023012194a50fc1a928e2a81210d8d1a2f0d1bee8d209125605892e26578b58daf114a1193a120ca121e544fa2640c3f43020302047c435bb500683066023100bb025075d17ecf8b30aab32601802f545a8ae97d6816fbeab69ad757c4b10269c4d563bf0c78c28f870e05495d49fe96023100f3ea949064217cfcf9921512010f2af1443c82e076924f842a96c7a9e0930c66e2ce31fd0ab8e4c8882a02a90f8c0dc30302047c435bb5006630640230742e549d41b17839cbcd1a221f54b72492ac1bef7dfbd9669bf6a9ec09e61acc988e23fc6067684c87a99b92cb34602f02301cfcbbf0680fc6ab3c85e67141c32a0fadaae2bd1f888dd09ebd7c94357ebea07b7e13fb989b0786eb335f238543f9ec0302047c435bb500663064023025193f9d5849e73b5354fb0e56cc78f5cf8c43c30bac43ad14fb09acb179772e1301bb077fb2915c17b62dc18612ed1802303a8fa697092537267b148df04d598c593447a2f3bcac907a1907f294d3f4781a1749d852b1e8276921a288c7f23e0ab30302047c435bb500673065023100bdb1a11d1e12785c7ad5c94f615a1c22dbc8fbd590848226a86aaaeb40468885f555226f264dc9f52098c996b125c1c802303dcd69afce714dc06e8c72eabd58a4690104591ba4cd4998a012f66e4b3ef88608fcd5cc8ed17348488c794fdd255a510302047c435bb500663064023046aed937971dee84b377f0dc69ee130fe3531339cc3be6fcf446d70901c86b9c0a77862a2b5fe054e13d98ae4b8973cb02305fa605de34611a062701459d2a30d00df1d04e00e7fa1131684a9638a68d53a57309aa3023161f90a1496fa885c0da2b0302047c435bb500673065023100bcbe0ce88e947feb6cd4ce58681503a2d2869df26f13fac393b42e8d0c015841cda007de31aad26e7fbed986f4a7fca902303936a96ba269bd5af977e954ad1c67478a9b7ebb7eed45fbb64dd20f503b1f631d57e7bd53e349ee03b054f7b48aa85c0302047c435bb50066306402304e24703bd0908bff0d5e7684b9b837b7e54de500b9d2f8ed64b501df42efb68ae5e3983ce51487c46482c4e74c52caba023043549ee11181aff35b547f4a3f1a413884120c73bb05550a75fdf4eac9bdce04d9021fe66a6ed1625ccd8056eb2daf230302047c435bb50067306502301d223d896df2f4b422fd76670f732218a8a9bb7f55a601854903dd53da75ab60ac5ff80db64ba66e643a5508c7795a4b0231008c4d35a624d10662549f2742458f4bea516761330f2e656414377284d2d4dfaf33f3bbf11b574548ccfd322a9c21bba80302047c435bb50067306502304378d261e182046a81bf1fdab4d080857f9cb47bdb6262f32e201b74a01e9ab5cc3c87cb8735d64ca6b2802145b013c2023100ab2f2ed3bc087a62aea7b29b2cd435bb907f909e37c11131c981215b2cfc28e93f4d1c236902e51302b361d8b03118630302047c435bb50067306502304694454a23c5051c7b9770319cf168dff69f947e29c29ebcdf244260230d96b26085b8f62b557ca52115a51081ef677c0231008019c91dda26479cba54f1da67a7ff3d81ca6370029a5c4417df505c5a6b6da0bb1c6163934b1781049d7fc7af337d670302047c435bb50066306402303162207271a4ebe1e7156f1a4fc4034832dea0bde0390dc45a2e2b80f7f1b2c9b1efa46fe0a495bbda589c1ea9c6f8070230725d2b371ab710ed5b58737d9ad6f35d10d1f59cbf6e2860bdb5b31ce37416a757f242cac52f06b69cb84ad75f900aec0302047c435bb50066306402300b1a0c6d9503e8079a24bc144f64f83a9e8a54bd6c365f06e2dbf2269909647a8b1926bd3b935b52fb145bf5998ec78802304bf9ab0afe13175efddefd7b8974bdbe749d6a9ef5a2d4faad32f88fcbc9390ecbde66acdadf3c61986b6508e86021bb0302047c435bb500663064023025475a08a9be3f0384e9de33f31632cc75b3350b4057104ae0ba6734d1eda52391bf90f161c0ddae75ddd76497024f10023046626ad9b312d217fa493ff2c93f70eb789d334f899426b105f6059d6b9a6d394d0b6b934ac05191a531d49a00f3d8aa0302047c435bb500683066023100e893f44cc399568a60a25d1688f67ddaa67a47cf3c72686cd122fa9c538db1487a4044bd817a9341c6ddaafa10e9b047023100a02bdc8b9f25faf3f1fa1171e24b41422fd748385abb8920b830d53f5e3518313a34fc5ca426e32f38092af98649f6f40302047c435bb500673065023044a0a100b58673583c61620eb894601ab0b24a37c168d02635a3bc107b349b63c19661e7e65fc0d09957677283c882b1023100935cebd3ace8282463df02a4548d68decd3bfe73e5881aa3d1fa5dea563b6a6b07bbf8b7ca0db7923906c9761945e1ce0302047c435bb50067306502300f1e17be339af0938f1ffacd283bb9e0ea5bd2518705b4a26b28aa9816be5e59433a603fbe8d6728fece07cb5dc15dc9023100edffebffff8fc5400d31821958413738e284a5de9cdddc74603125ffeb9057eacb18f78fb1d1a1a30663c2b0a61089a70302047c435bb50067306502306b04db0538180dd559c0679a58e34dd2f1f57ac2cafa98484ad0f4bc7bea4602a3ad0d2ce5fe85c23c551b32a4a688b4023100c536c227830b92391f3471e366fb9650e006115013608946c8844c3968b2b44ff4c643d12e5b932f7068df437b5500d60302047c435bb500673065023100bdb4762766eb430e7ff244dd28265a7f35e67186843554a9d3bfa9cba5a8bb5e3f8549517115438ced51651c5f2d10bf023008cb75cdcc5f80dc9d7913ee48bb621372d365c7fcb46c3135f2dd2761f472820474de2d1f8bcc5b3f653d5c5f01f9150302047c435bb50067306502307432b40812b5654f6f3597f838defd44983f072dfc0acf42171771379ebf9c5c82ed69919310ad104d78cef43f67459f023100f35e78172e2ae4586c7e8f21d5019dfe47a1ce0df2afb4bd4b21d601686947469fdf1436d988b02e6c4c6f80953fcf050302047c435bb50067306502305a99df662d2c9f40b0957b2c27bc723baf9c059c20350a91f7941dee13a74bc5d51b80d0e5e0eca37e9ecf6f51d532cc023100e5aef795a8bf43749aa4d4a3adedb8b177b30378decfbdb0a84a17317720687272a76d1b4eb93f98dd902f9c9373b5cf0302047c435bb50067306502306fc3dbeca36fd8d7e25dfff222ab4b91f684b7b8fe61a6107829c8854e97f650eb20af5ea2e6ff3e756cadcc7c67820c023100c2cd8aacb38565b4f07e08f61c295bca9bb8460c2604d4016dfceb871d451fc22448f38f4fb6f06f5aeb83024559c7ae0302047c435bb500673065023100c29c6f22bacf75c6e6e9b08647dc3805d2f4560c4903fb62e6d5dbb1d72fd74712458df6bcb291cb7411973cbf410b480230430603a29c4561cfaeb16c81da87bc7f515620638fe9959402ea6378943cefc36d0cff25f7edc48a82533beef6e5f6c10302047c435bb500673065023003a4117e33072b27fef57295862060fc92a9b44aba5df96771595c565233c4d36426b01fd5d9849eae4453ae18e58d0c023100a91f8f96a422422448a0a5e3890760db31c629123d6baede18900c207cbc7d67770426e3e560fa8ecd4d8cd6e61de8490302047c435bb500683066023100ae73c96f20a2d0c6afc2e63ec501bb3466dfda4b6cc0c2cb44442a9ccceaab96132ec72b254a6b6f83fc4b9b9a449039023100c867313162de025004f75103fbd004f358dc1c0e20fe230620df6d9e4692fe08b33796bcb9b50826879ffeecafa3d7150302047c435bb5006630640230135058bd99af2e2148a51af1a3336130e604b254fac0dd720d141d4a2b0a65ebd9a369f7736c9e516b612830f13aa1bc02302e322e7f684444df6f1c52bb23145e493f83891c5d3c54db5ce895ad6b0cfface97a3a0f4c13c289a34891ce8c6de7ee0302047c435bb5006730650231009e44e3c6aae0a4f1acf26e5154e3f3b1c6f4f37a80ea4e7104756ae24816205cb0eb755332d1511a49156637d77b5c5f0230545a8beb3281ff0a459df12f9d71afb74f1bd04ec8fbe050f1d73a7faa5e91dcded89de5224fed57d36bcf3cae2f14420302047c435bb500683066023100d8eff373136e50b3bd37b478a74e3a56b8464fd6b41730e6b357a6f1ec4d0e0f7e708f66b472a0616f6136f98f361e3a023100ca0d83389601cd6b2b8ff02bcf4d0a7f8fbb70ee0a8ec63bdfffb01ba1babdfef6f1df271187969eaebd7f00e40cc3920302047c435bb500673065023100f711f79be20b2cb6e52c557edd4e997767667217c3b33002790a91f01b81c53cd2d7b1115278b94e10fd9a4a25650861023075c9c49c4bf50ecf9a9b32aa5dd4f28b18ebce7bbecd6ad53dbeaf3ee8926fd88816e20ff93f0943326ca614f3c2b40c0302047c435bb500683066023100b5894e410c3a3fdd4ce1d3abd2513a69560ee2b0c2cf10d92e955495a7d2de8fbaa93832467c21d22ef5d26e228fd804023100b1b1551f50b5e1422fdc3b78d2be237884ab8a3765b837fe984a3a749d44b73d070fa89b3d6bbff0ee75ed8fad9c2c2a0302047c435bb500673065023021cd0ad0b6e385b33bf4ab09757c0fa2346c85b3f5e3e86798938042abd11f94a50b7dcb80c0f6ddc79becfef326b68e023100bfdd5db00b3aae43e08f5332810826635188e9b24c8a178d8a74e6eb9539e2b51a21a6e1716b7e5adb3edc065f5c9c520302047c435bb5006630640230090112754dd6db1f90a11d6ae5fe3441e70aa661898e6b2f301231170f0dacabc84b2b62e5e692b60b7b1a2cb32158da0230743f4f65d5529087c873e4088c92ca06f6f89fc7150b933ccf40e62ad48903e04b4be0e75fcd811c898dcd37dbe4ac4b0302047c435bb500673065023100b20a673a807402ab3224bc0aa7f1c3b6e7d0f12f7d345d40a3f88e8900477b6bd5fb40eaf45ff238eedd0ab857e1c41202307cfa6b835d8ee4a4718e5bf8b4510b7d9e1f22dcb23437e87faa9bd13e7d39eccccf7c2e14c5f98b25594451e93da57a0302047c435bb500673065023100df4227c41321ca1044eea3245526d31d58e8057a8290998c9934d707f523dcae754510891caff3448f3e8077744b0b8202303de02456786122bde40ccff14069084558c60e84c7565d72a7c6d03c7bb4a040f9863738f5153f8dbacc6600e07257fe0302047c435bb50066306402302d34b69dfc90a26b861922eb942c3f6f0a07fffb2496f9399948e74600e321fa60e2bba0c30fa96cabfd38128ac230e602307805c012f8d381dc169b387fb89c0b68dc3d37443f02b1ba23b9a5fb2ac03cfaca85e7a5aa39a153b6e4d874ba52decc0302047c435bb500683066023100e3f78e6df374a9626c282b93e031dbac41617db84dffd5ba63bad5e3f7c71b7f82e64f4d5ffda26b7013631e6fea6deb023100e50d9b0ce872931a5461f0ec4233f50d0382d559fa1843d962839c4a88ff595ca63ec7673105a943f0da415e3b59f3ff0302047c435bb50067306502300c4daacca3e4befc44d79f718aa3c40f3a555b15231c37561c9e0e1a9756b5e2f3f228bd8652fea153651e2ee904ef71023100a9b24384953b28e57e91559153b430fe52df5639972b1a5d3f34fce942319a873579624be59a5afcc9a0badd5030d4b90302047c435bb500673065023100c3bc70d4714016fa723cb3d7c1a37a7832fc341bbff4933dec723ef2d0b002f386cec4d7be0781337391a457b0ed489202301abfdd80df580f2187d80da0e3da1bcfe6515a48dc9bd4eda2f8f302f1232ed427c3193091fd41ee380666e3caeff1540302047c435bb50066306402305ae1b98eb0318c052f5aa91acc397799c813ff091a987f522d929c44392959fe6f866356038d9af9b195e1325f7613e00230600545f27d6e1a42850588b28e43144740cf6463378fabff1471582f28fe41995f1f1c71f590b744bcdde68002ff8d6b0302047c435bb5006630640230596e6354c272b5836cfa728a9a352b224d26a952d9231ed27ab0ec6685a6848e25f0666bdfc60b59aac3c12d8525436c02302305ac172c9f61e02d2687a4b453262f08273152b84055aa7b7cbe669d5733c02a260d48b141e4f62760091ebd4c84400302047c435bb50067306502310083031ae5fb6548aa3092b51fc70526d6fe5c6c9c9577676c50714d885b9c3ec1739a56d96af61da0ba0277ac99870e38023069514b23791a5501df58e9d0b0e20a39bd8b7093eea5667e67eaabdd551d3e6ff67cf3c4c9fc13459edc05cd62868e210302047c435bb500683066023100bce034026862c8fb97664be70184a1000c21fbfbdc85d08ff99b9fd91d5a2764cb06daa81d969755489e693b92bb5457023100f47896053e194f353bfae0e7af4c340cc7dd46856bf5819365258aad9ff07df51c309480d0c37331d8b4f451955d052d0302047c435bb5006730650230606c1fbefcb414908262b9893aebbd40c779fa2ea61b6c534088540f308d0f2f6f6fa2e08f7ab3dc7d7b28ebef9cca4702310098431118ad735a42b7be9e7becee0cf43fbe2dd0d1efc26e740b73ec3f1e6b78c248143ade7b337e486c7a34823115020302047c435bb500683066023100ed91a9cd8260c238fd1668f340dc22d71737fdfaf8133aba262633df53ba06ee413725de1282b39b94fe7e6180ecd42f023100e6599849a625ca4351176324ac70f4409a6002a2dee9cfc19b4a12f20869bc810320ba34f3ad22d180c85fe7f77a8f370302047c435bb50066306402304b07fa0f6ceef1c5b8b2e5715714f1906158407f712b2756d7e4da51f9ebae6e5719f37915c41700d61bc17a00ac8eca023007b9fbcef9e84009cd2338270937462a09c6d5c22f1c14cfa50f556cdba6b002b5b7e252ffce663f9c3956aee079cbaf0302047c435bb500683066023100a5d4f8baae6c9079b203b712e644b7b075b4f0b26ea8e25d5b07544bfd178b5dbf5934bf5159b081267340b5293e1a94023100c26efc58b1a275f7cd1c7fb63306358133850a78ef6d986239750eb68c2601043517eb82c4ccd2d04201fa4675cd018a0302047c435bb50066306402305424072ab3cecfd55db9bc6d8abfcad3fae4cfefa8988880aabd7d6cd916f1ceea6bdc102321cc314a1a966188eeef8f02304c8c082b7a62f278c480815e8276c4e78e9bf23786170b519a6f47c7b3f52280777951ec56585687ad22359a1895cef30302047c435bb50067306502307bd216aa437989501226c79d6255bb30f34bad25f8bac07ba70fd5edc28b3eed344a28639efe3f7c859852e27166e0bc023100fe05216ee07f8a0f6215a380950a0c250fb21799258e023691841010abe87acb0226e14d340bdda902cf80278ce782160302047c435bb500673065023100b96a7da6b55ae15f5a9759dfa0b7056b41d461b254b37802874352050a20c26d6bfabf135e24459809f573fdaf60c9d9023039c588d13c758a30eeeeed052a89cf4e3f1d848e1bbbabfccebca61eec60a8c948eeb1c5a83783be6e9464282e59a5bd0302047c435bb50066306402303f0458014012db2d0ad6337f566c3ec459b9bf6509a85f594513fdd6d6948d2ce1facfd8f12d3d2f8d780ce2f50b1aa5023052ecf63a2d092b6b179ff8c2cf43b6772e1c9c0bf85ba6d619948988484612f84f96fd5fdd24b3dcd8ad61dfda0421c10302047c435bb500683066023100bcdd86a8119a48710ef51f5b5290dd8aa0a3d2bd5e2e0c40c77c505629cc4166667dc64dfd6770816344eca2964d579a023100885ca5a260e2aa5b6ba83b3724bb17db0a5c45fc51a6866a884c04271feaf3a612c387e19723891d2ac057f54712c6bd0302047c435bb500673065023100d1e222a352f96251aa66db27de4ac03e5cdabf98513db6cc4ef67bbba20ed9317e275bd615c91995a727f5095f327ab2023074836b0d6da82e21ca2ab6951b50092b9886b4ebc92ce80832ae1e7142e3a754a8c8a19098d25ac9b14998dfc15883c80302047c435bb50067306502300cf49d0d46c1ee053708bc7f0d41aa955b459764b67171ed94a4774dfd158b7fa64fd9a7e5d7086068f284f26a9af1b60231009dd5e95def846566f2b4d7bc31b3903969f1f8a43fc04050e5f11013cb21ff7dc2c0cd6011c89cc06a7c7ccb0dc383b90302047c435bb5006730650230720a47863e0f5bd4056e9161424ab7f7d4e53d7c090d072e553156cf87c904108b5262c4a79caae02136d07b7b66b95e023100fc7d4a869391658e8f6d0081b4d27758c49c747b45a6a7199e704b87646832e64aebf639941e781d9969daf36762b2b00302047c435bb500673065023100ebb5fb81e13ad174a09dbdea28fe0ce0b0b6484d4fecaa276dad16211d6b4ccfbab88e5ff11336a739d312c04ad277db02302ea2363e6ea53f59ea7af24a40f03514de744ce92041443307321a5f1f9ea995a3c5ddb722e4509c725f3334180dd7650302047c435bb50068306602310095e1457379b2716382bb3d5060cca1752c097ff22ed5524aaf8acda301a908c1bf42c74d1eee22a6e373b96541c18f96023100bbc56761dd60e6bc50347204f751613703b0aeec4acf4a231554d9102fbc165d320b66aea1d47fe000bc429b1713a7430302047c435bb50067306502304d85ca99a1238e0deb305ef6c316a43c5453da442326e9a644081c93ddbdd373bb85eb7722cc4991a9714d1b87b961ed02310094c23fc564270010f61494eff92e0cda4789c6a9bcfd9c09bd18624a9d33a21f32fba49611cc2bd9be9b646ca827556a0302047c435bb5006730650231008e4feaf7e42afa93361eb11da1cddb6aa29d3263205bddd747d9e1ed6e86f29d51f38e3d47504037d3212efc6c52bfd70230420c1f470ad7db6c3a7bd18aa65ef90fc381c2226572d6aa14706805fc928bbe0229b2c76e798580dd7c86916c5b3e160302047c435bb5006830660231008d3834da6b8192380bf5a48fb665f162cdd81db9942819871c66868b851715be2251c60af64676937b3cac8ddeea2674023100f73f798b6850c179c08ab594cf861197629f3b594686d902eec0cfa4eb9bf43f4ff8b6805652406b199d19d75cd3275f0302047c435bb500683066023100ab8436fe7fe1cd02685209e7d679a0fdb8e20c98408ed9953bd24e7d72cc934e2f64d4891785785f0c936910ddcf80ec0231008217469de399a28e6068582b97bf18fcac48431b8e1521e51c0b77f3f80f0ea8fc25ebba9e81674586ca394e1d227a110302047c435bb500683066023100f70e95849fce2728883472801e64f71c3e27c92fb7cfe6c851120738b18576cefece8b1c1f7924b5227c49285f08ea34023100ba2c765557e270520c15bbc27ea36fcdfaae0b9b6d53afa233e2f891ab1ab9648cc40431364ab18129b4ed10692283810302047c435bb50067306502306873a89986b50a549453dc7dd50c7455919a8ec09570ae706ffba04a2af3e29b329074348ad1422801fe2142b3983d2a023100db39f877bdffb0e669fc6ad58a2edafaf815d0f8386328abf1ff21f7b44bcfc0b0068f0f5388ea6a74a66c169dd367550302047c435bb500683066023100fb4a418a411ab499039813c2b6f9042bf1252d987c355045acd983cbd16c8f6194445bb581f139af9971ae0eb21e7b48023100bd35dd6179df32a3c406b8ac6b0524b3ece1104359a4c247093348fbf1635117b0f91149f20e51f5501bf39a1716592e0302047c435bb500673065023100df4a45eac40b6d58e8bd9d056fec7c9089ef3e2862336c21f26e53474f6408ecc3d1fdb3aa4be5ea0070d0eac78420e602301559e492191c4d027b100a0ad74161a90387f83b31cc8b3170b202b13b60a820cf074c8faab2d39e152efeb7972d0f5c0302047c435bb50067306502310090594137457cb551524ad9e911dc127a9302ba0f10541a4899919e96b3b23bb89fe49c87bf01986ebb817e0d71177cf602304cdede1bb25dd161646e35d14eb31638810822d4d6ba84233425f260a6cd46b91a2ee73504dae876fc3470f20d7d2ecf0302047c435bb500683066023100aebb43eec085983a4e22b4cb634ac32c60fc0b14f3d45c15afbc1b29e18d37fb2411fbb394c592572d82afb19a26d2b30231009c381f46f873090b2908116370a27cf0285f9e652ac6d20c3bfb1938c16739c4f54f186164dc26c9eb2b805534e7baa70302047c435bb5006730650230567f38fb19999d55d94a308a2ca584d65f828e19542d80d332bd6f7a5a75040147510de796c23915ddd9bfc52c4d175d0231009569affe27e8d776ccd745ce84d2b17a00af0a6e1462d545449a646f3b3918fa2913c78dfc2974e7385d735f0948c2f40302047c435bb50066306402305c301370c42b5d8ab88c2a6afb44f5f50f7df1756b6354315e8354c70273385b890bf474b62744da05af12a7d0ab165302307087a972f74191d5ff8e55281e14fd5dd57d11d438e6f1a70ebbe35054f1d016298e3b80e26200cef9354651e0a19cc60302047c435bb500683066023100bdcb8054aae64321bab0271cfc1d48a030992e4ce01a819560b1432a000097f20fc29c6fb33f63fbf445e2f9b56ef84f023100a7e095c1acab18d98d38660124b9c76a6097efc06c335ebc304fa57c023a49988097592795bf492c2a3cefc2fa456a150302047c435bb50066306402305dc885fef77d7fbbf4ffac3b4e337a9d756642c6a3a4f4adde446796dbf4c434157ac4c88fb9c32d413b9a877779d5ce02304e2ff20d234e839b282e3130ceae85ba25cff57754e34d12bf166aed28fa75be7af75f538be1096a44ce47118da03f0c0302047c435bb5006730650231009bde6195abe165fa18e4adc62a33cf04c6c7c197e735709e2ec1d45ca573026d68630c48306b83cd4803ead39ae59ff80230131351c8e82a3cd06bcba06c5d3d2312557dcb3d979c24eabdce799cd1eba6ae77a2333b3aa457e6d7420d2d8d3ff0350302047c435bb500663064023002ea661fe4d2b20a687b72beb92e5f223b0eedcd55e82ba5e9777c93cc124363611697ef09a1bc386b7fb87e13ef845c02307ca09804bb9a90e18db324ed54b134c59fc801e416ddb1400f17cab65cdc7efbf1c8173d28fa5d8ee0e829ce95b6a9ea0302047c435bb500683066023100f084bae7adeab79404f3a0d3611305705f7996c7ee2a16b121567886d0c1a34b450199da1bd710a716025369765c25b4023100ae9e7cf3dffbd59e3b61e96015f8e6bfd246c3bfe8391a757ec9b555c3ce41eadabcc03a3942a41c5c013e63fa27bdf40302047c435bb500683066023100964da7395325a83b297717f2bdeeaf73b38c8d7ef409114e1c30401ee3cddc47da7eee5f6f6cd711615f3fff38559fa2023100f2b425f0be75dd1be9086e04dd54c50aa4d03fe228539b78e93ffe20c15d1a53e50e887dfefa277e1c57de2e5bcbf0fe0302047c435bb500673065023100ded9f31490797066c704da7c6ab39f75713231f10d73e5ead125a5543bfadb56022946301ac10e21236e84f1bb709cb402304d802a127e396d59fa35c743505ef2f4286021c8fc3cc54ca99887cfc1fe65621ea7d2eb0abece2464476c0471e05ffd0302047c435bb5006830660231008b4905884c62731768ca972b61767c6dace380023f92d0a9ed9c41eefe84671f742cd7ab5ca73d39f4680c1bf31eda4b023100a8ca51ae98ce14e62911bc50aa476b212f3dd712e5fc69d0a28d75097c79679a9ce19f6dfcb82896e46d23eed6af82610302047c435bb500673065023100fbc9e035d7ec47fe77d98a9be9e49a3ca8b628df3cc2714d055bbda1de5a596a7903fd01a7c02f74aa6e8815ed20841b0230373d863533a021cb14bb123fa269bc8a854ac9778bb2698dc44e54a4a2d211fbdb7356ac78027eb7ea4dfeb45daa63a40302047c435bb500673065023100e2d4725a61443cdb7ac25b26806d7300318f9b013d0945b48bd42c82cb7c8c5e5a2b27f4b4e145260487aba8153b743502305d9af3c2876e0b0a12437c5a48f0cd6e4a633d7e44b3be3f823ac372c28d20bb20809a66e88b03fe4708bee52fdf48a60302047c435bb5006630640230455935ac72d10a518c732ebb102adfa0fcf7776d2e879b5315add24d87943bc2d64a2949e5c7d6c855ab9abd154f1407023073d8431ee31c2788f6e0239c96363ea8db5d998f8f006f4a23237d4aa6cc29b8578096d1231df390a3b0cc95e095478e0302047c435bb50066306402304ec596e2bf101a8b3bacc92b7394324b05385ea31abc59350d82702166b8ebef461c9e5acbff8df8059d7983c712abbe02301f7f93c9478ae74a673f3d32657359ca69e1a93ddbaffc34794001ddeb55cb3f17e2a84fb6b5e3fc042afa499557b7940302047c435bb500683066023100d426d59a10bcd703fa95d40b84e62b9377a4283b11783b16b2ab04f4404224c317e14bbd89f31abf1b741b9c28332d21023100cb147cb63936093fb2cdb60c8263929f221bc57972aa8116e18d7e82782c9766e41d5a9c7e8548e357c630084f3e66000302047c435bb500683066023100a7b144b7bc89cded9dc0f3dec116a858d1d13f2dea7a9c0dbca3dfc1624fe26965c9a85309557babd5baeadf975bb45d023100d1bf734a6f7a4f4a5e0c08dfdb3db4a4e6e37818f9d816da7b51230040b9e59eba014ea195b8ea0e0d5d637b3927a5a00302047c435bb50066306402307fcf38b7bc8294fa4c12f2fa759e00a72011825263da27bb435011f05357af1283a8f8e31f3b81792ca1398ea878686a0230138538defa5fa7b8aab78da6340f5c972e41032be550031e2cbb5f2c005f70cc322dd742cd7f9e997215144f800b3b1f0302047c435bb500673065023100aa7443f8ac4414b7cd9eb08ca7336888069f4885691338af0ef6c21f3d64cd69287ac84cbca453164691367000053a370230538c72289c0d0eca0b9a547652b17453f2a59bc9bced2336586802bcc44a3bba415cf94e91cc74172b4bb5159079ad670302047c435bb500673065023068c00b026e813b871d5b0d54b33ee0c3edacf3af815c533365b8471691f528034cc03f91ad4f2afaa4ef21356fa1ab720231009088add7079cfc6371eff31fda239399818320912427e134cf91588434a06a2652c5a8d142d7f619644395c269c803ca0302047c435bb500673065023005a42a12accb87c9b93b874dde0af061308e8d16c91a8c4d4f70ef7431fb33e5892c09c08af75a65cd0b22deef4fce38023100f1959d31d3bfad0f9dba4e6675a3893a3a78f511c7e6793223000a2a68822493d7998760fc91aa27ab3eeaae53930c1a0302047c435bb500673065023065bfbbc832465c14b462b97de49a4eeacbd45fee8b4279c3d21b9fa33e559eedaed5d44e5b1029c6173b6b5f64b9f8a502310094c77822ed7436be16db23e217666d40e6814d3b5458634cba3b1a5968c129debd5aa7a30d772b1f62ae59bf381efea00302047c435bb500663064023017eee9f0062c65a0e84beda8112bc8fb878dd291dc91b011d2b3983f4945067ae4f1ae7e0e2be7f81b8c940c12c52fe2023021ca064e5825c42febc7b700dbce1be9c662183edbad7c833d84ff90125462fef2dddca0e38966c372115024a65d66890302047c435bb5006730650230750d92583d7b1e05d0f9f32cb022387bdd54617cadb0d1ee2d6409ffe983bd97759a3bc82deb1dda0db875b065d24f4f023100fb9da2e147de6a36cc2e147877278a06570d014142866913c3e233233bb42133383ae0e64864008ea13405190e27c6130302047c435bb50067306502310086a8f68c03e7e7a6c653aee5d2c8cbb66fb4c7ca4db786db05a85b0841ca5417fa765f39d154f74872376dd506d39c4a02307b3b341dfe42720f283ef0f55196772361c3477e91760c86935ad40beb5136efa00271f49c73a5f4cf3a90aeb1ab32530302047c435bb500673065023054d70dd38780d00a1b0e7a3a1d89f89f19ce11ecedfe1303fa58b651d26107bc080de05f3a55e98fb1f2ddd6f832923c023100ad0d36f4cd908d3bf490d5cdb07282eb51503d941ce7ac1360e25ba7fcdd4964e1c3b600fadabbdf6c2d39311de4911c0302047c435bb500683066023100b8b5cba5dafab789493adadfcc137ff555a7014def4a373b19d6d811962123ef91e3cced11db0cac3910b45e2cbc092e023100a91f82106d0d768b591b34ae5c84597501f84be40612fe7056e1d20dd253aceb267ddd427df9fe5d98ccb10ca9c8d3050302047c435bb50067306502303483a0772ac4d9792b9c472a79c56a30876e1901319ac2ec6b1289c17aa0589a7f3d1c108cfa1ee62cf819666e1fd190023100d08c8691bfa02630ba4f6eccae295a4b6f2be3adfb37c56fa6bbdda6a8e06a349ae6eb0c5f66a185b83884291be02a010302047c435bb500663064023065af6c94072301f9da900330746b5a521ab8128de1acdb0fb7dab526c9f099b81430ebd92fb84a01c40fe940054f54410230708c2b6a0fc834e2944214fef39df4f92a998ed29842bb787fc13a6dc2e16cedab2a20026971b35c05ff528bbef228830302047c435bb50067306502302787d1f6e6c50d8df1f12acc2c1b5a79f5db62c001b72c59796dcc924fed162ced849b4a10d9f77ec8417dd1ba28e049023100e46bdc1d61da34183b80bd69fc2f5196bf3dfa01f3b1fcd5d4a08a239b0b9d2ff8a890824816f755aa08d865ffa46e230302047c435bb50067306502303aac631f1653deda8d65beea0548453b216d0f084357912df0e9e5617dd3e38423a3178ea3e5156b571dd11a8f4701c5023100b180016ad64d34b0f2ac1e9091c9329f01edb9c7c1977d6fd7ce304b5ed235dd07436d525a026cfd6c68710630572bb30302047c435bb500683066023100c8c861106ca6a64eabce1ccb1a2eaaee7953b9a1b8aedcb8ffe1beadfea3805b078073f6cab422c728bfef7022875df602310097fffeff828ce5999d5fbf2c0d802a020ec9540cd3b6a43e2bb905bf3d8d456b0f86e75fc4910a50646533dac772608e0302047c435bb500683066023100b68fb40842966c56116c05435c918c4bd05c3132419783e40b87888144fc2643b41fbb30759765c56e8ebabc07d07a6c023100b28854dcbbc7c21766d03f89fad8dbb612d85709e492560967de9e640e0a8bf8932d7e9f973d4134a851bdff7fdf01b70302047c435bb50066306402306b34fa850702477675d47b18fb9da97669c34de91a6c54794bfface6e7f1dc7034e1e6fc72cf6efff3bd2246d2e25f0c02306259f6a94b605ae977a4427cf2f094532aa3a86acf04775119bfcfe37ec0c99c0f9a75a1377723b7c3a6dd552d000b800302047c435bb5006730650230676cd513297a49f4569bf67ec4cfd3294beb823f2c1a7a9e6f44987bfffba666a4dbbb3420ddce049f818a6937cfffaf023100e64a9c62041e5858f0d2458d41c0fe1cfb87ad8fac6b62149bb6a42f93b016dad91c0929a8d8d5e55458714917fd86f80302047c435bb50066306402305bd3580f6cd94600c763c1cf1a69b4debc3a4a5e2dfe0b2817147383ebe43d3ad101583c31e80009d4a9e6204fabc36e02302c905bfd7dd0cf1a7933ef18f6f8d57ffbaaf011483b59dec5d161bd00a977c84cf855054896de576c200537e6ef11ac0302047c435bb5006630640230604dea3bde8fcdb8f6f291c2dd7eec64ed862fe547dbe16be15c0e774783a314e043fd518f3cbb11f05e760e6df2b73002302531e085d76bd2c7efe6c709c0f985a8d321b185c57f5be0842100ae66b7d979f65846055e440aace9b1549c66cd14660302047c435bb500683066023100e646ab5921c64cd3b880ac091e7dee8e6c988194899c2f9f21c3253d0fe13df2cbc73bb46318291fc61be5695d955aaa023100810157ac5530a1e55ee6b8f679aee27f3f59cb2fcfd877e9cebc194cb74d6ee49ceae254c1a8d32b1a41a5f30517befe0302047c435bb500673065023100dc502ec55796f46b235168a19ac445c64182e5d593a2b74e93743e47c62c22f4b625ed121300fe83b8b73f0980a7dd3402307f6662e1806ab6621e6f94932ad168cd003ac7c6a389d98965d2ed1b2dab78e2d1b18cea73fbf972a2e41242d52b0aa10302047c435bb500673065023100918a3c4a4c3dd01d69796c4f00cced95c6d9ec38a913ec8a7519d84b63c35502aa9a60af4bdea9526b180897c4c4c8fc02301a96589e652b31c28c297117e8122e888d0c40c80b77847f76edd269a275cf5a4c4f3808e514ec2525972ad80d22e6ac0302047c435bb5006730650231009855dce119be36a523966f02e5ecce6516ed192220ad0391431d7c31f719d184fc716d5b82207b967d243a94a3280629023005396664fea1125897cce2b70e0578a06ac8804c1821264a50749fdfd27807869c29277d345a5d7f87d3987c39ac825e0302047c435bb50067306502303cc94216debeaef692f0911e953a1891824001bcbdfe5e731e15c580e962b3c0612faf9de2bcd39f9adc86d199bf2237023100924bbe7882fa4ae136ece9018ca1a77adb1eb5d6b5d5e5cadebab6f7c35eb24150759457e1f08babf925c9b0bad24b050302047c435bb50067306502305d4d97a0e596094891db9807611af40269e3b61e356636dbb194d66c7fd0acf5fdf5b11d976eee8bd22eb51e7e4fbca3023100bb44f91783a7de58f7b0358ceb69beacde2ea41d7950e9ecca0201a63fd18e45fe18ac2a2400c8c31798eae24eb337860302047c435bb500683066023100c2ec401692d74b3a3b984a94aa8d5cb925b9388527fa91049fb3650322a4bafb3f78e9ec9ccd0e60e2c26835db93716b023100cfa210ef546cfecde4c04403f7d703c415442612191603ba74f3a8a74b49482ff04109217f613986bcae1cf34bcadb840302047c435bb500683066023100cbd065d7a869b9cb8c0e5a50684cadc02fbf2d3726f3dc68fa39ca8caa830a5986dc97e208214dd2943d1e133b0dcbe00231008cb4610c4c3dba90899fc554e3bfc73142d540a80e3f6ba0384ac9c2461b371903e0aaf647352e0c26670079ff09e7d10302047c435bb500683066023100efe854e0b2c2bd2eb7fd64e2b04b0a198ade2c7056bd903b58e83b499d80fdea3878a9cab8956fd403ff8bff0b647c6f02310087fcee6a6bf3c92f3ca247fa8bb37594d0cf8464a1032845f7419dd162c4e309695b7cb0a2fb0d524b38a7916477c4b20302047c435bb500663064023010ae1d7660cef7ae809cef7c872d074b574e0741baffe4b29845a5800ebd5f44c8fd59991261e46bff9bbe33908bfe63023025035710821328f290eb510b36e312e4b4df008b6e793f8a1b0f7d46572818f4a48ea92320aa94dbdab15991d3dd97360302047c435bb5006630640230618a8140c52d07c3340e41e2186c4af66996e7df1a9c1b4d345689fba547cad4d56ddd3566e27c0ae1450a77b8775f630230311232185f947e5834feb9dd5972b858b52d74f80af00fd6bdf32df5861b7bf9937700ce9f8643682b384b4fff21f1b70302047c435bb50068306602310095a0df7c4e9d1a5c0ab4028da6c5a7b38f0b9f5f38380291d4287aec9da39d780e94e55a9e6cd569642a5ce80d2c1c68023100f6ea5636fdcb45f016aa6a6a47b15de93ecb59947dd135d34278ab273ebf2aa04fd22221395980e86516ba52095a0b180302047c435bb500663064023061de6c54ac1202d8fa56be8d817fae04cbcb565472108693bbec8042e11ee84e0cbe19b1b5d840f8e282e21b619fad1a023034f93d17ae96dfd4208d0f1840e91f36f764a2b4b9780b148a56113b8d87d0cd2ffe7f1ba68cfeacd2afd81dee9594bd0302047c435bb500673065023074a7f1403e0994727e00631bf904e713c3988ae65184ecd2381d2a55a2f5fd952fdd7488c1190d9ca33b594a5b1be8e3023100b55736be61899799bd529fced9e9903c670d27ea40d77dc88cffee2cc831ba1084b16f529194fa2bbf0d5eb99a60b9200302047c435bb50066306402302ff207501abda62c19ec83e88e63eb048559eb67ac6547cdcb4c1227265ddcf5d90f1c277a5b09286fd1e196cf39b1e402301582b8f7f759a30f898697a4d34369005397ff9b91793df512c81b1c6e7d82a7cdefbfa04ee9bb0d0fca33429814fe650302047c435bb500683066023100e5cc6a6e1b043f6823fc32b919776d686ead8f41f75856a15f4becaddc389983f6b51acc9d9692006e8a0793fc3752ae02310080d5b06d3c5f0b0578e6fa85737fdb1ac3cc4729b959b355b6d75e67e0ad5186bd2a7cf1a0e8869a47f0ea13ac7074410302047c435bb500663064023022df035e1f5b19071c5b031bba2dc70bcf797434cf9bce8cec0d679f176ff0ac5304c99025b801352cf32d6f0f3396e602306d79591d560cef0a9db247efdc6f563a2d543607a4d60f18965f2c61b8be5d87956bee1c7fc18e6adc4b80365276b0f70302047c435bb500673065023079502c20ecddc014b530ddc92d662ce4e7c00dc14840227c220ed5cd1c8b86ccebad36f008b01fed54718a10dc34123f0231009dc307b2d78642d6ef16775fb715062794be899d09f333fed5803834e7412a84d089fac538dcc9dc9171417e95ddfaa00302047c435bb500683066023100d0ca595f451a62056c7e3fdb19407c4097f609e50388741cb36af35840ecbad13eee0e077d41d34e57ebea49c884c57c023100ad839deeac5f84d990e39a1301fc2d0500a7a8fb20c5f2fc156d21aec9dbb353d99d5853363c159b77865968c8f3960c0302047c435bb500673065023016345edd068de44c46c659df54db3a525890338a7a40b07c3b9ff059822705c2313a1229a33332e5e3d2fc2a4232eadc023100edc112f37cc1b894561fe4f51bf064e0aaa2f852446555839de5c49c1c52361af7cd947a1d765997d2a0297a03e4697c0302047c435bb5006730650230505700bf7e12e6a8a86c60e71314ba057380de50929f6e599bcd8b6af21e43d4c1fb7c1603316204100b102fc58ea5f602310096986f4659d4ede4ef440fe391aa58e2dd22cf04f71e7d999fd10e0623cda231f77450c321a2d6d26a3ef86464c75f8f0302047c435bb50066306402305819c73ccc88bb94eae49bbc134a3b916369c442c715c47a606ccf023c45307e718d27c8d3f0219ad6f961768f734abd023021ce9dcf0b8df7759c7e76ac0b5c3ce4dcfd26c67a964cae9d336bfc5c8788c0e4e64b7a523e03ff1bdac21f581daebd0302047c435bb50067306502303dde6084cb93f279756543aa774e0c9e415eb9c43916bfacddbb6d18011514740761086b4d8d191e181b0b54f0e96fab02310085f7b84fb1f79eb59048eacec44930540dae53ed82b391aa4f2b80c767bdd91d7548a91ea9a1fd13ace51ed7223434ec0302047c435bb500673065023100842242753e9aa648c2c673008776071c9128812d8b74aa127ebb177fad523e46674bd68babeec9d0f33f896f2d31580d02307ac564b0f1c60e7e6ecff6d995458bffd43f25ebf1bfd6bfe3746cf77f5c82cd9357222b0202d2d004788cc76042610c0302047c435bb500673065023042b2971f81949a37f929e6344cbf7efa5c202c97ea3bbb40726183d8d864fd869df7ebb6eb43b15912d9c4488f53a29102310089ac1a7a0cf295f80a7c73c5f79542001c67e5051dfde502b2ed7d20acd2ab3575daa330042cd89acb2005d592c2efb90302047c435bb500673065023071260e70c7b16c63f0679f5b33cbcb6ee1af6d4b977c2a2567241186ab1d71906f67564aa4798b94e30f31f97852a232023100c30265fc28800c7bd50ddf9e3587641a5733180af3a7f1441fd398e751db23a2b104498c4ee8981c99f897ca4f8edb2b0302047c435bb500683066023100fd58cc7f08a922daba38211ee28afd74714886fc17f95fe64c5f536dc8c6d3ef6e3afcbf02341dd64c39667a50737627023100931e62c614d1227aed169b51cf332737cf19e34ad4b3e34188a7e6648342bd856ad025bdedcf656cfc4c9b89edbd4f850302047c435bb500673065023100befc8cb9cec5593e793e3d0d205432ae724932bb394d33fca7ce9df3fff085d1446a151c8c2d0f18e81ac97a30097eb8023012be64eb9d73857d1127198be18b6ba4866925ae09940f73722c38a06fec839204f4ecacbca30e6bd59294de02dddf3b0302047c435bb500683066023100e85e69aadd4144d2ee02ad3c1c2a72c45f96da2664713cb469c3768c6e5182f367bdfca0bb10d654edb18ede4fed3427023100d231f25805c591fd1cfef988d7f38467431783628b3f6c5286869ae0c332972fb21915cf1ee656459b2305996c4206300302047c435bb50067306502304b84fc3fe989e924fe855beb975b5e678a41855ec8e794e9a1d37d5005e160c7c0feae1ad63c539f9d91305ffb2c491b023100995c1d024f4bba8e45ca220ad5a9013aa604aa7bc5072104bd1e30318c911d279b2ed03103965aa9eb1a196d905cf1a40302047c435bb50066306402300aec8b3f02d4621ea31f40e9b969918a34b27fc9e59b7b8586054f191b4eb10373d144ce2841165a7ea3705ca474792f02303e00e78a5e3c00ea743112fcdce54af7cd7e554dff39c825a1f16cd21ad305aef0b40278ea2e7034d862ba59ab168b350302047c435bb500683066023100c7ef408afefff5bf3c75ffcf78c0e86da933e5f4ba389d5a2d11c4a40aea5e8c357d3fac2fff81b1b0fa5d77b3a56e6d023100e2ca98a03749bdce9234ad6d5f58588e1841bcdb420e503083dcbec1530da3feabb92e137005947883384d30fbe195310302047c435bb5006630640230611a4a0f8607cd27b6e3b986209910ca6828ba1049bd02840b4716f27ed4f09b6cf782e004cc824e2563c16e07c5f55202301cd9563da44c8256ac3da1b7b95b23598d3ec92874aba25317e4a4179b64e3d9d16a19c67278129b141c651dfa0aabf40302047c435bb5006830660231009926ef3386c55bb92426c21a779fed9ef1b7757ba284c50e9e9e495feacef4ab49b35a9de143033924f2684c848e24ff023100f7c7ba15d307a0b828ddfc12e67b77fe29943c656c4c6978c6ee865e775eb66cf2c12d5b60810a5253efbe13ab24bbba0302047c435bb500673065023100a2ee2ffd09f8ae1c2095e93587b3b6b4e1ebd23bf21327d23a4c37872fe81784eeb8d5cceed21c6811b633e28a83c1b60230299307db765d04f5629cab14ea1a3ed3c1ea19af084504916d128eb0c5039ab28092e7f119c470de6447950710aae1850302047c435bb500663064023028dbd7396482597b2b1e1adb1f81cb33ebd6639462b83c8bf7c6dec320a0d04b02b6ca50c6f6e828d75aeaebbc7477e902301c35263acbe1c7c3e886805875f4e10ab57a62f033205a93d9867373b89ffaddc9936164cfcee78aed2a0e1e4b6e31630302047c435bb500663064023052fbcf95cb0f160bd40afc82fd076d7874782bec5be967473698e918ad6cec1562c2571570b254496ca650ef5a542e6c02307e45f14289bb9555350af6c6a79b7bb476d7506d053cc3533e108e8d1b8fa56d057417121ba95923fdd60d54cd8d12450302047c435bb50066306402300c9da200b3cf2a2333574be1266a55fd3024782a4614d1df14197669b6465cb5323e5b27d0809975593443fa7a19a63d02306ced099a3c0d5074d76aba05f7a3f0f87285c03b9d9c9f3b0e916dc144a0ac5de2682680c962aef9dd2856dda60aa9290302047c435bb500673065023077e20d5983cf82cfbfbcc81d53abf60f959b030a77e04b3e083879c1dc4ef5b9047705c5aeaa53a350ff40ebf05ef311023100acf7153b139b6cba1c7e1213c77a27aa4f99dba74a339c9522fde955cf2ddd5d1e1253c797fc1a79e6e65249dd14ecf00302047c435bb500683066023100fe47d834527d7c8367afe9df824bad9d7b7fe6488022d9fc8ede4667ecd30ff970e8de1f7fef201de9d891abd2aeb284023100bab86aca02ec60e8bfeb275b4357d405170a4c6592a48bd4f8763c888b1321ddd1a68093d0b0728f6ed851b65b9aa6270302047c435bb500663064023076ad341e9408cba1ac7b667f556858838230e3ca33ec4b27608352b17a3819fff77a652dcf2ad13557b012c78c3898f90230011d502bd53167f7e6743345587645d7675a4442443dd9874a8e5a3c70a24ae353e2ebe9c69ce7af51cf981ceb8374020302047c435bb500683066023100fbd1064ade26995b0f59b1163f3b13917bdb3af511ed634cc64f95ce47a46be98ac494ef5d64f973ca4a9d76fdc9cb2e023100fa5bb3eec3f37112877cedba4daded6a2c6f15eaae1a220a9e526a083ece4a9a9d547a692907eee3aadf159c6ba9b8ac0302047c435bb500683066023100f30ca6f8c34cbef0b25a3cbf2813c21683426b2b3e9ac5b7bb22e338fc7587f37690b1e93a5de90a9958a4da7932ac45023100f4fd3fb3b59d52cd9541bb439b6e195566bbae45ebb0cbb668a20632b77a0deade48bdcbd36415846a4b876f2038036c0302047c435bb500673065023100f08c025d33980e3d35b817d63e22ac7eb882145c167ab0f2446ea59aaf8c6b97e5eb8a46fdd2a964ca25655bb274a0e302307eef5f9d97b861a8b29dad178fa6b419b01a39c6df4437d8c790da974b2ad8cb8523e4a8ae3132c5847ce02a1413d8ac0302047c435bb500673065023040d0fb48471b82cf0b75d91e61580f1922590a27fcc6a38ca371fb8cc71fd7c59247568a1dac4881c580b5a680cc4e72023100fc7b34114f4697090d103456327f6166d6dd2038952a9b1c4a4fd56c8080d56045b2aa3f5bf4c64bccab555e37642b9b0302047c435bb500673065023100ab340ed70ed44c867bae614db657fad19ad4d808ae935f42bd91ea140bb62c5df88b6fefc6b8b549caac2753a7e8f85a023035cb2a42a0a6de0d6cb9b883c1267df723947ddfbfef8a25e8b6f66ffd2a3b688decf995d382822903b9646ef05421dd0302047c435bb50067306502310089ec6be4674cdb916d3ac0222ee4ffd702fbe4743cbf6b8580a0a4e8f3b6802ba7604f1c83284164cec7ccf4e7965e01023074248f763e8a9749b78bf4359667c66b3f635f1f2e7750b8b266b7659646647b69cc436dc47c44b93353b0cc65b2084e0302047c435bb50067306502307425019482cfc6f6bcd58af359a83923d85502f03f34073e1ebd4cef33d55c5d8426a360ae691671e50ec9a23ff83a9c0231009279e1e354d78c787d65510721321dba5da105f3e2f6517bca5272c60f8798454fea56a158aaa71f526ee9ea9fc398750302047c435bb500663064023071a467d7a0a1bcbaae02e99962c8aa61116e4aa7667039517d9ba18c325e59efab5fca2e689c5467c1221f2d1cdfea7c02306837cf2964a8f6665fbb41340f0cdeaecd0bfd40c2b5ecd8dea63bae957e5111c54eb16fcff9f332c7aebbd88547c6be0302047c435bb50066306402306481c312416679a6f15c9f56d64e4c383b8efda72079bbb55672b6b843b69b355cda4ba11bdf6518eff211515709282d023064546108bf6efaea0305ad77536d89870156c4d381ff4d07c85340451789f7c4115b8d34b75f25406f14e536c43274b80302047c435bb500673065023100de1a1d12a21e5778f25b71e07a59cab4996fedd109331c07dc520b4a118b5a06d5b3f87d69971ff0f554b64706d817ed023023cf63742cecaa8841f80481fc2c6afe034b45862b6ff63741ab68e47c40ccf0ca9b83778f7f99e3500ace5450e1df0a0302047c435bb50066306402307905f675c83f2be92d177321bc3f511f819c2599786dd8e15ebaf4c4105d5f49573931eafba45187d1054563e00f8d860230758a4f2ee4874ca585a45e91b5cfab7be7dd4394f1d9adb5bc606e7a38eae43f7280a5353779c736bdf875f3729653800302047c435bb50066306402300c4bd8fcdf43301be33305c90d3aea17cdcb723cf0525448a582fb6b0af5fea2f2cff32fda540cb18ff9dfdc3592ba260230223e06b3de552c1879d3a5d288c63018a4b313154aa916badc84b34b285e562f1ce193d52e88e9090d8bb293886c6c7f0302047c435bb500663064023051756402994d427c8c2319efbb516aadadefadfb832b31e09bd897657c85b35c63c2cb51e64110644bd832665cf3e045023010502ca51949004ef3232eec06c1c1a1ce8ecf163dcea67d64b4b787daf75feb903c2d7ea80457e348334a01a906df5c0302047c435bb500663064023032448e5bd9ffe2edb6d44537c81f9377026be5d537c3135b7002221ee0453fc96ffda6f91f64a8f822b2947071c20538023076d5de81d289fbdd4191528cc8a0d0a9183f3ff54e372ef7e9d1ee74bfc04e44765d707e4b584b722fb2dbeed83158cf0302047c435bb500673065023100ac014cb12123cd7cd9a88083d3caea6a9aa0696f19ee49ac325bb627b603fdbc492e5ba911122276b87b8e3f9f4cdfe002300adb9c094cf78def9f1dbdf481b3db17d032fbf7eb8501bacc1d22d451c8bb41e56870e9a83d370149f29bd0cccb5ef20302047c435bb500673065023100f0425a01ac4286bd36e5b3316c90a69ba2365967f1a7c30d3470195657e852627022793adf7604d6583ddf5cf505abec02307ca2321e100ccb702fe200135aa643380f576b26403a954b554308eb29cb663b63bbb5281ed30701d1cb71e491cd3b630302047c435bb500673065023065a0e6d367e15fabe43ceffc0456f73de8cc948a53a070f176129ae889bec87e6de40be57c966457262e0ed44335afd3023100e4393c517302e9cc8c9ddf190c66f93566f2890ef2bcc159399d8f803f0038de4945f7aebfb4ad7d9a00c74c581143df0302047c435bb500673065023100a709d8c4a33d957fd9c1207d9f872776bad0cb521d4388777cdf6505d5af1bdb301e26a08239455273996abfba2b1f83023071a4679b52b5eb83adc3dfbebafb7a20fdac5401f9ccf51dc9d235743a5d2ce942839ccdde31928c032462df6f0fab9f0302047c435bb5006730650231008ada067fd8b38fa6bbe106a9a4a7eba474c747b19a3c672ba5fe1ad322083a7faa652490653f0f087005d99682ffb7c502306d000e5cd6f10de1e36ed438ed7195bd6b1b4e3f3ddffb461d4112f02f84e50562b048bc36cf86a5eaffc2469d21a4170302047c435bb5006730650231009d6d1333a40067f379379155b47c575b077cc082ae195757c0bde04d8143ba763c75fbbe2bdc047cab8fb4c36c55fed60230550200d10e279e1f116bc1f7ad64d539fee7dff17249a97352f6ee9a3bb13777fc41b8d795ae6ac7e56b16538579b3520302047c435bb500663064023013704a4588c98aab92bbdc6bf9d321ccbc3d7486faf4dee555c82a459d62f6479d17d65518dff11f1f7a5e919babe02c023044128a0db700ce2cfe3b0f6886b775c9f606a565fadada39c468e4a3fbe363da0979268d7a5b3e2a7f73902fa695819e0302047c435bb500673065023100d5f38531854c4952cc59207a4f3d2de422329ead6492d45038b0ee45b7ce79016e012c9e90bd5ce395df2002deb86ee902307a6c592769004b374f95b0a5b7efcd782311f82b2089617596908633b6c778b23b5f8371986ab631705fd50e6ab3ce9f0302047c435bb500673065023024ac3a3d94f85b96879f286c66d23c2200981829e1061dd0718b989f0644e5752832e2287406919a25eaaa9e268bb06b023100ea22cf0110d2737d2855dbcfcf20797d208320f56dd61458726754969f7953e7e2f54a25305ea95e375a762349e2f5f60302047c435bb50067306502307fb8012086b35fab56ab2d44971f27c9005eff897d10f4b062b66fdf4aa2dc6eda83315b67a16077cc08654bfebb1c90023100e54487d50a8c84839f6a9aa2fbf577e35cee1244f68384803387f02b8929f08dc4bb7fc2fced95e246d3501e291dbec70302047c435bb500673065023060a43ed965dda92f929cdb7bae70e26d93e8db0a7179058b0cea69592c4a7602f0968cc7a1b902cdac2fd0939a111925023100dfe4dfe0f43fbcb566d3f4cd1559264f76eda3382e70821e28062c28ef4a70d79e388a70183fe7e6c6838aa6fc70b6830302047c435bb500683066023100f4845ea337d410e38d0d7072f624f231945b2e21865d61acb6d3c071d2a51a17200ba9dc59f1ef34afb898cc0337ad01023100cd8e198fb98edc554700e54193081593fd81a6f27ae406710ae94a84994ad25e8ffc24c02b63430c40a2938a4e4c75dc0302047c435bb50066306402300a5d1568424aa95fefe286978e0b70ba2b7e20eb048dffedc9173b9b5e9682cdedc304a6200de441eae5280801fbe2b902305960d6d5b6ab50b04bbe32ea52a2183a01bad2ff3f62715bbef7442d434cb8d8b9fa2b540e28b76ee24ffbc31de898880302047c435bb50067306502300ba1955799d822afc79ae72531b7dfc7efc9650f534d0bf4181c786e5fbaeafa53862c8566d1837d9f357bfe9ca1a2bf023100ab10f02bd168dd535258c38ba7f7455bab817fa7e006e55ccb34c26cd08cfa553bef0445d368e82d43e9d62a47d468930302047c435bb500653063022f3078853aef8858e08d631b418b2421bfedeee91adeb65d02ab4b4c66c009c4b172cf6c4d31a681c294de33c8a5de8b02303fad9759502fb5f938a1bd1477e6e4d86832edd71cd8022fc97b4ac55235a40584e5c553a65da7d1c5a601bbf8fff87a0302047c435bb500683066023100a3bd1b8c98c3c5d2778846e81cfd45603516dd3ea609e3a7c281879bbf61de0c28b6b781d24d7942d85ae0e88fb90337023100fab5e1c2f3fddcdeb4f2343e81e293d6386c6adf4898ed2e52c62341f47a613bf731ed926d6998cbc35e93b2a14e0a3a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300cb997588fa956a675406bbefd1be8ac50ca7c13fbb8e621c5fe3320eaca1b0fc098ef5d319e19d24a7223e2b5843aea023100efebeb6ed9f7de322909dbfe47741dd6503aa00171c675ff1618fe61f5cf9a2f6829fe58fab790501f20f7941eac472a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230375f5c215de60e48c4fc41ad79712e59e1774a2a4efeb2141b2c5d665cab250251665c355e14aa76e9cb0225702e1ef002307a36df6324ca885459ecf8c62654f1643dde2a1b06e7fb45447a9f5cebd64ddd72e50ba120825fc63aa5e341a09c348a0302047c435bb500673065023040f2a305de3a032d21b7baf12ec6c424b3f2f8c4f045e1588a70d505f3135c79b58f76b7e7e4d01c66e213462a7db7a0023100b09a41449ca788a383b6f0092701de9085c28f0123675140310ab30c8651da399dde6eea7390154ce51a09ddff5fe6ee0302047c435bb5006630640230570dade1bbd538a53fa8ec01d8e9350142b19048e57d8f53b57d6289fea1cfecf3ee43be8965ecd9dc494d8f4e6b9518023075a1d7ea430b26356b69fb19e438a8227f36c055118a2720f419170e275cb3a3b34a4e701bfedbd35b352f1f24dcd4570302047c435bb50067306502307281cd05d5c69e39a2360d1a659ac6ee3a04ff3a5f65951a3403189e74e21651b3466d1a9d02c9f0259db8bdcf15c328023100930f40e72c0c70423c66662223ff7e36d19e84a242082c3d66b2f95d22c84be1cbf34d73d229c75735ed0b6e51b68b9e0302047c435bb50066306402305ec0ec84036fbd5f2d4b29767edf63f32b967991804ead48a7b3d3898fb25a5c0c30559b7d0d5eba379e3126b5cd011102307306ebbf7445cf09702bcfd9d9f3a17dd5ba4eb29633945f5c4f86ecf05d46754cc410ddf441dd363b6560602347a3bb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302c4757d2063aacb04ca040854d4ea2113c432548b89e939def14eb8dffc8c6a04025a5b877f6c8a39c2548ae89c111d5023100eae380ef9a1fd14511f359498fdd5954593838333ec17f1e21a27aff2a161afdaf74893603f0d498e9de7f0b1066b16c0302047c435bb50067306502304f338362de64e4d47e1eb7c6b8d3e4ea029c0ce9f7ff58309c543a022399ad397ae442557052740a802c7ef3f93c14b8023100a10b3faa67d97c49c137f66990d834139de891e0951bd7fb7b76b07f3ffaf8a9e45580dcee341469f350e32f2355d67c0302047c435bb50067306502303d4350dbb98bd1e416185f3981911a42b0afae80a70b275f271db20c0df54695d653ea6a8ae1db1768ee3f3c7a70e287023100e29cda845eb9d6156d1dbed7882d00c3451c5a55d7f1e1a505fe4a1bba4ff7abfca01615a5c6c0f4ef179c24b27119570302047c435bb50067306502305403acebc58160b1308d44cde44b81fc0876cb5991351c48c9509bd8dfdbdacbb192f69580338d12ec74fb4c50324552023100e86a3b49e557f4f1757eb987cefd0ad7340afe837bb45a3aad6a003599f25e5306d9e24115025d1b5ee53f783926b1b50302047c435bb500673065023044027e6ad7e4d99036c4f4169d387cf5a22ff3c6d94311d6b95850f119be9950a1ae997deb164b21683dc8d74c16f1ec023100da5b30fd896aceaaef6f4efb0cd33f34168f28b49cc2eecf7d03e60da7945fa7ac25ea3897701cc72df9d35f771181460302047c435bb5006630640230359b8059c30557be4d5f2a1d4fc0649ef8d82dd5838d544345ae965c5a3ab5a8f90753c4d94d25b4f6f7a9edd0c28024023011afdbbfebe2d56b2b50e95cec2fbdecd340f50b76dff3da77dc3f64243b03300525195689a4291a397d576a8ca7543e0302047c435bb50066306402300efc2941d4382e02d85069a041406ee49a8f7d7928171205797e144f0b4b55a1108f5b6774d816df085709d45de7b43002305383048288b63f43ce1d1080ad687a241801bf200a24c4fbf852361dcd73e7e8f157a1a7fce5a702679470ea5d6b19c90302047c435bb500673065023100c862048ad3d85d2d09ab2f22b2717943b5c37b998beed6e29287ba3a89506f8b668d56142b4f3addaf53beb0fc178875023031b07f1d5e44c394580493c19ce6eb35c7a56285e1e36bd484d246da2c50589a40e60abe8eec23aeecd8be2e0d3631dd0302047c435bb500663064023035d329aa416d751ab2e8999ff7838c3ae9c28e3c4e217dcbd22ddb535640dfe0ce802330cbcc6f2b52935b6574b3cd4302307ebdef000358bf0bc3c1773ac621d9a5fcc1c1c26fc16489bdb835b185c8e21e3caac01458058fbc820c6f543ef2fc030302047c435bb50066306402307ffd72cee9850ef12d4297c99c8f427c65074ce93e11a762b5f3fc4f30765dfcd911a34249be061b1d4ffcd1bb80171502300e282b6b0413f139d385b1b1167e0352465c84a5ce924d94596e83566aa2fc83b9d68470642b2d945e4d8c9042dc45180302047c435bb500673065023100997b37f668721f94d24f266598cfa42066ee584b901c5ad6cc1b07d4077707ae6ccf8bb4a17592f90ab6237b5c053246023038131e67aa47d12791bbb9e61fec22e04c51009b3f24c95907f85a323fe6549af1258412ccf1aae2d1b2ce7ff7bf68fa0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f588ec50d9a724cf260602e4cd5cb6dc8253461b2eac62966573d6501951f8d40cfa24a8e256f77092081a0ca5e37e5402305aa30195f2fc00b9140422e797b2f3fce0151b06a274a454a338a4ef362fb6da2779b1e925a76b587bc0b994a66a1c170302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a99ecba7e3267c4d634fff609762d34f9fb0da9003d9acf5e60a280edf3b6cf8ccdb57b39605f4d04aa0b3bf8b47136b023100e820cc8f3249f8be360a0f931f7d952c7cf24bfa1cf95cc52c85ba01e9fab747c8a07c67f877b4b86901430e80cc77830302047c435bb500673065023100e73360fb7dbc5df406b081048ea9dfb3e0476e258ac87644bcced0f7f3e08022562fa7ade7b5553a5c4634903250746c02303f20dacd2374dfc0a6941e01a9267ff4621d126791215ae45d1db2f2ecbdf674e0a5b0cf0dee7d2736b46816fec966f40302047c435bb50067306502305354a9f813d3f5e15013481bb9087c77b3224c146ef89a2e5162291c4cd734b3477bfcd51230e8b11198603f838f1039023100c4be35e58971a775812cd8a932cbc89ed87e86c8a752acb53c1d861d199f90dd717c6c6c6024f96ccf03a707714f44ee0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008ed7e7d09eb3b839676573930bcec4db09bc5fcab9625de9bee26c84414e6eea58e181c5c7b2f2f900e52243aa86d270023100d763b0dafa4e7703bb7f1d702b2c1ebafb5e0ea5603a9c4d0bd4650486fa9ecc8023070a3a3883736a0b1468e590ced80302047c435bb50067306502301a1f78fc081fa8d62e945cb100be995fe059e1fb199c454396c64b93fcc57cfd7e48279cbdca0477430d5b9e53eb464b0231008913641d43747063ecccd435af38622499c3c0d3133974996ba0704332ed818000acc7e56aed1e28598d5533da4d59a80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023045688a5c91c56d80986f950c2789e3edb1b91a04bec38b1984b2c0228b8c7ee5fc74d7436556ca159eb8ebf1c881f44702305e41e0ffe557f565486b7bbcf54a04d86f23205b6f146842a5112b443231927007b339050dcf4252bcd9a3b643f8c9830302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a07eba43542e42f0bc7ae983c947fee6548f2a6d9c46bf80f04c947fc07db4bdc97a89a3522db0d38f1b8ca924c2d53202306ed2a406df52fbc754f6540e6cd0cdd9646d21b3b9a17cbc12cccaacc3d593297118688f13c3c86f977f6adb901796410302047c435bb500663064023064828a194801518b8c810c4e7e22f585f03bf7d0e158ecc82f01a7b65ac7bb0bd271421f0ef29f640ae2cdb08efc97ca02305fb2cfdf2d380e6ef0f92f3917e09b3282b4797197cc85f61d7aee490e363bb112429e9c3725515ab3a0463e85367e400302047c435bb500683066023100e2d15d8fd289297904b56944ee5ecce1ce979f2a0af3666eab5a4e3e7392a044028ef9da43143614aaf60451c5232133023100976d3a4507e6ed2940e60ccb0f3b932eaab748aabb5aa3af1f723ad33ce57772e36cfcb73fb2ebb57a92d480b77170760302047c435bb500673065023100f65993e5c5a271974949027ea46431e7b6d5dee14e372d63ce904b30501155ed0eaa1ea06a967ffd5062005a79e63ed8023063a1dd5186eb73569cc83c6070162ed77cce0c8b20e34c40df08ede600e7dea15f461293049218f1f833f1f493e022580302047c435bb500663064023027240f3ff6e63e5175f05199f5e9decc852bc68b17b4e50257ef53f348b58d170663fa1da8b23bb3a2717999c6b35f7602302582d7d96c8736d394a97a0bcb434e314b3d214a52ca56fd5b9bab73062970817508809c1f8ad73b7622c5f80ef143410302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230189314664252fb4d79c551df658dac864f9f3b7ba780285e52abd94c0a971f535833c2d0c57dcf5fe96ec73926831f2702307c080fc6bc15f3a668d0e112aa143ec502b2c1c901dfa92777b214e313c5d9b11990453b38700034b1c77dc3ee297d9d0302047c435bb5006630640230743bc55073765f265998966421c092981ae80335fd786e425f973616b6f168a376060f9b7c8ccbe75c4fe3e4d639c5b302303963781b2ba4fba3361a530679a6a6837a16512588876a11b681ee00fbf0cb66b525a6ca5d6840b0fd432e4dfe814ca10302047c435bb500663064023014bdd52ca2a3def5ffab73f5f3f3b724555f2bb0dd049c6e866ca42e4665d621bdf3f06b123b4e7374c1eeb3a2e42d030230762e3318d99c301f549ce86e84e9669cc553705fa4006935d103be26daf74c0322451fb0bffc8bade42048ba0781e0520302047c435bb5006830660231008264366798776a4f1dec72d25ca07fcb3301c4c390cb4fe7139e9baef579531cbc04b14397b8ae0067291d76e08332c3023100cbf7e3afa3d5740b71fc39b0b9ce842f056b722a755063e1fae957b2b4cae904ffd8f294aeb8a18e67f321733274fc7e0302047c435bb50066306402300950f2433bcfad87202d330f7154f98a0f057d8b6125cdb3aebd5c4306652efbd7f30986447f61d619f2f362678961b3023046eccd3e90c7ac7753a6847760a49e24ac1c893b68b430f07cc26a8a13c661827821e1fe58fb86a500dd7af2d9be41b20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230361d0cbcbbc8f4914db978a4babafbc23b20f468ad7ac338b5255f6cc8e716bb893477b887b32ff198384b208e46f0b8023100b851cffe7d7c62546fd0fcbf1d45b75ab2c53f31a4b3774b79a7bd674bd2e843f0e5172c6d8a36782fca638e096424e40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e7c6e15f53e9004073879f20fc9fd38d4ed7a84f2b7bf701eed3436c755e3c91a42ffc47141d9c34f025f62575918601023100b544b2c37e89e42e18f8598d6bcc4b9bbf4f9f13083b3a168e6b3d8b6211782961fc6854cbdbf214290b3886344a73b60302047c435bb500673065023100eb74d4273137d8f989b0c1cb83fee0bd16fb320025e99c6994283b6e4287c57f4b0e1ef391c0e8c4b6fbe005d1fd269f0230579cc95866c57d0c9f5db228318b4f7eb21f2507fd0e78d956deddd45dba49d6c9e81f4b315305ef9adb1ce98e8f04980302047c435bb5006630640230608efd77a3b1672644d3d0518d5d85ec18222cf14673949ec84eb21e460da003edf31175eab2b10f18c5ad41557c9db20230649657f360678b04689ee5e0e4963045b7757c446b9716da577143351a20f0726aa07474978bbe656f2bf582726025880302047c435bb500683066023100bc258694c1a7dd33907478215873e89762f02e505543a5b9e3a45d2b241389106e83d147f0c16c5cb1c0e0d93892cea7023100e1f8423036beaf3b12a678111519df2e421e32e0915dc671c0d7fb0f4e2c934786645035c6fc585a9b509a496aebafe90302047c435bb500683066023100d26bf2062b4c04c37cb64ffde4c1476ec9d4ab462c256c3c03c8721f51a8ffe1e33f1b8d934a5614d7aec01af7d4e4110231009b1adaf900c7df0d695232592577018f1c0a7e9ba0b085203b7d31457fc19c225955430ed91ff80565217eb2b471238e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306d5939327399b00241aaa167c46ecc97d5d8e0755444a162a2614d5b2b3e2e895988897ccdddc51e5d734951b2ab6615023026495b6acd4dac068090bf2efdbdd3b6c7bed172d421caee49648035742647cf5e82289e034a225b943b1f1f67bf7d030302047c435bb50068306602310097873de01391a9745df2c5fb065f3f6d59ee9d3a0e4737fa7eeac1d21bc26e81dbc374666a6ea5c9765139ec32d80e18023100c9ac610d2c9197d38e37b7e38409fe16289b8003325b5887054eacfaf3881b8cb4495407bbef6ea180b148ea8b6513420302047c435bb50067306502303a07a51bf5d280af88d49e14e99fff99ddf0ab986d2d61f9e3c097fff4986f14ac5ed70cc6f83c2afdc3dee24d26224c023100f763fe4fb6f3dc0d07aba79e731b426ffc837cc9f36d77e17b0337e8ec6430775b89a2b4121ae89f4d3066ef6a5cef5a0302047c435bb50067306502301c4efd6573116d3945b390fd69477bbae97af89454f0f4b6a7243960a8157725272b1aa469c6d38f85e800d1e5c24d66023100c975535f3f69f703d8b98cc0002be0981e40e58e91bbf9913a62749fee9e64e64ff6e4c4929c70b22d65ebd80b3646ca0302047c435bb50066306402301efc32ca90af763acb3bb66dee6babb07b7875db74983dcb195cebb140ea90a102797cb4451d5e35d36d214a9145dcc602304b23266b2a481c39c4bd39039df7b95f184d35d488595f9073d8a343d6e28a068b72334f8d8d7745b791ad3f01ab4b5a0302047c435bb500673065023100bea5bf0efa2f363e6b0e8b991ea8b843aa1f05d9d5d7925bfb3b476f557bc3a4953dea433d32d47f4439c9afb8286ce10230268b4c5597c327081bdb8b4ade4b34617b59c020a015700043ec844dfb91d2b0da0274120f2f6c267dbc222650e636b10302047c435bb50066306402302d98d668c4bc73e1869f657352fcf6216aa605b89472b94d8ca22a6ae82d27fbd8070a78e301996a201c949cb4f0b194023075589985fecb078c372f3ddbecba72d793e135540f7ef06feea551f00429302ef30473f12ed5efe8ad6a65576a8dbefc0302047c435bb50067306502302c98b1b69e126131eec869ca40b7b7f65805d3d4834ed268a9d3f2d10b0e798fe19d59cd1d3166dd6a5362be55a36a61023100c614a4714523973223f8c3e9ba2513c4b3f44146de801834334d758a66e1ee0574a1804ae36b1235a0f020a7db1af2d70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023073b33a91605fe5a2cfa53f4e1340543b9f82ad9ea6063c2e999287eb95435f10f4a509c7dbfd9bc0bbc740c1341165f6023100b854c9253a6022b183ab3ef2a8c22c2eb363dc568fd34e7330b0e971631a7080ce30db5218cbd06809a67c30eb9537780302047c435bb50066306402301dc08d8986584c8a7d422adb44bc6e5d5f0603f59f61c6f77ac888b0a122d86b2565dc501d91d7dea6f637136ee39c6702303c1f74225059ad11fa8a30bcbe7ebff8d353d8ca5ff8dc0113ed293d80e0407c43fa2ba7fe20eee2dce1017ffd0ddb670302047c435bb50066306402302672c0f792c95d6b49e67096bb5b3579aaf79da86feb34947135ac5c488518c9f7795880f2ed6f9a6570f26d64a8a18b023022da82c2c308ca6e52a1909274f9e98026e57873d19f3d70074f3fcdd631a5d07d87421cf3d0151353be2693a5a8a5f60302047c435bb500673065023100e4c45470af39f3a51a9a74501f438d9e9cc71e7529552dd79e810e646aea9a14d8f249670d62962b346c1689bc689d1f023025dc8f559510d16275c8da9c9dbeb4cb21f79098404a63ca7d015d93e4c8d241556847e01396557fdefa27701a656f1f0302047c435bb500673065023100ad98074e7a129e3c2c221c12338cc7c96e04ef1b0cdbac247862cc83c3371776c511e6246f49d476d38b20953356d51d02300220cca1fd5b16c4e5218d164dbb7b19b1b618085bcf958cc87ccf3b950fa491e0f254cefcc96d163f505d527946c27a0302047c435bb500663064023036f51445688a6d5c78d39b0698c4b0f333fdc291feb68e9cc78dfc90a2f14a1044b4d344c7bd2798995f5fd14b63e5b102306b63fe9240dbf67b01be4f528d37563948c834d3f435583ea40edb403c42792aff089696954eed18e6767a40d5e391f40302047c435bb5006630640230759c342190ff316e41f51954782593b77fd4ee4d54c146d492e146c5980cfc93793daf589d67a57e71a85b4742ba5c9102304ce67c14d0e032ec972c3c6b17b2665df1e11741a1baaae2578630486edd8517ebd4c4182559d18a21226907c9a33a470302047c435bb50066306402303f7806671d03f41183f812943ac0d87006c0f1630c9e11e6d0d4aeda6706c28b9b8714fbf9c89c845611825f73b0a8020230610b527c7e44edd368d5b53d16a7f5de79e864438cfba884db91a814b3049ee507dc9018e905e76e97c78f62f4d3f5e50302047c435bb50066306402300f588f87e24ccb42563b0d9ee8a21dca917a70acad9e604409002b937650f532779f1e1e95dee02fb48f73ccae88344702301148d1810b1d975202a534492f9ab20cc8f814538672c5c84faa831516e81163c2e29f3d58a78038414f5b0b450c1acc0302047c435bb500683066023100b2b07304f2254995e60c31b5736339cc701b6550f2b794ef12923addac849c8967d31c2b14add2dda339af2a46d70bf4023100caf336ecf71e4b2190a1b62ac32adec433d11416eddc0c8924dcd9318a68fd6e2959494cdd595409703d37f7bb9a9a8f0302047c435bb500673065023100bd9ca31402df94e61a72204f5ae6cc68b2117927e8ffff747d3b67001be369be291348bfa2c3d73e7d4d7689f1a1bc0002304278276b4cf204eaf0df99a9663fdbe2ea7cecf780d457c182a0e630549dc09829685fad4f3764e8b8e9aabfebc8a2cf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b95720ec3ce745256c82d632cbc62e0d2a3ed9c9ac5b34ad287aa451f053ff9105de0340dbca87c5051e59e343b8576402304e9b087bfd5caca319721d08df1747b186c7d606f70cb09a1b74a0bab23c8b0d14e35cd147421f22ea8afb66754f548b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230767d5f3fa867ff79d36c754823c716a5892cf0e15bc6331cfea34bf7c21fa8e3ef6c8309b4aa65f9f97a480bcdb8adc5023100f8a8daf80e301d06401b68a3f8dd2a1bec870127e544bf25e0263dce8450c7dcb13fb9b3a6fc72dfe4e11274e8a199890302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ca24139a2140d6473577b26a207f58b5726c0a66e64697603f992e8685b9dcebce2de94fa396f6d5091f17b5052a6f9f023100bf770cdfec63badec951bf99c3027731c4f23056004386056f115dd42f634dd69b54ff399ee1aa99811af5fe2206454c0302047c435bb50067306502310090ee20cd303cb09f3d457dd54ea0f7530512461a416e04135a0b870f6ee2d4bf348952edde2c6ce90e80c17f01228a4202306c6544fd55dadf3bf6aff6733d8d1526c8e4434aa2628dc556bdf290679e94b69f281224393577a58c96135932dce95c0302047c435bb5006730650230705ca48cf7ad0fec69429e0e00214a6c732e1c32b08869fdc6cbd0099d75e2e63107c1902f2c952cb65b4443b83c46f7023100b0ec76cb16e896d5433f39be4a60f40461a88e6f91e39a4ee403db283e160efa13e08ac50200bc46bd1a4ab640bf3f0e0302047c435bb500663064023011272d427e23097ce7ea43ec1f1af48c7f3878b0d64667f16d5792ebf47623d7d22ce84a728f20751f4bc9af952249ff023055f8a1f9b25b13ae42c2e0cea39b90fbc67e6a1d3fc9ac3d381d6893a532d24b7725964687ffffd85f008a3764a3b6fb0302047c435bb500673065023049c8216ecbcff211e70d2c8706d1dfa643a2e4650d6068bea9a8a50db9354653b1745dc28f7e7e7238e45bdcfe50b7d6023100e75cb9fe7c8be2a04dbb45d14b87faa21315d61e8f424b4b8a0ee6cab9fc316ff6519926219442b1eb1d878e5a185c470302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ec0c05a335a930b870d30e582e112f22379d9ba7d72f5c9cc9ce608888df48fa65e8fbee5dc0bd2f794ff0352dbf5ed1023027ea171d299588cb2a2612145e493cc6bd021da7a26ea195f486d6b42edab4e088fa4bda690e47ec5d04d6490cd5fb160302047c435bb500673065023100a5dcfb89c1048d0a4127e0d1b9df82047f9bfe73763913849e3776f657784082ff6751b6886111b69adc9113b1539e6b023032814b1c66b30ac1909d79014f9e289176e02f18c37cffe0b352476ede6d516d82ab627b877aca372db4b258e9dce1400302047c435bb50066306402300ea556f330339b0a5939620b5004e837bd4d0902e9b51616295978dcf38076a89847be3e041432dcde3feff88f7025fa023039e03b4a94e3e3abed370990ebfa6518a0dbe04c01780c7dd4f60a7f07198f0302fd7a6b05cb6c749b7383fbfbb6e90e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b78cfb40c48e7430944772af314a19d151b151f285517549a699dcedfdd081b472edb990a7ea140bfef2eabde9715256023100a05292509853f67eb980d5e6880fa735be3f8baf2323a9e17a63201492c0274dca833d74c92c8eb456c7ae3be0b9fe100302047c435bb500683066023100a146608341f15c5b7d27fdedb20def1646ee0b9c27735cc1130a193a2f8873e54836cd6863d55432c695ff5f4e6339fd0231009645ae59a41c228662cee2107f42db513ae32fa122aaf9cf3e594eecdce2931f0e40e07b67c1f5d7baa9adb41316f1900302047c435bb500683066023100a30915d84f6d15a7f1f39210c39194530e72c0a9c6adce74ae7a01fe99879f9bb9560dba641b76d58e953ccdabbcad77023100bc1c9203c416942127de089652a9a4f490006837511564cd349194f599376548074f305b9dfec6341aa54f701d450a310302047c435bb500683066023100b5d2e48762617c960786741abf24166b7456121e3da6efaee2d75facf3d24240c8e78eca72d8b43f2561f36d51aefbbd023100b51b96ac4695c4812ce863408029cd5436a83dd436ce56aa2926fd37437168f73549bd72fce0fe17871f02b1a8677d2c0302047c435bb5006630640230192f07fc45852e7f1ffd2c6dc70d95410ad81b400a60b8126522de0db3f1386eb999d1a0488b21e19d7a46ce1510ff0b02303593f90bc30c0fa3c50424035bd74d3471bfb0477a8e3b7b6b334d25c7f95ebc5d31299b0b1d362bddb3ca8892e285de0302047c435bb50068306602310093c446dff7371edba79df72aadbb00928b8f5e8dcea9d618d23d092220b5db736fa380dbdc7c714c2e05e30a280e6877023100aa628d10f445874ee46841ff04cba8db85cdd611ed5c53e8c551f244b79be37249de51d172c23ebd94450214ad3e5b030302047c435bb500683066023100872f0e62562abcaea44118daada48d878df7242b7aa437ffb0a2da1992b901d63fb985e8b71c9c3c6e04d5bf4c86afd6023100bef71776ed2bff79e0c1cd56c43d32c9db2c096b127b2701101698fa42f5b14e489cfc05fa0c0cdbc8d45ecab058c8770302047c435bb5006730650230761378fdfa98258fe51d66230b57319bb7356dc52a508dc5a8c95cb3e9d70e4b1a123cd734ad4e3969511b9ee35e72ce023100eb083552a29a125013e31de41daa506545d661d41436a1d3143c0972db9197d32c1e772b51a514376317d267e704416b0302047c435bb5006830660231009212039b86197075bb085e1cab6da0f46e64aa1709de0e3fa42b2ebf3c39f004620a6dd77f4d7e94b47a36001c91b80c023100a764c9e51f3ef25bc95216a9fc17bd5189fcc31445567f221419c0ab053d0e899aa7cf00f182793070c827bb8151d4290302047c435bb50068306602310087f8312c5207a03634a5f1e3e646438b480b88004a70cbba6dbfde1c049add25d8e489c70e4a14379340e83fdb0d45c9023100d258d0a17238b065f302a056359d1b175d04c24cda6a134f8a181ee40c92768dc6cf98fe423e7162d9891aeb57c2b1310302047c435bb500683066023100d7f3b59a0cb3ec1b23452bd373e40cd8fcdf135e3cfcd6bf5ee06014b2a6c97b37090326e7af958c3a44e112d635e4df023100c43766e6854863d06c6cf991b22667a0f0858cc6c03a9158a5ffd994386f275b8eb1d02e983f7a7700c55531952ec2f90302047c435bb5006730650231009fc61ff30162818366c683edb84d408d9518830232920d00284c4ef23a5797d4d1081ccf0bef3c80b232a94eeffc799002301c984440f778b1b9a7119f787be2b4e55c541167db89f2f2cd9fd47bf7273e1fc71193443d288ea26cb56222332c38c50302047c435bb50067306502303d96af01c5c7b0e8cd406da6ff66ae8c0e478322096506efbc6798a4b6c20ea59159e2f24cc1ffd0ebea8720ba94c771023100e8c7046b2384b787ee70d1161bdbebcfb035eb545abf3ab3728b55922c5a68fb97bc4b404a320de3dfd0516d1997951f0302047c435bb500683066023100d175d25e66055a3a361acebd94907d1a90c861f71afc6a30bc96b63b00096a0be436f1b0251f47166253e61bd27a24db023100ae204f7bac00cf68611adafab7527e0939259e3856ed9ca8826b0241cf747f73fa08ad023d27861ac2610b3ee31654680302047c435bb500683066023100c3577b78c23492d922700f564d9132ec2f37344b3c9ae243448a059480bc6205ba18810b54b8e0ffde726e5ccc8a1047023100d17272d0355668e8137ba9c53ef93d95f0243a8704e2bdfe79eb074763095a0a2ae8b142144f0a7ab30363c1545e53a30302047c435bb5006830660231009c7ef33610726a03e87f0225beca35a466bde7fe1dc9f9f32ece40a276484fd29df6ff158163f920842574a272b81d78023100ed608993f6d630a21e2fb486f0177d23af253cd0468da6b5d404c864f85058f88864e75405a7c4c7205505e2b4f7a4b80302047c435bb50066306402307ce4132393f70bbfc06da64f578cb7fca4fa5955ce7a17be8752d06dc311c7508a6971af26913b056efa351cd28635e702302d64df68dfbe1211d2f16f935eeff999bbeffa154dd7a0af85a159907817e7537971cbe9b3764aebaa620d3c9156c16d0302047c435bb500673065023068268738bac8a552224d6b75cacfbb60653bf0676e9a9bae2e80bd86d36350e5c1d6e1b8ab5848c5fe6e8ea2e8131e67023100b79c530427badda45359598ccacc5755868c4035dfdfab057ab6c68f4fc6db674b09e2011775281aa5fa0809ba62bc8e0302047c435bb500683066023100dfc8265b1ae4e12d1b0769afcd5762edb63267fd83dca99cc6c5bf23a68813a18c597a7d77862cbd84ad195088b1fdad023100aa0605a8d7b6196e8a8ed2cff9ab7df9bf0b7fa592edfad4e711ce1d2deec54f94c3ceb592e7454e661320e1707a68560302047c435bb50066306402305c7a9c263fabdeb09bcda17bca08d0d11fa9c2f9885649bae825fcabe3365793dc7f7bb544271f85102bd87d3f0761bc023023be604f3e43c00fef17b88838eab63ba87399e0e16fe3059c93c99d586afe97210411072663fa5745e5bdf246f9232b0302047c435bb500673065023100b46f95c7ee915c3ba4fbd7c11d88d07ec975fbed1014313fd8e4ea00cb8bf6267c57c4f571af75e63a75553cfab700ce02305b4ea544b55f3c9171e9322909cd2376bfa624d48526b9f024d64c710039a872a1a8eeed2f2cec6f4ff27c9ed5eeff690302047c435bb500683066023100aeef23ba0ae9d50e6d28f577f83c86798dd27ee2ea020cb2f0e1765ff9fae0281a49c26513ee84acef505e883fd0a689023100efe43091fb0f0fc49b7ab4848b7114958cd4e5363da1e6c758621dbf396335f1dc0575663df49a588ecacbfc30e89d5c0302047c435bb50067306502306387ac46b80a44f35c964ca9e9cecab71a46bafd335ffed77763f8f56d0c84e94c11a23faafd23e04e03126342b7b837023100898367952b3e394a5b9b21a4fab7e0f737631b2299d7c9198394a95cb9faa7de486751d92b199708a69afbbbf620c5250302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023066716582f41131260faab6a2436717d766e3892c715bf8d0d48f9a1c93612f0cb0d5bc94d0fa7c0761fc858223a5943b0230036181b24583cce5b8d73e072026b4bde9c41fae1e882256be4e92db7a54d78658610515699e39bc48e3e49b2db2cf370302047c435bb500683066023100f6c406996120756c448edfa541281562c80a702e085eaf86049a023873eee5232ed740d83ed88cb296ee9a132560e90b023100f8bca12c1a20177a61572d52d3217bf447fcc1afbebacf58f8773751950ad75f4bc8a41d1455bd22e8cf7bbec650692c0302047c435bb50066306402301e2a4b7259cfde6826900fdaf689c26d86bfdcd4fd4224b00696ec3e4114f3e1d2e99a44de22e2278a8356096af0b071023043fa4a3274a96e4cdbe179361a7f80c43a02e6496915a1c1d53e1a0b1c738603696367aa2f5f5ff527d9c856d3eb9a360302047c435bb500683066023100a551ef4960adb3c58df1b834f651626556d324f9c65159a8219565242167560926ddeb23d9d43876da8887e4b07ce466023100c293df04108a73d7c545b1e739a7d942ab86ec5e184eb3836076b73803eea28b7e0ee4be83ec6e211d4325e457e1ae650302047c435bb50066306402302e7fda0390b9d4e7e1aa01aaf081f3b0821bb82a0b8c83cf9c4a19c11d5092a35ec880c7b5471a0ff0fe57030a8f5da0023001828e6755df4b2be8579371431a1a4b92dbc3cca1bc499c757af2b26a3e40d70b21660f28254b945dd9bf0660b4318e0302047c435bb5006730650231008098510973a39a019e325101a605184d7748ce00945bc875ec84a5e89321ab46c88bcf3b4c0dc05117c9350d7efc01dd0230278047a86317015d15b4319d5fcb949603f0d4c7907b5128dc26c86222d8896ddf6fe8cadb174015038f8537c24afb3c0302047c435bb500673065023100dc948f5f53c5ac00119a9a32382fc10292fae435810af221339b392ea392b1b3bba6ea1f6c460337d36edc7489250c49023036c2e9d0b59c40524fdce28cde472d957439fbd152f0d955748fcb7bd5704477b03a0e4cdf26e84c7e517a54bcb9de310302047c435bb500663064023025a98c3cdb9a84b8a6b578a00e57b565eade4e74a4f1dabba2ec96c104302ff39cc1a80b16e9aceb44e04e572550ac52023070d53c8f454da38c6617a15a20fa93e6070e620e1de6795f2b470c8b94ccaa1a0a1e17325ad92c45ec1c41a903609a7d0302047c435bb500683066023100900ed5b0f0ad70b1852ab6457c0db0b926da6d472e19e4fb4c3ec2a61b46c87da6ccf3cd190e19c58bb5473e44c8cc7f023100881177c0ae84e4b97c8cdc01f6f28dd10cc0e06e56910c9fd0d35b624d5eef5d5335256ef079a3faaa2d1e7c7a1f41ea0302047c435bb500663064023034e14bca631c4b9035bd39e48d2a82f8ec09791aab9b661b2037d795ff6c62528c56a3dddd6b5389eaee50b999c7c9e602301de1297ab07d1852b82803c93ded37e2affca6e9d3ad31ad647fbc07aa0fd7517a162e0d87ec99ef51c4d4c66b09b8250302047c435bb5006830660231009da80d8079cfad850e7e1e57cf5bc00b59a693cf161abf87be686dd1e4f0f1e6d81699eba1925df64c7c2a910f84309c023100d484203411cac3f9dd196f7d126068eba1dc168da74966a62f9ba7ec22029e3ee90001886e75def55337d8169877c87e0302047c435bb500673065023100c604283fad5dfaaa4408094e681771b8c50809c4047ad13f6c9bc121f7023500a972e34b9d6945b7034dafd17bdff33502305e500bc319a02da3e48ad28377535d792655c9ab038c9291a8a6e5e7b5bb29569181d9e19d94bd98a62787c2aec5736f0302047c435bb500673065023000edf0ec2a671a7a410d395c8882c71876662c3a562807cae34bb6d4f8d046ae693486c60ee517515f04bb84a6a16c0a0231008470353a91414c3d660ed5aae953626591653ed9f8a5c86e6dc8619f880c1f9cb42178aa9aabc1d09bcc35504bb3eb0e0302047c435bb500663064023057a61b33fd656809a9ff5bd7ecc510836f7ebb2247558feb9eea9cfb808375e6df6621a3995653ca9fd4ab2651ba2aed02304246ac0d1fb5d5e0909069f64251d0506353a60618b70b5b0035319f8153d8392f441282036ad843887105ea9bba88db0302047c435bb500663064023021dceb67c8c27ce1e871fd35f2a64b3efd9599d6e8f7466ed3f3f491a2b9f887a55d8f7ef1a39833396ac951a0c8430a023006a3993602b2d02f62356d37d54ffb00c5c38987052f6365c284efff78987561145ea9f7978f5538656a5e84d0bcdf570302047c435bb500663064023074d73c1275d8b3eb5f42a104e10d3ae24946f0dbcc1f8e19dfcd231db951be3f505e29934f23bde6f0728ae479c40d2502306e7c69b540837ec00cad659833b893e905272677e829c215201e243d865373d167ab3ed8d806dcee836c6c3208718e780302047c435bb50066306402303379d4238b472a3f416fb89371eae1e63da9c6c8ba31f8b8c3c40f0892e88eca62ffb102433e0908aa8be10e5dcb92f802302dba6f7d814119b06e774b9796f00c164c5ae06b01adcb61bd12e93ab6ce0e6b41fb05ae185eeae6594b30f3be5d7c770302047c435bb500683066023100be5bb0da9254a9f71543be4c48ca62986ca7757ccfa3c359f0bc2fbd286c58359c69429cd12097147be18054821edc710231009038db5d8f7692456dccb75f3cc4a2e4b448f63c110348edf60e5e769c2928fdb8922c2c4869565057090ae340b5cc550302047c435bb50067306502306b06e6d15b7d783e0f27c956c72cb96881236cf62c4b10165ac48c84a982261d244d3e3a7a2a74c49826e325019a5e920231009b24ae620542165dc5208a534175aed0507876a384fcf08fd1646d70e1529fe180064952b100c10cdf59c9ad7ee77d3c0302047c435bb5006630640230466423ef965cec7a359de3dd64978ad0203e4d2fa2a28f86f5684ac279ad73757528c8237311db15913c1e0d6131892a0230746b0a76daca5fd363db9fa97505280183225787177348a3339e7e8797bfd8c306c6354a5a37e8582077d888a78bd3920302047c435bb500683066023100a933e2559e1e0c9c227c1d3045cb5bea4c0367ed00a7ddd207e53fe9678249bfc2ae10f216f751ef54762bd31f7e0d4b023100982505515c09c0d11f3da0c99a799c9d4c5f490decd3adbeca07bf7b013c781872522ca9ebf83030f518c80238fe86a50302047c435bb500683066023100cdd0055f0dda76477fa828e9510a248a093976b5474891764e5ef788dd5d0f145bdb572ea250a2cc5d91bf04a7fc2115023100c98b892e7accdaacbb681b37050a95180ef865ac4b8f14af9bdaf196efe6b3ab11926611a8b1a80fbdb2321e750b6f810302047c435bb500683066023100d6c3f88e371c46839710dd26a0d27b5f7a820cd704737af4f512ffacc26418de0bd3559c43634d106f40035271735f23023100e1494045d32d30dd7b3cce9f87695e1ab40fec2fe9f21a6da9fc3735b353ee5f8346548fb1db77a6e7920040993a9bb10302047c435bb5006830660231008f08d2de81e476040fab617b0fecd5c535ee3fc2b778c6df5ca5241fc040215c08c9b260ad10f5360ead1ade7e29c27b023100d22db8080772b38eba2443c9e234e1a37705f64d4d4464ddc07c23e06fb2b71dd3fcb16cb1e04fac2a84761267a17c380302047c435bb500683066023100f5f65325015d27b8bb4f0c3cd522ee93b7150d1089da0920f82b1a6926f73d48c553ec30f6c5077dff8fe1b175985c0a023100a2c206104b22ecf4822dd6e26e7e8f9918895235f7c3461606ade1aac76b21f24c82db5af2b29929e6d863abe4cb6b150302047c435bb50067306502303327f0627ce97388dc98af78255137bb1b1c63249a05b1998b69929b751262df51f33b0cab9c1f13616c996c10694ad7023100ba196715abf55c0243ea76f6d8012eb80942dff270872bf88affd0660b091001cd962c0b2a85be12f35c405180756baf0302047c435bb500673065023100820fe7e20ad4ebdbd5d9e9637ebf065ded7c083011373c4da38d61980af3bbe15a2f24f09c4011c59afed05b585eff5b02305ab187b8b204e5a532d1a35f5b90023f247b8e5cf6990d8913fda7ebe9a69fd34fc9b79c9110c653f9b11e287821af540302047c435bb500683066023100eb09a255a3044a81374024b6248a846a9698fc1b55c06827cf594d57babd7c2ca01647be127538c2f49dadffd92407dc023100a141152486b4ade2dd4b156bd497b5c7fbc2362ab96be13520a6435ad6cace52aa5cd791f9faf1d5f5c513b067e2877f0302047c435bb5006630640230349c4a8b6c72c3947fd5646a2e8d13ea56d9222130af283ec1e3b475b23052c46c93dd839ea679c1528a6e2c0e27cef4023036bdc7f16faf53787cc8973490a568d9067f90486092eef2f190c8c5e178f89a29f3a77e78c64a6e334c5663505372c90302047c435bb5006830660231009e01a0e460bb7e61e3f6e2e57940c085aacd854502bf28b1c2ea7ab915e7236e7e4bed29980c731190ce61c6eb0500d7023100f164a6b407e5153df19f74cd0e7649584448e457679e0f9c27f0b74c8cfbb3a0579c0424aac608128b870c88d7a474c80302047c435bb5006630640230511a6fd529985e7b32d74ae44edb57fe83d0fb04660f26d0b2fa1283fe4336f6233a584d180096a9d6dc2ef45e972fdc0230438c3ba7a157bd9783abc2b3d4b85dce7430e4741068b909d166686a00b877aca158fe923b707b6d6f0217f343a6f6630302047c435bb500683066023100ffbd08ac609b94fd1fd178d1f0598603165d3e8eddbed8f4f27a17ecdf67e17ab913f1e689d2257ae9332696548e8270023100931ca44a0852fe30aff06eea6de084c72aa4fde7e8de7d8b6193d9ceea2a25a52f204df7d30595d33a5ad0560d592ac30302047c435bb5006830660231008c7d8a063942e9d4b292f92b88682c10e31c89d04cdddb7335d31492bdebe8f000f074131c4885d91f4df36d15c40dcc0231008e910f730b1095ff86a7c4166ce830949a921db7739332295e179696aab29cc6c58d83dd632e417a33a38fdcb00819e00302047c435bb50066306402300b937035c5c42a0c295efc5166710df20999e65b69fb723d21f9d6961b5c60489a9995beb27b2e348df596452051e4fe023011ab71a79bc2d4ff46e5b51c06ce9174612ad88df13c13516e3a2689e46bfb0da028c2cdf9fbabda510ca79f2eeb11860302047c435bb50067306502301ae8608104a7d634a6d7f31e72d0beb8efc2981b2d976e34ecc529cefdf8170f223c6f63cbfe72c82a71c1d3596efc54023100aa39fa9a3660f66c543dd93316d4aa1d211afa7ae4ff27e49183d39c2b7f6fabb0cc167204ccb507e3cbdfd91a6274810302047c435bb500673065023100cbe7e64bbcee271121134affa1d0205dac6560b3a8a0de7f8f6468f6d71bf924587775bc12979b6ab1abf194cb44243e02307f9a82d04a638909ecd59800d2fc45d959d389437035cfb25768d8bda7c83649a46868695f46f08113275d74930db9a20302047c435bb5006730650230614189f26f9354084b5ac1d44953d79d03d95dee4aa5651a7d5b3e92d154bd6063838e1948ba69573ec006ed2e62423e023100e137a7140086aeb7daab9eff5a4fffc6e5b8f37384321c5d856f71a16634326cc36adabf18729299ee8c5cfb7df9fb5e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d71e9cc990c532f9eeef02d57b162ed066ffad31eb9ab10133f15b0575469969be76ccf158cf4c49ee4537e3a014c720023100aecf9d0b2fb66eb6d4a7993e1cf077dbc3df3497cc011af3e9a94d4e2a705b594ff4f1765013a57c71e823b8786d027e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230595b61d0b3bd7a568f8776b1af1b6f500030c1d824e55779db5250c2bd0eeb44c8cd6cbd92609db0270c2a44a05f0fd1023100cef2d357b35d710ded71afa3cb5d7691ac900ab881b16d05266b83ef229329adfca858dc1b7725afc9772df9ce209cc10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304337017177a31dc2fb3dadc4d07de04d60ef1afc1169330390742af37a8a8dd290b3d0842958794470b3971ff78a0830023100b5bf684c660934a149a8def75e5e455c21342310f868079a5f0a66030d4a65b122a3f03e79be4cef14844a9e3fdd69fb0302047c435bb500673065023100dcaaed6b11859bae12437a8ed883611bb292dc75c28431a21e79b481b0d49c20db267accdaca4ef8120c59f32e2afbd602303621bea67a1f5055893dcf19fdff35a8d90f19a1782c0555436779affd06d78bde7c2005e28c6f5219b2a3dca76a09fa0302047c435bb500673065023100eafcb0da3b44c6ad2932961c47f260537a4f9732fdf82f97392ab45553c368adde248ccbbfefed06d98061ac9a98fbcf023055fd08e8442efdde2bc1e4c3b344b8a4aa2ef7cf2fde906666a2c76ac4b845008cb2177823fbb8ad59dda130c119fd670302047c435bb5006730650230582a15887953ac6ffe7e49ed6d13f1a7cdc4c421380fe50feeb54f06f246b4b784eaf2a17f40a32006bfaa057fceb014023100d311af4d84e57d37dbacf725694107e906245842021c764dda26f44dfd9e99341b573d76de76e658a66de5fb29173f1d0302047c435bb50066306402304b076980781030f91fd21f8f63962c622898adfb45a433e97f26727194a93015ad7f0ccef5755c71c2572ae102bd4cc202304c0e1cd9368cafe8f9b26026bc52658a5fca60975bb93374d15b45f684fb938a7cb307671fe3de5c35865568dbf703b20302047c435bb500673065023100ec32195a94211a8cf29c2783d50d521a05bbb9ca022a75d783dc9ea47b592da7960ff24ca0d414100e337427b5dfe01f02305a81ae7f8a1b44f303dc22a814661886d9ec26fa6ce645f42f54998e5cd6b4dfd3818a0a0ab81dd2d37ddae7ce3e42cf0302047c435bb500683066023100cda805de6a589b943bc819f1d0937481bd904ec12457f11b52bd655005b2ba5d6f523965ebd423a06ef1abe7519803c6023100e4130570e6a3984d2c62e48d1b3f58fd267cbc4b5b2f6fb459f54bd6fdb81cb501521fa852080ef26ad44fa7a09fee980302047c435bb500683066023100e10ba1f2dd67d6a1e2a6a3cc7f9accf87c1f78468e1312106e8cf689261b6496001d62f3eb73ec2f681811684f9bfb7b023100b2041988cb7878da8280e5a26196907edbf686ef2eb07fe367fc6bfdf5577e1369e8dd2e6805e8c1867b00fa07f2a69d0302047c435bb50067306502306d5d7ab262276e65a3a37bf6205cb5d91352e3b744c38eebcaac8efcfce8282417928ef17ee1d6c0d139214e3d264d8e023100d8d4e3064ccd236ceda0e454210c359fa97d127cbae7e2b4ce73d0453d574cd0b487e80e9efc5173d1f7458d62a3595c0302047c435bb500673065023100ee802cfbd9d90efc9048a6936098358167139567bb5060dabb56ddb028cb362e6182b1fec95e9f8fcf5b69a5790e9b36023040b3cce5d69f885b7b7dd421a026109a1777a1808851c1cc9ce54a40d809dc03e4d30beb7d3d408013bad3fae6cb5f0f0302047c435bb500683066023100f243a3966c6d817bee31967d9f9d0c6af8302cc15f34175d89736c1293e26d8b7c859b56c7b71af570b65476f5305455023100e8fc3b76f08022c2150250169d083ed23a31507701c3492c9be655129aaf0f2fbb7d2f8fc65527fb4d278d57a629995a0302047c435bb500663064023051a4696a9fb52ce71b0db40440841a3006d53283a41069c25f85949e705aa25c00936ea3fe9e07f913c8969dd5cd3774023058d3bb6a307f06d9af02c2db9d81cb4d2f3dec0e4629b2073b4e7df6d5e5b378f850b33cdf1dab76e781f35ede07635b0302047c435bb500683066023100c8444b42a6edeb87e1099f2a07f3242fbd5d23ece51a66a09b7ffe9b1d625db79adebbefe79f5af750eae19d7969f4c1023100fb2c60e5502fce3d2cbbb9455efc1f61ad957766f4ce813a1285ef90bd806457f93c9a4089987683ec4d12add1e625be0302047c435bb50066306402301de5f6fc925f60010fce2ae7314212e3dbb197d9d288f3f5f1755829d8506d7fd5b9704e283b9eddef33327422f33aca02305afcd8abb7ebbb268fccaace3cacb4d52d9a479657c21af73fc9c008c152cddb83e701f68225b33565387c3e28a73d620302047c435bb50067306502302329907e353169bfb7997ec2441b791e10099d3f1e843ea33c4c9eb0fd97ca5a7d922ace7e3d9fc8a3712333d36313ec0231009baf8de161fe689e4ca1ac04eb3178700c3785f00359cc54eb6719c595a09253f0205861ca3f6d38a009b6d4dbf164fd0302047c435bb500673065023100f80bf4ebf168af2d4f5a799c6e69e76ff4a2999ce95c1f8ea5fc04ca6c26661b03a10271aaf40c1a3171229da1963852023046f93b68b4f7dbce326b6daba93f3db1a792e42939819173d4b0c946008356dab00df1a6c13cd5cd9536747afe4afbac0302047c435bb500663064023011b9c627c0ae392ac58a55a14ac704c5ed21ba6b34e72f3d457dfca5946b4b4aadb5a9f918a10f315f54741834f2a7fa023067b2f9205fbfc39252266947ce69d8a67ba04c0c28250705f4ae40cf9d9eafe49ec3db1c2e64c1fe49d4c7082b35b2810302047c435bb500683066023100cfec9ea34171b89cec482bb8d900612aec3f83353f839b3a1fdd6aeb75150a8ae498d20b8d4e40343bb95be97bcd1399023100954df311572d5629d2593e4fed181211376d73a96c450e5dede5d8e3f87dc43938764481ebd8daf4e59756d20ec535330302047c435bb5006630640230594092613d07e2cd604b359f5a806758a48c9b975578f0ffc78e937cf4a3531a98fed533aabdbe1f826902801ec596850230798832b457f9621aa31a2ee87289860b29dcd97fcde43116749528dcaaece3024af1f7f5df07a2285cf16b3beca113cf0302047c435bb50068306602310090e2e5bfb68d6d50a1660ccbf2ecaadab779d42fcb2eac869c6cb7b640afe710bb2562a542854470e8d2e1649b2eee540231009aff94e52c287bf070d673d34214480f5a511793d53fe3e2f86cb956a3515d89a0cec279b595f5614d51304543dec7c10302047c435bb500663064023068f3379d8c4a08ff244a2b9008f10f5c6dc85bcdaa6ef4666aea1dee631feafbd0cafae91ff7dd26eb5ef3463e4f4e8a0230089bf7aad6539bab34232ee64e95c9480d01bd825db72336851cea0a25d5072d22fc51f6969d874ce9b06527defa65b70302047c435bb5006830660231009a562767e22036c337db350896c73bb529412abd9baf13f8059505c07ad9837d1a70163dea0c787be2f70c51b83005be02310092785661c75b0c3eff4d0f984cbf1236b8dd276e4e727d5b6a4c5d20085263049baf4f941c48ac2180007da934c12c040302047c435bb500683066023100edf8323104cebb4fed50365352b64f32e0a051c50a8d0022a5a6d8bccbb119e6f1488e22fd91c612c17061723e6da43b023100b4e5b11234a66cb1790e52226862941e35c169d90edee22e10fd5be0e235c4ff7b5794a0a34f2c1e9e177b48049e9b940302047c435bb50067306502306173224dde66b53c73b9fa747b4511575ffffbbd3baae2b7d05ddf3ba32b106c4f98f82740c086b2fe6c113a0ed92625023100c77f96b208e47a82f92bf378d4f715e58f2f4568787a9ceb5dfd62be7fe3e8f750e6cd4d19adfe6ab1556eabce3c299c0302047c435bb500673065023100ccd6b6e1b909ff4fbe08c38615d374eb9b9b0bb5b4cd321ce19a77e21bb5849fe4b8190fe84fcbb151df28fbbcb5b46c0230724b109dad23dbadeaaa566eceb320c8c281ccc63f1f4ec0203cb6d4e15ee7187a642f04437edfff8f003a061a177a6f0302047c435bb500673065023100a7fcddebae74d25c79785eab00c5c78cb016cdfeb0b0dafd020b998def66fbb8988526c9a15936c8674f8db5c3e0928d0230743e8e39d6e9709d4705c8a6c9179976fcc2a89fa6ee1e47228eaa70e2105934aa5a5160d6ab7823c6425de63a252ad60302047c435bb50067306502310083094111f73587897b1cb51403a25e325a8938a5cb000e072653b40a6e97b18f5d772ea1ea59200fda076fa8b6f2369102303383bb043ca020f8d88e57bd1e1517f54ee4862f9a79ae42779fd43221dc2bc8871b71133faca5c875516935370950680302047c435bb5006630640230190626b95719ddab363c634c88358a4f31c08f9891014c086ba97f271db71ebafe5a11cdc8339528ab761be4a8810c710230414217b599e8d7b74dc3afd3fd80f3f464f2aeb662eee73d368c93aa4ad017f56b32eb9ad29424f593579a3df1ce71650302047c435bb50067306502306c48c3759f0a38cf09e7411be749c1d5091d9094297760f26a181cf24e4653dac86dc919aa11eaba2fb4e1ecb07a16a5023100c995b19c9dcfba752b3e5d48ddb28241d094b10179fe83c4f83167cae7e2eff1a41a3b22fdc35e3a2e40a47f5275b6a90302047c435bb5006530630230468596baaf79616286a5ffb808afbf6500c73d350960321b6651cd802b76b8a4c6488ccd21a607ddcc3013697a9cfb0b022f7cef6ac7e802bb54386b4327957eb72d1810d2c92140b9f0875004c9182a03aa4395ee30fed409a6dc6fb861bf16b50302047c435bb50067306502301d2c8c0d3f6c68e8431116d08e0b2098b7a614779936c9080c5191c808e931a2def2ae018776bbbdee84b19edc396627023100fe7a512bd871987f1a10d988346f323c3c908c79e71c963bd3d11492b38542ebdb159c4c244c044e523fb97b6c499def0302047c435bb50068306602310099ddecc1ded18ba757050cfb51b763f8cc8edc92249ee3d8271e0be13baf3eeba102bb22c6caf2773b5f2d75e45cabd7023100ba35ce376aec0ba1f277fa682441efc8b711c8cf7ace6a2e7df643c4e9eca143e8db9c624d117d37e118c9362ce4378c0302047c435bb500673065023100db3d08a350fce00e8ef06d30c189a510b7a1f4561f4346d1732287f8378f1802d13395ab7724f9a0fea35d98ed89d1e00230432385ee9baacd323d4239c8e0043884dc72866059647a98b4ee02e4770f572725ca7dbc5d0ca857005d683af0f5a8df0302047c435bb500673065023100ed6c6617fc296b126edb563bbcad8b69fe9d0fbc470721920072d785278deab4cf65776693e270dd9cd26d6b648c2c390230298ed853064eb1c6c3b9660b0613cb27b4a91c91520883b409654097434390c0973a289589f68c7c96be626abac213f50302047c435bb500673065023100c3314a0c8afb33a5d8e7aa7ef7eb5eb4a46836a93f8e5c1c075395476b89921f2ffdd77999acc7b66fde360a1239262402303b29714e19004966804113d3c69616b041b56730aaa295af4f4e9d7935567ca56fe230c844978def7998f9b60ad755790302047c435bb5006830660231008886f39a0af07b1291cce891bbc9eb970b86c3f8aad317522354edb09eddf208c82009d27e25669ff5faf40390de081c023100b31b906d99306ef41ee27112d42912cbafc9a8c5b3b4659420a34357aca1866623eef59484773ef30afdf1f9db62afd90302047c435bb500673065023100ab34803197279b698f84ee6461eeae95579f296565d7f6bfce2a126216841b59a3abc74f58827c4a28983e25ce2f22be0230737406532ab50b498621e6d03fe1f39893b950cc82041b387dcbe63d3fdd79b4c092a6301d8fb18e77d16d13458114d80302047c435bb500683066023100b499cbdc90dff72dbf6bfd626aeb0f5fc62a6a98a56ac784b133fafb5f03ac56f38a51a5f5a6f42bffa21705d925bebc02310098f7f158841d95ab183221d48f88be1559c95ccd7f8c8624d161e33c72f78c42820170958f97075ee7f2a30c85021bea0302047c435bb5006730650230152248cc780c15a10082de7d82571dca2cfb34989aeddee7edaa68aa39c35392ceb47f07c5c0989af0c3646695c1873a023100c5596e04860c9fbe448514acdfbd1bcc820526ad38beae6990788b61e720a2e02d5ecf3bfe2014f2a690a9ff5f7753e30302047c435bb500673065023100bc2267f5d6ef1f88c8ce1891b83b18b2e232c724903b2b305f723b692e6b3afab76b87e54719dc6a64dc6edeb7a6e0b6023035a4a615febeeb55ff8de791fe9e0206379822004e0ed45c3c974f3796b1b181cc1e9d93af96bda2b1dd85ac34cbca010302047c435bb50066306402305b0bb99fdf9ffded370947c2b4cc9afec25fc91f86893c94cfd5feca671a8537beace5685e7190144ba4854f55b53db40230721831d215a0e733065c95600845a37f4b8311228a3bfb1f5b14abbb289c959b2453a4842ee6ce81b82b512a4b7d06030302047c435bb500673065023100ac439071c18ef044470d286442dc00bdac319a8d8818504511a6a65303bd5a22b1b34d8d315be6d97d82061d7bd8069d023040bb68a9630a3d289fdb6b6348f23c5fb29e98667fccf59b426592dca34460ded0671be474c6a81c2c915f6306bb70da0302047c435bb50068306602310090e851c2701a38c700b344ceec767c3d8eba64f4f299d3292d7b4c3d78fff01233b81ec11f413792a60b37542ca50e61023100fbcece332c2edcfc736d0a061db8f8c65eb638d90c294bfbdff7112526528da28fbb8971a1943d90d069c729f4d672950302047c435bb500683066023100d1fdc4fdcd04f8fcfdf7e39e982d61e234441c0253086be3b34bdac79aaeaf9729e3fbf84545233e7107bcdd23adee6d0231009c9b099d56823f0edad002dc865d47c4a615f77838c1340f093a0e6921fc68332926ed730f710ca38e279352fe68d8740302047c435bb500683066023100f3fed1786cb66fd7d10917de75288aec6685f09e84cf848d235ef222867427cd276ae5216d92b581dffa75e1111dc481023100c72262d9dcb7b02536505fba7fba8306d83b43e5e7657b6f51f01bc14e9b765b586bb5dbd34927515e8cec16e772e4ab0302047c435bb5006830660231009c9d9fbd180749decad50a8d3b7ca03a2d882f5f9eace2f9c5a496bd13e6b61284069b08353fe3635c0be18c0bc19d88023100d4a54e9f68ce9434094bbaadf289a751cc3fff2529ad6a241b964eacaca197c9566dd3d1ae2f55cf47d37d4a4cb92f540302047c435bb500673065023100914d40bc8764de1aa25458ef48282d47b23b0d3a96e821f426360acabb65704e1a51ab0a8a75690466824ec26d4f665302305c33c8d5e9821108e5d2377216f46b629a07e62dfbe8b1f645dc456d564b99a8b6bcaede468b8feb18b97c9ca37b6de90302047c435bb500663064023001e8369b748cd84d1047568375a6efc1841b9b095d2de2f0d578bed34e8bda86d29f0dacdef656f1a1b9d54863ffb5a1023029e2600dd35057f75e00c0a69cafe51fa27526cd8a362ab0150afdd5acf56f402f1965ec07953f5a20f9a8e19c86d6940302047c435bb500673065023100e1f308c569059582635d175f64508d72dca45e9f0908e8fccf0b1cf31e518830e7fe1cfab13f7406222b72282d48a8c3023059f7fca871376a1a100f9d46c8767bd3c8db1ed25e7d3b5cc0a40b9052d05e07ccd7371dc8670d5ec74aea84cb6dd19f0302047c435bb500663064023007b5bd6a8993af1859470a6b3d11925e724fa072511a7fa8f1501ec0dc66e84b35cfc3faba155dd8134a0c550462c117023065ecdafc93b47b4018555d67530d180fe0a04416418828a8ea17c09560931f60e02e595d90d45ea810d64390ac8462db0302047c435bb5006730650230430a032fe2490f41aa333c82f1c9b40bd4e39661554d5b96e3be62251ad95ea770ef14e896c234b50a312990495692d0023100da079bba3d5d153d40663304ecca2c7335b9f17997bba2fc9e4662b27288bca0c3ce115b3096ac02ef957adcfcd26a0b0302047c435bb5006830660231008096da00842de25ed7841a92a88ad3f27e047fbd3ad86611e31ec239f0e0befab1d623cebedc80b74861f40ef7063125023100ce3bba3454f4fb166cd7839f94f4d8d0fa42c5d56ddf5765758625c955128aae465b3333ea4ff0d96c8737e116e069fe0302047c435bb50067306502307978889379e1dbd015b68e2f3109b2ca0b14785ed40ab47a3f22b238b270ff5097ec7c2e2aac1a2482457a8094c1db53023100d61549d71cdb856ce11d23c351b2476decbfd81447f43132d62c55def3b0fd4c51e0f3ef42b92fbc11d10c6d23523f080302047c435bb500673065023100c49423697622a835ef801c0b9d98bfa4c2466468d54161432062874d027b8aaf428ac32ea66379241514ca1106c0a74c02306cb154cb2dba42ddcba8012dd93382f85ad1f159347c436515588b76b141b7c00f2d1f16ae3f76aecba4948b798949f40302047c435bb500673065023100b534ba6525ef9b230b80bb1452504a0c0cc5891e33720a80b2ce586df34cbc6c767e8b578bcac69c248b370c73771a7002306186cb9573b30ea6f843c2dc33cf0b638fb64299627353bcfe430314efbfd75ca8fef9eb98c853b3350bc4622f0976580302047c435bb500673065023100aac56d26ae70c5bbc09b0ed3ff81c31abc102b95ee96302d29c1d9e46118fe955085240d8151b5e42b3eb999d1b77e92023019194f10fedbc484cb55da12beb2dcae7ccb0ab41e84f5f24abfc16fa6a02e1469ca4adaf9651b2789842195a418d61f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e5a83067711aaa848937de67aa237cff859bb9d7219b8e09df95cf735d869da7b0128f59e1371b11c26d1b0c471fff7e02301275d2a42896928853ad7acffad824709fca1b0f3f4d1034862f4e599b0707f1543aa4cc86c41037ab89f1b53a96ff8d0302047c435bb500673065023100b7fe638979cde5a9afa89bbaaa4314222162d24c0d694e96fa54bf3462d3e7bae03b7cfd6e5361d109119a30a80065500230470a484b0613cf5a524d36eb2687f9d1fa76c9679227a5b178772ba042ee73e755cd74add15b09ad75b4cd8e18cad3320302047c435bb500663064023033913710eabdc5756f9e09dc8174c85f639d24493fce0c4a1d38f8adad84ff05d2179a1b4ccb11ae517fbaf9337261cf02307a99627b91d54fbcd45cb83173abcb031f9fa0c1e5694a6ea781db80e27ba5807bed9b14ebaafb0d87e94ea015c702c20302047c435bb50066306402303c13e205e9f7aa289ade6ab56e5792946352c8813f1d6a6cbe2a01732da49c9ab9a251081c63e7d953e98e8849642e93023008607022190158f2a8b35f081f30dd0e77a7bf28398f25f2752bbc6415a09f78c539864ee2f747504924a0187aadf5a60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ea70f8889ae343d01d6178dd3fc0464fad72dfd82368f9bba76ef5914792cfe92d94ea8883e6154d36ce8b3d4030124702305e3baf2aa91abd58134ac91ee467e7367508ec4e9c579fca06b66cd51e371d9cb96eea736653792a5cfe71b6512152f10302047c435bb500683066023100e5a654c49de779d78ebace6ac5dbd09b8d41c4981bee4ddced22db9d6e49d0ac62622cac471fa2e5a2e0c5c2cbca6a13023100892e6bbd35e2b233afc8c193f67c36da3df880f92855b9988f6c592cf456954eb9c35c49532818bee2944e25f43ca7370302047c435bb500663064023054b5ffc2abd5fd4828e73faf4a6e5feab92766dddecb90d3deed90699ce4ef446b2711b64d3a4b2e280c34560f2b29ae02300ef197c1554588e4516add524120fab176aad759f7c185ce77c97996f1a238ff1f7f82eeb7252aa3b9b463be8c69120f0302047c435bb5006730650230464b05492a1a52c135e82cf9907c0a69e230c8191a8280e75ad407ff8cc8d9b48d9089ebe20ac8dfdbf61ee3f025fe44023100dfcd9b7594f53bee3b7cb559dc127baad54feaedd1c973d355c591fc0363a26262d549029eb48fac4fe3cd16d4f0fdb60302047c435bb50066306402300b435b7230885a67ba00fd4397c0c3ae0f70ed3663e207f15626ba177102f6736e1d246f9728cb959c5906dfb7567182023021690d3150a6c4207400a0275b5adb8c778b3435eca6d6d8c8f0682d8873ee7f713fab02a3c233e23c9f5b02058dc0ad0302047c435bb500683066023100c02dde7d34d679c0d0423298e21825ec48a385a9f323a82f21149011e26300e12589d16c8b1c60caa86608a8b8c022f6023100be0d3a2898d81cf1ab60d6009a2c283f13e94b8e0db574e62ce1ed0559eb237da98dbb6821b6104d2c31bf09b36394720302047c435bb500673065023100b280e201ef0a5e08be16453666215913348508ca8fba9973f7c696c6116add9632e5ab774e494bc7ba4ac98bdb9896ae02305239ef86c322582e1c67885e9ab7400b93463088e5a779845becbbe7e06d4b052a714b1115a8980aa4387a5ef746adeb0302047c435bb5006730650230227811f364fd65f4a954085c6942c20b6da2540c74499e2d4ccdc798fa13c606fa13d86397f44e4754152ebe82fc13e4023100b12889b07d54776be707e67e50ab6168ffc5afd918355fe60cb1c576d83c190633650169b4264321a5013386f3b62e2f0302047c435bb500663064023027cac0c44c90b2b80205938ef03ba032888931270fd5f50f97a28745d157cbfd2b7ba25b0ddef0d92e41213e7908438f02303177e2010a8a7ea4c970c23c7e8252759741255536d1686542c877ee605648126b00bb263b2054b50882d04b7eb7330f0302047c435bb500673065023100b9b6550efddb7c99186b2e69e2931395e660877711c016937a342b30a52ea1ca4802585cc1b9e9f3624c46dc8302f107023079bd810e0ad2db30cea2fdd3f57fcdc59041a104ef9c7c886847fe1fd3d9bdc0cdd9cdacd33e756d14fa50fd9ea2a3230302047c435bb500673065023100e58d0ba1db921e1c791105ed3e2513f1369e6a815073fa822f6a6e5b6c734238163db93ed6ca0d81d8898041e8b9a60e023060e3d533acb1e0fe91cfda039a981dd04783a46808b0ddfe0ee357137fb54aadc92c6f9205c0830a6d08b6fceeceb63e0302047c435bb500683066023100eddf34eecb10bcc7f40fe4f838ab9bd6c11d38372f154e93a1743feddac3e89f073f47adba1e1ed90bf1e6190d5d859e023100850f2b5827b5a3bb0ea088c797e8f855ee64cb3c85d0761a7c2a9aba3c0541be249283d61e7c5af98287886014bbe1f00302047c435bb500683066023100d7b9f6352a9bfbdc26226a37a6a2a4b05051dd6394142e9120dcd6276ea22023d9b81472f1abad5d39ca4c9e3fbeb125023100a9c5fd7598fbb498db3ea04c7bfa8066c5ad4c5f48519b86dbcfa71c92f0e0c175c05a29788dbfac2900184af06732d60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230742e8e8c94ad4df1b94f946b11e78ae4a00924693ac6ae8b79e62a744f79ef568ee9769340332eb9bd8dff001d30957c0230603388e891326135108fd5100ae4b239f778b05ffe83f70c6ba536256d1da984f922f20e33acbbc04cf32899017bb2cd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c238d5bee92c75bb0d243734397d9ee27fae3308e951ba0c295ea95c9a3e195bc914878cd2ed2f6c739b96850a4b7ceb023100df253e6b553e1e3980d3e11101e52c0ddbacf90340caa79c90b48d5681b6e66371b6c42b5ba3b2d4d16e012c97591d860302047c435bb50067306502302728a2b221dfc3f247e47ad06c212f3c1689a9d6c8bff06f0d34c2a013dc4f7a77193e91bec3c8b5cefd63dece9970f2023100a5ff4df5bb0a2508bd254a3ca695a2a075e48d6403990e2529d872a70b0cb098f520b19e48c21efcdc7d724a52439cc90302047c435bb50067306502306c86fd0e1be25d80dce132a2754b3e370cde7f0bab6aeb72df594c279575dbdcaceced78a6cefb9f344d50dfd6d88761023100cc737e51a9a116e1f11fc52cdc24788da3f7bcbdbf87677d090f2afecf7c12abec90e75d0dae115827ad4f51bcd15a880302047c435bb500673065023016384c39d7b5d90ed5738f99a9b9672973d52dc7b75a74e27f04b2f5186eaef64c6cfb451af5a9082042edf2b5b937fd023100d47f928109b27294d745641c2c85b27ff46e387c64efa19e7489efe71be15afd9938ed3390e0bd5f70a18b5e184bf2b70302047c435bb500673065023100e259bdbde2d21487137ecc11990e0a437329edd25b9ab289eb6da7dbf4e40d3db6b5db668e9c6c4795e34b104064ed83023015ba3014b787bdd100180169dc45af91a0f6aee1a962722cba0fc1243d7989c1ca6702f11a9c4863ea46aff7a228c5830302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100eb44ad8aa3a2aa0a49fb05370bf85ac00648a33c398fcee3e3993873ffcb9528c8b353179126b47a5414b8162706b1ed023007d562a570f540ede321d8e9f5f339287214e0787ba363bf309f48195828f5883362e085e70ace2966e0ed04286308220302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023076b8820f0ab6614926f4f7058d9edd4ff2ecf29fa440104039ecb1c2b5ef528ede7a5f974096ab67fb6e4a21569c083f023100ca2a047fef7da410d2de4a4c71012a9af95cc5dc1e319bba55db1a8730825386fd486903c1e6431db5cba25b8a8a023e0302047c435bb5006730650230268b759f1f632e851933bd7819dfeda7dcf8838ebdc66724364b472f6069a8ad634d64254c52fc5b1cf1d6a0e9434bf1023100ff4d6b463bcbaff2762c5130d284723c9c03ce736233e37de1c7c0f9042427b817a2b0d1658250bacffb0f306e48a4010302047c435bb500673065023100b39a13fea63196e5abfed2dc21e6a2b7ec85040c4d063e2627e52c45bdee2ac515f735c650a4c0ed9a3fbb5335c8d0b70230718622ae9d29bfde39dbf924ed7e02ecba9f5e51bd845ef841617a1e8c1ad68532e213d3a8ebd40c8ee04885942c89ca0302047c435bb500663064023069ff2db5460009026938336eaff385b8c06cde58827ab2d4400aeb2f7c7d0e520d3d912a811ff894bfebc4a15fb5832202306dc436e34b8e820a2051e9a1a7add08c7f7ec4c56ad151c54c48986f384a3f16786a86bef03408bb6cce29b19a3c17750302047c435bb500683066023100ca908aca60c0140269d7a229cdc26bd5ce2067dbbfbb256535e8528dadfe91411c26e383e8a1f9ac74e0d8b875e0ace0023100d4245b248e3a38f6645817177b78242b8013d937aba79ff213f48d1a64c54b5947a04d789673763454f562fb8a63e6110302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301eb7cf85cbccb5f7c719da505f8e8984f0f22754235cfe6d9acd24db34d73a7721baa6afeb531c7692f5e2842016966a023033e9d65516d658937cad5b59b1f92a5cfe6f25a84954dc397802fc1a4c96b53060f2ccd4d59edc14d2c301a06ae384ae0302047c435bb500683066023100da91cd2e52cea6a8a68e24b79aa4bd5cabf89de376294392452c8423c24e0efa4d8748d40ed14f950f1872623ea8c7b6023100fd25ace7a9ce0d1ec9d2fec64973c9e66b843824256f9881ea24bcd72cc718b033f2b9041e6e9d6f2114a1802e9782d20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f1f20dca64524dc30fe01d9d7413928f4ea57d88d7b7729b59888bc8e348a687a030594e796927710a5c27d9e12066a4023100a4cf668dd6522a92a7823fc7eff46b870c96dcc5e210d567c6972c3d8fd28e7fa1399d97d4fee9c05fba87517eb7637e0302047c435bb500683066023100e5e9de05e4283367db7df65689c8e683a52f61c1566bbbaba8d4bbb67fd5068b76535101be739c18ef3e0b4aa63890aa023100ff9d9ea6b30646884b8c6865c6cde0ce5e0403ae94b33183b0c87a0a86445c89efeaed85dba23b06fd391922cf00bfb90302047c435bb50066306402304824ea27cda3a74104a70e06295ee7c16744a4eda4728b2f46e9113603a3a45959ce9e7628effed0927e5a1eaad472ee023039d8cdc0fa474966f48ec0eb40a9436ac4e46371755c5d2c0067661d076b5a4408d5d67cdf21c4fcb88bc0fc0acd92460302047c435bb5006630640230387fd7d9fb25fa903f955f5c845543c8bf3edf8f85c9be0f13d362360956593395b3598c62b660f1d504b7d060f1f839023030c4133a548a30dff6f9b9ebb145b7411ff20b450da1f5aaf60f55b4ffc9592897b7ef18b92c95f765993e5bba89efac0302047c435bb5006630640230690c6bd993ca32d9e82a012d88baec8a1eccc31e135504ab8186bdf10e3837d54e58a620e2781ecbfbab3db218dc06ac023016a3171dd82892001db85d7c95abf14a1607d40adb07fab7e4890429293cdb5e010e114b3f5a815656a568253afc0f6b0302047c435bb500683066023100fe80a9a398e4519cdfb7ad76f2df4a7ef1c9a2820e5edf4e4ed185d03ca0af80343377715d23a60a5450cf55298a10c8023100fb5505b6c8f4c2033ea1990efc8c4a6b1d087f569d35d7ce0203ade8c8c2c8e44d87ed72e01e0b324f791dfe3b26c2e70302047c435bb50067306502310081684782e3491bbcce367a1583150806bfee4241c55643827eaf990448e9cfbe09cd274a485658e567897f79e69c947f02300418e741d928dfcf78b55672f56d55346e1e3c4c75a1e3d344f2dc59797aacf4ff6c6f3f00cf64d33d9c46e0e97578160302047c435bb500683066023100fd66a0cb67d096b62c9554a7afdffea5a9344f082f738144809656ddd25638b6f0dcb47f0b4413f8ce244b7b556a093e023100b4ad1624efd9604302290fb82f8b9aeda64e1159254f45474a3a44ad780fe1e71ee270256cc6ff98c9a87d15b99c212a0302047c435bb500683066023100cc705468f2581f12874df5bbd6f6499561e168d2327335fd9bcfca573125a53cdfd66aeadcad30a6a5c700be659f9edb023100ef48c51a9581a714c905d889d3af66a2e28e7bcf8e4b1f1a5d28538048c9f818ec047f16bb490140b9b47157a63f2f020302047c435bb500683066023100c120be7f5a33776ef8d384c204e8a249c4ef05d9a4c4a90b517b04a13bbbbd14258551323eb84d5936e190285fbc4d600231009c7eedc26dbb39b6a3b7940debc5f7c40f1ff883b23ec1eef6628d2c9839f8e2f2dfa5d74a778ce0eead395b318b18dd0302047c435bb50067306502310099faf9088d178a9458c4e0ff07644de3c60d584e5b7abc8d42467766d0cefe5c0b5f4d73e496900f4239c051e450185202307a2f897ce8cacfe38d9260bfa1857ffe6251b7bea92ba11954569653acbeed6e976d22262a6db3ac04b6ea539f0618ce0302047c435bb500673065023068eba44c296242315ae2ad3d2076574c7b1976ef5e60ab6c9197d02c9752040d339c55efdbb08b3dd3482ed1d3a7e9bd023100dc4881c3e1780536f75f00d50018fb0e8375ab62a2818fa947f9146eced051486562eb65bda012aeb552997d8d0462e80302047c435bb5006830660231008362b8ef91c8558f9974ae1d94b6274fc02a607d4f15b6eaea8684090b0f3d721f71e0fe9baaa441a664dac2228df700023100e0873a1516acf04f38a084653bca3255e14cfa4fd5f0fb9f0c2bb3476cda8570fd94b2e5c9cd9fd897895d7ea8e16a720302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310091b687042b4c640d3662dbb354b10f178b83576c86a8d414dfe125ccee3123c9f7d06cde73cb56aec1db63118ded73790230204f4f036136dacb6bbc2ae20d16ba40eb6edb5c2438feb3b5beec71ef4f5957e608c7969141bfa2a11453f9b8b517d10302047c435bb50066306402303d2544804376f611fe71783c07d18c90735977523cf0b4df38dc8c3c3387073aec3627202fa3138524e5599811fab76302305e39adae3a37667e1fc6ff0446e20188c9054baebbefe26bd19248492f5feccde9d43af3e97550a84cf772e07f4f1c820302047c435bb50067306502305a1d281f0c22c36cafd438e681bac43f7194e5d96bf90614424441c6d2ec34de93c07d3ee976172f6cf5e66802d06a45023100adde6f15041b119d406858f2fc5251c2b5e7d78dee9e50af4fc950ddd963db58c5a0b7291613852db80397018b9f2f1c0302047c435bb500673065023100ff75fd4cbf2a5839884bf279e4ee2f7d9656405de964cd9d804ae80401dd7dd3d9e20a6f334eb680fe996d3d034f33e80230574271e6a6c6a7d55cc9b9b79ac072799e38c5e12dcc0071dc78ac901424c4032ee6efb7797f4e537a8eeb9aea3d4b260302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230763835eac5972ce9707dd1f74cdb482e65702c1f7c81de650356f1e3bb644674f2ba6563c5efc3eaaa43a36edc151e2002302c3ddde41aec4219c5994ef274f6fa3cafdeec0cd9fe5680fa3ed3716e81110311b83e255698dde3ca1ba7944f4a6a0b0302047c435bb500683066023100e03cc10ff48b8b57240fe3d32cb5b5bb9d06c8bb962d654dbeaf5f6dbc6c08d714833c9742acf851bd79e8f90db386e70231008b6f948e9fbc90dcc13a19268a21b1ec2e8b7eb4b4a8355cd3f342758182283103eaa023a81863b5c8e602655cf9460a0302047c435bb50066306402306d8f2db7a23458ef1b36cbd6a8eba7d22009bc0688eedb52f0b5faaaabd205d05e7fde8c18d570ff99376398714bc63a02305e366bebcc586316c2601129bd3d0661b4176815c748949e1fbbf15c18a5633d6d8c70f988c7d027b0cd5521b4d735380302047c435bb500683066023100b383eefb9956df5702f360aa479a66a72cc389ab33f05abd06b0a60c40284cfd2b58a310258d37d82102544e3b078f1a023100a4a524279359bacc93841638636b05da5e4046fa205d1dfa35401ee84b3fb46e2417cc8dd8bff86fb1a05d7134053cd20302047c435bb500683066023100f00b92df55e89640f84b86dbcbc0af22720bb309fef25e35cdf0888fbaaefadb529474024caa9a16ee57fa0e1621d187023100ce81bdd0ff287d4984d36cc0bf85c2e6622b7457bcd54aa50bc39d840362ca76dc0b93fc550ff2d88beafe1b8b187e900302047c435bb5006630640230160cc8c95dc8119c080b8e75a96e0b25f2437447d387388fece6d73c88135f2fe9dd1d5098c2bf96dc1f915189398da502304df3d8f3b6ee0304db1f942b9fae1446a2ac8655a50bb5f4158a705de566f4d9876afc1b39560db5dc1be8d46fb027480302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100dd19b0ade958781e1cccf65b0840a543f57be9460809f77ca379886f1edba09466e363a3d72fb4de645442a87091f1f402306b371df4402aa13c38e77627fec078edbf81fc29988b7d520815ddd79d7610b11d82f78d29720166fb5af55966361cfb0302047c435bb50068306602310088ec2672e963c0071b198e87df4a4ae64f5a0ae58c0365b77562711548f98719a782e598b0e6c4c4dcf2bf68c8a4b9de023100a2c54a5381523ccb37f2e76412a738e1c015e62d76d7b4ad48b3ae1d9f87d8ba90eb738e0bf934bf5a3cfc90d512571d0302047c435bb500663064023054dbd6a3d8ed2a4a27d32c3b24d1c0d9d4230286f823ca6f4539f180375d083fdc6f76642b87954c045021920fd1731c023032609242947cd3daeb90dc7ddc63fce3fe4ae7e92cbe0cbbbc0e024ca615000974e01e85ca7e87089cfcbd284a7e06a60302047c435bb500683066023100ba0299916355da4f4ffa862cfc3c8d7bb2e33c836a4904c661b83bd26e924c76646e9d642a95210072360821521fc156023100bbc720d48ae5bbfa096a5ac0892b824fa3c43be97b2a835fb25d09ddf31f2b55281afd91b81f056e48c724e0be4d6c840302047c435bb500673065023100f7753c7d158b82114ffca5162fc24cfbca1b95234c53cfdbf8de389ee46dd178f9401f2174449593f84988943c85849602304586d050e066ba6530b14d68494a7df341b6c58e57a9d8814358c21135894ad371a49d00b6493ec50cf8344e4df7ce740302047c435bb50066306402306565c83731f856a497e369b8a9f89f1ad4d79b76e031a08f217c8f440331ff4b45b54cad427500fcde1510e5ca325b7502300ae59991ba65581473ad48f5025d015b55b8a28846640d0b35577a8216a426b39bcfab690bf2cdd983a47c7df4b222f30302047c435bb500663064023059c83ea09974600c280df66231af2990fe7ae1775c84810b6b04bb873fa69c75563e02462900d2eae33dae957db6364202301a6a01f2bb3603df435217d29a980d8e36f4e54557dc74d706dd78b8c600e63fda3065e1ed3b44e05fdf4a1186a9cb860302047c435bb50067306502310094bc45a22cf51d0e6b0ed6bf7c0be5b933736c743b7206c2dc00ae5123a0e795e7e2c963fea30490d4ffb7235905b4a2023060a8c8bd6c306d03fe75748d1c8ec10165dc442f7c0c8bceda34fb61c5a47d49f4d16c70008ce885d4781f7dd1624f200302047c435bb500673065023100faf424ba12584dfdfcd7c6c5dd3a809fce2e472e9a419634def4f85b6f1347b2744004c561a977567c11f1833bb2b4b802304009c11331da89094ed1c9113a1248d1bbe6445fa27190889fc2f111f62ec9aa5da35407d0a89fb80bbdee06dcd579f90302047c435bb5006730650231009718e2ee7ce62da7b06c7fe2a241b29977d7befe61cad5773c549749ef64b1802f93895ed30e315cc2205a8db1babad002306ab2cc128e30225e1149fa59ad5443a6a6a46ed94cfe1cd5eb1c44e7825a52221011075644e509bf64b55918abc1d2f10302047c435bb500683066023100c172de6934c012369a61683bc6ff24153083726c0ccdcb52fefcf4f6a865dc69434b8779a75bb651278e56dd13e19869023100af3c6cbc9dc61fa0d9b1f601336f1566bba6462396ca280b5df42c7db78d5a2dc8c1bdce6e56c3aeef66efc7c6b8bb480302047c435bb50066306402300d61c9b6770c1bf48bda9096a0fa391fee13e2b5e31197c9330a2f5f92dcc3828c29fbc0acc3187526bd598896d3208d02306e0baf41b2da86c50024f4a72d009849b502fd96446795f5582a1a6f74724ad9db8816ae5857d05acb0e968ce82cb2d30302047c435bb50066306402307538d1f36058a46d0a9cab4754ef2dde9a4d6548a3e1eb68393d634f978149684e7aacd3aa14ef3d9360776fdfd05ba702303380765b064828cf1e51ea4409a282a424e8024935ef6dce86def786d9430de70e9dd84e9cb1607a092363c2d5a4b33f0302047c435bb500673065023100c860d35125daa0b263f5f1bc20f9bbbe2d24811ad5eb5441cfe61657a7e4f3c6df6a651f9197877aa88ccb34513956ce02305f67e0c0c123438208df9f8cf76844ff1b39fbf342809f4f124d80780bb6f5db3d40653d46e94c3541b71e210d88dac00302047c435bb500673065023100f7fc6bdd446420a194dd705aaf11d4a942f1ebb1670f78e67070ff03965dfc9bef387c783161ec2f291f2db5325c445b0230198212919e4b1e48f6c7750653830e625ed881a4b897e53c069b79192cd8869029950899694d7a9f2259ea954a82f24c0302047c435bb500683066023100ec79b32c7f66912b98df2bba3f1c78e602da29bd65b24c33a8cc409aa48fd52bc53d5000eb3b0ebbc4a6140bd73eca9e023100bd0f56d204f4900dc62508728c544612bed8cc33cc1d259f088ff5612c127594500052a720bbc1105e688282322c71230302047c435bb500683066023100d6fb76615624223cec909f02e86a912cc6652eb33d1f2904946f4ad49d318d1d9a29550e4c20b74ca05fd06ac1813655023100fd9968fd866be6ba79fad6cef6ff84cc276000e600b4004855703444e656a659122fdbd0a7268588aa46223b3494d5990302047c435bb500683066023100bc48e23aec4e5438de0496b10268264d560aa55977f13ef2210c9583151db6040d44ab703fe04a2fd1890e4bbd5a25a5023100e01c03757e068abddb86a69f8b9b41b68b51088a591fea147fc8ae679e5e7cd4e19189644262bf6f81c76898e4a1ed070302047c435bb50066306402304ce83523aee7843422d6f49581d4e14b663c13ad743ef37bd1fc347cf66abff3217ac1c5834571eba05915d9fe50668602306b94e6c83df720616bcbdf030c887e3af6e6a98ef46a562f081e3ddf3499a153931e62ed30ab2bae8d99cd8ab6407da90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023034e27c254e20def4f94ef863482918f7642b95a17cc618c790d5fda8384631f03dbd5ec025183e1bbfb88c36b560b2110230793e85f27ca89df1a7c6007307a8328c72ccee7a8cf746f4a2dccf209a1dbff3d00761e8cd10771f58bebee40cb8e57a0302047c435bb500673065023100e78c9adf45fc9ee89d658de7202ca6f636be77b341588c730dccb478fc1ff0b538743e2d56389adfe117c9262bd5e05602306ced9e799c909725bea131755de5f24927b29d29093bb09434612154acc37273fd100f3b52cccc26b8957aaa749cbb830302047c435bb500673065023100a509702e03bd04d30c94188c588f63265673bed65c8b16872c73a28cc62a11d4ad4262b6082f3e4d753a22a82f83f81c02304d614f592753fda22a79288d44a42bf4006c27ffb0d68a0be0dc373ae1d12400f366f7a95b8872fea5d010cb628d88e70302047c435bb500673065023100fd096dafcc3e355633a1718e2926da8b5814e27796a32745286708811d01ddd9906a2b4f74f06c9541ea63cc071a3cde0230733cdeab1eede2bcff7b745530ac7efb599834fb538488813e0394fe7bcc7eee27c387d030465b31938e77a9547af1230302047c435bb500683066023100f3293d3698c3bdc5a9f4495a38006d1544f572821659691ba6f8a69348e298907a92db05a148a21bbbff27715f7c181d023100c042c79af4da82e2863822f01105939c5030287ca5d0338c73cba69a54691e9a1f52063bb2c90797e6928c9f22a0aaaf0302047c435bb50067306502306de1ee96a7cc12051e05677428ef383574a0c71f263a9ab0a8e80f117b17bf3a1f33e5556640f8bf2955cfe4ec0211ab0231008f3944edfc87d7042fbfae76a05b4721aefbb833046548553f5a353527a042fe7de9063c72d8f6f6cb2fb5e1fccb574e0302047c435bb500673065023041f28577d8a28d7e4b276254ae2367b8044d647d7d58a334abd4ace19da0913cdb79e65456edf9341d7b4336a3006a7d023100ddebae917f61c4634e3ef3afb94aa14c37297ee102e4012b37fee2efc426e93a3fd3c52cb553f3cbac22550e2f7e9eb30302047c435bb500663064023044affdadc870366d93961255a16e759e909dda21a3547699726cc6fa6f2cf9c3341f7ee6492a2a99061e5d47ffece62702306daea3284f9c87da9da52b6d786f0ba0cc5040745cb7a9673988666becb4504d728fd684a47b5f978bb599ba3ec8594d0302047c435bb5006830660231008539bc70d6a7942df743ab0257b325dda470a6c89893aaa811d5ccf5112b3d341ac3eb8309a5f0bd4745e6b8ac46f79e023100ab0e105c00a4ca72acfffdb9fc0bfe6fe67a8ee412a7b380fa8352b29016fe471396dcf431d3ead6866a8e102ddfde930302047c435bb500673065023100ff644b570e6f2af10c49c1cc3e9dcfc3dd7ed8ce68a749252172dd2a8d4b04105b3755556cf5a01bb0f1cf7d873140a902300bc062faa743555209d32ab947b6bc338ecc6fee290f243171ea911aba380675ed4b2bd3ff8c7342cede0984347552af0302047c435bb50067306502307c16eac980bbf65b36319d2fd46db849e2089b28d8fa49210702ec633c4d2af01d94a9189c3235cb3b381bdcbb99accf023100acc87d2edbe7e089ff51e71621651536b0d43a67ddec9894e06cae02d1dcdf4245b8fe4721043528170f1501f2880b7c0302047c435bb500673065023100d4892a67b35a69bc4240ff3463389290965ecbed4b4ee8643de81937da3a48a250899092a1ecbeba88d8ae27079b09dc02305599949a8a17cf8adb455fc8af65227bb0d70e2e40e3e3b1649dec52a2dca15debb4dc118213b6d4cc494b8d2e9133de0302047c435bb50068306602310096bcf658a635afa4796541d2164412c4a37e686a01882f5c4bdebb6f489abf4504979b214269441f708e23a0f7e11572023100d4d08d92e8a75e53396393897514fbe803bf2ed42184d711f90da06e4042636de5544b65d891b1b2198443fcf9325a290302047c435bb50066306402304cb10dea86781fd25b27b171a63f8c5ccfbdd94a7f1246471d733d4c5b875865240d0dea39f9103b4351a597e8a730c50230384e18b73982764b5ab608414e9c0fbe29bcaceed8c21d22e9755c8479ef624ba2c592a804252ccfc590ef9bbc0f4d100302047c435bb500673065023100f517d7795805ad1767aaf0dc9eb6624acc71cfb0a22dd80ca84f6d425cbc3eb3b0ce7d79c375a25eeb2982933cf0012102302358a8d6cd02ed3e8226c72c4b50a4a00f187bec0c40d174eaa3fe777137c0b4a595b64e61ebff75e41a46d437e4ae500302047c435bb500663064023051b6716e1bbd9558f79c1d34de28e368d4bca82ff4eed208e123526d4d584260d7d45a5dfd326cdf28cbba0558f51f2c023074baeeb9e1b2ab406e62dc6b90a15cbc106214299250bb4edcb5157b4f5c428894330df3569b52f44b68e3a317e70fd00302047c435bb500683066023100f6b277478b8ec51ddb98f822bb67ada7a874c5333957d8b359e2d6ea008de0801d5b18fc7a82887381270520e4c864c3023100aed2e844bc5a6752639b91a981eb344eac067ff6ded14bd6c141f61cc274e0d1210926e32c24afc26f4864f5f125ce9d0302047c435bb5006730650230584273358639f0d7793517772811f6b9880105b50c959937d9902d6e8914880af4f10e640fd814c5cb36f6d648c1546802310088615668aece90ffe02c6895578ea2b505c9b15540eb708d590ebb0935764ced5a84293ee92ec9b4d3aa6eb7ce16ab8f0302047c435bb500683066023100f7f66b2ab34edde6363e8e553518a5bf724e18ec5a9641582c479d9212f87c21f973d391a87845cc04ff7928c604fc5502310081024ca1a61b7801623f0d3fdb995e9013bb58dc38d0303050924d3298b76a337b148cc518ce4b0d82132b1dbd7a70d10302047c435bb50066306402304854ee0ac51ff42c984b242253824832428812e1f1c824c7b872ccb8b549fa382b94095f89e8c4d7fc9a29c524dd102c02305f5ac5571521ef2dc8f04065e0f263d54d61f1bc9f0c11b3412d53651a131155cf98b0025f5dd72b59459fdab00eaee40302047c435bb500673065023100ed8a2410f801abb87ee45abacded8e7e5c43165c97a41220f4d9d8459777bda64da87b931a6a2471de72892e5ba356160230150ab1039c8ea6b5510431c4586fc5d60535c0612186f50ed94fe003615fff7c8e64f0e315c5b621196639c58f1bdc460302047c435bb50067306502300ccd4ce8210686e8a6f987387234465e9f72701d96da4c6b40d4cc3d99baddf596b61315f7d1b78d090fb0ccf7d461fd023100aeec616f4180cf03509a8eadb689a4e1145e4ccb342c73fb359fa738cd633cbfd1f35d22b04f8ff86dc9040c0098e5ca0302047c435bb500683066023100e023945f60b9276c3868b0507749f3ffec7018516e19aaac904f687f4abc631862d7636e3fffa6331091cf025f83b1400231009f6c5a5fd25b852d369b35a8f17855f0c40e35b3c119054c653a2bbc581ef7c8e07d6026f06a0909b78ef2bb34d0dcb50302047c435bb500673065023100c0158bbb36047ffd23e3acacc9daa2b651b9c10bf3aca0a3908066def87ef3116b5e4de5c33852db50bbb781b6f2ad51023021a88cc28c58dcb78d532cf9d914b529ec08d64c03f47ac66fcb280c7d7e111e6b9a90ee33f391d593cdc27e0e53919f0302047c435bb500673065023100b7527bca3136399ad34963bd87d19c93511719f63db8c468ad3eb9b76503576959c7f86a367d2907e9954a99c5460e0a0230517e37078ebde5416e2c3f81b1edc4ee4b8baf0e5434e4b6cbd41141a0da610299449d1a207c329d008b8d22966a5b7a0302047c435bb500673065023100e6bdd6b4b00582acd100135f526b435115b2008e6bc58c168fa1945abfbe8287bb388452f05e14ef4b5a807ef3e2cc90023048e0c69102795f3f717819a529c3d6532e1330631683c49f5e1aa5a0aee6d33c802cb9a7d94afcb5bf767f8b67ef6d440302047c435bb50066306402300eba08e4a754977645cea5b4ac2d8271b7bf98e3259cff7a4a6b223285e3d41082a4d6c9d6fa5d230cd9b4c21ac0b7a902302cf240dc393192fed77ce7695b81c2b066a501bf3acd9187a9032bca2dc5b2bb313e76a7c03656ac57088bc536408b8a0302047c435bb5006730650230664ca0598e2b1ff49c1a917d1a0e3762d9814c869eb47680f25c1753c205c957366567f187a9fd08de3a5a8c31dc0e88023100cfb7dbc3634946b47d09711e78981635222ff17e4eb7670f64c8f10bd6e78171b124d68c17eb7c7f9993360f11446c820302047c435bb5006730650230450335abdb6a2c08e3ceaa29245afbcb618a160f18ada7e9c872690af0b735b14e91dd894ca5edc8c8ee40c82c463e8f023100e62b76856e39c4585cba54b146610f45a523bcbea4ac8fe4bf4bdf3d5683c192a971ca19c273e1a5221370abb594149c0302047c435bb50068306602310090ac33643766c4f8d6902a7d1b488164b778599cd78d0990786eb54f649248ee8e2bd4057c4abbd499570b0bc1db0d2c023100a4b3b8aff48f7c323b4ae8036d5d97cd3e2c6361e4036b3abbce8f084697df42544948f17b3acd3efda79ca153fcae7f0302047c435bb5006730650230335d1a74bb5829cb3bb8a4a318dabaa3a449277669441bf8e3faab840b8121a5a49cbc0a165dd0bb750766f640250119023100878d50d8177b99b9df687cb3b8bd1d28ae3ed4ff1e10deac59e7705f23131718d8b96eba493116ba49956ff593add05d0302047c435bb500673065023100bb0b9d032093acffbacf02d57d1241c1ef122216aca4cdf8a7a69d04612bba6d671f2ebba4885f9bbe1911a0ac893374023073f833c31324bb4cffb222ce093c31d98fdf8f7a059bbf991d9048e37f9827ba195d06533a689be917193144aec88b1e0302047c435bb500663064023035de8486425e501293f2ca09bcb917c471fee265f8795de87308e4c4f534353a60e341aea418a0d2beffe70f3a79274a02307e205fd340fe0666a90e7731e43b5739ab686c44c3a9c0bfda7a6ee9f0bd8ac1d5a6e44f55b63dfb1f3971337c0f923f0302047c435bb5006730650231008e2c8959f1a0c30112b17f1179e5bd9a5c949cc9cc90c1d6c862f494d924d74ab7acefd14225300e82d3620a8d9ef4a8023048735f92264977afe6f63fc299ebc45b08f2c2c598700a4e419c835b4b684d61e07dc5b66f5bb3f8449b006e2eec0ab70302047c435bb50066306402300a6cb730536377e14113ffddf13c9e666c3aafa4ea5d21d43c39a418b2a4f09c407ec4388d842805d48d533f8ce5e3b902302cba2c1e93edf201d063f83028fce56c635a4b5888a36ecb91b750f53700bc0ee1361cf0eee1cdf56321acab438eda990302047c435bb500683066023100ccb82ab8dd99cbf9d2a5f2d47c2fc14a9a05cbe61d1446f0a6c23205f45e71bf5678a3a3fa6f16b73c3f9add314fcece023100af6dae93c4e5a50f1ba4f1cd8d422c338886ec8c53d02fbaa6edfc6200fc8a0f373ff74e134d01b7e33180c7f604d52f0302047c435bb50067306502302a392df3da1ea313b2f1e210e76ef02541abfbb622c610fe6a3f78298936e18c02815593ade6970e028a224fc22a2f24023100ccd9b212761029b0c2651869259dc33fc7052d7774be07ebe4460eabaf04bf1af9990d91064e662c9542e5fcdaa382eb0302047c435bb500673065023024b9225855c3d1da4227409c005b5d27f56d62091fa797692d527a343684a60a0383864268ae10eafd63799882916de20231009f74888859fe0eb5f3cf621a5c664c5edefb47e40dc9196a6dbac5fad0ba4ce9a464e9c54878f562282f0b6bad5bc2880302047c435bb500673065023100cfd0741a2c0b72d170bd5881fd7e87611d4adea68c09062d19a540f8f00943193742a075ef1165bb448b680b0550c87702307d4c6d584ec29a0ac81ca01c3bc243b299cb529d3b1966839060ac8c8da1873074514d259cede8290051df58de2ee3160302047c435bb5006830660231009fc22c7928caa44a53aab895a5b089b726829a668d8d1dc695b3ce02523aee10b57ee50aaddc6173506d75c37f719447023100c88188ce364d03bac8cbb511bb407a57f9504684f5fd3c4cd4be6b647dbb670ce9a96087c95b52bfbd07124e6c8457ca0302047c435bb500683066023100d889b37efd3c3b1a697b1968a5e9fa61371c7cdc725c0aa5c81470e05d024bffd5303cc4d90c977b5e32472ce168eaa4023100be33aa3cb3e4db35dfa29656ba49c492771191e69796bb762935b61cdf3a441d04d50e5139fb1b7cf34734dcc973d8410302047c435bb500673065023047e9f28c1fd7aa72a4d68c1eb16c95f7f7697eb8bc3949bccd43bc9595eb2dadaaa3dba6f7124b601c39581235b7d94e023100c9a9d1e51584600052c4b133b07f7660fd4b28cb2dd68fcda62e6ed9552b0c56991af97c7d941cf602f466e9f02e59de0302047c435bb500673065023100ec7452383fb5ddca5c3807ef4cb49c561c7271afe40e09e41f6ea096c645100a5d67d366554bc094a81da779febb10f502301b3fb2b3150da02db713e547051dd619639f55bce607028cb0d8fbab30b2e1b9958dedd8a4d7c6fdd391060b92e0eb020302047c435bb5006730650231008eaabac2408840ace4f10ce9ecd8174e0ae2cfa16b8dcd83cd77f5666ce5b95a14c5b32404e965375df01ab7a578a2a402302432cda2b4e0272c56759c11b1922049835bbbb85d8f673308f8bbe0088a3d42a4452df1c176e23e8a2126818ddf9fea0302047c435bb50066306402306ff76c3df0d6185463667556e93ca91b2250ed42fd2f64259e77e54917a69acdc3c85cddc88b7a030375cc2ba1b7753302303fd28906f7853bb08faf0919f1bb7ff71e0947443a648de13689abaa1a6a7ca0aa987c204f6094a68e037930020027840302047c435bb500673065023100e0ad1698348bc4a80aa940cafa524692e56610ea7817c896a4573d5ef8662300f13193dbca52f58e8b7011949af9319c02300d67f63e6d328dcb09434251e4dcdf2c46b2c3b4d9a1d873826fec46ad3a5e5bcfb2f5297e3eb40ad300092580bbacb00302047c435bb50066306402304b0e13805fe8bf5a069653dad0a4274650d666387601e979c763a3b440c31030a98b0ba00b1e0ef2775605056e90c4ee023051df9641e9936c38f8b785fd72c05a49bec250d130e4d0d999912ef8239802ead82c626c6c3cf105d55adeb6133d5da00302047c435bb50066306402302dbc76766ad85a54a10674ae6210cb166ef9406b79d2e9fa3d1fec79c7fecb719b8abbf751a8e003ec9d963d2cce12f00230126997ce4cdba9961804589626780c52bd0ebc15c6b28cc04e1d897f7b8a84ee7460ef6131536da929f8e7a87e009a3e0302047c435bb50067306502301f80715865eaa06eaca4531d9655e572bcb3e9c5e164dc05ac7499873a164f49bc245a8f00472ead686dc3e56a232bd1023100a8cc82a06bedc47ff5c293553533b850e485d3e31e304048271eee123eb3c212b5897c3402aec5c6410ddd06f71163b00302047c435bb5006730650231008a05733acda54ecebaa42e45f2d6f6fd1110cee6fa05c2c11cab84cf1d997a9385d96ca279b2f216cdb71bdb36585f5902307d0b3828764dab540d45cbf86d0b54157d61f9f0883300a498febc014ba94d5a598c2580f4918eba581c8a96c4b3a25b0302047c435bb500683066023100f2e3ca3cf8f3544fffc6d310967e77fae1eeddddded4fa3cf7e5ab0d3b42fbe033ac61bdaa1464b9c0d3f8b8be138269023100971848a45f09a460446c3e22b5d687ecf31082e10a28207fb692746d6ffd2b95cd803bbf6ea00cb6ee8298aa82dc69450302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305e4a4c9d76f6092776dab725d9206a2416582b553f3a30f3465d325c0a47e51145e5b49897e8df6a4e965db181b24d560231009ca2d954e11e7fd5ac2bcd4d863005423aa4e5e4c8f203f56f8dd7fdc052611ae30d2ba6e256e915a718511459e4e3c90302047c435bb50066306402306fd2f56d801eb3a6ad5fd0f49dc637ab6f00b8da6bc1044d02dee721c7c807b839724ab7ccd2fae9e8067d7b9d6505aa023051387f15042f5e1d0554249ba8f04fc8b18230e045dc5ad32f4fad3d5f0909af6a7b7dd0dac124a3147f810de2b992b60302047c435bb5006730650230158a5adb77fceaea1a38fff3f3f7eb7e160c7783de4c5eb253d9c18ffee50c57ed9222fe8090a15de8aecc7fc932c8ab0231009933aa4b1582f164f4777ca2a88b7bd6f2d8c11ce6e10707a746f8527451a5ff4d07a467a5900449488202ff5b0aa23f0302047c435bb500663064022f431b7035002520bee1952f62b6e6dce21615f7e1ec4ec70965dbb46b54533bf10ac8226dcbdef0be864722a9969da10231009ea9bc9168e92bbaadaf4bab74923886960a647469b5e05be269abfe7cfa9cb4190440031ce5fee44b77c9d64cbbf3040302047c435bb500673065023100d0dda2cb268e9ba8cfe278b4662555f5d3f5991678d43f09d7dc9ff02ae4b3bee53d915fc528b287e5cdbcd980474e030230722c3e1b109f45d89f778ad8cc1f290ca9de56408aebae825fc4f1d295d0806d62b1c8cac81b4376e9a1f629a2e899c90302047c435bb50066306402302194e936ac92db6fb452a32d4e52c29ef3a572ef75da6f558b3c67ce4fa76206cc109bf715d160ea9d8f4e004ba36d9c0230451900c2d792ee1bcd68364adf0327c331258cf4293f475315cbbf8ac6090785036076869322e3678ee88fa42f78a3630302047c435bb500673065023100b739c3e85cec5044094cbde4421b94cb69267ba8529b6f75e7b55bf5414cb4ab8496742c00250bd0ed21f6109fe0417b02304542d0b5332e941a5fa2c1847ac1c1592bd56df2f59fd180167040103d74384bb9df7495942e116484dafc6cd8716a8c0302047c435bb500673065023018ff0f01d9275443d14676afdb1aeafa792810646de64ab58d063a37404c890c3d98fc2ec8441bdc9c7a98c83dfe6d65023100d0ae4352c68ded548ba6d11bb27f8c9c8502503671ba68abaee2b9561c07e40ecdcc335ccd0b9ec2671a78f970a9f9cb0302047c435bb500683066023100b47872b4daafcd2d5c1c5e4f85e84603ffe64835b10b31e211634c1f63b8a5c85876dfe8f1d2232fd62a634af32ce05802310093c31e59ffaf1a829096c9564c0b03f74071f6be85723509eb326d47961a768e4555448ad3445123b2f311262cac48450302047c435bb500673065023100aed0e747f540d29abb39b5d62a0a48c926c396ee10faa900bf44c9988e31adba4454e7b5e7a04b1d998419c0d287f23602300f746a8b6dcf74b0b097499b57d50e885d6ed7d2a77b9bd7cada0d47601d9e5b9c25af3ec428046f4e309f1a415e2ca30302047c435bb50066306402303f40d618a953890aafed4573d43784cfdf07117badd3e3206bd5553609bf7a6e624b205772437d02118b8a4f0057ec0102303c8be56eff60bd42d6a42c6ea400106d6257428327c6d67a030b3cf7138b993a0118ef3a5c3ae0e7ed0b990e012bf6190302047c435bb500683066023100e5c3734c22597507359eb7bb684e12cd474fccbcc5fc0ff3c3e62172bb7c5dda1bedac2141e84a90cbde1d74ade1d8d5023100cf561d7a0f9ecd626d789867f487596eebc5d235ffb9ba2345862136d65859d1307dc3befd53606609f76735de020eb70302047c435bb500663064023021706bd9730fd6d1d8ac86018290da22210c5d53679edba79ad2e054640609b18f433ca4e72464e9b71e67ab7c84f6bd023010a11529c86c8445101766789ceacc6ee94a830d98c4bf45319c8a03f76edc2a2c4b32b59bcc6b83754285793860d0ce0302047c435bb500673065023100befc08e372884eb4b9ee2df170c9c2fd2ce0b75e2ad960fc3fe06ffdaf62b04e23f3e96c6b62a7e70cab2a90c9b6caf602302e42d3d4d1cdbbdc0fe980fded6b8117d6ec537c801497b16e3a133e2002ce21decf7885bb7cc3ba259683596c4f85630302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100bf5cbce637d4681837ded4f01a5f4c8acbcf336650f063846fb2f3f4ae1908e625c751381e6babf0b04225a434b8872b023045b2835cdc1745348412d47ba0ca5a1fb90ef55e4726b6e9552a7daa3b8712c2fb8e3e949b091003710b1adb2ce7bfab0302047c435bb5006730650231008dd6539a31d5d83867c9ac40bc499c9fc5b1b3af01400b0b7e0d7da0c75bc434ed699555c45187ad9f2177b35db5a278023078660b96fc64b1cdbce53c751d3f414a597238bca9e1fb963d765bedddf4d41d7b72b8065b2e0ad237198a781629cc2f0302047c435bb500673065023100cf595d25de9d47187972d2773eb1f6c69406bd66fc01bac7bca144c944145e6a43d0fc152c331ff043e746088258a415023022ddba87e38a9bdc1ea46e76561a44951f8a920b9e59a2e3a0ff403609a1fabc27b777899013f716f8e925b5e56415c20302047c435bb500673065023004ecf12c984af2668a01ef7331063d31b5c930ba5b98ce7f21e68418537e2a6facd9a2841f8bd3a26bdfc2450e30a955023100e6b306443175fe730d38c4647db90a61eb0e8106591f968c9e75644accba58beb706ab016a56a71bde40e350daff7d9d0302047c435bb500673065023100bd887e66b8f274c20c0ee099b5f0e31d314fd8e3a7c47ea9a805d2f8cbb01dc79333bf09e754e575dd333932546e1e7b02307d84a75308922f5797501ceb3af9d33e1a15e48342d2567f95c4731992f54edfbc680847e4b1f2bc7dfbd401bfb2b3d00302047c435bb500683066023100ceb7dccc9202fe3c78b663ee142ebcc0f1c29fb858d415ee913ac7bcf3f591297894edf45f0365ffc73d0ddb38cdafa902310091a35be6714c19ffc669c0fdfe345b425fe99c0b67549aa808358ecbc0f9dc3ac447960837bfaae11ea980486b2cf8390302047c435bb500663064023030325ac7950454be018242284a1cd6717bfa2bbb862f898e323458790bf560189f1fe0cd23d412105745f98c5cc2a6f902300a4d1e24b229aa32bdff657c0950dd4570c1e7b9ea021eaf6066c51c764333da1eba15da526423c2522ff2b958aaadba0302047c435bb500683066023100f69fd2c7fc151874132eda8652416478e5148d32e83345f82ac0b12a9b768024b8dd12759ff188fb27abd79f78ef7b0b0231008673067f84b31eae5c4c1f5ff43cab1a772c24341c58868e1126a34c324eb4d53cad796ab38dcd39b402ab7793ac36110302047c435bb50066306402304d9367c9bcdd75a2155b1da2b49880e6005e6e8dfbd88f7dade0469a1ffbfacf693533e978dd2ff62574d7338e03ec7002307efb543ac9018647e7dd52d85251824701aef66f0bc08c060f93166b52284e92b89fe605a6239dc4a11aa67ee25489630302047c435bb500663064023070e5e1e29d76d96852279e73cf7d7eaa777f531f0e03180768e46a9d0cd157b14d72a495ff23f72591ea087be288706b02304fce1d078dcb77df56998ff1058084fc64da2649e409945d8ff84b50395bbf043cbf19d2745afd016b1823b628f8cacc0302047c435bb500683066023100f8172773f8b2620c591c14899049f05a3c4d506790e93873158b21bdd0d68f87cd0da85e17854e9bb7bb833daf86a66e023100831727490c64d6080e2a0acd163b5c4615adf1b6570a8519ed65ba51eebffbeb7f9491421fdcdaba9bcbb97a8405a2540302047c435bb50066306402301f8ca22412b44cd8fcded5efb1d2e24a7f8575682a3be917671b5f7b2059cbce1579621c69e82af8804418334f550ec3023034a15bacbe003b43a974cf70e54341aab1183444b30a370759c06432dba1cbd3143faf57a067bbea8dfde37e847881d90302047c435bb5006730650231009cc70b4844f5c15b4f74371832e9c44754d35a006fc9663ae457c1327ce4af51615411b13e76f537edda31544ae15ae10230407d98a8ed0f447c70e9a849268d2c606723567de3fe9095dcc1dddbb92e5dd2655e59abffeb325988b291ffca531b2d0302047c435bb500673065023100a4c52fa93efb22c567ae716e8fa67bec1fdb65e6c1387503db47d97b4a41656d66db60c3c2bb377e742bd3f07037677202301bb6269dcb5510c9ecf5ab52f19361db9348e62ea8ca50ba2e26131ec7c5b33244d978c0b40eb613a0529021629d5af20302047c435bb500683066023100aa45350207c5d18b96ac86761d864bcbe94f1d337042efa2654bab06dc2a944915e257211b84910d9b0db4e4b0ac6421023100913b385208b21c9060c68fd53f066fed77dd78dce4e90de92a0e8418a71f82ec185702b3addc3b669640744fc9c2e13f0302047c435bb50067306502302d910d26108f9a900bf135cf5c3d67c53f693235f110d4d4db0cd44ace92a2397793de50cd0e333fefec6fe191350c78023100fd969d31e2ff858c61710b7a06a6cfe5c2d54cc2eba4fd02bb01d8ed11e71fbde9f8534d8ee86789a54d4a3daa1971700302047c435bb500663064023037e655450d96959245aef22b69ba904a10373b3cfe78e0ef70a20ea367e6b5d507a209c8f68d44498b6cc08a6532b4e802306e9762314e7fd4d2d2d84f37c0db08c8734e66e593b4835de36f07d65c5440e96d642c696205a94c884460fadf59aec70302047c435bb500683066023100b7380fb314d58cce55c9308cd71bcec0e1961814c5c9a2b1281b7c645418b71df60004a12ee2aa6c9ad2039ca9e430a2023100dcc6121ffbf1d6cf8cf1a995da45656c83a617a4735cd6c8804679110cee338f6a70b4076f0ea594af08b714168b9ba00302047c435bb5006730650231008d5be53b9d860d76b064d893a6cd5629f6821afa9787847dd47f6ef8309f5f02f60ddca5f2fb86cbeaf4db3e3235b5bc02303ea8f9857743ef6f7761be45ca817899da42eec8bae4646ae571b36ad19f71fb87cff39cdb74ffc06fb3922a76871e5b0302047c435bb500683066023100afa5326937aa737215c56d4d3fd2b0d3b28c0b5313ca9f60a13b75fc61640b5f7cc5e04b92bc05f37bffe15ac36ab40c023100ab321804dc381147e38829e80265d3d82318f986543d32d7ccbed7d7016461272947a7c2004b268c24bfb7258b7878300302047c435bb5006830660231008d8832c50662c4d8b51dc84f2799fadd3965f6c04019890c038bf219f9bd17be46df4d9e9c72fdd47c0907d441bf82ee0231008d3eb426c3e604ab40909efcfe3a36b16fded51f15b751f473005ef3439f4b43bddf3dceadb7435464a7ac6cb0b2c0ce0302047c435bb50066306402301ee41339df7ec6af36a93473c9f3dd1a31a58f72ee095ca144faf8d7ae7d93854033e80628c57e8165564e1e95414f65023054b9094eda7afc54d08aaf8871e07b2241eefcc257aae1195b441881b3fee9203c842f124977824976eedec2fec90ebc0302047c435bb50067306502303df188608194990dae7c896cb42755503e09fd562449808efe9c44ad5daac3d8f2d1555bac92887fb0f1b8dfe3a6d1d1023100ad435e5eade605bf15fe300699f9fd0c93cb1384cb39aafb3c3ea52cf3bd8d8071d5f9ded9c275fd82b7c6b21bbfeb3f0302047c435bb500663064023036e524383bb1dce7632087160fb8751a5ef4ffbd24f888f396b77a7e3c38d62266f65564177a92fb09c8e89324e8148e0230249d0f52de839eee8c33abdbd91ffe1ecb2ced7c44a416616145edcdf094939d4a32cb4e63dca605cb9838db7fe0faa40302047c435bb500683066023100824aa3cf8da5427d7c1cb378afc7713464d629295bfc85f30c8343f1cfcd92c40bb0cdeedb2fef6111b51731619956240231009185accd9e35a96ff1bd45f6d23c8b8d9f11f0dec214defc958a013f377c7b7623a8f80e811bc570210910e3df61da080302047c435bb5006630640230216edc2f016f91d39cac154d799b15e461c5532fe058bc69580b20684510255113353e01d90bb3a029561d42f7e2549902301a68f88a3818c9bfa8c083d86d78450060951de071bebd2e1b3de3e330ae9bca5626593cca63f6cafd57486376d6b6ec0302047c435bb500683066023100f048e34613e3eaf42a19fd5bcb1477ba660b608fa0a3aed95c3278d533623c15b0ccb3528d351ea8e406920c77cd3366023100b7606249c4016c30314fb809b7d3e2be0243a537febf68ae3f05f49d3b150790e5ce169b97b59ef371944ed0d5cb78770302047c435bb50067306502305059252f967bb66bad8c82f37a37e1657568a5067838a7e6614c9b08b2dc03ebe20e090e27d55ff3a301338b2ec0860e023100b55fd92c430c014b5136968342e27bf0081afb544ff1dca35f066ee535ee58b07ce4a55088ed5320bc8db3d788a2598a0302047c435bb500673065023100cbc82b07bcb76deef4a474a73e0316f720be01c7ebf4a4cab2e717935e2981b4fb06b7712de80af7434781593db97f64023028d827ff306d97a7c6285257c8a6ffd9841389983f4374689b89c85153b4df893d844eaf23f494f6adb10a46c4b568110302047c435bb50066306402305d8ff442b7dcf1ffab20a57a15d7363abb16e678b5a55495fce9f1f0296d2df3a9585b5b1747749feff3eb5f6d4d9c67023073e07eb128d48562bd30a3d8a835ffc4ddf7360766c03a5e8bf90f6df84b7ae8660d192f0bc35415ead7e6a809d6d2c00302047c435bb50066306402300dfc7975221899984d5efd4452f71fd8cf31b292a439981587e8fb4e79ca29d0e3490f2253cafc25b4775df00ee81b7102302399d178653706731ff4291726a4be0162de4aa6b9c973d6a9fc46883284d39f8d976e22d4048443909da4924ed44fc40302047c435bb500673065023100d5213b11ea11ad3c0bc19b041e69f1aa439c56ac859a914cfaa1f6452aa30757d7cdc91117be5d08f4a92583a852e94702304126e639bd9ef3a42192050f2222a8f5ed941bf80e62a7375564aa449b9098b67595d9af57474d6d3bf6e72e06bd13f80302047c435bb50068306602310082d16e6f6df92698f721f8819ff108fff89fe3c57b4c8b934c725f2091e3f550744bad77bf5f1356d69258bc63e465e4023100b242ce98a88967f3f018daf6f066b9432bfabf1be19d046aae4ade6ba43d9de9cb9d1f5dc772236d8d90ccc097c2b0b50302047c435bb5006830660231009c03fcdce31476e669cdba50c5a5c7560c8b71c8bbfc2f3786c3089881c5c6c7d6f7ea9b9219437155b3a9e15c30b4fd023100c71e3931f4e6f71897a7df83257a744d4f096f7e2aeab92ffd4a526719c12847363857b051a9ddeca3b418b6b1e57d170302047c435bb50067306502305ad93a5aa92ef74483ddedc6ed28c9cb5ac8f535d48226d23145ca5440d6c1a07052db71c617695ff364ceea7b25c801023100eafe9afac63244348696435e8c49b7a603bab4efa096fa461780fb8481325e43f06d41db36db7057339201732bf3a7e60302047c435bb500683066023100c3bacc6e48b7dcaab137321d21853adc8f2abe832c26a384a0caa0875e22172ce8cff225d159ffd4b31426dc7cf29dcf023100bc4c00cece38a02264d0bb57a9cce2689aaadaf3adfa0c4c1b00cd522e7d1eecee58a97dd9a72a15aee7e7ae33a7adc80302047c435bb500683066023100c16fa9d8eda98940336bfc8f2ef34f14657d9b013fd172c9d601a7d2f44c76a853e687f88d4540f0de3781349b673dd80231008ed1a731ce94858bb5a5c706e86803944fd5cfafe3ae90e6e46a327900dab0442541987cf606c138c89942be9a843c660302047c435bb500673065023100f345ebf8da94a082808c5072c7546627f2dcb345e375e1596b910f3fda5dbfa172c5915587d18998b90be4ddc02d040702307647a3476a1c6d420496f376e86e0cfd847b51432bcd0c036c4fc6bc97c5665db3866456311df2cf9ff06f69301fc1500302047c435bb500673065023100d8099cf0c524be434bdffa425b94d26f0b7828a7114a5ff16a4878e71ad54e8f8f50e1c62ab026dc4cda1436de628355023032bb875e69a37fa2cb4e1dcaf97796e872a3aadd99eede620dd8e83768953c6d6de622ac01f12a05fe0aa3163e3f27fb0302047c435bb5006830660231009a94622d3b5f547e51efb8e48772e06f5b43798706e986ccde2938523d98e185e1ba2dc09b6cb012e36b619d3ee97b37023100f6d76bd2eedf86ae2327cdaf68341b8def554c94883f981368315d9dc2903f1d99c6d7ffceefdf02700339e0b1fa7c6e0302047c435bb500673065023100ec459d969c74fd1381c01cf77c211fc01fc756b89673331e647eac21e109daf2be93712a12df7ca82a71824188cf0b4c02303869c12331a691431d51b6ca62b3e10c980c83711207c182828ad998eda7c043d7af27359083affc3ffde157144c9b5a0302047c435bb50066306402300ff841c43a4a018a780f0fc01d6ea5a3c847c04d9edbe3f29ca64a6e2e2c14c3142a1c31894538f619cd5c2ba7e01687023051d8ebd454f19cbb8f90b9cc8e7013d5e474b6c88e1c9eaa0898748f8ea6d18c4fd3218ea3a4c87c52ec7f93ccfffa3a0302047c435bb5006730650231009105c5b738aa2962e88f67e59f10f798430d28dd621f1a4493aebc0498a423193ff7a1022101542418103f233aabccef023069d541bbd36f22224b078c77d1b7ebae413db0bae04fea9e2b30e241fccb6f1282776193d8566fad1179ed2ac937af120302047c435bb50066306402306e72fd172cd195c74758f2ebf0606066df9d9a8c3acd34f3e171b1e7c12e6ff88027bc2bbc16690cae2a7473a4e423b802302fad166be023fc9b4d7d0ed0e790f22106cb0596117160187c170ba61f62bf5e65bb39e205fe49a955bd39480451e27b0302047c435bb50067306502310088ccaac4e6dcb2248ddecd3beb8ddfe2f28117121127fc889972d22c72226b617cede459715a50d11a21125ddd3638c4023006173d727770396af68c6f50b776d05bcb0a79ab144c4138351988c2a3bb04988a7932dd5bc553d56362ef7003eded550302047c435bb5006730650231008d1f16b9d65fdaa99b83a01c5d89641d9d9b9cedcb1319c322f6a197f4a2f8384bc9c2e0335c1aa25f184da59c158e2c02301ccd3e28ca42a9f1bbe87169457e2cc79342b5f200b3338e256be5fd9ed09128190e93baf17740d82c36d32d26889ec70302047c435bb500683066023100db4cee458db8f8e7297854447da78d831fc5b018db2b86e7f36366abe7f84b7d24782896eb55fb39d4f26586589f6f05023100fe215c700deea9a6454aa73ee42109981243985ae763a7aede5328d3bd729a02816c040cc811753da817bbb3778a032e0302047c435bb50066306402303cc28a6309dc583eadd7b8b8e413f40248ab1b27865556a242d3f019ccd7edc0412db0ff539fe0e67f36851eae9254b802303fab737c0057bb2ee855f9b419e8eb7afa995ea1de9cd75e76d561aaa06e411479448a26149a9814daab8c6ea25627b40302047c435bb50066306402300d732a473bedced768457d791c88f8118f9c9981dfeed06786e2aa0ebda297fed32ba3fe78443832ba4f804ab638952c023031ed21041f93d9227c37d0eda320ef55ac78f29cba07a0c99423bc7b337e7f610d87c9707322fea11810298ef2e27ffa0302047c435bb500683066023100be7f122b3a1f930f33598663bbbf2b8e103251cfda7f9142f0afc3b703bba947c5e02753d80c5ebb88bc2ed8c60f82d1023100dc91b1d653776e5c19bfd07b88f9013607f2799e49a1551afbb9f369683c03ba4fa0fa14c1ebfb8c84a58ed2ac70123e0302047c435bb500663064023050a04adc30d75019209154d36a07c58a5ee44cf31cfe2692aadc01d35c3a9f4b348b23ae6c3149f0c23235eaab529da20230071da90febe4591b3bf290a1d96ae46345486f3a6f6374aff45ba72eb9759d427f0cda530a8241500003a0d1e86d03700302047c435bb500673065023100c40f6ecd0b2d2c0bb9a9dfe1001a6074ed777b4a7f2b52c949edfbff616d433056301a56148948aa89bb96fadff6284a0230797a32dcb2d2a75ec1ee049053dd00e4371dbbe9c2417e852b33114147a4f664c4c8840ba47924febbf00f531c37850b0302047c435bb50068306602310092e1698c1a09c78dd05e6dc4472fd38f7d1f9f1a12e729551331c3424ed23c1c375e73238cf15327d51c4369ee306c8e023100c2e01210916f54ce22183f350fc5b356b609d47a023d2d0d3e15a6df9d4b7e132bd47b8142e3858c83c7a7c5c36abff70302047c435bb500683066023100bb59c36e3b6bd5d126c6065f3cebc80149d7390d67ee097db3f9cd8b10b7f5188bb8d1a47426af7f1104407dfc4a83ae02310091598dc514fe1c5befd92b6cfa23cd321a2c5830179eaf4add714e2d9bd5d42067b6c0fd819749bad6959091508781050302047c435bb500673065023009177461df017f01b7bf6424293865afd5a319b811fd4e89edce37abcd7fb22df34b39a45264a5061a5d50f52aa9ef97023100b5e3b8efeaa21be90288e9b2f1944def7638508cb3f004c9913d14535f0d8b7a90330371440ec88bffd0232a69b838c80302047c435bb500673065023041de0959c23b7735b541067373b998658ed7144c147d97eee7a9b148a82d7f92ae62e6597252d214f435e8d51113bd28023100ba63245f7ed4be79db8ff1f112d55b51d4bc5781268f1b3f2531f26f5e124eabda1821ac26ba1d0ee8b07f63906f21430302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008bcb7e6abaf46e4e82b967bdbc4a2299c5dea038772b4520f1389bac72357b6a70dd05535d1e81756156ec6b076e4a7202302f0a03d0df3f6bc682b4537a9083e6a2a679fc1f113c8de93b19597f98ae2d4238325975ba97f4f824db49e33448f0d50302047c435bb500683066023100ade9f47a399e890ba6cfbef84efad302db45d45185cfec2b4b219bf98f4a3f14decc94f06d59bed92b8c8e862c59c66e023100dd27ceb370c7658c211b18ff6b4199d154ce3bbc5e1578380292edc461a3762f92994f93bbf8a424588a5355d0f6cce60302047c435bb50066306402306e54b92381335cdaed823ae4c9968929ab407b3b646184b6488fae5064dc4183a9a7f4207ebe20e17ea3d39e0f83ba4d02301ff771ab7c5956ced0f1914e60367ff4964476c487f2dfe9c77060f9b2b00cca0c14ca411d3841b57af641503f448bad0302047c435bb50066306402300588cfd44be4f05737105631718a86cf350cc29620581129550fa5a1a76aafb0c3e786265bc5a600881694a41c4172ee02302f916399a16ac88be7149cda960cd9028da1e8d4f0025664439812ef12082563f250062b5eb2f1d8a3e174aba93f39af0302047c435bb50067306502307fc7d8b3283cdb3382fc4248d0c95c91ce2233d216e9e06c5493c0de80d3fd62ef092c0d7673ffb5c37f26320eb44f60023100a06e6ff56a078ffcfc79a260008acdd8c410a87cfdd3707d370dd2737f58c84f14e817e221beb4af2ef4e2addbf7a2940302047c435bb50067306502301490daf99dba77ac0cfafd50f3941ac18eb7db4b8599a5648f87f5ba350414240180fe534401f038480667e33328864d023100d1881ae2dae7b64806e1b71479cf3c12f60ebe86012bd46637a9fbddfe1ea73cd2acd6113ab941edf687f33b2dd9313a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230283e56fb4444f996e386b42dceab0b9f646956ff184a3c2498806e39773b44424f56de58d2724f19d65dabde93e106ab0230311ef35d6685bae42958ee5812eaa394b1060bfeaab631f5fc2dcba259a3327ec9c5ea81db1f4ea0ae5d39b395d874a50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100af1df71adf3be1f54ed30dc204afb46124bd0b20c13b4652cfc780638e33ed8595fc8b45a7f7c29ee3b61b446e09e75a0230791c2e7ea7434b93237ce4a4e2afcfc8264157cb00087ee56723d52b68e668c212d7b82bce99a867ac3e19a62688853e0302047c435bb500663064023015c9c98c2696143c65904a86a068d3cfdaab049ee0bd3046b3cba698427fb06d223fc053516c1e710caa909475b8bf8002302d6683b435de584dba0e0dde2b8107f68b3416550c455d69a3a2e152cdbc44c60dbde40f63c711c12970fcdf1c99637e0302047c435bb50067306502301fab318d5603dfec7e0642589374cba04136d838e5ac12df3c566084b5efa17e79feb3a9e65caa943f805a06cae89f51023100ff5ae44ad0a327c105d51defa92543c5865fa3a37a4297a4ce7f96991ae641edf56eccc7635afaf1e3ea547952c043b00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100da8f4b77483b0520518f2ec3f617a18fa7e33ce71d5b561fac707d233d31d5f04417132f84b64616327d0435f29c7f75023006f2de7665ff9aefbb7afb5c872366ce26889efe147614c4227b9e93a8831c5e7ba42bd5ecda252e98b142573d2d7b2f0302047c435bb5006630640230720334fa20ac454db691c1c08c940e3e268efab5c611955a095e5ec98d682a14ae563b10656ae7a0edf474b911ed0b8402304768a726b7f8b94183fc65a78919fe10a963bfefa61868068646b6a0707889e5ae6c7dbda15d26f45b437c8c3f448bf40302047c435bb50068306602310088ed1734418837844f3c8dac333a97eeec88d017ebe935790f277fe35c039f89b4622fee86094c2c171f862c672b9823023100f7cb82ccd4e2075ffe9d5e0d002f18c964c8473082b953f1ab43d19d6892a1b02f9c64cf64e8f8f9ca90f4b0297d36450302047c435bb500673065023100998ccb615fc2cc95a61fd4b4e26b7dba7e503a86d0111c8b4101847a105d288aad1bbd3f7cf3e0f627069ccb0bac97cc02303c184805584e742e92f6a06a06db77b4c7a8af5cd2e19f8708042cbf7243eb26a07a1f9c5415e166668196619ce352e30302047c435bb500683066023100cfb00203ff95964d971a3965e960ed2892bd9e449c9fcbc014bf3568fb2faf4daf9987e60c400b54eb872654cc1bc82d023100ea613fa1c45989e2040da978281561af48593c36ab20a8d91b443994ad5459bec920225ceb48733e600c5738a1cffd660302047c435bb50067306502305e18807b7624ab5268acf18281b85263532fc314a5d6c1178b3b55ba7f43002bc63e202cfce90705f12d2823be5cb11c023100c201caffccb7335b9220f8ae0334eb82f5d88742caa7260d6121c7081274c28b2e502f6a07255be07e7bb80a4e3839da0302047c435bb500683066023100de0dc608b54dc7aa128530e4f7d8f80e36d3d560258f2dd48b88d90cc6d02bca586ba9f7c71d6a3636ac01837a73aefe023100801c877d9f0a9592699e40faa9d5963004a88acd4366741c17e51d83b363718052315b824598a46403765e867c02fca40302047c435bb500663064023069fa82abdbe37d0c49a42a7ba2e8399084ee63a9ed35d4fa44b4be92b5754a16e701ab51f0fda343a6bec50fbdfc7b6d023079171d1f7d068e99d5ff2a6ac04a25c4978c98293ac787f082f630779aec74959fd99ccd0027293ac58aaf0022499e850302047c435bb500663064023070bcdfcbd713d84743ee4fa285be8713f6dd8af8c9553a013c1a93b8b4fb91a547b29fb50ae2ead2e7bf8c19c209e0c502301addae835e0c49f31f72d449aeaa012868979b1d2eee43b7a25f543bab0d04aa431676e8c2dea1bf18ba1c2df5a669150302047c435bb500683066023100db794ff02727f3e21191cd71306efb68a9a18140ba875608920810a995edf225d6bf030e1509abe60d4b10bd8775d629023100cfe2a3c879e9392a6d8e40705cf4d814e2615dff9a4504a3be0c6230b92a63ea1b5cb03b2b134a3fbeade74eaf22cead0302047c435bb50067306502307c141be766144fabc7adeab6c32f7b00a8af2e8d74674fbe63ed8a4e08aef2191d15a1a8822a1c8b4fd596b7e9e17797023100e59598c4fc9d4a94fc97d475871a6ee46dfc4a87aec08c6ae6333f842c8135e73298c714b5ede22fa907123f3b82956c0302047c435bb500673065023018f41a55ab0ddf6a72d38200bc7d31a177141b068800cca5bc90cb180ef5c10c3efc437fd14d737a78d3ce1925a61fb10231009f9c00753e38995a8a06195ee080265235d0b140115f473823a20a7ff4d37bf90305f788456f8099f41c5ae02f67d4700302047c435bb5006630640230009ae135b8bd1f5cec94bf38eef4edbfa334df6380068cd492daf9a02f34472328a238be6305a8fc047a1104d2e35aa50230161e61ecf5594039393dd9c70e47eacf4d9af1404c63041b3f00480dbe62b0bf8587bc15a8e8a83d225d0dc062f581b40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ab8fce4ef1f1e956dc51b58644d57ead2330f773238482570ce2fdae72822a8ffce78a094c7a2ab28d1505d77eb5e936023100ba108135012b676bbc9314d4529927502f054db81218186f76bdf25e5395cc63fdd25cdaf1383aa69658fc4437ff69f80302047c435bb50067306502310085cb61af82a84e881710fc58b3ffe706f1f97be785642c1612f64c5d53594643fcdf54d1ad10763ec5faf5ec4a822608023037c2725745e73c04aa4bf5cea040b768ebf369730563c57b58e3375c7ba4708dd6f84938f3bb3c7a791cd42f294598730302047c435bb500683066023100dcac07facfdb58253bb8ff960779287f0c5b73dfe01af5ece521156cbb9eda32f3e9db87a14b0a4049eef5a91b8ee6ed023100bbd47d17ef5155e0865fe915160d3b89a58af6633f98a696b1ba4a50110173864358e99ad0ba4acf7e4b9c80b98544930302047c435bb50067306502303d1a5b40731228dfee243726910d8ae6748b11ee8411662d643b95c8f3441109ccb320d733e6c24d5a889957fb160de6023100deac099728fddcce5dde8ef4b5616cc798bbb1ef8cdd4b449de08a68678e7de60b31454a2fe4adac21f540848eedd8610302047c435bb500673065023100bb9e7f8dbe05990af1dbd84b48e3e82b8cc36cdc92e4dc5db8f3d2e810c834e903c641a96e6bb3ca4b348a5224c91414023003ea5fc5c85646a12036c441a9695d96b2151818a694bcaf5d83adddbbcb31488d78100efb6b882f4e55ad9c3bf41b6d0302047c435bb50067306502304c395a993b04b12554540a83c7f44d45746c51ff25172abb2f26201aa905f94c3f3a58b8a1fd22919f8c38de6b0ad763023100fb1d025c0aaf0903fcda5d664a8945e9741717b721f20083bf6588bdf838363dec5dbac40b4a181692ece29a26704a0a0302047c435bb5006630640230341bb16abad894fba8b297fa2c8a54ab57c446d2129dbfd98ed2c6e3498af074b14bf49ef38b552ec31f8a57d85e6d2302300301cdab79a6e9985b8bb82e2d46c321a39327c7ce21e28351e56f6a73e7c41555dbe069d8dd8a357db2e4c683e5a5b20302047c435bb500673065023100857948520bcea31643cfd2097be713d4b68ae7e9d86dee52837561f6736031b38239ebd65769c71b9fbb2ed9646471a602307bacd1ff171462919617e30fce4b521bd40ba29d5cd2031d6823c15ae356ce7b8101f25e45eba2ce294e5c641032ca1a0302047c435bb5006630640230497c8d675c94f610faa890262e057d5600c96d0d52d6bf0ec9fe9bc7229e80f133d033e87b03c78504fc1ebbfa43c3d202305d6547d967df68fb93ff6f59e5b2aff3c1050fc27c08f288c91ae72038a6d553a4e3c3b4312c8273564ab474051ea4170302047c435bb50067306502301b28aae9812c1c7b16282a57d1d80f0ed9c8109079109845bbfb52d4c5a021abfc147ab01f1c4009ed3dd088126cd48e023100e2c4a51d74a8c9c709cfa5ca085c262c27a8c8f11f231dc512acc70cb5bb2043f752a81528c129905bb46f6658fe8ae40302047c435bb50066306402307b8daa6ee6218694d8c51dcde0f3f39bf96ac34ddd8f2f061eeffa047cb5204a3108c0ac7c2385a5e12cce220acc4f21023062bbd37d6ea8f58dbf5ad215068d5bc37d3e036d13127ec7584ae31cee6ff2a1c050ebb1b8df960e6735d19a0f6e73690302047c435bb50068306602310086f542c38ae9edbeb5e7ade2668e0a8f4d9eb6c5c99a0978509e4ced29debffbb41f8c581fe9a2fcb071af13c91243a9023100d98634db756bd9cbc4a7087df8d3250f8532d5917eaf77716e5f57c7bd25080e169b1b92d3e252a998c8b7ecec2f5bdc0302047c435bb5006630640230047326c16656a82031a5264bf6e9e58a241da4a472a490e805d797439727fa470272f418439450f2f6152258f0e3b6db023058b0219f126d8e1102bbebe57792d6d7377c8f281f1acc9437ea47c93b3be42443ccd1fbbd55aa5b32f05ddee5dc95840302047c435bb500673065023055d4d88d5c8019aff2391fbea2e4909e7cccec2df11d1dbfd77e389bdede0d0ef14914186dc7c6c53e7e0170b807849d023100c56825b0e43a11ffbd26b60d43c62bb1d6f48965e1290237371c52a1051de639a7cc0c22fea5d9d30bf513d9ec0fa6510302047c435bb500683066023100c42ccc31478b64758ad5b2e8c850486cdcca0664c05b3dc2104534af2b8163e1b77bd9ec2615013371d9400e1d1a91b8023100ab617c64b854b889dbed8b482959c0b29a7151d93efce48259be94405153fd74bc17ed64021597e9c85149ed8e018cc10302047c435bb500673065023008be80f73caba92e202f06940abaf1c4c4093f0758d0d1923a56c9bf97e79b46718eec6b3c1af6e996dafc2c87b314ea023100ce0c8dac1e6d7354b6d68498c24c7d859456f12e3b471e3f3818bde087e959b025260c4edf08d135b250c7529175d3ca0302047c435bb500683066023100c32a81eb52d4073c168d3807c550c5bc3d42fdc1221cd1267a93bbf3df6baf80ad44979509b90c02e773380ea1e8a6db023100b90c250113e327ed553d45e4d516473d9d4c110b6f182230ec6584f11924182aeff96f834d009a1a393fa7263a5941640302047c435bb500683066023100eb56901565835d0fc9b54e915a93bf7222b79d04e4b712f52eb6c8669e8fde58c038491cf27e66703f6dde339c08a90e023100d2ed43da35a14e3bfe489ef43386945ac0ce14c2f870f1dd4e6fa12c78ce638d61f033cae8ca9a9261932a7849919d630302047c435bb500673065023042a232c4b8bddadf40d4f078ed8be92501b18dec6b534adcee2d857655e143aaa06cee4c2ab2e9ca6e52ccf80071820d023100ad51c694cb19945b88f9d2e8c2da20ebc8c806242af27d500cb3f4874f10015c91afe0fefe2a01680cee14c9e1e0929e0302047c435bb500683066023100a21ca4e5d03877933a66c357127ff01834251402d20ff74f76dc9cf44e74823f90077ecea44bbed1758123b4dcfc5e34023100a3ca114cb7753a17886a5da6560c397bc760b2fb1a4ba79458499c7911b66030b3dfe7508799a85d194be7fec760080c0302047c435bb50067306502302bd68f6f4a74ba66cdacc50d99730e9b7f9b012739a0294e0c51f5f43f308819fac4f94d4491f4578caedcbb3f2a46cf023100a5189469dd436df6470539a6733e52bbb37f61abc91cd2482a0cc8ff6c3da68960d7cc1295ef3555701185ef32ae802d0302047c435bb50068306602310083e38160206f2a10450c17484bb42db04b7ac664c7acd58ad7c7abf74356ccceb830d4619cdd8837cae2c8baa5ac2f3302310096610afbd105fcf06152564944a76bd631c245d6be3006d57ddffedf734f4b4fca0061bc6d12ea7565f5a9c29a23e41b0302047c435bb500683066023100b4db8be8c6d10dd15aa3535ffe7e83d27fb55cb12e78182ab69bf4c57840847d18324a2039dbdaa94aa576d6dc63c71d0231008b8c07456134602af79cb85b3461198eb093f458f544458aa1ebf1b4861e3718f902bf8be1bfd57d30262b99da1711940302047c435bb500683066023100ea7b810cc4ff40dd449d888fbb0acfc80d129872010332bcdc6badfa530300e3d84652f23b42b4bf99422be2b314bbeb0231009bc820c90d7fc665e46cde7f06d3c608baa1a19de95196bd3c18c5aaa3c75d9cdcdedf260ad1414556097a5e9f70d11c0302047c435bb500673065023100f579167b2f92fccb8417ed09b564f59766ba966f8696a354a597fca90934b3334b6696be0c3ecba3375bdba9a609757502305f2ea10963032807b5c8aefa54e5ef590a47d71a2744df58217db6f2e08648d8c7ee271988122bc650364ed892a27db60302047c435bb50067306502303fea398b0f0b0c2f1881c91e42a7d8aa10c670c84090ba2085f873d787737ea8fa9914bc348a9c571207c00737e695e4023100cc742790a86428cb14336d8eb11491eab1b1a4f3eb7db58a48d1dcd77e95148bde5ddc1d6a2e89edf29d89259c7926b60302047c435bb50066306402305036e30aaed1f04f1b8df553991ef2b1161cdbb0d0de5dbf5a5e99a765964f50a033318e99e0cc6dc52c8d9ec6a9046e02305c95bc701bcb37679450bc49547fa338407aba125b572ba7423fb43dbb3fc07b59e36d76f4f477be6e1562d63ec769fa0302047c435bb500683066023100ec6f759868ee3d772953a8de9f10a1a77b88204d663f4a4fe9d84da389716b91fec867384180698a4a2d72cc43be30e6023100e12b0c847c806b3be430b6a5a52a5c41a3cc6c433269bac723a7ca5218036c9fe56225f01933c572da3d959b96f2dfe20302047c435bb50066306402301c7735e3720dc7fd0febee00e2029d8c69d6d46d1b3e7df886020786c1a3990f59add52aa1af9442e79c1a0cbe080edc023040419c664c013e034f4ca8ca3c28a4a12c328adadcd256c159c399d9ac898f53bbbaa822f1949ab651e960f67af3af150302047c435bb500673065023100b71b546046774404275d6fc7b08479c41846cb9932cb0f96c726b921b620717c0be87a85b311e64246bf48721d4a78230230511cc7b35df0d3ed06193a691d99cfd8d568b2ecf5dbee3dfbe47b4163a706e702ef93cd3b11ed26f1cddb70f53ccc9c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ace658b7b0b90e4c8fdd1f1e5fbcbbd713f7b8f0fd0748f9c50de88074d525f3369a15238aae9d612cbe8184597356d0023100fdde7be3e4096aedfd1dfa083ae659a0c536b1fe05f98f7f2c1ca9a6a16e3035bbd63c3174ebd87b587ab2fae8be26f60302047c435bb500683066023100a8d273a8541b26a880e04c6f3245e516dd3f4aad85138a8c17601caec74db446661897a385305e3c04567a7e35d8c0a9023100fb0e3c8ec488655eacea5718b55af49ed57f5ac64fd29e858e119d235d00cea9d78bce95c957f23ee2ae15c0e547fef20302047c435bb500683066023100da9627fdb44f72a02ef6bcac8f06f910e7bed712210e5b6807b9c3a0dc5848eafc85c6c01b8fa2aa87786336f9bcbfc3023100ae5644352e8e4f12e90fc7603136c9ff7e1af60fe8b0d75508aa389e912357f73ed33ab3b428e90f00d33e15209b26c70302047c435bb50066306402304f7e2cb6011facb7963bea5abc7a0f36f0c79625e71002eadb9279f809d0834efbaf81fe7228ed3ba604fdb01be6555202307fa2b61c955f8d054bf8ebb06a6f34aae9d8f1789f0c031770c6114d6d828e74f8f5169c204e57fb48b1a3c2622b09c10302047c435bb500673065023100eb9f7d7c258993c6349603636d7f109d1eb94c053731d0373394d92090d9bff7971742e6251cc5ba549b1c2381b5394e023017422dab25484d8227966086ff4e8a3a8ce7c90a15a3790d1ab8a9be656f024bcd3d87b03be985d60de72cf3dc644eaa0302047c435bb500673065023100dde6d9948ff6b85a409c214219bc1d52c1689acb4d7f89d5f155fcbf15b4b6aee9d2d08558475a5ecc9c222d3a1bad4f02301ecdf33e94e2f53d2f9e820c886482a3ef01eaa9e4e6beff4840decb400e67ff3127d1a8fe0331f68000674d21f9fa220302047c435bb500683066023100a63d5c599485f7e75429347d1c67bb59f2cfd908c5ae8cb01a8b66f77afc48295953d119a50552efeb92ce21c1137017023100e1cb39834ce9254db9fca4362d397ed1a52f063fae202645e7361c4b00b24f233684ef9db697c0edab44e85a7aa17f500302047c435bb500683066023100802a31e441bc7921fd579e777f78e7630ae51858c23b404b3ca3717660ea599fa29f7eca09786c11a6ec32395fc3feae023100d43617afe3db0b19077347e59093fb2ae3b53e0d23a77437ab0ac88b0256a02d8367ec366a0044464ae22feb21d0736f0302047c435bb500673065023100b9570cb87cce78cc46122a48e448165651c3599324ad01ca303cd4fde1748a62d75041c6246a33376bc815c6c7c9d69d02300863a133605ff17b19457ebe2fc1d267f91a719c013fb2f16336031253da79091b13a3f323391c6fb6cc35819d12b8a80302047c435bb5006730650231009efaea9c4434e009a9948bc1b08ecd11fe4581527ab546b99c715c297f78b7be661b07efdd4d04cbf8fa03c87f3548f1023039dfd1dd1134b2ec8617c0de66237ee61b56547f3f3a842fce1b6a2b4e548ac6275543c3ef1c07dc33a2b32e9762878f0302047c435bb500683066023100eb634686bf402ed1590244802682571af8b4ab8e455584a3ec9b8f0b081b15ca12d33496a67b9fae11dce1b91827d953023100ee6d44d0dc1dec25db88084145265d8e46aafe9983eecc27561b4ab00e22f99de06640b592242f7e452bee9ce44c26de0302047c435bb500683066023100b67031c3819ca5e9c65ea8c2923f1706121c47b4346bbc1a0033f0044d8706520b3fb6b57a2896c5a8779a01818d875d023100f09df8fb7aad92d272c891fb3b587e4c1aa87457b65fe770b87a43e451c1839c9174ffe2dc1b16317470458757cff3480302047c435bb500683066023100fcb7f4d8649a62b510338a56646dc9a73110e4a0f51eb5eac37aa51c02df2ecb91b1c44d12e7aa95cba049830c02614a023100fe654309412db0b7de7426385bb197030b4524f6235361a584c2d2a85c5d8e13b410a2d964643cf1cb0b1a6d085cd2f10302047c435bb500673065023100f9c4af91e865bdf4f9c52e19169f0d698c8020fa2209dbe5b2fb39e1869cf1d20a0dfa0c2b99d23f9d150d1d030ca2d602307f8a595dc1f6bf984777762c6bc7f894ae42ec817380a2ddc9062b80f185d3e80b16217de5f9759250705285c03b26730302047c435bb500673065023100816f111dcc1be677c77065e8eb42d96813ac16a6fc6263038e55a212fee2081c0b960b7e30243cf2d8d265313bae8c66023072dc35b3403e9f329a89b639a4bdf5201a74dc9654e52586d8bbdf61fde6ed1eec927cde935db28e4d3649ac375c08a10302047c435bb500673065023042a968b6659f9f1d57f3779eb4ddca5b5392da54017d7b2e0d562a2df510c371efd120daeb975904147bd4949345e25d023100e536f5aac7a9fa64d043af74bd0788a1ea205114acb25102437681c5b592f26259685ce7d8c5f032a3edb10c6a55d3640302047c435bb50066306402307c0e508b1f8aa404b7093c7dc00edf878f2339354a07b8514348a978a995679872076fadfefc44c28ee96f150029571e02300184868ff04bb5f4fb5790de81fa53479d3bbb5850e6fc388ef9de6d4f13911aca04c6af0063ab7116d18b44b902dd590302047c435bb50066306402305c03afe4a1cef3149cbdebfbb1db0ef81cd4863860aafc5250037fd7df5a7138ee560919de061d0ee674ce1899c5247f02302a5255fc6d0e13d0eab6ed6d26f594205b67f6ee4ec6ae5eb14c9593becd96aaf6c5bf09bd88036099cb89442dfd67120302047c435bb5006830660231009746adbf0c8258916b73bd4161144a987269413fc8f9650f013ddcb27d44bb3f181da0eee7e7af10e3b357773a517cc1023100a3c03b9717529ebe9aadee921aa0318bb3cc2b7776c53fce7cd0e715b5bd286ef4f2cd4e647c27b588d9bab46b11d0f00302047c435bb500663064023012a1a83350e97a6550ffa009d590f907d4e05bbda755c556d17f06cb663b616c1be017d319f325aba669c4feb851dd94023032e6e69aa7efa84ae2061e1b1ea3c9c34b7b803aa2b9094442c0742d2bedcc0dd85aefdce341aa5a3e5f5279e44881060302047c435bb50066306402300b5df49d745b02ed738589335e9715d03c76ab49eb5cb10d43f22633ac6c2e1a4cce44bdf8a193151b9dae0446af5baf02306c762aaca41f30979798789bffa279753b93a23d5bf4b132ad3c422a58dbf337ebb8d53ecdea1e18a10b2092311e2a920302047c435bb50067306502301e79fd7cee087ab0c2d108094c33c8f0dc14c88fe1f91e2ae4e394d5a51364599e7cc51f42fa0bd49b1b274752001321023100a6f5ce3e0450ba4cdf50cdff5938f6ef01fc280758c6e480faa9c61a7ebcbc120bbd722a5214adbfaf5c988f8dddfc610302047c435bb500673065023100a6e40166622b782c3cdefdcf3a15bd4f1fccf485a4d62afa6b9bb7a47b49c31d5bf6636bd2cd228c9ed7d78ff6d6b53002303132665a6b87842e767c749c60f14ca462d4265dfa87fd84869ce4e4231e3aba9bd5d27d6efaa0423b63744b8dd2da980302047c435bb50067306502307ac493b389673c848e01347ebb9abbb3687319cf2aee6081549cbdc773e2290f4638c584cd339c600179719ae1f8daac023100f925bf69e09f962bcbe928dbf34c8f6edf60fbde0312de8b066037ba4ff40ac16d2ff515b54f7606f97f54a57f39f0060302047c435bb5006730650230516bba9738c7afb3cf938f9011f2044389f7e79148cddfda4071c20a13af3f656f5e8eaae8572630ae53c499d21e235b023100a3ec3212b1255b6ce409758b76bb7d969785fbdbf3d02bcc742e9c2c1da6961e3c970d36512eb7b6084fa9156c2656e90302047c435bb500683066023100c37c7f7469e93a37ed139cdd815924ec27327f16bd51d5888ce6595a54707efcf5818a55680532d88819da9b63259baf023100bf4e7ab62fc46edee222bfda755ea07c9bc09989385e2b01d98691f1a6800fd7994b09347f544c83a4b79b8b9311fa6e0302047c435bb500683066023100d6c497cd5b91238203c365bae0ad9bda95abd5120fb3adf0f219df9ae072823abb7f86c2024444ae38c306196f4c4d43023100995bcd09baeae2f6b1def94b9447c85fbe7d2cce3da25a136ddfef8fa92cc707db2ceff8478d2e35dad17cd43ebc93930302047c435bb50066306402300bfa0ce3c94d3381312b9b08bbc78f16d3a794181c1ded8d55b69c4fc166492810dfbafead690dd6de41391b72e4d7fd0230612ad0f734d96a2bc2b6e22fa3055b8684ad7a8d63d214c09cbf3fff6ae03c95fba43a2626f135a77c021c314e1602ca0302047c435bb500663064023026b9b0d1f5f7605c534cedb9aa7c9940bdd3c5b807ab7a8d3422c77d4c3d0a4ce5f280632ee297d85dea40159c846a59023024d29a9bad69d22d16c3b186952daee0fc5a553bae3ccdc40a07f93de0a7ad9179161b5d2155dc9a56aad68cd403d5c60302047c435bb50066306402301ae35e60b876573b408d3ce7ed48b36156c80c6d6bb500362401c5cf5212196b30ce134c696b9a541e3042b04e973cfb02303ebfa4ed7b066823acf76668d1d30a1eb1a06f09708615605ee9f35ca4340d1f3cc5c2860d86cc0f5a0b972a8d9b73740302047c435bb500683066023100bce9576c029ee2e5e0fa455770898659b145712a13548f8abe57010dfe7a50d1dd3fe762828215597abf3cc52494616e023100fbf6133211daa2d7a72ff6a463f52a5782441b46504079fbc493033ff0a9e5943d69879fc58495f6221237e0a08062080302047c435bb5006730650230366067d10ae5fd57d39d76fbede327a29b0d53f04210155e52557862c2198ed28d9ac2d2e9266821fe24d02daac3587d023100ffe467913de63a6c21ce96c2a7712317f3bd12581980749c2d9f6c54992275db48393180d41f8532c0c350cc5ac0c55b0302047c435bb500683066023100ad7c54714fefb7841f9c7f9bd6b9f80d41ce859126882f5df005f5cef6642bcdc33ddd7dd324778d9760d8ff3e951d3f023100d17ccfa29b9bfa94da0a81918f2580ddb1250a2c1bff786d544039d66bb8082f3d2de41070b15f9d28e5456e6a11deb70302047c435bb5006630640230475057c0d9ed66722af86086f34281a9e5626518a6162fe40d0812b23c07a22050ec22af1226d447793b513bbb9265f002302ab72d25cf13cd626d355d5a6ca8d68d67ee03ab90e31847c421f5ad594cc10a398b6521ae1037639e4f2ff0ba6ab3850302047c435bb500683066023100898563006bbe03218e5ac60af56d8f4c524752afa56cf8e90d059e1e95ec09b44c86f2b1de99871e5990a5bfc746a961023100aacfd721ebaed2be67e7057cd1bf3a9aa4febeba9612ee1999f9fa343c9c49f6fdad5dc9002e2837e16ceabdfd652efa0302047c435bb5006730650230777969c7c3e841904992ff1fcea6184b3c3109772b457ea9ad7832df1dd52f2a73d1a991d10e7e16b6648eb8b9f6c1dc023100ea3695925227b4a19425d810d9d01da4feac39507f9ef6077a05ed47103d95db611443a1157ffa796de74722ccffa6870302047c435bb500683066023100c6ab2e119b9a0f8a11780bac8874e499630d291e061aa6714a0676e792accad626016c0982156f99f1fda6a828de95e202310094f368fd8f2b4753f8f903557c6ad0eaf01132ff5af270d4323032787e0d5db0dd4e7bde035323907f8d5ea90f573a510302047c435bb500683066023100aaf63a107a3ec9219e9143667e8d19da7b572830fcf7133bdca565f916715cf1ec3de922e6b1e9f0d8bf608d5abe89f5023100bee4dfc051da8a025e256da0057dbe76a5ee2bc1b3743599b6ff6d4f5ff4f705bccd8e75e727e62d20b98d5a72e6d8d30302047c435bb50066306402303549d227147ca8e5500dec478df373b7b6b8a7afc10be2180ed2699a4d9dbd6dc5fd20d97a93f7a8f136f8b7cc9e44ae02303ade05c762699c6fe944d8cdba18c93cd2c210e881300fe6f41f223b31ef69e9ca5dfcb07d9d0ce71fbaac3c59c6d3790302047c435bb50067306502301aac7c53d589d116ff1caa4958e77ad45fbaf65a85faede6f4c6274d02cc655f093615878293de477ec62adc61b4dc23023100e7900dd16a1ed832a5740c34ea3a17428cd6726e9c6a086cabdd94d0a5095d51c6f3bf0357f3def584d43656961b88830302047c435bb50066306402302dd204a006779cb26b69af8af9b10e28f21e8e8943931b7b1deacfbf87c74ca5224c91eb873096d5bcf60e054e01d66902305ac6fb744e9bc4adf76d4f5ccaf93b2a3390091fa7132b3fedc89eacb00518e57418982b16eff2ebed60b6a01143a9580302047c435bb500683066023100a7c5ce62bb95e99ac2302e1aafa93528b132db02885371c817eb32f20a4feadac4a673c985101196f417bd56bc23e494023100a0d321ce60a9dad9cb398f61074f0f0eba8cda39ce3146671a4e7d83a97cdbb97c9320c10f521dff34f1524155be4da80302047c435bb50067306502300a79244d5ae2e3aea735af2e000ba33e9f4f574b9147c491ba59d5e8df0a5dc5fe64fc811e618700044c87f46b151672023100e3dfbf5b6e67175e5e20d61f4294a99bad901516cfd13070f9c6d7e76a2096a7d4014899792fe841a15d48e9107be88d0302047c435bb500683066023100c5b3cbe57bdf54964c1cde552ad72bfdbee8e465b01b0053c885f8f2fc1de8d7bcce854ac8b5e481efe1e7fba9560f970231009c9fdc436189807ef817d242bf28edc9374ba78d0bf9d759f95a658463917cd8f08e092ff81d3838f1b86742998459a20302047c435bb500683066023100a132085ac3c2f1223254b81a8439941c8ff8e90b00e4f0d076ec2555163c3f0f8c3855b792214e143cafc3301201deab023100d5922e6b95d1083e191848ca504b2dc93f30a1b8c2d5e517fe35c6bc4953c0c0dc0bfdb3a0e096ebcb52b2dd2771a5f40302047c435bb500673065023076280f2fd1ea2a4043e414fe3acb99ce5676cb952d7df46bde2798f7807aefd528d998fb195b92e01dbe658df12d3ec4023100bfaea7db293cec4dc299388b6765ecf5aac19103840c16bff847130c229499ab82cf6f7437036287842ed0c463fe52430302047c435bb50067306502300583f65920d242ede5b17d55a82062b11383e79c9926a84e1cdcdd85283767245ff52dfb45b7a2aa4ef36c9c4f74cb7d0231009f4780f28e76cf06d2415e4179de5528f26c631e2e0d91d22f134153d03f40b52f1cde7cd7152c61452a2c3d93326b0e0302047c435bb500683066023100bd5743844757ec2287dca290601c072ee1be7cb848f9e5f07908160d6c8de91289676894f4383df19bbbf7adec8eb6c4023100f1d75b786a8691d52c072e6ad1fc935df6a1ddd8ee9ebfccbfddbec303cf31e352faf73efb644e62645337d7cc347e550302047c435bb50066306402307930217ca601d6019b38ece059b01f408641c92c50103e1cae07a88bdb6a3aca247bfae03a9407e4bf58584f5437cf9f023027e9d79478e4c7a37972507a71388b6c060fe5f55bc611577cf6efd4336e39452be132fe131eef80b62bf7ea573708360302047c435bb500663064023008f330a04c8a7d43af13211ab9159206c5bcbb77d58d0091e1333b90c0cc21e0b54c442e5b3fb14922d34b74650a35f502300956a7378639c744745a3dde70fc6741edcf4ff71b286cbc04aa278456bd01f8408c057c5dba342506137506e0f6fcb40302047c435bb500683066023100adce359ae5a0d9510efa2f3c45d6bbf341a93b08f54bcef7d043a0c607ad68e0c3551dfac844421f93b3db0c0cf09e76023100d69c8c812692940e83407117c124034462bdea1d713578bc5e44f9e392144fa30cf90fe7c9abc4e98a346fd083f1ec870302047c435bb50067306502310091060f1badecbd69ceb1dc223432d467b0eab3d844817cd02a4ec71f49131a26a49ca116af3bf7edebfe4072f041711902305fc501e9cba8b985fb8ba047822cc9796bbe7865242d04b81e702e5510fbf80a45cbad4db6c765772e6219074deed4fb0302047c435bb50068306602310085426473f11af54ec38753a2914488900e51e5489f4d974bfbdf4c417953d265b3677fdb1a0be62f69b44805564f8ae6023100d0543beca61da25d42953d042e9db37201dec8c2018d5c539a17f10367ed642018c71991951bac929da9ed86b9069a2f0302047c435bb500673065023100e165c44388037cbf82a32bac4ddccec11a12b9e6b5944ba4b7701506cf8f6baabb43640e7a2c36028df1074d8a361cc0023045e5515a740d5354ca30680b28253330bea4aea4a76ebc1dfcbf5a2d467110651b325a2509056cbb3050e2097a1657f00302047c435bb500663064023031c0ca9299615f69edce876b300ddbb920a15a9a77f594a89c247e15f3e5c0c6ccb810c8473bf6ad51de2f433ee066d1023029c7488d91c3e65cee49195ddc04813a2ac2c88bb71b3a3944131ee2510c3001a7c49ad510435cd1f5eaeadb3fe49d380302047c435bb50067306502306353401a8836f1fda0a63d3fbff2ebf38b8767214605b53edee89d00a691d6640ac502e46dec1cd702e76f236a2c58c8023100a2f92dab11f3e1e501891024fd53f9a865866860ffc22144dd8fed4e83f9955299ca90b57f8e39e666dfd03e850f973a0302047c435bb50066306402305d25f862c9562238fc7044680f39b0ccb8ace73cdd8f6f10d8990a6a2ae47205dc55d74b368c41f05624740ef2908699023044c5d73689655de09d6c6eb360de6c00f6121501fe7a07b75b6ed85d50cd3a53c87571ec918a9fbd86c18898f772d3220302047c435bb500683066023100a982004191928ded53b1f05569f6bacaeb4a15d80ebab55540bf3cbcd1cbcb7489ad74f42facca4f68ef50c1b0ae0a09023100cd44d13d491892067cab0cd117cf2c4336e87f2b63d70f85676abb0650320ca3d22b5ec06cce391fca95e0970ccb272b0302047c435bb50066306402303cebe4c22561513404490c9cff6b9406237aab3618a6cd305374f8b930b0c07646a39bebdd0e0cc4bbb13a62e2f99cdd02306b1351991caab451cb3e97fdabd1258d8c781839e0817339641241731529fe58f1b4af623ae3bb986cff41c33e2bcbc90302047c435bb500663064023055bb7712a54b10c562e7104ec76b980b1329bf1e7022fd63a25e723fc8e88ec51ccd1cdeb1279e911d486241b4b1aa0b02306be71cdf0a298f9d2c758090e57c687d1a48242c7779c73f19cff47e7ec7d1dda4741ca27e926bd3c3eba775d9abeaf90302047c435bb500673065023100dde57e171b2e97dc8d9125de722b92b6443cf08a48f39091da35ddc7ecb462294b8ccf924e0c379b35cd3a369b9abeb902304c068d648c3b142e0753d31da18b8c8b49064e953d31cb554044ec1553aa55c11a7092a87be00f1ee3412af0b3f7552d0302047c435bb50067306502303e0b020b6470b255d06eb9b6dbc40a0f995e2e4f8117975c28966acb7a01a4cfeed217fbce342e29a9597a837d429b98023100bd4d0ce56558298d2164c2461aeb16f8ff15e82da472525bd24e57dedb3e1e1e0bf40ac43a864ff214396c7ca3019a5d0302047c435bb500673065023100a4d18595ea3c3652011b628a1df049938f80f23a9e66888534f0ad9c8033a0ffa19bfafde0cb92a8ab6fb45aff2ddde90230597bf487c62dc27650bf477a19e882a9ce2e9206104aa9dd410f6919be78539cf252eed1d0322019d306e74fb54afec70302047c435bb50066306402303975b54e8307054778367370d3986eebfad94dab30c958e023cb566d2a8e4da3ec1ba2e87223ae20f5fff815b4ca80fc023022f640118303b71da0f13163e81094019e760e220282d42af1afaf2c93da9d874daa602c571cb3902ecf29b251fc4a780302047c435bb500683066023100c1d607c438a3353cea56eca75bdbe8f075f85b5677ceb2ac8d1bd818fe0bcf76d352e3776419db066c802871e300e95c023100d892724339b7c55f3a0616b484bb7d1ca715e0afdf976b468419c21bbeaa859f6b332f0da8f6b989a15dfb65cce80a6d0302047c435bb500683066023100fa99219ccf9881b12475548cd57c363150ea5f6ea7857c5f095bda4550b2fa958727b0a6b88e51e8fbfdc27a100c1a07023100c971c7e7f7e0e5c08a65620f29e3a88e4580be307998de51b5fd5f5e277023d47bb1af0c05adf2bffaadb7866e7de6770302047c435bb5006830660231009e4446bd9b105203326abf89aca066f5d9c3ea183ce18aaf987c8bc516af5244d1a6feeab32052a5c5136b15ea599e2b023100a53b464c5a1901d2afc6b3c3daf2fd1759ee3cd910473596f9afbef25de8f04467e96919e8f81db8451fab9b212850230302047c435bb50066306402300c448c3d4f59d4b14d13df57e3ac0457941c0a664d6a8364c6d04934848be0e9733d0942081c220b595d1a8e33788ab202300b55673ccfdd0340dc80f27067875925acd712317e68013426dd8e008b41bbfd265a2f641d895bb023712034034a02730302047c435bb500663064022f77c8478b4832c8832348e2599b8c5d12e02fb2fa42c5794161dddfab843f14d8bcef171304ce98c046faba168018b1023100e570ab86873463c6c38282e15c0d6084e5bd89be3c5c21760f91aafe4b65982457ccd1b64279ab4e577ceeeac54a75d90302047c435bb500673065023100828ca10bcdbf7331f94ed48fb0fffeb2918aa5565605d39d17282a2a4dfdc14edd51b95707140d4177339630b957903802303ff6cb3305c1975e46e83f62d56d72780c5d0adc001adcd976f0ea377e110c05cf7c483e5c538700109c5c09f923f5480302047c435bb50066306402307d11206351a207810faf3ccbcecd89a5aa2afb3e268691a1098d9b8835856b7664438698011cd4c3aec26e581fe486810230069daf2e1adbd36b7cd6665404a576cd3c7981ea20032ece18bd4258d5490a58482c2a7ed801703ef895a845f6a6102c0302047c435bb50066306402304f7f916523b127990cb1c759c71ef2a06643c296a381ff0c0b2c4587fdea64d4d8c98fcd297cbcda9bb032c0b4097963023017fe59f0b75c23ff7cb3889eb5287b8d9b76053c76ebe011a0d3f3836b6f0ca3741c91704ddc032c9cdcc9a3a51190840302047c435bb500673065023012d1116173b2ef794964c934aa91a5979f368399847e7588255f8ecdb1600304870f76bc856c1512b7ca7316d1761e53023100e069c92da7d92d8dd51413db7bb7a32a1b674f5017b3ec5e0bfa82018f75ba5870e8ee56f3646a8cfde145b7f25b3a460302047c435bb5006830660231008933e3f83c6dda87faca135a85f0f5ae386f9dfc9664fc359d6a52feb56439e90800c4a6fa332ac1a9c2e285de3938d9023100caf16cb6880cc26cc6526a8343faefee64ec7380ac44936a129d7c73d22b533ca4dc42edc691baaca40884411ca73dd80302047c435bb50067306502310088648e01ad39bdac4cfb194c14d4769fc028973990a741e966896065b645c49027cae98609e4fed1728a7a158ed22a5102303c8018bba7863be2561acd457eacd7b0633f97316aaf0ccca3472418dc6f0952a5fb7f4e55ae5e51fdda49f0204126910302047c435bb500673065023100983f912f40040963bc6c0a0be58f6feb6c61c998809305b66b6efcf1f6be5fc7ce220dd7fd7d2cac8f95c73b848ac20202304f2cc8f44d622aa32d9ffb80e35c38e40f337ca12a4868e84bf2e2c8cab6372f32f6c307e87fe0e55808186570f36c8d0302047c435bb500683066023100b19881176d446aa3fa9c4c39d858d542daac933f218882a1fdddc03f916a7d68519bd9e9fa64b4c3f51b5d6ecf4c05620231008eb09039d3592dbcba612b6448ae836bd33e4872db5031c9a05e0ace72e1015ddd9ce30add219e2436752514d34e61380302047c435bb500663064023036199c0f40b6d17b45282f8f55257125387eabe6f7fc60be1a45cf70d10babb8fac21d2b383e5ff1b4da86b54851e8260230163405cee9374491d46c380616f2b252d955e00095ffac0dcd7c883f9667a829878e89d28b8b11231f8846034abc4bc40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230123a44b321ec8a1d1d3b4ac1a277d44f1f9783d5b8be006cf62483590413592caa725642332ab216fa82b95c0016af2e023100dc94a190145c8209ff075e62b7aa05ed673602fe71c43cdb2af0c74bbdeb71a9eda2ea0fde4fb7f05db3a760ba58e9d40302047c435bb5006730650230271ff861315f8bb9319c60a8c05ed8b8109c2e8ad8eb6970c05a805767494f1966bad175d327734495bb50c1922cd02c023100a493a0e89d7e701a0ee74e22531ac6757fe8cc126f111a443fcf85f0acff647df68a5e9fa1337d32ca9a920c94d0dc430302047c435bb500663064023021d6474d7c8837f2b9c303b9416c04e829160920ad51916253b0ab5d7a224725d14b48f5fceff2b6686ffcde2876be61023036fa25905961581b237249a9c525d0c7a36342a795289b585df1e9d6ac014577d1005bbcee6ab9c9fd375d8ba068180d0302047c435bb50067306502304b4be7fcfd1cc319ad5192dd0de40ce555d18e44240f2d3b6466ad6f80e30e082408fb058339b3fe3e21b3fa30e4f124023100d764eaeefc491b1a55c0073add818f2b0be30ed41057069ad4667418f5b8d540c22f8796c95aec477ee259b591ce93030302047c435bb50067306502310083547a7a156ce43f3af34c5403addb202ae6b103338f9f846886211358b5bb9eed001b5392bade0907a2a4e37d70d0f602303b7e96b53d9d29750259252b2fcf148814aa5b4940428b501173176d1787bc63e49403a742ec36a0a0cf277b0ba0623a0302047c435bb5006730650231009cc34369bd8868d55ee5d6ec3297a42a3b0b00fa6406636e46aafcf1142c04bdd9965748b7513f62df23128742f5de1a02305c2d2eec9a0b1739c824b86ec0845ed5410fa693a3629e45ae64b9be1b14d1ad448b75e66b36fd0b333e398a852d3ac50302047c435bb500673065023100c4a0ac06c49a551ceba0aa783ef2430fea9adb63595030680665735f93e23cb4df29debb954fd33840b10ac697f75a920230297fb396c9271ad2c168d7a3bc9b6045c480b85be60930f8aa27b8820a0efe67bd52d345739bac31587c2b8e5e3588f30302047c435bb500673065023100c3325554aecbc33a47dcfa3cc2690e920735e46978c312b89ba14ea8aa724b871652a44144043c10c73216ee3406d84502305fe9fad3660ed281af88643094fd52dca2f0e264d271522c2d50998ae172c21eb0d5592860a5b27e25c2acfe1e479d010302047c435bb500683066023100d01af694717c0a90d70aa656af7f14152e54ec8ba2c1a619cb18b83996ba85b6c29d68d28d4ca4e42ab1fc2390e0878102310097bf0acedc079fb3c9bfc432e0d9427036e30640ea912915a760a92a69772e5e98d5b129fbed3e9b6c85a2b1627a7e680302047c435bb5006630640230688511bfc0278db35bccd9b05140d55b5501e1086dd547de74b9fc72bd874356297778fa0f46c28998ca4ab0089dc11102303a52b8c14f9ee42911fc02031ba78808a042a99b0dcdbabb4ed5109e9fe8eae5edb1b46e5d8cfff16265d8fa6b86f6a60302047c435bb5006730650230175842448f51984088905691e66af073522c412612d51a410d3b1ed5f690f45f819bd15a215cdbdc57ff469462a95ad60231009fe29020bee27780d4b11d650edb632ee072c9f3691db9804d455a8371f671f38640f720066a6ec08fcc82978821c5830302047c435bb500663064023035cf3d9b04186512e67e50a196a07fb2cc07d986f68efbe0186382c9753f59d1e18b691412302cd26a0aac11356ef2b9023014038c5afc1da273a00d42a46d44ab0746eb2763ba74edd521cc43d288f2f0d52e1de15756abb4ffb1c23d123bef4f860302047c435bb500683066023100a7ce85baff759bc2a62684ef646c43015765b6bf61033b633fb96ed838eb4f50b5168abd203eef93474787003da150b802310093ed157dd67e65d4ec88d05285dbf938ae3328e365c4732bfbe8f566557169eec19d437d93c1932b72f2e40296b46d5c0302047c435bb500683066023100d25c643eea417564b741b087ae09dea900ca82de960260998f6208faf9d22cb06afd5b24fd3d924c1c4db06644ba89f7023100a86971e507f9ba2e3f5b85b9c3555db9765ccad546495c9a3ca7160ad0fc47c479b4717f9a89dc1ee0d4d5db90ddb0ab0302047c435bb500683066023100c58ef355e10808f0b36e52ae6c8657a2a82cc2a4211efa63775df9ff576d65ccb34fcbd304c8117f8e44d6093e81d2b9023100f2a2def158fc2aab1c00520b9fac9e81ea3cc2a23217949bae4723e2325c7ce6d4ac83d812284a4a263c599d236727d40302047c435bb500673065023100fe4ea2590cde2ba677646dde518474e259e147691d218a6349643fe40cd46d692cf9540c4fa2fbd13b5de41be254bbd502306fddbdfb837d754a0c78bfdd36a26260b64ecc95dca7be44f5138421b08849b479991c5f741dfcb4df11810980f98b5d0302047c435bb50067306502301207756357272f0210a299fd8b7c6f64c6cd026ad4e9f1fa1e802cd0fc40f76aa06e8c298a438fc9aa1bce91259275fa023100c98d896612f4d2978ca467678db97f6d4fca58a98aca95811b2f42e24591a7ab4feeffba46684914656b496e91b5a4470302047c435bb5006830660231009fe8add67991fe28285cba03f9c7c48186b9b8f3b1a520f83d3acacfe2fb51dc6f31e8f182cd7cded1afea9aa242e1a7023100cd1003be4eaca73734d80d644d1d9da67a3ac5f00374991b4d6766481c63c461c6c9eb3565996a223e1a900ecbb77aba0302047c435bb5006730650230203df2aa92cd371922a35af4b771e5d13c6f80409366afa089210abcabbc1f2b2d2fad4dda7d19a3374ec6a1257b515c02310093eb545886e638b071b78c9e0f5dbf31a464f237c7658e1322175a0defd697026c2f716403b96e257007e91410644b800302047c435bb500673065023100e503f1baf7d56ab8a8928c3494fe57e6f9aa6048f4d1783c031a49bd1e189e9c3d0b2e31ff779da08fe03ed544f5ca1f02303d6b8b60b24ae4c2066d48d890199a977c68bc1eda1666d08934b6e9e822aabf6c9cbff31233cbcf85bd2a9df61e85c30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023074d0648943d6886986bc7832ffc41c0c8ca601b2375b9f727046ae3fbd5f2301beddd5906ce9d6edeed0b1aca7729c76023100ff62480e3db5a32d13d863a046523e63fa55ccde37368b75770c890127fbcfd8e38de56d76a88eb9f1808acc3e9916220302047c435bb500683066023100ef7dd03939f4b6f2da6eff7031bf6675db37989965bb2df61aa4120b1f6d5b84132a2bdf5ccf51949ab50e060341ff1c023100994382bfb86fc461d5885d005722dc42d9198f01c2ff1ad4e34b2d530f8987dbed825d1aebcf6ab96824447a698ed5720302047c435bb500663064023068cecbd3d2a753ca4525852044cdcd50f4bb73fc07fad254c9236c6078cb98eb7d713604a71010d54bb542f37e885c290230434bfd8dd839398bbe8340c5140ded67c42c9223e9b4bb4c0ee88f3c3cb3e9311f3c454c41e97159abdebf0b49ed577e0302047c435bb50067306502301076b61ce014ed4828a1c7580c1aefb07a7d3ae8b7cce52535b3878f16e7e7b6d7bf088b09e4ae2a580e5cedd662f70402310090d25697fe78a85cc00d4f45df559f30eeef3b37549b5dc880dff948b258f44c47f9934b99e160d7e794d408fea334ac0302047c435bb5006730650231008bd1299d64e07a15bacda85cc9533b98c761bc3ac810bb08177c10784ba0d36396319987788e9cae9c857c8f2b348c7f0230426eee53b3349230e391c611e07457b29e668e0237add2663e098e8ba7e46e1e288ab06db7bfa898d48acc746b727b740302047c435bb500673065023100ea616caabc003f25cb6727527af2323eabb908da6f875e3c47080e7f853886c78082dcb250f105f71c6880037c53cb3c023053c37e51f353c37f01b15eef2e1672f5f9f2bc3ed0b1e8abb83eed149bb2d8b2227448f2f4d81ea957792fc8a7a968210302047c435bb50067306502304c57dc46518a79fdabf993a524f5e6938896b8664b80fafe6de57e493b36c8ff6d87d42e736c3a55cf002a9cb1de4835023100e2928046fa22eda78639bb79e03fc8f63be5d3f041f5b5a00aeac0d2ff9f0b43f837ee0f1ac548611f18c252b6202fa80302047c435bb50066306402302857fcd8dcbb77544b61231558c594d953befc7e1258ba8b7e1234e13dba21e7dff717461a1f33c975b703daf968c75f02305896717203dbb39dd9cb93aef5d84a8b8b2833c68c980d43146101106a548bcd5e6568fd997011f39b132f51e59756890302047c435bb5006730650231009810aa04070e2704778d8e2ab736cc978906f2057896d46d3e2b01fbd55ea7a265d6837d453ead6db426e4c93b711e7d02305439185181498d0f46b3dc7dd7affb7b41dbc01cef93e887f162e9ea530b31fbc721aad6c7b23d6d146be079f55c4e4d0302047c435bb500663064023026e9214cfc25da04abff9382a7161fe867db4acb376c69444e7357807f452a6d8da29a53bcc21247df566f095d53855602304b6129bdf731d7c2b5ad174c5d280c3d6e2034502e367946def0cbd11d02e009dd6c123a37e47693eb4e360fc09a09c30302047c435bb500683066023100c72b3ac799e21c3ca85893716cbaf66c2fcde80d9fce2c553e26ad6e678f886ac02c89842146c4f0082cfa6217fe487d023100e7d45e0b07837178011d81806b2542691a943531f127419c2959f4fcfb783f20a929354e16d001cc1c9605da660eba2e0302047c435bb5006730650231008c0b2608855003cab4c17b9c83389dc6131c240370becec371ee4f920cde9d22b66987d0ab21fc7a2d2c13a5d296867e023032d41f2605e816950f75cdc76a9059f36661ea78bad81212082dcc4b9b7567248b5a2a2eaef457218fd6c62b7c07097d0302047c435bb50066306402305dab96436ff44520fc6727d967291436dcd181b2815eb49dcc6906e8f52cdf18fc6b9cebb9ba47d5d4e5f53207e24b110230557f401bcdddf85f7e12bfd918b636d3e51bedbfaa59698e8e793bb6cb7e9d91b264404d90c407757747e79e997797c80302047c435bb500683066023100f7fd929543d23bcbd7d8fb6a3efeb1c993c732bfe278cbee16717e5888d34a34dd024a99de4f52a2512ca811b40798b8023100c59131eb87cddfab52a41571e310e50c40c04785cdd94b89eafdd8bbb9924c2d3e81fa432a0d807b37d4eea18c0f3c890302047c435bb500683066023100b1686564237571108ff1ad182a18d3b7681aae9aca2eee1cf5ab1d5e2b3ebf74d1866ae644321d5dc20b9beaa58d8c5f0231009a8e6bee641300b3c3c751f0d8e6a05a5d2652336a9b994b9af23c3c7e496e1d90382aa66f00e13fc95931e3816694fb0302047c435bb50066306402304ebb3e1b1c128ab5ec8e9895b343ec25afc7c71ae6e9288879444dc6a50ccf73e95d6b192b9ddbc1d0f0d6bfafe7ef5802307fe049fd47d331eced19dc927f78c92ddd87060eaed19545e9ed1d7cc3ee3becbef8e7eeca63f90c8c2c2c026ca90a100302047c435bb5006830660231009088e302e201d356a13240f5bbeecd646e7ecf0b9b468a0a4d532b0621c6a036e10e96f35592d5c35c26c7cc3b578362023100d2c18e3784f5ce58d41efb6576a220581a18b5511bfa728cf5b776b4c0d6e9c60a6546068b9e59e624c2ee68f18bfabe0302047c435bb500683066023100f7f75430e1e9d453e3f46a797694bb8b4c4221ac943e7166a46a30022dfb14421800ab9806369b2562caa9c8013bd8530231008f58f4c367861933b67cd65e29c9a1e29f45af283b15ce9093aee6836d54690a974ba841c0a012833d8f21ee51ae6e7a0302047c435bb500683066023100a67922c8632cd26445ac7f3df390e365c95d54c9e639044b9b8932f0d08a199f2ca1f6515d5d35e3c067980c36618177023100b1f93f36c3f49e05864ef22985368297c46ec8e1658986e09347647ba450c08bb612b9d515bf0a8c34c8f67e26f874230302047c435bb5006630640230610bc4fda536a97fbd34c5b2080929f0faebbb2af8b27db32e6b656d2fb845438b7a42b4f1ed975209b45230f92648c30230559304039795bf15ed4d37ecbbac1f0ad9fe4f00edadfe24497d194d463d81ad9ff4b7248c0cc3ad09a741421762ba9c0302047c435bb50068306602310088cf93867d972c271c21faf12cde4bfe8e616eea70a85b74f0212240158336b427bc3d80e7685aebbfa15cec6fdc77ad023100c585e66932d490d8fcae2603416dd5e0caf8c4d939f50b719154f69089738c909cf7c86f2c6ada93b76c56b7982777250302047c435bb500673065023100fc4ced3baf08a89f90f1923ecde4a6b25e03329a6cafc340301d61d8d9cd1fadd2e8a9382905388097939988ee4e74b002307104499b9975eee17e2fb831008924e5f29b66aff128fb240dee54770ce00d0881284bbf162ac9ac38ca6775037c6d080302047c435bb500673065023100b13af5351f6337a48d44bb99b716b80849e9b386af055e5ac998dcd8a82fd2451bd018c79567376f69db12ee08ba92e30230107d243e08950fc6ffddd0c6cc12dbd31767b5c5845abac28e2750076039903bb3ef80174cc1f0884c20c1101c9abdf00302047c435bb500673065023100e69151ab1652cd437228c23d86395a8e47ebda9db6b9000e1850f4933fbebea5943dffbcf4ce547aa1143fa7e70b31e502305f9c01e956c75eed3da90c2b9f08c725e3c4e7a4e6e13517b81cdd1dd9747b96956361b8bdad1bc43b74dbaf124058d70302047c435bb500683066023100aa7797e7a9e98a6d25153aecbe4e03f780fc431d6812e31478821d10f1f059a4d564a3810b839d0cf3101c3d343d93b0023100e94a9c5d7c4f917285677018e150f69fae37a0b0734b1c4a70351912757e98df4b5cfd2b298ec9c312c46f2b3f04868b0302047c435bb500683066023100924c481b98fe697a22b83e299a80ecdd389ebf9426ae700205854e309321e5e0edf873b03d6c593051a9df3d9c33915a023100bae97ae911ac498b1ea1d28460d1dcdb6131b7439d0ab0016d58c49df9c9b1f3970614f6f2fc9e5af0e9fb12faa9cb5e0302047c435bb5006630640230434cc84b057472eca04259868179798169347ff3ed5ed86617f9e287dc365fe4ac688f37d2fec20919237116072917ce0230711598b3bd7bae02842a38fd1016115b2ad965b02a237bc8a1bb22d1f5b398635bde5a51c54a669b8cdbac501c6115e40302047c435bb500673065023100d832152ba7d24755242ba65e310f1361261e524f82c20233d67f3862eff324f94e53b4412cf9f29b9812de34aeb7a47a0230644100d9d6143c0925c400c94b31c2711cbc6633f7280a48007b086c93ba1d0e7e35710f9be7685dc8629890294a73290302047c435bb500663064023024fd8c77aef1da98af45e07a6f1898fe1e2020ea5843f8c05c7c032782523837dd2c7679f8905926e519fb5c10318d8802306793363ed4cdd3e41b06df92fa7f8cd6d5b36bebea58724825f02515e07e78d8e6166765b6171b8c500107c8d1ed7a6b0302047c435bb500663064023009379156bfae9c079f4fe29246358e029debc9cdb6e06f509315b1a964f138c8efc15a18219d1a995dd3783cd05deb54023036450be4193b67d1f0a38952f7c524529389c67d7d93415748b19756b3297f6ae81061c45eaf7d78ef0c1c6c3fc7ae2c0302047c435bb50067306502300154952e21ba44bbecbe8751c5a9ce458f534f8ec42fb42d74223b6f36cf317afc2a9c7ed0c3686123c861df95f7a86a023100a3690027b6f86aa0d4e27ffe8eabcb585ce8c866392f789b6ecb9fdebad817db3764666b7ca5d6a5dc7010ae4925b04b0302047c435bb50067306502305bbc6f0bc4d873d1e132f288d614adfb035a4ee51d63c807c67282f96553e4c569c9f1e7c2f9deb6c829fc6d240aa33702310093befa5f65b35c89589b406b683d403dd23094765832f44543a1e57f15a3522525a7d20be3503c5e71d9ddfa691bc8c10302047c435bb500673065023100b5ee1aaa8a2b64c319bb7a68c8dfbc0056dde4dd18b6aa639d00b49cf5aff1f3b499da65f5d13e31d144eb26941c2994023043303af50cd028e67f6556fad05b88147b91b242f9de6402a25aed6d90c71a7d71564e2be9afe1e591635e52d372c7010302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023068e256c41dbfa0119a2433e155d88eb195cae6f5181115719a9769514b5243063b571c3fb2e0c5eea1ff11840d446a44023100b92d2927e9a6738a20657ab5af05a03698b66f31d8f2ec970aaba9c5ba6508f58c85e28afb479119ede95a92a8df834b0302047c435bb5006630640230069d2b4cbf140941ca8d9ef3dee5a35087ef14fcf0d11730b408578ac71c85a7274c47ecbd652e725e10d24a3cfb83d3023079fe9573e9b8a10b6c14354bb096b33e0d1f6c33c63a901d9b41d404d645ea05f1696053f092640961a6ff1c00f3fe2f0302047c435bb500673065023100ba02eeb0b30382d231ac3040ff472d926b05845fd9f1e676f3015220c9587425648830ac5fefd49c78b906ae08a3ce2102305d69f02d17622390396a18c4f57caf1f762e611635780719991a86caa075a2018765fe7ad3716f92b576486b02bb77010302047c435bb50067306502302671f5b4fdddd3493ead4ea4e76758c866620b83799e5bcb0d2d0481767e382f83a7166580c06e03ee6a8a82d50c159c023100e6551048efbd00946ab7a827a011bcd028ddd1c4022a483323a828f073f60ecf22392e67579acd59ac9afe5006fc0c710302047c435bb5006630640230499a329d0854df104ae6046d153faf944078310428cc30154a33554c658909f7abeaaa74758153c257f709fd8ec0431102303a1875c79f0dfd29176279d3cde6421c3b330389040d768d5700ef095073eb9aa5be3f18084d46d4f9f0f909fb7806170302047c435bb500683066023100e6828c48a11fb793dee93939c4472252e6c599010d8e68b0f6edeab9d63e641027349cfe6fad0e05dd501afa69df3e1d023100807260c87bf5b4cfcbc46424e41754b4aa8d0978eba5502d45a453d1c7eb3606c227d2b0f9c4d00e5faed062cb445ef20302047c435bb50067306502300ee60b2da230ea01cfdf14e6b31a6d387eac148fcfd8e72582e44d226456f5c01ec35a670dfa51f44f28c4a6171414d7023100d8337b5658ed758bb27bc085a44462b7d153cdec8481176261f15065b70478565a46777f0a5c0bc739a52d95594131f00302047c435bb5006830660231008f12474734ce99b1e6f128e5f3d95ca01445a3a6de2077c0a785cc722b554a7d4de7948947cd638b5e057896ba3ea505023100e89e7878d527f1eada1ffa5826c7597e7d4379ee831cf3eee7925eb55e1c91393fb24a10b60426266f4bd443848e19b00302047c435bb50067306502302e15add4d2d633d13785f04a5aeffc4cd11bfa8f6d1750747565d09a40034670af6f960aeb1977c3c9b6860491b80676023100d8ff7d09366f03de508c0863edaa9b57d35884c93b024f4ee3b7836a8a634e78d2a7e46831b7743e8e7b7ced9ff5704b0302047c435bb500683066023100f5b23cd20294979283a36a411a7e6232b733ab15d3ea8d01e9a25bb53c935ccdd8efcd9d3b8ea62a81fa359f2c2b87d80231009465500a9dbc972cc09d776ca718ac5e31a3611dc533b7f2c363649ada13b3da0e768f402704cb301b29a645cc731bbe0302047c435bb50066306402304df7f97d72fdb8f45acb61d25bbb814c146ee3542e12432ba27711a680ca2390db073f7b3f146e93ca01f296cd34f5c10230628836bafa6c3c97b29cdca7307fb49ac4229d1a6cc30c6085a3ea45fa1403977ffaf4a7ea09432825ed7a96240384e40302047c435bb50066306402302c1785b86c2eae6e75776d2390fc3cdb8ca629b80532a61fd1bb8fd575b1ea3ac47f20386937ec1b6d98e8e608326c7f023029734b5e0874d6552bc985c839e949adb3ef50c5afe436074e6c1df2c6f6d7d508a2a9efdc76091b778e42b5f1bb11250302047c435bb500673065023100eef14879a63f6f4420a9a12e463a4fbbfc4a8cc567646bbda99b6b6caa626122c3dd371ccf6e79384809e2ae5635dbd6023028ac92708f3a6271e604d4fc098184ad48475e71502d937d0e293e3f3a85f0de7e4f544f6ddbd357341c8d8682f5823c0302047c435bb500683066023100dce62003c36ee9cdd80171c9ba9348b7c15a19b86665e66bbc5853c44be821aa30e9db5dde14fc9d6d40fdd880ff8718023100f4618175999ad5c7fd7528f9bf6473732d3d5b0d15bae29c6c3a24951051cf15002a815a0a000943da3d26e91fc073860302047c435bb500673065023100bfb662886b66b952f933def643c471801b4fa1ed280f46c1934fff0377834eadd01ab3fd5fa1b84ea0abb6dd55868ae702301a71e9d685c17be4502f421bb2aef081f6e56f5564b58fb5f11a9a23edc2f6cab4b49935d5ebaa46dfc85b450791ef500302047c435bb50068306602310090ba9b12377c70e383389f90a23a9de35a00795507753f86b230a64d3cbe29c13665c3831b5855f49656519ad67627b502310092c5c3d8a1a440bf23de8706f91c7fa8fd63cdc4090f0d35e42220bee7fdd45d19d8dea55eff5088818b17e3375f1f230302047c435bb500673065023100cdaceec176db075444d6fd285827dd07acae710e9ee6f325a5694c86ae22c998e0615cc64ba01233e236113f6ae05454023058fb2da8956a8b71300aa3723044dfcfa396608cafb98492dd0cec80ca01c6577220af0029e0079f3f62f3ae697588970302047c435bb50066306402304ba18eca557835ec5be020ac16e1046c8f83dfe637a8df38cb38ffab2b8faf6d117aa81f6a58744fec0690a06c37f5950230161de38695ce2295d05a91fde569176b879ea80f6e0015b32c4a0519e833a0e48180c6625b607ecbdb69e4cce6c184ad0302047c435bb500673065023100fc35bb78d4fd279313bce38c743e784cb1dae4002d6abefc84418cdf6233d63a8068065173249c13a3fafbf5e063c200023057cb04843fff849af881e0fd59a6e1143d21e137008333a7b1adb26012613a295a4daf65b0e332aa4258f0f5be13dcb10302047c435bb500663064023100bca697d9c564f86e24b77b530eeca5745b692bab14e91f8bebe5d5f65cb66f5384a8c2466f9fe25675dd06aeb4075c21022f172f8d85942079a084079bfd46a52e68840e578ec5e6dde48d41305631c31a27a10b84c3a06615727a0286fc7e317e0302047c435bb50067306502310085cdb14d6e8d40ff4500bd703ef2297ad01854cd2d768246286a155dbd5c65d48a79118c49c9ac4c0302ffd309feb152023040dd6fc546c2a257b5ec359028c14579dab9ea878bae901c76d046180af0f0653c2e508a962d7e2ba63e9995a8cc81e20302047c435bb500673065023059b39ac0f99d22532e1fe466d86241c10d6adee18f43e2cb9820de93fca3c9c3a0fabcb4912ec9ad80c302461352edd20231008b841b86a284a8adc8b066b232120c8033bf5ebef256185fb90b675eeb9023d9ebe1204c1a9c87762b2bd823b8046e230302047c435bb5006730650231009fad0a13cb11d6e430816681b7288c31a6b504233f14b37f5cd3427bf6102d651018ace92cf902fe8923fa7ed8747fb502302d4c3bdb4463cf93ca7fd33930267e6afa2dd308e6a84b2ac60402974052170c49cbbf64ddd29a7fe5a2376ee95e72300302047c435bb50066306402307f82b43fcb4d19266c4f68c47417b072f648983e450a2da705fdefd62969476f76103ae6215ae30679db942c5276276802302efbee4d3f59b40c1b5589caae6c36f4685ef91e1e8c9ad74b3ec12e5b1d55f397662dc66100457c754736fd670ca8410302047c435bb500683066023100c8777981a9a61a26a0a98a3b490ef6cd0fefc948ec3c71ca7b751a5503db29270fcd56311ed2d59d2300834cb6aa19f6023100b7e5228bdf029bd53b6e8d85149585ec34418c4d9f4efa096ab7b9a1afbca893a77482e3244fd60237d8bf199577b18f0302047c435bb50067306502300c0f3640135d8ae245287a0333bb51032a5041d99d8fdd62b9d1f298d9920141ee6c9ea5e025728bb582b5ee2fc8b8f5023100cc90a9036c603d5ca8359b93ca744577046e9f742c73bf6e9572adbc9fffadb718e65ea245d6a30a97db9af9b79342000302047c435bb500683066023100eab64d78611e5ea4b16bea21803e38557daad02efdd450717675bb2021b3d443cc8eaa79f2e01b995c0ae86d43876133023100e13a44395d5ae3da20aa72d45fdb6a61b7319a37bde61d71a6fcdf320fe07cfa167656fe3d69f699e32d5cb95b01b8b80302047c435bb500683066023100fda041b70e46146a1290de3cc3d32729c88c7846ab353a3507960bd7f2ca84f22cf3b0a140c762dd438ffe5c157dd66102310089ef7f891bc68186ba68836c0f97139c3e4279ba119b3d355f9c73dfd0ae3e401eb24d80c931a21a5aeb6c3fca5bb0ac0302047c435bb500683066023100c5006d67451f9b54026af74e8825c5e8a7f2f6d5e3e695b47b571c6fcaee95a6b9f43299454084ac726753080da95e3f023100d99a4d5ffcb66c26e31d49ceb4693949baadb86831cda5dec1aef4e397e3cc7a7f34b055ada48767d8b5a5f29a0995750302047c435bb500673065023100bb1b4689dd1786f83fe91acd13ab36fac0ac2a36df044c3c2cfaa501a6ead495fccdb8ef631139424c62d4cfc710434b02307f2a34a280d32daafdf48887b2542f2acb1a3da274614812f41eff0786e8d94fb85e8814877be82abdf27e9597cac28c0302047c435bb5006630640230558b372ab93697bd1dcbbb315413c7031188dda63ad89d4546ec959dc8eef3624232c996a06808bbb2b474ebe088dcea023052c0348a4a9a55d39aabec45ab47a49364169a91219ad6e451e444b993cee3a74a68f39aac9b9287abb11af993decb710302047c435bb500683066023100ecd09a97253f9531e8270a5d158f28fcff7431d47142d5fad1f3e5c692cf3263be47b0411a724cde88c7f8455ab21a33023100c58e4e85f514f96fa094b71f2c4419cba0a4b16dd43ebb4370d0108c8c74b7a406b322a159c874018f4116dc2b8f06df0302047c435bb50066306402303708778cb6ce9da4a10b0454f72173ceb6ad9221a38826df81af43617d16dfb9bf823104702c460672b581927d9d916402307d64e41e1a940ea8f3d4c62d1fc641a08832df694c15b487bc3c50a4f72547fb30037f7c8817627ff990bac9dd0df9be0302047c435bb50067306502303ba0182232dac3a4d36def746fea01d5702e0634266f5f589eb0b39bdd36293b1de43d1d1a0334ece9b9c71028c76850023100eb5534229d2650f7143f09fb2337e05a163c207a23873b8123e9cbba4d15146201f568bed470d7f2b09adf091aa8af520302047c435bb500673065023023559de27e22c3be87386454724e4cc6ed6bfdaf5da02a03d29787b4d30c7b240ce2e3957897a336f2ae1b30b75142ec02310096c30a0ffcfed7cc3dfc0af87d7ff7dffd116d178b171b7fe3ef1d4fda4dad141503f77f1757a2df24943711afcdcdc20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d3722d30d881fdf6f80bf5edebe8c260d9ea4ddf22cc5ba991fe8da8d7ffc05c01b05037072734736ce80f7dacd7ef5c02303e26c749a49a04aee78c4238acf5a3780d06f31bcfb25a4ec22673d2f09205ccebe0cc944942211bd87f7f4687d8b6d60302047c435bb500683066023100b79678e4b02ffa64bbb0cb12951981714ca3af592d69531fdc2317691ca92dea943468174976f7d357f4a6b2d85080dd023100a2bd33f97c6da0a4bf5de7904ed1174afcc2ec01c772fbe7e42e664e5f1e7106c0c956462e50ff2a9c5efe9edd327ba10302047c435bb50066306402302b3683d3a4f1996d66940a4fdfca8e9e7bc654f0efacc81a846d1fb9950109adeef4d03de70dcc90453a97d19e504def02303aba774b60bfab09e0c9a1df2c5c6da897b27968639ac2cef73e8875235e40c56089580b447f02f84acc67aaef0800490302047c435bb500683066023100b8269d2b0ac3c601dbac2a5851339b932a36a8400d19cae938d5c1e1b4c21961b6f6f95640dca02dd94e3c18c6da1f04023100e7a6a4b0a6d42b084f64ce9ffa1d4745e1172c38d017e1b535be2a427410f7fa4e0fb4cce3c52e917d5438ffdf901a650302047c435bb500673065023100cb6ddb564a00660faf510ebba1283dd56bd5cfe2700e73db2ee413038ddf45202e19f7200c41f5f50fb8c41e597bf67602304cb0ab5560811ee1699efebd7f8c70a1f11e952869da034f893b3888f23c45a3870ce55177355066590884b78cb774420302047c435bb500673065023100a956f63471d9ed8cf85732013bbbc1c72e89fec7ac498bdf699949c13198eb25834646d1413ca39dcfd0d5a1173d8db8023016bd660682ba74112e1cecde78f8f078056b7d22c7b12676bc49ad6e2bd2a6ce8cf4ef6f28b143217bb375ad839fd7370302047c435bb500683066023100fb44f66ec2aeece08d38697883c1d474ad2eb36ee42859e037560274a0662c0a09af67f64a96bbcd808eaffa5641bb30023100b52365a655a45ef20f82031b2dde1d222bde8288138e9f9e8555f2d55780f58ca44509ac0450904b0e81fbc7ba13b78b0302047c435bb500683066023100a3072714fdda320b2f111d563e3b8dabf27219ccbebb18c2b85edaffc9185114942f199db973fc95f338a7883467af38023100c055d7f369f3ece33b329341ba7a76b1784206cb9218466e3e2c886908b51a9ed757bbea5927588dbe0b2b9d2374bd9c0302047c435bb500673065023100e5d3b5ccc892a573325d3d2d10aaf3b8b0b34ce8046d04efe62bbdfdcf15b858c9e29d6726a2cc4a233b10605fe246ac02302a32ed366ba0d25a4c1775436e8d3e02ef71d1e97dc859d5de2ffb0699f9ea0da69fdbc9932388910e547b7eedd0c3610302047c435bb5006730650230775fb17ef2e6263feb43abbce2b502dcb1cdc17225cbbc65de7a99cff3637c2db55cc55f607ee3618acabe64e8ad7c36023100d08cbad5684deaad184c664ec7866b017dd5c51310252c68014e6846db32fef8b0f4836025473b3f46b57028488772ce0302047c435bb500673065023061e082c7f550ff38fbbd3c84c93ad4e272cd84a373470bbc2b612f9a10c4703c7fcdb10727853597ac738e908b750cf0023100e4c3167fcf202a1cee80f04fba5b5f298d5b3d084f072c00843e7a1275e62eac07a14d3bb74f0c408d9323aa54de3bc10302047c435bb5006730650231008cffee837815a094df0159515e273152d66fc67b01a8c4e3eb911acaf9f7de9972e5802bf9bcb804a28f9b3824582b6d023004d7f6b24cf8ca57e569c0dc6a258f75aadda86683ef19eb9297cb889034cbdb1eb1be62b406eefd6d2ec17b3abb054f0302047c435bb50067306502300a4bdc2e92c4021751ffe4bcdb117d0e5aaca88d0af2846af712374aec62641b0796cfc99cdfc04bfad0c6ebafb2ee6a023100eaf3d6c966f2892cd330b75a8adc47cbc156ef3e7f9accfde2981f091594bd22cbafbb4804a4bfe52c3a3b5dab8bdc820302047c435bb500663064023078029e358f8d018f5315b21c3e843b23887d05c2a32eb91b5aba1b5b2f25c6861a3224a17b0540d4c3455a872b32d45a02301372b3f348da931ea2ac5bf389752640cf2270c5edeca62cc7bf75521095cc7d07e3f82921f9ad925d6e2f10584a27f10302047c435bb50067306502300a270f7711735af89c7f831b2ea287e53e2dc66a22aaaed842587567a43fe09bcf8b15b1bb705c8117d604f6245f106d023100e298d9473f899bcd3fb1f849131f03147078e845758d45cd44f8e537649c86b22f7bc339773caadb62c28519aef774640302047c435bb500683066023100aab840019a5b350c18782c832d418c9a2f40bc4133b463de91b13a66aae974088c8765bfd35dd81ed918d012a76998510231009e342a57df76baefa4ee1875683bea0d7ae331c8da4b7d69fe4a3f6f9aa6fb158e05f526d66521fca6d054c78ff22c970302047c435bb50066306402306e5313c190299af780fe06eefc1e3cf14335675cab0265b37e6e0fa92cc515029d6980016cef0730e2caa6e69914a8d9023060f15244f3f6ed8341cf7681a374932fdf3065b512eec1e0d449bc63ce63d86f9661f96f785cc7dfd09da3f1b7ca60330302047c435bb500683066023100dc43b7233fa7afbd2e2c32c4809adaf3f241c099534fed084ea4f6cf683926be90454d8d7851ddf04610fe8559f4cede023100c5b46ef515a52200452f2ab493773d461b30a562bca6376f0b422f57a4ac38c70ea57727306d0b49bc586b7521a195f30302047c435bb50066306402300450d3c2754962daedadff71332e032e58058c288ddbd62f6f6dd8d9450f7cc4483eaeeee8e608c26fe3818cc17c43cb023012112d2e24f04c8290db8b96d992b7ffd11db4e5c90418a6795a8b3c8a25a835a087a05147809460cbfd823682fbeb4e0302047c435bb500683066023100bd5bc9e8dc064dd5fd59a4479fc2d93f562a8b1ff976fe1e7ff085160ff758773bc91f93b9dab7174ebd668175b8aa72023100c60bc53ccdeeec8fafeefa025b17cf77c35cc82aa237e169751cce3d3bb39a6ee16d6280e89dd3a2120961087bb001350302047c435bb50066306402305a669c66a6c2c2a0438248cb7b3421beba6559985646fcb512e8adf6f1251cdfa34a57d61078ac1ec8e8cd07782e10a702306cd7760d06ffd0c0fcbb3b0644dc1bb9128fcdb9ff9062bcabd94c89bd790ddb4237dee08fbbfc9f1e6299634db44ed20302047c435bb500683066023100cc26efe796ad6907de7d7040c5927a1bf1087a12501eeeb6b9d2ffd3c4799fdf620fc0de002ea0cd12008bf5b27373e3023100e1791fefa06f3b350cd439ce9196378802b05269eabe4783d347de409c1598b58603e2ce5a3a5a45bce6a8cdd56436a90302047c435bb500673065023100ed0f6ab77259576e0a60b460d33a90f54a72c112efa1e8ebbcf61d44f772c5fd9576a2beaf2cd56395f4f3699a0715fc0230209b7625f82c7aebbfd68777741e3650050c6973fb4e898d3bb6a4f631ee8125d849b5ea67ace1e9f236ad5131cc90410302047c435bb500673065023038df7268271dbe510457b5f37f3516af00cdd63114173c166bef0e525276c62d9957d90db346cca77556e73655f274f5023100a6931868b91490be367162448ce90baabf4271c57268b3eac19a02678a6ae6eb4a1e2d4b929a76f99e7c2ace67a99c800302047c435bb500673065023100fb422948393872da5bf0f7e34f50f0db6f6f57bad77d9b83ae03fbcd7f94cb2f27e81af8cf2ccfe7d84eae74a9e1c4b8023070b2d1117087b04b0c26a7720e3eb4f72920b342b8d39634f62d69a4abbbfd5f1a63ef9aed010e617c8a1e9dad46b6a30302047c435bb500683066023100d8adb9e96afa5504cdb4cacdaea74f469ab8b70500fda97b46ed89c2d241f49b64211046c097b12176524ff598d04d8e023100c195d094dfab6297e106551aeda932f025b6a5bbb673e46ae93f431848c73e8c0d9241a80ea108619423259f616a68d60302047c435bb50066306402307404b51c1cd46cc3d1ee90127b8d6926704dea0c3d4b89b29800bda00691edfa4790950423f626e4c5a7b7b364970cb40230171fc9d57f15afdad88c721f158bb444e3ba2521457bb3b442fc36eff4389c11cba3da807d54090141067d35f2e7939e0302047c435bb50067306502305e7d1138bdd560e0df63d05e9d2d66ad73ff93ea39794d46b6ff28a35b193e0b261d908782e77c5c1de792cdce232903023100db58b9013250a7454c5cc73fbac4785a0c012ae07013410ec6db486bbce71097cd45eb6179d9af87eb5960427c545df50302047c435bb500673065023100e36c87c866231ff4df952fea1fcbe0658c2328b7f3abffd64870250795a560bd7f931b5d5eb46561a956e38f270db4c602305aef775f423257c35e1ed6274febb91715dc640b158bdf320ffe0cc0f46f2bd4a68b0aa2f641f02857f2ca567bb8ac0c0302047c435bb5006630640230366d75680864680a86a30e823f22ae8fccd342efa765dfc3b75bb7d11dcdd3f36b6818ac75b83e495b8b81333fdb3a2f02307063cf97883819addc0915a2e48e718136c38bbecaf2fa343afda7336d7328ad25aad8b0a2d07e69b2601965bd10dd170302047c435bb500683066023100de25a86cbcef50c577f43780364213ecd0cde883fb92f18f235cbb2ac44967d48c75fd420827f3f9db03f99661556d2c023100d6c6f422e0e1dd1c33fa6bfd8e180a446e9360e30920fb048ab177b1dbce597a760a6a125d32fe382faf1bcdd744f83a0302047c435bb500683066023100f03b6bafc652da83e3852cdfa7abe98f63dd63281e7248185c282eda4ef22f4ab33be5a3d74e30e069fe1f3490df81810231008dd31a3096298c52ae7af3f549c3874571d8c2b24672c33ad97850aff8d066c183a7ed1fa3b8e36308599f14be1a27e20302047c435bb50067306502303f7374c4a0c138264be10a5da1dd44e3d72daad2b49ba4202e36584efa403dce139cc2a1a0f657fab0a3fee309e4b97502310098a5480d62e1c085ca51b92f11f3284f5f1c1b21e95c7e8789988d1392e96b71afd2f010a9c8e6ac6cb66af8024027ea0302047c435bb5006830660231009af249d47e4c612ed32479dcb6809e3f8ebc3b8cdec330a54671a8c9b28082b1e1066887a35869c164b015c04eea350a023100ac0b558b081c807819b116706ee031554445aec8b2b591434825e47184248386a9661d5859c4a0786240badd7ba55a510302047c435bb500673065023036049f3f5303d7081e16b88eab169493a254e5755f802e506a0269913adf955eec3d742eb52670b20308785f78771386023100bb2e810d3ef08d75ecc01aad07d2c2fa775849cef151c90a4f799596a0b024f26d1eb202a47c65e0693455fe6d1839470302047c435bb500673065023100c5cfc9594dde91df427337fac37b502a8edd495475105d06a0271e0e1cb77c5b4ed5c1d0aa0c85c9ac5f0424154a835702301741d48e88b0e6c65882f3055ff6cd52cccbab4e68d462dcc2a4d6e8fefe11deefc41a15caa5e8fbc40b6d2acb548d050302047c435bb50066306402301f9f70027aa0c2215c7999761cc835c2971b43946be600feec84c268d0e8a3c22845fe5d6f6a674a4bbf17c97edd364b02301306acd50b1c15cd0742fce7f5f287c046f5895f0e62bb346faf1b72607802d0b2aebef39fa9345573fda958d5f1db9d0302047c435bb50066306402303ad9dcda56aca928f548c421f6213f32b608799e5251ccaa1e6038614c83d40b9e59db13b32de6a5eaee2b95ba44e82f02303a642c2bc9baf788a0e23c56ad73d0c8c0b9a66813a58d20c9dc674674174f8a2b13b5400cb7ecd0642ed609ba659fe50302047c435bb500683066023100cb447b92ec106eeacbc5dcc7c42d3b89b0afae9796ce7f064f9e800dd1ddfa5104d1574f7b5bbc3421e53e0e1da94dae023100c6fcd319c6a643eb40b67579b1659078f8c7220711eec2f17f3bdedf02af55dd7b92362baff733aabd4aee63ccfc7da30302047c435bb50066306402302cb07eac375b6065747a66206ec4a2ac2365fd5b1e91dc3e1519036044660fb4501778637a0edde5af98e23e5e1f37dc02301fba50fb34adb5858089b38c059ec72d6e36150b1396a8ea7702044e154826a011fb548e311ae87757aee3555ff30fbb0302047c435bb5006730650231009264e6ee87e51288903c0c0e69c5f05e1b4fa3f2482c9ad58c19df96a6405083a0b6130d9983f1eea557c1a8a177cc1a0230240b70f07e458770b5a66f416df4ddff31ebf67a2ec020d6f6a1c07a4a5e9afa579d6d4242fb36717b13b65df5d414440302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023067600f551a0c92b993b02a3538c707dc9136598ebb40a2847b9ae65512451c62e6840ab79ee76dd7b1f0fa331a10c32b02303a330e8923c1f9cfd84b4866ff923a64688adb1bf024f1b29512c58144131af5ebe50d48ac0f4c688bff24a04eff5e8a0302047c435bb500673065023100c991ba2b871b990822c08fd3e8e0142371d8949c18ec24b191af85eeab45a4f2bd8e55211b7c13871360e168f7058fbc02303debda9bf6522b2c59fe1604149cac7db71170d6753eeaa4d79b9f1f4b8d6e30cfe31827cd53586a816d344be41a48ff0302047c435bb5006730650231008c4884bf6b583c2a5f63c0b77f9244fbe41e925217436a905568fa9858964a689ed427145f6dc7791bd8281f90c18b83023031bc7c62db53da502ebd5fb7a9c70a52a331a6f7adcb5048c53b29b1ea4184088f02788a8deb1211a85422af89d031b60302047c435bb50067306502306dc941f3a8299d9d6d00d3943e0a4d42ba30c57ff8543fe121ab1305ab049cd1c0c6b76275ba11f258949d61c2085291023100d287beb330b0d3153459b501793aa8f11996ccacd8aa70344051cbf48c6e9a8d1138c4cf2997915621b1c08a43cd57460302047c435bb500683066023100fe155b88a50c049ce89f7fbf27b1ab7feb4f817e00874fc6389544b3a9bd42639f3004453c5e0c4d8d032ec4bc04459f0231009a4c96710143a8ac72b42f5f50133df56aedfcd2775f850a7f67d63fae07a6ef962da081cdd1c3164266186d80c385140302047c435bb500683066023100b08d8b693b3ffd672dc81c1d9a6096c90961faa393f5e2f94db56d7ce06e10411673af962593089840a7fc7a1e8f088202310084916ca6f1dbf70269ef78078f7944700e3b5b4c2a95f6e94e0f0911aadb06868777ddc2ca9db1574fd9df295231462b0302047c435bb50067306502306f8c1df353652ec4f4c8e86e0f16f348f0ea6bec200e1a7a9900d339b1e631b74c377ad95b5538aebdc1656383ce4cb6023100939bf610b5cb14049a96e0857b677a3391ff38a7e2812391199fe51608a1ee24ddf3bf4929cf8d200a5d4c09693fba430302047c435bb50067306502302870d6936f0c274235308b07d8a6eb3e0cb0f1608c336a0203451a2fd9d47508eec349da86858acf36489f4c9fbbc594023100a5be0dd4ab8a6bd57ca2e81698129fa3093700cd879ae78db80e4e43054e678c8406d792ccebcdd8c8b3020d8578249e0302047c435bb50067306502303aca67641317901bd1d52c79798f0cb3a943463e7faac9fdc850d490c974b341817c447c112c377741be9d06d2b123b8023100a065648b01ccef3ac5a79dcc89f421820822287a8206e1b8fa4adac514df01c35672966b15f1fe13795250724aed1e1f0302047c435bb500673065023100bb4395c6fc29a5aef29715f8d6882f3d547b7aa1bbf74b123653717dce57d5642182a8a5b18a4857418da7a0f4d5868f02303a7dc3b975771118794ce665fb6ee5265dc052bd7fbc3ea046e8fe6f937fc3dcda918780cf862a444d5b0c700811f19c0302047c435bb50067306502304fcc14fbf9318044192aff5f366db9583bb4c4ca1b9d0154fc2473559306f8214c7d4cd1e432d6b8c65a0180c9ee7d46023100cd68568d604e99e110ed8df3b2a6b72ee979f35c0bea55d563d3adb9f76fed7d6d421b36797b15b0c80be6adc56fe4fb0302047c435bb50066306402307a0a39593e7d66cd49831e4ec4317441b6ecc882d1f4f519f1e64780ee986363e88c9011bd198f6cd4f165bbeb1f4a7a02300ff2eb0b120f97ed52d43c153e9f178e2f04cb3f2a5fd7e9bcf782053d0ed0bc02f279f3b88068a334da36c469f457500302047c435bb50068306602310096b01ac4f6d9a9cf244208c53a3d4387ae6a8c05b59b09546a583991a4442c7cad0900630a333922fed280a7d3ca8f55023100859b3a4a0dbbb641f5ad882cb6c618c93f85f16116e0756a8cc24c1e9a7b394888055d6ba9392a9f046d2db5f78548be0302047c435bb500673065023100e7591b1b015a863d44569b07e8b615066badb5ce1e12e328c3eed83bbb2b1fc80833165f6f5e23b5488d9ceaf251400c023008ca0b304f60db1ff1c2b0aa8a99342af59d303c4c182d43cf048498748cc8db5081154e0105f50b1a997d8479dfefae0302047c435bb500663064023003c911d38b436e635fcaa822cda54c35836dfcac7ef19fe544d1e9e7f9909884c35738f2a65a4b8cc8ea2f1bee66acb7023024accdb7c1991a7871b47b921c3c1a3687bd81de49315aa5d5bd4b64a86a448b16487120cffdb1d67ca9e2bf88ca52630302047c435bb50067306502305b31030835e2ac7f0c4d4c5d8d4bfdf8ff00da3ede042d705d92ee3581f7fcbd7e075e4d35e709bf66a17423c40f6810023100e6258110e64b147c6bcb5363a028ce1977ef316b0f1aa3724e8e48d32dd0c2968ebd5d19fb62fe5157ca504d07d719380302047c435bb50067306502307d3c10e8433ea10c00e99589cec9f48e81443742f8d31581d8463c8006a2933851f0a2960a1db9b73f329b7a7f2720c0023100fafec998c204e940dcaaf3f0e994cd9a611b26505037a2fe25fd5744fe75387fc305e1fb91ebe43189e83eb1c0ffaf510302047c435bb5006830660231009469af83317e6b885cc37a543283f20eecc28f4a9e949572912182b81d2e90de8ee4079b75f8325d73bc4465283d9f39023100e90d04fc5686b738126087cb1d8e528b6ae46bc0d3e4a3d3ed958e64343f3bb7c1c626a90dcb2350c176134066ace6610302047c435bb50067306502310099f6a3015e9330bbaa4cfa842eed896b147447f8ad3d110ccfd2979ceddfd40cb5db35199045d44509168432bf68991a02301cd2a2eaba1e88e6ee9338ccd7a8f3e756e9dff00d9c452d00b937ab46785eaba77d4c4dced3582c3415b739f32459750302047c435bb5006830660231008ccac866f2be53dd0a4a44d28aff75a7c968252d8ea1f756b00300fbf079e7a7bc3fa9bf880688fad2a353ee12cfeace023100932218c3c636bd9bd3cbbdb4e3b9c2e4a4c7076ea16e4b67c1a433a66251937abb734cc2cba40164f3f635959411269d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023047568d2b885b6a5cc464627a366f68fec4c00e560e576b5de803a45dacc94237525346f43d6a820fae86d57e3bf8d48002305f4a40a33624562c22abebfab6ba642edc9dc9f4e74ad3523484e9b9ea619f76d57a38ac19d17cb00d9df2c8e95e18600302047c435bb500673065023012a0dec0052bf52a55d01527741d9362674c2c7ed640d029b23151f2eada9fa2ab94d4944d4111e5cae63befc7416c78023100e5d41e2fd840a14951a394778eb1d961e8a714804c33d77e55129f61d5e452a5b73c52cbd753fc16b22962c4bbc370ca0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230283582aff27404b0ebff4ad3ac6bc0cbca04d9cf743a51ba63ae161f5d4025d056457af1dc1f98c1975fe9ac8ba91d09023077548b127eee78bf541a311a5f86b7b3f2406b972380c51b7235d313a08d10ba477676c82c6aa1672a4122afaf83718a0302047c435bb500663064023078a4a3cbf3601ef1a0989cea642c147c49f3bf23275b6ba4e9c9687b7cbae79c61c2d1d5b132355472549c81504c376b023027931a7da0df07408c92421b24f6812bf740ea1863fab746261e0ae61d37d2cb9876f17e1204d0af22e50b6aa214b8e00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008766d443fef07bdd92807d167813420d2f88c426e2e10933c1df11523633a782591389415b7433bcdcc04d1ef25a8110023100ac90ef871b84730ea382875884eff92ae8eb65c9285bc2052b20f9b1336af1370e43d9fd20ae5a66a791d10ce6d834280302047c435bb50067306502307af23f2807de16cfa7b40c25982dd149948689fe07271b58c2190515da265861ab4f78a8a5cabb65dd53a619e23843ef02310090b186aefdfba08b585dc590eecac57c66680660d29b096cfbf95379fa81dd161d24b7cb50b2a256247cfa3b0c58ef020302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ef258b1da335724b699003b41d39e6e619ee9acc3ea715dfe7b2688ce8bb03adde49fd94c532a96ed0eb5b3749003e060231008ce5e0d5ec029070620a0e68ef5f4186a9bd4408fdf0f440d019188e4cd1c7eb636d720e0805d79d608101839e0da8d70302047c435bb500683066023100fc5ecbd4ba98ab6ef827609637d885255da72cb783bcb73a65a6a267823cb1ec747afd0918ff68b7c39d4385dffd2cef023100adc3806a06cc34a9e8c9044530b239a8ce3b86229f738c267243511e83bc2be84b30d373cfc7012769211b48862d3a340302047c435bb500683066023100834a3ac726020f96012ef2bb683e63a65623a7e9211a0bb4e44863c00c79aa2a36949c514ecefd1779f20ff7e7e40628023100b6ca99f372a6da555d884e25bf62d49086142d28c9297360fa6cd820450686f9860ef68a8000f3e706ec8a37075ab0300302047c435bb500683066023100a6f8575b6a7998243e515f2064bbe726b13e14173bfc16565b8ea7359f8232b36d5ab873717a8160172c42eadd21df1f02310083784c5bdf1ffe6b6873cff87da3f06c03ec46b26d7fed759cc7318529680ad90816c6bc54a8c89af3aecd13c095832c0302047c435bb500683066023100cf8be2c9ba664967029dab289109dd888e36a4a82471ecd474486e88943c382c4ef8c3850657b1b3f95cf194e361b2f1023100c83151cd4802e31f47cbfdaced7e00f25ff6338b23b9a811ca02ed469812de1c97fe6190178f699c0f75c8dcf566dc110302047c435bb500673065023100cebcdc201ef68f64fb60ed95a44ff52ad21d9ac7ac1a3e85d00a40f73890dbc86bb64464e9f7e29009c82b7ef34def890230541e27c88612a7c0fb3899d005e4cc7ed6bd02ba348ae5c4d410c18149c2a4f812a47d51a3814bf3ab10523c40bb423d0302047c435bb500673065023077c1912ea00eaa004c92fceb46be115dd25dd9542d0f65b407774078c9092876521525a6bc56b3054877d485ee025e72023100f5d76825d886ddf13eeed97ce0cad67a9130de2c1c4db1ee052743c10e522d6a32d855d89f1284e7d1a2ef8eac309f9b0302047c435bb5006730650230211bc8d14449b376966479af69e7fa6285a6fe7a21b664a08845d8452b3fbb9d7e1ff63cc7c60032f05254680d88725f023100ce3e11fe81c8efb407fbdda7ebcdf4517d46630025119a2ce9ed6645fb5a70a8cc96694b672a53d2773397c131b378c80302047c435bb50068306602310096d8d8316ee768cd0b6ddaad90a30b2f3ae5abd08d567747dcd452bb1cd1305ac37b012159b80f63d9261eb37806fe14023100a25d44d68307c0071117c9898d910497290eddd7a2384a383f1373edf4b1b2ce925e9071bad956a9a654ea841737bd040302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e4784c75da170c1d78994d0c7662d70b51f4c6017e7e75f63381ac537dcda70c86d4304f0eb20cc24534ddddb7c6cc0c023100f1e265ade2c025c7d6cbc16126f5966053ef7cedc5cd42f43fee0a8de01624ffebbc23698dd09cef2de26b8ab39fce3c0302047c435bb500683066023100b757fcd3a785433d8124854b1dd480a725745c2262fab842ca5291c86a1f722806d079322c42a034f636a871db37756a023100a4eda94ac9befefa68f8e175db9cb791f2d70db9df8318e163c7f06d3e3fdf02e95bbcfa0d64a80032db3e6d7f29c6ce0302047c435bb50067306502300e611998ce805e720ddf4a1065d1fb5288fed918f7f2b4f1ff82f06b350b65c3f5ebb79ceb93115ffdd2b2ca5d168b300231009e5be9325f5eaa31058846489c81e6a4d333c62a24ee885ec93a5292cdd5f0dc0d433fcc8919ec18e457669a78522ba00302047c435bb5006630640230759cf0b9986808f0fe7fcffd16411237cc3d27222808f3181ecd5602b315e2fc76175638f0d132d2f30b08190e1886a302300b24fd329482db959bb39a0a219883adf088a7f3fd51deec67a1f7b2fa1eed0ea827aeede794402d8052af1255d5b4a00302047c435bb500673065023100a5b90ec207e70b088d1ad72c45ac867c83b8146828a95996e14388f000c51b9b735f470474627171f4669d797158baaa023061f737fd1fc08e4f99fa4792df94962660e4d00807963bc7999d67664c6790dc7bdae231b6878f87ea76a56eaf7bc7d60302047c435bb5006730650231009bbe1050ba82f5ed9530993f9a02b4e90e9c2d7dfd6f6b130291efe7ec98f68d0faafa49c1c22ea50cb6493ab6fb2be8023030cc112b8f9e5d4c44d0cacf9226f5fbc0a3e39d1f9c95ee13f07d6a1c98afaa9e79eb6566023804851a086bbe783dc70302047c435bb50066306402303b7861e38d113889db018bb3542269a42806e4b49a36abcf051161f90034ba2528e9c12e2287aa33039dc3daa777b260023052b1829fa855d620fd36877d19e8ce42b32e832ebd8b2fad698cae4a639b33f597b6d1780a6f8d89f25a7e6c388c63e90302047c435bb500683066023100e9ded4670e02f2f05820566f3985af7f8818419b5395e0ae90fd9b83d48ffb9eac1e73d55dd304e9092df41f532e6286023100b70ea131219a1250e247444d623f59025a8819b660d04fd16c0bc5bbe112ca98ab464a0895eb8c7a73c9ab497753ad3b0302047c435bb500683066023100db89e6d231d93770242bd479855bb0043bac0754cb26ee90790e039633f35eccd972c0a97cade3f3cc4b02e95797c4bd023100843a0ea03a6d750714b1bcf5efe35b612ac1cabe68b3662d51465ffb0c4541c636ba6c0f127ddd6b3a242d4f0f46b8810302047c435bb50067306502307280178ab6e0aae0cf6719fd53ab327a9018c686892818cb220cb2c79e6274242462478e541981fc9ced00e7e15fa2b702310083f0cd9fa4f6d9d3047aa9040993ce6687aa6f820a9038816c1fae388ee131ef90c13b194d683df7fdcd5731620e6fa40302047c435bb5006630640230252e4e6e587ae8a386cf53998d33e5ffe4dd7fa68151e1d46c94312a74b0ee4a83b097890c6ba05ad2d4fca4096faeff02304b708d398c882588b7e81757ba61032c4d1e06a175b60b95df934c650e5c0e2e083b466a01b0557957b6b198cb505b020302047c435bb500683066023100a50ffb47aa94917c4e5e2324388b5e492c583fbe378a45d610478529c552d4036419f0c7c7d3477bacd8ec0025a5665b02310098f1a3f49e9d05f9a6adbd829b73597f7f7a605f8f9e8836b907cb6f355535f430e5e1616b63d72b753dcbc3a29a59240302047c435bb500673065023100eaa78a651ecdaa6d137058f6b931d8fef720a1c9beed1c5b0705da25f1782154c180d109a80fa0a93b42becf40a335480230390725250dfc7ffd845bc79dff3be9617f128e358ae3d87d52ee06bb2b5febefc70b8b5b1e366c0f5d1bb112cfbbbf060302047c435bb50066306402301020b90bc662dbc94dab931e0993774eefbab13b983bc7bed7517018f8de82dcfc032e1687c53be34fb48079cfe3b7a10230609317f42f201b03305f523ad54e75463e3ed49fcc90c2fe1fd24f11a701214803466fb65309f8625582ce5e4d7dba020302047c435bb50067306502305b45cea32ebfbb848dd68a6c03f168ddffe7485f94a7722d51d4d49e14c0f5037aa2867b8d3ed97d71dc88d91a9a5523023100fefe6303dcaa0ec553f47a4ae498f28f49af625fabe9755678b485c87387fde8cfa4c3159a7ad5f827c6ce72e5044fa80302047c435bb500673065023030a63d5c17410ce30a887a384bdacb101e3272ab42a9f6810a1c122375c8c30927d812913acaed38c66fb253540c21c5023100a4f8a9214a408f75817ef3677c5370ec324809c8c843094c914d49c88832dbc2cb21443034b67e479992eb0cb8ac45920302047c435bb50066306402304934ce45da0f218ff358c20f9d39b887afbc5ff1b5dc955ac08dbe1c5bd5818f212b062fb7542de08dbb1f5d6048d2280230539a9644a03c38f4ed4765a918008e69bb1400adfddc764e9c447c1c1a99d9df4cea7891cd76cbd0a5a18720e5f052ef0302047c435bb500673065023024639cdb8c5cbefeb6fc4fb52ae23d26bcf53356fff5c174d7126ca9a586c2ca460b645a667c53329b88f2d72acd2523023100cee894b64c2c88f21cdc5e9ef60f501568f36e193a57f4e7ec7f279f8cb3fcf70f9c4733964f629c760e4a3e7ed12df00302047c435bb50067306502303795d4bed516a1cbb895d2cb17f6b890aa369b5729ba2e19b2afc13f83156efab5a3ea20fc2b515d751fed047d87f648023100965df7c6f779a3d0b31698e8b8000c534c273aca55ecf6918c5f1c04609648a9aebabd3ba205c47f4c707a58e619770e0302047c435bb500683066023100ecaa3803506bbfe5f524429bdf68b89058da70d5e9adbc0840dc4bd13677c72c40486d13c435a8d9d1f2b24b99bf2ba9023100ac42b645e55a7285af93fede7a13249ac57c02ff6a473f740796f6f177fb80dfa0ccf9879a98e480052a7c53c20c6f670302047c435bb500673065023100859800d6b8fe11108a04b0040e26940d3d701b8be1e2baa34659f522148cc894ac13d4b59ab1db9d377d1ec47f51ef7c02307fb97eafba16d5913f341d7affa847fc823445c7b31d8f72cd614f0bd635642b6eeeaf5ef7a2356a121b4cb93599b64b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a6d49e2a9aea01e225f4b6c0b59347de04e2c05a4bd5f86635ba3ad52d2e10f45f7cee34ce158380acd976300fc6a74e0231008cdc32d7fac432cc39f0fe2911d57812addd4237e7aeba460b904688ccda79482ba3378a599556c8565474a9c967c3b60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023029a97af2bef78455e6707f9c22f7931164a585b048587516430edc75328f61c5f33145fb03f6849e7734d81797deaeb90231009e40e0f28060c7165817e3197f7be09413a5ecf1dce4b0b11124822df0c50d2a2fd0edeedb1b0faa0bc2b36cb5c1fe990302047c435bb50067306502302c02208d7628ef70e0700987baa93b776e34fe4330d91a5e2ba29c7982c5674130532ca962569ba327854e81c75f2b69023100bd8c5c47cb603ac303ef0341873bad7402144c8bbc26b36dbea95974771cdc76a47d133edbe2699f56b1c8ff70f33a0f0302047c435bb50066306402301879ace86740a3eea0397c1d1cffbf8f1a70af55857b41ee4d626a1564a4a7324c30f3379159e31f6f281b16bd7e8c7902302e0f5c2086eb0fd2afc9252484dde658eac15a29f3f26d49b6bdb3fb13793c2bc31e677779a2b1ef7d5281dbbf5f77750302047c435bb50067306502303e9a6828bd4e0a5aa290492460640f52d9cd7f5b13d3d065d45edbc523dc0f90d90cfea3a0d17071c7aa92b37cf4aa58023100fad8683d64d24016f1025d4d8f2e71d17894ac09659626a7e9f4d7fa322e2183a0c79fba665c721c6a196022f5315b850302047c435bb50066306402305002f0f6335b0de25a7d264a498fca6cf9998ae12390f14a5bde186ca66254e9a1ed41a21fcbada81e743d00bbae69c902300876f1057d99bd20d079d49c6daacb962113e24f139c1f2a3c2c0fc75104be91fe4a08a98954682b76ef86cdb124f6ad0302047c435bb500683066023100852ab5aa1e95b7a6ca94a29aa9f18180ee7370b430121e12f16a0ce902ceb85e5b34b28ca2756d41464467abafdbee32023100d447995d431e483a10fff01438158915c28e4b25f02f393794f684690d97c46a8d2849263c1b183ca16d7b5c0df857930302047c435bb500673065023064301e6df761fd2e6ed5bec286a82d736278f31bffa5910a3c3c5bf3c1144d8438e12203067e5b89228d61e20c9f6e62023100effed531f300d054cfc107036faa65cfbc0815b0da89e6d1ec4850099a1121cabbbff631e25733a342a078dae2d0ad170302047c435bb5006830660231008aca5a3a3562113df2ae43f11425346af7a57e7146ded136cc45bce6b5a668a99e7fa1af3f317926824dea3b743609e4023100b5adc2db81c2b41c7e5fbd933b5198b2dd528a176dcf5c3dfa07a6e34b0e7fa012aba06a880f0b363b45a74b1cba33150302047c435bb500683066023100bd1bfb0ea833586df47da85ebb7d82055dcc2e21f1a6de81c1fc1fcca6c2c07c10fea9d052636ec3bc87da8a1a3d4d04023100cd5a867187b9658e133bafb86fc0f842db4d1a412270cc3af53cb0352f48c335c2c67579ad1ca177a1fd22ffa4a862d00302047c435bb5006630640230753b9f79cab0ca3bef73ab86cb8cf15c619db169e0d1cc2691cee275b26d6e4a3107af93e30c6ba612438211e397ff3002307b512cc04067b005758258e53a211fe4a35ce033428e542318729a2cefd7c70d69043ee5937d013269b44209c8878f0c0302047c435bb50067306502304d4279826590e563b8b01a63e0cf0ff128110fc1d5594f8342a4946c33709c9ed9fe250de96526a6d1a435a49aeae560023100b691ab1e6088589cd26a369ea443a98a5f52e0cdf20121fb56b9ea087b69d8fdd991731c584f31a9cf343a873e57ab340302047c435bb50067306502306d1440b756fc1af1793d6ab4ccd30e2c4a18d7d11da669bc2a4a1c5dac170f78f9e58b2319b72119ab72284e8d85bb65023100f38eb2baf19b933599b163153fecc02571d6104cda4a00d77c88ea59e5df57795d78fa8d68b1ba69cb6bfc29a053fe290302047c435bb50067306502304575317f74d1ba3d37df6d553a9b7c8cdaa0dfb11aac6ea3806a7db0b98778f4a01974f924fe7996e09fa31842fe7e3d023100ecf45579ebd0f4ff82d049d17481bd2ed501cbf105f0f571587d75c836e0ccdbe08621aa7c7f7d7b04af7099d451d29c0302047c435bb50067306502301a14623b019540fce3146090a1fcbb877f99420a56d90d9edffdeb0b85a9550e5d78386fdc12d5e52e026e327756b52e0231009d35f6c674cc162bfebf8d329bb178dffb881fd4de6bc8bd6206175dc0b19c75d6e05959bce1e8974d222cb2ae8bb7cc0302047c435bb5006730650230530062fb6892010428145a61d89ef24fe5a04930f1f20484ca40bf4ef22687406fa22b67d095d84baf0d2b191c0edf48023100936879d6b543f0bc66d4e5a6b4e538f83ab266b0676c1752fd7dc78c1a6b84ba0d28ade542fb2490467a8cf94424652e0302047c435bb5006830660231009f9fef39b9a7d63797fe225697c2e3b91a86704a19ed83b45155160ead330991c5b3de2bee4dea831ad75333711bea2d023100992b3d9ddfa9ec95461d24397890592b0e9bd38e9925523ac26f1717b698e828c8e1bed426f2ecdbaeb1bfbd768177490302047c435bb50066306402302fbe5d2107667d338bdd8922fb823e2be4ffc828bc0bf22d10e6823dc60423d470ac2afd39725de55d5c961e0a259b3a023077b60759ce454d92e2e3019653fd91761c59e736df08393dbca008b54f2fa62cf768c0d54acc238ceac66a1523d262bb0302047c435bb500683066023100e39a7ab400885643267425f65a18719a91b8309687f27b5e8e5bb28803205b4d17436c8062b2578cda4a7946ab37b3d8023100cbdbfed23ee3f6442fb916e5e3cf6f7afb9bc43c33f28daccb10db81dd6a57245e7672f775039d2538a04742792c599f0302047c435bb5006730650230437cdea48dcb01048f6254498e04453e70271834b730f57695a986cbd5ede739ccaa10c413db63ac2a0c1ab11f1a37b4023100df83f952611e01b9e2ccd33d60931d157a335bd47a8da554764b116535b01affeabfffd65edbd09ec772f373079888010302047c435bb500683066023100dc16c4da8f05b244c17bac6ea983f6975203307c9fba5ac596b33e6c3f898f05f09a0c252a83fdf9cfbdf2f31a863541023100ea2eaff6f865694b1b8a5ede58ba0c7f918ec87914dcd0aadc3105d8c3be4a0066ede0270d46a891f448c89f12bb0ecb0302047c435bb500663064023060640783392e92c116eb6af2d2f128a0a657a0f78e5c07f262eab9c5244a0d14b8b76b65f99a0abf168c956d837a789d023028c5da945ad7d34231d05826b8f459a804a0d7fa9bad54aadd1b95554334a6b810305d6c156ff87c46b0af5975e51a2f0302047c435bb500673065023100c23b7162fc8f81ab580f00a8852918e605b2b9fce47a8a4681a7e8feb649de21824bca7b8353d60ef1550f0d118ec304023073ab36014fbae45940aa9aaddae0b1229d733b84c6d5f691fe2cfb4ac9962535caea3f878e38258de97270bffd6a08330302047c435bb500673065023047255a42987d08472248a0fb8bbcd127aae642560ac553f3b1b354cd11efcc6100f587bfd558286dad8b03eca9fa6987023100c93ed72b26bbf4e85545e3bac4526c9aec4cbb2725d3c684da3df4413314c9e1574bc6d498cf87e09a27a196933268940302047c435bb50067306502300362533aaeecc601c64c486a752ef3fa788d91ade664dadc8bdf836c40b238a77ff0f61a1f6b17e1a20c26ad493b9517023100bf73202a66873c9959a74f40a275b833c732cd066444226b9d118948972378415582902b2760fa6f79ef2dd247c02ad70302047c435bb50066306402307d89da51883caf460352f8535bce9de9396df7969953ec9da9988807f1e55a96984992da69997d3bd004e763f1d789f802303670a7c4ecfd21f1e38e200223ef673f8795db167e49a05f5bc5657dbb0b8db2a02164ca8f295035b387a37e43f252450302047c435bb50066306402303577167c9037f75f76709a2b8a317d6dc9323e4b34b4e74298cb53cff3e1d88e8d0e20b095c949aea5334934f1b1d6ec023055ea3a462c1abbf4cdc759b07a73e7e4c18e702fce556b167f6e51d102315d9838f5882161850f3fb9fabf5a90eb4f310302047c435bb50067306502305caa0a61420de941363dfa31ddb3c62fd9a615cd6b3508075962c05e926cc26ec18d60491eb820353d3d4c9497e3cd5e0231008c1662a518c895c73c32d11e77a577187a0330f02471ac87f9b494bc99996fb8592a3e804c0f52552995a1b49deaf6360302047c435bb500683066023100a3419d7e59bc00b3852fb6787ecab1054046bcf8f8dee2c2bc383260a3ada619c637c84be4f3cd09b02aae0e1df5044b023100b2d50494ede311e0a73a6b521e1e19020560bd9dc82796640d2c76d45d0bfd59c8e090c11453b9af041ee9b86990efa90302047c435bb500673065023100e95913c7f16ad700b08fa54b91472a989eb1ac660c8908c1f0f664e8be8acd25eb1eaf0278f3e32124cdb9e200044329023045b3c8db8d2eb8af3e3fbafd8c5c79ca14fc0e32c1ab1435214dde3701e01e2b080da06ce29763bc0e2dbf1c9dfaafe90302047c435bb500673065023100f1363282fa580247f5215e5e346e7affd0397e327f3e4a63f2fef95e633d4fe878a8b296a82251e58f9bcfa8199788c002300585d93acf8d8a0a617a30e47b090663c8eeaa491a80068c46bc3ad48c02e8e032abbc03ed76bff623667c495881448e0302047c435bb50068306602310094edf2930ac3382f4c790149d5fbf2e7109c12f8dcbe52b180c9219b43e8159b39e13d439be584eb19bd5b04d71c26b60231008ff673c3f65a22f8dbf1ae471d9527850775151fabf64e5fc6a676c9e2e31eeaebcee77a04d8ea6295bebfaf5892a45b0302047c435bb50066306402307a19c1f3174e300509e88b3af9b1afbfda28fa2bef4ac595d3911d9b728780ed4526200c4d024ba9d3f1f3595613484a02304f697c98241e77340cf12b4fde77833b088a979ac39775ea57daa65f424e184c6cbc1350621fa95e4275ec502e8f9e160302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c5a3f28083dd84c7268f6d615c35536602bc2b679add7ea13170034224c65533ba61cc530e0c18ed77ac8adc83fb99f002310093fcfa319e25b4c7cded128c893db0328e7ab6a88f23d84d636512c931a9f4b0ea34fc9ed9331b2019a85ad13dc4fb920302047c435bb50066306402300715125b8c3f08c228f21ac12e22cf82315861360baf9e81279ef13c1335c1fcf6f63cf6a3ab577319e18268609687c70230291f274069904c9472ff0c51f0f2ffffc866c2c27fe1509647c2301754126ec90981f5e3fe57e34de7005555b450a2b00302047c435bb50067306502300a14379d209799c9950f420008f9d38ec28bed93b65da9147235a8fec0dc0d14d47a19fbb39f2dd454c5dd525bae7a3302310086bbe4cb0c5dc49bb7fd7aa12cd43979adc2af0b72d45339fb4b82351062271f8a11756ec6a467de01e4b6137d4cb9190302047c435bb500673065023100afeb5350be8b155506afa777a70c26554a662aea0e57d8a8036fc3c8eda3928412761e4ee8be1521faddcc0cd0334bb5023005c55400c163d6bf9dfac65f5f33d3bea19d43e6a6c4031f8f7ce243f1ef37d01d739ad7b394adda383038a0b4ad94bb0302047c435bb500683066023100b049d92d7bbfbbd4307cbeec5b481eee8290deebbc70dce628f88d570a3d3c0b1693d440323c275ab3a53abfcc264f56023100caf61dc133ea71592bc1b49d7237115e46b799f411463cc4832e98337a4a604e76c205bbd80617f025c999438aad90200302047c435bb5006730650230417bbbedf6929759d5a3d8a0c40f5eb592043c844287639a17b178c5b303ae6e225183aa2d223fc7eb722cb49c1f3517023100820a7aa8863ebfcac833eef674260e35e2a32c3a6786104ea97b658267c03da76120680c0b3edf07b1e5ec159fd34cfa0302047c435bb500673065023003cc125f1fd04c66e5bb817a4be9643b4caac8903c1c17907679a93c1b9d128b091d0f13e88c1149d4af1834fbb10487023100ab174bdc83a0ccd8fe0e5d7cbcb78770c04e7883df65e69e5805a3eef81bd012f4d64e849489a1bfa610ce7b665659b90302047c435bb50066306402301a9317e72134905b11ad2d5a3ea45c81f096eaa5074c4473badcde42b818ba7a50be6d41c5004453a82deafec7ccecbf023039be92953a98796dc32fbda1a505aa8ea403ee8fa13f76f2f12b37774c1ef90ecc31730902725dc22bc02350ff01f4600302047c435bb50067306502303cc2cf71decadd5601a507da8f4a8a0325c6382651ffd3a45f54f0827b3a468edbab79ec7faa63d5e47a0694e2b3e6ac023100f1091de17e06fb041c889b13c0e3f498a64f55216645414a0c4ad7565d71968299b374aa300e906235f1e164ef4d1e480302047c435bb500673065023031e455de13b28f0b2ef3bfd62b47c35696239e53e16e6ddfa15eb1d5ba693157f8b26641c9a7e0ec4ba009ef8a4f4ff1023100f23295fc4e1ed5406cb2ac571043c0abe49770e2b2aea2360c6cfbe4a09faa9f5668a6fac0888b3cfa9b880996e01f120302047c435bb500673065023007e8292fa11255dc91d27485399da5c47d53295df990c946ecd0737ebfb71fca2caa4548296ba5cac1a06bb7709b40fd023100b864bd72086eb57a6cb31a935411ee798a90004d834a03a639124347ddf607e3a828dd9c32b70293f30e83ecfd07780e0302047c435bb500663064023028c54bda9c96e7cf72769b891a4ffd52b17d8bf2f6398286dd53e81a587611633f0cfbd2cdb6f57a5f2dee7f1694d33e02306f7f10ccab5dc787903aa8bb578f640b93639b9095ff33f8859f67c66d377a31be9bb294f4588cd71f24e3ad4df110e10302047c435bb500673065023100b55c34c2144075a99e977ba86d61b93d51fdf29d9bee83bf7d1f22b98cfc0695346555b70f002c3041ad99779063ca0502304f7abc2b5b18a28da61c3215fabf895df3422bed8ba25145a254c066680a6847048ef6a98fed91a6056c80af29c84d3e0302047c435bb500673065023070dc01ecd93ed23ed13bbfa6ff0807d73f1315d4f2b9c372c949e3e88aba1ec199db379a7d74ad6860d68a6fe646c89b023100bbe9c192e7aad9b098488006b48d5c088c17b4d9ecc2345fb0da9b9bc20a48aacaf2e82edd94b360bae4442c1b0f01dd0302047c435bb50066306402302c854a9ff50f91c7b130658c4c69cac5275599f7916fd1da3a8f87d27f96297fda87dd977b94ec12866c8f0fba60438902301a673fe18a89367f7e5427bf5a392bc0f68ecd27535afcb21de609d2bbb0c2de8e913beabd16fad4edf093b5239319df0302047c435bb500683066023100e65c6c5c0b9f3629b342870fc18039c42a83cee51d4072f0a37665c1cb85e6a48be5de2916959861de4ea1c9c1c408a6023100949727b5500f024311a26504e71b90a01d292b0604b85923e645265eb74d6ae126d49a4d5e7b86b64913b3586c351c630302047c435bb500673065023078a5910d7157316dd7bc53a8aeebc2bafc5f1738d2d148adc68b1fe999b9b7d564a7b29ad7ecb0d6a5a24f000d9238b1023100bf8ab5712e666a0f502d1e8a97fd8cd3932f207cf5d7934259300df3b1e422959b4d3931234ef73e60e438784ccce5350302047c435bb500673065023100b1f2da9dbf9be97ef2b713a29a0818f8a6d8e7349fa24bcdf8a81cbec16a8c362a9a6a86741a93ede1057a2e3570fd8e023011ad8863029d2a98ae1f46c4964cead7ee7b4ecf2e8f9ec05343041edd8a5e49671b62cad12a17f80c7b69194dcb9fb40302047c435bb500663064023035e4ad59c40d1e085ee55c0d9d13d8d4406cbbba271484ac837e84de1ab39b1b4dd30ad249f5a98e8f949ab50cba2f6702304eaaf8390986d33465e018b5fa1283cb86134cbdd4d186fa116a76c19e6d00a477faf4d8030abe9de081e397db15898e0302047c435bb500683066023100ec1193f95200dacde10a50ba830a437f90901d65fb77b7e03fdc33f7dc3c57648bdf31dc37c4a47b7388a85c497cf21a023100aa2a0a1fd8e5aa0f94289b602467fbd8593e57181def4c488c580eab238296f3ce135b23872140eaf5bdbe45a37f395b0302047c435bb500673065023100acf6855c11f4a65fc83fe00e468c61506de17c71e65b1cf4428ef53492e0b68b1b157ecd98fa8e3d169063ff59512a2a023071409e572e537dac540141e662fd0b6dd567c8c8d05961b21d55710c5dbffdc05bb5e242b620d5e383af2fbb52b51ad30302047c435bb5006730650231008a7b7c97f537cc7d296db40b71bd8523191dabe1114331dadc6c6e175d8852af0ceb1375d2d9c404230bd2042f04ce8402301d6ba5c197c1dac5424f6cb805776cf7e6960ba684d8ca538135826de7232450dfc02ea3d7ca5563ccf822ce0c887a690302047c435bb5006730650231008532a9acb0a0f806c2afe62576d7402cb6cebe49243ba8f03fbbb647c7780a38e39f4c50dc7370177c9c88a6a68a7d72023014dd1b8bd5738bf50fbd312ce2bfec0855978d1d2c0883930e65c4412b9234f3393cde7f42a2c9fe6f3e23340a16b3fb0302047c435bb50066306402302827585361f2f62176b2851186db219d7501453fa5aa492f32762ea77e53d383c60ac67e2acb99421587afa8e40ca72c0230172e8bca531cb2855f9e841697d83c9acb2a69fd356d88eae969b1d95d126a19482f107fc23776384873665b4b4fc1230302047c435bb5006730650230487cf95376d746842700a3a047d1d6b34e3a62795679bbfc6851a97d967c2da9e7dd0822652204d97f9dcc7c52226c65023100aacd26ca2fc5e935ba0357017c20457d68332f6a1034b0865905c92f282611dbef0febc271286a8758297158d377f22f0302047c435bb500683066023100ad162b61435264bdc611874fdd3f947c38ad732f14adf3f1be9686d56b7d51a8652f4ad0fb568dc874b210fb9155e6cf023100c2a75c212c0307856222a76676ca5ed42b2c8adb83119051f26feb0706d3ceb8d91399883798bd41e24b33030f21ed910302047c435bb500663064023005d9cda2754b907ba7f031c9442abb553345e00c5e887e7eb74349095b429eec6886a1c654f1cf172635503570b29f130230756d47118e731a276e4c1d04f825a94876e3a979dab718eab123da98c281d488734f4d5b629b6122553f8af1f463b3e50302047c435bb500663064023072b9dc01b19f7e0847f2dc3b08918adbc23a942c5fb07039bfc6063a9740cba6197bcfffd4c68981035b49d5e21ef21a02307ff65308d33e145eccf60528cb758d882f220045d131dd4e0ea488f03e85ea936ee140d9e5ab7689720351158f698dc30302047c435bb500673065023033d719a208c0d039256614f90dc4426970b3f2afcc5afc46310f7a90fee944ee82c518586ff50403e7cfd45e641b11dc023100f4a3ce76917772388824d2aee191b99a3677a1be72367e3606ddbd1f89314ab75050d08c378aa89d3aaab228b2c53c8e0302047c435bb500683066023100feb84079bf81ea59bf403843d919e254793663298a470d138c2fb7a79df687dcbd7566d8a4f8ff350386d4a1819280e9023100dae4c294e7422d45860f064888750792f261731f04775356c1b36185f4d972a3d26b8e8cc3fceacbbc6f3f26a4accfd50302047c435bb500673065023004f48073efb9aaaa191802498765045d54dd7d464565862557a2542ad14561acf9e0ef4d5312f636711a7f4def0c34f2023100a754e64a693d2786fd63d31a21a1d47ee8a2f3e8714bf4f2ca83861da71d8142bf689e8e96cebe910dce25ef742f72100302047c435bb500673065023075cad2dc48910d399a16ac9e6b2cd706c424fe7251ce31b3599c51ac4e4b929658be68cdc2cc8e9e45fff5fa73386a71023100df595bee791b876b547bca363d6490b20881fbfcc2604508e8efa2fb9f38039646e6245ee87bc74dbde066d093ab6f190302047c435bb50066306402306a91075f8f7868c15e86d30360d50315801cc654f9257e37cb19ec9b7172445372baa32b0b76508701d05a60046cb0c602301b9d25cd19be0ee4fc9599367946568e02453bcb3a4c46eecb1859b7e1da578c566107a045da56217f60fb02abfced860302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304477a0cca25534678e33f0cd7bdb9b26b032dc9bde8143eb775cf37d75e5420e0a7bd3c5359a274073b3429e1053594c0231008b7d2ce7f92195dc11e65ce7efbc9bcfed489b4e1fd28df4a04367dd111b77fbacea30bba1c6b8152e20dbf519e859b90302047c435bb500673065023100a494a60c4eb8bf22571cad9b2beff7961c3792c6ca1b98f2c92547a0d275615522adc56ba631f253968aedec85f06b2502302730d2132903fb8b11160ffb3a310805c931dfea175b0798b5b2e443903669b2ed25fe3ad1a49b3ec4392b3b3851689f0302047c435bb5006830660231009b4568d8a69ba3ebbf733848714f7966ac067af58d59f392cf871f18a9974861e6c69c9e6525f4e8183f45471a795ce0023100a3d05620320b2a8076e9a3a39bb78cdfc113d0eb8fc596a3406c13217e313a29d9fc91885c21d216bb314d91387430ab0302047c435bb5006630640230250e4bd875c8ef91973a4d405440cb81f6c9f26e2cf75ff9bef39444f7db9dc7d262331e2c5a7f501b6283f4a082fc690230475e4cb2bebd19feebdc843cb6d6aa5dbbe8b445be642ac8718e983716106c24b60cd5c12c75953593046abf6d0049f80302047c435bb500683066023100988b7f8335f32c56be9914d499dd62ca764b91b7dc5b88616d4419887d8b01f65fec5a4ab7c922bfc4018fa8bffe3be0023100c3025be67da3fd31e54a2f63ab9e2ad8e942eba11acdd4d06d5913ce87533cf595c683a2a06f671251744955bf8c62f20302047c435bb500663064023004b441899e79d777db75974bb4fd160b505f5f1d07e4a0ffeaa73042d781b786a88e40e416f46abe25b14b7440863e5a02303e11a54afe3601462d60750f39793a1f5aecbc173b3d61084a7b4716fbf9bcbae76489d1b813e1c79f852f3c93cdd0fd0302047c435bb5006730650230390b3b1cf0ee74a86a7474578f2a05eed576eb41167320a8778d11f9acfeb57ae8bea2ed17d876b945eeb97aded00f54023100a2abf654346049ba680cc3de7e8ea81aa1aa60001badef18f46f80c3eb314de452560ccff585184677267d284f8787080302047c435bb500663064023066d7867cff3c81e5dbc96640b2d04d9dd870821a445c9319dafa408e4c52f9b46df374efe34233e1a81b2a78031460cb0230272789eaa30d6d536aff2d0041b90ee3eddcd452686bc6979f31dc326919606ab970cd1410fa00f1fb3f2848742d47d80302047c435bb500683066023100ccc0b3ba3fff2291b3754229aed4b79e28931f8b5e782551a52915e382459cf0ccc68f839bc5521f9cf41c315dd2e8be023100e8265466ecca1de4340289339969d032969949d3518610fb4459295477c9f2f2d84b5a9378ef0a70b66e448eb44cfa3d0302047c435bb5006730650230718eecfa064463203cb10254157570483422f0ae9303fda1f122c9c9dd8dfd9ce7a988d81ac64846e186b954f098cbab023100937fa46b158f023b649a84f2c54cbde5f9d8757d7f70c32c3df0d566f21739136f7d5c9e5c781330cdccfce3b2638cd70302047c435bb500673065023100fad64c65c8372f29e7c265b99b1199e3778ef079435dd7034f89ab9368502c9c7c1b7de8b5b35109f87070483ddc3228023015438fb7706dfb4cb9fe3b85c2308c4f1b96531ea5d1395b5b60ba419cc5d563b51e4d86144fdd357457e8cc20bce62a0302047c435bb5006730650230532a9fcf6078da785630e7a3c517b9a816d650e1afc597b17a1856d38ae7fd5385230b05e2e8f34fc33b11ac41aca340023100cb6862d28510403640ebe335c90f7d80c616c609525f62f8da7ee7ed48a1167034193f3cf299f921a25c4a4788943b640302047c435bb50067306502305dcb263bfe9492fe91866456e6f3592975b826416da9ffe596c7d16f552222d078928ed77691c565c2a216af76062ea7023100d4a68552b3532e9abc272fb62c195774cf91583bb26e973593d2430b3a26f46fdbe9692997cdc1aafba6d6dd36600e750302047c435bb500683066023100deed5ef259cf6acaddf3344fc6531ab1bbbc6a37606d8c59ea6e209a67c620c3095dec0def3408420ac6605c87487174023100dbb9e78f3086df369b046e7ccbc6b9b332eb72c9a978c6206fc2e52af03e18f439ac65de78d595ccbb0b22af992c79f00302047c435bb500673065023100907f84903ee5ec7830d95dff748138ea4f3b2122dc1b2474f8961f0c47bbc4c19170d89cc7aec5d5d55819b797dadb0a023037f6c90208bc5f2d2cc94ab287635ffa25bde5cc3dc578ddfb76feb5c7148ca335677bf8cc2db49046a7fb3ca4b60d260302047c435bb50066306402300a12cf2d45d389178e14c40b4ce8833fd829e19326a78bc57c0e2f137fd42bd7066b77cd7bfaebe359cb9f0e8177974c023058826245abd30ff6d5c92b264b676202c25f8b549b8e35a4a5f91a40f4476b7c245b4561e7459922d2cf7dd1ec0503090302047c435bb500673065023073c68c28298c4f2d9a524a0491d8d6a5a178f04a95642b76725077e59ed1199c1ee74347dc72376dfdcf31d51df92460023100b4673cd62439eec8c66d62ebbd47fb6b4e143c96016f5df33fa2108f5d902610d39a98b6f9142aa00a2c4d39ba669b8b0302047c435bb500663064023055cbfcc65d37624c82f40c10c6c9f901554d24a8b84e2bab81ee8f28c5d354c7c1a29208cb816238f0dc2c0ec10be49202302341f1e9b784d4e0bee25fc058c308f7ee5c4a92d0c060f8442422bc286bb7809059d6a847db86c8f253ef0b724bdb000302047c435bb500683066023100ecec1446da3ecf5c1e12ab7a94afc9508c45648097eac8e9f39bfaa06d7a172f001f4a2fd93693d216082735df392473023100e22e8a41a47045a9ac5c751c26b14b9903daccdf798dc72db71c50ff1db70934afb745030e8412dd7fd6c0eceb8e8e060302047c435bb50067306502304c56e7cdfdba77317e85e71f9c730484c0b6cd5fdad1f9b5d5ae7f9320717187a07ff3778b014bdbef245a63b59b2433023100dbc74225609dbc6a63e7c09116fa8341465f3db98ce3b4f8fe9862db0e57d195cf1f45e9dda5d103a2576c23beb5ca800302047c435bb500673065023100e1b646346f78912f50d4d8041176a269dd0d095540cfa6427f0ac90eb71a13b9a05c1067eed09134e1ee98a48f0ee7790230620ebcf549aa620dc5bc73c19532b4ed14cf8b578b209ce14ee0345154141d451617d5a07fff578f447e3003e1e5d54a0302047c435bb5006630640230195230568122faf0d0ebceccec07e53da4f750ea291e776bd66c5041964c62cfe68342e6961973c494385bfe3cde090502306e03f6ca261c6962d8acc9c50233f835341ba3669dc9f33d54d798c1cce711a02eb381760fa49f3361796c2d1fdc13f80302047c435bb500683066023100ed6acb8ffd05cb5c7c0b57c1085ff7d75f696df229d2b58087e0575eebdd6511cf96642f7eddb87fd9d121b9ffc6cdc8023100e9bbe8a9d35db28d3d890bb563291d643a14497f47a8d60e1b12944b9ecfcf727f5587ff5d86e040ac78ba75fad2627f0302047c435bb50066306402307310858be1ea9c7e5dbb9c61c25cbedbd2c1044db820c60870442b86ce474fd3f76d94f6478b7975f2d1073ea8f2121b023015af1cfc380cdf9af1c1d0396fa2d521330fe4486eb7b98f5037182bab29126d90270a7c01ff342715ade466b70551f50302047c435bb50067306502304ee80e08013d148f8067b15df0db9ffd69b7d0e19438b81daa9b11a9d066d84c468e3ef722bbd15bda98d5f4c37e38d60231009b4ec6c7c792d0b5a6136727f6eb91bec1677fb134c653eb3e468cb6c3ced0ec2dfb397e43bae3e4801b8111cec16b220302047c435bb50066306402301b8bb9a9eaff96a076ae667890ec09a8871721d3142c2e62a5dcdcfd54d4ad586ac83ec097f9c7a0d3266c2b485592d9023015357b6f3613e60b9ede4d5c6ba2c74388e5018e6bbcfaa23b6b7486336f44e949a26e43b177e4864da80b3e6862f9b40302047c435bb50066306402307decd51ab5e48a46bcbebdafaf20d6c6dbcb232b463a7ecf288abcbab2fb013fcc93997fc7ee8a31ac5068abf1c74bca02301ac1daa0960d09c1f362734d9ea803f26f9200983efff4a6c1b8fe2b97ab615874d937387d1652eb9b8e44aef8c9f6240302047c435bb500683066023100b4b75305e67d0c8662a2f6c00916aa0a354c2e35f4a2a84418d42325cefd1204f6fbb74dc8fb4526cf801f949d8ff745023100bd77aa2a9433601e0ad1c8227aba3017435e9158c974cb415270118b1a031a71f1f109b59824bb1c0a6702da8b6a12280302047c435bb500673065023100d326a53cdaeea488b502b46821a659c2a1872aa1ca637a48fd4edf727b5de8cb3c7076d7df0cd87b9ea64b2bf3e2e16c023025b6cc79b8046cdb062b882b64e987e4be2a965e11227980727f21b6f2b75ff8563eabe4c753b6de020acbb3c3535fca0302047c435bb50067306502307b2fc2eeb183c5236f25dfc1e50f10555b0c63cfbab843e1a6abb3f12b43b4a05af50af306358452ce55c54fe18afe4e023100b6d073aad4df0cdeb6af651ce3b4a7344884f19336fe810ae6bf221751add1a09fb47cb2f32cd0fb13963f9327c541460302047c435bb500673065023100f75b2ceecaa40b2a12d436b6072e67e68e83dfa44f8796903997e613eefffa178ba2a890fbe58d1245a92e6affad9e55023013235a37ac26a6b39ff283bd56f1b9cc937696a9915532aba3a1cd5dc6120c7f2def3695ae4e06004e69b48f3c4924ab0302047c435bb500673065023056bdaecf9becd6b3a2428896a8ce5d738b77afdf622d79e64620e9696da7b092d2dafbf879cec23408d55de44adb65da02310099b58b9560afbba26edd11593717e3876b14278dbf60317238e026c3341d5941799f2990cf818f2df6e12a16e13f916b0302047c435bb500683066023100daaa601771df4da2f5e7e26dd74417be091cd3a196ac8d202a56dc34debb26e558f6223c2f422bd88a92754a1e71cc1b023100d2fa3613227df0ad59a1840722f7811169e3afd19fac4e52fff318ff6abcf2970025adeb4b65756050c6ef4334b022080302047c435bb50066306402307dec77ed36d8155e799885777938978f3e6777cfed3f107c6af4759d9e604dc6db272ede7fc6dc2f9926a68c53b016c302302702f6082dd658c9f279c6d0ce01d06e4942aaaaa39834b0f64b022810a472222b4bbb1bcc99b2b4cc123a5232237e6f0302047c435bb500683066023100ce701ac5a2ed3dcf60b5c6b5a5f4b48514cc62a5f6518f3d4b4ef51718c5894f99efd2168f6163d7565d6a196ac1ce040231008b82e5f054873492d9f6f715f3922dfb89d7f26fb2f7050b6523984872163280242db94bd65d6056a9cd5ae7cbd163770302047c435bb50066306402301c0695b59c712ea9e49db0327b162a10f7e3002eeab8c277897d1168aceabe2257a1bfea5ae51629179075bbdebc06580230331418576a0db0c4fca4ea95dbf12c22cbfa921d510b3f847ab466154e5152b53f6240b61414b4203532cf36e8ae185e0302047c435bb50067306502300b27f3d86586e47ab693e9f5ee5f24f8d98f1403aa590babcedfc75f1ba03a51765df023a4ca0746b47c651330de41ad023100ccaa030cb5880d9d9331c454e11a18ad6c3fe9359d3596ad699a29cb7084350e1b7ac0d0d41498234c297271af417b500302047c435bb500683066023100e63dd1eba072caf0be86ed1eeceea5c89591da790d5f9b71c1d78bb440eb85e44e140052ba088cbd66d389dab830d328023100f39b1abc5db93d84e9c65ac29b6171a04c90b7b5fdfdb19eb60817aa55a2ab605dfcb05f2a140186182c9112df370b770302047c435bb500673065023029eb110233e2ec42c16792423f89bbab6c891cd0fd69eb5de05b097220fa276371822b86d3f47c29428548cf6f1a32de023100b29ff091afa895f95f106bea3e5b25df5470e2a8b17d2cede621b3869ab6d3f204bc09dcacd3459d868041eb7c95c7f00302047c435bb50067306502302848412ba968e16afda26942dad04fb6cf25e16eb8e6c0877c4855518da7ad77b73214212f7b34656786fba0efb2628d023100d9af920a613430e4f07934e674c75d271fde5f3dede31495ddc57954a7801d6132474075cbbc9530d0bae8e8b6a57ab10302047c435bb500683066023100d05aa7ea01bc29f01b941e478441bed1597bcea07bb191a690460e8d25518a5edc85b784ab7339f8af35f8fd1f970c2d0231009273b9e32a47566dd9dee1b135d39588e2d39255fdb707c63c8775ba406c0b26d4c8b057fdf24ca19a6c6f9b23ace3970302047c435bb500683066023100bd5dab41bdbdde739b34ceaf302a9861cf6b198729d1ca5c28ab723fbd65f30cc4d77c618cc95226ae099e376d9c256c023100c59fdc7f2f724b247271dcc9eab78e615ae7e3ec6096034370f58de94c623c8211ad8641b2bafbd9be4fe87f023747b70302047c435bb500683066023100ecc82634fe1a5347c415d14b61903fd2df618e343ebdc57ef983be234d7c5422ffd1808884eeca567ac9958f1de830f3023100cc710bd4c374c50c19e2211918af9e71efb2f4ac48b565308c6e8516dfcd97b5575c183078345b5a2fb6ffdd6b3e9b360302047c435bb50068306602310084cf5f2ba171cef9d9cca303dfdd6dd225225b7a9f1aa36de46daf39b328a40c237ecad80e03954bfbf563a6cdfe571a023100b1539451b84eb0b3412f241297be95257e134c3b2043a84e363b5459d74beecdb2d6c7694c9ddef571b00fab77570f2f0302047c435bb50067306502307c55dad633b7334c41cd030473d00f3356cc890ac6692192ee50547fc9a0185ec2e15f18ff60be91369eb537df1b5304023100cabef20d54f8ae6ad2e7f49f15bdf7ba4b1839831f82f77542d272f972418885264665fdaceeba1f6fb7fff33aa614e80302047c435bb5006630640230207120054627810f7b88ff79eeff73136fb6c8ffecd5e6fac0b03c8c74dc81fa08a5508461be3727caf10493de52c82202302a9125c968f9c99caa3b0a78bb2867948de60d23ba3956087b76daebadb32ab34f508a7de1dd9c9f371f847143dc7fc20302047c435bb50066306402305adb82be3d19f1cfe45db10f4417a815b5b8c93b247782e766b75ba3ae9b5e62c90281665429cd63823cd76044c96f280230273cbf6630180fbbcee82e30215275141a11e5c6859cdb02996b45573326fdd1bc8373cfcbed8395e4180b0abefea5cd0302047c435bb500673065023100d9dc158d3e81e8c39fe3778cc0fd75a0ef52ef7a88e7134222e958d7a59602d7460eef0f71c530c81067c551abfd516802301368a17b0d8244c94e1039258a323cc7c18a03f709fee42847552bbd55664ac56857827e9c968ae490dc468cee5c1de60302047c435bb500673065023100fd1bb81bb1113dc63fcd5c5becc5dcd50df9cb5fdd297c4d5fa70cd93998a8c588fa67843fa9b7848f9d6dfe9c6e785802302088646beb19a76fec7dc24ac0abc1a1aa9bcadec3e860bb194c8c6db9041a954b21214b6b8303827436cba05dea62ab0302047c435bb500673065023100e6f75ee401ebf61a79eec97cbd7d773159d61ec86079aa47e6532b7cffc3ef32a361eca1b8b38b0910d68f15b602c1e40230790a601be466d06e69f4db2fa306ef8095e8fc94361d14bb5715222575aa475a8aa750207e66142466559200ab94391b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301da9f6458771370352173bf1396b12adec4113c189026abc9ffeee3232f75b4fab16452cbfa714ffc0c56f52c2f6cec602302ea3bcf66c2d55a48e50fbe0222327fda7ca829b8223363809cf2cce6e1f4118d3f2bb02487d26308e05e9fa9e784ad60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306ad89da169b540f4b82500cd8ecf8a9194268f70645bbd060aeee18452cea2ffae10f141279f7a379a7a239aba1f45620231008e0260fa934cd0347b8b62a82243abe3f6c26ddac248a15decc0ecaffce6998c67828e7bad29f564c5ea0641b23dd9f70302047c435bb50067306502310093130f5abe779d5410ff3d1eff8ac11dce95225ba8b4dd808b80ad66f31bff3ba0151bc142270a8d60bcb84d3ec04be10230796b7bb639be3ba292fd7d975c711c9aae0fe85fcacf0b230fa85ddf2d1519be6f8ec57406839e3140dc24ac8d3a00b10302047c435bb500673065023100b506f8be98b664d4e9965777a2ac042039fd9a92f632be51f8614982ac8246903088e3ef6bfa37a357bd6da04cd37f29023041919071f20b8fa56f2495a6749cf0b8e99700d4e113fb5ff6d9e0e0d0121187c3e969e0e944f146a4c193ff22443fa80302047c435bb50068306602310093cae83d57fc44b0cdb165fb162b89e520e6ca122ea37c0603b73a2925f13ac5e225409f4f3fc8404b8d28379d347012023100b08af9b7a6311450881068e9deba415f5fad7f3b47aad77afd901483fd2e251a2d9140c178a89abaced433dce3ca17c00302047c435bb500683066023100a0a4210c6cd3ee0795aeb150f31e1d9d40d86223da638e2f5533f64108e0ea2839796dac824588b19c3fe79aecfffc6a023100b14e2f84caa27e04c5f85ea62b569acdceba50892efc1cedc456469e46d8bdeb538013bea05a1c05ab924d61567f2db30302047c435bb500673065023054a8d103f253a77e351f11a94cb54d1e275e79b0d527301f58881f9c133c1e6b462259979f470f9c1ace354c69c4720c0231008ba5b48df16ae0c02d7e9a89ad1d939f77dfc2d2b24d970397eac513945bb39287231482e7dd45cb9788a5ea17fb280f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f27078afe2fe8cc8c306bdd2b89ccff8b57cb916346cae8586d9b7a5b005e87452cc90d01b95ed162018d3fa148cf70002304897e0a43b2d2b5fc46ad15acd080805472ce3111607b70c5402598510bd64cc4254f0baa4d307847c0653720e4c311b0302047c435bb500673065023100d5c022f3901a58abd42a32d6961c53684b3fe2667138186c766b7a3fcdd33aa911331531d26de94d8f74cc5f7c5e08cd0230188983fd888650f133daed6539a554d112da732d82accadaf95482a7afe0ec7a133bf4d070902d71a873728d77743e970302047c435bb50066306402301047ba4bb752ae2046671d7abf76c73a4b61022888479778c3c267a88b57e684d63b58c618eb4ed74c777a124e94f75102303567f7c2c7488ee74db29f16822d78139cac37d0bcd4951d3ad24ad9e231f8c9126f3ea3f6dc1c3406f3f07b5e69a5160302047c435bb500683066023100aa2ec7ede6f1aeef329d8f18d9004a8ac6c3f25011c0141e70d4a5481dfacccd8e4b8a590a08a1f22a90825091326190023100c2a81b9bab2bb5f3a409cc34261b12b7c4d7f97c66c4e5395a322a94c4657d5f40da7849fe36d0e18146103d0c922e210302047c435bb500663064023058c36cceecb3ada42465826f740f8f5f98a6e88fac293ab7e3e1a12659a445851823590c7eadd2016a7aceee69cbd4c8023035d3d07187368f65c82fe885b37c29137769e95a68dd081826aa495bacf120ef724b7b7a98bdfcb090734a1f7f1fe7090302047c435bb50067306502303ee4697bf63054361624ca3c0e0af8294c272b50e3c097edd676dd0783004475956afd5b5cdfb2a1845f4e25461f2d0f023100d4de4522b6d0cf9b7543f17291bf70c80aa2d22b9ea98a581749f507cb79c17ae73df7ca1f042b0f80986d94f6b4b3290302047c435bb500683066023100a9657723c1bbdf37c3e77dbd32384f35dcda75a6046c9afcd411e852cf7e3b84618851aaa1624418c40ab408cb8b149a023100dd4f3dc3e8f20a1d688ea47815ebd99ba314f16bedeb37c90ae81767ded38f46103e3381f2a2f363f429bc5314ebed0b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303849a3fa8bd4b1bed2100ecc818ca1f148fbf5727efab766554463d9459883b706caa8f1e43cf82ed76fc09cff764357023100c917b97197ff00ee78b1695e273657937f693dc787d7e99c9ca6c354a4aaf3381cace8112bfb2e05bd0cf3b64596c4070302047c435bb5006630640230220627a595c004e9aaf09b98391726aead62c3d4315728b228a4826461635596569bd35f4799c8e9de32d20ca5d6067f023038847c1a821d5cf3a27c3b31faecf5490dda102dc31e5d3c02bd2d633bc3cfa3d53df5236a8567029b38a76789168c820302047c435bb500673065023100cc8de8f6ef996c92303c2672c944deeffdc72e705551bb6ab9ed2f04af25a0fb8e6984a9c23e0e96e1ddbca6df5644a8023026aa538e081b706694b257f0e63d62d5f2b82bcc20431d2c49cd39d24c9046a04ef67ce6da446d09732226a63a9813c20302047c435bb500673065023100d15a88736c60ff6a97e972a23dcee4bea719f321887978e907ae7cc56d3b782e951aa404976f1c6b06dd9170e46dbd0302300569f81df52fb487286ee3219434d22aa40c6098e8cb6d050ff4ff91c7581a41ed3e24db6d17c3e5fd95759f742e5dd20302047c435bb500683066023100d6aabb0a7724e3864a8654753d303942e6225b24fdba225019d547a39e96ed7f17c942c2fb8c2caccf2e2eb199e87c83023100a7e79115e2f1b99b71004a230b2d52ccf85d592a2e8b69fe4ad35b8c5658b7b83976075d7b963854fbd5f2feb9543e1c0302047c435bb500683066023100d89367104d7cfdcef6d48b609f8b0c93e31d9b0d2f00598a190882a2864263cc31f33b587ed081e75f8c148cc9d3dd6b023100873b3221c0a137c652012f9c6a8533d08b5e1b4bb41cde26d124ff54a339979f2069262026049e5e24a0e6c1ea6354f70302047c435bb500673065023064ac2e7ccb84d00a16a5591a467a0b812c67073c201bb07fc30c9b085b900dbc78bdac05d890934df14c25b67835dfcb023100d3dcb157ce5c82945cef676d0a9d38e1be35dc69a7f4e3f288758d249f4de6bdad0c4a8431fee930c6bcbc8521b75f070302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023049bec9f925897344cdd86a64f0ce32e3eeaa4653d86821b5d360c47576bbfdf2dc4f5d1b1153c33bf7068c7cdaf25e07023100de53ed60a0f498a589aff95cbcb900a52ed5be94b5bc0b022c76612c084f2d026194716ab18bb591140aaab022395a850302047c435bb500683066023100ce1e0a62457b4fb54febfa363ab8f7e6e4aa2aecb0e8a364c41d112d1ffd499a4748c4c05f5a6563321135f15c9246f9023100d02901e43701ae8ab343818ecc4c8f515c8e6d202f92f6661e58d8add5492cee276f7f05f3f1ed1746bffcdec809ce610302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f78987558412b7aa084767ad46e36489d6cf1876e957f6d0d7c00643430a13fddd1556ec8dfe8f09cc1f60b65c372544023042b6fc36dd323cdef5f28a9a845b2cc1d26b11c9b9f05c5ed7fae44820bcbc4451abe72624a31276b860aabba05d80aa0302047c435bb50067306502302cb2ad1980858974c01bc048c10abbe7629e1c4d464e5bba17408e57d2a116702a488c8aa93879ba1fa86223d0316301023100c8fda92bc5086e9c48b952efc08b9cb032e0ec044ae8f278f2341d78c24235afbf913f315f5563a321e481ee8edf296e0302047c435bb50066306402304351166816df83300262d4ef6598a425b6ce5907ca07305049a68e41bdf4c3164683621beb05edb6f5d0a482d3d4f08902301307005d9f26f28d6ec9ba78a0c4d3b62fe704deb23515358403f4e32f3a8bce1610ef796f510eb4e4a001d0cdb493710302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f9e27cb571678a7213442c855e1d51ba3798ecfe090ea91269d9ce954037433a693eb1ac87900a064d896e8f69db8a25023100b83fcc4e9108eed62dd365233cb7f0c11008d81db58815be519f42692f005a30ce3c2d95e669d55a550faaebde640a160302047c435bb50066306402306de66c7b3854fa1a69e9bf5023aff69589a7463fc225e881805030518e6426ddbdb9e1e468a0a61d8bd1d88af307a6ea023029975cd2bd45666ad4c7ba173c4d38a89355d0fc8fa1cb413bf97d53b143e49cdea73ded7e92c0f7185a817e42dd74440302047c435bb50067306502310088c39aff44be0c6d03e6f0b2a4ed89a9b72196fcc59c59bf863d1caacd29bf78ca488769bc9c1e59268ba472d6241b1a02307a601c481e5ae53e01d6c258d82d4d025f68e2f3d69a9f9737f801eb0fe1db205706757c9844dd73bc9713e1b93356060302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301c20e043d5ef37b4d7fc52d6d569a6ec4c561fc6e0795f0fff26400c900663d74c85f783361371a80585c689fef8789d023100a0bce19c34f81bc06f998e33772f754a520ce2a5613ba2a5e8a7785da1e5e5e5f69625d886eefd134f1e03d21b394e360302047c435bb500673065023100be3c922defbd530b8ea082946b787edae22c69041ca47a434b9c3fe7f7b0495ce52145b92246f0524a55554f9141759102301ea7af5e63fea67068acce43743e7ee0edeed627053506844ee8213aa20688f96867c89f502c60f15e7fc6214eae40690302047c435bb50067306502310086ed8d9665c431bcac7ed2fcacf2c0abcb1be529cc0dc65bc9109acaa44d0eedd5294df6c157165f0711fcec3117b6530230198d4d6dec7fbc9a741932086eb46257ad55e486952abecd72223d142fea1ff1691acccba04ddcdcea6972fe59022c970302047c435bb5006730650231008d1d64073aaa1629e1a36e66253f623bdbb792c18c3a33f45f148e32ee7a5926d600bbba5b05ff4ab445dd7c8179feba02306d7bcd1bb64f95e9c29111b7485cc405ae6ae6be948435b2ede8a414db611459c7136f17fa0026828b3390b4547498de0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b87a5ce1d3bdf39482cd39e74629f6e6a7ab2b2f286757b187742290a683f6ccb0c7d44c9c8ab77c59d641442aaf71a102306a29d2dcafdbbad54c25d579d808e419265aa1064ee54e5ca0623f4e523be81f1c32b66c5d26d829ff34c0d82aaf5d6c0302047c435bb50066306402304a4124e8c52d0240941b32c9258e7fa19db5cd27eda71af72cff0791166a601a066c6910e0724fcad29fd4ffb582a1b10230791ce59c6c5ea652bdbdf3a7df5df41b2c71584e6a912f0b5db422d312f8c4dc45280c73ab50e67d881667c30901e81e0302047c435bb50066306402305925352fe0880301021ab72e123085b4f18a8393c11490e2bf03acbddaecd8e2c000b96d758dec22e03cd02827a8529702305e7331b60b57a33be04953855bf7f7356a629aa3ebc554331416296de469fe2b88429464c9b8948b5aede134629c15830302047c435bb500673065023100da52f64b75d3b7656a9135ad90ed394f5d52a4169179a07b9d0c8400def33f6196525ba4551e5d34bde578bc4e3d3c0502300f9a36c17a7d0de0f1f5e554e0803a02cd99668a0eb942070b9f3587002085da733148a6d42358893bed19791c92162d0302047c435bb50067306502306f17f6f2843164f9c03dcef4d57882304fd9fa391889f766894e6321fd453174244d2f54eaf9364e1314cff32061f7400231009cc0b325ab83d29d8a7b2c0a1a59e5a54593a8e6886ac03c07bfbe0741936b1ddc8731f1fa192742d283d3559aa83ab80302047c435bb500673065023100b3ce85dea159c0724e83342c8cc0efadeda9968e0bbdc1616a5371aaaa14c2f495930b07a7aedd59c88b2885948ac75402302e0e3277bd87655d3379fd1860c8be057f6fdb232e38b85c771514942668f254e70438d9864b4e0730de9ffe0dcb897f0302047c435bb500673065023100aa3d8e1658d1fa191aea6f14c172c95b6fa8a52a1cfa2501154ec4e08c7ef52a03de0676b26e9ed52c241d645a22990c023026b95d5528374fe14f7ce79bdc3a3870bfe65e0630d59e1184c2639dcb4f983c41b06f0566c3ae74177f8f9b86b10e5b0302047c435bb500673065023100c731b8037c915e4d3f62928557b8170790638deecb64d0d05bc5dea0a8977b192c6799bf25fe0c00573bea3392be248d02307ebe267e3369d2ddd7d3b41dcc299286bb8a7f06373eccdfce097e6e086dc78632d1fe5ba5d7faf40bfff8f629b4d5550302047c435bb500673065023100d18fba16c367924b4595e654970b81f8d764837717cfa3469cb912004a7678207c949e77fcc7c8ee611d9029dd656a52023033412971b4738a0bf5a3b91813aeb96d2b1b125bf69c12f0a33391aef5c72024b7a1dd5c33d4b97f35522c0be691cbe70302047c435bb500673065023002d57dcc96a5feac1d7410e8a04af3745c515a70a9005b1be08cdfff433bc48b04903b28dda330ce0d0619739a2e2bed0231008cb6d9f624981f3870746fd0a8838fe426df80d0260c51e01476450c8a7858e901319b6f7ad1125ba8c5056b66344d8e0302047c435bb500673065023100ab931168dbd84c79907debe3d6c80e66791ae770c68a255e092e70c658950f0325373c8358b24fc374d438ccb5e782f4023038432a4278072759a91e8e96309137cee9f5c1ffc0f9922612a9199c592496defe59e7e84ffbabd2c39e34b563c179a00302047c435bb500683066023100ea2af5750a12d3efa62d721048a461029c63627a3b082457fc661644d96b91bf9f557faf58b9c0a7926cdbde5ed9b436023100f298306f9f07b102c17713d926c27ee5bffdb49124da8fe6423454e2dc6c924c6b4bf35d2aecbff0bb217eb49a4698ed0302047c435bb50067306502306ae3fb001ea7bfb93a8e6f761ec309053e33a56014cccc0c2655ef68c1f5eb71b3b819fb7b90f99ad4466e0035ee93ee02310098b6650cecc09c04d1ee4803e4c1967f4e73fa7270dc9e3025f89537025ef143afbed50cf3677128fb46d3321716494f0302047c435bb50067306502301578a491e632a057df3faab5e8b7b423efc3f6c2b70799318f7302503f7bbe488dee6598f80a277a52720ae27390796b023100ed4062de393aa193b817c7c2eaed89cf6956c8c4f6bcc11eb7656f84779d1a878433f59cfe7edb3d4c738c3aa4299edb0302047c435bb500683066023100b54cdf24aaec5b2602d04344d004e743a02fc3d8b2ef339c2ef3efc2524530542157108c94d677c43c8dfe58ff495344023100eaddaa64235f7dd0ddba925d00a47395eadbca4a8b5ea567dc1f9d645476b66112d21555fb2724cd1fc1725b656b40770302047c435bb500663064023033eeadb11e104b508cea5db5c5bfde3b8ba90eaef17e462dee9ef45a917c8bd0b3a09f62312677c57e03f891123f1e47023057e4170eb0955164036c40de7a59b8c91361181abeca3a0dc266737ffbce62393741780e4a5f857748b65674b300299e0302047c435bb50067306502303b700c06fafe04dca7285853e668d9d81e09960c187085401587e4c5a865d2565c8752e938e60da9936f34ec888687c702310085daae0dad8ab5aa7e1fec611ea93043cd14953487fab3ef60fa4fd9e131ece368d5fc952c2bae923e757211278defe90302047c435bb5006730650231009c1f07272f18f5d50c14908c04a94b466df8c6d38407fb5e4bbaef41eec76e254d014808ad888436be1958eda3fbb78302300f1dcf6af58c701beb286d1d7b95e55a1d57245aa4151bdbe6bc66971c647785719b6c2cc1e7d9fd8ead1647103f41530302047c435bb500673065023051382ba31b7efe26aa00661b5dc00b8a058cf7088db9ef9c466ff94eb6b5dbe837b75c48f8ac1a4baebb8a3e07663d5b023100e8d3a8a2f17e7072bfdab25befd4791f6092e7ca0ca8f1d90d385b7ec2315a12d63ce56385609fcb002920c8421a7b560302047c435bb5006630640230099f74fe8624db7eb740f9a49df23550965772a4d88b3b084f01eec7993e3dc8103b1400c80dee5571dac0668750491602306f6c7b36a86ac5aedc9e57626771ea02c19ff87aefa19a40fada22cc8e13bc9f884ab42f9c8e9187d5047ceffb25db810302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ff50115bce4ee86fd68442732c55d2948adba8c3e1ab1de1805f87aa161665c436fa6dc01bf0ce9318aa9ad16e75bcaf023100d5dbec24dc8a1f300c90cff796112e24063dc6269d95ca0e5989a749248e1542947a31e82fed0b902372c1ceca506d600302047c435bb50067306502304a501ff10b67f2d2145f824e6e63b06f272eaf6e885df358535b849c47a1b81908c6103919c2037a90230378b5e07270023100e474a9bb72a6d08951bddf34ab2f09d963d42a4203b2917f338c2c26938762a9207194fe2a13c0b530732ae145a398250302047c435bb500673065023100dd28ab8e62fd1d214db93f30a951e5c669af44627a858220db7c1dab3f23ae8c6c3e4a8c8cdda4348445890221ad2a5e02301499ec309b012c0bca7892a2ee3cde5de236b5d443280da5c8cecea53b038108487acd8fecd3597dbe548f324dbf41690302047c435bb50066306402302a217df5096212cc1b7ab7b55c81320da5eadf344e4000363a4acb2207ad2fe644c66798f14958adcb23b59c6d483d9302306dd42b4abdab988ae4a600eb39b222f30270ae78963ff14af90bfd1f0c8f5f5a78f96503f1a59d610559dee7c327af830302047c435bb500683066023100a629dbc87e5332fc294bcfd6f4bf1f4fb6eb6db61c0cdcf8e823339ba2b979a67a2e1167581dd25cf8f814ef06b6ceec023100d3d8ec3a236cec94e480acf7b6c3220a1f23991c21a5fe5e8fd1e71247053b18be1f4c45f71d8fc195a47a7975d1c81d0302047c435bb500683066023100c1f026495e960bc4654312a215abc4daef6ed4d5fd03640fbaf106e23979704099d9b24eb282af4d52e955c307ffdfe9023100c3ef932a98635ff800505bfed089d0f117a75f11e571a397a85586c1884e60809e29474df7d80b0aed3e0f4ac8d11c370302047c435bb5006730650231008abcd348ea370ac503ad2a5161e85fd6c974fe389eed524fcadd58b5b093155e5ac289b27f2487bb83d57e1b62f50911023013428b6c490e458c7f0bb5ef8f1e077834a25bd6c011a015b94abd90a8d8274749c10017bf29e79230a53bd187552ed50302047c435bb500683066023100e178e627642efafc600b4cf197d521667334bdfc19bfd24e894bd77bfe8ace2ddfa99baca3973efa045181ebfe062acb023100837c44bcbdd0aff37a3fe6ccba3f3c60b2cee8ba971fab8887d4dd28b1ede4b29f8dae94309948837bf03afedb3d10f00302047c435bb500683066023100a263983fa5ef53c21fd0c1c46056335435493b90ef9621f6673b9db400e173e21cc2b16bd72ef2ad1e48d3aa57e4beab023100964e7e121b62db45f34c66f90803cdc35373af645b70134a4a6627c3fe166e9893560e2f38864724493e64559d99471e0302047c435bb50067306502304717d5dd2a05937662ef6162a562d288585c36ade71819b8329bbbdeda416f11e74d55b348e6312d2ab7b8be5132d856023100ab87f08960fc0498c17e9e6f0af0a224e94c88acbb851697b5f1d997a1f74492f9012e0498944581f94dc72b6e3238bb0302047c435bb500683066023100860d4d023e4708f10d7c2726cd52f6dafb1ad1c17eae8b4d1fde630ef4a35fb71d942bfd9a18ff4cc168241576091805023100e96b41933d5e9ffbeea00e0e199b94d48a048886911e27c3b830f2774fc69d65e1d4d9f08e6d70b6b4db9da5c575409f0302047c435bb500673065023100936823d4d2f9bbd7ed96c8d18639f3f03e2e1f19403754440ed4a73b616c6f6210c604a233408f568a210f71537332b802305d546b8384551a11d829453492f7aa42b94948c01d0ee5acb94b21aad2b748842839840f8c3b160a9d08278d44a5227a0302047c435bb50067306502306e429006f72fa84407cd676f7a7423663d9a27f99277da4ae881c52156e3282568b28b47889821da8d4d609af4b4761e023100986d3e20ec365c8d9f6749c01bfc3eecb288e07c0e7dc1d7cf0d59564ac24a8603973a2d4f913a29175a3a58e4aea6460302047c435bb5006630640230316e4a960fc779889aba4ec027b47702cc21afce479eb39395659cf19cf915ae7154d5674725fda553a1d22f6421c3d9023040f286fd6a167a6f071202b1ebbd773aade9fe0dc1561ae96aa8e227e17208435bd5be5a15237a32055fd45772132cc50302047c435bb50067306502301d8c747860b8b897e420d0184485a621fa33167c87ff0046bd1b7570457d9add476fcee789a7ff6feb47ef1add21a85f023100a0960e8e05bfa94d6e02d089c37c0f85aab5d89695cf6cdc96c6536048fdc960bf020caf9539ebba2fdf8ef64fa7358a0302047c435bb50068306602310080fdd27939d14affdecd48536cdc47d2387a3467330abe18ed9fb39aed401feb890bb81987354c5d346c676111e366f502310099a142f42b937d2cb7e03589b6a1e91756efd9ac9a48822151882001d2280f2c32a7204f38cc24bc45c7a4d30db3d36b0302047c435bb500673065023005403d7c7a7bc1cda49e99b4033fd93e96a3b28ac9395e3fcca2a4dff370c79830bd63d7aca5db7d17fedc5af015b865023100b594f30dadbd5e7c5f59e4046f118315163997cf8029aeaf9ba4dbd34195bc25565fce8cc06de369288846f39dd0c9fe0302047c435bb500663064023030ecb45443dd9359eefbf66ec72719f6850eba6d3077768e072adf1700427117f55cda939a17b7b6fbb3d53c10cfe20a02301b65e48823f1858d2f2fe5fe5b3b6cf555939eb17ad79c2cdbc9536828f0f30f836c1f4aa0aa47fc7c82a4abf1f2f5ff0302047c435bb50066306402301a16d26052e6bc4fa1d078c8a1b5a2c1fdea5003555610093296385db47ae0c2a0a193ecb9cabc1a6f54c8b50555e3740230191d6322ed8fef504fca75ea45273b5232c4cbe508db5054d7ce3d054600215347950e1a2000ee5c6960f4cf0cff926b0302047c435bb500673065023009db37cc2dcfd620299f3600036a09b7b2f266ccba0b6cde47cdbc0aa65ec0608bab06739ef936912c29516a0ebf3268023100fa8cef8ce29830ad7b23bc2ad27b05015412811bddb41eb25d7cb29c3d9df678b082f1bb05f8a8d6114041232e894e8b0302047c435bb500673065023100c2537cff123ec898101f6a838b949234f308af09e924799c4d5d125cc803cf5ebb4d48ed7105ced1ccc179a1d26d8414023023c73ebd96b77cb5705ae6c5a5409c707c6e3ef0c5f3196400fe7e59295fcfa268890ddc0679bbf3ac5512a32005bf4f0302047c435bb50067306502307640d7a9486f9c8c2d8ec4f30755fd7381c33c64fdad1ae1ec553f36e8b7bdfed2dc650ca0041036fe9b89bfebac5624023100c033333e1fd985b24e9abf1f946e8b29036f47950c53ca7bc766b52cb6c0228a70af0a179273f376dbfc8fdea2fd6e0f0302047c435bb50066306402303ed942736167b8c1b1f307e04d43d0691590ac921ef0302837e70accf5a32f2f7d1ea53fd2f88b07cd9c87b389aea5be02305c1c7710ac76c9cb678800901db0f8323c9e237e233fbf28d8408a8dc1b328561f2a2b32936759e2cfc4188c67c66e5b0302047c435bb500673065023100d26724833f85bc3745138522ade587694e416cc41e23899233b8e86561a8b6da0ddc454c51e890adefc5a7d7a204ede502300e45209c4e372e63c03c9a834949a72aecf7f3455a252f25feaf82c50daa42be7c15dc0687a14a5c5a5661c94bcd0d140302047c435bb5006830660231008a3bca7d55660dbbec6c38b84f07233ddd110057ee2d26a66a540af915977466076d0cefe3f67c2e054e29bb5f9b94000231008865b46039f6b37150e696109590f62eed64fd45da3f9a19b3bebbecb08e453f0b5eab14878610c4d2f2e2cb861b2b8d0302047c435bb500663064023001daee025dd8e6a0f17998d84b267dc8b9bb8b353bc5030a6a4d257dfe6c6877b23a38ab738ae7f5803cf54555122bac023059f6251cc039c236fcc917c438037d705df2c33386f9623dcdb2eeb3ea365ca4710790702f0c767ba247b254d26e65b60302047c435bb500673065023100aa99196ce6745282d9eac5dea818e6096a1cb918cd89b25996faa66384dcb8b72e3f9b254af0f1f49ca5d3b4ffdebbd002307d63544b96257b40e60bf36511fecf36efa79f6b9e2f979ebe64f669d41dd8af190eda416fb207d5f1965e2a54b6633e0302047c435bb500683066023100929ff56fb2cb04f6a445cf6cfb99a16211e792dc1003d5249ad138567a2379bf5c56f74f9da2a8e6f19094298d276ece0231009768d9d23ea17a7486d972962bbb6fe0e5925df4c2357ac90eacda7233756ba12fcb9bda920bc3371727f04ad4a4e56b0302047c435bb500673065023100cb76cee3a4d97ef44c252d76d69637f884e378b608c4795a0392f95d973f8ea099cf14e9502b023b6da4d05aef67a294023054339a60a96301a3bb39ef0ab6ce560830914407c6046a915a00930d39b811bd8bae75671ccbd7da646b2154caccdb4a0302047c435bb500673065023100b67613ad6b523939a7e30eadfc5f7019fdc8513ddf3a7d6c91c55f968f78181321b30210c54e94549f2249e3ac72374602300e2c89997896828cccce9f0438fe77b7ed426107d19023fa16cb554d72716362ed6aec766b78d0afd86696297f76a2f10302047c435bb500683066023100f9af55df233d2b20c27931312b65bf03848d94a354efec048582085370c1fc7e45970f48f98fb3b556cd044ec5dbfcc8023100b986ee23cee519945b6be2db0ddc005772f3ad7b0cc856d2ea0bf140241f256e0a1857f117217ad03000e6b1b51487410302047c435bb500663064023067be19a8ccc54f1a17c3372da140c134cebba040cc473425f42565fbda1d2611b6bdea87ac3fbf17ed3101aca7d6be00023017d40d7503771eb8ebc40381e6f15821dd253bfe1b0d5b2d8a2c5761f0d8d359182c0a77fbc6222e90294ea12d6a068f0302047c435bb500683066023100fea097e89936d86434c60eb2001967d01075617d3ba7c4413705088da67885d7a08d363fbd46927f471da5a0c844c78b02310089491696e3e00d4d1d3ef9ce3b267cfd1ce11b9d8b1504841a19ce59cb8de797710d343152a637dc24d4105f3993b3a70302047c435bb500663064023001f44a8926ab3c8866a55a012a8378bce5217e11d843290b09b00babd767c612038890cb3e765ffcc76e543b2b2057d902303b36399403d77b586c24c9cb807e580bad47398d644e3c65b5629c020fb42f9a1df239ba02034c0165964fbb3c736cb70302047c435bb500683066023100c0306cbd04b4c21b34cc3b2a51a73070d72380b514025ba47d7ca13941f1f35404f70bf59e7d5e453d9273cf013cc5c002310083c604e3fccbcb23c0e3c143e0828a53285acb20a4d70d98995e8cbc48d4008d378b56604235597ef9fc4c88d91a45520302047c435bb500663064023059895f6eb8d02165b1f84d6c0913ddf7b815ac5935f8f4e8c92ec841a325bc975c4171e81afb9030513aae4c983dbf2302302c5b5ba19f270a010af30fd6b2beff9923f380c6b9453054cc0042415eba32de5932052d4a8851594aeca23eed982c270302047c435bb500683066023100f61dc419503b8d5df644c1a336f4680404666391a506ad862b8b39774c3d2cd495c54c9d5734ee1ff15c86ac6b0aa02e023100faee15aede9bb184a33d90ebf90d666e2b9ab3a0e23dfbd90a1c6255de9e6dbf5cc36dd5ae92eaf982e42f53d5dd8cbf0302047c435bb500683066023100f6ba3953b12d9d3e7566095b5f4c7f662aa918bb3be12bf7b26f832625cb4d8d3f13e2c778415d51ea2d18a6ca24feae023100ddd794b29ac6969151b401f3c9cd4ddf356235ffc8d8b30ecc702a3ba1642aa06e8ecbe68ef2cb222f0562adbc5bc6be0302047c435bb50066306402302de296c1354e68be9afedb4b3222f787369d9cf5b38deb1629ad684d6e51212a23e9765d7535d0fa3b2d856b473c671902305825c2bd40307b69dac7279fb60af3ba6c928efbd05dec7453a49f365b3c3ef4ca0b937c026c6559a9038d2ba57238190302047c435bb500673065023015c7becfbda7a5a238561fc20ec655758ae602f1ed864c2f732a49fb2a25b6e9b19c0cd8139247a20671ed3b9d7676f1023100be4655b2d1c2d336d70cd340df284de0e1d24277f1ea1da19da306288ade9c116cef80270b952b27bc7003ed27773b290302047c435bb5006830660231009923585a8a23001b5c35e9a844d987a51f345ec116caaab06c896bfdd49e17ab42bbf6b164c60104666344c3baaf2991023100b23f080c920621f638352433f632afa7c16a51108a07b17eefd84322b4c0c31e3baa928f6d23a4343fbf44312d8f35b70302047c435bb50068306602310090f4e2de2be3b2090bcf5b779784fe2b80b4dacb7a4439a955aed1ef00fe6473cffd0273e9161d4acc05a003473ea9b3023100ce3982bab51e977e054437ae295739d2a9565d844bfc2dfcaa3177fd1680dc7989f1698802f257861ec76c30d65711ef0302047c435bb500683066023100b6db10c2a7942ac31b4f0c2028916e853553bf995624e2c8bf1f698c371f969d1cc534150d5554234a29c9e6356b9d67023100cdec5cad916f63b99258ef35707d191d8f4ab6014ffe976f193af0c53a2ae8a4ae75683f1265e05ded45bef4935616150302047c435bb500673065023100fdfa86c5a5a0cacb4a2bc70320a567cac11b4fcd2bc83fed149ba44a77cae63010cb9f24df72c508fc19689efee0c77602305dc5269a54ca0c60986ea4b44f030922c1abd7e08ff7fbbb780481faa8d4a90e71e946ed3ca4e5561331c9bd827789250302047c435bb5006730650231009390f15edf15a01414c224a3a092839fcd23243837d6002431816720d88fbcb1c76a360a6e3ddaa4dc821217936fb8ea023031e454e81b53522c7a0ab790d472f43582bc64f06a0b65d0243ae2bf469a4c42fe1bd8c184794355adfc79c183edd40c0302047c435bb500673065023017f6d7dc3ddc8d931f71b19fb3009ff0ed112b223da81181a1ec56bd136f81c2e5f51a4f889d3459d5fa0a80b16d015c023100f92ecf3ae5b7911c3b7c94417edfe29e0e75a3a1eb50a1cf7668b00d0a933be3507def14e0e528aa56601d81fb15db5e0302047c435bb500683066023100c93e7237aba663c62e0985980dcf907c239635ca9e5d8cde33adaaeb42df549231c3ede595cf8b340d491007ccdc357602310081a528e14d877cc69087088131f819d15d7b34ec763a59c0e61fe062b3d758c47dc793039780beaf4fa2ace6cfb84f290302047c435bb500683066023100c629ecda3e5216b782fd251eb5fc3c83ecb9b305f395bd9c7b2e5b65b951f12803abe16daf2b3b8319efa8e804645a6b023100dd03616f7b41e6171fc4ac9146412b490bb47bab0c50845b9c546bcc9e81a8b81b1a239fb7b20e05e00d30963b4154e10302047c435bb50066306402306a09a8dc55a8188f63099c2a02f8e0d819a257a3241a1a3cd6bd27b8a9c945b0586e96772cbbe43b34a99352991ca80a023066145ebfaeb2417d590f5f66ff48d35bd0bdfdb1bef5dc6921bba11d9dc9998564585ee79d7d0af0c7f3f4f9fbfc5db70302047c435bb500683066023100ee4767008a151333b1bd59c777dbc73404d1c6f52c8731d4443ba41b45e49b3e50ca95ad53dfb7145ed5d15ef74d7601023100bb905e6446ad22ab756f22936847cf57d4bc2851e50b7ef704265aba67f2f8d36bd36440759b0028244f485ddc8ac8840302047c435bb500673065023100c60b0e657fff765d477365156ccd328e72064da7d3b44d573baab8ca103d303831a48a6c0bc9fc6d3c9aeeeaa0770ced023013478d48222d55be4e069e0f67e6edaac37b6a909b1a6db720d856becf59ed9a267313aeb18fbe0e11cc3fe794b72cab0302047c435bb500683066023100baf3649bcb8d23d7e5c6621f85f8419d742213ea387420a50641f1482b9a4455e9d14cd9cbc44097a0f8123cc229729102310088dd1ebba620273383fa7675bc9cdd141882402126fe1fe06eb7d66c773f801934ccb44957bed1bccc39ea1d0a13a6230302047c435bb50066306402304cb7db8d3a247368d2cf445e2bbc0f6039104421f0508333f562050bd2e3b038d02b1679cbb049319ecf844787329b6e023006849fed9f40aa2b1625ef11e89cb46ddeebdaf55acb87c305d6b4745b1df74bca18724f84592aa88b3d89fdf66d0f3e0302047c435bb500663064023001b359bbc64f5d370384992657213dcc8d2588ecb00a84b87826172e730d2b86cb1978b36d30c91b5fc6ae38e2514a49023078b448807f4c763fdacd05bc32844676ffb2bbe672dd67529fe26ac056981206a14876342ca67a59caf64cb4225c19ca0302047c435bb50067306502303b2f7a3e76ca1bb610cd9fbac1b21802d7b3a879b6508351a70f8d48ffc866790aa482d0e637647526fe5ee9ef645372023100d9e69f08d0cebebd4575ac51c1bc085044e67265369af451efbb8567672519375f574224c4d21a93c0275e743cc9f39e0302047c435bb500663064023010809feac9c25159da6e87e46782a6c240b8ea72a7860a6faa02c6a779fadbeb1632d1dd857a8be84a442d4bfe91e7eb023051417a278ba87fccd627e12420eef9ba809ce09b54c44c213f49b22ab842e34ffe7232fff0d1af05aaa28dd9ff1445280302047c435bb500663064023015fb4f2e154ff1976d9db314dfb2a39ade4eb92ef72111f420d2efe6dd13b8c8c258bad043cc9b5cca6a3092a2fb4ca00230359d34252934b7ea44ba1b64cd12cccba4d0c0f00178882dae3cefa0558e7fedb61aba989ed4c97aec52d3ba01ecb7590302047c435bb500673065023100fef685fcb4024f006102066d312f4c0d9c8117409a56aa2ae8db04027116fca9979828de7f441cda99a3e963c74de142023070344c11d58ed8ca5826489d491b6a03a6940976b9ef7e01f02bf22c9e6015b0f76c4fd90917faf66431f27d889918680302047c435bb500663064023028a435f632d6d50405dd2928e974ecbfb3ca0e3b57c8450651423c1791640e855167c4b08c3e8704e27f241473028e300230028fc751540f02a49c06a0fa67f770d91d6390153573dabdcd6e2f36c1cca1db3ce37633bb1c6c901bb49138785af0f10302047c435bb500673065023021fda65ef3d4b12cb7f639d0c86964ab29184f3100bb61cb5bccc90afee7ad95a9d692bcfe517d9171ab15bd54b77a38023100fbe3d5ae9b344a3f4de5624ac779b845c32ef0939c608ddfaeb80872b36a9dcef7498235ed85a8ea35c1be33b363af0d0302047c435bb50066306402303d3f2252fe91e01f8b54804213f045f81bfb935288749f3fb8f6e8db9b726917418d1a44403b347c42061a078062cf4902300e024081a22e25ca318e391be7a0850cdf04fc449f8c9df719bd204e9cbf39edc5c6951cff693a7433c4aec7713d8ac50302047c435bb50066306402303623404ef3b9323c91ee59cb603b02481614b3d877f3f4a971f7b88c15dc9b1dd05c1e0fdf3ac18100b0da2e62c0c5220230595bf5b0bceb022dbb33e4ca7d844392222f05ef692e772c94cbdbdec4eef534640745b05271f29dc879518a5ce071720302047c435bb500663064023036977bff04cb46a7bd7a9884d87cc980d667b1c35385a7044dd7197b6e37aa73b070e165e7f06d3a3971b1645ee898940230690f6fd37de350b953e6ff9183398d6883607d601508e39c7f96ab25b32f1265a28f55527d151e8c1c06f073b3658f0f0302047c435bb500673065023100f7c31eb1f701406950db4b618ac4f98cc91f43f33805daaa189fa112a98383cf9d7037a3edfc79d20f55dd2d02df8b6002304b60b8d1eb7378949ec3a4f5246587581103b4b5d68f3cbefb1a1aaa0eba6b9615cd19268b504ef2a040727ad64c36370302047c435bb5006630640230413b44bf1e0f55232e3dd96fed69017c717ea45634b61d0275d95c7a44bdf75ec0cbb56ff696ac4d394fef2a31f693930230228d3cd09e0b3af74b7d2022af2e632a5a23331a642f376b5a019223e956b8de4acc098b106227a68f94549f2436738e0302047c435bb50066306402301f3fbd39d22469a8c50060c4b393788f00ebe7c6b13280df42559c40103f6df6c6ed8d4aba7fa1a4c57f56bdc7ce3305023058ba4605596e87a0f17402e51aac6496ae474a26abacc76c9abbee7afa9b58b27c680c01197a81b77d8cb83414bbf88c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100bcfcfef08d99fb56a2dd86933fb76b4823e86435039b2fffffc0aeba41942376d37aa09cbd22e8b86af7facfef1ec591023100957f7611cdfc9328a07d85cda644c57f478d1a8f5e7565b79c4ad4b9d03dbb1c06e9370ec46c6ca4941b671ab991ef5f0302047c435bb50066306402304a922804a2b2c8f7d0de66234d21f65159faef60bdf4c1f6ac16b0cc20362a7ce4167dd6c13fe963e3b6184545b16a9602301005a212336b495ecc3c1f1353563ba520cd4478a5c4ce85eff7e3420289771143e8c4e7189a73d7447c05d044de87af0302047c435bb5006630640230756ed7f415aa692dd14bcfd45e3139993548b5932f2a96e42cfdda4e6131e6570b03b1454a798d5736a5ed0fd31ccbc602307e48f832f33acb73244cc351ef85a77f8de71ef91a72ac83824c66853ea33daeb0fc3af32749b7385c3678026e465ed00302047c435bb500673065023100e5313aa0c47532c13c8e78a846c3787a0cf731e183578037b6d8b465a56048da9693c75cd6757f6469e2ac7a658fb19e0230034f9d937b5e5b6833bc853c5c1e7ff467ea0fd297e7f8bebf4276b37abfcb32f464970119e88b22d2ddb8e4f6ab55870302047c435bb50067306502307205500aca5908d9900e564257b97280a6f690b23a2ba7901454026a60f1a1cecca4877e3e9c2c1a06a64c90f3521705023100b14424c3f8ddd35621b8b540f960194455fe7b55e814d9aee6fd541dd72b07c5dda3ae5f7660f0a3d31d1003d860b4b20302047c435bb500683066023100fb4a79fcbc1ed0a0d59281c1fb1d026feb7bdec70884c986eea22359314ac44a9979cca398549d21d23446749f85c219023100ddb05c3a3e3db86b00c89344256b89c3bc2ec64b0aa818e25134aeb2fa12e4132ee2ebf83e6d7eab7bf07c316abdb99a0302047c435bb500673065023069c6d0aa663390fb4a6f06b840f240935fdbaf1fb975bf56110c38280145964bf5864b4634bd8c3c9070b5af42757ca8023100952c7968ebfd34a4516c93b5b691a6ca3ab88680914ee6cdc1867fe7021690ce527b233bab7a12498e5faee34b690de70302047c435bb500683066023100e2903c248270860b9b458f1925e4e1e10d9ec0af1860e8d26ca884c8bf32f86fb1e4828066cb9c0c8fe60873427940e1023100ac35e757c3ca617806bbc3c7fec90f3f643071ac088629f6a755911f15af086244dc5c3be6f602a4f06ba9baaea069600302047c435bb500673065023100af92c995e01a5f47ad33babc93e2b3b4f5a9f36b97d47b1a10cd44c4114dc11b81358ca887ae4351c574f213ea8fc4e8023026fb3d75324818a5964c293bf13b1982064ad48a27a4534c7004811a94d1bc4ee88ea353105a7478ee66b54a14bdda390302047c435bb50068306602310091de4e9e53880090f89f20cb4a10ed09ac91fa8e8be20ee41e310a11001fdf30351fc95115a682451cb9c02df9c886ce02310094ae72c2302da0a76d73cb892993461378d3adfbfc21f32db0c3888be0728475595d9967f1f7d883db384fad63c6be8a0302047c435bb50067306502307848e0ed76f364875e605c83abbe9fd6ad4e0e4cc4f15b990c4ba6c96015cd652473b3a0290a87c226364cff5bf82719023100bda40022e98a35b73b701c9108c95e31de44861a0d49e136f09f27ec5f53a55f06a858490a16b983130034262a5039cb0302047c435bb5006730650230730d2b86abee8a045fe42b7de0d1d6b5306d272f4d01867fc87a89dbe6e63d7d69b816055723462beb48531c5609cb850231009fc69f8895c96d5c28bfc622bed6f0f14e5b63c0e394c84564dfd6448938e37f2b5684c44efe0af74cda733cd86247680302047c435bb500683066023100d2a3bc851f66165a6558e158f8493f6c7516d13ef4beed060d69c019dc76d7671c9d2ee17018f39f3bb4105f83a4b5470231008546c09878276cb1db736dbda31f4e20ade6cd37966afec1cd09a880ed2203877404514f2df7d2f8285888da7913fc7c0302047c435bb5006730650230049f8ae7af38e0b8daa02801df254d206c70c909b29c4a94252e39fd52b921cf5f2ea51d0656a3faf8c68fc35d373e52023100ee9d5175b1730b6ca62f1985bd4032ed911f159b4f1fa0ed08bb2eef34ea789bd91dbfd77ac076cc9a77ba5519b726580302047c435bb50067306502305242bf5294c4a79b2a9aa314497514065a1414cca5aba309df6446bc11b17778b5c4d424178c2d405ea9d7e66c3f4a0d023100952a032daed086d40a91e6460c9d357e58364b23321f67638e740803c01e201547fd7e09ebd5c66860bb5775a3f4ae1c0302047c435bb500673065023100e9b3a093c2cb7f8aa10cdfc21b7cb84bd9f0322bf77de6b62e0d793ccb56a58df135e458c7c1a9fa4a57e285d971b97b023019819b5745a649ccfa354e114239f82d9134f99aa07645551d0dd4932d6e3cd388ec441a37f84d92dc931b32085f68040302047c435bb5006730650230420027be7c8798e95be37255e98a8e8404028d6336801d044440e121851c6fc11fa92b4102cac2ffabe4b8f807d39503023100c0fed8d5eba4120ac2874d1bfeb0d9f8aba9a7b4a532171aaf3b96ca7913e501a8b5545c370b653b504a05a3e1f711ac0302047c435bb500673065023100f7413c9797e15fbfa76ffde3df296a33d8d44e4f1258ba3cd768533bd32a573a48f1294d1699af2fb449bf03543e030b02307499ad28d811269696d47a6f4f61f184de0c922c3f3ef1891214d5a195f47e50c7b17f55aae7410fb1e801634c0623df0302047c435bb500663064023032ffbcc50bf4a3df285bd589043ca52f1a6c8059085de846f3f6c4574fe1b757276b49190d1b08d5bcd28a9742f19fcd023059cd6d3b34c1206efb27a7fe333a6264912beb75d33f1bf7d6e3674990d81897f0d19a607334343f9efba8c7ab5f73ba0302047c435bb50067306502303f2216081db086df61b37a9e07e9fea8ffc69c8469ae878d4b56398dbdcecf04128df8fe6aa5e89fe4d7340274ebf01b0231008e657649d2ab287dba75c19b33fd797a92e87213860bc03a96946fcc67f8d3ae06540e9d3ec19a77ee8ba067593fca720302047c435bb50067306502304ca5ed5ebba3760347d7f8bdb6dd7df1afdaa756ecbd3cdfd40d95d73008ec6477546a1641953d3156096acbbd65a9fe023100e138ae3a159640ce72c915ff8a49f6467f0ee2bd50aca519739bc3b0f54944c7b831d2953f85d4507e8b1b23b7e63db30302047c435bb50067306502300efcb4b7174b5ccb714727053aec9a89736204cfeaad75926d548a1502b3ed3d2752a60cc563b7906ca9bcabef84ce5c023100af9a75c2f19c13ce4108f3c0f4d81a48f0f3ae1ca90f1cf3edce1c915dc36b27dd56771a88e99505112daadcadc9402b0302047c435bb500673065023100a40b3474371ed5952a8893c1dd3a55dfbf7b599baa2789acaff3417b8bcd927a0fe9b55474d3a786e8b452c7904c4e0f02307d4f61792e7e84590e489ebe2c006c20730c47151460d44db73b441af26b89e8786ff5c0104cc3110405a948d4e690240302047c435bb5006530630230386b6f568ae7fbe02ce4f6474fd540d936cd91cc187028b2e072f9782d5bfae2f611052d82cc1d7f576105c816d37744022f4fd5fe1f2f3a13bc9053a240ca82b89c97b5e07bc07e05f5684d4b2c6c16b9f0b15ad4495321ddf419f4a51e3868620302047c435bb500673065023100cd1de115783f1a88bac71f8b07d71475bb6cdfa8d858551cd669e20fba2943c516c2d342564566a1bac40f56568111d6023010faac0501c9fad9352943163ac3541da1adeeb0992adde6acf39b39097ebd3e15b959059941138f9cb46a9ed86810280302047c435bb5006730650230797519106656c41ee49df4664c0fde45b4391fe1f9ea586fa19f81b242c0a72ea6a882ae298455958d1a08c793bb2084023100ded3f24bd4f3c97873bf5364bb5a564df8b506e1dc1aa08f3f08bf4e5a5973806698b882d4a7a6ec09e1250862cf5d870302047c435bb50068306602310092d40e0bd108d9dc2518e563e1cd0ab3979b1502803f02b7a105e80dc8885bfa67df52ecfb207fa19bb5751c28ad0cfc023100e6bd32ed16b327d4b9b7da9248d82fd6835b68a27813f3e55e83c347dfddecbb832dd1363b7df8419c0d3ff011541de80302047c435bb50067306502302edad5b0aa299dba793cfd737fe90dfde12979be0bfeb764dbb7e5d278f8248d2046b3f6ec3f8f0c01816d5f335be6e5023100b866bc19ccc05a058c018e649aff8c8ca557d4e252a0a3ad59666378d9d7b69fccdedbab040204c2b35b0b12e438d2720302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230218d8c7ad7fadb85eb8d48539aeb987a8e68c2074cd0aa20a4f4fa78543a832cc5935f2edd26674da346d887fff1dc25023100a2369a644ca82bbf4416dfd868a940dd6dd1be31aa7eb4a6144a4a36148035150d93aee98743f4d316ce94a5f185729b0302047c435bb50067306502302cff2afd7a7850eb8351c58b61d2063f98018d95d8810022498d60af21684a97146597d439a9d283e56bfbb29f58e440023100ce93433fce57e71f5608de21d98abb18d61240f610473a424cf8196f3cb87fbde2ca6daed504bb7605996cbf0f09ac860302047c435bb500663064023075e978835a0d6109b7e3075fbdcccef668d43efdd86d90434235d6d70e56c8475f8435ec765a5a5b22580b3dc970e426023012de5d44d9867e693c618379ee27ae3694f3b43679a92fd2dcbd89ab82c82f19b733d743b591a94095b41c5980c9b73a0302047c435bb500673065023100ea76447dd628a609d8039adb045566b56143ec720cc7c0a17349277d26d33b7066524da7c8f62e2818ccf3c4559c0d120230140da9bbdd9a8fdfdc836acc9514c76561bd12d5e6ffa7bc9d210738118bb27cc9c68575119a737928c12d6c9fd7d5a00302047c435bb500683066023100ea713857a07b00c5744860d675b5236420235b0f33d72cc95feb0814aba82e283fa4ec6aa116f004ddbd53886a72f2c1023100ebc817ca5f4d6a8c2d8dc969fe46090274db9f00aa843550dae522c5c543d66f442d6a9fb4041e5bc6b7dab9d1e82e150302047c435bb500683066023100b39bcbee0335fa08f543ea53d197713f38d1c11ea7fd753d9ffde55a21bdc4ac0afa20d1c132880740c07007e4dab1d9023100d4460b93c4eb94c83e80a9b799234f823f6a8a555c8d4ecbfb1fba409ef96fac541652024d7cb3ec0ecdab95c489a7390302047c435bb500673065023100a1840d5d1c905128836237dd341e186e5c7fa4c034bababc26cb76c22c6c27548dd0b31f92891ebe9bd035d3321c270802305ea4e44a69f18dfdb8dfbf91aa1f584c8482afdcd337fbd1167d10316cdaae389be1beae06a7130c4123c74904196f460302047c435bb5006830660231009be7f0687ae2fb40c75d03bf985499258af924f7ee63fea6fc1d93fc13510d1d95f487e02c19c57e008148466b660504023100a5525a8f23c6ca30172b81193e71c9eb135f9cb6a5a285750bc46865d7ca0681e24a0fd4b6f6cfaaec084afd9052373f0302047c435bb5006830660231009f367ed45794c272ec30c8ee064127864da7eb15e6b142aeb10ddc6f40523ce4845a6947cb8940be6bb1745ad85d282e023100e37bc83f26daca0733ddadd5cdcb3ab2e916bb3006a9e49d9e485ae51678d350d3147e790b73c286cf82ae00b17e02270302047c435bb50066306402304a81faf76d3d6ac1e7a8e7e38434838132658eda9561f3cfefcdbfd9e8a120c0a77e8adafb9aaea2e70a6dca9928ef920230603cb9f1e978f63231474114d93c5c6f1fb59d0903e96c4c3992dac157f459f76663fa9d1cdc7225a8a314a2f1ae63060302047c435bb50067306502300c491d9a57699864c0c5855253e4d258ebcb520b31e1ad5ddc5bc0a042bfa52e4ab51f591d8c634e84a29311337a1791023100c2b37ff759c110a2007e76d390bdd08e77e10dfe9a34288a9da5a903b72bf1b1797a2eee6c3e7b8d0ad636a8c76f27fe0302047c435bb50066306402303348868b81d3cad471fc0b13a0121cc46cb6968a4b35609a1dd3db7e8d88ee24a053a7580eb665bfcf55eea02a8814f70230280a87405b5a5f4c375d9efcbc72a43579bbaae83c5cf6ee9ba7e4bf7ddc83bacf96d18f7380c37718f8566820bcb95f0302047c435bb500683066023100807e439a256f7b7464c249c132476632856c3be59469f1a41307ccf5fbf0616192e962678ae8c13889fb9517a3df06d5023100d3e9dd10b55d4d3cedcc45a84760fb97c78c94521aed0e697f0c9360f235271f853e34a37fad3859ae8dad751bfb773d0302047c435bb500673065023100fa47a8390690c8450be90a551763780d4dd10e9ccdb7a7c024b987d2291458d7dc198f59ff020a73e149e56ef48defeb02305e1b7f057f6928978cdfbd654b9894b1bce35f16841c26dffb91320f633ec77b7cdfaa400f424cae2d3253551a6d2d480302047c435bb500673065023100d149f60ea58237914a6e93b8dee323a6cff03c7d3f77e4ba5e2008ef5830158138313a47c5afe4280717c45320438024023007c83769cb8852a9f3bc5921f86ed6f9bb2025c76ff3994af031ba8e2b6bac76ffd77e8f2d24f21c289b1efb9c2732910302047c435bb500683066023100905b02e0cd67bcef08585cb552eccc1b23c35d12cbbc5e6bc219f71fc67529242701937d945163d05a63a2663335b94e02310088f3583a556e1750b138329b2a0329785c26e21286c14597adc3a0cfb66e611332ca3cf420be28b14a8af8d4753a21550302047c435bb500673065023100eb7a04cc051975edd5e3b6fc25ac3365f7b21a48d62eae078624803a294db7572d1988c58a1553b6a3c12b0737fd9f4302304c16d06f0d2909df66a82512f562bd3341857bb5c1c7c412cb35ad599ce9784bbb6d4a1a8b2550f32e2d617a95b946600302047c435bb50066306402305a6e1ec30e12e166d345aab39a53d52fb9932f97fe0790bd579d09777df0911444c9d805fdc778f69f20bb3e2125129002302bf9e2615d6c98ac0d1c1362fba9666f0ec74dee5f59aa8772c7ac25a5b198de72f480ecfb167772edc8e884bef8dfbf0302047c435bb5006730650230334a64b87d7c80cfdc0cd2965f11236447ae9487d727dd239c69ba6a398b1514ae2c9a52a172cd6aa8808bca93661895023100c5fbf04c096915bd0c12d72876fc1df27c50ffb557a9186ec40c4b515f3cb6d597b88da08f39a6e34ef95bffd7526af90302047c435bb5006830660231008e0649a180e96f91e9fec93dd95a0a0f7259afbcdf3d31f6580a8592a1a94f333607359e0d2b58d78b016a0c565d705602310093f7143d3eb2499e5c80cee68dfdbd026475dc09f4e690a0ca52dd722fcea73e4ed2e4022802006d303238f57b1d8a330302047c435bb500683066023100ec47e3dac80f47b89bee1b7e109e2ea4cceaf2feb60a778625f058048b9b5189ced4b679e3a9a5af1acb0d718f64b599023100fb4f836c4a9f39895362b5b073961018d627db6763754d15ee68c47e18dbd648e93dfcfb26c473fbf4dccd026e1acd900302047c435bb50066306402303af4bca3657fdad21a99f53399f9aa6218f65616fd3416852d9919c3bfcd6afb1847321fe724646bba26096140a54ed102300759bc16ec030b4e23787cabc35a62bf5ffed711ea33b8dbbac635c0288e6c9d37cf65102e7192b19746dd2ee85d6cf20302047c435bb50066306402307bf38ff77f9f568cde7ba83f5bbe53538e1937ae6186cd1b2db292e28a8e45fe158275057193e0544342fa59a86f707902302c29d6570545d6f2a2b6b0c445218f8cff999d13a0fe1b2505335e18af137bd7c808dae307ddd201840f61b4e758a96d0302047c435bb50066306402301dd1a8898c14418d1859e50f93393ca4bd37785fd04b4e280f6eedded1793973b4570a6ca48b51d91730a22763f00b5d0230615eb5ce03fd7a464c97553ca8ad23e5614864cc180b6cf4616c40f72e11914b93311df60d9356666356ee15390fa0ed0302047c435bb500663064023068ac10813e7fe94c967e3e31a073f527099cead1d4468bcd6eeb3e9cc8eb12aac01224bf051dceee51ddefd69e6c07e302306cc39f188f5c7ee737171b0402c57413279a1ee5ba042efc83770084fa358899b4505e8000cf3e0a7341187a5df4e2ef0302047c435bb500683066023100bef4a98cf2705ff098e796aa1ba2ba045d8ed84e01ba566cab89fb490e56f6775c29fe74a969d8c1de6f0ce7004e8a30023100ba044c7ecfbe3dcbc3c9668ec4e7e617cf9b6ed8c6ef3534e5d7f113329bd9c7e3b5c66c25296fd8d3cb61539ba510910302047c435bb500683066023100eacb6e6f9cb3c671fd46819ec410d7f43479f895230d67c555f919f4da0ed2bbdc61905b1b7679889648f4cc7e8f08fc023100ae871d2e91264c45e639e9f84d209c752469548123edeb066de3e51f8813716c38a53db0f9fffc998c3a5f1b9aeb425d0302047c435bb500683066023100ee41c98d4f6f657d21adc858096bf8f15688a3904b706fc829b538b3eb8df68350ed5ded99eb6ae46106fc30cc0b92c6023100c28b542127cf6955859aa6596d0db85bacd892ac195a937f9b673fefd1fe14e42cefd8cd58bc89021f630b770e0e89a60302047c435bb500673065023058f5b0962bffb7c94852acf1576b05f48be6f8b10b9e5d7ac452580684095b6009c87607801f3685c253250f337bcd2f0231009e986b4804185b79d659e29c639322d7cc8e6a6d32094e8e07690b67f9b6a55a6fc9cc9fd5eef19f4fb74c973d0f377f0302047c435bb500663064023021d0b3b0057632bd5c3a45f6a16c99813511102c1cffe04cce00be4a85f1e094d4420998291fd1789c5310571980de8602304adba69702f29808cbc248a95aec1003061fc46fd7d3f136a1fc3537e7a7072348b47260fea644bb77e16ae1004e75320302047c435bb50065306302304c59d23683527513af4114925924b1a9b7fdfeee9000a274d990b84a177d1b83d6e47d2ee8ecb760107c505490f8a33b022f717cc23adb09c18ab15d381b28cee660af628d2f3ef824997ef086495870da9e3062b2b2999c61b6d84df405b275d80302047c435bb500673065023100dc25e0a320d54239eccad44d2dfb42c10e3c3f8fe2db7a0bf3690e0239b046c35d39ce6f9c91c297b7b6e8f25c2ad01702305f6d47a7e4624d55ab0b98821890f629efa73c13b8a31359393cdbc5816b80d8b3ef0ee4ba79d3109e78180ecaf02f750302047c435bb500673065023003ff1f66657c135165d21d4f69abb6defa0fcac5d112752ea59ebeecf2384486156fdd445426f25712fcd91793fe4065023100f161eaa7636055c2a1750362116f28987c11302199fc1763209f8ff7b56ea432170d5fd19d39ff4b2466978f525e89390302047c435bb500673065023047ba5edd43f0dc1d16b029b51bb83907d011c82c088f5841d84271dc13fd80fe037c283358e039f3dc6fa3985cc35194023100af01c291df0be5a57ce35f69cf8d110dc05c668b4c5200236c8b5eea90180c5d819827c8b68026b64ea1e335e0b881c40302047c435bb50066306402307442ac8e18f53a2d73d3167756d8d0ab86da7ab210eb5c232fd6db35e46498a42f004ce14270c5f52c0a6a5737ff5b3b023047430c37238b82083a9a858c636189c416f7052cbc89254a751cb32b1d37fa1f35cd9dba125d689319dccfc91049790d0302047c435bb50067306502305fa9692eb994193a9c0cb95757c0e66d597e6f23b392354a6ad4e4ee08c3d52a8670455d11334ea8c00b7fe2779b6169023100a1bc282d8c60696c69c707dc19f51e3197944d788281c1ebde75b88770df198353f6c8c465a5f5570a1411aa9a8bab250302047c435bb50067306502300daef1588aca18daee25fb5ca26706a07ecd14a97f3ca0c52edb3fba9304cf00713ab1addb37c2b0f3433eb0352bd0c5023100e33994f8458446c8eee609137505cbbb3da09229d0c7534edf50d785d88976ff50993116acc70ecd39a9f8ebf608ee580302047c435bb500683066023100b5d153011d3b08b3bbe7deecf37d2193379af0ba88bc305eb1c7984429c3b0defd689b979408600667fd2a40773a1875023100c27f52446a28eec7a2d82254e6687e38b9e584933fed6e9c1cdf15ae2a51ecc6ac276fc72143e5e0532032d541a83b0b0302047c435bb5006630640230744c1104af52b07a015a92f949cb3a28141e37092142885a02003e989f48f01380619b5fe7f79567d98239c340c4b4f702303c74ca575db37e514e56478aec1bd091f6f494f6e143b421a4229d2acdb96ebcafda9e1754547e8e4862d7686e0f5b380302047c435bb50068306602310091f6ab1df0e795a21402cadb99b4bad497d9c99ad6609fd1308bdfb7ce2dad89d2e28ed691221c85f71301352cc44bf0023100a6ca7211444104bfe518741894f0c50252665dd2e74f01dc4a3616fe526b0b9a068e2282c1056484fe6c71b7eee5b37e0302047c435bb5006730650231008a28bd79f2bab778684500f64da252f1ae6f8bc7a787b3a1ac876303bda0cae9a64cc4b4a3f54d4e592d84e440f0e50f023003aacd2163ea99fdfde135d416d63d65f9d6c18fcf6bf66e64c642f3935d584f6815b1b5f4c152d536b3af0368b435140302047c435bb50067306502301ceb5b81b88e7428cc5304a557eda24b61444ecaf0dd3b9bc7c1e25980892e4bdba3ca468ecf7469ebf176c7e09f7acb023100bc383acfdc3278c2117a5debf55cbd75aae6268eb592a947df82fcb2cbf2e200a8310a1bae506fafd8dd255071657ef10302047c435bb5006630640230626111893d9a067998b8c6b18a43d74d6e2be39126c13cbb2b0a532857dd7443adcecd19339183ed9af8f4e932a084fe023033fd4079853ad943f1cc3679c23f2c3b6192488e35203aa3b0eebe3cd3fb0af2309a9809ecdcec5b23bf2cd807511db80302047c435bb500673065023100b87634fd2ab6608a0b499e3ed5e2faddd2a0b989a7ac4977885d5ace0892ba60c340a611ffb59fb9da1f790afc01f088023044c05be0662298413486ed3f0c1ad20de234f807a39d9b8e15c7ce57a98e2176efef2f3287339cc7c18f25808ef6be030302047c435bb500683066023100d6a035d8dcc074fc8d244923efe2c2e10b1b4ffefe011262ecfd3ef661061803c806addad21fb77d58bd5a30b401d349023100e5c15a189c0dfb181092246d56a5760d1e5d832fe5969a0d5ddae20c87c909bda969637bcc0a16c48e506f93df57e63e0302047c435bb500673065023100f1722186978bf6d87c8c925bb6fda986aceb93e36dbd0bc08e99bda9f90c0fb62d177392d9b26a7fb9c4f77133a8659502305bd8b6f12ac7d858a9263a3c772f8ad69da0835df376ecd5050ecff3cd12487cae26b9af3690d37619ae68485bfb9c0d0302047c435bb500673065023100a9a9a280540c188a501ca6d4791fe68f1b3ba5c0030c5713c21dc679afb5c68ced8578df04db0d74e4026f3ac298a8ba023068e16ce5f669c05966f7a4ad7b97c9d56b4643b7adb14a4cbc915ab2f0d4fc11f47ceee0c1174fa3f37a3772f562ab050302047c435bb500673065023100f04f183aa8e03a796aed7b7a65d72d4219166b0b54004c3b119f978391eb0a3dff8ffa57a0801519c30ffb12bd569b09023065e21f364d6c64085a6bd72789515ed69db669e9fcf07793264f23301b17819ed632be4f3bcaa0261f9a901b5c3b0cf00302047c435bb500673065023100bd8dbe8bef92c1f9632732e6a0842111697c88932fdb862ab5cb18e5bbeadc8a2cbbea864e3c45bf579857250e6fe051023007c1738661bd29e715d37a1527a5e9f1e545ff7fea0fcaec21695aa03955f95d34bcdc9135b477f9dffcc44fc60085bd0302047c435bb50067306502305a3c9971278ab9c1ba5e0a4d9266bfb822549023a4acd2a0fd4929ac59aa3ee476173a682de7e043d9608df3e71f5022023100d78e6364b577531d8735ea10c29589d4d55a67cc99d37b48c8d6841234bd39c987ddcf20ca5d702b42e29ac8193ac31c0302047c435bb500663064023016bb7319e66d7e68ea3b7a1428c4718a776d1dd94034eae9e13411bfd07831516107c6fc114d4ac9c817569d3cb4b20402300b5da94a84268a00ef3eeb0cf43859ddf631877e4f7272ccd4355bfc9a83a60a25e9b997aa755e170547720856f66b3c0302047c435bb5006730650231009dce9af90cafafad6612af6496382fa8db1ed00ba5f3489a7afc816397d5a451d2826fdca6d6137f77b25e42620a4e7702305e013047546ce0a3767034d48f712326a89b2eba80514609abb627a54afeb29139471914f2bdcabf2a0ed5a1dd6ca1050302047c435bb500683066023100f360e6c09e3f0c64c2ab787a9facdc46de6d861f332fdcdd7d049759459fbf9da14d789efd35f40ff2dfce5f862f3e4102310089b862f3bfbe0c4b3add2b1ef7889781eb056af1b2bd195570bc7f32ea7b40055b64408325c44c210d7e1cdc3a603c590302047c435bb5006730650231008cf81c963e5d8c2bd36a703a556832c97fb05232ae85705990305af0d75a34c33ee3c537a492d0b37ab96d6626590d3d023035ff309f3cddbe5c8d0169cb8753ba3cadd534962b1daab68c656b2d5575165019cc7e549e7594aa751555bfb48d95f80302047c435bb500673065023100eaf8f2b189e1335a90828d15f1952949abd68c4b94020740cd4767857aaf17580030931dac00a724dda3d9f5b6eb108202306e342ada8253eea1c604724b39d1c046047aebb8134fbc088346243662e97337123aebcac209cf8524b2ed0f6fdb8b030302047c435bb500673065023047667bc4eeff318ece41ecabe760ad5eb61e6be5d146a04660b8edbccf522c239a24d5fc43acdfa65e5b61038233f5fc023100b63a8da3f3e8a8f492c3ed9273eb94c9fbe8547737add1fbc83727517aae2eb123e0c07fbdd90be64888e301ece0940d0302047c435bb500673065023006a1c6c3090ab4f4340642775d414fa084f8391ea7f7bbd1bc781a5633c734e7aef50c4a14ebae6d946074ab9b5dc7c5023100ffe3aeb993d96337305ce2e44b9eb0a40249f16ff4a05c3a9c6a369cf4f4345c9c7d5158edcca157daa8519eba7582570302047c435bb500673065023100a3c143b9cbd5a3d1cdeea94da98e31d2f2f01e5836e1f412d67d2409183cca7d04069b77fb2777125659184e88a020e402303415b5d1d36f69cd770e66b77889f456b3557d1913555946e49123810b79110bce2658e1fc6df384caa70ddd9f407e2e0302047c435bb50067306502306914049b135da520f5201c1969c4d24b9334e7c696c5c2fe17ad07b330bda986f14ef4ed21b39c47dc28fe76484d6e65023100daa18e2142594905b7a49ad0497e2d9b72b6ed38f536efb9e040bbb8ace26ca2e59efa0d89ec34576c44b1298b7f58750302047c435bb500683066023100af96c895c49b13c7d71696fea7ba29407c68f2d2e4b1d005d6fc9ec66c6dd0dff5b53dfdf3e5d44de1047521ee5ba6c8023100a92202fa148701d1f53633eb02382b9eed0ea9f26f1dc193f845582554bda4430c5cfbf895214386b55485e1d0dfb1720302047c435bb50066306402302e94a250dabb8ab434216ec630b5cc9007d60199328fa1215310672223afb41dc1b85ded1904d9f1110685005d11c91102301c4181152feba1f6ffee024cd0b07a93b87e12ad75051a3331e67b579450c84c02b914fc4cbc89b5103b4412b7a3d7170302047c435bb500683066023100cadcac70a577d3a09afc28b9fd09c8f53051f3224b910edcdc70b75a9e4973aacf6f7c1d9a915d582612bbf36f152606023100c738cd9af37e4a90b7cd77a62b4471997b837f4f47bff052c3bf84ada58cb2498dd2156534e22f130438f5e41e2d3dd20302047c435bb500673065023100abff7e045ef3afa2a9f487a946ffe30ab1e4252bf3be0be93e2bdac9e56aca7ec3aa8c6fa88958f84ca969b3ed2a68ae02304a0cbadbf5ef3c737e0ffbe01a4db85029bb6024af12c249e33359c0afd00c7ff4c5a34ef3b92248d5c192e443cd455b0302047c435bb500673065023100ce10c4e994f8ef6bff37f2055522ea44f39c17cbf2ab27c69bda9cef86c70c2a12a2bed841ee16daaf68ad5094e034690230553bdfbce5dee9dad001105054bb7e9026053217f3282fe2ee3016e38fe9ddc40a10ce492c7a7a1f8897c15d005f443d0302047c435bb50066306402305db8a6e0f23c8b00bee6cdddace927896a9d98e701dcf682af5ed4b1e818346c74289d69e5289b3928647ced6ac6c21e02304fd21b8987512ea4511c539fbe0df668940bd86dca6253958158f94afe04aa555a880633671c437e8ff9b053ffeec9aa0302047c435bb5006730650230296b68b3c47cd558a058fc60f00a939c0034f65ff63ff3219e514c7efccba132125543d3354cf564777d64ffb23a2885023100d13c080efdb4e34eaabb7f616e457d637db7a6e77e9905f704a034a96afb644225ac3365faa65aa4c506ef87e9785e490302047c435bb500683066023100f405a7fcc6256461f8e5a9bf873a70661f715b86162285c4d9cd49a348bc3c8d6d6be3105ac19b1ec16077baec235bbf023100833f7e012071f6127e2b3000a0736063e85c8cb4949c5655aee5610e52c1df37fa0c3ecd38bffe39d0951e788b9bc2930302047c435bb50067306502300134124eb27eb384bbfc4afc440f9e2580d60b065d7ea4ebcb9f66743b2868d8559d00377dd363544e7ebb92566a81910231008a0e7e8fecf7eb1c9e4bffe125e4836e1031d2b143a44cb4293f802844ffca0a1e9c0e37684ce32ff11af97d8dec5f200302047c435bb500673065023074b5186056395fabf643913586c8b3c38de5e124ce9c483215bde8884aac53162d93df663456d3139e9d579b0b0ac4fd023100af9fcc0b2b261eed78cbc7f764a14940787bba484d51eedbefe90eaca6fb729b64ec5471a3de4e0b57a358e6881f34ff0302047c435bb50067306502300db7a29b5c049546262a9fc471a0c97d5d2449ae6e6d8031d6e842911831c3a2869947e269bf759e0ad13f32e9b28f7f023100e5fb4f959c247a5f654fb8fc1b8bb4272f8102f7569ff5d1f4521963abebedb89bc506eadc1b208eb4467ea2e5a9ff140302047c435bb50066306402305b35d5201762753588611556a637c1f7135620fd52c8bf9e2e88ae7775d2b71597a330047f8d9aad12735c4aa60d2e6502302acdff201477095e75b682358448fb11d08c6e8e43e37092d95bb03aa3f5eb0467eca06d92e0101ae3dbebf865e733720302047c435bb500673065023065ccfed76d1632a448100077e5d669458f75a1ff24ad921fedcc5d37a4337a29cbf84486ca9ddd113411f4691769f0e7023100dc025adad3ccd03e261b7acc2e19fec3d6feb6c26838ef71bdaaf1b7380b90bccdaa4a7324f5e2e04eb6541a7afbde7a0302047c435bb50067306502305207ca4946248a97de0c8e3c011b0c96759a1bc2d6e942653b60db7e20c7037fdd74c93bf3b7b1ea12efbe2bc73421a4023100ccbf061be62e119e4b0fcdf94e73dafd79ae8f5e4be286c6578957c66808d1a0f15f5cf2659ac181c64e52e1eb37e2300302047c435bb500673065023100cd685a222d60a6c9979dc654a1eb5611ee46f404f9d46fc51f828acbe7918048ba04c279d9b74253f02556fc6cfe9eec02307068ee6423c64ac6bc4e2233385664e72a4873cc7efa8b34d83d1eabc61417da5ed46552a00e4b26e2de59be6468f2b70302047c435bb5006630640230517d2f95bc043f56b228d40bba60a1685ce81b51711148d2bb47f9bac4a199e95ecf30366885403481f84fb1f9841083023063511e5edeefacbcdc6116bb8e175c7ba13d7b2f0322f8ea382f0764126196e19329a8fc7bdd281ae901c911a2ab0ee20302047c435bb500683066023100c2e532eb363295dc048a60c2e923e28caf1aea397f0bee8695916f2aa47c913e170b8151e1a164363bf8045f7fda3992023100e9fa161497ab5cb05fec312e4c05c84ee3c21f56122b56ac3ce0d13e52741a5194d30abd1b947d88a2c033ca97711a4f0302047c435bb5006730650230174b844e689e32484853453b6106b26fa65b71f1a1a1f46b124ecb84371d205d8c2be9564f3bff14cc19066ff2759fed02310091b51b35d9a8165c9232bb2245dbc6ea55813f8c55469c0f737cd7cd6d79180a5b853dfdcde0d0949efdcbb3439bbc820302047c435bb500683066023100837708ba5ae792952a425071f02665f4d1eaca17b8f1ddac7656667b8445b3e1df7442471af9acc80b634dc894c14114023100a49d70d8584a7b5fa90bad4d7efb72abf33452273eb01b229e3399f7a8381786d31ba2b1ee9569dd4068b84d1fd68f580302047c435bb500683066023100fd926cec218179aad00701101efeeb1e14dcc63977eafb2268bddfdd438b058a4b7823a358b4c107c197131674e5ed60023100b248a11c83e68ab012438569fe534f6010131f8e583dff3c8f7cdea913eb06ae8befe5a0dc32ea2c1481f74eeaf534df0302047c435bb5006730650231009dd95e102dccf687dcffdeef3fa7be9b79f52d214c14c09b0b3475951e9eff3b1758825aeff6c1c33229f1a853a7657f02302cc5bd2de05cd0f031a5d29c6f0fa03701141bad6aab04e61293b3644f603d1bb5e048a20c7da4e287731dbeb1ab1d1c0302047c435bb50067306502303982732531f6d025c5474e6c6ef5cc03ffbbc9db30ef0d362a737ff6817896f4be5624c36fa189c4d05fdac157818813023100c49771ffa220500ff1556d0628b628720b6ac130fec81e9d0bd0ed6676ee51f380fca4efc9b4aa0e2d68c6199f4acbbe0302047c435bb500673065023100e70a101406ac735f1541284c093f65bde217efba0b10ffbe0953322a464a63c1f39bc61e7255b24eae17e5aa59cc0e5d023025c5992c07c11f289b7bd25283fbb50a342774f5c0ecc517eb2430b62e08cca875bcbfb6de17fb840267f5aa7803715e0302047c435bb500673065023017e63eb64d11b219475000d152b00310d4dd003dc69a759540b04af27e178c29a5263160102204fac54f41784e4ddbc2023100e41d8b220970a7250b22dea282425d7a01bbb646eeebca9d29ba948f3ecec8bd50b4810d0b2a92cf89c4210ac94bacff0302047c435bb500673065023100959fc2c423702b2c05f7526d141e77f953094b6170668a10ca5cc5427f9f650b100c22e082e00cac12c9908c5984332102303be8792d6a126f2a197fd713bb62b7c557d10312154c79da0e59f69ca7f991531c1bf7e5328a540f2dcabf8868aa5c3b0302047c435bb500663064023024f92b3d13e490c6f6b64213016927c85f7a8f70c4791180f3a51a0176d97efb5f2bae2781e1fe159455431a3c05edce02302e38164c388be289dbafa6ec9bd9ac4a6f977932823bdbe3e2c78b377e042ca673271f9879b58efde5838c451b0d5a620302047c435bb500673065023100f3cc64781e11118565ff7b3b55a90915c3e2295d59cbab333cc82cfb054ee44fa5e58a9d7b4df360f6e0fa0018086c1d0230303fe72d63899df3d3ecb0cad65a4903943de123138fd0e9e6b799f63ba261c238f020902a963577a163d5f85b86c8390302047c435bb500673065023100b850851f459aff5b7e4be009f14dc1bae241ee42cea03ed1263241f2ff21f1fd55530b869e10fe41c341f0c1475c1ac602300bc28307343fa4f244b298cfcf39f568f44fcfe27dca9848ba6ab931e10ddd6a798ef6b73619c8241d208641ca3cad3d0302047c435bb500683066023100af083df3248d5c8670e6492538bd4f1b4fda6d6ce15fd87c34dd4fbf0a37d271a48273075833f943f096089e2abe94b502310080f0b05f26fed6d8d95e9a5475b9ba23a25948bcb6145350a71faccf19ac8e3d6af6b73bd3f0b398d62be360b771677f0302047c435bb500673065023100d3caeb6d717d2416f7b4005dfdd3d0c28458e1671b06193ff76d8fb8422f3d7fa17707b888c05df6777e979ce3e617790230621d14fc9ed9e5744fbf167d0de49550ca12d26f1e88c366b06becccf65b8401c4d5c55b9f893f3ad5612a00d529b4c80302047c435bb50067306502305e5d2cd0613a1e008b9a3a52f5696a01d208fc60f570626095ae373047fb0c529c9b5e928b85eecccba325fce28589be02310086b5974e47ef680915a9c858fcfc9c9ad0123c45625ed3ff7847e93a8caf93acd72cb7dd307dbaee7415e66fa02dc8300302047c435bb500683066023100eba0b777e954d7efb04d2405bd7295c0da65710a5344a54257a4768b3a02e3712b0fc425c3bf6248c574cc450ee0f15a023100b43a09d34554d101ecebebf040abddfceb75f4940fecd4553e82ab0158f68769a8ff804b2cfd9f9c7339fd159d9794f90302047c435bb5006830660231009ed6771c85fdea2854ecae0c3978467913e3c695c8144f7910e29881f55343470c1280a58f519b5d9d81fccb40ca4ed102310083f550909c2294fc690238e4fbb4c5dc1b1fcc9552c6783650fc420d7d676d42af790d09ec05e52358bc815b87ab13b30302047c435bb500673065023100916a8a003ea8803bccff0a8ec31ddc6d4c011998f3836abd52ac91f89f2747f0e1b13f9bc07852e0ed93b0b34f8813900230663fb8e4143e02b5f12c5e424e2c323165332808fb7d534483b04df292e5da62dcdfd6eaaf0e52efc76ded11453e89530302047c435bb500663064023072c4c41a75c9e4429e17c19cc0904e5b668a75ea6f2da53d6c06ce108262c9302dc796865ac18d84bbd834d61f831022023024fcb9652c821ade9b83c940a48956b2ccb8ee94d301a8a94b3fcc094c27642c3def4e541354aeb21aa4d410e8e5dd800302047c435bb5006730650230401aa52749fd3ae4c906d0c82c8b9c1bb108962ef9f61564cd29134c8518dd2177384b21fd29175eb57b931c8fecc1f3023100a71eb8c351e98bdf03e2b9c7a8a8b109ed9e57bc240256ba985b3699c754a1df0fa616184fc491de8f91c2a07ae723780302047c435bb50066306402301e55bdf171878ba0fd121f421d65b19df0af633e8c768ced230fd9d2b56087178df56a5eaba07090204fed58bd1180be023050f4f96f39cdfb306b4182b1cb614051c95f83abaade3623a929b016f97122bfd42c797a9b8bbcf3d8dbbe8ac7de0fc90302047c435bb50066306402302bd40c26458789be7da7badfc6b264b8b89cd6ee97ec79307ddf2ef0cb350a80138f401e463eb2926bb5184ee0f7f1e702307fd88f6da7613ac032b0db6f3bd86df09eebab837796edb3cb1e5a8ef86492b199f79435bb79d3539df088c226d203d60302047c435bb500673065023100b2935a667bb989048afc56f65d622c4df31632d000c7aa8edf930da05fa841affdb127dbf8e269d47aaa02746e111ff80230020e4e0e8a3f6f7589f6cb51611634dfe891e2254b96e3de5ec73f7462399487902c26ad08b5d1259ca74f405f87155c0302047c435bb500673065023100bd2c007300613771b3e50f80c4d18b12c3b748ff935bf82b2d86b7adde8e1623c94f510cd0fad7b2126ae446d60415c0023011eb85cbf3b74c42180a99fa88e7f35734dae4aa425b257e13659ae8380c7eba1e6fd22a7d598410545774491b6ee28a0302047c435bb5006730650230793015f2f47948b08801b05eab5a361af3d5abd7f936202c2b493ca48cd1dd7b5d0a0504bee30e52c6b4165afea1961202310098a6b93d40a1fdc693a18cdd4b6a8d901716f384ec34e4e30ee0e079a0df35c553dd15d05f72fc870a2f574c8b8a6e540302047c435bb500663064023036aeef3481d717af29b71c91fd631f978a480af3c6b48ced621fd5efc4d958ca2737a9ddc8d5777dafa06cee90cb0bff0230296c826c09bd235e8d0c134da9a15a60934e19924cbffb46125241ba162d15f50114daafa904c41b7cad4982fbd628bf0302047c435bb500683066023100dea48f2cfbb7004d02d95c146eff038e1bfcd9fb5727540eac059cd36f858a5d11d24bfc2d058f22dfc9517488c1268102310081261f862e5f617a0114e498f81d8aa096a686fdbad2ea2af90a6ee4a9f78c6ca646704c4034235a1e9e0796efe6fef70302047c435bb5006730650230361c5bbc57f664a84252522979f60745543891fc7d46ae5b831aadae02e15b037870703976417a2ec6c71c9cc09f477c023100be9e5ab3fbf624b6b6647dfd66209a66476a356d45ecb9821894642fafd9e8cfbf14e837d6053ca93c2586925591c44f0302047c435bb500683066023100b57862f155963a38c5d9117855970ceb9aaacaba82d756b25baf6fede64dd049fa1209eec8fa19caf28b45d216af165e02310089b7ee7cad19cbac66bee4e0c4a0ef95f78372b127dbcaf15d9c5dcf0a5d15ff022e1559c3d7824fc4d14e8e047a56310302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e0949d624a41b27fc975324700d155582c93ade702c6fb8ea797738341f78885950d645bd2283596a5736c1d7f76f597023100daf759e0ef71b2d73ce0910d040a7866cd239bdf1ed26cf670959661abfa7b8296aa018c1cec465611385009599e575c0302047c435bb500673065023100aeab331d87b4dc9ae28d581120274f0a6d6461abccf79d4d9d48d7dff9347a3a0cf0bcb6ae0a256b5eeb40b5355c69910230504fc2f08a72defcebc180ce6f3dde86fd32137e4aafd2f4c2285273b818ad9ece75729ecfd5bd29400d757101440efd0302047c435bb500673065023100bcdcf806747eeb16d7ae6032a1386fc8fd8a9824ac1a2978806fd1dcec1401a6864b8f852c33adbf90e67fe5f60fae0b0230255684cc4aa32c99dda3bb7457bbc32b0ed385e917ae97902f9821ddf63142e8c55541317130500c264450935f5b72330302047c435bb500683066023100a287b3f3b8282dd2e750455415b04136fa20279b2767d2cfd8a241d9defe9746499ec23f014684dd90d6ecf61a075fa8023100ae766620e7898e925b775bac77c3d03ac7445a6347e73435da051a1fc3c42f12914a65ae56fd02cd4bc6f0de44fdaad70302047c435bb50067306502304ca63c02d0435d0ce4f11a32a206acee8a9e8ae618e2f51d2b892ca5ae4dfa5dc4bd8e30d2032e4f26617286a306c24d0231009a5e14d9b32af3a8cdf311363742c49b9385f77e43ead4d87a8a2395e1d76aea466ce54cfec2353c99bd4d147e85313b0302047c435bb500683066023100a6f0707b2a9be0a8844a8eb100f641ee4752959241290a3cfac8c32d025f4e4a2f44b390b73e4a8b1d2fca9ef6205a1a0231008be07782d7d8ac88772ac3cd1c902157ff6ce9b1959c10547ba4ba2eabf92bb05b7ffa93c9b0aa7efc1c300851a218de0302047c435bb500683066023100b1deaae3161784f30265110f66c52bd974d99df9e3bac4400e296077eb462093fc370a89d8ef50856a87eaab4dfa8077023100e178d4a66dac0938d7a422327abce7fe58b91e485fc84cce03b30446932546753412383e3228184145f8773dffaab0fb0302047c435bb5006730650231009bfa80117601f3044bdcc048f07f69232e6c62c58ad9267b5c66965a5b3cc8df837cdcf88a802d8811c840dc1e8da490023078e4312cc493e1b71687a93a8ee6904f06b0b651815b84f68e820bde95751c3f141beb093926d57f645aecc5570ce4110302047c435bb500673065023065d29949c0edcbc9ced92196922a984d8e4d5f74e7e987afa5d6cfd5f83e9aa550f98409fdc6d8080c5d267580425fa1023100eb5d11795d72b932d06dad6741582744a993aa901805d3af8a958cdffbe0bfa3d813ce6d6e960b8adf34ed06ba39f0570302047c435bb500673065023100cc068d013b09561bc497021107b8a392d15be28f58a44e69d65830e47804bce504a1cbac40e159f393bd158253f2de1c023048867ac5f4661c5f466c3eb208a013318a8d6faae676db15826dad067b800e5934896a292964ba90740ed8bd22b271b00302047c435bb50067306502301598c7fc6071f37bac793798a846ce9313db2a2def0010804fb5aa1d8dda1bd4c0b28324e3ba45f66769fde98d7086ad0231009aa7feed747e6ed54b17ad9b6332044978e3e977562d11018a2e558013964bb2bbf462538b46ad36cb4f4239617936830302047c435bb50067306502301ca02812df9f4f5792773cc12dcd6dc00d396e4194e549d64496b65f44d0911f8fc6417744915427a5852921a73f7850023100895b332b8c20fc58f20e5380ea87e80912f2ffa8a1dba4d9e04cb10c323788820894d87119bd7cfda19e6ad99a229ce00302047c435bb50066306402303f01d04dc11a75cb995112f801eeb55fa2ebc500998110aff113bac7c9f8a49112c45eeda9d972b9a4d34a0a2cfec5b5023036a2a7923b3fc6c8ebf351f49db1a0ec3a2e574ca737e14527fe838c540eb2ff0892b73b77fcdfb0bbedce198cbcf1760302047c435bb500673065023034efa56dcd2ce1e47c68d451ab51fb2d524d3147d9bec40cb3725de7dcf17bd3899e3fe61cfaaca3b919f4437f0ec13d023100b984835ec9ebffc4e0171ca77365b6dd3e94a93ee79a56693a2d592e3a40623c79fe9aa5c6c4459b36ac0372c5937f220302047c435bb50066306402303ae0e763958f08244cd8d5b19b52e84f3dc14262cb8a1d5cba3ffefa4a2105d9ffe66cd70fd00fa0ff30063746eeafb202302e2723fbc26e2a4fea2b647a0e107b339e6615992adcb90fb9cbdf46e98f9cf13b917a231b3c08a8478c77090b8ea6b70302047c435bb50066306402305328c88f1f03c6f39aaa58ea784cf220fca80b9b2bf1b0c95ef7163eeb282527b83343c3deffcf11ce86476271adcf8e023011a32e9fe513b134944c9c639e6e70db3a9e5760e66a555bc1ffd0f9c413140556355ab039a23b95880cc48fe21465e40302047c435bb500663064023005a080b7fca0275431c5a6338cf395fdd4646a0caa456b5f866f43ee001f448ff96388f36b2131c3d6e7040c1601631302302a764a6a26e7396730d0b4d36a37f75ff596eb4ccac3bdeae1261d76ebedf05abf97526c4bdc00352f9faa960a5cf54a0302047c435bb50067306502310094b0ad1bb188549d539cc890754ddbc5af6c1cc83827adbcdd2869a00086d89604fe4e37b31c3a96a0e407a208b6cb180230281f2fef394dde6c22e33cdce7353724a7aac045f676fe9f455969d9da3cd6a9ab41cc0cf842860eaaeaaa79c38c7ca60302047c435bb500673065023017f5fdfe8185f64bbfd1856553fad02ac15b5f273b44c26105af1ba139cefacc93a9c69aba4e04ca38e1261aee8a4d9a023100d5a5cd662bb35c51627b08a0b89aa5c8f66f5bf21e35f3a44b759339acc186f3c29cf73445b22edc44f59b4fe9ef0e790302047c435bb500683066023100a9191a405c3d8c756918a23126e6d894021f0ba640a86ae9c9f33b8b77037725ae913daaf078b0b556ef6f6e572fd62f023100d033f1a5de9fdc6464a0d973b68a51eeb76ececb09ea8ce7b27b690b2ac2cf36c0f3762f873eb9f85c05327cea0f7bc40302047c435bb500663064023037a498239f44ca2953a1129ca88358210b428812c1893982a9908f7de33978d4824dfffa4b840c7dafd345c720de24b9023049c5f179b3aa32340b8c3e473e2839dcf7bf426dd82a6668ac1bfb725ea5e13411b8df5f06f6b657bda7c1163af143f90302047c435bb500673065023100a12c88bd0f4d8b6d343e1d4d410eaadb8504db59bda88e194f96c38d58e1df443642c272e02894d95760b1183e99fa1f02305453a02710b624abe1ed2305d0547ab6dba85a9920461c3f37763c16832300c55529fcab91e9d8509ad3cd29633177e10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230333e61c7ec524305775863cd52aa08a7a3f10f5b0c3b9b8eb3f114160276dacb974c98814b8e3be57075e2e58e2471ea023050d1e9b7235adcfaf9356138a3c58ad37811dfc76dcec5c1bc4469bf777cf4c2750c907afe177261e3a0e0b6c89c9e350302047c435bb500683066023100d666a9b67d7516ffec631d5b2932dbe93f0b9cf5c89bf7e478841dfe305ee3eb7996836015a94185bf949c5dec2abe70023100b197fdad0df4180c2216d4b12836b9788926097cac9b7ed1fa16d635b75976b12b88c81ee8e8734c4395c5a2e1309ac60302047c435bb500673065023060bd15330b96da47b55efc14af5e5ff2ec82e083f198b450990dfe0c34f446932a4521b96e1741a5cca91bc1db0133dd023100e2929d1b8787d22964f4601158bc34df7f9c56a21b286c56f68c3c53f30508555d4fc7114b13a66bb24ad8bfb10d74d80302047c435bb50066306402305bed709f97e47f37759ca73a67ead172cbb66afe9e66cf3445ebdabb4e8273240bbd77f98a4e5a4b864d2fcb21318bb402304c3fd15ae5b51a4640a14ff460f137508e3ba4790d46902095f97b00ed4c899b4a42ffd5c77f2bb6e434c8c9072ad5580302047c435bb500683066023100885f15ef02bf325fb596da8e736ddce8d2357903e2fd8f7de4fd4fe5ee75ca782a5ff374106906f015eb20344cafe050023100a3fc59538fbba382e6185b995ee0d53dc77bfeed1106fee5a4d06198ea29ff34a7a6534a3513a27a564e8aa53c09093d0302047c435bb500673065023000f0d9f1f470f943fc0f3fcf0ef341c8c13b48150b3ad79e37a54a3cc1bd203f5466b3393c71d961ea85b9e12c0de833023100bcd4dc951bbc7874a0759e50637eebd604bbcf26a34a530e7ab0674913153b34e8bad7e1e6b47cb12298d2a8fe069d9d0302047c435bb500673065023100aea0345f2c3071f9e9281c03f0265a67ba2abe7297586345b796424eebf36ef6cf68f89b074b1791ecc7a1506d6b3b1602300aede50efc770228b67a592d1884a5ff1b782314689074ec1091ddc980138c8513d3de54bc30ac30b9ce723156ad8e3b0302047c435bb500683066023100a750fea3a74b8d2274d2afa24fab0edf4c6ba4dfbcaf47dd6f4654b92419a33bf42cea6577d19119ba432cdeadc09b1b023100e6343778a746f5f8400115cf2caa7d42a8a400053bcb204de8db67d102eb80b57a8fec9531a855245972e9248b4cc9e20302047c435bb50066306402303d02f3d212e5dec0d998864c26e00d30ab61fe78a74f92c88760c82bccb440caa85d1006f7bcff0080cb46997c0eb37602304e7c16e066a2c281f72fc86c30f054d4ce0d36cec18562489b9fddf52769f50a7b889b98545e1521e2e555127176b41f0302047c435bb500663064023041ce02047d01ca274026782dc29958455e5fe92a7134ebd11ff2e8bd2d992fd06c4766694b49e81b81fcf0b45dd792a60230301ed127b22f1f894f665ab3213a76170fd9f755e95b74a91b096093eeb7ef8547a1db2a390d79cf722b839ccea004d70302047c435bb500683066023100cd9c737a4d411b075ee18ec8ebdbf877eb6cc14c7a63d4707562428b67349406d2f0f6d69ca7329400e6af01bf91a207023100f2ef4e873c7b24aef5d47d5472882e55dfa0ec444dfd6c4f7c2abd0af5eafe54fd36d752a228ab1f38c3d43cd17fa9890302047c435bb500673065023100af89d877768bd591f61c482a8fafca9b45f9ff7a91127bcb477d9c389e6814383cd9f38947d6fdab6c00074bdfb07b3002307dca50fc7791aca3717135be856dd7689bd04720ff98e15759658219acffe81f43b2081db8344cbc0013343259ff799e0302047c435bb500673065023079491653fe99a4ef62fb3d7d96d5da79aeea3aa756d9b0fc3af3f31e53a56bf7f55c7fe169996f66d386b584fdbec4ac023100a9eeefccf47a2fdbaed9806f4302bb988b22cee00f3417938582c909dcda7a8e6553605ebdd4cd5a6552f370a2b98d570302047c435bb500673065023063b01246f19fa957bc23cd1cdf8ccd241e449e22c9cafb38efd068c9a040e0983210840315e8d312fea50a97feb37a53023100eb19fe91b7aa1dbfa157351476d5c540e7f415b2e5b3e9a6b65334859d481e725b3daef7c5b74ca855a0fe05e94ac07f0302047c435bb500683066023100cedc0f98cfa31ef4e03b000d3756f679d525b7915385c9f7a9de24a7c52e069439083f5bab19578245df572b9ae342e7023100cd703ff07391dfe865f850f845781e9394c1349fdfe78dc1285c6377840e13cc518627a03db59987fa742c6f34551bfd0302047c435bb500683066023100bc0a833d20d1af674d68079592d6c2d4707531635c86f633bf74bae2ee6c4feba8c704564378a6c407c45cee63b2f011023100cb4151fc555d53cf147b972db522a7f6d296591c3a167e9d1f6000aafbf3dcb446e9fb12222d9e0056f72f1556d37adb0302047c435bb500673065023054e239b74062ccf9279f1888ba17463b79557bb116aa09062a9f028c92ccfd097f465de3c454b050428d2431899e1af7023100e0d8add5b3411a36598e12b6178e3f03c1b301f9c8782912e82b58013f3b29b05651d1ecf9cb81d7fae92705771ab1ff0302047c435bb5006830660231009a4d4c7bf42491a3ffe08ddd1d95a655323dc6ed68c9c4c33f5b2a2dd07ba29a7dd220d68342674a9949f64a3872b928023100aa1bb0fbf001ae9d9296cdb267e1f386f7d2760da7663c3f64f0ba7d0cdce5d59939900585bb0c277a64e6ff0a76e8bc0302047c435bb500673065023100cdf56ab0d178b5e149651b5b031cf86f56d39ed79a8c40fc059daa1463736ce3b02f63df5b402f4682df8fe84c31e4cc023064c312cd394e3e5fe385e7df7951811bfa3e8414b31c4feebfb0cc3159cbdf03954d8f4e2bb3c026d29ea9de2562c92d0302047c435bb50067306502310085c0eaec5259815a6c1a9b7d08f64a286f2fc97e0b900fafdd746585b83c90f3ccf65e7a56b397e847d334ecc64aaf4a02302007d4c14eb237d71893852b3734c005297d8fe0b12399c20f699973dbdb2d4813304ca2b8239886f206cffa6f84fc4b0302047c435bb500663064023034de7fcf4d5f190e820a995314f0eda5acc467bc7cd5c643d960ead55494ef16399bd9ef06cf164076a43742ad19c9e90230062eeee43ea97ff7d453d5e978c22d64b91853bb6d145c90e53644234dfd2eba993bbcb9ed5bffd373cb8abc3c9509990302047c435bb500683066023100fda9d2064c878a8fd5ca8d576b6a0e64478b67c4ec9e5181e51298f7f63b0b82fbcc971fd89fcc5081191b9f470f0af1023100c55d82caa591561f35cdb6d8b95310fdb2a05aedb6e48ed5dccb5311431488e4c57d8c1e528cad31bc42ce8d37afcb8b0302047c435bb50067306502301c13e087dffaee161a2959ea2f2d582d43abbca70c66b5271a841b3e8d8cb81b60b846b798549180fbb0efd33160df20023100c0672cabd5454f11c82186836eb525434d2b453543455d8f91e50703b5ef764de875d4a1dbf26b35f05ce0a2d57473260302047c435bb5006630640230614d376fbe7cd614ad5ff33fecd7edba14f991389839f56a8749609bdfa501a61226b8c51c7c5e1e16002e305891cfe202300208f8e22768b7fbdfd9041b83d8951a11710498b9a8f0fdf8b1d58fe5d65cd25337bf832f3a38058977ab954d332a7b0302047c435bb50068306602310088c2d68d22b7c94f14abd23f9e628281809e819741f90a3a5a2699a5f048e8e70cf909348734f5102c7b7ad530259dc8023100e315258469b18438536004102cca6d0b53f0e1f68321d60c83cf1bc97b2227254ce3a2e0420b3f37bcb34b626c9fa2f50302047c435bb500673065023008596eb6287a3cc5a2421a39382a87df994c3f7ab0a44a50787d9aecc0b113756ef8adc7e8f43edcf8850b31d254310f023100cf183b2a1ab3112086e71a8a9105ef550a09d203b7493e891876b8259bc9d0c960686e83edf39acced2a3a08a102f3ad0302047c435bb500673065023100cbb7b3920db0d862486ede7e01e10a3aae0a54f0ffd6f63fe36c31da9b0069cbcd763af55068b303c57b1755be63da9502305f3fe5386d4ab98cc3f4128a1ace34f161a0a76e91493a5fd7781a4df056267eff795574fc74b5344fded3ff71eb377d0302047c435bb5006630640230518d1399e9518584942824fdcd627bddb7b14ecf28f3747968dd9da8f7fcb29223b6043f97c8f1540c7858d963dde2d502303ab7f4423edfb7ad9af393838cc872401d89c2455de9a3303e50d630286023d3abefe3247267d13e89d7e65e3c4e0b110302047c435bb500683066023100cb2b1bbc8d68c73152e0f9d98727485d1d7017b42ee69dc6236446e8156cbfedd5fa1277f2cc1b611372f53cc550c5200231008cef08b320feeeece5db05d0facf68fd7ba18aef7bcfa65d82ea0b77426f20d51e4dcea3eb423e49a1cf5ec1bc11040c0302047c435bb50067306502303ea6beeb94be00467d7a02beff27cf6b6b3d966d65ca2293a3a43f8b3c8c6e2f35299d386104c811cadde9b4e47602f70231009be9358f65ca2c654c9d954a5ea19071e0cedb9116e7799370696e313fbc9cd6e39c028d558b807e2418e14fa74d8aa20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a3aa5d31a137c561c3b11e20579b7161f55427112c43c60651adae8a13fb1bd43e08b71f807ccab9c471dd913a5ac8c60231008914c6fdc1c3d7bd3b01a06500ff4ba392a1dc8e2ddd02f785c0666aa85c8f308abc7c9f4f56290a3189bb0e88561cf90302047c435bb500683066023100e5c9530070398b0b17c49b1087dc66dc15b90d4baccdc0953f6c1478da4d0d03075e9378275db1834f680d02448e3701023100afa5ea52053396fe88bea30c0b8103a5f3144c97c121644ba66f9ecd708fa45c1d29a4e3d842cb480554641a1cd85e160302047c435bb500663064023053cc89448f3cd380eff5ac42184764d54cedc32a17f7ba9aad1064c9d737803a799f8394c48bb8695739617dd6447feb02307e172ca2db2e1427abe731dde033f07f9db8ffe4d313426f77867109affa67d8782407c04421d19e7e2c8617725a05c30302047c435bb500683066023100dc980298ff6b179bc95c6509633e428466232c19189395e5c8af9941b20e7c44ff94828d5080bc87eb007b5f988d11c0023100ae5ff2a38fc6cbb59af4ecd99507f6a4478e186509680ec886ca0b9cfb0c97a1111f1fc9e1b0f12e59048b21be21c1dc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307ce8e461e749104307feb075fc45421f721aab5f566276729723b5f5aa366521ad3f391b044fd0751517b021664059a702302e5541fb73562ea6ab75119802cabc21d6897d7a1abc2cf36170a5e0e5753c186a7338a15148a5a6f835b3cb0bfef0e50302047c435bb50067306502300199fbf053f0f8aad7ec5f13c472dbc4c843f4febde2a67ad64dde7eb3f6d23a0fa212df035ca6b8aa983be8d08bb005023100ab2898c1280e48fa0d3ebea22ad3d31d8c6efb18ebbe613d7db319cf0f1312ae9249a8f8a2c778e4fba13fcf95487d4e0302047c435bb500663064023057a67f71574321a561666150e30b6bb030acbd21b0aea97eb549a1e3ca205f81a9da89adb9e62f1988df255b4dfd517e023017ddc63c9d275e7cf2169a8c3646de89cf04a0aaf244ed100efcc4d4a379030ddb14d0998823a3543f06c748fb1ea0570302047c435bb500683066023100cd2e9256caa20f7db936375a831fc9f5f7a2730faf1a371477ab0566e2f8c4b29bf7db2ef678f80b240065717b70065d02310090c126de7204920993db990c0a2b72482ea37e462030fcb382d08019a66d4792055cc8a4caf3e47eff8a627065e810c60302047c435bb500673065023033774a1bee2d72562c93b5c21004cc6a66042c049c2c902f0579f21e69616ac252516ba419faf56f40e765a970f97de60231009af1e1a325b9416cf4b415e3925abcee1bb4d5c3b77560b7507c40ba533d87559fb2a1e41ac6ae9eb06af41b1fef57d90302047c435bb500663064023068feb46848bb154825ffa3e6bf96f244fbb58b5bf9cbb57b4f1306698909d1b82fd701887086e1f07482eacd459412c002304adccf758397f6cd78c135e8b88ddd5e61264652ff8045e118d452b2233a0ce20037ea4bfe5bd03fffc99be7d510fa730302047c435bb500683066023100ff5503cf5fecfc0fb9fc7690a7fc0d337c211f7f9503260e0cd01af2cfd6e11dfbd0ad389ccc5b8968d5ea73043071d402310099f376ae5b87df94ee84a79cf9f479254c22d9d755c38615742b45a8189b057181d39fcfda6b2afe28be0163991b76800302047c435bb500683066023100e6477671ac383c4eb162c5c5cf01401ea4848108b0123764ea04eefa83dd7c68bef60a97f9852e98203660d912c84a2a02310093a908bf2bb1c37c1228aa3e5ad672e2ea7e2c7d910a33a3657d6b57c74bd76659681580ab88206e0feff956c9134b710302047c435bb500673065023100dcab350aa93dddf278789661364b4aee52ebfd49ebcc110eb0c69783699bfc08eb36e300d25fd6a7ca755bdfcdc49a22023033925b50dc2d706539252a12d0a9d7e53eedf8006d34a723b6bbda42e4ed1ffe66e7c153065d641580152f2dd0c9248e0302047c435bb50067306502307653db478dfc0985d52a456242ecd55598535cd170d2df6419785816d46d975688abcdd0af38f4bc1af10cb6d28ebe57023100ed4f7108c4837892fa272852661fb93c3dc75afaa432dd20613fe15610b25679410adaefb8016b6154fd2dcb1db399140302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ee52f0bb10b02570c0e285a64cda1c2c1a218b0af9b5dc1a0e0968d2122a67235aa7656e291c444800a206b3b20fdaa2023100d3c38325466f285b6009f1bb8642e63edf8d39c2f7986d752dc19a72c57b0a0c20f7f13840cc597ca7297d9aecce64cc0302047c435bb50067306502302f1e208088babfbea9f728100963696aaf1c0b10cddda2b769a4cf16893a0c9a2c6db64768cd7f1ac8d2cc712b61c6e3023100edb6f22930ef9ebc9fb7aac4350733f9c4d1cb187be44fb3137857ef80baca9f0edd4e695afc6f09f086bb3d23f5ae5e0302047c435bb50067306502302a11ae5c96e62b3a171148b6461833799cf50209176b47f63df61d52776aadae7b4ed407c545e100e26928ce7a8aac43023100e04ffec81c96a761e75f915abbec768a8e04ee8903a8a2b3fc98f6fe3ad9baa09d31d24aab7adf5e06a05eca9bf48b150302047c435bb50067306502310087181ed54ec1a6b307dd3d0fe5d3662b1e64c4509a1f1d9bd0e60e26efbac6d713204f484a6931c5e06ab4ec7b68309b023035c044147ee80c7b5e6e96d0e217459a256102cd231a0b52c3a1b92b948ee09b578add99d46e079d709ce98a46f0ef430302047c435bb500663064023046bb0431c82af73a7b2592c9c9ad80114c3348dca24133a7970e9b1350475686229444b72adf786c0176518c923ae585023045ab29b9900dc1801a5539105bc77688392594876f3848f06a48ec15fb1d93ffaf348cf8e04d9c966ff907a29e9a0ba70302047c435bb500653063022f2019f4a85f57a746fb8774840cc02719cb8ecf02113c4ec4915551b04e12ae7b45b4bc04aab4ee06ba8d846b2c5b2d0230111273bc3df1dcf75f369e93c9ca617e90eb180cf9623f17f4be6a0883922526106161656f363a275011bef386ad32960302047c435bb50066306402307c9462e4448addf1df3a04f02733d035056b5b2d2d6d1cf562b22c6ecc52fade9688704ce2e315a2448a379ab8d6f25e02303317a7ced751c41c926a68a1e5f507740875d47f1c175792e727a0e472f4a38068d202781ea5f172dc2eaa65583481b90302047c435bb500683066023100e682d2723ffa1b6bfa601b0f5ab987dc92d9918cda3a2d1e22903533eb7fd885065007a79b259b7d26e49b9d81f7c469023100bac2a66a1ccea6734ebc908dbdf41123d44e6734542006431117fadd3cbd4d0934d7131f677ec8392dbf5f5c783d2d320302047c435bb500673065023100d213d58ff889f268fa0eea4e7c60f47934afa5834c3dc5ba8ca477f8f53b485523027479e5311f98d6160a9c0e6de6de0230511adda8cd1d8c72a4852130676f97428f01f76593dae0b5918da408409fab2e5aa71b9b84377549c73236f98c67d4320302047c435bb50066306402307a093f209fafcb594834b909ba81076d62abba9ad533e3e919b9cbb82c127a434f56a9104198e41cbd12678cfb4a1d410230411e6e0002e529ec09d3c13f38dce0d82e925b9661b3dc03b914c260f0f7a2195522886c0083f3c6284595447cc8f5a90302047c435bb500673065023100c8d8d2554d12ccfd138b51222c628bc184f7ba40e5ce22637dc35d4628c0b330e8bbdc875b74110a18ae03a1706fe9fb02305b2fb38a0c13f9ff2083525511e25cf5b7b6b42b32dbfe54b42eaa8bf26a23007116bdfc8f03bf2b285de7729f740f0f0302047c435bb500683066023100fce8238fc744f2ad51161e874aa87a909430bdb418f4a2ec4811a2df0a92c5b0dcf6e79173680c5b24757f056a86390f023100f108be97d353645de80002e3d6dfac3007c2147bd91c1742412fbf0f6c53be3bab784059848982d030f803771cfe7da70302047c435bb500683066023100f82303ac762f9330fe5bc6e612f82b3c785c80893264ab5b3d96c2e5329ba4be48326df649e351502546fe20c72caa730231008b533a39b60851d39e7040edd1608b5ce3849a875aac3b2c9c6677191fe4cdbbf7392f97699fb8871af97cebfcfb69ba0302047c435bb500673065023100b28cf0fde8c1d2b160299fc21cb2dcd234eeefa79af720d8dbf682ef2666147f69fbfbb2a880ddf7c2414acc274fc04d023054b800e6a5e39e2c56693422c3ca65b48de7d67649c1957c4bb81dfdba4d5bb041ba50a80bd36e515a54432ee5ff81b00302047c435bb500673065023001ff6890c36c9745633b14b8bfadff0f24e4ae67a3cb09e740707d98f377a6ac1fba7702faf26a3f989f5498e6ec4fe6023100db4aa28e13852ebe4d45c32916ae94a8762117096cda10e0760c674f2c8beb7cdbb852c6c84741519df81fd32e6ec2a50302047c435bb50068306602310095dd8f2aadae32ab53b2e8b8d07e9137b72278491c56ae87d2b8d3bea5993a0e352ca9ade8f669244d1e5d296d0b96e6023100896bbabdd958c81a974efdfeec21e12ce09b1944397519c409faca9dfc34bebfccafb5399e052fe7aeb84bd41e0163d70302047c435bb500673065023007a5d00b58d3202fe225df5198d5486bdb1e3f1e11ff4904c98169c882da59fbadb9d60de188d64a062c3bbe339fcf080231009a16eeaf390e53fb1d1ee3e6a7a64dcb7db9c2398ed6d166159b3f2d39dd49851407760a70d53b4d0b1bc6f427904c100302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009c2d496e63995160a3375b5353513df64ec320df9c3b11ce16322977528de6f8860313bfb6424e69ca1dd63d2e58509c023100ce25938bed5f82aefc237e1b8b3094ad40fe445a30af2cddddc3184bd030972a5e2d90e5d4b7d65ee4f267a330d91eca0302047c435bb50067306502310087021845c9d852d970f0332eb3f51d316a60a93cc334b0d4f7cb42926328a181565eae480dd77ffb7cd2dcfca7d72dee023009bb29399ad3b043037fdbe915aa7df69e70444934c1ef52a2ebfdfbc771d71712cfbd3f6c275e0cd51fa36ea12fb97a0302047c435bb500673065023100839e315f221ba7cc11d8a74c9540c1788fab56dde3a425124b6fbcae0ed293324b3ccbb0511c392d81a242cfb059112502307a069dbf4975fc53cff973bc84c1f7f45a0b3624284bc18489cb789dfcb1614ae2723cc14340665fceb5f0bdfad75eca0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008969768ac8575fdadab76a9490113c7afbf8679e534a28d4dd805951a7d720443fa893026d6dddf6967404afa05c41840230731a387ff27e6d2e1a8a81c4f882d2e867a13a5288ad6413603fd3e4e24d2b8775d7cdfb530e287bdd2ade9b526958280302047c435bb500673065023100a8cab552c10289d3534e4bd4c85744fef29251557a5b37d13af1e7277376275b77924767a268c9d5c143a16e7c854136023079295b9cfd903c0f99f6483320d951ae19a984d7bc996cb68866ede2fee394bde6aa1d98f9e01d4de899935a926972570302047c435bb5006630640230387a419743a2228df14fd6e08ac001acd41836d6af11acb2b519e334c689548b9e499a61538ebdad14e59e5d191994da02303760789e2200a2416f56d1c31f64fee41149bfa499166c2dadf2e5fd3a31e221b7d3ba112bb9238c0d0a1b2f6152e7190302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230191bfd5ec433f1ab71e49d790c198782e590844ecd2b52580da3cc218551efd29529d1335078ab9ba408972f35b0b0be023100cb0f3a08b5912cb35a15e62cc220e400f1a600c7195319efc4794fed69e33338d9b7572b979b35a259e9d39b4e54c9dd0302047c435bb500683066023100a3bbf8433268626a83d885d2824d8e886ea97ad675b360a43b7487039dbd43406e24d48c666d390f167db1d1a6751782023100cec050829ae524ac921c663f13c10d7c1b9acdef200fd09fbc4d7124ab6ceff12ff8444b103f3ed1b6f92adb8fd8bcda0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ace7c9fd9a019e05a9c9d1bc42245d3314910e3c7b700edb43088155b36cedfe0afd859515246a569bdfce9ee6f3023b023100cdbf96e853bb57db4619061fc3b9e541c2f9449510695351200e5d445395cf7f5f42df9e5a418832ec9c62ff902e94bd0302047c435bb5006730650230361b30874e5d3b91f5cc5e496262c5356b4ecc737f59095cc93a33d1468350f8b87c3656b253d3189772d3837a70a69502310087b4e1bf04d21a3e793cff7965022f7c1539a84b34befd226f98bc88f6fd1ffb6975d822a3582db95287b87960424ff30302047c435bb500683066023100f3568b26d4981ac8fac749fb2052e64dae72f134fdd91646017f314109df93e55a6006166a70c1f598c25fc8f40c1d45023100d82de0b372118d49316e4d450788103eab382b00b4ae138b21b944e658acd01396e56369e22e974763e1063cd5322b990302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f88d603744397f3e4dea77b8a06a02f60eaeeeb4066618f79d96ba203bf4a52dc71ec9fbe4425a318cdbf7037af6f6e40230250e45f198a27008aee79cea18195e4c82a9f2eafe0acd53b42732d63e86c462cd5096b996fa8c8a69f2ad896fca02250302047c435bb500683066023100dec4893455340c12a573a4c788204be42f8187abacbdb6ceec2106e722efa265871941fabd7285d4477d803eb8336d3d023100f06359eb384972e27444f35ebe125df07c70d01313e8a76c999116f02522387dc51bcc90859d59bac542723f9812d29c0302047c435bb50066306402300bd29729e00f96be24ad50523b4856c34024f44fff5cd674762c4a652a3e720edbc97d2e0349d0654a7b73666f212d3402300fb65a18f7aad3271177d18ccf77221dbcef1d05ecdc48a1314e4a1fef33693177e82c48982bca6b4e2240b316194aa90302047c435bb50067306502304434e128c377b19865d3c0264425c566e32f8216804858ae3bc34ec00c4141e78230e0d53f1804235176218c26051395023100f62758dd3908bee67e735a6d10f57dff826509f1616b92ef24e2658cf340b0da27f41917cfd5e5e028f5c9e8397476990302047c435bb50067306502300e89d0bcca40ab645a44face464b8c68334e16d16ae7989fa46b8965650929d7c0dfddecc6d693709e94da5a727c8da4023100b1f57537c9cafa2de1f95736d8c56193f4529add5e78add1d90d555371df0e01ceb7c036693d7a85c208b0ecfc5acb860302047c435bb50066306402306a89a2057d282eac3904c70a25c4e0cc0117716eb05937ec2091e1f8061734939ee37b2a4ce024720797483f21b3a129023000a7e62d13ad8695b30d72aa4e63e27de96c5103dcc117a56c7856cd124403e235eaa83badcc73891e5626b4e5f429e80302047c435bb500663064023053db1809814e17bf72692e6eccf529fb53bacc39b15adb22544028d4e6f285b3bcb6f3fc1aeb9da89a1a3c8746b5aac2023002e69b3447f503440a0beb0f80242595bc8ce3a72cd2f249273de3cf92afc43a75ea549f863563cd9b2a6b0a621d14860302047c435bb50066306402305827b950466d82684abd17b1068998beb46808b65914e533e69198bb379bfcf4acc62ae457049abed016546741107f5602301b8547d24904cd199bca403a27b6a76b2eac8805423c4f1888118ec154b30ee1d20dd52cb28c2fa0d91684a2d992d1e50302047c435bb50066306402306755a4de379dabe36063feff88a765d0608540834f18ea4ee0324317063ab1238fc3110a763e26038493773808727bc902300b217de88f03d462b552ac992bda5f900ffa2b3b0fe26c3e858ba306a7add4aa14698369eafdcbaa4b90e17f344dee550302047c435bb5006730650230310ff14180aa81318fec7f7cce14f0d66b3312d5db8cf118e8e4b2c849e7c4d41b096014be6bae6cd64622f6d19dbf84023100e620a9282917c91dc249115da54f049ea6f86c717108c7c206614a051b320a4b7acbb315ad97dc7d8d9fd83546f2ebc40302047c435bb500673065023100cc19be322297bdcd158c07e35e62eb10fc82053cfea6b3b2b1bd4e14c601a99ccb42f672bb64df53e41707b6c4c71fef023012ef2272f753a45c9ead418f24f30b14298ed3b0ee2773f10464b26670350a18e882a4c2849708566308e53e8bb2e0ee0302047c435bb50067306502303275030e707a292d19bfe8483e77ed5c3d8976391a688b85a4e0a5226d512fb88ca173f8d7a7d0cf751866637f995b7f023100af62fbe9b728315ddfa9e68b9f27391db6ba7fb02bfdd8ab1896913a21f8d88d8a079e11509e0a5e7445b34f5bd03f1e0302047c435bb5006830660231009af1e46c4a4dd0d6c18bc2d5ae745a43b3af32d662fc487453f495d4818373980e835c76b3f6addd1e7edbddef975c43023100f826ae0aabc0dcb172937963e2866cc7b5712b27aac5f3155e4953a9129c160547d1b70f39056492b01734a50cfc75520302047c435bb500683066023100bf6bf91afbc70ff03c811b6b347a382e5ed8e78459f3992b051ecacd467fc20e8b63c04ae980782a048d1215b009b31e023100fb6652d59cd7373492eaa9000ff790e91662e50d2eb09c1c474dc3105c224fef729bc027644370c6043ae3a974dcbce50302047c435bb50067306502302fbd1f365905bb8b76629b551134d186a632f88ea172e2a907e1d5c1bab43bd4a91bc5b55038be23cdb6c26455079ff10231008f5622ca976a08f4ceeff9f2c368123bb5a3cfe80adf7030733cb0c5723719569b309589bc588b9179f2cf802e3012e70302047c435bb50066306402300d700d8f534f89d25ee3ec8dd31363e792af64e7b11d949ae1c06c63be4972fe8c44d2fe448fd4b0efc17e728aa662d1023049d767a6c625c34dba7c0e9e18179e5799d752038861807f85d00299f94730c877872f71ec64f5131e6c9721e898062b0302047c435bb50067306502302abb8c27015d5488c10c4dcd386cf58619712856598243cb378e5d44340ea1d4880b2989b5d414b5d3ea9ba2a7d9f4d8023100b5dee9b681aebc05ba00337bf390556bb84a695818aff12859cf77ec0baa5fc1e5c2b8ed59965ddecbffb10be7059eb20302047c435bb5006630640230689fd6d143c9f668d0be985ab140eabe285a36181b62a271318904ef27692f88deed9511eace9bed3070802cb0f81b59023057e7148d2f11bc47d11524319a0936966053e60038e30f37ea482cdf90be9515d9d20cac4697f5485038062a5f14965b0302047c435bb5006730650230507cd74275cdf99bb85f8e9bb548321f8c10430e50df85a4040d000430e1e274e39b97d2110839272298f273ab298711023100d185c818ae251f9903ca1dc8c623d5a9dbf16596ce8b16023955ac2fb892672c3b01ac16cc0cfced67d9310219be27210302047c435bb5006730650230717f4e9dff1ff7e879670edad9822ddd306fbf0850c282bbcb14ac258b49a4da93dba6ecbf462edfda8652aaa5702121023100edc886d463d6ff623399929793948e981f0eb7f8456b89ad9b8f25e1e4287ffd80950a7b527750de7029a83e685de94b0302047c435bb50066306402300b065533974cbf1f6dd1cc4d67348a1d293d09281adf54da9e4694a951b03d7c30de59bf3ba6ea321bb0a11232d62f3f0230358872f76ad77d00f106243b927eefad6cc849ba7f1b0398d8396cf7576b531686a887cd19c82f7813aade227d9f930a0302047c435bb500673065023100e093514b42caa25aae9e5d6334dfd836919df2a77c44e3983231508fd1dee72ed74d002884b6c3a66588068faa5805a9023073bf076cd65f4c4d4bb3ea0d951fd6a2e2875f91caae9d05f5882dd2147c36dd03a6ad5572a88f28d210229704300fa00302047c435bb50067306502302dade75d43420c00df184ebf9bf720c8ef2950c0ebb1e058cbf94bd8f59f8210cb626991a675377ae85cd74a7d09b962023100f0530560cce3d60283d38b903d92493d03db983b3731a7b44be0192540aada8038a86cd2fd92e3ec7c38907cc984c98a0302047c435bb50066306402303c9b82bb6b1a3006371228a36cbfc443bc3e7d42c154e62e4b6d5e54e583685301ff27c7abf09c2759745a8cc112771a023014b3ac55699930609bf10d60a6e76259ad810b75b99a4eb57af7ab4f0e41e55d5b6f9462045c3dffdd6241b22c417ba40302047c435bb5006730650231009a6d177beb0ba6ff55bc1daa47bfa99f0840c22f22b21bf4438fb2a6744b8e92b53cd151f078377301f51eef9985c0180230786bdcf7671f77196049c93514b99831439dce35e5915abeb11af08050992a527ff6917c3c018bdb76f8479701cd2fa30302047c435bb50067306502301a1cf6caea71d1b98c1e13d4b54cd6eb4716dd5f0f89622d98bacf79340dd7f0a3a54ced6018c02cd99ce16e810a136d023100f0fec78aa0e7b90a81bef09c6a1c1cd39c9f805d181650ecd003d5ff9ab63037a07faa64abc77bbae03c0497b0a31f540302047c435bb50067306502301ae3ac3a01706db2cc660f7f0bd6d476614bb787d6ecf4fc8c2eb1b02a5994e076164f91ddfb521cf06e93945e092ebe023100dd8e142debc4f35185fc0d4090e6ed33a3ab7cfaa9dfd5e1f7d066ee5dbf5f86cf5f493474267ec582ef370d746fecd60302047c435bb500683066023100cf7b33f86f490711ef28b30ec3bd7936d62b9e4688f28db7d6bf6230e4ece5298760213037d8ae626c776b1684c57916023100a8d26625cb65f9c54f9d14564304a974b5a77f6d02d843ab112eee11e8fcb7a00e26fa7822fa26bbc041724bd25f71330302047c435bb500683066023100d118391665e956351646a0212ed8bf8e4fc24981ab18de7bceb0b745e5da482cb2eac0dcee77ad1341bad544bc15d9bf023100be52e1560cca8034db424fccad08db43765790465990ef3dbda743028a8f2e110d90ae8da4f0e1ea28827d510209f5450302047c435bb5006630640230273686792b26943a60bec5ea730e1e4bffd312c082503971b10943cdf5cb4a7f0e963952141fc2afbdd9c93561dd9928023078b2d220198f20aeaa9e79dbfc69477c19dc520fcb6e0cc9c539c51e43b603d4e9fdcc673d1bdba128716783c4aba0c80302047c435bb50066306402306c85a8cf15140b6817cfd70cbec9a5e932889ef24050c3518d4addd14a223b813490906603157e8121c375854bded912023077de0a1ee6868a3a13db14a92d24867a782d855e3303434eee45b2d3394d0174989125d5d35cea34590566c552544e270302047c435bb50067306502302acd507f7865ee7f44d18b5f7b583730b367ddf1c4f49b7f54f584b443c53db2200d674472adea66d53a64540083f1cf0231008a30491215dde7fed989cbaff9b9afb1d06d121bb49fc1bd05461f3fa86257fba941ef3fe1984e6d912cf78e7f6177c20302047c435bb500673065023055fe60403e3bf78fad007506f5dfc7ea232436f56ebfaf82bc860f086b4c0bc59c9e90b6b95a72d645b1e48971107241023100f582b25dc9931a2e569d7d3e38b694bce0c8e80b5e45d22ad965e600ca331445f4ae6ed69632897dfcc7e3fa3341508f0302047c435bb500673065023100aefb4c3079b0ff937b04219b0e4de1cea996cf46e113587b2234701c56031cc58aa4fb63f07f6d4306b7d98335372a7f02301173491f7f812400448d5873b7f47eb7d463e7602fbeb5a3e4cded295909e0212eabe84d8ad9b810a0d0bad397ef16040302047c435bb500673065023100bd88a5c87500290e830c6f1922954ff58152194ea0d62337ece0597d1b2bcbb9246292a3eb41b4baa51aa2d27219d37b02302b4ef09bf3cfab86d21ce1872171389d3fdf87830be2d3643fd849be90e02a4f05f9185c649fe7ac2469800f2f9ef6360302047c435bb500683066023100fb898c421e88f97aa437ee25441361917f869b8f1f14932d0878ee87573c2a96bcc3c1d40d9c99f721bca1eca46e99c5023100dc1eb6c93c826aaba232df25a64727e636cae304b912aac240b4ece61621fc17b0d564903c3563814baf1e5d0cdccb5e0302047c435bb5006830660231009313c6aa23b9405bde947d22dff2fd7620d3339fb415f8556aadf88bb5a52e1a68b9abf24dbac2a6e5868793473171c8023100e269e7989899dcdec49e4c0df6f3d1c3ad6bb5e603541468bc0ed142084169b3fa874bf457d9697f9a69b864e829566b0302047c435bb500673065023054936ce64167d021d3782ba3e744d6f17a0ef46424bfe20b366a4b5890107b9b419b3478c5058c17b7902062e36437a00231008de2e7b1c08e2f4698ffb1cdc37381559e03cd56af058404b4e57d685b87768562f0d5ab58d8b6a02779ab50720326110302047c435bb50066306402303c7a4c90d9b3e1d2f02a5495c903ff8439e7ecd714b98d3fd030ce5a3f56daa53c619a57e044f820b67079f678202ec502302e4ec8adafe0fd4ac57056575b75079885feaaec384f507d9a1dedee3f1d92d4900d141474c37880a127aa464f17da4f0302047c435bb500683066023100ddd6c8ff6a3bc747bfaac90e097530895e03f6d364f0894672f643e6edd99810fa55b0443a32b0fcfe7947112d851bb9023100d9cbb975dddb7388891d68cf4cc1ac67816e2bd34e4ab7cadab60215566aeed9e3b0a1b4a256a874cad52337e8e1d1b80302047c435bb500673065023100ccef88cb0e7432be7b2a6eb77c9a3b8f84c748c078d880143e0409ded362f513b08069bfde517694ee5b84c05a796671023001bd3f299fe50d1571a26284a35a76b82de6ddaa22c0abe82f0eb2edbd4e0c35257d5f45125d08bd8398c6d60fd482670302047c435bb50067306502301f2fd17d05991569116581c8c4e614357ea216764626f38fd54e2f22cf42e0d11b9a3e9ce6c49e4ddc3ad3818cfe495a023100907f7bc873a2e359d32a9b51400f032dd3a8c0317bc47535783f44ec424754ce8993f99aac2ba43b2538e6e2375ba2520302047c435bb500673065023100bbbdbece840443bde54c0d776a6393903050c65c4990882b56d972ae4dc581ac6381e1a64f550339564b875c727f7d64023035cceb2ad60d08702034e631d6c91caf8dac3d1803c05b9c6980877c8cc86c4df7e89b647791fdab841cd3d5292150880302047c435bb50067306502300c0d7e824bff6e695edfbd4f675b7aac8aeb3305fb59ab8f262eab21c3875a09c88320839efeb980f608c52dfa0f1e9f02310084e654850d70f60ff936514f3649f8d3ba9a82f51048d81fdad14e5c939271b192f2aa2801974c965790053faa2e47df0302047c435bb500683066023100c53d1fe346b445b0ed515feaba0191cb698c0be5434389fc81df8cabfad2dae9b02a0023e383953244c4565eda88940e0231008fe98bb695b1ef16a74552c7667d8864ce12b92fdeb8b664ce572e8975dfe1c6c93854b1379395840431955a19b2291b0302047c435bb500683066023100a4445a8f94fd43563a1ead66f2cf46e6420bcb3b866ca091c657472583cd3be26c5ec8ae4ea6384f1d5246ef36be4fa1023100ac27d2074443d94888ac2cc8386f629c9ce155fabfa3daad9988d913e551ba8a5ca6b61691b9cc7db5189f31a39aafa80302047c435bb500683066023100ff125adbca8f30c2cdec52e01eab16cc0eb7b8083f1cd1cd434c7cb2a15d3d5b517fb4df2cea0e7b612c6f0e67fb5f90023100d90963667123ad8371c8f00364d1e1641bea27ab2fbce711f6eedf35d07d5c36c985e9e049cd1b20841a30e37ed23efa0302047c435bb5006730650230180479f794ccc501c8e736bc3ff78ba2fa142ddb6feb5dda762a62e2a1a1891875108ddfde91eb5d38d2f89d17f67751023100c0f1854f3931047535269b1715a7a486afb621bee991bf6f7c00b39db44dd791e536b27159bb80b02dba4303e49690b20302047c435bb500673065023100cd38ad4a0ca58643596b05e491362781db2fda4f6cffc15cd9832642ea7645397f050c7992d695e47bceff1079d4d1d80230053ce6671bda755db4641f203230cea523b076801af0f7ccb1989048a7ca25861ee7249a760cb4221a3128b5e20aeda50302047c435bb500673065023100e02eb6fa9df2f2b8bc30a11a6676f21785bc679bd4d44e75bd0ace8272dc6a07603edcfb461d31c27311c93ad1003115023056cf48d4465ebd8a6063b68d31b1cd18c8d4125f8fd74428258adaf272f5bb48733457b533ad5129a50a12001ae5a5660302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008c5464f77383e68b95f577e7c91852d6ace62fe0826103a902a06c0aab65897b2ba3979bf037b9840eba9cde53e4a40202304291b7d16d9e28b720f881cd2cbfca2ff39f5636872ce9b966432c0dc9ce79c180d4d41773d032804e8436b6572d7a7d0302047c435bb500683066023100999f69eb15d4ab38cead3d8d6309eaaeb1d0820f49501473f170d628e39a6b356ca7b6570a42566dc3a7a0ef8c211246023100aae1479b2832fbabfa53ea847b75d1a42b3955ed6279d2b7c4f6301365c8c77804821375bb9a71eba895e79a6b6f70120302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d18aaf47fd35eb0d0bc69c67efb50e3f28eae657d7ba50d82ae895cca41ad811450357f809fb964d080efbdcb55fcb49023100b63912891bf4bd4c71eb2d483729e387b8839f26fbcfae45d2bdd16b1a57ee4e6803d7fe2edf795e92fd74561e5224620302047c435bb500673065023100e741297c8c8ade21c5fac19ebbeaf527fe3f64d2143243aa86815bbaf6b4cc5444436f7de525ed7d56724cbc91afc9c60230352e655c38e11266ffe93e0bd96caf05b9126f721a35f571c3319b8657ab0e7aa47a799e8c6855b493135ed2911cc11e0302047c435bb500663064023023154c940eed9964a1376aad34fcef2a9cd7cf06cbc12c0bbee40564b2485cacf88fb3b0de3551a008ff5d8db3a4ba50023031191eb7265038db205bf43a979023154e097c7a93983a76e604e558b985f4b8eb4456d6fd35eaad5c2015dd91ba5b9a0302047c435bb500673065023100c477773fb0210a00892704dc1125567840d9677d6652f96e705837b854529ef179a8440727080d9f662253272551030e023072f2fe2e86d276fb7099519308dab6c7361f15fdd1171068e1be4896096e29b079a06db8ada111a59e07784d6ae1a2260302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023017d9cfab1365ab96e6283762fb88720567ed7115d3813c45b25cf936f1e4d37142f9ad5f2022065bf5708a10ca3fe5f502302e3d9adede0699efab73f5c6e9c2a7e89a03166a03f8d0de4c1e4e729b6e2b457b724aabd85fce92b97ff27d047486350302047c435bb50067306502310099fe48962b3e2fd23529920cda1699d2548b36f31165b0a2ae25c4758afa5cd482cd4119c3baeee1004ef9b82feb5a6002300f727b62b0635fc4f488c031b28bd012f42bd26a13c30c09c4e3aa24181ed019a2e596b4e0878058ea9a497683a873510302047c435bb5006730650231008368dead23eaca5f706c404a50469a221d7924db1cafa9b9421dce1086cbe9cb531e4554380563cb23b64cef82944f7d0230334659d5d44d88f4436df3760ad74c488f27694ef88f1059bd5039cc9e21102c73c7b023ad10dbb942d86c47f5e968d30302047c435bb500683066023100b1136bdfb06ec0d4eee1acbbdea0f1da5efbcc998fc41432512fa8fc520634526afd563a9de5b1baf8897c5590727381023100966db4429704ca0fb52e9d204f42861e5012fece93c1b98259a0b9f704a7e064c0d3c3f6547360986f085ed60de213210302047c435bb5006730650230096bfcbd4dd3ecf26f28ccc31b600be2626be2a55af8f619ac27814195a951dc6c7aedae85656aff781002f855cabb34023100865aa3c6608bdaa42033d0a33abf9ee2f6f044560b466222054618028fece9512214f96c97cc61ea49d97965ea58b1240302047c435bb5006730650230775989eab902e65aa0ab96139e11c81f16f2c18bd699310cee5d48965148a87858cb70167720ca1a99af60bd845e22c5023100e8c523391f7843e34bb1572ef110cb6b4d8d8cf8c7946294fe5d894709607b63ccf92d543c2566cce51fc17d13b72b7a0302047c435bb500673065023015edb70cfef5aaf49b0cedac52e896f51b612f5faebd56fec04dd6613b7324cc2b02c23fee48113b041f8f852b0c51f7023100ac53009e75d4c6d71fa21669c6b0faeebfe4b2780674f7238fe8578f05213573c4f0e481ed9ee2a1d3e12ab4edc6daba0302047c435bb5006630640230501fe4a22b6808962f3c0f87ac77844ff6da5028393b6ed65a372f8b12d393d315daec527e516143dac0d0ecc1bdbb3702301db921b56270e95b3633cf17f5cb3f926c9d2b919b133b462667f2209c8c542abad8c78d7d714cea565caa15b12fdc9b0302047c435bb50066306402301f7d779854ab85d1b94631de479c42dd815cb7c9d5d4d2a965e7ba9c5679193d22f92ea68c479c12e01831ce2357a6fd02305cfa24f53283893d18bd008af1ccd9bbe8d7ec918caa1ed42d205168b51155472dfd5aeaf44a7036ed1a4d9f84a11b540302047c435bb500673065023100ef4b1c8773e95077fda82cc4da40b794baae4b398b10dd6d770b6bb2022c0e814067ed923f1b4f2c21d7d70d78a7873402305aaee5071fef427a6676f8fdb83785d386634b83136e0b65dee506ad78f3dd11bd8e10f7c4e8cae6f23a46617fcdad2f0302047c435bb50067306502306a11959e47a03fd5e2913e1b6308c4cb1df31377e2563313ee40679f4d2aa8850bd537edce7674d80a8ee76288df3993023100b746febc55d1b1392c621b2350d7bcb965ddfb73e19e5d3d92f7cce9c464e5d1845420aa7d188856b6c7b077390d59080302047c435bb50067306502305ac9cb7fbc61f79fa0e1a6f9bbc54e54e102596aa3c888746b83e38dc5355a408880af126984aa877926bf36f9f72b10023100ef923ee571b41634559ffd8295103794754e67c7089256cafee8ab05ee080120176fa97f2920e6ebc95a591b04b9a24a0302047c435bb500673065023100cd2788435e775c1074250c6efd0a921f07f35ceac0f9c440e7f3905de16ba70c4fbd21acc5687f8b557186ca8ce6078102303dc30c1c7ba9759514a81c3a6b87467c5e88d7299f53cd27f2e5268d5b21bf22475c507e2091b9fa425407d397d2837e0302047c435bb50066306402301359864039aea69ef00629546f529a8204ab3fe05df5c1b19954202fce4f9402c26cb30508d09f47e5e5d59cdd22297202300abb3b7a10ae0420b8a6e176852a10b4d996710d3cbb24a99d584ca5575ee50a55440cd2fda9d37fa52b2233506403550302047c435bb500683066023100fc37bde3c6524163acff69f078c192aa78d5a7049bef9d4254917edfcac3e003c61541061e8a808c05c68970f902c408023100a0538e3ac3a726fd9f1a9b068b7f01495a5abef4322f5be02bf4298c2b7a18a5195286eaef87db9ae672fd0430db12590302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a4ad85541c354f21578bdf3a7e2a55d8b3fce295b0cbb235a5d510074aadde20c1a88b0f31810611163b92876e9e0163023100c3f1d0bc522441a08ae1aa9f56bcf71a84b75212400d53e50d448b8e9a441facea373d64c524a2759c62c431e9a8539f0302047c435bb50067306502306ea04a0eb90cbb37ba4c6aff8e650a6945d19bd17f8e1c99253f99497989c968b28bdd90d95182e19194244d6e9036340231008ffee4cc246f25af7c744c639e71e8d62886304db72ce7f956cd77282e3bb055a7d0d03c430633992fb45d395dde15960302047c435bb500683066023100b0d6a68cf17d60fac96440ceb49307ddf21769391ab3c705641e33bb803d528f47f49fcc083ec16a1264f1f1a3e8e708023100b4f7c397e735a5325de01cfbede8f03800922f217d6a9c1e150bca94e37eb94b4f46bf2acdf3039f7356ceb095d68f390302047c435bb500673065023075260ed8a328785f1012279e894118944dafc25aa623fb633bfd20faaf59c1afbc53e25257ab104bf74d706c49766222023100cb9467635f9d1393f86b684b20c84a6ccab9a422d42d515b076d62742dfdca820a9b1b345e81c69a1e46c2a31dd64b8f0302047c435bb50068306602310081ae57a308a3f1a07c27c6595058f25392ac2c0556cc98d1604ce3a1a4e444fb39580a080440c6ca8ac6b3ee964e69bd023100d694262aada48c99384fa8622d570668278435afcc34877ec6af0ee702447bb4591d20756ce36096aa29cba8d029a6270302047c435bb500673065023035223bc88660e27446b3f3762b24189dc7d1ed6232fa45fc4bc1f3c008a67ef49c2b86467f3fdca0aed42f1784259492023100d2a00837e3c10c0e2df57931088781ee9039acc858789a246a7fd718d8c17fc109e57760bff8076a5ee4efef918bbc950302047c435bb500673065023100cde744fe61c01f81bde2880b0e1c4a69ceb97fff26aed4defa05ceef8e205ad468117dcdc237fc5b17dde83cc0097b2402302924d27cbbeb0559899332ec9185742d9b76a4d58afcd74537a3b9986dfa5480fa911a0a519cb563e32586f420676b990302047c435bb50066306402301dbdc305f4d0c8446bfb53952ef91a107aacfeee2d6b5799e96fa9b852d6819507b2654b68662febf6478b50ea35c3ad023076082df5cf07354ff9627535adeb4af3e4a359bb2a078219d9791fc2ec1c3e1e8c8b82cffe3511b893706b2020528ac20302047c435bb5006630640230330f910dd8274ea795d5f0ae7a0683945e769cac9aacb423637a1ec8dc75d65ec635729f3f661d92c54261d7e3c818c0023026a0b95e14dfd15dccf99086d1ec7c12d28e8b4702b2ec8447e10b78b503ce2f255ceffd79a19afe0afdb584c97f041b0302047c435bb50066306402301613f605b93c8193eb47ad2cc445bc41ed2ccda675ffe9a20ffb7fca9ba514802f0c5e817ed796eb8bcbb7caf63eabfc02300f110b7dafefc2ead4205e19c83d39fbb74ecc50a5af60d53d33f5175c7f719eccda37898bee1e34ab13580746d507be0302047c435bb5006830660231009d9ee60c4cc9a77337eac0b56df1ee4886e10419ad5a963aa73b02d5691ded5707e0a2e68c2cf4f07157fce10f54a02c023100b54bed37fff2eadf958be26bcf61c32f68794717c6003b6063a02a7a02f5207bf9af99529c1d65719f61e4254381dbb50302047c435bb500673065023012a066c5ea0d7907012d1347bf9ab7fb89900e100fea2ad17d16f2b020443bdbe2d4186665b18f3c328bbf1263f431a4023100e7a6edb0393c9475a36084879cdb27201faa46b1e391cf74bc19601bcec75e305f84eaa2c405f69789d2d9aba1d4466a0302047c435bb500673065023100faeec163c8cc77a674a53bc22d9b27db59ec28bfa3442b0bd3e11ff449d4582dae6cd4d9ad0b8c4735645acf382e6cce02304544b886d1fabf701284aecacf1a250e028ee41da7e4a3597b611a95ad2ba298d9cc4c5bb3e346e98d5ef51b465163da0302047c435bb50066306402305b32545cbd8d5de5b44790a9fd1cb9a3c55ddf0e840ac997c09558c4418fe041e5fea7b933c9747ed0c80a27d9cc1e0902306ce043a7df5425dc41e2b1947de0a529023cabe33f7a2e2e57c0bd57c579e3547450ad01143fa5ef119c0779dea9fbf00302047c435bb500673065023100ca5658721605b520af015aa51926bcbd9f558916002e9e9cd78d9969c1d5c8a9d21f97a1a1bf87c009b5ea65d7dd3b09023066070552e82ffdacf3256a6f247112551929ef582ae77c8a695d74e8cead8725800221d087585a8dbdeaa49bf25444530302047c435bb50066306402302115fad067f31778c38ee91f56dc63528200aea42ee7fcc1bc5a1b15bc0a054501c59f8548d63b296dc80ed1423512ed02307ee9ff1a11e07c610bfe1333318113fa5e93e5a4f4a1cc8221ea2ba0f48b89e8cca5d199f30ccf79829d40a6e0ef26c40302047c435bb50067306502303f38836617000b690cc1f895958eff07036178761372bd460a793dc9263e4ad1710be6d6346412d744d0033d68552fe6023100c12f90c8f15c88de9c690cc9f77609ce0f5ec170397900704639e70b2218d82e4d1504e00b7fa15986d4b3f8634d3a9f0302047c435bb50067306502306425ebab6f8f6662f83780f887f435f54412df055e80aef92fc7ae31ebe5cbdaf4e4fdc758a9baaadb03a45de419b778023100a47813fecb51056ef85f9495120ab8a466ca5ed13cab5756b9cafbbfe3f279b01cb1b1e8828af9b6a10dde849aa68ed50302047c435bb500683066023100cd413cfcfcef3212cde0a1d3f89c0840ea46938f10bf80b218c1bcacd8f8b6e81dc03944e2e464bc6bd51583eebe5e55023100c313ef4529999be83fb77340404f4f7407b9cd68ea512ae106e07f652e55778b70b130604ca6a82833e6acc4aad133160302047c435bb500683066023100a33ee29fc3904a4550b5bc6ce367a0f2470deb1f117c7d0a2b91c7bd76d6813da121061a56d6e80fec7c5966dc3a9a69023100c804551b591864e5655889482c812b42caae54daafdd1bcb70b08ad70596456477efb774d1c5e48e11fbd5d814d0ccc30302047c435bb50067306502310096dc3e355f40a46492b59c965b8212dea6b7261cfb706a32ec22695dd8974413ef90f7a7e55d4e60ba388441a3930dbc02303166b3a11ef668b3772812ac9b5cfcf0341fca427f4d399aa7a12a79429d3edc37a236d26ca50754ea138d990d8053530302047c435bb500683066023100a8fbad9b69a74c676c5fe3077c245c04c93cae6ffc7a8fa6117136e708036c5504ee8856139bfc7e4843c9e5333deb78023100a7550c32ccfb3adc5a645a7513bd73d5ceb7c81ded7ddf22a377323bed1e981ce3ecfd968e22381786a942beb8580e310302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303cc4383cb7b1c3bc7270bf8e971cea8dd445bf4871173615ffe193300128df613d52f5d10287b0ee936cdb4cf91d867f023100a925d0e77d97f7fce56e23773ea587ef7af315d5be4677af15f25055bfcf30022a32d9a211964b76299490ee29ec113a0302047c435bb500673065023012a8d555dc3b279330d108e395106080ec2e2b5ffabff04cf22f55cfc4a29f75434b0956d496817a6e26ba10718d0a90023100c4f1200a2ae1e7cb1f6fcc25f1bae85f571ef774b4710a9297aedb4528b4dc84fd01f0fb2355c187b982318967583a160302047c435bb500683066023100fdabc9805f5b618ae47549d92627e72f1494631d8025b2e1953c5504e48c11fe26e3e8ae470a2fba8b5b3adbbbfe1b20023100cb9197d334cfc0fc22f0d5f6f6724d22da0327acf8bbfde8b4f9dd7278e0486286946dd4156fb04bc953ce17872dd03b0302047c435bb50066306402307ef83c6d369379da8d990184dbaf437a9dcdc6c6e5a96a975ef702c0966c4caf14a7d2d9b21cde39fd681a897194db4502306570e42134c646161d709b096c249796d929b8c82a555d5d54ffcfc3b66728fca0c260e6f665dbe1c0939c1f5ecea85b0302047c435bb500673065023100a4846c8713585a4c058624b21f4f3184117444a9cf05e40153d1fdc884fd1ad5f20d442e960486964adaa10e1b9f179a02304adb87defcf86ab329d15cb52c45b89deda82a04eb15042307216e8c958a0a77a12f7797ca6676c6052b20df7012c0340302047c435bb500673065023100ea9fe8901522292bf7c0c7d8c770ce93f7a099c1689681ee2ea71a5ea0cbd4aed3a0084c68c21d719fa4d59f13994b23023053a9b793fbd231e9a86b91ae2b1f3f7e6fbbb333da05621819c21acba01e49ea5d946a59ac5e7492eab6419a616f19aa0302047c435bb500673065023100abfc2c23fcb508dadb752b6dc0f265ebd31749f023c988e8880a8226416528fc2107ba29614ba9d1511276e39ebd37a60230676abd6e98911e17e60745897154f1b8801f4f653b8fd83c06545207dfdcbcd3fed4e78b4c4351e89239bf2e0ea641c40302047c435bb50066306402301b28c667446e2cab3494b31a9f75964a375c9a781b542683a862141656f216f68fbe132cc42b8b40f1399c6a950efe7d023049de2261a640e3c38211156efb84f62d1ee75b8c5004b8f5db43c63b8244beefea801e8b11e5e3981cb397ddf0b34fb20302047c435bb500683066023100d95bf143d499ce0c056df2ce8195e27ab01e0cad64c95e4ef96774f6dd5fb3d320bb5f1acb8093294a66ab4b3cd7963c0231008933f4017ba9c5664e4a42b6066cc92566f93ef7844e244053b862ff602decb71da2a1bf3602fdd8a7f1fc29776d36360302047c435bb50066306402303ab0fc0de25bc49a12d5fb59d5e5902fabf137050966ae5a6382e3274e20dae153f9f068e36b56d2d233163bda7c0af5023043e2c488a8b06d94e2df84f7eee3ceaa836987de9071e2c62b8603b0c423c8ac7075f2f6c5bc4692ae4601542c2ddfc20302047c435bb5006630640230265d9528d0928f883688956d027eb01406e024f9b83013f1401d56d883b4960f35be0333d9fa6e19d8b049b02190471b023001cc5bf761de107ca5a25d59aaac3100aa1d1f329be22ca852c9340f6111414b4903505bcfd6a68293c21fc71b4f760e0302047c435bb500663064023042ef092c210af29cd95c54db5f5bcd4343f1443ca9ebc47638743354af9382fb7e606a86b81a8ca00e7d4157c79c62b7023007d7537c0ba03818aa5ac4cb69c178b774301d6b4ee61f27e2ecaf848fddbef59a32f461627c83ed6c3fb450af157ed10302047c435bb500683066023100ba74a7bf00637ef6f50b6a470e7ddb584da9a6468b803bf9bda93433469091ea7f0eedd7ff32ee38b63bac6395743f80023100fba82965a87dd9f7dff51b273e97d700478ce9f2dfa4bf12ede9a6f81831a4838e7f354489d850719a4e888a6fbaa4870302047c435bb5006630640230065771efb3059f8fa6616ddc4dc0374fa8bbce08b61e8321fe70ad2625dad15c3c177976c472e29c5a9804af6d12b4f40230554e0d7bef96bd1cbbaa46bb0ae15a0aa06156233124927becd6829a1c99491bd3159246ba32e587888ffb4d2aa723b40302047c435bb5006630640230068bc8c5ba0c105e8b8ec1ae91a5b8c4a28daf5c59fb52aa2e06b1b9139525d5acdea7d1f6585cd68eb7ca9f7b36af4402306350dcea6df9d986fa05cf17912859e7de9f51459a74bfadf7662998712f2ef99c602d6a65a59e32da300fb1aa33e27c0302047c435bb50066306402301696a76e7ce1affb7dce90aa1eac072a6574154dbfe8602ec03d7640aa72b2daf26dfc8f5ca6cbdb2d51f91d06b56dbb023053bbf7b36761b363d1ee6528909c960a0feae6f72d8122d9ac8ec41415fe5eb7c0f8f93edec7343723ff1c4e7b2ff6790302047c435bb500673065023100ca39cb6d6b14daee1bdf2f07d099690139f0ae6a5d3761043118016c5b8a0ffd8012ea8a41c53bd54ffe17dbe8fed1c102302392d6f93f1a877f8861430fea834813e4cec4e57fd5798f82ca8f92760db59ea5e73e96f88f58c640b49a5f88a7e2680302047c435bb500673065023007174e56bfb8cab5630e76c73dc386faba2b9dc6980a91f38a42f5992e629ee82fe218c93144f6110f0ed8ce8ef12cbc023100ccbf891b3bd77bd51fdc1706a6f6be68cd3136ccaa03bd8b80859a8adf5f4091b428083756ee7f07e863045544ced0b90302047c435bb50067306502310098bbe9ea0d4616659aca6c3dd2b0e7d231224198d40be9256d601179f897b74a202005f57a8b1bb406cc4efc29f4fef50230308361057359128c50e24800bb06c7f6a9c9d1cf290ed73430cb9504099a76364d6346bd756fc96c4725e49f6bdf924b0302047c435bb50066306402304ad5adcb413a8d666fe14d4b18d96172b31d3063de4689bc229b0c88aa4511462ef6f3abfec9337481e813293b037ede02302e6b2efd3c7cc2af993949c84283efbd9d60049f9a2c98d35fbb66fe70c67a9164b8463043d804690bc1906a852f14da0302047c435bb50067306502310081169187b055053370986a3cf47fc9bd53145a3187f2d2b5c03e219a8da33a889a9a3d4354f940cd13211c413f27fb55023058c620ecc833e0c0eba7ab65e6dc01cde6878148b7d088cb0065215743c02b46c9a6e098b14afd65aa70e1e318317bf20302047c435bb500683066023100b362b6d7af4012e1a18a1d65dc6a5ddbd8acd311f76b0dbce2f014ff50f3534a460e7869f09d927d41315835098e60d1023100c5a8c665ee4078345ad7c2e35f9af6d2ecd6e595c8a3606a8f251d16731717e706ff5606c0839839651d6e2ad9f013b00302047c435bb5006730650231008139c5f3cad75e027ee34891cea5aee3c2320169ec509413f6383c2514c4291983a9a8a9473b240853747d3080a509bd0230592d409f9d1407344e501524c331f693d719a1e979ac42a3b7afd4623cf511dd04a418088371645cda8abc5bd06810bb0302047c435bb500673065023041c62f9362c34cc1ac62b27d1297aafb0d751429dd76225c320c7c5b3c2fb75457740631f05cfa08f0a5d2ab10c1654c023100a682328f138c6eb5eb5c16fd095cd7d3fda295581b821fed79b4dad9aa3c595f71aece82c5ba727191f76c7d4a6b4d5b0302047c435bb5006630640230660f3d11d2c633f985149f2378a5a66df2fa4a6fb3b8eba35d7782c7b4fc349d3098996e6d21187911c0b3d3bdb3cc290230134653e32067cc2893de356e8ebbaf83c9f6c7b9472d8d832bf3086a5313790f594844c3bce432cb003e0166c92fd4f90302047c435bb500683066023100da160cd53853ffc836ae8e5f29a2233b49407085ee7229b70bf10c53b08a2da41e0bf2ea7d4fc2a696931bd0e2eae4d4023100a023b38e5ecc35eb3dc999f3eb3c0f7aba26dfde192e933b84d130c15f65ee3390982692ec50854a7401fa228d3e56190302047c435bb50066306402300ec1bc92edc130f29382129ff06d5b81dc85d0d4db8e4e4a1bb048bc6c7ffec2902aec23c44296b451cc84667983892402303067dcf71d39e0814d9c68739c7beabbb60eda2045b20970cd3de19fe4361242a693845c497b6319d84d2375b4c702770302047c435bb500683066023100eb61eea1e197e4ba9a6102042a5aaee73c3966a4883b014e21022ec17e4a63272ce49d4e4cd44e5fbf84f9c4ed0fa13c023100d54304ba828860c9f7f2e1e6fb5e1c10a6cbc39dfa18e1d86ba070ed421219dba1e099221d8248b55794b8853575e4de0302047c435bb500683066023100d31a2f2c63bbf2a4b3941b74fec3562473e4d2ff4c4bdc841470f1eec3b245b1d9d720981339926734a0e1147cd5096f023100bd50fefb08d2fa501d1a55b08a1ff273eb1cdfe5ed98b01f4d0d5002d5fd6d0d700088da3e05ad6038fd005aa9a5fe760302047c435bb500683066023100b67c4aa083f3f06a3ca81ef20ce5e72abb2eb186db0cd07279c6c194ffa0f628339f3608c527d97751682ae8850c1dbb0231008681e901c386b3f339cb1083107faca950369e0d07666b91061e2bbb0c285dbcbdd3690995bc3b05bc27846b107c6c8e0302047c435bb500673065023017a31851e4da2ae992607833d945c4ffc9ad3de4bace3532886464833507940d68d5918a72f929c35ccf70fd41af526c023100fa60963285474b359f5693b85eb6e9080d63e4b058f5666e5f792ac7dba1e2ca1a7d8ecfce68f97aed0c82837406bdd70302047c435bb50066306402306abbe981eb68143e63d5d0b1d74d7546b7a83b9707370f5ecdcf5ad21a1479983b9511427b77cab3e0c2f6b12d0d06c1023068c48c0705eedc902466a02ac57deb0c004b61ddc7f7f2c5ed7ded6343d8f5c6bf2e8555488ec62c1290ca3eb05faf830302047c435bb50067306502305a56d781754f4429b813be414afc5955dca0f67f3079212be50f17e1a89d41eb89544ef8c9c7c5643bef3cd1f3fc76ba023100be26c838a3358edbe75fe91332f47b7b429be747889bd467a9c59fee1270695d64d8734ceec293411b0c747e3e9dcb260302047c435bb50067306502306779f7a1f88452a0fd924b258ba60dfc9672c0514f28f7d743232d7d7002d7dc76467d5d34200cf8fa5831b15e9a25a0023100ea80baa2fe82c0034f9dbb3f5a16743b259cb8c7ffcd5ced2f1ed90e03dfb7e37ba4086917c8d2fc193fe10c5aee95250302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c71bfbb434416ad282dd71435d7763db7bdcdf6f3734076ebc28f5c3bc441c9652946922f74d2678ab90bd475ebc64c5023100ecbe5adfe1cc924c3aa97d059a4444a579732718f4ae8d4c6378fb71d76d9b3b65ff0058d75d20121e3fafca6a3dfe2c0302047c435bb500683066023100b55287d22c4fec031031383073a3c20af57fa4587e9e2b4592a9dd347b49cf90520a4e7e2c50a4108cc9fd52f0e5ff28023100ba34325e8dabbdee98ccf1c4f41a7f64dfcd7ff6ad7ff2cc987134dada3d3d4b23d388340704ff8fea5731452f9758270302047c435bb5006730650231008e75253f0c8cf11f205383ee478ada8e67243bcbd197840108e234ad3507265dd856c59fac6a562b81092d27d313a4fe02306e26b1581cca4c6fa9cace90b75512ddedcba9ecfb97d0152edca0af35c19ea56783d26ccf84163365564ffeebc5e4320302047c435bb500673065023100b553b2f87a0f88c6531581ef774ff9d27d6390d533967512fe0526b468f9dbf6e16a24f7be22d4357ecb0a17ea1a67bd02302e5de5f9aacce1147713686aadca821b58ff20778faeb660fb5a84c94fd0823b6b7a81b81fdc5ce1c6fc77ec3a979cea0302047c435bb500663064023043e80e74d48d8216cfd2610ea3bd6b198068f86712076a61854870966db6dbc7ef5b3c4b98da3380df7cf21d60a2bf0002302fa1864bbe1ca48522154a0a9e1dc19234f3b57ba8292b6318faa70cb8c67fb9199ddc5ec0adcd8aa7df4dd2650f7cf60302047c435bb50068306602310099c56bb13a5b9e0c039c7c233b131d96627b1a1d961684b068da29ff77297c0850ccdfb60dba083cde3c0610c17cf383023100ca6230a7acd1fffe67ff55157c7c66659773e14fd7907e8276238aae151e73cf5160f0ff7b9b05be6c98e50a2d3954400302047c435bb5006730650231008d763f4a7481a6848beaadab8a821d1904742f22372284d5f76760f7f6bd5dbb6ad86977b351fe6d1439205b66d7f168023011f305e5d55e88abcaf8214d6873f52e7653704a0407b355910b2ad426002c9932ed38253e9dd1a573b24c9527a2a5190302047c435bb50066306402307980ab6df3cf7a3ac62124be01687ea2dd7d50bde3b865d8d901f30a85e1d78b02a90f9c6c13f7547b55ee38cb9b43a9023077ca04e664c7f49918fd8dbdbb61e9912fecc7f0d872fcdf8725799eb061266434435a8b961b6fb00b228a95dd750c370302047c435bb500673065023100da544028392a7a86c8a99bfdebc92a95cb20ddbb8cdb61f89e29c609e5d0aa6495dd87a61e8537c3763e1405078366180230407b851f915b5877ed873c29082aa99f04c23c05a9bf14e37459e0a827086725f6a244df14ab5b6021e7b2f5ccb410690302047c435bb50066306402303b030e49fa15e4552cb94ffda67e4330b87da8fa712c5657e2af5d63156fa14a3b4b9754a79299d77547ad0c4ba1f2e202304e51f048a9a926b67a6a6eae39109c768e9d5913ae6302c74958c60b327644697c48786ebc478953471e2f58932a916e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100db936b80fd1cc8885b7d7da87eee73683440338597a27b3ef6bc21312748aea2b917fe779036f20e7bea6fb0f995d90a023048779b95bc2b2f4a884e78302e4a34b7c6e353931118ae232642aaa6f9f91274a53d3eb768dfa92b7e978b79cdee01db0302047c435bb500663064023050fcb99ed2a82a499b61f0e7d727d6c642d1207346e4072c769ac0356bbb880bb0dc8f5b62b9e0d2de8c6229a997a70b0230628be4cb846b38f845e10250657e519429c1b846f80d54dc6d9d1bca228bd705ffe3c3d004509d6c8376406ac511ba070302047c435bb500673065023100a6e1e9f57a662d144994ee83ba013a9a938c8ece3e61c39c8e1087a47a103a1d2a20582676e4121b2acf2d6b2fdc05fb02306baf7fe8d73c54b6a8d8020b9a810fbfa2a74bb869c1e413f0e19de1a33d6cae331d2a73273842d3c43593ed4c9d10cc0302047c435bb500663064023028b74e2def2b8c09a8507d89353334646e4c0f7bad334b94e50020d3882ec49a7e0e877d6faf1f4a68bce2019975264002301356fae04f0b5e7cd44d71e4c11a76511bc60cab2af37b177e50dad06f4536cce0088888cd76d10080b16f717d04248a0302047c435bb50066306402300a7885a8b099049c9449153645fce1f0bd9ad5b3b94b13cda25be8e9a11ceac71794bb077e5e62a8b2e85e945a1f7485023000fb8e7fc0d26a773407d729e3c5fdaf38879ce875719403b9be8a4698a419ba557a1efdff5c8a3bf85b4aa9346646c60302047c435bb5006630640230245533395f4457930d125ec09a06f16ebb274b617f3ce34da7d9ebbbd5c3d596b18a1cc90d3f8be3fea8e01a051e7503023030b26cfec5e42530960219ed0deb644b5375ff5ff28d75af05ebc89c9ffd8cde93267539af12f53e60c0bfa8ce07cda90302047c435bb50066306402305fae284c78daf60fed20cdb545de0ee95b4cea7410df58455e0e28a14d0025baabc059ffda196065714d1466bd8a852402303063d3edbdfdb9e3ef9a628c25483344a9e99957a6852aab29cd3c820976596911e5f0140951c9b52cd6a2a9972363090302047c435bb50067306502307b55b3aaf8118771ebe767617190d4cbba5bb2ba10a8992ff0f1b9678c23c3e86986f9a8e581c21f7258adee57480d9b0231009481120d6e4b2cc33a6b1d3e71fa519ccd4f36b1948a42b6557cf79063727791d9f2451a1a49732fa30ae0619688df7b0302047c435bb500683066023100fb368d7fcb75bfeafd7cb99e56dea4461dd69a3a489aff021eb8fd8545155aa1fa1866f9bff298fad26f674ae7fce797023100d728449ec0a434230166aef5b579359837f52740934a74d42023ff7e8011999db0fd6f2881567f11d7d58658d0d701ab0302047c435bb500683066023100f0989235fb08dc7f4d0c44f055b4f8ad825e378abd4fcb96b88c3f7031c3f45376e912fb48970d394638d2baf05089a2023100cfc00b6cf2ede82a6947bd2d8d944c398a6eef0bb3505b2f0dbc881dd8c947ce7645b54b27128079a9fa141f087ed9320302047c435bb500683066023100a722fa2d1fd4ebd78cd72c59538810e84a27c365a2a6fe34270e573457625fd42d953e1f63a20dc3fb99f968f37ad4c7023100e67f57463a6a2e018b69ef46542f3ef4310c5387647b055c869c93be6746b1666ff2b0fdd507ddcf0caf14d4ccec28730302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230683a74f22a78e4d295b45a6bdc2bce1d33dca2a710ed804ed7734c5546e7e9ca5beb33d2b3faabe549754657fe32e1a3023029212c835203ea00f6dfbb71d2518c8fa9e2ba59248a0f1461d971834bed9114f1aabac6e11629da24ce2708f44cb2c70302047c435bb50066306402303ddc18bf077551657b0f140604fcb39ccb49990dbf05957edf4203cb9c7d43baaf13c9af2368f216b28803772369208e02305ce420b9d97d76a1bfd22a34cbcf4bd1fa52ec25f2b055b0bf410c40dc824bca80f2001c44523bc2d9849b4e3aa2ef170302047c435bb50066306402307c543355a24681e9bb17638f3920faa84c55366d1da5eb5b97eb69f1b2f426a733427a0f2f40e93cd842a4caab38665902301ca407a2862a5d6fce02c16807b7a4ea1270618d27bd000f80d38f1782f528e3d89142d1e4a47407b20343e5147b84570302047c435bb5006830660231009d979d8f2f73124bced5dace52f770fed51691d15646a1225cc47d10c03733452a9ee87ac47ec155dc0cc93788686d56023100dc4e3cd963958c6ac184408fe9caa1e49101709eda026ad91bd97e2842565032f1fc21ef741894669faa10059f164f100302047c435bb500673065023100c4c2b68b4582ec9ba1c07ed8c390540bd2d017155d217f9c20913a9184759ea03ce3059b65de82e82ef128bf891c3c3602302760a1d890849bb0f5fc1bda407e1de3e997d8680a4f1586cf8d914ce15f1b7f67fad2acd7f5ade7f40e4d415d395ef90302047c435bb500683066023100d71a2e5c0896e7b45719d4c813361bd0b2e2c8345ff7b09d43e9e584f07988d06ef0c4db316e5010dada0e6e86053fff023100939a11be7f62c9084e1a38a48b655e37be30590c6dd6b38f4c7adef6164b7792cebafcb64a386545d3b3607a7839e58e0302047c435bb50067306502307f6809d6d82989c81e2c4e253d4145f7728aa65609293760745f7ea18321a70f9fc04b1a40217ad50af27f3b05b52d25023100b01ed9be1f57ceb757306b028b88566b2049fb02f7eac4b43098ae213d1145629971a500279d0b2f8c0f003faedfe9520302047c435bb500683066023100ed8c43d306a644b118ad11bcb5e1d57a460b4ee5a1d2e740677adf9aae472450f7b8fc6a4890daf9e3fc5a6218682301023100e09ea547a8282e305a521581c669238dc37ca673986020bb6bf379b77fffa1baeb68c7cb91fdf0e3d7089fa44ccb4b610302047c435bb50066306402301f6df901707346c5099f99fcd89d7a1f0d6f506e197f14fa41eec31efa1fb846c38cd58c8def4861b45cb7ee4d30340202305c3f4c2fcdbd4b1379bdba8ebbec65bc646313b8051e18efc814ca054850c42714379854010b60d126b8f533fbd33a890302047c435bb500663064023058ce09fe63be8996485b68a6516bcc14d247813f0900cad33ed1082ccf30fc397322c3a0bd293832cd6ffbb42bdc53c802304c3de6fa594a5583e8aa56b9473a964900ff5d551982c7dfca7206d40941d543aea74458311ec158a1b9e945461ab4050302047c435bb500673065023058d5a67e00d92a1f2f7d3e3f7b195935e820819010496cc847b7dd637ceecfa5967171f8bf66f748858dfb46218c7dd9023100b11e9a8c2892cedd99b09391b66796541458e804a2d4e86a62eddd6ef1edce3959cd84649122f9d04ec580f4a8c68a6d0302047c435bb500683066023100d86735330d44f967e3960f873f0bfae964f106f3ccf82be5b4f50618bcb1d94f49e6c855643202e87aec4ecd2e37ee32023100cc88b7693451414a0961b61c355d9d6c026982bd79611f95a4cdb6f9f60c2e57c003af59ae307d4aa4df4ebba3cb69cd0302047c435bb500683066023100a0d559c6e1022aeb705109ba34a64732b584438d59d810f622e76a12c4335f07168c8cce97b61b13d8128630050b1515023100822571503db757e34ee44a3ef1734b5a68741c41802bb4a8af47dded46f0352279e19937a1a9611f2d8cf0c23e30b9810302047c435bb50067306502305e5cc33b21965e57405a80518916ad6d492ade1cb5d1cce47393f16474baa823388c7f6c022fae44b27f6d081f2da2d9023100eb22c12aaa9411c812c626058596874516888ab22f1f71f0e373d896525c0d504de38e84c4b44bef0661e4954c08a6450302047c435bb50067306502310096babfe61d805c751ef5639a257eaa4291e30cc4887e7194c4a7c40a6ffb517c8dc6d31a956d8ac97aae0ffeedd4d94202300f27078fce2cb13f8d2ecf5f6d2849663980ad7c75f35c2ee7fc35c69023095fdac5113632088da6618c0ad058d9cf1a0302047c435bb500683066023100d1ea5cd6eda34d4ca284032175931acacfe2c36c332a7c6a7294e31e4fc9385d9b59171060ca5fa839475f36de20da6a023100f3ffbd79510adf365900faa53999a6a3251ee748436c8f86a65ffc97410170c0efe02766686b45ad9e2fd413ceb734c00302047c435bb50066306402301b8b00831e1319948052622765c40d68d8191051c4c70c0fad60f4fb759aae0ea553dbaf7b6dca348b82c8cd7594180f02300e3d08fdb56e84169b589c114cb4ac2ca428ba332916a7b71d0669260a93ab046e6ae1f379fa5eda6de2105a7be886c30302047c435bb50066306402301cc034e8ea3add27704f947d2b69cc6771589b3092eebb668b0cb2736c13242368f53f02c794ffdc8e4c86f3bec6723d0230549d0ac0b1ebad020342a46c7220ed0f8247101818b2d31bf4a33940f458a521b77c47077db5b94ffeec3535d76bbfd40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100fa758455cf8a201419dfbcd791768cd22ec9cd4a46b0723a62838a7e1a9d823aa0abdb57e7fca07e169b2b8655bf05f8023100992573bb6452f1865da7fb5dd8e2b9398d0aa0c2a73e048a72c31c30de77ff38ae48a1f0c045195ba026cbdae2cae12c0302047c435bb500673065023100be943ffb4f2eb4c154bad413ad21226a245c1ab7a4e249e6037abba02fae059465e33549c3dcce20255d116ab89196560230508674990461d8487400fafe3fef06a73375175e49b4fc581ee7279be15f4521ff6daf41aeb56856501123f6afaf11230302047c435bb500683066023100a5dd75c1fd2a5af329adc272084342725eb9b005b413b104364a879d25a463bba1ac7de880a2181bfd250910b4177cf902310082acbdf28c585ab417578cd36508eb774ef019493a98e9c27781aaea7c72bf4ae3c2cda9ace3603e47fbc730014ffc2b0302047c435bb500673065023100e3f2732eaa42fd938b156fc1ea769b0c83fb6adc6b865215dfe51486bb1cb06c582c3026772cc4972d7400dbede81fcd02307a59046fb84ef538f32e10b716d092739fac87f1ffd4df17371dda11385ab6e4cd3b3bb27a326e04fff6fee86c7c21640302047c435bb5006830660231009e9b0d155cff41492f93ce0b631ab76f419830f3ba911e05b8a91458154f26fe3ce22905bcfc122635540010deeb3834023100d34c2040eaa44442fe141e9afe14715f1c4bd14e7887b6bb7a1c5a9b59441d1d8d1d1c8054f549aa453683091dbf4c470302047c435bb5006630640230223ee663979a57844518bafb095e1e138d5476faa2e2bc596ca7abf3570baf4e2c005d275fb35ab316855dfe67d6e338023030d85a48901352356fe71cb005da62458cf2df6975e4f0d6bcde6613ada456d202ad2058dfce6c8fc266b84b14e49d7b0302047c435bb50067306502302a57a6132d1766ab56642adb9497abdabf6222cfd08ce7fb14c51ffd78eb91ea77867c9fcbd14016cc2c3baf01f5a186023100d195a83d7c16291acbc3563afc0c43cea0a7dc80d165c855af08d97adad152f8c9d523afdd1daa764c61f9a4875bb7450302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302a0dca0d00f1ee6564af2f276db43f1c208463e217bdbd944def6b47ffe646d6851a5154a47f28cec68dd2dfda588c6a023100a893cc18be5aac74ce910a3a6ea8d34ce8d904cc6045a491801fec21a44df30968cc6ed29c9413cadead1745416be26a0302047c435bb500673065023100b170532e378f567d7777d246eba574c396e1b17050f7d654c985105d183a7471878c2840f44a0ab9a90ee440bac8afe202303070aecec2a597da40e362407971bc669eddda840dc5df89cf2fe3a0c0a2dbdd5ffec12d9e72ed71be2b839a78ca828e0302047c435bb5006730650231009998814d46ff4e24c13ae052745c9cdbd1fad0bbff811ffeecfffbbb74857cf777fd138c3283e017b20386d418c08c9102307b1f16b67ad1fa2ba6d3f74473996afe57890f5a7411f10ffcdaa7ee409e5703fed5e5f0000823df1d579df61585dbe30302047c435bb50067306502307a81f7be70c375d6ee423f2e8537ecfb3fd35f7c74636804f23bb12f9cbf92b2cfcde9e82c950748955460b431f04412023100fd61280506b39ebcd3b50ca9e39a5bc638259cf6fbd77b7e6216d5b5c177d5df006bc1728d3e723b48f5b9ecbd65ec2a0302047c435bb500683066023100aef66a2076a7ae9b8317ae1c6c281afc264a5310e5c321258bf961377c72eba06fd380e08287710d1cd0e4364073d6e3023100f15d3b62e9f6eb6ac5d8a1f0289fdeaea176e3a545ccbaf9a535bbb6d4a45af5912d3ca19fe5b707e9653964b7bf07e20302047c435bb500683066023100a8f1ad0833a180ef89da859fd910ad4dfd8b78605f8755df486acf23bdfcf1dbacd192f2dbae4c7ab9c3eecbffcf826102310082c0ab6fdf36c70e62847dac049937ad86427a920b059da49865f9ac1ccf5eda915621bb137f7f2985caccebbdffbf430302047c435bb500683066023100ebe32367435196135be3b0e8030b458c47fdfe6d1eb8cc8c6eca0214ee8b05c2cf8bdf10ae77778018af8586477d55cb023100b4d1bd03df1e5e5ba06b7b7b33b1c0757c74a390122d138ed7f36a91ab6eb0fca3a1310f2f2fa2480f786d324945de0e0302047c435bb500673065023100b3be0e01a418379aad6a7ef867cfdf73f022d3ad18a95c42b36251b067d7c218fbc148d2e31f5928968a5d15fba88fae02306f8693a2e5f3379f8b835d20a605951a7a8fedadd91ab859428e65fa3ebf93ac71d3f4ec2a9ceb8f62f540576bd5a6030302047c435bb500683066023100b43864e5d8c582ff9cb0ac47c82e3df30af1b4d706f687eebe7d0e190d1ee3511493ad6a40d778c6fcba18a5d57dd4f70231009be1d8a2744e301ede2f7422be7f377ad7579139cedd1a2a1cbfc09c04e2e022b6308fdddd0a1445c9ba6e260df780ec0302047c435bb500683066023100f603ee7bff05162b0a2cd68af3b849eba69873b742457c20d6348601844ce9be8a9efa2f8a04775243ab0be2096644a40231008244a6b9eaf612d8bf8a0cb837d42167ba218b6287a9a1ecacb11ff577b1a4d97cf944276dd1df02a1cfaef745f02e600302047c435bb500663064023041a1d38086c79979c420712712ec29ccd4facbb1ddedac92e9311587f23e229a27a8e4449feb2eefcf406ada9129dc97023078e25437218616ee69e6d4e25c5f3a7965e5379ad23d972afcc4a8d35cf7c80e4e380a519b0ae3662ff7289b7d6aac2b0302047c435bb500673065023100f6a92d10e270e2f3798df232b304b2b716c8f549f53c73cae0926849396cf000063bbd7a8cc9dede1b3b685c9a20977002303e368ccfb5659b2ece1f1b76899fe993164f5d209646181da9b29c558a5a3b5d3033b0f7b85b1122e83229d5c1982fdd0302047c435bb500683066023100f57d8c21a806ae1786e41239a9f751581c916134c438e8617ffa41fba5696bf03ef1c104403c32db96fe5a2c29a09e8a023100e869e7f23fd37a53e925f9eb120df8c99204667fefd6e6063a574eb73384d14ea21153d1353ed1110ae110ad9b9ab54c0302047c435bb500683066023100f5cbb11b0eff203b5d2ea8dc14e96a28743d80cdb82445ccc34fb48420de54763ce4095970d99220503abc04db6a7a64023100de75a632ef1dc159264c9a27089ba0fbabfb47101b6d88baf2f798b69a767d171d99f5d35a62e68bb997cc08810f032f0302047c435bb50067306502300b185bf97b3ac610cc53048c20235dd0e38fe766578b41e07b4a048f298c8f17f7aa6e71ff0a2bdbabafa28a8e70abaa02310094dc7874ae678d26f2ac5c26e5cbdbd611d7bc44ab7ae543fa35e5ff06f94740c2744cd52ddf7d66b6e3cea3096d87310302047c435bb500663064023066f66284d19859baef8044de52ee41dbfb9cb1c2275a33a92d2275d3cc7d8f80c48b76bee3a1e70a2707c7a30986294e02302792583b2cd620991ccfd0bcbaabe38fa20169cee1ef493f3a7edd69b0bfb470101c53dddb4499a17e4878d9479bc96e0302047c435bb500673065023100cd6fe19959b03f3b7a8df8b14e90678817ae878b1f56eecbb3618d3ce318656672dc9e9e6561a18b6095886d40aca5d5023030dc12d4527a14cca0e72ccc9fb151d63c4087d1dff19853ac017d8d8fbbb829d714d9a1bb7b9d4a51b5f7345a4461a50302047c435bb500673065023022d8011250d6da8015c672a4bb1ed9ec82fa67654ca157467932ad8514870fdb1574a68d198be6312c904462f53ee40b023100bf3734d2c0ae17c155d6d3158e80d7bcfc6e7c1b8dc1b479c9dbce19c42ebeae1282b08ae6ebb2af930b84be0718216b0302047c435bb50066306402303cd76508f7acc06e6fd826378152f6d78fabcce7e70e014f1b28f2c409cbb229dc1115e7f17a04d94293c9d40483f8e8023071c3666bfd304d440672b1e1450db34b16ca8eaa69ef4428ee33e49f1589bab5d22e02124ab00ef1d1cb6934cbcc34960302047c435bb50067306502300cbabb178fb6547763fff33f93684aa19444d069a3109a7935584f698bb47fff35bd9e5205e4299c9f1dd1add110f3bf023100ea71b85f024e5225c6dd456024dc03841e2871a873a41c8b58f9573df74ac7e0296975b5fa01972290df8587ae2a70790302047c435bb500683066023100893db25bfe689d3a226df4c4b8d04d582dde37fb59ebc70ecbd216861fd1bcc4ed88a2cc05cbb8e96044c9d7058d2fc0023100851ee13042bc320f63a61817932bf2df4a8f94b7b2a29136ec43d1405c3eb86a9f71ea09096d0036b92ca58d3f477baa0302047c435bb50066306402307f87bda9c283c36ed7c4464861e0645ffea70af1b0e56da981dcbb78df0e6a853fa7c1603cdda45b20489e66a24b993102304d951363d39d35eda1b61a0833dcadb8b8a88b411fd0e10dff176e09ec11d62eb7e7485dd216662efd12f21ee23ddbfd0302047c435bb50067306502305641c5bb431a138a29e4d2f2204011ac1a5fc34454ac0426b3ce0f52be423745dc194a89b7dd46789a3fbe141d047ce70231009dd76ce9d3dbe9bbdb51495bf6ff1f31f94ba4b95fff7c51048839edfeaebc7a3531ed6ebe8fefe0b97c802ec241c5040302047c435bb500663064023047761206eeccb2d3110b19d60e1d1578c3fd824b8272c2804c87c94152d780f7ee364a78bf89ee995518bed943e7678902306c77f415315d7ec7fadcc7f95f8db3d1f36fa5f729ee1a8fdb5a2600fa4ebcdba16b96052b36e18c6c39f5d5f54501770302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303e952730b0a26e2cacfc31089d665410c3ce69ac4312603e11f7c9935941b7ef1648cf326fa9a58dbc4dd8a5d2f45409023100e88965a0f5114b23335825fa8f5ad4241a2ebcf215ee085e50eb140f8f7bf5f87fab019b67860439d1a8e4b4381b9fc30302047c435bb500673065023100bff4e1316d7476edec62f19003be7537e28f0e02e1a3bc559c7c9757a84eb993767e51c87013d39123fca5107436710302301e9fd3b04719259b982fb983c8a80228338d454c61dece88221491841196163689fb4e5faaf0c0a302e59fdaa9a471130302047c435bb50067306502300cd708e22d815646756a5eba1df7403ca42b0d2ac6ce4849faaa8b9cc0d2c3189d89a2096269d2154b9fd890b62b451f02310086dd9e7605ad28e1aa68d987112dcffa6bc87fb6ffdaa8672e4e1c17e26a317e56a560e634593c3627d84cfc8e78914e0302047c435bb500673065023074910ccf9ea6a5005b08404521215b95494c54ef777c0d8d02e64c8b48a23fe5335650a33768fc410f651fcdd62d311a023100bac263dae326500656c7f90e338f33590a875e7c2f443778bc3b54e527a53d8d19acb6b9855e9c4c33bb65ef58655f200302047c435bb50067306502305486d80cc781ad229128e1a99b8d13a996c55ced1ab880fb306d2f6264f5407e6cce4e7629488003325c5038af313a120231009d6af79766e039fea6672b6353da82979c93cadc23ff9a52ca41d16e3675e0b311ce27c16ee6cb17f3d1d4c85c6532950302047c435bb5006730650231009d7268fb5c62005114634196db1be2495462ba279a72445f168145da9cd678252d35078c758f8f6b3881375deb001f4502303ca9aceb425f8429b06dd9ff74ea2c9389694b72661cf677747bf5f5a8f4c501aaaa6fbb97fd544eb0064cccf2372c780302047c435bb500663064023038d01d2e56697c8f8298a77f3b5f8addc80e036c557bd2ff1e79317a4713d8ce35a9f274e7dc24c5b94c789f2f265c43023031e6405cb69e805f6e718e0da12a490e3c272f93f708f245cc11f1900c69f43282ba71cd7f177c127acba6ae37ea61ec0302047c435bb500673065023100a9c02d19566c0bb83be8a336df7a649447a3e0b80ac0761f42b847c9d154e24d5966693a1a211f0623ecbedd10532910023040c6b2a1e57ee82e6eeef50f2f9736ce458eccb08c246c6402d94775eaf7cf66e5ef2836c43c214645ec70a47abe48100302047c435bb500683066023100e52df58de2bbc00f7f4a597ced125b510a5e69b3a744a6ace86c98a268c9ab829adb024963d5600163dff8ad6d07d700023100d6df3f1e83060d1e8b4de2f959e57af0f831440b10c8774f8ebdffb985049fc4a0813b293eaf2230595f8a22993ab1860302047c435bb500683066023100d0b53e820526723e1a73b87c949a3539d8021706feec68825da29b737e23af29e3384d4e61190030beed7cbfd8210ace023100f5adf8e949b16c405346363b3483106c560cfa241d777d1bbbd9193cbe66f46a6348dd3d189b5d74b2881592259ab6740302047c435bb500673065023100af450c5addc118b3d410a01edde6f437d699c34a76890ba0a45e1c8815a967e40e201cc33d2193a2673b6e75af043a28023026dbbea7c352402341524b268f4d76ac22bf17f6f75d9fac6ad71684b699014f9f58f982f6ed98835d4ed929da5b67cd0302047c435bb50067306502302b790f9f24906919d1b9a7a49c6e820fa7d0232ae13887363f3f51b42a3a1ac255971360a10a718e449e21b4cfac674f0231009f55bea0084dd8829d9bad9cb0af064d724987163339f159979c840b38fcb87e55e6ae3c54395de2ffebed3b93af39580302047c435bb50066306402303d426fbe599104a95898797e3145eb46308a120597f33d328b8ec97203aa9d68aada32238a53e35efa3be6d1757885aa0230383019993c715135399b9eafa653e47825c063e1c848053761610d111de5c64185b0d47b9c8404acdcc5efcaf7d3fb210302047c435bb50067306502301a15e8a8de7cec20ffd4bd1c07c8a6556dada7110e031639f0ea23322be66b0f8939f2a968de66f3ef5f659367e22bfe023100d4ce0e7f00388fe423abe243fa66c1c5b22de81a568b14f48ac5dbf982f88f04a78902dbd1c9e6b3dce9c166bdc0349d0302047c435bb500673065023100d427decef5cc6dc545f113e7bc9b09abe6bf75ba9391dd2e15129cf4afd529c6b40daa49981564d61c41769562b03ccc02302cb35ed5349ed50e0412bd809745b25a64d76e1616089424d4df9d4d56dd1aea6bf442c722776471047f3a66839874b20302047c435bb500683066023100e2d818b4b0d23c924f78a9a04cf767ebae4bccf286f27e31aa1609b7a07b9e66affc473d514950592a69bba66ab27876023100869c9f9d5c35f8c5c4cc169d41f86dff450bb3e6dbbffd0d7777a91feeac1ec1328f2d57020d9a61f16c253eddbd25c90302047c435bb5006730650230580509e34a47e5e654b6acd86257f650992556e4067684092cf6b6b983ee5e438a8c75f7913de5777051c84763ae1192023100f75f28a92ba54aba6ae9fb102aec4d3c149920a968407cefe1ae67344f700a03d90a4354529f2413bb284d4d6471bb180302047c435bb500683066023100d57c962f3ce9a89af132a9db57c8dcc84e16eaa403d09f69a7eb47f293cc4f06cae3012e31c9056bdba1228b00d98820023100e68e24a1e345d1a1e0a0babb563fec9d8145cfbcf13cd3f32cfe1692e3ebea6c9c2391f814b2b2e235bdd04ff78effc90302047c435bb5006630640230168fe66d545ab51dae9d7a2d215fa19d6b9d531051b7f4c5d143d40a4f2771d47ed95eca3444c4bff53c2d858c492b9f02305534426e9da899a1f3dfce64adc1e8d5ccf6c928cda5c91a20cd46d4ebf055dda80404a6dccccdcf9991ceac33941f750302047c435bb5006730650231009f2c9e6efdf64d469bb77e06f4cecd5697da68a36ded0ede937b0b792f8e54271e5baf9f50f73661532958f34cef4624023026a7ff3a5cfd6eb0abe5af6901ce2e3ac0862101aec5599153f8f18b03a17ee28ae9f7e4147355f9ae43719fc98addcc0302047c435bb500673065023100949cdc1f209ca429a20d55c3a4ac2083bada4405e6883c79b9a755d29f3a0fd3c06d81b68cf227b36ab6622afc95d772023018ea721e3194109520085168e67d6754e1b44e9b6ce7c2cfaa29b35dc1c9c021eb77a2b686bfc223b8578b1ca23c232c0302047c435bb50067306502304d2e79c9af15e5044f7333b545a2fe2d11389002460b956cd54fd5ce8d5b74f95999ee9c1b8e242b9fb1a9bf5d828d0b023100a63df016aca8d45a8cf793dd95cbede52a39d33f972c7055194c098e4a3f6de5981891c925893a8c86fdc6fba136c2340302047c435bb500663064023061bd35d0c25dfe5a8becae85b44ec098764059c9e83ab872611a926aa776a8be4c75fe6744b18e04239a75c12da7002302306cad6dd6bc52748cf3d63b9e75e72a6af16ef558ced407623e9623ad550a5dc34d0573665936a6f753b48d630908f7440302047c435bb500683066023100ddc3c13048fba54c70c94c3185a1475f49636cb965bd027fd0f2c124d596dc1601f362bff3d0e38c78e49b9478555068023100cbb90953d6996f0df134996796d91cde43b533dc0b6109fa141f1aa1bd233190d8afd40c0f37be7c8727262953ed24180302047c435bb50066306402306ebfd9b13bf197c890483aee3e01a3b0f2c347a0ab58e4f907f39f6f7dbace87587cd0a9fc54c1a45911e3ed6d6eba50023038a07e32db8ea073128e47e8ddef572677e777533e93bf65cdc0d686f55bafc933caefe69a171fbb195f6591d35b39ac0302047c435bb5006730650231008d60b2e25200f0f9c44190e6ce51bce7160886803c60b99fa392f14c5eb3797a069ae2dfb21a46dab5fc966fe42c181802304abaef0999b56b88aef6492714df9bb171047793a909787db8da5db4cd27f2951150ea6381f1cf63bb8502fe3e599c050302047c435bb500683066023100bfca0609a8f2ebde4921aa84940e0e8cc3558fd15dcff75425aa4368547b393983d46c6d9362d79d0844d05a09658e20023100b100f4b8b362e28bc1e2ceeed3afb7d7a9445314ad0c1bd5c17db885e9b1f5161f213f3fc304069a697fbd9e35718d290302047c435bb5006830660231009bc933beb9d68631125bb9db043d8fa529c36b60f53c3a9e61da43262cb8f0aef4123ab0c3afc98c1a4ea9252cb5aaf1023100e143c357a357339aaeb1c6c08dbe70046c0f2a1628cedd19772561f6747e1e8f281cd367294cbb0b5e29070c775b2b320302047c435bb500683066023100aec14479df2a67b8fc831e04e207be38dc7345c2f3f14f3338d8e02749127f5a486aa1b1bfdaf230c26ddf824c5f70ae023100f4b026d5d8819331aaf28dd7d01c9755d662c327d340cd34a2e1361283197610c14d6ecbe30bfa5f1ae75bc432efe4220302047c435bb500663064023026bc0edb29ef6385144efb357d30522d71d1790d34eb34f053094e93e98c5dcf9cee78b66b82cde119d94300a279f45e0230040f72493aa9aeb73d0123a1087daec634059c3dfd62dbb426c2216a27b406e88640fd48ba1d5950c0eae91d0f10978e0302047c435bb5006730650231008ea7354d589cf3a443bee9e1a5bf7de398ab547536ebfe6b282b08c6625a320e51e71213a9847317bc3f3d24b00da873023024a0d4b58513c9b9cdfc9677a37d4e84ad9df4aca8042acc5c0345cc60811f39408ee020f6bf93684d82ea0f05e40d680302047c435bb50066306402305b7722b562b4d4d1a14b19926415ee7351ec10b8681785afce5b8d1cfc17ffec6d54664e74a3c1b1939c510c4bb3084202305742b012413d0c8d762e708f8f04953f3045a06148cd10e595aad905d9933341c6a50904b747be9f20a226640217939d0302047c435bb500673065023100ab941445b30bd25504cb764aceab07b5f17590c5f9d1fd422868e191d93247867c78684716ebb62d93825a403a640ef102303c6a7f8cc0fe84b33eac5578e76dc9ef055de1c1319b03b0f68ceeb2395644278c3b7fc8d93f04a99df121a73060b6ad0302047c435bb50068306602310086a01e5f4323c1921a9726bf6ff1313aa995ad05746b41ec17250491abc0ce148d4838f7f7e4336455bb753fb5ec58b1023100b04596c025113e45989882bd232c116974bdf4410a4950b128d2654435f5383b5107e6a8e25c1911ce55ea1d00c416da0302047c435bb500663064023061123bcb495f946b545e8e61f360edc6553d65535edcb332a719e94f6ecaa40850afc4362635905f256bfb75b6bfdc0a02302823897fcbc0394245b1053eb3889ae790b9b985117c340da55e3fc2248f7a17fd0db0f6386537589f3ee90f3fb8a4ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307504907cd52a403ac379f71ca107b380438adc2f8e662969c9835f004968806d4742d490d4b6bb9630f73c4637b5d431023100f44ba6598d524a645d4e6dff64f44f7475cb8e69e1f5ddc96fd895a6539bbfa6d692d7f69b9120ecc08b779edc701c440302047c435bb50066306402300d98cf551004ebba40060c1c880ae818315e0dd280f7149a5b95ce9118d13a44ca3b17e1d4c32b500fbe98958c9e1d7502305c14f6a955212cafa7c95af161b7edea33e306724fca510c96cff449011ba197b02ffd30406dd681a80083bb60be67130302047c435bb500673065023100c63a9e1f5a3f33e5844ac62c27c740920f84128a70b1060b9b6786fd2e24d09bb9ed2db843a0bb0cf34d2e8a223fb6c202307d479d4a300f2bc88db7409da1e3f5fd777cba9afa0ff6592588b101580988bfa36775482dacc1b5274232851c3c99180302047c435bb50067306502304f69215798a06b245dcc0ad56683e1204ecc2417ac6f8cfbd311ff97c7dc64b8a2142a46023b1ecb9a6a30b2a0fbf1be02310089f9727149b89db7ebb3f511095f4b2da78632b109447426dc99945607f7c62b5e95674e7cdee7906b9259458418ef0a0302047c435bb50066306402305a78f459abdd34b6d1b546abc19fb9c87a0c4546828732917f220ca3fa3fdbce3901b9823ad26bfd9a0fe158b1da263e02302ed155f48a06ddff9cbc1e61e782ea34e5fad915078bb4e2494cf81bba1df49fadbc203cc1a68226c3c596f273db5f590302047c435bb50068306602310086706a856191fca569849d3be6168802960c3e2fa48131e53e71d0a5786a93c9cb52e0d8e8aa92fc914069fcd192839b023100e9bd1d0736b09096c47d2ce49166960772fb903007521d2b556e58fc1a73c7981ac37bc452b736570246d3b110d82f8e0302047c435bb5006830660231008764279bf7b5a2ade51c47b57fbf0b9416562a16fc092ea7c42551c550edd923a6f3a616a5bcaf3ac5315840d9774bab023100e929eb235e912e87196e6d79bf89beab6f29b86f24cfce44af3dccccf1d73396ee2def74ea7b8c45489bbc1eb9b444ea0302047c435bb5006630640230520b248161d424c61e3b17bc721654b79dba8ab2cf919a5771e5c83cd5f00bbdd33bd31357c4084dacc7a7ca4106d31002302afb47c8c565bd9d96df845a76c392e4edb87fe80bad0ff7f33c7f0b81af86a77ac15e81a452b71435a7bc47a233d6bd0302047c435bb500673065023100f77ec9db3d38c13b23d07b45ccba95d5bbb29f11bf2f16ce481428911be17e7562a69d8ebaa50cc98d8c3905b14b059402303fc9bfed5fb74391752a753671e3d25c7205923ac3fd02929c80be2dcc7bdecf178e7322fc3b049cbe21db327a19f6f40302047c435bb500673065023100b7a834fbe05c891ecde239505ccff66a887cf2d4e2bc072763734b1ae04c8c74e58b45142da81fd34f2eaf95b6fe337202305619de4499241b2a054c9c25ada44943eadcce5d31c669558851b90d44bd11d37d79ec4ac1bcbb6a6a45626cf8ed4be60302047c435bb500663064023059e4d81d5bf11389058bd830630cfe2ebf230f966a7ae01ffef119d5da805a1029d7930ca7b4db782e541f1ffa81246002305760f2bf374d22eda3f4efa69655e7abe1779afa255cfeb6694f0c2163f33cf76999d480f936dab78efe695937a5f34f0302047c435bb500673065023100bfdbaf82ba0c89c0ae52234d064cfe03d99d3580d5ae3fd04eb80c55cb6367f05af5c2a30f414249a04ddb4529464a9102302b90b3315bb4654398d9bd3c4bdcf1e0ef4b51b6cb00a51e34f15580053925820e53f7fb8696ff581e0de58de8660ed90302047c435bb500683066023100d3b27914fd2e04fcd8c77247a58d1b4bdd4920da860a5ee48ecc4e38da6cbf1a0499e6b12e8a90f68b2699d536667487023100b743ecb6a9482e4dcfe006f4b8ab14d9343c73644e789cc8b29356e464180eaf188cae9ed3ac5265878981350a589d5f0302047c435bb500663064023009f8a7942e4f2409ae4c818b585ac882e48f0af3ca4cdd2b6ad2571983c39c134744847913c6993dda47aa6a9edcddd202300a8960bda3aed1880b246b9b623d9af1062cff1476180ed2e1b34f10a9c030ec3b90e0ae916f6ac34174de6fc046bfb10302047c435bb5006730650230257fff1036f81a9432484d52cae6aa2ff502b79b4abe83ccf56db53ca5e89fd1cdc03fcf5f8d36dbdb20215cb98b4aaf02310092fb9f4f70309b3608f483b3f6b3fe8650e942a1b22d0614e9302542e97e54782a2629e5cb848ff1c019bf207e52cb6a0302047c435bb500673065023100f390bb450bd0b00b64fa2d1964a51a69e2e3e8aa5dbe065de94173176de005b876fdb24ed078888fd619165c41915dd40230760a7547d0616580ff55733f8f44033d7e72b9efe77b59d773590060ac8fd87717a6ff76c64de23f888707a96caed3690302047c435bb500663064023100f2373ae358a3a2d54a06b154c77ebcc461b9b66005872f3e098b71d17bd9aad1c980b4d2377d0fdf580cd784f0934d64022f3a1e7bff4d186ec9c1c385979050ae3f764a923e0cc83522341748020c42fd44d5d0e8e544626bbe94f28720e5220a0302047c435bb500683066023100cd7885f6dc7ab8ae028381ce1a4d2fd24a29aa84997691daae07fecfe9fdb18c5f289584e690ce470aa6cd31c6f3e51b023100bf027d89ddb782ab35bd3ca1079cce09e8fbac59fd3aac308329e965a871edd69541e5547846b4ddb447c36a8ac77f3b0302047c435bb500663064023047054e9c34de0d927d994e3a5b997dd6ad8922da144d2f815353bcbd53e2d7e65f0803bee25185f25ef2fcf9e1ca610c0230090e339831c38625c53508d78c035cc916800d272008bb5d0ae9a248b4c5b0f4f87971e0f545775e7e752d0b952c0d960302047c435bb500673065023100ea77e5764e2ddd91f897a67736a457f9051f7c31cf1fd0596c7d292c5546ef144593548b8a0b80c954bb5eb8d7ae5cc302303a12a97cc479ac370186e4dc286beb7f7ffa27d27abd2d6092e8e1bc36353997ead1237b7da02ed62134be8e8e3cb4710302047c435bb500673065023100888785679deac4ebe391cde5d050bb3ed3e32cc9693e707fdb30c650ab5d2d6423fe29bf91241214da71ff32b6e9f5ea0230169a3c804ab4767066db1f205f4a1edb1ea918803b8c9c5eb861ef578e9598c01b54df33d4a67ecf6c77307cf278b3e70302047c435bb500683066023100c9a74e0f9312c66f83ba31b1f0c78dddaf0d31f5957fe4f0894fb00976fbd5faeafea76372541e97fb57ba55bd1b530002310095450799d2e7e26a9c9704bc345f3464c6abff200d55b2a1bb741b2672db83cb9f7baf598470fc431fe99ba2eea45e790302047c435bb5006730650231009cc9b8d933129a1eb6816f30bbf620f005b39f5e897162b8875cfbffa8af97ddea4788d549477de28fdf7cfb25585dda023050ff705c2ec0bb393f653d10ec53db9f7c2cc9db7030ecd70a41ba6e17717b1b81afd8917e032a4c2ba15a300e7226ba0302047c435bb50067306502300cf1167c6abc34089036c4a879950b0f5eeeff508e65b34e832f5438e054c7af9894cff3d0d0f12bfa2a494b02d3937d023100c7528941667073e326666e6bc05e497eb488cefc523e423bc01ea2cf92278cf0dafc5e74d4bed1a14a134d39a50f5f0c0302047c435bb500683066023100a88be4db68cf5c76a580a415c4e0f149e3481479ab25a802cd6e727bd913ac8e958a599a1b520370b32d0d9b43d356c1023100cf2aec79f6d40664d9e951851b0d0cdc54122c70e8e5932f0abd0b0038106682d716953a924c4e797a63c1fb8924f6e50302047c435bb500663064023056018f8b7c6510f78f9db9569d7dd8952be65634f73a3ca488188a9dcbddb8040acad0e32b70ac923fa39156c3f5b05102303947d9d86c24810b47beeb69ac11343fbde82804ce5f0989c5774c2f90281f5ee85e9e998982b1fc50101eead10eaba90302047c435bb500663064023063c10c3941378fe7ea69e1577a22cbb2338fbee1716a23256911911f5dcaca1db43c4411844f0f75b5a6bd9b49cec7890230242a65fbdf5ff20d3558bc32259c1ae3186139a1d62e8592f00cc773d8d2ee3a4a829c2c1d73146ce6b3866b36a817d40302047c435bb5006630640230087dc515034099ba835a5a50d2d8e5fdba16c69512b6caf344078904783a414054077e6dd2a2f4118632c9671a67ac27023034b22cc18cce4cd9e978e1babd5dce3af84cdab529e5548981d2ae4158907e43a31631645e298e9d20fd8165636d93610302047c435bb500673065023100cdd485319c22d9efaf80dea946f60e9d2398d5eac94e0eec8fa44bfc8ee3267fe1aedfe508852de463ffaa11175c2f3f02300b7a3a32cc996fdf5817e079a6a9257c1f008f4ede85b9f35b8e7c81204a6b184c33ada0a6d604955dd5ab0bb163b65c0302047c435bb500673065023100e6d8f48d421d7de8c85542debf3e19413efc8fb6534b8a2b551d6249ef54257a473477f956d6373c25b2a565bda247540230438a882717101c6cfb612a7b5c8b6bd388e7fa00cb5ff5e193e6298a49925ffab5f670b8c7888f45c380e048f174c39c0302047c435bb50067306502300e61a0122458adea44df7ebfd02ad8dfdc98d6c24ebb574627faee431c187109da4180511fa8cd89751d5800d1b4f545023100ddcc9f09d251c0ce71ad05234a8ecc2a779b1be506df8dc5f93dd392b3042f15dfeaa76356873337eceff49bc9d68eaa0302047c435bb500673065023100cb8f6ce3b92fab591baea5e316931b110991ef84697f1a757323d4fdbc9e770c567f1ffa28394eda9596894fac4c258102304b318d5174140ce2b3a2a1761e8a220da3fce06ab28e82335e812f7635d30bffe31c71356a5d072fafc3a045117af1b00302047c435bb500673065023054f7ad10645f6a94c066df4839014147fb7c07a75e381643460543b7fb822355d7dc520e5f1a7c41a7639ac11380c1bc023100b81f71bae7b27aec88cc2f2eb35b67320bfa928b563399b3f8e5d598505a724d0e53ecbf93c5f51e969f57ad64a843b20302047c435bb500673065023011e4981e028f9d12a48f0621e934a5b972bf36a506a383bedbe2c71b73a7efa66d2f32026837b14fbb4982d9ca77dafc02310088bb4422f2b075533ae8f2c27dd02194206570b1386234bfb2d778c08f015470b9a0c8d60b85522a5344aff70700206b0302047c435bb5006730650231008aa21b62fc092012fd2b3b0bd9c6a0133a17b2d83dadb702a82154b8557996acf5d1b48821a859dd76cc0fe2e10540c8023055b1c0244b726eccebfbed2c152550bf9d6f0d08d9538ffc89b78894e561f699e3df66195f078c8899e8fb8fb1db08720302047c435bb500673065023100e2a3368a9a9e1c0feb76fdc2e765decc8e1b3333b3677da949f5140cfb554c195147f3c3d09a2d193dbdb61a98c6dabd02305d46f91c6e4335f04f6b156d382a48a3b452ef3940d6ee77702501acb526f0fefbabee91cadf0c1ea6d8bc626fe1e2a50302047c435bb5006730650230197e7585daeedb5d2bb030fcddfa951d13ef054f50557aeae3bbbd52422b5b5980af53eb363e41e4bdf04054bae638b1023100937eaa48dd341c6d5e186866f3d4790fdf4c8c0ec31acc0deff1c07e492baec28e315c6e77b8d140f87227d7f14188380302047c435bb500683066023100b90e92b971fca9e66e55ad6a015833bc17e81e40db97c16921c4cf88550ed0610ddce31c52008572c7334f9a7043e639023100b771d9f4890d37c3057a287deecbea05d8a965cff60f16159eee7d06cad8f877d5638a60c71020ee53416e5c805bd6080302047c435bb500673065023100db8873e15508bdbddb4cf33a70840af75111bda2250ce31d8f0858fdac03abdef0ff55e761ca0cc21fa52711e267512c02301833de27e626bb5b18572c264e67e55d7dd215a31e4915c44664e7e4d25d31627978228dfd73521e39c44df3387da5460302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402300512061adfab95259441cd52c7689775ecdfe2b40331ab91a5098acbe213f923c109634d259fe4b7ac985589531eea870230743aa7299d7d1935bd76089457a4efb3fc7169df83fc83c777c80f0a0370747179ff50b18f7745f2760bfe55e24056830302047c435bb500673065023058f1788fa8cc5a95b87b91087d0a96a2c5362d8989c7db8c50b58271c125915aff3345b2d52f1456a1bd644085fca07b023100c201fed8abd8033c74bdba44e756d1c7167600fc73f88aff8b7ea8fc9bdeaa442b14968cc7b6fec0747b39a0df6f04990302047c435bb500683066023100a7a7afe934edeccfedf08b040cec0bf16c85fbdf69bfd808c49ad4cf42c5280f05b08b3cfd061578283c65ee14a1061e023100c8eb2a3723e480d8e03afb87ad1aabe50b54d4c1b20f7e3c39120c31583d2087ee5f3856c6a0049bcd1141ee74ca1f7b0302047c435bb500663064023061436a7e911b95a4d32150f2ee456e19a4bada399120acd03fb5ead1504b1f3858175890e317fcde0984641d3f866911023029e7c162f51c5cb8ca836d6096a9e23bd2f563e0dbad4e1b851d316e7d2ce2ac253711b9825e864efac24b032d4c724e0302047c435bb50067306502307311a688b56702ec0500795cf1cbc9dc9391da08d5c56f6a39a0705c5ef77830ecc9129c9b548b05881f929bf56b5acf023100a3ef9949e7142d714a86eaf3ce5ca4cbe47e828141647328530e3c65dae1d85d92dfbc89920246eacbcee1d1b66de27a0302047c435bb500683066023100cb4e518b5bedd541c52d44a1fcd12b3aed0f331f6c92f1000bf8f8fbda719cea34e13bda230745c066634eb9294a4d740231009d1746329fbf1450c8844f49198049912954077dd168bf764d0ca7d0e059b0a87af81380d890c7936a9f30fb7ff2c9fa0302047c435bb500683066023100ee9ba1eaf77a2810307ae54643224946692c23abdcd627c7f51c007d3a6958d7bf4641cd96b316b535304fbe42897b51023100c91d01aad15ae60124f2d52c96dd6e314ccfd3a8b149b51c3d0badff13de44ccec650b8ab0d68d0fcc746f5fc4958aa70302047c435bb50067306502305018776a104b81244273051dd17cb8e2f0cc2da01f8b143d2f8204b68563063e120d594e8c5a2cd308c700b7c223b5f4023100cda436c0b3f8126ab2d195ad675c5bd8be76ee787ead2126e4a0839942f65555655e8b1d350068e58d15599b06d3695a0302047c435bb50066306402306f51d41b2034565bc836d3508f00cc1b68e6991ca78fdaa8b3093c17391509f7e78f8b894cac2b8fc7dbf3fee2f6e05402304f414fd7f20ca646fb5dc3691da14563fb2fba8d52f5f4fc4a5c5539e980202565982e50f46a9974b6d018b7cc7c83fd0302047c435bb500683066023100ab8bd9067d215a8791b904a9482ba7a0d656bd5cfba9acea2684343d58e3fa33851474918c7cd12e458c38de9a129476023100fd11cb2a94ab9101b60afa86a5a8bc66ed2c313c8ce50d2066e29add908868680fab7421ff5e1a0cac221bb291ca29290302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e1a200c2ba04a3e847a6b1f0687df0c1a2fc9c3e800954b9ee76f2f9eb5a6de02f8555126cee444b4efd15f3f19f171702305c1482fbf554cd4295dce9fd864d5a5a61b5ca1cdb5a5ef7dabe3218e4ed0b7ddf583669f201b708378d7ba71da46f5c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230541b9bef1df0f43d6f5fb784558c9576344f73848e4d528979ec89e4d1f01d3d9389646e6ad327c1da4612d82fd669d9023100f43e7e8c2e1c9d7e7cc9c1cf37645321034f2ff764bb9e57604d26bd9b891d5ee5ed3aea99c6fcea8ad37408d5a8f1140302047c435bb50066306402307d23caf5515336688a91116c6e30ac8bc51aad7087dbd65a0e8a3ac783d4616214beaa85be19ccd0bd65b5d12fc2beb602300f649ef76e48a0411dcc99662c04eaaec8b2817c49da0f38f7eb7b12f3fb8e6e59c4a484b7924ff12d76351496eb37f00302047c435bb50067306502304098b141965d42a227711f60c3c247175d98a1c41c985b3ca53ea0ca618a4743e8134d6a8c67cc02807311e52ec531fc023100f55b9d62df36f1c89fe7a0491f607222591df3fb39c31329fa52e3f8f55543997e6a7c0311712ab468b594ad2daa8d500302047c435bb5006830660231008b2d8da26a942409897d92fb5c2e82c186ab340b0345ca618b488a4e9b13476a8c18502d3d40a6e2add7d8d0e648f962023100ee20b1ebb32664e0a8351fd7d43bd2a79a40f4dfa47dd3ed9035357d84a22cefb1a2f47e65e9d17d5aed698cd922c4400302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cc4e0cf94e4f526f13038e69b67df38d5721603d28921e54a90c1f5881cfefbefbbe93658910a86fe2fc73b5b959ad32023100ccd908a4dc6f0d8fd5348e7a3785a14ea2a92c7a9005704939e8fb8cdcf79ec748a27242126fa87872caeaaa880d82ea0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310099243ac48ea2882ff846e83305855c92838c1ef10a49d629a4025bfdddf18cd8aaafdb73253d92c84e058d15584e349c0230797490dd5a8a304b1bf492257da5769a40dc4c536eeb1fb2e7d8b547323da0039c8791bd62e1bcdbd0937382cfb6d1f80302047c435bb50067306502304610577a85e3ba1de38046565451b40da796115d856611da4e759b6e87aae0a6b636ea6c0c8ea7a1af3b3340a91c7e09023100e7a2f23a6a4f53e0f4a470b2c3aaed8a0fc95499fb476b2ae6e02aef6e2482ffd6ac3170c54d79c58d9d235c6b9f98540302047c435bb500683066023100f0db033762e2551f03c2e383d98f71bffd46b4000c512bab4bbbd55e65bf9f19cd947acd5a9076b6018e881a5b911e5f02310083af1ca743aae24298a2faceadf7c964fb2340d2b6db2bb88ead03f6d33053bd5bf6d0fedd4a1564563dfa4a70f1447e0302047c435bb500673065023100e219984b6b88ea390ad7f2505e34a10cf5f854cbca455eaf1e84a93f9a728ee68afd1f6ba9cb9b5247b7d721bd8a342502302e78724c407301ba7d9453fd2884ad8e66923ef380914016a86625fa391f176d6017057e89d96e88366ec36a7a936a340302047c435bb500673065023043aa27a5d201c54e223b7f608d11895f87fd47575fed438a39046b914f73d928e8be2f588111a0641f6d0c98c7089f4b02310082f98f681d05563b92cd0bd8b78ae3ab89b6f2b79e1f7260f4e4d9476d7be4ac8e61e019490579fd31648809db8f11730302047c435bb500673065023100b99cbf22979181444d2e255e898d02d3e94744d8d63fd98dd40fa28260e8bddbfe067ede4483c9291119396c632f67170230739bf86c8e9ea7297f63bf795602476330c27dca47b493a92b82a6608dcb8e360d24eacd27c592440538f2cbdc3d168a0302047c435bb50066306402304aa9cd0d8723905240b4036111182e5cfc75d62215dc4319a6af4f9dc0d1258f2379a83d0310298b9a655c0592cf900002300179e981c9163e95342197116023bc2cfb9225b67a77b1cea4bf1b6bda45f7f1cf612e14d928731e843346bd2349ffd80302047c435bb5006730650230764f8dba1c10517f283c914fabfcba2cd292bc4a839de51e463976d5ce8baad0b2e16bb3d987ed67ee88cc65cba3d4bc0231008da55522464324e1445da4e4c40bd121274c8758248b3a18e7fd8cf3502d6242a0de09025bf56d230a200da0b4c530520302047c435bb500673065023100b8f357de692b68b546e40a79c4aeb4b8cee85dce56f235a6f748d7403c224cef39852cb1d1965af73e47a274701d23ea023061cceb197e57f945e70d6812618d6719f0b379be3e2006d4dbffdcc38a90a4eb295c637779e46fa3c49e34077a4e8e7b0302047c435bb50066306402306776ebfb15636168eec3bc87d70983cb27da94b5c476f04024702d67bbf5f71847c2799b25fc23aea4d1e723ed2da4af02305ef3d80130bfc37d56cbf6faa4a86d336a5e1048b3214cded25dc9d90021d5d9ccd51f3b6e722c99eaeca96e417c356f0302047c435bb5006730650230517d04a17772fc61c93722e4ce49807d9c97be331e7882595f72362094595de274307d59bdb4dffcbd88da7e65c16b39023100a7f078ce97a1864813870345282f3a8f67854f73957d8ff8888df74a196bde6fb9c23472184265f81fab521a36693fc10302047c435bb500673065023100c9bf3726d3234fe9c1ef7ee3869270ff0c1a899a4cc7661ac1dc1d9625202efae7eb7e4ed8fd4c8f5afc8df493294be90230141862c59fbb4cd56e47f4c8e0680913485f1659e0cb8423e00b52566f7097ebec43aa65336193ffe05479b782ce78ea0302047c435bb500683066023100b8a6645c1c5d44b403824f3765370367c8b992ddf3358b1ac7addfd1884d8ce27ec71a706dc773b1b24a6727358df879023100bbdcf63a2079dd1aa87fcf056c31855b721c2897676d029f470bdeb6a6395e70a564fa7079f22724b25e4c7d320ec67b0302047c435bb50066306402300ce0818dd23a7c6c0ad195267163b66328c9f3bd40484ccd867230f94b7f0393bceb5ba1455b08b42bd34daa4347e62e02303c7f2742b96b88ad38b183573935f45fb057ad246d7209be712546f6b3115cfd843f8f8c91a637751e2fa96019ca9ba10302047c435bb500673065023071119d452b56b1c41ba0935e44ba89aeef16023ce42d7e703af6f6b9a4a183328f46296e62ae7c99058a5263d9e33d1c023100d769e49f447e20a017ecfb7e09b135c0cff0c2d62a6d0466b66262630f282abf8fc03efeccb1d0a11653e3207c66241c0302047c435bb500673065023100ce2cede9e973337748ce4558ea4660621587c5c2e198670badd9d0ba48529c1160a0f8768168156f273bf6f38a3c0d2202306ecc9bd3160fdc66a1095e912264c7dec1e8f7276d65ca0261db929dbf8f12ad2f9e363edcdfe3a2b2c5ecc8c6e56f760302047c435bb500663064023026c482c5f2e42b7f317d70d6ae9bf066fdf2b5c6ee394bd5210cc0f5a2d36afe283e3fdcf51bbebfa648e68afde2873c0230582faca53ebb93bcf60a5a76766dc5f7161eb1515c3f522d774cd39810379902eb607fdc6a4c0b4cea78b3a5787262cc0302047c435bb500673065023100829acab869c12f213f15833ac794f7e396effa1c11442d92b6307ceac8b2e9859ce9ff40207c773cffe023aa7031f65f023004d9c0f064c2886207a4479f69a9a058402164e90d8c7bb96f63f7aaa63a5096321cb967fd43e94062d651ad558564a50302047c435bb500683066023100ec662acb29764781a72cf0f4c01e7c66d88ec700677553cca2d0bef3defb70714b8c6a1d941e5e7b3a01ec388fbb990c023100ed434d88372f4038ca1c371833d4fccf3ceb120680c8a6689b9f2f431162a2c1761beee104724fa87f5838e075f716680302047c435bb500673065023100e24d8e60d5bd4b0d3d8d77f69fe804ff18708b5effade240c48cee268a088596230a0af9dc09e918277f14aebec0ffa802300fbc0bcb480825b8bfc3a521f2bef3276db60109758e56dbfa2986e40c1a8a46c478dbae82e3ce6d0f01d40c93af85b70302047c435bb5006730650230768fff9bc981735eb8ac1ea2bf63b9f41c7c50073095c6e5615cd03e2876e06ed1258ee50d33ef264a8f09c956d49c6a023100a60de18aad16cd373c7dcdc61717c904e188eb0f0ea4e44f61f81222551e05dc40bb3376598d7e75e9b7d1cc78ac9b3b0302047c435bb500673065023100e47479cb7a376f07fa99fa3becf1389f8364ab750ad43354786b66485f1df781e908d5ec2b113773ff5a507858f90d6802305e92d931bcb26b995447646a3e2aaf76396e0cf8e2942584f9830c40d6ee3b2ae651d1cd9a96bab61f5e81f99ded54a60302047c435bb5006630640230735af8a7db655b63b364a7471aa72e7d1ad04f7d47910a32102d3f28d0a2cdb3b71dcbad25fd9475cde3f3d1324a5ea902306157fa38151ee1261711a0217cbb88746c408cb33eb9a40fc76328ff0767a77728109eb117b615180d86b0aeb1e24b510302047c435bb5006730650230669a6621725a3fe8fc388e825b0ef20b11f6f17f930822691b41620c90a44f1346c97add51a06b8ccd814ae6e30091a8023100d2bfda6b2ce1fb27eca07a64ee5067d594623100b645928644987921b624d88652a6f6b6ba826f97e4e7dcd8cc3858640302047c435bb5006730650230319420bf03c239c6074fedf11c3392bbb6bd33040b6d76d4848ea10fc4833f41be8b9161ad6d9752fb1b3b07511f07fc023100c004fe4200f69ded2b94fece0253992b6c5f14ac52b71e191d701955c7fec037333e7a35f5362f3d926bf342b0b0f3730302047c435bb50067306502301b4b010b765f97a27988018b736f1fd842eaadf5d5a197515db9722fd3d5ab1513d36c4eced761f5739e1ce4e7b8d319023100e4a0fc1f1d30f44f5f72e2933ac13a7614a16d7341115d4193868ef7cdc2dbab2fb8978a43c85c8865e4eee406ea53700302047c435bb50066306402300e50d58508fd54bd4a486817e16d269500742522ade72bb252f0cbb5835d2f59ffb1936ef7b6f303a5f05c511712925c02303703bf689e7d61239b27b1beea7c457d130dc7c4e5b0ab801cd3d2b04f49cfdc08550d878d18ea2c62e98d1159d1701f0302047c435bb500673065023100a0be7ada7044185f981c73c551890348e9604a114f7685c309d285b1b33310f5ddcfdbdf1d7963f9a5ea32e485fa8f380230505e33175704763e8641ada4d3652cc5b0f48c30853b5243c34fe2bf01a58c04ddf79e5f3691728c13069c7c665d12090302047c435bb50066306402306bc49027db09b6051fd32b68eb993a9ffb97a13e658eba5c54129331d156d0c137f77d740de5e7f5f0c6918308e27ff3023062666e21286027940294e6c9e61412086938d1c4b4b15d592ec0767435db28cf70cfe177cae68e60eac60dc6cc1e9f1e0302047c435bb50067306502306ac40d5108e905b735c06f52ce9b3fa98eebe408c98f00fdada1cfc1168bfb63a5938a45586189189a41193b4d6b7ef7023100fe9ca55c98f9a013bf56b21bc30811096df459fc96b9482c57aad29e290d8e6dbf862bc9925e10b30343a60fb84876020302047c435bb50067306502301d1f5da544949ed58cd45026c6a227bfb734b395dc97229634f31d7f4c769d49e2cfa1af898a2059c9e65d228e153bce023100da75d0e833b768c10d2df72645bf959e64990e9fc5ff78958ac2bd1fc3aa45ed749660920e78a1c01a5e7bb90128cfa60302047c435bb500673065023100aa2b28e2b0b1f24c46b8b27c11d57f2cea98669da130290cc9694fa595a612a3e9b9a2afa7ca75298ee4601f4bb139c402303b4ce111db50bf6fc0d35ed485a0bcb5d5dc6d433a6acc84f72ae0c987d7f19852b89d5424f29456f1106f9c60ce2f900302047c435bb5006630640230489bb5e3bc5af6538073739febc8dfd0ec7cd13ddc4adba910f8c97cf8812f75693822604c07a05f8be319df582e455202301ddedb8492e83f8335837603053e4e98274a7f227e00ae4a3684cfb74bfa4310b7dfc407cae9ed095a2140a76b74c59f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f92c80378ec280f1c84cd75e80f786fb29cd904cfecfbcddb8624bb8a2fbc8dfa508a6a39c149da82632fdac04eef8d6023100f94ff419ddf6cc2409a8463c2031d0d80b4ebc66251a6c2efbc40abcc65b7c4bf0dbdc4bf2223797fa7c60968631b7c80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100cdc828a0fef4626adb86c05a316f512e402ab29f1637432da299f82d1b581a19fec79b29998b715258e3ddb6d338b19402305ecf4d2fa9fabc8deff7050f979dbdfb1c0dfb091c2eabe7143b44becaabcfc4fc3236ddbc98f8af3b3b63833f86ff550302047c435bb500673065023100982ff9e22693aaefdb71ef520ad63b422219c943e6eca5d3998366fd8026d111b6bf26548ffeeeecf3218a25968d759a0230741d662461328796b7d05bc87a3fae6a94ca902a56a10e896a9c9105dcc965156b56825bebd3bce93d623f61c2e216b20302047c435bb50067306502302817ee299ce30b056bc68bc790c2744771de7c0217a4e19f9d36d25a93a4a4f7c7f4c6f0b73f32820c20b4b55aa86f59023100d2c99036cc18119cd2e7abd11219eed59bd75ed4cb3306c593e938b71e9d51b600c9fadf294db5e412f6e67a9b2f10de0302047c435bb50066306402306086257a227996a68c4088f24a46d882170b692d2e3610bac808a1015c393b418fe13f31cb69a85585f168dabb4e8418023042d0d1c09851ec73297c829f3dc694a5bfee17df61f6a4c593248f0e21682143b6c540313f771413f55e1350912972250302047c435bb500683066023100b65b6de14fae7228c5199db3620b32d7c2ce8025229be16f14f60b88f0199053e33da9a86be0b203cc62b5ba90568f63023100afd8e295bcac31c6703c37ae3a2311269fc9172dd99731824d6fcaf8225d607e05a98ff4c4f5b3649aebca3432a9e1980302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ba0aac8ab6560c3e885a0f5abcacf8633cd23d720ee1aa9b19fb0579b0e2f4925fc4520b31180c26e34b40c8c729ed0b02306a310c62c9ce5882d7e70f3e5cb45efa1455cf60b0be6f01b53a932850c592403c9d5076b461fcb0955081b1812cc63d0302047c435bb50066306402300a9d27dab3ff5ca10a0f74735ca3395a8f104d9e2fc2c2e3532f058b7b7e5e92712eed33f57c4fa9f6b0d76b5d8fe276023074bdb5244d4528324a1aa57aa1707a9c1c6c92653ed94dfcef689637bfc80c1e702a340e64c0c153cf679340c48599810302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304a2975ffc18b05d2cab2f3c1c8b3b0f6701270f523fd4b40b28e16b381ca15f5cddf111f7df5b30ee147449d492eefd8023100e85db690f5fa609acc8300ec4644098af139a621b88e4d176abf3fc5f2d9cffbbd337a7c2d45193880f55a64ad2d69190302047c435bb500683066023100b170ca140f18c90c25c0e1f356ba38c258cad009e2193bfeed42507e94e6ea17d9ac64e2790675e676dfe8e538a12402023100e89e98279e2546138d39f3a00102b83d9cde66ba3a2bc52cd11222803fa5193a5427ffbff45e83032e5c59e2078245ff0302047c435bb500673065023026c42f52ae0b9c8fee532ac8fbb67d1372e5b6b5a790061f1c55e55625bc0fd159aac84087758208c51420c34819c35c023100e08e93365533958d019ec748072d291d96905db85a9f078fd07be16bd8b9c89f3a4c20e5fa6358b26ddb42fb1863aa110302047c435bb500673065023100cbdd4f5bab37824db7cd6c2e94e7d4d4937e9c4b0a11dac99e444b752ada0a0989ea7b404b89a88ff108e614a47a06d5023062f3e3d8b7afc465c405fe6ab2f6a91eb411f4defaf896ca67bc88b2c7ecaa7933c2a81917fd020d907ad61ab43a02aa0302047c435bb50067306502310090fbeeb6b30c12d5c9ad38eb4f12feec7759dd8c41f1bc13aec6c34a373d2afe49ed2db400b337b790b39fbe7e66409a02303c67037625aad3e8e1f41876abeb03c7bd0af7b39046fcb8e2eeb644a73b532768ad2464b8f5b85fa370c01de27bef4b0302047c435bb5006730650230550a0481ece5e8be79e8c0710b2f83c77a18a594de902dbcf7a9823d52aa34c9ca433d2b00ed49c011baab237716e33f023100ebb51bf2709201640d7681caa8bdc951c6a50594c61390bc94f76b084c5bbb55d379cab879aa267bd38d5af52e7d556b0302047c435bb50067306502301a67023973448b097641a43ea2b554dfa1bcf636679f56d61ce432cc5b5867179c44067280ed9c318f3fd9ed9282641e0231008c90dcdf1bef495aee7be2253267cb26160647870ff45e1daed35f729b6814a97c6bd6d2eb5ed1002efe23dff5558e4f0302047c435bb500673065023100ab780fa2071e42e7ccc2f992a5d12539745632081f94e312b8671f67e52c0a23e0edd7845fb6b755b193d2801a4e8884023072a6723eb27a0a685ac4c4f7401c319a12004fb03061aa95d0de24c45b2f48d220263ad8d902fefa8f4024f8ca5d2c070302047c435bb500673065023100ac5d087d58c77a2a439e9b20859ec7e2cf615fb0c255a460d57b8f6a90b7949055310814bb939f3071514b70706e733f02304dc9d44c7019ae784492fe9bb635e8c764fbcb17cb414bb6e8f24916e5085a7f0820db58db66cbf576d0ad5c4b19fb280302047c435bb50067306502310099355709e623a87f0b3b20cc1ac8ba6cbf3085a601c193a46858e652eb2a9eaa0c62305fa0ef0f692a08807070414a9c0230349c553d77a50e9dfb6e8462f1f345731fe161086a3ac591a2c883be82e2d4799a304ac9908524eba8aec74623d825ae0302047c435bb500663064023004c3873b4a3c861e53d3d5430406fab580415d978021a79491e2cfec115d6c73dda9d91732519dc34bd09419cc38a34e02301c10e9af7923259dcb9bb421bc0db560b4694b490adf0285783c52fc71f3ae1abec7cb135b0d8d6387bc382e0920e3550302047c435bb500683066023100b564d9122386cac8da003b50a67699558b03150dd5b1a7d226e180169853b3bc5d98f7bdec0b7c42fb599196658d39ce023100b56a7e76ca73e94844d848c164b1f508625ed711371167b78b57057c534a399ff2122b99b798bbc8af3c75b301113a4a0302047c435bb500683066023100b798b48f147129956509ca9e22154ba39c52ff6ab4912f0e2df34c6389c68b4d6340f32c57b94844e7eacadf85b66b62023100832ddc1ed4191edf01bd7e82c5a4878156264a9b4a7a651c779c150a2c83f88c5b34cb2307b4acb35d7eee316b4cd34a0302047c435bb50066306402300f9a44d85da2ad9f9df355c68a2815d4c183f6e51add8d7c67dfdcedceee0312f8eb36ef6293bf85ddbca64782020b3e023005f0c61970aab1742a8939b5a4b9f7dff06e1a1dea4bf20d4265729d671ef5aa4bb3ca76da227a212fda53c25129922a0302047c435bb500673065023100e1bfed6633022fc6c141921ed905fe361de63c972e76051d2f4fcf113e712f9a5cbb8e93c9afa07e64353ec25c6e511e02306b4fea1f309352dc1c79dcc17638f14785ecf99022ff21efafae2f029926b9f9c25e522bf630abc0c19ca3f6b58687300302047c435bb50066306402305ab815d1a4e2a1fae0370ef563a7c063d24147c5164f10430eaf8d3935678ecdde56bcbbf561e8a4dcec4fff7d0f3b7202307892e42f1a97b71989c02935bf31d811d621b4d67f37d3bd0b3daea309147e6531a606606c5a84c19dd70e167118c3550302047c435bb500663064023054c340b19183e8d9c0c2f5d13332ad730151017258e4c70be02f4ea164f29384d1823f5e0239170376f4c010567d03d202300fde0be27d0f0e89f02ab918d98c21840a8497593f557c3f3bcc397c2ab13427c94c29f5e2544d630a94d992b8ae5fbe0302047c435bb500673065023100a2a9bf89119588c1f7aec6daf6938183c46e43f1f9535af177a55ed279fe6ca6b3d78b4cbfce696cd3ce2e00b55c324802304612d44ca34925ab52abef9234acd83100b00fa2c70fab8a8df99d7380746a56bca0044e3381c7d82fc1c424927f9c650302047c435bb5006730650230067e532dc6787aaf32f87c3e233394dbb592a40c79f357a50e588913a2d9eb57ccc7e6fa70218a0aea7dcdf4efa2e784023100e812f418f44352a0422bfb139cc52bf32459e08a4ff1abf2a35f34eaca9d9862ff53bcfe5d3c1c2f6a2e04c7ee5268f70302047c435bb500683066023100964dded4b40b6b18848928ef876a64f751fa908f8553fc3af84ac437598b8f2c40bb595e145704ee298056a56ab1bddd023100f664ce9a6bdcc28b661e87c5ce008536f542c65903076524eaf04cab63eb60fad8f6defd27320440db7d19ab131322280302047c435bb50067306502300c43f0acf2962ffaa7980a593c21788c1552cae0ac732ad60ebf39395702ee1c43f907e600607945335552424d29960e023100f18d83f3b731b78041c5a7b753546b451973a03e2bc3c30b3841ab5bb603a6aaa8c0a2920fa2670e3f86411bc26cb9650302047c435bb500673065023100e19bcb7387c07f20289a3c96487146faad4b3eeca8de81e972f729674bd239a536392b7bc6f2dd22d196f76bc3a1c06702303f24427660ed28128c58d7e9eba0899c85cde52cfc99fe4df4c4c106d4583018b4a9f3777ddb57887e014f48ec978a050302047c435bb500683066023100e7a8f6d8bc1fa6456250c0639762bc98278e6f95fe0fd409e35b36202e79208b4644ac79a968bf00abf9817010fa7b40023100d50ec2d6067501e2328161887cb0f0cc5a61a997bbf681cbe7f4715aac6c51452b78faf1adb7a7035b09b12e6efb88610302047c435bb500673065023100ca325b61974ee3f5fea88be7ed102b57b1069be84cb1164b57b5f8a6fd96d8bdd4d9c9763aa1c722633cc67da1321c870230207cf7d63ce665ab7b577b599bf3ea3c68dceeb2f6168cf304f77cc6f7cd9ff5043f03f183fbe61f61df2f4c0910be280302047c435bb5006730650230251a9982cb7d58e758b8595ab5b02045fc54fe20b6b615314672b4df83ef6b09adfdf05201da91157aa5dacec9c6bcaf023100aed7b4ec8cb9e6d18b1d00c6bbacf62e49345602d78f77640433acbb24aedb557d0c62f68e84096f23e30f3654ee33f50302047c435bb50067306502304e144c52dfaedb3bc14981406c6be62723500b03cefff724dfe57667cc9a038efce96595e62a68401770bcb3c5c3fa3b023100f768e57c50cb207178669605c49768904394919c1895fa1d4ec6906bdde6e745a09093a8f0ac943f1e594a8014294cf70302047c435bb5006730650231008323cd90c74d5d2e1b81aca452d5bd6fd51742b518e69b64b1ae26fd3428120380ceec6abe13f8a29bfc1a631bb9379f02303af5659a0ea83425d6be0bbbeffaa4b16c84536aa6d08d5e89389d5afb31bb5d52f0a660b953ca9f028567881ea50e760302047c435bb500683066023100b916f01cbefe9acd9e61998a861bdf36211ca73cf52ddd42497ddd038c4a00441e5d23f0034380a05a937e68072aa8bc023100f76f9eaaaed8ac7709e43a932db5db4aa0556b4e23dbf1c24be105d416503e0d4eab6218fb1257bace56d394bcebc5800302047c435bb500683066023100ed70fa7cac035ad6eb44109be09902e8f99b7b69d8b0b11504102e5320a8cb87ffea52caeeab5b0eb5866338dfc4c5c6023100ab86343df158b7dbe0a30f31f61a71bc078b0789b7c6264abcc7b010e7acec81a627d4510b65c23c9ab37ed893e253fc0302047c435bb50067306502303b89904f175d605cfc753fe91931a26f5ca33612017b63799786aa64d8ef3383449a25dd73fb5950715b15c377eca634023100c5320e429af1ea4c0f5c537252a25ba571e0dfc65d3b2bdd14262091f5d417aa6b9b27a23dfcd5a6859a3b01b5e8707c0302047c435bb50067306502300482f7c0dd5934afc9779d5fad60d9e0c3775b929be2104f34a0bc7ab705b235789f8aa777cf33cb002a97a309adcf01023100fb2c28e99ce241660e83be8e1594f2376757785182806df82e10afe4edc50da80b7aa8cfdbcdafd9f90f2a88ebfbb0570302047c435bb50068306602310093fb81117d444554cfa530d246a1a64a40387d93fe791cd74f8d3b073a32bb8b52bf2f49cae5be7cce1c0b6b282438e102310084fcc88c091537568cca8de4d8b97e79f868fa3e352ea6907c0d8d53f142b44b6b10709ed00a36ee4f4fc02060bd96da0302047c435bb500673065023100f0a66dcd190df25bf4d76937958276514179b12792e0a214838086476a9cbd9d35d55cbf6247b0a3dc0f18a5920311f2023055a36ef4d0b12bff25516cfde37de6cd1816e076bee31023540fd4b280516e5fe3445694a4714a8e34d950aecd8fb4080302047c435bb500663064023065e3f89da3a20e20b731b81ca9eefd0f2a704c9eec44553dd1134ef43b10d611aa5470810f637e5bab5929ce8497dcbd0230789d96098c4d126ea99e8d4a9d8b49554347010cb9526a4ac26b2760e1982254a746598310df7f6e0d985b491ba04ee20302047c435bb50067306502302624a3236848c06154ced2229b6a695c77a82faf6f8f70485e76d4e14c476379f34834332ee75f8f61197cf3610bcc1f023100eb0c1c50c0825a32fb4e1345a75771e083d15145b4ae2f78db098ee7b8a68c204cd88982fb636eb35ba815de4d0754d10302047c435bb500673065023100cc8289b4fa448b04a3242332f2d8d5bf454beeb4d4dfec6ad868e7cf0de9955bbef993283ae46d78a64f5c6732d675ea02303a32484a13a65d1e82163633e0c3ce19472ba338c07128589c99d68992a5d75f940db941ac070891d6edd9a4d921d3330302047c435bb500683066023100ff3dbe9586f7c903f0fa1c5097abd00eb13b7b07290faa9d94c43b49acf1f82f1d1888d295b840d43019c4bbda74132e023100c9865d24be44f61f10b6a232cbbf2baaad24baafd50c16f1fbc8220868fff54852ff0a12571db6b4659eeccd43388a0a0302047c435bb500683066023100837485abde95c3299c29f8b75c5e87c492afd9bf511896c983839f457c5c40f4617d4e4bd41cd1a05da182e3b3292995023100e5880cfaa64af19689f8cfeb883fc982d7a216a1c36af79b23c0b19c2cf4fed61c343559e70844251774b887e7c466ad0302047c435bb5006730650231008223f4287e300cea24b75d7d0162025ac72dbb049513b96c535f897aa589395bcfdd2e6f8551930c7b4b00278941985102302e624048b1bf84d61a1132624f3c81822bdf2ecfc6964ea98a9047e85b6e0c9b4d93d458bfceaea84ef051b7c342ee570302047c435bb500673065023100ffedda8debd45ca4743ac24f0e6b05d37ef4af51b318272f3ce3c11e4db80a92dbadb361a5b404161c9e8a7af60053a30230234412b57e9103a7182477bc90165dfb15d0de566c5b0b652ead533c671d9e8270433d5e011385fb6f00438f447a576f0302047c435bb500673065023100cf9742d90b8952d63013a6cd843e06b35f3d8a718e4d6f9dcef87e9e2a79b042af060db808a1229931f75d854a0b531c0230720c376921c356b57f5cc614d86caef35d19f0d5c857893dca0e79b67b81d3dadb03ad3a0421595797c62496b0ebfc3e0302047c435bb500673065023100f7cab4c16d21f21b093949d3974068a017a6748d5ac3a9574cf7b1e017afabef0b7a2ba4c1a2e4c104dbb21f639c3c59023029f5e201a1bf3d19fdafe767011e60dfef359847296444a2bb471c6977f918b8555917a0bc464f52ed1cfc6b60b303ee0302047c435bb5006730650231008cb61221e51ad7203749cfc664e675c349cffdfcaa38acac6f9b7c82849baa57fb8c727f9221f77267f482a226d1e7af023003d69314e0d258d0ddfbf838023edea12a894df3d7d93e93129dbc8b70040671434c48541e3b23eefb808b990359a3390302047c435bb5006730650230318bf94508b6a13cf11d1054b5e87f309e0e767fd50941f5db64971a6bc7119ba1d7ef24678164b15935def0f8924ce6023100a10c5c2265d1346dc31a008426643afe17dbc67ec51fdbbbd075a849151424319d0d01ff7f43e24d31cdca794ec61a700302047c435bb500673065023043f6c70ed61a8c645bf91d7541d9351a352f226fe50b757f0e462790a0bbb410847f801cbfc70e9ca72ab012a7c2483e023100ccc47a3e88971a40728715b7b5ba1a03c403ecbb33b2fbf6c7269862a7086ac123aad1fb04d789b0ed9775f8017958bf0302047c435bb500683066023100f8e6e0c317b86d12a9b8d4ace85af3903fe9a0a66b0d9473aaca28dc6b444b729cb6aabdb5fee9009096e0708de83d69023100fcdb0d4ffad0a52c5e4078a46d660c833d85485c6ea2f1700e4e819e9bdce914dc09ea5bc1b5e136c3b0362d288f3c0a0302047c435bb500673065023100c388a4b32686c7d9bb15e051adedcbfab4dc1d0ebb199609c6b5301159853c7dfd9e3cb26d1255cc751fea15a5b1234b02304be401fcc9bfc72a071fe05b897ef680b31d6b08932f5faedbe243ac8b18408ddef17a991686e1247cc263f4d459a3e10302047c435bb500683066023100e48dfc819dd75ff424e6b94faed324263f4385988baad231818bb7841d3488086f9020d8e88fff62549130cea1aec52302310092297418cf784f9c1be833373b6f403b1b60304af0a5fc8323761c508b1b67d24c8437df9ef4a727826294d61c79d1740302047c435bb5006830660231009ecc02bd4af025da39079eeefab4aa46538e9986411eaf6b3b0784b24d52ac080d6620b1af1faebc458fbdab567c0b6f023100cba5f74e56031532d0138ae29d35fdfe0f2605c081d337757eb9144ce290aea1c0c170041044f1104ec4a51e64f39c220302047c435bb500683066023100f240a53dd66bdf008f25ea2301f0db84ada72a917247831f1ca9153d27b405c567be16f977a8919c8288348a2aa5e3e3023100c8cd365cc277430e5be1e2b42028ad5b26f1673bb3c6ab5156cee944e47e7356bb6afb113629e1f0f28877028865c3560302047c435bb500653063022f3d08392bd46996281675730b941dc0d1a149f7030371eb2c5c4e23efbc352d037d36a9ff0748e43aaf2f308330bdb40230573eea2a8a4020ff12a87220b3233a1ae3cfcb94852786152e205ed32a3b317199e1561a840a37e0099331abdb8206040302047c435bb50067306502306249413a0028682d00170aedb9bfef2292b8ec42adf19babd0a0689e9bf9f0b74ace419262dbd5312d3a404c3c19fcb0023100ecf1eb7d8160a9ba2d163561e31c8b8a0887e6f902649f30a6c66d91f7303929ac8a03348c293c6bd4d2f6bf79c25c620302047c435bb5006630640230287d016dfb3a75fadaa5e58932a69d8b77e3eb71c01cb8579e969c0c9622ba5866bf1478dc3421b69c00e0746c21976902300822755cfc8f20ba7fccee5481280d190bb71e4c2fd2f08ae5e73b4b190b257f58debf4a0f26d710ef664972d23023a70302047c435bb500663064023062bad98b1adb071253c67e25f1d355b56cda338aac6e2ff5447182d7c7148d69fc45c5bfdf4b65a680dcfa4b79186e8102306f0b975c3c2ab24b8310a72895324388532e092f1cc81ed6f31bcd840c492cb5ddff585aedd67e5dd2dd9df15fd4ee470302047c435bb500683066023100c9cbdd0fe4d825136cbd348cb34a664a64662c09ab58193daba728ef2a1bc03421417b8a25d8d0f999e6a844ddaa751c0231009cdefa51952f3d1b601aa3594e372dc4a386036a4a5f18cfca5a0856784bcf130f891faff827ffbe12504d001ff6d6b90302047c435bb5006830660231009d096f4fdc55dc7923c38d14ebeab2ad2129f9b0329a0eba6677708c033972aff9e19284dbdaf5e6b08dc209347f3380023100b30a9ef6c72d76f4540b9c8d8ce0543aa1d4848cc6fa723e3587e7c18c684630309ac1d36083c759e86f7a14774edb510302047c435bb500673065023031930dffe9fd914d46244bb12f377c296316c7db4c4a2dd41ad02a2f58609574c7e478a30632077ce2466a6eae7d80160231009304d38e825fba8943e870186792b5a33aeb5b714eeb559c7f2ab504bdcf493a252cebd6c357668dbf429766be958cdd0302047c435bb50067306502302fb0c968cce173777ef06557d9cc5b97cfaf858aa968eae29294d3ae060a46df093a2707ffc804966b3eb77e1fa1d3bc023100d366b3cfb10b063892c9bf64c9149f68675cb05883ad0b81757d6d232b0147b4d3a69b10926e737a52c298331ff1b28b0302047c435bb500673065023100f6d9cb8ad1f6667ae7e89ba43f15e028237917458272c76e32bd1fa71cc55357fd0a676ecd5e0536ea4b8409d491887e02304d0b2d48288fcc6eb349a0553e597634accd036ec9824df6ac732a0a6d3e2b32521f218d3e53c4b13431735af9eacb610302047c435bb500673065023100eaa30873afb84eb44c78e1ce2d269ef0f155cb38d64e653f5169ca5105e4ad018f4db969371a7ff00529241417d1510c02301134d69d7ed70ec9478d378ba612d757eb6f3ddffb9f4f5827e3a628ef53941239d571c020d3623badebf8d9b7a9e9c80302047c435bb500663064023078b192fe90a0265311d63bb88272eb057c565625244e1732b01460af3b1fe311314ac2335463ae9901b66625e04b860c023073a8cbdff48153380ebc3d7891568b8e84bedb1a3515f3367e0ab98609fc3a2fb91815f58f82a0c18b610cae1e2515470302047c435bb50067306502303c957137d7e569b906502fac12bf3c0931b422c3378b7f638e830ef55f6c661f033ed4753f733fd6d7dcc89faff8ad8b0231008199b0896735dda10b9dd6ea43c0a960830b3fb173b428913e80afa2be7b9015b208a3a916adb5de45ab849018f70f410302047c435bb50067306502302d2dfbe4e9911f22d179d5cf52627fe6efae1437c421482c308a006afef772c02afc9d5b10eb08a35c83a54b0062f0e5023100b9c50794e549c632a185c26948ce6a518e8d350ee46be32771b6e17079ac220358bfdc76a976e110ccbb457ab6cb29310302047c435bb50067306502310083f087b823ab579ff96358d0f3e985ca6af4ee14c6379bf7fcfbc9756e82a87c0cadf7f26ddb0389a663d1c3f0095ad002300b1820a7ff2e4ffd9099fc434333351e35efa678e1b067b06943bd567385418bafb8acc8a77d3f359b7ba10cbd8acbd10302047c435bb500663064023058fc198b38deaf544d3591fc853a24cbebc04cbd2c19e7fd1804da9c5a2f565d6225bbded35d6e83e82bcb8b5b52841102307b8d25557ba2464de5dc73f5a2f59b3d0c747988a252818326a2f734b32bef2ec119a3397fec103acd94da1b2d7a9f0c0302047c435bb5006630640230692efbb86d2b8de0190d1173ef4c95dcbc82c8fa4af6d06131ac08138dc2e5b1e2e95a0d211b61f57e5e0721d7eed87002304bc1acba0a7654d0ca079b8b15a6a0559606846997ae2f219c4ece9698a4fa5a26c918b58f61490134cb8c8d074441100302047c435bb50066306402303b39786098376089b080724075bcbc477f9a1cfde43632234fe852de7395a57ac683ebf96f04cb0669446dff47e6a9eb02304375ecfc1440f9c3374379d8abc6dba1c35fb341c7fcd16a4d40962b71ed4941aea1f39cdfb69d4137fdbc94d42af9d80302047c435bb500683066023100ad69879312d1b8b90fa5f0bf747c4c590f407918e9b5f4453e870da4b66046f821428e15442dac2059050b49fcfaaf0602310085991343d8cbd533286ba4e789d91a1c71aa5049cae015aa68d22f5b8fdc341440e3a5bf741b51eaadc5d813e26dc20f0302047c435bb50066306402306a22d9a34949ef2350768976f81145076d4f0e548b40d4609f41cccc1f494511a4a98aa27e7fd22de0c4a4ac69be131f0230097f4fc57d5db6228a5354188231da2c7746bcd28fad1ae0038e5ab558e30376d45b940e1b5a7f885658d7eb047928500302047c435bb50067306502307650fe9a143c0e865d3326ed25323d05427ba1603bc69adb20357548f76b7c4a326326604388ee4bc611b10303a22281023100981127b706ef218724c8d6de56a825311ee0507ddfba70fdd9926291ef461d30a82fa0f3d847119422eb78f7438a02f50302047c435bb500673065023003e70a8a9f735b81d9a5571874c027e361cde744b7a2b85e27eb179fa876d1a7d35393d701a02734e44d4f26f7914b3e023100f4c6459683414b420d62a8b07c73d6a940cfc1b3407d14207cc19d4f0e520c7e12ac646b30aceff034a695b004ce216f0302047c435bb500673065023100abb64f61a4cde55919c6ef3157548c8bf2fdba51c11febdbebd21d2814cbab5e026c332acc1357c765e1cd89927aa2a002302da72a8dab4b31578d150590e8d9d2e476a2031444a60c84480ca92d64b11e1d1ad86e87bc81e2eb2e31a28715faa6960302047c435bb50066306402307b9a8a15f6c6ead015392f56f95ec14ae876ba13f6f64a0616554e15e6649cec82a598b89d49c1d92c65a8647add148f023054128455aba71f6a671cc9dc7a19fedf3fab7e83fcfb8505ec390123eb3baa5fcb52bb2f56f15bb6d5a803ec79e348b50302047c435bb500673065023100c69e5c16dd144f6ffa3481d82985733dfd3d787e1f49447dff107506dda317be18579d507bd9fb278e8b797cf717eff002302503d019eaaa44905c8ae25a860132a5173fa8d3a2fadc8595385a09747589f37cf6ec7817bac3a940c0cff4073892b60302047c435bb500673065023100afcffbbfb69555b178ceddf9d59741c94ac6e5123ae504c582312ffee028aaacc108b80c93dec2d98ca5b03b4a5ab48102300dfe680e26f6662dc6b32cf0af3eafe8935d180bd8748abc7c4335695055d17e4b900f5c550f9e978c1b70b19705a6f90302047c435bb500673065023100ce25624850cb2c162fcf5348c1f8298c3080e3dd76f07991226b1ac29a00a2c2214b7215a7eae55726eae12c0d9e6cec02303429c82b7aa1e9eed2b85d6ce2d703ef244608d77771f3338c47b62986da74681403ab7a4139567721f58be4115561070302047c435bb50068306602310097d307054a5c5d9499e2937fc61a2ae4f0a4272aec09dc126e97dce8be145c1a9ba5d15712953afa8f614b12e67bcf35023100cb40a1d5a324fda1483ba5b5532d740f7d097473a50ac44a99a9a5a1d5fb01f76f6397ec7911329bf1678207199dfb820302047c435bb500673065023100d4616785590c655189e4703f6a183dd4a5a957e2f571e9e7112402b2024aecf91693b91995ed19d16eb3b9dd3f2520e802303f3fccfc3e03650a740f3f2f52f9691d777d7d190e7aa7165793a65d08e166d2007e2da57421a4afa895e2d908602e1c0302047c435bb50066306402306f8b9c8873c88df4d978f6191a493ffb72b6000929fc65a5912dd1eb7e2755eb9ad5286d0f9feae9956fb995139d8e8b0230461f9f1e2cd0ced026b149f4d241bbc201bad9dfad2a90e1ca12ab9ba961108327ab499b81c508d658b35c044d76679a0302047c435bb500683066023100d1201d0ed8c0a3fb0211b0641731e2dc9f4a8f6b9bcc4f8c6f61874bb6134af8413165b8f5039daac3a67278e42b3cae02310090f944c0e1f9e2a4f109f037b3610b8bc7680df902ac25edd1adb26f7fcf53f19e6ce83302c804adb4b15b9a96f819680302047c435bb50068306602310080a9daebafff9a70966cab3ef7d661a01f6347d226222fa2e8bbfc6118790e80c89e6be295ae517783490b2615d72236023100af89c84c95f808b64eca9171cc6b00bada59c75a34b05e2e0fa46bdefe6c2277e7e16acf96f0304df154b0f68cf84d340302047c435bb50066306402304593ba403e3ddd3a8939af46993c9588bf696fb5b817f32f443b0a54158a4dbf74a6acc0c79e54b5e1ffcf5cfa6f03eb02301955a6cf23f7b91756bc2315d18cf90d4702c74eca10aeb86a1c7f4a7ba4cddbc8eea23fc85a31d0f789b81233c0d3ea0302047c435bb500673065023100e331f7b9cb548a391da46233a56735dab7c8b33d24a0be1a62bdf0954d1f212ea9abcc0a6b81994ec4daab6d02e5ce62023033a32ae8f76ea42660d35703e6148e65056208560abd55708b874825808d16d53a05e7e6bfceba166da56911d66402290302047c435bb5006730650231009e2e04ddfef32542599f7dfb0425c1a08ca1fd9bbcc66dcfbe8cbfb1b15a25b1d76689ccebd07080ae1dd52d9c250c55023067ca0c0c0f853e4cf1635986ccb1c2818d56a5df55f68ecad9fe7dda430cd409e4cfe1976a5d16a15544976c678b826e0302047c435bb5006730650230644c207614b548e6aa026d24adef418cad6468e08bdee392a7b65fa94ee4b200025d1363d336d75c3fef4eea00ca93e4023100ca2ae6e3a3b08cec810d60b0a3fd3c9feac398f363d60801efe67d2a2d0b53fbfb1e68f6174f358b70eb8b1129e8f02b0302047c435bb50066306402304e4945d6ab774d15037bcf5b3e07a2af47987d8db0b2377a3fac2d1a2f06e936091eee04a4a71244a5b8630dc73c3b9e023021125ef13fbf0d81f4c06587a910d2260cf23a0e35ac21d0611a7d04128ec3338a25597b3fd98b6c6435cd7fe5666c940302047c435bb500683066023100a1a81df979b4ecbf13a3449e276cb930b74244d5a99fbad78f3a57780ea5734d1eadeb8bf5330efe86846fd2d421f391023100f32d3e9ab9ecf01563f0ab71dc6b16aebd448e4921a5ad6f715b85d9460056f9c2258c6d8306e2d5b89cffce848fd2f00302047c435bb50067306502300eb7ead18a7a2576ec501d577698d63b08361da751dab6aee8e7a0cae0c4cf9ef3ec35bb4599d81c42956a86122496f8023100e69c0570c0fe4c0ba43bd3da7202c4a667cfba842ea984533f9b43341c19657ee49b3e63005be373f48c0a3eee74028f0302047c435bb500673065023100f8dd7b9192b478316b2b74b9004aaf0b7841ba196267d3d3c4fb137009b19f97ee9bfa83998ecb08fe9fca9d7647a47802300456dc438b5e98835bcd5e544f5519d9e3879ad80a74ae8f9d01073b0a6b1a877d7e9924bdd68abe618f9ca45b13d1830302047c435bb500683066023100d28866cdd51c43887c9617d7f49d518e5f51d144160c86566ca8c335d1ccafcaa8c0d284cb78b2a0dd41bda679c179aa023100f01cd0249a12367084b7b4159e68441d4ae0f453cca68f3c074984494f715ea851bac9af226caa6a0bc0990abb0b28760302047c435bb50067306502301867f21a62dbcc13af116d39361015394566fb23b9e78806cc085d225e5612b788204da46556619745819c50b8f098e6023100a0c6a2cbb3f79ad249b0e8a26b1d817170a01bdaa0695679eadfd1ca75499fd4b94ec02dc274316004817efd47e0d9de0302047c435bb5006730650230172645568ca829ea25ddb6b4ee615ebd4af2b91681f0dee847fe1fabd7fa5b2a28daa0c2a840fdaaff8d17617ab8ef07023100db367a18f7549aa42629a70fa65193428ca8bcc10364459ddbd6e7758a235ede75423ddd12ade9f28f2d2109ec9012fb0302047c435bb50066306402306f497ca8c9c5e74f3240bb9a20b730a9f167f6a74f240052e36636e1a0c7f498a114e28ea2ab3961086fe44b701bf83a02306060ce8583358df8ab3c864feacf317b8b39bf145e5cf7304c48e6d22a34cc38cda1e4b90c183b2b1aa11d7f28fc20ff0302047c435bb50066306402306fbd04190ce2032054f89aee29aa80fff482e7b1cb3ba8915fc7869bcd16c1fc93038424e5a46e6b6ba854e44f5e83cc0230463c6084ca4a13e430f95dee1f2f7e68b0e9ea9ae7a76a1dec1767af134342d8833e7fde587d51cfa0a2ab744c6fa1650302047c435bb5006730650231009ff63bd34ce8c5f8a7c955988fa36d49676c233bb06537bee7b956a343d6dfce460b5836b7f19557a84f15b95fddf7400230381b786dfdc5f9a7de90fe648b52a91c09a87d144b4bd7ad27b4b0ecbe3cddd3c5ebfd36de6fcfecb73ddc9199fbfc0a0302047c435bb50066306402306b2b9081a1887f19f99e21b96967ecb433f08f4a739a97adcacdad4debba5c81f4edccd5e0309effefc036da8011a484023024d94689f798973d72c5e7efc1a4d0f866184c73d037145d2e1517f2482500b66501a52bf2d0fd5fc88c565cd22a02140302047c435bb500673065023100d44024b57e08bb99f616691f0b6cb23cd6b1637cffed8f440b38785ae9b0dc3b7d882d7ef2ae2eb7b107bbb3b2c140fe0230420bf86443237059e6458d98cdae4c2606c6e462c64de96ab6ce779282c4cedab631c805fba681486e628ddf6693166f0302047c435bb500673065023100a4b1bf2bc47ac6b87f658a16cf5f34c53aa7ca7306fbd743267ab6897e8aa8b20e58ef3f5dabf8521e1eb013e403a44402300549d44bf3787fe607b80a4ff0d7cf66dd7d37f46074343fb78258dda714f4d6e1e1c57ff86fb4160bef7601031123120302047c435bb50067306502306386636aa4bbe32302e3757c37227b093228635f5fc6a643df5e75474fcda2672387615b7c1965b01824d66c84373013023100f8be5557801d09f39c3e7c3e932cf80ba9a0c16fe860029f7a5c48c572dbc09ac9efe176db659f6537567fdb706a52030302047c435bb50066306402307070428220ed667c68f9ec70cf4856f9064d7334dae45b08e40aa7f227322e352c068a9c7babad70eb1bbf2c444ae82902307a3745049bb964db207be9492c823d5f0e02f4f47cdffa7925c3da0a96194541a1f33e663e11349308b8b3e160a81f490302047c435bb500663064023026c04ba0161fe10cf08462c0fceb5ec6280ea57f548728dce9fa1d45d6732e1bf3e409fe71c934cfafaf55436815273c02304dd9533bfddf1371184dc348c9c3c445ef5eed55c7d8289e4ab88ea4d33a3da351734f64482b5c83444b8e78f350b1fd0302047c435bb500673065023100f8763f173efef3a3e1d565555b13c8caa46a893b074194b7ebc5ab58b3294a5f7843763aa044535610e482a436a0a71c02303171bc70c891614ce3fb6f5734afd7ce636022348d7e4cbf9bf06a07f379a9b98de44b3a613e6c3185ffb88bbc3b92c10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100be9c4c8858d2f6df05b364856b173a0f680ac24ca83a0ad0c2bf51c70d2f1198cf24cc9755a792b7463df500e70485da023100cdf82d1372848ab5d8bd1e48e69750b50cbdc179f0a1fc251bf645a4674d11888ae64f242f55f5f1afb0fc5db1b6fbf90302047c435bb500673065023100c9a84e4f17db94fac878603be2ae9d2bd79667ea487b636fcf3165a08ea9edcc83fb73ee9ede961080646e006a5c046002303c806de07a1dcff565acaf14c5c566f6f9a6a464301f0814622a969251445b01521b77d8fec4627f9004a7aeab76f28c0302047c435bb500673065023100e1e94e4bbfc6ae71fa9bb0814a50040bdc389471fc03e3a123b1eafbbb50b88e5e8c211cc30937b4a92f114089b50b81023036cbf943b70ef8e807171513d6112ad72ea4b7f6749a4ec3f9b5982cbe63aa03b24a9fea1f9887933fd74e9d7f5621540302047c435bb500673065023100bbd756bfa6969d1d8e86145ffc1aaed85640826ac395006cc646085a7a2ce5a6f4f32d65d4d23a0e3cc0f2ca90a6643f02303ee53d4aa8aba8b52c63b90e0ca216c23d23854313276d90cf776a9d8ed831020bf14fb91d0c8f50d128e3dcda480c1a0302047c435bb500673065023027c18849d028bdbfebf7309b30ea15962077e30e5c5ba426c9c86f3284d2332a7a354c48112b763d5e94a508808bf23b023100c3b600663ee8343dd9526406714bce81ff0555e158fcb4c68d8b569b312a1606d29a55f9fa0713dd391aed8bd46e642c0302047c435bb5006730650230410ec36fcc4794ff1f9788c65a9957f68d0268759b098dde5a25742032bf0e363f1eb6399bfac59214182a656cda4379023100e57541c2c309b74079550a8a693731a04218d3da6241a745d6c239ca6d744f8ceb4a6625959d907eac2cfb6e9a1857630302047c435bb5006730650230319db0f5847bade57e1c1e8f0942bdf541a60e37490f6e7050d05922c89574b096bbfde48d6cb5e1e0755ff014b70391023100d0d711a513c52637fb4fdf477c0d8ab56c82d033000ccf33d50129ee81e670519b37359446fe74d45580328977ce16e80302047c435bb5006730650230248cf30cf34754f122f2052e5b62eb7df1afb09a71006f363ae3046fa4bd41d206efbb520ad90def333894996ab3baf70231008f6b16bd1ae2a2240288ef8245da7e398e1f849d9300f2a18f941ef4066dc943d70276ca495da50d87b149b5fc198d300302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305b05134ab3eefcc8642444519fcb2b10da47efc94d96bfaa06b6a15d9f6194e0cec43f2d7b22d09b49841688e83550420230574b578d82b8e42526e05fe510b2b58b1179b27327f364fdd87f1ddda71be16c30aa839060031925c2408bdc52d277950302047c435bb500673065023100aff9978ae99618c8778bf249571392de74a79c085b7da08c1e3653c2be2e97a18f74835827119c1e28213c376ecc34c8023050484e57d3b00fd4e2eacb2c5498daaa13cfde3cbff8e03747b037f36f453ab655415ee1e3f5ba9b8cdbccd279b1924c0302047c435bb50066306402305db1bb7f04496ee49f480f92cccd32fadd3126677202e32f06fe54df785cedbc37caa31954c8da8ab2826d67f195d52002305ca0e42e3d4c9cc41e7049756e0b6dc9b33e56d788bd6cea1e98dbb894cdc6a6445b036e5c81046ae10011596fd4951f0302047c435bb50067306502304cb07d7d5ba3a18ce671eddaf9dab8abbdc8ff645d24daa05f5313f1246989f9b4ea7beae605f7ad0943386e3ae53831023100c7659be8802799878176117f91a5d504595d94b03e0e3222da120fc063db379c3006b5c1703c0033120bd7fc2d19bc530302047c435bb500683066023100a0881561d44b847f694a79d16037b51051b1875f019a7a282be2d137997b3dd97992b8cc1bc6288808c7f5f9dac64b11023100dd2392f2ce7a8acb914e2c6123a199d04a2d04cf4d1e391b4a303b0aedd00f159be4af18b80a6ed6a85a0ca8b67fa8ff0302047c435bb50067306502303dbf811c5495aa59fa80b509def5578e52ba1349479f3eade71acd9470b820f9f4ea2170d0d2a8e8e7484865a55fe348023100de5db1e3cf382ff794282fa5f931371724ba0324c18758999325d1eecd65f20936fe58b523b3646f84ecc50a9ee8cdc70302047c435bb500683066023100f067c4fa61039bd2bb28baef02eedd77294f804f1554fb368b75053ed5cc2e1a9dbf3a9795d849c97d5c5e6912d3a3b1023100ecf3a5caee3b7959c90388ed91237c73224731605b27479cf95ef929164300e6b90ca9473733a7d563af7f975d4406400302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402300b4db3eef669ed28e0ba1eab2b8c9ead17bcc7e863030ddf25ab22f8ff09f332e53477e365bdaea1027e49b7567442f10230070878d3d5cbc8fecf25458e7a92653bc240f69d69dadb3cd914811a05b8aa585a6abe22b5ed484d08a1ac4983f3f3390302047c435bb500673065023071934feb71662ac9c91ef6a186bc891e663ba8e093e7dc925e751b451aa0c25afe93b6c69458be737b81db1705ba78ef023100d8918014ba06294d35ec8421bdee97edb9faeadcbf1a6a811ef371a01edba08b8609ea5767d2a5980f26e8e041c9a3020302047c435bb500673065023100f1bfb2392566c9d7c2a155e6cdf82b00187c22c52c59b012edd8d79980093eea2bc0e4f69777a51fc77a7bedcbac75eb02306740647169a5568a604f720b2db281983f4a291b3ffe81975636007366e268cd0cb96ffc47b6a2489622f6bd8d547a7a0302047c435bb500683066023100d8d151762c4b995d1e932aff91b4629085cedf67d8ff620c321058e192ce52e0007d4b42d6cfdc92a192e7672a1d9461023100f0929024f6cfcaf1c7249aa101f18b7240c5906ad1b9a27399ba29cf3876403d81b75f0444ae8db02a9b3549f772e92b0302047c435bb5006730650230155fe3ebe9e76901e0392b52f71f766ad8359b80a56c87330b4d26e32cc020516c6822026fa9a73cd1db21dbe9de0db2023100f36e994a0b79650a7b84fec36ca9c149539cd5fe9d5bc024654ac56b09e5f189a9e11f560b99c17b16cd71a87de9c4290302047c435bb500673065023026b9b276b9009149346d3feba4c5b6f9816ae6cc3ff69f8ff4a64217c84dfe63780f8f32e4cb9f9d32d03cf25898d579023100d1b1bf277c99c930d4740d72485e6d980948db7a2c17b15ca533a4a8baeb0bbdcc084ae0dac7405a3d81f8fff54ea9670302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023050332ccbfdc9a0fed379e92905d3bf73620e35bdf2958d473457291b211f16c9f34127c0d126b7736a66677ae598d8170230672416fcbecfd8c9a1b95dd3b14a1e1a9e1082c7229ae55b36ec2a948fd623108952aaf12f968e678efd29f06d63fd3a0302047c435bb500683066023100bdfaff9ba15df9befbb31415660ba02d6de40b9924e27d9e7d7c3fbe0b0874926733a8da4c017e596dfab2b7680e07b9023100f53ee988ae1a96cb9e47d2b8dc11fcde48292445ad0c402a126a71df5553026486044afd8e94f2ec8d03f83fd8644e740302047c435bb500683066023100c829011c19054f5b540c0a21507f55dd5fae38f6edf7f07dcdcf9f136e6ace74e6ecdecbecc45e2a3ecd866f84df05e6023100ce7c58757252a97e349e9ab386367a0cc7a66ff09469b9c7ac99df42ee3e5c29c863ee7b603bb391e9f57cf3d15cf5da0302047c435bb50066306402300798a67ec643d49951d9bc29082fab37b1140b6f0c2cf1544f6055c1f42b1d1acbfc60fce01b2ad130624a5c18736373023011f09fe548c162842cc6b7a2fde3129dd417531274f193d158a26e36d7ccc32e5e0542225e5f93a329e24373fe65cfd90302047c435bb50066306402305051ff20778dea01a1d3fdc1965f9bb0ffc612c56df2aafe5bb552d6112bf9c75272edf224db9cfac63f3b0f6ec95d180230126a34d94cb33ca39746ee7a4850acb0520764cb65df0896545d7e7e38d5f03651538b521106b2616e9d3880bc3cf51b0302047c435bb50067306502300c42aed680dddce84bae8ab40011729cdc6c1559675e9d475bde9469bd425f8ec6f097c998a9dd196209fbf21d47586a0231009b42e12a57c79867d8d53e8446bcfc68ee8cd64d50171d845887ce1deb2c3b0708c090840f4dee3074df81fcab7d2b960302047c435bb500673065023067c7ebdd7d068259facdfde143929571e6189c65509cf58eab54412936831165d418f64695d92072d21659463923554b0231008c9885afb069bb18de4581ae1fc6729c14ac57765c4ca7a3b3b79448377cced076ab3d5e61eae98ae3042f02b581fdd00302047c435bb500663064023049c46a5b078eb5fb4ec64f9dff5090f427925874dc33ccaff3d756a7dc6d24b10f793cbdaa5a782cc1995e12a813fb020230716e7ef620f99a154c811662f688e47f76da2560f46c4c10b93743e7b3fbe979afe2a33359a22daa3311ccb035bd89710302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008c99c72b969a6a3b0f966cdf02e9a1c9e84bfe3a52dd5c79a76a5157cc5add5e3858608f3b963d6976220aa6cc2eda21023100dff15f834d5351b962c3fc320446cdab78b86edf5162f4bc2c53d508912cc684b105e3f96ce2ed8db7c1844bbc16920d0302047c435bb50067306502307c0e73fa2ce2b639a832243e391d48d9c62e447744e3d6a0ace722dd33bc6fc1c50f59a1cb3ef9e3a1220d70f4759d620231008c300799d1087ed942dcb9c3fdf4ff23f59c621bf26974dfddb91a389f838fba063113712a0d88369f2ed46d2ce4c1a20302047c435bb500683066023100887c8979f275a6999a7e5fdee81cd62a8e43b16229aa1d9148e7ff12d2c1647af1b4435ba315be1bf45efb51cdd44d9102310085b64903d7c274d04388dea24f820eae36d8323826ea01acc7d090371e5f030db7da94d1eee87c9ea77495600b9b446e0302047c435bb50067306502306b55e944f76b9ac0440ae2024da085fdabb86df70ef038b53a1e6317a284acb55f62906274de5fb7ba8ebf7542bed81b023100f1ceb2c266bfeb4e4258effc770354071c7abc8f76ed538eb02522f27a7201a54ec9cff73714ad7fb88c32425a2238530302047c435bb50067306502300335fc7c7f5638a0d622295eea0118b94262ad1631a0b4b029ab96c8d92795ec1ad48ae5c0fe68533caf13cc3ea1d9cb023100a0a86d05b927d4bdc2a7af95bd71fb6a86e8c465ba6180ff7ee605a9cd223cad761c359997aafe5af02358607e4a4a5e0302047c435bb50067306502305722a3fa833139f8d7462c23cb2ae2d8cd4fe3435171719df72b3712b113c75bd33f0814e30bb3c1a0e0971e0d0926c4023100dda7949e4bbaed716d2d70f7feb914250d6331cab90032382fead7be8a68b03d8d280511cb80720199cb5f83897e5dbe0302047c435bb500673065023100b653ca2e39d8a3325c7c28e2ebee707f3defa2728fa48ae4f640d71ba417e61841ad551dfcaf16510eb28c54c8e72c45023076daf436f3636e28dc851efbcbba651142abc8837479d71defd4c3579cf1a3c36fefa3683fa9ac3c61e0dbf5e1bc0e930302047c435bb500683066023100e07c3d2e2a1b29d486596acbb3bd2516614f08f9b6664e0bb785086782b643174b4515d53c56f70f13eb57f471c2b024023100b47f057e873bbd608bc87b631f8efe444ab899f4335e179e908c2dd9f7d8c31de487994d86af9e81380875c53bd497130302047c435bb500673065023100abd04be97fb4775a3abd567bbcaa05e257c2f034769046e4e7cdb4203dceffb1e761877013d30f7b31a86d00b47fd1f202305706c982f9f11981f1bc9b8fdfcd87312e6235a493e3151f5ba35fa24c57fd68f345847e0b27d22c239c420c1ebf332d0302047c435bb500673065023100b7ffb003be39d466246180ab4c5d738b51ca5838c1ad60174319b895421314c9ab0c1d8b1fb1d0b0232b931b0c6a94b402305650c9f491845e6f90b2e8ddf921e84f741a2f6e1ee4a3e64f3a69e918843e7bdc2e6d31566ed0b398a57e5a49a7c1290302047c435bb500673065023100f2fe1fb5c50159b0c815772e0c1345f564b5a8858f57330f05966eefc424871d06c90e07acdaa47906abcdd9280e03e90230173e1ab8ed113ccc34b4a1bdd207f1c1689fdfe816b7b3833b334ad1e31033b883c04e73dff53c1950c2de715df136d50302047c435bb500683066023100f89943f51aab1add24311a4fcf1ad1deb4f27f563334e7aba134c43e060ff2ec967b4dbdbfad11c641264644d31803a9023100e7e70ea96630db5686b28b910ec499212979902b7d01fa6df3e8abc7556fcc01ab847df2edd3b576e45821b3c1ee85d90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a4f114ebd369d47611ad257b116533baf18b2db96508d74119877d97f508294cf2d4a491e33a97c873bbe13f895a3a8f023100c62d64160cbd472ee0bc5f8d47e03abf26db2409806ace6c18d42b7e7849d823f19ae09cefba28fe99e590b8cd3921dc0302047c435bb500683066023100a608b23538aa779fd7ac91bb27cf4f7c414ac5ac09aabb4548759a12a0fe9dfa455e35064d031a9acf742c77568ff53a023100e9b059160f01661db8f2708e8b9067ebc843847311b558d98798ce42eb3af86ecc250b01eebb713da8bb04facb9574770302047c435bb500673065023100f3f1cf5cc9dba05cd953009312f8e60391d174a53d85fb5e14c73f1b03a8b1c04b15887423b76341e806bb80e8105203023064f7d3bdd0e91345350c3f57e8ef93f47d7ca668b80039a75629a1dc1a81f8bc479f723ccbb49291f1a3e1347b07b6aa0302047c435bb50067306502303b1bf263059cefd8f2b9ec1f3e58ae69287a5f7124360b9c1752ecaebf9fd45a56f6011769caeecbe3ad733de9fbe950023100b6e6c897d5035fa5e36771a277c2d835cd7c42af0ae65554777f13c3ad75b1c822d1966481a045716471880726eabfd40302047c435bb500683066023100b9a4c4466c3a80a4a883311562c01b2998592e14670720e6e87779938d2992773524e33b717b90d20d996402c8aba85e023100d720e8baf41a08485b1bc57a70b1391518fb50c24718873dfdcea7ef15b9ebc63fe52ec4b2f58f6f7a68f938ce95e1200302047c435bb500683066023100d26e29f215505ede77d1845b85023c7b3716c5791e3bb52abe9ae2f31e63cd00610b33c8e5f965dcfa58c2bf5b4f6e45023100d14bb5bf109021c3a5b6c5f5de815f6ea61721e1028171aaec27fcc2084a1891eea7f90c4c8b8432718c04cd3c20c0e20302047c435bb500683066023100d30fedf9c8b1811435761691862bbd2e47515cb33fdd43cfb8fa388d213f8787acc5903832803838fb5a58f7690cbbe5023100d099cc4c295f0a45d9b9ff9c9fdafd8739ec67cd1b4635ee1bdff661aa9b956d9ed75966cb96f46e80130dd0322d42650302047c435bb5006630640230757ddd10cad92a7d7c86cdc124b37bf02332ce4016730514b072b64d5440c50b871c69cd27dcf6d7154fd725530a9c1402300a4f3545e21cd032f5d20a157d6d36778bc7624560dabf09fbbba2e566e8867aa44c142fffab962fdd6149d3b632aa860302047c435bb50066306402301f3b5905582aa4045b56ba543a59a752f36baf33a881f1b1a346470c450357124d752df41d9ba1bd4b493e555f778c0a02306d2c92fbff976f25d40c5d6d2da9cac43ea60038acfaaae0128fe998b459fc4a6ce8380e03e2e03b0f2b82a774f49e9b0302047c435bb500663064023052236a71b25938e4731e230a2f2d330d487d7d32c4805f8b7bce8bcee4d0af3e95c8b21f9740ad86f0baa8598d2aef20023072e0cbdac5f9bc34938b134c79bf521072b81123743f4ca3af23c5e446bcfae4b347d990036829a9c44f4d77b09c702f0302047c435bb50066306402301359afbbf89426e7bb26239b28829072eaf8f4573a44349a7a6fd3ffc68efd3ae324727da1561e526324d9069435987702306a26c8d278417197e6ef8b34feeab1a45bbb7afa265a4b6808347183d8e624c35fce1f99558667d3a3735f5bec98c6320302047c435bb5006630640230327dd85348ccd4f6c4aba191e28555ee6e6ff69053a40501703dae58ea55ee4042292f155fbc4ab5aac77ecf6407cf2902304c275e5c7b0a208cfe3f30015ea3b778f22d136ddc109cc7d55f73c272b74b26fbb3b85824fbc403431c509842c51fbd0302047c435bb500673065023100a15a94dba6d93592d5d6a29b1ae09213f15c1098339c1715b7957b108197c14c8c1e82281b84858b90a0d1e5e2fafa5a02306c5c62d3ab50883456269bc04171d42ce1f77e9cacd2ba7138e51ee97ecb0f67021b63974a28ee1e42decc291e2789020302047c435bb500683066023100ded136f5ba3a56a0f3288034a6425948b360cfacca5a2f083f8606ca60d62b188473a094dd4ca0b4c4e1a67a7692256b023100b04849b126801b1ba1797d28dea33a826e2325051065be7081a3d466139590c02043e4ef3331df0e36b998878d3706a60302047c435bb5006630640230323f56f0affba14f615577bc337045619f6371634f70a2422837ec1a35a02e3f4223a3bffe7a477bf738db9120a33b6a02304c46c05fdefa96f7a2a77b2f21965ead3152fe0936e02ff675357b6f9479137414c315c549cd8cc865603d4baa53d80b0302047c435bb5006630640230708e4623e06b9b3b07c4f81e97054fef433ad6917036087e7ce121b656eddc67e4b85264f4d0ccfba1a580ea7a6fe0c6023058bc1f822fec4881f577d098996e430707001939cef3218b7e59255b78ddb533c23985a73dd3f20ae513347b78db6f200302047c435bb500663064023019d54cf1d1633197e06b8cb9d05109597f9d822872ed84491836371b4a06f956f62e145e54a54e5dc01ff4cb36870b64023032ea52607c173dec7784d65cf5e0954de803532e7072454dbf902e9b6c4694f50ca9c9f1a071b0709eef7ed557b666570302047c435bb500683066023100ca1e8eca1465a4e890fe15c4da64e4373d733e17eb7ff27bad2b7947e2c0d01d19db40f6d36f5b52aa043e56faf6a165023100b529b613610baa41a301448239f798694d4cced726da60c98602533e6fb6e89b1415117c7c8a9ef4bf675d57f47bae9f0302047c435bb50066306402306d27fc12f76aa55b9ffb503bc6d673d7edc363c1f57d4710a87d06ed813d48997e6d13ad98a487e048822665ce41439802303fb3ad4fd32bd0ca0c8bc8de5f3fc19d1dd185e47a3fc5af3df8d2ac537107863a28caf2c8ce22b9dcc45070640edccb0302047c435bb5006830660231008c5cd3f4450d2735c136452c2d4967d6348fb1424d937fc4a5570f04eebe69deade4c6fd9feb656195beb2986625ed38023100f9bf2ad25e4686dc11525c35bc39120c8310a97091dacf50cf6859cc43ec139b7cd606dadc063ff2c41147d66c67ffcb0302047c435bb500683066023100b67e0c3d8e91bef5b54424b75f9ef5231405b5f03f356a645e59a3d2eef13196588a55cb529157d4d78840be4e2d5475023100c8e8300eb7af10bca155fe063d9bf64ec64c0c51c1f9fffb2105268be915291018f56b66dca217d4aa2c42cb17daaf970302047c435bb50067306502301ed64a77670f8206d00abcaf335fcd31f6edad060920921514f632a4ff79c38c898ca435f5d5e62b9b0a7cd9081d026702310086eb1e01d59433e4f6deb59506f431a3b9f523a81a9b04037e96041437177002537c689370f1ddf9a7cdf249cae7c6d00302047c435bb5006630640230660c56e732ff58fcb4d7e59e13a91a4b4f975de05043e47fea152819fc0a983dd5ef3132281259d8c92a71d94e966d53023048304bbd8e3a7aad5c309208f1b2c7909f9733d61ddc490708123eea4fc8b80fecbb0d026cd2709d56cfe1e92a69f92f0302047c435bb50067306502303e617213ff584408798da72447441ec084f1bab5d377be444a17621fabc7767448d5a050a21cc61c49f0955457b7775b0231008fe3f25664505cbcdde68b0042433aa5f0f104dc5e4648188f3cf6118f4f6a9dce3f2dc192385af6f968501b69245ab70302047c435bb5006730650231009d53d550bd99dc83734abca29e3e548b02eedae613389db2fd07c1b0eee2726219fba68bc1a5c67e8a81e80c3be6e6e1023034a1c2c6d60db32cf352bc07b5c315db0a85a15b96ea6f7414f1338a9f593f7a3a2835e488668ec673ac9ec9b6fe69940302047c435bb50067306502310094565857db9a0ad03ce1b0768931029a18448f0015dd81270e01c1826e16d02fecc49a8784bdd05dfed92462e6b474b302300808522386670871caa7d7f1bb19f8e734279d734aae0a176dc3a9f8910ab94cf0e9eb03df86a5fbec88d270d5a1434e0302047c435bb5006830660231008a606ab5f6ee5b4dcaef545c5ecfc0f0c3fc19f047b57644dd21fb28c4acaa354b638551494c06a4b1d10223f101d3e8023100d682fdd2c3aa9839ec2f4d2f5591114dd405c64ac1a7646338e80fb77ac7bd19bffa5e32aa111a14c5b66fd2837297ad0302047c435bb500663064023026bc89470e34ebb9332c8cbb3f66c4aaadc59489ef3f0ec55faae03fc4c1bf9e2a2b860861b9d855e4ab898fda1a3db6023068159e71d263d74ec40f9e3dba761a6fd6bcfff0ec09cc063ad103ff405af5a7d00a54ddbff05aa1771c0abf626996d60302047c435bb500673065023016dfdce241ba85938dd81d17a3b4d4f75ca92e38507fcdaadfb4da865206db3127ddf491ff8e629742f2e54448ecf94d0231009656ab8cf979dca91c2b760de45a0010567f06007ca3e83b20e9623243f2240be52d5763e9a83f5130c0dbffa922f2630302047c435bb50067306502301b0327f03461739f7a5d88e4859bad1fa277df5d7f4091df6933b1f1a1c44ad8ef836f473c10816f8688d1a298a9a8d1023100fa1bdf50aa3ecef110d478c3406367a94eafe249f7f1268a358a2bf33cb4160183d65baed5d9d1a236124fe460e1cfc40302047c435bb500673065023100f04cf5e11096ec3839ce5206d1ee024fe108defc0e32740232333d316110aab480114bc40aebd722cd1686e5213dce1402303a4198e988f9593028f7e90fd4f1bf49e5793a8876379bbdde6196545feca941ede6650619a7d70be7bf117e5e575fa40302047c435bb500673065023100ded135eb457e1c3fbf29a4f334f6bf5ca45a9a06023985bbb16eab4f54d7298da983da2d41e5c77ad8b3803046255eb7023034fcfbaf197a3dcca79d35eca36836d714ae53c27d5d266de87b334e7d77ee4477cb0355b956be04d3e2d55777c9248e0302047c435bb50067306502301e418adcc2bab5af248830e8d262bbdc23810a30b442d1fafa4822725f036477d9a418cadbbc64540401c7bf80bf2aba023100fafb8367db607afccc7e73457ad4de7a3f9a9324f29cf10c8e3e5578409f9f422349ec55405e66ac639722e268a479ae0302047c435bb50066306402307053ff2a478537326f4ca333630e7cf963c3aa8d23323069319fc9bfc477b88814713090d424a1749b50b701bf051127023049c9183309fae3d0f4f9e3558ed79687dac0a10d66c912b417d9fcbb3232463892eb1dc00fc06d7a401f2e2d1467ae6e0302047c435bb500673065023100b327755b1d006c464ab1efacec04aaefb83f5f5bec08c1e8e29c15c1a94696728f12fe50b89ec54915c691146112f51e023064506d38aaaf5ef5ac0caab9220573ff253c029049ab944d26db39974d2b24279be5398e2235b7d0a4953e5425841b6b0302047c435bb50067306502301a2b61069146ca822841e5454d6d867fe5b430740c60f39ea9dc978a99114e5152e4c1066f2fc06002489203549f74f8023100debe47bdf13121e3541233cb5a51433408851e0c1e9208334d8ddfcdc1d41f77b363e35139af7f822acce5789daec73d0302047c435bb50066306402302e78262c0c39b1b13e4b2387f75479f06f8ce2d4c9028a30ce78b3f70a9ac7d8945c53adc48504359c65b63a16f0f780023077f7e503846eb66ef132b9eb5284bf879d699da8f7183f1adfa446034787bed220119fef291c359f9bd859110490b68b0302047c435bb500683066023100b6fe370ad35cd8d7b3a399af4bc3310d57318eaa1c857bd4ad772a85d45788e1079b7f702863ed2ec9de3c15f467933a023100e1957e681f6b415b0bd87ddcea9080c190fd94a463f8e5af888d5d9474a5e14ab915a148a578ff660e2589d76be3a9cf0302047c435bb500683066023100b1032a9a802e965b9783ac22385aa85c35573eb7e042c4a98eaaee80b81646f9a2cd278ceb2f8cfb2415df484af5f5a1023100e0e3a145e6c08823fafd0b80e300cd3164680bed55d2a27c5e0547022ecae10f52ffefc6c3faeff4f83e37c22f54c3560302047c435bb50067306502306e55a5747ebffde2c49fc70b350c1bf4ba6ae0edf8f4b49ed646cf825383dcec4e03d001aa76673f01084ce87c6e2729023100d69e6a3a57821a03e59e3553abd8361f8ae8d30271fa6d3231ae2ea6eacbb69f9a7ae4f99c7b2d664803975d443d64fb0302047c435bb500673065023100da6b77a4a13568dc9443cb6b92dc1479e2d84b15447c5ae496e9b775fadbbcbb84e91aa49a63a3863cbc5b7d2e35bc020230550be92663f838c1b78327f3ea9ec748b2ec2e07fcd8ddc23adf65a646c9133b63ae2bede3f3cb82b8a4fac8da5d5cd20302047c435bb500683066023100a1ec357335a413eafca303ad0a8391e721c6d13a55654605e1684032d1a2f45312603147fc10af9c2ef7e1cc464ae4db023100ce56a91193358b7e33754150a16384967c593b51043aa25c4ef26daf18f232938f50ad5743861703501b45f8a5df16cd0302047c435bb500663064023041c24b35535f10d394f083a8ebea46af23547357143124627c42548e157cc73b3980276d947852ee401183d6daf1a67202300939c1284a974ec042bcb3418587ab70877f8cf43683b3a80a7356dc7433990e46c3a7ec81d9a05a0d9ba8b6dc3742600302047c435bb500683066023100d2601d305b539d1708089d2899d3b827dc455219d051084861b9697d29fe0a14909075fb3a7f7de499643d1e2c54e644023100b351bd2a61661b340ee9d74a4626004effbdd8099bcd3846d15bddb2dd4401e734e186c6d49ef617040d378e574ff3430302047c435bb500673065023049502104e71b54ad686aae19d70a35e9d35d796e22c32e962098103317e3758a8b0e2d1f6b68440b6387d4155462bcb4023100e9268971a56bb9a80753e4d893675cd51bb164f2683526fa6e4ce48ce51b9fd1710343366f86c52425ac739e6d74f1930302047c435bb500673065023100e3fb107c2e9b7897160355ba5a7477149288f8df3826e514e869dd7c805a1fea5c55fb34083ca9f9b4a4e23fa9f4faab02302b242fc66ae3499d27f691dd4ac0c94029ea1f68eaf82711a134223c13d3175d72da8919a5e33ec573c527aa0a2fed6f0302047c435bb50068306602310081f3d26df053dff631b56f2421e49a5a33c1939864afc38af421d3de96dbd7e5eafbcdc1630b54c2cca907f43bb2f02802310088da25eae9f34c642f947be92df06dbc48a8a655c0f418c292407c726d665cb74d15f08c6337cefe51e83c404ff8ff3d0302047c435bb500673065023100a500b48d4a6b52f22dcda9a84023db3eab81ff4eeae4a4511a68f771aa0a185cb4110501e037d2b66912a7439496ff1502300f4a337bf7ccbff41ac2e0026e436a55ac47092e29a2e69113221d52fbbaab1526af4e60791dbb2bb61be1cf24f325f90302047c435bb50067306502310091619674cb2dd90990bcfd75722ef310e3c97d9ea786eea2659c2b88270cc123e723bef8c6bc2cca2e7d555dfb536cd902304dfbdd5784fc540b2d994808f7fa0cfd2d039cbc901c69db9fb2049a6d76910584b9fa626f8a4c95bd923a117254d2160302047c435bb500673065023100baea42c724bba0b4ad4995e11726e38d10d624c6f33072b09a02bb925d4a5ce2386df68d8d71f3dcd40f53a09ff6f275023069f75d90688f3a1b45ae98a810392aaa92aacb18dfaf76e614d57cc9de656ed53be3da4a9a4fad817b8c55ed5b5767c30302047c435bb50066306402303841986acd9b9ba3948cb89856353f714c059d38c4d2acdbefe70c274be39c452f6787f312198011ec41390c05d2ade802303602a7431cb99769b002df3cad150fa20f008791aa7ebc06e05aca94068615ec612851a4dce6a81b317883068a7855280302047c435bb5006830660231009263cd342132577b37763df2d7cc3de377d197c3400049c883ee0b96f423cc34d06d853dbd238b43cb6b14b4c03d3736023100cc84ac4a7cde258ddc00ddf898802f6c0fdd2d20ece65d5116a47c6046810983e98d8be86f8aa2ea802f38951bc1a7b00302047c435bb500663064023017e8348cac1ee329fe6405ec055a8bd2adc73a82e70e1736f369d1402a8c181ac16c59e034c684deaf8985f296a302960230047cba66c55640ce821cfcf51ff78426ccbb1368ef5201beae3f05e8665f2ea6cd0aba2cd1ef217859b6e18fee2d888f0302047c435bb50067306502301cab9fe3edee7f27ca300f5ae52d386a742d7d139380dac4acfb7959cf1adcd48b1a4f3e040c509679250ddc4a128ff9023100e2c2894fa2cc4c634d5bffe3bf233fc17c1615305c70b1ccc99de6eea613e8e1016f483e71719c9622e044c1ca84c7390302047c435bb50066306402303da8057140ebdaa6a7e5688bd8991f8f0b03af4d6f528cc121e9242e8207074b2417fc1da4e540ce621face732da3ffc02306d0177603a4f1d130bdf30aac5c9856cc7ef4364ca37475e95108b957b3042ae5a157554f344a387c57d88ae041e9da90302047c435bb50068306602310085d61d816692d200fb18a9b0132f5fdd53b538e17d84569f4686b0ca37db9f15412b25b74379a33d769cf9f966c5fa2f023100c6017b5d6f7ee23a6330b1fcf2f8bde89e53a9d13990c7e26445b4884d8afbe844079422d90821b8be72cba6b03238540302047c435bb500683066023100d90ea61f1069f8969526db646422b4b456878a46625b4313f9ae8ff2e89826346533541eddb8b3f03a94a4e405863cb3023100c8c4ddc79662eab7da7ea575e317ebb809178bb417d315836d2bed36199bae6da32adce13cd5e1bdde422cf2dd451a340302047c435bb500683066023100a78ead117787416719e77d7859e02aa5d19a5da30e708cbc94ac5016215e97e38abce5a3cdfff7c2cacf0fabbd6d6bda023100b6559ad7e7f6b8891b5fed9e82adb7b982a0765b2785687fbf0bdf7fadc9ca08a9abe2604114104050279b6276b773850302047c435bb500673065023100c1e7c0cc75600afd185aa3a54d89682839a0ef3d7ac9dd3df149d4cd435f124c46d626ba56414f1ff174a6321965b63a02306cf4b9045517f29c904eea4c43f5ecf381834f950cc5c243430a84024ac13287ba72d2e9f14f523c9a1d5e6d18557a070302047c435bb50066306402306c816817132da6ead7e786658ae29961001b3f0e0e732e9914075fc1af1d4d756cc3408497288416e6422c8be63859dc023072dc1a5176ab10d3b54d2a47fa2ec9c4e01f8021fb9455155682d6f58b187933a939da9f36fd644d1e4cb1171b1167040302047c435bb500683066023100e48141cec22fb138c9fa27082a5d5a6ec6248a344193ae970a5e6fbdf5c81eb314b429975a4a1eae1f9a8922e224fe03023100ad2c6efded199a79b6a88b37c2f2bfc7cda354126e8bf171f083e0a98435d96f738b32acfcf2c0ae2e29b1ea16ee73920302047c435bb500683066023100ea6b927725eab49332f9420269a9b67d3f2fa0951207c04766d684d964ae6a75a3e0645f120df88df32b090ff325b0b8023100fe0d75ad3b423d3716461c8f730ed76a61806dfc59dbe286e320cc8842225d1b2bab7586b2d2cfdbae4e853738c573240302047c435bb50067306502310097c725a0f86945115c65b04f7b77cf87afc280a529a63378e3410c89e60523228538e4c9a510ee9892ed991c3ff2785402302786a702f32123676c76174f5520f4e9a82a1d8d30a7b4b42d2c51ef944f0d71344f84d164425278ef653248ff212e3e0302047c435bb500683066023100e546b3cc57bcc4b3caba619b0a17e93d23853ca01f61b43ab28a862ca9cf250de62d6a7b6edee53e1f4e15d15ba5c1e4023100b27992bdf94825d1fa0fc4b4f920085da864fc77beac859af714b225da478884fe1851af03526c53200428768505bc0b0302047c435bb50067306502304ff6aa18e661965a16f8d75292bac3ceb9ed843873e8d39d16af50afe6cd1d09f481c819b974e07c51910654cdbc8372023100dac268ef8bb9544120ff5aeec23e8fac6027895a0927795d74ce7d46e14695480677196ba132dbc8523bbcd34abcb9220302047c435bb500683066023100a9cb387ebaeeacff67c2744dc2ee70be8f592fdf0a13d5d675412b818ceb6a769f2a08b3562d900209ce5896e42d9e6d023100ac22763ff32cf3e9d92622b76de7b8e3db24bd2c5a9b3478b12d558d7643b1d391731bfaa9c89c0266b213139b28afef0302047c435bb500683066023100ae9a3bc4db74d2ce6bf14b2760f467c1e526bc2a666be233ed05e406e354866001ed3259a121db607525c411319966d9023100d4405cb980e3e507dae3f4e6376e92976265928606afc3258f749b9001b65dffe70220b76212fc441f86c184453841e10302047c435bb50067306502300918f7b47d324f3de8bbfe3056e4db232ece2c39b5d09e7699e8832e0be8e247f73d8037dae282b10eec42e85f19b5f9023100e085d821bc3273504f33fcadff6c6ef4f2a043768f74184ef31659545a26bd30100e24f9366e99176b6d799ab22936ee0302047c435bb50066306402307134aca936034d11d0ab9fbeffe6939d596aad8c5c3ebeab734d47beb4d18868a90a3924620bcafbcebdac8303d42d7002302d5fec2e76fe76df03afb9112915bd2b1a225fed5d5028820b2b15c1204756e439ca625b91bff677e3ff00d81a2eb6e20302047c435bb50066306402302e70fa1c0512ae3aeecf51a22aeb44434fe2dd914ecf0e62824fea59d722181b132537335d98934c5d16f15d651b6f3502307487ed2007040283500a5108498d44f2f071ad0e48f1ee04a4e24dc98bbabc305ddbb6ee1ee33f971cc4774636aad69e0302047c435bb500683066023100dfec710e44f72ebd59985c2dc619338a81c457ab013f2927bdaefde8eea6e453529326f16a50ef1b21c5a098b4ae2146023100a3eeebc720bb31a0d7bf802da9af1e34c1b1c7c35fb7f0330a628d200a665af55ef8fe41207975d1423260fdd43b348b0302047c435bb500683066023100c7af952153d84c8a3b5ac6eb0e1111b62bfb10441953156e60b206a0cddbfe561621fb590692fc99613cb295db3e5b6b0231008a1a6046f107ff58caf1fb7c6018e6431497ab311cb2d7943d7d086b9a72a7bcc307f73b408faf31bd326ef20003e4b70302047c435bb500673065023100a116f42b77cfd91d99eb60c7fc476cc776b95f40a679645a668cad5568cbae45a439a73df39e4b6b41433e150df524b0023041ca78b27d2011f9890ad9da05acb1744bf6c0d91752ae12df6ef7d93e10f120af1858af0da4794e6617aef893efe34c0302047c435bb50066306402301334f8e453ecd99d0e2ec44c0bb6a256280ce90ed94ac6909af947764e42c8504a65a00e110de4a065738d53cc3070e5023078fbd690e6efdb024fc2d6499765571e7e4740a0675c9002fa766f7bbae071c3c1e2c6727122bf1b5999d9c7c05ebe7f0302047c435bb500673065023100d68a735414da6203bae54548d1fbbe99591e8986f78c816fde53710cadf0aedeb15e81f0a4f61509161c92c4789ffdf502302eae8db7ce53683d9eac7d1e0f69ce117f865f13ab405b1d45a2722046f3575418b5b2930b322521d0625c65bacc95130302047c435bb500683066023100d00d80874f63047f17408205699700fda9581fe89067eb7ef358c951c9960b5e83b80f58746a9ab1d9a374208c36bd25023100a117f7272a59a78c2c610c95b76d354d07c5d5bb8b0e02761cb1e5312116f0aba9874c1339ed197c307d4bfc208df1b10302047c435bb500673065023061bdd17cbeac20b8444dc158213cff2eb8227b126c0aa2af8ae2c1bda80b926498aca85446c33e884cdfc63ffa1a88d5023100a5acead5a727da130f020964812a0a3e622b657b241a0498f00f421e3596e7abb5db9537ee6c57a99ad6dc9b34c4e2240302047c435bb500683066023100b15293502fa65957475c3df9f411dbb2b820b11625b7a67bf75078463d3a24380fade9bee5f03c7e03ac0c340c81bcc5023100ecd50a487ec4956d0bfcf4f520eb432c8be8f02ff3a7b5c550f238d8fbb3766c366c1a6fa86991399b5ffaf8da4c69ad0302047c435bb500673065023100973d52537a7f702e7d87c9d59790b6033d3120ca6a3c132e84e39f9367255c65fca12c76c6bef03fa4bfec4d7288006102301cb9afade9e4309e22fcc29185ec4eb3368824c9069496c3acfc1e44a303b3e37ac298d14f2440df361278dde91eb8750302047c435bb500683066023100d5d0303ac428ad6831a4fc457fa00b371b128e391656932713be62844b2fec118ea7682e92460f3f8b795d1d5a666f710231008a7d81dbe50893aa72b1a827cb7a713fc59fc977d7900978ed55a77c8529ada27246fbeabb1f0e198e49e37fbd5e14ae0302047c435bb500683066023100f290311a843d05e5ed425d628e1d5561f4ae2828993e800a9e1bb0886b02ec2fb5c2af739002695d7370fb2ff868b8df023100d9a147b9782527525295161c933f63a8e8e223cee4d0ce91946e02de330ed08bab57cbac92731ecde54454778f18746f0302047c435bb500683066023100bf8776547cbc9f71d0b0ee79d1a1a77f300aa2c83c6e221003781d62664121417d6fd2c64382e7f4ff9c5b7c518c4b240231008719ce9affcaddbf3061e21bc63ae4d0f52e114f55785b7b041b745794c6bd1e7dd3a4a5c184a0e459e2c424284001a50302047c435bb50067306502302498d102d0b276a1cf03df506e814cae7362541194f83e91673efd4322eb2060d5397960bb69b946d174d80c28a1f934023100f8df8f7c2645f833232cf2ba175f76cca9282b81e301ce5709c6c9d552ebde1ce0d84ee79598a06a4bbbb671c2d9c9770302047c435bb50066306402301cb80fffa1121581098a518e80ebea1654fa2fe68f0ee537b9aa967e39318c6dae8e9de4e6d216f1425870cc36afbf4202306df625e6916019abba051b2ef011c117473a89f2c85ce16a04b6a30a0b0c0622217a16496dcc777df047447e31f228890302047c435bb50067306502310099261e69476ef75beeb87cbd8e33b1c22be5411fab3327934299c46470cc0b0a447a1166f3db92b4a84aad13815f217d02302dc378dce2137c7e5badec6efe6b0a9beb73e425cdff89d924c9f9b409782c249a59847a77b05c687dec427b32f1ae360302047c435bb50066306402306f42fb5a5d6b9322c317d1ae4dc47fc95b7eb3b85cc84457a3f6f8263d039f1cfec3d7edb24c00f3f36245065549a90d02302eab7e58101353fbe123d854cb64aa87ef856398c2a33618292dc0a1e31dec8c0365e9cbdea0a657408b64a9d07e923a0302047c435bb50066306402306c9485caa2df67d9eab8df056e620b30ef3292a5fe28658a0c565b5aebf6390a5c95dbf9ef729718a1aeb713c83f4a1e02302e1175f4cb8f44396237aa2c4348210b63c22cb149fcd4ed6a18f8841cd435481867abe1b1a1fbdb167c24fc677816000302047c435bb500673065023100c6fde8ad0b42c58aec41874efd2af629c1741f303ed697ada9efa089d2fa7e4bd3d2763437263b779a3f595fdd0937d2023063ef687c283c656bd96772207b5e3158bad9c3115bc5df0e20a2ece8b22e1dcd25809acd16d2c11185ee6581f688f1110302047c435bb500683066023100cadd5368e536a7108d429994a389e1ae0027932c30460b4822ca26ced4155bcd18f891164a53406860c3e841cf9cf4ae023100ef83de0817b61fc73a0c7a333a14a4606b0b1cd948c2d3445530e3a1e44682a24f33eddd0de1ac5cc0681386a84e851a0302047c435bb500683066023100f5564147737ee2c44a89d8fca13d7878127f2f8aad82a809688eea52fe2f0c3d60ca82105341114b596b65ee4668e7c602310090995431443ae1d1fc4084d81688e9a776bfa9e0ef5e8174be20c8ba8e68af27488c95df8c25a4f7ec0da9c3050f6bba0302047c435bb500673065023100fc5f6cc15db828b357abd585dfd60522aa10b87271ded19675f168bc666d923b853389cf0d232cb4d96c96e84f3d729b02304a8fa50ee8ddf2c6c0f3915d62f7f13dd16e1aa63aba9db0495be48cf04f95490c98d1fe7db3bd25befda3c212ff05d00302047c435bb500673065023100ca3f7bba8c433537760a87fa8f9b7be25124159d21861a2c03a426f169fa712c2c2d493b72f3c71868643862bb947cf102300da8351f33ae8910f1b6de0453c8d6aaa5f96126dd35594131b871e5cf83861c6ebad307fa3b45001036cbbdb383d2050302047c435bb5006630640230186bc8b245f7f4788f0db9558dd5255ced9117a45b590f4a338cbdb3f272c99f77996766c8c6d115db4391b0215c60d1023053cf6c5d409812d45cb80b3bd838d989ad48eac3182c346db7c7818ee7a18ce0118a77d8c8388d6b2d6d0936caeadb210302047c435bb500673065023072d3315820c133fd22d962d9829c4eaee52f073d823e98f28d12bec1587d0878817494e8a7aa471bb3f351deef412832023100ab072ebaa067e2022207ab3b9242459b4d9c586e13a2c1812da13d7827b6ad38f19d899351ca3864b1d035be8662b5d60302047c435bb500663064023036cc572e4e9fe4e23b50b237a3663a508f5c6b4da03d8d7f78eb75dac44af2d6dc5b0f7b27f0ae3760a86976344b6087023048db9caeee415d7f96712f611f0ffc90c48205cc1ed9984b16989e367506972ab3bf5f42aec99689ccc947cccaeb874a0302047c435bb5006730650231009a858404b3caa1e339d9abec9f0a0266edc800bf553580333eb5435a8783aedd6af31c6a920a20442a64c652ef434299023073d97ad09439542c9aa1a91d7a9da9366c273ea7281ab4992f6e2cf7bf40d1f939894e00bc3562dce8d181131f0fd7dc0302047c435bb500673065023063fd81d9771b79db099274b20228d18a6029202f2d1aded09c46589718f416ef1cc2d26b87bfb62016169901c3a604b5023100fed1770aa2755bc2b46b816d2ffbf23374c7ba9dcea15e0ccc823cd250c9864e2ad5a1d98e34cb82f4b23e2a1d78b9f40302047c435bb500663064023034957fb803b5046ecd3f858c540d699fba057ebf8d6988cada54597305cad9220a74320228b1dc8832ed794922a9540602306bbb29f42b71f86dc951bfa79f67829f84bda8dc23b79c1539167f264a5d661a9aeb7bf47e322ad1b7580ac99638bc160302047c435bb500673065023100943c6baa1d40bf02ed317b9b2f5e57e55e75ce84b81c2ac365f2bbdf0097c2759d7d18b5cc0e9972ce818caf63668f42023047c7827d3b4f4efe29e12dc78b540e44a674efd9758c63bb150f9d8efab1def6eee640c3afba364aa2d82a1fa6062a0d0302047c435bb500673065023100a3497ec41701919a6a5a575641f8ba43d4a65d925f1c50e06605747b96fef990ef7a0d11959e569e9c7aede67c5de9c60230519919995b87f781aec7009f1af143f39afd33c757f6efd769efafe883b273d418c258a091a849b99343bc36d923f4580302047c435bb5006830660231008d141d6cd1c9594ecad62e7a4abb6e3146230a2a1b6ea9e942aac0d10c7ec7133c44e3088d4d873669de102c22925206023100ece51bede2b753ec47d93fe143fb5a7ac189748fb378ff6e70db5b8e97feb1bb6f545fe9d6d3b513382e161bad2683f70302047c435bb500663064023040a02e405691dfb5dac4ec71b6b32656ba2a5c903a1c702ce3d57082ec8eec408a11a8e27e09929a88269b48e1ae56550230204b03dcafc939ac21da4139f66c5c1f413d3e3c7a30996b905dc489541190a0993041fe5273104749cc9adcfe6fd9180302047c435bb500683066023100b7b644f99a060fd1d63d220a54720671a0814f74444703532f19763937ad0b5aaae0cfee268c5e5a4fe83779f31835db023100b25bfcce2fc921dccc8637798db3e1138f08f4fa1f78f810613ed64014446235b03c8e214a89c8e03eb07dbfedeae5f60302047c435bb500673065023100ce17f29300539edacf57cccee0a96ea0eb10390465f906b44494f764ee490ebffbdc119c59c6d2fa4b0b9692b6d30df7023060fac092a42aca4cf70308e000ac771ccf894ab46b3b5b0fce95ab3e650d8b5027cb1faef424b1604dee4aa40fa6290f0302047c435bb50067306502310082a3c41acde6e131c42678bbf21b4bab806db2aa2590bd89e20d0a1917bbac1cd5ee9aa80a1762ca3918c61942aaef380230718a99aa0f67aea341ab631b7252906efe8c66afd8b1ea15e1b57fd4e2f8990057d22f186e1ec078af5a7299566813160302047c435bb500673065023100ca8d62d73bd283a55503d7779f64fdb01db05ad1239cf331f785ead1d03f82aca6c0836d9db9fc1def010aaa85a60ef102304005fbc42e4d156b4c90cd81c7f92fb818f42b7190f669f83c9bddddbe6fc56a2f1946e6a316208a39c7d55f53067dca0302047c435bb500673065023100e53e36061370892a119b507ef30d185b284bd300e72f7a1aac0bac9489735bd8272b0ab564a1c0c0557b4c192537bba802304c85b8df6f9d50a8ffb2428f4774d250314d507bfd6fb5b097a6e32d93de09a97d9b2d04f1eb6a1834d2cc50a42b824e0302047c435bb500683066023100fe8c6f7fca5cb29d8e55fd332f0150eaae2728a3c72916d5ce8f0cb508ec370945ed27d54d93829b2495861092c28b19023100e9f12fd9b4abee04fe7c4dfd73fa92b0d15a1f6435309fbbce9ac5e01935b41d200c5c8cacfb78bdee3a0918869c4a760302047c435bb500683066023100f95c2a0475d78240c29de2980412af095252b6062527b8b6a1a36ab6a58f7cb23420ca9804f676bbf9ccd5d6a7b7f80e02310082135f0f165042f6ca359cdecc49f63e2ca01042e25832d728bef40b873e2dfea5deed45d272bda8249cf4d5408fb9ea0302047c435bb50067306502305c7b2885ec8cef8cb05b7a9abab4c52f9bc7f51d7683fe838da20f46a85f3a9d54082109b8e3a51ddfe33066c1fd5d79023100bed8e4df2daca0fbb74a14b0b33992a1a132279e767fdb38c10d8d5e68f96baab4bb161c2a795809d999b05c029a2de70302047c435bb500663064023001c699ee7f6c3817f76aa55b18579f487ea6834a9b5dd8866644f47f87c9f9ad6bdbe5a54936654317be8118a5eb7b86023007823cb202c80268e26396f32194c092799e9d287db0fc669698999de8807b44aeed06fe8bd5ee6ca21bbf7c15b0b1ae0302047c435bb500663064023059fc532ce11359364468b84effd956eff5477359fed3e805d74de37cf6cd75505e94ba516cb024548d756b6ecd34b16f0230789d728e3d9cf548211c9a06d90fc7e015df7e468f45b368a27e8a357d82ea365afd65887f08cac93b5b8b00c6a625d50302047c435bb500683066023100fc85418742cc526121fca26a69a695ab53f0c60f18f4c6ae732a63516d9b9c9e2ff9f30acbaaf210d7de4cd8af56f0c0023100830a50804dd320a6c7d9eac23ddaf556cb15b8872a9b371f4e7edcbdb11fd7dddbfde424f5334c7eff32bd006d6091970302047c435bb500673065023100bd2211a79f606715907e213981efd1f57229272c69a6b1b838d4967f90ea2146f3b65ce3d80a066703247c1abe3273fc02302203cf2c2e4fda855fefe131a1878174572e27cce8bdd83c850c266df7b02f40b5aa92ac9009531bf6ae3fa4e64316f10302047c435bb500663064023018015102b87c0bddb79240148a19f3afa25162803ee11b2e22e2982807414487da58202872874a37905d11fa4021cdc602307ea489872c5a1bc1d97facbe7f431839ce161d2fb37083e88fbff6f7c05adbd7294e9d962e7f848de9e408e3b5fe3dfd0302047c435bb500663064023052d4b771d77650a3a3edc75c7e13d062d75ba7faf91713a999b0d32b2725d46c033e6dc4d394ae1b1516ea2e05364b1a023007ca968b2ee19d1cf45ff2f887f84dc7b27021dc1c4129493d0ea1e8ddb5cb6acc9177656cca039087c869db8c65ed200302047c435bb500673065023100e0e19ca5066fdef84ef3a1732f7dbac7ead4e7a76354cbcbb46228ad382da00e0cafa22f2a107de0c27ba26d61cdc819023064b940466ff5a4b136b8f2dc26c4b235748d13b0874ce74cacec20cd5a3b4a624f7b5d27c792d1533af0394dc64338520302047c435bb50066306402300df99486e10962b7614524d2a3e92b568f0fcbe7104353a114777c4ca07657db98ed6d0758b4ac23e410727b871a9b1302304829a718a7a1a97e1005f6ee141131799f1edc307ad457f93fb6d747964fbdb1d9f86cbf1b4cb62f8038dda3c1f229f40302047c435bb50067306502310090cffa00fdbfe2a171acf182a80cdf042b9a7739a24b22510fc4d46e7288aa993581374b1aeab46aad0e991c3d7db4b902300eb0ecc01022fba917de957b9f62151b2df381631d07f0493fb210f37864e86def96d32bca2b4ca46fe1f12e81390be30302047c435bb500673065023100f06519b7b134dfaa1a439fd4115e90a6d0aba19de2c43cc2222b630440651141a542dee4e906830d1ba821831817f4560230440e0e05e7d9e5b87951aed072eb9d78326f4dfcb7e5389acd828ec2053517a7ceec43390309a42d39ecb1ceb5ab1dcd0302047c435bb500673065023100877e3dfca96911f755f2eda5a9d744ee144f9d6635c59d56505500f7e676a6b0721b356619ed7082154166f8946afcff0230497598b872f8ba7d99e5f2ee5ded25db3901178201702394d19aa36afe9f20833811a5f250f3a5277b15b9698a9aebbb0302047c435bb500673065023044913173cbb159909bf3fa2c3bee6de53d46d3bb04932d44b1bbf0904d879b53d54e8bd8132101d10d5e2c733e8c1eb6023100c8fd5e8846127bd2b866a8cd89cf457ec6994feea83981f8c13708155209789fe206cf972c85933e754c98b6ff1315330302047c435bb5006730650230555c398f8e9156dc759456b0eb775a2a91e74cf803f559867f7c60addb42abf2fa4d63887792e4b2a61b897aa58acf4f0231008dd8054b43486afeb82deeac5d45905900b14cdcc26e9ed388ffdfb32ba0f975f27fd01a95cf757b18e6aca0baf9324d0302047c435bb50067306502303e007f7d82b0379ec3bb70414aa2523cbc627c8ba8946885e20db41440ab000bae6eddab42cc10fe174b561749917c90023100a583ee6d049fb550ee73b3cc1ff1ca035ea1b0e635da5be05e205beef02cad6ce9bac0b257caed17517b3f1ff0c08dec0302047c435bb50067306502300b104857629497b83681571c45ed6179d032d5520610468e6fbeb2899f9bab425164fe2b3e7af3ea129995e3b9c482700231008681f0924a208fe0123751fbaf3c53af9cf88074ca75b03896a166d5551bc337a406f4a3c9c70e2493ef6e3a7c2595380302047c435bb500683066023100883d40eff37fb9f23905e9ababc286b6c986038d587647e02ad2fe1a1905fc79d4551e9da81496cfbf44841e49108461023100dfd62b34e36b449cafd26c9dfec981e2acdc369b38a6eedac240bd6982364f75a4981be4b2959bcccdc88c04004f9be20302047c435bb500683066023100fe322119e04ffef552aa070f6d5b9d2fbfb4d72fcf29fa1f25d3fc6c3c2073f1f8db1dae96bbbe13d10a8eafaf1f590a023100ffaf7caabd43c40fe64be3450d304a37c8bd99e8d0106c18ff8c24c37f3d6d797f1da6bea2c2fdc3a4c1f4e7db065ae40302047c435bb500673065023100cbf56b28b934afc376b6c390fd70af36d9be4d6cc51d099b56b10426f3d331f5d8133855cbe245288bc41c2f6e6483280230008178bdb2390d212e27670c920072a8f5a5678eccd71b8e77c66f0ce54f0075f4ab2c8099b6df0f90453050f3ee24250302047c435bb5006730650230589c6d2779bac4b74d63732b495b8c5b53de9a04ec7eec11e0adbaada401490214fff4f221aa0a4e61c8c32983e8ef1302310096b78afc49a59efaf4c938e452ab6ead1b868db8b08b08964058a558c805e4b3327a54ad7adab3e113f7cc5fe231f3470302047c435bb500663064023045defc7711817db415c4e467ccb949e1e829ad2191ed39294d73df1d23b8908579f5e35cb108af2ca6b7ad31c2249aab023062856853b5c04ea2128d6cb71c97c8bf618649f1b2ae901163bdc501f27f52149a3ab6f98698ad930012789baf3556450302047c435bb500673065023100a0c0bf0b4c131bd2d42fc1322d19e88eb6727082cd15bc44e0c21c4773ee91cfe396c9454338de49dfe1f7a212f87da402300a4ed47fb3b97e4c99d88d33b9f91a8737d107f74924562fbeebf5b3a0514ac106a649460c703863cabb72462f14d5280302047c435bb500673065023059e872bf6c4ab72690dff54a84d64b54e7975486af2315c76402b85c6fc81f0f7493796de8a164486d82e910055ecfb4023100d0ead5796c4c4a87f0c9888fcd4efb53526857bdd8e029b626ada5b9d90ff4c8a9e77cf62d489bd8cb342b56e0afa6260302047c435bb500673065023100f70c39ea24d3f3d29d2635b2a4698184fe89a81e923ae44f1749b9dd3792c8ea8b2412a14ea0494cc470281b1243b6b002305bd36e4c7b9c8172ba8c5a82f3363159375b1effe987cc987efbb4ca16dda20dad5a7dd3f51775adf925a1b77c9cd3720302047c435bb500673065023100e0b0992c68cba08708a1243bb9224dade7642dac6ab1ca74dccc1afcbf77919e077569d956f7e52e9147a00a51bb9cf0023017c0752e5966134cd76aec3fb735be59600b20dd443afb6a6c164131e643abab78780602a2a5163d437787102c46a5560302047c435bb50067306502307520123c537518f97d84a917f3a34deaa9c991a81b7f9bb2f1c0959ae06146e4d5f4bce27a048ae538855dab9aadd739023100ef2ece2cdcd8bf43ad1346e873145d377d3d9ac635e312483801b698ec68139f27cbb530bb792473833bb693078306ce0302047c435bb5006730650230330701b2e0099d51605f97bca958ca9bd277f16921769ca6fa2434e2c0326917359d668b028915836991b75b3f63b39e023100fc8b5872f4ecbc61493e59148f7d0cf451437c041f2b552f286c3a10f796b28cca629e5e57de94d8c8b547348f5652400302047c435bb5006730650230465cd2f3961eead58bb319a7c0efc5a4cb98e62dc5a501979f442d49e6641b758be1cb7e51427308da92e26cd4f074b9023100d5a6d682249375d6cf977ae0e2f8c54a448e08f38dbf17e0a3d1e425da87e99b2ccacaa75bcd2f749ffc28b9ceb2cb5e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306cc0ef6d334655942e4d42e3b20bf91c2cb889eefd2bda2f7ccdaf426abbcab8b2a78e8a1332e4568ee89652302a7dc9023100e59116f45b256bd48226f7e6d3789988c5339d3d356cecaf7f1b19ef98d5d4639431ce6ad1dd3078d3ccfef7ac9e75e50302047c435bb5006830660231009345cbda89cc0810021e5653e22336dd5c44cb1c968787b554f0429ece6e121c795bfe328ab8327c422407b9f2cd9e5d023100c7e3b350a193614f4943bbc09376581aebece6da5076174f9f3f237c37085833c02e6eaff2d02e43db510471913a7f9a0302047c435bb500683066023100ce26ffe2e58578407829eaf62beafb0f28aee3c5906fa93dd7970cf31a3ce5353cb7978992af9df40efe9bdd67d457770231009e77026d7b7317208b2ed8b80c150de076c50f0f6e6a3384d77729e75c6df6956a40ab52588364c6c8b15efcad8481f10302047c435bb50066306402302e3f5bcf84f6041f66cbcabd8dbd30ee4741abc26079284303270a34aa4c1be9cc1e53bcda9fadbcdb8451c73c6b9c6c0230765eb85855690d4024630066b065aab5ed1deb73d2ceb5b9ff9b750fcaf5385cd4b31b129430e679af5235a4d32b98950302047c435bb5006730650230513b5fef9077e0c4e945ebf32380dd62733dd8639e5b776d72358fc678a6c04ecb5892b90ae364571239794d5c07f3aa0231009d8795bf9e84b29f173d63edd11dc03430ce8db7360a908b50102183074cafb62bbf7be03122b37bf3e281a4f3bfa03e0302047c435bb50067306502302ed76d9e0d8a0f9e4b299f244000322465951ae509b60feb35bf4f7cf49b9ef993b9400e5f316d36da6eb86a0f6d6b4402310085ef7bfb5433dc1a9e25a25dca174dc8537ae8076ffd1300ece5ac5342a465407835f13a2994d1d3254dda78bf77aaba0302047c435bb500683066023100c5508247fb777d28895e92d26634cd0454bdd29ff38a74886811b54c87fcdcd63d1fac02484c7522bcc6fdf68ca94883023100e13bd0b70788163f0d3f71ce2d3f72e6cb56559af8419fae8b9d7420677bde9e96140c88ad200b719aab2e8b43c603ca0302047c435bb5006730650231008e32a0076e9c7b0d18269b43fd478cc589910739ec80c9ab110e831e493f61ae43895946bf10b116ba9ff8c5f73a7b9b02302e2916b2127531df04b602f809e571272e71e196a9b818c55836cc1d9b9835fb1a8355cc15e84641c20df2c79e273ed70302047c435bb50067306502303a74551f5122430d981c3cb462a9e4082382f29a6b46ad6ba435cc1a3a41bf38cd034e899dd925a3f53fac70bc7465b7023100d2ebb95aca0a5673867a080fd32a415d2862f351124737acc1145b644a90ef49871eb4a6104fa6e7889e77710721caaf0302047c435bb500683066023100a6d6e0b0641e99aa285848b674434c04a3881847425b6b7086c75fcdb94cd1206e3d7769418c9fded0f38b78eef80723023100b28668144e6bc81f314c745bacd47f9c0ebca8ffeab4d6a4e573eb1868e2e05dc9e22be300496f2daf36ba0e805c5ed80302047c435bb50066306402304a3fe8d0bfc4fd654528a9171465eef4c8b9350dab6410ff35049b27d20ec290e46d7c542ed45e06a46b47fb9b2bf14002307241a44a9ba0816d7b18c9f0bb2dd0751c4eeee124a96216f63ff0f73502e7139bde9ec68b42aa4c48acf1fdeba16ea70302047c435bb500683066023100b1bea97b71c98e46e94e536783c5551306a6faa7992c78d4a1c75215582fc751f04bbfd81d3ff1c1ecfa102e51c79de0023100f07fb4736782bb2bf280e9c878e2b8a3f3f56fc7436e1e57e3c62f00ba49c60684f032f8db8862f8aa1bd039dfda17630302047c435bb500683066023100a40358c4c314328069ba1413a583960944e04bc02abc8a4fb55a318b829706cbc94694cc0b043d0e558816c375eb77d5023100bc340c83a1b6b011e50d2b0039c8f2e5520c491e4341bbfde9b954bb63372f1a3ef34e5509c1b79ad4b5f02cf57227300302047c435bb500683066023100a6fe827ca5d33b05f5009245ca17b44f1d482f05f6964de23d15fc2282dde152274fc86ef87bb94aed26d1a030b9bbdd023100f8c2bd583cba787f3ddb397e16088185cd3ac087fa94c32c1ba9b9c9719feba3fff3f01647b88bff522846a6d06873cf0302047c435bb500663064023023c91306c300621c4caf2e597be7487d164d314d7d4df7d59484ad18e1bb779566dd3031d8ee51c3cc6e003a29d41f9802306827d7870eebe3cfc15877e3aa5792ee44de3baaa4b9d8756b88490173bbe81e69a90dbe0d7e5110466f9f8338191fb60302047c435bb500673065023100ceb99535335e1cd4e0ac2b98c02db8a3c6adb3577331458c6c3b94f7207c3476ec3af27a391e3151c9e47e178531ba8c023038c1e2d3afd40c96802200c30c664da4fbf8729213866905eeef0a10de70c5eb4c4f7ceccf33156a3909353796b204870302047c435bb500683066023100e479d857623fcfbc3093287fa75251b7a57e53ba675b73a44a9cab385e327ed702bfa56b5c19d194943fe0448ea391a7023100e851c5f2b0f92476ce5dd3f9b99fe8e3d2fe9f2cac864ab143b9aa5a810fbe3d24b9dd02705bbd00d1a0e0a4886760250302047c435bb50066306402303d08a6aa614c94797ce7b5cc61f399c79a7284ab4bae1e59b908c8e77968bd1a7e3d665b71fb566450ebb719f1baef42023043304d87502b8b653a635a5cd074942f3d1066d9e74e4b5d156f720a57d1a5cb6b305e9333a4b214bf6a780b3d973ac00302047c435bb500673065023060cc707e117a2501f5be4f1fcc09b77933d7ce1b7bb438422544673baf3a2565730b4745fd61e41910920516160c0900023100b05b71d6fdc4b1701121e1573d8976958ba25c4f36546e25f4ad8052ed04e6f5f8a7e94e82dd1e615b97014bceae92550302047c435bb50066306402301504a89576dce7e8bf474910f293155c4488789718bb8062fb2bfaed86a7a7d56c84f4065a7b6269a32a0fa3465d592d02301d9eb0208dfe592b9031df6e49ce3dc0ad59ba3476f959d85f4728beaf9e2591bc19f5ce6221b8a7a828f502b8f6c53c0302047c435bb500673065023100a7c8ae058014368c48c48f0fc5ac95a498d3c46121cfca244b3e074a287129d079749044fc39bfd4fd361f9853ca20ce0230128dbce11627556b4b4cf5d572dbc82b9c0486da494ea7059a7bf33d06118647d5f75be5934f70c1e1141e034bc0e2290302047c435bb500683066023100ff1acd12ea175bc9c25e50c2e2e0cd15c1cc703aa37462c64509ed1bf53f64a3ddaf912513a257f9f5f8a23650f3f2d7023100f8366ab381f56dcbbeb31c23c54e4062aa4b7ff06c505ebde8d658827fea7a0f52ece2032674436d743b0d622470ba010302047c435bb500683066023100a6a587421b75c07c972c6483ff49fa6ac9ab4869463c704e797c5096e60c56f0c446b6498c4ad5543e076f2daaef0d4102310084aa4b479b57a174b5d28b8f6070878a0eef27a05a9920dfa59408a8e316f1a756cfae6f9ee303a3339cf770cf6d23e60302047c435bb50066306402302350bdcb0ef300691fba7fdb80ac06f8b7207d5c47f374f946662877aaaf58731b67cb9792c2203ce49233d65f16901c023065e0f26485b74868f7ed9361855a3d7a6b2daa35b8eba71bf0b32d848e5d7c329c6de69db336406864b994211464772b0302047c435bb50067306502310082a38ea8f5b442326ff95d310e3dea6bc901878b1f3a096e27007eef00d4f48114590df4c16a3646f0959da5be2750d30230576a3835e09e92ac397a3d53898daa49e1b1fd7bc4d7367652885ead91e0aaec251d25d5633beb6dec7f94506d2a87e30302047c435bb500683066023100a9d4bd3728a1f3a29a1ecbac5abf003283ea2b0eadc127fd9f3a6a9f0f98e041f22c14eb713fdc581bfc0e8cbf8e19560231008e84d7d72662b674ceb8b5da32d5c52d1a990ba30e3e27621ab4310e7b9c1e68659825c9a59d908892d7bd80bac75f2d0302047c435bb5006730650231009d8821d83592d2850df1de5a0d57065d3682aeb8b72b47f944e4cbd0708757407dc7a1c8e0d724acb929b91586662d6c02301a25b4bd6d4d417e815272e03465ad40cbd8efe7fb9d45e8451a3788d4b5b94cc61cf346d9ea853cc7c681dfa21ad56d0302047c435bb5006830660231009601283a99ed0dd0ca3097a9f2b676e1a51878f1c9dea3a79bacac4e9f34003ba22095ff90ead87ea21620e8ea12f9400231009d63e320fa037a70bb48104ee88862e23545d818c4653903441109b972c764ab70d96e8d6c10bdb658974a7d4782db7d0302047c435bb50067306502300780381227e07dc6a900f7a50d144218cc06948767facd0460e78d51fce8c04bd49ee6718d204a81c9462d68e16e806d02310082e334664eada0c91ec721209f6f0702a56b2bc93069d361e647a039c6a8041b99aee9ef72a2877a01ecf4ced604e5620302047c435bb50066306402304fd0f54fbbc063c9aa10230291ac08665d1e22f45db2f6c8a18ac57492d9d6b67aba55662d752083ee6830776fe3357f023012599ddc00069b56700b84923e92602e116e05379f162b5dffc06e42e293b7ad1c8dfef521e53ff7bf77b56ea5999b160302047c435bb500673065023100892798630fe93afb1dff49d876091a630c925a0b79d920932341da594fff6db1d7576cd33457d3161a0dfb2160a7e86c02307188e48260f96fee6c8b7f60d6c127ba02a287618ffb33ac1f514b465baff30af3300ac8301bb4a37e1030c344a863b10302047c435bb50067306502304dd8a8019d2f0876343f65fd5724a3f0df9ecabd93e134ed84342a2097ee3cfc72a6cf44f29717bd4d41108a9fb8236b023100e419190a1000fd42b59dbb7f0c015945439ec9bdbfcf1fbd64ff8b04ebb88e473a096ce34b5d4ddee0c5802ce6feda050302047c435bb500673065023100f32b2d303e7b0379596bf625ffaf8e650d8f76b2015ecfb2fe1e072a8bc088ba836ec6c7b00e9e652ab6ee73ba7904ed0230370f8fbd6a0d680736b9501caddcd786ae916b625efa6700ef51c63b8f9b6745102e05e1e5f1c306d92ea59dab36c9c40302047c435bb500683066023100db0eef71c46ae3f4530c97879dc7e32db74358951272063ebdaf4b138eb7e1dac72e3319274a55ca1bf0de9b2f2d0458023100c2cb0297663b18b3374fc7b8dfbf6ce3acfcb738270add6fd5913026f802a1b35ebab4fe39c880b8b7ef1ac4cf205aad0302047c435bb50067306502301a0ce1e6fe627fd965f4c8eda231526a01f1c9255cacfa51f8eec80ff3ea6627474d4fbe174ff02441bed31ca8d6741e023100c3bd25d6a4d1794a00fe61249a6c31b28b63ed0e6aac22e8c67de386a9935795d447bc6b7b4999f81c4e5360d82d09540302047c435bb500683066023100d0264739247be537d2b5cb57bb5ce30d32a5a202335353ebd4aebfa3885880dda2b2bcc264f0f0da1c57e89b7bc8f092023100b1a40735a9773a805bad78a2b699924737420b3f576199f452f1844445672b2b85dc9a62de10d3f551964fd9a8e5db370302047c435bb50067306502301a99df334b82f6cb71d98dfd55226e98e1a5f7837a5c143601c5e330a24f2d4d2cf373ce8fe05bc463219a0955d6d306023100c5fa3283b18733f1fc178e7f3055081791a6b5dbdbb63cce6cd42be7f3b2b53e42063dcd0d919312c49aebd6503f28dc0302047c435bb500683066023100c3af77f7e91446326718f289f889a4aaedcb9186a4db8a54e2a686db2a4dfebbfc3fa4221eb6f2a77aa323314a0db0a3023100bc9b518ef6f268318f24c3ce47b4e747788cd725984068fcf11918f3f070cd11b202ce1a02ce1be82b6593781340d8dd0302047c435bb50067306502310085578485a61917ff99a83999b9cbcf343eb979a2cacdce62e84a8a05cd290d44ae5db4c1757373b35b257d4b437606ed02302d9a70dcbace860b60fa74185180744498aa0a12a6fccf89b07e9a746ac43d365eff22b9f8be179decb92b72489f87c80302047c435bb5006830660231009dd41cd0d1ed730f81988c94faaec20076c181d547470517388965ad617c47b5136d411c92a05f91075e55c0901293d2023100f91b2c78135b8c1f6bb6a9e9eed96e803d66d39c5b94505590693859e0e191dfeff2ef806de1089be34d3ad4a5461f050302047c435bb500683066023100a8f1f4403d90d9cf7aec525d2ea465348488b517972dc9ca9760b18dbfb7358858cfdd2b015e7d6f5ac149ac8219a772023100de667cf06d807a8d9a5ba06650f170acaa9337825f634674579ae1dec58dc06a0121cb2d2c17ca81f0919c7305cd44830302047c435bb500673065023100d57995b4d3486a6a2c33a0093e672b9c6a790a24bcfc586f10de738a9151d191f84129e3103d93eec34662a7bc50cfbb023074b526ea866cebf33029be71713add3b4571f47121e75fd4ac6ade45e71394462efb97c758b0544bb2ce5a05fc5153af0302047c435bb50066306402304fff9f3cbcbe73b46407897d33a690ea1a0b93dec920d9a8da486ff418a7de885c9442054bcfd39872732e78857d7d5402304c18a7f323449f0ad1a7c092b714c109e579dff2b8e9d7a9e0880ddcd5def02460d31bcef5d9d4c01f1bfded2df0bfed0302047c435bb50067306502310098560e60a2ee1d761d7dcd40268668cdec301a278189acb09eddc4f999cf878d9463203cc234ec8337086eaefd7d2ea5023011973bf324233dcaa789a7b6e2cdb5342a2f58e57f429b592f0f72deb92ad4c9da236828e9a6ea0334b59b2d61988c740302047c435bb500673065023100ee299a0005e1686613c52a7f9daa58c44800d225383fa894490721fa167cd47da591e55be91015ce27c84b7933a827c5023013f83e07a76ba87f604c9800dce54bcb4f40f3d8daff7e1ab7635d87c7d28a77b781b475ebb92a5c8c9f39fac0a695d30302047c435bb500663064023071b8066f77bb5c637869be8a1875d0a7e5ec81abb4d166eeb7c087f9d935cd1a9e0f0f60eaaa5d213f7b05e2f8825fa10230557feb5dc360e52ab51398ec3bcf501d6670e11123027ada87152ad11ed840801232b82904d65ca3da9fd2e6550f66340302047c435bb50066306402302cba8f1708c8ea21059590567be4e3d1967d823a06a9462b5dbf76a5e1fff6ae692978b0194610a864bc8126e2bc5537023020af2775651607a760d08d9e96e5c1aa2cf9a263def5eb732939b264f9079aae39a7515d29fffe60487d6636c8d02e4a0302047c435bb5006630640230433a49cc65b79bfe03689387d37a48e9cd2906fc684a0da99d5a3554cb76daf8e453a62b9be07ff0b3da84eabdcf4e4102303d36c858c0b9b8cf2909f981c3a25f5178850b7f57eb6a2871298d917678e029142744f35b46006d785da043f3116ec50302047c435bb500683066023100c82dcbc326d28ef3e4fb24808e0a201375d4d4afa07f13e680f03fccbc52c9f68264e6f2c06f1dd1e101192a1d45baea023100abd9b5bf0cc714987d270f3fa1ba74133f718eeef271a890e9c569cc08de80bd63869d9599d3046f331fc3e593ec8c270302047c435bb500683066023100f10ab360d35d1bf40f6f95b2e09f64808fc81aa14e86230c3a62fbd9fe123609b125e97e3c67190be5ff395b632f3525023100b214dcf1acad7017393599c91a383589192deddd218d0e41a78e8dfffb38a35fd4669fe94d7d3bacc0344679dad10ee50302047c435bb5006630640230048b90f0c02c2f685cec526e36da5bb8c5e9ab5c7ae3e1dd2b344fbc92cbedbcace90505b4599f12361ba750088344f702300981f86e1fa57bfa1b13655fa4e974d2c9698457f743c0fed1b77f0b426bf01a9d577067b266754558ff0d1dcfc5a6270302047c435bb50067306502302415a0fb01f30b7c363d91f9e9edf84c149798b72f0513fed876d8a323e632cb19f3b6fa59db4dcf2717787304ff5f3302310085667db81c7d76a05d61e79a2fec1d9659c963fab82da3537c8953db86bd6df7a3e166cee4fb1489004b63e9f1b41ba60302047c435bb500683066023100a9bfcec62f5710c37bb3b33c04ff97abdd74a3748430997c531c98cf5ffcf207682fc65282e8a6698a718890456ed953023100fae18d235bb15622167572222cf294b5fee775e77a0cc39c8a8c1de193a333af7312b33281b5269829ae1ff663d6d26a0302047c435bb500673065023100f9f2e56cf2a3b7be6741eb4a08c7937bf2427db5b0b3f89fd60c381e5e34806c164df480132c6b3e323c79f4068ade7a02301e48daf86415fbca533475763967ecaf3ae8ae25f5ae63dd4767df131f15bf541487ed04d5f13cf3879f08937863b2a80302047c435bb50067306502301fd3360b3f07524d057d1a33833439a46ef561cfcb293181992b73b8bd8151e67bc363b758afe337f27883706b390e6d02310083d6a4503955b6ac8c1e3d844188a365e0ca2a358c1e2970576678cf4aebf8e58fdff7d4137933400d54f1653bce27d20302047c435bb50067306502310097f2d2750a3682b66444f0a6bcdac9265091ee4414d0a8b44a996c9306f7cb4b1d2c23c33e0a745356e3e11a72a8519b02307051f81d88db041005f132f6a899c03d740567ec09ea8943d4531f464a99ca0506a8001f515be2db6f26f1028046e3ee0302047c435bb500663064023044c1f0970c59de125fe64273904fb487c2eb132b5ef4bcdab3577b1ce5d68299d30baee8a4c4db6a929398760b21154002303859fa2310689a5bad307bb6800f9856da2d73d3de801143c79dffaba24e9f9df96ab25c566e01846a2d94678e4bc5e50302047c435bb500673065023100f35464e2bd08c483d86ec4c763a96706fa88d26ca16e18d7b2432455791d22ea1a1871bf7131faec63ff33e6c7ab0349023020d51a9c687730cdea829147ff23509135cd382e5fff9d8e9f3852eee20427f0fbca1cb82444618fdac2c6f9815fa35b0302047c435bb500673065023019e1a84d6ddfaa30f6d6ea30c66b9b7eeec87c9dad837d8dcd09c370ea70dc379fc9071ed92bd1264dd59135923529b00231009092887ead28d8af87ddd83be99ef02a333255d556ab6bcd0600be89599594504e2862c59114a43aebb983a12cd542e80302047c435bb50066306402305eb6c978cf500c71fb1e23eccda84cbdabc638e3ac4c7ad5c59b7b7ea98aecfa11c878d8ea366b42cc53129fa9bd1be202305bc2dfc9a61fac01aa6475e1f271f29dd4bf4729329bb40a5565011cc2d84da1b1ca1da39967bf820c326e44b99f92b40302047c435bb5006730650231009629a484d8a19d93d5ea5de10f79b2562d17c42ce80028b490d819c1935ea42478fcce274f7bc4af3f4a396f93d6ce2c02300c5940f4bdc96369c61e2d03099954cda2bf95cfca74e5ac4ae09a6f45902514a53056483a7414f23b551dd7f2dc7d230302047c435bb500683066023100d5f0768daa67886124fb0039bc56ee11c07b853867437e032973af3d892deda061715f5f2cebd7ace99cfd8b1f250c7002310087cc85bbc0811d4a5b26097e4bc299b598fbb76ff98aff77789172f89a7eeb64eb49a7c0af7683c074fefeb692265a860302047c435bb50067306502307a088d9bf18e4b86fd2b2e1e438fdc25ae90c20248ff97342e14f6264b1a61b7c816de4991d0c8a2c9a051ee0d5dc98e023100895bb0f1106cc8a9081b1b82dc0d68f309a7a26d47b4d15e414c21829c07b3630cdcae4f05a3656d9a0c3c55df0f63d60302047c435bb500683066023100d843723179cb1951e68b089e987645c52077cc0e87cdbdaa834115ce5e7e5902af006bac77bc412815a80129fa7eafe6023100c3eb74e349190b1e3a1cd598d3ae908ee27bf2b330a8bce21957956bcc276389ae846ef137ac859b60ef52af088c999e0302047c435bb500683066023100c78db7c02ab9dcbb991bc0e909096dbabffe6a9ecf4fb395efb267f72740c81aaad275b73962c307c56e9b59a5afaa9202310086ff214759bd876790d72dbe920de6c31a999b4e533205c6957f484eb76a27ceb8ce03577a432699efdc7bd3c19021950302047c435bb50066306402302f63c956eb1a88e8a011601c1ccc9f6270c1fdf9e8c41a0bb40a2ed396c18762c2a342593dacd24c413b6fcdff4f68f302307b0a12dfe423e125b97e260a5583d4885fc4ffbdc6f12de724f95f9fded77a0602ce61987923a6449a1a98c953f72e9a0302047c435bb5006730650231008290cd397ca2f92053a04e1f6abfb3c21c3fa42075f07380cf0311c64cf00ce59bcf1ea5a687b286c2380d211bc5fd4c0230724e3d0007b76cc5dbd34eb5a84979e06d6b8230eed10b961f99af5459eb868eccf3b9b432c55f3c63a5345a137575420302047c435bb500673065023100d971fafc60ffc1ebd61cf34813742c275d1470615398e9cbaf3930a20c7f8ade7263dee069b90cf80d663b4d464937cd02303ce9d980df52e41ed39ae4e2737b593f4cdf9cf73c6b3982625116f221dd2fbacb9ba702f4db837d49a082404a4cc54a0302047c435bb50066306402305b052b9b28a05e7240c4b861518c4fdaed8be82b768d96f983c0d3d01e1941f1971dff72785dbbceb9b113d5a8c9284c0230517264f17440c65d2fd9ed3a67877290098b720cad6ecd4caca6034d1245818f0d6af9b2a8de80ba962ed866707f9b050302047c435bb50066306402304991f4dc1d529204fd4ba0fc6ae0ed8df1711773a7e25ccec55747f667a40b18a3464697b4191f382bc26f141d9def79023007f155d3401fd56828d5233b8e5baf9833cfbcd87ee8ead2f4345beac0c66e74fd24e10e7853cf0dda92da7f21120bc10302047c435bb500663064023045ffae4ab8cf598e3e98821ab874074c722b915ab8923e95f34580a8f534404fa09d7d19eab9e18c70890700149b445e0230799da98951ff9cd4bda72b0ed5b70af8b5097c1b3971dd99c7fe11dec4f53c601cbe8ee024e04b34d8f9865642641c740302047c435bb500683066023100ca935906f0a1efe5f2ebb7a145e0be6b7cc46f4cc38cbe3ae31a294aff247dd7a3fe60c3ce6f210c6ccd3a0a9dd36315023100c96f21c657ebf40d2b4d8f09cf13af3e8a0d1ae402b2cea2efcbf604e35be7696b8213858b4fa35bde5eeff78cd5138a0302047c435bb500683066023100db9d8557bb7668919b11e763fe4f54fed5926bb3d53ecddddcc9b3b7c9a1a7dc52043b0f9155239ee1685114d1d75e49023100c54a0aded49f0082b05cc678b714488093da2d7324ccbde8c197324452b95c01960f7b9f2d494ac5ae291525c9df7a790302047c435bb50067306502310083408af7eefaadbffd4149d6a35d47c66312731f42db068c4b0aaceb68a170b7b155cf723978199e90990a1c0cf85780023063abfbcb44dc30a7c37a090ef423cd0cb354a22e8c58b17c56f42b8f294cab925c963a39d0633e9a117c8ba9db4a34d70302047c435bb500683066023100b79236e09e3614fd5b605ffc3a0e1916e7ae339e8010698f47a805933aedb407d0b5db754fbea698d769f5715838c145023100f9a91c4cad2fb939ece30bd5a7dcc884f9c0afa93259302fa4fbf1e3576f6c7fd77d190b732f43e74d15e4d9bee36ea70302047c435bb500673065023100c1405054f2c7276c330486d12aae276ee5ec4627d912eb05fced0ac6e1f75c9af53c38fdda6823eb63aef46c33ca284402303fb0369989d8cbfb1d762b56ece7b0bb71028e173530b42a1e3fdd3c750a0468c4baf6f180f1f90905af815bdb76c7320302047c435bb500673065023100f0b0e2a99ab958d767ea92426931b7f80e8943a0d5ab2fb881554aed81afb0a3eb7df49b7c66c023cb8ca35a5808789302307ae041b27f46e6dc5a93d88e8d01b695967d89bdd2a090fdc0e66dc3c02dbe05f3830ac93069b50744e6162f7ba7e6b80302047c435bb500673065023017911958932ecdd24d495fb1c9a2a809603a8d474b2e34eeca4d7b08f67da681b8a54b165ff25e1c865db577fddd9824023100ceed5610fc5e4dc82db7410b447732fdacdae2ad889413cb21f6796a4c3b7b8f31590b64ad5ba836feb5b1478a6e807e0302047c435bb50067306502306967d061ad43398c255b5b0876c0337ecf58220e1dd4e4d1798207b8a4c7d3fac8767878ca1f4d1530231f28ce727b7f023100e3951eff9c8ceac26fc5aa074b0df98e1a8d0edea1fef173c8f7fec5b0db8c890877ec8ddc282af6a66ad40202da4a550302047c435bb500673065023100a7dc3b3eba0ed88936d56d22b3ed9a3c4c125b4ffcd5dd1cf769438b8ae537f6e94c4e4003f266bd8abce19f3c271323023051505ef47c5776ded241ab731b3e88747fc493d7e0206e3cbd41025f6afccaada59998634a3a7ef0155825f0499612c90302047c435bb50067306502302e636a02c82e6c6dc8479252faeb904c68f18adfb2728b5e20f56d774f09595434cd627d1d232975b8b22c197f6b66a1023100b8a50dc0af803278d8f295ee4fa0d0ad61364acdf4f82a200d1929b0a1e63c0f9884e5f537f1990cc92daeb4a49550680302047c435bb50068306602310093dda55a7ba64b1f21f02de6f4a775cacb8e5149181601f380042401bccfff31ec801ae3ca5cc7bcbf44f13e232100fa023100d58f12ff70acc5b0f67180f41998ca9289ee75dd8d37f559d962c1c599a81a36a947ae46344e78d188f457efc51457f40302047c435bb500673065023100d075e0d1ac1c4190e3a866256dd2658e884435639cb655915ef3f1c85846dfc87b79273ddec27f6b3f034eb7ede08da4023062fdbfb9a07943497ac4ea74fe082f1016b159cd5b7ac9524162e87b1b6988a43255f8ec81e45a51585700ff340067ee0302047c435bb50066306402306bf23e518967c5659684d659ed9e1790b93ae0fc5fafab20af892051cbb6a41eea5b955fe8b8a3294975332087579b920230318f51b1d6df0d717f43c129124328446bbdf81a3478b3d16c1564d985b28a8386ad0b1c6df8ad7fdf785ba9f493c4550302047c435bb5006630640230716744616b3ffc17e34f9bf68dcd508be840e8c5453c341ba197c1a7ef8f79e2c185cfb6d036987fd30307192f47508502302e3c869d95ea04c27eb7ca03602134b0dc66aa1b32e341390d437a6ce09908425f7c01efb1b6d1dc165d8155313782dc0302047c435bb500673065023100e7e53829ceba66d7220e652365263452fa790fa13cefb427ed8d88a581f6735776552d58fa1f6fce24ae821f67b3ecfc0230134681dcebaf948d09628520c26b4beb309161ff955c00e6e74491048ca10d784f3cc7113a60ef8cc64fadb0b989d45d0302047c435bb50068306602310086aca56c6493b1bd3e2aa0298c21dae483e0dfe90cf7ec9dc6ff8a08b8a2f4ec125b7633c3b3b5b365a254bc05aabbbd023100d92173f6e2937f10e72ccc60723f30ba0b64e5c8931e4e2ef72ce0f1db16370e0437b7776a7bf8abd8bd97a0ffd667930302047c435bb500683066023100a9519527f55b99984dc5aed027d39e0b1f0f52d54b29deaef0cddc85d65f3f7532bca2d216da5048673f10aba98a5926023100ccd972920a384ef2bcf69ed9ba010bfc619b4aa33cc1f60ff611decaf5cddc2eeb4f518509b7024bb697b6718f1c9c280302047c435bb50066306402301b69861942bd49bbdd685669914fb4ea44460eb420aa984b9b49707a1bbcf884b0f36961160ab1ed2cc4d05189451fca023009f51c41822a1b3634768adae05f31c2416ddc2ac62dfc18130ef33c778513f79cc281b9bbbab32891b90bbd86fd95e90302047c435bb50066306402307d54e9e08b6b83b09027b6fda380b954c0f3f26692bf2736f0f1f20da1d11bdd615e7ee879f41010915da921599b160402306ad44ea4889001d5c143c7f6f1eb4eb18884ebd973561f135345f13f3e026b17e43f51836725ed954ce1b4ea53dce0e10302047c435bb500683066023100a4a44a72e47015b9f58be4e88ea990a964530ba3aa67bc5e865f2c22c3846f56d5e506d2a10b0e1ecfd11e5458b4aa54023100f7576ff8e8495b16f4146cbe862e138d968f89bede30d09864d093dd2a59569410b7a3337c3a9e445b572b69032788900302047c435bb50066306402307e20b9604cbc5d62daa2a7ddcf370f54a21096c8211d7ea23518a51ff93182a00a6a105e744797d187b7d910175fa47702301da90a2c76f69d3af5ec2924d9b3457cd1138c3959c9e06154a08772cad00d641e8e0464d8aca1f880d0883a7f1e8b8b0302047c435bb50066306402303abb3d35ccbc60f63581beb1f33e17b6ebebbb11c91dccbb567bbe534769e26f55df52b4a170ac6e78029e53e57f06fa02301f297a07da8ff9d4cda06fcbe7a07ce20a1f5d8bcd869a1c0055d15a86e0373d42e67af8c3cc9a11005fac9638b2e71d0302047c435bb50067306502302b28b909d7b74519d33d09fe58ef0fa8bee555a30c1a902a77c75a45f41f6b6f7b4d2c7e78a140dd48273f94ab9aa4a2023100a89c204ea60fdcb018438c1f0516cdcfa00b3afdaa3d5c813221598a688a0a3cad6a543cf01425a1b2dcdc04666e6e410302047c435bb500673065023002dcbcbe5d8bc05fce8c7df3622eed2529f52fa116d09e95c5b0ad93f4366efab7cd27394accc7335ad3b4f71f4566a40231008cd65fe692ae0d81241b10d65fbe143dab8cf9ec350cc268c26601ee33915f61db4d4fe6cf91a02d490acfccfa6b48dd0302047c435bb500673065023100e223b7808bd85f99f1c16b7bff5cd30bb0d3832da28f0f6e88bd5d76e9f054798fdffb5dca7350ee1c0adbfb1b53ed5b0230427328bfa16ca137be0e148d59da825750586184203b0a53e82024ecd0a62a60dc20e4baffea27996759e268c3ce9c830302047c435bb5006630640230158ba6c6e9658f5a416f446aade5266d370b56ec76c7bb523582f319656576ad4ab63f2ade2eb033b2c6d77396cae0c60230511ae8b0795a3fd9bee004d3a606210b10bcedf5c548f3e3b6d8f361c758049114b98f53495ebf97ae6bd1b9fc1bd2280302047c435bb5006730650231009bc6fadcccbd8940c6270835eeda71650cb2caa7310797d0b805655108a2ed8621abde1fa3b5010e35809c2f71300d4b023049df1ec44dfeb9a30fed4bb3c51e452c312c8e2e19b8cbcea45e193b590e022fd59274f940c5313642b65191ef945a8c0302047c435bb500673065023100c300eb5979ba4b4124e88a4df482dd9b3f3fb64739bb72104e78d617de843d702352f83a130f8df809b6fbf42adfe6e702301d5389a190909d6cea110fb5bc46baa9c48700d8c282f5725c8be213c04733eeff4a08c93c5cd0b5de3147bdc2dd0a0b0302047c435bb500673065023100b08296ea37ab2a0d1fb0724cbd3d74f1f2d5b868187c611307deb2abb8b6cc8c0d083a0d6cb21ba644d9540e352c1f1802307977baf38369224a5749c164f748a3c73a2575259326e7cd8263b3b1542a49d96689b78b90ce349965e599f615ccf38e0302047c435bb500673065023100c399896791499e35ddfb58e92e896d09aa56d88d4ace2d5fd3b085ff58a36cca14cadf3d86e49c9980dadfb0938b58d90230491f4578c27d227aed63b8db62226995a4389a7788b1f84a8c0dae906c65e2c2d8b74b0d8a703f2647413339d53056300302047c435bb500663064023058661bed862b56cda3c1442e7acfe713dc99fd84b7bada3830559822c08c320ec641d57dd07e9c9a6b87d469b4ff03e302303c7ce4ad8a9a8e2222a10cdf8a2f6391f60179dad6970c54404b83f1e1e6a6c841e8419019953f30d551fbdc28dc90270302047c435bb500673065023072cacc7d011c24f88bcac2e30b69217a2e9c4cf3b62e9e183a6d0923cbd992a9ea5bbc734184961abda127af42fc286f02310082eef1344afaa906355ba04b7fc7648d499da307c07f237bd0e35c1a4027bd2cc43ba14242d1e649f2d2048e4048c5560302047c435bb50066306402305f656592572465e1f70bd349c8b6741e2bc6234033e11bdb564e8f204895ed15803c44e35dfa0114b13e753e5475e65402304a1664f38779a6dc9b6a59a3c159a6defa75a36e94fa7f700507ce0bc113272411dc51df7584d90b7397c2b8fd34e7a60302047c435bb50067306502304c340a5682498cbe6e38d77fc1b5999c01cc07a9a33b93e85acd78683559eedfbfe9fec0542dc4baeac13695b13b99d2023100bd3f61f67d1fc9e8445e93e89ca81ff8f6364aff9fdc4a1b62e2d0281c1dd5081be3d50ba73a8f973fb4b062842941360302047c435bb500683066023100a17f1302f256de090deb8b923383a9de3c84b501750d1823b5d233671867d4f9f05c6f848c2ae989d9fafae3350b7a72023100f0d49b63666b72bb1e8033f1f196928c99cae9f08747d945511f83dde62ea33d0adb65b4a108e420d2bf54d005a6fd070302047c435bb5006730650231008f34606dce1afdcd476910a44070baf0643599d6fc50417c1b1dad66839f6fa6c5b8096a8392c93316d3b55e8867aa1c023059c3484c2fce052aa31928a18e4f3fb7f3445d846b33ba050b1fa055d527189c35fa866d0f4ad3ab509ce8796eae7a980302047c435bb50067306502303b15f7fb7b91e4cc50dbb71d6555a9c41042340838f91b17a8bd2a33a652c7ce523c40f82b2a15aa73edc542fa8101b2023100f8c6b08a34e1039f397938e99ef42afe8329de3ea838d059505cf3eb474d3790d33de88b97af9c99e7a2a403c0f24da40302047c435bb50067306502301550ef77e0b357e2b3fb03a903a3d51cb6564a6e59fa433f18782e5b7bced80655cd30523ef95a6a59cdc7c00ed72a69023100f61339621e556f5534fc4faae1284a0089f7000cc267a9425eb4b1fd0fe12542877621bb4d93094b64e66c10769056a20302047c435bb500673065023034568b1f9a60f4c5da6d014751675e55c71fa47f17227049533f4fff5baf25904acb63f284df3c7f731b901494ac2c0e023100d6ffcd59c064abb15f9af0e640505dd1005cf253c8e50f65d44b3c28fd5d2a1c650b78791ea5e3936116b18ac8bef72c0302047c435bb5006830660231009080ac2517a2433d031ba0dac6dec841de287f6bae8a403878151663cd48f40c26e53a35b25586bdf316030f9c867202023100a7025f6d9c6165cb3778e44fa9bab3923174882fac150f63bd4e5a214f6e87e940f00a5aa384efa34ca78f662a29d5230302047c435bb500683066023100f593743b0f65ce63454c2ea02b5286c3fbe101569b983910132fed588fa9a2265eac928dfb65b2194803dca5822ecc44023100f5a31472235ddb73e744633483ff6455552b330011a7297d645ce2e84d553af092450718557c371c93165e0ce462b81b0302047c435bb500673065023100f093851ce1c023710d93650ccb531bdce7501f431ca0a1b58549be3191f0f091e55232490539ea24a7d118d9cca8446f023002169ba4daa453cc5cac9f5ea57f026ac2daa83055762acaf7fb9cf3d593050fb6a19dc72820e81005871ff496f861a10302047c435bb50067306502304ada1f960a965e047dc926eb6ec0f09dd734712329a291676f1b7793c000d05da7492a492d143fd5b5aac1065f39aa110231009e756efdc11cdad1ab361b86453b95c520418ce38fbd06c0b3601652d940ab80665b580c38435c338b4131d912ea86ce0302047c435bb500673065023100916e6f14c43c62498d47dc7ac81c2dff9cecda28266ae841e28591ea39907ca4ff7208ea43b3c6649dd161f6fbae70550230350be920d105b044296dd7e770cc92ccdc607dbacd3a545c016dc98158060a7417b08b339d1779307e2c759f140f06e90302047c435bb500663064023079e98f13918e33fc1e32ed6c6b5aac25610a27fa4ef87ddec4f7c3ec8de23c946beec4f89212d0f511153e1153ca4e6b023012335426f5d1d7d547ce6bffbcff65aa5e791de525bb6d77eb5e827d6a4e6688bb8de5e612207ba45a8a1cec32d82e890302047c435bb500663064023000e414099ff6350539aecb5b706202e5b6754c5928c2db4d3ab4b689c7dfa59e4ee212ba133a374594024a62800e7a7402301de735f58a48b9b30819c391b010804bf52a2680b24d9feb448d5cd66c557b0befc44622fbd7fbc9c52c9bb30141406e0302047c435bb500673065023100a7cfbc0951b7bda6ca55b70e43b8cfa02e85e1c3c5b30b27141c19feec4f279d9cdd5370cef38b863f06d9adc444c56202305cc1055ceca38435165a2f01ea81857af5ecdcb64be246094cce9bc3d8c379a07d1df930218eeabbeb6d302db9b2f6610302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d8b6d5571cdba174939352e42416ed655153dbb2743f1f52513b82828ce99668f2f098f0e6983066b29087c6f25eaad4023100eea1edff34c87ad8c058ecf215625a135fcceae1e082127df4535c054432e8982ddc4e865e0f293da1e9f22d977a74fd0302047c435bb500683066023100c527afe2c1e214bd1aaf93b27cf14733eb2052e8d182928f416477d8ab704681dac70722b324f4bba426cb6a8e316cf4023100c6cbd3cf82e6dd97c4deb626995a752eb020b3871104f7976b83f9a166f35ad2474d87c880ec31657ae17871d99769790302047c435bb50067306502301bb2b717ec3f8f97618aefc9ed42c4ef7fefdbe035fb99e42a9eb77c085aa0ac5c190b03f7cf2e9afbbecd3510b5ca040231009d47d28ab6d091aa4cdf4f71ce2d57bbe4678f8865429f773ddeb9c59d6b91d2d09f3b9c43a23183d13917de600e883a0302047c435bb500673065023100fa5a155d49cfc6a0757aa225bb8f70e59c481c0fd3063a1fd9c92a255ba56c32b8e6a20fa2098b8fc76a17d6f16bb59502304e3029de42423db0b67ac93e822609849491c396c6090f7bf759fe24faa919fbc1278f652b37fcc0639a9653ec6749b10302047c435bb500683066023100bfb54d5c82b91ca0c04259ceee9a209c284b0f05794e95d768c515813c850c7dccb00edaba1cbd9bf4c1e69ad44af610023100e28539f057d205a97ae26865f81bb476b60b4a26847f29d35abb257857cb0ac6f0cd4a9cfa6057994bcca047b35624ff0302047c435bb5006730650231009ff9344c604f72585e595a11edb74e95acc1037507c772845bc53b0c692b7afde66b5e29808ea853cb336b700abc350302301d44872f726c59b89e8b7c435f7ea8b0128887ca1a059f1ffbc0e5180e9a8f5036ae280d63c44caf0cdf1952810c5a860302047c435bb500673065023034102a7f0931514c463a8e4dc7451f5ce6fbcb123ccdfbea6aa4f809c1c81f75fda1f65f580fc6142e1ae53e903e9f89023100c2dcb219f8c2b11f548d26fb9a561a2dbb1128bdea92a3adcbdf83d2690614e3e4edf533bcc67ce0fcf840b323d1d1b60302047c435bb5006830660231009a2dfbfaaf4eb1340b8cebf705781442f91c822a32040cd1ee9f3b41b948dc4bdc182fd320ddf1a143ce4583aa99367e023100cbed67f7834ae1b0735f60fafde61028b394fc76e3002e792e962dcaca2e92acb3fa44bd3fbb80ef14c033f8fb8ad51e0302047c435bb50067306502304da0032d57e662184e38418b3838593f35e4ccded665c687915f93ac87e912dcb4395f9909985e11887659e32265acd402310085f0e137952d94b0a09acaf30aa4479fe3f3de60fc06911992553dcdc34a574cf97ee3223c5f969ba2a8dc9156a55b2d0302047c435bb500673065023100e2d75a435d58f06c651e67e6f43d46723bd1fa890a20b49d68b4882eaa2b96b4af2c87e4ed521cb367f3d8ef353ddeb60230621011e81a7d8f54bdd607fa8bd36c114f6348748bdd3e25cdfc72c4e59ef87c45fd46ec33e97ab5589b06561969fe450302047c435bb500683066023100c6d6e57f9f7f5adf6d3cc37a5408ed1403c37bd1651ef2a4729beb5b85b36d98d6acb071fbf7f463b0c0cc9dadac98ee023100ab703ad1617962d0d82af8388454a69217b5bffa0686b8f271b8c5b1db1ad1b686462a9f715a8fc34e920244cf1627bb0302047c435bb500673065023100903d8fa317069a7aabca57bd423b14b2415c261c1eecf88646f7e62b9e92e98ded37976ab4881037da47a80508716915023078ca347bab41b48098a013941999907ecf231f3861addf998fe1459a1fb083e17c48a1d65b318b5a3fc6e38ce92930fe0302047c435bb50066306402300b9ed989b352b7d21ee1e6c4dcc3250e195db3d11ebfaf5489e9bb21e7a892d39867c027e218108ccf6bd3cb05bc8102023063b988b74749ceee47a1e4a9d48d20d00fdaf58fa483f97dae13281d74cc93e916204a13145b3bf1b19fb19d2f74cc030302047c435bb500673065023100a5b7cd7c1666a0a1bf290300b1704644ffbf24f0c5bd50f409cba643520cf85707b9aeb4c291cb5984f9d092721536fc02302cddcc9ade665e6b01922237128a533ead1a7778c8a981819971e1c519943a947d58ed1e7e2523b7b4543a38a41216050302047c435bb500673065023051af50fe373eb2e3bd39008675a23280b52a937718956a6352d7efabc542bdba47dd1508dbe66908f361f56ad6f66a72023100c4ade23816aa97d857e4a2348f181ae836304391d05f664008610b9b03d416a3eb26bc5c445fdd00b52e31299208b4810302047c435bb500663064023063c916c768b4435b5cdc4f11a6fcc25520b7f557c93a80ec5e37bdbb392fb0427111731bfbec9a4e1588c12c0f174e34023076a36825f06a0bd7842c533f72c49980c0d6519ee8703a906c63072a83f424170f7ec49ad6b18eaa7e5f2cb39f44fc6d0302047c435bb500683066023100e422c509d8cd467f307b1c614ff872ed656860fd616a7e6b86ff09a5509e96bede3f050d2c732cae128873cbba31bcdb023100f8c88031d1677b6f350a8cfd4c0289afaf363a5ba4ec551f3b27a4f2eff79d9352235625859e350b17e268aab8e715560302047c435bb500683066023100d47ce50e2f133edf2170a0dae3d08754e49809e97992dfe9b17ca6922d9338d4174903a959121ef57c9f261b2857bc5e023100e6d52e43b1d0fbd0bf62120c2daf67b207626d2a9247bf4dd075b303ff7c1803174b4e666fac79dc7b2fb6e6e02c59f40302047c435bb50067306502300817fc1a525c5898f92392742b619ca390bb6c878864fb1fb89926856ade539716e9c7bab3d1b4e790ecacac7b4034a30231008f2f96e0ffde02516b521ffa653744e077d369f97e324b605741ae16aed7c971f4c9e644a074968c051dda88ea5321100302047c435bb500673065023100bdab17ca40c8922ea7e5f84cdad465c6c417b7299cc1b8f7a050ccc390b04af3d56f415279beaaf6ed599741a0c73a2a023026dfa799f37077680a3ebd75fb73c5fffd3305b921e0683f7c59d23916136cfe001aee11a5baf85b42d5659eb0b0a0670302047c435bb50066306402301da419adf9b319dc5e3bec6cfe33a62ef515c0671f32fb12ed6eee7e55feb26117b00c7a6381c9c377c7c9fd1aa7416802304767434b91cc53ff7577b59f4e92bc7e31464e24e107dea6efb4c0a1c43b7269e30e0191b178e0b960284b05bb26a7230302047c435bb500683066023100ff8179b3fa77874f76fb7d0cef1a4f13cbd579533c46c1aa159eb22e0c677eabc1b3cc34f19cde902b1f5b1843bdca3d023100a1a1263a2db3a6da05d7396cc285259ab058477a616a3fd3db73d243b31dbd53ad59e9714152670818af074e57237a240302047c435bb500683066023100d5198abc1f108f63210fa22211e2e0efc3ee0928d5b0ac447e599c6a67f4cb2dde5bf6dea931983e2c0194b1ffc98c3b023100e4e0ac0bd166a0481b4d2c57a936525017e553219c9f576776b278d251860928d6f748998ea73d3c60bfb87a92c703540302047c435bb500683066023100aa494c5820e4521a3580dbccce85f6941604dde90aebc20e65515a5fab0d9a82af205eb57833cf524e27a3d4d31c6e8c023100aa0e902169bb42d5e017b11c2c21d4f623bfb29cb9f83e35ff80b85492e4bb20d5be328571b863dcd12ad581affc34a00302047c435bb50067306502300135719c96962899729bfaf3d5036da0db2751117fa658a96205c34f8795c7cfa139c0faece309173c502b15a07335c40231009bb842f296532fd04845adddb91d7ebb67dc1df227c95ea28cf173d6d100cf5eb53ae34ef495182650d8ff8c3e81b2ab0302047c435bb5006730650231009b630f86d0590293c0e3f1de271c83b28b7b96b0d67d6318299255752bc69891bde27e2bddafef4b27433c122a7a388402301fdce7780b7e14274c397420717f9b97b8dd51b66f8230c16c2118ed0bf8b798561aa318e36204d79cf4b263c69d79ef0302047c435bb5006730650230637722ebd5e0f22a810df364c5e409f5c0de99711335934e828088b34c144a6122e75fc57e9cc9aacbd8f93312d1f383023100a12082c2fb6f8b62d017542b7455e2bcd2b5861c3ccccb858ca6229c2941954e605319a48cf67401043c66b6008ea0a00302047c435bb5006830660231009936198311e446396c2dc4205a198c30c7a53a9ae44c8748badfa16374e67b93d319c625d4efee871fbd8fae177ec383023100826cf7d69642896011ec7584308881442b3e5d54b1ff85e034c5301f4e1a35959a5af59d335313347d866b59bac5970c0302047c435bb5006630640230046211dad1eb9cde26150ac5e1e9cd53e1bb9fd55be3509cf82e3d4d11833d3353249ac505b92eb10f857e286c13888902300eb924787337990ec46eea803cabbf51eaa0e1b0f098e964f1845662ea39184a8b4497008f8a59459fbb1796be57d4a40302047c435bb5006730650230612e65174095ef8f2202e096e1e33ff59dfd16ef24133bc71c893c3ab758d07b53a85af1e9e33a1f17ff59828dca491d023100d1bb2c192f17c90062c4a8500a69db12f907e9dc10adce63934488abc8ebe3fa070edcb128460b68a5c60b5f9cf5f3a90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a707a4c51692e56d67c7b6c0894103d43cf2546fd651250f74b347b90ba51f021eec45542d18043e6fb942af4cbf5a43023100e1c6878023f2841b90e852cc2eb9fa8a471d845318a3a9fc5fcea73850367fc2d3121e5fafa1adcfd0f2e3e8034e2b150302047c435bb500663064023017932eaa03455ed0f3d8fa297ce0ed117b30c01db0ff3d46fc36fbf4336d5739f00adc9f059bee8372c8babee7f1b08f02304e56ed5a8f807e6893bfed042e5b484969a038799e4f11d278c8a3cef05d9ecc384f620655a060d067e51e929d9b0c260302047c435bb500683066023100f62453fede564601b3e4dc479d84a2ce293478601812692e5887faf6312ae2ad28740aff2d7df20a25de49d6ab38a3e70231008ce5124529ffc365dc248ff5df45b53441ebe462731fe8f8b832c5ed5616a367ae26d3e6a27f7438dc6e5106866a09b80302047c435bb50067306502301d9a1129d133b5c8ce329a253834f86a200e1032df8278f01535c064afd19f43930c03bc6996cbe2a1a6600a0d28a4b80231009442ccd716e4406f3043869e9da78db8517280876fee0c1a9b305e20f99c3cca3021b51666f9e52583ecce2375f3cb6d0302047c435bb50067306502301bcbd78ede3b29e8426ff8123debee5a08b2801cbb7b6c6ae7d0ceee147c4fa14f59203bc23f95050e27798ef8762f87023100c4a95a7fab889408cb9ec315e2617a18a50772cf4e97fb6c1d96cf49d5b332806bbb45d71aa17d627b28b1a06998df960302047c435bb5006730650230759631a45f41af0e13f4abc21b1a27b0ff6bb600a10236b0ff44199f6ad56fa00dae3dde64a73a9a80d033b2c4fe7de7023100c838c502e2bc10104de40e95ed6c1a2ff20f424f69e5fc22c0e8beda2a030458be0ff118c6d9e5ec6efb36705542c9630302047c435bb50067306502306252fd5d48d2b5c8b93758a5f3e6d6201c8d4abfe29e8a3adf3441d03105bc3ea0c7b6b9e1426d5e36c28525c52a4a0502310097974fc01cd7e2f24c57551c6f400d7f9eebd17b7fea146c556d9c7b6c46e9d3c0c6e0811d8e525f9800ab2a1ea622c30302047c435bb50067306502300183d05d601f03014f11c024e59c503ea64f4a7617db5849a4f0e3510f50f00d351ee351f7d5cb5df2c432e942c4892a023100b23f04ff0248858749445deb8df342b130d0bb2a5a1375e6fc8905114388653fc5201fc5f0f4b630b14f9571c79d1a9d0302047c435bb500683066023100a9498e508242fb31b565c820bdc34b487e3fa26a6cc048fb0dd306dd5298322a263b6d288e214e8e34652edca08903f3023100b66df6e774afe1bde858bbeb20fee34316352c25c11c6d8237d1fc1d612ba6d9a0e9723b7e582308823f130c848954060302047c435bb500683066023100949d2c00042bb6039917aac061aa6feacd82b6d28fcc99d30d71393bc907ee5d57226e019b031b1307e5527da961bcae0231008417de393663b4ac56ffebc256421e9b199baa3e6094d3a194d69900e1264f34d56fca1c9ea46ad941f6ee8913663ec80302047c435bb500673065023100d05fe22e216e1dbe96d586917831248bb137960dd42b212566ff4b56ca34a3044b57b2634b2772edc3924efd74c2eb1302300572e8015c8d48dac194a775e5bda7a85c2534758da755ccc431c84f0a79bb08aa232f9307f535ccb8432b75a186f0f50302047c435bb500673065023100d76ad8e7a2f653f97d536f8e221b09ae797cf527836d2de90f13b3f6b6c394acfb73d8c9409088d292ce25f28b0b93af023017c17cd611e5946c922dfa0b6e16c8f59a3dcfca9e6eb26f997d85fcc7c69da508c38f1095fc82b473e6c5c016e295310302047c435bb50067306502310090903ace0c825b7bbee90e0f8d38f2a642925a4c486e5adbbfad5896778614f90a3c1d1c87a0d64db00b40197122d1e7023069858894ab04dc6a1c9210f6eca885c6224cc60a6abc977068d9fa6e707d2159d64dcf5b2e64cf991dbb2e84e16ca4d40302047c435bb500683066023100d17ad5e9aecf4e7247012849c00dae6615d1e00c3417cf88cb1ffd14fe5ed5f16d49131fc15a55b03ea97ddbc54244b0023100ec92ab5ed264b861a0a937eed519d3218d028fd6f5a8b49c72fb3016322eb050efa3e12fd9e55c77c8cd946eaeea52e50302047c435bb50067306502305913e6d0db43287eaa1a1156ebed3ba03a8c71f89a24e750d4946ab70903a5b7571ff1560f3ef6acef1ccc1104133403023100df701ec46b626236cb51115f3858d531b445112ab091c109f967173ce3cfdb479560aca79b9583a3b543e5b01e3efc810302047c435bb50067306502306095e14d96a6035cba49bc6cfccb90af7680b154798eb866c931f5768b2180495589464560ad0ede0f21f04e0d68d326023100c8cf2d90873f7a62dd5284634b6a152e6ca5cf051e141cc4481bb6becac6a443c3b7d809dea7912b5fa753ea3dca71cd0302047c435bb500683066023100b9ee193151d309037c60e938671643f199ceae4eecb44d8b649deeb2bc7bbd503c5bec87a82c353c19f6072a018ab023023100d7531067488523ba596b29041c09759a975b9f404854e4b4e70b40c44a5cf3f732de2c9a3ef6e40968afb5294a771ae00302047c435bb500683066023100bab1c7075705dd67b3ff118df8ffc79ed7b15b4be839345b7d38cdf25bf13053ba89161004f40ab3a24caa2249851f59023100ffb80b050c7c86de929aaa10be9f10ab80f527e3db4676cbe9cab29b253bfdd1fab9797f1639e9c9ad2863d7035fe80b0302047c435bb500663064023062abb6e92fa32db9ad2f156105991ebe1493af3c7cef158674a60fda209b3ff3f7045f82c8d33f7a895136bb1879f8a802304b85cf87a55805e5ae9e0a21ff28720c4b1eaeb320c3a8415e7e609047aa4a924ae53df554f019a953c9720205bc34e40302047c435bb50066306402303c891f26267e4c09eaef367531bae42fe14f19f055682157d963f291a0e521af4246fe38100d5590597360362e61234a023041ddb1aa028571288ce0697e616dd9f2c78bbdeb077aa35b5be5c45edb22ab3095ddd06014db1fb850613f96adb9b3420302047c435bb500683066023100895804e76b987c9dc37085c550cb4b57055ca08ff03230d0a4b79b25caa2a32f8a4130ff1e0c1d48f8e7cc217cbda86b0231008a668e5acfcd2ab335d17dbc8958f9380c64414f8f28dfe90b21e0d7f8b3a33bb62fd9a8a6b4c6446616eaa6770ca94e0302047c435bb500673065023100ecac42403be17cca36ed82dcc7a78165af0998487ae4edeac2977169a09ec5a25b6d3d7ee93d031659199428045a709a0230139de4cf1ab4310198d92d8964964b5e18a338487ed0190104310f4b5536f18beaa780ec830525b7f4a194b0e23385730302047c435bb500663064023036b5a0ca2e23ab497b0d418f90aa3783c6589499a39c610dd1a2a343201d57e94b6bbfe3690d7716f2f4344efe3d21270230041a9e7b02c0460a3836d65a13430b9a7d6995c3b13261d6e0dbbb227bb9439d1bfd071f1a55c6e12d8372d248c704650302047c435bb500683066023100b88c78e37850be4972eeaf186e62b769b2aad696141d9e1c4d9d95f949af92754e1105fe518c1a62f8c31ee9913baff4023100902fa5cb52bf56db198ab65dcc61bbdb6a8afffc8cdf8cf8181f5ce60bb0d6128b5d319f97edaa471f2dbb10343ae25f0302047c435bb50067306502310085c85008ebf8dcb2dbf3659986d42f599f8e68f5513671c7cb88200aff2cf13184404cd52e18136b59a784de10d3292302303707af9315cc39c00b1dc2987b4a7a563c0991517e05e557fa45c240bfed7c9c9a6c27a6f895720b9b402bb8519b3c530302047c435bb50067306502304e790bf620c655672b4da17c5819449a8496a0593f85a13840f945360c67c868bb31e26a8e93ded2f10c20328f9c4ad0023100f9768a1f24bb9567f0311ff1f7b2c65767f04b863ff06840d012b0722e74bbf5721e9bc56e019fb99815c8efe00f570f0302047c435bb500683066023100dd8cb5db3822f74b750baebdb023c137e42a8c70e1be632beb76e4f403d5343094a85ab1eef056312aaf398f610304e8023100c6105d79bcd6e7683ae34d6738ab46eca42d039ce6d225fd5037871d7e6bda00c856706161e6988f1326c9abd82495cf0302047c435bb50067306502310082ca4c8aa15ec05a42b2126fceac49184c9a0282791541194864c6a8480745d61afbd405bae05e812d3e6dc9002696e9023072707825479bf234058e14500386087fcd0392a14d968afe1528a6721ba180388f4b5ee26fa93d3e03b3f0b1ab129f250302047c435bb5006630640230322aac225294176a729bb0f312cdb95d6cc53b6e7068c43451800e0b7fa089d296249f5742c06be20e61ce149b99bc3b02307f18d8dd2aa8efdfdd184be0a18f04a4a892f2e47d52493f411aaf24e41d6e5836bd6043b8b8401b8e356c89273111430302047c435bb500673065023100b59fdba710933efa1c1a291c9d2c8c40596aa1534d06799b11c8e36e348443bf812385ba6ba72b62500a0bacd150dfc102306546e0785ea2d6717665efefc5e7549b25c87166acaff9f273dc6d8b250950bf22103ce6d76c96474a9dd1600a3b4ff00302047c435bb5006830660231009b5b88e22172492c1e244ac91323e9caf9a42af263d46dea1b4fccb3f7821256b5a67b2ea6d261629aad5d9f4280a35b023100e14822c63cda38b6ca134629f576df56dd6c62a0f2c7dbd1eb03c158794e0f3bd1dde55e629be9b1a49a8c8e6eb1c3d00302047c435bb50067306502302007469363bbb2bdb04f87dceb3d37e8ac790b84edade21acf089d60d2175fff2caacd64207031e156c8f0ab99a7da84023100841d8ebc737829454610d0d5fc46271c75495d3a64bd7192536b496eebfbfabac4ad5aec2ac6a34d3618ae3c80c95bdd0302047c435bb500683066023100ab6195f7ad5a8ac29a664e2e202f5b8b36bdd5181a040bf4baa57146228c077a7709260a44240a18906115f2befa9839023100ef41cfffcc7f2dd3bc2744b044915458cb093a941609ac8246d1d655d6e45a450d76c5a9f5d6260558507ac7aa71cbee0302047c435bb50066306402300339fe48159f6e2dbd3c4a81053c1ce6e15d7d6818d90398f542927db99446eea9433e6658b87ce4337f5e0a71628ca302306eed12a70e7719469d86b0c7503ac31378902676ad8257d5335e2241d84fd3699f6296208b912cffd046964108a7c7840302047c435bb500673065023100b589e6b14593e8b52bcf1faa9eee3a3178fe8ac32562fdb484248e0986f0e80df4897d57e2960c2c1806bd90c2738564023049fc8795c7bc6588d94f6eac5665fdd6a0b15c333d94e6a597c42eb7e0e2496d26b9a8c65007f845da48336e7ee484920302047c435bb5006730650231008374d2cba66ef187e39c35799c35160ee86bd955e9cb6f1ebf34654c939245fc712c4f657eaa9edc7355e59ae416c4a602307d0c8cd98aed1d673a4b419f022527b30218c7be90a17bf18a0194d9c4d2e673eb3841dc0d601fefeedd70235cb5ea4a0302047c435bb50067306502303cfa3f4ba507705a8996cfc40d2a1762a3d5a832581f12beeeea3505ad99be0608dde9425e0c23fbd91d1c44d0f7fd56023100bb44b56196c7299a2a28a224af6f24b33f3d8b9b119d888789698ca0b8aa5268a2900687755c1d0d32ced9774ca2c4fb0302047c435bb50066306402303465187b1ebd9c2c083b55ac0ad19ad6d3de22801e084625a397d1e09d647f139a2187ce54f879a6cc14b700130d2063023049a703019a04fb1f770bfc77b973d85f4f477e7ab16d46c89072e0cae8dfc84e85b8aa49c0ed48f8062ef0c601796e9f0302047c435bb500683066023100f3356f9c6d8c6c591037956ae0b6510d58befe9bd502c8667743cb2ab158457b061e02b283ec5db7e46da878059cb7ce023100c388500dd6c3d165df36d9bf5a344a3031b5113f4edc53ea3b87154d6b2b9549f53fd389186ea97e04fcb1a109654e990302047c435bb5006730650231009501e6f322786bf20e9b58d88945aad833ded10cfa6bb557b773a26bc825e0798101e71829bf8740b79bb66e296abc0b023079146de3f6ab3dafd5ce0c938207bf7ebff5f3f4f9561a975788595a9751f9714cd21e15fdc685da99bd8692dad318810302047c435bb500673065023013bff7493fe04ac266e4099cb0fa3c8de36858ebbb5f50259c7a4fc6060cdba56e7aa49b5f56c7fd809f8bce481d0f13023100f8e57eaa9c1933d75bad93e02fb3afc2f764d6b317d76f000eb5d6fbb91c4c8d774b354040252201ea33f59aab8bc74d0302047c435bb50068306602310088443ccb2986a1d853373f33565245c98a599681d8cc3d22394c03551cc870740d17d0864a00259958b5b886e7936cd4023100f08b85df2cf0d55c2077bf086130500edde5974ec2d2b7f1381e50f1a87a84d3f284b1e670a07586a40176b2f8b629440302047c435bb500663064023024ad3c25d135d3f918c8bc39badc6316a3f294d53aaa6392741a22abef826cf320239c71e6352b07f0560e8d487fc87b02304d7329dce98e256e64ed785d69c1367cbce9b450ddb6e493f0687f767262a14a3c4ca8fdf62a0889c0cfab0c3abfaa2b0302047c435bb500683066023100dfce8563a9b7101ac80a6acb38b331ac70f2c5e86eb9c5ce1d20769127b3b527ebb0cd119cae246944c6414960502e6a023100eaec7f9780dbbd47ea7058a4ae1ea32e36388e077d6d7673b037c326433bffe161d493fce9bd104cc7b4d0952f02dfd30302047c435bb500673065023078fe850ceea86e5155d8fcbb8fc0e187d3cb0949eb7bc5f17373034eab5d5d34afa6e5b8d14e04c483e84e52a8a27c9b023100b10c209e1cc144a93dc46cc6eb3b9892b5d596a4964f4b7f3a18e791bd169d551080a5c33ebb4800f8f5759548c702d70302047c435bb5006630640230442efc297a16167fccbd44302b9f1d25468b7ba00d6f228d36b93abca816cc404eada8f64293858d38a47e3eb2c5083502307893279dd33df6e63ab7cf1e7e1e9e8a7a0d558cd03db0219e3d74511154d876729c6447db8144ab385641ba9e2644790302047c435bb50066306402301a71e9b72294eb0ab8364baabccde0191a29589ecd70aa9afb04a3e98886bc0da68444fd8fbc23616dd2009b7c7baf9402303201be7b8b44fa1f4c39fd7c1fed7b0955eb584b83216f918fe0fbf42675e9334b71c5dfe30860764f1f65ecc67521b00302047c435bb500683066023100e6471a01b82db0ba4135337e53551ad89016ea3bc77c9233a0a4653d5354f29beb67dabe8df4e448e66764f16af86bcb023100a862e429eee8fa4dde1266b435c8c073eae5e9be34d28df96613367f7dddab419a4c74c4eb2c94fa4c4f85853ceb52d80302047c435bb500683066023100dd71f37d8fccafb7503e46b2286ec337d8f1e35b3faf79b25792c61de94af4b8c9a91dafc61c2be3522922a366cef63d0231009de34078730ffb63fc020c9bd926b2f34d9dabf241dc42c91c25ae1188c0e66c8dae83d6a029c6a3a6fd19e45221cfe30302047c435bb500673065023064f671392ac935c9dcf4de318f80549ac92286d6cf4747039f15d0ab1e4f012c33f752bab80b4e2a729c9aef3d5d66b0023100e95ac7cc94f565096a6bed54672c047b7b96ae35cdeb5f9e5401f18a95823d9a19f940797294502f070f6820c6ea552b0302047c435bb50066306402302fb5edd4644cebad810429b31e3acf49a6d75a3b0891511faa593520c45c1ca45b3a75b612eda4ca8e746325d8ab9d080230668e78a7766be4a1708428c78338f738a8c2fe31eb5d0fc677a46ab10123eeea4a52cdbc6739e919bb8ed2ceaeb192c90302047c435bb500673065023100e776cee7b5ccdb8b4003b18e6c2a06f92d2c989d8b668e2f1a26f5fd55ac79a1531523662a123bbf1e1dfe1469a3959b02306073faa7eaf164211e197b272096803ad8ed395d1b3bfe9ea20bc844041d9f6e5f488de08017048289530a590e8381920302047c435bb50067306502302c440373ecd26f4bbdcf018be1032ca2a943c48a57934e47cbb4360c87f1e1dfdf74e2e88f0a4f98fc12dd22536e5edb023100dfd7c746d6a2f8f1fe882e865f61a348379e889e192a13898d713731a5c2c4117e7b81de97d34578a5a9805f42337b8b0302047c435bb500683066023100891be4d29ac0ec226eb0bdaf71fed74bfd5b365c147013c758aafbeed506c87a1e15ff172c8a580eab1241a8f6c55d300231008536215892694088be89d5440384c5452c631ddf0e1e5ac883f2d567571e58402a4862a8c3e025908a6af29407d80a2d0302047c435bb500673065023100ddf9e35591bc1c9894eb010c1d77f5d53c41c9f3e6cee4b5645bada948423f5068d0e30a94555c5af6530acc67f59c730230562cb07bce77966359ad4c1d5932ad26ed2a4815bddf9acdb141f735ca47f302a71d763f1062b726d8cbea91cb1ff2da0302047c435bb500683066023100bd67bceb022093d397fcc489f8d5ac9e5c655413c64726b1f130acae516ab63a680a6422df613244a56a783412bdf75e023100a004c6371a712172615deb9a175b0eb70258f88d2399b660ae69cb48e4bcf858672177ac70328b3e097eb6ced7ee62830302047c435bb5006730650230402971b20907371865121cea9113150d56dd162c01c22469e43e185ea6ab2d212cdbc6e541f42e55c1b20e593413e9740231009305bda1f205de498f723ada1f3554febe61006791a72b5405274c4db80765dbd7860dfcedf59a985c2ff2c602da51a40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307db8c97b675f8259d6903ab9653a4c36ee89ef5111e1d658aae30b7492aeac0a1dfb4bb179891afb5241849f53e84829023100b292fb31ec0a54aa72ad0f9e660aa50aff2666a40065ecb30c4087a4cdef56bb4b29eeb5c6bee8165d2ca5dc0a6437950302047c435bb50067306502302b9a399d429b750de3a3b684621b5fce7a007b8f8261dc68b08e141bbe435a3c1b2c0bde8f701d236a107b54b21f6e42023100c70ca255ddcb70bc148b397de423c16bdb6f9a0d833334d51cd805ea3515e700282b5acb61ebbdb7ecf9a1901ef27d9b0302047c435bb50066306402306beb73aa2be2e6cea3769e14e7e490a54a26923b2bb637f941b2fe4001658aa54d174a0b656261ab7b5186542eea1cc502302cae7e1a982d9df1b23efee9b027accb582497f81e3df2a20637a72a5a24f58005ebe11b24e8d6387cb547761ecd59440302047c435bb5006830660231009af2f122df0a00a8b6369624bdc7d8a351a88eec22cd9311f09a1790a2983c2b21687bc541bc1aeb7493cf96c5900df1023100a24bdc3c9800c14f70a37a87e92ffb75f5a133e2c455383f33eaa6a501e1e5bd93b30c738067f8d99b94d9e7dac850e20302047c435bb50066306402307094dd335335f345385ad85609add23ebdf32424cd74257b8fad0d97dc1b4c86e2af2babce7897f4d752eade11e25e3102304e3633afc93ab5e9dfcf53a8fc1c9d4e23ece8600574f9edc63c7a033ab122c7cf7dd88aaf5fe1d3c1d6103c284eabd60302047c435bb50067306502302aca0fb17add0ca519734648d0f0f93d3621123b9e0b20ac71b27ef590cd51846a5ecd5344ab813c9fe66a2f07928d9a023100e4ea16121cc99b9a28e97e12fc8a84441bf458f603f1dc124a827aa04e8698f40111eb205e34f8e19fbca5c3f0601ebc0302047c435bb500683066023100ac332f2ed1933424724f7c45192b8177559b384aafb1a70ed475dd1ab9e19b2d902cfcaccf16a817c0a1682373074c04023100b646ab73a8ddb172c4769c7c637352320dd5a6adc04ab1ad5c8b682a436f6e10500974bd8e49fc1e1928a437f790e20c0302047c435bb500673065023100b4464523553a95e3a29c778d2c6b50ad11ba36502c730b055dcca53ff0c340069356abc1ed5241d69b2af3cac74765c102301774f926447a002a144a5d2ea4fb4fbae2efc113e3e275b40b29b8cde9bc805923d0dfdd49e594c73576bec4feba19650302047c435bb5006630640230183035d0f0b32f13652c0701859da5e2d87774c68e837ffee5e40d0aadf04bdbb4d1e01a2cea0111110b52abf735fc9402306fd20fa6ee1e869cd1e575e0373c2bb6722c7fdfd117d5e690705ace4e5fc3b99d436aba626276a2e78f94eef3b0c0830302047c435bb500673065023100dbbc1a53f24b9c3477863708593ee1217b021f7ba5b385929e3f7eb483e24c32ae1367b055e14ac4582ffda490f2920f0230371ad504e50ca41f669a4c5cc73b6521d1bd9461c965b43eef6e6670d7b627a7c5d422cd40f6af0eccd6b260481f8aec0302047c435bb500683066023100fdc4b51708bab3f818011bd4deacedd09cf5d4114b35002cd2e8e86b7c960d896c2134f54e2099bb6e500a071b51a13c0231009569f329bfcc1b16d1d610ca81c60cb870cf0637f261bc3c2f95aa4f4368703445a2afda5e2b899202c00cdb2e2acff90302047c435bb500683066023100b6078026bd55dc1f0f63b9007e4b01f09f125b035c068a847f73f788752778c0429daa1eefb56d29f9b3413311a5db95023100a4a672db71431b51a2bf1cb7f7b6750d58cd656fd579938eaf281e841ce08ea0bb7da5cd77765c58572d59ce0a241b6c0302047c435bb500673065023100af203689e490b6d9ad2ec0ce86b3609044f5d3df7bac6720afa3c9560d020dea3d76e380a0696b325cfa8295ddedeb5d0230190a3afdeeef871def205b770285aa6330d74ba5df377b2c99bcbd534d39359e17590d7d0c9a660d41287a854fd633ae0302047c435bb500683066023100a0e0e452e4d2c755935c4e62159341fa6470e8dd2286b55c14de535571f48dd03f99075472e0e44a0d17c1b6e48991f8023100ccdf6fd6c9346ec15d6924859b310fdb216b120de39f25c9b021f1c0dbc46916bb7c338f54fa382b8851c4f84fa3f5fc0302047c435bb500683066023100bc924660f56568bd5f83e5a13863e1e2127d26c4ebba9041d5d6a37e23d4037252febe253b0ceb3db744b578f056635f02310094597cb61b6e97ee22b6179a073a269d0810ee666f5541e4de85e62a512e3dc15a0f5ffb149fd0f63bcf3ecc58d408710302047c435bb5006730650230455e9b05bf1f49bfc450c122a0d182560144312eb69bf4d8f112af02a053168ea9ad8afcc04d79267e673a44d2cef5720231009c64508ad7a2cab3a36adc58c84b0c6dfd18fba8ce7defe0c5644eef73535cea24ae93e646d831263a21c249594294cc0302047c435bb50067306502301504da29c476f200198c4b94785dab3e9a5dfa08e4cd115f86c85beb14cfb02a19ee4e42a65c1d1ae20072712862f715023100c805e742c9505e40e8a63d422ef5333963c590dc4891392feb0ffc232ca73657f1b0bf6e744b27da5bc406a9b40aa4720302047c435bb500673065023009f3273d61bccec8048678ff474c6cac6ad2bb819ccccf5fb83358962164d0c3a66ab54724ca9869024015b0112b4a29023100d49815a5d14e2e8be4fc8d875dd03257b4a3a59d52ce2bb9e9ab734ab3ba1a140df93db59ddb923681af2bcd91cc1d030302047c435bb500673065023029740f6ad5d7dfb838c424fbdd7d7ebb5f7ac3ed8544920555e3c6d127f0b6fa55410079427b0cee848c92bac914300c023100e810b6b80171ed70167e54c3be87faed421a61522d34bcbaf0f3cc078608331160027931628a0024de60ca9fc8f855a60302047c435bb500673065023100bc047a3de07a650b3f48753d0f808a7f9c06ba929cae9b96ae954b160de903e904da0bd7390dc9411b490ecadef0885f02305bf86f92ed5a5849bd113aa71ac90dbe62218d220709a8ae2d93951bfdc31f6c5d0bbdf641a22d749e12b771704084d20302047c435bb500683066023100929bc74c5aed11713dfc4584d0621e10c9ac3e4f837200326a5579d29f2f04c6656505e8681a5cecfe9ea833e34a4e09023100b09e755d2e63a052528af226edab4d060cadda5d12f4b0d4a295a695e1b5420bcd2079cee582e4b4633bf137f5160a7d0302047c435bb500673065023100b39f47b480a8f06ba8119d7f2099b6379e7aa412df73d374948e8f01ab2abd2c7a5017519d6239023c2d6f65898c668e023061fe6fe7b61de0df9f6158ea8f9329d841f6cc1db01fb121878cc4d22e150b8cfe651ce7087d94d2f0c5a6075cc0de7a0302047c435bb500673065023100cd3ebea08fe2254923edfb654fe49968491b8316fe309307f1a317fcab08ed78b825e63462bff28289f6bb376c6f31e60230265078fed1770416ff8e66688677a7e903d64fb960563066a46d540c678fecd20cd1021cddb0b58f489940004238fa1b0302047c435bb500673065023051c4e737b0a94c78287c34e061d087d47511f772a3026477d366e21693df2935f6b462a51ca2c04be7ae875036cd0081023100ed8bca864acb6cd2a8a9949e68b45e447591b479ed2a129ea75220d149270c2648700ccfc71dc57cfa30d1c819889cfa0302047c435bb500673065023100898e2ea88015644b9c97c6ca6aa3ad80893775230f0100929fda2b4ea1310a877def2ebacbb9d5fd8b0326651539dfb902302230b945af65576703c1f51cbc86e4ff9bef33fed2c168ceaed87201ca8f939435335070bebf0edc5593d8b868666a700302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100922dcf9b906ec8186ef24602cef4a3cc67e2f9a11b8b7cb5352b6b25c691082d4bfc54c0cfb12d4c5ecbc52aab2a54e5023100b8e09b3c7bf37d5f7059acef3a6c6ba0ab0a589621357958c8b4c94f34e90b0860c8e40b56927aed04e939b25bf1317e0302047c435bb500683066023100f1b1e0598fe0c00b5b8fd0c323dc299690aca01269f9fac7e3524de9d9ed89a1cdccf368414885f16303b7cb72087c900231008eb7df68e1b5ab35b2bf89d5997a094a0e82c3cbefb4df74922f737380961472df4e6fe19fe760cb8c8e2b02959293540302047c435bb500683066023100d69254a248cb633e4e40c810ea9b48ce2b843a8b6f1df722dc56e15bbef1a962e8c926c3d587f43fe05febbe0dc3342d023100e8aa27f5f8f2de95a4cce41f5b09c38c5cb6cd35d6ccb27cd6186be5712f9716e96f8e2f1c6156b65f9b99c9051aef7c0302047c435bb500673065023100b2a09dd3f0efeeffd26c953369d67bd20e61472931ce70165e7390db93d84f416356012754e3a7c9c29d6ff7486b3d8702300aac792234a2bb64ec7cf87f8de83ce0fb61818c4c5326546a0f0add5c8166ed7788fd650998dae4d01eebb11aea85900302047c435bb50066306402306bfe28e1346a5694f8e5c3d885e0bf3374c40890cf1a332d5619e68ca72f95c92cd58e5672ee4aa0f1d9aec6d064608902304c1fe78cd1b7015bde129e19c116fd9bfd75fa06d1babe1295685918d92ddcab3ffb986633580e09d0760b1bde6943f20302047c435bb500673065023068643742e69fa9e2632d6908cc628f44c12fde0ceeb30e2252594ec11317fbacdd3aa9b3e1c7d1d31d74be34b4ca6a8e023100d1acf2cf1b8e716803ecb16b39f2f88570a173c9569328fe52217c2c307c4ba4dbec205e1465f5068ba1fc568208b0c00302047c435bb500683066023100a58abf719ebea8bf552d68d3d7c8802756dd33d6cfe019a2806445120c7901453086d3d8d7b2e8a3efed621634e7ab56023100c3e9a049e85be0bd01c5e3dfb34cd9008f73987e1bf622d1251fe77d22ab3d4967befb96c03550fbe6e69fee6c9526e50302047c435bb5006830660231009a5d6cb42fd29c7488702ee55d94324d383c4073bccc45b83cf272354645e914c2e332614a708ece1ce27187bc683a6502310096249f3a6fa41c2358f8f2edaa1700366b5e3e9d749fc2467c65c0094e132313d75e43a31cfca9add804910a9fd9abde0302047c435bb50066306402307ad638680e25bd20c872c3e9dd030f615cdfd096885de7363098fe52ef63349b7acee0e62174a44d52400e06f5acce120230213458514294600a5a3178725e4b22b752eaa7c48b2a68413cf5959b0095bf9f9186df3d75b0426198827755d7d147590302047c435bb50066306402303281e1e9af5ae7339d16b9d16d168b3fe60a663326e52a4917755155121650ba0f51eef755a148c018eaa412810f8133023006891ce2a8d806de61b5f70927e0e390cb727a17ed8a1006b722bbef8d5e62fdfa8602bbb68f7163ca80b2f046925d130302047c435bb500673065023100eb3801ff73e138844e92624aed8204df3ccb867708ee2fd0b1364b54f734b929aee1b0987493187b6b71f91506a7264302304be2076e16bfcbf2ab85bbfaaa6b80cb736f14a0f325eeefed4d5e96b683f275e7eeb2ac57faf2cf8a432ef2d56533c30302047c435bb500673065023100d34ea245ee978b58bcdbdfef3a8ec3da47cfca752acd0dc52f0239ddd53895a52cbf064629386c394b69d5d9c2e39d6902307b049657931c0bd7e9c7394c7cc5835fa3eaf508f829f24ec130d7ecb858ff2be83886339caa4f1472e365857bb247290302047c435bb5006630640230145c43f101bac490bc5d89011fbad6caa65f4bda10c9a9ee5ad583e49a6fbcfb77f39c099b03768fae37a5e570aef218023025819b252235c6c16f4d345e370276d98746610472488092f0467315a2f86589960c3fa4477a6298a0dd554dc3bdfd690302047c435bb500673065023100a18335d23e7753913b7c4f3b4bfc2f4f6388133fcc13e1d6409025a1a1b10b2e7529df5df7947b960018f6bb83603f2902304bb1c7902c9b72c9ac0b98e2df56a05d914b5750f70ab1a22875f6b5380fdd8411a97c27c61f683736f25233c68a57840302047c435bb50067306502300ef2c3006b0796f82d188fdea0a9b883409e1d892bca0c1eae265efd2f45ec4c5ac87ca89fbe26ebd3f0679cdd371f1c02310095296d1a142720920bff7d0049ae80495ed3851197b8afaea19cdc7277d67e3dd5a198bb52b3fc5a25fc4ec5cd1365030302047c435bb5006830660231009d639bf85ce5d3ab9ea2077d14f51761a7e0f13eaa3fbc57f10e63bf99cff3a858aa3055a29485427bcd302eef07fe80023100b4678e392cb233c12ecd0dcc8c400f63fd7ce237097b9896213e31bac5fe50959ece0e5a547289cb34eb2a8b8cd8fd470302047c435bb50067306502304b58822c54ef7dc774796090bfb6d34cba7d51082352e1bab739b5b85b1ff62ffe3bcd24498f6cb79ab9b0eea7e3bd280231009e8aae7ea3fc1c4c570bfded18a1574ed47571cd2d85debe9111ca7c1d746c4d60e184ff930d8e9ad4b278c00ef783d30302047c435bb50067306502302aef47c6b9de84c3964fa2f1d507afa95cebc5c397257a44efc55e2e3dee22e594151cebc315879545e21d9a36188e56023100a81abf17525b2d2151d39ad711fb775242ad6edb10f3c7906bda9d0fe0bb103e8e5d8ef5b87e828581983702f79981d50302047c435bb50067306502305ee67424dcce6aca956b4ab6de7eab4c388caaf9e65b861fdb2af6a552d84301729c50ddd4de163cfad545d10bc46b40023100d1c0a25c994c8531dc8dd83b8c15dde4279f991c5477ae879c98b0d7386213df320468b0fd23d2f03f61876bd1ee60b50302047c435bb500673065023100de5e785c13898befb65a7cbc2cd38006a663352834dda2a2635cde28754c4f3e166f01c8da808e8fc313b0826e073ad6023046c7e3c3cd41f246e3d0328f2a018fb50452760c00d8e9f15e0b1076a368e3cee6f7687229d1665099df93a410d5ed360302047c435bb5006830660231009641c17e35c0fa24798bdcc82aef52a06ad2619acf437b911c87ba25aca24bef352d7fa5fe4a98b1703bc5b0e0705e05023100f8556b7ae5c5f9ef8775a30131bf1abc33c706c368c4cbef6b5603bcebfa608347411accad00211eac3d264bcbc09b090302047c435bb500683066023100b4109a33caea326f1a88fde79dff959c8e098a1de771057d384be4bfb3a822fd809c40b6d4fb7a9f3318fe0afc2fc8cc02310084171d6f62300528c53514582e15bfcaf4237e2ffc10f7bc0f6c8f3a972e35fbd1f77e9622f459b51b5e88bf997b09c00302047c435bb500673065023100f2a32e955fd80d2e94866b30caff7bf0d500f7dae2c48ed5b91227faa2f427a965727223b62f2df9a5c16af738b8d32602304b829ad2a31983e421ec3d91b0130659ae8cb93294b41c92cf60ce72806717adacb40bea62c344981dc66d07b41be1520302047c435bb50067306502304aedb1e931ccd5127f06153d4e43023a90f7e5d21ed04c849aaa7dcbdb7fb2179f0c318906da6c9f8527e01553ff92d1023100c0ba3ac08cfbe2c7f883c96b5644128cbce7eddf638de0284c04ba5576e06c716b41cfd54d75a31003165a208b1cf4760302047c435bb500683066023100d1117bbae273b955e167d3faaec9be659ca4ec64ecb4876ae004ff8671b3052b4125b863d18f27e6199844feb4dd90d5023100cb939b3f7354baa5a211068330b635efcdfaef0d1c228726acc850ebf8970b8a74e8cfeefb3f9baf7a7318e0e0e31b310302047c435bb500683066023100a1f410a32cf03577320c795339401fecd6e02314810b5e90e9088cc1fe3609ee5b92573d5b2f6f42c2117b429ae9921c023100c75ead7e9090259a29e053548e0dec9fdf8eec5ca3c4dae22049c10ba752bdc3cdcb5ba8782bf56a3d1c466570f334b70302047c435bb50066306402301dd5bbf4bb6ef6df1ac19fe52a2e3a74d849af21d3b1b888363d851f1a0b33713d2c4332cdd226c24ebe9114d583436a02305d539533f66ec9b7569cdab10c4827db7876df0fd4b525d64a546730b846d4904bff242afd8851ca6084f65ff227279a0302047c435bb500673065023100a61534f2d1de7c068cc1e7a573b8fc84b878b40566efea609ae3c5a9901a86e5f009a04578511735c0f2b681cb2890c502301b52b134ea9e2ddc33668b526b3b733b3c49c6f8b26168b4fbe7248d0c8d25512569c25150976fc7882bd5f5f946538f0302047c435bb500683066023100ff1b84e10d0260ad5d2dab2871e8a2dad7e39e155e3f9898ea3512d68d4588255e92ed5039e06897a0df23391da3f4c6023100c55d8521dcdc703bbd299bc3b1617261b1931f1072a0920415e48ae15cbc5991a215599d8febee045859048e01ab109b0302047c435bb500683066023100d7d7ca3b51f5f265cd92b748f6412257c707313a016787e9887e1ef01baf63d60c6a29c81cc29f0c2ca140f287356adb023100d93692953cbec44839f7409c39220c2b71663bc8a87533be0cda4726cb526f01d7a8663e8b2ded852d456adbbb184ffa0302047c435bb50067306502302d259f09130a17d6d96501b449c9250f5bfe92c53519e1cf8b67e6c85c7a3391cea927b56dc84b2aa1aa7f048c357c83023100ccb63d015a3fa11a74afbbd75d7076785ed8918292cf1f7da012b893b0ccf97461fc9d286f0c67857e821d10109d37b30302047c435bb50066306402303c08e87936058862430b5e789086ed36117eb57ee3c02a4d36d158f7efdc77c01a9577d942f5c735b51a3e01f76e2fef023025f9c2376d0b6347461d1716bd0b236ad8b916e590a0bcd2d442b2fe853f48a7cf0ed3e0a6529c6f6f4c3bf9cd3448da0302047c435bb500673065023100a08e971e9b9f3cec43fd550ed2eef342085126241bf834a413b25bdeac701224acb0b696025045bed53236b661c00f0e0230578bc0f49fda052a83650e32f06a43c16aa75789ca2743b85407bcdaf01665cef3c7a222fa6e27582836d4f04dbe91e60302047c435bb500663064023029230693d2739f9c283470c6a8a48eeead2d19400628ed41a8a7cf99dc8303c4c5835ab919090e40a8d9af574f695052023059331b741a0082110609734d05d6d6224ff2e2743c7b060556ee849deefaa82bccf5ae2e8d150d634917bfaf90e8c9cc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a069241ec11d2963207c1bd8d750f5811dfcdb294a1c5f56d053f710f9fc6cfc44d93207125b7ffdd66d3eb0de40427e023028ccaa6213a518aa2e6612f7f552d5ccf97ffcb28b32389df3fc4cc97094515b8e239444280e3369b98c43e40586032a0302047c435bb500673065023049fab8e851151e7bcf9a4aa481b5e6af7aef1be3ea2a52b1d7477700e036d0bca4ecb16fdda58b369a03066a8e9b49fa0231008db96f3cbb1b6f8b428eb462512fa034616ee535c72b8434fc6695f33318b878c6fb7247ace81f3ccb1c752c26b184230302047c435bb50066306402307bc40f4eae325f9e11c95d6f41789b33aa157989f7c5a02bbec9b13012da9f708ac870498a89f9c5084bd709ebc4715b02304a45eeac473d81cd53ff3c80eebfd49a5b97b9a50a362ab80fb964f89d950662f0c218f23c326911970c3c7166e4c5ac0302047c435bb500683066023100d6be0d116f7a7d5be3be7c692879457d0ee0639b74c490f5156306853444087abfe5c5119ec2ecb7db426bfe9d111b9b023100d4da13661add31ab8776434d4742826a38c948ddf2c7c3aa42965eac2a185431a0283cbc755c3ffbafde5661765897c10302047c435bb50066306402305c279f67886b0ee9060377f89fa2a9b38c09e0753ff09815f49b637b198e49b65b57ed51b6aad39433c832628a9c008e0230242d819ce5e628895c7987fedc799a3ddfd1ff694b5016bef62d643c0c185bdd839ff974b683b92b1699990d861b80830302047c435bb500683066023100c4503f67e7177edfb5c0842de2012d9cb894cc3f5ed372e774292e8dfba0360f87992bcb5587605a65e4ccdd2291b0fc023100a3384b7a62c4b6a67faf1067f3bab5ebabad3b68fa6f5fe7beddf134cff8b49477c69b4d6975e5c9af0d1a9775da954f0302047c435bb500683066023100cd0b99fb9d8f58920d638843336d9071f2ef6318112c9ea95d4fdd3b7c4fc52a2bba094fd8a44f0289a8d334958fec8d023100f4047e008e606edc8a4ee587f692f20b5626d842af5b724434e553a84e7759dd5021abbd9224a74435ccc490ba5f7bc70302047c435bb5006730650230734c7fa6bb07b224a8d2094a7c68d70cae3ce2b4c2a83e38364db997afb27ff4793176e0e0caa454de4a4ef7501f889e023100ca019b1259629969fbf05cabdc708e539eac3169b5e347f51df94b9a48bf4ff07611b1ca9d185a6082db1a85059b77590302047c435bb5006730650230067ea5f8d2b26056b9b626cf0434849d6bcae3443a056d0a6cd8a87dabef5d306d89f5af9a0c526165b62115035aec3f023100879889a104ada043679cce62615a4fb23d50fe435a455bef84a877d1bae732402fe71a6cdb5f72bce9decadbce1561f00302047c435bb500673065023100c2c7dd1699c2263ec3f90f1fd354d145fde468863410e4145edef57762763a46308641a92a30f99e9ce8f7cf87878f5a02301478ea289e98ce2de404c972e3eaeb5d3ab0370b5b79fb9003079b108558bedf7289085544a68683c15fcca16d6362240302047c435bb500673065023100fc413aa638f33c9a3b8ac0f4a4dbd47bb5b4d332717ac0db273ebac41ac2ffcd2c2b4b9f7a986204cd3ef63f37f93dd2023073b54ce76abeb38f86c31416b675ca7f98660af773e4b77ac0b1016a17cfb32ea0cf7fb0cc6706d2f16ea583b3cf0b6e0302047c435bb500673065023100f4fcbc2fd2329334ada6e9124d3e1f73590bf55b6937e09331815100745c53b0e5e6a991fed514cdec27a5c9e7edfd34023004c298e4fa3207ca70a5bcc57c8713493d56b3bf7337363d0f97e156139f927229e5027119fe5667ef41ae6efdb0e42a0302047c435bb50067306502302a681473d6806728acad0c8fd48cd1b26cd17f95cb0c5329a8282d02e0ea78d1c9daf9e55e986f2692a448f1cc69f4f7023100f49b5ea204ee2765093427d86326ebee449da21816c6f009146796b5d26bbac0ad3f3bd31362110ec9c27a12906e19850302047c435bb500683066023100c4cbd2ac7360f418ce2238902b96b6942ba22ab00655dd537d41f5a64d6a2fa617edba816c6b097e2baca805e82a0bf902310085823d7e4b74ca2e96d880d37f88fa4e742ba371f1521fe71f92caa6ae7f087a19afc0d89fc316e49145e3c1e9b708700302047c435bb5006630640230493e3f5eb1205fd7c6fb27afd603b312a7684d0f9693e8410beb62822e1fde4029aa533babfd895feae961476a1d0a220230520a30c09807d71a3a2688aeabb70b96b696d4a5dd0ce49dc5ec9b8dcd6dcb876d73b72a8fe55d99d496b17fe95299230302047c435bb500683066023100c94596a71807cacf4d37cae32fd425c5d73a984702068c94cacd395a781b089d40b3db83f69cc38be3928daf148df5e9023100e5d78d2159298e3544628dcece0a4ba9b8a00ec9e035e632b9d3ad4db3312b31dfbeb4007f7e23375d2428befce545720302047c435bb50066306402303e1df817848bdb345572d6c6e53476c8b12569630006998cd74fc31ad31f28916e562cbadfcd7afd8a3d7a7ad83cdc5202300f7445728e46fb91fbc26f6c7baa58c2b8977ed736282cc7fb9843a37e25bf8a781c3f9bab4de11e25ef9d8c527221f80302047c435bb50066306402303a6f3abbd6b0fcee949e951c5bb0ffda71d5d4cf4d0bde6fc11c3b0aa64f1fbf9f005d997a51f6e43204528b1de13c190230676a2f5cee3763757a373625c898585f25b2d5bc65490bdfb745bd9fab5262f755a1c6a05f145c70e162399cc930931d0302047c435bb500683066023100b0f830b7990e70cc602c893990849196be4fe5f10fc482b794d30be22ae160c5b3b78ed913a6ad711cf46c8699760adb023100981a281acd58d0f7aa8fefd5a5f494c202220690aab619b7bb984ca9bac71c7642b7bb09a8e392f651b1265ec255881b0302047c435bb50067306502304e8a2ccba873abe9a0ed44cea6f1d37b77ee3bf3bfcc7e91aac7b44e782b6ef6047a7fd5f55467beebe0c198ef17eb76023100ac189aa0dbfc610bf44aa749a98759bb7a2cbcebf43caa050bfa6d76c8f5b4949e72c50bbc42115ad76cfc17a753f3120302047c435bb500673065023100d4b5750dbcea19bf9fac15170b3ff94fc1da63840d38b02d005bc6815fc3a634e325bf1919ec8a5b875d4f40dd0e3ede02304b6b5d984a190a50bf15476a577c9e349a98ceeb58231e9da6505dfdb69e7dd7f6b28b8ede44ed3dadfdb32a2bd4e1340302047c435bb500663064023079ba2682c92b5763f2c0edb460cc8654caa0b1aa16cbca4eee219d4bf20c3b781ca55db023940c39559f3932ab339a2a02306977b39c7d62fee75551959459c39baaf14058bc33d7b41702e1967cb3a95963690aabf39558064da00cf2c2cb9fb8a10302047c435bb500683066023100fb4e9ff8e0cd6120702ecd076bac7cbc27f7558330badc6c8ca013db1360920d982f9bc86b5797ffca990be9d91b27aa023100c32bd0b2c70c61fcd63af1f5537a5ca86900ed61bbb74ee69e2d9e9458bf3c0c3eb88fde18ecb770073cd3831ed1d2d80302047c435bb500663064023075474b097c37a3169666d30b3ef5f15cdeaad6bd3ae8b48b4cfadf185d25ff5dc33ea00cfe321c59525bef33e6c8e912023025755f9cc53b65378b4fd8524faa9fb4208a83a15bbfe9df11be5658ccae39741b0ef279b0ee1dfe39b1625d3265d40f0302047c435bb500673065023021a4bcfc694f698e938039ee27825ab248a4fc970ca2f52e3dbc24220e80189b07fc443f3846d3ae8c944dfc8ba95c71023100ca363ee57f06126b54e2e6f0a780be96e7d15db28ff2d53851adf07b4aca96d17a1e325f03450ef90537a5b5e008e32a0302047c435bb5006730650231008ef5077d2c873dca687d2a0dac3de0d244f23fdc8f79e2b1abc75ba9688e710c7ed8bfb090769e618ab525e37911ed8702304aee1c49cbd50f4ea29f55352814f03763d03c8134ca9f4cd2e411d45dcc831b2df849e757baff73211dda5b3e806f000302047c435bb500663064023077aefde0b8311a90972f315076f13e397973c7f8a5d5cc995d88ff69d362775f5d293a0da4e699988bc47800b471aca402304b9d076a084169322c9440a6097b774221efaf6597255d4883098829e35513dea4dfc5e30e05b582971081151c54b28d0302047c435bb500663064023100b2091ea7f0bfb7c597f1fb9c8146d16bc6b0b171d9a3e30b6501768ce3ddfd47efa18cd9ab2c8387eee3722f16e5aecf022f3bd08f1424a7658e059a6abe72885f16758b5eb3ce0cdf5ee15d6d13a26f04cf7256fcdd033dd16b4f2d52877f50360302047c435bb500673065023100a64d5688fbc90cb284646b472129a9162627bf521a43eac26752a974475b0e68f1e36ebdecdd8e666a7d657ac7564fc002300357d957b8b3a5e1e1250b84dfdf69e8d10976a24796a198296f9ff7317d7f72b03e3a3a97e60d5a1c906d5057772a200302047c435bb500683066023100c591be3bbd207511b1360bfd468af8c126a205a51a750333c73e4c5f05432b043947926942975ee86fba3f6f64073d35023100d06f265ebbdb9cdc7f28a3d75b49caa6ed9c8672de21b90b709a9f24f323bb3316598166a405b4801800e7975aa3129c0302047c435bb5006630640230197220767214c4e7924a2d708968fdc68ed4d284e15216c0635eedbaf06809112b3cefacce6c9ff8c37b8f966f09a02d023044e98f8ad39a51784afecc42760d5318375ee40babd6e7501ef41869eff12cbe591058ce4e8f257f5d1674248bdb41020302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c3f7a219680e16dec2d9badc9c3e7d6d1a32a13eabf4a5e1953404735bb7b6b5381f8ee05db1e09260f36db3b9c54e22023100c1e168039eb8f17ead8018d3d728df449cd4fe2bfe06846fa41a21c8af1c99acd0c0b89e77adca759d13fa79cafc2d3b0302047c435bb5006630640230434e76e9315a7ef047f8779e0f10c394a354b1fc1fccdc9fd923b53ef97dc69519609d806471508d05e5ba5ffd9763a802302f224e4a68db6d04b6a80dda32fc1cbd3b36b70464e4c317b4d51d76812a5f3a806bb2ac1c55efe77ad13e26425fbaae0302047c435bb500683066023100eaaf24b93fe6411aa73cc7d20cfd8bbb64298e2298144d5242d33f89d661c9a2a6effca3b9654fe91f28330ccbaf2acf023100d271aa94bf49b764805f06e21b5c6c575fbb8a1d2462f7d5987e8f86be3c7e6571fbfb305269fb8bf9c21b4d55ab5e980302047c435bb500673065023023ddccc074c1c01494f149b4d7b429045eab3ee18fda0b6f5997e80cbb1c182583b59f08ea23b77c83cc3be37a6a4057023100fe44b7d38919e39cb91a9ed18b533a8162ceca251c1ba57cef7d571e436ffe44f2ec3e9d153dfab05fe5d0f94cbf9a340302047c435bb500673065023049e4f16194c7eff7790f0be0029675515941c0e006d63592cce7895f8ea21b69fd222f04a1081bee52c838d9f857d433023100c1183399f9b1bc0a9ae3b9ff3b21b13a4ae43930092bd01aa7693a65fc022ab5b83ec3d63403d5e7bde18bc49f65a68c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009337a6f4dd72b9ed3fb5f53271beef552f31e83e06ddfa9eee1c35bd6f1e2da2496d58ae23cf1b86554958e5df06e58b0230078aecd9de1313ea6809d906ae3e4d5ae1731f511298f4d84874a2b733a850f753c87a602dbee41f10e622cf2439839f0302047c435bb50066306402302fc86fe0d70bba86b268a2f5bf3d6964cc13f8293c1b0a88720add56f3d5f5b197c4ab8bc002e2aced02503f9ba2bffc023057d5359c53c478ff442fd465238acbb01d9e63cd5262e94f78179c4e622396c3a9b872f0b8083b54bfd8768ea52e4c1e0302047c435bb500663064023044b3641a18ade7a8fd47442fc076e09c57cab0ffeb4d61846a6e4dc4c5bff72e0aca52b9c50e2993e24a3984f2ab258c023068a392da62cffbf95ca097cfabcbd8736e94759d66840b7ec3df471f38608598aa925b30c374daa5e472b7e0d78dcadf0302047c435bb5006730650231009b4d005b57c636e8b40cfc461a212706c95179b883d0beb1ee7b8a89aaf4f38aaee46e46eed9057ba3dc315b05be9b8602302796a69668a8754b4b89fc1142f2b7be8e4665de9d58a2f0b4d44a14775eb9e114ec962b86bcfa13ae0ff0183cb1eeb80302047c435bb500663064023031bddc6cefc67a30fa9dbb8ce62c2a275020fc8dde5ff9c9bdf5ac04804b5bb4d5d25fa2fa5d4600e01d4bb8e84a3a6b02304377086603565f07d3730e3a85036fa8b3cd6d11ee54fa51d59f3631ded064ae6ce303b57c5dad1e912080927ff0acda0302047c435bb50066306402300babc416587410965ad28127f243f2bc2ce2900c206efb2b4da1f115137096fb87a706171d56f2d4b33173a80b4d891e02303805f6ebd45a735bfae64ab5df41c72fd9acb7568813791abe9b45ab569ce5f3cefc1a6b94cab409eede2ba4bd33c3b90302047c435bb50066306402306112ecce4f294751669a4327a3bdcc823268c219c6946bafaee82ad13a1050b2ebe1d09107ac13f804ea6f4842cd7a340230470502cd335a0e83bc8d5d5cf070b52a503f2fe0ad231474d15440468a96d2099a9f27156182410a636528608b43d3970302047c435bb500683066023100f887ee30b94304312b0bd4f4a849e8f532ff23dc2ee03dde948ef5fc361a5edc43b2cc34e3703d564ba3071751aeb770023100b0dfa3a5055ed4cebb1ecd07ce5516041ed3b7537e6970f6ca4206bbde20c67f35f2aff281d43f3c9122ceebb4158eda0302047c435bb500673065023074c9d0e1f21f3d47cd958b6d7436bd2849781ccf4cb9b8c0b7e272f1961af45341877fc97fe56385ba5608bf2e6761b6023100dd18a3b1e2c3889c42d4eff76bc97de73ce575e8a1506299871e832d127dc1c02fb2997747822aa36a330613b49da9e80302047c435bb50067306502310090c54e18177b2e19562b04ea9c05159e822e4b7b23ae292747e67e91080e198c53da20716bac759326f6667c7e5adcbb02306c9151c0d1d4e513c89f742ac5791fadf9c70ac525e3952c65eccfd97f84ada12d62850ebb5218bbc137b1c1e9236ae50302047c435bb50066306402302c025316b6bd190d311193fc7356fabf48b44f684d784c911a78a8b5a85df34956cc5d5cf2e5e3b9da8ae6f5dadc6c880230533f903dab4fdfc17fc7f099d9019fee77a1cc043004492e6e1e748e8357fc6c147cf4b66de34be8dc48610369c301430302047c435bb500673065023100af73a92fedb36f865599c5ecf2c76dbf2901b8f7ae5c7fcd0ac9e3852f5d4b6b69fa32d8cd255a53327bf3fbf534d76302305472934bcc3b18f506303a5786bc137f2c7399af7e36c9cf8f52908ee2d764e8d57bb6650170de04d9e78c1ea96fe4850302047c435bb5006830660231009ce3b2fad08391f08e12971885a931b5c02daff7ebfb6efcbf94a1a37d967ca8a85d9f5feb3cde5db3f3704e630b8872023100a36fefbe2b8737aa539f9f8b5d4a6f7b6be8cf9372b1969f7ce53cac6039125f5e1d13c3c58fbd0bec20c0f2580245e30302047c435bb500663064023069e2628b1bf73a68992683c0feca6b75852b8be2176745a042286e7bb12c599c3024bbe300caedd49da0ff6a06013e7c02305d51d0fd28233dbbbf460b3ef8cb6e27c315f80677b52d8b77582b258dfd06aff8e3f9394b2ca505576b7035925ddffd0302047c435bb50066306402305ef1325ebe5311581bc40ed5fc00a9617eef6b4b9047e6b8ed3df8e4f5aca45ececfdc35d97945fb6db678ea560133090230159e6442a5353fcc9e7cc973db125ee4ffccb165b8bedc42aa7e9c9a52e73391b00ae5f3d6c4952e3edac0e2bcaf925d0302047c435bb50066306402302111825377974fb7229bdad33056ad9399e92dbb688a8b5e794f613266a3e68be467f5ded14ea1ae09209d3324975eca02303870d173f895a85f4a0446b299756ba61ef42a70087daa3f1916c66f1420923e88626d85588e1d2466773e82e2b56dba0302047c435bb50066306402305bd20a2d91efb020293195e6e6f74825af117fc2eca2ed9bebb282ed6c0034135d60547208ba24ad4574e9999921258c023001e94acb536a7463674d1e550e415cb36e030eab18d0dd4e30b5512352e6eef33b1ea801df6f0011cc18a84ef982d10c0302047c435bb500673065023100e33cdea075bcdf32f7c8aaac68d69a1a89b840dbc90def00f786a59bcca8ee58756b37f353c43d5fa8dfdcf19e21e54e02305b236b20ad2ef1b10d1299028df52edd36a94e2b42b67dd7251e569b711d98b805e30c908dcec0dd360f36e0bb94fa4b0302047c435bb500673065023100ffe3060246024e25a6924e7c5a9e02912aa529b3dd116f3d3bddfe319d81355002267bd712de4e27ae9fd580ab686fb2023079ec9bb432f15c48c2be11e00bb2f869df19851b6498fe267c19e50aa533d54276363062b5b29aa48fbd1730b428e1860302047c435bb50067306502302b2a352292d785061c09740a352c4627fe7e20ae152a2543157d782bbbd289cb9378545f7619257cc14af2bdd9bff2f5023100cd502322194d46781c56b1ba166c9fb913a49b2bee562ac35978ff11e682ac57729c98bf00000a705e473927ef7f8db70302047c435bb500663064023059fac030c215ce72f6a88bc4efd3faeb937c2325129acf477e87985e44641aca9e5917dc4b99a327dfc51241415b6b27023045be0748c0772608590e474b118120cb9819c7feba595665e6b203bf7db8d27f2fe2e7852185693ad039813fcb3fe69c0302047c435bb500683066023100f91cd6159cadf421787e5180992f538b136119a4adec6be9508bfd738a2535a19846b1c922b1dc775e6c70118006b698023100b349be3caec909c3df0f9e63d1ac9d743e9bb314b932d78e209dc0d7092bb914664367333399038b5a8c57ec1fd995b80302047c435bb500683066023100f31279ac2199c4b6d3fdccbab40f966f0a160d59ab32c900ca89eda6665d7c915f11307e59c67db05c9cfbf1d0fb5c4d023100d7a8064351d5de4af20e9bd1db2ab71931d3e81e54de9c27a08cd2bd16b00925b21a434d471f189d158c4524036c8a700302047c435bb500673065023100a9034a2a844d25b5ddf22cec959e9927daf3c511e800d322116f4b2af98686959aed14b2230275956f69d351ed7f429a02306a9dba8b92ed3050bb442576c44baffc750756528ee70064720a412a96509751078ebbf8fdc533c766ea481b51c7082d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f165a308c591da3cea27ca6ff54b5e4ce2382f3331710f0752e86384123ff3ea8b013915bb5892b9f57b48426535f04c023100b76f902f95bdab8904abb92bc495720342b25c3f1b4d4c499a10d903c0c0a59632222bc6cfb31c04b8f61f6bb8bdf2120302047c435bb500663064023013d4ca0dfdf6627c7727b81daf6dad733f9db17bff8e434b30283b50de2abfd132eb77944054ee53ef8fc2b220ff5e94023009f222d37c642e42a2333559e9730c742a93a05017d1bb36d6fc0adfef63aff022b4594770bc9ec4768777cda7f2a6fe0302047c435bb500673065023078373ded2891d29581636898d2f7cd00cccbcfd392fbf2c4ad960e5617c8f24e1c13fa1f180e634c30ecba28383a7f160231008bf879b07d44bec56dd6cde743af9797faff9e24c78fb4e1315151b11a86f45baa582c231d96170bf68e17985de2f2ae0302047c435bb5006630640230696a8627bdf85eb1aa0c592b02b2f18f439b4afc5eedff94207ebeaeec6c9e86b2731dd6aab230e6f67e1c67c9b8efb70230087e4611351a3de9c5dc7a9740079624d55b75291fc6068910a490ba5e9f2aef7cb2b5606eb14554ccfa434b780eb28b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100de6410ccd206b430ac51ce2edc11590f197a24656cedce4dfb6f27302486d66572ad6161dd40e893e7b47402e84d05280231009de78525401052608bbeaa0118b4fce1bb81930c6615f8a59003df3a2447b1a6f0e51eb736d1f347be0e6db3f03d68db0302047c435bb50067306502300acec0e86b383e281f69cecb2a86f06f6b6e7ecc49fe52b396ab0c4e5b6560fbb082f1d1dbbccbb24dfc85cb1b7e3645023100d02495e368746ed83c7da21986be8af8f550169af9b28844fc3a86cadbaf37c39187f254d68c35e0613e5b29d603d2e70302047c435bb500683066023100819e7e8b55e689cb96df8b3fd48335124aea99df42a6240df0700961808050b2a95a112d420384754eb3969e8b39815f023100e3f20b1d79982d4d5d5e14d67acd860c2f1f6b64c17f0a83ae270127854c97abd867cedeee2037db5bcae9eff2ace0fd0302047c435bb500673065023100c9a60fa4a021d14f486c8e43a964b89cce9b49aedcd0c96739ce6ae108a72bbfeeca779cc205b935e4eb9e0248e8b8ac023070d3557fb1c524c7115fc60dc9e889ace635217f5caf35daac17f3dc568540502de32930672567b5f9a4d86479b939920302047c435bb50067306502302ff8f86f6e1004e54f88bde50aa534524dd294a7410c39cb2b951202a411b93f4b890a1d562fe8808ed9bc77920af18d0231008f7c4a329d4e394776f4f9441d75bd87bd1374335e4d4ddae5304341a90cf4de80d73f21a7328a14398f5f24ddcbd0c10302047c435bb500683066023100bd0c825d1e8df1e044146b1450df56094be03a5ccf4678a2ed3d96cf17734095ca6dbae3b33f5994cb7a8fff352caf2f023100afa25c9e5edddcfe5dde21bc1cba0aed1d3778d58e782f2b53fd3dbc2d6b29eb7c78de91a4ed0188e093936eb1c379090302047c435bb50066306402302dc23083f39748fc39187c0f341ac99c02d8c88c30dc7b66b80f147401dd19ad890d9167167be4be7e3dc70e7507c9380230298b7c0514ba8ebe21441e9f9dfba9137f17381ed97f6a149cf6aaa0dd37998d301cc1f7e340bc93de72c9eaaf51fadf0302047c435bb500673065023013445cd5b79315ecdae0f07a042a35e0c194e0957be37fa1d4c112ec8c726b6b1fdd9a1dc36d46cc4b587887745fd4d0023100fd9400a43e1d3e943a5962ab85b8182bcd510741b4b45d1ef30afa1ee79f9fcb67ad6331242cf7153003d0bc4ef2bc330302047c435bb500683066023100e772d7cc0eb1e71f072a824eafdfbd3730fbd6ec0d2ea2307f898abbd811021b111ee0fe345c5aa5f8b722381a941135023100a3c392a6e7bcd4a4e7446b023f16f536a8e61881c710917c6c61393188c80cedc5508e5aa34590dc607a98f5f3b648e20302047c435bb500673065023100c642d580c7baded7a8b58eaf34e4dab09645117cf20bccd8bd1b80d25db285e4566acce3028585882f8dfbc1f3ac825f023058f7403ad066eb4ea1c9cb37d822a4f80061be4cb10e8493f2d5cfb0ca12b1abca2ffbc6a409d7a000745d72d186ebbf0302047c435bb500673065023075307ee819883b0983e2a2e8e83fbef1daddec879f6e91adde5e4b10fefe2fe5d0c2844f206e894c095609ffab66d9300231008561b9ab8eccad038c90b829ebe67a926286ecac59a16ec751367323e4e86861b18d4d4e11f293c3bcac307ec088631c0302047c435bb50067306502304ffebe398ba7b4ee3a3840bd3921ae54e53fb8565e35ee5828dd44f5c97e942196c17a25cae08eac167ebcd2aa9e8080023100e363c132b4a9de1464a4c8e77b130b182e2eaa19e416bce419e85c422aae35bd48d577af7d073392a0e4396a6bfc60f50302047c435bb500673065023100adc3ae67cefc566af4e08a52e55e837e3f7f8bf186879356c5d358c3045f204e62d6e5d253be148ca772405561d77ae5023079bf5f7fb4cc43826acb4550433c1ad1adc80af8108adde5455a61978f319f6f6751062c2b75985c9936e453f930d88c0302047c435bb500673065023100bb0bd1c12e8e8cfffe95332d039f9394c8353f9462f2704c09412bf1f3661a1193666728502089e3d1d2c2ccccbe54c7023046706905e7a089b25f65a4105b9019c2e3fca11f83f2eacbb8fa267e693112ef50857fff66e53051497c2f6cf71b80920302047c435bb50067306502302275769a5c111a0ccd1fe9c415eb1d1a746bb201c84641991a07dce30e9e96c12aa4e1cc3fe8759fa99b1f0652197661023100b82631687cc1e0e1ed39614249d9a93e9c78604433c87da5f5afd4adfc69d5b8d5c7cb13e9809db0a6b9e12e16f79d5e0302047c435bb500673065023100e6a33cff0806a82334194cbb86eece1d67f5f75a08811804eb48230ddcdff928e61634988cf7a1a0562e74bfb69b0ecc0230345304beb50200bd72df3f77f67799cf45536ae56774daf3067d72a83f4ebd172bcd572b9bb04df96ce8ca67cced5d9f0302047c435bb500673065023100c9e8d0f36a029edec94f5e06c4ab7f274531bf4a84778cad7c5e7e21fd42bc26595e652f602e9cf833ec35725ffdd91b02306c2c6b6cbdd402226935c48ef257ac80b3fde4d8baa3101c9781c2fe463a3a6c06f592c245cf4b92252978630f153a8b0302047c435bb500683066023100eb953e05365e5070c1063801cfd480fd1866c2658c5abc9ee6e5a42d60e79aea9708ace44abe3caa8070a11998423ce4023100d33aadcc965f6f8911d6695501ec9481bece3f58b41cacf24ebdc051a451e08c411173a1eb9268f561dbd30ecb2c02620302047c435bb500663064023015bd8e8f07f19ac27747b0dcde4b3e948a1218837ef0b53aa4ce61b2009bee48f3b0d1a6537e769f9a3e7be03833856802303973bf62a62433cce5da7a41f052b8df8ab23db6a573c766331941e9a8081c57aea259eda8cb3c7bc2f86be920b2a3260302047c435bb500663064023034be03dd21f485a36c66f0d8bb9cac88d7a5d4b9ea6a62567a800e6e49bfcf3313e5bb45c9d87177204105e96d355b7402302720fbef4e82b644f35bac69130b889af6cecc21e290cfe142193b8ab584a738fe6f211695c0581bef0643b12fa21cb10302047c435bb500673065023100d596e7df2cea29e570e7dcda4988b09796dd2b24bb00dae689f21a56c9f048d5c4552308b4808ebd769282106db8e6660230168d79f13c541dbd9cee7843e1306f844ad7bfb983baec50862bef230d5c4abec2b7f874c863dd4cfdf5451baa22aaf60302047c435bb500683066023100d3d7e920b8de9ce4f6d5577bf7fe57f44ef66517408654fcc3594298dc28bdde7b3991815175675d97f9f6bd6310a332023100b426245cd6ef810959b233b35a45075fc78840b095e18ec86b85f6e156c7e5f7cc0277b24bcdf29833fc286914d726490302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ab1b6f692500275b4801dc1d77b824f07c336e4e9e18200419802932d63e1f1b046ad868bf6e61801ed5d4f46201b01a023100b6073d22c1bd7dc37ba9a31bdb1d9af6af01a56ca70fedbc37b6754067e44c00214222ab0fb55745b59387a18f4cca5d0302047c435bb500683066023100883a5bf42aa0f8df6d81220e562d7e516ca1acc440dedd9c20d65fdbf2eb408e7035a8ee05e55db27750c0db773e33f3023100c077d811489a5845c9a70d3d21d86591a22fe73458f9d8dad77bc1ec099bdc81966e0832ae87d79e03be849b611476f90302047c435bb500673065023100eebc8485cda61cd612375a80009f42fba6d49db6010411bb337705407e013383cb2772cb0e9ba44cf74c951424e80042023059ee3d218c8042c8ec2ef062ba361b5866a7328e5690b2882074834434735bd4c8b4f57cb740a8b9d6b4157a99a2085f0302047c435bb50066306402304bd866f4017c38aeaef95d21d88a6e3adfe04cc79d8560c7efc7831ceded6614f56a3eab3ecca36c365c07c78b49455002306da466facb6131bdeac727c60bba19dcec1c4a165843222b56b37b514f0a2a0c676734a93489c9613c5df782d18a645a0302047c435bb50066306402305de22eb7c57a0bf51c91eed356dc54483441c84ecf581f2c8861529397fa27480927ef9aa9e199ddb694012915c8354f02307985aa9fdc9534ffdf5e95b25f31400ad8c2008b93bad7a3088b20ac72978790d814ce593a85402032962e2ae53b22bd0302047c435bb5006730650230558407a02fdda673978841a71088e7149b6a85944f3b9f1fac3c0417b23e4f59675a9cd2ffcc9833e13b126eac02585d0231009648462c72c027be9a1cebf6037d9c634208fa6cd9775dca33c3bbebe3b3293ccb3e846e5b2d057d4414d6e3880893500302047c435bb50066306402306be1149b2c7bb72910995f812de2ae2e9b1929124ce59d626be7a4388f4476a9734fa7bad52a655f32aea2f0032688780230076fd5fee53ecc6f82f924918076896a8f5bf3cf15c9edaa322329410375b4efb017479bc52e7d1de8d547ef60df9eb60302047c435bb50066306402307c05d86353e2ba3d90d1a87ca9abbeb70def050a23c515fe7b4f6384d0c8120f0a137be049f14cd45d2ef92f0b93c6dc02307010e994f846847c1addfe4afb266bd29831adbfff6d39987526ba2dbd1c26581019484ae8c448ef6f9ecba5904d57910302047c435bb500683066023100b5cdf88c1d6b8369ba9647cc41aab4be258b89a6fd5a61e4a3ef4c5ababcc4084824b231c9d207670d4f7f29052d1e30023100ec277c01bf20582fb1799717267ab92e0f339b12cd9b68a98dcb4aa1d1c4520375982d24dba26b665ab8d20c281fed3e0302047c435bb500683066023100ba92166ec1aff7af92fde4ec97a8ef991a40ab2fbf99f7f68806dab6d23a66fcd4a6bc8a01876c2fbac3f826526a968a023100a170a1a101e1a430fc50b7224cd2c78692e839d185da23e74dc537accfa14b1894a69cc8679235059372d3aaf1c076290302047c435bb5006730650230386278d6796862ecd72fcf683647af340357812a5e5d8b4c0e94f2e641f74fe6fe0508c14c2003a8c45e501b4ac6f8bf023100b8df89629ff52943f408e14fad905810978b1b998691dad616c770e2edfb53a516a47be1c2cc86e4a622050969db2f6f0302047c435bb500683066023100ab1d123854bedd191c3a0a0a70b6463d3199d3f9880cbfa8039652752fae6f00e6a20c8003aae2c4c7e219628bb2f40d023100e15e8dba64f84d4f6c0b68a4e26c3251e4b9b593c714525785d376b0f250697cf02f9af17fcaaad1d897b7b86201b6850302047c435bb5006730650231008030ab7812ae6a87065974011c08a7efd6613ecd428138524cfb5dd5adf587b3196b406054fc3d8414d5843da0b016920230143339ef3627cece1f5a69458c16dfa484e34153a300c08d98898a8a71ba97ec295921dc155dae90ee70cd52a253be730302047c435bb5006830660231008b206a174a8e62a10ae9a0fc89d4026ae9736c2510f6951e6ff89b3494507dee8f5368c94a87fee50665e1d55d1f64d4023100a6c2b9c753e4b923956258632e0013aa91173150e63547ed1809b397c61ba48f7c41d7227b971d21aaed9d36d808fb970302047c435bb500673065023100caca860c8097f1fbc76fe7924f2e93b82565a98614d85dc576f5f46a129416a7a146b741a285ae81e72929f1e9bd584b023032ba96425dbd84502ee8ee302a11b818b23efc7f2f23222d5d69919511e3784c8760a8c5458027abe83401bf5320bacd0302047c435bb500663064023054f811887446b70f3bfea5ff4d9a0956cf0c14b533c61dca95f0906ff2b60460088d1299a23285fd03514827bce74eb902307a07316f717f99feb0a6c7d18c20edf66bd8f01c93d4907b12e91d0e06ce947fa61a8a264c05a7251ad716d7423c3c610302047c435bb50065306302306d8758195a7ea926b6932186e53b492dfa9f152b14ab5624d769dda289b396315ea7a47bf232b82858a2d3c0f1add13b022f2740c5dae21f94cd1e015e49a46aa45bf5c6c32245b470342353295a65b99ef9f0f7021756c704b36022f1dcef9b990302047c435bb500663064023010799afc7020ec7333ab8456a153ca82994b75a442967f4787799799125d4b93391cd2e9a3e33e88a972c47272d272da02304c8f0ddccfd76be815753c689b183968355389c1eab2bcbbb7911d150f5d3081304f181a8f639b3c6dc3dbf639c071640302047c435bb500673065023100de39a6e5908e7ed9d7f56c5337142e9a7c4871ccf2b36bdbbc2670255e0a3458c4d1f88b1c5820ad8b422f835ec6abae023079a8dc95a3a4e7e3be896e2eadbc9aed38ac411e4c1a403bf0fee24b5b5c4ad9a4277b95294cd537f585f1833220b58b0302047c435bb5006730650230619bf7e45a6dca6cbffe8a602123424d674a6ee65fbd57c9d2b274cd2f5a032bf09db50b66f851a7c89cfacea5fae48e023100d0c60c3c4cbb0c8d7ed57674bf81b0a7416756b3d374cdcf72b19c078cba61daf1928a9765e9c07976f0820e82ed7d490302047c435bb500673065023022353bb3ebdb1f3b7fe0ddeda3e96a83ba252a84e46edcfd6266495fbff823258b9aa01278a8ba6c7ab12cf3ea767e47023100f02ea45b2d8522107f6fc739ac687456194664b6024326d0343db410c21f881d52e6c782b3541ab6062ab47410ce269a0302047c435bb50067306502303a49c7245993d440dc72df2ce0e69877a64a8b73bee61e9a77580aef6c86aee3c3228fddb71701f8f9f03758c582ea9b023100a8ced80461e42edfb57ce22ded06415dace7e090e0cf8e60eedd29f4b645158b41378a2583e0baa9deef749e06f2ccbe0302047c435bb50066306402302f9f3a996c7226f722ff2ed91b9fcb85e0232595f84644d15d90f87194031049a48de774462840156c492315c57aac29023067d1c9429615d369f1e1b7e9c5c246426b078c620524f203ba9dfcd56164e6cc60b313c2da2dc7bf67c4665ae8e5c39c0302047c435bb500673065023100a1008fe8c53180449756ce748529b1e4508e8d09ebbdbf364d4792fcfb91223aa9cc622e7cfe52a1814c3b607ab579b7023014d53f1b802d35ddde1ce9ef76254157f7f54b24cc9abe9066e593e1a476d7f2364578e5384e1bd8cf23bfbcddc9c5d00302047c435bb500673065023100bde6919ae019fe3e2a0b33161bc1681522701179682bec806e90bfc964bf2b4bedc09af6341f55f23379ce868457144102305fb5ed7fd53724efbcb8c0648d5662c37bc91ea36966c4c8045354f467d0dd1bd7587d7d81305321f2c1b0cfe21b65410302047c435bb500673065023100e51016d9be2d8cf72d2cc18e6bc838e1b3a94dc2b9a3c1fbe18754706041e729e071965d02e3e08d3d1945cc66a1a21402307fa2a7746ee0c32329acab5268263268bac9bc41c19727ff5ff53cf52a4e3b366226ef32b7f1e1213d088916424cfeb80302047c435bb5006730650230720a010b72cdcda3f80331b28b2d40f677e74052479575ede894139c8daae9bf6fa6c477470a12cf060badf63896b8eb023100b0ee91ae46632404e63b2256e4d13e7fc487f1327e132e135fcf0f95a18691f0a17db2883a7f9e6f328821cf590a9b700302047c435bb500673065023100dee97969fcce464ff6f105ee5a1f428e09499be466517c73ec259e7fae1916ea5b79b7eff438e447fee3da41f3bb87a602301e656c002d2378573e154fcb18cf2fb979ed5b0d008da8207160b8a9660b70cf1836fc4f67f0c146a00fdd1731465fad0302047c435bb500683066023100cd1fff51a6afb52abf835dbe04224681c3068bf1577b71e9fa8cd9f4f6863980f027f4b9ee04b0e2c186f5d622338e38023100994c48458948ae290416acba56a8b70d90e8908898d7fd3c4f342f1237d5c8145faf33abf075ba6fc7f70dc1ad3875800302047c435bb50067306502310099dc304d2313635651d359d245bd288f2687280f55b2d5df85167dd63a16da95f2738b781ea281758e53456f49067b6902304f3ae3eb303bd6517ef6addcac20114323bf5bd57f7eca4a7c1d32b4027609c157c2be493d0501be6b92945059c2caa40302047c435bb500683066023100abee9a6b7b6ec95add065ecbe3873b45a1418bcdf6ea51bbc2c851e34f3f0dea1f8a769286362188c00143f00eb69364023100e8bca0c2492dc23bbe306c6d99a15d35c1bb34ddea7a562dd25d7f0ec7876f1758c7b575b3cc4e1602bb2004afc3e0980302047c435bb50066306402300178b46c631925f5651912bf1c637aaac84b0f5707f16c73037bb9f1b88bd4737badeed319efc5d264f82f01f342e43c02301a133ec2e0a8b0b551c4d41b98a887887ad9c35f18743a8ded7cc39e5290ac386c3adce275295ec036478e49c44b377d0302047c435bb500683066023100b1ca52722af3f8eed58078d19c3feb11ede3f7f51de1751b9d4a3608ef8b5ddef1e0bba61cd4837c532bee71b0972ff402310087bc25f606bdbac405edcf8ee0528c8416a916cf2ee704bcc4bfeaf7a0cd6838c40685f61037b339ddae0966c4b7302d0302047c435bb500683066023100e43a53fe7ce2b9daacf34aeb1e1a4b11f2cb792ac8bb0fa6f1d069bec33173bda32bd72ea677ae75fad34c6769ba024b023100817ca90ff6accf8becd54d48cbe9dc382f6614da21bc88127b233dc84691943275758e9f70d9bc66c8e57054afb681850302047c435bb50066306402303d4d7bd82795462bb0d00e56037db314c73f4b86025bfd2f32e086a17b231dd43b13d1061c4288485167dc910dd7b456023026a1a20be3afaa2ddb0e9d32d6eb748721fd2e9353fc52a775a0c7cf06bb6d26990cd578806e00c91726389e3b6897040302047c435bb5006730650230305e3895edc70ec6579c1c598d3e0daa0fd6e9377f30ce3867539c5f5336d510d79fbaba4aa39e54694cd1822a8eea77023100d0b34d7b41f9e940a91162cc5240d3a1387870db97c7169bc331d723c06d43a24b998f90e4a279e2909dd9247424c2f20302047c435bb500673065023071d04397c35102a29029b28f68684db29713890579f4bf12a8695de796f6431c23fb1f0cf8ec9452d55d7c81bda53278023100d5bb2b1dcebb9503f2071159ca3bd5007d22ab22765e8e2244fe8e0f2581e6485d658878ac92ee1d8cb4c195dd533ca40302047c435bb500683066023100bdef55b3cf61b6a244713eb526962f7c7a9aae355f7c521b863b23d3b915757f1b2756ad3d9b7a80122e1c231a89ffc2023100865c39b6bda7e2a65d0e174f52912c67b192751315150298076abbaac7db8292b86f6cbdf6ca80a1300179b6f05559340302047c435bb500673065023100cfa8354e4de69e94fcc9971b64a48a67704f58f1e19f65ee32379e51d0ab1b6b2222dd4c7782890cecb8547958bd37ed023040cfcaa962ed1d1d792e3758d6ce923e82eeb8c995740501ac49646b71aae088b45893a8d02afe3e5b49936ad185d7910302047c435bb50066306402300f00795a1a15f236ec372c88c16cf421fb7bf61a674e407aeada4d293140cdc69348794146ceb15627968039540f9a11023055529e731e0b7702d4aaea0fc639b7d785f2fb4323a49a779f95a05cc087931211d28b33a81871bb58bfa9c7e9a784ce0302047c435bb500673065023100ac289fb0df26565b82fd4756bea498d0731364586e8e6742c2b03c4184b39afae4d802e93a36d1c5127ca5a13f7c34c002306dfbdb296edd6b5852b2752cb1b40ef70c0688620199d70f80d352dd37fcc9ab3d58bd5db9525f8435d36a6c829b3ee60302047c435bb50067306502300667e8171000dd04bd401aa9572a07446ff268ade1fa65062aa894f899f1bc970dd206a40387eab9220d89357bd70645023100fcfbcd423e541a047a1599625dc0213d223f219ddf58179d311ee96c4082588fee3446db5dab3ecc9c7574534103f7d00302047c435bb500673065023100c7cc57057ba5e86b503dace814f808da3797957b5162967c222dc892694193758f9e66be7a0a465f5c50c7f335a3005d0230273aee8909dd5aedc6f83e9d4515392df286b872100e0bf850111d80642a09e8f4bc1d3061b17202e68d9533592505f00302047c435bb500673065023000c64ebed2cc6354f78d55be191af9f74c84817123a883d8b6dc677a0101a855bb541f0184bd4dd3fd687c1fd24326af0231008358be27724ffaf4ee7dbf86f64fdbddabb376eca833a887b0ebddd48ba2c3fe43022eb62873893c3c1eea167deca37c0302047c435bb500673065023100c0fd53f444eef902f804531ba3afeacb43bc436917e5683cf115a7cd049632e8054e4f9e5029337ef2b69efdd6eb3ff1023017ad80e456bbb10b705b84b284753649310b671a9bf0adf9287e32b2e4b59373e6b9c5243c715d87a93b95d079f713890302047c435bb500683066023100a0c91ddf210e469a94317fcf01a91379f17b1768161abd93c89e028351a2b15717bfe1da6624cecb0017cd63f74fd1ee0231009f88cac78bcc5bdbe11ed882976682db030ce21aae90aca5e69fee14835b2a82345a0fbbaa381deafae0a174290639e60302047c435bb500673065023100881a253a649e0ce86c029ef980b4a473bba782c515a97ee04acde28cd0ffdc20984ebaaf48b04c445fc8b9c270b65a0602301d52fa59ea2c28aa8f71286d97262dfc7ae500d8b3c5a469d73ac3e6206fdfa6860cbd171a39e35a3f729841c64e91c20302047c435bb50067306502301f42f69423d7c6515ed40ad2600a1e7c9dffdadc8b940e99b0d610a40b3be87ba7b5dffceb895f0017ba0c77775724dc0231009bd06b2bdb999bd7826fa45dc54264e40b88c211dd6c46a4e3ceccfaa65f03193e4bc9869d2d8483103ee563bfdffaff0302047c435bb50067306502302919f02126f4badefc23c3373b7c4aebb5b7d6aca9951241d6dc680e65eb003adcd1ea6ab4e3842b943e2a7bdf13042b023100a93362edc119698e0631028283ce6676e62f32e19c20dfdd28e4d8c3a5bc38983d067fd54c4dfa7d40381678219a606c0302047c435bb500683066023100c692ce4f20a0eebcdfe52d682ba81aa0998e796a7df2870a07fbab56edef2239f0556bdb07816b13725bb37d42bd0077023100a1a5fba2ca48e15ac57d0771c49f092c8e3cc3b81383cade5b74365d99c26f99dad4e7672ba8320c93cf38374e9c9b940302047c435bb5006830660231009f87c1e062176dc1c7a6a8b9357af0b87ef5f992a93e1241676c12d7a2b4f7516d67218114283dbf036a70a935852dfb023100a000f75e63690e0af35e11520b8ce1390893468e69c17a8c844a70593fa572c39fb1eca4f57d6c734d59a95c7d7b84a30302047c435bb500673065023100e4a086c1368a2443ee9bb8776a0cd1345231b4649a15b6ffd65b35c96ecd79f6f1f08a3eeab7d1a88176025b98aecf5902301cdd7def913bea66f4ca11e96e49263d497d92438ac5d74d30fdb0b9bfceabebd6458797130c9c0e79a1dfba1b3c21000302047c435bb50066306402307cac1d0cab929dc302d343746ae0cfa99ded35740f3b6eff5ad5a474e9b277497d28e719962e9a952b267cc06cc800320230181be236cdf44af4ec1e7f0e53e818f3c37aab5e61dccf3f7e84f4731dbf22f9c399ace14cbf52cb3086fad08141c8800302047c435bb50066306402303f1c2e3a55b6910e1df1ddc9492f2f688e8ae456cfd56ad758d9c511bcea386f1170c98431156cfe0aadbea87f56637d02301b56b070746a097c56de8d32aee2f8062415bfede4a1332b7b4e7dddbbfeb3edd71d8cedd15e3173e679d07a0183d8310302047c435bb500663064023040affcce6d973813297404ccc488ec75d87662e7e4dfbaa1ca5d7d8408b03a3952a0da304f04c2e427492c8df3c73423023058450dab5a862fb7db9274fef01b4043bc8c434b91223d41a9d4786409fb661beceffe36347dbb845ab114f9e2950d6d0302047c435bb5006730650231009375419a638f570845896ee95d490daeb77d7274719df3ad4c88c0c7caabef41fe70c60ae15167f2a3787d8f1f17dde602305957ed2bbe1b29af0e37f43c8a7d20e3d2d6acbaf5d9013baab1d16fce5e9f773b6f380d2a49661304e16b000e2c11220302047c435bb500683066023100ea33aea3c8f7029fea8599d79fb0fd1ad670ea3344821461689d1881cab638893469baee9e75ff9913101affdc9f37f3023100da4e3006cc58d552c93282def2c313120d795dd52eabeb7b874276caee30eed1996529f81b6ad3dea7cf3bfa1e779d8b0302047c435bb50067306502303bca99d321a92d069be85ebc14ea156d4af8424b783aa294d33ef25e0e79e1710a21f4baae9e70b02008e43db81e1db1023100c3aa0d90d0908c45cf4496d4758b8fff1ed20560d9517d61822cead7ff510732a516cff72e40aeeaac4b156504ecc47b0302047c435bb5006730650231008e0ea2f226810846ea5d14690b81620a6475b87e141154e423addf639e8171a37c0d8a5af5b7eaf15badd6f7523528890230708d5090e6762f4a2bed39bfe05513e5e90ad898d0baa5475506fdcda2025a5ff082d676657822ace1d40499375bcdc00302047c435bb500683066023100a87cb6afbb1182f36ab4a460bf56fc15c57ef39c6a13a61e2c6c817a2882be5d8b22fa0a01642decc69bdd46ef45aacc023100f76872a53fcd17d91d2bad812fcc4baa403aafe8e665aa0a95efd60f6a876cc75b3f0e5c514abd637c8ffc79d0365ed60302047c435bb5006730650230456a1ea833614a462ae60940486a17bda505d4881b78b5e0f8cd05bf724f1b6d5c63480ce17d094632677753910ce3cf023100b2fc22524f813710d45be5d7ae0ccf7141b91079511c727e365baa0f36da902ec48d90bc1b5b8bc49abe273bf26e93f70302047c435bb50067306502302970b03442d25848082a011f729cb94865b180655ac80d5099ba7d2218689243dd3db88e98d15b044d8da7bc719240bb02310099b1391b47354003ee583ee7ea5ac6c4a45415aac4769447fdb33957e2dbd39b5d211315de5084da5d0d056299d78f1e0302047c435bb500673065023075d1888b0c5634886a7f9d7f3810e8bd62d2aac66904287770bf1e34278263b5400d180178b3fc4ef7df63de55a686e9023100a2d6cd15ad3ce13fb0fb895a4698ab7a36fd1b25590654373bbbd298202922701736db2d972b3f346159bfeaa617b9890302047c435bb50067306502306a8d6d8507bb039ae014cf20a7e56dc2d17eba0e6a94ae72a0abe75dc03b3121cc2e27f7372a1220b9deec3bdb8d11e2023100f695949a55eba4a858064409c59ad2794e2b2095d23f6b1126fc14d281a462a2492cca6c8d5897d951e5f146b87771200302047c435bb50066306402307225eb74594639d016c5fcadf40929be0352a3f96203aa998c5bdc73c15fb62df260c3c9542b21226caffa648c5ea942023033682b6f1b1038dc16aa93e329934e6462aa10a299ae48aa12a471849e8fe643f48ac29a7bc68d8b4bd1b46b6b37e58b0302047c435bb500663064023069f722cfac88086ae56418406772b64260414a69d032d79257b59c63b74a090a4c1979c346c79c15a95b3b363158d2b702303c63ab199c527a7d1e3cc29b45a2dc1816342421018dc7c4f18736107f01f6a5b6ee86780126cc0a2ae33e2f99a42f950302047c435bb50068306602310093d99cf055e019861607167a2df2f21978df31428439e84933230bbe56ce905bb8c56797cc9bf69a68ec190cd27c43dc023100c9707f423af55d01ca63e0f796dc1878e0b1ded67390a50263a5d32670906f7745517e14c8c0f43ac6d04ec0397aa5ff0302047c435bb500663064023007601493170dfbf710f4f58993c324dedf94576fca0504552ad5fb5bbe3d9aeed1967dfa42b09dd32520ec646efa4b7302301265471ccaabbc6b81f12b6ce88be163d75522a198a0cd45506ac9e86c605b031d90be910d1365a03d0c4154a48ee6160302047c435bb50067306502305175f1a18fa422b069b743662a34103d768c7290dba35cee26eee1886c9086e5ae5c30e9337f0b2342a828807244a9640231008716d6a94e8f87b0996a6a3fb93672e5b88c6cee410985b0baffd43715720319b0a00a94114da5959e937dea56fb2c690302047c435bb500673065023007118eb5eb6231fe6294ae383a475483bf92875e3ff761e969104f3afbb7f90654b3176b05692b0af44786c0081623040231009684525ce562871a50d0634bca01ae92508a5a774df6f32b339e1e66c82eca2a9dd2d485893ae61ceaa94778cc39218a0302047c435bb500673065023041b097111c9b672c48fe95641d33716b3c17187e55dc8b9baebfbb734db1cce543aca7184a6ffcf5ab93f202a5806ee5023100cd967af616e4a4aa0ae2714ae5fee9de9ef72bff780439d1722be201a98bd3681cb5e6807ff572555b40a9e900fb8f410302047c435bb500663064023062a798ba6a6c0ba3c6077191db4fc3bb006a4033b23814bf7578eff9c32650af99d8b7f8ce3d5e551d1acdff9b9ff63102303eff1ee0cc1385f42464549fbf627e1ae9a2164bbe82c0a27569ce62484ca501af0c8b5a333d4430bc8fb9712716b5c30302047c435bb500673065023100b549488e1e9b767ab056d31c59dffd4c3e20901018081a32dbbe49e2981d74b30153715b8a547ae7aaa76c42b3920fd202304b6d4d528dea380c0917e3f4d7c875b64b1acf5eba72f92c894d573bebf6897f45511de73cedb4f72e3b67457ebdd27c0302047c435bb5006630640230625ff737209bc831caad3d7cf8bb773954eb7b654f6b1eccd16c228244e4e83beff63c9a9b7f0f77f4c5dba5719621fa02304b32a7fc49a54660385d2b4853394d3461fee1001de2542bf84162b7f64c6ac469da4901410bddc60ae64e1451f8cc650302047c435bb500673065023100d47abde60179a6c80e7a80daefcf727de0bff1d3a37acabc0fad1007d84c724895b877dea9cc32c0c6ef5ac6af02ae390230313366c502dd40b45e97d1c7b664d1a889fa41844233b2bc9142afffe351125e3845cfe317560357618a3d20ceb8526c0302047c435bb500673065023042d14ca857ce803630e11947dc3ff657d9acd4452a2d291a8b80ea822e6316d355e5f88c194f6b862d00493fa8aa456e0231009341baf501d308553def60df30ef148e9379c08d56165f507f42af16a0a92becf4ed75046298dc42e0ec5e5e052648300302047c435bb500683066023100956df60a2bb30845bb7920ca9e33b6af5701c1514a974ec53e73cebb5cd4bf0e5881443eb2fb03ce9d49aef6cf707f64023100d68c0b37d96c243f5fff049a43dab27e7fdd5c4f548848a7f50fd06eb995be1e381268896b0d6447f6e63b94e06506fe0302047c435bb50067306502310090b8c5d5ccccf9a622d370083b98d9c91088c973dfc2f1eab94298236393efd9f8122d06e747aaf9c4c7bb52168f122b023056282585933dd113e169bebf107a9bfa0e75c6cddf0e982f891ba16e3b599f6f0591ab0639e478149916adbc767a5f710302047c435bb500683066023100c2a03ca4a4b5d0270ad25dc084d9c4434c26441c5b6a0b3edadb45347b47a8be85cc5d600b6a70d79d83e1fa8f568e8c023100f264da8c7510eac1fcb167900c6b861683e7335e353b74ef58ab78390e65ff6f6d165e630e0b49ba02385acfd797c18f0302047c435bb500683066023100c180e94c61e9f1f44f2ee63806c10ce0c3ed4db0597234d50ee529c62374a6bf17932077a678e991348a4717dcf0e0b3023100fcc269535ea32bf72f5e4adc3395a6a77f6be3fd17a50fd2109300c29b4298cc72f90ee05bb3ad28075179b28a08bab50302047c435bb50067306502305a1508705dbba644cd78663993a0fe0430232ad7ff81fc7a11b723744ec58fb7a6ac2512168804de4507902a03faeabf023100b8921e08963fb04d49d168ea794356564c4a65beccc751b247841a84c673de601c79b007660afc096f3b4e7844b36fd50302047c435bb500673065023100a2cbd45d1466eab80d4e56472a5309403959e4e3fc3164b3d71e96933bf44340aa42900b48de126072cb0543bfac1730023032ab99e5a99d92f68933cda3f1a7bd94d4b09ca262d6397f1357ffec0b617be07cab45ba56f615ee7646fc5f052d7fb40302047c435bb50067306502310082d1f1714f6a75aabdfb2cb7e0e452ead262197276a0bb63e972af8d97f714429b9148942bbf7f84074bba6766d34b0f023077a06f8c390d3d222c82c6e5a5aeccfe477c4ecd7edd743b86e50989e25121ee450d4cdfb47cb469e5e8d7eaa2168dda0302047c435bb500673065023100ae1219a10ea7edd47dd5adcf65997e089df87f9658a5124c9978f20b9ccc2bc7de1e7da6078af0d4a3750d0e26ae29f202305a59c3a8f51eedd8de9e98db50b3bdb1ec43a03441bf35c91d878548434eec14112a3333c5628cfb23f41bac12e331460302047c435bb500673065023100ba6b575d676ffe0e26326226f63e883220803f3de46035b420ec6a737448b3453abe3480a232730c912ed366d5e4127602301fc578fec5d79f8afff634ef788a632199a2afa204d5e0cc04924d8c6402aaff8bf3f3de393e3bb59fccb58962c92d140302047c435bb50067306502303d587285aac7c69525a64c2f14f0a0675c86e0c2f168afc4d56da3d5d962f8733ffb320c4469a1b5e061d25032729277023100fe4b312b70cd16d2ce39d5a0b69f0e318b16ec44af770f5ee9305b2144bcf8dda0bdb4de7ca402f840826e2d63eeb44b0302047c435bb50067306502305df900f52c70e27e26f7bf1832c748ce683c71a397ba6f832fbeb6262d78233b03ea477e050f8263f5b0acdd38325370023100efb52dd2a6f606a2412df71d064f93b616eadbacfca83f427f2ce8a85c72afa18d288d74d22e90d5a5db9bffc28348ea0302047c435bb50066306402306276b10c20a5192aeb9fd6afb9376ad365bb73651109e7a6218cb27acdfdecf4bb0d7a5e8a1810de4fdb62ab112eb0ec02300c180696cb460e32ad272e2a75ff63685e9520da5ca5de538ad9d9a527e1cd9aca36b71df2f7df7291823f39b24d9f650302047c435bb5006730650230653541bd3a64b3ac205cebada6b2b21e63a757505e1003000d6352ebd688cef22775993b2195b60270a8f8f20cf8bb18023100c148a7283bab9c5c6c285d823cf2cbed56035e891bd09799e5eff953e95efcc94386375a913a7d6a8de5ea9c161077ec0302047c435bb500673065023100f9c2cbd6bc4e8710f808a016c9d49f6f5b5a5a1ef7aa9a4da208bfb0c176d71894059ca56f1429cd299d0315e25c5f9602306fd7a587e070c1fd50086cef9a21443105dee324c27191ae72834bd52ee4e7cb8ac48ae4d6d4b9a8a8793985475212e20302047c435bb5006630640230101b0f429febf9e2d054c2f1fb7d0977d51333c221cd6752032909bac259a0f8bcedd5344462e8b3cf7861e67c84f8e102302a6b73df465233f14c0d23541798f11e815ba09c8f9582105eab7b081b7497423dd6e75e988cbb9e88d625a45df435270302047c435bb500683066023100f7d095dc387ff54f5a308eed941686446e10744f6a8fc7b8fec46eb79023ba0e3bad440070b4865343a745f181861acf0231008e806d9c546d97b8f3aec724f5a96824448a2870585a1bbf487a7acb38874c3abf4720480a5819d9c4764d811fa005a20302047c435bb500673065023100d3bea7a41daa4ec6ea4bb65ca16f1ca3aeaf2537d83e1f6d63e4a148a33382ec5b889247b19d726bcf3c3906be715a96023024a3bfe2ea895626642e8c1da4e8ea7b033d030101cb328cfbd7654dc2a29783bf59676f940b5d64854f6ba34cc9cc3b0302047c435bb500683066023100f7efd9b663703ac01e8e59d6e494b4a4c323a4620a34df4003e596d9f77aab207130ad1c1a5fab8d86dc6aec196049df023100b457dcd67d7ac8404914bf86bbf02978f86e924ef4fcdd92d1917693ee5ba5171a29ffb333474e809eb06e835c4b9f960302047c435bb500683066023100b6c718793bd0cf357629ae9e8916f5464ec8fc6250b0db031ce0a75c5ed99404801d37a526d4bbe53f2206a8361b93ca023100e2b1d562593b19c48a699383767c04b71b3aab67500ece1c599598056ad9c86e26d4a40849426a4abbe9b62190669ca80302047c435bb5006730650230203121beaeadfe0875b43085845356e8f97e1095428bee799658db0715bd0d13066ba6fd859d0419703ae7e64e44d318023100a66c9319c2ee5cb4aab0b9d752392d0fdbd749a31348247b7285a63f0f5c4605816ddfc09407401440d09f000d654ad90302047c435bb500683066023100a98de06c70e41cf871e989dcfee31a10a98cace64f321f34d126c2d5cf3f7ab10c08b4e5b262b32ae4b4d8244fc54ecb0231009b481d09f158a171144cdab480e27be5981d95e745dcf025ebe78bcc7e66249852c1f5e685d63a201765305466edb9780302047c435bb50067306502303a25e66bc935b72356f2fc4df08f0c45e26677c83389d97c2690a4f7fe07976cef168fec21a707df3f7a0f06631c3792023100ee045dcedc24f566bbf4f1c15dee26263bb00aeaa90f03cdb0537d6a44cea9a7e006cd5a588186f1d506a12580988fd00302047c435bb50066306402300b4132841f42f3d6533fdcd83329222d16b1b490df2cc90f421a12a7461617d706270ce3c00f45a2c0ff87aac437713202305bc454639aaa446610db4adf86a134dc3d5b9cf40af2220486f16ca135753ea35705b885a84ca0fe98d0d533b76c87440302047c435bb50067306502310090d2cb2c3ac52c7b106b80f60c36d89799377894bc7328a7de39a54d9e714701d7bd559a68d4541243c4e16014ae96d6023042c75fa93501c13e49728fc792698f55afe93e47dbf29d31dbe270eec29d4f2e4ab29838f54f8f9059511d76d1e144780302047c435bb5006830660231008d047e7e273bb5b98d9a3e95e76bd83c24eb273bc9eb22d4ad52013c44581c7d970298daec666717add622fff70e109c023100b80796c8f1b6b748fafa9ba3af626fecc8a1f94b8ca68a64fe64e16d65265edde2ea1d526af26b5a4daac0b54cc33c180302047c435bb500673065023100a11da8b512c16f9f04217ea4407269088050a07a2a086cf6e11d84d18c07b835e180c27bb71d83beac92ed08106669a3023064dda22a36d30526567644b87daacc6c3fb5d05b41e220409ec4d3f2919edc6311976939a66d26af1b062c7c961fc4cc0302047c435bb500673065023037d28852762b7dade220c66f7538fa26baebe19999f585abf65664d0d9c401cd3a65dc12da2ff160687bd91913d29edc0231009a9c7e42cbb09c18397761af005d9fe8eec1102f4375e5084ae02ce038964a3e50494ab86234fb5ebe59388a48e434f00302047c435bb50067306502304c5eec2f9d31efd872e3d3085fad143521b68586240450c5c849355a6e71412b5719838ec16a70962d73d4983061bcba023100b1e1c4b1b2c10f99ffe411825e1a0ef6247aaf2249ba84507c46038ca99154da73f27e806bdc5130f50a226a5a9aff9b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100bf4a0b5f8e06258796d69692c8bec36b12ef3be958a8bf1db5d5d41c7fe4253284d0efb0863cd60110ba956da2a802aa02302dd639a7bae43f8fb6564e9fdc3240c94b5d1e0e8d650b463a5163d449799e8338b8bfe29db5f0bcaa1d7f489b8817220302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b45ef0f640a66328c85d68a059be698152e5fd97af694226cea7b84e3a7f146e5c296ff2f07b5e61c2d6d24744204aa5023079ebdb81dc8417fae023e987b69cbc68fa181cba9a0307d62e39e6509525459d9dfad4789e2890e9edd5eb023654d8990302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f6c598509f619b9025fdc5b3596b2d8cbab7d15049f5e09033b1b3e6bb6d8f4eae8d1244ffdc56c4b8bc8f3239af6947023100bcab0c06e25bf7847c1fd962c1d841ca3ce7d1051b0926f5c5a1791b0f0ea73f237175c81c8451b5505975b023b5f4c30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c7e0af8ed64b930a033823f50e391277ada90cfca3e75364f4242342193f6ea4de9092f69def9bbed9e9c668181ee99c023100a46bf321e88045619ea7fdff5119b0e5ac5bd21874c03833e225b0155322a88de247957aa4c9fa16408b4ffbd4c803520302047c435bb500673065023100c054ed65acc5c5d2b63f7f33fc0614f827c4ae02419af08661e63c32a4927b25fb0cc16d59fe500ac9f79bee1d312a5d023067fecaa0f71fbd51c119ca2f8fd78812fcaeade724d76378f22b700214d723ccfde59c407bfea543017e4cf22d4537130302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023062e6b2bcbb5fd8c644eaf41eb7cb0fb5c66d3337553bed68272aad97c966bcde676b4109ff78bbc9926ade86b015470a023100a40a3d156040c078da14e9a85aae7cf9a7e1a9d18731e0d37fb4932484ee94c58c3d5a7f93f03de0c88d8f45a06c1ab00302047c435bb500673065023052b2f54af454603b4cec62c63b93eedd68cce8839a54f83b2d53dc29bbfdbd476ca2c8b3eea0c47e10eff3ecc92cfa3502310092ec33f8ad1165b0c04fd14cb634839013db8e4203cd12d90b4300c9838909b3184ce9251faa9046aa131d98ebcc36b50302047c435bb5006830660231009a3865b2d79df90f42aec362ea9040e5dafe0d6631baf9238f32c553c5c5280645c4e3099af82cfc2bbfa96dc3b64370023100c918bb74020d3b9711a515bb261cb2fa3f4e94fdf36b5c0f6c60c1e7dd22be1cddbc6ed8e5b8be4e259f8098917ad0310302047c435bb50066306402302ab1a57cdd0b71a26fbeec5666706bda5e9680b76489dca63346ae08da336dd28cb59d7942fb06f7ddef88bc71f6d107023059ce29a39b7b31ea20dfb78a8594d4f56e93528f3a56e313455b7672d828c0c27a9b23c2285bdaeec2232fe1171161e70302047c435bb50067306502305604550021fe4e34d96435848aab38aff358e5bc5b3bd7e46971582230d09e5b5aa02e0ae990caf41dd05ac1e2ef0868023100f0a86d6b83876133d20e9951e530edef1ee6537058130b93a0052184788ef18ef4bab8d2e10a424d47410e175d39b90e0302047c435bb5006830660231009d0d82f7d022ee0f484ada3722f373f742e34d374d20a29611294225e6afd5e9f0d22bf445aab9f1e0e7f4129fb4d0f9023100824b3054d80783870ff93de6b5e8e719af1b3ecc8fe4323d3634526cdf31f82b7039562535c7afa28fb97aa400af78af0302047c435bb500663064023051e7587f48500efd12f5cf5bbc14e5670e1180418692585038bbe67feb8f8495d523baa5a7a289756de6d4517073159a02302961cdbd39876b8ca723e5501e9d7f1b76250e9943cf5a4eaf5d574e6c05df2e673bac9c70144a4e7d8399e448aa7a5c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cea1edd7eb8c13cf7d7519db2e9e84d983858f3efd717977d02d06f7cc7708d70d6e87e1f9b9ff6bea9ab29bc903d80d023100b76b58e8cce169ef3d16ce3a821b56c1645ac9942cab09870e9c8d65efcde285f128f1ef41765b12f6959a051b99a9b40302047c435bb500683066023100f59d4228a345a27d40023bbe5bb034ffb429e8286cfd256d009f62ef2d7a498b80319d57d81214aeff7bc1a435f6cd44023100fd904fc5d2273c1835c570ebf4f8498bcc0127d923f69f49b478dd3fe003b6a27f8dc99bd05993b843125d23312bcbc10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303ee646774b9dc2c36538bb009342d8dfeff8ea5d8e6e3837452409dc918cf7cf7d25741697d710c1600b5f8c1e51f0b5023067ad042f8e8857a7db526ded0435207b11ffb1d754b7dc5f99c6c5d5a1c80c7e0e21ff9c838628d5825e8f60e42995f70302047c435bb500673065023055ad4de7d067225719f431e9e9527d04c9e81aa8f4185c6f47d02056302a65de9baa5dd62ab78a0797815c95484fc73b023100c1e3a4d4579df9245230c5583163ae3a69474269b710f93e52881aec5cef46bde4613c709b5b97918182c2aa682dbf280302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cc3c66f719a47fb91eb1ac68bca5b89488b69f86c7b4b334cf35a7ce5b1218334d2c17b00586c3c46b478b2d470cbacf023100dc10facd28f3083c2c9e012d06532168e7b1bcf9cfbb8217bbdd9586774092c13778230a0a2d36b2c99177e4b99bc36b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100becda254fae5acf64754bb55a1cb43a94d1eb5d3ace492b9aab692dbb2ef1f0bf9e9b50923eb1f5abe885232fa1d6040023003486b161f12d890b598a522bcc06b2ecfa732ef3cd7d0ce5962f8b197513accb446de8542753fc4d012e0e664e637090302047c435bb5006730650230666abbc7cad9bbc9e4c905ddfdd222959cae9bb4a3a76be03048b9411b0f807dad1ec4cc732f444810930312fc924a56023100f19e5cedf8f30b41af880ccebbba6c9dea729f90bced28b5da8035b71fe8ff2cdf59c47f3b92524cede0b94592fe45590302047c435bb500673065023048f0429a4db1d408f5377c014320137456566765d9623b45f3319ad2b6911a2dcde856e592b099d593fc7c3b4f5419ea023100b523d0f7a2984ddf9451364a00dc415f0b68b507c198aab9804a49fde917294f3894ff8abe63c32d2bec53511de354870302047c435bb500673065023030d7dd48b955add7b5ac25d7400ffc92526725e8279e9ccb41827ab779d4e36bc7a9a9668664754fbddf3f7911611999023100d32eed4e4c315f35f198b2786a60a4d0e2e70b77aec94c19c09dbafb1fce5d1e0fa7d96444139a6254bc7b9431b1360d0302047c435bb50067306502307902cd465cc03e496319992e29256e16710ade5a36255774dea5e0679c2ef31b5961424736b4e62dde1d169b8dd4dc76023100ccc190bf60f3424029726f5119a7245131e305dbde0ebc32c8b1c3f928ad8e8a4cbee1d555bf26da7296d5df818b88790302047c435bb5006730650230645c5e0d18e339a839a8c9918d00123736132ef3870b51998152a6da7b91489d1132c1fb586015ce1190d61195d045e9023100b39c2daa2e40dedadb9f49d0c730f6291d075eacb9514911810c2bb3440dcade2aa8b294e60f40f548b9a63337ab74ed0302047c435bb500683066023100dff35892f54ee7de9d141f068f552414108aed2224996938138cf2556822e7f2c02d116c63da25bbd8537f8752b29410023100c19f582f2863ef0b67569d030f24946b700d767bb8af32ee9db584e0e34681cbf5d30c663f2c8022e2b4810e2f970a2f0302047c435bb50066306402305084aefdbccf1bcc4f280a2e57160db2ea670592c07434738a531c8b3ef94369bcde30375688eb6d7a2e08e769e0f8a802301144a8392b20770ba12cfcac923630dca65e39e982095b45922eac4bb2f1c55291808b5dbfaad5c5f03fc2340b2daa860302047c435bb500673065023100b1271a4fc6c0fff88d3865439875a0c9ccb648e0741818d568b04bc3ba01b4ebe4b7aa145063215cbcaf080996af85290230530c918ee1d39563df6065eefb1646d810d38c675624e7c46a77b13e97864f76817358b2396975b6ec02681ea900f6850302047c435bb500673065023100c267077f06693806fc3c1967bbe333e520976b519724ffc57cd1d450144d204462846ab2332ed2f75b8d41b27bb2e15002302da88e1a57e8c0b2f3be863be330f96961be221d22bea7b89f19ecc546b8d7fc4b26dc4be41060f54a078e92b94c8acb0302047c435bb50067306502305d2ae6281167783776618e89cbcc7a37b777ccafb2042d31e033727a40952017f696f3d68881f1a3031b0a57c35c5a5d0231008cf78abba6f751e013be4addda55450d9cf5e3e8d3e3c2306acbeff4763dbfe5a2f7eb93177970ca39d230cb058dcbcf0302047c435bb500683066023100905d960a1e32b17a5329309bb12a36d30360db96603a9068b69c2f81b9fef475c64e78aaf14f2312979bb9a731d713640231009fc295c9bd5a71b47f1e218eec202797bac62537e8bca8f9c37e227d67ade14b2d539f5af6234adbe3916532995129170302047c435bb500673065023042661e32b141baf9d80f1f7a6481082dd256666435dfa716e5619cf8001112bf36f7a6e00e633687c10ca6936ce747810231008a6a789af75be1148f318be101a66b8c9c0959028e74541795bc629485b77e70a8a61c35616a0c5063be13871cd512cf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306d4025ef5c065ff42c848c9077cb3d2451242ab1d677093d5a35f3229be2f7c4cf81436859a2800097a170dc99ac2ce502310087b020b1ae0baa4cc5aeac466dc6ee3f58a81862a95a495b8fe7399e97e60390afe1ffd3dc115e108df9153ae7de68d50302047c435bb50067306502302e9e43d63a89905d0a081824bc89fcd15bd570fa260403ac98d7957b45f28c4dce74d1981d8aebe33c0687ac11d13deb023100d29630d04b4fabb72a7454a0da07221fe26792045feb04c6d5fb9bf7789ba8f0417dc43b6fb8733cde7b7602c27e66f30302047c435bb500663064023100e245b3434678750bc11fbd79c32cab3f2973fd7f759f76ff166269a91e9fc5f5eff6bb90ea574088f897f978b062b4fb022f1008973da0ab96182c134170413984412574ae8febecca02f5c298b7b94950980485ebad88cc6254b76ad1570bc4040302047c435bb5006630640230474317f053caea422d5b0cd9d530c3ef7c7fe905004d385def4e09ea766c77da6bd26d4368ef511db5f335fbd3f9feaa02307ecf4f7ffc77435ed28159f4cda15e6c3135593b0282fc7377e5313d0528c053a6b80a9830ccc0406c34777f25d105fe0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307308451e479c8421bedeec4d53cb3e220a6cc11feed1c19a9f5c7880cdc6f492861323dee6bd4973209769570eaed4ae02305b158277354631d9d1d31986d07876cf7627a27584b98d777d03c033483e522f09c0bee6243cb3647b178888c30194d90302047c435bb500683066023100d6881e563d891fe6a232d4000a02de3f9f7bf5db4ece8e15cbb6d27f801958a5fa1a082a571bd1e7aeb4c392f895da190231009b822310f4553098f30b800f5196b5171618c85d361ab4ad7d34829a182e4854e781d109b704c2637a5c88cac119e6820302047c435bb500683066023100d868665dee8b0b9ae7a3e53efba2095d451fd27af868faf0bd382d7335eb3696789ed1e78593f39a977e87842eaf569f023100bfb27b5fe73cc675ea6b54cef6a0f8b226d5c3cda94fb4bae6ecd828dd7558ab5a85b876459347d232a30bddad6529860302047c435bb500673065023100a14fe6f6572b6ab0252b19998675b258e5f82ab26194ab5797587145e4ab988ca995781afb1b6ac3f41411e28817024b02304d1d6d21ee600e03516115e5823d62ba9f85d0c7f5145ec4f49c825480eb22d1f4060c416681545da71fa9a01daef2290302047c435bb500673065023051ecfc8a3aeb81285dba97693c2273d6b41724e13204f60f09d7102ddfb64492ec4cdc708c188998b2e9f14e0b374944023100c0a6d9d61b80ffb2e51f014401019cf155e3e975435b93ab3862a568ef6f843a15054944d0826bcd62744e17402375ab0302047c435bb50067306502305e1b9a1d8d5d6039892f73d6f2d49cef21aa449eb6a35208e97ca4ed5c0c24c2f8fdd11ff575eb598dec54c7cb4b0a23023100da79f35be5e5a580a27c5f9ea1b08d964f2ab12020351f6f5bc5553d68577b839397d5da8aab0a049cd4211f962555f10302047c435bb500683066023100ff21f79db17d377d6abc6d427191ff345f85e6b40e4b6908989ef60ea94cdad7c9e7cbd96c29db0aa93e95c9ce80ac4a023100fa3563af6ea127332630119e3b3f3bc4eaca05b8887fdae0e5bfb39eef1132900701ceba37ad7a2dcc78c39ada9e12070302047c435bb50066306402304b9885824349ab4d265de8e3d89d226d608508bff7c0150115683d6cb3a75cba1f491d9d9e1aa42e2912b9996dcd620e023078e5b9c157a14999076d95db1c39303cf70621a73df489f5eb6ed32e0eaf9b63153f4172a6244b6607718a4ac6952b030302047c435bb5006630640230273bfef00dacc6f99b399f929c8db22ca14f71828ecd8fc967f197b767e4b9124a5e3f9fa9d1a157a804e9a22948b787023046fe89e9c30d02ba5387256eba7d4fd900d86032708441bfb6be9024ac3bc7321f89154080a3fde1f1636cd20f4b97310302047c435bb50066306402306a7523bcc4b60cc8a17c7bdd0de070c30e4cf39d5f27e43e9327eb82f7bd9df1a6d4a8d494e14ccda3b8ae5fbbd44bd402301bbb62e144024601599cb82060395d0454037385cf0dae95382ea4699bb333ba08232f5bfccb6ffd25135ea5b4dc17940302047c435bb500683066023100b914cfdb5781327484842538e42d14f2ea8500473fd5c4aee4e1b2c906d06078a070ea4594fb92abb926bbc3ad3c82ad023100db77f52b6085c8860ec98b1f7d4801f24b69a73986ef79879fa6092475f6e146f4edd429bfea448fd83495aa84f5cc0f0302047c435bb50066306402305ca24272ad582d21fba0190197f20965892e0ee518836132a5a7c73c8b8c8a604c53b9e611ddb3b1de95e211ee94ea520230152303f035f309915bcdcb43fb49296fd5514daf6865aeae0b65cf0e02f9540a587cd6bc3b69be90c7ef4abb3a3d233b0302047c435bb500683066023100933bf5cb38b85f8796b0b9f3ead0457511a26b1e93a75b41ae80af3bae215285d0101d777e6f5e59b7c9333a844a1bd3023100e58667056857f0eb3d49baa0ecf4e7884474c80c77a9d7a246fc23d9a0556045e4da4588d33e1f0bee051313573c6b360302047c435bb500663064023020567be37b668cf154455f7cb3b1adde2930f60808c0b28cb5a6893f6753d1ee6a684b8b6964cf1f1871e133e72e018b023039a7532178555880421d0060fb7fd95bb832b67cd1659e6d475a44d150d73c254445091148e9764d6540ae05edcffee70302047c435bb500673065023100eee823a128ac878393bd8c6e4458c9782e9ec148f55fee6823d212f1b81eb5dedab97ccc4fb9183850bc00b8340316dd02303b2c377324575e191ed4d60d4918644fcb5aa16e65227efbee575038bd7342749c9c02d54a44c8203a71b3d6996cb2d10302047c435bb500673065023023b07ae253be01f873a57c54946a9a74a95f31e9d6791b2598d1db6b498f942da5d16f1ade079c705b5e42afb83dd56b023100f55316517e451da71590f7db11078bd41c8a7073ff198dadb2af2daaf1440259bc975dbadb46e7f82afc12beb547323d0302047c435bb500683066023100de7d395919cde085ace77a68e5bd1bc4c67f36f7deb46e94c1c02f8b6d6a9bd89f9c25811168633304503be36e49190b023100c2cc0e90c2313e458291a9626cd847eaef6bd22d14cfc5953cc4bea1c36e19f809b490274b5ca6d9d1778d6aa3d026940302047c435bb500673065023100d49a623b21481df12683c37cf307a6e168799e7a322e1ed75854bf9849aa9f1c7fded77b890b4625c7e479039958732502307c7b477628cb0933fa00f4c17243e79854bd36aa1bc735e04eaeaa1ee21c889510009a0507bd3162abfa0bb6a72dae4c0302047c435bb500673065023004a7acd6d77e3a38ef496a16d2390ee2dec2b1b624e227cc1e836e313a011ef0dfe0399156f32c7e74176ea0dd18ac950231008cf4b5cd20eb19e97d7548556be98a17cd5b94a5a0d51af4635e2de90da2d247138f75a101faf11543bd9f827fb8d6470302047c435bb500673065023031675ad90298c5ea579aaf13fe5b2f0d55fb97053c443e8fb5d2814ee8c22ecbd37c830164c21e214d6eb80e1e796c470231009e561be0d24a59bbe77753a0633178dd4190cd346d0d0b7f326ea07575cdbe11cb17c7d06433d56e10813279eef86ad10302047c435bb50066306402307f47ae0f010dd84a537a1a88b7904b40bddfa40e526e72a43b9df3f46dc73c48276f4ba86313ce708b545084467271aa02305cb314d3f2a8fdabee7d9c886ecfbf0c6a6077ef6b7d8215a7daa058db335675900fea321318a28ddb331ef0ded520da0302047c435bb50066306402305c3202c244e8b284f951082bd0a816897d0eac8013cceff65a82af9fa248eb907ef6cc66fa3d5eb9e64777e3be046d4202303b3607bd219e4b2cebdd760e3e23c5953c3ba4d8b7662c4ccd432ff336e1eda2614a5721b91a816f5e144f06b235b5670302047c435bb5006730650230337e8b982f2c0f8f09536f0509443f7003fef095bb8d499540a00f60a1822a646c77a4c6ceb75adedd71cc6919d687cc023100f5ff0b9af69f000c6d0e0e3420978b7f79e001ad07c00efd66324bb55243b31e9da97358654cf92f114ace84de66c6ae0302047c435bb50066306402304e5df28c03501c733d60036443bd61d5eeee0bc274bfd9b83528d70dd2cbd08af584dea8dfc195b13841d4240bd7135202307a1a50d037457c8a4de89f545b6a778f033c3a20ebc7ac3959a6807f9cd713d2a427d2c51aa6a0585598034db8266fdb0302047c435bb5006830660231008e855356153d53e010a4a0e7203047ae941d2233f7fc5aeadd2e42e718b6bb6a2971d369a2594f0c3e48d9cadbfb77d1023100ceaae3017c4bee7a7c719f658c3c0d1bb6df6131e8216c6f286aa7e382de28bbce7eb9bc48ab8b9529f6d7613295cc210302047c435bb500683066023100965f2c28458c948805c61a15fdf8f8b7df0fcb9c7ed1598131382f74618d537931d025a2060d457e14af1052d5a6ca68023100a2836443ae4b1908c26f724f6721c77e1810a5d85b691fc46661be2eb1279a081a69f3b0fe22b5ded1b3451aafb3dff50302047c435bb500673065023100c69c86d2a49d7acd67fe2ddcfc1a8dc5e0bd74f5e565d743abe41cbb4235c506040a0bad7b56732bd9bc88b58927b396023057e831bc62eeed81aeb88ead5dceb95e955e2701a4daa8cc47933b462588e0edad8e3cd2a25b76561e4b862ff8bc9a470302047c435bb5006630640230698c025c3b812287c1c4961717cd376cfeef40a567ecd69d3f46f3e54f6ca4ebfe74ee55f52e50a5b69ce24d074e8e51023075ed824e94db2d0c4b223811cf75856591fb22e7d4aee6a2107eaf894d452b5be8533fc921b69fc92d7836a57b68fc810302047c435bb500683066023100813b8cfdf1a1d716363d67848678885e5c459f2140c43ed151f29250259120c12c78970f724b26a62e06cf579b2392cd023100f2384a95aeadad383f2898519724469e9806d17a8cd34c003bae86ce0c54474a6902479fbe0a998c78fecf1ab4bb55920302047c435bb50067306502305fbeb8de0a28e1433f04186e3f777885fc54712082f88b0dcd2883d5a1a1d06824966b418dc07ad76dd36c4fa83fc4c0023100c96fd6ae333a8f1be77a12d85838399698acc7067ca8c953761131596ae5e294ec2692142c6c4f3bc36db54ba3d4c1700302047c435bb5006630640230683981a125a510963d1dd21aed7eca2a849c784f1d785d58c9dbe50c6acad121a91b7a2a0c0b465ab1f501987e8c24580230132527e9d65f349fcaa04e689722635e2d284721bca330cf5f1b6a550640058cfcd8840abce9709fe39c62198993c7630302047c435bb500663064023067ddec1d9ce8fbf0b11d002e5d4fb0c3174292729d5096b93cc6ee18a166ba19b691b0017f133938cd5045f672630bfa02302fa43c8bcef18b935d3958f89630a614e7e5f5b93d04c13fe7cca6a9e7fedb9e0dcb25e410835519565d8b7eaeb3630a0302047c435bb50066306402303ad19c1b8d67e24075aba60221209a146e6e657e582fa45f47ce18fa6f61276f5689ebb3340f998e0a74272143ed0a8e023006cdf2476a4764c4347983bbc48e10e9583cef423c79847730c478ece7256570c3bc954974ebec820d771c5ab17a99cd0302047c435bb50067306502304695b31a61d7913bc79497394429c9694a9b9c37073f9970f972590e6a2351439da5a370ce6648c170775907a281dac9023100d26f44f6c57de92edc7ece78cddb490a291da5821ad2138f8085e3d22eb9239678bb210f8c090a2d57353cc0865a2fa80302047c435bb5006730650230193dd3d0b910ba62948734aaae736deb039f2dbe851af7083e05ea25c22f3f0ba7b3a970c762049beeef4099d962eaca023100f66126bd9504656069c34c2e49144d02b68c1e2f9a757927ae472ace6b7f8a56f8a9c0b320b59c044da4dfe03b10e3db0302047c435bb50066306402307fe2ce1f7db42e9a532263d0e3a681b674da0ba23cade177edbdb3ac40295ebad53256087f08cbd8b374e629f9eeb344023005f2d97f6c366b2d2fd928459c4340db591e9034dce40f2db9bfd332960a4179dc7c817173d60b89b14638e53b1170570302047c435bb500673065023100f0519e7a5e2da9fef1f550f2fe3f7b9b7be7021dacba1121d268a437055db7119899c1ac8c0c0608cc4379a20ac447fa0230598434c03fdf8a7f6e8c7fa2da5716e1422359a2b00f44a3e19041964c57ef3bb9a34a130c9d8a718dc6f144f70dc18e0302047c435bb500673065023100877d229f82a39d6e13d3db800a2256532a97fce685caf3d91977a3927fc88a9266ec4cd9754d7394c91708ee4b79c55f0230110d9a90a67616b8f90d13ac534ce5af6fbb9c558cc3c36e916047f2a71c74a61864bc12f51d3f9dcf2db53a420fdc870302047c435bb500663064023005ddbe36e6fd361b7e4a4be67267a560bb6ff03c0f305373f84eee267cd11f5c18bc1d75c76bf010a9aad15067d4814202306ebf8a31870044e0160852e8e94210fe16f2b71be0ba1b2ea96a434b65856c53b7c6a818928a5acd5ceeb540122599cd0302047c435bb50067306502305472e1c74f679ba6db85aa3a018953ba2ae4d5c72c6ff66cdd9fe351042180365fe73512a3edd43cbafa4393352d8909023100821f335e73ebe7b8aa9ec78b357e19a323abdb40891779f424465aac38c698b6e96117c73c7b491960b26432897545950302047c435bb500683066023100d5896f8f031423ac85e80839afe65fab6829a53126b7a1b903b27021d06b25a8188a6543951c3f1a0b7f7b2d82ee3492023100da223aa5eaacbcbafcea2c3ed46599f326b66d4ee2254a872719a945e158bb8394ebcb27fc38cafe69d5b86171f349ec0302047c435bb500683066023100b9740e1807da5e0f3d97df7b40882b842a7be5e649e8cae36c05074b7aa3c4d5742d99550d4c6235e7ca5a700c41fb92023100c8ac1ae4287686133f0e90228b6bf99dd2151cb04fad123891bb0bd2f043c698a81074c44cef9cab5f159cb9e1384e4f0302047c435bb5006630640230242929c894c1434dae362c1b6a2efc21bad9d86f8712306186ce135ea4566ccb6b1565ca88346d3a315f0ea81aaa70d9023051af81e105cff1a1a650c6d1ca5a22f420a840a3f43866e1df79d6af9b756b612d4c77dd0058ddb3c969a2b1d769f7bd0302047c435bb5006730650231009df818603546c934cb56c6f0f48dac3f173439d086a1992054101f828631bddf34ce1ad7ddbebc1452fee19fd29ee55902302242965c580b35db624715fa40585568bacfacc20fd895fc93a92d28e84ed6d3d89dd2a4fe995bff40a4b6fdee9c06410302047c435bb500673065023100c2b486b979e7092d689390342229f56c9a3c3957ef0793eefee53f72a602cb0b4cadf6ee039bca620042d30774da44c302305ef434790527267f482c1a030c543c3ab45fa2de0957b5928d2015c783f74a8a5933e52a7d99fd4b4726a9252d43cb7b0302047c435bb500663064023006bc21ed1eba8cb77e15bc677c18ce828615a03e6035829c7c67e82d3d0b65399b92b95251d885ae47ae8c6565e2fcd2023048a14b81aa33313667386ea383904775ea8ada04aeb5837373a69429ec605b12e7c7fee1ca53c41fa58d7252c4e2addf0302047c435bb500683066023100f51adf4ff07b9fedba95017eb4996b3c80e8c0612027a21ef9a06d73a0f922be7d563999452ecc244337a438eebb80a7023100c052c943d6728ea141c77d9878ddab461799c42242db17a8fd5e45f5598f508613c967a0596fb9da553b4202d746229c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023077b529ae880e8416926b10b7cf03aea8e5d77015264794fda3f09ee1ce52ef1ea7b156fb4cff3b0f89d91477971f4770023100bf555e222e996ccb6d285e8a9fbe233671c508709bbb3bce10a8774b6e1aeb9f9dc232e18f0b1dff79fa6f224f74c2860302047c435bb5006630640230457e390b4dc9c145b26739d1ca7cea14c0991a0e57759db6de7daa7910a937a5b4c998ee2c234ee428c3e4e4a2ce663002301304f5429017a2edd46a5d481d61c603b837812db62a8298219f39efb30463ba0d490de30d92a339b2e7d9ba87373f250302047c435bb500673065023100969e174ad3dc9a1276841054c7504d3d492b2c8370eba110edff8f4f00769085780985765abdf3c0e710b395605b301f02302d4fa6b00a251976f54fe3b59e739acd53f8582a462bb4aac9685a5d2978d2088aa73e1ead693f404ce99ae37bc4eb590302047c435bb500673065023100842c3896a3ca91aaaef54192f7089a44e3569acb05a42bf0bbf8bb059510c1d56aa20054bd6ab54e9e3bba9be9eff48602307f1da05149fa1f37bec9f4f9e89fbf869ce12a3e44c00e5255f2321851908baabc085ec46f6b3cf7fcb783b5dbe410a30302047c435bb5006830660231009dd0761ca833118943804a6405b4905096a421a5fdc66cea6778f5fca1d550f208a06bb0560b28f619f5d370ae700318023100cd717dc619ff32f2efd9d9f625e644ad4caf457723c53464953b753fc7cdeef41f1fccf1e2b000e618cd3de9865844010302047c435bb500673065023100a07ddb1bb20acc029b651a9379047aa2316929b48c5339aea5c119fce1177015d3abb1aec041177355277bc60db54e3202302ce7b8bf9b9f50fca5718d45c2eeb1934befa159c3a05b7c041af7a64b80f39356fa020d87620dba0ffe5a915d22c38d0302047c435bb500653063022f541b14cae2fb3d9d649a8059e081c41b530ad93c9e724fb099c4a27ec63b31ebed1eee244d4dfad2aafd3a337cfd7502303b441c1e3ddedcd60b178af5a67d5560504ac28f7527f369eed89c7ede487257c1f59531e76fcc155f7d545ee7156fc60302047c435bb5006730650231009ea5ae49431c1bcfb996d9137e2aae9c5d5c0e742af948a1bfca048dd7e1786738e7eb176d00955f3fd1883c549b243e02303729477f28bb86acf7b0848220b7d078a8f8064dcb11830e7f6288d954961f49f2eecbf58e64f29ef77fdd4131a797e00302047c435bb500673065023024138e98e21fafb24363129eaa600e6a31a983e0e7dfb17a5a5fd0e006a8e22757a515e5f98917ba1931b4ef8a9aa3a7023100e8f3b714f8b417c68533d481a8b970a5b3d6af5ee7165a03a4081ea02a1c597799d8199f22f9ab65ead3d0cd240c763e0302047c435bb50066306402305432c3c55280c63a4ff420904f1a80dc6ed417342e4c60cf4c7f93df56f2e9448fe7b9b369b2a2c18d03d6c09802a11c02305811a6686a8cc2a7a64ed57a4995da25a345ee954a35dd7aefb3f6e5674ab0d2fb0a74fd903de893a6c9b167677857670302047c435bb500673065023003ab85302655ec27348858660e5a047c2f38b8119adb6b5ea353f48c16132c420928b7dd9263e5a8ac4dd92e872df71d023100d1c54973b12a6fa4f657c5342b11d237a3c79eb3ab2d1a0dfb5660ab81087561c1a4da2b9ef360a894886dfc6a8887390302047c435bb500673065023100ffd5c55ea7982d6b3b52a2ac53e86279321c91b62ddb21dfda193d19b0e1d38d399c1ef4dfb43597dd0430b1845b231e0230263facbaab224bdf58097ffff0548c0261c05ea51f246f08bb01e776d04ef3d9b301f70d2f1683768f1dbd6e96fe4b4c0302047c435bb5006630640230535067698424e11cb980c25113feac9f048ac6af2f93b7186ed7b0b9177b5faec2e0a9dfe6f91ad41662d0c041893a5502307e3b7d7d46dfccdc4c31d87797e03f08060f474db053a74260d921980f809373452e843cee8ce350075054be63bd33930302047c435bb500663064023003c953e3f9ce3ec586876eb2f5fc231ef4992df0a787ed165485b85570c92bdde1b762b1d46b98709157b94cb7b977b00230070d8cafe051065a9f8771f421a7e871e2ffd4febc66777279e0f4aa01a32d0a79c98289a3d113f9e799f4aacd452bfb0302047c435bb5006830660231009c0b3ac32f573996a9fcf8988b140b902a090e8d6a152bd8fe10988d1412861221f6be1838027cfc41c13ecc427bdaba023100922541b1adff16302fc7c50065b6e4eb398efc59bd70c564628a7c10ab08418d3ef3e2d52394ec61c22df4490e5dd7c40302047c435bb5006630640230568e42f9adf04a903a57cb0e9903c0e679a0e9d98ca6e6c839c8ab043a86ad00f0c29bada43ede0606d8c1ada9947e4f0230311003bba67d2c0992eeab5bdadeed9d7dfcd9b58685bd72368595ba289f7c7a696ad1d375435df13ba2324d664b9b1e0302047c435bb5006630640230074b9a6ea7d671cb1026327223da3bdb84bd3c1ca94e44c539bb4e83f7b1d22f2f9b0f5628d4592e0c6c593d69beda73023020f50ed16c2c18308a87539792158ee01c3e16262c338d6a0470dc7a35338656ce7ebb96e24ee85526d2fc995916f0d90302047c435bb50067306502307b723fad79570f263e90307a80c683f23ebb248b6a97bd3707bc1c453e9f5ff16f9e30d6ac6e3343d3070d1ed55ef213023100ecbeaf0ca98d7656a2aa9492c6d872b0e5d4aa1a6cf4a14de0531b9e8e8fd425cd0ba1512c9edbdb5c1a54fe825a58610302047c435bb50066306402301af03c4307a04c5b0444d1364f5e8997be61c36d0db10de179faed1fb4c164a5505b01b97a7de9b234f31bd368e514af02307983fee0a85d22209bce3a74a1922b68218a8dbbb8ea1596ac0dc3835fec6847878d3afa993563aca3c394af94d57c9f0302047c435bb500663064023047f76d79b8d84d25e643524c5405ba2ac3bd25a28e6e84171f9eceb5bd95230bb4782c074a0cc9a7bd4ce176af21a57a02306de009bb2d34950adaed5f8511ad30fb14b77e4fb652610ad368cf4dda98338478fc33ee66f4173781827faf0abee4890302047c435bb5006730650230360087dbde8c2b626333308daa96b74ce74b2ef21b7637f76d988a127ef532e41b10753943c3a88f55e9c81936dfc496023100cebd69161056086a46b19dacc51c2a39c01532f8eee8af52f8599eab175346935057d28eee94545666a6fa04fd921a620302047c435bb500673065023026d7794dd9b987b55af19d67f427e502277804e1daca5a0f405ac1b18042a4e7dcea1ca071deca1f0337ac52d4a090e0023100c2ef0ee855ab8b7fe76f4de3df12c30422e48b409ec4e6e912f62387981eb9c13fe342da537e54dd05a638d1b959717d0302047c435bb50066306402306569bb02ea03cf3b7329518d8c3e9753115e03fd69f29872fdeb90c84fee344d5607b9a3d5c7676c6e94749a3dca461e023041ca81485f1d4f6b2689b147e6d70c6b35063f6599bbb248f56f91d2481a5654bb409e9d921aacf0e390152b1b7329bb0302047c435bb500663064023071529710cc4d384a090d9345134878f9bbaca464597a2c66ce4e4c087cb768feb885aab07d5418d41e03077434ad9fca023015ce86f2f9c7e87598ad99811fa4c0ffddbc07f8e72d8d17edfd407cab14b25925e4ae24374b235d06080351e217848d0302047c435bb500683066023100f5500d7f2e47bdc7243835e7c33276657c770b3d90fd9f4fd837b6f68eb6d0cb58e115f5d99057c9b316814a96cc8ad0023100a649e9a6965c92aafe9e1ae185cf5aac9955c9f279dea1b4ab2aaac9102b449d9889ed94d22c7c8bd082664dc28cc9980302047c435bb50066306402300e8f0b4114340d61da93cc0c00e598ae578899ed1dbbe735b5a3d077aef9708fa2265b9dbbcb39e09cf920fae7c565de0230506dd630e48797a2acf105a90245d31c012dfe547cfce1c135b19704f9168a57b601f70155cd18b1437727d63f927bf30302047c435bb500683066023100e3454d64405097ed806c8f593a3b7e6ee151b560e7cefdf90aaf76a5825e558aec00a6b0606b124c212e5bdccea5062d023100bd94cd811efd0d0d001de78d4c9f38deb897e4afdb7fc16a7819e5b94143a2973388c1d58e481000b2a1b218d4f26a4c0302047c435bb500683066023100d3f3fed3a8d4a35226b55941681ff521d9c331fe80471f62d22be641baf48977939b247f0a70094c84eae4076c2eb18f023100f6e4693a8ab4776f3415e8b4958240ce275a6afb58fbc8fa00f7c54247af04abbaa5435228e00909f5634cdcd9056c5f0302047c435bb50067306502305a065750c85685929804d7ac2721d521d0180f4770a19adcdd2f8354943d8543608f7a17154151d086e4b8be5a58c7b0023100f67547e93bc81f743b9da6526b46a9a7222384ed8e0fc9f9e557690ce2e31826c56921d19799ec46de8adcea3a977b630302047c435bb500683066023100e8e38d98dba9906c307f009e7b98173ad49fe87ff65537ab6619d15a96580aba4747fe9a6fb60bba1b0b3e227a70628d023100fe0629598987db459120b5b77181e3942f8974d4a099eb31e633239da91b2102c908fbe5c852eb56781eba166993e66b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310096096c8f424e9a54fe6511730429ece5d12f8b888e989d24a51c10e871d332331843bdf47b47520210010ab570b65ff9023044148e0be6e7887eccf864df4cd1f4162f14264f272cdcda1739d8758d40bc3e060f5fc2ec0a07bcd788bac1de079b230302047c435bb500673065023100e16d21c59f76b4822bd6483ae882897dccda6c8fe58e35a2ad1a17530d09d94a75061b9c9c7bba7a11997b1d170d7d05023076a99546757d046b11f5c7d6129c38ddff6bba8b1fc57c63a7eb1745c6c69038923b603f0391ce596580c8fc57e487f70302047c435bb500683066023100db74787d7a53985e7fb7857ec0b04054bd796db5a0cab0a8f4c0fa73240a2cb2a11a9535e46facd3d1781a620a403bbd0231008d93c44fa822149a9ee428918354fbe03aea09515af37646190ac05e8b863317a205e1a9c37cddb3a8733b89626e0e440302047c435bb50066306402301c0b0377229d68f8caf6f68deaf07d8639fe908ebb5c27c0a1a265b8baffdd9adabfbb35eeeb1bb0e8e310b75b7ea10002300cc978628d1e16eaa062d59fa32496cbcb54373af0fee9dddd04abac4414bf2b4c6c1e3091745894dbdd7e16b492aca10302047c435bb50066306402306a2a916c525e7f42598a5b19db2cc03032bbf80603d6490c584ec8a1cc626715f9624de7660af72fac19f096ef20d56502300d18f5be3e246c44e0191a697354cbbcc252dd9bb7d1fb57920aab250dfb16e133680753366d7a4d088b32bae5bee5ac0302047c435bb500673065023033153872be40d633673ae92a573af934bedd5cb9fb9d6035320751ee40412154f2f91493ce0167957fec988cf9d9f1c002310097c64c004232ca422923f44ca4fa669f04cb1c872a38f60993f08c181354980e3462757b271239c56b8873adba27ef970302047c435bb500673065023100bed197852a3d5c021a4173dbd16f7dc8d3cfd24bd73bfe36b456c2c7efdd31320fac8494c5caf29e100fc09d573a01c7023015edd6382124bb4d1a994be41b2ebcbf86b4cb155eadb6d7a9571760b0c3daa3fc8a176ae454d73988af3a054e8d7ba50302047c435bb50067306502301113604263cee107a9c2aa3b91d2cff2d52a4d79e8c88db5a5bbff3b677a006eff87df21efa29076aa20a246c521b77a02310096efcd5cceb0e1ca3f4a0cc267097f445a1962ad0362e3a8f53b6890d294b7cea636b59704619c207e10ebab3915990b0302047c435bb50067306502302e3b08c5adc1bcfdf111a941c69eef5ca14c2132fa0ddf34712afec071250fee357038d44061e0ff483a2998f7b1551b023100d1006b4ac04ed7d22329468d6bd315498d74c5451ececcb5c8c5735dd9c367603fac099fdbae614852df1c03993183b60302047c435bb500683066023100e43e740d6d2ecf743e9fd0e7419ef091797e5861b4b7523db1130968e4b31062215d5eaa27b06901aa1ca486d180d6db02310093b278481d980991533fd78ad54d2d9a1ef9a3d3cb362c9a68300d0717793bf46831cd9ad1743b142e3a52ad5df3ee4c0302047c435bb500683066023100fafb0b372d84135263f056efaca2aad5da8a1f2e6fea3c127f7e2bb66f0eb2f770b340015773efe9e8bb6176686eea3d023100a8eb478e99e544d45bba829ba2ae2c9dd23f3384e47aafe0fb0e113d2e3ec12ae68dcd6615eaab791a78fcd02e52ef050302047c435bb500673065023052c4b1cff95317f7e98ed48b7ebac4dfbd41a8fd76ace77740e0f33ffb211407698b57e0870aecdaa04d0f38147d55ce023100a3573f5664645ffdf9e0cb20705838e26b11dc93f24a4d20ede947af08158d11cc7668ec6d516c51cd158ebf5fa236c80302047c435bb500673065023056bd095abe299969cb41b3458b828de0b86c7d3ad770e4e1549de922ae971a29729b9f4c9012bdcd277a58975e4e75e2023100c22d75e8f0ebb195b2b9ddb79f6e8223241ec43ba712a42efdcef9ccbc1078eb0186013aeb5bb4c32ccc22b6395049b10302047c435bb500683066023100a0e0ee97e21c92c8f74b6afeef28ff02aa1fe8c8253806ed8cedf27314b5e65ce0a2b6ec4fb2ad828fd1ef4fa185d020023100a020033d46b4165cd2cf0a7be224cd0b7e89d2c78bc69b46b9999a62847c4183223a86699129ee01b8b83f203ef8cda80302047c435bb500683066023100b9cd025b1eba7599648050f5dc6d1292bdd078b4d460b93e2f049f658868d99c8b1ad0eaab6baeb2f2e6402e084ad6bc023100ba043e6d0ad8ec90915b55f1c74ba7cbc8ae6c52eca06b56eb43ed23aa963694c84ae7e8b919010b4c7f5467011c40c60302047c435bb500683066023100babf99905bd9f4a97b5fe725f64ff04b6cfed8c927fc9bb47124e2c2012576a2d2825239272663ae3af7afba1efa4248023100c7a3461f4124ba46ad2b8711ab1d9e8b5f96c8a8a1318f6d453f0b2c0b61f6440b265fd6e147229fd313f3cabf6b9f5d0302047c435bb500673065023062d56fcacffa67b9149f783006c00c467d47e3ff2bb52e25b1fe68c4bc2e05e754a4978061b1a949755d507afba68ef2023100a25d67b1ff233089dc5d190f26e2d3e5deed66ce1dd037f2f2d98196b11af2228216058c0f9964f0acf6833273929f860302047c435bb500673065023100ac9fee108d6bb516f6d728cba6157639e2bddb79218e0b2cc93aab1c84e980e50c7313f3d35fe3dbccbcd825bb7d2dac0230747841a71889869ab598d5643385bab11feca9f9160043a1e97a35c548445741c231322caaa626e4810e9c7db3c7ab0f0302047c435bb5006830660231009ddde8d051b0a1436ea472fe736e5930f6e7176b71e705b3689a09c6efe20f5dd40d8436fd442fa594a7f3066e5639e8023100f15922b5a83cd09abcf05000c396f340c12478f0cf60b332e5718e03e31be2be0d89d14ea1c38a822c469525d0d4fd900302047c435bb50067306502305d85b4368e781f2e66a959e9fa5a11ee1c895e1492cbcfb4ca320b44f6ccb2ef06247fb239d96d960dc6ab778b0313bf023100d0974d0c07351fa549b6efaae4519bafe76290fe1499e046d526fa3c14dae5735c5764a03370cef8436b4a6c8cdf403f0302047c435bb500673065023100d99e0e058a60752f8ca6ab583333aa323668bdbde963b82347f6f940643588003108e24e9dca5631561d2bcc529f0512023034e94cb5e436ecb77241fb99be5569143f04441b660cb9b3fbdd86c37b95572e91fbace465bed8d1355d6ae4f73023b80302047c435bb5006630640230266dea6a3288532fddbd52588574191a08f9603786eb76c54236d3b18f17ea6ddac733aa936f50951a8559ef442ed1780230592f4e20b4087309de77bfa4d421eed161da362317dca7b82cc8f656eeaff242d0c09caa5ff13786d6c8e3e44cbe8b690302047c435bb500683066023100f1955f7b3b60aa78b82544e937457fe72262b2031cb4e9a810a39654284006fb36bcdc76237523a30e19e822153cb6df0231009b0fffa16f41032661a94a2b277b6421b3e4fc2cfa0699f497c904d7fbec07a10a1a52d71335989abcda2de267576f880302047c435bb50067306502304e80000be5186537c65e33791db70dff534f916cbcc3d06b31995c6a9a363abe3903703cbf8c143640d067a637d08290023100ecdcbf738696cc479e36369c73b4da0222e26d0b0cd33776bc9609417965f747d4fcf434b7399a30225a6d04075d42730302047c435bb500683066023100e7395bfa167b99964b1cbe58bc6587f59a2554ae14573158d63e0caa2b39c74353626a6330427b6defd4280477a20370023100fd0827f7f04954601aef081184ba2362bbfc573a47a8217d7fb8203f6683d11d505f2d5fc78ccc93f5dfe92bd70290c50302047c435bb500673065023016e9e76fa117d5a201e60824e5ec22ecda3aeea100e055bff0eeabf326519eeaa6b2c9afd7ba3438298db6f17b068fce023100a7b7295b2920897d1ea15d9517421134a2fa28222e75d8e07ae14b07a412697f9f03a6a477e8a5177ae6b65755ff95170302047c435bb5006630640230716cb3c7859d15d5cee23e235571a94c8c3da927795a9c0acd21b5034882fdf3fab5e4720c941946422f6633eac0eaa102301dd951e5951711d92b0e2bd84adc1593a779a3ce3bcfde0ed9dfd184a65d90dd21ba8866bdeb7038a32092c5a6e05b6a0302047c435bb500673065023100cdfa0d7f3f4082d45a97331798520b2eb5856f4245f851f8d46dc1ac31a0e73442fcf3437d02b235379f4b1ac8fe3a95023006d0d2fde723307c530a618407933d6aa77ce4477d862ab84949204498c7558d9748016129a8bd4edc3667c1b008c9c40302047c435bb50066306402304a8bf03f189c88ed4634e7cf5b65425f14421d3d16c89a812b728ded2f6fe20f22c3bb7643d15ecae1f54ef571d527bd02307c7f84044d9f39fc8b7f1afb9356da04ec9efeb577f0373cf7c8b512f2bd4582e1f2c876289345f5df1bb98e8ea81f7b0302047c435bb50066306402307cc0653f42fd042cc5995bb92a0d3fc799f9522c9a3c7112881eb54695b47d3faff734a495d3e8bd79de5b489940585e0230029adf70c1d30167ca9b7e021d0efbef086a5b74efb554017c032fb39dfd23a853b2364c6cc1ef9ec138f48c3b97ce0b0302047c435bb50067306502307561fcba59cc02e49e8754e152d5bcc2e028640f02220150b21384adfa997ead3d1fdfe9fbf0249ce73dd98e793d5394023100dca4a046270438d98ebc3a3666819e9e4b5808384accfa52708a43162be1230d07b84cba853183a8d9dc5b235b84155b0302047c435bb500673065023100cbda2843d37249c4118bb74d5c31eae002a96fa256c9eebb2db69ece5e564dbee22a3e6b1037b79589e4ec608340302c0230783601deffdb649511b30d941462811a281931dbf6a53874a23ae1ba5d8b67d27cf2755c465481a9b85797e1e421263c0302047c435bb500683066023100f8e0eb4d20342e4bbb80ff3212942be3c05882139e13ff2a1fd7a5970470bd08c3d05dedd3979a267f4d9c55c9f54d460231008c34286de461c9c6009be4cfd3f58528cad175c351fbaa1298153b502e7e433b91a0572dab8d1ac2db77b9dea5eb51370302047c435bb500673065023100c28de1de6d13e2c7b68dfc0219c3ba6e8097317990a8b53744bd6dc412d7b4cdaa001b6cc60ba323ea567301fc56442e0230033787f9548019324162be93625bf5a94f0f003b6ecca9d75e6b6a06b9dfe0fe7d72fa24c7079cbb90566190f158dfd00302047c435bb500683066023100c5474aaebbc670e96867a8c6d55dbf34bb28a5ecd4cc321af2f32223b01a47a1e532b3d373a225317818672ea39a9999023100fd2b50d74d4b33ad5dbc39aa0125fd4574e0a3783440275e5de61cf6144d21edcca630affb20f5c072f66b68462505810302047c435bb50066306402305f10b1f73fbc1d1dc54a6dab62d20bc568c1b1efe49bb0f48ae379028343333dafb280d1ed9a52eaf98006e89efcb94e0230571c69eecd4560c67e4dc2e8d920f694db9b4c216066e4d4298825cdb95cca5bef3a27b5e96219ec5462cac2dd6241990302047c435bb500673065023030e04035b681ea9c830be78296ee5995a219a1822ce8626a15b012f5156e58e1a593c2277f0af036c24f13fd80e4760d023100a384886b81696fd56f601adfe29b49a363948014af218f6b055afc2c69372e2fa5917083128d220ea6998ac9baf3c4e80302047c435bb500683066023100bb7e03285caedc6e8ea10c7852d71843187c068f3da1f558ceb216bffc084567213d47bc136e92c56f80aff43e67bfb4023100e17b4dfbaa7c52397e7e1dd71743beb8d92a08c6839a26174463499d80d7170c1495f7c8825add6a29c8e46c63bc927b0302047c435bb500673065023029f858682a0486b05e1d74ca1a05a08e2ebf9e4e7f3fd294befc936199b1c130d29582c17a0ca326b87e6e325ca59dbf023100dd72b5b81e8b3b38e84704c3424b2201ae9e447aa064a7fb75e78ebedfc4f47a506b77a344c6501ec5ae7d35dd45a3900302047c435bb50066306402303632a9d4c1973a65669bf21012559f5748031ce08c030fc6ca4cf1515ee8ff41baf583aca580dbb675865de96a6ca79d02300d31c1dbbce33c028bf16d2a0754ec0f707be0b2b3d8e9712555f953d051d74ecd687c62ea6685572ecd112d4f6afd340302047c435bb50067306502301bceb669e88fdb43d086c6c2e56fed0d0f33537b8bc3bc2b3af04ba0b9e651c566708da189c67fcea9319dde54b80ce5023100afbbb1c380b2b0f1f0eec14410d0d8691247ae8a388f25f7f9961be39325109bde66f700b577601e567a23ab1c1f83860302047c435bb500683066023100ff5568dc99b730a476401b4516990b5a8c804a5755306a8eab67ab413bb7118aa2295da2ed2e15011fcb97d1dd679d54023100c0fd4dfac192a8c0e56f900557a8b3fbe4f66b1dbab6bc0a79d8ec3cc904a305002455c761c1881934dae7c603eae21d0302047c435bb500683066023100d4f39d33f199bb3bcc36b9d249a0fb2759d615ced57a45f741181d830a9fc175e79e6525c950ed36ffe8f32272452ae40231009165eb2febfc3d496de74c66884fb4777a385b3fe0fee1d47f530375ca4091b1c0854f936aea5c8a523038281dadce960302047c435bb5006830660231008928799ecbe384764d43e2fb73fd5e91a3943b2437953e2a19e518138800e3a64771ac750d641c616bb57cd81bef0715023100f8985449a1b95f17f18bad49bdbe423cfe0ca87d6af57d4d350707088895eb3ff5724073cf4d047ef27537548e1862310302047c435bb500673065023100d8d01fa535a4a4bf6ad6a75f2bca057678e83c5f8a49da109b846251d3e2fdf01bc368c646787dc6fd5d6964fbf6ccd002301d36761de452418192edc043b96e31d2398a7a4a763db9307e248975f7b97a682d551acb7e52be009acd12829f1372e60302047c435bb5006730650230024a8d7979db2a0279bd1ea68e86297d37af5ac3b1469af80d22f677eb9129aecda0aa8836fcc468dc1dc81453182bb30231009ebe1fb99afeae0cb65e033f5814a14f85f4f1a1d98a7300dba1aed91a5fcca0455cef9349f53306bb30782498e27fdd0302047c435bb50067306502303f9df566a8e595b1a0a04f9551d27e368c19536fb95da1e56e174732d664e664df7a7d0534eb39e28c8f812c7c58b50e023100a7ef7c1693dbfcf51e09aa620e057dbf620579a8c573192f575f93848ad4c2e0bedccfbd694aaee147261c1d79f17dd60302047c435bb500673065023100c5998c8b9b6d5227fddf9b964603e39d3a61f86ea9b867f764a25a76c3b8d177aa0d9ee9549741279f89ebe4f5794dd002303089c3ce45a96ba5081a34c79c4be4af290f054f2d2366928cabd17c42541f9675231e0af00e846d75e282a2f797a4000302047c435bb50067306502303c5a747b38eed88cca5c0a8ea9c9096ca09ee6ae0875e8229d1ef7b344a294e39c3e56aebc6039961c28aaca51ec178f023100d233cd5c0644906043bb2ec363d67d25ca435c68441800d3e6955247663a6741fca70c3d65da106910fbece6f00fb1840302047c435bb5006730650230631dfa62401fdb03b34052633e012ee89cdec6b244a70fc1cd7186327c532f18cfa5c49b0a515f40f5b9113c458cc69d023100985e51a944e573c6b61e522d992ef316653d5f144648bc09a494136c98d19854a3e3d98478866afcea8dca3280f43da60302047c435bb500673065023100a487a89210c563b92075fda571190f25d071af4661f9a9a09e80eae6518927293d1e1b065568c1dd0254851dafd6197a02301e3dc1692dce6568fd8d88621521ab2490a74907f5e1a24cddf5a85e6dfbe3e89aa9afde433dfae4d69b08c8c15d976f0302047c435bb50066306402300925902cd2a811b3e6570c213c9267f679698c1eb577967a4f788b0dad2d79df28c66d9297e143198285bdc11ce526d202303ab160da97b3283c2d1059ff04eb4bf29e4c79f754bbe66085c894efd83ef2116e326fb90855752c9370f902a86081c70302047c435bb500673065023100a7d8628544460f61fbac0c39cff1a2c223a3d9e61ef765634213e3fcb09ad0d26f15c4f40be166876d636437956b92620230785b3230212fe80b9bd946667bcc50129f7b6970ab5763188fe1597fcae854f9a58ccb500001d2a97cf38ddc340804af0302047c435bb50066306402302c89edeea16e239811d1f63239620d30d64f7ea486397912520a0a6b6a48beea04d52aa0218034cd3936101ca66c367d02305d91ca35f3617e6ffcd5fb28878ada5609e95181afcebfd9a441d94745bf3dac3af9a4d6227bdb55bc99484dded246750302047c435bb50068306602310094bba0e3aa31e00f6b77b6c1f84585ffb213d553176364dd258cfa4303f1b86490945b0d703bcc246fb30212fbc390fd023100fb89456629ed688d99d4348d40a8bb978cd11290167ea295ed77cab668cd4bec52cb1404d4ed10e20c40a88b056e73ba0302047c435bb50068306602310099d1fa4295892541e34ed5cc7a02539dce06e78d976e861e63d68903be916eba519dc0f08d3d5923e94fdbabd996d398023100ad84d4a2aa79fce379c9095426bbd06d3964265dcbbd3192ba1fee11dc04bd723a554bae72102bc5696281cbb6de8de10302047c435bb500673065023100dfd2889d99b930489c5fdde80298b691236cec693f93533138b6f56e42e9c65376968c6af5b68bf47d5cb5d31950ed9602307ed33095e05e5040a2f8dfbb18369227b855ba88a749c100799b06400a12acba3c3a3bebc82e94548cae3efaf10ed3260302047c435bb50066306402303bbd416ecffec6d5f843c602971c356af88f3b28a93c596da6487e894341de250162e030e76a12af04906a5dd944c7d8023024c40f996b50a11ea99851635a444abb8f64a3ef8bcb1bb80c762a046a45052f2e5211b00eaec70ae13f76fa09c641e40302047c435bb5006830660231008c4ab3a3c8f2c361fc2aff69aaab847efaaedfc3ad2938b8dfe682b947117817f7b40f1e341e67d75920ed27d78b97ef023100d5f98dcb5141defa700a76252fd91dc20df8986883dcebde15cbecd38a1d3a3089296d4592cadb105794c6d3e4e5f4b10302047c435bb500673065023100bb1c355ecf1fbe104d9b501561a5bf39d33a8ce4dd7ff4c8afc6e757bca1acaa283ddc27c7e304ad0b746c6c3bf315380230654289ac7aa735bdfd1a2b33c764541fe019c3733285b73b7d69a0a24712f881f907ba560234bcd05cfb5e5cac75fd1c0302047c435bb500673065023100c78191a33dc22d53d710a8ceee9c91dcc0dc3b8d1e129abd10179a466f5781787adeab911c0d15abc3e219c4a7891be7023001b9aab3b33e3d3104d6030d6f614b1817ee4f79d1e1e92c25d7837e6d447ac14ae87b8d34e7ac35ac7e726e041de5680302047c435bb50067306502305229cc9524ecd93962c003662662f56a62a1864ddc34c2d2bdb6a7024f1e52be3b9cf2085aeb369c4d46372e6f431a95023100b8381c536dc6cd2c5d8ccc5526c956424cfcf152c8d368e9722579c35a2225ed921b94df633ffa3fe38505b5cc4ad1d60302047c435bb500683066023100a4165f8b6d940053a72338febcc27ac1c3159e83a04baf44559c977f4f15bd857f144812730a328c937746bdfbf29972023100cd7ebd528a1f0dae055b1a14231a275144fb7c88305cd7c844434ebc06dddf2d2d3b40bf6ca4dbcedf035f10b0ce34550302047c435bb50067306502302a6fafd4bc640a6358169972746a290b81dadbf43731e4795e08828b4e94cdcf27eed1c1bfd5e9d8ea38ef4bb368d0a3023100f43524185604d35adf8000f4a8bfd126f30df914399ea5bdd0f8c4e11ad6c77e73db9d8e001634f5386843e1144048020302047c435bb5006630640230399960211ac92cedbfe728a01b90059392913ded1eb470f75542efb25c751d506d53ef2f63a79d69410e0eaa42798c300230619438d537b2de9b1aa7e690de6f6023a02ec1d4cba45ca64a67f53a5e563f32d45bea00d4eef51aa80b7d92e23e2bfc0302047c435bb50066306402300bb4fc3117ded5b760c72d5588991d180a11558889d66577f5b6a542baf05027f80915285a6f8cd9862c020eb3a863bc02303bf0363109f673c032cb0fd44bd1e2a849472201ba83c7bd49f00ffc970dc3a350044747b8d9363f5539950a980b251a0302047c435bb5006730650231009616f1908cbf9e718e0af512dc46b3315edbb927410a6afbf91925da168b22651dde2795e09d415b665f72b3344cf9f602303cd33ad0a675e1f2bae361845e5b899a58a22434973ca6e51dbcc2b3f7e5647428f78b9ddd94438cccfb791d8d8c4d230302047c435bb500683066023100995fe616ee5d0f0dbd1c718b201df5ff61594075f5d95e77cb7ca0be0ce0ca9a3e16263f9b5b85753e97e6fa2993d77a023100d91c31c89f6e48d88efd9fa9d1e65ec924207e230d107ecba9c2fa794c74d2aa4cb9eb850e2589d36cb4572c0a7ba4580302047c435bb5006830660231009a6d9ae0b19e7341c3102913dd0c2bcec43b038c64f1348a53976cf5f689967213b0f416b15242102ddb97e1af8bbdd002310080ca669893518d3bca2b6eda9031f812d0bc450a6b91e49b80a0d1596a333b51caaf3265f138fb06a67739e2c6ce2e8e0302047c435bb500683066023100931d231d3ab4fdb0eee19776f650a890ee8bb767603ab83ab5b1b96289a905289b9b8c4e16bc97769c8d65c71d1b3f24023100c1082af169e8238bc4dce78a8ecd2f8f09ed28fa6e004bcf866e4e9f3090ebad632148aa31a00f35ea56654b7c18d70f0302047c435bb50067306502300703db0d37ac0b1eb5ec79f0c4cbe9846c4d7d2f1274dc9ee86f3ba9857e198940f2d549863f1eb4646e2fbadfd1282e0231008e8f87731531414b541b8b5837bf712d0dff91372793fe567dafb51a5f86f00189842959c99858a9ad6d4e2ba15e5e470302047c435bb50066306402301ddb5aaeb30f25bd5649552467baa3a2bb2dfd1a1ce6b8d938d37dc541659cf098339a216d7d03a6c43f93ab3c983a5002305924da5ae53341ada1998101a305cb929b6dda7a2d722ee05d1f4590b7be6a33ba0619fd48ad7c4021511d38fd9523420302047c435bb500683066023100ea4506701c449fe118c787b23c7c7bae5368d2fad2c04562b99a5631a5f2d92ed36b41b9cbe6edd48b3dbf2fac871706023100f2590e2ad8414216d36d14ba44f3e462dc7bb8c72c088c2a646bf8c829ffe0288d0bbabf3dc22fd0e07eaab9f4e6b5270302047c435bb50067306502310087a6961b51477e5616704b87d9f5af13057f6bdac7c7a18e0852287ebb57688277d7f7bfb735856618a9dd7e77f03d4f023024ddde257c35231b57a9811092a9fe2989e6a4fc3a60287f75419e9e4bfaa221eb84c24efec1142db46152f61156dcfc0302047c435bb500683066023100c1a4a0f2313f1b428df38b116e8938b0895662674b84b0bf16b7bb3b3253c299bc4244c5889c21b42914c13fed709372023100d9ec31ced8dff4b1c1f128dd76e4d68a4dca6c2f357727b04e1a8b9c6d96105b84b0de2b480657f48eecbe2f312559aa0302047c435bb500673065023076d14997c01bffe08d6293086e3d850825332b9158aa6558d1242a1313bdb546a71330ccdded5c5d419f8bd33b341278023100bd49c7d7c1f9605307ba6ba9385e01ac3098df84da843a68273e26840e8dd9f26d285caadc7b188d78a094af4c645d1c0302047c435bb500683066023100c572afe3a12f7f8a047a51df377c28db78a76d74ea1d38ac34f8f4ddaeaccd9061592be9cdabf508e3e9a7ea4b3d4d90023100d2d03f50f3ae4829ac0e54ba3421a4a4badb07f7784bd6e0498a0f2f080453b048e44f971dd17483c0d2a4999d7d463b0302047c435bb500683066023100b8b8b036dc1585f8c8efd28f7dd403fd45ffefaf5fcb028d72a24b9b9fa8fa11daaa0b0279343d7ccb72dcc70a95aa31023100eea2a764ce24927ddd50aebe26bdec11d8cb3a451915e9c961f0288e40e8d66760315304635e0066dd3df73ffda81b1e0302047c435bb5006730650230525ffe0d4c6a8cab6292fdb6f51260074236d2ace111dfa9c299e33f4c0a78dfac083f8b49f7a9503a91e46f93e98d93023100fcdbc8108753c01af151cec4ad91594da50390ea664403098760f336e1572953ffa20875e5da77daf18978804585d5500302047c435bb5006630640230134f882d466d514423bfe7d0cbd6af324379de750569111bb3af7b1edebd48a0a38390368a57a36f06650e9ce549ad9802306d9f844ac1797d6f5d398f5848257334a0b1994760a759e73c1258c2c4f6026b38ab6ffac244ca130487ecf311f902c10302047c435bb500683066023100a86c070bd88d708f7c964760e8502a1c049ff23401349f61a475ca0fce1ecbcf2afd92dde7788265542d0b60bcd69184023100cc7eefabe89b52a51e8e58df1d77e4da887003af856879656f10bbfc62f43745c1f3f720bdd9bfcd8a85d428a5d91e960302047c435bb500673065023100f74dabc05cdf895e3cfcb711d4de87c89c2adaaffd716cb157e742a76560ff1169748b5cdc84398ff4dc2da2ae62ae4e02302d31fc557fe613590466ac483405b18c45410ca101c4caaa0fd2cd573060780be04708b9d170d2fe4112d1fe2189d75e0302047c435bb50066306402306fa2e11b098436dc365957edc17072f0f6b5a6e334d7de9148b3c602545cf2aeb0caaa6d5ab5dc1e1218888d5fb5cde902307615f0fbd6a0bd2a2fb1cbfbaaf67d19fdc21484cf78a048d733b99e819d019ff0b5714ed8326ab03b09f3574638bd1f0302047c435bb500673065023019fb9614db919a2b8c967912e4a488379a8fed5aa8f44c907c3ba0b698befa7e99002e4428a64907df9071a8d2eedd98023100e300447a248ee295a1b92b5fd07665d5aa5616a879e78d87eb12dfaf44bed28e8ee2fe9507f9e0123fcc4cfbb13eb9940302047c435bb50067306502303109bc15a9219819760e9feb4b1f3d1b46740689ba00c41d8784885e8ddc52540a6d7658f72c3e0035993f622c5c4fb702310080b06d66c3b35a56791df9e17d084ca6c8c9f841d961ec04aee8f43686f47d88a34f035432bb10cb7523c50558c99cff0302047c435bb500673065023046feb1a7bf8df2093b2bd21653b1fb583b2be3665e04087a30e6b7d29eb0f9e7c0267ce30871dd7f01fd07efbcfb9537023100c46215269831a04c57e5ff19ebdcc2085818e79a4b411670540bb993602374ebc4ad71e240df3d661e150aa40561797e0302047c435bb50066306402303502beee110b26896e1e374648f222e1dca472c71f38a871790817d34bd4113e081b2070a288133b2614a9078ed87f1b02302b9dbf051767ebec3ba6adcb2f9f22aa1edb3fb6283d9763761043986da9b09b2096f728487895aad3217dd8a77d68f70302047c435bb50067306502307b7bca1d14c1ab5133baa9a6c2726f116f3a430a961ca17d57ba79ff428981048c109869b28fc03c8bc642eb9aec23a202310085497010c7283a948998c2e7ba0da9b1a6936a1634c558c415db94afdd16341865002560609fa55fd0bd697bae7380910302047c435bb500673065023100a4d4f31ee7c83055c2892bb7b12e1aa95ca5eec0293b67af69b1460a5d48d65d8d381bf69fc46b90f4ba6b65d19fdfb802300dfaffc9178bfd421b8faef4dd2d2c297b65c5bf5f571be4a8f1b7cc76fcd9441ed4b780c35d439857310455cdf16b920302047c435bb500683066023100e28f2d139b6bce4b6376c3c0a7baab014a6c16cb7b9f0f95941ff4e2dafb99c6a3370437cbe5fec6c5569506f49b83d8023100a7a921a605810d9808d01fe7cc0cd2105dd8c8db712c5ea9bb8279985d89b7327384058d623d8ea343248e1cef6c34320302047c435bb500673065023100b529da2422910e22dbb14d8c1f91eab75b2dd4b421ae5b98f6b68a6a0a8258be4eaadbac602842a328cbdf3b2430af7702302199b8cf35b3ae09968af4aae1c5b3f29d20c02318d9e43e6479d33cf97582ea3b9588954f424f39de45bf4cf50029360302047c435bb50066306402304f0dd8515b5dd4b8249d19e5a72e9e7c72c7c9a44271c38877183a42dc0c3d4edfb2916d24738b5eb766dfcad45db76d02304cf28bfc477ef2365495ce275157a4d889eef3802c546fa9dc51198b5f63465a4ff33f24adaa6618008493837c9eb4aa0302047c435bb500673065023100d6701e2ed4be9854ed06fd7d9caa67450bb6293d925f1343d496d2b255c8e8c066683138203365e9118ac474e51295f402305dcbcf92d275bc5da9b7b2dce8827a34a9b828af154035938a4531996085c8ebc622cab81a30f83c90eda4dd7a9f6c4a0302047c435bb50067306502302f95e79535e7d49a37693dd6c3875b3db4924d084d3af3d2dddcbd4e6c3a0977ad69da2c8d62502b39e4f4d78981046d023100b86441afe391d3d4311eaf3f978a44a841a12b4e25776231bd4b3f8b953f6b0292cab8fb59164756a6e06c0d988f1aa30302047c435bb50067306502300e55bfcc80739ed79d7399c504200ee241cc0c440469277d94740692be64d2c2acacbbed0b67d05c41c216b1a7c8f255023100a3146c235770bd6127b32f1a7baf41abc5cca6d37774326c61b949fefe3fa793dd9d33cbfc20191ed791aa9f6d77b7d40302047c435bb50066306402304c9e1607fc4dfb000317a6981026684f9b471168c648c00f030544d0d0a40bd920fd85dab29901fe50334fc77c1d23dd02303b11949678d187afc4433d9f16d07eb2cd97a10e67d2af6d13f0903642cfacab43b2a1e27f2e33fda244d05bc8ba514a0302047c435bb500663064023055c00eaf85d637f8e467c9d4ef935c4e89e2c1eea12d8a6976da743b165b2d422179135aaaa62174d9fbb6cc37225407023011fbc59beebf1ee8b1aa1a2de86142987ecc1d6f4a80f4a2bc263adbcd110ffe58738c5d04ddf367bd53c44b5947e7ad0302047c435bb500673065023100fb662be32141dc87271b11eca683d9f3b9be00ebeeaf7dcacb987c157932ee0aad994498745b054552aaa5a9d1a5f7410230768a48f3163403a00699dbea7da430bfa7e1fdd2c402e4516fbc9e5a058af74bb9e9101a3150f597fac68ebe10f02f6b0302047c435bb5006830660231008a83d59fa4eb781dec9f463ba68fba6e75b7cb79928ac626852d9f84f2aec631798ef0bc4bac82b91dcb43c2704471a7023100f94a6c63451bcc7e84a18cec63b69b729402cb0dd1f052a56a9ce176d1e9bb1d24d68ebb89f072d0c9df76f6d13d31800302047c435bb500673065023034e4e82feef14f3940a4c595d37196abdf32d52c57ef8186ea6a7f7662177cfa8d2c3738cdfa2a36ade2d5b364c4cc3c023100f66cc366dcd4230a6bd39545aea2825ddb52b2fa64c52cd9fc48547c07364e8ec43558c79b8c6a89cc8e06c9d44e4f150302047c435bb500663064023011ec8fb67fa22c03fcbc6f3172ea4544c162ae1016bf1d14abcdd940fc58780b42d89ef1eb85151489d3c835af3c173702304295fc7e8fe38e4b4b0994c06a13ba7d1b5b541ed32c7ebe614b73c0c444267467e8ff88c07a674b2c8bd7b498c11d4e0302047c435bb500663064023078b04b90997bc862acae12106ff05e6199b830da93adff0041444e328d34233963e2250d4fca5b83a2a704602743c4fe02305062baf26c765db5f7f48557beee9e9d4b09cd0ba23a65e301d219c3419f6d81518356779c1643b1ef1968ff7026776f0302047c435bb500683066023100d06fd58142f53c7d15ba7f74a3b58da30a12037e39bc98240d831b0581c98520cc2ade1e3c670e1c052f9cf28f2055610231009b1cc742ecfb09f19074c95f33c4200d75b6b3ead54fbc53b1867900cd68d2ae58669362da438ea1a7696caaae177ec30302047c435bb500683066023100fb03d06e27d8d712baa2ad62df079a00c2012ff4ee0548a1d619df269d3da1d43b56e48d288f5d43eec39c4613105de9023100ecc51a2c93cfb2745dab34e1ed66c3245fb70b1fdfc0d892e026834b2aece4c778d14f445a5b922e95ec90739174e7c50302047c435bb500673065023100f397ecacb6ba53901726e062e34672c7dc85a0f9e0da101105a3f6946c9c153f6b67967851a89c06638ea1a26a0edfa0023012a5236fcbd40bc6b762de6506a8944708e9c62de9c81b671d53794e994a28ef8a1df5d8679567659c39d612843817c20302047c435bb500673065023100d07ef5fc639a0194d6ce8b4d66fae1b06a67711aa88f264a464a5c75602ac6a077b47799010bfb740ba242ebe3207123023075562021246ff08d2abeb01952ccfbc821bb0883783de913f34d1a0dd7b667b16c2a8c79c6dfcfd36f3136b6637ae90d0302047c435bb500683066023100d8695ad0c56a1199c71831b8c26f730778ff3a78f8fec04559fa07300efe4f718aff6ddea232ed6079060e7e282f64d9023100c345d1d4de721e86ecc20673351e4d1360c4b6b5944e073080d7ed31811e6678872311520ed89acdeccf81952a32d5c10302047c435bb5006630640230364b1d860a780957aeddc6e144424414332fc7389dc700847845f908b69cd682e3ed4a6e56b23a843c3673e5d4cb0b0c023050edbb8d4ca582a5731081907d5dcf6b0ce5652ed826b781362d56b8522f6636ea87e4bdac1dc82ffa92d8f5df3bd74d0302047c435bb5006730650230092e30c15e0c09ee4c5deacc8ce143eabcbfc16240dc353a95d9fdd74f3ba65b7bb48f38ceefcdf9efb6dc4353365428023100a851b59ffc5be2eae466c32be95895c27d92f8a81266ff82155241af3c3da8b47bb1fc67befd962e365df55bb78781220302047c435bb50067306502301983066ea708b321bb82659d6347ac8ead653c385745cb62e55ae97bb08fe55f51c01fda04741cb710bb5463b4375246023100ad84fcd063a9de0a1c8e6e7a60f441c6300ab8b7c45fd41eb1c13c8a611fa5bcae4efb7ff3f450de04a3b7c3a88ec12f0302047c435bb500673065023100a0918c5a207ed9c705feddcda014a03f5181386005e54d6e4d16a4bbbf798e3254d96ecbd74c42a53627f6372fbafed502302d2fbb4342584138ca1a4d807531b6a981f879688dd2a72868f8026cad654dc88209e8c3b8a8d2d27749b3620df039610302047c435bb500673065023100c17dcb2eadc514cc7c76dea4bbb3baa0ee00d80a1b92497be358f25e8870c86b4653ca4abc4564fa620834ecf2be24750230613225196dcc7b3b820763c0ed63b6da2a858965ecd42491e115bfac9ad09e7ee28a3462c1d4b82fdf9308860f628bb00302047c435bb500663064023022af2d3dc8451d11fd3599db9403d5e2717eab471616b32b8526a68ac4af3a1d34d132b170fdc724d60079541e3627c602305d25b8a651aeec157f4b053f74d55ec972b9df15bc2e2ccd23dd63ef69dc84d76894640b28629b89e02ab88394f939aa0302047c435bb5006730650230024d2d58f50160ab23cf06370155213dbf9a877d9a66364f0f2f58740146ed5a5114a8f42daec06c1f790ce246d7ac9302310093b0abf30fd90e3b2475a37595e8356f8429d471ae43340a8c1de7fd35b60146b819d23e2740152cfbbd5618f74166c70302047c435bb5006730650230618d11cca9ee45f5897d3b1a1badd4bb5d8a9f6349bb05dbc9cc9e6f1145bd5ea7164354315a60009c8bb6f439c1125402310081660e04fcad46ab24c8cfda073e37f980ffde41d9c057dc63bab9ea7f2463d8f0b27b8e669a4debdcf89069f18899da0302047c435bb5006730650230032b050a20a849741b2646a82b93557fb421ae9f5b08b0a3f498fb3e9f149683490d8f8086a3fd9b8f13ab6052b35025023100c13bc2970fede3cb2d48b46999e89ef165bd3527b1ea96272a8a5ddc32c3f72b16e94cc1dd79998a616b59a471a0dd9e0302047c435bb50067306502303ac4fb5bac36018f66a6dafb584ac30dcd3a0961413337d6dd91083ba100266cb0a8f079dbdf663b5b849fb1590abd4f023100f722171a1ee1156eccd55bc801272154bb34a437ab80f088db621e51bd9e0a9c8c0c3a3b364234bf98887143a1b5210b0302047c435bb500663064023075eefd1c8b43df30ddd9a9bfe0828478378f7ba34904f5f8f64fd82fc9a03161fbf7a527de5a43b00875c44d27b1528a02306d165513143183bb5def24efc873913bbfe03ee734838cabaaa46dd6b03ae74204749c2af2d943165deeadf9371d64140302047c435bb500673065023100f336c659b5e61bb1da1dcc005652149a219b313ee8243d6f32f2a9bb3daf17b8654537e0949d324da362aa6ca1e9ab8902300d9c034f50f8de5cade4cf3f0b4f16340beab17ce9c3e260968cd891eaa70687b91c8be83a98e7842008346e0f92f8310302047c435bb500673065023100c908b54dba46857c622a250149b0917727f48a6465a2052f5aba5bc8d3e2434874a86f0507b4d93469e9fcf1a29f8d01023043ecd9e43d4baa895ab587d5c9299272a8af9f3d2e722061c17ce369ffd576b694ed498898591f14fba8bc779cd1c81e0302047c435bb500673065023100ff0637ba4325c02ec2a9c0f48b44eac7754e13bf077a1bb21bf2513077df2a7ff2332606a636dbc66e4478a195f6ea2602307344857c602bde3a0c8fbd96f7a67576c4c2abed86234a07932889e8319ac24313eff5b5d5a4c0f3a5db487a47ab410a0302047c435bb50067306502304f212b0451a11248951cca3fe193d2ace3e39dd2bdc1b8ff051d56452dc0f4c26720c5342983dbbc9e289d1abc76df2002310095814bda26f4d508a4d6558f133ca4cac65659b89dcab27945fc256464f1a5c287a3f3dc7da2ca3658b7b5c24df1091f0302047c435bb500683066023100aa42bcec7a71c4f3ffd2c78082b365ef761f854e4f9a56defa273c141875e4ce325c4dfd1930e52155d6ba962fa8a9a3023100e449ea88a20530bdc1389b8927b9c51b444e3f7d121d8a1dd90ad0ecfd874739e01b3f9aaca59744b2174cc3ad9750e60302047c435bb50066306402301ac3b10a56a8a648cf1e396b28025bbb58d2078cb0e84293f1bd04d63b5d3f934cb1c8f6b621b6b4d3040f722a08e5a302303edc29f0ac3d20435a48bfdfce7e0c7921159719d4daacce026b8489573c2939f0a403091311527afa18f629090fb79d0302047c435bb50067306502307b6c5bfcc99e2292a8cd9bc5b6e7c770ae081d1a1e769ec389bd9c47205138a6e34b5827671fee73b2102cd8791e631b023100919da2c3abb730951e89cc22ab3f53bda6bd7f36df9b6b42b9c5799dfba71498611d2b423983274a6865040e846d99450302047c435bb50067306502302799c0f2d5672f229d068644dce8574e2e90e0df81ca89cec586678271518b973690c6ee7c8c41d777b7a6318dcf272c023100aff9e1906a00723e892436f250a4806c1a3ec247df429fdf037a1ba926484f1397ebbdcdaf91c89596289d716c7d06930302047c435bb500683066023100ecbb5c8abc03dbd61b64141c7371a78056c15c597dd9bc045b7b198d65a25214df7ee10e57215a31d00d064d3217c1ec023100b91b6698d37de5fb6ba09e0013999f312f4c78adbc3a417a175d53e8b34f38627c53794d5d669f56fed10e3744756cb70302047c435bb500673065023100f1ecef9464555a8be6e4953c3405634754681169db14f1c0cd812bc0fea66de59fd22802af403d1ee6b0273365d043ac0230495d3948e24c21e26d07ba8f127bf7ac86d9eb47def3d2e548d67566577c0dbeaf556b028d1a7d6bea8e2db8888dbf3a0302047c435bb500683066023100a7803f6ef56247cbdc6bf1927b7b4f021ae9b9b63a72acdc554ce31afa6b374933ff8958d249690133bce22adf2b795c023100f61d981ee947d7765c61c3abef1be272b7477532f97c0d915ad99194a508631dde944136de01743b1ea4325daf0ba04d0302047c435bb50066306402305050f91198a5c7657322699f395f867c952aca55a1a52b5fc074a80401d2a0812a90c41f0438be9a8174ec1b527a284502304de0ec3e0de7ff205d06f737dfa0590854e5cf20b3e97dd1e6f7d2e7221183ea1b93efc27212d0a04f67d9103d0d1cd80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023023da3d9fefc38d1928c179cd7d7df278077d3f9eafddcbd64983f857b9fc7d5281258bef44805ddfb1ec9dbf920437ef023049f7b3873c35b374353605b8e4087bcf510212e184ab51569556e9db26a7df244f6b54bd4e1d328f6b1f3ebc2d24405e0302047c435bb500673065023100d4db97f15909fd2898327473a22e8cf04d275a254b986b0ea10e9c4bdd55c7b14dbeae72825f2db9aa27ff37452bbe080230175fd5eb7652eb82f9e4be3d08c9efac62d88be1d96892fd594b8673bdb28db9413b1ec2fcfcec09b7ef4b19887aaca70302047c435bb500683066023100db5456bca99a28d107206574003eff61a4d39f36a7f9a29fcffbf98464529ba58347844c5980f68b6016a8a580786184023100b55b32d37c9977f2c03708142d7aecb59d3fc1b6c8173eb1e6bef1c3927389cb70727f13d48f7fdac805f3ecb167c39e0302047c435bb50067306502307e247161c1639428405cf663350acb49cb606a3f52eb81dbafc2b282a182a435a48e48f00b8216798e953f075e85f80f0231008646235deb2153fdd71b0410426f1d96f10be16be124461b530739f764c85b777c9c4e9a1a1e50297887708eaa86706c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ee5b054771e073b3c2e6d3962d88f310b921bd47fce79b00f7e8bfb021ba9149b71d4fbd9a24d2d8198d8e1f8fdb1894023100d83945fd78aa8eba82e23f5fda303642fbf552328df88636e01732db199f319ec1810354e8b1b86d92271976ce9ea7870302047c435bb500673065023100da0170ce7215b120ccd42d6fc271a378bec19b517f4a7a190f4fd15569287b6a0113771eb9e7db23811015892ff6a4d902306e9a2256aec477720192385dc641406b193d16b1e652de0cb1d1d3afe0b1069c84c3aa8bac3fe2ee4bdf70901299ef590302047c435bb500683066023100c5bf8ed8106d1a01b7b165f77b2155f4ab095130cf32b5240f8f3372bf36674ea30bb7e8bb26d44d593e85d7a32bd476023100b50db18b7051c149480ea8126abbfc17a0109acc93cae79d71522a190b0a6ceee862aa771832d69094bebd44955d4f190302047c435bb500683066023100a35ed2595531bc2b2a3a66985e7b82f125dea4753c8c096f5a7a13d0b25e7008d424663aa4af8a287e13da0e8ba5004b02310095deda79932933a3c7ae7b8f8768aacb7d5241d4d15e4d44abb6e5c48736f44a2c17db01914fe414c116654324d76b040302047c435bb50066306402300c3fec175a9a28acb130cc2f3fc8c3094303712b240be8e9854c6abe13848ac7cc957361d296cfbacd3436fd38db51f70230402878b8473d0a3eaacc15f02c56fb7679dbcfdc9018c7d4eae7a03130aa9366f060c31af97771b62660ae9361c30ba60302047c435bb500683066023100e7f59570dedf476e4773dc4d4b8ce2447f179b2c96b151dd57c6868d1d59797702686c3c7fff9da3a3f3eaa83e3b81b2023100e49dfcf6f21b36475d5309e52b981d86d275eaf20a8f107d6a4417bf2ce99c338c02d2091d291df516bba8df20e43fb50302047c435bb500663064023006a6cb08c3f6f6686abf887df8367bed3f20220bf4ec2513e6d7622e4cf45347c2ee6eac0620f08b20c3f0337c64bb4b02303db544993f0b7399dde3db602e8313488cc40d7706b8829f49c045f4f94da557e6587e94d9129fef942ec57e2e4293900302047c435bb5006630640230442f3e62f5682bfa03aeacb0bfd98793aa3064db3822c5baa3c851bb5785a3412696cf85d3a8b2541a4d9592268da9580230403688158367e5eacd9676ec92d22847725d6a951643a5657fd2ef76b32433644753c2232d86951e69af0921890516710302047c435bb50067306502306f603683ef430138aa188d22a4df415ba39cab213b84b866dc970492f1cefce673024d5f127327a308c6588c530cd250023100bac1d629cd2a79073e835d4651ae2cfc9d781e81ec57d0300055fad67dc43f25a1e02f9590a852f2581085df16f2e60f0302047c435bb50066306402304abe41617d64f24cde6dacae25731b73b5a6768ba2eef9cab086107e1e0f3c2181c9ab7fcc6851ac021da8419ac1f3220230012a8442437c0adf64daa00dfb61c3af1f6a7debb3d040c0bd2e2bd0ed4cad26ba799dab8f1c3451acd438f1941a657e0302047c435bb5006730650230085708c7e93c90bb34a86d911d7c09219aa769a7caf750d1fe4a143d14707b1b722a075b5074baa037d24ea5ce94205b023100e98aac1d6f6ed965b34cd304029d0d279b9224f01ed500884af8e353b05c9f40b673b6f4007f48a0df4672700cbfb2bb0302047c435bb50066306402304e1ef4aacc1230125b980f3623b73fed58bdd9739c733a8dd0622e6752fa707d9db0b50f414a754abe8c58282a3c6f0802302ba141fbcaaae32adf676b7ec3c41fe09e665c1c8dd6ca6693906b99bb28ab282e455727b70efcce5b4d764d004327220302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303d3fde08334c1338fdff05fe0518a2ddd3fda8ba11596731f62092fd13ccc9a574e50243fd3074423ac1367e223c571b023100fb9579a4fcc6f0344f1317629793fc1f62b2dfdec7a000cd330ece30a089221f7a4491ab9c92246313575b83958dee780302047c435bb50066306402303ce3a4e87c78d14c9ca81b9af25c28a0abb7eb762c2ff15729463c9e420bff9ce86c272f3d72959c726f7553c7b22b4d0230483664ccbb83871e67859335fd062e18e5b2a48fa641f839960e35b220119e45b5b90a9e892e2439862f43d2d7cc4d310302047c435bb50066306402301a393ddffe0f3646c7d6e290bf83dbe755e1828e72f126505e30a8af351350e83f2da4da5789dadd37a6dda6d504ff60023030b906b71eadbcab8b181cf1f07707b264454ef5835c060baad53eae58c72a9494e7c85dc64d7d5d72208eac33ca4e5b0302047c435bb500683066023100a2cddf897803bb747bfc4a3939ecc42a208d845c4d678afa020ba74846399509bebdd1e8c4b5adeef57b92520ba3f28402310091860057e43265f2ca57ccdf3bfa21180bb59615f16ecdfa46e80a34d9867426069e1ed20673bb4d4a2f8633af3fc2890302047c435bb50068306602310093869a70e48055007089d743481f21b300bbeab47b37ccdd36253aef8b754c1be1ebf9dbf667255ca56a9bd9b26f3b6a023100fda183af88f9950473829025fe1e90e76da8d5437b86c4a2c612ca9581c55d8c1e52d5faebbff4ec0237404dc5c68b1a0302047c435bb500673065023100f54c6ccbf7c16c46669e10886e4a678e2da39fff031381d93bca8c3559f6cbb3b7789823d89ea0bb654cb73fb69a794c02302bfe61d451eb71db657eccf15d3d507549aad6d4fdbfda134c3ec44185808f870b07038a50a3b3fb63c3909d8c63bf440302047c435bb500663064023019bc2ecf25b1ee8d7cc911a0730836f1f35e1369ce09a27050a1a310e3b09a9173bdbc9fd2b6c80dbc01463e1a0c52a202305d0c15038b8f773611c3b234336a6df246e03b5648e82ea2da73dd6c8e4b15b7e1cd5343a24fc8777f278043506aff230302047c435bb500683066023100e9475c80b8cfdc6bf98b8834c6779ab70a55ec18b01d6c218a5ff6687ffb1d4adaea5330fccce8ffe2a23424d00f74c3023100aa850236f070f484011dd6e1e2855e6b5d56eaf47dc1cb9a60dbbd4311e85e3cf4b3aa878b8864b82ff0beb8734a4e400302047c435bb500673065023100b8bd35ef131f3240ad9e584fc91281998fd55fe9697237e658609e627ef31ac24f87b16532903e1547478c86d03ec92e02303086d172872fd3b6cf7233d9cc016a86a5a28e7b463bab4aa8a26110b87b05d530bcf0cfa69bcaf283a88145eff0f68b0302047c435bb50066306402303b9d617e9fcaf5a4da64d400a6cc9d453df266f65286a2373bb7aa14c04a978f871f9c5cf0a826bf95fd094a83c0c01a023020c74f25b5d23b49f324026a492f476d4c64072e8c330bc1979051f89cade6124e5633d7859d6386894a6dc80a3347890302047c435bb500673065023010ea963e92a149fd418f99ad5b5dd229d36cd8f337dedbfcdd90b5af987e5be0489496746f2e06a5c2d2e96f21dde296023100ed3bb151d893b04af9e3c386f13940e0741ebdc0f1845670e5fef60437d2edfac5dd25ed5718da740804fafc2404e3b40302047c435bb500663064023014a76ae2e542b097c8e0389ed9e9d098f65df7aecb051a703c88317d8fe5d4f9566bfd32da907ecea08c13a08ca6e928023070fd018791c139bcf9f227d02816b54df31bb1ed68155b65b717a8c5d38f1b03b323fac32124db52e723583a837e882b0302047c435bb50067306502305c0a7dd40286afb7d1ff58fd4069750c2387384cd0a0765dd4c33191613c8e03b98e14b1f9a0b0eb414beaf8af47ef8502310084db4dc44ac51197dc007bbeb0d452b973ae93d64e558fbc7c26888eed22e17614a0de8531f85d50a6b1dfcd4e5f4d550302047c435bb500683066023100f78662f8941f7e47fff3dc6519711437a0998d275fbfb35d806f384537c2f67b56a9276a4bb3a0ee75bf3abde9ef706c023100a977ce8b2c236a6e113cb804285f1ffdcb65ec06a7c591f300c496ecdd62b242b7e9907f9a544e4c42238db96018377b0302047c435bb500673065023100fd65777fd472e4725ba6f5403b5e3bacc75caa437798d4ab1d4ba42e200dd173b6ed02ce1eb966a80d0c8cde11646e0402304a0ca0e171da147ec10233df3d196b30611fa1539a668abb3a5993a4e8635ccf735f57ed540902b73c5fce8e114fbd590302047c435bb50066306402305f460706b4550c01e5ed09341dea03802238d2f8e4272a2d35cf7d5da537d25d3aabf437daed6d6adfa065faa697a67202306820e8d397feae3d1b9683758558c970d8e476c746446ae54d29928990c65023f0fa66537fd38765dece95fe063d6fc70302047c435bb500673065023012de87d83dafa17f4c03bdfb8dc52a2b93dbae055c6a0fd4074daf935925ae3fe4b8b932f08fc8f8836f5505e20f2e20023100dec06c764ce9209f175607cb5240e461cf228a098bf5a3b9c26fe6dcc2567681c81723ff581faa55b9975ca57bdfbd910302047c435bb5006830660231008168a094954e71e1aed407e5c3ca14d35a4abd827d909239fd0f11136844d741004c8dd6ee02bd9256b470515f22d93f023100a6bcb2700b6c92dfbc1417478f063f2a3800432633285961289595b0e78ab89904c6de4f9a73a6e90f9761ed2eec72e60302047c435bb500683066023100ddb5ef10ea7615f0ce7668ac42328c4de773743c9cca3578277028a53989bb1dd311a86fd220648c06818dde67cc9e7c023100d761044d836c0b18c09c43470da316f5087fbf8e8df4e31a67288edf441ca68f568b594a29d28d1d39f02a30d66f38bf0302047c435bb50067306502301695e35c5b50f1f57d2e6e4c1f5306487dfa24e36eba231b38308642ab8856456dc33cdd60fd91b84682a01ec7a944b1023100a57d7b0a2d7063d324a8c38021cc64b338583e0f5776d17a343d1cea82938d161573f110fdc9d45cab70a7f16dff7ed40302047c435bb50066306402307a8dff3d69f49bb367de95f301999aefb55d55f52e91539e3f85265a64f13070900c9d9e2ffbb56fb0c58ab07fa4d88202306f8cd965f5c1c4c41de637a1b83f5e83cc9a7f6bcded47588b8ef451f2136ac773ce48b534a4ff450f5ffe6fa9606dc40302047c435bb50066306402303418f267122f7cf2fc3a3e9e6676b825118aa7d42fbbc5edc0d32079c496162218ef1338464fe7000df65b538b24862302306dab9238021fdc695bb677c6a6a2a060ad28a51810868696b902089402d4a0d51dc2e65aa6a363062dde3b0166a021eb0302047c435bb50067306502303acb9b85eb468acbeacf3a12cda9854175d71a904c84c374b2c7cb5730e816cfd89d686ea39f46cd4358fa5dba2e50eb023100c0230bbf9b5de029645f6b15eafa1a4580bf803ea81b2dc786c14853f5ffc5aa5fb1b0341d4b2c9b7b089ec107851c060302047c435bb50067306502307e9dc6d3bd8e8ac7059b9341a48ff9397b9b6af8925540e2431afa3f03a276f155341c35b2f80307ef40e09ac0ce8e28023100b1860dde61be27d4d00af4a8f15d53bf9a41ae7f9900fc3e60e15bfdcf75bf6efbc127a5270fda58692408fe7a015c810302047c435bb500673065023100894985dc10a7aeee01197ee7bcccedac2cca6ab531aa40b97d79fa1286d50dc230fc9225cc3fde435c74b043fab952410230582437a3e7973cc96a436fb940d44e76ad1f96d388b67224ae4bf55849087a6bd8cb8e69ac3bad92ba2b86cbc4e6eaf90302047c435bb500673065023000e9f554e29368b7fe7720c1c645b1f8a96691036158cd9a9a18f6474b7336e34e70e77fcfcb33eccf0231190556a8a7023100a951cb23545e65e7ac33bd1a8059a60b8bd4026f54c0b175a5e8ea5b8493bac9346d7777839469f7a725c09ee5b834fb0302047c435bb50067306502304abb9411aa24be8583808a410d0f60b40505edebce17fb9b91a80ae3e56ec94eab299c758575243dc6f414be53aad2b7023100a527b6154bb27afa8801d64ffaef3843d23c05db4b5886887c17e1203f73e5566c6cd8d6db7a412d3247e89a5a52f9980302047c435bb500663064023001d50e9400f50d1f9404d1e1bbd4417f94816ee52fc555b129d7f6127fe7c0e22b8eedf5ec22a746718b3da35b3d5c0002306f5a009881d4f2aa78db4d1d875dc810fc8cb53bf64889cea45cbbfb8544a08eaaa0af6771874eaf8b74be79510a649f0302047c435bb500683066023100fafd5911e2dd35a2c2b55edd3a931a45398ef7cd85b7205525b08ca52de5c80bed17b679f45d5c4c56b6abf1e56f31f0023100db29d9911b78fc8b7be988f26b90d13c5b19eab893e85a1fe342d1d3338ea9faf70016a67541e7d7b9df7e7b747208310302047c435bb50066306402302bff5726f75b9a585b7060303f897155832b8992bccfad022dfbee9710389fd979f31f2ac3bed85da18386ee51606d7e023031f9cf426e3f991b8cfa0e89b259016e3b34e4f7dafa22ed37ec4233a65b375e12d8a63570c835a70f241e70f81218210302047c435bb5006730650231008da71fe96f59ee7c8168f3859a41cdf10a258a1832caf3223cb0dd7a06a43b10b0c806f4465c3772e3f668ecb06ad4c80230502a5c472efc5f34b745b52b0e2b94d449eb3a9a6620e3d1ff09dce1b7653639288de740e47c7ccc6ad68ea39485bb7f0302047c435bb500673065023027c68346dc65b9d9e735186312df5cfeef370cf8092a93c125a95b48ec214a71adc62336e2ee5dcfc44ac5d6d73f90be023100d8b5be20c9766f98a2e3259c774bc2cca63213a69f03ee9562eca4e3a95d6621f926af14d0226a7bf9eb31ac2580c9f80302047c435bb50066306402300d4bd5dd1839de3528302aa6d82cae0192fa1ee8a56711b8f3fe320ec776983a59d855754f1d65423fc0b4ee13511b7f0230060ff48e423b33fbc7ff55db6b10d3940bc61f0e988aa9a4665b0c100fcabdcf3b676c903916b6aa110b1c0193d2c4900302047c435bb50068306602310088fb5a598545a783b0fd8040036217680644e2eacc436de261a7246d0c5cfbb5f7b3cd18d2466d28c0969abc169c9714023100b27c9030583cb0dba45d5cff150c52f1d89984985f873518b6d6eb5b8105208019626dcbd8d1ea211007b19d42d17b260302047c435bb500673065023100bda1632e469a3637651af3402844f7fce5ff1f54ad0394c1cdb1f67f1abf69f62c386cc918a87f12b1c985e9302ba32e0230784d42a7fb02c58f091de6ea7ea54866a68fa916e30d22ac308f577d1c1a69755e40b08b97306d2e2d313ce5145ed0950302047c435bb500683066023100cc8b8cc121b2888253277f71574715b583e911a7d61d1bd30a50da53f9c14a0b61d00e26498d64b1838e8c900db9e210023100a123a2eaaffce67284c4fb4500e335705ec208c42c59d8fce58b6501848597d8ef6a1cb1da66c7e4d8f4abb037241cad0302047c435bb50066306402306b39cd3c2c6b6183ebea0648e166cfddc71f1bbf27d4c98872d00fbf220b83db1856bf78e8a07bf9a6542c2b8c87d2b502300f7e6cd2a04056b7e73e68a0af64368179b7d539f4885db0bd434ff460f2a84d3a53549f2cba480c4db4a070078ce6880302047c435bb500673065023100c908b35776f55a8214f7143eac15e68c857acae7fd1523d1bab24dc0099af2716581db9d16cdacb5f5b1dcba4aa3a683023054c80669bfe26898785e7d0bb7f2546eaf8aeb17b22138425199f4b818e4969191eb8be1164b28188643277ba4bda6f80302047c435bb5006730650230627f69a8df696673d82d7e31c7740e86e5bec7d71db46893f52624f3db024cb7e2b2b7ae7d67288134288441812a7f1f02310092c317b4790627a65c9d92f7bae266750baaf9105fcb9477845cf3acd58abb4a14da733eee8587e922751b70a6b9f5640302047c435bb500683066023100805bfa3107f0472e2cde03436dea6e81559f0789bac9ca5ab3c03d320fc3f1e411a704d70e04b6153dd595bf52dadf91023100e94e9d2a94d8d21702918b8469307a63cd5b1bcf6458b8ad30694f876ed72b050b4b8afd45902aae1c87e949eb3145df0302047c435bb50066306402302bf3e8a2f185f46c875dd2c1523a54934febe6575f71a752072cc2fe34029ba8cf0c771670a23f117b689cc3fc0dd32f02307fc34a8f1201781acbe0cbbfbeb3077b6aab61bd3c1c6c5cba877843fa833af08c7793e1716c37c31a9b4ac0a95f14ae0302047c435bb500673065023100fdc462d56127decb9b39c054e73886308812a3c5c48c9e9288796d046f44a6f5255d41268e19628ab46080188421b4e502302223ec2c6c47c64635c319a9ba998506dc6fb56233ec803dcee89351f53f07c823b55fa828b97712abe2e6c8729b1a850302047c435bb500673065023100a7a9eda8a440dc390f3b528a3aac63be45ef9732d04cdc0fb832588ff550578bb903547c64cf265b908c030dc2c58e4302306c5b885044c24e4cdc85a6088ca04d6e1a82d2e2ff41a97dd0a24a937855f065abfc136abad534bd625f303eb5ca88fa0302047c435bb500673065023052f0ab75c14f06df2b702485fb7bcd40be915647030f73f14b8f26359384fd69615b0ed9140ca1a910162987c277c168023100a82305e2e88e41a5a159d93cde946fee627e034a0271a9ae84ddc347f9a1b892f6664a6f3bdf62418b561807c3f225110302047c435bb500673065023100a89e3891b400dc1fcac8eaa5f0b0ba684c9b700de2ba170e60f3f6f9a2a112d34d8aa869e5f8d873e4db0e314ba4640502302f1f8f925bc7d970b28d5d88123523e8e31fa26ae07a025dda77eef11c6279d479e0ea9be51583fcddacdbf8f2e2abc10302047c435bb500683066023100ef687089ba15b40f377f3131995135bbe4933766dc5b0b1f9a7b8ed3fa0395763ac94f22c9cc4d233858089356ee78e50231008dbb6e19410150d5173f8df7ab8d8a5a5ecc006ce34323c8a0457592b3fc390d41688aa18a1dd88622c84ac72c4506020302047c435bb500683066023100f6098eadcf592e7e39f84c534c0e8ff9acb451534d318fd0f8e1497ce42e7b5d1f1e4e935abfd8ef5e953b4b5d19ce3e023100d2bc323b65bd41d626e2cbdeb22f6cebb9c6b6e80393cfca1bdcdd7262a9d30feeeb2ad7e165ebc76d1851b95749c78c0302047c435bb500673065023056a3b71043fff23def20dd74aede5ed8b52bcaf13884213a9977426be4cc25dd06e33d0362aecd6d8d71a3d8319a0e31023100fa4a1ac3cea1410737b973481416f97c4c88a90286cc76591d16c409c2a9bb5d5d1b39c5e4ab4b48088f6099539668cd0302047c435bb5006830660231009113ead7597bb734fdbf99b7a8755d0e2c54276003e0ed5eb143a7975f5fc929b1de0b76649472730f35e786eab2950a023100848343d9e80ec638b77b5e0cecaeeb41cf56903ed67e73570444a8463d11e7002f95027101e1516cdefd12d77c4b5ee90302047c435bb50066306402305ebe7d9aaeba5ad611db4eb1899a42e2c10d6e04eecc57340797294645d8912448b3082009ba3fdf1579955b0a4fb40b02305dff3ccfef2fb0feba29add4e19bcb3eabcd4a6341e67f7e48df5596647b40d7971cf144a949cf1aeb774a3225a7f0d10302047c435bb500673065023100f5f26c74632b09af1fd7ba13ed7aa75467a48cdb909eb5e1662f5c9c446f9471dd9154b17884811b379590b70bbabfb5023039528d9cdca2f72d85b8d91349af7bbe778d384060238044907160b7c6fd1dc9c39e0791fbb98c376821f538a4608f820302047c435bb500683066023100932311b82231b2cffc6fe110019c74c7cd37cbcd7f724a19e7156672494f19095929e4e5b4aece02080759465d1e01d2023100b20a9d8a6d53f6da2bcabdff39b558a82cd18d535630db64adeac07106a7a487a5b4225fbc5b2f38f88e794fa5b997280302047c435bb50066306402307d93edcf38a209c5e8b4125a95685a7003c08e05146bf7db787e2179643b9a5a611dc5418b9cebd9c81118a421b3241502300c955ca399e2422aa0b99cdac4b922469c88d487241de42280621155cb3984859f075e643c3634eb8f17351f483089250302047c435bb5006730650230322b8c935e43635961b6b5a610cd429fe9a81eeb9f02ff9a1dcd30f735a782b21fce4c800b2d602de946f386668cfa94023100b1437400e1974dc04aaaa878e3267088d10066e42f48e5a748574dd8c0c43206cb935248d48dcf53aaaca9c6aab6be860302047c435bb500683066023100f35f1119c6876b1ff86bf3d23a958c20b258dc6cccacc7b1d41be90bc36bceb50c3bdd6c72f4ac42ce4f6ee12b6c38ec023100be654b50a0617aa622fb5cf042c1c114f235e923bf6374e6513c5f443fdf3de83bfd673cc11753d8c1f7227a7a7017ef0302047c435bb500683066023100eace94413a2bddd5979229354b9dce43353a5b49da7d270656efe59095de90c123079d371336bc7debd070e20c27da62023100f08c0110a009a0892d2cfcb091e0606e43606c0fa2ce205bd3e32670645b598c0fafcaf9d553577bed242326dd28df790302047c435bb500673065023014f12ef6667db077c09b774f744976c1fc195db3fb29e6828ae741ef30b99449a14ca7b5c4cbb74205a547c9427d823e023100c9dd21892811ca8b055ff07a4f8a8fea1d9fea327658ac20fc9ab8589a1506a900794564d529841901c74c4aca1b5a930302047c435bb50066306402300595f54b339e5a0b8e88e52f47cd9c0a410a4568537c456d18d96ac36809660800a5190cbe4783d8b1515e899b74e0af02307354048738a7e071799c33053e6fb3a0b7baa0fe3799a7c94814e569a6ba334d49f4d7dc5a44efb1197cc43acf80bd450302047c435bb5006630640230706c0175658a91891b57688de985364c4ed0a083d68d7462c5c059d719327ccaf6852727e904472a6c57a8755630bd9b02306792de4815b032dde9fefcdc7625793a0edc5f954dda511814b5a3c5e452ce9c609b8895c30c93519a5d74ddd80b18ab0302047c435bb500673065023100ab7b76fd403784f046488f7707e949cb3313321d5466c2273e1c80e62881ade6ec8b7cf6670b962dd14786fc320b78f50230405b4ae7e7decedc8962a4ae19005ac2e1621a3cf73dc73052458caeea3ed7d17893ba2cdbbb31a44cd8b679dbfc83f40302047c435bb5006830660231008aef4321e02966aebf5206f660d66d4567c4bc6d06a71b8c39da58da144e0c53d38764a8ded3913e15ad06f8a9636dde023100fc73da998c5897e4ce8f01bb3f0c1d067099261bf77c9f10c989825488eeac939e1601f2f18063467087a4c370fd840c0302047c435bb500683066023100c3106566b44aa1c86e86c9c9f8709124879d2d26a0acc9c81d655e104b2ca8df81b7788241e9542e367e993aeb4a4ff2023100889a5d8dd0946c25c76db4e908e1feb07967f326a8a57d2baff5696083e3c18f9b302543b2af99238de47a5eab6e8eb00302047c435bb500663064023026d8f4a72f4b3f967309bee5b501e8cac4a7e2e57ca70bb3c5fd28dc7803a9964e2ec1363ff27ba07242eb3474b2c897023072ad68e399c59f0a35e969f1a99524aafb015cda9054ab74d471a4ebe2cb456216b439a222314c53a11722a5e026dbaa0302047c435bb500673065023100e2a16f0bb0c39e20f72ce982a9aab2f9e8f14a2208c9e339862007180802620b97c18560a5b433d7d9bf5df799479bde02305eb692568bc590b6c399d8428a727d525865801d0206677975f6c9c9500a214d496f46c24fbe5a852bf7632f39ccbce70302047c435bb5006730650230675e2975d1b120409aafe38a981bd915aab74c4cb93717e8be858758c8249d5712e352f578511a000740c719e59183d2023100a38f963becb5fc162e95e2dbb98a7603f1f09134c720a59b8e2bbcdf8c9aff16f984695a56a8fbee005987219cf1a8ac0302047c435bb50066306402304202c44aeb1e193f11c45a88a7430b07190fcb5acbf2d8479a79ede8ca87732d0bf75307caaf508acaa3f514260396a9023049097b6cde15da987ea1a969633040ba0c527453ff05ec1a35e1651a9f29fad9a431ec2f9ebf80107c0a14d706a08d3a0302047c435bb50066306402301831270e5fd6297c2a7a412bca7375748c86daba8bf38c738a7d246e053afc95cb87f7a4586b36369c69ee645116783002302f2188262d4f0f84a8b2ab24fd92aa4d1c3c3c3b614c637b30623431645a10c69fb6c8d53b13329a05e21241b32f33860302047c435bb500663064023057b692e31647bb4cf33d6ff1d175829182dc8fe8ffa9f522d1a66ba9546dfe4664ce3da2245c340e31a5ead574dcda0402301618843a44382ac68b4759f54425498691140091c150d28b8ca154764f8f7eb364feebbe20639958fd552d7eddbf71d90302047c435bb50066306402300505662445a63cabbe832b8e08709238b46da5853909830fb011f0c338d33db9f77b8690da03a892175c11aa5f9df6fd0230049b15ee39479ab075f3a464a023f1726fce6011c18d684c5d7859d5369e4c1cfd3702ce013b83e5487b8bbd4bec16680302047c435bb50067306502304dcdcfcf8ff4a6cdcf35103de80d945d176e81d72edd7c152d790a9e39833efa2281965e4c592e934609024fd49016fe023100bd7884f36a61cd8a79b5d105a9f42978e4ea3a0fad17c17e455571a9d0ac01ad289a16b15d9f282aab689e67c226288f0302047c435bb500673065023000911a48a57aee18cd14e2cdcccd34f2d3220be4d2852f7d30557963f27ef6a25a12e57dd5025bd2f324386dd34f70d4023100dcd1271f8057b69ccbac35f38914af4909b64bb57ea29f113b49669ff26778f7a09e1f17a9071a5dca6a1f31293f84b40302047c435bb500663064023074ae517427a8daa51a8d58095d2550ee902ded16c88b4bfb6b58f40b254d3d81710998f665dadc3b4d450d34358b542402304577a3d594325839bb5c1262bf98a4e67948c1114d29287cdf321f8685118870d0e42ce6dbc263d2be886307f380deb80302047c435bb50066306402301e1ac30f9eceab808dca14f9c358867dd75dacc2305013df7bd59f6598eb7fe5d23caa6248ead68e457c6836e48140b7023033ef657fa514d05ca5c5e8c0cfdac37da06742f19282f8134a67dbb8136cf8768f506a51b345cd8518c48a97830fc3d50302047c435bb50067306502301b1cdac03058f41df45ecef989486bade548892c86522cca21b4b2a472bf8abaafe006081116f1d25a88ee543e65e419023100a3de8d4cd96f0b7e6ff93730204532b83a71ef6a85fc8a02551d207e4828c7cb069d7707e943617367e97d21b3b7ae4e0302047c435bb500673065023100e7f36fdf469d2ddcfebd75e31acf31db0655642117b3aeba6f29ccdb13b03bfef9b88fc00f9aab3ae10b5985d57a468402302a389182035413cba162e71cb91938f232f0c24532cef30f7ad624461ce5a4fc3af14d8f8e83dd12d4c52be5b74101480302047c435bb500683066023100ca5f23289dc0f5c8e40b91dfdae8ba41615fd7ae90befcb2fb7720681fcec78971e592996bc10cc22c40ded25d986a1d023100dc4ba9035aa25ec7a6deaae1a88d738dbe3aca0d0d43713b67cc4f15626ad6ac54b028ab0be5a3b2d855bf6e0a710ad60302047c435bb500673065023100fe6cc4f77ff10c7c90dac200f1f2b49a17b80066dfd76378ac9dae4f59d6eedb525b6debdf67e0d01dc1ff7875d4134202304434782b8ad5262a46ce1395bad53b721f0ce1c2005224af52202b14153ae5696bd49ee920d19545fcc3adc70ae5b4050302047c435bb5006730650231008013ce05e0b6d4634ec61e501721f933951a2ae7b4adfde78e037b196328396830d0171e5bab8bdde76c1c31531f814102307c81a73bbcb27d2c4f9d37c3b8c240bdc3ce3b36a09feaaad3ca7df230c232223c5615e67f03b2170a2b178c12f758e10302047c435bb500683066023100d0c794bce4f7af261d13de4eaeaf92be3f939b53b2a43781f2b62e03a3553d4bc7cd103ea0ffadc0616c17fb6c1276a7023100dfe683fbac08be24c6108817f4198941b343a4a3309daf4a5a169aeb004cb9d61572431d7b4e49a53cb2dbebf72ca12d0302047c435bb500673065023069f8537c322f87d57e371f1cd58dddda27dc31e72e877a22af0009f9ad7114884342a55c46ed0b74b2a15ef086d3a498023100a2780fda1a3fb935210908461bc38874e945f514ed7b834d43918a1b8012496c63cd9bd4ef923c04079255c74025c83b0302047c435bb500673065023100b8b64aaa83a2223f83cacc380148021a1dcf75e11cc5b53e2f0e7eed4a5b707f97989ddd27a6fd0649232e5ce7e47de5023072f10ba9590f30c04b96758fc48d3fd0c0e4359916dd0eddabe5293e8d929d86b6513533ee4ccc6cc302a24eda6413530302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023055eb1bbf0e7fec7edee6d941bddf3cc1bb5dfb8452c81cec71c1648e53098943dea323c456841ab7e4f210784183e86802300b1b3d62dff8f6bf28ff9bfc74422b6a78b0477bcece3235c953d44086dd72b583fba79979fb9399c6357ad20eec9ed00302047c435bb50067306502310095c47f62bc8ce7e71565aea07fbbaf8dba6dec5bdbd65b5c24dccac7bdc0d05dc59762477eff22cb756ab0fdd17ee3cd02300baa20e685a59ab020c802854096dce5131db77a9dc8f140a8120a5a17d7db888d117c4a56b9b4e40e488d0c295263120302047c435bb50067306502300ee0f13e69f73646ca5f7ddbd2608475856f8b1e96477cf7ec2a507d288ad02637e0fc56c473c00a0ffb923538919f82023100a0e10d368c23c6d2b65eb594f25970b568f5f084b73fabaec7a48b13a874a40cf88ffbd42646a067d494a8e79dc141270302047c435bb500683066023100a41dd9f1d05794ca2b6ca81db641bdcc3ef9a57eed8378deeae06ff8dd206ea8e523144126f9e5e05a9a663e17db2c6e023100d711de474341a578a04257e349fc71b52b5ba6a3143302565bcc1f814eb304b13c58f6f6b5fc88663f5e25d53148e79d0302047c435bb500663064023015dea323230f11d1d55b5f7b342f0d2b660bbfb3ae941c938b71c9139b88770c979d7f004d774b6878fc4053f61241250230481d9d4b592ecee2eb8df0340c44a8e774986eab4ccb7cf3b9be54fceeff49c08fb1f0a79721ee9f58536ad1989716990302047c435bb50068306602310098aea28fe55e02ca3169aab343453a6b615dd7ba439d45d45908c404b58bef0e1e0bd0f337312cd7ffce2ad18450ee530231008f66e0e9f12644ce2a4c536eba56c1da59bd58bf887eb3b2b70a0e2a908cba114efcf7ff19791b9f383f8a9c6f59dd830302047c435bb50067306502307b5235f1bc643c32b1fd76933db318713d1f40a1b3db5819c0d6b88661e49027695ebb7603c4dff5721a384d9205d0ff023100cba45676089a8be4abc2c2902831df8953c1b832a78f7aa23f937d22b235539b5e47a843d4a4b2d0fb9e9f6f673c16990302047c435bb500683066023100aa04ee0415a35354b9ab3bc474fa92f48c215b542c3d94f4901eb5fdb1f4f547acf9f092653b58efbff055e045a634fd023100c24727ac74da38e9a748cc502ee975a4472d94af9b124480627b7a89c4d3c2f16712d5074536c828d4ea1e78c9dba1980302047c435bb500683066023100e24cfa4c40b405b598f63055507fcf40b959b9e4df88931b0781e46e542218ea5446c604004444ea15ada7cb028edc13023100c4951e65c592b9e8d61949b371c3984cdcf4323c7baaf4ef7646a5f0f82fb8c23ed3c67956e843fd2005cd900d1cfad90302047c435bb50067306502310089e630a6c7960786ca08daebbdc47697d4d2224e23238171529b2cc73ca5130393b31adfacd0e3e778a06f5796d5963902307a763838f028c213a55f75f1ccd7e7442d02c14f8426824d93d2549f7c24c3099e9c659e3c88dddf07a9a695f9cf98850302047c435bb500673065023100ebb6955f914eff1c8b2d0233e124235749c72871e15d350ce70b6c894d9f0fafb3c32a73de0aa94b7e781b6ae26b468d023023c5dacabb47e5abcb5d7094ee1de230d6f170340d15aec754cdc19e804f8cf76c6ee44eb21da9a2ac195a8a5cd864f80302047c435bb500673065023034a21972d53be654b08d117cf6acccb65204f294d8042eb7e450d4b6bb3e141b186319ef0a733e9446e19868639609fc023100eb94720942a368339b63681f21a63b898add7eea9109135d7f8169cd36d48987643299e3d79923debd1fd0e317743ddd0302047c435bb500683066023100a8c3e5ec6b7f07778532ed9b9ec617b8beddef4a83464f40307b1ce875a433552f25f2faab4055317eda597a26ee1a13023100bbf18aa7e3a8b78452d3a0f463b3542815983f3e716843ca2480ef5433eb9d351a00c0e8ad42e466a6e0ac0a982c1a1e0302047c435bb500673065023100e99cd245edfa619ebf66ad7e5eeb88f9894bcbd33b274d17bd24dd3352072ac5ed790db03c225aa2aaa70d87e5dc059002306f7a31095e5bd51a6d06372a3762617b324e6c212ff47f7915709ac3266795d3773991886598deafe32f4ebd56836f3e0302047c435bb50067306502301fb762b4067283adccfd9e4f79324fb31fc61426e97d94429f536db2440914e2ebb76aa19a86c38aef346f8e23e4e69c023100ff7c92703fa6f10c0479da28d612a2f9f3e0ff57cf7f2c46128250fb8afddfd0a97582cc0d52b970cc07d5673262e1150302047c435bb500673065023100805ff64cc664b549c9488560ea92daa38be3e213e3d4705ce2edf420d40ef091f40c59257cb166f3abd8cf01b2720e09023022a69e5dbe1ac9c0c11515e24aebc94c3dfde2c691d5e532f3430a0448a42d02792ab58434b972925f4048ac67bd0e830302047c435bb500673065023100b9f40a4d9e55cabb23dc29ccc29545483f6e942d9a79a13090087ff4083a467273ca792b0518bf2eff490265bbf7add602307e8ee0bfe2d82102c439237a5497007dcecc593a9eaa6374db7324e32d4c0b4be22f7631308dc2dd21cc162acbc35ff00302047c435bb5006830660231008985c00f1e75a9f96760d4182f004057c6afa81779db5b8f9e2ba7553fe90451e6533e2c0fa86c5aacd3bcdd6dd2bc47023100f360658f9f8245049027bf9da023491e6e738faaf539f1fa283aac37ecc4271b1932fa7754891aca5331d3b79ad90cfe0302047c435bb500673065023100e5195ed7500d37e2e2a0d7155c80160e2fa70c88ecbbac0f201c5125fee80aa96d4d35a3b292c301dece1315b71d35df02300491543db23c4ffdf84af2012d2acc1ed98d818eb1386f0431d401df2d893e94853316ced8d5865fcce60cf68801c5b40302047c435bb500673065023100e277471cece14447121f39c69e35c0f96a19f5c383a8e2e56cb1e64566be93736a5d04917fcccd216d7df9b031a6b84302304525fb10e13fbbb09b1f20515001a8f10a8ae61f9ff53cc49bc6bc439995485bf63cbd27474d7df8adbef854163caf750302047c435bb500673065023002f659055a06f1d4cc6c9491099683042f00efe569ef6b728d22cd22dc2d9f6e8676c6d35e8852f3c37bc1f743b628f0023100a92bb3abad78d17eedd1363a8fbea36fcccef9d0696b5439404e388f702201db949f56fc3027d1740d8784412c69e57c0302047c435bb500683066023100cafbd5b8586f4f78b0655b4ca2d1d52093d7c928381540eed16564071a1878416fdb2bbe7ae7356cab0846305851f647023100cfc2bd05aca6a361c2451b9ea7d52d09b6d968d482fc71f0cff7ea86e3320904cd49f5ee23e53bab30575ed6696ee9100302047c435bb50066306402305962734f66dcf2265f553639d3ea41ab5d09edfdb2ccbfaf86999c3fa0123c4c7d46f8ea27d27c684cc806402e507da6023062658862eb03104441469d2a09646cc3f434621660e3183ab23c99f5ffcf08ec9834cf29325e43052526d1426f2e41e30302047c435bb50068306602310089863643eb5eae3e036ba425b86a1bacef291db07d464db3726d48f6a842b28fa69e685f2884301e966fe8618ba953d7023100ec8f9cfb58cd88795c1d2a778e5821e6ebb7af0a1ed03da89f92f1178c3fc52f907c0cbdef9898d4d726db7c878e4d8e0302047c435bb50066306402300cc151a67dd97af65f2461ec7b5fb72352475ccd2ee932aaa60d7930230de0821a8f863fde6947b63979763fdb07dc8002306e0a28e4d707607aa1a00cd4f3a337d6cef11878964747facc670b6c500206e53c2c7db1afed08826388a746d42f6d9c0302047c435bb500673065023100bc471948735ead00ed03fe98f0566536b2c2f575d0d7eef057f831e39115c6f958036c0aff88fd6af03ec6a4df55d1520230545ce8c858d81408658b53ba671562637f43f012f3bf60c49089362195d5fa16a160225e82e574114a01f2d45dbbb9180302047c435bb500683066023100a9f56664f7d0f530578682fe54dc2dc798f373f98bcd488fdbd53835f5671ab1b5873acde8c5f47bc17fef6163ec047f023100986f2b2e8c2cae832176dac65460df0c47ae3151fd162b728d50fdf2b1118e945ef9bdbd75f1e802a3668a32dcdc07480302047c435bb500683066023100c25716d1b82a8bb9cd1d23744a8de8392b9dede9d550d245bd9cee33427c96135c1cf85c309930dc94ed0b994af33677023100998aa1407fc9f554ff01cc3f81afd56e9891f3fe3963de71260a013350173c907cceb156f640dbc171c8df8574a906af0302047c435bb50066306402302bcc741edd91529d809989b344a5de03292f89345806aaa4fb2b8f3cb22cfd420ad7e65e05693ebe857a31df6d509ee702304377cf3778adaecb0c12685ab63cf7fdde5b084baaa077001b121830781dd17764fce88e4cb3acfd9dd34036f2cc47b60302047c435bb500683066023100ef8baef33900f437dd5dd38cf71bb5a9abd1da3c95922254d87e779095456eb2a17f7e932f4fa477df68a45df53c6b32023100f2fd8fc24352f2b6ba2b367cffb2300d707e247130dab8e68658ffcf98dbeafc862d4fb235c58a396a352ef6a0ef8d3a0302047c435bb50066306402302790afde13c9a2c7de937f1654a8c255c6e223369e1e085e8c461027342f3ce19ec3abc7295fe50a7207188b5ad4f964023061c26e90ca5e2d458a4fc06f178899574f66c49797f26889948e357d3606c6ea0183f435d388ebf531daf0a38c5f141a0302047c435bb50067306502300fae84f906aa7cbe7654c080c3d4d9a9645b4e88e61e8094c0f21ad943de405dc3ce4e474ae6a9a6f91d85dc69a5b86c023100d47f3e12a741b5fa9210f0645e0ae032dcbcdb62b8e524f7aa3110e81b38e3ce0e70db60b158b37f61ef9bd4e3f2f9270302047c435bb500683066023100ecc3c92304ee6cb899a161beaa38c45351201e7400efcfe92ba188456b6f737cabcaf167992e1cb2213ad3ff2305c455023100f0f269ada6d6028da494a0c515523351efb6488a09e06b2bf40630c940c7dad679323eac612ed495153c9fe63b7ddd020302047c435bb500673065023100caa24c9aff471b485de43130f2a8261fb26e57765dd5096dc286811ddfb72596cf1339480499e7f4fc49ffe4cde8edf8023003809999213f9bb428c00adcbbba0c037521ad6a9095d4eee7fe04fbbe51bb516796697add8cca20b0e2d6c774d87def0302047c435bb5006730650230073ebd7f6602d300d456b05c08e1de597ade8215b249ddb48cffbac2e8006a6d9f128ce6713150276b7b6efeec11b0e6023100d4504651439d86f77735f9806db81e3c0e6886f51f4031735e25c07af27d0951ddf9b25b9aad5681aeb45f2322a97eb90302047c435bb500673065023100d0d843763b65a27819c2f66d8059c090e9311ca9ce9c23a95535fcc1d7e90a020621bcf3e4ee608eb638096381188e7102302dd2a003945cddeb918e910a84959003a42054f90a6ce461b6127d77c2953c464dcc69359f9ec955d52a0e2dd2f4fea50302047c435bb500673065023073e8f016c094d7f623074cf5cd38d2e57dd32b91e3dd6ee31889d032236b85b810924d47f9d20f501ab7f37268bae8f20231008c1a6e01eab0fc04513497d54ab55c092d206e6ed407781679ee4d4d2eb46687cb687acc5ae1d2c5b8a64c289f7ed58b0302047c435bb500673065023100cef470ed4dce9b3f47d2b8da9155d65da00efa63689425d024ca26030b1308347eab50b944aa4f3e8c05dc6f3e329003023066ae2850320c3a81d7a7f1296022ba8b6e81ba63c1716861a387552d5fb2c447aeb531050af7da1a8a8897e7728606e60302047c435bb500683066023100ef6932e729511b4c0ce8c2d43bba0f403f04bdc106a00915ecbaab98ca2a8efce74cc2a70bbcb33b458f30ed12626b72023100811a1e5d9c6c23599675e35bc3ca48fb69fe8d1d00476f349a6b1a32375cb9c346002e1c418cd602f0de4a61d422b67c0302047c435bb500673065023100e007b368b27ca7c153fa3c60e220ae06fdc47d2a8ad0e0d360730548f15f3082dc4a7b06d6a91bc8738644efabba7ba302306e5b83196c20af58c5f9bd5127b4bb36ac5104670d6dba98aff78ae8d06e332d213798a75471b34c3e76d71c95dfdca20302047c435bb500673065023100825bb3b0b99c4fe4ca80f41c763a2c4c8af80dc744fbdd099c228a48dcc64238c4e52a3301cae7188b93000c30b5adec02306ff5e1a0ac9de84d88b545fceb442107e1646e9da94f219c30e4f28a3b5441211232cdab882dbc505630beae09fa357e0302047c435bb500663064023029dd8b7bbd3051ce1f6d21280d37b88628f03577d97a584a18f60fd24200e9d895df846c2c271c99253a6534bb8658e602302db84efdff80919a78bd5faa900e78f1c2eb6a8f179d555714cee8d5f020f0b4396ad4e3ad153d266dc930585d46a50f0302047c435bb50067306502310082b354307024aeb28cf17d58e886d6217e1096fa2e5094dd4a32249bfe36282f2b4748f6b40af3c97353003fd9ba04b60230012ce1f90dd74b77d4eca1c48ef68a7fb839f286aae760e8069ad7f4455951c613e9007cc88067cf9f1d5d240c823fbd0302047c435bb500663064023021b9bbabbad691663d5787f3d0b8d3c0838ef592ff1c1294db9d343d5269f99e021a81734960a093e186d9c5d2355ac302304af9e062c3c25426ddfd88343dc5bdf0a58d549dbb2c7f54c5a1353c0bf4bcbff6b1ea1ef8d1551cbbedc338aa457c8d0302047c435bb50066306402305c868ca01c79a7ed205475a230c5be80063996a4c01b584505640eead9eb3b5dcaad2fd2643b780fd90d570b9bff7d2802303af691858cda1237c577c981dc8ac15f6a0071b3454429afe1ec747f25d86e2553ac51ca0d38a3ff4184d6018374cab10302047c435bb50067306502300489b1e04e33eaa6d258b1480f00ba94847e25459b09633e1eda736a9b5b48db0a00fdf33ba8c08f41923aa361990488023100b77f300c00a61e305da692e895a2af9f9ee3e365441bb285de43f9d01cb0ec41d36702eae0a1e41dd341fab843e0bf210302047c435bb500673065023100a88878874c31788e55745619afb2f3b850cd126b2034ab6fe49d3b66dc5131671fe84ea41f4dcbd1e96c9d339a548aad02305165619ee8b0754a95ad8a499b92960e943aefb28901eab7c2d19985328de8ed24de78b7480aaac44dabe536a81a6a640302047c435bb5006730650230361e6331923e25b3049ed8445d3473243014eb0c2ed059059f501ecf56388ed2baf518404b45c9805ee578757c4b72060231009db00eb7b25572fc2f9f3866c2666643898299cff1a42a585b6b09ac0d91e6ba384878372dc0d7ed2c599b21f9ead44e0302047c435bb500673065023100da339677b8dea34584c9c5b3399dd68780755a79cc6b93d5b8862f426ffa2a9b1bc95e07392040dccbb1236cd6b7f9650230578f0c994ccfa68302b259f101aca9cd1ac90a54a970beb3da2a4a84290e114d60551bfe23ac1b8649b2989f1b3a1ab90302047c435bb500673065023051c9cb876cadbbb0fdbe5114737449ab91c471a38fd0656c338be4fd9abe512d82cf6fd0ade0bf9772c751691b18459a02310096e1847cdd11c100e6009d3036cde2e009a252ba3335355007a8e30e528935eb248bd4c420855cf8381ded785d6b7af60302047c435bb500663064023076890ab8ae650832bc29b98102f5ed42a9fe2f765efeca683f732587da22f771ccb9de52300fbd275da3fbabe7e4caef0230079522e668171905b1b6de1ab2341baeb0981dec2002da94bd15a517d73c048fd8b94b5f20f70da966d7b7c2e36efff80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307254e9ae5bb7d9f66240956248cf429c1afe5b3b67231631848cd77fc8b68f9fad8618151482abb9df2b6918b68e2182023100eb1eb006d7e07ebc4dffb7c298ed6356c354aa68d702b1f2bea22d14bd18cbad0448449ba77b390b810540bfac489a380302047c435bb50067306502305175fc73026e943c5811d02ecbfec768a67ca10e4b58ec1c6cf0e8bfc6b95f6945e3952ddce216fdd7620a5efbe634cb023100aac5807b031361dd9eae4d6b85dd6c7f9fa92cf9f5f497280e0a7d2c10444bec5a882edc4f9f4b36e6a625efd637a7b70302047c435bb50067306502303e7937a8e418d44aa48bdd889d2b0fdde442e6954fb8b8b63f853bd42e1469dbb1e29272095ed04c2666a2fbbf23b04d023100e6b49f4043ba61b162154aad2080c8ddb0ac5bf3092c0c6eced6da13ccba5a0d60ac2671952c3be686844a5ce2d93eaa0302047c435bb5006830660231008ec7995d39ce385a3a98bd9eab71aa5bd88f063e3e5c844fff53ad83ed831bdc1ff104886d3e9b355448fcd99dca137b023100b51b4229c80c245fd3df2cf9ec0ca9732aaf8fb4a4b8dde50fa3f9e04cb43fbd74e0340904f4cde38ea4bcc83080e5530302047c435bb5006730650230782dec33083e8624c074f901ed7f6fb7b6a9300ffd9e70eb451edf46b1f4acc2f739e93025a515113caa271850ac0643023100966e1d321241e067c3de6da40ca37f7496fbcd0f44d7270f147ca42a27c755a95c73a8dd9a61b72abc3e26ff6f2ea5a30302047c435bb500663064023050d5aa3f0dd5a0130e7aea855521cddb3e6009d9ba9381cd74324efe93a8ccc29d203885b6d349ec2de4ed0e8ee15899023077fa46a25fb8851acc5463cd280babfcb56b2e96af24d6f1add46e7970115e8187d4ed0a8bc9fd905ad08c89a7a4e34b0302047c435bb500683066023100e2420415852c20a760bcd26972f43526431eec1b0385b33707813256e4823b8861c2b311949ae9a068602bc4be296a3b023100fc866aa7437a3430190940d4d23148918d09b28a8b1a2e3609ea2c10ca47b823896f1ce572788d64605d4df7ca146f270302047c435bb500683066023100f4d96da8ae11ca2d3681a4f9edd6ef9b7e4053ebf5a21d19704ec146cd10d825f79bee363ae24693c57346b3093a8e39023100c920f95ba221e0b9712ae0bd1f3ce9fe8bf042b91e979f63b5e43f7265c84377fd2cdf192a37b49b5eb5a4d75b1116ab0302047c435bb50067306502301d22b072f0aee88d55b7c7e3ca285f25d410c1651511fdc26dae7e769b79e6bac23dddf92cb126b5fff81e85993b0ccb023100a99833e1a4447b79701574a92576ca906aea0742fd5ceb8f79f5e72429668e4260c1e8d4fbf0e020b466154b9645798a0302047c435bb500683066023100e599b262b2fcab399b16ac0ad39cb00edea5afd48abfa392674736cd8271384f024c3e18d5d8f8824ebfbaf1f3d58547023100ddacaadbc9974c95d9998b4151384f2965f46fe9579af5de163f4a5f3afd4d52b3ff5f5c08e8b14ab05d3e6948b4efea0302047c435bb50066306402307aeb29d4718bc356b444e89c20e9f4e8ed771e9a0ec907299d84a130185f4f317a4ff2f0518a0b98757b22a4188dd15c02300559861d20da7972715226dca92baa299fa5a306f400db2f3641feb7bb115e40533c93fcc94de1a7d87a7622803b88510302047c435bb500673065023006afaf02551ba0ae82fa913381e650df9378a04b0912299d76f3ad32c68bcf3e423e870c43e56ff0b20faee9498f9875023100ec72f173dbb704260a7cf23ce451fbe33c445b15bd25a00c9eaabc017f469f40207dc7aa1243f6b5d79cbb1e912b6aa20302047c435bb500673065023028dca0718049be411689c182b9a549ac81a000396b78ace2213ed2adfbeeee5a75f508a18c813a72992f82a02be93f7d023100f1245bcb17673617c60a9f78370ba861733f493c1b31878193064f35b7656e55bd62c3c129c4448b62dd62ea53b49db60302047c435bb50067306502310085d5f19f9aca2fcbea1e55369709f803c5abd2ac0ae8c81cb67526203f140a017f3da95e238f7a128d58f26d23e56c0402307222a60e2d553bf921a06dcaa21b9fd646562d15b59347e722524f2ac84bf7c113782186e0e2cfae98ea6b4dacf426750302047c435bb50068306602310082e94a5ac9827b2bbf9989a9584423b14cfe60b4141d7007a0e33f201292d7640cb19d4a1704172ec53c30fb363b6a43023100a3c4c4ea34f6ac5ca16344f6cce6104ef96589b98cc405de753d87edf51debc562b71b67880c1cfe6dc7d9cb9433f2070302047c435bb500683066023100c7a33eb3521e9115f6ecad46af2dacb27e954ce3c551cc2a1e06fafef55ce0d8ccc19ae63ab24820ddff3088214e12d102310098fc285177f8c814c3c0ada59772ffa2d8e33c9dafb0987161c65df0e2fcd7126a776bc51887a45dc71613f3efe172fb0302047c435bb50066306402302c26dbcfed0880751c2b7bc6753457f89fa4d85942e5fa0a284c70318846a07df662084b81d482b32525b4ab81434ec602306e8ded937f4ac91260ed143e3f045a370ce8345f1a1d62711ce193f1f5288daebbfdde29efc0590100442dc79d0f17940302047c435bb50068306602310090545d8e53ca650d057bf014b1227a17ddfb11186967f8503e2edebfe02cf6ee4053895514fe8f58803119c6eb58c241023100e1c26863811dc3c0a1f24108152b6dbeb8423365857fe7da7793b3274a45f168136678daaa5ffe4c55f9ff94cdb8b8860302047c435bb50067306502306988da293f60690ea75d877644f4d54041aa8e40790a1ed795aeb4af5d67a7d38bc9ba69fe2c6f3ea72fd5ac1a09abdf023100c2d2643691bd6d1fe2f216eec003d627ea8be779b33e990f94952cbe19eba926dce9281d9e0060e8e85c5414919d06030302047c435bb50067306502304c121ed303b5d887c1994f8ed4b00cc78fabe24cea5dcd82a02c04f81d9f85d17baa75a52c17c8e65ba4b861632266c70231009f41dc1761c961c49b51059ba4e78bc1e9e58265198c4c26271729eebd629d93985ec47a4846a4754dff48e6a368739b0302047c435bb50068306602310096fa7e5044506ce5c59bcc006ba951e88547029b5294be2d8b225b4cf7eec2fc9daf293bd25112aa1d876a01ce940f35023100d50ad51926a56908d3ef76038111a98d4fbdb1f2f6986ae70ccb8fa68d71d74b3789fcfc76429046f60289c490500d5a0302047c435bb500673065023100d5f461093b38fdd87520fa8e6b929508e7f84ac3211155389ad66cbe8234eadc2d29a20b3a9c4d382badc1cc43b8fb3c02305f8a8cfa6985e6716f0e666741f83f99ef75163b9d99036fd0b9a7fb31d6e0c8f982277b5d76c4da0de9d00bcf436ed60302047c435bb500663064023028cdffe9b431b4206f4924c35fbac1ced8ef96134a1b3eae9ac1e682ca50cc8312c3b96c598151e65cd557e1d9b0094e02302e28be695746edd51623fcaddc759abb1e3383d5756ec3d792503e71c10407fb96185e19a739953a7ecb902d786572460302047c435bb500683066023100c75d94bca636cce94057f9328d5f626dddb22c60bb94bc363baae4e0b7fc67d47bf4139b669b0ce7ce2d36f24379c5ae023100ad417272d3001dd5b7a76a68b398c35576a906c9ccdd7e14ed43e3f9d58cbe6060004e749858a375845cd40671e036570302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310088db642ec1fd035d506c8cf9537ad077e54c092bbec17ec9c28315aa026419844dfedca6647b7a13399e3fe495387ba1023057ab368f5c991d153456196f87dfc3f68057d6e0dfdfed34e539245317c492621f78877c9eb3c174750ecc9eb4e1bbd50302047c435bb500673065023100b4a0fe3219b765f2345e520df35caeb846eae9c32276c9986a987849c1451892eb8cd25aa34099afc874d0164d844da40230271eda268939d9539bfb2c22e5ab378cde5221419f286b39656e64f892c85533afa0b3d3950a09c6167eca6b83dc01e30302047c435bb500673065023100f4e32399083c99ae07eaef9ad1d3029e096690c2e3a998e2134c3dd874cf15614149f9223b0cbfd4022bbaabd5dbf4dc02304ac0048c2c59c8407b57893b3754eedd151230df85fa518780e01f6a0a8617ae5f0b6b2ab2c72a8f2b901349edf124e30302047c435bb5006730650230216320f0c8f6d260614a6c73f738415af3d6945742f5afad2d5fbb4bdd9f220e8252f8db6f656e1bb18c659d949935b5023100e092090cd05969ef6180040b0510cb3867a2405cbb1428b35df3e5bcae0f9842ba8055021234e4acbc3260bbd9c891d40302047c435bb5006730650231008ee76b64cf92e962d968ad5dd45d4d2cd121063171c18e1df5282db158f42253843f19f98fb9d7748d9e361c55dfce73023025e084faade67ac11bc7a6442a65eec2d09ea563b052b21169afe3a5a3b03e9a2f1ef704ce1906a14751241d727b37f80302047c435bb500683066023100f94a1f514579fd79082a07da176f65da470fdef86e47215d3a5ed9bc8471af46acb4e68cb3a22febfac02b8d1e146df1023100896bd536748b2b1c12e2b99d81878141935652b6f58ee167a7de91a0df5b8ccedf69b1c462ab7bfe8dee83892bd74f3c0302047c435bb50066306402306634014f39c19d4246a22a25b7df93274824ee6c17c5afcada0f83fdd0edbd3cdc9c144887e636193223fe97aabc976d02306151ef836846511567633a05497d1f74bb50d484662183cba9ff0dfac4d120bbb8339204760221d9d6965554e71331b20302047c435bb500673065023015505baf3413a1d28bf4bdb19d0ccdca6859b83f45c20649178e4304ba3f384f5c0da4292adfd765e6b852d7ce458cee023100d2d4221c8d0ca85ad1dbf70e5b314fca4b8c0e2e77d032133dde4513d8b2edcbb5658a996bc5c6e32753be02fce743e20302047c435bb500673065023036339452f3704af5638d1210803d22f10e6468d0ca3c414b53c4c366a1dbb1d2f2beb30795cec3a4e4e4e5b039d95bd3023100e26fb98cf06db7cc7236e88b87ae356f75f7dab222fbdd724e074bdce5067cd97a2eba30e9342396875d76e693ec5a2b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ff44642ca5363260aa608c571811484fb5ca58bb16157d3f07d1996674783a38312e48efcb8a9e3d4895572be76fa8a9023100dd6c5621b4e20ad9851b614743e18ca4c3958f10d0897cb88450b5e0e84308034c014d664c61a8ed94c356891209aed30302047c435bb50067306502302b198df82605f5d941b2d63dc568b594fcffe33b308d3429069c22aaef62cfa75366416ef393582a97da989d3add6c7c023100f251e5e3f16a5ab462999e0fd334a493c921bc92b2a60b84d7bbca3a35c9b45ab0c27b1c559655b70c2cb83b6b57aea30302047c435bb50068306602310093459cebee82f64e29bafa1c444f829cd5a283daa2b4ae6e64320c0f248b462a05b85c6bf41c797c30c562ef4b48e04f023100ab0b6a1a8255ec11855b1cf7708982c0e21494e8c9bba6f2d4bd2efc15dbf06624fb65ea52fe579e45c51082896677670302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302b69fef12327da4f36e4e7d6f8b83a25f56a208de619799de03f2c266a04146ef174c2688344c903e2a7cb8bbcb32f7702310082b0cb06e97cca8a4c19e3d6141ba8eba2a514bccd5ffd9a5a4e7b3208d6a9e8c3e82cf47759ed02a45a36028e15450f0302047c435bb500673065023100ae41e7b8caab1f410163b53cfae71865464c9679563313fe2cca2b38dbff399e72f9aab10b2d1eb386b337c2cec7e5a502303ca6ac46b1f548fc3d73e51355b784f7fd5a46228c5c5017bbca82bc9a165f606530102f91f367b087d2f4eced0c90df0302047c435bb500673065023069693b0c8abcfc44ccb24ae4bd24808dee3b021f7fc53b28ec7130db34f7594fc230199e797a27688cd63f6baf27d7f2023100f613be7f9cedf51605f0ba7b65a41809d200537e3442d8b45335e17981df0278913e643467a0453d92038c6e1fd85bea0302047c435bb5006630640230127bbaddc78859643a50cbc404301efbf39056ac1884b42959311369d217b36785b8270c132abdb818363c80e208b5cc023012078981a35ebb0359eb053617ce409313f3fd0778b4f4e6f320fda74b991b0ce2acd653488a007c6b9f06421d556ded0302047c435bb50066306402302836b979a5d7c459b92f0e33183a9238318491be09126d12d62df66838e9645e850d7eb89a7ecdac3aa4969b29b5d3e90230529ea0a6bd00ef58553a32f2a457da759d20316a99b0650039054b03072ca6289902bf6ababe7f0950709956f66fc5730302047c435bb50066306402307819ec40aa72896c8844df70a42f26b45b2852ac50975e21cbbce87710f749f2e849179d68cdeb6ce7cf739b9d8443a7023037090509c993dd71cf5eebdd39230e6511e465af3c1fcfc84c0283ea3f3c9cdec25f56067d6feed770817b39449351b10302047c435bb500683066023100d48ea49801fc14a3343ecbf01550b0e27000a9a27973403526831497b80ff0950a23e0323bf4c7d0fcb6fab31c8d908a023100f3952bef4cea220ec78ffc4c2312315fb3588d1bf7772cc59672c599553d7fef0783190c39058d01adda0b03fb854ea10302047c435bb5006730650230388d2fa967ad55954e66ff46d6384e59a92a0e7d59b41e2fa65c06d1288f01f3980d18c479bcd993c60998e72fdc0d7402310080a5b80b15bd667ddb04f67a39cb7628437308b935f52417382c9d65f36bc2e074162d3c46fc9de13b775a719bad43980302047c435bb500673065023100d5a860881b59f0612d2080ab5656c3825117b724683c6fe8489fc51e5e1833fc921a45c7507115f43a588212742b660f02307dc08791b2455d86368969b41b939965d90ff7cd8faf67d29ccfe4a585af8c60dad40d796d580ec83f4cebc1bf3033d60302047c435bb500673065023100803df3cf72e6a06af160845ce747f73d363aab19ba7dd61bafd49384bddb7c398aeebbd4e3b4f52dc37c49e862fc01dc023007adaf5176f6fcab715ecc209a964f95ec74686c6808d4d98c8d6433af9d4edbb78f3d435a60d71d8a76500edd3e4a6e0302047c435bb500673065023100af5bebab5b17011fc07a954d239c2de4b1bd7514211eace94ad6a2490c27f2c8c7f770138ba86ca661e711cf1997cc7702307f09a0ffcf528915e2e96511a627353a86fb318ed4d04c938f1930c65f3890edb8056c68f59a67ecce4db71a3f7edc240302047c435bb500683066023100b52bf98525d9519b4c522a63b342d6954d5efe3ee860661be86a1e9cb7f9b23a4f11e917077c66783336837266cae56002310080277c60fcc6b4e2886f187d67d05c344f5c8feec89c11b444b676902e48037e94a2a71d5d4d058622a82b64a3bf9f860302047c435bb50067306502307f21a469880c8e44ddfd417652cd7b84d60dea131c0c8d5d3848646e617a6bf092239e7952e6b39a5de7b63a9498ab6c023100c873a2df27b2b8b93e2861ef7570ad67efb17e52e68055ac4126ed6a4e0c66cad3236c8cab090dc0d992267eda385cab0302047c435bb500673065023100fdc710fe442e2d25d1738534eaa7dd0b879fa15467f643bdc05c38e37a0378747ad59cd17fefc494d276336ed5ae99ab02303e08b41dbfb3f0435033a992224fcd6b1b499d7b44c60de305053b451c0845440cbc175e8c685e2fa0eafd6d6fa719490302047c435bb500673065023100a2dc5305c44501a545b235e3252fac3f7b78c98ec739d8a7b95235fe1f83bec690841b615e75a655fdc26e161092d91402305947fbb1818c731eb32010853156b001e781a86f197d1a6ae698e256c48f5a1c11a9cbece914f65c419d392712262f8c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304994d96655d60d325647a70eaa2d39a0df93eea73cfea375e88207e98fc6bcb92c3c4c9b54a6294d9422070766722ea9023012b879ebdc9bdf98701df0ae990ee29772c798b3c11ec61753f4874850c319ab7daff951a30f9dab3de9e92ad1875aca0302047c435bb500673065023100a234013d24e3d9d7da8406fc4d10fd111dd5662e9b3b54178f1a9300366aaf3cb9c7c2d6b475f9cf61a0e35bf382e8a10230473c20f4e403d99d829c40e7c39ed1cae8bb32f5dd0c0429372ac5e1cfe5efbe18bc290c6cdd35277be555f4cff95c370302047c435bb500683066023100a99105e7e7fff298cb14205c66d48f4960205ab34ca2e8a71197d57b39e599a4805d7e5c784dfb92be7c9acbafeb358f023100f98fd7793a39e506e76f9d4808b8cc5067f2c74e006da2d03ce6178480254d5d9c1b5ed206081bc4d4a3f235b643aab60302047c435bb500673065023100de0a8fd508fe6778a9676b6e809bb68c2dcfce873065b6f01f0fe7d61688520c42f2664ebd7d7268de49ef8d6df72574023006462524d6a9374d84085113af273a7aed887254311e8b8bd3b01e3e03beaf264d782ff4a7287b7edc0fea3bc6429bfc0302047c435bb50066306402305011ff322705cb7b1a7c5285d50011e0a812db19ecf5d4dabf9dfa68c1bb75d69d7a77b3dbbf313c359f7c4e36094ec8023019fefdc54da78c953606b2d00a72aae6818a0e1c6a28f4347576506ba1a92799478572fe2402e11634a34d8f02358e0f0302047c435bb5006830660231009a4023975e02461ae3c72916ccd2437e0493fd69d1fe25004b83f0e835d781d7b86fe4540c9788112e8ed3491c88200b023100f9f2fd99da88fcc08f7fb16d2beffb32c4cfbb4e0c8e0ba3dc4449bcbc67f4a8bb175ba06be311df1e60028e5d297d860302047c435bb50066306402307f64c2f0b4667d409a6542a7313d8e8d54ecaa4a4385022183b8d5ec90a2c92e896e2d199af94ffe2cbca6a0ec99591b023003fcb1cff18c9c59d2dba54a383fcecfc49efd5dec575c962a1ca29e0c4d281c996913a01901bfbfb761e40d6b2433270302047c435bb50066306402301adf35476860267d231a245473c341cd23c51264d19b9594b038224dce02d43f728e2153f5a6e71e1974af8c782b8a50023028a0eff793912226e2174139eb3cc4b38c4d7fffac91029d361f0ba5021c692f96a9e5b570a724dca6f83a41cd742c400302047c435bb500663064023047cc42b1fbe6f46abff17446812703c78ad6b9a6396413830bd1741cd22de3b912be0d2818bbb33f08f26189331e575702303fc2bab87b509f65f22316970e1aa8e9efb439c67d99e4679de17d0677e86235d21678dbc8f5d9d36ad7ec72bff175da0302047c435bb50067306502301df5ce1bb1ad7f53e930200380ea32e509c8d458c59a9f0a43701dc1fca862ec5f5e42876a121fada9807dab773b6993023100aefbb890cfbd68c474263a8dfdfcfb3c38b236c720ddf35cb16edb1d1fcf6f4412cd01f302b0d32f5d5375b2f66db6370302047c435bb50066306402302cb57737e8df7aedb50be8d82de05a8668bbe905264e4991392c52cc53651505040edbae29f67796c04f8ea776fbf41d023078de1117ea6f3989fcbeb9f731c32acfc7b8ed262d37e5b16b6f23575a95f7f096297aacb72c8652cd6bbedf124e886e0302047c435bb500683066023100f2d1a4576b256d6712885b95f4cbdd6f3e5582f2725bacdf1baeaa1208ac6a74081c01ee506b2ea9a9f3c1127f1f9ef8023100bef429e60e0a679b91e7a39a3fe40498abb53bb3076ff25d191481897e96ac782ece7e6f0a6437c1cba145c4689766f60302047c435bb5006730650230529bfa61895bdd565d02c1fb8544cdc1fab7cc94dc04b368e46b4bf20139182c12411022ac01982e5b09644fe8210ccf023100c1a292c9eab9582fb3b3c8fb9ab2d68d91aa13d0a90792adeaf6b20d1fe7497ac7079518a4bb9b41cac24fca7ce7a6420302047c435bb5006730650230690232f31bb1ad80b31adb32d0141259c7d87d1b5155173cc367aa435af943f71788b9608f5a0a356e572144cce90920023100e89a566b00907e1fc5efdbafe515c79f85bbb57c794f47a0556ca1f25c0df05465090e8e4605c59c28685f3cdbbd36a80302047c435bb5006730650231008bedb913f8e9404268c1efcbf78a8e9b0df360381d744e09dab577585d10c9f04f5f7ab24ad7acfb6252cc1a31d18eb202300e59b78f39fa3d1c607bba3da950262b6bbf70ade77997e69b08c6e0c520bc9ae90e8f2bbddec653350af4e33845e2ff0302047c435bb50066306402307d6b5ab489446e8ec00137cf77aa768eb506a4a3d2cf59d8f130f6a82bfa61e7e0e984bbdaa0d093b47c4b79d7bdcc5a02302825633075b3299b4d1fcaa187cffab2b162ef54b8a1958d159ce7c3e2e035bc967a9bea14d3bc1db2a70c4cfc4668690302047c435bb500673065023100e9c31bb7617cb924f7e36b4fbc067c4d1f7844c0a2155fc63c3ee3ea21bb769676d1d1ceae01d81aa4f82050d46fd6c50230137f5d03179d05617e75b9198de00e75b425d6bcd042d4810bd059ee510ee8fee8a70079f8d112632207df8c09f497510302047c435bb50067306502304b75ef2e7eb922fdfbb2a970393286eefd9fbce25f4c2932bc825281159b7a955481933b984d74e67674e55298d2600c023100b58f035a760dc9d8f4076271e1f6cb717f28c6b90d3f1418073d62ae04b685267c873bcaf99b543844ec1fa145be83e50302047c435bb50066306402307fad6d677f9393d63fec091a940cb6e18a4b2267ce7c7f0bce318f6f3e16bf53d65a52df7b466c647a56634079af2f1b02300cedfe3c57b074811d696c560b2d14cf29551a9e74355e522d4d173585971e1f382b1a6fc75e06c2f3c2603c7b4d0f4f0302047c435bb500673065023075ec4acf250ffe306e34bdeea294c3da139ed082ceb8d21465a7a9c50155c1d26b5c301fcb72bb7f8d25802aad9b2ec702310081e3145cb11fec4dbbe660d819adafdfd137b4ef24d32262b0b31b5f20bf30c4a652b9b12e337c50b57d95b775e5b4360302047c435bb50066306402301cf3644f060674345c67e66be2641c337899c3621a7a3436645af310e5bb21f232149ed4ff7702e688c81b95682f021e02303f6f10cfc0860d216568608d882e9d9e53d3c66bdc589e3288056f934f9a281597d3b734bfec00eaaeb77c420741d7510302047c435bb50067306502302b484f436ff1837ae14798fd5fefbe6b147d3a1417023306ae6bdaf6673a69de91df2ef29637f8387da49ff5535a2a55023100913611225b34d0d1390a7017990c0d4a6c7cca0b7e1b9a6a80a2dc39d6f3375cddf8f1f17eff20b0ec3b95ad176c76a90302047c435bb500673065023100dfa6754b4a37235d99e4b3656f6c0d3ec70fb2b08b6efc8eb0c16328e1d4edf7ae2f0e44e996949c5084a01b0dabe215023031dab7a44bc7bb9504db84a391a34b01eb7bf84ce026666c76cf997bd5ee7886f84f7cfadd233d03f573a9587115f46b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023011dda74b984f823db566a8c1b9533bf1aceaf02c763626e2d768706b8540d21f96abc4826446134c0980e5b9135bdd4a023033d5a06fd2bf88b1877045b2fa11bc80ed86af1cd5b55c1762e3ce78932e21d7585cb1d931af302ef72b7d9a87899d5d0302047c435bb500673065023039e0e52c53c149c737781dc76bcbc679ce203e83d3f7d1f48b4d06c2f4ed5960411bdfe5d60d4ac3b4d3395a1fb6b3c9023100fafcbad1432111a42ae1376143935c490aa28312f622a7b239528fbe8c467329a433b1b312e8af7dad30215fcaf7f0d50302047c435bb5006730650231008c627a8dd12bf354c51a830f6fc09a34d767736150f7f9ffe1c212a52e5f553d274844c750479231dcf0b66b718c84b502307fa25b3446c0f3a162216ea369d48aafb3b484390acb6f0a67d77034f269d5164cf2010de971d69dddd5417455203c710302047c435bb50066306402300812f42770364f1cc3a71e9ee17560a757f0c619166d007a52988700ae8955e43ef2d2bcef78b43b91412acd9979c31302304f2ca93da94d532fba7760747f777122dbc33c9c1b11cd2bba0bc9e8f622b1e64de8bb8c1146dac871866cee21ed49ba0302047c435bb50068306602310089fb63905860c0d2e95c4146ae01f87b6f4d7051fdef57568b72ee0dcffc0260c360aad15b0c1680283aeef7699c4d9602310080ca6b525dd2b52a0f63427b2458989a9922c3cab8a7e4e230cb58ab2b39e07b6ab611641bf42182c1283b5481c583e40302047c435bb500673065023100b472cae5dd5a49afe58074288e43c920f734a0e441256f59936e02eb7891be9606b11f9f338c9e25b840f48f5baa49ba02306868d20137cb3a6c668ba3a0b135abe94d0e17bfbf0cb0223187c90bed43073b03eaa488d923f33809157ba5e5830d9b0302047c435bb500673065023100cbfd8de3babd4c3defafab99d30ad14296eb1c0c4e8963db8d0468c618fc41dcc1c6b15b1302efec7777a7cac2f8b07802304259576c95533aa9dff170d8dc46df17e70177feeeebd229c06c093f8fce8c053126a51874b1f1dd250535e87c329f3c0302047c435bb5006730650231009b39fbe78315350f8b2ba7aab0c37de244ef8464c66e9a992c9ff9ebb402adae0fd35db430e7d338c860231ce41b697802304f9629092c7cc35186496ec4c1d9e1eb6b67a83ccc3532800d20dcaba29f44bcd48279612dc81b7d9f6519633a4daf490302047c435bb500673065023013cddf1887e06c21933b53df48ac5405ac34dec966ee7a48f3548feac93907bffd4f90cf6424aa573a9edbfc7610b155023100cf52d9b05a9a9a2435c6ed9264a0a2ea19579149b8127ec5fa88e767937e4e7e5c34bce0805d0bc1a3f9f403620e97f80302047c435bb500673065023039dc9b4f623d3736c862a66395ee13490671b8cd02e85d1ed5279c1a3dc927ec9b2436ab490a4a395700a258ce5db809023100d7b587bce450cd6df8ac6dbe0c47d4e13d41e9c78d9c61d4eb20cb9da94110f62e0d2935f310a83ea5fb20c3408cf6100302047c435bb500673065023023313020c9d82310fdacc4672733510cb734eed61c895133b43ffeb51871beb5c6171dae7bca69fca7652a9ffc442dbb02310087541d8d43a23bf85256fa679aa9ece155552061cc5ff94cb3f537a77c9ce3a5d8a065542f910161890c8bd144aee2d30302047c435bb500663064023001741c225674fbe9b97c84ddd1364f28e5e3b4797c0ca6bea9c3442800d7099900c7164fa374fe5e0dd20e3ebe17c394023074970eb5a4713bf3cae224880a376b12a9cbc5fe36c12910e95844dc93b64d7171b3408f482010148df7f7989e8a33330302047c435bb500663064023005df98287aef83c90090805bdba9db11254b2a0e016fe267d61f1de0f53eac75ae6b4b9d2e80a0b0a5ddc884c7ada48f02301420024658f2bb83ccfdc374b45874bb71e1ae84a1fa53e4ff17d99ae6c0a6e54be49fe928b9b45aed945fb342b9a34d0302047c435bb500683066023100a437cfde8f0d5e7f83affb07e141880602ab1d1bd5ba66d827be4d3303860a6ee18b0ece8c8bf5bc7cb28f5a83508ae8023100a33f3e4086c6a729b6a6f5dcc65b0ce3210914f2a1c21fa7d4d064da239916c1f3a3c48e4da7f871a98bd545a9d79c270302047c435bb5006830660231009de0e0be3d6dbfdaf2d007f83542deac86aa677eee82d0c40cdf1714a791a6f20e4f25365f624fd155fd05b92a84ced3023100fb6b69c000ca33f710ff44a4b1997bbba95e5f170d29dccfc0c6ac243697ab5a7fd08b4acd93410d119e5b3f3fa948b60302047c435bb500673065023100ba5abb5198466ca1f0e99b362a1f5d0d6356f97bd0392eb6e013ecc8cc7fb81559a27201d8ab3c0f466d1108c884687c0230328d000dd8286885323bc13c2d729cef4a0577be2e02c6bedc392a60893319480874bb963f5bb74cd56911185b835ea30302047c435bb500683066023100fdcb0f09195c3b33bdac7be2b81e1a34f9fe25d2898cd28708cd2433c462b3f75be1023aa065ac8c3b4017f04f1e3539023100d7a52861e335c2b7c926b78f1fa4885877300d82f3ec184c1852b1c72c23372510a58b1b8249994575686e7a5689e9d80302047c435bb5006830660231008eabc3d0f561f93b21392382e5f8567d94e92b9abcca7363c235f3c305517eb1dff134a9f30abeb8a88847b11b2fb1d4023100d05eca0186595f480eaa79c6ac470c02f9b19b9ba17010faef1674e257182fa37a9b198f911deec19b455ad9f1bdf9bd0302047c435bb500683066023100b9166e06d8595e228c0e257b011b42e4a9c98e02514c0e46f1b66a43f4dd4c90d2e2560b95f1229fe02474d49c5994d4023100a6c620d9f577160931eede095a33068deb1de3f5b49b138512ea14f4af334a8aae535d4565d09fc27e2533ab859ea33d0302047c435bb5006630640230286b8b1c78a1bad1098468b13674f369944f6bfb56dac0902ba8a799fd91342f30dd9c365b1ea302463d255699519d690230653da9e49198d770191784bc4a5f6461adc2b2bc09a17fd66470ef533101bb94db170f53e7edb7bb1073ec721740865c0302047c435bb50067306502303099f83054f8d968ce212ae88a8be69c93b3cb13bcd0c05b831adbddf2fe55896ab488ecd0f6d665ba723d10d7e091fa023100873d078ab86a83833febef23a9d5b2d40ab3355cb67383e12eb47e398e82636a75ecc546139b61894cf60f4ba788dc140302047c435bb500683066023100bd4bdb26cf60ff0d836a835c1485398ee036a51b0db2526b9d46f416fe564bce05390503bd80873ddb4c1bae1d9835d902310080833c283636ad6fa200d4be0ae99c2026b410a7c206f161a15c11b0d2e03b6074aa4b80c1dcd87a54b15d12e8a6ca660302047c435bb50066306402306a0572b716bc676e215534abbe0acf0fb1559d8f59619783002e27c9a803a51824f7dac9145c8c08987b77cb6337409c023015951f435fc048dec50fd63f7d230c0c9be0efba2626d0aa3dfacb05b929ff21cc2df5b563f2736354385cc3d81226990302047c435bb5006630640230183ac7cb50efcb9aae924a5ec7e7490dbfba1541c30fb159e5e34e227a43129d80ef75a5b229bb1ba431b2297e1248a70230285718253044b6327778939330bf62bd965d17b2a6e34e5166610e7752684bdf96d4758b56f67b440f23e95c1df400330302047c435bb50067306502306945303865d112c4729834d3afb36909dca7934c8aba6d36b051356f5c8801ef78d9ee0184df1272e73437bb4eb87aa4023100fd89df8087c7a1e02f91a7884aa1707ab941cfb384066eb2946ca3eeed696fda78bb6a7bf3be6a9275d7ab3ce2532ac10302047c435bb500683066023100ad25b1cb1a0efeae2426159625a79c6b966b4e090c7698eef5bc3cde9212dfdb6cffbeb5ac264e8c6c976660ded0f686023100f197cddab37874b81b94b327e332cc9a7ff1e6368f94576d868d0b2d956e6c96ed8a289ab9506aa07df2c157a3d3a9e40302047c435bb500683066023100e8b22d2222325335a1c1737248d36a57857fa193e151d0e9b866a642c853b2e25ca01d78bf4e6f6182500642ce871f1d023100ec7fc28ab9892af10f5d44c88fe091aba8cb64d08ba0655e6bfc40e6928442a638f801a059c8676149d79866759339300302047c435bb50066306402306b9ea0d175717888673753135e6efd6a82da99b9aa492fa4e0f29d4f72a0a6cc55f72b94b934b8942e87ea7b99ec805d02304f327261942fbebe6b9c2b98ed40f2fb11642aa9ba55cad94acfe2294abf5f4e194500f1399041aeeb890d511b0945d00302047c435bb50066306402306a6e46ccdba9be5bf66899eabd0cb2fafb9244f891f6fd2a40d1c7323a59da21162588d3e0d77383179ef71968025085023043b372a0de9b64c47f6cb5e56efb1b013b24c6b7c5750698d299e245a9b5cee2adf6051f7b1383023c5b01816e92626f0302047c435bb500663064023022032f9b95f04d12d2bdcf7bf808a54b030c4693a80babeda12479ad1f77fc589885cb0d138a1ad0b8d67e7a39535e3802304a4d706ac5b1fe3051a97dfe82926d10793d9c890ab62f445e05794353d2211358489d893a9efbe4a558c90ad3a03ec00302047c435bb500673065023100a15065aa114df02ecc437b211d205daaed333bc0895b04c114ffeeb3be49668882186e1196f6ad2fa981c024721593b102307a069de4aead3d3b84c1dac10f756f98517979fefc5adee2bb4c5f287454a09575b8879046d1df3dd2e2604e2ae67b770302047c435bb500683066023100f386ead45a4759a51bae2adc5900c7197a4ebba605be0b6e1ba4a950d10f0036ce68bfb74fb76eaaaa0d819a68b7de15023100cb494a5f948677987b877507dcc12a0f0345cabaebc26978767719073d8845c4a0da9d8abfdf8d66dd112a680499b35e0302047c435bb500683066023100c4069679f5ee03c2743cc9adac22d276b0dbb01b83e7c116ef0aadc1c23ba7467f915af4cb6aee572fa1fc0102132f7402310094e8a7e01270d2b967796a450614e70cf8d2e07efcd634a16cb619c792668fc11b4a50b479fb675f9ccabef4ebd41d1f0302047c435bb500683066023100b62a411a99007175f6c717790737d4d4820e3e9b5d0ee4dcd3401bbf2b78361328e1328be40b0cd49948f461c3b7c494023100d17370b216539411b670117d643cf7c92357b53d77409d33c6edcf332839c095c01bbffef4ab4084653de67102aba1d60302047c435bb5006830660231008051443cee9104d0afa765c2e75f2e47aff32b35727059fac731b913491c1e7ab742eaa7eb0b7aa2c1cc9c1a62640279023100ad692635356b3543fba229152001bf2094489aa3fc8f20150eaf757aa8bde04761f9d5723fed050b69f7d2cf14a5843c0302047c435bb50066306402301649437e90fbc5e5b3797bc2aaf1ebfd8a6b59f9b21d247ad190e1c4d03f8cd46368e1fb3cc7edafc8d18e7b1918466c023055a99a7c7464eca121012dc34eaf13e7c2f78f3be2cf6e68f7041c3e36bb13c68f7007bd7ca24b0d4440911a7dc3a8380302047c435bb50068306602310092407ebcedb11c219789900b38d194ddb733fd3cedeb45134faa5b313cdbf586ecf70d019688d59d8fd8d036814d1cba023100e69c8adbd10e4588db7ceb243eb1895004adc18a3da8f0dd5aec6a4783f6861c53c8dbe16dc2cd604d9b4ab8d68ac8600302047c435bb500663064023016b5a2dce14a5dd71a5e76a154ea68c5925111d22be2a35db87e0656298e2d2d95a289c06da470be6b6d4636eb401d6c02300bac1fdf2e6529f6e14031eb2080aded55b8d76073b9abd2f9895aa4aef59f6dfbd23e7ec2176a308063533523a1ce800302047c435bb500663064023035f788b68fb6a7e827e001aa2c30f0211f12f05b4e55798d370f20ed0dd0a08305a09e53ebd9473bd3e079c289b01a4802306e682d79d0b7943efc5e53340b919439d71366c8f5c722374405438a26ebc096afb6d5ad8870149669b76feb80a1697d0302047c435bb500673065023100fc92047b4ffc64afcacdea51137af788c2325daa82276e46d6735ece0b77934552b1b0df7865c3302617387d862bb0f0023004da456b814459722ab4fa6ec7cb5ccf97f16377cd9793dfb43f32554b348c478c5a54b7b61ea416430130b49ee127810302047c435bb500663064023042e14fca1d8cb1f6b9100e0f24689ca257e0178e46364f1903b7f4b73e81a419df3c9b6060efaddd0b2425d74f94d2d8023063a0da769a58da88035b435e1fa9e8f132ec4affbbfc6f8da884f6619dc63305145f56c2b16ab83f119c098b8f8595950302047c435bb50066306402305cf32532a08c2136af175a72ba980ccb26eab5f50e16837d2f4827643a034f8e2f63ebe6b9423d3ff2f43036a633ec150230602bd5fff15d62b114c11e40e31023cf7783ed3d9339085e7488c75e52e604f0ed7671c496edd7a9ebdc5090b43cafe00302047c435bb500663064023005352934a179ce19028c25f04cf608f7d9c0acf15f6e86a273e1913eea9fdeea13a304e66a5bb08678da079969ed0253023056771e08289b38be1f529f3612579323ee68e76e1fc4b7d1a510f32c3fd23975d05ad6948a2ee1b0a9bf04ee2d1bb58e0302047c435bb500673065023100f251f1080d75cfb4b0856ced68154190c1bf5e37d63f8ed1a9ec49433defac6548ebe7ee5f6a3e12a72aefda9912786e023007f657338dc972e50372a572057b578c55e1767103d675aac8f44458ad0bd25b2c5b16d9054c1c42cc7b4c67d374b4460302047c435bb50066306402307d2f170b89998172afc51bfaa38e9b06f481b9e44db3eb6546ffb614f7a3d9de4c6e12d34d02259ed74d62577f6762d702305fe4bb2c7caac68e773914f16272915831d84d2f540081a3b6f2531a05b4171471de12194736df7816baace8645ef2350302047c435bb500683066023100fd0b6f9e95bfb24cfdbb00c0414399d9ba03559d87d75c1e0f041ba76594e7235318b32face18d50301d2ed6f93962b2023100b55d9ed1d2e5e83a9ca623c2368d2a6ed30edb2c48a8d7a16e1b14525314f4d8030697f0bade2de479d5b92e013e3d670302047c435bb500673065023100b31918b46389d0b209dd866bc81697400c75245048351752d1fca89d3acd22858961180d9c55346174b40ead81648cae0230656fc50c651e76945bed9ef72276b586b6aa1ee7d579b7dbfabffaecf2938aef42b7c355df0a8d2484fa097ff2beb03c0302047c435bb50066306402301cc9048a71574b31d7a8e9e44c6fcc3116f093ffc9b502a9354d429af75e856902ea94a411dd8a38dee8a28176e71c0502305b041270bf6652e0aa06034d5b2e92ef10b46612050fc683a580c12e4da19e20f314239529f10bfee5a83e9fea44798c0302047c435bb500683066023100d06f00aec95caa2fb21e879d6e25e4b0710976640c515d5ec6e9d629405a84722c85c574ac099ad1347a1a3cb26c264f0231009dd1454c55aaa5cac0aac686e3f46363921aebdce94cf89eaa7493cffe26c9987aea5616449e1844536d67e6694440650302047c435bb500673065023100d21f70a49eb043c18186474da44ea9ba7a3f6823b90263935141169e8eb5d2f37ff1e924674f2398915256d84021efa60230435d1f56748e12f2eca4022991b8a8c4cec9d02715e9098b0852869b8e4cc792460f7370f342e8f47049bca0c6d2b91a0302047c435bb50067306502310089715c8c42c328b513b6505c97574acf286a44274ebcbab87647ad78e1bce0c9da73dcff4849fe1212002e86992f7d7d02304278db8e0b7c6e449156f87b5c4c2ff316d23700a29376756842ea8001f2f63356117f212b22a8ad768a750cf50ce32d0302047c435bb500663064023015665e9928b6842f05c512d7b5ad476d9e3fa3565fb040e91f493c089268544b6d1b9d392e4d4dda64312b4103429acb02306ae49934fe95ee4ee84bb61d82d64390e328cbd5112a0f3e5b4c4a47a629e75d222df85be2a1c09925eca86c0a8a54830302047c435bb50067306502302e858fef12a1e39a73e5cc067efcd9c4a5a8c1d76d8a2b8d6d95229f979ded24117c83cf159b648d97d85f236fc38407023100980bfd7bf2e87d2d3c7e50b16e33a8f860c17999d5b60235907bc467b4ad8546ec299b08c07b0f66a1c1c51c802b359c0302047c435bb500673065023100c7d73d89d9c6a0707b489f9bca43ec1703efde17f9e69a9d6e08228a37852f4c2516aa805c970f76f5720d118ec0558b023018493e55d93beec5d6685b5551159d2c9ef4c1d5907303d93147dce11b9f0025962f99937afe2cf9050c8866173da1bb0302047c435bb500673065023100ccaf87c41207caffe2a6d08a414209da56c67085a57489b385e1ac1152f868f33339066750dcb9a1f226260bc3fe2aaf023019206f5636999953f0e4f50c69cf0fefa20e1e8346eddfc0ac6637a574564e3be564038f4bad8ddedf7cd44024544ce70302047c435bb50066306402304e54a34c68a461391ea43a511c1f2719a04a87d25b945cf591307200a97745100898419a0827a5131cf76eeeb8dc2be90230382791e2017493f81ba3a8ec12d2f0ce0662aab7d633a29bf858d67eac1ee007c45c21b84acb5107f65298cc04e21e1b0302047c435bb50067306502310084c6bea5f304ad0e06906809cc439710d5bd4255fdfc54889f7e662d37c2b27de6f7aee8647b35e80870bb1e5b4ee4dc02307ec59c55b80bb6e9018875155e0ee11caf2f67048c971339bd1e284ba9cadd9e27f509f59570b2ec57da91016fac1f7d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d7202399b76f8f6e82f5a90ad47837b90e70611ef953a9916c5cafee6b6f1dc9601b2bcf2b4a600a8051ddc4f2de69d8023100d3e846d9b325003dc141a7037e0316a01db049bf074473a92bcb7717c6e631cccce8930b7998603fc00d083ef29460d40302047c435bb500683066023100f7de2436c5bc7dafbcd9015770276b8b49be1f015adf321aa1d539b970268972f9ec2fb7191dcb63925c0274b5618e3f023100abcd30f33d806718ff07542dd6cb5a06c53b5b14439f867ac9be6ac8a7fb9ac9e93cbf52deb9223c7bc782085c7457ad0302047c435bb500683066023100acdef8ddf0b6d63da3b680133cc1273a476e8fa7d6116b1546c921643c1354e05392dbcf3f55aad26a18bcc594e97203023100f18c166a66aaf70019a1c9d95cf390dc3815908d35c93404be788c70ad91a8e9381eeb335b918ad04febe5c78be8a35c0302047c435bb500663064023013506cd61e0e0490a4f9072ded1d70c558ed9c44f893af46bb63dc42344ec30f05bf641caaee88d5cae4f491d2301a1202301e4d2997f7406276ce14bf15f559efe0bed70c243e418e5900f04c4a6856f784896dc2924bdeaab9b871b635fa698d050302047c435bb500663064023077db4ce7965a3063413bf4f2a273af9a15fcd49afb28b191a2f9e2806006152c532e95661d1c485331e5b13d9ad7c43402306f605c6e8fea1cb98696d7809b502330e7e5a1f7dfa9fb7b4e50eacaa01c7fa92dee1b74fd3fa6b3f9165da2e010fe730302047c435bb500683066023100afa9f33a18c411ba90da686c5c3cbd05fac458c12509b2d0c9940d11b9dccb16d600f365ca28d39a8ac22127f30212210231009a1befddc03cc44f3d9ae122ed56a89645b68e3408111b15d87fbcb4e4529cffac1cdba666538bf2f2f9f9838847d4540302047c435bb5006730650230330ac87842adab471d9cbbf99c2f52ebbefb25e6bc837d23167cf968af1f3eba28bc2b3a506450e89b3c631f798d65c5023100b9d029dd23c820ed6210d44b507482a626539f32da6050f438cd9dc213139569c21f725d8f2c46900438017069cd46170302047c435bb5006730650230298f9bdb8e2a27350e0628a665e46f83c23d3e7b78c79a7f51590fe137a53e28cad9efef3ff98d37bb538e00079afa15023100b6f78d58389bf6d977f1c256f8ff7636a23a5dbe3077b30ead3882e44e1bcc0aede435b70d685db24b850cbbc9852d520302047c435bb500663064023046aa5eb40622deab711dd1eb93272f8b5b4250a0a0a4e92107d2a177e7fbe5b5e068fdcfe827dc208cb6400fac0e157d023016030c67280227157cde35d6c0dde6318b807054328e2d5d92abea647d57e0d618bf2431d0efb30c4efc8173a4ce8b7b0302047c435bb500673065023100e9fd505d9908b978e3029d3669b280210be90bf3eb43a78b44ddbb1b03a111fa9feda847dd14357341173a2d6f64747c0230557d8e82ecdb6a6584e60a0ccc91f4569d753f14cd4d4e0de219e566bb1558d67540331caf5269fbd6d1e67c37b8a05e0302047c435bb500673065023100f2a18c4c88c0db4db93df8bfa73878a4daa9797cd7412e6a28c1890eb1017cae307c613dac74361033f5e951f75b091902302e1233191428c1706ad566889eef9f957ebaf0a7e8adb4731c92a5aa876da0cddbccca66e263bc91fc1572b3dc34288b0302047c435bb500673065023100fbfa7f0cfaeae92c71958731ea445a645541c34535b9d077f89af3ae064bc571023208719deaff1c427e82bcf39e91bd02300dbab3688de52e1c19b7c008402d8bafa8f2e92cfcb8e40e3d659c39c627377dba414fe8c1ec6315a05645f94d6429810302047c435bb500683066023100c13b54ab37d8ae5fff8270c566b9be16558527ae112bf9c3161a4f9214f10732fae1b947a15bdb06ca14df01c73aac7e02310092724e1e313d01973d0bc600c836474512df75221fef45851ce6671bfa13193d82cb1f2e4f2c99eb752376a36afe21f80302047c435bb500673065023052ba32dbe630d3870befa9273f07a43eebd94cce2104e3bad93371105d2320c06715b18c70f57fd3e1496db032bb077b023100b14fdb96b078790d2f726c1261dd4c4a8922e086b6b471274703158616e1ea32f96144905001e1ffe5d1424cbbb101570302047c435bb500683066023100a62d434d0973c40cbe32b74d51389431c93175e7b1e747457e4dcfd17a829f4f50c0f5f6708825d82a623be2f456842b023100e1f89cfd7b8ca58e9c53f7bcaed239d330455b51dfe6f91869c31f60aba6b775c089531151d3dc57bf4d9c6b153ec5f20302047c435bb500673065023100c904ed11aee2a827a11d0f4b9e66710278239f7c80e7a504fd688f35fe206580659f98ea6022892a99520bf00d23e61f02305e29178900ea0d4392def52c6fd746d946d1e0ba6a4c68430674c7e63800fe950ad05ff994e8782950b9cab1ff8cbb4a0302047c435bb500683066023100bb67da0d400e3985c22b977e11969e04c3ed99c14acb3ef99b6f90b072883c7dea8b6414d8ee3f063c331b928f83087302310088183e8c50a3aaef21993fe3b69c83e57933056eb442ce01236428547bc1c516fa16b03616ebd263fd09cb85b6e098ae0302047c435bb500673065023100e04ec847e16008a206689e87b54b80d8da3cffbae2961a34dae4287a70663b12526ce56c133cf4b2ca01021d81521deb023013a23be133e40f5e82376507e8b2bc68713c85b0e32be323e68814e36b3e4a10f3edd3bf3d7efb0a3536058dec9c130c0302047c435bb500673065023100ce5a09626b0564198c8cf3ab8d571ae808d13a14912df658e7acb00f7b664ce58b8d4edea3f235bd283bb490d856b7df02307cd67a9453039be05a02d1468bd526c9c2924b59c738ae0b0fd3f0dd77bc2c88e4fac287a302aa27738dd01ff7b0da770302047c435bb50066306402301a5cfa4bd01681ae330e6b7c571161a2142ad4f257b01614c8478b9a0f6663fc543056f9118f894b6efcb0e90e1472950230775c317daa1df74374a82c262f3105838be2a01c388a7af6bc8c79af3a87a8e8c46d02cfb066c14297f98da9ee26374a0302047c435bb50066306402302f9e3d0bc8c367ba40449629e7e30301d1e257e9f493d3bc8ffbb92383fbb3315f99d9899328c50535cb9ce63d45760002302dda7becddb8ac1392f67a5da0f41a511c35c318a803298df26c23041630a1e49f35a9da50f756d3d8da7f322ff4f84e0302047c435bb50066306402303e9c971ca9704c5480cd27d0b3d8ba8a3574ae10505f4fd7b76efbab164ba1a05e87ef293a7ef3d1ad8fc6de87623118023021acce8006b84c5caac2f83b886672d89975b7ad71ea50dcc7c0f9e7596a5b090828e1bc3a0eb32ae6482071e509561c0302047c435bb500673065023100adb684dff9fa2da226dc38d74dc53675fb4f4603610d15798de5546e978c7affcc083e3191d5f1cba51cfb58675dcebf02302199be37934b671cec65be7304e86f812d96c73360c1c5613b08e58349035b5d39aca26265c2dae9894bfc9504b358bc0302047c435bb50066306402307d77249623042a88ba072a4f1558c9b1d217cb6fec38a7c355f50c62db268d42cb7362ffd8798523b9237732befe415a023007ddb562f6f674b0785ca8f97f93302c12e6e64b669327ecffd8804f6079593946e177e385d4a2d9e78268029586405c0302047c435bb500683066023100a289c86c4c0080187e0f4d3e13a8f1b9ce93d515f2fd48989eacb2e9588104cd4a4b38e1e52b460b8e014ecc0829543702310090037c4ae890bd40f81fa0e00dd7beb2b6293a626cb60bbb82a5618b64c9ec51503f399cf8e74e8161f731d9977726870302047c435bb5006630640230522ac9717bff7bb852b3e9065c05ed941ccc6169998a00dd5c5c7fd5cd0078e5e5aeb459dffaf2f9b82c5f2b68ee98ad02300e7a8389d645622963654cf3b2cd7c03160b5ee0dc2b5b36171ae6f3b7da7027311954981a32dd15e657c6f3a7f26fe30302047c435bb500683066023100ad0083fc6123b3bc7ac2c6c28344838c5ab80437206c914b8d618586572f0ba5724d1399cd9fc9d9f7a0704315a41889023100b025b0863199242cf66fb4024df1be892d30ac0d91cc60e8da8f6ffe18676cd1253f64cb450feaed90f432178a5a88be0302047c435bb50066306402301630fc0f4a70dfd4b046622bfa05626693766d05ae75c4939c704ab8c896818a542008cb7732570ce887672637022bdb02300286e1e719b1bd6eda40ed7766280ad72a39f3c9eb65c7adde731276d5a96772981592da052fd15b9d2da600e2ed372d0302047c435bb500683066023100987155d63cba723e828a3ebe0843f5d5d1cba3daa56525d12bc2cc7803bf53a4b4ddd2bda1f4143b3dc5afb9732f4717023100fc82fd1834dae33c00ebeefeafbc0af0029be82901910e1e630766b906333ac1b77f7b6f474052a35eacf0521fe992ff0302047c435bb500663064023030c98405f80cc2a099bc45e7537171af8ebf02978089c8fc095e71036d260ff1b7be7b3efcadea73571fdda4830a781b02307e53ddc3e9e1a050f464c81a2bf8d9c3c8e3bc0be9485a11bfd0982226c5ecc19921294f01e658dfb6fc4a93de065bd40302047c435bb5006630640230469175e64468c4527da1af0113cb328c9e852917be0fd6f16e1f3c7757466b08f37db67719b9df31396f8174225842510230408cbc3e684855e7d32d66481e409b2da20ac29e7e7626f8e9b5442a2abc854ade712b3391c44b31c26569cfaa8604110302047c435bb50066306402307a79f5b9e5e92ba5f17ba938752d0b89d0c4d6f8aa5d4c35b26265af74ac066bae52577903b78d26e4ef84feb53b2b9f02301d85bd48832cf3c51f9ae2f6dbc5017b798a5ef84368c95decefd1d5cd741cce5cb6ace706e4ba970a5ad5887cc798280302047c435bb500673065023013fac384396d83556acfc8b2ccf1b99f141e8fcc2036ba11d3435fbcacb21991861f2ecff89951e2a02228618f81b283023100e26059cc0ca13b7c790aa5eaf5a4eb88b3fb4da8ba0145993483f1e7dde2a8a375f688b44220718f2b91470dfabe53ef0302047c435bb500663064023054adbe24d23e92a92ec9a6985cd98886032e3ca849706d20b7e8bb5bdf89368ce1152706a21fdd78ecd27483d668f09602302f9d81324da5374fbfb9f453a020b6cfa5964ce90c813a0cc0ccc99ef9febae4c12b60ddb3572ac6d7804b6203d0e5790302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023008eb0dfc49063fc0ed4b34437944f75af35c3849edbd783316b7d96d5fd836480f424ff64a43d8e6b7a3b3f90ac8b697023100ca07319709eb21048d771d823ce9e60adaca87139e7e9e83a946da4700e42fe3999d46dbdc34ebbf30d7729613a461e00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009bb9f7fb2f5377512e32d124449df7de3596d8a310aea99badcb6511239a869a83ede0f3e4e0b0e9b4fd042b742dc23402302ae15e1dcdcb75eb5aff189f095b1505d36c251ca10de5a782b2b7535e642af99bf19f48406560d0ac9f04f6d85fd38c0302047c435bb5006730650231008b6ae5e04538b3abd68f92294362d692366259b35f0f844eab971203c2f1169a045fbaa3cc67e82b05749a262a0fee89023025066f3e93d94c2fbe6cb4a99fa6ea342e215d7e61ae21a40ec72a18fcd5feb63cafb20cddee2320250cccaa63750ffc0302047c435bb500683066023100f8faf095daa117708250947054a306bf731a1473b6f59b34b453c004b9d80e7b401ca6a253c89fa4450b8e55c240648702310090ec0b08d2489b387b4a8f888b3786fe7070062f345da006371b0152fc5036a5976b46cb7637734be9f672fcbd2539370302047c435bb500683066023100c610d3d2c0452b6207b9c94b804f2fab936fef1dabfad7b4d51ed258205a913b4ea274b31d1284a52c4a9022f6bf12e3023100eacb0d1cbb6d21b3350e37f141c47651f07136597e01cef396312081d1b7ae0ebb526b3128d83ae5da5ecd4beed17d060302047c435bb500673065023011325c851b14e374cfd552541b7896713298d42b235903bb6f13b740654bd7b9dbfe0338dada5fcb980a8ddc0dcbb4330231009febd8f0aa8fbe489a7dcfcbc8474a3e7b5aa4081e70c14918cb3a6a9be981d16ab2f6e3dd180d26e23626488ff884260302047c435bb50066306402306fc929ad1a9f60930abb2ab1d7f7cbcabdc10213715880b0544875b718d84e6902c1d45639c5ae7a74064c909ecfb41d023064c07384654b2a9e5d394fe3efda9f329cc1c61944183871031344ec28adf6f9e00419dd45f59ee2b42fd3a10a0307680302047c435bb50068306602310087d7c20c072c4b4ef4ef55c03c7ef499ff20e239f4258057226b169869a21c18096d58b479b6e820115da5d9f89df2d7023100bfcd7d66aa4577f8cceca1512e963be0ab324e0041ce96bdb14290eecbfac671fde60f2e0c3e72ddaa1639d12e3ee64f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c9f46c34db5ad213c699910c806e18ef869c749ab58208560bb917ac34095d974c1f5b75c1856c87c18e119fad5ddf95023100ade00c5781f4348f866d61e35f50ef65ca4c8bf3ffa78ab577a15ce07ae5314ded3ce83ede0b17309836e6f258eb65f70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230132765586c63051a362ae340b14bd9a714f590bf28e5a632bb6901066669f864a55f39ae79b1f4a9eb321894af6b2ab0023100a4ce47c8402398979997184f3856b0d8142624ea0a240bf4f7c3699bc9646d581f4e577ee7ad4f40e782413c6fd22a660302047c435bb500683066023100adfd68beacbeb630e93b0c72ccda66258ef9a62d0d496a41bf77ca4273e469ca2240acd0073986628c51b8299a4e055d023100844d82823f800aeabad141dbbadc337cd2f475d2204b9b272c44c705aa3a8ef90ad4d1c1b20eff3f1b1d4aa9919775130302047c435bb500683066023100841fc585fd9afbe8a5e9c911808582434a726ca35ee8b2dd4c0f6d15571173bc711b3a6e98367b3a41ad9d4579d06177023100dc6293bc26953cb7998a93bc54492b224090397b78b8885aea927ffe59dc6b4d89ef7593e6f757d97896575449dd125e0302047c435bb500673065023100b73aa14b8dd326840156e85caa46c705aa286b65e31a8ccf2a9935f972a0ccd6ba8ac9a2ad805232f1d5d5f56c9df8b702303502fbbd5f460a574e8d73408cea2a85445be9ef610399cd2921762188a58b5ae67de060669e18d280e66cd58d9c69810302047c435bb500683066023100e7f4046108d3bed9415ae4e76a2d025967adab93b79b9f42086aaf41e50c08a421d65bfa792934b59199f9d7808ecfc0023100afb1f763a1231658aac4e18900c4532f689e0a919c63e6bcc2e7d4d80e629414fb71c594b0f99c903ee113917c183e590302047c435bb50066306402304e502470fd59914d720442341c9d9cc25b141e74e3956b54db1bb175e41fe51b445402da1dfb81abbabc4ba8b056ac200230576865768ab5af1bd205d36c507797b32b24f6d175e8ce38ac2137b6fb0ea21267e2ebdc0bc63ddbdeab0e9e0bc49d000302047c435bb500673065023100c43d46cca8d7df7edc8c945d149e3da3a24e73a769f6b3668ee6c268f9472a5ab6fb3766a103f14b294f88621e8998dd02303ccb7d1777fb2f19a7166b01f13f57585f05f32066ca318eb9f657bbb92ed00b02105d22dfc5aea28481d8ed00d7054a0302047c435bb5006730650230641f893268e459d732984371ae6a45ff7023163fe850d6081644b71a4e5cbe33b39cfccb4ef233e40c2408bad601f6c4023100eb23a8566c6b126e6b8ac4b1960cd1f43c5a5483c76e109cd93be26b6d05624590e1a40a7cc14a2115cbe18e1055b1480302047c435bb5006630640230103b5737cb38b9ab086787c64a5ea77e146c06c6a33720a897b4e41510a3c3c97d900fee17452fe306e2d86ff4aa3ba70230725cd1a00b747ad000b95549ed37eb4544666dbe9d4b40b55ed5e4194a58040920054835399255ba4c3f4ddd972a246b0302047c435bb50067306502304995dda9e33bfcb1fe9f66ede1f3b3975fae6c2bfdc2887867b8e82825ad0adfc097b761bde97897f80ed915f1c0a3de023100cab620c770fe7a81773fec42a341c1409212811a794752ec51d9f6556a867d677d4d9d63ef628abb30bac2a7645281800302047c435bb50067306502302b20c019cb773ce01546462a300201bd6b1a942178ce9b3fa8b74a2a22a2a74b84d94d4e856aeb95c249287cf369881f023100c8a87eab3aabbc14e6754e1981e9465af8794b574053150ca1bb46cb4c01b372fbe0470c5300aed4b0a022efc9b9608d0302047c435bb50067306502307de99448ca4187d7a4ee76e5789b9b590cce21d0a5d7b73ae5c4bb1fc72dd041e0e06eeffbd72b6fc4f7d9954908b5f1023100d3ab57b32265ae413e1d035ce6850f679a3d15bbf373cc8888e66b16b4e431395e8b7ff3511930ba7d0f1bf52a952f430302047c435bb50066306402305ab6c22b93bfa5e1167a666e3369e3bbc6ca042f46ddb2009b4da707f437795164cf29819c42985a85b50a82db3e0976023011b5b591c86c08fa6637de2b7fb770bf033fd3c8b747f60c94559d87154e157688eb766b9ee1820f0eeede3b7e5e44330302047c435bb500683066023100a10bbdcd0528dac9c79e32aeca08fb1a6a665e67f48b94f558c9ac94ed476df7550337a31b882b371422e77bc6a07692023100a0ac6edecc0dedf6a2afe5062720e9f5a387a998a33295de0c115d01f4e6e85d0de3290767f38d271a3c07e38a663bc40302047c435bb50066306402303280ff5fad3448687f95d5ea69ba22026fc09e4f7eb67134d36d40f1929c98d71567f5eaad9dcd12c7187c67cff5881c02305284ff4baf4ffae401c8e86dcad797b8586d7169b435afc6402c1a361ba01374811e599c44a71b764fa152b527185ba00302047c435bb5006730650230685a859e7d1447bf01796590ea1b6f5c078a1e737f9d01384811054c74c972dff01cd2f2df92a49b61c9c0aedeb11e1b023100ffcfdac84cd9976f352ba6bf2b1d79e19b3f23f5d2ac2efc274a2953aaed0277aac01c4781dd8d23af635c9a4cb7c7090302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f6170c05cce186b655d238d2b73c9bfb8e2994a0b8a1fde9fc72727a24ba98a3d2c2511521eccf5b5409075eee84e7c9023100cb81cb67bbd11d116c4ba13e6aae989fb0c70a750a9506f549d0335bbe67d851aecd2537f6fe2768b2b2accf2e2375680302047c435bb50067306502300435160288cc6219507c9d55e17844a3d6f661b68f1175d059dc3bdf2addb26993775ef4b2ce5aeb125c6a46f037090a023100eabf44e76cf464a9666925209df488ad48bdd0a51ba66291b0e5b7a37b78b6377f7248297aa4cbe0992912f5d910f3c90302047c435bb500663064023051e8bd20ed011a588be4a56ca84380b6fea0a53ee4665cd6e33d58f59043f656cd986bf1726efa69937429efd7074ba40230775198cc2288554eec08ce4d47cbb54d92f344afe6a4850037a8549db658f4aa33bb74c51293ad1b6e9db5ed27a122510302047c435bb50067306502301351cbf9f8186976f59ca1033298487b2ae4d6c63180ab5b22340c23e95dcf07b047051a133f7feea9e254a68bb6d0ff023100ef07f5ab418fc8f00c6a1d07934a98abcd7f6f59b6614047aa29d2590e3b957eb6ff14872d8fe6eb13af183176a4ea560302047c435bb50067306502306bf98aad638cf0e600701c0ab14b0edd45ae875b53f86430288332f25444df5db6ead3c0685ff687c28c76cf8b8a8983023100ca46b7734860df440ce378efb22f06cfe84c2cd513874f10e97e1c9dc522f4e4938170542fc8fd241bd5bfc8b7f678f90302047c435bb50066306402304fa37da1987e40f38c1b220a6206420caece25f39da0b69663adab3d4bb63214f40cbc0499983a61a5b096fe6dbe548f02305a78815af045a0f0447a91dcffed22549b2b3755642fe163156e0beecf728c8d0e99cdc2b3e1479a1b888b8c2963e54c0302047c435bb50067306502304f971f602e6e45854cf9f16efbc85ba3170c75e78211622b1dbd7084399a5726f3a3165adcc7a5bdcc0b8d72c01a3e04023100a3a5fa75b8db76442c514206ec4d1807a08e1b52108a48fcc210917ee9407ec80914d8617c868aa0dc517b17213c0c030302047c435bb5006730650231009faeaef37bf78d555126c1ca11334de8c7d831ea1f1265ce6ba6a95fa772cded1d7da5a30a2268aefb6d0ce26112473c0230069db37baa899ac7bf5a9b613920cdd2abfd258f86b76a2c5113158c5f82bd005af661ede2f5164ea0a048c0dc2caea30302047c435bb500683066023100ffa4c6971bbd6fd46a52613e9e64de9ccd63f25ca36abc545db8f73ded6ccf3366d885e22f363458cb00d586cc201138023100e61efaea8af45b9268cb4392c94d232d7d5f323bc3a9601387be2cbdc3fb83d45f5caa1e211331bc204dd784b161b4a30302047c435bb5006630640230520c3383980da2fd84b4a43d98ae011d7e6201125dfee57346970a34ce4149891de9b79fc5c38e1a0d6bab0268be468902303aee5c1066b29797326e449d8e1d3e2aeda849ce6bcf2ccf8acd9f878ff38f06610b40555938bb11c5f74d710c9eb7e40302047c435bb50066306402306506b24caf614e5ba55062b9c1bcbc899bf5087181f049f54bbf1f586bea466264cc24911c570cdfc08892bd0476352b02306b5d4e483d645cc7553a10a19d70e63bdeabd374737a92f653369f88cb9ac672fe7e22e367bbb04113b7aeeef50bf1a10302047c435bb5006630640230263b5b7e7fe6f20b26e917d6c7478f81328fe768e53738ac91f5f124cacfe0521f2fe88838cd9c5557477240ecfb4cf602304fb4d7cdfb7d83081a0dd60b9b2ddfee7a330cc6ccd13a2ac83b6ac4540ae6a2f2c17fafc1255b125c1aebed3fc961770302047c435bb500673065023100d5a191c23f8e71dccd1169e3b2cee76bbe17a4b317ec28d63657fde334c7e1ff788e01d019dc7a21ceb3e9343616fd4002306147dbf629f92d03a38cb64181860e5832d507597dc2edc0c40f24cdd9d935184ee56da0a1afbf24591784637028520b0302047c435bb500683066023100d5f8e178d2027f7bc54d6d56d3bea06caceeb181c8ad4eab0124835fe51537f04f5afbe5c5a809eafdcc1ffaf2b399b5023100e3bc9dbd087f6a63da0ceb84c6f3615877b6c3f92e90ea98f2e63ecd5e0c527037795e7dcd4896c93a40920288e0b6d40302047c435bb500683066023100a069991b47d4bad453a8df058b8ddf566b5c56fb3a3f6966037848d852f0071ca50e1f0b0af9b388d0e6d1f09351e796023100fc9ead5045e0d9ab38e870351458660d3b20f41a395cec9c41ff944f6495f5aaa893356b8ec1c9183ce6d183ff1ab7470302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305b7ca4077ec009875f1ba076afa069a1cd56ed6cca84f2ea253cb46a6a7c1dedcd3f24d0b4c89967f3348b9555a20704023100d1cb9d8f9e43c0e2aa1a8ce0ea6433d06133d775ef1cc8f333e3f0317e359136ce6f477772b6cbb57ea4bf9775e537c90302047c435bb50067306502302439b58deb27ac85927321a166015c91540ad15f13c8ae81e5b55548860ce696d68b2fcf538d0231690f0d0b1a88570d02310085087b99f9d8ccc79abdef3b9b17d8c3dd50432445306643c9aa9333c3f9facbed54ca1a382746e27967b15099f408980302047c435bb5006730650231009ed603d6111969084929910d81f91e9b9b2b34aad4cac0417d2d83bc8ca546e2bba6c16eb47865d4ac972d2d2c3dafb80230060026dad2025d01da550db980f7e70baa017563a90407cfcf9ceefc363b4638b33288fc6a364d36171a87e82fd5bbaa0302047c435bb50067306502301b78b00619cdc215cb5c26897f802467c31dec6a31045c52a1f7a0451862eec025839090ddd07cf722eea1a48878e39c023100bee195efbe5145123907f4a85d540b637c043dd501f2592b90a0bf1a5667a0b46b8f6b615d2f7cb06bc9172722e615770302047c435bb5006730650231009b1e765b3a53ee6fed41c6d6c5ef46cf4c2a236fdab1496642f30f4db45222b16bbc34ce56c400d20ce8f113cce7e2b0023050163928351c3a1c535b96bc0063ed5b458a4d161c857d28a932f8ed6369b00eb64a8ab48024a5b488f2d9d92ea5d7070302047c435bb500673065023063cb23d516dbc69d1a147a0349ce46938010ffd0c4dabf6da74d5049ebfaf7686ae5e34dde8ee6bb2acfcccda3b12023023100d610799ec403e212f1c790ed3e278d499e37c6f50d7de11f038bd90da4b4984be4e02ec14ffca77678771bdb1c5d429c0302047c435bb50067306502304abffd26bc3d396379cf50eba2e180ebd7622cbe025928a6985dcfda2f32a81a48af1f84029b77b8ac1e51387c83699d023100fd860a973b18f8e5f956477d261b748f6cc46c4011b63a9057261d5f3f1ccc94c4adbcc854ab41b555007f3b2de56dcf0302047c435bb500683066023100c93e9ea78d467694bf60cc0cde7f06fb991e605ad4e4d1446dc64d186ff41a955409b81c73579d42a084a301deadaf00023100e3a63dd85b2fe2333fbde0d3ce70abc858400061cac91e35a6a5d24146811b5f4fe3e2d64693bf908298929b821d5fc00302047c435bb500673065023100fbd42e9e6d635c00df2c79c3c246abbfbd6a05adec2ccecb25d2cd313474f727eace0a82af6779f32403c6244fec4d1b0230278e84e0fa8bec2a4f5410a73b4d9b53675da1e6f13fad0cf7a57d273e00f011d0a5efe5025ae9e4b08534f2e31fd2e50302047c435bb500673065023100b50222786b90698d3d39bf3476d575fd969ac8d3ca1eff08c154938ec27bb4d1041a7cd11953786d8e0434935666ae7502306e7971b50c1dad2800505522a93410e3a5a56ec6835af502bec3228a88330856bc4f737913821b485047dd519abdd5a90302047c435bb500673065023100d385bf2dc68b7bb965d1320642462edea1abd7feb1efc5b4474c7064b9d41ee11a342350c4a7b864e7541e2e3908d2900230636c21b00fe54546fdfafb9ba0ebb35bbabd4e618291ffc8721a47714c1ab2106727c7d3146186f8886aea38209268e10302047c435bb500663064023064635247c5fd33b887787a7e551940e7f14f3c1ea21f07a6ed1223b9b063c2a03067c851b81e0ca7a9be978e23757b1b02306884d8e55a94304d321d120a7b809ca9c34563d6d5e41a3c64b644a5dd87d249bff942ba0910f1413cfe3731dd61dc670302047c435bb5006730650231008e95f6bfddce93b062ed13a3fde9680e9af90a36b5a15a68c9e3650294bd8c280212bd64df39103a014ba5450184f60302303baaabb6cd44e4c5646cc2ef114c56e799cd8389e8dda7106b0a7ad17ef9d6be9c5fe43a36112fd2af7798753790adc90302047c435bb500663064023019fc516db63e85084d62ec5ed872ba52cb041581a1dcb3c996d74bdee2d973716ab57d28bbe09cfa2a2cac7def2d303102305be7bda9947aef0b1f7ed957ba75d2f82c13aed4f51c6aba918044cad69a6fe7d369091172be5b1a361ec6300259f2030302047c435bb50067306502302aa38344e6bd8bd38f097fed0ffe45de999928ea66381d01cb955f4e255f2955bbc7ba5d9b140ff8dc377893d39f8390023100a79fb7bed9c789c3a05dd260d09d4e843bc7ebc7365a30196c4ec3afcf21ca99896c67df0587e905d83e56786eb2d9930302047c435bb500673065023100caa2e3e2df43fcadbca0baf1a3bf7919f0e3a9d7c4198257180dfee0f7783f69668ca4c715d17be8e7efa6b83d58a14602303cbda8a5aea316b86648dd86a1831bf5e522c84ed8d941f430a90c5260fccb62b00ff9c213e9a515fad12a2d8f2af2300302047c435bb500673065023100ec5549b2ee8a8f0994405707f0585085067687b431c07f037e0fa6e44cbdb421743a3a2cdbdd01fb8abef6866f919e390230786123881e7e93ab181466c794b17f1dbc5d7ad5a1422403926c026192114fd766214027c9c59d090506999586430b040302047c435bb500673065023007a9c2537ec7da02dbc51dea547297a6840371809a81fe97270c82e1f6182736a110d3f54890e68384a7e684615ecd7b023100fa1699a93d4a9a296b84691cb50a24704f2ba0bc11a73a75f4d274a6cfa248916a9c9a20c328d49f4b9010b18bc9341a0302047c435bb50066306402303ff60f1e84d00f1eefc5ed10c25a430b8f6e8ae398e986536405c33fd3b55e29ca667fbc2536f720ed9d39a1c0ac262402300bb5df73b4bf46e6212e2cb009e3bc4070bb5cb4177518f9b1f6978a9b8932b5aed554e2baccfe698c07de120f22b9c70302047c435bb5006730650230614d372d5a81a6920058406684a0ca0cf98361315823e02a6da9ab666c97148d16d9b0ca509f7632fa4194fff025c978023100b37ffd4f09f8dfc861349dcdf3578b9dccb283def80847e7864e59b6432ff98f5b0b02b73878e46c6e465cb0fa5fe85c0302047c435bb500673065023053b85e4d50faf7f2eb8ec3a4b5f2d52a01365a17a4cdafbb2cb7e0770b99323f2dc8ea10ac259b876bc20e4143b26bcf0231008203621dba46fbcf09cead85b0cb6fb61a2217c3b229446b53e0053b775d3159ab873c08cca7ca2b4cd21fc78a1501740302047c435bb5006830660231009d98f89b612a29ef20ef96fee37f9797ee5fac9e130d5dcf146863e6fc1c7d587b105be0e6e3ecddc913cc55c7bb36ab023100a0f55737e0b8f1f928a8da9f82f6eaf7f44dee98c1544d24c4bd1d65e207ebc371d21c25c4f16b13aab0f91d661aea1f0302047c435bb500683066023100d51d5c49b8b92ba575753faea88117b5955056d99488f01051a117a525c01dd7d4f23450cc20d36923506ca590f1399f023100d8f1c5a90d52395d853ef72230fb088af346134d9a59a290817faa5f67333296c4b62972fe1ee4a8a6cab108bd3caae80302047c435bb5006730650230560caba91ac8899f8b45316ce3328de4fc4f5ead73a0ddba432450050a01803ea061755c402baec13778562163b50795023100ed0e47bd264ae577330e850f77c4ad037d17ad86ab02b3b545f2a23ec62da8cf07405d824913661fb10174c44d6562340302047c435bb500683066023100fcdbba12542123ceb134eefeadbe139a4e22a4d9099f087c8592b15f8efcdd18ff5937919657ac77ef89ed9719e692cb023100f6da8998aab2a88dd561bdc0bf3ed9a685ae70af3f53f8b06b3c85920c49e84e2b93865336958fb2fa18340cf9a6bce90302047c435bb500663064023044a9c2256b1644d664743798c58fd1f39466277cd2556d1c5f34b205c6bccac5490a9c6ea42ede591fe61edd3d7dc67b02307609886820e4fbdd52da4937f7ba9e4c4d04bdd4493aa6db053a662ba5c04493c903c8963aa2a3c24753186eec7aa8e40302047c435bb50067306502300fab1f7f67e885f479a97df75a209959b5cbf2f5461756b39be240a00d2aab68828dde0dd385dfa2cf582bd79cc1e4a4023100a2f5eb98ff4f02558299ed60a0a7b85d25513f07eb934aa8b16a02ec0d9d967d01613a77b808aa6b5b3793890af7daec0302047c435bb5006630640230675153e0917c3978d7455cebfeb52c4d368f88d7bdb8ff5cf8332b009c9a98888eff01d895de4dce779316e2f3c3f38d02303877288d2045d966a8553b727ad48dfc586c1c622926e997aa897e4cd03c25cc1cf3aeda6971961e82a3176a04d488ec0302047c435bb500683066023100b3ea17233d416aa14a8c026c6596c1f3554564d4c50bcf89ed8110f49629b2e51507f6a7115bc336e6fcc0cd39404446023100ed3aa732e09848f4053299895ee9698c8ab387b0d808ab6f906c11f6e1d27a9b31aac5745b2b1596e2ddc3b7ab0e4b470302047c435bb500683066023100986dc067fa027f3709640e47f719ab18d1fa4febfe4883f3d0edc8e3a324318e51750fb920376ec7842e1afa12ae2292023100bb93cc87db649fca02c1af516fae4be9da873ecbacce2074fbcb702d3a0dae352b1522ce962db53ba24d0d6a8a6d65690302047c435bb500683066023100f220e446ea1f952c69edfd80edfe631670ca3ffb237101fafaceb8d110a7b50ab90d4edb5a3e3e338821631380cb0889023100bccf2219d2353d1d828a3575e5a697a94513e0a86a29e52e5382b47057e0bf020113ee120919790718ba997fc3c5c7950302047c435bb500673065023100ce2bacf25b51c7f555aea171bb19247cd92f78b52ab3b76e0d40e9d5e4aad7dc986de44d2c6a65c7752dc8d72e928ce9023059ad59fa2cf6d97c87daa16540b3f8884b03c73cf7fa15bdc0225ddc58648635b67ce25d0e8167244b9ee43c606681df0302047c435bb500683066023100ef536aacb586fd2031ff340c21eecc106529d0c5f6c34e885de426e8569b6eee03e58d9ebdfe2b57bd2503558fade6d5023100e098f39b77608ad9767855017fcca0d0fa3b6d335b8bd346a4deb046747b44994c3e45652025402778e316cf044890250302047c435bb50067306502310099e0a0065dd8665e580ec646d20ab3c89b24fd789530753d107223ad6fd9f00c795d5815fee851145d8420376f6a076f023045e0bf6f0fa5b9ffbe5699a103e781e384a94f7320d66aaf29064e79d706abfd064574ed25153f789a1ee78e2a2ffbe20302047c435bb500683066023100e87df2ff1aa88959664f125c4b6b6b364939440a320bdb602a42378565d70d99b3de83c29be1f95e5b6a3f209bec06d7023100ac9f4cb06cf485d89e1d9a7bd90132904c6f7915bbc0579ae0e4afde97c3ddba372236e0e3e09c6862bb09ce42bbbf1a0302047c435bb500683066023100b14edbd5b5ffc5abf86f53dfea7e084a7a7ce20c4c22bd43aa17438861c6cfce2fc2a7a3df11d6577891dcc6c3ecce37023100a37148ce264ca7037bacb3500aac02cf00eee72cdd8bfcdc0c63a5684fa4723a850f445c323a24cfce7e768ead3091f10302047c435bb5006730650230016e941c19566a1e133b34a9e9da51221367b98cf73bafc72347d99448c22dd6e41df0a0449402d96b3502aecdaf816d023100bbd00016a37bc2b9aaf31a4239bd6b051cfb11ad9f79138ddbda0fcf8364edf9eadd56faab0f3d6d07dca50046b5b0550302047c435bb50066306402304fc7a46431cdc592034d90168b1a38f95693c4b7a1af0c6f65e2de98077e789e3c28bb057e93cafe4b9e62b66c8cfcf8023067fa70547d174c35afe730856df531befd4fa6697cb758b000a4d7f1b7f3f24c0c704a1c8217f73b75096a98813b18b00302047c435bb50067306502304927d1d5c398be8c70d1bc3bcbda22ad5df355533d7eca23615d40b56d34ba640412ee3f827509600357dd80830265b8023100c6c67ff5c2bbb94ffbdf70d9ae0145c3796e265b67a08df535b563498677395a6469be0319af047149864282f659fc2e0302047c435bb500673065023100ec18ce3a84d050b377913d883f8314ff75439b152f2a986ceaafd78213e90ca7b430415c9677175aa4f8a0572070c88202302ee2aa02746812db6984a2eb8d2286678e910f956d2875f06dc64f23032f41d63ea55776b6e2b661e2a41efa6e3f7f310302047c435bb50066306402301033e06980816dc1215053ba9da0ef8867268a17663d78051073c389fccebfceb3c9e0132af4b33ba45b1e59b529c590023003a175ddef25ab5d8c7df5389b4b3b7178c60f45b3d704059746fcad8771f803f8b71a0f33e525a23d4557f208004a7a0302047c435bb5006630640230439e26458c0a764239da932b5f6b08e908aa62ecc501d2d9145621e079ac9c47408f37546a8f45c7a3e724209e98522102301810a6769238f99448d39963c304851e1deeff7924304b113369ac3fe469a00267730dc13825c34ce9ca378d323dcff80302047c435bb500673065023060bfe4e5f32be3f599fc64f6f913922084a0da8ef6a738088bfa30b4f409fcc273aa9052e56c6bdff2002ffecf1117c1023100e1ff298a166e7318c0319f8883cfc25ca73a41a1ddf2a2d01ae8346c42749d16fa4392a06b9257bcac93e308e791bef00302047c435bb500673065023100eb4b5fc0d5b5243d1dcb9df3b09e2a2995f1d17c9fbfa3d993d21b50785b8f0404a2ad09ede1103c0d251f45faac1939023020bda6ed7ed3bf88970f10c4891f7860361b7cc9a405c6dbdde32e9e6421ccf800677693099e2a6fee79cd19607307a20302047c435bb500673065023100bad56161e861266f51c4b0b674e94683605c4e81326266b6405707f167fe09f237a37c1804e1dfc6b1abd29b7760ac0b02304536f5808ddcabdaae556a0913c6217c1fbd2f557d1c6d432b67101cafc2d6e3184c6e1fc5f76fcdb020421aab81cb6a0302047c435bb5006630640230292c1e154d7786cc3c57cbd5e1265dcd6ba041cd0e41662c4b58eadab14ba93c3b261762652a12abff70c37750aa9dc9023050505cfd2c88ae36ef81b60683632657500a2c402235918c68856b4b6cf694b2a0f3f7a2c69f154d74c537196b453c1e0302047c435bb500683066023100f3cea613a21b44feb073615e254479060975ab3ddad7078976ed1155f726c6caf959bca1edad1543a3475d4b107de9b4023100acf594d8be6c53b298c8445f6a5d044501043960334a8292a52dfa36c4fe31a4686e693ccc8060a813a5d8d553df321b0302047c435bb500683066023100dd972c5f1a222bb58b8181cf39e379f2e9af8360661638e6cef6c86188cdc686157847aabb4cb50f32f743ebb33381c8023100c97fe1afec02c0b168f5f716a0438be0d09b7311ae0889bd5018c919c1a3637e0429a9a9e9f0c4faf7751a0bf845a7840302047c435bb500683066023100b1279f83f2ee1bcc3cce4ace35a891d9798aa77bc9666e53f886bdebfaaf78609bd39afd2e43f4600ab39c5fa933945c023100e6b22f78138f42e41676b9dbd0ac05fb7893ee73210b3b959234b0e0106ff07048c190e1c268f31ef420a99c438283ba0302047c435bb50067306502307879660100d8b049ed1bb5f5b35242f8642f5dd881b6f9c148e008616e8181ddc7c97585fc7fa7a8fbd260f3a071f26b023100aeab575a900b5d44ff87c7665ca43d4310662eb29b99949a772146db9e2f3abed0516af0bb6285b650da32a4e9e6730e0302047c435bb50066306402303540f4cf2de2966d411d21815278166ccf0f3e691f0cc245a68f5ec2a1dd7b8495a7e979614e13548ec805fbdb6f82ad02302be9ddc207eeef205d1e4429d2ebe7beb4238a0932e0735d7f5f8ec19d512b4943641da3b07957edeac3ab79233ed9400302047c435bb50067306502310088a5360426b94ca1fa26f2114afc9a55493a3040af187dad6c311c1d74e53a0b219a06691c2a816e785f731f76458e2d023001acdee91241615b981b62f0e7ddba215fc9aff515b01bccc5f9de5f0f09d074e48b43270b4b787715cf9c1872babc6f0302047c435bb500673065023061a5da6480c692775682557d28627d3819d6b4e20436bd73ac83c768a569c94866eff85b0a6b1757e80dbe20aab64f0a023100a821206f8f6c9507da8dd309d3926bcdd0a5eeacd508d76c4994e311179ac042f301cd2fe81841aa73bf96fbfe857b1e0302047c435bb500663064023079b4ab2545081a56b23f5e4e5a7d0ff90ad3c2cfba584cb4edf8e06920242a4e898df78b49840f29ff9a710924dd3854023042a38a56afae8c6a7fb515ff5d78a69a37d8dcb419137727337c4f69e912f92629809c066c686819455efa056b6e6c0b0302047c435bb500663064023000d4e2605d3cc51f132cc0ef4524f22b0355c5b82466ddaf39b90980044f2a426fa7a43efbbccc39cf80b9876f12f1e102302341beb1583af8ec9800e990d898bac7a19ac3686bbba54bbbc59f0427333663ad9fddb7b6ba09e38674a892d552c02b0302047c435bb500683066023100d01f7dfc32cb267beecd6deb16b7001bfb4b2fb45373ac46ee5420ebc6559acef04b063722b6bb8a5d97e174953e82eb023100ed7ca66e384ec8a38a2c9b5d628e5e95b8fccf90a8cf1ad0704710cf15b8e73a7b5b3ac9ed78c35e9a7bb5a88dd93c1b0302047c435bb500673065023100e317f4c0d6a6a31310751f5343ebc7867d95445f8c71b14d8a2ea64f0087d5055574fdf1ccfddb8384709d2b91094b1b02304ae30e0f69f6aa88a4bdfbc787882a1623e566ef236dab71a296377e53954f1cbdad22259bca96f500e24d6aba2dbfe00302047c435bb500663064023047d61e3fb81a169aa950a79b9973cda9581aad29d453c44a48d304588928ace279e6b7600bb1dc733805c520e47a93fe02307f8c1758866f0bdb2813d77a2585ac1800ff242871cb79772df1f17f7e87ca35e4167f6b2c26d8c1ed7bf60a1fd65a680302047c435bb500683066023100897ba9c6f74f092393084c156fc151bd6bdcc28db1ea437839d58ba5a1cfaf489582bdcb3391271ba39b2d4dd33d6fc602310088a8168d03f9121816a7be3205599db3089eae2e15a05a5699db391956b0c80995b147fcb341067d8a863b69f6455c050302047c435bb500673065023100cde1e406b5913e25d9ad089d0e8d558731fb9e59cc524e79902a806a67b665ea4bb3b90c95edf798dbfe8beef5e26d5a023066732057065bf39f6b771b5388e02b77a1fbda8251c4b823e449cecc4480321afd99b4860eea410c22f334669bfacb5f0302047c435bb500673065023100e637d49cf7dce6d6b61e96cac8b599b830a3d1067aa0af2bde07226136939939bb2d73a70075e563ecb52e8237e6fe13023070b04eae222c696da07c05581ca08fe0c603e5f05b529ae2fccebd6218e48a8bcf91b9fde5bcfe8bccdc9f110a404bdd0302047c435bb500663064023042f5ef867c3feccea07fab94a08d87dcc9fbe0498944cc7a124f1a0480715309744fc54c2cd2487bb720cba458128fcf0230319064f988ae6f5687c45b01907b1508a073975d267eddc3ce8238e7d47fa172a8aa6ba3aa741e729c20f1e3828c041b0302047c435bb500673065023100e95d59ecbb9d7ac536326ecff8312bf28d3c32e79afe861052ba859f6e290e40c4ff56fddd3e30572c792ff8c5b2c911023077dfa3881eed26581e9e1c20f1b4cc345ba1afe5f51abe34e8f4b6d5c857944bbd2643ca6b18c88570004e0b11f4a2d70302047c435bb500673065023100a4692d2ff962f8cb3e4aad9dd397218fffe258d7cba8e66a094f1dea5a85581700092bf4be182fad7556dc21669fd065023002e725c7de4d35236df0ca4b683ee0d5974503e90c9960d57af2930ea0fdb255861f1c579033da0fc95cd61c3dafda6b0302047c435bb500673065023100e1d9e62c5406a5524e41c026cc3b2e46f7e586c8f162a5d08e1516320f9bd64a1533c2a3f238c71eb814736c41d5618a0230587a7b00054a4397a21363e6e9e8dc979141d667853080d6d673650f9210870a4249335ac6be46a0b4a0e14bfe18b5bd0302047c435bb50067306502301efd409e2d3f1b1b0bcd6e1209fb69d163818706a54aaf26a90b520656fefd6e50d170b07ef17ad8a97b1362332fb577023100f20ef44b2b37b3935248cea838870a00b238e3c3d53223b4bb3377dc25dfcb590942f2fd08060a60f4c502c8e48f494f0302047c435bb500673065023015e5f02d5b19c709d38e932f2c3824594d658b4637f752f946fad5bf5c4cebff80686c6c8b3b00b386cdfbe281441ea6023100964feaf1b7332352abed1763e8c5181963603d225f52a2635eceb8605e89801f6b996e1a947f93e193f97ca89631510c0302047c435bb500673065023100c93c53e37af26cb82755675fce9d1bc6c7d0289bad8ec3fb8c735565f1d85f74e1b0c926302a7d9cd32343c7c69584330230620e0e3cd2a35bacc23eb1a9f6c38de8adc24a8a88ae4ea6331534f62f270aea84cefd3655eff7c6b5f098fa653cce2c0302047c435bb500683066023100b47118e8c121898c5e4ce969ad7a816e0d942a221cb015343fc54a3d26e0a207afab60629ef493c3c06178b6c7a411590231008c456822417e0d0d01a90eda287540fb0c5d6b71c0dd9ef3cc00aa959b9c4555315c46df622f34e98b1a61737eaf670b0302047c435bb500663064023057ee774f990ec815cd9661ba4c3b51c2b6157493a3772da66328a6b8e59907f22743793634ab2db82ea798a1bd733b1402303ae968da5c6b9f9b3c2b9fca584c38283d85739409cd0f77b6cabc3bdfc7ad0920f11a1097e81be01274000c692727440302047c435bb500673065023100c73a5d99b1926b141a446bb5988ddb92b4986702b8ab53c705414fbc283a050cec8f6e2e40a742320eb33fc326ad87dc0230477f8c0a8b363545c88ebd67971e7aeac6edabcf17bf4c37adf0b642473d676dea967c39eddeb3a9bfbd761c0ef82f410302047c435bb500673065023100e3e0e3a3b1ebaf49a8fcb208db95540c5e4f78e838f054a0add8b9c0464db887ec1a38e365fb0e1fd34b68d8c8b3e82c0230352985061abf75f17b2fd51ddc995e832dab81e93dffc29b8bdf07ccbaebf053b6698d00bdf8037f053b06dd730aef400302047c435bb50067306502303d23be1de834c35d686774d4ed796014c509f34f7356a982b9b8a253cc00cb0c03aef672ca677ff7891a6f16e5df98030231009a9cd0b14c274738aa226b72c62e99ea46b6815e2e24095bf41a3d7988c787e9068099cbc361c90c873c520a58ed99d10302047c435bb500683066023100f1dadffbbde9a9736382e22d5386fe486b18ac12c4233e79cf2dac6adce2674577ea14bda343581fd98d5d6e97a41ca2023100bc297a45bac1ef115aa9a22958a2cc5239c07d99ad913556ab037de3090dd9a7bff9a55c1c15f5d270ceaf32d1c6986b0302047c435bb500673065023018e16544557c86eab033c3c84854c1689ee0b47c0c7f1914b1a6f5b360cb33b16fb9ab28eabaad473167d2d45d3834de023100e9b9aba9cfca83f7454d9d21e24c18254e1999054376d50ffedffcea10c1d4245516ae12b1e60b54292d1c95cd128d120302047c435bb50066306402304ed0dc275672fc521e5c0cbf520df89cb3e91a16f0fc5d975985eb0f211c9dc83a322625db9881414af64d4c7b6fdffa02306a3fa18931135a363f59b1a54d56206e683ef973058c64f04efbcc82db264f3a198064ded2374bb7ba41a31aad547bcf0302047c435bb500683066023100e4245f4804a9b612903001ab6dbe24d8614523d30b91a0583a34f09dedf5462e3977223e9a429548934ddb3236f49aab023100fc08d59d94c120ead62cfce87dd19f0000069df671ac1dc89e224baa368f9a1cd6c7332905135df8e80e7deb4ab948270302047c435bb5006630640230335ef31174a372db79a1c353cfacfe648270133dbdfb0c3a8f18fdb180e857b17af694e22c5080e4770d985b3d49b31602302ffc0d76425632f68a07757fc80ab3293f9de832beec9ddd9572ac728a39c125b21e7b06db6de657029a6f742b24798b0302047c435bb50068306602310092f7832e84cad16678072c903deb66518b4419ff6d534695bcaf820940ae6bdd3e922545ed31f25d148abaab06079c51023100a7309bcf917f29e87df5da4e03e874d677c41b5946de47f4918cbe937e31954ded4e16dad59de28be285fb8d881a679e0302047c435bb500673065023100bec77a15565d05380938912a37b711f36b0c7239cb91c2afa253a17d80337de3c46d64ce74e05a9fd74c85c9c5d305f402301ffcc4e8c9d13f98b1ce289d62bfb78b838035e113f9adba2545bc5f86e449cedbaa0555e4f81c13d59a8e0726fa8a580302047c435bb500683066023100904f115731b49d68b1c86c65eb5d838715ef236826e12cd971d1eef0b3071eb64066f36030d05f7fb01cd660fbbd0fea023100eba7149443f8827fd9360b5800b645047cf02d96f7d7b06a3aea38e83463c8f670de63fe05d918a27c4cb5d07fa3d2da0302047c435bb50066306402306e11c8f014f20f2ce5039032c9910f7e4ccd45cd5b664baea3ab98eb7c496633ab3a0420b559a1ae8dc6c3ae68da506a02302e3c7e476c05a3835f8c294361f22f5d839d22e041f3de6feb59c3c04f82bea2c3eac650ee35ec23cdff09cb2542d1920302047c435bb50066306402307ff64444806e540fd5a4f3adf1ffc302845cf72f736e7d776aaf962492a064518045aa46b6a45bdf0522e713786d611902306d9d92a51a215994a2f470b032309b1faf056dfbac1ba58ede7ecc3c45fbf5fc7292b193c5121216428455ba000916c90302047c435bb50066306402305840ec92c8fc79100c829fe2db5a39a1017a380075c6a7195841260976695a5067e0b0d11a9858fa8c01e928e036fbf002302e068fd1f238620cc115cc9dab9c294acc834e472318d1a67fbb50dfc24568823c26888ad271a7e99351e2b453a303a60302047c435bb50066306402307d6c4b1a5225ee3056baeb5cf9ec55fff757ae1cb1a92b376e6d76f61ce8627c6dc0f49375966e8a21822da2c550063b0230332af795a82dfcb012c96a90650629ee1ac051f577491625c571a27564da025cd5ab4ec2cfef9b78e564b71dcb5d8cda0302047c435bb500683066023100a6f0458f0510ad7018d66fddd6fc1e617871c27a71638ecafd75ae24779b64b328b764f51a3db2ca5d73243767eaeeca02310081abe5f2084f89f9bc740d998a9a210aeb56aa7783ecc379a2172771a5dd70bd868b5d067144d82a101f28c1c307b9700302047c435bb500683066023100ddf1fd8690ef0b2046bd493421dae227129e4cdc25ebf96c2396b1253a8c6546dd76cff96b410726aa4c8e8c3abda959023100e85b12f0f396bcbabc9ff1cd4c4b58f098f9564c89ad6905e692b28a1dbfdffd15517c610cd09867830b1c19767f60c90302047c435bb500673065023100bc8dc10a1191529d89f054e025ce959ee3d237e747cd0f00aff0bbe8481b7e06b49cd462fc5772a0bcdc7c344d6f11640230284f67671576fa167d5c7ec442e5445b6985a4621a1e3c97d41dfe734b2111aae1ff82525854393a65ca5b203c2d40c20302047c435bb5006630640230228e86c9c1d9cb5f35268899ff2478d87f688271477b9cd8130bcf513e0b81820fa3715732f09e31afc3c276fad4e57d02307647bd6c4b26ccfe9751883e27d83e6ec75d5f11c565767b89c7ae641e70eb173db47a30d834cdccadb08ad49af6de450302047c435bb5006630640230678aa09ae9deb9dc389a3775296d688e66977d25646392746f33dfa593f986834be8e17309a0203c74a8ab05c8121a00023021f65dfe28ac759499da63b11790201570458e72632f9b61f1bccf20c2e027002fe39d4cd8e62e37d0ebdb76483802ef0302047c435bb500683066023100f4bf72dfcbe42a8a9e53d0f0ac552660e210e781946d924e4b771c1111d0cb8442afc36a612f9c4acc1957ed499f007f0231008e3e76386224b49696e19fcbe540580d19b47194202878068eb0f988cfdf3be54efefc8fcce504ca78beb1cdba24d0280302047c435bb5006730650230196a4f0b56694c02543414b066e43aa8c85937aa0b2b6aadf2b98c320ecc21871f77ef0503f8857822ab1717cdde3b09023100f52bd653421012fd5a35514ecab662ca323710f0dbad2979a0b779bf906580912a7d5de985865e09b3e07728c31992dc0302047c435bb50067306502303baa56915a7e774844d5fbb8428b9b9b429d9dceb827b696e1f635b4fb3dd35e0ac0acb31f406de08576c26a0e2b957d023100901d484eaa4944eba18776153b4cc5a4eb7cc18a9b389fe3092e8a9102db2b2e7dac14d8dd55b05c58fa80e71bda08ea0302047c435bb500673065023012a12ddff7d78f9fbf01d4d34a5b5741cf691b21031f65e80015f8f2254a38fdf4e99b1816cbbf48900ad7440a453df602310088dfffef2f51734bf370aac0728cd81e67b52d963b1b3b6b1733967a3958f1886b486c19f53448e866357131589716690302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306a4421f5b495801033c208cc866ae312a4a769ad91525a6096a038881b21105b27220451796d86d40597c83acaf3f30f023069c3ff22c20c2f5f9481a3875db283f498c2915fba596203fa28f7cb5c6762e18ac3f30501b87e56cc1d4afc93595fb40302047c435bb500673065023005f75eb3f94e11b26c84d84b9f56f016d279efb18d68a1db5ba2c592c4493511aac4cd5b770078bdad26fe7fc0c383b30231009e7051c8d066f836217c6707f27a1add7c0f242768f335f6d2eaa6d2ca3343c9d9799e5b22e75ab2c7c35d4d860698060302047c435bb50066306402305d30c0d14304bf5e8e4c16f5e223a65cd6890a03f5cbfe1abd9f33f388e57db6b2cb6958371022c95113f7ab38eac8f702305198df305896d2aaacc57cbf3ed3d7c1c6f53612f9486a02cb3748b03cef004670511108458c3ac76c18739a6cbe8dae0302047c435bb500673065023100c2aaf56d7587e09e779ff93157904dee93264c067125f9a2e69ad15b03b4ef065e9fad4b406bde270c790e2c2aa418430230453039ed2605ea31a70873ab9505bf7050aa6bf38b7b6c6efd56d219534e2a0d02655adceb26325c65d176a0536a356e0302047c435bb500683066023100dc1d5d5dcaa22ff07e020f64f789b6014c241de42e741e7e0e8da6db536326313cf8828b5e56565092047fa598caaa7f023100a44521dea03a4e4e02afd6692eefc6981022a857cacef139062b284a311e462e921e2de8b392fb34e3ceb98903a3c82a0302047c435bb500683066023100c8f37e37d8a0858f73d42f467e499118e8f9c04422c04fd3bbbc2a652a2eeb7105ecad273197270eff23eda1a3fc295802310090261da699fd88e3104aa76bc8e3c3f18eb8f30ac7d90d6d7371a7309afe456faea69c51846004eec474875d9d3ba9790302047c435bb500673065023100f7419474a91010b3e47a23536f014ee70d000b274e3b696c1ea02641b19d8ec6ca27309bb7ec36d78be3e5967aa48a0a02303609b97bf4ca218d35e4daa9811cd62eb0283e9d1e49eef877eb0a95f059f68446f8f6bb068eee3da3be329161a1d6410302047c435bb500663064023060d949dffc9e17e1a05c72a072e46a7f7351291f29a0c5622a8d76bae699414418e937f99c3ff323dd62edb7c4992e340230782cbdc71c6f33861eefb20a77e9de3ce9faaa66e5bbf1013bf7a391ff5abb8323a83c8c6071657b99ee83444ee8410d0302047c435bb500673065023100d91fb0d12480166a98894797aa7e43cd2959add2cd371d0dd22b6a46e3f8db7b4f16d06ac4027ab03fb8138cab293d81023068942c0cd773f8400fbb6d50883cca927ea5e4580add390a695c85bec2d9a918aa33a014f334ac8eb1f73725c098adc30302047c435bb500673065023100a84ce5d6160d64173b154083361e6f537f419c67cece31da46354c6dac3547fd0db2453c3e1ef398a3e290ac8a52712a0230253d59d193e057f9858719e6d2c012500cdbf9191af70673ce879702544b132c71e4b00272b92928867b5d9bdb373fdc0302047c435bb500683066023100f5f16c312b5dafe0429689e86b87c000c755c105168bd3d03b83e3a6d2301f319a513fa2d160552d91faaa17ae11f976023100da7fb3ca2755de9aab4b6f953de3a203d1d28d19210d8656e18ae3b89e9574539fc9b7d6ca4dbc0b7e0a77e291f033280302047c435bb5006730650230353809f9fc0d359f52cefe6c65ddf07daedab924ae2980e43881bf9b2ce2a2107250b7e64c86f2cdf077ff0179231c79023100a16ef2f0be6a97c1739809a4931b2a130436cfe7b249c808e1e0a927384d87d3b5280a0e7f4088cda6f90bb5995ad0c70302047c435bb5006730650231009f9105749862481c4ccc38dc51122e054fa8c8e7af09658f7010aaef93da2348741c618e63fd523cbb6528ae45de6a60023037a2ddd1da11c7c7acd2ecbc6190ba1da7e5b3243cf68ec807b12a4adced705f92a80ba6b137177243269c11699e93db0302047c435bb500683066023100c2764eb31b0e073b741eca5145e86897a7c6eb18ff4d54c9c2856b149f7573e86e0e0fde81fc1e89936649d89f9910bc023100e92700be28fbf9a476ec7885769d97215ef138737811239987ee014538309a9da8fd5962fabbec37927461334601aeb50302047c435bb500683066023100d4fb24d2386eed1c55ea428cea089616417ebf3cc842b5219ba9921f320e8f28fddb7d1e2db7bf7f073393adac419c120231009322d3fff57a8c7fb7283ff2a20f224e87aca05553c42e4c3c64e7fd6a9fc88e176fe8927685888a62ad94bbcb2112360302047c435bb500673065023030d8954aeb2ffa5695ebe9ce2917876c830608e5c145f6f28aa743657d921b8cc29b3f93b879e7708a271116bb342584023100d34305a6df49bae7455b0bdbe79603e2e515c73c2a1f4f66f823a0c5db9187781dac82a58017127e15a3a16e83a22ca00302047c435bb500663064023045f3d9443ffb0c3c28da8de9e7bc73600588ea81f97084a2bb330502f957740dc07c02fe3b135392794f8c12c35501c402307062998f0652ae5d15846067aef8cacf107633eb8e0439cfc2462712dd26119a40df76a22ef1169d59b141dd28a7f2010302047c435bb5006630640230300e019a83c342841b877b1009b1e5db699314ee0db78869068d831e1f2643f3bb78e4fe5facc53e106bd22601e442c902303a0ac15674ad89868fda8e18cbca63f81551bc166fc2c4bf1dce0d5720c211e2ae15eb283d3171b9e5a3b28db2128f250302047c435bb50066306402302dc97c8bf159e372faaa8d8ad98fedddd8256cfe0f9ec9e807af7ea8b6d4d2311638dbd4e2fc5c476a96a6dc83058ec602307a8f28baf87e66eb190e42d0e9cf4def0baaeba33259df70e40e545d588f98446f8f952aaf00c5982996f87e9735035e0302047c435bb500683066023100dfd60e62eacf7657ee8aebc069b93d787029edcfa2c1e1963c26f7b0c433f5b064b63f9bcd22890307328af613c324fb023100ce2ab14c7f2b8c7c3c97796e2c1bd4e4207a0d61fb6f0f253caf1893e99abb93204e6b2e6d4b9a1f98bc9ff9f30cc0ee0302047c435bb500673065023100b4817730accaf0d07b8b61d46152a6a9bb1aba28449ace80e0ada248e818afcb46becba9cbae448ffac4bf8d0b99db73023061932657c45ece3c0c022480a72e11f9c065aeb550db776e6c2fdd9a2449557a3fd2d7e1a324c0ea01f5f2ce05444f0d0302047c435bb500683066023100a0ec7c7a4c224836e40597f78087b368bd90b690e5edadd8f2529f407e065f8613fb8fed9ff7cb1a599350659fd7361e02310087b4f20086505c94e6892b8137fda260b1a42ce5694ba8eb614c37ee775790876299811afbbd894760b037fc6043330e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230534e12b959a14f76bb4c80b78fd097e9ad011a78f65b2f4f703bd8550ded221841bb6d95fb0083c565e040cfcaf4543602301262a0d107909f6d00656b61e9fa899ed80a26ddb06cbb4b27be09014909c92d9a54b8115d45256e616862efe19bb51f0302047c435bb500673065023100a1b05bca3efae06678ce9e71f9ffc7079aa2a40e76516619a3f0e203f337b1a2d26aa8b528a47e12edab7eeb86ffae6702307c9a5543163843f393c7025ac875ee28d3737dc896bd9bf82be2152f3332f921c1654ac45200c6270d29e57c7baf35fa0302047c435bb5006630640230544f19e8098758c9874763a7d5b7c264148f9b702336b0b3c8af21ce964623aae07722023aa38e4ab326f8bead38eb9302303daa6f829da736bb9a9a03b758cf8c3a926f69a7a0951d59d43c308eb761987957541a5b39f0072d08d2fb0fa7cb1a770302047c435bb500683066023100b159a004893d59fa48d3d6ba64979ae9e3f32315422f55f199c7ce4c39d6e29007e2182ccb4eab1175ea6ffadd648dc2023100c136cf8bf3e93694d432cce11ecd57fa0095271a50e660edc70802a18030512a963853b09cc24f90a7d934a478b29efc0302047c435bb50067306502310081f6c2e20ec4e6f378e357a3bb43408a7d7dfadcbcd55d75be5683764e29bc12d9ffb876a6740316a68bc880e0c0f8c2023026d336956cdb1a26970af754e527a9c902b1976cc69632687a7ebde7963f957407327cefa160e772c2d60655ff0bfbcb0302047c435bb500673065023100a81005122ebd6e729d0ea8a26e24d0974ff9a5d3b4b1b66e21ed89733f84b6cd30cb4f1b14ab9c8699568a7771aabd580230456912b915a8193f13823b137f79bf94c9edbe51e2bba74268ab26440e4a95102cc685246daadb6caffb6d91ade477bb0302047c435bb500683066023100bbe77ce251948da9320a7df7557527a4c1cd16aebb08ee16e4321517dc306e251eb62a55ed27f547586ab13b2a5a94270231008b7e1ba9eee0e1da9eb507d9135e0fedbb5e160977dd6fbcff72dbb446b15deb65ee515ac88c239bc9d8e2837a6994c80302047c435bb500673065023100855d5d1a6ecff2625e0810ff059a45082301928ced4af308c76495ff97e46a3dc9f091281e3bad88879495aca499973802300bf8ad0b964c08e5874aa5fe87b3e709c16835d260601e3a9b7667578438f7548ffddd8258b261439228d18f584fc4390302047c435bb500673065023100ad389da2e52950d1e0364e213ab613c9de4767d2927a174d868f7f15083b99e8b83b83c62b1c3df3b1397e34776ac7e402301afc68d512da422f008bb27a820968893f4fa07f8a8dd273be4cdd0cd93a45cd90a5e845f423a7a1e7359fd5c3fa0d040302047c435bb50066306402305c37b9db2c69fcb9c268bcc784c9fb3dacb76ab394a5f064dcc896da60d0a9d43ceda1a3023674c1ee0975bc8339b3ea023070861ebedf211d4523b8ab845accf585e4dfb9066c50ea315dd03ce23a0aa30bbb9d51dddf4139f020e2b7c9214c94180302047c435bb50067306502304e54b0159161634f393ae5a8bf23747bb0d1669299d935dd0977f72b87cc47a1c94ac4089cd575dcc83f23635f5b345e023100c597eaef56ca60a8693c9687a9a04e298929ad9be7f46d1c4e75b445f98753bdabbd8b567b257061b27169ceb7cdd2a10302047c435bb500673065023100f08a2b963c0e8afa67bdd5d470da286cf44f68c6fbf96c4daaa4e6f0473c3d01f30dfd2c9dc0f0bc06d09dd3ec0a64a3023007b9396d976ffa76f18be20915c78e3bf838ca95eb7f3a1a9900e35f04e2b241ae4a4cd42b1f2a89eb0c7700703779d00302047c435bb500683066023100ee2ce15d3e9683db7d83a3c8fb35cc3b34c7abbb94770ded9762d58ba45069d9bc25a6bd2838f4eb52d6d8c7574d132e023100b12d2a0db25036d6548ca2e20aacb946c8d1f1314fa44ab04f11a499c6cca0749f3c31449128126aa8aac30f058342ba0302047c435bb50067306502305df44857d4627cbe5b71413ad1d1698dbcd9e553e7f6a744743e74839c2603122c465a86c3b3ab8b760c414e57e3309702310084550b283bee530a0507e799f4780c2fdf3d4b58a53282b56d22155f2095260a8ab2b62f2f23f56a78c761b14df6fe900302047c435bb500663064023020ababa6de307ba24c6a98d83749147ee3827c8011d6f0306a9217931cecbf2af6ed4227f028b9999e4a6589c5d97ea002301ffe5804c38d8c2da6d5db75e21ff5b4b28998d4c35363de7c04c2e24ab4236ece072174de0dd1f51297ea32540ca0720302047c435bb500673065023100e54af80fee11f5f3e64a2ec54e7c1a5bcc564d2d5a07bb763803cd3ddd247367f39daed730cbb610cee528fbf248c48d02305b53c3c0064da1a46b577b13ec3df659718e81f1be031bbb927f27ca93195c5a33f53f071bb99f393229db1f31f3ecb30302047c435bb500673065023075f53cf4671580c7eb727ac32ac5f2d303e68d13521d6792437db99cc512f3fe48d2157945515f0beef40007cf395745023100e0c81c0aef8ee3aead269da3af29c7426b207411bfa70e50e1219d50d88886d0a7a738656820b1f869cf380b764e99320302047c435bb500683066023100cbd066e6e9448e0448a8096eacf1bc952052e317e16aa1b95c69537d0fbdc3a2827db75c3369559ac47ea577ffa8687b023100e55b36510f46889d238feea1fde3e462aa9491293d5f8f9622c4fca736edaf4be9f2a42eca5bef3ceaaa47eade480f880302047c435bb500663064023027a386b0caecb221238e1459ff8319402eee6b25325c07314fa1015b30d12390f7ccc56806545464819d6ef31dd7a81702302dcfde6b29f23e21e29b02e4a2dded7f4c7f29dec15de3b7240bfa508c03799ebcbe4379dea019b5bebaff11c82915bc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230242ed9774c58e546ac3bfa5cbaf772fea04474406dd69b637d1a9cf211a12cce9cdcc9879e74069a7e3aebcd53d0e01002304ecf0de76bc5f84f2641a2e20508c96342adf6dcedd318ce4123c6cdbd3d0621cd394f316eccedb00fae6e98895450c90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009740a9af37837289693847a2d0aaab1873fcae0a65c2aa4f03b806a55453f28d640d35e847e89dc7cdbfabe22666ab540231008437cd8257ac1b93fda200b560021b5cc870232d095824312a7402f5a8e111ba9dd55b5a1d3248ae73178bb18b80ab7b0302047c435bb50067306502305286d0f432fc45bde3365e031accb1cedf0d1d34709936477d407111c0f27610c1f78ccd99326312cf503644560edf0c023100f70c9bfa4ac121860fb23c1154b402e1a8d56227a0223569bb3cf1df8f29eedaee9739c5abfb7729db16c337dac717d30302047c435bb5006730650230338237bfbff8cf5dfec98af7a17a6ca974a051821442835e4f88d2545569beca48e0d17439f16359397f3f3650e3389a023100c5beaafd7f964f1afd9a6c05811e6ee306b1c6d7a097973b35da0150e74a2746293ea8cfacf1c2624c6d48d1019cec300302047c435bb50067306502310083d01b78144184967606b12472647982bfe57a146779bed1e8ad99ee57bc8b2e2a7df26bee625d27f8f02fbea96e71f10230723602f0eaf8dc6dc5f253903f23eb0feb493e40fc652a27132638e5846340d341487c2068be43050b0f303304bfe4190302047c435bb500673065023100d11324136ea57e740dff49894cde15651591cba4239770cce077483e23ba57426c1aad760139cfcaa2b2678de1eaa89b02303e3a05f33d428f59d35f9f65e97d3658a2d769804834fe5ab10908279f31e86b1cbd12bfc3d3fd71f7567a93b22169ec0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ada4419f8a330401cb8abd1d8658464e0b886bc15375a055d2612d9b38bb4ee315776363f3c0994ffb66ce571608cc2c023100c1c9018f54fcd2403c0e3d1f3f1866cba37798ab7fa9ece82ddb3c11b0a4815a624157119ea8eed66c30c4aa39479f950302047c435bb50067306502307f9e6fc35aa39f2b517084adc80ae2fa1d77d8be717e880118e5e2ef249939001fbad2e4a11a24de5375cedac3042e12023100ea1b267f20d194d9043961473208103d54fa9e30f7dc1ed6d3756ac50e663e4f0746d23133585ce4654de08d4b03087b0302047c435bb5006630640230622aa66d93651f14605db8ce6f3ea9b51a6d4ae8077f4aa3e6c8f7e645c9c2d7d78adbc23992910d2bcd5a1f60710c3e02300f150009ca6a853c9a62b3684f9c5a28adc6a7e92a26772f2bf4fc914846bd1f4a3e1516af9bc239d53174e0957460990302047c435bb50068306602310093ca2ba90c6374a9071c47cc0c0122d97e8845bd524a64a553928f7d63f50c00bac2a0f99129d7a786547c816cb525e402310093e25d70b201660c6e965951cfb15e0a328ea26d5b8068c810dc493c3441182972518a79fd000a69e1227ba7267290760302047c435bb500673065023036b427d387377dc43affcf1d839f25ff7a49304b88c04fffe1aff7dfcbe8314a8f1006bedd4a794934f62fde296ac9b90231009901ffeb38ac49a7c146624e06f6dac6ba3b0d648474586a235e41d157f38f910afd7e195775cc27d8c2671f78c170f40302047c435bb500683066023100812d8eeedd110cfa7484e8ed1042d1fd570c5bd593af562b66aeb71f862bedae20e527b4f800d8f2fed9037bf1589089023100f7721bea700beaad2170440c5133ccc4075db5d1be51cd95b27313d32802cc1fcd559a5074c0b22f1448eb9ce638f0cd0302047c435bb500683066023100bf49eebc41fe01866ebcf9cf7232e1d5e7d195d973cb7e17523ea126b172a5f4ad48ab9de9ec743cabacd2d86961939f023100e14ea3ca6d6994e8fb40a814700f0efd617dddbb9f1fcdf5b67540435eda97521e477ec459df952d13a8ea9e33fc8a2e0302047c435bb500663064023044d241beac0f2e41703f55f0bf83acab3bdf70b0e1282f71844ef1be6f9221c3e12304eeed90312c3ec5eb9c76e7e348023076396203b767b8832e4212a6aef953fb90097efc3ca460fd1892091a1a66be4818d9592f7d4160b4678a659d0b69a0990302047c435bb500683066023100cd88a0089339d66457fa78f80c7ffe5d50446d16e22ed16915924f5fc7ddd0d043b650c682c726f06a2fde9890e9db81023100e9208469b1ac81ea6b752ec86d505d1af3306dd050bc98b42416dfbc0ef34e79f0d1b8213e2af95fa1bfb7ac7ef973ba0302047c435bb5006730650230328e63d33f5997e6b9a6802fb1c1a8f1204af97e16101a1cf4ead400cc08b44382445834a21245c9b8d2d05c2dd452b2023100a2ca7ccaf6225643e81038516baea231b1ec33d3f2305960096e734251ae3260b734f2737b620d338cbd0d0cf99316d00302047c435bb50067306502301ad6a9a972aea5ddfe240be0d6af3ef39fdece24c7944156f927a6ac07560cf49f8e22372e5cb966977d69310c6e9745023100ba4a824a0418487aaa20f6b38c8d7739d7e57aa49585c7d7ef1b524faae137b4c762adf2de944201ea08c44932b95f580302047c435bb500663064023046437dc9e7b7c833eb5ca3440bb8ef2fe791883f3c17c27a9ffc0eeeda8fb4862b7b34048d2c145438775cc74455f930023034359a6845b1bf528e8ddb21f1f688bcd0f7ee939b4c7b510bce1da7485c9c4a71c9813a3a47344244f5c178050ad9510302047c435bb5006730650230272a26c59ceb2a0c9ce0a5c855f0b1bdd6e8b21c50ad078694affef00f461ec6a1e790f7f7015a68b89788b4106d5626023100cc01b3b3daf587d0dd6fbab01ba034666ab483cb8e5ae9ff14e9c780d220eeaa42b53cebd07d0dde45169611cc82e5f20302047c435bb500673065023100be0b147bed6721f177c1e11d78ed2ea7cc5f8f36715e89bad938a0c86ced341beae358e5d39898b5d0e407905ddf56a40230600cdf8bc3150e78a1f56a7b086cf457eec3eb2286ada7b29a4f3e9d1c5c99ba33228d64526c11d6e59d32867b3ab9c00302047c435bb500683066023100e2574170d9ae35983380478f0335efb9951c215b259a8dea67850d1715feee51aa7648a9a881d2951e5484b655945a5c02310093c6df445d705592676fb0354d855a6a76fa306190139a9f995d84c0ee8c89cc093f16f1276ee8baa6ee3342a1d794360302047c435bb500673065023100cdab5596ad8c773e4cc66587205e67f6736f9524c240a3b523d8ad767d15acd73fbe5d0a8458aff9b0f6b689ffe10d1702307852656fdd4e7c10b2fb9c4ec524844aff29b364ec88d45d4f8334ac4dd7de2c0f1c87bffcd2e43a434c63f3954f8a1f0302047c435bb50067306502301f0807c2e0a3202700308385c84cd4799364eddbc08bedf87cc8662ee8a7f724d6f204ab6f852320b48c1eca21ae6c5c023100fb7fc824a40e3a53627fa916492946ba051aab0851f6eb757a96ecdb4f20707750f9940117a34edd20516468c5d265b50302047c435bb500683066023100958658a4c01bb85f96bf26e39f1a6485460aa1e5c7268edd3882267528e1f2abbbfc2e233842652c9d949e566532daed023100f34876f62293062e74ca55f45538f682b351a50dd97d9dcfc31c8fde8abcc5d6f0e8d59286f82a2b74dd1221c16340580302047c435bb5006730650230677b165bf35d9cef06d85c6d1e3d679c80bc069eb12386cc1e72c060919570fc29b85a9bf22cf519ee3c8f0ebeeab804023100febc68f61152ce3f776e77ac809bb007e06862f96dc46db1a6784b259fa09ca2b934154d0f2ad5b16a3989f8428d49600302047c435bb500673065023100aa02c3649573d95ce8e6eaa40ab122ff3148e838a2b818e2744bfde6fdae458bc91c324acc61802d2f44acf0db1a959b02304f8b6d1d876eab69b7fc10ade2ff324cc5c08cd6741aa4e5a24ac56fe298decc972765df0ce7ae10f277d384925256bf0302047c435bb5006730650231008dcac29632ea14c6f8f29842db8c873078bd80990fb76b4a84ab770a33d3492e0da0fd32642f84f7dce104194858ec790230345f69ccd2ad2d8543fde7044aac9c822a90d01ea5cfb71d18915e9780480bf8e41e107e8e0e055bb775028f5d76c8350302047c435bb500683066023100e975f6a16746827e67d26fd4a8a1f9d9666a82684386030a82cda6c60b608916c54aa909f259dd591a1a8166561154b6023100cfde3e92f8de67ba09456d459bc7bcedbec6f7e0ca7aeb19165f22df7da0537445e173d524eb830ad9c93bbcebeb15950302047c435bb500683066023100fefb04395745b3c6007ddb03b5d1470225b53b0bdd5f951216740b648892b059e80618593adb0c2ce96ebbeb6c4d94ff0231009bd55a0a15b955a9ac440e3059e714f47e42c0494f49e6db5c8de6fcdd94fd79e5a62a9cd41519a552741c601b7555d50302047c435bb500673065023100ee3cf76c7001ad2b3b5278bf9d17e9f3a74bae1991ce5b67c958ca5cdcdb48842ce5f49ce097a49d925f88a6628182c302304af66b394a022c364438e13a07787e703ee2324228e24c95b76cc52c9423840d765bbc86ad390450c6b51b5566206e740302047c435bb500663064023042408ac748ab0ed5de22b2bcf68b1ec402b32a9071ad7b82b61472368810aa169d980f6ee701d6e1029ba410709e2de702305b49272d3f537a67ba79371e4481160790da89e7445b84f8dcf0ea37bedf34c18672a1c88b60ead82cc29db8b55264520302047c435bb50067306502307af3682167b7513ece69ef7089e8aaa570acdf455ecaedb9bfadc652f3144205fe3f7b34cc61c28b3863474d724b12b9023100a29e667385aac1772ae35ecb0ef691844244b2d56897020fb81b28299c64cf002967a1882a91c531cd68ba56873773430302047c435bb50067306502306d81fa07f6880d71e4125c02984dac18371ba9be47df1425759f331e7e8e653a1fa44d141005826706a2db9d4fa4fca60231008dbbd784c177a82879f49a9ddc741e1da09f48cace5255f0c3a71b3cdc06bd19319dbb3af3d953d7b2d2aa6cbf57e89a0302047c435bb50066306402300634b727fa49dcea6b5d72d6be124ca319751379e8283e5325237a044ce5c8542f6a8ec5137b712d7d7b888c7dfd660902303301e58d56b4f46073a3a3bfdda314bf159b6b34165a876d359ef761298d5d63bccfd4aac89bac4f16604193c06e72260302047c435bb50066306402304f89921cbb3e7b19c000dc718c27c8df85394e02786ed8ab363d1b8033cdb01b7ee57f7e8b5da1c9952e258388a1802502307b15fa9558e25408da07335d7149eb6ef19c0455665157b533ed2ca718f1b2501da242d4a106e2ee8ec2f28daf4419640302047c435bb500663064022f1c705b4c14127f1130d339878857e928caef8017b6eb0c3238cac134a8e108c9cbc6417b7a801a25cee25d16ac4253023100940cfa0001d2d1c3b550c0e8ff13ccb000507a5124739e72e439eeeb53942e83226924c070244d770a2501b19dd0e00f0302047c435bb500663064023011c5dd6ebc65d81aeb2600e45af1cb34e31fa4467c57ae7c3f1e1340f4b23bcc7e807d50070d6c8849840056b04a9d2a02307e1cc1cf0a9714e1a9ef0b9ac649e965ab8326d32945c0229c74fa83a761423104bb2311ea8df8abff665a86b29211460302047c435bb50067306502306ff84f5fb328e0b2f6d0a2fde0ad037393071464dcd7c11f561ffd61b9689f27fcc002db4fa499f6a9bbf2abc6753ba30231009152cf8fa39ba074409369c1514fc7266fdc5981706d6d5df65a64ef6250e306f538c4268569fddc6f18db85755fe7050302047c435bb50067306502310081c732a008d6016a3db0ca2bc1bc1abc76d7ae2a3aecba5878651f5d84990ca214baa3f399403571fe59c4041002e7d10230763bbbaa95a48eb4937b49734228b0cad1df539bf78dd3ff7c68f6eb1dda3988545391c6e05ec18345359e1b25a1d5330302047c435bb500673065023100f50a9da052d167340a65427bf16f0c8f1763f86a4bd5540f2f621b0d11ef16a57e2f3659ad6a30e59c91276d664029a602303121397023db39b0390d6d2abb1fbd3913eb6c1d18dd174e0cd5a705852623e58f29294fb79fd1c177ca088a94da45290302047c435bb500673065023100a6bf5a39779b08c2261c1c1a685232b7f3bd07d8cb1ca629655732fd7e71ac74f60f8fbc48ede93100fc8879a1f86f4b023049196580014c63bcfcffd895668e972605a6456b87f0d8fa321d1e3e08bbcf41bd6615f89b239bf999aceb3b307137890302047c435bb500683066023100ec3c14b0f10c343ad7d3c20da6272fefee921b415649cd59ffa909104684a0541fe6845cfcdb66c67a2844e94cdf3d54023100b4e5e9097f1c2acbc2be10ff27dc793af470f430f0c7da8348e5b9716dfcfbed830bb8492bc424b4f92acf53894a68280302047c435bb50067306502304b991fad1497b1d3fd74385e90f0e088abb6b758f72f23573ec3528b45f6b0bcdfea1ad35c4e0fc2f652fe2b75336f62023100872705ac92ef98a1719f3fc96f445a491e11861c3d22e3e1a0751becc5678dc78b8cfbb28d068fd853363c497e14aae20302047c435bb500673065023100b0499e4b2509095913a62bc937cfbcba183ef8e62598492e99321bef08376d1d63cfc3a77c18fb22f083e30057cf79400230064d3e1e00a52add3c96f9c79fb6560caec3829b6f20ff0ceadee63bd491233abe8f4bf7a7b0e6f5a98772da727780230302047c435bb500683066023100e733404feb78bbfce9c75db5481db76d0877f1b70032073d79061c9d5d81c27be422e3dcfd7e111598f178b59b6cd579023100e1e76402a330d6761267e35816d5c9961868341063230a9c9631b31f0962f4c4488f0dbd0511277f6afafbd1797aaea30302047c435bb500683066023100e37cc6d93e16e1e540fe7df573a954a2b94abb2686b1adbd99559bc13240db1090cdce2f89d5062a71ea100a3e98c8f9023100e1c3837af3f6785dc3baa9dbd3b2c357db80d17bfa945545f1852726a7c2493c871896258f87818c7c8ba859f800cf200302047c435bb500673065023100e6c1ca4c8851aa26798bde3abce3a3b4c461dc5c2b6b9be972a266f4ee2081d4a1c7aa479baf40480e5eb463af19eed202302936665a4928a10069903bc48dc6918ca24d305c2c0907ae5bca890408d7583f2a67c0cd58ecefe23561942660d609670302047c435bb50067306502304ffc7691fb59a0c519687ed72b53cc4dbd748387e9ed7bfa92c174b38d09a957f8e0358abf26e674207b4bb031bd9558023100aeeee1f4f47208fb053a92694fda3c91b035fd5ee6444ccd36dcdafdb6ad9c9a7b32a3f131c2231ef59904753636c74e0302047c435bb500683066023100a2ab9b138c961fc1c712ed7d2da06c4f782780ed1be2228dbc8adb6a777de252e74c4fbcfb0d502ec5436b53a890abe4023100e143eba759660aadea5e7cb62d0726a94c9919e65bc6eff647b2060a9f16bd8370eddc2ab2154a7a98efe85826db44520302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100838996068cd73b707a49d7fe5e8661935ef306fcc7455a3a82c339c9798217d76c155bacf65217160f593fbbd79f1b180231009dc4ee034ecc632afabbea498e96168226c8bf080c459bf900d8b1abf355f2e1d0ddfa57f06f54697a2bef48f038fc730302047c435bb500673065023045b322bc3489523c3476d8dc0176d8cb8ca3f9708ffb97be7226955ef2859df7bceff06b7e0fa89ddd6c417764a0713e023100d72f66ded75af8d10c475de42ae9dcbfde5433cd2f5089a9f4861e38e4c6d308defb0597f730a70b90afca2d38a275c60302047c435bb50067306502310088d99858c81cb9dcdd9bbbcc90485764f32c672b89c884a3d33b922693e2aa6263f5ac2556f2b0a74891f4e99e456e4a02302b2447cdc61243d518a7e76c28c52468cafaf7a8b865b0da7277a1ed36f9065edf6b4d89deec1ecf11d7adf763c3a0270302047c435bb5006730650231009d3b05537a6cf0043f4ed8c059fa1cc29c4ba8403669480035496eedaf776a3e39d5fcaf9985279a62cf3ef4b181063502303c9819c82e358f12ed876b4296375702d83131eeb91221ff77f5b5665094a96a3abbb6b85c2cefde4b2aaf128d78ef0b0302047c435bb5006730650230218e4edcb418d242b16332d749c08376a53982d3e2bb1e4ace89afbd730dad2b626d424551ed4f2808729fa872237ce0023100d875f5fa986b2d59c28e6c86214392ed96c800b89c2aadc31a4dd35a64a2cab408f070d2ace1c27dba2e2b902f3394550302047c435bb50067306502300c5f52700045be7ac3ad91a1331d8c89975dfece753190944ca4e38403ea4f35c175b3421ada33aba50e2676b5d91de302310097c7fe7ef9dc040fe32acb8032efc81c776bafe927bc768340034938d4381c594fef2b6b7966490b26a7377f73dde4e30302047c435bb50067306502304a720f98e000df8c770a0fd04deeea605a31d6660555314750285d7bdfaadb6d932a7f7ff532fbfbeebea868acf32e47023100b28756a97bb690eb4916a536763b99355e4ccb15abeeb50f68b2e9628c29ecc5adcf5b07af7767f0f060c3f9b5c4b7d30302047c435bb500683066023100a16444ca9455065e664ab6ca294cb3c991fa2666eb30d4c43fd71315dbaae4c8102387c02276ce6447eb89902073659b0231009ccc61b464790ece206a1e74bdfaef94286cc4e573a48570ad4a646288258ecc99d57ace4c37bbfc39d4224860d9ec790302047c435bb500673065023069b74cdf966aaa08d22cab523c00afc3fe8078151401ddfe0eb3fec08b80aef95ccbfec300f0509d83a9fd688fc7126c023100de3e3d95e45fb3ea2312d3fd9f0eb413753eba836bc5c769bc8b5068b75f672bafe91124a3d378527075f7e5023e014d0302047c435bb50067306502302e568b0e94d9451b6e51319a2ef211248fa6f5ab314e099b0c717dcd26fc9c789ab8766a04fb4c71004d5c090c695c56023100ec28007ef9b4b4d706f2c54d1e3317bc0b65bfd89422d0dc048697a6b4a0f702771810074aacfe24cc57139d472141d20302047c435bb500673065023100daacffaa43d2dc49ecc40a4f4fda6512d536637a58e2d963aea1b58d35c7b962aba7c9d912de8dbcf9fd844a376eb19202306563aac43b3c66815a6813fdb1dfb5345168a6b3dd5654676f45229d140a50b2210eab292e6239363e18c0b2c2d59f140302047c435bb50066306402300e891a40e1857013e90a5d2f7af428d9f7f94ed2b2863ea4db6d24dbf1b68d6af6420d3029354074848fcac16cb4834d0230591a49ce303dbbf18ded79913c31634e2472c70b9a4a48e5500349bc62acacfe51a775eb1354776d4e3b3654188539bf0302047c435bb500673065023100ed928757d7b4f57499c3825464b002d014a152a0f9a94a399a5a5115ed8f8dc393b9dc9e3cc147007177d3a415e891ad02300f33eab36f8c114af70973ec0876100a63955fa69c2faccdc8a9ecf708c04c5ebfce3d819834123dd92427d32040544f0302047c435bb5006830660231009d244940e799e5d773f52a2969471276481a0b26ba657a45e670487423dbed6a302f579131a86734403c9e8c28fdec520231009cd79e7dd2c66489746c430fecd0760bf5376922069f3a69f2bc55b665c44b40dd8357e5e22b575c63f8f6920edc81c50302047c435bb50067306502303fb3e83ac27879907e829ab8a20c8ddecbfb8e42e730729ecfe6f08519d36cde21d4004bff16102cd2d5c894b804ccdb023100bab226fcba1e4ae0597f0b3e966f7107b85ea9535706d8571b5a8f482ba6280b92997eeb8482ef5b92e5eee4f89c8d970302047c435bb500683066023100ee6f583936dde282c55deafb2a2260750ea4431b8c3f51d771e7232cb25a604effcfa5e0ae788afbecd162e95e9341d802310085c35c4d3074f4a12e84cb56c26b7ed94e124e2f156e135904909fa70af01928b5c12a561f5fac3b7db732a9967639d70302047c435bb50066306402301d99c46b59d9d51e470fff24f82a8734de263b56a551151497608c7a8991780065457b019ca513e1b53d22e8479112ea0230577eb76d14d637b979d8930dd90b9bfa21330751d3cbf70a7f6544ff40a70584c6758aa53e0783158461e0ce67396cca0302047c435bb500673065023100a1fe321d9afb57b44eb59ca42fa93827345f960b54f73c539543761735b5cb6dae22bb4b5003f3e506332fd51a05854502306f7f3adaf9e934a8701a05fda40abc0d8f1c782792abc36316775e8ecd51b9f418f8bec69214a154c7fe54cb3e286fe90302047c435bb500673065023100ac3a208a99304a370e7cab2b8846dc9db0820f6bb98a2b35fb30453a22afd3b9ad1d3d2be2acdf33c6dead9d9dc6309602302d763ed75abd8f95028e8477c14e2d4a46016ce4027835fa588950e52b4bbac759fe55d37d6045b44995111fff2b91770302047c435bb50067306502305c7837c37644ff045dc91f905b6ba5944916a35f8bab13ef338c306314421ba99d7af632f49aed13b5fc79b9d81d8101023100c7ed0eebad173779be5f30045bf4d2a5a02f9be9e6483ea7870ec344ae4ec3c56671130269afdb3d8b9746a56ec0ccf00302047c435bb500673065023100e7ad4cf104ddd3fecddfbc35724566e0256120fa01c99f3dc66ae216aba288d52ded4dc16cac9e7b4ee05705c3c84b3d02301810cd129d6ea17ee209780f957c39098bc166fb4faecfe2cf507fd04ca64a07271d4aa24340cf31d1e16ac5d47995090302047c435bb500673065023100a8f73f5586bd0e2399868b8b974bf9fc3776ff1a903546c98e3bd5ec10cfcae428b10fa340c32b439d6182aababa2ae502304905f0ac1033bbadedc23c5f80ac05941eb402d9e292a349b6015cd0e2da23f677073b431227935c353bbbb59b610dae0302047c435bb50067306502306d2638d2d054c4dcfe75fd88aaa232d63bfe730154c97cb6c7574e27bb3e0dffe3fa544943cf053cf52506a6d62acd97023100afffff6dc17f388cb5499ac24fb4592f1978680832430b348ffe361206c185a1dae6876a4f19c35711762eeeef0727630302047c435bb500673065023100c7c9b4a4bce682989e29e78b2cc429b51f8c0058025e248b544620701295b5ea4db904c56916c160e8a14d8d34e6b24c02300b36a8a603f3ddc4248d491c4957f0d6a5cad39b8d849090f56ef9f55656e89a6b84d0ee133b2b7c455875d091f262730302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ea684cdb3aacca292dbf7562b75839a8c200a15efef74f17fb92b23de436328905212e437d7d512c63374cc0512d4aea023068583d6d34ed51d64aa3b035f4640fe732817ab2c2fe6dffb2d94d146aac84ef3ac2be174c8e8e9b0325e85ad914c4560302047c435bb5006830660231009d1f911c853354a010e80e60731609849188a8784b045169778afe714a527393c6ec5bca4ab239fc57f49289a2bba851023100a0d24ccda086733712ad9b181eb4a3cf022ed35d756da06f7550a91398148ca30192684f5af2ba0d5cc320f2649095c50302047c435bb500683066023100efa00061aff1f1c4e7c373c13c56c4115798a28f66a315e2688f8e2cbb4b41f3a15d964201ed7f6f3dc21534ed99d770023100be7c04994de8f0c2e36923f9e8dabcc94423a14fbc81eb921dde0a70da78941c7429182355577130afbf3892f80697cc0302047c435bb500673065023100f442a9b4d7c4dcb49d4803a1e94e3322f65a6aed40362bafb41c472dfa2d522deafe4b22c7674e5bfac3d220aca36f7a023075d281f9cbbc479618af6ceacf60604c278ce8271ad9d818849c779bdd745d17dff0af2933908618aa2a9994676e62480302047c435bb500663064023058c6dc137772d8f08ddc73242b066807845a8134231efc2c1570073b7347fcee605003d2bd20ad9d67fddfe525d108c902307afee44d0ad87c7496cadfb963178b8f79be486d557c49995ea9afeae4780b6548509718e93b19ba817a83f31160aecc0302047c435bb500673065023100fb563e63d30d8f97a99f0a805863b3cd47d235e4aae4a3c45444ca08c09346fdb9ec485406605c8f6f495112ea6a4ddb023052dc6bcb1a61b473dd0190b85af071d22e644ee3d6e888094e6aec1e7a215f198ca513016b5b3ce4911210a4303fc0540302047c435bb500683066023100954d37e545f6835e73959eace05c23ff5e25cc0ab5457e9028c74ee94da2b60fa73c479cb70a97f0cf2a3203e6002a51023100cdf93de856e2a1657176070926ef98a903f85672951ab4df2958883ad1ddfcbe2d4f62fd689c02ae0d8ef69e16e1d4f90302047c435bb500673065023100a1aa2b2de8103d0402baf357f466429d20854e7c2ef5b70d2ffb301fe44402770ffeef6cca0ecca58d616d7e0f39ac86023008cbf50139d38f636ca3eaac5c3ac03b2a0e3eed727d941777bd046a7a02aeff6200621a001b16bf267f675691530cef0302047c435bb50067306502304e1d1b919d33913f602c7d75ba34dc307892f15c31314c6989a2699faacd708a9c368076335abf5e3842c392bbdb2f38023100b1489b5ff141607029f5505f87ef9677c0030cc45df7137881e114324a51a223d7dc5cd3d938eebe8d350259a34836ae0302047c435bb50067306502301bfc6086046256f5d5577ad4f4624c500bd5fa31eefa8e59b8e0ebcc78b6997c9f5c73d1bbdeaa149c58732fc9ad997a0231009939b71699eb5abd97f7697a4979a22e6b36bb8aabcbf22cf6d9323fee33e7920d46705feed0b845410697b00ab6242f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305ed5c926fccd05b814a59ccb4359267a700bda0287dd8ec405d8ec065a9b2ddff5219ee406bf9f882873776b31b079df023100a62b08544a441798739a25a31276ec01d8e02efef018e496641e2be3d206015bc366057faf4798e338c959abf890e9a20302047c435bb500673065023022a88ce7a75163902011e33a882f4ec2ffa0779516a303122e3aed4c572367c87c76442b9204af62a15ae186185dcf4002310091d7bb84a96dbb73030e6db32df52b365afd29e129a4c72e02533854e0bef3030de64d0eb31015ddde5278666a7cb5f20302047c435bb500683066023100fe821ffc48a77b3a112910bb682f3158b342cfd07c3ae553ed5bbe2570acd521def0d3bca87fb7ac9d59209781afa52902310088b298fc09c219b1b1551042c78672643dfca3d7b3805677c0b61e0554cbf664d7b1dd7f52d5e8103ed4ceb389d319df0302047c435bb5006630640230721abc95d71828b9e193b18d267a4aa13db362f5b44a970f1c0afaba88fc9010115b9a55ad448b21368e96e3a17e057502307cb918a4a40ccd92cb7af66e7b5dc2363086d534f12087b3a50c156df33c102c3dd2aa293caa5aa8c9578e9225fefb2d0302047c435bb500663064023000bc50e0cf6e7e132c4eea6cd7b2b9a358d0cb54c9842f6b61e0ae3d78509599d80921a344df9a07bc81bdfc040b18be023033c4ac3dd6994a8b30827109ec7ff0774eef46688f3fda659f44704bdb7e4be6868e6be21f73b0bf0a3f71793625c7e60302047c435bb5006630640230492c1f228fb5f7ef1f04bf585d8562e9f5db4e98d6f147cf7bc3b4d811c8c0287bb1c10d98f5ae7001933f738bdbaf5902305ae34dadb4de419b558cdee4ba8e8d6b3a123402a396b7876331eb02bc53c8143cca8115cc9249be0b62f5affbfbf64d0302047c435bb50067306502310091c26f6498b3b5afd6f3946f2738a157074d85cb079c88cb115f9d516be2b434c8a90fd652e385353bdc4bd9788b9cca0230153cde2e43d66f33aa7a3eb01c67f5071609c2d3ad2ea9da3e7159dd0eda554d648d750b38ee46e1acc0df7d2cc5332a0302047c435bb5006730650230160fb7822fc8b4c7a6b1865089a866b2290ead2f5772832b06881f764c84c6db98c270e3fa439c75dc2647a40802f4df0231009045f3db103ff6d4114eb9faddd81ba174fbda413b22f4a10f50f906c1c6a0e5c8471cbe3e8ce35dbc0bc2b7981aad4f0302047c435bb500683066023100bd1f4a7d12093896fae116bee3afa9f5126f2ae067527682fc06fa0c3c6d7c88d51fe577cd7a206ca924ac8f222a8e79023100b378633b10612e0e506a0b4740d40e30a086fcceb1c6761eb687fd679c6341bb073aea9926b3bd772e11b978529c10550302047c435bb500683066023100bcf39a2d501823fb8fdc5db7fafe31291ee382ced75303624c31267114d4a33d33959bbeb2d0165c3e62d73ca83976cd023100eb54d5b6466f974c14ef1df71e8da3ef7ded758f764c26d139c37a3ade2fb5eedf6f360652e7c8fab2b44985651b5b8b0302047c435bb500683066023100cf79c8ee04812c73e95a2818a54d1855a148fb5d1b47882d3483b9080f3bfcc5e6d4b66df174b1e95b824448dd405a65023100d1432fc7242bcc0749dda42ffe7c7adf4f99866d14c6ae3021b88d1a9f1159f05b068264143b05ebff679a121a2812920302047c435bb500683066023100ec8c8f32fe0d8330f40cfc9c892bbb8b7def64fbad0e278c9e54b68156eed348e5a0bfe45db5aff1a37f9a157a0655a1023100a419f7ee6bd0f850dc4164a9655e2b0ca055bf09a71e4ffd455eb6107129f9df3366f4264806410e7fd85203c83bdb330302047c435bb50067306502303596aa3ced053f4debdb6a0c8f426c09e6f864d3c1d36e5716fef663549647702dfa2e4febffef3117ed1a07f81f93ff023100dc5493c6696a6e10f2e2a04f5d831343164145b13d3a38abdefdbed8a325fb39f6a01ec5f8238d161cd9bf9b9b4c37300302047c435bb500673065023100fbd7b456e441700c7ca444206b822caa13fda3c2f6f8754b476dc5e30c3a2245f6529777131c0439ffd298a550638d1502306b379b4b8f8b3917c72dc25c4016da4d2c354da303c94aa22bdebc476253dae7d89cb6b64bbd7862354c948f7fa1bda80302047c435bb500683066023100e5e2834305081efa70ea7d8bdea366acba0408ef5e694841ff789b84a057667fbff246a6110f093901702270823b7ec3023100de401cb6aea6c87aa56fc9ac320c281ff5e1dccd0f533ed84fe4c002617be80d88336d7c30fa4243753c506c6da561fb0302047c435bb500683066023100dc286efb2e7e0a7e097bfff3666ab62dc02c9c5fe15c66453b28285c913d47a914b87d258693e2d4a3008b5f603f9b01023100ec98326173b831239ce2fa0f1a1856988a68d255cadc6e4292d67bbe54d899a6b155968ec4e56aa60bc9657804f3cc950302047c435bb5006830660231009a9b83ec011daf524d248c9d6aba2cbe061d8021f94de3ee26b8d0e49e56d183cd26e4d89144314f10303de0cd0dc1b402310096a26b1e96879e9197becf0d5a73bfafafd0f4a12e769d9139f9006767e3fe906f7de7e73192ba2e13ef055a8ebc68700302047c435bb5006730650231008d04756bd67d902f992d0a30604090f11abe09ac37e978c4375541b8d97cf86e1ec725adea930e14ad3a2e7ca5aa4dbe023066d43d404eeffe3fb597042364087f4ed846e01b61aebd9a56e3d0ffd3ecce6ddea150294538ce61a419f445ff96e8d40302047c435bb500673065023100ab92edec64c011aff9459c37752a874ea58ba2c656a1841ba507de509a166c58e6414a020a7f0a217452be2bb8c0d6b302307d0ef43b523636a39c92cf44150ff8a31d8e5f5d76d9db57f27ae9d095b8046754982a3c3e1b77aa1285ed8448fd49540302047c435bb500683066023100a1e2784320cdb736472d239a9144d994b79ed258045d68bccf7e7cbbf83af0d8e41524f3b9a2d0b2c1a3c6678befce30023100f8c70843a5059d7223bafa7af7ad0fcfe00613d12469e1a57d58999a618019e06fc9c75a8091657d6c51169b8d6328d70302047c435bb50066306402307f521d5e089b7c7faa1372eeaec6719763e3a05e05cba064d7efb3526f5dd787cef4b225e4887b7cdb784961cc5197da02307b7ba18f4f09e9013525d185acd0dd2e9c2a052654b4380c594287f23f6c1e54375e85a4f91fff45c03ccc4a6d9dcc1f0302047c435bb500683066023100fe3e50ad0024c0e3a188fde7547db8d874b4e781d330ef907d58096b1c50ab7ae6606c038315ac4e04cbfc0bb661e025023100c814ed4dfe881ba4d8e6b348223a6d00a2bd1b2fc2e66a8acc87f15e365250ee1537d45276f9f3fb28771432c230788b0302047c435bb500663064023060b2f8ed5b47bd282f3de27e5c3355289ea86601e1ca1933922e97766577815b1580a1c888f984eecc9c69719957d8d102300e7570191d5d5ea86953df900f7df96c1a02d6d09a037dcd96955c66e95ac876da27e6dbe0596e56844fa74dbd41e86d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303ba591fdf5287801f07cad8cba6bc59d32ab934d8c780f6d72fa95a7fdbf1752869098373bbbc6b463ca2e5fd3d7b79802306bc0660cb0611e5b64c70f91f5e5f191be666ff9187324046f5459968380f3180fd2b153d1de387dda463992cde88cb80302047c435bb50067306502304dd8cf41f18c3f0ebb01da9f52452c8aeb7d5b90a2a260f71fe17154884b5f5a6e12fc19957768469da5936a522d8596023100c1241136af4c0f461f20f18ff824668b23191c51ca90bc9c8611511195ca6826bee7e113ff346be07c5b093f792379b90302047c435bb500673065023100f9c77f9748d547be908fe24a21030d2091a33ea9b6059f49cec06a635bfd873e47ad9da3c99d654d8ad03c81f87917eb02303828f0dcd349061246bfa1a288f71a052d6466127175d18e5c701411ac840ffa89791ce9202b852423f6f34bd8a457b00302047c435bb500683066023100ac235af79bab6186179b33d85a67396f88bf3c5af3b04e2a5238b44e90d71a1e3342ed4c26427d4f047f094e4d747aa3023100b3c43008b5694c89db99ddff0eb3f0fa7151487941871907890fad5ac58957d1de437ccab74333f6ef5ffb202a74aad10302047c435bb5006730650230246c8dbe717bc9039ce7e057625d3754786ee2fa279dfe54659221c873c5d2bd2113b94277d1d7cc0647417548f09fd902310098d3b3e8d73ecd3787c68f67255e920b538c41a2d68b920ae62513ab2ae4f18106c040fbfce5c241c226a4af9f60780f0302047c435bb500683066023100961cd75e0bd48bd19aa4eb5dd8c1cbc45556d3d3c404aa4d52d1bf2a0be052434431bd20cd79917bc894002679fa7265023100b4cc1e75bf9b96686e7e3f35383c2a6f7ddad0e4eb57dbfbbbf0df434af6d63659e750eb902ca07bb11e8dacf26ec5940302047c435bb500663064023019a7c0743ea7be0c7346bb1750dc13802b593a3c79a9c469e7982eddc3fa0c4cde2c0e89ca36fbfe8b8d8c27576bfeb20230435afdb654f5fde6e52b1b478b40e8b218477f9ebb51fec1c9a781bc40e1a209d6559110ca278489d4372fb77269258a0302047c435bb50067306502304bfdf442b44cdfb72a7d307241ecf248123e3ce78550d8fded46d4ae429173715720b3b815737a542c392887d577e2dd023100c1d52e926c5faed3a3ae4a1def02b3d614bc36298c7dfe0a20b3bf1ba67f8a5867de7e90bf7f9a4c465cdc9999f6e8460302047c435bb500663064023023b0f49b578ea4c7e290852b03bd3ba8848dea8b3f375e84fd957e208fc766094db51d37eba95336aad12fd48357f65a023013debe3f01df32b3b6e727f49117ae7f174c1dfd06c28504788b6f2a5f26be135eb7e870c9f0a3e7ac3b511bd308f1010302047c435bb50066306402303fe3163884027c5e2ef7031e8d476d6e052c598c6efdeae2b42ecc711d91f313593fb2de18fd412ba4a92876ff1f0a48023020d6d2541743963922da95190fc3adf71135be61d331dd5a93058a533646f65884931d2e6fd3ed06060fe59c6f744b9a0302047c435bb500683066023100fc6514927b5d7cc790f7011d0254e4cb1ef35e1e2f4461de213b327b49c7e5ad4448dc5afd5d4428c9d521516d9a4439023100d86774d7f167d29ab14cce688ddb0c8ca7c880658f995e7e189f27a24a2fa7e94600d671743ac9426c6e46ce6c4ba3fb0302047c435bb500673065023022c2dd51df732f0df666a1af78f99b4c0d382ba03b8c18c897cd4c26dcc68f67f8f1a05ed4dee76526aa1a54396bc160023100fc088a6614e9cba5d52d078a0bdfe482f307c5e665e0e6205675b99e7f0d97edfbde101ebbe7d9aef7297348e71b667f0302047c435bb500673065023100f90b8f61de235717217ac39dc009dfc91a90395a5df0dc9900e7a374d44c2223a7e2ff67820abdb40e4adc9feaeb1409023045969485435feaac4f47c6617afe46b418e1541d614ca1339d48a728caa2b40bd9d4cd6245d4fdf795f9b6063b8d0afd0302047c435bb500673065023100888611f881c45b1b660611a11e4babe3dec55c8922ba1751a7419b865028beea79c9a7eee9567efa7211c011570876f2023068b5305811a9a724b43b268346852a1924b0a6d1c21319fa517513ac5c59928b26aa1f7c9362a428ed73c7b902b00d9c0302047c435bb50067306502302801d0609e9d6eeded3c2ad1afc930b5a9b8cb69f8302f77347ff8bd9f509d14dd4d6638c6052f7778c0bf16c3b0fc93023100ae88f8ab2207e4b0595db749bfa55dc5584e67dc948fce0394f5a01d4b625dda4a6de8e1efe52929652ba121226769330302047c435bb500673065023100a9ff6d0a55e5bcaf6e9e9f313d07fe02b9cbb12360c056037037f1f95d55635f4f0c0aca02d16b9c363547ff4998d32c02300d9f0c6e23111ca3af06f60d257198ecadf1f197d499b173c69746326e89d122d7002f862506d36df0acff6e97014a430302047c435bb500683066023100cb1afd18a6bc0f7b2544ea3f0be2e41a8bddcd3070d55dc9922af94f93523b3fcc2985a425e2e471d1b00f02effb8511023100d9da4d0999e54ac07e849db489b65378bd5b5b3a625354a7a748791d6b8b0a23080205071c6092ac2e5938942553fa8b0302047c435bb50066306402304437f9f4ea2b0f3911ed0097c9847dcd52814da4af83f26dcb8fde9aa043155ad8364068e37bd0bf628cfa98c07897b2023036ca205db4ac03ee776fc97eefeb5c245df2313bf86493bfbf6db2d9f03055b21ae90e89e080390c0b85a9a93e4df5760302047c435bb5006830660231008815fa74b00b5b1684d3890eb40512e2b774ea2cbbad18d4216d2e2439f2c6e992df7d825ef70d03b974fd5b29bb4e54023100bcbaf8d949eecc50a833be5a67b0ba7227e17562095bac9cf4725f1192a19b42c2c5c778c34d36c6bc38189ff1ff9a530302047c435bb500683066023100ded944e99df015decec43801bef2b11ca93017a472110f863947a6e4b939548b96730aa403c4f432564c32dd6b426958023100c5b2d079cebfa2965995810ad6cbf56464c0c44bb8b697b63b5d745625e255fcbc8a1510b459283e61591ca3fc31bd720302047c435bb50067306502307a6929d13d939c82e7f42e01cf64d0d76b3aac62ab779712dba0f690d2f36c16ac3c1066b27ddee7771528286e521af0023100e0f7b7e84c977a30a1455e12f31803844e2a1e36ebae38b0870aea5d18b928220813bb2f96e5a587f4a0b55ee05834110302047c435bb50066306402306c80d79ac47d6e9149fb74db4d668a41db2081f08653df0ed7c520fe9d392ff2ffdca43104894dedacefe5429174cfb702307abad12ea9bba5f9657a6b3ea1b74eb050b4f1db0eabd9ca6a6efe5de381d187588d69ab059d5d1aeef7202ea33698220302047c435bb500683066023100ff94582b488f86b923494556207a843a4799d292e7dfb5d7cabda9496a6ccb5310ba7fa14b74767cbbfbe2bc3629802f0231009e4c2a2d8cdb0b90d982d617ba068b2ea6f0e5d8b59d00058aa663f446b7f27028012f43914c49ebe248fb38b79059170302047c435bb50067306502306a84fdbe9d4c085f0aac7650800bcbb349c3f101fc925d7e43f75df2c55811756c1b6489bcc8f124067b07a310a4bd39023100ec305ce2f111fdf996cf74bd88b6f62e364d12c5c13c66a8ac3db03e79a5db43cb2ac2407a012bb801b0af11bd82a5320302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d68dd14efc358f100280d1d7f2ab1810c976dad23af5c3a2c6ad0ca6533a1139ab9db5338dadd519832808a0799d324402300d4bc194599718e809e1ff77580bc337eff16d1205412c34f01eb60906c30cabfd69693513b567c6b92751d2e694b0e60302047c435bb500673065023100a60edad886d195e03f6b7d35d36783ff83d1c4f374aaa3ba24017033492eaf6f221e931e5c0fbd32fdd5e6bcba50ea9e023020f5a3bf0aae935f5a5760f6433bb8c4eb4c5e8e0616e63da405b0f5e4543a32945a689d9773a8a331416916ad2e91480302047c435bb50066306402304b2fcacaf64d8f60b0d139e8f93db7f2ccac2675bd56336e9b4f421e0d684a6a94816b8a34f3b64fe2665debd86464a20230754902a6066290de7b4df7fd2c9874175a33a994ce5619ee63e35c4e82b0dc85550917add855d56b8033880895c9cd090302047c435bb500673065023068e7cc542423b059a5e6e0858d077c1915fc21f5f7275b5fa1a9623b73f346844a8ef3cdd0085b62df86f47089100ab20231009e5a284d5f537792569da650cc0d2ac69fdbaa723464901fea3e3683bab5edfc19a65a35169d6bfb29cc2353c05605190302047c435bb500683066023100be0ecf8448dad56073465342a819dc8ec37bc8ee1dcf1aa8903c31c6bb2514030727ddc07e036d89baa0305976ab5b7e023100807376029ac3cf121a6d9f5e43681ed552cadc4c1739aaf7b101b97231ae3420a2000e64ab5f5ab924f12e3d19eaa47f0302047c435bb500683066023100c891b9367c4ef27123f0759fac6b70f5dbfe3006e88d93584d800ae1b91ec3ea74125a2a3c6c1837a43a0b0e217495180231008f6ffc467e49890d63ac0c966614b6f8d81539eaf2b750264ace71bbacfdb0ac2f93292d147e7290e691de00ea7384680302047c435bb500683066023100982084573717664ad7fc2f849d36def1eb4222dc8e499343e643b5da621178dcb7605347ed0dbbcf3c041e8ddd9131dd023100f7e52bb880549f7e77a9de78abefc74406c5a1904cf486c0db9b18f08de9970617b6ec992601ed769c5ece9746a345150302047c435bb500673065023028a810da9e44663442bee7b8724312fd78317cea2e04d9187d8eee7b01756815cb34431f5570ade883f48a612c9159ca023100cc4f32bd72b73b88434bf585865d86b9ea72413c7966b72f49e546515bc9663f0ccc5f12dc6eeaead3ee2b0524ef92ae0302047c435bb500663064023039c287747215713ef503ec4f19a05d9533a59bb7cfdf0bf4d0f76fc574c01d542537b34a55f77dfd07452bd2dae60c3a02301f4655ab74ec5b2d4a1c67fceacea3fcc75563d96bc1d6ea1920679945f43ddaded18f05cae9c71fd9d9887259feeef30302047c435bb5006730650231008b211d95f0f902e89f1c8d7dd469c58a22276b2e47a277227e972b95c9728baf017c00bf2a525d8689f13b2367b2f51d02307534dbfbba26f585f1f0d85e787be1e98ecce347c14cf33b1577c3fb249ddc23158f113e3eb178489fd09d6364dbfe8b0302047c435bb500683066023100b61ef7d135a0c2dfe51914dc974a874f48ca6bd3f7a2cf29136479c12e52b299e7d2309518d040126e439c0e6dfd5f740231009b32c4e95a9d28526013c07642ae54f90da1950cb7a1d00586380e84378452081be4d96276d5f4d7083f05a033446cc00302047c435bb50067306502302342aa4367ca560cabb3fd2d794a1c354a11778e4b229512d19429eed4c3bf9c18e9f47eb1e0a0fa68a3b46ee54a8e32023100b12d998e7bf2c20bdda43eb1480e65dfda806063d7ddd2423d03c4452526bca67dffcf92af39581fbe44d7241a2423580302047c435bb500683066023100ce098de77d274b06604b019701a11601115f04985abd46e756c89dda31ee0be38db2d170134386b464b0b1c6c2e4a7f8023100ee5241079f84516f78ab86fe47a485118e1759bd95e8dfbaaf934c7f085c56dd7fe332d9e4785bbdfd40876a66fb603d0302047c435bb500683066023100a55f49ca9d7583981b080a54f2fda1fd8206ac6a0784693b162a06308f938f51a77a22ddcaebcb03b0c95aba3dad1a5e0231009b97a935920c00d1adac15052e4685fc5efaafd6b163849a88bc5682850a83bb90f1bc17a8bd81cbdde59b2ec19cf44c0302047c435bb500673065023100ed1571e56c8c4c1fe8d292c0579731376d7f23ee8e4fa35074259f2c75cd35bc90e1f78eb3ccbf42d8738bbf2eaf3a32023011a23409332e49da5dc5a5311ee823f2c470a2f4274d47788e1e14fadd4ce75d6e44e472b848cf73bf0692dd5d3725790302047c435bb50067306502303f376c3988259270a16d51b9af35f4102282423e8d2ec2de979da290f2b5ac8487e52cb40f08360801498f035cd0eb67023100a8aab56db119dfc73b275f69594745c3ed57ed32023f84b98983cfd73910fca5432a6d82d76ebc086ace15bb8f833fe30302047c435bb500663064023072d3d4cade0881707a7a99dacdf3fba2773d5b915b3f0ad67d209f91653c6d1ebc46a91ccc6a3c09398c16e1422beb2702306915ccbe1f1a0ecf552953726ec8d6a10e3527e33c450252a79e8a829deff90b1d07f5237fefd080a4706008dab06a150302047c435bb500683066023100fd0459d85a7d45ec0ddd6b28b7d81413aea3923acf49b04683bc0ea433304910e7d171d3f5db299419d4ce0a731f4391023100cab44cf08539ecdddbed0cee95a24e4f2f7c71e2f8e673b337037cc5cf82a65939e89f643993017164c02a3c2557f1d00302047c435bb500683066023100e4abeab68db337633dd214d9c4e2851225ec23c60c6666f2d89adc82652ac8a874aee19693292178feeb2db4f44d7d7d023100cea917787f9d14d82d70b5122818be515c169cc4d2e23038d226b06100db98e8998dec1a1debd9e357fee6484786da3f0302047c435bb50067306502303805843eaf5d38d85cdb6474b11f15fe77679d71cace5d6c7c7be6843082dd2635c5a48b5ea5b514521435fa84eb5ab602310083287bece69dc2ba61799a2d1fc01e854447dfd66041c2915747c1a3c3359e16f7dc79bb53cf1e389e8deeebaffc2d5b0302047c435bb5006730650230060580260917d0e21c2982e3c469d6d350a60b75c9df5cf9042112df7977568edfa47b6a31cafb874235da190bc2d13a023100db71129f73ff9a28596bfc36bc714ecd9cd674c8aaef5b1855a5a39c170a42fe8d9ea83326fd05e7869e8398e974e13b0302047c435bb500673065023100ae4120f1aa3e14045641ecb15b006a3fd3925cbbf14e59345c10277275463dba15d0d55bf6e3935e443210a4171fd7bb02306ca7a30b976e6cb7589226a02df9aae414f3542abe1d24aec25fad1ef9c407c38a7425c1f5baa454bd97b9763478927a0302047c435bb500673065023100b2cdc83087d1c257943104d503e01bef0a1c78ef111a409d2d31ec134c6087ebacd8e83c8de8b5170bf81f56af6949f402302b0a3674a203fbb6455bd1e46242d3a272dc97f6c5752e63fa19f0cb97d34703208c9c88c7ef84108eb60eae10c255d40302047c435bb5006630640230372b2c86c349831bb0f178241c553f0caba5a829ff5ce6a9d266cc8ef1f4563d3b98ce8113fcb1c4ea0e04ae0d869521023037a1ae1c546ee015c241e95fecfa6bfe45023c5a9ed757efd94478e096c5cb459217269f4b0f29b3bb57a6aeb8627d140302047c435bb500683066023100998fa7c98d83fe3950678aa22112bcde8765e988b174f838c10a72573a8ae3aeefe4df9a960fb4431d615a0a43534d000231009b798de4fa2247e7a5861f77f21c17dbf71e11142b39afcf27b608abaaccd593b4aac8bedfa4defb33a4d46009efacca0302047c435bb500673065023100acc9e6c5c8d6fd354e07b6038e85875c7ba72a5cdbc89d3d85ae08c126f4ad98c446f5d3251bb8e011da4bebfdf31d2802304be9af772230a36a0dadd9f62fd661100a4ec9e834b1ead39c262591553356d5ac372db785bd847d85db55aab19b9cd40302047c435bb500673065023050901bc63dfac1854b70efa52c2ed1af501043fe6726790216f6e5249aa7be08090e7c87df6d6090c2e31fcf81117f7c023100b67d96acdc156ac9e6118497ed05b35f7f8c2dff1b4e90760986da1d9d42b82ada10c625c00ecf3e1be6e99ef404593c0302047c435bb500683066023100855ad4d85ca1796d17f556fd07fbfb913151948a786681f9c803551b9e4c0ae67c264c2beab672d17092bd19fdd1e2db023100b1fe116fa85245e29daea8d44b37c4fc59b73430ba447457d081cea2977cd0bd1669c068404c2b45186d1f5adf81c6320302047c435bb500673065023047c4c496984c090747b2c268feb44d6283127da4f2d7a102b6b3ecf26823e1a943938bce49fb4fcf79e1a4d5b731379b023100c413422f7fd7580f97dc82a88083c426fcff5bcfec7dbd875d2f335ab2d87db417f9b5509cf52add8c7628fa5e45ee2a0302047c435bb5006630640230084bf07da3102263f3e389b99ae636ab9c7c51acc240bec346899ae38fc4c1615cd36d515462f596c8f23c85ccdee43a023022d445e8ae4f4f70d53ebdf9fd92aacd5ff88e76f858830085b12eea44fcd879e0ff4dd6c77f2b7fc430ce8cc4b063250302047c435bb500683066023100e700a4e71513d9f12bac1ace9f5a9972ae5f0d96eeb6f4cc7246df80ffd032bc3af31bed6224b086ba8deed6ac4ea396023100cfb4cfb7fd7990687ebecde255453e4078576be6bc972137cc227ad64a95ade8762a01955cc190535eb112c1d1739b5e0302047c435bb50067306502306ce6e9ddfc72113a8c5ce55289f96ff4d7cb95784b6d08efaf3558db1a026ae404a265e5f6c9ff75e04f6966a9be60b1023100ca0c1f326f2418b6c6d1a31978a8a5fa0724805e6be2c4b23150976d314bb35a3b5d33f59ff6e5ac66aa3723d5c709cb0302047c435bb5006730650230202d409271d26a5d3023f9fd8f06e1ba70b8664f6bcf4c445cea1cac4d44242e94dc1641ba6a628e388b5bcd37ad89560231009cca13efc5d3a37cadac551645f445a6e97c3952dd53b139a06942578d003ee30501bf48179d4959c82170fe847aa7b10302047c435bb500673065023100ad51c93af06868358a40f45008d4098d91dff785206677ec6474bf5d4f7c06d2a6ed28f6001767959ef151e3d6bcb2b702305fea2b94ac853ffc635efb6a1d1901f1fdc82ca1e2428fb7b5013fbc4b2ff550b53cf237c2eb08beff3de43ec84072b10302047c435bb500673065023100bde0f79b4e5faa45142cff402a4a5ee916e38defa54f4b72de31426f6aa7e4023451bdf72b721fe7a13008dddf3f39f402305721d3a0bf06202df8f2f3b5e572b9251c5ab005a80f9fbac2e739fa90b0508b1aff21b0817cf3727be361a64a9bf48a0302047c435bb500683066023100a5fb282cd5308cf74c562bcf0519e56ea32af2c59e90775064d71619a67c2af9aba3f7b7b490107a9580cf1a929eb9c2023100a52664c425965affe87b45f9af27d2c10476f134770d6405882c43db5ca96526bc3d0e0a8819cee0cdc4f099395c88010302047c435bb50066306402303a2b298e8b97cd6f1a85e8246587af99940b97b7bf007d807e9a9911230708c2cc3e16173535093687c446cad16442ce02306efe91931e9353e5bcfc5153f825950a1a832249dbe5ded7ab8fd88538fb6e2c7158cffeeca5ef0b59729a0582ad96b90302047c435bb50067306502307215447857fe03225ba73ca9401d339781415edde01fad4ce2495f042b70200e37f8204af59d8e6ac7076195b6b68494023100ddc57d2698e91529882d097913310bbf66c9f525d1d9d65bcb56f7c612378968ffdecd80903c732ccfe547c6575691700302047c435bb500673065023100aa7a58319d1ea41ea77a94aa1cac9c335d7912e6924da5b6bc00f14263f4f5edb9cfabcc160143ecc3c71b07cce3c52b02307193737c8df4e785789be33b2254eeef93537cbbff9ef11a62aaa878b14cbcee46b4120e232470ef4deb68e90c7c6b110302047c435bb500683066023100a312883f2de6c90180724ff4a1ae56720ef5b61ce71bf92a8f44d8b2b7b5ffe0ecb95fbee6089601658d95efb6bcfa9f023100b5e64fe900f8ef1dc1f7a9c4e81e3320b2befa1ad945368324f18130ab149175329a55b906193137c7a0008a4364ee190302047c435bb5006830660231009085bd086480b87678b22067c2518ee1a5910ca765ccc0cb510e3f5b607c71a3f203f1f7826559aa10f150dff11f04cb0231008028f91ee91ef5f6c85d68d796b256646af2cfc277bf7e034365ff426bc3d60c894c9e0f9fbc50e4660439b3f4d1ffd30302047c435bb500673065023065ae644ae864b93d65a813f07f348153f292325c64e592b80b4d83cc5dace325d53bc5075f50d602ce85f261a312c238023100c4dd5281b6e3d822f3c93025ffe415d6f07291ec47b5efa41a4bda4782132d998be4811159564c1e239acf0100b8edfb0302047c435bb500683066023100aaf7aa3e7eb3748654e448b11eae0accc9a362273f96c266be2cb7b7bc3b5de225a7a8aab834ddf1904648aed7097c8c023100c80aa035f5a2602ffd0be664ee0a88e501a93ac09091ed2f53d6812980db1ee4a2df64df9e9e52073e0cec6c191030500302047c435bb500673065023100f20015119d203cc90440a5749f19782888d82f00eedec6cad02d5335e2e765e8eebcf92cb5ad1580c80c13a56fc0238a023071a4e462eb1f28e6a40eedc0c18f9d4b835eaeb94640e95e9284994dd6f47b68426f509ada6e3ecb88eee3d81191f4f10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305075cc2441820fc3c6bdbbb6a4a07dcaf6416b1849e8d0f308463bd9bd43b0b5fcc13951971aa55693c2940a17af9db7023100a0e093cb23c15af8e1cdebb188f50d2e6cd1d08fe00594155aa47ec576c186723a7486068ea84055e6d6ea9c6d25e31b0302047c435bb500673065023011e9099da3f9ab583ccaa73de97bea3ee97bdcdd663aed16522a25679f2b18214f9d51fd1925843bcabaefc87d55842f023100da86f399b87185f6ff84b63393e5d7e057e83bf8f3ab4697c6767500925ad22e283d172eb59de80c83db4beea555fe960302047c435bb5006730650230265f57dc09bea8219d90be3a4aa7ffaeca44f4a87cbc69088314846e57ed1fd3ff94f0ad52af996d3efce6d4217f6407023100de8ca26ed41735bdfb81368c89c0b58d98fb8efea49f9137478ed019c09dbe7b6262659798623dca083addaa00c31f1f0302047c435bb500673065023100fb64cf0babd5f9e3621073970cffc4def037fd3d5536945f9edef50bc3d92fab679a2163d2d60a6fbfd7df3df29baa33023027e03fa459b41450821caf3a67e1a9b90b29ce78044f799e39387155b4b6be8cbe2f422b10f951d3299dd629cbb616370302047c435bb50066306402306edccc9e7cb950c9dd46398204ad6a9d05ea7c75a5dcfb27159bea1fa2f75eaf88fb1a5cd40d5b8404ca90c908ba45c6023037e0e60ae67bc6d6a2cf2c4d9f56eadb2abf65586439d8aaedda7bc6efbe9e3e80ef6cde1cecdb01d6dc8bfdda7c8eb30302047c435bb5006630640230325eb427fbec17c01da8839849dddda5de3c07101c451206b70e46c84f516dd1b1816411e7841eb3640fc3fa56f8d8e402302eb82d1fb94fc6d1fbb7f954b05f16217242fb163b2284af8941422b859a4b3c1366c0838d8f6f10484e4df8c693aaf40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100cc42c80a988f1c540682497c321f62e4bf85024164920f215e2e697c8717ebe9aa4f0408a82d1df7467e7c4a2a0dc8f6023002fba51d8c5a51efada5974473c75cb973016506c99a65ab4289c7a9fd5efb428c534726e64494864010da277c2c95610302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023045f0951b3e00c430c69ea8b882c4f212a247d5696e416e6ee7582fed8eaa66e5a02da3e2d833f068adb0392611c499ed02306b129c662c8c3dd4d2404cf17390c2df18918a0d72c59245ca3422f8f1bee8e56d7b332d3aa2a5bf9e25470cbc2302910302047c435bb500673065023100af39f29e7b8063b44dbd629538e42bad98edff469f6c7bdfad77813534e5bc3e398555fdbc7b6332e2027615bd12291a023063bf5cef1dbcdee25cf16e96b8357c14efcbbc2f4a3c5b00b958ef7ba6972c7d5aafdad406f5fb2e197e8ffd04a57a140302047c435bb500683066023100cf37404cdf9c15a09a49c3cf9dfb7f920c2b3b6b80754aea483197253656a38e3935d4570691dc8ca3e13ddfe086701b0231009443f72bc4b2667342792f363a94bc79de6610649f09e04cd0740c49f9f29a5ae953b0ab8a760321558d688a06804e990302047c435bb500683066023100e6b3b76a93670c9a3944725a6d4b0e1546efddaf0624ad27afdcf5d314cafdff0c3af8bffcfef9c8833e44df54d6d15e023100a4df83d72167dfcd50c3fc45a5cfad32d15eb47a1e1a5b9dfd982eb368bc579caa2341ba3fdcc91e4b1678af462307cf0302047c435bb50066306402300495fad4f2149c1b5b7fc18da70ceacc153f1efb1757c33d6de9d757518e6428f6d244a2732b734b04a5c3210ca01be602304bda867f18f94fcc7e8bd98a101aed271cb5fbb574eef2b293b51c62bc4d7ed139641f6b7aa0df105cfc5c86be904b000302047c435bb500683066023100cf7b8c4c5c42d66f055c5f9c9a8364ab6fceed9d899fd7f6730079987f5fecb0d63dade1d3c256ac03fe1d305b5186590231008da77eb9b55193bb48f1c605617fd5d718284b41c5eaf02066c14412342e60dc0ecc7eed028a5f768f080456927704490302047c435bb50066306402301a0e4c5b8b08be23cd01bf4bfd942ce31e97d85fe46764fb2f798ca33a853f7bffbd0ff1e4db12a0affc916f0ba8ca3f0230675c4d95dfb831cfd86b4c1a8c9a272808d98404656615605f9d8e1f1d72fa9beb65cb4e016068146ebd6d658178a16d0302047c435bb50066306402300296dad57f51f0bea30d7b6b9cd9cdac21faa223081e1ad3628450b1e31a2c7e47a12fcbab22372b18694f4bb70d548a02301a9325cb0fae190e6ac07182227ddf25fba23ab75b4f6c4de55c4c6183aa941b44823255ea887d89347df6f6f54c23b60302047c435bb500673065023100c774b3550017faf152c1ee1dfbaadae80d462ecf7b8bee7ed695fbb2e5c1724cb41146dc9683235a42fd00fc6b76d7dd023024b1c12034b17b5ccedb2d847f5d6e8cb2c39de265dfa742526fbba72057551c553fb8a6a9d86e8e8ace8dde5f119c900302047c435bb500683066023100bb6de11b2af1b524843d6d2c94139a3afcdf2c9eb1d8bd294843a3c30d618da7a85f2b732b5885d0dad0a25ba12e38ed023100d437b861f413f9c9bc3abcb5cec373ae7d0f462443c457e8d3cd19ff89673ef3fe02cd739c76dec2f893b20ae38cef2a0302047c435bb50066306402307c53af8d5274f3697b1ee82831732c968f1dd598f2a24ea8caca6d295bf82f2d503168bcddb9e49a67cb3d0aa2ca305002301a0450525ce86a0c777ff3619d7e13bda1cba686f6fd7c5321e2d0ff4e08e29867cdb86f84a38c7e3a5b0c239ddd8fa70302047c435bb50067306502304688d89d4cf5f484c534042c0c746df5c0750312f58b395af5a9aad7443ce80eb199eae8f7c68c185131122a18c2ba5e023100df82b1ff16c01f80016716a4787e9e767ae8a08fe5e94e357a46f780ae41a509fb36e01060ec9f2165838d7774b424590302047c435bb500663064023100b985925db13655138ca2cbd3330af868e025590e148717a0b4ea3838dafcc75eb3bb2427b910d4619d4173c38641f542022f4ebd6500fdec840d7f8931b0a76d899ee62ae86506af6b341f1dc9427e449b9e230098ab0064d6587c8dfcd72d87120302047c435bb50067306502300f5557a767a7b5dd5c0e609de02d3db4c1f12fec8a893cd0362e845b198117a642eb5b530b55b4afbbbf1ac0869eb4e3023100b8c8d42b917e6e49df73bfb298441e9c243963e5633019ecb3ef97fe671412f1c40c58d53764efa3e81af5ac2e680dcb0302047c435bb500663064023055eb06f08def44f17e3b24a5754f20dbefa7cb08296fe32a2aa75feac79ec8ec98f88a436e4f5ac58e9f37a70d5d9726023010b43f542ee5e8f4b5a1ee19680d092d0b657606fa692c41ec5e1402a0afe91e850d76c08f7727d5f2aafca87b4265410302047c435bb5006730650231008e96a7679b290b7456996599720d0c808371568f1725eee75213b2c3270fecf726bf71844c813093403a162aab9ae4b002300ee2651fd22b55e75ddc6d21e3e885e4c20f62e665c5539d570533b8524b6c5aab9eb00cb43a61b5d2618c4605b4517c0302047c435bb500673065023058eb8f71f7d640b72bc076d80e34b50e9761400912d74e1b9279058c2c8d297e2135fb1b06b589af6635a1a1fa6a1a2e0231008ea22fce0c9332db92497a167d577a0eb204bd49158feba671537555de7609c7cef175146053b0839ee8b6a64371ea330302047c435bb500673065023100f19e22feb82dd5529cb26576d513763131d421783d6f2f55757a33ca6c7b875dcdfb557d07de07adcff5c90538a5aad4023020cf2351ab3e0c6ab91d874405e6c00b5e58564c6a3086e3d9f55159b6c543066c23e91ec8acffcdf54fda95f522b4110302047c435bb50066306402301a868a5e5520beea22dc7c0f551c13363181f3018ad6caf230048aaf290d92485ae430d0c822b6442c0016a2f192008302300373fb3c1a7c783f074d5568dfe49accff4a9defb6b0573205318c2ee3d2bb11f2cf39a883aff6423698823a02d059d90302047c435bb500673065023100a8d3113ee41b7c39a367f102f308c461aa8fd3893fe1e17524edc9c307880687393fbbece53fe8393638aef8043bbe9402301125c5ff54dac330d9f09642ec46d9b34e0266932f158e8abad74dc449640cf6868ea6d094029a07c43489c0013aa5730302047c435bb500683066023100e060e556f325e60adbb8288c89ce2619854c7c0339d2dd58b5043c6be2a30332f68707f7527a488579597f4732bc8c31023100f7ee3f980d20694b992fe2a9182645f5fd3b7561f7d37758c675125e44cdf00e5b251d9c813756c2ddab429d3a5d3d670302047c435bb500683066023100fced81a4ed0a502efc2d82e1ed508e975ea368ce38f5375fa1211018c5360154badbf211c455f723f837b80fce3c8cb9023100a55ed404a9916c1e41337dbf8fffab9116a2521f4a33676cd7a8a204f3d9be0e6880609eba60a45f40147f2b24ea09120302047c435bb500683066023100db8ca87522bab4af615d43eb09e04b5bf8d09f8f67a0a777671a8a75af05ecd14fbc1fe3413a6163e5d53f1b17cd2317023100d9ed3da07e84fd9a029b284da1ee1bf45305d9f34e8ea92b5a6a57a438d88ed849c38d83e0880c1829aa719f9bbf155e0302047c435bb500683066023100e8890113004ac8cf1187540cff1b85cab7e57dcb2b2a58a4f9f24b4de0c103eca80587432b23b2bdebb8b41966a932de023100f7cb09f6d27958398848649017a1419bd0ad477a7d0429c2a4f0e9e5b489b2d1ee055ad5047c64449f0b5caa7d607c070302047c435bb50066306402306921cfaa730b5bfadf0de89204878804a93ab5ba9c0dd5659533305a8c84c8b62e999f33b425de0bbeb08f4c6ee3acdb0230153e299530243360e442634674d24cf5b7c31bbec2503a2645e145ac570333143dcd2b304c2747ff26487ff24a58f6720302047c435bb50067306502306c470e7fa12ad23c7f70c0efb63222728b9d916535fd5042533e4af776b5e4068c584cc6b23c9729d170eca7f0550474023100d3ee1d6ab79464cfd3d675b16bd37714f366a493dace1439d3bcbe96c2e3ec8032e8b64a9de03e17f5aaf6ef4081d0eb0302047c435bb50066306402303dbf62859b1892a02e0b17985f48f2a388a421fbb457f53fea62380fe2ddd07e87f455f2a115c61e0cc1c5f7bffb156f02304553255991d6e9cdebfce85dac6f567c69925b5b5f976d1a61b3bdb20ad4f33f82bf1b324f3c60dd83daafb07f61d5790302047c435bb50067306502301c10f826a26c3eff58ae0440aa2feeec28cbf772cfe86b80f0ae9d3592052a0458e05535eec1ec2844b5d43bc583ed43023100923ac31e6d5150166a2f9bc9badb2dc8391a35bcbc4275651155edd8926210b5c53fa7ce2b57d604ed6f0536369a5b0d0302047c435bb500663064023011cae092c0aa774a68c0815a0c2e977f7644681ffe9b217fb4a534ebde366e81a0bad732c4fe0c348db9cc86042b48f80230467b7619f904a1fb612bd58e6894cd116f0b0584e612129dc0970bb5fbbee347e889aee7f58bef80d8329e7edb24b7680302047c435bb500663064023074d9a33579d59a26f781d490e077c3d6f2bb49ca1c0eed3e0313e35178c94986c3ae7ed0880704bcbdf0e518bb9b7af5023019eb6b242e3495cc2d2cbe146880bc3f89ead71c9c41890f844cbfa874dd416c04f0cabcb64a53477f9b3c37a34826670302047c435bb500673065023014aa4cf55c3fed6ab90c6cc233faee15aa9816c75f1437b6944254c19bdad5cddd264f8e9cec6d0396f4feb01e775ae8023100e0e2e7631a2e3a7eae449e35bff5e2fe541c66c99ec90ccee83a9babe33d6d8c84adb54dd48a9222b35aec2366eaf08a0302047c435bb500683066023100de55ef93e26e1abb301b5b5929b2fdd85fa22b304255d8f682ac0ae827f8cff6a556958f4b08f57367b2c1738b962249023100ee69c69c3a9bf3b063f5ef9c5d0de49131f4ad4ad3dc518986f43feb60a9a0117e15819e3ffbc53091789448420584e40302047c435bb500663064023077903a387ed304080525d974351ef82455832f207ab407ead5efac0f1fa46b5f22ec5335931ef3480a4b7f1eb1d816b1023043550be5fc89c63e3f4906bc0e408dcab088fe44ec342b2b5f4d95bfd5ef367f2deed919d68a556657dbbcc557e0ed360302047c435bb50067306502304d6fd0671ba6a4fda17c0dcff3731ca7e2249a477bda18aeb05fc40b341ceb5958c8e38be0eb8e370da291a95d31a62002310097f2ce3b2e0f1d4e2da15e8d90fe3b6c162b6b098a717b27e79ed0559594ecb2abb71e54fe4f839dffc3abab32baa5ab0302047c435bb500673065023039e4eae7c030840765dcdd3704a4acec6fea24eedd96b918fb63af9973f6a793e9eda04b7f2bd50a4e64288a685b4a460231008fc608c5a984f20d5741cac67a3c016bf89e2a825f3087e5a3519003c8224d06c97a5fc57132ed8e94db9d1f8d6349710302047c435bb500683066023100c8ef2f6820ddec26b93059aa6833468b68bd3d1c407e5f3a446d06e21913d3b00d6a2caf1737c8c408d0a71f8dc7a876023100d3fcd06f1eb49e7d2011c81fb3fc627fd501f9978d88ad87c9ebae37cca3f5ea37eaedb7807ef92cd54d3366b5e451d70302047c435bb500663064023022453476c77b67cbdc23d1a793a5fc6561fca9edb77202f02ad6279e3494b633271a02bde2db7b6eaf488f3eac0e2ce0023056f1c0663147869ee3cd52ce3c8f9e4b2a42fee24ebca63c5505062976dc8d732ad6ebaed26670f341f8a3081bd9121b0302047c435bb500683066023100d37e0863972a3f7b283acd1ebd241306d778dacefe9f1cc2096c34f799f3b0a2d3865457db8157e61b31b6deb9c33e08023100d2ed5cf884d4ab62b97001e64d8fea957ed997a757b3e871e2b344cc413ab30fd29e5794948e0a36494f91ad326233fe0302047c435bb50066306402300d8087e0da7dc45f410518fc48599b2818e772d43f1414a0109d78cda3c9140791d3a2ea7e067f173107986e9e4e673a02306f3f3c1a8264c7c5568e21146fe3b29ed8c2a4af88133c15961b9e86577478b2c4c3d77b5fb45c2107156bc01940c9f70302047c435bb50067306502300c08b74c948b66633e96af4dc1f477b22d50d55ded41a794614ed3864b7a3744faf9781116f5ccd1c6bc16bf7e9eb9e80231009fb7191a3d397fb33834e66ff618fb49b37b3436db5e1922df46f26baaae7dddbe5c0d26fa62ce7d1a6e03390c0649900302047c435bb500663064023029e061381055c83799eeadcc25c40431ec6e161f006d4a89e1df03dd0db9827f96c7c3c94f4dc57611a16e67927bd6590230756c47006baf76b086e0f75b94ae79a5185c322b7ff594e39d0659c50ab626756af9d355e0bb751c1183f7c4e63afe5a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023049c7c2b21f06bb59f3c2aba3c3134c4205ba0140d888acad51926fd3971125fe687c9e41625f2f3786e05730715d472102306b3740470e4f40bcc3a1edd6aa28a0279ab1ab647ff3c10c24f3725fce62d13535dcfcb7c917ac9ee357a5bcb85491030302047c435bb50067306502305161086f769c498af85862d5daa959e2845bbb78dd710d80c46fdce42dab692afaff111a32a36d85fbdef7a1555483cd02310082e1701c30ce3d4e7cbb6380ddb7bd12e9b3acca580d46f64b4090839beb7f8378506f53072752894f1bf92921c7c1840302047c435bb5006730650230017240939dd8f81de41e15e1325428d373274cbaa2e7c752caea0a7b0fc48e959442259882355355ae131e849474ed00023100c015020e7cad5ca5d774ed7f01cf27f791ae7786f4d0435f0c3efac1eb69190f5832f76328e6bedc39eac2d6e6fd96a00302047c435bb50067306502305ea424942bf28d0ce20026b8583549fa57f7c2662f4bbbd75f7b9d14a4e0ce6345dcd1b32758db4c521284b3e018a6b2023100d9b1fcf908795bf1196cbd7d395d813ce48c61f89fbd8bfe38bf71ae64094c57d3ec93286dc6f03789947813287ad0b60302047c435bb50067306502302a38277bd9251170277d90a8fa088e6e372c1a09892132f80a642de3235b99bf60e37a115bb94e2eb549d245eb112333023100caba93b524dae61ac031b74507a533f36a588f4b306424f50dbbcd2e9ae0d23d03a9dc7682545b26cdb576b0d962917d0302047c435bb5006830660231009a8a496601ec8278ad492a5795113e75520720178c1e68d07e81df1c915e15a576dab361910e798c0605f368f748cdc1023100d6b46742e8329b799bafca840e6ee8de4f0ebe62f868eae6501987ae3897af5db967867d01d86e68b8653198ef1185d90302047c435bb50066306402305aad7108201ac33c56d6ea6dd32199d42e0411189b3e7395a93ec127fd3d43a3c6ee9be12ca63d8ba6f3087e9cd4e65e02306ce6f1d2202d241f51950b4955a350f536f679428ee82ceab583f2366bfa2868431c18091e2c4f6f9679abd3dc8ac47b0302047c435bb50067306502310088404da50d96ab4696032acccc105cbfe472fd215f7157c1ada7f830bf3d6c7b99771d1ea7cafe2168c5bc51c5b64e0d023007d67e57294c170b8c124c9650bc56d8bbf8a78aa3c46649944b99ee1776327b86215b1c261aff4d6d9344f4708b93c80302047c435bb5006730650230359660ec2bd761dfb98cbb2cca5169451bb64d2ca31c54b5fcae2e39ee5ab8fdda6319252f9497745b40373e7fc9e61b023100aa27f7d8e88be1b337fd46ec79747d1586faa704ab99e9e17b50ea162d1f7277bc58d3e02c02d94aabbab3e16d83955c0302047c435bb5006730650231009bc2bf7411538588e0964eb094006e89c6b2db709f5ca29d52bbfaccbb5002a12a297a64e11ead1835d749799f5047bd0230262c4f489fc888fcef07f0a836c7357ed084cfe3a0df92e1127e5632121a4d5e8ca57189efda758b960b9285b48bbe830302047c435bb500663064023042dda11d13e3a9104ce22ba7ba7af918bb8ac459c939867b0a023e624c7efd71a43b96f0aa5934eb016e8b8d37e3df93023004f9ddd8143249c531516f0dd7e480b2ea7077f1710f5345a6acbdc517f91223502c583c570efe4f955b0fafaf497e3f0302047c435bb500673065023100a8151127e91094ba625ba27d6551b1a9aa6a1af75eda526a2bca16c4889ce8765213632d95f5068a616c178822205a44023008a0f6c67bb71b68d41d6886dc65e34f41db090b23cf092e08df87c5673d57e77c0ec3fa375072f11d971d6ba7e48e360302047c435bb5006830660231009dbbf14cb583f0c0af5f606f1153c0b0200a04e2717a06b864a1d2e7713e7670e31e803c1e6d30ac29a6c42c2b021e0b02310098b47288929e5afeee47578e464335b9326b5095b5497bafb6c10784d1ba472096e888180749f2f848592cfdf7a53a320302047c435bb500673065023056444f2737a21a20d80afe6c055cd445116f116ae955ab1bb54d400f0c84ac691e5a6b7bf85418c2480fbe223af3d64002310089eb4c691c474dbf8fea6417999e76af61de99d2411c1f1d7a1ba0ffcc343f0b73ef6147865bac0603efaabec67e9c5d0302047c435bb50066306402307cd92e66291014c41fe261edd349e171d0f26213e3121362184c73eea13b81dc8ebcb79963cd9710c2f1cc02cf39e922023036cc263e7d826fb9d478962563e5d6fa595352b0295636c2e58cef4331b53343fd326b44077ad4683323b6faa5bb367b0302047c435bb500673065023016674ad2815b08b6676bc70c391aeff0b12ef64e7ab2ffd02f9911f6f0d0d0656e8e3ebb46c2eb7a8ab052430c029820023100b2ed0f8f22e3d4036f5c40624ffb45d684a402c10f9e6f46a245d2562de9aa58f7aeb71f8221f3b07c80fad724e0e9810302047c435bb500673065023100db35564a52c41e82584508b85170f9016bc400aa48ff3ba35cb65531f2ed12886f75c70f19674700b9869ddc45e6810a02305e9b775ba5dfb3d566811c24b8872acda074c161409ebc0746aeec369a3cf29407c4e15200380b0f5b23dd41aaa1f7770302047c435bb5006730650230648e1acbea353508594b7991d3d577168606dad5e03d16574b389df4ef9e8727e9b10c0824479b298c7cefa9aefe6212023100a8bafd72f37bb55cc66120e340e8cb7ede95fa3a83bd6fd7f8b3c6b17a87d862931d6f5b8962857a85da366134c6d53b0302047c435bb50066306402307e31758387c832e3aeeea45469037fea556bb3dc6c5886db38892f63536555d635d78deeee0684dda92c030759e6d6ed02301d1af20cc435cc0a44ed20773f6d6d1e827638053b6090bd3c25a6eb6b448cf55fba794b34beec8c63eee0d2622b78bf0302047c435bb50067306502304c7e7eec42a449c41c5a53e56163a57ec10f85f4e81e5ff7d5ec151502adee1d253c50f20306c1b33db2fce186d38b5e023100e5f4e0c1e4bdcfaeb932897297470cd95ee9197804475eb9d7e72e8cddd712fb29b26eacd34a25100159d3b0616a3da30302047c435bb500663064023066c461f00bf694d298bf4d0fd83645e9592aa286851f2d9aa2bcfb3a129f82c4ef74912278ad6879eb9352cbcd0f405e023072fbb345e534cbf32b1015dc5abaa20a64b71a8aeed9fe4784d2186e16d7bcea3cc4068c890df674f583ace0175422fc0302047c435bb5006730650230468b614a5f546f050bdfb2a682786723e1619d37ca275087be736dacc42087589584aec386c1e5f9bc62ea15222bae72023100b65d49041f9cca5e4a0131f3541a9fda2b51cbc1c455f5403467a25d6eb49108276845ac991d3b26e4deb14dc9f5e9170302047c435bb50067306502306dc92bd90882e5206c4738e99cafebdfc55808fb5ca30fab946d1bfe861675375da10ec87a25dc8d3c86238f7f64e594023100a2c1c5a3a820cd63491011380f227893c0688d21cea1437afa6bd447f3a9238ea6e2c0ceeed3112ec373ddfbc9ee3a4b0302047c435bb50067306502300ed653163f657d609fc386a563252e70088230af5faf432e60f1c5f7619197fd99a17247038e44943cbdefcc4199a23d023100dc4d01e57c338d0279f40205125538d4de2a76e88dad76595a5cdeccdf4426d1e772bb3cbe5818255eefc4c6d30e31e50302047c435bb500683066023100d309a9ca715828206e9fe1fec9636bdddb1d2d8aa57ebd4a2c064b1d633b7ca460d3cee15343f14fb3ef64abfc14f161023100964aa2a1aa5760e7790f556e0c35ba44c1a0e4568c3dfe6decd97c6077b2e9c7030e10ab781b8a28fb499dc33b2c76b00302047c435bb500663064023060200b96a558ff41c7736bb2a42924cd4245b230c2281db3d0d375847d348897656c8c279786d76602ced1f022c38d4002306f70ba253d8a2dd8b8b95f77ef716e4a2efc3c9c48c1fe3a9f53fef2121bf42ae03cc92d19e4b245b3e3cb190e5a254d0302047c435bb500673065023024dbc611098a7892e6cad075cdfdb9c5f8266746b00bafafe89b55d5686e913bd3c8a3a85effa747a62f6e2470f6d09d023100db966f445b8370197b1e80e1eac070b2bdf3bc46ddd28684b2f487f3867462d24d014443b3612e97996053194e3484170302047c435bb500683066023100f80bf407cf816940ec2c4031258c7c65ce7bca3c4d52a55f20dc666db983f3d66ed72507fa34bf38b1b1ecc744364bfb023100cdb6b5138a18ca9c98a565b64c44fc1f898579e0d60e01dd23d93d50094bf0deb5c4e4ac83e85b00fa901685e5ec91350302047c435bb5006730650231008c5a83acb0b6165798d6291f50139b300f4eb308d32d300faec5698dd1208136b1ca8ee11afb20a212a84953d959915b023072d53b4d7c0f19f1152582833d9605af99ea86186a3c1e3e58e24c23df90edb9725ffc7f9adcf040feae7ccc4c892afb0302047c435bb500673065023100c03a5614e30c368482271948f3da08c182ef8714725d3a771473feb4a1f40e8a6ae204cce1bb34617fc8c6faec48680d02306b43a478b3b55937d03bfc3850a047aacdf8b058c1c94b738bbb74aa3b41207ea04bd8e6d72b2f78cce2ff27010dc6e00302047c435bb500673065023100f394fa3c4c7156614161dacf83df1826bd596da771c616b42cca49a5f6721de24862c176dafe2b5d394f20871b21edf802302b7d5ced2d6b5dec87b785006d799ba96872746f94d9c74ed7887e654da03265fb2a8cfc47c41dbcda9e3852d550cac30302047c435bb50067306502300368c389cfb626adfcbff52d8e93d5c214f84d73f25866743ea0630a53109abf70c21175360e50060c76893ec48e6d5c0231009233f0a3bc739216b31baf3ac46c4b7c585bb31a9f9ec3b3aa9327ae2ee0f31f859b7afdf469c2bd0ae94f2e1149081a0302047c435bb50067306502310094fbbf38159c4b8f9fdcd9d2373f51c73cb306816d9f63d3601e49e6732442784633ceee64c06dc6f6e7f2e82e3a57c102303fd0c8bb6483b09eb256778ef50fd0583a503800651b7088d4e139fbbc0c7dd9182f8019306ea2d10027425d6839f7d80302047c435bb5006630640230644eaa5a10517317592f8fc448e6e669abfac4388171ed0192d826fd19db5e3a01f2dc41701ec1463ffa9defcb4c6dcc02301ed1f7c63bf1e7ce14ee21e42ca165632e56f4e904c4a4f91c2e48521f22576f89a70a43884796964af86f5e9090b0a90302047c435bb500673065023100b980cc4ffcf4801d7b6ae41b7aaddbcb817a74ab529f8b9a65228d2213380cbfbd86d6e4095d29b9b73b6d624a03542c02304a0fd1aca6e57d685fb4b62446ed5605d980a2e89a57d03aa6e7a65c43a36e33b68024e8963390f293066c58d2acf4700302047c435bb500663064023047bbd171368f0941620440c9b065dd1c874a293c55cca78f19c49b0cb2163223f21378451e18a296c43a097969513e28023000ddd2d38f7c36a32d764dcafc32d49f7f74aaa44e0c855877b87ae42a61e0022c24238985ea17f2e5ea15934ed0beb50302047c435bb500683066023100bb3e207f43e26d90d2f5b14e581225d4b89a38bc6ceeda7e72ff846a758df289fd4fc825b3010de7b42135d3d7788907023100a040558820a7f9db9fe8cd5a14827b5127cf58b45e43c35169f42f688d873e11fa8a116c38063a39730d3a7bdae5bf080302047c435bb500673065023100eccdc4d7439310fb21e09e972ad9786fcc98fd12a64e32e045dda516600f2af4fda20b935b64c575ad83c5242b74adf802306e1a946b71fe0bc9c6117025708caf2136801ddf40834466caef238cb989aa100468e9c497c843a56c5403d8da3da9660302047c435bb500673065023100d7a93cf543c281a2507d736ebc8c14fbaeadbfe5e79d794670b6a41057c6abd9baad44e038b3dea60b59824b4f9bf57d02303b06398df957790e04b32c4ba34666442686fa9e3b431a07d4c6dc329e73b7e57a6fcb30d543d6c3d853dc00e9e38e900302047c435bb500673065023100dc503b5a100e998d3e914d8fc05343c00af79cb42cf9cf382527f854fee1107ca6575a0ce778a3e760204cf24e477cc702302797412b4b75724b22ab13caeeb19d8e32302a9fce19e7f78b3588bb5a5a0adf62d7d5fc5baf74ad57c57b66ac64e9b50302047c435bb500683066023100d6967c53c9d32a142d28c4066fc493f3c7c81ce2cf893a0c1c744a6d0883c4bf03bd0c92091ba13733b6cbe7cd45703d0231008b283ff3aaee0b68874c971333f7f32205f5ae2d6aad539b1aa76a2892e711ad3929a26853b7f9eb50b9c028701da1200302047c435bb5006730650231009169218066f5a88d4eface6a2edffaf8726ba1757e3b3bd1ef9b2904b90ba8725ba41058666c1bc3a666ce74b91b810d02306e796e03004ff9a19e080f6a49b2463323625015717c9242edfd00ac14fd65273f0a2186995d509521e7f97e77f573270302047c435bb500673065023100ac1ff8d393fd7a0691201d1de1d03db07fa8525cdb71bfef7975aea1656d49ade53c674a7abafb65e38df5817b11539a0230245c883227cb3d189af3d064d65397b1c660ada5f7da7401e126c912c3d34e80fb446660dbdbfde18f1720c0c8f561490302047c435bb500683066023100894d8be56818241bb39f215d4d96af93596bfcb3558aca41fe9e7807b8315c69c251170d914235f394cd67997b469f7f023100ea62d23df661499088b792678dee7ea51f1c57afee5c6b09f880dc6906767e6a04f169aa1a5c231a28cac4ce48cfde760302047c435bb500663064023043c22acc7e0af491b3ddd6fd14f7349da657a60f73e05151b79c4f4ba9efc5f5bcd972295340efef5dd8d7980841dbd6023074c899b147fbfaeba7b233106b8dfbbfbbbe7223ecd33046f173576a9e53eeaee7b5e1ece9c19ee84c27fac4890278730302047c435bb50067306502303af1a52b6cdb617253fc758d3101fa6dd518942525d748d2c953e212fefacfff498315db544e298940d7d0183dc78025023100eeb26ea67075a2974e421ef80b03f17d66e26d513685e14b781303c2acaea24cacae892cd5fb5c498571cd03b7728ed90302047c435bb500673065023100d039fc5116b97f3e75a9a2686c79cab3dc066e39e1b6f5eeb1e9577b662924dd84d7ce4b01a3d4e0619e378ef3a3149a023070ded7102d0fa5ced74e41721ff7bbc0f6d1967df5ce0e2fddf6d0356013ac9d778527c81d72be9b8e0f35f5e52284ff0302047c435bb500673065023100953e2db9ab9117ba4218d12c6d2ec606e91aa85e69ff1e859919bcb365b6240164737e9bbbdd7ccbdbada0715def0c1e02304fc49249eac328cbb76cb33c75633390c268019678512eea92ad72bf0ecafd1f9782bc7791c7e7b58ef9dbd8080f88350302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cfce2b7cb00d746cef1ebb2679947eae7fe8e783190de758af2170a9b491c1672905d21ece03db90039fd0bb94694edf02310097e07f201a37c3303124cb95d780a0dccae2d563f7b86bda99a9567e20acc9c296deb9581b9f1334979ffe6379cc8e3c0302047c435bb500673065023100e31811f65017afe69f2b91014d92dc46a0951d1316e26218aee7a8e59955440ab2f6f9789a1b599b879c7db9d185f682023019cc4e1a44fa94e9412f7ff44cb7673af8bd0aa71dd41c17c78a672f21cbe20c6179926546d6bc851f09082ef42358f60302047c435bb500683066023100f643a17b8b73722475065883e4941cdcbee8035145840a41b783c19c1adbb7912d121b7ef99889589644462fb5e76f3b023100bc932500ec5bf6ac0574720c9dae5a49c7cd9e4f790c09b899ae76c86ab73b5a36db6953694bc7abd35c85a2f64d60970302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b202b4032267cbade3df46babc39dfe17b09a6aac294b169f8e15f661b71d66f9233fd7dbd095c4fe6b47549a40e5ec9023100b267c5c84f09cc488a32b86dc8bfdc7ee6f4b57bbd3f8229b0f971d46593a4cecb3f9d7b4105ec48d9fbfa516bad61ac0302047c435bb500673065023100c22d9a81b9a06f00149c3fd80763f5815439499ca5de1bde588c7c78e320a3f833376e456b03c60a5e34a374daf8819602303da4d9f66e910b95721a50e9c6de16c386ba0aed506a3e2ecb81c4880593c3263fa6cec84ac5c4c6f5e96e20b3888abd0302047c435bb500673065023037b9d927d5a4adfa8862215526840e10b38f6972173e231040d70ab101969f908ce9c228f988add41b1a93669a924625023100edac8a899b6c3ca24b19c1d74f0e809e3924051b05437ee2e4162ab074cdca0fb9d8a6d0c352bedee781c2965f1e17280302047c435bb5006830660231009286756b0624800c4c7a3fd64fa70e111ee934cc44a0d69879c5814d83a29e5e72380b25aebb3aa3ff56cd53705fdcb1023100ae6785c383a3cfbc45567c6a3ecd489b9b9b14ddafd3a167516f456be1906befacdbce78ab2b0a9a78ca2deb5bc03e800302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300a2db5a93d0e8801d548e98bee4cb5d654af4b82f95496b5ac7550951c43d4f0e08871a8522bf731bc0db244760c58a4023100d3e89a54e426d92b0813f2faca42266dcf87e0bbe50976e3e8ef88e5cf00984f657dc26fa704c414e18cf8e0f22d08a70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305a179d54ba1ee032721fb4f378fe74a3b4ed77b46d70f5bdeefb5cd23e96907e7dc4e16a15c075dc43ec7bd9f515bf8502300499d72c3e4d3f58806cc842cb1395cae397903fe962597b284f6422559da884dc1bf63a7f5aa012380672885fa39a800302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306c515db317e79850726c2a5b9b9f826bde92f951193cbffe3250c2b68e75fabba3d872d4430c176c1f7907be0ca80778023076e055907a8d587a8687a70bb6a00a37046cd139414c7bca220620a182e280e92bec58b13f09b83aafb9b613901518e10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e6aeb68fe9b4a3c013a090f74b509791a96239936412a355e0843c58840fa9986b6724ff008ce64135e0d290656e796c02310088ea14acca2e9173bbd49a46eddcbcde2d3462bfdbc2f1fc353fb2c81936afed94dfae0f34c3d2de01ce6859a106970f0302047c435bb5006830660231008ffaf7f85c6b1001cf7008f51e3dbc535c26f2b82e758c85b2d93c30fc5a36000fd6cc0ca72d7d3b65ab143e645eec77023100be78f122273d7f2d19e983a4dc67b488dd5860521e0ef1a3c1ca1d0a6667132a3277102d7b949ffa5187d9c5711b0cd70302047c435bb5006830660231009674c8dd8d0fe5f35b83fe61fdd6a1cc80956dfea95bea289acffd7e0db2ca241541dc497d54e8362a5b493482cfe6d3023100adfc8f3a482e74b1fe9f2c58c0c1cc5a83dc1921f089c054e81682ffb7839054ba0cda87441d4748c00f463fcc5d9eaf0302047c435bb500663064023000f415c8eed6cb0a96767f837a48779d2532b94fae6680e5339661b13c390f6659d5e68fdb78c41c0e870ed3ea65958902305500abb955a304fde0be4cde92d605a56e20aa4b322b62ee5c10905dc5f48a8da44c4468d546e1bda735cee583e5909a0302047c435bb500683066023100f569b5ed849b58ae87a838b9e717a137155d6e88dc6e9b320dede8572d9c3af10e30345a495b882534de00986d18d05d023100d70da2c74a740781341b2bb9353a86998bb81f649ec2f658251568c7c1b88991cb570126691c85b37b522c1d0d13272d0302047c435bb50067306502302f723e34bfe6916f5a04fcd12fdad68b83d04c2acf591765ed91dc75fb6ef9628cbcc2f0fa738e410492a363fdf556ff023100a4f8d89745df890b882afaa0f9d84cd3aa502728d0df4e7f114cb30e50d27bfa2e0d1e93e59532cbc7cacd4ef3749d280302047c435bb50067306502304aaa8bfb5a1a0c752ece2bde7c62befa3a1bac10527c84d93a65d9822e7f1ef5bfb504928039988bab8514557ad8811b023100a3fef8eab1d1ea15eb9df3c19e53793fc64c9efec27826df1a8dbe132a5f78f2f47ee9d1a2958158b6f826865cde19f30302047c435bb50068306602310080c1ca9cf3708570c32c9203150ac41b6e36224ce2af62124059fd0060bcd4c96aeed86484e956a43b97fb18c9d11f1a023100feec7074412e2af03b6da48428c474af1f3a4e7484246e68a391d367e3ec7488358cb5e090f9b1f2098928b236546e330302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304eb2bad1710031e10faab2da1296fcc8c1b5c5ea1ffa74a1b3f06fabe603f17c3ee24912b4e4453ffb9efab3973bc77c02303d6fcb01d446ca26e2b7032db8a1ae40867dca6838c8c346ab93571a52132f649389452960bcc9e7ab117170431b59010302047c435bb50067306502303d561fb8f1686bfabed21b3946f22911eb281ad652868c7b90fddd88c08dd2aa82e779a347338eb9c371320b6142d72d023100f20b6288a47c409b4fa2e17ebdbfc12a5c750febc992f141fb3f75d40f1b87ed74a0cac57c0420836ad21c09260ed1e80302047c435bb50067306502302124d9c89193a4f4458f1569e50d36e26e43d3e04c62a3514c2d59992527e1496b86a879c2812025a8c8aa8154c876f7023100ef8edb8497de4511fd5a66c11c71cd81f8ab49cd035ea66c86501b039fbf959b2d9f0451f17fca29dfa5017f9c59734f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009a029bfbf14fd64dd1cde09418014398ec487963f88d48d3ea0de46cab9926b5a999412880968c389d12bbfb0947107502304abb92f4fa08317133273c86912125e5a1a57a011cff2247de90e14d2025119eca6762e02cf60777db478e03ee102f090302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f0167db3524a001796247bc5ed5022b77ddd8ca5ea091fe3841feea3e1cc5a6629085fea72208608091362a513294574023065a637d09bcbff0d99e790c7bbb82f5cd99d2904664f2d64e261a5c710014277e329fd45965cefa11c650217a1f61b500302047c435bb50066306402304761b10d56c2339223973e845db544d23c64eb68f58102371be322ae45f7d472ea64701dad62436495fc91ada5670583023036359bc5565dabb249a8308f52810b3f6a68638ebf82f13cd89ab1ff4769ecb963c63588b81e31ec3c41a48a1a5fbb530302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d699f3b385534df94821b12665ff1626b09b9ed04bcd2f8ef015332bfd99d440844e76cf7f2e7965b121439f156a14b2023100b40285e92d051ca162598ba4ab546f92ea882d734a1cb732f41723e97711f552ab3a904f3720c677a8fd98224f6c3bae0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100981850def0daa285cfc355962df5cdb56e144489c87da04be97b7f931e80e98ccb04151ea8254dac99903cc38c0e861502302179cfab892121c9d183c42a68595e2e1b17c59dfc76320182cfa9cb00d7a3f3f1035ed91ab178ceab2cd7f4b710b6600302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100947d77e405d2f740e51a6ecf03a73e86f2932288f6ff190d1635f2dfbdacbde43a70267bb4dcdef67e1d7dc9854be3eb023023790e89d6e49419895059619b78a5bad0bc9dfcd27f59e3fa5b1e2bbb504bba93f4b5b7b417a1ee83181a3cdc06c4750302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064022f11b328aeedd084ca3d34b6dc7260457b6d9e927c956f1f71a057f95feb009b347c7e2117f14d636d6b1238695a425d0231009adf9d619f0697c4c4e6182d01eed7e3bb286cf760dbb52caed3cd30f383ba3d8aa4a8d3e7f277c5caa05cddccf3196c0302047c435bb500673065023100870464ed2cefa36fdb0b4c483b3ad1fd501a433e3cc148a758c973a69888f12a33c0be18ebdfbaa8b275aaf9026bd368023047e1d663c2adb8c1830e71044a568de4bab14e6b729fd4d3c6f617c13d522e2156fdec095adb5b2acfc9d773806828040302047c435bb500683066023100c6c8ccde2ad8fd7742a5b7980c8ca3979e2eddc32c2dd5cc32a721eeca32b3d228960c2d5001a772a5572361022f989a02310098b00cb98295f12d35f1fc0591a1ed808126b7e8e9948a5b0bef78a6fae14b87e08584ac89030003ab034089f56387890302047c435bb50066306402300607f2929104d1d6928222cc6a4a0613821a0aa0257beed41807a8290fd05cc868f80b40bc6d3f28684dfe2e1c3fb115023002d4f503222f2d31aea1976194dde596348893f2512668a1de10dcdba279c6e6c371eda463fc4bb7db77791371cb30ee0302047c435bb50067306502301e5647dd1602b15e184a5350f18d524728b91b9c1df16394065a452a169b54152683eadf1b54d76445c7b1344225ada4023100cd854db5febb18edc34f1ea53fb31733490556205fda35a7c5ce3aeafd8627a64045705c52246a681d3a0df764cc2cd00302047c435bb500673065023042b9313563703133813342d218422c92e753b00c2f5f292329ba5eb0b19f37c0834e0a4bfbfedae0920874911a9c0c6d023100cbeadb3b3a8bb5c9824e51c2d5ee57ad1b66809996dca65d758896ef360b65e2218742c285f5d705dd84f39782bfcacd0302047c435bb500673065023049073f8d3bd12697ed2a67be596631c4d9893a2018f14c44284389cb130e8da5fa5a66c14b8d2dd9c3e0e777208105b8023100b543157d05d5d8c09b0ebe170c656402c5704ff8342dedee55dba96650bab50339cea5aa77d606315615b963a5ee5a5d0302047c435bb5006730650230615876c3809f72b2cccb9d356429a8469039ef51e81124296c0a0962c632dbc0ad37dd5427186bf1419be18c84c70695023100b60c49951a67ce87a9cf877f87f100be874a71c043182c5e4cb37fcbabeadc2c893b910694e9b75e3429da6543515a370302047c435bb5006730650230620ae9dc0debe42ace6ff7d7784f525a96266f8117b71ecb47a6247923925fbf0f4ba13b5e070cd65c4d4f9e250ed735023100a5e900d6849c065a2710b2fb1d7c1580df4d0feb08de7bf2e979f8f4f220a19978a5cae7d57fac6a4ea16c06e75ae0920302047c435bb500673065023055256107c993d1e7ee3144b6d1250984e3fea9ca675d9ce0cb00804310a3e344053b03b4d1d9e56fe526d056c71b7de3023100ff51bd606961c6161c499db461e3c4d2da5a06a867d05bd9fa25c83c4c766f48de94966f6a8f9f555fa3a49f144773710302047c435bb50066306402302c5d16f43f245a11fe0826a18348ee8de0f29f41aff223a0270f2e97f461683eb69623c5d53f2caaddd5e4f77804f44d023032f43774827d307fd21872e870ddef3857d87e90ad47e2b6053acae9bcf19e93040a375057a3c1210efd978143c3113a0302047c435bb500663064023027be32f3e68f47ccac615fc26c53cc09454d443cafa465dd47a4ee8a5a8be921d435c8ea57a85f6024c7756c5bd543480230075c68b188b3eb3cda17501998d1c44aec0edbd34b3e11a1502f6999306ddc8cfeea92724d4be06448a213d29e756b420302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cd9e6b4e15931c1a0d66ba501818674a85aa3355b3a7702e342b4fa4bdbbf5e55c322058252dad49735a8265dbd834a3023100a15ce9ea311b79cbdd10463f28195ea755d33a2dbcc6f0e2d78c6fcaee494aaa46b5491e88805581d5b3a02515bf69cf0302047c435bb500673065023100ce9c9f9448a9c7eea36441b15b1bd4efef2e7e5b1a604f73e322cc02a797ddf891b6a836b6176a0c8ee4ccba93b3477402306fc8b0be364b7544d5087d70cffd1a06e508c69f7615b7f421352d524c525d60554b1794cbe8ab6040fb2de716e13a9c0302047c435bb50067306502306c81f17a33f07d4a7d112b03d3c01f44b8e6067ed8d448d02f80d5c92eea115114e182c7489778361ff935ba543d80a2023100d02497372d0b311c59d1d89abf9306f080eee653b0b1fa36587fa81e1ba75f142e8bc37ad4bef4528a1a357a149084910302047c435bb5006730650231009e58fdb7a8dd32828600da4124cdcbae33d692c1b33ac1a69489815546bd754de504ccbe77732fcdc8c9fd09568ffef402300a923c8a3921fe7fa7883ef2ff33be9d87cd2f35ff26aa8fa237b459909e2225f2d8adf48d54571c23be5b6f96a51d7c0302047c435bb50066306402306c33fe4a1503bd9a132664b0caa87176cbd83bb0586a9d942842715ffe15b4f7bbe72729bbf1fee299227ac2ab7b81f5023000a5b96fb07cf15548319c492a77edee67a54fcba75e238df4665b7ec588a7db88828b14b349e91f8fdc3fbd8069a8ab0302047c435bb500673065023100cbc7e34983b36dbc84540241ed26d16d00d05e3e4c6ecaa694f2c1cb4c35bd7e94d50f085750e162f3c162b54fbbc5ed02305593e466bcfb3e7a2418cc01eb0e2b9af65d8aa2ec28294e21edf88159ed55855ac67667e0f5b2b40e0d317ca51a04b90302047c435bb5006630640230449588e0ac6161ce9ddd52c3d37249261ac5cc0279c3ef91d48f0050882a7f0b02d500cd4e572025114cfc254c374ce2023014a0b46451c44140100cf6b228adaba56251ea05880e57000af5a3d952b481a0b6c89172700e943479169b182c7c5b3c0302047c435bb50066306402302d77db04762d2f5f1b2c59e9051cb0221d08d07349b8be18e5ef023451a13a20d0325d3a75c73255e53d25363db666d9023017123916fe931def969f7058622ad8748a062308d7309358cd68ed76a483e712ac219153a294d7f1cb732b0b6ac6b02e0302047c435bb5006830660231008bd74df8a83fb3ab8ba3544ec20e17c1e541d94703c70a9c1345afb518ac39cecc5496429e560e2c55608d84eecfa2f3023100cc14d674d9596163be1a79abfa25166dcbae088e9d04f63ed31f6e549b9ae37fe00d3f4da00082bb6b45bf5c1162b3110302047c435bb50067306502310099fc361757af04a0fceffe55ac33c766959752de07a6688492887b05738a25608e0f18fc947c78a86a2ed005822cafbe02300b979c21d6f5ba07c7e51a0d5fbe1dfc2c81ac3ec9300dba2496356d0b142572ec588afda4232829161da214986c9b000302047c435bb500673065023100844c6dc87c45b5bd793e5133e5f11f287507a7da25be36a4f955270e1db4eea33a04a33fad35bd58b5a161cf93b3c4c302307866de5f148c2e6f8df902acb2a69d9741da3c0710fb5c1063c3b1af69ea3c79ca66e484cd74ee16561563f5fa8b7a930302047c435bb50067306502306d2c845a2c5bf3eae1f5a0177633b45bfcf56c5e905cbfb5fe66dae74214996ea95f7402db12103dd3a3e8c1e21b834d023100ac0b09bf1aa9b7e521616756d3df6c126c57c30351d47edf1608c97bec5d07d899dab0db9ac4524b06554356b91835160302047c435bb50066306402305b2f5f051f14833ac7da585498e63dd6b27931f1a0b953d039d369f6af643d6a3e908457f4a05aa53d839b2e471da94002300adaeb1050abbcfe74bd52e5bf8bc81839b1a3a97bb4a356ff328451f24d7d6041ea92d0c7a38c0d5088dec962870e5e0302047c435bb500673065023100a7033c4dd1053ef408335375163076a55790777003f2bee1b429174af34ee8c2445209c0e065621151eccd9a0a91e67202305aa7396b9708a8decc3c6c81ffe38878166d40924c4c9a3174269521d2a539e80d196005f17f408ab104630e97358ae80302047c435bb500673065023100a9be4cf83b7324f8fb597cef72f661bca79af678fa930cad8e1023de885af87c9b9284a7b0f0d88df9b6d5cd0fe9f9e102305095a465f5c0b1a91d94f76f8045e553a0a8258d335535cb818607bb3dc9f00dd804e33f868151ffc4e189fb9c65cf9e0302047c435bb50066306402307870ed3a37b8ed1c47c6d89596705a874b5bf1c30e01dcf4fcb02cd36de417495cf647afbdb140d649b0bbeef5a3873902305e8b1f39bb0ca08bbfa1a34731f8a1848985f775bec9d287f5450ec98eb0968cebfb2cc77c1b139051b55c1d35c39fa00302047c435bb500663064023013ab204ee76b1d4d8d9eb4b26bfe0e5fd098e5885aafc3e2b4d8b5110abcde01a22aa43c0f5e3f29801fc54707632a6802302b762c69252b287907129570ed5107d37ff5110575687079d6393ffc1ba423e6afedc83f7841da8f579bd55916694f2d0302047c435bb50066306402305ecf62b09902fe167250d470e4960357b82c0ef4038ad898d65cac34995b6721eabf6e9b973acd0147644481d9e457d302307148e0b1653f25c63e77b869cfeb827633a7c64b8e87f2ed9b93b8d2c118477aa20f8fa28075344b2e3ee683a6bd21d90302047c435bb500683066023100c15d81ff06f2aa07a748d8d58d7d2936020f00bb9b39f5baa84291f38816edfff54f1b8bc0e17b6cdc73eb7e404cd3b50231008caf65c856a3527ac193d3ab9add86d921f4f7a7a3384479f50c579de9d594df0ece8c092ff807a4f4db4a2dfe4a50300302047c435bb5006630640230031e2f13aaae1f418faef8d673546657541a1a64a5b816298f530b627057905a85d3b3c3122118f26a867839b098dc310230522a665705d1d97eb724a97b82258a1f8c668dbd5a8c113f2ad5f957b27c4def651d8d2c16f9b77c21ae28db0099311d0302047c435bb500683066023100a45dba5bdd94eca57db173e36c884adf77dd45abc8a493ed98e50515874c6eeee30fc1e5764bbb89c97c4edec633466c023100d60f33062acf356bccf2e43362434d443c79271cf66010c2f4100fe1fc4f7eecef0e1c7347f0cdf1d677f9e805a69f6a0302047c435bb500683066023100ac74ed7a6f075ba43b1a47cdd37a4202c7155e3fd52a6f2e6304665f2da0993ec80f05c174841a3f4bc1446cc104bf48023100c5c0abce9e41ea27ac9f3a55baa0c3a2d672819495a538f7aed54bea62d44ea17f3da533c41d297db2becfe9c0931d130302047c435bb50066306402301992c2b5ec16b8e9b79ea63801050d362910dcb6906956fdc8867d1a5778df7b8b406c801d0f1ccb18136e2ee49f981f02304629898539b7a24fe4c0809a8741cd6b4c8284017bb23239fa34fe55ea3b5a6cff42a6791c292f4416a912fb030c577e0302047c435bb50067306502301eab1d9ecd7412de689466771561ef371986cf5d78764aac259ea3cb7ff124513883a0b8d52b483cb34c481e7c49bb38023100b026ddb966f82530bdc5c113f4ce42572729332ec171ea9fa3e87b157dc1ef9c6588d57a81c949d31cc2cdbe7f0e640e0302047c435bb500673065023100b404c30799147a02712da15b27c5c5002f8051b82852704a688bc2358ffd638725d5e67fe49e41d00220776465927412023039bf8c297a7a7fdcf763bc0982359784bdf838036a98565ce6c2c23c0b889b42e1c8612efdcb8c408203573261f17cbd0302047c435bb500683066023100e01577e5b73493533d1f648b1531841563a9af11e9755a3be0f379eefc483beb0ce73e80492b7f879e406132f95268f6023100b9bce60959dc87e2d6b530ad20126096775e27851834b211fb2f621cfdca0c3f8c4d635ccf46ceb6da6610255cfdee910302047c435bb50066306402306a2acfdec45a016904c1f2d66b550b069b92fc6fe981dbf14d7b2a76bda8afb4560f104425b67d2701758fa4072629cd02301c0e1ee0b0e0fcad0a1cd8ea2f91767e4af0a399706e032250ce1841f21af8d9ac0a0f95527dc5796516f1c5e636cb860302047c435bb50067306502300f6ed1390ac3d84c9c97431f439ab0060ffcf8ada7ac46762c7fe505c9c44a76bf6f086b5e6c186fc15a71829700c3790231008b7927a175ef868ea6bfc8f8408a2afd8226a57cbd1a5ce95d1ff13ea8dc96b28be7e92bd4338fc633bac8f38913be4c0302047c435bb500683066023100b045a8fc49bc99ad495642083ffa03ab4d41a442e25a25f6ce1a874fa9db214aa29eba3ec285b0ad8e990a86c3e587e3023100df631e008162d62db95c6ee4bbea33f6f37dca5869cf4402f19ac0f6598e46a44c2208673f9536f74b9fe4510d2e70e20302047c435bb50066306402307190a8ee0dce30618b5208e91cc3fb83d9b91e27a9611c6b2a652c1143e262e80dacf8011d47556d550a82dee4eacd51023069c9581d897bc6e11597805d1c2d6cfcef8bc160e9dc649cde8e6099f33d18f5b8130b9bbf6b97f4cd787772ea59231c0302047c435bb500683066023100986feb345d3f02355573f810a540522f12659f7f72d14257cbe638aa238838709c04486997465530cb31da516894e8b5023100b26768355342ac5cde09e500d79bc197366abfc6a4b10b79252221a78f63be8bf163b7eb7f67b1c4120e2abdd4c6a05a0302047c435bb50066306402303b5c54ffd87a4227023498b267d1b27ef6b2c3b08da801cd8c13a599cbfe75b72b95d32a7b0b62af2a721c98de36cb5e023040c32d83613e66e57836fb2564841ccc21f90096f12e9043cc6f2124c884fc9ef806d57501a784aeb46ef35fb2bf077f0302047c435bb500683066023100bacae3991892dab4e99b6c7486a76a615b936ae7bc80993e8064d5eacc2e8b0fe6d51e59df7cbf6ce93d1cfff28d827d023100c8b7772c523775649f0423c5b996a88197b8f7dffa366f89e8db65b3c98038a7b823b6f6b4b997081d9a6862c1fc16530302047c435bb500683066023100daeb42fe2ea33c52b4a569f3cc2caccbc911f4328f2c6eae4c689ac6f0869049901c0cd0cff060b53b6da663990487400231009cbf03d52c60e28f163d637322e2071baa4e7326e121c8a4839cf5c9e53e656b8072b9105cc3762966abe46a89bba0360302047c435bb500673065023100fc4d2a3085c48c2ef01d3e7560b20d96d463b78eb0a9b0ca44b43e119b0660211fe1fb996eca03688507c6121ce0371f0230066e9099d937e6c0965f9d9247be79d4ed55e0563ef06c5d029bc9213af420895ce96a3dfe66c243ec997ed7b4b0bc880302047c435bb500673065023100d70252f4ae73d9b2c5babe674d537f02eafe65583e831aa5d19296b0db5e49a3ac961e619422bdd5674cd90b07b0382d023002a0bb65410ec97c4a3068350780ee2e18e95e236cd5ff954ff41d2005fb0b61efe34a37864892762fa9d9a4866c66910302047c435bb500673065023100c19af293d6c82637e667303d8d47d057edd72435826d27efdc2fcfa58649f89bad0295182e4c38cbeb09a2ff966b7b8c0230324f32af6a13d7e663eb1a8096cf2c32bcd5423a66eb04444492db5a56f7f2058b75956f62ea034e23d05c363c5de1200302047c435bb50066306402306eced4cfa3ef2f6c09c46d898f7f1f547b2ec289bacaa116ace1cc5f4c358360a8fa2d7809d6f0ae9928fac1a3c36a2f0230714ebe37908efcdb108a50d803b7069a0102cdb4e577b17e41428ddee2f025c14c67680fb7741b79b2278a5e1c6ed84f0302047c435bb5006630640230525de8983ff02bf2560645611d52da7abb3c977ecd49fe141355d373c19e39151bf2305c841a79e1e1ae5d314d55ec62023007d60e3cc7108f5ac7b16db48d58e353c865f1e342bff24cb444e954eff6af3e26fafcbe2e9e2ec568fb08fc2622a3cb0302047c435bb50067306502307f0f1c893ca2a6dcd32a1eee39d0be46c233ad918d873789d9ad312054ae7bb1a42047372f283c34cddd88c814f224b0023100bb48958e7fca7abf856d945cbc0b63f2d21ce8eb602d3ab4d79be6177bab0812db181ca760905c2ffc476d548ab82d4f0302047c435bb5006730650230367e32199716b4fe570ee79227bdc725fa4256921531e458a0aa57e13a9dcf7d0654edb5a8254292f86da7395a93b45302310092a4ab85374cc1b1ed8ee4a0f73952f48f24ecd20a8e766be9249c0b8c0cc1cb302ed7dd1d1d9f7c5bcf9e87e1422b1d0302047c435bb500683066023100f98d931a7358573c2d72a6a95d0df2b4ff3a11c418bfef335207ab9723e3eb08ec6e97ca677a96741132ea9f929f9a52023100e5d97f88e22f812d87dc8aebd00c7c0de0d407a690a2c0c2f486b3ed6de374d2bc3c2af16a1634657af670b5a998678b0302047c435bb500683066023100e77128a52a8544609165a2edecb3affe079015ed8b3c37b5a7483b6a64672c1306a7d5285a4b455822d835e5727d36250231008ed1dd4d218dd6b0bd69f1120ee46430e98c1600764a8086ad9fa3a6143eeb4cc8d990970e19311d5ee679f2538142470302047c435bb50067306502301dbce23e7a301be32976031baa31522cacb4293858ad1a2916c67f6e868540a178e741a7723802ee125dd79685669e860231008142a40941d92710786759a9b750ba4cd0ac87837a3c538e4c3e1f2c118878e5e4f5419e55a6d35d3cfc69ef76876f280302047c435bb500673065023100a0f3874d4534dac0685bca0268b3ce36b6706b7c680e7fadd4c8f63ff15fdf5b4f772d263534e72ed3accb7f954bb4020230183e6b4e86d9e1dcc31fc744171042c6341cf4dfe6bc3733b38041e01664357720dba82eff2d517933f28e5b761944100302047c435bb500663064023054c16c216ab2ad2435b67a3aaf64a0cb616a285a7fe2610d30a49458e74117b84c26bed0c9a957b22ccc21ea8d3cccdc023013cced0ae3a7166722fdead869972d4e026e59065b5686550806c0c028fafc7cee2159dfd6adec885a34341a66f8df480302047c435bb50067306502306c248b7d84cb91c01a9b425070d3c3a2120655eaee4f0d649ca1c63a99db8e88b0415a60964b28d991b705583c02b564023100bfd333a1ab9f842b616df2d4235aef2a2e7466c75592c8654d8a0a439590f5cf3d57e3eea7c6db44c96d6cbec12ff8ba0302047c435bb50067306502303050c13454c7ca9bbddcc5cb0c08c2716f6de635b00a7b8bee352ed8248def1a88aa6ba987fc5e65f907795f3ef32aa1023100bf3bc00479672f2fa2c3b5a03eabd7293e1e74e310612640daf6e0fda47ee1fdb5d6b7c5c7dd4568c41bd88c5a3dc7160302047c435bb500683066023100d224ad11e7766706f4c790e458ff92e540232f2ed3eeb3b67d8365066b8b87573c60dbd7ef53c60e19f0b169049d4739023100ab54d0575aa2bccd72547598d3047a56673c982718e102dad2bf6609bfbd0d677a7954f14669d2e1963ef074b85e9a670302047c435bb500683066023100fc466dbe4ffdfde55ba397c828659ba4f725469565ccbf924b6dd371bc82bb0f3815a4273ce90d2832601e0a3a400ddb023100c51456a116146912149caa5f8bce5e530688a213ef2e2ad1c308a82e4fc718e276643204fa1f290fadd2f9bdf5d567cd0302047c435bb500673065023100c25fbc86d3faa618458f6958e70dcc005daea878f2204a9f8dfbd5a28c7dab3f765d1271910d85d029e00fb5fbd06fc5023021d50ef0b344976af9903dfb110f1b6c3ecdef68eabbff37f8ca9982e36b933febace05df624583714ae761d1d0cf9a40302047c435bb50067306502305a4cbf6df1973a7deb328e870c8d11dd300066d149ebf53e3ca08f2035928f7ba19ab4080ee5427f03c96d097ec7f616023100c2b07544ebe2e71075037d3de22c4e863a75d1c6b958bb6fda7c4e13a73a737f91192991914f13086cb1c43f79e6a1a00302047c435bb50066306402300b505e64bafbb3de4611db73411e723cac378728655cb75c75196aa3ca338f6d39ffc7b7e7bab212db20c29425ffa51b0230420a7ed31afb79c0dd9cb7f1681ef46d53010790c0f78b9c67abfd3517eeba59545cb0f710924384dad1c280a638f25c0302047c435bb500683066023100bdd0c89b0f3c8e813abb1b8fd81c3953e49f955c589e75fe4261b4c25f7849bca9f1fc1ad622968f319f31fc40f5d255023100e69839d2f1cc7501e8a878826b8b5efed0e5113799d673c128944446c1d6207711f8ef2cf457b5022b6f6dce246c3db80302047c435bb500683066023100cdf753e6d00096780970fb4d03afd003f8d6cae6e163de72ed30e45d4e5b374b4f14f6283d462da258f7a45b4d3474be02310089c91f1c13fd42b27476278af3abe7d5a645b23af7080e9e9af9796adda0ab0820c65e435cb14198ae06de58b3219b9c0302047c435bb5006830660231009ccb43bf96926e9c82d8c85f9c8a1729b73dbed14a6d6106070e756de1156442265b918663361a5976757a8a6add7adc023100c2c09d6f1db39ab9fa098c7f63c5ca8aee9e0c72339beb161e20f454acc73716237bbad7b6e6057908e8fbfd692521b90302047c435bb500683066023100e2ee0f37b9daf3c64bbbae57b4d61999d11e31f060839b0386d4dcca52109627a2deaab05e5e8ed5dcff2eac2bc472900231009ec18b673b652175a84d96d42d04a0a694910e31bb60f33a01102f8ffaf088501c832185886d07ba45f9bc01aff7507b0302047c435bb500683066023100833a1c0064501c425fbbcbe0bf4d043ae48c5d9c65d5ad1d90ff5dcd1eae72861920c0f0d112a1713bf2982472eb7231023100fa78ea6478b13f794bf0a5b0342ad3cce7120c7910ab46855a05ef168c94787bb4488c05244b961ffd504f61864f99290302047c435bb50066306402305209d4d664e078cd942e1dfb405623ce527f518198e5278572ec50826e20292b6bdc0f234f2df002f71915e3f0cb400f02304cae54cf09d7a2a12e27e17ddac3b29ce7533ac65cca2326940286a9f042f174bd6d745b435570ef19fd8acdd52062a70302047c435bb50067306502307e83327bce5b364de6b1ca254b5a820a70cac40a29ae496687f5b007cc35c0ae4e54cf47e37ed7a5fa02854eaa8322c4023100b0c1c123930b0bda5f8fe510c85ac1b4b22277117e407a3f675539b5d4a6fe5ab5aa2fbba3431be086e15d2ef3f1d7720302047c435bb5006730650231009a0c549ebfb24506b656dccc55d012ed539f5fdc37595799e3457b9273ea7f116018e40d8654d5cf5f0711537dce22b302302d65bd9d5fe74a31648e10390aeed0aa369147c53f1a170d56b4bbcd18f3bf27c1f5980aaf023d9ce29a0d479d95f8f90302047c435bb50067306502307dc511cb0d487f88dc5e5d8cc13f87551581eccb2c5f2ba43f5f7d78c3336d53f83af8bbcc39b4bc52277548f9dbf92b023100e8a501f0789f191a15dc0396680ffadac5df039d9669da687b13a4994bee1340045807fdaba4c536d03a331cc9ee44870302047c435bb50066306402303fae491ed73c75c64f76aceea82c0ad2f2169fc3a6197524f8a5f0baf35003ae785e8adda3152cd3c5a862a1550b75a60230280d94f70c330d99ba0a3fb3676d6b555044ca258003971bf016c4de03f6da3a1b97665ab48fb28e8979f2c10fcd90f90302047c435bb5006630640230571f6930b5a983d8a5bde58772736944aac5098ae63cb2fc659246dd24314fe2ee52452f606e45677cc90a9dc5989fd802305e95974bed7e0be4777669dbf81b513f50a849e3d668450f7c933d1ff118dc582b9c69eea8b91392d6671ff226f67bb60302047c435bb500673065023100c587575a0d6a5befc791ce6e9d55cdb23992a079ee7ed5e9956ead08b771d016dd2cebe34c8bbffcc1e4137ea604584702306737c5c94a77a4f6e4e5a003e4fa0a011f74672be0afb62d8108f9daa4da53760fc0295284fec889cea84753dd01717f0302047c435bb5006630640230795fd8289fdc918b45716285b1760b43fc0ddeb2a59790c9c505bf8ad70470dabdc17edd5f130cdeb19947ea18bd6711023076505d857e4dd40e945f60fd170ee520e3632d2cee8402452449ed87839961b6c87592d6632ae9c33dffb624e8ce49bf0302047c435bb50066306402302b5c725b38bc3799ab19774f8dc3b27a1e559c70cb1fd10094e1deee713b4aabf7ef51861147eac59e5730ce3cb165dc02306999714a73868dd4f820cc987c14ac9bf16ad962d601549a46d0e925a3fb4fca29e49e21bc658ac4f6ce3a5e58d4c9bd0302047c435bb500673065023006dbc1a004104dabf1b10f3c9c2388f518f71eb64755e64d1061acc560d2ada58105e0e588113f86a0a824b3b3aefc87023100cbdd08234f6f99b1290bd77d2fe3e750d10131bed79c194b904f6575a68f0dbf89d59ea89132d352eb3d2a9cf17a52ca0302047c435bb500683066023100d861a1b832ecd3e444310d74804692c7842aad5d009843456c50cec200257ccaad17198c2c5857356187b89611716c58023100e16b061bfa68e034cf33e9d5def255ffe532ef130761176747affce886aca1e3e435e230cbcaae336973292e5aff75ab0302047c435bb5006730650230782e6cfebcb03d787ee291dadd62f42c28c7ef5554f9dd50e0c4f5026d20f42284bdf04a09c5c12aa4c65616e51ebd7602310081451a51bbaef84206356d680d5ed89c3751ba77148b5e68343072e26e6382ee9da4d43662b4dc23da26929bd2fcc16d0302047c435bb500673065023100ad417d097cf5db3da23ddba917e729dbe380d30124ec52bcb911a211b332a3323e65c9af7d49df30f7ee946208d9d362023063e033c27ecf00f6601f3f5ab4074f4edfb2574ab82f617c111f95f49fd57ca26873dac36d9856fe9ea31c567751d47e0302047c435bb500683066023100e4167669c7ea13fef3dc08a9f652a7d4de32711ee1f1caa9fd45e148b983136defac0caefb83bdacde4f3ec358ec9271023100ae1a795327d7dc6b2035a472df49c1c06d44d8eb8f0476a31b6ec29b23a23c90c59779692f7770bf126aad341acad2350302047c435bb500673065023003b568a401d631cd6745afdc8e951b6e71bd0848123e08413bb8d1e0c3314b9c9cdd83387eb0501ea7c02383164c4cd0023100f16ee236b9a2d09a7c643d97f460b59fbee1074fe1f96a9e78f9947ce0662e839580cb9a16f1672654a66dafdc4a4d7e0302047c435bb5006730650231008ae70cd052115cc6e8ddb5a50e5f37f7fcc46e6562c4f99f5c77a8b8b98e2134da536a028de9b6a0c940dddd5391936402301e9fc19ac54e472e7f895375e8b862a8cbfccf3b7a1f3af84b7f8ab475a0c0f30be0f0f1d7f7aff01cdb1d8fcdd8c1220302047c435bb50067306502301bdb082d08c491ac9e9b7850524f0d25fe4eaaee27df841b07c882752e66b97fb74677f2dcb3413698697ddc0144f55d023100b91108b6522f4781c15fa4deed491b3f01058203e1ab44d744b2a60c9e763e8feaeeda11854762e3db71b2ac5e7908ce0302047c435bb5006730650230709b97098d959f09cc176315a71a0ee55f2e839751a4f4fbe13866c58278e4a07eee5d2c117947627f3d29b505e27e78023100c888660fd43c3ae255ba31da683e13b619f4f72f57d19eac36aaad44ecfd931c676a073699f0005acb2691ede604a8e20302047c435bb500673065023037d609f5c2389c94d0a74b9ab4edf895fd854fbe67c2b5bc3ebbeda24cc8806b6ca96dbe5408c3e496a0a93dc4718334023100ce77215d12325e49f126fc0d9aade18a0fe5c9c4395fffde6cda665e434fbeea8ae23c1e502a77a8ef96aeb7b0f03d7b0302047c435bb500673065023100ead0150bcba12769bc899a87a69510667e8fd2ffcf9ccc22ceb544f062ea71d0f691efbb8ef86b4069d6db990b5a0c9f02306914a739adb448d8614872b8aaf959c27521c2ee2bd1895de856da5a3e4bc6a5dacb2ed939cc75acb807bb6d42316f180302047c435bb50067306502304a7ceb2a1bf113db7606a1a95db4493f30e8e3b55fb2fa7fc0c1c5d5132b44710754193e0d1d418a159a916d5fb15f83023100dec2bd39f36e422d408967b75d16a5955d46c6eff9e2e3b948b1500a05145a7b301c49579c5c230301a47936147b09840302047c435bb500673065023100a3bc2bfa752113b7ae087c810877cfeda90def31262c652211cbb1bfa76ffa3f4498bb2ed41ebebe6dc350a9183f5ccb02300128f55f955208d28344454c6e48823dc897e141053ae283d01a7ba9c1427a3a84443041c7aba0b4efb503507db8fb960302047c435bb500683066023100e62c5d5b977f2b212744e11b4e3347323ba48c080b48e2c78b5036d0031b5cadbc3275e9219060794ce70378122a15dd023100b480bb2a5b34b98642326dd64f6ac556e41d9ea01b5ed7e771f9bb0489584ba8ccc60391205314c7cdb223c2690894fd0302047c435bb5006830660231009029b454bcda515e00dcc91412b5ca88a9547d36471810372c9eaf7bc1d6d02f8a65947271fc221de61e1346e85f9a1b023100e1e38ca1dd2ea412776470adac87fe1b0b3bd0727b191bb15a1ec020943d4632fabf5e7c199a6d8829d0b8403acbbfb90302047c435bb500673065023100a391d53d63beeed179e1c5b62e3e3e0c82fcf652c8cbb603f1711da574305fd593923b3c4133c12784c418802fa9d17f02302a0baf06896e320a87d00f8fca5185a41038bdce8d5bccbb10c2bf1fb7ed066a2ebc3df278c0e881b515432e557c58460302047c435bb500683066023100c09e71bff9374a2ab7ea3d006370172058f481e48bf360c85d8c11d3675e0fc79309ba9e4ae9f03ee6082d624009b889023100976b92b776a36e9b3934e38963fec3ab1d58f1df9b83b981e9ead90e2e36414f33dedcad9879e3644ee6ececc04d17190302047c435bb500683066023100f3ef934b8b6d4061751dd0d27d66d44c6240d8917ce8f77291087dde41904fca9b9a31b3937e9f647262251df331fc1d023100e0df612e218fd6e802fba56060ed9ffad528c50e2f90cd8780fda8ed47c0d61b5f69c68dbd67da835d343a26a9a830c60302047c435bb500673065023100d2417a585634525e2e29fe350b188aa6d35eae0af1e3f6b9d53e4f8a92b9c2deff35c0a31401010316cb077e4108573c02304c8e15fe29432d5d1407252a0ad0951c5ed556b7983350b8de6f369d79d325c0f67d0530951bb5643a128ef9e5e2e2a10302047c435bb500673065023100aed97e8ecceca288c006e7bbc750f714c2f235c31964be6adff2e971fe3bf5f45c8682ff4e28ba529a25ccc2ba1699b702303df300df85ffc77b68d339aea3b738f86792ef51678f1cc4e3eab61dc5ae0dabd35ed0d1791ee1526756b3382d3c19ff0302047c435bb500683066023100e42a78988a311602ec03c6d50b9fa077c74e71a562c2fcba7267e9c9d5f62fb4af2f9e3f4f54ab7701cbf2b8929ebf9f023100a386e098f349b7d176ef690c139131366a5cdba73543d2a732069acd5cc1be5d828681d48594ade613f4e9661dee627a0302047c435bb500673065023100929da08572e21227e03071a5115b192e05ebbd673849cc23df1afba46677584e7f72c913747a9fde3426a301e0ff071f02301310a5bbf207719a43af635423047a4e125ebeaef3fc24ad07f86ad07f08d60ebcf6c1e460f3c66b1061bf13c50d12f20302047c435bb50066306402307902d5dc024f02b78939c82300fec9dc42df359a597fe9522a5b24d300aa41a07343071e958248a6ddbff1cdeebbe53e02302c0338b5171d34811d87e1ae850412f7f1ff895953c757fcd8e1a7748400eea4fca71f94b28bddce7480ad78c53230450302047c435bb500683066023100bd7a80949c20d23912634b899e915371541c784acfe25c1469da07dd412b17ea2e6c4a12cc87d284794199638a540b27023100a24fb5837459d2857a2d5966a57dc017d007f7d8697e8fd22f16935029e1eadc16347fb736f7ca6ea8669b9c54c9e1fb0302047c435bb500673065023100ccae1cdcf364e42796f52be958ec0aa38bb0354216b447a94f45f354ff21fc1124a7b1d0b8a71750a568d1daa60b31e202304c9692cacbe5e2fde624e6f0a0fa0f4b96ba10f3a704b00819e71cdc9c28e4575afb096538746b22b0658e579b495a2c0302047c435bb5006630640230467dc2e50c06fb78c1827d95feb62a2f86259652d0169ec8f9dca4e6598e408f2b2576bb1f52cec162168457b40ea0b00230331e055e5d1d03d5920ed2141af5ea79f8c5da4d15b0e1011dad79de3c659309ecba0525ff8da161c837fdb1a7da0a540302047c435bb500673065023100fb3e84531578f6a8a4509e00ebfe8a5eb7ffd9bcb882225ebbdf1322b53bed2418fcfc14cb348db84d79d24eea740315023056b046297a577a51dba86ad1a99f02471ccff63509a5990710664f1508f085e66d0a8412b0327efd4212519bc55118e80302047c435bb500683066023100a3378f8e852f4b6553865bba562573dea283c87a0c0916630bc9f2764e158d6fd959849104d1a7dc6b7c01daea91bcaa0231008b26d9a7c02479c04d5639134c3f03232e97069bce84fd53b8ffda4568c2306303743bd2410b5dd6f04b58dd4eb1c1c60302047c435bb500673065023047e6cf790df3ec4cc21159fce1260b46a4907fd0ad4df061644ce708efe8e117d45e249e9f15c61337c8b7ca58b68d17023100bcd91dd53b7bdc25bae642308a5995ec4fcb56fea0c39485835f6ef4a9861a5401e9da12dabcac2b5676efcf1d00f8860302047c435bb500673065023100d5ad001a5cf42c7c79d7b17b95105a520ebc43961cb6ea6b3e8d5cdff219ce6d07c12c7908e383e2038b76df0e7d87f002306ac2791e5ea6aaae255d399791e47527b7265c4989203fad9e950950713b7f9ca45815a0e8c3af1cc5595ea7cf1ea8630302047c435bb500683066023100e6fcee3a894ec8e71dc169061f232877ddb94ec92b8e0fbc5ff116025e930f025c1c2cd987ff96cad632387a346ad875023100ad9c24ac01285cbc277438f08273a3079f49f9bb601410a09af98efdf00e4fb815a77d9119227283f9a5ae3ab4ea75df0302047c435bb500673065023100dbc88ab93d385a8a152597eab49ad78af5dafa626d879d8d86bb592f45d3ffdd279fbd4a5ed8e11e4915990e76e3859302300fbdda429ad4180df6b51f02999fbd6c61352165c8e01ce98255efa5b97c9e33ef9a4d99864397994c33ef1fcb5069bb0302047c435bb500673065023100e3f1a2c2944759cacb4e4098bf4fe281ff830a6e9466bc50cf16e6055f79341b1178b6dda379d17c1d76a0829d6b6a2702305a0db881eb514ee81b32238ffa21cc0ff779c43c9911f5af93b89589088b3f218284142004600c0c522c2a98c6f727db0302047c435bb500683066023100934d992eae7416d6bb7eea771aff95e72d8f1aac2be9ac64211717c34fb17093cc03f4a5b052361fba08146df1bbf50c023100dd7b647ca2c1baf8db475117978b4b92021967f366d767d33643c9a37dccba2c2dd5e977844a806ff3e8a09ea81fe8e10302047c435bb5006830660231009fa8d0aa267bb8807dec6b0da897b86da7a40e087c9d6914aab65f6c22d73e647f659cbc7f58b6661053e9550d44adef023100c2019f415a6e48b16bf4135d8f6f36decda2544afe2dc3db364d8a8b4f9910afaa8868e665486a99b7785889282522700302047c435bb5006630640230021b40df89f6e81c87600b7967aff2b217787375cda7ea1cfe55c2f79dd1b1716194a5b56fb5a3309c14f99f86ab1b1002307cf1e691d56750ae0c198d05304e1e5d8b63ac96328e9f4ba2af09ea8d346beca74c931581f23e21d55d4e8d1d6759200302047c435bb500673065023100d55987df4d174e9cffa310ecd25a873717737ed48ce4511d8fa8b2adf4a74a3640c8e984bfc10f1ba7df1e0d53aef036023037eb3d4bebf7335a4dce87fd5ec42f656e8050d257823d17ea71a800fa70262b064a9603dd25408fdfd4a5b7d7c123f70302047c435bb500663064023079f0be2ca75879c438b0628ab254010086701a43bfbac79e0163e9295ce945e76ea1264858bfd6f8c6024f4c075f805a0230740d6e727bad3e3e1b864da6c8f43ffcf29924d51d565e32ee8db29300e1bcba64302bc57100a275e0b287ec7b49f72d0302047c435bb500673065023100f20bd41bb583272dd8d0a9ce1031dbfa739a660cf449564f95eed7d193448d0eee963c365bbb6ded7c136e3ba5051f9c023044429aa22cb78eb670434b5c0ccd002d2df0f47c29714449fe4c567d313dd0fdc9ae6cff109bdb7ba083b61426d0d6560302047c435bb500673065023100e63e82cbd6265d3cb1021f639de1e35ac16af041ef3d534429050e697076306ce93254cb24777c568da1a020fdeb9d2102305487a159899c4950b11c8ebce123b80a738a2437be683654e0c0d92d2563e1167b0be009a605c4ebc84b18ca56febe3b0302047c435bb500673065023100bd6ef113835dd10d8f5d276fa0d72cd24ce0efd62171e40af0aa2441fb083867668daef063824e5ca4591f19ebe35391023050095352a9eb76e69386cafccfe64a1f8572e72b8bf2850969e41af351270ef904b3886fd998df9a62ca714a2a08ac720302047c435bb50066306402307bcf71a6dc923cdb81028183a318710659532a5a98aff00ae9fa306db1b2eefaec13e2c93cdf18d0d3d677c14358489a02301bb4a0518dd069f75e0e94148e0a574b3c033ef83e62fdd1e3e76f82f8e088009b78756e602b55250c4280d2349e878f0302047c435bb500663064022f629a101b485ae41aa958e2a3601f6a2f4941a63c942c0f961e6d2bf6b0aba0e8f840cdc82e800a6d7f4351935daff7023100feef086f13c46475bf550bc86646ca54e6836bdfb64df0158ce626188442476e00be75f2eda14b74df4079a2c375debe0302047c435bb500683066023100daac59b76be904e119ff468e65d630e18844866a19068a41f54f5da86ff1934b551e3e7abc7c88520b855e9548ab84a0023100ac8a875097c658cbc4ce9dff6c7cecba299d0456f24a887a63f4e64657227279e43c662d273d939659d49936456796cf0302047c435bb5006630640230130723333a757819bbc83c1a0fbdd043e2a3d1faa79f8024a821b975974ab1fce2c6f7b890366c4e066764de2dd9a12202307ce0c2f2e19d2b8349cdd60f77a0183f5b5970a7e7d7320c039264775285fc9124a71cb221ab5de37a6748477a693b9b0302047c435bb500673065023100a623bd1b1043ca3773fe2474c86eb1f1743142078a983734c932a3a359dd8455e976207ae0670b4364503927138ee40502304a58ec27e54e8610c9e6941b4f06710c9f0dea597e27b6a12fc5a9a103b5226464c7146f0eedc4df3cdba5d08c3baadd0302047c435bb500663064023048f52bb09a42d1019125bb95affb3f18d42c51f66bc2dc36f89080e5c049fa3d772aa85b95310a75f68aea7a9b87bc6e0230476b8027cbb724edcdc968173e0acf08feda3e66124cfbbf9845ebe7030185ed9d36d34600200407b1e7dbb30d2b53b50302047c435bb5006630640230555a9a1a60d9fbd2d1ab48196777e1a1cbe6526a86f8d176e5d6f8ff577947eac87f01471bd7b7383795d61421a86e7002301c6b194e927d88ce2bc409a3c0d21ee74c63e1bb4150a9eff4f4a1e1657fac240c81045e45d1d7fd2e43ec6dbda670910302047c435bb50066306402300befa85acc799fe42b72d908a7664dace57aee3a97805b6da54df97854dad80917948ba2deb379f6d5c4dc4d9471d40e0230613fa917e5c92e9ee29943c67ed2ba94f7b639876cb65a842a01b2d638650e5f6be0c5f6a6458430ec9516ec80eff9c70302047c435bb50067306502310083bc80fb35f54aed70fb42440a78a57b9a9be8298534f805d89b94cc60fdf20b906019ca21c2d63c37c6ac1097e33a0202303cc16f19c0bb6bd683eb434a663738ce234d8fde08a94bd75730177d920b0240d584b84af2f09bb4326227b979c94ed20302047c435bb5006730650231008e9429f7ebfbc77fa7a2b9653a956caad37a069d81ac0b22d0caab0a4e277a1bb6ee526b0b4693d946bf7f3d66a563d302306e117fe9fbfcee2287cccd3435af3bc8f2ab66c12f63a5e6ecb11d820938251b10d02ec24c12204174e7009ba031abb60302047c435bb50067306502307335429a5f0d70fbc0e7fbc110a66590abe11bf2cfbec4ba5774e1efaf5912209f2d25bcc1a766bd91ca6563bca47076023100de4d4aa85cd12f750bff9ff7622170aaafa428e1faafb11349741098e782f31398785389f6917bfdff247b0e249909cc0302047c435bb500673065023016796bb343a8a13a354d89724fceac272a9688c87bea7760d0679ea84d6408c22797f7682e0fbb2fe9f8f11363b8af23023100b1654786396ef2e0b3b899d05d721c9d6d1928adee9e899373230e634823a720daafd84d8d7bc61bcc26de8fe86ab99b0302047c435bb500683066023100ce886deaf9ad5866cc2a3052418e151fb1a49be05c6f94f6de6dd27e2002ba8df226b20bf4685a90417fa022c3254759023100a00f3a5ae2340f6d90943f1407bfaedd2874f46e1b8d3d3aed42e394559ad94b200da7ad1f7ab3c1a4206305497b4e200302047c435bb500663064023007c8838a96016b05505c6af9ef2701ff15b4093f8cadfd52b2b46b56f994a876356dbf1d4f3cd2e96dabe2dbd1377bd4023068e9fdd38de9c40f78206f4bcd00bbf18e92f817fb0a6794f18c70a52e425a74d72902dfe680170bc727c9ec71e524100302047c435bb500683066023100acd23a108e84c514856945190f983e26d4362ad80582baa5fa769eee76b0369abc516fdbc1f0775d5062e45e8ee50792023100ae8c626143df017034e59cecf6f8bd972383ce411636810d0e4253b8992ca1d47d3b964b3554c96c6437d384aed7b9630302047c435bb50066306402303df22f89d1d87bc4359e27213df5d2ec13f4c4cfdca768ba65da1750072814c41eb9648b0dcdaa061167757cb10df17302303bc8a30d1f84b6371515489e96e0d0b2bab25f12b3895a2111869c0a43a69c7c4e00cec37ea8f047fd517bb1464f0cde0302047c435bb5006730650231009acbce69b33ce7a9eb9b4687e012ec0ccf7db8d12e5b7d4f3641b185f6c4cb870e60cef4ae55d14bf4a7b279c44fd13d023060267b624b16f8f4800658d7adad6cd3e131a499b099e11cdfeef29f2f75198224d25bdcc727c7df3df9563e6a2455fa0302047c435bb500683066023100a604479f417468afd14b26bb0de67c21a5757b49d7117a5d5885774bd6e583863a1a179db3be4bae5f0b6906e6eaa9ed023100d5bad7f7a0657ee2849bbf97f3690577b4e7b2533496c88315e18bbad4a0ba07040126ea4aaec72ec8f1f55acb3eb13c0302047c435bb500663064023012529ff946e3001c6fb2c50dcba6e9415fa590cc9a5376d9783303b7371a67621b07ba02363ae67c2d0be2ce4b2c94b002306976159ef786f22366d24bb2476efb0fe6a36edf41e4c586bcd66f0e1ba609413a1b84a404bb6d83350a4a009e16253f0302047c435bb5006630640230586faa822270e3984ac00e0b130f67e6c354cb17c6b89acb063cef04e6f725e0d51c542eb3cbcd366909ceb64bcbe0ee023047096dea5acbfc8852352ff799440cb31e7e17f688c7f7595f79ba4b09f85941ac7f738d702148fe02a6162431283c5e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301f46fae4d68d46ca4e168d561873abf4af9f6c3dfb99639fac536bb1df112ed49a22dfa407bd6217def87ee35f01ed66023100c30cfa5b75f330ca51f2b7c9162085f2290e3eb87432d771b114c3fea23aab54db9ea027e6284dd4e2b2fe9a504571210302047c435bb50066306402300e9c9e6f47d7ffb6b9b271469c92ea409d397181cbfc73478cac229442311b98459d6ede49c22df0fb00670a12fa70bd02302f5b1bd7aaba0d0149cfe24076f474e4bb5cb7036966571dc8ff0982fab0e663e07161276db763a95c84fac92363e76f0302047c435bb500663064023043d9162160c08e1c88a532e4d48171460abe5199b7857a28e76a3a834e83c3b68b8568239feb9abd7574e8660f84d3570230388dbd44c6d92f57536cb54cc47184b3e6cf31bd0296575f3bc9ab07e18109f31fd68fd51c06faaed8b54af1eecf5eec0302047c435bb500683066023100cd143371767c2f0e9c8d50f68d5620bf7ce057a66b12c7eed86a0c9c5e07801f7c26ecd7ba20ffaafa814de4da619ebe02310087cccc9fe9d9a1779995ffb5e6f422ab9b4050e85dc6dba31374aa1920185d5a66752bedd93c02f63386ad1a99bc4a370302047c435bb500673065023026d7e2db7cc161f9765f23dc2cce000d6cf8741c418b05e1d398e31df931719c2c4056dd767b7b2a70fac9a0984fd70d0231008c84de24c867534386c37bf5f35b6182fb3b3dc4a4deb9e5d8172b75a578e287f2f96442a614cd53dbd39affea8bed970302047c435bb5006730650230547588d16d2b4b234e2bb0eb9165a4b9c01375170bf5b1c36de7aac7d374b43b4c04c2bc85e743f41b9d26ed68a17de4023100cf26febee16019bdfdd3224fb47235f4b025af136b28008314929141f00a515aa56285e27b5416f0e8fbaed531b35d3c0302047c435bb5006630640230531f8150cad6e2edd46e25fd0c6d750979cad76bb365a36d681f1b226f1a928e4c4d84c09f8383f60363a15bf040c19602301eef6ef920bff9b581eaa96d1fa2490eb83d45134852230300c2b0cbabfa065d7afc772deae2ea2153083230eeeff2220302047c435bb5006630640230744387f847ffddf03e73351e7160cd5cd95a8d40bff33426866889bc85d8788b18a0fb3caf2c2e23ab0551f97d409d5502306991ab110a91b41063e96762961b4b8bedbf308b184780bc1101437f24e41c7517c72fb11ffb09ee7384db0852ca01740302047c435bb500683066023100dc60c8e9e84d0efa66c41854d9360f8fb696b453481748826f24e1e339174ecb06c8f773bf03dc344d987562af6f641a023100e5bfd4b9586eb1fd63b620a2c2ff64cbc6304266e31218ffd7f4cda53bda7c508df849b5ff318df8a2fe61c367d99e990302047c435bb500673065023018a6c7f7c31ef694365694690b9b6ad7a2b137ef53040ca9635d047023283cd5ed95e11e4d63d42084986114b7730dd4023100b930f4fde845e2afdeb4e25428561af7bd8fdf0ec726c9c89cc547c73b654b175e91412e409e5e03b6ef10d7c77079310302047c435bb50066306402302abbd16dee7b33f41fdbc6e077a690f1895db393440c15c1ba37548748caf158e60ab2e1d96f7d39863c2e8c8c74eb620230333e6e5eb867e5187b51ba40a0b92ff77878e9343b3a6e1053ddc407b96ffd3e2907702b375ce09489f9f459305deac10302047c435bb500683066023100af36bfe5b11740471ddbfe1c4e9297b5123f28e8552e859e244c15ad9039255021cdf495f5ce5dff46af2cd1748a537e0231009c571ad3d1f87118e88fae9b29cda42af645c848fc0481cd6a5a923c4baed783cd318418609b72d3e1a9a62934cbcb190302047c435bb500673065023100fef2d8fe0e316c042739c719f1b67f597a9bafa370e9f54732b5a8d13bbe0a5b55463932d2d718466e973e5c8bb81c800230135c77939d831298c3bda9cb1eeef7cbb913e717996c099887800a24bcf50c5baaf7bb6b65126d9a42b267bbc78dd0290302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a641d2d364fa49c8be789e574e87d54dc5b721fc586d344799f8fee74bf9de0ed6a6a94ff694f73c3c5d98424f268b3a023070529d91525e5654a27d5bd3a0256006decd4421b6c07bc87a0dbe69e1b2fb8885f11d9fabe5f5252e89fc6a86d10c1e0302047c435bb50067306502307683755758d769d69c596df1c9eaff9cff5b1d672cfb304a3d4dfc4f8184253a8de5fbf53585a56dd9aa4200f6029909023100cddd785632de0d2bf54bc6f4ce050352dc25a5f86ece6f0f04e70508772ec6cbd066050ec9e172b223ecfa4d008fdbbf0302047c435bb5006730650231008fce871ebf84d0818e30eaf633ade11276ac439b53c5e6f9b0457e5fd91663f7db3c81b963ca515b74283b85bbbcdcca0230573ad9bc6f717be6e8db57b8b802e00c2f202576e6cd977268b9ff843868d9107ccfe2ac639506fc14484aa44ef6a25a0302047c435bb50066306402301e664dbe88c703b7845599e3eaa4b476e904dfc4803906139a3eefe24ece96d2ffb23a189b257805b02cbf09e0ebaf3002306e63603baf405036fc0b558b538bdb26a01e0596a6bd42348f631b7941dd730a360ad375044e05fbc5f3795f106bcf990302047c435bb500663064023053429425d8d83bd6c7de81010c99987645f40131bf38e174fe1c468b3b3ea9cfe998acb48bed5c25401ea5d2b1cb5f8f02303775083d71f4b95859d3255d204cf782e98f5d7f3ab1925f5907bc65b59f1f6d2ed2ce23c7f169e46530d0737c6ed98c0302047c435bb5006830660231009bbb3890dfc940d8f7215233fc1a9cd1deca32a5d2ebe7466c3b4b98e756ff75690913bff8369b0454921104876a55ec023100f64ee43b24703358943878a63f4a4948bb459264ecb07b3ef9b35014b3986d8d85bdf78ff8372b8c6689321479f29dec0302047c435bb500673065023056d8ab5384d732866efc048563465189ba1fe5ddbbcb986f162473256433514f98215fb92a7457c99a40d55ea6bbc5f7023100ec809f56b5ae9ac4c9b7fc692f6f14002c4734ec9013a6637ee3f034e413ebe690874220635550dd0321ee99b384af720302047c435bb50066306402305684c7649d60f9d9880b2b8a70eaf447861d481c7ffb3331f88ce1e33d047eb3eaac0bb3e7230e58d61d8c1f305cd77602301f2b29e4d4aec9996f3076ec2010df943b0576ecafc27d63557e5d01adfff93cd45e01eef8d99f061c72868c3badb4ee0302047c435bb500673065023100d2b70d02ea5f83b5989f9eeae006f6997d607fa15c5d2bfa4c3358638c30f0974878115fe453406bf0ac71ca2a6277350230325fc701e4f686cc7bc8c6a4f40a5c663e4011510353faddb0b3ea41e0207aca5703914c589923270985c13e41f02c650302047c435bb500673065023100925938474e6e1f7422cdcbb4322fc22dde879905d2592c0e39e26bcc5f2fe7d9dddc0352269557ae8455b4373f84b5320230119d43cfdccdfd6cdd3e6d3528af21ab16a8aa8b0727c5221e16da0f450851179ea52de2edbe1be739ca85d7fe3f5ddd0302047c435bb500683066023100a83f28cef08723bfc6373fbeadeb0f586c4a45e3891601c9c183a6038cb79d7a66730bff8edbdd8e6a0ef7efd70da527023100caeb8e5687907193af2bff296188dfc12aa9c5995d5bbad2267d10e6da88598505aaa08c2c7def28af73a3b08d673e740302047c435bb50066306402302cc940e4e4dda390781d284b6057eb8a08c9cba19f8dd0853bda9ab5dcfb0d99aada6d557f094d0749c072512bdf4dd5023052f82f9b2097036d0fe07f58b0ffda83f425e6fc40835989a0fa8caa08f8490b0815992e889fd49cc76fa0add31c23750302047c435bb50067306502304f608bc175f02133d6485020b21271c4a8be3a16e7e789b8ae7ca7b9521cbd79eb53240e78eb5711f82a686b05b6a00b02310083ddc8f3191bbef2908b2e85402a2d7d2f8cf67b41eeb0076d79e063031f725bf49084931a89d09b0055f3d7f03dad9c0302047c435bb500673065023018892137c7eede09ac40579f16bf95068f70331cc75d4a3ebd50d6c7771513ba4bc0dbdbdc17d9c389323b1f69fd0b2c023100efc451f8b8536ebbc3e2c42839099f04155c4cfc2fdfb128651f1d6b3e6b6895cd8852c02b6f36034b64f3c4660403960302047c435bb500663064023009d6542159098ddc2254bd59307623d9e1a9ce2aff36681148124c8ba151ee0201cf515b465a869b98428d7cb5d69577023007f181d08f6ddaed915b36f90b86144721823468de8f106b1d92c6ae074f6ed07a7609781d224b2425609ae17c359c0b0302047c435bb500673065023072ff7ed5264e7f460fcf8062b540fecd9e3a20d97e9ff74338db46fa3449cdb2150ed8f8a8ee6ccb4d43634e04883ae2023100eafdff4da270e05ae0947a4123b90cf81a2d14053c87db2a3d497ff024527442b0aa895580a980a6ef49cd95141b483c0302047c435bb500683066023100f168c5019570ac83724548a65c1f4a6ef72fc042df8b213e1d0c38d958ecba726fb88a016706c01d7bbfe48329cb34ab023100c43b3da2520860673c6f65d6acb5f645f9df013df43b77ab8b6be1c8a655382a9d3f07ae0a653d64f102093b4d144a1a0302047c435bb500673065023100ba2c9d166e7df4bf3a3264ec73eb2bf9ab7553a81ef0624fbe655c34f5b6ed0a4039edce0a6bde0af90a816e5dd1db9f0230101025e704168ba5633f2aacb5758684c35a1099f759921d2fd0e5e44b6f148a99ff85529a05d87a1acc82c9bb94dad70302047c435bb50067306502305c49805453df39b07ec1225c003f53f58c1032db6a0deb10cb014844cb53419f445342495a3cfef19e8f92b4bf50710a023100af6bdbb396d8ee0d4519e2941a8b3e6de222c37f47e4fe9341fb95953d525434ec00d05f0488de6e72a99316006e1bbe0302047c435bb5006730650231008f08d82e20d15ac7309beb9a50df23d5098f5b1f536dd6089c519c5b050f03185054afa6a809eb664801b6b7b10cf862023012bc0dc5ea115de0c06cb005c9f1983d2ff289427cffecb8bde334ab553e57ce1c5816788fe3d455623b0e772acfb37b0302047c435bb50067306502307194695a2cd51dab27dca95fc1677b822db76e20b38f4e346bff608190fbf457406e8dda29e9b70a22931501d25f1c71023100833c6afe7bde2e978ce2b5be81cce5acb2273eec480beba9e48b2eab010e3961f9405f04d297064d7495c53697be8e310302047c435bb50067306502304417e1235c59570d137a4830fbd84233e020306bb96cf9a1ab79f01941161eb9183b63c9f1fc2b1e2ca3ea561d504f55023100910ff938ac43badff2ca2a0d4c91d164853e65dd9b44c03247999d4edcc8b59a6d2a34ab3313ba8a75a31746fb6950f20302047c435bb5006730650231008514893ecba10310ac483f45faa0d0630d18f39c5e282973ddf3c54de9c8cf4f4c908f5d24462cab3f8db12f78493fde02306c48e397076e7f913c3d65e34085ff04d712fe58ea1547aaceb8326f611a5dd05e037d7114fdbd1f05badbacd1d473f90302047c435bb500683066023100ec0f3697779c0298a92839ca911656e41722813fa659db8e28ca95e4d2c75c32ba555873fee9eb1699911dfd949a866f023100e5af8fc6111b27cc2944bba8a956f17b8e8d48bf58f5c874ee05ed088d78c24b4ed808fecffbc90528ad0f24e4983ee60302047c435bb500663064023071dc11fb750531fb69a53f76dfc1007dcce411e63f47d2d6e02b21fa3c7ec7711694d9cd4f99854e9191d551ae56dfa802301235ce7c54f34d1273b8db7603bf64e89b4b17e078b8ad2ad2c9ea484b8b647409fb2d7c5e1b894d78ec5ac878d208a70302047c435bb500673065023051c4e204a0b98e05c751f67df0dc22a2ec827c685a46a6cc69df251eb123ec9fe962f1d370dad1e3ab8acb70f66da69b023100bb22eb0478f9dbfae2d5cf73dd04587166a93e51e3344b2abfeabf111fce9c2fdca482364d0adcaf4c06beb76c53d06e0302047c435bb500683066023100cecc712b1875daea4a8faf191e89a2849b196f5c0f339d18cec69b7eb3aa70d59ca31148ec4bc9d3460679001c625889023100d8cbac1105d05e18dc34345cd53f2fb4c2587dec339ff095d8ea06c165bd9fe58a1b2f9a34ac3051a4a4ad0a4d3020690302047c435bb50066306402300a841009881a28bca07313b0a8f1bab297f5acdd1364ac7593f6b274119eb8377b4c95f7ae29cb8f54b17cc3ffccd55702304d2754bef91b306803af45955ce0646652fb04cb01d45c2621bb3533f92a86420acc16746b551c3a5706b6dda6a268d30302047c435bb5006730650230126c8e8cb4e235d39e0c45a43f2b396475d09321802c99bed693271ec1d99fd4aefc916bdec1197fe350b83dd496548a023100b3bcf34d486b090cedbe4690cf56b399b30a8eea54ac318af0854cbddff4cacc8ae3315327df3224a2b7e4159790bb6d0302047c435bb500683066023100e7d7799aaf83273f5303d5353413587921e9e74a5293b000e4eb685ea2558197f4ca177e9cba8dcf2e8886b8bccfc635023100b6f52f72a4ba4f0c520e12f62b265db4ec487738cea9adba143973157bc231913edbf7a9718eb86c7cf5908c0a3d50ca0302047c435bb500663064023012c7919493d6a695d665da4e01ceb150447dcd7da6d1ddea4a42f0d69379b354fd09594a5bc6c2eec0f840a3a1bd8d8a0230183eaadc638eeb40af0c98e6703be671119903d2e58b95e2851c044fcd429167a5cf68fb8ad52929278c1617c3c359fe0302047c435bb500683066023100ceba466d60254120abd42a7cfb0c3c9fac568c4c1e138c6489b25a5d81f2700616be7f5739e4278fc0afba44762b1894023100ae7c8449f147fb1f41378430c98e4e1fdaac66adef0493a56970d86ad19ec78df9b7913171ef932a19a9107c86edd8420302047c435bb5006630640230308e85d500e7ee770f756c8c6c57a549750d7c6d3a97893f6b7685b236579e0b8db366ef96bdc3c2d36e6211e2cc5a4702300ddcce4e11f11f38042ecf29fef7dbb096c918c8801ce231eed71108986d86ac2e3e8121972b74309a24384a3d54f39c0302047c435bb500673065023100a6070e34cc9509983557f03df8331d27e1f3a7b20aeb346cf0d4eaa1381c39d79eebf31ab2bd113096905363aa24e5fb0230398d31936a45c3edb5668d28fe97806394537647e44db2729261af5cad7b07423110ac913cb0a74f7c424656672735260302047c435bb500673065023100aea55a933d0beb1ca2dbbae47adc4630652379c6f9d2aefcffa52657121a786fe5358d8cceb64e279cb7c0c644a146e202304f6b7deef85c3991e4d7fbe594095869b100043d047a64f4567c97bf78fe9572919bca5257ef6737c1edc6cb6f3accc70302047c435bb500673065023100afd41004556cd21cfdc5179336cb332569be65c0459c71dba6d87e389199f67d729f0a4bf5d63baf235d512d7049d27b02301ac5babcc50351a211fd9e892ceec327f6bcf1f937e4fe4a93568e485451bcc6df59e5392ea3403393f8d79b63ef8da70302047c435bb500673065023100b5ab9f87bab6f89605a64893f5e67e8491991dead576238bc6f6c73096091be2e758db5c4ea6e49a63258a0817c7228c02301dadbd926aae8d7c2e7986c9072eac2bdfa0dd255990d728510afc57f67af50fed4afd5df68389d86885c807d070c85a0302047c435bb50066306402304cf5ad024cc8a3694c501db21c90bd15b1c5ce7613b4268ee4229fa26550e3fe8605d76139a02f8d1ef774400ce321a9023076e340dc07a210432b244040fd064453f6cbc6dc917540c7b85149379742903abdbd578eb8412fb3acc2cb04b1ccc9580302047c435bb5006730650231008d405a81b5c3aebe50c7a9e32eb2df340b7fb766af93afb307c7bea18950108394d1322a9c392d08fd989cdf47b1684d02307e002a4514226150bcf65b35eec901a583ccc6813d3426af1a9335d5d5408f4c03e4d2bd267b0dfa32bc5d07c5c205cd0302047c435bb500683066023100f689943bfccebcbdd3563f592482c1df6962e1c679d9d3c703b85079f078febaa94675cfa17a5de8f2f522a4bae0e1bf0231008531646d473bff36aebd4acd836b135750f695ec4201d873ecf3fbe836f4e51cd0fbe1f8dce07731ee2d90c20c2459d10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023048e43e3b69d372e7ba9e14fcb1d79470ebd466d91d91eb0cf3d32d1c3c1eb938c31f8c367bdf553c36c0608c659e38e202304a20e2387ea31c7449f858cb7beca9e2103d16806a147db11abe25a344c8d228f64e515815dd29bd52269519342efb620302047c435bb500683066023100fa1b382f0aae77d8c1ae63e9b21eafcf3eed42801a5920c894c73823db17e3246e81a49d6db4b392169db4d7a2fcdbd2023100f7a8f9a7b12f8816c0e4ea12295049bf59d8e6b12aa12ed6b2e1d5ea1acc2b908982e47304d7c7b3e8c0edcfe17395f10302047c435bb50067306502305ac3ac4ec071280fc33cebce112c05de7028360fb633c744c5391b02267d7cac40a656e8082d977d520f902c9f0ebc0b023100e3fb49bbd21a5d3905b1af30886f2fdac03757054619bc6fd43e7b725fe48bd2a716241d75ac460c9351f786d4a816610302047c435bb500683066023100a3a5e2285b6deed7d8ed54d3e096de138f4cdfde1099535a91655e4aec5de077cbfec5e94881de1fb2ed13d701d981d6023100f250b242ff091691a1410693c9c5785c88851cc5d6f5b0d92a7650e98d30cb5d2d78c81a10ebd9ca0ccb07d8b72eacb60302047c435bb50066306402300a6e18b588dda35e2f4d50f2267cde063bca2c1597844ed398950db9c67f81a4f7f2a490d8421ef68264ba934be3a3bd02306ed047f64567a1cdc5cdc1ee7b75d291b4d37df6f981c5e534b51527fb9ed7768cc864791bb10cbb8e18b24f97fff5b80302047c435bb500663064023079064330cb604ba2411dd9035cb90bb709ac2fc061ad3a69518ab0b41bc6b5412a570189b2deda5951b7edc304f182500230133d33cf33014a6b0d4bd8b55ec681818d52ee379ea272071b1f0a31b70c935c6379835b7f6ab6e09bf7c73eb228d9240302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303baabec6991c4c6897093d37bf149a132d3436610c4b12b160c2ed3ea5f6263e75eed65d99a362bfdd1d8bbb4119d4cf023100a9d469e49fbd603a43f3d6ce53dc32984f3522b903a79b9627f47ce09be626052b2853dbd954176b9907851effcd216d0302047c435bb500683066023100c7f370d61549532212469c8d88a41cb5a24e8a8307be86acc72b296eab7deb290a34bb46a91f3823c02b2ccb4f3ad7f10231009e19e11f84b1f3557863ff38898b4966609cd987b038df2d0438a01ef529ba09cf3162672737b17d6a94f6a88449b0270302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305349ebea5d5a652fb7b341edcf52e22ef17cd710c0ee46c06111a6c19b96537baa9c17300d847b0e4d9b7d74d7b6ffc402301d5d890ceb65167417e16cd90c3e175f0b5283675283dcbaf12a1b4d1b94866afb92832609d7a1cf82a2ed760acecfcf0302047c435bb500673065023100f0c096782e8d938acb0411a2bd09c93a2f2cc22018a47f274630abe73dd515776806c021c6af57a85fcccf91396b8b2d023066972d7485c50ca2ec128fb018ddb71f47e0d9199b17baa02ca731407dc70256fdde858facb3e0b03972099a58b8e7570302047c435bb50066306402303b5a4d48fbb66ac15dd2e72a0fd14670d429dc81ada953438be1a6b4734f27a6ccbf0ee34518c57a63df66a4fbbf77ae02301fb9226c0719adfcd1ef4502173384f5f5251a40f8e456a9037906a2a8f2a4864f50dab2c26fee4dfbd25fc962d1a0000302047c435bb500683066023100c211ff7bfeea354969ea889af813868345f7dd04138a75c09868923f82fcbcb0aee766ae7cc7f0b4f201dd7832d4f868023100ff28c76851b2a08492655bca4dc03cbab03691a9b78cb1f21ca41d6805f0e3ae27283c0411d7e2e1e512f7bc034c2edd0302047c435bb500683066023100ffec85cf42391734cd8f0d5e4dac1c5db5f06b801513e101dbc0897f1c22453c7c30d81a214a108ab2100427e8310987023100d70f50ab25a7c6d7501d564310520d42a7bb4e5232b5bd813a6b900a3ff445396a4c67abea78a469f67486e5ad97b2ed0302047c435bb500683066023100d8d0825a46856ded3a4a1ed644ac51f495dc027e851aa75c59e79bb6d90f5d1c94fcbf3a133f3fa5d5baa1c6b8e66697023100b76c0518e41029bf2d17be93eb382953ebb62135dc6208deb9e182a03f81b30c88cda5620b52c62cd9437cf34501e8760302047c435bb500683066023100ebcb342931002d497523b544d31aab2345d92313ef3a543646a40e12309b543c20ee9a7e37ffa009108c23e5d96a4637023100f062eeca5bd8d1c0c9e44be26702c3f8da29897806c30b0d8a8b76d23738f1e8de6c675d679c55c0b5610eeef9fd2cf30302047c435bb500683066023100cf27506bdc095fd49823669239637b6d9bb2371a59a0ae2dc36d1013548eef74d1b87681dfef8df3b92401c7896603f3023100bdb1b68ea5785fa84ad9dc86ee1a74798c3a3628a4d3eee196857f8ddcbbb43b04b251aa5fb9164f6e7d29ddd2ba94ec0302047c435bb5006630640230721985cceb37f8f736eb5b6de008aa012fa700588a4bc319f8c334d0d029f6b184a9650738b9817381a1e895f88cc1680230102969da2fe7bcd382ac57a086f5c53154c5bb7d56f0d09d17037ac30cf7d0ca394e767559343bfdcc960cd645a524f60302047c435bb50066306402300c696db6be40e85affe45ffc933c3582095c441264b368dfaa148c5f896057b1a43dbffc30ab253614412901a34da6cf0230594477815f34825ee594be20943533d997f2d20349c328d6ae1a1cc9786bd2d6b05795a816d498363b48bb7a34b0e8e70302047c435bb50066306402302943e4397eeb087cd5033c1344fb578d40a92b95f19400ed8dd1768a02c9145a225632a3c6f7833a78387ad0c27ef49202302bb96a610058f3df9dc5f9be45e8d9adda20c7c21da9d76804ce18f63da61e5823b423cf5921fdc3c9c37852ceffac780302047c435bb50067306502306de57e8a3b7bad989e0c6b5b07e755837c0625281ff0f66b8a93c51d56b4b7be1066a313409af6196e72b0982b4b379f023100b51522548d045fa420122e8f184f2313b42bf758417bb13c352cc1b38c877994125bce9f75cbf03af798eac1f0acabc40302047c435bb500673065023100d54b2aefc9d4be688a800cdb45e684751a13e518cd9cd54ebd679afc292edc04d3069a915792441db756ca69e5a8374d023008de92e8a581254e5d1b42457efe36af9d10a59dd67db710c0ce338f6a3b7ea0bb71c88722c6438912f3908772b9c49f0302047c435bb500663064023012fac187cd794e41e318ebc329b0a40752af10630d9e665de8dd150c211a122dfd446cf1426f7f7ad78ba4d0b9e08cd9023022376cc008ecf15598a56ac047a59370b505c863298baf1c1b99145a6fdbc005c3018e7ba3594ce61782c08a1b73d08b0302047c435bb500673065023100e54cfccc1f15ab81393960941d7313d474f920086acb19189dd251d70b06c7ef6ea5a1cb429746bac2d6417d076400ac02302d0b93805905ab509ab6f0a78f9c20c71d1c4b8178a42c974b51a2c9f8e49a3318f0a3ecf244dfe190c5fa04d5145dc30302047c435bb500683066023100caa58545984aa36c0ceee778b23f1b2c1e545ff4d4ac0a9b67d43d6322f56a553662be0261c75b467cb665bfc1ddb564023100c7d514ed9f7cb21cef86c4e285cc5c6c6999728fc78c99acbb9f93d5dbaf0ec5b00af3985e1f6930fc9bb4abb55d3f940302047c435bb500683066023100bbb4e74c28f005f8ac528c8946a49ab2f6e4781d0950ca8173542ce9bcac9ee989b4c01fa59a71ce3170c86a27824cf7023100ad24629ca712053f5973df7883e5b186bea92d6286c5879a216de103264a011a0c5d1235d5466b9fc6284034da0c9a5b0302047c435bb500673065023100c8b6e25763aa543536e3ba37dd273d440ee6e5b51fe42eae134dbd8bbf574c0d5ca56e2ce120af127097e0702acfe1e30230362a0d8a0dae0d3a1f3b17b12592c4a7756de23a8f62d0070c948537f43e30272eb2bfa71abc9fc55f961bd37f8f63df0302047c435bb50066306402307e0ba245dc664d0bb534d0f812c52e413554e84d83e62e35d172af2afeae25cfa11ec30831dd738ec6a74c17bab1db7b02306be364d4d1fba1fa035e10c8007461a0ea8ce11d380ac7ba9a9fb57619defa4104cf93e78662cee26b8bec5698456b7f0302047c435bb500663064023032e996fb288ffb581e5ff65db3428aa99c54130f06caf92e4b32bdcddc668ae5927aed905139c4b9749c292e24e566f602303960fec589019441d095c792e360bc6d274f664026c2f36e1e28aa1358e5ff634afbbb86efc389a1355e252b96f5939f0302047c435bb50066306402304d0908a5c4de5298b52b63c3faf0c7909389381115c4bdcf5169b88d85cb2c4f6c9559d5fb4a868655234d86d0ad8f1e023041c82dab4a23142f3c4f92a199a3982272872d17b60f66acb745e3a5e9596b8be317f9ba59137105ff802e02e107664f0302047c435bb50067306502305c2432eea0be16cc3f3b8f4b24fa1478b4d4495e06e0023b8969be7113b058d55c2db8df0238d5fc7c061995af61d60e023100ba9e5faa2298d5d34147150c71c04bf4256a4bd597edfb1c10e18cdde31a9b079fe4d88bb3b68553dd5ba3cc2cb337110302047c435bb500663064023075e4d9e23d8d9f41b3b1d5bf1e7f1b6b3efb4cc23d803199d1236d7762d245bd52ba5cfe52d236913dfd49b571218e26023054c6c1ac0ce5464fa0f5694d21114b5263e730bfc8c0d947f7dd788979249e616d70c176ba8e312bd83668129e77b5a00302047c435bb500673065023069411adf2e87197130ef702b75d819a972f4cf33ebf3aba1dd01ebb0406fe68bbc3cbd08ec466fba2d08378ba6fbe661023100a19060040e8b92bf81d8d0908ff393bc4d4debf0db0b88a2e6aabebfa80a92204c00eea6a8f0b0f30428aecfddfd4a120302047c435bb50068306602310091179c5bda6ed723883779659d152ce4a46c752dd8bb2ec22ad072423c25f853161c75ad18ffaaa61a27231898b20f7f0231008ac6c16f829a3ab659c5cd4988c5df84d4d319f4a0109fc95c998f5a70a2ca19dd4df0f71ce0c85ced45c3b828b474f70302047c435bb50066306402305aa0a91f00d43426dbd26c8116e2e04ca3a27001d0aecf0680e10134edf7eed50c99590de819fff8c0c2dbaa6b76995f023056c5a82c9ece9b301f484c37461630c8917bc53d17660a9a0c1a5ac01b60c8d4feb77dfd16fb9ee4b0fdb410c89f3e010302047c435bb500673065023100a16bee79779fd832fa3eb79d4986b7c62b01735cc6a544e6ac7f21bfaa84f638a8ff14814709948b08d3adcafff8d0c902300a916caa3d9a50522e6239b90ac3b5f5ebe7025b14372502f30ba8fdf880a323c4621d6adfe986ced6cfe73a1d9e2b7d0302047c435bb500673065023100d919166b79d277358f8bd809d0afc3e255b1fecd7c21a84bfa41f4523741e42fb7f95d624d5657d19e19e959ca39226202303af41b63346a7cf86197c8bbf0c537359ee023e1a9acc074d6c36a2ab106f0db324c1eef1f5aac8eba1c34b06d61d07c0302047c435bb500683066023100f5924844d24fa46356a6a5739b24ef38f3dfb8c0a45e5c3b9d1f8d5efbd996eaf39731e2cba649272506c56e8c5bf75902310083a5b8e585c7562a2572c459964d9a37f3d79068a6a1ec1a6d99e8cd48c9585588268fb88fa09f1fc9ef161c58227c500302047c435bb500683066023100ddc88bebfb5c661b5e22a6d6d2a642645ac204e318391b61dc19764215382f1945635e82522190766527ac48d56e6e5e023100bfdb4ff27c1b0e58570af7168cc5f18cc5a24ac67389d61ef133d853dcaf5d0410a535ba2632e7c225f5596a48be55390302047c435bb500663064023078611456cad6c75d6a24245853df6487a3d82104c5a1cf8129661c5809ec37d984ec9257faf4dcab7e141e877d917c4502304e7303055f246486cf7b2ceb33b3bceabe7d7d5b8a52551847d82e7ed969adb0799fcbdc3e233c131e1af4df2eae89ff0302047c435bb500683066023100b99c0172ef9a307f3b8f9ba11d0df98dadf8f8d043a8b1784cbfd0ecb73a9e42b2e402fcef97698ee6f52c30a362993e023100e0beab8f27111e6878a658bbcc6c334fc622f6fdab3ab6dbceb0420e68272680bbb0bcb91beaa88e86ff076899e2875e0302047c435bb500673065023100d9753b88e048208a05f02f7b828d6e14906541e778afa4400c5c024c177989f7c5023da8064e1d5790055316155bacc9023072df608275d25ca0b0dd6100a5c4867a18564ea10ff297b9732b857367cf681f25b5cc31155022ac08a0a52751ba60bd0302047c435bb50066306402305927b27ab1c1a2b8e31aa4a6f54df34ad8c26313935b6584122ab299f2c7fe557d86b23bed7b6644f1d315abd1e6ae590230233aa79f87467803ebc1bf67b514020b71ad995414876029324e99ac78296e7703aef6a9a8b90cf232d63be6da9cbd180302047c435bb500663064023069949bc855269fe2db828fc65e0f573938a50046874ec9fb0920bb88847f54d6db384bac1f542e1dee2f3952b5880f37023016022d72bb61469997157aed7ea022316180b1b65e55b8b6089830183e713bf20bb2dfcf4e89c27f788adbae5b1eba800302047c435bb500663064023019edad11958616ff2dea254788880fa4df38ce15133ba929384244c35dd281b7264014f834344f26010d5e47210d04b902303369ffefa5e9810c606bd1d23c3bc26139a56743b1e8483a8a56aa099e4696ed7ce6244719a3fd597517873653f893bd0302047c435bb50067306502301ded3404730f7290dab7557df044f3ddf691e669cb4f872c6b1534fe7717e8ac6bf5963a3500aed41d3e81b814b906c9023100d6b6f14ab91035cb3e399457e834684c722166ffacc644cdac664c8d7a1a7220f3abed235e4806b2c2fdf3d73b8ba7d30302047c435bb5006730650230335da08652b8426c2dd1d4c234d73815464b5c2abd3e6ede8d85c54d187bde59e0f55d125b7db961ac804675b6ba0db4023100b3cf0adbf3b1c7d128a35e5cea4ed1fb26b545dc4f8ff70c4ba409b3238723f09342e3e0617a0bcd8ac5d2aead9aa1140302047c435bb50066306402302c858bde92f75899ad41b02949fb3bd0be2ed2bbfbf8f797eb251459267c6cbc1193e48f005acee9e101e28ccb71d1f0023078e9bcee07a986ff3f19a72a9330d1462351ca26949ec1e35139b129ec4a4d07f5ce6604220052bb2ca5873ee927e4610302047c435bb5006630640230535bdbfedaf38e161bd811ef3a548f7976e293bfb5af8e02ff21f665283b58ddc29fde0cc81a161da207204cb6edf719023019c020a5eaab58fb3589b788e43a03b635c25d09e7e9cf00e812cc0438421d7809d65f810de494429409e67c25c7a3c70302047c435bb50067306502306fc218c4bcdf7807aa6d15993e1f4b4722d49a63554ee460264dd45701186c17176032dd4e280ff3bc310d02b2aefcb7023100b2ff47ad637754c041cb5df7cd48ad6e74559c5e49a79894fcdfc0f4efc058386a1e874d93fc601b8bb4c1f94007b4b40302047c435bb50066306402301d7a54bdc4c062151216099026ed508b1d3989238541b89fdd7f65ba16f68940bfe1c32f0040095a6798528fc9db5f370230571b694116dda28d6b7a5ac720e4cfa5252426604bbd853019c8ed621afbaff8c836b64d374c4631a5495fe98814c1000302047c435bb5006630640230092747af8b22997725f62e5bf5cb1532a5f9ac5ba58b97c04efd9eaccf9e18dea88879028266fe41968105bb3d025eab023047859ab5b90bf416b4b0277102d44d0b8186f67e63bcfdf3b87e0916c822412a83109161ed5d7bd2043ec914c740a3aa0302047c435bb5006730650230381c0b692bc2131e622f441a55331cedc91626bf3294e517c352f131d880a23a55a1f133a439c69b41e82ecdeb9e7bf1023100b71e6f4137ec827bdcd83b5784ecdc6fca0b33d5886ea1b628bf2e86c9824eb78e7167edccde88fcdd9d8ed33acc1af10302047c435bb500673065023100e7e5b3e66396bcc9e55ef84c74cc0ff3352adf7d133183a67b252e8f98fad613bb48814f74c6eef1cd39d2c1e8b051020230725ec7d2585946847f45b466d6cae37445f6536cd14ec61d3d3680354830734a9ef910069ccdb18498b2553eaa3326d10302047c435bb50066306402304a2d00fe7c1409efd6a14f56443df91879ca1e663d24084a47a73a43fb9c3c199297018ad248e074be96a53d63adb19e02300bb87fe0c147b7e71eb9672e328c5500a6805c27653161790d6749edc0d030d3ac299bf742b6db455f8100b9c96e0dd40302047c435bb5006830660231008d2f0ade825faae3e1c595aafd886845694292f8e10399a90657f584b24706a4e5f39c815c54c2cf83f110f2a02df5620231008ddbacfc305aebbe60e34915fa9b2312b20a3622cddc6c7019dd7fdd0bf96b229dacff97520b46971753683f1e1ef4400302047c435bb500663064023012a502599731beec4786721aabcd9bb177171f95bd35550c4747340f50d8882cf8ab64cfe20fe133e1ba7848dedcaa6702301d78b93ef31aa70660040d914e4e224b6647dafa7b28b98abec72fbccd10c2b32ded56d859f9d1c64320376ed53cf4a00302047c435bb500663064023006c170bc2e75ee8a31d0cb1e15581b23f6719e2b949a2fd86dce7b3f745c71899ced130906d6dff28f56ffd4ddc7327f02306f45b35ddc5b8b18f7af7b12054fb09d36920defc45f8c6199fc1b26b997e6920d018f53879c8386be873bbe3174a0940302047c435bb500683066023100aa115792dad0894e35026af4ae73567d2bfe84042c9096ec71f118a54e77efb58c7271e14e8f2dcfab7ce80d26629e5c023100e15dda45644b6d53d3d845c022f009a2fc10a927bb64cbc77471bb3858c21bb8309f53a684bd362ef8fbca2a05afa9100302047c435bb500683066023100da55e2684b32fdba016f2390d39d2f574038b1645c48c5d13ff9270ae0ccef4cd7398124d71028c98d89ef90110582c90231008861661395f69bc82ddfd8ad60312a1dc41c0b27f297776e2f83b7886386c5d3c46a5d5688f47be00981caa05e1438a60302047c435bb5006730650230086ac54dab48288327db62c4540369cf699e3f01611d006185c594f0e4cbbc6069cca4d8854fd6c4a5fe0d1300d23fbc02310081d2c4ccc48090175c37b352dc8835c2b04ffafd8a70b2fd65dab41e9af6629352750150baa3f0bbc519b5f6e0d36fe40302047c435bb500683066023100e267bdc093bbfd5748db24455d8674b86c8dfdc36f808c65516045a99193b9a6d591302b4623bd88d5d9d92983b2b234023100f672602b9081b2f0fca4138889ad49a8c8813e63c1b3b3cd0a0ea42c9b1aa3484292dce7d233ffafd041e8a2b32afecb0302047c435bb50067306502310092d6109cd998068dd38071d44e8ecf615ee7352cd9af9898a458c4e587793140f1b7e9f4ea9a60f259881d98517115a202300f4bdd47421598a32ac169e27e0cac7c07223e9e2bb12396fa8c2d85cbb934da2e770353daf63170dae19f824465fac60302047c435bb500683066023100b96335a5d41f814cb155d868a257e0bf6216e1dd2d7454fd937dbaf6b7456f653c09d865e0fd5b18f1a343f1301e85e6023100ac224266582078854752ca696f6ef5c15e306d4f664da1dd6be25c74437ef63d0cc8c4d4fcdd31fafaf97066731970de0302047c435bb500683066023100b85f00908c92b4ff7c4a14f242bcf732b0aae40dbe9bc5f13d8a1a757eab85278c8d4bb4bbdf635d63958f9022e563640231009f76e183d632990b6ce1c9d1f223162345c4867768766185268d2c12766ca030f6178e453f269b1477dccad89d7dadd60302047c435bb50067306502310099d1f6ae2bb8a8bb011e37f6f4a7045f2e6540fde56cdb10d7baed2fa247ab4e3467ea7d85ddd16006ae29f6c343767902306206021c908e09e8d6c3093a4fe6f78adf92f4a95701aee0bda621b1d1f3e58df35d71fc813603bc693cbeb91e90b5da0302047c435bb500673065023033dfc96560eab7b9e8be5cab7ad61377c78059c38e6e7a6def6aaa11b782f3aecd22cd18fba60e11d44c5ad65919e6df023100e6e2952c521bc93573cd3711ea3b0a47e5b0484898d498b0870837c0f3e86c71005e075ac97290c0d0556d744d44cbed0302047c435bb50066306402303c00ca8d9d3c6665154b9836b0dec23a02132b6daff68a360100dfdcf989ca98f4568b9c18ccec476e86ab70f993c70802307aff2820130a9d13a7552445493d253ac2afcd6ecacfd46c09e263daa4b4d6f70c207b5c94ffb18bd8c516b9a8881cfe0302047c435bb50066306402303eb4f38834f7314ad370884fc7cd215a065ef9829303046c92bed8bf61776968e912a422b68c32ea4d48292d45260a4d02303adcaff1aa25a1c7ac4701a8b2a478a72227850643fb9d139b3928aae590b77b37b1614a15fe25417ac7207b355827a80302047c435bb50066306402307255fe6afa8881f6a82c37d969de0ac14f407be8e391d6fbf8c6562aa26dfd88da01fff89d9cf941bcdcdfc3024025fc023075f433c638ae74f2e481cd641c9af115b70643f8409ee8c41db7cb13617c89e03844670c812ccc11cbfd8b82f6b11a870302047c435bb500673065023058441585e5920fa6b7939588bf2312aad4a55f86bb7be62c282982f37ec097efa15629f55552beee75751346c09088210231008a6f9a10ddcb1774690614c98423140fdf579d0e09bd876cf36c7471ccc519b6a253f97e949026db9cab2c2882b615970302047c435bb500683066023100ba1adcd7d993b93221b42017fdaadd952cc1b021b6dc0d84f074573c2deee95feb8950396d47b85bc56ecd8bbe2b3c9d023100f0066996e6270083747489cc581eee18e5e03be7591b6518d369598e4f06414e8062fee75c57abff6801d3321387e1390302047c435bb5006630640230480de569790906ab6a6565936bcff9c2107929e7b4dcd7b2a07b1d60281d44275395830f102c4cfc06fdcc8971a552620230542729b7fdadf90c24539ebc24ff51aae6780706557f3e28db64fd292e0d75db0d54effc0e15c240787f4082d740c5040302047c435bb500673065023070820f723daf25d09781aa4cae83f2159b1c535d2cbbbc0a15c65376d510f27402e596a280c93f5fd6f5b5fe6ac0ccf2023100e1dc0050a572b5e584ce40aacdec07e5a09d61e27de6bed503cbe3ca90d89e2e80823fc4727e517f773137d991d533980302047c435bb50067306502310095a445eb7bb01112627427e66f0a1e00107e7fd12d02117f4e262de9afa052af51fed05d3b69b353746ea7182f4a9f1d023071b2d9380f7e6aaac54f01230541d27332efdb2ca82d9ee768a4c663401ffc9b4b039ba34827a0e9e9ac5bcef8caca990302047c435bb500683066023100d59af75b41a54f4f1aa0512911715973a4631db57ee5db3cdb5364c1164c3a12792835bfd7ed46ce3a5d00ef424c378d023100e30d0a87a047ce35e01420c9d9a95aa2414fba7ae32da34ffc2a19a5534ab1646dac7ca23df4fd17755f37f6db479f170302047c435bb50067306502304c91a791b726e9da11e3708ab250f026867968ee3fade235b0c8513a96821b9803332386b48768719fa2b89f175e677e023100874a18959c92d751708733d8280d547e493fbdf1bbe065ae37231a6f7fd9fa1e35307ea8094978dd3f655735fa5abecd0302047c435bb5006830660231008aa4ebdbe99ce39bf3780533523c022a42b6720df6d797ed0a0933085347afa1d5fe7525b101095267eef77900281eb10231008e4b2840d276d1f1a32754401dd812ec3d8bd66ea73972af6ed0e487e8737fcf3af98d00f32ecce017fb7103af9391100302047c435bb50066306402306ba6048635f11520d45a81083e5564fc5c8939cd0559455ff040c0bbfea50380109adaa03996eb654e0ca261471d4eaa02301b903390b2f77402694d6ae1fd780567e2414595c7b44167a01b228a8545d690e4a71e071cc7c25cfd15e1c21f8c40bb0302047c435bb500673065023100fe47db0a66d57478150e203f0ec9ad63310c0139324971e9cc73f4784dd58367f51d023ac5afafb2ad718f02eed3dd9a023079c409052fd2a022f2168352a15edde099b542d065fa91b70b9a6a9e684cffd6cae9e22a5ed4d18473783fcdd433d3930302047c435bb5006830660231009772d8ab63063adadb76a30c4fbbeed5b916617268d52cbdbf42bb8766f8599fb748f601257a764323362d2963ba7bd3023100fece6cad17aaef4caa800c1a78a41d83cc1b2c09c75ab48fba49604e4dd555f9c942e1b9e1c56222e8afd614ffbdb9bd0302047c435bb500663064023073b7420d75b1647691be6a23d40f2ce6a7088187fa97774839e28a7357e8a83561e80ae12cd9b192d3cfa0d604b2d12c023038f3af775bc6a0b19aea28ba4fcd36173b2cdb2c97c190d6e9e3eb9458177fd2595528919e03c5dd33996e39717c9cdd0302047c435bb500673065023100af5fa7eab6cb2eef84e77142bb60018539192f4795b536744a88eb55ea8a059cfd0f0d9f02e830858747a8fd7ced301802302afbd80e7f219a619a241e926e76445caf5cff1e6a86ff3759c9b381c32876ae4a2a5c820f59c9de47550ec09e61b5ac0302047c435bb50066306402301f4f2900e16790c60fa060a9dd4f7ab72337d3395cf09cf08c39f60e271da3a6dab5f6316584ce6ad970c798e3100127023010bde98d22d682a455a310a757fd0d6395487a439b0219dc2626c9d333916132ecb7a68db64de9f7514fe6a0aefd2cfd0302047c435bb50067306502304fb81e5949220fc394dc6d92132419a5a065d12d899c7a2ebd1f0fad11923a278f9aa0e76d57242eaf8ae24d04f2c2ab023100b0f3d7bfdcf98d1d304cfbfcffb8f870d8d3baad2a1fc227e7b7a73eb2a9c338851670afd7bc3f4461fb997605ebc3920302047c435bb500683066023100be7d277fa1dbbc1f970bce495859143990c2bc9fd46f4c3db75ad1359c2bccc6bf61a16167f23485cb1a74fe8183c91a023100917f309e4afa7dcd46e6aa34578f43b84df7c22765443c30038775c50ec77289fa4799ee5ff942d8edac419d89e8a4e90302047c435bb500683066023100c50ed345ee235b21541fee46450bb23b7020fe9811fed98c2c29fe6cb936ccc3b8a8077b1746f10e009fe245d0ccba8f0231008f724fcf9820889b751a245a2a03efa5bd12efab1b39da3de71b056d626739b9782518480697e90dc855f9a9270bd6f80302047c435bb500683066023100dc854777fda096c3c6daa5c1171c32b8730fee618acb0210eddd8794c19eabc5e8a1311b88c0669c4efd604ed56338d8023100a0f9bc428f76aeda0c8260758cb3de8d184ab6462697faad4b4188591e847657a692c80accb9f13b64f3db80d8d49bd80302047c435bb50067306502303cd047ff03f5bc02086a3a8a669e78f46814fdf40b36714e480f895931f1953d484e14dff681a8515b3b30ef76f95b9f023100ddb04db47d3363731066cf0ddb6adac996e3b886fdf162ca8c91df22737d7c10fd159c4b0d3ed44390c513659ffa165b0302047c435bb50068306602310097e76e7a605d8b846d0d284112927e59dfda4419d26abee19e1f83c821e5ac0dbbc80be22944995d2f8027fda32b86fb023100f6e4ffe05cdffe3f4f193e72f361870ebf26b94e02cf563a87fa8aff50dd84038c172e6cdd65329602e0c897a4162da90302047c435bb50066306402300d04e79fdbb844f8ad07065cfd0a3d27304f334bb8e91a90b7a64612fb954626931dcfbb01fccf032104a306a0536d6602304032d51ba6432a3c8daa2fd1cc9776a7fbdcafed0f2af25fde4538e65c6164c8bf77efd1700af5fbbbc522d313f0aa5b0302047c435bb500673065023100b61cc76b7a338782c9e15b12f3e03ad6f8ebb0a4c6974ba748f162bdd844820f53d85bebd516ba0792809aa6a8e4b50802303c7741394a6779dcbd65ea2eefd49fec726d99376b3479cb9a03630c7fa601d2d0abd1a2c51ff8eec5bb27ca822bbdc90302047c435bb500673065023008ce14ad7bbc0c48ef5a99900e22bac2ff61388cb474104a4a85899d256dd39800e2d3988f54bb9b6f25a28cb6c36ada023100ea372d3232cdb3f709b7d04937997159386f748849afc18c59fc5127a02daa1f3588fc1c3f7fb39cf05446fcf01d48e30302047c435bb500673065023100b24b5f74373008ca9e55bc2a289871bd9a301066ae83a2abf96299f444a4327a5a36c847baa954214c6aa1656b809add0230621f9f77a5a0c052a69bea9948617abe016f2c49e429ac10322328e209d5e3aa1f2123c5f299a7b9918cbba13229260a0302047c435bb500683066023100b930e2da5b64b223254ff0e2fb0bce22388b5148dbfe633174dfc44bd7406813d46b120382e8e582b95e29f2947fa4b3023100fe890b3712eab75e563e3930c500ac9cea7deb5e729850cba59f9edb3f4837ad93f858c1575f2d3f23d613253a2879940302047c435bb5006730650231009135980dbd592b42728126b19442ff83631d467d12991fb079cb97e0de80a4389ac2b95c33a17373b56d966f0d8496a3023010f9170d19f6a0161e6ad17910c489d83f343faf0e1645850e90498b6d37e486da7a4a7ddd37468308302058feddb3d30302047c435bb500673065023100ee04dc1515cad6f63952e4e3bc98b602c25d9ef8998b41c663bf761d28ddf847ecfe65a3e2f3385a0756be760994b799023001f3ba8b4b55d7c29fab26f7cb30f2584c3135fb335551ba1d59e41323f74902b80fd4c865b9185f5721456aa93eef440302047c435bb500673065023100c2ea84298b6989fb0689dd1f443064b7876817386c1b548d6269a2906c66b0b0121ac4785d8ea354fca84e1ad3fc3f39023053fd294f5f59bc2d6fd473882e89a944386c499b922f2bcbba1e4f1ef76daf138599758d575518d9063cb9593a1b4ad10302047c435bb500673065023100a218c30fa78ade23d93ae9a3ebed1c40411f681c7687df89a1fcfbe3a8869636c3f2f3e1be5f118c338861a8ba7117770230232beb82e59d089b2c396771feabd638e16c9946a3b3457a5d0a1a9a369f31931700334d951158fa4924b43fa96744340302047c435bb50067306502301b9f971844b870a37d9cfdc85233fc647a0c20c45aea03c55f9c4977c55039558066900bad4dd24f6511d04d3358c75c023100bbf5e610a5e926c465277d7a18c76752064c62e06b21802675bf6990a103b884867c04810560588088e830d021365c860302047c435bb500673065023100b4adace516f9009ed7c84ef9820ab669d4b187ff2d805420196915e7b5aae1717bee662421d78b59cf58b8ecce6da567023064e12edf6bc96a1ac95e78673a33310f7010e480cda8f441fd58844b4d20e9dcaf3f15fe2befa8b9c557f0c6666730fa0302047c435bb500673065023100890b4914ddc84c077148d2386eb375974eb479e37b7e7a851f9854a80a0f8b96111cb6413027143109cc219c494da87e023056fe9c058ed0155ce710f202169c19e2c6ba39224053971f34fb789a5445709db71610ee9d505169329798bd2d63d9fc0302047c435bb50068306602310084921ae41eebe1e106fc23c3dbdafb3b2405a8d888f9c79586afcd146a250d5205891463f816338812277c774194fc44023100c1fd3bac4534095f8e98afda627fb995e46d14a5da4f3de3ff25b553eb9f1d612bd3acd604e2df9796003e6ab639575d0302047c435bb50067306502310091b3e6fdb558fafc1c8da73dc03aa4c86a4df5143d36641d74e5f71d52ff732d3050d779b7a3672e1852bcf73552a35a0230572e05f59b26743ba7531228ace12b8b9b168278a220b2099bc3f02c340daf6150337240432b601c084a6f526837955b0302047c435bb500673065023100bfb9269ab8de5e053222ed30a7e2b31d4797c47014c4dbb5c0c9a311f25771afb7647a1bccbae539e5abf6e7df99675902304e2a9ed944bf0bc75151f6c3f26539f7beccbb1189b9a037c00d1760de0483687fe64f7850d9c59931ecf63b30b155930302047c435bb500673065023100bc4457c4954e418f873ad9a946266fec8f7541f9903d118ff82121c73b5cfa5028ddd8c03cea96f097fd72fca504222202301edf872bead82ec796f3ec3b6c841be0572eadb7eb7ce8c91bf286b92f8512e71eba44fb77741cd3c5e550a650050d630302047c435bb500683066023100c628bb8be3bc9774a8e14c0e9f5642eb0ead24cfbff754312c96322daa90652a49e0fe3ee1af249cbd9275b8cbdb18ea023100b4328099b65b7ae3c77855a2203f834100c95ad51730d2913717e7a207645af6341a9dd5b6658f2f94cdd09f3ea066b80302047c435bb500673065023100b0b5af0247430841d734e728dfd4f0bdd387ef363b7ffd0fc0fe2c70d7c78800ad21e588d2a803e61c1a5515d1d579fc02307e4b38a92572185e867d0055786687d03875caa236df9446d5d9c39281d8aceb0be020bd9e9af6061a647e3562c015570302047c435bb500673065023100f2cb89122b043cd284605283e5ea77898e0af400ffa93b6a6a0ac74d6fda80d9508cdd4c113f2016eb6d15acd5353cee02307481ff9bb108c07ab78cc2cdb922723bc90869ab8e7cad43665ca0a149408eb7c1f0777849fd85392eeb70233f134de40302047c435bb5006630640230290659efae2c62cbebfc6d8eeb7a90d60647d0e8b4a8f8e7f469291595bf4e2d3c06ec6e8afb533a0353e4c0b550097d02303bc441c1328377c949882e570f885c3f3525ecab5b56450c5a6baa38b39e504e9429e557f5a8eac6ac6e7c7869c31baf0302047c435bb500663064023010474f3df115222a1cf9393ce2dbb47836987998fb8fd484fa07425f2a7250728cacfefe4e99959617622a1d6555a37e02303c3ff5a6a8d63e85f27d67d669951e79611e12a92a1dc6060aa95326b5a6d5961d623817ff29a7d02368dee87203cb5a0302047c435bb500673065023028e6d56b7df2d27cd5397668c58309040ba47d6d11033c41d8bcf86c156caa5d42ef5c36f2c5540eb2e802281a01e942023100823aa16f80e0b33bfd63418ade5738901f413e3c7668fa885117a3b198b0bcd26b9056c460c388a60ec99c52e4a24ee40302047c435bb5006730650230205d813173a17e69e942e821d293bbfdef3e234281d3ec03be017d31965dc2be076ae0d8a1a976a194645aa6fe683b07023100845199057975fcfc90db4e894312383c83b3f824e7283ab6d10f5b94e8b2df4cb99684cd88c1a54622459cf4b44ab5a60302047c435bb500673065023006d55ad0561e783f0bab96aa5b2471c1d866790f1ce0fa1abcd5b2dbffd7928313d3a0f7116832c76f0784c7d9b3539802310087834e96123f4d31d09e5fd6b64ea67d3eb2f040228cbb73621ed43169cfdbb53df1c70c5aa865935ea37a663e1750a00302047c435bb500683066023100af95d191ba447f6bee3a914116b1853f34a66c6c925bc43f72ea73aed1d2164751b51e87c52d8deb579ab54907cc549e023100c931dbf9fe2dde64980a614da46d89ced71a45ec2559481a63fcd997b2b049ac3b7f2c94f15893d97416669a1054a0040302047c435bb50067306502302fdd9f291bee75dfeba9fe5e6a2817b0a786b29b1b2ee0e60dd68b80dcb1e0697eb78cfdb3ede59310e86a44a40890a4023100b88d5a2968bd4a5678bd65ed118195438ca138857b6c7a3364e2d9eacbbe32e6d20340d44cd97580203bc54af992c37d0302047c435bb50066306402307966e532a29cca8542f2dceb1d3edbdebee45b67f1aafcbca2a30d54feaa8e0ee52e8f1e94a5e375db9ac126e68c1df602304fe3cfdb461314ec9dd37a950dad6167f8b11e2adb2daf3f91785ad065c3d1b8fe1516913cc37e1f053ef85ec3866b2a0302047c435bb500683066023100be3a08e49a96827af42f271df04a83285d684aaa740c2b54521cff30cd199a6746da861712d9c1939630733cce26cfdd0231008cb20382ef5a354faa1aba98ba4e49b585a7d529edbdc64e5dcc1f5e056279e73593732998924f96157cdfb577c720170302047c435bb50067306502302ec4a785d6602f5b7c8a7925b1001a475689876aa83e6f43831b5eb6e8723fee07f1640ee1c267645abb500fae612bc1023100da85258c20cec94b4f43733f220051094fece164db56ba9c8007d29486c42df6006b177d10fee98ad929332eb94e95270302047c435bb500673065023100d2eb25b58a040f47078c44d7eeb26944d993303337ddb1c69ba1c9d1623c6423bbd0051268773a073707a931cf63265402307dd0b9fe818b373cc227bd6ad125fe7245ca206e991a0d2b804abbfe5e4e3cb19476f2f4f39aad0073cca842dd5ff46b0302047c435bb500663064023053cb812bbc61bb5b2159ba5452ba4da1379d5b05db6874e801ad266562c304a61087289815fd6443201e6ac2a640acee02307cbdbf0bd0bcccf2ef212ee2e8221e8e7806b6174d531df2af301269639a936bca04d7e08cf40344e82145ae42d73cae0302047c435bb500673065023100c0422d096cc2b3b6ff83571e858a376d4552b3b76690e5e0fd36afd9bedc453848eb406d37cfd689bd844aade73ea6450230346c33ebd31f7b460b91b579919ab695138c47756896b61fe2125b6e7c3c7a997edc607c0cddbdb86453eecaca5dda1e0302047c435bb500683066023100b9d17bceac48061ef222fb3ca6445c3e882758091561c77080eb6a184eac7dd2fccc4ea71b2961d9d0b23925a5c0bab6023100a46dc86803e345f0d609e3e364cb7ac50d2b0b79644bb1c38577c61930aeaf3b344523f93f7a9f91417e85366edf60660302047c435bb500683066023100d78b74870f3db5f1463a7494b91c01624d452403aee567ff19886cc2bb7a1888cd786926151984c167274ae61fa74858023100df79a05c8dbe19009866a344b3fadb169116eaf79484e462fdb02101fcc5c23f55e392573ae41647782aa62b9bdcf2e10302047c435bb500663064023068dfe87e199fc7e23a80b25fbb48a2079d87fb5edb9ad20b037e93106d254612329e9345d85a1aaab4e373d7748078e602303060bd469f115b30d2124bd81401277d095b2c93c64a051d84dae8606af5a3c77b205bf6e8140474b43c8004f5dac2820302047c435bb500673065023025e1fe4e03c782cbf35cfc94030cf4384384f3dae32dbbe68e5cc02d85535ed926f9de860bc67b28855a6754150ab08002310092375ecab4569ca8bdbc97458eb6a17e3b83dd9a8883891f7b471c41002564accb50cedd7e3992f8b8210bb20436e5b30302047c435bb500673065023100c6851e857d0a00ca5ebc585c2292f92b0f88c6ca20d6d9e0a0f9e034442c6ea67e880995df68c3a259e866ed293c134f023047eef4ee6194b86d650cecc1bcdb6cb6f4d57e97e38b10a34d680513453d6c18af65c8c7e70ccc572a87c2cff6ad4d980302047c435bb500683066023100fc2fd740d64bfe61d47ff76f58892803133dfbbfe1dfe83e865790a071156fc0082183037fe2822ec07a9e59e357667c023100fd555b716b65811442c1909310bf984d703e931fd1767985ee5adef4382a2b7e21f98041555fbdc5342c6b5a7ec325160302047c435bb500683066023100a830bcd5a0d05a610b70c35ee87cec4d968dd8f0d86a4b38aaa42852e6df45effa55a4e655ce05d77e5711ed1d5454fd023100e3bb00aae52ec8f602161443d558ffaf1837d8d583e007f1756ae47e48f60c69e6841f0a0de543b974dd0f2330a84e870302047c435bb5006830660231009c9b549672a1fd1a5130d42af0c4b81c48715bf6ce824a98bb9fb46aa145f8d5f36b92b2d10bed02a99540b9dee85deb023100cea62dff3b9f9ae073e1f0db4acb044d6c4c79b7c8aca2dd3ba4bc2e2c57ac922589d17c83c8a5c0c516897c4e57372e0302047c435bb500663064023051cce9c4758ee59e6ea83c476d9d88ca3ccd122d0ccb90092d3775b46e857dcabce746395f350595c3127c6ebbe53c870230729578ede3ffb4872ce03752a1b4b0af2dad9bd449dbceeac79ff46f85caa1f8d31802f20f27f4973f7b753a1a0d4d650302047c435bb500663064023003507b31a5aa6675d0a532ebadacde91cbf2dab7e4f970eabb37d25f689e615de36f7f1cfae4b37e946fd3a80da9a9ee0230066fba93dd74bd94bc139766b5f2053433be13470267f2efd4d7e0c16764be87067b63062dcc1a90dc27ce129f673f240302047c435bb500663064023007b104f9f8aeb27cff271faf1842ac7625f780819ad707392613c7fe0b7a27d0244b4b3d98df422f0965c0713eb5199a02300bfe1f0b73768848919f13e1ae7822e7a83e9bbdb1c36503891ef4c05e3d309fc7bdafee55f75c5acd002a813def36180302047c435bb50066306402304fde2a344160663a82d33ea1c847d0ab27debe4acd7f4c9392e1c0f884aec6a3a49be42f170bc3e83a088de4b0e2b32902302007aa489ce722e477dea6dd4f6d6b989ac43689cfad6f701d724e390730eda77dcb3cbc5e02529c1056368f401c4d320302047c435bb50066306402306790322c494c648431b0935b7ac1eff94e6e6963b6d11792edc4cac958a176e113e16936726579042e28bbb9331cce74023076d92a0a80e3f507a727fe4faa9baf560595bb2824baa41919e54304a02e7bb520b8eed8a7bd3d9c7fad87792d577bc50302047c435bb50066306402306a41454c9d1a75284765adfad33b538ec58cfc31952f76b98e37887dccc965ad49b2d0fc671b6a6c0b3a6105647f756502306ddf1876cea943ef15b2145c6f47945987a859148aa8bd34caa4796f7a4987eed49d6a6e2038b052a98244280f4fd8bc0302047c435bb50067306502305aff8fe9d80dd05fb20318a623151d55436271c182544df8322e544602b45eecd1cabad8da418d0fa5a3dbfcba079cc1023100ca781bcd7f80d79715d7b0cf4b3d2c7fcd8e565e76366f04bac0dc60da4ef028228a006a0741ddb939631d7604db98ab0302047c435bb500663064023031c1713e7f12f831150f81bd06a4ddd3f5ff774de373700d11e5ee28cc837907f3a83be96809449bb27b02ca47149b9c023029c6999cf6517e0df6fb7d1054f6c0f4891ecbf5ba8ea9557db88645ea0f4c8560c3858f916f068de119d8a840f317230302047c435bb500673065023100815a7f934764d9eae1c3ab6358589e425910625e7925b3e2937f78aad02d65e7d46ad5bf566acc4b2c9855f02d4f5ab1023015f7764e4455cd69034540ae94b01f5a045f0f451433433a985199bd0d2d339a75d5f78b0ab1ddebd37926324940a9510302047c435bb500683066023100921bc705f748b74eba394544d7f269166b7b226c1e2118fc9cef44eb7bd2b34ca76c1c687d99df9d443b7d373e40482d023100f4a11352032ead653edb8169df402d979d0d92e2ab39635508ac603c1b5f3dd3e9899db8b23b00da68e88d8c07764f950302047c435bb500683066023100e24f81201b96521ee01d97f17bf08f1e6c31000e679efc04bd0a0bcad50a12cb9ff50fa1a79230d46ccd3082dde0ecac0231008b6eb040e8c8c8a8ddc01404463fdfa54c593c2a2342acaf2129573634c2f7304d69229f96db5bb6690b5147479774db0302047c435bb5006730650231008638919915021f26eed92a93d5b0c460c223e8db9c63481bab59e27c3a0fad5b2c74a69086ed933acd90c754cf0f12e9023065f0eeb1ef56fe45054c421696f584b315ff8b3145562f729abcc900a4e6c853cf1c3f03b2a2baded55cf34a58c1fbed0302047c435bb5006830660231009bf4d0276649700143ca91554e19b6bc80d92d464caa1dc2dfb37239abce298cd0ec2562ecbc99a0f50cb18a2496d371023100a5ca48d3a81b40b7167f88461f796073fcb374b1b7611025af5f86edf809c65c948d166c29c68626308433622f14aaf60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023067d7baec7b8fdc6a97fa7a53a65e4b578920011ed1958d1539888cc056ebb1f5733ee9c80c785dad3e22c0566a22082202300841f8c7559c4eff310e530710a615ede93d5f90edf2ae96ac3bdf493ab9f850b248fe260b35ea8361ad51729888eb560302047c435bb50067306502310098d7f5f8e8c1ca75801e9ce15dd5bc0b2cd9dc92a3ee6a786f662259b101b3bb25e4cf2f4002e99784f970d2e3f7d81b02301157a35516a18c047d6c8e32462857c67f9e67827b536447b72a59c592f43cd5095a7c4f55eb5260b51bfcb713a080fb0302047c435bb50066306402302d6bfd7ce5ccc1fdffb01f2fdd00c8e1ececc8cf18208546ada937de82566a7e01b9bf2cebf877fba917050af28c67f50230690d943bd23b5fb42dc8a8cc29a1eda0fcbf144a753061b12eaee4096616e186cf8777ffd07e10cfa9fb4106131bdd760302047c435bb5006830660231008f64089c33b3ce5a8408a26335ae8449616cb80d9a8fab7022bcb44b321e411ba78ee9ec86f169f293ff5e1125ba1df00231008b2bf0d23b2315ce8d08dc023aa588fa095f9765a3ea3fddbeb5d35b0ef6773c809ec4693e3fa44d4cde2d23ecd9d0810302047c435bb500683066023100d52353f691f4c934af3318c9536a1c9443b8ae5736a6f1ae932ee4c0c806aa1902fe00cc26e13f9570bcdd0e75a46b74023100e9aaa5f0836f17e35c96e8a1d74d77851f0df8e18d96de6a6048e084213428ff80aadf478c00c09e60b6a5f28265f95a0302047c435bb500683066023100e6249631d0ff81477bcc994651eeae87fa15ebf7f38787694bfc7cf5147b31532cb4e702f914f7a48182c34bc5ae4749023100c043d20b7a20c4c0f5f3dc434e679189c118b752c6dfc4bf433a444b944e2d7b0023c7d108d0b256f21f96ae37261caf0302047c435bb5006730650231009f26877545de013a2d4ba40a1232186c5ee79db74b659e3f015d9bffc79ff4b9962dc9c220570624b84058310b2460af0230134a11f69c566dcf7c23e2010e85219b511aa07a49e61b442a762856a3d55bb5d598ee7c4e915c7930db7feb7b43e0d30302047c435bb500683066023100d17d4979ca9b566d2020d021f0774f2bd0a430ade45b8553af65d938055e4fc3ee9a7d136fdcaa4841bb917f2507fc23023100ca88214749dc8025a013eae106fcb7d5914e8a1abf7f20c28726cf866ec1e3767d24d8e332b9aab0a32938ca124fe4550302047c435bb500673065023100cdd6111a38cc5ddb9027ee3bc4055197e990295b145bb3c8c95d1c58d04c58a9503f0efdfa45be488b51544706f7aa5302300590d45006d316591f24e659422e4118262c8845b17cdaf1de5337e23b347877e734e000712753c9d7f3df4a7bf868ff0302047c435bb50067306502310095a8f771a4604f895d7cd255827d46c6b3d763cfcd65d395171387863d23208c8315e367186da4bc6c550502958c38fe023068a15b6b084a409514a98bb19c7582fd200831198cf8cc2c80642f2f9f9a54faf35d29cead8101d8d3d36404cabb9f300302047c435bb50067306502301523147a2556cc5b381a4ed3d7f4d6d2e78e9b8b26469f27e87f08c8d6cb172f3e2446ca712d923f9462d298e5e2de0c023100c1e1bcc32bbfe46802d5bf545e69dfcdd780b3931ceaf1a45d0cab4dbf5579fc15355ae3686d13e74a91c015a3b4ec170302047c435bb500683066023100bfbab88ae2528bbf486fceec8cbaff93975307b182346a8705e689a2d406f1e138639dbeb833b667a6f4cf90b56302f7023100a2d19f439ed9dae291e69d1763d64a745be234156c3cbcada9a4ed703a2b23413557940835c390d037a3816ebfb86dcb0302047c435bb50066306402301911e27031451fd9b2a2dd5a898413c1e14a725c5ce884de17cd62dc7cb35de08cfc72ebb313f25cf9efcd2d9f882a9f02307ce0916d638f2a30801ddcd8f54bd92f04ae520520ca35e04eea9fd507f74977b4be51374a39909414537ccc5cd069fe0302047c435bb50066306402301352e853dff4221f2ce02f16dacc50ecef02882ec840e56f5ecca70794a36b9fef1e66dc8a2de4425c1a618d4bf3e780023019eceddcc1b6172d19b4fb46759f6a94c29e159b475287ba70aa267f52c49bba8fe8e223337fb7e38b02b8b20b0726fc0302047c435bb50067306502305670468137e7b1dc83615b18c7dd3f6b0f8fc1430fb67d692d11d0087d14b2284df6a73093ea332331c946bf92a93f4a023100dbeee1bd0952c1b49979193b188152921706e47f9100ef7b3ce10f6c1e1f6a0f92b9a70d89de2afba1cb11618d579b810302047c435bb50066306402300234c53605e5f0bf283866e58a83e8e86e276984aae97916473bfb050a4951dbf00d5949b648248af2d52019540b228702306bcc5d8f774c9481a72911a15fb329f6df31dcee4908fff7381d9889f11e17c754b0e521df8240d62f0a4010023e11a50302047c435bb500673065023100bbd6ec62dc9453d13a3bdc69057ef5261e3ca26ca79275992d9fe2d9c9035b97bb84c347313a57b317a91d950806c64d02304849425c64398c43911cc22c0d0bcd3df08162f18445b6f6ac2bfc16464a97fb5a878219a1bbba59e88bf775ccd00ece0302047c435bb500673065023100e4109715d2389088773afa3f715c440f5099ce4dbdd0021fb7b51806ab7fcb5592ff8db74865e2af09609b15a68caac40230450711a4d2c1e392cf41f91d0ce179716410b7c60fec505aef250baa32d38186b75d8224bb0641634cb8130f8c4a8afe0302047c435bb50067306502302c64db3536c8ad5111cf0f4524939628c7b07dfff56ac5a1cc281fa1e21276ff7bcbb8fd0fea4a655c06f4bce0caf234023100ac99f028c85637e9a300606b4ec81f94e5f40a71675874f45e2d1692026f152b83a2801e6bc92c5b22a4be7cdf07adc80302047c435bb5006630640230616949db2f9a3e668c0897afd44f498c46972b6b391e8610a1b4edacdeb267a23d92d6b9927e9e54ae9c7e38560d64270230671c5b799d7ab5f006ccba26c6fdf470bd3e57d974a0d1bc2aaf26589fd57ed7c20413bdd08f86c6fbde349ae7cdbfd20302047c435bb500683066023100cf5684900d7cf1b79388f81375f851378a3462a89f652b73f7242f9d12522e4dfcaf9912ea11cca31d575d6249faf57b023100c15d9c616c769f4544a505806b19016854b9d04e38a2f74f7a1e63300d216374dc71d9cfd4c386811214ac76a943a3dc0302047c435bb500683066023100adf58fb8963a80837735c482250c6af5fcc9af0e79d9eba9e3c802d5e21fa62a2b11ec2499e31e9c49558bd867e2669202310080a7a34dea96417087df55abcbfd31e70d13dcadb08c5b419ea8efb51f0bf37505717f5104369cd07f2b32b9b947f6660302047c435bb50067306502310096ac97ae3278ff8e8cf415b948092a272fde14ec7f1efa59c95c4f3b9e7e3f6c20493831f4905fa52260a06551a53d0b02307aa82211b1ae7d5cb23dba1cbfdb721d5d3ae84d134708fb5dcec4f4d7beec52c561577a49e90a8994970d2db0b3fae40302047c435bb500683066023100df9e4b66752a2d3f2fe780312bae3be83b8e6b95be1c771ae4778e9b9139f0d93858e514ac2fad59f662c2962bf8285a023100d0592e86cfad7871993f05686ab62e3dcd9df67dc0b22d6eec40942b8ec0cc823a1c9d069fd2e1cd1f864e8537db68e50302047c435bb5006730650230267ffe7e15c1983ef42a5604ca82c9eb3546031d5c9f04575aa435bc9d7b086344f614b2981a551451bffff72c66451e0231009aa5bebae57320450755d1ad20a97ea340a3d2b816b582065a27d0656d9858529893017440ed6c890b32973528aacc7e0302047c435bb5006730650230300c51b1642003b969eb0887e2cda7a891ea212e56c8b2e5c89a62e21bf155729cf35a584fc873c0f2068ae4bd6d572a023100d34848307f47308e0730a5ae3b3a41d07bd86d76bc1f54e6feed57ab7d8cf08bf84746dc7c407b8297a5ce3c570ef7740302047c435bb5006730650230366cd703138d3ef7727e49b08193916bccea8db597a218012dd85177db4aa0e055e31b469d73c217b8ce57a40e3782f9023100d34098422fc889ae96698e5fded0e3c691dc3fbf44648dfd55deccd1c70e4a1d8ca4578b4111b5ce52c7e762f90f56230302047c435bb50066306402304e83ab6a9dc48f4ffc61b337b1c35a46b789c7a4228e7175ae483035af48f1142fe878ed38a74013129eeef9e4d0603602301677924ebef41674d777c5f4b5290bc5fac146874e2ac858807ede8a63a9e9c10c5ceb43d54a47aa546beb4f9d29dce30302047c435bb50066306402304346e005d38efb746ebeee7e014ae0c9a4f2aa850dcc48da8c814b99edb0ea0955987f5088459203ee888e5b4f4ed13702301926839f8f6c2b15d68fafe64826a55f36c290d222760e46037a35e741d0a23376a08693afb711957af64504142ad56c0302047c435bb50066306402305a199bbc64a7b76bfca12a167337b55b805e8c5e0f00f24b7071fc5743dbb047f89eaa2382836f69a9b2ffa3ed7e021d02303f01cd2bc56e8b31423cd7621c927f971b341efbea786eecdafaf090899b8c5f859c69a734b0118af7e07f67280eb9f60302047c435bb50067306502305feb811f06a6d0a3eb46543787d6e4a4350dc36303e755d99ab1f9c7bb471af4481be1b74622c8e3a1d5fe8659eba221023100f97079e37523eee2a3ce88db5edda07b47fd350ce64167e8d07ce9acc0d3d4064085d71f3e51d1d9d04f99b5ce0c9dec0302047c435bb500683066023100f0b55118da5795f0a266318e42a021b58b83be487cd452aada8b277456f437f0a9133778a8b47c573c60516db81896d0023100ce77c861e59cc0f155bf7738523bc220bd127239148c91095963219da3c89319c282e175c2ea1180923083d4fce214600302047c435bb500683066023100ed8dcba9ae605264165b83a94880dbbbc5f4cdce5c4129944aca3085faf87399b40526bd952ac5a8fc2aa7262053d4b4023100833114a7dec8ba808fe485814e6d82110b676d30edbe4d605ce1c2d7181cf6fc06d0c1df041420d0f1cf6f6d57575d1b0302047c435bb50067306502310088c60311df3d78f47af5850d50ce80c91a3de1e5e87d924776eab62178f3a6c689809c9506e9e929d742bcdb90d467a402302c3d227ef12d9ba12a593253c2f1d80c4a6993f897c6fe694bd9272adf21af8f1e5065c6c5ffc88d8ba362ff11b9ebb90302047c435bb50067306502303f6e45db05b7130a727ed7bdbe94408e32f98bd74b5661a4f69f922d8d1841ffbac64f2e9abc37632ae1f4eb6a6c78e9023100a70d5b4d572293ba1f4113948d9cb1c9501c951074e27259948ffb3d74313718ee3601ea2eeeaa3157ec9406b685c6910302047c435bb5006630640230029d00abfe9437acaaf0cbb1148e7e539a90af9160e543a9d436353ab47cfb8309056cec7f610c3766ce3d7e53d7f15302304b0fe3709173ca2880ce048b7be7be6c69c755ccc2b1bc3c1d53f3df6768d0500e57afde59d663892070ec50c702b28c0302047c435bb500673065023100ca466e8ea7419e195aab8bb104d36efd8e115d7cc9cf8262e41f3a958fddc695a4fe2c5879b3c8bfd0a838de388442b502301611cde970da6d519f0c4fdb28e89e19f87c80872d98b416f40c8e51572f086577aafa70924b6737513f285bf71162480302047c435bb500673065023100cf2c8f3277853c4d1a3443a8acdd97e2540649b5187e70977e3edc5b4c286e7e316f0f71a06e6ee3eb57ce4ab50bdb0602303e30e29dc5d7b4069396a77df304021b87380d82c3f75c05903121619e1a1b3632979bb59271bbc2ed8533f7005b0c880302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023071e133850cc3ee173b9c232c843d533f2fc125e291d4133dd05037706ab0dc796e6922493caee7156bcc2ffa4826c0f2023100a9639eeef5a38ae7f0138150529a2f58e6dfb14ed47f0ef8b77d987dba4889952be1b64251b6b7f6f58e8a289def6a1a0302047c435bb500673065023072d6ea159a9ac9b7246db64884aca6ac51605288f96854a349c4af8e83ed4e9f3831b4bc1643ec4029d89f53ed4f728b023100a0a45d8d2f9995fff5d29795fb5fde3efe6b902856cb9cc8002e044dbdf24bc3d269fade0d383c03902019d98d5fa5070302047c435bb500673065023100f9c600b602bd07f251871b5870c4a12d6105ab0e9ae3b933a9df9bc8927c5159d28b6e4562d50f315a7353cb27864423023063ee096a974c57393e878c4d9d2c52117bf6a0f79062050bc0780d48c590fa4788817bbacce50506c8607677a025e4480302047c435bb50066306402300e6fac656941770be2c1974b30743b75487fc60a306fc8ab6a4dce17e281206cea60a017f9bb5a1bb5668bfb91aba22202306db35ae5d033e442183a896522c5976df517c5d6aebf4438bf22be65d71faf780faf63d49c803346f3b6c4bb2e13f2bb0302047c435bb50067306502307f540f0440031a44a7f8d8f30de57fde6f1b9cf5d4052694edfb69256a64866d1fcea2bb804085cc222f10f8523eeb08023100ebd7c595f13f9217ca093058f49979a2484207e5182169f99c51a2a66084240037d81727beb3a1a21edead0b22e80c4e0302047c435bb50066306402302af70b46fbe8815e406b6140fe34c3afa9cc6b6f7705bac088ee980af9115cff1e8c4c99b89c0cb8230ec00292cab7390230273f5d08b0bc5c80a3ad017c0a5574eab5ccaf601ce0949cc905686e5ff7b614f0867c81b6a9964c3ff716bbf6ca538e0302047c435bb50067306502310085b430b892a1142d16cc10e5cc41180692897d85ccf71b18d891d41539c974ed0112d0451cabb0398fb1993f16b65e60023007d53b00822b88cf9022aa3e96c0606090401b1a75370791fe89523824e193989d3b7c7f8de1b1c86c91356b476d29260302047c435bb5006730650230581ff11e82cc40ebec96ad188e1e8afd4fa5690cba9eef78a89b4ba75b5118b6aa217a7cd63f91974b3744c1c4ed8c63023100bca9b2beec2b1431650ffc838b852e9f4300fccd5715fec220d60c0e42feac1d2091ceb63af1c9e5878eb906689fc25b0302047c435bb500683066023100f599642a5802f3ffe671771404b087caf0382a17d3c87c8716714c15597e333216b39dca59acd763db9eb88ae7cb7363023100dd8787fbf976990666c3d13685f834f48233b7833d87efecdd5b318bcf92575ca41593dee4ee84d01133c18338f303880302047c435bb5006630640230372582a739c823ddb64b5fa2aa49eca50c17ad7da3fedf2540d927222aca7f66a2cf81fd38027323f7d44ff43854d116023060a8b6a7fb860dc6efa55c67ce9e544109c7f2941277ffcdf5e8aac98a68a505fbbbf5f1aceb3bb22b268baf49f4de360302047c435bb5006730650231009dd37f65631e0372d4da8c8a1fe9fcbb4fe1b87aeab3a11bad59ea7d45dd9488ba44dd701a89af7716817c74be8fe6a802301a3515d8a74b74df7e56f9e8418a7584ed8da5b37fe1527bf4b2bb5e9e58047929f1798491efcb4399bbeaf9f0ce0a120302047c435bb500683066023100db2bb51cb6e66d222c53004b41dac91d87e6886b0e54a364f2986fbb77bff795fdb0a0747186e5f0ae5d5f64345fbbf0023100e5b78f93cb912cb47881527f96018e1dc9155a80b75cd2321c15dc1fa7d9aed2aff26189c34bba815361649318b980c50302047c435bb5006830660231008419db5f7a8c15d598b102eb676733e1e559e6bc3405b4e83a2ed02faf241505e7b99d9183601fa66b5e1d46d3198854023100bb662fa7baa09c5f6df2228705812e435ee01dcf5f34b9ae61efc321e755b8c008b6876dd9e5949d807dca52ea114bb50302047c435bb500673065023100827741d59fe405c2c3af2302311bfdfba8b0dea685f0893dceb244ee50a4f384129ebdd48f0166670efb55a8c40f75b902301ea067b72320d5cd4d17aa65f7f652484d83b2e0cdd4d7ed6e5ea0f048766ca012e78294d978989d7f82183803bc648a0302047c435bb500663064023074c48fa192674c898a3e1d2d9bb0fb3b30708ab922ab21d9205c4ba132d16ae05c36383b44e73bfae95681a4f513f87a02306c02ab66fc91f7fcf555beb198a1c195c871150d0506b21e3d491a448a06a644bb7666bf26ab319271446b24849ce3730302047c435bb500683066023100961fd7f02c3b568df1297bd7b6ab2f7408ed2dab102ab6c97fbf60cfbb21945cc9d00929f4c8b5c53a456662bb5eeeaf023100cd138eab1c7bc76d0583ef62bded5306547dc700f58b3f5b9290cfadaeaf705d99dfc409dad718c14b2428f71a208c9a0302047c435bb5006630640230183245eb640c5a22b32c6f343fa5fb532e84f1b5652e8bb3eff4598c92f37350523f64930d1478659132a5ebfbdf5ec202302c920fb68be3dc0722f24b714b7ea9ec99817d3a83e93d29be95d1014be60c9ad5946db03e802b72db7706baa44cddc60302047c435bb500673065023100c6509306fa45e02a972bf17495db866bc927c358a9221b93f8402f3d7b4aaf312e794845e5635a27af49f09c5c1096f102307c9fcf8f601196bc17bb0b4ddc1c2cc5bb3161603586b179dac3c3f70e00153d77dd48bcae89a087eaf3f79e02d3278e0302047c435bb500683066023100b9681e9bdc6ffa30c065f2c763eb3011e60f65e32f76beaa791d1f34e6a41d3bc73f96ce72cf7e08e63af59d95067fd1023100994bb6a4076f252c56d595cb786ab420acc514968fc1a16960991533a70dfa30eaa224b1f9ff10df7299641b425c2eb40302047c435bb500683066023100f23a7dbfb40bc6bead1ebc399b2e6f9265dc1fa2e1c22d8d5ddc634f1144b94794ed20a2dbc050bea956a1be305e1f69023100c47297e291e0b1a4affc70dbf0b919522a1d4751587c4075a121f5e1c149528f2b3ab0e6b992c281a03cedb3fad129950302047c435bb500673065023023e4273c21a6c911e24e9f8b1f7f8244502d0e911a40b1f6d96094b187c785f6e19b026931d72e28de6e013e2f38a8a80231008373502e78fc7bc93747fb5ce165eca1a43f22bfabdbb1ffcf15c9835d64228a7d4aea986918b14d6da883aa27f089140302047c435bb500683066023100ab6ece5118b87b3cb62c61be27f9857bf355d67b5829d90f701f3ad0489a1fff90a28f7d3b94146a88dfa2127faaf3b2023100c5cb638e7418e3ca0b06c9f2c1ae2544f5eed9e7678b99c3c7bd6a6a2d11c51151105fbd06cc753613ef8de23c0171a70302047c435bb50067306502302b3b417534a95f2a92cc8ec4158783d7fa04832b3c72a7a92ff6945631b7f4189eccf922a5a6fe9fca9e1e5caaa4d58d023100e7e1b8694b270cc9c36c810a1a234903272091337e59b7bf0456ae4c11337a7ecb8755cc366bf929c0b0cf40628157570302047c435bb50067306502302f371bc3590278060faf70110c9fef2d0bf61ef6b0af3e4b4c0570775e62453f1855c5f44c83d37101d9119f7887f2cd023100f8ce7dd66d1cdbff728af2f51131e0bcd539971e6bbf059122a55fce7d45986138e60baa6f4c1a18fca88e6be3acea440302047c435bb500673065023006bd85651e0eec2ab406a35d863abf60a39721cd39c0d1c6babb2835a93cb7468d3a3b39bb4aaf7f12832c3b21ebcdb402310081c9f7cc0d3173f5aec3a36b2dad094649a060ba88f0fa9f0131f84520a5f461600a3901b150007a80edffcf353fc9aa0302047c435bb500673065023100834c613277a5f623d5ee93918256c8d5d0311178e6472fc5e4af16135a05e221de6b6bb2c708d63ef94c58f387a48add02301ad6526376a65cdd181c68a3c99ba0c2d7bd25717aed0da22456dc351a6018f9a026229ae9f20f3495f9b150f3aa946f0302047c435bb5006630640230409301fa589f370eb1f4d162b5372133c4eafcd72fcea0ab1e837694e23f037c99fe771c1143177a539ba2d57adaa625023029fbb7d58e3445c857a6bb5f048f5b1399613f901b6f3cfac9859242310fc5f4dc4d085befbc27a009a28ee1c34e658b0302047c435bb50066306402301aef9807d8f0d1fcde4b1f20613c7f0bf7f77361a7d8ae0ae43b7b6f3f21347fe58f781ddf7715fb463639060225952d02302716d6fba020b1decfdeae3624d90ad6d0dc895ac1f212614ee5d17e39ad4565c9701dd9e3a495a80b17454c2f4f08210302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023065d7d6f3151485ea24f5401659e37b05b099a45a68607f7fcf005fe22cc643f25099bbf6262537457198b134a6a073db023100cbbbba54695d2792af3123b7879a18ce4f9408f4b699ccc7b385f10ee39c7b047264147542ced013b0e6af066aaaa4f00302047c435bb50067306502301a20650b914d80f9632e2c8d6ea8cba620b6109ecb70a9bb259a69e3696803e82e3e4cf0b27b8271954620d222f4cbe7023100e146878f398da8b6e36662f215b38c6920b9e6a9095d4340dc71a30cd18bb2ca28bb9d84864f539855c959d11c882cce0302047c435bb500673065023100ec4c8c21e69ab989be3f04f4ec47ff63e9f54b2687a684200de2479f225b06f33376c83c9e720bf18efba79fccda520d023011200e2d93f146d5b77f5666a3bbb37c2029e8ab98a2d8082830d62c0befa9a0d7e553c95655fd1260b9267e113c0b740302047c435bb500673065023100deb5b863406bde52740bcd9f4402f195170efa264c5dbc35f8f11ad91b1ced7dc1d7693a7030a7d8bcc5addf712b3bca023062f40a6160bcec1aec0773668c71ad3aa6dfc56db9b50f8f2dc54f76524bc0baa27001c5ded62b31bd1201f06922286c0302047c435bb50066306402300f513875df9ffa06892befe1a046f6c993cb1138eb39b5679e92c0c12fdaae875b46adc6c3824a7475b526724447bebb02301e9bca2f59ce2071fa87a55466d7f4c0e16983195106dc5c39a54de19c7db6055812c8ff1e3e1f20adb0eda287dabfb30302047c435bb50066306402301cc2327bc43b2ed4f638e0c366b003714e5ca3937e0f5bf842a60d56ac5a8541793acf94c50a14ba101a5e1e28596c8f023037e4befc67e38cab44edcf3a756e9f4d0668b0aeb39198a6939a08afd28a5bf7a7fd8849b67e6bcfa77eb7aade1806870302047c435bb500683066023100d2145321b51c41e2d1a3c3c0d59b55ae3412095a0877a061e020409f99ad7dc5d7b6cafb3f8e31e894824c06a3fc5bb2023100c44057283a02dc178c42b677f99953771ae4c00e3f074486f8e054d9db378a13076dd0d5e94699347b28124b543be5e70302047c435bb500683066023100f3deccc1af77121fb9a896c0c8a4f067c3d871a846904c5056b6e1dafa0ebd8c32f783d419ce0749ac8dcc5eaf9737cb023100e8eec76aaa6d4ac2c4a3d4d4d4f6a68805f94c1a7ac8b5c76ea918b584622ad8500dfc4d95e20b17ea67c8be567440230302047c435bb5006630640230447b8ba8845577b1d3b9961fa138434ba6a9a20580099896a32669f1c26c482db899cefb23ff033712835d9b25b4e56302306cf8a0ea2062da55b40dce9e1b77cfab0809caadc02d901304c39b6da4262e38c35d35a038de3a8db50c83f1fb28b58e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100fc3f60fb967593c642617afc44bf6bac439c7e63f94a51dd019e38e2df505a28295bb697a605941e26e0a25c4704f8650230574ffdedc741169b7dbdd445a94997a9d416fd6e81a1de3cd7c74ff0fabf401e647cde96aedabd591a5d29b96228b0210302047c435bb5006730650230723b3b1333be9e74124f6061c2bd079f68dbeaa5a223def2f3dae0623fe90126413cfee1ccc52bc6533b90255699a47a023100d09d5b5e8d29dca63707184db6825d0aa11ea201c512027bc326f5f747cc2b215bdeb4fa416364baf1b560ff0eca789a0302047c435bb5006630640230752acd035338bb20355e23fc296d4791220ed96b50d0dab757d8f8cc143248999c050b22a8f5320bad6b747b74dc6e19023025ecde3424a4d79afb0e308e650db95ddf41c9889122341f33b76d00890fc8a946f001fa970d4f5da7a4d20e8a0099cb0302047c435bb500673065023100ce1b56f4d429d12f846760ff38c6b085ed24d251ded2bd4e425ade8048193edc50a136330d43d58bdb40047ac8856b29023009cbffe5832e4d9578bfff783ebb00cb6086902fc035a71af42c74ba2d554ec3be4ab8932126cf20923647f63437abef0302047c435bb500673065023100bd9772a53487b1eec111856a94a3658a01a7d6fdefcb688e725d11f8a9d1243dce21bda0ad2a73e17efc746a82ef77a6023005835cc13ee68617c5155701d253006e70e9db349d22e6b45ce36b134a6f16f441750059a43d49fa43e864e76caa4c0e0302047c435bb500673065023056b78e21ee1ce519925342242fadde7e59bd3e935b3012b2bda0886175f44f15199b650066a5c7551712160a2e6303d1023100f612ea6b9fbacf8bcd4946b7cf66dd53530835b7c9bcf81e20b4b37663688c268039857d2991c6df7b96442d9e152c610302047c435bb500663064023070a87b83177e4a903f7726a6d7924246f0ecf30f91179ca7b63ddd907756349c3bf6495c61c93d6bcd68333d4597929502300a17b9c6687a216fafb162257bd03a5bb86357be5c9e82308c063368f97e0073164ba97b971bc236e219c494c21451980302047c435bb500663064023001b3683acfef224fc1729651760bcda06a8b0009c4d658ffefa3a1984638ff2c6ebb2d665298c12ac79072f60bab01dd02302502815cd8e5ac18944a9398239aa313dcf92d28dbc4f2292eef297862097d81a39ce17c88f964a2168b95499c9dc9290302047c435bb50066306402307c4fd98a3e244463388e5eb73f77a82ffcdd900d2ea4a5926d226900bae58fd8030ba0b1b821b051c110b45279ee185602300d91957b8cd990f78faf41560290f4f9f30025f0a8a4cfc5cead5f92bc0dffacc66f76658c59a4805c7970d1c0ffeb560302047c435bb500683066023100fc081f33c7f5ba2b7d5547aeb35214d79543a1ac214a3408a9cbffef88023d83d0d6a4bd3fcc9d70cb5f6d6d6287e92f023100f117479673e71a5270fe24fbf0a4f1d06513e808f9ff7a7539f3839c92d6880829aad9b5ea114c110333b45a032635750302047c435bb5006730650230272980b9b7788307b207fd345b82fdbd29ec3e5a64f868f9d4d3ae855033aa41678f14a110cc8a3fa71ed9efb56e237b023100955bd8a224fa4a2e503fd5ec9f78ba71ef842ce4e450de68f89eaf5cbb9140d8284a63add7a6c7ed19eab1022c5689de0302047c435bb50066306402306432fa072981bb5a71a8e1e11669884edbb7446dc447e7224cb3f9d9eeb7f118f1d6df992dee62fe5cd3e1dfe31483cd0230538b8b52dbcd744214ff52e72bf76ef04cfdf768af07c361f2f6cd9677a47b6ab3138de17bf88a7909f8a256d140cb750302047c435bb500673065023049316afbb40b15273a71f26c922f705ede002e1d92ff96ede292e3fb88368ec9164015813f0099bf2221b914ad62a6540231008925c2c0c84efc0717740307e99b2602171cf0cdb494b8739a4c4922f192e5654a13efb7aa6d577790f9e940add26b650302047c435bb500673065023042b07eb2f467e7b393e6a7766a59123c4cd317323d52f3e6163f25afcd93e4dc64c71d6fca434c2402a8af97a8e51e1b0231008712c52a8c28935c509fa1e408471047e0c28d036f9585b215df2dc6466e507097965f6b2b865164e0bef35c7e1b8c9b0302047c435bb5006830660231009b30b16954269350746db65a2dde6b221f59ee8e6c33691d51d3ef2b16598b5e1bac16b1919b2bc3d47f13cc362b0af502310086f8c3776cd5f74ce04334f7885067196b563b21fffe27f4c56e0a0f9932fa9fd647a596d274787522d79c2f5d7597010302047c435bb500663064023009d681e9e731b7ea3d00f87c85aa75a2e880db07c4ea97e1cf2447d66833773f3d90373e44f8bf07ef77f436d97d5654023004ae6bd98168ce72686b4f0f587c498abf72fcd3c48b0ec6f7f46bc797095d12c5a92794c231b8999560f6051d9daf9e0302047c435bb500673065023100926ee838c6c1c9da4c76c46f15c9b4048ced6c47a2c47ab6f3b85a47d4d47cd3e666e4a4db0a22b2ec285c9eb0519d6302307d83fd859bec72d081fb815f687553514729a7d5fc1d1bdb624b09dbf61890602a6adeb457afa32fd9a88be8cc6335bc0302047c435bb500683066023100c6cd5a100c4890c367e35c5fec8e29bcca75a127a2bd20484a65e6f89e36210175926652ec073e10526301d52f7fd2970231008a9c6fd9c1d36c9f8d9acc2adac7b54e3b52235666afa1ad97357124601f95021ff25e3c476a20033a70761d4a46afd20302047c435bb5006630640230334343c77b5569241d2c7113061d2621a4766dd87d08938c658e9e75fb716a0f30f9c6eeccba3443d1045b904434e83102301fc02031eb4c6cc520c00fb63e1dd0291ca30bd6c4cf04f5ba85df31ae3fea3df12657dbb49a306c3e6cc00e98a770970302047c435bb500683066023100b6168be1551b1d2068c7b30dfa0138e67d807d9c1ee5511b22767b031c477e017d7e8fd82bcbf358630423c224213255023100b98128e1eecf05aadb44d9a9d0199473a4c20b44f3d9cbad6408e5b7847b196833a29010a1849ff6d2ee1d8674bac4710302047c435bb500673065023100df1178f4cdb89a6a620cc9aa49d995bfe7bed1c969e28d9a260707c229d31b6cd1221f329ffeb6a064e919d9242cc11802305b0b897d8ce4f96ca789beb79c89fe51885fe4b60cb3ef832c799093bc43d3c1e75d8c853442053b22973274be1662640302047c435bb500673065023100d370f729e3be415e8eb1af91197164428e1ca0c999b1985f2f61bedebf50aa2160f6118f3261644a410f7d5fe6ecf36302305826135f484729d15a2ae39e14eef1b0b2d7698846252cb2a02dd6d1e23aecae9fef82187b889fddbace20ab667b88470302047c435bb50067306502307640602f482bd182e35ca0e9fa51f3e8cacd7f27efeb8c901658af689d088c123770970172cf9ff3541582159eacca57023100ba16b726993be23731f75ffd249c67a1e9a21b5a43c3152f90bcbd076052a046a63cdd555c436ccf3bd42472d215fb3f0302047c435bb500683066023100b1b8b63a6faccea9e439330d907c702adc0ecdbd5a2f3db9b3ddc61e6272f3cb7a8db8030d8e3aca9cb11ab29fa05c6e023100c6f8e5c49cd1f18e7c99332572800fa3f3db72a89b49fe616d244922c58bbb670bef706170d08c2a8a1a6af5674bba1b0302047c435bb50066306402306dfb0ec7b5306269eab84965ee9669f7a8322935da60237fcbd1a8a18abd5de2c637aadf158609acdaf11a2fc9f85c44023034fdbec093c7009281c78ac5bbc948e2654c646f3aa230c4e3242d538bd4565f6f09a1a718970441eb4a401063a720410302047c435bb50067306502304212926ab7060e6fb6cd49efdab39e11fe35489f7fda6f6daad96c4bf54c738ffc193b800e42a0ee8b2ac6df1e26f52c023100d04321ca379f6a48f64a56e07285d9b1b83fd57424ee1993b476fffe4872072a0ae619ee36085941e3ed8b0af322848e0302047c435bb500673065023100a109f91d086c69717abb1290381bea47918550ed770da53858be52d9207c4d03dedeabd291d8748a92405ea6aa987f9d023024554f89af9c14f2e635b1fd3f6af913a411523cdf3e2859aab7bede0db2f47e0418cf878a6bea2355ae70e3e56d27e40302047c435bb500683066023100c4b38f27d2727144aa651c06be23dacc24f4e61b76a0dedd8f971eb687ced5ac691940f6540dfe528074862b4419998d023100d71f12e09a5f86d3b24e431710e48801fafcd2bceedd5dcabd6aa70ce8fef1dd0049236619dd6c1420720647c20194730302047c435bb50067306502304b919ee0d288ad3fc167a3bf7542cf22f4f1a3f1af492c076e652069991a4c544bc1894347d2a061bc33cf6b774aa808023100f88b635dd2ab7b1ed9a7c4548871c321ca0bcdfdf39b45d641560cf6457560039f4557702f159aa15274542fb4dd7d310302047c435bb50066306402305d87d52af67c5778536cabffae5d309f7c5823b0f3913ea5a00a39932e1cd1ea7dc79358d11df41b75498ac673b9a8f30230437b6aa6dfca2e86ecca8d1a8c1d6202e9df43d1e51f59306f0a1a1d55579c8a65f0d11981f59ae8f18944329e5fb33b0302047c435bb50066306402306509af3f855e9edc0f465b53369c7695bea2d2e64f6ff2c28c5dbd3ba7326510e3648481965b884b9fec0ba16c2d31a502307b6953bf87185ce84959c4291a1a6bf2f955fdd50e90d1a89f85307463d518cbc5f00fe4947b0e32df95e9cdf580ecf70302047c435bb500673065023100dca980a111643a221405307546bfc2de371791235cdd6ac2266c2e2b10fc3539fc6649e8164c11cc74eecb1260e9edd50230632e4b4664ef95f328dad2e2f469fa47bad663d770bb5c6ebcfdd28dd0d1ee0022f12216cafec9681a5e6e70b889a49a0302047c435bb500673065023100d80ec907fee74069990495c98695c9c3e87b4c66da669f28a9cebf16b2a206d2f1233b89d0e0c4003cd8fbfee4d0aa7e023049bac62d5daec2f824534563ccb3a70ef80b55073607b9bd811ed4d621040ca6e4fdf8098af577bbc813d74eabc85cef0302047c435bb50068306602310094ea3a0d80ef0cbfb80e0816911be671419c7bd4d4ce2fa331576e62ab0d760662dee7b2afc25a725b823ea85b9c765d023100d379bf603f0fe1a79a43f447412deeb8f23d62c70ae438ca6bf6265669f5190565be8f9e43a82a06f5a55c864ca11fb70302047c435bb500673065023100b53ae0271644c3390f823ebe4b5c1593e977fe1a823de96dc610d9ac89ea5171b151dcc94a3cda847a0b1e01578a2b0602304b3d632b1a5048b9ea8fb7be489b33f7aa960b77cbad7c0fae0f719cdffbd9bef2b9414cd6a03be8543887ae19be04180302047c435bb500683066023100f73aabdfe9d0428380d30c9bc698b49f5a5d7053e82da3f1e5b77bf372a479947c21f2245ce6705fb923f12b7bb6e8b4023100f757c57ed514bed89b0da13ed1bb58cab7e188fe7cb26f5cbda2b7ef811c9b732164a28e957e62605df09739d26f05a90302047c435bb5006630640230603a4f83564cea40435c8aa94bf95fad0be82b3b20d6a8f1ce4ca0c536f3e678f7d5f39d3e1475a0662ed85b2fb553a6023051c3a00e496ee33d0cc660eda1afeb8ec3aeb1c463eae60061bce4cfa4ee0d5e99ae767502d7250f3990ea7939ab05070302047c435bb500673065023077d4e8c87cda023503360064179379833703c820140a8dc9ed571faad471480404d61c839235a29f8c6b6432980a8643023100af4ac056515225f2b6a069091a65cfedffd2bd9a2fceb3daa301b5ad64c937e3f710d950ef1bb4a25956c3d26e0280ba0302047c435bb50068306602310091195cdc8a5bff72475ccd43fe354d2a7b89dd0fc402e75a38a4a19c6b3c96ec2ecd93eeef521f859e3c22e7114d413b0231008e58f7b27f0065f9ee3ae438bc334eba29ce58087959ba5b6ba785f353231f11572392513d830eae533ef77c13943d360302047c435bb500663064022f6c26000d2d620b2813f0e5ce9adee3b34f4dcd60b01778aff933c53fe6579a4b6112cd445901a85871492258b3d239023100bec62178f37f07de81e7dace05672df5a7a0d0adee1de13c5ed49eba6feb79becdf19b546688363ba44df84d1ed911720302047c435bb50067306502301a643d7817899e2b0f271cbc7e808622c100847b2b0dd36fbc05412fba708d8b9d9c89663c81592203a23fb9035b2792023100e95ab8bb87851ff7d3da5dfe0191b20b0651ff47174acc90fa4af253f8ec7a01f3403e91435df75b95c44fcf893273340302047c435bb50066306402304a33d813439193e412a0464f6b0092e8b644c5a1a9445141646e01f1599b86f6edd5cd0a3f3ed0b4f6cf81826d553165023036e2b1592cf65b0427fc579a212fb1a0d9781ea2f0e7c0e2ee0df2d04048f99d11bd7e8ac1cc433906f59ba191aa31910302047c435bb500683066023100b26809a901ddf00551503fc37f86af9658dd7e091fd3f12111f811010d0e36967f94785828c94a005cb390129d1932ec023100ef499ca2764ec7b639e81fad4239c51eeb65a54aaca4350f28ea0259713bbc96f70a566d55f664e6dc6ad2a4d318a4230302047c435bb500663064023077ff27e11b3bda1d35acf7d6ab7ef10e31a187553bfc39cc40150198aa85829acc7d22f0d0a9cab5d52280dce44f41d402307e4e56ed84155fb410a4d322ac63bf67e278c5e283762558cc1062414d36264e7d777494456e0d30510dad98adec82fa0302047c435bb50067306502300c7f791a0ae27e2066f3da19d4340a38391825de34926bd13a42a1163e691d60141b31e608313ac4b206b76a8e526b70023100c9fda08ba4fec4dcaccf676873db03aeae29a06b7874a7e79f3cfc1e6a2da08b7542c43b04b0f76cac20b2a74f8e72840302047c435bb500673065023076c691971ab75ea1a548f0f837b69e2eadbe2919595c52fcaa54f36c132e54cc8bce82a8e9f3589bcc9eff9d2f58466702310097fc5e8ada71943c978c80bb9fea8e92cb48bdcd92364edeb77410a116a4ced2eda809295142c608cc19489d85e140040302047c435bb500663064023072e0a7fe4523e4e20e0344c83a439fc224d98e553495507f7996f401524c3728c56f3ee6d75fcd6d1b7f9107461d0c6d02303101a75cf90d7edbcdef4e70c67607c831e6e3af588b6496565cb83cab693b5fbdebf8122be73f3d9ec88233740be5010302047c435bb50067306502307add1e26c50fd93296e99db059e7b23c3126d16ee56ae9b0263f823ef7f0d0e9458a7c344ca3138bdbe5c79f8b58e620023100d70670f4ffbda9254fc7e6d3846e3cfa43cac576ca91206d6c5e42e41063b92e6ae11b4b415f7c8f7e2174a586dfde8f0302047c435bb500683066023100d6b575378e102d3d0e39aa1d02bc8d3475f4e55c38466e95b246254d9c7d185c0bc4ac9ad35d3715e28e56e8c8e13fea023100b0d7e9108b7104bf039d7341e71228a1adc878286fc3be1d55bb95d6b4378102ebde83daee307551b772ade381cd04780302047c435bb500673065023100af684d100e6877ddb309b715ca26eb7919b97ed1fd9ae400ebd9866f60dcb490dddaa9b996607e32dbe681b4eaecb0c0023048af649be941f77d58c7dbfff2d574d6caa1fdba1f5f393435623a1701febd4180625b9f80faedbb0910edefb042c1c30302047c435bb50067306502304c4d7fb981afa8c488b2049254d88d817af213fe11e188dfc61221c01bdfde863d2cf408932b8e70fd36e9401a150e82023100d32f6fff6a3606f5df802a3b5dbcc6e89e48200a2d255e8bcec5e6dd5ee7dd81abf71c33d2c8df2341cd9222cee87d020302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307ad1829202aefdc43b7d2dda1893a91135daf29137bb62329be44e0300258cd4ee72d7a4641de25585df830a24c8dfcf023100e3a7040a51796c532abf8525c65ec57a94622eeb9dcbf392cf3d25b8b848fd31b417aec92ced0c8598003e507f098e1e0302047c435bb500683066023100b59ca3f9ff3aed0b1b5e5eb52351cb9860e9db032a177564657b96885fa307477b5e1d0c2817d7028abcd38bae65681a023100f7e03246af87424530c40fef35a8fd117a56170a723ce355dec003af6a07fab6629e1c1ebe145396f47d89628d0043290302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023077e142bfd13a303e11112f9003506bc283e60d4c683067ea66584c51f6620d83e504fd35c538cfba4665f7a3d5100dfd02310091913de45ea5c35f57bdf5eca0f4814821db1af83ac695e951fc5af4ecf12824a0eddfb0017ef5dfded7f3e5085d550b0302047c435bb500663064023006ea800a925361900a2fce4483ae09bb93749b85d449f0b81271f074b1039374530226fe295d89c8c4c3bbf209092da302300cdee3aae9e33f353ad53614fdbeb16615ca4f49f76551f619a283ec70bea3be532d3656e9f956729b9589b0e9f8dd580302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304a1f113c483c60354db1a30b7c52de120bec0bccaa5c01eba9edef35715df3c2aa6ebf5f94e695b392c22ad460d3de9c0230252e0c6641a33ad5c0adc48cc841089527a4d628bc4344955eb0dc9777985129bc57412b3a77803c93304d6f5984bbbd0302047c435bb50067306502304a22c567636ad7dcd6d13d4ecfec6868db258f5075072f986d160a3d1f101626b78ee69e17f3d952cf55a33948d5aee4023100ccb559d7f8c1928c1f3beaac497c5762d432312d79fbbe2e8ae6cff65b867cdad648d5b08698bb5af5e080085a4a82b50302047c435bb500673065023100ad0b0d880d27debf1ffad68bb11fddfdb21a2fd11c26bf696b620aafb9f7302e456634071f542ae4d7ccc81c0695ad8c02301b8346a8dcad6fdbf0378cd7b9dc2da7c70f5c07efeef5cfbc0446509798ec91bd462065b614e9cef966f9c0701a93540302047c435bb50066306402302776f8e4623e023c10452a9fdceaf693c5670a5941a82275be3547858cf091469a56b967740f5e681311f04365cd1181023059d350503de37a4ea175ad58d645a654682e289386ce43ed463886863885bb1b7cfa86ca1eafda65967e46d9b9bbf11d0302047c435bb500673065023100d998accea94c3236c42cd710a4c19ba578217f0ac8464fd933270a380f9b89959bf12664b1d820200c0111a9008578b102304005289e3dd57e677d302e03f93e763e1035ce078dbf0f353d9358b5d70419c5df35f8e057993e7ad32401d0ee563de60302047c435bb500683066023100dc101a798dc18171290623d0f6211c32349b2b156cae6238453d7dc73fe98a5edfade501e41f6f95a84712078b1d0f92023100fea391207cc97390b764713e3c8ec662f81d3d5a67f88dce30a33ca05acc9a89b668eb4e7848485bc8211d077b8321130302047c435bb500663064023064e8e68881bc11d2feb6fa6f2341019012c73966147aec5ba3706c7d5934db6e9adb413ae114defc7baaf91a1e473a3a023033af7cc5e88b88721ce1e186dd36523ace0ef22b6a1c13fbb26160d8a561113dc2ab3276a253c3a4ee7886077fff00770302047c435bb500673065023100fd30504e228c19abd6642a19e6f5971443363e61f756c62c5757b31f45874b0447c2eb9a64a87313afbced4b080749490230563f9e4b1c7b2f8d7472348af62b0bcf00d2d958cc5dc242e8aab78890d02634f99f2bef53de14ecfcafe590096951db0302047c435bb5006730650231009426d27030d53aa3f092a05d89e8e2d4ddf6f5c850cdf062c6e9b03370f311bf8be2f8a18cc19fb7437feac0776f3e04023004920d9beb3bc9c0d1651cd60bfced7dc2ac02f0ac2ba2e4854f92fffcb8299051af68c8796199df888ed5fb983dbc8a0302047c435bb5006830660231009275fe64fa8b3ac9d2c3bbf6b0ecaac8635eac252dd00e061273b849d1eea5927cb9288dc9a96fcb9f78591fe7a62996023100f9603340e94e4a46b07f9a64001f3d5b04dd7b0da08491f8b4d14a4bdcb8a3757eb4b7cb8fb224479f696d938c0200a70302047c435bb50066306402305ec86101e9ee5e532aa54519fbcd370d36bc77f1f10be6b59f6066d635778dc6727a6c3b66f364ed7d4d7acf55288b130230646a90566ad636cb51d9cc7da9c3da1c3cd76a69c49fc9026e8b77a0ea30532649b0271a66f85068d40ee9ddcb0269f80302047c435bb5006730650231008c150eb2e821fbe257674c968677d1af8ad90ab470a13aacb1943f93dc85c0cc4fe0b602cba19014af8bfe9a5c94add30230788156d29838337de40de01570cf9bedd9b5b400aa1db5c89394cdfc8bdc0288710b5771a01cbfdbea95f54f5a22446c0302047c435bb50067306502302a7d2af12425fca4d3f96fe890b96c9aded2b2d214aca5e4fe63bc6751708e32b07e7ad2e59ec41f5a8c3430bb7bec81023100e419b4ffa9b6dcbc91d7880816213b39f7d3ad2b5353ccc93f90ccc86ee958ed1e6a442631dc1448f0114af4e430345c0302047c435bb500673065023100e207d78a88acd483151ff3d741cfa0017538d06e5d85975bf7a0790b463d462d17a49f925fe8cc5f83738e3ac6e895c602307c42e2c519c14e576cd5e79ff93c32f3726fbd2da00f884dcaa609b0ebc8b86898e67ff830f6657aa22252ea0db795670302047c435bb5006730650230142ff72317e7f4a02f253b72e6108c98228a767272fe678d91a456e26c6c1c674242a45ec11c125383de7f5b35af9f82023100b0322fcd0111e274f967dbf5ecdd1b7b9866c40cea2238673ab7f28a183e6e137bbecd74f9f39e741c1e2f73b19918220302047c435bb50067306502302a481fa27cbe6965488dc7e67c42ca1099865a0d89e8ad0f32dc274d03dd123d398a71369d20ad16f04a339dd3327842023100bc05077a1546c5f82a52e6b5de89e521365e2623d8b64505763cbe8f93928c988fccb255f9d64726d2aa63e78d00f6970302047c435bb5006730650230740edd94b0e972cbafb087aad50e55d6c65c7295ec1aa59d513eb559ff777de9e0ba163e236d5be194c5e6ef7624f993023100e6692f47dab0600a2f7cb38248759c370b29dc47fe3671f5e6d52ee61607b28d932657e95c80ffc1368b81ce3be5d7b30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230114488c98af81998ce5cb1098fd9984226f77195ae60e09e2a691fcc8a86bbd5e3cb4ce4a7a3d78413d7010a5042d5e302300da71618f629beb423824206a8ace36b05b744b9db782cf07d4860720aa66d70ce18296b8dc4ae169adc73dfe7aec72a0302047c435bb5006630640230646c719666672b8b33e9437b68ce833a8341b5e02aed7dd6acb0a9d580cd1e6c8149b3d2d27c56f83048011546c3d6d502302b5849a3fa0cc623274ab568bb48e829029a5787147ac0a53511aa9a90e6fcc2a5d7740e9f0c6f76cc2ecc42c77f45970302047c435bb50067306502303e5017cc4f7eea0893cecd1dc2929af5c84707a34855a5e9758aa449eb70006115346abbeb0a571a31a4ed08176c4dbf023100fd5f470f6cb3e2173d4feb30c7a4abafc72bd32ab0307df804697fda3302a490721a6ccf7a0d03b2917a8ccef9fe09480302047c435bb5006630640230572df6627671720866154df0906a651264a4679bbdb6a4033d35dbeb77f4f0000aaeb01d42ec7583d6d5f7bf0031aac00230121a6b7574d14ad05d8a5cedce21efaf1ef7c4cc670b0454694ad17a8a3a2a0a586b0d5416b4afbb79efb1b9b9e9860c0302047c435bb500663064023034008b7c07f017ee020d91a3fe71ac279b942a442b9bef07b63ac23781628f39cd7ca434a6d1a65f0f8c59c1ea565a1302300d55f0add0065bbd4de519f1c02032e2889a7af68e5fc7f9c228b687ce9d6d237b8d7618f29fff50c2964abe495016410302047c435bb500683066023100d0797ebae0b684f1bc51efb70fa1f71abb302ff3f8bababc118a1cb29a0f43cd35751edfbaf9fdb076358aa0e0270517023100b6fbf2ba1111f68f2b57e23ef429f061d31f43be5ab297783a6236f38c0efadb7fec18d9ab311a8f7096a81a610c9ad30302047c435bb50066306402306e201ef0f70022e1b3f390c6eb11c0f9c65b756573fb4f05bd532ea7db5846d418715b5f1fa15a60bfb929f1d29db34602306f6c94cfef41dad1ead84cb6edafbd153827ad68fd495c2591ecd724c01e0c0f0389056e63fe4b6b047c2d2460f271c50302047c435bb50066306402303f986d200ec7e268d9f14eb0e95a409b5253fb1346dc0dd9f006e0f02a91cb94519e4855339be1d4edbb41e13ad4d48602307eb28b3cfa922f29ca71f1ef10a62c384e5947b63688c41e683925fdc0c4eae150b3aa0b4205d96ad9b0d379b79b37b30302047c435bb500663064023003c28d481fe84efe2e1ef520639657c026e1265e1e0618913ebc8b9fa97fba8dae059d98a70cf86fdfee478200aaa06802307a2e248c8adc758d9cdb7872a8ffdc890685b3c9887f142a0442efe408f56a801336d9dc83042be51c0a236dded7b4320302047c435bb500673065023100e000493a1f1da728477bbd1a8eee245fc09dc56ba30784600a2b8d03c9ad7e4badef39bc4dab1786dd578254949a2de40230429d515b448aee107e35ca8017b0f58fbdf5970aa155f377eb1821f3f279e1e5df69165d2f047469dccd1ccce86d10320302047c435bb500673065023030cf4d1c8a5b894747399b82559d5eef23005df76119f58f0033309e7c5accec6138395172c519cd3ba6a71f8eb8f25702310095227f0ed62c23ff1e8e89f478e0271d99645131796314aa3d6f483d51ec8b58b691311f139417f86c4aca4d0088fba80302047c435bb5006730650230477437059fd61f5f1c63b823510861d30fdbd7a552ee90beba70a3f5de1d5ec18cde186d1c7bc074b8c6add907cbc5c7023100968b359f2877000c6955f1e9ace42020f64514b0388760aa2980dc5b2b82d4fd0d2eb0afa4d611d6175f1cce03cef5bd0302047c435bb500673065023100896504d3b53b68741d1ba2b29eb55cd32d71e4f97454c70513fb7e6906545446913440b97f308b3f0fec244af8d63e7b02302b0df69c02ac89b9ed34f0e13d6ce2346d32b47533e2d50dba061809c705b683cd8984428156be3fcf826dec168304f60302047c435bb500673065023100d9893d9b9392af1f4502b54bba5ac415e694e645d1941d96c72e8f13a37c633b2d5e6215956062ce5e52dc161a5dc186023045be4e073ee80df02d04f95b95d32579917a0581d03d7e74c3f018c29bbdc44e8907df045415c78023f079482ed418ae0302047c435bb50067306502305d065733e3c15f9abf1a25e5d0fb959addcf3d4ca57adcd35c88a4ba7646761cb3098173ff16a4fd6135d8c767dcd48e023100e711c2fe1c2d93e7f5f9b9d4a40e9951426739920c44847bfadcf88b97e44d13ecf24c7d2da8bbe037d5fab0b1687a9c0302047c435bb50068306602310084ab55f0abc30da41a56a9c28c01457462b3edb68f9dda8508752976695ff635a7e94bc1b6b74e5bf6adac3fd8928e6d0231008e73ab4e7bdaef5c689089b4f44512ce383f1f4020b69764d3abe2a95cdcf2df532e472410e40dab88751d215de6f8d20302047c435bb500673065023100ac783a6f0c490c53e2ef1879598863a4ac2bcc9d7ab2b10012a9034c11d6fc3775db0ae953d10c83057d526e86783cd002307108dc1a11d26ee9bb8abbefc324b15acf035b931d293a3401828715e2d7b14cea23036668a081baa324cc00104ee6ae0302047c435bb500683066023100d25b80ec8fea43c44fc791664aae1c46a993d464037951a897d8c89cce4f2afb4bde419239bc69ad6cec71442ddf23720231008dc86023442edac23193b01803cf1009da3901c2b0e09f6f9e66483744c27a4bebba3fa56d801f5e414efb6bf6e5ecee0302047c435bb500673065023100de848873c48e5b74e62703ea582a4756835949a5b24a756964b9be08d36e470175ae4828be129362fa94d79c585668940230695761c485e8725f38e129ea8c04fc8ae5dd73aea54894481e061b0ac497acdd102bd655ecd300b258eaeda595d5d2c20302047c435bb50067306502307fe304b2849512b373545bd9b9b8c32b2733c9adacc8a031490776e718ec2c9f60731d6190fd4f79dec83deb69764dc30231009b520feb96496a2410ddc277a05782c766b468c1a6ca94d0b3de1e834977893c6f3ed12c1abbde8824c8232a95bc34db0302047c435bb5006730650230228dc88f3f4c7117d65717be9f4782ec1a4a74fcc44747418b1c69f9d173052f6bcb87321dfce0c22f2d9328f693d63d02310085945677d3fbf28e05bd2bf6a8314ed1280a5ec1818c4c0308fd4e6eeeade9fd8dddc96b9bc1b8b1bb02c249882fae120302047c435bb500683066023100a6c56f9ae5a1a2421d710fad20b787de8776444c015da2472e426352a44e5edc1d796bc8d19349f3bb961a82dfba3ad8023100e4d37476369c877e799974c1ffffd84624bc300bf7cbdefd64abb7f42488a7b0141abf60ab480a281ac5de07a1d559a20302047c435bb5006730650231009b39e7abe0abf6f7b04a42b7426bbe7ad2bb8bd5e9e4bbfa10ba62f9426381c1788ea237984614cfb3b7f3c005fbdbc702300226fc0b6ec21558308bf8ca1381c9b22f157b71fc40dfd082469d038a3f40d4f19b73dcfd5bebc62993fb0d14ac5eb10302047c435bb50066306402301c2d325fff80ba684d05106a5db3235c86ea0e3723f279da69cc7e9e83349aac0872848e716039ffd609f30c61e3a31d02302755efb3b1d07f598bab314123e34bb85138b7511692018f26a7abd6dd2e90192b0c2fc2b36e24a84113bd49aeea76400302047c435bb500673065023100d22b8bcedf397991afd17c0e6535f90234deefa0d810258b1787722f648a282c001364866a5d060e5333ea724b91c3d5023008715d10031e01cf2b6e661f8dd0fb5f18aabc8b06945322826d4de83817e7c206727f50c8620a8d1090ebf3bc68dfc50302047c435bb50066306402307bc73b4e54f629e309261f2ae05a7fa2998441eb2efc0a880c80f57d4310b9f93f1cfff17bbdf6ce984a22a8f90b0458023043f07a8df18bbaad9849e4d9203249921bb2640768af2cfe931fdffd3312076439b8cb1b55d82a08620556163e66652e0302047c435bb50067306502304f18cd32e56c1d87689bc3a676932468e7a2881237ed3ee8bca758216df5c5a377e703cba9e3d45d37ae2ea1c9b768bf023100fb74af9d1a099803b34dc7624b750a8e4f133e612e88221763f263a20bb741dc6a2f798834a5a8d88abb207b165b8c930302047c435bb500673065023073085a02263205d9e162cd235abcb96337aaaaace264dee304933ea8a7d815ff68f6ec97b3bb0bee9165269ed56b45ef023100a6f4e3b72a17b743b0607b1b600e80ef3a0cf112432011ac9bb507f4cea7fd67cf861b2a330346e1a71d45743127e3550302047c435bb500683066023100f71fa38a6b5b0fecd5c6382973779539b8b37ffa3b8bc9179e9e5a7c34b890e2a2e204fcacd66c9ee7d7e5d59745c54f0231009d32422bac7c3fc71b2e274e6b3c1dbd000879fd08ac562b46c0d182f0b1256f0a8559d09263d509ab29660703a62ff10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023059f75d3f533273a93ff4546fcfd0116afe8044fa93f6db0c0f8a34883623ba0b0e68c4aac3988ecf949e33c3112d0a63023028697d5610561b6b938927c3661c9fb1471b65760d1464438116c883cf220d0a15fa95adff46dfe646ccf2a2805cf6570302047c435bb50066306402302d91213be948b5c5c7516b59b0818ab8b33e4f656ecd194a68dff688ccbfb0e82e7133a03c125b8548d202eb9bf335a702303536aa11e334466fdf9880a98c2ff7f643155d1552c73bd2dcdc860f11541f5d7c85942429ca2ee7d4c7ff08fd39fc050302047c435bb500673065023100ed87b168eeab4d1693dc10128ecd8b33f7b22b87515d597cf4000642f03af0ec57c9d628aec7e681844a1d63092aa37702305cf6d40424e2fcaf8fad21b27c73c62fe16c95e2dcd3a093ceef90e726122be255f65fea23801507d7a74087098d70b50302047c435bb5006830660231008ce17dfd93f6777a03b060d7a458ba630f32484660d0eef41bc393339419c863866b7791f38536f9529090f715c2e8e3023100afa63f7be388fd2e13d19ba9fb3d568d627e6a48b5827dae6a04e29f53e1a423b9fe6b9f17d6387405cedcbb4429be400302047c435bb500673065023045052dec8b1e28f57f74f2ab5975e145a2c818533c196c846300a2c10db06c16fe32a80b5d04212f702fa62d7488e4a202310085fb6c0d9ce0a5e98077e88b3d903fce52cac9ab2f62ff776fcf7d0f0af6a18c20534a3f07eb1531b7fbf86f15954b420302047c435bb50067306502305933cc3521655d5500f4b51c8a760318d535213149e66861ebc0f04b7f33ad23ff8993b81e447a6561a1229b0b5d0130023100f9dfe505451ed4b25c5b519567a975d6728b78ccc3379a1e699b2da684ae8bf44a52143343cb0cf0ca6bccf6817d45fb0302047c435bb500673065023100ddbfb40ca3828749467024eb2a576d3a9a7db62eac88e4da45a3340805101c32c12e55276dd83a1afe479965e0717db002307a3224ce7a8ed5102bb49126b3c86c6ff62198a097ee547dd3bf95ac578d1c118226355d32db1def4f4af03c5ae4ca920302047c435bb50066306402301ca7abd52393f69a3c48fe476336dd6dc917010d6d1d3e225e648ab1b8a618b98ae24269e876da18cd6c049fafe81d5002301008ee23f26b4e0b3643badc5c11893ebfa92d31513c2a1c481d3c8c64b9ba48a3fcd970ec6b2a3cac3a89e3de78fd3e0302047c435bb50067306502304d8b18b0c63a1e53de44499812e62ddeed65a7fc3f6293c021ea551f33d661d9edbd4d98ad2a1fa062ed30293db91f84023100e63a13eda38100a2d74d1e5a7ca0df10467f164c1a72b39cdb1b61d1929d8137a3c30f5064f8b31655c8a6772466f1c80302047c435bb5006630640230629ff08c31a8928265af816b2978daf87d0eb8aff0779d12ea248252d8cf592c5c8a3bd9e437a729e509ee57862fe7ab02300ef3b185531ea37bdad1e551a1d035f7b191eafe12934377af22fe1e451795fde05315d5b5ef518218d12f289b636f450302047c435bb50066306402300c5cf728ed77addb22a16a39068553baf9d894820f4a545295d64d7fda8bea53c4193d120fa2ddf3c13983b9ad325b9e02301f796bb3d1f9ade517a1b06f52eaaf97a33291337da2ccd004b5f0d82935436702a6425235291f591efcf4be048d93b00302047c435bb500663064023036d7f60917db1d28ebc9e2f8d31426711612130bf2eb8dccda57696505bd5f18ae1e56728190d2285d1ff80674108bdd023043e6328ea37857dae8069966cd377b22f98cf97cfcf2417b4a583787f62bced77222faceccc14dcd09aa8fedc5d472d40302047c435bb500673065023100f98a8987e12d87b3b7b5df54d22ac8f64ff1e120b5e9d596052ecaeb984161737aebe6324a00460df46833590ef117d502300b7f3e4824ea62747ef903c059739cd0f809b42e393af00127951b470b4d2b0fac4f662da2f0f70057808bb010477da60302047c435bb500683066023100b4073024610bcffb48c39252f31e136f3e9deb77ab7cd76f2128bbfcd9d12c915d8945494a963f9d3d1c6a3b9e7425ed023100908eed72195bbd2d57886c390ae2dd1181569e50111bb42252889c9e6824f16fe517234147cc70576baf1c7c650b1e150302047c435bb500673065023029d577663df987298510fcb7fc673e42a4325ed94ec4d94dbd16934b82eaef916260b01fa006477e91e5b4458be11726023100eb9ba68963888245b038ddd1299ceacc4ed0149f39411249b0b2417d6cc00186026ad6e611303a40ab7f5c04350ce3fa0302047c435bb500683066023100de85922ace19f4988368044d0777afaae8ccf720a917be44788866da3a2d42986e84207d5be57e704c30a85cd73f0ad4023100c7f5e0c4751b38cf56b9d72b50a1e5259443cec47347bc5e49ad0b8792329f3650ef012a7db3452584152d87cae4eba00302047c435bb500663064023046b422af5dd551875870dd51ecbbcd98fd20e84de5de6e051997e05a8cbf409d5450662203584cc39723aa81bfb8edd502301558f1b1dc9c2e01188f6ad317e422dfd67c046441023c7e870f8372b49428302e4d9ae30690293d03589590182b3c340302047c435bb50067306502310091e8c29721b1f441d6eed929f0ab3107d8d06f7d5d912f2245006158245fc7f978140864332ab1bad633bcb341630d920230202f5fc9cbb940cadc4195a61f22e0bbef58090d6f45caf627a40ce60300db600bd5a8cc0e2e827ae3d01d989e82e68c0302047c435bb5006630640230646623c223f0114b376773963b4f8c4b47bb15c236092217d3f66fbcf41f0b937372ff8664fe524afceb6bd1e2f3986202304c93ba11fb98ed6578746b871d4ee3616a2c8b74c0fb67a03edb7c3f71c8e41ba4d596b25864bd87c253ad8127e3a6d40302047c435bb500663064023039bdbc5a0ab2cd7ba97e52727617946fd648c07c95750e563cd3b76001f0da1f5ca63b8fbd292bddc574ba253c00ceaa0230652162bf79a6f35fd72e0f114f09393209a8b913e18d0a49276db5ddcfdfa48d95d975785ba1863413ece45e11aed0600302047c435bb50066306402306ba74377c7e4cbbf44f2adfda763a2d448a9216021a7fa33d8100001a98c712b6f97c372187694a12e500a6120836cde0230444dc5acac106f7ea49dbf568f0e12eae7e1008b3468564b877467bffbd15e0a5e7df69dfe630aa1d5fed58d2eeacdf60302047c435bb50066306402306cbab5e088c2ec79b8ef916b615eb278d348bb31937e982a133d45664208cd9fdd842b75e7560e328387863a04a7c23e02307aaf02109027cc2deade16e8c6d5c2b24ebfe89e397396d981d1bb6090d5ded2986880f11a9ba4c44c4969d896dd91e80302047c435bb50067306502303361a688e695b7c5f1a355e169ec913d46d2cb996f00c21cf3bb6943600f8e29443d012691bae7826a68bb73a1b45c93023100de107f096b5d64697ab4fd6186781eea263528586b59e165fb8c046c7711469e4b6bf8ce07cbef8bd3086840d628f7650302047c435bb50067306502304fef40ac7ddca421fb53f8019891044190c4c7b484d52d0064beabf29122d134c750a725c8278f4e0b55876377b6b00a023100a8a19f80106ce85b0cdc485a1dc2e0b6051b4732848e49a7c2a7fc3ff2e1795a4c00c3721cfe42fa79771ea04fc5d6bd0302047c435bb500683066023100b86cf7c53b8731bef5d66a310c49e2cc76ce4b4be68ea235f1b778bced7efc78b1b727b090dba3ae0cfa31fbe07a7845023100f825ed97589d83c5cdabec5f13cbacd865d4ce00fc7c46072c71d1db7981eb7ea9ffb90ec2f5acf3bb5084f58cc76b010302047c435bb50067306502302b498d90c7df6c6e8d215589cecec94d45587b7d028a2af3a366a4d6609e713660b55e15a128f48a039a9cadab6a402f0231009008f5b84444a29012945ae55d289cea909b51ef573a4e681df7f14a665964a1e68bca207561b38e685699623b6cd9a40302047c435bb500683066023100d1a6b8750feea23b176d5b9dd41dbb546fce7b6c68ea27914455978aa82710b5eb6f6ff6c62794a3a4c6ace9639f692c023100ab89830cd01522afb980fedaa7817055f8dd112e53e8562ac2e8d1026f5a65abba8683716d8128c36b2ddf4f69bef83a0302047c435bb5006830660231008eb38a7ad2d4bf4f45b3a5c0e6e1f14806e85d45a6371be4d40d9524b8b4bfaef010d4ff264d1e06838489f768594554023100f69f27287c8caf5e6707a396ffe2a258479abb1983f6bcc7d8c1786708c9c0fe0e56dc818a8771e815d0306f6e79911c0302047c435bb500683066023100def7b3a8649dd391b51c9ea6bb69c2249d4696842aae106d52ab968e635d76649863741a32aa7717ec108371a0357de6023100e04d12f5d21d4f19a782649d1027280cdcec67dc7b193be6ce027f369c35e30914f1f22922429c2b829383a3f1220d170302047c435bb500683066023100d6d1d0dcb158de3044f6d0823e431100c4eb1bad2ccd4afbb318fb8afbe30c8f071513e5b156de21b39e338af313946b023100d2ea938203b02f2d38c2438de459b109eab90f05b98474e6ec205e2da5e2b6dcceb02de3bb555d45c36851552063f0950302047c435bb50066306402307ef483ce9c208137e8179916c1199fec97d4a46f8c318feb3f01617f9185d1b1a676df60307357d3dc63b7c634335be00230162c19e9090311a4357799c1eb29e2f7f7442099fa0844a617fadf932b5561a183e9cfde20a042e78568b3bc5f59be030302047c435bb500683066023100f6516723fbda14a6e4ea6195346edda49ba7919c0033f4dc635b8e3e4a1c0fbaf361f5a2b550b93d644d20413769855c023100e8901aa52e5c258c707c3bc4cf91a3f28c6de7becb76285adf7cafe27c7859c82ab8964a88b20c66afb888e4c09c2eca0302047c435bb50067306502304b19e6887092d9c7886b2b4c6bb1ea10d0ff683a6319fa50929e32f9bc570d4bec2736adc0c3eb2dac07196f0b8a56a8023100aa9739e958e334dfc921d29cb4f4b12058b14e4d0218e90589fc87380ceae97d33bb77f4c60e863f61aea69a5a5f4b570302047c435bb500673065023015c7898927ad4ef9d16b39f5caf9cfef0b0b9f44d20081d77541a50ae1871d34dec8e1ef5d9ecbcb93d767df163a7cbb023100f3b4d3310920b9a65ea60a9312bb31761d8fe46ce28d043e44a059a18c972249812b325607f35b47f6b0370676fe80ba0302047c435bb500683066023100ea52dc3ef876d7f7d26d905f76da957799a84f9a4f92836b23a6331aace019a89a0b3e60297b46d2549f511a2c3b1ebe023100814e989b023ed72fefeca4a81bf55d1ebfbd7b35b0beeee3b1ab31884ad56a2a2c9eaac2c7cda215bb75228514f809770302047c435bb5006630640230420b3a0fa4ce4745af2e4f2416d160ad62181add3770a003708a09b59c7097e4847e7f2db1cd24e8285ef0b0c4d15fbe0230716a47c4516de3a4d15ab6d2b310eccd2d10b7e015713438ebeacadcfcb0a44d2d2b5a74834bb85b13ecefe3a3abf9a90302047c435bb50067306502300f2ca7aa63851c805f4e1e6f9d6cf627a4456d444848612d0b62aac971f93492953c295039e1e7716a3a2db2fb17ff51023100efcfd18745975038ef8ec6b4d629360bf6f603e85c60de2df68601700e6339bf24a522b93976c0503358623f504c27910302047c435bb500673065023100b95f5333dbd92ed9dfdee77c59cfcfbf7ffc72c41aab80490b9e8692b31fe2e0758340bab1a2f7793867ce7719ae3ba20230156845c8e7b7ae997bb0791c9b641a1c53574ecf937600f61ee837d74e50ef9e2be5b19f2c7b4e2faa1b4c0a1cb8224a0302047c435bb500673065023100c8755098e09b947f1f7b41c20d4efbc928c9b94a8a50e8df044431c33ba00b753de5b013584049e3448855fcef2b81a102304a8708945684224d400fe0bb50b88d189a1e3053db4b3b6623c1f65b15217cab814ff0fb5402b9fd5944e8e2d3dfe3c00302047c435bb50067306502310080cbbf3204c749c24d52aee1eabb7ab33475fa26c7df2d38b180502206f019faf4beac438d2d5c99e438b1f480000ed302307b04dfcfd16878b445e8ea7831342e54360b7cfadec4a8ae32bf62b2326969d2714a95ce803b4e087e5501d34ed3f4990302047c435bb500663064023058a23abf95c7bd8d9e29d9963363f248b6161f27a2891d56370f7281f189449bc1168773b546c433bd8364427b62d66c0230243dd8e8048f036935ad13264acc609e7a744d5582e1c3ebde991f09877d9fe755039bfc81aee7eee9def507233c17a20302047c435bb50066306402305d9789c875a4a8633bdf180f346fdc5a3255dcbc119f554cc6b8aa164e6fe58ce37c7b03bfac463fb6ec2be7cc2cd085023014c2b759d12006349dd9a0b6e899cd423355f3c573404462773485f87f52a5172fd92160e5b3ac142719902b0951f3fb0302047c435bb500683066023100b3e97edb2d39154c85f8141d9f78101b0847bbeb846b71b0c1806f8a7307cabaf05d039e60e47d71b21379947cac7f040231008de3e94ad1d7e58aa5184bc9f7156604018ecee611364ccbf3675fa5a128c60eff6ab4acfc299049a69d1a981d750ccf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307a9e5da576014b01a95c219b70d7437fbaf978cd9a7908d1e86432903bc5020433a79dd9eb70ee51baf71fb128f4b304023011288334c0a10466bbadee455a9cc063ab997b39cb0416f9ce1c0369bbd912f1a1cfd9c09ef60cd6765c58a7e3ec91ef0302047c435bb50067306502305af612756e86c4e31493aa9dac73941b3c3b4501cbe8377c9c1740a8692874470e7bc57655f673497af5b4f6f997f3d3023100f107e7e84db7b03c8ee155bd5c38930a6a96fc9cd65660129c1219795a96f2128b3a73acad848a5586eda941b02f6ef60302047c435bb500683066023100e78e01042eb6163245a0d6e811b4ac6103a64bf49ca63bbaf41ee63729cecf36ec34b769095c85e3a0aa62ec5377884f023100ada672b72785c87470b87dce59cd5ad9605ea2a3c1d96eff872e2b4609246a1be09b678c071c6dfa4a221c679b5f736a0302047c435bb500663064023065f71e1ebf8fccb102fd9058e3124276e7dcde2d78911c074e61e0e6eda47ca3802e4324c0784857a0da163c634d1c2302306193a484a38925efbd159827991c0ded457969b5096c3b8fd7803af86a15fc1a936beb0305b28f0fb57440d9ba1282930302047c435bb500683066023100f3c48971bb277c6aa60b6e0657cfbcfdc8794e6615a88ca004d0e503ed449e4d207fe88593e8171ad8377c2e5ecc50760231008e4f6ace4122b27510dd59f8e53e7596d4384504e05e6be09b601ad6276b17e7da9f2bb4dfad614cbbfde1d31752002b0302047c435bb500673065023037280aa157578d9d9b5ea5a2ed7ef0ae8aedbc9c6861d34dc205d3ab93d41a47648a2f2cb651c2354db1d531c6190783023100e17d7775d1b185ef3cfa9a59784905e40ee743113e300e35a8262417b1c25e135c4f9c2c0606de8ad0f5746fe303c2960302047c435bb5006730650230501a1a42d07cf85a0d999001daf5d9e932b16c7ca8b5346ad5be292f3aac26aa20eabdd2c638b4cd82b3824898293b4f023100acdcdd58ca821dc568bda15f7c9776ed69da6b9f93e3eb80b7a50bc5532ca35fb6648b422d093304c892e0b149713c490302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023018ad48705a9f245518ba1e039d08a89ff031a853ab112a496c914234347fce1622bff9205f2e4dd66a7699bf3568c8fa02302aa9a4fcb7849a57c629702dab322f02c3fbebcb0b8f35178b5015b762e01b838083ca9480ac899074a2d9f74f88f4720302047c435bb500683066023100847a09e3e447205bd637189e663ef689a0aa1f8672a262386de2d6e18a37d8e1d547b46494694ba5bb9a73708acb4419023100c389b2ccc4896dfcf0c940ba10316a048e3ba3736959fcab6cbdb65dcaa9310c266e7d77fbdf16164dae5212f74171bc0302047c435bb50066306402300ebaea6d7974417a8712c8aafaf62666824b6cb280128eb8b87047c001d5730c9043650cfa53184bf2a4bee37a78c8970230688a22cf5738e2b62de2a33d2575a1c5383c54d728fcfa2de6c55e280ea30d308585ccf0e89c085ba756e68d4658621e0302047c435bb500673065023100bb3319ff0c465401adadba73becdf68e005c971a738e43ebe091a9453064297a89854410dfb06b9fe104435b14726e15023062886f0689ebecfc7d51e7f294ced6483f3744fc3f8fbacc68d03fe5071414a6924de1d201904908c3fe5f1468ae37e20302047c435bb500673065023100e5b405fac47b090cfa4a6cc56d423b698d363036ce0bbdea266bb2317dd918e106a5ffc663f56769a63a654b8da3879c02300c30ab6681ef66c42cd8ce966b112d31e3ed06ab3a0c25907c5aacfe9096ae27a6bae8fc8ac2fc2ec97e3349374f89aa0302047c435bb50067306502304ad363e1e39b872eec225f3f228eea3bd99bff4cac114fe189df516b6bd795059ec41082e0102fea2bbbb470368d141a023100ed2a4658b53b5d1e3a76d93ec7557d446eb022b2177ef7ad1db46e08f1232340e9786c7a939f7efcfbed87da2a378ccd0302047c435bb500673065023069cfc82a0a956243c1329ffaff59f1e836b24c437a675d860bc7eaca73d87d55b95a41911f547ed075cf1bee3439bd86023100a543ad089d49f388ee3b61612610b5aef1313202937ac4b4e66d7322740f3dd7b4ad0ef5eb4b715a5828bad9ab8f90940302047c435bb500673065023100e8ae84cbbeef2c4b1f49ea291d643df6f7eb41dee74565278d51316805f00e5f6e92e4c3f9b3fc1bef0883155e92d35f023022d55024fdc49f6b82e6fb25444fdb1b387008482c4d17636121271513fe7c6fdf266f37d1aa6c845f6aa0f18cb3c2fd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100da28ad1c98fbb640229d6f8f7a4fc4964b4dc4fb31fb7fb61d6461eba8f33a74ecf60b81b29d19ba90e55e1ce4864c62023100d3888cfae05cfb12d2e5cb73aa1557a6600dc541aaa6e5b5259729a4e144206a78f5a20f66f04c0ccae8080dc22d22c20302047c435bb500673065023100b8269fcd38175414f3082d76caa379bfde7b4206401dd155922f38afda201f53cc5beb1f005b3bee22e3aa0c69dbb32f0230202d801c47157398c9722ff7ad3ac79191546ddc5cfda6a2d14d5999829832767ca2d339d552fbfac37f0f3d8aff20530302047c435bb5006630640230146295292090b071ecaea8281e493f4df4f33f746e6bf81495d5b96c0d155a4e7a24a672330c0843f7ee58cfc7634c4c0230459b1802e818931aa8d3c93a35ec9742a564a46acf8e40c1bb4c24384f9feb670d5cf5271e580a6c29708c3a32bd238d0302047c435bb500673065023100ae191c4b8d526610262eda9c3d6a007e310e780ff47152193993b26836a20953c6db0f5c22ea2934a8393795ed0dd46202301ade7aba06ba8c8a3c4da89f2688e1a2be34021a96a24c843f8b5099d0f73746e0bda49e903fe5ce3876e069a818e8ef0302047c435bb500673065023100fee542b7912a8bdda258f8eea6773dd42cc22e5c6546a285b5b6ea3f5baee1d521fcae6763fc98153835341d1c9809db0230157906ee5d1a226913c14ae11f2c0c0b008196b351274c0d92a054cb08e88d58b245c20065bea88b1b7382d6b41e33990302047c435bb50067306502310081fa81da9862f300a144a52c170f4294bd957487dcf4471d7dda38defa35e84b31f0643c5a312ad952a5ff8377bcea7302300c04e832894281f5635aae79434bdd1258a09a5402f3ce04916c53d18968d65e86f3af6e711df9f5abc6f041444fff3c0302047c435bb500673065023100836775c0f81a5e227ea89902e5ad5f562f3ec39b042c6648a1753d67cfad0822937d9c4f6f9eac2676569b57ceb0017f023029c385042f01cd90b90bfc919ba3560b72a5bba6a3b5d0d8c093b1c9ab93387284919b6d8100e5c1ae06e49460a87ecd0302047c435bb500673065023100cac38c99ab4b551c4ac448ffbbb8bc6ce1c9b68103a17ce710f50dc1e19baf419f93667aa3027c9d36a0e6e8ca478c11023055dc482a98ab8ecc6fb3971af75fb4184cebdd85dd4ed37c41208b90a9d8d792542c5c60a302b4024bca11ce63b7b2ef0302047c435bb50066306402300f3bc90f3fe44e36673828bd6ff29fc7d4e9b222b2497a991e2d186acd69bec1e66ad7647cf0f99fb301789feb3fdda702307cef9d2d9039e02ca079c1a1132f50f9fb8149225d9fe282ee3ead5af60e11682cba0b3ba7d2a907175f421f70a9b7180302047c435bb500673065023100e5b293c35f29d8d5d6acaf0e716cf2312d80e49c3504c8c35278155ec9d68ac2787d7e0eb92edc8cde524520c3f51d7a02300994c40ba0883ab4cb9da81ab113015934c00ece2623d0313633bfd8faac57372d54c7cf517d818a6d68b2aa52b2891f0302047c435bb500673065023018d941284d2ca15a4f06eebcacadafde4ec519ad5de61dfd40088a74528200488e07f57543575e6737ff6c235febc4a9023100bbc4b16173f48029d0c98af615f934285a0e89ac06b845132f7564e79650f30a624c691a5bf5a55e5aed81afb0892bef0302047c435bb500673065023100bde4447c1e089eeb3e38eae782597cc5ef8f3a061eb4e5a5e35a9b276759cd6d2877446590e3d810fd6e36ab51fc750b0230097b55d64ba58c9718396cd2f1d8f7ab7df5b47f7c86b7b6c2a46409795c271f59dab9814bf2e448258815ab0ecd3b9f0302047c435bb500683066023100b280a24094bc0165157160aeec4b3f67b1ab9e7496199c2a532bd2ecc58c78f813d7c8a4f986fa538730d7cbcd6e53e6023100c7b3c805ad0b0fead975f9a6512c426afaa88fae4f20605d36cdb64363d1e9ee601fd8d34f8fb1eabc031c2b1675ef170302047c435bb5006730650231008c94e8e98b3346e6a0dc313d0a5185769b3820d8b373cad25c49a55996383beadc2d75e22e8ea8d8fa000f779483db0d02306de1475a87a04bf1d203f350e222a32d01ee0e3c45a8b98e27fa9363fe0c1688574e72ca24d2f2ea5e88edce1272a5860302047c435bb500673065023100fda68361710d0dc4967a4d3cd2664b2d550a09a12e458ad7a46292a00c5fe9bd3ac54d9b5d6662c31b6fd889cc1746840230486fb61623003626965fd2da7407d1900bf789402574c155447b282cab81ee2b46c1e3703da77ccb957d6c37873c18760302047c435bb500683066023100c71dc16ebcefaa073705706a04c0ff658604f8c5f9e5fa290a8004ae2b54d93c34419a04f2cb5009ecd9b4a4700aed62023100de7ac2e7e9b0cce4d8ef49cf82647bd56e554ce2935876238dfdd9f66c9e20316090c69e338a22209d2577338565cc8b0302047c435bb5006730650230166f900742a50fd9a99ced8cf56f3f5a6f52740c62f33244244152118a80aeba8bfe92f860f59c0c766acaf00d01b539023100ec7ca8d469bde51716de83984490113c9600112c890b524a72f32d820de6db997cf93bcabae9adc7e615d13287f2f7db0302047c435bb50067306502310092283f15efd923d864780133a76644d74efdf3e9f0805f73276793187dddeea2081ea9009e71177cb44f6c1f44c9c6ac02300ebe5c1240e39f3c6ba67a7381e008b2eeb2ae9772b0e73cb3696e958b93edc59891bf86bfc3937e79316dcfb148bd6e0302047c435bb50067306502302505d608647be7c7c03e7c51c4eb949b292fb186382d198088b45a5a057f67f0724b7be00f090c148c3bf6853be0920a023100e92a04a89e0154cda41defa9c932833ed054cc78a766105afa1c285cbfdbfff6b2e20d21ed55daa15b42e38476c8993e0302047c435bb500663064023051cdedf41212702bd3184262e434b341a4953a27b92b72646e421fa1d988da946ad37c093e44af9f9cfa4f98c787e9dd023046345c32bfbcdfadee051bb1a661f7026c15f00ed489049ee0a280289f933adf4f9e351602825e5073c62f57058eae3d0302047c435bb500663064023053620b2ef532c7aa3d0db356276272e9e2a5eefdc5358c8522ef34768dc1d32cae8c94e60312d1f3e0688e0befb279af023038e044a64bc5625f8d50fe0c9ea76cabeade7e58e111ed31b3cee26d003f4303a98c23f5f5cd699cb633e22537dfa57a0302047c435bb50067306502302b68629af5c3bc4a8baa724033c9a41fc6dbfd320e1248118edb3a71d2248146cfc2ebaab6a8e837866dda5a1e161ecb023100f59a49bd04ced3a659b7c912d42b7238be1a3d5a0bb3d19ca00b7dacfc24bcf4f580c9d2528a385b3a284dd1b453c86a0302047c435bb500683066023100965e24d56284e4c73c0d82d2630e8af7b780a4d54b6989ee0d7f42a80f918f10d24dd9f7d4e261a357a876656eb15f6e023100d16d70650f9f13e1a2651889375210e4d9b0ba03d95482778fc592a1b10101a592266e998d4a000b4a16aca002fc1f3d0302047c435bb5006730650231009dbfe17f44815e8519c90d7f905e598dd06b0cffc6be19d619521d2c1a695745a4a02c28e247b8a4bfc5d6e9a99f598702300f6ef8c8604f35ae26b1043de671a33383dcc4b7e3b2b93f0d96d9b37a9dfb0b3f6af1f7c5c9a1cc3ad932d30662ee400302047c435bb50067306502307331b4f87926aaaceeab607da0aed37f02bb051799442d0055921d91a2ff49b8ffd992781cd0ef2c059f8650a7fce342023100dcb5d2b98915ee2eb71789b0dff08875bd05d8bdfdd48abd0d7657ca5e819ef2e175846d2b9999807683a53c9ddedcd90302047c435bb500683066023100d7080e66a87f7d324d5335668dee49d65ca8b31b717bd94e46ae4c4e023451e8bd9f936f8d5bfe7fc6e86cda2408381b023100d5f22a15e7ba4276358e35fadeffda16e1663172765a5b8adb1e7c2de8f343af512199c837ea902bbde5d6aec18e0a5c0302047c435bb500683066023100b4db677d1b378cfe2c186860ddeca1f1cc829a9fc88fb69a55b941c0d58c5c339967eb4ce252f47959984c271a53b588023100d435ab1f4466ca78a19cee8efe483715651f0d83b881d36b5293a90451190b4209fa47d52922b1feb27a475d9bb2ab4d0302047c435bb500683066023100853e22b03705e8945a004a3aa9378ec3370281a555545da63402e3b18559dc3401b751d266e6e9071341c4ca0cb024b0023100c5d368ad69f53393b80cb1c81f9a9d94730e3883dfb19b664311bde3b86694e8f7caedadae69e27f6a4df3667549f53c0302047c435bb5006630640230016602d648a3b6527ff68b18a844ff66e900e837655fe9101fcaf7c9f8075d5e2b5897cadf5eb94e8ed2f5c398821034023033f9741c3cc8af81aeee4ecd43856fbbcbb7510ddb52fee7acbf38273527e6effdc3eacd8713d01a39fa186b537f77e50302047c435bb50066306402301adcb8d4a178193373d7b63ae61098893a59beb74d26a785eeec8e691d441b17e459197623394f502008d26b00b3c2f302303167f7a2fdd8c48ae8fea7f6a09ce9974cda77a30ef28b14f00e68d44e49802c5c4dd37f45d134b7aeac2d6d5ced947f0302047c435bb500683066023100967c4f388e4337da78182d3e16c7a70dcb1a5b0dcce68e2157e4ead5fb86b08064d2f58ef07c243b5599eade0cfefdd8023100caa87a764e61a78638ae2b2545118ab437268f17ac4bdb264bc75318dc8764312770fffd289c9576e0dbc5a259482e6c0302047c435bb500673065023100d1b8b16e5b4280ddc61003a4f36752726120241347ad3d10a70bf0f4532e93da30ff6527a83a2573d8d3f533c9bf9b0802306af63b3f325c636896a1b418bd7b19b86a377e13b889ac7ad7282263453c7a7769e274c79eb539b53ddf8a1066c329700302047c435bb500683066023100a8b701c25d0fc7ecaa27b4a3c5848f0b50f6bebdf06026bb2cfd8cba9042ba4c18bb1642545b8f001ddc3e53d244c433023100e6f0dc2da6833384e0d6da9795fbf15e618b598b05383c938de8cf4f2c2d3c91be2e5e5d6bc59db16aae07bdb0dc653f0302047c435bb500673065023100d6d40ac0ba68b6cad97e4307f79635eb95d71b0f06f0cff961c8fd2c81d156d65902982b1860acd0a61a6839b93809970230211bd5d0830be109021323790aa9afb926e0c977368081138811034868605ae24929d2bc78bf2d102fb1918ea273f3b10302047c435bb5006830660231008af354359c98f90d03f39f92b69ee0310dc22c52c9019d02ef053a41be0deb55ef69038ecfc671189a0b55cd372c2178023100a0b820ef65187e3dadcb51b56e8fc6ad06572de1ba24dadb7eb3f95236e43ac8a37aa6b46e8342837e377d5092923f020302047c435bb500673065023100a2293705f2ee46fa504007ff58450075a7df15bf7beeec89ce880ad2d4f8ed9ac722305e498f402bb07d1e1d2c17d82a02303e13ec4b7fcfb4ee4ad9ad80e19edfc226f46f945f5b10adcf2551789ba1643c5ee9b7ad91b550e782b6b3d8d96b37750302047c435bb500673065023100c22a9b79790bbd86cd532c7026407c7dd4d30b5a4b7ceace425aa54033242a78c3ad741648e2e383f4a82b79d9ca03db02306e00c761844ec46008a31df5b378ab4bac1700f04ae5fcfcb6f3c9e6e21e556d2bfb47f9674f843a98eb42976fcd29b40302047c435bb50067306502303bba2d6329b22f2ecc8baedcab2867c93c0d4da5b62cf220ca81a93603016110f6ca25d1304114f1c255dfcbdf204fb90231008a84e2e9d9dba9b03e03854af14ce035953633c4859fbbe972f6a9b81d426d1aca29ff2e7b23ef149279d3511fda22420302047c435bb50066306402306f79eb11c34d35ed141cdf00043cedad0ebfbfe7dfc544e6ac846b9884a83a99908e902cb00c5eeb2564fcf84232acce02306ebb921eec4cb5e99ef60dd054d12a9ba4449ea0129c489c46d580029e0eda1677aebfc69ccf28292d96fa0514a20df20302047c435bb500663064023051e1634d300935310f58f362b5bf3776370a58e72265ef6bc715963c6082ab12f1f9d095ccc2ca3749bba24e4e84748c02306f9f32cc3158290fa7ec20b294af14ff71ae8960bc8b30bdd24bcbc5d3d3090415d5860f738610e23eb81453a1ec52150302047c435bb5006630640230569c218bcc455a75715e340101731399ad9e883cbcece88e7dd0e49b9696fb52599d41c94432194d4d437d53efde8cea02306fac6ee0ee0019a059caf1d62e0cf3a645d55e047b873a4cc152717656642d87820680d2d9b359aeb7dfbcede81d247a0302047c435bb500673065023100c5069afee3793542df5710b5995b72e39c2747aa3e013d870125d365490c74843b4c9e3b59aa660eb3f64debae73026302305fd8c9cc038bac2df673985e71ab5523b173227c12aa398ac10f4ea6f5a45ae72afc73111f137bcee681e40f922476310302047c435bb50066306402301d6134e4f17178107e032953686ec7fcf09aa142e58140c2ff6eb75f211d72e36cd930f4ef53e755fc767c2969993bb702304389e05d7d81d5fc525ed275509453a2d29e0c688d6390d6c2d71e35c183d200b22ff423dc089aae545f0ef6041123780302047c435bb500683066023100d08f88b1f7ed8a7ac9169e9ecf3b933513d6fe14c43ee2373a4e1cdb9b46d8056b1ce61e7723c0cc05bd76626d6441fc023100e0bef74d19ec58723e979f1540a13931041a916fde301b59dbdbe196f3a4d1b06c73f28f0831014efce4f387161f7b830302047c435bb5006730650230488b6ae40b83b4824c2d9d91496186c123677c77d972450dc8ad5ef7db696f075542c6ed85bf66b4c4fcdb074f351f7502310097c72dcf7a72ff6817b9ad154e619c6869d4ffdf312d376a4a5bec322cec3b87f2198f0211b6b86693491e792c2c124b0302047c435bb500673065023059cca9a28b63c8887f85e200ffb97abb3c8326205ac5ba41d0fe29332f728332b0d43080a2302dc713910df779b78558023100a0dc4a18ca815e4c7436db67793ba33977bb87c54e281dfdf80e8c8d91be914224c6cc32bea67b7be8db08340b4d0a680302047c435bb5006630640230442b8c5341f69813f76f9edf98c075a33ad33c85ba9d4e313a930af46095c8b206e33e7401f8ca23183a83f4fa4219de0230626ff215cbe2ec73a1e75f0239f0a9150408b32ca9a5dc1e3c9c91a9b1eea8a22821073b0fa8c64d1d119182c8483df30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c23cc8de59052cc72e3f1af6190fb15e08f7a406e0f66fdd5e26c45859e16bc4b2252132e8c3d71f05bcca1217b2967c023100d22dda7177e134e6e57c1c0225164bd953b1ac0444d5bc2b7388eefd0f39521f50aca11683023d7e05971a4296aa60510302047c435bb500673065023064871cfd3be66b21dc5ef8b52c08c6e1a522ebd1b475543d763b269d75cdfa963529add51473a915fce56de774951c82023100bad2e392abfe7d506f4d37d4da89cedbaef56ea3de4189e141ddda036a82c4562cb84093355bfa547dc8e434c2c5f56c0302047c435bb5006730650230647758f77834f1e002cb31c7e7747ac8c6043072b358fa37033a18e113a6633082a3be462c4b436f9069329fd1981cfa023100c53127c7af378555c32887f0cb598d393b878bea0c84c7eb6831c2e7360140c71ff230981c132311504e021c04b2c0380302047c435bb50067306502310085cb10be194c387ad6e1e822954a0d29fdd2b4500e2584a1b1fd550ec70a528fbf91ea946dea83bf51a76e5e8b4c7ca002300c8ead8a9af2297bf353c7482bf9e23527f854e9c8347a1937fc5e1cd8fbaf069e054955e52223bc2ee3f624ecc6dee40302047c435bb500663064023016a4165a0af0ccce80ad0bff535e61916795dc17192d09f92f16a6177db62fd5ecd351a2bbd1b8786e0e43818067c47b02302d52845ed19fa1f9645dbcfec1f81ed2abe02d3aacf4b0cae4b5ccdf7418db57be154e89ced6aed0fbbbe0597ad110b00302047c435bb500683066023100e04b67bc65c8fb7ed06f7b65626c6d2d244c8fe664b145c01a53836387627f3c803886d5611ddd5e34ea0a2c1db5db10023100e765935a594a8ecbb726fc2ee9ea462414eabb4225feba134be3dd522130693ba6562758c7d0417ff572fd9528cb701c0302047c435bb500683066023100ed071613ad04056c079fb924861ab1821e577102eb57725d379df65a38aff7aee4601aa3f85c1ab1f16aa7c89662fac2023100839c87be48936e6a652ea73cf3151a49364868b0578869237f5f32708f2414e628a5a0b703b1b8d02940faed9ff62f830302047c435bb50068306602310095ca10dd68394b204cc659d5e93d4db4a99573f132051bd98fe7840e764e6ab4f3fa2f730eaa95786bcf7639295553d3023100a9bfbba1529a4ff4ceb4917e0bc249161e0e8071b6cb4a2c585490dbe04cba7b6f6508256a1d40943c7a1a7f9b341ec30302047c435bb500663064023037234f15dd6c9264dc56154ccef04dc4f45b2dbd0b4534d7fe55143b081b7c6893dfd515d17f16aebdb947cb9ec2367a023035b77e8534897e0de97f1a29f8ced3c4a01febc57fc9f60790baa3252f41c3ceb983c4fab9ee083c620db4a7eeb9cdff0302047c435bb500673065023100cd345ec6ed85b4c0b0a6244251f5f69f270318341dc6a4a8a53e1f396ef82a2f38e77eae599a32c0de644528e43b1c3f02305e4b35cb8abcd7e5000a9a21d41f117654823a52334a5d7994fcb70652cdd9098c8d95b01a82fc0a746a0c17ddb418c20302047c435bb50067306502303e243a9f0b13ec545f7cd7d9db386dbe754d8155a5437aeec24ea096aabdf6ece7fc7be00ee832fb808480331ece1b47023100f84a8a7fcb6a2f1d4ff5f32a9ebed55f29b28fd95ff56d01c0d739458409eabaae2a3473902b74adcde40613a50916ac0302047c435bb500673065023100e393622bf0c3f5ac11e4c83a098199c2c26bce76d050095a2f581fdf0fdeb3757bee9fecf3ba91d85fab7b923dcf632302306868e72e6422bbfc0921e81c52d99f4e1cdb71e9d23b74842952eca8603744d8546f9563cd9583c86f56c1fd0cc608220302047c435bb500683066023100ccf099eae8d2d852559f2e0029eea72c78a7272a4b1b50357cf3df98ac70e42ace6b5fbf590fffb496f95c9002504b77023100ea5489020115eedbee7127b76983e7b3eb893651fbeb77cf41a7ecf9f894180018969ba0c3516852973857a203b555900302047c435bb500673065023100b9a976d5a31a176931a4a6f351e49bb7e043e747187624f8807543eea64b62fc4724980bb73454ab5c092ebda954307e0230212ef523b438aa7bf5f7495237a13c0efbd0bc67fe75649d2d530f54c44bf8bfbe191484430786cec1f5f815846aa8700302047c435bb50067306502303545d70cb051f419d5e513696455a77b08412b24e53efbd47b623ab9fe25f5c5d904b813d6fe4abca4a9417aa858d00002310085b48d9d87eb69aa9b3d5fb5fd8c1a15060b557b23f60a0a9fa705e31b87456bf55ff28761269325a35bbcb7e768bd300302047c435bb500673065023038b04ed21206f2d11178bd05887b371213ddaaa86bc9e3eecd71318223522d840a0378b905b03a08a337872ea252d0df02310083df041cbdaea5fb4073a297b94be72d2d5751cbc2b0221859f2f55a12baa89bfc0d353930510347afef5ba9405379240302047c435bb50066306402303839c88f11e343173ffcf6eb0989726e50e072aa04665c0449a0bca13d623523113759db5c08c13cefa239895248cb2002305196546ab8d8afcd7383a283b0202a18f5880c55e4bd57c42569dc6cffb52ba6c9f37a2eabc42e508cd509e0fee86a660302047c435bb500673065023100e4c5a0249d8f783935b1eb33d160378346b161a4c09a3ca3ed394f6cd3be827f0802a15d014629cacb67a20cada5079d0230503019f8f1c446fa54984006541b980fe6f60d16a74bb54597fdc73b00a830568ce329373c36aeac7fc0fbd1b351bff80302047c435bb500683066023100f003680a9d17c217fa333877141396c5cdd1270ccec3fd1a47f7920d230611b9ef543c7158ba639739ff6063d6dbf566023100e4285149d41a245215aca2638c29ff8416677b77c192e9c9ab811ad1679f9dc2931b3cb61f6c47205f97269374b6dcdc0302047c435bb500673065023100adb9c9a771489f519a98769c8ce9bacc48196c13c2988ef5a23af932c25f4d7980d1808ab03996ee7a6d1e737da1bb89023040308f4471ed997befcdeedbd80c012ae85b9184bcd9a55c93d5331eb87a5fb6b1f66a27fa9de54b6d5c603aedb33eb70302047c435bb500663064023010e7678dfe15c9f3c5754f8fa0a04f12487cd607f472d950d550b7d9f86391949c36d33fd65bc83cb19ad7099db9121402302c822392700f7149467142d5e4a209f30361586c5653135e8f2683dd082904d11af9e0d56eab8ec1ea85cb349b92b91a0302047c435bb500673065023022b7faeb431590cdcaf5d65a766c3f0483babf45f0d32af167854bf6bbb9cc55f8d7e32067524ee4aa2cd00604a0bd14023100f3d69c73c023931067bb75de5222ebab70c3920c83a938bd84a37976ac33944da947aef55c07ad09bae8ec97a0aae4370302047c435bb500673065023100e149bb77e6f62c4b1110b0707625294f14f0e81bd9de245b1b8cc3ba3d8602fd9789f5e34d9648ea10f3b15095cea2e00230650839fa503ff29fd7e17a5d100006a1b51f53b3120644bd234692764fbbb3c122b2f59d9d7e9bdd8c79cb97b3536bd50302047c435bb500683066023100c0d1b326349bbe972abfbe707302adc0aa57d27b461a359245e51613d6e24cf74ad865976d0c92c540624a6a8f3490f6023100c896ef716603d505da89e35d6367f9ccab1ca88eaadc3eed06200d14b14865cda7ffd99ea142ee5c6b087b421ecf023d0302047c435bb500653063022f6623348f9ff97ac3d16572a9efce05e2ae9de682b2c102589e4fd74869b16ab22bac4e423e8f43d378831010fd4076023033fae32f12e40632fec0310b21065aebe0c4a01714e15ec84937a9b4716844d5ded9bc30377ebe812394644e48fa047b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230750d1231d32a30c228f8829b6cc6c18a829db353d142b3203e3b0e883e2e0dea3e0f8c8bf5998d1b21ae34b2037ac13d023026aa992c821e510ff4cdb083773b91b5a89c36eae452aaee9845b069dc78a12a41a034f0bafc689acb99733b8b8e0db60302047c435bb50066306402301a08c3ef1ce7aa125f5caa4f5dabd5db60b0896cbc852bafa5028b5419bd04966baf72f21e5c7180f580f4d6dce90d3302301c1d1f3fa86b822e9c2cdb2435828284156aff5de2eefa1cb7b06dddb24828d6b31f23d7726c577d548695988f2096960302047c435bb50067306502310096d098cd435ea1444337985aebb33f51d5ffbed3f89fd3450749c2b69309eefa1d4b5637d6367e2fce121f4964203d4502306197c035ad6bd7e602529ee5362c2eae69ae95d30922a41968b223bbf66993fb64b2a9b5b762d0c5c9989d2eeed689430302047c435bb5006730650230387be4bc7ee64d5e64f91f7acdcb1f96a781dbe2cf2a6b58eb837fd7fbf5ac278adbdf38e54f0c3a14e3197c7880ddd8023100c155aa0007b0620e717fa0513efde8c47319232933c517c950d265497f851594782a6c00a7f224ebbaeeaa0fb0fef0890302047c435bb50066306402303c3032b816487d43ce9441d9acfc3166eb525f3c02df7fa50a74c28c9afa24c8e80e333ce5cc997f1fb931c39b54bccf023052a0f1da65058c41c0f63a101311f5e0315b08c189d1c5035583d89ae4c2289485efa5958bf0f60fc2dbadb589e48ce00302047c435bb50067306502300f9ef27aa24606bab64e89aed957cce289a191524b230663fab0c2e028e52fa8ca2dcbc920381a63c30a9342a74e6540023100da04fcc1ac09c1311d33b6952e089c341a8eb2a87bd1710d83cc35c3ec09c3264ec858ce6f6e5c70a6245725f0df430d0302047c435bb50066306402304975a50d0097b6a1ebf49b6ebbc66bbadaa269335b8456c7f4eae32cf1cd73dabae460dd1d0ffc671d61cd3e66021b85023006243abd7b2c2acb3d7a156e4a87443a6e6fbb6a9006e6bd3559448ee16e3a8979c205e0d415b834f64c201f8b6941250302047c435bb500673065023009d465db84e0461dc963cb1bc6f383f3e7aad2547bf47869bac08928d1c69d89e0ede85b4d99aec7aa6fa752d93e47ff023100c1273dbcf23823251f4fe6f8f7c92ed3d58d021e96f22480b9f7157edaa6cc023e1cc9525de5ed956c799e06fd5d7eec0302047c435bb500663064023042a055ef42f12b5a2a65ae4371fd139e264a71ccc6661870a95402eb74170d4d0ad73aa491794264c9d4768fd041a315023034bbdc93da99b0f779aae7d1515015e0c51d0b596354cb56a7cc6f93378bd60f55578499fb9cd8d19d946db207be8dd80302047c435bb5006630640230697eeb8a3c988dc3a9eb41c3ea673c303a08babc30903df2b89cd479eb5400cbf8f919d7606034b030b4036849f860d502301e1914cf3447f995a5c20aa85fab99d44bb2ae22315e05cd98f6b04623716a90015e3f84ef80cbf6ef0136604e8961510302047c435bb5006830660231009b09edf8d34e38f7b487f2610b3bb93aca8391f374cf408208b06edd1b66aee0171ff682fd4ebba33112845d65e767920231008d1bc4e68d56fc16f6c2067742172d3dcd7b370e72c73536ceae3be0547d6710f82aa0ad0fdaf39a6bf7895fdc2dc5b10302047c435bb50067306502301d723a197c30b6214632d475005a2f9ca1b073ae5c37e44b3e02c190707f4cfdea799f0a801f85e1a468a3a4e152303502310093181acf03c2fc1cf6c24996ebe28e57b3c960486ce9de772656d4522d0838deb192dbcb73897334d2f9f5d667df7e310302047c435bb5006830660231008ffea8eb186ede95067e2c3a456866dd0592e0cbea244ba3ee3d84c4c64db789f892d5f817317e685a5a8a3d2cf0aef2023100871b25829ad0351cc00d24ce53a829d12f44f29ba2a338c534783b4ef0324e1b10042f7e4476a56e832cc13a17553e4a0302047c435bb500673065023100b10c0beb1bc5b25f557143b55911c6b4fc9d7a72cda6b61abd298fbfe35eed56cb7f45b4031eae6f3d2bb83c834a871702306f269932aff81da4847d2d3eac7913754ec2449ff3ae0c3fb86b6a5137660b3c2e7db94996a6f099abc8e27eff74effe0302047c435bb500673065023002f3d6cd10c066617590d8b06c78fde6e2951d9ad20353f84719a0c0d74dbf9ccb0992f9cd928d009451d9ea380e4f9c02310085876b9ab8c158398820d5a8f35dea836f413dfd58cdbc3fc4e6e5cb3e5ab3dc0096704ba1f2e39f2f887a0f6cd8ba570302047c435bb500673065023033fa77c1d15118656a8717497ac89a770f3650f8dcc761c66a8066e575e6d89ee8a452f6e2766da1acd8168a970cc7a2023100ed2d90a98422414fad8d574df119c11dffad55444fa79e7d539e59ab3f1cf5b8319c1295d32b62357af1856401937f060302047c435bb500663064023046bbd3906a754b301476e5df5a8405c501e1a2fbc3988014cdc16ea6bb61c02e4cd1e143e4780461ae8beb89396538f0023036ae6ef06684cf86289430fdf39fd9efcf6e5ac171e33fab9b08f33b7cc5afc582a9dd6d51d0041af7397239d7fc65c90302047c435bb500673065023011df91ec665e1dd7f8eed70d2f8aea625a31cbf1179adecdecc2897d7d5694e56717625d8fe315d1c094c65e87cc173b0231009a5b11833f026abd986a849a857a65844067eb27708b583384108af84892536a415bdd0aac2868dd788e597ef35e94610302047c435bb5006630640230110b64ee032a3c7a81eae968fdf3fb852e84222de2432c4473aa0bb57f8169087ae822ba2b444b55fb602d15aa66e89f023033df68fced8a69c2d1bebd11c46b50f710116fe1202e3d8ffee99509615630dd8179f67ef6bd036e51a3d8d7c319a0350302047c435bb50068306602310086b5d3ecc38f5ad9565ca022b28031c9a29290ce2764b17247a0e1b0a04b8b296dc2a3392625ca40570280e42f940818023100de70b7105733a10f8fd53feb1c9ce5e8456a50ed825e34f1ec3e85f4cc9bd370ae0f4f8548317affa6c31b85830e046d0302047c435bb500663064023041a7b55d051fa6680531160c3805e554f6346b64cbd3b5f853d2356909a5ef2b97b877163292b6c84074bea53d8096e302301ee958d3c9be446e30243840a1c33e7262c36dde96a76a2cd32a81f93f75de9b4a5f74db344097998adcae3b8902b1680302047c435bb500673065023100f0e41403da46625a0f571e6c1f0bd277c723055b9fc6602a4c4e88d0b677cd11047d769be416ddf3507b9c2a0dd692fc02307366dcb6c4dca8c3ccc4059eb7da6be173b94e651c2e87ba13c4fd68b009573e52f197460aa38fa6387c24de1b5f7f910302047c435bb500683066023100e4c808e87269b2fa20a97b54e8531e7b9d0f40b6522f22fb9cf07b4276121b0158b5fdb2c8bde2e472f41d580f683671023100a9242bc71d96cbccf73b53a5e26084cc240c51d74f769c203514d8406563dfbc1dcff9c7d1fcb56d27a30766f7ed3a9e0302047c435bb500663064023020446945aef4c3aab71240e7f0892993761b26c354131bd7b3561b63f711cd53c5fb9ebb1aa21f1e43884dc883cfa8300230775bf90164f8b4bb9d3025463c79c07a8183d4301af762669f3e34a113aa9af611ebdf4b8b96f57334d0a9d3201745ab0302047c435bb50067306502307393c6f8d7ff6dc9581e60bcae6bb4d808430915ba9fc7bd6a00d2095671066a68484bfceb528faf571156e1059eee520231008f66cb2649064f2f6297429ffe91228585750251d4bf572485886e4eecaad893c50039ce94dcf3900289e480a8f331f10302047c435bb5006730650231009f3a023bb6e384c808a7246a65586f1b9cc8492dac5fe2965d6c4025742fc686fd2f0c5b713b6587755bfdd68739d98b023030747ff7a2e3bcc6479952afcc3b4d65a0e5df12f04c5e110562a6b0a9e243c1b16128fbeff064e500dcf219aac063ba0302047c435bb50066306402301d6a0afcc0d51e56611351797e6edacec1952f15484ef5940ea7e67ef2593fab3a75b9d921632a1b408f3401834c2e310230240d5a044185c46dd95b289ca82299a1cc7da1e06f5e940d96e8a08659ef25987092ba666dca6e3b76336d4b39752cc70302047c435bb500673065023100d85463bfcc4726a8f4db273cbafe28d58308d1f8569d56421d518d2dd3688a98ebcb15627efe8a7d4487d024eeadcea402302139aac1263993b133fec2d4794ff89e54ed60f7d58fc6013233cadfa6f55a9c752866e2d7e559fb1d09031cd160f3130302047c435bb5006730650230371427f8eb31cdd421f2e1c22cb77a5bba9c8e3a568bd431221a178760aaa0a390111e95a4d08aa49a11abfccd27f76a0231008b450d75143601b2936fd1ed73630987ff3db9c847249e419fb38f101d7479c176692b8772d2ea82ef7b9311f10f3e400302047c435bb50067306502304c51e04cb0c66b824a3ef85330229a72aaa237bcbffdac86cb9d5450edb7f7067934409928422d147d27b7a7d4a1140b023100ce15e4b929b90a2a0a84d2b95275cb82974f7fa775743094e87ef3aee3de1f7b89dbb643855f3ccc2145c2363c0cf6cf0302047c435bb500663064023064145e7da8b3b5dfea4e5a51be778bef490d9c5086e6e74047d4eede9661ee10b9835fa813f7992dff2d74207b96877b0230550a4f3ca8fac0ac35b03a04a15665c3486b2f3f1c538ed50934397b4e0afd9ce6e830e8934929bc4f4c32211d51993c0302047c435bb5006730650231008d4a338c41256ee250c7d6dd7e5258d64dfe109e6b2a16067b5e2bd0c0894e0db07b64fdb16398cd3713f5d78e3433b802307397d432f71bc730cc2b130d3521d2ffdeff7f9aad8aa9b32569c01e188898257dc47f0cddae421b0cc7071e634d9b3f0302047c435bb5006630640230711de48fb97757d826f0ed3005df4797482a6f6197b8f35dee9d564a1d21588da61a525678d7909b0df913f2eda9d12b02305831353a6cc06896cb0ab7baae560041033358264b96c2df7271dd1fc5048d48f56f18c40203bdf08c56dda88aba779f0302047c435bb500673065023100e62b4548113cc2e841ca2a325ad7b3136740674cd2ff789854661370d330f86a3560af1db166fbb9d34de011dc1f6ace023068ca4c444d8b087a2c6d932cad25aa9861281e378255aae7c36eddad1c3612287801abaadb73f114fc991751c4cfa6300302047c435bb500673065023057dbaf396a32804dd1a877977dc23888bd952735c4a89749fe94a7125abdf03d580c6c56553c3052e0410e61e3616737023100cc8f0622d92a37facdcc36fa8c35820f221107989142a5c52046692631d9d295dd0ec602e88e8842019f2ee9b54cc78d0302047c435bb500683066023100b13c01385b081c8da46609ee8309270cb13178fefe90cd9ebaa5b72ce5b6191a4df5ecf6c85480cd4d454d7a7f715e23023100ad222c27a557cabc6d8d54433856f18d9a32a532285d5d22658683f4a09e43b6d3fca1e0c4938e6089b296ac2452748e0302047c435bb50066306402300d8c4c90171ceb6388c2208c6ba6a78d2bef678aabd6b9df0d0fce6039509c97070d66cfaa73234994a900a9f254fd1c0230688f18a089de816d31ecd0124bd9b61920bb9a6e1c7afc6c8873553a5ded149e330c2e465f8ff1b2a32aaeaa50f4bde20302047c435bb500683066023100da0c63a182e0f4ddedd69d45c2672969f2463a80d1c8b075c45de3198e6451ff6d79fb4f4d3da903a17bdac8d0658718023100817d89054ca1ba9abe1c0b2592890316c5ed2b58b8417f1ae924d85cfe03ac884820a7ecd5b50532ba8999daa66b26b80302047c435bb50067306502306cf1bea0f1a1bc76b5d8cd335e4fb497a8f893a3cc5f67ad92ade7adf8fab8ef172ac033a6a2df8814e06ccf9ae2732e023100c2e4c7c0c31ecf85308a43c57c4e9151b4f330ef92e2c95a1ed179b7294bfd8a97a7d20df61f5259ecbbf426eae4ea380302047c435bb500673065023100dd456a3afb301685830ee1e4157d3777a3e1394aa14be426a7547cfc075b0052199d709a18f012c2f60ac261a64ffd0202302cfb73a14f504fc422da16536e7bac3279ef641fc7dad1acc54bb73ff8f72dbcb10bd486ed87f4f3e1034de384a9e8430302047c435bb5006630640230587537cc7c923edff1879e3208eba4039ef3a796789637588c61d1fe3123dd7ebb7db87c76ae778284832a96cf39a9ff0230452b57739ee92c2e400618250c237399de05ac9dbc5bb73cfb4a2098fc598f60210c54c2314d448383fda8bbace4f8af0302047c435bb500683066023100df603af349a8dc01dbe49de4ae277b12ac2bf4fa5a920ef787cd9aa8349c8b662306b3bfde28756f56f25b8fa2ef08c5023100a7036f297ff0960986e47815e9279e23179cab2a29216c746ba4e30ead27380efd7ca08a0c9d913c60b9c4186adf23f50302047c435bb500683066023100fdbc7b80461f7cf2b75850c16fcdf53828977c9664d026f2c29ca30639eea34759908061c644e6773740a70f77c1ab100231008a9139317cdef79403d9bf7fed3dd6f15285f59f3ef29b26282cdec3dfce231c6a0284f79367af5fbf003081369d887d0302047c435bb500683066023100ba617d303a5ec0ed8f798396c46283b5b7a4860c039453cd416b3db86b3e295e9457427aa32370128152902cb00afba3023100e326491944ca825623a674687ebf877f29a578a96f5fd806e10b7bccb536c948077f06ad4526e3b4a53be894a05707040302047c435bb500683066023100d622133756c9f35c19a8b519e506b1a11a126cd7b01448cb16e1162fb8e9bdcac1a316e02d172f05eebc288582c8ecaa023100d1dfc53a0788bb48dc657bf643e5e774fa67c0f3bd57eb2a74a33a3a5696d1fd9ebf32069b846ad50d5f02f731548f410302047c435bb500673065023100d761862ccfc9ab1dfdec545cbc60c13d5c077e67ddb4d7425b65b3d0f56e8133002eef7698337a71b5f55bf0b1db6e590230581d0566eb9537c91f2bfdea482eacd40caaad9af91508c0237bcc393026499978fe5e3f36a85ce1b03adcdc92431f540302047c435bb50066306402300c49c97745cdc30febd742b1a5dc8db0ab88094c5337608b76d5da5afa597882f85d13eaf3c6a7c8968bb0d5f26f83ec0230633ab3992dc0d0bbaa74e9588ec3074f7715ed7bef3b24695bd8056b59edc7037e1840f1cf53863b401409a9fcdfacc60302047c435bb50066306402301c2125d46e9ee9c33fa61084fcdf45f6d8835d5ef3d9cd7d03ac5ca5f2e8346b2f9676eb2006fc4c1fa8d8f6c1068b0502306abead12d54e3912e83c70a420012cd904a6d8db9cad59a95bfb6fed6ae61c0b75e1ad3a59bc15a9a857e48da857e06c0302047c435bb500683066023100f78753897af350100f831b09f621199667d4f6ee61c031739b1c291691712d825c70084fa803ced2d9c4e48ce8be57f6023100a3061a33f4ceee5f67b8bb4b79400034910cb710c60425f35f1b237893ca5aa81bfe77399291535d00656cba526b2e2d0302047c435bb50066306402306ec210b11489f01e6bb75402b6b81db0afe8b927ac14c02e0b1cc2b5d69cc2471c40d1689a94da9e31d2644e3aebf6bc02307da1cf342e94bcb452878e948a896306750629a7a9087fb7dd0a9ef6d681c239092fb80116451e94eb630f88abc143f30302047c435bb5006730650231009398d9827e9bf826b9b801489a0716a026641a00eaee6ecafec62eaa486a2a742da9f928b21547b3f3cebc8f23668fa6023003b4c8e8db623b4d891483258c07e548e5d603a3a339b8e52db6dc7f495a28610cefcbdc43275e5a62e1f2af897def800302047c435bb500683066023100b40e0fb4164a45209ae1415cd2c37a08ff58ec0457accb126979f62fa3afd408f29fa50be002c0c3640267bcdc9c35a1023100dabfda2aa27befc1c445696ca08a8217fbcffa39f9564cfb1df73c94cb2165b8334d88a7813ccd2c912217d272f652e40302047c435bb500663064023071926e2da0d6d89fdca9704ee743930659d60c7cdd1f90ca7498a14b6cd235330f922ce8a3ead8c83b7477613d095c2a023020e1dde6830916384fa0e9d4352907c37dcd622b3bd5841cd0c9d546945e1eb9a420522943182aea0e54213a28c004ac0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f8e5f6867ce7d61aefe68e9c6dca8a02aea692323375de6c48ecbad34abb03e7242d65491027c5434e556971c64a45c60231009c5a38f53a72eb1c64ce98d304f20cf1e092b4c9196c634aa48a26886466f35d7deb41f10c7040b318330fb97ad82e480302047c435bb500683066023100b1d890ebb469cc63162592e882ed97bf82a1eff1cecc285584a835422b5e15598d1f92b1ba9f817b1558a031d4fab88d023100a91084be93a80e7816ac29719da347b194c90ce915cc260940ef81e2512eaf8fb7c9ee9ae3f44184606864ad19be9bd90302047c435bb500673065023005465f434669109a828c6a42e40196e5353591219ce22fc20cd75ebd262a228d4938fa038291958751d180dc53ac864f0231009d79f9decd703cf564c07eefe398810e9ac5c2ddbe9c93c447b3952f9d302b8617501e3043e321af00750bc16fe6395f0302047c435bb500663064023006c0720cc0677fcc15fa2cf0f70f53045e7bd28c179b55d37195a0eb1549d0d55d8a3e41ec24018ec43c535d75b1f9820230194ca8bb230d1768a5f0886f7800c8a002dbd35638dab5dcc78a8fdc535032b32f80a47cfde2e0c4b5bb9365c419da7c0302047c435bb5006630640230763619dab293b81fa9f6a1612c6ecd6252284a4aaf2c1d673c1a6c91d190508bcac50c917918cc4adb21553280bdcd3302304b6865a2d45150b960617330134b0e44dfb8fcd795c2349fb5f8d54e08ed93833b81552afa9ccb3d4d67689effca09300302047c435bb50067306502304ca60b5ca034dfa7048e1e5d9fd2743cbd6f038762b304082459f65edc82e41af06d9bd3928df587933d88b212b6e2e9023100ae72e7116ea13e36ba0ba76a9b1af2946e6a3d70bce83b00174fa8dcc7e52cf558f55770a737e7280352e7282072db9a0302047c435bb50066306402307c3c209fbe4991fc0e8c3fb65f90935396b075a017c7b6bad4c8ef224794497c4cc1a9c79ab60ffc2fc6ed9d3e4bc32302305d19eb326112c4659b3b4deff2f47ecb1f6b57308def4c783554acaedfbaba071f0bf4b1cbb38b94d628784b87f4a4830302047c435bb500673065023100834c2377601c5f4754b05fa9d867c06a3241cae64c717ba5cb4eb1c9e0310533bc8db956a8af80f60df84b34146715b602303cc9fb0ff62455035df75f0638fecaf60dc5d7efb354c1d5af1e9930bcd288762cb65794055e30e138cf2ab4251001d10302047c435bb500673065023100eb58fb330327848405f7ea119bc1678f5bd43e85e5c3cca77ca7c6c8dffb624b555b9abe6b0b302252c91047dd9baf6702305ae087380838dd9d83a05c3ffab26c47945acf8acfef623e6c3636196642c63a1314280ec67aca1649603eb7bd66fcf60302047c435bb5006730650230494da4d8d3aadeefae913768775d20b08076a3ef37a2c1ec8b42806d3fc106f2a3eaefffe3c243041e160743b8eb512f023100ac7d7c4f1eb183e58e3d8cc9e887ee696945b4e0b51df1b78289826637accf9d22239dcf4d46044df04a53ace970acef0302047c435bb500673065023036d5d5ae275e0c08ca2303261b5bfa446e9c91146d4f50e516e6a2edbd37c82311e3ad860df3fef82121d05effb38749023100def21470a33497b696898e7a0e426aafac098037a8c128cacfb378d6301104ebd23603e619040b68673443ec6aeee1a10302047c435bb500683066023100de579847b5c8d98089c40efb0a97c8d9444cdefd8cf358da387137128c934277d8191abd0c28af8e94130bd54cf7da61023100d038f9fa5717b3bea44a7c89b214c7dda21abc92997ce6c3ffa2995566bc0c3b8e606fecd2dcbb9d6e724885951cc58d0302047c435bb5006730650231009a26549eada1fabbe198673e7e729fd4b6023ce8349c340c854d26ab425692b1e9e36ef0531acb78c70d92592ab0a6ec02303483271c313f61e247381039ddc42d0257c6cf451916d5d844f4e08fdadea2f929b040ff8965fd8487c0a0f522b9c9d30302047c435bb500663064023039699b986ef797caedb72b5d6ea1f77eee96e72c658511bf0180b87fedcd1613a6be3652a70b087ed291e504cdf8293c02302b8cca9258a0cbdc3f56921248b9a289bd58472153a7bfe6401d5fd759bd052f472655889fe1bff95fe590bb13a3d05e0302047c435bb500683066023100f893e2dc4e3dec9a11ae901a4d968aa54f6f86f5b356a0bfdf4ca6650b96e7a91ee9f7ee6bd15e8c3159973a9b54082402310090885fe23e7915d81ed75dcb2771bcbd56a17d5972339686bb2d0fb94a591e040fed157b70bacfd72d7c0ea34b6cea320302047c435bb500683066023100cd0e3ffba8862f6714ca26eecc6ef4f7dee4a7f4a554b60a563b9b33eb14b6231d27d30577afaca59d9c3456784cabb4023100b5d8675b349198872645a8b069173bb5efaf21cae517d2a01674cb38cd3b422c8b0d3224db5a86c377395b4de8fa6de60302047c435bb500673065023065f82f38ff1d60f3f3ec096e8cf7d1a5076b6f8a8de87ca182170e8d99c29c7fca33271c9825ea348e3f7f4d9ecf9874023100d28e18bbca2f4652bf8bc74641bbd4288c0cd1aabcd759b73840422291ae3ce51e191f2a3f0af5b5a70c9ecdd2acd7d20302047c435bb50066306402306e76ed33fead9f702aff33701cc6548f9a7c0ca080dd4f0bbde43864ffe1a73ed30f6d6ad96a0cb032c9bb73ab3cc9790230304a82ef8b4b81779ff3dc4764d894d8e1e4771f6b905d9c13de3aa51ae0d6cc68ba90474a283ba083d19e4495d9a80b0302047c435bb5006830660231008667e13e25e1785060ea01df7bd8873508b9096919bca5b5878ed5479d838755ef5b24bcef1a0cbe405bed83adb54e78023100e2e8b132f95aa11a62190d91ffe69c159f601dba9fe418a11a82f6cfdc169835c4457d2aa2bfcc7f2e4b2516340344830302047c435bb500673065023100f7091cb92279b38dc65def70872edbfbfaa0d1ab278849dd78ed526c04aa7d4255e64565f7e036573b6c1aa73aedfe1702302ca2b321b805e365d3f2963d68ddbb4c3d814dc8c57486a8be9df603a80005007add1162d6d0c74ead9d4a16a3c818ea0302047c435bb5006830660231009f3a0cafbfc14c6c99febcc9e724efe0b609cb008049989afcb3c64e8c6ef4ca5bcdbbeeecef05193d80d103d7870aa9023100d08d768668886772e4855c1e8fcda280bc717a28ce709f96ed35b0e16acd7294f744fcebed3eee883adadf6ff87d894e0302047c435bb50066306402300f9b92313c8dc203838edefeadc99de1241efa745cb761e2a0a56a7de6c3e6c7ea2370afa96c59e1c948061e2824cc6402304e956c11ca6c713e7cc6130be8cbd22aca9952d5cb08eba60b5fce8554820e7fb7cb924ca5f991e65ca9aa5fa7db200a0302047c435bb500663064023038ba7a113d8abcb6402a660978315bf4d4f8b06a57c31ea71486fe0efcb45fb68ad8befd6375184330e9ad599a3f2d5c023010f5b6fa7de3ccd8dc9014f9f500c921d21b84c5040af3650ab40a35b4cfcf749cd89acf65826d515f536bd04005fd610302047c435bb500683066023100c80ffd9c056ba974a5b8d696d92d744a18b899307335453ce0172c2fe5dd0f5aa60e653aae90a82a058531fbc83f6ba6023100b54895b6c0ced2d56511b37c6fa40fa6eb4ce247928ac2988288da26ebad2dda633745383caea55350b5f9a4f07a9bb80302047c435bb500683066023100bd619ffdf29cefa559c9cbf1e4c821f05d96d4a82ed73181c9b141137502935a85e0be65c900b1f7859bbc5dfae05493023100bcd129bc9270ebd7529d8260406dc195becea8e2253c5da75ec8580b6e8e7ad2567531823416dccbe57daf6e4deb06480302047c435bb50068306602310087f30e02c41c96d429391485601ecb1ce14fbfff4e54cedab497e7c8475a85dbd595eb14cf2dd2a4380fb00b481e602a023100cc1f53cbf1e37dc27c729731cd46d63774b5ce3d5a26235720dde5c8d48f525a7db7dc50717b126339fc9c65b13777320302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306bab28cb38b75a791a4d78c5e1bfce8ece7f5426de1e4ed9294fab735b3811654d8df26c39602579bcb80f46dd101d7502307bfa5610d3ba23d2629a5fcd585561b2882ca744c1d3ae831af55ff95ebe996f133c335395b6ca1fb1e52cef4fa825980302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023066f9b88884587352917d1c9c8f224d53772b817edc30433ec13cbb4a25323f5aa058d04186f267e4a5f82755931900cc023100856fae3f9ac6e1a3f930c79be67ac579804ec87b9f5a7cb7bb2fe33a14f8ce9484d99b207500b0a30d1c35a5c9bb9a130302047c435bb50066306402304c68caa928e4ecc23a4dd1f64503d7185ecb7dbc83023d1111ae14281106c35e7ae210c98732d3988690ff566ec0e2fb02301c285628f1f020efff538df340d5c0e2dc683b6d927c87074541d39bba7dff28f4927878c685c14122eb2a93fcf1e2e20302047c435bb5006630640230157ec3f2edce0985b61579eb495f3771be356dbcc224cdc9c6385ea3a3b5b13e93c38f61d56dc266ff0ff2ea53254ae702302486e95e897e171258ae999472ba93f45bfa4bc931086f752216d1886f698c46b85c38b4e18929e3e978f6d8fa3811ef0302047c435bb500673065023100968f60e2b9e1d5e2a201ddf0039abcaa834c223a484c7f8979a3c35aec65e9ec2a79805bc7bd843d254f219100fd6349023003f9d0aa7bdc5a11ce95d282ee19a5d0f95235c63e3d4323844317a18829ca75bf53488e70462105b8c06d61ba08889c0302047c435bb5006730650231009e812843d344b0181c98e1e58a264ed3dc6250a985af6fc7b2870f5c30a136f9da1cf78371dca533a875b0d34e4313cb02303382d32bb13744412373bb96e960d4d3e1cca5d26925a6c51c720ff910741198de80bf54dca8f9d40bd0a40b8c15ac470302047c435bb5006630640230492a8d0ed01c22b6528c378a74b6c2fe81323c0912754bd08bc74a57d34045e2caa6ae4e1426c8ca750a70963c81196c02306244e9e448afffba0e19f8afddd785d9fff8afa54939c46a6b9718482f954a5c640d22f23c27da7878eb4b2b47ef62580302047c435bb500673065023100dc246ded48be8dfe7732ec94d2cb76ef09549eeafd7405db5db0d9507beab06275518868a71c052f412b55989ac0c258023073c5a7f3ca27a4f55f223b23374c56a6ec305c19a7ebcb71ffb94ab5b7ee6d444e4e68833c54c6545e00e4fd181247180302047c435bb50066306402307bddc5879567fae1650f5de730d15cffb72b78ccbb9637e423e28eada82f8a43277dcd601f240d841e3cfd72e0617d1402305b85f0951e00149a334512993697fb489bba62dd0c8df5aa775bdd43e2176df2782216100ca60d909fbba66d7bf280970302047c435bb500673065023100e604d39a01e18e7b0d06c766a2c952f584ff9bbcfa364cd0e1df83fe131c4bb95111e25b7c8f3a52e597db14e716de2902307f4ee87a3c2755f1b83a55b2409b7cc487bc5e10cb26115295f2d4614f769b6030742daf75d1a62686e12ecc6e5a680d0302047c435bb500673065023100db635ac9c9d25eeda8feb275a608ddd78e59cefd1a4c520e052d82f014ecba1bc177828db99af99290ed8d3c5d4ae977023018bf9b663c7329af2ba92d653652ec1a40287116fa2e286b3a4cf364db4476f8eab3f720f81aa5f3d86cf98207f320ce0302047c435bb5006730650230372a34003651cc075d86787ad0c0f9e87de7cbcf83fb0e12b22c752dbadd5a4b5fc5701a7216b69f8d08434a7bc9681f023100b37084df1f311e2da0f6d332b35dcfffde1777194f1102512b2b4b68b6be83d161129a13eb1bdf48fc52f35d5db715c90302047c435bb500673065023100ac7650104657935ef7ec6ae7e7b786f64265efb99f5bf8addca70efbc490b1a9044f4a91fb02504492afe2b382f7811902300bdf17882392f84f029ab04ee288b8e8979671b80fb90e40b4afb341ac75509c7f0d57dec665f747315e1a424bf62e360302047c435bb500683066023100d9f8d9bff70c492425b21de350bb230c6222bf76c7e2e3cf78abd999b656c06d7eca7ec726aec0e5f5245b882ea13431023100bf89e4d676da2b6cace7933a23e714ce6bbfb7fc7ba801fe2d6719a2afc3df1656ca8ddb13b7955337a3ae0526437a1f0302047c435bb500673065023100ced4a1f81d3a712c393fea0dfb6040b58cd5f0838c67de02bcefee0c089455af9a22ce2653435335e70f9b90c30360ac02300be35cb16a00a37373d2731915de7204123f12a809d9a3c6a3e3330043bc6fa5a902537da4986db2fc737120c45a2e660302047c435bb500673065023100a44cb626a225126d0ce599ed6b6aaf28f82d3d4dc4182794f3ec7ea30d05b6e092e44619c3b4b64ee19f377f5fcf493102300e523da8dad7e364434bad1bd321e9d330a167243f8564d55fa4b14762d39141209d5a88bcfe671cf52b1518bed4666f0302047c435bb50066306402306770b8f94c7556ef4687b8d80c42126a318453b37675437c13af0495d21fe64d3b38c325f806849ceb01fc80f809de3a0230632e108a514bb0b47c12831a828ba2d0b5bdab3b01e0d247834c738ed14810e1490db7a9e46594e2efbdf64c899bef2f0302047c435bb5006730650230774c9e2b66237d1ec3d4af3dc42bd67ef19e685c26eaf94ba8512ea2323c23467caa5f46f9aaeb3d1c5d2eaf4fcfdcec023100b5cf91dd2ea1ce3a391a2662bae7427445cb72db400a76e3db85b721c3576d00561924a589bdd8ccc405a07214847aae0302047c435bb50067306502303a1c76880b9ea9b5e0b65fe0e47e92209af45e517b7daf80184142f6247ac35cbe3794be52b48caf0bcd219082b4b363023100d5177a88c420623ffbeae4753931570b534a9775a68ae5a9f603fffc9a2da004735b04c997710f0ca0836f074f3ac84b0302047c435bb500683066023100b64fa5de10c5bfc614cfc79eed9309d437b751019ac307f904bc64f447c0deabdd1b085c658762c391d5a73fa17b7167023100c6a60fd7071d2141fd28bff98ff40ecda473fb994726261bfeb75fa50294cdd85ad958e905f9a324d68a749a41d6fa1b0302047c435bb50066306402302c19a7ca3b2f7a2d1f119a23c5dfa2006be82807ba589dcc9c343861ad6ab68d49a297b541134c92394503da72427d0f0230258609c0d9850040836e9e83929327f73a42083572e433a03909f93cdd53eec593e6107d4de0a327fd7ef4e6c2757f2b0302047c435bb500663064023002375b740b5f9c385775bfb0120cf1bff795298077f3e6f246efaf64dd81a9b24b06c5a3c13d1536d0a125f1dfa4d3250230451b77abb5668e9f8d7d3ae39d8d37e8ea90424f53c39dc94a371cfa1cad01a266ff3ae19505b5175a15bb3ce7b3a03f0302047c435bb500663064023100ea18e92676441c9e0fafe266258831357dd2072b5a0214efdca622f5db28d53bf7bbaf5c85310fb6ff84bf4556175d0c022f0d177307f1627b9a196fba7247ea6e0a8b1387ea3f060b8a3ad66ee862bd6ff8b46abc1b76d1ce4b389ff78a2f719f0302047c435bb50067306502300215726da28d0a828d3c300ae72874c2f8b22ef464e3b0521501f8fdee8b1f8611776d1e049497bf84e4c29080e9ab4c023100aff667a092e937a0e59e251140a2c0bad06646a1af243498c710e7dff8d3c8d72f70d478851702be24101d9bb6d126940302047c435bb500673065023100f19ae9d5f1bed9aa5e00e2d28bacb72752756b5d1560608b74aeb5091b357669e7dea01f780d90e5a694de02ed7e0e47023023f6b58bf88f3adc9ff1f334dfceca335bc8e6660a5348b44f650b768432a715f607df5f3322b8afcbdedffdc3a2613c0302047c435bb500673065023003f9d4a9facb5d318d21bc56d26162a7243e493ec20702dd27f76de942a589759a118054b2aad0f799959645c2425af5023100933adb24235ff0bf5005f64b868769ec10536a73eeb003bde3871265817ebb86f48223ce7b597a2674134adbe3f1f3f00302047c435bb500683066023100d7bc0c2c52f063d15b6b4fbdde6ef772bf9aeebfb0226148e7820c7f8ef9dece0ed144075ea1584362caa118da10a8c1023100d50439e696e5bc004880efa9719812982fd94ca67d1107ca1059404ee6ca04ea1ac3e4ce40bc51b17ad074c83cc4d4230302047c435bb50067306502304690420c28d508288fa45fc1f671c9541fbfbbd8fe28157363828c4096a71ca82b9f6d4ae06ec9a00c114da2b64370fc023100e7dd4d85a853b24fcf31eacf0d048dee77a0605f9c6ce75317552a45d99a1247d5567ac578d6a8df32bbdc8b0c0d13630302047c435bb5006730650230385fff35256349920c05bbfa49b7b0df15b72423268ec68df14f40202a247c803b8b4477659fd231cb17738dfa6e100a0231009327c03e6540dcf06970cb549ebd6bcbe2cfe3cac322b66723cb5d2c9a344b1753398cc8fc2ec112020269204f830e500302047c435bb500683066023100d3da70686226244ee7c05fba7851228a30a58250092db4caf826fcc7d96edb1b4ab5f586ef4392a45bb4f6de5497f5620231008a7ca6ba017182257417956fb0a8354f920d95480e4ab741ac360da2e248e81f2cbd2b1b9096c81be32d9c9021434d6f0302047c435bb500663064023066bcdcd6b08cf83e4ae3206308f46615524698c7e36ba7c54b291f3c36d1dc5e1dbdad16ff7ab692a11d29fea2dbb78702301c137b623c2727d7f5a7339a7477d099b0dcf2d42827067664761a30ccdc9f44b209d5d59edd2729bf27eb1980d113b70302047c435bb50067306502304ad1152f4a90126ffd7e5ac6e659bffb95880b82d81c0905ff319c292864f43652874a2d2a992ee1245571fd4a28cc72023100dc827ec75ae183fbbd9a06b778636d70130b97051c93775cab2bf8c94094a246571167ef182d26624dcdb3290c11616c0302047c435bb500673065023023f96ac82c33f1320170adc1ad2568d1395dcec3f418416faabeabffa2d7fab99af059c47f803c1dd4788880c33bf8c2023100a135dd34773812eb08647a1069ce14591900d4f420e6a53d9782911ada488a44d5dcae5b362076719483a6c55d2e5d3c0302047c435bb5006830660231009e658deb737a2b3f1fe035e87957b2fe007f96d9e724036f1dc6b742e63d2e288527468ebd9e6cbc01f289e7e9b7ad6e023100d5111c8acaec1d4031590597502eb4c477d0b96422350901aa05e641bbd56206abd1f8ffc3e18488ca569dd7362a77fa0302047c435bb500683066023100838eeb1c289da02a437044aa7255b704647fb1d3f2e093f68b9da4e94b08af569e91e66dc3f69c92cfc010efa2fbfd04023100daaf79fa0d92169c91e05587fb21df21bdc73333c53c672f196dc4477078f984f3641e8b569099e0985a7e2fc2a036c20302047c435bb500683066023100eb24d0fab6a15080a34703695f0b2c90e846d881400ac1f55e0b527dc5c4d72f6af78c4cc268e98dde713640f50ff483023100c1db9f1f0444d9daf1580ee7aeed974d4c03cb1899179cc9ec488bcb3a77f48467458ea9f58dc08dc4cb5e86e42837940302047c435bb500663064023073ca5fd14f078c7c5a23f504e1dcec7e8cb6a9cd0aa4850877d114ea5a636f8273704476b954f56a1b33f382e738ca2a0230231a8a39388fc1bd9450b0b57e7511010517fe23024c98de377ba5cd2e20eb9ece8f0049cdd0ac752d620b363f34c4e50302047c435bb5006630640230624dfe77ac0bac6af54bb8af8a92378f3024000fb61dda4ab96ed459f1cbb01bf3d5b364573e03564fedf5cc5712df0402301aa8d06d9ab90bd963263f34163b97d6a832482b341f2b81a68874f50e8f57af178bc1d855f581539aedc30344e33d3b0302047c435bb500663064023068fc4717acaf3b5e596467dd4321ec7ce7d82f869707af8a30d402499bb693f8596ff4afea6763ff1f83b2057a37b46902304627552fae174e2b6f3aa2d9d7dab90710d4e1740a5914623cd2cf82fe7c413c78922dad84669fc8f7ee3ce6e970175b0302047c435bb500673065023100fb5400b6760437c51eab36d9b147a0d8d174234d3d73d70299113297b1b76bf0640f9ad245faa7dc1c5d7a9e7d41460a02302f3a76ff7e8401bd3cf8a04718afb0a68494a0fe9f0566958244efc09dfa6cdba5b3f8bb99c9807e5a6d4cd83f1483680302047c435bb500673065023100832e197f5d627e7c39208da44f3f7d1f01d76ad48866f4b659c44fc9de99db89e546562ff3803ff6df9758246b1600a602306db96e91d058d93cfbe2cc66a1f17a0e0e63b0e982049461b57b5cf89a942ef62a549c98cdc4b46d80916b27992951170302047c435bb500683066023100921ec6834fb6b155ce842ff8e0014cbcde7f4b8e6df4c7a5bce0809cb132e6914cf716e982c3a3fd7351f1c64bda61f8023100c69f312ca37a9e021fba0dc501470f93f3964a8185b0d7482e60ec0a4578985a39e5e98e95d3bd9e95983f64a4ba38100302047c435bb5006830660231009cb6365592e55ba8876a1921fef99a676ce56951a87f8d8754997d6a5651944ec08a701c4f3e859e8073d97f1ca1f44f023100aa8dae387118b4b28fc86f486505684a4ab8f9c8bb8ea7d1c9b19562ae58a8703ed5d395a742466c4780e7a5606b234d0302047c435bb50067306502307ef35e53f7c3376a81a8f0ce6ff1214b382dd800ac6249e46e161ee9eaf232240ba66363cfb96c6f117e57d1da47747f0231009d1ecacdcf6b7c98eb5f21d00107c51054a0bc43f0c4ba4d1cd827ab7169b83779ea0554b26c27584d91deae08e0bf860302047c435bb50066306402303be3ff026e41acdfd6fc827981a4140070f7197e3a5c2a62d1b843b044a949f64e9f32111afa5915f08212fda377627b0230032ae4a009b4622b4cb98529c99d4173ff79281d218e84f159bed3ffa320c6eab1cccbd4275ab80bfcd91df6c8a648bb0302047c435bb500663064023009c2bb7aa63f47907d43deeaa88feed7d93109382fe08897e532b2cc6c99a0d354174afa291e154ff9421ebb7db3c5f102300af551195c4b06d786374fd75c6cb50d6c0eb7284b6d22daf55b481f00662d2325b00f5bb5341a8853aa8abe45f9b53b0302047c435bb500673065023100954db4a291d3940f2b41302319850758bc02e4b734ced6de8a73ac730ff5247d1e64207b9e89ffa12eacb1dbdd5ebcab023052268f950b97079ee87eb68bae34784173fd384e4e6f557d00e0a240a3b0f39a1d3d8825c4aa320cd271098798e7aace0302047c435bb500683066023100eacfc5afedea1f6bf0c8a6aa49985f6263833e4d5b0a725e8b90d1d0215a4b4b17b6910bce99e7aa587b2264587f48580231008133482169d7a793a90b04178535c0dfbab3cec8e7d253079de7ab494a854b3f1f1afbb81092463246880a4250b34b350302047c435bb5006630640230296c4a837e70a09cee325277abd9e0e5920d618a0e07dbc14766d72c3a0a21811046199555a32f0346dc09caa83e92bd02303af5167f8ade39870d9f5dec9c6e0a427031d0aaae060a651506e2643845c860ad12756b00a886ece506421bd3b348020302047c435bb50066306402302816f1b687bb307cd0203b544d0cbedd9786b44609a173f6d0736c841e499b514b9be7cbd2d661dbb7e94be40c1cdaec023043f882cb1c8d654511983869fc44484307f5d4b18527ad3ae969b4ba7e3569e1859d786ba7e5ba17ed782222cb37c94a0302047c435bb5006630640230355cd5bf838f2fb142878e72678c3c4eabfd09652656ce25a14c84bebdd643ccd5f028f157b095906901c72f3bea27e202305bbb444dfbfe0b53d39b1d066d4e25d2c5f3dff328ad48bd70381b4bc424d66e7b8152a717b180a3fa4f1ea32ba4a2730302047c435bb500673065023100c1bd8c5d3a95b08045f9c52f4bd88c7960b5d0777e02199268156af1cbbb96ff8ba488a5b83c647bf1c9c765d47f1d54023041d2acf703f7dc0d90ccfeb02fa0e5f9f68c2f11e0ff1a6fc05db82849d372b1045078355e0687c18e477a37cbdde1e90302047c435bb500683066023100e3e1e3a8df6f0ce6475b34b0066aa06dde1535069bedf04b05eade49abb9d84d51d4fa40b683aa0c0c40204b85bb36160231009b7b6cb9be2ab1a317477f6cbef0f1125c9db0aae568f9b339d7468678074fa4eae922ec5dcb11d80efe498ec07a6f2b0302047c435bb500683066023100af472cbcd09115dbaaec6f57580f084fe2cdd9de1a30b5708c416763f3d729a8db53297c80613ce2cf82bed326bf86a9023100bebb03a8bf31bf2988275c457bec488776bdd455516a8a00e42b206c02af2bc2ba924ae102b88adf8b6d027417bf53dc0302047c435bb500673065023008a806164e5dcad2bb6b1b283b3fcdd9aa1068e94a5d234eea4b1dd02ba00bd2f528b2addeedbf3efc69e20794bc63550231008e67591b77ec7777d374594c45286921d31611f4076290e6861c1c8d26784b8106cbb5e7246dda0f76c78290f580672f0302047c435bb50066306402300b40dbf579d90f5e690de10fb742c43cae7e6d3de86292d6a00b42c7f341a88654096935cad5b351a4e060a96d1390960230643b606fb5e73d19de9e3aa4e903b0e021c2d2edf1047a9e61ce6e2645e319c6680111b3acd9ba57787fd078d36ff66c0302047c435bb500683066023100a4ecb3025815be192aedeb80317e8ef6fddf801590055fdcf76bab2ba2f525a53686f0b2ab2d600b6315860fbbd09fb90231009825e13e24b159164ee67abe4e6ddcd5c2a8b457948383d66fb22692a07f3fcea5b095df9e9a7706dd7bd2c1c0bebb720302047c435bb500663064023000a7b52dca956e0d2fe907f668add8c31d90fb7c3f70703e0c57b98be3e443ff7ca81abfe1044870b4890a9242bef30402306058ea0e55a9b3bf15aebf646a488c7f2ec594ddbdcf3e19e623f1da054190420d5794fb961a2e3e46f38547b3dc425a0302047c435bb500673065023100c66006108b0f8e281248c2f85914fab872ebe4a5cd09b1359e0c9b1c0a0e715552acdd7881fbe10d333495b63052e5ba0230178447f02f851e454ca0055212cc149be3aec673c468030f4c071dd1402abe6b196b2fc0c91731ff5b77b7687b78f77a0302047c435bb500663064023076f76687a492f80e329c91b6ca91b7a3f5bf59fd6de425511f21ab74ad60ce6c15987619da4916125b2656b7d126f3f3023023a86814e2a1b4429a21839144b3bdec9571b4d1b69804dd3cb52d84a8812b648e2dec2adfb51ce2446bc7df359e8a230302047c435bb5006830660231008ae12372b9a88442307a5a141fd1dc1889e1f0bcf727a1985c482d5814813b808416878f18cfbf1c9c771e27966ab0bd023100beeea8160ecf637285262b8b5e4ad23b72597a0d0153736d4e9317a2ff42b730e2a2dd747b9aa6376405ea607cbf2d510302047c435bb500683066023100b2ddbd1ccce13aaf7d91b6bed0b0a96377707993664d5e0d0d2caa1a77ab8ad1fd0ae7f48161f4aa2768857dc0514c7c0231009ac4b80265457f6664a066f63c20bef510249028b95d4393925ab5f53d682e0988ffbd3ea6036795fbed500a1a8160fa0302047c435bb50066306402303c479addd08fc5d50d179e03c68139f076a4db214d2888c465af8f34266f0c38d4ce09696a11a4c14f1853f13f8aab6702304245bc5a652f54c1e4c88db31e3f31ba02ff40de6ff5ed5c7f911d50a1887bebf2f1067342b3ba5de7200406e59d9a560302047c435bb50066306402301d1632b9fd37281474153b527efce5c985dac2de0a95d6dc6fbf50bc7cbadc5bfc3622be0d4d6e9ab4435aa75dc91ef002301b9cec565fb8f3a739606edec33f0bc6d3429d268675bf22618ddd94a512b2293632fb5b4ca2d81c367435724a72b5300302047c435bb500683066023100cf4139ffad811c602a5f1a705b868375e5a3e8e2895dd7a214dfb47096e25cbc20cdf48e882aa9e9a923a85e752e570b023100bf1fa9b0fcb3cc7b414fefee0bd4a8c3cee5aba66aad2fd734d4a95c3c98f545876760f75a32ad53a306e9a0c1229f520302047c435bb50067306502306ef11e93ef7386ca5613007c15ca92af8eb5e25606b6c3b6fb1c891297b6dc4cfc3aeec554b25b0684c5489d627cd94f023100cd43d25908d80e2941a2683b3473b25fc2141cd87a024862d76a50cfbc51e9322bb5286353433761aa47b14dfce2842d0302047c435bb500673065023100fce93df3b30b2c11677f67d7a941a503634207d8603420477b97799f394e1fe000979062cdf96d60c86cb3ae5889936d02306a1570be71ba553bb04a2771c9c4a80a548e7be9fc927fcc982faec01eb1108b296e558839b8c1ad56d84fff8d26f4db0302047c435bb50066306402303878fdad530ce1506e8c407f01f74864ab5adb02e07c5616c646d9a7f0bcf650ac77452c105c31d24fb06709a7c44584023020cc6e6d696ddb774c80d07018557cceafa8eeb706a3c467b4fb1919b9814a1b5238dec770a6fade20b11be046e799920302047c435bb500673065023100e5c570dc1700d543ebe6987349983a033bd54fa3025f59f9d7d74a9ec9eafac43bc8d47821a241ffbe9a92be765ea717023054840e2d5bffc812a730e38a15e6d9de51da6f0419014adf0a0765d9612b8b3d325f7135509cf63f9e5a9f2b98eb0dd80302047c435bb500663064023056bf48a810b638cc352409f62432b28f19400cfce5ff1867ad5582e3b3cb7599722e842069e663fbc3005d8ef6edf74302304421c7579b81b1d9c061c02b4421d77a7e362d6afafcfdf6d7d3569263e6b5a08143263b1f5ecc5df1e4e98ae3224d0d0302047c435bb500673065023100b54fd6d567c358a7cf0ccb9d0fb72dfbb22f3205ec6d540e61ad25d8bab763dbbbb438538283ab5d6b6e58bff2dcf0f702307d145048ef57302de250df9bb87c1f54b0b778eebfb26284347b6caec9ac860c57e6db29a259fbcc56c305c6b219637f0302047c435bb500663064023047deb570f6ce1192d22d3b278ebe64c53c1eea48bbc508a332dd727515e5e21200029f17bedf25bad5d5258fbe6e25970230437c30e9968064b6a1b4f3ba87f6a19f86a4116171a4b1ad3431270f7bec6371914f7fdd34cf33896a75d6e8eb90276f0302047c435bb500683066023100cea3e188e464111ae97a899b9d6b84d2aac86022dc2b3f9bb24b5f227c9230dccd10b31e573fed3415860d9b848b6a92023100c9fabe8b15fcebde67154aece8229f0c0c8efd5848a5e8c29f6981be4470792d30428d1226d2087031b2ce81efea7f7b0302047c435bb50067306502301f305a9afaf78abf264c7ead669cfc361572a244499ab5e00a34161bd9e371b3161336d7a4bb7965389a9d1baf1edbba02310093d07e09b37edd533834d0269e9af7c8c86fe817f74dd08821da71c36900d3ebee2d705a4133ecaaeea31f5e2984d6e10302047c435bb500683066023100a0fa713040e4ab790cabc4fabec00a81d3cdbfa936e3579d222040309b9e60d8fa894ad3442ef4ebdf4cb7541d64424e023100f7d02db237bb3e0552beecff264233bd51010fe704b6823cde9677bd7368b97d878844c17ff35dd31cbcea3141a16d490302047c435bb5006830660231009c5cc2becaf37c6b8e62ca2f48ba7d289dbf47bdb7cc358feba75bbdacd3d5b63062df15b65d76b04f7db661d4c817cd023100a8f8c9e9f008f7caed24be87447c2729ea88e6f4c878709c729dc0dc53ddebb1408798b87fd11988c0299ba5d136e75b0302047c435bb5006630640230107b684ded7af93dde7a6e45236234f15a3409b997c5a3c77402303889b184cfc15e91788947be526158593cf49d488c02305c73da065856313dcb540010e7eab013ea24b21cb58f6d86eae2839517442536883386e1b5a26965d7d77fa58193d7b10302047c435bb50066306402301fd2229c92830b1494e832fbb67cf4ba1bd4656e3ecc2fe0f1b520421618ce66fc3ff41a9d4afc8913f0e6b5bfdb1738023005925d1dd33b1bd76f48ce3fcf8821941404d95aa9cb15ae268ef9853b444e22b2663be45400b5d36d54c00dd8e6c4dd0302047c435bb5006730650230222a68d5c9368a6cc9475385a2eec21291fc76146dbe234ad4c625b31cf098fcb400839957fdf86ee1c8643349fb9c61023100ad7dbe4f36d62d702d8cf660455cc53d79d097a2bf7cbeecd0a6f4580dfb91925ac8dc3bbf2fc863f7fa2a2f34c06ec30302047c435bb5006730650230045c1bccf34bd1bc4f88eb1872189feaa7f95e2403ac3c8888183cc58f2707afb1d6461aaaf29f9137cefae4dc75addb023100a2d0b6313b918d04a2b2c87f8e856429c52bb07d1005ef1972743f964081d8ef308629453b0fe0a9f44d141d534eff3d0302047c435bb500683066023100aadff1aa20eac728593f67fa7f4de89adc8782d596410c1f86709cadd3d99f7423dc49af831fcb2f4c104aa9b345ccfc0231008135d275b74644b7ea8d972fe7333fa163a024766e096012d73b42db3a6ef533e6f059309bbfddff5a533827d78923fb0302047c435bb500663064023027eab775c4a804706e3c1f6c2cacfa8274b38d405094e082d8d340625420dc2445517ea22e44ea7843729ee8e936128f0230104c4acebee27d8597ca2af3600b67b577ad445747ca28aa62cafe293afa15c738dc21ad60ddfd3acbdf4e43c455288a0302047c435bb5006830660231008141f47c2239fb4a845a1c3f07267a4442f8b967e8b15cc9428d5bbfe507133c94b6c502abc7689bdcc38a4b3191d7b8023100894a9957ad0f4745c181cd3ef0b93296dae228ca871a3eca466a925c32b90f5b20d13f66ec64ba651860431438a5d18b0302047c435bb500673065023100993d9958576664052e6dda32ff1e2c6dc57129eaba12b34f5d57b7ef4178b2d43d0f64234ea6472121c7610da31c1e4402300fccdf7a0e92461bbbf8e5a311abab845dcac99ca0aec10167a2982aef7ee5c701fa202c9327ec81f3d67e82874ea9840302047c435bb5006730650231009fd8f017805da937767fea63a490de71bdbc98af952eef93aeff609087d6069d0d88141689fd7689f3090cce7971099402305bfa9723d83c215dca9c9de28717500692f33ebc4bd0791418a218c984cbc04a74ff6db2f784ef4c8bcaf42195beca2b0302047c435bb500683066023100cb43d850dae42276d076a9d2517929e10f29de73d3ed318e0dd69b6421b9f6d43c469c308d2a8b8859725570a02404170231009ddd178559b7745956c4c877ec5aa19e082e70a3725ecf8af8514660fde54869847d38ae4d75afc52d4a08a3bddedb790302047c435bb500673065023100e41037da3ba6f50c49ee5b2757266c07dfaa8618c27d1e9331119bf2d5f4219aaff6198b0572442a2b3054a7bf3615e8023077de50dfb11baa2807cd8bc542a6eb74b5a8f701cb7928e12bd6457b262d576efd49990dce3a0eb72ee028ff93527b3d0302047c435bb5006730650230105d511afe36d98ef9de50302180cae4167638a94f3d76a4ab3c7d2565e5872bb4cf577bd1efd58cf7697129fa079935023100e8ca9746674d3c78df1c854c745725314c984bbed86e4e8cc4742dd739bb980a53e11b03800ffe58f54d2b24a9583daa0302047c435bb5006730650231008432add364f94b08a265a9a11c31b053d01d1144c645bfea1a2b215e0e890234c113ca9b71e285f641734840b3608ea902304dd50edca318db1d06fe31d227c21023041b9d6818054bc296338897eeab6547d512decab53cbeca85bd49f0b5b054210302047c435bb500673065023100de647db2d64bf286acbebf49a93380408fb9980c406bfd179478e0012ef014e91e855a97a8d40a005982407621e3db3302302573505766b8f9ad0d394a85f449d2471620b79d097fec7149308ec09966e3dc8cf217b2b4c960bbd52d7b16c5c9d36b0302047c435bb500663064023005d027de6c263d8849ecbf76442b4150ab2304170bc19a1b1effdff9df371502edef6b48168282d3dcc1394d5128fc91023028515c46052c0986408afc55d63228ef2df7e08c75d3f0e9228a83afe28051bca171545e6147f7034881a3d0c726f13b0302047c435bb5006730650230052d0b001b643e7eb5b02ef03aa5870c12cb649d7d3ca65b306bdd607454735347410e448e64ef5403e8780769065a59023100b4321e6600b37ed3be07621d115aeaf9a4bf71f4871bb29a96a8fb77b4361fa4f5b18a54f4e7c06366d62eb88dd20fab0302047c435bb50066306402306204a25dc074c26c6dce1c8b60a91bc828b0e5d79b311592c583cd066622326d4ad1148e9d56c9834a371adc0241ba870230022be487872304fc5e712f7e6cadc408ca0e9a9c47eb3695ecdfb944e8abf4ac690400dcc2d753c07d38f44b910a5dd40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302170aa51dc79d065c865b2fdb8a42cde47641274a0a4050544b09a420e2b6991f3e334e8ccbbb1b24e613e6e6320f57f023100c0f0404b6b228a25f5b2ffbac20cf362029065777eda109848d1898b059adcc329ebd6f9dee51928e41cb44f459ef4110302047c435bb50068306602310092fde02c462363f3105561ba5cb5e6c78653d7e4e7e113ca29f2f9a36e61f4e1bbf85c60b4892c289aeb42bf167ffdd9023100e5a00f2effa041fa0461731673c550d6715b65939897a51dad46408012df8d065b785715eaff9c9d37e4d9f22fcee4c70302047c435bb500673065023100fc05cc8dab6ee03b673eb0aa0b08f00a347d472d580741d66e7c149b24ae72ead7e29be438a007f7f0de8574c4faa6ae02306f37eea7c9c136ff9094522104730838ed80da9afa9b1bd865fdb1b501a70e84652bbd8c27884f8108874c057fd453bf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c8e250ae87a987d3d468478f7b0fe978af277742606a6c43307b3f6ed96a52612be3a2f688752d1266a742a6cd92d7e402302083ee84df3025fe6a89f4c5846b93f9bc031369a6135791eae7d3b75eb48d83ab144afb28de0b6cec2880d645d46f960302047c435bb50067306502303fd660ef7cd3417eb942a6f6df11e9c97ebe68a7e18927477d724d71ae2fc22f05dfae781b9f10e4749cf994c383df0a023100fc233127261ff4abedff92760a46cb163621f53ca0a28a9c2f0f26a7bced8cf06947c8270c5470289695c650d3f344950302047c435bb50066306402307e021cef7a375c057ef5a28388871f8685f573f56ed6d0273c877c57ef6de36898e8586d16fa0ea275b26c190eab2e190230424063934044080e8d214379cd93ae72a76dc9a4fce048addd10a2bdb8c22503f80138ad7738233042c46bd384abf5140302047c435bb500683066023100caec7cfe2a77afb23fc12b4d664f200048814db5c10a7d66c67590dc653c63dfb2275c5d3ce89be9c843388395ff7cfa023100f522bbf4f789de3a4fd0998672a6d50f28420c151baa2e6e8697c1fd8a162c4c5f5652d7bfecce71713652a3755cafcd0302047c435bb500663064023065b6a4bd90a4862545ded8b98a76d80439567aa7c95cd55cdf965323f272f2cd97a4b093af61ee1373d4a8a95f9ad88a0230627abf45828bd6792d547c291689a6663877caeb28f76787f99aa8eb75383b3c4d768d25611b9c1010ed9c6f4a0bd31c0302047c435bb5006730650230454fc3f1477f5dae84c77c8db0abe4a1e9e47a8afeb370cca139c0df5fbd5c9267c8bd31d28226370908c76c6dc703f402310093947cd978adb7500200aae2a058551268ba75c0c0a41af2c36a1b31ee6755467994a46f2eaf449630215e537cd8258c0302047c435bb5006730650230606d8bf73fd0c81727a28705557147db5fe8b4b7157b99dbe6b8b7b85f44c345e2ac66203de02db819ce17d778af5e69023100dd075f73d53e067202db9b3eb358f614c0b749db3c830d408c5f2976655f63deeb42099924d2dae7af3826be7c2b37a10302047c435bb500663064023030de46c7413b6db3b1ed1cf3394ac174290268004f8f999efa49b858c549cdad790a20bcd77b6bdaf8328ecffe2ae2b2023047a5c1af09e2501dd0a8177b2c6d1970f685c882ab2bc950f48951b454ffc4966d5723325529953675712a46713ac95f0302047c435bb50067306502301b830fc3bc3764297386502a00f230a635778fbccc1c4c571c082381b90bfe606b98bfe1da6b24e65dccf28ab81934a302310091873de2cd7df584b7aad672204e22b3feee64fdb122558b1b5b2eda4f047a987db1e71dc45dfd1feaa1da5d2977a6940302047c435bb500673065023100cd9380266cba761bb07b97f0e5ddd1664547d496e20f0788890814c28fd71e89e743d221ba2bc433d0f4e077bc226a6e02301afb8ce1d38966833c3a62a5ff8105dd1c8cdd18904dea2af914cefd06783cc0a4eae581594fd125cc79212faf485d6f0302047c435bb500683066023100ddf24c806c92b2c83c576c2e85e8b8818dd97404a3c1f805a31296fee7c805e83efaeaf52fba02a6e0a3ff3ab364eea70231008597220f9e409a1a9c738b6019e82dc9ac9c9b391965aaa6ea5a6de2e215679ec905b7ed5e298110d60904a351a76f2c0302047c435bb500673065023100c025269888834e71cdb8b88fbe6f82fb54769c9f1ded8313a4e243fe5d5b5cfd1300c589fa70da1567af7698c6ab7d3b023065041774fec2bc4c747e6a348727bd14c7900c7b3a86a05b4be6481a614aa6dbef283a253d908611be17b6ce51a9ebab0302047c435bb500673065023100f05add448fc4a955a0dcb04720006cbed167316a5c1a0e5af826a49f58b221680bcdf019db8cc24ce21512a496de5cb3023063ff9f669347c179cf53f545b3f04d3eea1f0216b847306ba00e21df42bf3ea64bfcfa94398021fbe583458504f47f040302047c435bb5006630640230397f40db9395670273a75dd3b2c156b1d2eca3dac953b0220e18df6ec39e6883e8a53c0511a82f836a2c8fbccd0042d30230150b012d9c3a21390d3d320f4ec4fc30b1d6b530a37ec2238fc99f824dff4ce559793baa493a9d9c27cc5e446678ea680302047c435bb500673065023100c90e1e732b9390495e6b67fd29a05c3f5d8ef2f6b125fb27e63f167be2bf3af05348699b03512390cc8c3e02212c4e1c02300302aac6dd4301d7466888110abadd8e06d73c8e1eafc192541248311ab42c18e52e1a57c7ed615bee25ea0747d7b1df0302047c435bb500673065023100f1544f24c61cade04f5c9dc7d4178b4848851949ce5574abec5d324e4d552f7f8ec06e85e752e68599f531722da1ddc7023041a46aedabdc856a755509789639a1cd9d6fe7053952f727fb8824766ffe3aed81bbb575fcfb3d914a6257e4df32e4070302047c435bb500673065023100c5cc459d23b27c3761185bfa23f05bb0bf95b647491fc22a71a0346e1ea9633275015a8cb3af763fd541b0ea3dedcafd02305469cb59a79bbbe25544eca91b9046cd37dc4706f438387b20a0930cf78eaba0a19d97dc945284f3877b5ade76cf4d260302047c435bb5006830660231009e24acdc9fdcc46b456c93e069be651ba1877449103c133ed3a79efbdd4640f4b3403ef462d7c0aca96f4eef9675a37b023100c61511df04a50647ea93336865c49e39b19cc1b605d4946e5939e6989bd5be8d6e4271b25cb50355249bcdc1372b51430302047c435bb500683066023100c307974bb21043e77aca6cc3546a793427a4b56f82bcaa213512cfc574f00ecb77c875d5688a050592454a5397724423023100cbe420d6bc5ff9bc234151aa81ac0d9b8a3979a5c096900e98b152becf589b6b600cd354bf202152f8f0ee3cb54560a00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e5002b01b7782f1a6d7c4c057cecc42a16caaacd3c42b4de0935dcfd92fe31141d43c69efd5d403480cac842b7e60610023025f0dfa8c6055b1327ddeafb0179875713a9298ac248fc853120ff95ceced69638c8a5615c1027435e61b3ee1f840a500302047c435bb50067306502302b29f7c28c99917ba682fec767177018b15a099489f5d237c8e7aa038562dd1522e3a1d0bd8f4193a07b72649edd4dc20231008ca52239ebbb45e89fcd223e7524c2d099d88e723426c75699def26317f0cda686bdf4ebe8749cbe7de6b208fd8079560302047c435bb50067306502307b1aeffc814683421974834fa0e752ebf25d6e6e2d10a04d68f048eab864133a16cf7870f817eceb7356b1ed6a57d3a30231009757966a90d84ae48b6ad881d0792dbf0e637a20bcdc64635593e6ccda1e56913f977454d89552f1efac401d25feebdc0302047c435bb50067306502302a800486e1ab3c2b892a16687a0e8e042f9f71837da026289fae1501c44acf19cb90b7347242c7c3cd9cabc2ee447bc5023100ce0fd06761100700ab7eed940d8d618d1deb73b5247b6f1b6dc8d423262cca11f533ef50a70f025bb8c4baefb82dc5980302047c435bb5006730650231008834e48070d3d21a8863a3acc778c1153d7017ee704e81c07077a4010557c32087797bd2d362d742420dd906820047df0230133601f21aaee4a0909cc9225a2373d607315c742407d8170978712e502c5c7ca117e55c185173795604f63214492d0c0302047c435bb500683066023100c11e77b5a25fe2465c35e090b1783ae390a0e76bd5bfc6e90b4ff87c3105fae3592155739ee49c2e11e55a74327c43260231009945dd2e57cf57b3f8fd465512600b1a76cc7bf7b8d0b6200dccaaa7f1f48f0b8b571a712f59b4ba5e7c82e0872f30060302047c435bb50067306502307ec9945fca3c56b7d2bbffdb7e44f4c5824d46c819a94b30827faadd4b6ab5140fd0c6a555c1c6be958feefe3aa4494a023100c2379d499a0058a33f060b403fd1b815be4ed3fb6d56faad2f6877e61047c81222812e875381b7e2a113822c7708d3900302047c435bb500663064023069ff12804dfe0a4b2532d40b473cdbe527ab03f83e278070563a8d7fad690cd1aae7a838306ea7f210b1fd2a2aef8de802302be800f0db22f81c3d6ae69da39659256f0af3a474cba5fa839e46d331989e2bd782c78cfc09103fe9325c2c2cd6ffb80302047c435bb5006730650230114f53266ac1f786be22f0ee430510dc85beff5912c35c03b16f100fd0d3839ad8b9fb7867689507b25fb03d07997afa023100c66137aa346a05aab7114332be579c6cccdc2e6bd1b0fc266d48db8dc7fce86bcb5d1429ab0f8cda55e7d5198e7f58880302047c435bb500683066023100c4a35ce51595ef9b3b3144f894921a3e5acf7cd2cbaf985dc7c6bf613ae0d19a68837c968abc73c5443ffe9932ed78c502310093279a95c7631ed9b20e416a35fcff7214e828a92ae37ffdd01dc671c3a368a4fbcfcbdbf470fdec4c119f51cad45a130302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f12e63541572b2c4917fc7914d2fde41d8d69b04efd329edd2f2b527948212935aa227ef928058e6df241d16a99b9ca9023100913dc04bdc0f1d9e3ee25071a0c297b001157ca834f99322a65f62b1884f8e8c90af3808bff49d6e7a37b173ba0318df0302047c435bb5006630640230146f4fa615d22d5d346455267daabc77477452d46671f86731697379bf5d64fb468240749b04e1c29b6cab148dc9e60c0230164c3665d180a6d4115ba49107dfb52f89adf4014e15c4d1c938c85973c23fa6349f2880ba765815ba02ba727e7162220302047c435bb500663064023024ccf4b7afa32451da87c3462cc5d4f2103209db09e48f2edafc5a5979b8a63caa1325bc9f7505621e7a455b6167012a023039b57e178f8a16da9c7548736d2a8dcea146d13147121ff21d7ea174ba1e3273eb3b22b80e6b2a994375ad97354b3b490302047c435bb500673065023100f8389a28e3a3d6499d06f1e53daa45a41ff4c11ee8248c2b7c420b1a4f9cd4f491e7677793d68d2aabf9b4f894da434602303848c50faf2ac7f3a2ae8e03440dde2f33e92cb32f4ee742806ef392508c4be2c5daa949d72da72a85b17b822b8cf19e0302047c435bb5006730650231009eeb8aaf61e7131c471e5be74cf1b778944fd30fcef67dc899f115b3670c6f3059eac15b9687abb42e9517c5264e28fd02306854595714a4947f1a7319a0325669de4a065ed7f7713930680d79cdb300cf6f466091be4d586ab3034cd416223c00c80302047c435bb50066306402307cd5924129d06a255e33c454f1232fd147e949f74434834830ddc8e4f9f96fa8b4ed7707f8472348b0dd6d213b11c6af0230632ab633b962ebbed53b0ef43bf9c4ba6023b3aa02245d900210d2e13941dba4b1c8791a22f030c28bebf2b66587f2f80302047c435bb500673065023038e6eaf66de422992204aa574dd151e5e4b60f1e5ebbd774d5595771fc30235513ef779768d9ea02bdf7ac312809d80a023100ac9ed7fbe5eea752807c013606a73c71f177745d06b7a2fc3d441f4cb02a72ad2d8ad93bb93297966c06d9ff78193f990302047c435bb50067306502301b5713959d082d48560510938e3337c44c5a1c8fcde550b842e4b4dff8d1f3c6f8e909933f2cc36bd6089969cf45f0af023100ba681dee61569b475805da64d6568965f0f83364239394c1990388afe7a03e623e27463fee193b9d21b848c9837c7ee50302047c435bb50066306402300a3578365cd64ad954434bd78c74bd26235b7e7d8d9c60ac7c72c43720a59bb713ed7d86b2ad4a11da4df66ebffeb3c4023024baa289d15d8f7b394e8c22fe674e53478c0868f276abeeb58b8ca0874c7843c07459a1315ff159498a0af52829ba680302047c435bb500673065023100cb514565f24dd3bc8ba6e3c48d71c56967cba976eeeb6ef135c89ee298ab8c395fdfab6eaba2ac35a86e6ddaa040973802302739571f611a2e1b97b5e1533c987cb72a46e1fbbbafce81570a7b9d80330849211b547bfbc68a61774535fca6d26cd30302047c435bb500673065023068a11b83cda7f60a891a09c907131f1f9b37b30f07eb1287839cee2cfe5acf8967b9f211bce517e1d24740e9e221c83102310095fa8e59c4c40bb7b1c8aeb9d2de0093e96a0c0b4c78ddac152b83f61dd08d52b046fffb36547ba07854ece0c2882b790302047c435bb500673065023007cf053aec0839da0a56195d9b7201df8e0182d3ad9c2108808d67012422a6b6594fa91871998a9fa35154528fc754fd023100b8e7c71e8b2d6870f65f29c3a29edf447fe079936cbcee91732b5d7a797d97d3482057145232526bd4b9b1b979b0b22c0302047c435bb50066306402303f5fcba6548bb9b21244a877e616e470c2e7de6ab60be365c9ffec20562d7543e1d275009759679248215fb8ce970021023047634e2b83593f0922ba9ff9fcc5016c1e98f4f1b8d247c3ceaf128e949f8039b2ae003d19f7bcd5eab2ec67a67e75190302047c435bb500683066023100967a11fba9fcb053a042970809297c40d046a6567e3b84dfb2905d6c154346b0207460669f7eabf8df139ca7a62f976e023100e5c62223928e18a3bc23f3f90eac43806c8959124a7d20d03e2e3d530fc4551d68c51f541e505aabc038d96cfad472140302047c435bb500673065023100d95aabe8dce7db15b67c2686d663fa6e543220f0ca0cbe9033703844443d37695b21e2de476a191619f531634d60b7f202307ea59c0cdfd33a1dc12708fdde4de29800cbef378e7fccca43fa1ca3c63ac0c36562b46ebbb40e10e406f844e54eab920302047c435bb500673065023100ee5f2bd1c8a570a6f058fa10da3956797d78adced9d11325220adf7ec6f44dd644f23f518072faa3b7a0eab6430ab64f02307068eb08193349086d6da73a22e42b9bcd9d217b2de68387087ec67bfa23c58761410d651c91287ad2916f14badeeec50302047c435bb500683066023100e40bfb26388ffd73fc6970bfad39bd0c7a0c1f9b2d13f99ec81886a55964d468b37843c9a1cf87b6e948dba6a93caa3b023100f9c2be63010eac813cf0137db22c652a2804a60eae7c314b03199958399ded08a990e1539bd11e5fbbf4cf248a25b69d0302047c435bb500673065023100ba4d6f900204234f41da9158e67f2d2aef2ade00201832e8211a301f3c8bd36326729c10d9f064b91343d823860a18aa02301297b54ccddfab9db4436fd69f45beb2af8ddd94305e5d6e6d11d92a428373763eb0e4d5b4787cd85f8eb4d6dd9768710302047c435bb500673065023100e3d0c8840cc33f22376b5a465549d4703f69ccc5c1a357d3b8d2f9beb1ece8970724b18b38de3eab61a948e278fc870502307e9f48e726265a8ecf736c82691d35c3a90e6f403b34fb109b73f3e5601b9127ebd7e6484618b8119a341a7e98e3cef70302047c435bb50067306502304221b74ffefec19d41dfc1621e2b2f94aeeb164f4233961712cf3a6c13c0005815ede20bd7e5a909c2b46deeadd4d731023100d89cec20036d6b058c08f17a2a85364b4a245817b1ce3b33c41a0791ff11be94da8e9107ee19dabef11864863e2a8cae0302047c435bb500673065023100aa7f509064ead3feba8d523e57943d4267cd10096d6f78c45ce28aefbc41cb2c2759fd233c6f53e9cd47d9b30c3c3aa602301b8a2002586f1e6cb9b93c54f985829508ee5127bf491378e9576f54a8a979a580d4b815aa745d0fd7a0efd1620b93f80302047c435bb500683066023100a71722ac46f036f0e2772754bd51f3739d571e8c00c9885e442e1ae88d78e0a7b60e8340195dc9f14795640d0811fe57023100da5df53d79ecf66b78d488b5938543defeb2d736fe9f1b80f2af902afd67ff86040a2a72c9e08c72029e65e5c526d6b40302047c435bb500663064023039ebac27227e0196a8cda7fd8ebda1dac45999c3ce57d09c0a2b67d48bccef1130628068e508a53fb707006c977177f60230089da24ddd813555ab8434a589324f4c6f770df9329933c980c674b21a5badce51ff6c8b7676967881d3b99eaf8054740302047c435bb5006730650230713d8d4a2710130043ea15ae0382b59652bd5ec274e6607d9990d938fbd45f8841cd4c12997824f9d0c5954918f3d5310231008569a466ec4b430b66ad5b39af4737ef442b1c1e61ad3d00a2166d2952302ce025a828b93728366e6a40c2e58b247dcb0302047c435bb500673065023100e52525f17a2ffd29f051dec5fc4a3e66b04cc7ffa5f818b56d91f099a73bc22eb049b633ef0e218c4eb749ab87d2690a02307b72d621fd612a2336418d6ec5bad7621912e7901c724e9e0e3e98e90435b5b33c4834f90bf7690a6e88fdd28b7cca1f0302047c435bb500673065023023afec62252252707762d75a11ff7542c92072e90452d67089b338b369c3c262865976a9270780d19d01f43e0acfe2e7023100e3b6c6922741de4177b665528cbb59e9609fa54b1fca857568c782d3d021f8f995e2a83f537ef17394aebd406e18c5f60302047c435bb500673065023100ee63ef5abb0821f6cb85b9f9a9f28f10c229c5ea9db8aa0c016edf343046e85023e508a2746e9bc2f1a847ad68ae85b902302a31241253a7a16ef960e76ce7c4032cc178c81bc80f8398bac773870903bd4178a4b0085a5fdeea7d42367cbb63b6ee0302047c435bb500683066023100fd6a5139e1e5cb70679a927f88a45416aaeefc8fbcad80ae1644a75eef96bb550aae5bd6cceec80a9f6dd3b4022684a402310088000438f542fc3d6c7ac87d5297b1a7c0a91816434feee5fd404bc83d216fc561f3ab540c32ede79c83b93a14dcfdbf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023070bb1ccb6254b975199e3da092d8c91a8cf60baff9a01b3ff19ff0d5b419548d95d0891de2a7c788f53217bd85af95b1023100d70c8d4fd8fcf56521b3703226900284b86a1ad8aed5e1892f1e53f42ed189884e75869c3b8effc46e58f827c9ee18ab0302047c435bb5006730650230407e3a02e5caba4bd3423b7c18678208ae2fd8359e9fa4ff0d19238cba310be7ee5b835f7614b0bd732dfb2ceaa9eae2023100bb29fb40e38314676404ab4a72c80e6b9d09d6d1240045ec28fd3ee6ded243fe7e23a229a5a715ebe5bbf6c34329a9f90302047c435bb500673065023100b9781abf64b22e1a75412c37c752b02d15b2cc6171fa3107b5d487f912f13a9e973e31542ea717ab0658918d87549e11023048f38d4c5800e780efee6743cef13d815887b6238d1e9bc5c0d47200753bea54c4c5f03bf3532e5fbf276e9eaa9876ae0302047c435bb500663064023043a6afe4be04479a184c18898df370e6260d13c0a86f4ff820065b025b3ae76dc7a6a82e89c3f6d3043e75d37d90cb96023079dcdd2785c853bfc1e1ee8a0859960aaef4960d3e00e93c06c772b0482c41d17953bfefc52772b31991d137b855fffe0302047c435bb5006830660231008666346a74224bb02ace560f6b336a0d5a4e52fe5f12b20ceccfdad33a9f171e5e4bfb8927e3b97be9e1d6e01fa979460231009097db89ff2d9b0c415a89b6ba3a0b049b300cb6efe4e4bfee74540636a975e462d7f814e2d154864514b0f5c3b997b70302047c435bb50067306502303d4fd3de5cf738d1b3e9aa50a731a59438664cfe6da1597d59e121a15c071a7c5503b4f0f171f25b115dbf4d1639d123023100d36a6968bfc080b4f436e821685ce34d9699d44c7ba2f6b3a4eedd6cd3645e5dec38bb91f797ded727e6d5ef8146057f0302047c435bb5006730650231009f5fdcc0f897a7b50338a7508b1fdfead83651cac5f42122a00fc3030ed298f5e986015cb44c4cd509eb5b8843fe9e2f02301b4da41cc8f8952eb2d73381d7451376e7702cdc13a9671b621caca73a2de6d5f77017da716d8cb29993e291c47e28b80302047c435bb5006630640230468d5cc03d3edf24cc650d3d5140f7258002cc741589b518c4b41d0f6c65e77b62f4248290a1bf0fc4026978ae5d2515023035944731e0dc6fc3818a90d29e11ef35da88a3cee396463d39cf94d02ac380cc15b026fef3eb9b7073cf00e11a9677310302047c435bb500663064023068e301423ab656e8f02e3c8b35f33ff70c47081433df3c148148d3213f7c7a19704d6afb482a207d3143720f67615c2002306c636fb769a30d89b1e108ddeac7332a38751c608296ffae53b49d5717df2b16c36774d26b6e5cd1f2a05e5d7c31ee9a0302047c435bb500673065023076720ce88faf0e6eb4be7a1ae0ec34a7cbcb5d4280dd8cb31aef95f70a97ca11975921f7a5223cafa8f0574af786a5aa02310090c311f428b9e0ba7be2059c81f7c3fa2fa68073acc06a4e61344b707daf4cb6b9823db186ce2a2e32602775dc18602b0302047c435bb500673065023004e5b0e3355f62d72195799bdcbaba379a30ea286c39afc72712baf3c06b9c31bfbbf9b312dcdb2a3ba8cbb712b92af0023100aaf9078265fb76ee5c0988c5e853f337ddb427c18d2799df1a8cc8f69bcfbdfd3668daa1038058e0c17aacdf31d111050302047c435bb500673065023100f7136aededee82789cdf5caf14f6e4a020cc38236812bd3bb82f323129273e5040a9d2040c7d6d5f2a7233fc641636b4023020fdd6905c3e73c4e76dcad47de9308f7c06d5b718d0cb8813e20455a2df54bed0f33347743eb7ea094251e8ec35deac0302047c435bb5006630640230454c471b7134c58cd8f81aa84184cc32b7c152d19824339202afcaf6064bc7d32b46da6f7bfdcfe9de8468dbc12c2e75023068536bcefa3ef917361e14afd71754e4161fe861baff4026fa88d81a7fe80c778e85fca7613116c2b20d7d7ddbb23dd20302047c435bb5006730650231008113f0e96a3b815b23ac7e8a5c15b5842cd779cf5f33821bf1288f34506c945d67f0f3cb1e87cf85e0860119f08ead9802305994b62c55021afe903b9543373d917554d4494d274059ccf83220bec6bf44cc01e8d5a9951fceff0a1e0f9beb395fcb0302047c435bb500683066023100ca5ff07f68dcf00de86a20f4deea6272a15df07abc64034920fd09d39e7adfa4e32faf0b3a61207bb5b09d9774c5ffeb023100c590cf338f071da9ec0f8526d5d322c4eea8b4cc8388f61eceb41f3f08110e6aef3fe3f3b93996ec55bea8fd1d413d6b0302047c435bb50067306502310086c67dea954dec48853ad3cb13d89bd874bb70b6bb19a33ec990a3cc97c871fb1a379b87098a1eccc32e41b31f4f762f0230697f7906c2b6a8ca253a023176ea8f0e2f572e42b666439fe4dd096be92f44f805caeebd51fdc41e7795d65998d3bc770302047c435bb5006630640230115dc87c179a0c08e37a61b8b79b2e4c4aa8b21282705ae5b41691b96178d578fb290d01eae87e6ff5d65cc880bcb6f302304c5816123a8be952f3bc39f41ff0b4044c2a29ce2e88e1168d0a547988632d73e80e3c4bb4d175e76521391757241ecf0302047c435bb50067306502306707847dc8a553371857a7443acaa23cf8e036025da0ee39e7ca42cc4ee84fdb8eda0c51d2e2b95d651d88664e929bcd023100c78b4f7fdc97088007af148a2a9ba589ae659483ad8ab7517cd4b76ddea10ab4b40c5ae063f3acae423830219847d6b10302047c435bb500683066023100d21c945ee48c997ec4c8ce0d1363adc1919c77f9363ca2ed47adef118e723ed565ca84dad1577a2d55634a01923adb4f023100de5ec254125294ea24250e07baa11b3288788d5df7b847bef910c3b5e449dc4ed8ec9a062771d005052d87b83253bd380302047c435bb500673065023001f6bc0aa65bdf6d0b06b444c803629baa9aca8ea9eb92a458493ce5ad949fe5b3fdd93b2b7680a4d4b66dac1cbea08e023100b1882201ef2550c82c7ffca96ba128d484d1b22b9d7db7161078de33199f4082b3e302b81bba635ed7064e3eee9b8b9d0302047c435bb50067306502305b0a249b96b9bbfd708c7e63a20ae7cc90eb89e01be00fe2de6bd9d5776686461363fa79837310e26291e16cd2ff93c6023100b8de7e7ccb3e2c7099719127dba9160a8d8ca52142f625c8702f92ce7f62edf894f6d413f3d974ec8fc0f4c32cfa71270302047c435bb5006730650231009e98eaaa7df0fea96ba07dfb1a23985edd0f519dbb4df7d234c655b76f54ba39c1e3506978011cc10f2311fa57464f7c02304d0583481d11b44036f1109182f43f6f14e52f1210d9456120ec757b13854f8e60dda01c15f88d8b73e3ccfc78379ea40302047c435bb5006730650231009a1474f32530972a7d5f33fc315c3a31549989fabe0c8078d188f30e429102727b908748489ace18635effec352e9200023065c97f39dbbe22992e001d853ae1ed10a45a79bdeff088937426ad017bc4377bf01964cc677803688f8e5f8b2dd8443c0302047c435bb50067306502304a2937e8681c8fe75d59d5c5fbc46d9ea0b0f7f21854b9a953106730b92a862de07878a5f82df4d9ee0da3ba4f8ce511023100a113f1db9aa2138febab37839e3c9c505b4316a032c9ca101d2013b5afb6530ab396de9ce1a6cc20f32022002c44bb6d0302047c435bb50066306402302190b20f311310425f0a9f18688d50a351509dea3d50f6a318d2362b8408c38334b4a8daadae2d462491d950cdbd724002307df84127cacaeeebdab3d2c86a1acb6c6f3678e8ac312ae4210698253ca6602f5f066ffa8f313a5d747b0324da16c2110302047c435bb50067306502310098a1db06a45af828480e0e2ed1d4a53dd1f68e79750dc4c0462942a952fe1a0a369a4dfeda51fd55233b092cdea287e6023042ff22377cf1d6ad42c51f45e6d59a61a72abbbee89299f94b01b9b771113a85e5a77ef8241040547f6fce6a3aa1c61d0302047c435bb5006730650230075013a5c803c1ec9cd8cfa8dde67854cdd40afff4a7bbc148f2ee05c416fbdec98d43bb73348538bc2e15a1fa6fb798023100c874ebdc4385ad07ed588c8e331fced3224316ab4f4876117e232be15d2d1c028f515c8a3db9c85931151535a689ae640302047c435bb500673065023100e80a71471051ec0c420770ff262160fa2beca9fac47ef8bd4aa2e8ec5a4031a8bb1918a87e3d08f89b4ce45507d57a2c02307a5fc97055f20a31fe78fe7e9f4234b08c1c3bb374229e6a1549d77e2a70d3585c81a82bcb1fb89a134a665ebdbaeb5c0302047c435bb500663064023001862c76b20e869e289dc95fb2aebfd4b24d887a4027016afc8f8eea2549bc49ca671c8922ddb8d18e80b14d069a0f6102304d7dd178ff90182c7c8b7118607032b8a2d33d1c9d0150098c63228c21938f9c5c78e71384ba075e90539e4def49c6e40302047c435bb500673065023100f56a4df074dd681cfa98806f001ea97b6c64503be94432e1cd1a4fcc4b96cfc291cca84c5df16d78580e85029c807d730230293430daa346f639370163623b39839235eb4ce2e99af10604f8b303391eb7dbd522095142100cf521e814da58f361800302047c435bb500683066023100ab94d2a6806f3d30cc40595dc6b6ab1a6c958630ee2c5529625199fe7e0f020ecdbf3d90caf33d91dc3155bce4ab8041023100e1e6d71c41d8473dc390dd90b04774038d813fdcab5b90629e4ff93868a63f9227afbc1cb43deaef210ba5d0bdf82eb50302047c435bb500673065023048af1b9c374bdfa8980d9f85ada5c877415f4895abefcfd8f3dcbd635e20a769000167c3e60d5ae5dc4d366884ebb4c1023100bc3447f1f4b3c173e82429d9395cebcd6197769197f9b50e42ccf300b8e1406cc81e4bb3fe01cca05d88f83e907241670302047c435bb500683066023100fef6a2f65257b15cea6b6a1f387b78330809db87aaee52e4705cc7bbb3ea22ae16320a74c516b8148ce1a09e0db37a72023100c752973e05d04d9d56315f81b498537c80ebdeb60148d40b549c9af17bbb7e83766d9dcbcba8ab1b3c67082df028230f0302047c435bb500683066023100eacebb03610ab0cd09734d786f89b37264cd78c93f1ad706a7566dbe2cf61abb7a31ed04821b14009e76f6bb146cb14b023100f1b374cff03205e2a6849687e5fa60f4f49548b11539f9e0c8d762b5250d012ede3d2cdff6aaa3230d17805ad7bc810c0302047c435bb500673065023046088866f3ecaa74c96f4e7cb0f115dc3c3830a1674c6a12f68e2466acd644fdcdff89a6b3610d1c66aa8a90b5574e35023100f71dc5730130bc5dceab0d441ec6448a9b6788e41b29f84917535cbf9ae6035ac3c70615a5764fda138c737c5352f8ac0302047c435bb5006730650230227bc79ad6810c259f04bde62c1739c51dde3d956b4ca57a596d138d6000431830d1fa8dfa3258f844bbdc3a77f0dcc3023100e27437d73957b93c90a2f8fb9f7adb1f1060f4b8f2213a49312c1f545a32d04f9ae731761150d9b013e6159670573d3f0302047c435bb500673065023100bdcffece6ca9d0eb3309072fbce15cf77a3074089ba8852379af919ab1298241230e2cc7316e28fb8a4f6b48735dcc66023079126375977e7dc8f31c2f8a3da7285379395418953f428e93b77ed4f5f6ce4b91cb59392ce74d2501f706ca42d467870302047c435bb500673065023100a552e89c0800c012caa945a948f128a2e2f7b4e9001c39a91894720e6d25b08335e17a8f9e98fbc63002350c6152c09c02302860845f44aab48d1c0aee105edf178fce09e84d02e3e08edf904dd29a296a4b2cb1f89178c2fa9ce055515593ee74d20302047c435bb50067306502300b915c8d372b1a6929a8fda4be801ac126c47287ea30312dbcc628241f3625ddca15c91e860f42a04a05829006bae339023100a8797f168f7415107a259ef7b7a550d6d84ed20cd9e9df737dd7efbabda140c9129d79efc487e07056fd5cfc594620ad0302047c435bb5006730650231009645fa270731daeb717d7a16daaeaa2205ec14a26f520cbd6c383f7afdb47eee5a95d274e96a54a9a643b408c6958f860230677c54186f07bf0cb985d7492e6821fc2a6060197bd3f10bf56eca855c92024268769b8aab480a3b7f59997cc847c9c50302047c435bb50067306502305b67c3855786e5d6c0684306b5117dc1350797306a074d6e5fb5135792b6bfd83aae51ce1f056ecd54ae7b04f26f5f84023100f9787060fa5b7ea1fc875670b157ae17f5208dfd67b48551d9fb5cf63d05d3cd073b1c438bccf9c5c52783700edd661c0302047c435bb50066306402301703aa366284c6518372837a22eaf018d57984e14eaf16549ac4c31decf85916f8df482565926cee4809429b5bcaf15f02306f2b56343704f99a4adb7c8c4a915fc32a39d22923ff7a7767b7f45bfbad0548cbb59fe54f88d4e0224910ad17deec180302047c435bb500673065023100b777e49a7c8e8cc4f2bf9e714f4ded16baaae27ad45d82116eb79f8591ecb66136c50544a5b33c8231ac959028acadc802303670a40ddb73575e4c3c9579acc82be58089df2f419785f482734bd99f168296340c932151bd255b026f7484578d55d50302047c435bb500673065023026b55a7bd983829b0a0665b64dfde3378e27595e5a5e6c5bef37c7111de23ffe04853f69927f0a3cc38be83b4c79f206023100b30e8ce05b3a90b7705e0b8174dfd30ca8c218bb6c8856a70f311d24895c5f08dde34d30d85318777501ebc1df5be19b0302047c435bb500683066023100811e1bb2e9363ac49b5f8024c52dc861c62b30bec1e7195ba9bdf951452ec83462df53680de69c7cc6d2cfef992ac702023100a15f9d3c5d90325d84efe96811d6df201644412d46f410eacb6ed12e7d7be05d978d74e2ff4a7a7ad1d85b2f8ee799f50302047c435bb50067306502300c489903cc9573129a516f390f6bd7f4170f23787c6fbcc6d1f9ce954ff930b9d5999198de252e1d0cdc5577bf79b2b1023100c9a4f969589626e84059ed48fda226ab1bf497df318117afb40b5555f846eff12f7664f3998ca94506c82dcb0a7e80480302047c435bb500673065023100c73488ada9a581ce001f48a5a35428155f1f670617de42742be48ce2c77449379789ebf373b889a7ce6ce1b2c969627002304e43266cdc49825d17ec5c29a3c5cfcb037e3425762c670caf3dc07b1c292705699a4dfeb07f00ce17273abb5a3baeee0302047c435bb500673065023100df18d1b4164e1f183a024b6123f7e1f47c13537dfd29a57c5cdc8340a4a6537d4852c11bb5d08cc49ee322548b5d07ce023061ea0ad7fb0cde187535b8df0b2655e7c6803597d871d0b7eb3de810e04593ba70258273409da3480f39467ab2d328650302047c435bb500673065023100f28126e8a22939377411e7a5a7b029433e004a9a7d483c05c8fed915441172615a3e5a10648cd2eb1512fcfb0362591f0230017a614e0bde19936f961f90f8acf05dbedefaeb150342b35bb65a6eb64079a104187ad79c57eb857ff93114ed186c120302047c435bb50067306502306e2563b8a77f25dad14a791de779c84bf2aeb67c20ceb5502aafdc9357412f63f464c2a6958a51d60cd63d2a0fdfa389023100f89c7a33253a3221f5784fb01f13406c26e5488cd39ad3b1da09912d4552e590a16ba8f994340486aae203f349fedd3b0302047c435bb50066306402305f26fa3aa0557c3e56f0bb4dc04268fba5ead648fbfb691dbc5d7c253e111444bc033f09ca1ab4b2130471f056caf6a802301b65c9f69e620d2c550b386fa15f2b9acd708328fde41f3f6abaa8c0b96774ad4a75a7eba958295b1641e10bfacee1390302047c435bb500683066023100e4fbec88eba74e07151bd8b97fb6cf0711a7bc26cc8c99e8ace8f3358808765915fde6b755fef7d864b373915b4c3bf8023100cde4afd67fa523ab7a3fd9a9f8c35053ec893477cb0fe3314793ccd907d81f35c1e771f18633f395c9a725a78c201b190302047c435bb500673065023100e85f1feeaf021dff0b949dbabd0994a9e4f51f5b8336cec9c99167133e389b49f03f6fde5f57d5ef6e33a04ba3de16b302300e21fcb101cb4ed8d7a2df43b4a2beb2a818e72da9f23e5b958e02ec491c74d822c6f271efd9db7c72a40048322132730302047c435bb500673065023100cf61c726db88255d81d2fa45c4f6e2610ec6f0a483e0f47f929d4347e00f6bb42cbbcff59e2ca3a5f69e4532d6b8a16302300d35bdb67f6143fa682f49b2b268e01c337a3593038b32508d32f934eb19e12cc58de1fbbca131858ec82304b321deba0302047c435bb5006730650231009e7aeed604466c324a0a5271838d2d7a96a5a3f81e0fa6bc4a0eac965790a8c96fa74f41ac652647f1a105be334f3e34023050ace8532535f91e04a9a224b560dc1c03903c67be87dcfaafe5cca2200476749f4ee6c30cf3408c0c2f20376ebfffdc0302047c435bb500683066023100d8dab39359063fe151bd343960b7074a85971030351f9f9463d7f1bc3f80dbce3be5089dbf05b636f5eb68db0519224b023100eac892a45c32a27487f0feca8faa67abd0f3f2288135b1e641685e1ee870f57b308fae8cee5ef2ccd57a089d02c363640302047c435bb500683066023100f27e946d480da9de5d0c2b5a2143127814da583c12e232f26e35904a96a6fb47f241b22b90a0f7ee130a8ffc6273198c023100bdb8e7fba012db6edae7bff288d708dd5e7aba543a46d8eb13cf60e8bd0b0bfb205bd78b7eb001cf20f6b930c3879f970302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c4493a99ad3d14a932b58286d14af7b110bdcce5f30d5fe6247faa0b10524cffb4c73ca51db7860a00044d4886cde2080231008daad2c1a188dd531bb48ce12e44079c094eda8f90fb55293c862701031a11cbcf198399017fc747dde1ad0977a3c8d90302047c435bb500673065023051f1b95ee64a4d7b69836abefe509733c3c17b87a32f713ede26238251b44b3f32aaae56a593b11e483a14f9445feae40231009435e761eb7774247ffbac7a2f5d2266d499b7c48620c4fee2b94252b3e74467c63f6e37b5a1da3754e232781690e7960302047c435bb500683066023100e2b1742e4db5a465028d7d9684d0d8bcf09ee32234db3dd0cee50b018a10dfcca6b751621042898844c3150a6092d40f023100a72f3c126bb2e8dc97d5182def2df1d09572cc456d11d19db87db97a03b0cfdaf02cc4682a9b0d7df813d9d34a4387b10302047c435bb500673065023044c9b66c14306465935f0b83a672bbaa2d271669684121d93ffec67785269a845f3a9f1ec27e2b6b9b5ea6eccdb253fe023100d842502591eb72906e5b505a89e4b7e9174e9f8b6a682c19e7cf671fe248911e23eec932c34d81c56e240b0cd5aa9d6e0302047c435bb500663064023050dffd18f5996d99d404c8175ffc5430e7f8e38cfe35467af67ecac88c70c27ae15248bace377e6681a692ad305d4d64023041e69ad5c4f94283e644f56299fc0a1148c5dcfddc40a4346b479f7c7184474c74e327188852cd0dc37068a0b2f9dc4d0302047c435bb5006730650230170b2d5aeb3304d95f12b3f05e14511776bc8f54bb4380c16575ac7c5dde879f71a4f880e5afaa52089bb9bbe43d800c023100cb6f63b969591ab5f17f07ea97206367e0a410c7b5fa250fd3230919767b58f315a26b70908e8133c30f3347c58dcce20302047c435bb500683066023100d2c65edfef89b2a29f360344a35dbae5e1d8dc761df2bb81c4c4bdf0967d7126e883cf019e66652064aff771977e2e4b023100c1dfccbc040625c76efef2e001b9bf2a7a2b0a45c125f6435d60f3671cd0288c0a384b54b7eb8aa23d6167c1de8f91700302047c435bb5006730650230243b749f916cb8609852ab52d43b0b3faa95a5ec78cf32ecdd58d8ccea2165f8d152e93050ba4c54e22ccbd105769226023100ed32aefde7eb408a1044f2da997237e8c3c33261d9e7a004500f99146753ba27f3118ce318948f9354ccd98235b1b6c60302047c435bb50067306502301675d0b8ab67cbdcc386c29e061403cac3b781293105669a9d426f64f5d7c98fbbdea76a65959816a38ec6de5811cdf1023100c637fbd3fa23d05549e543151ee5482d98be07ff9828f49d2bd000cbbeed7e4005386359c20e294f7ff2c07e207ebe500302047c435bb500673065023100b4d5d80356c18c3ade9d5436fa4d38e926a429cb59e3e31b87c5047379b51369eda39c8b639028d2190889919efbbfdd02302482a258ab34932191ce336c9d06918dfa746e2cd1015484e87dc0fca52e9e3551b22457bcd94cc7ec73e49b80b6e3610302047c435bb500673065023064fc098d8d76228056dd15e9e17f7a170f11da86ec8fc8ed520b6d54c3592c35b633161762211e3b0b6f6add33c351760231009b3a24d2d6dd30f030fa19ca96da97455482e5c6a7e2ffb36f6d2081eab246dfab3ff545d6c4b9632cd3cc6050651a6c0302047c435bb50066306402301775e78db360dde7c7321f75bb8688dadb78a99631c02392b139e9bff8bedaa0a70cdcc310844c8ea8b1ce9a425e45cc0230443ccdd4da94a036c2377fd2dc7a7172a8ddd200458d2b96dec7ed4fa637b0b69bfa62f6f61656beb29813c1d83eb0030302047c435bb500663064023070da607ad513718180b28a1df6a64a8f226b8683a685bf4da1b230f5b8cb9ab3b8af57995a5205efa1fe89fe06c39b5602307b500a065e35ab8ac6e3ad352f29382bc574e9c03128c13a8e2c31d85e1c5ba4b6020c993c446011d88e69f786ca45ca0302047c435bb50066306402305652bbf646b23bf64b921abb1cf13b1165d3ad0b1fc29e1ad41c1f9d25ea220a520bfe27f1129cca64265bfdff59eddd02303d364f5ca419effa7530e1eff97eb93e2c6745cf6b86ec49737f6422138ae5931267a39cd1dba0d59f5cefddb08a81a30302047c435bb500683066023100b88695f84a6a1444e433468f197757b34f98a4d7037a2f906ad03f3750eafc81b58467a669f3394367348960cd96a205023100c1aafff1ab6918f5f4f0fc5399d921ddb511b8c46e99cf1d77398a06157399fdbfd38da5e050d3dc478ef517ea61f14d0302047c435bb500673065023100bbb3601a7247d857c0673d3fba51aa38f6aea770d8967dbaf8b6db44801a9e3a81fe715b63c65a2ed2b8c90955eedee2023060058b6e3634f5205ea58b5ca4b63cfc44ffb40d6f85abde2c9f30d428f8032cf0548476412aa8921a405b78bcec8ab40302047c435bb500683066023100bfb151b3b5202fce7c706ca1091fbb266fd100a292ac12046e737129190323e2e12ced64017eafcaeaab1476b81adc5b023100f67f8b6d74c0228166c56a0c592f05349fcbeadaec40d44b3e97a6d85716fa4a9fe7fefdd19457977d69fd4380537b370302047c435bb500673065023100df937278b106d89486dfab98a51107510cf4295037cc1824a6278595367b7e9c172474afc4dff7bef5a7b4cd89859c290230473ae5ceeccc1f114560740fbfbeb2465101c26d16f1fb01304ccd0dc15b304da12d5bf9890cf957977de4f2f35a83f20302047c435bb500663064023014e1ccd74bbe671bfe2630c9921e39a8501c30bf525eb2388d64e2459614fc5e8934a8a4283f2e67a745a8e31217bfe1023019c207e24950340ecbcf657989c93a1f34623ea5e3cb0bfe1250ce5a634847889f6101c8caf38c9d58732dc4a0b4f81e0302047c435bb500673065023100a79dd7c617bbcdd998a358e365fc3cd03a5d424b5afd0e6e2b9ae2ff53dbef8001ca1e62af56d8b4607da6ce4140b78b02303a3d938988055ca84f70974a631c3d430ef38da5d002a74670343c1dd293e8182cba1c1c87133aed67c4b94f8dc236590302047c435bb50066306402302cb9664b02c84892e82f53e0641a9168d8161c1527133ec454c88905f8a88fd4d94cef47f5659193fc5a675077149fec023076d41a4536499824ea84b79b164a1e9e27020ae3b9a2c021284e9f206fa6c081f4332b2fa453b73066645b25735126ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310095bad146b3eb6965689ed059709fb07b44ab9e878c29069a47ddc97a6d3571f4ef915821eed8fbb83601ffdf11bb6cd402310081dc6a1d27157ba1cdc68918b979ffe76a27e8dde05fdb166d2a825a833f982900fa82abba1371cb819dcbd23ec625340302047c435bb500673065023001a5f9733536442f4e97707faafcdbd1a4794a4becd9be7ecc21ae1892e56297e5076390c23ac4145077ba8e9e79ae060231009348cfc8de989117e469243a21230860e094a48a9694528e533cd5d99a036d206dd0993f495b98d8b92f665da353665d0302047c435bb50067306502310080cc35cecc5d165138d1abc687fda54fab1fd47b62a699833d537b3d1e5aaa9aa22727f0d666e313b5672fb6700b327902307e974a6a8eb38cfa4034dd101e4b6b51d6e01114539fef798ac65410c4d93891d5021d83b9e26ec5ffc279cf7cf2dbc20302047c435bb50066306402307ef28488b0d4d588fa29f8a254df6c59e884de15d0d61596cbfb5c1f320b48416faf5345801d3d75f9e0c2036479339202301a5b0b772b96a3e3401e60376d96e5837759a54f49c24d26f64520f54d4a9239325aeed42613490113169975b47a17f00302047c435bb500683066023100f7b49a719e079db25f4f87d94e0066419429b87376ea145a42255163eac981f1aaf1998abbd50d4b440017d716bf6d080231008e88ef29481f857aa6c1dcf505637ef87fb60f0583e223b43cdd113bd68e2866a45f1fe14db258b04755472749464c9c0302047c435bb500673065023014f3986ea04d6d1d5205c8351df74cd46633e3cf8b717caea8fc075d67a450bb95144076bd02ed8afdc2e7a824c52349023100a0e6f3e6a0581574c3355dd37c0e7f35de9fa1cd8bad6f209fc9785dc8590da72de00d35c720e609ddd01d6a9165bed80302047c435bb5006730650230244c7e903c31b75a206164cc50aaf750b80f25372c8d1a286c842a92dd09316125066cc7d774ddf7cbe397f30d79e573023100a9089b227e69f1ed9b4c086d1f9a67356eeecacac72e2921aa51f8ca7187b4467754671ab40feba1351ddc16ddf2daa50302047c435bb500683066023100dc5b45189f70459c0c9c0dfcdb2f9e45e64ac03779dc915b6894b1fe4efb48da7dac9cf65576f3e43c70af38fd0f0888023100ab3a2f45c94addbf207d973583c2b36ded3a337c1f47c53cc447ffb928d62d4017d4cbe7df11a22229c4679f3d0809640302047c435bb500663064023056a712ae9ca7e51f6993c55401584f5cd0886e1bcd7ead883220cfadc1600fd6e7a16cdcc8c49979893b132409fd1c89023027f3394dcb09dab88ad2eedcf2a742ca3f42f73f33d32cb4eb10253b45959cbe8cf053e84175d8870dc1ebac73aa12dd0302047c435bb5006730650230143f2486ffb71124c0e24b4a865bd0fd44d1521d2d28b5964f6a6c73aca6525e20717de4e1c576d00a241ff1ae5503be023100f7c3c13a57608c43992daa7a7118dd06ba1ed6e8f1e043fea535ea163c8a1379a552216a3a8b6d5837fc5b6d0f08b4210302047c435bb500673065023100d2146ca3981691cb0336644d6b0c8c9f330c631d774ff63b159bffbf4133b60a65fb25b149dbf18bc4a453251b873ec002307ee5c170e9433bd57575eaee6b2b5e45341bd8c45b7171f6b5fd84b016257c9314d0f02773e2d207829659b967bbe8250302047c435bb500683066023100fdefd734a9a80a8f4a1111a1750501da96242fe3496537d6afa55e97805d70f50aac46204abeed9c76e769273fa97073023100c3e10d264ab459c068b62139205bf89cb2128ee2ee5026ece19e9176f1aabd2abbb303c559cb6bcc1c0ca71e68bab8140302047c435bb5006630640230293003362045b0873ecc837ee3eede5f2699abf110b7a7f64029b0fd4227ed637ad6f5a90ade0ae1df444f489216a1c802303be6fcd8f7042e3b90dc5f53dfc0292fd378fac200d25c12829a27308d6e244e7b8d6bf62ef9ce857e931dcd5ad1054c0302047c435bb500663064023051797b14a1cd0f902892a0297a63c33b5dd397195a63f5cfb6964bdb364ba8966fd51abbe54e19fef38ad04f679f598a02301b698c188e6a3434ee80388a9f747545dd9fce9dbf58fadc723e53c4e1ff1de6c1242ed64ec1555fac21691c45d0a0ee0302047c435bb500673065023100fa113f8b1486773229fc39811c1278dc968e59325b2b5fc8f5b0a72ae6d7dfedc5e0dadec52dbcd4dba876713c1221190230402d276fea8e0aaa31805c13808f393007fbad825750eb5a773ef8262c0eadf81b32a82abe191eaac65ff8e3d7a5c9cc0302047c435bb50067306502304154291b291966e9e55316dad4ea7b4cc1056cc1c50be6a175118a6fbb1e6973a706465e90ca639928c4297f1c344d9e023100bd7deaed859a7179ff762ad6018134cc7cc39de6b92d5322648c4a442bc20fb6bce2863d3cf64fa1f3d7c2f80fa0966c0302047c435bb5006830660231008a1475701c2d1c25c154da6b10a56b5036175bd13a3b2f1f77d1cf5c85a5237028f5e3a73d81db66f3ac5a964700feb1023100ae8635b6e4519dfee0777ed04c0d82c0d268c70b7c4c2e9a0478e46cf442f633a023bfa853d9c4ed5f4e57c880cdf08d0302047c435bb50066306402305c454ad62ed8ccbf6c41674a550fac8bd8e335b16df8a6ef5933cd3a8f80aab4b0f21547fdad1a8ca94c9c5555b0afda02305d251b45042717bdb506fd9c4ad784246193ec652405cb7ea7a17b1a676b5477ef5ea6f2cbc64014142d30be4d5984a90302047c435bb50066306402302ece4849fc67ad221a53dbcc339b14b4b7c1cd9cb7fbba61b32d5abde91c1ec7d2daa499b429037d6f4301c05b116d4b02303cf94d06520dd3b797984d501901edfb2a7245ae5e67bc497ed8106d2588329e4b52227979167bf28a2d8397e594d5ea0302047c435bb500683066023100c5c87ec8c3456bcb97ccc87dbffca2025de0a47a373509426562e8734802dce477a619e3ea84e9fa6af29d9cb814c3b9023100c0821b4937a4ef5457f1ace660384658e737d6c229338925209a47df7a1c066e6784a9026193c420c6a5c29ec4aed0ed0302047c435bb50066306402304df4ad93a8cff652ec12aa362f9341d0a58de7521eab626ae826162269cd3428c581702a1a8ac80e1dc2f8489b64decc023061a66eaed954ac3f5f6f186ab4c400258ac758b56db70e82e9dde2503608a4f66fb02c87003b67db2eefce9cbb7ec80c0302047c435bb500673065023100b4655a6dbf47472b1078e727a5cdd8ebe2733a926163fd3e85f4f574c628742607979ea5990b918e948a1b83da9cc2c402306aa7dd7edf9690338fbbea7e308f0b4e704d540cb82deedf9f2016428646bfae2e35cd570cbdb64a73fa7c498b2b96c20302047c435bb50068306602310084b68a80856ca7b86acc64cb848eedf9faf123d54b34f2eb6a013c1f8af7a842fbcb171ef1a18dfdb99deeae64e4521a0231008f480685a67cf72bbff5ebfa67b15bc1e548dfa8793774be017a5d1ac917866f8ef810e024f77f9b5b48b32946a673940302047c435bb50067306502303a50d8e39fb06814e394dc68774d42dedf07df07448f8f655a6ea8d73741126f5fcccb447e7739943111e02a2ad1644b023100e2296b83c53bbc6b1f6489971dc54cca48af744f306f9d9c4c519fc5b3a62587a5bffb2f7fd2fc4c2d224a70b3b223430302047c435bb5006730650231008d090f9c17cb83acad2528270a2a758d93d4fabcdd62bac50841466ccafdd9655b651ac5d933533ed3124af8ef8173ff0230473d042b993f183943a589c88bb24c8ae04db49c3683c906582dd43e4682ca06e4824f5c398bb2e5b2f0555992eef4610302047c435bb50067306502310088ec2f74a1cd36ae3a45a1338021bdd430595ab158d3ea9411e7d6038c59ec926920b133755608a4c66fa8676970294002302d611af2c8c9ee63e36d22984c234928e4f04afc04ab82debef6d59f8de9174a4e84684bafba4a6463f4446e20f247830302047c435bb500673065023100b8dd28fcec61abcda25d09f1649c5aaf5542e81081a9a4f03a805d8aeeba20a434f3a52e481889bbdb804f15b72d17db02303144b87db3cd86ee022a1ec307b95388a29c08d14870efcf50886346cfefb0e14379a8a37e8b0ee2c3d63f22bc18112f0302047c435bb50067306502306ac3e83b9ccf041586720017c07b0732a58fbd40a59e228b3d682d863706ddcdc42f20203bb831b9486febceab8ed2b6023100a8db2cdbbff1c44bba02cd355dfcb4e2f815f2b11501c0843a0023442052765af539ff2f468fc6c75a6bd48614a0edd10302047c435bb5006730650230639facda16a33a6eab8eda6988b5b82fda497294ba7c877792c30b7acc99520ff30910b0c1ff5ded5cbc1cd0b0903aa0023100c648f8ac182862282e95cc4474563be07448051cb8d543facac9d51732a7fc4dd356c5d8b9335a3eaaff89914f2461ba0302047c435bb500683066023100c3438611065e9560ffdc65b07466897f26375353b25d38b3e059e6026d9d2ed59e554abde0778b123a363cdbd9c8656f023100e984791cc07bc1e450a5ef904fcfdb92bde7052f9edf2888541e39e47e40691cfefcb9ba7fd683070f34c1f0cd100a9d0302047c435bb50066306402303f1e358f6077c1096347328fa4174f63aba85ca25e0bae614378458b38f3a9c37f823322d8a603a57be7f7a507fcf21c02300da0455b5183e873f3bd3f46ff1db38e55ca767956be531ad5aded79f30dccf5dce5cd72f8fdfd6c7625299df0daa5110302047c435bb50066306402307311594c82f60f06621449a486c3dc8a3af4030a92343ff32c0a266f7a8151b374daa2e00dece52216c15ea710970fbd0230241f898beaf7b2797d7b54bc78327324d341304d0209a841334641954c76749f0d14cb3c1b791cdb52e67fc42bf9208d0302047c435bb50068306602310099d6548c41955b8779da628060afdc989cea119a43b45dfca573b1156a2d14a0fdde8412f4372cf57c6c0d6c1104071b023100ba33ea5576f43717523a004c8fecc9271e44d4da3e80ac96f50bd072bf4bc6994030e011919125509b337d05a727b16c0302047c435bb5006630640230135c91a408e0ecf25b88741541930266ef1a90b521e518ee83fa0e2b446386875dc9e55565b6fb885441370d37ba6a010230655bd4dfeeb64b66c2e0b0a5d59f0e2a19c4b1cf3a4b0f2b9e2b0e9cd3aca3804361f1f3cd06455873439a085706e3950302047c435bb50067306502303e7a34b4b6a37a8fe3d62de1538ac6c7d18dc0599d58428358398af7401fec842b6ad390ee9c1f4118f05b7ada30c26d023100df8c5a587a3c6ab5a9eb0a5de20668dc1008a6a72597366d20487307d9aa0b9e02ee7f0a042397f1a463e22c85bcba010302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c143f38d0c89cecb7130cd731b27a6d1bfbeb3af755473743e40763495deaa93e4a7b6280e349d9c2da38856df8b367b023100e0ab8d3d3b3109f450c45b94d7b2761d904c14d1cf66eb4f2beb29dea2599c0a841434ed17592be6d0ee48e4f09162490302047c435bb50067306502300d9041721d26c679ee5b4f7f16017061a2e6d5165edf792fc15d5ac0e215f14aa499a04a15f0957f7a2c5dbdc0b49a140231008d1f228b8121d64e591f893e442faf2646231c51d8a24d1580d24fbd58c2373bb9e967232dc0133cd6b51bc2b52955160302047c435bb5006630640230615ce178826b07b509498b4053fbf3b2cbecb700d09f1ddc2202204abb4a77f40f89139c1bcbaeb1cf8d569da5b85830023066c5c94b859d138f9503a437868505ccbd5f5a2c26942f8f21d7f9a2e3c8f6485f3ea4f3fb05bb813b2a3966ecec1e720302047c435bb5006630640230183fa1409344d10ab47c3ee4ef58ed2af92c619abcddb0e2748723a1568c16d795c484a4c8a719dcc66beb99b409a7720230206f4588678211f626e14261f5699820e88c5cddd0679e727cc97e3e0ff72bb57f5c94ee0f0c22478624c9df41219f150302047c435bb50066306402303d2157f7dc3bf945029014fcc4074b577ebbad99d6def4b5025548c6fe801af2e88568120660b5f1fb985e12f35bb6fb023022c775091eae792aa893608c623c1db11eb4c8beb9c1c002fdd41de6be96bbce3ca30978f419cbf669c3157af65172d10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009dd36f476875edd1d90615882f385c8f3a9a98122a9708a1e9c483da232c77800d81cdd019c9726a08af88ce27df117302301a2b3b89aebb2e457ebc45cda7ba1e7c540a5f884ade81cd833d46bcf1cc0b38f5d4afef57343cf2b61937023a8612200302047c435bb50067306502300f696f9c16b3e1074fee34aa2590b2522e37c8a49e2a5fd50b17524cec455ce6fc411c42488d975d22ff3638657d9b3e023100b5ea48fa3aa13321df5ed67420d311ff714fb2af68eb1ad4426aea3f8b472f17a96893d18f9b6b7ae2343a66cf610c990302047c435bb500683066023100b5d2cead5d6fa5150b5037849709e4a2d3904ced31d18a9dea9970de658d97e869b9cbc92ceb07422a2abc9ba26fcf39023100e8473b1ee2e70560bc771423c6c231bea2bfe099ff5594b5b54428bf5cc501d972fe88b9cc41cd72fe39681e7ef2bd140302047c435bb500683066023100fb3742a47565067b903da3f38bf2367eee2078f62b23fccf86806e96e9ab5eb2aed7a0af0e0aa24fbecc4f1d0829c8eb0231008b37d33d765d53d9dbff527ffdf1895b7e4423c496cf5cd3f1bfaa8050d1c88ed9f8d3a2b83f2d22a2c246889f8992690302047c435bb500673065023100b2ae50c56aa397e5823e5555f04c95a0413f7e7afacbb93af67654019422b0fc9c3d6286ef261bbe6e93ea1b22c629b3023055609944557fcc92e9bd953c026bc5def48d48d0795e42eaeda49f10673bac149409620ffec2b303409821410f360f320302047c435bb500683066023100b3c964cdbc841020ca9e650df5fc6e72bd7699606795717cb28f3cb84d6154fcd03987ff108755f81f0e0c58aeae27d6023100e662d761448f051a3cbf95ec33ee1e049e65bcdbd36b03e52f8582385b2bc169bcdd4031730702fa3522a1032e0def320302047c435bb500683066023100db4bcde990fc8824b2da53259a2d559aca3c7548c44f3a0b40e6ded2cfff08b624b0c173c42437194aadec7ce301b23b023100c37c7ed616786c40c7b98c2c6a16b7adbad3411113573e10822a9b089425447620fe4738d557e1ee1f5f76b9e6880f810302047c435bb500673065023100b53d5df191acb92276ed6910703f4d156d89d3a531864f50b70bd3b83901efacb373b61ac4ab1613e6b023eb67824787023047177babed360220ba7743cd0d4495fb639c876aef6d623f6b8a8ba0bd494bf21b70e04b47c213acb3e3402211ca300b0302047c435bb50067306502302167c9b3eb415ff4a605e7279f7586a54e3c47af85b2f001069a1fec29f4509d3ca56977de09ff2e377c8c6dfaf0cf07023100bfd9a29dcfdfce6df9dc75f80e258653c91da2089ea6a0034d0db9db2eebbd08f7c051fdff67a531158f8039c61cc44e0302047c435bb500663064023041fed4448b8badffd8be9c3c5e94bbd270584b9765d3e15a4f63e26be5368ea238fa69052024ebaa8c6b063413f8827d02306f76c00d11f948c3f744d0cfb9a59e47e51e4ce53852f6a28e179c2f5f5d3bed969192fdb492e94f01086ca8368afee10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c3f854918ff549f2e9542a0bd63275ad04bc2be301f34c19a46ba91bb035f444a227de37bfe1b6142e9f553f5b392a2b023100d16418b8660a61154ab2364ef49a2c9a64ba24e924fa804956bf62f95537e5245d984ed501732e6b9510d2ec2eb0ade30302047c435bb500673065023030274cfc3731c6bc5ff69de3f41b4925648214da690c56fb6781fc7b6115521f58631c0712f8a9a3b7f2e33d45f5ed3d023100d96b01d987c6950c3bb3b8cf2ba1343db60b77586342379a98d46601c896e244eda4a0e7999a0b90a0d2f6baaef7fb590302047c435bb50066306402300b362656a3dab4486af9aa90db0fd6f56220c77551addf274804d244a53adb9802aa2e18ab4d780a48db4c2ecfd0156902303de0517d6cd366340977613a1a2a117d923112066efd375b7cfc34c7e4791e35f1e04c3ea8a21dd47ffdc763c13f9df80302047c435bb5006630640230523aa4d2a2740e379edd6b6dfdcd4e3bb094f0f47de98c90792f07db8b57e4ff96a864bb158a4a7948ef3db46230ada4023032cdcba873caab1efd800b0286082fa3c96c0baa9277a4e7cd971fb91189bb08e09b9244f2250d2a4d2cd384302c372f0302047c435bb50066306402303ab5218f6591a39b46ce43c180fc765afbcfe50450e1c1641bfe9f1be16889f286ba9f4fc866a26d1bd67f681e38495402300125fea7ce0b13233862adc64a484d554358e0ad8b9a8ef4e67bb6801626f42f6336ba93895b0f82992a79be1d6042bf0302047c435bb500673065023061ae62c5c12afdaf96ee19dc48bd557f63c4f240a5bb5cd43982d47274d4244a86a96776074d5b42fb3750a1f8783be2023100da3bb71bae2678728ca6bf1447574d78e352f047bc70694d68344cec5fa5884d0e924573ac2f437071380b581abcea5b0302047c435bb5006730650230713aea71821a71b49126772eaad6e07de0d865eb41cbd6537b5b9e26430ad2c1bdf62c5967b2248d453873ff43457f0902310094239223feeca308d5d269df14f60f30f15c67f10612c152fcfc0697a8f8b453db435c8e612b34bb62b78779f1ffc1850302047c435bb5006630640230387ff8bd8b82e53bf7d5c3e8fac7b89ced0d0cdc426bf9888420ccae8172c247df27b6a4bb9bc9f222ee6e4ae851c73a02306154961d6c96684f1e0f4dc9b7e48390532b1b2a2b68a9017fdfb3e61134206a88f17b0b4435160e67419d66468628840302047c435bb50067306502304fb204302f88acae7b851f9fd02017bc1aa563c2ea3501ac9a2603794eb20c37ca8801bfbd0bae600a32be3b98c2fccd0231009bfa2b456dc51b67b4cbaabbd617d428b3de34035139b7338294812543bbc144f4f856bab86c76a128b49cbab97dd51c0302047c435bb500673065023100e9f69b02eb4fea26870acedcf355340097480b798f9d2c0ae7d2590711b7a547ef5cf9976cade7c5aac0018fb932234d02301a00d53fe88ea1813f7c3be75bb9f77014ee8b882b2afcc6df2366e7d6ca12b6a8c31a49e3d5a65016578df7144a0e1f0302047c435bb500683066023100b56b5923ec50389e894f45026f156aaa286dd26e426913ffeb8c7ed724b3ad590890cb2f20380241b80606beb8e5b1c0023100ea2042bd922e85587cc3303d844064e90c08a07b3709cc2057a9b865a4aaae130d3f9919f3723a54cd6c71e61fa37ad70302047c435bb500683066023100977b098ab9ebb60f21bdcbe94ed51ab3959f80c1e4fd3faf4b7da2789fab2745fe488a2d19e3627aa73663e1f21a09dc023100b9343450b98ade4c6143121136ecd4db8868070b8cb431d5e6e9915afc40a0fb2386551f47af8c759f3e6844687bc3640302047c435bb50066306402301fd3790251e387977208ccf4b59092c5e8dfad595457d0590c743e19099354145fb5ad4935ec178800ab0dd1824d1312023024559bc7f53c604d38cfd1ab7ed12275b5aa434e35d86ad04311151bbc5a30243c423fd442dbe85c2ff1e5c5429327450302047c435bb500673065023100e5630ed2f7248c8e2fea23907fda94fc21e0b1fa1e59561ed9af146de169676d3fe4cca7e6e747522d152a20cde4b1a202301b0931f00350fd9ab7848eb331be45430f2ccec4f16c95159454bb2d68cade6ddc71b991ef7186b17de78f8d5cdf19c80302047c435bb50067306502305ba0d95a2c2396be6741d8232cadbe1a7608d59f7d159e801b8750f3e97814b750c7d63ded8e210e654a406ad94df016023100c9201ef1ccefd8d5850d6bb95600f7e7b891111409ff575bc68cf3a0371f817a1e9e00fe2b5b182b50e72c46ad62c4110302047c435bb50066306402304aeab848b297cfa8ee7ea17f087dc3e18954f2591750b50470e9aba28d05165dc499bdb56274c11e419f5711f54e39a7023055b82aa841f96446acf1e6d0caadb48af81a2358f6e6ed2e052b103fe1440816e44e29275a4a7e3501fc98094fdcf60c0302047c435bb500673065023019b753c4587f210fd7673b537df5503bf989d037e8552368a13992c37db79453125e9b5303a5f496307e479e1bd30d2e023100b6cf0852b2ebd96030b8615e111e28e27abe989ae76bc9550dc99a41b5080ed649e3cb13529accaadfc83ba23ee535e30302047c435bb50066306402305e29e338b5018f841fa738a57097d8229be877c704dccf9e85a25a82ae061e1a26077654b46053b7238ae9d47d12562702304adadc3b8d07f35bbb8983afe6c19709934cb7293d02c67d187e56e5a9553ce69e531b4b7a89561e76d78d334adae89d0302047c435bb50067306502300a6459f0d36a6d58c82906d02677a976d46782d405a1757cdcf46ba01156ebccbb3fcd4687f3794ee27460f1743ff82c0231009fda23489b12f28a1a5227036c133cda9a8028d9120562e563b1391cf699628cfe95f2486a3a07b7cc85718edee8d5870302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023065237756f190742f5d4f8b6aa3af13c871df52759301d6cd8439dab9f22371ff93a8818d008d6f76a49de3cd207b7477023032c6a9e26cdfcdbe22a822af373c9c710de64c221fcfe068c4ff479749d444ed8a131a1945cc4ba0dbd2beb86f2048fc0302047c435bb500673065023100a324dc46a08f79210707c9b1c2a6dfbd584892d803752fac29101d97eea5cb537b39830e487b73b321e52807be1e9bf702304e2d1ea1fe96b1c7e79eb930bfa4d2b882173d36ae043b0e9d9ffc8cbbf279fc083369f55d19fbfa109d3f162cd8a1150302047c435bb500673065023100d421185e71beffe5cbbec3f22a5a6dcc98f10dc8ed7496c66b45e90956b76f2e2fa48a3a90f7ede06bb537e92c37ed7602306916476e627e37ed0c08dab8c39b3845258009b3dbf11e74ae8a64dcd08e09a0c6a7ba2890d6db747b7c4cee05b196a90302047c435bb500683066023100a159681fe12af4774a7602a37d57cf8da2066754c4d93505bb853988f535e338f88054c3994d01e52281398190a1b187023100e5c1cfff50c1651b1a13869592a1c9799676d6b687f431048f80065b44a42e653ea02dfc28130068c2d872b10600c23e0302047c435bb50067306502310097249548a01aa6c79daa54c6274453dea8e378f12c620633547ac0da1c28478c2989848a76a1bf3d34d05161bb71c4ce02303c4df0892219f5453bcfc41664c7227db421f39ac96759d50244325f0d9a09e9c3f456f25518a5defa89a4c732cc0df90302047c435bb50068306602310084c8bc1ad3ecf1ab24a96cd591d53bb5b856d15cc377bc9f630b1a1e1018b6feae9271095cb6b4c238d7528ee0017e86023100a7959cf125ac9242dcbc6993f8dc53c612efb4e54a90f4d2120ab5bc659217b3e16442823425a5bfdda12d35adbd41780302047c435bb50066306402307766bc7fd64f554b2017476528888ea19e4000cb04890a08916528bdc8b34d5b0bedf1f7863164e22168d34a97967259023079f3e493987327ef9c73f9010f612ba7efb02d7eb67e198d2b838d9c3737fb55befbbc22e9e2d1db35b3c57e2b9515950302047c435bb500673065023070e4d716b1d3eb5e6eca1c9a289ec25719a9a7f9bf72a6075507051f54c11a2276efb75e004f60aef412e917d74434a9023100fdf49bad1e2e68ab3bf7a538e2dd274f8af1e26d6aab6e71e7ef6bc927d218f5f55a7c990391fb788ed46849715662ea0302047c435bb500673065023035e56794e4c9c9b5ef50e830a76031b084222e9857644d8b1009276f69a54389f21a305bc6519fc23a00159b4f9d8832023100a3c5219a6da6dfc42c9d896a98d61c792fe67e9f32b6536c22a726b55c300ca291bdefded4f4d6121b088fc548ed19390302047c435bb50066306402306a96afabda7ddb90d83d1e8cb0071c630e8a5f3898c8803d3de69b338d40799ebd6999b902ee7d3d3904d8d9a0c1586e02305c417171707e0807b8a6110523315b0372b80edad3145312da0a72272351043bdad8ff6ca16b400910881dfcb2a77fc10302047c435bb5006730650231008a66dc603ab8486088a67b9cc02928cf3b9d1324514a4be8b02873058fcb8d9672deb133e74081c1445b4dba7b1043900230676d7e42c4e85eeedeac6faa69f616d165aa8ada285af50d60d1d93e4fb1f98ad01fe76f15690f110672968a95d222e80302047c435bb500663064023022693390c245e145b7fe98f7bd6fb1012e2f40fae840d2175e8535d2764140657d4b0cbd466acfaeeb51902be0c7146102304e6cc1841d3f169b353b1d309147f05f03aa035eda4220ed40f6784422915cd97b9fc2f9973565253769dc3950335afd0302047c435bb5006830660231009a517be101592d8efd59d15fde65eab6213d59acfbecf1a21fe77bc8693ebef32042279024f102b53417a0daf8d34929023100db427679f1a737ac74782ba55959f9e9331f00b6d03cc3a13832fb980dd963a6577f9867f0e4e44f86155984b89eba7f0302047c435bb500683066023100f61c6315785aaaa5f8d57889409f8f9ca3a564303b0dd7349508598a9ae21bc9496eaa86da00818f1c902dcc9c5cf3d3023100b62306da887b55d1e866d097a80aa33a78e40b6348323fbd1f137f8bb2105392a5f18ec6f3e8f9cb8b571a9fd2b6e85c0302047c435bb500683066023100f7d941bf5b12d4d35477d87de089d1d4ee36ed2381ba1eae755a491f2e1e21f1e42e3a61f234588bc2dc2a4ba80cf30a023100e1f59f5e6b38d05263257bb66ceca4e7d20c85333f13cd7f91a1185c4b33471d6bfdc5a1e468b4755f98cdb2cdd993310302047c435bb500683066023100baaad4aedd307cc569df8dd0fe6e965ed528c09ee3871bd25318de03b0efbff3421fb0d5fb6d0ae4e3012ceb7c3c10db023100cfbdc639786252f907ab9da770ebd33670b86c39ca1f0dab372568cbbb9b2337bf51e8fd917a70728e61a0df675678630302047c435bb50067306502307fe66c20d1af24dbc830df4f8a774c2adc3a5785be109c4434798f93b78c2906a0cad525216fef29e1db9d0cd1b7c81e023100a134b4b2c5517f9e48cabb2c220d73b96abdd6cd9b0913da830c51bfd9ec70e310713b7b3f8b8c97b6441e7588edcc4e0302047c435bb5006630640230617c096fbc1219578a313bcd92d2774c0a308a8209563fcb11faa7cdc4d33f8640fe4c3dd8eab3840847491207348e1902300a63d61307ae0750fef2da041f8c13b33a9351bb3b5631c0176a68a89423ff61ae3d23f3bd38b89e1c676914b1e6dcd60302047c435bb5006730650231009003275e9bba4de9dd373078a44ecda90380b359475a0439082aaa660bc869aff1627157dba6dd0bedd48880d945d00b023076024dc3699909d86f5a64e6b787311ed7c67c1aac511d0e8b64ccaf45ef6feea008929381979871ee3c946adb8cf3ad0302047c435bb5006730650230537013014f8fb6b94d1d39f37a7fbe9bf2cd92e955ed4835fabb724e56d35b733fb464ad546df338a90a2951848ee461023100d097bc87c7aa962006f4f29612e9177b0392612dd100de7fb8841ed17400b97e05f24300b4d9d646e6e5ac822179d4f50302047c435bb500683066023100887e775bd0f6a42b1398f7b06b2987ed13934945f81f696e45f6364450778be73392c97b5c11fa2f457f1d85eaa2b5a4023100f4af535ec0bb47ea566bbef8b7417c6b6b130c2702f0762031ac21021ed752cb3111824d3832db9b634e801b888f87540302047c435bb50066306402304f5214f020877389e51c88f3f8e71f4e86e56672079f72794b3762fff7a14550c5cbb1f852dc30349f3250ca83b2ccf30230653ee609365d14c2f960d58eadab545b0cb4214be345d16439c317c1592f0f4e9218f9c70a149232500ff7190c015be30302047c435bb50067306502304641052d89d8ca2eb6a7a665926dd8d54e1bdefeceb000eeafd051a1db9a8046a24fb85a0971cbfd5ebe992c6ba378540231008d8ed2ca9d915d897695794dee9b21aa26c140cee9f458f6b5b5b898156884c2aed7143e8e5dc1c1bccdd3bffdf5d2150302047c435bb500683066023100b2edac2ca71c46e6897e75b491445749721c58571c83addb92c1c271772a889e267dd48e1788ba75cd1cadb9d6d4c6ec02310099b7504df6796da8e211445d9ddb2e318519f687481f3a3bcde09e359a8b8efafdf8f077c6cf4b3827ce9aca35d961be0302047c435bb500683066023100fc8d709f32bfbe846a0051f0f6b5bdf12f30d5d6e77805def4e7ccee28c9b0af06b0a15e5bcdcb7f691f1af80c2dfc64023100a68a3821e8df8ed344fd1dac3fd7f4a8c14914f2095d5d29604abd79f8f1e615b3c742dd518cc4ba0487ff29e97c27d60302047c435bb500673065023035be5c131257be5b07f40c286c9aec748fa154db9a7bdad8f95c7357410d0adac9c345fbf18f4712d297d7739855cca9023100c4fba418d7f764b3f3e70a6086679857aa91e057cdff731089a5a72720aa3c9ef74d044fbaf522bcb50cc44041a342c70302047c435bb500673065023100b0730b57ae9439da5442d7dbfc80e9699e24aa90683ecc32e7f3042be57c9d4bca5b9854d1714ba2ba3334d72aa3d15b023065826a400061f56768c7d226d218120e00460b6ebacbfab856e19dabb46afed3dc1d831d80936ec757aad0ec8145e7900302047c435bb5006630640230207f8c1d65940f4595562b90f74680098526fc0e350a1ea7cf72e427535db68eb98b212d5afa40aea6dbfb7d82e006af0230113bca5ca95c1bc2c8d35a8a05985149db3751c7a9741631de494f57983523b89ffa13c5d0576e9f8c39fe2e1c03a6980302047c435bb500673065023100cc0c1a0211ff6c4295f5f36e5450a4f85082ed6a11d9022312bb661b1b4743e71ef0032afe6abf80ef6f97967bf9502402303588a20cecdf20152dbc7e1db7f15ad66cf1bf93cd5583c6827cd94c5e68d124be1d61ae6524362a525fa1e3d838daf40302047c435bb500673065023100d3637fa2891902d32def5643c87a9fac1c7cb959270e23c1cde4d0fb67510f230f0defae472274c22b2d88d64ea5a1940230187e114769c159abb39ef63e6d291764b95261b42a785007d541015a2d1495265299abb7e0a266a8c5fc06371164c7220302047c435bb500683066023100a2f425a59068501a87808f7d8cb9faf09ad60770ac1a937fce305911aaba426edb3624a213b50349f1b3c3cdd50e4d340231009ddcaec9d3da6651a999068d336b1cdf6ad072d31ff78ce7896f13c64e70270a99b219ed182f8b0be20cb87cdc96b8260302047c435bb500673065023100ab3483811657cd17b748602efbbc9846b14966528fdd6572d530a1e88ddaae887b53e6e739b592b249c89c0d6a2c788902301f1d56dde1e94508771edb40724c255a4314168a1b002755da0e68c5a6d41ff4b1dcf3cc4abf19244ef4de08fb3dca370302047c435bb500663064023034177ccc623258ff908125e0e08f355127430ca0a60e32da97dc494c438dcd58da98df36794f2cdf29ceb3fb6ad235140230226298c55dd22be2928560ba56abc7c127da7295fb2fadc0961dda09bd19760986b46340685eb1ea8117f0e9c5c1b2440302047c435bb500683066023100914d5013bfe17e17fd9eddcf976a23639df1ff807eebc4228ed5325bb708166d0af01075a8ccd21e4ba1f692956a08d3023100b56a39a08bbb195c43d305e0f3fd0e71ffa3d485958c7739384e5c271a9ebfbb010b7dd82b5fefd99e2f95df9206eadf0302047c435bb50066306402302d441182ed0769b23572291b6477aa23591aadfd5b2174f9a66810d2bc863b7433b50440fabc164585537ab7d965ae7b0230289369ca97265f9df62b7de3b4941d9ac83031750c59d2db2dd57fd54a080e37d7a4332b01ea453ed331d40cb16233cf0302047c435bb500683066023100eb4ebc2cf5212b20d3530644c872a10829a8adaba37a51bf79b3fe6961f331c8a63e5c2e3b3f7b670ef41194e395e74c023100eb3ade898326db05da3baf3fe73fc0a5f16919db094fc084cc8f1b0316eada732c5b85d2bbd944676810c06562b41e9a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a3fa14eb2cf9f3d0e740dc61109ea29448b1215e382ad8915ace7953a22e97070967fe3eb56e856d4c91843735079446023100a7d2e5256f22f7327ae90c3a82a28cea90f8e11efcc08b916f8e18ffee9053ee82afdcb31b104a725c073f90b97d5f500302047c435bb500673065023009bc8a6c631b54e0ca8f03e0411e28565851120af27715d4309fd25238124aadb871da01f475b8244f749b970e01d134023100949f444877631ea2dedd086f80b85366610225c4837b13b05c8b4791bab724b3a751f826a28ca1bb7b1339f2a464e67e0302047c435bb500673065023064de4fe54191656a920580d48b5639dbcde74444e09b87868f9e48c21fe88a85b3d81e26b076daa08f617c165a1831ba023100a763520433df4813493c519f4d1f0515a663e01cb40a02c41c94ee4f525d228acb4b2f813b4dd45891639062dd89d6c40302047c435bb50066306402300fbdc05d397f931c22a933de996dca8b8a85e8008364450aa2237edb56b9d376c16c611438113fec78020ad7aed68078023051042c7c40f6df0defe3d2782d2c06742116065e13bc1838fa2c0e2e03ae9c9338e51564ed7d02eb48b099f653f7c9720302047c435bb500663064023015869bb153a20b281e8989cbb418a17bdcc160cdc3a6b0b7160ce062d35f45f3f9a9ba276a92c0e68d27125489e9ad9802303729ac9ae6af441e8a02cc67eed9718e609b4324376144382178c33c289123233896e9c85eab9392c52ceb3e5a10a3ce0302047c435bb50066306402301be6b2d317fe8682e5d61c9f435e0185a463428381a95cf87ca8af0c007f97c19bde7ab856411b8f3603873579bfde6f02303a500554ebc449055a2eba8b5f96b2e919e7159ab3e1e9a0604988f2009e75e9619d08cc13c2d83779da30a9821f13d40302047c435bb50066306402301f5b86f7cb1d436a2840c87bd3413c069c5889b55fb40c11d09f5df0acf2532b338f3c15bc7b74b0cb6460f164dbdbd602305f27d0c384b71c0e2742122bfbdb8b615008519c0bd1fc277b302fa0db28755940cd433cc2148d575bb3611dedef4d880302047c435bb500683066023100c703d00d0a7df3b012da47c6978e0d276131ef24cdb0ca9ace930c1737b2ad9c701b10320eb72d513bab59f0ee69b399023100eb865a68c71e9e8a5f39e55703162780d38847547170862ce3d6e18d311ca06dbe6d7db2773339176c4e26d2c9d1ab290302047c435bb500673065023100ac310f5992fd14eddcc6c34856252c9316c087085f4d1eddb843fda68437d865a7ff9482a4575916dde150bb1a5f72d50230146c6992af42a356abebda115c0a904b953891be0171455bfde2cb5b0396ac3bd7ba193432404ded170c724d0835b2270302047c435bb500663064023046c525e94c105b32b01ed4cc67aca598f015b59ed7d6a50f28697f18614465daa04625f82fa4b2cc44bbd1bbc5f3dc5f0230046c5a8d49dab65037504f02edbcb39d7ebed47949e3155e87b61d2547c8964a15b0cbccc6d1d0df2f758b74782ea3fb0302047c435bb5006730650230419b47f20239bde88d8604862a8e0580d09a6e07c0aa906b757208c7409d0e435d8dcd99d3332e660b002110aa090bce023100fa66b91d7183ae5712d8ee72bedb77281b64d7d4959ab785b31c29ffaf81ad6e20fa0754053100980bb74a842dd9a7f40302047c435bb50066306402304688080d660e98c96a4a0ba9056f0fa9c6946b4053b2a8884c16b7cf82ee7d59b28365ec13fc76673a647ec6ae363ec1023004690598a0855b9a7030a4497de301532fe3c55dd978ab31227ba36a567660876fabc76e56dffbdfb987e79015cfb0860302047c435bb500683066023100e5a0aaa0049c0ca86eb785b822c31372d7089faaa272e5e6fc0dd98d5583a4760b60df191493cecde76dccfffbf655e4023100c7c692b9b57a0ce62bc1f8e22af0bff9cdf83eb1e5d8f2cd2925735ea66dc0eb584cdeb183ca330fd0602918d4d595040302047c435bb5006830660231008548ad860e409c204b5089c2f90fbba691433e9e4fc23176dddbc5af7368bbd035c78c9aa049c03505f97b42d381f1bf023100fae4ebee0409ad184871f7afa8519d89f31ce0bcbd13d027ad6d32029f6be24ffdf037e9899eb43b5c2065015008f7f00302047c435bb50066306402300236b1ada5104f2bfbcde2eb1cac54c3d473ecdd9dcf3285022d385250c1e36fcac533eeb62b90c4338afbae27f0bc2a02303d59b3a665cb85db47053922ff01eb58b76ed18de21d003804cecdc909171308b0e3c6cbe9a15651dd880da7063ed0530302047c435bb500663064023032ea11353ec462e9e16a8c238b03ac123aad690349a4bfbfb8348281b5585fb535bbe959752a6ddc4268b413f8996cf0023053f92f1c3c225e36d272b421c5dd0da768c25bd82e17ef768199b46ea3542f4324a0e6830932be320ad4fcd8b75d9c1e0302047c435bb50066306402303b629c4c316a440ce574bb319dbc53710da741b91a774da332af16bad9beb7fee097261870416808a1094ca13e3e90ce023040de7ae9d12792b97e4ba03db13e9cdd5de8a3506250a8467e3f54ae5bbc4c946b76045ca11b3e5c959b6fbe679e2aaf0302047c435bb5006630640230586a15a820fe03f4016eb308607878c5e32cbc7a0962c1d4deda27d89bd0186ef4d4920053022c404215d459a33a034e023009aea959156ba2af3f7ec345ccab3e9272b71109ff359c87770fa6471faaad8913da87c2cf93cde25bf0ded64d828bbe0302047c435bb500683066023100ef677c8797a91bdcccac9f0b8212c8447213f955c669eeca27e10049f4ae5dbd56ae1e0c230bd402dacd967856f5d05c023100ad31b23f5c092b8f23f740662b87de30a452fa41a0a1cc52c91010e0e5954889dc7c4a4ee05922ee2f47f050d0a4c4650302047c435bb50067306502305ecea4af7d7fd399124baf396541916c7696a917dcb0c94fc3849021ef3517f6fa6efbf7286703956a259f90e9200a28023100f1f92925874c7e7feee6b36b18283fc7870546c77fcc82c5d78e97a5c86635db54d02c6df12f1e9479da0441b28ba6a70302047c435bb5006630640230260cdabe5ca21e153d2e9a1ecc8fb85103da9192f15c5db6023e1286195e90a23a7c89f7cefc976f52a6344fba79d6d502307a1823edb981034ef7e151464bbd1d86b3781fe8b8c32ebeb5075727faf94b4536e7a6f6082cf34ab8fbb05906d38b140302047c435bb500683066023100eb30779303b8f63116df485b190e358a7e036f79199652e664a335d49432334ecd73fb10bd9e58aa7535d732f2da84bb0231009013d94b85a73825964c88a9ab263cf18ac180db0a28cb3736528822583abc1be7673f3119d2dfaa7d888f8f3e1a20920302047c435bb50067306502304852985534ffda47b95254f0638b7c882dda636f3f33334be272fc5b4addba774fd274465c49f125eb9fd8dc5792762d02310088ac5c4d9668816b22723bd701c840f78db27f46fc070ac70d8e947fb8c0339963384ef45b4608eceb006bf6b9d1e9ef0302047c435bb50067306502304194fb20ca343718a2ba2888ffaf6415f3a54ff1ff4b1527f8ee880df761037bd38441a40cc045d0ede74e6d26c3106f023100a6b93c8ece5c987d078baff3d55feaf3d03cffb2959734dc658423bed39c3a31eaf4277b6920e53220caa19f3cb8e74a0302047c435bb500673065023100d1fe3ef3737482e5856469b4480d303761100bcdcd38bd5e46b2b743e30db63cb950258d86c936f34060b1ece1d187a6023052bb96b53c02f43c3ae09bdc4f9c6b459b27fd7a21a5e867fbad95785fbf61c2ecfd73cb34138745910b830374a89bf20302047c435bb5006730650231009a27f345b48e627d09fb51a0df3c61bfa621293d4e5e166d9aa54a4e9df78764d333d1f0e4e931edae1a3a9da6bf184f023059e05922bbbec275f52f2be2d104e718a9e0eabfaf09bf1ed4e87008b4d1a0ca5186ea8f65fa1cf0bcfec058992c8f1f0302047c435bb50067306502306cfb10b994a38ea46098bbaca36e6f054f7934b051a96b5e363346bb00ff19bbb6e7c9dcee223a31d82fc984d07f20800231009534b3f4aad4917f80f46331cd2f397d2674de37e66004e284f8cdf63cddb5e3249985ee8402bfca45217405c114d9f40302047c435bb500663064023036d6054db927423d0e0c290957a5bff5444af1d6fa9f3861c58ff47a9d40807af891b9b18a66883da597bed789f40d3f02307513f15010084e687226b77aa3d7e2d4f9acb7cd2e7cf26a2b03cfa86cf9d683d487c431cc6bc4b4c067478240ea17eb0302047c435bb500673065023100c01080509a96673d714dd597f916392a4e2b5a8fcd8482430571da6a3bf4bf9e8c6eee8054cbd0cb9473ac840f6f60b40230508a1f47fb9e34367687b211aee3c92dc737ce5af9a87e6ba2cfd0a755102a278757a44a30bb494fd2a1046a3004b13b0302047c435bb500673065023100a7d5298205061d92d0fc0c187a6d26b81874077bc08514768d5ac19e154c934b505efda528aa50adee4601be7ebe520002301ea207608ca9f06065ee4ae1ac2af32a08bc195ac7bcd2a49c37b977d61486eaf21e452fdb6fdbd1b552c2787384ae4c0302047c435bb500683066023100b98da921aad951b83d06ded00e5dd352b4d631dc0424a3860a27c443bad6dec6bdf5135d796473f34d5fb2adb2e9faca023100f7adde62b880ea75ad45edd48fad3c3f5518a97e75293601d2809b1deaea76f193404c3e86374e3aa80a8726503f7a3f0302047c435bb5006830660231008f642d02032749587df9e7bd7f3d5c295d0879033259e3e8370a1e59279acb337b1fcdbedf162f7215330bc61791c18902310081338156c57d0f4cea8442a8de0bf13f0fff6a814c14d3e6cea924dd77277d54232f9ab0f00252af33b20fb86d4b8a6e0302047c435bb500673065023100e5c11bca37615191611f1d672f7125a23a8f32bab5f7def763c08132b1570e1672a8ed4ca7ee85475fb03d947c96303002303149136da198036353385d415be9d72d3abba7031fe0e54d8b83a1452bc9c0f0928046ae8a2cdb8c714ce98d5f4a51340302047c435bb500683066023100ddcd1403c5d41206124d7c98ee1088e9c3af31c8e28a48e69e26c9a8eeb3af629cb7d0e9febaf86b385f419c8d1205e002310084cfba5674a4c028e09cd4a856910cc67f708e9cde45d736d7f3e2303dd15175aa6234e2ed331a72a2595b77098afa360302047c435bb500683066023100e3d112ae4b7178cf294bd92e751542099c013773b80612e7d7b0fd1f170a00a0993902e5f8688d01cc12594a0ed8e473023100a271865b5b2b462f33ce8eda78c2a890f7bdf29ef09a376bfcfebc18bd5161d480ec195b08ad64c3188639b010f5a2160302047c435bb500683066023100e179bf59e570979df313cf2168dbf0a0e44f55a773dd24e59c7fc311cdd938dbac9388f56b065878a6930915deb1996d023100b58d1155a838d1b14fad7a907cf53f78942f500bec6d301cffefff72d56d8e38ce785449bce72ca23b3a57e720d097930302047c435bb5006830660231009c529c03cf6a07468d72182cfc1b27c8174a79f94e4335ad120fae5193a78edbc4a56f46aece8658d8a5f45690ed27a10231008946c99db980cb16c78a26f3ad7c1072639f211657ad4ccd4771c132e807b39199648d594472ab831a6cc82fee70e5470302047c435bb500673065023100f9834f69fe98e98c32f462830ffe0520dbda4e3ed89878f5ec0e63e1a41c135e693c304af4c204daefefa6ffb8ffb2f102307f2ef0b2b36507ee40ac0c7bd15708649f53a76a0c64cd194a172fdb634f5d0e9fc59d666a06d5da0fdbf12c6f7fffd10302047c435bb500673065023100d64aa7159811e5eaf2c529f24655e31251ff0324e5ce5d99c266d6465463eb79b36aa467776f297186b7e204e54fb95602306e7d00d164427e812ddf1f8fe3053552c5b989cb364db733bcbe0dfecabf1ec8e5cf1a1f5cee4ff1f10cdae91243839c0302047c435bb500673065023100ea45c27e96a39f77d62bbb467b00f644c727681bec7b48ecec0ac40a11b3dd5b7df8fc6d822e644fdd44d7178b170edc0230411b222e95ae4676bfca903abe5aeae1d1dbc7590de137051b06fc85e837af901713cb427abb53a23653d0c13dfb7df90302047c435bb5006630640230154eb98ff005c138beaed6418958b87d6af6b20e9f38b4197e1d1bf7a8a53ed6fcfef74d9ba2ed61b1bbb2d828d332800230734f117aa7a33a6cea781c99c383f9fe629bf45b360166202db5b456009132d5530417263405a3d9218bed099078e8d10302047c435bb500683066023100b1ea77f009505557463fe8602eb8dc8d7fb524cdd278c547e2d2fa42656b3701fdb23156b841956d6ffc8fa3b320ce330231008c7201a17319a461001a6f9ec3ee0fcf436af9369f97a645074bf1fa9575c083fda1f9a0cf6d04a0eeebebd00c6505120302047c435bb500673065023100f5f2478287511466d7da92a9ff7499aa51720216df2740778e9d674a4c1832f6ba88a71c98d649f99f2da1199f722f8d02307cbf0b3fbc56e3f4f852949aff32fc3ef9116fb12d40b430f58817effab696131c89edade0db519a1365a98399c519d80302047c435bb50066306402305563cdb888dfa22bc5f745bc55e7a21e37f0bf1710ddde785fb60a5968f89a41c92b5408ea7f2f676461e8960de50e45023042b2a909c4b0492af81069f49ef9e8ae0e236504baea543a896fece8f0afdd05c3bfbc84610103a1ac83623181626dbd0302047c435bb500673065023100b2365eaa9dae90d2ae8df1b5f0bdf9afe8e4ed262e5eb1a550360d7397c59a0454d109712e4c72a551bb7b67bf6992970230667589d7075fcf99abc39b34842ea7ad554841fc5699281e23bc9291228e4e2dbe910d0e764cde28d13f7bde84f317bb0302047c435bb500673065023100bfa009adeb5d0c51afbcc217fa2c6db758751db22e0deb3b1e5fc2a35438c93b2a61ca05141f200c717734015ba7fac0023020da797a926edae41421ee99033acc0c07a97c4cd90a885547fbca0608d9b8c1f181b6d887ff98c3a589e99bed7f1ade0302047c435bb500683066023100a3b4c231b1e45b172ddea9bd9b54cee1846f96b194538a892a0c4c0fc93386252ba71b8dcd5d71a075b32b2c8b10677a0231009b0cf4d0c008a9d934cb1174b7534ba0cef4aa4537fea3ed07a7bdc735750f7fe068d60947cc8696bdd544c997a5ae2b0302047c435bb50066306402303e7499ae426fb811ff335437cf610a206f5b12b78a90fd6d75e9327a982545611b00b26e13b5f28b6fe20a4a7bcf389c023076839cb95db9477a0808fae6303a7c04d64339c9cdb77ccf7ce429a7a1bfda4e50223de0cee4b34cf35f5e51cdf5b2620302047c435bb500683066023100d8d1af8ae50a094db0e59b5596b684bb638a9989da36c8d4f31a0ce713d008797dc105a98f78ae33d55bdff167fa901a023100a9feaae6952a09eeb00f25e2cee35015fda6a41e7f797f1bfd7d81fea646adbc3131ad042b14040a4efc89ea2589981c0302047c435bb500673065023100d0858a7cac223f377d28f278b3b1abc67156b1d5968cb8a02d5a5c590673d98a45b53ab061bbc6d1478e80088da7586002304682ec99f75139b7aa4fe294a86ab5215fd96dadb90ccd4dc508a9370224caf6139d26a2394ee079c07aaa902d3f63850302047c435bb50068306602310081c4ed855e58fe239e58c1548d1e87011db2897dfa659a6ca85e83ca9f704442a88307381df4d853f96aab58df961b0b023100a284dae0675e175620fc9cf0a6c289018b37934288cd8d1be37d6a2ba7784489a9fa233b9dbd3df76ecff382d6f8d1240302047c435bb5006730650231009589c79e8042e8f4d829fe18e0b1ef634c1e5560050d3788f8117bb3099c334b98b9e39974094bb746cb6cb6e85047aa023045154f2cb38103f824944057a5a23921cead35e3e3645e8212ee6765149996ea4f0bbabe1d034e78cdde20b0005a08a10302047c435bb5006630640230364b85e6fc288955ce66ecefbc8624fdc4f5c54ba85462276a7b3f316f3cea98fb3ded6d15811fc6f9fd302040365a7f02300cbd91a4494b8385db9e513835f9fcd9832f2c352c0a9297db6a504a168d98e53f0a357d7c512e766ca15196f79cab880302047c435bb500673065023023211207b77447f8115d6e09483f28ff5705a670ac6eb8449fa09c4a7a502a2139eeeea07a58adc42b43923495f1073b023100ab5933b26cad133b7d2ed715ab9d766d8923feb22c079fc43a45cda823f3f564418ff8682a88239c8757bb8893e7849b0302047c435bb500673065023100cc628543ed53e038ef2165ae06dee50ac4f0eaacb2917fb0c774e679488114a84958be09b817d5971bf73f9f5b3c8ff30230251742d0775f4171ae12d53c35751859015cc20f7a2b5c4c5f598d32108837f186e97a4d9869f7dd0fa6ece0d75850960302047c435bb5006730650230038250dd9c452854056f658aa7691945ceda6c5740bfd0e1f0a0828f84f94a88c3cc69299629e0cd08f61a3076deef3a023100ce01fe85b071a1ac21540a8dcecea9b90e20c0bc5fb9f93acfa80a36f315735a96d7f10f9b487d3ccf2b0f6ef7cec4180302047c435bb500663064023025b68c98d40ec02d5e6749d9a0bb98edb012fe4488c4baae3ac71267cd4c0307e70bf261a6c563dd8d9f8b0a9c06401f023005d1c1a039b1be9032d7f5a8c7ead760b6a9750d4e5bc99722aabdff98b0b540ba209f0ef3639fd41d0d75fc89efd3570302047c435bb50067306502304c30eddf34a155ada655ec1617ad4889da4201c5fc544e9fd095e28f3e25554a2962028794441f31eee2ac590c533b25023100f22eb9a42f8d74d240e60d90e75a1d6d21d11debbf05f5b94db8ee51c2ce3706d7efa574df5e70ee5b714055e3afc8340302047c435bb5006630640230392fddaeabbd70755c3170f150acc98077b646bebba758a07db50d86df791ddbd6b0cba325691fe573d7734f8ce23b28023030bbe9da624cf5f00ab75fa129206654a7351a84cebbcc4e0433343b67079d7e1e3b1a3efea94cc5676e254273ea8c480302047c435bb50067306502307e781d41273491497802533b652833097444c33319e5f547135bea65e92d94e99944ffa0527e9ad413305a01da0736fa023100b035abe8c1fa67e19ef8f7d085e7885daf7092b702a7246df13874bbafa2ef9321adda05e0f1e8e0fa9cb103e111e0e70302047c435bb500673065023100e5598d386b771438cafc56bb6b8013bd807430fc230deea00c1c76da082820d1f410e640d64ab37863857f2dfc7cf8430230120ee9fd609becfd71e1e84ac35943d1607173e4b5fc90b205be63697e30895e1aaef8160d263c118d3a55040424a4d90302047c435bb50068306602310096296c3d8c65699c60a65cf09773d050bdd69c62764ce239f39b89af5c6d1d16418514f144781f3a479190f3b1c8916f023100ab698d8c6c1667f6c2ee273cbd2180b1756758dc626c958a9a10b56cb3e4dea863b75eae69c9838972d8fc661d8279cb0302047c435bb50066306402301e7aae37845498488193ba7f7a8ff7148e3b8166e0ed3cced9e7ebf37cea27cb4ab20dbc31988d1c9fd7e50d02e0bbb90230441c475a865d017302a4c1c99574c23a250c68d46cf1a49370ec049d935e86074bff65f0aa80f93b85f267f813ad9e530302047c435bb50067306502306157bad3822f0520bab6a92d83bbdd1aa839bf2ff999903c9daa601b67aa4ee52afce6868ec9b40776fe6c8381f3598e023100e7873856add409c92922a581d84d4ddd3a7d2d34852e3b0632a6565047b5bde30b8f43e42a6b7efdfd25d8746b378c020302047c435bb500683066023100f2db252d2d36cb17e9ebb2d6a6f8abc02ae9bac54ea0ba3421cb0e87165373c7e8ba2b523513499e10851e88c856dc85023100942e3f2762b42ff664ed42ed195571f61517bb55bb178b96763c518a424552520a27da94e61484c7a9d8f366860d91320302047c435bb5006730650231008984f8b72aafa3a7ed6955c4b7db73a4f1ddefba109f9e9d23ee3a1c1ca5bc79043e98b51de77a5e03f17f9b4bebdedf02302f8cd55c2fd0f3e45f2eab131999f0df60d1382b47ba9345abaa2a5f053c5bb643d1eecc39debe1283d52f1ceb73532c0302047c435bb500683066023100ecf9d10d3d3b2032957750fa50f84c9dfd1cd0490f85272597958644594b17ccd7c152cd339b4a1dd5915af8a45a2dcd023100fdb75c97845f2439ff2c28c6ebcb33151f22b597561391152eeff632a87938a00732f92810e27eacf554a53f064d3c5a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e701f65b612502fa2631bebcb5bf4d3c46169ad6eaed0e144f0b3fd9981b53cc8f8ea0a73641ec14770c53baf43ef605023039002b50060cec9c7951aa754a7d84ea8443faece5147e13e4a84527ed64aaee823bb29ab1aaef06097b6afc2cf1dc6f0302047c435bb500673065023036cdb4af97cf7594af9be5a61ee9c35f94cf21bb4d6d19164de26b0041b505cf70482dc18d400d512239341ecdaf7eed02310086e730a8d6d8541059d580167210b24fdf508780d65e3bdb921e15b04d59fbb5d14010a51fbc44c55bce160ff6b6e91c0302047c435bb500683066023100d8fcb69ef142f3770be15573e8b35452d55671e4120d69f9b61d2f25b874e17ff8197e3965f38fd1e065209c6325dcc70231008ef236981459c77c22f7ac0f543c7a29925540c5ce35049137d21d251a6342982934c5daf3f119fe41c1013cc9a52b410302047c435bb500683066023100b0e605bf7540beb94c5b6e52fd76d6791f42179ef99f983545fdccc2834e94961140df6575bb297a71e7bf62496ddca6023100f761e803940d62310b830e89d530993bb752b4db6d2832fdcedd888e63b01578e57907f810517b8095f543d819c1184e0302047c435bb5006730650231009a815306b3c9ea31001c21139fb5dab7b1f8b9d1d939fb960b5c812a9572ae3d825c12f81b4e9836f27a0665232b8c9a023030a0699ca183ab125bdd54a3df0320594a4b112b5da659c613849167b511c4fb9133be989015756a0ed38e32b44054720302047c435bb500683066023100d0c400acea731c27520d6c25c34ba18ec7437df615116202fa6dec7b4e9ae696dd3e0a2a376d68b07364b84917253e69023100ae102524fd999dce8f24cc3901599c905d7ae7286c73a9b5c9c56a159504071470d519b1952a94b6b799a1c03745247b0302047c435bb500673065023073970f1669323a7f8408c5f55b58ab35f188ae520fb46e7e73d825e80ef35f6faa1d49634e7e912cbb2b165425684038023100e9364e4cf334582b5abae3f1f099966afdc9994fafe5d8874641e31101b9bc92ebd504e150aa5d2b5648435329a826570302047c435bb500683066023100ce967af5e2a9c0044727b1953a5c8cffb87dbb64766612436d6da9b12895be9e266402a79b2fc95c9c239c004d36ec49023100d3a9eb2717b9e6ddfe5b965660941bec5c0e0ced671ac3186607a373a3260f2d9e7742ef79cafcc2e99ccaec6084257d0302047c435bb5006630640230182398000dab289f11c9c16f66675992d1516813c013759f5b7fdd4fc64a3161ff47be15a0a60fae1a42cbebc8fa753502301dc9d60aff5d5bc1edc5d014955a23f15c83b2750bf00a552af3778cb5337c492a58f6f40569ae0f4dc300fc4e79b0240302047c435bb5006730650231008bea4478f4f2b0de5e7a54cee45d0e55ecc2a1ad8a7d203ccb026eda68d9992a50052b69dcf268c7d4e5e96362da7db902303d100a8a3017c340bb001b738e321df6e4d1b80f578977845f14a8ae301cf97e39921a46c1633586ab0f5df963b85f690302047c435bb50067306502304011bc4e508d9a3aeb5d01280a7272ac7bc19a25ba60b9c47eed81a6fd5fc17f0b97eab3e3e4eaf15bd63ad98b723bb4023100f7f8b05bc2fb070d64fe5ddc945c961d1a68ef5aff48de2a5ceabb636c77bb1ad3d7cda78f7f5ac5cc6508f88c9f27f30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306bb0ea2df105a6c86eda15812dc1fc6c29be7de54d96bc34d19f10ac771e2fb69216a61038e13ea41aadef10ad69f58602303b73354c42c54cb3e2a002449991bd13a74cf8740337b9432b57afbc7435f5b4ca61cbfa76503caf8f255e34b86fcb060302047c435bb500663064023043850cb5c170f9f8c85ea79221d7265d1e80f5a4e71a00f4b43f028b0307dd8d4828b39a7d196f73538c4a11887a2c24023013f8c933138cc69defe62ddc5c088476c40d5fae28574d07be2d7e2fadcb61d1ad845b4f839ae45913e7cbecb17cefd00302047c435bb500673065023100d507a4360a21f3841d753bc105507456fbf8cf634c400897a6c1c6a49c7578d572bf7cd6a729e68db72a6087cfc029a402303c8fbf7d7c854f91eaca509c90a97e66c8d586dcec1199f57837b6112564db2408ee448460fa30850ebef3e346f53c060302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009063660afb788bd6d008341dd49a925320ae3173537ce734814e855e8289f1aa01441e39327b40ccc294686fa20b99b502301961c050ac48a4e14a0b80143668af5795535530556263b78a0717bcd190f924c8f5184d07ea1c578f1749528876ad4f0302047c435bb50066306402304bfd80caf30fbb9950ba3e234ee7bf0acda874013a3e4b7938d779c71e7e573aa86f63d44c9ca7d07eebb06080c3cbcc0230454a01bf110895cab90e798cfcb88d021063bfa66dac7d22ab55627faa564111da2d920370a2a42da80bbd44dade2ec00302047c435bb500673065023100c53f9ab74cb7ed89b3f67899d7bca654969f887e8702154aec99219b10c01ed5f262df87e3ac2db0634333420ddd4c960230134a29aacc76f8c8ad54c529597bc1395b8184d46fd6af2116461b926395579cdbb7eb0d4d46bbcd1b4365387830b6da0302047c435bb500683066023100c25ac3ee60a8d92347ae4b1b85b45fd73fdffecd6deea4ac3345c4987a9a7c82f13be0909c48ef198a0b4309943d1df3023100808f04705055d4b6257635f8b453628325488eab2d4df324deeb1bb352ab84615f47b5c6ce70a7d13e5abb5db937e7600302047c435bb50066306402301e60c19d143cdd9140caace3eee05f90421cc16810e88ffa6c69531918fbf5a5a97d778cd432a1411de1e19bbdbf096702302588db2cb9fc75cb2a476e7ce1290728b4b5b452d06e0b89facee08b637efe48e47a09d858bd2e93a853c6b088621a570302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b638c9545a970aaaa26739dcd61b1da4acdf1c21a201380fb55f998988f687938085de60f902ceeb3eccb03bf3c53810023038a933731ea6449b7ff45f4e7dc458591323b8e12635b944a9c3f4932d849c8d7defd852a679b8e8121dd20eb9fc7ae60302047c435bb500673065023100a405288259931da37b85857bbdd29ef0575e8363a8e7ae3a9cc9df3728cab59ccebc55d67ca71271468f1a57e4db18ca023061d5063bc20e7acf1a3d9adb1e468059ae725c91c6d1415172ef1d8aad0f9a74366c72b7c32bdbb07423435981bfded70302047c435bb50067306502302df2761d68afe5c3f48fc2a087415a2a9883d91d2fab99685ae33cbf693fdc05c987c3193f1da7208858599b795d6fe1023100f113df9a271424e005d71cfe55a60572b5d7d4606032f5453b6ba43f0d9313cbcbcb0d6e74bea3556c4831903d6bb5760302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100843d6f70d1d5eb0e7223445aca93521934e907a5c69887eb09a8c0bf96ed01e35621803d24d47120786226832872bad702303e133df5f3d41818b828d802dd8f6b4f504a0f6115ea1c5778a0cd41bf2b06501d73c112100fe079b1b912c660fe12f30302047c435bb5006730650231009f9950d3d4e312c593757d4002c353f557b1b78fc2354fd9b62732456cfab62445801c1333292c6dbd962b797084477702304baf56a68f50be215ae6ebb2752261808532527dda5ef9557336f9e473ebc51af73f0b8bf9f8b495d9158268919cd53b0302047c435bb500673065023100a0b69c1a368483069a0e220b6752b4eaf268ef20364c083f5935386eb0a170d92f8d1828dba4b3fee492bc42890a34500230669b0d712e87da0674e7a8b6cf5a348e9c9f96f7c76396cf7aced10518e6fdfe1aabbacba19f6760aee93f54c6bf4ec40302047c435bb50067306502304308889907206ce6252c8a8501493f3f302759c5a481ededbe582727ed728f6843b8c8e405c73b6bfe3015485e53354d02310083e9855318f8f94ee0f8688bd4868ea578c8e63ecb47247d80819ce3b93e0e67b0b8e9050470bd64c3fbd3a5bfda19430302047c435bb500673065023006f2a5c901e211bfc8d6ad2feeb16dae0032a857439dff941b057e39c6a64b165eebdae0d4239a90eae37fa4bc04ca8502310093695c1f98419402efb2b8a465a985549a7b7c3efe6131bba22710e3b891b4ec3b885defafff60241785c8d9f9a7077d0302047c435bb5006730650230157e667c1ca3de40de0293a9160a1da7066cdc8912bac6ec463e58abe660684e2111078151f5af3e25ff06f612b3b8e8023100f49391799b784f2107aaa144654f5475d7abdf4081cef8796e580de7c6f42a9b223893f94f25465322934565b7e316140302047c435bb500663064023039e898722ede615b98e45c729990e03a34e2ed3c352f209a19cadfde41699362311e97dd3ae21e179aedee28b46ae42202301839ea047c55274f3e90d640047ca881cf3e18ebfdfefbc2271f2a0c8aca1c367c77ed37c5aebf586ebab31227657aff0302047c435bb500673065023028e54096f30394cbfecb96be7a9bb1a7d7bd8624a5f97a41b48b105416aeadc69f16bed1ff0a9c98c881b5508fd0f137023100b9e36d5ca99c15fb44e40ef4e983a70370cc5994b090616e2697c25b9faaf63de431214ed664bc391cd6d6a4ac755c670302047c435bb5006730650230791399dfea3dbe66d474cf5183da30a0544c7014431ff835c447c21d4127febeca893119a6b9a7bf3c334c26607f5fa20231009977f94ea26aeafff31fe114b1278cfb70c3897a4ae8a58b0d2fe6db4d039c40140bec5e6407e4ec476a84e401d1b5e40302047c435bb500673065023100a3e5fb932da78ff923a31f99cc9a08cb9fa505affe3ee198c3aa2ae92db95eb1983cccf14b51f1f5c03f904708ac78a60230352c902b555657074e6bb4519ad805a1e8e2d523b9d9c3b959d13dc9e2bb7798e4e3683c12d34a3782eec8fe4dca31290302047c435bb500683066023100b15a56aea371070bf2a5a7f21842e0b4bfafc0ef28999c3330498edfde53fee452fb22615a58ca77bc64e663f2866c00023100ffe87c35616c3b0941d75950a318b6df2e4d95f20f0a66e82bf27aa1e41c7575f58af0375fe6df34549f418a5b6156ef0302047c435bb500663064023006946485086ae6b2603878be8ce8a77eef4cfedf83a7dd9e48562ccc76c509b8012a8c2e502cbe761b1ce4110ea284d9023020df80a72912cc931ec197b0fab9f69d6cfb9e7c05090553e60e49d534c1aaa13620dc40eb32dc8a1e862cedb64117fe0302047c435bb500673065023100c714a05573127948c0da132fef267dc527b90d7b7adbe77fc949198c710b773304ee033a07c977086bb87402c82e0856023044c1846471a8fbc227b5836f89c7aec1e8386a3800353e9a69150c4d3946bccb193b43ca74d70bb245d3a6ccca022d430302047c435bb500673065023100e2c09b37d5bbd8285dd38c7c1e70816ad81dded78a0bdfb34102784e3f071b381afb55c116446f750a6e0e47183ab8d0023033eddeee1112e8856c00dc6b4e2aad7add09b70ce1cb4d9828fe13f85eaed7dce06b9725b394c3e6e6a7b61553baa45e0302047c435bb500683066023100c193bdf7cbaa46319dbbea2f3b284b4cb4a5978b1ac4667a401f5df36a2ebee5ea3c4a4c78bec67d0c738f6ab7e1e1d8023100f5977fbd15ecf6efa43c4ba1ad33012e713b5550bb70c89525a353746eda420842269c27bf41a5a87146552f75a9e0eb0302047c435bb500673065023100fd7a9f54431389ffaa53f84597d7a96cd40a86d557d09b9893fb4cbcbd161e6d08ef1b0d49b6b2f29713bb9b8cc55b440230291d46873e8cbe16bf16cf1b4b18bf7fa0f4387870408aee46f2d7b91ec8ba9043bcc7c33e240c3deaf9a52a3be1e9910302047c435bb500673065023003874a3bbba441180baf95ab4d282f653d33f94b6c6d0a5b3b4ae8d4a56b74a195b4aaefb2a5beae2f463692b8283822023100db7c62ae85e747c428a767e9ea6f3cc44871cc6dc4c895eb43e57ba67b4ed545e7d48c9658e55eda6f5ca7f895befe440302047c435bb5006730650231008d4479cf7543d24b7d602761d1d61870591238d5a310bde42e763c7fa722282855ff05fbe58c7100c6d9e4a3136f90bb0230267e383c83539bdc9477dffc0fa81b737c0f5ffb2d4ef1b40d16e1ae707efa6fd8fd9eaf78cb3d1dd458f8620c5735db0302047c435bb50067306502304bd94d70fe609d0d31ae475dc471baf3a763a159303e1dfa2f92ec7f31a52d2a014e69635084722eca9eea1577078cf5023100d3b06e77f1ce4439433114b8945d6f0459f84a7050ea70fdbaac6da883039dd14e71d9078fe09426572fd9d2b180a8e70302047c435bb500673065023100ba28b4f0b20e26cd0ce4d37f535050e2db3b7302e827c6dcac38a5dd025c4494bc941624b8d673a8de5111ea04fd3cfd023016c2782c33ee5d57f8f182ece26d5ed75be60962f86fc108254d7d40366baa151c41d67013285eda47d0a19d133e23120302047c435bb500673065023100c1c869cf6763e9835db3f9840078fa2f6def827a32a02be8009b4ef10a170dc666019a62c6dd7db45011c1f88fad288b02300af5c1e849960676536480cb7afcf6edace2a745cff0c8cb5de3f21ac95291a21114808038ee8fca012a4475aeaa827f0302047c435bb500683066023100e97461de524ad160d42150d39d3519183fdd30ec22ef767e110f89b7c5f74dd2ca5d0d972b6fc7ebe7475038c2b5cf4d023100e29732f36d3352c7f9e45177269d29a67f2c20301afeacc0e32def1ad6c59d12072c76197c42eb8da0dcc46d5dcd39a30302047c435bb500683066023100a46da8bd5ec207ee6e813470d3977454b955dbe0d802d5a93fa6ad10a0646385af757cbd593b726d94e25448e8c61e94023100921832c84a52bc30cf041760b25c91f56a75e24146991c90532706f69ca8e8d778166d9167a0b549151502c1606f6e560302047c435bb5006730650230507820ee344f2c9bb4968f8625d7d865f1281d066eef779c5d8997de4452b405224aa5fc4ce6dcf7e386cb94e2054c29023100e0cb47c2bb42f2d7e33c9f51c2a515b85b743df3fba7ab6c0caebfee440e2eb8db1b8b622c860a37193042a531632c830302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023076693771017efcb241c8ac96ee6fc64850f83546d3992e9c20401f6fbd9937ee28bb090bc05c064cd46a276723533f550231009083270431416bc52787cbf466540e968dbe50433bd5318e29ebbb78462dee39c3d5b9d3d1564f72a70f43da6fa0fa540302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f3af3d15fe13ae726dc08ba580b899504551f09d4268e34240282e85b0b22330b4d9661d8f2be89acef8c5d1725947d1023100a5a76dac6c11b790d9ba02a7a9e883ba3dd8725fc2bbcf6f054216a43501807fa9cc710692c8454c904ea7b5b9a24e670302047c435bb5006730650230631b728ca07092c8cb96a0c735b73d76a3d36607120351f5d9448e899e22425d68be1a65327494de5fb6b954b018eb99023100b661152e7fba15b16d623ef568e040d770edc85d3893ab96459c74422a3ac846909d6e75eb597065b56980ff6c12be7d0302047c435bb500663064023060fd4b159f39e4d131c4c0d54750f361456dc45c912e183ebca9dcfadb8fb745deba2a63cebe9f740d70f8ee014f0f9a0230233304d787e2bc6e2bd4f21a14094411595e6bb88b6610847edeba0e32215da0e33e015155544bcab29a9a4866a668490302047c435bb500683066023100e427bb10df829260fc6494bafaf81760e693d3a8b1903a810bf7c35353ccc9fe912eb2eefa848960c5e6d040b53c25050231008ec42f94d428dfb88bcb6a6311a7fce33862de6c82fe4535aa8c632c6f392a475c83798adf80ad86f6282c733b1ca24e0302047c435bb500683066023100c6f45a0a58d922cc2862edc436c51062221e7b45fca69b5d1d2fcedc3aee60bbe15972eff4e034ff23a3d07b7ef66be6023100a67ea149b20e54b03baa996252a4b56ac96742a3ade224f2e19256ba8f2ef4f8eedb44eb35a4badf8e69733d34248d250302047c435bb50067306502301777130f2cc2d4ad3dd4c7f8b0cdfa85dbb853cf50c88a4f6baf1223536d0faf0ef0de3e8800ad309790488124dc3c80023100c1ae21bddab884174e4d14da9173797fc33d12961200bd1573dabfd9714dd701f84afd726fe8f5076c7f24e85f13caa10302047c435bb50067306502301dae9955e2d9185d337ec4b3b9722eb88ab2e77c4720ceff16e2c84a063fff8f2d1e2f0e3aaa31e2996d0bed48fe0767023100c08798f64e2a85e21bd1d2b7be75eb1f0b950085122d2db944375711d3e3b9db62125ca4107761a02309218ab23944120302047c435bb500683066023100e059892a0b2ca95a3e771c6226bba754253beb0874e208cb132461df33f54ce8395e7924914db0a314e4777d4897b9bb023100d26151af6a8af5bdb55e13afba4f74f2b291649d639df64d4edaa6c5892e491522598a28d36735c1435312e98c6124050302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310099a0ce17a69bb5d199174e632244fb7e812c1cf858313e09512184e5bce7040a8ec271535726cfbb12e7c8b579cd0eaa02302e372f99a4de3d5e39cd1582fe54a69cdc0597a499fb8e82d145a6af31f99e462377611abe1ca0026138c491cfb74a030302047c435bb500673065023100fe3a8191fea87b748c1fac37c3248f626f709bea8c5047147c9d898b99a7f795fa95702d317572727fc379c02416d0f3023066d7906856c5a187c6882e379f14c99be2da1287e7ebf96f6a2227e4cb21d6fb0a878037d3aa13b1855330104020c1ea0302047c435bb5006730650230531c85317cca439b5b405abe3f7a4733ba9aa4d8236c69f862c5f8d4b4bbfaf0cfa04dccce50b9550480f0a3584f8ee2023100de41e90b2169a33480e3c80ae253b061ffc7cc75360d2e663b5bc960219d3137bec673205b9e8f8677a893b72ce075310302047c435bb50066306402305615e82121be3c6a2772edd808275ec1c24e0e207f98b136b67c60761fdea00652b64ffc2bdfe7ab0898a6b031e6b3f202307f22700390a32c40faa6d52df36a678f2815098c698e4f21bd80babef927ce9a915ee8607432c5a48d9ab681a95909070302047c435bb5006730650230763969575f1fa8359e4b93889d6e3af070373f726bf06a882a18c607ad4cd97cdb837b3407458020f4228a0e91ed4947023100f8592ff8a08753b8b87380bb02be2b4d98066d04841d83a8c69cc46f48902f7373f4fcea18ba1c1b777c10edec011a1d0302047c435bb500683066023100e95b61170fd9d8ce67973e27c31231f3fd2d782565b5eaa9336379ba1ca6c51a21f3e312c2a722e1ce8276c0a7d9fb5a023100debb5ec1ae91597ccfad360f1d5458c79bed0d01ce50aeab76c661296c4cdc7e446ba2f69ad3c85748b503792b66b9200302047c435bb5006630640230051e798a26f374baa9b11e3fb70f130832da378d11bc895e80eccb1de8626b5c0a3f66764c32006ba6a343c5a3056a1602302b1a687f041e2244ec578ecdec1ef1270e02961e758c60c901476de51e39b28f61d73049741793225db65c919f7325a30302047c435bb500673065023100d890872242b7eea0e18d0489348e293dcecf02a7bba64a8f7aed568c52b83a1d98c0c8de6f43c423b009e7be7f3b871c023000d2c550b7273cc08efb14e454378be887a80405ed96e39bca23897304dc8da94490fe86747e8b9b611d12aaae80d21d0302047c435bb50067306502300b0e7fbd04ac65877a9be0544c99943e8fb06ae2669a00860af65c86f6ee74752104d2a9f18f533ebcb1f3f0bdb78597023100f19b5cfe1188d24b963dae1ddb589c50580b5f1c406899bed69f50e7d701d819ecd423d27e89eddc865ac999ef92184f0302047c435bb50066306402303bd1129ecd63f3357855fa1ec8334fd3ca6c6da2bd0381f7289f4f7569b7fc61c79dd8a5c016d4ced3f3aec7ff350fca0230612923ee7638f7999066da11ae5b34f2ac7c67b9733ff08da6a1f5b66e167b2f4cf823460a1855e17c0eaa425f79f0260302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100eb48c42fee2e41d47c6ec32f726b8cdebd026569bc9f65ebafc12ff67450e17cd54f2aff12bec8703e5f344465fe686702310084e9a8c396fe69248c10ff60353756c426dc5ee606e641b891e733a265625bed5698574e46066965625823377183072c0302047c435bb50066306402302ca962ab9bb427b3735817c7b92ca6fd659e1bd1c8d7beb20b26860389378585e7250058c993fe6052e45c70fca7a9c80230136e8bcfe47fa59c9d972582083dbec75402ac35ecf27a8dbd916dedba47968896def1b053c65c0bf8e1b48509c290b30302047c435bb50066306402305f405e9fe04856f5212e5f5101587c41f8be5e4448e77fc1ca7839166775bd931cd728a0d6f5026599fb0862296c726c02302262fc178ddde1feb1e21ea76015c5620828238e6242907ae4e13c07d800cbeb878eef802c8cf7f6bc78bf18c3110ede0302047c435bb500683066023100f64083d58c9462a9217059bc1f78998801055fcd21f7fafddc0c65f70a998d64311f51a701432b44609d7c3493631800023100db755f0753a53073e2fad91283f1b6aaf59fbfaf14da2b28f502e6e7b627e7d5e7a78d1bee710c400494af3952b03e3a0302047c435bb500673065023100e9d600e1f978cc91dd35462d9ebdd5d81d64ebd7c00113e88968151d3faa088925b4ba2832193ccdb6bae50984db4cb3023036c0af5810168298198c4236de05e2fdd38a72ce59e43c07382f7e11269bdaa3ac279ef9fdf991450102714320ae21a10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307d349a61a6cab943b3ac4e93ec8ec42979139d291a18933276faa8d73cdf30b631043cc73eda02cb70412d52cb79986f02306c1879ccefc63337c80463f743eb30df566cb50e9aa429fca1b4fe42b35d89a81646617fb4a2a2b5056318486e2b35c30302047c435bb500673065023003ff76a16a901ccb2c835c73d375fbe8df38530b88a489d1b7ce8d0e23096b9e702e51211365ca26e122d54cf98b433c023100b9ddb3ea1ffadb2506a5594a19c31dcaca55098160664148e568b4ca7e94d30e0cc0deb17438dafe9b9b93b5369115340302047c435bb500673065023018add55457d409957d5c0a826e12b50f2e4698a7d5c74122e6e259ae592cdc7573a87a0666ff8c5db52362ffbf8f12f9023100828133efb20c4b2474d3a53e6f7bbab8d9c08d5581b259ec43b66fe99360325ee405c02eb4b46f2cd5292d79826a4b570302047c435bb5006730650231008c12e4775c105086598dc47cc9489fdcb5031688469853d657ed65908d6b346d4231aa2b04bdcc787f7a2609c666100c02304200d15bdbbbf47a397c9e93e3d5eb8167045747866df28762c9588fa96f22b205e0bbfbda014ea281e965aca2b45f490302047c435bb50067306502305940a08c3b47bfc44581b131ad58d89e01475444d96de01561c2bdf478cba2d2dc3d14a10bbfbf6f343ed6e51d18a044023100b8eec8824ba675cbbffaf0e6de940819600c9ef9843831038699e37dcf3ca62ac487f42eab1f77ce8dea5183bc5c1e3d0302047c435bb500683066023100b2bc6ffb6fe437dcc80c288628470e11cffeaf2b7fda82ac8742e06dedd894c1065078d28eb089dbe16b543e3c144bff023100d8ea9db8932c8a461b206dd3d888ba943a62adb6e3f4821b3ac81d7fa319c8bf50e9dbbb8b4f0817bf1e800a1335969a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023020f22a531f21af62efe0479728f568ffd17fb8b6dd32172545c344136672f99ff73978b265619d06e5a1e6d229d289be0230647cd751dbf2ad1c26828269afc003a2a72b7d3dc23d26f24c3c84fc20b75c004a398f871b68a12e082fbe16c0fe062f0302047c435bb500683066023100f680291c5f8ee26a43169289d4b3114321fdad45a20b078ded692baaa158a348be191087b9618f3d9563bb47cbb3fe33023100ab1b17cf251ef08b1dd430f581e2053fe1c44becfc6663c172c3e4c5c0e6a8c3a69f3d23b34c0c4de4cb5e01798881750302047c435bb50067306502300df1b8725b19303f3b6fe9703ddc77a643b9cb3f0fd8a823ee699878c8b344283726b8317b1c6e8ac7c11d0a93ce86c0023100f5e7d5facc5bafb9efbe4824ce8c74aeb9ba58d34eb5971d1809af52245182e944a9015e628cbe79a6da71055f3151d80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d397a40ee1e375c6762088075dd4ad9b4fe39aa70ea2c6344c9ff98438708473bcfa8dcb207f10ef2b8e035536eef703023100ecce4c1e54cb46b99345140ff4680e5745718785f101de1b92f0f3979964e3e556ce257198901dbe8fd7035692cc5c3d0302047c435bb5006630640230518298883f489f8043b7ab5b441917ffaeb894fc2491cb2315a7bb0f5d5274f0fedb5cc46695cbb2563456dd85e98c0802302245ce6ff7e552c104bf45a503f9e5ba510d33b586500b13f1c43b648df5483dcae5e5ac667c4d4829498303dc8186ef0302047c435bb500673065023100af3e79bb1d7f4320ef9676f7ad74b9c5970ba47e5337a00916b9295fc0984651d474d6d6010393a282ab326a1b009bde02304ad04718b5a08eae4fb779afe32aee875b9a285447651a7a44bc93d84911651f1b4e8005c1bedd3b5cb7e3a49cc697bf0302047c435bb500683066023100a2cf65cc0263ccbb3fb46138027e490c98b51d5b1b738c9c0f192719cdb718b3694df2976db93ff27a16bd06d3de6ccc0231009f68304f03127cb62f2b5a4b423555cd0c875c6790c653924ca87e2c16f9e355e02f298808e3b40ea0321c20f500255e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b5b0c1f6ee5281616a79d4c7fa48e7c344d0888ce28d74287d269ec114ec74aa07e6dad4c849d0719b0f5620216bd9be023061a90e352cff9e6b5767b2430cafcea018cdc5618ab803f854ef7df763e8a1c21f7eb60bc7b046d77d80b135fd0ef3d40302047c435bb5006630640230586643b098b0d1eafca4c36f1b1067d5829dea2a0aad25fc80fac7321f90f0c6407c399d938fd00e98fbe113affb185302305391c268c966ed9cb4d7b329dbff95c2d6be5c325f064551f60220b1496dcd8e57c8bbd9a9579cc6fb851119136596130302047c435bb500673065023100d6a49fde42a39abb0f348d9dc92fe413da33ec7e2522191c841682e58d9a6388a14ee3bb7a745f15ec21eefabb6abf8e0230615e344a7bdef113957c5fc0d7dbce38fce21d71b99608a0e52d16fd53e3e5c43ea9697cf9719620491a8bb3266e93c80302047c435bb5006830660231009a1e7e8e89a32557085571978d8341e4ccdd7cae11c3e064bdde8a936ece1d8a4e14b720f235369af19a23d9124c6e8c023100e2e3bf8d268a218f492307216620864b4e267e58040f48345c84aa80884cf6e44e6ee0b74ea1bce1a0110aab6de7cc3f0302047c435bb500673065023100964be8e963d98f90aedd49d0c547c44d49395037c8fc5c4d6516b257cac8d1333d5f2d12a373cf420e406d9d9d28c89602305860d98df6b5b51f3895b4af90f5b7a334e0fb33f831d820b890827c471fb83c74353897c8791930cb991ce8dff2e1130302047c435bb5006730650230260f68f8670817499e941c61f87a081f6fec4820e99d52bf69364440fa4abf3d501f9dec07f1470e5618fa25a289c46c02310096e4726c54d51eea2c607d7e65f225090fefd7b5bebb1c5e6e4005d645c9cea0fa4d9a285212f0bf3ee94b8f475830760302047c435bb500673065023100a48338409594a9e722c7a7bfce88f2c7d8d5d7cd412b3164efe50a124674b81534a668cf27c06c3c9ac32e740418f41f023060a6f096c73333ee5c270c3f21ca4640f4cf475fd35a791896db0f01bb05a8592a5ed569de8174b5e4d7d61fd941bb3f0302047c435bb500683066023100e9e13450f477d48fdda5cf238535710aecb78a65246d153f30919c7c30fc593000d6d85e06dbb9e4cc7b7abb104cba4b023100c0825fa962c68b577dd0b49c2246333133673ad1aa97c7758c9d63685e60a77e1a69c8a798c924a675aa208334571eb50302047c435bb500683066023100e106cc8d71321013b9079d95dfd92ecc3d855041c9812a1faf06d31ef1f086cda82a3d5a6944f68046069b45e82e3bfe023100dbbbd42487dbf4c0d89fb781e061aa096d7c0a8fed56e9577aecaa9f6e8769f0c597c06bb0f111ede9f54bbab92f25c70302047c435bb500673065023100c682c9322db43cc2bfc234e4d96917003460f92aa594a1cc18f0a7b3e018e00ab268a4ab2d0497d14a99b87c77e3561d02305c604f789ebdbaf23f56545f565509657e3c6af993ac9b5e2afca56eea138859d9b75f9770604c165674e0ba16b744210302047c435bb500673065023100abba79d547acb9072beaa4ee2c8cd849bdb6e60a913c40ae1cd8bca2721327ec08e77734c2f2602f1a559ff37dd89f4102307d013ed94b61b0081fb10e1fb3b9f892f5a0dc70fba4ca1414e2ac08773fb568a29c3184b7286506dc8cf2d89d3551340302047c435bb50067306502306dc120f4a2eae6b8a09e04b8889ca9fc4ffc69b68575964d7783580488db14f94d3db5f5c001d9b36645ce6083b612e4023100b8a9787910d8574c48572e213075a4a776c65ce8484f3f9fac60f6b813080ac5d7ddfcd49f23fff4d4f729e34f5fbef20302047c435bb500683066023100a8e58b333fc268a892adc37e9e55ccc4b3a84cf938e86db61fdb272c6b6e90492325d89efbcd64596a3c09f3f888a4090231009a410c09fcf5e2b7f8940c664afb7f99215e16de0ee72cccfb462966dd82149833988059e2eb2486cba0681a318c74a00302047c435bb500673065023100f127901260d768953a6c4ad474dddbc2a4bf6f9799af43430efe76b122822a9d3e651f48522714d48b551706174b096502305a88632ea5c28061215ec07088ee9ba4edd167d9e9f7ca1c0fed61408e5d0588a2b2cee82d27daeacca87a273fab47460302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310091d8b38921fa60b74ba0bb9a53768546881db73bcef8a9908e803d484c441ec38c8e4c6b4b80171d368fee8f015eb63d02307fe59314d5474a281add1d4d9d2d9f5dfd8d1ca974a610c9b630095293b752af33f8e7e71265717e476315a06d1ac6bf0302047c435bb500663064023076f37b58b5284aa3622e83c0e7222684046182080985fcae4232ce5495e8b59e9d58f911568b4b2f9c34b8cc86738f830230468cfd92a512e059813a0a8f67080a9d7f227b649d2d5cabff6f78ab1b71b7fe61c224a325e972da9bf1e3644d6721a70302047c435bb500673065023008d1d23b5b987c249a49a07f3590bb754452d1ace154ebc91d2e5f793be34d13ed8ba6c85ef4a7fdd16cd69254561a53023100a032675dcc7f42c0dd45b64ae905980460e33f7daa06a90ceb78473f023df0acea972d64eac28682887a0377511d625a0302047c435bb500683066023100b5586bd03df3c7562896613342cc37105de69c41e23392cd3e8c0f9474b7613b733d14b69ffbb6fd2da85d75e2a153dc023100b963b28beaf1cde913fb1edeac9b4269a929529ef60dafdb8db2162f29ad08804274f218b6effc2c71a90968034feba50302047c435bb500663064023020ac7c5adee2151e7041ed8158e47a56127d503fbb09708b57ef5fdb4f3f6c2704c5c36ae554a4cf0a9ebab41537e54c02303216a9c30f8518f3affed5bad6e8f5c4ae4a360a2c80b8f73a0e68a1a1cda80b085fa8eb1d985b303be1d1ae7d6281d00302047c435bb500673065023100e3bc42f3da92096cf52b1bb3d5ffa26940404e38bd884331e6d9d4405f4139e42285415a96f362cccca233bf01e48978023057fca3ea180c7cbe20b6b96795cc960c1b98f96bed5bbb9228429037b77f66d6b7707813345ae7827eb02c6b849cc3560302047c435bb500673065023100d245b9b3b0bf6e56d8269a0422e16acc1a9a0bd29ed4f1a9793d2d8400bb2c779bc0de6864de8959a2f2828bba1be5260230207d44000909d8f84d23e539982c7dbcab44b0e49a5d1e9b05fc6caa238c98528196b67e356ded5e780b7a165d9732c90302047c435bb5006730650230668e729575826928a14542c21ebe38d89ffd20bb8dbd1035371a4b5b5789fe02d5b01c9c1a4c1edbf5bf90bee2f0224d023100acb4d0010f04215ee1ebdef85d30e12df9ae9b330d23099dd369af2c2a7397cd09505e9c38628c3121b41a0b607004e30302047c435bb500663064023040ec5a6a72e0d07597a1670e792516d000e1b815958865ba220b433a40b5faad66023f1b31d9c3f658d0b01f4d9f2ca40230355b45270b877f944594da5fdb8361fe7b8f0208163b3fb7ef83043de94b2f5dde8d7db3a609d1fb3ae21b7bc91f7a410302047c435bb50067306502302c877a81837e9a48500711e9cf2a02d4a9122e1296c80b68ee8e7ba78b9c5369a9de96cbf5a9674459f4bb053a8dbc2c02310095b7ff7c3b9d4a8c748dcec93258decd87cce5edb82857583d37007900d336353e5c1f579a4f1b3ca87bebf64befc0ab0302047c435bb500673065023100b7f60bc0aa958a5c72f6b071093914cb33d54b5adeab5609a6c936eaced685f81707e9aee5b768e6ea9e6f503657694202302fd1ef947d9866ff651bcdaa9a34c283f962735fbbf9d3ec1d708b89acf07d885a37e4aaaadac8b5983c94f357deb1b30302047c435bb500673065023100d3819dd7e4f36676a6c3042642b8eeb370d016e389bba15d4d7c530db3fd909aefd3853021d21d9a882b8f42827b029e0230773e8f767189eeb57df639e50740f01b03c4933c060d1dc665e0f4e968e715f922b32faebdb0b428c0c5cc41533a69bb0302047c435bb5006630640230265519b2d06a741e6867512c1848e5743abe43a53c857a75f0ada853e6d19baa1a25aec614e3a2e4aee7d7313d17302502302e90bdd775d21beaac748de00e62cb0171fd01ffbc76a851569ee0b35c56c0b3000a112b0633097eac62850005b6266c0302047c435bb50067306502303954b1519fc5869b4ae56e032da889a9482dc4b196f4dbbb8bf1706ec2d5f5493e13d5f57adbf0d905c985b3d5c451f30231009764deb88e6869164fc136f02358d6d18f1b179f1d7daebec48eba0bddae75afcb95113890d9ac637eecb431fddcd84a0302047c435bb5006730650231008fe3d83fa3c2d04e424b4052592c644f985cd727163f292336b6d2a529c73976ea6a0d144682a9781001b592cfd3a4c6023057ce93eec3fa44c5f12cb4d166cce30b1bfb48fbb1a4a3c9e01af2b71e5e7d5a7d1696b78a382da86c00babc322bf9b50302047c435bb500683066023100fa33f0629980a5bf13e02c33c55a8fd2811b0997d21a420bd87d601b02ddd94e676709a1477d0420437e75293b668d950231008305dfeadf5d87acce629bebd7f6ba469926c555254a074adb7a9d433d6ceb6c1cd6b11bd78da306b17a998f7ff67eeb0302047c435bb500673065023100895e6a1cdc7c0f4554cee65abb6f64efe3b35d069dda44348309002bc03ec45751f81872c122bd83cc3be80506379da902303f742b16a5d9c683f011fce770f942f2af73acc09903f9c0c585745252ab1c1e6388e10b8b6f54e9731e12af6d6428910302047c435bb500673065023100ca9a2b83ea1a8f10de3bb1d6a42c526e4ff514f9754dbe34f11b84dc711f1011c291cacace3d17cde248e04a6abe327e02305f3e7314271940caf97ca1f18a9b64da7af711a81d1e68a6f7ba81116a954ac51b63c00eaeb1391e82b380134c92d9b30302047c435bb500683066023100a631b0c08de77a87d87dfcd8e5720b7cfb6868bbfd3c31ef0fd1e0189adecb07182b63fab775cb8f4a8423d92fe2a751023100d17596600c6ae5172571bc8aa11f4e70876191078109f8e4e814d1e77043d2e3a02c7baf697898ea9185b559e28278650302047c435bb50066306402306981d14c93ba6edc51446814e4ee42e63bafd9adc54e1ec2b7d25902dd2b4c44adc7d8ed71c5b04e909d4cc013ae37cb02300b644ba95e4217669d9dc382ff719a5e0d3c873fb4a69b219c779b7b68b2331e23a17faea3d4f10a1c52585e35cbde9a0302047c435bb50066306402304a6e673f5e0da70369d4cda1f0135ebefe7e3c7e32fe3057a6882df0e8bce255fa80d65ff7225e0a3310597db284fe3802304a161e9c3b3cba0d1c0e70e23c146c0de28726face5eb388763f4be2194acf464620ab99add4b1a4e14905037e8dac510302047c435bb500683066023100dcd48249b9bbf762abe1aa01481b6c7c03831ccdc119a48ff3228cc9e0b890a4ac91a7af71228b18dcf597fa28444eb3023100c94abedc9c514e97d779b273de068b81947b713d0ff13ffdb07c011883e5a2244ea90601ff715dc6488fd2662eae00750302047c435bb500683066023100f27210901ab52e4dc5bbd7624d2526ead8f10d1e1ca3e663ea115262e6bea8e592ee9165c2a31c3a5923c7f74d816f1a023100b42da2416d92673ad523fa208a6c57ab7517285f6a875d6769a3fb3b20ba15d87cc001c7b5cb84ffab54fdc19cefef600302047c435bb500663064023031c58cf98701de61c651c0e2e3b4466a722e8a09ba4e47a333b0e35b0c987bf952972ae1cbae0e23b518004c26e156f80230762b67fec4fb26e7709520f166db9a1be34d619caf4be294b89b83580bf8d276f663c4f19d5d0dfeaec8f50164945a5d0302047c435bb50066306402305249f45f5d87bc54d63a4a66c7bffaff8b32213bb693c53154c338f092ae34e0198cc6729578118d4cf562f66beadc5802304a2b9a7755d84d293361ba668f077eaa5b83fed0a7a6f47352e8f88c65e1f9cc73e3a60ab39c0f757cecece78b753f500302047c435bb5006630640230331303fd14782c99233967d9c8150b2cf773a8c70b441245ab516a4babff237801912609a51f153d0a44ad2ca3d3098502306295a5c48dfdcdaf739a77cfc2815650ca614e26d2a92ce6dcf4f7acb29dc43aaeb5e5cf79b37ac48542610c498b672e0302047c435bb50067306502307907b6b31cb5c46834444c7685d5fb80cdc840be4d3a051a868f44bb2f7b1d4127b81c3360aa8651414e876dd433cc27023100e0a4ac71425a66b99872fc6469a6f992ce13af94cd49e196cc1465d624a2f1b41a701490a0a6770312a74d23083787530302047c435bb500683066023100b827b3e2452df685bc158daf30656f226c88a88e10f9e6a08085b5b0c9e8f3e4098342a1a6b8926567288377f6ac48e2023100aa43a665f0a685c9fbecaadfaa145256d158097700e9000d7f4e75cf8512dcd1194056ac5d5786ca6deb128babf083b70302047c435bb500673065023100942b88796479f8cea01d3e500098c0653ca423b83f0f721ab48039bce5f50071e740f67ff32534f884ffb2ebd94debbb0230729b2838bdb6c099af50d48eba80276b7b0c5fb6040b85caa556299ceb3fd4f7877606403ad3a945636ad0ddc001081f0302047c435bb50067306502303b7f15a86ec8a2d5c876470d2fcc1a04150b983bc40c15f7d33c991b1bff6359296127f7c6ee84ea489df5c47b17ad44023100ab6d7eb04c82bc5b72e5a054b5a0e5898efc0478d048e9d2942a5e54f1b7ed96f1fe7cf28fb5e19114a067fb7864e63f0302047c435bb500673065023100b77101927fef449d9adb328daa8ad6bd84752462d165e5000431c816f28dbd1a05acf59f80002363f2d27c44240650bd023057e1f961082c1dafb48c11f96b4ecfd1fb9ac14f751e536ee09c0a5ab66e7e0aba8470c7a88c8498b0252ba0f2cb45de0302047c435bb500673065023100fe790f15a964d6ae8f61379598dc65f8ea932768511089363c94db899ab1e860853ba40e48aef0310b706fdeb0e544c502307bdf0a16e17e471c3abc12bb4c1edf1f49d85fa441c73166df8bab1959ee5c2a8cfb9f50255d5dae59127c6828e4a4430302047c435bb50066306402307b3937eb39cc81841e82e66d239ab81d4563b51fad51a8c0185e4a19a6a45617b0739478130a8913af35ea0994353d1302307f4c6878ae68a79ecc13d309379cc4ddef024f3de5c28c3fbdcae193c15ca3bcde999d6c4825c941b676e6fdad81122d0302047c435bb500673065023100da0636b3bd8faea907ea21127ecabeec84cd7f91499f83c2c69d38da358130a913c34354eb3fe6ae454eaa6b53a3246b023038b1eb74d0c27961a74392b4d20432e8f3aed956c5eb43daf1b3ab1d6a1610ceca0b3cdebae836b3b9918629fb2819440302047c435bb500683066023100b7544d5af8e57c8d3847a33b98cd8f3b8f61dd9767ee6094109b9d8850ac26e408de9628f8ad75817d640e1c649f68cf023100ea4fd4de60d466e3d9a524f4b353159424069a890b40f9a4283609c0afef96f3760f39e07c18c84a73260c8873b6fe6a0302047c435bb500683066023100f274957691bc11eb235a6cb0e1bfda33d88b325ee036694e8b0242ae9c4f8a5b0a471cc1546a5b842d52e947a1367ba6023100a7d0c562db3623bbc2b58238637b17635072d2d0da697ead74c17f8f69ec4e76ef9671c42abb6c867bb9f4ae7732d2b70302047c435bb500673065023100fc1ad1a54bb1516616f2043bb914e3c4f5193ac17bd073b56659e7d638665b4e532c8bf04e23a59bc70f9216d81abf1f02307e1a7107826e5f87f06cd56f9dfa3dd0a521657f40dcb6b021bacf9851b71944d00b90db543754c53cfa12e0f78b893e0302047c435bb50066306402303604429c55b6e53b7be94756a79f041ccd4029992598025d9f27285a3074f3a6ab343737caebe6eba8f6f80638550de00230034c5e99f07a89300204b795031c04dbcee6632313ad934618d450ba6e86ef493dfcea79b7795b9c6e8940d55a4a35240302047c435bb500673065023100b8a7e1c196b9d7aa66caddfcbdc99a057ec1789d0cbe5d8534b9aa242d2cb4f2fa7a5f37b9215fae641287a8867aeb7b0230068643e3ff2ac048709993f00b2137238f6002a6531fac06a38910f9c4326c73dea2198915a0cd63ec4de699e361e6a00302047c435bb500683066023100b6736e1cdafa217016476f1c2a5453c126cca07e514cf58b48b19cc8fd15a4e090f26549c47b0b685824660f1c633417023100e6edb525a9140d8546cd95dc00a043d173ccd9292fba573a8f18556c2dca17cbba0ad1730a959358f76751d82ba752de0302047c435bb50068306602310086f494cd5980fd822904a74598b1a4697a6afa9d8e1fbf5d59c5c3a6fc15fade16eb8543639bf39c52887291470db199023100d08879f948026d0b1ecdce74fced62f3181807dfacbaacdc1c99679769d13d96f0fd1a3c5c0b866be9222d0e87efad1d0302047c435bb50066306402303d12cbfec311be4d2d2e5a719d2afd79644277743bc10a8b39bcc5d8fcfad3f4d76fa25d7bbd8e1fb968bcaaa0a3205a02305229886d3bc280264baf3f13b1a4a0614b6a7fac93bf5a80f776588ce1a7233fc4b28f8a76d3081249aa1da65101a76c0302047c435bb5006730650231009ea0ec30f64601a765d5a9434b35df607a0c2781888007b3848db56e77cea3be274dc2815433df3cf1ca863d16f9af8902306f7003e0691f37a03a32a7ead2c01be9ca532348c093d842801eb92092aa26643fdc05b2d2e3e110eb9bff2c01fb21b00302047c435bb50066306402302086b53e55f6c1d92bd1586ea0d221815ac66d529bf2778512a5a0704dddda155b1bdfab6c14264022dbc6b6ac2b51550230792efb0711a47eb17350b6f15bb1135d9367c91fcab692561870c2f1a50550ca9597da23292839ed2c5cbe0f72a0115f0302047c435bb5006630640230486e41058c6abf6d1f434562270ef98e8694f32756c771f5a45dde5efe795f0cb8b08b4e10a2bdbe2d52fb0e79f845ec0230632ecf4545372d6b6334f8410cfbe3fb2f7eeb64bebebd99e3cb440916f4d199f77e668a74b5b542f1ab272d09fc70a90302047c435bb50068306602310081791f9c2f50aeef618b2efedf729bbc8bcf2507276b0552ba86a1a32b613e655c78952f6ff6a85682c26c8365be26ed023100db2ff85cfe90baf86ab5da0191d05ef72570eb17e3d1a716a808279ae2cfd04d0ac550f60cbbeee979fae30f00e897690302047c435bb500683066023100de224db2a73f0e733628063bf95a304ed227a216736698f2d5615559574d0ccf03ddcc0c298f473a262a344b224c1023023100bad1ae810f5fd20fdfa4daf5354d35b6bb884869ba4b07660543478eb75bf4932637d17a2bf2995c926dd9617a1761920302047c435bb500673065023100f9d97ced4403dd9067a2d3068117d84b78286965fd71973cc1901b1aff61ba998c80920b7bab8a6b1ecc1a116a0a8409023028359faeafd54197e1dba23b35d576c90977483e3717ad79cdae5197a7ba8ab09e9df517d943e9c92fb547728c33a0bf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c5726b7bc7ffc10a6f12f3657532f01b37d947125c1ba4d6393fb346d86239d3365573f28d1e3b9f972dd252f6a9b941023100ad66ecb508057e0767192258b8cf376ed66669bf9a4eae8ce7d5186a8d4940e07476911e1040c6a6572d3244ff32f1130302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d3ae1309f0d932e48ba38d8f9a26e3ccc64f1d95d01d7bf2d0fe370995d0b8f8608b4f94ea844dc439c212ce4421f994023100d82a05f2362946042b4d52876cb8b75c42367e021b522376d2f26798fd867854a4436b8181589da3dfeff61486c2ca660302047c435bb50066306402301b8ce22e18910d241eb66f9c7962d4ca2918d7d247d3ec5330fb7d0d86fc1d9268a17b4a7e6a08c30527f2dfe473881e0230622a4f2cb30a47d2aaf4bcf8b11d1afcab710517004974d6a47f2d2935845d3f9ded55cd2420969f36f9fbf93f4c42270302047c435bb50067306502306222d9c72023d08d0728db67c174ccc0a7292999f3cbf5ac2df4d8c40736b138f96c5a23ec4ffed033d8a7332cb0c1080231009ae9da312197b28a9ce22b5deee4f1057b31122e585634f42166313db048902a18351568059e2b24c2cb1d55d348e1f00302047c435bb500673065023010a7fabe92a0e06e6393c3850e75d9108e808244a7b533b4df2a153dfcf982e88918bf00bf7a5e7260394ad97a8f94ed0231008ac8cdb5b402550f9450ebe274cbc6b80d36ffefc2961cf671c99832417548cd164f5ac09003a3debca880278c0b21670302047c435bb50066306402306ffd061a08f122fde1a185288a44dc3a09c1c496fd24c7854b67b5629b1cd6f66b7154baf372865e49ac31969e6a6df102303ca7c960142e8aa8491ffa99ac0cad4565ad8a29e8897963a1842cd91df9b47a66b75ed6681d937938ee57e65b8832dc0302047c435bb5006730650231009b0d9cd258009b816673e711b9376f644a485149e914fc3a713154687d0a7548b249846b58ee1bfd3143ff9d73139090023050d66fa0ea08935a83ab88213742377d7fe2146e6ead2a7ac4f84a710fcc01870bcf672617d8222f3f8a46dcbbbaf92a0302047c435bb5006830660231008a928c9a7b411a2c7bdaf1c5f0a6624a931dc94617ffb2d2817e58609adf3e0710c3972da9a7055efb676537170389a3023100eab78f057048ca2dbaff996eadc1fb52e2e75c30be940b8e2b4c2f232e0c35a50ac84f597728e5bb38aefa860ef9d4660302047c435bb50068306602310097c8df6624d9dd8d9e6d26fd8d50467f14b4ee591e550ef63476784027d4ab612414d3b37abe1d7c87c16105ebd5daee023100b87d0f2e7c9b377bb7a53b8de7d4bf9f36033c76e91db5e851b58b36d5572755a4ad14d29baea6158f92f77c8c978e640302047c435bb50067306502307efab10c1a0a66cc31c5970670d74d3f2a4b5bff67c8f923eaadef93493df0ddcfc6527458db2fe6a3236e0ae208ee8d023100d88173edd54cc130270a09383706ecfd5e886daadd274ca11eb148f49e5791efaba7f4e58143c33f00071853498f402a0302047c435bb50067306502306ded3368d3e6cac14f3a341d932673e987afb959d2d2fca11b923f4338d8dc160d3bd92701a18978c4cc86d023868c86023100d60aad6e63a6215614750b2579a7311757adf65786cedabf32512ba37f593506ddc286d1bc610914c82abecf411360e00302047c435bb5006630640230671d13295b5de6b8ba6b3af80f6b03268349e75149eeabb19d3642abbbfb8b40b7487de7f865dd4abeb4616850c8ef5302304807defb2d6aa78800fb149c2915ef536ee76e15dc60e2a0b9df2300542cff1f71ad3d6ef21ba785a897788f49e3d33c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a6bd0f495d88d2e6d768146745f05d500d7072ba7b5f1a76e8959739272965f2392177f70bb374755e09765fd0ac819e023100eca45e4506687c6ae0a123be4e10d07628dda407c2337c6a45ff7c4233e3c39c42f9b24475a279e541402e06419ae02c0302047c435bb500673065023100fce789c608deebd13b424afe768fc47987c5d14f76b01578cb47237f1fbdb469173ba9f684789f53d0ecf8a4a54a804802307e99add7189c56ae1367ac9d7f8e6a432239ae799b2fca3adefe4b62e4d762364113b425ca5cb47dcf0063b4a91a9edf0302047c435bb500673065023100a29666df0eb743adb449c22729f4bde43e0f02beb86beca0f65c9b91588925eb3053989b9d2d204ca446a41e2261e4f0023040288ab905d5b70cfc137b2f0552eea335e23bcfcb2a3186ec9491dad5d32a4b42788f7113ffdab9d56acf1df09b57b10302047c435bb500673065023100ffd30a6e649dc105e0e027f632fe59798b8861b49cf816dfe0722f2f52c4e19e48708bb3eb1e06daddd8eb760db0182502307b2693036e5c5fa3e6e4570ab868f93e0b06d85b841c658ded1ea167c955b7393ef69043013d19a29aceca820cb254f90302047c435bb50067306502306bda536faa2a8f49738f42bb9e38ea3a46d68fb599a5a52c05131d71d9bdeffbe8d0449159259581b70663dd6c40abf60231008050612b06ac774d0e99907f346cedcb2a1e41b36b4881fa88057f0d3d187fed713b50dd70b54bf2462e8fdbfc3bcab70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230039f02a360d8df838d7403645dd861953627ec89b87fd26bac1534b781646e5fd70585996dfb54f33766115a348ff2df023100a8a793abe926a661032272e1ef06c180ae6258439a07fed6f3c80ebac432fcd2e567e9ed544ad8aa5c75b2f833d45c6b0302047c435bb50066306402306d40b30a4e91a877a8960d4e4bca08dffca01c631625617b86199450b6b8b89413a74ce121a633b2e874b5d29b04a30502302303afeac1252acc37aa951985455b3765b41ea4d55812c265a3362f795311dfa47828add8e790b8649e5c60f10506d80302047c435bb5006830660231009bfb52f57b873376458352a9b3ae98debb8e0e8b38673b24abf7cbaa83e2eadb5a540fd7f6de029808966c6750e18014023100b31b4e743f305ed84a4234bf3470b5c410838c387232568985992ca46fcd3478f83b6c91a76412bda4b015c60c6365580302047c435bb50066306402300a0f0287a873570a6ae3cc75915b4ed0673dc3ea919758f325a5def28db072c2cdb8b5563e19d0c1f9d1c2e7fc4be99f02305dfb91f3199727b808a6644afe370b2fc08c9f648f6498d13b225f8fb7ae628256e7d849397c9ca95b5dca67cdb5996f0302047c435bb50066306402307438b3f8c2e651ee1dbe1634a7c86fd6a843fea5b1a49fd0348c9c92c99e3077f3736b7daa3ed4151f0f241ec3c64c6c023010ed2943f4b576db820d527eb146f83070567bc830d3403e8869dde93892c257f76a12bb75b0d0ae2f5337b3e805bc5d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230188fab25db265919c077e208b1a2ab1f9cffc8f212d0e1c5bd792e6a94cef6403dd0c5455b8720d4391832f18878f53e023100c84d40d3fa3aa53be057a0ca84f5406c468247a44fa9a006626f80103f6e22500ee40450289dcbc8232e2607238f50cb0302047c435bb500673065023019c78f8e2994a411259e12efe6a2c31ff4f787fc40397edb1a24649f9d089088d01dbc714c3ad4328f5f0fef1dc9d32f023100f0838ccb073a77f3bc7d84f890dcd4850572550cf8125bf0e27b939e4a4d01952eafaa54ccd01ae78608feacc741174c0302047c435bb500683066023100bfab7c8bbfdd89a6593eab02dff83dd06e341f088749e6f10f1c502b6832e4e1710f443e7f4ec960d28471af382350c10231008a6f9ab14a064c58115d455b3f9afa4d544b686f7b5916d75f9853fedc4f7e454611a11f3daf28d2451e08cc36c3aa9f0302047c435bb500683066023100985804b33662ace5773d8594157cf54fe8d05dd12db8379011f112b270af99e0058031e81ec2f8c82b0cc48c1ba73b6e023100cb2d8ade0a17805a47fbcb70b10adf2abe9d5f8214c23e60cb16bab9e62b3fc76ccda2165e85f8772dfa115759a445eb0302047c435bb500683066023100fed36c3a696b4c87e5297a965c8d70b72d9b1fb3cf53c16f23bd61aae2bcd5120f1da11b7df05b0c48731e294fd0aac2023100d3e827f9800bb2a75254a148b4613fd0f72f4c462cfa50ccbcfa2711a08ff5bed2aa9e25a5f1084c1073c65cb75cf05e0302047c435bb50067306502307f245da9ec5fdd68841b062ee2d4922e53eddf96f8dc190a89bc2d0b910d5a813dff48262d4008859db935f3596a7631023100e1ee9f7cac8a2c11596546f1fe20a7792739d2b41408bcb74e83b1b622fc80af32df44d9b0076894e7563367a3bbb2c10302047c435bb500683066023100a1cf05560c5dea8545e6532f9b0c5bc34e9f11d4d582daf881eb5fc06633de86858b0e8aeda0b739f62f3175cf867629023100f9ed7bc87704a4c9333b9c68f372d02453809857595f79ab48241ff0db0fd4b465336d8c7ec1f2fe47f0878cfc80fa2d0302047c435bb50066306402304b06aa08c24348da2ec65f5a58196ef4500c032e5a608b1bf0b05f7fcb9c475d777b3a92feb9912149e0f3268a58456f0230079a0097811dd42b7415cad95973116c04cf8e74c96f87d7e20d624b853c258306bcf72a2cbac727a31e770bd258df320302047c435bb50067306502306ac6d181a5f9b5656517b47b0550b0b1e01e5990ffeb0470a04dc10f0efed6e45a381985e30564a96ef346c721a5cd66023100a56ab843210089f29d31d275a9e871e280804cd945dbb1bb8c78f6e7ab937c9cb5ae31e0d39e1cb38a4c85f2df44965d0302047c435bb500673065023100b90aeafa9c23ca1d09e6c51b6606f06a08f6264a9534096f6f7eee7d817505bea11464f391f98e5607a6b71e0b633b5e02300fcf07048674a0ef9baa52243a667096feae321c106f66512c4dbdc7c5f933f83ce4b3aa50331b9967941f649427ebcc0302047c435bb5006730650231009662169765339582f41107a639bf27b9fad75ab4c32203289848ba6a7d2aa3d760a9f65960ef6a78712a391a2b94a1e2023019993b525785cc16ac73cff37232a9d8cd881b61dd6cc888832f92de3799ee4caec749ffde7bddf0bc2ca74a63a72ea40302047c435bb50067306502306e9eb1ee2fa4fd7ac2bcb1045d4d68715f201b4ce57a278a6b2a32a3a46213d88074937365f22909711b86b20bbefacc02310087a8d58b7a9c9ac5fcd4e2abbb249db064336aaee23b7f1666350fff1d2510dbbe8723ca381f4de901e4538854b886090302047c435bb500683066023100f1e9013c250dabafaaa245b05794923fb9e961fc34b46a3ec4e078cf17eb462173460345b738771162a53092c7514936023100f36debf7ac84f0d54e970393a08340428ba30c22bebb282c4a232a766758b13e74f01a4a0644b7b9238c0daade5524d40302047c435bb50066306402306791d01e1c45a4a813c29a46806c01b46bb9f98efdbc847aa284a4bfb5492e3f829eac61ad19e7f057166e2990271531023024326dc9347cb8eba8923d9357f207f3ceb385fe1900dbf51efeb854e3bb88dbcf7965383878d40c77f519eb158d637e0302047c435bb500673065023033b664008389c939aeec09ee34c7c14c6e7c6cf2855a201920ae4b341b922ef5550cc3351bce38d8f7cfad612402391d023100a845cec3594f17878d80fc943e765f30f7d9b2d3034cc358acddf18145a9cc5d656448519b1d04343c34eb63bf6ad8190302047c435bb500683066023100a4f561e293510f1eb9d3bc17311a4f57e825772e6490fdc52bea22a36146dc74a75e08dbf3b25b103373dab10f11050b023100a5febf3c69bd908cf1190a839c30d53e4f20d96453bc0dc17b195cd2f0a9a84dd568f1d9d9ba2d87a93c15c628e2c4f80302047c435bb500673065023100b8ecdd1db40ab7e260830d0541b62cb2369ce8b0d138c4ce3e5a56bae3f46b99dcca0cd7620b6bea2d73ea9958a891ee023021c12128449661e44496c0e594f41b71ecdbdc4525bf54dc009d8b18a60db2baa44874e935ece017cb4795ea012c8e5b0302047c435bb500663064023046fa7d4b2a120756d8613e6a2ffc2a072f48bdf465b44054a46a71c85f55024c0e89e19591c1fe20fe85e6256a3d75290230472a0f7e4d59496b6e9200d73803f44e8e6b13f04f6f4d1571681f551ec23ce584945aad098036748a0662de908aeb170302047c435bb50067306502301458d676680f3ece6153e47e6324d27a1dfe7998977a5f9be2990d307ce516d50a463605bbb8fd910802e55501e0efb9023100f0f3ccef72df30c6b29c15af41088d2ce6b6581c341bb537ae55a08f6bddb48d5fd92250e61a3c64ea4b788e883640f90302047c435bb500663064023050514a68682361eeea57b3b03cf289d77d7cba369f3971154822f61a1b3e2f375ad6820fd0bddfcfb06ca1001d2cd2b502303495f320fcc43d482bcaca1d34f15c1d6d83b42a6f50efa858e161fac3eef9248dbcc5899d325fb1738b6fc7666ce5f80302047c435bb50067306502304ac1bac7b355c7472b5481be6d495710ab60e7deb0288bcebb26a36eb9408e6e27a717ed92ce30486ab6073100f9fa50023100d47d759a4aa93011bb7961c6d1cfd7724f1a0117475afe592ec47c76965dd0f3f9ff469c320525137d60a2ca0f9c89800302047c435bb50066306402301539a08374bb2fcc21e99f1b27aa42d8b7a8f46853c076fc8c6a3852157eae2b4294b1afbf654fe1853874a92a8c6776023045d560c1186dd7e3b8ad493336dbaada030dffca438f3022b37853ac4c91f866e26bad0310baf3e7a660534bfd48899c0302047c435bb500683066023100cc64293e5d8c73f7452ce9e777a3e8859a49a8b2aff734650f7293efea9cb8067094a78e99472e28d4e6570963b97cf9023100e84a9058e97c235290f2101bdda6e095b046dc8fdcb2cf596618642a07aafa446e2df91e39d99758fa24b2da287c79050302047c435bb500673065023100f0b647136632556e28396f07de087f3c98267341b3bb1016a7bec8859a0057ed809c8eccbe44418eb13bbe2f7520894902306c37dec2c8e8ae33825ae19506d3a9030491ccff6722ae364df1ec158785f4efb8a5138eaff39a4edab3d892c4cb262d0302047c435bb500673065023006b5db5c8522ed435e784bf95e75cdaa268741ea4625a95b0c9cfcc18dbf14edd01e973e1ad9418c95113ec4227e94b1023100a6fc57f1a91122d084107ab8a943574f51382f88a3fd970d5ffda699cdddd150380086edb8c3afaaba31d5745848bd190302047c435bb500673065023100eb590a3d62ae75acb3a36ad561bf00c1f6d8b85209c947c377584bbea0f7d112512ff6b894a63079fc0f51ccdc8f8a7302305e54b4d34fd88cc2034c5f5bc482f7958cfd8cf072dd1ed3ce1c4efc531970782e6f6b5e7e0afa3008d647ea2e2069110302047c435bb500673065023100dd2e6adb4939482f1463cd7b946a34cf3a77f3dbb8121b69a4873e9701d33320b985f2145791b1235f710db4daf724a70230361194d2589af56016829883b440c88cef9621458b585e3e9234e1d18e155a8478faf65893795a019e4c0a5cfb92d27d0302047c435bb50066306402301b5e6b5298ec8b98d76d393d2f493237a0484110ca1f140370de9981a2062eaebc46c3a1c830b145d53500dfdff6f9a10230396e6a37aa718352fbfd2c62766ab46df8465b24cb314bde4c24410b5d04d5be7bd4441a197b6c819eec4f26f8f4f74f0302047c435bb500663064023048d6c26befbe2130258fe8bdb7d31766dcf068ccb96b29815e6def39597e9d0c6bd88b22e7d2e5ae44a4bdc99c8a9c890230183a4e07609f5daca1f7773e7b17cd662dbe3937f19ce42915f2714871b032c15c91732f6a37852f49ab31a23c9e4d630302047c435bb500663064023074bd02f687b75641e34e54140197d1b071304dc4ed8d2f7dc9f6613dccadcc6352962d0e24e44cd4bc82d1d6a55f42050230385614f4c11cd34602543571f2fe2ba864a725e3d7d7dbf4b1799a6ef00c6ec15c60eebab438d345285109c1159302c80302047c435bb5006630640230597368aa0b99bd1f2ebab043c9dc39ed2390dbec9b30bfdc7aafb265c062947e7e1c4e8b48a9fd28b03cc02b9d859f5302307f59fc60ae606de21404d1c08aa9cd313a889252a3ef4fd82407da4b3ab8b17c10559fe25c95469b0bed0c2f88a8718b0302047c435bb5006830660231009a22f97498143f2b6255e159e40214c73c55a9062c46a69a97b40fae6af75214cb8d1c459ca032acf0caa708ad745940023100c2421bfdfb7c05cc41ceeaf3c87667e5d6fcd1101c9e5ebe6e55e8048b724a66b517a32fd4798f0f35affef6cb1801190302047c435bb5006730650230580ac4d06579bc53484567645c578938799f03f9fba95037330bd62caa07c1525407cb11068d0a87bdfb51f6fc314c7d023100ddf34b10148b19836f72baa453db26586a6f8351e75622b4f2de469316c45589dea55a26309349079ac9915b8046cdd90302047c435bb5006730650231008ebf2938d28e09252400f9c3dc7b9dd13a071a580a54d8afee900a46db2547bfd7897a0b069c7ddc82f36d590ae69f7302305ab3712c15a9c1ca2b862a0f28eccaf80cdd889aaaf69557807451e7092f06ba426c8bb996a37eddb856b07dfdd63a470302047c435bb50068306602310087f353363d5c550d8f19c580158ee79233c7521003c50f0d4e6195acdc6a0f413d0b5790a864f3bb8c406ee4a3ed9f66023100d5ce72c368e4a190d3a314a7999daa4150c68b9159a92f91221b5dd089e0c00948185751a7b0dd480f3ecd70a00cb2640302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305a528f30385912a7a31f66354765a9387a492d94e30b2567766b99f2bdf25554115c700b80d712b6eabb3cf8b49cfe6c023100c432a161a68d302c1014232e47d13248200467c01a07eee95b3dc366527d20b496022df5a3f78e10a209af1124d2e5140302047c435bb500673065023100dbcb9c5f30882c238a27107f97b1ac60c7a52e4fca6e54b1bb4cdccdfa1f84be4e493f21386d4739fc787350f7993a7402302168ef07a27b94066ff056869f167edd66b107590e6cecaf64eb7b37db228050a0427952b6838d706fdb480f8170109a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e7c005cfa286272e73ae3a9b1c317474437a84e4444f4acd096f9e54afbf089794c9e3fcd63168f054e5f897e1873e3602303fb82234577475073471457951a59c225768ad811834e4bb5d066943f596da8a7c1b0dd60a9b034f27283455d054cba70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a755e8be37d654433777ca49ed9d765fe97577a37d8151f6b5089bb6f5a6be1bf687037a6f57c42a70ad8abee278572d023034c13038144dedaeb09f8c9dcf0273fdb9a3303eed230a3db75e05ff13dc24e13766d97a2ebbdec9d250db692216b7dd0302047c435bb50067306502300cbb50cc5ffd953d0f7925e18f30ee398bf9572c8b4b296e50d523b303b17d22c5e7d9a89e2391a375a150f2bad50b4d023100bc1a54a342d89c1accf565f0f7d5d6d489657e8e97bb24bf079cd9f2fa9193e894d3b3cb10f8897c501de010cd96673d0302047c435bb50067306502305089a58897a2c2f8cdfee9c60ab10c898f8a55c6cef5ac62edf6679ca4f95feeb8390dc80072bba35eb4ba1989797bcb0231009f7956ce553aa74e670e98fe4897d0f3c4712b2f27e427f21d6804572bd3154091318f8ed86034f3c670229454adf09f0302047c435bb500683066023100e4f2b9f2cff1384c5ca1dcd2e80d8e980f814f75bb389dcf1e66b15d45f8695e4a317f317b28dbf8643cae0b81e19316023100da5693e81735e8f487c1c755af624004a43f1143759bfd24105959e50557bf1adfb20d6dc50b950f4c28f1f38f8307430302047c435bb5006630640230222e2d0b119d2f8b3665cbac5fff02a8a383d04034bd7d95a0bcbe72f432c65668598cc9b5bd3fc2f48a56cf9a4f807802304359f368a44b4a3de17b97e36d8eebf823e8160516449f58db5c85bf028676214c0bd440965b241751ae8c6b2586a9de0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d439f71983d7930a6a180031346efe733b521bd28433ea9fdbe5f736b10cd3d9987cd05f729fcec101965b0c60d233ff02303b3c06229e1777c9cb1ccc167e1f4a2b4fa2e9939b65c972f87c2eecc860ceffafb85b1c544ecc935dc9d9b43eb984c90302047c435bb500673065023100addd9faa2ea9f82e36be8b56db6db1ce04fbccfb06df90ea27bffdd826dfc13f657b0ae163d12644e3a62ec92252da9502307a6efe7674eccac527e724173e426d5ce4f605e03c49c71d70f258ba0c58a474280c7f22f42f7101878205240111c52d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310088c220f794708ad9d0e9211cc60dcf11ea63b37df7b38669efeb575d612c93582be940f4ad85451160c695df1d83035902302f8e7f8e8be8fbbdb7b8fc6fdf3dcf4c293b5579ca2a7ed5e012c6adf40b02fcc14301bbd412c945e20056964227a2060302047c435bb5006830660231008b80718fe9525567fda838787d51973c30a1e4e33e1c48c481e174ac34287e51f8c93fcf2017d8b8761d3d63c627f721023100d69b07fc7bcf9ac1f84b2288c4086fd19673738bc3f4ef936e42cc5b9f379dd4a283e9f7ed6925666f87743af6421d600302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008a51b4c47e36db29361c5d19c36c638e979c89e753614dd16ba3a9256096b7a32f169bf0ccee0f9bbc2a6476e8a6b34902306cb4cea4f478901812013dbac85a167ab3a0987383d6682ed6ea773e4c4f6b51609428090d17b1bdb5701fa990dee58d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306e2e432909970af00e0ac202d72c2122501353714283e92207b4c30bb00a2e03008b890f5d80443af62ade0be28ba6f8023100f596653d91d9346910dafdb563c8ec8831c20ad5ddfbeece55b1293f9e0343b71fbb85401a2e3f936311957c36a809ab0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306ba47bdf6954ebb27e8ce15f1023fa4436e6cf41dd1b7f46ea03d5ed2b5ea4ccccf4f2a0534097db18b7874e946801cb023055f3bd4f7e32f92eef02346366e8c149dd2690b23bd0bbeacb69b3153f6ee20bca3ede431ef4aeb8b2455f5b7fe8a2360302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023034c598e6d3879bc676b3d0e6552c9f2a2b7099c0f7dfc68b54fd2a284bf6daddecb939e8dec99c79ff04bbb6ff8c771c023048165169847590f5636189053d77ae01f21ac68786e57e62771a6185a2b9b24dde99c181912ff355e037e133a8e5443f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023016360dee3d935e2351d285e1d06065c2a5c090e0ddb66c08e69be12d1ee54925f26e580894d37d7acb41ff49ba7900f2023067732e1367b5098445c642bce04ba55667adfc5251d14705f6425502cb5ceea99b6602b9d75f5fab760d9b0908ff44840302047c435bb50067306502307fa20d25f8ae9c21dee37389dc28acd5f92aeac5ee273d4835b6d23da7913c32b3610836b8be9399175c8151fcaa749e023100999926c1877347ba98a21937bce9853e760975051d2dc680371122f8afbcc252f72cfc010dc41e6036571a5e1c4fc39b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023035c3de83f3c10cbff94cdab9040c4e11a6ce737a273e1c7b68340105ffd66c1bac5fdccfa492fddbff015b12479f29d1023100dfc023fed3e17fffea01d9ed47411911dc826b997a0ad403b9bb2ff74ae11188142f2ab4df32fcc956bb62b8062bbb590302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302254551e98d6a02d9adad5bcafdd3272ccebec32c0b53298a44118d8bf7e6a4a1279c5ae038a154bf3c4fb1c4d6fc9c4023100ce418a63804d290c496e5c4ace683b9b4cefba63a1d01a9cb0dde173ff8db05ec231b6cb4e74ca395d433c9b249381310302047c435bb500673065023100e17aa7f96c95ccabb5b65410e5f71a86b03082c47f73f220f1ebcd9cbd4dd60612d67fff9ef82309115efcb4a49c176002304c04aecbfd61d060675700466d9b5f8fc6ff7f3a676fb8a8c1b2735bc217c765b75639059775e2b4ad08b239d2219cba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100919452308a585645857747256f285c0883a510072424c710915048154b5c3928ad85926fb167bca1b0e9b71b99cd833102305c1652e16f9e0c6b1ec2cab075ee5876d39f9ba43004d3c4f9b08ac72fbf09f217d549ac8660a55a4700957a50173d2e0302047c435bb5006830660231009409cdbad406104afcaef540ca3b101f74ad41f53b801ebcb07166c36cdabf8078f108e28c5f231c23dd652b31b03b7a023100f912ece797665f8bdabd70e6f00a96880155971958060ccec18f0ba057ce9aedc57daed8b17872f8fae264e1ba9353360302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100893d0eabd9df3bbf98c6b10f7360468594ba10a4bec8aef5e53216de49abf4d53e1ddbba8fa655d3601bfbcf7ba75feb023100fe6cb678cf408438d632c9d08895d0a418984c1f8350c73b505ce63080b0bf86e11106bea239d77f9c6c30b922fe328b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b692b88ebd1547e943108c86e1625c3a1cc363b3bc02ed8aefc878b9e5edaaed43ddd3431a2c931529363472e784275402310088ae8ebfbc587ca163287c22e826ae0a19c1041ace93a478f0729eb0893f4b779a6c24e201b7d048daff08a3caf233f10302047c435bb500683066023100b77d964bf314d43132da380595c1301accaae8cbf5be3301f19e7531372c2e417a29b3ff4ead06e5a4f05f7be45085cc023100d47616122751e948758c153a0b0674e671a9994103f8e8063459fbb09ea6ac8ed16686f0b958a6c5d7b0c56e619cf6b20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ed4d07b54c1310ee627d5d186d446d120821acebc1779d4d70be5515e3365383536de6b9e855206cac28a4061274dd8a023100aef87f4d7001224185cb8d27ecac0ae655f38041ef0cbdebffdeefa3fadbc2803e0f22376b5787e6ac59b5f8627dfde60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300097409f3f663703671b6485161861d3824e2f58f062a717980ff92c935594a6ae4ad2dc83f1ede868cb7cae5cb9e6c4023100ec78ce31faaccbb150ffe293a4be6cec11f0b023689998928efe8d282368d70402fdb37581bcf93970a27bb832bfb8f20302047c435bb50067306502307097199187aab25c632ea29746b4a91d0f58f58e4089a3879ce899406c4f6a87f271fb5de548f705d1319e06658e49500231008d11c08a6294aecf8bc6103f2582f326704bac2eb2243c9ae1320cf2206b99d03fd0bc14df48904181112f8dd3cf32660302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306972acc2a1293517cbd1a019cc1916255948bfc165caad4f3b0a40701370cedf0b494a0ab8f27df45c2ac1328f3e9bac02306c9c9272f332286dc8df4ea27fbdf359053817f6c82365be9b18c0fdf8ad6325438b10165ee3109766f26443a022ea740302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023073c2fe80b36bd7ff34d921081fc3ad3f37212a491c1f4c4d8babd7b591a3a53da9fca9373a6b690092edc7d5f96aa64f023100eff29164925ee476bcd7b36381af6e9d1896b1a7c50585576685316781f1ff18ac3faef08c2a2d604e50fe36bdc59c4c0302047c435bb500683066023100e5a109daeca8cf232683096fbbc69edbaeacc8452be8fdf62027ce2e26d04092c5aa6691ac39a3ff7771f498e79fc3b5023100de5a45df0f8facb6c09015661c7dd66ae4250e924298a4b8f3aa46d2cc9cf73a6cc54477df344e93f22f28bf360890e40302047c435bb50067306502307fa04174f5608c97fddb01b3448b88c13a61a3c41c7c6a6b0c075554bf0bb9e929628f4393fe7a08f28dbda9e5b0c7b1023100fc1514aa529e769fb8f22b4f22db1971509b43181a9001fbb69ef92ae8516127376088aa7f75e544170b516da39a12150302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c2415071678edecb34af27e8c30ecaca7390438c0739a4cbe3fc1e908a4d85d4b90cb15e3163ee6d6b52e9c5a9c76e39023100f41d48e1b33738ce31b09dff3e3e9ca2ab7284ca4ca733777517c4eed9a46cfd3db896de2f9ff7916ae3cd874fb2a07f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f6d534bba01eadf49b6231e06483201d367f3d7db170f38e941258733310aba6cc4969c7cbd43b5ba610d272d84030ed0230420286b82bcfb20a4e7498cccb776e4eb24f8aae9002f2fbe144fbd77f6b50961fb7bb5cdda661d030074851d8da77b80302047c435bb50066306402301bd757526e8a496cd445d0d47e35a0954b957dddff4224e85d4291a8c64634c40079138af5a4c781550578769ac42a1f02307ec010c184d9814690f7aeed479e2956c00c11f0a4c8c9c198dbcfdb78d2bda66b0694884d22433b91b22d40cf748a110302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ddd7fc42aa09db586d68cd94f4510603b5d744124da909b7e8ce472c52c945091a47e9ad36a63eb09c0ca07ae4fffc4e023100e92b0cc828a9d09306854f9a15726f1d36db34b268e15b7ac431b51ceabc886a4c3c4fdefcfa8df7959e8f10afbe5f6b0302047c435bb5006730650230716aebb12766b2a7b252769550b3725f0d6e044c8c5c71ff87bd2bc92df474829d6113f484ac6bc6a716f4213ae5f0e4023100ac99f748acb061f8d56cc769a649d2137cbb3941010965d64d0bd7c513102b1823c7f4d6fb3bbb477499d3d47ce1255c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305ff4efbfa3c42e45c0a8bc59a4a5f122874fef7d04fc6de207e1931b26b8c1439a9214fce5b4b7750f9cd8f896a9e61a02307c4ca81934e78e6dada15d58d2a33bee7a8ecd3e418c77213e59028ac43d92a1e3af45daede6529a13ea478f44d85c800302047c435bb5006730650230396306dd1e8e21771f207f2488d62b5c31b34383f2e815b3d2f160f0fcc8ba59cffc991bbf0ee9f38c5c95a0d62277ff023100a02537b18d789918d0c5e5390836a4bf3ae69e93bf1658bbed2183c18131f08d8b8156212b297fbe14bb2cca705cc91b0302047c435bb500683066023100b5468853f746a18dc352259fc4425cabc6c20f93c3508fa247aca18187758291ee820c749068ca14511a4c0ad47a0e60023100ec9af34fbe2f1430271feda7727a640dacfaaf994f3f4c8a518ea70b60358e9992f43538d207bd43fae60fd5d3bd6a780302047c435bb500673065023100a64dd1e9bf4ec369036e24f8d9b96c870913fc5ca3d8804fce1087030e45e3b949668a73c764a89f5812a93a8e709a700230728239396a74084d3a445d9ba0e0817875ca014c8928ceebc3b9ca3edf803ae835c40938e76c74c0fbc6c8ed941b30940302047c435bb50066306402307125dadd6cdb2f56b12004555cf6c49769e3565166701e26825343b62207190345d54771f536796ddca91df8daa299ea0230492a12170044c3e4be74135608d06d7121343859cc8bc88b2dcae2d73b1521758982e07ea7bb7d1d49fc856b8ff95a740302047c435bb500683066023100fe93f7cd87ff21da9a5e47286e3865f574472010c869a1668611088c1562a00f710e3feaeb1c72c97daf4d26e2a9534d023100e491b337e63847a083ab03cf517a0e13dc2a82ef040242afc4b00696c2e1c7ca8bd2de4934892654052eaa2f4aeca50a0302047c435bb50066306402304617cbeb754514b481f534221df64751f96dc15c3683f2e82c2102dbb0e4a1baa39751b9b0297eff10bfd18fe636218202303774f221117735bd3db57b45635842ac310cbfe0c2cbd86b2e09c1359c80d08812eb30f2ab96068728609403ff1551f10302047c435bb500673065023055c84c3e143883051c9f2498e2c6e4e4cf8b85a84c0f7c8322025046368684f65f6d0cbce430463736560638f32300ad023100d67e407573ff4888277fb48af4f71393c40c5e01bbb7d4d2a7fcab84c7ff99b425db9bed7e6463951191d9ebbb5a3f9e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023049b9aaccd5b9288b79422386f3fa4cc6bf7702f54ddf8d555bd71d3d83fbefbd8a69dfc08e739fe13006ae8f9adebea602302be87da2eb7080ff3f53c6209b799c9918e648d8a0e8380d6b66c3077e2584353219be10065d5b63d7031db93f8246c70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305100ea362181ab06c75732a89e294b003a0290ee6e83522669cc97823b6909ad06a0cc8c4c5e37f23b4368cbf381f77502306e9c2d63e207c18054bf94b9a8e9f8651c18c25e4e4a19a398bdc8bebf7f17c138abf103df04c680659b73d121d88e7d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230261c8f33a7254018f2398f61985964309df1988cbd1abc55dcdb6d79e941da74b3bea056de348a6b0371b168929ba02b023038e242c432a65533c8c3d7cb544c77897074f686d2d3c930d024622983ca467d30d5c0939a8248a7e2767d7893fbbaea0302047c435bb50067306502306a8364a716dd7c4a4f9c06d5587db124b902e77c2cb8ecf9998c8584e950edb21abbdaa1567e6b2f93e8a063f2bcc382023100f7f4242924b70b7814880726057c9dfa2d0e978e69221903434182dd0c24bd7db3cb1316953caf81700639f942bfd0eb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023048aa4b275b787ab887487c43baba9cc45edde1d557d53470803df13981dca7cc7462e3724f3bd73c23970eb17576ec0902307740ee204d1614afaea2310d83ca2c97259105c4c266343f8b8ff0eb16c8397b60f3c1d74a8fa26a731e5ba056a9eda40302047c435bb500683066023100bcab922a9e7dc4c36cdf41090ac83a8e50cd3415d91096a82151d29aeb71905f4f40ab1c8ac9cf273a9269507d99a569023100a059cd3e01156393e780d5f1b7d5fafa534e6471ee7632c20817e37e4f5563d980cf2d1b17e829acf408faa3523607ba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009df0ee61ffec40b5f238d2d2bbe44dbf20d101bc698444fcf0c04e9cd46000372f56a0fe623fd266c242db9f5234750d02302feddec3323869a6ed7e43bbdbb637048f0222eac246117cff54c1fa131a36a783bf0f47d9570ac9d1cbb68268f4db720302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304384dbc050cfb4a8b4a6ccbe64afb5a176bab07f350a1e11e24ff4690a3972c4b3970cf4d5fe8577a9fa56b64698849e023014f397d0e86436ecd2ed80e866be17e9deaf5257e38125cb95abeb7412548490c8abc178e5d3d118ea8ad7331aeafc040302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100adcc6c864f75c8ceaadd74bfda95ef14e4bd14756f8f658b097efbbcb377659f6f26434981deb73517e5d0b58e456d1f0230243799db922b88fc4905b4300fa63b6d2bba56fe1e4eb48471e5217f86e46e0ee7e26b335f3d30dbdd02bab5ae3c1ee50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304d4259e2c18fe1e52da0f4f6ac9da40b9b8c12ebcedc4351f7351cf528619c9d192bd1ccce1a3cacee12119fd7259f2002302ce2bcd1381cee0b996f4db4cba1cc83df081ab2574b38a4bff6a5af30c2631b540986be8f7bdaeb15e355651935dca50302047c435bb500683066023100c44e9f52f60cf4fa446f676c801582afe0ddd7ef5f16d73ab4348ab7ed4ec9384ec9968c3f8bd4cc8fc77a8595d28450023100c3d9d6fbda2940f924fe55a20897d4c1145522b6837c1332d232456ac2c2b835c15b84d84838e4fad7db1e7fc18bda380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100953bfc9fd30a8b4fec82fd782067502c3022d8e813dea2f0c3fd09436c5b575b7f1fc88b41d0f0bb08781e4983ebcf7c023100fc3810bf4e4323530a875eb5c59fcbab4d05a37dde923f5ce514eb2f0d2c3fdb5d110de431ee91eb3e6b06cd1f048bc60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023068295ca8b32ea446dc6b7f4da48babc0ee478d336c3b5a6ec40cb7b1f9afcf2b95cc46561b95139ae7a2ebb7f3816ed6023100a1a1b5919c141dd6e2d4e9ab303a3d22ee362f758f1c21f9384ba8b096368c4e011368182f549c3a283922bc71275cc40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f3464b6fced25c0df083f1c2aaa30adee8f601825ac03a79a51e72d0ebfb73f88ce4b743de1d42bd557844cacf855cda023100e763c77ef2a9f57b4d5c6cc6d3433521e163bf344b9687d49d346dbd85deec6fe8925f80aeecce6a8fef30623a963cb10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008e24e222b28b9ff97458b3721362e6fe4caa6ca93e0b738ae380b31824de0572ffc3deeb65b37edca94f4f104f022ef802310098da0f4a148dab9ea0d33a9bf3aede19eff360edcd81cc6e7da8c6726f04bb3430e84af83da816830b65e8a800cad12c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100967e70ef5c18d9f956f6ce8b296575f5c7baa60b9852d277930aedec3464d68d5494805552e2c3c1020e4d740d80d13b023012a99e68892de0516bb47af484f6e25ab67f670a2466a5ac6e1b55841d114e2524502f984826f156e6dd579ddcfaa0630302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e472e7b73e169388f6726e4c76cf2e16654c9703d09e056909a01bbc41ae424d3291e9fa1fd170da940fa7825e807b9a023032815414505b1e447b3217f8d4a8782253bad57968845ba12273a9ecca2b1bcebc170fd0d1eba0004f724b73c6f22cd60302047c435bb500683066023100ded3c770201f12ec7187ffdafd8786bb440e8ee7c5a24f9bec189c3e540c96191be68a3066d3efa1b366d508627c8fae023100ff14db2bf726ab81ea5987aacd109403bf2efed1c28fd6b7bb97e15a3d6dad2ca6c672f9a7753c0bed328a3b0b47cd6e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009d610065a221ca706aa13e5c9dd20a210f9473e0ace8d69763b6fd8ea2fa8cffefadc22c16376c02046dd8f8ecc3045e0231009b70d118c1d0c972af7c5da5b10689eeac361c2dd4f449cb1a9023e3acd18b10715cf9760ccd95444c15227018b6c7930302047c435bb50067306502306db249bae5d8e9fb9c8f1222c03fd11429b738ed6d089f6a2265d2beee492525685902cdac35c09735ee359d993002c7023100df1ba7e67e6dcdd874f9b71a66fce7a41684f88466438a13760f35a491d15421f3a38ed25775dc0bd07f6e455db139420302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307d772f180ee4f4b7efa7ca50f184a3d9aa75fee599f05f6722ffe8a8d6839d8c3fcae22d3f69a8b9e43e6f9de374396602307b41e987f51c4db29a32a0d91e944dc5f174b865ddcc6b5102a8e09e80dc9e296d80b91516dc2f4311fb5f829e8afffa0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305fb71f4edd9f9c37fd1f0adf1793b3770b6edd02360681cbe1d7d07b44ae996ee9d2745948e1973d9eb1a8384c8adf2c0230187177dccee247ac9ee6f4aad201e19b922e1142728d8700e563a371549a678b14784fcb10863c6b15427c3710bb7b030302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023009d390fcf7498e09d844d33daa05952419548286f518d052d21923cf6501311b6ca253ef0926a69dea4c73f4bbc971f8023100ceabd168d0a5878a404133c68afc75ba1d1b87702b663e3dbf5570874d9d2cbca1830b2659fc856a69101e0f1a0ba2b00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f2cc5ab8a4fcdbf181f733022bd8f38e3cf83c1bc58f049c63938bcda9ba122bc200263b9fdd05e55a6a7acb11c7e1be023100ff57be9327c537ede89e8f72f935d91c775d1a9bf8b409f1cbf25a275b4b25b7ff9e18e27dedb769a9d9ed8ee94dda070302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100dbd61d13d3330b6918e5c075a715b8a001590aceda308701c3285c17578a71def409128b77bf92f40469bf2ba60e240f0230094f91175659602c715f431ce7eae6f4d41500db2963cb42a174ed9d35a72e875f72c1bc48bd6f725bb99d33af3ee2900302047c435bb500683066023100b965af521504e429677e24bf6a7f674bdb9c812a670ef656bc430dced51d6883066a1b4df8acd4bfa97b429316740a42023100c168377872347a0e1d68733c707d98c16e0a4d45c6d5dcdf66d9f1e059f5b226744fb8b33357707c2796029d495039480302047c435bb50066306402301411393e6314365911ba1fd53a9b193bed3b67102849eedcad985cd50dc21173037efbb4e4a02ef9eb76b4cc962cc053023008eff7ff241865e6d93da568b18fad5de000aec382fb67f56e923774c35ba68d4291c002cdeee8f86a5d351c5d6cb4a10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100baad49ca9d44586b67d6429f0aa16a3f49bd8773de14f14407b6fa76664ba79afe3659d233a489a3680b10e06ff2bb2202301890669eea1a615e0e656678de8a6e4901ff64a64db2238cd8756e75d14efe50e3c232299de88216d3c6273000ccc3cb0302047c435bb500673065023100f2a29afaf58cdc238c03b1741ad8012fcf6d70216916cea2d9388dcfbda4d9c0395efebecf9b5b38d148a29dedc65ba302302b57105204a590f0aac66df4360f4f57189de508ca7b7dc414e802c1b77d0dac61a631c5f7a53db83ed1eec35f52a8690302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023020cb595d9f65219b00d25906f21db326919f4949487a3445ab17a38725423abcf6f7cb08ab79ceb9988659db47ed4d2102305f128541703bcd4820fa475e56379c74406fa6fc75f353221ab5d95acbb6e3e5347dd0e430f92a22641db16a503ea1cd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ec02145f03a38625da4d4ad7c062201dba89bc1282e175d0ff70e8a488fd070ababafcfa9e375ee5e04cf0e5503951560231009794538c7a0913786d28abd60690307ce79efef1851ded9c8df172d03127272d42fd72b53bcdc474b026706253c9949c0302047c435bb50067306502304f9862ab399331b57ef3c48d9f9bf6ebb88a96f716240d74d378d2bc5c5d83214eb36fdfc7d5ee599b78b90339b4370f023100f758636bfa3968512e8d05b71c6eff8f04001c793f8cfe4f3943369af7bbfc6eecb720eba6c12e459ff9d443e51a1c750302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100dbb8e54ac52ee9b9325f63dcbbc349fcf05a1403ade89645312ef4610c05bbe9d0c7fc1d9b2adb96320c6fc097281dc202306121efb48f190568f27fed333be59f926e3933f17e6e0d257744c4da72b96fde85296ca7fc6bedabf8c4822739d066b30302047c435bb500673065023100a85be5f067a64fc7200a4b56469aef1fec92b5a341c774928c640a43d9e9de4c81032b03ff66088f40b3834eccca69f7023038cdc9317d994b1d41a21bb20039d9f896781e4b92a92d6db9f8c12240e59a4739317375b06f820e129cc74d6ac9123b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100fbbe9dff0006b2e9e3dae487c8f551aef8eb137ea4066b427c6a64e4086bac5f6af6f0f6a0106b571ede7abf30771dbc0231009fa5a10dec529fda9178896019fd40a694e2966b0463be234b9ecd8062b393ec410acd0242449319f49bdd338295880f0302047c435bb500673065023100e938d40c913097aa262c64eb8cb940045eef5a288f7c9f508012aaa1831396bb8ea74bf68d406cfca761f20eef71279d023003b35d6b2497fae016a0348cc748b1b669017453fa08fec76a054b973f4484d734580d46cfdec35fdbaa0b6452279e040302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009591307b0bed558473e7ebce4696a13ebee91e094d019c101c73c2af312910162c663c26a41ac9d1bab755044131fbb202304e0ab012e6ce4046c6bf5e79651eabaa50288daabb5f48223f71d60b0c11f827e6052db03c003c8e07b94e55c766d0df0302047c435bb50067306502303f12a3309db5bd6f25c89b2e602b7904964d9cd5110bdfccb70f1eec856b5b703f15eaad53b80b134855d19c92c602d6023100dcfa18dc8df0f8f3edef0bd32657ea3ca4951721e34974e20942927c6670424b252eb16a30b669834d1e345d1615a9360302047c435bb50067306502304bb5a96cf1e418c4313ecf2adbd21c5b3f16a5132b1e7e9ab02f44755dc91129e0472cc5ab6560f9701638281761f788023100fe5fe27c2b7d5811d3d1f1897d0318b309ffaf0e4e1d2268a2b7c2742f2d819ac9023335105eb1fc35846e9c9990bffe0302047c435bb500663064023052b7ba60e557f59868a1ac590c16490dbfca1c7736261e1be0f4ff66bd577e2c431095bd34f1ddbcc4dd90b78dc84936023003dfedfc7e2b75fd832e91ef47c0c27290212f5764c027cea0e9b1e34a7a44835ba0102fd42bc7ea72bb3c3bde6cca790302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230300d3728099877cf55cc1f90570f59295f2c1c1e5957be7a4fc0b88d268e4080aeeddbbe536c8ea4bafa88a642095315023100d3cffe9baa213e344c4f32724c4d79021315803e743cd7d16ca459107e06ed16b6770333a447ffab25416e1c5dd554b90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100eca158d42dcf82c5bff9c11a768043ac92bc45c5c38f767c99f641c92190894d6b4ee47c56f15a9e305fc38967f41c0d023100de712762f568ca330c40e1e026be5000ae83f51781cd326d4c84c4288e609d029cba6ebc4ce351496f5d4fa9884b457a0302047c435bb50066306402303f679b13f9b68dd6991c1e147f4627adabf34535589310668a457f4abad12560319ca35e272f1e1b3391c8edfa21719402305164d978a225439f501ee9147cc1d159cc014c7811381f93d5e6d3bef34c900095602ea4534cc34c526b41597139761f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100885f475ea0d2e6a577323859535f84a0fa198a6c396c2c9ce05790630cfd5926fbaf4478fa61a076c222e720ff3f220e02301dd726f35b819d673ac8a85d62dd88764f67c132d912e0847fb044e83a4badee8d247485b6cba2c039250e333309d7600302047c435bb50068306602310097c5065959f5a5c45c9d2d1455c5e2d27bc43e7a46aeb01545250637fcd9ec34d91ed3f9b04134cf6923e3e0fe100b63023100beb52e69d22a8ab9653f46acfde543426a8b09a25c45954b66fdf7dc55db7a965f785b337894cc4d7966d88bf79d226f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230403df0b417d0ff90e45c66d19baa7b18e39fb04cfbfe3f3629a92aeb22b0cdbd6bc267f03d653490079a893a4781aa7d023100dfa11640a7703b12457174257df0b91ec89cbe85e563e8a8db64bea320080b15bd61e18d1bb7fe3dab76ac05ececcb6f0302047c435bb50067306502301dc129dd791e3eea5868b11d59e26dc03e5134c69cfb6b7d2938a81a80fbc6cb18f62b74d3b9fdbed55bc8eb9db000250231008e22d61c78926138674e5faf34e92e8678365bc0d6093d3aee50c13e30262f7fdb2c6c5e54dc6d20b30549467cbd7cc80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230794667cb739c02594bf1ce4e617ff5c41b0312a706e7cadb8689c200d274d593f0d6fa7902d32b59e1465080d29a5c2c023100976faef8175940597fbe72d9bb1e17f3df2dac5553998d416ceae403954b769ac4560079fd1804786e310901864da3430302047c435bb500673065023100cd973266a69da9102ddd692ec5ef5c2c23dcf874d1fa6fe1cac6304b96ff0048012f055f94f40206914753bccc4b404b02304f795bad9199f5641e5fb1d4889b65267e539c527eb9cc6a88c5bda3ace0e9168b5d0ff2ba1d7c4b29227d0cee2527c80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307d0d78f81eb815143ce3fcbdf778ecf29cce1e3273a1687aef24d4e59c1502f76a7e6aed9cb9bb337cac69adfb48330c02303fdddd0386ec0fdc628dfa6d41889f2b57d14df2697ff101913b2f97141a965998fb0e96272a39f94aed5f8a2b6719580302047c435bb5006730650231009155378fe4dfb89fdb2eb4f8f55af7eae9a56008a433ed4bc25123a0ab5cd645b0042b48cd796e9ea271c5d131bcc49902307df37ff090d7facfd4774e931f8062b662a2fafab10c802fd2a926f4d19bac6f901e9a48d063681639078d0d244c26ee0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306a375afbe9a712f345be5226a667d1527ab862c12ea39c2d5c8e8f3b63de0b535bc8e770dcc42527eae64706aedb831f0230388a6c1218ab91258678201212098d311a8b36fb38702c5d6f6d3adafb460d57ebeb6cd9d05ca7b5a6f596fbcdd97edc0302047c435bb500683066023100906c8fa0f775bb45bfac5083d36ae0596a5d30efada835af4edd879b2ef74cefb29790e06836b6e0a3fa72a906a4117d023100ca0781767e5c09c1f270902ba1db6334df4e936d58aa2ad4c7da979d310e6f2c49c491c449ceb9a3f153c5e25362ed380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305263a8e3968703552160919ce4c54a49a4464000d3b10185f955fad3747c445250e8470dd3c8f76e75b5f3c2bd4c5fcd023100e1b8c9cac6e65b27f4cee0e43cb50d889269960e348e58ad1be903dc3df8c25c9424343532597d369d0a1a0328f977360302047c435bb5006630640230317a258319078578c34c71f9b3fa426af171ddee781eb636c33fea2c87a9aa841f673805d1808b8cd7ecc14773d60d4c023028485ab1669a5baaf3030e83e16b24e246dfe9d3ddfe61078262f156c28d60add6d48f11d4a9c9ebfbe79c648f1bc56f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e55c0393c7c702abd0408f059bc52288736d355af2f156164235ca5118366467ffe3d4d963c9ccb8b2d0b2531998b3140230188391548e39ac0b057b1fad00e7f90442754dd0e89f6b372e32be4a4918f421e9fc9c9f4279df48c1ecc3c18f8476e20302047c435bb5006630640230601614f9dad1e4dee5efe06b316e74c35d2e65a25bebe9fef6ecc68c73250d293c07832face1395540d9b9faf1e36e0c02307d4475f5604e26b9c39b3edb07a530a2a793905a5beb26549304a72c03023b22efb7cf2d28ddc5a116c546ebd66869160302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009556f14d01ed37b882f7ec21731652225591c22d3e8d8732bf059cd30d8a396b4385d961890477d463c048ef88bd6ec90230603f00b223ad5e8db9fbb0082399bd44bd1e41a7099ea3fbbe25bd2db7505bc4bef671abbbd2d93a487185ddab866fcc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ca8def7c5ad4b5f21b1bab8ad23b66f7fa1e75e3a05eb18fcc9a1407297dda65cd8fee1d4caa1cd78f0081f994f41b7602303602d620c97dc6fdd33f97dcead3552fa0439ea0d29219e547c6345becd7e984e9c4b098656b485acd327787ad383fa00302047c435bb50067306502307efab54b2221afde3c002fa76ed023a54afb7be4199ab7440dcfd4bd8b7752c41df4565cabc9811a1c287add50d449940231008b2654eaef858d39328c4e619f92edbea36123da512e1d1da3dac9b243e645ea08239000160a1c96440f1262ecf925400302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100dec12f4076d42fd0a9ab4f18eb52d237285393ac73c20e2f98545627d309ac1e52e418b3acb453202824c39cef75b0790230702e579b8e9259bae79fc8876355e967cc72946b506113edc9d68bb320193de6e0ac0dce7ee1d9b6141d36490f7b06080302047c435bb500683066023100e6f2d4a6b53338e4ffbe83a9b6e7040d29b06fd03c284abd13918320fc84f2e8576107333308e29410922fb9778a63af023100fc660e2f7f627d1f331570207953ec8cdc2b34a1703a7ac60e2d44b9923021e6c4f5c00eee2419f7ecb29f35b711c5d70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c289600d415d946fdae0f9a349bcd330d879d7cb0e504c56bb9466fa6dcbb1c0433f9121ed72a21550e0ff0c670dab95023100c35c0c3a33cd6377d0e833cc0f6d16fd1931f5413dd073e0feeeb7e68f1be2963513c3749799260c20854c1ee78e2a340302047c435bb500673065023000cca6d8ca75047757ccc71d805112209c78a4e9c9ede5831f264fd50ea343dc4d47f402037ffd8939cd93effe9e6bbc023100d5156d8302d491ea0374f43fe17b703a4c6906658f4ae28fe47ab1205c614376dfe85f3c6f903a2846d138dbec6ce1dc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008a9ebfad689d497116a09ae93c976cf53b36b4c5df35747fe98619fbdc6a30e35536b7d62ee715aaa43a40fbf4ae6c4a023100c14668a42b8fb892c8aa7dc712ef242922dfeed2ac70940d4b8ad3f9b58c197bf0ac4453195ea21653cae2b10d5553300302047c435bb500673065023100ae63a5b6421a344c8769acd7e5c0fb91ec16f22a5346c8873a4fba83a9346ff687f18657bfa011e738e8c7d5ed7bd1b302303439ff233e6b64d40dcc9ac845febf7cf020cf4116fe8e1763931b41b235fe85d3fbb3b06c754a4abed2f2c2a7ee15800302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f33d287cacc85d9f26db25705135c1d57e525b14913a9122dfdc8acb7827442b5f6b1710535a64bea10f68c53a5c3217023100bed7536e792298af39bf2c5af1aa84186c855a4203a4564591c626505041abb4cadc6639159449d00d94df340ad94b9e0302047c435bb500673065023100da8d7507e08ed9fcfaadeb3e503d893f2d835602519977fca35662e9ddf77547a34769702411e280392d65710380dca5023060618bddca8ec826999b7cb60e586d6f5115586d94b965aea1629bebd3b51dc0b3c7c33f47cd3fc7d510cb9a0a128e520302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023027195117238ad8668e5d0601f6dcca1d88884cdac32a26d1f7e7fbb5ebd85c87a83f9541ceadf96a80e78eaa633e3bab023100ce4ab7c6d274f9ea5f235918580e3558dbbc8c9b39684b1010509b59831930a1ea7cf00912d29d4ef9a37af2d85e9dc50302047c435bb50067306502307b17759c3f1581e9268886a89acae7260b42d1aaa61353dfb136347303e74c323ba2c67ea84d2fb22c4b39ef41ca21cf023100bde8f240d2aadfb2e2649250dd7c0b1cc37c83e9e857d67152f806b5a2f82b733077fffabf1c265a996a9658304d84be0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100fdc45ec7d855cef5cd3ac722f698517dd768eae4aa0880efefcfffce8362ebf58e48b8deb63ace7288c24801489ec08102300348757c643ab51dc7af1fc94f98aac11be749504ad1458d6af39819e0a6a046eb011985282c21ac04ca9fa051100bef0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a7223b723d567b1c1b7b58c06cf5145f993359004efac10657821a0c6a17d11ec11618583dc1dae85043e98186819593023100f22a22321e059fc72da194f480ee82d3040332c03b64f6b4646b8deafff94ae81c3c7d29552b8122743d6d59840046120302047c435bb500683066023100b16f52a4ad79242f53f51b5dea2c4f9985063f261571a44a6c454e03d956d1afbe4f979572a23055ba7a729549ceb0ed023100fa04cd2d67e9359c42d5893af4c44b01a887eb09c92c0759724840f1cc0a8f06ea262a518fef99ca021b597d1ff61e510302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306547548711d01b22282bee1c3513ee870f45ae729b830748bd5343f02f2bb7e2521de3bbd7a60d5b97c9c8c60fd9552c023100c5f78bf4310a895df61fb55e4cbee4d92209b7d0412d07823ddb8578b288700b44f6c4284b9b1d3bd15ae67b6d4bb92d0302047c435bb50067306502300ce108df7cb49461b707ce3491a9be9b6b90549497039d7086bf62d5279263d275686ca299665bd0a21592f3c3c495a6023100881f8e2f8beb6781fc482a78df775deef4ee93299b9b3cc7b4726c124ae845f9a6d96986960eb2a10d04f67a78a581110302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ff17a19c42e513bcc8509ef06e4546b902597b9757977f407270397a026b46af47eaea041137c1abbd3fc2724d3d52a5023100be3aab693a2f8207dbe867c9d60be8f808835a5b70cb34d5346c893c238c60c6c410842591c341cd147d51401b061f7a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302bb3575cc67f8b31a53208e648b948fd9a49523296d37e0ebf32d13e5f2d58eff496118f7410be7073868af38c18d99802310086da6913c7e05b76307ec3990efe73ad4083d1ec745fe6d98f8aa6166ae2997370ece699454172473402531ef57872090302047c435bb50066306402306f4fb5fa2b78c686c201cc995f3d799c182e2a977a31edf2df00276c9c81777b31fa5361ae7831208e6c145d93dfcdf302301b1ba44b5cb841e5de11b930b7318874bbd079625acd77dd7fadc3c5856b8d4225fe23daffaba12fdde6a71a1788be440302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302e5b472419d8ae811cbc8ce16453964821b8fa66c5828a048d1b1377b245bdf5c1335a4b4d5cc48916196ceaa95e38970230475695016626e516190d82065fe15108b84653a5292027477ebbaa72987bafb72a97377bd419e47c0625770f24f062fc0302047c435bb500673065023100976fca9d28157d1a120d0bb2e2bdde5a4f7d31a9a60f773a8c8ea12632de42f49af7961d86ad2ecaa003ef1c7db40c07023036577cf9fcefbea200f905a5649fd7180eb009e5dd6634469c1a18dd69382330f47e796437955002b219c66aecc868050302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100bb42e550224fa75ba6b92d385c2b186bdba9b56f231fd2b969c72958aebcf5fc0f6f940bff815b8d3881d690118f569f02300168f52c16dbd0e54a1aa1f1f25dfc32a8a1d207090c9693724310ee8256a7785bc8bea163d9ad636b6491c0f0fefc4c0302047c435bb500683066023100dff95743d13a1b2db6959bf6232b2eaa6dd0e1d963b830827c0bcbcbc6bb3976a0b4626e204a8b6b617b88963ba98859023100d2511effee8d8d5bfd4912fd1dec6e851b01b845b1e9470276215db1a94631bd0733f269eaef9e952dbb4dce3b01b1ec0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f5e678cf16482f754c303c1d34829535ac33e8055e9135ea844709cb52e8e0fecc4be186a05ce60bfe67c323113b8d1f02304cfa22bedd2669ac65bb2ebea6b4a386531073efbe0b9f637b4e796437f8b8259a7ab986eaeb56963b4b8c405366b95c0302047c435bb50067306502301115bc1711c91904500fe5f035675fc76ca2ce5275d5fd9d8501d5e6823072537ce57449e2e07191fc74be1eb604c5b3023100dbf3ed942f8b893b676da203f441587908cfe91f7e2a98ed478c79007102660bace7dace22da2d41875f01697bf04b330302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ee816e6765298592d4d7bb6775f771a13bdf22ae6341eec261d13b9d45c6efd6ce0143b1dc8d1bbd877b7d9f1a3fb4d8023100c11d462dda9a871953740d58d521d965eed980b8cfb33bd40868769d764b6bbb5c3888167939d5e1bc64c3f6e8b8d27a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100905aacbac4ec87898d751dbd3b54ed16df360afdca38a83576ba4f4dda874117e3b18ec090d9e3461769b03bcbfcd15902303fcf28d467900021eb1c7d1b65138bec5ac51c7ae2bbdaaf1c83a4c66c6b24c200a0393c2f09f06b5b52315450fecf270302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a67dea3b1f88b026eaf7fb87bb68e39352e4a999ee0196616ed4bfa4dc442d52d3a601bfe1610709b5248f8f7f34505e023036ad0f608311b5de4512ce15490aeed61ed71c32f1a9ecf192326d80e838651f1a3d434b51851fc74fffab1867b27bda0302047c435bb50066306402303ff28dc3d2bc7f56481702e14eb15d19bfea85a13cd8bd1842a34ec1ced2ec9e277415d5d4adeaa4f0d6dd1c9642d4180230342c7e31017bff9a153ad537665bd312d7fdf6c597cc57fdf9686aa7942875f812418a76e2862f23a2a68c74a6c341dc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b766d176e60f141a11ca3856300584e9a3cd43666d7a89a98a15f741346689a65e3f52117c33472c4c0770f0527d70ab023100b288a159175f5719335500142fcc5102b7822fe73599ed9d426286498d15d763c3dcc9253b605a3497d9651dea3d84b00302047c435bb500673065023100c4983d8e177a491e23e3d038a5ad61883ea566eab09c4f988e15ba7c2fd0da2f1db12202f87cc37bd737175e69147749023009f6bda0f32e3dbd0b960c070d21ac9fd57e79e137dc875ab401492dc529ab3bbe02c7d396d2451c50de407230e892670302047c435bb50066306402306744c6ee11793de990325e4a188bb017d28de35a5e1ead6c0f2ef72493e59b241e92bdc1dd3f1c0644f076cd52cd0c5e02302cdd44f82539f815982accfceeda585855c095fc777e9b20bf4662af9b2b967a90cba57ccef7c0d442f842d3c55fde2e0302047c435bb50066306402301a40cd8517f86cc982e8edd567c6a10da6049cea2c880e2e3169c9157c69a0944d1cf4c19c7112dbc68222e933753f490230428e081d344ab200018b03fb2b07660ccd9dc2cda3c2266ea858543fe8cbb95e38fbce138e57afb6922ca9a2f2154a250302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303ff39adadf8f42acc252eec2fe685c14f15677284c83031e1ea71accadf502aeb2ba8a91c23a2178c410841cd849d4cc023100b8b7f140946b92e7af56ad37ed648bb7545315eaf5eb0e3c57a310f1e7c68b4ca2b5f16d7671744a395b8813c9cda1000302047c435bb500673065023100bf4e3b20371af9262449267f3a13cf5eb98fffaa5ac77f254bee66fd72d9e53479f96f5d90ebf1f746ab1624e00166ff023003578d4839f7677e44689083d38df2d56eae7f8a3714290da53c8a548d3e25cf283de327bed61961426e904c31953e1c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306e9e93cb007872b7069cf269753b6e9325b22a0fde3c8a6d73aaff925e10d641f2234975e6187b77bf85ea7d5420329c023100ca803282cdac01c05feca8a3c3f605e19e1140206a4a67fe83e6afb76fdf7d1bf43817ffa6455430709a1c1811ef1e530302047c435bb500663064023073ab61d6fed600c79804ca4c3f675b3eff28a0093f4bc91a75478691a401d6ce338ad076bf61daf096552f43c8cd699302301a167de7f41c9a2d32a3ec02d99c526b3e8bc04f2003b01433aff85d262f0ebc8ff788f7a5204595bd1938c74d93d1cd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023031525136881c74ab31e4b7c4b6a4209cbf1c0a91ea215743382cf5bc3da63eb4608aa5ae25681d9170265131a32beb03023056bb02f87ad8a15aa41a8f8fae7f08ea9f8731c32ab6c92a1cb4bb687d9250f6be508e0d4882ad218658fd4ee2238ed50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301ddd789469a61ba2329f81f694490e6e8ae72289725d598de1144c6e6d632f36890442eaebca858b495e5680fac4eeb502302752c6a8e442de8e2d4f5c22f7dec41eb716f0ebfec1e85bfdf2288a95e713b39e30bc932fc8fd3df6e0b532dde0e2f60302047c435bb500673065023022c917f5b3bfb1443a2b12d34eb9a3fad3540a69fd30c47caed32bfc1d8a077a1000860479e6e344678c3a03dd90e085023100fe9126e1d3774387e8f63d118146e80888e3da0ae308d041dcf152648ddfaa4d0fa27260fae6b0803402cb57ab1b343b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a595274ed6de0c47071a9a84a045f464ecc3489628e4c180453204a19f2487edba9bbff0ef34bdd9b8405ed24f183dd102300231cd7ef9ddc0ee3531172ae1e94763a7e13379f461c5d7582129ac87a818b0ad7f4a45f19c3eb9fd08ef1114ee43d40302047c435bb500673065023025262abbe418b9fccdc675f023349047f2bf5aaa9b470955af158f03723e4acd9b916e56c828b9b2a7db7c54422fc256023100e11c8c1abfce662a8ee9a58371876c3b5dcde281e9e9d85b01a6e9bc6804b54a3050ee33f60ca5e5e0a6d9200eb4338c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402300922d71fb479324c9dde7316447c0a41af13d091bc27c800a671240c0e6aaf685c3d428f6e19fafaf2eeab6a8ea05f870230560d2d474a4c2210b7f231d80666a4e896573c8f4a531a13eec05b964fcb0308c1e22bac4ff4352bdd5c5cdafdf3cce90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023025482787da18c95b63fceb83b3e1eda48934ceeb64adab3585010588e5c2e5468ccb2feef3346917f016916b61e4cd720231008af483cebded1eb7284ace563f38f1893d3d3fea1561e38fdd5d9aad2e98468d4ff6b28930679eaae9c21432e65eeda30302047c435bb500683066023100fb2d72fb21afcb60111e2317aec490b8369af0561f444e71c397e6ae943ded08f25d92c0c233fbbb5d2ba38a13d17c7e023100d0087368633b016075bbf9d9d14a0eba3b415bdcb63d8f69f00778da44835ef83f7e4e67d4cbff1ec1c3542a991235e60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310084017726425224b2ee7afaedd015e96ffc9fc555322ff4798a8607db18d864bbb4a260afdde2f8d19f76669cee580e700230074b2bcaf6fdbd71ff50e4ac5b36dfd95decbccb2da600c9e6a39c92a64c9d0e9d6c799c597912bf66c1314dea110a340302047c435bb500673065023019f77a8b60d22a2dedcc7d02137ef4c68858f3f506049fab25125ade424a785ee8588634984908d6bf1bcaa8224cbe63023100ca214ba582f6036a7c95d43dbed1e9896990c8f95b49aacdb497760c7ec3965a2c723473fcd1e263b5b140e92efc56dc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100cc95d521f669514fdac4333e83e9930f4ace8d7225c2f92c2037b4de7449ad48750d2e24f3d2ec47607f395805569cf8023055ace04061b1884e6bf1930617028aedfd9897f5c56f731874d4b2e47d3cf42c527811c0aada09cab4844cd00b1e4e300302047c435bb500683066023100eefca6173d075c297ae28fa4bc0586353335464417fad3e253187c5b5512a3119c72d5b452aa9f5bc6ced29df9f11268023100a2a3359215f3936bfcbf0f5c8f0dfcdc1de2bc186e0df2cd3fa204d37974d2abe8aa8872995f7414fccfd8eb39e5a9230302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304da46211e50a10be17c9ec26f806474adf7cdc1a53d554f2a09f78ef10e425a508cd37d4e8eed15185770aafcd1528af023067c0d6b94c6c533efb93a4e2dd16b65103953ed6a6d11c452b39d0a57d880ba4896770888c0e8f7ae8229be201efd3e90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100eebbe9d615d02dd8c68cda51c888f2b492b174a5d40a3248c80abc7cbccb227b4b3ab0b17a34b15aa099a621da11e21602300432a5848bb08edffa15871194eb48293a3ce88099ebaba2885ca503b76f91c360097094b57a3ea2c534054145fdf20f0302047c435bb500683066023100fce451b302cd092cbccc34c40d86a772945bbc1c76beb319fe4e7d04c27df80ff7e6f34c881d66fb8a6c521f5d4a702c023100db421730b3929fca1e9f780c5f37dee51438a72c341e5e972a8a5d114488a039242b2dde0820e3e2c8789168899b8e370302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230605e091dda94f764fc7d4ab62a1431f9167ada853cf9a0d334dfc2f2e8799a51366aac00e5ccb56af5986b018f770cd4023100d4cc4879d1526f5d1ba29990bb7ee97e6b506ab364edf7b7b9646aeaaa7da84eea91d8707ec1d74fd3c62f46d840f5a30302047c435bb500673065023100b1a42f930e3d50b0916d429138223d731aef92908d558f1f4f71797aec47339081b82e0c633d859967298e91bc0d06760230193b2ca1a62252f828416c24edfc2e8d35dd6777a575cca93871e1441249c08c9a44fc42e68e95a90f32350bcf426a630302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023078cc0a0eac153646733cf45e745e52b0be24e977e1a58f44d27d947d6d8f5255cc368d0628b6c8bc6824b0af41b72b990230138bd685e0a52cfb84306e09bed15ecb2d151e2483929ea0ab4b23434806a190a64491ad55fe2845f54d8771dbd2ee060302047c435bb500683066023100fca8866b3a7c5240972cf68e731d39e0f737fd60dcafc1dbdcdf440d66a8860efac10fbef9d7a627086105f372c33ba8023100c51a2d4b44c9c82a0f3290f8fd68c16927ba8676a445ab5c19588b4544d2bebdc22fd29420752588737799e9c01e8c550302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009aa25cda0f9402ab60ba7017447b6f48354a6c4b091a19d0297fdfff1bd819b8025a1ccf1a5504c048df633ecbe59024023100c90329324df48def7549951da5db7539a2dea8c636702b384b7ce6319736f37db45e7bc2208de01c2c77bddb8d986eff0302047c435bb500673065023050fb0d933c6c7ffe81dd00ee9612ba7aa723b120f82abc70f81ac8fb5cc3d9f2b7485b2f2f309ada6ff892851f6ea777023100b1af49d795b7d5fe31075c52922a878541985d451118b66659131f4bac5b6b11f6de268bc553cdfa07495ecd5f12a7700302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303f53f118c4507fa48e41aba8d8f39cf15b97d68df7778c5a6d1a9c269105cd0604d285610b8651d00dc9ffc60c87173602300cad55b57557eade24a51520de1176c347b051261ff7cf1133f99c04c75212ab4c790ffca9ea2f0cdbccd1529e3da64a0302047c435bb50067306502302ce9c76864682c0e71eedbabac12a519b1cffe3d567c9106fdb3d3f197a976eace27196fbd0699630ac248d4c057ee1d023100a614ed4f9837dccc304a13c2da4d176a40e07ea8b67036c1a7cf4c8380a42439611b71f94be9030331f505fd155d55360302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023076b3d2aa164fef62bfad389de87d0abd3deb520db189455faa42dd45dc4674e62e7cb6c89cd2a713f6fe51d2cfad30d6023100b3faf6f3af066c7cd376ee96083c94fb50b6a1413055b6bc24ced06384fe805c590fc744dda82937ea1f96e0778e8ebf0302047c435bb5006730650230287e63efe007e3ad2d8930ba63ecf01b1fc338c0b2966a23ab84f45f47cadc9cefb36d3e34099cb0c6ba9fee566366ce023100c0ed35a9a1cb5ccfa1f02f5c5cebda112fc89139331ba3d686bdb32911fde35c2381d2dc5ba2f4fed9244e34d6998fc80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100aaa7d4852f9c31023804f2e9f541c74cd12310b1c22420db66c52a952c7cc76bc77e21723ec664b508546efae686542702305a988fe4c92f43c04da72c4fa2ec227ea8d398509d0c17ccf3231aadacbab070b0d1dd6afe1836e21a506eab86cbe49b0302047c435bb500683066023100ef87047814eb83b2c13c70e6db9c4fec26f1ed7e58a05e1c7f3f37c6f25d87626d014f035ba3599b66a4756474c973d2023100ae8dd794e3edda32c8a48dd3c8657cd4e378ebd10182813c5d4897694fdc2a6e593907d29ca2951a9aad43479e8ee0010302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009e3ed61c7037baec722b275a749d73f5799dab5d22bbccca9f083ea479d00545ce6d21d9ea4cd3177489f026e83f27f0023100de1478a6e3d5e43094544ff3b828a7137186bdeeaaf2165b1e911a87a9b7ce6a01ff4b666a9539cc86ba611ce71960c00302047c435bb500683066023100ddd05152d59d768e42e4ae2dc8285c5a8d4c2edf3df8f45f478de6c2fa352f52efe501d03bca9b209faaac79af866d390231009c46bc20c4c20ca624aa3076c69c98f3f35183d5050fc1c45d78adfd857fdd482364d8cec8072297f134def3bbf95b800302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cbca6dcb5d299c0a73e168940e0c6407dfa6cc2f2e2b22dc17ad5208b85b7c86b936d4cc521e4308ad3d39c7ec00a4c5023100cf8612b2e316d794ed082f2f13bc0e5f9cad56db6c5325236208ac3020c84169526d4f46d0bfd6130f2498baef94f3670302047c435bb50067306502306f0642d4b329d3f836172fa5930911f78e06f463d8e36d29c87fb419470143a5733b70f92b9fd41fa558b9abf69ab8b1023100f004398666376e764c022ea08a915992092ba376fefed01e351ea414ef7de2ac6bd2efacea1e4dc8122a58baee06f3200302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d243c4c6dc4c917be644e1276fe57bbcd2939f33b1aa8a75cba6c5bf0e277bd8c12155068b22033e9af6be1056f4517d02310091d30cecd9aa1ccbd6d09948a3d6e6abac3b00642cfdc180fa9667f26fb7d3cb507104b6977c78a2aec5289dd07f0cf10302047c435bb500683066023100cc7ce4002e6e3d6321af3f2e4f3e37db4c311f3b914a989035b700581061c615101e49f3d85ff33168274a4ec9d055c8023100dac2a94958e6bffe6b610e78f7385da0e85c2e8235e9010d0aa1fe9a673bee8c1e769eccbacee6ab6311b7eff6f97ba50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023042c3e502e6314c38a75fd05e954c9298b4db729f706f0e2556f32d84fec2ad1ce3e91cb1248f4f1f7d9d276babc47cd702303f6a8eb8a49d16f210ca25e770c0bbcf4da5691b2d6caffa2bd08ce732ba011f7bef2fb5f4942fa551467fc726e1938b0302047c435bb500663064023048ee3420dd2140aec62e0ec0ef6aa205d8d964799bd152d6bad2914648d8fac408489e493b2930fcaa417a095248142e02304a7cd10948d69c2bbdf24a643c273874bed398c5e93a8da02b264be5c5cecbdeff861c40a0c7189f41331dbecb53bd170302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c5d4033555cf6a88b7d8d5967be39fc686d76e75dfdd9f089d53a161d63719ffa5f4bee475ae486866b5231eae22eb7002307ad490cfa6232d64842c487ca876f30e71add651f71ee11521b4fc36e5789c034feb740a911304336e39a3d7a35f96960302047c435bb500673065023100b318029898704ecd51a17a429911089c0de1c017a06f20ee584065c2d39eba008c0807fa332424019b8eac4b843c14fd0230530b76455274c414f6dfdd48e0512f4b2d0f7f999218775d9cfe306ea175e08c93c657517979c2a63249395263531c290302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b38ee371d559d2ce314464acf945d3f445b5962a1acceafdad582b0a29f8f8657e9a4e60ea5ad69fc1285f09a88f0f29023100a384d011b3f677a22e05b330160778fb17e1f398b4ee5bf008500b98b6bad0a80b160f81456d482d7aa2dc393332bfa90302047c435bb500673065023100b633a67d6c3865f420bf49427b4020b96102a8ac94223dcbf6f2186d9b65943c6209343a2a3e4d8460f3237836c8fd2c023041ea2532ab4a93e48df482f0fae3c800a9972bbb532ba804974dd5c04aaf91ecc2aabaed8377319f3a22c7f96337353d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d02a79371bdd06628c1c998286c9bef7bca426d1aa92610d5c44840d31d2b4132dabd62545aba4d8ff29375eac3df203023100e34dc01e11ae402cb6835ae97becd7812666fdd8022c249d6572a4e0b38fe2b15874d550205599dc4f2efab6c23cc4420302047c435bb500673065023100d79ee9616e665b71021dd3f86b4cf960b6d5a04a7be5f4968879a18eaa42b857285bce7b99da66aaed6ec3464e294e6d023038f2d77d1a9064842babf8c19de09f4f064ebb1b62a5a2fe5dbd5261d6a20a9282988eb1e8e0bf9711d31feef3fe2b910302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100eeb3900b0fa2937fda321d7df8d68a0a9eed4f04898688bfb987acb2f4cd795e712291365fee2d37558be966419fada6023100f306d3dddde703f23a3c117c8d80459a67f05d273b0b2c6e304b29b0cc46333a7dd50345ad707c5c3bc27d19870154680302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300761c074332dcbd1046baa68198bb8960800587ffa213d756d0a38f6b282ea32cf8f19e105270d6ea6cf7198414c0d74023100dc5f24d599142cae1e68c195311ca69828bfdee7c8c8503dd8e29172d43683b42c41a37ed2d7f78e199f779df748becb0302047c435bb50067306502305c70b43c94d083c4a13c8c1c8e0427e9a7b7770b9d7e0e63dadb0c89dbe0dc0fab057f9676202e7459a8269ce4887ec20231008a8c36fdc667c35c302115fe50ea6401cee1ff40711f7c732b511e9807910fccca189cd2fd322d288aaa4cd91ae29e3e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f9de187d70a24e4e8fcaf512ec7f74430f3aa731d1380680d74cd06f65a0f3174cf34a26a6dd8f99137bdd8de367576b02304a076e0614a3ac8825fd847558255dbed0ded61dac14fa97800ae74d3ee7c99fb5dc24e78bcd644468ef233f7bd24d920302047c435bb500683066023100f3ba3c9b66d0b4ec96c0eaa1529c891cc33e6ff3b1708d476c994f86f82916696c2c2ae80db54443aaa907b5b9e0dde8023100d9f1befdea3af34c62107933d6a08b81de0e66cd0d73fcfd4bb1fa69802214a20a54d6e82d1c1486fc3ef885f5d2ce610302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c8d757e54b7758441eaec4b3b8d4261214a7a45e5cee98ed943207b2e7896addd4f39b6cf399d1015a027d78f78f0a07023066792a0fcc80eb543ff034a4b2027e67cff216f35384c38dee409eeb4f87309abe6aba0f91eff6b58e91bfaf7d27b7390302047c435bb500683066023100d2b0ee8d813e91b621f5954d6cce3857235ed9ca22343eab4a59782aba75d692c249bf1afecc65559837303cb5a225d3023100d04bfd413885661999c769858d05f64e1136a61ac76031cf84307ec9d79ce3764bb391e2568c392c8ae5f3eda783c03e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310085b812df52d936e4eedfc17b1c5d93ae96068b868a8ee9803c4080b07e1079a237981986ef6031369333a8bab422c3250230369305e4536fc7a93e59554726231d8d7f6804e5f650a2e9b58aea657e7c04f904778c48ee7e595ea604a76d8fa3c10c0302047c435bb5006730650231009da1e8148b1234ec7f3f94bfbce24b65b2f52f66335458fea87adc2c10edd477971fdd6c23a004dceedb3da5c5d55e190230462ca67df243cbbe61fa323b654dbfb57cbc9c4974dbf55d4485d4235a3354cde5413ce1ee3065fafd935e036bbad1d70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305138a7a28023e7b1184204d5bfdfc31bc26d692d356dff490a608c9aa16ce206f85856b9d8e6c1232ca4ecdbbf01a2ad02305f67e68f6a62a7954a8b9b613c31b3c02dcd0f94df8ddcb55d2e81f2a5cc1bcdc16e875b9189d4621ee855c1a0c4c3240302047c435bb500673065023100f08970dececa6fb04a2e027fd52a4ea5f429b0c15998974e13d2fb1715b55ac0d0d86cb5bbdf1ed9926b8453f8fba6d4023003189ad2a38e9b713b6c320955f5e961e7eed3f18009c72efa65461b07f97dd4a88a6d3a4f532f1727ad39bf2776957e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d0ce96def83a7d0878c747b70d3e5b4a9909b4917613f0d258b52127d6c88a8513b7f0f0f1c80f753743f6956d30aa70023100fca92aec8ef8522fe3afc2fa79f5718bd19cce42af2948d902a52d07b4db5584489eeed5f2ea7d92e3185e96da6ccbe10302047c435bb5006730650230734257b432936540374aeae9064bf1ff8cacb8c61d741e542b9303948c08763962bc0cd33c3d1d60cd2712eef102beb5023100b96bae366f87c796c0452dd1b1c6e2e2507b0646565884f4239be2ec399d784f2538f18da50a3b534dcbd4bc0c22d2840302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230338c199aa3beb081471b9011f59a7b203dbc3d366d3c3f272352222f34fcbdfd2cc9b3fea0e7d23b2635cbc716b4b8f102301cf4b0b35ba7661c6eacfbffe0c05713565e3e702ff83be41164008f65c7116aad32aa330a555e91dfdb80f930f507ca0302047c435bb50066306402301fbc9ae37b98831a4e6cbab60773cb0f935651bc388b8bc1fa8b4e576ce4a469238e6fe955e2d9bb08ba55b2773e7dae02301e0784e800dc682b29a9d0cf9604dfb86394ab80952f95a5303c8342c2e87b47b80b4e85be6ca786dc986a790e2dd3220302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008037743b0a2a20056ca903b8a94231729445d06d4fc71437cd9ac50bb7441fd571c68c709ff07d4617652bfea644b5db02301efe77d8b260bc36bc6cf498af063d2a28e7917d87c1ff3e88fddfa3a48a0326f8df758296d91b1645ae6cad7589ec060302047c435bb500683066023100da74ea8e2886105cdc07e572dcf1bfb5e7ae39c022ee580ca55fd40b7c795a667e20ed89fd0eca94366b0aa56f47217c023100eb2138c1d5f499b24c9eab4c96603deb46e93725af5a28db1c405f5ef0ae3df257b94303da44bc0492878639441206d90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023001c5f3af6d4cf862965e6507b0b7c82a9736cec41c2d6f14c4e8ba1159eebedae96a8ac0cf30ccfc065f05357f14c503023100e80ae0f89011d2037ad162977452d42afd5816b839b6cb31262f0e0a853a2daba118211bf26ea4f461a1f56f17d3f8fe0302047c435bb500683066023100c8279c22b4c782130b6654c33c88058d66430e1bf7408b130692f0f4b4c3a5bde4090d0768b84f582a95aa70ad582f07023100f94a07645fb37483644cc8a70c707dc92879b8d53d1ba9882cfafb7faf29af16817b7d37a6d0812730836fee22cfd46d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300cfc58aa145aeec6027a1110e12fd0a3431c6a69b869db893f4d3d60a763da3c5c209cd32e08737e5dfc929994ce3681023100a2c5a905ff18a5fdd7785e01c9b93797f0b0659c4b31d94e2cb23c0d1c6a724309f6deccdc74689d667ab677783f1aa20302047c435bb50066306402301a2e43ae94a00e5cfbf561f4614120c6018342dd1a69949919ab42fb469365370d1a0597570486b63549a1761dd3e97302303e5d643e8efb1dff21a6a7e2a67308c44bbde8efd93334c8c587a0b844572b8238f41a3c934b74b5448eade526f9456e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e778885a495a0558ba80fd3b39b0f1b7a39878acab7c71edd6cf5e59e47b90e79fa33535ef8433ff95baac230f732ff502304083b14431e3be1bc2ecd2634c10240391a27b9b08d70e1ea9963389a481905f4124cab44269ec02a659c0931cb9ff770302047c435bb500683066023100b17d0ad9619437928733dc3ba010e9be4687ae404b8434e4afe4133a7006fda8b10336be89a468fcf7449f0ea5a220840231008d8084f7d9b158f1729bb486101a058ebf4e37cd9b0ec5029746de9f0ea45823a23fb941c23f53bb25fe49cf3fd91c050302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023059c54309d082cb80c21d97a68f24c9221079dc8119af765e310d41927bcc5c9d78baff04447d1f9eacb080c979fa5ddf02300e865ab63ca020ea8e7b39ec013ad7f07887a3cc72b7571c655f21fedd6c6f0a9f836c0d297511d1b8811cdbca6db2430302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c2a6549a4bcfbe88b84aa52c105afd5def663bb8a2df0b9e10d863a27ad00baa06f0ea6a6be9b143fc94e08ea5314472023100a07771b81ca2b8fe392460d457a5c5785f69e33ef1ee40e3da487b02f7170f7eaa2b37199481110868e279365df6ae0d0302047c435bb500673065023100ac50dee9e95511ff04a2f56eaba59436cbadc00ea319e3c3cac078b09797fe5bdd35a92b7de9ce7da1102c94d225173502302cfc6203a587309d0e135cde54ce36c5099de58a57ab5319eb950bffa617cc02ed66e6be928a9195e580dbb80fa559020302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100cd2f1d121cddfb5a1f94cea8489bbb22c0535ab23426d3d4864d273c636f700a4b0207fedabd52a6df2078b1aeead3c90230497a9654f3d6ec19aa119b727930d0f61df7dbd3587fced28179a9671aba4b8e545df9fe4745fed4bc8f6f4fd388c37e0302047c435bb500683066023100d9fefd5e0d17f655bb2599b4326b4f332524f9360e4777a94959aecceec9c0d790cfe222a6621002fdd02d95370dcf7d023100c58837a2c3fe2c01a31d454cc4c3f449af20f2535c08a81657d4bf5cd39961ede61ed1ca69ddbf7410d92fa3d0bef01b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c1133bc1b82c296139c6c1217ed68949c77668096ecb35d55b9356df07cde607ebe83786e784639d3d68be72fa7c6f6d02307692ba7a23e515cd8a3de159348d3c53fd941d3d4152603979b1bc657fe9206ee1b96dc34d0c3f103c6cb9d2b07a5d2f0302047c435bb50067306502301312b16dc7b1b38dfb39f17545fcdac6b325de7d7db7500f2b8a062f52aef70b264bfe7ffcb178c31f8402198c84654e023100cdae9d1e3f9b573b78d3658db75b6ec0b20621787f2a7ea498e5924cf12ef82b8d86c50a38a9741f2578f21e6f0f91f20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307a3492d488dbf3216fdae34bc16ced23d62663e320fd1db2dbd6911802c7fef5daf5aad8c098001b607d24a3b3bdafc0023100cfab7195a09afdf6800525f8dde6f68f6f5a60efbd3a2f46cbba81f51aba703f4d545032e972e193964874327264dc1d0302047c435bb500673065023100cda046e40c1f4d31ea0b13983e89dd244c1b0838860a4aaade4c50f502a2f90a6c57ca390031d54e2676fe8df6708f8402301bac136eb317f879dc940d1f5a1a33b7ce1892d7a5f6916fbe28367edf843bf0b319d828c915934b821ba3417a3fb7850302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402300528a60b44f08ec18a98965e59fb42d16c376487ea867f5deb63bf7b0d2517607757f4de52e3fada3edac2fbc34a109e023044938b6fd12d546b97a97a877cdf018c2e75c47ba1eb6434c6a80b2b0d54a834559bab26668e87735f47526ce3e0a1ab0302047c435bb5006730650231009cfc053db774c7d7d39b2becfe4f9d94d109dd383831b5a0eb1ba31816581675bc3061ff7667534d974d8bdbfa111db902305fe28647a7d659fb9d09350ff2f362f26017df3af8b2229cc15bff2e010cdeec854e5c423d922d29be8c2a493f4fb3960302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306143467f87dbcc9f96565ea839e8bd45950476db93e71e35139a65ec2acf335e5ad2bd4eda5d1553aa4d85a9e8fef66702307c697c29370e39e304178283d14edd6d88e402c06729e7bcb888e01c7345c8e9d973476804a6f07270cb3acc875a07dd0302047c435bb50066306402301c4bdb6fbbe79dd112b1df8f22d9ee9a9f9192c42aaf2fd76341f0b870145dd3305ebfbf9694e1c846dd8a6a83e2c83302303c3077bd709dc95e41ee270fe6fe2a535f165d923c268c6605ce096e8b7ad266397ea1886464ea6f1c358ae2fd2e6ba80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304253c5eb6bab6f780de02619c54eeb3622bc8e2524251dddfcda933cc44bc9739d2c2c8eb5eb363b571a89308449eb3b023100bf005574975288ea71bcc0d11d6d1b02418ef5bbfd820e747f6af6e745149acd79ee9fb4b6e227d0a492e69aab8cfad10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d9f4c7c427b0ab66a65be0d29cf18cd1cf19193e7c6600c95384a18d01159bff9bd2c3095bc951c85a0d2d67fc027636023047de83f69bf476e5a439aab274565ed66fb5458d97a32fa0186401337a6035590e358b22f7427a52d084d3d400e477800302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303e98f88cf8723f2eeb41a1c20a34ea79ffc3597d766f14566575147994ee6f81260793e818547399d59b2ac914d8238f023048eae1f8af9e89090dfc16347aac0c2770576e294479a500eec8268cd9ee0a9167e23880c331de31609cbbcba66eb0540302047c435bb500663064023034565c381283a8183753dac52cf41c1ea8f1b2bf051dc0da3c74bcfa0fc14ec161ebed6ac5e8258bc3624784790e100c02301b1be80013839ec42d9a5d1dbed28b763ca870f340208b12fd2e4f1774ada78b0286103cd28d8aa6559819ece8e5537d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023059ccd670c7d0defce775f89ffde28b1ead96daf7e3993999fd8bb111745f2f2ef23f58b13e183d5aa5d88174a5ebcb050231008429aa55bbfa6da58444de2e55c1e74cfa7ddfa4115a214d432b47bbac56f7484e173bf8f70edaf9bce6a15d3977c3ef0302047c435bb500673065023100e7dc1b20f68d9d631d48e274e7b12d9debbefc7f10d8981fb96e54c2439f6017ee042f1bb290a38c7be6da808909ff39023004bec21e4e0f63d56015e726a754b311648af6a39f29ab14adf65545358fc48e672b7aaf26f268d0ce362cc90cb915b00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e4300c55730bccc4b4047cd87002fb5cbfdaaac60e26abbbe91abbfff418faeb441ec2b4657f81fefab5f815c273be690230352199c44ee9b9cdf8730960266f174fe5faf8e47409b216d063cb7272993e6864b86610c17de15e3701d1f635359f260302047c435bb500673065023100f56231a8da05e675fe177fb8afccf5a107ad319ace8ac894f46eb3353508d59fcba6cb2486779323f785e271f4d40f0d023049a85926d1d44049bcc67a27de017c0c83bc26d7048b9fbff10ae46c2385be3e5bdecc83d83dd1e87b90309291ef34240302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023033042dcc8e0b60d7f55c5b37dad96ac58efc20d10e778c833bb947daeff62fd9331f68e2fbb51a68cdbf0f833ecba266023100e5e77d8cf3fd2161a178c17f6e24172f1813b314aaec64090a59e0d184503d916c367a54e91ae5ca36b5ffa3f515521e0302047c435bb50067306502307d24e4ab2689aaac194dfa1bd9c42814ba6d70c5a695f8fe7c48e1b5b7641e2eabee871bca5b9372966fa358d15824d40231009dd1f52781ade6073a924ce600163a260d030acb9e916bb28163a688e0f444ab410d532ee0197272787f0e2068039e830302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230073bd2106bacd019a54f216de9c7ec30a5fca7b7d8c6492cd9752c81f65c35286e9ea6da4561d6050d43f137e0ee9bda0231009f177fbbc9e00aeb43db612743fde207ff493b3b94108e8fe3c6cee0cfa63eaa9fdb206dcec10531ed197191513e527a0302047c435bb500673065023100c28841f11d4d8552719589d8cb518d9ff2f84152db0636ce1ced5ff7822193d21207d32b99e535523dc89c9c919fa71a023056b4a90e7adfd554dc2935f306576db8fead6ee920b8a48c1753ef9b357db72766058ffc15dee8f212e306c1b7c8e4c90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306ad7234b501c018dba2a16435f99ff5ff89f69e79b27943969b49bb097ba85f940b4be5f0bbd194f8fd0f687206982df0230763899451c149998403040d8df6150888fcda3979be9fc507f12320aa7de9553f36961265ac3f043776df58c482de69b0302047c435bb500673065023100993215d2840d75a33f1ddb02882af520ddd5e74761aeabd01bdc743d58cd1c2dcf1ac9286d452198d8bc2703dfff3995023031f681e5ad2208af01b8a25c93ff7661d9ee6e4337cc45bec547441b9053565f93a5c3ce499371560fb4cad11fa7a01e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a895e1de289a90b617396eb08c78d71664f7d9314518aac5087dbfd2d1ed49448bad5445502c012e9738b7ec69424bda02306fc97ea9383ee8347fb75827eaea0064bbcf0ed251e48e24bd3a0bf8191ae8195c49670b43da8f4e1818e81745753f150302047c435bb50067306502304c54dbeb9917e42663c6e66808db16d4e3086bb77ec57e2f2f85a95dfe7d051b4e155892e3800f3297a2d6fa936698d10231009d15e2a3dd22bcb20fd1acc67385904709c663d21d623b72dd9b8e06daea29c8149afd35eb3a1dee74356a227b643cf40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d0891e54683acd01db0beeaca90e42dda8f96f78b65e93748f53809b408fb8077a824afae41e9a6b91b98202fdbbe43c02305b9c597bf5f33f8f139f5347ea7938e94ca84c1cb06605c7521ac8a46bb0cece3237eb91f5c51bf73641b7697fec19a30302047c435bb500673065023100bee358b341f532aecc64a6860bae3d5dbe6c77b1df5e15e2229ea583ae35f9666b8d943515f57072604219812e304a4902307e5186e911df5fec44b385b4193a2ce0496ead27f69c42a2986a18da17f0ba5f8183c4097ccaf81e106762f49910e87b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008611a9605ea3bb9c4f09354291be860fc99795ad4f74755cf40beaab6b31842c8d8639e88bfe90e70ae9f006b61fedce023049da471713070c7eadf9dc0ca595fb8fabc715e745afb1d7ecbad1027defe1f761e365ba0b82f3018fcf19e71680f2020302047c435bb5006730650230694e440acfb6014d6a6d6e35eb921525f036ce0dc9f977c7b04cdcc165fe560cb7eb720ed7b9728c50131c56a0d932f9023100e39580929efa2f1f1a46de565bea2ed51d549413ec71a740528ce63f92da0c615a36ab0193823955fe5218703f6a52b80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310090570765d98d8faa194e33cc546530678e05a5ab2d6f05252692574bf567da229f833a9c44f2b5c3af6ca4a7f5f66d4702303bde7ee24a58399fb7e469350a482dca625e0e90faa275a6cf57c7966151d73dcf913b900c6db67507bd0b7ce898e67d0302047c435bb500683066023100d86dc04d3fa46f6eca46f872acd2dabdf30f1f340ad75b075b09cbb413ba387f8e28c427e7aaaa0852ae8c2259e67ada02310092c1ee39708286aeb400a14cfaa841df356029065252461c9064d5645166fb8e5aaa6a0f1d0bdc1de28a328bba6528230302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008b706e1364a7721e4fe9e1aa042998e0aa065a67f14ab4597c50425cefade4bf095a548f962cb609c33271fbf62f487e02301c8dd6930fc88115d6ac95100412cdfdd3f1b71a2a0f6743706cc768b105248270b2630c7380cde2d7e85b405da8c7ed0302047c435bb50066306402306307e6f3f9fee757c8d7e07019010321d86d97cacce70885c55dea9afecdea0e128015f93a270419c076a3b6068d781c0230552af9e2215a11096969975be642f180d5e48489076fa713d942ea59393c1f7ca974d0c0888fba0bd01f79753c5dc9860302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230278e0c9ee47050f5efd1734e0fc42a1359f01d53a4cc4a452e778f278a1850f63490c92ac8b667535c2334b81b0f91df023100f1c17a5c66a75fc42c7d8b486f34bf43ff3e8832cdecce2be947ccbc099ec833f56a25ed445dde32eb6b33c12fecf2a10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100dced2cd1f96f859f14c3b36262fa7cf25847ea0883eca72fa946df7e969e5efa051caf79425df5b979fb11cb33fb6dd5023100a1774b68b4978826dbfea38f32dce59be8604b24eac5eee5ec45252790aeb5acb7a273f8425bf6a6bfd98754ca2d63970302047c435bb500683066023100c42fce8148a8bb85fd6aed1ba6f7e45c62499c8eec856ed3e7f0183636893fe7291d5b35eb7de35254a7077bb0f867ca023100a534d5266c3c2123b5c887258be1f13e17ca7798a6b05c84f51972be9ea33294640ca419007c340aaf232cb3174f78910302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100bb493dd4a50c2aa04e291c532811c9e2d5797c9829ee32b54aeee1d28f3ebff86c67595d69b4fef37a25f124d954909f023100c1c670e2d4505cfc7fee16b5ebe2e57675e4870ba2a87ffd1aa1b438afb58c4116f6af1f1a7c17c87f4653c9d6e4e5400302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f9b9742c8bf620804f3119939124e536724373aaac4b0f5189647b594cb9ff97370be94c2a75065511f44a740d2390d9023100b3865866c1c8f811a0229baa06f9a4c6b2679c56a2688b71ed67c8cbd2ab2db9c1207f7ef5f1af2a3e5a37a0ecce55f00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306c0fbb1df4a81c27826e5c25334afef82cb8a9a24c920c6127d414be37d96b35dcfaa8dcb77352700036dced650758450231008d1a349e466727538205469afa0defa7c82447f96a48944034cf4679491485175068b03c3a43acd80ca55c8e703d260a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023073f6cab0ba2d092862b4accbc03c467f0aa85065885472cd57004a8df1c724197a4e2c482aaea72de1bceeab64a125df02307a13ac2a0ef6272b63881023c395c707c37bc76ac10639018ee7a4dbda8f82a86fd13ed2a4e40f8cef5d04ad2c88b50c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303a433210c56d24de2bb726ee6d483b7ebad4ee71cb5eada20c5c41888459699e01792d0d261c8e5055660273f2570a7f0230516595cb7cf79065207089923453cb38ec763ce82be71ddac93142260dcb518250c105c4b4df6c9df50a4c5d68f31a0a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cdace565cb004c1f25b3deaeab8083809766981058a4be9ede1a3874d307d7bc1622de482e79c2618028994aa5438ee8023100fee69883aa85cd70f47053625784b9f71865b5cf4c5365466b01d8b130bc0a1015682ebed6af8a36ef7c6685cb8676660302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023034f00edb0d619845093c16d559e824fe4cc1d421863553c15b8a0838e06a815129d67e74ae24e8855f780ad6d3ff2c0d023100bef488b939b386b92582e3244ee9dffef7691826b4f2fb41c11272496f630abba7063909532d8d831ca70aa7a33a66090302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023040a494d964b36ee0697d9b30e6510b9ad8692c23d9a9a8d691d617219d02d55332d38bfc92a3e7283bd3eaaa4a0119540230025f6c43e95638938c970c8404a9736587266e15c1a78afc2230a19c18522d91d1de88d8f6657f84e65e4e2f656876cc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307d0d8761442ec21ee038e521bbe8e628a55caff0207eff09863824e1147bf3be609c8ec81852d4fd1c710fb97177ad4d023100bd39bbc2ca122a15d281555dc6656dc79255459e66cbe418ef24ff7407752263d25a197904eb4019f5c0d294991f90470302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009bbb5c2856ce000a20a9d4e91916440a2a65ba09078675e46e56e9c88a036c5c7c0caaba787b24fc21d9af8378dc95d502301a02f5a9c1ce8ee0a0f0150d0c45d440299c6ce48a1d236338ec3d269edf2d26e1c1426991aeb88b95bb078346cbbc760302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b4b60173e7753d57fb6e8e66e734b186eef5ceb089b0a8f32f00d57da772e6e2fd9d9bb3efcb4d7f2c2a6101a7e89800023073b5d1873c0177546052b91f4841c8f99d77b2685d1c121978eb5e446c96720b2af98cf4268f9ef5f14fa63a621339620302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301c690349694e462428677915f90bbe6d6d9c8f81fe2e685c47872f7f653fbc17946227d9db6b321c567e5587f6652d2f023100d5a8f660c26fbe715aa61dfd2c9371e24754ca6b7131214deabbe6076ab2c7f87efe086146b6d7efd9593d7fa39f4b270302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230321572bd14bcbfeb5ddf57e5ecc238d1cdd0bf668a5bebd253564df8aef1381c4e35f64b2a5de1627dc22aa65dc3f652023100acb0e4d9ff4e259f8a4d224bc2b2e538dacc59ad013ab33e8dc8dc581e49f777027b49181020dda6ce8ef848a885fedf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d3bba046b6883112924b291fa37870c9cf2662aa71b2d88122fac358a48d723e22339c15957da143fbfb5ebcda5d4e810231008d7ece96e47f11c6a06e1103d65eaeaac379f4817a5e084f5bf4838b6ebf40353b104e7a5e56e57d798f41d610db36070302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ccd5d0caee8e90bf5dbed35ee2e163f6b9caa0339aabe8ec0b974a29a82216b8c1a0e680f380b40cded97e241d51c5ce023016ba34c3a22c5853ec3e8c899d5098103114265987ccccb3d8b5610c8f7a9b38fbf3425ef16c69b08e3c5fbb6623ab5d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230464c7393c35d961cbba2b0e7aa61620101ac3ff3e2f1ae8f0305c3988609941ca15d52f92fbd88cdfaf420a71c0f135b02303794318a213329c5e102d4a78d93d1adefc5fee644d1a1c7f66841db32b169adabd0475e2f8409f4f64026c03fd913ee0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b6b0ae2d2d875800c7b211d93719c5a6c261ec8dd32e879f25603e96dfd35b0c604d7e5208fecc38063532abdfeef0ea023008d52ce9f4dfda1f98989b77f8cb856db8603753b1c705e77c2f6c3b936b227dc2645f87d4100ff5d2bdbe9c010e05bf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023020e9f0237bd63373cc9b59dc0228f4d6f80f1608bd86d5f8e9d4a277f8c52836689b7cc95023d8ada9893ed56380ed1d02310087ce7bff8238aa961f71851f693c9fa5ae69340a829bee213994dcafea15ba6a5d748e57eb4b2e67943133212c24a8dc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009e59e0ae8b3452015d19662ae336efebe374cebcdc4d8f68bb30791d7e9ed75e588be2295a6da8789ce3c80640dbc642023100eade0827380d8ac7a8396b8aac75c7255f73682e197eff4ebc8d46d8d3816bccce0b85bc50aefacdc305806a83ba37a50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023075c972d8e689b375b74310b615e10aefc2f1d01714ec426020769bc0f430e0464845fdacbad11260aec373c784f9a1d8023100c7f1eff74f1d36b1bef5f613f40d4042be633b9b66d95a55833dd7277c87392fd35fcb2ddfefd25b88590a0ee7f9de770302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302840d3aba3605a52aba70bb45c8c28d4e93ea6427daa90db7af5a375acbc81536805d97ccf851d5e13223aa4e25eeaea02305862d283f0980445b7013ee0aa63a8bca74f873d2b5daa2055019d73eed8f4fdd40e373eb341cf443c080f974acba8ef0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301fba6a68cd2292f87faed016af5793d7a8d1505aa6301fab5a01bc4c22a91c60b43c474afe539528d13748993f7212fc023100a6788085df4c3aeb92938304cd421a7f730e2314f48b4fbcd15b76c08d0017dd2edc8fcfe2e0629efc699dbe51e5327e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230728823b5b14198607b586db47aca4a87410380f2043ece547701321410f98523042e687075d3548f5d74d68fc8f05a27023100e6b27900fdadd4f56147875d6d24f05e1f463ccc6b4e56b9d48c119a8b60571530ca3cb5a5ee265e32b751d28d59a1590302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023042182968772cbc714792d51166ba4507833ce589431afeaec5139a0496ee2ae9c6d4c9632095cfcc4c14adc3aac3a2c5023100c04f2588ffff74ce8c27dde46b6e5cc7462c5c27c5739dba4b8e4648574ac64a2e04a7803546377a3f4df65ce99d56b00302047c435bb500673065023100f53aabf5e990410a0b34c0b6e68610afa4b0f1385eb51d2ef67731dc43c754d45009738baaf7aab280c75b7d102d2b2c02306657f8bed79afe6d48d50f3a561c2d2750338d94029412ff19243d3e12e6baf69702ce3fb9cf429e8d1d4a3ea874e5880302047c435bb500663064023025f49413819fba1405a1c559823593c56702e1a16240abca60c816283afb4ae7869633f28064b5b452f002ff62e6cdd602305c684c2c9f0e0b8d778a600b14ca56f60b0e837702288ba3bf7845762a64f8778e4afe1411048c567843cd197c8695510302047c435bb500673065023062e1d438bf512a8c7b3904527bcd0175ee5f84f6b12bab86c309586a2bee0626e8aade5473e5c4312e2b1ec941ff223f023100abc466590fd352cf689204e01b8888299c9d575f3eefa8fa5899f51dfe4cf983d8c8de71cb7c7405ac870264f35c9abf0302047c435bb500673065023068761e543a1a7ec66e342b97f7e0088e952111f64ec4ef02142eb931661ceae121daa5c8996c5404a42ef6bb07ad35b90231008c99141a13c84ef3c309d77f2cf162efa69fa3cb5f55a1b711e30ae5751533e627b02843edc36479b367f6cdda1a70d90302047c435bb5006730650230721c3566956bfc5d387b6b27174597e8e5e80dbd7a2579b3bf6969d62a4b12eb2a15abd6ceff81e7600d220f310032a5023100b7cc63d5d8a828a9749cb48f89756b8b0827a13c95337336a2d8e7f121a71617b806687366e7a13d1f6edca6adec20840302047c435bb5006730650230400d18cdcda18a732dbd209236532dbb716280c3424471a2385584ffa644fc9fbf26c3316d539255e36c46beb8760fb5023100b5c1ef331f255b015c7ed7953a5fd940202b03eb67e25f3491da2f905ea2fadae947847a1dffda4b79f9b132cbb52a510302047c435bb500673065023100bd607afb8fef51db47e110a32774969dae90c2a687a706aecf555c55be3613a09557e5dcf46d1f95a5ffc418a674d4b402301c0f029a9cc33b17b57282d6ab95b811da4f94d3791103c31894e18c9ccd3114a7bfa42564943bc8878a5634e2baef410302047c435bb500683066023100cfde31411d3fcee56373cc8a57a5ac82b0b2c2d20f83e406ba7ad07a7697259a6f2d99aa7a193d006511fa5a8f150ee7023100ee10ae674b4429344ff4bdcb8a350f0f27fe0d5a20b3a5209b328589329a36e7662accc8df4c4fcb60bc21fca5178f330302047c435bb500663064023036d139ded62327410cf1a4c50a7210524beef7c69de7f5f51c038d9a803d0c164422eea3f316c99c18cfb2665bf03c2b02301751561a0970bc152c2ed14e24b4e8d7ad9fd1b164195ecc4bbafd99ef8d8cff436c17e7a92f090012548d89adb0e1c20302047c435bb5006630640230133aed25c09c0e6ea97af4d14cb90f596b66d46366596e4df7da1352d4692e1bc7258a18ffe7a6aa1f8f9f06ef40d643023024bbb1931ab01767316ccbfc91dd7923cb87a3c77846dc2a7f4afacc815eade70fbcef87ba64093c97d671711fcb9d370302047c435bb500663064023100eed4607fa1db91e2ef067f91786aaad38c29d77703c84eb19411c69a181524f273d16f1af68bb513c5cac1deb20b6b3a022f060c693112289cce0e26b71741bcb8f1f7e0c6989dc26efb5858214652c447d1997734607e85abc24a978188d188630302047c435bb500673065023100f156dbc426662260aba892dbe9b0783f38b6360ed951a8ede1480e3733ef8ee5c50a951023f8417cd607af1646d242770230202b3faa041b916aa382d9979818d7b383eb07bdbec4fd901e43e49c2568ad8c345cdf56ac3e0a30fe65a41e502fb0330302047c435bb500673065023075cd9132c568e7735c9fbaa67252d6024c2a6d83c1718c746f560cfe221896596904d65512d36480604b63747e329511023100ffdea2707f92e1206c70983e668a68c4fd008c0f226d6d1ac92ea40bafe552da1ac51804531492ffc9a3adbb508b92dc0302047c435bb50067306502304d754bd414bb259db8760c900d5f6a29c3e28c7370270f0858c7a5d33f18707ab81a50ba951c5ff61794717b49b6b75d023100e920949f690b8dfd0a7a87e5c1ece8b914629fba234c3734797cd0d9773e116486c555de0e77e21970666cf7d01a32070302047c435bb500683066023100b6e3a71ce27e66766ea95df2babcf3a13f8b76c7f6524176e1d8da7c13fab3dc86b3537ae5c7026560ecb1da2e8c8c020231008e1af13fe9926523c7af86ca2bb341dfd86c800844f8b2c23175e1c9a63f7cc91d6d3e1475e4219dedfeb8f1609223e00302047c435bb5006730650231008e3aef2856abb8e14f0e6ec86332654632c55683874023b33bc09e456112f3e294acd93241cc10bdd65fc76a6ba3893102305a57a32c38ee6ea93b005c5a717ef882235ce89f509860e6e6974be7fbc58ff653845504dd294779ea69e7482d18eb960302047c435bb50067306502302a9ebb5ad62d9dba70c0469c7104a6a45fba208473801bc8428e70adc4df0d642dfa394769bf84f6315d76c2e010a8f1023100ad0494d109a1918f4fc7e9da0d72bccb545a34184b8bd4ab5a9a11aacba2a5f4b31555e296b04da31bccc0a01992e9860302047c435bb500673065023100a8f847d248ea388597d2fc9f8a9e94d75729c61efe888210a4eb584ea9aa4bbd2d1a0414cc94bcdd111c782bdf1af0170230119c1660f66b784bb8fe51dd63dda108f6b3269dc2de3fe05020bd640ef08fa4189d4deae0d76ae6af5fff78957ef35f0302047c435bb5006830660231008c4b6604f40dca8b8c43bac5ce0c552c8a17a03f293814b8b1f8e7f13fa6ef83292110a70713896197fec11c27784235023100c60d6a0e02c9539ce473d167c4edd83e5dfce24c363acbde3277095b74127a0540a15fc45302b6429c1f95806e2b5c2a0302047c435bb50068306602310082aae20bbb4637301cf9a5228a6c9c83242d558ef8f10ad734502266165de799e3a65c6aa32560fd34b5e489fbf2957c023100f8eb38e503103b1aa9154ed37a4a4f38eac053ce57f6a8e311e6f4710bff8e2fe547014053d211975db5a8914ae9bc3f0302047c435bb50067306502301998e0cdd391b7d02def08f2605a71502cf4c1cddb5a222cd5c7b636201cb2aebe7450aa37cb8d0c594b3829a284b5de023100993bb303990bbef4054d690c6e5f9bc57e8621c5802bffbb305a6d5131f265545dfc698cf7182f0c540303ba19b6e44c0302047c435bb500673065023020cf1efc946ff617a0c8ec82d04c6d232429619683b7ed983a0c50b3bb43eb2449c23e72280653036e29d4ab901b92fa023100e1896a3df05e886526ab4c6688509fdc7310274be66861368b0d6ded00af4381c904202165ea6faac1294914deeb3dd30302047c435bb50067306502300fe3172069c4a34ced13e65e2c9b16373e0523cd561c2ce5d254421686d419821d7ba5268c451d0bcb4749f418615552023100b2b99ef95953c725d94f6c472eab37660d690b49290d34e12ca37c7c29a184917d18660f8feef91213747e0723fc9eed0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402300d674516fba6ee958659a46ecf4d774925a3b9dfbf418a6dc4bbad43c87e15d0ecfece83b0701787706779e462006cab02301c4755784e72c5d5ff99eaef17ff9376a8fdc1c2aafcb87653e913de2fd7a5ff024bccd6b6b418640599e5fdab6f52950302047c435bb500683066023100fc26e8e939c37b8b1381aae3bf3252eda45faf0efb1e5cc6c8d4990af055e78c98b0abb30e49ace0c37faf7327c9ea98023100a63fdf60caecbb8322fd3f7ae7f70a3ad30b2174388fb8cfcc0edbcd016ba3fc4e7e86ce65c0ac6d82c3a453b687ddee0302047c435bb500663064023027afacdf24eda9bbcaeec1f2457d159f619770928ea00e0b3adb34c58aeba543f12bbcfa279cc15922aa7df76b5e369502304ba3a8c8020b31148280bc7b961250bd39fc7cab8addc756a5e2a11859b08e00e8ca84812b6677b1367f7693e9d1c2510302047c435bb500663064023039170ef7f445baa50bc8ad95e45589ab1cab8978cc29a1e3f89064a78fa894606f1ff0a675264315869ebe0af45388bc023045cccad487dbcb74c059f80e8b1440030b814f25f971c6a8b187f304465b336540b184b0cb9ed17dfa7f54928539d83d0302047c435bb50066306402305c9f26279aeea4519da2eac0118278445593e2c71727a67dc3a54cd968c9c1d8f70a81db6252c916198df36eb9db016e02305615d6cc56550a1235d88571cdf7f435a759dd013bb1366bf186d55226ea0ff4a0f6f58dfadddae824f388492ec6b28f0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500683066023100c53e8b60be90c812591604e3de00aa91f402b91b330c9033c48124ce685eb79838a1903583e7471abe634d73f05d26f3023100a670154450790f6319c624e977e78e26ba7bcb0128e816ccd618dfd2790f7a8bf1a8f5db1f2206b5655fd343519b592f0302047c435bb500683066023100ee8ee15dea31b2e7755bdb383ad70e207d527a00be3baa8cb360b763c917049335130749353096c0d8459c911ab7869002310096ca84bb51350ea49954768f75337fe526c11de230754b0f13d92bf5fbb59057d33572b5c9b5ded0274d6a0cccaaadb90302047c435bb500683066023100f850414edd126e2aa00b15e0733cc9ed4f6bf3eac4ac7f3030dc8b1c1307c185856b827fcce457fbc6ccc441cde32a250231008008f7f7774534417238e2c4651c2ebff580077d689321bee1ccb8ead427f82f865ae79c5cf4b8ea648474bddbece3c20302047c435bb500663064023025363773fc6fb766c692f816db77ab6828f157c1558928f0861bffa8fd44bfcadfe08aea979b80c440ef46e20d4f3bf502303d974cb896e49ebac0d2d020ef528b917878dfe7891538145fe08f7289eddea99d87755d5a539e5087974e3fa55e5d820302047c435bb500683066023100d6d3d46754e74afb719ae0b442bb9c7f112003033a0c567516281b4f887a08ac2bfbabb530c71a71c6fc15961fab3ee8023100da0d55ae3c06b99ced30626a729206e265d4286f791aacd8485313950961b0f655e9a217a70aec8b94ceda8957aeaca00302047c435bb500673065023100da789f08d1b393b078709ba51219a407007a7c663e18aeb226f14bb2e9a0fd54a32f3ebd781db1077f79a145066d49620230587691b319b3f2e0e03dd1b9aaf028e3704d6b06ef96b74c414f0e3a0760a6ec40d3eeaa5e91d9cc2eb2a7b6c2f5ac860302047c435bb500673065023100efcd46fb5836e8269f4e40d2b1afd45f4d994c7846ea3e1d314e84ffd8da272634606139f6dc1abeb69a4bc300d8b5dc023021cb9dc031dbbb76780e5c4f7113ff48b5e1ad7b39e6e371041ebc54761cc874139403df065197a5b70dbbdb71d1e3990302047c435bb5006730650231009fa80451618bec33846391b9475f2f40bcf2261f19e957b6793b4d0328d407cd8660c3aa9a46ae9c46c39f446ac6c9ec0230214744b31978cc3493621cd540e1b5c829922a31c2becd5537fed9157beb3fc28e0becbf344e1c39e588c93fcc55c9d70302047c435bb50066306402301ed02e98c0e8da6508acf9787a53d3e7fb7d50f5310a1ea8e7f10b8da4c88cba8dd9302c2211b6e4c53d234e33d96600023073ab89ef71320b2c60e12eba4025ec5ecca5d2552386d4b279ca26e8157d8bcd71af13ce849b149e5d8db20152e09bad0302047c435bb50066306402307e321c5a038d77972c82794f9858706f8d0109cbee4fe23860192d78fedfda981b2ec08e10caad4b27401bfb6fc18ba102305dda0f9b68a682b41342b32edb5c7c642ad1376c60f8f746df2c4786ae63e2415368019c529d8ca58eb3455f26fba37e0302047c435bb500683066023100bfa38712e75431ac618d2bfea0fed902da0de497dd9e3f7273d336121a0a496a8930eb5de2ef1f5ed898668cffe321f3023100ec66e586ae9d8a2d765a54c1dddb87f49ea3c1cfc467318280ed2277170432b28b373b6380e8039e1b36d6bb4daee1b90302047c435bb5006730650231008ccb895a226ac1809c7932665174629593250ead2d61c2d5908c0b4bdde1524412dea50217c35cfd968c78d14381159002300ed280b97b01b5fdef571a64926425fffe6925821a9d5d7383fb40473a8c831d9397a466b1710b409ccbc6e7408bd9eb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100fbadb8b253356ce75a929fda81b2bcda989df3a1b41010b557a4d1b365b15b8c4583af0245b668708a1cd0c4726fb89002304c9d0f7a9f54333cf344a79e46026383ac1c1139c9b0148b83920ce5f459e9831537415d5bddbb6900223c5c3db33c670302047c435bb50066306402302c95b5c3a79ce5178f7da178767f61dd03f5bcc4fc0a9b1776295a525599cffdbd1dd92485230db48975f8cefffad00702307e18aa8ec17c0d17a299860d08747479602a3762181a65f8bad053ec486586e13a39dfe3821d7eacb98301f8e5e4a4300302047c435bb5006630640230211403e3ef3968bcf40d3016825d5b02cc5b5ecdc6db8a455265e74ad984bf6d4610e8b6d2e0e23df2d9eb154b198f20023078f3fcc93137d60fd9815ef9fce61a5798ea5ef426514b8e626e45827e06b4f5fec1478ec1a08f370edad733ec694d590302047c435bb500683066023100ec21ced9111bb62837135b101e84b68c9a6fb20d04ec0df90c4a254450d0cf367ca6822552efe412f772ef69b8160c7e023100cfc8cb8f3d6c5907b1b435b475d6db6b49874a52b490edb3cd878576a45ed952b768e4da51759ef313dd1aee96011bb60302047c435bb50066306402305c9dd7e3b0f7942c766cac52ef30bbcab91573279b127ca2bd95206b75a2fb6026d8ef9afb9dc2e7a78ea11959245c1d02306772a2b4c93bde361b11bd8bcdce2a04efd518a626df818a7038629911fc6608ed55b59e8f3893568f3006017144efcc0302047c435bb500673065023050985c1ce0d0c3e05f5dace4c590a3939e5de821bda414d2bc7b7d52bdf5134c6c9e4a8e90ce41b558324ff7e09b3c3c0231009c4fd81ad02ba4a1d3624a54cd4dac5d7357423eb564cfe6856f0a869517a30eaaa72f11e7f89f56f7ce7e7fba07f2b10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e9d0cf741fff197bf4ccff19363767907fc64cdf669b2c7ac268591108f9baba5d2581e8d71d357cced7d50974458929023100b8a5eececf315ace1fdec67c94abc1176992e3cc5810bd66981a42ccaab1c37ac8c2665a70f1390d5351056fb2b008990302047c435bb500673065023044322f0f25558f2e8c7b1661e4c9b73550916b953d7875327868f4afdee89646ffcb654014323b57e4a40e7cb8f1cf0f023100e3645c84ece7d6fdd88cb648077ff9919cd9ec6f5d3fb2d599efb0bca1bda37dcb833a2063d3a8e700a37ebdc14b9fec0302047c435bb500663064023001667f264c29f6f95c3cbe61091f5cf05a86265db0c4922e6674c105c5a43939b8d945bb5a7411411f4acbe6a1d108e40230233146619159db6c3522101d3d86aa300abd90263daf7f6ed6e2b12f013d68fca6ee53fec0394bcaed3657f785f99e9c0302047c435bb50067306502303afc904c6ddff265cb48726f6c9219517b91e3398023d68a11eb06ebb9acc09da1241731bc2f5267c718badba7200a51023100ac977ada013b6fdc1355994dcb6e5614a249cde41a5196ff9b2b0261856e910fb318533fe63522885f403703970c92f60302047c435bb500673065023100dc5cbef254cdfa0c1c3cdacfec2ccd95086af85b8344895d8bf3e6f6a8083d06e74f7074577dd5d049fb063694046c7c02307d669009ce468b7721a0c7d9ac90c2dd724719835ba538a9e610b2efdd4b2884c26084203e67fa06e190e85e050318450302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008ce5d917891bf439e5b509f6ccf1faa4f31845f230bc1ce5a7122559118b8072f4197f737dae52ab99b90ed9a505166202301dad13163461b56e00a026e8091493ea26fa8c37a3bfa7c20b336e67f04791c3a071e32ff5b6bc0f5de4d695872c4f700302047c435bb500683066023100993a1877138cb2845f3000481442e8a730756272abea464193ce95f8c6bd7d645dbdf8562ea45911dff659868691aa6e023100866db72ee4d51fb72531833d5b78c497c5b5e09f01d18ee7552e026fc226f1ec6cd7f0faabba05aecc2535877e0cd2ef0302047c435bb500673065023062f9f55946cf1b77717288d5588a61a52b310ca997fb72d73be10de432b399073714085670d8ab9fa378b2a7fffcfcc2023100b75eaab1a5e762d49fd97c6f0274f31374c8660010685b159342c2ec3cc15c614946a70b3e383e6ba415b53f52dae1f80302047c435bb500673065023100e1823d5c06f6eff81cd45e292ac5f2546c59263b9f54ce34089d8f91c571971d9f18a71245eab9d4c2d548d992c5fc3502306a07a9e9a4a60b4df0a3370c6ceea8a950224699d8bf0f733951cc683ea2fa79dd1be77c90b6065b529e1689086a9a640302047c435bb50067306502304498b1a3d3cf619c95da18140d0aedd5f2261a7e50ccc1ea31474bcde8e69e1f894e0474f2131c4936464d7446dbc4d2023100e731e7ed932c6f70ac9219fc20b2d6030b4e3cb9a7bd363ca83a64b62216bc54b03176b7e13aa0eb35d78db8fc383e3d0302047c435bb50066306402304b922fdbb5d7c3a48f33b8563c7e9310c3abcc102530e0da2cf208a22e2dbf3198b231ba888db3f5f46439539cc94b5802302dbe7c1dfc211b855f2f65f530beac9f42be0e9b19c82cd6cb3ba09bc94454d3a596ad69bd8306fa9efb1e9be24114c20302047c435bb500673065023030788928675f2666fe31e09c098868aca41875b7fac91878fab20b6e73b1e40d3d8f6767eba7502018554e70b2bced6b023100a67663b48cd41bacc2ece5ac626537731a781da87cc54bd1f6b393fec6a63902ec3df743b3d44aaf6346724193749dcd0302047c435bb50067306502306f6775ec471b1d41163fe611d105f419b166641de1fa10c2da690a1454029f98b7fc90d28fad15bc5c8c5d49b66bf980023100afc6fd8815b782c44a9d4c80d44853b30e9cacf20ed1cb15e74275b9fcd9543389fad8c60d06c148e3ee1988a859930a0302047c435bb500673065023066423b0efb41d0c3d488b1ff8642df38c556a4cef1a6f9352b146f296e74e1ac745a4c9d1181be9da61cee8160d635710231009c6720cc0d45b5b4832f037ad1299550d6db50cdafe80e6418bb3764de90ca0b9c7f1d5cfe494067da4720e2104b432d0302047c435bb500673065023100ae29b65c68254cfb6e81b7fdee60a843e81494feced888841e5a847b70cdca77927583191b926f2ae9781defcb141bd102303efa74056bf82aaa9117320e8c528c97214c2838f537669d903256532c2376cffa5508786b9101750577cf505f1b865f0302047c435bb5006630640230561baf7ad1102884202b9df80ca2c6bbcc006f18b79b46acbd8cb6c22d27640e231ba8218dc8c9b85b2b0ebf4e7a4e7d02301ad2edbf45e13d8e30bc67e945310d51bc0beb04d6da3c48061b61c27c6f0b519e45f33f3b77b17c38a4a6dc0092e1900302047c435bb500673065023042b466bc41492608045942ab7c9a3a948641928949f05adba42081d16aa6c193dab486c15bc38bdf0cbd8483602ed5e1023100f06d2067010270766fb8bc55b684d92f0bdebbc74bea642c35e248116a36deacef7b2f4ce2775ae46dd8112bbca3389d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230169e4ab038e668324a6b15908ae8e918584af845af0809107fb4edde639ead9393879cbd0b7820a67d774e869eff367b0231008f9b7afe9d1b44270287e8e6b752b1305e289a9bd45e3b296a24375d3ca062e643626461be49edcce42df89dfd5a17320302047c435bb500663064023008f1e5d165d16d6300c482b0a3c0cac157f1b17459b729ab9f066816f6ceea39f5ce35cb43f7a7d8e509cb32b832d10702302c05db74f48b91194ba87d9a3ccc21b42418da3a1b505ddda6633a55731c4039d645ab872c0679abf59c0b47ec0e928b0302047c435bb5006630640230090ebb2d29ff824edbdf5744e27419231be96b3f5e7d206cfd3026e34e752834779f8141b050491776b50b1bb491f97802307752e4944ddd4d83738a2aafeda3251d0e4a0d9f2867a463168742088f41c8e67acec42f4b9cc2d64db89e094512f7ab0302047c435bb500683066023100b9b713760ef23a38f15c4ff83c478b0fbd6e858350d7d5f243037b7799e346bcbe2ddb301e9f2e109137a0bfa1dceb590231009a99eba660427b3739adf91ffdbd936b86442b69b54c5ec72306741cfb96a72cd74a8dfce60768a4f1108010846ceddf0302047c435bb500673065023100bf6c8f772bc24846e7a873f9fac182c75f1271027b07428664b717839292d7950f88f3ce7a14c4f555082db7b25bf0e202301155e0c16b3f7acfd73d96b055c8eadeca516c1c4416f73cf50aac5834053cf08d7850039128ed274125186988b4687f0302047c435bb500673065023100a9b7bfa96b6c65f2a09aafd4faf2fb7d030599791ab1835db258efce05d925da4bc4ebc76659e9a33a2e97be963a07a6023005066e1847bde1eb19dda0b6a158a689f1466b6e54f768eb58ac519de25d27f1340bf6c1107ef3733498854f93ea6e280302047c435bb5006730650230700e440a89ead38594a916dfe5ae508426a35d865734154e9c66811455db16596360228679dc100a29c745c6245bde24023100a24e1341442663b5aa4e3e2434a42247d3a110168c33b56232175d5464a08e208104bbfe7679b095edf1a39eb12b848f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023049f1f0aa88c06f992b83625d2835bf185fc32356a4360907460f44da77b1c03758cd179e6a5006c060760a724b22c830023100cc572c8d6cda71b351e49cf9389616ed52f39b006ae0486952d4e9110997423b1bfa77b445e995e88ac8d9872eff75e50302047c435bb50068306602310083a2ea7c4718d94db75aea8db1cedd4db006546dad57d9156c108e58ac43a7a45aee7e8d7fb40b31b25f56aab43e6d32023100f88b4eae13533b6b2e4dc6e71cbe4f7f1306bc98c95a0e7a2e3a15ef0da0e31c7539cd82446bfd2d5714678369976ac20302047c435bb500673065023100e23599205f91470a2f1b3542042a3ae96d92ba3af602ef9ae537f3d6ebaef2834b942dd31aec73483c50e78179ea6dab023004678445f313af18ce870df8157343b2f85c7c86594d23013cdf76a249e7b0439f9d77f4572b082ff48ef0395f53dbb90302047c435bb500673065023100c2f47e6f3ecb5acbaac62c0f22f022001522aed7a3fae190c78df5008024b398fd90fe9bb458937744a9144491cef81602301585cea7b3a707213987c1c66c90933c900c8d4d48ba49490c1cbb43dc28d30720da8250a142a84b4e8d633fa2bc7f970302047c435bb50066306402304851adb36e1ad048a8f72eb6b1326882b9763ef7acf6fd7e9cd03c49a88cd40f10973f89b29c4bda08f8466907d12b040230428e0648023ecd5e1daf57f62bb7fbae8ec13e9b3d26a9728850f09910272984ce78c99401548bdac1da5aeec93e94600302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306e889a52b7428dfbb5e417c31a3e77c5d1f56c18666bda034c9d7b49712af9d302773355642b68bd3d12ec782f33f1a5023044595d0070cc64e90699604ee2c09325bdca7e1cd088c8c89888fc0ef2cc6859255826968b3686ceaf52067365d46f1c0302047c435bb50067306502302e5fcb79b9f055babaafa5449660729440d7b24692b2e5f3395bf652f9bc366de7a94bfc33fd90a3f5ed145e14b54019023100de26f0145eafce701f411578fe1ae95f8688712439fe46cc159b95d8a1932d942e99870779d3b850e9958a96cc0080120302047c435bb5006730650231009d99928e9bd5f586debbf7efbe114cd02441acf2c411a9e9669e16102165911549940368bf8433f854323a0c4b3343ef02301749eb50550657924589bc0e949d835b00f7e96b2d2eb92c4493ebf7797dc7eec79024b699515072b9fe6328a8e71a1d0302047c435bb50066306402305756f9e52168aa0ff37bafdf3f500fcc0ddb8e380234a07d6cc552dc624e3c2dec589875e61b9bc6769062d546cfd15d023060a26f494ed97e03ecf749971057bcac3e920cc4db034530c94a751eb648d3839e13a07c6878d908eacc6bb5e0bb45a30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302c4cc778612bc9d490a028c763ab9b2c89252761123d5ff3a4cf6b0e1c1ed7dd6c2929835d1597d8a2aa2a140ef14bd40230261a2d2c2160204165b7731e2ce988174f894858d91b54ed482df2cef64125564f12c8d4389fd9f814c43e42fdb910da0302047c435bb50067306502300294951fa15c1af5886cc22851656329aef1589e18665fdb1bbff457cdd3c21d0554f44cddcf6fddaf601e6074717d6f023100897cb345d95ef73ad93adb0acc45cfbe5c4c19a3990210ce561d676ac3e48c790a276d3abc122270d9698410d67dbdf20302047c435bb500673065023021695e888a97ddd95d716de292b00320228c06616e64b69ebef992985b93e28aa288fbd210cfaf00a924959304fe9bb7023100f9c8c60463e36c488968506851ce8111609dcb5af7c6deb7e864a471e36e8d796f5e16f1499ab5aebe812b0c88663b360302047c435bb5006830660231008dbfcfbc9876e419c510cc3942d774eb12c6236c65205524dd7fa7b90b60eb4567228cd3b2a1daaba91e1c539aa99336023100f2e9fbea7de483050f6f41261dfcd169d4a7a9320f3640206bfc2a409eca317e8ee8f88de36446f0e849f81eb38350a60302047c435bb50067306502306f6cfaf543a1effc7bfeb0058bc4d38d56c7a108ae2354008a326125ffdf381dfcd6cc8342762d6f290db0d9e646717e0231008018a8f7a2bb8e875e3f7677492ed60310d89ecfb32374f5fca327e67ae5d5a37750badbd65e8ee0f433469a108beea10302047c435bb500683066023100b91d30cef95386d9637cccacfb334def7dbd8397df366f8b0debe0e31f209e303224da1ff9d44cb1e6af01016ee5b8960231009108db7187da2ff34424f3beb93fd2488c9730818eaf4f0f8c8cd99c4861b6710992ca195ce055430771f23cfcfca5e30302047c435bb500673065023100e77f132aae7f2ec03cbefac7406464edaac7e2098409f8fc4c9eb5ce4cf61aa3a8302324e3aa2d6674756dd78454749f023049c9f234b109b0345951685141d1efa1d73cda0ed8a49cd115f01ca141d91ff7882c976ffdb84ccf7f69288895dec4bb0302047c435bb500673065023100e674ffb194480e52c2f9793e267615c53bf3f401284f0644f057660feefda4934444bf41eecae0456efe48b59daa888d023009da33326b49e24355260ed1d2ab101dc7176be81e58eea7d1fe0f8e3eaa496d804404b0019d681804c81bb79efee0340302047c435bb50066306402302021f1eea4eb6b50de18f6f7d9fcdffde150d11626cbcaaffa62410ed1f646222d791de0506ff5f7ca2ea4804d81be740230234bef6194a76e63fc657694172cfca572327bc31ffe41ebcd49c281642222b8ae06cd0fdea24d10af5a95a10233e6ce0302047c435bb50068306602310095465b1ad176589bbae5dff0eba7e44f4d4e87b0189248d5bd6e4a9bb01830122de461870b9bdfba724767e9fe84419c02310094de6df9633098809cf8994497170d347fd64850e5cc43d01597e3f233d3db3b3bdc5d6f83f4f4b625b607a9ded94bdb0302047c435bb50067306502302d3ab117c12712a466b7f7aff7a77a40b27b3d0dc56f6cbf0ad8c09bc1f1a0fe982c3255934a18a348585582838d2fe9023100f8f142b5914c0644d4532a78a070557377a4b479a7f83e9799c0f60719b3696f9848187f0ca783d8a3a4cbbc579257820302047c435bb5006730650231009d6018346f34278fee296011d303c5893ebfb879a7c430f4eb1757c862e348763f83f9271447ae7f50f9983d454b490a02306d9294b4bbca2d96951f04d236b8a4aa0acad04219a8b249fc698a81f7d9f8ca7de0b71cb14dbf56f20ece80723483040302047c435bb500673065023021c4111ec52bb2a15b0e0cb92e1894c1786a4ed9f74161f1135a51037e2bbdba4f451d046ccf9972f0757a5d7a91c8da023100ec00eaefa8bc66197aeeaf704ef178d356c2614050b4824fef494cc106352c8919a58471c6d9ececc76a8d31208aa0120302047c435bb5006730650230210dc25cca49cb903899180afa02a8a05685a5294096497807530e8f924963f76189e4db56ee15bd06c33d446ed2da0b023100c93f8fc6abded111b065e86b82a18eec1b5939698b99a97baf0a49f7a56f9e162f6f8ddce8499d0ae49eec758313e4d60302047c435bb500673065023100ff9027c38e87e09ed69357d0a378981d7c8f958eacc775ddf98140e85640f030d0ebeb4663c469de64a3a6ef615d6ae802304822f5fcdea458ea889613a62348026729beef28fdcd094ee57035e09a1ea8c8d8f8ab1db3e0cba2449b64b144b34d710302047c435bb500683066023100a428f3852692341e0e3949c5a4d4f0e88513cc4f9e5746ca0ae5079b468bb3847dad917b7f0a4453e22337619d0301680231009ffb863119f5283fb55ac2f61d49f52b8f80798a5b14621fe2334f496b989e6dfe0248cf85ab04e62bb7462416c0c61c0302047c435bb50067306502310092a36c9d4979d73bb2953238e5056f77fb171d5e559f2c8a36216dd3884f4409f0a79ddb20456e1436d5292c2caf21de02301f57e8089657484828040326fea5a652c81a8c9886c1ef9d96639f410d18b8dede167a99e66a06aa6ae0fd0fff0612f10302047c435bb500683066023100a124681fe4ab7889f0a76d8dc8127a70253b685cd6f69b57a51d4babc11ae86cb853af51d497aec4cee2ee24032e6b8a023100b5627806b4da942002fa1ff3cb7aebc27bcbb861fd3b4bb8fcedd1c5bbca34a334fcef6a3204c2254279aebf7200d3340302047c435bb500663064023042d449f25e07aeedeed477cd0cdbf64637e98128b29b06ac1a62bc072939bda2284b3d39ed0ef87216c7b9826c54357202307d7fe4d7a93a91290b8d23d034e61c2c2976946bfce3e157007edd14f9a49fb1325925162f49c3fcf621fcc1e3dc08f30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ee7f17ae10235e4de7888cebcd343be81e43906582b0edb5a91d78ff4dafed0814245ea743c10a52fef24de7e4db998e02304e4fe91020b023973c5d81f008462da06d0c73c6e302f7fdfc30e8995be64583e06fd13d6e7110f492f95c84d92ffbd50302047c435bb500673065023035c244084321366f2f1eef0d1a4f5451990487fbaa96f55bee4bf63d4e94b71776dec8b5a82b3b71153de1ddc377374702310090b963dbfdb2fbb871c8fabac4917595a83d7341f9eb9ecfd3612dfe1306f861ecc4b199c0a0425ca2d80fbc3e96253b0302047c435bb500663064023062abab87518bc5b3b58351dfe0568625aa90e8162f4adaa8d0e13d58d69bdc54f5eb97d0163e448ba6bf1405b68c559d023067952d262befbbf203a00201ddf2f3173127b2a38ac2280f4d6533b37c0d657e0b7274c6e2c0af9a72df6ca6c520da530302047c435bb5006730650230062f92a4e51a1d8c0595d067bc26ecd9ac3891ea7ee9e8386edc884a568ee82262a65b7c0ce3533f8ac4390ee796da31023100d4814aec2c4c4108d6b061e5977f3d0591c130abf4d6d1e0fa736a1bec1caa8289c0d0e802ffca22d7849f078a1fe97a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230367895e45a15b5372ca03983e0b3c19a6e470694ac52832cb83b2eea8e8a947ff05449d5bfb58423ea4a1015f0eeae120230056a794b5b4c5342f4615f110fc584c952faa72e212fd0b0081e3c5ea1a90e0109c77dd3ab87f6edd701addcc0914f3e0302047c435bb500673065023100c17efc441cd462de437aaab54a73c6655ac187a2ea3d366e42582845743deeff9deb304c38d52b8120824eb4f5a5941502305125fdd63d711ed4db7faa06918f7292cc5a96fd092dc5254186080c224a2572d7d443ec6f1f269c68c9385fe1708f830302047c435bb5006830660231008fc5ac9c8b692bfd840ab6158d4e3f1e6dba1f7f5d6390b43454af9ef5e5e25b7c1f8599c2fff6b8824ba00ac9c243ce023100d9e796870bd85b42402f2ef72071a31ede20b6997452807dfb36e1c8744753a2861f11fef304f8549a0d96ad10bf1a060302047c435bb500673065023040afa068aa9cffadab4fee134b2fec4e90ec6eda34c1e9f5c2a63816f8f184a857ea4e1832c46fab8516606973a8813c0231008e77ae49e14c446924ef3ff9f181ef58b6abb2536b101424c9ad78b7f9fc8eea1caf5988cf9b414798cf357419f22a310302047c435bb500663064023067c4a360aeeb1cdf46277e2c6ddc45c1d1b5bd4fc2b5c5109103fee76922f199e2e3604a252d2a0e616cea730dd3a83502305890ba0687fb261e1b1771d9372fc0217cd5b14ab497f8f1984c7b15d463fa25b11b42d854439926222749df2bc330110302047c435bb50066306402302cc9b87f8203e2267523122c3f9cd08c3964ef23fe47d91728d8f019c554e56121fe859c0ad2d2794cccb7b56e7aa103023015b84461977596a69aaadb281dbc876b269f1e599fb5ee66d9a0c973f031d644e2c10afa7c972b8a761621b6dbdb6c940302047c435bb500673065023100b817cb40932e407bc4dcf95e8cb1ad56e659ed7d90b291c060ca6e43879cee93bbd2d7fd91bc3f78b8d5823391bf93de02303c1c066992ca8a2b560cd0094216b86188e5b6a3e7c1b951ea4f68b0dad9f713901c82c1ecce42befe998b4f478726f60302047c435bb500673065023100998d58a4315e05190628dcd338b4cffca3e7cde7490937236855497099dbca3c57ee3de96fd3e7f7499fdc19dbcd5a4e023067ee1cab0321e34a79c44422aa83dabe8eaca2a75ea55bbb5540a4cdfa005ac053178304ef40daac13c0adb444dbea200302047c435bb500673065023003ce7ab78b707356936871a21e24f57f8b723ba15a3c908e34a91f68380191e7e4affe485c4be1e4da8cb8b504583447023100cf2fe0b1bdc87ec8703e42d39dca8729e2bd3b064e44342be303dfe0205ec2d6f186f0849ea3c0c95c06609292a99e730302047c435bb50067306502303be60a191bf1b9fa01541bf266b5cbae233142c8315f43d1e7e10e348529bb3f02682313652094f3a2f36044e39bcb9f0231008904380fe00bda9f8ea4e4c8217b9f7863d72ee4015a851bce467d8e1bfce1419f59adf33461e5fad30a0dde57c49d340302047c435bb5006830660231008e5e427ed47b51559a0698fd780901512d2314dc7d5c744eb3e0bdcd62015aa5b9dfce1ca3dfc1d44a3efbab792044be023100c06c11a083c05821c47b8f6dba846320379e4e0fd00bdb6f2e8e47bbe863ba1dd0e0c603cc158b103753e5f55abe00f40302047c435bb5006730650230783a1ed280aa99894f6a129f17dc008c8a7d9b9d6a979218cefe00d7efbc353281d607c232d6416c504b09d35a52507e023100ef0e922f54bfccef3e539d0a99d15d12f8ee6f5e13e1cb2344bab70ac8bfd40385151addaafa9cbddd8f41fb8d945ae70302047c435bb500673065023029d546254f7e9a1617df47753b934d61d1f942de9bce4fe37a1b6e8fc7bde9420a5207557c807efb22ca4aea25fb8222023100ebc3a38bd2c1972b590eb8ee33be28320ba41dbf7c8ff3d91707f874a1ec1fba5449d1ba9f513b9f239886bcd32a0e970302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009eb0dde348ffd788a072366311cff385dcf348edc19301dadcb1fb4fe92e90bdec8d2f2af2efbff53aab831022b7a6f0023100a3cfc75879a22ec53c9ec4c3dd72e7e2ef07526848cbe4b3a3682996a5183a6dcaea6f59df37189b188576e69faeb8d20302047c435bb5006730650230334db9a48493574411f21bf0460aa0cfc5ed05417b2f2926290bb0be41bf2d5425d26029878eda1d679399622b4688f5023100a8d6e22aba30d5aca25e8dbdeb11a9d93165a5004dd70c2dcf50a8dc299aebd259bd9237965e7032485125b0d32e4abe0302047c435bb50067306502301f706e0844bb1423d35d32565e5767812129581ac507f6f30454642e58c33e365dac8b01b1d58103d6041b90dfde911f023100ca744de34139e59dacf83d600eccd698ec856ea6fe12051c8dcf197aae39d8ce2a9e06c3df1e2ed9f8a79075ad14c9eb0302047c435bb500683066023100c28a09a317b01b8d8900866bc7d3c161cd1cbd61065e08ff2cd75d76bc0e0b7afa7c4207973a9b35177ede942a1aff3d023100932e9f1bde1300708a39c9274902525c1125c4aef3dd634f3ba67e48326ba47e5257dc4c1edd112affea6e9d7e61e8270302047c435bb50068306602310084d3f77e82bd9893d60b9e13ba54e636e8819e930322422701510f7a48fffe66d9e374754af29a4eeeddc5a089ede4e2023100909d31ee145b7ab7291d6b50af5f4ea36f3bd02f2217c77d6af5ca86e82a09ca4f5a969bd7a2c3c9084e074c2d931db20302047c435bb500683066023100f495d1135b4d03a1867c0e635824a7d99ce117bccb5b4c399d97a8f19712dbf9ac823a9905200495f74c13e9f4c997d9023100dfab4ad33e046da7398e19dd777f2dbaf58ba35130c473da568e6749e0c6144e894d2842838726ac58f757be9dfd20660302047c435bb500673065023100ab6a98e42a9b13dac88c22f0197f14aaf393ac081cd6d50946efb19c7082d501ba26e878f73e3595f92bbd1cd01158f702303e989b0f4909a1cbdb19edbfc3f4125a347aaa8382e186fbdc21192c0a8defb714554d152b537d1dde3cf3d864b047700302047c435bb5006730650231009267a7ef2ef41d3bab7f64ab06f0bdbd1ef9a9463f0fe24ba9e9fcc3056c27dadfd2cc5619bc41bb52983d7945780aaa023025e2052719e56f3609cd866bb3d19065c0fe7c08a9bef946700c0aad8200d8407b626a22906302912e3fdb92c327f79a0302047c435bb50066306402307744634efc8c690463d94b36d9677d3c3b47650edaff68f8a340ce6223966e8beed36c4ac0fca16a24828d9bc5ae27f10230707d6720cf2b81bc9af538df9938a289e252a610ee2fa4a1d2df54b80fb9b97b9d56e3862caf87c4bf031999241d40e20302047c435bb50066306402301dee8df836af47c06984e180b2504912884cbf7cd4b4af9ea0e347c73befb59d0ac7579a66322681d38f810264894405023073d504c21ba1914a74c89ba8ad9008a0ee00c36728480d5feeb00d128a6226d8f8dd86e8c1e6e6c6e03544bfb93da3550302047c435bb500683066023100884afa99e4d96f1c79179b6ec6c47add06f0434c765d4209e477d3de385f81053d672f6bf0b1aad4cf7bf372e74b026502310081ef2fb840b117cdb8301848166a124131d6398c85dc27f103962ce43d899ec05bee301d3daebe7b5b2f41169f2d83440302047c435bb500683066023100bfc4df4414e69c88a56d49186637884672eaa631b31154dcbb2ec2b7d32546700342396d82b58a14d96afd7d1df2e5b6023100fd9b1225038c71c91bb2fc99d910624fcc735b1d2cbf08a4da12110c6370bd2ab7e67c56ec300da53494c7cf68a6944c0302047c435bb5006630640230060d3f970a7b04ff8c3eacea60da709e12da171f393a0927155f0db761fd1232b4da17e92fe6eabdf59e10501e26dac60230706fc2fae0bca54d544caa3d907330316e93e0e356638b128e8caa722be0381e7a96c9c70533d0c05055184c2c4fcd0f0302047c435bb500683066023100af8f4b466daabf28d24e166a6cfa711ee296e4c126973dc270240ff8680c60cd2d5e36013a31ca5ea56656c5b659263e023100c3e9584e998dfd02876086203c474c6a8f745b39d27bf357df869d1d3cb7de9cd3a722c0334967c82bb1aee70486197e0302047c435bb500673065023007491415a42e3ab8ebecab63434ac372f80b14656262a0a8d4a10cf2a28c654d9c05e07943f04c9c5f872000f10c1e4d0231009b4c578424d2a86159f5f3a6167b9a676a67eea46a7d5998c2f16e821eea3ad2ca7e015f93640a4c6cb282b5e71299be0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009246977b7d552c6bf114aa5ba70b081e0334ed4bfc67bb2d36117b87375603fc4d74bfd96c0e998d4878c8188300b6ba02307093a05115f6eb428791905bebff087e5e7a064d85689adf4584fa6e6a7f32c8f23c7d99bbf09fafa719bb93db2bb4b80302047c435bb500673065023100a4a0c2ed12b7eb1da8a9d29d9b4bae7b9fa8154dda433d68f980d3f466bc47584f56abbf887534998997fd7b06ac021e02307ff9f005d65e7fb255836ef24b32b89726159808d14b7a6036804742bc7dd7ca96dbbe1aa1f44b5c70cc245b694fbf000302047c435bb500683066023100a65bf7235e1703a77a944da5d5003762e9b66d4eff7bd2bf08152cc31611a4ca32f7515775932c514e50df281a3806fc023100badc71b272d3207e49302116dd362d0c3baaf994ac5f38bee14d3b60d70ad4e117b9d0c89e6d17cd931d1f7fd3c809880302047c435bb50068306602310093bb4312d289c4ef987e2c6fb9e6ac39da7ebe88808dbb518ab32eb47bb3c1366d652f9cb5adbf5a4d743114031c6a6f023100d2df7cbfb123f0bac0641ffda303817a2c145ebb6013d380b08aa5638d30b297f5c63dd3f5b005f6d6450677d6d50b470302047c435bb5006730650230352b2e9908b3525b412f8833069d3bbff9f9a7584e167714b708a329894415052497101d8f09f3acc766c4d223a30f55023100c2adc749a7f826382563ce62cc7e0af663aa80775164b5902b9afb9176b40de76f8b43b38522b38e82df1400a1f7fca60302047c435bb500683066023100febbd7ce2e950ee4e95e61376581a581bc8ffb6c1365d32efa16fd2b2e4fef9901fe4d8abbdf867e91e241ea4407aae402310096249248a46bb10659a1256f656849cfc841a09b8590c472434d2949f13ce18ca4b3b6103831dcd979a4afe1f508400a0302047c435bb50067306502310087ce57d99731f1168ddf70622fe827940241ca2190716ba30e427ddc13eff10fa9f44dc424829ad621caaca0eaea172e02306d1370e839136b8fe3200496630ff245b5c5bf2c2ae17f530d4ba1f077624f0db83e8d0c1b79cd39a9713aa60ad613060302047c435bb500673065023075ba15d2574247258e495f4840c134460ddd7edd7b2ddef9a20c1068033881fc52e976a874ad970a8545c391a3dbc7d60231008c3a72927ea5a7f6f37f65ffbc658030c3769fac0fe8ba808a72a8d02d41b7c61d23a76a208caaa3165f98e09944d80e0302047c435bb500673065023100f95089e3def541e0051e6557ea62a6229af8aac0ee2c84ac7d0153bb5435ad98239d5f4b5dff54f4bb9e8e7ce192b61802301cbb5492b8d3df74032130393c8abc5b945546b0bb3d6c262eb3f66361309be2a2d0878eb5e7b775dc88f5f512f2747a0302047c435bb50067306502305c3710c817186970698c6e99b9fa69bc195bf073fb119ef1a4af312ff0f2ef3660ebc53c317a2aa55a3b90c086132ca7023100b8f2c0fe9c39b04573de5ca6d04cf74cd4c037e176659bd7b3244e6e580da8492197042066b82a1aad7a2f459d9ad01f0302047c435bb500673065023005fb245ffd99c0c8f680d070a61d7342ec78e28f5c82f8b4cd98f8bc6ecc2081eeb343921b1c0bc11f0f8d2594d28b4c023100da64f9baf7f21a55d9431ac487d069d897ebc1ea58444327da874e38a4567c21dbfd2e3da25fb7eb5b22ac92941457280302047c435bb50066306402303488374ef73c265f9756240a17c6a1ca16fac7eec9d3dce769738d2bfd540a7efaa9df88ef057e3ead9f7072e7065e1d02303e2f80bf06d21954099d6afa5e1ca9c3759fc760618a4d964a3346b946a841d9014a8dffaf82f2cdcb540577abb0471f0302047c435bb500673065023100f8a1fbd7cbcca8113146e0201ae02f703611834eb43a189a136dafb9b726c585ae76b401bd4823529b64a5aae4e0c2d202303c09c5b4f9205c0fa98c1f01d995b5961db9b831e2b8eda268d81248d0412e67f077eed90e0b8f7a36c5f6542c7b21ec0302047c435bb500663064023018f4c14a5726fac0286cd854f3b3cddbd9a5c45055ed5086be885b68cdfa0a5bb65d48591f33da05ff9fdf8fd2ba98f502302fe38fa7c874cfe88cba77fb0765b01c40d459a98cc294b5f2090ffd3f03ba224731a9e80aff652ca81a657cdd93141e0302047c435bb500673065023028b16ebe3ed9505ec97c2a6c507b7cab4459097317872ad479c14618baefc961357f8993558bf2803c81049d4225c601023100a97633ca4960b5eca8c4c17fb3195b17fc96ae8968114b543bc1702e111b7ce54631319ea1ac656f377d1b344d69d1350302047c435bb500673065023100ccac7f7a1d9cbe4285a8d3388ba7b43fc2ab416dbae3648070606b13dfa3495f36a080cc7931bea796abca138bdb7f620230470ba0ec48f96b3a2b901d96a9bbd0a49c3dbbdc984e35f05070c1e9859866195b056aba584e1327d911c662b8bd37bf0302047c435bb500683066023100b4d539ab6f5179640d61ca5f40b4cdb66f613b786a3c75668741fe73d8b087af029d0cdf1be924be8f1c570a60f2291c023100eda4baa21df11ba73f80f3fc08eac0bfd67055641a9164db392dcdb8e33163bb3856681596e68766d088bbaca7cbb7570302047c435bb500663064023032b5344199956815b633c819b6e9e27cb0debaa43a66072ed9cade3c4ed63e92e96c15a91842a347f1e6a41905723df402304e686574cbf91dab51440260e3aadc751cb7df26eb5ed51f4660c060381bdc522097e7412b8542b67f354bcbeb97437c0302047c435bb500663064023029c60f393b79dc563debdb7c9eb4e227484262acbd583fccb72b45706d11a7c35c00153e08144844b29785240be96df3023016b7738cd7d605a82c32e8b61737e7c7cf393a5c2a315283aa5bff7264ee51eb95848c369fa9a0b490bd26d0fcc58c650302047c435bb500683066023100ea907c026a7c8575652b86eedff0024589f1c247e2df0cad3f09d41017fa420aec9676597fd8fde6030ae898467c19a2023100b619e3c2942c7d7c66c784c9eac68595d81113be4820a1522e4f6e31c5f5afe1f4377e272a22368b4cc2ba5865d4f6280302047c435bb500673065023100e3441896a0582c64d34dd2ba80785a497e2a89bbfb26f5dda8109bccf70543acd7b9f351d2db7d8cc5387123484f9abb023059b7869a2152300633af591212a7dd8112010a2d672cc485f19e9ccb459b40bf8577ec2bfd88fec97532480de2fd63180302047c435bb500683066023100d37a1f5615ff83c4689bb7fdbf9d7b51c3e090edbef05c08e993f5c0819ef2d245583314e1848fd614e070fb935d4d8a023100f110ae70db3baacf2279f316087267daf8ff473cdd6922a14157d9afd35ff67bb7b5623536ba1f8a7aeb16b8a7e464ab0302047c435bb50067306502303711ae68180230f69da1599f6d878d8accf62c6a9a1bb9ccd7d2168590a0c539845c77a91049d923e1da9a1b8e5840b4023100bedee332fe4a8f35ce6cd7916b43c4d7bf1c77936235af6fa68ed7fd94a8c9eedf8a8b4af054341e9b9bc4432b17008b0302047c435bb5006730650230797719eeea810267cf785fc7c18a98bc6fa50e2cd40aafd584e09db21d8c36264c3ad4bc63e732962a4fa016431bdacd023100ccd4b6efa39d99328f744a728acebcf8aa3a1a68786828be87dba7910be99fa3bdd44b1ac0ad9ddf17642cf40e687dc90302047c435bb500673065023068aa7d9bd9b2df23db947562bcf0c20ed0f9b0f4daab28751cbd54cbcb23b5d8260d6c791f7e1ffed014d6dc42a6976a023100fff012f6d3cac85b74cca3f971c35f1a8031d9230b74e4e8064c04aefc1311e2e62e9325a9cdff3e016437e42b3422200302047c435bb5006730650231009375e518839ebf73976667b697b35f213993b2ed7451f52ca85ea77de400bbc9e22dfec588d4ea3b24d04b063971ac7602305e286cf3005c5e9bd901e97e504847fe6d97bfd000b6bc5abe48b2412b6c0e8c31e4dd7d169a120c8d6df529c021ea500302047c435bb500683066023100b77e680c36de423de3437cda4ad598a1b51238a58bc624ded42bba3d840a5bc141db50bf37c3bec3df611b71c29a1760023100a58e6dbe21d23995cc567a7889b5189bdbfb22658d5da0ff36391ea9e3f078520fc4c974b055f2c0751201f686a76a530302047c435bb500673065023100eb3b1c9249e78490a6dbcad824fca48584edab02da235cf464982940296437dbd10b18b7ca1331b99807728150ea9aee02305ccf43830df5a11d6aa70b5a35ea2d284a2f148b6d9dc0a6b36f333d7ae9257bdab25d1ab80562544288a9cae1b962490302047c435bb500663064023023f74323a993712dd3774d70dd1a5ee02004c1ffe4561ec47e4346bb214cdfd1b6a4896a228da7231daa5d80c9f821cd023047958a7cfb2812cc4e1db32250325e18b0423aad70b0d55efbbd24ba4828e1c2accb742afa3690e316b6bfe88955799c0302047c435bb5006730650231009e3a7d323008b9b1e5982d4efa39dc660327567442be41ec944937c6c175b84df2a4f820a56e4a6774ecd0274184791902307c29cbff72320aa529b8b3d53eff1d7b4f64cdf5e024d23ed6b2bf5fbd8d8dedefe7821cf3fbecb5569f77d434daa0fe0302047c435bb500673065023100b92c338da4d3c008006acd32dd1d7d099119839cb9f7d2190a6648e2a66c354ab24abadc93d1d7d489c4fe18e8455e39023009ef1dc59ce8e5e49bf598d76e002fd5a10b4588c00e412e66e34b4ce1cd12882455465c06860d5f9cde1766dc573e760302047c435bb500683066023100a8fb68a3980de0b8a688abfc409adfa375d511129a15b15f56237e5625d26ea0d6b1aeb065c4afda80da64c0914148f5023100ad487099e0baf41c9dd40f2833da6b03cbd7ce6d891821505b01db55c09ec7d38235bf4e18e71b7aeb1dc142242b77290302047c435bb50066306402302b0eda0b51909e373df0e0129bfc2277cda76d47a80957828d4797fd2c81acc2f3846761b2d1da781d9e37c6a1b8b660023025d8c566b9acc2435e305b2d4e1268ee77b10c7c3434e6240620c543751bd6d15cb61ce2979f642dd47479408c1cbd760302047c435bb500683066023100a895f4c695406caadcce92714e6aca36f424066d00d8149958d8d9732638e1ad666643bd8c5324eaf852dea780ea2ed0023100e3285e3466cea096705d8b4790633dd4f4c299d66def6d72c781f98de9c3a669667d526f3d14058d5728337decdcd8ec0302047c435bb50066306402300ca0c0ab1cfdb7f2f39301bf5310a60438b056b8ddf77dc7da9977e7a1c4fe4e6d37e52c13b14acda7edbad476abdf2802304da0f1b54f01d6e1d5f8831afcd05bee86db322fc1d5b54870e6dc4c38b04b8d7d88746e776979aa57e4f6a08841542b0302047c435bb500683066023100bac19b98dfa31f515cf083682d986c389101035a0472994b990c29173870d13fcf976f3976c24575bf32a1413155824e023100f63b4b3f6668bcc4eb17aa6cb628f03c7c9c0a0f93d93775526dd1f10ae58a3a906200d1f2641a6560be37ee8362863f0302047c435bb500683066023100ec3ce5c999fe9eb2dc61f17b8d10bc6ffe31235bc28fab9fd9524cab738a5855132644ccbc7e93167619ceed408fcbb2023100e9de365d439407be1e9d3779bfb415853e2c3a3d5bfdc7718c01c0e0c9546382e8aa5dedb0782f102d6d580a0ebbbea80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008134b0c136bb260ed60eab37afe6fc45c5f6b05decc59998c2ab497b8132bbda22c5cd2278069a1f8ac9ee3f2afede63023100971f4e689b272a57b93d56bf4e797bfba331dde5ca1e8ca8a017ae93d3825ba9ee058ac872ab9931b51812920c7261ba0302047c435bb500683066023100c226ed8ced33e1210b2ca9838a0a7a25f50cad65cfd398800a40f9acbe4451a5425a7ac5069e4f0ec9ee3c984c5c50d0023100d46e1d76112936308d896e7bed0bc3076bfbf5c11cb0e57cfa03a6468dbdac1550ee50984c8d16bfc74f1931aa3bd1cc0302047c435bb50066306402302c0ea562046b76893e78c08284beb04d9f4f25f7c17696832c661c4256508b148d2e7a4f495ca372d3e20cd45d9db03402303eec67b48b8fb10c859d16aa42fcdbf9fbb2b1c5386d822b462ef77db836883c83b3f495ec6d07b3b0834a272e145b0d0302047c435bb500673065023100b7e6d9d640f72c0b6220b21c77675dd80043a132795c26535000b7431737fd60d3566fd2bd8bcc9cf1c5a352c416bc5002306631c303464828b1763a304cbd151cb397c14803bdf3769f978b9fc6461e3d871da00a43cbb5ad605e1b87f61ed16e250302047c435bb5006730650231008529e2e164de9130f8b513a9ec3de73b71f86147027d67b1819cd5e485d3bcb1ff8152a96f93efb5cf73bdad5319cdd502303595b53280a4fad92d9a984c49eb6feaf7bfa6345c670501c7fc30dbccd5bc42fd69b58130962c457aa41c486971880c0302047c435bb500673065023063aa236260bf7f033d03a9c51b2234c16c9b5b58a723296d668743c5d03516f47075c1ec19e3503445894b8f03d5587e023100b94a05b8987b4268205e83fb7408bfcc06a7ba5536b381d397bd68635bb53432d39d58aa8f719ebb09a1680b6fdd111a0302047c435bb500663064023042c5b9ff2fe673d4f304e32d8268275b5bb2831fcc5b8e92bb9b8bc68031eef04905b0990abe70dad93fb8358d6845ca023009bd16d0904d3d3bffe288b782302e9262f5695e30b141a3f24945b096d664cf9f2fc1a43b6670e7217ceddd12c9cdef0302047c435bb500673065023100be724e12d11e72fc310dfc09a77846679baeeca1366f58045247c4a601674309db9c8a38d4672fcb4d9e687be3540e9c02304b0d27fb2f95e3a8961f1015c2309f08790f2973b024107898e5af20a4e4fdc7ceda7416347486b485c9274a79b9e5a30302047c435bb50066306402304d7b3238909569068ff7899f30420a39e3d4d87f690112acf838dc308f72c5f2d035c08d9e43cbb8186f19d7a15d366c023006565959aac4eda1bc4eb8ffcfbb887b4ceecef0d522b68c67a5e1c75bfe03c35029c9f7341df4e1c82d70f5a83c57780302047c435bb500663064023006facdc8e073651ed3cab087a2d74409e245ca77a397bda87f9a36f7833b73d42239c4ed00f561d6744e8a5cf1d05c56023000ba6b78a681bc139aa8baf5bd68cfe1c49bc4cde18fde626500a20263c50a64ee8728327c872ae167ea2eeac05e5d3e0302047c435bb5006730650231008963cf852ad0839d0cdafca13cd6f2253a65200aef487b610e6e64aad0552ba1e4332b5ea83f94d75014a12fa5ea627502301686304bad600112330d25df4cc74217202fa9814af24e3b38c87c7ec151414a4663e9288a8838de2058f4760685ecc00302047c435bb50067306502303474f67c425ab5e12b4e0737925cf2f9bec2b630af5e20c0ee418295f2730d266b21d518082603864f74f6e92e100033023100982c2ff6402408efffa23a0a77a3f0e7fe2f2baf9752972aa63b7e8b914bf0eeb876f18dd22cdf70e85952ace675f2010302047c435bb50067306502304ee6a70c718a41b19429a5c0c853188f759e7953db33c69b2863a59e542177f569bc861f4a3b2aab3bc41e5aeae40d540231009eb21b664aa03086aa18b17454da69bf1662673d2cee490bf7ee6ab076d37716f05890b24a2be9a025d303bcf37143990302047c435bb50067306502310085c038d6c4974b2edec4cee7ea06975772da8b9c3965dc64cc97cb69ba3a2233ea2cf16231648fbcf74130704d618e0c02305f9bee9e999fad263046e8564ac1d46c96867ea39c6f9b24b75db5086b2da49eb394664691c11483cce865abe07415190302047c435bb500673065023038f8f74bd6398e34bea032f83f1b8ff14de39adb7330fc502cdecdb61d0c3d93a66f8f35789472aeaef1da1ce1d0d902023100c7ca3d8f7c3e24aff651d34b59b154e0df6c2fcb11c2993d1dc0930561cbc5bf2ef493847ca7ae861411d1eb9ac7a5390302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b28f557075afa99babcf2edd360b56b2a078e424419f0da8c56792960ccb04fdfaaaba0c440029298a84ae645f2bc665023100fdf3a5abe3935d70619cf367c6bf61093ee76690b27fb59f0fa4c4743c1f8952d41820c0631945cc3f077622223821840302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100cb7f961e6495d2aad917e37623723e332533eca7f1007793de11aa628dc1174d9896571c702bc655f987b4c8121d6637023019b8811fd353b69eac35e368f8750679d15e38e706cdc3222176a1f55090a60ad1dddeffedc69c9424b8eeae0f8bd6a40302047c435bb50067306502302fe5658a26b8b789177c79c49d3ce488ff60b8a11134b8eaaba77ff3279eb33660372d912c96b3ec488a01aea28b92ef0231009d7b5e07a7f7d4c6452f5898fdc59ff163782c22f79aab0054f9c329269bcbb832dad9dc4233de18a17c405ed1b12c9e0302047c435bb5006630640230588431dc96d64b9c86936ec67c4f6eebfd06d756d6a7a029084a9243141713d2c851e8998138e9837c7bdaa1ef7adb67023034ce233239a6bb1b8664d00b1e4d822c663b295098651261e113ce77d8d4ce0c9760106829bc110f851e679a641eb1ce0302047c435bb5006730650230753630b779821de14a312b151d5f7c9bc8f7b59f6c5439c28043f2ed152e1b9719da234b38063577c46b18e1601e6f6e023100a5869060cde4ba1267d84815c257d0fbd61d076036c7c0474bd73a1667aa0ffae09e3aac1f10745f28ebdd1cc77d533f0302047c435bb500683066023100b9508a3ad694e951c79b3e5365e6e5a0f6a3b3e1b77bfa6cc5fed90bd887b60507ebb13dda8c4f72eb61ff3a5076f448023100e8d31eaf519650a69eb5711407552563fe0d0a08d91365189eb75476e2c5aaab84245f481517c3ecaeaa98bd4d75f38f0302047c435bb50067306502310094c7685ee18e6e4216051ce7e0670aa4daa48b0ac4fd7ee84ecd6b5fd9cb518a8a5f86fee7583f08cf97f34b6fabbc4a02301d9d275e592ed87da28ba7b82ae6106e0cb07158bbc374a923343d2723ab418bb3b741bebe6b16ab7a3d7f5ca8c4f7180302047c435bb50067306502306a1870c26285ee042ae63690a73ceb9474951a2929f3dd249f2122409a9cd9ed36a6ffc60a7abe49e6f9cc7acb4952700231009f88386e335431ed9f0ff8e2928a6e409caf61798b16329a756a55be8e590a99da361e9b09abd274b7ad576c080ff5a70302047c435bb50067306502307eb07cd648d8bd0f81a43bccda78cd867023d1cde6bc070655391e2bbffa1a5e5d644898bbf3aea052203a8037d106ea023100a5490babd322b32005984731d5c49d23933cd88d532f8306f65166db08f895b6bb69236583330ef0e1b9a455b106a63c0302047c435bb50067306502306b00b18c97147ae4cf6c557d6c30e7732d28462586e5f9c2a00b144fc25a86a502e9fd982e74d18d394d365a5a83e083023100809f31f2223c80e5f1695f4aa242919b5f37345c94376da0d527232ce0b215497ffa8e014c0dd9b6619643a7450afc020302047c435bb5006830660231008adbbae69a6f6c4f1751a8cf64c844a784731e1443176bd1c8831a0cbd3ba6ac783bbc6810d8aef32d09750891a996e7023100e3f3826fb031b2709843efe2e2ae0a4b5da6dacc021c081376ff191ab8a769f025dc9c3f041fae93f2866d9d2de19d490302047c435bb500663064023054a86e7140d3eac229bb089538e32bfcf25e3885eddbc3853521fa54fe500c5edb3b5b45a4b243351dc024f0808bf5e9023039aee0067c312ba5f573f5135c2d18abf563925feb9e74b4da3d0d4958b9768d8a8fcafe575ea6e506eefcc29b7375080302047c435bb50066306402300aa1b9460db0076b68b1d110eb3dde46021cc7445ae4e754523b78ef329262d95a409c659047b8709fc563ae66bf9848023022da956004a86b29958a4ff5b70bde37fa18a07adbc8b6cb9dc975bfe7c0944db2f3806ecef8cf79825decab120191c80302047c435bb500683066023100d9f178aa3ff28b96cd34ac7477aa3fb3ae5cf27ec6f8c21ad83646bbfa84c4c76445c8d37f55658642c7b16128910fcd023100a481084652492f6065c55ba564ca9dfea02eadbb72ccdf0377053646a174602478fdc81d47c12273b1d73e9f65444a040302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c5cf2fd527413310d2dea0df234f43a28a6a6a19b90aab64bc1d4afda0bcb167041544434c45c5d17ac49416d3b4e0dd023100a11dc2994f027a3ce202ad5e9043fb979fbe21d28e798db3df75ef030fbbec686b31cd2998068c6a7d5718e8e8566ef80302047c435bb500673065023100bb4ed05c2c5abe7746358fcd914ce940bc3df1a0ff4b2b1098a6575a489b0ecfc38b77f8980b43420508f421d3eaa1f7023063b12ed58a178b6867b695eb5968d25b808a66856418fc443998acd7161dab76fbb66448c346e46480fa21022cbad7e00302047c435bb50067306502310099026fa7db1dc2b97e9e4d5ad14ea929ae4ad78aff2405badf83374ef682a9fcebb734472b0edd170ba23d11ec1e16280230190a9ef493a04d93a86870fcb9bc8a9bba857a744540e0364d4f7e83d6e1d259ce681ab6c5e0a75fdca08fd299d47d130302047c435bb500683066023100bb2d2e29d7e62578ca9ce4680860875362ba21b1d6b09595a6c426fc138be37773f3238400c1083f43f6143146a5cb28023100849ff4e2b5aeb2b27bbe7a4a92e151116f15abb9c4f68911469f5b3d7be85637b1a73393851ab49d44b13def216489950302047c435bb50067306502301cae48b53795d58d4039e2e7d8ec8eefdcfa5474364b34daf57d4cc7ff5afa74cdddc1c33818798c6d62d10b0b05fe54023100d02b3c13dfd3f2b0d34e5a8af516403de1f2708dab3072f673fb10cb04c704eea22b66b49d1ace56695d3c63ba8b9bf90302047c435bb500683066023100a643b91bd428f3604b66421c2a4390a64fa1fe8782f7e811e63c074e8ab35e737c437c701796a2c1125803cee546cd8f023100cb8bd7f89cdea0369443894f523f261b409fd4de3d09b28c99b8cd8bb37b7217370e3fbaa4beb38b3c52313ddd02599c0302047c435bb50067306502303586d6c8c82854cb15b11619dc3f2165b8bbb3404844985d72704ac1d88eb0245d8fe6ce25897f70ac84a78694ae99740231008027049b2c94d6abba08318817d0dc9c886d9aa9e1d8bf41c04c82f3a305e1df989469c3ac475cf5f13b59ce3c1d0db00302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500683066023100b682e67b797c6412506a7b201f8df94919d179f308011f9dd220835ec3a697b65559aa6145dce1305425ba30e365a4c802310085c29ce542a0809937a1a0278ce67f3c18e876d20d2f828bcba92913d3962dcc250f7914c6a12796d649d6bb83db52e10302047c435bb50066306402300ed209f1bf9cd0d10bbeb9bea1107e66710de3ed5b4c0a29d0bbfd25eda4248ffe1f2c04763098574d41b68ec1d1c0df0230052f5408bfe1f6854c47822a6a8c9ff500f89fbef8a30e9267b176d06c421277261efc9cfc2f33e91af618b2bfb0b5540302047c435bb500683066023100a97e1926180a204b22bf1e298692e5c4a516db29b6e14889549a704cd5f333c8a87b959721bf58ae7beed2f3917b659a023100ec2c16e540bef849703d9b714fe707578575665b554c96c442610a44216e2ee4f9313ff933c60dd20ff9acefa170c9dd0302047c435bb5006730650230700814905f9c8befd2d228cffe04638459347c9572ae12c65892bc89542f15d391e6b1914f1205d1718ed6575e29fe210231008af659d960a74e527e0557db50bb2fcb288e08ca196f84bbdb89593e23515cbd782eb8274d968d5c6d45e0013b87e3110302047c435bb500663064023031469f3c26eef3532c1ac8b7e7d8c1ed84070af589d8ea1557008f4ed77ff31715b377e37df46ff090bb5d3e03e7ac5c02307b4f18475fe7906950546c507cce995b6c61c7bd45e52ef3cc67782572d7db5476e3bd93e6dc55457f6d0dd284bf4f920302047c435bb500673065023038590a76bce07a81a7df928f084cc2338c5bec340c5cd09dbd0d89878f8ef3d036934abe59b0dfc2fe009ba870f2bb1d023100989447b614152247b236f9d786a19a16acd0ed63aa87cd7b31790a5e3b595949ab6ae133d7dad478edac006fae3d14280302047c435bb5006630640230435dd6aae14859457867edf9999f906131f99eeae04f16d31e58a7147fb87f98f6a5b26335d9476807b1111c1bf8c5a9023056f004ab78c8c7b79a336441b8a2489cdb12c873a5eaa70f61f2e80fdc6d551d56f8ba357223cb6f60224b9251778f3e0302047c435bb500673065023100d37be254170959fe84fb4898c21aa03e222f1d841462ead294244d233cfdeb5ef803ababfb436daf88f673ddfb396a2e0230464c5e326adef5b23fed77f030e6edf3b6046f030398e13b5c126646c2b0203d09150e72531ced73e566e84f1f5be5920302047c435bb500683066023100b230c8428e6c60ea39313bd326d0157721065df9c46ac614477825627e2cc41d61be9443a62a0d7b65fbc86e0b2204c3023100ed6dd110b58a729ef6bbb7de0fef5ac3a27e6df96f84f71a9253c22fcb9b814e9f0a5f926c55a86dc32379dc0b1656d60302047c435bb50066306402301576b6b51f975978485ae0cf7b1b10548d8018b729e04fdc7dd0c7966deef60bf5337fba819ddd9b8c1cde948b708c18023023574b9b95f8aea0c889638aea2c1e6cd22ba023fdff77ac7c0b98cbe71791ceea5a850e0dfffad9db8ae840a27ab2bb0302047c435bb50067306502305ccec5cdc308033c5833414a4b61a5a9f5ca6717e882946872a8f4c6a5832c0b1bc11a130cbe191fb4e2044ce1faaeb2023100b3a65c923a6009deefc2b6333bef1fca45cb1b1efd906d659c89b39f74fe27c1444e35a70d551e83a74a680e1c64244b0302047c435bb5006630640230081e51b35cc37acf9814b54365f318d5ae914e70428685ddb2f5f3c72857f2b0bc9d780852391e58d82038b8ece57fc502305afc592d66e21bafd76a71091995acfdf93ee4d8c2aafddd647eb331903b539c7d6c62c588d21e2ec41b869ce226b6d40302047c435bb5006730650230191523a0541b89250c207247e557f11bfdcb63e06c8e9138224745a57821e474e3243a00243c5a9143b222c66f3037e002310094ee74dde7f60eaf0ef500459014c278ca82e5a9c40bb789ed9579865dea7be81d01a2c4d74dbf2d3b82fb022bc573ae0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100fac91b30e519520a2d19e5bf5e0c01640fa24e3070686eed8de26093df7bb11945d71d880c71a68e027f0a2b6b9837d002305dd6524260a9b863496e3e4f31734bba55b2844fa616d14d729b298c60c69bd81d47eb2224738d943b86b05e27cc1c610302047c435bb50067306502302e721170009ad37dd6700e5c33cc546d883727ce3a2e2f511cfce4adf303dce323f7690dee46bd2a03ec089a07c2b1800231008dd4c71c25046a8e8f398aa71f6da02a7f3c11dff8662093e5e4c1ca1ade11c8e09b9bbb6462facc2a3f26a44b96cffc0302047c435bb5006730650230360b6f83850b8fb3285454aca537cc5feb9d7c84818def10f861c889219713be4e077e4316832f8b109d4476e08f628e023100ac0930a90504615e2ac45015f4b5dd3e1e197c7dc844697c1bcea5eb2946b0fb81387895d434290404662e352ebc61620302047c435bb500673065023100b0d449c25a0c9116885bbcb4950dd73997af431811973e5a8e07ecea6ea1e7c24e413c3ee1d9cafecf6d10c061beccb502300ad9ff4b685e0e237ce7e6ada28a380d1fc32d0b3f93fc0452d5d13ad5a9a9ba82d421caad206d89dfaf2e3033ab53d30302047c435bb500673065023050b06aa6d151b2da3f60700cdbb254c53f25c47e965434173a1155fc0cdf933072b62d441dd2c3e71f4f1970caed2c6602310092c713e23949de49899d33cf0176d518dd813e1ac01fb9834deaf8270a36eaa4ac95a006b28e9071611eac0464e9c6470302047c435bb5006730650230526e91c6ce2f39333c7442d347dca59ec04a62c6ff87900b67b752cb4d1c5bdb9463624da06c8c7fe6a15d7003141663023100a0709dfe4fdc92a46aec007b8016a9ad96213b075401af9cf746e6f4e2c5a3fe1a31ec238cfece4040bbe7e9a732e3b50302047c435bb5006630640230443484459123f5aa02106fbd7ae3c90a4e97455b946884088c04c850e896155ff57021a46205b1bbe55524d8fc0937ec02305721119f24282237f3f860802dc54266d0c2ae0e70d2874dde9ea60f176f508d692bf039db8a974f1c78e63b4038c6170302047c435bb500663064023035c532bba74b110e27d43458fc7028affd81482b46c8a8b9a4d67755217b21354e3be2ca7904321fa33f5e223b31526c02303dd4d7d68c61d4f476df22ae9904ef3e05f7a6e284e997f771dbeabe4448193a1884f7b9793eb99cbf377b394dbc97910302047c435bb500673065023100a7174d69f077f30faab1c4298389c5a5e160908d5333ccdaac6dce44b86674f45fad1f0197b1618cdb9f118b522c933b0230019c842d65b7e1d0be521a8d67a19cbdeb8c313bc5e5a67caf961bc53b7b3dd5cf916e9fab86b31c0de60637226f13ce0302047c435bb50067306502300a9993e6890823799deace5dc5375fede7051fb0ec3acdf9a8edf1c8a5485b779985c6bb70043403c984c4ee3a6c3d9b023100be96c3bfef5e2a44d99e0300ee42f8503f162879272c36ca3d278313d667fd801c2e26b992f380697995639fda85ee790302047c435bb50067306502304e3ba5b4a52c76cebe2ecc7857774d189c713fa654ecdecd7b53b3e8582113ee7e37f2f902d0c5556d93db37d53699a3023100fd20eb6f36ebe430077248d48b40fbe57cac07f0551eeb4324968e87e1e61133ce53ee7561cec42ed4647b0a6a262c800302047c435bb500673065023100f9c5b9f3ed73e1e6a33d9f5c36681d30952aa5c973e1d9e65469c221820eb88242eb8702a1fbcf9561290001d0e808ed023071b7a19158b8dcc1925759ffb41abc89105dd2c8bd15ebccaba13bd145ecac2b3d2cf84965986c6016692df690083dcc0302047c435bb500673065023100fc68aab3673076faf0d07f92db18a6de04c13730a9298208c1bd4b4ddd03bc70217a89fc8b1fbe5c5c366c16ca7aeed402307aae98648897e3087a8a449edd2c508a914083b275c38406eb4b790aec1923d9f6c81f4ab7abe5f79bc6965d4ccc550f0302047c435bb5006730650231009cb685e34dd813e5527c05d82989331aaa675b5cb8c13d98461f1b5668a75ddaef715057dda119ef0d850f6ee9340666023072a0fbfd3242696ba8b33f4636bddd6424858419907729d4883f943f5065dd3852ed1f316dbe46f430f520c157fac15c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008d11e9c109f3f706f1611ebf7f6e5c0a4f2874480caf00e0cdf18655cfe65d0caa9bcd50b6740c8071cce0c3ae707a21023100c14d8f652a326a87b0ed59783fae7cd8c2ffa6b0440dd795de36ad8a903d40c5b4af05718661dd8d1701ded32a3c382d0302047c435bb500683066023100d8c622b148666df7e4c6f3af74d5b84ad1d4a4631a6b4abf0f11aa688ea73774eff10463cac4ca32c0dd1584b0cf448c023100a24f830dbccebe8a76dd20ceffd3ac8c413ec24870a06e7d748a3f15324e03f42d3079d69a7489cc1d49b3986811405a0302047c435bb500673065023012c4c13fed872c1cbe77b0a5e6fa777590d9d0c7057855d4af8f9bcc023de03a3e59953589024db0cd207855bd0b1bbd0231008de293ab1f84e6a7fbbbc7636240ac3561ad80c94583f2d530dfa39dc8c9ae311a4158dfc46986eaf0f36fecec1411810302047c435bb500673065023100e01c721902716a577911d7ec4ac6796eed4a161d83990bcec7d7854b921a660f0dbba22567e75aeac2a1ed3aab3a19250230634f02ecfa0e59a113263bad89717e0d3895eaab746cd2c226e2841c5b774e7d71e2c3bb05daeb7a513f40bbd33dacea0302047c435bb500663064023037e99c83a3ed966654d9b06af899d991233fb8735f0b8b924087bae96ef0cca9ba2762498c8f17f101c35df1d31f54bb02304d1bbca36e05f517b1b39aaed2d02c265fcb5376bc510f5e78df7e25b33c6cb0c225cc6acb39f825713e94b22c371edb0302047c435bb50066306402302ace1ecd42389208f49cb78a51fcedc6a6dcc5f50f71cf67158d66938da4673b0fe86bec68014638a224cc8c38378ad0023059cb7949e6d7cab812d3eefcbb4ab426ada87836a1dea40dc1d839475575ce42dadf59ec479bd5fd2a62e6bd4cddfe580302047c435bb5006830660231008c3b56817d8bb335bf4fcf3ef6cbce3176b4799defe8cf5d355eab4a35ccdc84190f0cb63e4c344801780de6d910c327023100b5c86ed16037fe6933fbbf00d5302f20eacbedf7127c390a7fa9173569f797ccd587fceb95237b8184828e9591c4074d0302047c435bb50066306402302b3f14f4daf9d5dad97cc0405611b549cfa2d324b55cebff1b5bac2e6feb93636ac2a8c26ca7177ea6504e4b6fa7d174023008d94a243aba4c66749b5f748bca6ce6afc1d31b6875d747a600a65145dbe03056c13dca8c76c33922b898a8e86d787a0302047c435bb500683066023100cff17f14409299976ad948ed82b381b45c9d1f923fb605c20f6f847207d5557af0fa7b998784e80c83040977a66666660231008a5d582d0d4539a33ced8bc1111dbc63d9fb21d9a1ec2fce2c7b6895847ca6f06ebe9533b225fc3e1a7a872d0c540b110302047c435bb500663064023008df007075fa2bd119efb431417308ec4f70ea8606e59544ac2b199591b368ed33522f3f7665de6cfaa15d1c7f14df2002303b8546c56665a06cf871c1e6a375333e4e22276f87b63922a4e189f17bff9d7a016a279fc5654b4b568b4dd7d53b2ecd0302047c435bb5006730650230017755c1977090434c131bc2538b221a92ff411cda2b3b1650146e53b43465f67ec79e4695938c56d5b3e8b5577f3518023100b14a4f05ac000e0c7043bdc9b6023f59e8c99a7a5f72872bda9e718244b86adffdee2176ae9c05522abcb8862cc3775d0302047c435bb5006730650231008ab1ffb19eecd1d3cb090286440dbeb4fca7e55ed8a9f2653123627f8a002daeabbe275bc13ab9babf09ffcf8851e6a10230682171e77644ce51ea3e3949612e86f96146fd94ff12082c92cc5e77732320a24462fd65cd1186eb653eb1fe055d49a30302047c435bb500673065023005ae327ce390d05104c9e6b16212dd4927234f52e1022c73d0f5866f4a00ca370340c4cbac0142ef8aad89ff1685f277023100d94851bf8bb802223633550a8678948e443427f57c85c90f1bc733a1b1991000f5f86afb73c258f0932f5489744060a40302047c435bb500673065023018700aff50e60040962eb454e83178e3b4464e2bac28c144f07bec76e8aec5e1dd2a2ad81b989206adb84cb7a60de32b023100a44d79a5c2bacf641f70ea01aa4b29a4057522e9cffc2290f8407d96de60a1fd68cb08db39192dc8db0ee4364b66b6290302047c435bb5006730650231009f8fa461d1590ffa3da168cdeef62a6fb23f960b57e331302e449eeef277efdd5a90245100cb782d8a278925a9df716302307d6276b572ca7c5982fcf47fa79f4393f74fa929c1d1f69bf657ddedd0cde33bf93b51b4c8e2c0a290d31cbc8397ed0e0302047c435bb500683066023100b4ca816e9186c06e50b1f14c856df447f9fe8ec64a36c8e6cd135be1b9f4a26741243ba175bd86f14b08d848bc68f792023100c4be409ecf174e99419c3687dff6756ec3e84f551e34e15a2baa80dfd5c5befc9ac9ab558e570f13dd8030af7e8f2cf90302047c435bb50066306402301d1a3e5008fee1beb4800e34cd6bc660e7e8cd3faded24f74fc4ecff6bdf293dd6ae05bbbc6a4ff8f8675c1b3682cbfb023061b1396e0a1c7d50387e15209e18ed0524422cd9d4409253a4540e8d7dd0a05428ab94dc87c44c456bb48599db5909fc0302047c435bb50067306502302908eacfbe05ca1c5041c28e8906f83c94278996a4b564ca421004e9df430fbb8a24babebf5e543f9f721c45c70af27b023100ca4b2c47017c1ccdc181f53f292d824b74547bca29a28a8f8ecca07cd9810380ecbce08c0c3034f4eb4a788842472b3a0302047c435bb500673065023014011f061d50a49e1f923f081dc61044b3d42c2e5e5688d246882f14d1c4213fa26867777093b5d01ab54b5c9a76452c023100facc3c8db66113de7d5917abd3bf0bf2c17b76620fb2497a78c881da6e3b130b5da8b3f3f3111f1d9b1469160c1b80730302047c435bb500673065023037959cb42a8f45b3750fd89223ff6ace20f9a874433f3d0697c2e2d4022f205a0b06ce481f84a1646d25dd9e320c1f5d023100d24f1f45d569a67afe26649147e69ea3fba3a30b7943f37d5b63c29b961a8f5d560cc110b06d9840233e770fb8d528ad0302047c435bb5006730650231008728a68ab3239ad0a9273543ac2ebc0aeb6fedb2c44f25deb1166ee3be0771d38f92630402e5481b8ab0b7707be52f8d02305376c2b769dc1b5f1ccec35cf3e9d41d7c9b818c4d556086d51876964660c9a920951069f03da3d5f7dd04e3a03309100302047c435bb50066306402306d7d9bd16c35fcd8f0ecebe7a5e451f05bb5da2bc8b3c33429827e478b4cbad10805debca0f5f5154fed4f12c0b4e9bf0230099d2f9a8009f141e7e52a7bcb28ffbdfa364a15158307ed36e1eb3f5a384755cf4a4db71ee0d55a4728d1b94f2bcc830302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e9dbb83033347c70659f8030388902de1f7263421b4143860e70300609d0984235a6a078dec5d7107c2686cff1fad1ec02310082f30cbebef7d0b6bda0be720f5390d8410bd6e11d2192b6002dbb51f24daaf5ffd62fb24736039a6bd1eb76b78ac1850302047c435bb500683066023100c2073f693626496d2886941b131f8a326d2f987f0dba01ae67acbde42d94106483bac65a86377b8e28e9ee1d9e267a7e023100a6dea6105c3f6cb9a0b018e907f5033ec699cee8b0109210d072ae2f3a9df592a9997b0b044ac0ee7965ef8abca69db80302047c435bb500673065023100ca2e434b3bda435b588cd6d0f85352dd6a12f7de60697d046a8f9c6962784c7ae5f01839d5dacf05dc794de11f7a54b50230268b5b1e163a36eed7715d675bc3f5751a9686ef1a4038fc4fb40e73d40277e8e04137c957e608133f8e44cb06759e880302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b65b2ab29fa894c7ec8152262c25385036cea561192bcf768e639f4ca466b2fa217732771569177027619640e20fc5ad023100d372d548e847e8a0ca6a9a761952e4f730ae3d0f16e2f16def009030236c49ec78bd29e4fd76a44c58d07348fcf2065f0302047c435bb50067306502306b520ebd834c97534a3972c2cc60b8eb78333077144fb10b205f8584b59552e1ead473f66d351095ac24c4a70b3b2896023100e960c30ef2734c0a0ca92bf1b7b4f4347a1d800f9d56b6da5f56515462b1a2e3f9ec26480d06677eefca553663ed924f0302047c435bb50067306502302e19cd50ee0c20e23a70a34a4e1a22e2969fd32484088b3e2d9cb7ecb3081dde0775c2c2358cdd05c80792bda7780a7c023100c7f80bd4d480a4efb4f8d4585a3110bb5bac14e733349a194e22a8efefcf13b9047a39401824ada9873a53e79adf51ca0302047c435bb50066306402302dffecb5029bb4963f8f9f9f2cc2def80f6af9625ca494798c8e0b28e57eb7747d42c59aae9d9ba61abf9d23ddc5d23a02303ffb38bf19bcda66ca115f26c8fcdb218750c9b061645a7369a5c021579c14fc413846c2dd022b23d1504f7a0ffded080302047c435bb50066306402305aafcd68223141e847236ce382e840d6e5ca6347b4656ab85e65f6544084f809f6ee70e7606eaf45a6e4fddc9061e6ed02302af3f1739baf5d13800d06854fe91922041bc3759d4b626d1826a0e1c6740c1a6b44da62a6827fba4bdfed1cb98aa4290302047c435bb50067306502307d3dcb23021b90db8048bdfca9d690a897bd009f19e971c8520909aca87288f5920657ceeeeb861028743ff0adf3edbd023100c5721206eeccf34b3dd16023f4e9359bfb5e7b6847c03f5923cb851b27cc49bdf3bd565788d793f9b421b45ea6de8d580302047c435bb50067306502306cf3c909393cddf150724fc772447841541662a47d55434ed0bf13e745094a316d429691e61fad1a9bf437d58a84cf9e023100a63c24391f8aa58c7aba28ee604f7b28e867bbc97055f1b347742d5ce3797e99550bc82502c0de5f86ce084273da295a0302047c435bb5006730650230182a0ed1ed0e839be8a00eaca772db45d17dd43aac0b7f8246fdac11e5405db20afd110f4a982c9d49fcd97c2be4c48a023100d7d51871ca96274ce4e00e92776469e9bb574973dc7d7e4d8bd8b371738c1801e6cbc273f29c2dabda881ebb37251b040302047c435bb50067306502300e6570c77f07027210ec6172e1ece3679c48391079175f1d76012f99cc87249a38d9f4dd3f2f4d1afe69b286b6bf1480023100f483fd05af7bdc9d7a7f53dd8b4bfc3e4852f3498885479c5d70d6674cb15de3a0d297733780127fbc6007bfde5138890302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e3ef76a8ad44d6d1e6d32e8c9c1cd3de29e96f897605155aa21b7d285ff286978da1ed3c57273d301ea7ec0239a8661e0231008bd034f972938325418fb3db9ac33fe49d6f7b1eb4fc703ca1e1642104d2c32981ba1791e4ede021b8964f6bf8f355380302047c435bb50066306402300b3a69f515eb884eed92f8919de6d1dddb24910eb5a2fc64d2ed9a759bafcaf2bdebf7b4edbe2d3af9fbe45564915f0f023017ca07802d55214a0859291cb51b8bcf342bf78d1549c81e59d81eec214145eb8b08dc8ec39af221556ff584165c8e8e0302047c435bb500673065023100d4ca01aff01680eae6fd24e9e3b66721b6033798c56ceb5fc45dc9b7eb235542b6099b72823b4b808e39b8368d477bc2023021dd8483456212c11b38e02d035b9fdc8a60ac9b78efc680b704ba32cc2585b70bf224415ea3fa984cd190deeeb4fe580302047c435bb500673065023100b7f9c1d4c1bbb7411980d93b453de29ba60c0b0ad75c393f8a30a9da61610d1734b56dc5a19c5dc90d2c30561d327cc802303ea5b8285c64d32856ada0c4c3acb697df69dd2b284de7d7211f014d69087a30fa395b76e371cc820e53f81bfec893bd0302047c435bb50067306502303d337062ba4b5051cea9af2c4ca827b269e2c1932cca0fd0b4caf7e636779b1fe53a6ba5c30068d5651a2fe7b183e9b4023100d0c198d27c9090fed912283e77200f8948148c68e80367117cbfb2344591b2571dd98fe041a21a9a62b7cfdfa3d36e390302047c435bb50066306402305d9522c8488a3f94edc096741c9ef48f97850f5640ce45188325132b0ea5a6b906fda19c319ffe6794f799b623a7ece802306fa62fd3f80a6b69d8eebd06a6a4b495d71280a7783f1eceb6c27a59ae93e36bfb63c88388393e283fe597227ce8bcc80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306290c9546acde83a8682ad87a54713d098fd80612bcbecaa80071310ecc5445d351fe2565eaf0179ac06f961ef575a8802301e0919f46615889ee6b01a26ce8043b27944012a1ab04aa9ceb3b07d709c656fea744441a937e4e2c6e62b30fccc18870302047c435bb500673065023100f770317dfd67ed89bef69ef9d95d7ee42c1604bac7f28a24b38eed52a0b86599b93e027be3305a74be41d900c6addace02305ec01531eb7e141838800b18a8e6c4c1f57740f356b311a0d26d6ec218828ee580e6c96fc0070fbaf4a8e01224648a5e0302047c435bb500673065023100e9fce77506c0b4f4775572d33eb00a22e27be48ba2674a588dba8ed3e4afbd84cb6441ca12443133ded0f16b06ab6386023063cf21401be72b9365157d3e0670b020436694b0564d3875a1dcfd1b0ebb236b6a2ae5d5aed6a4443787d2a271bc9d580302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100edaeafbf8aee79d68a4a731acbace73b2085cb30915e332b6cc113257b526e4dcf6af9c1dd46f8c34e238028e24252ee02310085bb0a49e1685af41ee7f1f1094123978057c508777c24b241bfe278d63427c95f7dea8ca9cb6d33cf299915c06973740302047c435bb5006630640230658dee6a1cc076f3ad0b5402d51d124217144998a5f61ee66656f9e2cd3bc4ac5dd8dfe031c4d86bd18c1d98ead8fec602303bb0145f73a44454741c487ad335c965e049101f47e7e3883d49c66849635a35f7943ccce6710e4704392ca4d0d1bf200302047c435bb5006630640230586bf32e3595f22c8acb15c7cefcb4ac884e2491f564046476ec9102694355a5156e529d57e705cdc7122ed21e1508c00230502bc71fc8894c788afc6c7ff096dc1dcdd2094a594ca752802d29294da51262c71d2f384a12acc032d716c2614fff8e0302047c435bb500683066023100edaeafbf8aee79d68a4a731acbace73b2085cb30915e332b6cc113257b526e4dcf6af9c1dd46f8c34e238028e24252ee02310085bb0a49e1685af41ee7f1f1094123978057c508777c24b241bfe278d63427c95f7dea8ca9cb6d33cf299915c06973740302047c435bb500683066023100c229db2970e9fd41bd1542b25fd08b28f24303e6e5c5702dde9aa0668c108604095986ae8646582766aa82aa8cd624c602310091d3c4e63d3977b4f52eff1aad3ab9a43b8d98e38a4ad7a5470a92587aec19951da2137cddf4aacac8507a291762a12b0302047c435bb5006730650231009b692586b628de306b96029a65d8e2b6c5fbbfe1c867974a0c94576a6d781f219e881fb10ed0f65e2a9dd39c2c3af49e02307c2a2a1d1e31708b6dd47e736552244ab2775fbd333071271c8a79d0db3ec2feedc62118b750f6aa2dfe8df05a336a2c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301d00c37b9ef8113e14cb9fa3283d2ab6ae686400bf3bdec87fdb360e08ca59d47c82b7d1a62073958ac949f5a7a3c0c6023100d9ad91839f30e36896bfb3bd2cd2ef94dd13861a91d217bd8be260c74286c6403134ef3937b71243c0a30aa3bd9efb4a0302047c435bb5006730650231009252f2af8d618098a8dc50bb6fed98c3529d3fe3c9e14d030960a0c872b13bb2b145dd37f530dbc64d03fe24d391f53902307a6aafc585c887ad3b211ca69bc75c7767b7353af63388aec91fac85c6205f998ba8e2258f753fa678877cb85adbce050302047c435bb5006730650231009ca0b3cbcd5ac9bca9ba1cdbbda732dccd9954df8c45e6fd9416408b9e4e9cfe291bd7c7d8911193ea40935fb23393b002303c55636bb8a44f3adf9e97a0b7bf08f85722f5f7d31a725617dcbc5f7ad35ffc987f8fd552412958ee646c0b04aaea2b0302047c435bb500683066023100b9a88681a2e354c47387bca0e7e73c0a98af937e1b9460db137f8110c43f0877072a7534f8450eed6d7f0f65b9dbf66a023100e1789aa690a15b1e926ae3a40a35cb7485279014dafc4eeb9df1af9be01fd8da0bcd4237df516e8be6db55f3a77699280302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310083c6dc08f7793620e962079088d7597477521fef2e50cf7f7a368c504689bdfa74da2b2cdd29bef17b764214c80fab69023100880c248dfb3e6c8ff202b76d8ffae46aaeb0bf8d99f03503a0ed7a9f39adfe07d08e764acfb3b3a6118b2c3ad4f5f0fc0302047c435bb5006830660231008143465fe6b664b7e4787f8c0d7b60a40689e731d0561bd1e084cafadd6a70f89b1b6871779f11ef66f58f9f9716c234023100ed9ca2340674ba569bd3434b553132e5ff2e65fb7f02be3d4574fa143d960ae71241bb1b2e0b51407d9f25229683a0080302047c435bb500673065023100e411ac4d715e3803b2215b87aa23cbea31aa0675ac6591da585df48924bca8290d32df2b64b0463db5851ae26fcbb4c00230645e4c2415490eddf21d2ff47d3b2bea7d61e40b88c80cf933a7616b22270daeb45e71d38b0882b539f1939c2a6fdc830302047c435bb500673065023100fc8c8ab5147cd2114fa33d006d511717a54d4892ef51e528a560552263cc1eab92d0a2346913ded275180545d0ca0aed0230697cffd290901b573fd71e1654b9c5bbcaaa09828946664b6c23e2e95127eb6b44284a93da34b809d2879f457c7dde960302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302efd111770e789e6301f8a86c29c12c6481099381ba3d118ff6e99574ea3bdf2f473ff0daa42606a40a547cbf7533fc80230025be4e6fcaf8099b5b658e930593f41579e7f227a49ce5bb1442c2a499623e096761e59e594f13ef1f6efc646d60fec0302047c435bb500683066023100d966629196f761257893e22f53e85bd0f93894a6aa771a246f35a0f851f09491e23c8f563ecb680b4d39863e98a177710231009073b3ec5b86b8cf580e1ca1d9af1eae7f731e422b645d2e916e9f8dfd00f851b7f52a63ad566fe989780d243d8d6faf0302047c435bb500673065023063ed87d990eca6a2b1ff86747bf21dd0bbdf76e48d38cbad3c3096b60e592495d3b28ee42e9d5831392b50b2b9b8f393023100b5d93a0d2915ce921de542f4e4547d7b4b6250413a81848fff879bc90a068c5544c42bf5587f288a29cea210848b23790302047c435bb50067306502305ec8080191c7ac268edef29d0ad3c812aa0a3e96e1f03f77745645170ae806b7533a7902e0090a5dba9f7824ed165cdf023100f71dffbfda9e3ae7261b7bb72a6a1153af6774929f26b4793ec6f39d41be1110e54e16e6eda9791d816b6323e059ddee0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a88ea219eddd5dc4c32947f7ca13ed0fb24190ce26eb6dd2d59387abcbae2afc640c6849a4d7d7d19d41a4175849fb8d023013467bb169eb8775da58200a951207f1d713faa618c5f4ba1acf87e810eeec426c17946a7b79ab37a54110a27631af580302047c435bb500683066023100d75708d46ac15928dcf8f3eea06f86fdafacb5685ce24c137f9eb8fa1a7e57537c009c5e92135f2c3168ebec2ef18d5c0231009ed47634c327a17603765ba9665dba34bfc2585dc1f75b6e80a20255816fc6fd808bb030fd86b3c5da7b62b9a70228eb0302047c435bb50066306402300af233341cb5a7f2ef819faaea2fbd026005cbc7e2fbb6e45a476378de2f49b4034ba884499e0993d96c4e746486781102303a51bab2ccd481038864f924f60f65aaba117063e5dbe20a0e138792e84a090056fea2b0cf3ed6d19094a34ba92dd5110302047c435bb500663064023048b451df57f0877054a145fd0f6f0a65d4f9ec25b353b25a22ba2f638db15a31bfd9c1fd6d5e067c71a54d9bacb401d702306e0db242adf4fd52c57a47812374e0dfe08241c6f36176acfc0e52a90519ca92841f00d15e490e09d6551998eae50a8a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230157478252cab804eab6717cd58203795998b78294978e782ec222443d9755053df00e7eff89196a59b41740dac46f4ca0231009139cfdde7c725f5c5a80c6a8dc979a2cdf8165dcbcf14c594793f4c96b5cb3dd278464dd5b89e4be73b3a4383ecafb10302047c435bb500663064023013e4b2da2e9d1d2efcfe242aea9ac987cdb98f15febf686367714ccf72b318de17adbe932b4d34f12b8a37e3bdff92cb02302fef948b4943d521048ec3e12576a35ecff2f6c34ae048eba6122be42c716d9a618a472674fc48a217a38ba8f4c355ae0302047c435bb50066306402302a7c631cd411ff7a400909ab49c7ee2fe7c9b7a47bf4b30fdec6523c84b652d7de85e391624bf5214c4b3572d7b5d06602303356ca78e1f0ff33a5f908fe87ce73a2e13efb3635f7445767e5db2ebf0f1ab773c0492316bfc5427626394cfe2d32d90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009234e5e08d39b49433c82acbf7542d849ccd8f4cbe5191e819d5ba80682757f3698e8a737b1d2be691903d754b9cc01002304969fcabefeb36b671ebb4402c0a59514bf7b6ed18411981443589da3f7b159fd33fe0f833f48102419ed0a8df36f2450302047c435bb50066306402301430909afcd7fb496ba90a8dad97cdbdbe7191347d82b997000e6cc2ef84517acd8e9fb05e0dd7711183ce6056fa58b70230740bbb8714cd4135beafc878cbb1854b25f09ed8afafc018bfa2d963cde8659e770e9a5a1c09348699559ced091861550302047c435bb50066306402303d4c7230c8447128a8a88060dca35da38e2a055a7ce4bf481180f174fe56cd33b37d25591005fbd2f2d42d9862a3e55a02305acb0c3fc5138d0c50451b42bc3b81c37547972ab8dd8c192b494e44ba23b73255fcc3701ad43bf71dad80c41fe7a94f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301fa293118b2a2ba56ce19b397daac350cc0a62cc219451b66cfeb38dd8cd877a95990819a92b17e379ba5985af59f2b702300bb36bea3afc6301824fb9dcc0172e193ddcefeb4d024dcca9947766557e91b55f42f4b2bb4d704831777653b66a98a00302047c435bb500673065023041692d9b908d9c22cbd3706198448e561e492560aa9623c71f820441daa328d4f7450dbe6900736875ed8e57b6abaca90231008d96f61e38144b832b2ff7bb6556bd0b6a194b88a51878183452248ce9ea04dd00bf1554c42ba762d9164c840721612f0302047c435bb50067306502305a6d55b43443ac0453f7fadff346d65f87030499eaf7397b24c77805ff29143fecfb0ee0961ae74f36549c490ca36193023100da3a8839921c41399b9c683fe0e5ef137da4df7070fdb1a6443e68bbb27b7e789ce99afc140a01681d14ec38df5482540302047c435bb500673065023100c39f4aeec5b5f8f2d5455d48726c78daeb1f1c7e658fb5bac90d12e64f0fbb3019f6ac30933b8e4ff3ff8a10a641b1a002302f7c11e47de4977d9d2a6b22d8681cf0a3fbd62c27c01ec6ed1ca5de38900b73cd8b1ff7685b2123f114cb6081bcb6690302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f1948c0dc202cadbd1eac858e6be5444231b692623e8ec5c9535e25c68b6c5dce3657ce4973225073c3d065d784f940e02306a0b48926ac1e14db0e13a46d0f7be791f3626b163b31b68ae12644086f6cad7e39b21ecdf748d71958104fc8e7d67670302047c435bb50066306402303d872cfa002f9a61f266fc4c9841a7fda8dcd2e0a8b90b3c05c42e1ee6c6e24f5941fe8cf8031782068ecd3de9772fb502307b214b99ec2fcb199a8ec8ce09f6febdedcda5875a6995277f07434ede2937bfe1ced4ed6f2f0ffb7e630ce9ce5103c40302047c435bb50067306502310082c69da949d398ca42f1cecbfe0744b6b6fb46de0f926b2aa3fdd0e630de93474f61635f7b9c18391301781f937e8f33023047fd51154fecd136c4f44bf307de8e32388196d36c02504064af24721d05dce567b8c206a5c45160a0ba1b69f08f1d9f0302047c435bb5006630640230414b9da728c8d955559bbf5abc410a85d2a7c9d3cc4df4f1805a390039f32023d76360c67e0506e27559044e4bcbd032023026c29c174a081ae511623bf794d146d23b74348e322e49f6a38a99cbc5615de3c2e51c44539770bd5852ca6fd0d843080302047c435bb500673065023015c62d3a05768cc5c87c2e5fe5d418e2811aaa3d12d74dc8a06879b905f6ae017c2dd27b4f32cb40dcb100b37a8092f5023100f9f129d2e5453e7a56a05f8b9088f543723e47d4ce7d4e2395cb6252aa2a7b4a94bc995fe9b6b2f470253b17ad9565ab0302047c435bb500683066023100b2f54b424074cadf90142f065a4cacae684887f433a0cd73ac005527500dbae2c1bdf5ace20edeadd0083f2813427102023100c93c4c3c3d27e958dc29667c5d901b6dee24e107031141eb47ba64975b3e6dd2e31e0c9b40f940d6755dcb9fe293d5b30302047c435bb500683066023100edc5025ccff28edfda50d151c2700ff984697f4d33ecd136b6f6c6b0ede4b47012476d3330e0934062be44bbcf523e51023100ea516bec16cd50084dc5bf3b7b50949d5513157e818d70998a390246e1ba4f9c3d5ad80a0161101cd39506aa2b5514000302047c435bb500673065023100fa1c4cda01f584cb5b8c58f3fa691981aa4838fe428be97a615aee15730ca9b1a8fc06c6f6955cf4891d2fcb62dda81e02304fd9956e63488cacc0c33c4e970f21d25d5c293aff11269e88e32e71cf062e261b13c1d9cf317d1185a48ca4068d13a70302047c435bb500683066023100bbf0ba8d7a02dba008e3b6a50bf50095482a51d06877f9e1397519cc544a572ef4a10ce212edb63e6489561b8baa3f060231008142050963bf2753053bf8c778be5370042b0e46c7c45abed1a5ed950f69e010e45e301ae0aa3fbc0a9952c5968fd3ca0302047c435bb500673065023019bdb50977068db201e34878c04bf1eb55c2384228ebfeacf0941d519368584d857e1d8bb458b70f5b6043673758aa060231008fa8b5dd380dab7ecea2311d0b087c7b9373af5e791d72f1483c48981c72a303afeaab6d631f1dc664dfe540a417df690302047c435bb500673065023100ad78879f1cb3bedd503c456b117b4e232acd8902fd8b294cef36cd3cd97f73ad935eacab92249cd0e26c0bb56623ee5302305e6da9513db4ac97935f8f95c68678a50ccd81884260ea33b144bc036dedb412c3b7a17a53efe2bdcc425bfe1f3c60b50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023057d350743cc0f2f6640a5a72088558768cff48362d53b26a58acf222ae6c898b6ab31cb9cbc07c0c814fd115c53ecab402305ea9d25f3434f8c3a7ca496544584b70ce627dbc4a5e953c1045ffb53dcaeccf92f79ab51cbefc1ae57360a8547c3ce20302047c435bb500673065023017cb2f1e79d6820d5c474052da9e73344d93693212b2ffb28a72b3f33d9a662def9b64936a5e2da7f4c6482e61aae726023100e9bbab62ddc187a637011463140bc6da6cf3043c5c28fb909f4482154e265cd654052714994ae7dcddf561bb2d0fe9540302047c435bb500673065023100919f93ab693fbc084907e467d5770af676a5c98ab688a7410e96444f7a6513d10763893e4f27f7fa4e68dbec2199ba6a023030146a7445bc13c81cdc3bafdaf4ac2806d99bc01083f873e97dbb7bc2b67b211be0bcb3981aa9347656fd24972d702a0302047c435bb50067306502305bbf11cabb6fc18c296b01996099d6608b20be132755485a5d220d06fdf9a6db50b9a0ef15ec404f455aeda052c8b8c7023100a3fe1674c0f9d751b02036c4269d6160dfbe1fbeafea53c4fc00649436a27b90f62a3721ad5213c96a7e1c484fe4c3130302047c435bb500673065023100eaa58438e4d05a84e9247b1a490237c6f8c48da2ae633093da4c644eb0e8414b45f7719f087542b0e713f23d6dbcdcf7023041250506c82531abee9ea330ea6f78117d8189ac741e0f47f14b47ce9f6d71b873ec27be1ba941e6383341d3918959500302047c435bb5006630640230373835c7575b8a96082ca2066b1104880c901e32699ab8918d1dad7d5c0954eb92dff205bf34f60886f87538e3018c9202300bbe9138ab50265397e6b8717dd5f9b62c5d580db2933de811b4c370158f4f52d252c2c181e404142dd8f342eb1cbd800302047c435bb50066306402300ecee29c54272df2f87267bdbbb56e4539165952a0b1bbb89c0fe754b30297e2e2f9c9fa6c7ab78a3062b46a28d4782f02302c81fe3caf1b575b564f3760de6b6639240da4101889f6f9256534da0b00379a1bc0fa638bb89a3fd2c9f37bf60ea4990302047c435bb500673065023100b2d02d4fba1b796c2bf28b3e6b74ff3f64f50ca9ef71e47f365e2b03692ce350f4a8e42b99d47c030cd34584e91cba0602307db009a4a985ebc727e1242c213afb7df80835e699cd1b1f99e127381c0f22b2946c36dfc4cc97f64cb4482ccacc18c30302047c435bb5006730650231008961505a1c6c7a023f869e0e59ecd6ee431fee972b7598124aa7452294da628ba4d007d7e3c42ffd127053a85ce2451a0230056a30299d325a327106e267fdcd058ee86396faed2bbeacc96df719e32f28d8233f046acbf93bb5a5d17951892fa85e0302047c435bb500673065023100a74cde29ae1411ea01541864e76f422616ae9417ff9f28e3ad5e6428fb26d32fe72a632ab5cea7829783ac4e093d355f023055ae1e492ccb3f8a493ba42a8f4e61a0c41f744315e72b7cd125e80b76bf19a5951d9c5e72163e9888bfbea852179e3c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c0a7b52897aee15a310487f4c5844d59bc7186c40b80d21843a6e34a44afad7739cb0dfaf336205ed7facbd51e7e1bb5023100c1a00662b92d7e092a5ff5476104db116c014c75dcb17455194b0973bd689434946fa7fe9b5713b8136524e05fed72020302047c435bb5006630640230439259cf12ba78aef783c7040f76566649a21eae10e1817f0c6f243567c16926bddba928522f7e2e0dea3bbe613002d902306bb54ac47fb3def4275e4eb6b52bbd5333fe0c7248b08ca7804507f48fc682e9abfbde639aaec4aa7fb2a2cd5de2acaf0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500683066023100d7bb323441b7d1540260da23000ebbe4dc297605831a3e18cde253e93c6480d643e16c0f04994f05ede3f3c49a26d7c2023100ddeaa8a3e7740c254d3ec2d61db45308235f27a51538d198c09e7fe4f2dde301a6dd04f0a99d35edd2f5ecac82fae61c0302047c435bb500673065023034cd86c61da89a038c509df8a85a56780ab08604671e67167b99fe8fc16689065ed7e19d021c76c9debca9df01f27ffe0231009257b4d6c464dc07be8f4dd894ed8d56f0c354ad62adfe27a6db3a81b40aca6d84846d221f2ee2fa9609b3f266ec16560302047c435bb500663064023031f2a6eef0967bfae88a9d99110cdd004b66f7be64c01306eef188ec34ca0d9333508fdc3ba21dc7836605694453b04002300402886e54b5788b794709f224d71b95db1402837dd3c97839397139edb22268618a70f33a4bca9b0fb2f15e02979cc60302047c435bb500673065023100a19117bef5026a674f15c26d69deba1bd83efd5c1dc057a9a8b16eaa97f23c974eb5ea1bef45d00ceaca7d60c770fd7e02307518a44c2a417bff388fc4685d7a5ff37158ca4e4546b5023fc15352ccf56df5ca9bab78aaf5c2fba5e9e8d95bba5c570302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb50066306402300865960d6bf620c3052e2a43d594620612aa5a7fab25e59bc8daf735e0521c3b3969b37e57f07a89b4a4faaf7a4d9fe002300d56f9a081a633031104a4d12434539626fa9bd43c263a54eca61af873f2dd4faa60e2764b9131bc5acc9fbd584c3c030302047c435bb50066306402301176a152d241973361c9710928a8f89c9d6880ccd5e2df3ca4afb65e12d1e288825623e53e2bb954a867658567965d1c02306b7b82292f8ed6f78acbadc59cddfcd9e0875cbd5fc9541a0dbd0986361b9268c2518d508073aff07cef3ff9f0cd31ad0302047c435bb500673065023037736f1785c7bc63beb480921867c156f72612e8b683f50775ec29ee5f4d7d9cf208b7351b638fcaca7c26c588138f4d023100fa4cba87f79c6cc2be04624f7ea38e0dc6aba7958230e9a777b2c3502e2ceaec6b33285156cc02d8dbac4a9c9eb9aa760302047c435bb50066306402306e78444e15db3b8e326a0166c16fbc1388d84c4984a611c3ca8b35b268d2c537aec014e00aab514a9e1b0e0c1ebe993302304a507f83f60309fcae62b858a4baa68fd02e1986f7de6880904f4f72c5641167e7a405161301711889785ee27ecc760e0302047c435bb50066306402304c44cfb590ea8a5cc54c33c266b8e32d4dd86446337ac9685f611af57d03cd8afeb599c786e7a5ff78b0426601e86be6023052362de3681415736dd43aab4d55292289de5f9a0bb3c096696b27a3a6dc622b6df01c6c7f70e67cf38f3c8868ee0a000302047c435bb500683066023100ca8476daae72344a823013a6bee653c65fe4473ee0daf4326524952b24f806018b50a4743c7ce2b68472b7513dc9fd2002310090eff0cbe0633cfc191230ca5ea19c8242723a3cad96117aab691d29b976e0c0b6f9aac7c609dcd2ece78694ea4cd77f0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500683066023100dc03d84248de43b50cb39727e572cfd52fea50c538359782536600a3da44d3a1defc60cf8e485044a1e47ad0641d8a320231009128825fbd9affb4441bea91305fc057f4242775e8e63c7b2e3bfcaa0152f2870a78d59bdfc2ea27a114a179dd455ae10302047c435bb5006830660231008695218594d3e16da4f3ca2f06bc8d18f66eceb52c3d878d3488f5713b586385a633acf7650e97b6491f732326d8aa5e023100d120c19ededb8173ae81722ad97cda4c2ca3636705352aa8b6a72edef39f8687c7e87ab077865d392d8ccb334e40e2ef0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb5006730650230785ce03ee8c57aea058016612f63196988e7abf99e470afb0eb25b1555dae37a663ab6ca864c65f61acb1bea8ab87059023100fdefefab410586436313fc417fd2ab0af9dceeeae919be6dd47d25227fd24a7921034240d6ae5ea72da80e9f363a94d10302047c435bb50067306502307933033fe0d00367cf13e81b9fcc4462b8832dcb576cb0622b209842ee7e80abdce87b29ab3553726555df62458b2e2f0231009efa95a664e7bc8e2e78826c742c274a440c2ac90ce2cbe38903dad6af5138272be928d08950d095cad7f05c1a2c3ca30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a6559047c89080a7ec88c9a22b24df28f4135c0136810b90efa09bdafc87f66497057a1e1ef0630529f0a0cba58dcf8c02306dcc387e256d1a307eecf5aa61488072f005bf4d159336631e61b4f3e0317ce0fb2bfdeaec651e5aee7351532e669cfc0302047c435bb500673065023100ad368ec8faa189b126e5320956adba9f45b93eb11fd0fe509d1621007d16d70fdff9a9ff47a13640957d3d085749e103023029c6da0cc318245c3d98d2f6dbb70d2fa26a97e21f3c098d6286ac267e501d2d9e498e06b4f6c4e06ffbfceb42c33a870302047c435bb500673065023100ab5c6889f4194ae5dcc2fd8615fea565a29a0f0006d8fbbc0a1cdb2266aecefce8e02157a8d19e48692742ef3eec1ca7023036e8d7816d7d09e8e304577bbb2598decc598f7f55f0200c5483c9d9f746d186509e49b26d99115dac2e30a72c7402750302047c435bb50066306402307a75607032e701bb3502d61472704f150c4e924c63c3ba1b34a621fbf3f43056d36839326c8e44def8a66fc61d23382502305d69d3c24381cfd93bbe4b2bad7dc97ca6f306569f851ce580d5a3f2b9650d82ee11f5b04485698dc9fce5f62496ca8b0302047c435bb500683066023100c141a64966813e17bac68697e6a954dc0934367284d90c29df8a99e16016f5d31e8641dfa9ed6c179225b8db296a9579023100b6ae6da7d36efd3bea22dba0451ead38691b130595a5c1e5b2d5d2d8b486b55e4af7a7aad58c9686d9e1949c8fe990ce0302047c435bb50066306402302dccda040e82a73fb6f29104a111f0ce65a67e3771cd64d3c7028f1f9566ad8e8d32d5417763aca686b61f40726587e702300ee1802f202085b722b8f73106ac97353881c486c2bfbeb0f69ea81b770ef747f6f3c73a72fb4b53da820c097f783f2d0302047c435bb500663064023075f5b9674529094708b4ce50ba596554747a727861ebcded1294461a7117689bfce2ff4a3276aa3f33de84eaa82adc4b023018ede0ac6c786f00eab41f107012c1376e48ec3749144eea5917b7bdad9691aae6503b39b7bf86ae55fed218cdc5212e0302047c435bb500663064023002b6183ca92f903bd654a4949b7eb5864d59745b898ecaae08e2a65c90a5171ad63c5d69c91f32f84538d50cc77f9ae002303e54a3bf1750b5369464b079cd952e8d4e8d13b928dd4ac3a0ad7198cb1a14d74ced1e8c5a3f57209786f7fa7c73841f0302047c435bb500673065023100bee34bec5e2478f196930275f81112ddff353a053f3847bee459c50993aced9a0e5052f6ebc83208ff75b9dad05f1def023046a13dee42c3493c76e7a74573e4255cc2cc4e231033147b9b9b615d0ab2d4d66e3e870f3491f62fffb05dab0aa0e6ea0302047c435bb50066306402300caa6ba7776fa87699405bec67da22a12ab2e9717928adf08ff668807b2f24b29eeaa88317deac81f41e6206634f9c720230248af5176c0e0668bd4650a08dd45c8ee904cc9f508f4b02eb2a831e432e56949e1cb38bbe3b197328269f57370184c50302047c435bb500663064023052f77c843c809783f83ec0203068ec13bb3fa5a25d382ad589076d571b8b314417d4749bd23d7b3c4f0f19cb9979754d023063d61d9566c71861a5f3886d0f1a2e98be63c78f88074666829c0f12708a0a48eb7e505fc88e8a4a705950ad2d48e5390302047c435bb500683066023100c2f62f66b11ff9a058c0e1ff5b91c9b8592de01a61fd472ea6b063a4c608629efc6e48ee16ab3c4a7fff0cec12af915f023100c949c80e0e6b010487ff04059ab81e456d387dc3f8bc72f4ad2cacda8088a45f0635db41d6d73d21264f0d6777c149f70302047c435bb500673065023100d930073498e509a02e5a08dd06888dc6b234b802311d238519429f028bd9ac57b0a385fb434208884b6ff464ac74153102303b532eed72010ccc103b6181ab750bfca0b10069cfbe1ebc1c339fa2532742cdecf742446bc3361286aa453e4f3351e50302047c435bb5006630640230528ade7136ec29271a74e8a04b62a14948b04279b56e6412429056241feb089fb4209948a7f3e6c35e8b6a0dff1e452f02306bd96383fa34e1f5db8b6bf2f667300163188f94003ddc2cf71556ceb3235db64099e53be0f86a5a5c61a63fab8d4a540302047c435bb500663064023058ac8496819c8f68296a142e47513241892c6d127af4f77cdc36e213d4cc5d896d859487e734dcf91c45cd5924fd385b02302b4466ef44c76b64e7fc3096c173089d032eed66324295c9a4e2c4c019270563929ed81e018e6b55d677738f8f0a24600302047c435bb500663064023045e15c324348731e568fdbbc6d08efec3e61088be36186df66208f343cebf784f13d290eb83ae044066ff8e2fec341f802300261c2af0294f649050b5eff04272f42d15f298015c24c7092c5a459a27a9eadf40e75dcc0bff502cf0480a5eb1c48030302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304cb348c9c8c80bdb34ac8da641d7b6d61ecc8dd81d4c310e11fa98a1771b6c44dc768c0499ef9aa5df15def756cb482702303a8a7d4004a17875aac6b37bfe48f343b832fb732b114afffe472235d8b62dd9c9e9bb875bbb31b8413f084898d08cdc0302047c435bb50067306502302ab38ad1b58e93a166ac9b69397e42bc14a2bb4db0ba2d6288b52bc328d887d82e4b5d522f94a46543bda009bda152770231008bcc66051997e7f01719e962a8df95565a0905f425a57cefe1b814923084d292d3e22e015da042ddaf9e291af6451b010302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023078d42ea98b8d91079888fe7bab5ab7b54c9c4d1863f201a5cf1cd58dcfa96f248864d890b7f32de8d816f16d24b8d39c0230362b66767096c9e288ce02cf406cb13f61b8808eb898c3425188005e041795a77a6d43c159b410012b041dcf8aa4c3290302047c435bb50066306402302c18da5d96a1336fbb87a8be3ad25bfede1c3edebd962ab81bd0f270960482c3632e82e971dbfe4f5d3fd405d66b8157023060f7f43234a0114aff25e63956dac33a42841ef44abc0fcb52a155cf4ca0df12d9dcdbeae88cec6bf4a435d89f1bd2800302047c435bb500673065023100f638a3d9459d2f0485aa50c80170980089db6a2edfd786b1703f77089927607c63b311e648b8054f99f3920cd78f02ed023067acb6894e7e64f927b995418b9eaeb9ae507fd1676c7841b7dd328442bb158c53bd13b356c903f8d38577cd44606f560302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500683066023100d6ea138d429bfdfbd8369f697275c1552fa4fef96d0f9a82f4263760046a12f50178b40cfff9e764cf9843787265f13c023100df629aff1182d13c3a626991ac645f48404b5794975580f23653c76bf5738e8e943149cad611880b5a04ff2547a77d940302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301d34c59dcb26c9e46d296ec814ede9891683c95b2ef7e1104e3c13faae3e03e08e8e02866a7b594b5fbcbb4122068f5f02307a1a13356bb4714296786da85a5c882c709b341d56e293c7b8557dc06380b668ebed48df44bfa0b64a520dce7adb99a30302047c435bb500663064023056f043b5e4d85a92c34fef7242b13ef23f6be55a9889bede49473fe7fa2137930c2dc402289981b584eea6c59faf34400230685470ef4ae4bdfa202d6a422bd329e4f3a0bb59c896f31715e1ffaa24b636bf5c3a24bb38c1c3b28419596fa742a33c0302047c435bb5006630640230337b2b1ea01f17d4f509a0a195551ad8224776d63aaa4d1199a255942fed765b927cb26ad0501524396585f528c8517402304601705e75a85983d1af4c70528903e5de35a078752d4905f9057aef7ac5ca8d65dbd3278560b20fc6201561cec742820302047c435bb50067306502310088d60d95738e3a1cdcdec044ab8cca7e4fd2133cb3054ba9b81bb06410d2c177eb3f868db0883bbb3975d56029d2796c0230372db0264a587e5bd59613ae1ac5c1c0a260638a62789c048acd383c60583b986cccc4332e246be80bb289b2177fbf840302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb500663064023060b3c9e3939c0a4a763466e0c8a8e39ffab7460de5212109234b4828978d30ce9b5583796afb1dc5119e365164f502ab0230422e7050332d6b4d10c0ecbca0d30f290bd5072f00f547cb8a2eb4dac8ab9b9b100dddd61f9063baae8773c36703c2ba0302047c435bb5006830660231008ebf51efed13424ed28b56f2d5e9b46ce3e357a50851aa6e39a1c9237b55c97362083d1d71d05ab2357caca75774c5d7023100a6d037aa7ba68528d0c9f197ccfee53fa74ddf47ac56b4aa9be86afb9844e1b1c4c1d5b5042703f5a5dc03db864263a50302047c435bb500673065023100878b49ad68e97e7308f61f8cb9ae36516942e28a0ab8a21b2b5daf5bc046cc5db5654a3ecdf971d919ea8a471ad6094402305e74f53fcfd6f1e4c7271cd385c6b575da45b47ec0143f57afffa017872f739168013954ef5653c54a8a7c81cc3b8c5c0302047c435bb50066306402307bf5a486460f381e2d951bfc5e285370de6538867e1bb4d1863875867da6dcb4c0b4bdeebf2dd9e97f2b7c0bdbb632a60230615fea373df1348f185fb189ccf93d3f24cacdb051946b4014691d343b27a9548ec84ff5a7d7519efe44cbb104e1303f0302047c435bb500683066023100c03940eed908c3189a116157b9666ff4a0c4207a1102e068252951862b421b309b00aa5ceb3d5c700b9bd9015b9a364202310094380221b0d1fa97465d25be518a82cfb4abfdec002fa637b5c0f92c3824d0094e9678b7fa5338b293738241177d62c00302047c435bb500673065023022f6da27447a9c0460384fa1eb829949a95d5b471acafea9a1f90bd6825b04bfd1c12beef03a7aaf9b52864439327d75023100a59371e9df9f190aca7d2752e1dedf7d3cfc6a648bb780f5154784fa7c3b2405b09f138eddc0c53ad407804597df1f6f0302047c435bb50067306502300fdb11c59631feba83cea8bdc1830e16c6428fac2674405011a8259edaa27bce399a9314ae8c400b76d04ea3551e5cf10231009858aaf338ab34eff645bd15ff1529de3a7d68780831c8ca48279890e89546d8cb795aa4ddc6e3d08943e32a5a93b0620302047c435bb5006730650230590db8c8addde1369e0b8050c799376ef6a8587df054ff1814dd6ee3e05839ad00bd5fe23ebf1a2e3783944bd9ed146e023100d15d30d4ff1a330a1a2619a6d04b8f0f19d921e42475f9f0f7d8d86c5e7838ec5ac0ec4e839267554d49181e2d59f45e0302047c435bb5006730650231009e395a899fd06659947e952411153ab9f4d61af7be2db5f6a951a12587721ca3adaf75d1b4b16e9e8920ebc5715f7aa702300fde0e4c70d68024e3cef1ff19e71ed35f97d7fd031593e0367ee46f4e211ef1c225c9813fc1acea0100ffd2922e70610302047c435bb5006730650230732556febc6929ae9fc484eb229fad635b4e35aaacffd7d9e7ca706ce3ac22960f08933564ef51893a0a3146ab851b4b023100cac39fdaebbb066847b5dc930b2a3082968ef4830cdb8f3069f5c1844809eb63acf09b9b3b512153d59492399abf73be0302047c435bb50067306502307114a3197bdb15147433a85330a2e1b00798d26a7c59d430de0021b27f9ec389906b1c8459ccc5a22a545e9fda2084a1023100b43f225e0f1241e96566763da796f73975e52906cd53184a56df0f4aa8bcc295675ad66525b41deca3f64ec8abe8fe510302047c435bb500673065023100b11f461e9b325203bff467b5bb04043dcec08a33ebe3106e1f11fe7011e371446f1ec85735ee218fcca206f3c50fe895023003a39b50ed64663014204d9194c4d100acbeed495359b7ddc811253e5b6eda1de5893138809b12206d32f9d4702c50cb0302047c435bb50066306402301ef2c1cdeb91d320ab66c000b5a040ba56634ad52ec0f9750ca13c4282ba5565fdf62f4faa37601e8cf25785118b09bb023012cddf1d13fd35235a068422f5f9cce7db7156e7affb08063602e63dd42276f033b448403bc70699bcfb9b30e50ef5cf0302047c435bb5006730650231008ce23c5ba6248071feb0a7869862d426c0372363f30b5939a7b3c75f84829fea0ebf0443bc02ccc54ff2c302f37054fa023057c1b21127b5a451b99d422c15582c9db6e54942c3759812584f69e85b4f97df9c4ee2a8418cc2f6359acdd48705c68a0302047c435bb500663064022f6e858ce37ab54b7f41561f2c91744e37e5183f8eb89738b5ec60736d095b01540976be6f797164d3853778798bade40231008b6e5bb51e6c530543bd0e7ef8b6cd1f46a7b01cb7637d1cc07a16c678ab19ccdc13ce63f926ceaf98975d7e5d3fa7ff0302047c435bb500683066023100ffee0480dc857512aa1955fbeb45adaed118ba743dbfeacbbed08da05a4522691facf0176ebd18b2e7e337348773e3ba023100bd291d68207253225e3d231b75e2678f8c38cbba33ebfdccb7c16ebec2dc753c761c623b64032892f5fb9968c008ab030302047c435bb50066306402301777c1c4be0879275a4cfbc602bf2746f36710d0d245dd84ddcf6e50e812a5088dec8980033959964d17628654ec3b73023041194b44a175e6c57c42547445e34de2c07b06b5d698a6ddc7f7c1d66a0e17b746b47b3ea6d64b9b614d6058b7dff6110302047c435bb500673065023009decb05fc885f0d244451ff8d7f62a97b9c057aefe005dfbd9748dc77969a3d611b2f46d669345345f008d9faeb5166023100d1add92caaf5a58768fb6f3eba67627203708d03f639ce16e3df0da836647ba3424722bf133d5df45e1018a71a31dd870302047c435bb500673065023100a6de49003c118d38d3f58a3b720e659a22857bdc766c385ab760d24ad954fe7d336d9f4b9fa7799422b1290c3e7ce6440230531b4212111735cd387f7f0921017e1139788b7b3873ef0aebfd8b73a82ab42d0ca7a03355086190aeb674d0bb3a5d750302047c435bb500673065023100d77fdea6f04d0e0bdba51e363f95d89287e92123115ddc9b42ad357ca1d544f0cb5c9cd6f7b6091512255217681f8aaf02302d210dd02088b74004a6cea9dec39e1421821d2623b73a70957205d8d4163933b8c7f6a2b21b83f5bbea4a0a15c65dde0302047c435bb500683066023100a1683083f8d71bd32c6d9ff5ce5fb6f9233f1278fc1debeeb9f742404b2afdec41894aff1a0c41868dba34dacb3614c0023100de280cd75aeabbb9655fcd5f697b8c8dd5fed7a98fa5c3ed8565c7fe9568a2c2ba8f2909bc57671cd387c29ce2992b8f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306aa39de7ce4f9d37c46b7fe6b72c4846e533c4052f8f3694d0b34b52b38d98949eee35c8981760e43bf2edba2be87d3e0231009012a7c04f25207c8656eda5747bbf96c46b524531c96acc2b03067f4594646da5974d99c990a04bf84564bfc841232c0302047c435bb5006730650231008b4440315f28af9828550c8bf46f005185f582893e32df4d4455718862b7230289485541d17c95e0202ea5324042509702303953ff7c7c980833903f29c6e2155130b877a1e8077ed0a0170c0fed1b2d6d0d44236e49d721806e9d6ad29cc62aae320302047c435bb500663064023041cb1d15cd5fa34d2bf45733bb80ae23d1428b4b789ff51231665bad232dc6b8e74ef472697319f38087d37c4d7f2c4602301edf73cdec4831e51385b1321a1cc86fe1c0844294e83ada02df4c1ffaf615066736751b9c93c0188a4084f8e6dd92860302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302ffc11abc55e1610aa8466f45dc82ffd42915ed48161d3590e90c52e64e8a76af2d58a725c50e7505afa714aa692d00402301ecfed849ef2e76f96af79fd0df743b6a3ad487443e56c5834c44e2314da9797239120ece355f2abf7d0290f129ceb160302047c435bb500683066023100deed44cf50933ab1291403a5e40f3a541f19403ded67f70bb4683fe6ded563a4d3358a5b92f8f464258e58b836d90d1802310081cc16310c43baa8ff48fbd7fb901f5406001b79aae6a4a955c7f512561f0558419d4d47405b71eb61624ef581e749120302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230573d84a2302b1831a84251dac5974c2df41b3f9a0f7262df1aa7e070562d01069d34288f40c19c7e2ee2965b429f67b6023100d0c0e5913185aee826d2769f6c362f4bb93b6220c7d592952d8f59180105885a7b6710af5edf282e98e493337c7942770302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100bc3ab6a709a31b8f10cc827cf3ff0f557140ae188834cad59771ecc8188f607d248656e0cda65c9b6fd5615400d1f54f023100fd4787a0a977d3f97de959704196cbfa321e7404161947cd4e6f2a955bdd705d50e4523da2f6867c1ac283e70442f1460302047c435bb50066306402303fdcb46504ce0bae168de73d8f9619169599a4ac303495b0d8f63d3523b6fcb9085281b8410f85c5b458ba6a04381fff0230592840c6e848459f34a4d986afc19878659fd37c78724e97bb417989a18f035fb731b3173a9d27e803dc1aded6270f920302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c1614601728b89616d7aff6a9dadc4c02827971769d9d2ca0fafd8fc932bfb18bd8c38666d6fb18881415f32c1a776a4023100f9133f3f844148f6ed303d6ef1207b6ff9b7c2827ab9675aa4c389dc99fc11a98f6574b6e93029c2018ac501909f776b0302047c435bb500673065023100c72221e2957d7ca3d0a129eb0034ceb23281f60c28c4d123f27ee942ee046d6cca96526a0c780289fa99c7d9d4d04bd60230449a78fa08cc5424dde72a6d8ef07927d026edd036ee4015948ed39a0d1fc1ca7c19c6e4c72d3b83563eb27f65ec68fc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023047e78c79604d7431a5cfb843909612fd4c1c5e6fe15f0714c7ee403da947e385d4719e5e3b90ae64d5d3db450e172f41023050a96a342ae4f2fc8e38bb89bf0c9091c83ad4e407dda64717790715e0072ccb79026de0a65e1091d8000d06d564df700302047c435bb5006630640230432f7da8ae30ea62cdf253b794c4a9c30a220e31e2ced0058d76c627961d533dd46f0cd9daa1953bc05925dbb6c42405023007a86f697224537521a12a430f04092861da53293792cc0a00d33fbdfd6620a3e75f49e7b76c644bc4690ab8a335ec4a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023035c2071a1be6db41846b80323829fba2e5d96dd1f149b7df58f87c63b318f971aaa3c02295d2b486169e26f9f83afc4b023100af02be7cad080d248a7ab83b25e955bea7dd7a81952c5a24f887e0103e5757f807d84b22e337bab74e6fef64f3cde8290302047c435bb500683066023100c74f4e29c25d84b625c7750660dd124ef01443bc51e99592a298c2f4263235182830aa7ece53f1ec217ac76afcb8cd00023100ad441410ec5bded5ed74ca8ef78f2aaa21ba10ff00bb626f9d88313896da9ff65a23aa12b635f5e3a32a06b4116d20db0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306145180ea89dc3abd433f39ae58ef7eaff1e8950b0c86eadc999477ee00c43b3c00ffa421b60dd1cb4f5039600e970a902303bbaab9afb59ce2b30c28c02d555b782bffc5946c36d98b9c3b4dbebf42770609f992f733a149689db93f0df5e4332e20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e257e0facc84f21cc2cc0a7e1bdf06b9086ce1fef289b775cac2571c94e70d9cf3c2db74cca3484f590f7d86e0ad2792023100e9ea6d85cb63d92b29949f3b973e6cd86610908061361403a6705bd8c444ef47ef174c5f32a33afaea2cb42900090dee0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c84d0dbad3546743afb3556a0cd8ee90d4b01ea8ac351f67e063ea462af530e097529ddd57c30d8dc57a8ec37c43cf6b02306892e16b410aba0e8759362139609efc1ba6e087ff846e1b0afe25700806277134731be58e711c2a47cf3b7c75f51a230302047c435bb50067306502310083b61953f3ae7668d0740ecacb470013218ba27cd0ae4366073815490997370b6c62166105ab39569352d18d0ae0440a02303a032f9ce131b738e6baf7705ac30fc956c9465cfee8041b2f03d1f20a363bd77101f157fb08504ae0b4e2f1ed673c4e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230338568f1ac38b3f4d1571c82052fd353b07ba49e95d58d56d584074afc7de6aa5d6e54a5e95915a89e8881d6a7164a6b023015b4a2bf61a77f77a17029203f959356f8c8e91bff03aee4e642617797bc690bcaf7302092988dcde890fc2088b0817f0302047c435bb50067306502304271408f6ca4f0eeef7c61c5052ed5cc5b45a821ecfa305cfc41d1744b2dee00de98aaf4c9b524537dc8e2414fbc8590023100c107cbbdce9f23bcd52c24298d1d4c866f4a13898715cb6c6bc1f5774ae9bf600843afb073b94d8024a102641f8cb5cf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008c70df1575542d77da8bf309066b05eb85274d6428d8a17ed7d258937b5bfdd2dc611b678daa0106309973fd5e73f03e023047c70aba3c49f6bc49682dd831b960144fba4294426de34e8621120cf9347383f1581befa2917f72211a92907aaba9150302047c435bb500673065023061031e5410f6694162e43e1869f25fd39da078c89d9f883a1e4819e6bec0c359c5f2ec40e6a0f953c92fbfd3901778df023100ddb85bb7c05cc1807b85c767187eaefc4335312080efe7cd23a513da28588deffeb6e6b853e3611b1719ba62f3908ba30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e67bde2c6437fbc882cac85763b101435448803e8cf46e54e1a6c4f1208d8c77cb4a5435bdcc0e86c8922df4a57bda7602306d80f768163314650630406074f68f462868efa229e3a1195a240ea483816b9b0db4eb7e027c8633d074c29c6d73c9540302047c435bb500683066023100e7903a5b6c0fb257971543b3cbe500e63301c989c410d93c85330ab8137f3b595ed53ab46c3e6c50f802ed0696a440d2023100ce68556f9c87b54b4c398e6d8e699f07f203e27d286eeef3ec9b2667de9e7cc68842f3e66471373e5fc3088b5f1d56710302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b339af3d0731b1c0b78ed936de7c74165a8e66fb826eb9ca4c6b3a439b638f4d0834a27cddf2777f7eb691839f185a71023069949ef987ff8cc550ce21be77475d7b594dd04bd0c7bdafae3e41578f6be4694f22899d1298e7caf5d6b521dcaa6cf60302047c435bb500673065023100a7c205fdf995834bd737337aa525d9f0de80987f18b72e9d206bc018bfd883b492139f3023726d675afdafe4107de3cd0230169b72ca447ba1dc1922f389c05dc893a7f37ad2a8aa9357846e1efe960f10d7afab9936721d07316e5aace914008fda0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230349b53f1c4bdfce9b9a19cb8d18cb89758a3da676c84f2bed8d47a6c68c05df6ddf88899a8198500400fbf1948d8981c023100d524abf60717b866ae4c83ce6546a22d199c01e38a91bfaf7d932c3b489520191d775803fd474e2e1269a7df4684823e0302047c435bb500673065023100cfaaeeba503e5ce0534d3ff1d272244f47ac6a8de8195117b9a5c078f15369af71243478c1d105c73378b819929ba38702306060453bb9f4b89e9157a7586f1ea6672d0dd7430abda6cc111182e5dcd8ec9b9ba2391690e37dda59e9bae745436ca80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b8c365be588965e0f93a311a22d00d997bf14de7729b12c4f6a76f0c8a960d25e122d89b9c7379430e689b2c53f40f2e023100dbd009cb776c9ee7b8d3dca685f1fc65602be501c251e54b6d43f8ac390f5944afc37c0ad41c76a4b085afef3016f0100302047c435bb500673065023071f20fa24e9c56dfa3049b214bb4f5378c038d49279bd82fd2a2dd63de3af6c6075935ce4ea4a1f05bfba86e8073de400231008070e1b7cf428c7835b202eba1a4acfbdb6a4420a97bee67ec645ca9ca0f1739fb1058dd9aac50ac605f61064c4dd81f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e4936b6a1c79544b7d183e7d8afe85e735d485db196b658d34d7a30b9520c89de5924a22a4894f93b18a5896dfdaf36c02306b22eceb88595390f8488d8d096f6c8ce8387fedfa85f06449f9debbdb9fda73f10aff67b610ed3d054095dd091daf370302047c435bb500683066023100a51d51892d130224c663478e49ac4ce198a42606e0ad38badc4acb010f0a24433d43f8050cb2a13cbc5d99f7e0464095023100c311bcefaf12c8916b256eac99a7a703461f702f634c4f2d99a757980adf949386f31e58abc3d48608949cd65a6b9c260302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230154663fa63df3af1e28adc756139daa47320c519d02f818fc6753a8d5a0c5f8ef32876f427a1bb1528070023cda834f1023100fa063a93da69c58bd32d2f5ac23510cb9dcdc5db29b5386a12732ff4459c5a2775fe22ae02915d20e7d4f153886576130302047c435bb5006730650230739a64cef68142faf98ee0d911d4e8bae9f2164b837058baf7f36fbe8060360b22809e0692b0f227712104c807f7daf6023100dc3a821e607710e36c876b291e90f99984b1bad910f2c691847673b25fd72e8e7797a8ea47c856694749f60c3e83fea60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023010f0f47bfee923f22784bd79e6ded75b81a7d339b7cc39a5e1a7fe6f11d439bc8f1cd84b2e903a973c0ce6310cc1171d023043e557056b8ac373ee4e1a1d98b6e59c92a1822832f6a71060d43ced7224f7e732af852f6e146edef0d8a63f7a4ff7aa0302047c435bb50066306402307a8709d5136bf98567aef488dd1f34bf20d5d805fca38af6f8949eb0b5ea7d2fc83e0ba4612c4af03e5e5136d6807903023025e5e34bcac764522fb1045e6e04d6411290104159667e92c697a5cbcc5822f414da57b525b5e6c81dd743ddec4c82d10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b055cabbbda6eca20b60a7a900a54e93c31cd7356b82afaab01b6e19da835d008ea6254bc3a844d1771dc78fcddb4c31023100da1f8b485c3917292449a133c5ef0529566fba12f63da1d74c1e7935575683caf949d2fa71794ff6f711ec323400217e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230692c68d0c1031930980d9ef6623731975f21a90cf06c8f442fb09569352e156d3f02ea1c08fa0f66e34802efab3e763802302c725ff487e622e62248663393bc76e425edf1dc40dcaf039f1f93217b1dda7f6604b8f17add348079766297fc2905d30302047c435bb50066306402302ee6d11330c80a005fb6fadce67a8ae6e38ebc771cfa2323f2ab03c646fb64b0062146444c68b2123d4afde6535faa7c023056cccc32cf4edf771eb995270cdafb57061f1c5ffd222da037d2dcb396b6a922776326e2d8adf0d484e5dbad9bbd71c50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b0b2f55e49ef545f5aa8885c057c1921b1498bdea221b8448d640980dfea8f0fecaef2c51e70b603a5f33487489a007c023076fdb5af9b81b3c42c71a9932a199733006775b2d9df355f3ecec6b788970221b03316423b25cfb4b8787840615487690302047c435bb50068306602310094d0132b74440136f178d6bcbc451f8ed86005db157f709262ba217e4b68f01416c50ee66acb5f3aee712cec7771379402310084c4646d6e393482350c479e951cbb07c4b831d308c1ef259aa0ee26054d9617b330cac782630fc49b1d05c07236e7c70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230667e00dc7eeaf697a6066f4886739b148cfb504777e0e6e445c2a99286148667b68b5f280c54bd212e65b293431417f5023064713dac3fed7fc9942f5b2c65f06c2469afc84f8d4077bccf526af35abcf45b93f2511e5ab5d0814b001d1201db5f100302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023000a8db839ecac3db1083e1136c0059ef5f6e35efc63301956d7d893f88782ab6255439c33e1ba8992c246b1dc83359b1023100866ec20cf7b007e440cebf5228ddca23d8df34b2ef6763c1ef5f88bbe3276bd5dc53a983bb52f3e3d808a1d8c8917cf10302047c435bb50067306502302b7a2f1e11f7a852ddfad7e11a3bfcd92dcb9acb8874581909da80abd3123307ef9c547371bae08506004ba6977dfe8c0231009a89c20e85fbc9d6adb3c61dfb11ac26c53c573a784416cdae5663fed40522a1fd45d5469df149041ed4202f59d9b2c30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100baccc892ecd61b82fa0ab465d055826f25b58c610068029e098fd73b1a26497dbda5732412da706643ee97e8c4953de102301801b306e4ff434025683411c08f4bb252025b30c581ba5f050baf87b03d7ebd85de9dceae2aaf6f7996a75e6e42dd750302047c435bb500673065023100946b92e822a1b913a2719d61afc0e60730a51aac3c3803f5aa5c7efb441523988bfdb7bb4994b3ee5df09c2e63423771023050bf837503452055013150ffb670315ed9a232843354257d47d93eb6c62adeae057c6cd48a2ec2b1f4866a2ea8f3d5200302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008fb50789a8209fc818185e3bc3b432e3c53b3d1f108e08abeeef98319f9046c66f6f9fe8b8c1e91183938a9dedf5b192023100d40618b682197c7581f9be5d3fa258f9ec045723d55df662897123df20bcfc7be659fe40c1b38b73dcfb0cf0a6e639cb0302047c435bb50067306502307772cb376b2443119ffd539a3c1a48980e98e6c0d8f82eea3995a03e1d85a18792be0cf25b4ac9f8d0b6c40d60d9efcb023100daddaef7c2a9989383a740fad030d88ccbf8959b2791d820b475ab32a43e708bd15562266f10cb32626459714c5a06ff0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230058826e809a621d14fead43656bd6310ec157732b725d32427a999946322a1ec2e2e03d0c58aa10f40d77a27fb4fcf58023100a50a24c4935defb9fcc13253c3305c66c9e9591e0c3eda388751405cecfbca35cf1298c13c05f178b2a090978db2c1280302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230418693d2bf1c5b6d4b8b3fa48b8073fb63d5b359e62dfb33b8636b4fdd088e24aaddac5b017c8bc2f504de617bde947a02303514d4f774c3f1cd20fd2c0021e353777df32f532758debc4cee0d9958ffa3f7dce36cce2832d4b1f155dea150da3a2d0302047c435bb500683066023100b06574b776a6c00869f9f252bab3bd62860b9ecbe84056aaca5aee0f23b9cfb777e554179c27bf7f2f3cbe2b382bc847023100a2fefa7a5f2af0c7bd21235501718a20f6bf0e08317e831a107af827e4d84f48ec3723f3f79c39a0d8a8a23b17eb98bd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a3b3f24e5938bd3f5f78c29f0fa8262f81e9fdfa471017e1d976bd413465da154accd1478b5adfc95f057cfbb1520795023021e28d727e50d598da45b95db21d0d5e4c4d34749ad98540db54240b7a58a5d1cd9422e0ebd9f90023aee83372243a7c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008466fd7432363371df10bb66b85de4e716fcfbb11243b632250e21af8851bd8f26eb56cb4e80a29c1562e846ce6dbdf7023100cdd6e434ec42a23425c5851e203527d95e140778ed4cdec71d0bdc1455b0a2a0a2a7fd9c95917f990e2e0b0ea3221d520302047c435bb500673065023100e983b2ba2dcfd7be2157166d0bda2bf0e838041e47a540b4a16e2f95959998953eef80e25635909bcb25f524d4fae96a02300997c13d0318fc4551a263619d9629601222f30180090fb1eb0791a80e81c116cb71cddae1232b235cf8b51c40c596280302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306a755b8a31c1d8f5e781ebd9e0d88f4cd1cab17d1c226e295dd29be0295486ea4005770b706d0c50992d74d6ec37ed47023100845451cad23f4f178a4d095f406e04cceffe2ab09eddc1262d10ce78aabcbdce06bcd3959019f109b47bcb6d98267e930302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301573ae789feb1998e2687ffe834afbdb01c129f3ee73881dae7ea8f32148bc4d3a89e440276360fa7ae7ab0298df3b38023100d671e59999ef79e862f7cff6f715abbde837813a24d79511f8b73cbdfb9d8d920d59a0e6cd33b608c631bda6889bb0090302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023020ab4943d53f612f37752a2858d79b8a9a51b4b3f8a5496c6e6b4421d990068350b4e5c0702ca81365a7fcf8ac953ae3023100897d14b80e1316d9d1ee2e606c5898770f4bfb578c20760510ec4226dce54341a2a2e5289aeb2c99fac2438e36bc25450302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100dea9bdf6dec09e162dc37f2ded56d43c8f4d4fb42102b5d9335cf448e63b605d85fec3bc66fb72af0dedaacfe6ed5ea6023006b217cd6c689d50538c24ee60fdf479aea57f3c4f38c6cb28171a2232dfb9037f0058491f4bd63d10679b0ea69f48bf0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008527f21ba45d28e13f4a1f57f31080957fe04f53d41918cb359c99b2f9b5ad7ed0b3b20e06a15ba1b885418f8b4caa7c023008ffc86af58ed4e40074d5f41a86c542a517361aaeefe52522b91f20cce786b50c94714ac8178ea43f48fd995b434c8a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b5777bfaf190e7f304296fd63607b91d465747ccd1aaa0acbddcf926e8a69c54b2e734a48deabb5ce6d0eb1fa85f5306023035a7e663c6b2297139453ca9222d441c8a3ecff255781565ae516e13f8e7fe398b428f83b9423c6c5ee4e06b39d898f70302047c435bb50066306402302bfb9fa2b075caf959dd7abec25cea5c20ff9330bea97c72fc3078dacb6c42df1f43b1b407a810b599ab986be38683b102305b91530d875bbd9a4311fdacc634921f3e1e0e44f40e801105626c5ef381b28944bc2766a96cd5c1886e5c66588b910b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008d40d73984075e6dc07c09ab1b967244341a9b28f2a0764ee28b4e60e470ecb04e4af9689151c1e910d2ee43ccb26a58023100c3d513bdcc8f60a419f105b11af93f9a4be27527867aa4a3b6f260253ef0e0b43b1dabcee645f8c8b835baa608e9e5a60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230674410cc36adf453c41eb49cb2fd46bfd65eca31e4c5d582de747040128b3a37af30ffbda983e067a7f2317b30e4b78102301586db3632c09599cbb5440e2d4077deab2e832ef5e5ff2b1ee10a6454c48500973ef677fa0df6e01dd4852d08962b1e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009b38b464dfc27512da21d1a857e1d8743a29a69579d1b3b18beb9776a88a5039c5c6603eb2b3330c42055480f0c8761b023100ab901af9dee203e9b91027f9d80d090c9a5d4cbe0f16f8e6a7a690de898c51588055743da3df4cbd86370496de6aabd50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023075e946c3fd57ff8faed58cdff7ef8623673659629f700c909d4b7a555635ca83299e4da2176248750901b736c315e66002300514fe8bf4054398b7891478f5e37ee6ed21af0ad5ca21381f2be4d2ba012724d7b223870297dcc168c197b9c8ce54140302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b8efc7bc6e8ea26dcb6bdeca11606ab60fa5995f0fe481e3012568cc515b9dcd2e7b691ee86b251508517fc8f8cf8725023035f9cd5b21de88e66ff80a21eabf31932eecc999352251e823bb62a3fd4f45ce40d8ef2fbf0d8b7c6b58aad64acb082c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306a1c2a4a4b53891e50ac0b1a0edfe25a546bb70aa126912b7e2985eb89ff59faff5a4dad1c7eac2e4c08dac46a1f009a023026448ed7535c4d592da99c82186d106d9549560166083e808844dec70c92711f7b4ea5ca180100a7481ae99130d8ea0f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d01d0707cefea09ddca2910b40fcde88115c09f23848f1ba9c1d38b7174a8310ab7005b98d011822531d6fa343917e96023061dc7684a5597020aaa5a48086a92b9f7129ff136503521c41036a345322140c3d7ec48ce2bb08e6acebacd3240b2c7c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305d93574a990616023eaa133d877a40239072d4fec919c16ee3a26fe4eaf22db571340b7355c2628ad8160e518caef41b02304b427137c7209da22c60ff25e531a7d8ff796803f3ae3793e6c23729ded150d4badd25032aead8374f5a3dfcda0ec3e60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cbce77fc81ffa5e26d7ebf2b42a5454eb9817a63b5bb3e9d6d500204982a882600905a6a28dbb159e05f39f988b280ef023100f938e3b872dba301f6fa5dae68d26cab650f9f10f192df65983cc33ccf7240c48d3089e47b1c58da1943ba6660a66dee0302047c435bb500673065023100e8e6833a9bc59dab81ad0b0c9fae2d863dc0bd88ed85be6a39ff38b19b73047fdff3eef728309d748320aa0fc8be9c2702306542b4bffae14f107864e7239110cf80139ec4d21d07c00fcbc8efb2f3c549faa80f0e4f33a1c42f3c0a4bdbcaa3bcf10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310089c19471ae73092d3108339fefe4fd4cebf998a810c520586852472222fd530368b8d91e100ec2c8ac6ec748b0be44dc023065a635f6b20219d9b2e4a4f3c08c5169d05da09c8b31039a0d38fc39514f76d8afe13865664dddd058b18b287889d66b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306f25d99d362becb6a4d46f3fdddb4af3865bfdf15eaa98f994c8371a35bef67e5dac91c2816a23232754a14b4fcb6267023100b5b6d3c908b75d3805cb283346f3d780b65889e469858922cd786e356f567c169e3f03132c64c5ce3fdb1e3dd70477c60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f599f82f45d74ce490f67181ef0e88d5c2ef49c884e84ee3a5eb9a5f6e615a2919258b1ba22046b21c8f62f862f24e96023100df00d3d56c8188db7b506c21bb0d6e6fdbd8ac1df1a6946e2bb9060e4d34d087705055fdff0334dbea58521aec16a16c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230479cf01784e46c6689d031b536d90dd1e5cb7634128e33f3564b1855da56bfd1553e4457adf23a4e0c9554a4a68b0438023100b90391bdc196b02565c626313b7af776757a5c58a5530185ad7d48984ff8d70e43a67d39bd157e024dc2fbb58b9c654b0302047c435bb50067306502303a8866e43e5e27cec56fb3ad5e87b64fa28a1da092fdfa1ee43002679d7d82ebdfc38de49c482856f1582a9b182acafc0231009804ab11cc606ffaf21bebb6d526364d72bcde78636ca2e93eb194f435f67cb33aebbf5c0db748ee67909a53112c44550302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023055180f907ff91f8a41c2d01ab1bfb1d3f868b7671ca378c1e0b164e72b0ef52725b4c04d8102b1256762c3aed8d1e7b70230164c60d20acc50e5ec63bc02c17ccd68a2a75fd71482c035715393bc67b6576f0fde553f94805658060c5db47fe43aff0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303610a78521f908d72f241880e688b30bffabb7fba29cd88347374f3d1c876f74c95c7f1a9525bf091f6ea7b7bcd976b3023100d4acfa21bef497691b320ff784c98025cc7cf62c95f9db6a7940574a494e15fe3079fd662f341395c320d69f7ffd9f850302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b7baf4cbf97677affd5dc53fcc587e9c4ab0e3e37ec59ed9ad4d0559e8a45c7ed11a30482117b281dc78a33947101412023100ecc8019c1e8f8a61bb0414a1e74215470333a61aad48cc898b568936c4f05f0af29705885945fe8b7d0e65bd91cfd9620302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230690dcb5e87f53c905ee293a62b1833526258865dfb8d0d2f863ea84dcfd46ca3aa936f53702e4116bd1cafe08641e825023031dde8294317073c3780d41e765c46f8f463255db50b31b45f1fe9a17f4d61f0823c31620b0ae7581c743146e9a87b0e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303ba2a9ed61f0b84a584aafb8983f999d4334c7e42775d0ede7a330dc2000849130f8796f1692a0ee87d09d01dc5b08c0023100a6416a30c586b9a2ec35e0d70d17cc42796d68e2ae2c0a252a8675f25671d67649185c65a60d0ab2fac4ad87016860930302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008d7b214ff1af5d0cc6cbffd8fe7ef1d203e8543eec5068bcabaa60613a709e8e2c2f974bd05aa559f1eb59a06ac76e01023100e5b1e010995db78ef7c127da32c29d73bb9c27b4ad8079259dd36e07c37a71a83a8325de0af891a3dcd489008ec4a6940302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300e488a74e678158ee8dadfa9071a63646d8abde6fb832bcaa9f03ab4593afce84aceafef07b4a6ee8099d1b369dc375e023100cc99b8f443cd566c1723cf38718ae8a77c620e4b3ac782c97a0b43d0b59fe0e2f5d64faed2e3f5e4e18effef87a1ada40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305279621c74b49afd9356a282f0013c1e99b05fa6cf29e2c6c5b66a942bfbdd1063b3d8f9eb415026e4291888886f3fa2023019ff60d04d3a626bf13cbfa230495d0b39723ff0640ce59d1cec80109ab50c17bd988f36be4f9b89301766ff9a1c39410302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f81aab5f7667c9e2e0b24a203306435e458d30e6bbae3eb629a15a8bf650746f09b893df3e86cbf84bf5c19be7dd6b41023100a75e194c05c6c9458a370158df93be46e934e530f170dfa4c308f5e718b492039847d024607f56e26f402e6bdb5f61540302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023024587216e2284713bf450e1b6863873b9109737e23662f922ca6407fcfc9bc46d75747d4d8bf5284609ced6ec0342e67023100c363cb98bf9a75525028dc15a8832aa27b2852639e5f82bf151668ff09034a74f91fefac4e604e39e7d73f6a591f3c440302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009ca2fcbac5baf41d9b7f4bb035c3fbbb685fc70959220ce845728d4181564de3b9e1873da21cfa85faa188899c12116202310093899e5181149fd8a341dd74302ff1f097bce7fc7f1c25497358aa0840a1cdada43e9912c65b07af6d7e03775a6405fb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ea06eb621d99d33d1c7e4c2e633c9284e7d076ba56e835ff2704f296a052b1f2206d57311efae9de7a6babaa6976f9ef02306d181109e7f8b98594ea59b110f63d9a3b8f2669170245665216ee4f9808fb692ea40fad8ec1c159edb9446cadd423220302047c435bb500673065023100d536769126cdfc7eb879bdcb8ab04f4e7a2054e90d085d2bdbb938cc7011a2b5a49627e36ba908f45fa1f6efd41563d1023034d631206ad28854ad20c356a46c08dd30396913b20243217ad44592795f23ab1df1cb17feb9efa4c058e3447c9892a40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302255317462cacbe632cf9e7cc28ece52387061c249a4a434e039170c1e9eaa7511e7493d753e21e3af1547f4592db226023100cbf4977f20198625c688bb130ade7debaae14ca232d0a59fc3ee5552f6ed640413ce66694dfd0ff8b58f62e0d74776210302047c435bb500663064023015e7052a15d1ccc7b05d16015abe22c7329e0b1fd596e2157c6def415b9e46f113a81fe635b37c3f0e03035bac1a043d02303d1ea672dc2103fd2089beba7f00d3cedbddfa6473cc351d95d0bf1c910b6693c0792555464e433d32ac3362c33895080302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310081f0dbc2cc8b162a65ce6da4fd128ce1a47f9ca1339032ee4f94839f264c07399f69b8793532455d8b62c79001af6722023100f6d63153b8fb86edc5274af39ecac4384f3241a02063382ea483be098f883da9249f9c7d7fe9efd015e6aab779c118be0302047c435bb50067306502304cd13a6cc018f9666b3513a013abb596374462dbc0f08a61816147b7ed4b4887f80e0b1320945ef9d8f558d2f61074060231008e47cb6d0a98475ba9a3a9f235cd9d26667bc3ddd67c29fdba42cb957cab31a3967e4966159d76e4bbdd3fdac54ce6b90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310092b6439c6f9fd05082c6727a26cc207500b96ddbc6c9072dfc3e851e8042c5112a774c13f3697e61cef4b8a4b025f571023053308481f895567e2a978875a9ec16a8e2c1ad74cc9714858849381c80aeb5197b4fc0d5ee5ce38f0d7a9c5b5e11daad0302047c435bb500673065023100e3456748705957e7db33813fcb95f0d78cccd2b5014c3aad3ba1d7538f70ee1bd5a28931199980aff403af887d569ee00230752aa4c17ed4e0b6a61e3aa2b1b2813ac0c585a4ac3128f8923ed01d442eca701af2a5051038c4d5cee03ce0a32e0c700302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304c07c208bcde12ae9d93caf0d2e494b41f7cf1174f3d4e233bb86a7ed43e5fa449e854083280b5e955d78877d6e6bc86023100cf1ec7fe1098fd0de24877ed0913fbac00c8b328ce00eac22dce18ccd387487bc1fb0e62679c78a5da9e8182c84809820302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300af889bb91f10d088fdb241f475baa8f8ea88abfdc8707a1ffa7e773855a77568f32e2b1d97de0c11783e3fec388c82b023100c0d4e98233bdfb474d27682da939f12106ac9488f07881f73b4ccd0a107c60d984f20b57ad5159b8ce82f69345f601a10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100af7fd4a3c36b8fecbdbf3723bc94d50637d445f9e91bf06008940fc68a626e9ea6c730f7d517a3134b95ed30de309297023100c829e47cc28a49fc419637a6f7be7dfa7a00be82c65fff4986f287caaf458d9e545382adaa74039ab19bed53fa20ff190302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023041e6ab8f8fa2d97cebc228d11164c890d5503e87479df99e1bd589061d7a50c35c58baf8cfb7775cca274c73e261508d02300ceb88452a75ce41fa4b9b2e5c475f090ca4de238d54ec8521414f0f53498fa8ec1e637a60a4879b0f18782265af6a700302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009db5ec105c9ffbe600b1e20b1aff8ab96ed8fb69cd20ddd5a1251b88ed22dccb11882dbeebd651802ae39066aed6def902306f949c519fc440ea326cbcc6272a54762fab91fdc95ac8d2ec85b4d0fa21581f9cf72a78a15a3fee4c2ec0fb305072770302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023039d00e5f876c8b6ee5687f6c044c76046598367287d76b002728d2a610b21f6c936a0e6c6fdc5b2ebafc6eff75e95f4a02304f64b11e2289d193edf4aa6540e50f38f58f210eca1ac4c6fb9b65594303ea83e20a41ad0a96ef3d27ccf23ca1ea6f4c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100885d92951b96ef763e47941eea2d28666129b0b29a06e6c24cdd001e5628000f36f6e5be639bdb6b5db602f37862bec3023100eeac0f37c453349516ed48cc44b9e423ce537f12702a1c603c44b9e52ffc2c5d70509f09d3a72fccddadcc6e69fbc77b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302caead1c2d6fd3a882a06db50d6b619ff10bb6e9d2dbf2d02ef179e11b0313eeab767e43944824dac3a0b52ee09b6144023100a6ab3b9402cb7ede3c3a0ea7df82a3a6443118a1433716bf1379179b6988da2aa3a564de7a6b589acda4f055708527050302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402300159e72673af61ff0c96ae8aade849db4a009604b1812b7a2b7d269766488c7811084c49b7280f8d3d9097a1697bc4630230672713d00821cc85a03974d391cb41bd9a1aa05f1e855653ee04f6b7ac62a4a8da449cc02712d5c1a5d534a0a1cdabaa0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304a7d386544eaea9f830069d0fc0ae40ab5ed6d56ded6128d395baf1a160b72f725f6cc0baad60d860f119f5fe4fd9ca6023100a82db72d5eaaf60bd288f63c42fedcc7c44b68f25fa16227424071779c9fc071d9ac4feeea6ebb9d132e20d229afb4250302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303c1515acc1887648786fffb6f5d7bbee3f8a2b3e0464957789773efd32dab986a78ffcd83c7148718b5e71b92e0a8c160230216807d8a6fd8fcd85c05aced1d9d89aa8d27eb4ffa46bb9462e271b11a11880a0e52f422cf7534e7c0e4983a00bcb520302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d345c0db08f5674c97e8aeaabde198869c4ee3f8567a8bcdb5f5ded9636218cf165f2ee1161415d4f1ca62669ccd6804023100d1d33e44325b236c3b9d7612278cd478b948bb13967a21df678b37f1936872da5dcd5de52d1e903e0fbad6b8ae7a8f000302047c435bb50066306402301baa6a068bb84f64fe15d3808071071f5492eb08087bb5b5d41e443cbeea2ef70706e2ace7c1fe50e883a37ca0ec0450023009ccf3c328accba9c88dfc7401fd8e5fd8204745422d539e1c95f36aefdbc14d08d51b92dcfc4ae86630e193d6f7345d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023100b74e5f4bd43ef96822ba4c813ec8999887ab85fc2d9e606c5bff3d9b70d7456767ba65afd0c0180989cd2bf35a3b6eb5022f52c6bf22b765128a7ea05cdcc1d2d1bf44785918427327f300d3108b6d4ab0bbe471fd90ed31e62f0fce0bfdc654c10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300a7baecf50c7b1b4bd4acf111b7a09c016e7e8c1efa745817ab3543c74c558d556acbd6c5f14d8a1ae4b2fd017a3801a023100fc79ebc943bca35481b4a4c277aadbfcb3d7fe1d1921ab25f794195d89c0c0488ef31d6d82fd3868f598bacd91b16f650302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ef11931b8f5b42617014d92a8b5ea502058c209332391a73fc39d76024bc7211958eb411fa5d3dea6edc3dc8f3c054be023100a9a8850ce0b88b113d4134e34777464d22e8df9c7ca1a674881cff37fd825819967b73d9ad440d50550975498b38c9a40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100fa0d6a4145f6624cae7a8b1c94fa50d5f2f0260a0058d39c61b5caea868c4426d2efdcecf62e9b1c40c10fa4139dff81023050dd7c4cdb05cf33d24377456116891e7726fcac1670d1f3137857932267765ff5f078f0b30b9d9a944d29fdf82358360302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009daf43270e3a87a2f76bf5f1658e52e47c23308cf9c592451f32e16edccf0144951e04d29721be40b4becd6c8a423625023100e0ea1140b97cdffb753985f105a718458535daf8e3fbc9d79be4b832baedc71557291b2542345fa856ac04b05f3ae7320302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008eb4154deda329ef8e23905de84f4c65100e400aa29b0a9aa2512fffe377866af988b87de6f27600a39d7ad957ba741e023100ac375c3a7a6e5607a387cb93b7666ae43ab808f3041a56f07a0aca0c9cda3731e865d588b8a8897010d6fd15fd9edf490302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a5bb0bb845e2a26b3ca177ce93bfcad25d75dc96033e76b8cdcc2ae7f16352420bcb86b4e480fe032bff2586ca1dd0f602303d91799c851a772373561af70ba8d4e04adfcea5b7a421a9554d66d6c5f4ad16e03487486a22ec67fd1b1bdfad06035c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b7de3da46b327646a7ffe03cc7e07cd6094cff91fcb0370417ec253daa69fed5615c72504b7a2b0a5fa1a9edd58474f20230197c8d5a2fa55ff476b7c658e7b93db989b9f5f809344c331016de517ddb1a5691e812e20d56eee076d336d6bb3c937b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b7d8e043a8d833fcfa7fd9fd01d42a391814d4475a29c98739c42b93c056c4113c801695acf80db853d5605897907457023022203e0239873191fd6c6b79f323181f12c75322e3bbea8e8ea213d43ce56fe082fa56b4cc039db4f28411bb99ff5c190302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023050ff36aa3b16e80cfacd7fba19eab117f8d790e1e95108108b55da53b5c5e55771976091a1c2c382d516d30f55d235ab023100f45815f574757a70e725f209d0012f1f86addd57c113de10ef2bbd8b4ebcd1bc144e3e412494b1d7fe7917521bf968c70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b532e3c4a9c67e59f0c0ef9b9ce0705b0fdad0740959f554ec4916d4a46d32acad5a43d3578c1cc09461a07230b061b202302f5eb88424ab34a92681046894d41ea94dba85527430a8af8aafd4589392d23dd9bd7a3a2a66ef9d9d69e2d1ff20cdd80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ff4cf2c61810c1294e3f1d8b906a05a4ce35e42e1af70af4ffe8798ed3b4a95f8360d0f4a337ae7ed5dffc0d3efe12df0230044ba676624d7471ded66c8769b784636ae5f9081b9ca61d8108e2495827f872987be264cece91f8afb7b64e7be25de50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a0731e4a03c0c095d5f37d992d1c908da1a63f97d91c011c9cacb6eae37ad516b95a5af14a66b4d1d8f7984c10e6999d023100df64a7b52543d9a9b729dfbbc5b969c863ba4c85e4ba3b22457f6b3acd8e501dff028d7481bfb0adb7786ca8343019150302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307862d13079e8cf3e3f84ba86702f83478256e489ddbf84990e5cb45b70ed89768b47983e1a3097a6f78228a77841f90b023100cb1d2def095947348efd7572dcb3c6c7fcfb24d8af0cc23c4606cf4a3c03b86a5d9bf12c836274425908d90fd3fdd0370302047c435bb500683066023100dfe8773a53114d85a6f0ce32f0f48d59829eda73d5362f96051493216e313508b8e6980a19ea280db50812268e7a599f02310084c8f1a18e5a2ceb16143c335c92ba5e2470a694313d75d411109a24c48b11db007941c2097331b77a8d9884251c4acd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230462f63f37e6225588cfc9ee469a3226917f246e8ff5ff5445898fc8c4737b0be924ee740e2a6cb53a72fb59a9a176686023100999a718a0796482104ddcf138ac297946325dc9cb14bb787a19032b93854805548f2fa92226fc7a0324c7c00aa2486000302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230706ca35a46aa4d999dc723fd845b36b429667ab47725d6a914a694b9980bccf253c64e90ad4e7773e252d38cbf003aa2023063c0c5c707cb3a5b9fc6c5c30f5603f8fd2a85f53913d89d6963f6b2940ebead1a79e4629e676a81dc32cecfbe3dc8e90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023012d7926cc51d348b0bcebe347224b80b8f89a09199a049513d9c871bb68dcde3e76fc853bc5cfbb44e232f2f7876e9fb02302cf0e7d341a02db1ffa6a85e17224ba687ea2c792289bf33bcde1d859609867806e7c54334c44a3457de3b90c9cc78aa0302047c435bb500683066023100a1fa06720819100d67f0f086b3184213931d740456daec1ca64c45986cfa78e41cc418263d6a3626ee3dabd4d34d6fb30231008bc7d4ce3a121c1c5c2cf9e13173606ae676cd157552c5f04ebb99b021608ddda28d0850264cb68fb8cafecd938801620302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230549a387639119b5d58e6c90a2560bac6ea00e23839b85a69bdc23977ddc3a5f1042d13487f40ce6d195a3e0a67f8e723023100cdb397402eec2cfb530aae2885858a956e034edfde3c8718c440513e325f3bceac3563f9437fa1d6f4afaa147711efa20302047c435bb500673065023035a758d430740215f3fc680de40fdf6eaf8c96afe65a54c0b8556d2405573dc7bc026ed49281aee4a60fc96534154bdf023100ee85f26e62f90a0d2a169f124f074c2c936a11a3383465c185a82de54e098e96aff94578f5e67bb6280382b79b1a7a0f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100de8bf2c3ac384c3dc976a2183efdadb64e2363e3103dc1f5bd590dc927a400da7034d836afd9255f7420a519b03950c0023100ef68e563881a25d180aca3d0b2775afa97f6c71897d98606993cc15b94c9fd0c4b34d2b5cdfbbadb54dc7b89730581380302047c435bb500683066023100f1c565bec4a3decbc97350e75b09e85729d1309e9ec471df949dcff101f438a7b185f06261dd4d129613b90c73b5d6e0023100f8e4c89e30abe2690d0e19a9d58b71128e57013445a082071e18defa8c1f2a5ddaa9308104ee5c6965a1bc837bef68be0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300907627e33148099a091379d6eb04e1bac1cc796086b9987ff3ffe5b9dd20c390351c649bba299f9a8b5648192c16c7702310080945c1c4c604beb49c8d5bb69fb678e45d0bd2bbe701c2d03503cf78fdb7d98b43a6d26c0aba8c709df9ff70069d51f0302047c435bb50067306502306f3d0d9c3031308e9c3e390b78572c3825b55a54d4caaee727272c806a8ee4663421d749b87348b8971b01428fa7e138023100c6f850242bd3a6191194124fa1d6c988d0c05e4c835679c8c8cf8413c69019940af9da002418c0c3c066ad038be798200302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302b0e509b3f1a9269c377963503e725e14c9284f9ac72eac9e149c90a6e56a553a607fc376d69e74126bde8eb8c6320f9023100aa93a5654321cac0195305ec1d7d224ff1d5c79ee6ae152162787c91d7c3380c67e316e275082bd15ef1658316a90cc50302047c435bb50066306402306896771c9f2ae77fd1c0c14145ce8dca820c2fa94bb9d4ade81f7fea7f3b6b056d3c8a0a97e35239ce63801a6f10cbcc02300d1938dfa245c220e46b86916d389a14b2187bf3a37a6de1d19a8424dbbd83c6511872e4927ff96606f743cbee2b47800302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008813e8c52b0df515a37e2c251d85a8c8ecec10a79d2b2a75b515945ffeaf88078f5c4210703235f8718e334ea2e0a1810230173b287d5644e284e7e0ff622d077f3b687d9835017170d2e2f7589aeb0cab5902492b2393a5cbd88f50c19c614767a90302047c435bb500683066023100f64a6c95957684cafb0ab8bb117c6d94a28eacc2a9e28d2106b81411e60d46e471836d8dc456a440d61db752c5b7b064023100e7d48b1a5fe8f4165108fa511ce7c32583db95dddd3034cd9a3b02341553658174c6e6ee54885d8a19dd27f31c5b7b4b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023006b8f095be50ee29fd443bfb264fbaa61f91fe042f710b9e99b22f12726f36d79cb6fed8a8efabff595dc393cc6df01302310088cbe55488040acd8dff5a7249dcabf7189b1910d7a64e901925506651df5623b9ddf218c29625da67657c8511f871360302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d52ea84f335061a9afb7bc760ed8aefefe418933dbc4a2061d773e76da28dec62460e89f7414b999989b7cca08f17d78023043945901cc878f0e9e672c2e0cee6dbdb3bfb37935651af7e352c7297af8da302d6412e5f44900af53728800df4964b80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230722f81261a3c33041b1bf9370c620cc1d5534f68dacee8f9b1e2500dc3a50d9b13bb5dd1250b8ae7e46a8499e1a4ce41023044780aeec522f03220eeb294512ae73f22108870618acd8d9b0d664c497b3168dbb1506c6be668d3bfce9eb8d43569d60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100eb4e38e564aed4dc296b1739a41d80e05215f0994969ef4de4fa7982abd7278c643cde5204858475fbf65b136941757f023064943d45a65a85f6bb721cf1639d50f76011bf10ee50392bb304330d02edf6b383c9fea4d6cee6c8a6a4e4f7dd19122d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307a5cc00e22b70040bdeca9cb5e1121d71e61c70a7df9510595417970e0b8ea2da71a45064f8c03b1091c8679664cbf970230788f271e466f5f4a522be30a15c6ed01e27be8a059731f33d422ef3575ab007a993d219348493376079fc863d74b35b60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100db09749aa0b0d15170905970f07a5a51e8fcd0d0bc616466ee733c42c2474ff4bddb368ff3c0105c6412abc1234c662702302907dae25031b7db148db262859d0596d3c5507c3321346d68b6810420498f379937e48d4581b2ab41cd1f3e42131f7c0302047c435bb500673065023065e73ad53e878678d1fab12a929fe7bde63f444ba7ae66fdfee1a245622b44c011c2014dbb2fa046abd9d8118c64b453023100d2f62f70ad48686cc00aea24331bf1d59f10d04603cf13f949cf047431bd34494a74c29656a2935e6f8f88893ff93eac0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300c9226262889101e28319b59ebcb6a0d3b0c1be3ee743f54f7ed63e4efb52370aa70ea9defe6ae97cef71204998e3732023100b92f8f28eebbe1af9d8e0c3b4f88fa17a5855432f035057de14d492a462d589b0fd8ec389b2826f8438c0190449be8c00302047c435bb50066306402306103ead08cb3b0c8e9ed7e9c65b4995c11afd562164282e5a692997197f601ca24047c3c8e0325e70012765b778be46202305ef5bc164f487f99f606345bb16f77da8d9acee25b2b00f6fd385ee9e5a4c575132a25ce14976f394e4da3a90bb91e4d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230029dbeaf29371cb9d98c459149c6ed8b6659ba0de5c100847c74d2c7851641f9866ac3b4925d052397470686b94b55ba0231008ede81db709f04090640479dd8c1f45b48cfae8cc944479be5b998566551d39bea92ce8d2ead67a1de6037305b7c79940302047c435bb500673065023100d19494f5f57b5e61a598fe03b7c8c377fb24f11cd35ddeb092e7089fed608c35257aa94f39c4cd3f353e04851e59768f02300b204a31b323ff64025bee7a979fc5963071f773b3e4833451dd86c86f2a6d5551432b2f7036f19548063c72efccd5ea0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100af8a61aefa4bda0718385c3d472f09adc566dd07dc8fddbb187d85a9b2bbe163d3971ddd6b2cac44d38def2c1f46152902304176137a5c5159fbd1b36854482d6cd08390967bca4f5ae1734ac94eb3f9d3d12212dc94c5631ead3d2681609c4fd2e60302047c435bb500673065023100f92250f4d9f8bd634cdf9db340322cb6997dca5d296ab93b716a2f422dfc26f107af77f7c7bfdfe48614247482d9295b02303abb33988e9a5bb0ed269addebaa00123caf892aa4423b5c5860dd0b019987d77032acd765bb4c1d62a09576b9e5125b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304e395b931605baf1fc611e8e37543bfcecdbd7231d0a083f78064f4d9d265744041179541cd8e044f725a4a5bd2ba227023100c3bad09eb424ca5a7ffa0ae655b42acf8fa6cdd81b6ad8e7de0d046a93ea3ff2366628d0be808e6e656f140ebe41ed4e0302047c435bb500683066023100eac9235763ba6143683f36a44d5ce66e1ea500bbacd669157406b5738a9de8b197fc8e1db83aef9172d6ed7c1fb5083a023100d6ae8052b4ed00092feb351f50f56724969368f43782f61316d55b2319a327e2019d8ef7cd60a6ebe7f34a01fa535e5d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023005a603e69d94ed419515149dc0af738c10e1a05997ade5b6ba9dbee8883d41149545d6de35e8b550d4fd6033fa227e65023100966853cab008403c8bc41f6e853798f11cb9543f68e6a840ec63802c07a288c7773b8d8bb16bd17e1f53544a32d301cd0302047c435bb500663064023007ad4b46380b6a967fbc4f52f8878c6aa5d0be35c54416f34cdb75ee89db011f6e556896eec7eafe7a2eeb3bc9a4944902307e809a5716dd72c0b8c953605aa63acc4143703baae3e4596717c7b22ee7fc7518d8b47c86ac25007ce84a1853a6e3b80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310097628b927476c27bd572193bdf058e19c79a244b128a9b358d80dfb9ae2ed7c8524b3a086b657938352ad8a5ed068431023100f17a316a8d4f12d4ab7b0930a7bf508c2842e5675fd1169bc94e982aced4fe219772e9f0a7c3916d82a7a96e4937ef2d0302047c435bb500673065023100dfe64ab7e0e3449d645e0cdc8dbafe8ed0514e00e8de772bc85029f5a27a1eb10da0e72537038817b626429b2978064702301c6932ddf38eaf61079d00be1b86d8a6e183bb6ea3fa6d252349d206e13af7682584219198da46e4ff381c4a58f433100302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100bc02158260f62a12f0c215c2971c0a90045d7e2da7042936db2b7bd9381e7265b5c1db9ff371eb715fa86fe64e16a0bf023100a4acba8cb24a1b45b238e00248ca60850eeb545c7d09f7db72adc97640cba230c02c15b8e651c4d60a404b3ac18017e70302047c435bb5006630640230304f6496b115055c00bd76ba022ad82f20370df34625e0d7e07d33debe592f505f5ec4ea1c7067f87868318cd10db5fe0230266a020efbc815be5b5d87b70a9776a06e33003d36b64c3ba6f86437647ac7dcd724b292009e80f6ead353169280666f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230028606e7a28dc259200d661b150825c89897c32b5d5c2edc4bbc24dd51f2afd2f44bbbfe200976911888bd56dbc3d3e5023065acbbbc85fedc87db964d80a59c5af60e125d33b3cf713e8dc9be8d74a3599176af2bbc1e765f388ecdee0ecf6ba9e60302047c435bb500673065023100e5ac5cb09d715f0096489121bac2a6dff549ddd1e4e4dcf45588303bcf34577bfe9d3fd9d27c0756b27ecb52b46e547a0230049c95d9d60ba83fcec1f262069bed9e9107c77bb780cafa8cbabd4891477855888e083479f20822eb554b334623b8f70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100cf3f5ce090413646f325725107b1bb26f0a068ed576cda9cb5c7ad7f09c1422ba36d46e0469e3312eb2dce065142ce3502307336ceece858ba102abd32011c207e0f5939899d2ee580884b12a74d68826c1b8b28b1635b37d2afa2b5a942bcc2bb3f0302047c435bb50067306502302655c306b293b777249da3353d4ed5c74abdc3bf0acb805e8a756c2159bf288d0b16af94b08c644dfc03b71ffa83a26c023100de2b4fd719b85be421e80a6e5ef0d9bbb88941694d77fb4132015315e44b964f0d287cdde0de1f97fc9e90f3e79216a10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023026674338df72e9bf154ce5e799aea9d52079f8457f93eebe0f6c3dd9b61d8bcfe52ef163d0fdb39a784b04305153cb87023100bb652567ca341563812f43a5547f1e36d63c071e6688d61ee941930811a3906bdbd76efdb180d977e35ed68f5e9eb6b40302047c435bb50067306502303958864572a2249e320d6dbdb49345af605372437ebead5da7a5c40a9d292af9f48200a09ecf1181e993120070228ca8023100fbb29776ceb53819688e7e9b0088f24b5a1fb812359df7c8cd5abe26a46f35214db33ab09bef605cf68d7c06e24834380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100abbc91777654b40a4e56e668cb387eed5e07138a505680a145757387d6d6843fe6bea685e0b80908d64cc0fdef5021ad023100cd94c7e19ce4976a93300cc7fd265e5b9f9eb5b08f9a1166b0178cc3f5f53f0fbd5a0430cc9677e68924efeb04f1fed70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a8aa65fd32f825f0e54c3766d04e898d6d87d8ec7f635816c762a3e852d49c5863c137c3e68270cb1529287a56463ccd02310088a487d656a4be33b048e41bfc7ddef8c9f1d48efe588adc3295aff7fe331c7abe949f63db0d35d605eb987b8c4707eb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302ca4295fb734f8d18b87ee67597b5fe89c4a1672aa4c4d9159e59144f868ac57e4794fe30dbcf92b04d896ad9f6aabc40231008296ee376c71bb57dcd3369cf1d958afe39b3cd327999c8bcc04a20a66db5a7c8f1093370f7753292646c0657347a4d40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310085f1cb48811ff72fa46910bffea0ce651e9619accd86e27e83dceb29bbdfcd73e7144170bf411f80f297aaec24823be002307847acecd4ac44d9c358ef139028e7f1b96bc4b2df1fc5777e46e55b4188f9913594deeebf8a7c4ea1fdf7c7262dc5730302047c435bb500683066023100c8a1ac476d67476929502663d604e3b097506ff18c136984b27b627e6f2c8f0b8dd2382943e9b87d254d6ac279aec190023100fc47ced9626b61d9822d2178dea2602c526269dee8a2c2f8519116c9486686ff4049474164943ddf953e9310d8b4508c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230354f22904005fa04d26250f2d4da7086d6cecdbce8a791eb91a10147ae60d57bc654f0749e400cf1e9773b3dc9e6678702310088b5f5b9251e541427be40f4ef567353fa9ac0cc683099f4b6c20ed68161e14ca8500817cb828d0667f1ff9d630c6f250302047c435bb50066306402300d117cef0895db017c3c53d3a622cc2bd632a25b91deb96b14251ec7c36e47b2fbfa6db3d80253babdb5865cc543a961023044b73f93ae6905db45ac930c55eb4f1a1852217c262d3de1a899b60b5ebac625a03ab02da1e1d925ba3b3c8847f7d92f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302b6365d1fdcb2a169b7c3f436df5d95bf7eb99d02ac366cca9d244b431326258abe8ab942d02f179674430126ff1464a02300bba7df0d13ad7f12a6d7a6d0af9bfa044d4e154ba475518f8e46122433608900dcad221353eb265fc0ad132d330e3040302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b4ff54699f55d621692ed1570258e0081d0aab7cc5c97e5992cff415bfcd6bbf0fb50ee5b66e0713cf3d427d43a19683023100fc8534ffa6521fb3e708b410b7108ae39a4c313c91f6c9e07ce8a2cad798d3bef5ef8ba5b04b2ba95db449cc54b8c8050302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d8417ccbd37c88fde7ccc5fc800bf11563cc1f57a1ef18c34decdda3007fc6d34ebd671b241cbd5b2dbcbd43d3f33a3302310096c19269ceadfd6936861d6be8c979c21ef324e5908a6a4b046240638354648ad6aad336d618f8256c63e0237418e4df0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300406ad3a0354e7d63d405b889f76952bb28649c8116d9743fd104bff2c27d00cb80550c8650da63e575bbb83ebdd90fb0231008c4de1890606b5bb2b6239ad1a62a651369d6ff45625e3e2756584772d4864d26b43db4261cda8878cdfa1438a8069ef0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306e28fb2286220719ea3233989806cb61167e0329fefc15170d0ca6c0d994bf6c8196eae872f98936f8d7bdffc99210ac023100c34ca97024849e55623e6b59bf95abd7e1194083a3db70738bc8d8314b802b71db48f8d8f995b2590ec2fadeea538afe0302047c435bb500673065023100b516eb7f7189b2c4d754046fc19083fbb4e03957815522edc427870a6242f48f818aaf0901bcd422aa11df2792b5eabb02302ab0066a9b833e42c7153c40eff71fbb0d9184d79c678a2a021119bb123336c03ca1c38b72113ccfaca647f95d42e5970302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304be12fd477a99e2314879d8af4ede05946f76e9327e40c7e10278da1b61d2c6e310fee896541b630dd402a4819d0ab580231008fc2ce27ca40b00c3af870d83df730e8b1de41352d7153b41fedbd9cebd0943b6fd0a4f0d60839c655ceecd08c3231b90302047c435bb500673065023100a08d592e05ee884d5d398796f97f2453d1366eb69a0d81a0b0d9f594903b206b154dcc35eea9aa307e90b131a3b4380502301487ecdf08ce34cbd9ce116275ede00b5a76aab5c11c6fa5148ca4fb8a28125cf8bcd9389bad8c94c62cba306b3aafc70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305ecf82389a106a08ce92f5161a9190760c6525db7f1d50e93ac9e3525898a465f0c5fdc07b0328cf93c5d293e444a6ac02303d5e99ecfbc8ab34657225ee55d7b8ad33d7b84164521e5fbed47794b1065a3ae22c9c25450cc776d42081294eb5c3aa0302047c435bb50067306502300e6aa3c8b379ef643a439e035c6f244f5344c7692d0f9d186b14a22dda3bdc752e75b1a24f9d4e1c4227df7e2cad2b4d023100d656a145b37bb0d6b7e634f3472159eace7551f83cda7c35d10f6f564977c8f58151b468187ccaac7e92503d8c97c5720302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310085ed3cbff42dbb9017e34d7e26f20b611d69393fe4649adc90b954fdbd1ca62dba84569ffc41434946abc2e9e71686f3023100ad69140958f33bce4ff8c01b0ef3d414a42c0bb3a5a01b305d704d90095d2810f654eb997a89150d8bbb7c299a03435a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301be62795291a92002d1ad811e2684491a3dcb641aa4161f46ed96aeef3d6c3ae7fffa5180e245b13b3088d2f3342a505023100e39f4accf6eb178034eaba13ac5e387597307c8aa0cf28e9e4222905b6cd110b8935ea88c896497586befcd3ca801c550302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c7b31c23c47038997dc041b2ee80a7860f5672deaeb68a91ef9d14ef8da9af2e3a02fe27314629ef2c83bfd62363a4300231008d5277dc3d1ae1dad7923adf1dd9078f45b602df46f4db65a151918afc110269221cdc2adc0b19942b7437d746e55b6d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307d0c9fba1faa6aaf2e1394989ec8f9f09d4dd622323eb5eabf1529b73cca822aa9689e70b63f5444c743b1773c256e2d02304f70ed8b1b0cecf594b41d4b75a571b44ec25261a8f0fe35b5da59222ea949b676b196f82c6b6f6fb5101c34707905880302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230697c584a360c1113c49000b2e3076fa3a45049374ee47433596515d9df3fc0c8750670b1a1f32711fdbfdb64e4d9ccd302305aaefce23b0741ee83c74220dd0ce491b9342f2d598b28f079da107e50c75d88b450149071584597f461ceb7668e4f520302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e067da506b63f32a163a1ac7aed2fbeecfe7aa61c581ef4794eb61ae2c7384a8cbfc0334c327ec953957b8aa6026b78a023100a3627b378876b6da5d815aab730d9cd70ce055e163e96723e59f060f9c8a9b4dc4fe9bebc372cba03d1bb92bfaf42f490302047c435bb500673065023100be5bc3b91e392e81bfe2521f196d813af3ae6aaaec4830a522c99defeca34c5feeccdf97357cd0bc446ef00fce6d3212023004358e784661e468297b379ad3540e5687d854692d0cca208d5f649de61a08a6c63469df211f9fb941fddf75b26ce8f90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307b4b97ffc23336e0c4bd639274e84d7687972f90c5006cae0e5d01cfa67d76f428841ab46be94ce00e06cfc201a4176002302ae2bd474741841a0e2c42bf1d6c5217e1ff73d63ccf3660ecbdbded87e87ba210759c7fc9c130398d89c3c40f567ce40302047c435bb50066306402303fcb32e34f33974020e1f88f210621918f2bd163212cae73454957e2c14a2235b90ce7ec3c5ed3bfc8168538efd87aad02301789c824ffab0f89f6eab63d1964d4c90ee92f78b8b5e65fefa8fc54d6571d3e566dacb6f65982598c086485e085662f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301fb7b7002957a9afef7378ed43a746399acce8b1f3c2997051d07d93f52990d349c283280413ed4b76fc02e98e9dd4220230254181c2cdcbefd95066846a5ae398abab84217e40f195f70bd614dfbcb0043836327d9ed2ab4f7879fc407f6eb6c1ff0302047c435bb500673065023100a1b0b345b378065f22f9bdf538eb4270cea73f9b8d8c9a154bbc5c76b59a07befeb4b08bce8845489668248426e5fa7c023040f438e670d70c99d44908b641f859093152969f4bb9dbf3965c7d3e601f94f8deb338e4b5dd719d328942806b67c0830302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d3ac5e092a795df4cd4b5c23f11f1588c2b601302894c2bb64acd0bce8b63c26bd74b624300fd10ebd88b44b9654362e02307dbf1fae315404b349dfc9df97905b98b89fe3b62e2974b58ba8847c83a9852652db8bc66acb5b528148b59461de4bfb0302047c435bb50066306402302d08b0673a45c69154fda70a4d2229491a11077dd3631a0247179c8114db3b264f6feb685ecf9f47ab53dcf11211942702302571d0c6d505fc726e61b39ffb007a440906a1dd75bf7ee3c9dd79479d06727a7bae5cb7c8818bce911eeca6817538910302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100dc5470d212ca5d9275935b7635659541a2c2977b4b7c3f06c320d9e8f1c771e4b99d11d4da932ca6bc68dba8c7bff63e0230580af7508c9a7eb13646088ebe5fa347d9866db1046ca026fc647c7be31996ea71c9dfc50f7d940659a1a6d6af5556670302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e17c44665e919ea22269c94825187e92f58192dd7c700ab014e4fa9199622f40d4432d3338a6fb4172dee91f9ea07200023100b758c632a093db1246024e89d83bd1f449980f1c754dfe9da962b8baf4373087f5d05dcd2ea6de6b0ea4070e50ec243b0302047c435bb500673065023064cac5a57bc28717a63f501c9082b71d60a623b07ac95623573a9a8fc13d17fcb82d01ab7a9afb6566be53a85f6fd421023100e1741194929c10979ebd6fca17967ce1c29d8b12e8b6fd52870d701e374dd2f4f07c4d9f22d833f1b504c36587cd394e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c25d292f5597e1914d4a0abcd0ad429e28409d50e56be1386730798b97a4d18158c0e2255f13c8237917f2eee80a66c4023100affba7232271bcb304cd21d8d9d7698e99745bdd7b87a1ac6f733fc5771e6bdd9443f507bba7dc6ab5b434cdfc3704780302047c435bb50067306502304be6c43c0aed39963956b014eb8953ea1fa40a91a8184607ffde7378a7b75a5e70aee5e497f04eec47e299e1804fcb29023100d1098cfe608f17460dc1487510e48374d4d02345c8af04bb1af441bcbfdaab7a8a7c1d2e6a4efd98501a9020841026fc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f7a61eb45f0f7c97337def68aa2cb92fb12e63611ddc1b4bc9b8a274707c859e701f3515470faf1606739c2cc6b17ebb02306c32cce26ac7b9fe3b525096b4d4bdd0551d08bafccd88156ab5fd942de5514865f8dde7a3770fc088cdde4c618075680302047c435bb500673065023100cda248adc3ed9d19502e92a41e92f1a027092acf99d2b19b55bf1cb93a7b280d98f92554d9fd2291ebd9c83eab06ef81023061e7f82511de4f1fa5c5f37e1ce85e08a31f05474244a3c3de62526f4bc439e9bc2b2d773d995745fc996b9c15a628e10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f29f1f1187911408701367443902674cf91420fe7f2084abfce4f58a9e8cc6757dea02e7691f52b511c46329382dbd2b023100a7d04a0ab0c6fec5c7c62aaf40e75bbc067d4cd3177f44cc0fc03f35459c50dfda350c4b66098d555ad8495ffb5644770302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306b7acf9705f2a98f70263161da3379ab1af4cc75ee764acb49bf60b6345cd041da6316409725db53f37ef2c50a778ca30230758a19b71b07e1a06a0c99c17e6556efb904513b4c34be96aa0236dcaa8dceefab40f09111aae37fcaedc646bf7d13510302047c435bb500683066023100f0b03f3fe0885b0cad36682201b6272482f7d9e91d7fadbbed56974c8228147391352fd3aea367f10c394f310765e742023100f666561f6b0b4f3f1e0c18f83fda7f06339570f1753260955532c0f172b260042a4a3c4de30fc9961ddbf7ae4315bbba0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100a43b81ffb138e43b0f7a8949a66b2294d202ffa198a5d72322aaf6b55f646778e349d02b1b3685c931ac9b5214b9ad90023100e53532e26a32343f5538e0e3306e31cafda759f3349c2b4107d6146fd684f0abd03d4b18c4ef294a5ec963e8113bfe8f0302047c435bb50067306502301529f4f64e021fa409638769390a5375cf9692d7616f67d4eb22e8070be5a3c958e9c42fc8e2fc968f7f8af25b32e776023100b02140918cbd2d38470cbee306f759742e9d5b91beb6cd5151438630724e635eed87025bc3c03ab391aebacab4a3523e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009d8d444a714562b061747408a0b2d03bed230fc410d7419d550636d2b25d925dda7cf1db5da27d829350e26f58397aac02300343b029869a7d7f87d09cb5be251c3662f6b7a272914586e9f4d0a4b7f4364afdac74e169c613e54baa096a715cc5d10302047c435bb50066306402306161821d8663b36c3aa0cfd1d6f5f87c320d1db6cc0e9ebe92a0984f5313068fdb24b082ff84da67d64a1fcaae17f7d002302fb19b349f6b15581a825337a68600cde678a5f22f3d4b01b45fe95dd5a8ce9102692d0cf0aaed334497fbc8dccc6bb50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305226b6095b0eb4fe147655fd8e34289d6b2844e9b5d8882bd77b74b96a7e63c84fe8d285e51797cd8552f44c1b44cba7023100a779c2351d0ef7e66426872211a4e441cecf64594dcfc8ddccd360510236ce13f31fcdf82c0eeae223f7dc4ae1823fe50302047c435bb500683066023100f4d4e24718367b8a007fa5c9b873380f52acb1b3d1952cb0036d7f1768bffe18c52499dcaadad347563836da5a3f455c023100a47c308bffac09d9dee7eefc69290745fca5e4a757573d8e62c18f3b75e2108f42cf4b1b57ceb423091153a0c95221e20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303b5ed00cf484532a7f892a2e29ac399a2a3f79afab8805d6cb2925e7094d3d75687b06f0ea5644fa05ba230cec1621d8023053274ede8ffd2ec8a09ea24d45f70eb0b2cf1bac6a53db4a6db3e73df78de878cf5fb64d07474cc6b2bcd9ee419dab5e0302047c435bb50067306502302cb5751fbf336db99890a54b3cc452edac24d1970cc2f897ca8df8ba277de0d3b569e77eb50f609314ec06a9dd16517a0231008b7b888b9e49e5c1b2a30cb890892c93c5a617b04ad1f1fb853468c90d07dbb5efcf238d84cabc437957c167f46cf9590302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306b60fb6d664bfefc3470d0fd97cff01fa82c6ff1720d7d23276e8a0b411399bb0e20b38451c110be4af43cd977d1059802305dede9a4876b9f2c471790f607a115d2e2b15405f1bb78e2bc5827a6479eb4af5283dd3f010a61e82eb69697eec7f6540302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ee73c6fc4dba043872da04e1990357d8c7a19b07c5aa1b9b8760a655c2046da0805eaf33536fdec56fd13a63aef5cfcb023100a45a9d4852cf36749a651f1b55866314806ffc6117c6f25d3083e3cbdb6fd9c865a4658d78430bcb31b814d7de7151050302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ebe25042248f17a0b7a4cfc4e748756f9c76262f32fd11af1dbc26d6f57495b3b39f743332b7865e7d30555f1066cdd6023100e9961e4c36f6326d1e7eee33f9d101b4e357ea4383ca4c0d06b6ffe49c2c66229455967b0220d44755372a84cefbed450302047c435bb500673065023100bdabbc3bc0217bab5bbb6ff85c278066f402d8dd99b0abcfeffa6a90f5fa8f6c27527e852d490b14df14dc18db0eeec5023077bd92f5edc244274712bac3e20d59987fdd6fe5d50e6c864c2254b5b003bef98e47a82ff8eacfff727fe31dd8acf32b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230160499117c49a8b44225baeda18fbec68188684b9ddf1ca8ed1efc273a5715a140609bf2db9c8127f6b861b14ac1c289023042b5564b1304cdf62433e6459bb6bd50b121a240548b0579a177d6ed01f5a854c201feb4e0da27be754262f3141aea8e0302047c435bb50067306502305f133c01337316e6023e1ea43d5e6fbc9a6337f56e009c0931811a877b160f66e3eab6f1cac55344256dbd9020287ddb023100887047cc443618f6105ef7f29c54802a4e982ef36067a1644398a58f8e4304424e9262b8560eb19714d5c07bc62ae65a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306abec8a26694eacc9d7ea2169adf88a305686baafc523f82f8636e99dc01b40cbe87016bdc3c7068f3f26368aa161d8d02300d2db51ceab7d6e88fd3521d91c7ee84251de1dfab7c5c61c8fa479d5e7b1b859c3a76bf525b22ce06c6dd5cad08ceeb0302047c435bb50066306402305f6be3042c45a32f8bba0514e145d7d3bccfefbe3e4eda39fad2040798a60edce3672886bdf3f0ad52107ca089c2885202302ae000d985689fa05cb8c7594e433a240a495b3136598db2e8bb89c05bbd74fbc9dccf6b635f99e75c38cc80abeff06f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c80bd28cd77b203c1a983f3d7a080358ba674d70add964f01958813b1b9a85281244681318c953dd9025e9180106f60e023028c077b169b29b1ddfdea8af00b4cd6c16a15530c88bbea03e044ea62d9a03042684ff4bec12b744124b37c754e064790302047c435bb500683066023100be92fc509bc2f7e1b3707ea7dc8e7200147139bcd42f584f646bf428aeaddc8dc05cc4e0206ee44bb8642d5c28f88ed8023100fd8e238795c567b5a4942bdb5c1e016f4a7fab9edb6c638e1f6e9b8c78a5dd0659025febc79323cd2e3757c5dadc25e20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100dc5b7c988a6545ad20ebfea4a0a55314b6f522b4dc0aa7d96dc31bf6e2c2455925241bb99f2bd41096f06ef0ce20c2ff023100b79ace7b4176568c121381d4450eb10f2c7c26525b5cb2e92619edad6d1f3464541082c50ad78824277865a24b817b750302047c435bb50066306402303f6cdc475df332e9e6fa31aca51ac75b8ca18d1661fd1e552d8fbdae0ec757e18b3d2f2407bc44470626c2d85b05a79f02307db040ed3a61afb8439d578459337cf04912bbfb7b68ed6df4aa94905b229d3ad7c35b1ba52dd9afc3bf99f784c51df50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f6ec286e0f71417ed345fafd9e201eef5dbf2bc4c927e0f396eb0799ba40ad04197cb2fb0dfce0d403e82fc8806cfd93023100e301067ff394e740c73209ab34c1f15945dccc03211aea3cf62e21fca06b8664f40aabb9d048780819562f3c6f1581220302047c435bb50067306502300f8e59041ab5597cc5b7066104d5dda7ff0b939dcde00970156b367be5e866f27738b200753aee4188525ab4c4ab3900023100d729cb8cac689d35dfab4ac735ab04ed99d62663d70fe6c7309b8b2f24d951493aac680f18a6b234dfa8877e789dbfe00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230029c9a0978a15a0ef4e1701a55348c8de5c511249d5533e098565e3b47c35e77793cd31cb2b0e166cc1b44f576cef6fc023100f0958be00603517bd24fa6e6ffd0303a44620309bc67c1cf1f786641335d2080b2233418ee907ee641535b5dd4d5fc550302047c435bb500683066023100e2b1942af486229c4fe973f831d5c1fc234de548e695b968b3dabed9965e1c7b3823cbb457b35736646de04d46f99853023100dee22744cc0d36a0ccbb1b11adbb0f9a90db99b1e1416a3333526214dfba961cb7dc4063dc97c1f99e7e1b89f836b9a80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023003b3a9a58f42020b1d6141acffcfc1a525cfe0854e460ba332b8610affa2690172066c744cff7a3952c4e724cbbb6af80231009123f769a2a847503bb103e6d599dac56af2d006b09a3c644b586c6f2f69c58528d5d4d726891278c03e4b8131e609690302047c435bb50067306502303e600c2792ce8b75a549162ef35604c44309b5b0f006b3600f5a9377a117b6676720a4c61f10e84775876eb004928980023100fead971d3578e7967693fa5fb8e33bccdb83cf905d45b42e61e8258fae15718c0245a6ffa4445be8236a945384d2764c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e6c8f64f9680a3e20d3cebc50d8ec18ac86cca28160ab2deadd00de93bd299941b0459c79efff060e0a29853b887da97023100dba7ed8813129ec546de356dfbd2a93bfe069a696d1f3ee1f1ed62a2d9d8278e89e0afce98d04837de8dbfc7c44a553c0302047c435bb50066306402307be7d8833fdcc36d8079a333b19efbc344795468412650407b036e0bf0db329a0ceb35adaf1126a85f4cf9a65c53c0560230197128fa4106b8f6110a1bf0bbc8e65cf0f6e962caa327b4659b55a6f5d5ece8cceaef3d2282a1ef906f2cc55f5e9ecd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b7927599dc6cb11fce7b53adb214af2c88c48126458454b300fe5a36eb7b4bfb4875fc226fac5f94cd008e3baa8d8f76023100929e4916b7c5ca178d7f798a2b326f0297de98c34c0d3f109603b533ec994d086432437caa343c31229a60a53a713c900302047c435bb500673065023046e97d920c715b9aed1e9b3c6df9c22081ca779378e042c6795bfef2aa7675ccb400557b003ffc2b03f4241d0894f341023100cd3c5edb05ca2dcde97ad48b3b7473112806cb8db54228a3bc78ab2c73ae18bc6be3ae03f5a5cce55f972b03509982010302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e4c81ef6ae8fb31274bc5f79e50cf3abd636ee468e0999eca375bfa64b6acf7f6351b4fc94d41399c6334eab20b1b1f6023100db52f96b44520ff2d58f6aa924a32aed99b1585adb38315856b5141b020c79c1ca602a61bcd6cd1640110a3e1915298c0302047c435bb500673065023100b3a1b3c9a72c192cc3610d517b81ee48bcb3183c2fed3c50683a6e9b6cd989828b8d6bea1b4dd303cf2ea6e82ddd96b402305b554a4e9182aa511dac5e1ef4a69b23c34a8e5e063a0d3a80428eedb7193c2834e8a387c642028a1a1392ee470f26a60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304b78c976bf904292005d53c4a5cd195f89f2bea2f22746e5fd283e1575b597cad75e64818a2a2e1b31a7653a23a8014b023100b7138869d29365db3c4774991e8ae39220a9fab0564b558c03721afccb302fbd6f7e0e3e39d7ae96c06e04e38df427960302047c435bb50068306602310095a65b38d05fb47e06b18688b8da5be89b78ed7f6a4ad83d4ba617e555aceee20dd29464282bd5db1dd1bf40f2832b5a023100e3565d8da19c736e214a2beafca5c76c28dda728379cb123b8784ed8047bb95c6a8f6d9839a3c9cf9e8e24dca6a9fb610302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230212bab3c926064043905cca60d19ffc3ac62f1cfcf9e0d33dbbdf8669cefba22e1730b9bedc42514e07acff55105e77302310094ce74f774f8f825f71a92eb9e408c45badbeb87623cfabf5a77725a45f9f3cb8cb211d115105c8bcf369194e1e43b2f0302047c435bb50066306402307e9faba1fc87b295a1ad94bfb63d78ff4b4b07ac2d14533d7995b907428dbc3a6babc6f8477bd64f1eeb9f0ed987af4302300939f1065e4f569a6c36dde64c87a5fc2c5f268a3e5066dd2076790a65a1b7842f6c11b0917b2736af4a375e2f1828f70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b3d89fb2b52c90a1699b7c9e293ca78eca2e1090815677bed8482c8aef360166f9be2b3060bfa12a9ab0412f93ef109b02310082125f889cd37f7b8abd654c93138ad9bbefac14709a9b1213f4aee4adc87c981a9d900c40fef78ff6d155f558943fc00302047c435bb500663064023007b836b39ee85432b952b07a0fa471d87d450445fc0889e697cea400900ce502be06180c21ff1c21a5a648dd0715b04702303dc2c6b81a601981db6353d99b5cf7d456db9855a9122782ea38022b114d7d513d77477f748be02a7b646c395e5e852f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303a5ec44b461fd9955075d4893c88b0df0ba54e9afc908d9e1b342df82bda1cd33aacca9865036b3d6f53c28eb61371a50231009063cb37b1ae322b0878d2623d6847d659b3feb94459a8607dacabda8977434315c9e4e3b1a9bc8ce4c72468c3f407e80302047c435bb500663064023013f0ee372ebd266e0fae3542717acd1deac1d6c926c2ad4ec02ad26c3684c81e8efdd819b83ba0b6f3d968e9fe54e63c02301c55882c80a58ae3014f5ed772c2e82dafb6e6d9a947d7f384f99ea78e12c58a7f41b07d8665e9e36d060b66898e93f50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302cc72cb462509f6a3fe27099b39d5b2171d8e89596b45f470c8fa9f9ef03d9e3da5f11b6df7404a505792b6f8e7d182d023100b0e049d1598ce80b1be2eeb16cb781c62a60082d6c53b56ea478e6d94f371e573eecc976b616ef90707fd167d60a6fba0302047c435bb500673065023040e3925d1d5afaf291194c7ae58a62cc86ca90027f7f307d85c03dde7e9f27fab4c816639cb1bf2842f365d521e6b664023100a2dec38b73132ecabaf9fe0f2a7ecd92d0a64229975877b5561365e2da71ca5a529db4bae3f587f967d32e054b2ec6250302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304b8df0e270aa6fd040c66cd5cb8a08699cedf539109ce33a0babef3697ffd32df5da2b060734bd92b7dbfea2b5a9491c02310099c5d1cc47ac4c360ef3b0d2b084e8e0d2a1428733eb4e7e7f900fea7144fde936b605f85caa71038a5a439d1dd744e50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100cfa0391798a7c12745b3580f2385387ee465dc91837932091eac2d21b22aa440988d6a8eba2476b36d963f1824ac8ae602303ad33db95b594f23ce1c91bb7716337157e2bee3a899a8869a9078cdac7697a009947cb30abe85946f8cbac4de38ad560302047c435bb500673065023100a5db916e45a88dbe9f172b4afa866840c96d8cd559f598c66403c475aeee6d218590f2b9de687e5bb99c8bc9fa357ef2023041ef6f3ba201840d628c587b25eaf010bf9420f898dedbd910a4fd74a1001f91f57b29e16b0b27338e9451a1288be1c90302047c435bb50066306402301f5b963434c1f3f9d23e404a7020ccf67f294b4e54a802ebbfc07fb4c9f4b8cb01aaa3273568c7353d24c907330462e40230538ea915876952b89fad19c49e09187a1a4a16a927bbe494fb0e95cf8a4055fad35b6977af915a115b08f01d062bb3890302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c0bdda22927329d199a0bdb3b235b82179362a182222b2e736eeff52f22a9ca63c17a7609c89cf38441e6d2b6b34e14602304c112cd84ca94147ec55a28229f53e15f5dcbc65c9e8518a5105f4cd531399fc362676186231df14d627b2b1517403ec0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302d23ab2786df9f09cb1f226654096218049956eb1aed6ab2e8fe43f14ae481abd694d4b36cc87df724450edb3244b1a5023079a50c14c7c2b1aafa987bd61d9c43aff440ea42b4e7725fe9088e6bdfe2bc9d93957a554fca52193564aec66424634d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023062487120979973209478861c854a0cec5b90b4b4babd303c4f88bf206a0b0e27c0af7c82e0f479bca80e0af502184bce023045d83668d433f89956a8bc61abbfe9d59125aba423a9e1aacde3999375cf3036938d696c59c84ee3d03233fa8a9569a70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d5336a4cc49b1632b7d1bd8d6b4f011d02ec5683bca08fdbd50ad95e4dfbe16d5f0d33b4ca1ef02c42baab4e2e45f9160230529a733a0296c2c3b6c2e59216edcb81252fc14e00660148bb46c616a140ea3b11ee357597363330d93d3d8a4f91be000302047c435bb500673065023038e058d5e28f5cc912ef56e387dc237996dc6dfd4a31b8738214a3be8f9e45455a009d67fc17a0636066f7e9a15655d2023100d73e80831b54179bf529acd385cfe11fefc2bb03d8849a863cc6cae6c0310c5aef351b7bdaca53214fca68c35d6f165f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305a2afc4deb69beb37847b5df69077fb87beae876b7176b978d4bce6e1f2f55d5439e8075453d5867afe6700fa634a68d02310083b864766c9eb55cb8d268372c786c00d34b2871f3ddf3d057c6afb77aec5abd585721dbe6c7492ce7b0fd1896f761690302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023051e41f786308962bce5e102446027d16be12aab0ec46eda28b1e8cd19bde14d23ae6a865a8d192e767b8d110b76562e602304c2105ff0c488ee29753f6458e829926c20b322475c5099d7a1ac7c5888af380fcb0d9c56a2150b2386ad364819fc1420302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230215a74c60480c1f8e4f1b680520603065c108c6683b0f5d346aa317d1ef3b4f369c5343be4ba7bf725e861ab520b4f6602307d6ffa9bbe9b1265c34a47566106be531ff170e04b32c48a54025cbea0b9bdf075d3ee4b0d60d7fe7835b4b977764a090302047c435bb50066306402302295021369ffcfa290890cb65d37ffc6c57285d6efcf6a32d2f84a60662711c396d85924ee8cfd8d2333e477c1a8b17e02306d05a6db478799039238e371f840a0e76e0069f617981e954d36f17c4097c034fcedee17e10c941c8f2bc4605e2a0f240302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230121e05c4b66e095415db82a07b783030c6eab103075ed9b4d1c44375d2715dcaa97acb359cedaeffc950ef1c9535ba27023100b6a36be7dea277e525bd3c43a80220f31e2a7b0dd347e74c78f331afa2f2359af1fe45c9d125c6320f9af73bdfb1d6340302047c435bb5006730650230481cdc3c50f89a4c46a93bc4468b197f33466c47e4e7a0a91e496cc8747d5c76137021b337d5ae4db48fc94e01e685cb023100be83c0c12c6b3183634728bfe75fe395ef5040afe494d7c8a4680668c28fb4e9c10f2889be59d6636b002a23e30c41b10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306b4a3e629e8390c5508c596d3fcd822933a79258c4ac94ad4e9b682d3e0d19ba45b64d09890a819f47854e0a513ed3560230630f2b11f522049c0118ba594a258d94a7ed4ef140979d494dae4bdb8b2116617dd534066aa8c4f402ec67502c9f6ff40302047c435bb5006830660231009f09669a7a6af857520122f97313559faf6e1404d6ed40b660c630e165be92efab6bbb86e91fab9cb78802b51e35c4bd0231008e9e4a5b434e4c31263b13e34427b0c6dd364528c69c45a0bdb1d4770e2730355358f79d88a1d03d94bbcb1ca8ad193e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023048eb3b6dbcdba35b92f7909d4fc802a811af9abf33c17c7a1dac90a55c801dff103229a657e708e5d5f279adcef4608e0231009c0ba4f81e74b78bf4df5e0950dd1470b3b2cc336cd1c083d34dcd48eefcd4b4ec3110c485b734b3f396b2749b3e04c80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023072d3d0708ab7528274b8276aa0dfb50196f9b4f09af8fadca89bef0fb0ce512103f09767d54790d9ee61170dc886031f023100d9aa16465a65bbfaa5c53cb5a1be825c664ba498bdf1e44b928bd595f61a173dc0b5e2254a867762bba51647fdbfc5520302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301ed1ab55e7caf39b62dbc4d4574600ae89622db616251d74eb933bba9cbebc6413f0204443f096aa3c603a4f35e014e8023100d78b615d0e584fa9d61a89001bd43df56b346de32cdf04f2e80880261f887879a3d755a5281ae1e913d6d07da98379f80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c91da5d44f78aef257c4c5dbd853673b91c1da2fe3ae62be3bb01524d0f7ac2b2c1fbd3595f325f5dd17891ded800d3f02310096cb5b185d7606a156942c513b6dc27f8371937ce0672ab48770a337acc63c8da01ce9d3b2c2c4af12975aade8eaf6870302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008641ca32b69a96fd1af9fd234c8f35e2481ecaabb1669e2c639be1535ee3521baaf2100fb4664bf7d31ac88221574f35023100d3d9c26f32ca6406e900051ca66b6b60eda1b1869437a84f3107a8c437ac672b147c82eba48928a77f938609839461c10302047c435bb500673065023100e6b4fe8c4a0f6923859f16d4a6ff61470447300cf00e5530328a7651c247efb07fa78ea16c1cb3d622f1fca075d1448c023039ef5df8086b60d29a1429d2440adf5c98e51bc48d7dc00cdc660fe1be4c9479a9e144fafe42903f91224606d9a866a30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302cc648ba37f4afbe081f0014f27d817a3a8e39252d744c82edd33523b939e3cd6e2d6e9b88b3cd5187b8805a8b3b2a1e0231008b8a07cf3ab123fe00da0e59c2e8d81d670ad10b39adbf7438f06a17a8f86d1728ef6730bffae59421144479617bd15f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008171f319d658b0939146a8401b3c8bcd0678423779ed6103344db78774b01b7a4dd6bffdee89cd00b8d51122db80400c02300428437160e1806128f776f5d86b1ea9fb0d169e17c02b6d071affa584864bfc8aaf9bbaf2b4b4a33afd2242481a6ac80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301397b49b47262b2bb5834e4c0c46c6e5c063a62000a11506726a33e407d925fd1b3394e653825d073f0f3be779690087023100859d6c2547cd21e9f9616945099443175502db1249918c10e7325cadca15ee1083d1aaf6de7cd06f21a832e9408611090302047c435bb500673065023041dd9112c7d32dfa10dee35ff3722205ddf089e23b301cd94a87560163bd696e16705663bb98569081290c8a5b2ba951023100b4a715f2480a819a3d64e26dcd8d06a4b4b07cdee5047c496c33f61a34da7b1fcfcba68711e926ee3eef7df8cc9072ec0302047c435bb50066306402305cb2ce6e191ff1bf690e719b6bbd311c121de9502078dfac2a61dae1ca185fab8ad9714df19f7e3379f1482e00dd113502306f6c45337c919b9f7ca6f4e5fa6a65355c5cada354f56d4d28fb425d63e7dd4e51e97a63dfb25ebc244e80362f4047a70302047c435bb500673065023100ef29400536353d5d247edd68de57408053bc9d9f8f5f78c6409f598bcb906c89a777be891e49633147f8b972efd941e3023006809892fabac3c1f643c57f8b9621162d1b70f11fd28d9508196a40554599eb2e96c06d2b5eb0e8ffc8aeb5ced4476b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008677701cdf6f92661f2eed8bc78017aacb1f644e99b6bb83c0a8d185e0aae2d1f20e8c0a03cf6e71d4d73e7cc2ef1a6b0230216cb7d7041296b20f432d990538dc23995dd7c11f893dd58b3c328ffc3ad231fe388289dcea469d4e4a302214146acd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b3f5b401089540c73547cd5f493e9fc2ffddebd74f90d20679eef464ff29e24ab1bb9511805b71302857001f19f8380b0231008f6d9bcfb28f716c271796573c7192d6d56623f2b882c6ab7319f816ddaacfa8776e9c545d69cea611b82d6c071af4d70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a91f4b64a4ee1dc69559cfa879740ad5fc870c931d777410c775ff52ddc3d15381c35758e063dee0264277e687b1fd1e023041ebc255de9083f2fbbe344dfc4192a196f049d5f148691654ebe728538f503e782598a876d5299d3867e2da9162d9070302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b56226395524c16e2a19da92a5ce542d9e4474c8bb5a8850993e5ddfae5410a20d9941e912e9dc7d2ebf9229f0da4a2302305d2f016d10593f3543111a7a982bfe4c3efee32ee8f78154bc87cbec633d767c3cb185c0f861b01f1f22443d522539230302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e4220b90684bfa8a862f172a77165d5a2f83990d7f04e866da9218e006506f6e2e015ea9a3f9c08756b6c3c8dd66ad72023100dbaa68aa0565adb79df0ebdd00ad90f0c020da97ed23c07bc8fa88116e93c0c1b4cd7e00fe229a4c8bf9e88baf8d37ca0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f2dd549d7b8085d115bb4ad03129e88cdaf0c7855a203a7d888fb582c0131a71847828ac1ea59d018bee18e154210326023100a60fd8e2b0d99a690dad13889f05c348d5b160a1cfc9f339ed754373bada58231b1a4df952c32e78e480d5dea7cbb1c40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023057fd934b15e136f095cfa563cd909241c2730cc88909eea0380439fff9e8beff8fed2abb422fcdcab228bb42e3880d7d023038354ecfb8437631196e0ea26df8a0ef808ab0341fbbaef04b3d44b50c681406a08019aa262527cf3ab0d270b80f06e70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100899775c46dfccba39acab850ff52533fb482f3fb553f080ac9fe185f18a961523b427cdda743fd675174a5d8035d6b14023100f7c01b6ae49a320fa42be0061308737e44248dc13c8978174f090b7488d9bea1d926a76624998d13f97adb796be5ca3a0302047c435bb500673065023100a76b6ac22b38c37dc63476ecd7ab0b384a637abea8c1232a77b0c20c07b057c6f3a57451158c69f0d5834fc9d1bc33810230538d74ab6096465473eeaa73d29739a7fff212e6de7e81ca0a93d91d178d2357ac446a396a3e23a409a4bdd1946124ab0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008580ca40d61b110ed3b20f800a00b74135e59f63926208b4ba23b9a38ea2514cd77d658cb1dd8c84c97e8c6ee192a04d023100de3ad1554de041a924b98befe4e04ee34f8db715c6cc53498af6d502b4ef724e0ba907913703775d9d8b09f198e7ff6a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008147281aaee8aa2896031f8e997c8e0517f1acb86828e884bc7ab91a70f00656dc0b7f0050af5d49b7a77a823946e163023049163738cd5f4c2f2c1083e8e8a8813e187e9a44e4a69d391da5d763afeb73a82599a6c176104505ce7aac3c213d5bfb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306055f3d0805b50a4d0475be9bb3a1ccf8506c2278cac559aa066dabee56d0ccf43616dc6e854ccea58a681285da6e288023100e1296ea6b97d24d03d33b0c51dd9e98a7bac9d01f6552eaa7832946d9a077b7edb313b47c8198658c48cafc3707fa3d20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023060f8dc94841c12876ee3ab4f9124f0733311a9ef748b113f55543e8ffd92fc84b73ef1df2c5248e652de6fc4edd4de86023100b28946fe492bfd14cac5a332d32770427d3b6ed7ccc4b0e9ebc532645a3878540b1a1f02701864acf8925b8c44d2b84e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100fce3cbb2bd36b1464d6666e552ff23a8b1c4a636f08384f48111d232778332cc8b1a9e3062ebcff40afa55bb22600e64023100f8d2ac2c815b3e9e39d3d259b5c2fe6f0db1864aa516be5da7396c56eb0a016bd2c22c8a204c848ace96f46eb654ec140302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100be48a4766d7dd6acbcf3b2843f3c484fb8dfaa1b562b58f0cd488ef331b3ece00f4441a8bfa1026b88e47ab997aa7616023100c4c7dec6150dcab601320f55c04922074bad8190ed966adfe4d9ebb7d45c46c5297d42c18bb75940aaec0f76cb5fd6d70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100fcde137d86b485b552f84e78bf7346af0c88bef8f13f91667b75576444a4651c40cfbdd69640a00eb7e8698bbf8b9ac70230748a2372534298edcf80b51944cdb3c584e85fee8ddfe859b5ea7ff4b64f7d5ba554bb91298d97814b747faa4cac78e40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301c110028b540662803090f0b7ed6c37921b15101158f662f24a7c21284176325855b0dbf5796d82b033749d0c664e2fa023068ab495e8580dcb0d9780182c03f214d7a5a2f406e87e6e5813b64fb012aeb5e6d12618b15c3b060276c0da60e67622b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100d53b9a7a98bd7d9ead702df2dacd45a28a1bfe9ac9110827e9be48d62129fa682a75c69e53b0dd151b668588b1fb316b023100c5b30a3d422fd337df8d7e2a8e9a10718c71eb70e321a4e39db6fa55d7f2e02639e7b99a3c0b2d152996f400a405d5af0302047c435bb50067306502306748672a111fe1b71ccd969387d2ee9f8d377449fca01e41b96bd82cbb7ac2a2d2042dfe6ec184f12cdb6b0644948d35023100dd7bdba6a9d841b3d980c1bb789734a8a22fed1f566e3503a55f8cafb38615716a1f8e63a11792ffef805541c5c0c1020302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023015e6a80917a00747694a3c81aa7498a78bc211dc98526029389e35ca764cb244f822b51d9920ca6133cfe984217d71c702301991d9e83d03cf444a534a8f3cfc11d285b6c6724e509bec2ffda11a63178915b3843bfa5c331c05a0b4a36481e50a920302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ca5adf29072096ecd01afa0d217b74b4f41ae03280b8d8605f0c50bbc70efe088611a97fef0d96f42c2ab089d18efd7302304b98edf53ab569202c3b2127d0de99a737502b9d62d016ac993e7fcbf3768031e5ff2cf449f318cb06fa0e9e84d7e2540302047c435bb500683066023100fed51bd92359240e5ed73e8aad59fd0a03799b9ed6abfae1eb1238baeacb9091787b36fd028acfc7879956b3918cfaa30231008f8f9567d97248c5eaf7a47c134f30a0855e1adc9effc1d7639f19898a19ebecf7a807da3c0ac09d320755c36f3332d10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230492ba9bb993c349f20f22a730b056ed805db0d981b84f26f1ca8c478e61b8baebfc4bcc648bf991133180c6e23a30adf023051746a849714ec50f3dcbab673e679de512f5986810b2783efb4225edac276fdc2fa6a429e682ca9efc69077c9abe1a80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310097e74803ec1afdf61a768904b78360038de56314d0cf62f5f78973be897c5754ffb6b175d4e13e185ba15b8442cb59fb023100b06dce50bf52cb1cc27243621d81caa710298f88d7bd1d6f4a24e3ec0836a0ee3b75f4ad2a6f4062b1eac5ace7e6316c0302047c435bb5006630640230363ba97ebf9302e6b051b3204657eb724c7c1feb033514b17ead19e0bc3752504b04c2d1e08cf78fee4b2043210b5289023071f55b9a900787d4abd1b4a174734154a19364875ae1fa70188fdd66b5bf827db59e2d8e7c83a2638305563ed1d8e14b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303aa618760edad4b4be4d57b7405b84cbb380d2fa9f6caf19e4c6b5ab3c01beedc6346033feb49f1c5c70ffae1345f3b20230099041e51d91de81b2fa7235a3c728175c168e213528a4cc8b1ae2a329fed66f683bcedad4ffc88b091e6cdf5f3b104e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100dbd46c36261e3681a421b6351c85b690ebd384b25b388265ad24b13f9c872f625883a80fa33480f408927d1d28a49579023100a117d485a71346d24411607f705f28513c34ff035365d01f4f3672db0e3d58997d12c9041855f70df45d5a3b30c620910302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d585479f056a24c5e4c1ad6e61ae01dae9119ffe19dc137ca3f31429ee706cac71fd0dcf4e2a0734ee81afa6c2b15f66023015f1a5a6ebfec8a492639923a76ff47ac5cb6004b9dabda081d59df440f48a2cafaf1b51465d8c74c72e2ad7b5fbb83a0302047c435bb50066306402302c1411bce837c6927f8c3ce7ab4bcf172a2ca8dc2e8e7eca6969c66e24072489c41d8333d3bbdd8ad22fbcbefd45d3a10230246b9b549c0863a156011ab08f014517e8f9429533e3f5666d5b60a3e15194137a8351d06dde73f70b1e8892c43598e70302047c435bb50067306502310091737a583d64b659638123cecea5f1e4f2a129a12b1c40642e285be87cf2e04eaec454fc426c696ddc4174d464adeb23023052cb2bafee1f0a9a2cfcaa5695b0abd0bcb5c51c57b24663c34f0e374250738c1ea9e7a560dcb701cbdcf6262ebaee9b0302047c435bb500673065023100f126253c4d2f516237eeb41394a35034e8c525af855116b65ca6a748b8c616cd486d54712b7040f75092b249c763079e02304c2244d9588b1fc4059263b0c9cb4dbd06d0fb8ecca6ab3a742d5da7131af2ee27d4ed67e31329b05286df861d835df60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301a1ea860241dc947d92424f7d4a25849a0a86775d709e4cb8ac1b785dbceacdf32a892f42df4178c284b55176e894035023100df931ba6f9c6b63dc51b528df08f8f734cfe1dff8302ac988ddbaf3cc28a36cd1266f1ed61c8b99e2b9d5e02e993be210302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009c802030d4d35409b1a54a0790885785ff59c33915699d385cbc47e8a03e2b32b9a9164a81871dc64b70b602cdebd90e0231009e9a70cbb0159ae8f969d501f6f52cfc3a5b4acd8b1920d988588b042a04c554656fbf79f2aa0519ea714dcd89df73510302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e98482939c07210fede7c2509fce59af55d6ef5af7af7c626cf654e1b039d7f503655499a5d118a18cf92229cc0d1786023039ea0684785b571d646a1d0832f4d54f0e196def231c4df384a79c7f22ebc71cbdcad74f2960cb683394f1214aba245a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cfd9a1da61e018e8d712bf983435127d6fd1c34f30d83190bb944210f412a293399129130051653c105cea383cd44a1b023100ce6316d2b39f91e3929fa8c605c26f4f6fc863cf07c0cbdcce6d711249929ecb9ea47ff97c20d1dfd170338a104701f40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008c11b67743b188793e306c02b8ac79335eb76c8d4073aeb541f42b0e54a1a394566f95412b0d7a83572ab4f61e43b92702303a4b727f6d869e1d6d4f956b38cc04af42d1392b54c826d21511838db0315c91b1b1b9f91dcac8350f45fa724a5bf4510302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ff41d7d4d68beef1f132ec5571a156e237a3836f407b5dda8361fdc9d6b5b6e76a3840bd70fd4a951ca38ffa3d3ea152023100b78f352ad46169e4603b5633c7b6ce7ecc13722526b1447637ea25acb55daa62c7ff422c3bc5d492c4fd7856730515da0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e98482939c07210fede7c2509fce59af55d6ef5af7af7c626cf654e1b039d7f503655499a5d118a18cf92229cc0d1786023039ea0684785b571d646a1d0832f4d54f0e196def231c4df384a79c7f22ebc71cbdcad74f2960cb683394f1214aba245a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302ba06c850dfd9b3cae0523a478cd2875b474d4b9d5c3e83f2ee2ee45ea52fcdc3364c64200bae71a8e33e0607d8f47d702310090cc1f7d7397ac34b5b9995b50083deb36ca27ccf6bad57777291013342112b48d0b75d67d631d43e6b9b68b7648ba0a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306507439c05fb6da952f869cb7f47584ef1f9a3b99d9eb24b0e4487527c78ea9e6a589513b330dbb8683c861482ed83ae02304f318413be8ce5f5135e8126413dd267d05695e0f31de0a11c8e6f32f0b7026ba78dd2bc953736e5bd00f5d65193eecc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100e98482939c07210fede7c2509fce59af55d6ef5af7af7c626cf654e1b039d7f503655499a5d118a18cf92229cc0d1786023039ea0684785b571d646a1d0832f4d54f0e196def231c4df384a79c7f22ebc71cbdcad74f2960cb683394f1214aba245a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304fc5e401a0287dc78f0fda7c241e9c8c14f5395279e4b7ca03bc73c1d25837c7780a303bbc76855d996cc3fa25d073d20231009b55c90fce09b9c9ee63a84e4a7537c798996ac855ba5daa275797c4a4f77a2182aa0e0a7ed17b8cf1cfeabbc10025610302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100fd8eac9d203b1c08c3d70dec7726f7fd846f0841699e19e79f45d144ac7937ea21842e6c4f5558694401232246ef7b8c0230716713bdd439b614c9ca03de8b860ac9f9e58345b793b7c5572cc7cb6da6b572c0bfaabcc9584da8b9226f2516acb1b40302047c435bb500663064023056025ac70a10eb41bbcb60d0feccf6c90835f7d5d298c04506d061c602656c6817d3d399fb0101bdcf37ff79f0ca9d4a0230396fa54cb12075020427cbc8d02610df7fe50baa074208ddbb3211f1969f77069e392b28235629fc456b9210289b757e0302047c435bb500673065023012d258f3a7513fdcd04a41789d4513dcf6c1f1ef29f22d90bc66785fa9942f0b3e28537eafb58d5ade7d2cee2ad8b68f023100eb5751bf19a0944b06541a40fc3bb4550d9b9c8ed5e811769b3e66762a17b6fa1b45ee3a27d136fb748c525cfe3e64d80302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307c6b093b935776a9954666017cc00e60c057b1cf0f68ddc058d3595c058c715d42486a3db8614adfda0b5350268aef76023100f76cabfa338fbd1dc4d1ccc7f6d47f1ca6ae96f738fadb37fcc2eebb4a6b493b306e25847cbae54d7a7fc2f6a70bbd680302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302993b6fff0a8ebfab3135b9bb28f3bd27a7069e4f9cac806676ae69320acc5378e5544c03c0bd4b769c632b60a62de5f023100cc329a3ce470e6819506cd0e1c27f2995d8bc1296b93dc326c4e6bb40160985d593966921be30ecfb4d742bbe156aa9e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b0ce87f540c357be8bc7386ad9d883ba66f139d75483ce037cc6a1aa67ee10b0d74cd459a08a28e411f6d6d2fc4e2cad02304507cfd1ec07dd3915d51be512eec94898852ab2fb301d1abddc481e9a01390125b30c62b90644bd8fb115490231671c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304e001ff462f281a0cec61a0876ccdc338c1a63c91da29bc5cbaf59f362003aa2d1361071369f824ce5f6e33dc8920f6702305a4572b26fe6b6b771693e8e50c74c549d3620c525c1972f2c3159ad1f0cc3b6a012c26bd6684f543939c74d21b4f3b50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a0e491276bb534189d87c84a4d09e8eb0f4e43cd08c405421a8d8c7d8591b742a9ff892c5f811c7a4d5609129c765987023042f6e025270016bc64ffea9c2affbb64a185521aa4a085e85f770c525ba14c46850abc2aacc32136f056f90ca2cee0570302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304b9ec847202834d4bf94368c676803ce00ef9724fdf2d9a15a6d0ca0cc0f8e6cfd30ff160759837063edf651c8c1d2ac02301106f435373e22f966ca46eb9b3d0251a668aafe1e71b386057603e1ccda7d46b5ae497c7f91092a01802b928ead16b50302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c84fa48892a0526865c43dad4892429ba8131b17405d967e183cddbeebbc072f81cefa76a5367c37379208fc0e1edc7e023100c40c5803c4f6030ea45636c05032364cdaf733c8ef6c493452dfb572e76d458d3eb3fa5993871d1cbbef124bb37591df0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f435841745b6bc4274b9a8b431601bb7c7e6222cc6162cbbcf8e9f609775df99c62ba79dc64d92a2fe0306417c624cae02302b3acc3a912511a2120d08e581dace3b64414648e65a6f5e299ddaf973feb28ee23fa675331bdf1862627be0936a8bf20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b92d6f767519e395e90cf92124de8db178403ce930d2bfc656493a993f242b5c327e5bc57be2fc933a45ce45ed08bc470230037a65e27fcee36e74445dd60902b75c92fb221c3d1a970a57e856b0873f550edf80e8a202ed324aa8163c4cef90d3930302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c7fb6adf1621506cc62c36001437e65c1c1142c0b11a7d62d9189a831b844be185672d5f5d5bf544ad6e74dc4ea644e10230390922c4ec8989be0d1f247392e0fef50bc9d5e9e2ff1e5c83cee1c71d41b0ebd29009865bc3828c37aa3d1ff5c6f9980302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008530604a9805b9433b56cf4ba3d26fc7634894c6ee08e7eac51aaf4d40db26b85f224cb9bd10978ae6a1d3152bffbdd802300841d559c718c8e9edb43145ebf6345580bd709acc35ed3c44dcef19626ab3720b77fcb299ca9c87fd061b6551f920f20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304f336848c089add62d261b98b1162339df1577405872a8403da42d929c0f0eed181a6dd3d27a9677f697e9407ad8ac90023070fa8b0c4c304149af9937006bd7081367c5afc89fb7c72c0addbaf5d9b33e9d6d02ee1d553cae0847ac637d999e30b10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230518f0ac72dea6f3b3424aec2e64a7c08014e76d2872e3b7a981606bebb4a694dc89359d1e67d32385d063a8eae8dfec902307e806c2f4e99e80a5750e9be06f9cffef25ed5173927a42ad78dfede39538f5afca665df2efb40c1cfb422cec95507f00302047c435bb500673065023100d80e48a7e154fae7158148e4c3f5a0fb0d8b93789aec2f8a762660a3b7401e247eaad4949ef4f6db59dc1ad7bbf5f0c302307a3cff850cdf9586f7da4ea95ff2248b0bd5d0243e7bea90c5d3cb27cd960460d8fb7e1aea887a840afa9e264544d0570302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b3ce83d6b6d361068f54e1fbe0fc911914c7356b4bbdff34fe30eda52a357aa77b1c9af4a0ca4fb152ec979f660f030f023021a4f963b59d4de0094c956abe04bf1061d5064e16964f630e07a22c9f79ffc4ef58191be974b2234465b2ff55168a920302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231009cf33b7d03f9550c86c136ed92bb36d942ebcdae08c9b54fb4d402732fee84994bb479b1e23cb81126e586cb61e2ea9d02306c1f5f4cc61d234f77b1cf074fc2e07aec2794bd3943f542fb4de580792e9369fe2a5e63b5c956e30a5e4b5039df360c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023031fe74742348f22c4801c97d2c314d65cc0436e575078a5c59e485b5e7099af7fece62274b830b72dd9c0dca4d5a136e0230633007ab9e35cf59d494c5444936f7a4dffae6f229ae6f6cc2895972002637d4f8e25d974f20b306a4bfe81781287dfc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304fc5b10fc351dc96028b041c8466035d78630f03f59d6f8fab172f97061c0dcde1cafbd3d918291020ec5b73615e9fd7023100a91ab49cd2222d62c94ab77e708febdf59d03351380487c8c725f2c0b59d02538a5d2db28f02ed060ead6b721aed9a900302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d449f05c2d02b09e7a4cda7060bd507f2b0f960b9d4378800ee2dfe35a5f01d9f77f7cab0b1e97c2cc1be8db9ef6129802301b7a27b5011d687ae54e4bed3b4f5acd9852431038e6dbb75a74a08efb34ddbf685b273cd3b2b3ab7a46feaa3ef78edc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100deb2703542aae9f943fbe2e698075d1677b8ba8a2ba21d424d97f66ec546ade31f2f1e2cd4b75a1e9f1dc1cf78a997ee0231009640b3402e3e622c0bd71bbee6bfd1b2e8f06a213a092388bf002a74fa1a13c7228778340980239c9d38e625d0fb58d90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100befc09eb50914e650c21e4c6d93c4a7e4a286d7752527737185b067f335f054e9671d687c0745db4496aae144f7b6f7702301e41f945090f009fd48c6cf8c8a7169c29a50bbdf98ffb76165d892d27f104e140b480eeb71bdec695d36f428386a5f20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100dfa375494ab9372c3f6fa3d93f35b2c218629f62a3f54b1677e99c7ff8f0e7225ee6632805dd983aa92bca8086c2694402305383c4b33917c89640f6fe6def6cd8d0ebbfec028a5361a1a317aae13dfa63d47458ce52e29cbe3838cb52ff532eb54b0302047c435bb500673065023100eb7a402d17befa458e7fe8b1afc15f6918b637cf19dce1b64b5b8c4ef4dfd7c7490b91cc68009ab376960524e749f52d02300f7570a6144a38499fbb964be22cc92b8f3e31b9574c5a72194c685db3dda08932dbe34aab327b05b4148b305b22a67f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100fa612e444bd45a44a8442263b6eb87a936d01fec7ef174243c86bd1827eba66a1b7999b71b7b3964d60707e17799a6c4023055421151e71deb04932e42c65bf2ef0f1c52f52302b212f16cffa5c130c7adaad78fb114573124f4d6332163dca8c2cd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100942a23baa7d53870d994f5a37cd56cac4ef1d728dbcc744c058c3cec1820d3ac14168896008a6347efeb1b537eeb071a023100ff3302f3297cddb1769da30e234c10ea095010a337827aabed7f4269685b405a6f03d3dbc9d231c19959084ffdc3e89a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008a6b15c02bd4c18de7843dfbd0d3e135da78067bd959edae105833c421e387b6a6cb04ce5b794702c798a247f4ddfd56023100a907e5db8c0fefb7c1abe6f21a9046ec3aaf1a789c52303cd7cdb7c813eebf8158a9210fde7729fa747588dc1ca7a3660302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b96ff9f48baac5ca8b7204b7858401e82d976bdb4d26d8b8b23c6e5cd138c9ceb9f5b264e6efba69352c813e55ccc2c6023100a882719bc05b98a289828f19b4160fa9fcdeb58a9f7df1cad93a0d660b241dc116c870306a6a31ed59c14d59a4dabe820302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023037808d3f4b996822ddaf79fb17d252ffafe4bbdb361e432209de70c5d18f839147490e3324ec6a85ffb90b68d4ca8016023100dfaaae01becbc8e7c1422135cfb46492f61644d4d48d61a65966779fd5ad04f9f32471bfc9bbfba7f7be2e287bc86bcd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f3ded165edc4449694439cd2729f1f35d45b66a38b93450ac3dee6b08d7b3ae822953b4c19a7dbecf04c4148ccc5c35e023100fbb807073f5a742435488c17180f2547a41ce3ffa9035a969ca27167eaac86f829166c1040130d6f1659fb223748a0110302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100cf59395d87deb70320c29ef3036ac5819744bf695e313a0236110d74127e89a7767bd47447fb6127092291ef46833f6c02307d1d74bd50569848c31106600224e7a189a0f98cdbe4845a26e282e6021b3f8bad2921e5212c7c75940293fc4f1db62b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023061c47eadc12a0879184c0cc424c6a25a3fdf9317f86484c19f97e6ba92ace28eb85fc4f61431b8a0e0e28fec1368e491023030957ea95df894cc8c63ef837dd2069255bd6ac498b2cff25bfcb5becc6f5c8d36c05b96239742676172e5de025f866d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d169b1e47da2f9d446b6f8e6098657188b74dff07a7fd02e49e448bb0e26b539aa41f8753684389709a48d1f7beee48f023054a6e60e0fb8bbe860f3f9961df2c470b3b2edf14008eb843248c82c01c80ad08bbf9760132ccca3d8abc13f5a71871f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f77e3d8d64b4ff0dedf0373841d32fe3e12c7adedfb841f10a85bf57c0a0585e3f2c019d878d791058bef6a992ce94bb023100df0761006eb130dbe600237571ef8afed8f9f39807534c3332f1d59a3439760af3af0702566c0e560aecedce101710e10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c59a6131be05fb0bcd482a2f7916b3747ff942dc2e9a3cd115af44e4a986e60c34f30793ce41f9bf736d5eb55de9ba020230125b68124cd86a30a7704371766f931578ea047a9cb2afa3fb2229374903dc37007f248fad79ac0a96726bed345b87d70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230528bc8c9fbda384bc1baa9be5aff507016ccc5c4b1998f5887de56f89ee96d8ce7a7a48dafa88ecb5e1334fceb92b4cc023014fe4f79d50c06d871fb4392a64b8791315a62191ce16f322b0ed4090c44087ddfb4ef6fe1c1e4675a6c42031a979f1f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ec276834c5bf231224b6bf8945cf1d6b42b2fbd57c2ee68480122acde145537e559bd7541e0fbd466a9d9023a5dfeb99023100e75339e408a2709b04f461535b425ab171608ceec1418ecce3440e7801a112d734abd6c96264fb327eb9418149f005280302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c02fc698a4a14db8f26d78e3fd1ed286452f86c51a1346c753c4c8b70db0fd90b07f16af6081e7a433d1d943671588be023076327a9f568392588f792ede9193b060ba5f919e838b496fa17dbab3f71cf2578509736b57e7ebb7178b24789fa6ba6c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402304a99fbcc143d184a6fc03c2bd5694ec69f43f2752d32d56a68e3205132c8b76894f65e8e3399436e5050ceb7b39bc45e02307ec8345dd938a20daf372b01451cafa09662bb46d6a7b5c5bbc344bf8f5a704b486d40f02d39745c01c9d51bd46392980302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230617d125d413f2fe623f0746d3173aa83e34e9d2171a78ac2e4dc0d4879177da7bfed19c02b109bc26f275675a3a97c98023100daa58135d69ff1e884efd72902d88ae68d5a3ca46207c2b30c959dd131a8b3b32c3fa2fce0a6bab22ae010ad6b382d0e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303188326dd2a1a202e62f30e24fb5b31c2d6c1c47aee2e4b16565b79ce1e7a6aa933be968a9bfda3499a4b4605a9e024f0230491b4241e8f2a203a0befeef9283771e38aad131edba011f6186c358c770dcfa013ab06c2dddcaf2e1787f56a26b72160302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023028d447943b83b9e1eb531d2c92bbb68f3672fa2aad56e2a78f2ae60350f03be073aa02e4d0bf925ea067370209d1d25e023040306a486fb34dc9086a2df4f6f00bb92ae3b751912b6f6dbace3dc0328c665a292f79371cee49233085b2b633e7237e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310088f32ec2276e69d2689681a88d6e9dcdf7fbe1609535880a470eb972a27dbfa7fe4d2e4e9a51d12382a5be1d22e1d744023073e5736679303fda5f89d6c03b8a4cfb907f7ec15407f4de55b57b5217d360537237d879152929a973916d05ea7348a60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f010639545bba5313822aa2c2aa4343fe19d434930e2b60fccddd3c1e1d54b64c01cccacda3752faea8804177eb3c4d70230232789b57945199d6909833846b1c9b07124c4e14c391be7a5509550a90c1a28ec82a8d7c01cb6b3d57208b0decad5b20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100c31c63f6febcc902c203a71d2c62f0416e217c81be10f555f8833b933ade5b25e4adfd244e4ba505b864e94faa5eb90f023076bf23df564538ff590244642c771b3fd78143e8b0e7e8acc75f8e0cfed38d5b160d9e65f4bd820347d6efde5d8aa58c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502301a3711293ae7bf4717efa643e37dc876368dfe066d481aad4277103c626e677dd946c44978c872426180ecb5a0537b78023100906c7453bf05543670cfb766a5fa023f17a571dbfe9a224b2d93b07e8f2949572e6e05298bec4477a8dd2a8ff08ae0460302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023075e3e3c96737b16cde4444378fc8d4ecbc468f1f7db057a44ee8b7f56bc5744d2ddbf24504a8a6815668a84ebae01f2c023100845a08ac0936cca584c69d4415ae7e6600a6217debad4a196a08d74915aaf45fd34b2aed81ea6eaa3e7399dfcc0fb4a90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023067a2b57447e1a31a06c52bade3362f7625c72bf9fce34ecd99f2ee2676dc615a0a0187a021590d702f7189f5455d9a9f023037bc0628088455a8760db27211697f5c3f65a4dc4ca88add2d1daa557f0b630e69d01807875214c67d9d52ee992c3b780302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230426d0f1d7a841f77118b4e914c5de314664fef0431cb9fed17bd34796119a8176d8f074f979af1c29f952f6851eea9db023031dd1f47ebe9aabdd95f6fd4212fc826b215a926996a8cdeac5a36cc99db3a694e30be43cc4c7cb0aaf9d979512aeafe0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023008fc6f0c22d422d2776e9e1669b4dd0f351857c3cafe4e2668d7d9adf7073e62ae98c8dc16256c509229d8cb6f386fca02301f04cd1c2080802f974c9af1c1f4c5abf5fd3db27586fa8b65b95a14a56be8514c03e5320acdd98a97b31e3bddc48cfb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100baa547c0caca2489bc519d8dab9f8792763b7f6ab8cf967215336fe30ec1fd037e730f7de8faa5f44f2817251014a3b502301770d9072d250b79611102207ccaa9970b8543e27fc2d17d5cdbec651b6e66e20c95de146a63bdb842af7d22185a28010302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008efb998aa91eb7106773b30ec6d62ed348fd777ae918e2ec16fa027824f4821173326c1b27d2d20f62dbb5609567cba4023100f55d907aa2f8fde584564320e6245321faac557f438c3cdb769cbc64d471477e314a362a6742b370f79cf78608915eef0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ee01e16878c2fc5470cce04f66cac617305d3974cd2d9e04ef8edc32e15a80af3052116e987fe461c823c00c4f7d61b6023100d8f30b2b7582284a50c813780f40bee5b2616594b071b6793e9062bf96aa5a117bfb9ef9b55c715e8119149aaa584f560302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402302aa1df32f919acf0ac28305fcdc8fd5103d5f363b849b02de5e91f390f7298e4d4211543b24fb7c54770b2742908559602305201edc70a65d692f93b1ba9293aa4e921e16049b6ec306e8f9c676be6d193cc1dcc62e68a7ad58d34295dc167f351dd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230654bc2fd0f6fc1ac92939a3a16647d2759f7ec097ebf98ccb78fb008b5a61273c5c9d7ff30153392fa1f8dc7a110c8ad023100a7447489495ce140735a54b1cb8435132d23f0a680c2dddfa6658dada4dde3f9fc08ae7973bfbae4d0d8e905613a3ceb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023019ea2ab28e8e6743020df8fa383e635f5df488b72e153dbc1682ab90be427f4dc2db8d3b2be1caae4f4e870151596749023041e7d4309a1a6ff964896e6464b5bc8678f3fdefeade36d576c0326af4c5ff0e16827e03eab4d3600bea3f31e84342740302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ac004d5d60aa4eb8c68b1c59ba284ef146cdd45b18160dc2eaf01b90d35c427eb18623e10393eeab75416fb2be1a4721023041432181003763097b482bd45d582dc66803ef1f59211aa480fb919fc904a42d30f9c096e80174104e9d97db0e92fc480302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300eaeacc8bfbbcf618df3c90e5a73bdfb18d617aecfebdc03dca5a81388948dc67e4517c2857a2cb82231209e27af2f7f023100814b4972738be1bfc3fda025164509aff8c750e97da95e61b40d0638b29ca157814ef9ec7f3731ca2d0949b0bbbe4f360302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502307b397d4a0a810a144f4128396739aa45ad58e7e493f840ebe8e6b967032d03f53d61df5a5d2eee9b116f66b02533a7de023100c30e02c688a7df989d84dcd9fb6822e98697a5f251e73537c17c2287a3179ffdb2de548b1eb849cbb58574ff497d8fa10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023036e38d4498dc336fbd76d1a0768d6b648e574ca30133748ec6d69e3d59078ee9bc30ffd747995b9107b97712fccd41b202303f271a8e466738fbd06860a02367c5b9097da9e0236f824f5c4430ac07a70ee399f5c35ab500609bc4ebcb03af2833680302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306d4beec84f9bafdd09aa4977846e8bce3a494cfc8f175cdd767d38798e3ee53dfbec438a69dabfec0a8c4c890e77a91b02303d083eef709c8ad640a92140631acd12f70a2aef36b163d49c7d5bca17e35288c7388712a0b72ed27cc10bb93b7f0fd20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305a7b207ff5bcb06c84261cb930ef2c4bc3ac1059a6ffcca42c278fff65076646baba68d093418bd7c624a3b8801fa9b3023100d7a8083ef1a6058d1532a9e04a31a54ec4cef89fbace03f2ca11d365c5ccd2f8e36384849490fe9340f5eaa3013e2fed0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100cee3d461ce831122e19cd05a59ceb83aefea131fe41f6de3e4a859303cf9046bba0f029745100bef2236f5fd07b51bfd02305d6938540a4a658f18a3048fec6f77e527bff708593dd2222306e1ef9e20f63f8896f43deac3d6c7191c4ca0a0bcca3a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502302aa9e07bd0ad20091294ec7084b9d5716a964e0c341b9024839a1e3f7a6f21527afb068d6aebb779596cc38365d903300231008457ef607f0cb6e2e573bae8632ea770b61ef74872b57f99c111fd25056d5ba9aaefc0ec0b579cadb30fbe9f199ef3360302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100873c97889a6a82e00492aefb887937a68c81690fb67c4a213738c4130fd43928119d527696ec47fa74bb52618e17caaf02304d2ec949e3a416979d61e9318da9ab22237a20d2d008c6dc571b2760e2b9c35cc301d6276aefd56cb6ad35ff49106c7c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310084058269495948cb5913b87783acbc86c183a2ace1f46042f31cf0d1a3bfd4ecac3a2ed4933c54aeb80ed28b5bfe1a01023032a7a92bad8b6cded194bda97a06e5bc9810b58952d37b0b82c821489acc02a6fac6a3e1b8487db3eceb7cbd025f25760302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d3f99a7c135686b8d808f75ed4a5fbdc4adf0e259bded5cc5cd40c9c4041fd43c3daa0c248fd55a6b9e2e8179f130e0a02306c20637abcf54e538e8096265940bb3056dbcd2dd00c124ccf5ddcd787d5db27f1c5f6060fc5f0da036cc25af214419c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304221d18245c862110e7ec6e49aa0361190163576c491ee69cbaf1f8cabf07b00338ea67090b17d7a8eb8cff4def9ec6e023100ffe0ad72e669797aa6f7cbee5914fa2adf34974bfa75fe9960e584ed012f19931e4b1c570667dafbdf645385cedafea20302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100ac616b6d28e42fef366d9beceef4166bde9000f6e0bdd882dee6da174a737af38d37d83bb8f44c12247f7564fddaa33a0230296782a7a7fbf53b78114bfd1d59b0ebc5dcf6281c045474694c2c841fb7e6510bddc670d479d6aad12002dd753b8bb00302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230459dad70fb5388cc094acf1e754debed8e92422a0b5b8e09764119b9297dbe0036ec461b47cd428233843235c1e7a282023100817003c741ae701dc08459b12fc85742b6c6465ac7d895c451008a77decaac599683b6dd41ae4cacdb9f3fb8463f42660302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100cfbafbce5d579a601b46dc130666b1f4cfb1ce6f57c97edb1a806aa6e5f967798dcf6c4d590b9d28ee57faf31eb57bc702305607aca6b4db0a3ee4aecd8a27ac3702dbebc94fbc947d2c56556ac0e04249d55c0f1ecde6430f8bb7fa858bb6b83deb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301029d070e52af37a524934f6fa5972a5f601d7a0e3a6528274b6737941ba5c255e617cd5ea6b5102f846933b7b8941ac02304a8750f75163639beae183fd3202f8c3b4eee033bc1ec748cca74a1ee9095cf61e24d4f8b21b41a30350cec61028b4870302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023069e68a95f15aee457c760a41bdc2dec47edf39482d669fd46e5ee83ae264163b23bdd4321c7103e22ea4084d9cce783f023100ecfab87db96b9e38f404de301055a277433bb0ff88f92ccfafdfd7411defee444655066fecea670d63e9c69046653dbe0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023026e1f380d52d64f3d516ab2690a1529896b943317c7c936abbd3d6e89569c54567d4acf7fa0f4c00a06468b6e7a9135202304a9457f240e6a7155133e28282f46a806210af0ce457f84dbf7f87d3f8b4ac207be44ab32283adc6abe82c3cf85561fd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301d85206713ce76e1ff8b98b46a654dd122343a369297bae518a19783e502b5c2648ecbfda12ef05804cb587ab2a9c45b0230416610ddf8b8f6a8c1f7248fba14acb6468c1ac06c2199653dc6caca8b7c31321c20bd4624c1d2ebc658eac1618af3070302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b67b8420ae7fd25d88a057b10cf0632da36f6cad2c03a497d0107dc355e2f3e9e27a394e902d442b18871f8e02578a13023077c66939c45ad5446dbee81f41f829af91a914e7b95fabb423c3f8951dedf50746f3b816212fca30c72d028bcdc299d90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303b7da90d08df6ea4e04c255023d6eedee78fab9e6ddc65be1960d5efdae8da4db11dcf4150996d5fbda303cc8ddc973402306a8f58590a7ecf77de5b8ea4296f98d71e80a13827034bfe3c46c52d56f9a33bb76a5a7f0cea720ff0d6a2af09e34ccb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e37bfbf3bfcd5e5ded52837cd5cc4feea760af946628bdf49e5b6fd16093840e564ad08735a1d512508d5c0b9c8f180c023100a83feeda50e08ee5857fcbb7d7fa270efac680bed9f0e9d6703652f4c0780c8af127652308da52ce0fee517e823a40670302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307977272da23fb6c0fc0ebf6f714a2a3390e6474eedd5d8e985e2624b5afe527f1ede52a4b70a8648b139134f06404b6a02303fda6199ec5cf9d620ec91bc508caf8a2de912946ae91fbeac4e6572114798469ad17e702f854244ad39c45195c1b4e10302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100c9e99226d1a360cf14e608fee3b6971aff028ee46b54ac5c3fe1b73406761f52bb552698482c64f72284caaa3b63784f023100e09f36725cd8b905707bcdc65a97a4acccedcfafc27a4962916795884616f5aff952cf4ff706d8325bf816b9701c020d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e4b116caaa72278b4ed41273f562423e5c63d3804423fad6cbd36fdf61c05e63d8365d8130d8ee79d54c43d75f16afe2023100a7eca46f0903cbc61f8eec1460d7d38baf17b49c1efc7a86ee55106a9840114a0d15f6c6ad4f214f08115540c6c060940302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008c72d8331e5fab0ad5b1eb85dcb6e3cb7a01b6cb900208fe1fc2c43d7d6a6853177cd937b9cf7687cc28543662aafd50023023830813a9555091d34cea30a265b103379adfe773d2745a5a7a0afbeac29e63c0944a7c75693289df3e33b956b2e1a70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402306f43220b74021503cd0c1210b8edce581d7580a7e85add4ccd109578402f141a9f83fe66642de61ba9b537ea96887bfb02301a566dff3cf6e50b74374f1dd8fe7eab3e8f95c778acef54c2f59fb953eb307911b6318b95bc74178544dc7e641009470302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ef718791ae7fc975faefe5abad2b94d49169de6d0e7c18766e2088759825df787070e1ba852e42e2107a564598a30d96023100b0b3514301e05b23dcd5957feb5444d8e6537e1425ab40bfa728945aab199dc8eff81ab4b5f398f1b84e7dc64e4b01ff0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100badb1989fea77cbdc81574ed5c56e3c929ec7485330f7aeae107d2a12744eb08d5a2ddb8017caffdaf3a32abe97a3730023100e833566e15fbce7e129b16180a082d514e063ad9cfb3137d22f99d2cf6d724375207fa13b8ea8da15a10eb2c6ba71a9c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023052c112755daf52fd7da5619c84aedb7cb76b3d77a7786e04153b25a007cd105a0ce78b8f6b8ab44dfdfecb138d3d3243023079441f843fbb1b0f01fedfa99da086186a2326121d384acb739dc029360ecefbb6621f2ebaf40bce9d33631be1d6d9b70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100827c3ee9b25c82e883ab7d0eddf08fb83478f55f4cf3bd065c78e9f28ed7a8981c30853c4f9e027fece8ecaefbcf9c73023060bd5ae7fab4c970606255879521409342a2a21ac188f69725f527c26eae8c47f8f256bc4042aafb83e2f4c7bcdccc0f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230134fc2d92a7336116c0197400abffdea358be75ef2f5b682902261b392a7beea2fa1d3301487fa9ecf5a4bb337000fc7023100cf9d2ac05227b1df15eb494fdbcfc148223516aad99ad7e7e1ad7842ff988d384def49736f3fc19cf9ea31ead845dfd40302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310092cfc0cfa0f124323daa916c45b73a7bdd899153874f56bccf43d5cc5dedb177d36fcdebf6df38c2473526c253886645023100c64f31082235fd5da2b2cfdbfc45f966398ab114efcbe65658f0ae3a9ed0fb95b04e779b2ccaeb42dda89e3c9cc2de4f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100885ed3ddbf1dc09d0e7d2a406489b819b269dd59ee24d46f2a6e2d921feb5327038daa7659918123e06d55894a9c867302305d1d3168d662c29e6d6695555a09105bb9a1ab521be654db4c86ef1841b74cd1cbf9ba2a9671cd4b3b39197e19477b670302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231008c1a47dca272b99f274e11b72263c18b16686d699851d8d3be3b539e4c01a4110798c49039d643484042fd4ee498a847023100ff1d5ea73bea0deca9318093c5ac788178a809a839b4cb322add02e9f65d791d1f581456fda694c5063e8de6b0e725170302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006830660231009c8dc5c2e6832490055ee2c2122fdacd9d146cdb307dbf423badab060755b7c27bcfb28eb6f14f9fa636a948eb0a7ff8023100fa5ed1f82b2eef794239719f9be12f243f20423779979be496fd2dfcec78fecf8eb584958f3b92090ec7ff778d3d2f930302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100d5f2c064b0ed9bc5fd700f6226128d9ce85878a6280ac2ad74938844632ad25af13b78c4ba723055733e7e08bbfe80ce02304e38e5d96bfb7f9d5a2566e20e9cab79198f51c2351c77ccb23942e671c381298d271f8ea41d5a4dee88fdee84b4aa4e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023062f0863a186ec88d9f718df0ecb5a8df28c04852fd9e1f58c5f53f8c406c840b515842d16385eac91da534f1d2e8c22d02300955b744b75a81781638ac54174789fa80a5a3ee3056f5d6fa9ad3263c2251f62f08b822a338d7a3fd9512d271a0407e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502300f724e20463313e31264ba5d5e4b593a249d0f12f195aa68cf708fd4401ef565a25082a0558a882c730886c54c228168023100c247eacdbb0deaeb26cf46fa202692c3b651a2f09c6c190e973d07c651bc906416a2d8a2b183d02bdc52b6c9655319370302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650231008b14743d7cc9e6cce0c6c64b070de3394d28a599b8a71b4ab0b7eb25ba65c4a65f9d71e17efbf0cf961c8bec1bb6e3bc0230149f6c4ceabde4734a556dcfaedbc513b39513020848b8002f80565678bff66ada6b11ba5f73d650a0fcb5b69f2b953f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230154fc2da5a7b4d73fa401a050f8cff8483e501826d77aba16b59d5fc0764b3ddbecf72ebe6bf9c691bafda13803649e7023100e872c90ea8d1a4f942d418faa099165726ec3747ac0c2c19214ee4bea19e9c4c3e02bb0091ed87871ce1a5d54a64dc830302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023049493e64fd369ac30cd3aa570b9e076adde6c69243e1fc2e31363704bc0c9fa349df84c602a6c8464ada81b3d7971bb7023100d93ec9f91a7671f9cdf04977cfe070bcf42bc9bf4fc156ae171449347d66ce741ed2cc2599c58acd06d9dbf92d4604e30302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023079e2c7cd61cfb07441c80870c04a6c36f610dd76f44b494836b9c4b4307d0ddc1d55e6aafa23edc1e677bfe0511d9291023021d0cae1109219f3600aae8e43557599976c76680af876bbfbfdb6113e77600e70cb9a08fcc6a071d2ef9f40b8fd897e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f696d23e1d28889ff71fc5e21cb7f9dbbe2f9e16e90c9f5ea13b5643a818a3e5d502048ca62322996fd1b726328922810231008e95092c558da5cd6485f5526c3b53ccfbff2e1b414665c92f317757bc684c6dd7188b24e11f5b096f6718e3e7f0f9610302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f3f0bca27788e9bbb7bfb2933ab0a6a02910211d2558882df4faf4180b76e809f4a84cc4eecf42ca601573916cc18005023100caea61bb6dbf9b8d4839aa93a019bebfe5ff9255c6f5058e59500e7f577132386b1d37f628b69c89a6482c46f258a8280302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100da07e9c826193e8e28f6b26f9665a7d900755734db6eec03ab3c694e38c595fd2691683ca62a319cbcf7025dd2a71ee602307bde08d290ba54b43da8bfef7a1913fb32ce909f32a0f82666ec524fd88aa399c78ef1c59c9b82befb7ead46568cf0fe0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502303dbf48b67dc28b6290625dfcf24ec928484cf27b0a44c66fe65a8b9a2be5befc612a428eefd52defd4a0a1b8c4d6fa06023100c3491a45a0b3d5111f4cd23728308ffe286b43a5f746028a1727abe34edd13b77882f62f736d159b2e5fbd5f6581f3900302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100b4f118864247e8570e1ad53dbef74fe4ff16dabf61a41c4fb791db396c49e6ccbef9cc721749334c499f6d4b0cf00117023022aa6a698b144f12456b6e669328b0dd276e0a0b12da8f4c9cafd753624cf419080643eb837fd152e535b2f53291e87b0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100cd6e2d187a162c435c425d9f28c2291de00ec3cc3818535ca78eaa909b3858a7e749887a1ad529c362280da3951d2e8f023100e6782740ec396f90790987e53954f3b71ea4ae68f81b2e0189c8df46949a0a0f619cb8cffaef99663d056eae5eb985750302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230687ca8a51a677a2dea9587ed5d8863cd876fc5c08c33ddb4e084427a81c6cfcb2f81a79bf12dbce046805f7a8ff18214023100bbc96c66772880d75070748a05c77b42a223a3a5f8319d4cf429d1f8ecc81d83a65c73f3ff43f9f7492e1cfc3c6b8cb90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502306bcfb847fffabb220a45d366984c6180784e03c06bc32f9438b50af6a1333c38ebad8a444fa17313d88749392279be960231008d419a666fac8209b4835fad39e57abb7f0386fadf711ecc9044efef9e6b1529fb8742cc53eee7851b627c980974a6360302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006630640230210b3f43fa74c9c74f17e3b3143ae0ca3d99e0850aeaa9ad8042ce073a0fcd7c1307b686934ca5ec348fe44b1432a91902303dec07193d7d72179ec27c16e52770976709a0260e16bc7979c5a88f0c52106c0462f541be3e7b68e93de5d746fb9a8f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502305e7b4ff6669ceb3ea891504755c411fe5f540e6d70fb956fb16de7bb9ad923727941a6ac13b8bb7bd444ad19d067c269023100c6abcd461dca480507ff181f22abb41fda0cfabe38374ecbe0ff816a727771c7a4ed067036cfbe6bbc20add4595d3dff0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100ad15b77e83a17217ef46aadd4e34e9ae3f6c4d971a6de015125d1fdd505b60db174e754242973a97210d9ae05567e8fc023100d2a0ab27970c59e691e7f8b47949b4a73447c0c961cf77c774951a7dacb62089e04c404c80dc6a9113a9f045cafdf7e60302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100894d900d069cf148bca6ba8eec4a395c0e95ba2cd653e13a90610804fec639cfe5c40688a8d6c1472ca6a23eea5219f90230152e5d189c5f15cd7c81cda1ee98fdc66075e180af76fd6ae9dcbd60cb01be196f4a8521744b615d620a85c9902dbf5d0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402307b7cfe6a0d46be1168ea733296928c98caa792030208601537adb5cff0d242dc89b718aa452696c126dc38c5208abcb302303720a262131a45643e06151d47c06c11fdfbfed10142e7325bd6c10fd6f8ea2417d7facce89aaffa79e4c3e7f9c5210f0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100bc8fbaf7509008786b2410aa60c45c81c1b4ddfc6364c5c83357f7d00b8ed37e2541ee9c953eba04844744953241dfdf02306db0d5eff26125fcbc4907fcd0dd842efd7a9717c54e74d0f97fbd1d160879d8ab68f2fa9eef587f8a247bf2cd6d3c2a0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023058ab854028a42f6db84c45817553ed3076994fe79df81c408d8106726a9f9d425f4231f4449b105895bfc51177d6c6e9023100948df7ad9c0affd5fc6edf8ed89bdaea5c9e6a6e7a3b4983c5aa2d06bea64f76936d77d424fb581461d9e10531a336480302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303cac9925c734a8c82c91b405aa569a408125c9b3d63ab483ba447dda7636e0a1695868c925871d848914035187d84e2a023011fac5cf314a27fad1593e002cee49fa4f9e600a7bf244c054ca03059c0c8a2dea1d49ae90265b6d62a70899e2755fbb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023025c82b80f24f3f3302e9e32b1d2d65955368aff6f5cd18e77190f5eb4997509b7bdc0d1ea083819a31d7cb5d73acef59023019add7c835f03a4fd94adccc130bc20550d9d5b0c2c890c8ebf7d350ecab93d61a8f3e6cc426bd3a47c10e1bf2d07c790302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402303be96520e3f1ea3f15e4457d09241d7d70adb779947126f4292b7cbd4d6317016a45ee69a1ae82a0395a30311428620e0230279e8a01ebd7d44e29f5749ef69f29d12a52320680c390ec20e1ed5afe77955c7f8a8da65aac331d22376e89b92e5a520302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100baec32db1bd965a6f7fc9cb24aabde7858c398028c81ca7696a94c8007a993d890e2e439fee3f80a4bcbc632ecb3decd023100a6ecfc488279fbc197e177056c30c82434058c3b478dd6264651581841cab4eca60ff0edf9f2722c18d108a8dfb1da230302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100b242d914a5fd1bec797d59c1609a167f47901c94ecb6f3d5e8821a6bcba5cab820ce010555111dbae576390bc5843cea023100f3f25e672a818e16709afb7e6574a67ef98abc365178820185364168ac70a8b09bc280070d8655673b90e4ee792031380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023019bc2bc0f2aed7c115545006f57a46ec74ab1171d9195708cc9095f6091e972f6bbd56e10cff2b1229374ee06db357f802310093459f0e87bd766c1e4cf466754f53b670b5872cc955147f9c528d99722151c21545f1362fac458516ff881230d67c9c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100fd1dff2961f6e761244a01954e2fa2b15dc4dc9bbdc0e913d6d68c03f8a5aae08913b3e0bd95ab4fb8349fa5db3df799023100d1c84c095476527ecd4a56fbcfafc47e5224bc3134bf4d5fcb67b06a822671f6edcb2edf29700aafff0f8688ea6333430302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230728956da1b58b3f98c93c175ee285b518450eacc262da861eb14a87ebbbf11964b1fa64713de6be2f9ec2918cc766d12023100d217f0d6560d4048adc5732ad62c5f4107cfa5f92d555b81ccee8cd134c4d41deff02202f81d7319460719e4486208550302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402305556043b19643f68341d501ed9321dafc3d27c8a093cbd2ed3d5212cf058ce0fd75bc7942d35bf28d28a963a5145abbc02303fb1ca83a39a08eca7d144984c24c4d727dd6a7cee3f384a8d45bfc2f2a2201d8b334ee150ce523083ed64840773e6080302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100f6faceb2c07613b1db417228e4d5bd3cd89e1318326ccb2655730d6b9c75dacd60bd5b5f0adee5d9906a557ca6603a5102304ff644c3e68889b39146cc4b166f5b819dd169ff3c0ecedca6f669607b0299b318ed2fb99badff11f17d289855e2f76e0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50066306402301e134fcc86a649b336347330515aaa120e20dbb487a133f037b3b53f946a57f7c80531b402affa7471685d56c761dc4b0230732e49eab112c4469340979e6ffa80a78c99ddf568f66203fff1ac8468811fe31f6abc38d3dbc1142807750b75fed63c0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500663064023034b1ff565723f7b981c96d3cf04edfa4f145c0718fb02f1ee7a91f470e46c16812133c5b6eeb67b1ef2661712e80f24702306852233dc5aa6419346d75986d4fab461bd0833d51d8b13617337634300c7d95254ddb78455fc882a74c9ad02e337c380302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e3a025175c5b4e108e3f91a2733458d92d4ec42dd3554613cabb1041d1979b58e129b4aa1a1b213ad23d4af388545f68023100baec8868f41790f41251ffcd72495cf4869b49f3c87b000f3f64ca9e5425d2759e258d488b1c8a9b1311184fcceed7dc0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb5006730650230404d3c6b4418765ef4785c63ce4faa2f478b5cc0b651461679dcfbeba4d84fc96b34a080e0ab3458770b4fd177c55072023100f9b198ed2b9720cd14815d38cf23e44a408d33778a79c394bc2eb0acea76c894187e96860a2b0e9d8da362a7d4663af90302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502304ddf5b5f9aaf36289769d0c75bcd97fb92d0793fe0bcc765e467e3f4ba028b794a975b2b30981a795b867859b86245e8023100e3288cad8abcb4b93cba3de02c39cf61dae64f671ee04b6ecea647d4b8dc9cd3cc0885ebb66f14ccfe1a0812618b26ce0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100f6c45694f7cd923e631604d919c6ca73b418acd469b77a2ea0e22ced6dc76ec06e20d6d18943c006a731e19f47614e86023100c524a09e3c76a53f9a9113c4e7f2baf909771c6603ddff13e79b2fad97987fac851d4909b74dc81d2836b54edab96d800302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310089fd20cc1c8a880bc5e941f42717fee2d47ee18d7cefbf9e19c3d5c7c0d16b9028d17026f3ec2081ea0f76fb36a1743e02300f7a85d600586fdc86ed3d9ce4be0785e53367acc0ab896a6983ad28c9be7ba67814bba8b6ff16e467c6404fd05c91fb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb50067306502310083eada1e68c7960a0266626f217e95d45044858a39acca2592b8a0fb52d2104a6e617a83bbf22ad6134041421132ceae02303c082e4c80cde35865c6ee448e64363ab11db9cf44b8adeec9592d0e635ae772dc754d224f34c3ba57143569c008d2cd0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023059796c7a39704dc07dbc44fa59c471377a95495192ca565b4e71aa0a9a57a20d85056f5d925625eb144c16d1f3dc4c42023100b12916e66f0433fa778ce4fb29d50d0e3e459c307b49418748da20fc8d9bf5d6b6a1a7b6622c30f524bc6ac7dc25840a0302047c435bb50066306402305ee8f32d1faf9d5ba5eabba3e9d84b82b623d96525fbd4a3d4fe946886beba939f4a270aef24ca1bfc52b3a147cd37560230767cf167027a1f10b88bc25391397711654b8ac506bc254635b28e1e6189fa3383de6fb05478cd4dcd02b46d68cec7f70302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500673065023100a78bd20c61920512553b3283e20566b1ab1bac38fc115d569ac50377b97cdb3ebe58ac88a84f33049e15ba4de59f51490230435f9e06f7fd4bacf6e4c0fab8f3c9624daa71ed35fc1300cc16754fe9bdddd701bbb3e90b64bfd045c3e984f9d189240302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100e32b66aa396127506ae4fcb31c5e0459291990c6ee00f1a181e15a018ac42fa1c17866a15f686de154c5674bec3b491f023100fda2d16dbcc9a39ad41ce8c556eac4e74b7b40d7c3617f5ecd73c442c73b0456f5e9092f5d95a7b2f3cc27ddfaee45060302047c435bb500683066023100cc2ee9489735477c24487e0c685ce3ff80b7708c5bfe0ab6f61a1afdc828fe9383501225742355064d8d463a0d7376ff02310092c446d147049a507fe549d7a11dc2cf08f34c13c0cfe0416cc73d83b45b107565bc93c01079918d15cc58c5b23176cb0302047c435bb50068306602310089ac5110704ce1386fdac16844b3075fd8c0640038e411dcb3ecac1328225f5a315617af46ed03a593a9d09864cffb3c0231008d014a9fc02381cfcec40574f55430a9ad62e0709c2fa5c70f78fc99f4341b07c17021c3944e06c44fcd26f6ccd92e380302047c435bb500683066023100bbc8154118a9cb1791a20d27fd5be22c0bdd5e3fed0bcab2dd7282fd8a7bbf5305285aa92d7d9e0fe292b8300d98f486023100a0122debcd8183b9a5879f4677027186b3956e57e3b5f6323553821631528b721bffabd0398fdab7ffe7e4b77ab672e40302047c435bb500673065023038b2be2d05c7adce621e6b3526b3b182f57eab6c4163f45a8bcba266624bd182566a2ad6592f765a97f3a430d984d65c0231008aff64bde9aaae66d067591e87edeb326893f1d59b09a6259e16bbdae3fff41efee389208bd50d87b91aff2853c5eb650302047c435bb500673065023100ffde19ff206559a30c80558b033b6fcbc3f3416e775e31d81490d8e7d79cd883b74c364fc702ee95cef57c49ae0b9e9502303d3469407165cf6d417504da5d997e4d965aa1b2c95c6c0434f92ee0408a6be17a4d9f82dbb17bcb1c6828d6bd6d58130302047c435bb50066306402302a13b1619d0cec15569527e07c7c8448d1955900256387ead8eebe8e700a0e30fa37f9475bd97cdc5f88abd3d55e94f002300b43b61d0c313931b3ce23398fd9a0720e209a0e1badfc2a56b4486e87628e4c45119a2ce9ddb0a783382c699171355bn[dGRU]06 3h4:8mD0@Uݛ +FUoa{A&QO!X1/7$>XEG#>RE"衖(06z*$xGkWD|Nve#W {/b ~Y $- ?ta5/0\],w_h$,O3JtnG#_ifv3 Aas~Yc˯y5IG_$ l0:`=XFG'@ƫ\X[ 9_yAm[X_lQ>sr!\;"E5E?BVhW[q:g?ԽRK#ءoJrvNL}8UOCN|ocm+Ḅr ,P)43߰69vR뇖ۊ*xe1|7WMetn8nI*81iq솁ڠ`|>`>mD?m4d ) mC VpNN<NN ؜NN u8NN pNN w>NN  NNXNNNNdNNHI8IXI(J8J?9S ?:u?>mGmNNH0NNIhNNX.Y.\/0NN]hhNN^(;Wbd!e&f)l,tDNNu"|NNv[*llllllm0Ckernel-rt-devel4.18.0488.rt7.277.el8Development package for building kernel modules to match the kernelThis package provides kernel headers and makefiles sufficient to build modules against the kernel package.dFPx86-04.stream.rdu2.redhat.comGCentOSCentOSGPLv2 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-488.rt7.277.el8.x86_64 && /usr/bin/find . -type f | while read f; do hardlink -c /usr/src/kernels/*.el8.*/$f $f done) fiX BEBUcn<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 ZDHL\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$+kT E d )2bcNZ_|qEXLUmaaa"af; l9G&b&[$!a h;r 6[pi #FQ;" ;i3leS=14j QiCJ<^n?u$|`?<i.,l 9E-+ #- ) [E2 Byd. ( $xq,>  / DH  &c,  90}%x\}7Y  zJ K@P99Px MQJ : /D.`W 8 1 A ^:_u F^U!6 . / v'Q0 5k,<2 h % A` X: O+Bhk c"C W-2 B B cXo^y# &t _ F+qMYa1, # Iw ;p` ;e7j Bqd4 ( 8$KK1OLE $ $R 9IY l f\&x 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  7B3 Gr3VW;2|z CKvaMH6x:O "2? ,.z:i1yYtX/; aXh-[A?tA8d6?qXk`%!(\%m jA[65d<\pL/kg= ']'6 eE6>PN AP{ a\AKGOTt:K ~2 fD*`LGLi' Ac%z*bpX.!x7   ~ \r*tVf=S  vfVt\"uQ 8' F[^]k Wi\uk0H?%Timc@B S QF  Z l W"}Q|gt(I] ya\Z"*hRlm:N'Y:fe  Y#tUUKwxq  0or=xh, 9-Fn ~ o  b|H*'b4s/ 2(M-5=%{y kGpR %u lN=(kx,RYb2(ZV wR{UoS hT-S LX~ gcex21 $ i5TC Fv)* Piv ~1 9;H[J5& : M /H3_<*SB8 _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`Zo"V$oN.ayIL &~!Etf[$'AQ)ymK6Jpm  w rl.  U6[q UE zk`c"YH 65BR?S8a[[ ~vXsntTIh; )we`WTz[4X({czmX_S%i*=Ud;E(4 FSJS=W+ )-k_.FJ|"J=uQNiMy$NX7| AM[$eQo5,)RMPBT]'+.#:D/Epho(A # H H U^ 5eh@J\^(nSiiiii0e^8$F\mOzW . ZKcHS@vu[|zN|Y[_h_ `;vX t`' jzYNdXb v59!N\y]k<\R oTL5I&] <#Q?B5;"wE-Gc &9# IO>" z? 5B- s`G/Ok]!hzw $DUP<LH-i  S,=]gFzKaoN}S$Q7W&&&f2Thf#  h_) 3m:9d!~od7|jQ }oN` ;7:/1-w J cq% Y &Z(xj@-\ 5i La9~~f#^ 'I9O}@nzSYnkQhLH18 hD{WMhga-/z jqF D% ! _Z % R6Njo<V0Z PT! y &-ha$d|R% ;<)T39QQ`b|#]?J@x|9M<a Rqy)gb-5a[Ja|!{ ,-eA^a%W Ota_ (GG' <\ wcsli>i}-=~D-3/'  2aao]]e8]e3xb^U2 6/o^*;E4)y@|U +QMJ&WgRC 2UZS*E,)a6@v %D8 {E+0=!x3/gE j A,EBg[AVe& (g&G4pV+[_UY Soz -QuFt $5 mKew$ADK!\8Vd nOcOBQl H9|4YL|! *_ n e;d ",t#zA;uEz#s~Wyzz ;R ITWp`3y Mb}I9*`}m r;$T6u@  hJdhf3= = v2,{b= q#CAvSY5/-czL3IbW XR^s_$GU /S 7J#57p'$_ +:{XE \ P@ < ")" X 8.N0_^gd%q/Vq^!  o\2V3O L0Yj4NIt =L6>Kp4 6 2/P1HrI)"./M N| ~ { # j%}j?=f& |'UlN Eo [UA Mi%,d {ho?K!A  %?' g8$ 1,< P !UKO*?20~  N&)/c7&%!]% &.F:JL r-BF |/ R#g R$' G%.!G] ; D}%"Z =-c>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?(rS?QL4b    [5w: tq-("b [ (>6 D_S{ t ".&S'  >   T?(&-P O 0 ρ(W/4Y/ dX+ e<~i5Z8bCP 8S X %>Q;*MjGS6 F6 W8: Yte_46} DI M#^A"nj'(!H9K+> $:K/.i#qN`bE-GLh ,;:#bk 648 8ik$ 6,d0%|<Af U "nZ26L38t aen NKb<1+D")oL~ L*1[.W1:n$ =3 !2Jow"c"+z npSIa R *oZA6=k("";G*UCgKSv' 1 uGp)gj/_ ~B &qO( XH^p(X a 5G)) )u< A'&>@ /%$) 1#U k+*K6s$ xS@'m*1AWN d:tNS ?nc=.]}^T];fO`  UF1#z + zI0!8 7Aj0 i=[hv542\  's )=+%M.lL yP ?  (RA(5H@[itZn& `| + e f .!&2J:`-< Z 42p@ b?Y f!29~  )Kv0 :a-#feJn-q+$CR?ea=a+)Q [oa!PjXv8Y[ 8 PM 1~^= < 31[| r "6K| Ip*3]cW+9 r C!3 !'  I/  K %= K&v.m$s t)3#$Ug.Jn nqTQ 1 Ni|!;5-~ G `}5dRjm) 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 %'seC N 0[#OGK%DJ/  hb &+XNcB  {( K 2o.#W[ bO3|  0w=1; $)&! M ?5xMmJR8Bt f{*21 K;A)S q љ!6;j0u ?)16G&<[R("  B\9 @ c:uI5 lr )yLH4'  MfD  - tѻ4*p& Ff A 1\4k w c~P*G  X f*'T jL w { 9B \ O vGa9u<  g)h>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@%.;5" N3,-)%U X%= [ 4 _Ut-n&:2Y d J, 867h?u Qa BcJe T 0A;jM$C"(08a TGeB!$!WG  K)9F:K1e&=([, o . B lX2  x<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  %515`m "/&Dq< $8 \*>ao );&_ B8[ j_~v#T-C U A #!E  t,NKn&N# 4hS:A- N >SH9(,W{I," - [EF{ZFh$" 2 OFyA-M@S8D%8L UOB Y,1O+R7FS pd> pE5K&_T#-) )d$ J66Y57TK/D & 8d<3 [ m^ \^8"w @+@  cC CF  ' SIc)F(%rW+$ duK6=t"|YN 5<{ 3 0 9 9 x%c#N$!,B;@G*lU!4>2 , H>pp Ž $N\>hZ9 6DA9h(> G5tb !Z& K(F+Nb Gg+t \!L8Ks#  5h6JjWgj.|:kt 6Z D/3po?]32>3;[+#c *`4>F"7h` ZN*k& '6bGM) w?2 d7z(@5$ gF$57 ~:M/O;<`Kk7$%kLO mYV"h rRM >+ p!4 k pN*'@s6 $ 3!O`|)B% m v 97j 1y 4${! 6-6&dD ,R 5x$76+* q o"DSWp%A*;8V7Tg=C8-Q 6<;b :?6N*& *1 Wy ^J jQ y@Z  ']RNU jj Is'KXa#F"x> 5y(0a1: J (d }cC}-;_qX-*z,?,W $9SB !  WRf j4E)\I v_D@  C~p eSk @a4@2O%$. $ 9&%0ZCLa M). 3~ 5 3_8p z 4B  Sfe># ]{5}8.Jg<3FE'4 #-%pTXt o- 2p(D{|0:D4 z4u=+m[=!<#ypF:l9' "  oo % m1`> (&-!^   N@2':? xiMPi& _bb &'$ k.N dG6%M)CT T  )u P d 2MzA.'VU"&:upB)64u 2eLhK!H .NMw   4:]! ?^Y[(>#OW:HVIi<x4 z k?`ro&rbD' +A c ;O h w -!;h @(2 ,// 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 .+'M3"=#': MT:38 Yg`/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!YE9n a kY|Hg9+f l-~ ! *xLIT G {| h 76q _ }'<O o>?.5?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-)q8[" #K^ !F h? V$B5w -*'+ x^ 2PFQ3o  O#S4}Ks@)I3 iv H'u> [J ~@WO pnh?im$UN : $r X*7N   - W   lt<!- "5_$0 Z# (j R#(e8 ,BrfXI D& (3t ,"e9Z$@/$< -K4#)e(i1  j@ O[ QA{JY h" cg O62K, i)Df $Xx mg  . >:3 ;- u ol%DD 2 $S$?!R o 6-) : ,D HK'0O Ou"q<RU~WFmG`C'] [FT/E ;{*4 65y) t*.4; sqJ.ob^ #M? ` 'C3,*E ! h6c 5 ! h1$a)  QD 83K4^N )KF"(+F @.G!2*Y{ $.] B] 6i4  LYEz: ` Jp+)m$]s7h 6^;};Al 0s Io<ez%/Te/~ e bZ`4t  X 0yUv( ITS(Jnt1_!AaQpKRe )$*")y#[8X&<Be)R]",Vt̟"#b39n%v2*sS: *z. f;!+ |Ig L/$ ]$2 , 4]8(dA%O7;A-/8 <L C\ x?v<}6 mh'+' c5>5!{ :s%F $I F ZC O.PH Xdr$(;orV&} MgFs-X _ j*$!"3"M!bU!VI,# h Q3"D  !*.-X aVB^mSBe1BicYW72J/ %!  yҰZ ]&;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}96=d/4. e_&'=`/]BAIkAA =' =X(d 8*X[&=X5 2.vB c@h "( .wg , I k0< +5k'.s#}6wW[i>/7m%#2|1C I]e)u0:L% lrYHE 1SQW^-]Z8eq=) | Y~7BY\DvA 0:y k8;@ <4  %#7%tLh1U^r$mz-ap=gH^o}mW | u!% G~y$ wt [>Kϰ( YG0HI0H0 X)Y)T ]r"Q)lAHhpS2T!?|<J_P&wd  zW}Ed8a er<VeV WX;@$6SJB$0!a)A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤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큤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큤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큤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큤AA큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤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큤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큤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큤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큤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큤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큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤AA큤A큤A큤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큤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큤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큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤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큤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큤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큤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큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤A큤A큤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큤A큤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큤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큤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큤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큤dFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFSdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFSdFdFdFdFdFdFdFdFdFdFdFdFSdFdFdFdFdFdFdFdFEdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFQdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFRdFdFdFRdFdFRdFdFdFRdFdFdFdFRdFdFdFdFRdFdFdFdFdFdFdFdFRdFdFRdFRdFdFdFdFRdFdFdFdFdFdFdFRdFdFdFdFRdFdFdFRdFRdFdFdFdFdFRdFdFRdFdFdFRdFdFdFdFdFRdFRdFdFdFdFRdFdFRdFRdFRdFdFRdFdFdFRdFdFdFdFdFdFRdFdFdFRdFdFRdFdFRdFRdFdFRdFdFdFRdFdFRdFdFdFRdFdFdFdFdFdFdFRdFdFRdFdFRdFdFRdFdFRdFdFdFRdFdFRdFdFRdFdFdFdFRdFdFRdFRdFdFRdFdFdFRdFRdFRdFdFRdFRdFdFRdFdFdFRdFRdFdFRdFRdFRdFdFRdFdFRdFRdFdFRdFdFRdFdFRdFdFRdFRdFdFRdFdFRdFdFRdFdFRdFRdFdFRdFdFRdFRdFdFRdFdFdFRdFdFRdFdFRdFRdFdFRdFRdFRdFdFdFRdFdFRdFdFdFRdFRdFdFdFRdFdFRdFRdFdFRdFdFRdFRdFRdFdFRdFdFRdFdFdFRdFRdFdFRdFdFRdFRdFRdFdFRdFdFdFRdFRdFRdFdFRdFRdFRdFdFRdFdFdFRdFRdFRdFdFdFdFRdFRdFdFdFdFRdFdFRdFRdFdFdFRdFRdFdFRdFdFdFdFRdFdFRdFdFRdFdFdFRdFdFRdFdFRdFdFdFdFRdFdFRdFRdFdFRdFdFRdFdFRdFdFdFRdFRdFRdFdFRdFdFRdFRdFRdFRdFdFRdFRdFRdFdFRdFRdFdFRdFdFRdFRdFdFRdFRdFdFRdFRdFRdFdFRdFdFRdFRdFRdFdFdFRdFdFRdFdFRdFdFdFRdFRdFdFRdFRdFdFRdFdFdFdFRdFdFdFRdFdFdFRdFdFdFdFdFdFdFRdFdFRdFdFRdFdFdFdFdFRdFdFdFdFdFdFRdFdFdFRdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFdFdFdFdFRdFdFRdFdFdFdFdFdFRdFdFRdFdFRdFdFRdFdFRdFdFRdFdFdFRdFdFdFRdFdFdFRdFRdFdFRdFdFRdFdFRdFdFRdFRdFdFdFdFRdFRdFdFdFdFdFRdFdFdFdFdFRdFRdFdFRdFdFRdFdFRdFdFdFdFRdFRdFdFdFRdFRdFdFRdFRdFdFRdFdFdFdFRdFdFRdFdFdFdFRdFdFdFdFRdFdFdFRdFdFRdFdFRdFdFdFdFRdFdFdFdFRdFdFdFdFdFdFdFdFRdFdFdFdFdFRdFdFRdFdFdFRdFdFdFdFRdFdFdFRdFdFdFRdFdFdFdFdFRdFRdFdFRdFRdFRdFdFdFRdFdFRdFRdFRdFdFRdFRdFdFdFRdFdFdFRdFdFRdFdFRdFdFRdFdFdFRdFdFdFRdFRdFdFdFRdFRdFdFRdFdFdFRdFdFdFdFdFRdFdFdFdFRdFdFRdFRdFdFdFdFdFdFdFdFdFdFdFRdFdFdFdFdFdFdFdFRdFdFdFdFRdFdFdFRdFdFRdFdFRdFdFRdFdFRdFRdFdFdFRdFdFdFdFRdFdFRdFdFRdFdFdFdFdFdFdFdFdFRdFdFdFdFdFRdFdFdFdFdFdFdFdFdFdFRdFdFdFRdFdFdFdFdFdFRdFdFRdFRdFdFRdFdFRdFRdFdFdFRdFdFRdFdFdFRdFRdFdFdFdFRdFdFRdFdFdFdFRdFdFdFRdFdFdFRdFdFdFdFRdFdFdFdFRdFdFdFRdFdFdFdFdFdFdFRdFdFdFRdFdFRdFdFRdFdFRdFRdFdFRdFRdFdFRdFdFRdFRdFdFRdFdFdFRdFdFRdFRdFdFRdFdFRdFRdFdFRdFdFRdFdFdFRdFdFRdFdFRdFRdFdFRdFdFRdFdFRdFdFRdFRdFdFRdFdFRdFdFRdFdFRdFRdFdFRdFRdFRdFdFRdFdFRdFdFdFdFdFdFRdFdFdFdFdFdFdFdFdFRdFdFRdFdFRdFdFRdFRdFdFRdFdFdFdFdFRdFdFRdFRdFdFdFdFRdFdFRdFdFRdFRdFdFdFRdFdFdFRdFdFdFRdFRdFdFdFRdFdFdFRdFdFRdFdFRdFdFRdFRdFRdFdFdFRdFRdFdFdFRdFdFRdFRdFdFdFRdFdFdFRdFdFRdFdFdFRdFdFRdFdFRdFRdFdFRdFdFRdFdFdFRdFRdFdFdFdFRdFRdFdFdFRdFdFdFRdFRdFRdFRdFdFdFRdFdFdFRdFRdFdFRdFRdFdFRdFRdFdFdFdFdFdFdFdFdFdFRdFdFRdFdFRdFdFRdFdFdFdFdFRdFdFdFdFRdFdFdFRdFdFdFRdFdFdFRdFdFRdFdFdFdFRdFdFdFdFdFRdFRdFdFRdFdFdFdFdFRdFdFRdFdFRdFdFdFdFdFdFRdFdFdFdFdFdFdFRdFdFdFRdFdFRdFdFRdFRdFRdFdFRdFRdFdFRdFdFRdFdFRdFdFRdFRdFdFRdFdFRdFRdFdFdFdFdFRdFdFRdFdFdFdFRdFdFdFRdFdFdFRdFdFdFdFdFdFdFdFRdFRdFRdFdFRdFRdFdFdFdFdFRdFdFdFRdFdFdFdFRdFdFdFdFdFdFdFdFdFRdFdFdFdFRdFdFdFdFdFdFdFdFdFdFdFRdFdFdFdFdFRdFdFRdFRdFdFRdFRdFdFRdFdFdFdFdFdFdFdFdFdFRdFdFdFdFdFdFdFdFdFdFRdFdFdFdFdFdFRdFdFRdFdFdFdFdFdFRdFdFdFdFdFdFdFdFRdFdFRdFRdFdFRdFRdFdFRdFRdFdFRdFdFdFdFRdFdFdFdFdFRdFdFdFdFdFdFdFdFRdFdFRdFRdFdFdFRdFRdFdFdFRdFdFRdFdFdFdFdFdFdFdFdFdFdFRdFdFdFdFRdFdFRdFdFdFdFdFdFRdFdFRdFdFdFdFRdFRdFdFdFdFRdFdFRdFRdFdFdFdFRdFdFdFdFdFdFdFRdFdFdFRdFdFdFdFdFdFdFRdFdFRdFdFdFRdFRdFdFRdFRdFdFRdFRdFdFRdFdFRdFdFRdFdFRdFRdFRdFdFRdFdFdFdFRdFdFdFdFRdFdFdFdFdFdFRdFRdFdFRdFdFRdFdFdFdFRdFdFdFdFdFRdFdFdFRdFdFdFRdFRdFdFdFRdFdFdFdFdFdFdFdFdFRdFdFdFdFRdFdFdFdFdFdFRdFdFdFdFdFRdFdFdFdFdFdFRdFdFRdFdFRdFdFdFdFRdFdFRdFdFdFRdFdFdFRdFdFRdFRdFRdFRdFdFdFdFdFdFRdFdFdFRdFdFRdFdFRdFdFRdFdFRdFdFRdFdFdFRdFdFRdFdFRdFdFdFRdFdFdFdFdFdFdFRdFdFRdFRdFdFRdFdFdFRdFRdFdFRdFdFdFRdFRdFdFdFRdFdFdFRdFdFRdFRdFdFdFdFRdFdFdFRdFdFdFRdFdFdFRdFdFdFdFRdFdFdFdFdFRdFdFdFRdFdFdFRdFdFRdFdFRdFdFRdFdFdFdFRdFdFdFdFdFRdFdFdFdFRdFdFdFdFRdFRdFdFdFdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFdFRdFdFdFRdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFdFdFdFRdFdFdFdFdFRdFdFdFRdFdFdFdFdFdFdFdFdFdFRdFdFdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFRdFRdFdFdFdFdFRdFdFdFRdFdFdFdFdFdFdFdFdFdFRdFRdFdFdFdFRdFdFRdFdFRdFdFRdFRdFdFdFRdFdFRdFdFdFdFRdFdFdFRdFRdFdFdFdFRdFdFdFRdFdFdFRdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFdFdFdFdFdFdFdFRdFdFdFRdFdFdFdFRdFdFRdFRdFdFdFdFdFRdFdFRdFdFdFRdFdFdFRdFdFRdFdFRdFdFRdFdFRdFdFdFRdFdFRdFRdFdFRdFdFRdFdFRdFdFdFdFdFdFRdFdFRdFdFdFRdFdFRdFdFdFRdFdFRdFdFRdFRdFdFRdFdFdFRdFdFRdFRdFdFRdFdFRdFdFdFRdFRdFdFRdFdFRdFdFRdFRdFdFdFdFRdFdFRdFdFRdFRdFdFRdFdFdFdFdFRdFdFdFdFRdFdFdFdFdFdFdFRdFdFRdFdFdFRdFdFRdFdFRdFRdFdFRdFdFdFdFdFRdFdFRdFRdFdFRdFdFdFRdFdFdFdFRdFdFRdFdFRdFRdFdFRdFdFRdFdFdFdFdFRdFdFdFdFRdFdFRdFdFdFdFRdFdFRdFdFdFRdFdFdFdFRdFRdFdFRdFdFdFdFRdFdFdFRdFdFdFRdFdFdFdFRdFdFdFRdFRdFdFRdFdFRdFdFdFRdFdFRdFdFdFRdFdFRdFdFRdFdFRdFdFRdFdFRdFdFdFRdFdFRdFdFRdFdFdFdFRdFdFRdFRdFdFdFdFdFRdFRdFRdFdFdFRdFdFdFdFRdFdFdFRdFdFRdFRdFdFdFRdFdFRdFdFRdFdFdFRdFRdFdFRdFRdFdFRdFdFRdFdFdFRdFRdFdFdFRdFRdFdFRdFdFRdFdFdFdFdFdFRdFdFdFdFdFdFdFRdFdFRdFdFdFRdFdFRdFdFdFRdFdFRdFdFRdFRdFdFdFRdFRdFdFRdFRdFdFRdFdFdFRdFdFdFRdFdFRdFRdFRdFdFdFRdFRdFdFRdFdFRdFRdFdFRdFdFRdFdFdFdFdFRdFRdFdFRdFdFRdFRdFdFRdFdFRdFdFRdFRdFdFdFRdFRdFdFdFRdFdFRdFdFRdFRdFdFRdFRdFdFRdFdFRdFdFdFRdFdFdFRdFdFRdFRdFdFRdFdFRdFdFRdFRdFdFRdFRdFdFdFRdFdFRdFRdFdFRdFdFRdFdFdFRdFRdFdFRdFRdFdFRdFdFdFRdFdFRdFdFRdFRdFdFRdFRdFdFRdFdFdFRdFdFRdFdFRdFRdFRdFRdFdFRdFdFRdFdFdFdFdFdFdFRdFdFRdFdFdFRdFdFRdFRdFdFRdFdFdFRdFdFdFdFdFdFRdFdFdFRdFdFdFRdFdFRdFRdFdFRdFdFRdFRdFdFRdFdFdFRdFdFdFdFdFRdFdFRdFRdFdFdFdFRdFRdFdFRdFRdFRdFRdFdFRdFdFRdFRdFRdFRdFdFRdFdFdFRdFRdFdFRdFRdFRdFdFRdFdFdFRdFdFdFRdFRdFdFRdFRdFdFRdFRdFRdFdFRdFdFdFdFdFdFdFRdFdFRdFdFdFRdFdFdFdFdFdFdFdFdFRdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFRdFdFdFRdFdFRdFdFRdFdFdFdFRdFdFdFRdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFRdFdFdFRdFRdFdFdFRdFRdFdFRdFdFdFdFRdFdFdFRdFdFdFdFRdFdFdFdFRdFdFRdFdFdFdFdFRdFdFdFdFdFRdFdFdFdFdFdFRdFdFRdFdFRdFdFRdFdFRdFdFRdFdFdFdFdFdFRdFdFdFdFdFdFRdFdFRdFdFdFdFRdFRdFdFRdFRdFdFdFRdFdFRdFdFdFRdFdFRdFdFRdFdFdFdFdFdFdFdFRdFdFRdFdFdFRdFdFdFRdFdFRdFdFdFRdFdFdFRdFdFdFdFRdFdFdFdFdFdFdFRdFdFdFdFRdFdFRdFdFRdFdFdFdFdFdFdFRdFdFdFRdFdFdFRdFdFdFRdFdFdFdFdFdFdFdFRdFdFdFdFdFRdFdFdFdFRdFdFRdFdFdFRdFdFRdFdFdFRdFdFdFRdFdFdFdFRdFdFRdFdFRdFRdFdFRdFdFRdFdFdFdFdFdFdFdFRdFdFdFdFdFdFRdFdFdFRdFRdFdFRdFdFdFRdFdFdFRdFRdFdFRdFdFRdFdFdFdFRdFdFRdFRdFdFdFdFRdFdFRdFRdFdFRdFdFRdFRdFRdFRdFdFRdFdFRdFdFRdFdFRdFdFdFdFRdFdFdFdFdFRdFdFRdFdFRdFdFRdFdFdFRdFdFRdFdFRdFdFRdFdFdFdFdFdFRdFdFRdFdFRdFRdFdFdFRdFdFdFdFdFRdFdFdFdFdFdFdFRdFRdFdFRdFdFdFdFdFdFRdFdFdFdFdFRdFdFRdFdFRdFRdFRdFdFRdFdFRdFdFRdFdFdFRdFdFRdFdFdFdFRdFdFdFRdFRdFdFdFdFRdFdFdFdFdFRdFdFRdFdFdFdFdFdFdFdFdFdFdFRdFdFRdFdFRdFdFRdFdFdFRdFdFdFRdFdFRdFRdFdFRdFdFdFdFRdFdFdFdFdFdFRdFdFRdFdFdFdFRdFdFRdFdFRdFdFdFdFdFRdFdFRdFdFRdFdFdFdFdFdFRdFdFdFdFdFRdFRdFRdFdFRdFRdFdFRdFdFRdFdFdFdFdFdFdFdFRdFRdFdFdFdFdFRdFdFRdFdFRdFdFRdFRdFdFRdFdFdFdFdFdFRdFdFRdFdFdFRdFdFdFdFdFdFRdFdFRdFdFRdFRdFdFRdFRdFdFRdFdFdFRdFdFdFRdFdFRdFRdFdFdFdFdFdFdFRdFdFdFdFdFdFdFdFRdFdFdFdFdFdFdFdFRdFdFdFRdFdFdFdFdFRdFdFRdFdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFRdFdFdFRdFdFdFdFdFdFdFdFdFRdFdFRdFdFdFdFdFRdFdFRdFRdFdFdFdFdFdFdFdFdFRdFdFRdFdFRdFdFdFdFRdFRdFdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFRdFdFdFdFdFRdFdFRdFRdFdFRdFdFdFRdFdFdFRdFdFdFdFdFdFRdFdFRdFdFdFdFRdFdFRdFdFRdFdFRdFdFRdFdFRdFdFRdFdFRdFdFRdFdFdFdFdFdFdFRdFdFdFdFRdFdFdFdFRdFdFRdFdFRdFRdFdFdFRdFdFdFRdFdFRdFdFdFRdFdFRdFdFdFdFRdFdFdFdFRdFdFRdFRdFdFRdFdFdFRdFdFRdFdFdFdFdFRdFRdFdFRdFRdFdFRdFdFdFRdFdFdFdFRdFdFdFRdFdFdFRdFdFdFdFdFRdFRdFdFdFdFdFdFdFdFdFdFRdFdFdFRdFdFdFdFRdFdFRdFdFRdFdFRdFRdFdFdFdFdFRdFdFdFdFRdFdFRdFdFdFdFdFdFRdFdFdFdFdFRdFdFRdFdFdFRdFdFRdFdFRdFdFdFdFRdFdFRdFRdFdFdFdFdFdFRdFdFRdFdFdFRdFdFRdFdFRdFdFdFdFRdFdFRdFdFdFRdFdFdFRdFdFRdFdFdFRdFdFdFRdFRdFRdFdFdFdFdFdFdFRdFdFdFdFdFdFRdFRdFdFdFRdFRdFdFRdFdFRdFRdFdFdFRdFdFRdFdFdFdFdFdFdFRdFdFdFdFdFRdFdFdFdFRdFdFdFdFdFdFdFdFdFRdFRdFdFdFdFdFdFRdFRdFdFRdFdFRdFdFdFdFRdFRdFdFdFdFRdFRdFdFdFRdFRdFdFRdFRdFRdFRdFdFdFRdFRdFdFRdFdFRdFdFdFRdFdFRdFdFRdFRdFdFRdFRdFRdFdFRdFdFRdFdFRdFdFRdFdFRdFdFdFRdFRdFdFRdFdFRdFRdFdFRdFdFdFRdFdFRdFdFRdFdFdFRdFdFdFRdFdFdFRdFdFdFdFRdFRdFdFdFdFRdFRdFRdFdFdFRdFdFRdFdFdFdFdFRdFRdFdFRdFdFdFdFRdFdFRdFRdFdFRdFRdFdFdFRdFRdFdFRdFdFdFRdFdFdFdFdFdFdFdFdFdFRdFdFRdFdFdFdFdFdFRdFdFdFRdFRdFdFRdFRdFdFdFRdFdFRdFdFRdFdFRdFRdFdFRdFdFRdFdFRdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFdFRdFdFRdFdFRdFRdFdFdFRdFdFdFdFRdFRdFdFRdFdFRdFdFdFdFdFdFdFRdFdFRdFdFdFRdFdFdFRdFdFRdFRdFdFRdFdFRdFRdFdFdFdFRdFdFdFdFdFRdFRdFdFRdFdFRdFdFdFRdFdFRdFdFRdFdFdFdFRdFdFRdFdFdFdFRdFdFRdFdFRdFdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFdFdFRdFdFdFRdFdFdFdFRdFdFRdFdFRdFdFRdFdFdFdFRdFdFdFdFdFdFdFdFdFRdFdFdFRdFdFRdFdFdFRdFdFdFdFRdFdFdFRdFRdFdFdFdFdFdFdFRdFdFdFdFdFRdFdFRdFdFdFdFdFRdFdFdFRdFdFRdFdFdFdFdFRdFdFdFRdFdFdFRdFdFRdFdFRdFRdFdFRdFRdFdFRdFdFdFRdFRdFdFRdFRdFdFRdFdFdFdFdFdFdFRdFdFdFRdFdFRdFdFRdFRdFdFdFRdFdFdFdFRdFRdFdFdFdFRdFdFdFdFdFRdFdFdFdFdFdFdFdFRdFdFdFdFdFdFRdFdFdFdFdFRdFdFdFdFRdFdFdFRdFdFRdFRdFdFdFdFRdFdFdFRdFdFdFRdFdFRdFRdFdFdFdFdFdFRdFdFRdFdFdFdFRdFdFdFRdFdFdFRdFdFdFdFRdFdFdFRdFRdFRdFdFdFdFRdFdFRdFdFRdFdFRdFdFRdFdFRdFdFRdFRdFRdFdFdFRdFRdFRdFdFRdFdFdFdFdFRdFdFRdFdFdFRdFdFdFdFRdFdFRdFdFdFdFdFRdFRdFRdFdFRdFdFRdFRdFRdFRdFdFRdFRdFdFRdFRdFdFRdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFdFdFRdFdFdFdFdFdFdFdFdFdFdFRdFdFdFRdFdFRdFdFdFdFdFdFRdFdFdFRdFRdFdFRdFdFdFdFRdFdFdFRdFdFRdFdFdFRdFdFdFdFdFdFdFdFdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFdFdFRdFRdFdFRdFdFRdFdFdFdFdFdFRdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFdFdFdFdFRdFdFdFdFRdFdFdFdFRdFdFRdFdFdFdFdFRdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFdFdFRdFdFRdFdFdFRdFdFRdFdFRdFRdFdFdFdFdFdFdFdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFRdFRdFdFdFdFRdFdFdFdFdFRdFdFdFRdFdFdFdFRdFRdFdFdFdFdFRdFdFdFdFdFRdFdFdFdFdFdFdFdFdFdFdFRdFdFdFdFRdFdFdFRdFdFdFRdFdFdFdFdFdFdFdFdFRdFdFdFRdFdFRdFRdFdFdFRdFRdFdFdFdFdFdFRdFRdFdFRdFdFdFRdFdFRdFdFRdFRdFdFdFRdFdFRdFdFdFdFRdFdFRdFdFdFRdFdFRdFdFRdFRdFdFdFdFdFdFRdFdFdFdFRdFdFdFdFdFdFRdFdFRdFdFdFdFdFdFdFdFdFdFdFdFRdFdFdFdFdFdFdFdFRdFdFdFdFRdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFRdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFRdFRdFdFdFdFRdFdFRdFdFRdFRdFdFdFdFRdFRdFdFdFRdFdFdFRdFdFdFdFdFdFdFdFdFdFRdFdFdFRdFdFRdFdFRdFdFdFdFRdFdFdFdFdFdFRdFdFdFdFdFdFdFdFRdFdFdFdFRdFdFdFRdFdFRdFdFRdFdFdFdFdFRdFRdFdFRdFdFdFRdFdFRdFdFRdFdFRdFdFRdFdFdFdFRdFdFdFdFdFdFdFRdFdFRdFdFRdFRdFRdFdFdFdFRdFdFdFdFRdFdFdFRdFdFdFRdFdFdFdFRdFdFdFdFRdFdFdFdFdFdFdFRdFdFdFRdFdFRdFdFdFRdFdFdFdFdFRdFRdFdFdFdFdFdFRdFdFdFRdFdFdFdFdFRdFdFRdFdFRdFRdFdFRdFdFdFdFRdFdFdFdFRdFdFRdFdFdFdFRdFRdFRdFdFRdFdFdFRdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFRdFdFdFRdFdFRdFdFdFdFRdFRdFdFdFRdFdFdFdFRdFdFdFRdFdFRdFdFRdFdFRdFdFRdFdFdFdFRdFRdFRdFRdFdFRdFdFdFdFRdFdFdFdFdFRdFdFdFdFdFdFdFdFRdFdFdFdFdFRdFdFRdFdFdFdFdFRdFdFdFdFdFdFdFRdFRdFdFRdFRdFdFdFRdFdFdFRdFRdFRdFdFdFRdFdFRdFdFRdFdFdFdFdFRdFdFRdFdFdFRdFRdFdFRdFdFRdFdFdFRdFRdFRdFdFdFRdFdFRdFdFRdFdFRdFdFdFRdFRdFdFdFdFRdFRdFRdFdFdFdFdFRdFdFdFRdFdFdFdFdFRdFRdFdFRdFdFdFdFdFdFdFdFdFdFdFRdFdFdFRdFdFdFRdFdFRdFdFRdFdFRdFdFdFRdFdFdFdFRdFdFdFRdFdFRdFRdFdFdFRdFRdFdFRdFdFRdFdFRdFdFdFdFRdFdFRdFRdFdFdFdFdFdFRdFRdFdFdFRdFRdFdFRdFdFRdFdFRdFdFRdFdFdFdFdFdFdFRdFdFdFRdFdFdFRdFRdFdFdFdFRdFdFdFdFRdFdFdFdFdFdFRdFdFRdFdFRdFRdFdFdFdFRdFdFdFdFRdFdFRdFdFRdFRdFdFdFRdFRdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFRdFdFdFRdFRdFdFdFdFRdFdFRdFRdFdFdFRdFdFdFdFdFdFRdFdFdFdFdFdFdFdFRdFdFRdFdFdFdFdFdFdFdFdFRdFdFRdFdFdFdFdFdFdFdFdFdFdFdFRdFdFdFdFdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFdFdFRdFRdFdFRdFdFdFdFdFRdFdFdFRdFdFdFRdFdFdFRdFdFdFdFdFdFdFRdFdFdFdFdFdFdFRdFdFdFdFRdFdFdFdFdFdFdFdFRdFdFdFdFdFdFRdFRdFdFRdFRdFRdFdFRdFRdFRdFdFdFRdFdFdFRdFRdFdFdFdFRdFRdFdFdFRdFRdFdFdFRdFRdFdFRdFdFdFdFdFdFRdFdFdFRdFRdFdFdFdFdFRdFdFdFRdFdFRdFdFRdFdFdFRdFdFdFRdFdFdFdFRdFdFdFdFdFRdFdFdFRdFdFdFdFdFdFdFRdFdFRdFdFRdFdFRdFdFdFRdFdFRdFdFdFRdFdFdFRdFdFdFRdFdFdFRdFdFRdFdFdFRdFRdFRdFdFdFRdFRdFRdFdFRdFdFRdFdFdFRdFRdFRdFdFRdFdFdFRdFdFdFdFRdFdFRdFdFdFRdFdFdFdFRdFRdFdFRdFRdFdFRdFdFdFdFRdFRdFdFRdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFdFdFdFdFdFdFdFdFdFRdFdFdFdFdFdFdFdFdFdFRdFdFdFdFdFdFdFdFRdFdFdFdFdFdFdFdFdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFdFdFRdFdFdFdFdFdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFRdFdFdFdFdFdFdFdFdFRdFdFdFRdFdFdFdFdFRdFdFRdFdFRdFdFRdFdFRdFdFdFdFdFRdFdFdFRdFdFRdFdFRdFdFdFdFdFdFRdFdFRdFdFRdFdFdFdFRdFdFRdFdFdFdFdFdFdFRdFdFRdFdFRdFdFdFdFdFRdFdFdFRdFRdFdFdFdFRdFRdFRdFdFRdFdFRdFRdFdFdFdFRdFdFdFdFdFRdFdFdFRdFdFdFRdFRdFdFRdFdFdFRdFdFRdFdFRdFdFRdFdFRdFdFRdFRdFdFdFdFdFdFRdFRdFdFdFRdFdFdFdFdFdFdFdFdFdFdFRdFdFRdFdFRdFdFRdFRdFdFdFdFdFdFdFRdFdFdFdFRdFdFdFRdFdFdFdFdFdFRdFdFdFdFdFRdFdFdFdFdFdFdFdFdFRdFdFRdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFRdFdFRdFdFRdFdFRdFdFdFdFRdFRdFdFdFdFRdFdFRdFRdFdFRdFdFdFRdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFRdFdFdFRdFdFdFdFdFRdFdFRdFdFdFdFdFdFdFRdFdFdFRdFdFdFdFdFRdFdFdFdFRdFRdFdFdFdFdFRdFdFdFdFRdFdFdFdFdFdFRdFdFdFdFdFdFRdFdFdFRdFdFRdFdFdFdFdFRdFdFdFRdFdFRdFdFRdFdFRdFdFdFRdFdFdFRdFdFRdFdFdFRdFdFdFdFdFdFdFdFdFdFdFRdFdFdFRdFRdFdFRdFdFdFRdFRdFdFRdFdFRdFdFRdFRdFRdFdFdFRdFdFRdFRdFRdFdFRdFdFRdFdFRdFdFRdFRdFdFRdFdFdFdFRdFRdFRdFRdFdFRdFdFRdFdFRdFdFRdFdFRdFdFRdFRdFdFdFRdFRdFdFRdFRdFdFRdFdFRdFRdFdFRdFRdFdFRdFdFRdFRdFdFRdFdFRdFRdFdFRdFdFRdFdFRdFRdFdFRdFRdFdFdFRdFdFRdFRdFRdFdFRdFRdFdFRdFdFRdFdFRdFdFdFdFRdFdFRdFRdFdFRdFRdFRdFdFRdFRdFdFRdFdFRdFdFRdFdFRdFdFRdFdFRdFdFRdFRdFdFRdFdFRdFRdFdFRdFdFdFRdFRdFRdFdFdFdFRdFdFdFdFdFdFdFdFdFRdFdFdFdFdFdFdFdFRdFdFdFRdFdFRdFdFdFdFRdFdFdFdFdFdFdFdFdFRdFdFdFRdFdFdFdFdFRdFdFdFRdFdFRdFdFdFRdFdFRdFdFdFRdFdFRdFdFRdFdFdFdFRdFdFdFdFdFdFdFdFdFdFdFRdFdFdFdFRdFdFRdFdFdFRdFdFdFdFdFRdFdFRdFRdFdFdFdFRdFRdFdFdFdFdFRdFdFRdFdFdFdFdFdFdFdFRdFdFdFRdFRdFdFdFdFdFdFRdFdFRdFdFdFRdFdFRdFdFdFRdFRdFRdFRdFdFdFRdFdFdFdFRdFdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFRdFdFRdFdFdFdFdFdFdFRdFdFdFdFRdFRdFdFRdFdFRdFdFRdFdFRdFRdFdFRdFdFdFRdFdFRdFdFRdFRdFdFdFRdFdFdFRdFdFdFRdFdFRdFdFRdFdFdFdFRdFdFdFRdFdFRdFdFdFdFRdFdFdFRdFRdFdFRdFdFRdFRdFdFRdFdFRdFRdFdFdFdFdFdFdFRdFdFRdFdFdFdFRdFdFdFRdFdFdFdFdFRdFdFdFRdFdFRdFdFRdFdFdFdFRdFdFdFRdFdFRdFdFRdFdFRdFdFRdFRdFdFRdFdFRdFdFdFdFdFRdFdFRdFdFdFdFdFdFRdFdFRdFdFRdFdFRdFdFdFdFRdFdFRdFdFRdFdFRdFdFdFRdFRdFRdFdFdFRdFdFRdFdFdFRdFdFdFdFRdFRdFdFRdFdFdFdFdFdFRdFdFRdFRdFdFRdFdFdFRdFRdFdFdFRdFdFRdFdFdFRdFdFdFdFdFRdFdFdFRdFdFdFdFRdFdFdFdFRdFdFdFdFdFRdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFRdFdFdFRdFdFRdFdFdFRdFdFdFdFRdFdFdFdFdFRdFdFRdFRdFRdFdFRdFRdFRdFdFRdFRdFdFRdFdFRdFdFRdFdFdFdFRdFdFRdFRdFdFRdFdFRdFdFdFdFRdFRdFRdFdFRdFdFRdFdFdFRdFdFdFRdFdFdFRdFdFRdFdFdFdFRdFdFdFRdFdFdFRdFdFRdFdFdFRdFdFRdFdFRdFRdFdFRdFdFdFRdFdFdFRdFdFRdFRdFdFdFdFRdFRdFdFdFRdFdFdFdFRdFdFdFdFRdFdFRdFdFdFdFRdFdFRdFdFdFdFRdFdFdFdFdFdFdFdFRdFdFRdFdFRdFdFRdFRdFdFdFdFdFRdFdFdFdFRdFdFRdFdFdFRdFdFdFdFRdFdFRdFdFRdFdFRdFdFdFRdFdFdFdFRdFdFdFRdFRdFdFdFRdFRdFdFdFdFRdFdFdFdFdFRdFdFdFRdFdFRdFdFdFRdFRdFdFRdFdFdFdFdFRdFdFRdFRdFdFRdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFdFdFdFdFRdFdFdFRdFdFdFdFdFdFdFdFdFdFdFRdFdFRdFRdFdFdFdFdFdFdFRdFRdFdFdFRdFdFdFdFRdFdFdFdFdFRdFdFdFdFdFRdFRdFdFdFdFdFdFdFRdFdFRdFdFdFdFdFRdFRdFdFdFRdFdFdFdFdFRdFdFRdFdFRdFdFRdFdFRdFdFRdFRdFdFdFdFdFRdFdFdFdFdFdFdFdFdFRdFdFdFRdFdFRdFdFdFdFdFRdFdFdFdFdFdFdFdFRdFdFdFdFRdFdFRdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFRdFdFdFRdFdFdFdFdFRdFdFdFRdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFdFdFdFRdFRdFdFRdFdFdFdFRdFdFdFRdFdFdFdFdFdFdFRdFdFdFdFRdFRdFRdFRdFdFRdFdFRdFdFRdFdFdFRdFdFRdFdFdFRdFdFdFdFdFRdFdFRdFdFdFdFdFRdFdFRdFdFRdFdFRdFdFdFdFRdFdFdFdFdFRdFRdFdFRdFdFdFdFRdFdFdFdFdFdFdFdFRdFdFRdFRdFdFdFdFdFdFdFRdFdFdFRdFdFdFdFdFdFdFdFRdFdFdFdFdFdFdFRdFdFdFdFdFRdFdFdFRdFdFdFdFdFRdFdFdFdFdFdFdFdFRdFdFdFdFdFRdFdFdFdFdFdFRdFdFdFdFdFdFdFdFdFdFdFdFdFdFRdFRdFdFdFdFRdFdFRdFdFdFdFdFdFRdFRdFRdFdFdFdFRdFdFRdFdFdFdFdFdFdFdFdFRdFdFdFdFdFRdFdFdFdFRdFdFRdFRdFdFdFdFRdFRdFdFRdFdFdFRdFdFdFRdFdFdFdFRdFdFRdFdFdFdFdFRdFdFRdFdFdFRdFRdFdFdFRdFdFRdFdFRdFdFdFRdFRdFdFRdFdFdFRdFRdFdFRdFdFdFRdFdFdFdFRdFdFRdFdFdFdFdFdFdFdFdFRdFdFRdFRdFdFRdFdFdFdFRdFdFRdFdFdFRdFRdFdFdFRdFRdFdFRdFdFdFRdFRdFdFdFdFRdFdFdFdFRdFdFRdFdFdFRdFdFRdFdFRdFRdFdFRdFdFRdFRdFdFdFRdFRdFdFdFRdFRdFdFRdFdFRdFRdFdFRdFdFRdFdFdFdFdFdFRdFdFRdFdFRdFRdFdFdFdFRdFdFRdFdFdFRdFRdFdFRdFdFRdFdFRdFdFRdFRdFdFdFRdFdFRdFRdFRdFRdFdFRdFdFdFdFRdFdFRdFRdFdFRdFdFdFdFRdFRdFdFRdFdFdFRdFdFRdFRdFdFdFRdFdFdFdFdFdFdFdFdFRdFdFdFRdFdFRdFdFdFRdFdFRdFdFdFRdFRdFdFdFdFdFdFdFdFdFRdFdFRdFdFdFdFdFdFdFdFRdFdFdFRdFdFdFdFdFRdFdFdFRdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFEdFdFEdFdFdFEdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFEdFEdFdFEdFdFEdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFEdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFEdFdFEdFEdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFEdFdFdFdFdFdFEdFdFEdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFEdFdFEdFdFEdFdFdFdFdFdFEdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFEdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFEdFdFdFdFdFdFEdFdFdFdFdFdFdFdFSdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFEdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFEdFdFEdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFEdFdFdFEdFdFdFEdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFEdFdFEdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFEdFdFdFEdFdFdFdFEdFdFdFdFEdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFEdFdFdFdFEdFdFdFEdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFEdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFEdFdFEdFdFdFdFdFEdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFEdFdFdFdFdFdFEdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFEdFdFEdFdFEdFdFEdFdFdFEdFdFdFdFdFdFdFdFEdFdFdFEdFdFdFEdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFEdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFEdFdFdFdFdFdFdFdFEdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFEdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFEdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFEdFdFdFdFEdFdFdFdFdFEdFdFEdFdFEdFdFEdFdFdFdFdFdFdFdFdFEdFdFdFdFEdFdFEdFdFdFEdFdFEdFdFEdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFEdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFEdFdFdFdFdFdFdFEdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFEdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFEdFdFdFdFdFdFEdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFEdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFEdFEdFdFdFdFdFdFEdFdFdFdFdFdFdFEdFdFdFdFEdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFEdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFEdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFldFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdF9dFdF9dFdF9dFdF9dFdFdFdFdFdFdFdFdFdFdFdFdFdFdFkdFdFdFdFdFdFdFEdFEdFEdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFEdFdFdFdFdFdFEdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFEdFdFdFdFdFdF9dFdFdFdFdFdFdFdFldFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdF9dFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdF9dFdF9dFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdF9dFdFkdFdF9dFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFEdFEdFdFdFdFEdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFEdFdFdFdFEdFdFdFdFdFdFdFEdFdFdFdFdFEdFdFdFdFdFEdFdFdFdFdFEdFEdFdFdFdFdFEdFdFdFdFEdFdFdFdFEdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdFdFdF9dFdFdFdFdFdFdFdFdFdF9dFdF9dFdFdFdFdFdFdFdFdFEdFdFdFdFdFdFdFdFdF9dFdFdFdF9dFdFdFdFdFdFdF9dFdF9dFdFdFdF9dFdFdF9dFdFdFdFdFdF9dFdF9dFdFdFdFdFdFdFdFdFdFdF9dFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdF9dFdF9dFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFdFd3d72e3434159c8c90827caf451ae782df5df59f25366b2ab96138c7bf7d08b343aeea3120e4f6a7f729af20f13c584a79d9c7df4eb14b2ca01854624d20f5fa440327ef5d61924ff03b7680bea8fe805fc4420ce5e103deaf56db9a9601079dad462c3445e279862a08d8625467d72f1ef33092ce58242e7e521c9fb59495c67636ae2dbabd40546760fd363e40b714d746af90ef47d2a3e3704d1a359e8fe53c292b383bf62bf47a1a0031050d97a81c49dcc5f56ee2ad70d067382ebb0c6f6607a78988cdb4584ade81a43cd8c63748ce1d116e320dae5e52b15b0efe6c4d61d7f202d0948b1913a86b3590358a83f2b9d0be5732bc5e558a4c9ebaa928fe0a876bf3835fe06ed1dba1e8de3aa12fe18ea0d6ae505090357985cb29230933516f885d0b46bad87679dc9b36905731d6834d728f306848947033175dc228cf2319519ccb40a770088dd9fff78496466e7b3814766ba6f901037d098f8c1ccc20baa302107fe87d46fb7401d91aacdab82e2491c7c8613b0c95031da4e84471df89619cb26525622db08b81f27e7275f1c1dd64e57174c06e7bd79febdd6aec31592a0294c9e276b3d65987f470eaaa2dc024c33977f409a6026185bed4f55b571c2738b88cc09f74b4b84ff494f71bb93b3df25675a48178dfa7ce98244c6024dfbb4f382a643d538fda5df16cd9639085cd64f5877f63e4ef41c9a4c3b7b1392226f3c8f9b858f0cb601c14e0dc88a73e24caa743776fa424aeeb27bc37402e7ec7972924a4ecb50dbb7469221d706b958c2f2318dfe3d4adf23c6da0f2251ca2ac85309fe8a4bcfa4a53896c9eed83fe15e44638a9fd8c2d3c64de92bd5fb773d87e25758e5a2622e2fc0890c2ef7ed4ad61ee8c6524bf9e51fcda7ddafd6c4457adc2cbfb72505ffb25318a4507900b186542bbc07c8b2cdda872829d48a3c9737252cac2c3d060376051bd400edbfa60ba7ce9df19101937ecd26d11cbc0b8ba07e762b5c8653db0e025e5588b1b1c57d4473d4926dde2a151c147968ba5d0d31912cd6ed3f7ae6acee3066a462fde5d1142b8a16ea0b59510c3d9137f5afafc70fe18ceb5f7c8ae27de7088029263c037548ed3e920d61995c6c033915edb772d77604f69b09f9478711f2b058d925bf859200a3eb539894de28ce6ce536b6ef4881d480596d4a60bf3e28c53d0535c1b8a92aec6f1035569e8d5d99533bea624614503b1765259766e469cf6c5e53296d8d45f3bde15d579000aa27234c69e7dcce7ece7b2f76a0683969d5f19ebc4b6f52cca5bb792126483b3b8b75e27417e08e9473eced1c817088495033ff5afce8d9852229d398a081a4baa52cc7c6faec669260c6b454edf07c7ab2c7d9f020505323dcb34c975b96f5833e2353fb9e7776c9fcc028ab726c753aaaf95af857c9ea520784a1c863cd2c04be93d5b3b7a7e72c2b71ce79f44d8698d0392141704a8d40220b1dc14cbb8afc4c5fc8b24f119802bc77ba324e5e287d6d8056192e5272aac5c3cf236d563b9bfd5414a249f99b06d79604cc514de3981f988464c6a856402fa2b6869fbb4a3780353ee569208271db49a7133ce115c53e62f99a390c7002fd9a130d36dd33d078bf1ee8a70ec6f0698cc54b613f13a5b7dee8d5a8185fe2e847b626a96047bd046b1bf05714a925ff4e91a279e30cf4c855898d599c316f557bf7eaf8834e40bcae517059524ef2b4a1c05f86d32dee7c51b6c407532a77a61e6e6a9ac8d9ae9a71c183955a31a181ae2f3661446e7cf0d3c5d121b9e17fc2d4ba5049549331a94a5cdb297c4e17f08e8fb39f3869602d91d6ba45c56f0d6266846d7d73649e4f90b9bb55ea9055cb7fb989a27fbf11870934740228a94633042b9debf4d116cb93daa31b9e9804a50dc36b5d1b9a98d1afc924ef79089514bb9419a40ddbf9e59f91dc0bb81af273017a3ba6c59c894c17829b95edc22f0d5af05d2d5923f6b4ddfc7a97a56d5c2b52289c123b7fb629a993aba08362063e884fad36cca56625fb735388e8f242ecb3efa6b5e3457999e16499191985106db2ba5ed0607edadc1dc3ca059d67394db68a931c6b373598bdc9293fc55440f0ca9aa37f793f9652cc9cdb4a78abca35e1c2a5aba26d472dd5df12dd0ca97dc87df98e81e0cf070489f7683a8fc4af41d9ba7d0fd7fee699b1b1f5b287a4f0b46441e38bbc276584a543a5870f22c21bffa0ac6a23664905c3427f777c49a6a0ce66f8c8e94d64062a0c9d9b959c59560cfa011c6b031e4247f05e473bd1d421ef2ac855a7758d50e315177e68bcea86b2d2394fcf98b899afaa3614af301ca85900bd5e94921a0c32da3ab29d1f9aa277c91fc76f4a7075a6258d40d13e2e1fbefe346394ded3fca8cc2ae7eed4e0ab7c8a9965f6996fca2827a01426483e6bfb5910e695a97dcaab71b04facd18ecd60cc0e749c91db7638b5a841eb65b95336d4b0d2d34217b18147e344e6b1ffc7abc35e99fb24de9dbe2e734bb3086ff14bf0ee87813d92b32f982f893c09c86066854e5a39398576db00c2eaf8da38150c8b1008664c4e7362396af63ed0fee3633e2131bbc1bd9b1ed865fd62fa5c279edf8c7a8c4548b39a28a54a9992210ff570c5e3fefae68e089ae0ccd207d5203503f9d132d56ebd60aa6fc89bcbcbe529b292d59da0514367c2fa7410b7852108846ae3386b317a38ed57b1afae8fe80e1a6eab67b7a27ffde519956a732160aa3f96e43d5da9db72c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b091b6160357012089ff9d49d4e5b65c6481e030e3e44a7aa9fa2137db8c923cfd0e401af1daeb836ff1832b140f73842686c83a36541351db6db77f36b1d451cd52dd61eaeea7b8c4d953b52eac27c0b16ed7d18ff1ab1f0e9e0cb0c531b4a667f8753506a3a7ffe6910c4a9458fac0732336224d3a768e12c61752dd751870480295e6cbdf822209e231a9a9dcc330e1f3f9d31a85ba6ea1778a617e51c382bfd34699a2efc86726c058135bb47780c596e4bba2e7e36150cdf5c3c8f44ad58a2fb702168a0fa3b30211e339f672d83ecb8ed6ac170d7fdb892ce24b7ae0e6be8819850f8e3086ea13cc411c4292e2372c6c4d78153be10d4b49a3a6d54817aa7db17cba4c54f2c4ac6f0cedfd66a5efb0eb9aa936159352d58c66509cfaa4ec479d2bde838a70ad275f3cba7362a07bb342542ebb197b9a7cb91612d8fed369e773434837d1072f36511cf3169d149b1a56685ba0928c79fc19aa1369af071edcc1e42d288676dbb9a76c2091382d941d81a4390534173a01bab15a3b20a7a74b1c495fa94ceea35a1c22cb817e1648b3cb23cd5a43ce3fe4dbfa482fd1801f89897f6c0721944ab6d15cc810f26e03062cd35dbaf8e66208676e5ef7140dfcb53ba35a66d328915d012af2186ca2970283f9eab6d0058db4227b20260b681288ac87dd7fc264ddbba75cc8b907a68d3903faeb73f0c6285ae2714ca501a5a9338009203d0a85ede5cc2dbfe62e7170dcc7bb41c158140f0f8bc49bc30c85657a6906a9bcc2d98c66545f56a2abba69a214303f4fe91fbad1bd71fa5aac259cf5f61ead437cf74b68e2824fd1546847b4980a12f41086c8383533c3b820a12db422a78aeef7982157b3673603ec0ca9fee565867fbe916936d001e157d297a9dd3c33355e54fa815fed023ff1e795de6e5bcd7cc01554a557a1c7aeae31b4a732c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09581e2ffce95d8e6d4d63f0c2bdf8ed670285d75852c56e6e5640bbcb4dc21e97d8f655df6468490d2fbd7c4c35832d36afa6d53523acdabe7703787b5b14f3a2001c45c6d08eb13141915e9f74d533b6ba68193ed998c6c35cba2443593b3fef881ba17e679f9bc0778508ae05304a2d9781a4065d02fcf30131045c61fa46066b573674703a97a2f3a2253bcf0e6157e08111f4c4f8110ab6987d918eb2dfcab649198bc7b084b6cf39d0ee1fbf9e7b6b32c80cf962bf4c02e6978d3dae99686ebe0eeb6da7ba61ce85fdc4e1c06d175bd2eac225d98f84cac909f15f3b947701a6b64719c1ac7795e29366d0d96bba4b873f936c2ebd7ea55ad3ebb80242af71b96e77ccabc19c609772c574c0505ad472c304776fb62d0c053def0d5a9c31e7fbf48ff91eaa348395b22d842f570cf2e65a3d2c1f23e1a4ade7b4897593063139819a78a2fded30dc26f27c9473aa0b190dab7d0ebcf4d07c8119d18b3b4e3a42ed1cd4ba7ecaee5208d419db9344311079fc4ce88ee02a582b1ee3ee0aaa27ca9bb2d0621b7929156064307b02efb0960ca3d503a534463180e355997d189e801c53cb769d73bd2204e36c4515a693312238f7a87f9111dbe3446ab73d9bd3de558f03b0dc75985154377932f556e0e3e521b4145431f84888c8ff1e487a58adfd4746975d39f40d3cf61ca576be689b68b057fa60ddb116a7484e6427c3e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8551248c3d28ce2b064dbc323a20fc7db527dd233e6598ed8b9d205aadf12cbf34e867a98ee769795a7c30f3acea9fa4bda3b846bcfacc461c3b0075c7cf548671cbfd0bb41c01004857246a003071747353b9c3c3ff4e59959980944f82e9da4e116f44af2fc552f49ba861e27e2f6aff9a7188098a3262dc1b34f031016a57713e606092c52e52d561e42d22661ab41ebaf1a23bf9f52059f6d52fe9827e0f6522489c5e00f9b2ca77a29bd8a07df20768160b06d3c501fa520ae2350db83abbc246c101ad69232414ab4567eb4c7fac81dbea0aa19f40c5b13999ae43519e9d457fff263f1e0f8856c379e63b0d34f3b45a6baa36a250ada6590961f48d77def3951f9f20027111aadd7d5258e57d2764e72a513612b73b29f8d1b43148548aedea9a36526ce61165286190d31ec5cd9dffdba092f902589bd0895c7402277b35bc9d5a2416e1923574d12225cd85a8f4e517bc05f360b00baffb74cda0ecb24c4b58917adfe5461569674cd4bd3e5fb1c3b789785157af8a9dfabcf645261f4a6906a9bcc2d98c66545f56a2abba69a214303f4fe91fbad1bd71fa5aac259cf5cb8135535be27c3f3bf63df0907d2971abae439f0203b6051affb90e2847c8a5f9e96a0f7838a5298837a89223271c28dc33ee74b953a11425beed7fbce5bb988d5de817fd1f2b6214d389581f02a18087946adebcd792d5e130c24e1c375f5628cb77864808d120e180bcddedf1b24ba7bdbe366a29f1e7e269469108d748db77eebf4792c6b106897628cbd5c63fc287921572a5d343b67d02b9d9e30793a9b40e1c0de092cf1200a2716642029620a154e98fb763ed63356debf7768652caff4bc1e665391aabb7d32b8f0e6ce0dfdbd2e4d6525d77f213f3122d825ca8701e97942c6e62becba36045bb5ef1c10ce86c80e16eebb471672f840a6046e5226330622d6b048f2e01b4b27064bb7ee3b94ef52ba5eb0ad1ca592c92d996aa92c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b092e1ec58feca23fad7159e41bcd36821549f8609e629b9822b7dd541c59f4b8c01bae3ff7d3f08121bd65e5a3e3a00028120fa38e17134194b228ba5f61a5d7e331c4877c641ffada00285181b3b67ad333e991cb1952a2ac0ba99452e22c48e70b5f1ee1bcbb28de35df4aa47377151c65cf75578b0cec72637604776a2d437eff105271ec8b74e1b382003e3117d2ad0becc687985c4c1c0c9c04ba0df73b9266f1251f2a62ab07095b5dcfd9f3871b6f075230a2a6e1c60edeb9cd10bb481853a6bdc2130822aa3d396849a82497c41682a2eea75152c6921d7fb936b9effedfa0765570c3138541e5435716e2ca77cd4032daf8d3903beca1305fca8021e372eff3fb4e6c5d271e792814483138256291bd04975f3bd5ae8bf5d01711d525bd83d3f21c4d36ec7014322624071cc5f50cd5246efc667dfd2aab85fea7213dbe1d2bc57b1f3736c6b7c8da5e63120a73db731e286ee61c8d691cda27a0086197bf2efa9fa8dfff63386b64aadd66819187c7f3f0e97992ef3e261b2806ee2db4710166ec3643f3bfc34da54c91237cfcf44cb1b9c5449d3dcb6d3c505b046d0c2287411f0b0b5af1b9fd23d866f77929e4ca6f487e0fb3f3dafa83afe17fa7e7fd8ca88056dc90b9be5840ebbf6b39ad1798f7340297d2bcd5e71583db489aa88e976d94e8fb011f3148f76c9596b3f4dfbd739ae6ada37505f773f693f8cd8fa394122d4f85ce337ca5f5b9667a38b2a633037913ddeeb65b4d0fecee83f9b4cc85b05770692b3d0f7ac24026a15ed5969ffec02816265107bd712aea8c4375d00aee5734ebf3faaa5df71a223a4215b0f9f33aaff5b6c38df60f33c3330f343423bc0a8dee4927aa1b2805931c1b4db3e6610e7ca9864f4b1b9196a1d97fc363558e36459552c683c46bf7496b93ccefab5300a805f92f4d75bfa9cbbf5a923bb4dfa37cd8c3aaa083d8e6f46cb47dfe5b273581f5f5ec48ba801389bfb7a3d28c8f6bf88c7027e7c2f5c0d63926ca604a860dc18d1c0da47a6fc5cc86605d41c88f9788f5b4e968b535cdd90084c88dbee598b460ecc86512d5176fe94d53924259af4a1bd8054ead7d8fa99256d7f1169ffacf8b089f185a72c2f8882abe4818b7140152df9e12ebf0eb329ff66c8e54409568570024c42cef9478287e3a19b78fc29bb30df5f752545834eea94b617a8b98963455a691ee196837de67c17e0fb2a509ab14e34cf88b269145fd4620109dc791c0d9060ba71ff06392bce8024509f91bf221b8f946ef96ad09120e03cf9f1e5b5c74643a8a0c0cbe9ad9d6f9f1d8d0503ea3dcbcb4fb6419b9538f3cf3b39e8427d9579194d439b82bc09ee6fd7426f77483be57887b1f717545cb956ae95d153c25db1cf898e7f84d71163764903ab8986107e42732c347d362656b28b170c1b6e796b35be1805c2cb59791971cafcbff1f957f1aff446f4bb55b093221e0f9f811feb539a9c48b53d7eadcfed98e1fd7518017da97a061318ffea1eed1efba137b719c02d8eb107f2949c586bd1950dff037375b65e69ed337639a0d62a6a45db7a0fda179c0ab317e6a8f51c750319c8a42cf956b23915f3b4b9ca3a5cd6a7d1583118ee1ee183996589d054b8dd1c2cc75ddf60c2308ef31e0ddbee3e4547afd079550f6ba1930cb028ef90b8ac36e9caf17f0b8fffceca64f1bdaea1c59ad595dcb52d5a4118c99f25450f5f2f0e05460cbafdf479ee3f93341f797c5b2203eb225e86065a99a675c912b1c24deb8c6ae5b88518a66530cfd999dfef7bcd4566296d23fc141dff1da5478c4475ebc25a64d912a265925573ae54cc3891900b62ed86e7f4aaf5a7e8373179980f1595775385a8d02b64cf7dc4b4faf56bfb45c647c046716c40c19614be9f4f63490b9bfd5a9fd913249782759d59aea99f9c47efbe235f7bc07d25f6db17ccd2324d78a983317d4a2ae4ce513827d803991498dd6ad3f897caea1fa7aa24161afcd9bb6687ce8f86ce457ff16a7b8bd0b9ce411f8dda285ec39734e320cce4388430c3df5b9a56ad96a6494a4e53c350585dedb10ef7a87f8bb911bd2c50841ccda7024f0f0c9e0d507c2010abf7b65a20f7f4c2c0487e1276029ee6a9dc29698d26cc8293b059ea89998e4b4936e799a934602b9f8f016f044abd4a5cf6b3a3952f65ebd0a7394bb649587fc1c78e3447e29c328e9c06fb9e9dbb5199f9ffeab97cc48f03ff348baf86dd745ac6a333e7f92715d8baf9c8a9f39e50e4fa7a186e790e82bb296dca7064be1392ae323f1b3a9b300ec0d1c816f8214d1b41695feef5478294870c8fd7c5633b34a567a514ababfcf2fcfcdf231c6783b46cb6328d9bf210076094050ed8ecde8bf92f5f51ec92f807ed2fd61e1a0ed330de8d7ca7936b179b24a5525ba3d61f82091f172ecde5c9d04cdb1961164c5fe0bcc6d8e00dceef4ba3edc4818fa3a6d708287f6ff0105401fab83f2f4dbabcd800629ee21a5b30d934656b77a707ceb0b523883a6013928a91901a70d98c4344c78f255ed2bbd8c9488d4ecfedc42c50ecf96e5d7cf8df8bc25bcc90d4922654a404924c104bdace338ab8d1c122bb16c6dd942eb85db2c9e4c34c3c88fcc83fa92d2a6e124c991a76817468cda0502c3b55192c16e52361981f88d88ef3225450939615177d3b6eeb078b96aacae7abd3c71c8458adbebd12aee94df2f3724aa11faf4bf7ff36fe49bd73d38d97356aabf0f7ad992dbf45c64a01f56d4232062f94707af8c87ffca19e5bfc9f621d25181504538cb0a6306b5dce26af6b81d71433d04da5b3b04130b23cc28051938f6fc0e1cbb45845fabf52755a1462f6df60628a1287cea5568528843b886bccf93429dfda810142fa3a17d7e02d71a2b0140b82e2ae62f6d1a4eaa716178d50d1b0f3194c47f0510f270cd18ca785e11e3b54e585661678faf98af52dfc43254b37bd566a994e307fc09bb9338125b8ae1cc55fad8a546e6832c4bfa93204665a9cf4673386f10c02f0f6f0e7532f8a772153057480f8eebd4aa0c3c818b13b389b4187131d792680322f742d89726330622d6b048f2e01b4b27064bb7ee3b94ef52ba5eb0ad1ca592c92d996aa92c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09cf1dd922b1aa15f94bff94dd558b3d90f19aa827bf78c88ea5a47e234993c7f0238c644183bf69d26c5d020117b7493123b45451800bb02f2e4ec37491f32be3a26c9070e6159fd1b9984b9c5c923be9a81c00a101c7843ee1cc41ca4bdd691538a4eb01107d885d44c4ae527ee558a68dc7535cdc7b5b9b63496d8b85943ca05b3bf0d7be0f9bff118cf424dca0a685458a11b21b0699f91b1563410db1ab16d1ce453a059b15d1b9174dd8e585f7bdad036f50b898336b86eafd2cba0fe3c1aed6861809d72131f7a3ec83495157a54d3ccc7bbcb079cf94201083e4a42463ac71355848bbf51536f4cd9efa05d7fcd5bb1f55163bcdb7a3293cd201facbf597c772e91f106286ded2ca7eb704a32951d96d9322915ec15a7904a059007bc8e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8555c1ba96f8c127aab4bd1253c4992b27bc04a62c8f1f48c1644f8c9fe3cf010ca02e27bb8323440c05ff9ca7c12eef1c4befd7411490159690180d8dff8d7cd2b302886c44dccbac2bb65fcde830856fce571ac2246ceb0baea8460cbdb8262d5375bd286f47ed4b45faea85fa65bb2c99cc42e9cef50ca76ddaa022bb16b43483f2cbfcfd47566d54aad520e57d21bf89e7d4531340c9a2d7d4be0955505e42903071bfb5f0ab959a57db7f09e7bc88a02d84fc58ef0a07fc8691dbc8321935c2c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09e651c6033c299a7f88c63620ad219b0da31b3d49240aaad819627ed446633708c460fd69a428f81ad0e00688b59bd8ec10edc2ab7847ca2254d3ad8bc71f6facfbe001eb9ff8a51ce65b0ee3b22ded44f8731a41efc0bc150804163f91673837603fb8d2a3a795605c1cdc4f7a3c03ee4548af9af70ec7b13cfb350693965f5afd7a48671c7db4b91d1babf5d30000e17b2361edfb3fd822d438aa2eeb79c551deafca7e71909b401ba47a4449ed2feb366912e6cd009f48d490115113f07b85bca9a15450b1d8368c4f2adfef540749fe232c0f6051df747c32d261b1d9b375e98a6a7a08a4f740f2930538a43efd3d7aa580737f94fc7ece1fd070f22fa75ab9736c72dd808f71721f8a0e8877b681e872f4e12ddbd37412af635722a583d091d0de0eb049e78789d75f488c41bd322b785c02c587504f4de99a7baefb621e9575c8a19a23a88d8de30100895ef78e526e150ef3e3f6632941c503aaa19e6cd5e9cd08e65ede30636c756e8b18a74087362fb0cf8afdc0ec2b1834b0d72a8c0b855309b00451fd1d4981988acb87eb2903ab091f4e7ba266b57f6fddd65d0628a420c46befff6e4b6d1a69745b018121c77827059895dba459abc0bb6640639765d809fb87c1b3914459fd78eb0b7eef53f312003aadb10cd1273db20c9c2a337f37c06373c6ecee8af65f2511192f049a9fda6983460a30cbf066527a95c5569af018b4434e9e0c2674722e2cc1a9bcc8accaf07e575ac7359569082efe2825fcc2e6705a0f747ac1afc89825ef355de382f75f4016f379fa1706336621dc976558869a3776361143f5720277c0b4cc4e92cf02d1b124e9c85958ad5508f501bb6bdc496382ddf07bde75a542e601fad63e78a0c550592ca5e60725112b3d766e03b2e26c8dd072d218a8d0d3081a63c65883546cde70bd14a8cc40d372fb9bd9170e1d9ba59bb5ca07f3e63c351882ea29229cde8ec29c43900d4d6a98138da57ba826cbbaed808a412d6a74032fe25cd326aa1996a84214e59e7ebe384dda3f6ead3973d63778ee11b5413b5574ef2a8031a695ab82aa6cd6097c1b255259cde54050dc49f32095c348864e9b65e66f55f961ac3c5c884ab1f136a770c9d5a8284d81477ff6a54bf6e5fec9d3d2f4043b59ccd67f04dd856787f685d44b0fac7914b195a60cfbd42d867c48abc88ffa07e426e0c295e5511d31fba4f76e076d418cd5df1321d227fac514244d41268ca89b5417a2e0b9f3431040fb4b8640432c10695dd0d2b367dc8abfbdfe3d8166816e749c5c7877c86b4f3f55911825bdf8e82a090097e85ab00aaaee4db448d2196a3efdda1497ccbfc4cd4b4c36250ff7f411721f118d1d260c771fb5dc1b588b43aab0e55a633bef5dbb9a5a068c097b61bb48d37f608d175503161a747b1d82ff60b381bcc0abe11e7797e320208e2d6fd8127f0da13d3e328ca1c3c30d5a6adda0d70a359b3167ccfe4032262a1daf7c2eda49865ad3539254bbd74c86789035d194eef7866cb236531c8c060c7eb0b45e6ea33765f1433e2417a425bbc4df24e0d594ddfbb495d4e14491f8ba717072d647c5db5343d17f8023a3fe182576bdb3b5b6573871ebe0717c709a807591555a4ea2fa0beedb19fac4455224d867b5e2e20b861c37327c289f3fdc3757742882578abe56131d7f25ce3fa16b27f24b092e8524da179bb47dfe2ed6c0adfa7b8ca122af945102098c5a133ec6269a2a7f2dc3b184ad86b562ea8d8cf5b17013f2fe97b2093f59b5b5ebe27abeb40f259470453213b7f29c947ed443c39a1de1742a33e28338e6bc8bfcdfe09d6db76e94175d3bca4f4a8b6a518f4ddf3fbe5b6bb49e3b90f030df2e65b31052e551e938870f55c20d29dcc97c7bc9c38388a87ec386d130d1989150910363d31ad1287df84b8c2d08c3ee24cbbaa710ef7cadab974cbaaef2a0bbd824fcce29aa9b36092668aeb897c87dd8c2f824e4b3a02f6cf17896939607580cc0011fb4987a7a4fd0cbfcc1a3a229a3a418eee5a42030061e6f76e3b9cb4f05ec0130ff1d61fc23e80738ee3b1e872fc48ed386c16d5a80983d1182607faa7c9923a498ae0660b87ae104a313ec1607890bacba69a4b1bce31c2d62287565a2689a23fb70681d4298d6636adc59f4c8b5ed256a5d9483d25de128c8f195182ff998fa34c2fc761694bbad0dea7be854c1832049d45f1215d893bd98b6d228cea06b024bd6fda56dc83c6b5e8c8eac38bed306176a3f26b090f6f12e03f405b242953e552ab635213c071b4a3bf99593913c8116455bcb266f3840c65985a2d3b572571531eac253e1122f0b76baca907ff86d1b8d8881b8e78c19aaa4be7a3d83a5e30b3bbb288cda1805486798e78915487018d9018e28374334ddf5dae3f9a14c598dd131386bbcd808df7fd33de5b3e1726952335aa109114922c10f8a002a5358f0b0ff7c396be2fbad937611ab8de36a982dd1279ac45ff15aaa88d208687c91ea6ba9e1c6656e90de25d6030e07be0ea529a2f7ed1b3749030b67d4441abf7beb95e8752961851ccec4fad4827b0ef13e30c7a8d21f07f4ad8203435eb568a1379c58d26bb20e401f4da4351cc693ce7bedc9163df0beafdd4b39aad83e10917ace0089aebedebbb33c6b4fdc8fb5f5d617a6945887bfdefc307fd11dc37665f4825726ca4b6d591a87a26cca945ec4e78959fb5f29f638f146b7602df23f832895f9f9b6012f669a25a93ac0489cb047d512f522d56177d5c84d82b53e8676778dffbb6d9925589417c4f9f08400e946b021fa8682665486a39ff590b9bc35d968c85f772449421c1282b4bb734c468da9c9bbab1c7e115f452050d706facc841a8ce8ebc8f26871268ec058f461d0138f635b7842936bb0d1de5245267f2fe6fd714a0e75d0c946465e18db23b6a4c25f6db2e3ff8a9ddbfe42546fa95b40dbee2c7bac277aad4a0a708fa83e7a14a82f473e7821a91023746e8521eca386cc35270722a39ad7b71921cd46d3f1dde0f04245bb85d25c885272d1b2b9fd88d517c975f5b49b0d6cb395c0069e9a85620f03d868bc8ab8335fd79ec5791e75336eb4338d2a41c140997f2a4f6940732ba092ed4a8ba8e0467ac8e1174630f15379c693beaf25a8822ebb09293c8991a1a7f055827b1d985b55dcd52410485a8be805bbb7527f488dada3bbff9815e75218e0f23e93697b8aa9ada7236cb94a141ab1124d7da580a225ef7177810c047f9669227d5a06e5b305874a9de120b489cd814455f12e89d621391c216b2b76fd8652beb87e47fc9f49392988354bb9f3774710540cfd05f5e8d84b303c4c4bec6bca7df581d6ca13c9c8517e6d68963ca37ed7b3d8bc6f864df20e4240167ac25ee5fef5a6f56241d64b9d83bc732bc802a07c8bf87bf12acbf4e7f3ad1f1d23e885b53e20f9fc1e1dd089c994af9dd829c15244837bb7fdfdb7c1c863ab661e8df20fd744e5ae895b1b1d8161bd73c2e4a072e3d533521392e6696f92e075f8da6eb6471779af28b21d8c39f4c5d12f082f79b404365e3f5be7396b97ae3dbb7bc36decc4802765fc0047eebee325c027067a853062317a965262e10aedafa2bee299baeaac43a434f79e96f4e7afdef0ac4b1cf76ce28dbe8ac8504fd87a8e63d4d03a9b253e2f1ef346b84750218b9fe63d6c0b1e3730b5be278fcf48d95c4c47e26d1767921acc0d05acfae4ff9e86ed22cbccdd54d1ae034e8c92d897f4b3d80ffeca765e1ddcde8e375db099156fed7aa123a1e67294a19c8c5933cfc6a477fb81b3a83a9d079bf6f931612427ca5070cd7f7130a3fddf07a123d99968fa33b4c1750f7c45232366d5527f4ce927b6e49df4eab57719d846daf2d0a782f9ff47f5d01769da487050b9fbdabfd7f1899d63ec86862d682c6b0ead14babb7f66192bf54c7f7d3219dbee88c163b73977663abc50e6b9ee95464070051d89cb465f13f1ae553bec7e8aa42b77c9282996dd009d0aee562f5a86af90980a628f88ee27f62b4564cbca385f9a7b339c2dd33ac699486a98c5bcf1613ec3e1ee9d44ac3c09438f905be8aef9a7b69624ddebfe1379f0b518ea82bde8ec7d9f42d0562c48579c3ecca8d29ee96b6c08987a6d6e5c19add316e15ec0687356e11313f447de5c92422b899b2a1f0565bffc4dd44b679a9c12ef5cc5483b436d970b7eb815a0b3f9246e206f365eaf6696ea710ec3d74c2d3918af886b4fdd410b589a24dc4d7397b319801039100a50c7435419d91321e9e39518a3b78f0acc3a313135ede1614d35f94fd9954b70371afb85ec079b2791d1207fb2612469f2858552f9f4e40fd630c8a32e85521200a85384bd1717a04f89552fc6cb3490d76c5e9c8a763b9739d464d1b4ec21ad8f5bf95a476c17b56b6bd2a3c20003c77430d0c2dee210418f9ff17bd9fb603290b237a8a68934ea3d9926a49effc7b5ecfb537e1dbf826b6146171d436e0c850bf0dad45c75075f6b8a4440c4bfead86a4491f6397df872c828bb4ee34749ac7d022b55505f4a29073fcf4be8b5e8af7be8f2670dc08b600c8664b6a6d1b81cd7fac4e1b426be179d03311318b9803180bbcfae4d9a6ebd4009b17ed3657a0a0fae1bbcc0243608db5dac04e28dcdd536f15b405a37e40f72891c13e37c0a703b1f883679c016bf7d01f8b122b47079862f968781d468da4b97cce7eeeefab41bab84db682c7bb0325adf4148e6328243a8a828e20c7ad770c52b6fae702e4826b6d96b1ec5deecb60b6d653190ccfeb18881f707b83e2bcc7c07f2eed1e914aa17c15c472e2b131b2a2aaa6a492b25add68594ac600a39bc76cea98d502acd1d75d627942c56633ed17ab067ab3e3d37c7e6d649b523ead364cf56f4944a25a0e10213aed24bf71d697941b5f741f53b73bc27ee4a55ed18f39d52cfe5d1fbe5ccf8140d07cda5417dcd6f207d9bfa0a654d55196b268d5eef0136c12a374d95fd911fc66048ae082e5bef8fdad3949d9054c9861bb3d89bdfe7647a1571aa8046e4f6f571e2d8b383f8370b3b610c48b65187c394d1502c0c9b33f819eba2a5ff6e2b9577b1712cc7a480d32497d1b78647cd1bdc312719579d3198356400a5be4f9164ba71efc9a447b44c9394b6714823eabcb4e928eab097318e6e108392f27ae25200cc84bca28772688ed2bddfa9615b628f26677f93964a9105169c6d589ae6fc63ddc1b9bb66adab468e4ef3fd9b5957cc19f95e0bfb56b4498aabf948170a1dad4105afc66b9319137366e6f4250d71223ae89693b9e863d4fe20419d6b2d66ff53c98742876a2aeaf0163feb039b43a9756867f92a9c5ec4e1b85a64fc66907239f6887264f70ea5dd790fb297104e2eb152c6815fbdd20764cabe1673b0338ce0de95aea872ce91c152a5e8500b23e4cd0acee608a039e922c761126dbdaad3769153589bd1c860219eadbb2319ae604547acf477a4a62ef5fd8fc9c2fa6826f7d765cc2ff5b899e05c4e675b83c00a7f20a0c522089a1d8dbe17ceaeb4af7cf28a96c01c8e17bd6c081e391edbe70b3d03f59089c5b6d32282f3c0c3816a2708d3a68a4615a1d6490d4623d2f68cb4bc89d220622cc53217022b0cb3657fc216e25b9a81c4574e9dde87aa0b388d6e908fd4aedad6a15e4a5f1a84c6308d96668e547a5f5536914a2976828387004c1bfaf9bf84a2256b071f7a0821b4bbce2a5c222ace880aa940e24b5fd44b1fe742ab04d85eb6e643700e7c911ea44534f7542fcf1c9f3fa79a119cca922b92fe8c5286a2112bf13efea9c026adbe3716f21673498cf0f7bd75c215097892cd07cc1e257a10e0b339c81edcb229375adca68360d9f2bdeb767fced212878bdca91c3c5b7b3f20e80d0b1b7f18993e2af99349160863fc25d0637e5bc6b7c9bb80a15175c7d4c5c88e9742c56d02fb09f142567772eada9e2f91aaffbc949b2577b99442859fc89061ffeac0ff6e46baccd045d587607ba32b6ce0330a4e966f15e8a8092aca8b07a7eaee0399d6563c3b7814ce0690b038d0e435b0898d149b43121ee778e73222174cbdaa9caf573eec276fbb0edd7aca4a6128093754f2f1b7fa151aeea7670323da4decd135774a9993ed3bc3fc57a267f48c0ce5efa8a0fd4b2fd50eba14a904f49974917bb3f1713e3c8260655a9e2529ca1c554b8fbf217ed74a4fa8b1d5562c15ffb86052d4892947909c512b6a5ec49d2ce3fdae12737db98210841ad16f323126772d18b7d5d23ab73de120f26b5c8a9665e76482383e3187e4fd2cb1562ba8052f7fc1b40ba47923edf565824fe59e468d6440cecf21a9fb590b0afd4b1a07d7c7c708e3f9fb0b45a7dd26514ba1e872f1ae4b60931853f436fdbe2aa0624e915af7de5472915fba6b7d5e201b8c81bfb5afbc3356baa7072c491737b2057740cc5e2e6acabab82ea20958d5e86ad815e597f4ac8d12c386851e34505a71d7c31cb1f67a13640bc31e59c300a78eedcff9607a77789b59d08084fe79d5b951994ef312dfb27040aceba9e0c1072368384442dd51296edbc5dbf62edca092db9c8e66d077cb88de49fe1f28d8a6f988891c9a4262ff669cc589b3e42242eccb032ecae08e4d230e827a18ee8cdc1a980b7dc19c6f50c06d0d2c543ae95b35c4bb5014d3e7f3ca6830fe3f84ddf8dee74a249d19f05c6623dad3853b9ba791c99093c878478b166beb8c6baf6e3d357af10bb7d5629de6ad49cd85ff4a4de02715d8d53a6448cc90da28c2b23cd151a5684532f79bce9035d0073b7d4d3516062918ee16243bae42016f010c31f80346b8268fbbe45ebec0e69b876622923796aabb90d1dce1af2a68ca7f80ee484f419438c64a044888b4d23521533abd1f58287909cadcf5daa72de6c1cd9b218e08c01372547ab2725a41322f2c95ed42cbfcb0816429f474c87b4d71080360269d7d185fc5b06e016819dbe0d760b39d5b7e2679e707955ec20889dccba3c3d9ba73de08355e6511f6590523bfb7f0c8edf60e7a31753a392f9a941d93c5f9c836ae2e1b8b1367af4cb8904747b58450d4f249436095ce561c2f3a5adf61270f592f4d8ad807237a85148c14c7f1b445ab6e1e4447aaee164e3aa842570b900165416f0a63651f4c11dc6cbc01dc1c38b6205576af6646e532dd4cf8f62e3255dc76a02222a86976398a31cd779e2d9d97c201290e8c9759b58f7618735b805543c24c5608c49ef6d8cfc0406566fc92355015cf9277abd3027c13edd0006387337d9cd5538921dac51dfcba5ec95df4dc2eba974565404d7ef8a60a4ed5505fb2f7c0fd019f0e7512f25525baf701e521fec1b1f9a8485c4f7d395f453976842d151a3723d0d66ca3a62b2ccf946385c7b5b3885be4238e1b5ff65e7c8728df020c5c1b97bb59dd547fa8c98ed6ea3612ce99da4ba90c20a56330c2bbfcd6716b78b09aec2f25ec151ef5e49dbd3936862217aad990aca9ae80d51d909aa65ad50dc6b834f8870b1e04d3e797704e4c39253652656d934d223acec95c8328d516dedc760cc6b9b310359be96e7387b4a0347e745ad4908aca5d8761e8809782b8923e7f05d255c44e86eacfc3ce8732aabb9216a1509d3f9cb5ee497ecdd64069ddc50d6e5173955a347bfd36359b1be231e6b53d6422692a351b00945deb11a7023ee7013bcd14c1d7822441f9663ab0f77cfac42bcba458d33c4bb9b197120eea402693946bc87f54e8187edc7a98a15ea58f5e95b1f4fcaabf1251d0193eade82a6786881e65dcf57ed54b801307e1c0aac61f7828779489326463922ce22ab832b3b26a532e9a9d8b9c594b71bf7367940da384dc7c972e0746e790b1ba66e6e7cef5fb7b3b9efeb312854aece4ce0a89c3a01efc6d89629c3c81a29fd1c6efc58fa2fb09c12f3447ce821a90b3529998268b32f1b15afde3b42ea2e0a85c63c021d3b682ccfdce025318488adc94175fe0a04f373322712ce3832e7ce267dfe9870927283ad7219a3a693422f648aac2db72ccba6f4fb1ca46905ae2490e1cbafc79c4f6a663519fd5f1ad51f95a9d04ac0efa3f44963596f890032994b71fc703e18e844a9b33534b7a18061d00057e8e4e0c458625a9e033b9865d60331ea04805d5002d8d564871724afbddfbd1a2624c7a0cf69099ba23d1dc784d224c5fc5cc2cb6b9262e590da5381d4faaec49ad7c0c3921be3f580c94b112147addecab9b4b41f3cb70d61226aa97b09a7f109f80d8cfd74b9d2a0e98d3165f1dac82f283a5803422c4b617075d803ab772f736fd29bf39ad61b392ac9ce9bdede3c7f546274a717a77aa0dac4bc150531c2a8eef5bcc53b3788d7d71b09bc220de90df85be46292008aa9aabd5c92ebcf7d7fbf5e44374ec6516d687e8c045acf3f7bf1297ac00ba2e47ffe054a5040cafe03a27dc8b7f0b29ad85ceeb9cf09d0b92bb9e7a2ebeb6e55ce27d527281ba37bc3446c39339cc73b6a309f1910aa635486fecc3befbf6e1fdcd7cc5ebae0f47a635f4008254ebd04688d17f537cbbcb08b26a8e47c18582a324b3f90229472b7053b9a6371f675d37b14492683675668d986a84c4b9097139e3f9411c1a0a424004e30a09d002772f17335de5369ac612ecae9da6042dd6c155a2fc19cbbbd651bea0876c2ef72aa4c135fddb4f7226f9aa86a3f597d2254d2fb5d3a5b372b98344bbda390cd60ef3d6553653608c1a7372e044212ef78a659d2c2ab73eea8cb5c115ca2160e6b6dff6d3ea27dcbb797cd64f5ec4b393d3fe064e9f360f237267f267b9f8db2f0cb2e436628758132f96a53e0629e30acf94557dbd1c8e649c1a0092241136e4dff3df7720ebc5dd7798b101049112604a98781737b98741cc1de4ad1fd9b7e282b7da41b5b02bdf815654cb4a29979d187b0e67bd029887a929d87de350597b4579ea2dbecf490d6936c504d3c55ec9e32b93b5c580929efc4bee329ae5303e93d020b1fa627c6db0ba3a8fb3d9ff71c494ed9e8b2ae7d739fb194f2dba40c9a973a525d7952cd8bfd6f50888f12ecb6f6da70d3a6b3bca03885ca9b5c7be2c02da7a32df1360c33e64c8f82d5a181d7de918389a115b6162e0ea2505f76c1f1a1286d57ddf4b89a9dcfc0245aef94d7842198dbd2bba5e52ce92b743a0ec0c5f09168e4d81c34cb342147a492c87cef529de0bfe781408e13aaa2a043ea4b53f3e545d7027e1fee0af57b77ed043e76fe7783c51049487f1b19c1448dadb3b42eb7b212dd2eddf3823681043327fb3220b57044c0edaf2fac6673678ccdeb99cc10c58f4ad3f56100ba84f68c3d8d8deab5a1c08721814999367d4e6f57c005ce3e64f33877e20e720670cd0ab56c9b4173544eb7183f74d946f6fc4386e62a078cedbcb42b3777c95a4ef6b7ddc35be381159d985657f21ab235233614ca6c1145464213a77b491e89f86cd3e26454c1b92937c914b83a8db322488ffddc662cc395900239d7fe05c4829dfe5311813e1e2e0a12b68303b50334f29230e1c6b148780bb45d7f2ae88f615ebe300e508235544294f7dda571413b1bf97efc3c2977430db2bbf33b4e6fdc8484a7087b7f220f538f46ad5f01216a39aaeb00fff64e47ec3283dc748d9dd57532b767486eb052d80a2a6cfc485d6b9dbec5e9dd9c311d187ca74bdd52899b4c3c9b21654cd435765eb29663615affa725de66f80359072d31545dabb2a7a97e264413235508a04cb313fc6f88c2394041a6cb1b4868a9d4664362206997cc06b697eb5c82b2ff6a3e9baecb455d91376dd4e317735784507a83a0a873d2f0f71d3cc4e499a5960891d0f8fb7cccb89f99854e51ea8ab302cb60de94c18ecad5aa1a88e3c52aa374c9d97bffe2b4f0357ac46579b49ab6d1f6d9ba6fd5dc07b7572c9369cfccfc39a8e159faf5d2004ca2e46788185317508d4c5a0fa617ea638d83d71df8838e266c089cd0b2b4a71094521f9f56b7aed87773ddbc99b9a3310965b0f282ceb1bf95b0d69eeb786e9b0ea8eefaed9855f8e48cc1274c168301aadfeebccf0af3dedb8aaf087f97755f9aab5ca192b3f7c9ba5888025b538fc77121610f7df259a06c0f903a80628c75544734c90253cf9eef0333ea20b9923a84238a8d010f5707aaab4822a53efe9edd7d79dcfe4126a8d3fc3da532a9b52c078b65d2921019177ae7e7566261371f99ffc5398b1c5a1326a3f6b96db2ccb4640251f0637940e1f751e81de226d94445100efb51228fc7da579ca586a2abee315bc6dc298434ad679373a356ab97f0ec4da656ee3aced46c84a9eb3ae0fb0d1395466db857db9f489f03ce969099e18f58cebf36fb054ac4cc448093c9b169351ea7445127b73d43bf5980e3bb0ef9a46194b81a7b15255ae3e5975219b4ed8a74cd22fcbcb38b23a893db4c18c7dbfbbc38662b8a8bb40173816e73c24cdeb4e14347d43173b0d34dbd557fcd5bd96882d5344e5e22dc26229b5b86a848dab20e45c35ff88f68fbc5b2aee00bf34d83cbf355e6b5c3d928168e2920fdf3fd87b32be62f4cf5c6e1fbbfff7f52f78eb36f3abc323f7e8f833472e69576b4607fff22f76cdfb791f06c66cd5bb89f345319b382de6ef974b7321f3b870fea452a9cece026ba76a46255548c6e05309b18e5190025430233eda9c4d0f72ba0cc3540b240c07f07b3413b99730512e69202d925c5087c543fa6de7a782c634f13a09425a16d7bd1e32583a02c62b7997d969b3a627c3c424e5fa6bffee448fc07bea817ec72c34941c030da6783ac7f3dc48074216beafc00a740d965c61e0fb15f60463537b6375cf798233b3bbebfcf8f034cba8e189778de6e2c7ecdbaacab145ecac4e5e4c7c04092f4d302a1379c65c28f28a4a100a268603a4a7780036f324330e86bffd157257fbc3e89c4836555d52ea9c6fd667631702eb57ac55ba3d5636a978791813b04070370e7222c6d892bdf4e89c0ed73adeb0e749aa47db0e9322e633f8902dce2da566986c66de4f28e29284514911280f7f62774cf401f4e2c41da6840672ec80db2efe101e91db5765f61f692114dfbff29b4251022fbb2ef7865bbb573bcc8bf977ec8b43ef4a0e3128e58ba9d8b35e7b1329a48a84517196559674739baab09c25f9d98cb4ad982998209593a22f9095e80b54bcf8d7b3ccb3c33ee59f33292bd6bf2e9dc4f5e7127a102c632c06d821111f5235a3f785d1d4111c6e05b65af34db54ce7e825b2853ce49d4247b27302dbec1579588b6cdc7177e1c393866e747ce3a38a8ff89fc8fd4f66ed14de4a3cc0ecddc3f631621f3c9d23f76d4fcdcd6144a7b0f7590cac04789ca54793d0e231a79bc8f1c034896a887ead08653b9e8ce53909886115bc8233d8e0138dda5e85c4b2454f112ee02b801a72d8b292e3da980e25afe6e47c2d7047f692e7c8d7cb2aa78f68436c82954a492f741ffc4e123577a26bc5ef60b3b83a6b7ab20ef4b21a296774cba1c5ef435c578062dcaaafd1548240770aebfbb54271f51ca06945be507989f7bbf8b31a7d2b80711cb1eef2817fee8070ad2e7ed27c3794854ffa46cb30e57534253bc351fe67ea797b7e1f889a70fc57ca25a6848f3fdcd3a2860a95583bd7df007b891ef7738fb1d1071659bf6885a725bf39db5ab218a14fb9f518a788a63fac9c7547800cfa8f0e6d4a7d64fe9642797433116ea8693c780429373f2d8a68a5b28a7a4ecaa597bac181dfd0a0cf098f9360df2e3f993c0e0fd92560446d97311199f595fa0737b7e6105488dfb485d54f8828e1f105bf4270974c200923b988d2848a18876a8ea2e4d951cfe8a0f244329398dc6baec0452dbbf4e328a238fb499f716ec150f8ee06daee231cd474c97bb51d3469fcfeeebce121a6c48f76571005206690199f92be5ef4ca3e7c123de5485ec5d968227d1ce822770ff6a1278b879f0a2df9d407174e406c85b8ff06a51a894514a719096130cead008a0a7200b30b9d5deb2866f39ebd942aaa5b4bda1e1615f032b663395d82816800f21ca8265f0661d1974f480b1bda242e5f4f85cfbb56e83a327ce020d32890d5d868f3b1dd9e8e94def3a37df91b703e6a5c2e928cdbf36751be24c4105d7523413c6f3836ae26f84795332487161e773abd775b07af6f94c3e82f30800f119daf8bb642c5b4c7392299e870fcd44e5e25fe913447c3ae3d7cc6fb259d9e9e55605ccefe726e3e7aaabe3df170fab5f4a57db832ccb19c705d3e3fa6c994d2a717bcc862e756b15ad5343178f9c152362e758e97ae24c5bc9cc1a7bd17aee4030102141a66ea9c9cdabe8dc78ec1dc3dc041b48fa8e505728f261519e7d79648bfcf1ef21dcfd009d15fdb9b5633f3caba2f216979020102161a3c4b47496ee4c441d2f1cdc0de411b63635ae3bcf9f220a9c824e1ddf90c5241bee9116405f6cf74ccb42f0bca656adae015248f114c4be87482723c8c8bd04b39d85471165843a12338196e4ef33b9e1d63b4d780baadd0010c309cf3689112cac2445f548440a94638a6859a4f78d5add81946b4ec840c80f67000079d77cb1678e815b8e61ac3699c04c929b352faac2a76b784022855e56fddf86f6de6bad81edb05a062c845085890483d959587b1bb6890debf869a44b2e0aac295274b6bb2ec5fe123bc5cee4b31fd734d7dfc21151365888f8ae21169c61edd419873b6cff916f3c8485e721a943f74d2b747f3e44256df498a8031868dcc81b8639279eb962b6a66ab89902cb31542e3d517dc1fb9b720e6b3a3b252cb5a29f37388e7cf4cf7a2829c80ad77bd39da3c3f5fcf25c9eeb0963ffd803d1c732e4b9ad0023e238702c908b6d6fa38134f06b4d123f8b9a612622116fc8a3125df8a05c6fb0ef365e785980b4dfaf6f77064eda451d10029ab51006fc5eda1f1be3b866861bfc1a3961136f5b072a7f127af6fc80865f599ce721fa53207eed8f868f53c7090ef65e785980b4dfaf6f77064eda451d10029ab51006fc5eda1f1be3b866861bfc1f7d272fcf770f1bc5a6adca9b42a41a58a4b444f2f7620fb76a047e1f2d0dc04d6e4a2f14a7745296e96e75273f9dd5216e6030310a5506b41bb1d4fd6f09a2fcca3bdee93104513a9e153272df35e0fabdbce7812782c4a531beb883f7d563dfd5957d5f2f807ca519bffea2e47c19c39c40cc43a6164ce2a7d10d04f3e0bdbcb584fcaeb966b18acf1470d69fb46551e75f67def1435b140d50587ed98933e411e00e7118d0eb1a4b5d3581169e76b988197e383238e7f8738ffc78d3aa310d486cf6c1536256bae77f7e21d37ccc2228f1e5b777a1336c43878d57ebb2e2fd486cf6c1536256bae77f7e21d37ccc2228f1e5b777a1336c43878d57ebb2e2fb74d7809c6c9f24c7ae89c9647b42a07894b89acbe510d1657cd0f49888516666ed018acf76703ce37fdd60e554720394a67f85ee17fa976f87ccd6f90a85fef755650106a8ef815d0e5c231df595b678f9d302a5e4a6c15b38750548ed8e51bb16af762aa022ea39f4776ecea22e8bac14deeb4cc9c1bc9ce45a77568502c5c2a090e9239328c44e297571b39e2928bdc5583dc88e76f4d47cd93d224b24a4061c861fc80eae7c95fb1caf75496358f0b0f174f8dd8fc8fe4ea619b8f88ce0f77cf8c2e90f69af4bf3d84b6eb29805e04d83a30cefb5fdcf044611941347fe4bc4cb146abf2fee0ea7d74ccf071929f83b0ddb6151657aa7d46a3ddd05038db7be367fb4955982d559b55835281056822bf814c02f3470835fd3ccb19a8ee16be85ee6290e7ad84ca97f7ccd05bea29e0ec90c26eb506ae15a5e95863b871172d1d6d1637730063f2d87b8e198b5617433d3259c7c3ae325b3e35b71a51e956b7cbef9712ed67afc2c356248c18244539fc5337535a562e5447fbec0e6697bba77d901272613d4cd165ddeec2f6b5cd29c730c5d85522cc9d97b91a86f4ede6c2a01b3d20372d5e70563c0fc36d2b630745f1ff96040b3f8fae7d78cc95d53c20a32d4af84080d355b2c6dca17a5a793c9032d9d3b401a917b07f72aae68a34fbc1fe26a578f27859bacb39e0784b9214942224af6229f11e07fd7d9cfccb4e4b08928929f2ab49b1ae381c088ee8783be29c717b5bdd353d615e7db652ae7b8a258812d2774113757be757d59435d726178d48c6b6988d4ff1f7b68d4c7bd824d74632b306e9b8c9e0c14df58a2b7c3ea445606b17fe5a9305b8007fa656a50dd0e921e0381dc01a1cf69366b4d38c3e552d86900cdaba1c9de8c5b69162e4c3810b7c30fd04710e0ff6ec53c0f0faed747bfefe21e102e0e8b3974a6c082ef5fa835e9f25b02344924cb6a6bec4975e319ebb147abc75611c92b6ee726697570b55cc21ea445d0275e03a50d697a2ebc03a6e4cbdc13f26698b02aa77a581c531a2ebf1e95e634b38e774d548fd04ce24d49bb407029a6fd04cb97ba5ae28da99043e3e33ff73e2577a222beb9d1ecfe94dafd108a35f87d8157fac9ddaadfce7361081470a89f0ee810a78d94e179976cfcbdc0e266a61f4a9798e60183508eb116e676a544b00de2fa949d33bfb66530c1c42a4dc9729a19011e398b81aacf3b3015bae64a55d63f4cbb7e77cc3f868d562f39a896d78e1ad36473afb6c9f95a8ac590b10cb82b36b3d28b34ddac52b68203321d2288479a4220baba748900d6f9e273b063d7eda052bd76aec671b34036f64c3be125b426d88465eb77681cc3f2cd386bc5f6a636973619802704d0fdf6a957d298b3c248117bd1266275019864e053d042369daed54a35ef46ffda4815b4e2f8a2966c13bfd4085b043e7ac5d4f94619deaad90ccee28cd7343c1e114c17e5a812c2cd216af36c9f8f57d767341d750a5c2714a09bb85eb40dcdd694fdb7b6c95dbdc5cadeec01d93482bf21c0c200fb0d681e5cec7cf649ca85c57f93eee220eeff6356165ac12583eb4c8947da45b26ce1c05aaac989c1cf965134c3a52ef5169e69ee8715c58095155efde37c4ed163bf3e0e44bd6b52be6ece68f4cd66e991a4fd72f6818604ee363ae448569b05f834130ff2e18b26d9b7730e44ecf85755200dd18ed2a58426a42c38278d7da2b002b87a2afc97eba5379bd76e03d50048d2be46ba912be53754e61c44e31f66a89b71f11109498b31bb803a8bffc3d9fada6d77432ad52d2397935c76820c76a21341f2228bf7ecc16374817986c3eba9fa495ce3b8b9b605b79a143337d57d014b155c2a0d49062d6f910039d7556e18710c245c822f73bf7b45f72a12e84884d2ce0c6f7c2dd43ff58798e5731a003630be4f0c224a9e584791bfa487f469d880420d73c4bccf0cae600b3462689b0b8189f4191dfb8dffa655facb35e14c1f0dbce2af97e4c02db85b8822cb743269b8c31c23025d889d07641eecc7a5b90f19c21926b0efde7a0b53bd7fba871a750ef6eaeeb9cd5b53ad8d18d19a226b5abd22752de09b4f03a7582b36544e4f69310c8e0ad18c656f7bb7466be6509d7bf7f0440bedf08dd5c852e67cf1d531e877ad26eecd7fc46f29961cffddc074ac99097954299ef6883ecc2f9b0f2fbf3ddc33bc736dfb7dec1f6fd6f6fedc3d16fdf9967e1ad9bb640d307251200d9348285daff1d7b9810c323c26b9c67f1329e6decee251bb50650b7b9ff6c92fb0fde8f96893beacf91f5c55ef1b714134f904e27c06c030ec8a221e37e508507dc3ecaea2f86cb905b16851cdb8decd71151cb2a39a2c0ca0c0e9b7c807735f29f365f4ff8112a83d56048faf487bd6bcf1f921a6d119f15d5bd3dda21108967f6e3b1279f5e81b6dcac6bdb7d9fd8f5af4cf8e3f6f07099aef7d4e020f82bdbd6891005440cb6eb2c0c09679b78c2bceacde707070828b95dd915a3e315d963797bfba550d409a6e1d0ee7f34bd35d27a520b0e21b72e03e2bd056c42b754f17d75b1203d27a94abf103ac492442f8c288958dcde2e6d6ffc387fe3829eec9408a67a6ae8a92042d42f10a762999603ed270ba31f7db42c886b6147c0a530d37039ab3fac517efe5282a6f29a95038b8475d9e4afc6ec6ae5c6ace6954ff4cd42d50ed69f6e36c3723069e41b4a2184adc03d6f1915b08f20630dfc15b7f6481fcc01c6c722fb90e439c180b444db6ad6b20df44907a2bb9f03bab04ab7ce9e3ece7bf245514dce9f96040a81340e47cdd44775dcf5ee227df0c0748109dced80749228992f01af59bc8c7726d71ebd706709aaf50ee080b0bac909cd449646a4f550e47aa1009fc7900d308a821b809d8c2d0335670aad712b2c47b53353a5427f85ce934965909f44353f9e1ec78c4d6f2d09163f45055091edc6267687bc04a665d6654b891cbba3db4756900b338e86628416c7e4c13cfd9b0f652707414a754a855074be080fe188b3f1abf95cadde7456770d0316853160ca99285ca8550e9bfb5613143a5f1a24f10eadf1f611ce50df0df23a72e814f738e60560ef0dabc5f7f8ab3ad8e5e2f5843dac6f9c0c9eb5a16097751f6eee40f460089816f0cbfeb9c32f8bbd0b8e5d31ec482e85a9d1e840b6e1162042561074e0439e48d2e15678db7ee619cfb3caacfa4ddabc7d5442dbf20493e0a748868bd60e8fc8190a38aa81c1e2e2b43303f05c03b92ff153761076adaaefcf0004f75d9f21eb2b1c8abe4f0f29073247ae83a6044d2854b858860c99c72019aee538240dad6d3febdf1a03609d755b4c5e6bcf3563785d0bd92a6aff7583c18c1b2c56864a3023d3d3e9a9c947d2471942781d6766c8906f5781a9ba589cfeb72aa6e2cd8d59824f6869d70d082c3015396b30af597b7f12c68f3944251873519193c160684fd2085d326944cb70efa3873606da4cf00ef8d9eb85f080da2f5b97286a2f64caa74fa9776fdddff28ef6b7b47d4b9388049cedc5ee4248253c02bcfb2d1ee03fd660a73a098d884b90024aa1c9df5cb68c9143efe7b120eaceb7bac9911debb56a3ce009e353af53b3fb6fb4d5297c68cf86f0d079e9472100c6a072f5b200ede7429bc8977b544ff631dd1e0f3882e98d4594ae0ba3f31e763b093f76e1f6a3d5455c09b2cc1d4a6804256cc021d22bdfa9207b92562b571f7ec723d08404cd6959e1a662a66bc766dd379ba1bd8ec07e29b8aa45b53096fd5ab166c7a4cce0cbf8a4132e7a30446f94953b60e231b4c357f2c8d3968b8d928eb3303de2b3551af33f2e4d74d11419450283c3e12d1534bdfa1cb0e1a6a8854b338b2d29e25b8653982743046232b23574c0c4331e0bac59f1581eb70b9271ffc4b156fb25f6d3ca70f42b02159fd6edfd58c468807ff8dccbba548eb85ad7b27cdc5d9fd42d41fe50123ee71852469695eb25502eddf8149018feab234bb1a355f7d52f2434270408bfb602a56a0490a6cf7384d2f85c8b4a34dd92aff7202fd0ed6388f1b10f8661323faeabcd29a7ac114500695a5ea97ecfc19e11f776778bebe5119b633bfddfe7976b44e189c07491fdb43da05c140f99eac6169f357160a113f23bb2904ac26ef4d3e9c8b0894e45c0a0fd3910d5d8c9dd7a0f9f3f368c39027bfb2dfb89082795a4e07a10b5ae3aaadcbe3fadc7e701562c64f9c5f60e03247a4ef69b9cc56d40bea2bdcb7942d015485f7b7515c374cf5b86e634803d36295fab13c6a7eed44863143a106c9a6aba1c2873240335ea394b1623c858227325e07c74ada6604aba5a0800cffc902b89aa37096be6e66789230938c43307d14f2d10ca94a16d661fab3d3ec45afecef1fd39e73c23ff600e299947cf4f65cde6e39ef55a61ede94523b2ac545452ec7bef3e3fb6b7a0449aaafe051122037389d29881f61ff47595a506cdebe652c06d9772b9eeed8a45780baaece2d060c7ae97993411f65c51f5b1c0654cddd0b649a75aa6ab64497a25129226f72c6248836840f7022b215bc1d4807ce5c44fd16675dfcaa616ba0987dc40fcb8fdd81a7a2c2316c7eed8f30c019f437f8f7e9507e882fcdab408bfe17f588e054ca87082ee5952078bddf3726a74e09c9e490400e88a1a4299a443b94389a16f0a2710d55ec713befead2de0950a051b1c170022e22b96fd88d40db443e5c47904d1c963ef2cb12773ae2cf659ceb3b46cba4d9b00ac4d585123eeb99b0c8d7778c2c365380f1f84ed905283bc882e9e27953b7b0b5b489171a1ead9033b3be674c8131c9f26c6f2ed99f454cabb3dfd1ad9a8c99c2cf7835c38d05f3687faf0c7dfbb463d4f270994502223d1aa9ce307b6ba988578d928c0d5d481d030d47f86f6b416811af7b4df484105f4692e55b523cd4c596b1ac091b2ac0bfd4e63c8544fe2e815a159841167bb05244f32fb6f26b9490530a62cb759b43c30c1b59b66d1e550d7927271e40d9fc9ecf4d06df5c3543b865235836c834513e5cb449b8eda2a425aa5e5a9813a5bbda1790a2864cc16e41848513f5f93c427f85ea3b9aa7f65c1a9987cf04f8323c8b524baef2d99087f56a9240651f8c28e13a47acdc0992ee7cd38920c8647413c6942b9a6d99d1f7fed486c97b39d0f6171339559d85b5f527d983856bcdd6a1cce2abe81aad222f09e2328b006b4bef944bf540c3dc3d03866b697bd672ae330d0d1f7efd68ea2013cfc58a55faee4472bde1c73f04c7ec740c4e107002dddf942571b59a85c89f2740e824729c5ef8451fbebd05c5e95f06843486dd4ff01c49af433ae4c8ec378c3295930c066f07276e3422d150b7c74989a759134cf0ebb26ab7e76570caabe0e110f46bfcd9b4a15f60483032ffe7350f3cff417ccbd166634800230ee20a3bf74372774e27ece29da045627b27df1987a493034f9cb039a8f91a5600c2217419454ee50250cda276198a315e72214e193bf65f27b8f564fb80979befb4eb0870866f9e958e0ef442c65486e0ebb38635b6203a485078cce3fafa6980789f6232ed3de4d88e2d96bd648c4482e1069ec34575bf6739c270d74bbf1d8742d016de19c11716784f8aaab9a763d6b3e6d5837bdce28e77c4e5d772dd3adbc19ab23691c7a0973178304ae77271b9b6302f97cb8d88b92d1ca5c5517582daabc93fe7e5306fdfeb13e100666d2a360d620bbea6927ed3154b68ee2fe4be139059fafa501d03719be5bf950337d8213bd6b95a698ebd0dadfa8f1467dd72d9a26d0e2985ba04f08b82efe38685f688e336a1e3caf521fdfbe61219ceb7511c0ec8e5169c51d8a8e36ffe00fca66f557a0316d11cec60315e94cf1763907928b079b8f4c74c9539d7a42bb652d4f6f7d263f436d7391609bacdb27433565f5922794ac61d83e8abde8a359f47264197da375791fb98f964ff918c89a6a85092ad407ee0619a176c744035c9bc33decc180f9d0d87fb4b90df7a08c1895add7eb04e728bf0b7528a635c1b6edf0dd423e00542ace09e739894d02300cc237c350769cb20a714357716457cd95762b9c8b9454a1fd9e9d4179fb3efc3e3f795f7bb7dc0dee9801a2cf0d471efa6697b02469da6ab1ee66fe985cc277553199266273b1e63314bd7fb7dfb2f3fa36a612b7e9865cccbc7d1f616775f54d6880c1be23a48799f2d331285a8890dd1ae01838b65d220aad3c622e3d3e483d8957d44ea54bb4768f298beb5a505f314284e2e8c8424d94563ae6ac3446a8c54ba9b13b6a2c8c28ea00e4cb990485cedc0f7b6bcc8b88cac51ab1f39b12e56d2ce2cafa1e74df206c2050c57dcd7a0f87a0bb00a662524d136f7b8e6e05c8e4f5e0d95c5febc1bbd9eff3ed2d8b41edf7ea9e841b27ecd147e89ca95eaba255ebb31f3c31b8e1976a0fd676dca751cc195309e2d119a66be13e919a6cd36e8677848f967bba8fcb6835548bf9a582dde5502ac05db64948ad098b159bfd8fada31254fcdcc017d6de44d4f39a7b97dadc3540b9676a7982c0bfd178c393f5ae9d4058aeb522b746eb51f6c5e8a5f25994e3906b94e8e801d34201df93f2beea12c40715892d46a285246ac59bd7c295bd2fffd919b4490001b04ea8cd67db8ccb66823729f87db8b86d25ff54b459904fc26ebcfb0b71ee6a83c010c3566275fe920434d4792d055a5282832eee0dea27eb757f00b29410f5879c572a279113fc1c4a2c75fddbb0b3efc22f8383098bafb694a3efceb1f1561683726b046aadf4f4c065b870207ef084d38dfb83cb5ac19adfdfac8ebf9cf741402d60c37fb2dff682919f6d449732ac799c38f6bc78241a356f860328b06f4b6fe82630fb40a45cdb491919e2a6822c011ba0da307850626453b1ce798297e501993906b649c5fe536cb0ab89c56c04c4668ce0d8e1ae1de21b28d73e1debe07e2c18938b57fe94bba4613ef1844c44f90f8510e47e41d40da5a55c669c93f7d6fa902760a52d4934579b631ccc9c6cf08e08efad36ca23330bb96412953e2a2ff544f06b2bfd4e58ef561fa20d8442142d00fabedc7191a26f57ce0c4379399aafa4425288243d6053ad62dcdda6f7d2abe8fca57b69d09075f61d4c852b36e26547ed0c9fad313db91b78ed5b893cd4ffc08fb5001bcb114d30a61842270c7afaa9602903e8ae9a78ff8572feb604810d40378540918cbbf8fdedabc73a9636daddbe619dff43ae3ccd4a1a5062a6ad276f6d057b0e2397cd1182dbcda9977c29eb330120077701465f2c257ceb7227ffaf23c648aef1e294156b5b56b9c0d2062729fb2e37de1a9ab243fb7dd7c408d855e41573d763fcfccd5278eb5457ef995b203912ac1afb916cb45cdccf25ed7df4dcc0cb82bcd5f2e5a020d5c1787897208fed394e0c1c18cf07f1570dce729f7b3cbe61fc531ba29faf4e1b88e8b818497106e90bb7f142be76862e5051c1990c929e849eaa42555eaa2d60a54c468e7ddde73489691b62299d329abe9ad319781b6cd521c32c370670ca3acf71680788683c258aec9d564c1af0046b6ae18bc120b2f4ae20922229b85f86821100c6c8d0e0fcd2fbb07b64102a7afe37fef28c1c3bd8284d8eb58ac76c29611894952b64f445ab782dfab90a54968d42e0efd870ceca7762b21fea12f8ea5c81695870ab685108c03859f67360efd1ace95fc060013d1f496674f04936abf3d5503b739cde1aac6bead572542934160e2ab3b9026f7beae7de82bb485cba9cf19bb6451b2e86ea54a8bd72f8ad91d3dcd031173718fa0b7fb5a86ccd9f2191fe6d59e5ec4487d60bbb3c330cfa66699ab47741d4c1bd21e7775861740495a72817b35d9ccba3c37ec6fb8f8fa88e30817638b7935840e8993ba837b3a1e4856612e3fbe0d7aeb85f5eb4cb872849a2c220228543a6eb2b69641fbcc5b2c3cb5ada14ee76afd2ce40d58acc70d2bd25fc574881a5b201ef6ee6ac8d993682a11a5c2600e4df6ab59e3d14d617b4282052177f433fb7ffafea0c77341832c39ad9b527307649fc33daa75858335c864dda533db9a707f2f376278463b6a42cd8c69ea4a53af0bd13e04a370556f3c8d7a38d3b43f59c4f11fc406af33538dd257357eb5cc5003b6ee91b0ab95063915acfdaa3636717ea4c29ba17a8fa71c54a40c72c582ff90b07e480fc2a5a9924bb5e071a21f370f0e9039e6dc18f9de0fb827b244a37a2224da0ca2df6b0f586a69dbc7c32d8204016f3d8beac7231427860c7ee366f42a353d00cdafd425908a33841df7493eaa3c24b3f4cd07c4739ce1092dc13d70cdcc7603963c071ebf94c6c6e63331de9741a87bfd900022821a0f57735c2372a7bc17d4cb837cc0c12c75a82173f01db422e0690c9111797841b1dd9dfb8dde4fc9bd507d6db1dcdf6b0e9022a7b9709d964647cac340d6524c76e27224a3055f13c2948010a1d301fd4bcc79e629e2c7b2712e500cb51697bd2e9f2c7f8991212e96c9b37cc292ec83a27e3d5d5b2521666b995ff30985fb722862fcd950f52cfae2f17169b74a3ab8ce9e294be6e37ff56c78fa70aa48cbf52344697892ffc3ef12858b469d2a70b5dda8bdb38dbf65d78c30b2548d1bf4475839b3399ad973a50ee286e44c260382f9d872aaa5ad9848648af0f327cdcd38cc3e9df6d20578bc694432f8943bcfca7c52b1b5c87d527e2ac3bdaef0a7c9b3eebcb333cc0d88f4dddab206c00f132ecd9fe8144f9efcd8d9a4f2b8aa12afe30599fbccb6dd0c2d619b8be6813f91ebfe63d7053ea886875efa24b152cb244e8a9134c718268c5f32f88949ee588339806a3b2d613a7d9316290f2cbc0724287f2920c28bed47179f1ba159e16b8fe083a8f635306b19803e52862c71ec4c96354986c58a2e8efb012f37fc3ba8c463fb73fc0cc9370f10a06f3caaab26bfd1c2424c139bfcf9dc2621a036f1c3a5b1afdf22f43c7b7106d5c556b94d5708f0251f495f2a5a5c57355d026b8ca27fbd5d32d3a9b79112c4919fe24dc691e4fbbde56c58661d0dc2c3ec3aed8504de6db24fd07c95a5f7eb30b85cfa554b32817a7d5c8915d4d9f04744495cfe576de600d0d1734d0ee46234d536ecebc50fb6d42177606a57f5911be2e4afae08ee08ae130de0a412bbb926d5ebb770ddc0b4adda14f63941f93ceb3c091262e7bc2690b29865818d82e8296812671301d23d9d2bc42a703a400b383b8c0c3085fa2894f392455b4feaa161495e55bd0b1d5733fdef62f3a55906ee30835762518c21a7c6c7fe0559ef59f10f191ea1c4aba43d7b6f57421006c3767f8dbea18dfd7faf1cfa41c83727a4294dbce735d20503bb25dc64cebf48de93b1e878739ede2a066d08ebd567d138ae66e647c8d880b8d71cb02d9c82433e8a89cdadafd8a750e397c124ccca598c4734e3c9bf372c92d76530e69d80fbd17db07da496ff1cba99cc71fbb5b35ce2382bc18b4e009e1f014168c598d99bfb5c9b87f9e84d83c61f247e84d4936c440422ca0507c9e3b17f5f5eddb242b9f7e72d4c3fe06dc8a6449a20edf566196239b827f54bbca889aef1f9e0ce35452ad99dfecc710e806badfe6abc9a160c962368e82e59367dee065e8491fca43c33336d612196a34d93bbd6f1bfd298b7589022d38195a49a2aee2e9d9ef8e831f59bea19a6351ce68b1e7e090b46802ee6e61c843c75b53d6ba57b4c3d5a5bf482959a4e161003604e752a0fc18f0923f53b74c4c4046730fa6c3180ba6fb5e3d7b0bc3b9ad1841f3fd3bae114db71bcbd055bad0c8d5fcb293cec2a0a7da75ed515c1fdbd76d2e8c9b4881fa775066a5f229f68c7a082c5d1db4c8a4607f04c2641413632856649b6c559a6114f6f24fe28bc8b8babfef15297248bbf9260bb49bd04f1dece0f612d544495fb0bda63218f62b561515f11d839b677445516823ba5a88eaf828f637515d2aaaf52f97303f43d3ff5c0522bd73c03587c2f75f563ceb4a1a26800912f05d4fe00ec531281b64d07fe20f8df716d7dca7dce1ac293d2b5af0d14003ad3f93485027a39ce2ccb138d89fbbb6227037209a8405bb57717875efa2aa14bc17f83e959a692e6df374f56b2a7ed0c92e7e23733ba13982b57d4512f52a92dad3801d23438e6a426228c3ad3691d9b141e39aead5684a7a4e7a17ee2cdff9d81f8103421c8a650c961a9f5f56adc511bc65402a7156e3406a21bf3ada4b867941e8b13f8f8687c0b0db629b76e93ff1fa57ef6d20c269543000e32d12f852e4b924d0fe078d794c485e92a68c9522196ddd925aa2daa1718a08db0c2046f4fc1f8cad6e78e49406107d956ff255e4a485b2186f26f37dd0740083d9b1c047d4edaeada215bccc0f8196e29777ef4b42fffc0ac17fd8edcbba7ecd385d18ec551917a82b64da47a9a3daefaf5f5e1d65ce592c106eb1b7e0889b48829c3f99a1bc089578a3260a0f49d63d0d81a13f650c5ed088d4cde90aa0f51111be153ea41249cf85ecaad8a3ccae8848e9655e569ddc6653a897a763d40529c54ddecb099730bcfd54ae51d053c8327d1176f548f07bfe0fd028f26f6f6903106a892f0f8a1f7348c9bcfb99280f14d7913d238a3f5bacbd07d443e69e4d8da8ec881c14728c82b64ead6f21b3400db58c8c3a749ab436e852aadb8a896793f59b08ed59c386d7867cc26878e9443ff85c18bc87e0841d6946b4c673de7c838496ee1147d813885e150a2277d9d7db1e1ddf21ba061f6fa018fb2582e6122d1dc4b5ac7ef1d50ac54fa9961f1445f85be92dada9bcd239c1e4bc4d7a201711e3c9292853986cbc78c356e200e66d33423c799179ebd378aa69a8193814c96de389f741ed020c3c14f005bdc12d4de549bb4cb57e322aa1043e0cec6d4235d49a2b2a835682cb2862d41fdd8bacc03da95512b086ee09b2533947561b078760011e3d232feb7061993689893ce0c52933110ac23a7f5f917f326df590928eea6e1cab3e34099b3e553dc2f8ae012b64423b51827002f014b20b54de562375834d5434834be500abd23d83cf8b070b69a1da6303877a66b353e31833fdaf9286903bf2436252ffd39b065c64e459b5dfa733f6cffeae666c30a7d0c36716a5847762e13dc89cf555a648208a7670e2dac95c7dd6d6f1cecd9c6ab600ad92ca6354893669556aff53dfa9c6d69b37f6cdd2c5e564e66fb61ff19b0315c93873d2bf1f49b2566cc085efa4d839b46268e0edd15aeb664a2bb8d061288e58805675142bdfba4fe41118b68e09334d1763b2a4fd985f83f0dec4c3830691c8e1f7cc5d9d204d6380b980679488cdeac5250718f7faa9e3bcc3fd1ecaaa2cb450f563d52fef98930b28ae4fe881134b0e753b3517928d09f13bc3bc7b10be354f499c3aaf5caa199aa5c6bf5b82858795bb70c8bdf20d6c6889e7869554d771bb128a156254aff481471ff75b7421b49de344e829ab367f0518fadfeaeed3f224884ecd95f13f1b4093ecb2df54812859c55c0dd9111c293f219edc7b1a009a6ce5f7a4660cd32655e48047ccb3ef4b396183606389a08c1d825b91bbcc5ee98cdc695bff4cd8e6ffc6831489a4167095f3d9147b59b6d268c59113075eb2ee413c118e067ed3fd754f03a1498b1c6093181d245f62df6847a6821c1bd2f6c6517d0870b0af69b26ff365284413d4e8c152c32c343d2560f6e212a1ea2eed90d4d132ba3afa6bc903619c009d12ea2ff4c8dcd5bf34870bb97fbb01dcca8cf1087ec2d19e3f1e2e48289d746d6035a00cd11f2fdb3d0d33a45a3365cc697a379d5093291437e78269fa16df5b668b653972bc690e67f2b31836d1b181b8785f5a95e543c055330bc622e8cd3ed40657691d5ee314d00e9c625fa2274786f33d133c49aaf0194c7fbb783b25a17d2bb5fdfa8ebcb817ce4242eccde15e14f6a2ead5b731811a1a822e8b1a266c21a38bc29c70a4b5096daa884bc60d1ab3ea76e37f5e46daa30383c0370d1621af8de9f4ef969d2e29a6304e76805b19c4de0b23cddfa89afe5606cd16fb841dae5b83c357ec47f85f9abc84ffacb63affeb0d90d94d2b632175ccd85d9a952d3d17a41c6189375e5e672b8620dd4b81bc0dbe95bb355ba19993966103991811c07ad608b2c222b1a848959420df5f4301dc32e1f5c8ca71b7fd3fa4002ec8fe9ab2c6e398cb43aead43a48dfc045aa1eb3aa7787f9bf7857161e29f29f19449b479cc751bb5636849805d79fc9c12230fef2351a6a007cde8ebbea98b3122cd1d3ff43bbcdbb55131f5769185a63ef66045c6d6c9ee174dc569725506584b797445d7c61effd040c55d62b03bc8f3b2de41eb5eee11286cea4202bdc67fcf77fec051e444dce29a9e23fd34c267c780a4552f50b7c3656b666dd0e1683dc772eae1cf29df5d1c3a06c8ffbce51faf4e7dc83fe366f1d2c83c056adebe95e2d5ab1346acb7657cb164cc06b6e2662e2a6c9d728d67dcd51c5ba7cffa04fca96aa7d55b3bbf41246486707bb3d2c219109c9993bd9d7f586560ae6365d15dcfb5338b10a1fb06ab99e84512605c8d5a506b09048efb0b8823635ccc667485a8f5022ed7b638b7965ed1bf1e2ae3dd999a501cb97ae851f6d36cbd44d7a00e18af370b87d4ddeef9c4890c084533189fcd6d709511f1edeb31b52fa0fdc4734d642e86af14bbd34a11444f0fb073ddcb58b16381f766972136470307176bc8f8c13b46f7cac6b117c5d2ba3ae5cdd944d7aac5ece7de7a3d4e3073559313db24194775dae829a35e65d94aede43901da43b52f8a50b0ef85bfc7cabcdb82753f3c796197f4a54fd7cc1b11af90b7abdd771ef7632b4dafba24f8fc00edddaf55ada60dfdda17e34da8b355d2d5351523d0ee6ff23c46b548d63b3f829897b66ca32cee54dcfea94a043369ebab4cf9309629ed3aceb0b4a487f44fb8e42e229fbce62336f641746c7647b591dc401e000b83f8d641e3fa31cb21bada1afce9aea71d61196022bf263575d1ea41074360924c1620afdc0f876a723d7aff7652b5fbb1c69075610f251e98f9e862b0734a66e7b77b00fb365a41670df62006e940f44e69230376f262999e1d5141f76f5a752392f88a31308873a1bcd09209c3c2c3d754b68492c8a02c5ecfe449b9842cba2159d5cc7dd7558ce74ae77b9265ff825ed2c5d4c3a982888343e6cf7e7939481be40ca9619a270129b0558cef3a1c558b47da022392cc06d3564d1dcbc86bcb2d5bd725f4eb9043a427c09fcdbcc00792e2b92bea676940e6cd410e7cf52343497c2d2b42b623b44ed8ed5066158d89aabfbe48b9e6d4380df4fdebcb4a383f69e1776481c4ce48e2a630faf10f5d1751e8c6e284c4b9324801eaf24114f35e6132de48e1e154bce4b9191592450b6f0c4b2c4f8c5bd0e9ee67136e070789f3a783833244d672ddb5efbb6abe052e9f86de9e46da08bca110cba75b084d7243abd462eac27677448ecdac6fa26e1fd4999368a08c0165cb725824b932f80847bf8a37349409234714b64ab096b675d84d835d92a0acd32b75b0b0514a9bc549ccbd5fb7cf4da6d3f77cdabebb35aa82a8fa0cb0b4c48fa7eac287735b60735ddc9537fd213fec13e1ac3b2d4d9ec2889979758902d8394261aad42f2d572479ea4cbb3039c81e3aaa9781ea5680c1f3a56ce2101512e6e98864042e0741143730a6935b4988059cef1583e4bca560ef2c6306a245f36d8e28f2aff8b2f83b1f8b2cfd6218c637880785e133fc146ac8919d8cb900ab5cd05cdbe04ca13b9e6b1be5d22eaa5e12af1dcec0a42bf7d221213a14cbf7544fcf29156adcfa6d31ad5456d8dc1ce36c50cd103ab630f08e275c2a2c16ee7731c564a33e9df36d60b7624d34c5db440772ce8d25823580425aa9641fe7fcb9492f3d88d60b6e80a66d5ca20f7551fc92502938ae2af6af68b9278efc4ebffb4c2ab466ad077ef7105a1cc8c22db9271ff8ce0b240c7c748b8a29fcc9a35eef2f3502a360e477995a304b256047b38493448458cb40888d81c23e030f269c347a25ca0da8b3c6dfe877bd749ff6adab59d6718ccaf4bb74251ffb879a61d150e5d9d294923e95dfe5331f7af75f07ba0f451e8d20c3e7f26ba250115fcc0d773e3b9276c1c2fa9f41a40f4a824529989bc86e5a222c49ad5b491abcf90503aaf182ba7a0f1468d8650f669758e34d74445297d7486e43fef64e2e771df99f46037b16af34f84b62d5d9bc2629e088156ac0de1ccec72c8617212e415b36314cab9c498380eaec9bf058d90ccf46ae31bf313a8cf2b4d9f7aacb7e3dee0f66f9fae50ecbf0db1c6b6992a64a21f20621c882c3060a462ca97a1ec3bc37c98842ff5231fcaa8651ca81f14f5db164fe1e20740c54b1d46729f622e1ef14918dd679e639f9b7216a0b8c6a84f796f63ddfd564ef9c5b33bba3f736569bf8ad9559350b17e204508e3ddaccf03a549e79afd0b945a97a5b2d01f98b2220e826040bb59fa5114bbe73ee62b1499b68e657d5261bc7735aab0262c83a14caed2f8e3bb4b58887edb40ea947d79e49cc787fc1dca75eeae1c7d2ac13a5c2868f79c6f9506fccb67bc19242adf4b469ad40b30d1abccda0002ee98fc2c111b66ae27a9caf05eca4b31c2a129206bbe45848f6e37f4f41e4e3f3123e3f0a0c01c3dbb96e759f1f4e5298271d45aaf51232059942cce319ea5012b957dacaef8ac4aad37d13a540180b39845c9f14762b2de71bc8c59a905fe4af9a88b8e95369494d6415d90431f6e5ce123c9266432803d6dc2e240a88b86b21aaf7fc09dfab3e428546c6025bddd1534c335bb3e7803a2b094fbbca6205b5013d6ff60dca5221322a4f3231b6b15ab1df36cd104f4a3159db9fce998e8836df210af28fead64f1c42a9c6d07a2cbdcb6cc855ddd85665575a076a618e741142f9483e9de6886f542b141b60745dc9472a55387905bf9022c996628609769c9d4f5d3309096c26065960edae6c6d72eb22876db27efbca6669a5917d0fbac7625435fa3109a7790b32e1107959796dd8cfc9d56637bff22764b9e5e735ede86a597fda49377f8212820454e6e152443ebfba5b4dc2fe227ea5819ab0bd538767db0d40e6da6b1bdbef5be614e5d504f232f6001a9a8567dd1728c9cf2dcbe42d836afbabd7b4f79a964e418130a52442366d766ee44145d293befdfd897d46ccdb42a79dde32383258c1ffa1230763c5f5ffd7413caca5ffceb18143d9a831ba9d600a91114d459c0eeb97f1f1b1da191998d656013f4e8c6d438dad69717e8ca0e48405848fd6e87b74ecc91fa474be2a5731b363e0aacf8096e2e0268963b645f2afedc5501bfabb71108aa1544bf3c3ca73efe476df3d20a742bb82d9f5fa5b7033b19d4197b958f6d853be13530c2bced20329af46adc1906da1b1c43323b59d153b001ae3f647d3028634d9ee086f38aee0eab7ef210eb7968af61adb7d3091ed206efbca5ca4810a3222637faae3b54d757f8777ecda7f70097607468ec855cda3cc254d97b0b4f74a99bad64519984d3f2f3919094377478cb516cc159cf6e8a2edd7b03c9f5af71a2f6d7c3922d3163d33bc478ff9179f331d057a892a5196087efe850adf84d978a79c1f5d320e48384440d1a5b946490dfe6591256c2417c791271d2b755872731887f77a7778e16be8a564fcf41122b45058714342bce4c1f1118c42923b50b0c1237da27fae7177f3b6682a955c9dced93f9f310a481dfc04471e557a29b2812f68cbf79cfb67ca5f555181997b95cedf55368fc034d8b7af761c63666e247bfb84849cfaad3ae70cf243efad2676a48e2ed4b4a46ca4d6fd4698621249d7a7663652612bbc24ae471bfc36176d55a7e47ce84af196cf2bda867dc1ae8da41391265f6b77fccab696736da4f0f7b30d358dbe49e4d5c29c0b0d0d7d317ae43013b749f7faac15291fb80d91f345d852856b87922f3930b4f885c68efd2be618fa99a104080871949d208db04bc32297abae2e3647ac395790e9e032ff3cd3015aefdfd3bcf8a3d8674215da59302ef97c0fa32ff124446f27d0461c9704a858e3edfd2c00bed9d52bd08a80bc2393ed4ad5ebdd366550453d35a3cbce531b46394686bc531db56353626cea2e2f0b1b4b6acdd505ab42bfa3ba031853dcbfe048c8d023c1833039554688f83c0879ef336f643d7c72c520c80efe80197eb506e8faacd9bbf39185802c9e59bacce64590e968072f0d9a028d0175b57813f8825949f391b3c3e89148f2bd43c8faf6eeaec3ab5c292363830bd00d8a861492f4c92d9f6a134c7720ccbe97e978652406889ae86172522b12c07f8bbb9257697579cb38b926237b765ba3a6e14a5798ab3d2f47cb7949c9f647fd0b2e702e0e3783bfba609bda5731916f936d6bd7df71727ddc35b5cfb904b22a1f94bfa7d9b784dea39c7a48da184d94274d2a948777bda57e4fad4031e31943f3645330cd38add75282f1843083c6b860de0448e65656582dd6fc38bdce8c828d38a55da2d40aac04237c5075322f39a6aeaeb1693a64465459087efb74347944ae420488c0d92e141e0cf36d5c75c5b6aefe4b05da61daea25387894552ec6f256e8dde345b3d8ad68f1aafd848f62f5ebefb094209fd034c8407bc28dd04e8219f792eb3cc132c9fc4a0e0d7cea1ce29a668d2d4d5413d61326cce97b5ef8713cd709c5935f2e39d69d25b93a47fecf2f4671cb7af4c152d5f172b5bc2c544bacad778fc6fe1e6b8e6832999cdc453fe67d7d7a591727bed5afba57f3d7a4b5c3cf9d501927217c25c5e281072bef6c9bb2c3e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855f94cb9e7a46077d83f96b74e21127a95a0c254a128b87ce3cd152a1a4a45105df651fee436e45726bd9a413f6f36262517c7a9e10ca75a5d1fb2258108c6976ade161399697fe762aad7a7c21f062c6ee1db2aea2007f38d38c8e9214c8078d0423525d388150b0dc086c1cae9a98966d7cb56b6aff3d79746ef8acccd7c4b59742cdf9af8c07531f400bfd679aef16e63988716708557b550e8423989cf7885b3fdf6085941b6325e44084dc85ebadda8ebff742c060f66667471930ff520b4269ede2286cf585d46567d0ffe7ff67422f95432d72af6204fd9e41a8e0d5efdf32445e1e4be72a3c086bae2806d8d7018cacb0408f42e89f822590807e50be5f97879475c8679c5787c21bd6628b062964d78c48a32a7d8631d839ca84cdff1cc5c829e9d104b577d091a9d77b3749742aafc4b071091a68cc5fc08dcb7ac9d76459ff35162dfbf3eb6fe11a089d0661ad1f6e084000395aa37b715986c1aee4d755d0fd4dbcdfde5c732df23adde96c10750b868134e40c1ff5cf820ccc705a655103fff1497c84b99450db54ab3cf285f8c832910629ecb97e8f9ef9dcfb859f73340065b4cca494334ce5c6044182ad3ec30b639fc15c54fc30358559efa817aaf6a2d6eba19b3632b0a333e8a23515261a2e927ed26e175a52abd437d9517d2bdc1f66f3de2190fc5bc4472cb097db7325cdd85e7f436af653b1c08f8fa554da24893614eae65dc3c95f8873e2c991f0878c653510b9e77eccc324bba37a8edc55b71ca7fabf01a4a9b4750f67831b3302e17fa1388992a58c3fea6720cc501af46daf974b71522080209cdccd0e3dcac662c748d7826f442d0e4c3574a606bee74126e38f8dceceb014b5d7ab34045d3ac426f37aa459b12f91b7afda18f101ace5fe025897ff28e296bb83363bf0230a0ca5833d4bf5a3b809413abd627a0cd1b918b4b8f93166a98f96306867a6539abc816ee06db90c50b0460baf869803bab8c68219eb93d366a063158cce6a1cc56f46c5c2dd4b973ed5e0d981978aaae513f35ce5c622aec9ea6393a81ec72bb25feccfeefd290e36a865acc9fe2943c29c026f4e29fc543128cf1571a8e3834f0c94d0047eb8be5364906436652ab4c5fde70e08ed0a67feb27ea29b2419224d640aa918d075bf6e70c30d665ce5bbf303543d74c7eb2c40364e3c3f03fad3698f6dadd673c25cc6dc07b4a7ee1346fed302e5fb73a10545f4efc3de551e999189e2a49fbf6e9f701e1ae69d0dd980ad2f8f3b0d17b7b51cfb1bd06fea5b1e17ca9ad8ed048c5d3d66c19a2f7fb7e169454173417df306b925d19f023cdbaefa608989d528b4cec8416fe31784429b1e3e346daf7bcd6119fb29ce7ae1043d022444be3fdd1a007d191313c575ed31e8b01f998508388c2127825b7fb152450e8763fc69996c1d3d6edf10bfae33c5dc02d631a8cfd0ecb0766c3d0aa722b778df3c0d9f47b020f14f983756f44deef307ff7990b12a9d0303ad46b9032537392d430ee7d54c93459908ac481e08ccc6dd61ee60c61fcb089b65351c64328e0fc6b15dba38056a078d9c740b089f2beb89d11ada801578a17f0278b6f77c9cf5004fc19723381da1d48bb001367fefce7d171d85267c081e194636c9a53aaf1ea52fcd42a0706a114181fcb01ca8805e0047f75ac1641aa90605e1cb8728b75f6c911d11c9450bc24c12c88cc174b86ae1d1b12c39d0fddb1fa9b4de2d18d4ebfd7d38f839206243673b15be2df63ce38656dd2eab951cd02238e1815763fe6d0bcc0890f71ee930f7e91d9c29e5fc8ae0b29964c93ccfc6a8b33934f4a9d758c02b93254893b88eec97cdd3f105ba9a8bf8233ad6a5e4d57c3a8bcbd43eb1ee7daad8500587d60b756748682afa7d5080264f9d778677f04548f0ebed7ca92de1d745912c3a7170836b8ffe9f7f3c7b31c05ca039aae8a80e8ad8270cc99dca264f0292d4ff4dbc9c905837fb1b497dc7e86dca745dd40be76c204b011d4261957dd85f17032431aacd7182f04350c624c7ba8ad79cc375b4bb3aa9f67928dc373a9366881df5be30f4c8a880473d75fe45373251d0b012ce4c1cf06b5ed3d8ff865ec08a076ddbdd8da4aba01907e80f2e7cb6309387f7ae0c5b175e742d571e4a6b26f3dba5e62c7d7e04ca18a278e72b05fc2b1da1788c408cf9d4a4ed6febb9c1f5ceeab1e81075c7b4db208dea06f2ed1df3cc8a3fa27adfff32b1eb4b9c7f9c6e173fc4f6e2cf80ac7c8b1a276fa724dc6716cca89ce7e46dc29df9135b43fb059203c29fb5445457cf1a1ca5beeb305909dfeae22dccc2561005b68e207c0dab94c376086995674e535cc603f2a4b638ea4831dc58affa03be410d2d21b97118ccfa7572fdd982103f858fba7ffb9292310410b8005a23f0ec9b9804316cdd53fe8a306a9a5aaeab7f917c0a4232d3aab1635891e9a7029dae5b60465b7d8f0070274757a2e145e65d3b9c64632cb5f2e642bb34f3f89d94195f7ea30e995237aafa8be2453cd5e5ec3be172b453f21f51e05cd052d388fe22467a6c46c8a14b8527256ad6d1eff0365142f5a359bbf8cbdf04932a2f9a1adb7eac5b1f3d1e0fc698d296625630efa62188a934507ac9cbf8a711b46d957c2eddd46d7251641fc132067b16978850dfdd340850d2a84c6ee394d3e48648149929dd1f3a9691a334b2052e443fa645a137642d1e6bb4f4fb25160f68ba90e8395cb8eccf6f988db92b9196e10ccef16feac6f2e4f94484ee437d50076fd155a044a099ccf42a0d53f55458dd81bb7563ac81b2580b9412103b27bee9bf069971b9fb23857aa1f3878ee7fb21a8e7fc373922cd0c00b925b12d4f6b59414cc54420a6610419a1e280b55e18c90132aedb2c0a6ff9b5db9ba7c60a27e954fbb2423c4b2a8580226a5f739fc934e5fa285872397cbdb033ef0083fc58fcd86fa50f5fca0c1d5bad7f669abee0cc86041ed1b2667d2858d5dfa8391de3331d82e40da2cdc39a95c09eb77fa60beba4fc9d7532f45458dae5574f7264338fea2cd5e6e3058c05823d28b30a594baedc5356da35c80fef4b1af51d45ca86530565c26ef721eceab2a6ea7481b4f2527e2202049443c959a91cd092b67319995e949fe00f167e17ea6b02e291df82ff15f1ddbd8e593563a18034bd0dac53ab1b93bd31d0453fa17d92656f9a94ddd7d45ba8c000dc3d6905d2a96fc52ec72b601a83758e590ba45340daaa095a2ac19e9183da15bbe914cb35b3ff4cb301c39a0705c8b784ec3226ed6e1a5a50ec953ee2fa296c4ab893c01549f73337d78bb7efe694462dbe7d9bf5c0031902dd081694215453f5766ec1c8700ec2f9c6658dc40d63d2609fb1ccd05bd8ba35aa83458740b750bd9169914ea23883864d076368d062fbebf156c74bb8932712bc67b84c71760fcbd6c2f3f7207d61791f97406e59efeb90d071c82492f56a386ee54ab8c5ed6a08f90008fe6345857bd4ce723cb7a0bba229506c5dc7e923c8fc4f23a01d8b3a4be0981cc17527f3b7004b5b2f1b7717d2aea8b084cbb2c5fb1ee815dd4312fd986c79f8541bcb34ce4c710ce30795216be25ce86d90acdd53f2bb37eceb60411b117f70414fb93af757c50d3ecc74719f69c684e7fa11c60605da1b81faaacddd7f7611605747e65de92929d5651abba664e1b21dbd32becd56f2f3b27f12bab57c0f2f5e9f9a61c81e5b6cf1ff65008fa4a9f0cdbf6f63dacca23a7236ccebee4cb80d45ae9c616b0d2a2db7a7fac37e1524e3b65331a0037156aaa03f032c9222f9151ab0d67d4333d50ab38a5f0cbee480f12af63d4f02f324ce7043611ca452c4121d0696cf6bf8a8391b9e9ac83156306e833c34404274b36fc676e5df3e6881b934875de64261c81af09a1e3903aad1b07c0396443f30ea727e5b46f3f221551b6af2e018a5e06657f67d3ca029ce578e66fbdfcf3b19224b77361c6da602860c40905c959a0e0ae3c19d84df76c6b752e5f14daf474f91548959e32bf89bbea6918c9bb4499b638c2e29fc4ef9faf973bf183ad2dc700dd70549186c961e7bb6ac5e68a5dd1d1f1beaed7fb7140a64f68e0841d1085e7b6632ade7289e0d706540cb39e46c3c28b7b4cbaeb70d1d46a228ba33b8efe2c3bd9b192cd3ad8bc67f1d9f656212e401ec4343f679a93913acdf5e9cf66a2479937c6fb85cb69513cdb02f849e3bd5f047c5e8faef19c1af6d1dfa30f615a52f387e3c3fa9ae1ee1f90d6283129ea84d1671671d6c90640860a213b0c50579dec037b45e5ce37baa5114f99f2166ce02a334092fa47256deb3e38375352461b158d27a3fcfba85d0a8f85c69fb1e3c3c8a29c1670666684d64c1d56658848179c65e998dab51bcbad5468842d554b4aeef07f725b541b67d0c3f0d6a433c7d4bbb2c9123da13ee0cd47e029be9405171b60075a730e84916817dc881c8c8f90cfd4a6ea4fdb9f95f3b1f73643284eee09271f7983a04069537ad0ef49f81caa4f4196c111060ce6a3076998fa555986bf441712a612667f771cb41c6f6c2160f43cbb8d4281dddd3fb13b5770ae100e32fb7dfa4e17746cb41162b6bad12bf828e2850d530bef9fdc0409bf3ffa62f289dec0228053fedc6bfc21db7296f4bc925e4efae16e969b6703351ef52a1b512763d3f2b9afa15b2bcd1da28a5c68f6bc16f58e3913b362db3a0b4eee2bd31b88f4a1111240b6fa6f6b48d9bb5d109e93eaa925e702ae3d8f6feaa069ac10e52c556f5dac4be4c7b631fca5fe932411bdc70020c9e311a1cc9747dfdb409bd0527b257d0a5b41c3574e40c4958265c98ecf4cd7ea8b0e23a940aaa515667681612a86a8b27f5408c86061147ac42add7bbf281b2d1a96be2c45ddb04c01c4db677c890d6b0d1e978550e9b7fb19bc7020048951e022bb9ba2f07fb74523c3d5bcdd26cff48587f883e87b66b09039bf678bc9a69c9486edfd7dfcf0899bd456b6cbb926f1da39376896122b85cbe2ad82af9ce9182713dd77d5d3570be3fd8674e316f5f0ff2d92fbfccde2ef14ee67854217fa2b59ee4dbcd22a37d70243818b82ca373fb93ea322945b4881dce3e2c5e3beb9b5dc6e3db8056d41da92244b7249bceb40abf9f35ebb2146f4cfb61c84eea976188394f6764a11381d72bc0e052dbeae330c4db04bb0ee984a3e751c561094ddeb6d0596840d08d5d04f0c20ea333ffc7ef973b2a9eb5888c5e38c32fe593a42b2e04a1400d7dc77c6255c2c70a131cfe8c5c618fb3e29bcd1e111a9990585d83e474338d34d842c0bb121d1ad36a129c649c64c2fb57cfcd41d953f1028dc59997ed610ba7c0d907a60907cbc460fa2d78317c30ee0bf2d5809f88ca0b0d5b778fc9d1d8dcdae9e62bd85962ea721a718ba755ad0bb961eb796d8c34bf98285381f550c53d4c3607acd4c806de0bc016eba9afe6748d34a887bdd32ab18f2777ad3ebc2169a3c7b33cfb770fe9a5db33b4d1f9ffa0ceb0f0c1a5a3bbda94d5b43cfaf9edce5eb87f0b27094aab1337336192568e16b110f43424061b166238c15715e44fe2989f21a3a6aa4f7921104e427d1e7a19e60d29cbc5a64f1a03464d9d5feb019fa092f423d44f763e3fed7d7c85b9c39327ba5ec653dfabcba2386c388f8cdec4d87a672d49078c840dcad1e938aa61bd68da6cdf0ab45033c1f6ff27e8ceee8003d17f81a137eb947e769be31f1a6d5e7fdaa1ded63f3160cd59bd03c77ea5835b96dd3b44b115dcd4c5fda0ea9cc34eafb9955248e7bb4897e7ffab6ea9590e20a5f58abfc933a32ed7a877a7000e6b8948e7f5a9e0b2d3703e45ba8036166a48d0c409536d9c58f623f3c53087f6714ab2f2140368af5cd15d8ee3dfd7802b16c9838c207bfb3d002f8304a5970a4cc2f11c4b45e3330c9e9df554e3fa7cba85135ee579db7825db2304d8f91a2201fcfc570606c506aa27dea6a6a2ff056e28cf946cab8db96c48745653c20f64bc8f84ade9f31aa0955e23208031c08e0082678fc43febd319892ea5f2526244f15368749c1e5b694e101b40a1a511eacaf9537ab2b675552b64537ec40bed10efd1ff9ae9a043c047057592dbdcd1030deaed2d7f173bec6a4ec8d44b503f361154ec4d836961e4d450990e9ab8339d86df38bfa4fe70e9709474e230551c751c5a711047ed1b17483a037e17bc9eb8da3259cc984b18fa9f2e9d8d86c4c06b7ee186733608b96bdfb3223f0066e65b2d2f219e9e23e7657d6028ca7e48ed672a2eafb80d633797b18bd5782ba93de36f5f1ac929b657baebbc3e1ff67ceca96d07bfd721536a9702c9ab1207c0066b522014384179af17d648019b424ac2d01d7923fbfc265de2f7d118b5f4c177b8ac825e92031844e963796782c472670c51c2ed3a04dd02706bc54f16f1a58fdac06331da3e337c054ea268ad1f7589fb5cfef82435df1652eca9df79081f2ac578268631a841ab33e77a67e91f5cb969ca1bfe5f0798229c66b0c4e22ad4baab9db1d63eb5b41559faba9804705002dd2ffe82e18cf6a233ea1cf503716d50d1d304a01f7bd20109d8f399525aae25748d15482e4d856addad2d928fe63cc6f52a23b5198a8b14c27538726e5ef21b2cc100796c2fd9ba1f50b4a4697134671fbd7bce1b9e80e3656b65e1b0cb2eac0a5e1b333ebfafdcc991d62e53e4cd7c1821df7e1bff6f310f70f610aef1b325e6860ba203f6907bf7a3bf23c30d231f3f355e4a1405f06d845aeb8c0c11adde447690c72e80ecf518ac95d365c70e243d5db31d3e2310b22d3cfd5d507cd9ccc243703d918c9b2768fa8580835863125b1c2c4cd848d166fb83f91b0be522bb2f9625fc7163487e8ea21bb53164faac20bfb4165f3c2267c199b75ad78a39f249597e2db015e9a564d7609a1c07e0ee8d24159b28cc398f87ff2ea5d9d1ba7e3b669d8d7d7551ac93620cf1f3a5b493a62a5cfda579a3602dbb0891fed8e46534cf4c7e7eed8b7360b79b4990de24555382bd4a22fc2ea4aac72ed4c2aedb89f195fee0243ffe6db71a19cbb626fb267fe104af843eb742f2b2998689b12c71f29ded714970570c1d28552ef383f8c88693a762a483955d01fedc9489fe7c04567ab22de40177ea514b2b61fadc14af27e2d2ae86aa11bd27c5870a3488565dcad8acca171beb340b104d0d3eaf7ebecc69280304155877e020dfd75bee40bc0360960507cb0c0360b608290654a53d55302f995f205685b587e99af8b5d3b78a8a5ccabeb8b50c3bd91842e2f6f1f0694fed9ad91f62684a8df434c12f2c65ba5c9c148dfc352af41e6ccec7ecbf0cd5ba55922075b8e61650602b53c09a04e45205184df8c35faa886b6d551fef82919dd981eaaaca747597c4b44a3ce1138d264ecec9ce1f5bc2f388e8e7447a59883cd4a3095ff616bec658ce286e0ab165279843cbe9942d43732fc97a6302a5d60a2235646d725e186be8c6df407edcacfbfbf4d06545dd1ce13478afd230a223bd71d7f4b520f97d2c9f55b345d0957a3dcd07d62de9789ce31106ad37e646ac3c8eb185e10ad99de4112857d142ef6ee019b365c6338a6466cc241fb68a91080e6d5db2f84dc25cbb61d418948844f03d77c46bdad49a5d069e5f6de17871e9b754d959f4e0421c9538d5b3f1142fd2f30256213a7d8769a0df7be537a716450d3154ba2fec5e76af71707f23d636f5dcb7d21689b9a44017c59fa5a23b3357d9540a8943e675ef1e879bea225e0785aba75f4367213e6d10f868d3bf4d583ddb2abfa330d9737ca027e08516573c72ff41e7318d2480cb22820664187a8fa4495db21cbbd310f90f54f2617e7e5573d8fc2185821a610a04a643f5fabfd1247f3e37b3da8ffa1fb829f72b66cf723db4af71540c4caf23ba4b15f68895ba60f9f7bec920ab92f3c8a25a84eaa8ed5e085c8996a8ea5c42ec325a60765d2c5ce113917e1ed91b7a16d9c36fadfc0c4521b6b636fa574aee8f470e77123cf271e77f307b6891e5ad66a940c8d09cee478a6c9952a51472b3e581697a352406036c4a4c5b3eb419e7ac8439e09fb28f0ad919069adf15452467d73d90cecef6c93ae466a624d16573bfc07350ba5c8f3565b609098e10a9f031194b4c922afecc867793a64d8b8a588cf45e75c88fd19de63a199a89b20763c24d1043ceb259233246417d69b4c538b4a259a8d9c28790801d09baf24c1e14b40126b7f1a45551cb136814dfd820655ed430021f10ae5a85ade06ed3aacf644d8a7ff24d8d50464df55dd76737940abe91277467f7e358aac52097a9448521f8561d429d321d827415802294443bfe1ed848ba8315b347ce146a9dd87cb7cca7563fcf401877e7a2302bc3169a83c7ff14023a98bed7b00b0181a929d5cf57a4a79d0986c1f3aca8355495b3221e2598a26be67a9273d159c1d79c9daa6df100b6b711c59905e3796d7ae977b5ebc34828b1fdddbee77ece804139cf71fd7a5a3e8f5a70e8403ca4b3d4ef2d768ad26d2cd25cc91884b8498cc3c760248b7ca8ea92f217ca536c7a9c7aad2982b0da2edb05b00e986dc25b46d646e1f3ca84e482002219a44bb9d1915ab7ad8d7eb6869a75b83b7127f0adc8ce2c0aebfdddafc2ad1a5dc6cbc93be6c9eabda74a4c1f916294bf3c450449d508ae15ab7fce96a0543b3220bfa7a5bba5f6d90e2413bf06d2438c49f6b46b6631690fcd8d5c73e3226407c7f72d7fefba608a58c764184a1b01732a27cddf124c5592ff508183fc04ec95311aa5f327e8cd42b67161de49127b292cb5adf23df025190acc6f205c227059c1c39936c281cf1d7819c3bb1c57e3c745869a8907e5b7a2cd0f9f78cf6cd2a5d6c5bd1cd6f66e5221231b5a0755e55858972df74a552a80acb69be613fb07a52a462fd50ddd57384ec0af9da56ac4bdcc7e465c066bb037a06fd2744b71fb5039095756b1245a6469c780e9f1ef44e218540b9ea50f1b95d880a89866398d945d4b9fe798b004b26258912457bfd69bc54b44553cd9c7f05f8e2afc9ebe6e7288956807db9612943c060e3e073d2f7e439f54b3fa282cd3221917745c08cc39f4ca4caf37cd00f0d564daac9554970140d9fafc2086e70d74e65f57d603c839a3bc3bedf1db9c079f4bed420d5828546ad9d17b03070c01063f94f8a4b61c08505f73a7d43eaba65fcc22101211ed1de3839fc999869246de291f4d7c40f1fb9e561df407b9a84ac2c17b953fddf28b6b0754b93626b29297cba5acd20949ad590bfbc1c4eb039f48f84d613da6426c2b229eb1a9426aec24d1221c6b1c52cfab38c1d05ca58774cfaaa530bb3c5e7ae0c91717f1a579da2f36648d41794f11bb509ecfba7194e3f1c2e2f4caf21f548eec2f0838f8a93d8fa966ded380ee3b4471235ef136d04395ec6815400c65f911c693eda76667495f0a7f1a972ddcaac3e3b41642923d840504fde06d4029e7c62a56acc0a98fecc89313859f7cdf491b218fd74832ae6a6d85a162bb8c80caa00b75944112662464e6087cf91d7d60607b7c7cf800420796e01a3f2c70688d5ec650a062d7564f27a89f90f91bb3c21efde241b555e74e07867db8fb7624489a66ff531f3a1ce458fd501ea05f2db053c81837c50843118cd4c02038687fd7d8573d0ef973abedbc7c3ca6e69209e31a73a87d6f480f69a075f062201e43b0965c00b9fb081b8df19518c3a0b7b799204615f675cd52ddd4c4f9710545cb0b1166f3beb8cd7746cb12e3b7dc29848d81a056f42f626c7ec5e2c1fd1ae1d8ab092153dd7119861cef13c8ca772b39f05411583cbdca49c355d8a082ffa9a17369d5ffd0c04b1de7f1989ff2a96675c88582e0a4c8313f9c0e770c4be609008393ab2cc107885adbd15c6be53b8a7edf5ca22cfbdfd27170b817434ffb6b7df9a0b36101667d38c711dc08d565e98f80eae436ba3ec7cb0fe9ffc9879402249c49c0df40981751fd46817aa2f01f7d90fc2427ec2edc2b4c511182ec22e489370046a0d9c876e4e8535975ffb32b836f3510c7b5df451c2149489740e093d79d945be2ced7686541cabe5fd9e0cd18b934c6407a4607f9233d7d1b6516e9be0b1b9c6aba02444ba12b06a299e337d0242d17c8443c8d211cce41483cb77caad7da0691eaf4e4c1d6916e45bb23dced4b13e75b6d14f4aa3384fcfada45c98de27b74b819df63df2367fdab1957dc659ee59870b3ee54e23467facab14d281547dc7ce75507577b0c4bbc4c2edea4f0084d38b1a696c2a4365a258b773b9d3b964c8efff29f68a3236fc52c1b9469ea855f4edbdec3b994e72ab81a153911439d9055367f4a304ccff0f9b879e788b817aa7d64aa18fd5edec4bf943fd8050eb3f56b2d60cb49bb8dbc0e4df922ccbfb93a9f91a09b473a8beca7ee763675903a22fc74383dbc2084256da490f7e9c48c340c9715b0dac11802a8fda058998fadcc47ffb2f4c0e2f8507f42729cda56ced9741da8d32c11756984503ec683f77e1154d03fadce304a081431541843e64de6135470bed9b4dba38699309db890b6c660af2886b4c086bba8a8140810960aacf2ded971a471d8456416567ec813b7b3e46652a7ddb5e71903e152c9e88f36fc46aefbfa8de0e8ad0b5808f1b61c454d3bf5b06836617d0ff3b67ccc22696be836d451e4b1d2c7539667a0102ccae8e1f2b00fa9cb96249f2c9e9b67b425bf0e26430dc09c72caa68f5236d766a942e6c0f82f427ddeb1920a93ffb30c9a260b3f0aa0e6a5b4f6f6ee97b9f0edc412503c1df01bb21baef23f720e10e44ac5c48be9fc23a0370105dc1ffacf2435be178b6eee4e4359de9b5a9ddbe859f39b3598f159cddd2887d3030514e28cd311bf8a7f2480ea852ed9f040c303001b80ea3892fc6e1db16fd9ab5f54e446699f40079ce33e890a944271d818ab5a7b56d0c4b3d22d534267dd78c660b64c90fac480e3602bf320cc2dee19d5c50f83e1e8b7355682c9eb4cc87fd754a701cdcbb3a51956fd243efff5b25ffe77109efe470a6b4a0e899a9beaf14cc5338709bcfca37fbc617cd24eb397f50d7ddfed83ae5d48cf6bf7e93c37e57761853b8d501b7713422830b097a86e872593e0aad8a5bee4fce0376231c4ceddc30afb2cb7a21d35cab751f0d6561d1620b8373a028f14c67d76b9596f9ad286fd75a011d7e10bd66d3483368483990715094b6bc7139d441bb808dff052552c22b22f8ac81aa9736e4d54f79dd6ccb59166abe4c162411d10b06122293ca702074d27ef43cc7603cbe17504efaa8a755910521f955536051463017f0d484797a3d7ed00af355b44b1dbfa44a702ec359744da2cc58e10aec81cf75a69c3584b8383d7e797a862c0acb32c852db993ac17e6bc649af1b65e29d6846059111c6ef652a3e343884bcade4c786976329c2796d21a7ccb1af90ea7560137c548ce7e37766dbf0e747e2d8e25efcf98c1b341b9d0edf3d9d5e389ad0f6f39ae8c3cf63c741a8f4ae57533ddd536c5c8136b3d1e970137ba6c1687ce6c74834362ce4613511ae38ba0859e3756e1ccd5a669c719a4d766f324e0cd4de9ce66f1fc09ef15532555f1dccf7ede91a06150e0288dec9f7cdee731be25eb2edaf43c13a005685e2af419b532e6ea3e07e930b557d2caf9e44fab40fd392e6fd22361f07f609a80022f3aee26ff1a98d4808910d7ab95f9f28b05d61986a480e22f5abd271b4b144e37fc61c60893d1c0553a068a56bf4ba3f22b777609ff867c0b977525d13ed0748e5ea5be3123952e12ca5647bcdc74f7179de4718e9abd9ef668c56e95aa83e34e3e02f9d75a34d2cc5baa1ced604a5096bb54ee7e0e045ee1973b92f090583f3b6f8f13de6ed04a1d9e85422c373e53b32b0982304b93728bfd2b9a49c4a23dc7a1a95bb73f8d07502cf1a6f66c630ffe37938b39c88576a9b1bf7c96416c3cd32d4c0ae2ac2646eb0e3f23a82969d87220f543156f50627f780738bba74dc2c2467ea8619ec908029de3783cd5423d2ee084608b36f04ecf65cadb4397a079a63801599c447c36de542c639faa76c052ec1d7196e7b42dacb7f06b6c5eb5a9d1e576cfb979ed5e8d83367cd132b39901a272952520ea2a625cda47c0f74fa30f11879924b5dc8fd9490b157b7ecfc8d6a3141bc88e458f7c8fdb81f1fe21a6d47a6ecb9059b999fdcc436a76ba5f32e96f9267eb0658e5fac2392e0f311fcf3a2754c9931e0b82ae86048c55d4e450ce4dc3fc43ae80e1f7c6b2b9bb835b0c503f31327d17b4371dcf3dd0144bad623347f07f4970e41c421774755c89e523fd41f611c7b077d1992b0eb2a4fbae602c917a6390b5835a5a745abe4df9ee51f2fca9e950fc41259fe9043e9772b2ed1abce0a979b46bcf3eab43464c25492659c8c2e5d67982660c67eccc9313807e16e7eda03199eba65e0c179c28026a6c4e4a2cdeedd67a7e92608a7458d6948e0054c4521d913ba8983ca5404acbc0b877b93285c52e54d8f49123588444b7d94ad1dc4dfe8065a4cff014c7e0d2f9450437ce19c4f2520e37759451551fa49f4f4bf8a664a84cd6f0dab8976786f78ea34510127b692edb224ad1f2c41c6a464318068f7959875355364e320abd70208196c7581f5f32acd8b48490a6212420f7ad4853e6184a4730e4cfd18a1ba68b0464ffbab9ac4458076a3c2eb38fb82e5f811d147771a12e40b132cd2961109b81ed591d17f8503fd184a1cadd2f0dace6c8c8509d5162dfc96150928f48bd573b55b1b8f46d24120e87e4347d2644fc68fe61f53baae4e833d065fbaf832a4b7dafe3ae407921a9e12353494226832e7bb184ea508a98f8f9d06966ddb1ab05f5626e3641af9e2e533abef564f02fb7ef6be703595c1f47da9a9e84683439ccfecac21d748f46d1e1f940aeab95238de89e49ea64614bb8d5a7447692d4bc132dd9525a708ffa9616363b8d5f840d1ebcc75da44a4a484ce38cccd3224c68b5ddd478481b78bdbef5a280fc1af09ecc5eec7db19247ce2672932007988fae0a70d60c0f43b05959c9f1cd7eb93fd1081a1eab98f766175197fcca9585742b0ffdaf596f0d939a033121442ec525e24e944ecabcc48168410d54b4f6895acaf763dca32a13c08afbcb6c5d67d61cab8f3382a38ed9ab5db0996ed5017f1baf1d20fe83067079a56d48f2dd811dcbeb7904b3f4e581880695ae3774ca34276158f5814fadb0e529920647f0eb35dc82e490d96461abd23bbf2da522822948455413a345f9ef8ac7a7f81c6126584b3c964b1a54c24a12ce2c0f283661121974436cdb09ae91822497458072f5f97447c5d7245ee3b42b2e5df950a01ce7c2374db7b971a5a4304646d5a4e9ccfa76395eedd864107295503e102ea339e0fd4496204c697bdd5c1b1a35864dfefe504a990782ce66804d000472b3c601978fa9bd98dcf3b2750d608c684dc52dd1aa0eb7e562185c822e79d362de4f9f76a1a7016e1529a01d88a7da9552140f666c6a94772459b97034550179063bb5d020d3211a2547a14bb7a20e47f753d3cad416b6746928388cd2fdaded61933655a00df5386de39856a98bb68854f8e47888091ec7c661b060f00f5cb1c92cfe832faf91da739e447745937b543eb5b504a61877aca5223fbf8f03613a6b000e20eb275d9b8081c8059bc540481a303ce722d42f3bfb40dfccf983dce09e3ee0f570f3bcc969d4bab8c1f3d4572ecf3b5da7f936d0b6ca981303acc042195061225039c080c900169b231ab343c7e9ec6530864ea48e0940e8a6e8861eaaaf90853a685fa803c4e039166060a3c921c8d79001e3ce58256300b4972317a540dfde857553323ac54b01af491a20b7745debc9624e513d8e60ff8a83f42bba7c1cfb2825e4dda8092c764f5dc6c42ace857d512c86205c765ff735641e7eede7f06ed9b7358e945774926614dc42712071def1fcd6c510d64c70323025dfde469539ca3b925c5707e72d0d1ce2fe020bd18184009934bf845389fc4ea3871dc8007e7b0fdbc0b8fc539564d884222d1e5bd1323c592936e5519f8b8a417005b3f1d9e4ad326c4e20164f63c6d4ddd80740d132e14c9e8a38c2afdda6dd245653ed2876c5c142cb78a402ae1a225c88cd6785c40c52b8ef5efeb3f25ae47ce03ba892f5caf77631b1257715fc12de72c21e61db17e4399dea777f6bac2a71aeb642ad0e6e7f3538dd74827269287339369eeb92a5f00f03b08d1faa1cf3d1a37ffc87924e8007431040bee05caba1f5c39d7a5ee4a4a0d8878c49953810b178449937e995710cd85e3be17089ef45a6c5331657a2c24f6bb1e8ce1d1c9e0f5dac9cbee55e72ccaf796a4710f33bb525e7406c87b44aad21d83498c3a7c87735049490ba02f2daaa6c9d80cc8c9c9b9b6164656397a704ee384515a4325315992e61dd957f0fa91f3858fe7c079de59f56edded51de86716ef40c102b1701970c7b0c34e6633d8a0ea1c89e7527252fcb07e63074221d7a5a95272343633b138abb330736b59ed95690c05ebec8aa80e6b9c293a4e3decd5f2ca4aec1cf71a49c5754c716dae18f9f02aa8e7c74f726f5f87c587e24139c6ca9e365296a6b66747cbebdcf76972b8cce7aab91e55bf4ab1f3581df9c2a857d11a8415a18e7a6ccf23640cf9bddf245a5f90c43b3014d08d3ae19faf9527d7b26fc15cfa914dc6e03d976570242ea37377491f3619ab287e6169025df66471e4defa1966d41eff6295259cd5212293d921af029329a5a3d15f4fe15db8ef98c260c8865603a742eae2e2a07336a2adba6380f582f2b3ecb1e70afb20cf42aecbc2617e2da3450034bf5c04e5b48d767ba7ad12498f7440c885afbcd58fd114a3e888c88970515d73484f51551fc664d163f156d7279186ecbf6b18bf870fe0335d9a95e12a332cd257a65d6d3435aaba4dc51bb698aeabef06bc7db0bd99cc27ce3a2873b39493bb7073642828b86af0aec0cf2706952a394d3da37fe8f57538678630bc09544e71e07777ae97831dbfd42a6b84035bf719f80cd3f625b7c30c0f72fef406b449596e61b95b58677d4f606f86b28aa4b3a52bd8fbf3f94710dfc6f122a6fb9e57005567bfb3490094fd57e49774d2c3f484820d3b8de50e075a8efe067cb8280ac5226624a0fd334bbb36c5353b53ee5ef4a9aa699d8d76bf1865f0ddba5c80877463ad6650d7fee66931486956a07884f53deaa13e2b88f848ed2cb9d4d9691684ce27333f4632fd897469b5ef12622fb48b243d80810c7273fd75b14e5e029619af15bf176f5c676bf3ac0cf71ec7de9e1b3586acd196b4651b81b4b3becf80f762bbf3d34a8a2d48c10b0987af13dafcdedebc22afd5cdabc01dac0a3e9731ac16353210a615ca44e85b6ec9eafd2e79206e0b26c768814d01cabe26b9b2c8ee27feb00b21af889aef6e66098033fd1ea388da642aa7386347afe4eae6830df7e33e700a3e78e26825535c87a86ce4c3cac6a98ed48b0376234b056fde83883d0e9730951be202c3644e4d5075b83b2fec4b8517a6f761b6f5075ea4a9b8d487ae0819a0850b858687ba242ae7f74afe0731eb76a55f6cd9410cbf61fd6c5103e8685f65afa20270cdf9cd067c908036ee722e77aae6d9c7f1ca98f275aafe3c5533d274aec702ea6029f8036bdb577b0c53e08f7d97f337bb07156b16607394e8caa771764ca5cbd2ce06e0fffe9622c0ee7d16b81cccc5e8a9a7ad608a04f242530345694bd7150bd73315513284142b6a39ba4b789cbb406d7438e4c8e90e1e0f03d4c9a199faaa1a0939a7c9b59b2674d892d57ff4f1e1fae2bd5c63f32b23cd028bca626a869479163db363a4cd7a1aebe88fb7651cd173c294dacf2ab7fd1e8937c098d34cbd08d3d6adb3f654b4255f289c086a1e0d967fd7c4963a25b81975857d7fca812c24c6cd0f49f9dcc839e842aa09bdbf34cba5d10fd6fed612d6d7d8096f38e2e1d2993af5f25ee4423c1db1ea69a53e8edded83a6934f34882f0461f05b96f2bef663db1f3a355cbc181c9bac1ac496b3bcc37452f0caa104b2205a8a19dde0196a7791988b3b74e23c2174c1e5cca0ba1e1a55cfa1e853e326eaf4a69f48c1d0caf2d3724ee41917fff042ca6c4e7415dc58cd4e35581fcf3874ae0f50b0f9dbbbb2f7ea3044ce2e1bca741a6601257db0dbcf5623e2aa7fc4e0ea81ae7608bd43b56d98b444be203205cda4a88df04139500a43e68fe9c469af5f6c672e50531951bba2a5952ee2d833b80b2cba6faa5749f84248b3e73894fb6731dc558af01f8f5a626d8f44ba6fad469770c0899ba44a3545c5e137ead0f121480c1d6d3851c8d481f1d6822e39a4cc60d515267e0d66e7e1bf222dd2f6316d93cecb7161a58e89b821fa0e88d027d2b66a1dd18c4e5c39422b86ffe6b588960921c2b166bd80e9f629f282f1e3e384be07c068e57721f18ef78dd4bbaacceb0ed18cf4f44ba873d4e262b741316b1e98b5e9860dad1bc2406b372de5c6bbc56b110eee9089581a19d01b884adb0d166991fa849426c181037576ff149e88ec0d710ce34beb7f3c53393244fede07fbfce816a4246c742f43898720cd9a1c2827450770fb4820558148b77d4a184367667a5aea0b72f8782e2f0548e0ee73eda13fea8ed57567f7237a872719493ac7481006999ad81df54ce2f8973d784ae6e2a1552ea6c042e16e9c0b9a60ba18fa9fae96474cc9c4ecf7fe722b34ddc4dbcf0dea7b4b2ed7a212f8cacc94a09cbf95a903a6f5c020de628d0a32e33cd307000dd09c8edb50eedab9f96127986e4be3323ca879b3d4aa50507352a39bc1678b5b931768271a7442c74d60073255e15920830a38872dd133848ff42759dd30a2024fde61517073a21834704b5b89ed0a328c93bb55fd41a5f13919aaaca0bd7ec949d9efc2bb2d8d90305ae5d364caa7320ecdbdb46f80c188fe3dbbb5b38fb464b4e6d9db5790db4385b9f84f86116b006fb153f7e9672dffb89e7227ac3354293a4b0792f1566717fcbe98436873bac1c976a3c699fabc5c0d7b477aa9f133128af324a95a09ac798f3132cfa5a16d1d7551f5a1a8d34d86bcde5b04aac2fca5205b58a5a4802671f29d4fd4508b81842ce88cd04cc55a2b73dae089634bd2b2ce43f792e0d2f72cc3810b9c8e2707f3fe0bf80bd45130f6007ce7c3ecec96a4285adb340317ee0ac037c58a7f76d9045ecda1931c125dbda11a03a3b954447da11a7d163e4f56dcd8b99879483e7fb69f1d336c40461066922d2868b91acdcb52ad523a7a68aba40e9205b22812496f31fa17dc923423a66a389d9eb91cb878662722eba30162b148354c3a3e66b24c0cf9586adea6621025faae129c4b9a58484caf37abc49aa5f29971daac89ee00c87d1b945c902a44f24d239a3ea1df6a2e05a176af36f2476ea995313c2729bc4c88d136666b79085ac3db00e48e9735900e98dee905a4fb1e162f4055327b5c87660136bfe42fb789f7dbebce796ec6630bdd5bd55c990c4318bad90742c2e548f02104088eb8f4db0d55bf982b18d29806a90c72f50c0b361ed6fa665b6526fd94ce2b0826e230115aa5d73279f74f7213a9fa3fdd5cc3b915b4ef5b60be46a505be3394bed11d6ededd76bd4b830ef7b09ccd4382b9b3d07ae50c2e407509ca6a1859d2194c7006696662f014ee5a71514f5d9d3690ba0d54f5ab5dae33682d786284961d7de79c4edffe28a1c01a3490ceb20811df1cfe5954b13d9aae5496cf022cd8bebf128f578caea3851cec11203f7a8ae6fab747d0e31aba4d58707428fd27c618a3630266b5fd94d4b8068c8b372f1703cb54e62c87b5e605acdb8edae624b831f825e09051b1de1edfcbc4946af4780401e1d023239bb456c78416b04a42d2a7e12b468040416c85624e7f99c742c785010a0df5f1ece5ac7f73f7867c90e7d72026c6500dcd948eea5bea83988add5ab266e4c682713d393787ae83cfe6ba699d87ae7c59e139d37c40474febcf1f2990e087d4ba35fdc2849ae172543023eb240e3fb7fff84c42ab276dbb0355f1cfd6bdd1f0401b34e33f9b405fe0c13552ebcc55bc40802529cfe9a3b1808088283096c4e6d70d57754e2a9d03c2e862bd9b3845a09bbd5bf0caf33eed8c2df58157aea57792b65159f4696943ae98dde48630a55ac6118863c7f93157124f147234906f43caeb64d19636ce9453eae6b2ca47230f87ef5e3da7bdc72b9e7a0dffb12c6b2323693f25069acaf1a869086550cc0712f88e6d210cd144681031b1b1ef442ad258c7fe242e5b4638be18d735cb240e335072fe8a23fe3052ad832462b5234b263ac35981fac667e110d199ef9ad638599e61570f03d237fa741fc3cdfa60ab451d4f0bdf8fafc22ef66cd909942225b5b5a726d42515a8b147db902d522cd8eae37375f806d7284152c5d3991d6810ff44dc8110d5914386cd087f53f79d2b9f38e71eb382d1e4c96bda2aae72db4c84de67cccece3b757e3b6855a1cc533412db184f19ab5103c4dbce7d5cbb9228eb635926f39ce15929b93808e57e35427fda15fdceeb46b8387d08f0102556b01a2754ae28b19d5a0d6720c71755cd674c780831f3cbf345c9bb7b68b2fa841cf9ed1d8204ac05ebefb5ad1983deaead2cd5c71a960b4837d22946dc9d3b60f0750f3d8a53f443439d78b47a43e6c33415e75bf0ec1dcdc729a828215896a1d88d0353de8c4689c54f12f4cc92baadea19c1010f21fcb382ae7f736726620c0f4969ba9476488f65951492ff08050254dbe4ee4149112ae8b4ffcfe0367bb457a73b9a9534bf2ec495e2f7d99e23b1257b0009d69368088e45459755585c934a9e24ebb9f6b71fd27f8d10c2fa9cc4a4d51fe3719166ba49f30d39b362c29bdd27f19cadffdcfefefe5ad35511dd4b8f00d002a1cf08f116bc66dfefb2827a827b8f415e9dec139af8cd48937339af8d4a914a236fce4ab3cf616108851890ca158ab0e8a8ceb89c28cc2d7bbfd7ec377cbdcf51e82c3502a8fd2fb869366b9d7ef8f45f1064d076c9589ea909019de686265ea92369b1e4c8aaab055353ce98a4485167eeb27738d89c83386affd93c2fb0a70046fa60ea0899e3b5e51f80081a44e95b22b4527542a8c7ebfa7df96ebf11a98f1e1f98f2b4a56efede17dd6ca0a8f5992178a899e35d02af5f704b0a5d7790535af471b5e80aaad49dd11cc8ffda61c4882fc48399345011702818437e16306dffb98ec16b62b2aee70551e48d7aaf0f4858182fb584af2a60df13dd117444d5dcf2586bd96a399a98af3e4ab4e1c7cc39324ec6a4e82055cafc705b068d6f877e362b8cf38521862edcfb7e7725821ee55aabda7684d2c5fa6d313ca6dea0a1ea54614c2cd20a756c923a12c056eade4fa898c81677958cdb13dbe80c3d57773cdd9a3b093a4c0f670b023aea301a1e664559ee1ba88ff1ee58557fee5ce27d69784a9ff7aac9daf810226065317dad81887104bc5647daf1b315d7e23133cd3ef1e14b026cb4a0b3d9030c5060baa8a6fa86b16b8816281f68ad0517f1299af5387cdea3518ebe8eb402b62160ba6386d05f5f6e1559beedc540167307473a1fc88f1dd0863b6bc3be1c814c3512e77ad9eb1c8b7a0df03553a679304c53cb767af8ffeef26e3c7f34dd132a67a04c9985187e7392b0a657bb0167f900bbd00e403d313b098683a9114cd7b8cdb9941fe1e1360e8718a8e635ebe6a06978a5ec5d988a82bd9629f52b66d53774f5ef387b2dbf535cf3099ed3bbcfc3bc9b1a62d4e07093960a216eb823704e12e9a6738da157189200ec6c66bb4d36d189104c2ee6e3da1cd82cf09a3f7a61c11fe8d9acb53be3b2f13190467c7653fcfea4611ef3b5fe8b929151afd13d7b84a483d45954cf44b0cb899c994e01ac5672856cb92f1295b7b72744d482e2480dfac1c2c7ca67424702a2e10305073f2e258405ba22e3c69c7416cc3484bc6cda50b73644b78c2769c5a91122a078d822045f872a98d8cf6d0fa0be4dfa530f21d31bc82a742186dc0e1e71ed3943b1e73169ebe91c030bdbded3842eca6734d7dcba1862cf43fefef4918935f80d8be1ce534537439385a0bc072b095fce1d7ceb81ba4c727bca08bca20b71fdb13642af122a7d4b3c76d8e5291c668ed687719ddc54443ba31e287cd1e269cd2e680ff09ed9593a1fe42592f852127079c181f0e54d42eae0ca0c7e4c19b3878cf9b1b70c65c81e3052a62a5923033703d8237e53a0640826fcc7c97f309078b39ce04802310d87a7abd4f3d2eff93162865e9298aa9761ff5d708af47bd8c2a9217d7f5d57b63847ed792e3b2da51186331bb022e32f9908783a7cb8c8c4f0be769140fedb72865093f98689e36ed0a2959777626a70eeb988d1722199fc7e92e6a8dfb7787826bbda017cbbabfa833b9e3925531a4afc45e9b1970a861d6369d2ed71482db72ad082092c11165dc3f8294a8c71d38f790ca511bc898ff643ffcda3e875f8a0b3b7c0d49497cc2d842135b17f4dbc1a4ec8c55bb67647b17210b4194583e046df9b02a53a7ecfc6b195229eead65e4fb6dbd461bef4f51b79476cdb544ea5ceeea7b4d906d907450d2abdb5f06443fa8e1db3944bbe0f5089ca20a649789e59adf477d17806131b682b7912c3c4e2de22a56fd817e12b16992f3c5f2f963cc64c24f958c55a9b3f719114e559446fa316e0fb83e5f547666a6b73e95c6706f3da54f717c75b6721ccad2d49b01da6f59d5d02cc9050da35fbe2b0cf2a943143a85d9e418765f5177dc2924931e55ca65f4978229bb19961222644e62c888f8b4781c238c4aa4c6354ac975603567f56fa0029e51e7f4d18bddc1dd584857aedff51ef3cfb6ad400fed58c0c4a0671d66d0df6319c0e2b4ba11fdb803cb2b9a6246ed159c2a23b3206ed897206b8902eb796c142ac724db8319da5db61aa69465a9b252ea1096b59ad7653f14f2b2fc684c259889bd8fceed9b63f792fea5859a41cea51335ff677181dbecc9f4b4153167999e469070e242a4847265c7d13399335381c9c71fec3722fc62724963d3d1543b6ba0d2ea885e6990447fb8c72061b98d7202cec8a5601a87d9d9186598e771e73efde416d809ce71d90e3a4304671c3bd70de1de6781e3bda32caf3754408887d5202be0bbaf365498d69366284807b90abc934a8227e2328f5db131566494571aef8c99d3b084e82cec4c86f75d1e67eb15f5ee60ede4821ce3956898c5e1185ec592da7a68ebaadc1f6fb9c0f5615f02591acb0bdf32384b067f893a3090cfbd3e656765858a64644e0f62d465e9529185ddafd841c7335eade2dcb8e510a6f66a531f9c123bb7a65ad11e3279db3cfda65a0df2d52fa1ff170e2e63dca68be5ec79b84a94def6368304d38b44b13d198aa0816aee4b7bbd2a47121d7b47d514ed03cd7b5d1f879ff4a4eff3cee1c0e15d7fb1d0647ed5e70a06cf93c27b8be76efcdd288eacbfdd4a25553dab91be84393d4b69f78dc43d81d3653151b54e574c2e705ff2995411a524f92c02f883a3a949ae852ab8a26b3db87e588ddf24c3b2a071a52e9a642cca8a304d80b5ba4c839bbbf2eda48369d8bd9db5090b8df6bf9f69d7be90a75cd7fd012b18319381f8faac79f2eafa693e9211a91a0794e68d7fdb36fd68758f9d821ad1d6abdb97cd3bd396188de2435fdf4c675477e063ba8bc340702bf99be0999dcb86736a9b3564215317ff4bfac3e99881221d64249c156341751bd63643309bfd9b6b63361233dfd8dc472dbda83ce3114d1bb814b7d591d90d564b97a70e187d59d532aafb8259c7acb0a87c70f997e151e7f4d69ee776b6fab66fbcf88e08b065225162edbee234976e2c063d7d9854571f7374f35218ffa1becae5b7b4809e21b074e569f8d68d143242a3c5535f87791261c7bdd195d98b84498392e1ed1c3307399d9c37ae122df7445ee435c92a0f00a85a90cd182748cabb9c061f5c976182c4537c081a9d33b1ded532be29ce7d1ab6f21ce82a8726e2bc2e391d5dd4245b5791abcce02fb10fb24fae6abee0a3ce8a08cea70ee45daa141fdace6d12a6cbaaee9e07161b09fd950ce4c0d698f80a59a3d7ef6744f719de300b26e63eabd9ed36f3855cba328891f83c0944e7dafaeac6b0d4a0af55fae89db85fecf02b8c667e035bca8a7485835804a2da30c64c95736e011e833622e372a4a68abdffb3d0d7afe022287901f7822d1964527cec5380d5e78b5b5294c253cee5432359f651e1c836029c961139094248a1258d4fe38f4d2221b4968179bf7ad1466de93bc4ab9dbcf1991c648402dd9d3006258c65f13409b52b029fef9b2ff6cbe141845cb29d27de79e23a28994fd8c2f08200b7de8f7d16303a80b46eaa1483c46a533541d468e0182d4566ccb812e7b94a5154560fc1b1a558ce8a7eb24d8eb1407f4f3c1ed4ce2cf18b6a365d5034a7cf9bfb1efc9b8a18bfffc8b248c5e8ff537718f736998e1d5dcd1a7ffb8fc1f570726593fd71114f0e2de1bf1ed8eaeeb1903c22fcfadcbfb9d4f7bff3bd08ef2c6fcdcbe238d463fc9178d943f728e8284130b0c9c5f4d5f5e09e35e6a803ab002e68c8bba40ef851a4690017bfac94b9d578cf91d2615f6412360794bc4c17628a1bef13351145544e7c2aae73ab61f7be0d1fe41a564a90bead0ccfa266258f24ab61997f45e88839375c0541d9a81152d57681044b5a4229829971e59950afabbc28788ccb05f4dea72ae3a4900a4c918353342e807c3208d21db1fcd6ebd2228fbc5d6d564190f7da2138de1015c08c160f59e90a50df72baa5e4a17eca40692ccd540702dd4ac88ef3701da609f07d6d5115dfdb473f51f57b061fa50a2c6fbab608e268ee278e4d0c3b4102f1aa27fc740c5b601f3db8245419189826daab749ed01a92f2999c63a3737960943982a9f92ce347ca8c1c1e8bcb25fee72b2d484a0380a545539369436e772f28b1384c76802b13be979a87a221652ebe964bf585a6235bbd1a33ffc9d6befa3db45d40389efa1cf091bea481e286f6cc1da8368d4314525adf6f7ae27b5df2c3efb4c9da8f3311a5812a15c9140e8b14315d7f7695c13a9a2df05af053d3a247e6dc0a61267e6173655b101f53b1688c5aa9354c8490875acc3bb47ce72b63eb5ec7adfbf66380f2550c418432fe47df1ecc0544187831e044d0d5729aba90537d2f390167b4ef46eab949de09eecc1e0295c76de707de9892ed2bc5678e5aaa5fbf74dcaa9e9abe3c0b7633fcb4c9158bf14d6b8961098093fd1b775d51db8829ca82e740606bd10bfaf61866821b163c536e755954275b39de82092db790eab5f89d37bb522268212d75cc9c798f643a95b18cb146802267338d37e8843e9c95093d51971e275a742ef8db39dfdaef0b896c4287507166344f2b51edcccd5f3bb5d0caf0e459135dfff83faee382d3e41031cc7d0316d4bcf466c927974acc0aec849905c510f5054c98056bb2fd026d28463f4317713bb36c073acd5dac662d45b5a9798a42b1d70f8920bf353051fec5c6a83d152e88dd2ca3c6c50a99d89c10c4c2a270ab292755563206ee13e2df9a4bef61397c230087f01fb05b4b6dc6c8f55c4dcea745069b0f5392dcd5fc3f450acf319e2c5b00d66a726aabee5436f4a2c67d357d013e161531384b23027f520c20d1fffcf2a7202b88c51a7c44b6bf2f63149ab71a0b58ae4dc72231c8fcd60d2ca4c48fbff243249be2c40361454bdfd58534855a90d9f8d9629ccaae1c466afba74db4fba324f439c97406979f82902808fd845d06f6945a61bffab87c738cc139bd62e61b1efce652438c4908a984a9108588655698c605467f41344adf8179fe90ca035af71cc356fea2fa2454f0553aad8edba40190c4fbf4a1180a9609324c28085ed718716fe1b903f21deb30e9d2a1ec1d94cddce0ea644f9d333fe4f212e315fe0f3d1d4121095fcd71838c224377a2aedfada43ce0ff1ba720f89d82bc28000c3994a56777e7f39a995f4c6d0ede44eb446096850eb341cd0c4d8504404d259beca37d35fb9d12075551370e388fe8ffbf704430dbc00a8a48e389bca82dfa66511f232c18d338da503790782db18cb358129155507eaee2a6bdcb2d5014a311aca75319f71aa7db3c8e85d331e3ff39f88cf9144a08baf3fd4e93efdf08ea46ef913691544cec56006633a08cacc399d2d355f6022afd735b5c32b5e50acb2ca7a4feb5f3d80fe72fe5ab0ea9cbb26f3efb52068d1924134856247269613e21ae4bcbe74d4637db036ce42b06df7d1bbba292e62132b57dc0b41dc6be3e01b3a5cca26ea4505c318ae6b9ae3b5c05e8bdb575460685bda6d682bda5a1337a930807411216b758b32542ddb76fe0421056fa2911cc7bf375cc745659a8a64fe03a9e2805bb9eb49860f483d9a0abaa75761402a37c66a70d6cce4924d0355c323eab95a3fd1eeaa209813982fc459b1493f32e8e8588cd81ccd146823e2728ea20af131699fceaffc0b0fefde0e5f30a7bcf87a712cdeb5b895660aa3320bc2be9bb77a40dbfe1277be1e7bf472e00a472f2880cbf7441d95ba87ee976015451d8e68dc7188748d022f5adf8195b22bb148c91af3a5a7e43f76ef8e7c8ea7cff557decbf412d55374663177a4427ae03ec7cc9fdede4f102d1b93106957756ff035553d25d7b80588b77e83812f566c31f6c3413864c158d270905190dc1798b86c958bf4edbcc516f999f16a531e3f76fe2333f353a6f5dc37a75a09f746c3636f46418bed291e6334d1b701dc6fc3ae907860adf00a15f5b66184c7441eb7b584fd196af089bfa9eae055a93b8d3aa9f07064514d4108b3bb39e3d3fa2a6129f9e6d776d1dfce884c3d4f836c7cb66be33c3d054fbe568a1fc0e65d97bcfe9513f38ca7f7b1e4873f1cb6e71b62c9cb3688b687a841e1e6d33ea3d23d1e700ba201883886628d3c42bbe9f82279851df86ddba256d0c00e07634b0f0af884a113fe2854fb61bced9b4775681a5f9b378e7075763bfd71968f5193cdbfa2dc967ed4fe10e2a2abb63ddb8b39a8025a5d68e1fadb6909d02de70ef0733569b10ce689800e71bfb270f42ffb6016810ada2f50ca9a887c07557455d729a3e2e59d5182fe1ac08c997d4a6d8714fc791a65664cd031c1490266d680bd4379f71b93836339e216975831ba1c153ac9adaf8230a6659989bd2e664d996b5e70b9720e1a0e89a2681873aaabedd1fb43c3f9046086de12d7fb49c2c62ca3e87c847948fdcb3104ea557ee969dd29a1aa49c6757c666dcd23c9474aa28a6a8ee4216b9cd9bdd49ab9be34f744b7ed164a180912dbfda7a0be51a0ab0a8ccf1548e36c8ff0a8ebc55d8f2c3cda5c522cca47625d310bc4ae2e378fa2b7fc435090c9aaf0e861efaa91ff71d51838a6288559722ade02f511f563664cff3a0ffb01855fda85687affc93eb0656faea47795f4f2f3bfdc8b3c565f52c58b20c6f470c46f9d1633df11683de880d8b9a6e5a3cd762a814103819e8a3d5196e84f1d46e50fddc84515e5e049ab429e9e7d816674b36dd46ec4717ab161824599a66a6e2f42613d556f822d4780b913f0a87cabe96d030c12da5b4876699201cc6abfbfe201e905eaffa65c4c3792cb297937620cbb9b9ffeb4122a3e85073d67a6e680d0a4d2261bffe845e98b0eaf2a3da1936096ecf46d5d521faa6009e0cc6a97baef88ad5d693ceb107fe45c6f31fc5f982444c75fba94d820179d3ecf8e4841da27c90b1f659561f8814d2f47118f650fe54128921e9c1c00498118a83592bc8e5ca2e1f218b9f02974a670a593d8ec985eb544f07fd193820c1d86932dd6232adb706f0c177baaee20687600c2b82a1ab35aa2b0f9c3313982fa6e634ec72396923b1c1bb72ee8d13f27dbccab09b11860af0a73f81af55cf43294ea9f81f7761108c61f9a14731936e88e4d4c2138db35691bd273ffbee4014115e40f06c6bb53663a5ff9f7e989a8a7b023295a3109a75a77154a9cf430bf67dbeb99fa79d5f4a01ae69bd7dafc9803fe41830d26ad564e9db25d64a33ee593db5be67e8dc352549ac9863081e118ad1393d6aa5ca069d14dadfc43cd8c5b9da7b9834bef98e4bd706d2e6fb9d768ed12daf0b5cc90222a82139ed20804b612b15e94da968f9dbbac5c3d1db9d09afa539a19f4e923bfe5235bf3846cad469e7764d1205d6882cbbf548f232214f7daac78135dfb4063b26bd28b5a9bfe89a9a6dbcd1e38d313e045e619374df1ce27e37f521a87b8570c628cd8e2cc5b2eb14599927c9c745d873ee641cf9e20986f39da2a98dd8bd6caad6d699c207cac1251f22c4ccb053860c424a520df639cde3e4e1d0a927d949e9b121b387adaa017943996db18278942bbf56e2cf5ac509df39892d830b015f952a3bab58a5bf40c7783b4a457af722d5e73ed67b27e2de5751fce4132c271623ccbe7ebd40531fbd24ac041f06eb6b124711eeef5b06e300fd88f67cd2335bc4abe2ebcd881163568c35aedb02f05af89144956677699a0c937242ecc1c4e0e862eb34999f32981cb63b0b42ff851b3e45c0aeed01018f67e9d78896d7b1e71b8056d6c8ee7f64938981994cc24d3c7691f08b6912d631a0e8a399d264fd0afd59769071fc8cdabf6f4a27bfd78e3f0e8768385187389f70621ce7a6e69f472ee342ff3e01ef7046d7a51babd5351efa1e43656506abadf699869e4764b11bb249886a86ad4ae00d90c51297f756ea910ebf485d3aef6cf3d98436c2e4d1dba5532d32f049d13be2037b5da9bf5f29d4565ce8c807db3cc90630029da9061c76d50a47bef8fdd4c8c022c0aebd9e4a9aa9c2adfbad60b957b34a2b34074197a24eb5db0a702e9bf565a8c4cf8a6c0f90bb72f3847a5a85f61963e40ab6a39cc283b3bc5ba3d355f77917df709c30c8d97086b8bfe66caef606d176e149114619e6ef84490576b6de2d7f05ec3861fce262d9a6f776ea4c2b07a9d32fa736b15c0637e38d6e32908b041c97807a61f599326336e855b25b6af6a39d0a74bdbd002eb4be30af1f6e6577072ae4c06b7f4b65901f78bc13bb051edce2cf30819cc642dc03c3935914ccbedf171723254fe0b64b958c3fcf9a0910a57034ba577874c365d99c545a622b5dee0bde2e3965b7d0c24cbbaaa29050efde94b660f671592e7cf7623580d89a952e28d45a9da4525d6f98844814d56d29029e92d19f7997717689a5ca574e48d8f49567e0da9b842f2f2cc0957f0d53d011a22a86497de0de7041b763698614af49809c17e82efb08d7c742ce4fbe04d5920c54193175020bf956b4829313481b546755f6c814823be19a0c017cdf0178091c2041971d664f0290d8069865f29e3e254801b408a4c94804522a2f1fb3817e25f772fb2eac5af76a351f7b9dcaf7e9671947374766b561703c754ef345b815ab8a7ddf3381032adfdf1724ba12b389bb84f52c364314971db358938b7215f595498c71b0829e2ef0f0d6b439111e87162411a9ff40f1a686dbcb84e6ea08864027e4b11948ca234f4353c291a90cbd38e6e4dc97e6c745ed4d539ed39aa83685204dc41904214a43b7b5f314c4210e85573f8e44c299cb50f70cf1b72df8779ead235f142cb477e31f0e44e5b677ab7a6913de2ae9b0857cee31b62ac3679fe9d823198aae94d63fb096424f2cdf09229be839e7a2a8c1b3c39f6a15e31211b339e8d4762825ba7300222a5320fa1acc45e18aa607b3415c18f9a425da694708d5534de7fd83786080e7c969fc7449d5ab024fd556327bd211a521d85299251cd1d14fc528bb024e89b31aa135fb545b7f5ecfc0f1c3b86af791d7d6bf26e4afdea2faf6d94cc358ce5c50f24409cbc1ff9ca469f152f41c399a99eb5b339efa4386de7d1af357fdf8eebcf07dd62219b6d508decdf36e72064228b4a1844e0d20f67043b12a53fbd7db1b9d4403554e5ae8fb7b534988ed770751ab0d6f6414ddb494ec5e4a1f2f619dab2a4bfacf9b021041f0a2f0df6937960f5f8b64708c03869e674bd0ea3749a547b1a4c0bc644c98f521aadd392eaba111612709407675c2ddbe09738d6af3ebc9e79800e48a42dee07d05afbc5fa239b1b9d640f68659bda3cbc488e722995c2ffb70f2f4901e12d564bcb2920bb6145c81c29a277e22ceb4375288227a9985f97dfb7b4fd6be35032a4f0de6e77e5edb676483d4467fd38299ab866cee9f3b7cc1835db4a7a2abe56da517c1af9ce0aee5e2c8b63153d41acdc18da0fda763444982abb55134948c0dca29b761a601c5bd598a4c972614edb6c2543038c008bfd81e1db9c53009b5e661719f03c025461a4ecce280545e974b12ce565d6a1126275777f8de8c224f325d67821dde414b3cf020e85051a7723fa437662a591a39d278e65489cd4c90da2ce45e79deff6de213e0984d39fb7d3be7d66d6b39cda24dfb582cd0fef0b784efe0e31def20a9c7ce8fa03a3cbe7cb0a609991da19e838b91592311cd60712c42f3e020846e6f9644f43c3f610dd7beedd02a1420240e57a4deebc635304fdaf5a0716e5c5200e8a62e37a62b51c10a67d0eee7caa953df17bbbacd76f3be8939447b205520988746fd1bef45905c9cf1efb2dbc866b4ead37982fcc3bece0fe1c9723052059b1cf739d39394cb306db8387a0d990131c06c42f2e172f67cea28e469c8911336b09fe2cf580613754ab565fd41a973038720424e04a72f92f8dc82a43a8fd185244fad5aa9d937df8433ddcc15924878d2d6c319a5df3822b5e879df02b7896ca9bc4877dc8d2b5adec82fbaf6780ab36f8bc7b71cafaf9b5d59cef86750bcb276eca53a35472b4fb06ee1cdcf3a363e3f5b6ed07c2dbd757021ac2a7e6235f1207c0badf723fc89e27c478afe5ce8982c5d334f14fe1b49c076ab3a68a99140b27f285acceb01734eb708aec69d26962538549825a0d3175de875e86b93e29a46cf2c17afdb9ee6334c9d9ae57b60bb27a734412ff16e399ccaab07f81b58553a6e5b0709c12953393f48f78c1270c7c13c2d42f0c98d7049259fad463162ec551c0de89cbc4b76a25be8c0443e0b140518b3f2f4a087bd6baeb6294b10ea07e168c3d95154ef26631a0afd0af0a21ef61dd3cbd501cb14dfaaf76e0b3cd1e0e97f180d9beec1e648395869f0f44c5fa16b6d95c0f8f849b7f99d15eb3b06aab7050e56f058896f0914e13fb3956e693909f967df365f2c1d16f85d93c491dbb5b1dfdf5eb412ad15679cf3eefb0c2cf028728fcad67667bd983013afbf958c00c8f29450a6e28890251ad7328369da357723a070d1f5a2430efad1a4c524daac22a705d98f7dbdd1a8a54c5d9385f9bd189c12f6f5d79c146e3bcd290fa6c7791e76f886898af5a3a9cdad0fb78d6de6bc2f8a723b16a4579e122e3a3db2ebbd1f9516d6a0a9b22366f8d912793a3a093d345966e3958f447456324a9227921b0bd6c71b3e7b859ec5cb9c59f65c1eab41852e605a6be8fbec66b293eba39662dc664c094962a730d661c0db9e00d003ed9dedca1f324ebfb3d286d57b0f581d88e81b13a86fca000f290913bf707ebaa00371541d9ec012efa05d94969d5a25b0fb47d1578695818facf7288a8731053dc4602fa2b4d0bd4e43d976e15f731a61d482e9bd43ec2f4ab24e137878bf7d57db09b5f96109d8b5979dd31779d4018dd25fb2b655333cd32f417d7979a4950964853040d4e5960a480b54411e7ed43508887591f286a6daff86064c8241a346b3bbfaee2ad41593875b15f702866ce16d3b973e9b337fcc45585bdad670dde851aafbd4c0323a8c6bb1faf95d9f652252d280d676b02a34f41d055bce2f7c39bd2607f9991d04ae448f4e7f2316cd27dcb8625be811cb2e96b7ae9b478186469ee1167b415aa13b142bb93c23f02ff6387a056c39a9908f2cef4cafaa469ea964ee9aba8ca96e8587dfe90745d80f68ff56418a7f7c63166d0c0909c61b333cdf70aaab60ee6c2a3999318b655b2b61a07bbc28ab614506a2be83c4ea281b9b8879aae3125f121eb17dbf9540681180faefa2691312dcf8cb0c02433a7dc58b2b3cee379e05a713003ecb63d3b1ee767194689f196efc43c9a4365030ebe992d035e0ce23fc87f5766f0c6756845b17b71a378fd73ddc9d16c2cee7b4e497e1f29aaceef840e8f17e5bb79a75d96cd74c49f606c0e0aa192bfa7959b95b9dc55d136b46e30c2babdafc5d8a156f0965447860d6b753718dfc3728d592e858b3789a8f6a3421f98973246e36316b539b5ce3557f69ada699b6997f51a32c5280691ecfe59ae4dbe0a2c29695e21cc5fa974aa6c5b9748180a99c192177ee344d17310071714edcec7360d68c9f50720d0c1ced43b2e4274bbf360db1a7d4f54633464f89b02fa970ce1c141ae06859f355652fe50f1a5efb51125c4c234cd797571f51c5a7093682e0a24f9a43fca95f6fc8936a0e50f1a400a3adb1bcdb25d336646e3529afd66238d1acc298dbf9a624778ff517bb8e0554574e25bbffe4356376d8a072ec629f4b29801459107b2e5589310aa9337eb3fd5da8d531099e66dcb749630ddf11e5073a2d92f94af51d340f9e2d7c63fbc10f6a5802d84f548132754590615ec1d12ce6cfe0730f5f4591125e4ffed0e941b291d6a8741e34f4f72adf8012f6e2f1d967864acaa44308af1cfdad311e6009c1edc3520658361c9e9e0bfac0bd66c9e1f38dc0a19259d8d451ce50c773ce3de997f17e7f5a41e84bb56a1b4b7f0931a7bbb515eb5292dde549d7303e546c7cf6a0c448c6008b84151a10a4ae427a57052742dc9bda6a84b6eca4bb2b7ccf6827902b9cf98805ecebd48312d0df35fe4417258f8b4302785564fb04e2be6a173b5183b0e0b641f939c8885010af0d64a289444baa70e33d530d415cdd7f688af92171b93cd0177ae41cc0db1b1e5373930870d4458071c9c2c22070367bf4b31d27210c3b87c56bf3c49ff91086f6f7f202df292d0a103f02234208b4e1cf400c6ea930891d8433666c96cc18dfb00456d8508aad617c6374bf2a9f1abeedee8b2a8e67297003592305e3c4757e3dfa374f6428d7e51300d4165fa1cfc8ee3640304b7c6797f2bb86bcdb9fbcb51824b4b0a9df5ca74e164b5106f8d42b70e09da9779631ea8317dcf42db9142447df18e3d2b6b179687235aa6ddd021f99152dbc731af6ce2cd000e8fa722dbd04a0fb28975ca262ab5a111564b09af10b50c66b788bd70192d45908537617ba10a9af693d6b00014ba84bdb55674067108508e7b3452d75c4e0b1be52eeb4fe800e531986bf24032c6b8b148c667c51b9a70714ed74591281ac916951f1b28d94dc336aa640f2710fc038fdb5ed1931257259f174108d6095456f528b7f872442166a95369feade1abcf309fd891bd05c57164e39ab1674f3ab0299ea31668865d40235c75916d7697b941e039624e69f25e4cc325fb4aae8b9abcb998f0b6a0700e547dfbdc901827024cbedcafcda27eeb97a5f69d2dca741f2cf6d4e2963b0ea50f5995ce0fe6a1faa46b3badf45f8807b47248b35fd346e958d18d58e230e2ecde554030e4d409176a71eaa3e03bcb472f86cd20f246c07ca9347db3efa903c311debc5a0ba9f044c71c86b5c0a87e29de6b6ebcf14a9df4cf38fe27c713c7a63f214f8b75d2399b058ee2af7a9e84fb9edeb5b4c095d382da350e3a55e4e9695c001a24a4ba9cb8f2977d41af0f71a19e0d327b3790d43f0bde1b385c7a3bb9c40b40e6f75c724cc898c15c47a3d445eb61d135f7618dc03cde610f08b95d2010af76c3b3609c6e30c693b8856027229c3b0148e96a9e8901081f5276fd0346b36bcddbcb7fdeffcd84db5f6e7834028758560b88308cf232152d514766449b0816a4b918ee6434d950e184ccadee592a680d0398e50a4ff8a9f891225493fd423962d6b199b825df3ada8c51fbe8229f324954aeec9c37a73e269676a0fdec071201f1668f5f12a758fd641a921d802d0c4bff3efe22617f2386947709db78fe0e44e8df4d095169ed432d1d0054e2c0b4302c0cecb480968577e11bfaf0fb11b542b3ade33601830cd10e103583e2e0b9d1116c1bb20d14909824d4af0e66746575beff87acce6badaa643a97dd7ffb4cf760133f0b9a046c45df7b726881a35a6d4ceb4ed16324d6d78c4c9139e9626e25f39887db0f5469b9b27141d98b8da7184f689cf924b7a954c278e39fc9e7ee1757248522fabfb0675c2c04de99ada6e42868647bf77468def0f420efdf62a029df18a95c17c618518253052b4e230514fbf002863c26cab6a54b01c0cb9d36e60278327df983835786bd3e42ad0c0990f890eac46139ebfb17fa2b317a8b3fb5cbfdd35dad9bc1c1a32d908a7fe0400b2335d362eaf619211e2aa87c2f18b2671e8fe2f4525d58463db70d9c502ea503388ff3f61df95f0fa1995822f7e577233f4780726fd4034c06992b73e38c6b0e936a7cc82164b39a87fb9f9b6719daef964e29f23aba514d5566eadb995d6507f7008d77285df51556544f116afc7dd855b50a5288e4faaef73681be8d6e10adf43e3926f097f56b58402b7d67fe6b974ec32ef1e5541fd141a4612cf0ecfc403cf1a4063d2af20f1830ce2ecf50ef309df5add3db85eb8558fbd0f6b0ce9788de56f5c6c21b973d97b2d2b72bf44059f1a5326d3d8864c0c5b2d09a1b748132b9eb4ad98a73219fe2296feaf34d2377a413d0acf2253b306ddc95af9162cff12d38651a444bf7501b1678eb2b3925d9dd80d2aee92a75faa8cc834bf14ea1459ff5aa944b4c1206cac2d989e4b0be61b2f7d1669f7458303392bcebfd745348fb7a448d2f20af607d631387b916da766e02641e43a0d8d24288fec636ac70a8e113faf3919f7593d8562378cbd16e3117211c8cbbd3e0543f7a0d1f61086dad200c6e188880a8ce034dfb8eaeb9b05f2181f5d3007e643b9bcb4f8fc0b51d59375c07fe4674e91d32eeaadf7ca8143e500ef92cd9ef2928d4bc3245ba5e23f59814452c936a56eb38656c8c787e46437a1e0506ca35a1cca34e2f1c85c7537605fa05cf613b06f12e676bd0dbf3b87ec2c51a9f150d352866890576523069911f7921abb478b37f3cc18e4c17462867a7ad02b21c21111e893ebdb6e7d0311766487f208e7e80596c583e9fdac2a2d29ccf3a048ed1e1f51bfafe935530b1cf2ab6821dfd6cb1aa6b787d8997ece53e3094766b82725628460c9aa1c615ba41e17c2508245bb2fbdbced5b311001cfde794f9e6400a226bca22c19cc2ef93c23279531f4c2099260e10dd2b9222621e33ae8df3ff22f0a862a6b57dfbddd025e1d14a9312e1f97c02e204872ed667bb3322b5f1767045727ce5acc1e30216cb1c39804f44b88842a4c29bd9c78e647be78a6eb3a2e42478376c82d589448a6bfc5f24a53c0e15b15fb0e55398625535a37172ddc525077239027188d537e59aec1d5cd6a46f1704ae4e8337eaf1595d99aea66b5a16fa62cb6e69dd8dad3e22722d0a86207411ad930e3a44a32ea5df2febbebc750260a5571885679f1e440df22532eb6f7c3c1a521e6e15dbb729b612568d1996561c85bc8696cd9a71d02e838711ee47391bb5c4b7b3c4d098e7b861a97a1eb333cefa743b7498dce5d1a7b32432e70cbb46782d85a2693ec324ef1968a9ba80160e4ca4523033f71733cf5d126eb1cea5644f32ca1ed51d36a98b34b9a72b1d94dbe431eb3a2dd2c351bc5411ffd9a9fa6d7c747b0864e217af664604eb7215f25d27e3b7a9f6af3bdedfacf36330f568d591dc3cd83c6259939a1a0cb6be502da32456694c72a0874da7669f1178cdddb00682dfdff0bbf89a2007078eb532e825b62925071b2180f4943ec2c3ba47a2365d71d1f3fdfcbc78c7a01fb5f18635f3ad46b0d07dd57d73964c12a637cf84579b116f6f16ccd8474445b2976b489e10bc5cf11d0cdc4818d49f61fae1a35eee660d1d3c61b98489cc00b1684c071e565cd3b7188feaf06b902dd360836b77709bc8d4c528417a2a612f24b810c0eb060e88aaf2a0d8431551578c11fe9d7fbcba11994f68e0ffb109b04187e8ed7ce94a19813b013347b96b861ecf50c75dbbcac39b6e1ffe006942468b4a3c931b5a07a6e5bb9d492dc563f81f49aa7bcb03a9051b6aec5f65228a8acc39b7e473b4ceebe2bf37f5df064a42621fc9c4095fce203c8bf2d31c21501512be847d5758a48e54ba179b91803a2508ae8c034b9271773914322637fe80d60318543aa403704914c3a4113ef96996208571381806f83c8fba5a7e199b7896727403cd32dfd582444a07e287bab52ccf29963c2baafd78b7f493107f53ee20c529b7853398f1526b8a8cb76eb9ccc17ec272097c57a4ca055e521361a5f832b1c2315161860fcdf8be218b1519ebc96dd702f5e37c5ce66540484614c39c6b401780a493ee10ce5745312ec667998fb69fbf8a3ffed95a5458e926a7fb62ad5e58925ed5f6d6cbc800cb083a1f4a3365e91a1830d2ed8dd3e4f196eb76898457dcaff48f339da510196ffabe3689233fcb3849d150b36a6843b295a0dd5030fdd4078c942c596f4e27c47765e500ada061d99690e6603c0b5627e39aa24c0c3c2f2b787e69643e65536549729b6bce5a69ec9a0115e7b39472d1132d7b3e035294ef0b9d0e63e5eae4ab8eb8ff64fdfa734f70c0d02b87f104171db033ec9dc1d0b220b1a8886af87c9110522efd72eda7da300add731c1744725f1863af9fd391de70e731c67123bd486ebe7a3155519c4894f94ec96f310eb93cdc475eb1de36c3ffc2b9664e74e5ea7103040b2708b91f2d560f19939075442e2b008de3a5f324304a30c94452770dfd34fbb8fcc77a270d6f0779c984c1ece4ccbbdeabe88e544dbf5348900991d18477f223f5c70d602712c382a1254600769c255f4cd76bf83048780c6b837cd19ca7d3850a5f0454ca634eaf63ff06da9539c10ed49da532f1f7ded73eda753d9c4084c0a3e38e072a60f109e0292d7e970df787cbe7fad64ef41ea1a994c1b548f26399531ddbf358336eed6bc650242d0e6f8d1b40cc31eac203a6fc1149ba4ba75b822afc15adebb01d83c28db8584309c0aaf7d0aa3c764552f27d9a1f2a4678c81a39eb40eac418254bb5064f1903634a7855c987a42315cf6547803fc6bab11d195bbd57d474f4738becbc13c65e049f1239da9edb54a9b984fdda737f2060114acc32b20ff495958edddff884ad4dac1c88730ee35b4747f9a5f72e2bce22ddf465da4b382f1c272a78da67e83b5487260eb69a184b40cc67dfa5a2541501dc5b00d251290a5525db8b9c8a4d5c3cff78687eb70595b8a83f9425ea7d4d1fdd23ff4f6262990805d79d79cb9e9cff56a7e78ea0d90488a2567786ca8a44222d1bd09724e6c69c9d1a8a48fa6fe66ea2851d066c5af28d7427b2f3dede0074f51cd554db3e5d5f06b2f961361950a68e463bfee18fc13eb90df6e679459a6bc8951273c15a1d24f796cb3654011ea20886acf2d232d3e6d15a27f0df9bb04889b695402d0c45b7ab196f2ec556d6a7e993567f113a627d89604f1155a17c9dce7baf578bc78bcb4cd66883f3b2a15e485a3574a07724762cb94c7d4c1ce7fba4a3984c38e9e2287c8c53dac4fadb73024f17d529b67c428f68ba23f09b8cae213a4fa83db6d26d0adc1878d827a3f1d31f879b4bb162ba1c38005c71eea8a55e69391ba6d447b732cc458d0d3bf54a54029579edd9214460acb5788839fbedd87056d73334af1383ea44521b7a80192018f8fd20ed1e68287871e556a70309d9fb42389e576eda674bb566795e2ce0805fd0ada4f4d3f4d4ad83ecec28cce97b44688bfc7f3ca3a014b913de95e220174fbe253ec1a8a0f67cc62cc83efa577ff72cf6ad23b95fa3ba26b461d55219b6886afd49632ca854238688ba0081b3061c4bc4e587b6746bf759be78b8e5074020366cbfb45c0d9a9f12c0879df948350ac8b6fd1fd6d99421b54a6920423c0ee1101947c29bdce545f63d48e69a0d756619920ccb6564a58821a93c3148d5c0bb85f30f137d4e131c5c7f27604966d4ab84e6eab99b9cdd63fa6f81f0373d220a7589eb6b096530532f87cc7f2762641bd68495ef991d118564b0d6e054b3e6b7958f543e1c0248e9409ba01f41ac0d25911f70bfe6705d611d35131466fac50156e4ffc12a9d2a51a20daa8043853439d02648b2088cd7d681f89707e5328a6a8ee337fec05ac5b3869ddf9aa110a2474b2d22cbddf996b5a497fc2aa42cd05aab7cb8cd03ca33905bc4f77ad9b277a9a1df964284f184f397cc2d637f3051e6f1303710d2e78ddeaabe95098176d222c1114fc84d53f86215d50db77dd769bd80a8ae7d97344c74ba70c2a839cff7ae942be2b1499a34128410ad2ae97af4c425d9d120354bfef428a28e225df449ad7f4cc5542978116e9d9be1026cd3e15f33fdbad00f4ecebe245c36ac33b57d5c2d56e22d17ddf63db595d26652d9978ab9247633b5bf9f0ee57c4b088a734ac42528ce86568892b8d422518be60f54e4d6185193256ee96cd6f441bf8a5e63d96da87c30765d3da4cb2b8beaabc47c63b1ba7edfbe5e557ba4444c6541b056f898cd8676ae65496b9a2f13d83f81fac67befb13ee293f8a94170be7b5551ad95715510913ae2178c2cf55ed12b7348770b4fb1f87a184f6c28c415518b92acda27d75d66e1cafd67381e0ffa955210cef2509b51e54226488d7adb54a47dcf20eee51dca39ed77bf7b079db06f9f48bd481b17b09f5584cdd886ceb8fad66d598c6d25f39c4cf4b453a68cd77d7f6b6acc07a56358a2835b162c905637b18c5a1f426ddbf51f9ea2c9f4647c0cec6ab1edebac09437a46ea8ed7cc701f845b69af352a07191b5b2c5311c83c414d56f50e473a0b4f874ca83d8cbac2095ab9f50dcb7406c61504bc5c53601d7df69c2680fc08d14e30c163f06af5d85690e08e58e2886178ea9612729cc025d2fb030c8d8ae8089a5dd4bbdd49318079b406c87c29a0de9211341506615f2f5a10a9c04f3145b3c5fc303f34ac35dea5b16b725403ab52e8669bdf1d24ade243d158aa2ef9ec4832617e6368e818bc14616035f66e42764bde8be281d38d87ef7f002861fdba55d9af8eefe2bd0f2c2e17851ab4fa48268a1194c770304c7cb28fbe8e28e27c84b9512079a8796256ffdcb7c536f598234f215d06d3fe4b63c8836676bf35e0edfcef966f02b9c8c3d7f1ae9df85a4440a059bb01d6832a6516a7c78b5d971c0fb580ae4e1cf2105e261c30bc4f94b68f7dbc92990433ae2bb630ed2d45c25dcd7c73bda4cc241dae7cf55cee7259e43e0795cc8158fce789cbe511550f9ebeef0e3cd96b8f74eacca1bbf9dd0c02ed38786425d5ad3d98712531b2b4608241a103e02ae09b8b0669114b4b0b14bdeae91dea5fab8607f8775a9629277b1bec5f08959949f03116f5fc343303af1161e00d5b0bbf5398d649502cdf3d7842d2f1606adf6028d735ffb509d018d58d4f520f8a1324910650f2fecd0f05257b124b8172a5f5d4c99459cd340ed6a4e8c23ccc83fdee005c0dfbff6875e074f51c81c52108b568f0f5fee1787ff852bd1b0952a3845b2583115b1a5414a4dbe13469be58cb33af07d30b5ab69b74fb77d177d4bf79e1ca9841c6c447dc7638434461da74e09903682fdc7e4f442d6708de6eb78f212a4aebb8d9f27f4481aeb8b2b0d280e5de38780f56fd7577116cc91f53d34ad6b43320d30ea5620f2f2461808366145febc4686a3d114158873fb5b33383a1181759df3d9390d64b8647b4601b5ad3065318de37708cb7655bb4b0a307043f483331aabd63cb97ece323e9bd9c3f8cb3b198a73ce66777dfdcb415b9ed8baef405b3a99b966e2ce03f57eb87c7238ad3242c6290d02845bfdb10f6f67895e7e4724bafae599d2eef5b632ad399fba01a4726fcedecd8ed898ccc51ba1e12318e346843819c58b32dbcaaf4d6d70e76d6f1fce72f19d9726c7b6e5f3c0e14dad2f67052fd2c1dfee21739589ec0f92b56205c378b147f63a41308091589fc13b5a0d2799cb03b29bba2cce7ddac30357a84e1153fe10ada25e2d74248dfec7a1f81ec2619f7ee34c782c565b73dcb354fbbc3b846ebc7eef8c1fd96958c23cf34d37726f042850900f7072c658a42f87c14feac681463a6ccd341db95459b7c30eb582647095662d1c0259a5f55ef66a7c0bb2115c7d0b19e5a9a1bc01365322efcecb47498d328284bccd58e5ae39a673631eb1f8af1e5219bd42b0fc6e4bead99cffe8d1a29d5043a1fe0fd18d5816e0725907defdcd4011071709aa9ba548928cdcb40398f48852143ef9700a702c9f6b5d39369df559bc08f92aa1b6d156ce3b43358724824e073503bed091d6fe52377f116d7fb8555da1088191ab9878691b19043e69bee546ad434a23712afbd91839546f7c51d21129b1a8b307e159b35b34ec9a0626116f8a6122e250eade75788c0387f5cec8a8a6bd78166b93764961c1a7f1d588253942fd59c3ee8bc168a74a04b11edda1ad103ab30cb41f107f19217e66c2e5d966399cc4add1a93a086421b16d8f3f9deeb97877e3cc093a5defa0418bb4301d07a2b71a17a653585adb958da35a9b221eeb537e901bf1f8d4ea148142116092e6fe5ea2b717565f5a6ca31533b998a340e75b59f41648f59d8c5aa20440403454008c91aae2ff70f295b4f54f4088ddeaf1ab0af0a81c50dfcb1ce4b09e073e54979bebc0d6cfe8210f774d82d23f4f4f40242ec6de70faca3300bff899640435a2514eda63d83c2bb28d3aa2be62c80ae8efecdc7007ed4d79c4acd43789d2c1d5d5a423904b3902a90854b9edb3745e64bc073aa359f810962b8caeda417f21662ce95a71dd0b3d5dc7ec865e098dbad7978bd13d3d49581d3904150097193ca108db28a28ce3e4e29792007343b46c8ee4db0d71440438aa2355a54e5243b5cdb1ecbb1fb781e7ad84428022ed4737e62ccda2d16fd8db845663895f340219e982ef0c83e6005b57ecf78d5ba1d1fd901f2d7c22c41eca055dfc75279805d8506ef6d635182d5cd211a4eca434d1aa0f66720a766ae9965b664ba573feefbce034da1b00e6053d32994ba87ea4d72fffacc5f2e4e986029447cdb31bccb6bc7acc121c4198569e3a943b4fcf4ceaf7b028bd012499dc670e65d894e1152765f29bf40140216dd58065852fffc183640584e0fa182853324f205da6e1d688ce8dc82c90acd5427d6959dbce8f05a9bdbb22e7d349291e65cf58df566740a65a01c861b2f85ad3c9c3738b0e31e53e02db4040590fbc59657e67d45353bd2af702ecafed24b8f62a91e4eb5f7a2fd26385f66b678f30a0891e4bcf5a0837e3db20ed12ccfb650b5a00e37f05b96c01d833c742eab9d45b9b55ca71699d20f7c531500467605c3b619dafc94255a4c8e9c81e3091da649897bc3b8cb35467ff50575bfd609effbeb236013b7ef6b92343622113879d7e189d684f0c55e3d51877f29f9e29c7ae04d9bdecc9bb0bcafd12e38b866b23ad8d5b537e62268d153aee365e81fbeeb788850ebcdbe192eb4457c89dace75408f0c95174f594557d1a2778b584fb9f456cf784fd9d5a24555cf05d1858cf376ac7fe3eb20435306d8fb1c879211880a5126e9299a5c159d5ac26d8e6c38d971511c0952afc1e83589d0ff9ff0559a9fdff8b829df043bba6833337220bce627c1a84dd8cfa05ef0976abe713f5e3e206760103d5822fa5a2a39f806d6c7daece0d14950e8b8969e8dd5bcec32ab94269ac95e2910382813d2f9532891855a7513635f1c2a0bca330c4f955e85318024e4712aae2a0c84c65a925f987b1b9c2c18ed236c9761853b0799ff5953d5c87967d43e1b3fbb077018ea4f6e21260db6a0423e7d605e794555604ddf104a24ff9c0ed031b1d90159996d0aa68c986b80eaafb0f245310c89ca4fdd3d59b93213ea6d74949ea070e02e4c69c50b6c74c5ade79844fa3a9630d1b28c8883f8e17e2222e0f60d33f9dc9fdefeae5a59f926209a4cf5b10de8ff1d8a2475a208d135b0c260c9aeba55c7aef9e048f25fab5ea9fcc8166a90fb62aba3ced6395441791596a1b2f06973aef5b3f533fe25f389ae9776808cf61b6e9991f5190e1b1ec29730af46e489a2250c07b50dd09fc73c30de41a8dbdf9155054e293f3fc980c8a703f4f10618ccb530a5bed0dbfb1898f3601ac9572c110f6dc8e6198e02cbb5c509a0ba4fbcf8bc687940b69d3078c1f2540c98dab7a019aac2ca841fd334181faddf619894f3aca055db653b11f23ddb17cdb595f3eaac5d7e37e7d9a83008f25ec4792b89af50fba99854a18710763117141ff08b7a60e6884763ea23922a201947b064f2fbd4b1696797b2fbe7ae8923e2eb1d91607f152aa8370f449fe8d9204893551692039632555a5c4afe98d30b65b87ab94852b0f3c4a63c7a2573b90be2cd6bf110a41239693ab7a117a130ae8d75e50277152d0fb9bca33d1d7e04b37bfe6416213097caf1ca3e8341ff7487f2377cc00becce1d5496fa3266fa2e537826e2297cb146638be4d9960a8be75b26447926e8034d70c9f9ea487dea031568df37334ebb6cc611130e2cbb2f14d90ba87925c09f8aeb61ef01c9af0f6b0a9511dade66bb4eb2cc95716e9975504edf4f510775bd16ead99a03c55b1510e9bc06e5228ef02cb45d910bc58cd56e2c1879191c6d0c67dfcdbb389c05944e43e926c20a2a93448f6ef423a63dd9652ebd08b206cdf96240e250f6df22f53203f7cdc92837ddfdb6de9ed3c1cb0a3003dab9c0165b2d756aa4b0b0b56554f1748d788c6f4710acb3178b341883733140c3aa803b72bcd75f3c0bb6feb16ec7a81c22699966d92fa79d33131fcd62603ca0676a52546c4d635cd89f76a7d57509c5d0dcfe052d9d4087770d35dd4bba0b7b034e94f1bbc8176b602256c3bef263d8c27c644b1743f5a730346ef4c7275cba084ba2fa93c425e4e8a200c87b2baebe9f74bb4b4ac8f3a120f61eb35a419c052d8f93144cbe3f36f1d46ff4243fd55701decd799dda358fe0fa58bf22da59e3af65e93f3b7303f1c225f6fd1e39b68ad9de826893024fd978f71dd2db4cb226a660926ff6206f8b04cba25e0da7532097cf1b0b777d71b8cc0b0cd729daea43fc489fa7dcadb43195c7a38fac32e02508149781e949c98ad1c8b79dc6c9343e75f8c7cfb1a11707b09084c52c50df24024c72a8f1862a820fce8cc693967302c9cc71bbba8ba1fcde886854c8e9644584c572a3657fed47dab18eeee34ba859ed808b0a646c2fb83c05b21db3c0fec91016cd34d84ebe97173aff395781c7ff7343e57429b73bc7c7d0fe0af857509500a5843b341155b92a8e7881764c1bbe40fc4fabc037dfce5ecc8eebf21a828f5a80f3f3fc2b0a81eb75cdc91243ec02f427de5486a7c6554f5f3e3cb4e12b60076416388ece6910bac1fdbe4e50b02618d62954194e773dc52874fc55191272feb3d96303b04615bde0fb89c064e97c8dd8752b003af16dc92e92dfd2054d4eaead81d6e01eb085acc30b947b8afdcdd32de1063034f0258d66ee4e87c86eee08ccc2788aa6b557b044cc6449a5c8b7a9416d3f88d5fd7125b2335e430cd36eb445ed5c16aaf381eb3a2ee5d00826179e978ebb3f39bcaaee1ba6d22ca4cd20ff38786f4e50e374aefb5a84eaf5dc6b5ca1ff3d979f05d57081fb4172a4a1900818b81fdcbfbd2b08d74a86136d457b709b0f8571afb75d19a373267c64c3f4ba768a4352255a6cb21e3d86a425f32c3b7de39a9a30b8b6f3ff9f8a81baf2cf60e4a05b37ae7dd11b805fe0018af6c47a49d839685f2781f00dba7cd66209f60483b1218d9dba88654aa39c3269c25fd6c7d0133530f4f8f266484c49917326f762ff9fab2e6b9174ed91f0b77097e3b3696e848f12b567a0436214b4f9d908819b90b81b8c919eb098dfbc90d4089a431a65387a61d8c302e808f6b9579db6128c5531eddd7085b99a9b937927afbb315baca204ca0720f78ca1b5e4594be67b2409cd78334b647c3fa3fcee0571517fb530282b5b9ef80918cf08ecef5283008bbe7f5c47a4ef587936cd3f1dd9607b1fb0031f3c8bee7f70c9da8d753ffd60278dbf48bdc24e3422187358128382b65cfc73b56bc6c154a3193a05cb7d0e19edba468d5079095405f76faed719d0d0049503226ac663825a7ad255d7c1556a3ff457cb5d521a2e964c5dabbc043cd14ae81b5324645db5bf30c1dd8933d22ad271e97690d683113ead0febd9b8673ecbcce511d9fe33dd7f791db1ab1208bbc67fad897ac36c4717b6e4001117989d5ac3a217550089821a9bf694ae3fa2ce289d85aa17629f63dc2d953be4975e573d8987a3bf127ab45dc3659691db36e0ebaa8a172c9c1e0a9cf0497436a74b2000b4f2f1b4c9d6c05d33c9694424867a23a8e5a833772b39eb5537ed1a7fae4520bdb92a85f610261bd63ab5d097f75143da521b064c08d05a39c4074c69ad6f8e48731975514b98cf3b0a8925e97a084eaecb0e74a8e9ee86925331ef544408c5d0bcfe7c274365f4205a3f50aa92470fe8500ce3e8cca7ec3b9cb874c4d86997ce02e8176e833445ce4338c4e692ac9446888bcedcd3a8beb1c5d57abc50f987dbff91987bf866b1be5e033c46165dfbef4895065893789c425bbd2c13a35b4b24017d213a195e546110356f7ef81ddda8400dbf1402fb16209143891b1aa0164cddb0c12480d0f21b733ba26c1e27f6309cd7798e72f7e034acea76dc4a99df7123a07a057d423956f8913b193bfe3cd60fffd2678b7c14d7e5b54cd67d8b438f75e090662bb58e11b00d3b05a3ead869c6a113ad3b986c9f0b9bd4528eff32634da91ea1b00d64f8398ce4e162de344f98cf588bc6408fccc1c37b847cad235e5347ac449970146309edd0bc2cfcdf50b2845456062b37712904d8be8ce0279063041362a2cbb15c528652efc2bdccf3631d5419f11220fbc5fabc15ed1b11db3c8e14e5bf1b9781cd884a996bf850892528bcc0ce827fedb40d983f589eb452e73b17f9d7f354b6ad5665085533c91efe4ed606f63498dde3a06f1da601a1042b1d1c608a76ea7f78917b5f8de783ff131340550fc838075190bc037d944aa9ff619993d2527e123e4179bb2c3827e6e4acc7f17a84e27eb73360cb119cd652b518f94c38d9129db7e52c2f9468ff0486ec0380cedb9378e6d934e0c99ae52e2ef9fc6489e50ba170528c958dbaf0352cc2f7cef08352a3adcb4367d455e52bd83f349e8759826f24c3dc0ed6ac7f8404bb0af5da140de87f74c4c859f218c305eacaa78f8c9fdd14ede23083ea294659d942586eae0905370ceda9a9cb4d1666a0dbbd8c0ad79bf4a735432a5eff1b5d5a7610eb7f4cc624d9f843cd0263456b18ab714f10593c935d5bbedc6489a8d8a0339b4bafff0f49d9440359dc28dd8612de0948ffb847ed91154c4dcd848a32d58077774c3aad2ecf3c222d83421f91356a1cbc441dff3e141e0bc90f404340ea881e4ea123993cdfee22eae9cb3b6ffbcee9097bea444cf0b85a7080597aed33c68a84f7ad691f6484a0344bc7e745381356b4bfa537e2da0852d8508cd687cb8f094ec884ea408ac5e47ce0cd2926027244b01176e9fa1812481a014b713e109fcc9573682c7250ac0d8fabc8dd55ce5ef4326b39a87c8c32cd837b833a1aa36268a931f809ab1a2113dac0595bc99c0e1b01e43ab5e7d1de72497d6b91d36cfd491fbcaf752c18083ab16a907bd7dab9eb5d13d738c0da34cdd8bffb1d4c98414951b0991986d35829d2053279db0a74ba87ac748040df2e82777305f7e42fe148b8daae9ce1bfca53bb8a289e5acb4d5a67837efc692864edccd344ef759f5c3aaba6e0a13d33ba55151760719289892a4fb66f82eb40fca05bed1c86af5ab1efd66ad409c27964cfe8ac6f26e16db50d26cbf5555180c4f4922f3934b25a4499029dab44c1c2e7703b6ddc075c05c8bd823c08fd7619458aa7041e350f4937636ad5bf3699759978bb98d61465c19ce99ecc1cc37a3f239ece8f8442eef66aa9ab107beb59f2edc414106fe9c7f3dededc1157725dd4453b85a6c8ec499a44b3bc2cfa1ff43ba71e794877d366bd8d7821671157e3774a179885883f6fa07c0558637d60c51dbd8310e1b3dd0d1c86a5f38574eab3d172e591a8476e2f5d29b0652ddc51a82676a0a9fe5fdcb38c85b2aa6db68920d5ce91458c0f6e85d4833f9628b9728d3c7212dcb0a1a098b7c668d6cf21f0ce0cb0798d7892c1b96f26422fac573a7de1f4b843e13ae19b7299962d7c33cee8a12ba8e50c57328f787ef1cdca8f2939e06ece8ee421e46d750582149f0d9e2eebfbcea928ab4ccc35216d78ea8e997cac95b63df1a395152655414ddccb5ccadff7bfba36944705f2b1c8d984613c2baca1ec42c9549e9da30171849caf6a2e4ebb56378e2896a4e90cb6e2fec04ea05e31c871011ef44cb50b3be928e7c2405036243a6f4c265090c44d9b22c3586b9fc84b776f98aad6144a36a8525f971cb19859a7e5538575429fc0b49ccd6b2473db23469f5ea61c320c2929f572badf415f28b1cd70b45b00dcc2c224eb3699ae1c3d88837a0151eede1610e24e8c315a74d848957ba035fbdbc7ae7df0858fbd68cb3fd5b8a0c7cb89cbd7823a805875590711f86206ea6b2d6f7d0f3bae0b5bdedf3a24dd0fe673e92abf97e877d57f6cd0083926a581fe24d67cc63ec5bf76103a9d2bc98cc5754d47539e26054b74c0a0d837332be99c3eec2ba889bf407815c992ef1d8f2965c76733173a3d68a047fe0d3b31b1718259ffd52613a87f6d9cb901b3e2e88cbedb0c952b6c857e643315c735d178dc6a20f596e84325129f116df2d285fa72600ff00c8f44b775cad186d8b7fc1dce5f0ad9576acae3a85ffe6fcc5424e908030f931b4ca44c1d4cb6989cf8e8a818cade7ec9590f9714d15b1a4884d70c5251e14413d4a1cedff9f71f7e056bdcef47218490cdd19928a691f0decfb1cc7854c56173a863a6b88920942d4b73259ea0c73f8fa4e0571de0a419bfd86945124753379d9826b8bcab6cc183da2c3b895ec584be9adac15e011ed6cb9a0e736b02f8d432cbd89a99d067721191b80c2a003545bb25f81432d66569e3d0e6cfc279c4a978b989bf610c2fafc71257d64b5ce2ad5632cc16de62a7be79c5c9091ae43238c75d97ded29521431d5e2ca63bc480f29205eca539a58459063648015b213a84005553c73a9ed94485115daabefbe456e840e9bc7dd62d4f0bd49fc63d0b8ed3f2e34e2948c1e8261cc755d90a9e80c305d8f9d1475d0a1e2bbb1d44cf004bdd754268bd697ad54f10e1cdf088155c55b97578f591a734fd6a262f2436c7463a32765aaa74da9854d6debd44abd41430c79187a9d4c7150dd3d1d65450adff282c2c56577d19950988a789b864017e9d0d949116fe7a7dd0529eee318c0e2daec9aa89613ce9791c680ff8b7a34ba4e20d603f01f81c484f4030e1225b0264281e05b63894bce76a278c4d7ab92c1f304599b8775fc0c9be0a8eca72ae14280d539e9cce22aad667320b27b5c37b74381bb6703a3f55d6192f7f436a288a28b1e63502a0e6d461a7862079ec64af8bb50c44aa23878d6539db38e40d88240dc6aec75119357e22c09117e9cb828bd90898559635a5a92ea3e6fc2342200aded2de23a047b9d1e0c7da67c015b26cf772df6527485c27a1031820fc771fc4d6ba983e090ba1c0b84c1db6d8f46087f70d0c1e41c02c45e8a38fcc2943ada8b096a4aa8ee00512469aef426055207983898aaa6874a15558aef318d7b82194001c0ea80f43b924483bbf60fd7841e467d9a2632298dee2085bbb95af00593386ea94f8b8c98351708eea0d52bd83e197a1e6c5ac15699b39f8463ad5c2846594563e444bd5d60b2d46274054e0f04ded0ec9645faa84f7b072a948dfdb26f6937c5fe174bc85dfe833592483dd173b4bb3f8613c1b8f5f4e6565043612ee18b338d4709f3d528e43f4ba65cd0bf2ef4f2fecae6d88df4bd8de9ca0e76dcba71b71cfdfd7f8296825d6696d214b95eab0ca162eb0913516e249b1a83874e7d52532ff1a3180463cb94d8efb41262ba49c795ae659a8faa4592a4499dc55dbe18f446f7bcee152597d27727f23f697a3deb4ef0b701bf01f3a249fbe3b8f8714893dc217235531b2aa4aa73c520daf3ec07486346bff51ebf61a8b61e80e8b72b5f35f438abc3b1698913c5e7d1f0ccd5f1a1dbc2a3c8f000a6bf039927dcdf5586ed9d217a6392805eebe6237202abe30b424e6a985f429b851c44dca16740133cd175b1f5da5dfe008a05fac833fcb63d6a5008ed3d6d53f32032eb76f85b21c5f5f6596e9ae3b69f5b2930a1c14771227551f5d9cc748ceaaae703bdf8cfdb3fe7316e001cc5e0bde335546aa567504a23bb4710d47f446243c5bb5251a78330cd53ff64df170909156ef94f327ab24d70726b1ba291e2a1dd78c61a95e529e32bb7be88ec7bef36c9a4193f57f7a87bc0f8b9b17b63263d1628595436a851163065e1dc8cb625810a8229d22d1d1f0804f50f4134c764585d2a0def12520a1525cb7a8eac34c05cc705170980a6c69eaf08e9a2789ac7dcd673dbea677b36ddfee9634011d7a0597a335fba7fb19c9e961bedd88f9e96f7425b3ff6a31df24fe168561538959d1e7e8a33ea0cf42aa6d713b0d1c7b3f4e969bc3fee47561766fc504c72ad80ea8688fecdc4be7f6317bb2265a4d1edaf0e961a87317860fd5685901bc45770be458bc323f6aa689742e131ecc0061d25703738d1af8dd6a2560c702718f72ca83f6b6da134274d0d95b26f144f7e83ebf761ddf50b7588196e88a77ff9dc45437c739a496fa0fd9169c55154a8314a1a33c585ad75d65660802c8b0c36603b9b487d7241650de56471984f092a551d367a83be043247b350ea90893d065aa52a46b5f69136304820a062cce658b64cdf0c8c8b62dc9095c5994712557c215707523a54b325e05aab64ce7c0d21dc448fcb056bff7f673b7f49dd95e280fbedfb9cae65704d3e4b48d03bf7632bfb1e9131785e1e7c9ff310b85cc54701a7ef06b36a590e703b01752d5d0b5396984323954e1ed8c9efe73e36c05081f43b79cabc210b3f8411d296f5f30e0a2590b8b0e848ef34fe81adaa17908c5f9c238d786d980cd872dff3a2c5260d2b96b5960600f6cc244847e8f62b86f9999099d1a6583eeaf177be4100d9123398e591124ab5b0f6aaf9a7779b96484bf19bd6cc475f5d10b3f475c02c466a966a1c064a0b629c99465844876c8acfa6b29f6f60ac6d4f9cd0ee8b3b0b61850460edf83b846f7345af9f404f9601ad61819094a448e7cb3c3934d40ca9befa35655565888ee24cd836bcf0b5f817a774645e6299a80c7316a2517b4045eabb51ac35fab5fffcda76ed1aa79b4fb49ce33be8dc351ae734833cca8525786b422dd4d2cec59b9ada29b5933072ea7e56b595a2b364ca8c7cc0df3082f52d6619235e1339b451ce6ebfe86f72010af2fde32606ae100525ac6e3b6c7f987d8a34a02ec32826f09d91fd02599e561feaac1c348e65ae520a77ce03d8ff33980492115e15d44571e53dbd186c219bd2c0503c471e618a9603972552c3e323f083c2b36520ee830f83febc66d41cba678238f1e3fb9f5b73639bdba20a8e128c8de28da6b3daaae0bffc6a7a5da6259cdac66ebf2a4ce3c5f0e591a1796dc1473266c6c9439095bbdf33b4c2ec6ff386216b6b1531e0f2f2c66fc41de049188a8de5ea8dac9fb214fa41b2943780db444e1c38700a7b43c6543f444fc97ae7105e0301b32f8a9d0672bbe066183d730ca7b6dce15ca875f7cf1f345d01c9d9b10a79f1edf028ebe30251c1d1fbd2eef24ee2971baa75bb585c0df5cf3bb3b87f8fd2682d160dacbdf3efbd1719bce199e539be071ea7a31316b9cf4dddd717a17834150979e5a641aec901fc49833d7ac5211a181cd50145f8b555cc01b27dc5b8d7cf272d6a20249523fc1e06242be9dac35efef082d7217b5fa54808626e1d3b8b97e3506c01b9daab3ea8686acec6d0617a276249e58bfa510fed39f1e748d1e83cbf020c6f01dd7a8316d3c9ab264baae4b78407ad0ef3b4d81fb0d921352478d17718212b046628a95b9d35cb81abe605bc76d2d1e3f7adac5962ae5eb1ab44fa7787cb2504c865c1855392d9bb7b35fa004e4e886a02abb18b4cf01d7f311b0d3213d01bfc8ccc4880ab661f50b0950fca1c0dd9cb8d2fc27973b6774e6c7a8f2c117fb1924ae2450a90000befd9eded5825af6fec44f3e415cae58695ed9f187c7308be52aafcef9b96de0b08c78167f3c4beb441497c7f8fd5c1f72070901a699e26a71b46a0a5b2f22951d19727ce56303fa12773856405bdc756b57f190747d033e18d97e9e0cd3677e0668f77cc8b3f67c43e84459c74ae38e900288c7e2eae2b03a7432038659aed6dd61a2912e94a9f0b08ad7b360052be679153ed3e0219d7af747e9d72d4d4f1c5a869232e74dc0d9b4997dba3a6d3c5eca2698e99e0243eee69faa703fed45f1e6938e363573456d72cfc4782d838fdabc6a73dae338e416778e7d17dbea9d61a5ac483803c2f12de68769d4ddc136cec15c97854c4c7379fd0dca8a748af4a065dd88fa421ce35f04c91d4ee04a651ea9dbfabde7970190ac6c50b843909fa46fbe0c0673daf2de7247e8af20c756c55036f6fc8f62f8334838ba290ed021f8a6055a7164567cc8b9b6aed18da6d6085e9e55a4c7a9c654779a91de80b5186ffec8f663e9a42bea1ca80a47ac6361e166c860b481b6779ec29a08cc7f99671df63d8c65f2c38fb51a9fff86410d25c31ad2a5697965631ca449b7f5707701fd4126f23c8929d0bb4cf7f0ddb00c18dc4567f22f402b1565a1c8b99b527fff544c244efc8c08f9e36bf86b6c61c65118c70b7a12ffa8514b3fb2eef3edd59d226f3242308ae61b59bdd858d36d8d18a71fb103f908e4b6b65f55692c86d91afbb0747d3cfdef576409d86b888464bdbe3524305f8def6706222ccb7d63cdc234dd88ebcdf9bc6f4cbbbc488b60f44706c89942754e7f6b4ef68b68048ba28e2bce1befaef5b732e0e44ddade8efb0a44bed4e1dcfc9a99ccf8dbad358086b309ef8345b7229e9f7600f60d79d1172a759327aaa15e32f18238c0dc59062267d17da837251d8942892a2b045ef3429a986ce4527942b8823f6a258bca389f0723621cf0447cc4d30306beca7ab6089d9e29d687c36f0800b434da309989821bcc14f2abf63969d57f74ee57680e9b1f285bdbdcfa8da2d9f700e5d5303f9c7749d8c9cf075a390e4825fcbec7e8d9b12324c8e072ae593242c5da3836b8bd3aad76c4abd4dcb85cc7c4396323fb4b305c8b00792b6284907d0f63bf99e1750ff82d67318f23222de8eff713a8cca205e0a0299696b40d0fd5420d72fdfb5674207a4f5e7f08e0ce822505867019a608a870f88487aca4ebbf73cdb575407941e33178b31a3d46df6f6f455680675254f4399c5acc05c1edccc56223abff81f8b60e9ddf5947ee4cb375574e3f41c9c7c90c4d7534e82560245b59a3815f8466840a966afd6d4090f04831a6ed168b72092dc23ed8ae8313133412c27e086a1186a6daf5e760a665827c3e441be808672dd9206d4e6fc9c662603d266045a3d2c2178a1f87c4d7b94d3287be3d51899bdf5300ee1c3985eb2de398dac7f870ba0e2aa96bdebe8b03b779b0d46f5702743ea0422e94e6b445934262066aeb0b7b1ce823509f89136bc6e139b0ff6f95a9a5b28e939f2e2625d6e4caeeb88c20f7519b9c634cc8c389ae6e5617307114e39263695eb620a3c513173ad5c9c32c6befd33bc82122676cb9f07c8429e1d0fa76e370903f91bf543bdb2c1943bb73d9a21be68dcf898c13c0483e7810f16d7683794e6946dae8152daf3577b22b45b4561c9e4bbb89e94a4ab0789c508cb04215394326b7d62cd61d09f3c84afb216b4dfa7b4ac77f6ac76073312c2a19e9dc249aff8cc34b7d0ded362f2574c92d020a47d1028d89e0890e50fc1c6bdd76daa6c400f4d75e201887509476f304c31b5ead2887a465b2bbe852679b3adf11c52937c06fc82fe1a3c63bf8e6a9f3f5141a865340cc315636e4adb7ae9d5d87654dab0e2bbf3b61c57f689ddf6617667a64729c674a5b2aea2e3eb1e907d02f4f3cab22224e7b369e108a18ac29ce3ee5c35514fcf1b37443c12ac361b84053c701d0bd46be17c32c133cfaee5ebd821e77012fb85cdf6b13df3bfb6fa4ea1d74719725cee400005357ad23718a541a0cf902d5571b2980692fb3bd1fd24bdf098ce1158c104e9fc85841582091cfd1784088421ae22052e5cb8028b9c679a2c98a5fe7ba1282e43613bb5513f358006ca5b3f8698cfc9f61fd96de75b2f6de9d3b5bfa0c5d6ce37bb971e7c96a3e9a9e39ed084a48c000308dca090b722266f04415495bf01678aeeb8f1256f9c2bc1713b420ffe2d8cd41e4d62a934ce003512b307c23738340a67d884997f3454ee1c5f9b97d5c97a43c0b41dd676a384a8ce1cec8a7e5ba81b193785a5d3c6b725de6896c7eccfe4b6f8e0fca5937c28921015d3368441b3df001413943c867e7315a7f73ac4442a8eec92732a8e338de75c1f0658ab2919c1dbe736757ec0c0117e80ef6b7cd7f103815cef1524c47a455aeb7326c13f3f8347a0bd80920b10a48a979f3b0357aeb9e877bb9b159e83f475fc1cce17fb0ac27f1e9a6902daaf0eb413a3ec401e2f45a798df4eda3ad9a2b431c9c9430b99f8e1c24b5b78567cea8acb1789491d40fc6f25ca33a5fb243fa221f4a650dcadb761169d6bd0419b9ee4e871943e84f609c3b5f17c1f877d9b70e53a7ff1a31669e73b21c0a1fd8de5368b15ad910a81edaf743ef68495feba0df84b523ba77b632f8702ba86dd207a7cc430a76f22099a31df100104fbd3f201fc21214be0474a9d8ac42e4a6d1d27b49161793a7a18100b7053ba21062e528228298a0783c88a4c0b0f6b93303e75c4af605b004c0f0ee278d866fd2fc28a8edd860cc0c8be957a7b9e13b6d92fae89d45ecc94beef5d19f0945a657f2ad82328b829699328ff66c184d45da84dc0be1e42a7a4130ddc175a1f9cd592a573047975425c7e80fb0ac02bc7fec6a2fb04b4fb2f3d6e574bd613c82a50bb9404a50b96dc820a6384aacfcba7e664accc944335e5e8fa09929dee307db63fd16da945153a9427a690fc66bb7b84fe83f948320ab3a7104661eeb071206ecc31ee494330c41f6a2b6fd1e1edda67a3ab379add7177e4b41fafd6badc53230579c27f5aa80208220b6d7e8cd6b9cbd3ab6eb1a289e72e481669f983a6c7144a1259eea418b521280a299e39f2cf8464a1172ee5c6f471590992574b57cc07ab58bafc866ca21ddd231244a72d9218ee5de68994c81fdebc6dd3f62c088803f54564f61a8cff7e574b474a4da03b394acb89f1a03a97ad160e9bfd10c9e26e4faa7ee9c2d1f63d21d69e1a1ea8f5f2ea02f4c13399514fd4be091897d36821b5ac9865c1a1b8c7839690339ee521d568979aaba5783ede9294f05c1be3e2f42923f3b5fb2b63a4480a086ff7e7bc8d3681d2d431bdb88094133afc27caeef4be06f874052768592096d30b4588f8d6a6f2f61c369b9180ee8f5591b3491c03f60bc4ec7734c43ba0cd727c28579bf189f99aa58ba0816927b2b6d7beb22c38dba9e5ef8238f7d0339fd3b8783c5dc974f7e44a8e6266ea8d14d5dc75ccb4d37ce3cc312d35230b53a6e9bbe5891dfac7972a13f50b2d91f539a2722576d86b98419c9df68dfe6aaf255eaefd07193f9a2096d457f3bfd9c728f9e1783bfc3de37535befbe4e4104f5c2fff65a6b477f791dc8f7fe773d49f5197de8fd93a1c8910d05318cfa3c278a341696cb707b97dfa5454ff98dca7a379d16e9dfaf042938cef24c3e8c24d730b8d2d1326c416823136212d4144a66471278270a02f883109fed1802604c4118c10d7d3412eef17cd47b727036838be68811636e08091ea11a9402fc5868edbdd52b8187eefea7fdc480ecc4a9da2e1ad4d541247acc3ee1cb80c59524ea49d3c79b99d44847d882f6a2282a2088d3e22aa4ca3d333bbe1371152d368f62deeaa73efa65267404c1e0f359189dc2929c4d1ee06c3e191f0f8f21ab48d65b4cca3eca5e464f42411f3b76deec91024a80b949202d5823d93ef1e7d0ff518a77b0d668a8d194d54d2fab2d4551ac4d9c61edca8bd5e19e4aaf4e2bee1e68a8065e750537345f5bb5564d9be3adb7c7f380534bf69aa524e8dec5d6da203c72c78204f1a8614ae4e41349886503c0e0b493c649776f475752d7458271e5fedeeb42b28ac82252121f66746ca6cf1bb4b927ee532b014ec3cc7ea70f586852008b6044b3236ecce7606dfa7a45a87dcbe215b3fdae68038629eb67ebaf4dcd0e14306bd706a8615197f9e48c9c70d96060544d787023b0b47e2d70f778f1812eef4b254b5d906f8bfce5bdfb75bc706261fa10049cebbca56bc36d4b1e198e0c5b6f76a930a4808e0fd24b5e7779c9c5ae7592b2b9ec457bb94c5c0baa398ceb8ea1fc37724eb0196d53f228561eaed2ef82a00e74ed97c3af0f0a44909f8da995f8c185649f4f11453b11283b4f3891452c0c19203164c121e6e86623df35c255e6499e96e747d1315e840a9c8efc01ce3de5826b19540256526263ba0570fb0348b1291eb02683b669867bfda56ba9b46bb4c973d6eeeeab32c974a25bed457fc3363967ce3bd87ed4af974f977f24b11b69640e4c8e00b17ce61a2d571772ad4b032c00bd977930af1bc987d1bd4107845c40d562d5e8969981afa971b56a78745f5391bb10422c8856ec11756d6181eaff436adb632fe16556a89e0198d2093dc7564b700caf6325227ca46c32613a40c3d6da0d5da95068160e1ff9de159600617dd3f461fab4b58c73192031b332b64036ce01b7a7f4f2c816a64068da2c11ef0b1fc191e8e7dd34dae7daef03efd97fde41026203ff5b19462f0e2184ea99a09a100806ed4aaa44774e907e4269e24fa24dd7e3aba04c6c7d0bd23f24845bb60155680099d82cd9fd8e8f1381af06ea20e90358d098d84808222486b705539eafb8ad6a186c2875c8c8ffc2919e8b64b32bfe0494cc1017507dedf6a8ed3e7de6f03c2626095507486b6dcb76e96ca757e66de632c52c82ec9a7f3571502263d1bfae55d6d64d948c8d273c41bb237faf7083d5efcc2a1ded7074857e792de438c0d812e331754998c7cabe66151d67168736545d191ca7b023e185f18beb700ae4e0ac0645f4ac5b622d412046bbdcbb5b7a32677ffc08e7ecd31a3549f2cdcb59b97b146c65efa65103b5c0b8753440961fdaeffb518c26c875e8ad66c406b9166f9f2d74e103e0a77c5ba234275672144a4ee0a2be1f4cf8a94d7f9f6689543ef18b12765b97f1c76d02dbd5c9bfd9fef239c64536e2d01681bc1dca1e5055e93e26098c42a71f9ce08b483cbd8a81f86824e80862c6e7f826087a9445ce602b402decab82354f1cb9b4de806a5f70b43a5018b44862376cde8d6596cbedc50dd056e0356e2c19d1282458d2b0e264e58b86f19fe9166c3bb97508f3ce7c819bf195b6f4f3cffcf201545f96881a7c6ba51831de8e62045f08466fb74e360abbcbb6a1e795a1ed0665dee1078aee4d374af6d2f639b91f0ed643354201b0f3197d58d6134fdd193594564c31aa545400c2dd4b484555a6c4e0d118da65611e70550f878eb2847b9806fbd80326d57676a2e51985c999048628712949f4c39965cd262da3cfefd8345ed605c27bececa44e1db8ae12d4aabfa4b18204efed3e2d0f83f2f0a92312188085ce3019db98ba2d4df72d058adb0e1d152798a71b5d941b5afcef04b80297258f4e3f773fff9664b0f136876633811e1256d5ef884f4c971859e7027df546beb003d2833c6b2a1f23ad80b633cd31e2031d3d3306a0cb67fe0b05b3ea02421c4deef96a6f911034d014c0028c3cd35e4332fbd29381d6526514b2a96a8a6ef3b967d23b16fb8d362884955a6d56a99d0c472b65eebf45888aeb03ff1d004fd99b9524a6390079d2b11fc88eac83bc48be8e64ad06f5c2e9070c7cd02b39101c2d3cf07848f5b8bae4085adb4620e703f810c85504f67d3bbdd414b10188bee457b7f13b479f9c066f27d2dd11dccccd0ad430ca7c2bf2bf52dd8c405a6e2fcb7024eec63699a0ff0192ff376b9afaca53cfdb5afbb9f62110447942a554e8ff4a844d9c98bda0286a7d54c86bcd62d641ef07ba9b2c158e9fe02d50925d46c03dcd12371e4eefa13b75e0981d59ee59dafff018bba288214140002a8a1b5c935d627233b1e72a22d80c892fe23fc2f91a8f4f104a0b970c0ff68ef0b5a6841fd31b72375d767e9805f27fd2419342b76b5b73c497b5d669a0dff536107fd5cf723e13a0897df95bc8db13ab3b2c854afb0ed8fd73ff31ec719c8bea97bec0b672f5115e18dd5fbc23015f0313c20e4b1a8981cdc39968ecd499d6c8e4dfa114dc081bab0ee0bcd56bda0030a1cc4256080120b0a8abe2b7be1566116795d0fdccfcf1226275cc9c1aa494c65901934aac13fce6e8b16c4c6faedce34897de5a17fe2af702268e2a8407db5801078be52ec7cf9e4e773fb89acfaaf5ab4afefbf297293acecd4a498d55e12a8830414ff45a95c38478c2d20d40c3ac1ee7ed3e80f72c85a6701a57673242d34692dcbae708a8eb057cb326b8adde7a7dfe867e873027d2ba226ff0878d5224f61dac26ae13d93a25adb0bdceaff24c308914d1c4975d0439ebc4998e0dcd9c8fb91c44e7cce21f40e8409e0ccdf3a85bde6afcf01358fa84990892a2dff5b9c3911493c288c7f436b575a1112ac56dbd0a186d0a9f4f51ece9b7996ff16b42e45f843cbce57cb4aa4634cc827a62337482b593f868556eb4031bf149849666a8e5809a0a7885ce8d5ffc61ff347a25471d9fb68c0805bb3de0ad0a6edac5e73011096c65192b55784158a27a225a6aa17253406d360f7aa5a90b93dadcfc9fac82f2a1caf9fc30b147de1fd53d12ac9a0ed221a5edea2407c8648cf08d792ec23ae11026068569da796fb7cd72b8be33c687f072b4c0364cd973d2d591c67c7217fffc1d5f1187bc7a8fd59c8448a7244f0a4660032f8b3fa3adc45d7390e57cb5f3e2db52257ee7085d28900a3bfd12cc930d17948b107f877772670d8e5208e86505e6110bc7dd4166b765eb89c7c86a44ff1a1f0419e1e395f24076cdc5c0aed681101df817de8a894e21ad03e96a5b0e3c45ad027054543be60d7a0a6744fa5ac6d1a34b28ce7da6274204569bfcab30ea453a2f99d7678668b9dbff385dd0b386bb7b163dda7afd39bd6b3838b4fa24eb5988b88be016737c2d6f4b19a7643c4f5cf7f4f7008c219c71ca590eb6e85229c2ba7ed9ef1dccaaa365e9badabd0ca7b1ac07c3a187000fbe39a18901d2368d0250035d9d8169e4b823329c619fd18dab5a7ab806452cf63a6dd155901e4645dcc3c463d41b9d62d902af4cf7dd621dea02588d73f184417a970c5e87583cf020919cd425f0c6c66a135e08de31b5268a5611dd22400aef517de0cb0e711ac0b22f9b770918e35e2cf754c904b2dc45f2b1bbbadefd36ddd17deb4b7be56f20ecc8c0ba120ee36168fd433d217fed578e5d9a84104c5aea37a513ca66d3b3b50a70ba285d92a7f1ee894210b680203a9912bb3c70ffbdfca26300c755776698f42413b089cbb220070b854cf18787c7094ca81526468a441e2560f6c2c8c212c075b51aad14821070e641d9dee88403e7c5845c578c322bbc7fde54301cab43318205090087ffecc901ec020fce86d083bb3a736e9333c630e050ba8ab8c6be5ba054d87b1f6676c34f8573aa589427438e8b896c2c44ab2a33cdf8c02fb618c0e1ba692a7fbfcf600b28d3419e8515717e97bf09214d9348ad81ba345f9ec32802cfb24371887cdf606c0f3254a65fbf6a41f7651f86c98c1989a525e724c17a323feef6c64b79c576c7475ddc6538ce3edfcd6ac82a9851458a51e9601c8786f31a3e781309148d2347e453ac3d0a01e388d9fde710bef74483318eaeee75b7a01476a75bba0c21ebfb71618b68bbda5ea6c76ababa79e985b0c5272f6c1e8b7cd64c4c7eafcaabd9d7fa80c356df1a24cdf6a364eac472ebe55719f11d23ecae7243491b0a130541e43d5855e0d308ba93968752385fb5549247bf3801f76f4d115dc7bbd2f2dd6bd5e3d4e68ed2f2926a4108136526da212bf9e51b2c73a9747e70df01e6113f46b2554dc310a4782107bc4596aa96ab59b4d9a0af0ad8c740d9373f1ad79b65c1a3b0e1b6c5dd18fa5449037c88462700274bc005e01f6c7b9209153c2ff6956c934bea65b53e299433e7a38ca9e09b0a9b50aaa96110a25fd1705bc3e9824f8e3870932512eed58a68965a0c0aa3099bddf6ebacc2f71061617f0f461bae952fe5e9eb5c9edd404653d59ea485cf46fafbf5b4a282ec069c90631b55ec4f8f383b5cdabf75ded7e4bc92752acfd2f2e40cdb72965e73560fa5316f6439e1791c89bebb810650f0f4598e56d1a3888c2e023a8c41e3c2e13a57b98b579259dfb012efa808f24033f5a45e26a07e3ebd2aedee300b525cf4a5f50042547c0ec15e396e056d77a50a7ad4e8bb4c45649ac4b1c098afe4d991623f747f9c01dc1c29752bccef5618c12b2c582bcb35beec39bfbdb2220e7cc86ede403e9d700fd8df15ff4ce823e829eaeb0e7398c32ffcff0f8bcdd2290e3b3304d459e67bcc51e3267b38b2403311fdf79f51ec41f73927ead9595c73e4ab779f3c3fa6a90ea8cfa3da4abc0d7b641deb52ddce8f4620282fb7346d9b8218a6aeabb05b0ec8e56f4e543d31a112fec804ed4909ee8b31f5af09c3d1f10e40b5a0bd74e44e0e86af4c80fbeab8bfa197e9913faa55201048b8fc82e45582c9ae311707657910eb2cb2fd1df9b5eda0842287a22678ef9c6d0b34258eb83cebdc693b718e2ad055ee8c27710a113d3df35c6f2d8e757cf0d6c2b987ccd1abc160ce53803813bc06e5b12a57472295b7fa9a9555989c909b68134244857513bbc93bb760b55efcde4e92b9f86eb361e4ca4a2fb4eb3504ac6ea17279821e8e945b2efd7340bcc24795df7164f2405eb753433de8ce1648df056afa629b80482e3b05c8125f0345b189fc1b7e7715faf735331dc51113f7b5392b738a50d6c45fd2077290cb58244e52e1a1126810e039cddc64815a4716bb6433bbf2fb784f0fb887964031cf851258adf8a317fcf52198ae73b59e5c5d70e30b421b7da96a79f5be177085d21d390f5ceb5ffd559a22c31257e6a03c0265c9304aa59a2da3599cd7c9c4b5e69416f93b310622d0f582908d5af725aa26a7e37aeaa90c1d110471ca32e4faf45c3fb2ab75fddb959954ac50e2dee875edb6790c68660a5c41d5a03926552b03867206ce3340426d95ce1126bd564e3391038ee6fbc1b6ab1ac9264c81033b267a232ecbba8d8b0de3655d22a5896bf3545ebe6f161979be66ed3a5d2ed3d497bb6bd3cb4bbf53ef1cc838d3897d37ab187e63a239e9190c6801de2534e6f48fdb49848927a47b90e0e3aa0dc639da1125d5d90fa7669bd8a4114b6738d9181df1faf4732ef79a85009782ff45fcd15b0496c4b02d88b4435a1bdec41e6313f900e490087235eb1ea2045a12ff9803d6709dbf97872c080751c1180bad87f87f72ecd72f74f3f04c60cca2fc615f8d2d5ccdebc423b942bf42682fc67ed295fb021085d5004eb85864c262abd7b664686f50623c93c4c1874132567e1eba40e630e27f6f581ddcad38c92d56a411ee075dcae35db80fa8a8d19c3ad702d2c0c802063931e5852d561f8e0080c047395289adf620b9791b52b6734d57250934ed326997f966ab2c4bb4d65ad7e88a2d0f483026a2929e6f61becb80bc89e1ddee6d2968ae28b9a8eb59c0508ba38a8bfbcd2267826bf90587bbdca090b7b041224693f6d0166b4c02834681b7bb1b58b8b146b005ca50b8231b07fea37a49ccb1da9ebfd6874cad262359b764097a4fa47f4981eb082ff3cf5e9e78dc17977a9e444b9f232107d07fbfe2ff2cc1a3e369c7e76a5ff0841dbff2ab1e69084a47474922049198389dcf591c0c8ff982e89479a40e4e918af9e92523a39d8cac4376298372c4429ce15604b48c2f222b071b4e16f85c9763c8b15425458ddaf940f02494bda77d0596ae076e5cceb149cddc84f7a5a95fc6cffd59f2a30b77f56917c5d93d3a911ff8552f4f4f7093304fb03d2d9e0c2d8ed5a5963614756c8c95e5ea0e29da8011c44d359571c22506558e746ef081a2c5dd30b751e01fea027df566fd5712468c4ca55599d521d538e1f3d1dd5095797306ee993fc4c3c784a34b73195fb0c0f615f1c4334016490ec2773aa8db9c0cd49e0bc60553296f919142799b3c2b2d2d2ce24891e0f643326b1dc71d7f44e794e61ae500445ec2fba5eea515fea20a8d1845424475e94c40a6c390c8dc05e9fc273d29d5398be4c52d741bee911bbe56f016776697d1012ba6bb4cf0f573c8f5510d31e7ad80aa02eccad95c07acbd11ac139a0007eba1daf0d88a008b614125a2df4083aae16c66e8da11da5b93680abbb59688b37902def63369a56c783b0cf64a6774235e8a71f243eb6a203fef08db2c53ca154867d83053f8254d9c3de11a511b643b0b60e0fc86b136000db158a0092f1bdb460c14619f13ce2ebaf20e67566ab19cfaf1e6c60646387e72bc58dcac7115ba86e25f586f722ded694465f18016021c8081b81322902bab4f3266883c09e606a9778c8b266cafca67f32a1155126b4b7e01b95e4cdd580eae64e23dbaa56d924267584b251daedf72c7a7464c710c88ed4b3ed6889ad3285fcf731a4bc033fbe4c45b9cf03ae396e5d5e6c82124864b6dc49557656946d324973f2048ef496c8028792b629cc7ee0d589f3d12dbe4e77076bc8135065e9a203f58e74a1e30d782995e7bfcffb052dd4ae26d1840fa109ab0166b4c6c52a7101179204aa3da238fa9dd64ae5c8072061df93573f9a24ed1282de21c81cf0baeab10387be4239527b5c16f2c3d94f06257839110d75b06d660b2d76e5ff3032d85fdfd9681b00b1a95abfa16393056cb4b2d94c19ecadec0667b87dc097be57c47039b0e509167278bd432236fe3e6d84ab3bb83b0c28b3caa761944a9c4bc172a029e5b110d4f29818be1ab2c3c1bd951beb6a1cb9ca6f4d7ada70a102ca502eadf6c61b6f3d7609f9da494cd29f489dadfd3e21b76d2dc56bfeb0db76dfded4dea92387275e4a5443ab5c78cddb50320fd999f81fb88b074b55f467495dd412c212d57ab77439e8e208f45b9d26e89ae09d0b91ebf1e994d7c0cafa6539a4379b02bab0131364b38e3f06bf49673cccec26a3a878eb919cc17ee125ef6a98856385fca6b19b7f403b86958ac1256a945f1547b175c76dd081e78d98f3be8f966e96b6a252ac5fcb4224f676b0e2b2a66a1423d00af3152ba500a16135a9739b89824ceec90de82270dc084a5ea041d07a0fe9787221ee64816943379a3f7373a4a97915fb6d2db242a7928607323f3b6639cf8a42e0367b7acd0a44b874f46c0836ff8456a0c923bed7e1cda3ca8fc74c4b6d755b0ddccb8cb0977d453e6ca64fd87fc48a081e79d28db8d8883e120847ecbbc6fcddcd6cb998a8c7d8d96b0fc201d17d507cb23f11f7ee0d05ae26ecd988c2a4ac850e6909a45edd086eb88e57f16effb585fe85f76b15c3308f796f3031973adbf2faee6312b880de7b5d9f723f2bf32e06a1960d68cce846308c4286833d305a6c7e02cb1fef824cfaca2980e30bce10a4ebca4ce525efc6fa7cce86ea89284243b2bb468b626f2ebadc7e25694498e1004490614c38ae03b1a29144974a67d1374e6dc05ec2a8e2306a67c5f0e469753d39854d903fc72ef66af489b485a49a9600464e0dce7d8251cddae59baa8570146a4bd1d37c921ee9643fa16ebf5eac1ac9179cdfef0cd532d325965b67258811117ab2fb1b9b91b6f1cba54b12ddff22f7bf3713dca424b0ea01e87d6c421fb000da18193108e76bbb82883532efffba3bdf6c993032b42bfa7e63f39de9b86f695baa047dd0278afe7e7aba54530ee934ee4b90544b1b346ce5585502c7838aa07e3202536fdc468c8b1ffb319b64290b94c64164aa850fe0afa513ffb42fa1561f08526ec571a6786ab30a463745ac45e811a5630e479dcdef169b423ebe62b59f78fc6817901864f6bd632fc057053f4e1d2b789e15f66f4505bf37e31adf9ecfe9c5566036aacad9209953ba3ba0232655a84f0da62b82969db6c872ec8d47d77c09729e6955b0f29a0a80dedbd3e393b6b750631443a79661f1a08ee3a3442bdec4c2175d5009eb20d7e5afafa8149fb6ea5f7c2cbcddc37e17bcb8af5c0da549fb64c12ee85f16670f517e9aa259219b67ace769ea7a00c3793af4bc42923bf2978aa5d8cc35d370fa55d07b1d14709628fdf6981396408fca1f2974b07629009c2fd04e400e2c9a84bc68cdc00456776c9bde1a816bc8ccd1d48c2915c7845f294239195f6d4467493ef0cb6106a29a1c519f43da4abbec66ea00851a02317473d7d8797badc0959493291dbd9e0e10c9c2efadd99367aa7e542cb8a65dfca24afbb1bcb922a8e7b2a99d35301bf73f34d5c70114bf353dbbc6fcf0f2d0e0c1c9a7b77fe270134a5be19a996f19afa8776a2699b3244c648a364b5c2b22989f0319fbe79d64a307d9ddda67592e7e7074bc38cf1bc1a5b439cfad8dce977a7c9fe4857696008cbbadc291012f2b0bb55c4bd233b014cc983f847cf29f0a671180efbb5a363ca96518b4c464e0162af875edef74943434c9d4743463bfd78c327a4dbe22e71c25f3670543642ea7d0770534b691eccd9ea75ada1f12c5990dddc5fdd8ef7beefcb275507bdab23584ce8bfaca1dd485695a29a75f3a7035febb5a913768ff1d2530071f2456abad554d1da39ece586000d81e1aa5899ffb63f52da6906c3a6e7d2bf54b8e2f44178d2ee3c9493e1087d210eb90777264dfd55042a2b0644aa6685d03e424e9b12903606a29faa3619e4e2975a7fa1c2acd6f2789db9c322d252bf2e70ebc74c14a633c8ce204355b1e02368d825b40a4a61fd64c5fd83adde404beb2185d1da4ee836031fc2d28ffc5ee05384796235aa0ac25c27868cb9df44fde0af06a00d526ea0cebaa41f6bc0c00b165b70ffa1a7ae31bab842f1ad783a6cdfb59b5f677be1e64bd26c70084fdd6c34cd2eba40244f24f41fd07aeabd3af28acef46b4a7b3fcd8d1e1b8194d3f67b94df8f58318f9a9bc3be6322fc68c24e47cb0054f24f3c9d75be92867a83aa518ef1fa7057211c4cdcb675efac8d9d7daf3d33d985ee29601406a0b4aea44963ef4b9c5aad5ad1e050f9fc731220f376702e533a698c95f81dbf64a44e52f846b179a875cc02197018c43d47d7ed18716951108e71798c278642325bb209e27178e143d2c5fc7e6f9e54663cba353ccff49ac3adbf3aa0eda74cec6a3e135f7d44bf507c1b10fdbafa208d047cf3057f72705574479fcbf19d9638dfdf2d70addce64e15b0b705a4d3053b41fea8c3183e9fa892b557d5f2bc0d2d21f60df7537ed92bd8c2f83941176fbd55834df63d10d42b14db9dc535383e92f9f8fa59860f2cea87224e3abd715ffb96bb91d78ab60c6ee8b52442e1be28dfc181c44dfbf6a37085e00822204829a11a871b59a611547a898fd9ae0e8e7e1e6ee5325f55712ea9ef0b665e7a309f83cb88bdd8023680a60c1122d414206d1be9b194275905dbea59adc4b5beeb0e129649aadccc0f40d05f78da1df457aaa76bc6279595646f1078ca1a9eee8649f1d0383209d8d545d823c2ac02111a76cd729a9c8f4f9af61bb1606dc6de4c6c84b69481904636cb4e0b6103b00f2f44081297fe173582e9ffca407a11f4926eedef7cdea57be30a9a659db9dd22033de4b1a7d94131e5f9b1868cbbf0678a116cd4b9fcf9d6333a42eceb10090df9f3f0fdd1c9f27e18c066d441a1c3ade2d6c1b16690cba2d5a05b95c5829daf07463dafa9f9c72aa1a2ec4ba66eedfd8d8a4af153273a6edd612cd0ff80dd39b8ac8cd09a5ad3dd0256853651fc962c51df410977ea06c4df7ebcb4368a02145d78b9de315c06d8a821f708eda0a05fd5b2b6d199ce3491afe298b5672db63882c3b1ee85374b48a57b234f07b932cdfca55ef66632df41cdac80b8b7a891feae533fce9b9f080da248018a884bad6128dc8e558f796e1be8dab7f65e5944a20d3489329ca5508d328d9d9d1affa60c2fe81e08bc006efac3733b6202be06e5475e713a647506086354e10f6c70a8b131e1675a55110172f35ff036db1407b930d6fd895fc37b734c55a3e5e8720ff8e116e21aec7744814b3cc8578537c34bce38d24291977750706e4af35ec65e522e85b7ab63a5e85f04684ecb4770f69acd788d04be24297731668ca052ba3719711609bed9768a98cda10a01139b0d4e97711478a7f4acdc50eee491267412f302ba4a19285736003934ebd72b21e48d1ca7688d5a06ffcc00c3bdcef96eedcce8c626355b1f1e524cf60fefc727917e6b58cf9ed39311e830384ad10ecd87e93058752bc284bed5d0e2e0c5d1a0ec3ee2f7f72d0ba404fdb88960d685f10e884b308ec5d93f52916fefe3b5871ba3d5a81462d389067f112460b21e5c86a80135c95e56a026b8e33c6deceffb0870f75c9d5f90a97c74a05fa7ffb28c0136f261415aebe06ddf99f0c2af4ce1b33605afa945a96b06b07bc6cd0bfac8e18768cfbfef1fa978304ea5f422ed68d676500d043174e3a8bb07849c604367649e4a97464fb8a3061b0177a7bee64ae523c028f5b6212455b248a41bae6aad936e966656e9acd13eb99165097a7ebb5baee4ba15169766fc3a5ab156ccb8b547e9d03f616a4ec0f6329d687f602cb67a33ce10a646468d0350d5379f4467ea0eab863db2a9a8acfdf96e0f6e452559a00848305b0e3a6c9cbbf6ae0263dbfe33e6d54e6e4df587a6c87d7b272515b09572e8a88ca061b7df1e5f56e20482991c0747a68804f422b33ca2630ebbcfacc6ca1a09c9e5a96c5ade0833b5ee4df857c314a9ec49b8fb2fc35b528bd4fe17a98d672a32cb3e0d20b8725d348c7e1f8792c2ca939c2ec44b8e6fcacf78b5a32e4534b31fb3fb9df43d64c2fe1dd0574ec7a4b0ea954ffea7b569def7df865fb69f8a28c13b5856e3a54792cd5ba32d19cecd62e034ceed9c54544a07c28725ad075af65f93c75a8462a30ae5aa609d1840856bb0f11a866d99785949218a2e5ec706ee1f8b173a71acfd97493d4a7406be04b3095e16a0838122d0cc8733eb6e785840af250453589d1082841dbb14650cc597da0cfe78a5d3db18134f0b4cedbc75467abc62960d01b2b8d3e9441ffa9361fe28ca9ec209021fd3f5e2bad4ed7d1d67ea711fa0e8256e65713af3290ddbe8588604fba14c69c06f6a8819dcb87bf1546470baa82accafc1977df6c0f25503023e53d4238608db2950574b9c8c2726d8f3a16236a2c78761fc4599d35768064e954de6ba25fc88f19460e390c0f3f1007a73e0831295d8ed48841d68ccd3f0657e9fdfe400260f80b4492782620ad512559141107a0ef1c14bfa67e432340a32e09430f0b71e2dcaac1d6c2677e8ab09249b8a1502848d50cd2ec90b5b5b6772897ca2186c7ae7abbe3b089e04fb0167b6f2cb3e02ced5d8594c7b120c432194532facf1149b46020ccf002f31b41a3dfcbc6bb0445d8dede0387895224d7412f7dc9446981b9312402f10a7e63e6103d75b3d79edc2e525d0d4a7565fdbd3a2dec339463dce2d43e5ef0f1f07286ddbcfbab12fe8b690e1738256ab945b7b1bc25490aaa5d4abc0e5e67ad452ca3d20fcb4f1ddc03796b727ddbe06c90f02cbc22029f84682409d405e0f3aa788b304f6f2a6f8d5e2a3bae8ea692544e1bca0260ef2ba9167536cc134c1fff58773082fdae7a6a83337a28b2f1cfdb36be216e0eea45a577b4a0b1bcad08052a7542f8331169ed9d523693ed32ebe99ea6eb53793ef328d2c152050d73b6543c641b437909ac0377f75ad095134c336623aae89729ba2a3e32018cb270c68d24e6021809db6aeee0189278151edcf9f158b40e2402e61fc02456ff6355afd8280cb2346228042e3ed34b1f8642d8d45d786f00552b6ccc8ac1aed3899e4a675da8e126245a6f4c871f67b9430319fa38c6fb895e1844e0f8399185f00bbe534d8ef64cc11069b447c016cd43948cd7ec962c8da04208823339479cc27900979c837433eb411d56100a74501710733be8868c77fd507fcd10e6d2ddd6a24f1080ce610ae07b49b2b3886e3a48c1ed7ef93db51fd59abab788137be959d530d349073bc1d22f76590146b625868e0636be2810fafdfd6065d92bec6eb4992485f8d4673ef1ed95f2ae33e89a326abbd3e8ef6ef2050bb5f629cef6886a96ccaf74cfb1e726664580d1636c513e8cd83eb83ca28414aa46150d385b415f17b698a378fc0c8fae9c2134fba3a4c50efd52d6128295ed0a1fdf927f0af7978a75673ee958bbc4f9c2f7bb9c26e05a8aec90393888e05e898e847e6adc067ab76f696e426c34c72f3cba0afcb49da45f4a195eb27f5271a74bb98e4dc4d19cd1bfbd05f5bc7bdb864bc061a2d2ed9934e134e755d3b8cc17d5fb17549f9332c6594e2d770210722cebe65a040c59cacb1920b18f5f91f82a0addb43ef6721c5556d1931f8a63cfcfbcdbd0a69805f91736f1d01e10d5643ed9e61cd4794caec14c2fef8fe6eb460ecff965d162e132bace38aebb451a54b1e3c3128f370432197e14369f694bf56f5a04e43aba98c627f7d85398a4d2900e10745f54dc7cdbd0e5db9762630b06a6addbc0089b908098e1dd7036d56be62f9b1fa1e4112eed5cb28e0bc5b6804484cefe0a0c3e55ffdd6350031ca2a92be3feb030cd7a5128cce4ca85dfaf6f7a951b53dcbd8d61ad050ec9724d3cded3b25f8800e41308e4f853f74accc82266981975d711c646d722cdf986d85d6dbc8e8916e77c0fd8219c90c512064e792ccc9eee5a69ffaebec1a837c86afc3d285ed9dbc5c7f9ff0af7a79079493f9f232e8eee2245a7455e7e6edfbe64763c3276fe5010ed5d06947a1d3c7f8d59144b6ed4db749b2fc92828b33d273a1e00cc1d999ee2be485676f6ea814f37536e5a3dbbf69446aba119c26c5a58bb343a8345265c55d07c9d78ead5b15724af86d9e933f55cc88e9cc3d85dd0934cbea191dbd18f21e5760223366472c71332387b843178f8a4e5aa05be7025f976dd477261ae368fdbe8cc8290769d5011d59e3f31b32616766c4c3d66e820a3157acaa5bbc8ecbf6810a28640fff0db6229105659389e2b82aee8d3441dd2d50796b2766d3e7b717bc3491d73b06df34180311261bf37c456b6887135c8da2123c61a46b836980bb1e306d72d5b171fe8bb9b6460d0e867f4b92289e833b6092ef273e0ec9292f9731f7819c0144d4ae6fe5a19f3ab00da2777266f03bb6154401445a1ad682e95be137a6ea13a987da1a6108438d83796cc92c14430569c288faf2b46b4b2e3fbcd33a1424d6a24342fe42f1ffd9660dfcc0a4df48548baf312732de75eaf8e90e442daa44c11bae0ed367dad99ad3a4a8874b7c1828ea84052a77b9f436dc31c1a89e5cfc2ddb2413f5929f7cf168bec6714521b7dad9abeef92096b017e88ef241ed4cf6468a85f631115cf9bfdccfb3be173a4242e61822e2f8703b8dc2a83399e0a136a81d7d1e46e2a997be193f68ec2531693b20296934994e61f0208d746c829863b80ab8c80503048491cc9dae02094911fa1f27617569325fde79a428c0c5fb71aaafebea65836c951d27555be8966b98e2cd3d3bcdf7c0ffc75f21dd0fd7588adb17f288f6b98b308307895e9ec3c06e13f86324d3532a298b5b873a8379047f2bf05997bc12a00d2c28f7a8054bf1b1d961a7f4f90b9a1095cc7597e509e5bb1bfad3018057363b343bbf0269f4e56214df761d967fb21bed43b0bffdee94dc26a907e3d7f89aa32b8156893055d50e7863f3e689fc44fac892b89ffd12115cda79dfe9e3b4cbd336dc99b9174b3b90892447a11ce28948f7d53e86afe698746b1580f4c1a11420f3d8f5f331a64634017e6db9812b8d6a4be560cb5314da88f394709d260ff15ef5ca512a4bbc1cb38befb4a5fde1c5bb498cd83e0b5d7d180e4c8ad1378a795d26452626b0f6fc1b50d5eabf9bebd7a96553d70ee600126acccedecc4076931130a674c296697cbba89c4d9f485d65cb361bc71680f3e1d9a31e587a75f01b3b781c6fc97a77ca29e6cfce2baf0e9d013facd5ebe6fa4880fa51cc5e2f9e88ea8dcc7a86860a9aaab53fde5d195d1a167a2d442d538f675ef4098a574e6de46523ee10ac280b14afee395264a5e820bbf1bbab158489f52a8203c2dd7c12f24d7580acac6c9984b0d45a4ab9f4bc8a210a26ed8339ab9757f2cdbdaa36381722005a021e58b2af6297658c17050411a520bb1d61d641b142ed6d758eba978d1c40ca2d7b058848af7a12de45fb1cf233c8762e20a0b1ab0db0e7117207cccc73e047d70404359340b73fd767bb87acf89cfc2784e3b2995955786605695c976e0dbed74109547179af70bd4c49fed00feb5858bcfdd47aa92822a61cc1a7d12c5448205deeec2b94c73a82f3493c614a4ee4efe4b15a97910a18bdf58a8782e85e51ca146675a25cd394ae243e2a620f4d52ee451d1169895764594df2af6b0e132372760c3dd869bdfd54e558eef930694a5a29c513518c0a7ccd2164e6d5403750e28ca01fe16be70fd9c65efcc9ae0fe952c79650ecf9aa7b86a9813ffb3f7938cd731e48e2b6bec570349b1239055d776840a7c80b8b20030cac4359eae65f1e3ece2875896852e63e6bf0272859a80e4019dfe0a1445126a62355ce955a88a02940cf8d9bc6e6325e0ba16b60886cb250e2221c6a66d2d07765798dcc17cbe64a350bb8b4f859a1604cd6d5b8e2ae69914f77ea6e024524fa8c9232f9891dc4473b0bd6bb028a568d4bd82b4259b0684c08b4939f97a983958bbc1e8f57ec6145338825ad99f3057be321fb8679481df57c0051332b37222b7c90271340ab1ccf8668d8ff62357f84669442147e3f42fa8f3dc4f10ac2ecef7cd56d657d3379671fe416c7cbfd7e4af3b5645a56e470f480063306839d8924717141c53a07a1706c567030aad002e4f35bfdecf69d41734affe15f63e2d2333113c3307002dddae233d6ea7514e838a4df98730481aeadae7d6d648f59c12e3299bfc04670c076f88ddc45e4fba7856db90c35308b13b3fc4cc309a8ee115f0d2b4bb2928de4f2938ad72e1421340db8d21b6a93664c0c36a8ef8b5f0fdb20c92921c520947f876c0a0cab24bbee74913952ea5e923c0f7afdc54ad9dbeef60caf27c53c38c45343a2b68e690924568aba4f0b084727461bf7a5f171b69d4f7c5210f6d2bbc9b7a964a740aceb3259f2977fa32da3243eb5b22966d1a8d0dccbbd502739e99ba974c5ed56689a39e93336eeac1ed7694053eb56c4d1d41ffbc8ad75daa14b781c98548a4741160b996f293299bce1add6ab6b342e56b24df39091800c8a1e40848bc3a640aaf349aa7703ef00235d6b5ad319c98e8aa1a69c3d729c210d920e09bc3aa07554c22b2853bcddc454546e119135d33af2c31618cabd0da44c345587bd3c388a50de79d6204db8fc2b6788f3d5c30950cbd2e1f5e0fde55e70dd6042c856487299b74cc9260768d7da0baee80390c2ba045ff899c6fd0adc16058723666a3e344486b26548db78889a89bd46065cc1583203caefb655c0e3dc7bc3665b6d1af20ae26707fad61a934304786cc765d117693bd921801acf2228a7407289f3d732f29713f8545d80173229dfc4e5b1d49469bdfa99db9e56a72068515f2fe421c4acf18e885f7b924b0ff5cede5d428339f0edd96cfc845e703ee513afdfc5e78e9b69ef7953dea5f89a8264535dc8698771e306a1647abd0d3b5bf0ee0219c8364522d753dbf30af3020738572b9c5aa0fea2d44509379fb6f97e1693bd92d0172169f6071c7707eaecbdf5f10ba5606dda90fd36fe06a629e321fc8ffab4552a9aadfcaba83a7426b1b9e9ae633bdf77b651fbdc0c7deae26426a773835a33b07b5e6e3b41264c0024eb2b2eaff17c85a1cf2c3b673a0528aef374e854c5bf66c3c171c5b221f6ca17c0f00049638db6992181af4fc63910a2dedb3211d9a1c2ca7444a7ba30ce7797585a416160fcdd777024ab65cf6dc76d23e6391fb5cb6436f1ba3946622a6a80d0f3722e7b67e1a3db97a08d7781687683ef1b01aca52a152f59b052c5c6de14361dd8e00736428c906b14e9c678fba965cac4e2067f6ec49149f52543e9f03eadf20f01f5bdd298a904bf6b5a490ba9583b7907a0e3dfae1281a9e259b2f299536ed561aac6ef161cfcda3b0c6e8771e203b13e709a06dfd00012863084184e7654a2ccd6f7269b250778a835ce936ddcd6da001778a0487cfd83d3b4b3ca8a97208f92863dcba5ade82a166f8f9cd38dac8e2f797d752c54665153e0675cfce796fdea1e314a3cf3c0590b933325936208ef82791287b13a9c1325b10163dfebcc386d9ee60ad3680a5e4a6e3fc19eec2b6d032dbf50b89f2200f1c01e34dbd1489190b5c44d634084430e9f3aad05d4803af78e5dbea000a2330b7e7ff40fa107e03c87f6cc564a3f6f62058d746b5173c7a74c41e7bf4ca3e909db504e7e0297ed95273ea737930a9d374b1c8848721132e6214a145774c272f4978cb8313412a074008bd662763a9728292e4de947782d2fa07416a048789a3b0ba69307262f9cb7cb35a98a7aaab28fcb813075fb3c28e90d499bf9b4f6f59d639526842fb05e471da8964331b1ecd248ae78c17270e8c89514207b3dfc5d65a98efe3c7d74418b0c15de64e32bdbdfc588591fbba3e9cd7fdee3546e568739e1cf4fc2f79d07f733bb0f32d26535f81b9e53782500c29e4b323d32086f9fe7076ead66014c1916b0b7ed115d58cd1928f414c4e935790134db022f7cb75f8996fd9a937e1853ac90e997cbda500902a8f281ea622a2770707f95471f0a7c34c8ab706652ba5b7c9f8facd1d82ecb42e29649cbcb364b4621527715f0e30914d0b63cbdd2e0da7b54b2ea3eb48efa51888e7a00d3d32b6462f110cdfcc252e1f37285165a82a1916245d2c2320480e76baa28188cd2c80574a1259e57f06843683e94fb76bc6c1765e96bb642679aa634b12b1c8b30fb282d6f4d0410643dbf2d298573b918e59a244244208f67258ae8611873b7d61f8c3c8df5b66db9a389aee92fe2f90d00025e638aad0b8eb119e25524ca2b218e022e3f59d3ec9acaa6e0354cbc343d054fe8fbca1506f4c2ab2320d350eec61ef78fcffa2c0769300023fc509cdd200d74733e8dd1566866aff3bd6ccba49b6bd8546a9d88f7ef948d61f72c4b54bbb07e1886e920ced2b17e902877579f8d8e863cc6df0686ed81688e8ff077cfaa43c41b06eabed0e92630119441a291c52df9fbeca379df4ac8966db2ce14a9c17bd3ea2b729120b098478aa90f5906b141d309623996228bbe490fea2dd3bf0f2b5ad88212725f5689011093b0fd5c8db3febfa88b8ba5d67cb500aa01ad718f6ecd2f1ba51e0316a731b9f36a9428aa90a9380da5fa0054aca7b559bba20d98cd153892cf93154b60211fcb95825afc4a5e3aa77af9915ef57b5c4d83f28405bbe58857d244f847fd3ac3417f352798f8e541dbd0107b298a2a214a9467754b4dff18d879fc8620741200a85b58860c71ee67f589c7949cb32236f6a7b8ae47031ad2aab245b3bf772c03d9deb6bed7aa808dd6f46b6215bf4fb8c4ab966f7c39598ca310cd0e4c2282b2131782e91be346c2b1cf3aa511f015a63ebeef2104c5752b46061c9c8f3a670d0f4af64b4f96718eae65c3bf056d8e65f8cf78779dc2e36972a96e46320f614afc8b684740e99882167f12387f50fe5e3f659dcb7d2987a2e059968d7a4957292ba7862e865f235b3b06669a091f18bb9faf1813d150ee685c36c354addb028f94ae5a38a947b7dda52c10837805eeac1bda0439ce79bf126a458a3f7f77f39cc58f2838ba3862c0c1455d8564ac593bf7f4c2cfcda2ce0b76dbf21c322e69deff36757d16545018023f2cb3f55fd6c16be14d5e3998efcebe7728b2a35f645d388259c5ebb71a583284316f6864103a589451ba6477c801aead688190a7d23063f02de1fdb61ab2a92fe4313de1b1964bf06772a4be424e71fc39ecb0d21d3f968940742b3c0c398f36880f59567fccbeb6d2c5b5c30b6a0cc48c5efd24f7866009b509320bec00efcb0a4bfcf34b1a34d060866db5a8d37a9d7f0bf0fe3e01bfc98be4660a4c20b40feb3e8ed22256f435eb70b62c68a316bbd770c5dff3a9ff7543da36f1ae04d01eccd9d4b42a53943d82a2ce03280946ff6eb3cae247f0bfbc4be83bcf8e40a31adb111f7df7f477f298025450c26aea88dfd57de541847b81f2f2239f778755b8bc8e7c5a455d07d8483218be04b48b10d825dc5d748dc1a7f9aef84e63aace5ae54a42e4f930447c5f43357d1b4e78cad2c8a21ac5f55bba85af3fd17ada5ef04eb4d7140d1230b7850c57b16cac7d624b927dbefda3c23e1108b533a5cfe5fa06c94d311c5f9baada2cbdc5601ef698f703c07a0c0af70c3795d1c879af2cdcfb71960be577eab0f6db22b923a36c0bd3e93fdfc59aeb6c1ed778b9f5c94e672186669d9101d38beade37d8622e6a346bb4fb72a59e6ea582b74cd8f42a919309760066c533182a92d221368c6bf141cba5ba04d7db240cc823a40653569c9454e70cd542ff40a848c054aab679492ae6416417fc7028f57989f782946e9be3efad63a63f34b0eff4646c136cb5a1eaf06524ff33efe9a855ffc456b46bbb55f20b080397dec05b13aa138430f09bbc1355109d49eb3080001927177991ea5a752178097fcacc6ed378bf9d118f6b8bf0d09e82bd56ea5110be57db7b50ffc4d4330efbf9238a6854de4f7317cc35acb65efe8d87656f43c0a488b0d81a37fc7e723acf24c0a7229fd9d252715294fd77f2756e72d67d083541092298ce9d86241dbee484570139b0f27f25ea995649457ef695e478de0db3e1a7b3f0855e0ef696feffff2f1f52810264da3412e520354ddd908035cc4abdeb76865a31cfceb5e28cdf52919f6295fd7b90af86a0c64e053010dea9d088c21dc4725e7b74428340bfa1159f8db90a1b2c6e0000959c5f3b9654f61cd8560f9cc625b9cdf31b9e457f70867b607c65b32d742dcf5bcaf9e838f11f454313dd45153779cfd85ab2b2694bc0ee56fef69188cb88c0a7b17ff35ca90345c632bc7f6412a5d4c5788e3aa55b0e9041a370b8beb489082b8be7fa2102bd65d1cc6f8d5dc4dd3fa02432a60dbe32be6a8261a39ee30d26669b7745c5ba297bb1bbfa3127d34b30b12fea8c98aa3d8e6b0dafd82af5ab3696d60a8e079d3936072ce437e784ff40c1bb3153632e854ef0cb4029a63192061a9597cb53dc17b567c3cfde20f1060805fdbb6180e5942dab6cc9dee2fed43848c4b2589ca42faee4022f54d77244ec98c487f91a09d9defc706e655fb026ff64cbc65ce6c2ef88699e8070526c1f878da508b3f75b7479f8d396e12ccdedf6491162d8a783983eb138e2cc5defce7e09ee81428dcee6200e9a6efbdd5f069854135a07bc98064cbc6e1eb10f3823464a44f406b785cde22e7006962dab34f20160637028570c55e9dfc28384ed83824605027298c8bc0a7bea57d7c596d20094d93bbab09a4daf35fa19f1d7d0f8f2052723b558f818d49376645df4e36941e2ab2271a0cd4563a710437ccfd8d0ff365b3c8ef9ae1e30c7dcb9f4eeb3f63a0c89efc8ad2262014541f4b5d0c9dd09d7ba6267ad78c306099ddddedb65769f9d2a5f5652845841b756fee290a28d510eebb2765d3fb7b55cc9240f6858e51bf084acedcdd8fb3a6e23cf3860b1b3b2422a720511380dde8e56d8bc41119b92ab765ea7f45e98e938b2af712497b22fe0c77f44a1d4805ea5e58d0f3fb5a11f0fae2d30b7be79ce20c640f0bc35402f065887177860be467c0c7cac59a011047c32ef2fddb5adfd67f6941469342bbc472138090612f90913b618e96d5f313ef7bee418c46a3eec48c1440db091d1efa320e2a8dbc9abe30ba4997d45695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e199d355cdcb33428c4d4f76d8f2d93c7ad6358d3bf1c9e10162dd890d6ebf13880add6b43067b443f8b3050a1b8a3b32955c907b46f4b52b2600051a4e8c977c6d2cc48f8fc73169df5bdd980bee258deffb2fb8ecd6693186d400baf128e60256188b6eb783240232d5c524ce56a801ba7d6c43de979f2c147e8d9faf67b187c4d787f3d6814569556cc879f6004390252914a92248672824bdac1579c67892f24d88863722a774e92f996e63bcd8d4be2bfe29ab7440d1016a37f26aef0f1151f6f7d6d6b4e5caa79805e177ab2558d7157e394a56feb4c35ee783f05e74e0882b5b054e621c8d80c268b751e0e935f84540a38a6e337cb88b4333d315b92459b85604315c9eb55fe177e3eff713ddc561f0b824e0a7dc21bfb37bfaf42647e2365bacf7ebaf8a73d337e163b57549d73537f7c5e7cd3cb16c32bf2d3a76ca9d16f85390e239468cc46625034b8a17ee577280b87c995a3fb2475b5a2e77d7b3c183b7ce4f053abcb96d4c18549f4f0b34b3279e62a460540523c2577a78bdbee96d4eabf5a20d7d1c860ec37529b6fee9130c6d261845a633bb5e5e54c8f4c5f5d138fad613a04b1c424b66015c55cbf227b6339adca97127eaf2bd81fdc835f3db730be42c2d14b738ca0e577863dfc9304ee0b8317dbb17bcfe4be4f28b41781a52c5d4f258a25af1fdf3b1aaadf4588f663762417bad5b5ff6d60e3281990a625ffcea68098c83c0143bad5267b58c618deb67834a666241e7d16ba258f1f669504096a34328c9c9cea4291731d9f1fce99cd0947e47d766912553f80a238d1c78305ae21dd2f8eb588c6eeebecac0e8a1c7fd696adc53c53db51d291aa989b64696a5934ebf044a4a0fdb0cce7dc2868fd42b198f3853955a6f078b73a77c26360d4132acd0315920722ceecffd1113af91a98b25ced9f16ac9ae81e59aea71b3aad8a70dcb0bb2c902e4c81afeef99edad2b149d2e9377f487d73171e25d4ed853b633f91ad35e5d85cdf8e0b6800919043c1cf4f67f9a15eb77b0e3118ba1cba206188a6ec3a21eaee922a90df882b15d31e2dcb94311be6e60db4aea17ab775d0e4f633f9f3ea41877c38af1809d338f4974f66a17034d18ccdd3f22471d6d27f9208e57bb9b8d10c8be29adb8cee5f98efac3bfe8f1c3c61afb4fc6393777223f71ecedaf4cbf420e97ede115ad13ee6a1192dc2d06a6f78f50d0907e351196fe820729d7ecaa7bd8ed50fb64c4125880be0ce8db85da7d97f68af33d79d599588954a0b1cf91f618d9ab4e390b2f5b5f2d9e9e17992b547b41f0704f61b424db994f59db8aae825942d50abcb79b0deb44897218061a2c2a8e0879611e7236547c81785fe0e57c1bfc9b009f31d432847243c6b828aadff579ffa5ad8f86e9875e2086bfa8c9431484fb00439a57cef8226145870db99fd08ba6bb9425ee0f59b7b8a76a54364484c6de2bc95ad81ec8b236f7339132dd78f020ac2091dd914466dd5f47c24e36a7d60d14b8a36bb67181e91533ce6105c8f0dff7f8143fc57a132bd5dd307c30ef906e7438e4478a8cd24a807c761567a7e9e4c81df2c073ca96b3621253d1c89230fe4b89ddfb66427259959f439368cda8805c512292b3da83e92814f79f777e4325b252cd0b70867522148de086d2e460b8d568fc68e3070f36ba9d915b96697f7d4ad5dd8a8fc67e1d8b998f9b914a1e58cab0cb69beee8f05617b200e2fce06723390e70076a825016c51572d6711c2c1a7511f16b685e6b35d4ec2c4f4491dcd2f1d0545c33e9ed87e5c74bc1a9b6490cea8fe327118f2a9b2b6333b948685bdb98f0b823b9bfefcc15e16f93aa6f09f2c5fd9ffbec89d4dd140d354d869218eea0239dd986f9edcd262ab914851a07a7a3952f316a0515feac364be4af1a88cc41a9178794d07984da887d831ea497b6905c8cb6ff82149466971f10b229d81678a2d63c4bb201e97c4b62f575408be233716ad6e98452708c57eb17b167a117f29779f6133a3985ab5062cd61c7f608d9befc048dd26dc49ceea4945d5ccc39403a66afad8dd047bdd1eda97dc3fb7d4dde763a7bbb5747d24b3d6f3063fb7e7200516efe8be63695973284a08de78e48c931ae4d934d1dda841a43411ebf1a4ff1ff0d3a37d16fb69d3507819a51802bcb19f3030967c02cf920d8bb1f5976f3bdd07c97ec9934ad5955e7b6a513e7c446ef2dc0cf1865852f69115e6dc08f3b05e1b91bb1ee3c9aa5d2254fef28bd5e93a4bc49bede96e388dd5c5eda67d5712de2bb8fa8ba0d14bf2572a079521ece7d82d11a5a03ffb05a1d400089602ed4914c7235e2173ab5af5b59546a04dc5741bb2b579684974040e39fd685e19814ddf5067a2befe825b9b17d53606ffc922ab853e4315712f840930e67230fd664e24bc93ac6dbe980ced53e823bcd879e963b4148af9adb1caa8c771eb56d31607dba1ff9579ead15eb2da130c87972efb3abde42bbf359897b5085b9a74008b7fb80eb3798943503ccd8d50c761e168825299c28df6527d1063d1afdf5016ac6d5854a977172a589981f584f31bdf69eb6e90000ff98dd71eab5c67f153cbbefee91e33fc892dfa8f94a99cf09f4962997684aae4d007ff7d3c7f357816f2343d6b460bcdaec21644246ee6813fbbed9fc4b3fd07723a914d6c2ed441821d4ab061a04a2c918475da9473872a60e166c7a649b9d6b5bde8bcd3b919bebbee63d8605fb8a97416d84e2657bd61127e5f64c63c554481c726cc5dcff339b0edb3bb75c6c5c2195d71209207b56ad1d10f8c2b6ffbdbff4de11c57ca201e2ecb869c04f773aa69fbc3f4f5b3b29b383b153e37d6023d7e1de6efb7cf28207fd2df5ef642d6984238a8ad702554acea384b13502bb86ed757ea47890d0f283eb7fde958cbc8ffa3a8ca21db17d3f2b9fdf18195db7547cc287d4c1fa19babb9959ebd8abf95e94ba5d45c2f0aa2f94b2bf335db010110f77fe276e8417511babdc61499b84375da33a8ad6997cf861947ca85aa1b12bcfc91fbdf5931dbe2496bd1702a2bbe25fe1468bf574594d5d10ef02cc29111e48cfecf27fddd90196da247c4c1d6f5a6cee476926b6b35a2a93cc3182de35b81a36b17c50031b900575a0164ce19c77d1329b3e73d7e48fcf79d47c49da5a3f0cdcfb7614234b1cb3a9ecb047ea7e1a8b0282b5a313715593900bace431936c0a096f28de150b94d0911dc3df5c8e15370c72d909a258de700abf0bb728efdf58c23b08094f0aa7ddbb182c69ec2da4b516e0c1be59670089b461d5fd5538148bc51a2e1f606709ac325cb97037f57ac7a460243c06c3a0054e0a2e4bc4e001c8e5e0ea8ac4e435260c2f11155f2bea33885ad1270f3bdfa4b655306b1d0808652b63186b851442bd496fbddefca6bbf4fa00cff65a9d1b3f2aebf761c66e05e3131105aac38987a224f561002903f209b4ca4974267c46554cdb61e7c84da842da74a7eced622fa24026e300e518964a94820a8fc82aa7d86f07467fbd41711521498f217e583f5b10a2f48484f3358ef7687ada5dcf3b23ba24af3026a22412538121d15e2169992315d356add041924aa96f9e332cf467b8d03d0c2c7ab381e9c2134a855cccd5fd3c0c7d126cbbc3ba1651506c983b9669829e971faad64af9060bf077e6f6a4282ce53c1428f78582fbe65abba74b46ae1700f63865202012e1be3660cf86b16cc70870ed5a3afab5314e516b1b596996e0831a89e606185eab183710a96ec07425701683ef6a1ecce00c1e4cc1c1a9925d7844ce00c10d7385f0b5af7f13836f80663e3359ca49231053be046bc45b06977dc1467e923c17cb37af63aa00b5d2bd76deb71518f21418a430b633de9119c686f5178c12a6e4b591a5b84c8f13239e661852429abc2837d039b68fd4b5d6266806a0227941b67c16cb70e3ccf8150e21229f027b76e0c9a3606974ed18842362e98511585e4a66f6a948fa6d9e8a835a16681bc60c6f11eece4a208f680fbb71b803c447e47574aaeb197e7cce826e3d4e92d1a81f8053b85053c8017607aaaa5d5f9aee03b93887f5c54f036d6b7eb61ff215e6250eda5bb7a16f8264fe1f693cb86c52d1bf1a68557cba1c0176bbaff614b8e8cc39e71f04b8085d55a337ec56a41d497d70aade25ffd1230700df485db2ebcaf9148e6f597a6797c2d80e7284fcd4c7346720b3b88af8acd115d096ec2a571f36f63f2a8acd17f660787849595bf75a28909f2bbdb4b45a22a3b05f7c2ad86944e73b2fe5355a2b440c4a82b77eb3e0e5216fb04c4e509bc4f5ac0742cca4824b2704794df4ae0592294e45fc41dcd079c003cedf99086d14160ef1131285cde3340f23616a64a74a5bbcedfdeb2923c68b56e08f586e043053a15374f6059d4750440720a220b044f9f3ad42cb6b25af4fb036fb040554b7486da3023e0f33e2a9499335d11518be40572a30c539b3c94bb7792a5dd0afaddf9e254b1d2534ca96e2d85e193ae49ab33c557d67f681912662d98896a01587a0eadc43c8d13df168bd4785967cb083f16c78c88b9fd55ed0ca3fbe0bcdb072cf635826fc8a66a395d845358392dd8e5a8d82f0fb62c039d2b492ffb37bbb0e659bd9ac899cda4866bc36ca8b788cfd751b2f0c89ce983d5445f9fdb0840ea957a7d60c2b239b35a74f98f306f1323bd2e8671dc211c759d26a7915a482a698419812c6a07d9aef45decfca8cefa727ea4b322a4c5fed58ea05cc30bcdb641fd1b43851eb049d615c806b0d946ae29c560f54c5dbfd70fa90f8b0c04771d23a110e3e462a34e6a55a1619acac071afbe1f9aec2e86eabc12842db04637ce3e11e0d8dbb1be1accfdf45633a70faec505f368feaf41513185f1f30719107348e5e5cb1dcc8d20fe2b8d2e735c4e60876457543dae339e42f4f25f1753e758b88a75b32b9c3cadb33df26ea21e896c1124670c263fb0c8d0293f44c06259ad29abeecca630b68a736f749bac630deb9fbb1d71ed7be7f56d0674bbfb7ade817b034f1733e853227ebfe091228f850a71f249f738c08ab40bd6acd1f69ee2322ea7e9131f4808f9080407ea1dcf4c70d94e55d1a27b5e4979d89f14fcabf10d6591ff431dfe8a17cb767fa43b264cb5d6fb151b720bb384705b4cad1265d400a3d6d534843aabf6480a201ff414f05191f87739cf2f23bafbd07374870bc871c5d437a27fff3214922f92ff74438dec3c560f6f8251dcddabea30479eb51431ae1632abe9f28bd613008d37f939c8705c78104ff872e7e08e8b7f38660a0ae68593960d6d363ebac5fbdcc2f8098acbd7762346591013a5eb5360bc5f3dcd9b4ecfad62bd3d7c17b53ae7e9606a4b56aabaafa3958420ae8a0442edd41ea28a575fb9db1f2a1148aa518684459a173ddd56f2a87174ee01b8e897280ccd601d29c46bc3eac82c554a58c09a731728d784d749987ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d474dc8b43b03876a2a82897e15fb8477c956e4b18b9fe8453cfa4094837bb5517ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d98934f4d88c7294c71279d437720d589ef736ba3f9d7ff8d90689429e84ed41a7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d98934f4d88c7294c71279d437720d589ef736ba3f9d7ff8d90689429e84ed41ab1156a1c0d0f93c52b3e3e492720dc6682ffb32b275d534428a4f74ce1e2a0d5ff227ddea4b041a8a992d7b8dd0e2a529028418714ac4758e9c7203a96c14abe6e24c9031dd66ff9f13c047c3da673bb27acc341f5b63f557dd7fd78f4402898f77760056e559cec407344e118a2036a4ca3b5f78db0768a3e05afec60367bc986b6794fdaa3da9bdaa60bc8d1f8cb3e8f7ad8e05f86a41338a6bad769199f2cf4a19151429b1899b994833665d81e9b785f770459bdcafb15303ea9edcfae23fe21b3363d3598afe0fd23826999d0af2b0652fbbd1ed82280ccc4e5a6ffbfd440d8b729630d296c9e925184c6b24ed7f2ecc8b32b1941c6b8390dd3f16f471406ecdc7cd6744d8c96ad453d67aece0941ff5ad7fa1aa5d9bf0c144dfeca41e93fece0204248fa2e57a4fe09e0ee1149e4fe66d0edfd1b454127f1c6f310636196ff1826224be70a72a6d0cb922a2726d630372f7f5ca5e2fcb5a790a89f81a372b440b4ed2729f6b038ec457f1d43884aef74b06f129d324f6186514543e269cfeca56802f6fcfe22aff0647c756cde42dcd800eda4aa858c178f6cae8207a1a6ee0d0ef161fc284d75affbe273c9584eb7398cd37e611d7ffb44533684b4768410fc2b1fe9846d9a6cfbbfd2e2b51120387fce92ba1d0816f6bc09eb4a0a13a622b46ab87f917512f3cd25bc34be54b366f605dcf6b9d4545619297ed967a453b06f8177908399d9d6b06c8428574e13806a746ab21c4a75c2bd6d3510d5a7ba149f662557a0e850255de23f785d94e9617f76e21af96a1c8aa7d5b30f613a41f2cbeef9cd06e0ddd61fa8b9620dd37602e26a5614089d4826d6f739e0e43b05ab6e50e8da310596c5db02f727119d0289665d7e4303cae9b8aa7e8cd89e4cc49fca0dc8ed672f2cd9db291672426fe320ddf79ad971e43ee97b51367062810b49ddf0aeca9f297061e37a04714f3a4e27b93444e0e4168faa4b6bfe1a952e7def724a5e803c0f16126c8663fe14b8bf76bd3172839bd1c0afd1163fedf91534bcdbaa43d6d04efe4a8c9baa6acffda4966e72563d6549ae1c12177a0112a6263e800cb1e350691229a77754bcc56e04d5dd064b2770961d426e56f4e269d30cd5ef0a8049d17f81f0817013e55e54efaa044f98168d4e79b4bd2f940379868db80dcda181c7cd855b99a13beaa8aac280bc0dc04d3841a196e2abe55373da28a31735f2d7be51881f1f5763e9c93b1563e0430223df301ec31288437e48f05695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e190a8e093d58ad78199ec654abb363e1196f63118e4218b25e0d085e21d3701d394b8c5cd859bc7fab45107f2411c4d73bbb0045ff4735a0fe4e3cba8427ab58bd4967c9ba9d7327235b9a8ea6f67b6cd32470f11c3ba4e993d4d78be1962a27e0e71be3a051a58fd939c867febbb647773a0306b7767999ad35f4a845e5278d0395e32cb80ce43625650c04adfe72a99511b1debb362fb6860e3d28e40891590e6b0eb2a547ea62daf0b6f55eaa90e0f0493a72f90c995403adea20f06eaed5933b8981e0d759f390a2f076bebbf7e036ad680cd9497bef1b2a6703165ef4cb33e4dc84a602c00695598e6503cda22bca252db0199c5181adc73831c068933578bab672ade25f6f946540676a62b67f591070b80d2626f5406cda46e68ccfaa2a8061dbfb4ad652bbd55d70dcbf877f1c36e866beaa49057c9b21cf463f20871e42149dfa831c8895b0f68e24e8d09138ca82a27583554bf6aad960b801e990d30ae34484c5cf435cbc5c415811094973d17a4331be426f6b653d5cdaca28bddcbb15ac47a9b31970eafaa0e0bc53e2a6362f852a55a880137844f187ff6ede90061eb6d1d2990ddcb4e454d163277f834e6b94f4a028cf725d32dc56dc0920e3d90ead0bf88185be8301d5f664d1c18d740fe2d52c1e2f3dd5b9d784253488caf932ffcbcec4462466853ac900a172b95382b813f3516ada81e691abcff670c0e22c4816f6647fc66627192a60e77eb8f77170eb330ada6de06defa914faa80d5050cc0c4be7f27e5bd76ed09701ec5bd6f26d5df7ae7e18b02d347907b0d3b8895fbb5de7b416f55275e7449f7c781b0ae8e4cb3a61172ca7f84aec1647882621c9212d92692ee00590fe904f5d23da2470773f53df224e881654d3961d647ea79a68a397798466e774f586afbbb0583b5480ca49b141184fdfd2a7f0f98e04b319412890078eac8ff4276e4c11c6b3d1e921a76245a9f1a1fc0d474edb1d270b8a88747065de6e569dc3949835eea547ab23ae5fd2b42b71514d1aadee5019fa170e1ae8459425e005793ad92c956765c2e7cd27d31dab38a3927f6e498ff10983514e2ef9315420a90285e288f23753b396fc4304f199b4d976724c5217d655c67e01d33a9f58399aeb4e78c3444e660442808ad92aa06003606d08da918d80069a373dffdb5e775bebc8a953edebc427590cdbded1fe647150c7386f3b8cde7ec672a73e2e27a04bbf790066aae409799ff68f2b9fd4c78dc9348f83fe35734c484bfe05321960293d2176cb6065ce60be940513efafc819824f7c2a7320d7e20340c21db77028979b07388fdb668d85301149aabe2b96c303e04eb67ae8c314fb50562dae5fb0f9b0cfc68c9e242ef7c543ad10afee8061454ebf76567eedc380ac232fb2112c5e8242b1db581b09784acaea2515bdc6454ffa732fa427e9dd81f7b741bb02a3cdd224163258ff595dc1602b37f87ec978c74dbff498d3082a77bf9189bf2d27c37e10d49d8f3f1fd63711ab64e66e29164051d4b03ceeeae4bf85f86d9b18035f64107cf7a18adb3dca0deda3e3fe88a7540ef674b859e3e7842223a92b2ad723062c9d9393385c6fb4f55cab93ad71e25f8eed60fd384ccd2a26a544f0e84664cb862e1676fe89424ad6f5126569123ec78eaf1a8cede47b08916a60e7599e1b07df6027b9fd7c7c7d50ad176784b9d1c361039c7722358e94b9c9d3f7b9d57571b8b1899c5340d963742ff97c27ce376accd95ffce64dcf9b04a3a28ff7c0259709c395594a8b745a3b8807bea0da30c2b29a69f35c697fb47791be10bad3750fc899a74913292682a59a565a792ea9656e60039edf33bc3a5a17702b8a08549fc05cc2d611da811cac6f6ec1d6c0395a12cbac897e84d91e646cdd591fae7998d40b28de895a141e56f9a4a5c0e1f4ed411379d5bcec9856b83f72b3ecbe992872a130869ff3d568a36528ebee13b22c8977b7a24b450e5936bc627061e6ede3defb0cab2f1bf220c53fd75d50ed23eef79ca17f90d7aee9e5ef9bd906905c0a6553ac149148218e278579681e02e4f50decc5159a56da173783e03c218b05e6cae87fe73f578124db651ec7f4b275da1857493d9c6477e6b6cdc6f93ad75f5187e5a7c07a973a86b25635b7b46733659c562e1a95ea5e2d88021d3ce20f3ee178264a46cc22ad702a7e314804f9be97ecaa0079072021debe60e4016957159137c0ac9fdf2fe1ddc9fd33fc323421167771648a555bc79b18b889a74789732079fa44e04d91dd835b56c5a4b6aeec395923a44c20c81eb62869faff0ced335cbe32b493717af9d80a779f5fc0aaf7dfdaff11c2399ee62d78602c44b15cc96f837fdd896452af2f9262df5936d80dd2910e06bb3d119f285ad4bfdab902ecc9613ed82a680365e98f93f8a8880ff2656dfc98d2122722be875796ade64b574904ad78e422130727ecb5003606fae5787126236d3e153fa9f1622fcbc82a834b9a9aff1db79fe47b73b90eb0a450f752c1e1823bed3611de7c968f4a972c1494de707c9e11ec010adb07ffebf3c3455a7ee3b3df69862fc795d77d916417e4a15d7a5c3f9806afa37373443aa1b5fa0aa8649de283d0427caa00f92116d71afc6354786126556a50a5a9081cae1a47b458ed632bbe190121d625f80ff0a4d87e81a6bb4d0fa4409f30974c325ace8f27c3bfb6b455dadc4a741bc2101c06487e1553455c769068da9f705fad5e6e1a74cc1ede149d53240d936372abc91609ac44b692c3933e47d896f2e35ce23fb46c11b18472caa4f11e23f231be2cac9f60284f823c468633e91a4271c5105e728807ad16144d5cb3490ba4d850010d82c6cde6ab389d8d6ad5a5ecc79f4c8946b7f33f09694a868a7d600a83fc44865ae76de8c5f6eae10f9e29d41fbe75ce967d9e2594411ff1840301427632d4472f104876d8628553b299b43e26a2b49c30a00ebefa8ad7ad9879873f00041288fd4cc67cab2c86557eb86795d12581325cc6327cb60682855e6e7a06dda53909c0b58447f44fc80e1bfeed9b101c02846df956c0198222a8e5dad513fd49e82da7e717dc9be146b448a1c141e83cefbccfea15ad586cb9f15460ef13c41d70b1e3151bdb854436b763c860f87626209c62ccea946fb6dffe0a79a10c37aac09a571ed6a16ab6f25dbf280bd247e366e35fb143b75ab482f35d627631b671eaedebfcdec5944a327bdc99c65df8a750232f6a84cb313de49ede6abcf0f580b04b7e07466c8a2797d572897139b331aa3c283a5a9ce27066d78b52a5d3bbfe31d6f81529e3809c4bf1444320981c6e6c7940296c1ff92fdff759fa8d49442f4758f29d915eb409c5d53f1f3791ec4cb805d7d6e43322ee934c692b3d38f6ef6933f6ab67eb704f6345bec33ee632c5bed545fd7ff8610ffa9caa062c01eaa2b8a2950608259847e5e26f62758606073be9cfc65227af09b51880c8f1b72f5302fbd7b7b8d3fb772b4f5890dda8c80856b8e11862aa0f61997d7830ce851472e34094f7c6a1438fffe91ddfbe1c613464fed7a98e692c4dd4c58281a7a920c6191a37b98fcddc06147a6d8907b2911fe7c37133539e15d1500e82c41b9c8c4646a7ad967226a5507f0efbe956b03e0c39d8eec274af263ba22bb03f5de4b150681ccb30075c90743549588c78ca5b94dbe25d1d0650132114beb58381249b3389b6dc6f73e6ed1058829e500827715545ee2fee937877a5b00fc834cd1921cfa88b0d680c29f72fc0c839045f36166030d920ba610e8f3e112430cea74e061a7299dd929b70e702a4df82434ef6740f28475f25bf97415b5228d82eeaad8f0e889a7a8123287b111937507457d90615cc404e03f9aa6492a9f1a853637c7bd09136a351afd2095ea5c533d7a79e5a1c1075cdd55cb21e941f9d412b6499ec300d79275dcfe0338d231e5f3a0efeeea8a31168ed49e0db463dcaba806996ca78a7e0e1a4fa83249619c63ed1fe9be096c0c234d44146b475dea01cf557d5f4548db7329d00bbdc03fd2f52a34534c0f08e2d9caec0d7886fddc2d84a5682f48a4f252057bc1fc43abf04f73da8e1bff77cc5d0145355bdd81bff82ae193fceef126580b8b871271eb4cdea8d0a8ea333bfce7f3135180d65f33980ee2103d98872841b56ad5ee1f10aa30de0ed70009471f500a5bff81224a9af22cc2d3882be6525e3f013dcd73cb6168f2e54af4dd3e3d21ef96fa0935383947f9689b062d2f4fca6e9fc87d4df55d1b7755d78bea4c38bc5bfefa827cecc5b18b951d932f855791dc3a07078a093e9c109641cda8d5a7952ae7fe54b95adf46d2d3e8322efc6072d057fc5967841deb6746b5eb3dbb78944f652be4d6da704d832b356f1bafcd920b59393668ab50499de9cf4deb2bdb1aab0fd04b253aa6f0ab2817ebaec1b98db9d4e50f555d9249942cf53acd1605e5568394b29f519378fb92fb9cdbbb8b755f0ebb6af8e5757884b568f1bb1ef1a175f89ee9e87d9403c8bc9c42d0c4b9877a843b69d99adba28cee668c99c4ea6cab0774cd76a91e0b80d561dc426f628f94a60a582e17a8d0c53e6fe0367715471efe5bff963edfbff9d23874dc069750a1675ae861ef08e2ebb4dcc27ac79d093c1d5182a8b3f62badde575cdc1caa6931964643e27ac1528ed6663f34640816aee740b758aad8ef98a35e19b526b1fbf8e9ee6473db961a9b9ff7a8743cfda752cbda86df5bcedecab95c2075efbcd1fe15309af34ca0f9029297e131082d0de8147b9d7f2502385498b2c7e58778c1f929a7764066c6800d07ee778e3a13b2ab0239134c311d7e78a8b0ba93b61c72ed20533c4e035fa262c5c8f2693d7c25ed38dae42adb0d3756153c48b523a9d6510d3a42abb8801e612dc6b621b206b362bd0993122634012f480f48ca541a7e5f124bbfee669e71440bfe910859a93ed869a498c54abf4d0249d3c7d011fa273ae93f5c3e21f2ddbf477370a6bfcf9a42aeabfb4834c893483963d698a913e6aebcad26ee643a939e72949f29c692f2a6c102a51085ba9525d2db1fcb00a59f7b5d3651bc6b58db9ac83b9b154410b7544d1e1488e1a9a744be224d66229e4257f917983b936340e3c78cde5c32eab0d9664a36ea649023fb1656a586eca32cc6c7e5f9470db7346451890b524c19c2886b3b220ec7e6bc582b0427554723bad48d53ec0f70acde980a6977b46bb9acd42d96d604ee7358d484ef6fa6dbd9fd37b32ef917db500753c4abd6c42f645c5e70a9627b7b0d8da7134691ab738f2dd098e384414e742cb9728634f5bd44a09b671a2d95459860aae7732064d5de3ccf2eddf725ca4739924d3495a4f603cdc4f8d10193c010e26640b1b3bddfaa81eeb5694d3e3aef600f04c37c1232c31ea82c75fb0eb29b0b7cdf81e1110c6478e347aa5bc689092edc088317409306d96e039c581926ab7d950e1b165e14d5082a12ee480040304f00ae0a711fff0f6cd59698e718d5bc915df182b1d95f673cf8fbd47aa8c00518045b82dee232241e2714b4aee43928e9f687135a3e4de37fa3d287fb7d2351f4d206b9033df7f0b03297b519fed59e85cf57565ff63b3237dd68d622a84e03e08e0c2aeb40cba0a371b078d93ea5bbe30c3ab193182c72dbdbef4e703282ecef133bd7adc1bd50cba1469ccbb175b0cfec33dec5c09f33870aecd00711356d04a7cd57e5eb7eced0675cdd7841faa57328a428a6f8c3d7b1fd0908c3b5f327f4a3d57c1992e4498f339fbd6cc3cf5a61484237afe94025d75dbecf67e7de3cb6ef60a21c138a2885919aecc058d4381f9f2dd853b126ed9df5ca46cc9e9ac4ccca32a7d9b817fbab863b2eb407331e50ae0bb701bab6dce441891bc87e68eaddee89a301b64b9e811aa49fb649ecff6134d37e2e60375afcf3ba09d276c5f044045f32afff6d86c136ef86d37cee17a68d87c60179b2bad3b4d103c5cda0e1a066d30290cc74b76318233e0a93eb45ae80999ab92a3ea916d87d07e7b25a3fd11efa1237cb723e00d9c3684a6bff25aa78a530e46cff28c6149a8e001431d22a7039c557f9b1dd419aba43aca15609cc69ed349d2f091a9e198c1ef9d4108b244a5750eedd77a93f55eb82e78b4ac2e6dabaae3139eb65be0064f0f057e8944f4091e4bcffb61909b224c1b0c220592d7c429f6c795d8d93c10f0369e1ad18dcfb7668a5fdcf0057d6df2646436306f5a808d795994e58a507387bbd46cfb36bec4e720b2eb9480d9578b0ff0b9ddfa019a8aee0f9f46796ca103b6c2c6766b0ee5fdeb09246ac08f08fff6be828c7b5cef33eabee5c8edc6f00a88398b352e09cecf54ade881416499a22b8eeca336a7edfa7a9a08f2a7d59cab6c716dccc7a142f5d980fd3b14d12183ac8af79f68905dea2b245e23eb868bc7fc4a32a7618d75bd7ce2a950559f0b00d0265dd55fe58c22daf19a47bba29b5b468c7daafe7659eb4677b2e36ff7e98b8d9bf0ad2553bfca9edd0839b8b3831def12c635e550d179f487f1d79f075f44eb10196214d7a2860affad72e433b9554def64d8080742b4e6d802067c2f02d58cf052691189ab41f8557cec308fab9fe3fc22b0a9308a5b44a6437f467372238254bae169479543daf1902f71436b1d9ed887fece1d6aea35fe1510089052ddbc4773646f9b00a21e89862e80644346ebb44863de1406c61838612ffd78260dcb8fd8cc2f79f9d24c425338d4593dc8ab68d9d4865e61ed3289b9b31f72cea5862073bc7315b733a9a13e2a65ba9f47a93121d6491d18e9bb5882894b6f05b7262471bfe712cc08d04071c24280d7d1607f7bf3f1b6e108fb02e14d84c5743562678ca1045d5e137a8378cf6fe88fe145e3e7ee95359ee31da02506ab15825c8c66e8da5f6208486a55d847735e0d351e374a9f94646916fd132e72e4f994cbd57fa6bd0a3e3ef841cac5fa74ea264b290e6edaac22c7124936feff8752a4dedfa9701c8a5ff43aee9f1d230a30a54634f294b6678932a1b3581ba97241dc2062a7f2f2bcf68063fb3d3d3659bf7c166dfe1da7bf54353247c925578e961b3446175648170b13cdb43cbccbab26d727af7bdbf57fd1ce305ef38dada643a745fc8115dae39e5a456ec5c848f564f74ede28c7a3ad285329915a023486569be7f5de6b2bfb470db8505662e2e1c44c46ea81b37ec49bec570271045bbc306ab18e1274939bbe2bbcd2c3b5d5548637cf74aa692cb0f40701297caeab58acdd899a831e3b4f118aacedd22e2c2b498ae910fd8164ba2b8011ced0cc9c9727e7a3b42980aab4ab0c9a6b88d3244668db140e150193f8650c9259b87f0e10c8a1557a72671a3bdfb380ee2a64dcba12e7cd6943cda7b872b94389cfd625561d2702eb64265623690d11916b46c3b00034e0119e71de253402ba95952338243b848d24e04884744d6b24b667ce8e43a944cda1b0f1cdc02c89f2fcb2a60b43c18f7adf3f7b90dc80eec7b8977c0995a4be970d5e08eda7545fd8faee6a601d0ee7b6d3771d04fce7471975ac8049b4ce00c6ceb616cee6713d3d4a321e5532f7d554f5c60746a85f75e786d62aab7dbfce5bdda5925a17c5607f5967eabc23b483f3cf4c721876184e347e21358814c02a1dcf3b0d47a001d4011b22f6feb3362dfe50bd6518cfc10290ba4cd6e907958dfb36a323503e4eb872e913c3e5063a764217365c862a5a77c4663fae4873319523f9882bc437c9c67a15d7c19f0fb45dbf3e216e05763d17d5f4c15e09958434d7745ad3d75246df9fb022ed6a3383e1235580bab78c56e2b85456489afe2e3228c5b78f60935fc324fe11a1d49e16fbf436c3ba745d001c2c5e8819b64d220bb04192ade9fe0d47989ec78821e084a935c8b49128bb569eb218d207ed7d5e5ce68a17364bd54d793d29db620eb8819d57acfcf17ebc8d7bcb0e4568b9b3249f241de9029849095d7971c74a84d8446969baa9708b1b40af316fd8cd29127b8197ac91ceab6143f3267133f075780864a4f68371793646b526014f1daa8432bc5e937e4ee340625e9ae7640115614189588a04f6f9fdc19ab3a051ef62836b69d0586ea1188c71e42b901d59b1bfc4b30d5fd75cc5b7d8c62f79717b8be58b6daaa876e8fb098a20b26f19cd55e0ce7b90b26886c61e2555ca00379aeb7878dffc49fcac716d65b02f762d0f674f47ddebaccbe516c4afe984866055cfcae7ef530fef01a138224a7a52c626889b4961878be12537df05c3145784939531562c1b1977daa8e663126bb2ec2fa87557d14e3fb4100347f80535f9f447db9118f0b7f0e982c718f97dbc604f2ddd3a9f9bd30308f554ac81aaf6f547ebca9cb910ab8dea81019debd497df72f6f4bec5e593be7f7634416937e7fb779f32b857bd5fb66b04c2be1111b2c6fa66c0fc8130fb4372d5972c06ac60d2d878c38043802335a1f77d2319ecbcd902af846e961c13fe8b581a701393d2a1e5c84fe0e8d7e9f97104efe18c4f2b13076685d118b4b3abf04f73a9fba436c50a09443142901b7389f37ea048e511a2375233e31b40f41b35d0197637f36bf9f374dde6df785e3caab3a1750b488f9dff841e0578b8c49a4682fd7947470d6cf0724dcf1da9b45e3fbc4a78470f5b85a4de21ff1872ac66d1be262cf29e1049722702364bc13d8e617b4fd373729123b9160af3779b789b0f46dd2115a3cd969883b53a403e9edc0feaf923313a16d619256fae218e3a9fa873e24318cf20aed35c5bdcf974f51cf5084bd5e6107318934829f70aeaf8af4d8daed1503e231c787bb0040b75ae8da8a8f61578986fd07dd040db4aace4ea946c441c7e0e53c290996252fdd570de7faaffb767b63a867f026f61c45135f3845b49cac8a7a74c70c455b225b1d7966dc4938579d941e98db6468da91e2c09a41c08afe97ec3f90fdbe0bf8415063dc2102f01ec549daaf80f91e133846d4685e13028308e2074e9711b3adfd51f5752884144c100dad9b76ae43eb362e7326ab333ca296d504cc7cb59e3bf563f670bf793358bab6df78e1484815c85e91bac27c4d21d7b1b2fa478483dc01edbd6fce53eccc1a7f643e3d91b5bc0ec1bc0f2c7a51fcd671c138d3ff7a33dd80dbb841b41188ec6781da7ac5fee57d92cb71e1e92f3ca722747ede0f9093d8e0c9776d419af96a83195154a6abc9dae1df2446631143b67e6eba111c265420697796d5e15dec5ad0b334bfb4601257546f0a5fa8f3f8818f4eb85afa8ee1c9e912bbe04b95ab8fd4a1d89dcc3fdb4a1da59456414626ffbf9293d76574110bc954bcc3ced0c9e998f8f1df4cfa1649e8579e3ce6915330cbb8f2b43627bcba62c1917c45235c815a5385bdbd91fd90a1b17d1fc47649388708c8a2af4b9ae7c69f2874593aeb89495117eb48566e439f11abd2048946f77ae09438dc95cb2d16cd8a0a017c815b708a20d71af486b6493019948b60e298499a3c17913b5353d5a8fc26f5acd488a7d0edf7ce841eada9b038a27ad2368eba0b804a7a020e14b858ca439cb740d9a322274e76102959aacfc5f0ca373d0a233645ec07809976a1295818ea5a01740b67fdd890f8e4ecc06c940d10433b8cf4f1ba210ac55f7156564e5461fb82b10f4508c0ee603d34b55ac671755d1291b94bba529d00124d48d54a9d273ae0da6277a0fbc5e78b6e0ca019d4ae6722abdc06903dda3a9f9b8f3ee706f2a3746c42d2715a8b7581092841dc1c58de9af7cc2de222a140ba958d18cdf778112ba2d2d5d79af162854c1aef2c5c1a39ac47639d734101f0af6c4cfb1592a555acf76b9ed422901cc6cd0df8f1f8a3ef754ab0855d145bbfdc376f6c7084a935b6e191244856b7bec5b316ad06b5d01c63f07c973b75785c74b977836a9d8e9d7176ad5c69953f55dc945dc7820bdeea69f47cb22fc46c684c161d3d36ea0c6942dbc93faf0a64086dc54340005242eaf027015543d54bc13abbbec51f5b47e9f16db40332bd39fb0f4dc2b079b8dd11bb98ce2b0c0efa896eb7ff4344a21f1ef72f774b4fc676e02ad51c69940c6a661fcf1c4d35bee762d4953a6145e079e28714ebf37857000e62114ba15a9a42b534bd4039ec32a26f15a974613b7fd70137f80d4a7e56b8bdfa5992a003a1c7ab0bf45a44dbaff9a1a61e99e9f0f65954ac38f840f4233a0baa4243f167d9bac54b6889132576ff2ab9fa39f2cecb68be571c363b6d46842b1920e59add1c740d0563bfc0c0744a6f2095f6d24d95e5ce447a460866524a8ab807505e8aaf95db01875a2291577137a0f594c9dda584af765016336e254c3560d854c80b7410adf120b34389aaeda9a504c7654786724cb1b2cc27677ab93c7f59ac649af1834cceb60ea81033ab43c11dae692d9631b5ccee4de86a35f8b9a9fcbc5ee4448c86e5b4a8935ffd19ea61243c2b48a61cdb1072d05603bde44788ae2200811131800edaa55e749f24f13ecb3a3962b429fcb8ae9fdb60adc0cb3c4ecb746ec6479c1ba99d616a0ddeedac876dead2c584101353f312b0d8ea10f0b6b37d07f1090cc30d4bdf5e2e36679923e6df087db05a7964ae7b21a55774933148003e799460fd70caab324a61f3b674ee43a55a9b9077f193d8e2b688f6ea938230c4d9ca3470f6a87351dd422005d76e72800dbbde607e4ccfdec5947546b8cf1310c8553980ba74924d6f87750299dd56c6785ec8da8f326a28ede3265523892488830ae2efa6c26ec072c7d80258824c1f0f67cbb64c539d72a09d55db3ce3fd2b2dd57f574eaac2b13fca5f9a64ee3f56e6fad428da17229d911f2548fc7de63f9f9489692d733ac69b1b6864297ec57ce5ab54604e43163f86dd04304450ca2d4d73addfbee863017f2f5526b6271a3aea546b67e1b479f6d45f4d2f3cef080de7603916ef8380ea9350c5da7b61e340a65ada32524fcd9d684b7215cf8636106adca8114900b89254c8ac0b1745b3a144bee4e85157a6174129f6cf96c1bfcd4078826517010488738a7073b789a8a8d5e11c0aabe659f62f727d4a5d306f4a4172f45ad2791c09e50954da9eb9a01017e5b6c849d6035ec15607c84d38d66cc959c48b6b95992018fd2e1301fd076b17018c8f0daea4eefad1f3ebdbb2cee73667162316f62f4db2d00191b148fb81689616975e4085e37dff7dda2563f126620a60bcf0bbff00cfb9246763b322305966d948ca47bc8d2e2e81dea91d6d15af9550fbb972490c4dae700114314b4dfd7bba4eaaaa45031cc51b64c85997b07d5210f060b36b10e57ff97e37d63a439405bc0075498f78599da012a97de8a4d1c73d694d77c28c0f8751e7d223eec86ed50f50ad17a979192074d69e2f994b187d8c9853db0b8ee7416f98e45fe88d2303b354a656bedbc8646273357e7b33f199b62ac57899d565442046c255b596912a6686b21d242aaaa858bdbb197b8d176ec60694465b23994423fb29f94af331a5623c3c444d15643706e3bd0085cb8811cb5dca79434a17022b1a61aca2b27da0d20a64a1daeefe121e6c001e7b3bb388c73a5bc82e5f931aa89529d620ad3573b264e07dfb733cc7dd6a09c239cdf49d1120a3de1ca570fa9bfb8760f266e992a8211e27cdf3b32e1afbe6c4090d5913fb2b08cd886377760f24ec4b8c0daeb4c5905e14fdfa9ad37a9a46742029065bbd260ee23d37901269e13f80f1e5f390fb4bee6bb458af6d9761b9e6da0f8f66fb0364ab55791618faab639de2b09ef4d13420b0f7037f778f33e3d49b94a91883eb1c73bee6518e155f2343a902ac0c7b3d927bc461356ea383d35a835bba7779eee70b6ec977c7de5b48f974c655c85193ebd70e0ab69c033e5d100687f7334dd2ce2513a7c6a3b58b1d4e0a1a7a2714ef8b586337fe7a72f111b41d861487fe9fb14e1b418514b2a85d293c4ae8f36f75b22d7747b6130933d7b26db09753150803e3fb2613f58174127ff1a3c01bb5755c408c1f1405bf98a20969c0b185048c5487dc6a8a509e3481a5322e2c064a74b823044be76914033ca575e38d903417f39a500fe272c4566445b1cf72d8349e1a02764d4d1a0967ec5b00f38f03275762a3f1b93709876c0e4c597c173524f570582d1f6bfb9cca359aa95126594006992b0ca8ff02ab618db5437574299e91f2b002ed249753db1b0dd7bc6f23a3f6211f88b882bf7a938f322a444b91935eb6e957ee7f3aaad5bc6cab0e8deefd9410f6ecdaaf4385ac03325a4366406948143b459eb8d54f9f645b3b7b39a5ce677bd31032f1e02dfc71fef6d5d4bbb3701b8792114c5dfececa0c4844cda76bf06dabbc85509c37447799015851eac70edc3585682e635c0d0ad1f04ae79f6ab0202da6bf09dff99bf9c19af6bad7edc18d6ebcb30a880b7c22b7280e0a0e12727d267292b7f7d04448ca206aa64d4718bb873536d8f3636c9ed9003082ea1241446874be145b7e9dee50f015ae5f9acc76eaa34c7887b67e7e83b4f780663748daec46284980deb84afcd18199105b55cb9eb71c038c79f4eb27b71d880c0e73e07601d836947338667ed1fd2760fb12b5dc41acca3313a9b4aed4e404f118fd29f804fdffb7710f33bbee90b32179be5ded98d11e827c9f267c1ffe04759c98e13145ed3eaaa7408be4340dedb9bc18d06e3e779f24e5cf1f26fbb6c73ea582c8833f582ec82d3c38789f79a9604e966d31d6eca67e87845d142ec8c4ee2cc480c5a20a003f0c8290d6ea232ae06e9cd732b4522614071ae1e6c694591a1c21b2ecc3e1e45c443d3372818600cb11602ab47587c7682536e7e83ae3291cd34eaafca854f1c62cb71176d0a9bcc66df4e465a0be2b513ba958fa175de48441cb625ead171c2262e5ea8d32b36f1bb1e5b5b208bd08a4bead1dd14aeaf3f4b049837394418a1da41033df0547ecdaad1715482e02fff7c75aaa8d6ce2a3866ef2087ecf9abf8255d20a362b1905f624a3e2ef7a5a2b9810f7fb8e427720673a6fad7ce92e83a5a33fd31b8d8766ef06a974218fb6ba3938a226f858d786e79b767ee419f90d1d9f70d154d4b8717fbfa0494eef53c1a616ab64b9921ff4f2c0658b5498cbe703ac6262fcd05a08fd9c07f1919f714dcecde213e4ae2e7df2fee6dd0cf673f2c97e75e160627231ff8b0c415fc05d91246b6f39a82f9eb508e1683e6167a6c58fd65716f77d29f6c01ad85bb9a692f1ef4af6848e585118f673fa1de6544af3b4821dc74cb2dfa164253e28f98b1b763517fab6306a9fa614aafd30281a117a7a73fa47b95ef381bd5180db2805daecb297524128eb15cc66fe1d18a1a7c6edb14d4da6c81f91c040d3a6457d83a10f820d7f844b6f4a2eee69f3fcb24712d768e5b2ed4602f8d3fb6cc6383bfc8e87edc0d70c6598a0ba1aa7060608dbab4c5aecf83e2a4de57489dd98e6bf1feef7811c81dc166dbdf061b4b690fd32a9df3885b93fa5ce8cb7b8a6614fc22ab2de78564da55ae904eeecfb0a13beae680cd89f42b0c08a39b31f383efbf8138b2ced0276249c9ec38d45d211b88d9fbacd95a1f0af9b9fa1b4c11051889956e1e7ffddc98e280eff553e2d4ec813375dcbe7eb7c19ca03676c2d02dd86e0774fbfe4c01bdd29da9034e422dc0761c91215bf4793d98d76e8bc027d2d9e13c31e0b129fc06dcdd6d49ef659397fed958616bfcfe224c559df84568a92a80ec163a59e1108ec1b3dd03224d9857de955e42dca534d551311f8ff106c48a7eea9e165fadba7295509c83ee1487b52ebaa2fef89047da55e923e13abdf34a48859e2309881ed16ebdc093fc39a7985dea922b915929b5492135be978394c307a7615432a0afd9eb6639f9a300917964f0308c01d311ba39ab380c308ce0b141153221398440bcfcd2aa040dd76aae7cd630b11636b92ce51ed346c84533375b41bbc6a762947cf162353972a8a9254eb12eb23b45e939839f62b3f4980d9061ee2f80bfb9edc897d4575f9863245b459ca28a3caf07a2b165865a17c8f4bfd55053e68733bcce7a3369dcc0093dd3cafd329d99dd4e945c55f094a7034998600de2aaff26d12cc1452004696bb2b2f259fad1794c13dcda6c9dd311df018a69eb85bdc6e278543564da3952ce86a3e8905fecefc33ca5494957b7cdcacd7f220f80dea30c07ed01442ffbb809230ec17c591064f7847f44ad38c8c80a2facf18e3928324771a153572b35ba689aa5ebd7a0c24190310938130e76d29f4ec338679a7f115a9310081f3b648e965df3239704c639d030c6f3dbe17465d50a43786a492eb3f7d6bc8a5578d0fd5346bfa1423fe06c6b68c8c70197be1d06557e4eecca20576878031b5b15df716fa02bae3e9f46905d7a0eb05b000cb3a87a4de8f4df8d636db5a100e5e36d303b78dabcadeeca9fd70124237caa0d5389dd61edf03122a993808aff817c0b91b827b4b6086ac012597b64b37c4f76688fe977db2e494721df9e6eba765ca4d0c11edea74490cf12e81b68688d0ac2a0e9ef03e2a336c33f1e8873dfd73635e4c4a3c88a249b003e7b28251858dc2e61db414ba708419818ab18ab64085805e9886accf8f973e65786c9846f4df49d23b7fabfc144ab6b755083af52ae77e10ee31f806df82ffd86b064bc6ec7c6bf835c4d50092d45a7779660691a2e76c8015fe2aa1813162c8661f48c7e68ceb92d51855cf82ee401ac01d2317280baf3b2d392d9689de6c7b0f04f4685fedf27ad3e2c387f63022653080fbcf686898865f588291c132cdc284232d4b0c63a434260f7d873291d33fcdcd5ab29c200739843c287bfa263172235292aca28e7c9a880235de8ae30084a1cf82199bf7918acf23bb7c6bd432d9ec2155fe65c30cb03e5e5270ba2c7fc9c1cd4ee42cf030946c47065eb3a6dca9fd00b8b2ab3272b76b9c584b03d5cee245317a524d90209914986d56bcfab3e261093353da07e733a5dda58bd2478c1e3a28f33cb769c2c8073efc7d7fc0ad8a24a615fbc57d50c0e30d969976e9d527498f18bd248bb6049ad52f6cb8b69d4e505422c0f774c8b724188b61dda98d1cfbb0852f053049b9ed6d17d808771905161c7e5033c40dd7e3f8f93e6cffa33435ce358f9e8c7a314f638320021bf6317f602ed833ff58730c03b6c9c4ef22c342a82ad8ccf5a6d75377ba68c7c77e20c4f1fe54a90ddc1b4d3a49dcdfb7696979e831078157aae2d7b6224150cbcf954087569ecf5e81a1c739c3ba8be12864dd1eda3328a1877186c115f62376d980078a28b1dc2bb2d88f93da03045a70352769f55d9b003962fc7078677fe25aa60f744a728d05d51c954dfd77dba1d387bec0097cff365754fe20f1cfdbfd928a4fbf01caac06679585fc3a425f0ee9390a9009efe99a77ccbb35580f2a347459fe72f0a9baf5aa5549a2fb2758f1fe4b59ae4e563c7f67227500099148773187d14dd060e5cd912ed37dddc845cbe63eeda1c81cd2a8d50044ede5fff7a1164fd6fc6b93c4835321c24bdaab2eaa49fd836d84dddb8121cb3b10dd517d8aa02dcc9604bbd425c82146453064e9e1df75dff117ae7c4f16eff82b19653e52ccfe82419a785d53f509d38031bc58bbae39a232fc998dac1960ee5a60385009f0e9dec77e2d5a7d4c81435b73df6ffd89313f94846b7e2ff2fa0aee70e4cc489fd6a100b556903ae4e11e02d78f3c9d31f84e041d06435360404c956e91c55920454c87193959c2542d92b3053fb62fe0cc486deffd96c5d86e69940fc75f7bbe67324d149050bda7383b3a71b9e730496f2d80752f6c6fdd3d23df49173a6aea85f9502adab70b92b8d65de1c3d65f9483063ba519263a4a94a24b2d801208644a19edabd3c0810981a94b16822726496f13af129b9a6db27ce9daab5281786bc91f12547d1ccd4c2d99c80e4363bd692c4a1a527c0604e25d4ab5d1333b70be7879ed4daa89199cd059bfe386c9d518640090d343a657ba54ca6e8060eabcc3ed226d01d1367f81537ff3408175c2f6a95a69dd6b6a918300100b86992d0c87cd09ad270e4daca95b337b6134d3984b966b289125550da9e66c5790055f0e2e61e049a60ae1da1087a199d9e90c04dd7848136b4c97d9cb2e3fa473837ca555f34b128b452ad7e19a7dff3080489ffe466cc0be474d9cc6f4573af5d734f722831a4b061b5f30a3ea72be95beb50a3a455843d94d5bc80ee358a140b450d0229579dafa33674d6904618a67e0f8ec49836e70bd45d0ee332f61105b43991d0ead63a3da570feaa79e71bd69b9f53bcc87fe31351a6a7eb7986c0a72b03d72bc0ee22bf1c7d55c056379055951b58684ca87fd6ba7e2133d24ec6839cfa86a139ebb42f5aa52de1b4be78e7410112e5a378052c76a84ace8a0ba40fcbe90f06fe0d081bb83883ddf6f45d48b8811c2fb8e7aeb6d7dffb36f2fd85389e6e195bf5c5858561e53832d3aa7e46f5d041c9ef843ba48f3f76367c0ea6d1aa37a92f7bb968a53eeb6cb9f28d8195012c878fa7a7eb4a1f0d1e9d53bc65bc26fc35447f53469be541333dd6fc611b26e1f7dcf1ac9711060abfded12f1fdc4901577576472e48fc244f2f2c1f25bdf00e92cd80df18e01627996e6b23b1b776b50a1b4f1b2dd4e4124377c34385269fa2f3082711f8b0c8dbf60f95165c6ecaa63318adeb30acc00e20c7fd889f70fef093ad288db7f59201779d415146710bd19589a5838c4cbe6bd535c01e03115957208932a472428b5e5944503ef8e416b4112c93154d85a2958935af3578cf953db67cb582df73a6940547afb9b693b810555bc7d38629ba941252fb8217086a94e28cf55fcdfdc8351c22ba71bfbba18da3a9f20cdde148a8fef358848bde19b383c8ca6ebf1e4061186a48333035d880b53da40fc2f3eae96a599ec0681376dbcd1efd7307d85ce218b1108f0f531c86d1d62b28f4bc0561dd3ebc8654d5b28ad56192a59d5550e0f29ee95ad6dae6987d0276c242fd0aa2c144b84240d3e40e8170db3dd458dab022f89c06a57e90073061946ca3e659696ce1066ef46613b550a5a9300f4085647c8e97f99f53f635a866ad0025c3dcb4edb9a9f51d15e454c57243df3c55478ff3b3e464ad31bcd693ac72845063c8701f7ec4bd528219f93d2db15d883d12a06c237722840bf630b88d82139e2a3765749baa91231d199f95c78a60927992170dab48575dc3fffaaf4e7d191dacd421cb34b84d264a5cf0182790fcf5c5f531252b6cd8d341a0373dd016db058e893d452fd3552d55e22569108e83cf3aafae1975736f3d1f938566d80f3d4089ce655aaa87ceabd5574259668d39a0bf71a238675c5b3884d57929c3e932f8f4e21e3a52aacdffc32740ef2ad0a332b0dbb7196cdbc4b807899ca1b52249451ac5f419199f0401dff4d31ae214820a352a5c9e0e42f1b83bd71c09cf6b05d7d19e28900cc656dc720f85437e9e429c83b8ba05824e5dca22d37f4e263fe0d44f603f61af56ce746e4f8fac80c9119608152ce74bb38580b893ffdc7b2bb45a6f455091fb401e9229fae4acc1f0ce8b910262f088e7d6320aa7e4334705feddb22f01069bcc20918020f6b67b6d59beddd2a4edcefba908afb616ef90b4bd9f211e4722e0623d09e5136fe33c570a8f127b41fd814cca4dc05ec643d84365dac3688bb5556c303604816fcc956ffd2813cf7f19088726cdf396f5d68abc7d9bf4b4556bcb3eae268bd4617cbdeb26c2eaa426836614706f112308174931ed7b26eb68678064a0167472c4bc653a21cc38bbc4ec295110c19441fce6b5578e0865da9d0abbdc8819b81d364e1a165cef69aa1adc20dc0dcbe32aab559c1da3dffe433028fc2847945ada39d7e37bf4d8ae61d55352235d239881fb257457e0968c018e7d72be80d874911d4075a0bfe94ed9dcba4d99ae1331a4d101c3b44cb778e075223e42682a84f577d4039dd82227f9d7f1aa71bb1982205a5c0c0ab904d8c3e2eed1d4b5e850f3b632ea35eb2dfd8fdfa92727123f5df8e3e11ac557243997d9713fe060ac4ab4f1c91e10698c514d1b3a56e8e7c6fd5c8d47bf0026125ddf2127f216832badd4a0f0fbb3af166e64cee37bff51ea712702ef9db844d6aacc6f939c68db58b5e16fc4aee193a7886f2a5a994634ea0b409ee05974be4be5dda5ecc74f8541ff46d3c9763028c0617b6def6dec9e5bfcf75c7610dab9cac20c7c012d5907b049babb090a6e81d5c9690c71d3a4e8cbadb98cf8d1e32701f23bd256b1ef8e3d5b976da74faee4c0b47698b56e5689cffa430b94b89989c37fd9366dc9375d69962fd6824d88b3c3e556d54eef2a0ca3f4c8e7846c940c7500a624d7264ee6612f08bb2b2fef2fbc41b6d8f68c151ed03809335fc0182840b454f97f310f2d87a01ebc76adf181aaf0957700270d02ac4876836cbcb4fa062ed4b863dcc8d1ae5d6788b30af2a1d92b75fdd2e3c421594826fe5071e3c6e782d0bd8d11e5280170c5af26f6fa3401514533fc671d41faec85801a54b9e97e974d0691aeafc52348744c12e98cba849959b640561be19a1d695406442fda8e2fde7ae8cacc67280e7ee104b50eab01cabe16fd4c5d6bcd3271c5852d6ccac6e6043c66cf42d00a5b38bb44101b6de6702827f89d98ec55a419e3ffb936f8aa8be5cda143363497557c77d76144af157a5b074a3e67278eb8449418fdd78eee622b2a52fe006d47b07583f9f7c04355cd28b23b609728f977c80b0ff1503dff4e6416f3fd206704f3463a899f2e8a439948102760083fa0521c842a8591e3fc275e1a04d4d959b0060052128a39c9852bfe7e38baa4e8c778d1e0683c78aeb3f3efbc1640be6739d999faeceff70f545bdfa3920542085c55aff88ad7e92eb74fa63980023b40df7ae77dbc47ed712a7d18790240c81e153d214b78cf799a9d76ec67c43eb8e2fcf6598995c76de15a9d97f87eb510a552d03bf51476a2164c51fa9a7532c92aea11415de6dc4a126b2a362cf9f16ef60ce60e31088c3bd2efe48ae94c9f04b697c9c7e193368f354ac7f6b326bae08d85e8d3bcb9c125071a6a096b5cf159997f930d53dabc49ac5b189835499128cfacd9ad0bb89bcd33ebf6f6b6519bf9c2cc5d0511b6ef72ac35bd0959a5ca0143a250f3efc87ddd3e975c2d190b2f9ba194679f14eb9c16d5fa1070dd3b39e85a7bfb1125c41d834e9b276dda74e972951cc7d73312c6b32597d582729de020aafdc134dd4b153612a8848a19b4a759c56d798f5d60d4528cc12b6b6ce1799623b0e9cc51a34e4c79633af718b77fb037ae54b14d20959d7e4f7109b8c63e2d6278b39aae8d57353b3518522537a7e6ce2e5ce929dd7970441c37d8eaec739fbbc187b948feb2e0769cfc34644cf8f5602b17750ddbdd49236b0daf9b241623c246dba15ab9add8408e4c39df5d7acecdacb73bbcc777cf0dbe0140d94bc2becc1dee18281003cc6ce48ae8f4f66e64d2159ca58ca429d206449e53c76466f29f62cf16d119821df45ea0ac2f8d3c40af67cb1c8ca86786b2fc0e28a5b9f5d679762195121e536f4cddc2d7fe5e11223c5125787a92a24cfc7162f94f25b2f5f82bee90f17eadbc30e1d33b55644e4792342cd6eaf0ab5596dbe2f52c7ea7daba68af3ddd7abba1ae34c8ba83b166c201960d90f4fef9bea865d2ccf6452f95aaa3fc857726eef948093c90fcdd77626d6a4d84f0390ad7f57efe2b8578fdb4a543177abc985def1417f9a5a39cbfb2b33c97409ff2abbdbae153daf767f53c66aae2d85c0adbb21cb1752ba73395743e9dbeee99f68aaf601435997e4aaef20a2956d77b049ddcece6f32970bf8d92ca00f8584443c3c1690679e4b68353f9c2573bac3fba3c28cb75dc408c3676bc4d4ecc465d55219ec0fa4b882e45d54273d25e9a6414705782dd3b5fa58c39f774649436713c4fdb938dfd03ddc541c00bdeb460a0c7d15afbfa61297f37d5b60cb13da92f778d177344e34151293cbea26ae4b589a8e549382359eeaad44cb1f817b8e2c659d1fb2be40179a417d923568b63f6d41c3459db592e99b29a2c825ed4cb395d7e81388dd2eb14b8f2afb9d2889655ab4b9b1fc4625be4c17403699039f475fd5326665dd6fa5dd438cd3cce8ee6b128a4add69d0563b8d8f4af0b0a0ec34294a2a9b47915cd21b04e2229fa1fc60d8281680b85b5d19871b064267308f1121df62c57e995967851db78fae3adf806ff65ab9b3e372420d7f18bd310278cc79610272edfedb68bfdd6ffb54b3db1ec06996a2c70408225bf59a455e6c33feb24664957b20be8641a6ee420eb9e2a1a5a6e3cb0eb9d9e7180cedd67740a081523367930d48b902a0624395328476178475475b78b78355cc25b4aec2cd49be14420eacdbabc5a38795fee1cc95d2529e167dc256cf6fb488d7139547487c58ebe08c2bae2e0dbcd7558c4b062b45c1251e30fe437eba1a0848634f62f1c2bd905e517ff05f9e13a9076c7d128030f42d638fc379f0f222f7804b2871a3b7d223ea3436859551e8b0f96087602d1991909cecbb60ac1466a0938f9b328f0e2944d9964ed93bfb592d081844f1fe997d82c45b7df9827895f8baa8183333cdcf9676deb7bd7dc7909d65e8cb8b5cc996d443cffb7190f1ede8f61889764ee03e3ccd9a3f56c509f11eb715f0108b468f258fc6a8a4ef27c845b11dcd3ba039787e52801148f8186afb2c10d9b1e79a5a19ff902b613492759507acd89fa7fae88f751b17cc3bebbb5a42fdb59d2fda5480e2443a3a708179995c50720685ee97af41ab010016dc0ed4e03172261b314461fdd376f526519ba8131bea6f65e797938ffed504a6e79a079adfb6e89cdf7d9d353277c5809b45bed1d1df725dac8b490c65ce7269f121d6b1e5bac67fa8adb84f21cda2832e66ba19bf7a012034e6d83046c6b86f59b8765e45aeaefb45645152cf23e041988e9e60204a49db59586f4b0406e0747cbbfa7aea09a100ff7654908f5f7979a0a7e1625a078eb04397cbfe68b070d79c336c0771e429c929c7108ed96f213e86915bcc97aeccb8bf55e630ee9b0272ad9c6ac8b3616c528cbffeb3162bc8ecbcfe9f1c351856a3a344b748da9234ee78021c7792926895be6de8324723229b7e40bf658461424731af01faead15d8b1e466e43ff7844e2fd9037d675e670c0129f4159c62c774e0c2800edac8135e1c28f9856db3912d63d3d42f57ad532024418016d74ae092103a6875d26b91d1ca257f830d2232eab60ee565896cdcf0842db46ffb417746cecae3a22180c9978527d8d5b5883f718b9ecfa54ccac05e599e1336dbe04efb2d5d35c4e0973a11aa9932f13f5cefe01ed1570025d3227a1f22052e5aeb5dc3232c8ced20e7a41cadd879aec81bbc014d9f669ae12f6ca0adac5ff7a4b2b4643f2c58b4975dc8f8acdbdcc655e3bc98137f4f1650a8294bc5a587beebc5c52617e90a106a43195398ee26fdcb9d88b5d3614e77c9a03f0c1b4db0c2389759a8591482be43dc840d01aec2fb269e5fc40ffb19fc4ffca68a0c4516c8972078324cb73a0884c5a8df3f8d1818181bc9404eaeb437047119b5f57c7b998c50ace56593321871fdf780e39af4b9baad9b0dec012f1c8c029b668f7c1ce6b5bfe738f31ab0b7c42cb10bf8ffe262309ba664cab887b34f44817ab13fcc81245ea753670c4f74d40448a75a5ebded131c9c6d2302f4c506d3428851b5ab9bdab8a6f9ba0bbb51090eba3f5f43873a64f1d210fe7a8e86342b2c4e0ec4747ece636ecf1ba11f8b2b9a7633aebb52a3f7fe45d33d1bd36defd6b72923561774f0505ca8aa455f8fdd4f5b0d29e654d8244800fe0fd4db1636b066ff23254c7b5b4768671eaef6d8d4858b1ea4fd2c8fd6a78cc6e642662a2ecad3c5d159b0652ee70d19ba583b658521944726c88155b92b5f5b96d6810875bafad0d509cc1bf2a1dc8512ab1eb36399e85df48e7332ec5a6b177e239e0f9de635f55f982b9c875fa36e89539aceeb817b7aa221b04d995e3126665a9cb0de387b316c2d39696cfd8c56b6abbd8a545f35e745a8405b0445335713b5f9423e0cb0056226c5b76b2e49c2af4ab800e54d14bacd84e9e56111ff110d834664a99bf62f85248bc02cf9015f6c3d1a2bb2e1cc0921333ab22561fe314943ba3d7e3b7ae1ed326a991500c33857c3cd1bd4aa0105a46c0104002664a3dae6a35b817dc5c073c6aefc9067a06f22971d54248af5ce9c36066a24df476577ad33704fc31422d9b311f472edae7b843e421c9c479fb6519183c918cf7443dce06e91899df8799c9a1c08d4da3cf98f69e43b34b031e516a69832b99e3bd5e53f779d83c1334ec66aec50e6fdf5e23d53091aa88fd646fd3a5c270f1b5fa61e18634b48cd0a85cee44c2292d8b912253adb590c32458cc2bf3d74e4a23b4d6ac0832a094ad443c7efc37d0ea9cad14574b3ae1810b5c0a8466cdf8629107bb48685c17cea84d83b53a8302c997cc976edcd63b1df36b7823851e6e242a750015144169aa120ee30bc97da8a36d28d66a2d80d6dec277c329ff1c4d5af34d921021bd2623e2aef462da757cdcaf2a625acc2e0c28bfd2f1cc02d93c298d9055df761250b179c1b751a79ae49da175beadb1ab1565d2e5596444b97ebc7d6a86e382816683d7e86b2e594f1a66f743687181898795a652015577526242902ae445a13d1509947af24a5eb15a21abc9ea76507f99244e1bb45975d371c0b3d96b42ba3a1edcfbfe30a4ae761a0ab938c797c12012756f492a5cf7e106803827f9e6135eecfcd4ff0796fbef3b8c44a0553b996a99de212ca48f26e529631ebb93f005cc688d4345b608313fd4056654874578a0092715e11f40f91890f0057cae569f102f266f71bdb86d9887ae8ebf8105a1cea012c842edf3834104e0238c7f2fd8b785cb7dabb78ef2bf02a8a20ff6d938db47afc1e7ae7bc5729121bf1c51d9f99f7472553a45838a15027b8f22d22cb28182054aade6fad2417ae44c035163b16a63f5ac25bb99415125f388905e07f905164005d850816033b1efbef171153301ecd6e6eb787d01135584b91847c3700f7aa6750ff0e64bac66918a722b6b09f3f39727db722ce4d7099b56438eeba5449462d0e25f725c18a7c9b495c8f4f9b93270a352210bb626f165d556493856e0ab6e5e57e176bf8bd23f69ce2fce1cddc32efd0bcb85301e25e67e5c61470f7f117a5523479755f22b8f024d61caa49278087c71a94a4eb6658f242534146a87151e156e846a2dc51adb38c746bd565ba7a26a297c0a71f517853184623a8d4dbae18dcefae3731e23c8c55e1e12c74ca4f1251862775a6a65d442ce68640f04ec474e15bd2fa00ff6b7012a1f4b77f310df394819290831f1c36a5795179f4cbd74515fd24469a0949cecdff26cff51d77759b81c0d64531841dda7b17a44a914c8bb2b134efb1a21b7e2a75ba6df7a0337015d789e69ba976ac0b94408c7d1485b518261df84c744d7bf60f02174b570c739c21e892b21ada4a7bbec47f52c68c23e3a9323e54bce4a68e1340e2dea1f528cc4e8cdfb790242f927b267d816c1c1b4537878bb42c899511fa023a88a1392532dea7442990af1c92d29ad6a0930bc130d81f31eb98c911b40985c36f5688ee6a4beeb8ea7b366398f12195aac9bb9719defd9809699650c244e517ac851785852b05fe77f7d33b21cfeb4749f1cd0c37fb2f584dc16d06220f879dbbd4fce477ed57f4ad10035f86a47fcd91b5868cc320b9748a38d34635a1d90cafff3d34fc628207b2bc9e193184806abfb4b2458b87bb39b2629770f3c4ce776fc1d441db331f45eba49297a29d0c973dec21381b1017ac9e6d612c3a7d2f0fd076258fdfd6c8f3527257a557654f9aa6143ae6e7b19635ffd1e11a1a98c8577c02efcd7bf5ace9ec03d53329724d0aaedc84351ea9edd1615f6af9608d3b94171e900054e1ec9eb18fa9f0e7ce1c4a13bd59191ebde70229f7f0516c1474aa92c3452cd52137fbd0688db23c69cc9316713ed1cc5005e1c4f263bb2b34d34f7d72b18fdaf3b5208536cdda23b4bc2791ff7863b46ca9e4a74f01bb1fa8ebd2da5fab3ffd9bbbfa60d5150f0b1327147566835d8847baed978b5a74ca3231857610823bc85681946a41a16b981c9225552f83a20150576e085c8ba7a57fc29a363c70f78c68ad7368e1c57e87b1b8b1be7b28d7c114bd4fa8136365eb2b2b77c48f352e7a52e70249ce364433f046035284572963327f143626145a05876cc3e6356c87eb9ef5c82f87bd4d21fecf62a1af835da681a126d1f04e9fa19cd1358341c897d2ec078a052604f35383ef3a46862e9523fbdd8503989ba4a3c940678ab674d4d0a5ed4aacf7b89f715cdd4dab39bbc13911b5e1d96e3495a95ae0d0d8124b16181d325d054ba4e34baf483d95bd34a02cf4cd83dd0baa779385e7eb6f921db3d731c18b5269efd46aaea8587ce73f0d4986fc6a2e0e484936d43fb35477cb63bef232b44ae7dfd627ad9cdef27d5a615c01d6116641bc51d8be416af9ecc6c8664eba15babc578ea9823f42bbe150992d9d304a3a98214b994912d6b0a873b6365e268d0446601e09fff82fa7e8be7fa4fa6104cf9f1ef9234611bc9ddbc4813adbe0a6420683aec0e09a0b27bac0adb22fdd30a4925659ccce463a595c1fc5f20172628a6e33a2d8f9fd0be6471ca8a4ccd98e06fe34c74b6eb9ec453159abaf8d441105acde99219acb322167a3d7951db4b439fcb90298f01868ac58410aff835ac3ad6ae7c43a77a63fc80da374008944d84559a72edddcfe7f34a89a92e17cf7c5657e84110c664c52dec76d62c0508e039a31ae3f29647e443fcbbacf0c8862030d0d104c167b095064a0854f513cfa53e7dcb2749fe7ecea3d29b42e927727d2b6b819b52cd1a78f0cb1e86b7743a7c4aa8b25bd3019596269d50e52a18c609a7c494bc2d7fe8bdea6d5aa046db4da5e9a8d6086467e3f99b84f664ed4890e26880a726c382d0f0df9e46d6f6c12d056c6f865c92f3f08ffba15e65c21e88e2859ebe0d7f11ce2cbfe8a55a1a389b05acc178be2c189650ad25a9ffce53f65dcfbe4653e5561959aa1ca0b96879d92ac2183f4cfc499c8e6b0e6587d5a9193e6d4a16dc113b7c31d5977dc31a025ee15c1f5916060b9f612e30de7e268c28e7a03502ff5bdb97002b3f04871841e251564527494b3dce8b4ced4620150a0fca41681ee54804f942b5ad073f9eb1428b24979cd076fbf20d662bbb96f42542d019e97074e573aef524a1d23d825c089c0baf9858a06040d8a5cc8383e8078efae75f2da4bb5ca996282ee1517f5764818e376bd8a1ec00d9d4e3ac3563a1b813f5d9524f5b1843645acac874898fe3566c41378f819cfd6284604367503363750a82201c5d588843fef83901ca17b8169ded832c6d077a2f9ff7588d219c939efa47261ff6208c1bd3dd089f9c04dff2ccb7f50f53cc60b5f953fc7fb39c921770a52f8bdbb34e436c3dc0a50d257dd5d9a617bfa7219792e93592c5c4141f04b69213b3da41577a97915f5d53b0541ac701b2dbe8320e4d8aef6593fccae1dc417c7f83d4422660f1b0481c8fa78844907c9d0f786be8c3a7c5c4a330b91bc69d05d12e69fc37fbca59fa422da3b2325fcea04143f27900ccadeb311912b57a281e199fada5d8c6ff62fa5700649cb0bbe0495e50e375755c417571c9f4770f102e615cba91cf61ef5f9b9d55652c78c68568d8bfa93456272327542db4af05f9b8c4b393ca071d1677292c43478f67e988d7cd050aa0086f235da90d7ff69efeeb3c9f984d6ad3824cc3b13d6df683a51a1014be8cfa3302e978982993d3cde2be143d850b6b73cd12bcd9ee297ab49448cda8e2b67f8c40515f44a831d20d93807067f563bc523d5f81399dd5dbba603a1d44a0abc1af37b589622d8b449812253d38e015fd20dc0522e425cf1f62630fb85921b9a982a1029717fade81daa78395e8571508b842b4c9af1cbeaaf9b5623daf19ea58c0a0920597126c57ff9aed9fa4f03377d8c9d449c6d36f4b903e6a52cb396730758d7b6be279a2bd80a3bf80f3220a52d321e24f0508723dbb5c9d66d9859d5794d84a9d544b53b9f0bab9f2ab046186eb04018df2e60a6df45d55fefc92714d3aeeef5b85de229b1ac535be8e7329cd566ff67bd8d7cd733ffe318588498cdd1d73a1fed1523f72e6c8dcce0239ba6f87002e06acf9b2ec96966f0534cd2ed71945e4b4d6804d69c2177f732ef9a6413ea874cf559cd404f997af1a2b4a47caaf5df1a927cf9ca3c73c58b96016c9cc2827dd8c023600688c6facbef38ea68541964201068183966b7fa4966ad74e52c09f955dabc800599979a04dfafbc58a9b0a6945df33abb44683974f5d4150713387778f7baf50cf53141f710815dc2df271679ff58cb1d8c1023a50bec40def6bd32e5feaffa4d16051483c6983c90930b9d60905bf5ce382ad6fc3731ac513e3681be4181c9e5f02deb14cec0a59a6205295751f6a42146c56d6594713134e158ea3895716a6d194249e3842ecfba590eb111c271c56bab1eedc3f07f1c413df91c63086d0cffecc62fec696132dfab4ac312730f8dd8307d2d5264290db32a691e22ec2dfcf1a268d03cf9c370d1dc2e7881a902e78f80d1a3139f07ef98d5c845161b3b6f9c73930b8fce65e4ebafdecd284955070fa945bf128baa25a4fae51a5b265220a06f60306bfe0f6ded008333ad5f9612031712655b3beadbf8305f3b5fb04387fe95b9b3b9869e500d597186e53f671a8b0ed0bdfb35a82fb4ed434dda91d77106398e1ca9ac060c4b17838ad01aafacc457312404b18b997c9bb7803747f881b3b83e230755333a76be4f822167a6b02fce4c7f0d4c7cd4bee7f010e1b52056c62b58a56ca43825e4314236062d3b50ff48c010c3f7013243cd033ed2a9838e9824a0284e3055ca0efa6bd85345065692904cf0cf280f9c716b27c45ed8c44dee8baf57839622dc9d7de26cf214aa5b3889ac3e113bc3357ce27fb7f30f9d1bb50fb85f188dbe47ae9fd8536f98d227b31e39481a29e5af162933b831219a3603d5d48a085c1b197c1b6a2ba03cd8df8494b60a7967712942378f5f3408710e6c8ca3fd5ad91cda3402126931d534e8ec8662b24035cd5c3a47deba380e25e05c1b5c2bbe1826a976e24625c722d6aa7b7487679b34cf60b5acfe443b18c6a58644c1f7a01225c4c98de88d6be84b4af4c6f86cdbfffb9249219508478a23607fd5e917779de64fc3f75a1aeaf31f01cc256762664f01cd066c93c66e2e08bb59669f1212057a49f9e324d6763de7ab81d0d684d41a45a60e02c2d711be7c66f8d712c9c3f4080391db67361d4d474c09e4cfb59a1936a9a877e66534acc1db9c08634dd295693e039e97a6c32a5fa0c4f52cfe53c7309f726699d73c6c553d1ee20da07b5dc0403dc38a26e08936c56254375f606c01bcd482620da55549ebd8bef8aaed43a7e79164643f4730bebdcdcbbf609d01f6d14c885936eab541c5a4a8ada7089a3f294afbf67d00e4a55dd513eea1f52205f2564b22b226af77cd5b2a8f14bf3e9c7215c1064434ed3b3e686d1ec629265282ac2e927c3ed4ca3c6dd63b2220a42489a3347a010b4a72cc7a39a9c9da640d465a2db04521888be35787d69fb59ecf3b5fbf563acf755ac9fabad93d5cd7bb23e0004cf855a900d878160df672001c8305a378b15a6c9a7ecfc7035e0dd78a16b3750463f862497b750f9bb8ed0d6e31f958062be8028a6999b0d40789de01e2c39074e4ef052d3de99da76b0f94bcb81509a4a34fb4e9df435f892916930645dba35e8ca3022fa36a0c54da782c72b9ded1b31712abe62a2228ed8d395e71bf23b26e156df960d1d092f16cdcb54f9eca7cffb564a995fe045c671b4f235b1b87f1677b57556170184ec0641b862e8278bd2f6c978334fe7a88b9f3e8c19c8f60d9c1e6de61e1532d3ad0a4df386efb52911fdd32abd2dc946e4e523a4d1f9864614ea569455d3583b43cbd449e7c71b36e906fbf0fb78c42f392b0bcd41d615b598d966e277188fba43049064192e6b899fa383ae8d83cf3e9c9e387bac75b6cc261dc4e30d876d91b4eaed7e60dc5237527321d69518890ba8e7a32515a33acf390088171ccc14b001fd778df453978e0ecd12850050a6d3581df76f7adc0eb9101f892dd59b66ede0eb45b8301946bf97b175789466e4030fa92f132669a059aee20530f4ea98195e15d37fcdadb6ccd3c03202758b8c2b677f7e3ca444652d18c2fa2a4e4fbd269c79d7dc927fd83967a1ea18feecdeffce20d6342f45db525b4acbc752fb96190e3c7a8c178084dac1df90ae0b985871197ddc9e5cf0d1c465aac088b0b64d8b03c8239b92f749b52a359fa6a4217fc664cf6cbd020a52fa98b2f2af627b97c24b73ced25176defdb8ed4e47ab5d2f1c86853a23234efd0e9f68ac3612d95a73bc154e387b2710b8bf36542bf15001d4630ff0a7c1ba3177de17bc8c138ff067f8013832878e776715b9790e8e6819edccb2816001e311118408b813ca8c0f92785afee9f74e8a451579c65eff44baefe1c09189fce78e3e8d6b6fdd2de18d3c0553bbcd543842d9fbc6a7803b2b2d50b0eda8a8281cbd62a008ea577bcc6490029e81ab3a9eed69cbfd700687523db7fbf840b2c41f8452e99a5bfd70b610d76b07375518a8264026f9d1b48edaf7bc2de78095c19f4f2b9e2e35c90367ecb9605d7735fe62c220e6f685ca1f9e71d845cc47aaa4efd613117fbd124364cb7a13e3483d455142e2fc3b4f59bd09a500deaf9b945978cb4eefafef2adf36a52a43f690b87de1438df485779b4e8ec636974261bb7bf3a56c3f3b84a79ac2e76665f58751581df8fd7dfca3a7dec6380fe14e068ba1cbe4cd6fee1441fdc8328ceaf22603e0e90b79141236117e5e5abfaf601c5597468f5e36c9c31ac1169024c250c612bb35e4667c8c2da12ed2f9381b1c26db8ca171caf12fba7b9946b4cab98e919bf01781df594220adf3252d5be0435b7d426967bfed25cc32789cd97c63d387d0ef3d891deca684eda58d04d8989548507fee33ceaab0bb1e1ae84bf9828d143bf9b190dce6ef7757d71e51a83cbdfa41fb8f3f5f62ca7981591fe7a0b508a87c08079bbe6a5503be5889ee3ea21c0c2f4208498f89f12ca9ba82808bef77c4a8cb34f6b7840b2f5dd12bfecf878c49e0fee1d8e02192d0ced39c578447955a2e431f6c2b53332c8f0f7deec71d568e9d9ad92975e1a8c263cd33dcfce55d922cf4ad71034532a88ecd5116d53cd65ccbdabb1af0ac74dcb4cf7f4e49077e27daf7e864d6082a856ddcc50844b832ec30db348babf9bb3d937db025547b0d3dcf46b0d5af48f7c946e267b4a0a58083d5bf3184c012d5d9243aa1516efb00ca5128fde618ad6db0c732ad28c78faa202315a825d67bc6ff95a3874b8051e2a48c8d7cb3b54bce2a04705c8d36b45cb870f38f64876ffd718ffe80d9b2d0c8197acc023aa3460e56fd14c11a04bd8bf64de312d693ab7445e8abf137eaf5308608f1f6c8484de1afa9252c76f3fd00ee0d583115444edc6e9df0500d43cc35c541ecf6f16a6925a74b596215f52a841586ee6fe11f46e34d7f399f14bbe41a855262646bc317c48cca42388f997be123dab1d33a2899d032a07d0b42eb6e9dc6a6901f2ce1b061957977fd87d8195515bae24807cad9d5e6c64b52a1ac25fa98fa10cc701fbe0f0f50ba061ccd46ca0c0358a4811195dc292a9d434b2b5b3098ef7a9fbe121c6ff96702ced5d2da61a0e55374666a13723ce5bbd58033b0607053f9cf29ee39233f95ff8189996bb385ad8c6bd2121827cf51b312e0ff602a9868b989c7abcc4eee0492a2458e737a4bfbd924a39f862dd027484afef35d33ec55ddf0fc2eb73f562edd6d61ad9be58780fbc9e72ed330235da8dcffcff8f0831157cbfc89d814f1930224509e431b4533576fd080c44fc577e6281e24b18a19a646a1cab716e0b187bb67a7395261c6c5fd50897f32e044736722c2e065b4366466fac85b861ce4d4bf03b05266716c34200ae559f34152a1be47f85c878284978b1befa97249ea99e8c8fa4a1318a4614cfbf7ee68ea38020a0a4ab6def7d2fa1182a8abe8690a6c2634a7f90d99a399daba212c695fa43c5d9cc7b77bfed82425d8b1e8817dfe791efc15a2b306c9fd4fcef20c0c691189815cb55116f32f180ecdf8811b4915ea82fe4bdd14b1b2838d2fa0f2d7f2271b01478007b247a50b81cce37b6666dd7da7a4ac95cf20d685eab4dbdb80b34445de16ac288d97ce35241c8691aab6398e2743e9534f8a7a104fb88f2c34a0de8b7ff76e6c1d9000981ec4d8e5dbc6f90050e20c960879e1aeeb7a737e5a549025dc2160db39b2b68f654f6cd1a4c128eb55ade49adcbeeb733e28bc278ae0011b52cadad34c175c58e16119d2c54483c2c95fbe3a20c864892cf4723acc35e2be5fd358fd38cd3c8111a9956ed62c7a9cc1bd08c6b473b300d10b174db052b6258807b295cbc2af802a31c55cc20b1cd21517eaf6cace35b9000e5181628522192cf0ac3f9f3bcbb0d1371701e9e5a5df4331d952d312951843c3bb5ea3bff7fde960e3c36971f51ac9eca188755d9217e6b0a039d1f530cfb6a851cfe6c3212c8dd841cdc790d38bc6656fadb65363359de6200005cc53e9300eb0a607971b778a44a337968b90058452e42f60b95e36d7041585b8cbf46b4f3ab660db6701453387456dabc441dfe28c3d2a9e08b4c338927011f882e0207fc7840be4b04ae75adc777cc52060c0921cf30dcdba0995c0324c3f2c69907c6d01ef102f9d9ce49d762233def1fe5f022b9e1271c25036dfcbb189cd728b61b29824c1e53d7ed4f4b30b7ad19c7788148066e4883854cdee94594e830b8ccde5c9da105bbd38e056d070561483fcabc420fcbac31f32552d0b804f2314e964926e5c3c776f5b53290dc78d2b6dddcb8cd986481f5e9390e287f5b7d379de6b721109eab4cd822aca533876538369f325ec2b2ca36accdc69a3803eb3b47bb54e3b7a94ecd7b289e4a4e1d6a393436fe164068e134b3e1fb785d4b781433a73661b3e9e14629c738c6059c0ca337b4182d208b10ba28c9dbf79aa3bed84fa0703d0b0c9b074b598590ad533b11762e3ae886ad1506ef5a2e50c18e906081718e5f24ec0ce17b20388b56a10026726de0f904288ab3dbe4837e26013e9a03368f90767bf95c2624a011aae52aae4d06e08173e791a95c4b4ae0cba5fc33ec081e5fb2056310b49e6b74535e8cf9f8fa36b1eb47a806eb06d16a589246ed7214ab5e8d9140513a27f95890dabae551fb8ccdf1500e227c09c6fab61dbb51325eec3e26bc903a02b009f03fe6200814983521485918d8aea551ab1cc2123dc120d5607dbb783e7c4eaeb0987a32a39c5ba9c7626e637f1964f0b2faf490b0b33020573bf16197ae15ab6df148e0910d8010a57c1297087ed5ff8c21c7d999ae4152653051f1604912953b0143d66b8c4d24bdb7279292a11744075e9b39256b71cf4c6c148caf70f1f2a3c6eb1b7bbe340d2222dbe3e5d0e875cf41db907e1eb3d47e9b92ef8535f5873693046365d7a56c148823bd79835070ffccf2e8e4c5ba58562469275b2850b0133cdf614d501775c5afb9e0692bc16bca5cf7cb6e5686d88a636a10c3aaeb76899cc7d569dadff4161b2b44b205d968b3f5438bdfbc3e8877976d1eee672dac199d339cb227768e6c34fb0740e4e7ddd9052e5241bc9075066e5355ce524721e0d2e77aa5a2f64a839db2e9fd947bd289d6adb1631bc9581053fefccc165d47ebb965bfe2838768134315e99e46f0a80ff7851907832de26cb544e1b338df6d831f9bb5a6ca9c86d264ac57d338fa18063b92d91aecbdc537b02593a0053e770188c1175dadf67a3e9721c881bc60ca4b80868d409e4674e8fdf56495174346e2f7fb91c850981e0516b41ced3f40185728d03b35e591e3adad4173f653822946d34c292d20f5e692ff4bdc166cb577970270b60ccfb19bec7a8e682f46dc8d2b0fdb3991f6b532c95cf5d68f860012fc16d5e1644150e058eedf3bff85b2df98cbe7adb360c82f81a3b5cf33aa272946aa1e9f529bbae53d385791baab3e3a507b783fd77bea7bda68d9828e47daa2c70c0d3acf9a6fe882b76a197a69f3036994e37628509e2a3a435780b034fc052d6e8aed99599e05e8ca8a3d59e7edc38ee878c1f5f6caa2a0d2b049f704770062db304b75e7385abf8f5269d710c928d559ad4a559e2b4a1b056f1076c28f6614cdb4f577daa691cf1256f027d2a7fc21ce90fbc6cf33ab02c644a808b1b965107c7c13d8d8f77adc4faa9740dc95eb8dada0c66c067a9921bba997bd6c9301818a4e2672dbec8e00e6109eb4620bf396aa8061cd1f8520064a66f20549f591318ba8549811c4cdd1c7fe7b87a6ef5fd5d5c19165d4d924afffb189fd66fa7803ed1d4b15b808b42452a1e5ce275f654c0821cd4d3a446c2f8cfd9e64ca90226c1472570a11541cbe380d7894d4d94a2e469c0d4c99cbd8d1029a0fb62e2ace66d8cb17b2278a88ea8a544eaa94e3236050366bcaef5cd49c778b2e6f3b58d4c02d97dcef41a3f8e294b48ea4cdea9319b94a5b87116f1a9432347c5273bb45a4335c392f9f037aa89b50cbcddc9d607b1397c10e336d09e22c424afd38f6daf69f1b3699228480547fc63719410c27859d07d933491d4146dd2640aa981535a09bfd3e245dceb799bd7a62b5908054f6684b1c24e0e05f1e0e31b0737ddbbd4e36526b3c88de092980730ae114b7ba5492a6ffef2169b9cd6a5890d3a9551c10ba5d4fdf7aee184097a09c63f4dd62370c7393ac7bd722b85418c111b4284c3879380e6a660d23943810f534a0e5eb62785918d9fb317ed1536178a9e4d49ed5d2ac919a84a7b157de23abfe437b44440f3098389434317a5134320c2e7a487d8013c2ca3b811fd09bc7efd9580bdf71744499850e93ad2564a1e691fd7f2e5ddab3c766478fd6a423d3d2ebc45535e14de1fe6fe5d3d56fe589df83a8633e326b08728cbef93a03f30f7e82277f84eeed8ca15693ba42ab438cdba1a508f21b1abfa12d15c9c7385e0677358693909b7f430f988c179531a6e7e7e677bdad1fea8035529c8c638de7cf7f0a428c6a3e986a657a0f974691f36f6572327de134cadd2cda7c86e56f52890573dfef2077ff54af573a95abef6e7c52e4a9d735e7be7c0d418cee0d760c900026dbd44fa891d2e85dc69578c290266f63c68313b584f4751d0f7c4cbaf0b9a0d254f1c36b6f0129dbb2ac1003f4d4f4f80b4740f936e176d5affb129e9217017b13afc5f1befce48d3d83f66628556eab93af9d2e1317e904441d03b8b746e5a1c2dfb8f4e89cac369394cce8e1cf2631c76ea11561dd1d3be04af5da49f418e53d262bc097bc7c8919eeb6e0d475100f593ddcb2cb2d99c7dba58ec863f99e9b6e31e19ef2b4aa0716149f0c0a295ba739ff0124d1e702bed6bdf94aa3632e1da1730ec8213693218523ada1693a49bfeffa7608368efcfe34280226297f64c78ebf606d3e005647905c60be625ff2d880647aca6130169847fb3678b747246dd404417d26332c94f2b1aec3236ff1fb2566cd47c12317d5edbbe13b73d34148678dd0ceb711037d398cb9abe0c3805f67503c9cc3e8e6e5d731a74bc3397b78237d6f955dc81a192b826b93a1bbd4589fd96128edbc3aa19f0f2279192e2d0893fc1663649fe5a4c282328cbc86ebb2fe03ed2a481894292782eafc83eb6011b101e0a9cd76b01cee931b0e9efa9cf58c7c8f2c0906527df1e7fc4c970937d5e43d4db6333e8ff3427f10df4453bb170caa39c26b4b1acbc92f07976138a5e741bf7e138fba4750e521acee639e4c78540a93589d8d53f2d98d8f0ff88e5874d1c3e52dac9c09eadc12378c857d735ba769e664f5597dfc85c3b8b4810e9851491ad3c8684d5b699846c51a92caeba61fa2a70dce284b0bf6cb0785f74b1cf12ddfb4464e6613073e8841b7142042850b8605a2f3e4ef3a4454889f99ce6e754d245fdec4041742fa34ff3ba1012e90ee5809b70f97caa977ed077911d3112ab6d56b84eec701adf074e1b6576d852bea25b6a817eb6c3ad3863d15cf72963470df5f544a5534febd462f443d714e8d30e9b47485a391a4702d12191631644042220c232af875e059c7da6c14b0d073b01562e763b83f2441eb05405e3159899494a6ba6992b4de0b563a8446cfdf4eabe905b992ed772f0c3af087cc4b2a850a35fc027972fd95647a7cd6c5198e351cd1fed8c10bb7f03e0af98804a109f40bdeaa86604a9114c7bc6a1ec8f079caa6d3296f3329aab19a84e6af1fdc2d2fd967801c5b41a78eeb45ed75c5137a563e8039c832db8c1c19b465d1ef06fba294b5c3ea290268db63feeab02e85339627b9f250b469584e4ffaafd7bb5b249b4f076e0f99ed52c8578d37f0449abf1afdb2bc663cc177e8c9ab1b7a1adf522a8602093d577915cabdf6edd05050497a3637f7042da7a9aeef44cbe1566950defcd256cf9b84995abe7a161eb32c2db9e033d33729e490ba86703afaeb38e3ed14c0de7de2b87403aac8c583448a36e356cd0e028ce0f23ee28cf935d03e58e150536df36c7eea4d0a7191cd500e9aa4c3e7d21aa01573131414629ace92f153b5ce6ea4dd7bd83f949a755992799c054104c864501272ccdfd636ecb6170f2109c59fa523fcced8485d55f392c20e8c3af8b500c86a78a82cd6c0a800c9bd582032dbc23f54ed9ef5916cac3f5778bb8c57d523f3164188a78aa78ff038414d91e7b69b8107910915733290c99b6fcef561b3466dc748dd0f3d1e9417d49675db62d190948c5d578a3f980d2c1f868d94c1a52346aa23b976dbf0e79717b203b3090b4699f6a76eb12db20adc0fd498058aff74e4f35a81f28457cb48e59d950a750f04278b2db19327b19294431eddc3bbed3bff235705b10b3948811f07d03badee543e789e9516a41d773356915cc6fdf348e355f0561a1a8222cd00cd623ba6868607f6473dcbc7c0c1a94dc58829edba05728a5aaf5ceb2c3f11dd4df98a402dfd54864ce0ccb835be3472140feb06c600688d4d213ebdea2358baa22b74a280a19a5782ea72241fbe5cf3d2338809920a48bb3896494ec1c6b5f9eb071454609e6936a5887bcc5e2c90830a70611deb889fc0e4e84b78e649de3b066112480823c8be1462713283f4208fe61ffc4f99a2ade0a0d96a2866e8b2138fb4f086c0a01c555a97f7c69cbae6e6aeb499dbaf0b7c09328d47ae12973737c801e1e3538159492cf83344e0f1aa2179de3c3d73529744f1a4a91c1a0230b2b01c2b692aa4272b96be075eb71fec81188ea919ed08779608b340e5527599da483fcbaf13b466cb2e4b92ae1583fb02b3c11eb95e18ae421f5708182865a9b01c49e922aa7183bb0b2a9950b76dc170a8388f79130414195eafbe0fc698fd8221c9329fc6dcf2f529f19eeb0bbb87ac371a07f99fa7700ead7d8589b67c51aa10632ec1d0106e1117568222899d31deb11ef6c32fdc74cea2cdf546756ac4f3780c2c7ba4eead42c4fa80612c42cf8acdc4ffcf2f15c5970635feea7c7d7b5638ff094d2e7153f2edb5a4991cd8164dd18a4cc60d097709e885fae7b7c511c30749d5abd882f9f97e7e237323e1761427ab5d28d7512fd05ede83a7182269fe2879784b1c3080bc85b03764098002beac529c98b4abba9dbc8ec98b20821a6774f2ba27b9453e85ca87b813dc2ebdc4aacc74a3bddcad623a85cfd097494782a3b2e90c2523f230a0cba5c58119f80a2f06c96496d42ea6eb6545cabed8ef78d9c232aedb29ca05c7b132112b73e16bd5157bf7d3be1b618a33279c7a6c9ab8ee4e3be08c9e74caf724cf2092eadc3f78e893fd015b70e54814f57bd3cd738420dc0a7db3ae4174c703d131e2300cd68bb9910fe56040fc3ec8398583c66b475d9f13887c1fe3aed4f44c3837b7b6e6ef1ed4d36e7ec26b0a5d977140aaff19ac6e869f8e9965b0b029046f29876918843fd820bab2e7fad7640e1d17fb2db0fbc9e66b830fc5471a4e270dd0b9191a4fc60800a0a49d0d7914d5df1890570c0feca19e47d65b5e9ea1e2d05185d215c15f0071cf933527cac574c6cf5b89050d6d8949b511a94442bffff0ac2fdda29cdf63dbfed58a17df72555cacd5b67197e7807cca4782bf16b925d9761e198cbb3d1a5f37241cdb2414bf379210529a0b0a4e37babdb60413c1e57a490da8f1cf676b950b4d6389f9455b1acbc12fdc1b0766f7936c47288b3a6c80e5b2be8a9a3e1471fbe8f2c137b51c29c381c70b3a82e7aba488851baebac8568b5e8e309acddbd4c33b83f97525929dc1f31095e024e98003f55b422ac06da9f4d55758cad35272b36d5a3fd6fa251ce114874147194cad7a1fb9a41ce45b35f8a16918fe07d2e67d651cc5ef538f08f571b892f16442544f36c710ee19dff5f6c9f2dce3b1303fa85e49d4786a040c6a589d9dca1db3e0ea7c0d7a075697aacbd551d65fe9adb87b26e8df37695baf4339f5db083ed420b929dfc5d2c6a7182263995e5da5e9e9028b46f82afc478a17dab2abcc2efae1d343877abc63ab396d2487a2017e7c25bdd936f15cbc97447af8468fc6b7527f2a63de97c151f0ecc6db5712765303180f9355b7a5c43ebba1f9d3f8812f28a80ed8c7af2636b025ccbb63f78044aa816c6852621f13ba8dcd23cee6ce9a44a8fd7c05be74a3cc5980ab799d13ea3ddb47c253660d97020801ad84e13252559db710141cf34928567ff66e0e5d49274447552fde79c7b06b0ee4ec81a9b8fcd3ac3c1577b1ceb1fe97678be314983fd723c400aea84f5e4ead92dd4f29787dcd3533d9ab98c3d66f04f36b40200a20e6983c35bb23a77eee6e04c098e98a14b84a285e2217d9696d7300f3aaffd196468116a11a5cd2af99040d9adf709c97db0fad08b99666f38a92cf0a2e7e11a36a1340810afff60a4cb8b360be372c2f6b7725f864e22371183783ea4d7193eb92c9a72ed64da7923ddbdc99d4211fcf877d324555c0205d46e6b9490b1356fc7231d1f0344f1108c79c52ff287b9db41d8f23e662ebf2ac4ca312d097a1150eeb4d641a40469f3f7ca131d43a254233aa5d5d256d8ff871f191e4ec55ac74fa8ba26205a25c3af616e138c788435959382f9d184f731d2c975512e9e9e251686bb9a1c6384f8870fd2c6234440a88ac846e85c3d8fafa8fc54c37c7acca8d25d7e878c9ddd5607170c9243ab5f27a7c3d4d035b27ba5a66c9e09dc6e3931bc5ae16f02c27ec415c586cf554bde71399c8b8dc7f2b8fee1b257b14fe156a35c2865e8387ab55bb4d679cc7558b67fbd259d2225dff0042034679dd74d8561e8777cc38ff0fafd45c05ea35444468a60d3f352ef2c53bfd7899c2aad729977a972c4e4bb2dc6ad57bc6e260e6c898ffb0d7abd6059d4e904146e6e73000a4e91301c0ce9ab7fc24a7236ceac7112a339da2df1352fd299e72fba2a46c0ae76fc6af7d446ea3c06dd4174e9289d80db4fb0b79fe5ab254c18cf232f0ca1f6aefb110b1bd089cfe9c25ce2c99f0c9ac5dc0cbceaa99c2dfcca80f60a7c464e8599d377aeeb7345efdf40d31407fea6a2f50419e3fc792da40cdffeef3cc8692ab01cacbee165ffed4cf233333ba94df43da81c01cf7089d67bc2963674b1b012b9dfbf4254a272fa9469ed69a1478a190fd7cc082064e3e0870cd7a5983a8fd677fc70e9abd9ec25352e8e266f56c1e3b118d8eb49834092063f17320d3d51cd3166d9e0206c52e9d3b1517db49ba67a6f946dd8cf2d30b5be000f43b3f9b11e983c1b9fd18e4fc8ec8befe1a402bf512f37da20ccd85b74f0757f3589148f3981a13a7800c16bad0cdb839ca96e3e20d7a81a6527d71add535595f13f120ee8712fb4d0ec58c58e68b3bcaa6f8f03ae2c2fe1c4e0e758498d884670ad7823e995425e544cac4dd495dd7543623e03596315664ee83a29023b4d8a023b95eb6558bbe0bfc06b8bf46978adc1fe046a4486461c9fa70b74e632e4a59bf42de3b7f56af8e9322f7aa462bca93887b78d86bd46a0babd8ed4b8801e647e1bfb2d129a817d57f6a2ce0ce960dfd721cef1e725b02da17d0d7a9c750501191a3fa2991fbcdc91bdcf0fc8c912820be7820d8fb60f2b9f5dee464b1c84e1204b603f505c564913bc723c4e09e311da5b2e5f99a31a2412e53658eaac796b1a2fd8499c454ebcaffa1de1b79963bfcb141f7da53a3c5402279a486d84d27668d591aa0bec1d42fac9463b14da872e57abd4845c1f1df08f5a8f1dba141f1c6e00073a3aa3dcd2383eb0d82efac5e21b6cc7d3da175cb6e1b96880775fdc2e7e44ea33ad535836462a2f7ea57be2f0befec8e381783136339f475a83d9a07532f5128b70746e1bc4106cfa60884976093f071df3ccdd79794ec61612386b5997eb236454bef75be15712a3b3296adeed62c136fde525c0ce6b90db11a7fc9e6fc1ab6f23ee49b2d3cb39fa58df38e730e4b93fe5ddebee22863d50a6a3f5695a44de35fe10257a096cff01ca6d6a06c65e97c26361b520d7fe37d3c77caa4d2820864f12182221e055727708eaedc97f743a48f7295786a46f366b7ce1b793ff350f91859f5406962e5bc38392be8ec16e861fe41b907c74830f6fac5cb5c827fc6bf3608efa370c3245a0130d8ee1d3e3bc147b4a605ca278f3878cafc7627079c4026c9b5ef340ab4f4994a78d09ef66d4b0af463bff21c6b4eed5c6dd93bc8a72ee6697410f01fb96365994bcc00062361f5a7fba090e6bb2a02838abfe3a3c5a67b326ef38103441f8b9f7e53ae5275b7304876f220a3a7c2cb3e7cd51b82e2a4f5500847e3866bd144521d458ec6b69650f0971942e42191d61ab9b15564b7c4617687148556463ab2456ca353a2f65a19ff995be355b53eb056761debd48cf257eb3a86ab18270d370298039b75d624fb852e659d50a6b7fb9634d90e1095286bec31609126631d0b84833d74aac85a5637d7e1bee4d8ae9486bbe78676227d76e1dd8b542a3fd19abe63def9783cb520091c3a9a232be5dab3e69f594c296a5c51cce9feb3346caac3253e8ae7691609324dc2855f79ca30db9b66a8762c32658a7b3263e5f0dcd6f74aa877bd13932616ee4acff7fbbebdd7138ce31ca8a1775d926f9a57f97f5e1ed891d35ec4cb4f43a4b2b23205451cba3874bcbc82978243e52489962a63104da6a14d85cf3f75584e75e74e75457d6409437bc8bc64f768d87393d606691f3f269385b0b2e3a50bd56fb8fc1743d29ec8f548e0ef9b2638112162e716e18a6e6278e7f22549d3620477af0903972bab48ede3bdb481301e9d2bb9ee930b3e57bd47daa6e24adbc0bf15147c857caeeaad7f4b32df9dc807d3cb371fa41f9e0fce575e63292483f0cbb48f2e6f23df41da76520a3e6a10fa689a9618062216c2b5f52647226efa345d37b5635652311b0c9bf340cdeb92a96d97a053dfa38791d641220775bdd8421a7bce53eec8ea9377cc436a39ca51ad5d719ffd74b3551b35152ee769713df8ce17530962dcf98132036519361d2b6aeef2f27c084a7ad49f0951108e6dd3e461d4f5e29553af4d063c0dda54589bba671a45cfb1d21eb5401b79ad9bada0cf355ba519a3655643399900f0e5fcb31f0e965ad7a1f72d8ea9aba50047f019332287f33f7958f1b45e274cebe97b3e1e89379b356f582d28855d281774bf21e7d74f71c2204b673fca924d38d2c6f92a96bc53f69e98caf392b24a27175b32431894c604427ab4ce37505e03bbc249e3ae0b62411816a956deaddfe6b2e1054b3d8d10b78b4879bf6fcb2704a80beee2857cefdd24692e998d49a007159a6ed94a74c4d53eb2b6c50e5c557e47230e082874195098f2f2100e62f22c40178d745cb75db7c42003ae7edb2f1970087345b544834fce602bb3b1a0032aa6a904f346bdd110b72a9e451f448cc91dc9dc5ae0733f25d5b1065270bb4f401bc321ae38dad78b6d260e524ef6d868e3cac20fef058ec810bd5324947225ffc6aa648479cc8c4f8c0505d36c65e3c997237c5924dbbb1ffe64fb316810d05813141f4ba6950ee614254110a938f5bb0e963a34ead652b2431b45da1631fa77b14dccbcfab442d0af96665746ad4b640713fae1b4c1cf290e67183545f3e15aa41956d7135054b04be3c0a71e1ebad6dcd0732d6c1118eb0c719334d93890e6d2538fddca93fbe938da85ab1c50028bacb9ef23783be162c9714643c1e60950920a507166c7ca285913717d40763431a9c8c7eeae0b6773820b1a7618ad42dd1a011aec789a73cb84b7c6aebc521a5c5569fa191b24b04303fc8ec4b91add984916616a8e148819965c0ba9454b44cc924b291b2b21b322d7e9d9d06ae4d6bb6e7719382ecde8a86c0efd8ca1c3baeec80d55c981857a7d18ed6607f2c1c2f19e358a07fa71784c76dccf6ac13ba01beeb6644fd9153a808c8d13ffc562d7780eaecc506a46b4ea777f9a3d15f363d14b834912051ca3b1043553c27d2bbdd901a947623a311a33a1ac7c70fafd395a921fe0c1762a720d8d0db710594050512114e51e5d7ea21c98049e50cff1eda479ad46eb8bb9fd1ed414b08b5f96c7a1ad95d02011a100b0acac6cdba7e36a9774747a720cb41394610812057af4427f41ae5374e7ba98aa65a7148802902e17849aac587b7caa41fa7d7a021dd6663acd62ce11f6e26e44053e0b8b82b05b7860a4b04677e864a349e60d77ce7fcd657b116a7403be236a182271c47ce168a9e3563ef201189e8575b06756a4b7af9b9bbc1238b468d9b8341026e0e3f5afe8f6b34bdef815f595b9a3afdb0f21e48f2fc0a363c6ee8fd43594d22ffefabe43b7fbd28d997b0d364a56a13b11d456f8f460e69e94ee725092bab8caf0d8efd8d576b7a81b0d1f4e5df5820f43f3e29da675965b154fce31abf32c49723b63e0c8104d4c7d2a943cddb62c682a4262731a759808756b295ce97e802f3971775ceb4718338d543e072b73457f596971a486cad91a50bd58fc10506481d7fcc29557803e29f814a2a1ed1cce7e9622e3b21047690fb69f9da8becf5d5b3a6422cc41980983dac03cd13f5ad40938bdde37fa035d810bd2187ba9c68bd56a48c105950f8b3e3d4e9e02765f892e06de20dd54157affd5bd393a7b0d2f485c6a50ca73073807c8519610afc2c79d81a275a660c85eb2602f311cb1f314c56b1965b239279a5f3855d9769cdb5bbc221a2d32fbd7c65ad014787fce1196c88d8b9d570d496ac109931a8c9378a24af0e6d316d9b661e3f7470cf3019716138e3f751d0d7853e59398cc1db1a0324ea7777562926218bd8e0db97756fedc5531a9a1c4b08c528e82ff7596e0a2c9ee89e4d71eb6452421617499b2e42c3fda6a05c78eadc76d756f1fcf56e3c00bea6137ab50cc98dbf222704e32956d3d09f98b67be0d01d2d9fe113bd08b162188bfad989adf4c5a70d683c6e7864603e1038a586c7bc4dab374ea36b57746df5674c49cecdb2bd6f3a8d3089280e2a4567136628f3e15b5cfccd2bfd352d96eb98e57232e290181eb844e6b30bcdfe010e0a2edd22044eb2a656ce746bfdeb6bea7abb8bf8f5b80343927a6f6637b7364ca27b0f55d3b9ee05d748937a7b27692c24f3c7e79d40b61e364e8ec2b8a3c06ed1d2b863f25e8f0740b46322af76247b6bd31337d7632b9e2971d4ebf9a3326f86886d87dbcc7bf545c9c71d95d4cf62e516511f2213b7a77eacebeb1a69ce642321769a15bf8bd8c95223be738ebd462d0983b58ca687ee1e610a16321ae7550cd68cf4faee4f0a4f8f89e0087df9cab0b821e5b428579a2c1845560e8a5f201e49041937b6779efa3795f6312ac6b9ae686b6324899404194cd974c16b90768451fb65323d39c7efde5ca9a000baed1e9148298e7c0186b4424515a4798dece69a76c4d86b93f52aa0ef17cc7a32fb42615626ce06604c1b95138a28e125d9cefe8a65d0b82b4e52892029eec3f5e9eb9e8030278ddad126799b329d430c8fd338856ce0afc0e3e5033df174c921ee60f39f78a84547811f50304224fd53657ff1e6353da9edeb4b67ff299e14e7de5a6dde8ba33d0e51abeed435defdc8f759052c1b48cb91e4a8165661da506bfe0ac8479142529d50107d81e2d5b54a20f6fa00b49b67ecb0d5c5f53f69e6ecbcf95c1c06e2bf380d06c9653fa0e4cbff55e4f7556f90cdc1d8889271da556be1c18dee73aa7cf3b86feb78c626551d7b4441cae174f5fb841ff04f9cef12361af37c54fce44fed8db69a5b7563d3e4261a285d4f820eefacef46bdc0950a29c28424d151a1a7322788342d3ed6659338037ef690d4669744c3b37a07517f6b76866ec78a164dc150a109b1243a5e6dd3c2d9c1f8a65ee58c1b15e1bed59e74a03e7b1af4ac5faed311ce198739a48a43bbbbad1c19fd2e807e83e5b971e44a45337a89065544fbb2cf7f3f951578159f1e35c3910de309fc54c98686ee3cc4d8afa88875e9dbfa381a21880f2cd95931699c7bd138e48ccb4d42b42fb5bf358e2acdebe80314308274660395af2536ff767a942ca4f2b12211ee74f6bfe532353a89ea41b21c8825f82c8d54451d423a2c39ebf1bdf4a145102ec998f1bd1f6dda0d618e7e55ca96a01042b69c896b7c8af25a17644a71d0f6aa1e3ccaa38c499df6bec1b26c8c31100da4dd82020fed1acf612a8d815b8377d86dceec1a2af2ae5d8b06d8f68cd86377320f6a7ca23d3ef2bdc4d60fdb99f614fcfc2b14c592299d462eabb2df6e127c4c7d81da91e5aae01bd39a9e1e2362b006866155bd89c381c6b9db6b5beec77bbe37c3d3f70e923221fce0b5052170852a62255fa32f884f4f05d11c8ecdac4d015c286d47e0b0ed5047d9a9c3f477ea61b58b9795a7c02a22abd138c6f2be3fe1b248929768726ed778d656bfc0d5211d9527ada660c57a8421adc58486617e7dd22178e86c6fbee83c05171dce950b5e4b5d5900bd85b2aa0446403db76b13ef896638433c22df4478cf0155f2967eca1eff19abaafff2ce146b44edf66f24246c4b13c3892fee46757aae077f9b932e0cc492e5373635075acbe01139c98d825899bbe7e96786fe66750cb8462639c8bddc8ca445f41ab29a214f5d0ff379dcb8e1b44cae1f6e9540b389211a52cc2cbfbda37bfeb88020f605de4561a9f3e582c8dc72fef971d2b72560ab37c0e182c213c7e3f861e77609ec02b35664b710e1169dce107bcfc9dbe09042a62c481cef1a193d59f20f81fb7efa110a9eae1d13b6464082784a770ee8ea7f20b6bbbf20c122a6a2bc1c6a37be959fc88ef0fe8c4daacd6459b2ff7947b5af6caee3372e528b0c85b9f8f92447fb477a14740d8008d54a1237064ad32b4f83097f49aba14a2cf6f8377cd359dbbbcbbfcbe7ed225fd2a5569a80e4670dc48f17d56624971550e5e8e8d7109156107a5c77b50ab485ca3a266f895e8ad74a8bc111612140e5a2d0496f9dfe4d38bc1935c218da243cfb00e7306b2144a6aa35c1c0b61e8f2fed2b948461672b9de6ca78efea46b4a6a1b26caf8a74c4a49949e7b6554a3c27fdc5482fb78f54a9b222a56de4af6c4c70f90eccafc05c92bbf84b19fd86a0aa251d2363671ee043b20dc3ac19784291d73b274fc51c3ad2cd0da2ef63453dab5c6f4ebb8dc5b17a40c68408ca2079238e39fbd7e7166942d4eec6e5a234cfbc991191df8ed65cb298bf4189e373e5e1950d9040b63557100991076e887b94b7acdc0d1a545db391e0d352bbf335122e4bab47be39a496423e01e4bb2372d4c00c79cb6d7da2bdf6439e8d83d265b5a27f2b0a6021bfa35f660faa30277e156468e7ae38685b12bd6cead572a403c995f6b6daf16d674e149556fc6a743ddba79f3b878b9ac6dcda9b040b7ddf5fb71ca7e0e56898cd65451b054a575c7b872952729213cbc8bd3f603716cbe5abcf1d173b4e2f60c3dda30d2955acf3549c9709c0b4739e5b29bea58c52a8e18c3ac664a90c712f996e3bbb7ec71a38412b1d0529c0ba85e53acb52fc11b190d031ae72f16a25e6d1f1a6ce86a2a000958ad10b415ada246c55af1f6b0d8e01b8be160145878ca8501f64ef481e3720a3402c8eef148adeda87e4498c529f6972bb9a0a28833125414dafa0ad1f4e61b43910e67e9d8508e28560257dd922756d9dbf37799cde725000edc3d5002530afe64e350b3e8070f77aca8d2a9292bde62fcab39fc992b8f1f5725315a175d34d587a15ce4de0c4f6c9aecbb69d5f05e470fba394f12be036ceff09b2c31738c0365dc9a9363174e005b2e31c71b76279a57589d29fba55bf7cd069514e440f1f0aefe6ffa31de03c4577ef125214d506ca3557433c1c349263bd1ea0d3e4a4a6a5d4e41a4bba5635c8b2a7401c90b2ff5db3e4169efb8ba10bb4bb34a048383af032744cd0d9db59923bbe3e18dae0683ec752897a48a7402d7ceb0c347dca5444e69f6262ea0afbb8a64a85faf2d1cd5be6e5090f437f247307b708c00bfeba1f9c8e31f1dd92769613c9b77460a5b2e4645fe2fd437e2693d905c8be8215c2d1b1c669d3a4351d848e2f7ebaaac364e1e352d2662d36c5ba9a75d3c14287bd77b4698ca5def840872c0c3a903e5d3db1ae326de60dea17129d200220a4746a4f7ccd4f7e536cf0428f3c2d34e4cc50175ce338e26bec9b11b4fb6ce75be01f3f7680ce1c17efc3246298958871118cdcd8577f38f22e87a3637dc5adafa5cf16e76f6b32a0ca30c111f58f600c551bcfeb9377b3345a4dca246ddcc1614883fa76d31496778dd69d4c087c8fd1c8ef65e5501fd2034f9fc1537bc10397296304ed03fdfee8eb09babde968956e0d5052f36613168166a55dc2bfedf7261f5aa32e04868ea8916758f407066fbcdcbebf072fb02447df06c80899f166c7e76897763ee01ef5340c403dcc4b76bcc29cb01c565350538b1a83b78786522d9391d531fe51c49f573a03a787f1df7f42412b02613b0baf87e190c23ab9a325bb06169cae16a8bc1b0462ed232c164e1822a83dbddd14d0504eadcda579114513e388500771d8700ea2c6b6234d54eeecfde94bd0c4922f1957b43e24b4da85be52a09b39567ff841aa3cfd3cacf51e46c89cf536a9f2e8e7d99d4e19453ed6890876ac3f3c4c8cbc19ee08336e9d31fb5f6694958dec09d2621ba89f435d1bd960be34e729238bffd8def7555140dec6889d67141bc7739e91b2715d35759b165e53e34d504cc209072cb76a0143b3bad135d59efeecf8e349623971160387b5e876c64d247027d354bbbf0b2054fde808a4f4d5c103ab0a010e9bd5185d51c311c2e4322b34aa5a06460738885950b5b569c6b99a1218acbed8eb893f217b5501c9679f02701349bc2dac58109f77b58c75fdebbe301af579a7844581ea76509c4277bbab4d011ea9fe4a57e1dca22d1fd92acd01d8e301281995d76b3aebf2145915df8c2822e00b21443944d27c41b243c694be0b88f703b9569bac26c5c20ace4217610ae1d9397d3accd5743659fbebd2d40c43e8485e31dc9e4d17a883091aa291457bbebca8770dbd4516b39faf9525418ba6c9fde383f9adadf46fc2dfcf3f13a809053e886a49fbc020380b7698692c0f87f5a7a024030eaf5a0dedca8e9ae8af43c55f3e6ffb891dd5f8d8a57fdca2706c5d04104a6830f3b3ad9ea2a8d70b1f276aab85659cc3e885fdaf67bcb96609014f259e0a7e47d806e85d9bc92215c57e2bb7379c8ad07515c910fa684bbb23bd3c4f852e40868bc4f29f97c5369512b9b282208996e1b185612f0d50588cca3a441775c6670af35ec340281f0195e51b284d818e27633e5488ac81e6275ab84dc7d4bbd864f6c5e68fa74377bf34d08f91c44230f1d9da04589d382341520cf2d9257cb267183c02363dd9fbce396f654671c8704286d395736ec9358021f0ef2ec9c81a23527b406890193ff3bac6184f6eff5620bccac0499ce883f5660d529de6323dd9a5741047da9a456ed3fd990080a035c786582645147a6ad3b0dc36f26dba0f3dc347751d889e2f02b00f91fd867ec6cd2e0eeca7a916cb8f8012836fbb3213d059533522e9cfdc3940df7cb58e658cf38d0bb52d6a8764c37c7219a055ba73bb44fff8647af375b428698adbcd725c90e4e75a37164680dcda19011f4ad24d0e039d5aec7bc06bb498bf234b5ec222b255831f63896d165eca4ff71a31395c36c816f45deabf124c2c3ea770300d8daca474fb932a357a213f11507df4ba67a52b226adc48858fbe6e81f3116572a5ec6e6cb4e3d7f9e5fd03b1ff8d82d1b1fe43120a3aec573459f90f78c3bc6bffc05afbe781ebe1fbfec06d76964bd5c3d66b99df5b97a4de6ba18f1d67750c6c60be63183e02abb822f3cb89a75b2b23a7216025b2a83d532a76331d5c195be06bdbf6382f5803ad5bd8839e2c8e99ffb3b314ec0bc9a2ac94a1911210d411b5e1eb677f163834961f8741914f522d8dfdf1f178a076325abd1acdb40419a58ba384568c9db64496b3c7bfd869413bf90111a6fd5197c46f420a1c50e975f17d53c601d8bc389eafa5ed496f6730374dcaa00f23f1397c4b9998dc261095653827dfa017efdf7e12cc6e5a835d700acf439477b7f0bd7cebdc21ea04f1d1f1a587baaa6e0a9c901ff8bc1d5c8217dae6a25fe8ad8b3c5a5fd7a63da62b502bbc60344bb56ec5a9cc9eede3b02b0123d747258041316f4d62f24efc1f450129a3fd5fb4daba46fe843d839cb23f3573d2e8e505ddb3fb9b27513fb84fb72a8115440735763ce2ca728a61bb0ed798371031ffa7b1d6bd2f1d282955ae2d7a117b470bb646357a7d18153cbce5ba460b3865b71bf1665ca1f4611a60cb1383988deb57d3b106ded4a15a977d82e2788ac22aafff80d791982fb16892398d4c3f0bae1276705be6aa3f6077836847e1f33387e1125d86c0aa39c9c49729baefe94224b6f3747ff2d453f830d91d32de9bee044184e7f8e934d7abd7fe8fcd82c956fe33fa797cbc4815717ef5fd13c05fe2e49803acaf5620125dc07e5d00c85526acdac31d83d02afa895b166fb7f8d13f55bf3aaf87665a174fcc90c6e38e5c4bb5b1526ab92204b356726c66cb164997e5a029dabc87f2424ac323f483fa112ff5c03363f50f3477f031dd646b4148ce9b188217fb7ccd904e03ab70ee733f8452e5a2090dae8bf4a4eaac68fa7bcef238d07362f6a4c642eb7ac6dca3396d567e40c4c9489cfb74df51f808998bc53c38aa15096ef1058fa7708c4839b0a38fb21364f56d61674c33f336bc561f31de7b99ac365bd992f0f6400985eedcbd10b7221ca9f4af2da0eccf74920e751f9182921e2f4d08fd73e5b3edae87f1b4fee5bf661d0cb63e42021816bf23cd9632345949a5ed9f8842640d4801a6a8cc1bd4531cd3d047245d23bed24a8f107f749ab1e74984734bd29c7a7ad47cb3c15a6bd4ab4f8a43b791bb1b1ffdc789d986b4f732faadeec8b9e50c238dfb8696d3ab3e3d20c8a533a0c424474e00a72bfff5194aaf98c34dcf08fab8653fa72ecc82ad910478f1ec981200189426d5ed4cf0695fe01c09e125b32465b5997eb05cfc5eb27c1660d14e6fc08b5d6b40b93a98cc35b5759bcc5eaa141b99f62063a9e4cfdd7b6a2eea1dfac89619d719bdbd306be576f8f4358d885d7dfe965e11f6c9e5a0a4b406599f48f322994d42baf339f86e4261ab252163e9e0ad3f21656269669dea89c1a156633bc3983147d2f284ec0853b19f6735cc1960926c44740183635fba8c32ed51e1a456a8130d5b617f193899512a687f75c720f871173a6ccd0faa3e8fe53217df3b503f5d66d915ef047d412d3e1396ad58cfd8f76aeedd1bf3204428a471c156b6dfcc8c7ecdc5e4a0b2405e68ef7fef0c352182ed2e2e6aa555d28f748632d3a2aea7002aa8c6a5df91bf66de4c1393bbd0a7b46129bcf67b7c225d97d14f622283f75fcd1bb3900f27c79bafa9d6e3d66f659744a080827f9d4cd666be03289a86b19ea49f7ccaaad9e550afdd67f5207aa6e59f2a8fc32cca13916803d1c836e55669e6c4baba7dc05ba76044277f075529416086e0756250a21d30789dcc7ff0895706183b8c477f6db703e83d6b9ce0a58344fa8a33efd90473f201d3b0732ee05bbbf8feeee8d7ea40c72836d3909f49b840479cadb73b675cc6a09caa72bb715e947829b1c086d62f579d800d7e1d23368cfc29f34231f9f757d4b5cc55f15c1e95426246cf4e48e713e753e8a7c6461c10b62036b7e524e60ec93e3e3a2f2313f218350c63b5512ee6c7d6526ee8f9cf3d63fc548ba8992cf40c67d017d52c3d73e1fd6e949d2cf22274724eb5da5cec6e1a36cb5807f37469f0a2f6213c5359ff55d91eaeb2c7bbbd5cfbd7b7a8f5c791683c2841e1ab8ac34ad2de776e068738d541108b08327e1b113b8bb900e3a705e2bf15c098425536d2b7cd64f300c8e53e0796474e6aa471ff180e5e7a07318cdeacf674095a0d1c09857faa0714a4bcef791a9955f6b916fc8d9eef605c0e18e3b16cbc0305bc91b466f3282b109b3512b31aa09766b670cd441e153ee2546ec2e3cd159c30fe1206fb3d901b88feeed3f23cfd838d86e6886a45c8da2fa2ce7a0f27574adc397d8252be58d3e42e874b7acda7e3c3f375259e55106f8e1cac746355fcb613295e7d63e643631048d7ed7ba11d4b4393d4ae46f26e442ef36edc2bde6dc1e33ee202eead81f29ceb7a73d883a68c7df55fb5fa20f31726fb14b8fa82a61075f27ec0d7eb4a25055a74321a3ad8bd0deacf112d438d0b4514d561bd290c37260ede515ff2076efed7d474aa2921c355a9eaceda3bf08cd18ae058d69690f1ba29d7c728e16df665c34524c3eb0437f32910c11894805d8645e8671a0478adacac8f15991a7f9108aafc1d8fd6f8830c4fb709b7ecf08037aa4ec65ec2112fd279bf2c03b10d37b9d3200fff6aed823f05b6150009ab2a55b65cc789061c4be5a8453ec9eb26796af555a1735c61c01afa672166ed28a6019c91ee5556fd2108e02e63ee89fcfc5edc0b26078fc71a4351b32567140d72836835ffee0b1ce7ab16c4587c1df99a8c6281671badaf2cd67d0847996fd4a93ac56feb83dd82002730c59bd4bf1484e77b265a6870ce9e67024da5de6d996f9abe19fb6f54ad1ec5aabe43f7a36d7f32a567daefb969a7234a0e9787f79188094a6794a3d78682b51ee57291213efc7ea295e6143d45e8444603d36a0ea98c5d959cbe3d8cf80d161ef341bc6a11265989696b8bcd96d140cfa87ebe007222f3bd2c2b1011f014abec17dd7714af677f151bfbcf742103e73a7d5278af5d2866717776ec27b318ca76547f4f5454672897eb6a620c46d13a5679d7c9a69549a14a465ebae9c84c5587c4548b897e3db9b224a11c1928189302c55c7df28943a2ea8627d35fd0153132f10b7c314e77451faea5bbf60db3c57c834a7b5f696a1ae46ff252451896ad7927b5595d52559fdb6b4e89b797262e1fbf5a8e1952a47d7f1aaf2c83a8528c0edeeca9f1431139b1863b915815aece4026c85058caaa3394e4c86f98c13f29d1bf514d73806f77e2101806489c281f838e418e17f86ca8ed99711afdfd75e25b5d9b9d748a8190881553b9d819482ae0115deb865c2f76dbdb260692b663adea3dea997f07f5213c2025838828d36d4f6bafaa6d27827213e8516616595643677fbbc68d853a6c5ec520e05a7efc68141e54a0c07b82947a9f20fbff7db66247662570625a2312065a82e7651da9993688eb3cadfeab775f5934ffc666c8ea3a8865f1dfb5e4897efed55c4bd96d8e1434bf1140554dd8aa919baf10b182511859974297123d84937843c96340ffd2f620f6823d55c8524d4238823cb6d952c7cd9445e89719ba4d4a29fa15ab28893b2f5923e67a93817b9d41b9aab6bae8c1f7c7e7df4d8ae73d506079791f56063b788f73cfbaf33208090bd9e63ee6fab8000c6ad2056769edf58d8f75a4b3dced7e9d80a7105c77e24a120c91683bae341471754f10e2dca1a279bd20289b0ff4863626a66e36f0a398382939e2648af8e41bdfead022561e37a6486aab0ed327e41d5bf5779976ad9081f012eba090a5d4c7637e31ca347156aa2da211c6fee450b1218384ed52751b7ec3af704b978afd60635c84122ad209f0d270d08abd8a177eddab4eae91dbd4256ab50e122514c4a6ef04f6d236b9269a49e4e475764ea22e71cdb246d7a03ef7c1ab4975a317515ffd20720fcc0fc4bef4dfadbd7f2c08deb1da807eb1d4118e71f9ccbada26319ba16517ebd77b7100199142a5adfcabc100bcdb4450708bade23f5ed0f07b84ff31b6e41ebde249391a2955d151acf41d24957321d3c89c22060390935ebc7721cc7519c675b6d13bcc9f4356370d73933005fab222306b2742d7afa06941febcf596e650e3324987d720aa7c34fc732a13e927a5bf38e3d1a19be59bbf7c4b57bcac43f4c2d29042d9a59d7506ef59725362b1f5529f416f973df6bac2c202727ef1295a518acad2a213f20400c610e8b91990ca1a86fd9ed8b2e69b71453e26d7d16cc6238937d19e918a206a517a7a1d7bf13071761f85d0aa837884fc9918864fb3ffb9aa122e22b49af61afd4f797f02ac22091be42e669bcf3805775f3451ed6a6056328947e8a4c72ff5cf017e934a632be0e397ea4cdd94f5a63d35a19972303b434f30d230518e187eeea35dad663251c94f02b16beaea73c5ae6b4b184d81a9239799d33edc7f6da46c08f844151fbf6225d24787bc80442c588ec70138af45da58f899eb3051f74d2947d4985aa5bd5b9ac27e721deaa41498b203e0e26b4485d83246cfb073e63952c0dc8ad9d7966287a44f98183b6f262cfb0ba48e0c71909dfe776d0a83372abe04efb927110af7a552f172b73ab8523bba2053beaa9363ae572e7ebbf47921813a21a40143e965a2922d75fec8b75052118d4780beaa9d3c3119fd870cd0cf1726dfa83e447913180dcf3764f93781b503db4f6b85aaf6e4b7d107e2c83598eabf4bab82c86ebe734de43f1dde30884eaa152d2f8ea3001c0163b5b153d392dc47d80953a94df4cc2d6eb96373a12ee5ac70ccb695820013381f4b398c7335fb094c37235b088c1f50465be4ba1cb4f99c267456597bffc7b24073227f9dcfee73a0900a8a8d8b8c583257538fe141a5ebf08002679936070337d27f6c44b13432796923feb4dbffe6009daf4df13db4c6118df5ed865abfbc7c9d9e49e8abb6fe5ffecdaa9576ac18bde81e2d31bf83438536049a6549db7f7bbc9e7ec5f05f7148dfc113d75d36c6fc0ae50ffb38edd6ac9b6bf611984690312d7c8253fddb0526ae4c922f46472211a8df084371bd8b853a624e5781af907b9045495fdce2da4a3c736eabb6eea97c771d2c4669fd62efbd5304f65ba3bf0d908693c4e216e9db76c784426e9c53db6e065828e176e6acfcee2f68fbf2598d49ab23ed3a917a8f705ffd64663f5ce84405f06936189f0e77a4d02aca499546e071136d5dda26eb40fa349ea4ff60f14a7cf4d827369d7f5a10007b58eea55760f46e71e2b3485d759d42db08f1922e54da0b4982904e3b1c94115b14572c2fc9488e55e7732b62b1b706f584ae089871c9dbf7470150d4a8db894afe937bd247dd13dbe18f0c21bcb18088639f1389328646b46a4f27656d4686ae834badcee5f42a9222d32e343433195d65c78f750f680de4fdfba8d3ccc9ff92a40123201eca1c9a216fb81a96475b53fb09568bf1abc2d6b4b391ead3bf4f3d0121f31bf955e41afdbeadfe702036ebbba788c5c71aa77cd6249b6a7257b13850eeac9d5a3632d6137a56aa4c5e20a1566155ac5711c263cdf15fa8a31aec83bbabf3b2e470cf457c287199e2345664e524946ae011e1363921dfe501f4125260d82044dc9f399c2f191c825ff3df7bef9db180a682e5a05fd7398eaac74925e9dd5f90158d2838d5a37f30f112c5d9b6a7c7d21aad64b171cde1050ba3b16c690a41df161cc340fbe8ec194ea8a5fde64a711274e87d7e5a6212b70f7f90906c6367d56e59fbe8b2a27a2100f4ea6e04cf88a2cffb545a8acfd0cb05a39f92edc9505e54e22a33020c4cf6b355f93d502cb37b6459b7099ff6e9f627592b938d90c5c6f8e29f859dc2e05c3faed394cd005b70d1f99229c49e7891eeb0482c7ab66f208bc767eb8b717e2a7323a615a1c4817b3f94ce11a8aa798b8fa8c96dfa73d915bb2410d462ba8f9e3cd864af7d6892a213555c5a73b6cb0023d3b7d59d859bf9528e708e9dddbf6c58ae8a848a7d7fcc896a4052a0147a81d5aa54894a9d4d6851c7253a2c64d800d1941889c88f4eb7b06712c00ae3d76416abdea39da64a713b8d49ae024fb953fce42f2cc69103ae325dbc8e79b395a6d787873be416cb72bd976a6389b70337cdc75c209cf0d62c10b69907d65de919889d844b07c6a2d298f68ee97b5510ca2f94772915ec11ab5a643bc4677b1e00183c461016f942deb8b3c6e3f087eec96c192af17b644c7769170cba3ac0867586cd47d2b2a0f86df0130fc50720af6f88707304bbc7804270ea977bc476d6a0f2f7c9fca4876a7ce03150dff0e0aa117de6a8e509668cb3cfda08a38d802b862af7ab9595afa37a67470fcfb0dd3b16e4c9cc526963d21a7fcb5f794069da26e1cb0463bf05846a8d2c392ca6778c8e9b462ffca1a2708714f8977da0ade74ebbeb01a738d214aed3a8497ff23704a63dc05d4e562a632ff3df8d9059a1ebb1e5be926ee0fc6b874c66bbdc347ddcf10280bed2a7cee28031643f0fe26e0aa0d6fec187d76027d70b9cf61fcaab62c532d656aaaec091f3b716ec332fe01cebf2721d8f64512ab3ffe1323f4185e1b9ab8a2f4cfcf96d0387d121561149ba9447541120783064945549bb9967c095fc0aff758284ce74de68021f22d4df5a97c98ceb85492fb924aa9137d5b8e490ecf5932c581506a458ddd479b17fc0de8cda6c4be46bb4cca9075eaf8c070002120b249d535ca6c81371c02a4dc3cd637c6995a622370a688b5f49914c7d2e92da16824ce0d06dc413e8b373703c180d72a406a2207ece53a8cbc152857bb6272fad4d1e35e560f03fcf957ffc060ccd93e94089575520bed9ecb170f6b1eb0cc82055b70a8e012495f644e3c0454fcd8262225ee1252e8f3f9756eb5de4c6a220f6d244855583a798f28ece02f14c08a2501fab4604f1f7ecfb8ae111f3c9d1e0762aaa2afb4be9f40ba511ca6d3b1db9a14f348f2c4e5882515096e940fb529c269e66b4e0771b6a08ffc1314f1421df562e83f88f569904efa92218a3ba352e213b8df67a374c013322c696fd4a8a029dd8d0604766acc64fbb75e79d80672029f869e07984194c2e0144a07dbfbf0e2f1224dd68d0b22c68cee0491c5e993d946c85dd0670dffcb04ad33e678cb19b80a3b3d6c8f3a6f267d428f486333fd84e61345f03cc80cb1f69dd8cac4ba3469c4ce03e9eebba116bd80700428f4beebd015b3b93dad366494982a48a84d926974a624367c6f07036322fe965709298de069a589ac94fb917e0032c8b88d626d02584b8afd93fe538f44d0d154148a1e9741993835b04ceb8cda5e2b3a9c548499464d76b2892501d398f3a2b2c219e81c5e9adf99504739e5856eb5dac4eed43895767254c132f47adf66b558b08a9e08a19cfcba97e8d8f16567eb28b39704cd5c7d7545b6591fdf9bd04e18480953846d423bb5a5c11253a37ce3f4e5cf70246a88a524484fa87344fe4cea47e57cc67954369577f5d6513639858c67b1d004c1ab32ba930ffe74f17cc5ff9ceee0146c4f7f51e67742c0b6dde2eb76c6d8dccecc26daeb3d57b076955841dc4671d4a9d97bb1cbf25a77e423640d579398bd580f06e8e7c2308231531c30cd334818af3bf692fd17b852d01c0f05ca999805b038c340b48d5aa236b40b7f85b1ae6534689d416a651636e6669dc3766caad8ec6c1d2eb59dfc0dc3365e7179b68f2725864cbfbe8b8b3d4b292ae8802b4730b0bb89c510ce11cff99f7e1c490b839d6a99fdc4da85e27e83e2abc9d003c4461fe8ad4953d7e1ddd0f95109dc53029f3f78605c38ed53155c583eef2eb632c0c732a04429c120839356cf3af7783217b74caac0618a53751013b04f02591618278d81f9ba39e01639a8d43b9932152fa6383a3091d7e2318c82c46214fcc6a813eb773b72e6712d50cf3f14a67ea0b6d784af67a7dd585d9becb04d5f0f23bc04c8dc1d3275cbf1ac7385a054762a3cf4a326f89c975315974f4465f770031453cbe412d19f24cb308eb7d3aa34a83b5d2e6dd5a0ff0a8f27f36bfe2a8edaa9776ab3bc3a1ae7c98177a8dd1f3c4ceb8aade8f8eefa42b18011265696a22beef499112686a3c17f43b7e3798320d20004b1cd3f1dce620ff008a1f950fa8a8aaa9145f12296b1178052bbdc888836411f3cbf6d9a898ddc2219051e2038a1ca39447f5b396a8988413e156a234a01c041a6402699577633a39d07025fd4e566a9218575fc0eb9be781dc19ceb068f1a023408459c13da17386fe003796354bd6d7d5a2ee3996f08369db935de9961d0a6be9630c3699a6a8d95c2f8baaf32421e9ec48bd044ae683530802f63bbc61f801bf8b571ec714d957bbbdfaafc4bfbbc7df61a5790867cd1a60f4fc1e8f9784932b7c5cc9e36774c66843f8ef99c0529152879cf69eaa1d6959ec0c1800e28813ef807fc9b53c0a819dc45d886de428bbdb81a58f26a2bbf528adf495202e9273d542f866c11f33dbb64f057eeba2ade4a235a812c8f007dd2247f4f985b9aac2932388d3de282288c5c30c045718e3e37b15a84440c67a4adc835878000442336befcfc6a39b2845a9a00ecde88ff11426a29e89f94a2ef4986603a0743c16c69d1ea92a196271165eede650ce2201f8c4e3adafa8e7fbd46fc784f1cd99aeaaf213f8e73082f20d39f803a065d81b65cc9caff8ed7d73914544a361f1e90faaf42dc35e9c6ab6fd3afba1c22b0755eed8b6ece0f7ec5dda16bd14c39b62c4f8ba5ed497ff18c80aee493bb57913faad5d49fd67e0d8eea91e08d9bb11ba335f5e8dfa0bde1a3fb2e89b0514515d11fa879976d9865bae118ea775892f4d28aa19fc213a311bd127ae6ec29c24609182a8d53d23bd53d875ca26c862df3fc3d1f62565778a04d05983746920964e4cda13896a06f04ccb3341e9894f3a45f6edc3523b6b3e4da7acb536a0948c7f6ded097589ba3d29b1f9512f8b0e81d9ddfe72fc46ca37b31f1a741912eea6bb2dbcf8085eb20a6a1fe5198779aca3da54bf5cc3cec1445d1cd288e9525ab87d61cfc7c4878ec8729767dc45a6ee44cff689fa05093db4b67c465c2bdc49b69032f6f9828f6877ad4048c2963c9c309a01ee4debaab75d78cd0af21b15ae8cde6c11e662588dbb430926203be14450aeaecb33a99be86c8fb6fbab99f7429774451d066dbd911bf392efb33562b1141969a18f57a9e2fc56df4b9cb481e8b83ab55df3d6dc9b6a2b961f78e8fd3892f3d291a73c2e7fbdb43aac5218c3cb5ad40ba1a656a1fe8e40369131ecc4262e9016e466ae3a620099396cc2756d5e688034ea1321eeff59f4a2511f3270d96a98b815feb5115758cc9d75fafd200b4b0de6b8a5e06bacab72584e6adc79d85ea76b998b0e9f4f25d30af8cad29bb2ec948a7c538947c5a66f5848b2a21f465297307f098e44952257ce1e937e55c2e24137cf857a471eccf580892b7b354c762c93e2a34df168320c30511d680924c4387ea99c07c171a10affdc3b5ef491d91cc9c36d0cb94a9ffd9507da22f46c1ec4229eb7ba5ef456c7609daed00442ff50de8e648b7408f347b525b3a009010e60581c917d508a77eb2f8c98f793f9796530be68106ba7491fd44e4b2129528573f19fcd8e7c3174590a0a2760696987619d7c75cc24d84b800888f90a4d946ddf79d300ed89b554a298f024120658a7b7777a6a4c92ee271311a0809a675137b0fc6355a51810646276af410f406f1db38ba9657ac4b9b707f3a74bbab3486de9cad9cbf4fdcca19009bf7ff9ff83586f6123916f004b97bfe007ed5df7174f071ad9f7f31e0bcbcda865c86079841f991b9dba4f56263a36f0a2bd6dcf54a2cb6372ae6b8c42a11e270020ff70a684164d0661d5b247688952f435d29a7f69a219e85a9ab99db1a4a1665c09f6143c80edfd839ae82dcc811c011fa47544c721e43d462008df666d0360b83be721411aca8575ac74934b29c7eac8540f7c67c156bfea8114131131d908317b74a43466545a0a81c1120db2b21b929bb2d996ab2d475675e7e0f843e22b8234714b64ab096b675d84d835d92a0acd32b75b0b0514a9bc549ccbd5fb7cf4d23e047d01c0afa8f190742b6f071c6e2012e9cfd0ca1ed13a26f7dfc4f26d2f9cb0da5b1faa3f5f8c19956c26c42c826952db7b2a874dc876fb0a5b4fde117ad298aacd136dcbec13c7058f0e7fc6a495108f3e9db4c9505cd02beb95b7ac99e10028b3d6f86f28be25181a272067e3cedf0928348e3fed00c7229f80bd803aa00477e800485a04fe133178453d56fa778e36b2556d3b89e9a6cad1e7842157fa5e8361d0445f71d405e759649850accf3a057be210014907da109d1c26dcebb38b2dbacfacbbe359c02832550d1d9da0d683aa5e86caf9fff0c5b9e8e6ce3bdc536539260d1727a5130417275ce1a92fb732a77e1d3ae695b944f4dbd4bf0ab4c25383b29decdd26c56426fddb8b98a5dc068c602c339b4f7561e2bdca654904106e4fe9723b2d76c8e6d86efa422ff6cbcb85bb44f216841651862a22a16c2116269e1a50ca3bc5cc05f009b03c9e3170197c4ad2d65bad1ab25b9ccd049fff4996ed0fe2ebef225f12c67e66e78bc80f61726c76fc33cc0aee3a4c7f252b7afa6f68bf11026864bcfed6f4b45b6f79b378f525a00e9e7ec91510061aff864ff647f80918d719be4c3c42e15d8968d56d4177b449dd9f05000ed5cdfa73a1a1d9cbe4ea0f9188d7816e59acbfb4b382183510c20765913970cc03f0a258466409a1e3a13097682ec788a0d708394a9fcdada6ac5fb264ff5c2eb0ec4d13be5ad677ef36640243dd9fcd6ea536a60cc584e31d319ae2b9d2ecbd5f5da66669f0f048c6e95ac8ac198b137dd938e55e1dd7e05072d2586c2623b633df4dfdc6892e8d1c5be2a6880afaf3fae99101a28ffba2d7d495da39bde0f1d457225ed163cea16916a2e67a253ca48216fa1e6e260324d3377946463e29a6f1aad7e16c4fbfb0693986f0c10454c7b44c3db72626796a0808befa5d07a77d38f2bdedc419bbc94bc89ae521e00be3fea4c2bc1e33fc7b4bf9b8cfd87df2c46236efe84c43813ee4bf04de8c65e95e9100329a7620abb09423029c544808e384a126691c8452f2fd7e94f2acdb0e8c7d9d90bf882db4ff2b1a4a377256c93508317c2d8216b8f63dccdbbe6270976a953d3c0b62ac6725e760c7cf8f68fec8fd73f60583d2670e993fa25298639d89f63921d0ae7e8bcb1094a4e2ffb7460187f648cc839b7c101c4960f679e43984c67394313693fa2834820ce9c2ac261b9e4e3f2d8fb5ba2e19225e6d36d54375ee566999840787147360b6e99c77b98cc09b5db2670333420e1f072ce18c79dbc1adecaae3a9937c53bf328e1c8ac6ff1cd427a0aa668be7f56214439269a08215058fa7d718c5b6a5a4ba3ad3b97589f7e8c397e3327675b64a895abb21fa805ded56655cdb39856f6459db453d3ba818736b852ec090278e1e6ad9814f69bab000367e33e6aa0997f353e9ace4069f08ee5f125f72fe8842930cb42c8ee450dea8f983675c7ae4c03c3f9bda7708cbb3e0b40e7639ca18afe9cb77896c5a7ab7905cef16e224c12ab2238606ec9ad07f90c6a9ceac0734214b8b17b2baef16d62abb66fbbce337d7b7eed07d10674eec30369bda3d0d70bd51a85384dc84b1b9d1007ae2cdda8bcb3b03d4338479f016e639e3524b5ee4cfdce529665fc9b6eabc7f7b63227d9dc61a681bc916558a8a9ca088d4ff23cf8092022529b8c70277be17e64db50e77f0e8e563b7c678e2655245b3eb5c09469de8ffbdf014802ead7aa8e5edf4a84d568b390dcf6b5bba20d086338928889d6c28748004988290fe531987f19df0d807bdd41616198c73614e7158ab000ad594975bb01e7a0d2636c16e77d44f1ef98ef36f839ac000b3e212da2a5b89f0d91d5e74db5642805abc31696a4faab24e12f2de171cf94ddba3d5712f7d92ea728e278e60b2872ba99647b2466e7240e76a75081e608a206971aed280d27d4741686b9bf04b2d02f8141692d75e6d31a940153f3b956eb66752285d24b8190aa4e83a1627cb5d4aac7ae022d2c4ffa1759cf0eff67ff5d60df492eeeefa1ec6378286021ed7ae90c1a649ab8a5b08f0bb49fec014a98caabd5a6f2b5af8e1ae29908d23d66d3c7450ecbeeeefd6f44a2dff4820c1d328e7e1848dd56405f6ff0a68c00f387e3728bf39b2474548e107dde4fad781cb0df1ee6f17f4484490086c5010a63a2aed750d2110a949021ea8a0ef7bc36a29f07591823eaecf80202558533a96c988f1a2cfcc02706e8f48295e039576679e083def245362b75a937613c55c31b59ef8a2667e2b67fb93d691cd0838cf2a646dea6f50fc9f37e89fb674e46cca0962b550437e590a4a2ef1b8980c80f28de0f4cd5f0863f73784299ec6f7da0cfd34f318f0d64bfccf60d9cd3836943dd3fd5da5a2aeaafac2888a855cf01f112f8f650548cf7850659033a6bcee34a38fdfd74fca77b3273a29df97ec289a5512e00b0b89dde036d6a2b7aabb267f68a5e920612b9475011eb8a590561bfe1421840f13bfa0462558bc01372705d338786c006c68847050ca7883efddf9ab9e2cff55f23a4be90e903bdac1d275dfe8df8c11e9777fbdc966c4055df17c460cf1241e4a1d8c8555322d9f5c01234471932d522cd67af3431555440b0c12c17f2ca8b4054cd93bf6cfa3e7dbacf0153d3399184fc30902d2da0d4c4b2077f674c2482e75e19ef9778d780f8d71b94ea58317988667fb84be360a6ae45018db41888dc4f3ade3edeb30565bdfef9e54751f5f2ce040a8ca92f7b8f2d03ea40b44bc0db074e910ed57705e92dfaccfc2a7cd3d62a098bbb2762e79c006af4250299fc92ebbf4b5105c4fb53f9284750dc45106b28e5d9a81bd30c64b9e037a9ee976d08424143f169957d09ea4f1fe7384e31e38260ad5e2632c6d543d0cf3cf13a5607348b20fad7762b3642e3ab6fbf1b403532bc601f82703f08ec271229f326bc72e07b50104601c233e73454798e9b4575689525a2dde846ab37cf4a4e7dee23dfe74b5b77da419e706f3c53b3b7a7cde31e8544e7c105f91d6adf196af7b0af7c4175e8c749f2acfcda2ffb59b926bb6b665182b0d6d6720afd28e0766ac1202b3be14f983545dbc9230aad0bb70625520a474a8c54615ff3f5c298423cf337ec430e1a26272bada9fa2f1bd4681847e407ebcad1550977e9f3cad65748956ba0935cb73a86172806afbda84ac4b9eb2b59e23f4d9629ab314dd110b005ace5528671c97dcbfbb5cc667524fab71c3010d368aff4f6380c9d04b0f0e8ab3356d206e8748dc1f48649ee4747aa21c00613b317869c05ff14a570effd9d331f4dec93af4f0141ab2dba9883175f74c1222ec46f5280468af5b1fef0fbaa50dccf3e9a717724e399c8c0edb41bc06c0314139c0fe469a84f3a3e74c314875121a36ef377617616df57e0cc4cb6d08fd428b9d509a1a0f2976ff6a598fac6d8e12108d3aac7a028fa35e2d546e67e0df381ef0893910f749587f1d9bb0b8093712e0ac123ec65607b82a83caa8ca2a11322caa77c49fb8ef005188ee8f6848e505709ee5a89f22ceb8c99dc8fe41a6480ae9e7ad6570f398d218c3309d8eb283b7127f4c82cc8d92df267ac8fd356a2aa574b8eeca40c867509c8649ba4d076a1ebac17503819c230859e0a0e624793256a86b0488f94648167007fa1f6da99eba1a0fcf224246e8d03a2b3bea3a8fa1574724ffa7831d18e32139f823a9dfe4acd77fb3201b95f5ff7763d2d3e7136344ded18e32a365b849ad43e1b74ae3a62955f000de80484ce0f45ed54d20f37202ee108909b28cc84ccd6a789dc8435d98e7dfabe4c11ba30d266ede5f0e0e388ed13a984690c333568ae87d0d333756394c19179e6b000b2fd4aefc0821e7378390314f0f6ae381e89b4e9603ee951deca34dedcda97c2eebd6f3facb169998360468d0b555de2562d9bb61626e825cfa6b8171509bdeedd72ed802dd0ff33fd18693268bea1b5f7888d185e7cacdd599acd804ce757c32c9a0937f9816d4e921686730ae5bf4b58bff02632ffd68854f731e4cd20ba831e7cd6794e47c61cbcf94121a2f93fba097f97e2b24822074a53798fde11e2997459d372f46ca69e555231281416ce3a362fd2583b5ea0cff584fa524af5b59f59d921407406112dcd90d44afea026b58b1a343999cbe0e5ee17058f6cc28049d52bd5533063210940e5b7f7a6eddb1cd7538ae364576ab1d58ed79a9d861b183f0f11ca2ba886ca3bbbf9f6c5f70927806220deadfee5d9600b25be613062d9e5650303a7f8a0c4ea9b298ef1175c1011daa1b3acdbeb2e9fa79714f981854e36ae9673dcb33ff4b58b0bcc42dfe76cace7556f0790b383b38bea4739b9814a351d6829c8d88da26e2d6f1949f60eeee6510fe524c350d6431bea93aab3373719202eb1dee8fe2a6ede3a08d591f8d436e0d6f2f96c546575ce9edf8c3714840ccf6abac12be49e743b7d28ac11b7faafde2853f65b6873965d039f3421d6b73db81bbb22e112cf08c03cbdfcdf4096f6861e5f8f6b176ce6e8ee11c8af28a36b56c709f8ffd15c73889edb67dbb6a76c9641e6b7740f6956829b95f96e071da97fe5ef7021ffd50031739ec4e42d1a70505eddf12d257515b8192081ae4488c169fed989bb96176226605f57eb0e861297d7c172e3d814a2f967bd8edb860f0ecd780f1b489f6530e48563ba595b118986f16ae92d43ed51671be540f9b44c735574930fe7f7d08fe0a97e5a99f8fa9bf1b49bf8bfa510e8067d4ca68cae06dff23a09745745a75c3f4fab2d202a8fab0f6965e016e9533ccd32650c39ccf80e080167aa2ae9b655018c2e7653f438f4877be5733018640ad9ac848a9717dad98c2ffc8a78eae910ac55dcbfed2ec210a0652e7bfdf84f269103490a494d7dbc80c252593a9eef79d58d9349f4f7967893e225aae5d905dcda3db9cbba5b4358438d5e21d116112f52ee5acb12557ca55665059438341e45ae01d14a3bdabdac877b0527e3e5d0b552376c2b438d4f0b5bf98a7f8214df6b47f40979da50d4ff280272c403652c23ca4aaa4aec5ce911501c2d4fb724b06358b0bbaf9c078d350be4da8bee6abad656916b342c991d1d6c298d433a0c9bc6bef6c44301cbf23caaa8df098b4a95bcf76cac3334d10379cecf460e855d3182ec31290c986b705a87ec2ba9848d7a9bffa3f314b6b61cc2b783e2429aea138683405647a01f0149b35c54a90462dab9e4d1acfdc0ad0350d5eff4cd272eff38690e76f53d80f69b0c3869479a3345b6ab71a4863488e655ce4850a950302efc422e799868470997f5b40e87d08fdf4c0c7a5d41176d95699652d963cc736bfe46ebc3fe7dbc4929dc4418db4ffbe84adc39ff51c6cfb8f3bde8bf52d192a1d561ac43e380f16c5cd3ae88f5d349dc31b96b99c4c18b3e6e1fc870372c93f1e0d416bcacc314abb1f1334084773a7347e74ba65834da47cdef7abe70926818ed1d066e3f2c4e13d9f192651ffc17abb99bab1f551308156e0820ff5c875fedd4e10ca91062bca623c50f8bb314f569f5987a4c11ac123d6027910d6cf276ccfc2e6c46f44a572e166067059a3e8966bb869e246f6842832ef4285356d0080c732e955bf8a535c438dc379ecbe59e457b972c010ccf72cc64e524ce3dbe054de985a48665953b223e0625b9ec7dcb742502754a1dadcc2d55fbf08528d2f53a5ff59e30724f0ae785a31d4b54d1d57fc26e0fb08723241fdd735ba6ba20b3e58069fdd857fac1ff9b42f82b30efe7b4164fb13ccecf857d4836cd97cc4e0dbce6c310a4b394eaef5016e6fd99302c91ad55f6e392dd86be40af2418803632a436b2edeaa29a3d0a9db1ee3180cdacce8033367d760e0c2b19be175dd23323524fc21a1c5526cb088ba79f5bca18d151e834974d5fd7c9364f0728cdfde1b6711a9cb40993e63a272acd8c0e9180d89e1efe40f0f6c8905257e4bdbb379f9e28f6de8ca362f7af9ead902b6daefe574ef4fa92f7b1e7cee614ff9164fae93cf621fa3459877f8e8aa52449cb0b7b071d50495625be5eee77e11c937d6f5ce349d2a9e207c9a9672d76c12655edc28657e3a1ab0abf02b9e87d14d132503b096af95fd15ccbbb0993cef2758864543efd3b5622fc59fa0b3dbf7df0b3a570423b577a56d5ce225a4fcd8b1ccbf9a032c3630811796b6d082e363ff72edd40aa4af552a47b180ac9aba7e780a384cfc89c3fc5c059eef4033847734d40f92a5bbda6177463e913729bc6f0dc5cfe6048251bc41f8ee6d10fc09c453acdfd3415280231c1e889c42260120ed7058d964e8c9fc1640e2788afdd5254901632c1d6270f433c09f72a34d3516ef56480b6d10c33bc288c19f08ae273fdbeeb5dad2faffcf09d2c451d7e8d748b0e29cd7807fb65fa772517c81f6e5f161327dea102cf3208984e5c6cb615b46d28bc0cb66e10d530c88efe1f9d3c1566b4f51981c372dab90d02e53fbf353360c7473bcbd3d8189f20abf7a76caad487be012acddf30297fb11119308ffed8702ec4036f5524d7073274cd69d745842070ce76047fd1a378810ecf118764f22d7204e51f803086b65f68ebeaefff9dde82c2184acbf66e3aa899f9f8829e2cdcaace21d58d58662036b8a5423de3f7e61853461100c6ff4f0a01affbabb478ae82c7fb55c02d563a74c2fc12c6b8b44e98dbe0ce25ea2423a8f2277a707f03b2dd4cffc5a2e28adaa9ad909e2329b982297ade08671d73c58a566ea1d5f2289a3c52a9156a919b49fcf192676067ed0062b6a99d43feb4b97dc4962c71e1764dc46720d06d8939e1f1067bc45673ad65b7f1bda2ed3c5fe06eb9e701eb09a7f5adbb33e4feb647d04a1d45bfceb00255f6e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855d3d72e3434159c8c90827caf451ae782df5df59f25366b2ab96138c7bf7d08b30c000630f282fcabec53a90df36f535a5e5f89a86fe697d34358ef6daf061140e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85522c4703f063f2f282bb447af4de8cbcefd58aa2f9951d5c70a967b1905fc186ce3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85566bc84e71b33a859d01376588c1ebd2679901ac4a539c798d3a409635cea4100e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8557a10fe943f1b136b9cfd3f24da219918ce107045cc2e0610dc7dbc115a3deba80572895e4a53ce17dbec7b4843081f31308676108eea4f41b4d27365aa890a247475b628d7821a1a45f672fab34d8a52df053ffb41e254721f7c8b2dda1cb3d4df84057a2ba980fa9b14aa7d71b85fe58c66956c026727dbee687d956cbebffb07448eb82fa8e6945899ce99cc2292c79f47daf73f6cf4f7e1d3114dc5389f0ee43e7020d67065497c17a6fa4a7973394dbd2124c88ddb184aa01b10cd5e2748483334808ab40b21729a0c1aaec92bcaa37449d498c9964c648cbff9f1c439a2225682eea10edd7bcefbf09bed85a7061f51b63f00bbd4a2595798b1805f77bfcd152b9bf1ed0f58984c45a9c8d38fd38e5389f1a6e3316b0ae03871327068a20fafd35ea1bfd146a78e5136d88dca7e17115e1fb4c10ba98bc82a9bbec2c0156497d60327a667f7f59952b5d1e135ce12fb11e274a9ea2d21fbe2aee80f679814f5052476c9e7ca67c3768388a8a0dbb9222e72d7ed2e5f42166382920d9b46d012bc472cb04df4a81aee68df7084c95f069ee437d1238b532671a8f5d6165b2dbd4042705136e4e297f3bb7f93e1e5aa6eb36594b0e63c8a605ffe523fd4989793c6f26619ca013deaca58743db0bedda694db068c35688cbf9016dc2df7a9c3bb24fd758e95f4d8cd3e86fa5dc11e8e989c4e13f2611c595d03ca7aee1f9620687ab212af2298d41acd657cca3fc4d3d469658fad39f5dbe457d887139130b6096b0491a18e3104c298245905d7edd813e4e378045ddb9fc92767338c2309ad831db68a64a30b71cdc33b5396caabf41b6b27c350b388813891ba6482ffa1315d956bdab5518411663cbce65aee2828c784b0684f81a094c5667c0b5384ae979f37ddb3943a385661164212c59527d178e6dfb6c92065c51c1aa8121c1b115b0752f542b34146aa1333da4ee0ec11c232b60fad7617fcaa8c4488317c1202af4bd471b72243e062ed0d807bd6099fb66b1042f8b437a1990440c37aa467ee266ab0907864c4a93d38f1d447a3619a2442641955847283d71ee5e4dd9378b64477f2e7a21fa6b2b73bf19e325049d186bfde786f1182ffe5894fbbae65fd410d1b760c54bcf36fc45178be00366e766cf24b855e9806ff746350cb0c9daa329cfc0e8fb6b1b61e49aa8169bf84c85224623732d75328a9c59f5a2a5e46aef5a443de971df651e434ab3864023c85ab08727f71f5cd7056dfdac01713b20b68f88883cd8d32a326ffbe3e9f8d9ff5ef0d7177e6bc2cd09ef4274f8fa7acb637884c4acaccee534cdeed820cc2755689a309a11256387ae5618010524ffa14e011d9885cccd54036e752684417f485eae51c53bdc670f075494e7dc8852a5ce67d79f0f221863804e69ca18a6ce3dca5a1157518f9deae6c89869eb8ab95cc08837cb649327e7cd3ff60b1533a07f9f1f7a2fb2ea9034045b0f9ad411c76ab97a8754daaaf47db447230c53a21aea2f2f87d46fc32f9124d07e52119bcee05188da2a20b572fad4919ebfa5e5db0e9923bf80859fc52e8cc019de731e253708854f2b39c37fe7020232fc0f07529a6b4c7b51eb6cf336fbf274c38c4e67be1f7a21cfac14baf69abae798dddc863cb9fd50e0d3d451d6a3b6ff687347b0846586e4bcb1b488b31a918ad05f57a1f71e26082a97e8502f49657f5cd0907172c1b766353f9e7db2d8c1df377977ac25ce264d58c80d9a83d728d0ce8a5229b1078f01ac7256977bff8c5fe5141a5aa1b070186885cae8ed4b79b8d4d22df809713500a6c98166e50d10d8fc112e1eb6c332fe9a3d9e4a92c43616a6da1983ae159540fa4895265fd9546e9fccb5f656b32118f50a1a086ead61e05eba5e863d4af642c10a8ef6c9e3eb9362e0f9c97892e5df399c49b8602df2e62ed56cba728f1ce3f550bd5e244237cd0f30a90eda57b8b00cbc24101632221d8c50e4c3f8be1366409dc0163c7ec0656e0621b55bffe57a205351d545076fdfd64b3b22640fe4c7d6f582fbb88419d1277c954c103c7f1b52194661aecb7799a7e020170338a7cd2566b947928a845595e87edbff0487d98cf2471b55e84404d8c75e946fb1afa65f12b251bc1f6f7912177976a4f01f1190b623672509e313b3215dac2e4a7c5129350161ff642782faa42d762361be70d22df0d4b12dfa6cbc5d4e9ae1d7e13e0b70e5424b6f6e401ed86076c97f83370d50b6729098402bd620ef53960def5e9f19213b908550af0da5f8581518b8889c5e66f9726adbce574e80f27078b383321c7356e87024785143c723d1d86ebf69e1f93da88af750304b01278d15d2e1bc855fe99fdedb3db9dd429e6f7c42bfaa82a76a0cf1673e8ebc7d4c3093b7742c11857eb0ff5a83f9affaa7cfe6f60d46c066f2dc42a7b7c26571cf162a81f1d8e3738e645370650dd7a62f75f6ad661a4ee930383a58d4a0ac9dea8e6c412ebc112520127a5f74e6229133efd94bbe007eb47cd18958c8d6874857763a73fc8ba7cd54a003b00d42abd3dd6984a10a588ae9e060424b9afdd47feb0879ca5270e208fc63c958e4b3cb2ce123c86431d936c1d8358d8db3ed955af7fcf1387a6bbeb3e6bc3a0759d08870b6661d5358018d500bb793a738d8b784bdb7eab8d9a2200aca0fb74225f609885001de21b1889019661f0a9c1bfc2e9d6403216a922813b805d377d669b443531b851c7458aa5076be331b83fc372bd7a1511c839258ecfc5f0a282f025e9f30b480cc70ba6d939db0b8bcdaff42dc1132cc77c9caded97d798d72c5456676fbd769c95c5470cc99fac694168f3a308930f66347d4023af10ea57dc501d1a7a2882ea9dd7ae2209eeee5ceaf792d20f31328e5c0edd96eda4b1be30cf307db518c8392ff0d5fc6c94a733941ae15bb72be8415adb56c281170002c80cfa9a72799604ed7e3ce9e3c449cc2cb5147b8d32d8a5ce402983c34913ec72a61995fc92076d4a4230f94037cd6871cad263cda9cfd7b83bdd4630422d3f58897878a0d926ab0858df5ec1bcfbd73de19a0712518d2967e84c4073b07b41f8529b6170e12c8ccc7cfb5a820c7d96e9fe5d81f5e61cfab56be52d3981e19dcb59e47b59ea46d04a9b9c0a65b63bf734800ca055488638868a22db4e5e767fbdb6806f8fdc27567ca8d0d33a7aecf1a6f4440929a75cb63b3766db8e573ca524b6194b141e19aa2dd0b588444a90ff7a25849a21cd0e1b6627eaa236645a281124f8e50275afeefe91234370f33f10dba1171d2afa56d8cbe7574c18cafaf74457172a81ea69a39454e40444504477a6318d3a967c1f2c77c79cd6400c53e559416f1c8246e46ac4f0e39912ac94ce37ee807a840d1bab1b769a6e44b7066caf1e9a9c65dc1d9b0939d721d228f84326095d723289c2287f5409161cfbd0fc2bac2c1f523f232cc8fb9576a0e1fed75fe08a6050ddaff17d43f1440e95dc61faaf04b5df44a60b87d71d1905025a97a10e9f2e3c726967cf8d05e1cd0a2454ff82c4be5fbaefbed72a1057215f139216b22401fb58b59888ced60612fa9dcad8be1afddae5b598d5f2f4233c17951c4198ed18b940bb93566ebb918d46801eb106236ebd951539f77ccc46485fe93b8abc8f2210f62af517d865ee282171ac2888d90dff2b3232558b03fd66286268dba399b34821080943858d8c34bc50af8dfa978c38341d818844e7989701be588f8ad464af638f4f1525daf1f71ca38f67b42b4a8035b7d5384d93a02cd9e09efeb895ada40dfd9236e94fd10ddc89309ac635005b707f7e2ec4bad6914032dcfd307dd0e1a52b2d13e64bbaa7105c30e5611ac59a0050bb1bacc56b8653c1a08e12f45009319633e6110f041792516b47dff2861a0bcd9bb56caa0de6b4a55b49f342cc87f70e95e4ee1a4eedfee07353fef6e45243e6e2e8085422a58a3ed38f8423789d27fc8659e2cfc68092970ba30bdff5cc543ee02a39a030ead100633a2a7dfbd91162510c846712a0409545cb3b61885e2b5d6ba40e324ed7d296c920611646a8d24f7f3c0fabc1d74c02a65b37b3d9ac505ec85362cbcb427e297227e3f3e059bec361fec54c6d12627d3e1a64c7029e2bcb57e5c96eb27025706aa063fd77e98efc34059a1649de63ab1fa5d91dfb28bc71eaa19311b6beb6e91c47b7298158080133f746a47b37fcb9dbb1da3f98d58db0075d21b1a0cde21290c5d627d4ace05f044fc3a8010aa7c622728b6bdc089a1bb5b2b0d48a64a6317a0890eacd55285c1aeafac23e3fb55d79525693614713caa94ee22d6998f6ac371bd90ea64aba7d01498eed10534392bfcf7a78e28d3ac4c218fd13238ee70d796cb77b0bc0079a47ea2626120d1dd4222c14779b71a352e239aa80536aeebc1e742cf552abb77598ed767b0de2e5850193f0cb6d13b4968dde7d739d111e337d8257afc0f384581a8949e8b8274e3e4f1513ff8d1c8122b5a496969aa68be0e41d80ac368b2c77cc4427faef2be90dcb5c2d2a8e3f81d3fe803c909da69d693279b5d6323cb3f82867a20dc80809957ce5cf7e0f5936cabbd7b9f1ddd81bcbb9604098914826f2da43a52b3b820511aadb608b0944681de39b30ebe2e5a89cf481a3ef88ef90882ff9d38715934ff674a7f4c620e3b1ed987a5076e9c6437637b3b58a8b0b4c5ea7a6192daa8e6f168363ae46de1b9e407a46c90c5c2dd9a0905955767bf1e8796d8e80ef500de4319ce509d9102112b1fe6eca13289ef149c9fb7824b42789e3653ae7bd93b0a36b02e80f08b414b9fdd5cf098cd6bf5283a4c03b67440f82d7d1753efaf00b7555a97f122ded97d4b01054d98d071e0e9b665c8f31b43682f3c12a36a460b83b3de7a6a5a1fee1009d33136a393e16682607814b107447a16e9cffde370dfa233ef7e3aeca83fa37503f76eb0e8705a5d2bf051c3732a602644f574c4ce659f0e0ddde03bfd388b83112835f833cd36bc81bd4226e5f5e110a6fec7d6f66af35a3f3c49050cc9a4b78bea8ccbe592c345baaf647975b8a1657350d6405534d1ae97c15c6d6bd216c8be3376a0a3b32cf6d6dab335958335f631bdee13487d5324bae91d4ad47bd3633bb2c5aee0a1860648a27161de5c5031f4197f756bea634ed85a66efa33403c100e9bfee6886d4455c4ea5458418c2d2ca25f5f368c0e85c6f0af917c303b7a3c08d9abb55e515d0b4ae0c3f9b5d7cbe39c28149a98d923beaf421f19f7bcad856e975b6a82bc3a33102901c78873ee134b80921f78cfe2bd9d0a9a683874472f52a8b56eb7f7418f576b094d29e8dff9b40fcafc7a62ae0ac93b7d9163cee39e971d016f600e0e66b1249f7215a8bd8b2edb94673f26063143809abce624b49a1d58176dfb9069a5f5c3324e0981f4c3c6377405e2ee367a1381124018e5a753d38879f17951b6695dbc26921fb50719ac685496c44b73eb957bb9e2d314a6c2e271fd1ba0e0dfdc29416f304da1ecb6d234276b9f2e39ff6fd6a13171a19a4f43a300bc337803a2dc0d4d8168142211400a92d533fbb8eac741a64dd2f24532998a092c90571e726b7501aa3c5c2dd9bd73fe6e29a47663ce638222b6afe1cf150a9bb69d24515b06b355ca1c1c8de923d06e54e3eaa53ccedb304dcf48ee9127f2f2fdfd7e1fe693d21f9d702e25a08c0966d2612a1477a4fa1de902dee1ecb24d92d6219afbe2d5453876c07dc3c083ed6f9a1dcfa1ba4a75524acee1fd48aeebe9668e2be3dd84e39884cc3aa79c36179e72865ddc9b616320703180504b8bf4fa25bd5629bcf079a07ccef2677b81bfa5e3e5013ba5c908aa6e277e3beb011fb24e0b639f42656cd49ec19c277496bce4286822b02dee280d52f6c3e0dc1ee228e3888e82c65a52e3fcf6b1aaeca34508b0e6c8679845942aae1586c825fffcff32591c4bdd82ad4c06246f14a222abe7c82ee58a022dd295f2c26031f32281fac26526ddf405e1482b53acb6aa2c1e9a8ca9f4431408067f711a82187d97287f9ca5c2c66fbd735607a56bc2277b65f2ca15bcef6eff98e1e54aac31223976cee7402feccbfa7fc7182dfd716aaa66afee5ed05465c7f7e13605bf171373aa60ea7ec8b287f26bcbe32ec24c20d5b4377708b7b033519ae8455adab37a288ff13e06bae5d530779f9db79a5d329f8be4dac917f063ad6120ebf9025997914138a8aa30035bf6001ae97d7a566e4790c0ea40441f4c1329e286b9e7e969f4ed947ecd51c7d46b8e12c1ad62f3b30d1ac41c21cd102a3a5a42ffa2be8599308fdb962bc7fc5ea15fbda7cbc1e2958244dc6892ad6b8dc42b1500134f318561fe8543cb89f28693fdd8ca54a28b8062070001f300430c7aeb0f8bf737fb8502d425a7bc0f568cc5718ab990bc67057d6b248d3883b596b2bbcef659d68bee278776c2e688fe3c449876dbcd94f42a59dfcb85b74ac0055192fe44d17e1d2b9f20a6dda14b8c3a21bf4d55315c8586e7331715fc3fb42f872209eb0c1d9916b34a0ea59e9dc962d405c5148323158b29203e056c5a6fb68ffbea4fba6245ea95205844a327997b5f629beb7d83ad3f9e9e9fd97ad7180297515291bfd25f571292fd7aadbf77225c2ea43b2082c499bf01e207dafc5723f40262e5a806678284d3987d1804d4b1be1954f158881a8a0bf743f310e92522933f889e2f65ee2cd18a2e4dcf30b9e078a9d549e6d36289f5210f9d08b01050cfc867a5691f6667b25a548f9e50516404ba18ce060e89fb767141bf104768bc24bb34e3aa207d8a1ae267f0a3679f1dae7b189a36b41082a36f3fb6ea616f114e3c636fb473cb0c1161dc6f6222597ba3718e00fadf6ebc603ccc4c2524f99c2379ed109d569aa0eeb4a592b2990b0e350158060929de4d884a4678588f51717ecd27aae61d9ffe390717204b1ef45417ea4ee90e096073d1be3c21220a5da75301faa25b4cd4d72036a25c6278c131b046b2afe54ce099f9edae7a04f20b5cc81cda13c5ba463f7245e4dd97686dcfc7eaa761ec24752f44dbc5e589338ceea567453b7a1a8d0edfbbb52c6f7b387710c14d64f8077a0289a8795b42a9150416e9c9188f844f6e237c43a1e05f4bae1ac856055bea24c0ffa021fb821e715183662f1f07405cd5b0e5094022646787ff5da4ece2caf4cd7282070c2464bb9ea4cec8c506a1494f7bec5e85af8f0143632c15c4852791eace4438dd6265f90b7ffb7cdfe613360b9bc5f7eb496073ddad8545b2d9aaf4567eca85d89013a2246989aa13e099da3540320a6252e7e8dada0c0b5c43361b0823ccba64c5afb1644d76613f62b9458b19175e147a1ffe8a8f05e71639ab3215a5b83326b112a80ff5fb4b7dfe3afb662e83f41d2836e9bbacc527efc4bb05ac113e421cc3d829c86ae47d8825a7ab9b656c7cdde9d13c9e01068bca5e74b6c450bc40f049ef82c905e1c13b726796ae78c1bca32f2430a6754d8582d0a10b8001687ea644a846dd6a3c6427ed45877a8b5d1e87da0ca558ece8c82d3a5d044f549ae001ab419f499b383d5235bea5ae491d00432139637163077006d751b63ac5668933b43841b419a544919ed5f203677fa9f80813a57f850c31429f428ebe3a8b36cf67b9e93e9cf760a15fd195014280329d14354e68131e1cb3a7bcfe49651ea3b57ccd87956b12ab935b59e9cd3bdc6bfd22f3291f7e97d3af937afb21425c5841afcac1186f52221da2d85efd29dc59591a7ccef98041ec600c0ff97dea5d06874d6293a5855c98ab4cd28b37babd810b5da50bba48430eb14b1a20fcc5f22dac10589b20b7ef6a4912f35d9aa58a0a78ff6209fc180e6c096b4bdec0c7c3c7a54d9084a4f09b07c331e25bb9f3addf836d0f43bf13fbe0eb4d8fe401a5d895444a943e4dff4fae1f905ba39f3fedb9283b0a0066cf91e4cb1f5b8638e2e1ee9f9de050c59f025f2893e072320f088eb0c922985cd22efa95bc774d725e86f4a4eee1a1b969bbd28a7e4da101280a8da9d2ccece82db559822c0d153cb84ffbdeaa3e13bcf02cf2350cbf84b805c035c40ce21385d6d21c3b83c55c82d0bcd54e9933cf9d63f42c134ff99ed2e75f7409bf8930275046c02e8b71eeb5fe301f864f165d0f6c1c76c173f278ac9bb03e8a3cf1d9065a4e6c10c273d4dde09a892d870ab376e2343b8f65c7388ef27e3131363948bd4f68618c28d7376d59a18e3615f27d224027136580c16f132fd169f10dc46b944c08651b7b0f7385a8907497ec6e458109212bd0b7654d7238f77c8254063d2a7febe0b0c8a3014b9c3b817eb270a9ff01b0e279609af5d2979d4445c1b78fdf2c12b8cb259ee428f55f88aee7c9edf2fabbd92ec02257e8ca28da825014fbafb6fbbc684f5e9686c301103ac687219ac9dfbf74bea102eb96d6a212a8470cd30bf85e6ccf16a2306453d90df16986805e8249569ee5e2da3dfb1fef2be1ed8bf798b913417ad7ae4f4a3b791eebc481f7f3587c18f8642b4affa2215bab4e48f04101cdecac951f649d8a1c96f6a105447941a14af7ce6ebbc05464723f7ebc620c82e034e33d9edca868ff3890a96a3683f388a025740ea68ae2465dee385fc2ea1684256b7eb318c74ca76575aa3c38b9700c919d168ff7731b161c3c26c3920607c99fff367454775f2819f2a4c82e27a45ee4c6d713f88ae3d7491fa4325df3a1128e01fdbfd37fe16b5fd180a9fe265ac50e3825308b7db758685a4204773d6f4f02f1f0353347f6f95c3d370d0c61f43a350341ce3825c2622a2ed50c8f47849a7c5f2c84daf9c1476fa350dbaa5e58e00083dc0000cf0567f431de47f94bddf8b7d606ef9ddb9aaf1302712f6b11611aa3dca09e906781a05f4ee09571359b86891fe023a06d3e25e82c58b8fa563084db5806352751550b7b447ea166badb501750987bfb2fb586499b70d26546f64437b5bbc859eff479f1faa314b9a17c82f8c7055e69b1f8b70ff01a264dafb179304f04c0a756e962768a9a912e6d60b978e159c16b193b661b57334d773e51f8aab7c8512798aecebe492fecdf1aaa884231e8fcc53df0d0e18947314e1c69fa02692c49b81752a1652e523d9f639e6a20f310097caf96ff24eff2b36b43497c61701526c0700576b66ca16d86c0e5f4bda98fabac972a5268409c76c04ccefc0e681f2aa4dabe5855dde3bb84c610b7219bc7057eec954b0104a72a5183af1458ad94ed1526d1d60664bd60379918d8503e2e88dd25b2888812edfaba145c4a3c1ca32fe2aa23bef3b3321033a4c5a36de2d6fbea98be63b66c4f65cd2ffd0e9f1d56f74d4310ef15464aa89a30b9119fe21c270abf856bc0174b84d66c7a9690623da73af6f469372ec91a41f311f4d1d8bc566d18a7f636c6c335ed7f60169f2b761e994653da79badd317ef43d80d6932e81bc48351f09199723ee2ab328055e59265b42f1c3b18c2e168d407304994f9146da4df348a3817210f08fda70c2f0699a998436e8a24b03d2bc240558c7f093cb081cf3b737b7c1a4d63bc21537f7441e3360d301d23beb3b64cd595a2a98ffd8883287dcab92a917a450c32f0457615619a345e4c1a0d1a0f2784a6e65db8ac8c935a10f9bed247428a3a1461f4fffc75fb2fba86913cba1c8888f5b677fac56f0f29b4a434db51daa922c8a83692d0e3c8aeda639d012d1a073efbeed5a50120833c77497067c97b93a3b38aa7b2c69d5488f8ce6cdc9dc7a509f2d86fd48ef44f35caf0601ff828ce79a9bae85ed0cb0d51f950f6896a7042613446e8bf86810de79d92e1b43e58515e46e8e08789aa0677661bcd3a21dcda24548ac9c1e4d937a64b7242fc1a1f5e33aca7c54aab4e3cc77a8025562999a02f1e256a322708ff6f618e4b26bc1d7982cc5b4834b93e7c0ce434c517b9b4ccbc46971e4a7b98ed72c25c8f85b7c59de4ebee48e6b717d5f302e16ab2a1bd923e585736a5600218bb8784d76ef309e97ef243fcf4dbacc4ace6ac104a4c91e9437f4fe160518fd13e7a03aa4378cbe0837935e95809aa220e1c7013c5f64d2218b1df89655793173bea38acffffa8a66a0739dc2755845633d6b3262d92b7575207de37b70b57941375907bee669a2080e59fb4dbbf0ec30f087a2b84e9b42806933bc87ddbd88fae7580f7714c34554fa10a2bcbbc20d4ba43f1943d9b1f6d9c3eca7d536996b6c288e4dd39459c793f112298f356712f4a43ad8ea7f4d99263508f0ece5a4fef123a7925021a10b75d9c9be673fb004c1e1e9013d88cbd84929cce5b6309f470e6b8c83e323b2da54b932d11eaf5606eb52a1132b5f8cd2731bf7bd8cc9f7d148317a4c2129f4ea02d26d01c15c4f0e3ce45af3388fea4d7e649653bc07aff0e55da3da59a3096098ac0b7e740efe62d143bd3d4cbd3c90034f7736caf62aea28260cfed210e8927050bdeefc6df82b66e03a01a2af0502eb48a440e773535bf8b432553462e784508dc69b44c4cdfad8e590839b1c4c5762f1e9e6ef614d72dbb0c21f90ba49d421804a7cdf07926be2dbf796dfda873e6b156d1d30dd2bdbd555fc41e19e0695a7e65ffcac9ef5d916aeb5e0f61c9830fe45142b7acf6048e1982f8c17f3b353a1877e4a3b76f73cc4db9dea32e98cac422e1e895d6bdcf8eba97ca5be49bc412713ae77dde8a212dbaddc6ede3e5c7b34f49ba806e1765dc0aaf07f2635d85206dc3765eb547db455dfb6ca5b32685926e5da9e01d5ae339a179185cb2fd09a517374ee479e0c3efd52409b95bd57b40fc0ddce221060eb47f65db44d5aeb5d10bc65192c216fe566f5a0fecae15b6f59e3388ef76b47a6ada2df5aa16bd855a2109b643424ff6581d7ca065aa4f1fc2a0305fd0ac6e5efaee3e26cb5fbac13bbebce9fcfef242e8aedd191bae65adbabe19570e818dfd94285e23ddd6cd32c170794b6f2e87760745234c6297518d617f0d84ccbb40e579f6ce289232bb6e324d0cba46fdef0af14db7d35de1890f445068321b58322304bfe3f9d30f6ab4e4307f75ac19a21933032ad748768efce39da6c1efb4dcf04cc7838aecad9811b04362b6d3eff40a0bdcd4b1c249159c4a69c0b81aa25e3d420f3f9cf4bc03474df109637295c6ad9a5a5159395cd1784531216de9b5792fc0992374c2cda24c962294cfd739640ad578145bdc3355285df3303bfc4d62e9477b2a85228242f3fa513a2db176e08445d2be2d096fe2687d8e02185d7549598bbdcf3ba250ed81ca9a047f8308fc215294510e890b2e2314f0d1020ca10ce972ffbca778ff0ac8fb8343bde947e7ed9d7348a603d0d0f3ee31d5126867b970e676a3d8566b1c0b9ce50f95d5f8d0fe6840be71e791672265a21888c918bfbbcf1ed08b07c07cc65c7a147a858251ec4b3bf1333a97533ff2554dcf88fbf8c6af103e88e252dfd8420190b3c87ee45d5b3fc11c8282fc975fa57788999dee31b429f502cda7a0e0ae90b460ee3ce8bb96389e96d226aed22204781ef351591ece4ab6f6fb6c21dcfa099b0f18895182446aa66773f8a1c401aae487a03b74e1eaaafc2e8df1707f974fd6d33a8289f5a5520f5e6fc05fea717401995d9b3816490e2d3282e269bdb00c0cb43af5e82bddc5bcabe1df6955dff7b37fa4c261bc0a5667381ad2274d034af99e5a39b2484add9706608824baf17c3046b0b4e65cd9e209b85e02125e398b390d54ad34c2a84647c0fa403a0e3a383cbcafab264b482e5ac25ede2696dcb146edb1a0766ce2563f8b81b6cc76fce68c3ad571f7cd98c92914fad89587b02967c41a933e7bb8683eeda23f8faa8bb9f99b2095df701b7a2fd219e8c6354511c174b167b90bc1584418f6af0a1695ccaa11f15ceb6080109515b0fc82fb26a330da4fb9bbb1b2b089ab5459639020c8eb05296e52904ab1faa1bb37dd08db1fe3e76d3cb1b7fbc2ee5970be4ca6de78f703e93a618ebfa78b9da1361e16a7189920b9d779f6492ba49a79a10011e82d7ac456b09671f857aa328b3431b5931bfb28c087dab837ad82b276df187af680f8741c5cdb323f66cf6e0a4a0390f8d7f9df0868850a09a10b89304a7336dc8af94d446314a7831c7603e334d098ffc8dda6bc7cc7054a530f3fe2e4bb961481b70a5574f62f6e936657c28c1dc17a9afafed5b2e17b2dcdae0378c29422a9a4e6745f35f645db3fd915833cd54904063bc31c2586310ed4f04393083948e2068d6dff6f8b71d281848abdf3753eb4e7ef9f940f6f33fea58429408b3e2372b609975050d53b8147e4bbe9f9552263f3c255ef771b846b0844af834f4026526261eacfb46b4e8ce7393937d778c6ee060e3d54705110951b728d4374d89f324ddb34fdde7651ac6f1cf2eb5e4548e18b5a53284063cf625a0f457dcbe598d3b27b5da775cf914f3f26f0b61431398cd5bfef19debecf7ed28b0dd68f40369c53ea550fe8be274e16c1a8c1c67d63ed3d2405bcc243f9c0e19aadc134d5fa1bd887f3487bce598e423395ffa2201631cf019c3bf43c29da073997f3efcf1178b561df9b89d1cd8ffc3d60938c1fde882932c056b4fcedfbceac8798adcf952fddfcf5ed059f7f3e6ee3bff747ec55110d10ebfe63fdcded7519321dd4f6b093cae29d732541aece8ad379921daa1b7fa75e58a8b3bc761f68128ce827d77d571f4f54dfcb95c941a1460f5f753235ecd0507bba475ac4ee0b709d513fb73eebb0f8dbcede7497255faec9f2194f2ca2aed4589d7812c4faa3fb1882bab94a7db8857fee13425084d544874f62156573f1b60e7665e3e6221c669ac1c928bcac58e947f646d7d2f5550b57813cdc4fc27e6fca23c91fd50d85ef437acb96883d2e3964f99745139aebc2e23dc536f55fad1badfcb9c37a5338709d210c92fbceac185834c884a0e27a410ac47edd8379309afd8cc1276e1b5bbaaf356e08a28e0fcdd6be6cc4d20e5a7ec75044f63487a1e28371f65d539059aef9c03e974431d2deb6058c38057fe86fc7668a693b61e03cc22bcff6a9b32a1f3b0e5dd40bdc3ec6e8c15bf469bc888011fce8bcbe19fea8b69b3c832d2eeee7890ff800116aebbb6824449c95744d9d631268fe4ed044d3d36bc90b55d64061a2d9783bf373daa4bce1d43325db9be6039d1fda2ae9b72b763baf06b39b316f53fa1226325a262c8635a2490ed21dbc8406e363e52386893175340250d8d74fbfff5743916caa60c05c46a2bb011d027869377411e6dae324d2443a1cef6e018988ed14485241f0d761c7bd557b0a8de8b6ee49fc16434d5fceb35deb6ac1ad811b01c90f84954070d3c20cef176578a49c4ae57baa02eb5d93b134745bb7f1374fc85ba515a3db27f44246ea86b47038333278dbe67eb95659d1430ea68ad0f49d98f98300d5d30454df14b3e982e7eb89e7f23fc9113b03043ece7087650d60641dc7c2d239ef0954b763bd21eace188c56ba6b3c65ea0157ca32728219b507ff16e24397dc4d427a199fe80d34ce4d41ecb48efd5ed26b30375cfd1eb95eb1d61d86a13027f33bc00f7b4e7d702e1be367dfffa112331b326c413ab70a98f528d687ce049ad37b3632c37e15c68d25c7ff21850e3a8dbc623e1f10a8072a88d6e24dc6d1f352477d72f5b9e79918f63edd8f65bbd205d6298e429b9c380beaa9692e474b2f7e3be00380d0d371b4f005036e5837fe460ca6212257ae9bb2f9abadac26ca422d4bae6419dddbc6919722f1c134d642e17595c00e2a01af1e254148d48a39150909c6ba9b6405c5f6b50c69b5dda6c2a97e7cf14bcaeddcc762d52e2f7cc995df2de759ef4b48a9b97c5a52973d24304a1d5e6cb00c7ad51376fe5986c9bfc9e8a1c295749dcb395db565b572c8bb7d0d1a4dfd0916e5d963f9856698ac14022a2d5d3f8581aaac0a5ec19a5bc2587918e84e0407f5752af3fea43b673ac6db3bd947bf9d0c920002f12da69b5b2987a7d516fe964647fd1afe002653f7fb1b4f123cc9255886663c7bc46cf337160659bf95c8ad8868dd99caf6ce8010b1eb23a577c5c63123e02da884fb31db65399bffce1ee9f0ed6b1ece0465f07903b4f05a35f19cf33bcee6fa590b75ab3f1bafd268cf900b9777d76119a5f5bf678fdc1b69171403d74b15e972141d3eb3459f378846e0776f42c075174ba7cc2ed42354bb077b0f7e2b82228233007c5119651d14035a1f3546d958d44944d879af16c95869f0a9710fc394f4b02c0b4add1be095aa73fed9a85e1e404212db214e325fffd0f3914e60b64e9b9aa3e4393ca1512ba9577b47beb329cf653b3fff7c55aa566eb74d61749f31456452dd1e41f4b3de6330decbf6567ba45b29f766861fb541f5cef1d0b89766f1c91daddaf72a53d107ab06578349bdeecfd2f975b5b26e6f86c2a4b4dc46a686d66a572c995365200364b183e91714978d4e6612802873f0f9c793327d9517361b7be2d89c113899dff995f9f63990b9a34e045a088cd625ba3ae82f86c5b28008673cdd79230d025a2569d08c87e47a4074b9b8d9e7f8a7c6c4561a8adc0be4fa9f522795adb6b5fe9fddea52bb311b7f6fd296f655c137b24790e3d821f18ffaf86bd146c69990a5f6c16a6b966231809a7f0cc270d4fdb6c0d3b045f0c8c2e0218302e40c1eb30cee871a9f1079a196350f958e8b585f0efb5102cee6e2f10ca9882db743516105b80d612f7028f3473017fd81e5f76bba08b2ba08430733503b55df6c9d8b86644040f84526f399d105f525d511da96143b7c0ac07b351e012f227b59bcec889d38d76ac50b0a55c5977761a07a6c112a1ad06da5f44c45a36cc0ebc78079c39445fc9f5e52bf45c797c9242e28a4ffe70df5c0f96228a1d5d21c648185d3d2c49ce3b03d2095d19e17f3e3bdaad34039c52154121000d675ca85c04f827960f377b3eb85b1fc5ac7ff08c9796811940ed82499efb62e6969dc12e3dbfd29889458ef788593b1719c842f6ae2d08af2ab4c5f0aea08e1a1c90291d82b0dcc49ed29b9b7426bbb5d2e4652f614db3c5a117f054ab243e6c8df2ea514b1f8914740aa341f74bb7f03c5410fc3e86ec19f519120993e02253f8f873f84e9bbd8906881ab5e2b5817f2733ca47c46e45330eacd12e4cee6310874f198fd1a4b457bb6095e526c18d6e15215f6a603c72a19190cb59cf1d36fc8a3eda4ecca859ff70eac58176ac25084e639a9f8ecb1609a70e9c5846e34f8d5e171488001c70499acf3a1bb89614cded3402fce87d4e4dc671856591c986fe7efb18178160aab8a99c14d753176cebbeda18d21cc445f5fab789780dd0ce4c33131b856e018974ad485dde7b15833a509bacece5def520b0bff1b0f8707dfe80598f6e379b679a12b6313b7d2851b413e14bb8c5d72ab17c0ab75805f6380ef92745849af25a3c3328d29ef64be84d1a6c6fca9faddad3d95a8281d6e5fe0b7b4306d3f595632b164ff50576596dd54bab0dd20958c18e6b7c7bc0b46e594ac1c079504de8dd24c776dc9b5afc9a6472998222940b6621d7d813d291c41a0c74d9167137cd83848bc7bf7b3cb06f5b3748f4c4a547de41d4fb9d280a0b76c001254ab650de66f8c3a2a3de01d1b5589abde26111cdf66e11e266d31946ae9e64afff2117d9380e9bb42d041e500a2566443d72cdec67b0396c6d2b2e6efdecb446d39d4631778c3bef479586879e59d7c62a30591e7dd232b0ae402e0e8c57e07fc068fa72e260cda07606a1652ce503424861cc192274d156f2adf9610e664e79032eaea2f8ed288cfc1dfb1086dcb8083774d4583a2e7010b577fad338781ea8d0376dc8327d82348d6e92a97e13f4c4aa1e8d4b290690c6539ba20401079adfa5213c1c754305bf3191675238681e52ced6b15268e23d579fbba4dc512be3ed6a0aa53e43d4194133a6c208ab40679913887866a1470acb594207965ec277545e3f932f2af2ca63e00e1d0c65b524a107b19821d32415ff77b460563cf189283a67a3b8dd1925c19b3ce643d0914da2f7101d8ac495886365cbafe7e04328d2c3276d4426b9605547b7ec663177f5f1971bffb7b39a26830bf122cb6e5f241fc10967fcdf274864db6509ca70017302c97096fce1c122b07a95887c40e94ff61f9b5ddd1ee971f63498788fa95a8cffc9e739529b1f02ab1e892e5cd7f2476c45707df4b40f4ed07568175bcc3c155c7305da0b883a7b3d7d1b1648c10ab28524992e5272e21afe545ca830b83fa85716dca5ad1fb901b9c65115419ece8e6391d8b76e2ddc77e6750a181b3b0ff2523f4a18511cd140779475746e2cde39b0cd6f4914445cd11becc5e0f5347234705567480e89a68e347f9d15391a8d1abd00a9c979abd3dc948630be301bbb682ad780d5063cec9e77cb80d7c5681526a26922f9317a09e5b69ec44670a62d672939eca633205223afca602b98d44e494a747b4892d57ff6ed99442a97bacb9dec6794ae5de234448047eb684f2aec2134775f208d259f016d4a13a318a7be6b87f12f996652f7b52ac4b9afd889191f639c0d935abf27e32797d6857b7c91bf2c2bb9d5f221c0456967337011f069038cf6a6bbf9281dcaa20c63aa053006e89d8b93fada3a584894b9f9ec3bee83d919f32d1dc7f73e62d69c683ed9d43df54210257413149c11da7e3c088ea263526a0fb979e4ddcb7e539733ffdcc073c845f7ea5004943307a75885583a64de9df355eb98f2a2845ae260ad169ff0e2a054a30bbea4d867fbde15bf5454b437a1aa6307fb3920d2c7b6d122fb8bfdcda312a3d17a4666dc341a3cb042201ee513f0c5e5017a76281a8a468d1818e478a778a0191a5f331bc5532b01f4535d656e1bba190014093c22e7334893e00cb12815439e5f79d68eb2c0b9f7fe5edc8678471e97bbbb1ab0887e15f42fd5f59a82c2a5ddc9931dcebf635e09a5494a892668f9e8620f27ae4e435dda01b0e8bfd35ecc2b9182083ea01c86bb3a6df7756ab7225ccefbd6a49c5eee1c8f27cf820bfa2fcdbb73f921fa8d583a93c0f8fe7a1c1f0f6e9c72c07b302c274667b1ede4d769adba1406eaada12a6083e19fd78bf8aa5516a7f6723f5cb100912161be1af95aa3c720ea248e3dfa98f2eb6d1a3cd3b3dc890c5d334f12070ec1405cacfcc1b5700ddcf62ae74abe163b2ce1666f364454d3ede61ec5ac186aec7872fcbda2ee44c8d4421ee41e622a85644f196182a2f931084baa97dfab60e5a93672d705c63f6d28c87e695c1307de9e14109015b836bf90dcb0b93270b8107d6de313e44b6bcf51830c25dfd82c41344080dc53d67ef1d0341dfe92d0e70bf8de045291a27982ee11bcd0b974c4343eba891fd4452ebfd1fa2287b68c322c3f0bda680ab5024da11839e55e1424c789b41a9a5fc50139bd811d2bc6980e91cbffdfcb4ed0c776477f1d64bbf945641469197bbf6ec108e964d1221bab423826a1e01ca2da7cd60a992b37bc206a63e9927903fb0aff6c73ea0379624374a4394830ef6db837e985868eb7199b7681621b0c33ccdacee8ba43a65094a37c77c50c066a550ec659cce77a451c7aa1f1a976d41627e9baa6ff48c6fcdf4d249bd39b32a266adbfbe5ec861d71b6da0082f7cd06c99abe94b2405f6694e6d1e41f83a31a065ea1d5d341f2ef5a94e4198957780848c98dedad97e2a50737ca7e0ad0cd85af1f427f973cfba2b4f0b51a69223d133ff88e059f564e45a4b1855327e6f1a0d746b44af49d87c65b47ab72f8e2df3a6e3d4e4bb101f5839c2e4b713610232d52fcf1d1a942c504787d7348fb252e8e541331dc81cb1c1efbd6e4a61fc295b9e98ab23dbe34f8bce40e0d78b1ab4eab4751c627bf0c82176ac0496523a46636d5cd4c0c793eb08f2063f0a07f29bc8d4ab9d8c0d1a32c4b660c5e215962146a1b3a93a25c000130e21606a2e0ef5281e9ea11685cc4717505e602a4bb4be1a537538f7df0f85beb989d70df8ed21e4fb5e7636e954a17a38f906e935c3c9d3396cf9f40b05d5f6e2e7539898c7019df2acca50b16f1d21e314426f1bfada4aeff695d1776511b68ab016ceb71ac4157156347bbab4722377adc451501e66f475b5f3931c6d2a1ce01c6b10d46bc5c43ab1e1e036ddb37cc9d5ba2280d5745614e5a9487475fba1d374514b952a5fa2dab4a7abaf87cda1e30c10235e348378cb58d667428cbd1be9720c20ef36953d83b09b52964a89b1f54c5a880d5897653b3a21bb47ae6618302af98cbb536b3cff6a9512c3ba927627a2cd1274abc76c03ffddcc0bcbe5e6f09380dde718998def4aaa83dd61547e0d4e89c44f5a1e1b9490157224204a5745096c19478a86b094c2a7ac4dbb73d742722490c3b45d5f3965381beb42e62e57fc2d9376a803f8d6ed1ebfacfeb9a8997fbf1005af50086e18cfed783d1f59cdf409e954d7f4b2d90f8eef198e4ca459a9fd45601eed8a849b6a80cf3b855ee2e0941c912a7c5b8c4246b3bfd0bdc7debc757ff75e4d1105ccbc8a14b1a3eb452040229b2f7ae2ec64f1b033e9c3d34d9128c0851f86cfffa010a890b46ac49aae4f17ead58832245c95b4288e949cdc9f65bbd81e0d0f322b5f25a365c0f354d3ed522a0343e3fe31d7e6b694c0b25a2da29dc51dc1715d69fef4bd66df33f832f20910066417dc9cba1faa4aab90aed5d37e139033c4d048a48f8ae4a71d911bc5e39a41209dee029601b0151a03734122e62e07bbd3a694e2549af1742347776969fec1c3140621b6c7e50652aa2d47b8c279d6ce959a332a70c8f8ff24465172a49289348a9fbbd72b817a3f4adb29a6e4221153d52c0e422a13197e2ef29e8f2b6fd418aa60f4167f467fb89ce91ea912877d659b7943af98a8b05c37635f17716da36596daa61bdca015e34a1d5af5856e1ae44516402a3c53a7a08c60c287eb43fd8dccdf22636529c2d424e3ad6510f7a00464ea3b5d46c404e084c59ae75c24feeae7b782c2d57298ff2f6604d0cb3d3f6e3a8a8ea60ef6e5c2a5fa69226f8cb9916fe4f354f213d9074824bc52043a9406a312e44d3b9a7dde6fde737c60b2bf89f5885237d4d62857bc6690c3e6110ffce8d20c8924979621ba36f93436d91caa0bcc32ba825289cfebf50f39944074b237b6e7b74d85d666919b7788feb8f74a006e812d851c5266d0d79e5971aeec5d7831309cee953c2e704e8a75e0e7b5c8d33534c32472b93406686b60ac1814312c6048efb8397622a96a69cae3029085bf62db044eb0ab4a1d0b21b79540a026dc736cd7840663de68757eb1e4cd381e8a51004f734c5386273ec9fa387155abff2e32402b582dc7c30ec9f4ccd6135d355c009e11aaaab6f10fbc0fd785593727c755af4b34bddb5786c6cdc790bf58b3c1a82e784a8940d6355631dbe9696b42b6da6c0ee2d914cd193a006c74c91a6acd8ae35a114174ea5d5be7aef0d6421de823b649855961cf643ca4078ef0ee28f67e0c518702238685f745b705729bd4ecd72acb4b3de198a59274592de761c9e87f2301c1c9576d3fdf027f103a1df5193d85c2149ec0bb0c7812ddab1c5b926b627c6c616213100bad18a2debac618525740e8ba194b38a279135fa30f16fd82631079446bc576dd95833d6d0df49c3520486c284d07237aae4288f6613c9fcd60e3be0bfc6265c207a6f3ab72962e91fdade2b845b565bc420943031cf93366c3c8bfd492c1dc4c506f54d3efae01b023291266b80ae3fd090aad052385be34a7b6a0785dd1a0657b14362503c7601a528de7bd90cf91726f4ca80fa180294a37fa919d415c8968c7ff898a9d0be11af79b3e0f3ddd681d1f580305a4c70b1ba4423790ac62e29aa202aefd1f2037db433958181974671b15044e6fd3d611cda00bb44ee6cab4f694b97caa077e940ea97528cef2ff540dbfa67f89ceab3b8c638aae182a1911102dc4ea984093cccbf62a08c0b76f1fcba45db2c26ca71acdf60ce69ab609315e70c9fcc6de2290781580aeb03e8b94d9a29881b7f3de61dc8342140f4c54794400360c0f7fbb81e5730f943d0736543fdd5e07cc6a0c0aef729b668551efeea5e28dd52cd9d8dfad4fda5e7655e3fe50899269c926613a4fc1de9a1072126b07d3e1f2896d8c7b09c977cf914bac26f1a9bd282261270cb36f982407d84a905883e632db36e4c841e8a1a289335925095d2479f057a53000ec45367214cf711cfd71b96f1472f19e438c4cb06050160801cb8b9bfdd8cfd41008cfa9134314b4ecf191b41f5195ac033fb97f73614048194f31bc7a10194d138383ca360f85f07de633e5fba5d0ae505aca8ac5c16c2cbb3cd47d65b95cf69f13e703ac0715e00eee90757b2c24ad7991e0816903f726c419edf523e09fd463176990df1f479904c14f6448f53f37407f80ee6f9bae35db6bbb52c17b73f940cd866fddca730be6d2953e21040fa8cd6dbefa2fc20201a2b1999bc67309d30226e766129d0505875f1796872748b67ac79dba7dfdfa16420388b94242a8865183fa295ffc80874618a5e3abf2ccfefc46f2efa6e678ef19164be7cc3479acd0297ab1014064320d3cf3ae8314c996e73a066bf1ec75fe6766e320ac06c917a98f47efc0aeaeea4de1bcd5f83e96175222af236f35292906a65c6798c8809139e0d33854a5194cc2c98c3104ba24cdd6f340678bb1ac4af2eab3832944570c2a8b814ceee04951fdb0303adcaf418c578cb0d8cc3742f3ee24493af22e7596e55235381cd7bb044c0e0704b1140f624617c9ac56ac8159a76b0ca97237e581b8f30ae877bd33eec1bab23fd93278b8f75fa1dc59221aa96c6a32b503b1eb74c7092e19693ff39e8951bc0ff516b0d5adba19df6e2428639787960879e7ae5a7ff2f2e29792a214bae4107f36f3e2f612a0188ffb36659da7a10709964913edfbd75630a5c860b038a716e9b86fdc8799176707f457125fe5b85485955a3501f089637a38a6cc5934d012d31bb48e2cb28a54d6012abf35f3793d7236c1a2d2554a63c3349c43e1c912d42b2cf9e8bcd48e682e3824735bffde9e9e27b44b25e470a75cac4f7aa9368a3d2163ce6e5209d2caf6ecde6490330f92b74762c50d0509720c452ae08bbd23dd16146018d516825bf06f4cf2c5c0c42322915d061ded973dc688cc36867a67d593d0a6b93117363742da3ada3554b8b143f430d309fe8560d862df63e3a8e6e9ff8aec3c21367b3f11aee987852a32ebde56af77779f14d306726d8d1ebf70cfda2ed59284f56f3e5bf7930510b3c9ed2869acf8bdaf45042ac8c8ad1c3df184ac4823024351649014b7be4428ffdcf0ebce3fabe0af1acc8ee771aae9dba6e740bf5ccafbb46fa935b6de57ca4336cf7971e18a03849fbba076d3dc743b493514440875a803a764af246bda98ea2be6cfd3337692d5f6c6d4c41c9e9303b4189b6548e716a4b62e25361af376841ac791a9617fdad67d9b43fcdf7c6b37e1369d5253a2a9e3dbea19dc7ee40736379af9c33a1df7846ab92899f63d6cf056964c44579081a18d68ef07779d4d295bd128077252886a9c23ba8a7a0e9b99ab4b6ac023e1b99837c9eb327c36cc066b3d32f4677497583658f2476ef7ce65a34c63b0c671249d52626627076db0dc6d857795a8b23634f3273528b61dd26bdf18b146afd05fbd1bb056956040d7d0f38dc9f638c03132a0ec4af320dfa2b612baef877be166827a58b920bd0cf1c1aef035e30ff3301c73e20f5fd3a969aeab3b9d9b52d1ce42f55cccb8e7882eb25d4fccfb3d8ad864b60016ce886c95a0c754dfac37b369bdeb24f11224a076b0559610306aa062e755578563765bb93cddb71a54280dd4b0f1a7c83ce235b680d59c19ebc5ea2406639b5c47826e8d082aa4f8d2bb86e92fdb7bda3761a4d69f2110b770ad6a70b7f6f4d1656a65e2aaadcb907ff1ebe1ecc80bbed028c326d9681bf478e0ccd91dc6f8fcde73d6a6eb557cd35284cad5c47da2be7bfcc11c9718a2f66b89b0355c86dc289090b20f8ebb2cf74f40ededefaef157d6cec14c40a34617a6749bf2af438d355c3663852ddf66ad99ec9c26cbcf58d5e2b4569f24035c832607e1da82e41c34972ccf0bda0701955bff117e2afa07627f63d25c2c7d4efe040cc3cec05bc32b900556d55df406fb283fc5fda12a8dbc9b4a6ea1839a7a839bb9005746dfa5835585b2762f4f3ddeaf8fe7cfdebc3d4a97d5e8fce4f44f9b312ac0e1b13ea38e3c46001972bedc7e6a2a79f63880a272e26874da55bf3a63556f726fb37aad072873fae1926a70fcc7b090cd8748d9540ffca5e83d57fe3d660cad7b5a68be761945506702a0473ba3e9888fb194966882021dbda63db70680e6c227fd0bcfdb31b2a89eaf59239d6dcdec642145de8227b4eb3e59893833f9ca8de354b8c16ad15d61208f4dc98caa4723223368e9c54d221654a7ea9bd3dd267f8d0652752ea1ef482d1884fdd1253260aa65282b03d5d275a6a4344c84b324d278712e4bded9f898a9212444e06d38a8dae53dab2fc4dfd3b525b6cb4b5dd84639b5a463c22eac4eded0128ef6a8aed3bb01d4dccf2633dce03b8e45535608252b7a833a0b1cb227e30584059353ca690b107d71cec8a6df5b049e3a84783d48b20fa8af7f42b04ff4bce392549d0eb1bf4986b64a7003e9939ea0a9680f8cb62087424850b1dbd2964e3de596a7391d0baf960eb904976665787fd0161aea1f010cadca6f696c3480a4ba12c768bd37c62593a398f1bd6b7a46fefb5f7e19a854b4bc63b7f0bc5bfdfe472671c69d18931d625a0a51a0f16e77c941de56248cf26cfe1ef8b6b2ee37438682909306fafcc73c8f3494a6ce9f04f3c772071013cd6c6316666efb9f2859c6e05c223464503bfa30cd077dfe342ddc1550ef8682a7b9951bd2ff291d4611c19a46b2096e6423d2e0fa78bad0ba7c07400203a01855ed595ad48b305521624bb3ec320dc96dbd0d3175fc8881dd2aa0327e682dffb9739b65ad3343b0a9415d956ef2a11e1fbc1eab5e827d8d1778d53ea39ff51e1fc6d4d6ec22081924b8e0a1afaa9305475ebd1897fed8ae60227721751f938280ad31b2f0083c1a3f6e7c1fc70a3e30c023e9c9c109a7b8ab9f6b9032a4f409d7aa610bf2566feba243e3ac0ea971f92ff5e2079cd73f6f9f3204a75343e1600c2083e2c91157c16908327c92356acbf6e89af46db37018ac62924f6f65b5857b9a6142bf233e83f469af1bb36681554e2c0e95f59ee459dadf475509e223b361ece9bfb9118a56fcb55a8d84bec9d1d5a22d655e0f442ff5d334d57ffa1390d0bfd1f57de07c2521d6b3b6eb40b2c192565ca49c582163dc7b6785707f76b7b4f29c24cc87710f60cff99e0ac571ed7b6fa69dc127ae370dabd8546a339b220435866ad054262848550f454cb0709c5e8b92baf559d186206efacbb7013b56401217c9d60c713e3ac8e129548476c7932924b753a44a240175066b53d9a992086dca13a1ff0d88093a803ff5e823b899df7b8ce2190d483941b0953f2cbc06300fa5e053da8ed49bed061b93c5e84c08f4e75096a87a825c611a91ad32218cfd998c2e3a9f97d7c9289624cee0c69f87643ab697fec9cfa7ba645252cf1c1619fc639743327abe4967c3a3b6ccda156834edaa18e2245f89d9b6339915311761fae3809f5f895985b0a82aa7f68f1aca20683b27735abf0a5b8bf7eff7a8daf70380d95be734199b7791efacd7f0afd95f5aa6dcf6c5c17c09e4256d4f7dd782364d6365c9fb2eaf6d4d1ee42cbefe7f664efa662781f330e6f10b637b9d9930293d7ea06718667ae6e3b25517f7911a58be87e8f70578031d03a12f0923d1bd49b45cb51520c64798fefcb9ad858a239e7fd2f71939df7026eb03c7bda41df097f3ea132aed48e546f003410ffd7349229a3374f41f3aef861c435d8fb73dae97fe06b875c49743940cdf8f581b9da4344222453af5290f09d31dcc541c36b486d573f4bca642d6bde7d9e08de9a3a085a72a685b7dadd4f2f5504dfb79ab5366449b6b89a704bfcee20ffbb953d0420cd1e1ac35b8bf31f48645fb56c5a344a380ce8d7e590aab562ccfe0d92399ad1afe266a21426b9511e0f123d322b3fd2c8e4b9ee63c7b94f53d8f2a4dffa1dd285783fd0a6c5d06275afc1bd513e47488211fb31447975fa98d2fd6ef201542ec9ba374bb2a7119ad3dfbffc4728e032a6e4c8081e3b5a5d37f44d474dfbd2f4e1efaaf3625a83e0d1a907dca535ec753d3b8d5095958c167c3e6cb8178c77e4cdee7e4d298cca716c08bb4f6459da2755e83491782230f839ab60bc7e775fea9916ae2a00a4ea9f8f7b4166dd8b5b17cee20880fe0d6023622060fc62dc32da1c98e01cdd4f2c5aef6d49a60d84df65aff718dbf7ced2e19274736073007709ecf6dbe1b1f02a1dcfee83fc7e93c3bf266aff5d775c5c4e7b105426c6ce15142ad0662143c5248ee47ab8b13aef4c76e37aed5db3290f7ad7f64c70aa4722466118503e8043a76060c87eae05a7a461e041ccd5991257a640ed29ddcd3cc4acf701295945b62b146ac0214cb6605f57434a71f753148d52ea5db2702a755760a9376a1ff6157577efc7f8d6bcaf700ea6b23da0c385395aedba13bf031919e253110eec084ee6946a6610a8c906ac0dc626c381dc22a79d4f74480b902e8bc97945d871155c1743c5acae57ae4ae688904633ee6aac79c926232e9cbadc19c22815ba012231955f1cf1978d385755292b0f245f78ca8314a8d87790ae2fee198b845926f7ad99de8f4a06903374ab928ae405217a29425df9c56fa3041d76d9c8c6b53d7edd1fd1298e0ab0b0d9a7f832c503b52e38734e6ccd7041484b843fa2114bd35d9c1797b47c0139accf08ce792e2a2ee37c4ba4fedd784ecb53d36123c08b47d32e2f63185f427e53b9595f686d23e8b76fb99f156c4433f9565cb2f81948c639b505d92315875a28d3ba3005be9ab3e458ce606ed5bfbc6d662272710d897cda68ddcd96a4098661c7bf586d4b49e938a8da3c35f0dea61a15645841a6b753f212517bf67f3157856fed92df1b90b877b9951942714414534975b5cce9cf8d654a6fdbf22672756ebc5f7045a51413b487850a7166afb201dc0cdcc977687922cc613d899620ddebf33c952e766842baa0cb60c61fcbacec41178d210ac76bc49c405336efcde0b3d0304ca586d8c0455b8c8b1256f8f6676db78f93c3eea1ed97c43e390fa824b44e48df88b8e87e9587e10dd552e55710de1312164b4e576035c94dc846621bfbc6785df409f6c9bc9c5605f802171f2a31ce553accb7727211f730e32b9b3c8d3fa4c49ef944832975645a1ed336ba689ea1d2c4f3b0bcc3e8815bcabfb1cb17c7ebafe0b60b537a6935c127f1338570aa506917735047b28a2c3e06518e6cc6c2b8e836e7b2136cfeebfb4136758a2805694a5893f1fefb6aa19bceaba588b377a9d270da05b09b8e36277418c8a6f073d925b47314ee2da8d01d0ffe9753f9314a47e4da42af2e03ce2eeb925758d077334012269b3294d190b387b1d095e8f8c1d5715ff0688f293f0cf7c6340306aa8517d6ae1ef27231a5d1ba49ff341255cece51cef0b0afca40f2356fc96e488a714341e7fcbd2f3f4fadd331c1e2214dbbaa55ac7434ea16b600abe3a44afd2a53a93b9d8c7b586c39ddab2f6ea6817b4d836019e744bc90382661647544ed3a81d60db560e5cff0b3b2fae307ff581c7c5fee60e23892c2569ba605edeb1e32d83da6216a311853822f68e3b4b6e8f06755a833c5161bf3570211ef047e9a9eacda7bc53cf31bb1e128c3a2951363837728d73d3d565f6abbe0311ddb07dce53a69c165becd9bda78aaae5b9f76a6dc8ad4c4f5c58cd9489fc291fe74f9c18d18339f1b1646e37f6be9088b4b4fa7c7fac2ef3e28ba1f32c4ad5bda0768f6f9c61b6c89ecccb5c130960ab03104dc994d399a17fb2f52067f7487d9d857c83880d67486da4dd8abd01a59c0c1a166e39796b0dbe8c3ff2fe30f85c74b0b81206a3d84988f73a7952978861d4813cc069e22bfb455e8810cebf046984e21e4ae60bd7d9ae697bbade46117c4eeff1afcb1d88133c7d0e82758b8e52d8a8480a18257e7feb5ddc08245a69c5a4b8517d0b39dd05b088d83e2eccf5feb0442e7f809f95f044db36839ecfd36cb231efe6061e4bbb95ec8aeb3d75ae77728d605c2fa5a52e15a50e179181f444dae3c996d78dddcb6749ab9a27501b3e64bd0c7fd218a4c50bbbe56797bdbb3f117328a35532144d036fb1217f1a7f733dd65330b21a7576944902f7de145027ea9c645f6ea434681eeb008af780c12679644854dc6dbd727f2399c25fbdaece4ba09f9c3fa46218ab970d5f2b59dc95ca738cabc95104c21c251321377bd88b768ffdf74050bcfdd33569e14c99e2a74d9e909e843b65b87e4145eefa4cc29b278aa408632b2898ea6a242c0d61925f35c13c840003e6513b269efc5b1fe8dd06e5783a5fc91ce0ae11748708df64d1cf9cec8c59a5f4792da7212dec0223b706980bb85af6cf22bcd14f7f5f65dfed298af7d08e25971117f6360d896dcef53c3f19a83a7a62311627ea594089ccb49ca04642200f9fc56cc74cd6a3f9015b680157d6586dbb565a199407d864dd2efb1714933e4e18731217f40211235940f583ba321ef3692e8e6b8ce10cf3d08e677b1df9a253d7e6dea88d52233d546431e85f819221ac3ab337d433a0d9275d9fa5c2c6aea91c647cc557338cbdfcc83a1bbd787718b71d4e86ddef0eb85aef4cfb090e768e61768f144aac294a3962590d51c3e9a098ce15e3baf6ff8d955a19ba0c361914503e0c5ac4f806299eaa50d885423168425ac35b9b6d860b612aa7f8308c62a1557488cda6ac225266e0e5ae7cd432448a1f877e1e001d558ac1bbcf1ad1504f0da8c8701e7b703ff99cdd8a9a4f823163ef3aa47a5d7c39a1adbf3286770a3048e5bddaa776342434f12fb304b003479b5fb3380f054c40c48515340f7b2550bedce50a066c3bfd25501c7a50c7995dc67fdd7d2c9c17c62e5646690eb71abc78f54bc4be200c8e4bed68b1a2839499d56784f35fc2bb4ad522db6267b28f2926f451d000899e0a505522eacb7baa72cc1d7f28733a2e221448bbb3bfbd70f7eb83454b86bab8d184951d823944babbc442635b706973af6a26136df92693acce7d2724fc016ab1e4a0abd8da0ba6765f2969482bf8eaf21249552557fe4d6831749d9cfe4c25f4661f8726d26be44b1032a31af2f1c2c238d14a5f697970b33591a60523f21275315c584f027d4a6aa80f93179018a21c63e97eb418170be4f161e361833875ce2e6ec5095bdb6d789616f0aed42379dbc9a994bc8a8e7f3dbaaf3256bbe19db2f0838ae5be607ca906051f99484dd5f5bfa1b2856e3c70eebf3fe7ae604119701cef2bc3a0ab4ebb98c90d6a03c8b892c90d2e3c79b0a65be57d996d8d6af69915dcfc62711253987512fce952f129361a736cbef4d21247afbd02e64d15a5e89202217a8c87743ed573aba66423c497a9df0454da771b8ab537d95c9f346e21a28904c7265f7dcf3b1597391bc1b824c2a94456dc4e7c95c931a757203d20a0113bfa6cf2bd9726c030df4cf8cbb48cf99e0f988121feb8120cb8e5952b12b57b9056bab9d0c13c0c670aa2a17f9faff53729e88c7d077c3075f35cd704e4c673dc7615a941a6a65c79f8dc6432cde77ebebda3807545cefdc9382349f88bb74046329e5643177472c29bef04dac20717f2c4f8363f6b72be75f07eba50f0b7909b85c5385e7411cf95f7b5d4c192ff470b2288a466037e34c89c073a5927880d273269943f1ee070a518df4058217d93f2d01078e08235ed99975102dcb1195a5cf07cf8d8af1496bd0d30bdaf1725d7954d22a4a8bc87beaed7d6223e09370b98f5c8a4803e0d1656ba569d1db5b4bf342975a08d19f543df5fb433a243d0566924d7debc3d6bfc4f8fe37ad0cc330a300d5ab9d3698f3ebe1c3b03b7bd24524bd5e3101d832d54a637ecfaf07392ab5332e6570e950a3cbdc298b1fb4c8061fc3ceeac4141e6f1eabd3fb1600845c1ec850c758852bd69f3948fa6c6011906e248ea4aa366a8ab3fb5683ae131c3e91097e35aa0e9559ba9d57d1966d11e79a6cecb968f15db10836de023506a40ce4bb297fd67d9d5b2c1fdefeb9cca43bb8278f87bd483e1f7002030bec3cda9e1a8a17f0d6213beaa47124b5f01b47f428c948f5f9dcabdaaccfb97890b168ec0451ab22e2c9a39a6cbef64f3d5489fb94987cb721967d32ae785ba1b702bd5390937dcda64fad5546aaf26a03502290728f1f444fac41ed3fa4ff69e424ceabb7cea54c387d28291ff5d47998ec2a620d38670189a17caa9b2fb5702f782a6047ae39789a90cb4534ee91a22304593c3a24109d9b654e2176d9a454a69a8ada6ade9d200e93c4c1ce70113cf710daeadbb18746447be6f0e939de68b43bb88a04d17e1d31a569848a2d56a21c4b29b383002e3544fed4fd03a6009c1eb898feea6f7d730463f4aeeb3d80249d5867aa31bab936451f46527abc6ac3cec7b93feab3f0fbcfdab6bbeb1da228651b2a602424bd58b0154ba38b3b50569adbe4fa534f3c2348324b0d3f560dd95f7b90a6e85d3ae0ed85f6433db1c42ed5011f29beb8b01142830a840a1add22660e2bfc8aaef3533e19738d0697aeecf383b6e3b481b77e2798164931f54533144ecd3f615225bf6a21be527e16b233d98b3667990811fb914c99604f477787dd95f350daeb752dd38455b9876620ee17b2dde8881e594925a348c71607ab772a91d5ee351693a9283536ace84f5cebf1d719bb8d082f6d2633d2118095cc57c8e73f3ab5b11a53d214acc1421a3d92a8e305f8f8ff28d644433ef36a9d89b6be58489ff03e370e5a43435678ca5d6642751fe4e2e31f9d98a858d0d33f51cf9f3bac70d37c5076176fd2dcabc7bd6ae684bd41593dc0f60dfdd89628fe7d677b2635d2f84718a432ce564eee7c1235022604d98351491c653c68941328ecf56c9819f6da66c91f629e5a049933d2dc1bfbaf2632ce9f7c3172ef371aa8d2b4db3b8ba14e989b3c32c1308295353c9d0a2763ed12848dfcf80dc77bbec8ab14f8b4dc668d6ddd565890b285d9365d0f2ace847b2a579de643d77a7be97fc1165bb90a45fa59a6236c16f5ac520332ee409051b41ef9b78c820fecdf49fe556497d0d70f8d05033b90dbd83e4634e2e62ba48fa796fbe271cc2eae22ae088cf9b1672df74b367a8a94ba23201e2d8b33f48f993d6104512e45ff6377fb139a669725fc7d4e1eb79f04d15d2266f163228f83c2aa984c078d2894cf2d6c337054267d29dcf225a79afba37ef9edc213821490c036d2a016d460efbfd6d5f2b313d630813e442a9e57520b954820bfc38c00a342175ab9a4cfb97ff8869c52257fdf275873343297b08d1251dba70ee16d820a87a3abca44076b90e2387d5e05e04d48b3840b11c70fef162bd63b049447efc5609fc2b06633944af42937dda3a6de0de918f11eb3f7c8855e5787a77dac64a6803c112584df59a2e72f52b22256e858f37b3334e9817185dd33357a4af357fb131f9036760df609d57bba75688399d299a152140e64795b2ec05b89cfd69c37a1708b301c621cb1b4364a2140069b328cfb49acfd494e2014320447677907f7192bd71ee90f736f9dce0c601744a4d153fab532baa4e7c9804a825685c550ad85b94f57357605d077af5e05e831cf25162ba5fb7e4908d1f0857f112eeb37351480b7a82197aed877036c2f53bd768cd20e56099ee24f8e5c78d525d366c091a392f7dfa36d94611d0e94a657d87bae915d5a57cd7c3ddfd837d7d12abe8691dd4347c911269902426aa29bba13c55e44babacdd0c04967ada9f88020a102ca81628cf7ed035b860bec9e0b168ff1fca88803c9da1c6a5a9d025b2d1aaeb474dbef7fe9257f6a1505f60b02afaf007a3ae034c9d351673b9aee6a715d663bdefc5ae4191ed9a4bdb7d448df8b07ffa4d43fec7ba459dcd281a615a383fc7d86a79aea5806f8cf215f92fefb04a6f458d5c3d3504eea9cb64d22aff399daaaae752431fb7f63e8a6f170af1dd0d6f6c83126bea88d6fe9859355dd6de466d257dc2834571105fcf13be08e0284999af226f0d1a7e431d78b7d7bc99a5515add373d698dd0dcea01150312fce48d4701e793d6d943dc9c70e615889f8a4b46ddb6db1932512ef132e71dfe77c26be37dc67e1b981149b55db866e43b569009c79a717e80e15b9149b502cf173b8c1e449038d8ce9dd369320c42f07e33914d8cd757c657e5aa8ece8ad3f9dd830dc36a2c2722972c8e5281e918d3aad52c5dd3f65e1f7ad1a5c8cf1f0427658a046e1db6d5e1ab68a7cdaa46466936420c0b82bc7ab4859a66b99211437a10774e6d865c3528fef7f050a801dd3c1178e64b3849bfbecb013dde8847bd4840e3fcd7237089824c80e08d5280ea9a091536e1930bbf300ad4d33a0798e82e2e0f4d635feee8ee8400a9915b16355220134f95f9eca2c3f2e49acc8c299a4a8194db97beb9dde95178e9ca418d8887e0bbff4639838872018214e342d87f4d6a36c0da944642e30b6befff5635bf5bee70b2b89bf66f5d14db9e49a87c26eb12a434260c938a191f5c3ce175538d7ffc2b9f725e39ee10de75e92edddfa09d7d13c83dbe9b5351d45a85fae5722f66be218e8406636c799b03737274d76d5a6aefb32b3a87804a17922ecdfb714bfc75ddec81a5aa8254142eb6cb590044c06618b7ded48ab2efb1d67dd1ff434e57983a6dd9abbb6d651b49333ce84c7d7eae0267522d111ac8c3b67bed46a637d47c49e9b3603afbc92d6f4bbe837235b40d2434e1ceb773e74c1f905e62d7a1b3d925fac7ade285244b76c931203d92776c46a868d2a9159382e4ad1a7dbafa6ae3edc36e7cc0821dbe4cc118c905206bc92a1935454c0d0c08a027237c87c0d3ea136f2757c9d667035cb93ce99c3b64f68bd2316ea15028c2759b563097efcd9da2c358284a534e1a10ee4d24d5cfebe35fa2bbb9740085b3f02dcd8062ed7cfd8e2c3103b23746e1a53e2001177d0c4b286567ecda6dd0b088fd4ffed35a9cef862c71a3915355cb3d6ec49df2a51eb7275da9e9cca942e0cc1fd32343e3661fa206c3ce7404e8541ff7329aff818d47047eca368bb68822043f122efe2ed6c15cebbf4c232a23e410b775c39e1a94f26d60a9227b0dbab63b6bb739cfbd1012e825200040be7515ab446c1515e8a702cdf2156e224e413bb62e00b0db68cd632b9f40342250813a4b6623ecb3e2f305e5bd8968e0b835f6a9f662dc2aa690b61fb6cd355f2e4a9d682f93e5423723cb1d36c662417e4734276f83ff8928a7b6fc5c1a0fbe235f9c29b05cd1035fe980b9fb364386a15ed53a963283d859e8894fa7613c349b61c9c316c3a4e1b181b462c09a8c939548609065d09058e439d1c790917b501f89545b590a35ea0a8a8ed58bcafecea86e6bce198f550479822c59e644fe898c945811a3181c511543344453ac9be4571b1143909d7bbdd687905faaac3ff6d3badeee8db04adb6ee0718b44d4d9a43e5d8ef667cb41ba9491a58b6ad13d9c63d181d772a60cd56ac690075b432ad4e96e8e40a25a2629fb7669de93cbf4a01f94ee59748c539848a75d0f50babca2300823841ec8efab8d0ff6eef3aac82aae8419020d8a250415a269ceebe513e5499593da06c73678cb5b0dab841fb473ed90102ca2d7e57ac299aef53e159ce5bdab402fad84352b87f39bb7072cc695fb54375762ef29e6cae368ff03bd617ab10c0bb2eb8e04c10bd49ea1c10893691b825557948d5db2abb44b0272c37e8ea0735b40c13bcd889132fe66d6a87956a4e456ebb36ca65b570e5dc4b4368ab298e9de6c4ebfdb5c1c11b1dcafe46202f4c55aee356b424964bcc2673c5531c6d38b6eea845c72d4e614edbb4a5738621666fee74ecaa5c0030403cf9e958aafa2a8b2330a69db8a3343dbef5de49eabeae054a37fdc72bfe38ed8cf771960a73d72683a608ba99198ad8536cfea4d51262a1c328c37ef8fbfae0e1705182e2ffe4912767c055c5430f21997c726bb77920df39913b492638d90612f0309a8f5f36492cef85f74a1852b0f255c385cf1f361c7229a9d105f95c5adcd35e2087b9158b88f31a793bcb5ec55760e6018d456f81d58690c9dff33c33cbc89a1a59759b490a058f6b14ddb7d9c1754c5d9304b8dda6b55104118e85dbc819a6b810e59a2f02f780819d0e4781d9a79deb97145a1890a32d4696faf297d9fe486526faf7420cf4f348c45cd33105ef83c577704fa3403d7398980977eee4c55e4a9491542b321f7bb6049ec70562e89cd4a652d62b5953eb0166f62d6fd4b94b1955a18150f7821ee2df0fc7b1fa04ce475d6dcca6cbacd49df39f4071a3d71188121946cc8b5aa5738adb64c2ca9396cabc197e4525667016747aa4a3beed3037f2e954f8c702376b40d484d8ee7deb1c191c97ff46253cf4faa2b1946131a9fb8613ffa42ab8c2ee5bcc991340974db9ae2352cf0134837e66d7059467404635dff24828d063f19d6a1bd69d8130cc8af09e8ba2ed67bf5a37fd40598b5fa9496f995c916a00d4bc7493092cbf1834d04454200192055c438290032252c5d2e4fe7b01464333b1963fd569b2c166ca21b4a2949adb4e8c6e212816b24fe5bcfea80c1f259b9644099a9d50c5203257cf9d7daecef955e61a565fcb5b176fac194b7ac9b93cbc7ae8a29269c2adf4a1d0aad105f3990ca45969958978b2836e2c1cef3ce529cee4433fc411a7702c44874e81ec260888dcf613858cc4e2c2e7acac17310fe247f3708b24a6b67e5d8b0dddcdc479c6c920a6cbb757c8dfd757157899910b44b2997c507667ffe591ba3591ee49d1c936562771b151594b6d2f6734bc5c2b015eb47d522927ce924d91e32551f224eae5377903734552272fd971346e76aefdf8cf1084534e709e677b2d46dbd4cfeaafdfe75f53b3e60b67041dec483b4fb1bc8d079c43223fe3bfd8eb2fc3a5b3a2a9efd9e2610436621558ee5cad7454af9e1b78e69f75e6b766f8c31b549f7f80a284b27a5750b4fa38034f9e14d1144662c5d8a7d182e7686d4f9eac7ac4ad2e188770ee8c2d5df80b6a51ca0660399b3ccddbafa70ab0168f51e11bf7349e15f9907effc042a2d7a7fd643cd178fe487f341683549204737dd1bcba23088288bf20f24ba21c631861a5613c9486259ad682cf30f4e7bc318f4bf2e02e365010fe3c457f7abbc6ba2c2fdf6eed6613cf19b023d6c7e663ee8167b74b89b3868b936daa0f0f1590e9cdce64676ce3a43975f21b202eceea74961f22bdeccf5f6454f842119b8ab08238c0b5d27a61ece8a5b5a6597e0f37700d495f62d056e89b2727ba36bc9ae4a2535795d40cfd25cc46f25997469d734216ba882440d0ccb61ece35999a18e087f3c0afd7f4616cd4b38a04a0f909fe740c3a6e050e853a7d779d1c09ccd4d3a32797e89e88af67ff086555713e08c98a78af3a7738003ac8938de341ae22b6c122042c48852a1f990550c9bcd5715c816c5e566c7384ee7ea3f6ddcdf17ebc430a4945a08f6bc9190bca30b471237dbf8e699f81e7e8139ac03663acef9f96df88c46651ab5ef3827acd5bbfc0560c186ccd2a36792a959eb6477d589e0e2e80ead9870097a94dd1785fd57d2b694d313229f10b5b1d281a6cc27403e3479289f97d8710c2d5b906d615ab99145c7b423c670020be1efb2cb85351fbcfaf23f177d4c40ca8c4bc8837390f286af79f9ad2931afa7c0f93f2b349d0c14ad6295ab7dd5253e5ae301a8bdb91421e6bce846713330a519d13c50fb2a9c2c858dcb1f53ac0fd710e9cd81f07964ce5a480c22814362ba25b3f8966413bb33fb5f121a3b5a8aa6fa99cb979d0e6849b8c42a986ff3fdc610b720b1a4ebb703539c8e127cacb64c1b6c56eaa2f1f7fc5d0b8dcef0c9cedbd3bed4809bf88847fe620f5c7284a2edb929ec63e406292f79480bc2683e428a0a18fd92cec4600c9768567e40b368db3c4d0ac77414938eaa067a6e267352c62fb2caebafa86f8e01c4c475ad2d43f1d877370ba0be570ac229a905ad4346b9e9e149f519d0cdb8bc3b22246e2be7e4bab8039bf95dbbfe64908f9862bfdbebcfcc3bacff81e5fb406afe5f50641930827db629a26595a4dd31ddca841d124e147b5783df8000c473ee3f6036a387edc95fa0eae5b14cbb499ce44a853252a462f051c829c8f81e82c58d73ecf7709743da815e47efada6feab1646304b51d052852cf2357c072ae7355493d68c6a9bed3d48a46ef43c4877a49ca3bb8177a3119ea7af17c2e385e7f4ef5caee084fa6bd3bea17b48d675b2fcbdee80617f0582769d2af3f1e2be598b364777aef106b76caa0ca5204cbfd06e4ad2f47a311a1d9532a081bd3ec899e95f50112889857fadecc09ee359a38fdb3c1abc14924a3480828dee90b3907feb8bca38da84a10d42268c957e1bb281707aceca0c2c481d96c713f89eb26c17b6e984b8680ac407e7b89e22c409bf37c5937ed8bad3132b7907084fc3001e51ac88519d89b94dbe0cd9e71e9c9d5cc6035daabd100ab7f0272d64f80350e63feef4835f8edcd3fd8f5680c2510d9e9a439f5f7275858b5aeeccc1b398063660ab30c1719cc1081faeb44673db55ce926da91d032a03542543feb38d29567d9045aefc2617e7488c41a2da007a212870a285445786fa8e4f6e0c7dcf5061b6ee00019c1bd4ce4c3e7bbf4e05916e1a249311c45ffe936c2e96300f4597e2d4f6417981f86b9f1f55a159966ba73445aa4721fd24bebcf45835344ffe3e1163fb56bec03f3b26afdfbd771e15946f812db9b9dc715a8ca8d28161c00f655c7fb6c56ad110d6ae7089383eda5755c69e3216e58b27fec5d06bfaf1c1569f39e1a966d881333732e8d05189fc4707edd8dd530513aa2778d657c294be7eb2ab0fb688eead542565d3de002cf1aeb31b9ab02e7f9de2c835702e154cb42540abde0e33421c5d7d35b79c3c9a79cae1cfa132a119441431436f83501fd0c70739309be21acef074908ee5647b69f5b53fb2aab82303b73a8be0ed3bcbf86813c7e01976aebcb21e816525f91412e2b383c74c95f152460b7ae986338bd1fec3c74e1fc9ef292db45391d2a0984a40650effb77c72ade8090c984c7b1f5b57929dfa3e11cef9fc871b86ea487cfe68bda93335c14c48e5c9dd14ee3d0f2a040f7af5424fb4789b32a5de0a8d57dddd8087b9ae3c67d29ad2b3c18bd94c5e18e62439860e5db11704edb94e8a6001c8bf65e751c15738ce727a1fcd95430d00859706041f08d1a88ca7070e3987c5157773e187e878850243b4fb04b4a760d1c6bf8319d0e4dac0167292198b085d4aebc9522816068e157b5afcc4b91bf99132982fb7c637d6760ab0a5cc8d7cb7c42b4e58b385ea609fa98108c19cd561f98501a8aa1860ce72c927f32c69e87e38cd807a082623d54035e2d5587e86b4dc6a7037262cdaff9b0e3be87c5b63e73d1f693eefb2f757524c490e77507da0bd0f374977d1d380d42ea0a82760ef26a506feaf5ee77d401d1ed1d1728529eec13f610bbcd3521674ed8b61c570216cb55e0e9245883cccf79f4e6c88bd31f2e69e6bb91c313fdc2e788daeac36e63036de0cf858f2d6ff4dcd5432bbbfb463c9d3ae088427adf173afcf66e9a3fcd8c29313dee800ee7362bbab1b544f0ab09b6aecd75a8e18d3f4eea9469f30229faa74bfcdf447164f53bb9490b88731bd4e69a44ed70495a8a41271c63519499c931ff76f5291a5dff381bac2be1a76b2e13dd58cc79067554186a574a3df62d2150e65b9037b5fe3c006662b72a4bcba9a0533cfb25b81867f5346b87c6d26cdcdc6b2b3b966b8112ba15c224551d40166bed139dc0fc2f94ec591046928ad6dfe65022ca69fa015a3e88b4a1fdfe76c74b6318496117c87f0b03179c75465a0bf992f6deaf3f63547c4fc8f08e6dfc485af8834a16e08df8dad5cb5da14ef27005b822e27bc6c3fd108aabdf379ed99e32428d9df75b07a979dcacf1e4f6b8cc72b37d103d64df8ed7dab88b6a3f19caf5376205cc643caf723d137e55a56ea8990067bc5b13f3fee86311c1a2ca286d301e5b9f1a1fb3a55d7c8eab1471e980ce83d3f6901c554424ac77de04e45d3210d9992e6e124bdc520ae0acf8b9f59a1876d2d9a33de60d60f56c754e3477a3fa31a324438d9c22e4e9b7b6000d3d13f0e238e896a4b36f7ab6c859a1f0a55da9e58acf130c11d7f0a13f74b98449d1191726c4a4c42486be144aabb1c36889401ddfb4a639e07242dfaa9b366f4a8746715afeb1f7107041d7ad44c6e1a175760809b70f64ed0b839dd8139aef457df6939dcdf5972d4dcbdaf8fd4aa05334f4123212d341ccf87b6160027d867fd7ffc88b26577fd969b465a6525d5236225def86b0c7d0e1ef2d6d34fbf8978605cc13c422abdebcbc7131b9a8db23d0070afc9b4ab1af8da70c263490e4318fd48b29145e21f6af5efceb049d9cc89d359ed66fdc581b20a004179bce9439f6ae4890f6eb7df4baf4156bb27fbe3bb5e3496023f088298c9710c4030bf80d1edfc4b875511d0028a5b97410a66872e41459ff4feb96909f1b4cca2aac05bbfdca78fb01ce527f039a798026783a262e21c1527467986e5096145eb5158762e523e01c93d08c5b1fa07072499116897fd8eebb09dd766c368e14012b9f57ba38544ea1b86211ff2bb92b4d1d90c39082f83aa84eaa767f1e88196f14f6a01d05e50e6571126a26a8dac41cbd6c5cf87009a3a39b4d4c9876cac26e4243e3c30cb876c6a4a4b640bc34b85962491fe3b84b13e474d87df194cce4541302921b809206bfb6da107b4f67e8bfc86002ac8066c3c41141dc9e3804c1ee9cabdbfdd2c9cea561057123dc1c300014d8181ac40dde7b85cb479314ebac3101a2a6f4e5cbf75bcff622d59c56100972b195e74d1bd42ca50a6aa902355629bd3c56f69c0e8f7f0d1a95f5c273e74ac2dcc741dd10bfbefe43eab29cd7732bdd2241dcbdeaa4ac9be3a0ef4b90e776998fcd6048d856bc03f9c6d8f211f9c129f51274fe8536458969dc7f335e03ceb71af792b69bbaea8558d4df657fcca3b7e21c8ac7fa6a6b936d72fc7cf8e6466057b5335bbcce433fe376108742d863669ef918d8fb11b1a8d7166920774aea76505f9cae3c086f7bdf194b264e9d79ec15faf1f24a8b43b2e06e7ea5f00d14950ce40fb21dd2131343e5abd191b073f3269e52a5c421fb84dbc53a94ddbfd0ad524cac9a7682159ea66c576d521feaab7e715355ad5e398348eb24e46cdb7a13a9128a555d249ee6e7607511a41abbb6694e98eb842397ec6b89e05fa3bb631c78afea89a712fef221f4265b5b924ced8e1b5b887d1f149d603db402968e105b9e9ef65e07a856f1d3042f5cb50cae63343203d6a5323669f44155980d54f08f1848338f6d0e6318e7a34ca916e02f841bfa19d55f97fc9cc97253706d9097ceec2ea29d100ded65baafc807d04e278d29390c06aead845bdc1f4399e0b978eec93db437e9ab48bc9ab2145f2bf64fbd7a65f9434c9bb4bc56a5af0ddcf4469985fc2aeaaba9327e525ea3346b386ddc4b0c488aca3327b999c4c783a3b1cc113f74957d82839bc21e762ae84a2371dacdede965138dff18c13756894f8e653193cd4e30abde0e245177f99d5ad18480d7573f7c38de87038cfa95e3103cab8a5242dc14cc709a947d71fb7f6e2ac94004a5312e677d6de8801e505faa479268e8b39409cda6b22af22062899f1be31f7a85987d87534e97e38e481b9e6d31a6ea1cb812465b7790fd4a3a54921423e0db454862422ed7e0b9e9c555e7e68d69d5f5a6081d02dc15e3f21ff367e3a28a2105b921a56014c460392c3756f46e68269d421c8999eefdc561dd55fc6c5e9e8590319a68d5f7cf55b49c1f652dc17b583f6eebb4961cf9ab224a8329363291bd6cca9d9450dc53d06a350068b63b7f8110cdc2fa53f967e0c335a295dd394c7c3c40d1b9d0c6259ddb3a12a899289ad24bfb1f387f382898db96fd6d9008a8a35b69dd9e2b46412d7c40c18490c85d0d5999fcc6595deb133b2ca5bf2f1ca515fea11214b93a6d5135394b814de5eb4f7de36aa9e03265b3a1c49336303ad921678735a1ab099bcef54d356a42e40b978ebec5bd485e004c518bfb45d7bb96a3cb6853ab2137b56a67cf226c1cfea5d9896250095094c77526f6b01a5f3b961c640fe562930a3b8cbc28c33068b7202ad1f58b018fb932f561112342bf4ae5a4c42382763447418cd73b17ea699f55e93c9b5a264404c551bca9139e775806a95325eee7a6ebbda8325311ba6b7a9f62de628fa6ca851c0d06189af0c8f653aa3fe9f021001f7b3991d1789358d81483a637fa626b14d3ed20f15683eecd854b2340d0f7c9fd1b5e13044b5f244ed8b768848b8c94bf6a8f19e3ee4a7aa8301cca20e6693c3682269720ee00bdf10b8ebe2ca6eaf5a4467b77ac57da0d26a8e4fa1457e9dff641b13eeebea2a10ba2e45163bd10cfccab00f922e537da013504a6c6b36aba2920152c166f2c35faa07acc4700ad002c80aeff49e0e59d1d94a48aaf1edcd046004ab25d54550344b03f39344cc13d448216e45d95119adb78415ef988a926dd339ec61ccb251b3f4f401306fbb92347fb9a3a4790302fff30a054a8308bc564599ba701fd1edaa032a83b38ab3e7ef0aae8f95d272f09bd1c0db8b0a969817aaf8663019f1988881952a031fa12aefa9127af9ea1d546202af632b2f0adf8eb4b71d6b805a69724229c235561a2f077261c569950a84325b93d943419d4e7f12727ac4ad2935c400c92ec2646f559442cbc1eabdd71c42502dd9b9fa09f1599ad192ffb88376264fe87cae0e709e24419890140397492169e08d13c18f56e253855308ae45511895a51ae8ecb25b827e421f1786b993f056f7b6395ba315fc5a26a63d46117b68842025a5c0baab6adbc690d6df7bb1b8b11fccae924a1ca47bd85ed1d4016c86f59cd5e9d419511c558b13c5a869dad6b2a7977b0d971da07fd78be9270af41021772040247dd453ee0d0b70f49ef64597d57838edb1d5694fb79a5ff860124c8cbc27a6f0bfd502bfefd0fc1af2385de8000d536cf5d17b112c5312a1c9389071adc05cffc88c3d728df77492858b5941c293acd6b51158e828bcd86745996a8595065c9effc07d0f6f6dcd352bbd4c02bfa155742abe0a8a9246c99aecc26cdc98656be51ffbd36488274dbf804211670149715e5a6f160ea2f59cdef407c0c40407970f192e43ebc3ffc4ca366410883ffd4d255d80bd7ffd6173909ea609a2fe069fe01b68d992eaa06f8b1421e1bc91ce0f7ac8fda94c13574271c6ce6796dedea845e07837dc980938767e9fe9a4101a3eaef638cc7bb81e1058190ecc65b7e8fe63d97b84b6e64630b0366522c0abfdf7d65793a27f9c1741963f191f288baa5b99c576d3c7914c57e26a2f278acbae79366f4713ef5f5fb47b91e91f6c11fd7b78c6890650b7df0a0dee1023f648e3c59f441aa388cd389049b752ded701779252e48cc1bb54fe753b55576d75d2160808a3b7a8e95a5ef1ff0c8d4623c3f2b7a3dbff6c581095aaf764dfe5ee3322fedf83837cff0c588db9b7aafa71f2cae7553b1b30fe01ba1a105e73269eb895374e5ec23bc7c65a117201f8039c7f1bb78874628f31d9f49ab0b7a3cdc77308771ab20b284c97a88fe3bf5070fc07d74ef8e6ea41f821ef4d112721c1bb7e8c2ddb24c786c9b50c4f7bcd881a8eb06d3cad4d25816538df3fed52f489b436c273fac759bf23d19e03c989e0a750344669e4fadf6de31515c8b8caba42ac8098498a2bf8c2ceae6a8344eaafd2685950c092d5f8f409a9de3dc8e3d1e240cfd5d93db48fe444bb3ab21923aac67e280ad19610000bcafa66bb234899292aa383f369b36840edaf87d711a6eebe3f6ca36f9ac57233aa8ba9ef00a4d3950b65d7de45a83f4c5ddb278dfccd5b863900d0df7eaf7c5ffa2a4c01271d81460b5b082b711139b5912f7caa5c921e0e51a8961cda8b7d4827ec904b73eef713ca1a412a3aabc0d98339444832ba3250415d76f05f232bdd913725b691027d8e1b6afc9cf85de94c5564e6499325ff061c5052cd411dd24088c838d0ded31fd528afab8896106efe09421b2e2338833676be3e4b38f90c6a0a0ad386d3942166d9724dffb634134e833d8d9fa6f3521046d2b06b86e382460307335fae537994df8e9097e8a6fd9540461bfcfb7d38e04e6ad89150dfda645e38e85c56f1a77bf324b5d4d1e6e4c1c88040086e8a27835c5516d673b5ea21d594152268b6be7ea17b0321732b8426d14d14136c45189c71659aae40f17e53eff9831043c36ab351fc725e7b76c86f8af04b45a3cd30e140c307d7e6a5170be8818e7f3bf4438b51ecb4ea131b9211fa24cde3502892d01bbe1b80afc1f3220545f1221cf8e63489dc1090d9cc267d5f0b40620afbcf52bcc72986981056619813e70a0e01ce69d1d5dfe33109384a3f0b7eadec70f5d0ef1410080874dd3bb1d3039cb53ac4fe4fcf3b3400f0a826a7cac6c29c2ea0cc55b3faaab89b2fe659658afb0324b5fa88413f5e3c9e88d95b3aff551e0501270f3276d4255ee4ec61dc4e168da379b8595e82b3090746a526c44f3939c4e99a0dd1168e220c9a4b7f211d99be5238b795fc537e6603c12239f61adf2eebd206792bce3f640de36931a8346dfdf4ed0cb8e1b9121f0bbf54f855457c29b2be6533a4a3d2d55ca4e8e6db7cd0a99acb665cc226619f28f3fcf0802dc9d25fe08adf3f334ca00a60179b42866be9fde78cbaa2f9813a77177b43cbcf389b9dab04964902acb9c772223ed5fa44758161f0f3c4cf981cbd5ff2bd08697aad7f88d513bc704def6ee42808ff59746a549f7ea2eb9111e04e95dbe1e5ed8d9d0cceff04a510e171c2d14b6d9afb47095007f1fb54dae50145917977f9d3ce644ff82eea395b126ae061a9827f09ce78468879d966792ec076bfc5b82fc8c9ca629da2687e6b5954c9f3fd8988afd62f8cc9b9c83ef76a72532cf39b6043e88d239bcfaa98f7921e4fa7918344c72504346b3ffa4e11d21e583e158794ba81441485b0f56b3477f05c39bd3fe487baf2b2cc88021798012ab372ed52ce9c1bfd59eeeebe8a8c43c282efb67adaab8f3da4fe51f0de49861bb9132e080b12de069c2926294f7d406227c27e021af46c9dbcef9751327b532eb40089afe67013b2ff07e0753d4c3d8501371d003ba39a7f1fa5071c17433632246cef52c4cb9a0b03278d00cbd276660a299711f87568623d6fb922d8b88df08e6067856ce08512c1674a9799dc8989f531f701c3df3cc5bd92010f94755d356a127ec09a8ad678fb78bb20142c1b5345f49160d4d6dad6023adf0720579895011359e4c6367d384d21cd66c9133f007638ee9a61c5f8a24033988d7704062f3312cd7a62295733e7d1d566439bc080dd22b5c3142ff94e0aa3e2da5a93e67456915c581716b15a19d9799781ce5c4c6e7b4e0b37441043f121861630ab2e212bfb68803b3167917e8f43a37bb1b0d36976b15110e6b68a6af3da5c57da624066534b067e3c66d027dbb01212eb2ac8d27dbbcae07963152910e3701ceadc59bdf1fa214bb6adddb6cc1b35c678cc5c33954521cb2da8818695c466dedab90d1dba50467bf57193a5be443e54de8ccdab19d49cff935bbb243c6bb937ea3c022b760b041d1a28aa78960af9a25695d705c69e79ca32d7851894cabc222f87414a211ece9065af25dc310872de08c461330999d20c66fd8db34be7f1379f4138e6b9c139dd95fcefa1d9ff38ab3c8ab232da992295e98d7d7404842003b2f1df18fcb9e54af7bf452cadc81d6676c0fdccf5691e4917a142d1a53aca4352192c932fd22caab5241dae9a35a09a2a235a579b4793a111f86a3c14bbb20f30676988a4b941875cc8a77d808c32a3137cc078ff8dc4512eea20a486ff1c12e70108cb91e33aae52c63f70ee74227e36af85519724df0c07f85f8b49540be234f65eacff3eaf8a8c7c2c01653445351a3c2136c85a4aed8b282171a2388d2990e0257a2eec2edf8fefe381ca28b1887bc9d718174191927a1b8b8fbad14c181665781a5f2c9b14df582cf0b8bd846a7d0cba8217a4cbc166ec3820a9af720c84561eb20cefc9814f7e0529e2a2c0fcc5ac7a7356c2cbb15b8624edf1e6180d52d302cf4c2497e9f6acf06cd40505800cb5228c058bc3d4631e5376f3d6d5a8a40bbf0861e39205231866935810076e9452426ef4cf0ba61c99580fac6d07f080beb2da5246d99a98cd04c81223321a327e26537b75a05af5511ab8ad86ab97d040ca85e8e6f52747e7c4d0cb2fcc67467d9735d1fae1ddda2dfc055e5199e27741d4c8cdae0074caf8f3fe550dc16f6fd438631cb4f19192e780e8783ee51bcf31d82e8fb27523f9246b62a612160dced38d113c04c58cee76b74ed3cf35306845e46f1582771dfb6a8d54f654797e594629eb908cc0913b05f3d828328fbd60d4c7b5459e34323249e9955dfb3f347fea9c64b8c14c0a85f3c93b55b6a810b9f673e1f27bf54bf2d99be7379d294790c885d6d0451a2e8ae11d094c7607f998bcb5a5f38ec0e826fed4aa96781ccdd7a32e5dd49f64e926c7fcc3ce39bdd50c05ebb77f1348713d19d6c8a1ab5351fa02a8869efe7cb19c837452c61819b321ced91862f715c79345ee116c477ded16d0332ee3ad28a96fd25a736631681c61bcfe5dd6980e24fd4ab99d67bd0fc1229336deb66c0c56d74a25bdff4dad698e06e04249c13192678228eb4f621471b9dd2c9c928edbda8d2b9ef362c8c2f264ecd149373ceb6e815c5c1606a0ed32810c7b180f73a40cbb957e39ec7c7800bca7339905f285aa4954964752601c7a70c394083ac900f6dd5858ac3bdc716f4e0da045756866892fc73e0d81493d31309f2be8f6c3c3511987d7d0370f1f4c65b7c405a372a8aa889dc17dac3f58e7c674fbf9bdaa8d45b9f7d2f9e4b09795f22749b899eae5e68ab4a5c47115d7ed750fe52eca03c7a7026db6c791fefe28914219bfcddc387ba6b13c07bcafaf532e150e13c6946bc7c1b6b792743e00a7216449636a178aa5ec460deefb3634437b1c42ab7e73ff2cb8acccf3c43cc26506915d9e6d361bd4c89b3edb9549f20b1e27f20cb0d5510448cfc8add207b8f484a333d6bfcf0153fea48968f576e67ff203145c01b568bfd1a312f39b94ecbb17c2a0983457027446f65b8f5541df1b4685f58c1fa4be22b7138778339464ae9854e3d9c6ce903b340f3722a6aa5728dd6cf84ee839835e846edaa514a258829edc3e5ed213b6934279d991ef869a31dadd87500c97869814907cfded368026a22f6c45fee41857c63a072342c362a3bc42c2915fa5d749ebdacd11537819edcc7acadbec0b2c1127f0d178ae624d2151e02bafaf4808cb79a09fcf6242fefe1c290d7be846b3b5718d9c65263ca3d227406242c3113e928d985dc87cf3529e127968b22995666a91eaa2e13b0b847b3fc414fe029e09512101b5594b6f35adb65c0c2a0ccc2f4de718fe362fda72cb9b09d47948369651dd33e0650bab284a8e90a3ed8be238b3adeabfb70da0f298ad3fad9191c55806a8cba113a828a1d00f9819da3e6b79aac5081c5cac0fc43b4cc58b70a95bc29808836b7bd43117374aee0c0505b8c29d9f3881b88c92bb9c8075a5a9e372705ac790c1fb2b4872f846bc22a1e953acbf6fce12365c4cf0205741ca697126542114ccdc63762edd0b3baa81d7ac3e0da96e793d62d64ed90331449bf2981378c41134aef26d5317dbea4c43ce31170a248a453ed061d63ca0ff480148bc942b9949ca048985275515d7746bb5d43c9c00dc77d0a99959fa8eb756d386173f5ee37dd7f6f51df6e017c6d8c3c490afda2181a91e36f2c6f9756254573ee5ba88eedab856bebf6a8db5b516abd8bc0bf9af41c497de0b055b8e13be4d559ee4985de48642b70c0a90351ff8c4ebf5aed225aad706e1a3ea228a362c111cebe76a5b7b6769299b3f085607e1fc5ac4ec0dcf5c821ac39532c79dc92e887841739e6a157983cc94faeeb89b9e9e06ded239362ccec9716023a0eae23aaf34e7d5dd7261fe8076cb862faea0e3c79e77dd846e5d131f1f60f650a789de05dc7e55a127c0779c6c113bcb03a0d35cd41d2d39e664e550f41c9364ff91fd711f77864e8a68edbe4b130ab5742ea278f803e4c764e6a26278142144af79f36d975a66e8ef7ffa4a402a83485b25e50251f9ee11a9ef78a9404ab0c7da29884e23996d34915404e317297a81fa9678ba77361778a69116bb00a1934e84913de2f4229d6a141fec94bdc1c2d741f19d4ac74e335ad723e5c3baa6e6c9b1343876bdedc9c5903108ca6cb7c159a6f491d9324261cdcaf23268c8b214383c1df4ce66cd23708c362789221258841414ff4021187b8c55e1ec4abc65eee32a39b143f63822843c736b92eeaf6121c77d1f342359011283a0048d8ecbf43a51f4b038ee2bc05095668cf305dd2902c1ee8d90d25285b69c14f76034ddcfd8eed0f7c4847ff280362a9b1c52fa903c069f77b54264f92de78cf5356866eeb704c3ea04ee3026454314b4313be067a522841ef6c118465c71a3bdcd8679cbf0a063f1228ae65ef6010ff81cf3103e99eaf712376399523e237df3f5bd0178bcf32b62b7c060db0b39873328ba8a613272bbb70db92406ac2d32e78d5530f47b72a4f8ad861fa244373adc90225b43afd31d31a2c84adddd67b39c99020df962b40ac46733134cb8b1f8a423c68a36c8c7396ccb451a8f5b86853fa3db10f8ab2513f37a77d1afbe1108923790191f78451562187e8aa902ef17d95d6276d3624590787837cd1eb1eb27ba7b333a3db70e4bee2ef2b24f5781f89c2fc2878ba224eb603b803911ce6a52a0b64e31330899f6dc33e3ea703c55a9f59759ebfdfe693083e1df7863d5f4c947e89c70956db5f288b7e945937d5193773c7711109500f6ac462f6acc8d5511f48810efdecc07b050f8894b88cb38e599c6f05f0454c1eae114b101b5a8f4788dde8d86b63c1cb63e1a768c15b6f177173c1e090cce15d4ce19bd347968202593ce2aad921c6ed4c597760b2d46cacc385d6152fb772ec7b623f82861fd4a58cd4b2ca7166cfcfd9e8b0697523d8afd76a830a0f8dd444e10c3d1b079013ac2efe75af9aed936bc231aa7b70db348cc165bd04813d905753bc938b5a8207dbe5236d9fbc16e03ea99a19a3c7abb40d9c827dd7c42397ec1f3c05a35248ae885c35e2ce7a1987e6aa3bf419f2575794f2d9652a536e32cb9a1fb267c07d8d1acdaef56a0b96d2e03f2805fce1e7bdbc3cf8bf8fc58496f2179652d2b93d683115518ce2287b54230b6d832a8b146ec6e0556f03bbc1277fadf80d6cfef7f09bc5bbd9affe721e37241f81430073a753b7e40ca030afae8031d76bcc314dd48857c4b5193eb9e46113ffedbb21d96949a3d168c01d57d434c236d80d632bc79f52ed621c650416098a1d07692eaea697160bdfe002ba6b7b7b46a20a44a7afd6b2dd6faf587fa1122848d5eb62e427a1cc938fcb369157a781e4986249d9244fb288b83178aba47bc6862a919cebc6fc4fe762ecd1cd8e7aaed6609efc1d3d07165774ed364f9cfaf18263c780d278dc5bcd749549a8991d645d96dda1e1a340759cc9c84b4b7563c2e0e1b3be371a010ba4e51702553bc1f80163a385b623fa23a4f69bdcad868184b79ceddc22d636d1eb4f5812ab7150751869979b34f073475e5a78a42dbee3e75e99a17d76a846f9ec3f59bfd6ae2b64ac19df522c55f4410b3a7d9434e5e62ed65452edd6c83c72cfb54846d8e80154b374b0ec9992133bb4d69665963e7cecd9ec845a491411388596d5f045aa0f59bce7a7987e01991774268d059b1bcfada3f1549a6f256331dab5d16b53993499b36fc49039629211ec63b9373e7436ffd06b9eec12ce0d651a4043138d45a51db09ff2add684091dd3aaa93e2a86aa9127cb9f025f50c5ea69c42f5d4876660e06643a6b3672294c7debef16c2b72152cf3a8e9ee9135f71403392da8f50570f243ff849d547e1f673b61e6b55ce2387de17a44984fdc69c23ad878175dcd3eaf88d8d3969087b4c9f705b467f1e6dae1dca7450802bec3efacc9f74eacb96aaef9e3374e3e38daff078c0cd9dd255ba0e529332b76aa89f38774fffbef4ab8181194921b066bb422634d30196f3ab670dd54a751816b6f2e7511ed904ee6d3c26c43e3712c906e82bc26456f1b2ad50358c0843e34e24d825af836c839f1923025686ac78b55cd21f1c1b310c3e289a328aa6462c3b168a84f0d520debc2bf1b928e057900b7dd265cc88d6ab770044c8d8ccc71e2aff732a1f0633abc0a854c71a821f9f601df43bbe0f32fd8c881d240aedfd51ebc5f2ad756511f424c9d0bec4a2acf8c565ce0cf7dcc9db824cbc533ccff2bee39cdb8dcb349559fc96f339c6b45120c6d769f040817e3a1996be3394d1d91a0279683e055242d9058fa4dd3be1be9a5b3906133e85908e5f5648537bd0624f3db495feeacca677839dff1037c4e49a39cdeab74c0e0b2b70d202fb600e50bb849b72084d041dc6b5152a3c085e83b7a6901fd5dde3bfb34adf4fb25c419ed2bd6fe5257e2d0554dbfe1ee149fbfcc0e6505c2748bb6a9363c20eb6592430b513a1a11a5f625053295605ccf3da99ba3cce57778ce9ffd9547e9fa7fbf060f62e9c1e72073940dd91dac606c1749b52fa160e37872480dc68503186c3443cb84a0d2082c7ba74bd36d2ef8b37810f5287ae515003124bdac38ff463a8b15534138a28bef1ffc98d7f84f19b1891525ed222d58559453f94210f5f64bd52a64bd48cfc78f9463ce5a9dd513e9b78202c136125440f0d48ec661d5430dc5eb4290ef8821249bd386e81149630b9033192efd29fc9c7cecbcdae35b7a51319263f60fbfd6633333029f7915cba2d0672a0e6ce39df05a640008406f2d44ac75a48eea41154c8d9acc656813b0c2fe5b8310ababf5e1e5e3b8d1d48aeccb7148030c536a6d25e58313669bb26b42d3184f3ef7d7b5da90b863f9e606b52525eda167417ed90620b7c5d24db097ccbbf91ef2799c6e4f7ed1c4ed64c9511eb9e81351b95e65a530245b9fba458864d657be6ee049ab7393afeca328b40ffeb05cf55f8009d7b6d33c9259640560793f5ad89b1d0194bbb5425bcad2e0ca9a29daa439ad8766c7e3f9fa3a148a3365c3f875a6b5935bbd89ef5774d7286156f9e6f84ca5aca9f96d52ffecfba5ebf90011b62a006304a9a954599f3c9207620a5842aa9c21b4c472114f21d88b7cb8110c40cb96a8a34ad68cc7e5baca15f4c8c36bce0ae69fe0a55e634a12c8af12b3d18716ebb0d615dc842a723972b777b3ad31f10a3d5717a9599ac13ac9708a3130070d24b20d6eaad36be5e54ad68db1881eb9ea5ca5d59229497fa867f71f3c01620061e3befab486634d8b8503e00ebac2650ab0b84b346368c7693f2c4a6fa3d3ef866fe5547ff6f0c698614d1f2aad7565720a5622d81d43e5883e68d794192d8472fb13e0775dab45cd691ce41ae5e13191320f9445626e0be338d185bd9e11a8b5768e0b1cbe590273a5c18d8ebcf7fa57022b4862c255708308344ab578507d623212413b9c8b61923370fab0bf964e3e69fbc96f041acd551da28dfb397965ea6b8a841a65fe72fac4368c9a7a64492e6655e009eecec9c65c0f9ff59cc21d2855d52a71b0887914e4f14ae31accfb167d2af392e216df38ff5e994661a5214ffd584828af845572d4b458fef1a2dc8df0f940b22cf9f45816838cd864a67c7f9a6f77bcc4162af8b62e0d21d788b403cd8e0b17583c66747eff81dc48eb0ff75e76368358b67f47c393081efbd4c7089400487e5279c1d0ee8911cb8d4224e25e74cb195027240b814d4483c6804502d41f2b22b490a55c5fe853174a4164499108a0d94ceb298dfcb0c07700a3c6117571a4bfd01f55fca68bc2dc7da871b0217cbabd2777e778bfd4e51e3364b8ad5be21d6bbd9167db0652bae929e4cc643ec464ede4c1bfc56f14090df8992b734eb15d9e32dba7cd0292d751bc0d20ee3aca3db7bd71dd28c85635fda57e02b60559bb0484207df1227cc0bdbd3f8b8a61a1ad6655e97608c3806dfe6bc63cc2b3817a48007fb19747348ff541f607a2cec5990520cb0ef781201d7fc60e4bc9b2fdd8825de169038243a773a0a3baed7541cdf1376cc9bcf62ea178b6cf7d1fd19277150f11b968317f6c84b86a6b3016ec39a1278ee1b110026bbda87733fc1b84b9f34cd28961b4f5687dc82f2ed3c0d91415ffb3dada8750bbaf0addf28c7e217e65054c8cdd865f0bc4f4299f112cf80c569cd98e1dfe8dd37401b04936bb97cec33e68d0b8e90230b264a236a6413ab9253568149b7a6e1d12b06dced3ca7cb6deb0aa3ba89578d91b60b14f7a929d0c439fd235b7f9ddca7e39300e1e42f1a128ec67c1746be8afcd02c2a8053a33f4a62b13e17437f9c528d1e4a79d7c833a31dd7d6dc0fccad47839d9356119edf7c63c2069beb248b8f6ef2af7d8fee38b923a6dae3e6ad911037d0df263e311443120b7b15beaac1f4787c5235043a0a857bb1feb2eac8ff7b2c4829dd386e77a5a88a854ecfeafe3945495a0374c24db61aa213796f81469e46fab7f1cf94e6abb73cf1f4fafed0f4b204530c3ed34d5aa9567c1377c425ee7f87fd4e354322efaf7a4e7c9fad746a959cc9f660153f8c60ec1e584e49ae0c79c1f568d47eaacee586f6d0460c9a1c9e5d74456920dbc38d5ad0971553953abc647752b472f3d9e810c020f1188e2491712b27e67b7c011264003d3a6bc5556be0aabb7e67a4f9884e4d4c3d6df4875680a249e7afa7c17920a78a0e0ff017794d9c74224e0a4085c439f1ad189c3f7b9a4d18d6ca0670bb7a8b950e6dc5598dc39a34edf9315dba14ab5698fc4403cee7f0497395decabf4b51e9c2dca54854119f49c55316d20f8070798c79fa5237422615f08f9ea2b50e38eb769e7967d47cf3f99c69b598c755dcfe5b0313168b253565350049b24889be68eb1ed5d1504c21cf7e5153285deb13fd3392c49f46b7e97a65a4b137194cd502b3738550b36a7b5b07255ada1c0969ae88075d7c843071418e801cb997dadf5f8a0ba800dcf9531c8816eaee273b80ef72ce41ab298fbcdd30b4fe79fc168eaaf645eb63e67c91ff6bd245e116c242e451ed7f50b5ecc856c8957effbdcbd997cc07af4c4f7a18db59ca172b986bc3239982664ab49b047c9d44349c5099b4a7164490672eb043bc3d7e0af80cdc48d993b77f37c6d5fd9a80fbb41b5b9949f31eff801676a1f167115dff2baf99dfb151b0ac75905dc7f047471a26dc45de5c7c0fcc766f8a08f5b562bae0faadf1b2c3fe50bf92317b7517615fe726a2d01da47dfeb6ed0143029b6304a465bbfde21a22e904446e2e7fb0a4b553a6111365b0c8034710542ade02b872dda57505c83d593adcbe4db5fdd8d1157cb2daf4927476a30e9d399ecc40ac8fb2240bc52f3f037829be9191e3a9e6b995b1b94db390eac70462f08c11601d9e8d7431661048c1bfa865d0130c5f85dd2f87a174d7cb2f5fd5e00b26e2266280a74f045578496ce819098c455c6ae6281a0b86226e785c1a6dfe1e33f20b5012ced39d1da46c66c1167f46eb89b9478ba681aed2cba99a1d081cfd80078fe4d6b19cb1caca3118ad997d97de1b495ed255eb4faa7abbacfc1b0e4fa1d4e54bdadc3783b3176dc2be639c1e79dc76a43ded9700778b5e39893db1da029b4d1479f7442fe691be47e39bf73bc36ac0b921f4af85049debd04b2586dae013fb46a30c191356e02aa12ebf821038fab463b42d7b8b556a685c97e9a825ab06ec4a8b5685b055802924b2cb11293cf36c597c355846b1232302ea1cc257b2abe5d6d338af9cc315ef7530065bfdf524c3fdf6a69af7fe562569a8c27a5d807a207e26a576833841eb31e2901e234b8b81fc89feef789c94ec2e51223486e7fb6a28e52fa88dd66d43cff93b2fdd2d24962a960a2c9c333e21af17f9ae3235b9e5abbf94c8bb06b7f2d1046552f6277891ac06f4ea63bfcee17313c5edf9d162de50a227fd13ac3d943c6aa56b74a3cf5023ee99c30d82b1643c02e1a02ae325ce9e55aea3d01e5354057f4444cdc145edf2d7df4f96080335a56c65f63cd7e15af6ccd1e7174d05021321ac9abe18d3cf18c5159cf679ca87faa37da69fb085403c8a00946b816e678d1f0556d09a05bf12bb2db838dbda3749424cc8ac525798cfb45b4384546cbb4e392be596039dd225a61bfbbceb59dfe8f156da4974514305d5f320a5ca00162dd9a13d8d8ee9d8da9c68e5a66765a7a5ce60d80564d2620f1884ba1bf78f925fda425e1b86597a5446db9a7541f4e14ded3ecb20378673cca8efe8aea7f557dd0d69ba47fdabd230ff48384a3759336b634fc54f00213daeb397492aaf1235cb8fb65e3a1641dcfb2d5fefb31d1e7e54b6ca5c82b726fb45d909db71ecd9f3f0da5647c6a0274169a372a6168c86fef32f283b19a402ca4f54ae876af82422d166163ac8d61d3338052ca1710b9c1f5203203a0c24a5d76fc636a4a1e8b14e3911fb5613869be801e269f6e0b0cc47f6f81a09a4fa05b21683df9d63b3ad482bc48604d0420fa596b1b4bc8e55ca31963982c71e9992f7264c0d65627ab76d9ca8af9a03b9440d81b197b0f213229bc9908610626e14965e5b30b1d194c296cf97f38ad0e7cebb7d1d7beb4768667f33479d01e1c596b97567959671d51fde77019662fb2b971feeaca313688c104ae22bdbb2dc74e2240d0587247f72eddeaaee0948548354228627bcca3407a302403415d862a868e8765e985a3374c8b6431ff33f10162c6ebf0b0ac2dcfe7399bb647ca81ae62607060ef7bf8e7a3b37f1717c04ddac09fa5e9ee04582d684b3b63eba26f6488ff71cac7938f53b8802676eec6060c97231ccf8bd391de9352888d618a4de1a6003c15270c7ee3e5a0f2ff65acfddd8bce214c8f6f6d8646d091ccdccbfcd2f8d7667eab5fae56009365bf1b89be34cdb0c2f559f005dcc717bd52103fd2914397eaf648cedb9f22f47034ea07c94127d7ba69b26176c88af82ce022af7a71153f9fc83e7c8a35afb54b78e6b569c0251168d2a0a49fc4e07bb40cefaa6acdc8b5a690e30303447bd7fe4a70ad748af7cccb03fc3acf9b02d570c9152132ed09b38a81dd9b41e73737fede3eb293cf83180733c5f9283367c990224ffef7de7526f132d23061337e8e04534aa7e52877a7c4ff32589a404b51f450e6c9b9474cfaca613ec34667ec9ebc65d43ec68347a00f2bd0fe5b29ef66eaad8e9d1b50aca1262dc299944ea6360ec1f50b61fe9b4df0ffa58388dc0a36931756652a1b6afd78410e2e41227fa57c34d5d8015b953d5a08c4e76ad72944789c5e11e1b1c90ab681b344e16d69d7d3d0f490269c48ae0ddf4699aba179f36a331893be2bfba5160776db0167c22965c2b0f528fbb6b2be4e56718aba1d5a9c29684d1a30103850c18788a1fc59638af6d01d9b2484571e82955e5628b40aaa9a609ba26ebfa042c74d8b468dcbf310f9ec42ca6ca861ec91aff427b99815bd57c5695c72d010a203cd467cb1ec39a2407e84d313d8197769322b4590710e27e00a60f4d96466a03096aa7a2c3079a9a922683c2d72764e51b072d49a08d0b785d4511716fccef58256b83a2a4e5640178b328bb7aa33e6961b8e5ee69e9028aa0539c0375e861d557202f47978badd77df735c93099ab70b8f381a29a649875b5b2dd1ee0574f7730aee8c72ead41f058248f253f82e9e785633ce675c8dda2f63e214038e369c05d929afef2cbc92f0e472baf9d677c9a1c86f7b9fdad9db10821b48f26b09b23985aec87163d45a0d1165c194659c0ee511a44fdca270a9aa711229299169e0cb6db2cdea0c490116954defb87f7a524bb55a7fa0dfb63249c45d868679da0d9cb8f621b06694ac95f74a52ab641b830ad229ee970086234d223d0b4fe690b425510fde7ea97e0cc36d0b62a5f44dff54124ec2caf68afc496528ad11bd39dda4471cffa9742159ad8e0e06370c02c88c3b6b4bd6b9070b85e9e553b90eb384a1ccdbe650bd6b16d0fde20660e946611fd38852cdebe049608cab71b90c512564ad834852188a9e23500f919cd4736a34ef553267de434d0d5ad08e979441ba4c25969f84fcc1a09c0f45f359c8c72774cc5125901ebc7e1cf34e36e1b81ec56bdad1f9c1a79d7aff3823f5809f655236fa9514ec92a25b2fea105ebb8575c2cb9ba70fe96a6174eb9d950ce986db080b23749629ec9fdea0911e2ea12f46b5e996f1a260f97a6b70bc6a6fd484f3bf3551391dae6eabca25e9c062b1923e20cba937f23cff91e2b25d72d0efb895b19369c85714b96a79057a507003080891e77a3f6362c613f80c9273252875b8a1ebd71f21beef40d973cf4db59fe592e12dd115f3c34a7cc5f03eeedd38fc8181ee00bda17f7b6caade76e90f669d1e115fcabdf00b6cd1ac6d235a142e6a7a0219e599dc0167710b547ac0e7a88cf6050952deef7bc581293c64d713ce23d9ab6250dc82145512a2ef155c70a49a351e968f090af0b2781fd466314dbcbc6280272da143d765bc1cd39def761f61514959c2786d1ba273c791052e36a9737843d79f63aaf645edee2a92ee27354bafcf205872b1ebb0e7c22007d7009855b72cca37e025a73ebced5dcb81aff2785b5e966668d9c719873fa2b75ff51816e4f8ac09d0f679a65cc8298d48e98133eb9871810347f0b3a53650ceef599bab40afc715e303a71ae96a2d38d4d1cd3d8c6a97e1f18016635004ae1ef5208ecd3a0d93b5309b7aaee24f3d0b2661d978877c054053b9ecbab2a3540885e621e73bfb82aefe8d588e5fefa0d3550a52dffcf24b5bfa2a75d04a7b1910a3057863d447abc9b496b111e341371a14b9fdd27df9602a574dbdd294a879624014fb156135a728847f23fced4368c80f58d4fee98860cbda60f2c055c3caa00a9d2f32b2fbedb63c9d31df492886ce0ecf004f38e1a867ed9ecb3eaee0801f93d7c0f557232a58fcfde42debd5f64e7b2eafe4d767190b6bfb02dffb0187e9c1641fc37056bd257887b9cdc9c1dc388eaf10198b55b50877cc256bb22cdbd467c68f4e1ca3af20d641b6a8f56f371cde353592369f850fe45909415225d7ac29ee9050969395696ec017ed69bc8610e9eb064a3f08db0276abb99af2562c9945ab6aa4efea0b637ea2437057ad7921eab57433dac2cdfa773fbb02b1b760704d895c119a0b1b52f86ce71a216674fe91cd1f44055c64670839c3574964d08f7317dcaa25803f15447a5f9b50796c50ebda82a174b9b67a2061df56b3564aac2256b0c9bc678db6d3dc63b8d89311690307b03711d1a56ce2085437a997adf185292bb11156789787d4df588633876b8dbfae42bf1900c24e215e246fa00f20fa2ea5706c48517d524c522bfa0ca020c8e8a8cd68d5026e12fc91d00b8ee5f7d8dfbe65a4bc4c41e2071ffae10d51818a859b49dcb4f6a1a5463788efa34f4dc68e6c8ff21a7e8ad94d9455e99134c3d317e76e0aa6e81c8e66f66b1ba86c72f299fa1ce7c922a6ab03cb9c1c244e043ebc976fb1f00bd12e9c2c135450b48b2d2b082ce51c0a79a37962b1945807eb0654e96bab40ff3cf2e5bc57bd47bc2387242d4ff4e5aa3a9c8aca9cf4f0d53733ea185e92c9045ee5376ce8c51057d73811a3c02ec23721f2fcec9ff514ba98b77444f722dee4679c44c68bed3c8f963fc7cabf18414b791657565936a0b2960311fdcd79c6e8818d733bdc13e6b783cf9248eedb1a3ffccd334bb2f43b4c9e3160f129fc52e6d424a2f1d07ecd7c32aa033079e749bc3f4da3fb97f6cdcfdd2694deb506eea00e2468f0759972ebb65f6ae9bd56fc4caa3873b8d861663a335e8f9edf3cbd1feaea3c759fd2c6346603668f1a65e47b24716bf9241a8665ce68fa6be8641f821e047d63ec9a18965d405054cc19b96e97574580a4bf5b6783681808b6302533ec324d2b1c83c5bd393eb1057c106dc284e6ccbd191db9411b8775eae4c17c681007d50d04ec9da319e12f13e4c41457591774413d8d000b948ee250e05c0a1fefa03640556e1cc4cced62b81e1838d1ebcb3c7c30e27d7809f7a9566c307d5bb91ce7835d495731953b1d37fe7e0aba3014ef8d4539a3a03b57e81bf0025e8e80e10dd5b3b7ff66e88d6f7f21baad947820256a5a7342f68862f614d4a12ea0f29d99b91c8f6eb030b43cadfabc9e75600e1a13a5a0b27db80718f750a5a7bb0cd46875a27d42248c7c62854792e3e763d9bce0457e8221f6066c5db5ab960608698c431f4da949ed8b458920cc43ec279a5816141cee6557f9b3cce7b0a7e22263ec22352113f3d72a5e53fce2189eddd31323d08d778f61c103dab060e207789f47eee1b30a922b417323820df6a0ef7887b7ac002dcfdc6b6c3637ab48324dc2625200faccbff6353951c6264f7958640042fe0fff76b907626588a160acaef947aee750a8db7771d2b9cae904fc0b1db627cc42167c50073917ffc83e296842afc72095722fb327c63dbc2ff5c379155d2a7b2c274b8bb47d0353f8f5cbfe616e5f06a0a1a83a6bb6259c66f464c2e475d4f81616c21739c67b765bf3490eeb8465c48bc34f9dfa5334901976d81204b1db3c0e106ae272049661974c1352d12965fd598a0b2784db95ccd6f55a2350e68687146602bf19d87d650a151a8c37937b457d098e4e0764e4a2d2ba8c3715af35a43ebe01226fa49250a21711467fe9a5ee0141e3731def0fd3505873b3003ce1862ae88877c6a6fcb3edf85d24014a3df94946103148e1884f2300e5cb226ad7dcf0274d90086a65eb7fab94e6f3d8efca0170ba6d02fdafd210dc39b013d478969b5d0a6453933c4751fbb314366baccba71d1c0b9afe747d65b4efca28cdc3d19ad24b682e1c5d72d07651169ee8835914f916af911aad0338dea093542407851c385ef0b4034cd0f19ca0fa65225c0865c6b18fe627dc8676583f6a458c24bd7ce0b7f47a70fccf6a34d018e471200becefadd17e3e674e7bf9ebdf2b37e8c4a459505ed9161b97cbe0355fcb9b87967964317221942d804e132b2c024ddf407d10925847a8afe4e75c75a9eec58e46b845ab836717343c1db527373e34ec985dd12b7cc6d06a83752c26927d82976ad7440198e5f92cf4f1fa41c79a736d05d3b8fe552557c2fc177ba9c61259eca43f2f747fad25a0a4e82f57e5f75ac37864bdc19b658d3827934d021938a3a4d229a7d2dbf55260736c068af1d82af3745619a612c13a666bf5282dc317e4bf66c4579ebf84160fcb01e720dbbc6528aa4e1106239b4c45b5cec01b784d22499b4f43b6670212f021988c346e6f16a26051be26605212321682e4cb3694e5c013f45847b3eb529db91fe5b39e2e8da51abce5be9e98417f83328a77d84cbdf6024eaf24629f31c7af6643f4b7b8164f28f291b52e34616d3633ff28a3c8cfcc1266a1ea090033ef563f845a79938f5189802b0633068a15c097a9179ce4da0fa04d7f85ee02cafa37b1b4ebb2cd44e4aaf2a15dfd58cbd227b72c99a7b23c7192ede15664f66531cbc00ea1e81ef3cb182b9c92fe8ffaa8d7dd74ca7aadb1456fe0eb7c24fc437c5e43179910bfa0ffff08c4e402e999e9dc1b2e0aeb6bbaf40d5ef63e3b76f4c2a82fa1cf35eeb3b721ef9000f3ca4a912c8ccb5a22c7e660930d4593466f63339a4111208734e743b233cf53ac85044a896dbe351945f17523af7afe3c235be06a87e93a4fc58ea38000aee322bf1aa796dbdb29136ba9b6e8ae9c4071553e30bc70c42f5e51c2e06e67322016ae3eb44d2515fb8ed359f82a6f536e0a8a66fe1a5defb0218c9ced547fc5d2f079a7316564e5a36b528ad6504676554cc9a17f4a8ffde37015f1c464b55b8ea450f93a17969e6ebc30608dc679bb53f488dc357a25454556a8607bcc97c9b428818e8ab22363def4427875dcfcccf306766209eca1ec47712bc4cdf1ea2106332e843dedb79931155b0b7c9a201ebdbe42153dc30706004e8b414408b852f37fda5be990e58ad139afd2b1155201d0d03bb91300abc88ca37175d80334a831c322c2b8d8b27275712110163a007c4defce9de19227e95b84a5d6157982b1efabc7e2619471d667b89638986d8ba0253aa81b797d46a4f96b37d224410dba001b93d0df97c442b3369ddf50d8853dfca522d7c6813cc1a1e7d6bca558091551fefff8ac5d849f3a5a3fdc7cb9ef9b0dd5348918de3d75d797f5ff1407be89cd17212b9cd2678996bb99325fbbd50a79e44cb8325fe6fb1e805827f46c5484cf6f2da388604fdc760fb64eb390fc2c1e32429c41a1a9d78d3023e9d46527adaf15fae56125b640bf6794a530947edf54848587a7e8d9e4553d1da42644594bb503e4d563e0d768837ef1513190359fa9c24d1c21727df58b7d8fdabc328a26e77b2575b4fcdfda7b806b352cadfca5ced4a6c9894b297bb3dc8f7818ba07717e053176274eda866ec8533dc2c853ef0bee01da9b8cc74a309ab08f240a3a251655750b689739d31f4ef787294fc1391182aff7708ffb6776da1d3b35e3c62f266c2496a1e1fa0183d1313791f145d74f452f2debd67eeba1a8ce85b79086e7f97aeb7f5fbee6cec64c2f442d8f93188f5e4498a6ecefc82069e8906f9c283a4568c91418ba7563d306bdf9782095deb36765b9cddb25d839903cca5728c4be6adc26f5c4048598fda24dd0bff5f8eea5f86d883c28e333f6bc848cdd0963f25e61e7083dfb3050bd853fcded0ea8b375fae150475bcdb59bcbc8239a6add26eb208cf2ee8345df39f7500c3d5b8e9ebb9fe49ffc615c02da3f13972e2d82fd02c388b597372408be395ef03729991e8f3c1f9703b90d7b034970e8653f9b30770bd01cebb875091ef37ddacc5050588d8ad530d05324ecbf52d16bf32eba40c2290381f490bfa59e543593a35857dd8f1f67456adfb0b2b0ca4403ea5b21ead8f797e9a4d8e7f5d5a04fd3ffca5f0cb645de482a34f191d530f7684813e6c23948303217f115b6c23c8f55d47bafc8919f10a3860ea428acbe6fd7115f45eb0b6deecbda42e1b285b3dc8e32099e532b135c132ac48a2e2bb71256772a73dddfe640175d005f7f6a8a95aba81d6c57aac59e88ba05687312cc0e7a5bb632fb099d2d87b6c3ed1b1c2bb133250558d74744f3670f40b6e3106b07e7d6ccdf1923dd522b317537ca7c82b00e65f10534e9ff370341b6227b536e7490cb580315fb81231178887f9d680d4631842a6d466bafd56867f36a4e6143eea5bcd0d7bbbde970832628ecf53e9ba0f59e2d21047a87eb138ef11942aa9a6bfa3016166849a09513993c88e36e26e5c92009e33c5f95ca028410ae4e463d62ab5277da992c2041962261677574f68d888c16eaea717d5201b1f4d79eedc9103b7bd4265c25c5ed2f1b816cf06a6b907d095bc9da299a370c9e26f4ccdc07aa225f310ade94cafb2fab27c95411674378fa4ebaf83bd24dcf29f89315b60514cf2611f501569d85d233a2d62222e14a76817c610aa8d77678498a4b5c3c2b4b694f0e32ceee56193db514d2fb089806ca805d848444ee99ad16f40648d500c88ac0a8bb4eedb63b7035243d4a66165b51ae9f640c74853271b6ed63c0627b09a8e3129603b033d46ab7a7dc17af44590fc306759caab8fe5395c058cbb882881dab308f35372ddf0b755ec659ee8dd2e86cf1172e0e2a65079246bc8bcb6c921e7dd185da03655dee021e5eb1d8b82879e07b1a012310756f4e7784e56aa90f0be9cf3b843996646d9100bdf2bc6ff79033eff2ca68ac753fa64d30baf07f4827ac4e0d7785f00ad65c52dddd0c4972917342af2fc98fcfdcea004f80f781d32456135732533f736ac3499d1f469b216684c56770ea2f109912f07033be20829b597f561375b830961c4375778edc7a79804838fb7c12fe58ef96cb39bf6e0e9dc3cdb1092a544ad1c8e72f6887451d6ac68c9a137e8e227a32315c0e46677ffda45547c805d2413d726e80191c8b0e3fe0bf681ee37c9dcef4d0608b92c374f9aa1003bfe215dca37908a60db85908232865f2dd474d4e7c65caa073c7b2b733330811434f38f806e5bdbc0cc4c7f844f7f35797967c45f3287395d03f31a96eff2d1ab5aca5f69182688fede6a78c987d7866aab465b0c749f2e1ca9e424d13e8e54bbf9bfe3daf74840098ab54674b8747787b50adc2b77677ac9c58687d4be302fc0387ff2eb533f5ad28691bc956395016d3700a265e58fc828e647c205a7c187dbeb1113fcead7318c1cee21934c95b720c38808aed900406d52a6ba8819a36a2d754627774744403fb73c0372d198f0ad56239c6b35aa884f9d46efba2543188a98aee9826ae9b5d315c8b694c35c1a697d8ef42c3fb341aa59ab76bca5cb10046bbbdd737f2cb4ad819843b02eec63e32113b51d9767a8a9a855273a6836155eb4a45d59efe218b3cdc679642f54113d00a8fc279491112e284cf26dc257b228374bc302565a14486afbd6d62b026986abbf43069b24af952180595dd0d22fe98d8c92ff532871fc75f06c38cff852a52046e12fffa26b1f0c52da4d654b7fb38dbcf15634f2831cb92b5ab8690c31c57b39d2791df450bd9b2e374ec64066edc69b1ef2375d406f9bd12ef06337a65dd46f5dfd79cccdd25fa0c33a3f35b1e26547ad90f03397fabb75e1e475ea8ec01afc1ec23c2ede59193a64373be4007edac572e9c81ff89043d13e149a54e997de4a4b76c0c4e5f50a4d3f31c4e156516408680d1ce1f040ff876a49edca17ec02bde27e62902d30339d23390f583fdee2cbe101d1c52c039196244178dbc984705acaab293f22f17b5b9976caaa73bcc8f8ba9a508365b30f16b87c7124110f0e462ab5be558de7f65e3de16796aa8af2779934423c2d4b2c5e855e7d1d8a4016a5a8c1c760a5a75066e3c8379f470cccb2ce722583d0aff8eba131f5aae10e27e248f133002ea7985ce685bca5e9d4a2606085ac13553acdbfdb895f8e527a1ead278de52f851fd1652989516f80280728631d9697db2c788b97f6722760ad94631fe496eff4556d1ccacf76cd2e7cc0d317e2269753d914f44ff1ddbc392f1ca00d987b93697f52fe967b7e446a4e364ac4cc14587dde55c981d46ffddf999775a1a8f80d973d4eb72ba1c3e9a322047c1b7654d76055583616a3fb9a1a92b99cfb8f6449a77e587981363d3fd48e23c4186bb5cbae1792369dcbe1a054b5abd94bae27a6c86266e669321776837e808c606d8cafd75264e88ff637e192958de68ade74dc294dc02af9ff3ceeb0b17016d6b08e10c1023a1c597cc13f1b0190340c6fac22ef11399472ed2421d924a3ac27c021006e65c30381dacf1843b5c0bee82fbb23f3b37709ecb5ff3cdd98e966d73b45105c2c9cb24a77488b2f2c0434dc8d081c562dbcf84afa7b02485418fa3c6c3ee0119d3cfe4f5e3f96c3f0ac5546415cf9d58f4d1bf51e6527065a423feb584fede6bab34c0628051d206a0e5f48d506c51c62e36d5f680b6a626f1ae9e0d997b49b652693aff9203f0aa9f2104418a26538fb4d0a018541e2f66ad37a6671d4d3cdd45a58f1128a7a49e29c089bf6d25f7eb8f5f4af0074506cbbbb9a7e20e2d2e1ab59c6cb41dcc2f6df7cbfc2237c808f6e904ef0a03ec1048f445f9202d175e018f77c3618a7a9d9a6ca33454da0e4d074e7954b60d0e19a230e0782a05aa8682a7322d302a377650d56f5e0994273b0e6fe2438450b88b51d7d8fd844d514bf573319add272ada911707ee1fb1e9e8bd85506dc999494ec21946903388ab544e408e98506ac971a2d96860dd30fee5696a65354b727866baa4cd514719bf40679c05bf753da6465a33bbc691cd59331bef2482ee6d332b3b6cb1784002791391b510a299bc2f188645385f26e7d87635c852b5fbb9cca87102a5cbdb41bc6762d746ea891b75502e3929287b5fd52048658d4fabdb0950b5c729abfa0fcffb040676e7abb6144a1de76566b0c6e53b7902ed8583902d199a84800492d9d86007c97fbadc63300326cf6e91449e5c746ba9372184b6681818020cbd0d30a283f35927d33d99a2cd392c7290e26f2ff33fd6a5198d161d9cc8ae90d0c5829e97a5421d0cb976a8764f9687d820b144481c7b4228937fc1e9deb523016a8cca8634516498118070100caefcd94645b3de198fa3e89cba433d8f4a3293ce17dd8276f0357c6b51542fc7e69b2412650816343d759790cdd1ec8213186f46e86835ba84659ca09f89ebdd4ca4b7cae7bdfd04b67137050009c6233c97feb7960b1f3646bff1ec4ae1082593f3646f0ea830e236669c4c3bcc33313e9e3777b025373f53d361025218b07a0446e24fd13de7ee80851caca2419418dd95817b7beac6d638e3b5edbd95fb065732785adbb0d68c299d951c12455e5c4ca95f21d120e3347e7c003f8d0b8e40bbb62c341b5aad0abf2e4f0a920d98922b94d2f3a00bacfbe6f5473c8b665f99219ad92c418572460587ddb45bd51453b855a0286eb2430a7006972cb9f0efc0be0098728fa906ef9a971a776cc50a758d110f1ae50af513f12d0b99f7b7c5192d0b17d0aefd5bed9c00524be078778a4074ee77def0749c992c41e4a02b6c1f2b881ea682a3ea565e5ac0e0661a8b9c2393d1ffa42103e3f34d3e5c42f5add80eb1318158aa00822a63e29f3d9503d5b9f7ee9f3f53f02e9ca3ee9c92e2e99e7e701922a2a7b4cff970d34045ab56bed489a9589493ebed42bcb571f98b5bf7b099f8bd2ed0b00101926534794019af4b59dce55ba1d0e2f248ff6003550a7b65e476799de2f2b90f9fbc9cf7eb1fe356038fbc71e1137d4b359fed1b15abd87f23c67067a9c1e9b3a1d8a5d59dbdd437fc38dc076ee3771c53ea395222b65f83e31cfdcacbf35f0c1fab085f811f67a4c75281701fe107f1dfbd286f67942c72a24b92fa5fc4e796cf23efea9b35e5cc5a2159ff79cd43117043a3651b1824887102a63c53b7573cd78924df7248d8a9ffce02e9357ee951e8214553cbc54ff9ea084e86c478d30ed69d800e7bd364419ddb593707dd202efd389b787e3a2ed1faef1008077ff9170fded58925844f0b7b704f919e9e81576eba85eeaa05f7a553b682bf4f03d05346cdeb66c36ef4933490d8c704b9567f15e1af923790b79d21aca758e3c105ec74cb74f8e953864df35d5b42b002ce9c3fe31d78207c5e9777f73a9d0b679aaee232217b6738a1fc40cb1a99d177244dd06547ee330f8ac40b85899bf5cd5a3846b8e018a97d9a0611ecf92bc81eb28c7df280717a415bd14caa3044d6fb283c5ffeea532e1b778fe1bc8d44ea8547b25101068f84f277000a1e391b2ebee45ac25370c8c9e7e08bf0cfc8866402c8adaf1658b72208ea638cdf4deb864a93c33011cfee45b141fbecd2b15445ede672c0f91e943c2a4d4ffce902ffd0c0e9dbe42f1fb535d452804b636efc4c42fa5af33ba9508aa47f63c2b52d25a54a367e1316f26d7db2ea6d80eaea9e380e2fe0398c50e36a84ffd4c2c49ac774156ad6a09b721a8bfbb390e9a702260f9d41ff7c7aafb2b6cbe3279da7e3b748ba1a2e4378e47690448bea21fbd8289419aefbbf496925eb28b814c678d91f6eeaa812e76f63edf3f716073d5766a9a5a311fb6b6dd24fac58a9d19464aafc27499ba3e6e371af0fbb212faa375b4d45612ec1741797b9b3bded0840fae1e77acd367f71ae320b45e58b7f07d19c831c2926143d135ded2ac9fd2a5e1513e042f26fcf4d35049d2d95503987525051c7133fc5215a6f571de34e4a9979ae94b4e27793299eda77d2e227fbb0abfeddc83309296774bde114fed31f8d424b59e8250611047d771dd1562482df35c2b6ca4e5d99c773be19cf13d4b1865a7f03335dbe3d399e5c055bf7d3decb962fab05992781e5722b766ad0d021519c19aed66fc92c26133c3736dbc90233897d18a847c942e13d41519810563991aa4df5f9d4e8624ab5cd8883e16b026d0f4c03b5f674e93a3f20efc6a8ea14d6076ab89d6fb8f50b4a2a13efd372cb9d0b1834a19e4de2e4dd515d4b5fed016d89a1cecf0eef59edf1bc34a083dd40355f01a152dcadafc9e0610ba931d13963c6bed3a8e2a74a9b98c311c0ff17cb655838d1de32302e2fa7b62d7ea41571d80585c5a75e87b137a376a330a86a1fe42bf9ad699da163c616b7eb06d15e4afe3b9a57f72fb2baeeddaff118c2f64fda141cd94c81a64fb4416eadc32e55e54a5e391fd9203ae1f2d349d584ece9f5a845b74396213165f4c9c484216769d4ee1d5c92a9deec02f8235e58d68aad0608674272cefb11f898a8c8aa5015a4857fb8884c212ccfb970ee7aefbc48dffbf1cb2c2ce2dcdddd9f5fecf59101331db8d2a83c6e3c688e4e8cc18e23ea1bc5ddaf140f626ea06ef3b9d6895f7a14514fd1669cd2abdf88e19858fc894f027db9d0611fc60d25035a7c35f0bf529208b6b6ce3bad3112d9d00188c8bd8061ee58192c9e3ee72a8fe675553e3c1da0be69b1b4b33aaf6e86717c44a406cff142b8b02ad62a8447b73ba85e6015e71aa5630a7ac0032d0a2aab314f78b280e98bab483fcf138451a288587c9b2b170eb5bed26ff04354eced0a7fc963e1f72a07c3b02a5f45f65d30ab0a1b8a7592c33a37dab3471324a72a7f9465d7be1f87e3c50b56fdad2a15701b808237bc83ba3221b86c5660e3c60bc33507bd9b19003139152a25de166f7b3a38eb6068c55d2b3c8e705e4c39cec6a50431dd0781e126172a7f23055f270ceb078fb2d91ba335e965f91059e90f43c1fffc8c27542cae579a923111d81cfdfae10b92a1b0ed14353573e9741e9be0a201e55cb944ff27fd09d6b7b84c141acd1ea3b121fc9f8dbcc7ab3b89178602168d9598001ca83ff4b92801f4c2cfdd841da52a855125695b819305e4a97abacdc78d8d4199e1512a8c5fdc505fd816d8eb1bd5471b6edf6d1ffeaf7efa77bfa7c9ec785fb4461e046e98325e6578c750d9c739e38ffe8b11ce37e5c112c9545de2b0bda7b2839a3988f02c9d45453509d5934714e65b040b6d380490700735056e6e3179756ac71f437625bd3b902b58d158613a787e56e93e674872c6867944dd32d1a870b6e7b34c46725f526d0129a0f116dd670e7f8b4dd144ffddf07a201234b83651adb8e4dc7e17d57d52d574d71bdfb435a1f22bca095beae2e6ebfcf48b20c52d16c55dc580d3544928ebc8bbfe02c324166b7c30cdfa37a4599940031e6bd7720c0a84605033fa00f02665554555f47b213fdf99955ca054ff5a6a890d5ab6fa8136ca1cb7e25a1f6de2ac21b9736460767cafa578fa76999fc3421bf2641c90d77aa7e4039ceae62322273d404d330dfa7af8b1f041e22dfd4b7aa89472a2ed1accd9e7fd8d704eba9418643610f6d71cf408813134d411f0c4c88076ec1704e602614aab391caf43c6325904fbcb5d4263823ea038eb7df6e45cbb037e1378157be35693a0db37ecbb63a9409eb6841892479f3aa02b7469396e4974cec51d5610490d7f140394713803e253cb0e34cd41de09152728fdc924017ba93184cac351ee25440ea56768d01c8c1982a57b233dbd3e24e2fb411a4e48a586178fca807eca94a9a5b66633c0a4dcc64768d780c964acb10a4a581bb5587fab45a74bc6ae0b6f68b6ee75c716abf4ccee81269934838497f28515774853f7f3e61e7bad8e382d683a17a5dd0cf4c1a633db177625ec04acc60dbe39217449ef7653247f19fd4cf6d39bf84712c69d5ef428f93778fc81ead2845d750a302d0ec35d2aad92e6005fa93c0815dfd7b2e5642379a2b4b883a39f06ce5f7c6c33bf295044a5cd4aec844af77914d79709f521b760ce0b15c0fd9aface715e0dc7d5c9815126e88f2693c32258c88caf4218314d7b23d51a7cee117dca4ce0cc3daa0a68c74d7465773e0499210da9f1366a555873f76dd7c72416454fff5cc01c14ba38e956cd1daf34417dd6d5d3392fbc9816ba0e1111bda87c7e1cf862d1bcae0de93e6b48c8e47325398d056e16f7e3bfc0d608c15bf582d8d1f017da69fd7fbc951c70c333eb12be53937f86ab011469c13b0ba92b8f2d505dd2a36651612e7b516c15a1afc44da94427d47e60d25cda65be9da750f066ca7c13cf61749d737c17d499aa1a817a364141a853ba57a053fbfdb1d47a37c3899cd1fcc8ec0f339a72c03ce486a3105eccd0813679472c05aa4652f4e530760ad67b8c0cffc6953604f1c14c210d289fd20fb4548ef5da575ddf0e461b7f80c1faffcfc23c99cd49db8943dfaed2335d38ff9cc991255251c95658ae0c8027f22437eb69a8dea1bffe677c3aa3d8fe949f68c45c2f31b4ca3d78f4716e9bc6459337fc0d0e6c5ee3e8de06ed9d40fbdc7bdcc1fdb97d15e82f8306f250bad088d81375ff7beb5fb5b9e42ff5ff03c7f63f41d75b090b7e543e92dd32dbde38fd9673bf505e1c4c02cde778ef0ddae7d4d8566129153f9a45660ce526aa33e67dd040fd83e82a6f1bfde47321cfa49dadcfcf497d9e19c75a1c81c5f3834ef0c3bfcf2e9114f1e6eebf045c449e3f8cc433fb8fc3fd3a59f5fceac6429b76b0520903954552d83d43c8b07b298be5d4f0ddfeafe201f6796d60f37ef549ce691fd06bf34ebbd8524c284a70d4085e179c610ec7a29adbdbfb72281145b813097dfa6123c629a43da6cb1faf65d8a923a0f7478e35a3de3f285b4963c613cb091341efcf2268066221e832a09ef9b0df0e62c16ac94bb91f2131adde5b868227adccd08571522a78e6b65000922a47d9b12e565de2da312e2b8e8387ea284b7ba28acc75f3908a69676a865dc6474258a926bf03da7ec0bcc5436b6fcb527ec5f083730994337ccafa033fa2ab5b6ba6aac733c0b4a747c2e4a4123292b539a09f989d7b939cb8be50866c78a757d3a6c5ae72b59a2b8759630569e741cff5e96a304c60bece2ccdc19c19e8528983463f12590916b2615f73287d4eaa7571122510a75e6afbec8949e9a8abdf89501641d14b3ea5bfd71289e8c0cef759c8bd21cc16094834f0f5305d1104363e5e1d524aafc53cca1fba0aa994a6c2fb04c4d22985a9b9467124f36dea843021fcd084e5e7207f326ba7e5c690b47186b2f9b6d502291f4d9f70f7ec923f3c252b4d3269ef9ed816f249bbf8b23a4b34920533fce39d158e323e7702c3a90558345f359bf1431f5054ca70b56c6756de4a07e40b9dc3ce58ac67b6884018688ba766a3080664cdb0fcb3894de98608ab86e4e61e1b59f5ad3017eaf6118d83a623f883575582709b5a099c8bc2152a03cf6450e30a0c7bbb61d4d9f1fe98035763a258c22e744771e49399c057c595cfe64606c50dcd9612cd519bea9d60c6ca6795c65021bb6695baebeeb47601ff2186a88e8eafb0b9c8e918af07c670a6b2337395b96c1fa23b94a57b49644e479469f1548d9ce6435b1db5b8cb95371ebd02b428b205c8b598aadd984f781c6478d5d53cd2affb6a6997ee8238b3d85fa1f2fb65c741f70a9cb904be31969d34a56a0fc26f9411e4652f942557e8e388dd53b22c5b7877260ce9584a9d8a5310ff90bc8f272f0240cfc1225dce15f6dffc6496da7bdb26f48d4a33898cdd4fa802ad4bff4ef2f9c1574cf4c8414f3c48dfebd78f7d5e5f5786dc02f153968b8c51a0dc6e4a140d768e205c06decdf0ceb8c00628feb9f025033db7c2e30f2b837086a41d58dbf0bd6783073161782cd982dc153e6ab0329555ab0b80c13329fa7e4922cd297dfddc59d183412c8a412cd1d6345f5690f5667db99156ee301daa050ed4fecb1f13668bdb5bade7edc4f8ac2c8f37a414cbf808b1474f441fb171a30ce5ba5889701c3ba17382849eb60b7d55374a8b7330d17b8cf81ca4e4633bc52966bf238918dbf8ee941cd35f6dc782218b62504a7b22d0aab45f15796d0e310c97f5f9d058fc8c6fa961fa3b936dd3262ec6c492eea2a350b9a211599c993c399aea194bc21c68289d21975506d754973a804a745254aaec6baaa2d426f4d6a62e6e560e4a28abfbe1c1c3c30de5533d9f4943dca6cb200178312352c96004f4e9cc18be4d5b66deac83aca3dd2508bda5c0446d95ff4acb2690eec60fae573457b57fb18386ebdb8b18f9723dfd920d1f4f7eb5236b7df3e1a48f252c5f1af72042f793e089f2fd543e3bde9be714af4b944fb7964eba3900ab5c5a734004f27f1294821d4b1606e890fa822687c80fec16c41406caf45f4a44bbac9c4daf859afe0bcee26b0c4973ff12444d8b3b8fdd245d54be1267bec5764a666e18d90f3aab7f7312a9aac81a9d7eb1c7d3e8b4b8c9fac4304de6d051c8188b5906266ddeeac66cfd27264bd2d36f5bb469ca8271b43164b48cb1b0817113cf8ce3a5ca86be74b0230c797bef81798c4ffcd741bea150deb49b16de639a6d92fcdb6ce0567bbd95fede8bce17ea8dc2c91a8461907beee210f943e2131aa0b2cbcda0679496d1ee751dc8fc2eaf3d46903a4eb80e18743dc61f0a679a292b3965825ecde6c255a694fb0a5fb933d96e037dfba57c3ee0d2fdf521b19da275ceb4f0fd8f254c8cefae875d2b009994274a9f62b6662a5eac443030e2d5d97becbfac8da6dbea399dfca254f0e004afe4db4a7ad18006dbb734051955e6a95a284b0bfd77d5284fac200fdbb54f570025c9165cfb6337db1e0bbaa44d6070c204d8f39ee4bb14b0b6d5dbd122a29cfccfecfc707bcd5ab1baa8d2fab88a87467178d273e8d9e0be26642ac549daa0b9b421d7a6b5729dd20242d5109fd63cd3119125ec8fc4e8f5eb2d8eca30fa44560018ca58471edc8b93415420037e489ba1f31a362b2982c8f7f0c76edc3f85fe7f401b8d111c5ead6f43b688941cc8c5dd7710761a904af1a6041df96676356e88c090f53c9f66c683f9d73a9498464eb666d441f28e41ccd3469818ab9bc4a0798e380c85b2ddd6e4a5c59bf3cf0b62833c996b76883fc3a1b59621e81bf48878e417a7b23d579be209fac464f2279ce76da41d3ccd38b8883c32cd617939c4c76f4bf120a9cfddaa2bd4fbe8e716dc48ac2dc53330a18903ddf9d47a8e32a5bbb6636ac0485d104587646ac85b35017a01121bf9743ba968949ef6cf83fe73d2862e518a81fe258f7c0d18ea7b70bde46b4e4ef519017cd4644cf04ed57021f99900d8064d2a94d63b9463718fbcad9deba377a7d14663ba2e7ea0cf2b827b784da16575893c97f6922bf23b0100aca5336aefc3abebabea7998d8bf44013fe409177822e25bc11241ee52d7568f05ac1b9041db7a89535a053f56ceb202e0dceeb539838674e29777aeec5a3612435179d1a6a2ac33677441d46e2daaaae1c9081b254e43e3be36213d693c6935bc90cde88e46245a166d9268c052cfb7ec6cf3bf3a06a41374479fb60fd3005aa3fc1ef4bdf0202643268d31cb5fc74d21d0aa841123b5738e78187204442f0dd659aa88c90f0bdc19b2681b732b085ce2e7af2fa0a18f9edc1c84744b894393599e3ac53ecf7f8db5811c99e510613ae47579c05463734ba860a221e3a18542ab907892764f143cfe6fde995c749e9924483735dd77d807a823d2df1da91e42dca6eb2ed866aeec52b440662c56a5830bc6bbb0e4a13960322901c3ea1247ac8cde8124d58403302c22068587595af356a43cafe664146e797570f91e82d763ed1830e902289e14253c9623cbbc420f334bf343fc172fb2d32e5c3db3372a939eac4e3b68b69ede43e56efd9fdf42749ab5bb4d27aaa079143ecc34c8ba623123e9e509a8ddbd23f55df55200152304120a7978a9da9ff5d9ac75799c3fcf0d85ec34427e976a4c54d31854dc318ab23bd02422a591908d990eadd8211b7cecfa7610aab920d8ba16082938f9794fd051249fe190511901407fd3bca173643073785cf01ddbd181b30b49b19efb39c05859a1a1912a228c19338d71d428aeb9815ec70b481ccef58a35b2c7d1b7daeae1ddf3b1a1a4b5fd5c3934396fb262bad106b7bf83a36d422d8efedbe45a901cc7e2784d84bd19f98fd41a07552e85c400d6c69aaaeca2b530b395e093f97262bb68c7ffdf07abddaf1c3ea890f58a7e1b902d0efce3ec3f8363ba3e0be71e14c4d7acc3eb9d5c322d6713cb037aef4302c0854696e5ba31568381d68afb28a870725b41d8617fdbf3bc025c931250f25e4573c06e3e2289dd0b02f2aa93e696ae25965b458f520731d52fe23879f724657f026dec25737cc1e4907fae3519433cbce28f1112bd81d2b08fea92f099f744d8f31db730f93c23f7513a533d8e45f0a684231ff4f0ce4c73a77b6c709112624d6da3d94a615f4127240cf3785e5f936e91ceca0c511b90487cfb91db2869fd26f1df589bc6eeab028190c2ddd00be48b46708b154124f0d004b56f205e640255c2c7b66636e2245990d5a7e1ad166454ef1564a49d83c0671d070c8a50b667ae9ebefcbb08a4f9d977ac74a7d9f93276d91261947fd318adfa715a7e411fb43e427012cffd93bca7e556af749e157f95e46bc86ddafaac2671930903da800c9296994792d392d4974969a36b2dd4b31c189bfcad6986115bb02714b078ef947888f712fc4972b4bbf558a61920c65616e60f91e0d3cbf09cf6932807bcf67d8440da32706cca29e4cb119b2c02d7c6ea8b7702ab512a464748a18356238b13aa3900f8435c385f2f553a66d21a61cbc0e7b59c93439d908bf5674e8c3375e5a51e3c28d323968b3ba6231771c6a1ba48fbe8d183bc6fbb84ec272e555eeac7f1485c57d9d249563ef346880bd1b838d95271a79d5091f241ed38f09f929bf218a88c8b622cd3f9bd483808b0a7d9ef5fcdca9aecf770d7e263c97c0550ad2fa42f46e5451f60413cebd6495d70fcd5589ef5f3e510a1b21d60c4c06a30b6d3b63f5079f6c56a1f69152e471099a212f6288358ea40c9e9d2bc00319507727d617baa6ab41e5e151ee1a9f801d00f201272abb73cde9a41e1a8d22cecdf4c08082e61282e1922553f5c3aa929f35cba2c70265bc9e44e828206fbcd7a89b155e36aaf8e585e691b0adba3a822005ad433bcfc73100c018a7836885719778bee38edf2eeaca939a8599e502bee34f454f02ab6e72b9a7a7e1244191a24b8931237a74e6d9b5a854b6c110378ff0d1e6569459fa27ee31977a650810d2935baaad8022a9d072995c8f621921177c977a122a75ae8d5e03f745235a698015eab44bb8db7b9b3746453e58e115c3dd255c3e0c099eaf396b5a2b2982f8b3cc8cc2b1192cbf98cb6f0809d068b82891c41ec814254bcfe1256b6de83ff2727e542b39e18e15d944d8e13d05c70a8fda0a3c765980ffd1fcc621a84d6e74a0dfbf4838de11b551f83608a01450741ea5e3e33c2c1e2e3ea470288cc55e74457bea50cc41c41cf3d5b72caa88854d2c3b727a871a013cf7ef610d2f6b2466a81f0519bae6e9c1ddbda6478685c0aab5f2321c730d07b342c41eb58ea50e7f90227b9ed1a9a7945514ca1496f34ce9ed74a74c28c9e496ace730a15322a32eaa14b076810589c8175fa45721b08511e1f4ef28c37bbb659971adef8e08101216a1cc0917044b396bbd77673dfdb55f89770d2b17ad4cef1d8414fc5d81e1e219e61a0a9633e842d2453d750142529298f5a2d2c05c71d997acdbc55563cb844477a4ca5c89e5a0b823cdb4fb01c3f95115d1b5ff5ab9e3f0dc0ddf467af81cce13549fb33be4c6e77e733ec93f72b1c8cea2b1c85ce6f42901a646904cf8ffb155d9464dbb33804b0e4da6ff954c42f69b1517f2308aec7a0dc4cff300764449a074f9b92064388babfcccf050ad968f6d7d5722d071d1a2227025d5a963ecf2cd63ef6de6f9d4518bcbfcff92878cfd702cd51c57ad81b7f94c65764834c03bb591ef12f485c409627ebeae99a7d26576a91e85636ddeb08cd6e4f6110ea116f3e852824346add3479a233f548464502cdd16684ed6d3e0a0b0b7f968138d072ad255e8407fcb839e4d145b6842fefddc0925027edf7b20b04661e82f4d5bd36ef9a7abeb2aea9b6dd50ca66bbbe386d8f1694ad69a2997084f9b73fe4226882c05d3c974847c6b05c0ba58967a23cc34f0ec1aa2cd8dd996c843914c602206bd04c38b41b57065d786574b585e55c35f4f16c72feed07744a9a2407450ae463805f233aa75090d1fb4a67628ed627e36159cf24a19684712b3a61d3dce154ea4905d5d070dc828db248abe3b936f8dc78ce9402ecfa44cb0b27355a964c8c19864a713ea10cd58041eec3dbd3f9f750bc4a4f440d4d0a47639b2b7b487058e47dce491082730958ebb8f77a61708bc13b854e01a85ec9ed3b2d9504c1423bdb3ff97814765084168d0cff90374103f808b6b9f70b4b37b99caa8a0b3cd9a33a28202ae1f02f87c3a64c19ec4ff1939293c7aa338dc9481963d76f22eee0069901c502019a2a9f83b9da5d3625a3c2d6f309a6ee076bcdaee2903f5114b8ad62aa7de92ca20d07388831285b9c33d2802bd068fab5957b86cd43200ca0540527ea149e558f1aa0df609b5d778ebfd39b1e4eef8affff3adf9617e4aee6ff7d0a3ed0eba65568b00e122a86df76cf28178940df4b39ef7621e14968ef0fec881903cd21760bf72075011980aa7d0a9fc724efba403608ea7ae6594acaac7bb2003cf6005a7ac68f952e5af146164497ba7566b7dc618ab70e8841cc6d470fd4190a18ca9559bc38a5e2de530c3ff9af75f8a39c80f09d950df42281aeaef699a7ba9ab22db6e97b04a9e5492122757d9c0ea47ee3484477ae1b072ad6fb811428ae9d323b81a71eba617534735e845d875326e9ed47f4688be494a2d750e39239290c50fa6b196c85cfcc9efb3cce39e86922ef2743648d59342b2839847f7cf897f380ec363ab1b7e2960e5435e30316b86d92254210c0dcdbcdcc472135d5dd06ce66c10e8536f9c0b53fada4fbd63eaf6dc176b762b34ce37f91dd084b8714d2c027badfc6656d942f280661449eb7abac819d9715e8165f6b459fb68755658464c86b47019d3262fe7c0cea5688e9ccb4f289b3c1133201113e86c485a085fd6ed5282cdb5e3e7753b8d311fa88c0013b1593ce2b986afd5ea451dc6b24a1e739c2d8213bdd59a05527d856a507799404cdb98214a41c6bce172e349e4190287f58aa5ef8a42d98f026030cdb6b504f49acba366a43001ec086c532f89754570c6db9c7a9b6c5291cf3c5dcee65331d29692c1dec1a4f7473b18cb6ba18507572ebb78197e182df20bfe07a0c4a70b3b6d4f1599a0d784e30bf2ca0e9a921beccc83939a64c1d1a1b59a72f9cf7e9f2d6ee2e9f92510081b068aaa6de8624932bff530c1088e4e5a5d7175f0eead1ae609e563f773eab27f24a7c502414ea012c08d9960a27263d3fee573420eeefff40e572859001eb0595ee318c1da1613cd1a71847db3c6d9d88841f43124b596450f0397a68e35045805410327a89cccd2c17b244c6db1d21b45a9c98d7c4fc74f739118596982edd2a57b96d3abcfb5abea04d47839632fff878cc542dd9ed10e9f61a804bd5c3f4c5ca7a5ab89026850325affa8d6d9c6eea5f71af6ea0354cca22a07edf990e9132fa3d90f8d605ece487f78f0f10515513ffa28ca7bb9e777a7e926ed44317644d1420c00576aa1b23649e9f45d5b09310ce1bc712648551749941991b3a40519d6df85553ac9ec15274d808aa0577513e168e9cfbd4bc834344ea2eba9a413a9c33ee931e44e140057806b4d3355c55bb6f4c21b9f6a2ed51c16449c735c87bb9326b1363635f78d9b0d0ea5a272a34728bf274829a14896c9c05fdb201fbb91251866ce5668cb9240f50200351788e56d6ceba5e2e39dd1e2f593af156006f9cb37fa6c37e81a9e8c358d9c9be1dcc5bdb48814c0a135cbbfb19f5f1862e17a3748212b982cd3015bdba4ad0e1e0ca69239709e42469b20db6598b71411e60d0d7f54dd254172e254a37532010590c719c574045f854d59759f43f99e7d83b1c5011569b570bda43f2d9917a764f8deaafbf671dfd6fa57a389ffe37ddb377fd6b7c833415f127d6c56a142bcdfe5649d4f8e72c67a3b42a6619d7300a1156c69446f0231908be5217aadbc092344884cd2d4bed7840728af3478ef5da77877a72daa2901ca1ce28be50a5818b1a8bc03f3771f1b4a63f3af85c409148d8338c8a266692a593a35f7c0357c0ea8ff5c2dd802619dbb0ebfd85069bc27327d054ac9f5f74c11b8e4b313796da686a1a0bd32164424a7fcae8b77cb5fdea8e35c4d965e415ea2f7db91035478a3311cdd5947f7b2339afe91b69a06ef8280659b022f6215d27e330dd653741d7eeabd65e005670bb8f5e252e78de9ce0230ae318112a1a6140d071db3bfa91c9fa56c259cf120945c82244aa6ff8805be9d4b73eac548149f50890b00c14930b28e7da63fdf33fb73196f77a6f818fcdd466e2f6393be8d4a4d85a4176a868964ce64942391bcd146dfdc5d73e6993cc6d6c6e304d4255f83151968db423bc43aa695b1e1bc17b0363a5e9ce388bf8e33494ad4e3ed4850faa4a0b399602be5f49a026227637a9d290499672eb37bbab16dad8c418d882badbc4c6d549ae7971b2ed503160fc115dc8ab268bd59016ca49d38debe077777c493ef561faf92db30f9dc576ec26ef5fe41639cf9dae06afaa1fa6dccce0bc4a0951d89abd152ad4542d57678fff0927e2718cdefcab2535cce49135407a532181f10d86fe119dfde3fd80cba4b9b0112545193fc8676957c6315111c5be95ce4ac6367f63fc05f6d092be4027376936e1b965fe710e7937738b9aff70b68192b521af8ca763b1e5ed28a648f06b5b5dcfdae63490c5581b226b89b4c5c00fef94e9e34d31854d7de54971657c545f10aca2f111c4b0f8c6306b63cd8b05ccab2b351489c7269c3b01ef1340c698a05fd276824c91feed2f3130d6e69a228e97e99555ba68183f469d0be9c0213b39335753fa4ec52596c37009abfe82f42ba8cd96b7eaf3b662dc866b79d94982ca99d53821a50e2a8c9d209a857868cb2a23d40de9fc9c8d12772a2fc67d4d287c3572e410d782af54ee8fd4512cea9da3d0a1a35f9deff9ffb65efeb7e38432d7ba495eeb047ee0d300f5104ab922bcef2d77091f2bc1e4b16bcd9be5f14db6205b87a25d3326afa280404c1c1b47ff04a246cd6f50343fee99b9a77837ebc809d25dec72cc832f9c23765e1cc6b7cb7588d17df03a7159d0092e47b1f5e5b925106b0b64d20f38a99d11a4c98bffd2b8793bc3085b95220dd33c50340967d62ab28e1480a8c61ad8cd6d49a8b5a1cc65f26bebdf59ebe16f0bbff64a708f4faa015df93a905de062adc6ba65d5ab880a7c095211e2e089647db0233a8b0206054554a52b04252fba4aae7f3ce43f60958911dcd23f3c4b201723c2df47d60586884c565214acd6a7c69da8d207ab88882aeec4db414b8807f775a9e8365489fb3918837f510c524a3c0215fc2b364a750dfb005868789b0fb08be307fbb57e397a3f48d911f1ef6c2c73a263751a3a8a9b27cf014df408eef93d139dea7b2faac4491b22c8d3003da2852f2ed54d1f44f5031fe567e627be21d58d38f16f151ca9aed5540ec830f116343f263d6c900bc04edc9f2af40a264c464d7bfb5b252a422e5b10cafcb551126243bb15d7dd09d94f279431a2d5f4bdc33ebe8422852ab01d2d3131b4c67628d46d4aaa3a5f007e913e41fae5236ca89d059cba1f4a4954d44fefd5bc7e7088a270f9fe73c3e19c2fb582438a5b39bff8b96051ef46e4ebf88820217d97597c57e1b5c91aee3316fb59cbccbe2dcdd22d90e4a2a516baadc52f9e1ce90d2a3c9f0e9567919cb6a086fe2282a404708c8d77f6543a790d190c0bc879762ae6e67350a5537f1e3f5629ba9c2f680cdb93387204fb98d3d4f7ce42fe2dbb6f36f3ddb55b634d3f01579219e615b138e3811800ec5ec8f2a99ef6caf3d43d098de4b88105b6c2e9201d770c7a24c33b86d807bef55aae2ed42223eaab6b71f8a63f60c59cabdb7865c513923704d1e40699d8cec41ab9d41e2258c52d0c3ec906c4e058249434f1c263179b5a530f0a297d2f8515039f94fd2c43ea1d039e573ae650df50a45f9b2448e54a8201ea4e158a25f383308619e2787d6fe76bd178a065d81b566150f156a550becb2c4da66492faebc81c19ceab932a28a59e7a77b16661849c08790d84cff978862a18d505ba4b627caaf1a53b1a843d256ec04ff103baeced84a6aae795d78a8110f6a7a0c85df0a4c232b49b5f9f8dc4419df35cf78f1cf8e69d83257673c95d668664153db700b2c0e434f39eb7b8aef321f8d1cd6dcefeaa01adb87b06733700c499185dba1533c61ff829829ffa5c25a41381b7b79f0cd6938a560f0e3aab8c120d3bc480d35c5b8459d34064ffeb05ac3098fd8c959312342170e7437c1d7b11e496486351821f2086678fa2c341062c0db4a9885213619527431e4604c6babc603270441ea5103732bc6241deef50af8d98fe25abaa29e24992656056730e45ece608863d950321fef9b66a84f006b85751678e749adb04e067d413c2a595e2990af208a48e25977f5419723c502451b27461f2e5854bd6b6788496981d2a7e86bd8516ab73dfffeed689dcd42f36f1740c6d811a479fb7d77c7b2d1200681b9784642827c154fdd9f5d7d152600fc4fa9684334249b2de377e0ffe5df86019b156f16d169395671d63b5061591cb5a0fa570e61edb82db8d51db4c5d18d0987a19c280089d8959f3767d8f29c8b45511dd400ef1c3ee6f35c89f404a7a2fcbf7b653157deb4ee1bbb123fa7a22f812bb062cab70232a458c1a94c02799299d8d47cfc469592cf0131ed79202821bcdb1c6b5f34172ae85ba0ff71aacfb937a7500ea5957593a8768cdc6a222b623d616d78369d1ad659837807f38771ee6aa5bad6be80f88ec5e356ad3a947794ff9d1acee838e23190b90edd143476afa7a61470c29536790b9659c51e568f466aa447cbb5899065af02432a868654ed020d319315badd3d56e3c3a3b287a71f45d2a1e22b27839ec5699cd0dace5bbc86829c7de11cf8a74f25fa58363dbec913960b0aada090ed1437fae3591f585b05579502d87997b2166b761b52ca09fee7d75cdf3a9fae233de4779f44b56c4fbd4f045e1a23be00c5f2b97a8900020e0da370732da2c9e1f5fd0b745992600c43d9a4174d0c56fd625d99dc382d8c22605f41d099eb412ac2a548566cf605f018be516961fc4a6f40d732f71032ff205e42882441d1f62d2df67997376c76b2ae8397a27d3f39af4b6c8850e9d9e8a64dc81f11715dcb59c2e7302b15768ffad2b0f707fec199b75225a3ee6b5b16cd1237e314bc1e983f72b7720226c3a8589a1f28e1e0774b3faaa6fefcabd83a5094037a775b399487e32dad7836ca74528a6566c81ee57ea2c8abb6f5f44f59bbc7be688058c42d721da693428dd9f59c6d004095fd5188cd5bb6d6d3303d33dd5f9f2278b0097408025406809be92726481064306d811e2da93a4a2a0229af7ade5e13e92b0de400a97db4198073e749e49488a751ccf57916ab2911f00278e28fa9bb41bb187ec40b9dd65ee10c3dbfbfeea5af7d7ae165f4c7788a7894b104c625bef071eb6640044ec72833ca3f8ea25a2b1f7dd5f59d96b6200eaa5bbc75c81e8a0f915b33e74a0b50e2d0858eea432390ec3d5a262a73d1e6297e12967aae488b563ed319c56bb3719991661b52f1080298456a70359b760aeeba93c66bfcbfcc44cd5ace084616d21c13e0de5250ef9048523dca9768bf660863b46e0dece62d38da4c24f79d74428f86ca9d975e6c8512c8d8a0ac6025c2ee351d5fdef79a935a72d1c3ff549d6d8e2c4a4375a70b846c60d42782d6f2b67002620ea2af905e5d54a05515331c597550fbc3a38c161edeecefb543167e0851f453b0aef0e3ba863a8f9781007a3c38e7f40c06ac7591d0e1508622151ac339c980b6b738aa8eb842f870986c59bac77fce2254cfe1327ea187bbd9544444cacd86bc6e6f92a69e53b62233ddd98cfa5eaa4aed0394ee016274444fda9440329ca91a87cba215c3b87a6d453f02f6963e5f49555cc378da123928f3727a03626c6c3891ec204121f5b698f5623a7e73f72d5aaa5e97e13b3080e0180e69a0efafc2f8cea1df840fb9ebe06bfa59045531cce9b6c6d5e455008cc7dc7b9b788d58cdec61dccac6cfd039372ffeed0cdd8eb223977690d015e56053cf9362eb4acfdddf150b83786842afa9e6dd2c023a94283c5bb75330468aaab3fd974829f2af9e2682fefd4cefe011c77f7db57bfb9317c8c2ff0c13dc515010caf603231112045c0902461e3cb988a3f8ea30fecf88a8602fc55c0f5b60b89fec9af2a9568b7f361d6b09a6bea04cbc3835244fb9c1d58ea832735891592e54a592e73d1d6e3ca94c785ad94896dd983784dfb711fd8c592346925251a05a1d9c3c358230e24bd581bee33f71f6d8a2985df3a805474689ec05191aac3b58a36e122b1a020cd4b52106f929c84ae5baf0897ec5617ad712d519acac4216efdb89f80c0eea9f0df10232a609660ec1684008e9044a2e3f6fde42cd95a62fcda280f3d5945043342f6838e35c1647dd6422e29c8c775e945bf4081a4267552eb1c0aa6d066a4b349e58d82f3cea19082a0aeb6731c51a190e1a0ede8e2013eadd939d0b26b1546b03e0eec527161d4e7eb9f89e9fc62147ba6fd42ccab2b72232a124a7fb34581db82579470a5b14048d9bb71a947d5d3c4835fa9f2e2c39f991551aeb01de32526c59cc41c7664d2cdff0a69466b162f1393c18272f553f6403edfee3ba5b74405675ded0646c5315b2d8bbf96e6edcee96182c8a1d1e05f6bf6c94519caeffc4601dfaa3b56b787792c141b249082ff49ebd6afaf22c092f30d0bccdc8bb9d2c185d7baabf76733c688cd60d0a389c65e1e2c7feea1443f26796b4202f38ff7a81c80eca26f23215474c4836749592d4ea6cd72403c6d9792b7a093941ded539e232103fd232158a0b7522191f8d8b2004903f15940660cf3f881bd12aef521ff677424981e2c997a953860e994eec0cfd02a14f896d9d85e05d1d4816defeb2c4ec580f07d9c319feb8193321d713c3dca62a7609c0394807fc434a175bb22207a004339ed367f57ee37c9a91b10854c24ebf58c9c399c8426047a38464977a5b31b0f429db929843cc3a7403c25d31010fc985f0c1fd9547ff2288522483493a2748e2e4cc4d5e6b01e8b4f015a68df5bbd8e2692152c3925a78f12c65efff78ecd53d6b1532146dd136e5559aa02ed68419d0ca6ffd39527517e05181bea5e483a0ce1c08dd504b0762c9c72938f54f1fd6d2497b801e0e2354f8e10b3a6bb6ba5048d2d21c571089529fe3d686a6f6409832e62ad83b0b37dce51d7f3b65e67433f423a990c6dcc4cd603cb2bbffbfefc92ab5176539df4e3ea57902cb3eb382b96d677917c6272553a123992402a03170919434327093e5ddcd02a428ba5c1953bd0796eedc2b1fa6bd5573048bbf366adf509d1a39ea502ae1dafb8a6f88da4fcc7db9a951d9c27c117866121af05b5b9ab06a1c50347c47971258d1b4ed6f8a7e20f0575bedc6ca497c1588d0d2ec376fb9a0675e840d1c0a80a9cfbe4714e600a1d178b56398e071e4101923df24f68564885de8df51416040892acafd2214a596673a8c677041af4197fc7a1dc10dd1f05adb5ea446d861d4b0c0234c33381e748cabefe8e59c9cbbf39b5faab00e4c40361f9475b4b8d362979c8fcdfd16e7c01ff599d4b8cacddf44d096eb6902db15d6665ce1c9443e6f7bfb07792e4971517819e41164152aa91053694aad4dfe8f3dd244ead799687b89cee347ade4cb7ddd86bf5b13461d48295cd5cdf568ce42f24258ee15a290c3d7b5641d58fcbc004923241816bfcd99cda30d6a3616532f8ce3be6eec89f27c315f18c7a9073a21b8c3214f005e385c6a9d62e3b44495e9c7bb5f5c0fd5ddde781df0db4dd96ad5e046b5d588fdbe57be6fc085a31454dcf92f54f85f115169deeb08152019aede0220badb0cb96dabe6cbb079d448ec552b120e22d8036180b279e553e59b73e7d6f15bb7a0ad8a241ebc278d01005c98425c1a36e8e9ec47feca5602c7bbc4249be8ba69c4fc3bbb784146e195f07ccafb4ea1809f912f2261cf35bacd358325b0be0d0cb2f2565bd6426ad9a854956e5cfeb7f768116f5723ca4bd8a5c88b2fa97569f15433683873861d95a1f74bc754dcb238a61109d7574ca6695dcf0fc6822cf5f0ce3179993ec3304f262f84e4fe1983a59536600f4c2e2ce5ef4c22ea90fda12a47a428fe0f655ef3f76baa1b2cf452e044984ecf49c30644fdc2f9d7686d9ca67e1ef2195cdd6b26535fefaf2ea0969619d50d3ed0d56f99c33dd65975a09b13fc798dc33b0d6799acd8bd28efe972680271b302652fffebd16cef077aaa6b0a85bb5a00a1b235e32995a62f528fa93c765ad351476b73ddc4ecbd54b496ef85738246bdc050fab22a8d73b4b671f687bb5ad302631fabc00d8f676382a45726fe656d93145a270361e1e7d6c76c7c8302e8d87015cff582aa173e3fa898a22fb6013905df0610f4997586c71ef69e0bdec04a1542a6a63647ac7364eb499f79d402d9f8f1bb1d5e6763b5388285fae3836f47fc68c1328cc3c2f4b14151e29468b7bee9da8a5680b8744a6560813a43408b4b9d4a409e752684d855e6d2779d97a0880d6ee72c8b27d14ccb9c5609172d8bbdb8b948dedb6c71a6d822f7c080840da2828bef00d3b1b90fa0b7d5a76eb2cf1d0ba71325f35791fd270e3c9683d457b820b8d0018097b2a592f299e77bf2160b81e963360683ab6ad08a24f3aa90ea1a682f7f0f1eadf34a4e4c708ce9e48d75304bac409cd84acf14ffbd5c8ca031a8f9199aca4b84f9975dafb03456fecfaee8be96a6ca5001e21bcf13d1aefaa5f78e52bfe42b28b3e3ee741ca68742bc6e1a0d76987676c9407411dea96e9d4ad1be17e4476d243f8a6a6f60268c43f30cc39362124d2fa2413adad7a95a9d97bee2e5927b549217175990518c5878e19c532e4e959cd16e8ebc6cf8499b6ea59be96266f84e0b0b1f0d8a102bcdda58937e21537c92f7b989a1cdb1d2fae324428392e8de2fc4bc5988d1b9125140d6889ff46729ae5fd1392ec991d9fe35ea615de786bbe04c7a32b4f3cb1ae243890a26f1161c9d9a9df66e7390fd1b754f313f7f543a400a7115941b0a925db44f0faa42478d9b3da31846d06a245dc9386e70f6cf2dd33308c356ee4356facc438b532a579566970b390bcb49bb7f62ba9029b92d2299d2f4861bf156903ef1696e45786bd96e4e9eb277a391ba21f0adb44b14c6ebe6bf60d48b0edc8127fabaea8d94f9865152f7f512ea4f556f78598cf975dbe00f65c60f478954594235a4b3ed66ab5ed355673eb2ecdb49b8995a2d8aa7840ebed9d420d8a16af9547b5cc44d89579922b96b166deb244b2d9210b1273f43ef180bfd7669502d1a84eab25ddf8bbe73cf5b38cd593ce10412fb86dc9a56c6b910da40ae0305d80c6f7871a87096f838c02821b3ddbfb5ee99ba3b21582ac31d6f5bfa1c55201a9899aa5a8befed154427aeebc9c4c9bd63006b4b827d6141213d677dc6c135c59aa3201b4e084eeee904626dd4fd4c83bee5cd90c756992f406e0015c5bdfb99d9b24a0336b9be0f4a2d1112bd385eb50a76370a2ec9ddbf1eb78cb3f7f39c416f31faa60c265a0ec52bc3b2feea52ebc7d0e62774f652c77097c2d4eab2842eed8d57314e267312f48bc777bf647f7ff920f89945e71e2f792954714ce11b12f13789fc1e4be07a10f6cd1ce82624dcedb6775ed18bf15b179c1df728ee1c0cbdf4defc7d24effbe166cfaeea8965885355453f3af59b6c35ce08a21f2b0c3e3289bee0ee6b6199c54e171a560bd4d96c76c230cb73e9ed7afb639c5825cdaa2f7e9318ffbf2e395ae1b83b37ca9c43065437213eb33ce39bb90f06303854d3dc48c8960c550a235a7164eb427246b2688cb32d2300b7e8f5d955004c1b391111bce5bdd9ddffdfbcb6532da9de6153dc617a341cb75f661f621eb5400c77703ad37652f2df0a30230bfcd0f166fe7c66895425acefbcd65ea80f540e2a8300aa52d57601db4a7efd3c32067018a72875f47e4ab07767e51c7ae2dbadd7c6c7d564301fc20b4c09b69095d36edc719ab9bd8cfa37748d0b73f044fb39f98073f029ef31da014d97f2ad4fce273a99abf235c357b6c834f26f2124565148d3e6105cf311f75b116dce6f4b02df84b856c23a2f729e9849fc3424141c0f4053b783b862594869f39a91cc32f1f3e1cd4f448c8c14b3ff86de9f28d9776e27077ff0b08c2193827ae30c5a1b50738b4638001302cf23e9b3a2a49c88f6916fca3eae61d2673a37b3df4c98671af195239086bb5b7de568d37f47e104b4d025340f54e8ff8feca0a5b24a1ba4044b97fae995ed3ba52e88e709d382e1ade18a07bad7205c3d318bc379c8b049bcae28f38851b5fafd5591430e8fef31f313e59bb1d2fc7d93aac1f44d4c0fd5b8364e8109aef5e26048e6b8373175fab8e1988ffccb8da64a9fd2f7e9dfd16c35a9c04a843b59ca8971ae609c651f6107d8c951afc282ee5cabee8ebad0fd3db1aa7ac1ccb42fbceba65b072f6a3d5ca75f1cb546d5eed3fa1e6d5ec54893b958edd03fc3636b6e5c0ce425ac161f83627ff4da9a3a7b2149108b426dc0bb4dba19f7a06dd93e4732787ad336da265ea50f61b04382ac25aba6aa0005b23ff70004963c8251909b623c05730a6915ad90fee3f38c53b846a2ef58379e7e5a6e3dae9c3ba3389b0d7b708e86878fbb471c40211fa465261fb2a0886487033daaa4b483ea5bfec632761ca9257ca8e84e9af725f6ef34e44e8cc3318910788ba3ef746eedb65e46d9755f7dca2c22b481f5358aa65ba5f5d7fe1792b07d179d43b58d3dd25212ccffe4accee7dcb9bbbac7791d998ae7600056d32dd36b76c302628dae073be12e40cd3a05d4abf71363b72c8cebb3865c7d63ae829e4a6ea3014e95870f1e7e3048117f9b926a449f2610683bafe5e3d65702e38d583289f51432b6a18058dd5308df386320239761c00f260b5db1e6500e6c3ab358c396ae4f672ef61ac43792bcedd5200cff348b0b9f468fdcf59447da1bd3084a07947debbaea407aa1b741ff6b64a217e215c36e6390eec970ae3e83c7c6f1a5b7733d0357ee26c17f7b060989fd01bc054fae5dfe6f7347ff315862e7ad4daaea6a8cf4cca094600995ad868f3a0137cde12fa8ecf33e2cd1fd1ab2bf3e246b67f36458a72b74182a832968ceb7d5cafa1b69c8852dfb1440245c6ab6fa2b7da1cc46e0a5ae59dd106e9ebdf606d9c2b50468588afd6c5610746554f8a03ae5f17e30dd089c1c91190ea290ef212940a20758cf2ddff6763b8fe50e292cf1ee77a2b237eddb5d53889edf7090195262631c8683e83b4003477ba3ce8ed6539d09abfd2eb0401ef3fbddf13ed8249c6b9273d57ee9020b3bceb26b25404e0492c9ebf2f5dfb535ae7b39b64192aa0b76ef4fa8fa275cd85e37c83d9aee5fd3b2cb0d3637fb4c4546995fe01c127e557a3261a55b45c6bfd7c1564a0d66f6a9084da8052c2cca589c808dcb6497cc0b820473532de5d9f614a19f7506cee70ded1ed863b148b5a9453f8f422d4b874915095670b8cab7761732f987ea35610afbc06e5ad714e00e8d5c7a4da49d3e99b93d6c79cbea28e25456545886efe74c9ddb530c35631e661628339277a75bb2d69bd23c697299e25eb702a6587f498bd55acfeaa5961705836b27bff9dc9a937f84276520520afd6f8fa1ad00ffa0f36b30d16c74a7639ab7b849c8e87503bcf504343f319af063ccc8e42519d8783335e53149dbe415a4f55c7b2d015a1a62d0025dfbb81eb87e7958d6b0f0620f69d6e60dffc8a5b04930664933168fdec646db74a1c504dbed983bc5c2b003c5fc018a1934388bc8837a79da5feda28c910099ade0aa214b15fe38c3ec0492ded3c4091a93eb2498bafc92b0712f3683b519db15d9bf1ebb1012214e6d83f4ffe8f94ae4468fb1092ed432688fbe42425b5ce9a53d5b4eda89adf4bf7b33927bd748ea9c802640eb8df314e7ebb6d8dc5ae8bafc1eb464c7afdb65268c28a310161828066d6c5ce14667d3bf0518b60c5fd7a69305903f460d0b62a15042bb9bce2868c552a62c61f3e4cb1b7dc3a528830a110ece8b50e4de80f720dec903b8e828d32ff1701701a62f93633d64eb948f90eb1f16b6ce74a62330565b78691feb6a911426089318d6eec3b6ce41d3cfe43604ba37a8aa40d8bd3c5d55cc10c5595a110bce18da636099e31ae6117c013d7a1a6e179d59934b9addec8bc75cec98c0c836ea04f93a820df79f6602f077ec38d84bd449c46bc323d605f83b48cc7f2158901cf74d4cb64d108f31ba647fc43726b4a7c7ed09e2bd322e605aa3a2bb72a7d9908f2b9767101081bcc617f2b756f9315f2eadce8ca6c9ca20bed855073270f1643a3fc12488f607dfba4d1a3bbd5bb4ca2f0201eb8003462761fcea7a0125343804128a5a44fe2902773fb677a601bf135cf31e83e83afe083313a1942cbf604b155b0ebbe7ff34d5c35bf5dd91d6f97e95f96ebeb82d5621d5e17b2989a879235b8499fd07fd6180fa41002107b988baebc0455ea1c39d1c737c9558f676e3e827b39dce47bfb75aeb636016c7851ac68a5adde68357daacab47007ac9ef965f47b93ab198d1d074df92617550aa8e81312d44bfee5563011232a640c570445b207bb73a9d65ebb0d20dab1d0a18389afb33f636922cb5525e4ca1b6030476c00898a8773e296e0030da71bbd2d53bb579a4e848aa3f5aa8c95af3cf3e61c1fc8a09d1124a36be5ac4f6f69d45ca760807a91627e5c155df2c305a9e4aac38f56d78030a7ed48e83e7248c4105760535c24b0f91fb43ab993ee955de08e988bf5e5b3bf954f897aa9a0d02f8c3dca80be37f54fd41696e77e69e7507c7f10c1dee9bdc9d33cdde390eb18717cc55dfdd8267f2f5b4966e48b299b299d462adc1339f8aa5064cb760ed87d858b50d93730747816c459e9ec5cd8a608a894f98db9ece38e6a623dac7dcd96a5bf59e9d62090087f9af24af22d8b5a247cd470b1a4e74706dae6b4cb6d467c812c13dc64db400ae8744baa5dff6c3803ae38a4be4f9181e9deaca98b67d7dd751bcf44022bcded0f32081c38c7579291f95b7727521570845fb539338585a03da0ea79ec3d0c77a68bd6e71e53cd316dd0cf6bc95a00c7fa8cd7e6822af1ec3555e4e9910bf1f1a19510982442ce93d74510032e8bf347f63bb7883c43301e9b497973d6cb2482dc8ae2d82b1ef2be812d7e7992b5faab3aa0a245046a8ce5d99421be48dc46d8ee8baf0881683bdb170aa6c7f5c7fd26d65b56cd7b2dc24a2b125a86aebd39146a7501db30861df6302bbb05207d0461fb454d3004b3fa520d71b508896b14350bbba5e430c2adc044b7fdb2b121c8d9e61c27384c769b6804159c06e47a43232d00b74993b3a7df3a676bcc90262bcd13720f6666195a42d8d1b8758ca57de115772f7bc0eca5c76f5416d69d131c84ca36f77561af69352faee5952d13d909f1e988bd1a432ab063e69100ced51528d89b9fdff2b0a458fb69a07dd17bee0d969da480d87a7b5d66651cea063e736d7fc347b8ebae3693511a7c0d63fd99e799148aee669fbf957b5437b03ccb5d0e26cb074a7347663da1981dc6d4d161af102e990de9fde03a625c8bfe8aaee47487d0be11fcdcde016c8ace6a6050fc9d4080ab71bb5ba16ad251b9e1b78d956bb3b070256b0a7e1e2c4ead05717381f8a1136cf0acd1516d351d9974038419c8d23a5966c4eff0133ea2d07d98110ad120174d8df2dbff90cafa9155b7f8b71a02dc287096bb2848ace0b0acd36156c2557488d20850a2d93c75ecd7f14c7deaf7554707662e9c1d7d9a1ef9041f50734f8d5fe14d5472f4067577271c2232c63fb6303ac33db8d5c52fda9bee7858b7566eab3f24e8bf3b89071cbd470990d14bda6808c9b1a47805ed558a0ff92fb963925929a8810c404c42287a394367c799030100ab030e51bd6ac36ef2886fb4de57f1cb9d08fff1a47ba926446cb00e74ac2c197af29423366d0c04e594d4fe2aed32f0380f1aed23d658c262c629bb80ca647ffc5d30828d1d46e3086a5ed377fb9b804d14e51a5a8c2e24d40cc5957243d5e8211f5573765dbd7478fb857ef5ea1dd764b232bb5eac9beafeff477b0ddfe154d8974df5aefbee5e9eb7e5d0da5c3f280634b0acef6c14a628c5bf87ef69534324174d6a6bbc1855de1e2bcb157d7e95560eb0b6317d78701d6a6de982b75b05c469115b59f6a535d32557136a5128f8b9e2aed9484be26e6903bde55807b521b40bf4de731d7affb7668f1438ba8db5758bc4a8af53372a8ccbf83616d289b3da4312e3d8f50cb745e13a739f128c2af817c37049571a78cc60218c7905118f992f604e1a1bd73d0f8bbee70b6ea06252d76c38d8d78556cddf17f6db4ae70aaa3e42ddfce4c65fbc77697ba4c04c32d436be8db30320ee3796f067ee2541237f2caaed525c54c0bff4cc03b62833b90b9b9f0cd12e798a6aa9dee8058075bb97765f311a4d2deebb566dad1bd701dfb09610830c8ca9a0891d92931a13e1404e24bca2c5440dab1721708a38a743e668c83d1dcc9f0c272481b62314590d7f1d90cf45afa406e64b14e293655940862281cb60971e8e0d95522644288b1e60cb50347103ac50f51079745e02135c2e5dac9a3abd8931bdba53f8432080b5f2a023e18052afb750f95b443be2e04b9aef3004e25c76482353150d5e1e4016668c8da3bdd668fc8516aac37a946934ddd88f0494a8edc3004ea4bc53b0010f3d354ebf15ff24f39af3fba6b7c85cb4265092107f90bec2129f6bdb92fed69a8807efdc73027703e91f599916d0e23a826dbd573ca90443e7b3858d3720802b3918124d5ef50e284a23d10ceb133c6cd8ba9ee426c8830be62ed6625ec3f8f2372cec7704ed44bff55bbb1e0e31866f38c96c067fab62bc4e983e280a0580131ccee55432c44f23719faf18fda8498de62792c29846fa61c852e2254552c58c480641ef322d2b2f2159005a0d1147a856880be2763bec6a0bc25c42a4b0da8443ca676f41c21d362c80f86a93ff4af2aaeec71b575ef0c22c5449ce701f9b0d190e227965783cb9efbbfa2f9e39976c9cb8baf7aaf01a97e2fda679560cc48c2505dbf4c61c1aa009d819dcf3d3ebb854e274aa48adc3f47f2e4a2cd282faa86ca4721493c477af10d92760a39ec894d2fc90760d7ae11983db0764761afd4ae683172c313131fc7888540fc8e3d5272a3f3e02e8850f5e6868c87d4f49c77139d313345936a103eff0d48fbebaa1c118a6f699942d6f2d5880cb4994751f106a59828a94a2839fb7e222d6a3645c1a6fed33f8727f3d7135731a4294349bd81ff9864ad266f616f4b9cd3e5be280472d226c920262e5eea15c479affdba72b72a1e59f4aa9b8d149746cec4156559afbdd063afda587095697a04c803694db21aeba88a4eea992b49b1a2459b48b278a5b77f16ebd3f1b030b23ad198bc9beb2560e754778819c2c14f01b92e1f99f90cd353f38f7c2cccd514dbcf7deadd705c936e5a831903a9956c96a0641e312f65b0a0de45d82e73a96d3caae81d6cc11b7ff6c3fff44b04bf0ee086a652c5edb494e153e173739815d278216f4309550114c4a37ebc4915fe65de1befc2932186a9241d632dd783469357eb4ca16b9815813e14fe99e84498e623dcd5e421675afcfdb2221472b455833812e6c7883c279ee37cb0c7786fe1859da1da0c1c4db813151536f89bb79729c63276ceb4c6ef1e0c6cf3e0bb7998fbb84c543ead75ad9a4a00543d3123e3cd5a53dc3413ae855af450bc58963ca4cd1e93d6fd3f6fe1902fe1196b1722a3fd08ef654a731dfa0a0954aa08013329da18a5d05a129d4b617ec37f34a3880899a26c157179d72cae98fc0ba23d3d82fc6bd944fc5b5c0f1fe1012231d330077fecc5d32a72936b9da82f2315543a2560aa332595f9b1e888e4879966e9d86a5f582e4e38c07dd1b4b9314e7443623ff35cfea919ff1eddf2701d00d044d9b2c0dbb701d45f6eccf911bb7e96c1c14acb9c558704e7cea2e4d3dacba6e6bc3520981b9aab78b495d451589942ecff6e1a421ab8a25c8372be39e4ac87772392906081acce512b17e9bd956e38f53a9ce2cb1733cb000b78718965a004dee9643b3e6483ecb2e7f84ceb969e3130693d3da125e146c49f78c25b9194c6df201c1f1cc41887cc5a77da22d6b731920e9509873890616dd0c867dd9ae9d91387c64d7edba67cccf43c046786d71630c6a4ad67bebec77e120ebf1d928741e75f07c62a8ae93073fa5f1098d16c09a360b7902a500381ff6b3e9c809528b557e93888259d3189af536df3de662ec70360d19234169b40a02e523e90ed41cdcf1cad11ff6086d88ac77033348dfd3f2f5e377adf323ff6391634ff6621ea196b4f213e2e05204aa7b019fb1706a6ebc3ced031d9f24692ba104fb9fcaf117542f79e3fb5fc11ba16341e4a890997619d4c7291b80c9416754c5e9901bb337c42e5c7068c6184d0f3620d7d7b77fa301a68ab214d8198e4d773dc5acef9344addc7e6e297956059261bcd4d19249997c4cb3e862441e67fd032bb194ece04cc301f0f8b08b8171e2d5ce3389129dc03410bcf97ba0b0c4622d6bd0197e5e4be63216be4d6070f7e5f5343e5691b33c320486c3981a87b1973c0a719ddbf82354df1950b088351bcb6b42c8fd1e9faa9034961af027b10241c627d51be9d7e2cbfcc9c6dcea956be5e0931b6a41a5108583f9413c14e2e4ec7ef8f8bbf11b025fe8624189a3b36a5ea3bdc50081bf89e15d253f6283dd259208f2102452bb08008663a3e5875b9571aa63ad65380de5534cc017c1454f2a69c0a43a41dcfe9b87ddd9093b3fdd41665fc7e3be1734d5f8266d4adc6c2d9ae778315c621bcd4ab4399c312c155d9aa4fb332979b17c20d74ebbde24238d2783416b295202a2661ef30af34510881fd254c84972bfeae5dd6d579ffe7c174ae3c1f3cfcd108bf6a1d226aa69122cea7412428be1f652acca70448d531e5278134190360ff796ed1582f6c821f9e4cdfd59da15ad713c07a80c6f288329023fa05271cc3a0d506b1414f04e10c36791db8d8b59e31203ec15cbc769ece794bc3bbfede35692efe791c39ad16caaeba6e574a7b1a75689cd9898f7cc1529cc1fdacbddc76311c0c980d5c0358f9fa3c2b89ad808ff6c2f7fadca37499c963a4c073c9c5f50a8cf01098a7dd0c28810323a9e0a28597006fba47a6856e950aed162f874dec1e55a1935781226f352e1e079a6a1edb49416228599ef2d6330922a34680adfd7bf8dde8c81d8a56cd3bb981e9f480ffd2cbe67a87a298bde4200621245afe5bced4c0ac4ad9dafefed841c1bf0639ac3a2cf13a6ff7969c699b23408c7df62349e7e65534edd531cbb73096a38609ecb3c5f2e83a6086a53de7e0785883e6e6b1fbec9172ed6a9525fa01c1c83056d49b5158d705eadba441a60731c4c534c2e2c7cd74733adb89a1e310388b3c59ea6706d72f1ebaa5d731ee7bf54f4b1ccd779777d7ccae1bffba95d162ff0ad62594dffdd78045d24ce53f411411b2ea8a2cb0c390bbbbb59e42abd2fd89df6659cf44ad148b2efd8cd2e3850e2652627026901eba6bb9713d49ea4deb40382f79e2e253aa44b1ed541c5eac2c0b8a1c70ba1b1a2b72aefdc7d587ba29ece2bbe2868afd67f091b37607cdf03619c8622d44d93c265d4941e87d6226d2c94d786c9ffa8f485d708992c4691980387f7baf4134cf7e0ef660c4a86151e4ad1168bf22f9c6f53caaf604ddac891fb2ed8dd1f635935cf3332e591edf7b971c68db909eac20966e971483e6f9a43db236af2c87b43d74ae7b28ddf577372d34674c0758d34fcc1a63dc5cb2eb92bfd4de7c4d910102365f080b0ce3669c82e0b86cac4ffdbbd13f6135297be4aa7d6847468b7e6ccf7ccaa0396e12c70c2af7d8904583663d6648abcf439861c5dc9a42247b7b1d54010448835d08573c79a3e8d9f16e3eaed012db3d57ba79314129d1dd68d4b6249ad311b6e5e327180a7169f39d4506841e1616778ff4ebfb92e8c6b20ab93181965c564416e266e85ca6f1fb3de8731bbb219d7092fa48d3b9debb65d69da95c50bab0061b4ba45a9e7772000cfaf75683998bf8c40cb94b2cdc6c809fedaa02b8d5b54b0732bc064ab649c1ad99cd67496308352f74fa2268ddb73a1359291b7d8ca069472a07d951f2d9f35a584a885b7dcbdfd2e2cd02105d42e2358f6b85316f0373dd6937e1683e40ce41647cf443e4c6c34ac1971b072dec7e4293719669bd3fa67d28b2caaf99fb1330f7712d00588de38f900adf085a8ce3ad5fde12cb0634ccf9a5baf4f07d0012c37ff6814be130dd69f99940f624615814d42a4f9e5003148789c3550b71330c0520b0b606a3fdb488e513c2f17a46e8fbef6c578a21893af75c8261dadd5d37f6de7ea5354138859f58668fc14c81f96d0c91be54468786cf046f6df4d79a67e3f54d32951506b2c361ceb5919025e90147f4ea2574c0ee3322ebec715da5ab5c6bc2ab63df1d15759551a42989e346d6fc1be14169acb8fb1f23c459b8a196281be0fb661ae8122d5486754bc1de01eb9eff643b0fd3856b4bafa791f817637dfa45c00a5943049e37457d99930e6744cdbf3db936570ea298a921dabfdc260da5279366f1315eb7378016b36755d1589d4d97e77b778f8ce7e323dde6fdde361141fbe8acc3c5551e9468a736cd14299fd8cb7ce35192b0297d36c8abe2a1201a7d067671f833c296013bfc201dfc9f9a84334fea11aae09fce1f5e55cf94d7b9d6353b464871b988bed24ede5b05b13e1a37eebeea102357cb764666a1d8019219ac3b93ac3b3a3e3d78e78dde6dc5e6725a6286865b8727bb6049680185daaa297f3569b5a659b49c1ed96457f107e8483c5d0263afa9c4b7f4e57047709180e0db9d6c7f2b55f64383d71e357ec94be66cd3e7ab1cf950ab69cd91028ef1e8b99f22c29546b057b3ef0b617b63f75e7019f12b41a17c6db362a4c8cb46b5091325b9c055f2fd39fce49bd299185e2e773d5ec08d44c5912ac49b92f9ee359a47cf4e05f03d78640cff27907039080f4e4686fc2ece31bd6f48e62058b4b297ef746af13b1ec650909d3f57ac8b51fda25d81df5dffe11c3f7afbe10b1ab3266c9650eb94889bf90715ca566a57cf53944deeb18730461caf2cbe653abf251f9351e0fdb8655e40682cd515a3bfdce1c2d62683ace0075253afcdd2dff5c8813d45b0a5ad18225922bdd873251316016e9c3ec1e0bb6722968c4bd158ff69c7a8f1aa65d4066e4fe1da2167006522a312f1cb1f7be62012c1298d8ca9aef0714a0dd777f24fab037a847a20feaa7cd430222b0c348437074330fc673fb91e16dc762e7bf70a8cb81bbb45ee67bf7bc996d2b63cbcefbd1730a6769e4e8cc1431c27b9779fce33d9cd5c5a68e480b488c12f449d3fa13e5fbc936a6c204e54403863ae3d0dd3c75e4579d0979fa6db9e76a6979edd8120082d80c5a40e4ce76248709db89732e4930ce617822ffa513e0b9d872fbd46c0f621d3b1bbb0b809e2ea890a2de14b5b39a0209cf892322d52ca3ea88195617f1d049e1e1dc98e9bf2e4152a74d9ea89614c6f37faecda2b9b057d720911ba3f335d0053fe3598ca3843761dc25130f4074d016805c23e7a5e53fd3cabd114537d1b74282148a7e9327edf93f9238115a498ac49c1b862fd52035f4e267015f8abff3abf7fcc740eceeb5dcbd01e1cac83d17aa3ad1d37f7ee70a484dc2297a192a8a6caded7a1229726a000fb7ca97209a09c95b03f695dfea94b395c86c1f9f9d269c0421995a372abfde103bcf91320b29ab3f1b2938210d47e848f0ce3767b98781b3f22ab8b6c6b94863bbe4ba2b23ee076b8864352c416b5ce662dcef86d5790865dcd1e04ad57e7a3c7ff5a9d81462ea59737740a039320e596f2b1fa6660254c00bcda055e7d62f77c606443bc35d6c5378729ceddc94e2e0c4923b50fb06682986169a76fb2058dc986890f5e184535a80f8582f811c3f594c6e547d5917927753a9359c50bb4a07ce10444a8601842b6d686cfad6a43bd82e9dddcc8539c0b37b2a4c3013877c68f2a6ca052a5fb41d544eb47e510d2cb60f82723ba39daa5dd84ddbdf55760e075b650b66ae2088a7215b8e7ae780f7134af72d87381eebf729007b4e716ffd3c43b9f313495cab071f55cebe989830e41357eef7496136f474fe5ea36ce7850cff348967ca139a13087f3b34f9e839f4fb61d380075b346111ba861baf10ab2d4f19cc241be9c20b070f37fbb8c06399695e8a434fcc386e1759a77944709cdc297bb528ffd361f246a4ff0a8a0f1314af5df58ef0c8b6c8a6a30fa7eee8769e0fad8147cdc69809ca25d02468ebe1a7d888df3a995cef23cfa80d25f72ef274136ea03655d4ef66ed703bb159426d4cf968a0d615db6228d9a92e9e2b102c9a48202d7978638bb68b76effa37a33b6e3492a722b07f18281abc76c10e64879e82df8a2445e47492a5b6d3f0fc1c7ce58bf38abe0ffffd99d48c987f3ebfc5ee5eabc8925ab510bdf56c5ac49d20b0476d51ee0e281168079b7389052480cd4d97ac133018bd86f03a525af887417415bacb5520403271722acb32c1cac20b09a90d3ec44c34ee71c7302235afc1f11f2d86078e436dc86e0bf577dde54452732fe5906aafe79ce749d6478f464ad12e6f7286a47c56a9c27b24854431d26ac8aaef8ea3c7b78e51be9ca5651fcf543d418b37556a795565c852921e2e2eae9f2fcd0690fdd01c224de78c41702cc9117f586000700b6b8c4314f20b911cf5113b1fbd569318bd311707349c1b9b07d33a3c9fa96a63c06d7c1e509af9253538f314fe533a3ae74dd04507bb921c7068b74972d7a662a3edf8b1a974c380727e4717b385a5ce59a3b59b60e6faac713ee1dda79d31c089d63d6f24c0a4b591fe77272cc8d6aeb44e887ea322a3d8a72d4e6e8751e5c95c17145e460069fbe47b1d80f82f11b85e032fcd8b02a3ff5e53dbf72bb2b385449d2ebb0f3879b04709ef9753d45d06e43703a5b117ef025059ffc1b43030e3336f7129b746def4645cc637589c0d1c861438701a33c13b880c30a2cdffbd338c0a67c7bef672cdef1a1fb8916519b49945dbdca0772ada2a16cda0da2c4c2d2a22835a83f36e00022b5bc1a22e72d9457351bc8180b02ea6c489d2ffc77fdf7249569816f14fb6ad25ea101b72433327a56011fbe1777d0fdca83af44c06ebb85d882e376dac53051b58b101a578bbd1d0e5a3df358c54d8f8b2c5be9cc4ad1980cbe9ca5a466c4fe9151e7224af43edb9c98db3bbbb8f5930a1a0fde0e89ac00c6e1d8d67f05a8f42211bb0f3a4dc835196e4aa85e90844bc6d75b9acd815b6e737fa0183b4f1c54d42e054e4dcbecfe62e688c3e913864fac7899ecbd6a9d5cbcac384b23c467c57a8f685b222b91e2dbe07fbe6b74502843187e76fff5177b392a24b5d4ae5f76c961b595f719eaaf626ee51fa76914e04262e32891c152be978b158a9ca22cf9313b307cd3715187b04bae7174ada5d37c745451c7b116a601046b7638b062dddcc9f071bfed6bcf6b328fff7693651bbceb71e1134534ee694c61f19d62d7b190dc11d197a8c88134c14e041377df8b94831ca1c460fe9568ccf55d72e27cf270b64c6a422eb77d1e437090aeaa1dd537dfd105e927ad6857370bcc6f07bce7c77765b36231afc96786e5b3330b28ec414c7b139493b694bb0d050c289d2ea65a6ac03787fbe0db1d7951929323367d9142492e8b7675da57212bf7f32c2899014b91e3da95cfebc6438cc2b9dda2fac0b33a6d6b94f753c36105ad85164077bea33db614ccdae123797855a1d7174d704216afa1f17e4bc6dc57c598ff8090e3e0dabfb02a28f5cd62065cddb1fed1cb0e1fd0bd45f5b0dfcba897a9b9a826728094d5bc95eff7923aa874e10593d1aff65f68d4fc08efab9f1f8f6bd59af51b20374d5e4b67f111aad5ad678248dae89890083b5b4011354e8b9ad7cacb19903600f39defc696e0c9c172a69b887a969c3d8ea33de72eea1259df83dc928eb266094515f3701617784bc15ff232af883d7579a858541a8bbd257abb26de1b136c6aa75301acddd1ad1f861ba620d4d5cdb8a4dde0817d156f6e2a0945849d63dd108551555600193d211eea6499116d3255fb1844eb0964cd0bc641d428e51c3fdaaaa60e73c4d284db3f1b5a938c6bddfd90b0b9689d0174d88ff77a329fc8636eff2abd8e7dc4406333d2999da3b92f92c6fefb60ad3230dd100acc837b117352f0cc3d71504d1e6c7d6c170d107fcae8d94fbebf007b213cd1bb92dc96946b24e9c7fbf986d528893e522afe2619c2fe55681caa4633a23acaf4a16be13e02142887a02ca77e4be2960bd176baa49c897a4f21565f5b25801726295bc69a74471880e66f52181b9e0c46ec426fa0642e3d295b99fbec1d66c964acaf9c193cf2ef582cee56a46f81d1ec1aa4a070a9857595cad6a2b1872f423343ddc4a273c35c838690fa8973681624481e13968eaf4251dd48cf569986a6360c305dd15472f30820f96f08e9aa63e9fdcf038b620a8a65d196f15f10e732a8b2693c9a857641b66e5636ab121d1a3c2f488e9a140db71f39cefe9aff7b6a117cbb88da764d96aa35e0b7e38c0d647f49405deab41db95fcb17fcaf0ab1b7c739f994e524d7a53905302b2afb155917bd3feaba2169b8d7ab29a78710f7764190373669423c10c5197ac01efbc69dea797899412751045018c270916a8e3771b5964af8abd20077fd4da11c0cb749fbdd9964c9d9dc3b69d6c4818d3ea93141b6c0bd53d41a38b81e7b155de0c7d1f10d2ee258735d12602f36de7286c8d22c1f8af5896dde3fc444d1eeac41aa09325ccfa4694f07c0aab1de06de6ea1d5254688753e582c96b766bd9f175fcc84239d52765c67635e5c0e05d6105dcac17457a0b609320329939457e19cc1f24e0fa6e92ee3b86c7922d69aabffffc52923bb29135cc6e9307cdba6c5f31fb1c7fc88a19db6ec730074214ce92cb7245a6f6a9fdc32224e01f672a04bd5776798a4bcb388345127d53b5d6e47abf044b937e7cbd89dad9a45d76040eb7bd647226fd07105df114df421646b62d0ba19479677b08fe4b75da745156429c7b95491e755ebdbaaa997cd7cbbc69db48c2bf47454b70e04ca67365ec3282e7ff3a2bc3c56ac2f518e9538e89cfe8ebed9a2491d597a309e033c5e502c3454a067900ac29f9c465c577825ce91ee5a4ac145ac42867eac7d36a7dd4f622a60d47387547209c715af1c0b20335e2f77c992469654dd43d3e06eedd169a4e3ea1543022aae78a05891ea747dd0faeb2cca38d1026be513650c8aced8e7270609428b22e484c10d8caf16a2e1e54a9a452219f37a5c223e3e227bd49fdd25929e07f04acdbc8a22544542a1699f99dee8867b1c1ec8940126a77ee07ee141f691b0905ba0cb53839d0e4181dcfab64e147b7d0ffd3c0c6ee9588738225101e2688687596b8e2db9e6fa12d5822dfc1895d7928882bd194a6d05753bc8fd0c4966267631bb82c56859e3ab1ce726803f5ed38a2d8ffc54831504abadb429887e73a838e0bdd922fef6a351b337d4b1821d0ac198fd59f1790e771c9d2ddb46bbfd8cc39e3589538e2c90db1ef6ab2f29ccd622a859503604bf5e94106b8f47b3f6db88e68c30b501e3347a6d8b81dcc06883b1a51788d437514e45fe619665a6cc9b6352add5251ecdfb90e36253b5572b81e21ccb85d4f042fda17e34eed1244e1f1f6957d17e5a01c5d8a82a722557856dc4287e8825edc3af2308170103622c8dc1f8e6a7c729de4a18ebdfa34f73487c6af014823778a34322dcd6607ee2af309f4f8da2d161a92cc9de1d07b603ab636749237875974e0f62e20183f7c77ad15f54460340c0f9de744db07f79df85aa3511a892ed8d2b40c24d86c9469f5062c6e000178c6afd5962941de3ffd7576e42bba046af0b9fb585a9edfea28587b429e514fa62889092e07a8d389f11304ae16ef797faa1ac43f88c2fbecd6a3f8fc8090e5e34e1b8ed59a7948181d69609630c45581481db9eee543adf050169a19cc2da4e8a066c32c7f02f617d85edeb80a60fd0ed065d52dddfe9d3ec944ff0b553678b57ca25613174f14361a8305af1de72286e9576188697d96edf6f22b3720661455f12f382db32bb037975ba768471bfa522c6da09658972afbe2f37d3cea51e252ce86577b6c060c2c54c41cdfe7514dd0aa214ec69c9e0f750912cc7ff10cc57c917eabafeb18e4c217b4de98a2c3c583de093454da30ed3e8e812d3bec123a24f66b04101f29a921d1b82562ef079ea2d2849f4aa19f1d40774c63e767597dc5c1bc906ee55d57277e45dd519983a25687c1223ad50b058b642134d2c725b6e70a4098dfdb17751114d59c99e3e96031f4d67d19b877ac2b0b9e363887a03f69b5e2506145a7daf423fc71fb9319f1e5f7902fde6e0a10c94f5f6ccf5ab4ac210368da8354f14648a1471b89712923684ac9a5cec78bd0e7de0a03157335a17049d74bb0e3480902bcce373c06b7e225cdb5352329543b01b1f7a04b30df7fc84089e86ce704df2b3fa22b6cc30a27bb51eaf4ab613fee13ac02d054364822cd44b637a5de72c337f9ee4944ce601d94d0f82ac6345457062ff9a1aa8eecf1310122f307214712656d44100a16341f1fb3c2181a02c47f9819f9af778782a2d030ade3d8adc78fc0b32d7fed9df11c5111060405f2114aa31ce29e1cc0a4a919dd7b0f2deb363f4b5525b2abf9b8803bb0cfd18ae5a2c8dc1dd42178531efa392c66d93504e0c1372f3ce7e742ce4469b839ea1f64e4a4e8020b6799c3bb803b7b7257b17f2b224c980c4d03b571720ac175533396dc0b5270475fdb74db6da807ff7d0f3206eec984269ca904421dbcc101f1cbbbff22e847da3b934e51ea5b62999cd666fe56bba4c994387ced454bd043d8537e09ab79987ef378283d8e50e7bdaf640e1c9a08fbf9f1a2bd193c723753ae7ecb7bfe697f5417145766820770f498699e8569dd499a7e736bed9f10205ab71fb353bc9150039b27c610290c06d15ec4387131a8cb5ed5c45a6d2f7cd59c516027a6214d9503ee4501d5f2d94615d9d56d430d62e163fa09dffd94e59bc7ba67d89cf864bce7dd2f3d982a930fef383efb7ef1e6cf09c365281e0a9e4d204167d984afa682b6c45c4789254be1227f1c4c542db3be449b8c59dbf4d3511aed8cfb29963a55e16150ae766c70e2be6c352c419f5678c3a0ecb2cfeea641c4f9557f204af72080a3c83fdd1a9098fdae142417da8fa97911c9c8d9b3a4cdac6eb19c7ba562824018833ae0700744b391f0d4819da46309c363b3b72bda35cbd9329548550481fc00d8700207e6bbb1117a81397c05a9f4d1beeb2398dc7ea4624c0acafc5b5c85690201a97a72dce5e7e5724e602e47ed6a5925ad9613162e4b19b4a4331c415295c4b829c473712edba63689e258905ec0963db4fdb3ff398ec70a9afed6646ee2656137e2c4afc3e1064b9e2e0e9fe658613a53c4de0b004d8545567c09f0be98208773daf22548e5140ae4eeffdad1729ac6e323f4c6281caaea49d66b8890853e6267149819762de7deb11ce335cb8de2b66e18f5cb0461d8eba281ac134ffe11a0b76caf634259d1bd9cd4734acbc9c4344187aa2c5853dd2e5c0a1a428ecdef9e7b158bcd8445bf4147e95964fd28ce34715c67423a1bdc145691f913d94a6dec13b6b4463fa874d10abfb47ce2a31b64db450df6e9fdc996263dffb94b102e707d36110bccef34494dcbc4159f5909e17d66bb34513c54f01a9f9f04f6742d27b03704dd86100021315601e3668491a80b8ff4a2277ad5106c38cdbfcfd6bbec28ec3842e89970b4db3009b30f3177a2fac5adfb22cc439207f36111c59703215f7bbced8254f3b2989f152f4c3c2783041440fb3241b0b2936191cd9d22f20e0208113c458fce394ed0fad505bfc065351f02603875abed7c9983e6cc1c4410999417512ec30c7560094825a1074c063e910eb2c3ce14b562313501576de90443547e281a9cd40e2c5d766f225426d038480bd841d5826b96b059bb8729a0d480557107fd0b8060a7841686e89d870cfdceb8c764117fe4d4ef0e2103330335f0ab7dc4d97f363c74d97bfbd125a1779fec2eefbe8a6860a6019b8284420e70aad60caefbb3c458c0ef023a48d897452f18d3b98bb85eb91f7469b5dbe78a0f5181e04b54d0bc937d9124f86560e86b366d1166d50dd887fdaca1225b23cd108b509c7d56ce8686a50087ba64837f54c1efdb9c0b6d4b838eaf5dd503054be439cff63a9fa8377b7019174f4e0cb5450725cc933e4c159c868843e164b7428e3c97a1d5c5acfea901980b59ae97af2bec14d487d131f6f8b9601e12149835af9117b13c4b5d93bd1ed947e677b40444fd6a09c09bb2ec24a9509cf47c9c01ecf3b85d7bfc3c18fe39beb9863be1d38ca99c2f0319834d6b1c5f5aba3982db6f986f2f00b632f43ab395802a516efbc19002cd2780830336864f1dd003b698ddfaec533890d50f429be2c1aa2168d6ea41f4ab3417906b6d1578d062a70ffb710b68eeb7ab01452afe3f82d2f0ecaaa79cc6a3709bb3528edbf536cabfaae3597cf5cd477ff2f0b394420a92b5379fc48bb65a227b1819e85748ef17af7bccedc79522073fa389cf90c060af5fa02d703644d034c8fed8fd1777faed86921614f79e513b1bc06745b9b06cfe8a3e34127c23979ac21e4f1c3f51a91e120797d7f326dd98c8589a8d5b27fa1f81d762253cf455706617cd12faf676e4eed26653f3d62302467cb60f772a9df99532ccd69a57c024f988c5bfc9c18216036ce94f5bc8d5227a4ecc2a0cfc2c0ae03b730eb3460d7d22cf6214fb5e0d23932361bd9e904f8c85cbc210855293cc0bb4ac9ca50d4e9f68a769b23261f9a41cbe6f44f6649916ad74e1c52e37a0ca10b41d229853a938814065ae5ae8681b6bc5d06dae6f928b4270efd0b525b96258643f06627f92f3c91f29b1837dc651a0e9ca99b3bd12b682b72ff43c9245346cc6edb05a3106946a7015c651fae435c7c8d2520e2b77b624a99038d205ccad44bb2bedd10b99c611dee16f1150072862f2a23168217e2d0fb42833a3e9f9e61d9cf4ba9373c3b3593241e1bbd39bdf7013330ebf650ee49d836bcba07296cfc7aaf2b2bf71ffef58a7afeca7c1b70eccba144cc19887efc2113d60e3727025ccfc8c21b2ac0c13426271e2df8adf28ead293cac2d9c6eea917afe2152897ae65617f93bb67997153bb904b8f25f79a81cde91120f2b42b22d3aae95f6fa88b47180346b79ff6813d543f34f7260225b2c7865e48bea5bfba9d2fc8fff3a54c427836b13b16922f05eb46e99d15a52695c5265f563800607e7148bdb2edf330a910765d00492fe5f043c659847eee347c8a4c22b70d60d6a3fc74a36aabf8b35d434c9409ecf1fbc68ad1ff306df3befb6745d73a23e4c807744a9a2897ea36d3fa4fc1b18801df75d914c19d45550101728d48cbdff6a3ec7ce9468b0d3d122cdff941d235ae45f44ab93940a9c5d4e5bbea2636d9554cb20006d980277789ba7d055764e8e1e714051831eb30eb242a2aaad3da3ac8f9b6d05a4eb279b42a70cbb895174bcba04be49d721ee91b91223a5f1c55becbea79bc056fad078861d639420935cd670fe93199cfe7afba7718b584598a4ac30a2f075a5baa2796ee7928276e754d690546330d560a84f7a135d649b17e4181dbfc79ae85383fb2e352c63b3c3a97cac328b0250769c14f8f750de4c9f96714b307e60e02a4304db22640306e29ca393febc7e3ff06a59820aaeddae236d9dfb5c1bc78a48a6a5e159ded66588d6119c15337048c8cddd7d082127ee15ecc60c365b433989ca9839eab7846fd55a2a35f3f02d965e728c7598ad502d970a973cfa92260ffba89e4e2cf2ccac520b0b6b2927ede624b97278ab0dbb693fe89a4b52d77e92cd775068619365bb9f4d71ecd0a5f0f1fb9eaa0ece7dc1c4dff22362a685c86f7a04e6913517b48ae086d43f4923bd9f5473f7f5259acbafe6c625e6886e04ef8fd77f9673975442f5edc6ec53130ef720f22873f73c7c58616954189b8c6a7610310592b22b85b6747b1cb8d8cad71f9e17a30c3b6b4f6265789e9101e4cc0a5a83a234547827440651d9b235eaab4e8c05760f02081a1d0d28d70127f5cad33fe7eeccd2833e423175c40c6841e1be9c24e0f41da276d3df5b4c5589afa898e50bba141fbd0c8db9082fa5966f79075f91811b6314a957e5b9022627a7a82e56ab02726bcaf8d238b3947694aa8bc87cc8beda44a1abbcb5404aede4f13a503ce237ef981abf34bcea488e045443e7fbf6e0932e60a56392b23be92722ba2299fcb6e2ae1c4a58d2d38374d6f838c2efc96e46302064015b77343daa64e485d632806407111a71fba8da1b5d55102c44c06f2e8220749805a9a3e033627cb9034dbc48197456a8224a904b7a55057dabdf7cc6d36d31ab04bce933d1f012dc4cbf409dcf538bc36f7092f839d24a4e1aaf117a4a6bd70f450c04cad7d871d095daf9bccb98b1ef22d75fb7feca921d258c6c2d5227e4916b08b76ebab07006b5885ad886c9fd75a4d600fdcd35644807dd85983b0026a78180de56eac61f176acd446e14b3712be974c2860ece460805510488f2e5c91e7d5064e79d009c1649a6f3b4621a8074d51e827f46d532ea125fcad79713fca8db429aa784d711d2562b3c45f3bc1b8808618de25cd97ea1c2639cab974f63c444057dc466e78f11b586c6a0e7e51074181a84dd2caa6ca83c722a61e8de84d5432ad039c61af44355974dcb7cf75e46d5b19c42513086b21e2a77355106caa51bc3a31b6648b19552c2be2cb518a1ce8fc8d1925c6712589ebc4bc44ee72d85d036c294827e2d2dea21aea5410b823ecd341d2bd0d79f53a7fd48e21b6e4871fa67568c1743a82103376a6f734de548bfdb7c494f81a68da10d54314d503fd894dc1d8d8d7889049a7b5a84de9396bc15e6422209e3e1adf022a94da9ba80017e422ed5fa04e4337ad1d597d1938db2300e6119b5bb78e84efe38a380ff626476fefab3d5714ac2f42ba7dbdf541a73be4918a391b69397b7b59a0d201dc4a92d7e4485f20ff3e86577bdff0c74567b7056fc965c04b43f356bf72fe2bcec1efa387648d254fe6ec7842dce5f8d6d030033110a9173192118035d934329c34a84a566fe2ef5230bb08ff0102af8a478a1df668e1143babed0e8d1b5b471a6f52062f15f67b3151eed7740d498489703fd04464dd82377c09682e47e8e202691798e9abd73c4d8415ec122ebe50d8967ef876d5fc48a1f2c07ef5e47b44c14f57c1b9dea9655394feff51c70ce0a0e4af6477af5276c751208c7cfba07f93bf89f9924ffc64c2aff773ae25de54d4dc54b90114d66542d01dddd1c0e6c0da99ea5c84b799bcc89247e77a26399187094dbfd6c11a7cebdddd0e2aeb8e3549cf28104cbc7591c63d196889c1a9a60cb7fa6ebaaa7a4769486eadcd053714623b5adbc7f721d101cbd74a0fbc3c5c29c6b294a49a55abf71ca9c2a690ffe1ecb6e791318801700e9596de466eea5e7790ca55fab034e7769b1f037593768b894f4418f96ee77d4458a33c4f78799d8db498f8f05aa70efd714cfea3a7b68e8af94380d599586768a0bacb3e4daff6fba84153636617381acecb345d27a1eeff9c74b7917aab406ba34db8933f74e2f8f32ab6c0c49752fecd33e69d49f67b6567d315bdaa5699bfd767c5dbf092c20f95813b5b317a7e091fb701eb765e78dc278258539e36401cef0c63d00fc44cf97d66bc9ea17d418f9cf3dcbe1b0f0ed0718dd331f37eeebf483397f82ba95c13dde8d52d0d80808805d7ebf4c4b76a9f3e1dfa55b26cd42b701ca5b1e20e067b6f1df0b6e50e829ba7b18331e7a86f044219144c66149dfd4fd8809273c2915fbb8c7c2dcf739a10201cbc9c76fff1c8bbfbe4714f8ed5272829a348031fbd8c9ae0afdb6030e44a7faef551484e9080a6e0797058918487a090f650ea59fa7b9e372fd270274f4139036f1e5cef37b84db3c6a276e3ea059ef3b172820f70a91b11c64eecadf55d051ce1676640c97fe403695e95104e2ddee05bbdbc0d282ffec44eefcd0b67d0e9f731f9c8c5020d9154bc81a3816a6ea052336593face08adb41a8354f9f57e50ef32c74fb394903d48dea4689b6cfb5c910ed9e6cd3387497cbaf2dd1aee55b9d6fe8bd4f33438bd283913bef3c083a68bae00bc2e2710641e6e01db487021e66767a76b628b5172efcdf40ecc7d8c3b5794cc0f10268cd1c2d830aeba6916033ec5a23c2e551e4b492d58548f6b22a600374682542044e15e3a62ae0e4ff5cb844ec2d103efd85101ad28770b7bf483ff4c6187bc446a5f0707a9e096d7934d709ccbe0150d41e272519be49fd7b2e536f1ca483c35a7a6522981764113d5e538ea7d1277c83da6f55c33c37c5eef4ab6f345c7f1e559b01301ddd091af30b9e228e9f2efe4d00477ec240cee8fbd9449ade4848b1d49c96086d448f7453951be82b6a8f02c0339ca0da70cdcb9f4c1860b3463cdc4709524ee9435ff8756bb9e659e13e098f2d75125f7234efff2169d5345a6e2a0d0424c5d3b87a648822510ab1289b872f4ba9ff54055e757838ce6e5b6f20d06b9b3d1680800ca771b0bf170d689432cb38759b10031f3a57f9af87a95d81baba4b3c9d6ca88578a2972bb66a99ff8bb8e8b8385d911d9da95218e901baf1c53fff1d83d954b8ba135e1d63241cad94147b2c0dd864138ce05231bde81bb13ac75012600109bdbe9740a3758170891f93e90ce74ad2d538428c221c124b381d67c81b61c015bacc7388227fe47a6dba0c53b22f7b501667ab62f6a3c574873c8fae9173e2f8e1c37fd58c57062f8777dff135002af86a33a6e3be2d3e103a1eb71673637efd29cb47844f6691e73ac12158d2320717da169d791453c8051a1aa31133ad606b109e544d891f1d4bb38020f7c5c469895b09f7fdced728b9e3a073cf3ac322e2c6e4c66c6dee207471308b89fb740011500cfce384c3d16ebf349bde321bf7d063f2f48587ae5b9123351c9a4a083580a0be6941a808b539008fc5a1639e791a38ec15a828f5788a4630f58e16c358e593fc3b1ef50977916264e83016b90598f5d8563466a5512e8576738a10a0fad255821af27d0e98c7540d6d750e3a99610df6d1cafcc8962d3af8e58c4dfeb9e7b1532599c2100a0b5dbc11e0cda8bd40c3a0dc86a3d278ca3c3203905296b83ff05d31373cdc05b99702aed2f8092ee16b21fd3d192e523ef734fcae717d263b8b1eee0725f800e14d464c076b04904d49b19e3bb8ddb0aa81b3dffcc71d4db9508e04410acf2238c15246651a927905ef7e53994781c23c655c72ecae5d6d9b728516c68fcca35b160783c5130a0942f0d6436bc0ebbba973354a08762ed3f58a626e49543eff6365deb3d02115f20be24496f37d58614ed83333f2b818ccad3f8879a2c863e510cb38e7c9bf5ac6b48eb48e19cf06b00b1bb9d01b77f3aab8563e09ae9604395615ecfb0023e2efd356b8154a408dec22a25ecb087bdabf9ead07983b143f037527969584ae34162f011dd84361718e8e33fbd87567c90e62eeb340e243d205287fb7ee23fad77aa3ae8af46461cc40c411aa9ed4b36e117e351b307e6aaf46b1b9894cc6998160a18793f3fe6878f4e0a7953203c2325f8f2a779bb06122a3ec1b41a9316c82d54f2addad073c3858c431bd807def7a1be0572265da5addd41d03511f129c65808190f1b582d3ba3755d57db4d3c7b1a00877db0a0c78dc0602ed62d0daebe6bcd3854caf64aabf295b2266fee275dda4acd470e955a8547d1ffaf60eb5dd69f83a556837af6e5df39a40e40bb142cdd2ebc3607547f03809f85569df106b165a17f804f029498820a8d1e580915090b3fb7a098da7841a9bb3ce9168ec760fe560506c197d5e439641407a1d673c03084bf5f230b8368b387abc6430ca140c3794b027336556d21df686b8b3085d4f1ad5733a1d0f2379bd3431b95fda42469ceca06488c9146dfe3f9d8ee57d86ba09e1d5f623191a6990adff8a009de8136920918de110075f065eb8d474fdf75892ebb85d0c99b64b7a901a2aff77ddec4abf91b0dd7147c75d476d0f888f3db1d975b09bb306ea01fec737475396b0932ae1f4ec2f69edeae29533d5b193b70ec2a279df2a44997d62149949e2dbf28d1b20ee89950ee94d356b8003993c296e73693438df34c508547255f48af48bb7a4345911cceb7a3e2e4987722cbd5a0548f85f18d30091209cc3e2d5c625ad9b4dcc79cd7e1960d442ba3197408d9df9cba6515f9dad5aab0425efc4add67fea739d412677890dadf357cd8d2919fe5ff75e9bd8126dd533212623daf19f7c47297a5f00881d4baf0cba053590c8305e451c0e2d2b098bc632cb9a674c4243898b235cf687809fb8fbe53a563ea4ab5db0dfef82c2e5e35d0f5367901c4411f3771fa3faf0d5798a8932f82965f2f6da901669f358dcac49796e13ebb535fa1b9be8fccd8479df104d654f446b375d6d28d86a2538c105bbab8b233f39d8a0a91a50b743281548c136349ef6a0a588e63ca4b775d6e2e5a81805380b1dd276cf1afc7fb67010fdd52c4f6dedc86ec14cc54b807e5dfda0654a372f10a979fd52efb26f1b84da311cbf8986003994b500156defa9e6d9f2f500513ae6abac61832d8b0eaf8c21fcf49ab873286f05c9aa1d3cd1b920e20167c6fb95f713ffdf414b44e70c58c8a24519ec6351749ba136941b48754429d0e2715a401bddb03834d0840c98b153d894cf7eec0430c1f268c75e6eefbb34117337ba609726dd0de84ead58923f7939f658673100bf6ea85c59ac7aee5d9bab662bdb594342538b8ee021b4ae9e67b8a1560e7f694f944c50df4dd3446b8b15b4e245cb747680aae9e3ba7da7a2154ff52583acbf3a4b625d38670818bbfee7946756a83557083557165b9d46f1ea9ae355a02e93ddd72686f48c381cce3d6e22803d16214fe76697264419e1ae43f4e92e06f994cde36acdc4fbf614cce843c9aea433e34f62e4ebc3ca45ef0b657cc3b0d67bf9440a9ab73e6409be9d8a9662a638b668b15883af2308cf06965483aef0d0ea704d54c5cd858bb80cea27aa218a60344e9e88854b8d62ff3179f42a7fed8e5484f46b40c14e57d10b62581816bffb56139d542951af5f0c9b1daefb573928b95239c2e914ad09d6f588e3642b74e4a982c53020cf31ddf95997a32f523e8ad9ddf073bf874c4d19b26645b2e87b5a229b32d758bc113ed285f9eb823d433685ae5dcbc3215901bf9ccc0f381034a173d2ebe2c435373428fe0f5c5732ea05a873322ac95cdac5a369a8a44c9d2dcaa22fb6bfc3a50f744400387a3488316c430cd1a1d277674fb904cb560cbea31c6e58c4f5c977122a79098cafbef40acd7e68e96df8f7983b58b221c7e0e81b7f4192ab66e2d691c550809a82d937c6e2d752ca4396aec3039ae325e1f963281178e52a9c175298b850aededcab708c795e66e793b9ac8e46aeee03f73441329a2b5a957d31d3aa575f9a34343aee85b918b58fe8e094acc01e1932d8f3a3a510b0bc208578e1121c1e6c17565c10a8e5500c0eecb30c2c0bc15ac88196892560c141aca3a4384a8ed0957936652891466c4ac0d9200c648e8d9d85f46dbc64200705b4911a40864e6271ea09ccfc01b4bc78086e664e3d242418799b2bc8396eeba07972d37873aa0ec45d339379c92403599db2136d5831323531b38438fa44a8bf3922974a0802b0cc8cca7f7bd2a620939ef7c265f50470c9d3fa6a9317687f2cdf52096099e496e8073cdef48d80f7fedcd4e31d6f5ac0d360adf60612f6ff4c53622cbab3062ef0382cb418c1ea4d8bff3c5f224df0f2a1a3e243fe70561ee0acd3c407d373eeed16708edd5de914ce595efdb77465faeb0662b2fdd5126eb23b5cfffbcef1d4d492e7a001d5b03bac04bca99041eec4d085dbbd3b95d6f1f0935d46c1bef6df855143fc82d5043966a82d1415317ad38783dc0841f2aeba4fccd41c7ac5d26826854b176a0d5c97647cc5668d38130da51d1f518276871638b37e4a4b7a86f7ca471f272225eda1bfb3428033dbaecdc32fc67a1c23c75a248b7330be39e336dae1b272d82935d051217c64cedada7de0ff3f23aea4aa0fc77b40218fd74be3275557411c98ff8bf93425a74d2115ff21590966ad3d9d76f5b6a6b5db15917fc90ae7a80f5173386b61f7157b8f2ff856bf720701b91de99d42a350acfbbd56e2f6fa4efdb0787753852db9d5ee6130645b62009c31f6fdf8616e50fe14f7e127deeabc3b806c704926c566ff1e4a2f91839a58712b1bb1d1f907c4fe2f3e5a50ea5d368fcdc1121561da4baa35dc7d9110cf6fa6ff0d8d349e81cc08945cf431f03dbd294819f22d9f12ff02128a27c37b5459dda302a18f02ddccd425522c4792955b165347e7615b9fac0cac7e330f34e070ed3ed889bf3eaa6bafa5e6b4f50fdb42e495733e02c3985449ab2d3f4a3dc486f2ac892572bbf338dfb09b5cacb60bf001a760937595868923680faa24b5f538550a6f89baee80500bab66c9e10fff8b18af6f6a597883b3938178374e4187eb1a5755f00bb6dff48329f6ac54e747a915def0fa634c79276107a1e234c7147bc6f38de0fe72bdb59a4388f3cb83b521464a4c423a4b408e948f6f3373bf2f8097d2a323330caf8f67c1e77a7b924434955fda33b908057c78b8fd251b890c1291aa19b469f059017e3059657c944b574036b63da2d7916de5ecee348ed577d89868a8b4cf725e3047efb111c383724b9667021b9b9041df7420b88ae48fd4b7f4cb39ddf30bba031e34ec566f656115e69bb5a890fda55da674f283d7944952c648d2aa262729037f54f4950a9067c1e8cb02f3173945b5db9e1d6f149abcd107408a86e43417337c57276f408d7dc2af04a5ea9d4074a2e4992b380655de0658fdd021451ac28957f4af4e90f80471ed0196603171fae09d5383558ef1e0dcce3c8d66525edd6fccf59cc380f444e22f7d05cadd4b256437eecccf2d64505c78f11e0a0a1e395872b9c7cbfdc8719eb833e2f6282fa91cd733ce49f3fbcf934a91bf73d9cf92ef6749184696d00db0bb0e14f641fd69be1a89d0e1bc7ccb8ba214c3477fd2d641b626746519d00c227bd210e015ad272a9873d5329ac721be801e13a5632187d7a3e168f00735d9967254e2596d5c36f07ad49dfad78e16fa67728d9df911215b8ea1a7bc58e2d5f2c69d329408522577eeb63f2c1d264fd7b2cf7ebaea4cb3d83d09045380ef1c5c831318e5b499cc6777ea9297741dc67ee03e3d4c7d080bb65437850b1a907c09f930430cf6365f9d0b30a6803801db6b9c9c17e5eed72be2fee2dadcd10b6fdd02730abc6890635fda9446c37f8b4ac2c40a000914ecfe67b28804c910b1eb4b7dabb5dcc9eb3fc2560ca7a653fe478fef9d08958fce48a6aec87bd4ff43a261e7ed562bdd63e28d98b027190d6d6390aa655c0cefd5b0dfd8192952fe5bda19d1275d289f97ce5c4d79bb9fbb77f273ef5bd62e3a7fc5c10a1011cff5ef8608259fd46c25833dac33df98a3584cb0f7713b5983e81cbf5d13ba3a604b3552f91b946aa4fede18724452f68bad286bce67b81447528d602084712f9a17772fde0952b23d12cf423e188d83ae9b3b101ec6bfcec4fdda304c5ecf025fcf74ca896684e18507f99ec21329833376009e8a1f3891e6f2d3da70b5a82dfcd15439da9abcd6ab06e45ffaccc855de2ca09dd4aa2425650f6aa3a2966565a43ee3690f3fe66068c755ae03b1a6184d4974c05da15ff85518e001901426bf203a8e311f00c9ca1568f419379f9843727aed64242d077451eb7d542ab4d3616f0e1b1c48a7b4d62c5dc5bf0374c655bbce9680225a7dddb80eb3fa617e966852fc5f34c980750dd0daad2ff46728b58c34834f2411b0be980d51b20a43bde9b9529955fe7b6442efa2351522f5b22547d56fc9d980c0b274f352ea2fd79600644514e37a3b617236b956f22967f1b45499f4b3716252a02799721bc1bf225284670a00adfb0050450361a64dffecc00da12f426f5bdab2d7173ddad1687919c31c8a32ef3db270f0ca1318e72d1c56d757459d89be56d894a5136d946e5b877f0cf6103cee72fd7786af1414b11ab7d4252b2a754763cd87e24502bcb581a10025480f122c6b6ce014ca51a2e0c665645c11330f5243118c5da1d00a15523fbe836493870f692641fcb38b52e42b20b9996953424d8ac372065fd7517278aaaa299121dcff3b751c163be3165d3e89fc58a090819965ba86b11c2640444130553c5b42e26fc40f00f5261018cf7be4efa6fb777fc0598320ce7984e815dc0eaf77408260bac984a08c335a0df93f32399b352de4721218129f62f72817509b0ced193afe523321fbdce3d05c5252da468b0ded16ea24a0cdb4eeb1a302caec80471c4a1165a3cff471dece96d9fd1a435ebeb05c61a4a0d2d617ed76f5950b215db92fc084935ca6a9cc3f137f9f5167d8fcaa55c403d3b0fb59c07bce89c2c048cd0dfe5502b7936d41f00b98354243d2e20ca1fb1638fabe70c857b6f33437b673f2e09b96924f34a798ed3b838c92b6e0da967ca805d4061a14528ac4a69116d6b170a21e0e47c81a03a3ec992280a7e340822e3299a3b66486636b7eb92f62638dfd1c9f8752efa521d4c3a9b7c74ac9bcd1bcf85aabb62defaa28d1c8731cc7548d41a75ebbad3ae3d816ddfbd3a8c02b0581d76571a996fa14df164d81c93d0fd31e62344cd22e6540fb9ba492826a3fab8c6e6df3f074d3b31d58d031001586470473d80585124790000efa9a41d3265fabfaf917df8ada5a25266b8b1f297082fe13dac21b008951dc2a69fa008ca3284d16e6e201b341594be35ef88f763671a0f156a9e712e58cc52a4755e5b5de7e177654082bdeb3f3d63bc1ddc1c9a9c30ecdce4b667f835bfe114bdbbdce9587dde615f49446ede895fc30efecdb4a22363a7d90609c596bcf36c65e2078483a0999c13ba12ee1986970230a2a7c80f56dddc4ee7776fe19cf473ff23e209ad76e757453fdb806444a1abb1e3bbaf0bb5dd33c857a08caa1cf19e9c5ae053b31e2925090f16138d2fa5722a974d8cfe1fbf00839de6c97a4601c34089bd90993c58c988d76c3b35405a909caf9fb935eb35b57fb7b7be7f3413d349dc9c7169ba0712a44f5492a196ef0705f52c1a13b704222c06b26ba2c4c7c9bbfdae6104f1643cc60eb3e14a249334fc4bbb71676673abca591df04c67c525b20484ac490d0375559dab0d7cc10e0804e191bc892caad40a6ebf8ab7d9523e7b7a058d0cfc5d441970ae92904df4de81500545dd5b0817be6e0265e2ec1a146ebb78534d4212776381b3b849ad6ce1009b9d3fdfb87e19f51e5e9449e7f03e227dae1081ab915de47079553c1de2e6b3ba75f1ed61f17cae6cfbe7c0915dfdb0c4c95953ee033f00b1ae0458ccafdf78b2438730410a4c64fee1a72eae39ccada8183a262f1a1874fd101ec116781cacb897abc3dea8601562a18cb78877b5a562fc4c619be17983619e4a87759bc5af51943a4d201a1b9c2a93049a001ac30d4f86cb6c51c5553a1fb91b04a3348315ebcda2e239582d425d61e7cc38c7d2a343ee274fd67b086b5cec232c59ea663704e5381e966302d233edc75d5f8fc3c827f3acb57f9800ad3a3b2e035ce4852e34840263b7c3b9ef5d647ba94a6284b175e2c4688e485b84f44147c7743494645287fb4dfc57b50c55f9d8dc613452536e8d97f9292510293de0decd6c9acd03502a82405ca311fd14bd34c3766aee13b6b33025b562609859300c105cef133b9774cafe0b1a9111c915207149b172a5fac2c86378410edc166ec2f768d02232da50bae8f65663160a1eb23259c078ea35e03e00e4f81de77bad8094dc55d5d46694a4906e45c729d86f67df06501b5570802cf00ff3db8f7ad75991e2027fef3ba21fd84e739a423642207e761eaaa5846f10a615d007ab1621bdd40585845bb3df420e33532dfeab974690343f0075617d09a170e68e5d427da8ae30860cd9f2f2504ab5265ac5050bea7f61aa69612df4b5eef1d133bdf20e8a2c6ff60c6ed49583251c5515e9fbd3f025c008533d1cb74dc14fa67cb7054504f63a045471f4025a073e773a6b2fea9b6be55fb526cf4b65dd06ec80128232bf22756dcbb745576d3e78a997e02ef19929681d7dbfde15de5bddfd8e91101c50516dc3fa89ea8b64e85b8b5d9de322d969a7f71105a58278e23776a85defbefd78d1b0eb9bb09680c709ec3b702485b74a48dd28afd84d72168e148c5f91f3b617c61eab5f201fbcb81991620019dd3daa550acaeda26536e20e3ee2992fc2b207d5ccbd06511fbcf19e63e61d591c9eb35276418c60ac6275db709cac40673eb7ea3c4d2d342f0c27d8aec6029ddc00f606e55f86631384fe412c61ef97024046ac34564483c17a3f63a4e96176dece5dbbc6938044c673d0910eb7c6d7204f3e59c4a5b027cd5f646968577b514e2ad4f1da0bcb88b1c0fbbb630697d28c45a64e9b807aa977a7e082ba114293e092ec717985deccef42c8acd170a70488cdcf077bc663c196d4c7d1cd5e35adc66fa514e6a4e20a0fedd81cd3d2cc7f0bfa76020ef6528c7da2b3adfac6de0e25094b528c2f1307a873a3449257fe9bb1463da009c2aa65e3b23c1dfc0edb07c57d1ca97fb4e6625b73b26fb6bfcbbe9b9cddbf13286fd8e58babae5318bf68725b154218f8c1a26a97b4b9b45afb70d943bb75a55648b0fb6831fab130427fbca458517e551516ce746d50bbb4e6800e85d8dd050ea43df5f06698314b7ef45028041f711fba438c0760bef443345f53aac4fb89a31707bfa38d88c8e6805207eac098f6abc14c86dcce0289d018da8ad4a47add1cf90742dc48ee9053f31b9dc2a23aa4c0ebf09d0b8b2abfd5b111f1411ca0a5d50ab078bf813f090aa93b0575a0c784fbcb77faafa95428ddb9e02a904a5e3810a899e4d75a66fc43ee30e6003e1fc987fa1ab91dcad63a5e9b9779e6f6b1d0cefeda79531e80386cfbb42027c27e6103387045ecd5ae7c64677973b2dc4ac57d715ed780894f8a4af4be3d7691bc4af4c32ff3dfde2b6ddc61144a8ed9a4794b6cf30ee4e49c83b605ba6bb7106ca95d55fab945b7595642d816f912e64b64f8763879b0e6207506e0a4b652be2698bf9ab16e5a8731b5798f7487ad09a5a5b55dc56267d38049a8e99fa052e300761cc011984f9d24c214f381cf731a606dcddf8a1286b9f845ea3f17a0ef9eb77a2f96953ac4e1073248da8ce6e62e605a92bce28ef3a19fe7f67a8b1486fa1277d5440409782c27e9ae63593491aca13dd7705eff380ca1448b3a2b6dcd25f6a0fa24576107ecbc99a8f21182d970f4e2357a3549d636447ab871e8c286138111bc84797a9a949be106ef725bfe09ae1e2e84b5af43c0849ceb3b829b0d5c66d6696fe81b9955289927e356e449669282983e18629bdd64f8e0e6b0aaf76951e218823ce5a28ac486c16e1f43f51b43d60dde2137976253f29d67221b33b961a6f4b72bb323b8b0ef7775a8edd14f240220ded036f4bea5a2f0c4be5d5d211a17a355fa84c09790199995f53ad90f7efe350c2b9559d8a9e98ae6d3131bfdef266bbf1240b987f054607918ed6042bb4c2c6c5b0b402157dc5b5f97899ecef54c3cc587a8b711c4fbd9255284a738705f520b28399c6b8d953e706ca224621ab146de1756c641263802bfe71bd3b22ddcd85ba5504e36d124b4e1b62abfcf56f9ca781ecb3fae17b9abd35940fb948a538034afc85e2a52130a6be89735382d8881b29b5598231047103a6f4b72f17420a9889311bd005ce7546d0396a05bdce9d363cd270aeb39909286663b68e3821081d39a5743bc3273ee5670120b23ed695cb0a37c0c1db5dbd73faafe30ebf1d71773c39c79f955b71288a0694195373e5f80c4e3472527e0df29ec3659d721a51a39b53faabb482332d50485db8b4d33535c138a2402f681b7537b92e7cfaeff88e85255e583ea19ff525d0ba4f36dc402b5ad923fae2000038c1c38f9becdf0bfd5b1565bf8e178ccb6fa0370c8d342d3569248ad766235cf8de1439b303741ee9f5b1f41451c182bac28ad749702f35fb1acb7628cc7094079d4cce39dbd35898502f8714d53d24b65ed2b7cb3ec88ea4dc33f4e9855aa2d2e676376f7d4153c817f0343758d21a120cce4361075f6d69b547f4cb5778c4998153f442dfee95b4807f31c67bdf693bdbf9086736cb6597ea6650dd040c8dbcaa277909d2facdd6b84b25f3d529d21d58790a6acfb777f9fbe1cc30fef41cef1eea2ebcb3169a5bf45f09ab778e591221ba46a89ea13f9854559b0d54bde88db8f741350dd33d0f399f5cda85447b832449895b0363a36fe341078246315ca6edbaaa99fd2ae8949a704e33c0bd79801be18899113d76e53bc6c4f7249538a8cd27dc9023493254dec20b05594527a09c320cf86e556bb673b0482676a5600e3f86d811dee7f841384c291ea3accec6bd27357f60ab8f1f0ddeaf2a8d5d529cf593ac8443f48f486ea3ee5802ea95e12cc509d7c31451546bd92415306a831295560aab9d034c7e38513620251a1a9f14d3dcac06dad4f13f18dc1cb3d40d17ccc63f597cdab3009a6554454cab9772e58392b5c8b58230d21d6a0be643a4d8afdeca8161d433391408f0ad3f67ead64fdff482aee402e2c10cb60795aede7c32852dfb9884caf75d8cb4a3135abe96c43978272adbaf9c084f50c1afb0276f7c228addecc52768e69aef7d81275a0c49288e72eca20064b02a3d2a5b068f5f5dae2495dd9b44353288445b102de65cb31a77ed8e6758a82c3d3dc6892e12357c90b690a60752d35147fabbf0ae77d7d19853a37ff3ca84946d5d013724b37265448b0886f86eccab3ba3d107f01362b3d142c7a34aafab90a7bfb609b66fcc8690449282b670e6c15269e7637db6f33e55d088b0c0230328481e10b47fe136d1c25422d8c5abef94eb3d99772ab131a5e70fecde4f5f72db6e56c0003e3e874a3232ad965645b0f1d1807438518ea38c348f95f88cdb80b9c0a221250e52a1675f837795a0c3108e43cd3193cb52a8bc2b075928628871757179d193c9b82b8cdb476e6058a39e78fcd4d73ee7e064c1ed3c9697fb9fefe3a3640c350fd8a9f17775a8cb21f419b1936c3d22a9c5240aa10e89ec31c77a4356344eb293e0eb02070f04d39eeb0e3bbb6a61b41707f9cf2f2d1ac45001c013113d08461f0655940e3737270f4be86f8bd3bc1196d1ead3e43d524d2830f135de09e04f3d3ffa94979d964272a8943434f421b1cd9bf1e063c62edec65d19debb217370ee54d0f57a47431b22071ce2c43ffa0e52ed113cb2c68c8d38aef75994b7c7b79aa19674b104e8835e81494277e3f6d8274cb5f8eb7a75c64aefc98bac175f5a0ac271742da08322cf8795817f4c24531a231327faf3ce50a28152f4d8ada7e55ca0b3531f1df675efc99206cbe4589d649d296c76502f1fef4c2704e2fec9a2a08cdea78cddbb1fa6b9c38d387ecba0abea03af4e23e01ea317fa775ec3a9e2e85c27cdd425faf51cb3190fb72c8ae1e9a3b4e2500dda79ad90a9d2c03d747b8b3d29376dba317eda6cf58ad23c20faf5e41da24392eea4c2618b40df96cce2435501f30a18d3cb228ffd7ea009954323bd54cbb27c479331a48c556425571ea6382efc2a055aeba13502d4cb7b6891635c216ab4338d70094b6586a2732d4a34602cfb0a51d7022d04cd40d89d94157b7fff6882a371ba5b9cfc934569d8d7386f10973281c77e1d0c9cfdf43c6b3a79cb79b514a825e6b85b6da787daab2b3a439efb8ea409ba6bde288e4d49f95c9c4cbf103018891359ea5983b85d66614ebe1eb43f1f32865ac5d3b76c377fd441f2eb3435c7999f09ecc02209a7121c1db4ba87711a5968fa04f45053bb7f765ca604a97bc8a3475178aa03f606fdd32fc38c4947e6e4e0112324308a049a45ca62467feecf378dd868b31f449dca03ceca2b52b66ff67fdeff83de26aa8efda5bc16789b24f81c0e67d5ba95e9ee762767c2129e4bd2c94eee3144c67c6a69885ff1b58850e5ef749e66e3b91984fb96c01c2549f507950acb80feb96d5978d6dfdb3e0c2ab8d76959204bdfaff32a84b67c66e5520c891f871096c927a0f2a10a88980b3a81307c822b1747c52c05c4b410ed78db85d02a020bdb2f36e914180eb5ae2c0770369b777403be61035f6e2f002190f5e674a96e0658959f82a4c5e704d17fe0b7a0abb86dd4a8cc044fec1512ba1da37c58d8306f8575a6c291e6968efb0e8c6570885564668116e524092787720d3f87e4bfa993cc66e69f19c7150e9a91d28972e37724e1174da60dbfafb841b2eda96dba2671bd282d6cf066c395c3fc8ecebcbfd154b9bf8324cbb334a97f29bf873cd65aa1bd3c3a649cc1bd9e33ceb3fe35b83d3cbc5c2e730535083c3da20cbb3932bb93c108387f9b8225ddcc5df97e04afa134e10ad88ce6d232f2e3f753ef9c5b52457924055631ceae26b6e9f225c2929898a061f3b1b66bce38735a4531d9ae74a5907f15732648ff1224d22a9173db96b4b05d2cfcb0863f4eff4fa631c34429bf4828d9da45b810489558849dcc91ffdd870bb912e5fca1e250c7f7ad7961be8f4bec28e338cfa7bed3140e03e8d0a97de4c8c9d4ea9ab6a6816a3eb68be965bc62a81b97ae97a37ea1514fc11cf16d0ac3afb189e15e876290ed2b9ae17d85a53023a6bd5448f4870a3c61c4f903f479901bc83feb0851471fb55d6981fd4e15b5fb0016f9b60e9639afd185674dc9493561f2b27bd4c248bee0f1518399b3b47976d89d748ec35879fc137fa53ffbb8174313291047a2cdc9a9e2da9975be6b37a636d46289aa45ef8a20a72776edb3da711af0df8ef7e2c1a1da2df55affd6065cf84fe6a835109ef887b1372bbb86965d22d1c1f97e153fd8c695d108a5a3993aab13332e8f38a391127e102106244cbf26bccac727a0bab5e6402c547a0e8cd350a920288d68f462feb75ce5465456e13247e459d2d964cc231013cbd2e89df8ef1368c30c1a9e50d6bbbf45bf94c4634cf4f8d3f21ee0db36501616ef015b9e23b39606890672c0e384ea70664e7631ebc842a1b0581a37375280faf5926aeffd8cf8bb1a663b99d32ead8ba79b0cb2627976689ef088740bcfadd6e70b6848f1bc4c73b29e4c16a0c448dd8a60c42597f1ae9cb28c409082440be1abd65fba9943c46065287aad5d17a7d3bc9662521029d0457bb4940ce92809c15e5b7f4cb857a924ddc8f6a9c4f8d6257209889a70262831142b497d3a3bcd84226ce4cd52ae6d6f54ffeec2fc656f7ff57685011d633d477449fe51bb648cec5d2c311b978ac45df664d6798a1789b470232bba113b294fbc87ee224e4b2955fc270bc3d080b9e1fd77cbebbdae29fc24904525c6058a5a2c6c4f6f5d5680d886f63e4536e4e98db8935701ee1c013cefce4de4c40c10b6caf0c83f06e86816e79bdbed7e32e0b4ea24fd899cec43f1e7bbfe2277377b0fe8fb81db03b1d2720342ca082178c0736c379e55913f79ac523180d2004b93ad8ac227eb73cf509d777c3f37fb110b60cd4581e39f22c122f9ab2576a460cf48cf46229c3b294072ee8455556b14cb2807d65a8509d5172bdc18126aebd763a5ffa63dbcdb52b7dca3d7f974cbcd0cc899e8e3d7f4365fbad818058d37c8d3f3514dc29b7a7e0085f9d392d4b388df5fd63d274e53ef02dcb8bcd5b7b5f15d4ede208da0768a8ba93ac6b731cbefc25673c4f95850ce3de65fa59d0f973b966444f4083935add7d4a028df621fd122df1b7091b568ee0ee474983e41fc249089f6562601af25e8751fa4348a9b5409642342db3424e31ae3006cd7f9031001934895e3c49549efc0a4e406b8292fba21476e2ac4b6b77d17ea63c907d7d9f639d5eac9340408e8edcb83fb8ac06775094f6d5c60b444d7fab5bc3cddb0a8d0b9fa993c9983834c8fcc845b8544e1883c38e1a061418f56c530918d64db49b2c389555557cfc2368d11db1e392727a3e0ff6245a34227ba83103d87473c251bfb74b2f6a0a436fd931056cef5473e811b7c53af90e76c7b425abc3aaf5f16eea2c1175b940476c4c261ea253e09ae270d1757c6cc415251d1b960281d9867d561b27c1570886b515ac19f109b8676a110a5b06bf62579311921cd06be7250c05f33dc86655450c9ce1ae44af0297d15c8372be08caa2b96c8be346f25edac85a2ca5e8d7efacaaea8bcee88e199c8f94fff9a8a31fa51672ddf944b3e7396047a843192496b857adacc43422a92ccb50668f13abf506217eb6308c832e8d0bcd59977b39dce38158e5243ba3eb8e9ea972aceaed8965b43847e51593aed88bd5c3cdcf7280d72ef4202acdcb42d8244ff8bf07f9c8a9083549bf120e65dbca429521007cec762f24b4fdf69e09983d89702a072a8b0f83fb66f6ce467ae3c4163a8e30014d9248cdfae2c3c884622b6ac4c669799700e4ece5099ac7f8c8845205caa9624184562166f72ae2a8e91c49d26c6922d074dfdc57fb3359432618fc9cb7eaf41182ad9a075e51af580a96aa7def8c527498cccfb2baf3d51ab62119f2f76bcabbd4b9685056fd61f613918030321de2b209223eb9e80cbaa18987a7206f606d981920bef01a489052064e9fbf03f9a67fd61caa04fb114db313cee70d19bf2308ddb15e9bbdcfdd74d2568eae5cb50c2e340275ed8deb3e8b3ddd289d541c1e5db9ea52d9a26963dffc244ecba45a0015d770b484d9aeabb8419e644ae4c510e65c6fd9a6622266cec5ddd02aac9ec2030f2572d3c753e165b01b1999ba4dc64679a60a0891cecc1361d80a30c7fd14302adf0d20847bbbe044af2aa9df810b3d0e3a5d20f48b8f2c250662a486be133cb504967a0b33ae72fc7fe3f66582debf6a06b22bb5ba7b7019e0a7f862ebe9e89c47320ddecc4c78f4f08c84807e5183ea9c9e2392efbac82b13716cb9f4c0b2a2ef4210237a00901c860f4d14ee8cf7191edc0236ed387f8e9c68d38a713a824811169bdd418a460cdd491c2c7ab771280cd6d620c324bc9bd2c20abbc1b953eb40204a1c283a6f17ed8d089fbc62066fff08cd3812cd9a46b6c9890cff03e91a697e1ef932a178adac8794374c7cce204460085e870e5b44b61231dd76391e3886f468d2e86ce3f27ff9bc93ae76b25cca07b04a5b689337ef76cfd4f4c793003fee8d09fdf1fd777017c4880111d3d5524787bcc656ec378b4637116ed283550938346f62c3f9cf2b0296a9115d858b5c0ea2bc0fc055c45fa4c00d25024217071b7fa4fb3790692b205175d1bad0dcaa67a0c00b27660b8c7234ccf3dfe87e9e843755969c157f50c66740897207b987b05b71055ef170ae72c22c5c1cb49d043325322c78de184d62a9e12acbd44184e42336d991d07c975e53e769670d9b9b04b07b4bd818f53246afc5ee88a73918445c9b79c1dc964aa47bb050d1f36b17c99525b9f79a4bd5b4299a2df9e009126dba0c56d075cbf615e1ebb1fab4e44b285fb1d4e171e53ab6cf10da0b6fab0d93823eb5018458245917be8646f5ed6d70cc62b365d107d3019ee7728f31c1aacb639caf86ca6dc91935076f375faf409e62050a379c54be04d9d9cb13defd92c5778215141042234327227e806d85ab5846eb2d741930e7be45eff19143c3ebae8908d426ea0842615d078810cf38afa516907d25effe9a1a30e61da0b8e1ec6cb3f376c069dd4ffeb0764825e5ee63e28044740fbc2752b2e4fa55bf25b675613dc49f577371073c70ba32249419b8f012ab90b9409df383ca323c9f9ec4d492f145ff94574a3113436c21ce8b218c06aa59006ba6c2b4bddd4338f6a702301d149a094d1e9e96818fd2422b9e905e01db6b52b219600200e3f8cbd2af3ee97378c7ecb3a74f013881c59cffea05040c0873ccbb85503f020db5a41b50732c12c7015b70029ba57482b8ffdb75f89f3e08dcc9062bfeabbe369ca1ef9b9e4bde5c3000d4d3fdd6fe23b21a9b18c8b6420e47df75c8b93f1b0d18e13b85c5baa21b906d5a217332949b0a62e21dbe1b574fbc56c3a153a2980202139a287971a240b8a6399ad84c27036c5d5c2e722c69842c5a91cf855f40e50a6bafb750ee1232dbd2d0afce7b5d14b930e43b385fb11df30cf5fa44eaff835224f3b8b1fff83cd840e5fd912ee64c10452c27f37d61b9e2479d88e6946ae0d708ca59f58b185d779a3745319e0a88e5c71486ed1bc9e45482a99fef135613c0144a99b9a8f6380a35ec42b49c953bd9980878af48bdb4ae7a51b7980631810bf4da42bc79b8d59bac7a5d9337236cc2165066322cdcfa52c8a5310e6abade379cef91f3930b9ff18cae3e8019fb863fd391a6e3d296cec169176d95d057ea92df456b91cbbe44614b6306569104c847f649945f71b368560781643bd285dfbb3cda52d56f63f328188b117d9a1cc669702876fc4f04c9725ba530e3dc193e9f50a19ef1a0fdc124f4d35cba880be886e2ad0e49ed0153026d699af5156cbb360af420ace09b7283b3b57995a9c57432ae4016dbc461a5d79087ecfb264bc81c17ae5c7f3644302fbd3a0972052ee800201cd8f5b27e3d38a91ec5c0ea100a58b8ca2636b3a0c0bc42a7d35d88863ef0af10f8349cc4556ee18ca284ee97a4e467366c124ee493ffe07486097ce3a51d205c7c850f4b143d6eb21059c8674a9896ca62420315d381e78d76d4b9cced8228b2b7571fe0a875975a7d8d9617de9e8286f6dedbfa48cb88c2ecf28ef8e1a9dc02f737b59c690c1782b5b3790cdb0493445ebb51d2052842e4f629ec235869a8bc93e5e3c419e5f6a6550b60d232205a1964e2a73e2ee19a90e7983a3f51f99711c7e4ce22e1030e00823f575a96ac78a2fb29ca1ecafeed21875b9f905a9e80d188064acd0186a330122cdbc5012feb1895d22e173b353c4faf3a3da785351d0e4564c6021f4ed95a0d99cf13c971ea7861b6f88b968c21f0db1879f296cef9771566f6b09fd478bba7384ca16cb9d84a5639760e5bb89e9a82ac809b4543d9edc2012b264bf7ac5a3afb6f933354e9d8228462c2b8bb536bf9c57aadb286aa7b8229d72ac275f4771dc38216ed963f1abaa40100d1d1376538149822dd814fbd52cb42a544cb86e80acd8a7188b7bab3f50180f1a6660572fef1db7a43a7b17e4bd6cc416fa9b3d414c3241483987b36f7393f6bd66f6c2712e294ad0c16291f2be3056e185a929e51728de555d3d10b5add690e45c50b86e6e010363bf7bb8a018d132bfe2b6420f11e2054310fc308c2368dff6aa29ed2f1daa613d887a4923a7eff3a83516441c5c5b88c5a3b00dad34c654c0c2afc858647a4a3eb6221cc8d0914e2a1b9b8e8e0da92b322fe52841beb7034af7cc25162cbcf97258c01c57adc5991afaf01695974367ca25ce555165dba1ce5aad0f662173f0d4f4077693acb4d1bd7da5b084dbbebbb088b2ce4b367aae640fde9eb9287be6e419fcbf9e6c3b1da545024e618836e04487e9c13e88251e0e73e6e47b7a67d4471fe975b5a0bf8c0d34b0a037e12dba954c0a9ff48a4577df227883d86bf7e081d6df302d43acd5a1998b8ed643e575bcfa8354ad15402dbe98098ffb84bffb26b95725216fceed2767e43d3460b878b209f0822c3d82cc2fcfae0e501c921a7ded543175259b7bab7cc292359f2e6589037f78887564cb549ae4d33e9747a63cfffd4f0dc261c53a19f200a28056ab219c18250297cc425ea3895fb41609055f2509d326d52f072c8f8c76d3db14a24f21a6dc6de01abc1e4fa6d01baef6bef274567b5f2e1c026c054c4d0d1f027d3e7bfd9a08a55a746bb5f78a2e76053864904a0db5ded254956622fe7ff7d236d201f5750d446a0dd234d46b61d77187328bcf727efa86ae6485ba563ac32e52ad2a36485e6b05f33115f8c47f8c9bc13a69ba0e5a1b0d6caf5049a83c28f51227e4ea8718a37d5fc0a395eddb9aeeacd01335d5bae69b257138ba810bf6dc4c466e28dc05d54fe1ff1bfec6063402f81656893e3bab26c8892f2de1e6eaf95d08d2d1311db749e55f3a8a6d086771e2045e04d937e16287070cad734505f960f670c3f8501f56c35c25f551ea85f1bf017808a6958f2014cbc4460247abe409a5a3f937d1bbab6d4c187da72c40fcfbc8c13c38527c884e9e4815d90edb3b9c32462e3018a127e826c8ab0dfbb49a7518990f1762c46d3c7e86ea125bf80eed5e157c2b816a1e67f3e1d040ddaaf15e8705a640bf24f3f41e7a5061d41ab9cbd121cc0f915d53958b6ca8309a4db8d0b00ee3d5ea9334de27eabae16cef2f82e9f4cbbbe8b2147284b70dc640f3026eefae2a002290608b2005528040461195f3f848affb61d2e4bcc1d4f29ca7cd4a17a91bdbd7c20cd962f651660399f82a75243767524cb6f11fd26fb2294eec51859389712e318abc8f3d345059343872f3ff1e2f81d72f24a0d115d06d4b23d7216aec203941a3d90a16fc89b4afd909f0503e017182b9526156a749c0c25879e2cdb1edd9899373a903c455b2dd278c0967960c7fc179b3b3e565dcfc756d16843b7152c66babfe29b63b520cafff0d002077f5bef91c676aede7d9c93cd74cf06768a32485cedef2d79fa2b3686b67f04bb1ef48b9dfff0187f91aaf583953a59e8491c7d6906401ae75b55d635f3e03163372d6544f4c2fb6cd679ae87b150cf28cdc13a1dacb1aa3de0882026cf674887dfa00e8c8af7ab5da884ff7ff118129687d05910d32801a57b566e6b8b28b05c89373eab0697dc5b1a40e886b5974ea02676f11c4d5998911eced432cd57bab39b600b2595a5b7875e2a0a35da41651957d720a02694b122cf999c015ae195202c6dd37239f0f04d12635c6c1ed04c9167013942dffd8ae073a7eac11533863484e6a741cf5f17f8c6302325763f191fc6020afd2a8214ca866024a3c0792c7ac1a00b14ab7d5b515b369c3fb0ecf6db370df1198eb3a7aa92416a57ef030edc2d407845f23e966696f1dc8a61f06e00348150ffe442c489e8115cbbc3db5ad39c1f15bae780bace454bd5f53d8824c5c484474f37a3e8d3b495c8250899e2c6aafa836edc2faab30d161550ef01b26920ffab1df9e71075e0b0d8bea738027885f5b6defaf1ddc3dcd55559e6ac2089cc7524017ab86bdc280d03e36d5e2496e91372cc0aa2b95a73e06011005903f5d238e2afc4aa00b58f30f8e946d171224eb698f694f576be58082830de9eb70980d234ee6db6278ef64686af2b280c4809f38310ea66a73fcbf04d87be49807d1746e6cc4591a9da8f2b8cc046a12e624d57a89fdc7e7c95ab0a4af989805ba20fa758707afcae250be707ee2a6171e359c3c6c3e21247362e8a11f6987ca3de97f04911d62c3b1028a4d925ba456974249d8d8ec2f3ee18a22f9907c1175fe109cc8ba9b4570128d37888f32a1e2df0d4c9c12970ccd459257bb96aafc36c3ffe42666adbd48125b3ec173cff5e75788a8b4fd40b2acafa1ffd49a5f57bbe4f02affee404849b7a8dfbcf4b3d2b0576ddf5e49ac913a7f38fb7920e43a4a593f99217de2a72f4ce4466df6d2eceb3fea57bdd595aeddca0e76a779b62ab70555dc31bb0e39638153cfe8d52cc57d5d1c2873effd8f6b57a7aa2333d8c7ba844c08036099453911b4c203ebf32fc47f0f4cbd7359217051d6fa510ed32fadf795121ff3cf0a6f2b60fcef9f83cfbf9afc3c67f679edafae7258e237658a134670dcbbd8ff23634b99b6c8fd8efacea2500c8b99e9b392ffeb40500c2e1fa971aaa348efc7792205099492161b94a3cfa95604a3ceb11b262413f3dbe2708db31ab2a05eee9d159b1af5a224c5670836bd588f30e3824c6eabbc9e58c24f1248d7c8e63b4554718d90f7902577850f337ae011bf873d13d2e44c15704e27536c96b7fb017f7774e1a66ac3a04935e8ccd0e5a76669cc7c792bbfb5b0f0681834ace6583dc7a2b0020d2f9e52e04297deffd6d4f0e38813135c9fe94d97dc226a8b467e2187f0b05218c58eddbe3b45bd1e04db2582ae2d3f5712ca9f0c4c14254c39210baa0a6d7fb97738f78d2401091c62646b6b96ea3b9038f0301cabe1ec3896ebc6bdf0221c8040f2695da35483c7f4283719e0a382f01d87e0c1847a5b0f8c916353e46a45ac8afb4322683220c46f1dd6eeae0573725f97a26678b22b3fb0ce77b10f87b6696b8309c86c60a3ecaaa3aec7288eca76f94fdfb3debbb849445d53ed77375e6b83447e12ab9bae27a2ccd8eb96918a5a395ad1e7c6495130af02ef691cef801387cc633015d8df90574882b203dd857d83d50461b11839f95bbe905d691e1cd09226870be250b228205ec4293dadeee61ec9dd83599004658f444ce6f2a8c76b46b5481c71adf73cc5cc7ca39f09334df3bf261ca5e772fd131b0615f1a90984566e16cf9ca61a1d0837b6225bdd75268669d00a2b94c3d6fe992de1a6a2df12df5c8f4f8f585b541d2cd3d8ed4a231160989be973827da17dd042a902f70fa71c8a32c474e79fb613e27884692393af389c015404a1bc997d071d12b6623b5442552069e0ecbc3febc563fdc7a5191879d5a44203c65eecf0404f0dbc915033cb1ae647b2468c341cd24bca6fac2a3d51416b71e872189540182f5440a282ef20dae88c2296d4fcbf7e0b4664b5f3ab00b11a7f3b4011ce0635408868f634e44feb5a8fcfe231f8f5d2f9785e416187137f408b47e3ab2894d7e3955386df3caf8ad11cc7fbc2134c5c41a40178d4e69860f6f01cb9220ef246cdb7478db8261ab89fd3e07ed7de08dc37b0b58606cab13ed37f7d0e5aeb8a228a6a44404a0ceaab7d81eccd4e2e907295d939b1ecbc6adcf04883154f7e3bb05f37b183061a2be8992297333d4262d0fd6b34d09ceaed16ca36d36a781f1d6a1034639737fe0585a47e842bc52b71b7e2b829d3dafe967152e0c333b3a5b60f1e1508971e4b411f2fa65069095c24cdb7ae51838c1084a843fcf16a026d8943e5461613f1d3449023dcf8037f68f22a0e2e0f1cf7122526efb7935be4927f724f8ef8520db4a3491d5414d8d784817fc096a6bafaa38d24983dc2aca49e799aab9503cdb51e7304f1660452c3e2786323b7bbcecd1d4a83017ef71f45339e4b0b2614ce9df6303552eda5f2d42e8cbb5c53d21991b3e7823e439ce63b32e2005be62c771b27526087f1ce6f25bc2a87a03f8fff593397972f70fcb0d6c0b2ff8feee62db0e1944a862a25175d1d3738f17b384727b8e321d3efab2a1d3ef50caecd01a714730d7ed94b31e661f421d2f027225c1c2da9a500513d5f0817283b061e48b6e74cf30b5919e5036d15bf6318d3bcea9b2e0c346d1f598828585f277f58d1fe4de6b16b891ef9ec6635ff69bf7952e0c21c9a498a98f33d9d5bf11f424b7c0d2a3b01c389d1a6acde449695656be65be38d702717c1c0b918ccc3d2461e416dd7a22ab4ba6a350dda8fe2c61cea9ae1b8e3db101c43ab22b002847a3d27b82dd3f18d5516b7211c9c44dbec9aa3aff42515eefaaa24afb7a130496c483262cc1891f9d9338c8b13be2cc1da4e0343afb52345ba4370b3403f0a8584a1df065f3f159faa47cacc8892132d816b8189e30f51dd67fe5600f9fa66254c54c25e2da4531271372a8b560c530686b7158cbe513b3df9d177f9b3afd16eae9ba2aeed100a8ff76104808286e8ec79d53374a90f75ae3a30504a2a8921c8dd831ecd0f29c994045cf070852fbba53e29f97a7e3e3299a6789880e3b9860ab9a482fa734f2ac11e9c4cbb1b8138a2df50a17fcc897a98779967262612a9b3e0da7324a0d5ca7c798d3c3ed4e776651de8800d8a5c41796d94081f5a3e8f0456776bf2054fd71e8dad4f5ca37d4b95ab6f9d7588b072584c7956a1809acdfe5b0e60fe459d43696a25d8a3d2a3c52ce8b221cbc3fb5450ae7291768f187166a2c0fc8a8d587783602999457078ab2b70619c9cf7fa7804d60f3f9ce994f739ea6c99cb3391b5716df0f116706f807a58eb974e04f4c870c885edbad69bd889ef47c8e597ba113b49c4683e13d8c254d2ee413365278d1fb5227b07dd3b49ba36a8eddd9c0d4925726814b38aa67e3479b2a460013513e57345e08ceca431b82033f9fa826b9ca62ce3ede9187df3a46d245bb4bc108d7bcb381f1a73fbd4003dd682b320eabc711267903aa36b2cfa04880f9025da5870fa6338da0e7e46e2982438d29a64df037d91debdc4657ff54e89748d8683386af29a53adc5af506ed8d7abfefc131fa1deb879d4da864caa19a29fa7767d5624e0c291618c8ea2d5b684c5ab55eda177c0838d0c40ecf7dc36936702b9dea3f9ed0eaf6c5cb28b85ddf0519596b53431a559d908a42bbc3bd89068a6a4d5bafaea17325d4281a476dc1c4f2ea3f3bb12bc4d7a4145c028fa88d0aace0e7a092f229f453e3f608d7ab8368a35e8a9ff65f671d2e729c2a3da64695f8eef1847fdcf438e9c51f91754cb3e4d60f410bebb28487825ba9105b11e04a7488062303bf203327b9dd5250dce7315b14cd77ff23f924bd88cde1669564ce91c85dbe30691a4b817c4bf4b25f3046c3fb172e0ecde933e48fd678cff79227a5a33df7612ef75a7da949c1cf1ff0be24718ca122bbc97b582d1a41026774b105219f0a8288e938879bda390324b7937e3882008b077af7a44baff99bd917865728ab99a718c757275f75ba0fc6392a232a5a5333211bf62ee243197f7ebab7b6859c814c02d26a021ab3276015c074a5902f9559d39cfa7539c45cf2c331f1d605ac160386ade3d729f77904e18192696f8a575896ce92f294d842b2a8c30f7d37ede4db32c6c1f458ba3919d5dedef1da98147acbf30463cf1b8e54fee5aef25038b17cd47083a0ffd7f70319faf1c077a9bbaa966470654ce96f78b2ae08b2bb1cbb3f7e7ff37760132d8d7fbab561b828fc88e29076b9578f163bc22e2ee6d46ce5b6afe510cfadc9e0b86266ea620a3c4a1992af912661b6c97149fd65cdc161d6f5be0fca947cba7205493877dfc2cc4d7eb1f0d9d44f6b49fc9cdba13b743d61c0bb8bc04335a4747ed2b3088a639b8555fdc4755f74c381bd4d7b7711660435e61a1a83fb1e229fbd00455a754e55e3f8d13861ac45ad95104c155297de7ec26b41d83aab457bbaa503ee71b6010c1f0340618680b8d56cf22167c4d4d23c8c55900f0144461521862f42fa8bcd7449c993f44c60ecb9f1c785c237388c8a74bae054d2672189f53b1c2ec068bc933059e12ed8d28df321e8c32a7a2e9efa36b34d98f9836acd4092d4f5227fe6b5bd98cc8b969859af97b541a8feb251c6448a9abd0a9163a52193a4e14c13176106d6d37f291f2f9a00198ea1a2a3aa04b8fd0bbc6e1968e0d49fd4d819a9755bcca4a2c8228e0e743a9e0645a7ecca837061392cd67e6ee84a28dd56ab142870705b5242f673762793c2c4aba6007d6cb96671fe28bff4f79b8459f7ff7e777897fead201dd3be4eb22809893b28c1dcda9c45208ab5b58ceaa03f5c28963a4a885a469a41cbb2ecd656e5d2a7b32504bfe7c971caf4df4ba176244bb7b08bb4aa4065fe443985c6efb1da5c20bad84cbfe1db6c1082f16ce62e8f2f25bc2c0698f2e004226a9df2ee16086c023b15957a7679bda06db87eedef2ee29ed4a99a1a8dc8b0a48c933e58ade855b2633c47e00ae1f92a1ad9a0058b6d83387ac33d72c737284e9081bf597fcc3126799473c51bd968a01da4fca7514b5fd2189d70d9c7e80571c05c9c33b84b41886cd48949656d8a994d874391513442929b72cf6f156b0d45fa0cda0447ad36ebdda11f7d46224a11cd77ba0c15391111999cf5775b0ec15384115ac9a9dd5a89d2175dec2073b3a80b7ab19b55fb5740fa5b819289a19883347c199c313dd32cd94b3c27bd6ee017652a399871db6c2b0b5fa23bac56ecd6fe4dc56a20b9a328394875adf41c15a8a5b6dbb69d2d9864b23ba0ddc590efa27e4b8ca5bc80fca29ea11f4b2dc39bbf9d7178fd81a4afef73fba036d6352490460653363b2a341b178b3022c879926e22aa1645de52c619201564795fe902751a3ba49ec692ee0d2fd02d5de71c773f66c0eadbf7d99b2e0546e594a85a53b9204593b2f5f0972e4dae43b28fe14b20e6a1828ee4514a3ed6be11b75cfd27ef5c90fa8ca1b3dd7a77e4178b623be801f3254ba8eda6c94dec5ede7d8a70d58032cb1dde1f30c97a2db1e168864c47c17e9e54a762883c6dc2cb0d8714a487d5152305fe2854816d968efd2c03917f9ad5064f2ec0a5779bfc564ccc26e972d8ba3e66162c4578e3c83c6bccd21a026e8067d734c85b9fa7940a580e4323b6ad45892e7ec2460f695aba985ff3f75aaf481175e74e552b8ed623dc527ebf42803d26fef14827f9d319d5f13e1bcedf4db58fd47787378064712365934bc44ead224b40f9b06093aada4ac5528163e9dff5ad0ea338b89d31f7f14de0a5b7b280bb0a4b6d0373820ac155b104929711238ca6854e844108dd781c03585974b323a2c49899d7c1a50355909cb1178671a53854272f72ed9641ec77464f013f59878e87b73b027122b748e60892beb775fc7f504dff4d69a0f9fca5476927a2a56364bd532bfd16585026b6b3430708c3d4e25e224faf28b332554c563a5e41719986125fc3feb891dcb3dde51cd9a11a1d1515b82ae0a64109f488db8c249b08639d2df4135eff384104d874e7955448af94c93cc5df9c1b3a4a770d33e778954cd97a1f3876dd33ecbcaa432a12fd7cfe8a840b69b73bf500c0299e49073fc1386d6797f52ec646da8f2db8c66e6a2aef8da62de0a46a0fd34691bf140e990117a637589d84ac3e23b0c1ec37feba116564858732e8fe06edd6e55b1a4aac2f1a341bdf38c749641c52832bb8468c92fd4419470abea2af022095d86ca8c9d580250fee44abd55a38bfeea4f17844579dccf0240678f716a9ec4db222444a48e18a942e0afda4bf9ee40a98f32ac310141134dcf8f6f3cf89258ee7084edecbf63c26f8d6a675fdb4990da716cd21146dad8c0850417d69645eaa8ddfcf959912b67da4f2075c87a546b7f31a32de7dda8fe7be28e8b8986b66ce056c7626c1687da9cd389c6d38c0220c8b5ab9d711479d76ae6887c2ef44f7863f157ed8f8b86817a00c7f52586d3dbe786adfb3c749417be42173331604cf4be96fc0986217e64816f4945bddcfa0378e6d9003132792b99aad3d3daf92b588d4c1cdb345bfc44e83c7466541d1addb3197a34b4a145f863b59afaa7ceb89b88b0c2b3eff741e108e5550763d6149993d0b2af7829626d95176e9dcbbbf55fe1bca538923738dfe50a3ed5b24e5f8abba9bba41d895e6e409bc037227dbed1bee9246869c7787f59c55c13456f881e4b8215a0ba52b3486162dba576b440979eceb6ba7133fdbd8e23c490d83992a1c7053591bc5af6d6eae58bb589c87ec37a80979826e47d93d5e163fcfc3802856ed75a489bdde565e36b6d494a2c8a999f5463828549aef98cc5400389e76a902eb8ec89a7d5e213c2fb05310ffba152d18fb5d8fc86164cd320541372fc15109eabad3587f2a208bbafcbf7ed78158b0e6a430ff19f00da4a1f1ffac518deeffd8236dc7e169f6bae2653c19b7fb1018cbf49312fc39b3a14b91e9c0a289b0b8ba3e091c97256eddd52028414ed6afcdf4ebac15d498bf4a05968427e81aa02e2bd437b474f52818d47b9708d9600c0b6a72dcf67b66e9d1a53f042ba48c207a7d4bd640d0589557787bea3b5a17ed13c434c2299da8609f713472eab1a7fea4313dfb25614bc45b21ab58a6371ea822fcc07155fd03aba118fd8eb09253ed0cd400fb8558eb62db55a296f74c7aff07ea8a25acb0dd1016ae2ab821ea0267921e959016cd9ef4bf1484af2387c7b75637dca9ef8f43d0d3587fbab1896b11bd30b53560bbdfa9975812a57fe575abcf07d91baf7221fe05485e75710275a7156f0155448b6bac742a1d09c04deb041d77c13dce8ecdbb23e9b4c0da7670b19a2ad4a34910383079042fbab4d789f025f6a7065e63af6c1f0682b7adbbbb5906c241eb8502177c8ebdb083665c2757a2e8fa789e74d964713e2ba40698bc1b6ed02ef4bcb5af4c769ba7de0a8b966a3d3a9eedff180e041ec04ee37e9629b928e9b4ee0db6440480a22af892e588a4d543dc15b321d506828d3f9a436c1196d2efb5893dc2d01d93c7a0790979ec24ac220c70d74d47176fbf7149ad1b6dc3f055d5fa445c6dbae5a8a716ad002455d673c5a04bf4b076604f26d278c0a389e6bc90ba9b5b3c1f5d5bfba7ebdfe47915bc7dd937acf3f6f960ee6fd0bdf8d319e74144f892c7023a7250064fb5bfe0e3de3fc4386556956572505706a1db9a073004ec0a2e8b058fe6415f527f9cf11bf394e2f37d8687f29ba5068c4ba07b97c57f7fe0405cb6a888b4a01ec30f583c4c2d10061587b1de8a3e681b6d6d4c983cd0e5e00859413c9755a938d6a604a935a1fdffe79609a87d54b62ab3fc421a102780e655debee7df234543df6f334ae8d45f43823cf08b2b70ce128f0b3ea28ff4f643e715e6786cecdc8dd7f4b658648d92bc130e8b6cebec4b22f26b9a4c664a21ff3810f437078ff6db018ace1b84e42596cb0716fdb0cf358f0682a6565aacbfd2cda6fa27c5606f315a52ba34500699242e3aca5d1b9a11288ad0a19bf04b6a469a7c43dc0fa274b72e098141586e53398434b3e78a4bc87c4ef17cd0dfb259841e175f14db5ce08a7dde8928a8b7d164a8c62ba9dcccaee07398378ff14f68c97248b821f51e543922d32c9b21b9162a5c8c723282e63d6e853709e53642c780fc3267e84712a4faa82e11f179ee4e1196c1a8f9fa52c13cff5b304471233d5dd44d5e9b2ea7c16f0b890aaeac3e45dafbc9e2a271876d2aa1966753ea952d72a90de2e93a5b0ea5f44d7e97d42fa97971e3f4711125744f2d5fc7322df85f20e254d1321469e14844e30d9e034ffdf5c942034c44312b446b7325b16af56876f9523a62eff2fa5da7fe1cc9d92db5b0021730b722f84bce70b643e9e19770f381f243d4fe81adadaa4ce90cb3286d3d12eb2b973cf4271c997db492ba480299b15cea3e97f7991b819eff4c659a723adbfa4902d6e8d28b0f207ed10eb582694e70e90e82db9e7bedc11138a59c36f781381484d7b3ba22e23011653d4f3ebe684cbcc4ad0db966338b4f23a9d55802573f0995cf30212e47720c17a1acb03b7927ca8aaf621ce9053809bddc0451034420cdfb7fd5e12db11479094390b6c40a3f0608f44702ed5d1406a7641f366ceb469d805496ba83a987404d2ab7a3d00e515f6b4f9acc53705edfc6fc4442e6a7b8041be3d7e3e314cc9ecfd35172f0c1cec9a1d42c6d7a364c92f04f40eb5a922ddc32fea7cb5b24bf2f6d35d4679412e47ea08247c9dbce5fa1917941ca4accb1578a5e16396a20bd7416f01cdfc07f7f774d5dea25a76b77b532f9744ddc03c40e10e839e3a57d4aa227a3a89c034de838aba4c29fdf1359f3f489b8a8ba3da7299b7303debb78234252f93431ac29c470292515b787b2def68e75d46cf799d954c625461f0e272594830768b09aff27d09ec8aefa85ddaf7150515258c0c71a971ab86328b49224acaaf9eb09d3467ea05489e02fb68a38e733a40ea5a852887c5a7664518bb32c7347936282668025198a117839a45a4f6f0b566b2699779f521e4a28c266a278c0e20892c48598ceb7e74948d4ebc3fa71dae842903322801d95d11d6f2f4f363a392c2d2466fd3931709e513264ed319f4b7f4899bf1fd9ab4fdd503c939db4302d4a5c4a176592de1541c7f89026026c4453b35b19fbed0f74f25f0c94f4225ea408bedc8a821b07fefa267871c746db0bf69465e1ed292b88ad46f298b8921344b30d25637a162864779d71defdd6bd24be690135c7e45c8310e6e9a50e692be3dc45a8a34f41f933475d380c72ac00872e11941f00fe671f37e56abbfdf9fb7b6f01e3688b108c21ee400c304865d5c0a643528477b3235e11df2ffc43e367fa5ddecb02982a3717ffaf52b50ab79ad46f2a36aeb5164168d89d6d2a330a363acf9c8d59ae245d1ede55ecec6b44c2d0af856c611174961998105731e2e2fb1543b6f918b2f58b454d81477f248881ad52cf065bfcb7edac2c0537bebb23cb1d6797a5a86eafa662b8944bef8d2e665b3b19c445462e70172304c6eb453ea3ef4c6290312c714ca50aad719134c62c33e8976864e09164768cab4ee11b9288233ae1317550c4147557c72fccb2acf442548b3ee73b309110a3d46e3f3f409c6bdf193610da1b5e5a8928365fa57e026524083516300b6300999b544e7e5291b3417b0330efea01835bb0b109c40316bb2f8a66ca4967a7d8ad7494fbe9d5237c445018dba1194ac057ad451585799bbb521b95c87cd03af9f41ea4f8d06c452bb16a27970b50d675cebcdd6dbe37fe3a8fadb8ca6e08c3ad08cdc65431dbc210297a0be224d415f5e3b1285a65185503415d36508d684cc3f3940a342c4966ecd90f8339f883cef6666ea0b125a5b8a91293a3193e234c388d30dc320c0f36f9ccb1e8535979fef775b6891055aefa3dcb86eaed460371a8de23384bfed4ef862229aca3cd26de5a31ba7ac96137a22eb893d4065135feacdf11ebc171cb62073912cd4f71fa17d7ab2e3d5dbb53ac17ba722d11bed2fbff7a7aa3ba8675fb6c911289c8e1e0190dab7acec03e1f6cac4569d0de9ef23439e37db5ef1fa34eb5dd863d08f8dd23cf040792b44b0586d90cde3125c81784d02982b7d2cc8bf0fa4eb14ee26d47dff977b36476f194f32b0f8d341dcf1a6765c8c762a6aac1a4e75c3282d7f86a796beb1a6a0d8e85f8b4bd94600de0f3d57f9d6b6025916525c55588a18203d75153ad43e823132168ad208833ee39060f1baacf944e5dd2c4006014bb5f62a895ab1d1a4cc84e65005026485a01b2dce1034d4dbe7dfa2c9143cb77e8632a05bb0efa3200c07e8d061db4e1eb45a48235879d74725d47244e330ee4bc3cbb4210ad18abf470a34e20c9d717f2230df84867d98cf63cc6ee48b7b5e5e87e28448a13793116bedfde7510727fe8069bbb412255e6f66f95523e92f71afe93163fe358e5ddddecbca815350c7453cf231491e4c1ac270f19cab2520660249b55375ccc5c1d7a85ac7811eaae0782649462c8d28f4f307b5bd4e77bbd5e378bb249f7dac0515d0ed58bb74e3a1c72170d19ce0a0782c6df57919b3c88a69ad428142732bcbfeaeca3302e981721461619f7936d3e5f1a01ad220bbc1f73d1290452a25c09172759ed7a653ad773d3929d25578a8ed47118cfd86cc11ab0759678696b330902a9a77ee080c10a632283bd2cd465c90f2c323314bae8522c42f38ca1ed74c850f359e876dd9662ac1c612a5e6d28badacdd3e7ccab27d467ced702eed9a209a4aa8d2ccbdd7ad1a097bde401d22c7c980ddb5244f0df446661f703dc91750899a2544bda3be5da578b90c89edf8bca4a9275401be08477a99ccdd1bf60b85d65ac0e3399dc9031c125862d260b46663715e9e469a3fa5799223d38a8392014b7e8f38f65ac23a6606485dac9352b1c3a967ecfcfafa24f4294eab78fb61f3912b205e6423d8dbc30fda0919d6d1b961c6a21d15f67e126851a023ef3b02d2269b53e6742574e0dd28911c4270eee32351c3053727762a4c35bdef3eb366d3d5d986e7ad5b5ad35b9eff7ab899e649e6c57df7bce37ec7a43826f64565192d542316714404faafb3e19038a96e1c76e1fcd8769a6e8e64fb265490ea3a8f678769b6f4f86e944f81c5cd0c825b1524504e4f40eac56d0f6358f3ec6e35a242f395b97d0a0d69f26e5125e271753d6efde1a3466a38a24d067a5e48d38cbb71d3fe6cb018c43011f47174e9efcac21b4fa25a6f9bf6504cdf44b63d7e99c914ffed35db59ca36e6ceb4a68eb261ccf196058530d4fb79d2db4eea65c2ab57eae564b76760bb84291ed5a64bc72e57b905254f57d69c7073a3ce08be92785f3d939e907ef76e1ba84baa2507cfe5ba8cd44347eb00870cdfde7cbca6778c946fc7971aff1dba093f7cf22d420b9ac0434fbf89c0520d09945b2695cb55ecc6447870a645945175a22d1313c6a1531f44953384043c4d2feee8496a63c40f45b6e8f8d812d171d7d5fcfa53b5afd4e6fb3bb24e1fa872624c757dd9b91aafcd70bcbd4d0a628153c1bb589d3869ca2b70efe75896387108f46591af4cb39a4d91b79101368b90f330a9f3faf94bd8f67291c335cfbe15383fcbd25dad4877807304e90b93c99d5ae1706815bd2897f1b5e695ad95920fbfd7d97392803efc9422bb08c4ac5edf4bd9d5db6d21121e18250f37b8901b1b6e074b176c9cb7e21b03f51b13401f83c963092a8a0ba8a467c2bf15fa6629836f8d212cac8b20db73b555d43ec3ee2747fa00df15f0bf2e52a65da347caec155484aa14cbd5a5d669fd6eaa2811f1a866ffe30d25eada70e9d0d41e6715eac767f346c34ba49f93795a63911c43573624b51f24fe54d12fe5d1cf325dc958dbccd619e335986c8038dfd10fd58b2fda5e5f2b9f0353a294081395eb9feb93e46464b2714cde5c6a44a1e52ffe64df2b070ec5e2bee4b4f28f7a087a1609c5feead74d7e81e1d1d84985201f3dee64ba397119d671aa2188bfc2d55018f8b67d344b27411164c905b6061c06de4e9b34b374f4cba145173f94ed3fce3d83e0e7edf3ee2096ae0de096f091d820184d955f86d1b007415d00531d25c904b50b1a4ffd72bb9bbb9b177f99e12b79facbd8370039925875be64f4331677ef11c3c47b2deddf0d7342b737181ade90924cff4bda01929bcd0effef126b16eede9ddbac57ae2e52030003fef6632b6b33ef3aab4e3cba54998682b5d4fa839a1c3ab33a975d8b7c5096385a185cd5157499dd81e7cca3cfe05442a21677bf321a0311f8575239bacf25bd526c28db7f7f9890f4176104fd9a04c470d715d3fe4ea3ebd954b307d40334282d5f1ff69f755da0b72a6727449d4fc782b107874052143027fc487bc20e9eb5dc60d82b9dddbd8e99b9dd1d7e1e13fcf3ba87694416246e5f7685030c537d689349bb3767926bcbfddee2c77cbc91be71707cce31831402a711cd1bca3621f20c08d21ed33968d9be7f8f1dcea83e85cabb3e782147445226f9f034cc7a4632dcf43e600518f436cfce631c50b683e612476c5462c43374ac1d70282dd03985304bb1dadde33aba2816f9860304388562621a854d5a4023eb5bcf9243dd71b557e50dedb9b256b12a3db21ffe042fd9f085372e75a00734d96960b4b68339f16712f18df874046d416d634fd40b5a5e3800b39075560ce0f9f349fd370d0d4b57e64fadefddf84565078525a6318f0c0e03479d6987114c48f65eb803461e871f78ad2462cba3a83c323f8c64a4cc36989e5c5dc41f38cf852b1b1a11465ce65f6f4bc494f8bd05bdebda919f990f50aa38c6e9b39eb4e15936261558fba8850b08f5b33dc8c9540ab6e06d325ea321ef82b8973b8c15e126e06dda702cb3f458a99f48c4ffd4c463c797487c7bdbfa4d83f3f929197d34b9453ecd2f1ab2641dc76c787e9ed7f56b2a83d6909c357887c91a8da0fc115d496027833ac3caf506e3c66c2e8da8b517ae1a797fa94f3a1735d2bc08787449dd2200205af31d174deb0f19eceee9d6c870608cc3852c442b292884d959482d4529800a640c52173c5963e534844cb08879dc44e62ee954391defdaf771aa2521ae781d1fed20f1a9c580078795cb328b84cca0e5fbb0533f720033929778ad6213f75c46e6dd73ae3e41d5d9be962db3b5bedd116cae35fe41a34a1607aeaf1683d72c897d7d6adfbfdebf2ab3311e2e01f2618795ba6b4bb186ba022cb8915fa294a578167bd45fea4d4206b4a1c9278c82891fea8928df850c0a371cc806e1b616c57caa06905c6f1e0a5ec3d70d4d289515d0454b816c589bc9fe177a7221d7ef4ed5fb400961f52848aee0c553c8a35ad9053930aaf86a7eb75c16376e31995f840390789df1e70bcd0a43c168220ea38c2e96043481f0ddcc0747def9dacba656084c6bf119254b0a4ae8ff36d1aa87539a105ac00541affdabdcd63e9352c4632c6952af2375666bb682f101e7329d890268fc300dad2eef2e59e4e5c5bf4743aecc8a584cb82f632aabb50a6710d4e428320fbaa78a99734dbe01ecbebdb87f91ce8a8dcd2bd2406254751be3e10d2b061f37f7ce7742896e59d878740894a2717cca66e1434a9facbfe3e79d8c360d0b30024229de6a0787d5a603ad4efd20e809e250dc65e093f1a30ef67cf9fd70e33e7f970a6da06847c401da15f013f68fb6eccb9c8c84c4c05233dca6685b8a86818435c00694cda137b1e038a4e82029737b422e6154a9aa1a6029c39b998ba51f6d3b8df055e7c2afdba1a4c264a9f66cd25f770f56c5a9ce9eccaf86a4400cc543cc887b147746c09545a23ff9f66d3f1567054592a395cc09a5533a7d47e521726ed7900deff9b98ddd339774b08950a0d16a426efbb4328b8396fa992abe1582c3e37a1158bb6c31f055aa624be5b2ed508a6165a63a7a0a9bae96b27ae2e073103c89d990861fce61cd3cef7410631b325bf9b0879aedbaf8a6c43769235d28237205d72e6be59e9f049fb9337440471e22891c56a94b8f6322f74c0f099e37d665b4dd35a61d14a5771d735164127ba749129dec3e015afc2f1315154788a4a5841c297bf379d121e26c6df7d5e423ce24b75f6594b0c02674e5fa8f5c8ef2627bca5b667ae5e8e48e2e84351d03e1725a8fb82f5ac023d2fc55d0029985eb2e72ce24ea172ec57614d0548712d508c96b9a180c346c927749e98349cbf8de42b9330dcc3a9219f196eb90b4aacea99448d966e4e19f144d22c9bbfdf64e944daf86a4dfd862e9a46ee2d55bcce25ece2dd1e64fd0732835a6411991046beafe09ac8f675382c832496efdf5d9a1263dff87cc4e3d7c1ac0d6b62fe119aa83f0da07d9cf7e5253c51add35eacac85dec814e0c0404d2e440c2147f84611f635f643f1d5c4eb16ea29fd1b159111b6dcc627a7841bf98da30b4575b5a2572d11ea4bb0b54a7b4e8c7b342e28fbc4db11a00552e9c6482a3d4466c91ea3213648005e501ed11bd79e78ceeff46f50a64cf2cd15108b940abba926ee985c767ff8b775238d01bec31b27266b204f110946fd6a479155837ab720da4a9f569f7ce02f56950b4dffc0f0ed6d4698bd0c13f42b4cd9006213fd5b8de7c258c86543149b3d4defae2eb46890eef8ea036ee1794913339546e72ee735b5006cf1b6dc727687e5a589e51857a7b905862973be9f05dade55baa3538d34ee56462b7875816c078f6f6310d5df35b383d0ea52b4f591d9257ab09be9c85815516dea2ab9a57cb3f20c43b4b011b406c2abd9316d9f2085297441257d7921c4c0937678b94883861dc4637f6353976e1d21b74a9ed5c316128466d4ac63effb43b48206da1753951dd4c24a5f7e86b89935e0b06b4d06a3c3fd467d8f7b0e17ffa3cdd2044aa9d9f48f4964c77ecdd8f37cc8393a3e3a235c32f87fff263e5fccf83314774d38ffafb59bf1dc267d9f1aab266b1cf36710ce248dd906085522ab290570ce5a62101173bab15d24bc2c15146b05e592aaab41b2a28fc49f4b8c6db8de1f075fdf51fdcee20b0b69db7a5542ca76c88a4a38073be3ad8b11173b479d0c6d07d1a5f4335e7f0402c31409b603057fb46e2216580c807a5aeca136bfdf902d6297d7d855cad8a4f3edb872fb5c9124fc38836d090b48575de4aec7b85ed4c8368b43064d1038e141dbebb3bff65af02c128cc273da28f08e4270e01ebcf2000eaa408f054d0d3fce367d793a6799da9af4f776570cff384a1bf9586f811713182c26b518371f213517ce0584de13d79519ef95436c3b77054ce630020dee86847aea32999196600e378cf4da030952650f193001933145e7c66ef6c771dca2cdf7a5329faede3a75595a6efbf5c50c0e0bbe849571a50b82875b2859b5e73824df66f3c853dc04fa346c6156bfec381d2ba99d3eae151c858b3af76757a5adf9375f238ed0f72287e129020c04b080137959ffd221ea6632f96df7ca4bd5658460c0df652ae65fd57d3ddaae9e2e75d1e1fce47dbd59bd094002953b44e23c62daf241bfd4bb6e07ca8eed9f8f2b62a79ade1fc0afbfebc8b49ccea753b4deef538ecd6a56ed99345497b254b1c480f45b1a5b0cb3e30a37bd4a9420db31de7cabc318b468f55f6c277b96000daa9eec1c9d2e9c2e02148beb35e5cf9a44c974cdf4cb1b9235fa61577ba16bdd7015bb650b83eb51c995775fed310922f56f6161ae076ae79bd1d38164ad36d4c5e3e0b638b66740f9353411d05111b202beea7c1def3abd02d4c353c03399edf31b834630bf14f906a6426f06a1df0816751381fc70db657d8f266051d5fddf36af2af1c3782808de527a283861b10ad52c35484552f14ece994d6abf768d04bbafbf254803fcae0c3937d2d236d8d19dbdac717e2c8d945843f8c5d7e3f04f60d3433773163de0e0c0e45f5c6f91ad19f21bc9a0d9a9e887e00bdcacd9b7b465f04b95b99a4b441ad9363ec7b01b55ff9de4c0fcf65fabc4458f663d787d3fecde8d306bc69ef0d074ed6b7c11f48eaac3802d8800ac1eb77149a6c0c01ec4e5aa6e70321568e3b7a3f5a842b6358bb1b0b5efc9c14283eb6396affdc86e3c6b62c255bc1a8cb6fe7c27ca59e52f62973115e1b817cb10711abfe4c42c168922cfca281a32ba21032763adc74c9d1b27a3ac08c8c0114513d24f82d0b015f75cf1456871f5d6ba6a1e29a27dc6c8c427db42f1b5939271f9055b57e946d28fac2de338db3a6664d82289b80106ce9925af966bef12e910c94527bbc8f3c35f39f4d4ded4110641e7f69816c2d3a4d37d96b4ce7aea8e296bf237d81140652a7e4db65a4a1e0f84c2f9d45bb72f042e165f162689bfff9b07533f7bb5abe5342bd95c42905803da41cc1f366f0c90d38f825ba7a6092fdb26da7f14a21e3d4b773e120ba478e78525433e33eb57937c7b8c390268be01f7c5e6b95dce006cf6fa9a57d3ecc4fa40b4f51d7fed4b029464ce6b07fb61ee6b661b0b7d8dda3af460ed2730b48f3e97dba0e64d4286c2da4e25c96c341af979a56b45deb70eaeee6f433a1fb6af864c7622412f9bfa5d4f38abd2699dc70a2ac45038eaf6f88d42353926c3b5015950f457c211582e95c7c1d787532feb0595f9068a006fd30f1d2288307de8799ab0731a91e369dcf8979e4733d6be0a8db030a5213db71a11231f8424bfd3656dd36012f144a91fb1d8d8f713c5e8c35714e7d289754c82295d053358a4d03cce7eab4289ff3f1975143b6e7186dcd06ec7c1bce4e199b64e6524f6fbf0235324e902f37dc923d57a773ee25747c567fa2cef2f8f5cd9ebf721289c27d6ff22310d58cb7a25851b9ec34ea30c53e4d2d0b86615530bd3482bd4d2fdcbf4f934daaf64feb1d2bfb961c5886aadf9e86fea020f1fbc1e74d47ee95b302c0cf8329a70d51f21ecadc6562fe498b35179648b59e728c5a414b902a5b2823fe73c4650606cf07349bae4a5e56dcb14f1544b5dcfd63e088d100204c526c48222c84289c5841d6ee48799bfef216672306233a7a322120ffffbc4d751f694346c31b7dcb97de3c131cd66075c3737f5744975abfebe1540882fdd057cb78b52b9e4cb61963918b7832e2755667439a4f06619328e5fb1056f62b7305e3b9c7d422a2665164ecaea9d8807db02f41f6cf8a11dc70df1f2c2c0853607f1be7c4f954a49e3de37a440184d9c170079ecafce3d84731246ce381c566bbd8018ce1a79b16f89868ec95e3e077ba6a248585ed53a56a4fe2b977fb4ea57f2d555c45602aaa53d9247381a9ccffb87b5754ff6c04a744784018162daee121cfa69d7febcbc0707635aea4e64363ce69a1fff87e1fda9d54b5d173832485aed4ce8c7283ca9f830cbb1da608ab8e257c161852c3cd58a33d32d59fcb075c76c8d08a900c4905c99743655645e4e47dea5501bb5575b6fa59a2f539f89fdaffe030bc5e4cdbd78d91fbad7ef1e8c6fe311db331e7718d20087040031ff8dceb7cbed113ea66e90e6eba55e8a31bd19f61ab7515a7153a637304af88888339a5d5ca11228a733928657a496bc08c0b9b17dff924363d658fca4d61415a417703d191d0ba69d0a0fb74b8a517cad46a882d6e4db649bdaa61b1da5dc15825e6a3a04045236c6e024ca590d23e8e6f10ebf2c8caa944320d01a086247384966391e54650d3d001430106b2d205e4acc36e74d5b4cf89f980a92c9e0e8a272a60a7345de1a75a2b7dc260dbecbcea964374b3d0196ad47801ea6fc86b589c0e19e5cde02b1b7eecd68b1283c801f6085b815d585adca242f95aa583e1fb157a7e616b32a9ea79ec5aa17cbdfeca18f40c5867b1f0311553b0345ab88c5b8c2140a57178297136f85c01d711b881f57c25afba114731e9cff01f6b21e8ac2b00ba379f3cd7fa2dbadea9a418dbae39c0d20e1b2ebe0964090422b67066f60f7dc390b764dace45bee00a2eeec750961d05a6e5b8571cbd5b113325201ed8839f6b863ae37063a917da46ac88094df85f01c1f8de67c032226e214cdbd41a71ab698775a37b9f2b3f1bff74f14207b551fedc634316901858d13153d53bdb6fb7d78f24fde604c604d478101d2c493ee6e23d1bd2b77c644f59bde8c98d81e56f1a4e993e5119a12665676203236c7f874d45df7ea56efddbd30547e3d4b4c3cdbe194ed3f14afa208baa0de408d06f8aa1790280afdbe832c5687597419ea83261c59a580a5743f7fd66fed6cac03b76bfe7a3ca0ce0a212a3cb287df5261c0c9d8365911d88b78a3e4454ee4fbc8fa22ac5f1cd7f70b9afd86a560e34594707f7a2495efbc2941bcaea1ff5faee8d9a1afe38886c00c740058c0fadca4aaad11eb038e611630618cf6e7ff4c47bb5ab4457fee035d3260c759e6c0adfe0b887c33976120514f5480bdcc31acbd993bc069b7bd126138aaa82925620dd20746af1a895301494dbf7c06b3101c6b3cc38d2dbabed12f9cfce1574ca573c5d1d335b24635e746113493ee98ef2d9842b424bc72007cd13a553ca47da7a07e5a19c43f1c19590b8f8eac81ec7e3aa5ce99aaa7fb5276b2247de0f112aeb8d4a4b279ae7c8de4ce4e87a882ff963b5dbb5ac87286306bfd73537b7547f8b0cd37c06a98912fa54197a8d73bd9216ab40c92dd24839e2f6cddcf9cb35a26883de180d01295f15a20912ae4dab38ed3cdcae2e75f66e7c3c6307fb461c16281a8f7830568085f043c6c06b0103a189d782095dfb01f865273d8c26e4b7943160096ee7e1579e187592f753f7bdd7f19a4641c8ce15ea9885cc93fafa7ea1febe35feb49bcefd09598983d3b3ef25156f50feac834eafa2df9dc62fda39b0eb0ca25ddd2440e8e146ff14474e14b035bfe632e2cb0ee71914666b4bb5ad250b844bc40085f9908acfab4f83d7e40030e7838a288a2eaf66bb577dc9b66914335c182fcb15cf2439ab5ca27fdf579c58df5da462bf3bdcede7eeced9f6d3ab1dcfac4d66359bd5e3e4ec917ea01ddbf186ed89bce0e79b007c0d4e344cef7b169890036743e2e6aa1e861d7feb5b1add70b9be9bc06784134065f43e56e47e050cd32a35d1bbc728725d7378cc9a9e032ee69fc32f5820e0e913e50605c36f75ea24b497d5a6017290b1abb488fe3e7a5050c0e88e1605de9a5abb20160092944ae0afa03e8c0ffa52259fae8e4dce7b17b0c4227cdcf008e047b68431517dc8fa7678604fe31ad56a486685374f00266c57bddda84aa8c43a25d30872b80f9e95af2a768c1e60453bae6240016b21a869248909da9f0924ffd87fd832bb764912d4f43d181705de8ca1a2a481792d2291507d0e01c8f7f84dc11a50244706d80e9db7a41358f59a99e1dde5fad2927577ee2ca38f5a4b87f83e53074ed75108a64a2b36bcbfe691ff344b6aa842e2d51c34fbc681037d43eea5524eb137cc4b1760128f62595518ade781d8c66c3883a1695957181c938333432ab3addf2bc436a1ddc2349a691303f369ba3277bd779b69fcf2f6db9bf08fba450fee27ac12e800dc21b57e3b681767bc05af63e3b2903f8df4f6cd2973253b84377e924df7477b7d3e89ea771f8422407c6193a7e819faf6e66188049757ac3a97659e1278ee4549ca724eee55e28bb5a027f749dd4311b9e6da889c94181e1c3431f4ad43c088f5d01cf55cad087c58fd6cd69b52140a47bc48775bdf5f0abd664751a9f468140a8f17c88c87bf9cdfc1086d5f5454c9c5b4715c34c6f70d6cdd966c96793d79e4046dabb17fde85ba580ca714daceded003b80f3572936d429991a21d4aacfc0c87f12de11aa686ce93603fff754be4b09a9c6d14635b05abee7f5da033b5f7e8319a952c5cec3ada312f4fa9de7ed93cbb8d1065fe56cc60ab015afad3231e8fa36ed37e3cb8652a2d93c0ebd9bb36968b52d151c637f66e786c83189d35ee22f7c9e2ba93fbb7cd96c93204b2def838c562966fbd74b2c55cc709e0a701bfe67dd13e00ac20dd62b296b114d33b3a75daa8ec924eb0a2e6248be7888749d9051741b788d4555d762fc3e89e78f101041884f5c8da31cb815c26120e9cc6a4158e1b7152d7962e31bf216d2345d733ba038ba4694d64b206b5ba97dfe3dfeaeec8aea758c0e9d6f40284d97bed04e90b573c7f47a39bb0b36d440bb4f50709f066593a4dd6fab150233feb24f0474ea980b6257280b10375a33ab73859e48662b6ff33435ea459b3490079f4613404724d821168dbce25f73c1724e868ea72d3539045540b29d96f4dde499fcacd6aa72038b2de70c54a4f85accd48e45c2f9c103420584df5cce6985ac51894cd6aeb1ef6afc000fab4a421efb44b5ab104801ff62d2b10c45333ab6e5e676688330075341e1667b2ae19cbe1ab249b717c33b5018c0f3fb3b829e13a25355a0445b22e52096947d2f4aab7fddddbc3d549dcb427f9815fdf5b7ca35a423f4a7838b82cb395d9c1edbbec9aafc370477de6fe288c797f1e0a3f61d947c28f1a32365367b94370a559373ad3f8163b9d2ae665279ecd52b044ef2fbbb9a4eb5f6c501497e6a353fe9ccf79c09c54170343b7df7203d957ea54d3313c057a71b952ca13cc0544eb4dcbe9353d4aa5e8371a12183c96877187cf77f5fa074534ef70d2a8b9100c544814f2e1f7147d0e9c745a8484748e44d0351c4ecf7ee7d52a5f49a30a69a7f8a779ea3b4ff2ed27f11afbae8cafec7297daa3e5e9702f42c86b147cdab0eed289207f5bd6604e12edefbcbb4b7ef231e241519ce5d6d7e394bb7508d22b15b86262f79aaa9229d866fd87ef2b37e9dd9278929c975df8e3d761012a12a4fe700b3c0ef462f4df24e4d82e8b2c6b812f2cf5798b37abf63bd1e8509e3e4362139489e85ee0a41c1efede1951bf67c1e831e9b31bc339af2ef9c493a74f0864275b3686cbdd402bc07cee192ab63d3a0bbe47891a62c3c17c3be31b80041d38962fbc888d25f556bb1724f4d9a88d1290ffefb7516664b4f265ad97536a55a7b7a388e7a91f887bb568f6420ccafa45a43e2e04cc98e1a57335991e4c022594f547f09ac6ffd69de5d7e3c4a69af4bb04c88a330bba684ac27608d1214ddcd2304ddff297291cc18a55ea0fa7f752a8846a7057900ca06b36a941250dbf7332354e2ce7e67418c475c61cf784ff96bd76e32479d4d4a2db2e9afec09c88a93cd6d7a49fdb30fd68fbcaf7d5c5261e40fc0ab87556b877292d47743b504f150e98319ac1accf52ce1a45f8129e08ef555139c237f0bff5e4a214062b1c23793fc5043a53bf931150fefad07848466efbe5bee8010980d8d2f5e88eed546aae5f3e2f29dcb6e7133138bbb8850328fd2830bdbddc0c3a53fb347aa9be88600e4c2f4fb882729a49ec1bf18ce09cb5b70d56ab8ca4577153b5406815a13524e0853cafcc17b27b5fdc025f033ba7f5792c5e3b355cb64ba6246d795bb79dd6465ac64a42f82fae44f7199cbfcbf635fb0e70a0202400b98b8d29108a7d76eb7cec79b7df2e0be5acdbddbb171f021bdd2f569c763a65a218ebcdd84143ad2f2f34559b654e3130e50c2dacbd9c6ec8c07be3d8b553c587d5298bcf3331ad7af2983593e03542f5071e76d6965936ef7a179cf6e923506fe25c1d2daa7efd71ea4de648adb0a55d88ad02323f2713c3256076a283e0668a54af4186b2f775e1e2093e9bc49a089cec797a91123aee8972c3940cd56f3dbf6fce90c18aa654883339835cd49ac5eaef32a125d7d5ee890a36d3457166ab113b683122563c4c9a81aa19ad4b140ffdc78659e01f8a00ab4c3c0b1b3e873fda9f70ca1dad4075ea5462499c68e7fa807dcfbfe24b39740ffe78548bbb93861841f9d0b33b6745a7b34ea663c4a36ffa904800042c98f5243f699e73d384511c7251bc3852f848874356e23661585cbb874550ca2419eee13544669423fbb0db1889dd614b08f962226ea9d8fba066e99bb5a617871c4522ac39fb2b30d1439428f87e36d16f2d52da560daba788b5358918f538370f70bf92b2bc0633b342b52a0e7315f1be14c810b3e31ba2f9743f79e0345635ffb1cfba729e61de17cae434d6e2cd73a8fd5498fa70ec33037f6c3dc3f7d67037195156eda952428a21119e79c55dc18f933fec600696cfed1500d39515ca567b79c828dc29c5550df4ee9957e9c79a0d1a4c9e11c1d71f339ea85df6f0b68018d272a62de597c69b61bd67094f06e5999b5bbb513abc69a2c5a8d3e5f4ca3a418741f0b5c6fb98d6a8689921bebcfc0e5dd925c1e2df1e0bc4adbe44ddb86ad1ab9fdc26afc63dcf58329549db3ebef064b812b003334ea2ad72482d6b57f235bd803a76f1e1385fb605b57b5a93629246c235be934aafd4cdf842ac0c904ab2c745af957d52f8937357612ae0e0b641c1aa9906e5c1a03915d704ea84d288b518358299f7933fca454879ab022f708f3b0a85a7abc6fb2c09d0cd8fe8e7efe473cbdc5179b99b0a27dc97d84b94c8f4155591e663de7639cdf5252f4fcd4e05492468dcc0ba736e006ef05d22413adf73f6af8e114169941a1c17caf91f3b339679aa69caf61a44b948d7d07e4db1cef5c0fadcafa430dbe417a12e85e60fbc06cb96a3732e708475506c0b22d46b70b87d3f6c4787b22ab2fe6b135681ec9a7ded21dda83f143471557700df8d88afc47e0300966c82864ba49dd077d5212ec78c62a6488c63779c107276cd3d6f0b20a783c51c5b27b55adbd2801ac6756f981eb1902fdc9eb6fc73683a950a5f9df282fb3b395ca2917080aa9c75b05896f4935e3d4cfe682c1f5c251a056fb77e83db149c0923d040f1043934a6a7594383e5bb3e0a8eb7942cd1ccf39bebc88b1143421def4ab3950d2796209cf79e39b7a390690fd008ad8479dcba7b4f7f1259bb6bb6b9f4d8ca3908da70c9ef7a2ba3f4270bedc5d17da97e11e3988416fdaa46eb0e49d2e2a8d3d4d55a9261b0c689a728fe1f1f5c4a5526a4aecb6fe746d45c10d0b0806e0f7cc3cd6f11c1371faaa861da03358f66d286e79980e6a31a527c7c388722be4fcff058ae239af0b48df4dbe2513291d0602be4ce0e78b4b6a78a35d00ff5fd60a6668503188a2e66c6667ea504734f38a8958022ad8fc34be2bac8239a33239f9750ff6980e08795f8352be708f9a532764ab019f6de4a102d1a86ac1552a16c1616a5500d84b6aff9070311a8df127f7657fb09b4d286e872d002c5f71bc58b39936f6a61ab7154756ce429d1cae3ec60fd576b22cefa7ed0a8f2c6f4a89d7547572de3baaa9a705312d794d0af79f7faf14439cecfd4528b66e651633dd27cd05953b6fe5c4578a5ad1343c46fadb4a1dae5b698a49d37d8506509f5f42c04db7ba4b8b58d3acbf368edd563e6c14ca7dc68307bfbef1ceee9d3183c1f02202ac8c9feba3437333c0ec5d73ef298c0245cbce2ccdbc5e63f3150bdb1f6acfdbf8b4fa570ab5ecf3224c1291ca1f74f8a4e2795779a17941dab1b2b61190ef87bde7e25dc5f0bfc261ac6dc10b4ad610fa86655fb75bfb43c788495b845b28413622d47344aa469d44212ab303909aac13f2e46f5583e694941bef375bd69b6d87214a1b7f2728195db9b53cd4c746eb9b41f9960e4d58d9745ebffe938f5d6313b36478743974b7210b9813a4a2a157383963f55d26e72036b3f23130a84915bc57e3de9579f48b4474d5d1cc05520b9764549f5ecd936df574df9d67edc37bcbf46903d01ff7e630822d6532ab2fb1d53a7c0d16f85c999a59a023c156d24b5ed7d907a4c25f86779b81282ad734cc1a3fa1955bd4c629cfea6517c2389e086c4e8b71dc4ea0dbb031f47839b38a02c09c45ed83957664dfeb1e3e990292c8b648153d371181be5df1245c13f968b3ed4829e2cb56b8e2ba350eed642c0172da3c1e1fcfce24dd21457d06336827b98a6eb2534369a0425503c516b850a83fe92de255798117abcac62f30602ec3c1c80181a513e16e39817c302b3d7d6677f91aa10eaf7f317807f501f62562d96d0b1fe115e227093fc5be70340c32ea8afa89c2ac8be35f61f603f332396a003d3f6de791614fd82b22f3deb9359590829a5efc45afbef6636ca75e8cb1335bb8af72258a70760e672476529b5b0ea1afdf0276fdec5c715e44d7ef3699fc6d0b4ed00271409b08daea9f99d2cc6660a336f0e1cc7ee57baa5a1f8b92d5a05701fe1c51d8b5676c4d506add7f3098b850cf836e3f6fbbbdc009c3f759118d2efb61dac30e2fb671a9327a908a535eb39f17d581f0f2cc4cb66accbb2bbadf2da453e6c0102950d588ef99642154c34ea1a5f8b38ddcaf78f75be155af8bd8928f55e18d7b18dfe1cb468075cc8143deedda0d08b1fbc91447ec2df7ab360c3bbd90b439399d0821198ec969fc6be4f305845c786cf52f8b493bf63718360c20841e15e26930450a912b6eb64bcf25f9d2f2b4ddd6b38070128aede392cf916485f7fc6d87e07155695b0628e0b853792edaa9d39731bd48a120bb96e762c2b4416dced484aee3986d9c7c8202c32bf49cbf4f42eb9275c5f470e1de2ce6e1df55598509ab255737f5e4b2ba1546d58647fcf5dfe2a4df5ceb12c136d2ebdc89e3f2974ccb816cfaf0804ca1bdcb6a23067d4fa0a538dffa30d9f9007d368fcea692ce1d2cc1ffb0bff141df2ce90ff86d669a298a5e9df5b218bb98529fd9b2e5523340cb29a0a3a1f95f1ac2405a68db14a369b25d3604669978fcc0923b36cc2ca807442aaa93657639a67a96c583c2604ebc9dadd88f5f9d22a58c4c8cf47a0dc468566776356b746229f50ade1535fcf9fbf99cf7d22c935b31300bd673b9919dca8b94909d61b69886004956b252afe97c2ac4f4c6e4256fd6b2f160849502960aec0d96a441d8cce57669fa434d3fe5105eaf7a7abe67a1f729d77d6d05a665af6e4c4a5404076675bf4db9d5c7dd4fe227f286b0756eec7a1a0985b548f9158c0ab3ea5a8cc2aa6634b00cb668da2cb6b0beb809c6888b2f82f3b36ea9e1db24ab8f91587df40a5ae10fa0205c048e0df39601b9a9d8446f1266c20a060b137b4c0e97e2e814e9cb780774b7fbfeaf84b2ff0c96dd3b79c1844e6aaa973c001e36f6fa9d60cc00319a9483dc09bc456e37ab71ac73864494b1f892734499bf0f86c44e4153e758f1ebf1ee54eac022e010ac6c1d1d08f1f4201d1be83b3a27e82b776222db4c27f63986eead3067eeb2433d8c8bc16c41418cdc1d7b7e488cd1fc5e43ab0e79611cc81b196d76e12e8ea7b6384cd14b63504ea516cb08e8f2c663bd8f90b693449495722fc62aa0f90f58ac3fa97dba1bf8655d3e56d963499cff29672cd6dff01499698f3f477eeb75c469741c2557276e2afa4144b490c44da53375dba0a6394bbf5bd00b1b96105edea01103c08c8857f57c82a79c9cb74c2a60bee57bc8aafdc35db26ef3da70c16c14975dc76c8d66329758f622a904a070f72073615f30263f3586a38d0becffa8baab3326dd58c81a73f110202498e333391dfd4990aa6055c46e47a1cb484565416af2a64dfe87f81270155e7fdbcf3dd693422161afcf6f77eb01ff0ba7a048f8db3b8f3afb772af5adeabc06aceee430bd520b6cd20b27e3f5d12f9302b25ccaf88dae804936ba9c099bcfa5c1c979402da67bf7e672a3c23813d23d506eb2e668e622f50b22918f12acb9fbe627e6c271add31e57d3380563b4e80754970c054cc61611c2d59ec9ec44a4ac9e4ca168233b14040369f2f065ef2d452517b2cec49cd221930c3d32b68b0de51110f02032a0fbe9dfd23ad4adef9f48f3364b6cfc35d648ce609a8e478b4dac4121b9b9af275a8c5366cf97e0e04311946f72f0f28e50fbb2e1a0e2bc9e3895f74b16db0801c571def33409bcb9a324baa7deb8ce4276625ad80de2d1f5a82b96468b5874fcc60c958464c598f3c0232dff76c5b680f1fca7de8c47a381cc65615d403e591acf3611eb419f762368c6fba52d3f3111fe2bb8021bd2808abbbde887ccb98fc6d7d2673de4fbbc3f20900c48fe2e7489afd57b2bc756802add7c7b5be7040ed72b630af2a3d9bdfb553b3f5645c0edde8963bbc34c77d0861063ff0e663aa43672d794e67dbcf85212db5e0563201d0f1af8c3e32f0d1f97beb23dfcda64d5d2a77d77adc09f67e0c9777e75673266e829177f9b27a6a9b28dfa07a23d5bf0b2753c2eb448ae822d069ff7d8ccc799b9a036cf14023307385f293eff2981eb3303d98ef8bbb376384c451e86bce955c3562dd29afd8a3333d71dcad7dce87fd53dc43e76c95dccbbf7efb977add9625442c2a5a628449882b3cddff72a677ccb368d0703d54f5ea2f78115e1a4416cb011fd6f4f2ff07ef810d13fd7e624014514f5324122c5fcf5a99f3815120292abfca42d034e188cfea9c67702f91541cc91190b4d43e7e4afd003ddccc389e5a9ba14abf680de876c53f7216bee2e421de3f05fe48c8a0100fe66934026624227c639eadcd7f4b1ca402a9fb4dc5c0623d608d55bf38179977a7dcb4d54f7154b51ebf5d3a2b84fc6c360ce4f22249ff933376de2d7d9a0e50465ba863603f140dde55f4cbca49ce6bf4f96270c921163e2e29f8aaeda40918264c2eaa72a787be431d927be1c1adbbac2afd815fff5691127e6a28d1b13942f9a3005f3319f273a6c72c07efdba405aa0d0cb59eb2c672ca4d60bbd190a7c6757c54afbbe04f866879531be7d35f141f95b677e001c05c56de6b567730f2db76c8c3b1c5d05672d8b375ca4f5b15110d106a9d9f07fc7607a0e910af17a1a17e80a74d51a3000a0358f9bc479a9cf7ca12f14d9f0b31c49b646fe69c8991ef83be6d63f21d6ea5826684123f2482fcd7fbf2dd0fc70942e3d91d23ae3d2f7d5d12a3d37e7135e1d388054ba631f75e89069bd9c13a3b2c1c190841fa136f0ead3ade96f6c09eda5bb9cb9ade411799ee969f91e3047bca475ba29cc0aa3a9b36f9c8cd23886ef5288a102bfeb15097ae2a7fc6d787999e31620a238db15ec9127f0deca557070195ec0fa7952fa2808b51ceb412779978fdb81e97f5e82ee28fe976d6528feb0c6c8036f252822dbe7b5254299226bf683acbc86c991245d2774fc7d90655dafedddc339bec31022a96ce755ee2dedb18ec40d34c64f3259767d1c2f74f718e79758cf49076f2f8a31815788cfb98821c00716b8ddbd4ecd0211ef6bfb93756a04d8b3a57ded863ef61470c2a74e6aa7230fffc0c450c26e17292a45fe2bf770a21c91fa62f0f1460d7161c89e3c4150f05033ee7ba44fb111406b83606b5921974658a95f0e6dc8d2956e5fa3a7d448579c810c8a8f96ef63e3dd1d96c6c2a85ccd02ed48ab381e4a77f822212f96864a4890b49ce81d74cf116470b08615f869cee5125adbc2643ac065afa635fad23444ace6e5ab425fefcb956b2df75029bd911bd868ea8a071ae9b46696d8939d6a7d39419b85ec74608466a1a06c4fff70a9f73b43a73bd1240c344dd055b9597deed950f6c4ae476061825313b59d737c510557ad1df2d84b00eecf205c150478d5cbf560247902a03a3a571834aa58f6ee3fff488150f660f37df91e91f05f24ba14df3d6eac59a9f244dc9790a9acd386e7998fbbe3434abe183ceefb8b9fb3c44ed047bf8ee6c02b3107ae709f3c56003d314e873694461f7fdf267309a795f423532d54cc4bbd7ef7d713fafbcf1395db2ad6afa90ffcfb0ffdfe3024267db0ae18cfa8c56f8786913c7d2f759135f571c7b2dab4a66a7ede717b8370007c31e3f0929e10f852a0eb1d24c32ff6e34ef3832957bbab65ee3fd65d58314c137f2579198dc17ca5565371e4f3bf2a963b2bfc9c6d8b3a471cb3206a979415389714756cb190ea5d0db27bc3c504ba3b699717f8d68f7a0283192db9dd05e4da21a53500d8b88a3caa160195651f7063266c214a44a1473aebdf9f4691a29ef47885c0160984163861b3e0b340f002d321e5731ae6f9b38df40eef94e0a8c432f1fb8e2f97619b70b9025d7a1f8fa67cb7b46ea42461d2c083f4c2b9ff8da719387e7cf9a61242b7d5b39f3e56d94bd2fecbcaff7be19feedd4bc6763b01cdfc3f6abbd01d329ec307b94dc692650e6accf5342c2cc93365b71d65386b78327423d431bef3e14dbcc2679826c9153f6a673b3917c5fda54202e094096016dd5aa341148e3625e66b86b0f0d066a14588cfffb80894c2a467bcf86125c5bdaa3eb45ea171909fcb821ad4a4ff73b0927db5bd39a744c9c0254b9bd09459ce4a4e1454d7ecd58f3e720835f46baae184e8675df5d131774985f765cf6478e9dd300c8a4300de0d2e35be4bd52d12d96b37598279f9b4f52e0fe3e507c78efb48f07ffbe1dfd121de47878a3ca74aad31836e12a68ffce8b5dff6f897c1a6ec1e103b887c0e0ee8f7369dc6c37ab9a1f743fc793623c4462eea1d1d71d971a863e6905218da58043f890ba4c7eaf6a38fcc126b0e00874ff4054b1f17cfb838fe0d1d9b031a69f006291d1f0fff3d9de79f31aece0c799eb1e2daef67f5a6c0bee037569c4a5ecb29a1966bfd92856440537c96f146666bf4a3b145aa64d0e55fc95165f00e4f3b452157e474c5846a23b21f4c581967f4521a85efcdfb6327e8e7b265185be6368ccb2482024da43bcfb52f80fadd52b757f3d98054e4d788a106abce52912669662f9dad99cbcda0cf80e35a489a32021ae3221ed20a0cd68030408a0054815d49b15e9d4902cef33caf152aeb2b065f41f0cc5c286377059177f967dd34fd4ef2c4fb420396ceb04900394e4a592d26bec90ee320c43c3fb98fc219c7712efa0f3e547ca9313c0fb8d746b08c189a224acd16e51cf5d84ca2c41945c5039b1ae31e82a477148ffe840565edbc49d0540cd07f9977ff5445abea162a5701ea3fbe5b3a6c62a9e323309c5f062b9546160121ff4484a3350ef840d0872f1c70e032b1282e2aa9ead83ca5dfcd4d9d5335daad5778cef3466bf005fd86118db030111c5443483be65e34c3f559b6c0c75caed2424779b13d5de67a7f60b2320b4f30ca7c8be6a0665ba2f6e997ccf10b690d58237ed6c1b5126c2d37a0dde9be1cecd83c1e670218445fec1195b423daf4b05c2d9def35fec872d79a5a08a391a87efc0ed27e04feeca2d878d4163ab50c245dc5da16a8f537bd563b748f8b780c477f75f14b8006946d5be1fd187d3c34174fd8ce394eb203e6174a443df3a7690770e81b54ff9568d79492e02b6e4ef201c510c7f54a8b9010f578ca646b7e389a4390fbfd9c52c388ded10e9084299b4e710a378ef333061be2d2aa5fb264b1e358a1adf8f32f5da00518d115f0045b8bbb07283c82ff356e87b38c66055fa821fb8eaf1ec2a2a1e51a830f8ae4e6b4561bb7c77d7db3f7442afd7823a8a2e9e9dc00b068ed1b78546e390af17a67735f984a7f326bbb03006095a041d87fd70e02407db58a41e6fbecbfced7ba1d9cca0e980cc52b32065a854d9985e355ed484aaf75a44557ae5cfb155a2029339edd7fd85cd7b0db63481277f6e21fab4dd66ed95f9dd37788d8296d7fd3efadeacdb7dbf5e4d5997732c11e4292584147c7fc2030a8de044cce533122a6893fb4313e04d829a83f5200d80077df0197b3633bbf14dc4e6f2945cafa49fda21d3a360b0c3453fc00c45f9e66f74e381a69781b3cd78f1d214512ad72c0f3a3c2c93b2c0d551dd5cb81bdba5e139dc829cf683268f00686c8e5df2d05ff3e1171c966b8e165f5dfe2757c8774cef3cbd8e1da4bf71af472c151eedb1be4bee739ffbd8f9f7335f5401e5ed10129ad7f8ed79cc44a9b79a0cbef2bed7922cd6db63a4b59d703e4666c563e0aaa1ebfca9874722aadae9b801fdbeec5eb8a9f1ad9743aeaeb02151af4a0fffe7c5549b44c3afd17eff93e81b1965ae2c86f731fede33d2bb762d4f1042629960d049574eb30a4a7c54366fbdaabe2134d2d0627a9524396d8bb47ac00320ba7109ca7ae0a1a6aa0e542a838d26ac6e5f998239be6ef62cf9b7736b6c2703869791089ec759eaaf2ca98b3cba9fd60fead3bd929d63218d861ab8f7a7ca9fbb73858b790bad4d75e3829ae8686419ac369feba2276ebe7113cd5dc3f40fb0fd0bc1d96249bc1c926d1a5207315bf68e299f7d13625248f574053e0c29c6bc6f81d2f9e1716fa2b66ddcc98b791f918dde26515fa7f15f752f02e0c5ae01ee23fad12f7e3febbf00cbacdd0f586fbfab72153209c471e90bfc5999a9d0e344a81670c2186b00b0b4c775487470c923a9437aef006d0f1cce55ce4a6127bbfdfc6754285ce987e79c3dda8cbf4aa69cb8696c507d07e0798f919122c92fd9da270d118d2617029b9d764ac5fe04d9bd1a547994060682952b9bd906f03087dd36d473e9c31903cca4dd43dff28fb820dd1fc1f696d9fe09bcf7d9bfa8cee81a85616dfd9a77c297c5862a19884bbe0abdba78b3d1d5c5d845ae9660993abb38d0fe3ed7633d0631831f42a89cb91bf34914b736092c2176b35536dc74cc10db825ffc0cce4935061a99c16f8ef83baba672ce36d7f532fca14fc12486ebc26c2b29153a8c7f126b20343bada32064a3ec2dcf94b1c100dd1d4d1dd0432e15717904af6fee1a56fc385e4336c137950c135c4ac0666918b7cedd64e6046b2dc7d751837d5190cee2f729fa48c8c203832cf56277d0e6820985590ae6af6b557c53d6ba752734853fd3d947b69db2281addd9a4073dfe1c2bbca751c834e4064ceac0cfe4eeae3032e3e1625d56bdb49e5bab69bda395d8e3ce9a31375fe24423391227b531a91d1c05e90c2485d6443a4f1ef000d84cac4f60cbeee90cec382ea6ba57673338fb25c1062a0caff594165bc9c1564d7dcb4fec9f24072191aba67a93b6f1e62da13e77f8ccc5d1d1db37e86f35af955522a6f84c0f9ed6c88a4173140bc484cba822b7aecadf0068369cf63a8f303d1cd58e18f9fefbc410da210ae5923975619f7bedd9b4b821223fa7878d9620786dcab8addab09eddd7c39667eb824f8551922a87e86315c46ec9f4a76c54693b5a982ca70e366ff3a844d994c2a0344c4e41571bd26e0feedc0116af52b0e6488954cbbf0cb625787a84dec996a1d3a8fef289b39de5a7a51790c80a5ebe852f70d1e3b78b0cea812c9102fb4538fbb36d4b28c1caf0c898ba223cac7c90152cf51cac5495352e9dfe48423169d0c90776a3bad8e58c6d057469798fbedc3ac8d552ec302920e5667ab402e874d32a07f0f9c4b19a61a478de5134ca60b5d9413125b4d55e30f95d522dae4374a926f85be0a91936e2ba94d4a69fabe1e454f8e5e34c3a1b2f9fc184dce4cc32d39b0a4ccd913bb19fb7ac4c352fbb0ea69797eb86df738900838bfb98c23e21af57f86abecded5eecf382b0dda9b2086f5034c067ac26ceef79591385e97b0feedd0fe25b7d433808fcd79edc3ea017b6d6a2cf1ac850709832d27cb50dc6eb78ea26f5d83e39f6ae21abad411bc5b0d38af81b4b7d8f638f8a5f8a4f387c758965a07511cb528a68cdedc748b521dba44c5cfae0c5e1f8ed2cb62ed1a0425f48de2127cae9fe0aecc46463f8341ea8775d187fc14a10dacc443a142edeb928754b0c04abaf595451798a9850d947f323bf3bbf56120b10d63d2c422d26ae8ba5ec570582cf441a9e5f67c4227e2b7b49004d696f6238a18706bdb28f96f4e35146ed27fa73b3be55d2ee327e24fdb52f2f055ccb4340ec041ebc9eba9d3c567cdb302269f18f319edf36a035ed6e1c63c10462168b513e142669a29cdc8b0635c6c245dcd11c52cc8a63028a1d4545410b50afbb1c34a6a704f06bf9b4ce23a1dd209909ec6f71ad82c253eb6f0fe2eeda6339b6c0f76ad21928448266bc1acb74b1f9891640c6153a09cd352adec8827e30f256fcf831ba856cd1e82bd5aa0f58bda94f4102529f8d5dcdb19eb96d607e18a83b9da202d61c67c05d1c685e70791c1ff1b4a9b0891d3d5a8aa0f405deadfb94daf576365015c89ef5fe7d499995e440274efbe02c31948fbfc2273aae575b9ef2e002a514d36a265e24dbcab51f844c1c8a8468313b85fa4c224e983fc85fd2f5adf83a5c6854fd3a8318ba1e94a85ccc86739e7af9c001c6dfb23248dc723898715e130f407dd264fd4064aff099cda030eeb3e51327de868816c4779c50b726903d4ef35a9fe7fc78bc0bf5f04ead1fbc080ace304598c08da4cc96ce7844d391258399381a9b380b99498550b98eb9d86a3738966f35ae796ff8d348a0a7eb6e91ed5d6f6abc4d3d162ebf3223284f60c0d86589ce75640c1646abb5bec4b28396fecddda9cc7b596037138fd027c6bffd7d0a01f1efe20bdcc7e9663164d69952da12c52cf677b9fcfcaef30d85ce2b03bcf5f67d90b42defbb11174cc09359c9cca362fbcf9b91d797235f3829fac9224f5c7a6dd0293ca5094f466876a7f84b3ada47936745db5af32594e4f9065110aacc640c812e62388f0435dac54712ab83f462060d03445f951bbec3ea07a695e35a27fc5cbfeb04720b92c96b57859ab8f309dc0bdcdad6a8472c9b6b319783233c4efdb8639ac5e50ab965974711bff16bfff10803b91e745129b0e32c7d83fc81be192546c1b873818cd7387e1ac7e17df7cfcee38e01e127c95f9de6b26493158e44b18ad226774a7374259927daa733d3a81e33af6655c9ce826a11b90ab3630162315d95d6fca704aa46a670288647bdbe81fad5f066e78a92737ab56ca7a4d8b12796d644fe4a4f574f3f0b2b869de8f5100976db62a0eebabd4074f46185f18ca654e4e8a29286763bf1f73948bae3ba826ed0a13afdf1415874b8e13fa8ac739bab0e1d844831abf2fcdcf89db3618b121da1c313bc55e95d6ea514b03ec7f97ab91eb528b660a80c12dde57d9dddc8639574f527d484be6d31cce2e9f45b2019d4250a6c1db17ceece5db960a5c776f3e8552f95cd176f2de186d82a7bc2d8ee5878eb511990795a8ec85482f0ddfdb469e550e6266b838c35aa39c02aab5df1e35a4ca388384b13c69a5e0d038b5e3f0f21fd63444c3661b1990d707eaa2d93b21656701d2c7b53da01a0902d7186d284052595166563914b1f580324315b58262b891e221d228e7c66d7ae53703d5a8ac680324ddd706fabd6e6be0db15d9ac130983995c5d4a3a04fa0c5a931a71d87abebdf3b681810bf05373992e5fb2fe5cb1d8ce9f5c1f563c793a6289f167c5dd20dbd22b2381e6c545679016c908aaa4a6b87dfd92f52716fcb1adb6595bf1391ea738afa1e194ffc2b532cb00f9f601b5f75224c70be964c727d57a42e3fb6076a4f03375e136a75d7d11b3f1db3610beb21ed61dea38b2fe942477c1538921ddf7b28fcda6486e6738017df0afe2adb49363aa4017461883e95435c62dfff96a3170910ae35819bc71d6b31073292f6afaeae00d4bb2921e7c7d14b8f6d94dc6cb77ce5edb1ad1ba500481d58425ae99a8550d3fd774a2920d96a2ceceda0b005b16c8bd90dcd42b3c13e2287ec1cfaae429a93717c0195b1a7fe62b40a4906abf2b3ef0259a01639aabd8443ff723948edbbd4b1548d293dc4ee5faa2f8b67fecf55421ea0436342fd1a80c87db276cacfb3f3868832c68f6989ea502ebf16cf97090b62fc7fecd3779994d40b93f049671ea0be90d6540f385a9146069b6c6b077d0ff912e0acf0f7c1d0aa5a5e98bbf285becdf94521a85875016c503c69d5fb2650547262e57464df5c47f33e1200628306e355908dd84d953db8f690b69f6fb69c88c39d87a233a07e5e968a436da07a5851e7ef30e1bbdeb1e2ef4008348e9d421a1433c2b55d5edf2da67ffbcdd2285d73ca782d5a07fe4b9b65baaacd6dbe8686e6cc89bfd3a6bde69fccec824b911cc6a064ee3a12fd7c3eb7bcba33d98aa547bf523a4853cefeefb2b95476b55c9e4cb10086b4fb4cea5dafab23078b50244aa0f7009800332ffb89799ee11625b03661cd6465f590c35ddd9147dff53c9c420b20f7bd29672e0c2ba704eb2e6e5aa35150b9265312b5ab664b1b16bfcc23e3f61bbc2092ea5200509008804ebe8510f8df70d3354df988a0b09d6492ec4d17adf4914fcbe866159cf23c84bbdf069ba6c0e20c47d8ece9736dafb9ca45ce8aedfb444865c7e47c1f4f69c3b5bcb03bea78055b29af6f0580771018ab5f0631f6ea19018dbd0b6ebfb50965297145e3294cd0f005170c0ec5069ba4e6e02c512315934f8e8988ad63fa359a16b8c0bd247f463201c2c4a467091b0810a083c00fd3dbb2f008e835e16d1eb682b8de8b06b7cb05e10b5e360d95590e9e4a721b99ca7920a7280793d88882da08884d2add16c000a4c2524653aa0ab52f67d291dc6d852253488147a4076d8a2b5fc8538f1ba364b3f9db6d8a1794d6e1e3cb1ddbbe890fb1876df494d22c42661c5fc590f169070e30a8c57a521cb08d8037cb8c435194c61e0482acbe6214407265762226f76aa5cdaa554076c7bda41f31aa85b0ae4da81a9c9b46b5900675c8128754ffde33699c498e851aa144b4c2d1e53f5acf14d6931f8918fbb0c2cf2345647227aac2d4297dd05a3033a00e814b0f9eedf7c954641160a56176a8bf11cd8e7483df582c0fdadf69893d32da41591d5b0615f724857bfa0cf00c47a72d983ea770c32ec1eb51d7bcbfc6b7d3ff714e3e5c51a9d07c706f930cdcca3ffd169e67e7f37466127f324df7424742e1257da8b4f0d4d4fa470e9e310189c7d84409cf64316a39497e794aa21783285ec3691ceefbda5c7b781915ac6e9e7e2e8fb07a450b16bbedcf055edcdba3923aa7f47c350a3dfd69c25b6fba4cd248e0fa3331306740cd16450331e950770f7358f6b47e4320394bb15b4f33bf7331d654e51d9da408fa89c79f62abde5d67d7c5a3b606b99694a9ab77fa3fa18e9a192d0bc8ea89595c27ce71933333a827a17ae6e8b9d499dbc04b73a0d4192c1ad4c708b89812847671ae446cd653500c6a134bda9087945f373eb77f512b8aa68e9207af9dd0971d0468e3cbae66f06ec86714111b9a4a6874d81067e36c62bfe90fd365d9774976b84b9359e539c9d44fc7b2034ab39e84bafad4d508e76bd648e0913dbc29606e93f50bd05df8175ffeef6d76e6dc031b15ac229db558447ac96c999234f626ae92a452898488c0dd4b7697059d74dbe2a7055148fd8152de73724df325c27a013d6ec51ea785e89f79fb2d90156e5f7fee774a9d7eab082e392700196554268cef4abd3966b6e42ba00966e20f185517e3de486a25a1ea73e8158a6435a169bbf86aa5c26762a2c57437bc073346322a400f6186686fe0363a3e59cc12784760aff77ae16427b12bddaa8cb2f94bc382a334543c69b17bc9b0ea0acf51cde6fb162bf412d93c34470f6c32986ad29247e1e197a37635ad0963d24716bd6bad7576653e115b8a1813a592424b31132cda7edda7106b4f2f9338042e4024635f32b16ac3e18cf33c5a9a0c42a2ff4e54819cca4250d9b2b1fdb9a00c65f816e5ad20d0c4bb23b3d75a95c20f5252e55167e6c842ab640bc79596d8f9c38146cc07b011108a9f10eb985ca0389fa5d5dad676f59e6917a3bf0e46320e645acbeb7773e6308659be269687a81dca2187e16106a12b7a018fb4b206f3c9681be65d2628c2cb4a44cbd631ad0f9c25f84c1f291692028ac00be89770dfbe630f375640cbdd82dbb25ac1bc556ea61120584b7d5f49d04c44724ecd18f031fb1627864a1d8a73cbdfbdd0fc89bc73e34f5284e1d996dce338a823541d401f00c67325dd84c30e8a43b847390b5dec231f066143222ac0de15c05a0b845a2084c8c5e5e561993f9491f639a0a3ace2dea21b80db4974f0c67dca6d4d38102b73aeaf28f5796584d628a7fa9eff266bc35ed213b2d544132e8179f2d1f4094aef429b053bd621c8c8fee4d5185ba3af91feec82a5588056b02ab4883722a815de309b073c05d281e33fdcecde25d669340816786afb9182c6497d824b44f3f6323f6f04ea27e665e3240e3b4a2c2dc220263bc0abda13138fb0891105c7f0ecea9f534228f0a29d96a16f3f741062e1d8410f1b5668d7c836fa0a62050e8fce7a2b86e4cd6dba017b7dc9de456ddbadff5f9c4f2b3baa9f25268cea3a0961bec2594fac912349dfa602fa4aa46bf5c38c3110769bbde0550ff477d30e85d79f6fde6f3c4d480e49faf9e0661b92f5d22a30a114f2c94f18e4ae75007fdbdc917f98931d866812d0c98e0f1a429fe32d84c38a6404cdd5835b3bb8c659238927c7994971144a4742f9f766ad78bce31966b5d96aa929d595fc94e0c2fac36cd8173cde096f86205826f178d35d97aa42da7e8d00f111392f5d88b763d0db4f1d733d3996023c94128edae4178d9c38da21384f3af39db8b9e1f585387e633f58a366484bba60394cd1b53180adfd427f4edf5589f3701d40734776a0e72f2b8fdf70b1720cc18d1aeed744ef47d8e40d304b99f9a6947a2499cf19f00d1240ec0076e3395de9c0d86bd13e9cfeaae506ca8d8d59b97ef1752f1a110e7b915815fa019d128fbc9bff97277e1a54edef00b1deb6e1873d2176a4e1f4e2588716756568a3767eb8737b49516fb45c01419a21c1b329df3172d62dae2a5a991c8dbd4bd7dc1d639f1cd00c31d4aa65abbe9db0f4daf43a7876fbba005ed38cf2b29e87c4f288a6b1043d91a73e17008a0e4e969e2820a6c99c37ad2224210b381a5cdc5d1d4703380c118480a65569fc7d6d000265531256543aa4b2180b604d358ccbf30b5a66ec4a3ed09afa4b2c5b2791f2206e6f8c09857b477072bf3614d9850f55bec02f644e0ad929cd22b8b31bdabfdba49c9e569ebbde6f4e9c56ce82c5c1cb4e5731a8e934b1fb926a9ac728a6468f2f645414eb066e6234d9a4a0d5dc5cd6c01abc4aeadfde3afb01bf63f5f320ed61f0c6834a94236480e1beabc7d29f4fadbd4813d06f33059adbcdca2c8fee5ecc93d37a2d91f89e00497042a286b7a7c77fd86254b9674a2108da236c32fa0674055f8cc7467f10be6dd3d32361b855021fadb28ae21667c51137ef3c3d718832ec61d92a16ee226531364d11407bc4f1aec106ade92ee2732ed85ffdddb2e16ed5e0fac5ad0374f43680136162677ce66299c1fd13f430b5b2158532c14b98c2fa3845794dd7153a1385fd9cc422e94f4a5c788cc064035470df0a9ba4ca4ffe273367386a9a0d53b189ff020fa4b397affb30ebcae2adb321927b2eed604da3f8c6942375518baffd38665759b0bbc767340a301a1811d30ccb4009f6e0aa4fef9622f07c19f3aef13a252b31afbd7da9066f4af007673f0a732f17d8793afb00fee2b598b1a7d9919c0054c0bb55cceadfa932cf9fabef1cfcfe1add710167e2cbb70e08cd7972e125688bf639c7237f4b850e365e899291c6f9927cfa673a76ae111e11e0050806688d0f238b99fe6f33f7e08d5237b04662fd4c62e1b5c57ad1b360f0a521620587db4d49fdd31ab9a821a45c949e133b31a4187039a2a5cb6dc7c756ac357c98b4db34b8733f6269b881736e5565ae0c983d0b8434f20fcd84bc6d21bf9692f949b457e000179f93bc2d8b5f89217885c3c987caaf337d2dabef38ce3d24f6566f5a516d81d2932524faf30015a61850270ef41ac63eb0a4907bdf3418e72a122f01ac105c55a48e390a4c000d42863353b1e517ff438c82c4675d1eca8ca3bd9f6e60f4229d58b452f4601fcfee2fad705cb54f49571df8a6cb512fba86b59b5c7aa6661bd1992fc91af4f87d1216d72ec21f8197aa6eddf2b3de8adf48fc7b01d35ea120ca35b3cab4b1a71fd4976e664e8c234c542bdfa58a7621ef89c8b834e6c1e116deb479e19fe845d6a7f05bc83bc48786acaa354446613d949561beee340983c96df2a63f1a97e21a543f6b62000c3ad1a1cc39034bafec193f7e4bcf6183089582598832f46ebcc272cf1a3f82ea816a3f587c8b08a0d7be2cf15c17acadbe4cdfef5eb08fbddff5e3945cec410f97e9c6d046de10e37947dd55c0ef1c6208760aad8fdfd4d553d525e011399f0b665967d47cf878d64320f63fb98d9a997a72d153096a0cbb59a7a14d531392dd4e185ecb5e55cdb058dd7502943aafcedab84b336cbd3f58ffed6136dcffa45208f9c6c6024393b8aac4bb7aee8887e7190ee4a0ea83fbc7fd68de93977e4da7a223293c23a2ce222bd977319bc074ebdbbd62da4e39a79ff5789253285482b3c7a865214a040d1af720d58955c1bd68556f876df994ef067f4a17fedbba0cd7b841ab6d9cee6df36d1fe686afe17939285d561151d6903385be4442b656d3e55f18674214d74c449773ba30890b23ea5b34e0205ca43107bfa0422f3768129f7886b165dab1a6c82ffa1f9b76f79711af2cd7aff608f4cdf978a1a20eb39a817ed149344b9792862d05cdfa3c099d726f2b92e8b6868743412259d4ba107113f46811acbee28bcb8dced3ba187f25484d16e486983dacb7386736f411218d069f01a0b2c720fb939c296617cb5e2222fb86a79ec6b2be225b632eb441b3d86971c656f74af339eb36906dbd92085183e16c8743bbce80a2702e3298af8b4cd5e695c0e0ea1ced172ff4ee9c30d69684f746d40992b1b60b51df8af79aba111f965e102769d49012758be5f4864844bea97d190cff0905d78393f989c57643fd6ccad488ef311772d0b1905f33ad020d557d4e5dbaaf7c21bfe1b819d54fa7819b0d532938a03ca09c48b071367646621867160b1efc81017f7e926a4be2d290c32d9e60af047020fbc52a11203e471f55effe251193d6a2dc336e46e771b301f479a901588d81ca64a176bf03db50e3b3ef711b1814a5fa28d45758da5550e707e9f1433d632f1bce9e90055ea4b0a3fc90999cdce4d7dc517e47c8280146aa268006b0522b73be21ddd4b1d702ee882115d843bf73fe3432868e8ffe11be02f7d2b2771b36147ea644d0b5da75e3601502898408d97e3dfb75fc35e6f6d403d0434e924634f462aa16b811bccd24bf6dce1aed87767c7545c51f8048060ab335ad34f35aad21cffd8669937ad5431799efca307840cc7c6998f71ea452475927b574a995455ac77b2c3885e7671083c95fdc22d4756225a5e306b0664993e14651ac4cdf97d8dfd3ac27a64a0463bbfeaf5bb4e4bc0e82f447b50e70956f7f75b5fdda46c3559887ecc920faa0476271b8ac48c99cc4dcdcd60f552d16de980444ff2cfae54c0ae24df65ae5df594e54176be49e9e7b1c50bc738b19c4b3a5ac303a89fc253a13f8806b84369a6cd418a74440213dea6089c4d7b309da7c20e02e04f28fdd90164c6027b20d239cf847d8161a542b778063e6a75215344c83b127f8a65a476305d6eb6395ddf94437be6caf4ffbfea6e1a04c29a247043c31a9511ecbe3cb43cd1a5be365cfd75fc968ae7b47397c862e32a8d4db054f405f93f9787aa5a0b7ca977c80ddd76c267848d04e5952e020ae19071a47c55af0c092cb4bcfb921a524ae27fec1f39e228d118274d36800aaf16e5945495310c6cd72ab442df19b36466530f67db9bfd8d5395914e12a63a33d51f7bd839fef0700a373498750c8d8417ebb93eaabdf9cc0423168102087ca950f52fc0fb4b8f832b2ba7b83fe30ca4ed02e207d3012656fbc6d46cd3daeb3415c4a4a999ae6fcaaff2c8ce504bc045b765caf2ec224a6ac84368ad24cb933d77154396a5d8613d27cdd120a3f65a82cbd9caa6c1e06cbec3fe53ddb71ff82017ed86f7efded20bfef2bf017d47fe25d16a97fb1dc4224a8dafab4bc199f6503ea12302a8c3b51e440c2b20e194827adae1f20766f1b6d49d8e664eebb53dfd79815ca5b97e801276addb99316ace0dbb61e17498215b87baf31853eea78ef0a3de37e272e6fdb4e8589e7be9ab6e6df2808ced61a66ec0a977577b531615767caa0b6464e65ac8395d74829a9364aca222ca12f812ba926065890632ea72b4cbac44ed0328d7f01d193b3f75c2ea4784ffaac2331cdfffdb0fb24134dcff6d32dbb7f5af5abd1c3bd0f1c22e8aaa06a3b3ceaed6010482cc10441f59b1374ad6dc8c47a609dfeec6b569d8ce138decc28baf7a52f85504fa13a3495600cd62f6b29ad0ed57cfb2e98c159e414457e1db417ee3d8a1b178440bf7185799dcc560bcbbb9013aa779b28385ce346947d7ea2ba38ea6b266cf6539f24269372d1b1abefde4c266cd116c32bd3f06ce645d59f4b363c676799ae6ca110ead8558ea91a144980ae3baee5ba8ac6349d0cb3018c49d5c518a2368fb8eadc7282c009f1429d5f9babbc2b578cce1616c3eba1f7db14f6ca3ebd0de73c6b42af9f476cf535b6a84d54b2f7c16793e94677189a00ad9e30c488db8e2e82d62353f762215314a8ed655db7427e3fff3bbdf9711257325a60a2cb7e1d3475214d5462d4c9eb59fcc74719de1f627899977538a39ccb2bfadcfde36052b700ae10554729a69a6dde49ffd59397b0d8245bde67581e481e3233b35d228a1603cd00aaf1e3141eb965a41061d634b914369d82db147abd6ed68ff2aebfb9f87a547148ca0b2dd0289ca1d9f9016f9088d73190d501e80ec5d3d4ce3e5304f2e273894ecfa7a13e9fe6e340b0200a35d6d22a51ff88a15b76860b6c852004e9e385d24f002e34f1f5529ed2ed8added18824975d87d758d1b10ad35f5d7dd667dc117f9b44e30c3cfe42c977281e300a0ce7f68eaeb867980113e0f1994ffe02dd19467a969f9d5d4bab5673783e0670f02964e5efb1e96d95977d9e417dea3fccc2241f7ce2c4f76b8b2ada3bc76de73f7f4f0133176ec55ded3e7de8e065d7d6b037c736d8d1020ef6cdfd294fad21dc024f0da62e8280cc2f9d46a038956f4576cb2af04b34e080f94beb4c2999a68301dfb2efb05f178a3cb45edfa8962c7c643098cebbcd51c80066d7fd6342b12a6840047173d8ab12d3f302843504189cc70f5d51ae234c3d6f6f9f19ec634bf14154161710eace9b102deb57b91f6a0d77d7aaeeb49b7d3848c8fe2df8bbfe8cad06aecad20ec3bc28a394b1a740cb4ba9c74eb40423eddb8cdeb823a915502f77b076dffdb1f824c4ab014f4ab7ecb9179a4c591f7efa24c74af21b9748eecfabfc00b42bd1da297f4607ae9186bdab1eb9c2298e48c735662b1fb601e0606fe598d93dc173fd53d43716369863aab58697b0dbd74e3e3ba5c4ccf0d3850236537f839a96c1027cb871ce72808e2592dd132c22b4ec7af153b1384a589bec8038cc1087cb2f5e65f5618c1240eaaa56d53e161f62def392572274c5dd2bb8e45f47e3a5837ae4a7431c09213fd2e131efb77d979eb44b39bc27daee37f5021d51c33f1bc8bef6a1f3ea4f6955ed3fd4576b6d87517e61eb67c8baeb0e6eec9df825aea765c9ab9e00a29d917e6a9a33e7e92e1c18d1ad5f249a77f32e573077c3b614cdb8ebad94c828f0b757ee3eb2ec80978fbd95f10dcee8950f557dcb283fb0880b27a7d5ce1c26f9fa0501118b7a7430afc015276284e4e742aafce1a274f0e55df190bc640c4ff69a5675d9e85df5afc25ffbf2ac7da79707f85bb92ee21429dd566c61f324e7ef26c9b1b92d8beafd975fa25d2bca704ea7f927c12acd896ff0aa2b5578bf30e898e6e68ab6b661a1a5178eee104621d31916b50bbc8d206908c0d8d9d2aa7b413c4dfc66c04c58b06f04876eecb4d983d33b5a9cf10a657fd8c3d7ba2a4277002424f0a5ca8a0cac331a1ce1aa7a53c25d0bf5f08bebf77159320d73841638dfe1a39ead2cde6f8dd20bb1f6c321dc1390eb0c86afca092e81857abf5bfd3544d58a4180b09d8fdbbabe66fe63db76207d06b35543702f29fe2eb5ca358e6f4e295de76a89e93e88f9259ede7dcdd1a9f8e942e2c0c9642f2c09d8249384a8139c5837d5aac23d9b0ebf3f76acbdd4d6f24177aa8d1a9feace8f7044e8c2a8b15635a4d4c10fdf5139f6da28e9b4c8b1977a2ea14c5357fe98bcc690bb5e2fcf0acbd6e3866b2b238aa6144b9f575eb42ef2f20af3256080ed4251d5d172a6df176e408d6c41679325a9761e63e001276e243fd2f737827b5b814f09864817a46978f0b91d5b137da1e0d1f44721a66e14c1f3170eaeb874f976cb3993d5f69da27371ec87b29c475c664d489e802e087fa5e5e628406cd7b5fc828d02a92eb355b26c2d7062830014e6f57c216a20c76659a0a8cd4bfe048bc457b7161cd70dfa94e516f68bd18570b4d0b2d6dad689df43dca801647c9f7cdb36f7e70a33c025d17d21b8c94f75014c06007e01cb8df5029bc738c7b62bfd6be066ec18d4a279460100ea68eb860a71f5597ffacf3dd239cc7bfcd15af4eed6b2c06e8406e9dff6c4e1bb6b40a84d63d67268b077458c0678dbdc3c47f5fd5748fb09938a42aaec7dc2518b0bbf8b46aca162295f3eed5c5149727c61c1e2bb4d39735e9e857b1f86c2b1478f02b37f029ed825e6b7cdfa490fbd9c440be522c3a00c14fa42357b9e980aea85a3d55899d6d8c30508eb5cff62ac4c07ee9cce69014d08d80ead5c44c317f4812ffb30ab638f1462337b2902b2fbb6d2a632cd0b08358317664fd4983aaf534abcc6f1e1e5ae54c7145f0106cffc8b7bbf887e7e4f5fd43d66198e5662ba8aebd06b1d452ca4a822a708776474a065479dacbc68e3f7fff261deb19701bf56ef7d843430b9c3f8cf01fe9d24c0d07d17e718ba060373aa49785ec732bed3f8afbb4a7ae87c3f053678dda69806698f250b9a1811ae4a9fad01aed3734a51d5307cf3dd4d749bcc9e189fd94ef48705f28c62a70d0086d8d679791f8568035b36574ad4e62d796c7d7fb171278251caec37e7c7ad6f8c2ed21d0ca198fa126e02b000c44adc99e5667d21ec2376aac46b0092be19d5b32049b70530531a77e3271f8b22ab7370f5db9f4d17943273a27eb4be306ddd4189757cb9b3dac3c93bde1d692616f5b479445c4465cd3263c5ef5d311665ab3e6b234264a2a4c0c7820e54208225ca1671f2550c8301698b1f7c8fd4bb0e8a7e9ef6cf1819bd233e4935bec429c49fef26751440f7faa8ab48925ace206d650628e0d0f456af3041afe6e587e0288b745c4084b59e2998b6232fd4e51e47342072e751befc04b76c340810c2d17bf270fa8efe085afc64c9d29aef2fbcf8ffb7fb534925ca9d62b470dc6b422fa82d242da32e82e49da69c6a137fe146818872de5fabd62090a3d14cca37da7d1fd6f51b8e10bafd7d36835881795211e19d6d229ac9276fd3f7de087370178d1074dfb95497d63b635456f73b7cfce63fc3ed353fc6e01b5739a0cae35721ce25f4ee1be7421ec81b3d6d61626e45229e0f60ec84fab9881960640abd0ee5e3ba1ce2859c74e9e715dbdedd22b1906fc7f2230253308cf5a77ab192e411a9f5d92744984c2aae5186de78b5720f73ed61a04bad409de3c875141c11a4c48d92aa36bab181be6b0fcfc5eb3eb2c7b302ab1f03792b41b9c4c4efee825e6da4c1c17d469e024180f3ecf0c008f908c8d5b3eea62168f0b4069d9b06d8f32a726d136e4b72de74c3c8c944c174f1a024e06fbed70a4dd977fe58095683275cc9a049d4f728eb6291e0b4b376a1a0fc41e41fde1f4ea3fe96b5cb76f893a4849c46a977c983218fbfc1bdae560a755dba4848f88fdd0b9a2a5eb1dd244af26e716697b06ae2de5675a459acf33560cde4148f047860fc7032154ec0af01a3987e195404077c3be6e9f0e89c82b5398ee63b59ad0d13999e34ef8c12b755974302bfd62328d6630928dec77ff0362737dc10704a71a2838f74888915df825927a547b1b0d213ff6bd35b69c3a6f9dbcc656644de77d53ceafec3df55e36388d78de57008b3c5455853f367b61448bf3e991618fb8d34c34482444e3db31ec7e6851b43db88fb05f9c729893960d2736e6ece9f64ccd5d370bc6622777e094dbc7edcaa8e6e1f7616227074d856ba40aa764132be9b91b77b837187e40effbe57d58a5e7c197b4944260e1b6c71f0fa208ed9650f7c1ce802b9a52c65f1762b05845bc8873370ace1fb1bf487d3e1a548d4193602a9b4a7b585a7986fd679670c33810cd0580e1ea846710905046e9a26eb8f369e3c203dc1f62ad62d39d0877a13614902d11269950233d94ecc8abbf8aa970afd043ce0c4e1e4348193c0f8550283ba99df19c3ff371fa338a3f6c73f5568c098733786cadfa4cc4db226ae7b887b3a922d4ba1af049f9fc771cf911adaa4df1bc3f71b89eedca9fa542fa4a1e03702f412266382e1dc6015646ce1b5e4e9e34405be3c66cf5880b69b0feb748d9dbfeed833a54cae1ab0dffd60ea9ca405d257194d5cda121cb80902c725d2abcd01f04fea20cd7db9ccf36451a022d03a5d9160a6484b7113ce5f0d93ee9c32a4eebe431c98af9694457a6bd6cb5f905312330a62f922f3f312baf86ea479fdc0f6780a51bceddc4d5ef6dfec0b45b60b539d86cf63c451ec48157aff7e3d7167322a169909e16323c5a4e0306f6e318ba2431f75f79d02a91d28635bdf7ccfdca4975e6f45cf02a0b4964d823f2f295876965df25e9dbbbaea43f9ace80a4174121b60a908de2d644fd9277d00acda0ad8a1426eed9c8ae59399d4dc351f2cf1eb3dae4be11795f6e23d0387ede66aa85208e0bff3802538a16afdfd0b63f643dad1734fee58e0e0221f5bd0b0481f60becf980b3b247cf3a877d56f0a4b34d37ec19a76d0206e9da973024b5a4c8177f4ee13987841b3eca701a7a0c7eb756bd7f99d85738204860b5ee44495a867ea3b077408621ae10f9c0b17fe99e3f5c9aa582faf886ef372f16d8d3d15deb5d0b7e5eb9f51f9dacef925649d15e6c33e995850d227c40885146102309afadb6dcb6f08cae688d73ff103ce4dc0a73f17c0bdb665e0cd1f44d642b3dafb37cc7c1689cdc34bdc7653349f4f86595e0641a104edbda8e855ce86116b3627d5822ac65587a6fb6ae01c7a952bb54911449d3fdb0c0468fa689ebe64e3382561b22d28f5ed05099fb3ee0d623269482006c337387535d507cb0fa0659fc28b81c70d791e0ecc8084eec8e922af72aa546e98ad67170f7ff1bed811615242ef7636e0b76cfaf0e0483661bd52323555e8952292d15617f30090d5a6ea40719f63a56b56d44e43efb0d3811ebebe27f1feabcca731c43f20422835a62d3965ceac1364a665d1f5a92e626fc22a987e2c7024b1a95c098921b9cdc7b2a9449d8656f08ae3ff1c6e19075f68a4bbd8ac808ac5c68074b41c71c1c7c1e5b63c31e1162d40a75da25314016e73cc19950b906133d73d7edf131020d5c4648bf56085af395b4cbf6771a9922e5d7c25005ef014136a472555bf851e46c7f949006adb05a5779e92a7067e6a817c55af37edfce3646bed046eda4480bc3cc9fb8c5e7c5d79092993efd22959e6cea9b458b76683887a02ae40cb1b96a5f113712b9b98ece44695cbb7405092887f231f92aac93540f0e47174ef73038a3005f36ed65fbdcafd53b766a6eeb1d147a134de426a8da6c498315f85fd46ca95986d1ae83d972115063959a20894d4083fcc47942cf21e509e04d681b936619d2926264391bdc1cec126706483984b75f3afcdd95662bc8bc2f6b98057211e93431a7afbd643b5440647929bfef4faea610cb366a7b30e4cb842ad6cd7249165c3f5453ee12630c4085afd7978fe6e8b9c6a0c68f3118eb983e5127106541cd11d8c03cfb0879d22855e05150116c576390c70510a24000d0d0801a23209cb267b14d2a58749743c49bb12adde3cebb69e1f67832cff6a3721ccb5244aa45d752afc2b87b35850e5579ac32ca6c25bcd795c5a10211649dde39a81f6d5def9cbf64b78342a95e464d0009e82e073a3b121761dece82c85b58c210f98ea3fe192f25f964483913ef0cbf856cecba3ac1639b90b05b3bc67d1d3d984ac506793ab2c989c1bd957eb0378b5556b5e19575ab390f5a0216201ee47f0232fe357d9c99aa25b33ed9ebc2c4f634eb4617312c6bde136bbf10cf3e22467d5b555a1d8c7f54dee43c3efe6b83fa41d52b4cff0165f5fb07fd8ddac6f6973e5aef41ae333c61ef6535a35ddce90fcab19d2238b49fb14a32aab750889fbcd8031a0fea3f47105020e295b055cf8ad788633998daef381a49adf1e5f8dc498fbd629a69c5ab87bf42a066eded648a2684028f1e75a0df67efb1e8713e92d508ba2b7a5404b1e42f6392834e1111c2f702be699f4ef744c415389c641807e28eea864fec79423d7e075a8a132253c5edfb924e073dbe9a302e0a68d070fa35846dfcc49c7889cc083eaf8838d864f9b5f4398e6a4d70d3a61dd6ee588d44d8d024b8ff3a68b0cbdd946c2d3d239cdc56f5977fb461084fc0a7a096e89a400f835369ae2279d4db45af33341863a68d9cfec62f1f2990412a0506bab338ed7921659f5c48e96e363d9b8301c4ccf7d6d6b122311a092d4d528d8dada5e2b47873459e0d5653292293835b4ebb10eb3c5b98a47e8526c6a0de49264abfff68d68cb5128dc69f54ebb2ea2f8cd42e43d73cef029ecf17c3fdf64327ddf88a7b4073a05467f3bf4420ac53a6bc5ffe35d9a448fc3d21cafc07e68bd708e05e13d52a71469016bf9d0e259bcd2f8c55dfba71c0fcd774d7aa88f888b7c0d5374a785a1a0243f63e32bb77fa3378b63fbc8dbcbcf72388084dbe64653bdb37aee48f493cb3ecd5093d62173fc8177df4694b0d0c496b8988aed6fda5a2c9ffb5dce85220b874af09c8b670b777ed486830b00ab134a296c7a76fafe8e522fbb9f106012ddad42e542133be5564f3eb52b72a8cbdd33428dfc276506aa531173920ca755c19734f06d8ebe3801d0e777f04d172f91752542cf9816de7b571547729e16bfb5b11af19b692ee3612e16cb46beeb6669eb4682e781b8dc5bca4dcd648911f38788bd85c6cecd3953a7ef73245e5721411c690bc65a0888ca5793aa7b570810cf6ea6a946bfc865a8b65ca81727b320169e1b62aa3ac24f03e67687554fe95dc668890089865ec474659a02ef132bd88eb92dbe627d6920aca8f8f536fe8b7e815e4cf07988dc3ad6668f498cc3f597fe91c8460e0353c818ad97df6669d35161882651fe57aab7067095529c8165c406c8c4a8a664b8fc8f81abc245f8139f6f23dd32c7915de53ad1df24bcfa62150f5d13ed239baa656d60fb1cd002775b51837e8dd413dd4f54681e02432bf5a6d28cc6bfdae016c85cc09459bc3120fb2a642e326d9c545a60bfba409a65da742d89a7f96f7d5273fc258f067eab6617d4ce39a3684967753818e65f54d42fc40cb838b479a41c309b590ad8772e41d61bec2ce71be9e620e57897a3acc7e37ad423122a4cc676855ce0fc39606c03d284613b474c4ece6927329b20dbb33e754734ddd82e8d672a395aeb986c85c127cc07fa049fc4010b091b331b5d896664e97ad65fb0de38d1e57b8c6eff57ac1fae1f073d0341da894075a0bf24e5e49e911190bcfc8490abfa4744e6362d33ea416abdd053ecfafeeadc4cd06f24fb46f987d6bd0714b7e4a95a28109580bb41fc245ac39ab990d430a0a100a5eeeb8fa94e84afbf8b2d37b5c33c03a4e1019688c2d19140fdca74936883f9f96e6e4416df8d69b85ccb00960fa0fcb827f1fbc6021f9cc7e49e9dc2e42326241bbf5e4823960e9226833e36550da075447f21236ad89c3c85a4e4bd810c7f4a84c2aa7ed81a159a8eb4fcb498b490d50673ba761ae597166d5f6b051b2861166b3f2a9defcb66744661043b851bf17c29f7c12cfe9e6c8ce8c14f4aa57493c218975a74a2fdfe3b60106189b4ca39d2dc85c21d3788a5dde309d98c2ad2ed8941fca7c795b97b52f7ed9f46948d6e96e975cf946c193cf769d59f1fc9789da4b815042409b96cdd55f6c6f73212af8336debbf2f376e98e9ec012ea8a7fab801ea01b48ec474142bc7fbb5ebf3e38b33cc217d71ebbd63a1f2e00e961f126b3c433a83b433c48accbe4832ad51c14954703325037afbcba43ad71a45a1197cc5214e4e01bfe22fabed5a9cc9b3bbafc36e120ccb433b5113a83b6d34080cc71639df0cb2b82cba481a68fb9b90c8620477eb99431ec0bbf7cf5a4f07810d9fbd3ad021106efaad52ab26f577ab8a18d8267f6aefe636eb228ab030911d5552a96fffb68f13036582ab18026e617f3a626d95941756a4616d7480d7cc363a4bb07bd2df9cacd4e61034d89ac5cd8133fbcc1d2cc440e425822e2976ca30d72141e8868ba0bfa16647b923846887008b4cb08e62398b97aa62e6321a83b3b23fb2290ec4d8521df56e12eb10c962e2f508e620fee83501e6bbe304992caac1403d05112d35cdda7e666efbd909230e9a14671a262a42a03a20c372ecc0fae79c8adebe6b00a21840d19e0a85f9797137a2caa556fbabd6f6066e28c519cea3e36b6dd4d6d25334040ee1e84fb9481aa209f086ec096e686491b9e16f5dee017036a83a6bc80616c1fb43133d7ab1f0e1f96ef6d64bc3204ef65b7831c1785d69c097302db9dc396f31f0d0c2c45a997a52bebce8f60c46aea0dd830f6a56c4bb5578261ea2888ad8f61923b379a7878eaa2c5678d30f3459ed0816728821db75ffcdec879f8dc18cc30e5e9778096f75edece0a845fc71efe2a0a2dc1518dc1f2b02ff13d45d84a5aecaa92019844eeab84ea5e4eaae17fb39f56b4e333de06d2b68b4461666ed430560a0b7270a0d5662a46529888d31e582ee7ec50c9f7406c2ecb4cd9e570577786c4395c31dfc6fca2609793585c738379770006eaf0a28773f431ed4a573f902be6e4ca543405d038bc09ca468b0e2ee4888bdfeabbf3dfa94923662adce8f6326944b3533f0af8040d6aa1cbaf70e8c242c1ffbfef180785d9c092343445ef977264fd0cf7f47987364d8f4264768fbc0949ab772b943d55065b8ecc1c8a6ba0602acd24b36e58c128f509fc1737232fb5df552c0a3dbc2acad08c9b9ef6f2758b09ae21becc381565f6baeea53a24be31c9b9600a49fb0767b24c9c58accb348918aeda537a4290fbd5bc7ff2ce0af252bbce31e74d5bee9702db8324204832b7b10b5af671d3b6bbd1c0ab9ecc19099ee39249e5a69120f61d125c796a5bb02af64d338bb373298cc6392d5f55c510d7118fc6f3730947c3dd898ac4b1fe3cd18b1944330325df93f8a2d83c952588c2561df96d4810a8e21e3099702719fc8f7292da4f4f70418b31c2c65b5706f94d3491994f4334a3e58abea1d4e6ee153caf48449f320fbdb446ea4f67e6f2ac149df1633aa7b5e519005a5e5c2dc3af899284c89bd7d714cf1a7d7f1287ccd2530af9a593673545ecb5fec459db7840936d2b421db560fdadba51036e649a6872d5ce865441c86f6b4a052c4b00bd09a690142aa9b6aca8efbba86ba5ea79d0ff9c77df65234ab8417ea8d574e522236d02486ca95f4e55e061079997ef2b3772d394d2f46d5ccd438c795d49af0d507391b53191fdfb5c245775f4fedeece00affc690d10eb9c86d568e2366fe328b6bd1e83dbc49fe5c0752bbb3522d3924dfcebb3b496933f8e4ad9c6e18091dc689122629f2009672454fed849f7f1ed648ffc6ea88cd80dccdb9585905eb34fe37ad2dc739f029745c3048ced77aa5b93fe8c9f9a791201b9f09a735b9f6eae119a88f8ffff24b99095594649a5d3e1a25fc4cabb631a95afc389269b72fc9571bb069ae1428adeaf3cd4885227a3129e2e5a0b949eae71306ef15e3c1e2cd4a35154bb4a241dbb8008a9a475880f08df03fb6dafce7795e3309ee37a3280101c45239894280418ebfb4e6bbadcd4fc3bc26237e2eda47a80a90c1699b7c11c263967bf60cd860014b9e0e2ce023b8b93e528e7774cdb1ebb21f0a769c9eee72874b39d46daf9bacae8bf7a0eb85e877c5a19538f1dc37d2390f4618e371d32921f09f53326089dbd0c7e5c41af0dd45fb9cf465e6b8d3e9fba381163fdc6878b5ac307042f7256dacb18cae224474900fdf8ad1281878a5518c56002c5c9b577081ec4f0b0648cbb01bca047e183b7bdf656b8b9c396033becd059aa2bf8b98a6d6b9fb4acdd0981b1ed2018236e0cd209229fa61bc0b99b9c2c9a5666a244cddbfc761c88cae22c087a9b057a914095732416b901005dac04f3405e0beb0624b67aea8b8c477e7cfac22b5ebb759acdead60e329577e2ebc47be7fcc98ae55a34dcef344851cf6d089f136dbd8561e7c27dd8df634009cd481a341322deb0fe9176c8c83b2f4f5325e2e96c7641733d768906f0822287d89b877ec35da65a3346731c15d9c4af4d0d23c0374ccfecbe7b984f9f2946b0cf15a3f85c82beea5495d6ad41f54dc09b821951a23ee62db4f3b7d1b2b7613fbd6d5c475b1a3c5214348cf1fe41568f85af6fa0c191f368cf21598b4b34b38f9d502dbdc4efee805b3993ebcf062f25c15e3d49e8e381538b16b095b3cdc5ac12ed4d91588031b93a8111a4da82078a03ea569197ae7157c00a046267f1aaafcef59afd0f19cb78b2e6c4927f83cf9b540b53e99efa85512eedeedde57ff7169e3519d33d64528ab8d6c20dba598480b67b8d13f1970747e4fadebab7ac5de3c3b006c4fb95065bb6db5cc833022e665f23a5113b11f04d3817bd7fe3358a91a33091a44c760346e8d49404c9e719bc3d04f22e7fa7cde4c0f0f0e5b80b3aab52e228b7c1ce318038d1e6bd6374f7ea769070d4b8826b811fe6a8df3d0937a5ff13b620a096c30752724a1e350a1e2ccfe4b1e599562799a801882d4a6aef8d997e183785e2fa735b3c61e944818d8c9fc52a28d35a992334bdf25ee3a35d01d32e6bbde7a9606a62d10ced56574103e6cf8b044e19d541c197ec9eedc2f85c7bc77d2d78a099a250d6bfddbd232fbfc24c011e2af655ea7616308bec31bff30b4f386294343d69fb58b0ad1d42f8e1bb8062e84b10f63fe84c76988c243dce85c541367c27d283da57b906c101f0a7f8e75f4b14577fb1214eb46e4ed4ded92f5683ca8b410817c1fb4e98901813f4933c4e7991297c6195d687762fe46b835fd5b477a0238a972e3d1cfe882847896713d6cd9834e1011c98d34cb60d793d77588093e4fd714aad1d485c145b01d3e28052d558c413d943b402eded983f45fca92cda877de1fd782277809f634bb8eb52a83dd3d35995096688f1e2f176531d53a91781f0c31c5afd91fa32727bd266d26cf0e04d4a14bfa74c1e650d29f804f028a1f98ad9ae81b7d6d33bd990ba822991458fd77291da7a34abc9a3651d090558e31c375fd209aae2de668706026a3f581d8947f9863ff7abbe873df577a58792673736aadf1d21a95c04cc82a15656815f56cbb072a509b304b728273fad10ed71efa6466057d282caa7fe2de12e14e24f71e13160ae93c7a3d8c78ab32c5fd02c6991f89d7e7a9e665bcf7a4e38c2c8bc6d17a84e859c76ff13d073a2676e528a9970f8f8a73b2cd74bc978033c7e7f0d622fe2c1cfab9af1b027ae21626426eeed40923d73bb0562126f5e22339a537a700065f06275b4afb60ce673bbe2769ad129c7fbcb4f0d304ac15175348707b40a5fc6ab11b5cc5ee23aee919193e4746a6279f61c7dad42c18519b5ad8e68683eab01849541577e7b2cc27de4d522977267288b8abbbd2b5702bfcd69a148bf67693bbbf0719db10776580e82ee22f2f9a92fb183db12d531aba4e5f50370fd2a68bd128acf653e86ee602238fe1b2c98f0709cf9cba289fb928ce9bb1599edc72b2ffb4236ab0b5479d44f51fb2394347a1f95efae4f88e251c7b2a31d04a137e8ca937a8c0642f3a4db764a34dd1c048d3a3f8ac456ce763e3f5c14b639b8760026c1857bf754fede004da67a8445ee21ece4bb0fc0ae8d8d297e1218d479db1990832db19d72a8a58374753548682be7be40639664685ce2801bc9c9a1bf13f631208c826fcb954a3ebb3b92a7db946eddf01e75c7cb5ffde00f82260cdf9b0f6c606e5426320cb4965067c602f9cedb1dbeeec8bfec2d69534e922121d5104c5f7561d31aa9dd0e86dfa7d9dbbb5003a3faf406add8a68a81c5a75d1f730a03d2cc28be778f763c4b77e683603f025fb7d554198ce2453577a2f4553d888af784f262e4e170c3adc996e4e1fd7ae6f3cb0b6b936eb1d74b3cc53b33912600c7d34b4d50343b7561644e521882042e68ece1f4d3e42bed4989c09572222eb47abf049e81ffe0789d5cbe728b09477f5662591e632651f52fb1ca18383ec1c23547b2251452674f27a01bf5edc54cba765acd55c03d8f5893f52cd139600da248ff95257d1a5c1b384688b071eecbbf070c2b940acb2c60d5e7a3e7ac03253a5ef19d7f3fadf8d5d608533f3dfd8ce57f13f2681d162e2be4302269a873bfe648316bfaf306aa813a5805ef773cf5de97b48d99049dc78525fbc3f72c0082e7e03cd900d68002f1c87add89e153d4dc7c7e42bc405927b1b219323df36bc8b346fccd71bcd154bcad7fe4f2623c5a5f360d073a730cbc9319663771fb89aab7d6cc2921957d5cc850142f0644ec830ae1e503881c6061c499acb326c5bec829ff92979d8fc3515e074559ff2cd3e0a8190b0d1e71a31db035d18bdab4bb55a9da99c074a3dcb66f417de12455bb57a2c83f2e3092016a9ff0e7e9d098171f667f40f23c08da7b52eb00c5d4e2ff15f42e93d282ef02df10cfb0c624efde9555e282e85a145ffbe602b80d5872c958b567f2e705f58e0a3e5a17b6208f80fceab287ef42f79ca61a3b122b339388016c6500ef5bfaf379c5d49b45a9a10ad1916f47f692fc79365b84e76396f018d2dbb8d583803d077f1aa95a8c95f8ad6ce9c133fad4fc50d1b7744390014dfbded0625511f86da15a1da40ff39fa662c60cbf49b6ca8a482fb65b5dc0e378c72470dab58952b559e73400002b36d0f5b499eba92bb4cd7807b4c2ff4fee1ad038191b9b777580f53d26775a7460ef17b40a527b4b280d91f0cff646d586d176f81bf4dd04211279e817849222ae09f537e149229642b7a5e326ea8d9a9a3581d54cfcb45b8fd1e96ebc11e040796d4e8f77e1b05a74326129f4bf127d1c3213481f5b2e59d39344eb2fbb4b089d1005b7419b39c6694bd9aa1aced7c93346c7745a4032a363f5d56fcbe3596392a024819bd94a2b9629d676052335771a4a4a5990c87b13139f848247d93896c493e5812481b7f6ecf90c288bbd481513fc4699f7801ec57ac16b86e1ed72c8a1c4f0df4a36138c2a22a278a6145338d08a2aebe9a72c2c719ecff65f105ea3886966c040b42e030373174c26db0dab1599bdc22f6f83acdbf82a7b81c27f126cd02423cde2af62378789a1968afefbef94dbea830aaaa46cce4a296fc9ddf68ca5e497197d4606f02953da4b905a84965044eb778ee9ea543a2131a6a6b1f4d64b7ec738da27b9ecbc44fd02b1b49e284ced4f5225eb1eb77c85b38a67d8f1eb77185e5e6017c13557f3655a2dbfa998cf0f74836a33bf4124db2b2ccf38b244ba228915026dd737da86c0be3615a860035d5dab6b39dbfeae2c2c8ea8ce9ca844368a12a759f19476fbdbb02b573c977c0338900d47ea2a54d5393537401d9735bd207db55a6f360cb7aebfcdcc075dc49b11cfa256cb28d887b3aaeef770f1e3bc17e01c2112fa662ed1f9b7f84fa4e244118d0da19215285c6272fcae58324c39d43c20cd84f789dd86705ba8ba44c574c3162293683efc1cfe883d93a6ff6579d130822b199ce574513573012dbc0071549997db7dc6ca836bd9238970ffb91afba19727ff0634767d9a32b57802ceeab2887d8f692473d7a43f21c9dd03cd0f22226ce420b22b62f79606dba579c459e76cc08ef44816c40bba0edf83d82b12304a856cb48f1213526a63786a68b9e2b45d3297ed932f4d3eec3592e5256274403fff40ec31f766a99fdfd396f92bc080bfc659d2b91bef0a9de6b1f804281f4ba9d941c9445e0a3a282dfd6ba04cb94f827f581b456528a0616a300730433418023bbdee84a0b5a57540c8b54ce2be0f668727425382a4774b45e411b5bf1316f5c76f526e6150b5f96c03fe29378ddd8d1b303a5073689d4efb7ab221027b26684b38909368afd845e88753cc5ac7d3ece40dedad91537e1fc51bdccc5bc4042c11ec04ccbc4f3625388c4dae6e9f51214ef24807d45d75e1c0d0fb5c4c25102a9f84487527b02b7f2c1106f8a804066f284b5a01e4b2b516fa1b19c1300036b15e0ac130be1e1a6c2fab469e10f315eca45cac1b8c83194d4a9a2ba06af754e28ec0298a2004727aaf1a34c5cc60203de6d1dd9c900a654ebcd14099da02003058313a526fcfc1afb26e3a08e146611df1c0ac40c6a2bb8200c81d5b8d6f562ffe894009fc996bedbd176f1c14f9df333cff89bda05404f97055a17abe81f0b952a05aa2aefe0c3de7e8eb728c34ca1b75b7389d390199c17a7acbe1ea59f643ee302eea3cb8e4c3ffa43d7ab15ade5d09c22303e03f498e8f0f41f0bd70450824bc6ed247858ef61a026f2110a45a65a9d7fb76be06ee5082f9c68781ca546a8c150f95f11137d4d4a2bb73815733dbd1fa2c24991c6555229378056ceea0fef6cbb6ce66e4bc8897975d82234af184664bd6ea4d286d5bd35270e2dd5ad59d0edbe9cba6958563ee449e3208bd57db6eb5810556a1f6c150cbca901b42066dab6ff86b56927d263cb6d16d0d6b7c25618f4420ead04fb315ba740c091df2a05537d8a6d8b50ad8faf755b21dd1813059e3493a87bd4ab97a55eb11b28ad5ae3aeb4285121405dbf64527eae6dbaa8bbe669ca84a0e464c3549397480db3ad98ed6cea4d6d21372b898c9432823324667aaa8800feb6d4440efa255bb3dc57af875698aec023e35d37fd23721bfb747ba19dc8a9d31bfdbb7bd8d4a248027db4b65a0d32ac888ea3fb4f9775299f79691aa43b199d1896fbe8fecb2aff69bfdc87378b0a8c37ba25004f8d9c7cbc16e3bd217db07000f765f0aeea74cc6f48a0e679ca881fd944875501f5638be3d3b2422f94e9cea1cf739e564662cef50417be9e7a7307959c1f5410a6715fb295b082efd42032e55c8f2eb673931743f780276a76be0757b5591b3b5759327f19e8f569f8704288b952f8642f4f36befa9879b972f11c24b61261b20b59ec3ed2a5e2a485ba0ecbf0957255bc8a84600a936edf36bbc175eea676eb49abc19d5f61c800add42cf59ffb12c2170e05f436415ee491532d54fc33fdcf4513313c185ed783a0efae66c549fd4092c150ce38f00be81714d958473faaf92bded6198401669f063edb5914f44ae3bd6c804f6e579bb80a373f18f9223c6816e9f8e7f63ff6074335d12b518140972c2f2296b486b72d3234bed79274eb9287844dc72a34eae3273a8f8d71414fac229226d90860a8b3a935622944137f54526bd58c1ca48c2c0ea4188147f961988b2bed27b56538899e789deeabb57fde59b0feba647c20f73bed9589491a040e5c34befe6d00c7639c6fe2ec6d481a6cec95ddfec23cceb71a02e2eafedecdd8cc452d788ae35016884089b5274526c1d77d90abb523df4ddcbecfd25a332734ddd8a4f46c695c256749712b98ac5a718f2b03dbc59b0a23bb6439d65ec60e5c253a0594b93cd63c39d51eef3f2082f61a4b856e84a0a88566db893b885bc0bf191df8fbbaf9561d777eaa41a7e4da5cc09898aa6907f4e01ce36c7086e344b62ea6f450a16f650780359196d29c5e4ff8a63920e6b08d0d34c9c53a45c436bc23cd895f8b105df71096af0c6cc2bc55ac13c84727006e2770f1e323f955d90ee9988f67bf212d1641ca7e4ce7710e7096aa3d75ca1714c14bca1aa3297f768be85c8114021635d8d80b0063d8559ae4be39e267e627cd75a315254259da8482226f0167c8e86bafbbc235d7d2d59a8e768d947bec90afceefc1208973e60aa499dea806aa991431cfee21783b7e764e83fbe9751eac42039fb16a495f0abcc03843e791c58ce0638c3364384583acffda4eb2530ccdfdcd908b097064b9e5c9c14956d30a117f10a2f08de1ae75cf45e8b34ed5b6c4cfc35bec452bba5c7ff6171d94bb8bbabc556cea318cf9b2b473e285b573ebbd9b9a14af70b767860e0005c5dc933012ca401a07bae6bf3d0990c3defaa9edf4ecac5e542f2a08d7bf80d916af068686f8027a1a5b34faee7cf1b7a17e8517e9f53127500c402df7b9a0600ba1d37c67bca14e51f1a6c872616b6d5f68b6c2f764505f084d76bb310d0c7f4ee85f7514bf9153d51e8a2b27f4aa4d9b9659dbf7dde11e8bf72250ace9438b1fdf6f095e85e2fa37f122ed99801a16eb93b7cf5fae3b306ef8a0ee8cebc8334cf852d6541eaf19e03a529947c13f47b903e61c57090899f62ecc7fbff88dfd5a87e66c0598535f7da2c6d2f30e232a61d79e8dab79361463174de8556e0af49aa4807d4ae29ce0891daaa9a9f75675581b6d32e794b790a22d59a5427a4bed281c49c7eb739db3934ca602f14401b89ab0ec4bdfa2e21d2e86b1af9b5e4da8e76e1f968094586e0b58d9a67c9cb2f2be10bdf5b1932f5fc7bb94dd26624a1b226edf80fbe8a5ab9de2a47a896a2044943a402420116997f74fb56747a1403bbd8a942ceb12b12fc05a2d5d5c752f6a38b50000787b06df8664e79cbf70be8056f4ac3b0e017661da1ab06b502c53acf7cf59780c483e2b23fa121b33769cfb5d245816a406db7a192b51b97976774b2733c12a4a503790e7f32756c7692f4976b9a276921841e83549d27745fb983fb102542997133ca79ab2df3b4dbfed02eaab6aa5bfdbcaba031bfce81e276049fec0385698000ce765e1b36fe4e946be24d4effe3130823d9a356700f63929be3cfb18199d7ea9c2bebf610912f38ed75dbdad60efd9006aae3fb408fcebb17f6000f4f53fcd0273dd63d48badd56730a726ec5a95657449af2e5d4aa7f7d1860300661000a61eab5691669abe99b5435b1930fa0ba526812fd8af75481fe6d48f7c8cb64e7dc95e450ffabc317bd253b12c80d5fb682d046fbf4803a5c78ca8050d3131292b4792ae125e464ab6e3f67534f7c18b358b6e46e52dc001bd7cd902b79370e0348d1c45a02896b66decf194fcfaa1d8c239408bd7035ac98b0cde669c51c0e76db3ca153a00f889fb92332b39dd4ae71504022f6c60b3541a2ec0d1e7397e7815d4fd6143cd2db7941a3e4fd144a74d9008c8a90f00e00cca95ca270deba6405180c0a14890510196c281bfcbf5f11da8f4ea3875c5b6ece015397ee325bdd4e14230cdab8df90f517b0d4d1d3e1b1a46aa31e1417cbb97fdaf18ca7b532bf674f9da509edf93b824b74a853e11c84ee1ce8bbbad5f660b27f12cde400c005a1b5a85077b854d3927dff4665cd0145bac591d9ba93aa3424d61229fd83b333d1d2d6eeb904c2a3c2c612160de9f8d76539679c21eef5c13a6d756158fb3ea43743a98e2b4ad40152bd2b3aa6f48aefabcca46c9ba07d7c37930ca71ef59487a5b44ced40cdbea49b49c633b77a63f0cd2449adbdfad89b012c236dd975551b50976df1ef2d6d38861c768e5c73850fa508e9362aacff6cd69432c33b925fb2b260c8f9a6982fed661730d531d11783db3339d8bcc8fdecea9c9db22c9edbcc3002866218722a69d58a16e421b31284ae70e3cc23839607b97bba9df229e30584f6e82c97caf97b2a72745ffe7a57dd496758790651f22ee1c5262ff70d9abb923b08959c2bdeed34b5ee87151f684181ffd5abd9ecd393f5f3dbd660f2a6d3095a684a0cce149212f2de9528c589976b72062e0da2ae8716ac6cebc183abe011618538c0b912409eeea7bf2ea9aa6c2f9360a8ec55a6c0b6fe2f241b547b4fec247e2659501366dab5039b98a066558287bedaf084774220c584a3e17640f10c03941949699cd6b63b809818859a55320630d6f4ba9a0233c8994e6bf1bc7e317e18c1a54c78a2f9c4629d02761c6f8dabce3bfd7420d4bafa2fd98b087a587307e3a327fe0afefbb8ee2d876440d8ad0f297e020444311e7b832f1bcf4d24c875a173d5dff7fc94bde203e552b48ea93e7616b1a23d868607db607a47ed64378373f10581cdd2123e75a2f17e1a25f0ca321e5e905d8be435144d889f8ac2e06763d4acde3611168d40c329a634184d0d5441f73014272e220cf1f87b6f3209dd447cc71721938a8da28d1d808724bd06d547c653379f63552da89310bcaace41504954edf0cd5808e808a6857e401754dc73bd458a189353ded55b75078fc24cc6969e95672a47bc3f921cd7cec0348e10ac3dc9e9b68b68f9f8cf268a411173b6131bd6acbe7d37458d12670161f200674ed1219564e0743e8a619edf3329735160ec06901ac7504d9ca97127368667f2881275f9ef9253eb8d8228c92c2fd594bb97f7fdf4c8f215d7b165f971e3d0d1f425d14415288ff84259d5573307150333db967e3a54f34657c883920592a4aa57708a5181c33d107d8def125ba6a97515381ba8ea7bedecec44d71771a7b7975dd9ce4d5ce6a8662926d16be7128913e5e5d5d8830e3883134b6a0711a9bdf6ef6cd7c7bb1e3a3e2425bafc8d3b88fb7947514218878069fd65fb34eef1439d49111990928d0c5214e34ad1a2f1b940f108c6344fd11751ad33cf73679de1701c4cad24c32c3c272517fa902900db0fc75d968b008acd1c83ac339396addeda54e534e7f9504936522962895a9ba9139ddf22de9c45b15bf5a97a8bcd9bbc42bc17961e587bb7c5d9afc811e8a775a8f3c7d4be5a0e7bae370e559b8a50b24678cc9fdf3f2b905ea7dbac6fd71f59341cae949c5a89db95272312ca72c007afc5efeace2d4d21503bf85257821665fb7ba2a59e8fcf28927c966809887e7d5d72c239b245d45a84ea4524f4ebfb695233a54f6f6c5dae003345b8c6035a87762e98b9a37f8782b149d6b0658f763a96c7a8cfdb64831012bbeaceb822f6413fa2c940f63e1319ca2e66384a7de0c513ea3385be854201a74b67088b5ebe2d6a62c27aeb2fe0aa8b3056f1b81670691d49adb3ae39b092953db330a692da9cb3edddf1710b956d34f208a68a69784c553f4715385c7c72508d276c3c3d5b5516694cdf3e5307239a6942b7d2c93bffdcac84cde3bdc1c0ed455922ddf56db5e8507807109d4ec5142c715659bd7fa9e528c129d640dadd906092e5894475c49a3a1c170c103766972cdab59b8dd218f36c018fd8feae01c59e979af5a21ca015a947ee17a2b97f1c6194734cfbe132c98ad04c39e225ec12eda77838b800b12f67ad56f266e767942b6f621eab75e12da3e521f8c0193834f289b2156af7ccc473c820e276075c268adaa541fbe6b1470503966aa74f519a911c78bc592f04994ce313d72f4516010c88aa70c1d51d7d0b4f2e2d47c2cc802e21044b9546324ec160ef2595cb37d9f62fff24b2cf57dbd5d319e5c42e2880d5b70d8b17e1288dbc11a3050fae4a5e586574c7a8a02e75d322a4266693941414101d18c9c2d8262209d1b82e2d30f35384e40eb34fe76913358289a2f304c6fdc671a4a504b4448f1fd29942c148e92b8318deeb767fabd60822113e575ee664ff09a1873aed8f7a495793cfb7b5a504015f3a9074c641e7371b250d867d751d90e4a22a8ac17fced3d50affc4998b97bb644acb07c55a4dade3bdcb89f6f82d6c24c305d68858b3dce88e1c5e6fbbaa4b78e68571619e67254f32655dad584b5a8ea5ffaaf8321e09292366e8fadfeb16e310bfffe0a06c31ab1c80f1a99d8945811fb2c426289e16dd053faca16150492e943a43c83e6b3069531dd498ef15dc612fb2051b88f7da83afc5764a3378f017c826ab55382386c5e477c8c8d34ff026cc9e02cff10f2a23bdbb41b2ea8367ec4c6794df0c934fad90c07bdd399b9be68225e9e18765b6a18f8c4de0767e791f4b0ec314a4e7db00ac64588f1350c2fed0a794fe8d988277d5ef8d4c35abae00f459017d39a7b0c3467752717f3d090f771492d139ac83743c5d8ace951e06511667472b6f2ab2b49d549684ff3724ee08c6d83c221330bf3050de85a124712e8d11e80e59e7a2ba4d60c213ef7fb6b97416915a8b8c3aea48c6aae3ada79a380fa4505b1a58e9547222402b88c7c8dd09f2837e889308c5c4b2a683eeba8cdb9c0b6a2c45bc0159cd41370156c538db4935d8e1a00c4293839381baa681b9b6b5d5a452b811ea05879df0db296216587451eaf162e9e16a8fa8d273280f282bf9e810f00ad9905977161dec3f103ef789892ceec8c453e1398ff487485f1e1b56fa1f4199272288f9984956b9f6b33e56a88544bf87093284d9f7be8ebdfbc054e736da7f0770d3b1a3ac5647cf5e39246ca6b8421f6a0868fbb3949fbeb7daa963d8d329aea4a1a92b3ffa437d8561007321f68d161f6dfe0d19c46b783e6c367dde74554ef3466be58678c85a59de5f59a8b6153d75ad994a1a24c4f5159937807e516d34ea81fe5ceb642bf258ebb872bf3092b655add9262d1950e9a445396367f41bbe919ac90a6d5f1c84aaefef8301e1e3e5277b78ec155bb9a4ede6e995e1cad2842fee4a01f91827dd875e37c5d37a3990d15cd64e2fa78e063917dd0ce48e7875fc4271c15cc90a85d8956d95ee511ed3329b16535b6df9e89c7df515e26be18233fa863091752014b93de171f920840fc7964ed4455c37bc5982303b58c96b9ea7d446f76387856b9fb468c0d2d3c95dd96bc688c8b66ab62a09ed42e8793c82edbf4a18ba4362891f1ed91026933e1a6c8cedf1ea2ff2d3576a20f87dadca8b45de4b29c812d39caca1a2498e207bcd39ebe0be91b8a175cabbe3b9b1ca9cc2eab3588d122c15eeb2b8680b21cea785052f59742d3212491166ef8657026f2bb2db3331cb397a6d16e696620137c008471ce23ced65a437336762b4e795389f5bcb26461e5c940624567f0f880eaa53082ff6309b4477d655ddd2c5657e83a0761700d6706f012c7365f310a6b0a6696936a106d69ae18801e22b5642bdc9ed3ec44ba4f8e858fd298fdaa07693c58e5d49cbfe4b4950f42906d3f5d7be263ff12e68abd5ac9e98fec24d75cc8d570b09d5fbf7aa3b51eae5614cd4b8b1e15ae4964bc5c9f98e531d2309a12aef4896eb7baccab4c08e41f8ec3bab0428999e00f5c5f967fcc00bb4f7531d512d8bffb92112b0c0cdd010647597ad419ce1321a1a7a9f6844018121b455029cfc01b9c226d38ddef0b1f79ac3bb3e48c14aa6e4cb5886966711b1399882844005618ebbf847a7abe7b569908ec66ccf33a33b939a02a35b52798aaf087735c3e26b79944c7e73d7813647d95ee1a82d241dab60a47141ac84bd8d694f07ff0398404921988d663226644e8c128a5738b53629a7d33382423c9a759018acfe04c0828c411e8606a494fe23706fe92516f1dc3810fb393d02d88274d6184b82813c5ea1d1838e53b46b5c9e943420bcdf2683d65f6feec81555bc89a1a710d1bf6dc527edab3c21a34cc92569fb438f373721a5f55479c68f777f2ecb4dc6c78c393ae969c9784118eafe604a7811402ab4d254a23038beac454e97d3ea03a7f96bc2382becf4e8af9981e1cbabbf1f2ff69db1bbec9da874cbd9a8148b6136705d6f698ad81d642be540bdf4e4b6649fc29b9186e2d4eee688c28005cf56fdb903f8c52ebc10096e5abec059cc47f71b3bb44b820b4b6504af2688038e19dc8644c985993046a66ddd07d4ec4f83151659e7b97dba15809283a853a42ec0f7e0dd6b4bf6c472338bdf336f5f9966eaa2745b41f47cda1c17ba263f1e1f24b0fde3816c10c8822548e963e52309e741c413a2d1918e6f8e31399a350f98b5fd46c38155546ba6eb57b21d42c398705dfee7a19943169d028afdb6ae10ae5bd6712b7924aeabfe34d1d189cab7ab4cf256d011f62ec43985fadcc16a995e0acb84e70b3ac8ff52f958c011873e62d4b29fef65d502e8e19b1e6cdbc81298ab284e5bf42fd919a75adcefd79c9a2bc66512df3444e82a81e3193c764cc9c310287e7cb7b8ef5184884969d7efe2d983090d0b4b0f47f0dcf0f5853b830808677005b1af9d1f954c92771a812de1aaeaab05e495f51bce83bf43fda6868be33ad1ba508f05f137c84753ab260b706d1840e4b1c2887bdababbe7341de2e3460c9ace4ace4a161f88991e71d11375134aff8b981eea11bf7d3eca9d7f528fbdbd351ec5fb9cac076e3a9bb25c36bd50066a9e56302b4da2687814dd58ae806c129c0183063ce02ea3b1a84f920ada1aa0f1deef0bd9de723887bfc123239b4425757ed3aa57d2bc6296a4f10ca349c2024ea7ef12b4f500b7c4a5cdc8997b5a843caf992fb3b4704bb4d8fde974c06a5972a01b35c006499068667e0e0f10770ec9cc2bf22057c95090f93c597496306be62468a0d0d6f6cd22f23a4bbe915ff6f5a24ac7f8c33533554d04fbdff9be02bdd5420cd4224299523698bf5047335f045bedbc9d7286a0c5947d68947b763677cffbe7a0febe347b0ebd01727220e80381cf7dc8826e6780f6577f60680027c511fe2e563a1568b1fedd9b91171b707a99a000e4a930291d6e24e9782d5a3e04c365fbd472525b345e9840fa1b44a6fe1a603f404953164376235773004b20d2f58f2587bc958069d2f7141a1cf08e86206a1349de24aec899739cf66723e1a6a3bc7f59cd636b066c3a1be540fa02047d0d3aa5b7d6fd372804b2c3eb11072397925d672b1261084d8b33fcf118f9531211b9f91297f625983d6d268450fee3f80459f8b5e5e09114fb9a924baca04e27e0f59b6a98c531d0c3e0860a0ccd69bb9f31d5678c9ef182232d08ad0bdaa11150ef23eb2f8a828b3ebc0ce8c04f23453a63e0f9a0149e4c2222e9e7aa6f53e96d27d733209c1304fdfaf173f4fdefafd81082a0317ce8757ce10fdc2010125345ba28ab03f5fba8c1a041ec86a3ee82841d03cc5e1a6bc568ba020a1de85a841657624c940f7faccbc13933eabb2fc964ab6414a69c4fe465061fbfbd775d02091b525152c0c8e200074642613b02b520341722d8e233795b4c6008bb066531832d6f5764dc479a4c6365a1339386b5da9683d3babf4d34a7a71d33e6ed2f483ba1fa205adbbbf994dfeebfc08d466da93a80e84c1b170fc702de95f4ed845db09cd4e912bc90c7a44be5363e2103887f5de8430c789eccd4a9010dd4c9fe96592c85ef54065bfa9f203356d2589d8ef16ca196680336dcc13b90663f00348e2605b158c9c8dd8b72ed98f9c7e93239be52155e9f0d16da88854de18542cedd6db86698d50ade7f25d4338b56a441b50eb73753226ed8a640bab453ba85122b9c439c93cbe6a24e90f1c312728079d1b35f2e743dafc92b518005755e2be5751f69cb8073f36a6e3cc6c8072fd3438a72c6d1ad034f8744d8236a9353d23aae273c7b1aa776ab3fd0d18bad7f0ef750a9d865f71d25df46f91156f3883988377086fd5861dfff69cd67365b46485721608569679008d4b901db02c7fbe495c576f61da51cc09a711a41de5a819f36e06c5c9362460c4e7a30f389e1e0903678158525685e2e850af4c2a44a66ba1087a1b27d330d7e371f77d2cd10b4078257f681adcf4c8570eb2246e5ec8631831045fb220f85ae9d75fc4a5a0e6ea5efa9f21cee47cc3124fcecfd897def3360dcad8c13508a13af28e314275d487a95797cc69ea152d6f537a59f9b3b5d6a7e42dc6c629a0e272715462761a4394f5b091d3657e964b708f197fbf656d0b8e75afb41968792009efe0e565d61d9db6ca3bb1f5c77a55d47955024174792ed45293ade6c5682985d85457b9fccc1dc4328a19cd7365265ef63c0af6ab1f89a166e826a87dad8eb165d3c236759cfab6e1f123d334d3f16770e560d4c6ea33f774c1b9d9658e8bb443bd5d0a33c1a83d77aefb5d199cc76b1a6f81ff5874d7de57515bb6e5c27eff02bd1bacda0917325d4cbc0736f96d079e9581561c5366a351e88b79e0fadcdfbbc437fd3351b89bc824b9d72a8022fca78c0973cbc98d330f4c3a26259050b878750cce33e795f79255ea332bd8f80368f68d73372c5bb56d462d5b66fc646c5263a34fbc56e2613e048248ae03daacf7504a4f3d934522dacaf5f59853a5f9aec82ff4606a3743234f7582cd59c2ab84ae0c58dbea03700c144c38d3535159d6a6f416f9f067334782da91077d02020eeb1472556f90646605d4e34a341fccd81148c3a0d2186bf043bbb6063748c5550baee66987cd796e7a6801daebccf6bbb3b673b7259add2f3e83898541179077f631858241b7ff815337f417dbc7ec41fb5b9410a9505f417fed1b5781dcc1f59aed0f29317e88356de6f04c4e0ff4d6a3286f8cc4648ef86ba46be8247a19b80fc9d2c0b9e5ba5d2ef806626abeeca2b7c5746fe93fde3e47db58cb01ab4bc155a4a750324ac1151ec9b2f1c67734e2d0dfde2f5ede84ac1cfe3ffc6eb0d37b64545484246a66ff7e723e74e5b7672844b9243ac4e3e887d0bb45fc57a5b03b21d35c4b4072837097d565a26d074b25572831ec214924535de7204433d56359019b055672dd4de1e428a8e3c7368072114cc82909e30a29ee489db388feddda4975b7a5adbac50c4bcbce0fb0afc69121634a7bc0f91a8d241e5ebf53ea6dadc9e87d1a335379ffe3658547635904cae6ccb8b7d1e578d0c25b50aa44db04acd02391f4eb712839f817b6f146ba87267d3b8d8bd6da7057dd62f22e769153efc40e0104023505484c320e149700aa4514aef93b7edd57801209696d097c77c952de28280b18d2dd98ea511a8df7a1de0247a7e28fc708244cd6f2b79c9ca1dad5f65aa931fa76541fd89d29c292a92c96807b65ebf733503229285213412a631f4031ba79c3429a1d68c1b5174a89c1637efada83142f9d9642386b1e8c83d28c75b186ab74d4966c8cca4181f4736b04b757bb4f7547ad91e149d0cb3b870542733e2b7daa66ef6a885eef9be1c9a8a9bf529eb8f28138ef8136b70cacdf712a2e2a0e10628bbfe603c69e753bdd1eb622212b0ceac53a0315458b1b0b557f9f3f7defddfb82e9446a0bd437bcf6d70fc53caab1b44296b5dd24067549ed8e2eb10c9870565adc112d7d3bee4f895ac117702fa05f6f11eb233ede0e917baf5cc1a8ea720b118c11033c769a3ac327f9db316773b236910bcfacb53dc1b526e05faef4c9618de6218c0f3c64840053f2ef07d10b6d4549235111baf778a704102f16b1a8eb6a6a4df6f10245eddd7a2e758a55916a52f38c64d722ff1edfaef65191ae27abfd0da57e99a0f463f09750271f16f581a266fb66b8426b4c76a38e31da223fcbb0a39bfadd50af42edf5aa9a98636992eb55fa1f78ce05a5b4c6e22891d0177be0dfc5a46f95462e6e45838f28ca671b844caa7a28ab6404610543542be0410680efc7f3e5587c79b19c1a58138d6d6f871b8ffdfe05d39f05e915bd9d4a617ad27c14c51122a964c9c668ed57122b2773bcad261ca3cc3ff95b85dcde20a9ce2dc389c92c147e937acab45f642029c033e7bfd7b469fc1574c469b036cf2b7e19aba47dc9911516a99d51301e234ca3498047f7f71cd75566362bec2b70e26b0beaf4a36c525482c5db9becd4c7bf9263e29e59b4dcd5e47ab1e8154cc4e0ecc2e444bbff1699cee779282ff148fb21a33a45723bc721a6002989000fdc4ae1646a8783af70e6edd5565c307da68678fb17e9794ff69102da173bd3d4d12cde83fddb05a65942f38e1d6929f8545635cda330c06f088fc1e73e5c0d220204acbd0de33f8cb9dd4ca73716cc14036f22279a0f77f4f45e9d4aff4cbc47d7efd8a3b096240f14813caea157a5f6e939699a578e4dcde4674229d94422f6b6c22a90adf4e335530fc451bd79b650cdae4db5534cc946efae97ac2954bef1e22385dd0a3883c3d68df8f4734d7b077b70ce59d1128db9cb5c87148122a7aa543fcf39eed340183c3d38ad2e59d0d42e4a80f6d83c5431ad94d99144a0a6f8c793b5a66cb1eaad2c9e5911d17d2f2ea092103a9027bc47b06c8ea2756421fde5131977388fb0c66d7016885eab1bc85768c8c16d8b6e6c2d580d219023c537d58ae2fc6d71ca2db19e1e1e07c9529deafc19abad575c125a7586034685f7d975e70abc5bdc197cbb2d678ccab9fac7ac4f4f4b2c087ce80241a10e511a30a371917d6d4590f6295c476cb6ca7db07e3d5e3ca7ef3bfae2e31b089849db7cbe13fb33bc4f14f2f70f1335c13203f1f3005b035d81771dd8ccd65742e56546dd5d49e34fd2a512b0a433c3f399b42b6f6e94b4f4faf178a1ae1dfe5c2c7dd9978324199587ccf8668093cf7be546ee2cd503aa19bf4353ba3cbeed2bddf1d7de896f0e4cbba00f699a752b2a85877350626a35d98a27132b57a913364d65134ae6172e35aec7fcc134295c5e6ff64df6a57927ed87c88abcc6bd7a293d259db41f6a97f526dbd8ec971b5eaf8f64129110087850ab882f4fc009a909e82899f9370a23ee4abafb60bb6c3c14d8892761752579d1db586dcede95bc1e637629efa9c173846f67901dd6f9b58cf4590e0aa085e4069617eb1586e80fd1ee7bb7813058ca909150f0e8535b4d70a34ebecabdf40e8c9e3b44819443ab43f1868ce7818edc58183161c844dddf323048fec4bb9836d2ffe58d376b2c38b7fbe072d0c07d26321d524056e3ae1e75046dec771f20bbf87c2ad6d8b58de46d71276bb8b0088a180a58bc18daa015ee7eb21a2b456cad3c52a9cdb03c43ec1cba6277319af0b882d3fe3f82fe2339617544e24dddfbc44f87f02881c6b7441c75eb7d42868683b4d395007c997786989467a78212337e9b0c89d9d81aa7c92713f6eb19e6d6c63782f5a34d503b5fe998e72e2c0d8d063e897e9836e09036f604d1ca7708dbda7654169c499257fc344853cf567e11545cc49ca38a0d3368a3ba02e8b66046616391ad65700dc6d266db6042a22a2f0ca9288015cb89222668164262bd0743f48b1602236beec40a8aee313e3009e376d9b29a3b39193a4e584cd938b8773fda7efbfba1c3716effc9c8336bcc195d307fdd29b40d3a5b25166fa205a7fdd3225babd7882597479b419af6999b07b90ea6f28b5475b65f647ba7aee530a00620b59cfd328dc8967c48011293c14740fee641ed7a507f5974ad447c59d859598feaf11fa439dc050cbc97debc548220856711a7340c9cb24ca40c18c09c44f8e006a785ea9ab3b4dfeb84d92a583b1272111ffeb8350c1decb331d05cbc2774f339c244052582f3337f4c01566fbe42e818476342ea13eaf33d280fd2bbb80a214d1d77644967c247ad7d8a01651fc265a1b8837ee2fd51421786717007713bd58c5468999f12d78b66dc24edb93b717e11fd58088aee3a88e94b7310a97c243b50a36586282a0995118dbd043ef1d1c41ea7a7085a29529875b081bf557a37160a224af00a99b33b4dd987ce5cd06a2104d1f67270abd0318212630cbec1527e656fdf3cf85d0ece5f57abfd41477c4f1e65a9b9906eb89299bfe7d4f2a716edd7509eab7bdb56ab3a6790da66ca9ed5f89728887c1b38b14516f6b98c30e6437bdc06b2faab220d461e59c43743b19f98a890905f98570c91711b6fcec92233260582a1ca04b402d2dc31efd6745ba0d12ec37edc8a37390df2dca3a78a905a3c80ba254f46b26e3cebc30e2e5682c518c4fe2dcb38389d23e722c8ae351e88fdbe9e3ba099e51cd21732356a4bd5ff3f7348ff8f24efe5e440536a7cd53c913278cf767f1830c16fa2b06a8fd13ef194ffa07ec6e4d0fdb0009188e963fc2fbe686f02a5f63780af982b3b561cb63aa92243961d5ad9ff3715fa1d6fb3ee26b5a5624cee10038a5484ac56d79320b3888bb86a8a30d0f18a845c0f4850459b032c4ff29279fc440d77486e682cf7faa541c313e8a36f6846a47fb2f49bce0546a1e88805cec954338abb1b2ac87de042166e8e3a74b23261ec204f93d9f142358feb5dca0268b8375aef0335d51aeb697abac8e2fd8e4e19147db0f42e713ff8b771b1aced0f8c11866b90e895aee53ca63e387bec78d55d3231dfc251bf509f0684e073a65d6bc3ad6719f086ae26e9411ca671a1a1419d0f8269eaff3228a54fe04c6f337005fd0889b83afefa1c46c1beb97b9caad8171c9a9603500587931f045c1d1be735c6eea0f24c82d966360f9ae5ead49ebffb222f9d0ce45ce75c51926b56259258d78254b17d5e6a87b6dddf082f228651000ddd2e4dfd9a1a8fc7d7d1724ae49f7b38d7a0661bd414f833bedb803420e95f88981b366f9e1e97da3c50d5510a80c240dde060661c635470a508f0d6f323b708c6789499b7a8ed37a0d2807a2a4e0c02757bf25c58f7c43393181cf508fcb028b4bd7b09eb41d478ff360f4411aeff332388318c03203cb6804d5249e73ade11fa1097f3979dd1e99422bb5cb02a050a775651de7b28f97a724938ef9fbfbba71c58df80d04c48cbad49ade4755fc668411c82e323ba9eb1c6fb720e0a9f530466b97d9d657f59c9766f6ce24bc0970ce0474fb0a86fe9600b6bf9739e1497b3d4827aa153b9e0db38f979fc2e80ace4c756825f38d0b66a1bfc0d03eb30bc8b07bc3c8bcaa4b43318c43e588e36258bdc6a80848efce51158a274b664be7bca5c16508676538a80002c6345f6c24cae044c0fa254bfdf68d7be177842407ade32f4184c7c43912062f1a3c6782f93f88c15a70a67bdb17e3d6f04fd092444816f88a098454776d89633e555c3cd091689a57f0ca20a51cdf8eec09012fda02dcbbe62908811581073a2eb8045ab1262fb66d4196eb906822fd284cda00e335b87cb4f37dc58b591c9f7eef2e2e04451440460e34630aee2b3e194a4754a9ec39cf41532afdd99d925cc92a7605fd3c9ec9209ae5a117c6bd3005f164fb91677ecc364bfca86732b898dedc26c582bbf77901e80924efea989f0eb6786b3dba8830eb7ff597c29882a406b49bc0588abfd16122d226d8349dfcdab931b858300e37bd5249045d12e0fde9cc8d6cd201ea76b1b3dc55ba4f17d1afdb3da14f3cd91db86e8e17f20eee1a02ef07f49304e1dc90e1821f424a8810db89e94c9ab560bf48c1f7963f5a84b90389d9fdaebe3c68a2c59ff093b06eecf3ce20c3f212b67b60297ac3521213e95f1e2f9d1e8987aae007a3c35eb5c9589757bb25e3b1889f6093e973e173dc7702a754336eb14a38d0d4d840eb225b3dac1d4986ad3b4d409f23d7d29324f831845c8c54402330db4b1d4116fc0faa7dc2054b8af6a94b3afcbf9e85e3fc45a71da2c57d769d0baf102fb19d2ea5731c05a0f3ed8c1bf8f9169cb57fed532107448491a8b8bb9817fb55b1d534b579b74027f80ce611a3dd20a3cf9d3f32c9ea042479b45befe51615fa77d13bdb7e6f59d06add14baaa9fefe3e95b44af9c9f424cf57dc5a1916ae721c299d9073fd960d6590c3ccdf224759e991407d14b54ee0b0cb11b309a9c4b8afa0cdbe2d01ae2922e7f9e1e938465356cbe4fb790e05d36b43259ff5a33b9539f913092e3b48e59dca7aa4abcc369915c3ae8f74188ddd1fae4225359fafaaadf1c653f0d07541b02e4428a7c9fd5d68cca2f4f16373c0da9eeb042f43e31ce9eae23e44750879da63fd867b4bf0ba93c60cebfb40ab732ee8345337f4d1810b95554c930fecbf971029c065b870b7085d097651c572011dab46f98bdeeba205d50a4ee8093124a3a39937681d2240f124dd8b4b7f96e8c77836a26a1176a3beb6e6af94766a7035b98268476cabaaada97acd03444b9d0ae28f975c9d0312f884529020c7cc1acdb56e4d253be814ee7b2e7cdf8407f059f5f4de11027a9f41399cbafaa4211bb2c4a42ad17a5092115ca177f810fc3971297fd003e85dab4090b105872d1a0d3300c4df95e6c8a019008e5c5c054ab16a84441999f630a200af454414d4a8555fe5ba8fe5d5fddf26adb39db359ce311bd5644aa18ac0bbe6eabe10f8f94728df0c2bebea46c47a9558575c8a0dca2ba34c2edf01a42a22acdd9d0b555e5d54079d1cee60af3f54fd1f79a58926eaccce2a957692efe156e7e504f0e26acd150b88ec52901f7e9ad9e65049f475e0086a9c21ab4a34de06c39b7a1844ca3eb133081899fd2e0b6d89e0f3d1f8207ad820f39070bd63aef8996917bcad5016206d9ee2ebf9eee94cbe9be15fa80ff7a53c116bc4273eae33e53f2ba531e7a8f80a66e33e0993fd10a0d9ff06934b4753e37790fc7a4450ddae7578c5004e3a40481c1913e3c212d725cd052bfa6bb9362a78cf071ba74c620478ad73fdcbefbde584c57db1ba940da75faf5d9435bc5413ae50c4a8e2c8109b0b992ef13b6a62e931dd4495332d4e5ab5f80717cead324bde332dd5363c7c584571ddc2b3b1e1704d74f34ab1b7b2d2c8d958202dba38165a943483626289129586fbcb43eb88fd9b38b7981acb22a9892975918535ef8768af53ddb786f489f786b5ccaff7f8f9c85c0ddac234835c91b2abd1a97582e8c2e4bd6b35873dc1f2ce26fdff7fad555aaeeca819341157b7d465d1e7023a8f404ccafd6ecc2296c8270a03b04519febbf9689f2fbd8faa1dbd83334d54acef5bcd7dc884306ec601525e3053c5820b110c6e9a89ede73b894356de29d4ca3835fd6d904e9618937b0e4a1427edfe784b04364c6a5a09bd678b88e0cedd435bc622519a7008c841db3389876962cc37dd43a8d2b940cb4e0a1251b48a49aee75a589942a8acb93be7587a5f3f95b41fa3f21d8adefa8601fa9c872227c6b61e77029b577569a99de842d9d74416613e4667519ce86d10ccbaaff15c6fd7e3075eddd8e41852dbd486b34c345183c9374511e1c80066cfceab0c6bdb72725acc726dc10fb90cbdf5751043f6552ab13dfba5a850bc7c0899d728a04b719d1d9115a09fec22560bbe47caa7b366edb80b5082ad4ee9b33f9f4f8eb67a1cfef3bc31107ab62d92071873a7a7e06b6412f313af45624e88372f4d516913213ab52f22375b714f17bffe5c5048f9fba88d85ab957f8d1bf0770caa729c8e117bcae41a38343f3a14a415b8ec55ac4d041c6774c3937bc462fbaa72dc8e30e3488cef2f074dd1c584617237a0dfdc9f8ea91082030b41991913d84f53e2961d183ddfaa82b4e2ff8f932eb8e98dfb571b2308c7b90d94ae24489543c5914d67582bc30294c01eb2efd7376fef65a8a3b418efbdc473018adb0cd50bfd62ec6c1c81581c098e74b1848da80c485da712fca89a448c8723953032564666dad3f81c8a43cb8fd103cfb90d8dabd00135fd0782044eabb3922d3f756c6d27f9f2adcab1e2b289348c74568c4f6bee6864f1ac97ca56aef2a22bbe4423a0021694d3595736999a3cda88911a8443bfbaba976697d14732b89535182054d85e96ff9ad4105465577c10d4100f9a5d81ba5915d45a6591812a21c7d5eed3acc42c33f6e47240e530f05c4d4d6f09f044c70d3764832b34966a28b8a18cc917e23ddf4826b543e76752e718cd7eeefbef5593fb7598009e8887e2ba09ca6ea1065452a4c7d7585da673b7c840394d50131c28dc1b95260aa0efaa3da6f6a3f1bc67b2507afde489106f895c07553723f04cda3dfbb10ec03b1ea68bd1a2905e1d4a946404c213dcf8419236935b428f7d84fde30a5b992a28c30f1cf56d3b41ad9b7f5007bb5dccc3387c04fd39e4387d478904264f75dcf2c97061450d715767d0d594bf0cd46c48c28473e2ad0a280b33a496bb94880cf5ef5c6317a43fd77e57fab3c416a5636d019fdeae62b437e0c07d8cca614ca134cac9999204efe10b1455ee3d77d6e1557f20163b447cc55ad9e28d7affc9c70bba8105a987a1682b95ae37c77c63959b00f04a6b05fcf7203c74808202edebbf9d78b1705f266f986a2c895d283528a00e865a8fd0a8d0ac5a25d412965350523564f64c777c6dcf961bf3d3fc9be609b44a6a2441f283625aef09a27ed2c1cf4daea12449c3a2948e104961c6b67f99abaed8c22e7e6817813b92f30098e44add1ac8217d0d0888bf1c67f9aa69493145ec55ad5b84aed344879791c82e39f065f39b1c8ff47fd03e86cba2c918b52fd0a23eeb8e79b527bd6ced12d09a1fd1b21490f17bac2aad45d494d573dd9d02c9d1616328ca5645dda4c07835b58e3b1a9546f9806ddc8dcacea5b7c9951138d4e27ef65937508dd7b069c50a06957170fa98c9e3cda53cfeac9550dd66602431e9a865ef9d50bdcb10f8e1155df8d75ba4e7f2d159617b865fdd3f280772e29204f9f37a05fd0ff0aa2d3d5b0b16545d16c34aaa3ead7d07048b81b1880ec89ffa044ddef20556da8cc92aa897808d1f692ea2fe02a58d523e9daefdcd84418a52a60f239479f47e28436a53747490d5ff592911bc75c499bf994d3280f53d130133e5ac6c36566c7106e317172f9b3cad701d1365dfab20f275f8a0147630e510ac9384cd82b4ff3912c99371a2ea23f091a8ebbe6ebe71f86fa8d65e89e2e618f1bd43063017d64fe8d524519176bcba73b5892de6605e6c40b151820e367dfcb98cbdb3f8f468c5ef2bd8437df873ee5fe861c85ee6511647b164f43da0e967b1ef4b96ab8fd816f820bdbadedb23ffc7985efe9a423a8eb31da11351ba6bd7fde0f024a01a7bd41d1fd2fc6529ebe8dec4d84ffc451e6306cd21973ade0f7da028b3a0ab8251f354172764c512882b6401512bfbad3fb8f265f6d2502e226c4e203f97a330f33ec35b6169da728e1ec1a9091e5fb18d759d469552b21413adaf353aec4cfc3f5982f67e3c63d392d1ac817a8c80015cd79e773586741c40056c5c18e792f65749d2fb79a6c548d619e4d0c936efb875b41a6845ef2b03960cd641c159e376a71dd5aed9ecea88f4aa12b4d7c43241eff4d7eb62665dbdace8258ac00ce98a494e32ff2aaa28c7aea0a15fc1b254f307a3acd63f45d9b154e04f90bf320d1150562eaff652879297726440ac125a43ed217a487fd70a252ecb9d9d48ac893b4cec767cdd07d8bdde99c6a6699a60879445f20a6037f0db734deb9ffb968f4d78f36f9658d01be9638b127c5dacadd85144c931c0756d63815cf4a9a954c928bf0f07c398d7f7d0fce202d1d01363068bfd5f0d11a634c799c7b2299e9282c337a0c37970338b7cf0d1003d3f53c659c0cdfcdf5e0b872a2d843d37404463d2e5ab79eb2d3016f2ef7e9c1d52f673e28f777125359af48bb76d064be8e6c64383071c9d258774fb4d4a6a3f1015f09d0427c99ffc42e4141ac52d63db544406c93c7d6741c36665053360adc0b6075e7ea8eee98bd8520b2d3a1f02cfb483bfdb2d053a7e1dfb8c0f55ad6e29ceea2e32cacf32ed254c87734ad17899e64c83682e3d3e8a050b14c36fcce25c443bcf5828720b15b9cc65f5fc68e8764aade42497c1a7911ad83e80d665d926d1e4a320b8f98add36ab049ad5efb116eb57a8bfa4926d0de25ae0d51c50670aec154eb4c858ef1f0cb6fbed18ab801ab343868e24cc6a3d4260ce2c19a86c498e97c0a637902d25031f72ed6b5b4931b2b9a46911738e8938579947be4017c02b6e863ffd921ca1a56b111ddd91468dde81011ffc870de180c84e9e2e0173c796da0d7537115afae6901e80f5aad6726921afd5a3d2fcdd6ae70a398a16ec6a2c5fb80e4f52d7362e30efc5c45e7c6c6d67e20d2da2e614d9a947e20e74ad59aefc2329d6d5f9bb5136efa9ee00022aa5b991c68e80e2cce8dc148aa3fdd8fdd6a1ee0562aa0ec8bd036364c44bed0cea29733f2474bde6150fc742a9caa47c16353b58221c9fd7663f90cdf8e155ad1a990887b71e295a660273b6232a7c06c56de7bf1c3ba1def81834fda292c3e1771c36d01c7d2085106ca80ade1639b8bb9acb49d84da72152c35dc207d6d2be98bcc2d807727b46a162ba7973a767d7294ec4c10f4cbe605e1152322ccc5732f65f9c24eca25035c2f363a78c96e5d8413073d13d0af8a286a318a73e2d17c651eaf189c81e10f0cf0701eaa7e558422a0ae93481acf76e3e696cfd64f5a2aa6d0f980d3199882d0eea72c6e075d63bc01aa9507cce3c35dc8236c3521599bfb1bff6913709236495870ef86c03e884dbabb6d0bc16907fa0c67bca6b8aa5dba75c3e364cfeeb7722a28ae52f2e31823cae5321d82b584f7cac6f06aaaff055bdd2d06b33ea9bf423c7b929d0b894b35cb9f92b1b8e013511ac304e672352dc178ddf8786f1ebc941f1c7794b175538096547484608c5f898a0afa0c5f86dd5e75f4a6792b15e23d0cb48e05c57f28c3ebde8f76d0b816accb36daf6b4b59ca28aea74a2c3a8e4c93f3f408c1226b118eec82bcc6cfe457ed5c1066ab7644cf84a31f0b271c429b2489b7506fe31571a24580aaff1a79f266cf7c25a784922e46e1c9195c518b3e574f48e67ff957f385ddea8ea91dfd7080a02f37272429934a8538922fa2e64e6137374d5c047eb319a61e211442af30493b420eb9e721a1eceee552258dce0d5a26dede43103fa00553679aa045c81b6a1d7749b2b135b3d12e1fea85781e41ad258823a9f69849456e65da5791443bda8a1752657a33eb2914eabcc5d0dacaf58b65757a1afc2177820c1cd419f076b310cd68397492c61c2a615b0bf23c8f0f93bcd3ccb4020df7b92aba40af66235e05e924b80a98eff275b1e18b3bb07a49f558325435d59ed1a8e6c3372f3e1e838af0a9cb7484c4524c496b7917f5239f767c6f73e7deb5a826a04a653ab27a2901bef21d181cf2a88b08f1990144cf77fff2e0f623e2dce4279e8d1b626e9e36adc75d5945fbfefd9513daf88bbc4fd421b96f758a5e8116b7bfe86cc8348827b3f3af68586dde8e6fea721abf699782f48023b0e4cf25019db8a1f06bd69d80fb7e321f4b5a7c6ceb222080b8f80dc4293759079ab3734ce4b529e2a22914764618c811de4fee589213650495596e1b21e6ef65d1ebdf8d2e31485b745ebcf2280ecb404a6beb90d594aa4870ce801db6630c58a50485fae2b83c981d506a3911439462d5e97e01b09bf19a5fceeb420c2688e3a8a276c925a6d5ed230f7c00be5555eb8531e2d04da15e96b2a906a47d42c855e790ca0bde553ccb7e6874085f1b53d09589ed148430557cf5befcc5463fea5d73bcf48df840b7068deb932acf951d1fe5c08ff798c165f7dea8dd6ad36904baa6cb6e31dce03c843d1b0c9d341a5ca55911e94751239a1b3801b5edf908bd1faf0613a71a00b5fe8417c401d5a0b65bd49be49c1179525f22ef86135edad81640ab3ee7781d5f755e4629d4d2750b76751c8a3862806221155f76aa75e29425ae409cace3ca35c9438d7b2179648b7aaa84f9fe883cc4136e3d8ab8d84674cd3d3463f7df8d6bb341a7a9e6b0c896ffee8637570cdb8c8808130e02061b37181c6d7ca9a75a12682ebac65102c601a67530f282732bf6bd939f0071a4bd076626ab091db3bb46caa22bd4ffb357974ad41f8d7006b02937b748fcc6a4d16a3e996e7f7754ee3985a93194104a9d59be631406d8bd0351ca17baf8656775b5e7779c46aa680019e62ef3a36b738c8986378fb9358682ebca1b869fa5b3df2e54409be151b047c2281040a26b3b7ecbe5890fffdb1b3aaf16345f2a4e3516cd13500ae558198b40d1e1c921436946e5840886d8e4077528d63e2435cc0a377b3671055b59c66ed78429d4ab5ca413263445d6547e1e12f9501eccb81617c0e76a9941327efa2dbba65147cefbdadf02906bb2927ddf59fd8e87a52412fc586bf494586cbb2019db275a46bbbedecbc65cab717ead9760247681ca33d03246d81a7bffbcee5b98831b44385ed4d89f916f0021788286f42a5befa4212c57cef660187352813e3ed08ddb03748dca2288d3f3fbc1c95e584507eeff24aacc58baebd5fee9f1c9b0b933406b718c10ac687d4b2fdd91a9dfa29cff37683f46b1da170c35fd4b31bc6471f57f480fd53271a5b3e87e8627f4b6d739bebc0244ea591f13c57ccec8bcfbca8ec03b9569905fd151bc379caa70e138972e9a0bd1c6ac14e5a36076a42ae9b5c75811723c60531c4e8ea3c06eafc3789806308d3685adff6735d3c13313c20e66d3d2621268678094dc94e81bceb008b22c19c53b7df41151fca2012943ee40d5faf36a0acb4156a04382c604dd501cedbdfc20c0b992f6d6e5305570c69aa2470f12aafe27d0e20e0e0c4c6f1be9512d4bf22898271abe097f66f3f750e5f6dd7ced066698956ce8c67a7a3b35cae53a1c557c17a6e3b4ebb204aca47b63188798f0069cc56d1c309d90f1197f66040970bbd7cc663cd8c1606cc87a5e5e652fe013180e1f9db4d700fbd811a42d158eecd26efd4010c24d5cf874b41884f19c87a8c77c3c0f9a62b1142c9aad818c8a7fec68596f02c354e47dbab2b1ae0bbea6018d1be9981d77828e12c048e69e0c8ac0c2f19afd7a3044c1910301b969d43b181208e702d6c6174f2aa07fbc0789020078fcd3de11d88b8cdf12ea807d2a426633e938d01201b026074c796c7b5b4241bd8eedb97020aadc053dbf9d038eb17a2c34fbd655f5d3a6ccc3bc0cd73c6e0852e3c74b803c480536eca88a153113ac056510a9f8b4bb3485567ddd3a605185c488b0fdadebe5a6b7a7a5f6bbfccb7f14f4ec1615d9112620d1da37a65087bb338f9077e8d91465a7eb29b4f9e5f3d9ff4f9257ec2f4e8787dd0d923c99fe9816b9204370d5342a4f58da44db821988da3870b0de600bce5e91b46ca97fe6ad28151c3af1f7d3dffd89f9eef2d71952e44c9cc02f294ca4bd16b1b91ebbf59378b9a13a14644df12ee167e2b3a47303e3004798952e9c3228f046438ac272f6d2f58c1b3e3231492a1ea94c5012b978cf6335a65306d5a92e0a8ad62318783df61313c4dbad2b1206af6aeaec51b5a1e77cf93ef266c970116ec84536fb865e2ffc5afe33ff5bdc7c22d7f4127a55f3b1b9a716164f5539299305c8c2d44f9991bc673fc956be344af212f99ce2a0b1ce8eb32994c97fd235da62f43fc10e49a33e1c44a4ec25e53063398871146368460189dc5c35feba901bd0ff12b26f58ddff8e76c8347e943cec920f47cc2214a3e219b1c48efd3c108c520f6ca8b56795933fc41fd95ed79fbe1db8bf06c5e53544dd824618b46ea1045a3b2930ab9ccc6e986e4f30d93f982b9bc9049d802ed72996df6ced4204b2334104f6ccd4a7f17ddd13c61bf279b15f7342bec0b8a56b3636448aaefd6289b052fa728f8fd9ef6e9703fff7d026441419615778c791b178a6b6f0c4c1a2da7bd2345ebd4e235cffcdc0db409c55ab862dba2651c5b8d03b7f932c50b9217e771b01edb24b84fcd2c144c4e1fe95d2b4000de1b967cb98a8d78d826c7dfe1e75ce074b1c687d802efaee3c84bb42076f288b79fc4518a9e025b1ed9d33b129672cf9c2cb98f9a979aee516486e62cce614418464f988419f192abb47dce5b5a40ba9cd729dd354c5c8ad3a91e6f994cb1b8e76433898bc7f7276200f64c8aca3ed18475f78b19cfdeb5f4e1446c5d1d1cf77e6463b9ce7146ab3c9de5e5e8e975f045eeaed37e1a2b38f7a835b41d73ce764160bdd003ed5d5abec19748395099373717527495fbb8ad9d8fdedd95d4b0f11341c64ef5def9c0016481c7cba6119914d27ac0380b8bb4fcee7a22eaa562cc63e7bf7bbe02af8a154dd465f0b71a00c6e86f3f619bb15ebb3022d174bedf1dfd3644e96c45fa762513ea0900bf4506df793d5c4f4ea88136b3c0b7edb1781d66ba8b0b34e735677a0f302b713b0d8e0dd7416c4592faaf2e3d560bf2a90a3a790306c3d3ad09603a3992790e7a723c23b7ca86d70ecd0c34d861cf65a7bad40deadc0e3be19dfe5485fe70b4e94cf5c90f22fda418c4324f8935b2fd059b7ed60b244790845492505e5f0a08e5837da4b547244b0893a56e15d96fe80c7dbe980e0620920161e667af83993399e7cbb74f30957088ea20462de7ae637a028fcb9253bd8aca16fdd3f84779efcefb69abc2debe66ce2b94ac365339c9408c149550c3ecf83c94f8b14c0b87f7bbb276f6efcf5747048661dd6fab82c38205addd40f4515d4c1081b51eefbe549c69047da7f38b1dfc6ceb51b3dd68181467e3db2d311c283aa9082c1db56c8e25d62787c2534003844820d86f8f1256371bf855b2bfbe6db3cacc6ce3f61785cfe0d3dfd3204ff34fb22fa0d231d812bebff0e6e54d08859f2ffd6cb159744caa917a1da9a94e71c6dddda9e63c1342d04a4f9803fd60e9c1d9f6f00b16a0a1c0bd8d345544bf2feb15c5ee0662377a6c673e8f2e6f3c7539417924902950a2e4a753a73940cc871789bdc91b919d0db08c6150f086780773ba9543cb98b9d0ce79c9a5be1f68ce602434160c5f347d8fe92ee1ec9464474963c791cc7d815bd131e76745202e5f74e204135e2457f0cd20c1ed924da4c8c1b6ecbde34c15175426ff7a7cc24f251689ad2f19f29698faa4cdcf1e02388744ba720395882bfd63a060645284e27d4b2df79094216430dbde118af9b32d7ecf41055258e59982e801690b724c3ed2dd5a3aadb3bcf49d2a9f71386faee27be40b021cc0d3703c5d435c3e46dce5ec60595c415fac025f2ef87cef7387e2a8c4abf4ed23ca59868256e38de5095f857de3cc34cff587d7da1bf45b7dce9d08427059ee5dc87818c6a22f8d0ce7262c48a6dca42d2528ed8bb1d1873d7dbee79186e9c391dd8f81f3547001e6b77fc68720b7c88dc29c096a52d93a47338d4439afdba0b96135d4a90541b9feab29b06b694c4fb5348edc3b3baf72a56b1198f836ae1d3b45679143b6a5ae411627440d34e3864dc4eb214d2ec799478e1e169e183ce1b6e37f18877026d43600e4530cd2473dc1cab166da00afcb7a0bcbfffa2ac876c8e2fe591a47703420bff4d863ad6d8d77fa0bf278a976bda1a8d93f65586e07be36beedbac67633b4e5d6cf56facf09af6d72a64c58a8ffa8737d79be68067f5903468ac22476f029c4cfb65449b89f5d31ea9aa080b76e8f0602328d5073247ae57a620a04026205ad914202cc0103397938e6db2834bff73d45175418d42b12cf8ebf117f56180e7d933dfdc118f6187776230ec618204bd40b9d244402f06023af1ea58c7136576c5e1405c73e01b7cb4e1e164198605b4067837c0dc723b80ef956f7303a6a65f303df133d245eb4a2bc68cf946c08f37c1435cfc934d855cb484d12f2ee3215ebfd6adf7673be124c450283023b76627d9032985fa7a19608a7c03129b52de42431cb2735bb057a7b31fa0e194c85909fcd9547fd7ed051031f2e5f1588c15d9b5ada7841cf673ece7f43c6adfe0a55351d2d795ca656be6aa98f3b09d99c8819fff2b5ef591d9b3446aa0182a5a5e89063e4a260d65e2d752d6227ddf34a8dc8b8b99dc74bf3b49b301e8eee8287f29e080175cea5aeb91fb266034eab27cfd7c4d6f5776946c789c0febeaa73846e211eba7289f3e28baa114aef7dcd7782b2e5bab72f7d5f38165855ea138258996a53f67aff8f68d419643dfaedc72a571a84fbb995236bc13940f3056261695f0a6e60c36254709b50b66b197f7aed4265564e6082e0daea982d601ec644744e92d99e6200765d6e13a2efbcde58421a2cbf0d01bd6d0e9416fbf5727efe8e7999673e3e210f53a7aad15412cfa57fa4fcbc3b8923ba0504f4d5a1bb9f570f2ce4a55465bfca66009764825a8179c5b1d3ffd654b83d2177ab31a4ae591abda690c52d31c6ad08ed131fcacad409d5fe155cd82aaaff1f8790c668f066ae00b543979790ac1b820435b91e5a6d7575c5141280b0b873483c5e086f295bc8739c697c2a3e4fb2b080570aacd3378ad73e8f277804a933beaac1d30d0f595a9cc160a8555d7b8ec7c9d3dc376eb8e6d29ecc3271ac029a2d53077457224805c1925daa9fb12135455e8633609b1fe95f15e3d11b3f0e65265035c3741d5d989262ebc63ca66d30ac348a0208c9b4a6bb26fe6d7ad47f4c59447c14c25f1b220a49fd1cc595f38b75320e2735c9b69410184718a5e921667974282bc435f9a680eb0df73594670c92d217747a152bf35e29b30eaa7ee53fe6422f32ff3dd5912d887d12a3bfab09a58e444a1c63d6f59d714ba6623e2c4016894a6a892d2b8e2ac8150870827b3ae45ec5784466a9c90dffe67cb2f8d6dab731621a2b8c0113c5961a2dbdde4ddde9e22444bf2697f4176b914f9842be5a7e555a837af670fd17a7ce40d42cede463ae455333f24969fe32e4208325a6210278f7a6d6f22e392ef8965b017e1523903d14236c18c5a84136c5389cafcfd581e874bde99334a1bf72617b783048266db6bbe0ad90773dacd6b9bc5ce51086c059f6c5980fa1df3ffce34026dc3017452ff4d39f502d56d183d063e530af95f1497cf94d6008cc35136a68669295300c91d61d864596bbd9405a93e3a3900a4166e4ca40928ae7705b56e5424c92a14220df71f22dae23dd25bcc403287db624465021663a5fa8aea1a5adfc6c3c68be2fbfc8e75ca3ab37e42d89f3c818703a372bd49adef297531f667ef5c278fb99af279147f1b11d2ab5a5cd921720eff9dd2ab01edab6c9ddcda148812bc43b94dd7925fe6ac31b8da17383aff0dc730711f04f94e7f01d54826521d68d7ef61b150380f967d46d14f6d8f80363ce810bbe7fc2db49c5e0722c8882301b2d1b8570ebf5e74c089fa03917fcded89446389038386cb5271e68a462237f4bff84fff467327795588de35a0d4d1d5aa7df2419648f64f462d1523387d425e4fc8c98081f8692a1547548929551fa06a21c0cb6654311c28b9e0ddec01666c35d9e0a73f02dd7044415604240d4e57c52423bb39f580f608417c82dcd9b370b7f33b2dc2c4e74f8e74ea7416a9d1bf5c1b443e4c23fcb18cf020958864832f9ef6a0c7bc10218e1343dfe60f007deae54160b8a63c20b5f112345033f924071eb73481362faf158713d6537edcba5fa8a6ca9d0f25d446fd20b24b8a23649ac683c246839c2a91fed8325d2d93562fadf4d6d47455e6766c6dd24a3b480b0d632dc19da9c6943c61e6f5c605deae72c1ccd9d651592d45363f9247db62b1f10ea94d7b96db47a657beb6c2de72e5ad21b50299592d6b055ebb9c1d71c38acf8010e1586c3a1fe49d120ea4f3292f30d20d04ea35bf47656a9b73f209535c04336e672dd6125cc24a9c8156ed40a28329289f8dea2d271175efe2c3b9b96ab7b94722e03dfcb5583840bbb11e91febbb87b052899a1e489dfcd9ed1caaa07ae47cd7d70e0c1b55562a79ffc82f9055cf7f664d5dee0b11f7e71ee8cb9a2a844c8ba0e519b67205caddfd332386ae0e587a4660818e589b5502db93b62251192407f9897379757c32b4469090d241a4345ea9f69e3e1c19d4a11bedb01aad74533d47b97c824058573041adeda4ec92621e8b87ee2ab182cb9a9a5428f84d13c88b0f4b2ca3889a00bad432528a21008bd6ea2e01cb8028548ae7c6e89c745970f6d03c07eca9990d8cbdd80716f134a0b2eed7e81ea7a79b9ef9bd13bd53b80e40d99c47a940b48515f821aa80a7440d4b6c4704d05af61e230410a86efe547308cdb0f85eb739d301b90d8304c45ee96f9e23bde927917aafc387857a599c53100577be8e04229c96fc140e9e608324e5c6d3f53f5c7520838bdfdd151232a2ad7eaadb084bff4d8940a8bb659b31a938610fe1ddf8a6017fe4ca07a465ac8e8f075051b002b022fa9bdb67a6b07174f821622376ae58470fc2beddbe97be56a4101153323ff1904d7dfba5063aa5c490adbd8722c752808e4d032406762a9d0e61dc2aa65d2efa6d1665a264c563fb1edeac1d6cd268e40cc146931e035240afa8f8ff7d51f0d7a693fb5bc18227996b252ed54de95f3091c48367162a83e25209177ea2536b9b8e46d73458deeb700ffa1a9022480b439ac4d00bd6677445b32783963f0892dcf86b1c61fa7ab5d89fbd9db3618082815c68a4997d1321e136fb9f06e3e9b390971fbfcae62e2e518f78c0be3d696de201a826d7c7042754bb5a702cf9c38f960a04902b95b1be075013914beeb337219bfda32fd233cea39703ebf03f03cbc454f2c0be95837dafe386299dc3268b850f24ddfd1a9265170cf101e08f22ad8375b8f9d4c64aac809f5c9e73ff75cc058bca61495d0eb34253c5cdd67908b94b06bedae485c1129d6917a03c58d00d3a54c9a7708e87dbe4d284cbc4420c03eb6f104b57f7aff1cb7ce1e45bc9787ce575fc4b7ed4b980f3c6e304f255d706ac18ad4fcd77b32a575e3234a65de567a2b659c32538b0b07da545caf2b30e2cf026c20680c006bd951df722fcfe1bb39261c8d2c6a2344edf64f85ca932d76f815b9be52962a39fc8648ee1f60a15a6a4cee0950b346ae210536ea1b390f1345e898b042bda023e670e9156a87f3bd765a1d5e73de80c92897872adde8baad2953d6e9339fe6aa30e72f0771a6c10c1b2e72bf868bbd5ae4c20ca5d773cbd6a3a4aea166a1795ce7a095690e70522f23cbfaf60e8464ea0c31561e0bf69c3e0faf97fd532ff739b48b1d1801aa85c80235fb5d05ddbca047743e17123c6e2ab2fdf38c410db05bb49bf6ec5ff3e714bf365d4625b82065340aae436d3eef4e34d47e910e27591b13fb3dae06147c5232846f778b4a3cf9eab52e09116db1243afc31f386afe425599c440cf6d1d4e3c03dff041eb00baa7fe48bdb5da14bd1b0e7201a7dde41eee4a4429034e14e94943e6bda87b682d92e4275bed90fab1113d025e6016d25f80df41586f65fa4f1e0b61ee7a79cbd1251550750002a357a990be25a1e2f1ea782d2863ea23f2bdcb91679eedaf5c0b0d8ea93b3ef0720c88ceba91b52d666a98e04bd8b688484a44caef7cf70ac862e8dca6b7d1834f1602849d98418f99ab805bc064a51f909d47d40a7e7715d5b163d6aaf97bcc62cdbc579f522fe2a34005e00f16294ad59668901a61ee7f3b2f5aa7deeaad688330cdb71b87d17acbb41a3f961c957a21d2e9e55d7c8f9407dc061482837e3f7af633f18da1c2ce4485dc85f1cb96be579fd180dc918b4f8a26883ba79e985b866aaf1b6b35a01329454dab469c10cae001e9f9e1a9077cda9eca940728e932720696d5a1c378bdac27ccd019367eeb8614822cb103d08987f28e7864ebc292dab88b8b31235290f5646103d68c3300fc88804a5af37e164d7934df079a532ad86796ea0a5a87e2b4f866c1725e55471285c68007ca2698bcceb4c1873cf8f86359659c6941c2f5a8dc591f70decea408d8b6c1caf83cb26c5f0f20487e2f645036f07b94fcd328b4e0eb8a22bc31b76fa240a5ec8d6a9d049e741ab2ac228abe62a952aee3bf140ac0ed53bc01aed77a75283e25dc99292b11b32c6e918c882dda5a6cfde8e8a1139ed3a74c92035f18ccc20f263ffb458149939b8d53855788e8dd331f3eab7fdd6f469901f42d99976c26fc597400303da9734d3cf605fbc8791eeccb11396d2628a9b05900cc596a75d051e356748272326873369c98e2e71b3f576fee46d4f0ae2c72cdad68dcebe07f0253944052f0538926bb3a614a8ca521e7354687bb5dbb01a46445bc529c85bc278d423766828a513a5c01f2e04078ad243eb09aa4db58519851240d735c5075f1b4457e37438ea17d4458365e6f082f5320f4deeda587a71964ec322876c701fd2c85a58e7642e683c941e0da66c890998ae9b06678e5f8edaa28c047bf0c6168b25a23c1159c2448abc9fe18a5722700f64179865958c76d16ca9ed33c15a13d3dde01e1399871540b503547355796340fb6e744d10b9594efd33eec7dbaa15f4d7f857013144d5ee6a7eb66f3c033e3d7d6b3f75789bb4c1de8276c1ff794fe8fb36280e70f94839058014d950c22341ed78b95f718886d7bd67c3e510c963b2d1fc0753e5b1f514aed68d12f54cd1b27954fffb449409435a7faa22375d5ee83d406c20891f7fe6a5baeeab4cd965548df6320f1c8f9b1c49ca1b6c992a67997877d09aa5f7dcffb876e185b9e699efd423419d3de7e026923d55d3cb4fcecf80160167e736db8c956f61a4362cb3f61fd8f62ca6e6849e2a2a9ba703b1dc99346c096ece96940ea222d9b90a76bc8efd6fe4c190f1e8ea0d111ac826b631f48eade2a85e889cc10c7497d1ef1a01eb7f539e7d771cf22ef07d2abe8a3d59be8819a32d1b3dca65d0a1233765247e431f11c0f66eb5a87c9b126b00b4d0648bcdc9d6be7ea8a33b8e6b842c063e7b2b71bdabd757de773896ae688d3ee1baa421326e2f8f57f00b8cd2bfba983f7c6956e3757fe4389bd7eafa8dca2f91f1577201bc571b15b0d17481df41d1a74cdf0c89ec63e8434d32b2701038018d91a332a3fded6da52d5cf18bd7cd9cf624b0b90a848803a7d9ae90a975c3c810ab5732ae2bca3d5947821db5e61d203ba3b00f658472232295d6684900168fe700607831a5456360a2d50199d372e4ce4365095d44873efae88d6220fb02a867b9a7da5fc5172fcc17928242f60b8c53bde74d5bf74924f975a2947767460035758063ac16dc158590322a1a67a95a53eddba6a93d106e052c6370f798f1d2a9fc88265d0c4632617a50f598af4d3a87d37d05a87f5d6ba45c1139cddd18269756ba7b6618b82ff36e99ffdaf127aade81186ecaa3134c30168c7c74f9a5ef96d94959192eb6da307271a3baa05067abb4779933e08bdfe71cb170f15171b16b3b1aed8db98af650868ec69d5347accc9eb7f562fb3492a67554dbb11fc8e1f9583ba5bb99b20c13826375eafb0ffe4f3a2b1b0e945b98f97c09546f068f8ec701142fdcbbb57b4d111cc0b4d2ae852838fa0bcdcbde0c683f4fe0437c02ca64e95215f0f283e9f0588af614a8a5c5f56fbb29a27c82a8300ba5c17dc2dc9b6e170749b22305d052f106495006a7f94be862295286c473dbd7d0bebdce4826859cb1ce07314404ac8c7d576ddfe606753579821a5fe68ddd5ee09510ba767ebff275ee6375899ad17718e318c20996fe078af1715318319ca4d2aa62af894dd7efad0b2f348c1d85eb106848386ba796c7d2aa51bbb62a2c338ff37a0098fbb912d89c2c85092ad287038fa17b386b5599baa040e8dc60965fb582218f7dec561f474882676050db315f37e1e4d9576bfd15a38fb6c8c6d5bb5c0a7d87ba188970e3cae1a7d6376c739a18e98d3cea1f7dba1bebdc046310f1671dc66d8268f585f020db01fa3ff8172cde7e75e65ae56adbd9a664971be9692f55b379a2903236a9ffd32702e6879e48e219556b860486119145561f64c591f87e96bc68636a383418f235d3457e4b21cf27cefc7c7f3edea4c1f6706f1018db196f25524157d3c1ce1626a2f7ea752cd16f80e7d55a0b2f47f8d5565f5df609ec125887429daff633c01d25c1e5325534b29e7131c6b01e3babaa2867dce0e861d00dc5a8d7f0d8874e81d423bb4390c09e74eb2913a475b2c04b35aebefa5bf3d6950d2e512f0f080f1653440e20b61ebf287927457d740228015e31c838651b4dbc64f9efa17294bdd42847764d6cce26a425a18effcd822a4f641749df62f93d1c3025869a611307d51e6a14517e5aeebc4b81886ec7fdafcd78b8c9e631ca57ce90ce25521a946129656de751f10a04ee81a72e3bd648663b59808fcf0a540b5521d498a12472085ef18674b8ef67688e7a365e2a73bd4858338a1a76b84d73dfdf7eafdef53463b2fcdd785cf54571b8809d83ba9d4a09e5dfc01e2a11897dfa8a3c73ddf7328eb6daae40f493fed14e355069417f2eb5859f4d781c79e5c37635b179f1a354df2f60412bd0d9c5e5001f7b2bdf6d972e382cb95f49143a808642a43709525780071dd979ef96e066349d5e007be6123350f201fa8990794d9f4fee4a2ecec21ae7464753de4f6b41bd3ad8766139bc05a395740c3ed6c655b472926cc3e3cae3092be72fb1c84c9e6c3ed3dcdd7e476f845cd467eaf40ff62f6b2d7acf31cebb340bec7c994d8a861c337500defedda36a86b286afdb800cb3f919d3f58984e4895dab7e753aaed2d4069c030b81b8e8bd743d603ade395751e02a6f0ec05a3688362e7cfabf20c032709e6dbb43580e488c0dff8d5a4e801e860b80b5fb8ab19374585c470c9410b9bfd2b2cff9572d5d674e2468b6760aed99bfb489bf55e229b35f454230abcf820b66ed6ed459c43c5eb3ac9f6eba9ca729419a27c89528bc529c1716e24062185c5a469e0fbeadfecef4ebf90e81f244eba638c0de310d3af99c3c3a7171b04117a18a226e24e6ce011a4860c5e4522bc81ec5905a1d9a963cd8cdb2fb5e6d4d5c3a4588dcac410fa6097dcbb52da06441435f97893f156a72bcbfbaa13b9882bd1306baa76ec11145912de2a85b7324a1a120fe399f45d5278a4fdbea7c26fb22023daef1fed5ea5c9c1e6c8fb223d19744fda6154fcab8dfcd268f36275d417dc61863001ccc50028511db84e4b8d497abb987bb8b2e61aab9de94d407ab660d6fe1ee0e5c1cbdbabeb2a4c19f1eb246fa405673a6c0383817f071dcf30c7d85392ed67e6956fbc4100a648745a18b9dbe7e0b160a8329768b62fd822e990435b929833bf08841f4db2d18f0fc1d6c861c34be50105ee1053d6d504d30e19363d48cb327a06e3f93cd3aacf329fc867b8c1304b324888f6004b43e640479887f86561f79e4e49c820b5552f581dc1c81e25f9dcf8b962a448e81b5917fceb62dc297590132f25276f335f37a3157ee7c437af7805024a6f8d091bf94c470a0292591726c8cd0b65c2940b7cab32126101b575b648585c1a6f34e20eca000e6ae4c869e632b987e9e3f9345b13eab2da2c2a8a1943ac2840c4bea84b87ec0343262502a135cdd02cb85bd3b0e1c70d87e91fa37d172fc09b51cfe34e60ae6a05326fff92ef3e0e0f72bc5e8c7aab0e1ba36f7b72b4926513b1169f0d6e5f96f8405d4f0288c0d76f96883a1afe0c4a111bbd79b0b177f45688f167db8fdcb8fbd81eaf619691484b5829eab1afad3228ccb35d009fc2b5393fcc54b4292d0b5448febfdcb5f2dbc2719c8e4c659edd76d5e2ff3db0ae8c74b7f3ed4e5fbc72c2e079a9a36317d71f0c0ddac42effe688e1b53211e829aa63b59fda04ff8a5b64f0a7181447658bcb46f3ec9d6ead3e5134343b17354087a1a632b8c75d0c9f484f015b5ebbd056789f6a2c5056a2ba674fc71a2cf6b25626efc1cce865b215c3b03ee44e395b9c163ad5a4aac5e215d5b98dd17d3423afaaaa76f25da65af4dd076fcadee487f82a6d2d9f0631857ff9cde376d48257722f4a0e2a1b1208a535abb736480bdc8c1e173e9d569ee6f5059903fba367ce951c6c7c037aba69ea1b2aa8aabdefdc3da3ec0def813300a6513e8999f17255ccdf77f5df1b00bd3dc064307a834fcab055fcd1cc074123025a7f7acb44f17118787fd0ed33d0ffb6371853a6ab745f5852db8d770acef00a33f44e60fdb8e6fd3c4ada9714153fb0d1a761ceeeb920a4ef4bee9161f4c7361cf1086d7b5237560c6981e19e60bf46cc6b17dc8f7ebcd5a22606c2de0718c91ea46f614a761942a91b3e9a4696469702b18d4e4a09db3b9e5a3020af82bfb9199808d3c0b10f7b0c46e025fed027118cbe130e6c25ab7b1918348e301491afe10834dbc2e92c571cca520feea29488621e840aba1aaa70f7e366a21396044d1ed0e1f038f26dff7a95cc56801a6781cc0869d984918c2f8f09bfe1af2c9cb9bdbecba439b3609e2ed1c6f19e9db9c99d8ba6ed80257cd25dfdf429019e1fabf4f72490c5d32a5bd46cfc2019a5b79866e1f53571090a7de455852ea7003bb2f214f4499ed839bfa951ab2ca77d7b0666c50a0a2f7e5b3a034533d473dda666d0b29091325612a066b29aba77b7180d1c2456e2002ed16194a09a53282410fe5b0811a8c74d6a8864432e29944db242b032a9777c7b34a882e8e022ff6b97ccaaa502f73157e368315adfadf7e9f3234c556bf3f81cdc19660742383bbd85b51e4d4428b32a5eb318a0924a3d8d301080bb2e14edf89d046bcc664231dcef3a1d55cf89e06bd07ddb3dbb6b24fed4e5271e09498324429bb371f4bd6d03d854744021d82b90e0dd5bbad5283c98361aad73510127d19c2bd4103c7d21234d80b911f9a27e35321262a20d8d81cb116dd0e2d012ff8f78166693e28470af972345bd1501745a31e4f789301536196ba1494499c753c72c275422298605cc5ed4e97801e344a4ec10164921edd6ce047ab3fddb4628f38fcbb299647ca412141ed603b4a7b091ad96a6e40142601b49ce0419d12694ded66de88b759f1e1f5c06ef112bc02b972954a8faaa55370be1ec4e1e5a13236ae3da30be6f8d833c3d80b74a982ae8abefef6c23553cc597a72dc87692d123eac7f46e96c4647bdd52756f9e36f5d96703ae454985901c9025f0f2f336930799901222aca666b3bc924abecdcad09ede67f972ac49550a9f9a85df7775ca76d387d78bd9759005c1db19d757cd078e3b12a11d031ae626761ab66dbd97a64b11cddf9722cbed50982cf8bc242b4809109a6075108db4a95055f28a1b4ebec89c49c537411d76f3c53574afb534377015c3be5d329af5d2b51e7b025e5f47cef369aa03817a63e153dca5888ae8bb9ab22760c37b0cf14fea9cdb94de936247e1ba1c22f927573f897dfe63b948476497ecef07d3466a8a3f05cddb52f491663f30a154365b78c89275268ed928023e4c7decb2e2b6ce43bb4cc6083307ad90193db83745946da1461391d038053c5a04008a8a266c522757ab0ab472cdc10a927df0ec6ee756e184850f947d0ed19214e2253aa3c3f74c23afdbedea49ef14b5fa8502ba8e6a78f2d390ad5788ad9b356a76e9388d0bbff9f7c8e3dbc1dd7ca54bf47c99f5e78f41f7a55dec39d053b7f016adeaf64d7e8ac131d3afa0b57743e99d6929585a0d192c535cb8d5be7bc8e9017895f68ae02829dd0fbbe99972264a8e3cbcab748c0e323ff7dca343940dff8bf8f15b90454abb4953450adb50548e29353c61cefe0f4f4ce1aab25beb0d070756675f40e39d01c19baa4c37e339cbe9202fe7e9f73576115118b2a7128a53d76318b232cb749fa6c6bac3b8330cab2c7e5f4f6871c48a4f4a405accc403ba2b836db7803f45b5556316f5f0f485255a767ce95d278f74051eb17d3ea8ea1d76df4f108bfba59dc094f651f95096f5655d9b04b82f2567db803e9e4c4d3cb43b265d9d046fcce6b731af8bf04e78b5c0708e926a6d8f9e2db721a47feb3408af3fc2e90bc4ed1225de14130f138ffe614dec43b5bef0becc05f13413a97c0e46d689ed6a07c93704227adb6c31293c81e5989a9bbd7375f37b78d966567edb468afa7dc83e5e856a7102363964afc147f560b3360b1f0555adc6f644ed2d70d6a2156d903f1ade14ab1cfc3bffba19db67ba4d8073aee7023a067329faae0b1f5bd552c8e2f71a47cf1ed4d577b9425ab822ba9d679ae0dcbae2bc580236ffee55c3806080bf2d76e147aa3217b169487fc3a33d25401f768eb5eab17d03d4d3201fa6e2095287e7bf632f9664a654225f736892a73b6a54f860b65a62fd93a0b709cd2dd36a9a3f8a9bf429194f1f0e986efbfcd3585ff1cf32204a74202d5627be09b9cf3409ab11d5482db01bcd94477ac2d92abf3d12aa75b223f06a2762f8b7c22a737591ec6d679274e7dbb402ed6eecdac6a0a6c77010d3c487c4ed548dce89704254c6cbc117ee0725be13983206034cfe491419e04a25903d5909aeb1cfbcca1c4b08be0f22f4faf1b30a70bbcaf161bf45e4233294dba860fd394c45ad0ac73728c836b6c1927d1b26aa7a0e1aadc5127c66d994c5446dd58ea507175cfc40b339c515c91dd69dbb01c1bf6815310d00478a4c91d211f0f834139c37acdc1f0fae21e140e4f8319e0246bc4eb053478a9d79287df21f7f7a296da2305680f5c8226ccbb6d704236086d3c7b260e054a41feaf1caf33a72c4c688dee365c5f7e01ecbf923b0cb71468dc22f1b4ede290438db0780d7f01e482c39e7800ee6692d892cc5276baf1e8bfa389a7aaedf28265f11f0b76277f02923060f9757a8a4c16b624c8caf88fc5cc3e6b094e32c3e7152b63119f19cfdd91492d02717d106a34e1a6f45d43cf4f548ad2dddd5cc5887920b23ec8e4e8bbb2debd5056ebd35c6b819264a482a3342b245dfa6cbb9da91b22b223a4c8504191b593cbaab6099334cd40116049e758d40196d678a6a5df0010ca075a4cc8bdd415e2328990457e2e93657e72377574b6cd2df41e93d195bdd3a5e6e8d8f1b65459dff7d38d2d2bff9ddbfb3883ae54f7876e252da0313929f6a64c5a9e48851171fe286218605af7e0d2f8fc2482d7be34a7a2d0d18d362b111c5a16bbe894d9eea96ba3248788ed7c332c7f19f0040767eb10da0b812a3489b40adf22c7ee7a3c4f5e6db2945ec0bc3c5f5b1a3018ae428235feb339e7483f4c2e219ba961e347d9b457f9bd1298b42d386c43f797442b227f8c747bdb02e8da8f4857e5e8873b56c86884f781d04cf9bac0e9947e2d784f78dde1ab9b87f9431f1da69c03b3033e9abd24e3da6b5e04697cc616a5bc50284928267fdaac5c805cbd7ea64fd77447c65880b74555e38ba2a300da97d0f6a7fa5474a27569791ea762f8a7244aa024f9e0c7e14fbedd3b7707ce9786069cce2ec8d8e3dd557ba96034b996a60223f1756c92aee7b364d63994e7a344b9b8fb73b4e024d5a3ecd804e97f7b8b629061ca9ddaa38aec564c4a90ae3cb78b13d6bee175746e423ced7dc4b847628092e26e41f616a201f45d777b7099722d5569d96d0551cbcdaba8515f93bf266325f24361c4fdd54efdb139052c8c64445c16fa8158b295f84875fa671e0720d0207fe7a3e6f4b7fb92e985ec4b924d85495bff85a239406b9fcf6c581f035b39804f4c357333a772a275a2a70596f1c4566b0352966baef9052af8fd17f8b5bc9bec7cb282a23ab070c3df1a49d48a303997aeb7a38c9bbec99b66a8af4066cfd16dd76a115e4d85732166de4f28573c0e457a87e606d345e09a05df376de5f3318d187df8f40cadb29ae2b92ea03804d2fa05583c43605315f16cb3d61aca67389086810677321ea148b18aa7c01423ed0b10ffc1d045cd182240375d0b2c1bb13ff974fc0a931c202895f511a2695ebfbba29db16cd86f4a1e382a5cfcab59d38540147884264f1c62f6438fe6275791ebd0ed5034ab0241f67f4d4f15f36fb41019ccbe707ea24cb3b0133db0667c2c65789eb77e9fc74b3d0fc4d3561e7695b28ca111e78a620f591ebb2b94b4fe3e9d03530cd332d22d1e99bc956a07673882db4f0018ff77ec1ffa2af6129727d4afd3d1eee74ab00ec5792f7f10110e85b8c691cd409f0fcf890a62b484b4ff5917afefce66f082642724fbbb3ec13da268d4fef584b34c0133eb58bf4854652b970816169cce6b2b4cd64892f9ed550f37cd3027aaf180879d1f3c4813eda34bc6d9558b2905891ca29123b078f13047c34797332c4f835e5f1e418387e9a950024920faa5a11869749a48c83bafcbbe8d69e1d08bd50f7f1628afdc8062c819e89fdaefb1ec2484be0ca0581450f6f14e5d7b059c193b40eafd08efca82047d5e5baf44f1bd682d07ada56d94772cd9daf7befc4b410bba12679cd266f7e98aac90a6ec1a2f4849a4368c182fde315a03c1de2054a950ac314daacf6118f26bba4c0da36344b8cf5701a6f7628ed6f3511eade5891e631c05679e141d031e689a6d028e840032e3943eeffa2a1d2a2fc59fb20d66bd06599d4bab76d0414821471e1432d1aca0dfa6248d393e82d295c20a8584eeb823da9e5a0f24f661eda8e55f51f13009e42c0ba471882a8688472e29ff79bb34db9e8eb9e295e99a76bcc78080ba94bb848ed8633c31a63d4101f1d77c1b7437a96bd2b5fa8f55bfe6676c1bef83f66233041dd5d16bded7a490a1aba196bab365f3944a4cfeddadb6203b8230094706e84cc4d91a4b285a98cf9b554d4e469907079a1e327ff9326555d64f4e423e70d13c944ff5f8b3483a91483683bae8adb06cdb55323e3d952eb5eec0ea9a06ce75fd3b96b75cc95dfb13e93d4dbb4cabc0f7a4006559e2b12f0bc4a57cf013af3172ea775dfaffab4eb69042a0542cdb4b0cf9158d9259d734e7ccaa717665301b698a69bf9df0406c9e22b6094230076075ed7aa572cec6b45e89fcf6717f021c90ca42b48edc462289ba9cb76f742a9bfc4a9fdb8219cee0bc3755d4d75f0ebfe9eb297f99383448888072b5dc72e9fbc411a5737a6b7a4869b1c6bfaffed90f6d6dd1d67709c02a8764e1819d620052341f5990363a3976e4d2ab134d0ed6317ebc45e903791ce3d5874ee403c445ca21d6fcdef73f0aa50c382f3a078dc860bd2659751fbd84627466d8dbfeb11f808ff623fcf1b33c79a6a07c31394cefc857361a4af609a6a53bafa5d932d2baf85f389ce9b910a18606054cd1467bab31528f7080d3bd0f1dd0380e8937aa344cfe433ebf416f43dc7e966c1b04416352f1f1a39b61437603f9bf82dfe4d0e6ed1147f3df08ca3ce0a7566315401e17c26da4c48bc5c50cd0436d61f9bcbd12ba4645df2f8795129422b04f7550719a52b149e6a7aeffebf22a2d74b5e671ab5ff8bb99b0655cefb544bfca0acc22aa396c2a65ea196f68974827b574e4146e4dc9ff41df3104d2d6e9215ba16e996794858d489fad6de4256342d440c4a6dd543e9861b68801330c19470446425b1b26a085d09cf06801a0ea1e4b388ca7fe730176876b7f71326cdab950a08f929c89464738aad0befe9bd85c9cb7ef7cb0061a602fcad801d6533b2bfab0d4d615f1e71488ed5d5db6ac44d2d0314ed4864b7dc0d4cbded5530b6453820eb7e442d8c8594a2c4b41675b1e68b8459a8bb24cca58eb1e0e97da1339942456d37e6032208db712c7411c2089d4961ea71f7749e367624e4ae5d7313ae802cfa03edb2ebc84e0fcd15ba92787e5ac9b388dcdffde0915705726a3430851d60c2d39610edcf4a0ebd9a900d3e075111f6f60e5780c5f8aeec42c4f096c1a29ac3226e77cc97a4c46c8f29da98ac13159a16a5f3d4347a961a0242383f65f10f141cc06c821c3dd435d14b388caf0e0c454723d930fbb8a0987f4b930aac1af46b8f12509de88ce185c9ad6bfae75895ced4fb442102f0a59008deff4d0bf18f2b10159df4a5f7ae6cd882315dfd236c4afc65193c111c9f29a56c9a2e9a8a8e5d59bf80d3f4b96160030cbc72fe29cfa19cc73370294bb9d0e32321c95c76fb527f9501753b286b0f66df4959718fc271c1eed5b812db3eb9116bb408ae164b24504a4231768f99ca1673899254ed9a8b667d0e6a3acc6f7121bc09a5a5fc0174e74c0a1a3043535697ce35e7d618e50c7834a6d4708d7e72be7329d04479f2eb6bdd9005b7c019b37cbe5eea3bbc8aef49290f638c623d779a1e4f7dd26de32056cd6c431034432d4a12e748bcc856008e9b42d13ca829cd90cfdfcbb609d59a206aa08e413724e5a54f6427979b2192df168c3f1ebd02f5a4d3dd8740f01098c2fda0380f2e21b6e7672d3425b320d38b04c64bbaba2573313785f0ae3a4379043f789dc929eeca8a90f80951ce02a6c9d8b9867201effbf7d6306f479008bb3cf1b2737cc2abf67f2832ba2b1fc0cd0c21ef0517de0a5a984afbd0791a81bd357991366b86b1eab58a2f01efedc17aeedb8ba9d0137f095a8e8fbdcb1a55594da6119aaf2146f065788ca831699e27be841eeee7eaddf37acb83730b848f500b7204e47ced5c83893cbee81166f291377473cb001d9d6bd81b56b088e559206976bf0d6ee599f19f9d60915aafd5310832187b3b3a347fd195a491dd121e89f031a3c36cdf1a3d75378480b59220d54f77a92069d8afc488b0a4d1c0e3d7ecf2ab05f067246f121d8377633322b24b46f441f39547b89167972e781053f143156120f640586b36ef099a83c6256e84251d1f842dcf0016ae2b6e2ccf614e1f346898ad6db562812983bfea61bf5e1b29d8368f6bec5c398aec2a1a79489266ff73905fd9151119302268214d5b4978d2f307972efd599facad235935db758a468843bab0141a13306fe5066dd197a6cd52b2dc67b5ac98379fc6225a8e95e50596ea45ad29d8ef9f45de5193a9f2e5805eb8d1efb3cc084186f306a30bc7ff83750ec9b0e4f65ef0109f5236a73d653d145b9757285facce03cfa057800df405d9c11365b6fd82cc63011afb1d97fa62faabc6e9a42d9b58f59c502ee71a563c4875d8b18c082e66efe730f3d61c848c03fd485648291b3a5c59857e1dd0b1ff62ef40c033a6bf6debdb7873b234ca57693a61a77b6b43c68b90d60bfc14ae5fcce5d6d0949df3b90dd38f2b436b3a70b71b193446a52f3683a28df0e4f58f73756c53f343df49b0708b8fdac29b6e4b4ca3b2369fd04eb239c45fbbbb070be838981846011d5d9cb41035ea0b6acdc7a04732873f9f0a8bdb9c2c56bc6489f0bc80c03f336c0b3b6389757d6660fa0cf891d7bbf9ecd7d321a7b32c79d570062797b443d0e138c1644c44d6aa1b817330f323ec351143943048896b14cccbd063e4372d53a0629b67ca24af1c58808095036b5b84756ed4632bf13d4a68d819142a0ad5bdce09e074ad73d3a0801e818965fd7203c0c3862e56c762794eadd5e7c60faa15aef6849976f461a6a202d92c4f37de8d0550b66699efc398ada9e906047fdc3e69ccaae0c5fe913a000763f759451f5c55c4db715502a90a9205a93864246e7d3351c0e7f25dfbd2f7ac1c03ca65f2539f538a61e424fe3c6b587795432b252d43985124e15b59e5b25502a26e84caf11d24cbb2e88bad80cf1e888242928d9766a2ba8f4a598056da248c8fccf0e2813caf3acfcff2f90f27a17babb95588f533ce0d92a87b0a03a54b8859f9243a3bce8cddf4fa1ba11ec2f1977d96bc70c6202a7d89186dd6e380c969de3e4a716c6425161f0b229e50ca6bda74e7b56c98994646c0aeadacb39d6b0c37c62d7faa55a61fdeb90bb7743149f07b722f44e47d1afddd52133fec01a4e9c76691a8bf588cfeed1351c8b08db710d7dc6f551462b0e0a767063a76233a508fad271bcfd6800d2c06834e7122c364f9a891f41c9f69d3aac0a410d1bfb52678f2861b7e64e839a2153e69ffcdc55dde41c3adeba991a613c7a9d8316e93e9bff6e4f9abbde361c73de671137852def9709384129a2d11db95be39b3d23714115eec5c589cb8b778ea61cb7338c60223c91fc70b390d4d8a341e420b5cb6019aa0e9b4b6d90e8577eea2315e019bcf89e67cf79754baf1911696455b0137f3e53c1048040a3ac69ee6cec286b2368468762888dab973021d23761170adda6e15a4d713e2f83ffe564fd953163823a045669e9f3f8a674b28053c0b463f887ad7d0901b576714653033ca729b0fb4c9b1aee9e264b77a0e22aafa18b0935f6a46c518e430c34f6b034c1fc773cd82ecc0dc33da8f1ff6a29e215af31ccda7322b2e2a71bdc45246d00392f8df9d875fbbbc374404624833727f0b6604aac2ac844eb9b28c310d620f0d62f2741a117d9355956affb31268f045d1099024d8ed60379e4dc533d945456a608a0aad7206ad3cc7d92ca02b11e5e1665cbdd1d0607ee4cbfb1003d640beee0897daa3f117af82890c3aa6d33b555971d6e6dab58f8d73e33e895b6cd3cf36402994e02ad71a46de52ebe0aaa5c3ad06e1f5ad9a0fef1b48e963922ca532882569ef3b724b9c80832c637c84adf41fe46647cda209129d30a597bd4f1b90db5cb15d8e0cfcaa3a0b058479f9b58412de214b165b3cd636139ab702d070b257c3fc2aa6ceb39bb5923ad29775b7b4f8e60c971d6295863b106c0f19a97ed8cf918250209c9fdf4c66f8b98c54816bbe4f2a50297431f7efcabddfd59355d08ef40be51e1169442ccf6f3d620543dbf1a89be1090e18acb131b21acd81b84cc2d1bbd3e20b7a1614e6098c980d60fe6aa998761c9ac6d69e34046d22f26248c59109c0d14df82c0be80d7f97b63202ac4f4f34a00ce843f807ba8cdf8daa64119f682dea2e610c27a6f42c9c568dcd436cfc13e35fec0e4598abd654c17b7580c96d1e85f46b36414191b36bfebbc5eecf0ea454ba1130d295779b05ee2e36ae18ef2c04d72d6406fd2d9cfb3594d38b6a95cb33320ca5a9448d9423302975758d57d157b15617b8e8f9f805805cb12adcec4075e1efbc3077529443197a8713b719f140bb82cb4c1706f702207ef8debae5ef98a7a2e0150625cb00678a092686aea297d65ccd983babe3b08ee82ec743a314b1d5eba5537ba41ee8658fc840e292b10ce40488e51a467981029daa3829d13c72809def343d878d3178e9b1762075f926f8397a62561863c26b6617a6107599faa3c1b35eeda04d108233249d9bdc6070f0d2089284d59ce386be004c73032746d2a56867f3533f74b1c56b9e03c19a39c0c7a04681b4af675f2460f445d9ee03e93e68f3cd0faadb3d469613a1fab51e57be5c047cb2bda9ae45b656826d6adf795bd83eed8b832f6dd261bd74612ce11db74f66565bc146e1cd05ebb62270a402f8b1c535c8bfce7b047239386acd0bb366f7bb9f026612d3491dc13b73b1324fc98845b4fa514a2e9c4cf35284e9be66f2fc10165f0f4be781415777ce48fe14cff8bf8b972315a53754fbc24930e668781b77cf141dd79e7bff647cccd60b9ce447891d71d3abf69ca75cb8de28ed2ca119cdb642fdae75b055dc663307e25ac25b16a936b9933922f898c74254e058d745df3edd448be0ec8047c9782698072c78758887dd814a72ee9bdc1701a83b89ef45881d0ce29e9623d0adbc5c933120e1eeec9a2fb54f4794d79afc353a877e58f9fa016c0989661cc294a20c6a4aefa8e0fcb58dbbc86c36724e33bc4b8cc0eb9b42f53e55d08bc14c45fca6062c5d4f9deed006fe04743437db62906bcdd7b22dfff8a573eb661b025b08aa16d0d9f91264f535c2a25759424de89310e38649ddfec5f64877e3d16636693d2921ef8ff6f21217857efddd2dbd5256dded71cdc459fe192fe35d02c1de5acd1c710743fc6cddf104ca5efd7e1a6f8d814aef92a797c2cdb3baef57bd0ee52ed2b42db28b47b43c19e19513220e079726c32a5fb9e7e7c349268df38decbe37499893d2c04ba74c65b86cdbad9a253c61159d5450e93c7dc68a8a61f84874b153d53d58af7553ae8a41d0e47d59ee07b4bbb0ce337b5f250dafef0be46196616f0de867821bb004ea3b85645500ef1a610b1de645f7c1e00b2181db7d2b1da7fb7c117904239cacdd15e7df8994d1cce2ae5b355e7e4efcdedaf005b3b7c8e0ec7cb7dafb544af8d1b539241dafa80fbcafc6aa9104f6da485568415c204a269a81c475505c8ac17538686c94a380a3d5038b0fcea0793dd2cded7238c17ae02fb2979b41c6869426e4908131e106c2c8cd86b3513713696284ba9083abf6228b82b35b9bd7c9d45672ae06b9a3a091c6f1a3b896ae12fddae47541d16138dca91bb001c37363d713df23d656431a832611d3e551002e6dec672f8f5a9f7f6f11a6b6d815543ea33227904d446935e0238859b61d572463d32b050d9c8d2214e9788371912dcb61b242251a5fa8d154f6a7725cd605944b877d369f30eb33ac39a5f07e13ec4eb3746e11a0ce49ed9b13a65c91b72d5372c03f4b26b41847cdf06eb3fa313b12715519cc52e27acf170c0c01b509fcb93cdd863501b60109ab329d127db5eed9308e6a1dbe2b6168ef6806ca38fdbdfa737a354fcaf1de7de109310043d99eb2f8d4fae2e6b42f353ee9dfc13700e805bce9c4825076a3172cd7cdf36ecdd4be364b88f59623003cdf88ec9a256f8e30a96d6f0874d1b727f22c9f5863b069746fcf8d750fd034c4f55b4f9c779cf3f915a79eb962d35b5b30f0c8eaf64189cd04cadacca0efd5697808713adf5ddf6b7fda75da034d7517f512ddba158a29a604e0251a606fc45d1822c0c2dfc7d882ccdd1a9ab1c6bb1ab9032d4d7eb1fd9e342109e20bd4bdd898500658107c56b8057743697e2a1d45d2a1f0b1a6be7b0fba7be5f749006a45560fce57d12cb9dc1513e6a7c7bb6f2c67c56f7560c8952a4a3412de9cdf831ad4b0b73a33b406817e82097410a5806f19be94884aaa6895006bc0f80ef03d133e80efd398a5d149d9b4c06ac94eab7f3c538bff7ae30dc30f62b386c361656e1d74f3a0ff33914fea4a6e15528fa990bd0bbf04f563bb61654b833b18d8a58f9e359f4c5f42317aef046346e9cd802da21f3209dc77375acd0ce88d3a2e2f7a4d2dacbe1ee6773cbcfd7adc7a869a362fa9dfb82f6ca680fbb56ff10de162e6d4530b02511bb413155fe913e1e02677da0b6295c817f419962317194e05c7c68c1f999b116443ccce1b17994207164b4c06c66ff22981deff82a1556b50d5b2c164689553c539e7e1275197541b8ec59c2e161ee43ad944a3e8e70f6b0d535b56f34f68c56d60e7b7f78eac632f935d5cc5df5391b94c16105e8cf20e5c5915fb14859420c71ef8fbdbb0adbe2893d0cfeaf50dda429e957c8f23a8b557e6a7abbb780cb6f2614cda1a27950295d26ba91befd38ef642bbe40f8fc4bd251e3684238111b88bd8ef1063bec23979bceeb3207d1778776bd86eb44d0f5dd6e30b2b4c39cedc2e32490cbc536325f50c9a6b8f895748f10871f72516eb0097aa5ad244803af8ea49cb62e9b11569cd27eeee04c37ef400a557cd646e9c4758d0f7f58dee7a603f60d0a534df3bf0bda6b55ec0a81a194dc44a3ec2bc5123001d89125a88020af8f387dc416fe9f93d429fb83288e6f28c13506fd7e2053f0e26bde1d2e9410aaa45740653708a73389bd7a9ef4dd85acf45f19227ac60f2dc133d6285af29cff774544913eb6ae15c7986b94d55bfe7e41bc92652068b699c783efdcdac361c7bd0769f8b3fa03ef614991f73173163aa5960fe61d6dcf6f575e715221b0a7404655efd40b62cfecc09799273dc366662d994698eb00e09170579777941b3ed7ab13f95c14ab2a84e4cef3704d3917e8ee8530012074b7900b4e132f980413a486ba92104eea9bdc191af8cc8f0e755a246a0a5c3021c7e0561dfea15490d71e90d42b375ca69ddc4bc45dad4153430b33a7efdd9099f51e857bfff14cb89bca61fe1247af964c5f6a0a41d46381e013a6a0e06f66a3c40e9d78a16e465b0ca2589e980d23406a033230e3f7e05357c4f29d2dfcc5839776f87519d5d2b8a5548a8083c6d2148b87850dbd6d9f43b4985797ce3712fa7ddad5d917170425f4e06f9e7f3f5553b9c17ced7c1ba7d54cd365ec915d6f4214361509831034c91c00e3a78529cd9b51d4678c1c48198ad0d7ad618c0f3fd8a15741e8eaec96b809dc26e5f0d0634d1468088497bbb36d9fdaa5d4bb7f129fd0fc3abcfda336fb2ab1155b5e7d8c56cbdf26a193c6681d35d7c1e4db2ee8bab4a2bb28ffebfa02aafae842ea10a80add98760ff0f96c231d9eba5a7b04e8ff43647ee4666ac841bad7ea12dd6c9dc6f1b6fbb05a5f2addbd8305580b59daee15d99b16aae3a92c28a732e262a9aaa57922fd55b5f72919ee45d5ad4684562772747d8d37f9c72c36a4d24da119b0eed5c41e26c50160c47dbc9f95779b8654de2209fedf9e1fa8985f8312bf35f1fd12861f9d6de2ddfd7c6536764fea050726615c020f5b05ae05135d4f0e77769e9e8b7d5b488930fdc6677e8e2b0fc5bed1e0a82c094950f907ba7091af465e179c6bc184e4d661d5f6131af323f225d54ce534c63f52b73caf6d6fbcd4b08488939ad14db1d1916cb8ad31d79eb19f45e251a053b5ed350a27eacf36bced8f8a8f190cc8860402c69bc1787eb0c72464ac64b5c7af5cac66e7bd893e1468a0e161b33720c3abdd4b74eb2a52d0a5dc59e33c7c1e9d59ed25420d232c81bf1f13a8cd1fafc1f5878c5998a9257e0737c6eef28076c37badd6f3fc30dea136fc5778eda7503f25df5d75dcd8dd70e9bf7df20b387b3adcd05185391f23abd38d2b6ca932414b5f36374e17868e598692506f264927b346f0329c15f281b9bf36d6cc9a99c3521db76ceb5746b477d99ad529846f34ce660a206b21c9c9f7c3c05300831f09944f68706376966b28c3d7b6e4562d1c9a113d5dc805e99a0aefb565fdf6d813438e1e5b727d4b4d2a2f99f59bdc6608f4d576c8e9b0906e92797245f8637b65ddeedc90e62c50670e6f58aff4514fa3f5145904e9e134cb534043fee6b7fbc454cbb64b4c2ae870da148f5b330e7e59383883469f3c2c8ab236dd0da3d176f0dc4ab66c2ca325f14ac6ba9198d5a4a493462d6c222e2faf3e1bc14f6d4f83fd4926169bfe9bc10ad419f9b804299d7eeed45354d7a4f2a32de8dec5ddb2071d5f9a9c4f6f2781935f2543928cb84ef4cc15427fbde98401cc724ac0608b1a2d6fee1e4d5276c3f11efd775c469f1a3273f3c468da6646564fe39471f1cb700ad8f807fcbda8c47026edad69e8331d39107e35907910f12fd91c70d24c7e7e72335dc89e08472d6579610623f36cae7869174bfdf53429c2b7d1a03bb5d716b847b7e680634f6ab6adb03a261472f09d90d702ec40861ba2010343552c3677738088b0197c56d6a0dadbbe9220858f9290efedf2d1d6f3e04f40cf2d601d1da0a20340ce88a9c8bae187dd3d48890af4da11233f6558a2d52e011934345494cc3b44f7b14dcda0e73f47dc4af340207b3859b3e8c307835698ac20f08542fa686b49bf440b34ed3780137918a78ee5d515972208a7554290a48b5efe5cbe6417c9174dfb3acda22f9491f933d6cc93ecf06dc0379482ce88891a0baeda1b304b538c82ade9a5835b3dcca0b116311420f5d6bed45a35c693d09bc4d3c05c7d36bca5c34aa2babf96c712bf171501565f46cb2ba2f08064eae9d44a95749379d97e2b8b388be9675c0e270bf3fb93dc6fee14eb5d802334dd803a0b6a924ba333a42053f3be4882e72b832d80c39adac3fa779ba38b8800b994b4c89d5d35749e41a120862ee2e6fe29cf55c7d3055f45b5436e1d60d1a53627671b9b4e6a330d9785309b62b192f46b9af13d9381272da7fe69f78ae477ded20c0f0e73f7ec1c5769a1fd4d680987c546b18546c2676d7d42c5583a572f4a94ff0b80bb552c1c2d9adffe444f4aab70d5a543223164775662d73c36e9e7c1d2fcc0995c1784da793a445b324483737c86def533e771cdb8b9547632fb1a7fa4e08d26f79e863c8d1f8e9f55eb2f3eb230310b8e293ba2b4cd48d574df7e860ce911a28f3a8798921d27d11ea8b484cadde2dd83d0211d486171c6beab26eed3059533a706683e363448ef023c13713e20585c4f3d109d46addbf474be1c48d3f71d0236094e7c343074668f5dc84f0654de675fcab4f246df8f76fea41a7f2873079b4e37ea2130070cc5a379622283f190fefdfbd66df7d5c95d80ca5a11395e10b690abd84e26eda6b7dde912aa9f0c90866faea4e64a830a6d4459f9a007ad7e47a2d793fbf861f8685cf21211ac513850c5d2fe26f05afabdbb9ad8d64b70d55bf4d95dbad87b236a5e1db05f5a5edd5b27042d4e9e784f54bf6966c70be1e2f2a74cd227256a3475d4cbd43288fef7590008e0d5981396e637305ad0309242b4c5cf4aeae037bef0f52050161e9d85beaf1d94b5c3298fbcb1f66ffce7f3a35b22e01f4422b613764170f01623885de923e68bf2c2bd6e5e5d9963217a2c7d0b79a460f53f2a774360ca8c69b6f85c0affce152a14a298fc4f9a7622c6d03a9cd4574376127092a0a5938770191a1a8b983ea4031762f70e342006a03c4011b99ea41fd20b0d25ce9a178072a9b1dd38657a8a09d3f2e4227a3c5f4bbf555a97041bdf7cb90f624b2977dd8e63b1ae3b32de0cf6e94dfe714cfcb968d569d49150cc023d9d2bf6152eacedd5538e0e59cc5db8f2e0665f87da28e53212d0e90eade0a72e747edf4d516011c7309046e5509f7d711992904d0c64fad23f70df638cc7068c1e47840dee896f33113c365cc7e492bc01aacf7fa752e9f3c02e2d1035035f4386aba1cfeb03c609df1add61d02f1ad6668dee60f303f44c529b832f7b36cf526585046feca377bf36a2536129deda276725a23b62cfa6778b4de8f8163daafe15a3d815489732fa3a414a6e2ad80213629f92d67cfb7b792034ff13c9cbf1cfecf445b09065a48a27783120683750cb88986f51bd713bbf2cbafdd8914262238a85ec5c93070d84ba82b1325dedd513cddf26b78b415bbf8b4d79613c52e0b92ccc2bb5f31eb6452c6780ab7cb001aaba0d1b5df245d13db043df7ac3b8750eb20bae8c2150dd677a9c72762b68845968488dd67f13163a8112261e1d158023fb3e74896b12b6595c7d969a8b2a0cd96ebd1ee5a600ec53ee530043f92353b3f6c83611cf8f626769a7b246223b80300567de5ababe17ad7fb1e62dfc09d40b27abb3e2290bba9824381f999a5ac3be7e022333eb3eba7087ea144b7d149b8dd2325a638e8c003ceeb239de3d8866ea84ed99be4f55aef2e97780cb41bb69fa8a0576bb032af1a6926d8389db97f37ce2cd1044dacaccbc46b316222e2323f625f36a31b41920c799f919efd9421188eb64546116a6d44008ff629ff189485efc299bd107a51d49e5279c29bbdba41a0d5b25554a9806b362ee6fb10a0b775b6b02a8490c40e978597ca69158e5e559b1bdf8b30c3b0a75f0398504f66b7c6845ac704c9fbb3fd13c01a9b64d063bc3349ad1a480e727463c48e65254aed2217baf565f64b666353dc5c2cb06e4e88aec79ba14e76088903e7d43b7e493121983d6ce84cf6a8ed2ea91653a732ffb704d62817b30477ca447e1abc0652fd830881c224826cf5a985cf0f21d82992f269c29f741cf0898c4a36aca363cf60e1c5ec610d78fdeed7355cc340855410fca3f555df41f1b1dd9bbbe5f5a5bc183365900842db3eeedf28baaabe7c411d9b900325142fc0a332fc018b7d1d1c37e6cb81202295620e1fccb9ca0ff0810aaf164739d4808851d3ab14a44872193a524cb20323eff47768c5f9c0c316c5a6ab39bd16758f223f163c271bb9ae3e5e58152dc5cb78e1a59af72f755694b16ac291495fe6ecd7f726e40ab92b1e0472d685ffc2c7003e1ade7721311debce50259e810cddece87c59c0bd980ad668b6c688d49493f49bc652c34dc0f4246131703426331222fa8c16ad9f08035609fdc375aa9d4f932c3d6351d495818a93870c6d763cd4d63eee8f0384ca3ac7c8516dc763d6a5efbdb76eed8e94ee98eef794dfb8645dc3d01e1dfcb99db8aa03eeb7ff951056be1c8b34279f257769a0cfc847a94d641f318fd63b51064901468fa2a782856038b2291d1f7d5dff36485981809a8c23b3af003f63dd787d5d5b1c3b2070eea2fc0662483b36ccd1c2b0310419db49e1857c7e3e4a36c793ecd8e04f22b71dcdd44f0c0a22714c4d940221612fd9804b7a96aeba886e1ad49c437b92b68f5d13b727d54e40a7624d454e7f5b7faa25feb6d70ab73c9031a080765389f7fa924dc98275c07ab64ba726c4219aa4998e019e87fbf9cb622a133827beb4ccdf0543103d3a3cd5acb3a2e21637fc019eda9ff805e76b7cd7e0b53476fb111dacfa98e7f61945d90cd40dfff5d799cd3f2aac8e463495b4323c50932bcb9a0e9294b56f0f9e51fbc17d4ff73e3b4ca01c6da2646a2e9cb853b2c59533fec261785b3d6aa038b0c25232b5e760607b837caa1e5371e8b6ee4ba9eae7ea0293059b0a505a2f6712d0afb8f7797f7ed1536d343a131bbcf1588f5b423380fee1c48502d6d2323d098963dab615b32e47c2f7c7a40b25d86ddc261bcbdcd153e3765aac92b49f29bf1cf93bdd83ca82977b7306cbb2eb3a84340a4c61aa65772b7a9e43b30777a62f53dc2f6400a315cae85169276ec4b618f67333647e119e9eb58931110f53c2f1d6cba105356205f0bf3bd354a0aaeb3d22290addad9f42eafc5f475a54631006c7317ebe60c6546ce1278a594674e2d4612cf7b305badf209b6624f9d072521218536b7e53981a56d21766fa247474580f52fb3d2b7220a91ba33593ba4a06146b5175463b8cf826db2eb8659de6951010c193e6e706326898a878ce70f32dd6854e3cdfa39bbc1bf483f23d416e1b7f1b98a13c5707902bf2ed4d3ae4ddd634ad0f93f4b5cdb45d3a59b0c15654b9b757d6f5125524e03c8179d44919bbd92735b45875df8a9331277144aed0106c845c89f5857cdc3828fb62fb9bfa7de7ad02b8dbeb373b5cde774f8d0dab19a4b13a212655574a217ae07d600820f9262f749001e86d079926bdda9d914076de0e1765db9ad779c899573804eddb90ec1f514772e065f183819646a1c5f09df20bec7169a2b2ea32b10dc7aefa72eea3dca735a4e0ba50fa98b2d70c63e5452179d386c7925934314b34b779209dcc430012f8783de5354bd78e855271a55d3768de95a48b43575dd61081ff2d38eb39b08dcfe5a41dc81d05c11e65c096cc6eb1c1059193b9946e9b8f83dba3f03678cada7b636f0357dce519c4c4008260f87f4ce760d0a99029910030caf5f3566f11067b328e90803f9985ab5141f2108189405f0b65bb33e943266e80a3535890dc5992fae91abec5749b1e3a8fcde88cdf43cf439f74cb876a99e45a0c8b5721a0cb9209413604fa6957a7384dc76d9f359c866d8091319d0c16f348fdbc2d4d59af34247e96183bd4a226dfdaf6b0388e0edfa6df5627c6915f7da39c6554644a5a417a41c169eef7eebbc4753bd9781b2e4352daa95d086c39587442f02436f2c98e88355f37c7ed529d47ac0d284d0e8a0c1c7652f3d65653cff24c5b5f7be5ecededd4678c48b29ad3c8ab6352862d9419d5d89b84523baa20fa63debc561bf4ad851e4395feaf4ef6e237ef267defcd4df7d0ab188a068ef4ed5311395dadd9a02e50a928aa97af17cc61d3a249c6347c7bb021300cc8c0a0f6f6c98732cc2fe47b1b5e1b67ec0dd7d4cb5471b41444af768c172cd17c79784c2181eeeac79311397db6db659e0d32e49fdefa45b6ba2d32d669ac1238861318a1a71e59aafba45aad4747b7de6dc1a90137615df2999f1bc410bd388a5312ac9f4f26b4e0767936993a7f422b757be2f3ae5ba3da6c642c4a390a6ddac7bdba60c386daf118ed02d62d081f3c4d77957f0a093e190464039206c8a511fad9db282599bcc362823807b24d2b211914b2440f939ea53c1401680ce35127bfb68386009763adbf3ded960b98a73a7cb341355adb642de4dbd5599ee900addbb152fc27ebbe0e9e5ebd8b8110e869f9b1274a6ef4909a1edb3ef5cf5f71e6e0c4a2768e754eb5e514d908e7e89a6c82cc60ddaf9464d9f16903d6beaec3fdcd7c82bb54f510710a5152d3f5da0179c503b84c04e0a532b9dcbe8d1056609b101c5b24f7ab90181c6e78fd63bdefd6fd1a8f2a55700fba1d4e40adaa791c8c746add158aa5a681934320972d19965f79c9dc3dd1a0b3820bf3981c6a9ca7b7d73b87fdc90663b79ecc84a7646802671f8ded740ddc9094e8243f42e365a4ae3a90a2141d890c32c922fc4d8b3fa99e5d7cf986dd6ed0ecc29b557c0d1c6150ea8bd9b885ff643b9f4a7e74617bdca1b61e08811986fa0e49180d62b39ae08903ffae8ce361474d67131c95f5bb8133443f1fb1699c8914b692eae4e0f94958359ad4574bdb0c3b03d3a3f121fdaed9539933929dc7119656a6eb8fe47c6e74fc190a64740ce573f81731a3c59db6d2a8bb5ff16787af3f3037bbe1d379071113df3f3f7c53cf572268af3ceac3b5879d175cff8f2be277a982f8eb3165b148a5c36d011f177ffa2cc8aef35100d26448f80b2b53c5d25d15c501dce358f0bea0ad1065644adc6dc21dbb648693325687708706e4e254d1dfdf26e8c62a86d03f625a6a4cb511628109ed78b10ecf648ca5af2845c4978e9b24149de83a0e28f3f782e70e0f8173f9d8f90e73fb59da8722da7e3ba76576c14728c5de4cdc49c33034de7e7edf68bb2003c85f226db463ac5c58db6e0027e3cf52688ff468f15d1179111451574d246fa66e7f35528e45d67467862b07c68e7a071fa0b2e059a8334ce1927a5a230d2637948bee69d4f355c9ea57479a9b810b4d7f9295f752d40fd3711e8c6c33a5589712fbad5691ebaae48ee99cacd260497118dcc1d1f0c5b7ef6655f81fb5fa2ca1067bf0f1978458feef6e503a5f3f5fbec7b47066f2f02162d78bbec550a37debb7943fb2d6d687feab436561cbea0e855a1e141a5ddceaee3799ef87a46e46fe1b5c45a084f6ea65e82da5e6df678d685877b826b6c1e2f7e1a2eb2f7e8db5a69ccf1d65741e32827914da9b00b0af4c65925d64c4c43439ad7e657ce97ff7f89fb11918204d9947321d1e9d7c46d85435d588a6fc56e935e1dc4e15af4d4ae2461b30b2c194c3b656bccea05f5c6d4792a9614b8b696651afaaf36d987c5ca555b14915e176d08a51dbe1b7e10e05e8be57b66054efa5a186cbad9472e686bb91c01fbb185dec12feeabf47a81691c8f1b8e623eb243adc77519bca9afb97d3088c1c44523e48902796102c9d52196ba22d8ab49d451b0824bc2a2c78d9dc83fe18e58c80065a20111e0556d6d4a1b7ffb46386bfc42dc3ea03a5e9a2d2aeb36362b3ca13141881151b8cc4fc10d668ae7d381b0bcefa9cdec14874ebd35103584559eb91d58edf45bfbe25a77078cce9f75bcd436b3f536c09cdd153e874197e198dcedfac07639a9aa100d76ea92c7fef45c854043533353b081c91c98fe83bef0247951858c18a775727e1259ffaf4130e345a675322bf51fafba5afa1183d4a935c92c8ffb24038c8295100818cc86d1ecb14723debcaf97b6089ac383cea2c4dfc239c555a4495601241f46f417fefa19380cd9060cecf85f8410e125bc8f5a8551bb928271457bae9d6f008fb70019811ea8da34ef6e8503e87c41ff2fda98328780b743ea8852ddaff880e0cc33151da36d0c1a09a28e51d7c919b6f558876783b020dc8ca412b6a5ec07416e63d08e34b41d92a17b71e75789d80fbd3e2407f2896cec7663120e844f18ad470794018ff95076b0b1d44a1769d2560ce9ee4951fdff1c0bc0359e18b8014b27822b2700153087ca16ac04c82b7377005d8289ef23797632a7ff8a57e4a996762a7dcf5f0cd4a3c24cbc519a45ba7f3030690060af5a954fa082f38b756f7296c9ef14daa632375a152da67dc3ad96ce39dabf17526330b2eece337baee2fc35027953e30ea4bac6a38f2594ccb06cc94e5783c0dac5231e08fda6e1a663893a54cd6bbd91e0c301f3e4a936de4add89eed4757944b9732f8bcf57c4c305174b4efe7eda0cad44f71a10bfa196cb604d65a0b6b131de90e3f7f331f09c7812ce8d61874158cd0e72ee13c7d755e32c4409d068ce5addbf1e9e064cb492aa7ec532b61f93d2e2be8ffc2ee31e514f671703b5bda2cc6b1852c521cb9e45f8c7ff8060f9d4fbf04e988b4b3a6bff5f3da81a72886b86b9633759bcc86019c8e0c760634b32e8667ec647723a1bf493785ab16ecb5edef958c07f4cfc766b25f082965143e7a8322a90c37b21f5be719f9f25308ae266e461245afee70531dcd4b46745a001342cfae71a30a8f4e36cfbbd963db12ffe2d2a202351010e5f54a49f3d841681a5726a5a400e098800ad4565b02df1090cdb9e2fcb896da865cbec2c83acf658e172b4c1c7347eb271da31972a98d0d9ac03a3e4c5fe20a795d15b0d27efc4a5f961b7ed1fa10d200fad88315dc88b0547699bf265cb9ab7d69e2b9be97c11b10475912c3ae088131ef4fa518f17d4ff38f0b2a3c10427c61022f050e98f22f61708f1425ee22f3a65ef05ed25b4b8790cd2051675afdb4c50eb0f94de7a934e533e3e51e5c200a6a0c715e88bcb0e8a0023cf4c3640dd6688d74617a4329838e6ec2ce0cb9281b3783c44e72e0d0f2930fe203b3405f9f9c69d2027e08d59d2f0e409eb08fd8a79f13e54b5a2af39c1dc511bfbca53bffc214a7c0b30737b611206d12d475d4faeaf36e49359eb7af2fdba9d17fb694b40e79b6dcefbee5426cffbbd6c0d702e1d08e485a103e086aebe1b2f9c13694c3dd3da613613aa0010b2afe1c6b86dac7f3fcd8e4a9da31afd84e30fa2751da85d229f74fead3e82d923f3cabaefcd170837e42fda9c3c0339a93585ff3236cc14740595ca8e634e0df9acec95f0f06d410985954268b618074337beb17aab57bea57b6748c1a8dec1945feb5b7ae855cf72884bebac30cfe2b0c1139b39936879cfa116b5753e519e243f4634d3357dcce109a83d3011c104f8c8ff14c6f7d2fb934d8d122e4f90d87162dff3422717dc6e36fa054fadf3105c333d2b4c4e8bdb3ab72d4fc8b1e0d8c6622d7b8c40db641442ea73dcad5642817ee63a715ed6026f274aa3e9dbbc438fe4f0429bea56178db401d5845eb996ae4daf08d8c4d6ced3a0ce778d408ec0a8ea055e67558858650f6ff7405f90e8e1bc92ea69c95a51893aec6d19408fcd5402eb9554bd9076751b40c6a758f28af417e0667b423357524a6300db084ca8f45cb6344cfd713ea83fd13b05d16905802f2d06a4e3187800d8cbe5bc00aae2f21512d1778a74521bb3b59e36a65a9fb3e9b62dc0e1819c869abd32bb3df0f9d66f64235ddfb5bd9111060b95cccf5f985324e3daf36c5050fb2b10bdfd663ffc24d266d8691b01a321d15bf3ae8f05a4a1b55a69c74a576de593418dfda8f151804614bbc3f4acc4a9fadd9a9b9f44e3bbdfbdb2805c1f78124b18f3bee509393e9d8ee68a72b8a844395a1317a6301a38d22c5183a4036aeb32d1a438ac1e19ebe64733dcc43ef7e4843a9b5d2690150edc6f1dbf3aad179e282bdb1138a58b57c3a2d451617391d5f11b39dc528d40b9e0e14b7734265793b3edc718b086833df1344cd6d8097afcf94e9673bfbb104b1e387d4153e7391b0ec071303a3c408e658f70f572bd5372bf702b8005c3dab5b3dfa54ff2c6080c614d2fc7d5c4ebe26697040f4a3efb1073a7ab2e65c2525a5700755c177bd40bbc9d4af48beb8175ae7ecfd650d37b8155f514223d9ae5ca707f80b2bbfeb9a8e18e17fb7887cf489b526596f5da4d98d6bb82fddf99a875dd168d0b80ced00feb62d0ff8489456540420d1843a7926ed3d75946097809433377b93f8028d6e11756a5946de269e819e965b4cd0a15ff2c3de6a2287fe226951c343b705c3e29db5780d07acec95a1a6630762d67e7be9197536cddb457d711c1ac3f09ab16af356bbe0060dc75c8ed8df7971bf60b2fd73093420fa9d691d84e4ad79d139abf15ab2b9bc627ea17a1c1f267d1350e03dd7d54b0d0a238cb798fad74e4105a3b6df4f237a20ee5bde67ea66ac471d8ab3cb0ae97dabcd4e3563722742c81d64dd59e4a4be2d49d707b622082ff46715a1812e144797907cc67b6772b6664bb6c63b16e3918b0d15e68d026f48b6449f957214b6d3a423ca6eeb0388f8d9483b688efdddb0e21e54715280f3d9df4441b8f7cc12c8d430720fdc37f3841ac6b991a8785276b7fe7f8333abcd75a8ffe955ecda37c3c321ff3dd941b7055d00d8562035fa158c7e11746aa1332f36cc9100ac2ee14fc722ba3d38cb87dd45cd5553803f48e65d8ffd8b88ea5c6e9f0393b3404f5518a14c630e6374189f50ffe2efb0ded5212d7197fdcf5d6b1258a38074a8fa484d150219742569a0a23f73ae6813070baebb8c31413b460388fff67956d63649da8d7af1fafacd3678d06056ac87d6c63b0457d22f74b06521c91287f117ab3a68e15261aff6944d4c7f1417aebe1a60509f4523d56afd573cf3a28348aa97db498e8fea3383ff2e25abdf5bc8126e01a9f9d4d744aebaf59452fc97408d4e520a624f9ac60b5d7b57e4bbef46101cafa610bc8572f84941f8e46dab0a70d2040111497fdb93c4a14f8413fa808d6591994926d5f16287f3cdc7d6c7e90f9c54258f1be11d5d15b6fb783033bd0c1baac21fefc00f9b28e5bf1642cf88d913f9f9e477c9b206184c353c15b0f25e998f25008c8270ae88c1a7c7df91182709cfa0866164bf2dcaa0a8373dfc286e2baf78baeae83812e3b97e122808a21a3fe96ec240ea030b07496e8f096b55cdbeed3ab4b288f9063507ab15bc988ffed5a2f197c85ac24e0a8cbec9f770f74848f064618df2a70ecca4a377aa0b6e78eb30efb91afca0e768c3fb23f5f3cb53495c25b561d16bc8416b2a588be068eb63cdd6b520442409429ae29235ee9ad93a11b36cc0ae354908c18ff7e9b984dfd79e3f0e03f065f672923f4e0220a99587802e92182d5f9e262d18d6a8fc1a978d7473d00772a701f35365221208c5b623fe807715041fcb073f803e0c41c668035442229ef947f60d2207de89f568205e8b93e96337efebd16db28de25ee6f3119e50bc83b8a601df2f3484e8b9d6326fc3be5a2503fead58ba03a8a6ae1337c2889e9c4ec2041e113c5a2f465c835fedc5c420946d48e13eacdf43776673dffaec1435a48055811cd91715b2874e74362a578bfff1a929fcd9b23509ceb4124e24d2b9d0417e07773fb779863e73a0cdf80acaa00975262bdce7a3bc471ae9b19fd9777f74ff09658582020bec6b1ed76beb9b70af23bb95aae885c4de529645a1fb4ea7aeab3a3639f664e2a8ab2aea6018372d3b8a45196623f198ff93291c17d6cf84c33732b06f8932a90d11cf82b4145266207805af1d143e36d6d5286383a648ffd491f4a78a51bde6b612e513a55a8119d40bde2a1fd587fafd8433bb989fc2b046ee0bb38ab992836a4a70bcf923baaec222a4d3d3c2996f17539c99512948244beedef70db1b92cf9de2c970e679060153051e28487d0d28b0405ce7de6be970887d46dbc4899b3fa3caaeecdd38d0917baf8f0d6166e495d105c801ab8666e5d2decdb8b3ed6efc6209cd61937edfb1f4769d5bd6df1bb02a47e13c3cad212d56fd9fdb2c03399eaa1787a51d7229118348e0cdf529cd249914a1cfb28eafdf11a31373078932c520e60f400970490897a4bac99f5966d7c9deaa2bfb8d5b8a4b4eff93f237bc0558bc32a33ed1a121cf22cfcf75d3517014890cc071fba566baf0a30227ba6f6f05593549c0d1e8411c9f22e716e5f52d12f7e668960f8922943ea38d341d0c34f2b366bd72435be4127df1a2af714be16686df58af57d403183be5a856a31fb19da57a80e00dd89160222d93b710b067bd81e579c71d7c40d48e537394a2e9069f10bd5b38f4cefe7beb41d60d53ddd3fe270e7ca2ac658761a01d6fe958b24460eede5f6c859dd36e3cc1b54dd86207a69e8bea3a5e7ae5de4df56f962e2788f7a443361a00a70f59d771ee2f597778a763ffddce0ae0229ddd6ec99f0a38d86b72b8fff214488cafc09022ec7e24e32772bb8d3f6513068a4b7c77042e0849a56a00b8c2eeaa28fb57f65c83f194584336a0b076888917a6d3d782b152772ba9b08c7e3fe7692646a0f972c39c4ee40211391a90ed8df12f42e2c5db927f3248f1004bd3b894a8b0acecaa6ef58ef9801c4cae866ced1f8db7c640367514469d9f783640f936bc328f68715e02b9a0e8708c450fb28e03e5268f30d14d775e1c4eb9fff9a2eb8704ea41545ef5169196a52a0419e6e3b98c5f100561a98ced1001d2381b6cfaedf5ebde681aa947b4ec82bc62762eaf9a254cbf545dcdbf8b6c43759461edb3fd8eb0f1327514540afdceda672cdffc1ee5a9180c9ce1f3c83bad45ff3e557c69fd9606073379bf5f89b9b9b1deb68255ce33640200b4cc312b7b5180746e1d02bdc2f67732c9177ba81513a46e034761ad3674df650d40710849d8774508ae74702e32aa341270aedd860916abf3cfe8f42a7129e6886ff0abe805d8ca89710705e634f62ab03d2aceb2e1ffe13272cbee1e89ba861c5ed03584acd0aa0e7218d956d86a58816b95a65e6f5715c3acde0584fc499f1278062404b86ad07c8d17e59f8bfb4bef8c143cef2a49e27ae4864a3ab39cca0d081673dd0cf2d3d3c2e8dd98f675165a6b7cc1c248618c3f57eec1e419a9b89cd9391993ef6833b4329beec2bb9708bbf19e71c1c87885ba03fc50cdb3a1d4ef9232e5681ca5f0f0cb6853215465f3b0d4a2e7591d7f843ba6361918a34ee988a5974e3bcf6f56e43815bc2165fe3665fac7e5b6ed40dac4139c2f4be85f1eb8656c6bde9a67a84bb21f516fe6cbdea8c10b30840be9f2632e85f205ad940e477609da37aa92fbfc3216136a0603c8464c7aa4f001914e64da30ff4331d8486a6df46b4b54bf0ae31f6628dc54afd8fcb2adb2652acd96f55c625b4de141d50187d7f34a402ffdbccab22ab8335f15ae08428709c3b88f51e6bfff31df744f2e85ca858bbdeb93a0d3f7fc2174e54371c5b9199c4bf955910597af027c80c4b01efc8f381f50b4c9562a2de2fbc27c18e3546791bd0978955776c799c7f6e988ac08f194490843145477ce45dc67fe1d26f15213da00567525af295843f96c2e7e25456383a738bc3fe46245577894ba953d907dff55e825e5534c602e6e63ee6421ca8efac5e2f8a913e5ece10bcf32ff5e3aef34ae4cd10f10686c3e1bc1bca62e7dea37a5a7c6084d034f1802eddb6464126a7a2ad6004bcf629b8dffb666d461bef777686b311248b8d369de209c239b3ab492dfd178bed4012a94463c8627ebe518461a6346ea057250a046fbacbb6c9235da7b44f05045abfba16903940bb24fbe9886fc770763d3b645357ff4260ba5017f1fe5618e292ccd6ddd646314322c86d51a1b62cc1de9c7c37a1ff1669ebef0164c84b1abb135a5359c5d426fa577880c5d7a513b15360db810d132c37b83c7397ab4aed4471650c2a9026e1d6f9a6cbec017bbe1b41503e459a13d98f4b2d2aff2a93041fecda43983409d1d3e1859700ea3b5202b781428431d09b37f470abde0393c10bb0da57d3863e104baaa50f8dd50feaf65e7fb221bb2c82658861b8fdac35b053c09c49d929ff4348f7d0d69c600027c3cc80dbb069e694007b52b553ca76d4e49c71e63a04da27f49ec69860c257c26d267008bdfc939d4a1ede36070b28b5908b98f1c23033b5a02979ebf02b18387ff04fa706c915022140296a7fdaf69c107213e6509ce0a83df433050594763943e5e10042c698132f1d38915cd0f33bec2b5f6634ceaaad836fe88ac2fd956f9cfe0c125a99400cfdad31fb3c8c2e7117e3ab53d3c7003cf2852c8c0ffb5eabcca9c7b5e89aa8211b7f0ed21872039023600b0ddcf6a7767b201608d3667ca7c451c7f65e4af97287f1a13c02fc867f849136e12b511fcfe5d543a077321a92689c77e566fa156d0b9c39c7d0209f614a784eefc470ce9c377cbf28724d321a3bbfcf5ac232abd6bafe19fe372e4d1fd732bcf80e74946f2640231e392e7bfae1c1eec8e85d840bb61e1fb2666199cc17ddcb5fed2b39aecfa670c7500f109962cb8f1f4491fb81a92a7275384b903fcde93870175357e40f60d1f9c9da5d037526b1dbfc19ef8c86b5db30bb9a689f6f36fc58b0e084053547136c75e08a0676ce77ce4bbf52705cadf3428c9d8c8710d0081b532f1012572f0a625a7789202e21fec5da12081c0993f69d8ccdf618ec8f33dac120bd8762a2611c7280a9fe1dad18b0159a7f026a87b6ce2e17882048205715c0e069c6fec794fa0a803f08ce915d0650af0666d00a76ac4748673d3fca5465ded8f101b59d35e22c377a8e90a97b5212a99fa73f80198851c4cd7ec543d979cfdafa28406c633f5a2cc85678d898e92cd61cf0cccc722ea1f5c118f5f58c70c01bf01f6f0db6c779cb75851f4d0f17c799b8a6de033cce4c4292521adcbe6f1d5f4857f48450dbb9c440f5e14962c34fb09f57467313ad9b4865777329798d2fb4a10e5fa680d3c7de77d18bdf762b3ad4b72bd74baaf43f9dbf3cf19260f3d4d7542fd02076b33d068bbacc8a7072c128f68ac513c3c1a1a23231b7a3ad5a95a10eea267a1d1270285eeb441590e7bc98071744e089e805502019677567d8f632edea759bf78632118a24dca2bef6fd963a6fc84420c537c5850ed6cc2cfac61c39b6071fcacd8fe64cc02afbd381241cc809c9b4dfadf5030ff5926d6508ecad482f316bb36b72bfed167f9183d6963b98946389508bb9d2a0881413dc6220fb18eb5dc86be90b49a6b9ac94f6e7230e69f147d6a19eb91db994aaf455136c87cd9d70425abc4bc526eab8b346793a748355878010957477b3bc03ace5a4206086131440a9f8a96208e5a43a375b497e99c6b421c5adbf95f86b186c6d9caed8741264b504501ff871034e1f147d1cfa428627d04aaab65cb6c685d0f80962ad23698b3dbeb884b45a1e2a65c7d6894c6a128efb5da73c22394ef36cbc4c5373d719fe555bce9ed1ff47bb5b36e9f4deb92b9f3981df2ad3786876f2e90806d791f5ce0336b9cf4690bac87f87db44d4346b1e59984d752eccfa3213e3c266fba3bc2a00d2cfec543f8e380ab61d3e9d4ce06b9cfc1e5c74b0ad26c70afe76ae04a53fb06ea999bfbaa9c2f6feb75fe3e4c7004f60f6c22d924b3d2744adbf7a7a8fdea278a12977f87101f858239dd0bed2f09b61dc89045ae1a017ab83fc2897c65badd60c790ed35fdeadd433def1eefb399bcd4cca3e8f3442ab6c814749c19afede61cb362f88bd5a9a41f6d83245b55e58335ce0723383f37ab1bb06391f46fd71b80bc7bda9557f913ccfa97c77cff09ae283e2a5ae4dc4d258356368c3ec1637055430eb117137cca1d9e9c999020d9a18342b65a539e595ca98b6c95cb86f421e4b10bee9d410ae8c7b45f7ed6fdbbbbf25813700f55ca696223d5592838473bf37df15911c4cc8c5af0d398a9c1f070bb9e862f19e90843969eff999fafe0a22f226eb0bb99ddb7ca4bf7e1a0f79ed37cd10dca9b4ac983f1bb074303043d98da413cc77e5560fd9c3df1292ac68e0b822fa14d331b5b23ac42c6a78c0b5562908f0e2098f24716ea24d063e6832982ef7dc990c0dd52340193e3fe6b44107a9e8fbc8805faa51d6b54b9e90bb6557acddf198bc8d9db4665d4fdd134341b016740288ceefd473a46e487f87bea163db118fcd4c3d59915f9cf5df8f2dc693076d473ce3615580ed685da3a82ea7a7540f3544039119d97b3fcf9faab26526cae54ccd8888c070b61c8d259e3b8553eb26eb57fbb37834595720c067832e96759445ccbddc7dd2170b6ce9d3774c8687e04bbe311505c4124ffb63ae094c758cd96526198cff9031967175f3ff8e00d65f127f5ef2acc41c9ddde5978f5b7d4c79d6746b5511ba1a830fc73a4034961a964c0fc0e56e33f7be196cb43726e271f01994265df093f090b1ee217cae0acbda22692fde7aee6571e6c371920efc28cfe7e1b5241637bfdce38872465730c020d848840026206f371270697b3f3c69fdf0ac8af4f8f2eaaf958cd63bad84d6fae80d93172c46af52b13c1e02b3aaa423a021581f4adc81be0b01455138c83a8cba3924d323c242bd4dbf9eca3d047e4531a94a8bc9d23910c03bbb487f3dc7fe58a282691504698e980ff26d75a6c171c8ba3e829ab707d33fe1ad8f5b3e86a112d5d98cb6c2558591df6a944d5f52836335c7d2e619ef82853f5ed27c8614538a20fa61020d0657098641034ba9fb2d7c010d8f5ab300582dcf32d9559641df8209a425c74a6a2ad58749246c120d1ec76060403d5059476b10b30765a7eaea1b2a7751f895f7f219b1796e6c717e77ed25e0ca3c8cf7da0da46dd43dfd273130733abac3ad97d46ed294e277fc548b30bafd51229b27e7c53d998b030ae0c94a36782a1fa3bb431946083ea5426d974e4289bdb7b9a2dc67c51546234d9f6edb86b79c0c3ae0fd8c6a817b08b2a7bfd5307c8dc953f5555ed8e601d43618d76fdcda0b1e3b486b51b0cf733ae3cbb6dc0c23e66a3bfeaf89339d7f27d5fa5dc4ea6986578d4867b429568a3347887672c201313fffa2e1d5f1b152e08371c0da76ac3840f074b4c63f26b5dceb88cf0af82d177c3cfb09ccb42a688fb5b5f8c6632533a2fdc1c9f7d19978d954d9a7f3c2598955343ad3162403d4f62b7b937f10cbdb3b5e5e7cd2390f158428eb84328822d56663af840ffc3584b07223b3822229cf245c359636f659a54b09520ae2efcaf1d7983929bceac06f466bd9da33fbf880fd37a736f4b358b2456daa22e21678c09068dfeaab112f2c4a44c8816ff4a60e63ceab7a053ed433cb96a9be1944adae03f7c63e640642d2a9cfe8645e3e783db8eb2ac7ba83e2fd3fc76b4df9f9717b77d0d0e1fe423326d96381e5987fc15079a30c0b7b2284f27f3f0774e8b69c8e04281b4216bf55a42d45ca88b062c9fbee3e04a07d6a15c3c7cb14aa35f340536c2e997be704c1f95922db7b1a8088db7c8f18c131d70c29b913de245f1f37036820c5adea88ce05f771b555a948032c74b64a3574fc7ad38896995cc4820f499c0378831b9cc7f15aceb4475b40f5f22a02273c0e971e12d500de3ec0d2c869de2b7472710e7c736c57436bffc5954be451779df7ac356e03b534cfff440ac30e26e36d541842ba238b90050c0e381ed4d7ae7bccf9d6405443c62bfc31b49d01c5208a5d1867368ded47b42f584ddf059645265dabd527207cc794ddd98be33972a5c5606f5255f07cf98727debca12196ad437d2cf30536a54aa22e70fde2973173ac73dcc1bf9c803f36d3089f26f915f8fcbe1898f1b8e12069676c96d8b4ec3672c72f52f53b715e06e258e34d2b14f0393671d31b0a7ff16d27ba11553dcb9a2443101ac87f134d35529cc0a6d2d775c3e680b6efc6eb1059999768afe2bd0f43695aea7f29d8bac3556f516010d99fd3003630a31c88a9c96e0b5d29c2d7847e83fdf6d2238e2f924b1ab3e4efe4dfd66637502bff57f859d752ce93d1d6756aa946f2bad7b30eb4cf0955218eccd44d27ed468dd936720e7163ca7ba4daecf39352222713771a0936156127391c0c95422f9495dcdec284c159113c771bcf42913c31a3240f50e49b58d1a87a7aa055f3ed2fcb73dba58019ca21315e18e8ae9ea6842d3fea610b1c675b7aca5f6894fa281db96f1f52cff0c07d12e0be11e915b8674aadc439c843dac013702e04a9b50e95951b7900d1ecbe84d59ba7201705582092c7a3608cf5986e3fffb30e872518cfdd19675ad0c74a1d4034aa562c61c51746e874995929154da6d05def1d5971d24ccc795005633e2f3d527dd56bf41da3d9e35b722e795d58e8c3d362e5a180ba45f03ede3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855b829f4b1f44ac99a56637d15af6291d19bc9a35945459adc0633bbc9627649f9f45b3d5d81b3bed5656a8254d45b884e202df174cec786c6d520d66128e2c6d9d4214e79c2fbc6e9d12e547100bfdc707a17ed2bcdb3dfe41d5a689cc6334c2af7adbb3ca747604e365f268ec5acddf877d2e599193f03f6d8ebb550f7d0330d8a0cf999c533eea6dd991f3e58bf36d5503a4a00fd3027fb8fd13cd1044f530914c47041aa06a7497f1e7ad5e19ac2aeb6bf5d1d4006f92ddbda07569069949d7e3725622365519d162a4fe028bb8933e218b0f40bb6c26093d5df421b810ef23febfdab2ea687e0d76d6324e3fa69cbfa36f06ebd7f1052782dcc2264100c1d4109ad1f00c741af1b89d40440869c94d0af41fa91ae5c0da8cbd2ce97761724829473e8b64c634b837bfcf5fbf3776b58d7709e1548912fb7931e554e7b588829c8df272a156e1b732bc36730a634cfbf5794aa17a16139722353b5e7975986a66f4e5ac2ba23284407e248cd18136bf50b7862be97b3b946ac2b606fb19b2995e00850c15f844eea4d4314735c3180714d21f199c0a1296600f30ec757e9f2693a32296f27956b56caa8adfa7c100b1f39ab3f3f06da972f71acf43b5d9ea9820828145d8f74ff2e02caa8b2ce190a2766f431e6d39711f8d0dd7000d269e667024acff4135bb8e9748fe900eea481ee41a9818ba41d632bbeaeff38f79ffba4c04992f54aedb14e98b30e6dc61f7d5ed43be238ba2926eaf41c4f3e5f82c971dc79289e1398a4d5b17ea3e69a68558a48a162ef737d61257120aa2dbc2f0719ee568f124ae82358950b7a6e2c9b8547f94932df99be9d01c78e0964ff7a939cd710294d0e3be23ea73f280a528ce8367167ddde4d75be7d3e7aebd7656d0798900cf83457b27ec4bbbf70800363dfd1cb68c5c9a7116628b2748fa787fc778bd6b07aa177a6233b35b4a98be3ce3c883fdfe7e479d162c85c5cbf3f362eae892dd0d9555b28122b9316f454b8321537bf8d90c06282cab86b7d223c1da1b2b418ee99843dc0d6e9ce96c7b2b249a1d9c1f22e8e3109d70ed557f0b2c865723ca8120f452646cbc7162185cddd9572d756f075b55526b721d3c1cf8057ebfe7a689d1d0985c2d17a1007648c01b33a5025162b610ced3204d0dc7f90434208faff5e68c52caed76cfed0f0c7ca6576dca38ee2f47ab71d21634ff77d72ba94e55cf51d35159e42c44a02183af5a08b42d2cea5ebc6c24d11c96ad0bc5a767ebe73386a1927ce69b5e6b76b1f869ae33112da2e45f563c290966956ef1d484eb003818e56c081af24c1262f92bee5bf710604d33781017b603322009db4e2bb0f16fd3eda32e1b1e27e998119d23a7ba9a1426c141febbc1d42ae35ca4b00578517967db9d8b58cc97a2224d93803afab85cc487dde026617601c598d446643605f150a69fa27d5264c4ff43787009f832ed42a52c0a4d1aa622a2177cfc79e5ceb63238c7b6a04f5fa4fd31cf7e83829102675b4ddd4070c2df12e96d3e227d72e4af14ddac05574f9c172c7bc676d4f3f3b0fcbbaa192a1fe05ece5f0e96af9d1ad935e0e99ffa134914622484536c59bae27a6ed70a85e05126c66d8e8b8e73aa5833b07ceb34281b2e678a4ca7d5b1ad10eb477c460f395374cde3d96e89baebe0b40de3bd623b271eeb682e214d7fc5d10d7d87d3f458d34652225d8a88ff28f721ee0e765e6a6bc2b5ac8ca910c3d17965b13e42a1fcf23a154d519fe99e2418ad7b19bbbd38fd59c7f4af28dc04f564617f0089cd0b391f8ecff74adea7abe865d77284eaa25c40a1075a00852f2196f27f8f31001b902ddf8b3c053359779a18031665f1ae01f0d42bcfce9f486ff0e975c64437a550e0d1f84721cda826d417a5a2b2cc6e05e8f50a5d112105b9d4dcbf4112ee97e453d9a7a45f37a0aeebc47c8b975aa59e142aa473c41f5734b92d1a030ffbe337e0a5fd931b2e4a8f2a00c5a371109f824670df1affd6f17395ebdfc16a84d8681102d893420a8cbe577e9ee4464085c75e07f38fc124e833ddaeb156a00371769326557fba4af3e434f3a4959505cccd7be034bb1e66bbb671ac579e2d29f12ee4d42c4949196a29daa11273363996c205991b53408890fe55fbef126d5477a899855ba623ebbbce00111322397a54e3a26c7ddef5553861c532b2db4ecf30942fd4dc2a7c80e430d014ac2f53e5be2fabef3d190c47a6f585802216677305686df632f6b2242b021fad1322310910a28991d0584795a304f03c7b7d22d0648e80587092f469fb144b0853de3c6f34dffb3f2845bcfb38bb5850965adacb419b2fc31df37a4781605b327ae1cafffc800f29167b310df771fdaaa995f0b765e966a07ff586c3b5c13e9bad92b615e4aa3fb3dcf4b4589c7604dec237df5fb030eaf066b17e275b0986fe4d3ce3971f0cceb384c1a823a57d7108e247f851936faba58332eec2ca74f39e8afec1b5548b8b2f25c577037b873839c73434884144223d5518dc6f505165dd08ef46cde5e16d73db3c98f99d98105151b487ed28b486f8e5423c0f743fd068cc1f42adaa14b693e0245c146c78792f08ad4bf9deae005cb888bdc25b172e70cdc374521cf165c32dcdedac704c854a3f0d319b7f39473002ef6c8a23c9dcad1cc0b423bf6898a616cac37957d0b38ab9c2e1dab603ca33c5fcf1c8ca5b17c2de6ffbdb7e9844680aa22e2d7d706d244dab708e8ff9cd986ae922d968e84cb06de6d07422771bcdc1b423f27bd3b3254323249aea22527047a34b5c711349e407e1820a033e1118f2a72732247a38a115391bc9030b41195c563a9d282570d969f73496eec08161ec71fa53f86a6359a53c3e3d7711a3a42d8eefa985577c5ccbde1704d67b24b5f1b3c7a7505958c1ac6f844f1e800e298968685416a5d431d572846554fd84641757e6a9b04a5611b922dd0b26da9d91e3663786df7459dcf7f13bea949d7d6c54c13a4e9b3f9fa2cabdc0c932d4dac8be8d32ada39782651f450ec028eb2a99d4b1191959365ddf90f5f58f818d783659b4ceff23dfedc29bb44e92cce9fb034a0befdb15f0f06077a9b5a68fcaa30a19dc302eef84bee37b44a3a0543110b103faa2d3f9d5d369037f1ee6164cab81974b54a750d93e3ebbd8b5185ccf0468fcffa6c1d29a9876c21ff5cd52f49750ad69a8da103c6336b379d52fbc718b927668b8c8ec1afe86365d2335ceeb6a8a2be55ee5d3743cf885abcfe6e25977317f862c1ea55467db1b2abb7d15ebc60c9000910c764acce5295c399d846a1822a87563638e0aecbffde86ca85a7f5429da24630ec7a47602b92a2282f5352984645930978afedb4b1959dff623b0d2f817a577156ffd2b7494f162c895cdf750b3d300c83c2a02f403dd4b4f7aa9e4ffe527925b1b968dfadd00f825bb53ff986d5b2fae9ca0ae16bab6a63d24aa47eb5e300ca068577ecd5750212676da69802eaf827725e5ca20a7c5564f96a733fe563dc61e53b2ba95e2139463cf5c332338c1b405506c2d71a6d337ed0da1409fe9f5d2ee43905f23081a6cd3e77b944dfd8065649265b96dc9a6518c1676e42909042633ae6e1a2ddc0f66fd2b1b85b7214e4bc5718918493f95f06e21f4eab83c5ee0d7fdbab58e4d9409999aed433ae81e2a2fba5df27cd3707bd73c34f46f01415e7d785165e8ed99152b668532062df4de60d84ca9929cc7a6f9379918d15bc9aac5061136ed88ebc083e454e96bb81b065477da06a55d0b4e7bb431154df79ad6e3a5ba5294e47733f347899067a673251cacd294406300ffb3cea793123960bcf97ddc99c846ceb54bd95fb08fb0bf52f0fb86f9a9eb6bb20ab9bd006516aa3ace3255323d5dec1ca7ec34ae2673052a202cfcbf10b72ebbdabe16a6e199262048fbf50df92fffa4efbf9aff3d56b78dfb9d616641d5d9723c01a63ce970e7d9fab8ed5d7f688414747a099fd2f3c88c3b4edb6fa3654721a021918f7d746b6460de575d7a951d8f44c32b92f907936e53f7969f6075f8e4f21f52036d6bdfd16eec7217270528eaa78277d792461db054225714d877d06262e629597b1530904943aadc2bb72bb4ad042b095e09edd9c0f2a79208f3494a43f7054249cd4a06e44fecc25f2ca5daf25dc9eaed8fc84da1521a9f6cc8548dc82a5ca873338a788138ce8f4de6be91d15f4aa6a601cfb2feaaac23cd2a463ad162144caf6ea39eb536616a6cdd7aee192182f44c79074cfaf98bdaf628806c027737170e28d8765dafac29f4ea6b663c8ee7c34b5c560b964bb57921f5fb0087b87a00879b5656749e87edfa1bca6909aa4e804392bde1e7e57d1024b7d171a4950525549628c09fec7b9e81631860a09bd69405d3dbcc03713cdca7d1e4f5efd260ea9c91b598ce677d9f44250feffaa25130695fa72c4340e70f8218e21caa1d1b9eb080fef62d091a3f78456582e3badbbe9c824601b4133e86865470a437f49839821a339fe450e05322dd39e97d80b2c865a9bb6a7df82388e14f57715fe41a029baca221181e1e41f499713d92d6b5b38b88753c10ade4900a3e136cae2ae1aae2e930eb7b21e12c86379d957426f1339f8d72b414b8a5f081354be08f1a517e20391f8e0eb62185efb4e87032baa224fe9717226e7c3b5c387284e1fd863623945d13fd20841a268996ad929ee062303409b9f1bd536c1dfce8516fc121bed3331e41f4e8c9c754345ce105bf55f2597173d55a69a557c3854e0eb7ac6b3a87991d4fd93f3cdbfa1bcc86cc841544fee5a16c2f66a4da86b1065eaadab9700addb858369271fe56ef98918dd2f85d38a1bdf0c11439242e49a7ea1901243a0e541f0796c053fb457455f3d638020564e5dc1392e150ef4f0f87146ee7499ebe728c04ae7a178389c0880cc22131f441f8c41c856ea001fa1db6b0e862fd8a48cdebe33d8472e208eb9615dfb8304623589a96d83cd7c429a9f3c84bb91f68bc5c6be0571be9daa20a2c110017fd103b569fe33aa39fc694819205963ce975d8f9f89df111c127e16c3e3e8e13842d616ac1b54000bf38c1c72ba1ed8d6cfc6efdb9fece84b334fecf76f0c5eb7fca1e7e51d80d376b3468c2a747bf34b905f84707e009e273bb264cacd60bb005cfa558bee084558469b9107eaf40d7e1362571ed1bc94baba2f6e510cca6040eb3fc779f23f100d3929888bda13ca48e76cbbd0e328e95537b323536ddf9aefa33e642b5007ce2bb03086aaa8572b859646fdc6d9a73e774454e3a1e3e0294c445444a26fc519ec1e418db89b88a6a8a8ea0e2f32242940af803b1e02f1945cd215f54fc1d826f81d0471f9723230ae8c7d0f598d32e823f28939848aaa1a9011c279e2f2313ce00965da290aa0990125c7a13d6905a5d5fcdc72e355f55e423b90c3a3a670ce6b87ad02a82e9b07f15ae1a3d82c0ebc075533ab3440dec3250f14db21e841f154e5b27fc8bd30aae1185120c7459922efe1f121f083b7e579487bdf9af524a0301c100f694b03c5f80b2b76d3004357dc8df3ae6a879134cfdd87dcf7ab2c6251e9010bdba1a936ac5a8334ed72b8cbf94e671e2a68c28fd4a6ca75a687d376404678b0aaa4ed061702a9bf7467513bcdc4aa3586b32030ce760d4d69c4296e4ef8bb513c1fc9d8f4876f2d0bf04c55d84d3b6648793e2c698fdb486e7db39da0b1253488d6be76decffa43734442d1c323ef908105a57b48ae2395fd6509b6c74caa8296e4ae23dc6478abd0da9612473ffa2fa199f6d450b19221e816e7ced5aed6b84eb0ab20b96e4ce148c33a1d29b5a945679a69080283a3c9667d465e49926c46d496c4b71b8470437bebb6a02739148e350e63ff8063179c3197008b1d32acc752def8e604926b6598702a26d4379a267bd228454a902a01703607b0224a51edf2c321c47e857335c85786b66161d587f52cfc1539cccbe8da36beb7be926501118587d137f975c120fbaeccdc57ec63363598dcc0f144ab7dcd9dba7ac4a280dd62e5b7d854cf06b9e2820e78df01ba026fc532dd8a45be4b7d0f7887da824dffdc9a08b4bdd243ae847f9148c30d881e28c9df857979ec00fb9b24e1d9084861a7a5c2c26be61ccbd4405fbfee52ee71a6a8e4f8f513b364a6e3d675a1f4522fa18aab229381329b977dd03ce57d2824e4182d145db4138a233b270d677f3117f45f3b96e8d2e0161bb915c0906d99af9f9518c2fd34446c20e8db44601c6c958185c60676428c2e78d7146399350005bc89c09119fb3e7e7eae46c28e9ac887b24717b63b43fa2fc37485d86852dcc8ba6b088fadf3c771f880fdb7b189a16d866a771ae1b6bd4e57e99e495038cba1b3ae3f954a035573c6eed31305c7a1c63345273cec172559f78c0a53c307971e383831f0a99b82663f82273ca6274aaf5cb5bfbd8ed9c6099899bc1b0d0909e800412802acfebc2d4a6af0be3d052582099d6757e7aa73a35dfe06c275c0438359d04c5dba677374dae784b11e3af4d1192b804d9a263e84439d23042c53f806905b8c796086fa2156edf1549b495c91db4061819cb51612026fbe6f1d6baa9903a4d980746b26c25c923e9395ff115ebea06db33b8e4b079d8882eb888f88ac9ca01af9280c335af48cf14f750c7c10ca96e6d68800c46a4e31e460c4dfda8f8a8f6d84cccc3d4542e62fb03e7eca7c870001229a3a99bed1658dc5b08160be927d81ef4d20da216ad1ad53f21a9820d641d83e2c8e2e97bbc07c3a38f65d75d5bbe03b4499748f8d34ce8cf720b4ebf471d77abd6e54a27aee6efc552db5bae8ee2f1ff32ddc2338687b50879318c83ac2dfbe0794cb5abdaf669a7d0c28a3489ec4904513313ff936ab394df025248b3d78b3d6067d55b7364f58b1f965a140048ae60ffeedb3243a94b5762dfa75f9b6a2f5bedeef4090a461bc963f46964f7d5c2ef40ab552136457a997ab41ed648758b075d2b034c65f7a21a339ce6e3f0131e026e79ff6d9c4e59d52868f93a65c70d3bee294defe1980322b73fc6d48f588436dc53be49f8c830ed091219638733d3679d8cf9049a1bb9e932b18be91014cd1442a890d4363788a78d99813e44b05708082400e03d441330d758121c0db4488262e1c3688273a1625fe8702dab299ce7f3a9ad664319851bd945ce4d0e20620187743e0c133d4f0f7a479efee6ceefc08a0acd1cb7db44e4f676501861260ea3d27e13d66fb99c70647abb597d25604b5f7efac0f4712ba9c8eb898a3bf2f2ccc58ad5221f5057cb33006d497d9fd4195c21fc4b28b8592637e2b0bfa21630d0c74a153305b142a2b7c0ba4bb8fa9c2d9d7fd40cad6c13fc9e4c4817fe23e988e4de0302e5e373c095a1be65d44cd08a4e0b69b6b5814cd5edb6041a03eaa2c872e9dcd03f76cbfabe5bf172e98290a14d8812beb9df77364d3d3ac7392c66e02ba131db05071a474c445121201e4f3b17da727a26abdfeb2ecc0ea7b5326fb3220726f30f9c87d810c8a50294d5cfa7ca5c24cc1793b14cdf5ec49cc9f185538e7ee63037bf91b3cd474b155960aa82cb4b0b4031736906c60950ac3c1534bbda0a59f20d2c8a64bc8f175e00833bc9b5b81b4dc36b9d5ffca74ca6c63af57b706e1358d68a18fe7e928080b18bec440a995eb8129ed38a855b2f2e76dd1044fc950d3cc360767ea1d0dfd783a386b0eeb78d5c185991029d5d0ea2015973cd58b75e678685a9826a9b412ef186d944328b1364b2cafd5a583c0375a1ffbdd9658a1d24dadccaec7b67226c8274f74f6636744017252e3f15be4fb4b6d503bc0bf87a209f556c3bf4a548abe9ccef3562f35a10bb6ca0f98dfd54cc0398e68ea4c13480fd1e0732e4ae03624e3b15ba6ce94f8095f2ae3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8557c8f7b1f0146209e38b8ded1c7d0dfb0d4934746aedc5b68ecaec4dcc64183deab2bc08375f87c7aac90c3516fb98f2ee866ad58de8ad170995e1afdd3c3ef4b56bf108e1c58480049ea91f2686a8fff87a9bc9dcac5efa391892a8cc5359c2455f1e61aeb4bd4122146627cf6c88c669a256faac042fbf0c4e3b0b7be149bc33e9b36ba4f8c334c3b1dd6394e4db14d854c7a144dd14b0e87884b4a405a81a7892288b03b082746b2f607f5636aab328b23695d1d2f65b59e7b5f0cb8343133954f69822a79be70fd3dbf13b1fe64a6a6477f388a52f2e98df6a4539f1f82ee99bbafe061ee96e90443682b569b90d60b3efe25b7c5db73254965206648a14b4ae37c2608b594ff9943a149bec1366e1a4cf8b9cc97be2666129bb56bf9b39fb511a90a7a8f3ef91c12298f2b300864d650ef1924aeb1ab26c8798c161115bfac195d7e901557dc7a5f0888eaf342770c24a0df0bf44e252de7ce6a58602fa75267a27b41886d45a144c4edf1168876de1261c9960dc4f4fe03f897d581892ee83d284735c71a91db832d0595f945d0950fc6ef24671b5732d516d24ccde1a2238ade5d00899b4d9b7811e83deb3444a3312e69b2d9b525bd40c11517bdd3f242a4539f386ef8da76f723da5b1a39b03694f7e1e1cf5aa3d046c247c7d3870de37c204dd682dca32dd518fbf9c2b9e1560c90de00597bc6cc51917f827f2d8d3587a23a6d30fd44130973c2a6ca91f13344ef8aa29e301a12aa16b3f8d6d7f720e2589713ebc6d0aa6fc2ba7844df9fe6ad491ce209d744faac156075948ca16e0a981510d732cee2dd0cf0a496d1cf9bf1be1d725ffb74ba953082a48cd2b69321241f5f3624f399a89572515c21ce817d5cf37693b83bffb3c7c4aadc127d25994a28d5dc546d5b3322228b843b7854725a6cab3ac1013681f18ff33137775aa850de64a62752440c8de119d33e5824ebb66b82a205a102b5f906d156e6cee4cd230d7d5d48a18ac2380c6d250e121cd80c2ca447eddc1e2976038a0a9931a8fbd8e3855c7c81f69b35e278ade8df12c8a80cde9c8941b6e7ab0ec0914f0afc686618be614e481ef6bfdce9d33f97dde4e94682ec57af1138122c48a2df3bea95d03c9f86efa5c138fb3133f27ac48dc896c4d65188d9c2c65dbfabe99665e45fbe7566bd70a7c79426160d2756012d94548f5a74e364e0e4369b3ded377ffafb1692d3d4f88b12fc38a4ddfd818927b0c094f34eb5fdf05000694306de75c7ef84cb4b8fa47bd70aa2e89f7b96b2487c7716e1b5b2f1cb1ba79217d70724026a00fb501f44746f56af7a56ddead4ea6eee6bcd3dc2f2390caa11f0beba538ef095a6b57a082d89d029c8da3fbdaa16e83a231ac0598623f67e07dc0895f45e9ff7e9200872abc7390c5d297e274043d86885477a10f8844e968e78dad3598a665a7950e260d3e3207f0b792e6b99e8db28ecd3c0849653703c83ce995ab81412c8d13ec9ef79f4acf9e35ea467ef3c383f1950bcf16e231e5263334df5ff5f1ca4233702a3badd507f56679c634cf4fb054ba662bd729712b2a68a70570192947c05414af2790bdfe23c6fec8ff3a74a329f225f868aec6375108337a9f3a4ab765acdbdb04205be39e5b6c07700e1d2967480c1ac1b62eff2e960db908501475c7cced3ab876b5cba64ef56112e326393f64717368d3ad951295a470ac71e1a365c35e66267a092ffd89a8d9ccb6cc097a585b7f65cf366dea85cfc2f9e84504eac3c5bd8c90510f4c52a5bb4754486c4160b6503d3ae2e3e461643808c6c37aa3cf57671b1b074f84853f9dbd0fdb6764bb04af8200ffc256ae3ab3fd8c9e48ce9fd0967106c3959eac85a97744a9c3aa122a04e14a74b47d51976520de445671ee0b76c5595fd984bfe2c11090b7d1cf7a03334094cd107cd5917f3a883b39497c37efcb399622be3dc4493c09071fb502c04684164120ab01479025fcb4ee457514145f7a3ad2539491941857cc337c53b481875d041d1da85463073268c20c13e4f239c2fbdb060afe31b9910df5010ed88ac3bf3fe747818a74d03977f3dc402e6f20cd2515e86a26175da10b34c631ac513854ea3122743a5374795e50156b772602037571c7b184b66d10a5fb753be4d1c0c777ca21f188eba90c3862d5ba0b7411502a0c68538b7f2dcd53f273947d754f172c773f9bf63f8d7e4b9fb92a79c2e45c6465add1cfbaeed83521921ebdc503101e1d0f3445f583790b9945b3ee4b05fd8f96c92ea633a8a883d455f66a12535129f517f7fbbe09af0bc9d70498648ffc80d01c73e0648058be142cbeaa69cc9741e686da4099aea8c5dd7dd1f44f19529eff77b1cf52dc8483d2d30b7888236eb6d0038d523df83eac98ac27d43294942b0b52341f13b9d70fe245ba50ede36b9ddae855b32a0abf8b93e26d0643501a1775caf96c697673c8bbe30c4764d8cc6d2177babd741ab02ab325c0117e44a400c6db6343c76ceb279134166f81595e7fbf92d79e36e7cee85453d6c488fd2373b5f68dc4d9b3e7ae7003a4041540642ccfec001fe0e0db12b458031c157e1e85af58423ae4b2c17cf40321009ca6f4c5df6db975e000ae6ecedcd214434a16f0d2ca40a93ff55d6c155aba46f2cf8b25d58c97469dc16817770684a0e2f0d2106aa3473fdbb9755926a878088ff414374f84d68e0b899f94c11a2508dc4a01709dd6dae50c992f239b127acc0165bb93de109e4da9cde1367734d7c5462d61f1cf0b00b3738cb22e3b4d97ebc841e4d8d2f91b1886d8f3f951f80bcabe545e670a88997ddfa9f7bc89cc0b4465f39547e70f89ca5a20aaa37591b9e61950cb7fdcc7cc8a9f4622e8ca79028425c654f9b33e3bfdb23e03a470d602c92a5d58dc0123970fd2597dfd18d5ea2b7b20ad7cc2b2b2aa7bb5c003e3118b3d28b4d73daba0046f19c0c6e9a60ed94c0edb6b4d415a653d8d90d6d48ac0391fba77029fe248586ddd383d1367dc7813a93aae1ea0b6e236e78d306a9932e4db68d4c8622be71788c57a657349adc08faac2f6ce6e77846776a4775acbfd8de2f50820bf7e35c8e836a424cf3cde0f6ddd62f5110486d46399e19187260d32b65256b2e93c7cbb54c687e8aa5cb654aa7580cc617f9faf80a86cb73007768e92af3ca943491274afb83265f02073be4491674c4c16795fcc81779d0639aba859c1338d31b531ae01cab769f5468ae4b3ac1bdde2716a85d8a4b0b6b84e6b1ef3f2a36e0f7a9cae7d33d2c17ab1646565f358765c74b2115dcf37673007768e92af3ca943491274afb83265f02073be4491674c4c16795fcc817795ba0ebc9709af1a672f674a4bb873cca7387990de378974661feb0b80cc293d6fddf8918cf7c974aca0addbc10e3c7066a48ddcdce94cbf9ee65b3422cbc7a8ab40a27ac37ef7745f882a55e4bc289f9e0ce96bfb1d88361ad458f639d61bd199734f4d3dc3b7b11a2580dd408895f66b5297badde7c387716f460b98ec7ff6265d3f5dddf79c4ea63bdcde8238ef12bdb41783969b0b80acefde242e68ba3d875499dfcb860186d854ecae6ae87086dcb1bce5bcacf2c532690c4576a36ae2a781bf6b4d39f308d08046e8c63c59907807da8717c3d45ff8e5111ac422d660abf9fbf2d0e92495d2cdafd50323cebbeb63a3c08a6bb7015ad22db6e7643cecb612a7be062682a0fac215c336007573978e6e8a12839d9d48b364a4465550cd9ffe3a3173334f7c7f74055c41e540a474d413040221a858c0091241bbf28e63eeb4619a8b740e3068b30d0fd91072fc2f0a7d193f28a543d863309f235f8f4ec68b21fa95958198e79240e3b5d19da9f2ee22f53470458135c6dc4595ea023a8e7e1b2c0a9031fbc9e999438d6d65847f80ddd76244dfc5a1efac71731d40f85c7eb0b68d5856593c34078d220bd92bb699060bf2540f9fc34c0d4fbae1a0cae94c2343923ac620a19ead21d3c1777070bca5ff90e0d228015def3184c5ed66e33362634ad837d9708bb0898f5609a1409d57215272813b9bdd7b6c02dc275a47e0938a4c5c83e53e533a0913ce3da53f54c873bb1f418af314c1be7e00a751b8bfa9a398e97152beaaf385847808ad2d828c1c7251f1a45bc7697723827e7e7b864c621c47c1be06cbcd26dba4833eaaf9c049628eeaab29e4621135204da61df1c78e4547494b866cd0278474a45e84327f580bb4d3edd6881f69d4c31e2f04786bfaf15f3c6de00946743dfe02a8dd7a5ecd595233a11c8146b3574276162796408a082526cd575413addb6ca97d48f141fa62e188690ca5222aa8845fbb606f8517f8828faaed54f2dd6f1c593af3beaf7b0e1340f0d1d0b39b47a2cbc3746c82944a5beeeeeb7e67577d7f68ff6371e6104827d0e670cd184c722b1daa39934523d603111be24805e70cde7f19b959e43845db7c8af2733471896dc8d88e4b4398694261203ee1a23125d0d546f0358c3a4bc1e9a2d42c6e16ab4a58376f95415cb700afe71be30c0f76713d87873dfb327b171d0781a9132da653190dd428cc805fb534b547e3e211b00899e6f2625913666e4e9d45674bdf87fbadfc571d8648ff82726c4587fbbbb5dca57f592dd2228a970255404f22c61865bd004cb9267b971b6300094d3a99a1eabdf139d13da86d8177e9f06cf74a2fb65051ec01348fa84bf2377838a55a513eb7d6185ffa6b0bff2af8d1c5678b531ec842de7551757bb2eeb606a4d3a41138036c07204e85fcf9c3b4ca53a0a232ccecffb9555e76d451d049eab675173c8ba5ed709e9749ab25f4846e69f83d54af147e46a19159142c5174614930130dc5b0f7485c91e6aba70339ef5b367844d102a4562413ba0b6b5a0972993a277c6b7045bc5764dc0b7b3dbaf3849fcb1dc842e0d61454ca8d58805929d815dccae00e12ea3d1ecccb209a461b0ab7f726bc390c2b84b89607743213a8fc2aa0e83d0ab72604da50e9164a2ffadf8d6de0c3ff66bb2760f1450273a6cd569cee83129c6e45aa9dea7b5b08251c168a1c816e3c228f9dc105e826eaa9901cfaf6198e79119ab91cae0ddc6a9657b946fb69a9451371036096e54ab2d897396a4d87741957f83cd92b82772b0ca7e15de36c4f59c28f5a4cf3ce45c01417ac82d5d3c5d93d521e7ababcd8e2e1145f967466eb77bd688420c57d32e4022f3899be94ba2fe56acf3be46b344c559e41659b2e9d1b1c566da59f2812882f752ed8ef81b3e61321102a2a763393f1d9f76c53bb7056dacc8441e76ee7953ab89f815130ce540aae9f40011121a7b499bb297d28060e6698a15a722622be79f24da3a25ac9a822235ca54817882cb664414dade30e476fb6ddfa7b39d162dddce71744c00f93eadac695f23437227db36cacbc8e7b0889faabcb109da1d058a654dea43ade8f36bc3f87d9cc27be2a38593bba1624c0eb7a34150482adfd90801876cf399253f9107a43d23c136df75a5e2cbc7c5710b2e89994e6d99bde5f653a74b9f48a4b0a6cdc604a8e4f050890ec96d5e89aa9a3295e1fba220c06e06b5cfeab8dda643966e568c5348b959695a22842f7c3ae8907b5e9e4b1ce5ba743e6180d5219f8238efd8e5dfbfa0c71a9f0b2062f2a1927ce3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855610d34dce8017841ec5882a147c263bfb794db7695c73335d8be59a0c77529fa384282520f61dd0ed3bc024f2a7a05fb5ad727eccdcb8be3ee47e3c71f969374fd0b754d69fb78b16716c9345ad4ed8b80bf6693672eea8324dfcae5100212089a2fad63f50d07687241e8cecbfcce91deea91d9ae908410c363347731f5c6e1e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85531488bd2c1674a6dfed2315e0cede0628fad895dc689a7431b8a81ade29f4c1360332ff9f18b402c502575b5e1020f53b38d80072b54099350331a06adeb6b0faad47046d392789ea7eabe8b96b0ee23fc15149c808b79596eca524824444d3e9a8f13ccbf838e62af2e71538d21b39fa0cf1f0b97ce3c8f3c6ef9cea2dd81606cb472ed499d17b53f7e6ba62ae9598d7372e06f35cd095d3b08e9375d3774f9375764be8f8e651259c038d273c4c94f0ef37a61811ca45005240f32ad41de10e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8558755d777a827deaf32df19a72f81f5d7eb9ed54fd5914e1e5eeeb84c0eb5d5afb0842afec1a7948546fe6d0dac813b5b9e045a2f3b326a1df946f7045ab1a77fe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85558b867b7b7c0076e744e973dbd2c51efcef8f880361d8f24f0b529fd22c9a43e0b97aa1c6c9fce15bca4fed7e6811fa0be4b7d2e330938c9baadd5f0312138345344df1def7ed0c3d9ac82fd86bfbcc36d92b65154973de95eaff6ec91af20c0d9dbc740ba9dae3fc02eeda599dffdffdcee19d3a052069705855a2770916b31796fb3c1f825c0c624d79c7b5299f593cb885b9587e550848dc37d747d6653009178ddbc4dd16ddc6bc3d9ec1dabf5ab721dfede42e1fbdadd747e7b0c9fef5c8ee70431c65f96ece6092131cea9e3a62fc186adc8a972041ed6f10f1cee89d00689f6d3f29b7c73f81dee162e2fbe8510e21a898f5e770306ac6f96c70b7968f17ca3099bf5cd36b7f62104c5c6a0e9b5fc96f583c4679132c0469c096cc50d20d2e1cd39366f175b4dc6a094263433475d527ba65bc97de62c6e27ab90c35c90c044eb538380d74a46c13f564e3a41caefd22ca4f9d969a20043d5cefa516c2a483d0390521060634e9cacc92422f6b42d5499b6a05e88a3f9fed181b3ed41893f889dbeafc55a2256fe0bbb968acfc18db8720e023ee1872c047ee08d8473dc075981ffa3c1461912a701bf4b9c9861c428097290a382feed3ef585b9cac58a7d5b25f369cdb424511de5f2c7fa34cf5dd451d091bf12d189da0ec62a555e68e90709d234314f6bdcbb8820b4b96673e0d2f343ebbcba58d5372c1edf4be77db525e801c760ce6aa154a22ce2942c69809779ff7620286930a580cd1f5c9ec0ed34862dd86700d6d7e6bcea14113089ce092635e92ef99e3a0905f3a15d15e8e6a3b88913196ae24bd80d140d6def5cf7cee75fffa8e90bdf62b82ae454a7460f890ed6997dca16d7389040a3c1119cf7d745e60a27b20ea0608c5dfc7019d2f61ac88e6afdda55b4785c7617688f54be83629ab76fbc2cc248195593dde7ac227e19e3e9fb5368bdca4c1adb31fe7a93cc5a73f9b084b4183ec5678034970373d6d61480f2a70ae82e4b391428e59269532b175fd1c894092061ee5424ebe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85585e41ec0fde536f82233a63855e43ac15d73f257b8baa7ff7f2e6adc428fa87e182052352978ea62fcb9e21dcb388990c9a4f0cef9058457a441fe0225f0ad5233115c8ae83b6d571d45099e1758b571209e2808eed26389ffc50c1d5409cb37805b87f263787f9ea3246729a12a983526ef1dc2ea03a920b6acbd1c91d103852d625cf8a0f60bb971248f72ca505103338967450d78f4089273448b82d82f3ee3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855d2af67b02c4de7379e30b1d753eb65b5720324ed73baed5a56c417027d63fe3790be9e0b7f5bc296d21b1d4d638213338af07c194c8d9094339b2a96924a2cf2b52255221f803ce8b2796c6f2da2736e7d5a50b6ab40c69741f39168ffd1d3a517203c1aa9f6feb3bd89f7232ee08970993eda5b32d244ebdd580ba14d4a334327704f42a15e6ab322dd8ac73737d3dc34e1539b303e140a1628e0e2a3a854e61741bfd255a09a7f2ec938f90fd0680d755507732781debb3b97716244a5aa0b975b8272f9b577b7edbcd9ceb1b65a9e1ca2404d6a1b45b2e1548efb83bb4c1e3dcfc58ec3b5a00af85317130c52ed783cafdd2a0bff56d83c0f57d13d790bf9fcb1ad17a335a866930c47863c888e9115d24a9c037a99192a3b25038d751cab496c680238bb5093ec1a6f521c3390f671396ab081a2679a55f9a92979f87e9d759a3218afa5c1b3691fe1acb11535a4ed738e5e6db6523b8428200b8995a77557cf5143d459b7f9724e42a6db4b2a422ace98c8469a8f2cabdd3b3e537302d04750344b16e8795e2752b3c41f8e35aff7f16368238ee1114018fc91c6b294f69728f60de1a2d75e52b111ba06a3d2a518ca0e84a9ce7bad8325561e2d09e128696d95a4acf34e5332c6a904fd04ec4524fb7165fc85a81633725c529558bef46f40a98b537cbf77e97c6b7975422dd392ce000140aa22707476c66dce5c19aa1b86c9f64ff2c3333016dbc54345df88f0dd902bf099ab727983d36bd94a1981eec0a5e0fab930c8183ce0d19918ea36e4b4f5a93e0d75c512729eb0d7ee2b59e1d6771300a4bbc56f132586a8e2825d881896dd73de698eecfbb5d6b06113e47ef400f4b5856a35e95e747f14f8bfb36917beba21ed8987ddf08b3d0fe18bf690b65e4f3fd352acc9207b139f9fea324fc236abfa454388591e2ffb264726d3385c11a00849abd2afcd46e3841ad67ff546769ab21bdf16b7d7ed706b89aac847499b41a4b5ca1174669f718b40afb98753870e613e7548dc42476aeef23409639155706ccdf57f047566374acd40629e1876c9a3278ed2298216ffb91832b02bffad9577d181002bca117b9ed98089fa756b1567d646504b0be80ca10b2edeef1e112647319c33457e1e10275edac62d3e702c530d95a3f274111bffaddaca532af8f49bdbb703ddc79d4e928609c5bc01b6b0b806f38c124a09a3ca4ead74ff528001aebd8ee1a76619f7294df23f02ac9225c4e4ed8695ec8cb551e439c917f152a23c92297d10cc8af8dde85c05debadf78a2ce3a94a746e6355691b2841440fa423c60620b9724b004a99abaf2f56f7ddea7976e20ba7c409605dc7010258f884726e2f7a7a1f3bda50390777c99f1dc7ed915f8761f298c2b5b6072fac855fe5c9f985aa29a098eee0a6ccffae2c44157a6dc39eca974bef35997440b1b9054bfb1c95fda3355c51276c279984573c895709f9f4f4987f063ebb68a8075671e44bc7e7cb148aa0e36278f4f161dd48d41247dd8e52e19e69f55a1d92176d345fd548680177139838385e6c5c372598eed44f1caf751b33a7fa847a2287a2ee7405ad06b4f850a95cfcc9091722bcc04aee11fbc0fd44953ef666af8752a396325a98d944d86451f8b4ecc85f1fc38773a0d56aae1d553b343fb0c8acfcef65cba1c2f785ccbf9156db35ff83217a6913dface465366381a8b727dbaae537b44f3b1b646d78ff490d8feff1dff01a7dffc42d06e71148fbea6d68cb5e84e5689e47e5145bceef3d49e16f7a257a9d6bc2778cefa6eabd3ff0e90888913a857c3fa6c25e8a52b00e76a96eb9a387c3e0b97d46562373fb2220ed60900a15ad7f04da1991ca9fa677b7fe548825f7e45465ec9f7089e2fac2d7a9f6c02ab84d84c0ab5939dac61ce089d494d36167d87053771abeb548018d4de8a5780ead0621f0278f1b6dc78087cb6e43351894955d77cba575ed15b3aaf96ef00a4e6b4e5e9dc6b10ae761d945b290c060929d1c8996f758f4bbaf32fa7a0e4228d56915f8d23b81a0f5d55581cf51d71bedbafdf6390544fe87210176a70f44362efe172eb73ae9addab96a9eeae921ee35eebf4184e685429147a18b973cab210d49d7c5965ee14b24af69d968a33cbf8846c15da31538cba421a65fd8dc7cbcb237efe1c36f59ab040fc2459097fa49644d6761b2ccadfeb8ea4836500b971fcd64f9b51fff1a1c82f68405614590868ef1a147118ab6b5dc61abcf93ccc0495351c6d8efc9f3fe71c21bdff004d52f87fc2bdfebe58ec76f5ce90ecd697b3f7e945d5c4c252c7f489c5e50a79a553d3cb711073679a0954c4936aab3d39c3b4b22bcada4f4a70e3d1569dcc4d4593634431f90152f157b72aaa8516c73b4eac36f022b25cccdacac275b3e52d2d7d036fd22254f1aa2934ff03915c99534249bbb4121d75f320682f46b2f6506e053e812880339cdf0fe516bc1a9cee6a6ef068ffd22f1c1991110ef029f266f7d4f5c96adc41e575f4d72cc23faf64591b79924cb2f7d418561464945ab14ccc9cc6aa2c7ca56023116f5f07bd18a233e02efa252d258fdfb717c4b1f67f7beeab25ba2efbb8aa70b53f41c8fe686552d487d3328c78fa0498c49e872957f77c41b483c1b4e7cb27ac2801d75233335d38ef904acda8de90e4bbc152cb37e119ddf974af645a828f7f9945987208d49915302443c330824b6d3ed2c0858ae6aff2cecbc5f6f5b0447f3205abe13793be4686b9378dfed558bfa90eda824dee2f8eea3bb881f66e543606b819b7c334bb3ab8f132355932ff0aeb853ae27471aca7a80b4470653b1c3a082dc018505b73d74b0af1c05783c9efae1cfe1bf7f53462e5d96958bcf5927f4af1fb42fb0d0be7aa9fb6bf007edbe59a5157eae8acfb6851bb87560036e2335cc56c2272c6ac47b332767809dcea1ac90ec256c3edb65c6591269af008d413ae362df1494f8465999e7a108ef8c49535efedd075470dcab7b8006c27a3b51869d05f1e8b4a6264cfa41198c1931ee7991ef1d57480d4213950241c4f01e9494557b12621e96cad2698ec684d3707214fa2ebb113b6ed9bbec705e1bea95878fd6088f9c9ed3c3a840def37014a3f6752f2c2057ea5b50924bac303e02b417adcfe22daf170cdf58fcc719c6b6a472380111238e06c160c6bec4991adc34964b089ffb7b72dc8bdbcd598692312d890029fe1688556fe629d66e2eb61c9509303f269ae9f83b4002dabe90659f57884d2f9748275cdc686933bdef4e42975c1a79ac1993115a65473b66a3a5834275eccf2d31400f80192b73477e2ae2a3e38c1e0f49164b66c4e800b02a67667d828faf21e3ef3463932d7d97826f20cb6736de59bae5cc6c8e00d058540b7a7f93d7f00709590e4f3211a7bcb27f6598a26e036eb628b7ce0735e0a89eaae4854ced5f6e15ab5c75c9dc66f54066983c9c8ec92e2d68c863c3e249d23b32626bcc00f0407c941142c9e08ff48a49881f8faa5aa064c3aeb0d16ff85fd3cdc70c0ba1d68058ec525f4089d3a0511f595552cc8e5ac18028fe8f3dbf9cb30ae4ac3e6bcbce2447dd3c9789c36cc386b5ca7c86a7b4c2aaaa8ff93ccf16d0c8eb1076f40ee0dc120f24487929003c7f5e5c02d647e0ad2fdde76b964d8ef85ab33566ccc58eeed9f1e4ee443422fbbf6add3295353fd7aa135a8dbeb424d264e735556ad48fc50699fb3d2add378e3e1125773f6c546d3acad00d477241cafed1d9837c8f9d7df304aa7cc669f22027be5958389e8ae79921bba5943a7edd814179ad32cb721442f065a97b7caefff9e4db9e6b2011679f23911a4255ec72ff407884e51468ea833cb00c81a4ed0294115d21374a148510c657bef477c2c420cbba44d3fc07988bfbd9a11dc8370ce697fdba7963735d6291922809c9b7adf4cd762bbef6e50eaa6799408579368461599ac0721f1b6202b1da03884466482446e30bbed44d550e837d54aded17f841e55e24523ccdaddef4b851abfc77e2ba70e9e046f682a14c95622c785ce2009b4551ca4f18450b984c7a657b443a77cac7955ef1fa67a87c90d8431011b1f74a7623bf46e994b69a4365069f021dc90a84cb5a899625f4703de4c236bd8c2a96a1314e06846288ba81a428088c76f2cd1c7b14e396accc5dceabca9ae7b854c5f7aa5196deaa667791195263370f7afdde39e80582c5620299a176a461638db5bd2e1caf8da1b70f03315b0eb33af1e353f4f60f45b737f6d02d6815fbdf26be3db4f96368b05ea769a39b527957f05d4e3c55aa37c376857f01c32af7a49baa01f2d671342614d9742d632d4060757783b5e62924d14320f46238eb720fd97233c59f334018ab2db5d3d0537031fc2f0ba974adb8e1ebbb92aa9422ccdf7cf7e8332e919fa43e7073f1f2c6e1a6e580bc06f898f2269b0607d9ab5208945e525154653d6fe2f8191a2bbecc0ceacd8ec38aaf9741317c753f27a47fbef709a2497ba0d3571f54c3f589320b0fbcc1ab842adfd7ee0fc209be2f986371f8cdcb3b6a10b8e325cb27d3682509ea99d2ca793c895053485693c0761587b2f2d29a2d771d4d8c2df6c3977ff24c988859f1b94d979a945b01f9138a43c7ad6664f6402bff2e1afeffa9a2d5bee9fa08b7031772d179d1032501754f629aca86bc1afb8570f9b8d4a5a7d6eb28bf7642361da0daede4bc3b4d51074b082a975f37c5a463639ba597b2fe2cb0379e961a91d320ccef8a344ad64b1950733abd16049b1f4d9dfdf4ed4f2150370feac9a0b2ee37d06f8e5421ff50c443146cecb5ff0332100c959e25758c84386a7509b8b9e9ae97938c3a569da6a075f10fc652bb46f5f94ed479034c1be965295f8f16d9cf15920efd005095dd2e2229a0b0cab34728cf27eb16d331ac87a8f495589e3a890b1846dcff5dd14afe3908beef9738b9ede70ae8d031f577d8dae6529d4abf3c0846ecc134385a4b0fa18ce7e3781399fa9c0091df974ffc81771597aa398f0ffa3cf347995a83376ce482bcbd16e44f87f2c947356c3399b18cefb7767f3ba50bc4c40af1a436ed55bfd5c36df629057eaccbc9df887b3f87c3249defbeca615a22e8a2c90e83ef48905079ae5f780e5e294bcb4e0f516740e44bd821be2952c893730e2a4f2928dcd361eb903c75ae9c4365751c67db308c2ec9f13d24c1185887938ac502a0383f58d592bd766f351751bb83ac4a240188d334335431af74dcb8d3834d1322ef69eb0604482ff1310697a1f504b9f1de35f83b4ab6a3080b3eb481e378c2e26f91a045831e3d61ed2543e1e60c208e64fec31c3da5a62326b3722caf13e9fe4202a555bbb7448b7979f802938c9f7e490078e96beb507219c6162a7750a45cd134d877ee0cf2aa176eb36c66238176408b2b67c7ca44483ca0d20b440e25c49ca188d981310e646f5415fbeb4b63111f0ad65d38f1dd30615370ee70f5c0b17dc63ac3580e4df87cbb64d3d4b8f62cc83ab3444f55e3219803815f5e4c5e88768c4410d10275aa9426550378c04b31bea6eb0797ba480265528fef7c9730c60e465413c8f12b63a7dbf179b310b0263c3a5bef5364db0844e6721c6c28dc9c509ed1f5de189dfb6e3708464c7d44b4d58cbfcf9d0f1768eae05e72d6dffd5129942e5e399e727b6360305e63c0ffee2084ccdf801b35027708d5fb1803392747020bca1e74ee93fccad3a8669b39d6a7b23dd3d95f613a98fa0edfd64bc8be4b8537f8d4e83ec1e6f9ed4d1c3e7bdc63dd2bc11c39bee8312fcd988d783727380f7fcc11e69b26671890b55cbdff8656f93602835e7d83ef1856f22880d38b7851f846f6e9e577f587115c564a0e06ab2d7689230b6901f036dc24dc2ebfbf066bc38e5ffc673dda02a3330d9ce8ed379efa5cebe70cfda880526837c0d8f3b535fea9c6487ba336cbcb8b889dadcd0568e7328e0d9c25eb6e2c6144c5ffc5e60b74bdb610beb4dd438c7a882e779fdc8d3ec7262ece0e19c4c461baa9e6d591ca1dbfaefd8dd48f580d74331b9f5eccd8a2d6b0a818016d88528dc066eb50e0b2cb06061227a765dac2b42bc7d38b2204296a0b9d6fbc001bc9e987675086a776fc6028c2f8e3fc4ef284ac44977725124096d2426bf416e83bcdc45433657861619e280f7092e58acec50907d8da489ec4bc866119d1b2572d6fc7856fd762c8f6e03ea33ed277fb55a8f254714ab3790aff29124ed2d8277edea5a4eda13282e0b6c71180ddc9b0b408a86ba7d0cb7d3e255099163b9377d5dc130182998898a0aaa521c4ee626028755084097568d88797fde2be030379a3ced21584efd3f727bef895a3ef97f25cf6ecc9e7cc4a3bc1d2b8acefc2a949c41462d6f148ab7cb37e5992585338e55c37d6e3ddb03c1cfac2c986b26f899bb949119924eee94c5408579f1057ccd3a05919dc8637bc171a7973e20661448eb4ec468dfcf33ffdc0b5e36dfc6e277f888c9d593de160cd11d75cc1f4994dcf0c6c101c5d022b2ba32f9f55531bdab85f18b9c048a6f4a8f13a87913dfe25eb33c661d35b600d31f3a20806b53e5ab44953c3a2a3a25be73e47ba0a53543005272528b690c9307b136b41c12ce24dd1cd73ae82c099d0bb52cf1e015deb4e4ee2276d9ac5aa1f86cff73ead9ff5e04cbd0d18a3f5bce78cb1c54d6a1a32866ffc8b757a62e8fd401b620cecdfa2404e3f4d301de09aea98b637b5298f452fc9d74d5363b55e6d189da65b6367610d637811ecd8787a5bbd8511949c1a58d41514082b05a250dd7fbb28a93696e6f1ea44fe335663c3ad90163514bed0270a15d32718b4bf1412c29a4c8555bd5e064bf0cefdf2faf66d0cb21d02f18cb3d30ad717a11b99a0180344c4bda5d41ec33595e411049f98bb717069c12944203a98cb4de2ed160f226f54533abeff1c611b4bc8d96c9861f4cdcb28964868c4221207d9ae049716fb4598f988cc5caacc34e630bc1d479c27abdbd61b90631ddc231307302729bc42eef14127720411a4c405068b8de0a7321879129d370b8f82dcb5bac72d7ca5ff9cef2f3163781ca05ddb24b6467d0ecd0e0699ea90af423dac54e2b00b5207dbc8af684723dc6cc19a875e95a0c8b52be2f60f8ec8acd348cd9f90bb672121183d9516a07735c93e0f2ec783c272e478bee2445a9698e59214d6af238ad6e19a7c8ecf64e6437d4ba28a99af918f58a91564cd2400659964d154c5cb19943189034c76d47dda3f0fda30763b748fbb612682f9b6642bc4e335539cd3e8cb3f3e034e832360f6e8c3f6a9316ccc38ac34b61a58a1d63f640a0f6c5c976b5fb117a590e9a62a3a2f121335125b8463fcac29ab58fca59e5fe91ae18080de741ac2094437f71c268d424bfe0be7411ed853586291b7da4616c01edb42ffd54d9134450e570d1f5004b03d428dd2404869189b7f0d462a6877b0ea3615717a6b2ebd2fd95f02313f10870d0ba2c2a99c56c4eb225fdf6e4917826b54c131c4de7a3537f13076438fd0d7ef56af7e86df7ee6c0a5e827e69f06e158a56afb124b37efec0c75a1ec1a4b7db141c04ae9c60e64495fb74d8ff78fb8e409be1bde4912ab0df5b089d0fcd55f86fc795e2951c0aca77c516f4a4188d3b3c56aef6f54f85d0dfc5765302d8b8ce77c5765f5141b449b12cebd3d1371642d91bb316bcf6affad41734fa0b04104ca7de6c792155774d12edf441d3ed5d85616baaff210597a4d70dee7c4a63a9736cead663d7352b9154159fd33e37b50d1b8661d94dee84a639f7dd220a8e530f4f45f3721c74937f01231ce0c0ddd827713e9579d72c60d4403fd3772abd05709a2855e63f2f612c95b33684afbf688bb37631542dd4cbfd7adedff606cda64205312f13d791c1dca6d5f1b35eb87e71d80284343a2f834b3ef1fdd57df8f240775346340369186b371417b1b22a3a6850a35e1e70e423879e6b6d68faa86b1036a74551d3fba019ae0144ebb5d07f8d90c3b2e96024dfc7be23c87c9f31f8e0e7437a9e60e6bf5172f1912e1475097c1cd32f57efccc487aa2c5e9f9864b83c53860ce02a74f5799b2ee9a1fca9c03d956d6131569f5c4d588753ba2cf3ff072b848be361509f0414ab97bb2bf760f3272ce4b093a0e586ce16b0641109f7bf5dad5fc2e075f3a54f31a6ca13581545d5d3c229449164ac0135629435fe67b5ff1481bf1f262a22eb866dea775352e7a71b94e50741b93e8e42ca36b6ef36bd25068413d4a76320edc8de8f5f62b0e80a2623d28894cceda254399cd039cb34c55fb271da522dc3ee43f3d1e02d53d3597d8905d811be8716cd9508887fb7e886acf6e1eeaac346c0d52ed82a8034113f218236587d791f204516536f8d7670f4340f692a3cd34b60efdadec06a1ef72287e9cff4d587f2c1d618757a75af93188982845bbf41cf4cb2f8268877a1f9a91380b17f96c29e514a00c40a33dcd07d9c19756c918e2dad1f5f0958948e58f6ecdd16502bac3f33918046bea182a069057e0025098919e205c41d9348700845bcf57461f2d25414ac0850e44d165b2610cdeb01db34e022adf79b20e63f28857067c7f822bbda88f2542c6f8fcec914a0a69b5bd288b5de60fde471583288048af6665e279a97f115a69abdd5f5dfaf9baf075e2d872b495b945aa35b9f2a710e2d0d7cbf641cae7efb81e7327e10a4e303970eec2b84c3e475ef5885ec7676c81d7e646bb3a88238289729f4e8e1dee7d8223a5dfc217c35391411a298d9405ae6dc26ac10b980f3e0483fe6e53927128568a32ed5f7eaa4615a5568164c13a72462029d3f4c3d63fd2fee11cc9440ed9aedb024016b1dc77f276bbeb4488bf5035b2a78603b85fa266d9a534ebbd2a8c0b4992209d6d8e43fd4a64b213da28d79db5b394fc45ca8f713d3d3681a503a36f480695ba267f8d53bd0c129a275e99ca83b857ab91e444dfc648ebfe0082a4e00533952832a056b00c5d402c1b9697f4d17fbb7b764a271a46c7b61041d8ab023b5c44b39198944dfb7b9a20c0df42eff401a82635ce4270b6dde90402052b2a0c159f280e73713e02fa5b7244e3b9b66f9df73eb52af63871772808efb2346832888783c63e6b0bbf936a0aa9e141a0120a2324e9383e769f50699da78ec1bdb7572627e7580acbf3cad72b1c9cdeaf711e922ca04e1ca4684c66211798eb26c35ec37aa71854a33f449e6f7456ad6bd2bff5b5d4df65929b6e9f7857f72262e991389eed9008ba093efe1ac7f36249ee530b2984924fcceb784e874690ab2f84bea903bc904c07f58f23cc8d54e6ac9ed83ab4da9c140f3ea897aaa2c24d05eaac4c796eed0c041b8db357e29bf824e1797bce9e1f6b0926a8560d59b7dc7cfd24b93db2170997c094d79e03c684933ad53e91a17023d3116c9eca1348bbd2b5e0d80c7c80a29ac4973ac83803eeddfaba4a7f430dfa87035e4c3f39bee14bcbb696a3f40bbb189dde1543adeab0b4d4ee625861da503c2fb5c748f351df4916bceb5a493be38ad4fb17e0273fbbfe06ae2ffb295269dd930a9823c33ef37c5470f49b1a0013594ad53e9173f5498e8a25b44e4fc01ed3b321a5269f11b7672192f196a098aac67dbcdcb925617385e02be54485efb1114ee2a69a77a4ec60a126815a29593b6eaccf9695ac6a28b13e8ba88bde3bf95b6121e5ef11a5b236fa7c00b47050de6a1db9b6326521f632c87690bbdb2db6f9628054e384f3d8bc3bb60255c097c95671f1ec7ea722366b992af7df8276b673a040b94058f5047ee53640eea910f171411a9cfa261cbc5bfa4b79f64c1c8eeaa3e2e2fa9fe861705c82985ed01d5a3bde50b523de10faca25c44c4eb78b3b9da9d4e563abd4867db7e4bc664677c8196f021f3a514394becb59f51a30858fc76defef4b104e2874e7a8a4562f61d7ddbbacdb5591d96d0ec14b332c23f76057e31e02510d462c69143c6e24b92018dfb79f06711aacc3f1fd9e01628f0c03e89466eb39195e6f99b5b273dd49b0a37d997a1a1666972fbbda2123c2d61f8db93161937b418f51198e85eb1480336e32d5da75587d04300e6e69df3d2e47f6bad141fb0da573f30543cd8810d427e1f9eb959a7a637bfc4702d9e9bed79362b23e5c56911902aadb291a7573110e406b6c18d860c084128dd103eb338f6a9666e91845566f40da1325a91349149a1be26561de72349ce354b923b441df1a0558bd6dd66ee06199c962ac92d86cf8a6e438d2634c2e082b46588b5b2b9d857a4331b77d76dece1ef76ebb42e580dd8c6fcc15f68875065d508b2ef9254bc57c9bf2b25579b6766c1b1d46e2bd2a3f2e4f1aa5d48f27b51c47dd15b90393838397ba9572ee8552c0986db94cf8b85505878f169df39f8b4a21aa982165590a7cca76466ba8cb47e373f4362880c55e34f80ce08d03d1ce9f152a4fc0e893bb4e8c4d90af3249c06894e063b0aa5a84d240b02778cf27df8a68a74d8ae74ab495fd73aabd70a203581559ee88a05d6feed165c2bcea3d89605c18cf53eeec13d15f7a0d0e0beafcbb59372af7128e3060040835c1316cd30f67a0f0c8ebb3cf511c501dde1dcfbbfde8619290020f13d0057f5e55c8e402747058c931e1b218a9fe723cfe5cca5fae7c1441edb9d61f7c6703d5811e6ec3492e8cae1d4b9029b7a333b953e28e029d1827cc6404749597fbbb573fce800e958ed506bc8a470ca7b3a6ab3781c16b68a6ff5dec810b68a1fe1cbccf26b3625c099bb2b3b580d3c22a410cca903425f8a722d630f76df507571affd9a19b78bf5702e00ae3763f5e90561666a9b817a01ac993cc739531771bfa761bf74deea8875868a48fef8d333075e0d2bb7a4d3c1d765a188b30043aac02c19a4370ce54be3b588877b17fa929e58925b52d36aae8e8eda135053438a43a9fb2cf6fd98b118c4232724278f4f5d31ad0c6c5a66506059edc9bab62ab479b84dbcaa8d93a4b919396abe36a8757b4080dd9ea45f8c7f921b390ee35c3f572c1dc01b432cc00c16a1a9b5940870b139d76991df7e8e985182365ef0b27f91b744bd4e0608bf1d12e54ea28c3615f1fe4d1873cbf1126170586577b5bcef3335af086b07b4e25b849ea1c4f6f88929c137b918f9e2a5391c0cacd504a3a20e200e836dab8392ec04de71244d52c313ee1121d24b10ea574e030c782f7be1d063eba42f535681a25d2e45c6077553fc9b798c250f31dcccc8443f0d5f27c824f965732a9bfb9d7bff64330af9bc78c831d655178599ffa187a2a096074ce03b26dce052cad9a37384290aa6356976a37c69813f1af2bbdcf17996edb7d2c1b7bd34d3e9d50ad749ff818e8c92615189128b759f71025a0030a4ee9468b2fcba9a6568cae0a65ae18c53fd2e6d557c821841a2c9cd72c74fd13dcb56d2a76eeee0942617aee16520c8637b7c3bfd825c146bac46e7191c75699bfe653640a902bb8691252d5474828ae2468e04e1fedbed9a499aea3e5c5ad09745671b69c00e2d23f5da6935f0232531ca3683b00eaa32bb3d258c6ca21e1a369c02905ed1472a97be35e81c19c469c8539545d5dda9d72656088492a65aa19b0fb9c29a69e7a00f89d7afcae67bff9501672dbc77067806a6a26ab7a467f9dc3e14e1749ca08fff250520bffc003e18edfa306db773264f8ae2a2e6c5417146dd82641b5f2a2c6855ba0767585f0a396e67f8d286140f02571b3adcba8b2faa66af0a65b9e5eb3163485eb8600d25553d0a2270b417f4d1b85cead0734ccf4c2e707671c99807a24eec3cb1a0befbf1dd6ea3b7e1d9a328e54da7162d36ca411e217d9591bba1a3aa9f48ac094577b551837e4e381399c93b430fe8c03b8e9925cd6cf19d22b04996090d1cd44af93381d5d1c0e953493d8248a5d9a860b825dcb7bead72e8e4934f09ca0007cb0e42746d166789ce8d67bb8e34019dfb6c8b2c318f16faa899c134d3824325986c8d9c95f4ea32078bce6b3071dcf82d1eef8ac13044777d21fc1d1d8d19f5bc4b042cd767b75bda31a7a73a0beba02b6944eed2690863b3465d522650da9b5e9085f9585cad250aadd7208c618496b0f4d3fb4bbc13c6bd31327e614e1b3ca09a6e55b772dc8ab66fcd5b40deac0267a8c58fec13f39ef98733f1086e0f726fb2b7fecbe6273c69ae9b3392c40f070e186217cd7055abddd4b475da23199da751b2a7484a0e0f74e40ae6bcb551a1717743368f78f7ee5b48f180dc5517a74c34642498be4b4f4adc055a39a8f1e38c22f39bf9ed8d14e7fdcf43144e971d065d29f7d22d893c2a1a996a0995d9e6b9269b059ffe7fc719988d8714740ec1d52cdc1ab1ad730b17eb5e137730d57556216e4b669622e745f3c833c69c13eb014f91c4bffd5912b03d1b41e960c4bdfc6afe31b1cbfe126d1c752bd9b2d92fcb9b81ef98cb99e245f661fdde5490bbfe6209d834b5dd619e30c819b411c2d2b49eed9c6a3f88a43b4b9fe3bf44bb49ea1b9b79374a09e4312e60c804a5f24ad282bda45684b3c3d246eeb0d57829f7e35730b12b4a2b6fd8274af98d17f922bade1e40bf440b3c03c5465bde4cb0a56363b92f2085ce9b5c2a091a5826f213c8b297e83068c785712a0f288d2f1a6fbdda89f0213abca256ad04a9cea3f692387760c83cfdae697f11ad88b8a41a07cc63aa331e8ea2b15cb084d8e6e07d17eb15314e0d14dcd038d35a5355b3c0b7c67ef23ed6e6776e5484ec8d659ed7cd12845a5934c5fe83344eaf05f266fbefaa8af090e2ad3868f18aac7f3c10c4eed20a6b3bc4efed27ab202d661e8d010722a77e419d5115bb7e24f6aa128c06303f401f3f2decd4ae2ae71921f9af8632a5f53e0838790b38f5e59338ebbd22994d929243c431803b81fe62ba6881d11819e62c2cee4a9d10156c62a595e58620a51f65d188b6fb5e821db4e2b050e6dfb8dfc9e55d967bedd8a147c7a40851a51650f35e123e90ca94add46e87f5e0b62e333ad1255567e7cc1e2da389353765794567af97d10702f5407d79313685a7b23f4460cebb3771d8c0f25710d990691442ab37e7652c361a305e22b00e5f6bc00832e0d1c11e79c775bb1576703a707057c92fa7646ba119e425f9beb73528b9c0bdcd09942ec59d5f2325403651f6aba49ed9dc969066557d48c2041d8c3a4cc69d5ab81a26c8ecaa3021b7aea72bd16ec95d16b4542eec65dfa65d1b811da6d8071b1e5737805e7d7be183215ad227e1ce3f97f5a0a1888207c06c6bf8903a33812ffb68415b442bad34cd44b44ea85b6e37f1cf1586825ca99e632076130d668945fe5753fd834663430aa046c3e407dbffdd51234a907476439d5097a8e31a32ad06c169b9350eb80c19a099a4c6e96491e2bdbfdee291bfbadc9c94117af45b9f75b445f9558a613984654e6624182936c35aff8b67a30447629e533bb76ebaf64693e671b2118c5687ca6dd5fad6958c3f01d0e9d6f5cfd5e3dd8531194a13bb3c553d54c85905d42dad4c70cf7ed8e5ba4762b0e5d2a012f65815a8c4a585fabfebd20f961aaef4ea7c96158e8fdfe5d6a3e02ee594af68011007df8e817408f819c71d1e6ff6b9a7f2d05e6d79e8db2639f648241fae5e265eb150da98c628646244cc62109eebca57fda0a718e69fcc12ca01fe182388950dc1f529e054a0b3c2a89866de87b40e54fed5b27a9acd784e41521d8bbf95922448d07bea17be6b4bb5fa792521227495384d7e90aee5ca0b2acae497bf1be5b3ac53e30be5c3d1204ccabadd0a04bd4953ecd8a14655949f85a04b6f6d48c20d7e46c2e51e1bfcecacb61f95ab9b2bc1541d9cd768421698f50a4a450a909656b667efdfb806b1d2531a98d86f0136928930e4d581bb2dd224bca16d13480abf62aee5ba9ddce2bfee470096cf7cad79d83be6f5f808acd2326d417e2dec4ff7d5990a10347d0caed407e50922937c3f479e99dce0740f1d1c164143efaedb393666976f096ab456b2c08e3d125ed7790acff62b3171f1820f4379f4d2143159509e0270b1fd10a7f6e4df08da1fcabead53645db54f2357b26b9118d2460b39e1ac4f5d5c59acbda8f418b78f4c6233652890b3c67f6ff18a8ff51010e24d70bae11eda2feee291eeb43c7cb647c1c2c09b3fa5561fea63a38106d11a2a273c814867677ac2c0aec94a0385a0c3507328b27ed2f60d4ac4cc0425edc744894edd364f9d2f4161dddeba0131e8237121003a35c198ab3184c943232547617915875904288e247821b06b9eb55ca43014db23cde8c0524f20e29da959343fbc7591b8f313a70493c29263f989da020d66649f9c496090b2abbbf0c6ff0d97307c5f6bd8042e857bbf929a7d9d00b0b519814a984555ba6c9724a627723d442d4c068b7be56936d801f18345c5c3f28205a8587159e68d6bff8d9d19110037d1cf89e4906895ec1d2d9edbd1ef3ff7db4ccfe2f53f3d4e32f62849e38013089bd164f1ad5d9dbeeaa3b683ecc030635a50787e25f7c0ef0b1d93a42e119e08e7d5373e89286552ac919c7783ccbe2b36d899189829b0ba66fc9e407f8ce29b1cab361769cbbb2a38fe4f7a4d6a2fd185433006f957afb26ca625f593242992edc3c0699b01a3421b2e1a9b87d4a575c929e858eb2a2c90cf829982e6e54d85e5febdb2bbc2347b2bceedbdc9a5ccf62af91b96b6b5ec4c958bf322549eaff57b79941c11c5907267bc29938c64984acba0ef8fbacc9f7114e2e63472f69ce4ed9ff55f96849e93c1619a78d248303edc295102fef5994fb315e8c2c4865e149127738e3f7c4f36f97a00c9c0329ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c061535781bd2333a5c5cbc961a0c230ae8ed049f3cb26cce0afaa965675cae2a97dcf8c87d2916405cee52a5709225bf2dfb5452277e091b6f36ee251fc9f31532db44bb177a465208cf3b50212cf53d3c4b38df55d0051646b5fad13df3a0b6e09ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c063fc5b25de544ed98d8c6a1ec548c47a5523e939e8bf07326efdc133352c92b758035c841e4360799f0135deaa0a3c176479cc9d356fb8b3001ee624ba3b4c7c39ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c062d8144189140bb7c3ac457c80db5c4e44a8d4e443e2773311c9fad69917dce60c97f4cceb9c2dd63df80675554f335640cc46875185af539e2b2f3d6b9e9d7ed57d1ba78e19dd46a4dc3be448ab14e7f5fa8019b3bcf94fc58c2d31d1268465410e277ae39e189a5405eb84d31408cff0e4e1bb4698a4778a86a3b78ba53b9a754a40c9f144e80fd40afc82eb5b85fa7da166804f41641cbdfd1b47c17ae4249962e3a7f7bfcc5742144c3f1e81ee7154b9c3f037e2616226eaef100e203094f8b399c1baadbe4d98eb1c5ec0c61d66af08f61c9280d8be84212bb3aba564f9a4e18b109b19b6aa79663d9635ddced8c8975dbea92e2f2c280e194449d261233fa3e1f3a9bc83ec3e56fdf4d164020792ccf9cc7ff62544e6b499095e5e984cca627a0af554b97ca19127b8fd4a395feea57a22e3a481bb74132c30f7a4c4cb3d891b1c7782cb72c1a45673de45b15d7d97442c83f4f89a63561eea9e5b2db1474967cc79b07f116dfb5f0df30993258310ae8c87b698d164248c81428906c12b38a8b4abc38531ee4da2c4d3a33a9f150147711254bb01e7a36fcc94d01be17fa566cb893fdf9409da62c4ebfe439f5d03dbf215f1cb604acb01b9e42e1c0d83b6e1ca0f0f11649c4b689b7a563f6cf82ac0d608708175515b1a568c4c52346285841d56c54638db511bff0f0bbc2958b1b0866674b54b99729f756887332ab18dbad97a02b74466fc3cd460fdf2a2eaaeedc51cfaf784305da8f01f2d21b1054ae1aade69c0378e2d3a612ed0ffc24fcbd781f7f93cbff1ce93e7933b08922648e164d616509dfba870cde711f63cd7105415ed680d5603977f7c4aa92b24ed869b213d8fa004b93da70314ba02e2a40a635326de3f88b4f854c2946ff25ec150c4c32ad3fdc8682baeb8c28e76f067abc27af406e95b53c22cefda75fbf996bf46b60603a24209d0b1b2dc656bcbed0b7df5a8d76079daa4e1552d5540b12f23a8eed09cc9e87bbd876ea155787e6d8025fc03fbb5eb35273091fbd1211e7f2e18f940087c85f2a9a7286b61a792c76e33387d6033f6fe1329f56d4c4a8e7c2ea4d0efbcfaedf4466fc28f1cadc2b5297529deb3d231839c08652bc8f61070951005e5851b4624eea7adc326ce0f2bd71009b05b50cf91697e983620684e7366f5e07480e9fc5015cbde9996770a2f0da5aa061fca258a31a647323a35d7e764e4c6d0f76c9cae5aaabf071bde7b5a006414914d01c8c33a0b9df6b699bb963f2019985f34d30d8577db06f1cab3bebdb327ed63d1abe28b78fafebc63bf30bb56c4759f57160674ea01f66be094e296a7465cdaba02f6b2a83acaca8f8bc1388faf3dc1db1dbb2deb29bc89f347745225101779b4b419ca58b87bd619683f51151bb45c6a786c5fad5a856b5e5de636d1c9492c06e7b9cc77144dc7f94f1b14abfce2e77d18f0143fe3d8c5275257b429efb6da34fd654cfcca98fb477909cce87c3e55abb2fdbd80d9eb1059a13c4d29f5e0c35b9522b7341e5132d6be1f2c11269d1a5703af7c9f902b3d107e898af939dcb8adac11cd39304a705d79551eba38cfcd045e26ac140d22eafd6448813e6ae8b2fa9d597d42d51ab3f23e702d92c0a306857004026ee6d9d805f705cb15131cd6a85f4fe6c562ee543b0fbb8c06e5e825630c9c36e41dc3939cc7fcc12c97f0d26ffa71f74847cbae4f6a51590b276e5220fcdd216b9ca348c2275d50b1005ed566e571ba36efcaad31830021608c2f422fde6e3851a9606b5a438743fa1fdb54e7df672bc0300249c0b7140f5c6e2c822b43f3069ce74b126e03cc976567552671473970ed5fe3b94bc5bcd3c8f45f47b93194eb3147fabc02c6c0b1337f388e33905c00ffadf99fc1486083750c78b8de368c512e36b6b501df190cdd0009017798e6e09873138fecb58922e9039d1234f122f365a49c5c4d2dee37d11b5267d4f46737e0c6549be0b2df663972fb108264bb8902560007582322de80dbaaf2d2b4977881fee569ccccc12140caf1087f869810eca7befec11accedac05229c0571e4e4113221ce8a09f6cd9c7d3061ec0c0b9ec2b8a0d4771a80974a24b347d30f44fc7fcd5e2055466efd07beb2bb6e0e0aa355ac4cb77e4edd15cdb6e7f4c1a6732ef9962cc741b8cdb7ad0450f6c3d31c21a80817c8c2088c29a5daadd9d66aaac828097afbf56c2780c25db0e66071c8db09103c2d97d9da01551d360382f57a94bcc84d2c827a8a0c5c3d172b1fcd13d63e9901e4ae8ecb1207d1fe8c223bc221da7643f28b836e21674212691329d478a71c4fdd6d383c401a6bb9e93f09819be6d0babfda599a23db562253f2d2b495ae6da82c66a8f63010ffd6e1989e927c176ed5c88b49f19cdeeaa97c4dd63c6e4a36246c3eaa40f4ca6d395cb9f707e059bf98baa2dde96f2086f8c709bf56f3c710768d6cffa617a26ff5a381cdc6b4d74c9078b9a756f1f4bcedb8cd6c177614c09eae8b455de22cafc2541ec7a0f9ac1977c732fd45956b255d96a5d8c855de47b57166054c46978bc728475fe96b0219c598dc71924534b76d68641356d9275dbe1148ad175713f3951f6ad5ba6a525d98db04a253e4fa22a0b7d13a2930bf74210921de659e331a1c1647fe0102ee547f83028d05ba76434ccfa8a7ecf3eecde2302276b9ba13192932fd60614b6d36e0ffaa005162523089d9981a70ad9d5a0233e08ac400ef0d6c2559de5ab375a3d3c4c1835527e65d2c6248d4069355ae8de32032168e5c8bbc68070d338e008c504ff434158adc395be0378e6680609ab937947a2062aba2b90935d6c96d75db61f843e107eb82e379580a5c0beaa19ad9441be45c492eed7ac4848e9f23433664179e9fd91f5d3edb271983e00d652ad037965f8b1c1c5a37b7dd8ce45d69e62ce0139112e4a962e8981d8aa6910608b99738eca62a5832e025b52d2849bf3d7a78a2021d5df221a241139f57f9edd464099b1d10679c7058e754c7230c37983c667b2fb2ae06eb37a688a8ab1ddbcd06f5353bab30b5f92a23c8db5ff307c5c7cfd3a9aae2b9191847bb6438398dec3db9a1519ca72d7160939894c093c18791c9a9a83f3a652e6d5d3225a6b9c09269b9f157f95ebf8e96b0bd8743f569e4930639f3ea985959307a4cbba12006bf14ad1140497976060f387bc75c338ccc7da15f3c222737e817af45561ba76f0519319fdc442d942ff7405462d58ae06af2e1ad2ea7fff86b2d3f1af0d649898a35e42dda4f26a3a7e920c86b85f90f5a40ac4936033049e6b02f5b4b13eff5acbf5c28f949dce714d44a5517fb92dbea952f933b0c86818315c01d0e39026fafe23dc2c564806bdd986cf849700533d0fa02aafc42b508432e94e837f2310a94595da24b6b6f11ff60df52ca17542a90af712971b98cc25b7c3857ed0315a848ebfbe20e4bb7dae8ea515673d25fe4c84eac5804818d67bf80e99a7a2c57dfbc3e105be913ed7d6117eff83c57eb11ee6994826003e7419ae200805b220b7d854b0ba02d793315637ffa6f2068866bf550eab83524f31459b31586d7abc0b7b7d8a74242eb2950b8fa66093340cf907fe9e6df5591840e65833f3dcd2ba5db2f11d4ca3d6a1b31f03ecdfda0fafafb6574cbc867b1bbf704392e366f0eb5d1a7f1b865f46978da6019015ab8dacf0e3c33641ce834f9f3f657aad65334c2b059cd7c4e64a390021f4ea250e40ab6456bc84c211b61f2b5568d37ff82ff11814ee6af76cf5d68cb8ef55adfe742649241c52d08b79eaa1721e99fc3378ddf5ea037c37311096dab4e278d4ec1e12eebbedf1d2c5dfd4c69e675f2751492c50b48ab04d2620601285185ae2858d4931ca6fdfdf2a8a88249ae7d0a538e3241c200a64518507a64b1bcec478e108d863a7f625171ed42582b7b9a9389eb3b665421f3d68f59425ba512f80434033bfc50e597def94fbe011380b4aff784295d72261fa2322ba0a24f56eb49e22957a47596452f0269bce077365ec09d1a5a45696fdab3bddcce23ae42a00d3927d03b8f214566ac4c1f5d7a1c872771da5176d41195b5d2b6c9645e0f21ee32ce61432062862068d262ce600cc128407eca99a7da780fcb3e53d215274512e58c7dac233906b856ba279b7156f1ab2c311f47814618f7ac0689733ca19ce9dc1b95d9a0d6e884ff2c1efc0e1ca6e4caf47b9a72f0c7560684e5205c1f2811707e5450d1abd20bcdd39bc37f3fd5374965f243d104d9eab3f752764ce8464ffe5e25e89d0a04fae437b42fa22a65bdbfc99b8ab0c2d8e5c2ff72329420f51369613ab2c92d8d20deaa106732cfa66b3fff2de56ab5d25b45ba37042612ad4833660a3d2a908157b199a150f00fa47e500e83f950f2e98a632b002396636f396153e0975f42e0f48be6be06a655be35612c6d7f8d64dbcd3e0b306313602f99c35a75d6169d6a3fdd8241d3f2e4b67aaa5bb77f40b696fdddc14a7357564c3924fdddcc43837610a2310e5936d9fe55877f5de2977dd85aad8ee1edf3a571e7483c0dbd54d05b7a3ef1af8559a8cea6625cc8d0891f4642d5529955a1a3adbb84dce88635dd8763aeeaae3ccb1ff30954f1a1e97aa47dd384458c5080f8c7a53c534b3e379a6c0e884cb35954c877685917d9dbc52e6bca78046ef4103be357b6e44946ecb8c4d5399b56efa85381be5d79fbeaf94027afeede3b623b17090bc0e6cd5dcf3a94c46066449def8531ccd1c18d8f3043500c532e0b0451e9c4682255c1853c44a58ea9adc47d55ca8a23e276dbfeec3f315eedfebc8271fe656ca0d43949abe60ac555d86d5c29d092df0229bd1986b40dd990356d5f23656fc05f48aab0705e9cf0ba24ac5e1fcb4d339cf2fec2d6942ee2ddd4c76a8740ebf60b3ff9be2fff6a5eee01eeeed802177fef4705de5efc45ef2c1a22fd745a802cd9b0f8ae9025218d78e0fa2408f63575b2c563c0dfbe778937e67ff4b6aa6b53e21fe0c6e922747e644f23d204ee01cbe63e6c0abbca916c47078f0cce8af94e3830d15e5df49cc716be8770c51914ff0e3f311d32a820bd0f7138f4bfc6e7865143b7e9b89eb2de9c498468155fe29326eace2b0049466086d14dbfc9b0a6f2e18f6b3fcccb6fef8f4f8eff919e726717544612fe567a3782225d52a381e06cd77c0b123e13344e8696ea2a3b3852ba129808299b42b9a96a8032d91005a4384eb16309e593850c80e4c237fd7eb2c008a7ad9673b898cd061ac82281aac3072752d4ffd0b3e5dd88c43bee0327c14aebe4839fa3685c2da9227a4b56770c8ee5f936fcb11d8dbc61cf6fd04746421de0539591fbd0c83f19a4b03d2eebffc7279faa45ad3a057844753d8d744bcd79b327fffb478924af20b870e365f3e1348710d7552d4ca61490744f587fd88674ac330d034a9c4ec63c198549226d745eddd979e3696e085489dafad0ff1796090e96e442af5db25e8ed864d5bba91dbe1e1dd679760ab4e3a7e1fc4e4f106544dd7d611171f64b0dfd2435352b5d61000694492de4a590bbf0b7997228dc7bc3d708c72cdd2ce24443963600dd975e553c22158239ae7e76935e3cb1749ec972e60ae84ddc46dadefe6c69f2a158ca9afa6ced8a715b86ad3c1da4afbc4eef16abd8a522bb946d841bd389ba7415ddc54b6ded71d237d28534e64dc638a5eba0c3b8a6cb1cfc202bafc7088497d4754af710ce3792994b395743f0dfdb096a39487a7f7b6e2d13b19a29f14cafbb51c194e98513e9d54c2fffee70d6008271dc535daa1bb9abd5c0594fa46bf17d309c11368f5d80fa5c62d3683546e4833b4e02ca11bf26e7085cc0482dbcda62ed68178cbece361394a7454c94444da72f600cf6c3dcc1029e0e5c8cf54e1bf92ec7a4f58d776063be0671f956a55ed4ba0355de686608143cc4868ca68ea8846ac0022d002ec43c2c75e5e35a92d4a4217c385cadf93f7a35867267f449b058438f08f013293c6ce274f749aa502f8042fcf9a1610ecd11edfd7ac365efec04ac27a5c2dd14acc307ad195c01e4972df13a1cc3d17aebc91d3e9fece1e414632fedd297bc892c862b55a5ed7aaeeaa4793eebaf6eb68c2a41339126c4204de48f6c529f0f1b98e616899b59ffd61b618f993c54dc1e9e0f82f7f9798708683b601e2ab06c3c0d3c3dd84a1b5a65fab2e5bfd405802a826d13709e8ff4fd48536ad925ab68ba5a99cd580ecb6c5c250bc0449cb803df98903ff23519813b3959a52c9be2f0a5f86846d6956166cfa1783f7a825c3728aea244fba31f2b6d979e3bce11b689ac14b29358cb90864cb3420bffca281cb92aa0b08bb54c74687eeb4259c7d372fcc97c9bc4e0b1464881c1809ddca66b696341ff1596e2cd2c60b4310ef4dc9942b7aee279838ab87c17636297585feb96d90d27c657614c718a8d16c67e6bf2b01c4dec128d03f6494489a5e5446c64ec29985dd31790d979ce26679fc2b70d0264207900f950b../../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/dtsrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootkernel-rt-4.18.0-488.rt7.277.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.3dFo@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[qrDerek 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-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@NANBNCNDNENFNGNHNINJNKNLNMNN4.18.0-488.rt7.277.el84.18.0-488.rt7.277.el84.18.0-488.rt7.277.el8.x86_644.18.0-488.rt7.277.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%s%ttttttu%vv%ww%xx%yy%zz%{%||%}}%~~%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$$$uuuuuuuuuuuuu            uuuu   !!u""u###$u%%u&&u'''(('))u***++*,,,--,..,//,00,11*22*33344355*66*77787997::7;;7<7==7>>*???@@*AAABBACCADDAEEAFFAGGAHHAIIAJJAKKALLMMANNAOOAPPAQQARRASSATTAUUAVVAWWAXXAYYAZZA[[A\\A]]A^^A__*```aa`bb`cc`d`e`ff`g`hh`ii`j`k`l`m`n`oo`p`qrqs`tt`uv`w`x`y`z`{`||`}~}}}}```````******uuuuuuuuu            !!!"!#!$%%%&&''(()))*)+),)-.../.0.1.2.333435.67788899::;;<<<==>>???@@AABBCCCDDCEECFFGGHHHIJJJKJLLMLNOOPPPQQRRSSSTSUUVVVWVXVYVZV[V\V]V^V_V`VaVbcccdeefffggfhiiijikillminioipiqirisfttfuufvvwwxxyyyz{{||}}}~     u  !!""##$$%%&&''((u)))***++*,,*--*..*//)00u1u22u33344355u66u7778u99u::u;;u<<<===>><???@@<AA<BB<CCuDDuEEEFuGGGHHGIIGJJGKKGLLGMMGNNGOOGPPGQQGRRGSSGTTGUUGVVGWWuXXXYYXZZX[[X\\X]]X^^X__X``XaaXbbXccXddXeeXffXgXhhXiiXjjXkkXllXmmXnnXooXppuqqqrrqssqttquuqvqwwwxwyyyzzy{{y||u}}}~~}}uuuuuuuuuuuuuuuuuuuuuuuuuuu                    !!""##$$%%&&''(())**++,,-..//0011223344556677788999:;;<<===>=?@@AABBCCDDDEEDFFDGGHHIIIJJIKKLLMMNNOOPPQQRRuSSSTTTUUSVVSWWSXXuYuZZZ[[u\\\]]\^^^__\``\aa\bb\cc\ddueeufffggfhfiifjkkjjjljmfnuooupppqqprpsspttpuupvvpwwpxxpypzzz{z||z}}}~~}pppppppppppppppuuuuuuuuuuuuuu              !!""##$$%&&''(())*++++++++++++++++++++++++++++++,,,,,,,+++*-----------------.....................-----------------------------------------------------------------------------------------------------------/-----*000000*1111121314111555566676555555859:555;555555<<<5=55>?5555@5A555BBB5CD555E5FGH5I555J5551K11L1M1NO1P11QQQRQSQQQQQQTQQUV1W1X11Y1ZZ[Z11\1]^]_]]`ab]cdceecfg]hijhkhlmhnhohphqrhshthuhvwhxhyzh{hh|h}h~hhhhhhhhhhhhh]]]]]]]]]]]]]]]]]11111111111111111111111111111111111111111111111111                                11 111 11     11  1             111           !   " #11 $ %11 & & ' ' & &11 (111 ) * + * * * * * * * * * * * , * * * * * * - - * ) . ) ) / ) 01 11 2 2 3 3 411 5 5 5 5 6 7 6 8 5 5 5 5 5 5 5 5 5 9 9 9 5 5 : : : 5 5 5 5 5 5 5 ; 5 5 < 51111 = > ?1 @1 A B111 C D C C E E F F C G C C H C C I I C J C C K K C C L L L C M C C C N C C C C1 O11 P1 Q Q R1 S T S U V U W U X Y U Z U U [ U \ ] S ^ S _ `11 a a b1 c c d1 e e f g f h e e i j k11 l m l n l o p l q r s1 t1 u u u u u u v v u u u u u11 w1 x1 y1 z { z | z z z z }1 ~   1 11 1 11 1 1 1 1 1 1 11 11 11 1 11 1 1 11 11 11 111 1 1 111 111 11 1 111 11 1 11 11 111 1              1      1              1   1             1  1 1 1111 1111 11 1 ! " # # $ $ $ $ % & 1 ' ' ( ' ' ) ' ' * ' +11 ,111 - . / 0 1 -1111 211 31 41 51 61 71 8111 9 : : : ; 9 9 < 9 9 9 9 9 = 9 > ? > @ > 9 A B 9 C C 9 D E 9 9 F F 9 G 9 H I 9 9 9 9 J 9 9 K K L 9 9 9 M 9 9 9 N 9 9 9 O 9 9 9 P 9 Q1 R11 S S T T1 U U U U U U V V U U W W U X X Y Y U U U U Z Z Z Z U U U U U U U U U U U U U U U U U U U U U U U [ U \ U U U ] U ^ U U U U U U U U U U U U U U U U U U _ U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U ` ` U U a a a a U U b b b c b b b b b b b b d b b b b e e b b b b b b b b b b b f g b b b b h b b i b b b U U U U U1 j j k k1 l1 m m m n o p o m q m r m111 s1 t t u u u u v11 w w x w y w w w w w w w w w w w w w w z w w w w w11 { {1 | | |11 } ~  } } } } } } } } } 1 1 11 1 1 1 1 11111 1 111 111 1 1 1 11 11 1 11 1 1 11 1 1 11 1 1 1 11 1 1 1 111 11 111 1 1 1 11 11 1 1 11 1 11 1 11 11 1 1 11 1 1 1 1 1 1                                                       !  "  #  $ $ % & ' &  (  ) *  +  ,   - .  / 0 / 1 /  2  3  4 5  6 7  8   9  :  ; < = > ; ?  @ @ @ @ @ @   A B    C D E C F C C G G C C C C H C C I   J  K L  M  N O  P P  Q     R  S S T S S U V  W X Y Z  [  \ ] ^ _  `   a b  c d e  f   g   h i  j k  l m n11 o o o o11 p1 q111 r r r r r r r r s r r t r r r r r r r r r r r r r r r r r r r r r r r r r r r r u u r r r r r r r r r r r r r r r r r r r r v w v v x v y v z v v v { { v | v } v v v r r r r r r r r r r r r r r r r r11 ~ 11 1 1 1 1 1 11 1 1 1 1 11 1 1 11 1 11 11 11 11 11 11 1 11 11 111 1 1 1 1 11 1111 1111 11 11 11 1 11 1 1 1 11 1 1 11 1                         1 1       11         11 1 1   ! "   # # $   %  & ' & & & & & & ( ( ( ( & & & & ) ) ) ) ) ) )  * *  + + +    , - - - , . . . . . . . . . . . . , / ,   0 0 0 0 0 0 0 0 0 1 2 0 0 0 0 3 0 4 4 5 4 4 4 4 0 0 0 0 6 7 0 8 0 01 9 : : : : ; ; ; ; ; ; ; ; ; : : : : < < < <1 =1 > ? > @ > > A A > B > > > >1 C11 D D D D E F D G D H D I D J D K D L D D M D D111 N N N N N O O N P N Q N R S N N T N N U N V N N W N N X N N Y N N N Z1 [ \ [ [ ] [ ^ [ _ [ [ [1 ` a1 b c b b d b b e b11 f f f g g g h g f f i j j j j i i f f f f f k f l111 m1 n1 o1 p q p1111 r r r s11 t t t t11 u1111 v w v v x1 y11 z111 { | } { { { {1 ~11 1 11 1111 11 11 1 1 1 1 11111 11 11 111 11 11 1 1 1 1 11 1 1 1 11 11 1 1 1 1 11 11 1 1111 11 1 1 1 1 111 11 1 1 1 1 111 1 1 1 111 1 1 1 1 1 11    1 111 1     11            1 1 1             11  1            11                     1 11 ! " # " $ % " & !1 ' (1 ) * ) ) + + + + + ) , )11 - . - / 011 1 1 1 1 2 2 3 3 1 1 4 4 4 4 4 5 4 4 4 4 4 4 4 6 4 4 1 1 7 7 1111 8 811 9 9 :1 ; < <11 = =1 > >1 ?1 @ A @ @ @11 B1 C C11 D11 E111 F F F G G F H I J J J F F K L K M11 N N O P O Q R S11 T U V11 W W W1 X11 Y1 Z Z11 [1 \ \ \ \1 ] ^ _ ] ` ] a b c d b e f ] g h11 i j j j j j j j j j j j j j j k j i i l l l l l l l l l l l l l i i i m i i i n n n n n n n i i i o i i p i i q q i i i i r i s t i u i i i v i i w i x i i y y y y y y y y y y y y z y y y y y y y y y y y y y y y y y i i { i i | } i i ~      i i i11 1111 11 11 1 1 1 11 1 11 1 1 1111 1 1 1 1 11 11 11 1 1 1 111 11 1 11 1 1 11 1 1 1 11 11 1 1 11 111 1 1111 1 11 11 111 1 1 1 1 111 1 1 111 11 11111111  111      11111111111111111111 !"#$%&11'()111*+11,,-,../,101122111333443156117777771111811191:1;11<=<11>11??1@1AAB1CD1EEEFG111H1IJIIII1KKLKMNKOKPKQ1RRRRRR1SS1TT1UUVV11WWWWXW111Y1Z1[\1111]]1^1_1``a1bcbbbdbbbbbbbbb1e11fg111h1iij11kkkk11llllll11mmnnnnnnn1oopppppppppppppqpppppprppppppppppppppppoosotuovvvoowooox1y11z111111{1111111||11}}}}}}11~~~~1111111111111111111111111111111111111111111111111111       !!"##$%#&&&&'&(&)###***#######++#,-#.../0/1.2.345536.7898:8;8<.=>=?...@ABCADAEAF.GGGHIJ..KL.MN..OPQORS.T.UV..WXYXZW[W\]\^_...`abc`dedf`g..hhhi.jkjlmnjopjqjrjsjtjujvjwxjy.z{..|.}~###################################################111111111111111111111111111111111111111111111111111111111111111111111111111        111111111111111 1!1"1#$1%%%&&1''()(11*+*11,,1--11.1/11110100020000001314151667111188898:811;;1<1=1>1?111@@@A@@BC@@DE@@@F@@@@G@@H@IIIJKIL@@@@M@NO@P@@@QQQQQQQQQQQQQQRQQQQQQQQQQQQQQQQQQQQQQQQQQQSQ@@@T@@U@@@@@@@@@@V@WX@@@@@@YZYY[[[[[\YYY]YYYY^_YYYYYY`YaYYY@bbcbd@@@@e@@fg@h@i@jk@@@@@llllllllmllnllolllpllllllllqllrlsltllllllllllllllulllllllllllv@@w@@@@@xxyxxzxxxxxxxxx@@@@@@{@@@||}~@@@@@@@11111111111111111111111111111111111111111111111111111111111111 1 1 11         111111111111**** !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"#####$$$$$$$$$$$%&'&&(((()))))*****+,,,,,--------.........../011111222333333333333333333333334444444444444444444444444444444444444567777777777777777777777777777777777777777777777777777777788889999999999999:;;;;;<*======>?=*@@@@@@@@@@@@@*AAAA*BBBBBB*CCCCCCCCCCCCCCCCCCCCDDDDDDDDDDDCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCECCCCCCCCCCCCCCFFFFFFFFFCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCGGGCCCCHHHIHHJJJJHHCCCCCCCCKKKKKKKKKKKKKKKKKKKKKKKCCCCCCCCCCLLLLLLLLLLCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCMMMCCCCCCCCCCCCCCCCCCNNNNNNNNCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCOOOOOOOOOCCCCCCCCCCCCCCCPCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCQCCCCCCCCCCCCCCCCCCCCRSSRTTRUCCCCCCCCCVVVVVCCCCCCCCCCCCCCCCCCWXXXXXXWWWWCCCCCCCCCCCCCCCCCCCCCCCCCYYYYCCCCCCCCCCCCCCCCCCCCCCCCCCCCZZCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC[\[]][[[[[^^^^^[[[_____[[[``[a[[[b[[[c[[[[dd[[[[[CCCCCCCCCCCCCCCCeeeeeeeeeeeeeeeeeeeeeeCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCfffffffffffffffffCCCCCCCCCCCCgggCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCChhhhhhhCCCCCCCCCCCCCCCCiCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCjjjjjjkkkkkkjjjjllljjjjjjjjjjjjjjjmmmjnnnjoojpppjqqjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjrrjssjjjttttttjjjjjjjjjjuuuuuuuuuuujjjjjjjjjjjjjvvvvvvvjjjjjjjjjjjjjjjjjjjjjjjjjjjwwwwwwwwwwjxxxxxxxxjjjjyyyyjCCCCCCCCCCCCCCzzzzzzzC{{{{{{{{{{{{{{{{{CCCCCCCC||||||||||||CCCCCCCCCCCCCCCCCCCCCCCC}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}CC~~CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC*****************                                                                !""##$%$$$$$$$$&$'$(($))$*$+$,$--$.$/$001$2$33$44$5$6$7$89999::9;<==<>><??<@@<<<A<BB<CC<DD<EEEFFEGGEHHEII<J<KK<LLLMM<NN<OO<PP<Q<RR<SSST<UUUVV<WW<XX<Y<Z<[[<\]]\\<^^<___`_aa<bbbcbdd<ee<ff<g<hh<ii<jj<kk<ll<mm<nn<oo<pp<qqqrrqss<tt<uu<v<wwwxxwyy<zz<{{<||<}}<~~<<<<<<<<<<<<<<<<<<<<                   !"#$%&''()*+,-./012345556578899:::;;:<<<==<><?<@<A<B:CC:DD:EE:FF:GG:HH:II:JJ:KK:LL:MMMNNOMPPQQMRRMSMTMUMV:WW:XX:YYYZY[Y\Y]Y^:__:``:aa:bbbc:dd:ee:fffg:hhhiihjjhkkhlllmlnhoo:pp:qq:rr:ss:tt:uu:vv:ww:xx:yy:zz:{{||}}~~~                         !"#$$%&&'()*+,-.//0123456789:;<=>?@ABCDDEFGEHIDJJKJLMMNMOMPQRSSTTUUTVV4.18.0-488.rt7.277.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-dcuKconfigMakefilegma500KconfigMakefilegudKconfigMakefilehisiliconKconfigMakefilehibmcKconfigMakefilekirinKconfigMakefilehypervMakefilei2cKconfigMakefilei810Makefilei915KconfigKconfig.debugKconfig.profileKconfig.unstableMakefilegvtMakefileimxKconfigMakefilekmbKconfigMakefilelogicvcKconfigMakefilemediatekKconfigMakefilemesonKconfigMakefilemgaMakefilemgag200KconfigMakefilemsmKconfigMakefilemxsfbKconfigMakefilenouveauKconfigomapdrmKconfigMakefiledisplaysKconfigMakefiledssKconfigMakefilepanelKconfigMakefilepl111KconfigMakefileqxlKconfigMakefiler128MakefileradeonKconfigMakefilercar-duKconfigMakefilerockchipKconfigMakefilesavageMakefileschedulerMakefileselftestsMakefileshmobileKconfigMakefilesisMakefilesolomonKconfigMakefilesprdKconfigMakefilestiKconfigMakefilestmKconfigMakefilesun4iKconfigMakefiletdfxMakefiletegraKconfigMakefiletestsMakefiletilcdcKconfigMakefiletinyKconfigMakefilettmMakefiletve200KconfigMakefileudlKconfigMakefilev3dKconfigMakefilevboxvideoKconfigMakefilevc4KconfigMakefilevgemMakefileviaMakefilevirtioKconfigMakefilevkmsMakefilevmwgfxKconfigMakefilexenKconfigMakefilehost1xKconfigMakefileipu-v3KconfigMakefilevgaKconfigMakefilehidKconfigMakefileamd-sfh-hidKconfigMakefilei2c-hidKconfigMakefileintel-ish-hidKconfigMakefilesurface-hidKconfigMakefileusbhidKconfigMakefilehsiKconfigMakefileclientsKconfigMakefilecontrollersKconfigMakefilehvKconfigMakefilehwmonKconfigMakefilepmbusKconfigMakefilehwspinlockKconfigMakefilehwtracingKconfigcoresightKconfigMakefileintel_thKconfigMakefilestmKconfigMakefilei2cKconfigMakefilealgosKconfigMakefilebussesKconfigMakefilemuxesKconfigMakefileideKconfigMakefileidleKconfigMakefileiioKconfigMakefileaccelKconfigMakefileadcKconfigMakefileafeKconfigMakefileamplifiersKconfigMakefilebufferKconfigMakefilechemicalKconfigMakefilecommonKconfigMakefilecros_ec_sensorsKconfigMakefilehid-sensorsKconfigMakefilems_sensorsKconfigMakefilessp_sensorsKconfigMakefilest_sensorsKconfigMakefilecounterKconfigMakefiledacKconfigMakefiledummyKconfigMakefilefrequencyKconfigMakefilegyroKconfigMakefilehealthKconfigMakefilehumidityKconfigMakefileimuKconfigMakefilebmi160KconfigMakefileinv_mpu6050KconfigMakefilest_lsm6dsxKconfigMakefilelightKconfigMakefilemagnetometerKconfigMakefilemultiplexerKconfigMakefileorientationKconfigMakefilepotentiometerKconfigMakefilepotentiostatKconfigMakefilepressureKconfigMakefileproximityKconfigMakefileresolverKconfigMakefiletemperatureKconfigMakefiletriggerKconfigMakefileinfinibandKconfigMakefilecoreMakefilehwMakefilebnxt_reKconfigMakefilecxgb4KconfigMakefileefaKconfigMakefilehfi1KconfigMakefilehnsKconfigMakefileirdmaKconfigMakefilemlx4KconfigMakefilemlx5KconfigMakefilemthcaKconfigMakefileocrdmaKconfigMakefileqedrKconfigMakefileqibKconfigMakefileusnicKconfigMakefilevmw_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_gbeKconfigMakefilepacketenginesKconfigMakefilepasemiKconfigMakefilepensandoKconfigMakefileionicMakefileqlogicKconfigMakefilenetxenMakefileqedMakefileqedeMakefileqlcnicMakefileqlgeMakefilequalcommKconfigMakefileemacMakefilermnetKconfigMakefilerdcKconfigMakefilerealtekKconfigMakefilerenesasKconfigMakefilerockerKconfigMakefilesamsungKconfigMakefilesxgbeMakefileseeqKconfigMakefilesfcKconfigMakefilefalconKconfigMakefilesienaKconfigMakefilesgiKconfigMakefilesilanKconfigMakefilesisKconfigMakefilesmscKconfigMakefilesocionextKconfigMakefilestmicroKconfigMakefilestmmacKconfigMakefilesunKconfigMakefilesynopsysKconfigMakefiletehutiKconfigMakefiletiKconfigMakefiletoshibaKconfigMakefiletundraKconfigMakefileviaKconfigMakefilewiznetKconfigMakefilexilinxKconfigMakefilexircomKconfigMakefilexscaleKconfigMakefilefddiKconfigMakefileskfpMakefilefjesMakefilehamradioKconfigMakefilehippiKconfigMakefilehypervKconfigMakefileieee802154KconfigMakefileipvlanMakefilenetdevsimMakefilepcsKconfigMakefilephyKconfigMakefileplipKconfigMakefilepppKconfigMakefileslipKconfigMakefileteamKconfigMakefileusbKconfigMakefilevmxnet3MakefilewanKconfigMakefilelmcMakefilewimaxKconfigMakefilei2400mKconfigMakefilewirelessKconfigMakefileadmtekKconfigMakefileathKconfigMakefilear5523KconfigMakefileath10kKconfigMakefileath11kKconfigMakefileath5kKconfigMakefileath6klKconfigMakefileath9kKconfigMakefilecarl9170KconfigMakefilewcn36xxKconfigMakefilewil6210KconfigMakefileatmelKconfigMakefilebroadcomKconfigMakefileb43KconfigMakefileb43legacyKconfigMakefilebrcm80211KconfigMakefilebrcmfmacKconfigMakefilebrcmsmacMakefilebrcmutilMakefileciscoKconfigMakefileintelKconfigMakefileipw2x00KconfigMakefileiwlegacyKconfigMakefileiwlwifiKconfigMakefiledvmMakefilemeiMakefilemvmMakefileintersilKconfigMakefilehostapKconfigMakefileorinocoKconfigMakefilep54KconfigMakefileprism54MakefilemarvellKconfigMakefilelibertasKconfigMakefilelibertas_tfKconfigMakefilemwifiexKconfigMakefilemediatekKconfigMakefilemt76KconfigMakefilemt7603KconfigMakefilemt7615KconfigMakefilemt76x0KconfigMakefilemt76x2KconfigMakefilemt7915KconfigMakefilemt7921KconfigMakefilemt7601uKconfigMakefilequantennaKconfigMakefileqtnfmacKconfigMakefileralinkKconfigMakefilert2x00KconfigMakefilerealtekKconfigMakefilertl818xKconfigMakefilertl8180Makefilertl8187Makefilertl8xxxuKconfigMakefilertlwifiKconfigMakefilebtcoexistMakefilertl8188eeMakefilertl8192cMakefilertl8192ceMakefilertl8192cuMakefilertl8192deMakefilertl8192eeMakefilertl8192seMakefilertl8723aeMakefilertl8723beMakefilertl8723comMakefilertl8821aeMakefilertw88KconfigMakefilertw89KconfigMakefilersiKconfigMakefilestKconfigMakefilecw1200KconfigMakefiletiKconfigMakefilewl1251KconfigMakefilewl12xxKconfigMakefilewl18xxKconfigMakefilewlcoreKconfigMakefilezydasKconfigMakefilezd1211rwKconfigMakefilexen-netbackMakefilenfcKconfigMakefilefdpKconfigMakefilemicroreadKconfigMakefilenfcmrvlKconfigMakefilenxp-nciKconfigMakefilepn533KconfigMakefilepn544KconfigMakefiles3fwrn5KconfigMakefilest-nciKconfigMakefilest21nfcaKconfigMakefilest95hfKconfigMakefilentbKconfigMakefilehwKconfigMakefileamdKconfigMakefileepfKconfigMakefileidtKconfigMakefileintelKconfigMakefilemsccKconfigMakefiletestKconfigMakefilenubusMakefilenvdimmKconfigMakefilenvmeKconfigMakefilehostKconfigMakefiletargetKconfigMakefilenvmemKconfigMakefileofKconfigMakefileunittest-dataMakefileoppKconfigMakefilepariscKconfigMakefileparportKconfigMakefilepciKconfigMakefilecontrollerKconfigMakefiledwcKconfigMakefileendpointKconfigMakefilefunctionsKconfigMakefilehotplugKconfigMakefilepcieKconfigMakefileswitchKconfigMakefilepcmciaKconfigMakefileperfKconfigMakefilehisiliconMakefilephyKconfigMakefileallwinnerKconfigMakefileamlogicKconfigMakefilebroadcomKconfigMakefilehisiliconKconfigMakefilelantiqKconfigMakefilemarvellKconfigMakefilemediatekKconfigMakefilemotorolaKconfigMakefilequalcommKconfigMakefileralinkKconfigMakefilerenesasKconfigMakefilerockchipKconfigMakefilesamsungKconfigMakefilestKconfigMakefiletegraKconfigMakefiletiKconfigMakefilepinctrlKconfigMakefileactionsKconfigMakefileaspeedKconfigMakefilebcmKconfigMakefileberlinKconfigMakefilefreescaleKconfigMakefileintelKconfigMakefilemediatekKconfigMakefilemesonKconfigMakefilemvebuKconfigMakefilenomadikKconfigMakefilepxaKconfigMakefileqcomKconfigMakefilesamsungKconfigMakefilesh-pfcKconfigMakefilesirfMakefilespearKconfigMakefilesprdKconfigMakefilestm32KconfigMakefilesunxiKconfigMakefiletegraKconfigMakefiletiKconfigMakefileuniphierKconfigMakefilevt8500KconfigMakefilezteKconfigMakefileplatformKconfigMakefilechromeKconfigMakefilegoldfishKconfigMakefilemellanoxKconfigMakefilemipsKconfigMakefileolpcMakefilex86KconfigMakefiledell-wmi-sysmanMakefileintelKconfigMakefilepmcKconfigMakefilepmtKconfigMakefilespeed_select_ifKconfigMakefilepnpKconfigMakefileisapnpKconfigMakefilepnpacpiKconfigMakefilepnpbiosKconfigMakefilepowerKconfigMakefileavsKconfigMakefileresetKconfigMakefilesupplyKconfigMakefilepowercapKconfigMakefileppsKconfigMakefileclientsKconfigMakefilegeneratorsKconfigMakefileps3MakefileptpKconfigMakefilepwmKconfigMakefilerapidioKconfigMakefiledevicesKconfigMakefileswitchesKconfigMakefilerasKconfigMakefileregulatorKconfigMakefileremoteprocKconfigMakefileresetKconfigMakefilehisiliconKconfigMakefilestiKconfigMakefiletegraKconfigMakefilerpmsgKconfigMakefilertcKconfigMakefiles390MakefileblockKconfigMakefilecharKconfigMakefilecioMakefilecryptoMakefilenetKconfigMakefilescsiMakefilevirtioMakefilesbusMakefilecharKconfigMakefilescsiKconfigMakefileaacraidMakefileaic7xxxKconfig.aic79xxKconfig.aic7xxxMakefileaicasmMakefileaic94xxKconfigMakefilearcmsrMakefilearmKconfigMakefilebe2iscsiKconfigMakefilebfaMakefilebnx2fcKconfigMakefilebnx2iKconfigMakefilecsiostorKconfigMakefilecxgbiKconfigMakefilecxgb3iKconfigcxgb4iKconfigcxlflashKconfigMakefiledevice_handlerKconfigMakefileesas2rKconfigMakefilefcoeMakefilefnicMakefilehisi_sasKconfigMakefileibmvscsiMakefileibmvscsi_tgtMakefileisciMakefilelibfcMakefilelibsasKconfigMakefilelpfcMakefilemegaraidKconfig.megaraidMakefilempi3mrKconfigMakefilempt3sasKconfigMakefilemvsasKconfigMakefilepcmciaKconfigMakefilepm8001MakefileqedfKconfigMakefileqediKconfigMakefileqla2xxxKconfigMakefileqla4xxxKconfigMakefilesmartpqiKconfigMakefilesnicMakefilesym53c8xx_2MakefileufsKconfigMakefilesfiKconfigMakefileshKconfigMakefileclkMakefileintcKconfigMakefilemapleMakefilesuperhywayMakefilesioxKconfigMakefileslimbusKconfigMakefilesnKconfigMakefilesocKconfigMakefileactionsKconfigMakefileamlogicKconfigMakefileatmelKconfigMakefilebcmKconfigMakefilebrcmstbKconfigMakefilepmMakefiledoveMakefilefslKconfigMakefileqbmanKconfigMakefileqeKconfigMakefilegeminiMakefileimxKconfigMakefilelantiqMakefilemediatekKconfigMakefileqcomKconfigMakefilerenesasKconfigMakefilerockchipKconfigMakefilesamsungKconfigMakefilesunxiKconfigMakefiletegraKconfigMakefilefuseMakefiletiKconfigMakefileux500KconfigMakefileversatileKconfigMakefilexilinxKconfigMakefilezteKconfigMakefilesoundwireKconfigMakefilespiKconfigMakefilespmiKconfigMakefilessbKconfigMakefilestagingKconfigMakefileandroidKconfigMakefileionKconfigMakefileboardKconfigMakefileclocking-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.hrtl.hhciuarthciuart.hath3k.hbcsp.hh4.hhcivhci.hhidp.hhs.hintel.hle.hmrvlmrvl.hsdio.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.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.hcsdsp.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.hhdmihelper.hhelper.hdpauxchardev.hfbdevemulation.hoveralloc.hgemshmemhelper.hgma500.hi2cch7006.hsil164.hkmshelper.hloadedidfirmware.hmgag200.hnomodeset.hnouveaunouveau.hbacklight.hpanelpanel.hbridge.horientationquirks.hqxl.hradeonradeon.huserptr.hsched.httmttm.hhelper.hudl.hvboxvideo.hvirtiogpu.hvkms.hvmwgfxvmwgfx.hfbcon.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.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.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.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.hhdmi.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.hhidacpi.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.hdiag.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.hintelhfithermal.hhidevent.hidle.hidma64.hidxdidxd.hbus.hperfmon.hsvm.hioatdma.hiommuiommu.hfloppywa.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.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.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.holdinterface.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.hmqprio.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.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.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.hrational.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.hlib.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.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.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.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.hrt715rt715.hsdcasdw.hsdw.hsdwmockup.hsofsof.hacpiacpi.hdev.halderlake.hamdcommon.hrenoir.htoplevel.hapollolake.hbaytrail.hbroadwell.hcannonlake.hclient.hcoffeelake.hcometlake.hdebugprobes.helkhartlake.hgeminilake.hhdahda.haudiocodec.hcommon.hlinklink.hbaseline.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.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.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.htimens.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.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.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.hmenu.hnet.hpcipci.hlegacy.hlib.hvdpa.hvsocketsvsockets.hcommon.hvirtualization.hvitessephy.hvlan8021q8021q.hgvrp.hmvrp.hvmeventcounters.hvmapstack.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.hpstate.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_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_cma_helper.hdrm_fb_helper.hdrm_file.hdrm_fixed.hdrm_flip_work.hdrm_format_helper.hdrm_fourcc.hdrm_framebuffer.hdrm_gem.hdrm_gem_atomic_helper.hdrm_gem_cma_helper.hdrm_gem_framebuffer_helper.hdrm_gem_shmem_helper.hdrm_gem_ttm_helper.hdrm_gem_vram_helper.hdrm_ioctl.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_api.httm_bo_driver.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.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.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_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.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-svm.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.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.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.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.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-sev.hpsp-tee.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_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_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.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.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.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_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.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.htlv320aic3x.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_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.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.hi810_drm.hi915_drm.hlima_drm.hmga_drm.hmsm_drm.hnouveau_drm.homap_drm.hpanfrost_drm.hqxl_drm.hr128_drm.hradeon_drm.hsavage_drm.hsis_drm.htegra_drm.hv3d_drm.hvc4_drm.hvgem_drm.hvia_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.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_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.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.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.cbasicMakefilebin2cbin2c.cfixdepfixdep.cmodules.orderbloat-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.hsmackKconfigMakefiletomoyoKconfigMakefileyamaKconfigMakefilesoundKconfigMakefileac97KconfigMakefileaoaKconfigMakefilecodecsKconfigMakefilecoreMakefilefabricsKconfigMakefilesoundbusKconfigMakefilei2sbusMakefilearmKconfigMakefileatmelKconfigMakefilecoreKconfigMakefileossMakefileseqKconfigMakefileossMakefiledriversKconfigMakefilempu401Makefileopl3Makefileopl4MakefilepcspMakefilevxMakefilefirewireKconfigMakefilebebobMakefilediceMakefiledigi00xMakefilefirefaceMakefilefireworksMakefilemotuMakefileoxfwMakefiletascamMakefilehdaKconfigMakefileextMakefilei2cMakefileotherMakefileisaKconfigMakefilead1816aMakefilead1848Makefilecs423xMakefilees1688MakefilegalaxyMakefilegusMakefilemsndMakefileopti9xxMakefilesbMakefilewavefrontMakefilewssMakefilemipsKconfigMakefileossdmasoundKconfigMakefilepariscKconfigMakefilepciKconfigMakefileac97Makefileali5451MakefileasihpiMakefileau88x0Makefileaw2Makefileca0106Makefilecs46xxMakefilecs5535audioMakefilectxfiMakefileechoaudioMakefileemu10k1MakefilehdaKconfigMakefileice1712Makefilekorg1212MakefilelolaMakefilelx6464esMakefilemixartMakefilenm256MakefileoxygenMakefilepcxhrMakefileriptideMakefilerme9652MakefiletridentMakefilevx222MakefileymfpciMakefilepcmciaKconfigMakefilepdaudiocfMakefilevxMakefileppcKconfigMakefileshKconfigMakefilesocKconfigMakefileadiKconfigMakefileamdKconfigMakefileacpKconfigMakefileravenMakefilerenoirMakefilerplMakefilevangoghMakefileycMakefileatmelKconfigMakefileau1xKconfigMakefilebcmKconfigMakefilecirrusKconfigMakefilecodecsKconfigMakefiledwcKconfigMakefilefslKconfigMakefilegenericKconfigMakefilehisiliconKconfigMakefileimgKconfigMakefileintelKconfigMakefileatomMakefilesstMakefileavsMakefileboardsKconfigMakefileboardsKconfigMakefilecatptMakefilecommonMakefilekeembayMakefileskylakeMakefilejz4740KconfigMakefilekirkwoodKconfigMakefilemediatekKconfigMakefilecommonMakefilemt2701Makefilemt6797Makefilemt8173Makefilemt8183MakefilemesonKconfigMakefilemxsKconfigMakefilepxaKconfigMakefileqcomKconfigMakefileqdsp6MakefilerockchipKconfigMakefilesamsungKconfigMakefileshKconfigMakefilercarMakefilesofKconfigMakefileamdKconfigMakefileimxKconfigMakefileintelKconfigMakefilemediatekKconfigMakefilemt8186Makefilemt8195MakefilextensaKconfigMakefilespearKconfigMakefilesprdKconfigMakefilestiKconfigMakefilestmKconfigMakefilesunxiKconfigMakefiletegraKconfigMakefiletiKconfigMakefiletxx9KconfigMakefileuniphierKconfigMakefileux500KconfigMakefilexilinxKconfigMakefilextensaKconfigMakefilesparcKconfigMakefilespiKconfigMakefilesynthKconfigMakefileemuxMakefileusb6fireMakefileKconfigMakefilebcd2000MakefilecaiaqMakefilehifaceMakefileline6KconfigMakefilemiscMakefileusx2yMakefilevirtioKconfigMakefilex86KconfigMakefilexenKconfigMakefiletoolsMakefileaccountingMakefilearchx86intel_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-488.rt7.277.el8.x86_64//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/alpha//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/alpha/boot//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/alpha/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/alpha/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/alpha/math-emu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/alpha/mm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/alpha/oprofile//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arc/boot//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arc/boot/dts//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arc/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arc/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arc/mm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arc/oprofile//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arc/plat-axs10x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arc/plat-eznps//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arc/plat-hsdk//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arc/plat-sim//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arc/plat-tb10x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/boot//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/boot/bootp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/boot/compressed//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/boot/dts//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/common//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/crypto//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/firmware//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-actions//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-alpine//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-artpec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-asm9260//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-aspeed//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-at91//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-axxia//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-bcm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-berlin//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-clps711x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-cns3xxx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-davinci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-digicolor//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-dove//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-ebsa110//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-efm32//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-ep93xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-exynos//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-footbridge//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-gemini//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-highbank//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-hisi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-imx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-imx/devices//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-integrator//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-iop13xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-iop32x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-iop33x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-ixp4xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-keystone//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-ks8695//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-lpc18xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-lpc32xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-mediatek//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-meson//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-mmp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-moxart//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-mv78xx0//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-mvebu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-mxs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-netx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-nomadik//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-npcm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-nspire//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-omap1//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-omap2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-orion5x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-oxnas//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-picoxcell//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-prima2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-pxa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-qcom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-realview//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-rockchip//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-rpc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-s3c24xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-s3c64xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-s5pv210//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-sa1100//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-shmobile//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-socfpga//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-spear//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-sti//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-stm32//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-sunxi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-tango//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-tegra//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-u300//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-uniphier//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-ux500//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-versatile//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-vexpress//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-vt8500//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-w90x900//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-zx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mach-zynq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/mm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/net//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/nwfpe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/oprofile//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/plat-iop//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/plat-omap//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/plat-orion//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/plat-pxa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/plat-samsung//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/plat-versatile//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/probes//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/probes/kprobes//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/probes/uprobes//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/tools//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/vdso//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/vfp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm/xen//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot/dts//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot/dts/actions//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot/dts/al//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot/dts/allwinner//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot/dts/altera//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot/dts/amd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot/dts/amlogic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot/dts/apm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot/dts/arm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot/dts/broadcom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot/dts/broadcom/northstar2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot/dts/broadcom/stingray//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot/dts/cavium//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot/dts/exynos//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot/dts/freescale//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot/dts/hisilicon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot/dts/lg//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot/dts/marvell//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot/dts/mediatek//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot/dts/nvidia//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot/dts/qcom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot/dts/realtek//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot/dts/renesas//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot/dts/rockchip//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot/dts/socionext//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot/dts/sprd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot/dts/synaptics//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot/dts/xilinx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/boot/dts/zte//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/crypto//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/hyperv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/kernel/probes//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/kernel/vdso//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/kernel/vdso32//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/kvm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/kvm/hyp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/kvm/hyp/nvhe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/kvm/hyp/vhe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/mm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/net//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/tools//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/arm64/xen//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/c6x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/c6x/boot//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/c6x/boot/dts//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/c6x/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/c6x/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/c6x/mm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/c6x/platforms//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/h8300//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/h8300/boot//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/h8300/boot/compressed//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/h8300/boot/dts//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/h8300/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/h8300/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/h8300/mm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/hexagon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/hexagon/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/hexagon/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/hexagon/mm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/ia64//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/ia64/dig//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/ia64/hp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/ia64/hp/common//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/ia64/hp/sim//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/ia64/hp/sim/boot//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/ia64/hp/zx1//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/ia64/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/ia64/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/ia64/mm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/ia64/oprofile//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/ia64/pci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/ia64/sn//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/ia64/sn/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/ia64/sn/kernel/sn2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/ia64/sn/pci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/ia64/sn/pci/pcibr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/ia64/uv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/ia64/uv/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/m68k//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/m68k/68000//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/m68k/amiga//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/m68k/apollo//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/m68k/atari//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/m68k/bvme6000//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/m68k/coldfire//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/m68k/emu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/m68k/fpsp040//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/m68k/hp300//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/m68k/ifpsp060//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/m68k/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/m68k/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/m68k/mac//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/m68k/math-emu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/m68k/mm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/m68k/mvme147//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/m68k/mvme16x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/m68k/q40//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/m68k/sun3//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/m68k/sun3/prom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/m68k/sun3x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/m68k/tools//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/m68k/tools/amiga//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/microblaze//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/microblaze/boot//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/microblaze/boot/dts//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/microblaze/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/microblaze/kernel/cpu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/microblaze/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/microblaze/mm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/microblaze/oprofile//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/microblaze/pci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/alchemy//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/alchemy/common//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/alchemy/devboards//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/ar7//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/ath25//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/ath79//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/bcm47xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/bcm63xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/bcm63xx/boards//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/bmips//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/boot//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/boot/compressed//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/boot/dts//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/boot/dts/brcm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/boot/dts/cavium-octeon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/boot/dts/img//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/boot/dts/ingenic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/boot/dts/lantiq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/boot/dts/mscc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/boot/dts/mti//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/boot/dts/netlogic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/boot/dts/ni//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/boot/dts/pic32//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/boot/dts/qca//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/boot/dts/ralink//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/boot/dts/xilfpga//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/boot/tools//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/cavium-octeon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/cavium-octeon/crypto//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/cavium-octeon/executive//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/cobalt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/crypto//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/dec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/dec/prom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/emma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/emma/common//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/emma/markeins//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/fw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/fw/arc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/fw/cfe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/fw/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/fw/sni//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/generic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/jazz//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/jz4740//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/kvm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/lantiq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/lantiq/falcon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/lantiq/xway//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/lasat//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/lasat/image//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/loongson32//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/loongson32/common//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/loongson32/ls1b//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/loongson32/ls1c//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/loongson64//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/loongson64/common//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/loongson64/common/cs5536//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/loongson64/fuloong-2e//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/loongson64/lemote-2f//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/loongson64/loongson-3//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/math-emu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/mm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/mti-malta//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/net//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/netlogic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/netlogic/common//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/netlogic/xlp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/netlogic/xlr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/oprofile//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/paravirt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/pci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/pic32//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/pic32/common//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/pic32/pic32mzda//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/pistachio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/pmcs-msp71xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/pnx833x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/pnx833x/common//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/pnx833x/stb22x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/power//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/ralink//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/rb532//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/sgi-ip22//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/sgi-ip27//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/sgi-ip32//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/sibyte//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/sibyte/bcm1480//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/sibyte/common//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/sibyte/sb1250//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/sibyte/swarm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/sni//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/txx9//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/txx9/generic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/txx9/jmr3927//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/txx9/rbtx4927//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/txx9/rbtx4938//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/txx9/rbtx4939//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/vdso//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/vr41xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/vr41xx/casio-e55//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/vr41xx/common//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/mips/vr41xx/ibm-workpad//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/nds32//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/nds32/boot//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/nds32/boot/dts//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/nds32/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/nds32/kernel/vdso//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/nds32/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/nds32/mm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/nios2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/nios2/boot//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/nios2/boot/compressed//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/nios2/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/nios2/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/nios2/mm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/nios2/platform//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/openrisc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/openrisc/boot//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/openrisc/boot/dts//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/openrisc/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/openrisc/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/openrisc/mm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/parisc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/parisc/boot//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/parisc/boot/compressed//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/parisc/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/parisc/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/parisc/math-emu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/parisc/mm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/parisc/oprofile//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/boot//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/crypto//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/kernel/ptrace//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/kernel/trace//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/kernel/vdso32//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/kernel/vdso64//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/kvm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/math-emu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/mm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/mm/book3s32//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/mm/book3s64//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/net//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/oprofile//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/perf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/platforms//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/platforms/40x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/platforms/44x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/platforms/4xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/platforms/512x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/platforms/52xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/platforms/82xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/platforms/83xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/platforms/85xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/platforms/86xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/platforms/8xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/platforms/amigaone//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/platforms/book3s//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/platforms/cell//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/platforms/cell/spufs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/platforms/chrp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/platforms/embedded6xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/platforms/maple//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/platforms/pasemi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/platforms/powermac//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/platforms/powernv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/platforms/ps3//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/platforms/pseries//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/purgatory//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/sysdev//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/sysdev/ge//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/sysdev/xics//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/sysdev/xive//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/powerpc/xmon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/riscv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/riscv/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/riscv/kernel/vdso//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/riscv/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/riscv/mm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/s390//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/s390/appldata//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/s390/boot//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/s390/boot/compressed//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/s390/crypto//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/s390/hypfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/s390/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/s390/kernel/syscalls//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/s390/kernel/vdso32//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/s390/kernel/vdso64//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/s390/kvm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/s390/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/s390/mm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/s390/net//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/s390/numa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/s390/oprofile//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/s390/pci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/s390/purgatory//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/s390/scripts//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/s390/tools//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boards//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boards/mach-ap325rxa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boards/mach-cayman//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boards/mach-dreamcast//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boards/mach-ecovec24//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boards/mach-highlander//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boards/mach-hp6xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boards/mach-kfr2r09//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boards/mach-landisk//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boards/mach-lboxre2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boards/mach-microdev//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boards/mach-migor//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boards/mach-r2d//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boards/mach-rsk//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boards/mach-sdk7780//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boards/mach-sdk7786//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boards/mach-se//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boards/mach-se/7206//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boards/mach-se/7343//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boards/mach-se/770x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boards/mach-se/7721//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boards/mach-se/7722//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boards/mach-se/7724//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boards/mach-se/7751//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boards/mach-se/7780//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boards/mach-sh03//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boards/mach-sh7763rdp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boards/mach-x3proto//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boot//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boot/compressed//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boot/dts//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/boot/romimage//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/cchips//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/cchips/hd6446x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/drivers//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/drivers/dma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/drivers/pci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/drivers/superhyway//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/kernel/cpu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/kernel/cpu/irq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/kernel/cpu/sh2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/kernel/cpu/sh2a//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/kernel/cpu/sh3//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/kernel/cpu/sh4//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/kernel/cpu/sh4a//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/kernel/cpu/sh5//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/kernel/cpu/shmobile//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/kernel/vsyscall//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/lib64//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/math-emu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/mm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/oprofile//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sh/tools//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sparc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sparc/boot//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sparc/crypto//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sparc/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sparc/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sparc/math-emu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sparc/mm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sparc/net//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sparc/oprofile//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sparc/power//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sparc/prom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/sparc/vdso//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/um//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/um/drivers//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/um/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/um/kernel/skas//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/um/os-Linux//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/um/os-Linux/drivers//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/um/os-Linux/skas//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/um/scripts//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/unicore32//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/unicore32/boot//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/unicore32/boot/compressed//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/unicore32/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/unicore32/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/unicore32/mm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/boot//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/boot/compressed//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/coco//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/coco/tdx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/crypto//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/crypto/sha1-mb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/crypto/sha256-mb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/crypto/sha512-mb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/entry//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/entry/syscalls//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/entry/vdso//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/entry/vsyscall//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/events//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/events/amd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/events/intel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/hyperv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/ia32//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/include//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/include/asm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/include/asm/crypto//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/include/asm/e820//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/include/asm/fpu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/include/asm/numachip//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/include/asm/shared//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/include/asm/trace//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/include/asm/uv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/include/asm/vdso//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/include/asm/xen//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/include/generated//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/include/generated/asm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/include/generated/uapi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/include/generated/uapi/asm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/include/uapi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/include/uapi/asm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/kernel/acpi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/kernel/apic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/kernel/cpu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/kernel/cpu/mce//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/kernel/cpu/microcode//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/kernel/cpu/mtrr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/kernel/cpu/resctrl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/kernel/cpu/sgx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/kernel/fpu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/kernel/kprobes//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/kvm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/math-emu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/mm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/mm/pat//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/net//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/oprofile//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/pci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/platform//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/platform/atom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/platform/ce4100//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/platform/efi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/platform/geode//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/platform/goldfish//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/platform/intel-mid//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/platform/intel-mid/device_libs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/platform/intel-quark//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/platform/intel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/platform/iris//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/platform/olpc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/platform/scx200//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/platform/sfi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/platform/ts5500//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/platform/uv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/power//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/purgatory//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/ras//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/realmode//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/realmode/rm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/tools//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/um//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/um/os-Linux//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/um/vdso//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/video//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/x86/xen//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/xtensa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/xtensa/boot//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/xtensa/boot/boot-elf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/xtensa/boot/boot-redboot//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/xtensa/boot/dts//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/xtensa/boot/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/xtensa/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/xtensa/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/xtensa/mm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/xtensa/oprofile//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/xtensa/platforms//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/xtensa/platforms/iss//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/xtensa/platforms/xt2000//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/arch/xtensa/platforms/xtfpga//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/block//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/block/partitions//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/certs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/crypto//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/crypto/asymmetric_keys//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/crypto/async_tx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/accessibility//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/accessibility/braille//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/acpi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/acpi/acpica//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/acpi/apei//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/acpi/arm64//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/acpi/dptf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/acpi/nfit//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/acpi/numa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/acpi/pmic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/amba//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/android//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/ata//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/atm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/auxdisplay//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/base//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/base/firmware_loader//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/base/power//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/base/regmap//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/base/test//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/bcma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/block//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/block/aoe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/block/drbd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/block/mtip32xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/block/paride//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/block/rsxx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/block/xen-blkback//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/block/zram//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/bluetooth//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/bus//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/bus/fsl-mc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/bus/mhi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/bus/mhi/ep//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/bus/mhi/host//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/cdrom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/char//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/char/agp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/char/hw_random//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/char/ipmi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/char/mwave//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/char/pcmcia//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/char/tpm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/char/tpm/st33zp24//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/char/xilinx_hwicap//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/char/xillybus//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/actions//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/at91//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/axis//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/axs10x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/bcm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/berlin//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/davinci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/h8300//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/hisilicon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/imgtec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/imx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/ingenic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/keystone//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/loongson1//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/mediatek//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/meson//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/microchip//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/mmp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/mvebu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/mxs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/nxp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/pistachio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/pxa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/qcom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/renesas//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/rockchip//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/samsung//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/sirf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/socfpga//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/spear//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/sprd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/st//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/sunxi-ng//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/sunxi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/tegra//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/ti//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/uniphier//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/ux500//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/versatile//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/x86//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/zte//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clk/zynq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/clocksource//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/connector//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/counter//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/cpufreq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/cpuidle//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/cpuidle/governors//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/amcc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/axis//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/bcm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/caam//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/cavium//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/cavium/cpt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/cavium/nitrox//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/cavium/zip//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/ccp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/ccree//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/chelsio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/chelsio/chtls//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/inside-secure//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/marvell//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/mediatek//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/nx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/qat//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/qat/qat_4xxx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/qat/qat_c3xxx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/qat/qat_c3xxxvf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/qat/qat_c62x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/qat/qat_c62xvf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/qat/qat_common//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/qat/qat_dh895xcc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/qat/qat_dh895xccvf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/qce//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/rockchip//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/stm32//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/sunxi-ss//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/ux500//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/ux500/cryp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/ux500/hash//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/virtio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/crypto/vmx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/dax//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/dax/hmem//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/dax/pmem//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/dca//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/devfreq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/devfreq/event//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/dio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/dma-buf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/dma-buf/heaps//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/dma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/dma/bestcomm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/dma/dw-axi-dmac//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/dma/dw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/dma/hsu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/dma/idxd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/dma/ioat//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/dma/ipu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/dma/mediatek//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/dma/ppc4xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/dma/ptdma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/dma/qcom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/dma/sh//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/dma/ti//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/dma/xilinx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/edac//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/eisa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/extcon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/firewire//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/firmware//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/firmware/arm_scmi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/firmware/broadcom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/firmware/cirrus//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/firmware/efi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/firmware/efi/libstub//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/firmware/efi/test//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/firmware/google//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/firmware/meson//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/firmware/psci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/firmware/smccc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/firmware/tegra//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/fmc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/fpga//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/fsi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/acp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/amdgpu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/amdkfd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/amdgpu_dm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/basics//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/bios//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/clk_mgr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/dce//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/dce100//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/dce110//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/dce112//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/dce120//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/dce60//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/dce80//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn10//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn20//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn201//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn21//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn30//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn301//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn302//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn303//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn31//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn314//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn315//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn316//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn32//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn321//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/dml//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/dsc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/gpio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/hdcp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/irq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/link//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dc/virtual//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dmub//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/dmub/src//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/modules//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/modules/color//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/modules/freesync//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/modules/hdcp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/modules/info_packet//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/display/modules/power//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/pm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/pm/legacy-dpm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/pm/powerplay//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/pm/powerplay/hwmgr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/pm/powerplay/smumgr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/pm/swsmu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/pm/swsmu/smu11//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/pm/swsmu/smu12//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/amd/pm/swsmu/smu13//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/arm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/armada//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/aspeed//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/ast//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/atmel-hlcdc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/bridge//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/bridge/adv7511//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/bridge/analogix//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/bridge/cadence//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/bridge/imx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/bridge/synopsys//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/display//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/etnaviv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/exynos//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/fsl-dcu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/gma500//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/gud//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/hisilicon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/hisilicon/hibmc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/hisilicon/kirin//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/hyperv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/i2c//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/i810//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/i915//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/i915/gvt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/imx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/kmb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/logicvc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/mediatek//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/meson//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/mga//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/mgag200//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/msm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/mxsfb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/nouveau//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/omapdrm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/omapdrm/displays//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/omapdrm/dss//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/panel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/pl111//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/qxl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/r128//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/radeon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/rcar-du//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/rockchip//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/savage//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/scheduler//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/selftests//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/shmobile//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/sis//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/solomon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/sprd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/sti//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/stm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/sun4i//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/tdfx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/tegra//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/tests//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/tilcdc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/tiny//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/ttm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/tve200//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/udl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/v3d//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/vboxvideo//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/vc4//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/vgem//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/via//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/virtio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/vkms//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/vmwgfx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/drm/xen//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/host1x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/ipu-v3//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/gpu/vga//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/hid//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/hid/amd-sfh-hid//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/hid/i2c-hid//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/hid/intel-ish-hid//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/hid/surface-hid//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/hid/usbhid//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/hsi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/hsi/clients//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/hsi/controllers//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/hv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/hwmon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/hwmon/pmbus//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/hwspinlock//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/hwtracing//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/hwtracing/coresight//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/hwtracing/intel_th//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/hwtracing/stm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/i2c//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/i2c/algos//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/i2c/busses//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/i2c/muxes//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/ide//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/idle//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/accel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/adc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/afe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/amplifiers//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/buffer//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/chemical//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/common//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/common/cros_ec_sensors//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/common/hid-sensors//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/common/ms_sensors//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/common/ssp_sensors//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/common/st_sensors//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/counter//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/dac//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/dummy//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/frequency//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/gyro//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/health//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/humidity//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/imu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/imu/bmi160//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/imu/inv_mpu6050//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/imu/st_lsm6dsx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/light//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/magnetometer//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/multiplexer//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/orientation//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/potentiometer//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/potentiostat//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/pressure//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/proximity//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/resolver//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/temperature//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iio/trigger//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/infiniband//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/infiniband/core//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/infiniband/hw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/infiniband/hw/bnxt_re//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/infiniband/hw/cxgb4//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/infiniband/hw/efa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/infiniband/hw/hfi1//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/infiniband/hw/hns//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/infiniband/hw/irdma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/infiniband/hw/mlx4//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/infiniband/hw/mlx5//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/infiniband/hw/mthca//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/infiniband/hw/ocrdma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/infiniband/hw/qedr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/infiniband/hw/qib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/infiniband/hw/usnic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/infiniband/hw/vmw_pvrdma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/infiniband/sw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/infiniband/sw/rdmavt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/infiniband/sw/rxe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/infiniband/sw/siw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/infiniband/ulp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/infiniband/ulp/ipoib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/infiniband/ulp/iser//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/infiniband/ulp/isert//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/infiniband/ulp/opa_vnic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/infiniband/ulp/srp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/infiniband/ulp/srpt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/input//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/input/gameport//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/input/joystick//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/input/joystick/iforce//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/input/keyboard//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/input/misc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/input/mouse//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/input/rmi4//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/input/serio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/input/tablet//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/input/touchscreen//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iommu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iommu/amd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iommu/arm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iommu/arm/arm-smmu-v3//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iommu/arm/arm-smmu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/iommu/intel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/ipack//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/ipack/carriers//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/ipack/devices//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/irqchip//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/isdn//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/isdn/capi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/isdn/divert//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/isdn/gigaset//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/isdn/hardware//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/isdn/hardware/avm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/isdn/hardware/eicon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/isdn/hardware/mISDN//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/isdn/hisax//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/isdn/hysdn//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/isdn/i4l//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/isdn/isdnloop//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/isdn/mISDN//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/leds//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/leds/trigger//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/lightnvm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/macintosh//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/macintosh/ams//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/mailbox//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/mcb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/md//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/md/bcache//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/md/persistent-data//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/cec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/common//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/common/b2c2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/common/saa7146//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/common/siano//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/common/v4l2-tpg//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/common/videobuf2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/dvb-core//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/dvb-frontends//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/dvb-frontends/cxd2880//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/dvb-frontends/drx39xyj//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/firewire//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/i2c//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/i2c/adv748x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/i2c/cx25840//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/i2c/et8ek8//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/i2c/m5mols//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/i2c/s5c73m3//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/i2c/smiapp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/i2c/soc_camera//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/mmc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/mmc/siano//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/b2c2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/bt8xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/cobalt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/cx18//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/cx23885//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/cx25821//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/cx88//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/ddbridge//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/dm1105//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/dt3155//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/intel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/intel/ipu3//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/ivtv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/mantis//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/meye//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/netup_unidvb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/ngene//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/pluto2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/pt1//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/pt3//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/saa7134//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/saa7146//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/saa7164//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/smipcie//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/solo6x10//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/sta2x11//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/ttpci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/tw5864//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/tw68//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/pci/tw686x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/am437x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/atmel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/cadence//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/cec-gpio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/coda//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/davinci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/exynos-gsc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/exynos4-is//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/marvell-ccic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/meson//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/mtk-jpeg//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/mtk-mdp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/mtk-vcodec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/mtk-vpu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/omap//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/omap3isp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/qcom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/qcom/camss-8x16//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/qcom/venus//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/rcar-vin//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/rockchip//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/rockchip/rga//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/s3c-camif//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/s5p-cec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/s5p-g2d//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/s5p-jpeg//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/s5p-mfc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/soc_camera//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/sti//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/sti/bdisp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/sti/c8sectpfe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/sti/cec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/sti/delta//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/sti/hva//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/stm32//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/tegra-cec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/ti-vpe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/vimc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/vivid//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/vsp1//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/platform/xilinx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/radio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/radio/si470x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/radio/si4713//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/radio/wl128x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/rc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/rc/img-ir//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/rc/keymaps//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/spi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/tuners//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/airspy//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/as102//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/au0828//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/b2c2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/cpia2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/cx231xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/dvb-usb-v2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/dvb-usb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/em28xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/go7007//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/gspca//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/gspca/gl860//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/gspca/m5602//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/gspca/stv06xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/hackrf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/hdpvr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/msi2500//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/pulse8-cec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/pvrusb2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/pwc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/rainshadow-cec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/s2255//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/siano//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/stk1160//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/stkwebcam//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/tm6000//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/ttusb-budget//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/ttusb-dec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/usbtv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/usbvision//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/uvc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/usb/zr364xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/media/v4l2-core//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/memory//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/memory/samsung//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/memory/tegra//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/memstick//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/memstick/core//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/memstick/host//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/message//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/message/fusion//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/mfd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/misc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/misc/altera-stapl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/misc/c2port//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/misc/cardreader//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/misc/cb710//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/misc/cxl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/misc/echo//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/misc/eeprom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/misc/genwqe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/misc/ibmasm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/misc/lis3lv02d//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/misc/lkdtm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/misc/mei//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/misc/mei/hdcp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/misc/mei/pxp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/misc/mic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/misc/mic/bus//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/misc/mic/card//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/misc/mic/cosm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/misc/mic/cosm_client//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/misc/mic/host//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/misc/mic/scif//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/misc/mic/vop//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/misc/ocxl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/misc/sgi-gru//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/misc/sgi-xp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/misc/ti-st//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/misc/vmw_vmci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/mmc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/mmc/core//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/mmc/host//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/mtd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/mtd/chips//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/mtd/devices//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/mtd/lpddr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/mtd/maps//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/mtd/nand//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/mtd/nand/onenand//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/mtd/nand/raw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/mtd/nand/raw/atmel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/mtd/nand/raw/bcm47xxnflash//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/mtd/nand/raw/brcmnand//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/mtd/nand/raw/gpmi-nand//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/mtd/parsers//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/mtd/spi-nor//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/mtd/tests//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/mtd/ubi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/mux//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/appletalk//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/arcnet//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/bonding//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/caif//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/can//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/can/c_can//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/can/cc770//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/can/ifi_canfd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/can/m_can//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/can/mscan//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/can/peak_canfd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/can/rcar//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/can/sja1000//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/can/softing//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/can/spi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/can/usb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/can/usb/kvaser_usb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/can/usb/peak_usb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/dsa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/dsa/b53//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/dsa/microchip//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/dsa/mv88e6xxx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/3com//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/8390//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/adaptec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/aeroflex//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/agere//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/alacritech//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/allwinner//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/alteon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/altera//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/amazon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/amazon/ena//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/amd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/amd/xgbe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/apm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/apm/xgene-v2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/apm/xgene//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/apple//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/aquantia//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/aquantia/atlantic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/aquantia/atlantic/hw_atl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/arc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/atheros//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/atheros/alx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/atheros/atl1c//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/atheros/atl1e//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/atheros/atlx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/aurora//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/broadcom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/broadcom/bnx2x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/broadcom/bnxt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/broadcom/genet//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/brocade//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/brocade/bna//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/cadence//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/calxeda//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/cavium//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/cavium/common//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/cavium/liquidio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/cavium/octeon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/cavium/thunder//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/chelsio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/chelsio/cxgb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/chelsio/cxgb3//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/chelsio/cxgb4//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/chelsio/cxgb4vf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/chelsio/inline_crypto//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/chelsio/inline_crypto/ch_ipsec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/chelsio/inline_crypto/ch_ktls//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/chelsio/libcxgb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/cirrus//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/cisco//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/cisco/enic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/cortina//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/davicom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/dec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/dec/tulip//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/dlink//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/emulex//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/emulex/benet//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/ezchip//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/faraday//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/freescale//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/freescale/dpaa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/freescale/fman//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/freescale/fs_enet//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/fujitsu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/google//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/google/gve//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/hisilicon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/hisilicon/hns//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/hisilicon/hns3//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/hisilicon/hns3/hns3pf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/hisilicon/hns3/hns3vf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/hp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/huawei//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/huawei/hinic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/i825xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/ibm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/ibm/ehea//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/ibm/emac//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/intel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/intel/e1000//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/intel/e1000e//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/intel/fm10k//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/intel/i40e//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/intel/iavf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/intel/ice//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/intel/igb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/intel/igbvf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/intel/igc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/intel/ixgb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/intel/ixgbe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/intel/ixgbevf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/marvell//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/marvell/mvpp2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/mediatek//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/mellanox//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/mellanox/mlx4//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/mellanox/mlx5//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/accel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/diag//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/en//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/en/xsk//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/en_accel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/esw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/fpga//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/ipoib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/steering//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/mellanox/mlxbf_gige//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/mellanox/mlxfw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/mellanox/mlxsw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/micrel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/microchip//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/microsoft//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/microsoft/mana//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/moxa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/mscc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/myricom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/myricom/myri10ge//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/natsemi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/neterion//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/neterion/vxge//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/netronome//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/netronome/nfp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/netronome/nfp/bpf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/netronome/nfp/flower//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/netronome/nfp/nfpcore//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/netronome/nfp/nfpcore/nfp6000//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/netronome/nfp/nic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/ni//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/nuvoton//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/nvidia//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/nxp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/oki-semi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/oki-semi/pch_gbe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/packetengines//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/pasemi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/pensando//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/pensando/ionic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/qlogic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/qlogic/netxen//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/qlogic/qed//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/qlogic/qede//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/qlogic/qlcnic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/qlogic/qlge//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/qualcomm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/qualcomm/emac//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/qualcomm/rmnet//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/rdc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/realtek//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/renesas//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/rocker//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/samsung//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/samsung/sxgbe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/seeq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/sfc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/sfc/falcon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/sfc/siena//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/sgi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/silan//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/sis//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/smsc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/socionext//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/stmicro//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/stmicro/stmmac//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/sun//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/synopsys//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/tehuti//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/ti//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/toshiba//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/tundra//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/via//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/wiznet//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/xilinx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/xircom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ethernet/xscale//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/fddi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/fddi/skfp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/fjes//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/hamradio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/hippi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/hyperv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ieee802154//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ipvlan//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/netdevsim//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/pcs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/phy//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/plip//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/ppp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/slip//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/team//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/usb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/vmxnet3//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wan//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wan/lmc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wimax//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wimax/i2400m//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/admtek//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/ath//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/ath/ar5523//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/ath/ath10k//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/ath/ath11k//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/ath/ath5k//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/ath/ath6kl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/ath/ath9k//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/ath/carl9170//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/ath/wcn36xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/ath/wil6210//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/atmel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/broadcom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/broadcom/b43//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/broadcom/b43legacy//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/broadcom/brcm80211//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/broadcom/brcm80211/brcmfmac//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/broadcom/brcm80211/brcmsmac//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/broadcom/brcm80211/brcmutil//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/cisco//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/intel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/intel/ipw2x00//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/intel/iwlegacy//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/intel/iwlwifi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/intel/iwlwifi/dvm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/intel/iwlwifi/mei//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/intel/iwlwifi/mvm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/intersil//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/intersil/hostap//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/intersil/orinoco//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/intersil/p54//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/intersil/prism54//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/marvell//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/marvell/libertas//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/marvell/libertas_tf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/marvell/mwifiex//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/mediatek//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/mediatek/mt76//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/mediatek/mt76/mt7603//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/mediatek/mt76/mt7615//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/mediatek/mt76/mt76x0//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/mediatek/mt76/mt76x2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/mediatek/mt76/mt7915//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/mediatek/mt76/mt7921//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/mediatek/mt7601u//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/quantenna//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/quantenna/qtnfmac//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/ralink//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/ralink/rt2x00//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/realtek//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/realtek/rtl818x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/realtek/rtl818x/rtl8180//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/realtek/rtl818x/rtl8187//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/realtek/rtl8xxxu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/realtek/rtlwifi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/btcoexist//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8188ee//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8192c//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8192ce//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8192cu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8192de//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8192ee//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8192se//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8723ae//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8723be//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8723com//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8821ae//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/realtek/rtw88//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/realtek/rtw89//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/rsi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/st//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/st/cw1200//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/ti//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/ti/wl1251//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/ti/wl12xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/ti/wl18xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/ti/wlcore//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/zydas//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/wireless/zydas/zd1211rw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/net/xen-netback//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/nfc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/nfc/fdp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/nfc/microread//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/nfc/nfcmrvl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/nfc/nxp-nci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/nfc/pn533//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/nfc/pn544//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/nfc/s3fwrn5//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/nfc/st-nci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/nfc/st21nfca//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/nfc/st95hf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/ntb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/ntb/hw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/ntb/hw/amd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/ntb/hw/epf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/ntb/hw/idt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/ntb/hw/intel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/ntb/hw/mscc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/ntb/test//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/nubus//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/nvdimm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/nvme//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/nvme/host//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/nvme/target//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/nvmem//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/of//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/of/unittest-data//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/opp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/parisc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/parport//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pci/controller//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pci/controller/dwc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pci/endpoint//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pci/endpoint/functions//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pci/hotplug//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pci/pcie//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pci/switch//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pcmcia//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/perf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/perf/hisilicon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/phy//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/phy/allwinner//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/phy/amlogic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/phy/broadcom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/phy/hisilicon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/phy/lantiq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/phy/marvell//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/phy/mediatek//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/phy/motorola//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/phy/qualcomm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/phy/ralink//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/phy/renesas//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/phy/rockchip//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/phy/samsung//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/phy/st//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/phy/tegra//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/phy/ti//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pinctrl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pinctrl/actions//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pinctrl/aspeed//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pinctrl/bcm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pinctrl/berlin//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pinctrl/freescale//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pinctrl/intel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pinctrl/mediatek//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pinctrl/meson//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pinctrl/mvebu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pinctrl/nomadik//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pinctrl/pxa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pinctrl/qcom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pinctrl/samsung//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pinctrl/sh-pfc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pinctrl/sirf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pinctrl/spear//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pinctrl/sprd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pinctrl/stm32//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pinctrl/sunxi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pinctrl/tegra//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pinctrl/ti//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pinctrl/uniphier//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pinctrl/vt8500//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pinctrl/zte//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/platform//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/platform/chrome//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/platform/goldfish//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/platform/mellanox//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/platform/mips//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/platform/olpc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/platform/x86//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/platform/x86/dell-wmi-sysman//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/platform/x86/intel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/platform/x86/intel/pmc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/platform/x86/intel/pmt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/platform/x86/intel/speed_select_if//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pnp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pnp/isapnp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pnp/pnpacpi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pnp/pnpbios//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/power//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/power/avs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/power/reset//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/power/supply//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/powercap//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pps//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pps/clients//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pps/generators//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/ps3//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/ptp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/pwm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/rapidio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/rapidio/devices//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/rapidio/switches//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/ras//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/regulator//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/remoteproc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/reset//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/reset/hisilicon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/reset/sti//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/reset/tegra//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/rpmsg//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/rtc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/s390//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/s390/block//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/s390/char//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/s390/cio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/s390/crypto//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/s390/net//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/s390/scsi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/s390/virtio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/sbus//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/sbus/char//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/aacraid//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/aic7xxx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/aic7xxx/aicasm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/aic94xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/arcmsr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/arm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/be2iscsi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/bfa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/bnx2fc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/bnx2i//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/csiostor//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/cxgbi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/cxgbi/cxgb3i//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/cxgbi/cxgb4i//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/cxlflash//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/device_handler//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/esas2r//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/fcoe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/fnic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/hisi_sas//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/ibmvscsi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/ibmvscsi_tgt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/isci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/libfc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/libsas//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/lpfc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/megaraid//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/mpi3mr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/mpt3sas//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/mvsas//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/pcmcia//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/pm8001//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/qedf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/qedi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/qla2xxx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/qla4xxx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/smartpqi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/snic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/sym53c8xx_2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/scsi/ufs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/sfi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/sh//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/sh/clk//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/sh/intc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/sh/maple//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/sh/superhyway//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/siox//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/slimbus//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/sn//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/soc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/soc/actions//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/soc/amlogic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/soc/atmel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/soc/bcm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/soc/bcm/brcmstb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/soc/bcm/brcmstb/pm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/soc/dove//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/soc/fsl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/soc/fsl/qbman//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/soc/fsl/qe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/soc/gemini//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/soc/imx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/soc/lantiq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/soc/mediatek//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/soc/qcom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/soc/renesas//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/soc/rockchip//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/soc/samsung//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/soc/sunxi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/soc/tegra//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/soc/tegra/fuse//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/soc/ti//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/soc/ux500//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/soc/versatile//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/soc/xilinx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/soc/zte//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/soundwire//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/spi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/spmi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/ssb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/android//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/android/ion//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/board//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/clocking-wizard//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/comedi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/comedi/drivers//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/comedi/kcomedilib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/dgnc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/emxx_udc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/fbtft//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/fsl-dpaa2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/fsl-dpaa2/ethernet//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/fsl-dpaa2/ethsw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/fsl-dpaa2/rtc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/fsl-mc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/fsl-mc/bus//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/fsl-mc/bus/dpio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/fwserial//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/gdm724x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/goldfish//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/greybus//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/greybus/tools//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/gs_fpgaboot//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/iio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/iio/accel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/iio/adc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/iio/addac//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/iio/cdc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/iio/frequency//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/iio/gyro//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/iio/impedance-analyzer//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/iio/meter//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/iio/resolver//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/ks7010//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/media//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/media/bcm2048//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/media/davinci_vpfe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/media/imx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/media/imx074//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/media/mt9t031//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/media/omap4iss//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/media/tegra-vde//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/media/zoran//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/most//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/most/cdev//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/most/dim2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/most/i2c//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/most/net//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/most/sound//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/most/usb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/most/video//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/mt29f_spinand//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/mt7621-dma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/mt7621-dts//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/mt7621-eth//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/mt7621-gpio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/mt7621-mmc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/mt7621-pci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/mt7621-pinctrl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/mt7621-spi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/netlogic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/nvec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/octeon-usb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/octeon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/olpc_dcon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/pi433//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/rtl8188eu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/rtl8192e//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/rtl8192e/rtl8192e//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/rtl8192u//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/rtl8192u/ieee80211//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/rtl8712//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/rtl8723bs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/rtlwifi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/rtlwifi/btcoexist//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/rtlwifi/rtl8822be//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/rts5208//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/skein//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/sm750fb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/speakup//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/unisys//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/unisys/visorhba//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/unisys/visorinput//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/unisys/visornic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/vboxvideo//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/vc04_services//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/vc04_services/bcm2835-audio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/vc04_services/bcm2835-camera//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/vme//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/vme/devices//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/vt6655//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/vt6656//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/wilc1000//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/wlan-ng//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/staging/xgifb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/target//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/target/iscsi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/target/iscsi/cxgbit//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/target/loopback//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/target/sbp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/target/tcm_fc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/tc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/tee//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/tee/optee//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/thermal//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/thermal/broadcom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/thermal/intel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/thermal/intel/int340x_thermal//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/thermal/qcom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/thermal/samsung//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/thermal/st//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/thermal/tegra//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/thermal/ti-soc-thermal//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/thunderbolt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/tty//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/tty/hvc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/tty/ipwireless//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/tty/serdev//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/tty/serial//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/tty/serial/8250//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/tty/serial/cpm_uart//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/tty/serial/jsm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/tty/vt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/uio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/atm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/c67x00//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/chipidea//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/class//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/common//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/core//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/dwc2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/dwc3//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/early//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/gadget//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/gadget/function//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/gadget/legacy//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/gadget/udc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/gadget/udc/aspeed-vhub//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/gadget/udc/bdc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/host//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/host/whci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/image//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/isp1760//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/misc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/misc/sisusbvga//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/mon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/mtu3//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/musb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/phy//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/renesas_usbhs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/roles//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/serial//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/storage//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/typec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/typec/altmodes//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/typec/mux//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/typec/tcpm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/typec/tipd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/typec/ucsi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/usbip//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/usb/wusbcore//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/uwb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/uwb/i1480//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/uwb/i1480/dfu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/vdpa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/vdpa/alibaba//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/vdpa/ifcvf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/vdpa/mlx5//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/vdpa/vdpa_sim//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/vdpa/virtio_pci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/vfio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/vfio/mdev//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/vfio/pci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/vfio/platform//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/vfio/platform/reset//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/vhost//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/video//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/video/backlight//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/video/console//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/video/fbdev//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/video/fbdev/aty//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/video/fbdev/core//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/video/fbdev/geode//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/video/fbdev/i810//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/video/fbdev/intelfb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/video/fbdev/kyro//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/video/fbdev/matrox//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/video/fbdev/mb862xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/video/fbdev/mbx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/video/fbdev/mmp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/video/fbdev/mmp/fb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/video/fbdev/mmp/hw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/video/fbdev/mmp/panel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/video/fbdev/nvidia//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/video/fbdev/omap//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/video/fbdev/omap2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/video/fbdev/omap2/omapfb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/video/fbdev/omap2/omapfb/displays//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/video/fbdev/omap2/omapfb/dss//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/video/fbdev/riva//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/video/fbdev/savage//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/video/fbdev/sis//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/video/fbdev/vermilion//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/video/fbdev/via//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/video/logo//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/virt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/virt/coco//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/virt/coco/sev-guest//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/virt/coco/tdx-guest//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/virt/nitro_enclaves//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/virt/vboxguest//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/virtio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/visorbus//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/vlynq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/vme//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/vme/boards//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/vme/bridges//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/w1//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/w1/masters//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/w1/slaves//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/watchdog//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/xen//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/xen/events//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/xen/xen-pciback//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/xen/xenbus//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/xen/xenfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/drivers/zorro//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/firmware//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/9p//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/adfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/affs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/afs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/autofs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/befs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/bfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/btrfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/cachefiles//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/ceph//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/cifs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/coda//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/configfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/cramfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/crypto//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/debugfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/devpts//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/dlm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/ecryptfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/efivarfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/efs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/exportfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/ext2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/ext4//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/f2fs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/fat//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/freevxfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/fscache//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/fuse//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/gfs2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/hfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/hfsplus//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/hostfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/hpfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/hugetlbfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/iomap//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/isofs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/jbd2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/jffs2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/jfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/kernfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/lockd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/minix//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/nfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/nfs/blocklayout//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/nfs/filelayout//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/nfs/flexfilelayout//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/nfs_common//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/nfsd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/nilfs2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/nls//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/notify//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/notify/dnotify//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/notify/fanotify//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/notify/inotify//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/ntfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/ocfs2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/ocfs2/cluster//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/ocfs2/dlm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/ocfs2/dlmfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/omfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/openpromfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/orangefs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/overlayfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/proc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/pstore//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/qnx4//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/qnx6//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/quota//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/ramfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/reiserfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/romfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/squashfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/sysfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/sysv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/tracefs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/ubifs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/udf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/ufs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/fs/xfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/acpi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/acpi/platform//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/asm-generic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/asm-generic/bitops//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/asm-generic/vdso//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/clocksource//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/8139too//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ac97//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/acer//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/acpi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/acpi/apei//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/acpi/apei/memory//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/acpi/cppc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/acpi/cpu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/acpi/cpu/freq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/acpi/ec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/acpi/hotplug//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/acpi/i2c//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/acpi/legacy//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/acpi/legacy/tables//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/acpi/pci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/acpi/platform//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/acpi/processor//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/acpi/rev//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/acpi/rev/override//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/acpi/spcr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/acpi/system//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/acpi/system/power//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/acpi/system/power/states//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/acpi/table//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/acpi/thermal//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/advise//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/alim1535//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/alim7101//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/allow//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/allow/dev//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/altera//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/amd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/amd/iommu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/amd/mem//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/amd/sfh//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/amd/xgbe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/amd/xgbe/have//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/amiga//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/amilo//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/aperture//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/apple//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/apple/mfi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/aquantia//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/clocksource//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/cpuidle//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/dma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/dma/addr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/dma/addr/t//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/enable//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/enable/hugepage//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/enable/memory//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/enable/split//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/enable/split/pmd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/acpi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/acpi/table//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/add//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/cache//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/cache/line//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/cc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/cpu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/debug//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/devmem//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/devmem/is//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/elf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/fast//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/filter//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/force//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/force/dma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/fortify//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/gcov//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/gcov/profile//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/gigantic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/kexec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/mem//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/membarrier//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/membarrier/sync//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/non//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/non/overlapping//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/non/overlapping/address//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/pmem//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/pte//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/set//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/set/direct//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/sg//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/strict//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/strict/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/strict/module//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/sync//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/sync/core//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/sync/core/before//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/syscall//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/uaccess//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/ubsan//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/ubsan/sanitize//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/has/zone//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/have//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/have/nmi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/have/nmi/safe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/hibernation//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/may//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/may/have//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/may/have/pc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/might//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/might/have//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/might/have/acpi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/might/have/pc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/mmap//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/mmap/rnd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/mmap/rnd/bits//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/mmap/rnd/compat//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/mmap/rnd/compat/bits//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/nr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/proc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/proc/kcore//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/select//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/select/memory//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/sparsemem//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/supports//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/supports/atomic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/supports/debug//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/supports/memory//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/supports/numa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/supports/optimized//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/suspend//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/use//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/use/builtin//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/use/cmpxchg//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/use/memremap//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/use/queued//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/uses//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/uses/high//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/uses/high/vma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/uses/pg//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/want//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/want/batched//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/want/batched/unmap//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/want/batched/unmap/tlb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/want/compat//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/want/compat/ipc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/want/compat/ipc/parse//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/want/default//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/want/default/bpf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/want/general//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/want/huge//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/want/huge/pmd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/want/old//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/want/old/compat//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/wants//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/wants/dynamic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/wants/dynamic/task//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arch/wants/thp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arm/gic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/arm/gic/max//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/associative//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/asus//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/asus/nb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/asymmetric//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/asymmetric/key//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/asymmetric/public//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/asymmetric/public/key//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/async//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/async/raid6//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/async/tx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ata//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ata/verbose//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ath//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ath10k//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ath11k//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ath9k//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ath9k/btcoex//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ath9k/common//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/atm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/atomic64//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/audit//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/autofs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/autofs4//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/auxiliary//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/backlight//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/backlight/class//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/backlight/lcd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/balloon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/base//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bcm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bcm/net//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bcm7xxx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bcm87xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bcma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bcma/driver//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bcma/driver/gmac//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bcma/host//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bcma/host/pci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/be2net//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bfq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bfq/group//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/big//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/binary//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/binfmt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bitfield//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bitfield/kunit//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bits//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bits/kunit//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/blk//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/blk/cgroup//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/blk/cgroup/fc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/blk/debug//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/blk/dev//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/blk/dev/dm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/blk/dev/integrity//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/blk/dev/io//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/blk/dev/loop//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/blk/dev/loop/min//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/blk/dev/null//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/blk/dev/ram//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/blk/mq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/blk/scsi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/blk/wbt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/block//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bnx2x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bnxt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bnxt/flower//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/boot//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/boot/printk//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bootparam//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bootparam/hardlockup//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bootparam/hardlockup/panic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bootparam/hotplug//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bootparam/hung//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bootparam/hung/task//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bootparam/hung/task/panic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bootparam/softlockup//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bootparam/softlockup/panic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bpf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bpf/jit//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bpf/jit/always//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bpf/jit/default//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bpf/kprobe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bpf/stream//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bpf/unpriv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bpf/unpriv/default//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/branch//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/branch/profile//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/brcmfmac//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/brcmfmac/proto//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/brcmsmac//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bridge//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bridge/ebt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bridge/ebt/802//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bridge/ebt/mark//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bridge/ebt/t//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bridge/igmp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bridge/nf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bridge/vlan//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/broadcom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bsd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bsd/process//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bsd/process/acct//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bt/bnep//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bt/bnep/mc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bt/bnep/proto//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bt/hcibtusb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bt/hciuart//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bt/mrvl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bt/rfcomm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bug//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bug/on//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/bug/on/data//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/build//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/buildtime//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/buildtime/extable//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/can//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/can/8dev//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/can/c//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/can/c/can//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/can/calc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/can/cc770//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/can/ems//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/can/esd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/can/kvaser//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/can/peak//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/can/plx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/can/sja1000//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/capi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cavium//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cb710//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cb710/debug//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cc/can//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cc/has//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cc/has/kasan//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cc/has/return//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cc/has/sancov//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cc/has/sancov/trace//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cc/has/sane//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cc/has/stackprotector//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cc/has/working//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cc/has/working/nosanitize//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cc/is//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cc/optimize//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cc/optimize/for//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cdrom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cdrom/pktcdvd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cec/platform//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ceph//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ceph/fs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ceph/fs/posix//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ceph/fs/security//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ceph/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ceph/lib/use//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ceph/lib/use/dns//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cfg80211//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cfg80211/crda//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cfg80211/default//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cfg80211/require//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cfg80211/require/signed//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cfg80211/use//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cfg80211/use/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cfg80211/use/kernel/regdb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cgroup//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cgroup/net//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/charger//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/check//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/checkpoint//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/chelsio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/chelsio/inline//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/chelsio/ipsec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/chelsio/tls//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/chr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/chr/dev//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cicada//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cifs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cifs/allow//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cifs/allow/insecure//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cifs/dfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cifs/smb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cifs/weak//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cifs/weak/pw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/clang//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/clkbld//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/clkdev//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/clkevt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/clocksource//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/clocksource/validate//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/clocksource/validate/last//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cls//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cls/u32//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/clz//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cmdline//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cmdline/kunit//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/common//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/compal//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/compat//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/compat/32bit//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/compat/binfmt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/compat/for//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/compat/for/u64//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/compat/old//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/configfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/console//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/console/loglevel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/context//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/context/switch//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/contig//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/core//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/core/dump//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/core/dump/default//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/core/dump/default/elf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cortina//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cpu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cpu/freq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cpu/freq/default//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cpu/freq/default/gov//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cpu/freq/gov//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cpu/freq/gov/attr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cpu/ibpb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cpu/ibrs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cpu/idle//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cpu/idle/gov//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cpu/sup//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cpu/unret//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cramfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crash//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crc/itu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crc32//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cross//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cross/memory//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/aes//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/aes/ni//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/aes/x86//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/ansi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/blowfish//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/blowfish/x86//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/camellia//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/camellia/aesni//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/camellia/aesni/avx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/camellia/aesni/avx/x86//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/camellia/aesni/avx2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/camellia/aesni/avx2/x86//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/camellia/x86//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/cast//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/cast5//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/cast5/avx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/cast5/avx/x86//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/cast6//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/cast6/avx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/cast6/avx/x86//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/chacha20//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/chacha20/x86//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/crc32//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/crc32c//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/crct10dif//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/des3//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/des3/ede//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/des3/ede/x86//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/dev//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/dev/ccp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/dev/nitrox//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/dev/padlock//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/dev/qat//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/dev/sp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/drbg//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/fips//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/ghash//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/ghash/clmul//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/ghash/clmul/ni//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/glue//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/glue/helper//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/hash//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/michael//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/poly1305//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/poly1305/x86//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/rng//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/serpent//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/serpent/avx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/serpent/avx/x86//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/serpent/avx2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/serpent/avx2/x86//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/serpent/sse2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/serpent/sse2/x86//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/sha1//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/sha256//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/sha512//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/twofish//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/twofish/avx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/twofish/avx/x86//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/twofish/x86//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/twofish/x86/64//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/user//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/crypto/user/api//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/cypress//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/damon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/davicom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dax//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dcache//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dcache/word//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/de//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/debug//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/debug/boot//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/debug/info//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/debug/section//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/decompress//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/default//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/default/fq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/default/hung//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/default/hung/task//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/default/io//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/default/io/delay//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/default/mmap//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/default/mmap/min//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/default/net//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/default/security//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/default/tcp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/deferred//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/deferred/struct//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/deferred/struct/page//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dell//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dell/smbios//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dell/wmi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/detect//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/detect/hung//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dev//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/device//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/devtmpfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dlci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dlm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dm/bio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dm/cache//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dm/log//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dm/multipath//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dm/persistent//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dm/thin//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dma/coherent//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dma/engine//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dma/shared//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dma/virtual//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dmar//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dmi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dmi/scan//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dmi/scan/machine//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dmi/scan/machine/non//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dmi/scan/machine/non/efi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dns//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dp83640//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dp83822//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dp83848//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dp83867//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dp83tc811//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dptf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/drm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/drm/amd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/drm/amd/dc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/drm/amdgpu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/drm/cirrus//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/drm/display//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/drm/display/dp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/drm/display/hdmi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/drm/dp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/drm/dp/aux//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/drm/fbdev//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/drm/gem//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/drm/gem/shmem//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/drm/i2c//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/drm/kms//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/drm/load//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/drm/load/edid//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/drm/nouveau//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/drm/panel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/drm/panel/orientation//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/drm/radeon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/drm/ttm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/drm/virtio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/drm/vmwgfx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/drm/vram//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dst//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dummy//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dummy/console//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dvb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dvb/au8522//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dvb/av7110//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dvb/b2c2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dvb/b2c2/flexcop//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dvb/budget//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dvb/dummy//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dvb/dynamic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dvb/firedtv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dvb/gp8psk//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dvb/max//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dvb/ttusb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dvb/tuner//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dvb/usb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dvb/usb/af9005//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dvb/usb/cinergy//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dvb/usb/dibusb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dvb/usb/nova//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dvb/usb/nova/t//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dvb/usb/technisat//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dvb/usb/umt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dw/dmac//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dwmac//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dynamic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dynamic/ftrace//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dynamic/ftrace/with//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dynamic/ftrace/with/direct//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dynamic/memory//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/dynamic/physical//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/e1000e//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/early//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/early/printk//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/early/printk/usb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/edac//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/edac/atomic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/edac/decode//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/edac/legacy//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/eeepc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/eeprom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/efi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/efi/dev//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/efi/dev/path//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/efi/rci2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/efi/runtime//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/efi/soft//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/efi/vars//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/efi/vars/pstore//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/efi/vars/pstore/default//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/efivar//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/elf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ena//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/enable//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/enable/must//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/enclosure//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/encrypted//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/energy//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ethtool//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/event//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/evm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/evm/attr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/exportfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/exportfs/block//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ext4//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ext4/fs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ext4/fs/posix//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ext4/kunit//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ext4/use//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ext4/use/for//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/extra//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/f71808e//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fair//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fair/group//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fanotify//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fanotify/access//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fat//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fat/default//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fat/kunit//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fb/boot//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fb/boot/vesa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fb/cfb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fb/deferred//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fb/sys//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fcoe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/file//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fips//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fips/signature//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/firewire//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/firmware//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fix//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fix/earlycon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fixed//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/font//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fortify//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/frame//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/framebuffer//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/framebuffer/console//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/framebuffer/console/deferred//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/framebuffer/console/detect//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fs/posix//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fscache//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ftrace//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ftrace/mcount//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fujitsu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/function//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/function/error//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/function/graph//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fuse//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fusion//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fusion/max//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/futex//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fw/attr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fw/cfg//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fw/loader//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/fw/loader/user//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/gact//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/gcc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic/bug//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic/bug/relative//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic/calibrate//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic/clockevents//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic/clockevents/min//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic/cmos//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic/cpu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic/early//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic/find//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic/find/first//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic/irq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic/irq/effective//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic/irq/effective/aff//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic/irq/matrix//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic/irq/reservation//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic/isa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic/msi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic/msi/irq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic/net//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic/pci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic/pending//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic/smp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic/smp/idle//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic/strncpy//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic/strncpy/from//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic/strnlen//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic/time//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic/vdso//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/generic/vdso/time//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/gfs2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/gfs2/fs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/gfs2/fs/locking//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/gigaset//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/gpio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/gpiolib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/gpiolib/fastpath//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/grace//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/gro//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/haltpoll//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hangcheck//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hardened//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hardened/usercopy//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hardirqs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hardirqs/sw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hardlockup//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hardlockup/check//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hardlockup/detector//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/has//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/has/ioport//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/acpi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/acpi/apei//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/aligned//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/aligned/struct//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/arch//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/arch/compat//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/arch/compat/mmap//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/arch/huge//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/arch/kasan//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/arch/mmap//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/arch/mmap/rnd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/arch/mmap/rnd/compat//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/arch/node//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/arch/node/dev//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/arch/seccomp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/arch/soft//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/arch/thread//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/arch/thread/struct//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/arch/transparent//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/arch/transparent/hugepage//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/arch/userfaultfd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/arch/vmap//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/arch/within//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/arch/within/stack//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/bootmem//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/bootmem/info//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/c//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/clk//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/cmpxchg//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/context//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/copy//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/copy/thread//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/debug//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/dma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/dynamic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/dynamic/ftrace//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/dynamic/ftrace/with//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/dynamic/ftrace/with/direct//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/ebpf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/efficient//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/efficient/unaligned//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/exit//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/fast//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/ftrace//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/ftrace/mcount//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/function//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/function/error//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/function/graph//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/gcc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/generic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/hardened//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/hardened/usercopy//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/hardlockup//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/hardlockup/detector//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/hw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/intel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/ioremap//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/irq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/irq/exit//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/irq/exit/on//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/irq/exit/on/irq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/irq/time//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/kprobes//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/kprobes/on//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/kvm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/kvm/cpu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/kvm/cpu/relax//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/kvm/dirty//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/kvm/irq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/kvm/no//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/kvm/pm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/memory//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/mixed//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/mixed/breakpoints//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/mmiotrace//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/mod//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/mod/arch//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/move//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/net//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/pcspkr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/perf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/perf/events//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/perf/user//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/perf/user/stack//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/posix//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/posix/cpu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/posix/cpu/timers//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/posix/cpu/timers/task//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/preempt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/regs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/regs/and//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/regs/and/stack//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/regs/and/stack/access//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/reliable//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/sched//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/sched/avg//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/setup//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/setup/per//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/setup/per/cpu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/stack//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/syscall//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/unstable//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/unstable/sched//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/user//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/user/return//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/virt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/virt/cpu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/have/virt/cpu/accounting//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hdlc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/headers//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hibernate//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hid//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hid/battery//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hid/betop//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hid/logitech//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hid/sensor//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hid/sensor/accel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hid/sensor/custom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hid/sensor/device//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hid/sensor/gyro//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hid/sensor/iio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hid/sensor/inclinometer//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hid/sensor/magnetometer//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/high//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/high/res//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hisax//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hisax/16//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hisax/avm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hisax/avm/a1//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hisax/bkm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hisax/enternow//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hisax/fritz//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hisax/hfc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hisax/max//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hisax/netjet//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hisax/no//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hisax/sct//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hist//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hmem//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hmm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hotplug//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hotplug/pci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hotplug/pci/acpi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hpet//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hpet/emulate//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hpwdt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hpwdt/nmi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hsa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hsa/amd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hsu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hugetlb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hvc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hw/random//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hwlat//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hwmon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hwpoison//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hypervisor//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hysdn//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/hz//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/i2c//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/i2c/amd756//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/i2c/designware//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/i2c/diolan//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/i2c/helper//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/i2c/hid//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/i2c/mux//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/i2c/nforce2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/i2c/parport//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/i2c/pca//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/i2c/tiny//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/i40e//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/i6300esb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/i8253//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ia32//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ia32/feat//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ib700//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ice//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/icplus//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ideapad//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/idle//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/idle/page//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ie6xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ieee802154//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/igb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/iio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/iio/consumers//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/iio/consumers/per//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/iio/kfifo//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/iio/triggered//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/illegal//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/illegal/pointer//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ima//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ima/appraise//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ima/arch//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ima/default//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ima/default/hash//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ima/lsm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ima/measure//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ima/measure/pcr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ima/read//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ima/secure//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ima/secure/and//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ima/secure/and/or//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ima/secure/and/or/trusted//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ima/sig//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ima/trusted//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ima/write//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/inet//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/inet/esp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/inet/mptcp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/inet/raw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/inet/sctp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/inet/tcp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/inet/udp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/inet/xfrm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/inet6//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/inet6/esp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/inet6/xfrm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/infiniband//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/infiniband/addr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/infiniband/addr/trans//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/infiniband/bnxt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/infiniband/ipoib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/infiniband/on//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/infiniband/on/demand//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/infiniband/opa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/infiniband/user//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/infiniband/virt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/infiniband/vmware//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/init//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/init/env//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/init/env/arg//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/initramfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/inotify//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/input//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/input/ati//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/input/atlas//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/input/ff//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/input/gpio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/input/gpio/rotary//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/input/keyspan//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/input/mousedev//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/input/mousedev/screen//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/instruction//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/int340x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/integrity//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/integrity/asymmetric//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/integrity/platform//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/integrity/trusted//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/intel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/intel/hfi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/intel/hid//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/intel/idxd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/intel/iommu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/intel/iommu/floppy//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/intel/ish//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/intel/ishtp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/intel/mei//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/intel/pch//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/intel/pmc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/intel/pmt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/intel/rapl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/intel/soc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/intel/soc/dts//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/intel/soc/dts/iosf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/intel/speed//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/intel/speed/select//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/intel/tdx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/intel/th//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/intel/turbo//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/intel/turbo/max//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/intel/wmi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/intel/xway//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/interval//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/io//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/io/delay//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/io/delay/type//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/iommu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/iommu/default//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/iommu/io//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/iosched//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/iosf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip/advanced//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip/fib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip/fib/trie//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip/mroute//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip/mroute/multiple//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip/multiple//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip/nf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip/nf/arp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip/nf/match//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip/nf/target//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip/pimsm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip/route//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip/set//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip/set/bitmap//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip/set/hash//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip/set/list//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip/vs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip/vs/mh//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip/vs/mh/tab//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip/vs/pe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip/vs/proto//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip/vs/proto/ah//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip/vs/sh//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip/vs/sh/tab//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip/vs/tab//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip6//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip6/nf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip6/nf/match//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ip6/nf/target//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ipc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ipmi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ipmi/device//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ipmi/dmi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ipmi/panic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ipmi/plat//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ippp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ipv6//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ipv6/mroute//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ipv6/mroute/multiple//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ipv6/multiple//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ipv6/ndisc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ipv6/optimistic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ipv6/pimsm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ipv6/route//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ipv6/router//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ipv6/sit//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ir//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ir/imon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ir/ite//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ir/jvc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ir/mce//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ir/mce/kbd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ir/nec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ir/rc5//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ir/rc6//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ir/sanyo//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ir/serial//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ir/sony//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ir/winbond//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/irq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/irq/bypass//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/irq/domain//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/irq/forced//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/irq/msi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/isa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/isa/dma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/iscsi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/iscsi/boot//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/iscsi/ibft//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/iscsi/target//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/isdn//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/isdn/capi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/isdn/capi/capidrv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/isdn/drv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/isdn/drv/avmb1//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/isdn/ppp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/isdn/tty//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/iso9660//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/it87//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/it8712f//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/itco//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/itco/vendor//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/iwlwifi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/iwlwifi/opmode//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ixgbe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ixgbevf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/kallsyms//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/kallsyms/absolute//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/kallsyms/base//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/karma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/kexec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/kexec/bzimage//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/kexec/bzimage/verify//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/keyboard//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/keys//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/kprobe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/kprobes//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/kprobes/on//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/kunit//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/kunit/all//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/kunit/example//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/kvm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/kvm/amd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/kvm/async//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/kvm/generic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/kvm/generic/dirtylog//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/kvm/generic/dirtylog/read//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/l2tp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/lcd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/lcd/class//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/led//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/led/trigger//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/leds//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/leds/brightness//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/leds/brightness/hw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/leds/clevo//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/leds/intel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/leds/lp55xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/leds/trigger//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/leds/trigger/default//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/legacy//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/legacy/vsyscall//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/linear//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/linear/ranges//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/linear/ranges/kunit//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/liquidio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/list//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/list/kunit//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/load//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/load/uefi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/lock//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/lock/debugging//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/lock/down//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/lock/down/in//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/lock/down/in/efi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/lock/down/in/efi/secure//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/lock/spin//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/lock/spin/on//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/lock/torture//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/lockd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/lockdep//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/lockup//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/log//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/log/buf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/log/cpu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/log/cpu/max//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/log/cpu/max/buf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/logitech//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/logo//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/logo/linux//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/loopback//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/lpc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/lsi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/lsi/et1011c//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/lsm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/lsm/mmap//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/lsm/mmap/min//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/lwtunnel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/lxt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/lz4//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/lzo//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mac//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mac80211//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mac80211/has//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mac80211/rc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mac80211/rc/default//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mac80211/sta//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mac80211/sta/hash//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mac80211/sta/hash/max//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/machz//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/macintosh//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/magic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/magic/sysrq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/magic/sysrq/default//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mantis//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mapping//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mapping/dirty//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/marvell//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/marvell/10g//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/max//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/max/raw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/maxlinear//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/md//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mdio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mdio/bcm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mdio/mscc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/media//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/media/altera//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/media/analog//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/media/analog/tv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/media/camera//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/media/cec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/media/common//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/media/digital//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/media/digital/tv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/media/pci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/media/radio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/media/subdrv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/media/tuner//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/media/usb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/megaraid//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mellanox//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mem//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mem/soft//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/memcg//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/memcpy//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/memcpy/kunit//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/memfd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/memory//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/memstick//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/memstick/jmicron//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/memstick/realtek//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/memstick/tifm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/message//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/message/loglevel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mfd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mfd/intel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mfd/intel/lpss//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mfd/sm501//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mhi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mhi/bus//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mhi/bus/pci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/micrel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/microchip//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/microchip/t1//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/microcode//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/microcode/old//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/microsemi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/minix//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/misc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/misc/rtsx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/misdn//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mlx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mlx4//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mlx4/en//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mlx5//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mlx5/cls//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mlx5/core//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mlx5/core/en//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mlx5/en//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mlx5/sf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mlx5/sw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mlx5/tc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mlx5/vdpa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mlxreg//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mlxsw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mlxsw/core//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mlxsw/spectrum//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mmc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mmc/block//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mmc/realtek//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mmc/ricoh//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mmc/sdhci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mmc/tifm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mmc/via//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mmconf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mmu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mmu/gather//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mmu/gather/merge//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mmu/gather/rcu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mmu/gather/rcu/table//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mmu/gather/table//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/modify//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/modify/ldt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/module//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/module/force//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/module/sig//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/module/srcversion//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/modules//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/modules/tree//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/modules/use//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/modules/use/elf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mouse//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mouse/elan//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mouse/elan/i2c//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mouse/ps2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mouse/ps2/elantech//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mouse/ps2/synaptics//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mouse/synaptics//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mpls//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mptcp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mptcp/kunit//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mq/iosched//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/msdos//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/msi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mspro//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mt76//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mt76/connac//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mt76x0//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mt76x02//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mt76x2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mt7921//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mtd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mtd/cfi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mtd/map//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mtd/map/bank//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mtd/map/bank/width//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mtd/ubi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mtd/ubi/beb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mtd/ubi/wl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mtrr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mtrr/sanitizer//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mtrr/sanitizer/enable//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mtrr/sanitizer/spare//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mtrr/sanitizer/spare/reg//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mtrr/sanitizer/spare/reg/nr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mutex//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mutex/spin//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mutex/spin/on//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mwifiex//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/mxm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/myri10ge//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/n//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/national//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/need//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/need/dma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/need/dma/map//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/need/multiple//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/need/per//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/need/per/cpu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/need/per/cpu/embed//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/need/per/cpu/embed/first//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/need/per/cpu/page//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/need/per/cpu/page/first//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/need/sg//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/need/sg/dma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/net//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/net/act//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/net/act/tunnel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/net/cls//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/net/drop//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/net/ematch//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/net/flow//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/net/ip//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/net/ipgre//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/net/key//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/net/l3//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/net/l3/master//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/net/mpls//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/net/packet//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/net/poll//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/net/ptp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/net/sch//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/net/sch/fq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/net/sock//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/net/tc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/net/tc/skb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/net/team//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/net/team/mode//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/net/udp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/net/vendor//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/netconsole//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/netfilter//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/netfilter/family//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/netfilter/netlink//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/netfilter/netlink/glue//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/netfilter/xt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/netfilter/xt/match//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/netfilter/xt/target//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/netlink//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/network//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/network/phy//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/netxen//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/new//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nf/conntrack//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nf/conntrack/netbios//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nf/ct//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nf/ct/netlink//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nf/ct/proto//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nf/defrag//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nf/dup//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nf/flow//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nf/flow/table//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nf/log//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nf/nat//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nf/nat/snmp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nf/reject//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nf/socket//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nf/tables//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nf/tproxy//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nfp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nfp/app//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nfp/app/abm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nfs/acl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nfs/use//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nfs/use/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nfs/v3//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nfs/v4//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nfs/v4/1//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nfs/v4/1/implementation//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nfs/v4/1/implementation/id//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nfs/v4/security//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nfsd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nfsd/v2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nfsd/v3//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nfsd/v4//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nfsd/v4/security//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nft//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nft/bridge//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nft/dup//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nft/fib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nft/flow//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nft/fwd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nft/reject//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nitro//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nls//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nls/codepage//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nls/iso8859//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nls/koi8//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nls/mac//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/no//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/no/hz//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nodes//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nop//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nouveau//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nouveau/debug//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nr/cpus//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nr/cpus/range//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ntb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/numa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/numa/keep//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nvdimm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nvme//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nvme/target//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nvme/verbose//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/nvsw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/oid//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/old//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/openvswitch//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/oprofile//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/oprofile/nmi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/optimize//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/osf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/osnoise//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/output//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/overlay//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/packet//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/page//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/page/table//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/panasonic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/panic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/panic/on//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/panic/on/oops//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/paravirt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/paravirt/time//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/parport//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/parport/not//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/partition//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pci/lockless//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pci/msi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pci/msi/irq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pci/pf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pcie//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pcie/bus//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pcieaer//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pcieaspm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pcs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pcspkr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/perf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/perf/events//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/perf/events/amd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/perf/events/intel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/persistent//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pgtable//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/phys//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/phys/addr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/phys/addr/t//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/physical//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pid//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pinctrl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pkcs7//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pkcs7/message//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/plugin//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pm/generic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pm/generic/domains//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pm/sleep//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pm/std//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pmc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pmic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pnfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pnfs/file//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pnfs/flexfile//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/posix//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/posix/cpu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/posix/cpu/timers//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/posix/cpu/timers/task//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/posix/mqueue//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/power//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ppp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ppp/sync//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pps//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pps/client//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/preempt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/prevent//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/prevent/firmware//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/print//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/print/quota//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/printk//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/printk/safe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/printk/safe/log//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/printk/safe/log/buf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/probe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/proc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/proc/cpu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/proc/page//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/proc/pid//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/proc/thermal//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/proc/thermal/mmio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/proc/vmcore//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/proc/vmcore/device//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/provide//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/provide/ohci1394//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/provide/ohci1394/dma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/psi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/psi/default//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pstore//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pstore/compress//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pstore/deflate//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pstore/deflate/compress//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ptp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ptp/1588//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ptp/1588/clock//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pwm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/pwm/lpss//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/qcom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/qcom/qmi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/qed//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/qfmt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/qrtr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/qsemi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/queued//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/quota//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/quota/netlink//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/quotactl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/radio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/raid//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/raid6//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/raid6/pq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/random//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/random/trust//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/randomize//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/randomize/memory//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/randomize/memory/physical//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/raw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rc/ati//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rcu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rcu/boost//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rcu/cpu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rcu/cpu/stall//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rcu/need//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rcu/nocb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rcu/stall//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rdma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/realtek//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/reed//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/reed/solomon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/regmap//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/regmap/soundwire//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/renesas//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/reset//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/resource//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/resource/kunit//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rfkill//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rhel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ring//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ring/buffer//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rmi4//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rmi4/2d//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rmi4/f03//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rockchip//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rpcsec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rpcsec/gss//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rt2800//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rt2800/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rt2800pci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rt2800usb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rt2x00//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rt2x00/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rtc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rtc/drv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rtc/drv/ds3232//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rtc/drv/m41t80//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rtc/hctosys//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rtc/i2c//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rtc/i2c/and//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rtc/intf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rtc/mc146818//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rtc/systohc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rtl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rtl8192c//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rtl8723//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rtlwifi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rtw88//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rtw89//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/runtime//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/runtime/testing//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rwsem//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rwsem/spin//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/rwsem/spin/on//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sample//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sample/vfio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sample/vfio/mdev//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/samsung//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sata//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sata/ahci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sata/mobile//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sata/mobile/lpm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sbc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sbc/fitpc2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/scf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/scf/torture//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sched//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sched/mc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sched/omit//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sched/omit/frame//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/scsi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/scsi/bnx2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/scsi/bnx2x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/scsi/chelsio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/scsi/cxgb4//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/scsi/dh//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/scsi/dh/hp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/scsi/fc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/scsi/iscsi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/scsi/mpt2sas//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/scsi/mpt2sas/max//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/scsi/mpt3sas//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/scsi/mpt3sas/max//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/scsi/proc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/scsi/qla//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/scsi/sas//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/scsi/sas/host//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/scsi/scan//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/scsi/spi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/scsi/srp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sctp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sctp/cookie//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sctp/cookie/hmac//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sctp/default//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sctp/default/cookie//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sctp/default/cookie/hmac//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sdio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/seccomp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/section//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/section/mismatch//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/section/mismatch/warn//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/security//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/security/network//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/security/selinux//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/security/selinux/avc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/security/selinux/checkreqprot//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/security/selinux/sid2str//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/security/selinux/sid2str/cache//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/security/selinux/sidtab//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/security/selinux/sidtab/hash//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/security/writable//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/select//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/select/memory//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sensors//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sensors/acpi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sensors/amd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sensors/dell//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sensors/fam15h//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sensors/i5k//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sensors/lis3//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sensors/mlxreg//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sensors/ntc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sensors/sch56xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sensors/via//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/serial//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/serial/8250//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/serial/8250/many//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/serial/8250/nr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/serial/8250/runtime//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/serial/8250/share//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/serial/arc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/serial/arc/nr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/serial/core//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/serial/multi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/serio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/serio/altera//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/serio/arc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sev//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sfc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sfc/mcdi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sfc/siena//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sfc/siena/mcdi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sg//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sgetmask//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sgi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sgl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/shuffle//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/shuffle/page//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/signed//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/signed/pe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/signed/pe/file//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/skb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/slab//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/slab/freelist//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/slip//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/slub//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/slub/kunit//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sms//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sms/sdio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sms/siano//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sms/usb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/smsc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/smsc/sch311x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/ac97//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/ac97/power//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/ac97/power/save//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/amd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/amd/acp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/atiixp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/compress//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/cs46xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/cs46xx/new//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/ctl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/ctl/fast//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/dma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/dynamic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/emu10k1//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/es1968//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/firewire//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/hda//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/hda/codec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/hda/codec/ca0132//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/hda/cs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/hda/cs/dsp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/hda/dsp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/hda/ext//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/hda/generic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/hda/input//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/hda/input/beep//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/hda/patch//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/hda/power//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/hda/power/save//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/hda/prealloc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/hda/scodec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/hda/scodec/cs35l41//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/intel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/intel/dsp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/intel/soundwire//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/jack//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/jack/input//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/maestro3//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/max//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/mpu401//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/opl3//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/opl3/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/oxygen//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/pcm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/proc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/seq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/seq/hrtimer//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/seq/midi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/sequencer//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/acpi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/acpi/intel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/amd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/amd/renoir//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/amd/vangogh//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/amd/yc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/cs35l41//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/hdac//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/i2c//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/i2c/and//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/bdw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/bdw/rt5650//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/bdw/rt5677//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/broadwell//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/bxt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/bxt/da7219//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/bxt/da7219/max98357a//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/bxt/rt298//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/byt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/byt/cht//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/byt/cht/cx2072x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/byt/cht/da7213//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/byt/cht/es8316//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/byt/cht/nocodec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/bytcr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/bytcr/rt5640//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/bytcr/rt5651//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/cht//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/cht/bsw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/cht/bsw/max98090//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/cht/bsw/max98090/ti//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/cht/bsw/nau8824//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/cht/bsw/rt5645//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/cht/bsw/rt5672//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/cml//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/cml/lp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/cml/lp/da7219//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/cml/lp/da7219/max98357a//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/da7219//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/da7219/max98357a//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/ehl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/ehl/rt5660//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/glk//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/glk/da7219//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/glk/da7219/max98357a//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/glk/rt5682//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/glk/rt5682/max98357a//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/haswell//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/hda//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/hda/dsp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/kbl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/kbl/da7219//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/kbl/da7219/max98357a//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/kbl/da7219/max98927//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/kbl/rt5660//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/kbl/rt5663//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/kbl/rt5663/max98927//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/kbl/rt5663/rt5514//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/kbl/rt5663/rt5514/max98927//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/skl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/skl/hda//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/skl/hda/dsp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/skl/hda/dsp/generic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/skl/nau88l25//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/skl/nau88l25/max98357a//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/skl/nau88l25/ssm4567//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/skl/rt286//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/skylake//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/skylake/ssp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/sof//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/sof/cirrus//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/sof/cml//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/sof/cml/rt1011//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/sof/cml/rt1011/rt5682//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/sof/da7219//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/sof/da7219/max98373//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/sof/es8336//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/sof/maxim//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/sof/nau8825//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/sof/pcm512x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/sof/realtek//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/sof/rt5682//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/sof/ssp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/sof/ssp/amp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/sof/wm8804//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/soundwire//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/soundwire/sof//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/sst//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/user//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/user/friendly//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/intel/user/friendly/long//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/max98373//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/pcm512x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/rt1308//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/rt1316//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/rt1318//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/rt5514//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/rt5677//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/rt5682//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/rt700//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/rt711//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/rt711/sdca//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/rt715//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/rt715/sdca//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/sdw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/sof//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/sof/acpi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/sof/amd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/sof/debug//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/sof/hda//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/sof/hda/audio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/sof/hda/link//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/sof/intel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/sof/intel/atom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/sof/intel/atom/hifi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/sof/intel/hifi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/sof/intel/hifi/ep//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/sof/intel/soundwire//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/sof/intel/soundwire/link//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/sof/pci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/sof/probe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/sof/probe/work//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/topology//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/topology/kunit//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/wm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/soc/wm8804//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/sst//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/sst/atom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/sst/atom/hifi2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/sst/atom/hifi2/platform//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/synth//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/usb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/usb/caiaq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/verbose//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/via82xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/snd/vx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sock//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sock/cgroup//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sock/validate//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/soft//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/softlockup//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/solaris//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/solaris/x86//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sony//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sonypi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sound//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sound/oss//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sound/oss/core//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/soundwire//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/soundwire/generic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sp5100//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sparse//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sparsemem//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sparsemem/vmemmap//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/speculation//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/spi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/spi/pxa2xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/split//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/split/ptlock//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/squashfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/squashfs/decomp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/squashfs/decomp/multi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/squashfs/file//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/squashfs/fragment//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/squashfs/fragment/cache//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ssb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/stack//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/stackprotector//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/stacktrace//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/stm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/stm/proto//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/stm/proto/sys//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/stm/source//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/stmmac//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/stream//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/strict//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/strict/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/strict/module//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/strip//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/strip/asm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sun//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sunrpc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sunrpc/xprt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/suspend//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/symbolic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/syn//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sync//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/synclink//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sysctl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sysctl/exception//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sysctl/kunit//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sysfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/system//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/system/blacklist//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/system/blacklist/hash//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/system/data//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/system/trusted//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/sysvipc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/tablet//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/tablet/serial//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/tablet/usb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/target//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/task//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/task/delay//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/task/io//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/tasks//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/tasks/rcu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/tasks/rude//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/tasks/trace//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/tcg//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/tcg/tis//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/tcg/tis/i2c//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/tcg/tis/st33zp24//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/tcm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/tcp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/tcp/cong//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/tdx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/tdx/guest//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/teranetics//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/test//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/test/list//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/textsearch//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/thermal//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/thermal/default//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/thermal/default/gov//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/thermal/default/gov/step//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/thermal/emergency//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/thermal/emergency/poweroff//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/thermal/emergency/poweroff/delay//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/thermal/gov//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/thermal/gov/bang//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/thermal/gov/fair//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/thermal/gov/step//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/thermal/gov/user//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/thermal/writable//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/thinkpad//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/thinkpad/acpi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/thinkpad/acpi/alsa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/thinkpad/acpi/hotkey//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/thread//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/thread/info//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/thread/info/in//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/tick//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/tifm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/tigon3//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/time//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/timerlat//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/tipc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/tipc/media//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/tls//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/tmpfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/tmpfs/posix//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/topstar//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/torture//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/toshiba//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/toshiba/bt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/touchscreen//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/touchscreen/wacom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/trace//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/trace/irqflags//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/trace/irqflags/nmi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/tracer//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/tracer/max//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/tracing//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/tree//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/trusted//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ttpci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/typec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/typec/dp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/typec/mux//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ucs2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/ucsi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/udf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/uefi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/uefi/cper//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/uio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/uio/pci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/uio/pdrv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/unix//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/unix98//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/unixware//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/unwinder//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/uprobe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/ali//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/announce//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/announce/new//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/arch//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/arch/has//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/autosuspend//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/conn//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/default//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/ehci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/ehci/root//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/ehci/root/hub//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/ehci/tt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/ezusb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/few//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/few/init//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/ftdi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/gspca//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/gspca/ov534//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/gspca/xirlink//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/hsic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/hwa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/led//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/leds//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/leds/trigger//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/net//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/net/ax88179//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/net/cdc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/net/cdc/subset//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/net/cx82310//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/net/huawei//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/net/huawei/cdc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/net/qmi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/net/rndis//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/ohci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/ohci/hcd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/ohci/little//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/pulse8//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/pwc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/pwc/input//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/rainshadow//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/role//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/roles//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/roles/intel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/serial//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/serial/cypress//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/serial/digi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/serial/edgeport//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/serial/ftdi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/serial/keyspan//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/serial/kobil//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/serial/mct//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/serial/mos7715//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/serial/safe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/serial/xsens//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/sierra//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/storage//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/storage/cypress//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/storage/ene//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/uhci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/video//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/video/class//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/video/class/input//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/wusb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb/xhci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/usb4//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/use//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/use/percpu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/use/percpu/numa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/use/percpu/numa/node//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/user//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/user/return//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/user/stacktrace//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/uts//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/uv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/uwb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/vdpa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/vdpa/sim//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/vfat//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/vfio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/vfio/iommu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/vfio/mdev//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/vfio/pci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/vga//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/vga/arb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/vga/arb/max//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/vhost//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/via//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/video//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/video/au0828//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/video/cx18//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/video/cx231xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/video/cx88//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/video/em28xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/video/fb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/video/ir//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/video/pvrusb2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/video/saa7134//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/video/saa7146//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/video/tm6000//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/videobuf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/videobuf/dma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/videobuf2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/videobuf2/dma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/virt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/virt/cpu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/virt/cpu/accounting//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/virt/to//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/virtio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/virtio/pci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/virtio/vsockets//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/vitesse//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/vlan//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/vlan/8021q//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/vm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/vm/event//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/vmap//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/vmware//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/vmware/vmci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/vp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/vsockets//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/vt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/vt/console//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/vt/hw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/vt/hw/console//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/w83627hf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/w83877f//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/w83977f//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/want//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/want/dev//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/watchdog//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/watchdog/handle//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/watchdog/handle/boot//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/watchdog/open//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/wdat//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/wlan//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/wlan/vendor//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/wmi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x509//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x509/certificate//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/64//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/64/acpi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/acpi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/acpi/cpufreq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/amd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/amd/freq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/amd/platform//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/check//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/check/bios//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/cpu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/decoder//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/direct//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/extended//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/feature//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/hv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/hv/callback//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/intel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/intel/memory//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/intel/memory/protection//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/intel/tsx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/intel/tsx/mode//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/internode//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/internode/cache//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/io//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/l1//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/l1/cache//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/local//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/mce//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/mcelog//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/mem//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/minimum//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/minimum/cpu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/need//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/p4//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/pkg//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/pkg/temp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/platform//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/platform/drivers//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/pm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/pmem//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/pmem/legacy//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/powernow//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/reroute//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/reroute/for//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/reroute/for/broken//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/reroute/for/broken/boot//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/sgx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/speedstep//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/supports//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/supports/memory//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/thermal//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/vmx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/vmx/feature//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/x86/vsyscall//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/xarray//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/xdp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/xdp/sockets//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/xfrm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/xfrm/sub//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/xfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/xfs/posix//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/xilinx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/xor//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/xz//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/xz/dec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/yenta//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/yenta/ene//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/zlib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/zone//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/zram//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/config/zsmalloc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/crypto//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/crypto/internal//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/drm-backport//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/drm-backport/linux//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/drm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/drm/bridge//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/drm/display//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/drm/i2c//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/drm/ttm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/arm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/bus//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/clk//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/clock//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/display//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/dma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/gpio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/i2c//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/iio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/iio/adc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/input//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/interrupt-controller//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/leds//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/mailbox//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/media//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/memory//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/mfd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/mips//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/mux//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/net//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/phy//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/pinctrl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/power//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/pwm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/regulator//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/reset//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/soc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/sound//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/spmi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/thermal//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/dt-bindings/usb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/generated//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/generated/uapi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/generated/uapi/linux//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/keys//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/kunit//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/kvm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/amba//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/avf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/bcma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/byteorder//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/can//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/can/dev//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/can/platform//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/ceph//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/clk//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/crush//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/decompress//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/dma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/dsa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/extcon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/firmware//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/firmware/cirrus//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/firmware/intel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/firmware/meson//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/fpga//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/fsl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/fsl/bestcomm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/gpio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/hsi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/iio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/iio/accel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/iio/adc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/iio/common//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/iio/dac//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/iio/frequency//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/iio/gyro//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/iio/imu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/iio/magnetometer//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/iio/timer//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/input//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/irqchip//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/isdn//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/lockd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/mailbox//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/mfd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/mfd/abx500//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/mfd/arizona//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/mfd/da9052//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/mfd/da9055//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/mfd/da9062//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/mfd/da9063//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/mfd/da9150//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/mfd/mt6323//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/mfd/mt6397//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/mfd/pcf50633//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/mfd/samsung//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/mfd/syscon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/mfd/wm831x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/mfd/wm8350//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/mfd/wm8994//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/mlx4//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/mlx5//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/mmc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/mtd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/mux//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/net//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/net/intel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/netfilter//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/netfilter/ipset//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/netfilter_arp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/netfilter_bridge//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/netfilter_ipv4//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/netfilter_ipv6//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/pcs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/perf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/phy//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/phy/tegra//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/pinctrl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/platform_data//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/platform_data/media//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/platform_data/x86//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/power//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/qed//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/raid//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/regulator//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/remoteproc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/reset//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/rpmsg//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/rtc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/sched//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/soc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/soc/actions//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/soc/brcmstb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/soc/dove//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/soc/mediatek//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/soc/qcom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/soc/renesas//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/soc/samsung//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/soc/sunxi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/soc/ti//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/soundwire//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/spi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/ssb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/sunrpc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/ulpi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/unaligned//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/usb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/uwb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/linux/wimax//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/math-emu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/media//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/media/davinci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/media/drv-intf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/media/i2c//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/media/tpg//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/memory//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/misc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/net//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/net/9p//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/net/bluetooth//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/net/caif//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/net/iucv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/net/mana//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/net/netfilter//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/net/netfilter/ipv4//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/net/netfilter/ipv6//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/net/netns//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/net/nfc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/net/phonet//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/net/sctp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/net/tc_act//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/pcmcia//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/ras//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/rdma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/scsi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/scsi/fc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/soc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/soc/arc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/soc/at91//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/soc/bcm2835//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/soc/brcmstb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/soc/fsl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/soc/fsl/qe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/soc/imx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/soc/mediatek//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/soc/nps//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/soc/qcom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/soc/rockchip//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/soc/sa1100//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/soc/tegra//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/sound//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/sound/ac97//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/sound/sof//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/sound/sof/ipc4//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/target//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/target/iscsi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/trace//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/trace/events//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/asm-generic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/drm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/linux//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/linux/android//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/linux/byteorder//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/linux/caif//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/linux/can//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/linux/cifs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/linux/dvb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/linux/genwqe//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/linux/hdlc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/linux/hsi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/linux/iio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/linux/isdn//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/linux/mmc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/linux/netfilter//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/linux/netfilter/ipset//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/linux/netfilter_arp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/linux/netfilter_bridge//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/linux/netfilter_ipv4//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/linux/netfilter_ipv6//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/linux/nfsd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/linux/raid//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/linux/sched//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/linux/spi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/linux/sunrpc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/linux/tc_act//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/linux/tc_ematch//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/linux/usb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/linux/wimax//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/misc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/mtd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/rdma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/rdma/hfi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/scsi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/scsi/fc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/sound//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/sound/intel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/sound/intel/avs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/sound/sof//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/video//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/uapi/xen//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/vdso//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/video//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/xen//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/xen/arm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/xen/interface//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/xen/interface/hvm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/include/xen/interface/io//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/init//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/ipc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/kernel/bpf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/kernel/bpf/preload//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/kernel/bpf/preload/iterators//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/kernel/cgroup//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/kernel/debug//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/kernel/debug/kdb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/kernel/dma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/kernel/events//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/kernel/gcov//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/kernel/irq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/kernel/kcsan//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/kernel/livepatch//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/kernel/locking//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/kernel/power//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/kernel/printk//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/kernel/rcu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/kernel/sched//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/kernel/time//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/kernel/trace//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/lib/842//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/lib/crypto//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/lib/dim//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/lib/fonts//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/lib/kunit//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/lib/livepatch//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/lib/lz4//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/lib/lzo//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/lib/math//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/lib/mpi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/lib/pldmfw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/lib/raid6//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/lib/raid6/test//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/lib/reed_solomon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/lib/vdso//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/lib/xz//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/lib/zlib_deflate//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/lib/zlib_dfltcc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/lib/zlib_inflate//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/lib/zstd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/mm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/mm/damon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/mm/kasan//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/6lowpan//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/802//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/8021q//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/9p//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/appletalk//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/atm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/ax25//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/batman-adv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/bluetooth//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/bluetooth/bnep//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/bluetooth/cmtp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/bluetooth/hidp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/bluetooth/rfcomm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/bpf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/bpfilter//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/bridge//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/bridge/netfilter//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/caif//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/can//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/ceph//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/core//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/dcb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/dccp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/dccp/ccids//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/decnet//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/decnet/netfilter//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/dns_resolver//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/dsa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/ethernet//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/ethtool//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/hsr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/ieee802154//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/ieee802154/6lowpan//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/ife//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/ipv4//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/ipv4/bpfilter//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/ipv4/netfilter//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/ipv6//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/ipv6/ila//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/ipv6/netfilter//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/iucv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/kcm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/key//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/l2tp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/l3mdev//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/lapb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/llc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/mac80211//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/mac802154//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/mpls//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/mptcp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/ncsi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/netfilter//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/netfilter/ipset//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/netfilter/ipvs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/netlabel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/netlink//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/netrom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/nfc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/nfc/hci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/nfc/nci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/nsh//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/openvswitch//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/packet//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/phonet//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/psample//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/qrtr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/rds//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/rfkill//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/rose//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/rxrpc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/sched//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/sctp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/smc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/strparser//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/sunrpc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/sunrpc/auth_gss//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/sunrpc/xprtrdma//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/switchdev//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/tipc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/tls//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/unix//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/vmw_vsock//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/wimax//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/wireless//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/x25//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/xdp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/net/xfrm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/samples//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/samples/auxdisplay//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/samples/bpf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/samples/configfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/samples/connector//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/samples/hidraw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/samples/hw_breakpoint//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/samples/kdb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/samples/kfifo//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/samples/kobject//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/samples/kprobes//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/samples/livepatch//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/samples/mei//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/samples/mic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/samples/mic/mpssd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/samples/nitro_enclaves//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/samples/qmi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/samples/rpmsg//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/samples/seccomp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/samples/timers//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/samples/trace_events//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/samples/trace_printk//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/samples/uhid//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/samples/v4l//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/samples/vfio-mdev//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/samples/vfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/samples/watchdog//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/basic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/clang-tools//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/coccinelle//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/coccinelle/api//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/coccinelle/api/alloc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/coccinelle/api/debugfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/coccinelle/free//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/coccinelle/iterators//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/coccinelle/locks//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/coccinelle/misc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/coccinelle/null//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/coccinelle/tests//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/dtc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/dtc/include-prefixes//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/dtc/libfdt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/gcc-plugins//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/gdb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/gdb/linux//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/genksyms//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/kconfig//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/kconfig/lxdialog//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/kconfig/tests//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/kconfig/tests/auto_submenu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/kconfig/tests/choice//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/kconfig/tests/choice_value_with_m_dep//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/kconfig/tests/err_recursive_dep//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/kconfig/tests/err_recursive_inc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/kconfig/tests/inter_choice//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/kconfig/tests/new_choice_with_dep//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/kconfig/tests/no_write_if_dep_unmet//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/kconfig/tests/preprocess//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/kconfig/tests/preprocess/builtin_func//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/kconfig/tests/preprocess/circular_expansion//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/kconfig/tests/preprocess/escape//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/kconfig/tests/preprocess/variable//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/kconfig/tests/rand_nested_choice//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/ksymoops//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/mod//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/package//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/selinux//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/selinux/genheaders//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/scripts/selinux/mdp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/security//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/security/apparmor//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/security/bpf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/security/integrity//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/security/integrity/evm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/security/integrity/ima//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/security/keys//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/security/keys/encrypted-keys//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/security/keys/trusted-keys//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/security/loadpin//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/security/selinux//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/security/selinux/include//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/security/smack//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/security/tomoyo//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/security/yama//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/ac97//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/aoa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/aoa/codecs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/aoa/core//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/aoa/fabrics//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/aoa/soundbus//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/aoa/soundbus/i2sbus//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/arm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/atmel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/core//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/core/oss//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/core/seq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/core/seq/oss//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/drivers//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/drivers/mpu401//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/drivers/opl3//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/drivers/opl4//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/drivers/pcsp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/drivers/vx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/firewire//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/firewire/bebob//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/firewire/dice//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/firewire/digi00x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/firewire/fireface//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/firewire/fireworks//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/firewire/motu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/firewire/oxfw//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/firewire/tascam//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/hda//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/hda/ext//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/i2c//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/i2c/other//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/isa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/isa/ad1816a//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/isa/ad1848//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/isa/cs423x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/isa/es1688//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/isa/galaxy//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/isa/gus//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/isa/msnd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/isa/opti9xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/isa/sb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/isa/wavefront//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/isa/wss//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/mips//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/oss//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/oss/dmasound//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/parisc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/pci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/pci/ac97//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/pci/ali5451//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/pci/asihpi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/pci/au88x0//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/pci/aw2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/pci/ca0106//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/pci/cs46xx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/pci/cs5535audio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/pci/ctxfi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/pci/echoaudio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/pci/emu10k1//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/pci/hda//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/pci/ice1712//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/pci/korg1212//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/pci/lola//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/pci/lx6464es//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/pci/mixart//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/pci/nm256//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/pci/oxygen//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/pci/pcxhr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/pci/riptide//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/pci/rme9652//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/pci/trident//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/pci/vx222//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/pci/ymfpci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/pcmcia//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/pcmcia/pdaudiocf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/pcmcia/vx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/ppc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/sh//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/adi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/amd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/amd/acp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/amd/raven//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/amd/renoir//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/amd/rpl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/amd/vangogh//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/amd/yc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/atmel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/au1x//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/bcm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/cirrus//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/codecs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/dwc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/fsl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/generic//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/hisilicon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/img//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/intel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/intel/atom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/intel/atom/sst//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/intel/avs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/intel/avs/boards//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/intel/boards//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/intel/catpt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/intel/common//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/intel/keembay//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/intel/skylake//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/jz4740//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/kirkwood//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/mediatek//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/mediatek/common//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/mediatek/mt2701//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/mediatek/mt6797//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/mediatek/mt8173//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/mediatek/mt8183//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/meson//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/mxs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/pxa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/qcom//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/qcom/qdsp6//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/rockchip//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/samsung//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/sh//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/sh/rcar//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/sof//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/sof/amd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/sof/imx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/sof/intel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/sof/mediatek//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/sof/mediatek/mt8186//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/sof/mediatek/mt8195//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/sof/xtensa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/spear//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/sprd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/sti//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/stm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/sunxi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/tegra//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/ti//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/txx9//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/uniphier//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/ux500//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/xilinx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/soc/xtensa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/sparc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/spi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/synth//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/synth/emux//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/usb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/usb/6fire//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/usb/bcd2000//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/usb/caiaq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/usb/hiface//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/usb/line6//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/usb/misc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/usb/usx2y//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/virtio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/x86//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/sound/xen//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/accounting//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/arch//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/arch/x86//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/arch/x86/intel_sdsi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/bpf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/bpf/bpftool//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/bpf/bpftool/Documentation//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/bpf/resolve_btfids//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/bpf/runqslower//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/build//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/build/feature//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/build/tests//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/build/tests/ex//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/cgroup//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/firewire//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/gpio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/hv//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/iio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/include//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/include/tools//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/io_uring//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/kvm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/kvm/kvm_stat//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/laptop//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/laptop/dslm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/laptop/freefall//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/leds//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/lib/api//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/lib/bpf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/lib/lockdep//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/lib/perf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/lib/perf/Documentation//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/lib/subcmd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/lib/traceevent//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/lib/traceevent/Documentation//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/lib/traceevent/plugins//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/objtool//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/pci//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/pcmcia//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/perf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/perf/Documentation//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/perf/arch//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/perf/arch/arm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/perf/arch/arm64//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/perf/arch/csky//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/perf/arch/mips//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/perf/arch/powerpc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/perf/arch/s390//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/perf/arch/sh//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/perf/arch/sparc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/perf/arch/x86//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/perf/arch/xtensa//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/perf/scripts//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/perf/scripts/perl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/perf/scripts/perl/Perf-Trace-Util//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/power//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/power/acpi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/power/acpi/tools//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/power/acpi/tools/acpidbg//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/power/acpi/tools/acpidump//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/power/acpi/tools/ec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/power/cpupower//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/power/cpupower/bench//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/power/cpupower/debug//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/power/cpupower/debug/i386//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/power/cpupower/debug/kernel//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/power/cpupower/debug/x86_64//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/power/pm-graph//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/power/x86//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/power/x86/intel-speed-select//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/power/x86/turbostat//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/power/x86/x86_energy_perf_policy//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/scripts//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/spi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/nvdimm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/radix-tree//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/scatterlist//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/android//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/android/ion//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/bpf//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/bpf/bpf_testmod//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/breakpoints//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/capabilities//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/cgroup//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/core//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/cpu-hotplug//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/cpufreq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/damon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/drivers//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/drivers/net//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/drivers/net/bonding//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/drivers/net/team//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/efivarfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/exec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/filesystems//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/firmware//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/fpu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/ftrace//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/futex//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/futex/functional//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/gpio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/ia64//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/intel_pstate//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/ipc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/kcmp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/kexec//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/kmod//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/kvm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/lib//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/livepatch//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/locking//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/media_tests//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/membarrier//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/memfd//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/memory-hotplug//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/mount//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/mqueue//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/net//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/net/forwarding//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/net/mptcp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/netfilter//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/nsfs//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/powerpc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/powerpc/alignment//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/powerpc/benchmarks//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/powerpc/cache_shape//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/powerpc/copyloops//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/powerpc/dscr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/powerpc/eeh//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/powerpc/math//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/powerpc/mce//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/powerpc/mm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/powerpc/papr_attributes//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/powerpc/pmu//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/powerpc/pmu/ebb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/powerpc/pmu/sampling_tests//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/powerpc/primitives//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/powerpc/ptrace//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/powerpc/signal//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/powerpc/stringloops//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/powerpc/switch_endian//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/powerpc/syscalls//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/powerpc/tm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/powerpc/vphn//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/prctl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/proc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/pstore//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/ptp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/ptrace//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/rcutorture//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/rcutorture/formal//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/rcutorture/formal/srcu-cbmc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests/store_buffering//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/rseq//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/rtc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/seccomp//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/sgx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/sigaltstack//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/size//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/sparc64//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/sparc64/drivers//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/splice//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/static_keys//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/sync//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/sysctl//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/tc-testing//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/tdx//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/timens//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/timers//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/tpm2//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/uevent//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/user//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/vDSO//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/vm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/watchdog//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/x86//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/selftests/zram//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/testing/vsock//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/thermal//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/thermal/tmon//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/usb//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/usb/ffs-aio-example//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/usb/ffs-aio-example/multibuff//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/usb/ffs-aio-example/multibuff/host_app//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/usb/ffs-aio-example/simple//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/usb/ffs-aio-example/simple/host_app//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/usb/usbip//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/usb/usbip/libsrc//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/usb/usbip/src//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/virtio//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/virtio/ringtest//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/virtio/vhost_test//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/virtio/virtio-trace//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/vm//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/tools/wmi//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/usr//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/virt//usr/src/kernels/4.18.0-488.rt7.277.el8.x86_64/virt/kvm//usr/src/kernels/4.18.0-488.rt7.277.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]=a21fbf184a8a30551890744f7c3a016dedc3cc22, 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]=dde17f49b9e6576867c00d73f26b60ea40c29b5c, 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]=ec66a772b5f9eb8ac724cdd9f7538a1bc6ea3ffc, 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]=ad2409398b1c92687184c51feee9b87e3e70d7bd, 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]=03bbdafb0b212658dc39d78d661872b7083bec2d, 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]=971e1f397f7ae99a6eca851025e0bf63bc13adcf, 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]=ea7544009003bf0c6adb8d3317d8066a7cb6cd46, 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]=3f0e091b3e722033fce1b4e8e6254da87b30c47e, 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]=2c8b15ca58f3be682355058928d1d06ccff6e373, 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]=fc5c595f85be5fe8ea1d6f6996f46d6b537e3eb1, 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]=4840c37630b469c3ecbb9f3bac7bd19e1385436b, 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]=1c4aeb2803d053b0ae2591782c63515122b20164, 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]=9f2363b55e5f604790f3989663a363311c31eeef, 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]=b9beb0b286e5a7734b0f0cf8a876d208dfb25276, 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]=3289fef4a52159538fe1b918d21441cb58cf135e, 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]=e61e566fa9467531f7226a6de715d86c8ed10f31, 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]=33f476c28a5f3ff0742248a824c5a4debc13809a, 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]=3a792c69cd1089e847d75426c1b4ac500d256629, strippedautomake makefile script, ASCII textbisonelfutils-libelf-develflexgccmakeopenssl-develutf-88248772adfceb320c44348bf0887c1affe8ce94c8f43c9161d2dd35260cf1199? 7zXZ Б!^z؅] b2u jӫ`(y/)nU!T -B"V }wTebТbb{!ܘNy/fτO8^B*y&Ҹ-VV*zdȇ%Y^FEMdҘ5a-rQ1bp_h]o=8Ê^~ ZZDe}a2d~8o06('Ní}0w^I _ vI :A1WLjy`UJbVc L{xdy#?DHt_fj]zdI, W5>d#?PuPW.Jď0[`ֵGucf| >' J( %r`D K Oug-JSFRt+x|/ǟzFK(}˸ԴpB8O8E|( ~ʼH켧g s8tqf_ؐGtwBv@Аt8fhR8strZnW !r QyɶK!/6Q<-gqU jW+1ZhzNu4Fe9FsS֤6幑A^׬ʹkbz+D>LF4$/IaxV7!0(nݚG hv)rȉ<5PWkhx}7F`%=v_fw4%}¯:`7aK@Z -SpM:;-!z;Ԛ=8: yi n.RAtf;4XUQn{]l+RYHhݷ/X% M>޽ =r+g֌jp?ԢkU$x|{\d5nڗO"~_N; ~,OV 2l'C٘{.9XSpʭfDaуT])*f00Ox(|`JػT#JɄLR2-%<4sޛIA+YlA97?0;%ugMٱw!2hRh~!ZlT Tv{ -{v0vzMyEE~(+|I;ȽR+l}){m,0,,QʾqU@\^F}/7! 1 +P80nPW¢>PRn }J6<"WbcB }V*$l9D!)ڗOv+m#=o ^ hZ3@+ᘲ2Gn5I]ZoSe.- 0JMj*}rrxgxU޲N:,w'C$9؀eF#nKsI~M NJC'-Jؾ@sJaTtu"㉯Y. rsRTۅ)Z0cb/eۏ>`qYD#opdʃv1]~}|B qѼ򔮝+Z]1wϳJ̈>־E7\A<.׍)7K p\u6-#hͨԠxX>Կ>,@RhGD[Tխn=D({* ;i\xT[R `b>P^* r7̀˙t^$3-#$If?^Ukݸf'J;nYCDussOrҸW6 ΀ s%Wչ/ѵK+yN8걇P 'ǡSDa@v 4gLqZI&jtC]-%Lb LRar 7B>_,_*󿣍ÿI@VkC,In( Q=llQsݾܙ8Euy @Izfx?C|߫ ֺek#*^I;\wr1"c>{l)Z°]q5}_tpgm\T4\Zx*V/F©CJA)Fs^eK$~y'LZgG ҂:.$W=Wu]T3-[ɬRo` ,}3dX!0"òBHt=;D DD% 7u<_;ӲSu,1{.dڢAq|E7E̗.zϝD]30jr30w,]\N~xmˣ)w/.ʫHC\6yBۆ4 \AXH7θkH%9Uf50sgvz34 p|.LP 'qSzecO~4fgB?+ X҂7p ŴGS ʪs 2NP%7/bap[ZtQ7fi<,J_ν UklkdWsV h'?i9'ERP.-VjnC/Y{D/i~851i5x8Ÿ0Zža撗>ƏߚAW\G3ᵠ?LCb) DgJ u-A vf'F~uX44u|odz>?{2>=9;#ݳGj:v6NH@e&x Lʮ$#Όl7csꒉAX QH g̛KuY].'UE}BL @cF^OhefCrrHb4fҶ|IU]4 Q ?#e" R)0kp`.b70Aa&$=ByBS=di}NIZ1b#68WHB%y(]ͧ$m-TRgFPޡoF[DᏛ4]n;6[Rxt=/WV̨qWקPE2qbd<܌!/˜KɇX0,+gT*%)? ԙ:ԅz񨯀w+SmsE1-a"FxH"I ,# PZo.Wy')tNVgf.FR|Tj*@i;&5JpHQ puM1On#??ws'VG\%ՆH̊}EGypa0E]+ ː,EhB7ڷk/a :E K v!jՠ>=x>,BsGu$ Q!;D4Or`ۀ@55Afvñ n%hZg2.P2@ ǂD:*Q׌v, Vʥ>D&, j8vI7L O" v}H?Y%թ-Ns ީA e*4RE0_5jW.C9Hc3L"p{f7BPL;Kf)_Wnd!l V}ir|þuo<+Y!U"s3dDIF_y</?/lE &T-Fe( <럀̴M% U!iWS@e2\<ƻ{qf2=SnVbSj|x6;扌ȶJoCCT\Cx@xxF⟛6gr֦P=TSJb_6ң@w{u%s]}XvT¿&~|+` 5<vAGW=Wv]?A9Ӭ+޾k9 b (ypJ.\>:+3 _ u03.H§c:uyHHPSqo+]0Fu. HR87TzOi2H\ΚH}ABPVff=Qۘd%:u-BW鋴g<@_~MAYEg0Xı|ej͞Oh~F*=J>r_O"/F :٭GIX ?B78"6$!()H`ƥ\cݳ1\p^?]76ZRm8-NjKL٭/N5 *D㌧2iRNͩNR͖L/C寥Px1bL;r罺)*aVd0ѵjMaY3a-7R*T x֑Dnm Σ#dfgg;ӕd1PQb=|~OUH|$A/1-A~檶&Ydޙ0]Ŭ`&B΁~Ɲ[Åpy 3 K-y-ݾ0oF1q` Y0†p㓱ЌD eo^t[Rils군$`_UB-+,:͈V:姠\l?ZV- :CC7%(jq^As;8<(aDq+NvϞZ6z/%~]޻QUA]=7I1sW"ͺ| 8gOc En* ǴJE;6@[Q[zא$UbVЅDͽ}Wዬd4?sٗP)0WIGbe iC7gZİ 룖4(œ "R.OX-Y_2VE{ș[%ݤ ƸY=3 `砬6,lL},~Bi5-dY\>r+zK]FKҽѮ isPH*HuOhLbM: 7Qb _>R"!C@sCo6W$ xvq: T/*JWBk <6S|f:dueH%rS. C7%ZVɸ\%QQpV}g@%*,2lyZ<Ip&B`F9^ Yab[ F#b5|M\(ːEޝoaXx8-F҈3OXAMfg/2[~'3k+po[M]SvA0Ó=;EӁ1|ȝs 2GRG.}9ǜɄ<VEޱ} \hœF.`@-{ o+d>b*/ҟy\Q.C"WoP]$Gn?咘J}Ω FA/\`yx!a:zVpN_PDYWjjDsGR!8B^#/t:xC_|tu}5[;03[`>X2;Q-8Dw[NMt^ᙙ-Ni-,Hzfݡ!CT0 S[v˛nMbÜ&!}BogYSҮ^lȸ 4orS:#U;Y󁕾\ ;Er˒tG(PX;Z۪B Vnh?@ӗ ~o^Q.lIoM|bUx2%1{7H@ #a"Nls!y .b9rD5xȎ4WFw3 Qd=>&r*`T17< {6!$;Lź"/> ɰ3g&&-&׵j{nO*£Tϐ)3ئ~y5ZTZ`ɛ(61HGĸٷ+쥶-y%BW-ևhbWXq̵'H{Hɔ;= F9瞖սrg!S[  QhX,񟋏21s3m*knɹ(.+'} ִ;P #]ڂGHKmԡit68LG@(6w1zݯ(?TB#M=v_m?Ϳ3do"}" 5콤0u$"B_m53j]^ƕIj=L6,B3 " 1bI'{ʩSCʡ'"[I>6+oጧ\E:^.^5\$Vps;{ȔU45+*drY s'#[ g?Qr*6NLMOn0cCx8) u<:T- k!~ ފJS ̨o-!E*`1<M!9iM(Xcy+ O BcNr%'$[O(u?Cٞ&9 MP^j4(\6\v cPƗ&޳tyEYrzy q$W; };HTIFe@@sȲ+J [Wvآ ?/4@^E$+mFCFՙI|l0 0:L:-O汸EbŚ!f$WLIʄo$/3/5ռguHJ /&~<`e<2P6.%uVhއ H$pU_6U4ьe> ̎=#oYMK+ozȠHƶ/fgh oAm?{ WyU%a_/x{R'}Q P}#oEΕy|xn+R]t8{:A4E=[r|`G9Zt@**2N7MI=-p-,(A,.9ug'7TVDQ9Aq9}V=VWRRΒ*&{."&72m;^,$-9V<ƶk%, I2&\JLkYTT#>,(,3HHq$_+M?;&FbgP{U>tspgQk\p'HfP9ϻ48 EA,|i\ևr1PEZT̒uwAc!VeLHiy` _\,ĩvډ)<{C &Y]Miݛ2MODvkw߮ZvO,~v4tv6Mcnj+*Zr9nG2Z#?ߝ*;mZ" UOh\%%@`rW^i494y0i7E2S%^tzqC8K6J{j/9$u&Nw '1ύ2i\a]P8=֖fz[(5a`^`dצp gm-`8+QD]Qdw <ߑlҍ!omq<~YeڜufՊաcC4d+itE}or2qIYF^CYtM;c&@U׶rcAE(S{A8(;KC[᪜oG~Ka_{*d$V~/Fn#~ 4MBIRJzVBAdx̭siI\!^jN@;K.9pQF.y)᪚lڪE9¤bDFd#ahxjRe;}\Q]`Ĺ<O٫;3qQϔfGX^>*5׃s6MKoz%MeM:RSHB<9V'afk2TrjFiK]>@ry/}pe䜆`\(q~[eRӕG{_;ϡ"阣EZ`{VC{>\kVx -AA{ V wY Aëz 笞\u\*P&c_|Y(fb,K}5ExͣS^nlJNGF;i Nk׵ þJWGarU޼'Zsz .ļт7Qi=lK.F[WsI"n 61̭2r $HL%gh?gFK혦KDZ!nb&c ?6J-?fbVW2u,i|;V!ͽQBwVP9gٴr-j/H K2V)G:[<=0X'R<fs1\m5 VL7šG*ٷN ;D*ͅXaVi=/-UE15UkeB R蒛vLuǪ@"ŋ-; xcv!jR._- X?YjrMErZ|0?)&!cY򸢐"duw'2Prtu < %f>\r- ]jz9332XL]:iOn_bA9y &cOשQFw) <&3:mzF ӪOm;_[-W#{qzWZ#4 Gw.Dhc=>3J=)1-&͓żBrL.4"up# Z99cvk>׆C]x,=/-g _t皗K2|b)[ϊ M̉I}yeK oul>8d0v}U2fm-6A ¯}.c[up0lYU8y&*nܘq;;4 t:[-gM s9֥iݽٗ|O[./N4s.DB6 *{ ?Q{v2Teԭe$7ro> JBa3)'O ߐi7fIH&~::@c&ML-ŷ/HNҢwRNU7kIL ȥ B7)qa7 hg)Y do.֮V9%yh o<^<|Xz4 &"tQ`Ch4ͮ:U\a'1?2%?XIǦeA= Zi^fK<|K[6=qIv2tdZ5=ǔ~ŗ* ]5w?>91=۫pfEߪOA| Ƚ @f.`|M9qP7Czky~ ._Ӭá$ LO]JEu ])kΌ&l̝mznVp}G yjGWcq~i0_cd9F1R1{PlXr>ckDNUm3Q _WK/mݭy*ΏȌN$6E?uBʴF-E+7gT5;h9IKe|ee8ȖqdP%5+\Kc);NrqH.YK,Ne}τ ]b\]7Q|C8u-#ԸMo(SIܰUx6E_Bf0rlU[ 1 (rOh- < ȋ3=FۆfkS[XcrtE,74ߧF޳_9cGw tW s\$I[a`KJv@6)WG^,ѨLeӛwa[*N{雘AOr H\qo4,}dfHwy^lp/ȸj lEoʇU;LN>ɪiNUkD;&Ƽpmt^mLCtb怲:p7 Zo7%LAa_X4}AޢttQGvb&^lm/0Qw=5%v6 * Cɻ6&F{ʭ#}Ұ U9F\`=7. QzPrtAޤb G`WC?2~]H}H{ushEfmNb'l']՟IŦwv[΢٦.t+mJ b~m5T}aHk!U[1GW*saZtu64=IRȏUEPD cNY(QXTyL<]CEAmPP Wxp$KxܞlrƂ_ヰU*+~[) @aVbCGUAVAX-4#4oű Qޓ9HueզlIr=**H}OCO3`{PP HSl>%DKH|h[VL!)pI̳MǏif|,>D'P\~5|(Han^roq)&׼!җHEE bNnEh%$9`"qg$5ΝnZEA6ð\s2 <k Z'q_[_ mEb+HxÇTCR]ť=_7f` n9DL՜pLHF#>Jo]``\2V"}rp\C4+ z׈ Ƹ"#]wk#Zb:icaSV[S'IU:BGgBK+K5H0S ^2a_Ä6H j #I=kmj*.Ha눍P8=MBX:sYC]#N7L`dwii8æL yJ,@WC'aM2\hK3]N\~"W 8~6gxc$8};=-]{јyH_ pgnؤxRNYh HtW>Zf%ݭQl,.mrDw rm3U<*Fy1/NIce ِ%s93tыAKNJiw9n٨$f1՚Sfպ9ًp"PhN,yΏH 'x vQ9lkn"2hkXhEǞ^塙(v!%؜3F>]cDFh;@l *_Ͻ|-ep*޵ >!`aVBLz? wp {Zp}R$!Vf@:'j4o}d wX}ThQ@փs(7+YоBgB31Lj;S7űk$ϵlx]X1PV#ۅs`!c-斂{B1 uZu |"BtwC L#B-Ѐ5rlkYY\azəQ'YSGSC|Lȋ-kaBKEWO #,Zw!<T8T<ڕKΏD:zz+._oKk|>yUK @"Ln>^h^@n$MOf6{<;]A5]vRP% ԞƎW.ڍ&jNOW겕e|G2@DWޠhAJ)/ek Т|"2i̘>pɍMޘ仸}X?'ʳOX*dffZH+PvY`K}fS\hE<r[FB,BׇމKJa.Gԁs$֟KAHuGVgjlivO | ,]Vl;q9v~R[U)!? i$Y˛IW`.H8B[5H~ ܦBڣp5 ܋O7ˑ:PgзNZLAcP%9Q'܄rHӜ lM0+.-AC\[9%$|kDE\Kr;Ys6S=c)>S3TCNLvq `BA2M"XHw ~EbiqDa?cI;R-?ѥogu2!vhhtj8ɒDqlj=6y \QmK83Z)c41ң4V:wںVgZ]18s> 3<8jsj)Bw^d֧ӊs^LyWPs% e84OˌrF>i;ZuZ@M?Շr:o(%X U\$='7wz "ʓ>FD隥53I=|`i,^c pT$Q fA'^Y|(j"MTa3 ah5ġƑ'v ǍÙ<[d^5 UQWt;xiڍE\G͊ZUh6iUAj\m@S[|U-qMXKsAM+3ZRWEH-lAVޕi/(owWHMQJ4җ[lXK"GA]@$Y}Jf˙p$c;Wm#b"b֕Kg }hta  &4H;k3Q;S^nTRLjU rבn%}tE NZDrju^CeB -:c؍Pp#cԿMi  m*GP92Gma1xÊe<o#f/a,4UA RyqGWxeC%0aExI%FJړ+~ɛڱimi{vJq[7763MhYȋh1p_Pt VyN#"FJzHF4&TXp-OjIhɽf֏^r8^v{:mkbHd:e:_n)hHQ&N 4Purǣ K-T8jwnL z)CD  _ hrx O\`O`s21ͦՌ4 X(w5O/2R~<ӥ== a H3*t'D=y׵Y.n Sm(vBxe}0b;!ռFV 7qpxJwE`,X%侶Ћ=wRjlIVm(`r{7GN 5z'ڠ0!'A0wv%%q˓s(Rm/Qʘ!pQXUm\15C/ ~dqn(`1?ڝo! NpCr 4Kj02ԣB_>J<8.6GkE=><%X`*3$iI]2I5gz0X0m;8Kߦgy^f٘ 4,yW{OZ9C$4; 7 !%ZW{Ԟ - 01YJиEJZ/ȶU迻$|+s|J^_{!"'ޥV >+ldWzn>"u33Gk3*Y9:;{JcD|46"v2qzPr-S0噲1Jl,LP{yyp3`WV2<, QΨ2D+Q=jW)ސQp`^`ƺiQ-[& EbotX,;-}h[fǺ[lY[ُyO(o@~B"X |IE2I% n:>i^gm,0_ Yȶ0a#OVC6ωt[zcLb !sD# U Mfi bTOO*)ɪj^_y2¼/(0FEO̜ TNH~}X2vjgo+tC/SFh_Ѻ9!<57Wn w̽(AA}rm9?L|VgSyQiR7ЮpAyxt! [SDS I~dm|+"E i8(6} "sSL@^,ibx gK-jDoh>B1՚hFq8?6'1 댐{=~!.LS0&HA=O:ol &Ӡ\R^pZk"x""3V$ n/)&,t6r8֥;Tp;v Ts#NZiG7(d0Gkharnr04b⌺\6l|٧\HA\r sAs#}@ P7- Wr,V{x), ywiirQ+ʳe_@ttpGu7@,ԱHt O Τw+ˢsB4f :h$.gK Ŧ IxcfUlqۅ/=cܸЗףRGTT2S8(cَ<}4`he2.t!,w.١X:1ezf)%-3}s𽹅YWGE7T㑋gEB9l&`>LtcAfg̋:ŴiuMGE~#-w QǶ:ԒGǢcf74L *?8nל'E& ?140*I_>nC`J#/J-Sk|ǨqaCIS_F{f 4۽9?IJ^UՆqBÖpL&;>߲l߂-3=`ͪJcp1b)t{ֲH^5?~޹: ,'49P`Y<-S:'t]jǶO`~cds4Qfˤm=`/2†+`EocY $?D D%Zvk3sCNl Ved˙,9`^H|𛥂܈HuXtp[UW_8eFq9RgԲeD!j[4fEk' :&_2M2ɀuAo"G]LCX_7_kN—|noS<=&Zlfd^!,,"goAЉe6!g$\薧d,<߶Q~/R)Te\UsS{?jCUpC6JK:AO/`H0"k6I#B'/Q@0ۜI?%yZ\uEz;_-U QhR%QV t9Y>{6$`.uњ=|BV\J[%qa.P`rnW9\wP<'w+W}kKz`!\RP@ &dzm)"Mշ1E"ӈM;gٔc5\]~.Nc,Yǜ,iʖl@[En ̄43'?_ Y0| *!~AeB֝OւF@w6 ,, 7Q;IWZ(}z9~ +# 96f{ѣ<sfQ3yzQe~qD[m&gMۂ($DiBb6[yQL@E瓎Lc91^ ~cWH Wk?q;Q4Crv.yFC~FX}/ \yڼѮdˎ+Cai4D<"'JuU%V3șT:F͝ !C@CO*8{B tT,OEMGB"<.4Ŀ$k zj'%̯=@?>8l2q ʈ <{q-7 )~f7 BzKwJꤞ2gu!$Ojq-Ty/dFQ$N8V|+OאyAס,f\PUJl 1zdAKnhS޽ALg`T^{GZ[w᭚YA<'f)!74m8^p'eu_(p9NB3$j RXFg*?<|7@`n/P/Ho}FR#ic#=Z@ j6HNX󊨒ӏ `򑒕3gH* O0j5 g2k=^ƍ\6^YcC.xc7\Ti<\*N{lRPj}[x@qZy_Hz3B/|m<jF;tq8 q !)TOiE[AߧI.?43"hAbjm@?YI\:/DL_ &y=G{)qa@'sl&͍pnLXww'_ ]Eu41\1>WqܨyvʔeRF>eFbϞ\ q++a=%)%t\oɞ O?ZF0Gމ11/ׄ'qDIGדc|4ïC^tm!\.nD t(v0ŀF[u'UZazXѨJC_Pw/Ui`__QMR !<3J]/LPlFJ}&0y_:{{> s%)wqkoa茩y2ΠhvusƥToCu8f(=Fu TE=LMP8DT~SrD4'ƀF/V$#KH6lϞ]:RZUPd8y`º;y<ŷ&el{xׁҫbĩ[Z%zi}Yrw{FnHO?.h)j$ӓ3ϻA3@EgцFmϢtlYWv <$'vNZ΋o""g%{O]y=0x)4쪦9RyП+Ү) ENnIX|kbi7MPrޔ, sv'-HTeU@4/yJn$4"829<臄FPR^D`͂YMA #$AXg۹m?8SW:7NƢp<0:KfrR)갔aa2gDЎ"ž,]F0$u],9`O̧Fh$ %'8cP,o_( {_IO8RqR!r [9{34'-s ?7򳜝PO`yB,>7"tT)\M6M&`DvayN,1#2H] atj o{%$~^cU?@=]Za'&BУR{lS7ͭk|~bRoP3VpGѴe)1`;al'8$ ϒG,3u{|E,ezĄ5 3Miwyahʦ<$*,%dؖ n'L΂sxIۻOSۮC*(a?dyU[A<жAuDUuXZʈA[^`|P#qu/AUozuݸ;mcH [rCn'e@bmA6DEO!Ԗ EIHANzl˴/M QGg6ZH ڢg8~M8߀s|zesϠuS ,Vz,%(!Jf #,)f9+V}lS*䤱J`j grO &׀{. /:[,pJm#ݷBHuY(ntZ~aUKk@3{ 6ڃ[=ENc,ݜcS2@Bo+a&uSbDrU1 ^e, +ňL6~@DFeZm !`H&HEԮ!:X:ܗίoq`. !ʋL儣UeZ6ln( ^!;)K3 o6H$o/^ű lqR; QB z! }k xZα&6[e%&orCur'[gh&tqɛ%ɀ܋|xV&ڻMonr 5d715aeriRP+vwSw=)c V7c`b/8*@58^[]Km >G.[QtA)x=]{-X44^Jvc"I6qT~iةؗRN6„P@"s^.V8:;)^Q{xdoHS\`@ÃB9 1zȩ޼D߭*K.XϏT kO2>NV2>FQc-_ %"IRK^L_ odzdl-Bv)Aɿ9 XqmדQ ûAξi@v}2Mo>SDO.:t1_AID;wfijnwL, NEsiEEvSU{Ϫr'}#јӛ(Vef}Tx4:sep&RKk"ggKJFyԗ>)%o $OU^Q<"G]o;SЛca.x&S$%RmI 9ӕC"]#Li1rm~DV{f33 #)~G |Jd&P8ZkE@?Ȇ0̷`m{$Eh1bZW=ُD 4nvN6=<"&*bqUd |MO026l4n|9̬bux5Ĥ0U-Sj9@@Vv#HϏhOnse/ڛZm԰EqTyن[1s@/YAlԏ ;cp#M.J7p)NQܑxvYfNR/H,C+(v?O$v9K`CnIm q=ʆp /g v!vLNӖ}! 1wfq8#nE㔋qnpԴt28կyRaZIswznJ ZΗ9%Ğz3 |Oꅷƈ6$[b83;j!/k>sGkԹ\I:K{`)ԑ-K=`0J ׵w\&\@9*q[8m#Af e2ϒ9)СV(9JYK'G 3SV*!%kc@P*XSGo VӅƫI}sڒۊc|aZ/~Wf%?M꓂EdXv&DZ Op(7\*iź1/ 0{PuJb0^2ib 1ޓ`L!tY=33̫Vz#[c!.gLRW`C ϗiN4X&7Ka {&[4GnZ=' [!Tސ .O `I0VdΨmM[QB_嫦U@WpE? x51&Pwd^ @U;4T4_V;9:}qpz!38yM߁&{-XTna8#P69ћEĹ)&~O|l fLHƾcn١V($޽;\5k7A1y# pD,3h<7Ĺ x?lNLNu y4z5sP!fR|hou>?K\[R "b7ɪksvr_Bs:#Q 2qEZ0A[|CbŃQ}J'%#F;㧎I\Ra5goy/j%4g:?qM$'$?mT 9}G{@` #;uLwTϝhn3rnOG`Kؠ?~*>0 lDXp;P/y8|;GO Oۢ ~ڈpWouμVpG6yŀ([F.[l$wis0|%EdaR f)M?M|1M~G8G2- )?Tټ%=hT| \:`n3Za>i,x,`L%z-j>Ef,8>p#^o\ 37^PVǥL˝JFq} K sVf?8Q8+-3K>@\%Y)Ϟdj#u9?qW(QV2q$V%ӋCevo3~vXzvq>u )I=.H;͆'7IcJcIL-,oZ4yJd7v;{^hŹ.f5Zo⃡)␶nBd BBqD/ýqu֦nX522ɏ}0tf]깞ێûz?t?IT%p:MG<3Q2מi_d_ ZBHbߪt iu_p@֌C`_2㞘pw]/?] vi`ʭ?G,HOQi\!8or»ڶh)üFqQa&]AWcѹ7/bf3c|Ň?6.ߌHMD\Ài aO9>lcr~[\Xoe&`OIȑM-kHI2p,u.ri vƿM_CT'$:TKv(J|V1ivB >ƫ$)d\BZ;%+×-8Y2K~~[:]ЭCB |<]pLu#)!\ |_# yd%u n6 ݉4*MCA4v(peV[^^l4cR.!Wz6bcٱw .Y'hQcbyز=XXVҖq?l2ZaI+eSbN&)!9U - "S ƠpIs@?YV8T5,Q $*eExyv\R Jd$T!qVFDSRPeٛd "\JB\;C`棝z31ц#,$UQGm$ޑ7x[+M|F؋J/.'o^ErU3ڟ-,912Y:/XFA"5rzx!F7 y=7U.8(A#wjgחBМє7Mݵ dELhmpB!d]G9%h~#30\с\A\kܿA", _Z1y&c4>[ji6h&*9IV;JxE92W[s/3IQ`l3o1)ŀCe5l:Ɂ9,\LÅ j)(ɦv5U@hXPy}-חv+\> &>hW4pg ZǴ䦥ySר6g)%-d'GAnqs-G>n.>!FrE¹qF!;*94&%πм lSN%DgȑG'OU6!j fJޕ>Cpwx ^w  [sOSWS&SC5"KXqkVj}L, mݡ0x؏2H.p=rϝ3bg|0n79Uэ.#*'5A«12`b%|TR:% =%y#`wټtC n2-/M>v$V[`fR͌d~S/u@!Æt_Õ"r_lasYO\PͰYc,F3~XU/fjag(u?Js+_E@2}ciqлRlAQ猱i&]_zı鹰"E*ж⌎6C9FS@J8$\Gj*UsfV wzc+H/{Jv;3spA.ݒ# !Nh籽7졧Ŧi!HzwLՊG*0e=2v^(_:Y?{w5\P).Vst *#_6. }3p8sBL% c3rxjrR 4%%׵5ߢl0ن:>擄%\-f[ȷO3Rq_(u&VߔY@wߧA͟h+b!+VA yt?-oD4UAIfsPm߹$ݝ.(kMfO{QM,xUd.#?,{k`/!wGν%٨>ָm ^ϑ<PÖIWIUc?35|@ۋ7I3$I%[v8F oF\k4IC!mKQp͈|btǙ["NcT`/Ҝ.wY:|{"Ie+LiNzMbB8"z%56 ݊,J ,rOڶx+|.Be82Xޏ=xP]lWEC.{E.9?SfX 8ƭ8-">Ͱ+^E>HwJֲU}O574J}|,mlgRZOr}yxw|d~5+lԁ:Q䊪S Y`hD` Dщ*~R+/V&GHP$z1$tm`.@52~!W,t: 1;PtS@ӾφBQG؟'. 49i`& PplWEj*JB 0-iY"YcvZ~`ota=R-"E I^y糨YofUYR1}Ly3%@M6L䜽6:GA~!sG2Yb, u8 խrr*pO%PyѾ#6d/܋g­pz 'qвpR2k$cDzLOVnFmG.?:Xݞ } YJSq*aHZDbQ]|ElTZF[]8O.!d.ag0T-zǂp-޿RFlARɧp>>Q~w,e Jd_30X*=LOp;YkrRqB4-@:x.ͅ]bϝ?6Vͭ (f))ZQӻ4*d7H XPiߙDdmF\ė?V! ӕ$,A҄OAA(FY-l},SdM}m|&ڇjz_ pWteqD f'6\-FV{FLlw>&(+ AlQW5}Px.P"@T*ݡm{S ڃWvD=&%tż|QOu!2nT )5i0Ƃх9(?,wu:UUAcS.0C:űu7g*\Y"ؑ[PP6Ij%Y̾>Ci88oST7j1 O)R7UѬ&(&}S ;0d+S2A{W~Q]Q_<80{ +pT.t%S%C2GxTH0g^"we C*.CzD"vC$NV9&'ls`KCY]9RiݨJh{5fɼb+(c GG/k= 9!CW{#ґ~A \\y 0RNҎu^Fpg*y-M2V6ECR$-, *{а82d(V^1)4Txoѓ`R/8a]sVu˼qUI"*2ɨBz<äRܭZ g:fGXUk">>^VJ~'-{?mgVsl 0 /_4׉0&JZ *8)ь~}}ܜ崂!MP G sl][nE>`#*$\V?<%FnC`SeU~ /]h73ǤuGܩAݨʏS`%, ֦ ̙$5`7+QC[8 R{S^:`B/}mK lSU6z|QM8+n9i(o<ٍS+b[Ի Fa<2?c 4rm˒d/ĐOSO yCIƳp~ZpZ+GU`(Ir^f4'kQL+txj\"cˢWъ[Hd2Dy#u`5o5+tp5?Zm dV$DU,&d^y)! 1,{XB}@}zF\le\{*^z,o=Xp{zܩN q|4[q%S_J4z~$ʙTc/=x\5'?RCu3ӽ5֎-\ZF/w#EU(`~MQ=;|cS"I{ܗ9PVM:5]\`=ٯwo;$DJ˂bC )Cӽ]mŃ~$3Q*\^V H:#:wqS0-P1oE gbCM'ͬc(JV);IƯ4d(fH KQߋh'jf92 9`ty]ߙ3`a#G2!|FdКVU8Ďj*&Yb**Vw?6>Gkkp~<@+f"G&{-)ởɱ3sFPڬhf 0Gݦ#QdpIh ZhbZ+:0?WJ(Vvě7\=m* F"`cAo j\mivƭ <m烂 Sݮ FkOk=td;71 0Kj lB9nbUL &X#lP`Qօޮhq$HND7d#6Ku,!%ockBUgh1 DtLz4hˇ9h98pTڐD/s*ZI#*C+0-Xc0kT3쬇 kȬ(2%0)Ѓo@aG_P vjBK[ 8n(S;;'a'촊K~^YȔLj߆G*}{ F=uNٚ`r?{4 E>{oYGl׌Fm&lSzߡz@/}b<^rG?%O~ᚬr#l:uYax[*^Irrs( ] 8HNje+`n :&&itg*kȡF7+qM0:>:\y=:JA4, g'L@ƯVy.r/-5 2TRU w#n2 ՠNN1GMch]"2Yfz|Ao_vkV0>B5e¿a!zS*Z:[8˼fym&}8euٙ@Ph> `h0X:P葺gpt Mpf\9HL򡜗e rDV|xm=^JCz9 >^e"Cvb gR}5!-!3l|9TP42#h/l$`j0/!j \8 &91*d:DI)|!)8 |OMSk~F<ƿ"&7q0L-"$UL!ƿ \, .H}8 O⟓׬XD''0gSs_s3r] M,BBa 빳e+jD>`hZEqé#xƉD_W :VR5t5M衕aф(=ɤZ%i^z1jS{9+QoK'|6I"%uq}ʃ(V&|/Xu3X/u ,Mc-heKװ3zt~޵4[ͪ{Tz^.UW8_zĐ8N;Ο?cy]z`1 9@cZO S 6{T>_9X%[B4$(xvq]yJl4[P1o@C ~+O֧'W C ȦD=NvKsgD،qəí۪k{="l?i)6:i,9/Цbo$?dg;~D+٭,6&sskPx槴N#H 9%ދsj$%II_M~U~a]WV]Z6lJ*ȲiC`Boi fm-(O5 3mݷ~|KXAIdhTSvc{: ²V+Ȯ:#,LٟhnnAJvTi"} d9:R?ʢCv|0ҲsZգE[N, 5Qkj 0TU+[l%ќIBMh#}>L-ŮRwZB2`D5T?7c sИFi"7Xݪ(=!wjPCQ}?ʉ=0!>[3;ߙ ;>Ƙ$RxT蹮"hS},S1KOb4gL!;=cj#gk[ťF.auR~ Bmg̕+WAp } Oc~( mZ܃xySQ~y6t}]wTxPKE|ncNNà#_sLE_{6Tީ=YQs/RyzhHa(K#\1𓐤g=|x.E<8O${7.7.L@vAV V[ rl+TzuME TIWuD 1WC_5AD9Nr|3- .1A* $ B^N6ٱȱJ0_ԎK;&Vg]Xv7 piP؎tPTVK .O=p(Bim, 7U/D$[`q~h:^0co <lzT{~A!I쵭 >s+ LdEU^:y8XVj@ܣgdmr:DK@PBd@gL2gv[hٮxԭ#,ig}9t.O>if>EûGʶ 4CaҠвo-8d\ Y~>wqkM\WEeV *z:$3?;/kiߊ|}}'Y`a4屚 dN1Dq Sl~;Eo,A_LQ'l=$Jx8;zȕ"q":D޸?ݑI@",]O42k~/yE%-9$`/o@[fq$ݚ/~E>EPJ=HZ#՟zўҲ؁oTnY+y"<?;Hxydxsc?xuh)M/(̠'[Y P]J ÄM9߳ M{ ,&k dP%W"آ]avώ݋+o06 \EsxmczK6I'HиM:t8h2%.r{h*ck?Ӧ:NwjrC~^rATFT舺*آgE; I[c1$Gi"˃%&HܪLa-[%uwIxuXҷ݊6];%+z+gEOeVP/c>9} iɒ`tf;e)ʺgPiM;4S=]ǯ<(źߔ={dyn]LL0쇢Hy?jIg՜+/GF~> xt]c!9`hRDP!?em\[BGqK5]a/e'u9[[cs|'Qm' .וnt5@1G >yM`QL{ئC75& qPNgk.#o+` ,6꾂f5LJ事E0r$,aG?HAW`TjOS+31'kj %fQFv`{78[6ӥmjd~N7͇r4b;,b?kG=Ъsn8!\\mwxJ}!1 _X 3R)L `p>RN EDo[dYD_ןll!76fT>Dl8XO=+~X`Ǩb61@vڨ wΑ_TDTdO~}ǯ`sp—]૘/zgF{mG0'cD57⣌L@ m4ym]XZNow͔Tѩ&xǢJbGfY&]Q,>&w3l•~L⿯0h5XNaQa![+}[3$rX>J)akO;}~ol-AO~Ei,7ԑ`]i5XwfsG/bыϞTq^&'@"R2jWYHT߄C+[j֌Im #\E"1 gdwHyU+}*u%ͧ+1D1 ƲRO]ŗ }+rt&ass/m d([W~a0YXހԧ y<MtL|p/Uř ?4r[4g~>Y:Ukz )Ϋ[6o5}e+o'xhLO˓s%KE"sJ]Ўzgˊ#iAJia"zwcF(~=v$qrqvg.D[l}(۬γ'0GLg1duQP3p@%ll`d7KElYpl[6HBVI: .Cm <) l5|\3B6ѻSqwbfh̚c04 Maq.MuW%a@^2+FpqhwTVh 6F>gZ&"\1{-4&A<*(d@ykXT.l&ߧXi2 i ݛ7>Nl&tzH"Θ,dډ\&%Z&n)~%0tdF..# pxpC.1 ݥ qtWu݋'%OhɀyEmZ+Aelztۛ"Qb- lS;3#M-}/6/0y fȐv5f 35j'tb2[93V>Vn|jnRV\f:|н\#NԫyAT-=:OeL Z ЩJL̚r߉W%^xѭD2JM__g|w'[I P&κ#h^Js?0Gꤑ0i=@6kJ=LwXǯkunX#~ڨHy|uB3e滌O!GҜv5x`ax`S4ؕf7T$17{f%,>- ?2#Ͽz'ܪN?BUX)BP<W98EGKiJm"ێ$zh="s@Q?ouCIml;(҉ͮ$KKlMwt,t= 8zSg'3`JWpr(ZڱصP'7>nh 6N6Y0>w:F4Nd[/,myvDe8R m]OA/]ԥT5Wa OnJx 6;|1zQ̶i˾w؉x-[ A1=܄&:fS+6n4n]Ah ah,pնHnN'3%(¨X V^tGZ2oHu[yjnO{H4U˓(^ku׌ݫ0,,E`|Z_k#+1I^!c+XHΈc 'xUn5#ܧYCMoNy3pn·KݥedLU$|QitLWH΅滮/e~ZvR:^DM(r;9V{C'` SGDy! U ݫ#0q?Gd]6o .D0 p s~>32Շ6q[6v7zJT.M(7Z82"M۰: D=2),x? ǞWڴ%qmO<9 iR_O':S4(a{ wp θڵ.4$Su ָYw,X ԩe^kңbUٚ'/ض%QB'=zY +=Kv{+]N4`913jFA؅`t|88Y>o쇬>; W9gqp4̽ᒎ}/BrqQ%xnKP'LQR$ЗgO}8#TvxZh*5xg$vaA4l^,Xi,6K6&3_\`gW"G'=e`?7n^r8{.ak8aF:/qM}.hE)z-t@:k{`$<;+"VZ: {7Axdx8_NmO+XCЦ`ɣat-Ԍ.6JP`_6$<}$ĪrpΜoN5khghI[iR3CSLFCGVl8-77C+HϊBVl\ 8MDDҖUrk(=#KzX\BNaQ~oG/44cp!IXBOsIɯd|rQ>CuGXGMf~a υ'/3B(v7 >uՄAm>}6KXn6ؤlt34F% 4 ҇겔=50a`3LpgDy?VS'dȽ]fHb{<;Z{7~rG݄ "㯏Z8hn~Y=׹.J8 .Ɉg tǡgGPȋ{0V/ AC %OCa4lI0=\ !HQRn5ǬLw\s{2 p8a\5z-"(s|:n6fcɔ>K4`ml)[I%C5CQ}n v4mPxo^{g*3( 6cJc93%wfꊲr )0 G~iQkFg"֐/q:H=aˊxU7 NV:q)F O՛a˽;HJfh|MwEg hj|F#k :{,g%Y?F"uMyHY(ĚXA=Tۊ',q2tlEUP'IKN[ulLw%M5, KjȺGS#kf`j4v)(EtM!ѩ>=_^J[ VVS1e![+މvo$;ؠé,ig5-WbR WfÝInnސپ I&>:SrnK0pѩXY6:]B!F1QKhׁ+PE7QsrP[Dj҆,ܲU ኀ4 LǵU %xfpeَ @ bDSG+N>@He"=bV%L@$^(Td^:1)(3[TY)^BbѹOnY%8|D д\n&&_/›ODAkX7y@8vSI$R S.L'ywSlW^ t騦llJ(mJwEMshܧS{sU T[{Gúd >hhOɻtYhנd/^JFV^BN. |TjgoR*#To8 DBƒɍCx4{.)Qm k &ՔL!seFh0 [.nE|`7f`~X\zxxa}qj7U\;}ȵKgEXYc"A*;wś&ث UHڨH:'BLg*>l0Rw[it@ZuWQ̀Q%k.0SǍF =-x5OBcvB/˺NS?^j()Oʰ9*H>n3{vs VkT;WFV+Sc6˳<< GC?~UnC/iEF$J׽D =OIac?JدsҡmqְY0Uܧ @"\=DZf%dQft2J犋Zqn(4wi; {+-]}H^1[orMH&}^eS3OTX,c"[! E >[xץDб=B36fh^5:ƅw;CM3#vA[6<x \4/ UF D{ 4?zk\dXf@6[sR-^%:x=`R vƚAh7ȶ}r"'?XEp#^WxBG\vY;@H[ S>{]){TN դ8{FwtE뼳Ql&c,<% -t6)jivTzTYR6Csqg5!yrOzg^흼eо# ܪ e_: x Yٌ?xHԐ\ѷ PQc߄4VX9K5y4I68^ץ[vѤW sg!no<|A@1~ paÏݗ.feHܧSm-"ԧܗ_m8R}]u-T",0T}ϴ5*_y,]5iM"ݤ@k بƌ|n >4ez}BI_v#Bm\¶'| Ctj0om7ZiCqyG&qj6z, j茌vya}i~U/vVa7Ji:luC@> EEyn[2\ԽQ$d,fؔUU2.9tȋԾLX] EF: qPTHo&pq=ܞ& EJX+,NGU{k?'ޜʠvIͬZG RS'OI sD9 zOym2|> ]AIiz6tJyaqFtjT0+΂I!+ &#Эynס#| +t,! )#䯽诚NŀO$Ӹ2mWlRAz| &(9űgbR:ob8{ AץK/ZU_G:eaBW%)nu4d,bEW;ڠ͉ËzD7Ni%@,T鶪>^0Xy46 c"Z1^'="&*j dK} 8"vJB_5CNv9cD9а^cٳApA=P᪝v {]R\[ -cGHJd1F% *q= Z7|KS@q)lOkpr@ۜHH~C%.-q/?_Xh@'YMG$v{ծ%]xv 4G|e, Ė 'sExX ;+#O֮ l Qp25=2 W1<#bk hU?SN%zNDMS$df(*C#)~{J|Zp`H1\3&w F=w&nCDеOVšP?P!/3s(%^oƒ԰:r{)]ЁǗ#J]2M̃ݘT^Jf\ '7oi =zIacYƵA^BĹִ>#yAt74 fpR0HBc2m9 g{S I4 Ե=}XF BY4BPT7v] b?,DX<< Δآ1%l v!bԖAǾt݀Y [r-UPkS6ǠEh>GX|P3Z6]NQ J`^ $.,>),ZJY?6&~3 Xks1|vraѬꓲ6^8OYL}صL2I\G2XYtK瀀Y}n1kL0 C\4"Vajȥ}4w g=3ymIghՕs6:O,q"쾼J}!!½ȭ7 1GFe7L)EY߶ѧگ]C geX}QY JL3IJLl̂qqԱE$ilo0e&;85rOM1R b}SZ$|=w-&\' {4$G^ ,db$GHx0-f52|w}8@${qax8l8"ylJqųƘgjʬzKP225<ގ@-- ZYUS'2t!$^284&<3?H>:7Ţ:OK'MNr>!+,Y?+^Ec#YHQ^iJ@7UVYL6B6f1#Nܪ,KPٖno9U4n[iPHՔ{/iYTA5`9f#X>`QHi]!]HzE_l¬Li e` AO`Oh1V7cx@{KJavT`ر,"+o":[H$G2iE5f YUɴEǃaʽ*6 2W,of4rWG@-ad6:*F /maV'CyfNHb^doS3^.ZMB7ܝ@iH?=~-XmfoSg{~st)VeGMiCPc(BSX ,e ?8d QRۍ%G}*>*> xаZ1>ڬ?o$~ӻEm=IxH4J:UF l ;]O`1giQHQ_ԬκDHbwT ',u/Q?i)DH:[3M5bCNڎ̶Abf*!-cB:6Ŝۦ16g;V,sY}gkQ Ӷ2ر} ,v`K3zBp:"3<Fُr)5hN%kRt R)X%b02 BJ|z/C!ՄImaXߋ,K5醁7+7WH[Pguq0  {ʉ-ء'g9&?x Պqxw׿)" ljAlY}S ?y0 ]+Z5"=eVp{ Ze /X,EӰ6*)hC#U0ekR}20MV>}̿aF 2v[d4Ty%~>(eS$,TF҈ҿN1+e0ap[M4%I)tfd8bsflmr\iӻT~t+5=[rYTTp}2񴥃bMd! M~wJ#j(Z籮զC]&u!Obj k%;M7 yV'}lMqjx6^WD@w $I3l~MtM0,zN@#~K{ȃo||-r33YtZ4a7Zg# iD#mJcz@T##yQOkVcD}gr2OհE)/C[Rv@>.n^ȫ$5 4$/Q:X;,y5ÒMԅ.c Z',d)VwR=hݩw[D;Bd//WƱta/@UYh}%L*#?GrD'3H mjBEgMQ33`'WïQ؟.ȇV Fs Ғr b4 #]YWlRLK;O;~EPBLxhWj:꯼VnbU; T6. 7d@d(tVO6_Vk98Au$+IjOnbۏnT|~P*}gg؟7rk)ݻ,dqjN~DFo P}L֍u#gjsMI7GoCVf=O9FEKJT)N7t#U,6BDKx44Hض}yrEgC!l[X.MKù)9Q[ cMfp/'z`;O[ siD2ִ: ӪWpε[XǔQ8\SAMmsg)tPǏiiaʡv "M}op9UkjtP(:odYI7`n',ʨghBf%4ZVtgU xQE-Fv>%{{mSJ{\Y8֘8 >ۖv[.XӯM%bearhOԖMc6:`0,ͭ|اE6֓wT61 6@!@@fM2S._RhO@4~ -7_`M-t$=48@LSͽyo·sC @@4.+T ꪷ#oQ6eγR/o1-/u "]Tiw?5b>`u <-E\F0>^Wl\vEvx唘 $ dz⡡*誮=>焇sov)3\dC&W~p6f:4jRcBO(x c1Fzs|Պ Ph~ͼ4uW/o/EPnVF#'Zhჸ2??wYX\LJ:;7a%q\#By:pf]L 盅 }R '7F~7j)C$U{Ivv).0 P#UO0 P~.x LźzI,l8CaUÞyTlhŵסvͼ ;ЎGU7uL,y1 Eo.+BY!TD`!Gk N IBu@zMo|8_hεlr=VozcҶW__ђp0H'hc\^Ҡor90ХhLml2L2-h߅6P=~M{M8`Fb%.SpWYJ-d1M_1"QUOm.4(ʕm%umi"!eS zL3O3Z|F>{D?c : Ml)`0XxH;y ̌S:w#{>$:F {mtuqf/ko:QmiBM  VHeҏ(^|/mXR΋U켄J{\-0tbͱO˫D icOX1wB2=hu%8O*PDY'n&zT3_ALx+BQhԬLqoTA C͋_Cڑ~ 92*_lиT{f7qT9AK4$(a{/U|7pm2J/䩋=JN"O!6pb}KvV/38޻`)M>"3Խ('J09>GzO(8dJL OXA<OiH&lWur)Kը3g̭K(G(*GVէEg<":R9hoOyGjgnωx}ϋ]l6D1.o7h1i=mˋ=|&C><,N _x`O4vI /lTLMpZjpϥ939 x:+en(tI?h}]DO;A ZJ{Oɶ37|t;zZ)T(1ױĎɪ;$w@XXd()灑Ju@m}" (p#B]Q7. /j%1۪,75;{(Q7A3Z0JUq &S2Gs=OCASe ayV$+WB"])I53ɥw30ȦI\pA(@z88|] Ց @sT`!8$wi)3KxOtF<+lzV =ךpKm3Yۆ^6-؇/ӡtCpv'. c0L\.]kE7#|[q00g-o!cY|rEǗs׺@'顲X2E𣪈=ŏ"MyO9wKBcma v? dAXFF~P廯ґrW+:Č` |l|nӕk͕w˧vܚC< EfkݯNob'>3bI7|xaD|6c;~qi0r쮭9M.C'Y`>j_.P?=V[A L?bcU|=zߛiUzH sfIk vEn6_ݸ\unyZ*o'o ;?/2drCjj5$Rcit'(-syB)SIDث-q 42< %sY !kIJsۓN豤΃d!&ĞRȀEi+?ZX`o 7 v2q=Z~m}NUM=cs;QJ4=Fc"Z)a,1VY>HO"sD-UGLK T.<[mJ&?}RȞ泍x?oF|UV W]zp"e#R{o8Uokz 趙dl]E;5'%'gXю|ԫ4J-.O{k9u6~h*BPm%X:kZįs&H7ꩇyS46j>p Ll/G$7Qj]kQ=؍]Ǒ?0ڨ݆օP.S)MfM P*K8_% 'Ndqğ r7܎Ú䈚g}S9NHUq:|B_I8 v1X{dcTv_Rd*(#12}b'Tm vOw!EQ{跿aM';-rvRizI?c):H{@I@$ց6ר'P Qy%M{ 3}-Y_ poY*;ٶע">l_#^?z\ %N4elY1 -x鴒XlZ& Ȼ7:X:ILfMZ db û5a@W*{fP><"-5fnUc}&ɒȳ#\(q[Xnd[U#a*䅺8d؂ Fl6N6Q.L޽[fU翣 OEUwDީc(kgs*r>gGMHpŰfg6G 4mK7tT ~ O.&Xݰ9b^o& XT2V es :7Ů<'DհU٤`ڻ__p5u:8@g({2@D+4jHm@lBg- PJͦooPT *ܘQcb/p >D}zinxj:tq~;Lݰ#zOf.3!4hT08nf-<1Ba#HO (T(+9[CH\ g>OezdGQN-6Hfӯ7~t(4gԓ;լݔ|qqkD{i!l8ld wSO;zcϟgɣܔABDƁL e04Tak;濄ARԎL'mœ ]wEa?n*x^u9(vβ>&׸ ȍITgg!%(H9}B,FcubK njղ_1!fyS.Yd^q5YoêaU F؊c԰RJ,QVy*oAY_Yp ^]7^HcE—!X]"imV,oqsX8G ny]'0MJ8{VTʒ*'M*Ò׫OZPnAr^oE\6:,ݟRfZ;ۢ:Qnܸ?%Y+P:|" j5URʕWgjW{įQʀg4A250 }+ND{X t@԰+v[̙>2~qϟRU\<ݽ?Tlo:,sb#U(EP,TA29A `})Muirl( 9zƵf6? ]a5i2ļtX`qIsp+^vin=sd5Ks%4Ac}qdѲ_ J8~O-:.}~Xk(s%nY#tK,6CCSbbcglb>|A {~JbRGg,8v#v6vXph*00W}@L(Rw.^]^C'/gLթx:AZ0׺-~ .Ԧ m"8j >;%DP϶d -4lFr+ AOvFbC6,$2)'$u&~25&Π8$5cDPR~S1.L|J :?>yF[*>Cn:+`XsQ` qs^C-\}f$IZy\$5"xxbD8wVM9/owykL`f2YYbRM. L '3ʆg7Q[ r$N؈ӳPmTcBL3;iOܫbC%M<4oA-&/nQlͼc2sGeEb[xYt&ʲƩ:q)e-I4ƔH"{ݍg0Xu0UrxPU c. -ɥ%(F9; E3MO&"huZJ >kHҌ$t0]A)ytu-2#?|# inte<( \!~O}u{%WoK<~zA[/+߽z~ qi ZOU!\SF Ԉݞ$Ȁ*f*_Tb ;۪`S= w$r _q<]O) ?@93{^KUEL.= GEV{ wla]5"7@ԯ *xu4)La@Clki:cJO}sAkځ͉?~]q@}>h6 5Ū$}}7Ȏ!eP ؛Z?`(U4Ϊؓٔ̃a!,'ISք ?{VFΊr-s_6ìږ`ըUJ3W4>@~U R=4 <#ܓxGJTu#"p$ Nc>H9Ƃ:L-\i,@^7ghSEkGBu|̞$ SGr"%/%-lj%v ȟ spT0P~Ƒ寷Qq=Z+6BaKR! 9y["ii>G$͂bxU`jfqHovi-&ίwp\<| )(!'zg=dE:%edpw5NK`\Lo&8SbEeCTa*˔y#j@C0c/Z6ȭx;{GD}p`-h?<ʌ Hz_´7Oa{酐LM/{юn׺n:7.x`OzJ/IרeSX&ioA5%bK QC_$| gEBC?lR~R%$\OGf]OEZ{#䦐`Yߵ Ӱ>JƦ Mg17Y%v1 k#20pRG V8c.N+X40A*-xuy[gu]բ2J6gQ1Z?9p,ٓ}/0TK8ؿg.Ӻٴc=ACItjϔ19B2͛b'5setYGvj^QOqp1KAml60*i*CYN願& >CHKAAVgU&mUv*`O`(>[ )Zlys5K'C]5%&*e60O(!1xp(]_^D,RGN&؉۲-zNk[4B&9Qe]Y'O,|ַcdNc~@/ysiVL@Z hp=GihC$Op(P5 6/?Ѝ_Yp8 9?$^yNЈ=rqD#D&ʠ":O:rQDSgX :;F )zrutj%Q?%|)ͮQL"Cȸ't `ImݖҚtt;krhUl o|N}̀%w$zs1#i|(ԥh#s5{lo"(5ޡ«놗%!V ^dI'BT,9:HS #19M;#Net9#gVf2MvaK^=f;?zY ٴuS<3<@E<_U¼E[ow~bs6G M:_g[pI2jaQ&WIN6I*cz&L %ꯧ㬿ps`nT_G?-!J7k0CH˒G-YQQPK ʘBeXX) h9{m”գlH~n@ Dk넟uA_9lb(5v{x=5?Pmrt6sS UAKf2\!ak@F ;n^ˣІųSA04,@ΘQBeh&Ƙ68惗UD.PtH|f`"~#"~yfZa}*ᩚc4 {:&eB'ѓ!;qsǗ^> Fu_oza&i#(nNVCeSk?Zc_v(+sCaߣiXSM}[x"۪F>7;{@|9n}pPDZ|@`%`ցKO(koecA)Kߖ Ϋa'ʈ0S-2lX[o0>Zo(%f?~^qT o)* 77?3.f/,:ۺrsǯ#/h3w-!Ml ᷆NØro]׍?JO{Cjgu6|MI,9@m7[VHY8Ȳ.8-: {_ϜtnWFy᱀ ۀFǮ@Tfw}?nDP6We a|o-3(h_d5\Nw&+00AyQ}W` .0pxBLuqP&6)QĆhpγyrk^Oa_dO81#3%qs$W#jV Sud,=~2Fh'Ws>cTPȸY=4ҹbR7G dq!ЛMPPLeEC2y[M@(_' i%ցGP=.z0MHdgIݐ2h`Ck c.ZvBS$ ^Bd9nZ:P㶊: C}|$@7đrd?N3z3ЉIcYK}y\ 5(Q*-iu@{R+7dwlƲ'Bۄ$1GKz$0QETc d-]}B~p$\6^u )L`*W$$=8YQR-җ0(j3 PNr(U&惯? *8?S0/)U)ym6-uױE#2;2>[ʞ@.t{u,ɤLrۑ;+L)ΞivІ<ǁ+tNP, ٫ޣn#ľ<%'瘬I8bI3{q-sO&H#4o gǀjp 7糁6-Z;dA% e{])ñ#؁a%~ rݶ`Ųc-%rPf ,ZU/O Gjs:$dD: /Aॵh 3G$5 7z[Med5#>Z~smgbqJ)o2yƣgRL V)JWË|Qdݖ!26J9YzNR?…ԶV)`hWEsq!g)$A7SFup'i2ڍ*&fcXΤqzߗq nrXM}9:c֢'tmrBܝ;dz^<Xwæ#p{?o˜E?(0vg`U+P쀧zi&rG]\幑?<=|_1܈p"oVʳ2.G<~9i$ 2fJ4c0oZWv=R,ӗG}󙡀ėˀDt_>(}?E.z˿wiQٻ 1>0؉v~܁!t+A=Rޗ5cAR)ޅ#p[InM5a")HDKyN~+ blTzEƶk|$d7qXZ5Ja>nTDB$,uMG y 6@2)+?rE\pRĄ)6 !ю'_Jޔ/Ra'}zoJUcVXL|o(>G_;\ƵOLxs HfK.lu)%Fm;v']ܛ5F[t sMEeF񇍋/wO3$[0C=M#;ZQf3(މFWy>*ILr;ԝBۂD#f*o#9I СudDQG3aC7)-4#~0JVk?rj@R4'}ul7 ⴥ՜g!X^@+u*}6`5vQ:\d[#="q];owgHŁqQlۊݢ=nזw(5c|4Ģw'")sV៼19=! ^y# a7nu`V_puִZȡ[mr qqџvFxl ֮^`X^R"f~lY1v.fMz$GYoW2guJWHJl폽N]DcecǢ%3uy9Ы'g!6XE=NdD./,IQ:@t"#0KOZTUU uZ PJLmm "E#=; )%5jJMP<Iz1f^\ sBW D0wyu ʙ^N}BٗdhmuQ?j(wZfVC%៘ʃ+ٝgzVu_߰N`5A A (HkhǵrSCkut2x1V+YIno;9i51994%U/1`gBH&Fp8 _= . /(gt\(܁cOtU]&,T)!6m dBp/mhQb!.TG˳Ttm~7qӫIPwv\p'I@che]ki5Y4n2_S.fIUd /Gj wn!N9pv6@[82z W7\"wv0ox^|v`S'~gppm/. 8D E'|)5SCsp W%ĘX jѦ hUǡ'IJV^ItŧRat/WT0qnM7du$s}VyQKOZJ:%RXN>i)v~mk1H2%#R %}΁xV6m.;_D,S\˪ohx=]0!WkEtJϔGjҁ @[f7Jqeݍ/ۥw$="hJ:N?`l&~܁LڜC . hMd,TNӯsy>Y/b +ZiKj%s7T{}o_=LC!{m^-90f]+ ń#49my"p Y >hT]Fz,&q8cnnPi"jIڭ/1QBɁy#,:sH,;`WՒt(Ɩ%x:f`lTYZN 6Ei*haR$ Sg GbX{L^ |j wi~~b/D6 -vz*ćR\K6q-˚ w팶ܪBf+q>r)ҥX̓c3g  {+:Am "L0pn(Cay%.g w2gA o\&ld̟Ү7df$}u%< Vy b=J"v ڥX{v,A9!z|GeyP+ s2{4}N4zI^7<9K$,dUi dgvIέG4XxavR0EDC<0y$k]1 "h1[(ƨ#q4@4}܏%:aJ)ێRX60߳!I߮-yf7Nw",>YOUxTxqm C'G3_V(pM9[顳?rr% iPRSĶiAhVnbkcxr>ҏ Ԋ@-]!)7x s6-PH[d*'%;|gYc|VMYǭޔWI :XX6&آ_ h,I6q ٢@+bȜELbG ȓ?-qC_G&Fw3R#Tg*o$ 1QԈx)dX\D^UGhV_m^l&9G1sT?a!/W˒4$mQKIJ`.Ǔ:4ҤΟ{r*+cvbF$CCG2$65 OVoe̋ W.lFicC#jґع1rjp'r'uw=#D;ܾZb;Ghd: B֢R+i< "h[g+}X'L6a>лl˅|CՏ;Y@.zzv)F> nzuYm8-&\ 32ϻN",S7Q;y8!"i0 [D^aH\!AyfOLbN.֟VE&da*';˕7 NR0/Mǯx*9l8R mӠݣ7a"s߶uBV~Jg)C9jaW*9ǴɊ&.4|xg9NWrmSXQl774Ӱ՞((GrFVu|_?W{ [`\A Ȗ==\FGo6) 3=d*]= 3ryɡd48v. .{3 x(3TKLF<2eZ8\BQ]D}Ѻ1ͨڔPфJlWovswsY*.Ç6cBqDi5ѫ'_4C e8WO`1kI ֆ ,C1~W3UpJ9b6Tg|~i}^ n{66EMᐠ5tP_9$̽e2ҹkZUJ!˙ ky2Dx4/&YWf&4b&MAM%ueok#,Ea3*v#&ގˢET!>88';uv7ёaGZ j\],%SYd5)#Omi4ZCcPZq7s|$FTxN ehRcw8EQ^Gg![mv F T/FiD>G%0?PCu] gb4Mx+,ё/ZY{f0xvJe)]s'yplÀXJO8 NpLx5:7}Fȥ]--yw;XkDZ4?2m{8N}yZ4?/ y}(9zhǘ Lk Rp%ikA>VT-ϼYCQ&&-a`acX4`+hD|kR ɽJ)V+OYϭh;Lu&х6MMܯ.MD'i=c@ -- L}1:ː-}20`7kRVЄzz?Tbs^8M(E(H|Iv TO&)3+u Q&*~| +|t%vs* wR1шn8Wk1OIăb۰:3_Fyw"21DE;zXlQ^@ v(ͿO FtE*'u& pD[ZX'm> :nu(A6Ћe*ā uELR/S\*f3a}o(R c< z)*浿 bɓi)z*]fei*fݕm'$QT[U|V5T`L*_p=a`bmԏӐZ`Dh &[R MѱHg{jw-I).o%:իD$|!bNuy O#Qm@nʝKڻinݟH@ ZB1)aj$Ie@Uzb/sL|M ]6xK 24Zu8!x7#j8B$|(:ʘ-3N0&#[i`&]~T!g'^SEDgz1-GXl39,H DKmJTQ/͎?RՒbG{&H_@UB K$x tr6&rKa0!olY MfrB%mi*T$e He,۱pW'%KZ[C+1ea,tnl % ^Խ2BWA9,^jk9{m9<2Ę}xߤ4XVťf']:xw(/ɇt*D,dw&FwsYr=C5xQ6Q҅D0˝@ޘK(:l;~f0n0 v[yxa>uV ʔh1T^T! ;x;@%4a>}'EU0lzJy3 ϯr4[\Uj.roǓdU m複~j fjpi&wS.EP6%qa|_@boE _,V̧%Hw-+kZS-JFm%!nh9l/ `,:tW_V}g2 U?.#OK@eT.Vt28Y`y`g ׎ť9zS7i~>r˗K4lyҵI7w̉ы" E3\!7ae6|8C^75Y܉ͱ|k5tƝv9# ۀ)s}*WJ_^_ȇhI,@Wi<_WHY_P$볔`XwLa)gvWB*C[| ,T{KUZ+`6&M T74$~Yf^*[+H&k D<]͋:>wQXPsGO\,ӲXq;Jr9%T"LvbusB=H_7wV{տ!Iq"B`}h2[:NBp0҂ަ.Rjh{a>5*#%TTȦtMn"FRw MSo5{L ҕ6%f\/q͊ёi$a1A5#pc|維QK-`.({x%,P#Y\(lz%EF5HɖC6uIa$N X³8+@dP,ڱUy"GAdrܳ*tk(\{UW_2ͤZ`5x8f涓$u][~ݵ<%ϝ}տ5*9Mn۱}PV3FNijG CfkbEo0xة3?*0g\ֱِ!Eb$||g偸)4Q]-@K2] ! 93KT^Q>#sO^M 9"KH}5F% %+[*gK0܄vA\b $NSK$WpY 2u|Ӳ" ]MD?c'VRf,A0[=XeI`kx6e"|tbSwM[eΎVe!"vUܟJwmgy21@J`}og]sBIztDd; ?sQ,43"oj_zgHqz\U5Y!L@ZDq\&R O9y^V`Ιl?ShtH_enPGZG^w}+Œ@/tU:7*ɮtiA2`l4,vk5DWMB@N#3ζm-tɕ- F hXܳ;˨9ko< 5{\^JVLS=&_1c`&D,r&;_Cfx15]CC(&Z$z=L$R6|(Gϑ*yPK%"V^8@[Em/Ԝᆡu1¿e?7 N3l.mUVQU[xнC+07.F"Ѱ<M8Бp}W¸tvbN@!Mx C橧cC*h:F ,Hİ}%6'+M9iNdIJKá< |[gA Ms"AuҞIR EQט-yHi=)^JG듟哦ePx"GՋ`3F|[bu $'$(Ch΄T5G_˳UP:UMC:J5+& BaĠI/hzV5I rr9g~KIa"?P[&TYJ3 AβQ03"a`K4vP-='L]䜈bL粛g2j<-Ñ~N J__,* D G݄M;7^ }Wp=ecFچG:UPY{)XUׄY_Pq_H8̙xLg85ຨ&Yn-;R#©}U7 y Ec5vY die.5H7dmɐ|(vle2nsfg!Ɔ t-2*j=\ J:i牀xpQ_$Mbײ٭Ai Vdڤɓ躗ETB',5k&;L_#౑0_'=ij-]~rdԁQs96Sc\jh+O:/j.k3u<Hz{D]u  b(2uCR!1ߛDbT7n-0R¦JS`Ӭ8O3wƧ (75&LEw?'KYơoc܇< xh呠;Ņwn$GŋPz_P(ٛ+T#kz'i m K|i)cXl^jYo=Bm`,*kA|C{Pj'5_֢_u]Wt4gk ح LH ƣm!JMĂW UMI n?B8h`HWSR}q~ %j!Nj&Il7IIV ͦi))ุrkr/pc,G{Ijmp,ȼmuuEaע$&wc3F5Րv&ZLJװe9aBU0+zMJ2.oe0ޕ]U<+jr۰%wE&ÄȞ4B ,.& L'GcFJEu q'j AG=G_Gc'd}2U"owa/ WvDQ| -{]{Taw֋GD1AڟWht^w_XJ:.l+ 濰KKp9&el>c|7XD&XJ 2ϫOlg֦RkO΀&q(%ǫ1gLIqhZ|֋vOk;ItuLw 4ۧ>Vۮ>?kg_ txA>XI"w<&V9v,m{!4^ vOuD6ֻ`V_N3HJ.j7Wp™9 DCЎc4\5Gm0@ZV٘ձԁJv3c,ꡄ:70;Ecl20nFXV e`Estئ4ݼO) qrHvJHvK'Hɚ'V-"wfRĈ7,.n#"S1R) bԏ)Bl"eMWVFA(ӏL~rCgZkBM&BݽV/=OAܨZqrUa%S(5yvkvQQQJXHU:`]Zwυқ6ZdTaMmz lyH.0y[l` )< E; &wm&r 9ȿqǐiǡ{8C(X?hyAddgu}(b؈>KnJ$b5v|zIe1PXmLװֿ]2&a&G$2s'*NUf!ɀ?8600oG||/aE*IB%K0ɿn$?(OsOл̄+SUV-)J([[0I2Y}T0("TNOlJ]4sի4RrtG(Dos uXGd_Y!΋Opz/ZlCjNutЄ}b(ǕnFO99@qQc;IޓҴfck2zAˀ|kQ-X^ 5pOE\GݼTbQԭUW$!n)-Ǻ(5J$:2jĹ_`isKǦO3jRe4@8歆+$~Ly>GםtxV5Rz3P0s'[xB=Oy2WZnBke}1xW)GZ!|]>pjk!f܎*=Vô-}y(> J+SCuV&!,D x jTW.cuY $""0>M·8OIQwؖ&aP"ĔYBj|V\ XmpWQ;}' S`*UgPez_rrJuHxC/#LN`Z0kF"pے Ė+W3O9r0=fyǩ} yfF'|Gnݍ!_P30e(Hӛh!A} I]eWxmp/{Z2S5))ΓK{<7bتziN~Jg;u*__)/Й2 yh]`3QE}x!ٸ,3]Xadp;IsgmA"'a2+e&3# UKu4͈t|U"L [ # MJ[zz2L_. |8VSEN?UQ<厇v$kgRV#`9`aˎysɉÍjJGs:S;rExՠircd׀Db&qa+i}c\+xjX12:U1eASZ,S9Fjc7cA±EgzEu ѿX~7$JU90ʁ)o+LB3,`utF=-oSOTsZУ2HuT+BlR9'ou$^˞BL䙠\# +&J¿R!$R:}"& 3ԅH89i?{Χi;pGjn IaB\C!}\Lz~Jm8kfT ąΔȀŏȻxQʸ"RpAfk̗+.2*3h-8}ZJSt¾&`n&iŖ 3ۥ ȁؤb #:K@s3A)/.g)\_'XH0a,b3SS<:L POFQ*MXA `vmA #ߖP :w2ն9qu2nŨo3#@-Gn7޼+` -2{q q!?!ai.۽i+oykoywlvp6x2~~LEUF&R4ìUȞk2 .oPEugfJ63\$]c?|r`lK Ja4+" I0ս/9 8PvDtyǨ}P4_n`eNĀ^,sg5iC.!iZ ҩZ]u iw^ VcʮvccqEsCK.剽6.g0,3ڝK(e .ʟïo( vP 8\kBޖ]CcV[)tE;&{yrc6֠8D.}Pr!BWSʅ\!;.B3St"0dEzjB'AG%܏ѱƇ}uw(lXcFZUvٻYH^n)fd*<){3dEA0TLdGCR(o {EzVXu09ZWzػ2+~$ EeC_a1g@sd9`8 ٲoMpBG魝>35p~qkP¦_;Nê~?+apg#r ٨&fK#'w_{|7}fO$f֠֋)W'& lm@`ӆr:d̯}p^ʺl|gmk)j.)|c/f5vH:l~ A cQaR@`#A>f}fK:l˫ӑ 1 I2q'ŭ$YYi5J YIW)Q8qzQh| z\clu IE:NƳm܀Q xI+S\GzkS= Osip&SF| <gӲ1jE{6G#krXa53H6H~}^lI?(0 )\\j,:Yr}.T *qιm&{dC8LJͦ^iu{63Ί5C1O]B Orm=dBR_G+A۬4!Vkjh R ϱX{dhON bgNYn$VݧiD׃wL=+c6U-0beY}]!ӗG?sѱvLg%O ׮ 8$9NhjЖS-m<8i"{y%%RKɚ*5_Y?Q.^ Z-zgQfz[->1(Ш֝ܘO +=@Lo 3@:J+ i"b[{Ok؎X69t\ѥ2njJOtJ ;~P`o="oWKLh=Z̳*NV\ȷ R:!ٻH0}L5pRC! ª@])ܝfیIMV.1ɈC/sL Fڍ$`z?? a_C. .mYW2ϗcc18bNZSM&9oOЈӾ+\a`su.h  ݛrӴ` (]d醵>iM0ւJBOxGm'g/yK!#k;()Sy߬nPu⥇1qBn!d筥tJH: R/s9Qټs@' c]T t9Pv5@ZZE]DV꾉'9!%q$v%?;7=FmsbapsJRJRx;iyom6QB0Y &uBj dݴ<9q2|iJq_T2\zv*IAB\ g4 Яub<'W\Ofpw|6n3񐶂>'Sm&Crlfy&m ''U$م{ݶQ> N44D[`f;Jf-1#$>s^\ɍpnÚr]Deo5XGGx<)n1tu&ajor럨ğ8&BըKu[sn]ǂ7f} J0w= òw,&@eC p\Op-ɦui-ʙ f% s*d{'oxV3f\w>ZA ȌPQ^5{,RQ=k(; \s,~U-s *uu۷r*m4RyȨA㪛㲅QQëɮ/v_B!, A O!)+n}ڸS`Ӓ9PH$5g-Hɔ,~|z݀]XU]L 1Z?mCL̬!wtwGJ4S0z) !ngU^.5R "siܖn4a8_S]dZMFvzdH_pK`yPB_4m4`g\9 tĻC՝Hv GЮGy/ qy\?^*{$]?TxA3q;ЁrAB(vBo^!JvͧrmDZh`jЎ=y"AH []»!#K%$#u-_'_J=XkA(vQS*K$7]5+/d?͡qt9 b`LfF#Jf$Vj9/mBr6}7IH#nM"Xx!+>g)Sȏ@J3X Nu@I0a-~W-쟧iy ΀'nND[zP-M9 r75Bi%RcG,KH .B*A_wkYsBߟ*OobKk5|-d%|jYa%2"nrH'Jk,UGRYOxc;õu˺4zYjk>UK$o:-swS5 0/Un5o}<0=¢#P rìЖՕ `@-m(nPʑt+IF%9jHɒ`rS1ZJ_4EϨ]&Z uqW%]YtlRM[)[t|"@„x ntXmOL1b[n(_=U,9ً`;!f7Eޖh~Z56uexܗ;o:Su-wxv ,Z/@K{iKnSnvJ;?Id/$fW UJW|ZMeZAIջ]]"J@7"_2p@ ir/g3j7L&X5xX56ƼYbIZm(h'I_qbgC$fA?z&N,"s8wY Fx5fO-sFӮV!!lSWDs3BMn8ƪֱ4 ,Y`]Vese͑ C49V+'U2"c ah֣[|KE=,ZԻ23[3?+Tp/6V ~zc&-bKJ cN:rR50ea-豮 ]:'(ரcN(EF&X1qy2d$AעP[ՖJoKVl\ %Qlt'`~Euqtפ-G>m|I*(j +Zڐ''غAIHtt!S3V|{{-Z#w.,;#9znzdo@#|ZCFùhUn}QOOgYUJ&Ќu [3t?ti#oUGpUO2iQ¥эPރ.Ć}ci,4(SI̘[^Oψz p12k)HaQ5DhJ=>y,'Vt0ɃOB+y7/KZ=P[P=(,l9I4,]Kj Rtvfk|5hu~\!vzQ%SlX O x-;,M* c|&rX/+9 9/;/m=Er̐R3I:]{q8Q*UxD9r ~6ǿTwa8<:xf~}Ԡyёlr]noK%-[PC ޺!tKe=.rWGo<šܩ(b*ӼKB:xV[ng˩2*nWgsI%\M.Nl㟖;r(x$*l^P/LZX+)Φ" 6=nz_lfq´ůti_5,QxeQQrj* @>d6jқ"5<4 L/1[(,dbPfwmt)'GXOzH0zIR=,DC{GNgKЯ17avDb߹ԭdUs(Eo!.nڦ;Z)T:guޥ8wB7+0`H +|~bkA#Ncq6aɐ0m %ŲqR?ĈIOy\$B^ށ wB.#4%^ޗ '1=Am&p-< I$Ս&nR[ *cƶgk@Ey5Teؙ7nveOH@ʚ{z`X*l'rCzƄ,Y ʟ hkMv׿q@8pENR4!x.oeGV6ۆ+7bG=ڶeMT7Sq!&-j[h%mRwؑ!0.LjT:>8sgibWl{&7\QV!=vMJ:CZAI<#4J4Z`^@de?yD,犴111#LrLn?J2 ܂ԇ(\F2z˘dr#5ͤYHx!1vm?9AZ`)p:0IڷyG܋|s7* gbr2mH>7{TEu+ޔ=2%3;(\槁 XH{j_3F ^%×af¼LՎU#^AHc T^?*S:+eiqٯo ^DKs׵EP{ olH.9}|b#/(P={vW:Rڊ۱ o~ȡ3o0o0k{]:I,^yYgMTY?aelCӼѦ J.uf.9 oBcpѺ|p`WUm+D*`y+@tHX€cN*%hF9qslхLh?Izku(tIh{~ ^1r1~ϩ=˜M6t,N}I\M\6+dϪHd3 \-5V\˖ʼnpd ?%ӑAHz+aץ!K-FIHDŽ*Fݵ|6m q}?Tz)' xDʈ&^47sTTwr9293LK-%Y+f@߮K% Ƭnl\8Bu\5JD>S՟]iH ׅyw,sxc՜a4 o2r Egɉb@wKƿp]p Ep4$ i->=u@ 8Oyx͂|z,HЦ z\R6f؍*.nM3b1,%+]k9U1Tͻo:bqEPcj$PX\19F]W%^K8ClrϽ)S4ccvY:/Wxs5pxaeyY">|Efe~`fb":wgngDA/[_ufhͬ ) `DJ XʴR#usy+wھ:or7^'}H)0JO",DғgH^ȱnC*K"" Ee2Bɡg"t}ʿN8ӐSбQNwZBq?`iřÍօRNaP]c2<4}#%P,z#9nq(*|@k8cTNwZk!u71Wpk%;êN{rW+&Sx('pJZ^m`K r '>^XB -N|1 e<0% Sr;at3􍊱x4JcpỌ|C}r|`mӲg*zT"u6\39/ݚL&?{&%#ÊhLpz0v0 ց U0 [ѫr0, iºA4b[T[JXAb_`6. =,qcH;Sީa+WBߩ(h͇{!8I4E=㲂sJ qQ(XB#XY"ßFA>82ڑ#N^m & *BTXĺ(@Y^$6~sFa]Y]3u28đ¼3G El2Z8'9a{?mX86jL׃$ΤI8*!T9y]N"sJ/j\@;ؔ!')~1񵌥ê?)G]L捣<+|kvtCP՟1jg0+fG慰:2pBfokeJ G6hjX4[T&f(DcwK궞N_]+ 2_AM*ϩpV(a+1HɸK5ؠ#Q9/I].DtXsBt)I(<%hË\@c 01zcq6^VRDN=wht{.,#賱 NeIt{RŔA0ucu1;dQz{+!$A|/_fo[=jeR+Q燪s±C@a/̤*SyCϻ'sr.{^Qzc-R"&2Pyy.M/<ˮ|cw7Q!,mnY~XvNrزdtQ}|elHΪ$$0q8 r|Tw݀kJiVCumZU/nB ꔵnC0f8 C)\`1Ycbv5$3wdu*r_rEx4_=²Ža;Id]DvȩO;*cf( _J`(3|-lQ6[#Q?Z#(NmJy%8c" p%_jyi-4| Z֚ܛ- R m mGϧ g}tlH*>Q!ulΞJ~AhlYdCXEbי*$UT* nGh+̮Slm8 |R )MVq/>O^sŽjU;"Pp\4'a!XS&[#x 3?P0(.nM]%*P!>tnGqjd ug, [i*dz_`̜2X&iyAмعVz/C[g$eT[Ka3_΍5^W>w!Q*2MDH\xFrn(l"'3d,›!tj/9^+Z!Wj"XK{ԭ?ƈee"ܗA (L?S ,'Ԣ/,ٻ9y~+/&x29Zr)mLc9tC~q $iw !EAubq?ڦEa_aJ]u;VR.c>^$"%c~ )2VNW ۟t+?}e}_׊!dt?ũs auRWiOPda*,k<-yS>yU YU ,ollU nN)_W#D&+ߦIϔzs+ۼMvjˬy 6z3[&d n9,nnh9~h#oT·ԇ2܄tb^.(5Mmf0s/&Ǭ =6vU#$})1*nŗ(&np4gqSFN>w];PHeөN&Hv,+,~c_ߵѵFf"P!5dɄ?B#$?7[ 1,#q~;{PmWTl;9%|-4ձgÌуR Y#ط<7iH&"v|0{[|D\N5]6'-@ЋUl4l7XjM 8e@|D,C…*C?g,͡Ь$2x'~بy. UFq@6_8TC'8NjlV (|[|wD ZѢ=\@48!F||>N:&"`,7(&-,[13q}[Op SYkc1!XiRsLxGE zBL<,mj53G!`>w W jw^W_(}_Ű[VVt?+nx^|}F rT* ^;viSLS# 68|0#5Z0sW;2ǿ3- e| |inyO#,߃iIlg wA#KpVa5k933@Gpo'}j ӛ&ZӔi\fQ4'#q.F-KMcRИ}*U$3~[+]G?B#wUז S&%z+ˠw{9H48ۀ޷C:( a"EmY<摖r+HN<cjw2^w7W 3 ĈF<Ɯ{EEG}4DEy> k DL>/TY?6e)ߧ Ao#]73z[ANAODdHǃCn#:+C\byFL[Iaߗo(EBvw-r$T8ʢVEx6{˳m!BQ.)LJ֓ldB]"ߤO80EʓӢFSЀ|)&D!!'bu#o9e0kzw}%3^%-f-jh`<-6q?-щTtPGs)D6* rcmO\1!z߂,;vͬxrfd9xsFL"bEÏ&$$&ez7D|˖QQNBPfQS}n%:f'3tJ/;X5k'.!OA=J Mbua|EKN`ҭr@UV< 5:,UQuQ RS`-[5wKv,QJLInPN<B&[4=ų'/0Wi$ʏH!kqA0?b?_ށ#&wpp 'o,4$7C]S,ȱ:tfv Y4h2iLw@`b˘K% (@鰓g!rXFX :> "@™lņ4?`@XsW}xpWKs;̫rݡlOҼݘ@x"#yv3:"= 7Ð@5!TA@u35SQ3}~yZ`hux/1k=hLv#_ ^$tQ 6zVkC뱦Bc O ӔgKn|P1# 4%)}#5fAjgyQp;B9lk1(dOI2M&@]X5K9hQyXvxDZQoLoGYsR: -nXKQss㱹넰k2#iԘOg~Eaz0-mx{@Ep~౯BKRi'\tݪ: ٬Iw<6yy#98cY}M馩8>VJޯAT.@(̔up{j4=e*(YmC( S8Vzwiaˆ B>2DH>W /ccFڔ/qcoYyF~fsi͹W}br[,t=On1kh:mEQXA}LOg8>IV yooF8@2.ւ޲ oҸ >Qw1DS~bP?o_G3!x3K4A<eP:t4dZ_L,gjV^\=zVӁRZvWPY:8SQof((39qcv3P۵}׌>DyMqU knB,.a , V1N!Z7BDC \w\CK. ckְFZ6ɦhSws\wR5P0 VNp,ȏTPꢩrVGI Ę,zHbVb4-P7S9`~%X>ٓeh!&īvƚ9h:UE\_I L.&sJsWIl +a|n"rƢ/X! 7R%\qomTq aiM9οJ\ [[sVW˞6. ߌNidF-rTh,Pe}ywQܠWcM qg@?_z_*.pRmߥ<;bN*9;ߺO-1TyZ)(mPO/e ejؒ* FvpNR}P0J[C$;˨ D@FO\zmo,|m 1\K3Dz˦%!\.Ŷl/Z[ ͂Bw5EhYJ vi(i=)AwLo22${D=7 W08GqM)X-ҳ: ;LL|'C>of/[+@x4v!"dW>dZ bS o =zhm cuԷɐIEBHgOϐ&#Zg" ٸYDgSw>p5`}踽Պ~~{"\:NQzR:e~q%TD `IrNQD<a:Y6vҜAU| p0o$łSqw HL76lu@ hgky0y/3k7)YBX-V84/C:D:^OkQiە*#3[ۉ4kJ"m4x` ]ͬݺ=.џd" Vr9r4۷sǛR>UoÓ'!n5j^k[koL櫮 i0c;v)Yq)xvVcL{<ל:~l*{kz)nwD NxP RKI|i C9<s'XDD𒫑em2(IN_qFxjXc(!NHVyeb*:J>%Tڼ>j˾؊q92$U)rřCl`oD=ìM5<?YخA8Y`*zf} |Us-5} [:Sw#Bkϱt" Q($L\2~ HWtU0t#"0 bc:a#?j躾K悮]9pzp~+rT?2%U=^j{hQS S3zO lb?G G]h~qSN?6/0Z~`k@KE$N fGZT yexʵ>"`4f~#.>q$S0SOdlvhȼM24 Ě2Cd%X/ۓ_WlT}EēGϣ׸Z`bb(V(o{Kz{SX#fvxK' #Q咥hM24o7 $r6;3?e>+ Zy+0@&y>rP@)"Ul@Z-=Cd3 C AjF#J棱&Q@qtd v53"eH.֏w@kjDJ?կN@G8j0i~N ^J]`R Su=G{d B8 e%k{JØ52uKs5zKsvh}psKjDQVnQ^(;8ʤek+Ϙ)e7rIӞfmal9 xg?T%Q,K 3 u!UV"nL/6+h J-~\y; v`9ؘ=< K| )l=@o wNs|@toJG̓g-*Vi2*Sr'3J;vϺx\k*76&i.r (u򁀏NN0Ct) j ّ&.[wڣ:"&BA`f3U,mU*y(^0Ք2K6p2IGk3ԸȺw|:, eYLwրGKO^^JRy3Q );t._yH C`W\liPXɯ$.}҉ZUCЮKPt" |d50 _f϶??MSn)OQyjGd QP/xpTe^zwΣ%ڴ@i=A}d \yI՟JG4Mz_b9j$b~w߫Ə"kp嗡M:GRuz&[ɼ2r#22Xj?3E :n~a!m 6SyUN\W~s8OtYdBIjφmTB=rq3s8Lb!0jxtNW)2ɛKU-,cdY1 gx ⳤ\xvJFLĭ)y\Mg Ŵ`AC"վW+ݦoKHۑ;ɶW\,80fk BBy >:/|Ҽ(6}O"LK|?pt/uRAzaρ:&ui=aGWNVXG, zz3]}ZP˼!lZ:!}di*A8K$sL-Kfp(Oݿ[u ]!}v8Ol7KT1l'8O&VEUj&|#99oXb?7#=a="9j'cL+ktw*GhFN֮c3-">?VX83z ǐ^eqĜ#;p9LEqaͣb3ϧo$l*GnAe12D>.Xs⵮-SIw*3|ZC rPrǯ_fH F!e?)!![V2:".tMW]rF.Ԗԛ yc\#v틀9#q3:Z0Nț_Bf5V gUFm_[(_ 8:`<ߟG)֜rT;ݙVM9oSjzg%9n/XAG[gpGfgR`-"J4&8R2nF?fιϖSko nhiS$<1x^ykB| =US>0l Iqa4 ag/ϡ]^f˞'NŹS:MI%^-vl]7#9.5Rwj 㤗`W #\.Y3"2Cnh*lH4`qCo>FrZ5OKq~\FdvI[MQ$v@!/7¶Y}n6șQ^_uN1.ybVɺj&z^"yK@:%n*l* (…gS "FWDG#Aú.yѩw6[|߅lVN$!>Gٷc̔%l\jZ^8n=K^L_,3w:gZlX+ȶ!G5(u;b)CO_JMqehIS}gMTi_b7E;< ʠ?9[u9C#eu zC@c6hFOlnxP$s>SĖzd>f@_62k`N98 Aib=k]6>SQUYc^an4Dr4Clݙj fhDk˥as/ PW0VEq4`z`oQm5񆩏|+)D߬ʹ8Lv8tH 3dU!$o~eLx<+̳Ya$BsuUsɾHiQ)I6I:Nbό C=XJZ;o BwH--JacނOg͙| aF:hw`LOS@[BbR3bh +@}Hޝ /'JF8to&UiANdKEoఝϜ isKnpI=&N$:t\gKO.MsZl*c);2 ;MS豇o,jMG:,S u&z;KQ݇P bdfaTXA5S[}O\&,#M}au ɓ?qvb&=Wt= ֗3 ѱX #Ȧ{*t&!dAMZ=(O#sFTx2a2WDۮJȹ`u e]a8 1u ګ#AmQ^|08MP WVO^qW)*#KלLM# s}Bu"U킻H FSF&$ }vKH|aBF]7"d"KG0QŢaVoV"Jj>ߑKw(}XgC.42KQULtF'd'Fb2(!cյ(SV gB!qcZ$=Ճ |ڑ c䖾OI$T5gO"x3o"5>fdWߝ( qO7tjxJ/ak3LE' wl}5F#G) {`=PFjc,KI2a$(Z}Q{zj[t Q;"s[ ڱSj f5ً0oN8nh$~>ze ΒixGaac]! ukHMݮ4Eqzmc͈!FYS7gGqKpxG"ZZ!cf@K{n8r9CH N==)}WKTe jڋu7wd@.SQj@KFMe9 K)8],HIٶ)xB|}ENۗ2c@,K zab{ee:?βj,b:<+ ۺޫ_[طDv$S=ސDڒTSމY)J--zp_1J@)&$dy4`1T>u~XzO  T`.\ϰp_"/]5'#4팳;rTcJE'"!#`0#28Z͝kƸ z]FplA'cu~[̭a}ܿcFy̙?X2H>Pwk3}^ L]3GTl;T=`O F]X;l I4EX]!ef30L){ #ISw"6uOzδIWqxz}ʌT._o].^EM6F>K=NHɏ]bb?#5-iu8m24锿雲G/n#7\^)L6n$ZbĜpgz8 iK({?dm靷`x?pqgT)|GYe$DGg|Q?2-KU#>`YyJ@w j0Mˣ ].ty.㭑R* 1ɿ. MmpǛ*dU Kzμ6CV[z?N d>gZ`uy1#f߯oB\Uzb^b]5YTWDGevdy"M+h\ӺH7hД>e;U*dEyT.xwLC?;+4Mp) 9!xN`΍J1`)xˎho1ؿ%2d"~ye'1 @. ~ \ wmEY%{ 6%](n7 uƋ~׍hAΚjVdASl NF }\6#EJ]*F)j7iHh?9Q9E^dU>3Zx޿H(G(ua(0,av;d?2:M}%\+LW( ~][$&RA*2 0e0K;֢qqbS#EJm\Ã,2о%$(w;jI!Wup*7ϲ͵r2Tn%MpT`~ [APE$O~ * l*$Hͬu1c@-zƚRa#\ݔmi5;Os/&gIP3J-0~;9Z UsBGdFWЌXһX! GP'#pE[#hZ(p8u'.u1/?}[z]u@8DQxblbALHi7XYFr(m$UN x3繂jFR-1״]bIJl8J$c.L.:c۰e6UüZ)n҅+s`uṏ[֯!ߪ$z Ix,3z h$=5\+mN9$( 0ĨiG7qHĕ'Hu:Ef4TAcmՌ|TeQecߋS*rX}^tZ[ԣ_9( 湲a\eaA>NA}CW!)^xZ0{gԇ5\j`90*{区%wPە&FrD3_3%ݬ^oQQQ!8́S *¦RKĥ3UJ0]io"*tٖ g۔ԋXaxG_چ<*~zǔV6f-f~A;6bL,Lȹp‰YaZJ|TYELcFG|/Es،eqtߣX L06}VȝF"tZShV89OnqYAo$`ŪV"hGEs%ֽrԞ%jw'ku0ojv`KO!ʑrU/ߍݜL2j]{ė}7 z DŽC1J~ euRWg?A1{? w9nEwgzao(:,xJ-h=#M "sQwⵈ?]Owx ֆQ A_5*Ur+0; \ީAkΞC[JV8&}[vFZ rP7lzc4:>xj45WI5aPoi&!NQAu2wϜ?v U04h,(US\hn-: ޷*E@goO`>dh_,܈(_Q@Q[}MxZDq%|SяyAl+l&VEvpP@XΪ5"}ʑ׻!ԑmm"Ju"d !A0E8YE2)-Ӣ ߁F&SD1Mi.<ĵDڌrG@剫h$9'ZvG3` }ԯ8ΒG#?vA4*V\S/QQOJ 1ɬ <23ohR[5v{TRoB)NK?ύ" 4zbFkӨmBs?BƅR2|#͇#Τ/xo\?&6>V|4jpߓNAU2gǜQ/; +mC|ɜCݛ*:N)6 +;g9$d9lяx_ "1Q.%ưa䕷`pБ>wO= U&~ؗᆘ:g!L݄F!qFllQ>2A d" ޮiyJs |g A}J6bMΝ/EBGH`«^_DSVFeOPZ߳AHR๑>fƧd .tQi^LBtj=|̾^Ow)6uCKojm}Lv.˅i<򲅤H0#ⶳb"*4xj}S[2F2٩&WSeH,o bnyE2Knuf?ۯq-&XE׉A4[%D;ӣX[P(aV,5ߡϢ‹xAS%[6b$ *H UFh'|9bh:Bqqj=eܟ`20SZ h]b{Nj 1gO6dHYFiEOGS~$?eB:(y۲Xg:w%_.Tf, 𝳏HUonXujw/Ო=F}/?9b^䏰5\0@*J ##sw%c, +YQ;D}[}A&KWZ:93xmaz%?[w: Ih+a/(@:u!麴~ ?{.bme}$TvF [.6ȢIBA*wG;f˺FKق²`:E'`X[6,rlfm}be%fl/п\* 4c CO"3$; X*_sm9-ۑQ Mj/~N 20\[N_(ڻLq0=<5U.D=_8e8'SaD 5} wP-F4YxЦzaFՕ"j,2 ㄬ ~b勹,F|k={tS5b4+մ"=_ZM=Wa _HLBH+C Y+[ZUYpLIGI6RdWgs+@ $N '5{^M*~ԌkvD F!"^^ˉDm*ҋ+@ARQȅ0tIzB}BZ  І$l{Rb3/4P:t2:兮lȏ{Y`7/ ey"lVߺfl̈́3RCܫ]91)~ f{ƼI>:(G%Npd:MVNkZz3|bUdn"8K k/1(B&}^=槝E m,Z|.K/7IMVҿ-|~iCx4/h3 ?{M[%?oc?1NxmjW}j&LA={jBYfxG`N"Q0Y=I\:-}S7$O.6ܼ aU[Ђт&R)|:ȣPSg a)(_y0~I'^w3[ 2]-li^[[@jJ\VֈjdѯL'E&~Aƒ2Rs~D!Lx?K5o'i/5ߨJ7$j3M0mB|S26/SkCh QO&Yip= "(Zp F1o61،/ծpb܄N-U4 {= }lNt}n5Kzbqx9T@ȷ7:;^!kЫs}nr=Q" ֯~ܿz .X82W%p %&AJȟb׋9cp&cf@NZ@Z M{s&ڈFguF@&X7׉̸4ӇU- ј'+lsғ"?X'Gܰ6if5I|}FwP}>!ibucU+S}ݎ߰U=R_+|\aUm-dp8y`zeB6DGurhT |#mm{1v_A+ްcoǬ4/,@#o .)}חöۆJVB/x\$ht"[Iuqn_uN&j<",9srʌ Nl~"z#躛| T|cqLGPY!^^)rh,e>+ P\$aRG`L O,rH BqE^$x;C]slrm T::I]ƺOK ~KjW'YB~7#|zaGwvsMAW٤Gd\#@"82/Au!52O%P=Hٷ#FEbbfd"Zt! -@[Lp^,09Nr ԼG)tVhI; =D}4lc]ba|ڿXFmvZ&Ƅk"-*b@O7㛂}!<шxH$*6ahta=*RN&tBIQԤj]zpE%X&:JwG:a2qp7ŧ`"*PA0ۄ]nʢzUq[sAsn|GJkT4. /kmEz,2_;uC,.F/a~T7j}?W5* NF~6ج >L\rMO+3ɧ>'_ËJᆪ⺒V`aI +#?Iz?gY4ǑbKolinTzS_r~ 9X⽧ qdn).)uv K(EܛKSoH?~RPݸ(0,m7;jyoe̓/krFg=_y(uǽ2ǥk3TAuECOv˲ 3mdOeXcqJV@P/.%LU.$]8w9lH r}^"Ɇ:y}3؄ׯЄnAݟGA^--r]B3T!} A=T:?֧r 'FLP%/!;tg(Q˄NVaC4@7`RYp;KR s_7]`Mj*o'otޘf: Uj29B+, PA L)S*62L?r<QÎ[r C:贱e;⌂%{\ 6>}u;VxAӒwu=L 1wU SˣlwUD>2cgzl odkXh()*YlFu~<*ITuVafs a#9 dSgc;5DZ6c%"UcR67J ㍔{\b̝WL & }?8unvۯ_V`CX:m'Ӷ9R}J+_*ˌ Ī#ahfʹ3Y/ 7Ӌ:iƒ"xٮϐIUZnQq]4z3!W]R3p_Bסlq8h{a Ҵ[wOy=Ɉ.|xS*]%jR*W|ƓO3+}|)"| KZ(f~p WTIisz[N5D+,g~2dj)qGWaC^QH*jeB =uLC#nq}@=폃|yW@Nk؟XZ꼴u"nIy6$Mzr,+:ڨs9u9[pt}(>otCyt bZqe:‡V®%*C{ujE8Y)Kwrdd~)Q C &$JJlņv)`)@r׺*͇Oj0-ChZS{8/fJ*~`% Κ"&m/; ZR;{^Ƙ+a07aw܀uZ@l08{ 82M h?8Gr+HihNZ<]$59$&0seI| ,Az8n fhw.kw2= ښBYW)py ){C?/B8}WG\ZcҶދ e33Yk؎ cߢcpUC"%L_W7\iȨ FjoHچf|oi養٭#f#rzIDmu s!H_Kj}Aↄҵ-'q=; ۑ[2h|B6ZJf1Aoz'm"Z{9m \O݈Pcsz ׺xZ Į+^Y^ƅΊ:@/8s;JŒpVe#aWe3% 䘅yo?pFx!on׌}\1jgH2)fWO z6”RoQDh REҌRTbD=6lnZ@>8ƈ@4|nDb s4 jpHIrۅ:=1U$Kn Rbݿmbt{keVrsjh11ϡ8a)UT3Ĕ)Y TR,'Ͱ[H5tz1JtExY7G o"IڤDŽkcx9w @7:ⵓK3͇gsE & rYE[ 9e*IG[%rElR7!:Q\a*yLJrb ;upSI E?glAw$VW. }q׵(yFzC vBDJ0KYOP0"a+t\(uFTalJ$?j ci7M+f:`U'E!Fj B'=6s2Lg{!xy*mC£Md!J04b͛ehP|DŽk۔zd5Zಷ7 0͇H4\4ut^qX YjdNV7NX :>XSپaU|읯SMGR`l'YbV&a̰JɚCZ$!$6*~ 25vWx=,@ȾJqީ boQ6ΞX_e:rt'yP{bBܹ)b<t{@vsYKl<LnWؙY랧RȋCjPg0IY[e-p9E\K~5c)P?z^z9 HV9LAqXNJ"%"@ `#GMoc]xB,$psާxyc3DOFNj'o! uÀ}Xq[ծhiA'V䆢cI%D,Xr:U$N> pwP7򹇡gJ`JI_HԿ (tpVSd.7GtI$tGަϣgwwqˈ߰| Lycqͷad]igƌ_鶺IiX6DV BkѤA :oӋ$^au*̔`%ME`uGKԏZg !~A;VnDJ.q2nGߏGԚ.1TUnVR*`*;]4foI$zQavgB ?Ӯðaё쫐5@+i'7ε(YDd`:7FM:QWmT_ Օ]%7SJ|E`e7P3{8ū`7x[# )ڰn?EocX-X~wTye|JTZKi_DS@m:_N8&zgp2F Y'l%)YML d >kA~睤ktNUKI*ňY>mw|yƦeB{%`gJhf.{kҘ㶆%}j|}7uaz=ÑB4ˋ!8,p0\FHJ:!zcLhsr*L5]@Mf43|GF9Z ":A{,fnم| ˝bR`v e]`@^1-W:p/# KIc@BSӱbUIk%dlPG"P}RAGqVX|+3o7,+ЁKO'\|{xcBQ*踒c|#;Y{"Xǽ±bUԃab$b,U!c[a$5Ck%fD7JtR(Nj!L:|`_'@k{mӢw]xuŊDe y])2sUB\(7ʰ!ՠ!^=kQBU0D`˜EYI" ]\I7>S`,zS=oZ P2&h, eAJzLlQ9[tt jc9)3!BC.c]ĦQ|c *<sI$̼ J[(\N 59OD E-4dMZ짧Aa˚hW}D(/AiCziLsdT-淕Wi ڶO?XFyEVZ֏u~JK7i~zT%G 4se?nH4[°~OW'#~GfY }8D `cF%=EB~FN|-xsNo@ x(}m6Pl ⴥ%jD<'M3tؑP kb%HG^mꘜ Ohh ՛™')?ṽ*ܲEqNF  "6ʐ`fJYƓGZm F(s{J  trwN:t܌T)ü8 xZ6cA wf}ĩ(ZW0х'hG2n-:l^=>#g}f 奴R\Y d~ydh ps -+ұŇGb|6!Kí3 N ۆ<bi;1xЪ+A`8 rB5 n 9L=s Gu|qtխ΃.3mvI!J3t'dc KGϫ>`Mrе*˜8+'cH@"/;[GqhGiF?#qCWttkI)6vȁXae3UK' k&$OYKP>$ݗUQ ҀfL>*q0D<(S}%,酟{!ӱWnK\`_7~1*pP8q[X-c4Quy%!By:86Ż8(ȏ4M i<k=8jSNZxA!nuP"ǧAt&jU[m 18fҤ\zr7!=x@f!?C Q{/1]a >*Km[1}0yJwչ"_J'Iϡ~{WtsIQe\2 ][G]'K;L%rx_(3Ѓ\{q1''p[ZpeJn`X4lm1E64>vX@e`ۍMqz(YݙJ 2<+XN¯X-"m_կmSv'_\.\WYh #UgL͗o.1Sle{S1g-_{IfDMc/,foV鮜nwn!,ԁgSFF.oRV(k?Q>9E֫=*dN&UqF約|ϳ})"RZGW6TFMS;@XvdHI%PgLSX>9!Z$q~y/bq1d]_ BY16 ŻmT >t,f گʲ.uLp[K')m\ \ =@Go) 6hr"OW~w#+ޫC V[ Uw/ytz.P{"ׯbR[3hΝ sbpi NžTcors3ExoJPuQ8xpB0wEMw}dzJh,:n!Rc侽lܬ7ޠAi"R%ϭb<\;I<*Z_,?0+/jա/RdJQC<59: 9+qE<ݭ0OSp+~̣Y;t$\z~(xGn΀.#&=YجA W{ql*wg=?~G(b\(9pPÿ5S@Ԭ!g.%׺@a+f!Ձ dk4F^ ݚ 8.ۋYNZEl`zs:h .[9PH=z(ZH R5ÿ6XyHK}45Lnt2X;ꇸg[B, 9gm7wNmaCETi\0, c !1Ӯ8Ie)AZ:T/ ƙ gc1BCiÜ"jCmi+}n-5lQEFbILLl3mvMON1K_j "]x#+BXqz7ɶ[TEP{_qx(pqI@iHr=Hᣆ(3p-סM.P eWeڠ|[=(Q܄ h{h,M[Qe(<+nWg3s<бEhIf/ݲz&lkNei0\xJ5aILԏ[K$:m2>)xF3'K*)+)W⊑uy'pJJ"ר ٥} f+E 4i" ̓A?547oH{O7P m.+slK;&*xjE&,$,dhsh< R䐩Њ o}Of!1(륪@K&'iԃi8,V_vA[lz3}9q`؄HA0|y:ҧX#I|@UGH'qx4:M#_dA RCþ0<| 9*y"/f߯m bj!Ci:uEmb|};tӬEzb+>Wo-JH|\dLFH~u}_KTNc?`8@MVBUP}Ak4K4jHEIŒ4%5BSCn-{*%"0?Hf3J3C散`QTh@lRZ!MK)Olv%!EpLo &ԅdzjPH'!36 NG8*4*dZԄܲ.]|P0=UBPz1u"lq=Vjx<9un&7_!؊Oڂ#[ToDEhK[H,([-jlC?[A\NgcsۊmK)n]~PLе% 5$4{S6RjIp#6}oW~[S_?^ZAJ KkR!ZJS%bucFbMѥM1^)׶ΉI8ӎJ-r:I遲Zq{~$cy4BQ,lڽL tWV8A$tQgXt,]6\K.hEGe ܭc^r)ٕAG~ooˌP+ E<80''T ݳTk o0T#1lgE74ɧ(Te;41]M܁p{R63Tr@׫;%GVHcyE/>YhL'kcMYb\a?:6.҈FW4廻n< Fi0LÎVz_k()q{PCkDɃ[ *Ԡr`{/'08"c' D1UZ TtG|6T%2p6K &͓&C__2G2>peT%xUz \)%fˍU=H1IbLxA ȴ5cךLWȨ-DS[9-5x2]X \R9ʏzc9O!f=ZM5L+RPK^sJ_78lƌ.d#lzQ_`}WQ[ q2Dz 㷆¨…KH^.CpY$ƅw L 7sοF5{ x@c֋F,hw|:JEM}ʟܻlhZhc\c9٥h4ǼYvt+!6.4-E"dJlMؒsبFJLx"@v8Vc\hDf^Y\ֻqhSx~DfZCx1_ c/Mp0i kP%XQc6*Y4eIQTpS;U#~HB+j!.ڐAȒf<"M$v `^Ek46p߲*0+26r%ͼ@hFaZ_3Fiϭi,su~ݱ1R~bsiЂ%h}C!\e"f D|; WB},Ӣň U$ZՖc=J5TwAEns"G3m2#ߘ{5E?8;#Uљ}nS|(SbO/X$r d#]iⴃ@Q9MjPsB1ifVkm1jvVE9.Zor38q\BXiL'+HW `GiX5vADڳݭċ^28 }cmOwACZ9+d4ei)^7o? t?p-a>j9\}<wŮ Ulg ? /XVWb#XYЎU䭅˳V$jt_A0*BLRNEQfdaRef]Y{T$S'{y4\8JRi#s5%ݩZ7b n+#.aL--<6ELZTSƧe4f:gkE3غ9D/HÐn>|۸N_ី,SPk-ep# a;dxv߆lmRUDQ+x2~[8Xsa:o`"ֱS|̓0o ,_IecDoB+2hOBs+=C].i]Ȏ49E̾Qy.Z _5˲XlUUxwW<[߱鮺-=#DӥJJnD'Yx/%7g ,͙iy)e U_.UX{%=[_f @8<>1BQ+VBŠ$Eg`64pN &2_ a;bJ}Ks  l}茪2X$ N {c-,}G9xۜty|$ Nw!s':n*[t@;o~bpJt)/b"Ye{A[xc*w bl8 'Y|SB_vuL4 e;(p?Ttѹ}mT |߁)E!n3 yf*|%b)Bw6X2A^G!tO\=sHw߼͎0|pr7 DVNF~wsSlh}l*Fb+%3"a*:6V`EVǒQCoqZac7e72Ti+nkK ڔԤ<;!f|6wz{1H[[B1G2^{ Mrj}<$^=~ 4oKSpi*=&/Qk!, F,Lj~g[J*-q 1V`--ZB* %4Nn;Kd5.6 ek=$u׻Coq[Wv~C| 㫲S2Ҥ%S}X6 bHHP| N#fctv[a>G.Z9 |V$%(ȈoM*5rk+@)lDNK+ ͜1,PgC '}N+F &:w ZQ&/cp,3l\k.vxR=-Mo)X!TW]v'QJc=2[M#U`-U 8w]-á7 STX3{ \9R3{Ai"qڄSsiiU,L*^(cNf暌0CBp ^V2ZeLƬ2rOٕ9eRiq0+7U65M1J2QW qox QQt oe1>f$oZ&:"|!,:4t9c,4޲æ_IL|lTƚ劉VexY2/>(B AD%(vW9A{kAH'q׀X-Ù!36v/sXL:D}O_Ui19Ӹ| fX!cGÏ|qw=:&[̕d!jIhPb5.qڄJI#?F!EZ[IAq mżWN1Lﶧf` bC/9/:k_8Mƒ 6Ƌ˱e`?s>}UMl 'uK"UB6K'[ U[FDGD^G:FȼκG;Bk*9ys̜f+s M"0-r~~i)`?ց&0mvlU݅J<.0ϥpRm3}jd7"apm'-?RA=+%Q.VX_ _6Ĕd,6iP5m؄NeY^VKP hi1 퍢1K indlDl^!MH(uP}V/7A`XҖN( :2ܩԫqJ?|^$'o2$7Y5W]u͂K; hI\}+q$(OP{MKsp |P9fiVR,GnhAzG|' Y- A)\땆8tR) a|QzTb_FjN5\\ZpM`WҜ`=䶗XU6tZf(FQh[i>Å!_+7M߰|m]v @?*zEM}T딒.Ytg& <&w^iUirL=(DyVeHCߦÓɛ@YSc,hu-G;Áe8_V+BieީRo§'͒y_j Jy څ.mT(/?_vEelsͤ4~u s E{DVk#kjHDR|8wS.#|&j%(2axT9{?AA0"e+ag!$uEd.%tt~  #)?/K~5:?dl>NC?.kk%%h4 npĈ5[4tu?ʖȧ2[x5}v_hHq(c`7l|G!b.UκR%|Ϡo{X ܆0C"+ VQ^y'܇W/a8;ygM;ʨS!b  4 `q-=]&I1,:Do9M@FnF;;.2y܌$V$yJIm;c&Ғma9HtEʆRZjv*XNf ַ <;0 `3Ow/ʬC 0 9)f~9}ᤵ+Vݙ:^u5 vU_x#3C` t۞p*x؀A,&+eL~_->v^)րkb)fMw` =~Fsx$BiWk*4w7LWzIj(RBefME;,-tSyNʎR0aF$Ǽڏ3=FM ZyL@QAC '|GY_ ?d-n[ҡ"4f-7E&:̅ sd^Ea;v= LCuXY.~<^z_EVP XHjJl{pqZ{Qz\;D/i̢.@/zڻUM񮔭=ˀy Vf:K>j`)=жb:s1),T/ 'y?dA($:B|GaX DL\ץjQJA5NloD $o#7`!sMZK<&.#{ꍐtlo{ѐ@PQD k%$[cpjʑ- gȈ`E`PՕJ(38Î Ia[b'EsAJsS_ 9pROgTa Ü-T:[)/E!XՖ)P˵>f!yfa݊tr+}P;C phF7MʹW=,`p)M)ަVy=p#~{>,e GàEcpUnJZN#@MCbkT Nkc6"nY3; KcB߶y_"6ҎqDŽ놐XȰq-OId"KƒaѾ<%ox|l݂,^=JkYG0s-ZH)`FOċ8MфT]h^޼neUo{[mb`% lE2nQ#Pq$7#fkpm   P; =L "inځNA/T(Ù@PD9ϹSC4~&C3Zq1`@2pp.C\yAZp9nYJPbאR.L6gCU) ~Ӡ+Ke0kZYmRЏ {òmHO\<[4֜]̂FFzqEV xHȵ[ @2M>Oݔ56\0 F乴К hg:rB/^u[`M^7л̳{Q+rx +җ='߻ɺ)Bڎ5kwY,`o+ri%D7I%~FcWAtyuV?'GhLX!.nYtE.J#QrKAlw_EQwԴ}{,Vcms1͠;`C}7,7Ϡ;r@Wɾhrrf'.}+`'";ĂQ 3FT6[AW^Q$-LJr% g7zۧ.߇OdMc;L7؝ l$: +S/Fؠ gk1a+Ch!ld3_ʇ'}& |D#InyJتR9lP(CFEO/: W!hU8m>$Emgdt' !2}4h `hdPD 4rzة-,8$̗7?S*؅X -}5 PT>da*͎bKk}3Moν=3 dq_X~wj#\{iQw]>o~KrKjOSQ9=H>VTc'YxEZ[Mm7re]D QDZ]9;n| \bKlL\KOrR8Q3eۼ-I1P?W%XuÜ#|A6l)ICBRkȬ/ cMOm\9Iyr 2P!ONxIi'm@,+]c"t4 4xB3iY$Y'>W za>i5(З^朞M$owP6ݙjߘ]QŭSƍs{U 韂8uW ?SoWɧ`NOp޺mo0YRg6=k8s;bcI,cAH*L6|"? UVYY6Pi#Ur0kV3wF+q%rx8;O!Q7]/wXz15h `G;d(}*xF}2;ss-`t cp}G5RMB˿k;=^́2_?7k]" SR )tS,u Y `pLf \ d8'wn3Z^x0mFY%!daĂJKkjE!w5cʎ~y,ەu/%>MIN0Vҁ)˗?!2^~}v76|}#-h_Q銼>JqgtL+A_#'cJ%<a7,&ycp+OPPQmv[vYQ]`1/Mx6Nʒ ;kkRH1_ҧ}?6_2ftuRW>~iȄX #!6P߽c#0#ɹ:MuA¦*o>7#یNٓtvoZ e5T Eg;vaJʓƨ-+ɤVUϬɷ.%fj=$uSl@v;ś9tye !"jsjJ 8Wfc틊o P'"}dhDbv.e5Z +ɸΉ^hvNsZ!URoyӼtruT?}CB_pl4 逞O]wG_Q{Z2/!cҌ.AlS)=(&Alw?"rsHߺWw|YgJ6B6%|3f!`<Ĕ Fň"NEzrz܀{F(z@y) $'}uP* .ݤOȻBN}/q:yB; väP"e"S&Gs[SmJ`C㋧YYq3?B@/e/Rroupˋ߭2uvdwdiQթ&Is!?cvҭH[m,(2&Ҵsߧ=/٤2ޖ/9T,f@DkO$Z̍t$XȠqlwDiAo0Қ`d}#gK5wm^ԅs}ҡb,`vJD-Dl:z58V.e8Q︩*VW#}d-eUF#7~G<"fDw${IHE.KW\\l]|[d˷ 1k3:7X $}H4;yoi59=;"G=Mrv5+s q$y($%ާur/>SV2:`vTAIGs\čNFgyࠛb8#-ƿyUz/+ HUS7 LouybP ֝<'Ns>g-mPB:P>ᐢS ~HtO\CNv%ILnźّsQ"Qe \U䛂7y%<4_b8k9`dߒ(>+ RY Gto; L%)Q\-+ uc8 LAZzMWfW٭tC5e.O/k~֣fNŇQ9})> <'A= RKH+jFH!7QW{G4og?G1HzJsQ-$nNɱ&m@6f.E؁ '$;Zb @% ոX\qq Μ[fs$Qz}렚CQXHo,Eal5dJ+3X3߁|lQA-aa+`a3 TX'˖{BkZI)h֌Gm!u0ad'g~$ɧNB8m8O7+} NnIKIY9H>Bz!K|M/Zt ?٥yy|Q5&Uzкn4#\>Ԃ}P3Z螳SσRȕ1wڳ 7HqjDd\21ZI.DzgT|zvD|pU\✱ˎ|pG@$t8p"^?|Û}GcLOn߄1 (=:c5N S/._uZVɾoA Vr%{2OVkv RX\t@ ᾑx_#ƠT y;7Up5 \Nf͓]C^IXuDwLR 0J\HNwjzvRr!J.W?WIcm\ MpIh0wn5itqj!~h($iW_dA@A1]hVਪ1zoY,M&okf;X!C-?s -5,FIܦ!]pU ׅxj0r!1Ɠb* NG/[:b 4Üåȏќ} 0NJS`H.dk59uWJrd$gg]joSgI~i L㴐Ih\wl3 gFtELk=:1n%cU\Bj-kih2>JeSL<7f,G A䀨YAGwkU!Qۦp0IpT qqVbH3̘3=ȧMCy"uVf'O?3q2;CNX kf( nyqau~6Yq1XJS$H7";=D^sw]֬v<^k,Ruv8Mzٛ[M#QUm(V\G "QsHTtUu;5da`09 ^QZk ]hfGpo`:vZ4C&)]y.l|`$:{>Bp(ckePkedbKn$؅1ۣ'M|r!"ɍ& %5*~Wa6Ӧܦ8虡FKÅq=ٯתdWΞ?5Qуӽ?cŅ~Np(eꤗ;!#=˜rXSw(Hv/aoxSWO I;,)U副׷ Z[N=k/·A9f&^l֗CTB=IG$hՅ) %jHG 5шɀJO|}qc\w/l(Tm6mnaZɬ@¢?3K@bEmħ1;:Evfk6P$HJy]_D9-%~F8L,xጯaȥZ>}xjF` wY{Oɀ?&|{IZB4lkZY.O;vwj:*[4kӅ[E=cNtרPIJvjk!k ˰Wc| ?)u^\m!41V7MYٹQZ4h'ze,/u\y;ߌ!Ո;➶jS4vs=oh][E@&\N>w [QgQ> _k.6-9aƮOۢ1IXR9֝xh Y+78չsa93ΊDZӄxMPd&čR/p:Kqht3)ԠX'J fmehCuѥs3鞵a#:kahE 7sLTM\1W'mHct>, N{gJ&Y@V G{ɔH0W絣SP𙣺gcJlyAjZϗr =hۛ FՁr.[pG/80 {D^4 `_1Қca? Tǃ\`4U<  ׀\:a|O\/^grco6H' Bz>ƭw|qc:4 f7R!?tzaLFdŭyh(Մ m+ؼZód sN`B|o'٥λUo Dr2WLKzXu<)PѐPig^rIW@"dYNCRQKAA {[;uYM3vd?]JS1%ty]a;}."a󳚢֍#V"e'=UR~v8XsC;!0̑-?u޹(1 !E*zvmNL{-.ٚ !* oU/ !ORBoY5ۼhq"4=GajҸ Lg G6މC2i"iu\\Fe9vQĤQYCXZ:R*)f,Gs& TzxiP/ݴ9V}F߄PuG: Y \^\h=Wjh|S6}r V&nPQ%aURIz4;2- n}2N I#)EFVmr-V[pVh;]X(sf1!|VɅ{K孒[\o~K=@>`F {,N#hdm*}Wͥ (-!CuE=֮|q ]w2TOS&& 5^@i߱dsaϸ!}Or o1 B ]#뉆Y#7{b>Ä5MpaRΦhD^!5n}D *$MalQdw\LBFxR:A0a958Ş4{dQmڗw0sm>"ޤ 1>pjL6*ps\miX~XY>ԋ\c6VDA]#2EM-lU6.sIՒp7䶺rH_~|IH!^k%L:iԻ.pz64m ,kIe%Se?y.ph)RC<bNy> uP5qďxsDRt zqOHK ijtO5GGr^n_I#}}S9ԍCTo `,Q?>b)FC p$1gteӑEg<5 y20w:!ͧPjҎKg/ _83Rc|OLyu rrv7X$rmt < ?ewAޚ0{ VQU՘+:oB*L<)*"KP r٢ i~sMe3#L;grX56[cAw9jf4P(rMd!tY[^k޲ 4r9wY3=!>oj l 6D28硻fحBD^DVEFbhTVW\!Sӓ"/WmsV9dp3 n8yį + Rt3I!Qۑ*@S,ȐDH̞o܋v`1ƴHM&ޡ%9x}u|'Qxrpy37/f_wbe45ȕnr#@*s2@/X1pWnH% U#kD`[$N:^Ye̋ t[jB=@,8]%@F-]\.|]אu{"ޢ5 Y (MŷX煮2o䅽u ڗbEln"Z륽B\Q%2wJ@X/۫+ϝIa`9>z",x:xO>GsALj!kSPNKK S?nwR $Uo+y+lSG2|gnlăkq׫\|1-Y3^b!sRTX2S rPdD~V;L+)ۣh%;\?PֺGrcfI`>ٰ>!M)ą2W$l TScY6,jԑW !sI  1Hl'sTqZnϰd9 8*B)A`I񹘩s=Ѽ=LM.~" k7uP'-ŅyAgwkFLݮ,jel W8O)9&60n:|afR}#%u~|4{≯G9&WU| D 0|fBm)'!ټ[nA|0{)h]GXS(/@_g0(i_iW# OjV%oq)daf!#xrϚnjmx~L5!'kNaGģ%I]~eE/o~&lQrGnߪf2Ot $ckf6)=8%M ߲U~p. )OZƉIBg~r% AL?Z~,ޞ2{gHć׋=RYRxˏSp>ƁՃ[X=蚌e}DX.d̎VzK @4͙Oh7A05L uvb gͯ_xFΰ'!E@aV@&U]BޚcBi5Gh 5"c\?$PqP~ L`62K0v---Β#uFt߾]u2A!YG8A ^s@F`8X,E3[ -J]yBo9Nuo*S6)2VFQ3 +w;Q_z%ߺ=FDuтatq;4Q`JVCv(NJݼ  Ą*$ :~7&s+ h }<4 @hZ`@|B(M1V ^jQf,L64xϰ_NM?^͈q{'+p(>dt Ծ0j|~('sQ (z92Z#NpYᒠwĆE.KLeDGm8 .6y_q+Io;TrS|\Vio97 K5_)xIAc1만2.N)D79%AG4<g.tz/:-V  ԋ$'P3DIp8mriT)QVrt<0FQOXj85NgtcI*vJD?n7eh h*v"̹=KؼmMW_t. RKUv@ʑFGfþ2::p5(3 ogO>a$|1;iz(iK;ljxw7?= Qk%`\j[m+k0Ȁ#LWL msG'5P\(=#Vi]S7O,9oX1a=Xs:m8l ~ 5QS)o}Fء+`HrJNt#@ mVþ_d.W5$p\Ǎf{|; Jɳ+ښ 1ٚ@Lh܋VQ'EePnWhiK삈vˮzP,6>^lW!W^оnG3FXdϤCzW-,)rTƢ< nM +HQzzٷ TiVȈ~n$\J ct.֦cݡ)څ4j$5Zjm wj4>@bP)ٔˌ$AzH*ӗ,!y S=!pVr'Ù6Rϥe=iޏLlQ#ˡOS_uQ@ Q eK*aj2$el%{w}~![Mc6 ]O%x7XS4EԆ=??X\=&`Ťf~_+4i t6 `9M|OA(7.%cߴh vA5nj'wV=%MSM17 :y!*&.~ӰHB ˦ނ- d"PMGdkΦ@K>GS<"A!Tso;?yjPpc Ļՠf58vvtBt6u+Upp!o@~`ժ4>bH=-*G2QRɕ:Ϳ4\1B"<{[N= <`{ڞ І#:= gHDj/F/3-' 6v0=To5&]7>ѝTC5&Jy6I ܝYSAjecCɨKFBjk*[VQ)c~i=r1֛$}P9c5K7m:B3?6!&(<Yb~H 5^Q\Bwa^1vcF$ybϗi?7hvr&d"qB)Hmbxyj_'1pW!$8[[W֭OaZpНC_ AU"awJ|)Ƚ#HZ⭷GSKA%{+ռE= SL&OY'-lBuTJ,ȁnWBi)YgwAu?C 6"qWܸ7u$ X']nc4"UnWRgQZW|ޡikgXbB)WKE!l vH2')4I:}AOe>Mvk;+[o 9KߟSso8p5 Fۑ<| xHN/r)$e Fg~EܙE-'(̢6aɦ3c.H o,@+5>7!%^*r-sRHҬ2 !ݑ Eg9yQ2&?.VdlCQle݋AIUmcP|&v4m _q0ϖyψ%zz8p$e] vAiI ODŲ6[ yB (0?+\NzCSS|>RmLCnʮ yc"^ţVbg7bS@na0 ԍxtj u.Pפhe={rภW%;{8z8[#4U`"Xj$굲#J 当=&&vsVChLKSl9Vr*~=ᇌX V5kW姷l'M+^VLhQ7YM3U7CmҞ7"w &SqF3jQ%KS !!r7mPǁZ~ET^tNAT_A4ʢate'jU7OL07>4I)JlBX;9C'Г[ 2SfH̕X@e92'uGnt|#(E  ᴹwYƋ`e2<@n,B։|AEv *9݊J,W`WN7h|^LH=v}kveY.ԑ3n5FQJSӛN7:e^jxMLV6EI u54)H3}Bܛ|I3# B^*PH AJc_cDڝ79ŧ_k7 =\`NBoG;έ};o Kj@3X7PGS]`68D:vϑ+̗,h[\B gf1 ҩn/Q f!3:ڰr dRs*^{X<&[`l<vҢ^ +ŃHzΒ'ܮEhI`S ĩNQĒbz\05t-*p~MD*RB0C H#H?},I= 𮿉FRY"x7[DĞC ee>Ľc8T"6=C5-0Yt>l0>r \@Q(HZN7z%P-zf(]GOvB1y{BI-d[87f.N@_wH2$>qT5:duIVq$=N~.!tzЛ`DX|Fu7s7@8SQ)67ɦ/+G [d 4>F"yɆqy?ꃯWYEk{&wg(MY\MfS&y:_ 2>8J1JaWϝE݉Zz3+XQ~#z4S3:V dDn}NGQi#GahU^g pWN,"ta,mWoGHN d w>Ruk/=! y߯C> J  ovcV=P9y 3DDO@vȚ}`%ue>8R_qp 쨬Ki55jcɗqn5x;"gKx92KݝE11dIR* $ր*vjT/x z-9Pu#$#RC=I)8]0)gVn7r1-.}{NfYVlzQ[%(oUS>5Fh]حAAF :}CɜxG.Y7m+4psw:x! ]L_Od8RvwK\Ф3ñI!UH-آO;cp5v^4C%51WQ_%`f KteGZ8 %>PN<"VQ'qTh'JAmN ~VҸF|<\qyBJ+g^0VOVK(Y"7WnѫSF/yQcV9BEI: ̏yGA:{5Z? :~L&B1 Lz@p̍׿P_mdK'0d̔Dx'ףq5LPD{l@F&Nw6H>Kk>[ȤHR"P.>LoN/vTsc)ӽaҨxЊ ZWe=6S0p,8#~1[6~yhu4/^%Cj; TS­Iqs85fZYj35R& k hkq rxLa~mO-ܧ{$$Zm~ !6>ɿJgܸƶ 0:zlȲ`Wմ:"'uTqBR ᱒yT9{,}tA^W YY4EA -m'K-M?-~F~/TFwN>0z1ccXL)4I+-5IqW!r?d\ڀ|+r.l\;8\&2绠Jt.荟J[KbѲZ8=@Q, QE8a&q pp1np*dg~,|JݢUNMpȓ\^ nۋzssAj w>&+'#Rg>f:yF _$@]p+j/ȱv{kK5PYE)5;W|NW%dC .oA?\W1Y}c=Y(9|_AH9ʷ=6`v~9/g,L^_h5o]ufI'=Cl!lb=[VR sirGQh&JbRB:2ك_Q7(Dr)C.4ɥJSg)nvmz,~l`<` HFWĒcSGJc.a (3N`vؗ!*23/д?ETc,{JC+XK6ꁂM׮pqKN 팠Z4WDQ+nмQP^zd->і= EKGa|sw4qb沅Ubvf~+/,4-ғA0ςvldt<.f8/mփ" i@v8-Dq 0d?B.eɏdeoti(5 kBةm)p;iªBeʨ,]?O%U~qJ &},M4'_k UyjőU ^fc$vr=C.g얲{GoFZt%`x=ՀZNtHMC 1c%o%8 ~ڭ.B*I>U=&6E#lnw CwgbuF?[%olF|͕rNB/F٥ &߄#L"@y Zm:r.{ʍO944)LVBU}S'Шچq2$)80޿M,hV}J3VA"< zy^wM0X^tLB8 /d˼l-Mco&Elj[!W0g\vгgr! 2`h|c]ìSw:Fu#'wE-aPg>4~A]d1>^C#Uoi$I-o0xjr\RY&wwtUsR39zTS8Ku;. 㹲Hox>b aZ {UKwx/@G2 aD0a#4F=PWyƳpd]Kߖ./ީ=eB#~ AÏS\`mWb #8vj CL?cW* 闳$x;{dŧХK8&|;#ִmU,qZdpu ;GWg #Uw~קSQ4mq]D*lż,{R4;o}ȉ duű{D|*p^m?l>,|͈9gێ7ATk^瞟Y Hlׄz[7^0SScs5t>?>PQAvND$ф4ٵ,_!er8ϾM FE,Aeo_-[.| LKyJŋ!|TA%[k0Mv+`J=۟8wסF|FDܫkmpOBQpIe!Y ^:? `% 䜻jPt%rFE U@ `"RU䥽 ]̀rwmj1Y]`Fu9uHY"q *dW !3azS.[jAN'sk-]Fw0=+aj4!^䈽=Zƃbx q젅Ŧ=h"!56H=6h9b\b>ƃRTW*逎Z$-FQk#Xci+ X'Ts sd"84_GH}\9mI5Z[`*ꏺvl}>T`E:v_ռzś x嵌V)u=@$$i 5W[%w%9V=Y%2kwsWitO\"ѯ?"kC|?7N8Ex[G.ST\.(TV\c:7 xIxZ2Ģ֑u8(CH\-թ ۏ.Q}+ݽ.&εRo#/;3cx,lxpԩ&hv6>=Z~,SI.x;=lXk ]ǛkPL( Kmn_dXh1ނxLB`w/MGbf<*Z ܭ!5Vt~M/Kd մ%o 2s/,)D#U5QL{ Rϑ\N+'HRS,I/Zv}PSФm>'J=}xCv!&\ܠIzq[8 " j!0E^Y<Jm~@M/:#F7Ox7OTu:6Xtd.ujNiQCq!{|\ GF-uaFYX2c< +ZK$w}Y >%/W!f;#qpeM =~z8J`r]!ffQx@{riq6 ܸFXk%d!)jt tapq}XT{J˺SfBVtTMRZ_U*lh%{4#xRGܚ|,hRGw_,P 27g jP?KfU-;6`N158dvW (5A@ fU m0 wA] d oDٲJ5!vajHRZJIS}I?:jz#rv챳1O9ПrG. XKmKē&hz_ZpFr:+GDYqNNyiD;K@ZU MKmf)$K7Ώ 6^ PGAqn(F]}pzWʛ?\x;Ywd9lK~u䛓![gճ\}џN|΋|vf羽H*J½38lv!hNhp=ɵ5Ȅ+p;4lGzW,En>ND?BɿJ(B$=_ ,pv!JN/GS5[b>0V/> _jp*/BFqdZvKs.#ERJ=|_維$MTg,Ӵܥ#&8soǀً6h jwB 7ݗBu껙#*c nIN/| nGOPvȯ!o%ahNlUrཬQq4W})ݨ<;ꂯ_@-`ڤ6we/J]&{66($\ΔD7Z)OVJnD(ηg軳نIGMI㳢m_υQY'}+Y"]=3!(6kf_P<- bn2zeq-K ;v9t+Zy[Yؓj-O"'O] :=}Μ{sևHz5+ '=r`M`0"¿\VO%>Gq1%"Ɲ2C8aEX7%E:F=z n[֐JWKuRZ xKo}6~$U1_MicNG7fJ ^WQhϟ/**dR* PԇJ&ZʦraP8[ܵDl:;}F=xKn8K[[-dmq=lig<{c}{Ke˚ԫ#+psquro *bWjNdǬ@SZQɛ0EP?[AFb8ksJKp'j":BH0f6=O0Z SNmh1Z灛}Z}74d9߰ݦ-4(},=O+ $L_,ZT7&}b,uӜ36_\GAT[Ю;˒ܴOՅ޻n+vp@ϩ`ت=rdʪ!yClxAu K.$> J̑49MS [Tؙʣ}=>8]P&^Bs"ZAbP0Ƭ.DtKO;D;QA"Rݩ\ AK^)-(%_ az=7kx&T]Lqby=OhvPuO9Hϲ1ޙxDXְ [3Ӏ?'hi2.\9̜dGy!bC#v`T{[ʐ:rn$ aH-D2 ;d'$MiyV h_ :Ww3RdD R?s頒 OYW,(䟸W@y\x4N~^\Zec9 IUvٝYmuH]͟DCCrStJBazD3 ZfK+ߩ 2>_wcnӘPY;FXK[xiIEYI@ޱ1QyYvSX-*%Umإ XQ8VpZZ/;b)SMB:~ge2A&j+rhRӫrɐ6.CITUө8iNCWj0[O΀tD1f#b%i10_oD#gm֠3z^\~9H+š¶]1MT;#]*ayN-ʕZ_<*wS(E|iѻj !PBQb(;"'$Gާϙe6 tx\@Fm^h.3*iFS$`yj s+0f,Kg(gMEAB.ş~b=v(/Ov' qBwRb֬c4?OϦ/tiV1s% x ͖i31EQ'@7z0.{񹝘lu$+Wwq:\Dj -^gxl#U]8),8tJnL-/ ;\J %! .|) txP"xfls,E%?c|xiB8RDE'G/8E+-P5:o$ k-}fC %;o{N@ԚCڣػAܩ-L<7l&]w85`7C'A[ CHÒ@)t y̖]كQT 3q{etO2M7_:R}fF&;RIv.z(z]U&brOאy8d@t׵5 Xܤ=#A$'50/D&F!:k~#l3=kGB=i^VCU"žaM:aˏmݼ~xPFڶr+ҔM)<.dJd@V1ߌ/ ~ePɫZBLL62M5e?Y2 ݕFX+x b Lt[)2UXk4Tn;M2>UN@HWDF<eɪ6{ /e^F=҃A^n0cj]s`<;1 _d6K"ӕ|U:HŃqwC珤!O-H\:N_4v;,^H}c!Cg!݃BbM(;*DG5z$Se~)B+>7ΛFnUGs0 +moTDݶU\(`t[43xȣ.Y싨l]s ;=)-ʃP, d=L-tӸɅYq3]7~:|,XvLE!Xg*[s5b 1[br@?e 4F[Z (YsZ˶e(S.zhK-J&Ruf1(:ˣ\Rq= Bz\\#5MRWu/EJBN/cMFryRS'$ցБ\Gv[(GBP0b*fq=h,TcE99R\l< *o4xH8F Zk.2;-nH?|څ,B]@59]4ҷ>r28Huh5K XJَwFi1nY4-`=pUؒa :αŗsFh35njÙL>QrjQy0hWB1yR7R%K$(L:S ގIQ@Phn2Z 6#;5*<;]}^iZ4_umFص^!$Y:;sTPozŶh+_Ѹ62E>~隌hYrtG(oMWc-˺8ݻtFr`Yr=N0Hiu.()BKrgŤCC}(0ğsۓ ɱY.`3ux| B#Pqsø@Q4Lu`{.AVuQO槥bF gbFJ **Ac1(f[Lm{[|5|ǖHlY=-$-nh( :G+ }XjS6K 7j@Z<~NloqLȒ3VjZd?Ey8=XgDzQk_hpKGqá<_&mbJ?iK(G*>{ ؍½alj:K=Mpw !|bTmkBxD]9p&O\xݞe?1fEwTBk^Z8p"><%H{dn, Zlsw`{M*_O2YԕW ] i '^XRڂ'aR6S.CwVV[XBwO ,QIC]P|0ZUigmFYiE;no(74IN9NRãtw E *3f3NW&FlV7ru%IPĿ>ւMVc 5&95\ѱ_"8AlEPʙj&hK/iC&6sx"YHoO\Kc_}=D!Ԏ 5_ rCIB"r 3r)_FWQF%ׁ 7 [Z?Nj}aMZ>4i E"EYHjM)KRyA-,B%hf}y2YOC|b/;αHSt%x $~UG B lh(~ H S8? 7{.vA~*`+{a*Pa*Cej? b=*g?rۿ^W7ty"K" !-ѼTC*Xl@b@'$ԕ/]"0^ >Qjh( ٱ-|$t_痆͢Z&MeS1R  7S ?ns~+hrmRm$7oTڂQҀRᨕ#Sb4 Rӈm4z#򯻺7k0w^6^{_^Y 7 ӛɝy-OV'c:ԡ¡Z=tk1xgpbO@nTzfcvx9}bIU_:rr& vx6HcV* -y { ޾&Smg|3XKiJC8oȓt?^V&P*"=q&!Tn|2gw:-l=2y!8v`Y=Ne*76k]&#-&v_W7XthcnYiؑnզ9IZMTѶo>޿Dsox6^XWIZo<$RpUKҩ U _ѺWPmI8tՒ'GM(|{5()Nc* (7n"+l4&XtMT㒷BdG"F%Evf$*1!}=oP5M}Oa%B %#?) B7,+:l:ݰs臄>u5 z[Y3kYFoNrip3+bո@0N!y.59of)_bvA<JMМ j06WkgDU5fJ_=3'ŕ,$yӌy=6A}I. #eM.T+%o) y(QQEBea>CaEv(9r9aꚞN$[NLW>#xL"~hfҺ־ p*ooZnw!f`P]I.E͚RH:3hQ}Te-v,C3u%P}mפĹ$zm/0 ͈&o8Org?Cb36fN!tt&'yt+rc݅5iUa?) h屔KYBTTR4s~"^&. R|,n 4}r%Gq4-6v7y?lGՒw_J?*\Wl[4+[NjUrT.&r2}L26ś :!t){hHo*;_Vc)m*!cޢt]Rn3>KQF ɯ6e ? ǻ`XpOMA}ܞ>)`::/)jj`'T#B3l%JK7snʠ3LTVFOb@"ĺʜ$J1#džmlͦqQQDട$Ȕ+H ˼R6TJf;y$ƬH?rJ,5ՋQ}vi|n9+ΚBN4* b%V@Ri:^tEmHQ ,M"a*.H_PBpޓ}r̴Dvo2}k};vDdC[w|e~s7Sjp?9 ]NdP k.O#[L-ڱNC5/r[Y1]@"IN~F~ ='_SG渠!>el A{f44''K\5 Ev`fPWrlyL6k1Sl8Uhg=m D1%Prʹbz GI䉢z?Gu-ڡU~fi ׆~R4Fϋ($/DbOUX'E-(/p"$ wO4Z;6XxkIc~ d_1rYT*خU{B!AG/@)~Vzbxu}SF9Cn=%V{V.^ ZwV–)G(Fd|28zk%"3p<˟*u\H؏ss.Գ ҈widb3Qt!( Q{;6gs9I-6I됹Ѱ_ܢAd3˖ ͯPsh+vE؛aG0eиm#>s s{VǵV,[[k2BXگVtu4{Ac#>JN%n$=7W> 44mzmKDĹIE`BE;ۜ,w{ӂ4+|/Ǘ);j @b+ASI4V@kՐ̧߳ iXF%SraXQR{:vכo_SXk6`|nL=-B4*Mc %v|-@,d\& L%:? =Sp݆Swk?Q"buYifϺy_/$n湈W&> oS 6nȂZg`ɡ ͯ{9MDAb g|ISOfti>oK_UVWTZ>vyST9|#4b2D͉IӅBh:;jyuϐ!rkD2߃Kma7;zAy/#Ai F1}6d;{"RڎE sHJc$$> ԋxi ,Gi" =M2w=m`qe0xcIJ.ZbO[O9BAZ, !u .`&)^zKnj$/:čS ysQ e 0Vpo1[,+fi-99$O ZoO<ƃ<(݃6 أ̜5R F켊&n5 LB2KTDBV3/j&s潸OOWlnJs*lƾe Nq2zpǗ &Nœ|F`sU;Q`}^JӺ?˜JxGTPU&g!+8q0G,D_N#ے }ʠq.W_Nc\t#|oj7Qƫ2<z }EJo<|􁻁tՖan^S<)k2X2?xɿ s5uUeQ{&Յ:1I\|G5_iΩV{}+}Д3LLa簸HUh*`.3@^hIq@ZR鏨]m/ S6IQ^yD6$cUXCSݳHx/2wUhbV#R h멢oufBܢw9>`~§YOseX= OI? /O\T΅f+@,ϧndCϕҐ\5Ap m6@.9zK5ˤ^8톬$x˿!Z3:X+F{/L4 $0wfޔڮvL |){9 eůZ$ һ䟷*NldErvXRz"vsZAiY'T/؀W㗸QQA8fBN荄5SXE'@GFeڻ;iK@%,0 &i2:Dz#<'.",i[C%W\٨xmf:k03rC|j{2~jo[ ":;b1yfhن!?՟lK '03U)wPK9jS;: ܋蟂h8Y uC|kW,N&E }wZxet#gcМu Yoqa^!tS0vk.xp`=n-v|٧gYela&OiYi=஌w8  jnٗxphӥh@@sM^%ߣMby{ "D ]oI%7ww.+ȍʱ|_ ghl̆U3vv(OÔX$<:VI5Bwv!(b/eNQSA(``4{+P;ڿ$GgBXAPݕczԟՁze#nSjO3vEP~{ByMP5$п86ړN*alIFLuHM5.CC$nrݷO\6uif96m,9 [R }פv=L)Nw戨DgTˏ[T?q/ z{SeDPp .=23fѮunkF,`E^[><s}3[ qlԷ&J%vEӲbSE,m'8u 7둬t1㧎K_#͏5!AG+/%tMD[^ßqAqh6@tП*>6:Cn~ڐf!G?׎ѓaYl`SKãaC9:p)^.Mq7Nw`p:H"{,Va!7/f++2ܥ/4Vd @{IԊk :#d60hւWhhHZ0Ņ}"AtHWG%:9\ͬ (lCH^ᒵf6܈c`(jdYexP좁'`Z٤yReouZed?#CF:Wa>[u M-.&m_F`Ŏk: ӑ#=Ze`q0{;aCuن=a9^j`")T:6w`ǐˤ2c[9 cO̳)+vvF 1`6O.BbP(X[Bؤ&3{2vQy~Opf@nWBҗNn6e[% -NŎVU%NdtuW('er{䎤T`2^Q~uʃH+_-imC{X]tlt_Y>d\́EȀEopCu  9VYyԂvϽW^S+UDRWHuJd9Ŀijj$,(}W\F('j쿽r(7mjXM\(<%\VcZ>={d\J#ACx/:H1e+[ļWD?5V7h,惘87 /*LS?s vWAҢʚUf*WZ$no[%~`FEdz"kl,Lmzԁ_;0d:a 9ÝRn[Cz({XUQ%Ein7U$`/ư{^z.jDEs3N.;{-ڟwՔA=̐T(Nي*1v@XX6kY@~ Npl.Yg @WHYr.QTOKBa +0(Ux~1"@E y  /@se )OmXD̉t=SSܤ6ƿbDBؙ93`4d<%1s09Ƴ/$$EA[Q?]>$rsW0%sډ=5T$KR ?*P Yz\f/Kc|>ج3 h^}YB FraA~iZ3+Ϋ~@-fKfo;U9/ Sp~Fj8nWM*Z"Zg'j$+颓e-JVX>DMw./eUГ9i\.ĝWmȜ3.{ zjw!GEd&`rT,;\v sg)('TLc$P{,%+reu>oa+YFw\F4+xZk_d3ZYr@B'oLA߄% Ҭ;goo? F"3/KǞ~k\7cշJk`ytĮ:8@ephv/<5%[?`9 aexf`5IǙ{ JGy/}-o/ڈ9{?an}v9(1Բ>/I#Dț2pc=V1"M{x2-ʥ\DH 7; kL~.GXRspP(TbI2%;޴FCלVwob pZ!l(~nV!PAp OIͦX5А6Xɏ\Ѫ:vsb0*!cB@.Q:2@_&.oORoTE4b NUafe #9pCY>nS w27H]̾uުPg'[>̠o:療ɑvLɈVY%N3Yݚ c ܀ry;0hTGl,{HŅ}Nŝ,J0Ign攳;%MHj,rOU!QZbFgklu4k4mfƝWŨ_$rHp|Rډf-, MP-1.1oi;#VNC.llqHJwP1)g TGP&]Kۿ.4}$]cF(NDuWs\y!W4ƋB8$ѲTO将䒴]1UQҝ/`;9wBq^w !y\L+qVM9x05eX[I -d*0zWPUJ*|mIs"0D4+uuKV4c9rk VKZzoj[D@҆4EXEO\ Hê+b@qAHNOQ u1Z.FG g{:,n$^I֑*_wsA#O5UA/eq"cf.d';; Ķ*Zԉ(KA"Aj~9iX;j $!`ɘ={m2vEsPc 97/LV8eA/ v%png^Cj6Lh1?(7*t5XtNr<9X]M(z{5N7(&D'SLK1\|rwO1)80u%`^BQdX-ߌn6-JQy5$)[WC\ijv:bd2fĽ^y {t)(zw "= Бa.8]n`au amgT%<4Xp==qr&di6->3_I Unw AOiCۋҧ8 (/Qp)T*i4{O냵v_u'߫Y?Z,km)>+2+@+4WvW! tW\~:Xytpb/gh2~)iO4`h2Y5[_5}1Op+PHn(n3tLNzB1]>9W~V`E()]Rsw?d $Fv} _-_5K TcǗq&*e^]W0zj0Xm BadejT>[e@pmT"I~b;мǡ2 w&GR2Th6-UI>c9 hO49:Y5xNAƕB5D9Scϝ w7#]⇬29:M_Sdy9*Ε ƢoTUUwk,ǭxĊ*ODԿ <":qV L'Ҟƕ2ѨpZ2:,#,O>E_-Us_;AA/o;ITĤwL"3eq͌}dr-K,ޞ}S15cׄa@O,#ʡЀ ]/~rYgp~N"rLdmz} rZhU[)~ —h UɎcck1[p@2w*<q 8y=(_/a|u:*0:^G7ތN4:>Lggg#taK dsu+lW#G/_t}R1R^dZ!%MV1LMlϞ|?XuQb*ꯋ5u3et? _^Da|9;"Po(nYqDbܷFV+ZTrJ>~//,JJ/֔yAl4?u5¦}Jѐ U,vﰟnB6lږD-qQ:t?#}?-o6/x.έ(2X('ͽ#"3A8JmuBGr ìF'V3#rwl33) n|ZWa)&4K1h֚kyİ;s h=~}Ji= k.,q/g#趒 r$ZhDn5QȒ;3AqDjԤ@~@g ?@ccJt&Z n]o5@0^FYmK>`|]m6{jλ=+x#I,'_Nfp )12_t+'wYY-oP ]zߕI.Mq3H}݊#|oW5`>Ykxb+EaA|y՜g=uku2"! 93\~pME`>|BLzR>C+L=;wA}֡@1cۍ]E=eOx0B}gWRYmwp[YF+LveP`>uKHգJ}Bt(I?*u齙Km}urՐ(9kG|< j %8dWKMOi@Ϧ<"3<%3JEYWcdJGt 73>OҬԋ&)}g0b{;qU]R jPͅkr^l:T7e|wR 7VC`50 /U-RF b8Rm'L {/rsv%+=>Ao=ƬJ&3ٖܺ>ceSRާѕQ5rTgW'2L`(  {췸AЄz8{X PYlGOW)wC5Tz#16 zثs׽f-HFY#@\sBYFm℞M; Sqj2R[Kn@( 52/::'.N2Mk~yw[2 5dU_&u,~LKI5 pq 5)h~*?|S#[+pmX'wνdBy~717ֳ/½ =bHË#o^AP7efDP>21swVx9 VyZiH[WgҏZ|Xm@Y"{aC$;U?b@ް7ժЯ7}a=u!"bإ3dP޵"f;T ?kj##9jI 'Ϯŀ+pwOnBItTUNh0Ub!Ld$2|>?ؔ8ڮefӟvܴu_]u{g+E9Rv?9)k߻v j;#IߡJ‡1]FS" hw@ uht`(;Dʷs @]Cfo*gs'uCL:`'i0kl,z۬~-&!UvL<3QO׫ǪbOU̶Q;~zEid2F?Q>\ ?Ւi:Lϔ%Þ fqeG=HυNmvׯxGIt:܀I&P (1{4^j#\־j3{I~ 2~[ ﺢɣ ( \e9.fעf]b0_zA[y]ѫQ1֗%Z'U?RB7p[%Kyvc0|E Ӷ*r*9 ?"cfc 1J(zrSEa]1pk͒RAX@ vKnրVD?df'H[V?q6@Sɕ57ynJOTUFhx[b@2(j_I`*a>pƵ !SSD`O&6'=kK@' sZ+asp>D_% G폚=DP#|ڥw%h-_5mM Pwx݀<3mL ++yANWT[оcwۏX}+Z @Pۑ80~[ l@TIR)pOMщ߰ y +6QL1 m'l`'|TJ}"UNd-x5v ]YJB?K6.1, rPM3]+8MEaE|N 3/k {,L(Zpޥ?cf<Z0QOLЎETXzt>)eL4!bndmOXN/ 9j*n.^f eD}U C ;*仐/Rx4%i;ln,ˊ9~-[IB8kyԑǷ(˭H4J*Y5ůx1׍)3r)>}T,ɤ̒]kͰʍ2wmFE6=m{4v{# 4T07 grSn]<) n-%oۈ$%;z(+&8KD*@84x&YIX4.gu)&R:"ּ2@GC Cq).T=lzm3#3kpV&jAkJX*pᯡx6P-m1%[tR!ۘ^[;;JFj@3LxBC34EaϸֆZWe:rL &K/S.g?_2/V nJm;f1C9ʥX2z 2R|4z7wz3ưU8Ɖ66Y-fh1fbys~iHWO"R# \d4Vou?96.-yn?>#R$q橶0nnl2'1GY͸0Y8vI?"QZ[uGqVHs}'8zQ03RHHD 뗿1#DjЍ& d^/yZ>PA*J=S lä2 x*t`}C%8\ _i]XN [D\ey"U!O>ӧ <aor#ɩ Djj#n*?><*NEM/CQp}jY XU#22ϸEA}Kv#zO)L!V=5ihM͑Rl>Z;Mh#cܶT C,,IV-;w5vl5# ҡJԂXrܐs n]p9sGC`*2ra(=3 '&P0tu Ya#x<:FY7Q)7=BX@U-:ͅfZZ*_p E*:/k${N3lNYd詹janQ+]aq"Up5O~ë5 tOBՐS|QaHvmli~AK*H|ϱ a]OQ.#Q ~ic :9٩XGPV:KΗ2XZ3rBpckyL>=MsFTֿٟ8w)TJC,7&Ѝ2,Q50˕{qi_:2Gb!-1s* Sdq݊ {y{"3>O|Luy,- ͻYuobd| Un ޗA Exm}K\Z!yxK1;?IwO+/ƷRTgd4MZekڏKFιVw7S45θ0EfGYGk m(nT~*5'F%yӿfo.payC#ĬcQDXi1њ H6'*HOA0jT wiFcD54rHz$"1'ʁ>Db1]f>qG:Q )LxEvSwjnX Y7WCk՞y`kQ=tL ft>a8ԩF TˈW&NC" v)u@0⿲RCxkp2lZj^t :|;7["rP'dn{w=] %9gpRJ`mHn Z:0ѸT-K>9L[phwaG/N}V0={YjG Cl~aue[5v>l{L1- R!#*xJL][?X :=e,W<ޡFqq}̋["ο`#c~j6i9ߪ(3FM$P21-wFZ`W$k/x>[FTO%ipbmB60bw蓣ø*bH^έpjK7UAI#SL8锭*XoX lQ\gq4eoY)]f {N'H0=NWM=kuu} =ar&hzYIy.>+}yD5CW 5(R}d(I؇̨E2Dwi-ߝE:CA/@{HRmz %S퉘'**䝩.ӨC: ;Ln}鳓)PnۦO8(l1ٝYnecdɡu;uаV??G|"$Ά0WY]0CBC,}\PiOxqo>-~N qEh y jE:0!+2fEE0/N`-iipz}LnDdeCn{) %u2c.x]YjR"4wNRB"[zÅNEeR}[ kj1&O'_UǦ s'eɎNׇT]uNm@%4"x5!%%-Zd7$t0=9p]cOM'͹[)S]ܷvOtZAnZ %<7wO3dPۛC.@;jo>%=*~)âoT;oSM CGT 2 A/-EM1ֻT1gk!8 M@w(9J)3t|ACu1}3\GL wKJm,xNݟstys09:=˨嵬ٖ=flcKMKm.гe&pu=eaJsJ)j L˖${|cu8'AƖԐq.c`aAdzoqx@iX>\ۣ>Y; HbF~̺]ufr7r/2"RwƀwJJ$hKcѬrXo%-`xTӭxc ©o|N#`|ڀ +>.`NR\g]XoO׀&n7 Ux@7.dc43@J$vA;lp&TYRqqƜ=zZ?ھxH7W,LO 7YjOO/ERTBH@TA)

DSoZHDb/wYyҎ!οgLdІGdp7i8P&ޘ9ܟ8@G?66r[ AC9z5.?u`d6>1;t@DSwgWy?<@'(ʉXKM׮Ei &u.5:X.)pIfT :|pyib&ō ED&m rby8C]G\\0Bf ys=X9v,l[k@o~/M̯`UDjDcmZed9h>5LIm&ymytqYC8,S)}ԯѸw>ϲiJEΗ~!iDxd//[Ib 7cQkQ-U12zUJW&,@2+c\;1,e kg.Q3p%Ap)>Jc7:diXq;Ӣ.4I-rԉn3Y6ϝk}h^]@&Hhk7zgB @CJwՇZdbKE5CBĠZq1r¶5XDSqT1P Ǖu89 ؜˔G' '='%v\w,%'5TGG>Ov-7ܽ/B8!{!U0 8^,.<@U46?a `z)ъ?}J :jf*$ޅ-B"Ow€4O}ol(V| /w6dϏ,O5BA w@7r{}ѩG85I};w;B#~66x ٱr™{ >i> !ó:%r2I] {qیLf} yw1ك+*_K\luUV.Aa6MQb(3Dս2e#aY+;gP|1C[`0u+LIE2ܸT5-!+?@ԺQ)hHc [=qϺ#,[)[A s|&VTYk^&B%],oO+{z 5u*$5gI_TFɘڴ>UُeM=!w!ڀU>y-Դy}qQ4L-[v v'z$*%{ޡN/ 9sV|li2Djv@?|:sr SCY0!G!Z?A&_b |[Uį/z!9. MLXռG8I6 (UC2"dc%/h`=kRKwl }K\h$:Wwpd!憪J򾞇rz|ֱb(-sYf*SNBKhe2\BQMoL=Ox_3( d ]W-RL[|_ j$l?zm\WbA͋1 '0#e^H9`ތ@ěGȧGwiq8GDu+<+]3L>fAly۶Z}Crӕo{&ޞ/sIVnZ&]Ġ.ZP;=F&uv_Wsm8;Bc)$UE\gFz6ceP?L%A?BQ+85+ Ӹ6}GfոU,8zݱ)6 ɽo`ͥhD?x V)@2KfJoЋ1pt76Ҝuh_CMyߏs ?K3IM_l dVs?\CF?Sme2vt%Oz⪝{^@MR˴FC(CCSxtX=ge1K/RՠY@V7Lj"'it:!KYC`03 }zHFSQ 2d=pFݔLEIaf(CG Zn0vZsc?!ښ;I4}ulã@:~f?@e6贸ZIs_݉FxHRj5YSdqUq*ӁnGe- }ji3*sx6ldEۉqƜ:QeX ™^A"'KJnx^%v 1ko؋6,>@?_graMN~F0vNuJsZr%/~MDlXPqS`0 pakLOul6A!fHzJ*0O`ӡ |uBt*# y=y */ϫG(z? rTl vVI$1.kTiFjU!ꨉ==} m{:ּӴ}s߹Z *"DHc*GK7yR\:8N!ܣGɃb>J&I3-xanS!-p8 sIv= YF8T)h-t)F_Of=d$M^?\ g Y,'Qt^u{HszxB+ty."o b$3J*L AX9gmom@2?j΂S2@7MMwۭW?g6s '<,N_r_֛_fα/0$f_ ,,^]:r+څ~mm{G \%\.~~co|-ka1ABupb^F5ښ0V4~`@di SI&xˊNDگ:O@RCR)eJq"@ r_%hx$cA)=DgOIX!x{Ib&zY[Q:t4.ܩB_B/"ЧL_g#jN_ŋod^יi8nO&f8bD,`n3qOkdn454> OcHyv[+npVN| l|d,|fPa CU m޺ZFO[J<=WOxCir"FI ؍&̦R|2g1?s8{ ̐,y|n?Tiggӿ  MغyH.7o wXS4ȡ.9_>ɰHW@|ykAr#OܓYd\8S{iJX7a; NA `o5RΖK9P QzJ[kA'/Q>8wF?ss5 K +mP Jln?hSq~~v|y"S"m8Pe|g*'6dz+ X?ѪR1 `WxW\|m%J.4OA%sxޣ |4.o9MC[q)JL|^p_7bP yHW٘9$~O(V\)ToX)}eF9Xd58qmJN#"FyQDݬe*0r "~Ƿ QoUy΅Q"ʣkq!{)7M׬)? Q [zD ׏6#mdE{G,J߻/iarROͮƭ5FK0+]"$YBJ7 oT FT[cXs2bf|LB ŽrMLa Y(>VZF!zd)j:)}%,c<.VcVC`gU =ȀUj|\ 5;h r!X %=TiSBAyj!W0Z.i90zd¥0 Igc{~۴EFX4HC+D6 1S3Nx)5X--'7E8'Xxh!hPT_QXS īnGCԜk;6&R."4"[W6A>sR"rx񌘝g>tP PwJcj#' 4ݒ<*$:vӏ ,d%diYCOu7W~At6}]*ژ rFNPg/ByUBsJWϽK>xЎxHL{ VD\hmG`^S4o\U(Axx]Yr ˁeaUf^LUk~ymV+< ? 4 WJaڌârMTuˇ. /DQuOB9N&cèak'GJMHf7ǎɴS+z8{ "%*~E=59r=cFxu6#QǬO|]/hdBh#$- OkOvpeZ&o ㉚9zWe.3&@'p=D \6)$(QͥK {8w^ĝ mmt ϙ4pBlW_DHnƥn4{;HW6}KPc ('O3Ni;W,GB=.OTF6D(1P9S]d2 $`M(lFӳ4e|*BW]}(U5&uyy|vo`)żkN _E Ӿ[-"Dam'SW$rA?:RFB) ѫ@=-3zOߥC*&-}c(=śB$ %Bw"V|۽I!cik]qc'H1K+ J+HJHJ$8IkL=.nmL׈3Ҍ2{}`[N!䐖:x6 &t8,9xtNC)045UȞ2#ZL-?o2?KWcIY"~j 39OzIߺ (n]DǼR 0>x@-:)B+RtҀD{HcYֲ;-҃|A*j042/Gd/>M=N û"n+Ŀ7L7b Uˬ~- jel~,afx:lh c !57I>6Z,, Bg[r3% Nkygǿ&ly('>yՓHV>: ~֯8o˟j0QW)|YҬ ˝fNIcgaqM^V'ЗQi hH$m67OM`$ I ܢS>:Ou8iÀ#¿<'\qxX.Bܼ$|tOz kn w1#a_$m56M\zk/@4%gj's+0~bp&i;*:Bݕ$Le#Y.Q\('`دq&:Ŕ}._+\3x`~;q r/<;Ʃ^OФpP-\p2(Ε-ad uSצ#P.;@]4K1(<cpxy0t#<ۓADV)'뽌i뱙O@]u@%<۠*g u"־4 HߑŢ}*,.ܲZcϒrK}kG^ QCE" A>`b0^o7"QJ?c?տh jf[2D~QۀSU&G{t$*v0{"fJǓg%4-ȦUSf n Y}'xm۹IXv(4ی_kc4ӧ.̤sӰbۡ#@v^s{4{80H />Js: C혟$X8?M[2b*toݸ2kHK%pϔR="f=O VYK=qyoeȐj<ΫHbzk˞侥=\B(w-.[oBo1֔bgCWMI ҾeMX3rR@fE9xm~.0Lm(] ο>B}_lfTFkm"-DXmI_ȥIfM,)hW^ <Z_J)1>]/4!J1Nj}&/0LUP|E9B/1#ldBBx'?1pr3p"Ǿ##۔Q<K=u[((IDJ*V¦@2'8[z@kG7z<Vp`n+EsD58 K3mSu Lftғ5%5Ә~`K}2Z5Ψv`bj'oLp?Չd) 'q&OulZީ_ae G0!- K.v5:XqnUq  %.R;{/c#9]%:fmzHVl.嚊Ē !]#.)~[Vʨ~P1%l8H`@ ˏ:3a+,V|Mܥ٘#Q% t j,*@t 79*|'>,dRx2`S%6h.NY05QCiIՓmO [_3p\rwʐ%͆J2#Z"}f>D$h"mŋSa-C K9&`B 1Gh'X88aqC vwiN AƖHV$&c+ K6#}ӎE|Ղ=w y++tlp2,h=#pØ/m$ؒf5ss9Kvm>Є&T'0D-y6?O`ߒ~ך7M=LGD`i%y!uӚjȓM"EF nz-?ixƔAeãUկNR3P{G4x1?A9B^tĐ /;_vÖCfe/HEP(.n ڶFOX(l 9_V5`vI <\kġQ7|m>鞠Ȑ)`?[xϡkabl/Pm:Dio;0G.?','_nC-;6n?ACkd -7 QMSp *n;!" JgiKx79%kqݖ3 HP5k{ P﹣;gh vپSuX}>YxO7}eeI':vʟiֈ+,ږ+t B3=M.vLc7 E=kvq7ꛀ3DR{{)eAk3~QO,u=EXНɬuG }T~Rq5WE3^ ^X"lr< % MN6%EY 'Df,wE+Ov,]Ғ?DI.,>Zy!e>k+"[FMB`~Pj>vlN7= |ȍSBSe‘E =;JlM7RƋ, VOO)Щ8TOPEP4qBλ,X$|Pjk(NV;/ѐGV;(Q':$ "&gضpgr_ N`s{ЮL<pF!i1rᕤx|~%J 3r7\lB0M}pFc4sW%E߶177WLJգ-J?C5퉴ĚH`7*<ӟQ{ sAŵ?Fſ9 XMzS9 Z:6<iU:1n=*(nlՈ<ha_ь `U˃o ^O}aq5 F4tBγ>f F[k~,#bd eYea< <Ə#bVm}؂S/:"z&cwge@}{e !`/JA|ҴEkwU"7's 03LK}uV6솉(NcVfC`fB$WYu#E4完/H8ʻ2Ln(uR|*zxƠ D0kx&)+30q(KBP>ߋVvޯ/X`Em/@jC& \G@*Cro%BZ+%bȠc+\& o4>:5)sUSG51 thʓa[lS%#ALI"6b4.A*\+`s9O;鷱d=j!uj*^z2J]N;صc.t6@ YiɞX~"=Ԫ/DyCg/zą؜ )ׅc , :RƳT`D7qs ~Օ#S viAFEiy(w]&lY'(s޽el<Y!6qDxbRd秾ʳ^T!Q <ʃY9T|,:.Q7aQh ,FQZd>>#^]I//cHSAF-4]7Y%CurM Z0ncb_J .fEgMgI\lu-W n`䍙ZX@M-Q_rsW>b QmE2twBޱl9;V>Φꙸ>}b3[井5Dԩ/$Nxg @Y$T0ƫ.}(#kۉھ!N' F댉BmRY Dν\ɅzaUkt%ScFo1f{a ދ%^e_:T7+Sz b=CMe.­khZzDْb RޏEUT%𱚢7'#X}Ťw3ZHUW2pQ +;1Ao ]­MqV[jUBݴk+'̘S5QC>$ST>pY7'E5":J*ą\Z *l6GCL۠8 ԧR/@couc h{B!Mʑ,I epieŭwT1te'xVť傠5N$t])ВEVD8 {כDLjYQUy9U6 No.|E2:A ZB,`{իTAV]A Lw\`U*ޔͫ!zJgG^u %s OmYabk1[X5/PSU?R=+Aύ)ņ&EC+% h/֫|0N#/$)ōR+ƨ<oиY1x.WIda y>ו@8C_5ACcA-G S\oJNl^ɰ0TYiu4p )hʛn50IA+DiZeGуbPlo ,ќ L #Zvr oT&Ja %-6sGzmء`ٔ ,Ch00܂~-&Tb%)rbv '2$UP<&cȕItt Ue%4gUA6#C[dMg' -e$m|C"* 8jZλ*^ mE QGvQ*W1:GPͳs7\mHQD3p0> >Ct/Zչ~Qq֝qu/_Wq:j- k1Bg0O40Ȥg1^x$S!h|z96زP!b>hyu\ӏ˷48+|9g=Wvp'V|6N~@@[{Cs0t6ʌ'V^,Xsm L)Æ' :4N[7iݣLgCm R$PλAͥC`8=Y5'EMSY%A}v, !p"oI8k Ş|#"}(fVC1xekpP<(n1>P\dS.o"4G1~aj-tXZ39~Z8jH%uzzG'j=W<3tkk? Mh#8#I?&y)\ z05mv/]9֯Wc-9=,m%A>mGBA?β^u rq^3\R؍3raԏݹ+/ o:{.͐/ѽ;Sxt|?0p'xvPOv^_N,s}i8@]]YNjLkSyI-s%T*֢$=I0UզÿjSf A84Xl4͌iӍVu<hgYїcBY̏)0+j9a=.H?=__c~z hXtni9a0O0e)$ks%u'uYS0 IIg /SEEna+֪g|jӃx߶OjV>A$LD橽 R2o=;6z=ϼp~ňi)ih롪mWVYW1<DZIl ׷{"b (8ǓB -I`KE?#$ px7ak>Y似遮:|r_Uޞ6=m'!M+rSJ_ ;k;%zDs@|{t_0Vw,40\R/J0&^wтs"(s4ZM10HU䗽!9V%GRMb .|~1nEJjOHY/ b 4 +PN*c0=Za5Ѿl.~ji,%}O37!>Cz|H+^|uOBxlץLVEp_\/:@t*'1jF/^n,mrgn KtSCPsz]b>Sq7z-l!,%xF%&^Ӽ {^` ٣ɮB]oYk C -~L&k#?ʀ~/bB*L 'X,! C%P&2]jB.;pZ?A!?P\;a"}'fJh]߽& J룟ok/͇,(m=9QUx_JՂO+Pbx(ѷ4HIB*`DNef.0Od FV PP+֗u |~ȝ! XŐі`UlcIŜ]3 @줴) )NcS$r}Hv5)#-2*]AKȚ^m ]+?GxޛKbdu$cځO%J @k]nzl,(UY\ 2GD*Cʁ\9rLE1Igsgfdj1?frk \OHۀ*c3>DAM\ՆqۂcNwǹǑ^=4p}xwcxo{6!k&bpP(WFDeEƿ̓U9>z40elC̡r(ox~% n GłAa0ABT$_Թw<z&ntٙNeWQ'eMIil0nN4BΆ Uϼ$}]T5xkz jzey {u݌t[/񥳚PhҜΏ7shÑ k3p ="2> b6@fk?lA! |"%xs0 mh/O]>@ݴ&`5'*[^7b!+C7dB|isF,E] MBzv2 ^m&+`qœD?hQ:̧A=?xif>"_ 2)t }_긢~Uc>!x59Y8v@䧀 ?B0g]SWq+י] >a}J| pD)[!弶Ӂ\#τc M-+qv㝘xcs-u}E l)w]0)r4kwAwVO+/uM*toYPj$Z3MBl޹_ g3j{˻l|y1&׆OuSQw4gdž6I]2%~oG9v'@5С+jS?lw6vM34P)@*tI g?Gc$r4_-)'&Q'Iമc ncj[x\zю}<R@Tc\M AEoهPh:8cm!2h\'oǞ'8Q5t f*ՎƁ3NIJY4?|sEH8tGtӬ=4lnBs1~z[[{~׹Jlk K-ԬO!66O쉀r7)[%?Y~?jwqcDR ֧ ,>qymv~3;'1ljhf^};%<~mi Fĭ>e3P(odk9tٯ|ipX~-f/Nrqn}|E&ՒC;3EyW+XA4ݬZq8AMB@)v.fJivv 16̐ >K:4.^7z y^ֿɤR@b`Hy`S;Ŋ`L A4 %+#}Iga5Fd4h cz ݯνdՆRW/xȬqfJQ!]{. yR bnf=Pn,ot&hj%5,EZq&$n* 0MG7X ޿O!,*IܩSPjԥ:ņO2G+cyESI%x Ҧ3RVXHDb48)*=tB,[ +7<;u^BP!q5#<mL!#MEyߚ0;GIdd0t)^joߡuo(xKRoc=dů(f+T?0 A/!>vIMHě1&X3E5+}1f}GTE.bIۦDzw@F%#(m4Gk^mc/1A4@P  yoj%Gh?Lv=) dZR\{3{ n2ÛB;(nm8=.UO DžWԾ"m^K;vkep3NOB^dEƬxt}Sվm$Z{ߢ[G,n9.PC]TkD_;@(t `ӝkԾ װBHۨ=M3ДU9ͤQ}16l?/'rs]O11 x4)"*TڗÌ"n%~!a|z<7%ַ+Ytٳx ?4չ@`y׃㋕fj10Ǟ)5*4%̽Ac#&g7/ȾU*;нG1~Т!c|-_('vDј^T'Pe ?ĪxYQ١_9vߝ6-G%}]cC#̓K*Y%nۡKc{NÞL_Ә$?3>DŽf#](hpLՙZx-&O+Ug]W|G;h G\[p0֮™y:~ؙ}Y+'Xgte5Vyf"ol笲Vn1M\ln_І M ]ܐG{y?e%xh }tW%yx뱺_p֥# y )'j0.Vn@I/^vz1W?5zIG ʰܪN@Ez~L=P:/qa_ nx-0xAY)@w 6hzنÁ@Ϩ-typ,3u9:ҾQDLzM?Z>c :T b\5EhN@˲8y0`a9)>|EB,٥JiJHͬ}z*,ۏ7Kir/EZD@ZIb]F:y@cYܧ *: |TpfX1ԍ}śS λhq6e>QaooYWiO_:".m~;b]:;e5|$MJ,؛n^| f[7qf!$_n7giuwYY[ȮCvP&Rj|,`j !82_h-y^#*I$qj C 4~uJyv>R8iG[&N3ң:cm>%hh\NXe,Țeװ>g]4s3^֋<~/u 1 k;Up}9H #Q:øsd6!I6ځJv_~H*<S\?4i DuuhR҇L޿o(R7Gރ:5$G)ZLD1vst6NEv,H)(*Kgᘗ.PUOE=JWaYNٷ[ᯪV&ĖlL@D\쒌_׸=SE[ L:<ؕ)$/x;7ʘ%o (( aʦ0 5_u"jy7ۊ<~$̊*3 |IofKG3ҋOkPȗ|ȥ'<\=o?9.+T |f3rE#@dnzن^o]P%fpgyz)< P*͔gN:pj+X>wA$e`OS\$ꨓ f0PA},¬l@T:yB{4^Yk S/P$)G{vO+maò3,EWmM[a#/Ul=@V _A疰ݠfkK-~SL.4gƆ[s~;b[dHc<^;"&pI/SΪAqx`́ (® ;LR{N]oyreY ǩa csm.R i"rRCF6{hq* oܸ c::.7sUݏM*6ڧJ,< lkE!s#?f]rPe=I Ԅ[;iTǔLW*=d=1 6*oLAIȪԕ='X#V ^@Iθ_L6LpHwcѳB($mȈ%eVqrAnDr>;\f 7/o8]d1Bo<>x.p6Դpfp^;*vxbӑҞ 0־#+c#C>ʼ鋆KVTz. ɍ8jۢ ӏ&k:P)S_W GkJm2[9(Z,O]TM-΄Uҟ ׿ߔyRp_(c5Ia[)ky:+v4v"CEjzs94s 58QZB~vsɢk w)cb"lx&Kc!ƛ:s%ea,R=@kpe_>9aY⌬. 0Y}q f$iv[w Z^WkgyuHM1% Y-,Kѽ];`㽜@Fe3B-$N+2ekz$7MG##oª>RL(Ɛb a3[= /X*5M.uXgt!߫ߙ"u9t- WTa:v0R%{aWRjt2)],Rb0SK gU?x9=_["%9̻&WcS4O['OSFN+V6߳_+tŞ3#LF5g foLkgP> W8Ĝ=ޗ7u7g)n /h0mWʎi}6 ϭ)nRt|tJK)'q/X"K:$dfcҭN6E.(/#@z:;ڝM:C Z~UJmΓ{ŕQ+[\Hw0dQFA\c7"I%ic͓i[i,F:O>x@R3a:ChN_N3K/_ (;ᾪ,j+WK'LZ16Y0ݲ)6O?.V%k*]Eh ezNadƉ"LIe ΰY`]m'Z+{u tVwP$1C*=G驅#9(k^ޕTҚ<7:BqYt߫ VnUQ4ٽhũFͣ/ Z#1ӝPg ]]tWP,yjx8^ c:D8 &{^SLi~0}F Ƽ4Fcd3"MZOsUk ߚ_sl1!cQq:D?U/{|)o]Y5Ofx 0}o븅?r.Z쥃q%(,l[Aͅ)zPxo6bU1'½Yʰ=l$ݜZIDhlZ @ͼf,j̜fFVϺ0+/r֝Q0 )T2ȏ"K!3`DVPtgQvLv8S}%yƵZoT "f/'R2{TO]NǧG%.ˈfkh\zF栽LK((sfYA)ƆCstQkdm LmGM?<@K Y^[2"Xxp3 goSX #.WU(r8y:]ZZ;~ l*+]\ lˋ|qew?D%yT1܁»KtY+^*_)sh&~8jMM<կמ'{%i]Vvf8fķȶ awHuC',͍2WJ Ҭ7&ݨ [WtYlt49H}}+6*^,V\86 0g[U%ܛpq#~ņa1-] }N%]p9,́ 5i[$ . tPz6E p4ALUᢿ5SQyڊ -QPo mpE//y?wkN ~-&HF.Eulwǵm2UjK =#ru0 &dBjaҿpuPN" _T;kvO*O;FOauz˜3, o_Z/h`q?KFM/r>)t];w,!{GB1r E,uOz;OsŊN֤ DrKZh8@gْnMN d9k( vޞ}}hHCcӌ o猞Mr}98Tsesri "UCEaDMZL [<"FnKd۱+2JxNQS *bh<[ |X]=+jZ~XQ{$L>cGUGRy1筄ݭV:Z"$rx@̅>)ON2R * e \NR:,*@ceiu6;Ћ :C cxK1NO`~ ,vߙJ~ ")LDaT}Y<%0E)c !k",#F4|e*H0sgbB:/{e v-e-_U]m.G\llKLtHY_p47CyG kZon|ŗ="AOF(ղ-WR‡eʦ1 N`+0yؓ=n8(OY22#Є;QB :vϸ7stהRP),(m-w5md$H3]o4zxoc;S[P).!SG{1L7o+`[,{j8ԶLJ+sZĠe;|/e2 =}SxRʦؤ+g|'iD\5׿HK"l?aSE4{mb;GEa[υ Ovq wY9­7$-85Bm3g"d EXkW9 F@x[!rΌ.M`&ZeҾrv,O yOh>`[“60mf/LC>=w|q?5BdJΠpӈh/EdМr$|N9ClBٶ7X^B-;?ZoFdg ϝTd gHݩ=空%oK~7U g ZUVh4;jt҇7e5 2L'@ʞڽkg6Э$Bƈϯc>WnԙQ|Rx/c4ZNzY'uhdBtN^ VY)48 noK!)0Y}+)Vkiٺ]mYIVod+nc9zRu SrǓ+5ߕ;[qZ'k̊@M/!-͔Z긝͓RO$3٘ANH%ÁJ)BG~#Fon7'Mdß1r3^Ӏ`5O7J3B!Ӥ彺ڣe&^"D5Q#M~QII[>N +acfUR% !5?ѱFlTR"%mn m2Dj`.݊]k%XqDW@?{S[YF cEmӴt#59 WA4U+0 ޞ.%w~\.1wdp ?o¡ө|*x`EH6m0 +?׊9Bhe90f9ܨ9s|Ɲmg+آVbn_AGt՛_V̦[uU$+,V{Zln[$׈zUUVf@G-Tu>>5q9!H1e1i?#`T>]x l헰Hsh6+Ly.pn];$&@_.%{are%Yx\ϻ1il4=6BԈ8beBI v>f#'{qݭרxG/f'9q?y:j&2:\K,Eg̖߰le@rss5ltC.ޒlZ]$\s8[BYfY+x8:쓩y4,Ɋ ZVS֡dZ-th " uxzzzvO_Z 1KA-*2v2*t4czn}lULDʹ 1M]4f '}@MAE2zLO#B2p|NSNR9ma2-$wHnzn] nRo#:/Xl68'8D!hhZI*ՊJ0Bj71gk-A=AiU=;pZ p{Ld=?/pnv9|L e eZ]d { 4ܗ*[: jb)s~HD5豘BAR4mٯ`Dc{]uU"+BT.4h; Ŧ'0ByrXn>"H5`E"n6֛qXs\{Esu#W;7Q8Io?12zNB{a&* b'wbfq s{$j'*Š]L+aOtN/ndX"qi#b^ \ggd;N7ˮ8t@o2c׍Eat; +u[*ZK'(щ, Մf$Hl1̌<О]PFvJ)?8$5<<ͅG.*^E2U:d5bxzr@5vB*N'8͸s،7 x:D ,~/'N6DHjzeBB-7xxv\g>BJ_5W1A-e: 06 ar7W39,s- BMUozzG8bl] ./den݂XgQI!A@Aݧkɬ6]z-+KbxCd-5 ҶQqC(Z;]O9Qn3hٶ;V_ I6P1XpmJ"Sqgjվ8]2#\fHM0qn҅jښ;e,S Χ/tEW84=^|V*XL{*86_8>$kCE7}F T.C!1Ż K Q)}nSQ:EH9a` 6'| ^[G

zmN52I#IȃM24i!hW?4>:503G߃)nVkUPg\ +)HwDR $UPZ@J3`]Th9<008<05P_ dCJJ<#tL![ ?)#>g5r8piv@CҶLi#Nl4mL$>*p)~Ų7qcrä O}n;ϓKcnM_NAvTOSpWq ѓ۾ _=R*g $&K[sȯ>(}esrP_'Ԏ+7/2 #Fidʭ5  ,bcȚbVl)5r-b|vƾ= te,uu2ʌIKFhY C L?Xdҫ N+h X$bZMh *$Qmn)Ҡ0aRzuo9pv6bH>Uڲ?4iTL,C[d󫷰koa3|v;JEm B1tރu*?2-%sOۅ4V-់Մ22eL$+Z+:% hQ0?ҷYbX5+e^U|A6@t](-rpM8@PCES;",d4O#J}af]ҹٜ=B g%wgӚ[{8?rM1]"F4SpPN nrGAUSc=,Ù$c;pYt52Ev|A͒Ь8Ӯ*HgV?f^*E~U]$ SaMbڪ=Q L$.BliʿnB_<*|81J6!cÑXRZ᝵c_]/p^MW[U.=-è4=(.KP-On8CT}N vpu 5(y\s2VGS$ mIjv J Q c4}gOՓ1~FD|34mHJûFuH[ب92Ka4KIlOVj@17}y,^AN A^-t\o.dHM5`>ej ЮʜFi;eiF"[?Cq7|hZPnuHGBq%1܇hLlAiQV6_3g|it^ nYO3{~wm1LA 80w@-ƛȱ\Dhg"zIicʢq(Q*[LK*y\Hk Z4Ta}J͑֟_\!W x?[K^nk 'Кefg7.k|!ꘝ(vB,[IO穠У%R#M>Iv)1H|,dsy\ }7 (fRѵ\&@&Hص{ah~2,l6&e{C ! SMߗo:sӑ;VA^ *]afwPEMLW'GnaA֒L1=D DR*z WV|@ܗ~5x`F:=Ow|I1;yhX݂ m%ϏBKw0tit-sZ*}]O(Qmu(`4՘qC1tj{0׭?$l%9tpнE21pNU2 a P(+&>cCsw{2@_}MDԀ yvyxz!} #k6W'ܑ.<~{~grCXRQBh;teA6CT}^S^!,r&'ʭ }lt@.܃j-=hV޴aEs}/i+# 3 gP qC {W=a&Q۱ɢ@!w5$t?1$n~/DILkէqt5*>=GmIe24 R&4X-ex/B:Mf֢x; b"p7P`%k{D)9?>Kc: W g=p\y`qVW)UIDLR<5RjUKMIl:YZhB86gP{E0pYfX]|vwc0?vh8>7l~o_+/Gߠŏ7fd[Vx)+DcBD.ři\\dI)q;gPh;эmE +pW29)J!#Υ'?dC+5LATu@DD͛DS3[ 3yǚ8]1(Mҿ c~/&aXB Cs4I Ҋٹ۵P!vLs )C؉3٩$NN3n()5wa4Cc&LVӒ@iSz ajP$XKD]{P9^1QƏn!:s 3\:0<? >Y-=4dvJ̅1@J%`mz هBИq ʊ2ɜzK¬`lt K@}o¬:maĤ)ZA<_Ь?"b )»\ptgg&lF#䉢G9X!HN'Il7P;yiWGSwhfM70'Zfz\/i*zE*VUٜݰHJP8Cml o`kdQvh{ShՒb{Rs6eo4Ã"4UOOcϐ#J,%-tH@w8hRl3rB rdaެ5ë;9fM]u4$"V:5qIB+qBj16:޷»vQ)@ӳ7rwS/]JG!o=WBw+II8pkTl4bG2ZvD2E4:Zď(L T`%DL8@CR.c4 VآN)<)7Jjҽ3H"g$xu?-b` $AJʬ VSZ̔,#\ iSDFϽZCٱ^]& "dy.ϓAO<=>oF|H3#p]K͜d;jp!c3!(Yi! eje9\O|VT F}6_bэ|U=O6אָ_]쭤M(Lc IQ]BOm]4PzsFE Xz~jb3ؼqwm4U1Gb{@\ ״Nʋkjs&'oQga>oSv9]{uQP~}>WLPm:ogkxH38UcxiMTV֖p(D>7rQm:_YM%X &*{-/l9;,Pެb>FK]ƭxMv%=I+AvV(DWNrEx_oRhX?qW80yzWk\TQS `ɜ`pM7p@΍`X+* 4,?cࣟPhȿTg\!5Ky"0<=lxG K+ X懟өO)J)ԷCd[->T Q:~\!"9~6 }WUfKQe*`rQFdȶ:S8啘_m_>] ]TQd"p_ЊAt5I#+Gzpiaky\jNf˷V#J6rZLpSiEAj! {^ϵ\qܾ9;mOJ:eXSEOX_Ja]K\.م( g[#uAHCZ[T;`B<v-і7Ұx|I "2:)t˯;nx!Q'߷+]3"lEw@bqoi=Mg vn$.Hs_ۤ55ϩCP'{ X2t399/f;6dS4Yva xCL .j=v+L켅$>C )>x9Pf뀟8R n\?7d5sd*.Fuq!Itoү#@1FreMǭHM0<{+bs}wµ)~UP*Te%ɷDE$茄%9`+f$zQq2Q-mth/D(v +T7)-qj7 | `֣gM$=LMT@dd9- w 0UW%eaAծe㌙YBp4vM)biC kf{h{"]SGŘ%1_hv`+R-clel ~#֜_n>t,6<6*1Oށ f껇@Gm#xō>i(L7m f+@.1`gb#?UZn lɏ5db3 ̼Q `TTpx~7U.mw {e}VyD'F yOE kW㲝Z?s垒V嶧RJk_L OǓe)PjHGb"7\G)4ov-XrQ|:hqە Y7jzKtg}Yk䳕y҂rb֏G<,MB2}K#cp9 #M>fy8("Vj'a2^aNJ).?xIDށrѫaVWL-*qe+sy]iH(}pO\!6Įl65NSBd'% 2 ҿ~_O dŵsV8X5*;bh1Ĵ𳇉Ǹp`Qc`cIGe ;Ƈ+VnJpŜ{W}jҀ7i RIU,.o ;LQ'GJ>zG 6߁C)%-d{&A#6͢u-K iXZ&M0Zu`ZYOz\>UO8y[ß1ҹTy1`K}B]{ǀUKeb5ێYJBό՞.=`4I!P=<.,C =bE71B@=8jg1IFӡ\,'_CJTHSƸF ܘ5.ZdJt4ïyY1or=g 399kD88*u\eX *6 {+Gbw'{=^;F\/c/W!cE+!P/'C04 |SK 9t>9D&>,p~shϹ KA(n7_Bl"īm3IcJ=W3 3Ol9 .d&^nHEӨFt DZCW-*|1uvO,Wum7+E;N@ 87lc9yH B Z<(/w1)IC3V.AV̈~b*j3X?~e;{Q\;f'8W1QfP^l!q& {=iQ X4}+-_ };~v~ XSxoG&YzKR1NXK#N$jV- \"riX&?]d 2x'~ܦ"Hр]i](%I2[Ŋvϔ9' J/z;!vaiDN/j|~¡܄(SgYZ*F,rtޥ 5{:<X2S#ԊqUpdXK!((6>XK:=b/<t~L<:I \dQr]zc_ :btK)玖:PE< MJ*ʭ>5}@W|rRUH&?vJ5{/d B_-PצYyZ) š:jrLfみ%Hy1w:J#< ZB.n%4"(m#PG(;ZBŌ ;K%+0]faSI{ dZ!Q"K/ נgڗƫ2|Z H\R{WL$$֝ ~W!oګSڸ?>le e %œE=Ar@ve%(pzpczoNB5=+t19cކ2D6-*7JUHhjz#2P TD0r*][EUVآwkڙQ(a: ۑ jE$hZ]@ug5#$"lϨ`X+)peNe.0!P?m_ٌ2P_ O-<>MKδOAO[.2,(erIl4$XH3AFLX!{'{1I7#;}02dQ{@L*v lwgL A<̧R/?9Z|!U1UhmW4`׾}59le_>?(Sҁv4tA%: 3Xia8FoHO Vʹf 5PuTfAc-7Ly='*C|;A{wf:a`W (_Y9AoY{ހv0 RD9:B*[g _".%+4Gr"qr"'ŅU^z`FuACG Wm0o/E%MBabFV1YA8(sjZnާ)g^H xV`+c#t֣yISˋ \~Cx AVzGEŊBYlBuɊ'r:9oVߋSszr@=Tƚi~8cR6^{۬3~}ٌ͡ʖ &^WVgڇ@*@R<G~Cz ~ B=?n"MXohgKUmci&/dp{7<);V~)V#d:gA*[$wp6 dY3=oNI@z,Vuւyx؝d<sDFjD'cv$Cn FfB^(lp׃'IrP"WK/wOG5SnG@:'ht⏌bFUhͅi"&\45;@`?<HcUj `[N xQYs\z%+^/݄r/o&ư+afҤHrq}[I˹aEEm^fZ@ro /, %-1R$êiq3تJ", `3Ì /ZfƝUgS;9Р$9x W5SK|Frqtt9Twar0?2J6ĪmRHES3܏[ݣg0YDRlIS]ɞ{XNKy]nTBT*b1ʣv@90u_$\T{'Ur˺dP)<1}@ACݞ%!&/LDٍ $EPu X9b]cd&s:5zCۨ.6&+M6oO{Ӻ4e2`L҅L\kU&~RM)5!0_ -S,4z3m~BCLTu};!,:Vᛗf+9_1^]WHcPd a8!k"917e_J0Щd^0uvՈ022F֛V\\JLnw3 H 47N;rgMsMz˾+x5\Dq2e{TCq3^ 3LMiRz?G=qAԅ? [ƩFDar0ݣgnqo qVIGNG퓝(:ͨ\G2zVzyδNayeלZ#-'ZGH#guY y_ƵUGPmenM ߮8dyw8v_ŭ:W}8 ۟il+Q^HSS+ąQ Y|W!yYehҝFo|:*<կ$%&(Zn\a $ē_6=FQUEj@s#>,4TpIhBWKTyYPhYu(Y-\gkT6@{](-neI`Hs+ښ!r O뼗^O :BM-IG,WHL mzL{R ?l߷Rӫg Uk%^+WA;&J$~e[_P͟Lu@!s_bpn vC4+ =H鮣I$*[Q5Z4/?<׈mCBޡ=س$PL;؆x)6/$PfEk߾QHI LF:˻j?Ke$ Q>M,#M XW<:hY(:0,NsyBҞGJ_9x_)̓dsQpYc!a6D;zprX}3ѓ:)jZ/?h\!Gyb쟝rtmΰ=nmv"_^)2=N*s _XoGӝjlJ^(XQ:T',PkKLU]ywה'WkjFFumb[ݤ r$&CCJ6I4=WW֋!1G`8T96$Ure^p Y9%gG?4j0-s__%xsl ?,#e/jHOe6d CƉÛ'Z9~wKZl! v FU8p JC{*ƇFCg1aI3D@ҍ<]uVA.ӚI.HNIT|WBRDZO?N KBK}04 Z 4&9AFE~Ŵ(N@ Dfh̔!N[-؛bJ~<5xto6EO~ny73y&ʕв#ȄJ <2?0d-6P#~Hgx.U)$t?}UQzBGN{Zq>wb6PM[.WNY*VؿIh5*A韞r̗L,ڗ8}F|0^q1b~oy#5F+gAN]M/a:kwAhbE=(4v9MRc @֎`B1}'胕=|A%7WteXw%cV&/oddѴ& FN%ɠ\<=W0 9Htduj~nUu":QChr՛T182[ͱÑB:] <4#D/gQ&2K(6y^q6MLxX؇>z۝`( ~>)1R!,_~FҠ߈>iz3ޗB>hoM&2pˌYu9Pod%aUn26eu#/- 9\TG] :ZLwHcc 򚕰ONN9M욮|Պb \Քfa ŞbG7lS1Q4ъw >poI7ۉE6Ui͑d\ܼFT+N;T~k;(ۓY#x2x+O8MQ١(e|xwƵI- E m]`vHxMiVZe3U?EJ D6?h+n u 8xmϣ MFyW}&';_kmE.`TBB$zh{8ىJ@=\JɭEj̓tRsQ )v|oϿ> Kb wͩ—Z"Kw( ǧP)yc+=, 47kC%TbM{`J' ol_nE ߋKÃ/X ]>,5i*_VӃA X 4VH/(8 O,RI$oi'MP Y\CM!c6h4d ]Qw:cw-=тv ^ȑS6N[Z\mhxVSP%UEKXCӦ|3qW:jkk\/3=pNL%ELF$KPTrTM "1uݚ{׹Dqd$SWshfܣ)iQ߹ fW$5>m@pB'< KU ȗֺ BU+9=Iy \DښA1nL:쫉,)v G^Ě>++C$ZUkwyd(vEV= jS`/*@Dˏ=C?ȴJ_1N bM[ALa}T7cf^.:oEŶDrw]ȕ߭? =Q<v;TmHOޱtyκ*{'UTkC¹Jk9q'Xi(E!0qHThb| K cmϦلTk#4Jder.b"R>|8sv|w`2Y¥ ՟*|⋖yr c#xiJ(2q0LS/!mVTɨ. Pɽ\j2]I^$EDs'Ξ}VӍd@yHtV:hLu/I%OUuuFJ[/] M<ఖbmEa՟|;eE3Fսk$aϛSs+5S=Imw.߆Z6h-3T0yhܫ03 ɠH%ԑSCDpZBvaYxTBQ-rFtmIڕrس.L>Ks>طpnST/jvQBh;]h| (a 4]Kz]<mrZT+~7) 95p _kW߽O迍 T2)$Մ el!e$QGD8FJ5D^F_!ٵ7$sYg<<`Qŗ?HJJ׉(Xю4CHOe7U-8Gq{*a4-̚gCX\-odU4va$5 jWslD(P71?9$@yQKqIF;8tw6ex.a& s)OKz XQn59F xIL/2U/6[r59˹b$DͰ.(oW]#t@=JP4,lmW;ؑc)fc^#~bIKmb5La pXđ1~R\Qq.hw易VHNq#⨕wծ}:QujIH&:8*#zR! sFg&Z8Z'D8K`zZ X5mF$qEM33Q CtIŸ"IS2 ۝yxml7tP"*VW,(CW?,B z4guXK;?AƛFX /5`㨇[D\}qX?{ $0ğc` :_4U%AGzĵWMˮaH7;-S cD^jlam?v2`}ϵ^|NW%Sp"PFUSZm6/!8ApOOD N\hz!_/m4 g cW83{<lbj 0!@dJ^_3澋+K-/#eWuA1?q]_-BɿDds۫^v=XFjuP](Elv&$Hn4,KC]tkdG <>q60$v=kf e)s5[GЀӮ6Z>oi{T;Jod{fNVM3xs`V5jA$P~{dfU]&v5$B}6"'clp|?bA;`!JQR_|ytAۘ4+h#e^p) <ܦN}*'J]\{W##'ݒ& 52-*u,mؑmm唙ٹ4͘s_5G t!i\x; DTL ~#G ul-0~JX;-$nM,J# ӵpx.4dx6Xaa .:< 7 p$)l8H yYfOz;HAHۜIj6 7ܷg [FlM8~X:=0Zn>JIC!Y!]&eA#&m?׺$wm\=ze_rvdx |"D I*; Wj&lӵtUK% *B\$uȎ=,H ځPj,.lŪ6O1(w~:&{'99K+) 4;@i|^>uɖJCɻ@ J+00jĒ; <Mzźx )p:H-!دg~N|V40z$vqHyKFckEo8/3Uɠ(R-<'ݎ(gQ`EKB=dܜd1 &>5 %տ%^9Y~g!kh0cj'2 tW$Ծ'CAITYTm7U}bt(k/ްZ6M*o;lSz~r$ɵHE n'cM"!wkByCȈPNW9`L1Y#T" )9.U?Qjz#O8w G9Yofʭ+۩r=3 bYZ)qJO!6"zͻ(LOMʺnYؤV0kTB!F5r|^wi?5aڸ`0¼YlnuO"4?6xJ8c%pB 0'Z-:f쩾CzH#@lރ%ˡkQgvh+& aҶdģiP)Dw@).;[Q;Ο{?2<\aFTT17'BiVM:sUiXtᴥ=m,[nB 7z2S>ezn+nlbߑu\^!͗B$Id uɣlgoK^J|y\`cC%,[ 9:4-l r` LXw CCPz;'"$` +%[wٿ+Ϣ '0W(NȌdk[ѻgh1_8RTU?4\BT 0v#X 4嵧7"m/gM v]dtX.QżÈGz?+Dc#e7gK2r)5?_p_djk<(X*/yPYˈk*z;颥Jy#՗/SoͲ鶘i+2 s~qކ̄GZmw:58}5ӾS.ѐ>k'm[G|Fa._=<&)C$ϝ[%DgV϶oU¹WQ]J1B&~Á2-^' >ۿV(`b1Ys4a//vsW)&)A袪=M"8|g<Ѷ]KKoL;LVqhT0~=/Env ܈0YjfPe/Ξ'1oWɺ֕B6sG. Ns rj8PcfCУtnI-$M=joŒD )c5`#]uzlPd=r?/IG%f]IrD>_ UY Cŝ!;vML8.j9vci辁vSlWĈ#~IS"ޟ~0BރB~5>Y|CPke-( fL?ru&8!ڣрvq "]w2Շ҅%OYIC=]w?%Mq1 +@Tս]WβMZ,af*e C%;SU>C2*nnYvp479(7̊ V-{X[ Zs$Mh1 pW Ɂ'9 `FtXr9X4;8D۰~}luf@o-A5UJXs_=8qoD{Ax^0AFs(.%p(Qs((sexMxpP^.(b(Y1ckm2ܴ<'n:xg.Wr{y'tC&*7K<|fD+@ATg dW(4 (\",:=?-G$6ӤȘD| vӝMϢ޲%svrfpye-%Tڇ'af?my2qI*)E&Jga1گG`4i?Κѥ4]xP2t4u$oϵB4/g3Ps.r|GG:@DF~Wƫ/,8Im25qj N*&̵,IyЉ)V$}*?lAyl҆}ntoJ3 l OKrKWN%GD+EC&Uk_O4Q'E:Շm(SA Dw,S069BCJl%9M`,K*7L>-wΰe-6ad⸮ЛY 9)sAx= T1eT ~agv893 TʠD In.ۘ7[z0̷;ZV0hg9v@iMw?p Zif` xX႔PrejmG>a۔u)=vr1|p!E4ћqks!GKn/ \'^DJ@!%h8ܧk04=3` GZ%<;ÛН3OT|C'h≺}tLǁ X/W%W77“S-P;QHtˣ>+8_fhitqE}8xc)mx6{fl~?bdCiݓffTY>+<E˔buwh2H  3P+YJg)gr3G>5sh m "p5Ͷޛ+nKijTKe|SK,- #*)90k>{3L'A~w9+P Xu yRZ!0>SuKV0E{w|ݠ >.\{3܌Ekb1+]~aGyZCKdMlˆ-f;Qt(PA?o6%vgT(_bLRvǼ\l"g)< =Sx#[h to`-(BkLxNLPU~/Q•>@Whq4}T:呫g#?$u{(}`쨟_qcjNAPF`j)!+Pܗ7f4}?W%"Ā\.IpiF`(-ª^9t @e[SKƀ$I8mdg2$ 7 zĶӘ[j@o D5v$yKiЏe8!@30,.`9%O_Oo.lk{9E3(.gJj`m*Y> *Njbe/w`GOq.PluT:*bDw/!NzBhKz@,@WՑ+"P|= *W WKp17IE5n^кlpηd\W,)gGzx4)1U1gv\quPsϰ:)m >c-g:g$`&{M["5uRcՖ7`<}Y4N1% 1ԅpexiy?un!5\b?g2c2XZ/Qi:s)8w;F%mYh^S?pf-K8zAv[4v V'N11F39)`Z< Kzo0܌Zq3OYa `vouǗ/S.s$,GA_o_S^?V[1LR dD<\#3:?Ǚ(هӰ Jd.iÎKWURxt -^_[-9] Ǿ~?.a K%غ'Jh6< df3-JB!tXۡDSw,#C½,PpBQ' 5{)bc/*T y/llbXF-HO1g7p uFDcϩȍ3L#,)wC8JI-)5ZZ(c$6_d Řݼfu@gS=^}7zvʝNd8 .ٱ3 #|O}JxB3DiaH =FR5?W:tuM d,)jkKZc& A'90LªCfڮ.VGg=pݠЙx<]#KwjKGbXGO0aZ:r&] )~P\ wwFv#~:Vuzu<2EїjPpkZt7E6;2 5^s-&\j~e0. .H)2VDB|7g߉[#X 6Io#7͘( `{~kArq[D@l]O C^`7۳J̰ix> vDx,,/AH<1ViNĈ9BAl be8yQZ~ 'm?tRZEG~0it6#ۊiyG5G>X42Kdr}P0OKtˈ4@KI=#MQd)p^G*V_zUx q(Qpa󷬢rNW rH8yo`F}) ~ K? I/zf\Bb?B%8ݞMl좉Ěi?p u1𕊕N.~ 1L[oͮK[wUp>e(a r$̾O:HXZ`/?\΋gZij;:IWt[xYz|GG"&VR b3+4W%\g]4pƺş:Ɲ:v,ؔr2^R"sυ|̉mFe P헢c"/Е@}5]b&WɸqL236]=r笇^MyB;dȴURO竜UrYSnjVBc]ݹmq3fry7`rgB8%'~Bk<5n@e0Lxi{ !^h?v'yi% 'W;HRUW>k18L->(y0~'̾C!2 <2aiˑ ^UD٘*a sE㾶>p\ GC¨Ny60'NvF? lzhqu Q.Kƌ"Rʦj0V w ̸z,loz_~Ea>b˃^1zv<$l͹S>;7{ƍM Q|,}V|}A!:"wP7|j'h6`S R557=|,; $ݜ5Ѫ*w/掤b?~ }CyawA{{9,f?ϝ{|ƝUPt͈y(<-fF:O\~ \;S6eXs*Uv{]RQ]pBHܑDqAN OU~dwOy6xIȃ}dd*_sjb=WޑrV>@0H4N4^] W8JFki{?;_ 75wڡkgwqLxYƵ \Y@H\cd`bI3 EtGa#O{>"ktNfj2HQԻ/Ac:r3g_UŠ =pd0+WD+NuJݻ adqܚɤoF" t^=6g9:GƤmπ }oF4—WG#Iߐ}mvJC etExpyqCp9~7 %#Ԁ'ɌH@s5DUsZ3&= 1Ȕ!)'8072%okV1Ho>ŎSX=8lnT+cP>\XqZ⠪;MѸuPpz5]FUGAFrD]?'Η-!2_FWQJрbu*ŨS ].9<-3UEBimwUC-xVMnSX3gaC^OLTV\iZJOE}Ƽr\FtS\&U,CdƳqX w짗DIq1=+BdTRȀ#kӅn6nݥ]WJAl;cS1aab ?axT>T&tZ/㍬؛ZcY ީ3Mb< I: KN6@.]3 WULDCRɛ'/2ǽ:7:ֿ"()r=0BCfIbP=Ar9nr=_BooxV[*,./3#aPy87)vTU{j_ 8Evff *Kd.x.Xw]Ӥ +WI(K$]o!$(hn4*¡}͍+W}Uh^jRM1 FlZ_oR Tsǥo@^;lWҾ&|{OR"/f`R<u5hHN ͹[.Ԓz/$hϴ w!C#bI3e>Rwc\W9 Mb3B5۞+}0 (7s611>ֈx}jM4 w}5Z=ḂpMSjUdi=(RtRs"<*37En;LhDԩm=70üۿ.CY=OY;q˽o7Tor XdάATl3:Q88'͆,1֝8pǥ=w7sf8RP2p2-hMMk_ єH;c^Vg;[6ŦWЧBr .*O"Ί A`>Ƽ\e@T2(wq~ cN3 Q+:TPw=B,:ÝqT4 )vxqQT(~NC' ? ZJ)'>Cn9`O EY_E)Bf]xx4ּ2ͭ-%ɥ4[g]jsLHM:VǰMZzS)s+jXIR,*pgȔt=*|h>ְ* #О8#`u5tbAUغO #TZ#TN]y |A.kzTW ,4$Աㇺ<) "0i 9V󑌾I{͏E-C-Yue*tjtpGpf*~F9-}bQ@` GbVX+ZZKǔ Ew$9h{,<$g]0T2WS 5|D>(xtK}’6ƈMJaT~, Qcl#X<$ vkID:=މUm%2mq;_%L,.'֜.HZ^EW6uvk#S=jFsdR*Ɣ6 H`Gt1xWH !ByꏃuңJhI6;HSU8]֞Y뙄w^J͒|}&&58|f!=Ԗsy[D`M-s 7M+; #7TDI=|@JTm51`VSAl+ä+KpސnM#%]rYTzlPjﶆ)«.\wcN%9JwɆfþD,%9}Q#%sFkr%k@*5S7f7)BOvEpwĨ#O!s`Vم7ue|;c# iu? 99O n*ۻE*|_Pw #6үIJ=?˄9f!%7ULVSb%ѼB "쑳]T3ؒCHCq׺f"NQ dP7kvb$Q~rԸ6W.݄#Gh~L:ytIDdǠpeE.=t0 t *X@3rwQ};m {^`)weUݯ~UR^OԶ;FVCe<#Z`-J7sh\9B;f Xڤ,x4 _\PcmsbܨԆ@>W0P?m>Ljw(j!Uw35.~iRv; !0+(srX&ЮHK>0n2s=}.PVPspj+VU7'/Ү9Yi~I>2?<&8O|i8Xw,톧@7fVs~rFFN]CXc*lsM$h8hxPLOgmo=ٔǯh-‹R tsKʩ=' u'ADe[¯Jk0@ b|TgiȆ4$sLtP\ItojE[z6?H ÉaF.|(92b޳V9:qP D "o}-K} 8x`N\h L}`GݎkbdLIWqpY;X7J5HeDyqS bKܱ:{IBpW;%QPY]odY]WGOe?zp+ҋ?qa$0R_/_qIMTQzFݓfC.z?( o~+c#ō[qEG~U?ӇE<%} Erlr節.wve a^p߿=K[=&!]y]PLuHsXR"+ح7Na0&*hw/0k\`,O|9ZNA~F]&)>(y4 L(2OiB |IG)eyr+2xr#.MgʫŎN *ՓԻv/S+@쩴)< Aδ"wz1 ~>~Cyru*z(@p bT'Q#@e}Q5smFBA7Hph]X˲[H ^ W&1}t:f*e}l) F*'EEٞ#Ͳ>#X>񿭖hHlsb~'V^*5I_*q-?SO@bYiSǞl)@:PQvpl諟)jbN*EL ^/{,dZ%H.GB._:ݢ>ѽmo)p |B x/+l p1C8pz!$p#Ū׬l&[ϗ2q6we^c*m>xB_<"TZ;KD4su3!e,%ľ3/VlDJ'Ej2e-OA77)ctuy"l_eݗ3BKA k 4a p^Ib !>0OlÉP1flRbJN~Ѷ}kȮYٷ+.~кXMM\c zPڌ’N|W T:7k?dmjpa #劰Bۈ_㺪D~2cgB;frEϤ6a_<"ڜg0"֤ LҋRAN.}SihȢYϔX} Q;k㩗1£z<߁O`Siv:כ@̀V1*&z{@S1i/>d•nb%$"T5gS~^K%aہqLN%/]$(%?;o ?Ɠ!=B-r[i$JX{3yqxR+U|SU@=ȣ1j_R=Qh$G2;z!Ճ:2 6ԲʊPR7sA:B\.ONΏ(5d\xA n~^_ۆTMrd Nb\pT;!Rq2CiuG@(V5_3q;}DXe?C4H %%!dZIZ|鎬c{PH}4l] IߍUr2-W؏MF6V@LpZwB6}7ngr-bY-zҽ3x ħ>+$*.sKɈҒ`p%a Q-<%iS rFcVɞ1TSέȭypV&IF ehM1ǠJU”ڢ8iGM&l_5qg<"˜kWSqhON| hQo,}(G0]|v >-[+{(ɗ;Kٍn~z|t%ȯDA'̳,rGxlSͱ(|.7R*+14aTX!sH6^igĿOcOJTfTyݴ.;JE5#/@SMI~D?BDWNQ?m' -,ևbj}$$ PiCZ>QylkdN*t(D9RaNJLy PcYTUPqn_֝NpSo5v{0M[(= /6MFEE9Z[&'lZ~lp^aIauxOB cұ>^]\?]ucaG{̅$ 5F*xg6ihJ#4<$9ħ9i3NȓaOq_̶ˤU>QG^#;4}(19K#DB:G18RśGIpH lq_UX$px靊e=XC r#ŴBi!CZ"&ȼ(ݭh2F_ʷꇊZ3J?# OlLiamXi7AeN}$m# E'VP$#ħ, RN&;c cB-VHEVb=,6p C㬩aƚTe.eV#o1A$ TԽi`>PEL%ܒCFQ8L6Jsr5_r`ZcZً2Iɤyif3\ {x\7w[MO>`)jW\^mpXۑ\vb"-k:$eQC:U`ay/HO[Q|sã33gC^ '3ei=Ȇ=lodZyvls"@_?=۬TX26k2R5W:?mGrŞ౗.X- 5pH糇HLt9ؖӛ>%2M%ƨ.ˬ728U`e)[n`k|a<[dL +)={-jtmѣvoҔKG<25'J_Cl x|X[ڥJτef{~; AQJj_]\(J+=Xoν98W zjX6cvOX;+RG]Z@hÖ _(JL$ؙ=$q03jrνe~|B[#On`?ɱ_1yc$(ɅQәci>wGEblJkm AP+"e|:֩W<7pQX4 ᎐GwrB]i5{ 1_Mq&uE'TM:R<ޞg9;F 8폙bg%gG/k۱] ^YfH՘c{ԔN\| &<~E:CҢRqRbZ`}w•|;s,?RBjNo'T~U'p.w11k/V=[o|8ϳE¿0/QVq&CxOfv 5W'Kdgy[L QGX,c%!F-f ';W]TeC|D`2*BRc 9LmQ KnW O^qLɟ ]T®rM 1ċ~&+T6nГeUgڍXTOx|hɤEc?9ɢD  s%xcq'r.]x Q%捛ᔀHHEc@Dy7/#bWbFTЉ6WLْ/#R O cd6E݊\"4}*Z4b۶ On"?dp:?=-ѡZ,9| ޚ7͵MtqE?..Qb%m>[ tx?}9t.){EtMm4d7J]H97(kXkThZ> %?o?ҍ]TpPK&f{ղdޏxO'a?T0+Gȋ9V-ٍSx#óu'"qi#z7DOO:&ܘJU6ՂX~#$ - 9:#@tO_ێ=?/ܻI6 1y6  Ar+^=e$ibsV[iF }-hC 9D2,DԌSgZuC0\8Wo_ETL.w #Y2E2_WPk 4mcJh Yajz恥q\7Lh{::;ΙBv @F sƩRX}b=͒k7o@\tZ 8vAO{[F~Y/wWD 0&{Zq#Wݝ+^^V}"(BAg^͠r7F sR~P+'$jI/h[7gjDϻO'E\+1pg)cp+BSg("יEM&*F<˥6b|z3kH|#'Nqlη% H?IBPooJEI KM%KAg|7MLCPeN_5s\%OK [WsӁgO?#_e[*]YĘV$_-to9I$&t +:P&jm KC"FQ…ΊdZЩxu"<~F*=%y]k؇@=$ *j3HJЋw@(mSuy'4#,7,Q>;${:?_;Bل|aCmC~t?5wS+y^~ihZ(Z\0Sz±kl @\P(ܮ\]g ib C~u606_2o=E0ḆuzC&YT~ 7ԲN/%E; LJթ'na ׫Xsr ˻;MJ-<3uEgokQ2yMΟuw 4ufO)swJ!tw~0_@ZzGxdu"pito>[u5'Rq5;A{`@Pw9(m8y7\ {kJY8 +Zįav*a2B" }CM!qdNYz<: T9fwg6|YQ!XUj{".E3'm#wG1elskŶe)ww^C76Mr~|u03i?# 7h?J&9R2BGז6F+uS C.{łIݝP n58n(kw_W=%-5ep8`ac&ID܅eȜ8mBԆ'UV}[TaG[^!vأ,}ayhHin1 E|Sі^ـUeމ z9C/. 5\$y)HR@_k U+Ebƚ11R@1IC}'o6 #qa7Z3A;t׺kc@"Kx+]Q@&Eɬ/dZe'꜖te?# HhIDG}w2Cdui!lw GY&tgkb!咇o渡Xԇ4~.{޹oCE'U\.~%h<$ex.#'Y89D(.\G2tg$M|%LqkaaT2Y5Lvl,)KAo X l̪4Os_Ia㭒wֻ.?D6 UgFtRr0x!bm:|+w]9Oos@i[Es7`Vbo_D*;lf~E#3u Brg|MwݎA-JЖLǚGׇ#4W5e(O!gt Q_'/\ZJ[z1IHgY \s cBx mh]Ck`}l=ak WUᥙP0!jDb1[eC15BX%tST.r,␭D*Cw 8qP^iN"xn q'RsQuIJSj)>q=Lhծ|x:5;,r|ڨf`+njv)'#`u(s:]Q/r9S3MFg-~nTia!Xnw93%äbK7#2 fO~w_RŮ}J6Ft{rNb+k+7q`tH?=; |]=HZg;T:(%*2!J9;#`<9|<*` ^i؁ӕ7]o[C M$G+u).9(B '9V ?s7^O%r5;i|]dQP .P+W/t=A/kݱ?Ts '`b!a{qF>Y_-v7Kq&_kP?&VH4֓N0jbLu4Fbo[7#Unl:x \.7.59BCKmMin*M֗`@q ODN$Fk2hّe)?ڿ&ok."!j]&e"[N­Z@^|+ՔbRXe)Ʌx]I6Q+H!䄇=ܺFFb6 o<< 6o+P%iAh4uIt|W%6gz4{ B#Ms'Z[V=N?m}Pʑrfbȍ(;hkK-d?Sj\;S\ʹd& k| ¡gJzexs]ޅ1\_+Aŗz?ZgmMʕ9)O& wNj)bE-C T78#ˆ|wVSR+hmP+\ښ2,]\3lt`P$'jƥ".6a~FS@E0!cꁵȶK'ӳd!!  pت H 6]JE"4Ždg ~2H1*p NUˊ ۏdƉe_e[K\L׀J&䊚vyHS],|S3t@(vEF}nˊIF)Tt6#khexq֧"O. 7dm̵\&FA3\慝9rNWV{h#Un,oU̮H=s+:=_ۯ?n5 }T>X(gB֮V,h"|SbYn$v?#-2nbrՐ.bgIW Z<.56lizcSJ ϱ<30.Sn8'WH&,\r~Ú:ΰ@Uβ|[d`u^`V!D*&F~A4s5CQ@VymIz8bx9_n}hŠᅅ2f`?NxgNҮP ⪀?gnhh\~l@d*dƷ& a^͈r<a2zwOa|mq. kM*q|DnlkOیfL=k'#Jj6w%eb)<(ɔtёՓ׻ DYV8)_آ7G O >H5jҞ݁Q)lZͺX +%{=_ s kvbcymx G?xԠfĬ|,j/Zlr['^OKIbm&' KBIT.Rݺ_Ș97z.DEhޝPct:=dя)U񟒪\jx13Z/{6x7;rv ^J{'R$Wn\sXޑ 0N{B.O}}0R8>MӇ}6߸.Q  rLJ=,i^#SiﲮUu8nG\p[#`Ǜư[ϧR׳ρxI~Y]%l}jۊ8Ps8ė&q't7ޖ<{]~lq14_kӪSY\gb֠xi5f6@mѽm}"Z, deE ~E[lg)WL/m>uN ل1Q˜~~Q5)\ {(:v0L,C,q6,hO8 wo GB׃B(}M鸒""1fw}Rh} GXwu5{jϐ݊ED-Mqn:I xwlsXEgNŒe.z?-1ݲGƇ"IZ-]򏰴í_15be"x=ɤ re$t/_ ~jc8BGN;x ^|+|-R2;ة»ʲD!NBDr[*1y>O8 |0=6{/=א,972 ly0^wu߹GXM&`rXs$6r7H[ |n8IQ4YoĐ?R]Gh,.waތgBE: #Mёw%|*ǷTr߶ptQ]t"tXR /޻5Ȯd.g˓N}1Uٕ ji>N.\/&[ѕ+auG/jƐ$݁qkEм*7IiKm|04Wb!ѪZb 6nf쪖27kTObdEqE (8n+گK: dQ^*l\}, 4dyǍШ!+Xw.}Plo?jbol hQrQ{'.G*eRo7㖵%TzWXT6TlKKLe$s&^&[8FzCS^\4*Z^r#Ɯl%jގO!*:̒w14ИGX <_ZJJG`bnk: jGc39(W ?*4Vpx5|)Lw~[ ()4(oe((/Y㍯Hadr+N;=oi%Y1޷ ri^k@~[̖E+5*/Z^<ÔԈ<$P ~ Jj*TJl# e6ĥUXnпXMD6v\qCL$TɦNmU08FZpr:;gw`o/ EHzEic=9ن&|D^?h.4 ƾ mĤֱ/y'$ӡ_mQ6#1h+QbDy4Z[ÂC|5BV_0Hrwh \~(j7Rgi*L2Q 'Ug}a86\M+-+6=Y'mNmhG1RTSϧή9+v-hNi3NaیR &U Ơr}1n-QpaN5A+R_܈?ݘVU|(__ٸP-4EàE7i2o9VrYRZ&iqcXL!3.CO#\hQBlYl2Y+b1p[rY-Y܄L2Ԯ5uu;ȌP.Yƻݲ#cp їȃ¾Img;b{tYwvHDG5FȤ-FA'!jq}eVfq6 :L ]C "'O{{*{qd:$}5s[բUeVetڋ0q61z2ø"om$j-_yt=Y3zTQW@`WH>ixIuhYf^ .m3Zxgt SXQj!:-$'zU|-t1-f$)qqQ4[=MQYX)8 5rǎ1T!UuűD\l~wgb<0%tO#͢ dNN~ EtZt8b't}TUH 9q%2/$V0fg{'O ,vs/z9,‚Πp{IY&VHD(JoYު{.AN@&%zǫEvg0B9רϝ!gɺ O: 0#e.Q4 R5(mr[ )gpP8ݵn@U1 ~W]p}0)Ը}%P=qK@{V61q !Y쿄ARH*t'&2@`"q* Dzܧb+Yi+ @ZkQ{Nt%>`habF9H* Ml"r4,'&$`xځl#ŧA*9ȨV}筺E "8-|v(Zݍp6AV#8""7"; a=4fH"jB"}D>v|\o%3X!@jc4*w<9Lzi"_ WXX[ |wwԪ-1Xбپkצh:ȡdK!.yZ&<^>28ߣRJ^wV.WX]K:8n%7XT1㌁$ָWnNk䵜A?Ji Ѭqj2ȥϫ1z:l5+N؋}ĥ >eKjm2yՅ&%"/W"X?*mt1X(=~]o PG O@' ưcZM5ϡ义q Ii9 R1W*phe³7*HODp !,}{àe̥P)0ބwrJۂObky'[HelӵfgY7h-F]4Zu$~VVYp(OE ;4\S]^OR9D&|FMҵNt#ѡnDHMK-q1NlYB/;8\mgFg/tFU@dV1iq* m Z65rp?f1y'֬8s/(OצfG@WV9@r&f|9u^ho[y!<`jrكo0#bB/Xe6-:}9=e uV4կleeg"e_^2뫬ck"9.)n}fаޅtmamtiV+!Ԯ?jq#s O:S#=q#:'K5͚AtQP7/H9 'ϽֽNQ&xN= Mz_\QٚiO{|՗BT {:|[Ycw9T(S׵ڤ[hUzxrϛ } * [[s"#Ct^ҝ,噜Y[bªɳ"$~є5"K-]~ *y2ٯۏL}P;X.8Skɜt O^lJvIKeh݄F312 Y,簯@yV&U,P\i"8`5dzH=vmuTd;*,DS5J-1#ޠCrՂv ZC kߡbTFTwCn t+,[ҀVKM¢A#o敳tm7KR%NMGijθ-"eUo*QuaB/fhpOc_AVU}O|_ضVA >JKD8˫hF2\:tޫ/|RRG]G`)M0ʆ}DBr$:  -/(#4>7tU…S_uW%UnV؛?v},ξ+;N}p p{d9_@M:D0g 86VЛ\Hs>VE@X߆ 8V]PXa^dz;f2?(_5mqI)ğs|. B.7s}`]|5'oGuv ˡ-X yL֥0̀L[c.քn͹sn*ߨX {$)QVF`RA<:]&{@f?#+ F 7ojkW(>Uфsc(*9d/͟h T#>LMzZ|i]߳_6I8)^W`L#BθtT.yA%'Hz҄[WN~(뼇no!x_X~ZG>^4C "<ա!Ic@?W5x/,L*2Hʗ1T I'ˋ6H'Lygnj0k'<춀= |kƏXdCC/?*7Ws|x*&C"]A>5yjSn3j FN4{3B0[7[i{uD;Zˑ} {cduBB7PIö _xמ$xiz<,%OhsLÂb-rfڲ]x˵.s-̓9uʨY)i3Q~[* @kDԒ;T;^P~x?^)Nm g!A?ؗYmP✠S% " :!\ ʠw_r}m|{]_(1 ʺy&c ;SשŌt¾aoK#UDn9D:ğO;YLD b]|#*pje+>ű4oZ*R`ʣ%aaz$?gRٽM%7r,!˜B785 =@Xth5 8cw/a]!` &, 3?<8iaGXi ۅ\ ~ TO-KG_EԺjfF2:2**P3BBQL9!K ӓEg5>3_!B+p4V],4NlfH6^%wiL{˫`:젤F.c Zcu741X6XOP:qr Km [ o<(Ql%QL,DUm@]ZB( 01smV @p$APh)mJ,y;moMVژvga@vh3E'fUwlũlJ$ ${ 򠓕*z5?j3pJ_%>b%۱bw艤t9*^~Ip8#ÊTbjyus{.>ϣ`>0KcoP!Z Z§u%+~rÙ`@RGY!׿l U*{\,r~ZHQj[_53̓jI4F$NK?5iSލǹzOmdG߽2:~QY,ӄLIOz|䀹Lq[+-E|Sfrz SF]$6~"[[ilv7>Y-oNrP?| vCVI 3Eߐ\P4.ߝh.,ސVDj+lxEd P\;:K]z~?DˌBE%Cw5?$_w@?;$o\=sH4(齉4׈eUԔX"ϭ_0 kdw5vj]ӧr j. ꁆ_9&&+-j(!D Q擁4z4o9X|mw87Tt`:h`BuQl45/gCg[PMIex =MKS>-&D&@%@z7x8wȂcmuLdZ67IDh&?E ]=|mo xd6rA=>G0me"1戲λK^n۞FŴ,hiSZvԶ“~~G+7'zE׼R4Ĺ5,LoZgU,dpd!: .XE]O Z9掰 voy;&dG*6:;ꈛ bh =0y `q dѧ g:8~2Ly!XMt"ZMzxԎP&-5Fj2c^BqlfPsEg0r* =+S`-\%4R;I fKFt!#8=o> wO*ϡ"ta} 5#u 6֋k$l#-Tk ඖ@TRS0V6| }b~k[4h>zs!ګ`4=Uj,ٗpHyP#C~<ـ&Np{#71 Q7#HBo KVA,s%CZLl @wj~cno= \^(Юl54sv*g\Zg LL-Xt5u`'=74p@ ҈^ hN؁E6?f{01%;i#[1*ɃVcVD$ U .vqn3}> KճO2>U>k,lbi&i$B $&2C! х*ii_\d$=d!Ԩ5:SJD^uқ@x6FX̌G98 Dn?)_7RO;G & VNu8y#zP;1bgTЎ)2Xջ[ĘCpۤNJHax&R_- Gwث 3[83/KevSRKC'ш'[yfRX)1|{^Jٮ,sXdYK~g dbN),}v.ˍNN[V@gS7jېOXId.SU#od^dlMe X*i^}%M}Ⅰ0lQvJ}Weբ9rQJG3jA8fu#, _XF.SqjNlrg{Je: Dz`>0Q~Equ_c<~OݎuL{lHSїiAŗ.<-_>)SfJ];-MdWeO Ʈ=,ԩz /R$Ah+/_g*V>'*ICNZNtoP}r(rthKoAp:@ 1H3<UQ6Iu u^{EGhȾK'8jr;v)Bx_k>EmXX²T;m&"uj|vvyD^V|Eѽ9*D- h =xy#"9~RU4z&eH3 Oo8 p6{+&us1?>\)(\-}O@)a@u¿<13I>%-0:J)z:bL<9xl(32` ^תlͧ\,' l]}/C\ko ?E9xv+U=]DM듓 d*l}bBXm)gb0>Oaۏp'vo2,}W]=Gg-D̸sX% +oPOd,"NesCD%mn(Bi ީĥOwޤ:qC/ scb>{ŶÃk VL,I&Xp{~Q:mi+R{ P xxUoFE9GIȴ$Ǽ~kb]{XyRm/ 7xXNt$b֬nxH?s  i ײb"uTـ?z[\e#,G2cY)B14d* ).p/Ϯh)fcN8WmP꡴M #<Υ#Ow^J]v2^{6ʋtcp-B{h pPZA_HrKohCcv Lj@| nG#^Ӟ Pw&R/$R$aYWVd-粤o ߩD͊Z_3Ǔu>&,>Z[,^O441ޫϠvP%I=GXn% QPYR|Y>ij FKrMBQ5̰bF$ԕ˻CzV) wc O+ч4%cU=L^R{&)u[#7e A~ RidX QsW8S/$_3( su}}Y{,y(I;p@ \6Υg}$"/3|3Mezγ~-/+si~]"r#*O7Ԣ~sX{1fvQ=}=z}[I;/||8HΗj ,R1DttܷC'li0aHƨ{/nh"̼g!eԐ|Y[ʶ%&”NgaSލLJ ~ /&xMv*EBPhc\<|>WB߱gJwɠM Rͱ&.XKgkp)$1Ly\8OI9Eu]uOm˽&L?\CB2E}#% *=zFib4/ zcnY e17zmmOt,V2|#LcG0;1V3ҼqtNڼ( #ow utTM2seD?( ŨP:R#.@c`1Q{xdHlֹHtWfю0xG"N;YHn[[ɞveNMk5<7i#E)).݌óRwr` շ%` J}k^Je33Ey"'D+j"qUk;TCXwKQlb^5hՒS*0Zj ba_=C:N;Kp_fImP3Ċmd("?>gqM>^C%ՕBb][3Ƣu,MmcĘ{d*D]hVU6 P$9o9mhSr*}@%lNZj/ 8cxACa8t廦͸JGn62`/lfdqNWe%C_:_k{7k?*4XM>I=w:虎Ql-_.ٞ.zNm;`+MG[[;W_v8ǰ=yq /<˩Kxg*]IuȨ<)2ݐZg4Mi2$Reb!nG7 :UBj v[W`i<Хj?d(8_YCQ`/pѢLJ& *q1d</u%tc2$=^Ge|4\AMk~"e4}P۵8^ WcK6vLC *75*Nu`%/k Y1 23!sa 6~'W:$(\0B"!|i+(.=3/|OzLB" 7iR l*$ D~+"Jg`>H>RWmqm$yMZuLGlpkF0Ep#j7@䇔dZ‡W 1 >dQDDKu,Y%jڀRs{Ɨ$~LjqpB9ܿb)}Uآ)EP⽯,MP¼yRj&_i 8^ʞ:oH`F:=ƺ$<ǁDRg@?yRأ!Pi.&~U|0OײN_ TWw{}+7{ҝ}IKn6x3pL_푈5IVFJIQ5p`lcI~;Z4#R|蛘@"ڷ?nMMjk:j| eԫUODYl7ȋջzl\EDOP=Vʃ(27H`0\a-5ԫʳX^xS. rNB^,Ǖ3H h<>'k'/W@Lr h3] 7Tac{/GDRB͋Z>xbV@=R<2?&,&Ud3iÎ%wnzT> 3㔶uM"mrsvr>ē䵋5JÑ8bprǒhY}=a]"^"'굶&m,iϤ $y [D/!nB5,_:37) #hlPDnvy+ k<]3j~hbh(W_oDqaNCo* S4N 0&c^yS^ W{_=|yۿJB⳷IΒTEs70¼A܈s(|a4rrR٢oxu$H_6?;nl]4I& 8"6wHn !W~B蕼2m cp7Eǂ&n-& &>EuMTG;oNk㠪⋎XZ D޳AQ'ʘv+ @WeO:-@H"O3IĹr{0j`LpXvc>ףApjnW1٭H zZ}D]Syqx>[c_bOmA}GiQ!,kӊ1I+ lMWKW y>:u%vP)֟- bH*Իdt-VL.HՕe7˛' wiD3#䶕?wQ ^WgPѺ6I7Yނ-<]lmbj{,HSP@txO` javk-woF݋ZϾx q"=/uOo6gy(!&\^rۏBP,⛡QeK}5\)ToVϨ96a\Gv>EB; =L_K{н1[4Q0\491R e[Bb%Sn>Xk3z߫|(o[Y 2y4!Z7BVn[#3{! ¯ؙ&_Ur*Yܨ̉Kb BB[mJlxN:_d R:ۭ6fakP.%xZ69`KcI sw۠X*L|.h+#vg9~ iZJ]K-O34>\؍9zƚc !#٤i9i[1Bԅ xmp%TˆÙDA! f I3DN⹥L-yùV(2tI&?'r_z9ަD}x&lf2db~"Z8Uas'Ss3Q}! }DSv@a-EĔz'LIaԌC7!ʆ=4~D!#.>tL* 'i~;bX Hx/@llZ}͖I Y[af&̗q1?^yLM8WGlu-b:q {rV]t{teh۴PYC 9)r(83LS ERbA…oxŨ&G'$T`UvHzb47ի1o~|&3r Ix9i|.kھW{DbiHF%18ODb(?׊Bg%[R .ia#)'{6,U5%1][\ ƪ|^@)M+֢ (Kھ:,ـ|a~tWMeǓĜ)eXuy:IOv0,Ы4z |'qyt @(׍4s&,i9s6ECٝ?vlQqRf| Vշf q NsϘL'1,!6\,Z&%oBWܙ\MhɧSUWQ1} %@cc 2zo/qi/No}~#ΙLh/&242DV5lt~Hk>"~.oi̤@O+O^J>= ?%Up:(vP8hN@q{0zybTWU4m^nC70mč!N,K9o fD1s̃R6f@q!E-A,:Ns]^ߛ Wg|H~@xqWPUw;@οnI vy ;}vS!MLئN Lp&Vcڌ19JwP}ˮ=͂|QNN\ Zha݋k5sQbsoe*:ȅ{L@(4Z%(Cz| N[eբjZi\s"&#̂ XpR:4'농[@/3ŘbTud7xs,{ļgۏAw+[&!̲n/>d.r > ?gj0^iYB(SE, YpѪݾɡwx#S<~_C=rqGUƂ k(&)"g{'9#o,9r|?݋$D1y\H\fU~C[fI#Wݏ6eǚupB; RV'xTa(X߂ 碍yoD(zM2 S-('Jh` ^"{鋨A}5I^H;50I5y2BW/d[-/a4T0Ģ܏^%nF"Lfr7b$UaTil}FKYY`$.Q\YW4WoִU#C}oLh .-s:Z4ΐ2]&{`6ǁy U82 Q/6fӾ})P5HEYJ8hGqJ M~G$a=F [ETT\FjfL[G+OG͖eC—"{ e_"8`AAcSAjk_zr=2'Ԗ  5ܣ:$^t@xwX\O5DVJ")sJʌ6P9nӆbR?y`s\vF<72qΟ]\݃Q BV΋.hHY!S̸uL};mTxqUt|V awT#lpw6S3C#(^Iʈ_vm͝G%^]H;yt?t^)i=I.?{ua7G0ۯ頉H&AuݠBi#t)T NYu J Qeu'hF  ?}wF&?6Tv7LaDIJz2wZs#v OX4;m-s;iQ'TV.uQO`+u`흳rPt0~'C}ELYr%GM{]C†wA:o ) 8s q zkd'4}Mt)Ȃ@?ǗĀ7͈?&R?GIIب"%~\ 6OK_s { U NӠ訙}#@Mr|I9KQH5;:rFܢ5["v08砦r]TOڟ>! 3*ʶWLR^p!LT]}bH99ߦٱr>NɒLK-H+D>i{TIу̉}kS|7icaFg 2wّI{62P>!- ~?vIJ20\l Q(Y S,/Fl_{ɰ!Jo+]RFWT:CKS2h+MXI%w|\j'-ՄߕbR&Zi|[rM[**c=etXDuzY:t s|5 ,fg2V2WzZܾ .r I#/^IN,1HX}!'pcD<.9~N37mzju>F>aQsG%ƿ$6FrגNcY~+C/z*oj7q(0-gCO`Vl)AlߛOQ* tyRgU1Ȥ }^t[ `[ٍj*g\5҂UeAJ/G&(Z/7٘xO3|5Kcxj%d뇨WiOj]q{]߯Xj=`Fw۸S#Q _O6#+'j=aO;I7vB~|v^/^_d gO-'.oPlLЖGI@qmq '- @sO4ɪ <A ټ/VJ'=,Z;/JCx42tnĈqO܄~ (41`Ij `c^?n6٨ #zhᕌ c-*y> u,ecޚ4/٪+M@kk`FTtlc&+Y \ug.W~≂_>:v01!W 7:zsxsIwXhFmP_N? ׭ۈ2pl<Ӻ\V.xւ2pq\fm)PA?iXSgDY[A-Ի_qh6ҴUk I6R= (0 JjzAp[B )ū23e3GV<@mtM$n%*b*qo"'\ Vu ~p<ƥ#)G/(XG l͎#0L{M)Sx^72&Sw<tR7 #04|زm"B;,&*mk-2m(~;Pvdwj)H+ i OSV'7H'h`O{ʼn,ֻmgd@|=dΎ&kpR j&hh1@Z&N̻&""5 ۔聾Rƛ6d*b:/_l6 EU]ncf)h͎k#|7$-Gف V\GwԐt]Ǜ)g tn|Q "zos`1Uw ҂_ʻSqȽٴ9]=qsk^mcܟ$&۟>%}n(WDW=0y[(Ύ=8 :؊xҠ޻Y{2LBa(ӽ0opq tD08cmhགx8m]qCE( t5~ vvj Ϟ#TKBn6ب˳UQ n.>z*5~PkX/5|Q6E0'>ivF*8҆4{: =c ^ =*w%%;t+<#*Ln5AYMAn~Y1AXZ}D Ƿ#<}" &g;"v^#*E6j)"D3/4/\ Ds$`cxhN%&bCT-UTZc|eqE[E0PDؓZų|6b%~)2_w/#{VCɚݰ3.r@_&3^`vO_cp=I{jv[E yD SD]߄:}j]_;Tʹ#@Xy[_A2 qJ?(Z-b;'A,b.s|TЫ9{+#א$JvN~^*V@ 풥sf,/jŐЪ&OY""; $>JD ` #/re>hCCl!V4e\BkƒݠtӃvcc*ugcEx9EEFf'#l, l`QX ~Б0׵juR;|宠?o9f+!QM_NP1 B`4(vUJ\#.${&{yq~]RadHλ6_ka7iE-k +'[&EjԹ(1ɷSTD7gx2{QqdCӣ-ooh,*^CkaˈP7\Fuh,o2\Y_>2B7x$Lb:)%Œ匿s=ynsE*Xo01>Ql iS~Frtlu$8QQC&";ف1|y 斞0@狴'lᶲ/Ad:=V ^JOBO \T)d~*!ݒ)3!7HdB1Ðq"@_9ivh[fʴtE>V~?U~i &4Klksid sK< bɉ\ WolqgTpybn*;3եf*m \cnOE)QbDڳp=5!y }];[&oN{6 tW }v0L%?\;=a&xƃ$})LPΐNV@%VX6dW%z ΋wk$eNYvrzMG/dY*L`.LoS,A?AiJ̩ + " *ռv?`ר-w>/6q,k[8~jx2Ok<'3Pۇ:/3ziha^fҐp0UTvi@aڤ+1|`nʎ-8;o")CrAlgi0\nfnXrU /{6m6SE\$_1YCH:g9]p6qǦ֠Hq#[Y.35vm-?% ngdĜ3iDPo <0]~N$tM9;0[x(ZuHiWKVSW)mݒg;]jyՒN+!Uz%]*P.5^օ\2YpaM%Ҡ=WEX] bjAٓŸ"V]u%̖΁Pָ@= C,PУAF8`n~RX:Vu)\^Sc6LrIHR<'  P $"&QhI:̒_]u(5_-C̓'L{,23^HtNWy˳/V7ݚ= tnty+2r>hi NkmdoHʑWYy6^&nQlZ߶n+&0BѮ 44K sXq'wy<]B Wc}s>F&d.p("oS) DRC7KA~Y7岠x/$Ȑ?7<өQE}31=NhݴIv1O3>Jԝ?R: K50Fdq yk%&^&-ͬTf]q؁>B,yq}1Jɺz\'8|`f[8)]r +q\r,Aiw4PDY1OCsV$suE@N(x{=@W,o}ܮ!ul#l~.&Lfrb.%|S5<_ZoⅭ#3YZc~mn qV'/!K%K_ N)ݕVWS),iaăU(i]Cvcs{aVi.|/aPJf`$NuA7JWuơ[Q7l{nEubݴDj1,q|]5NȰ2%[åb7qTvsuQR[3jJ+0> KOcD7f^y-F^6o_Y&qJ.Bdҭ8 W#VdSq6vM~O8** ג#tƕ3&xZG{r*^a&U!" Qck@HCV# 6r{2k8O- O\))3sRyff(Ŵz,}^R 25pV1c`iu,j6<@,/ f3('l%d)atvhgz83\pA^C\#,jhZ&P PBI_=B7Iʊl_OlؙkݎД^Ka!$LSd+mfX {PUץ}sx;am푆2X#_U%q^/edJ݀Aϥqن.seS_xGCVDj{5j,չ '>=qYe C󉄔י7ݞ)N oKbmP060p=snZ hk\ cD?kaY|JG*͜?Tfb+sa16y*jRZ?P2}EC6Sez cɧ[*!u]_G<̬U^ۯK[҂ͱ6†(UV^«79 +&ͫW,K!u@udxW_hG/b]j-S[?ylR/U{3Mm)xHv.oB1D67OȺrV}Ji3Lv@_!VP`)v+y'oc؉8?t!EEu*w܅_1 ]B|,[VOTĠY|L!S-A'4!p8>xձN@~_%>ZBPAfF}\@v Tˉ:`<Q^W4J-T4Nlt_^,^q:WP;D#Ȋ ,=6l6'irwlGnBʣ`Π, EE_=ן )-A,)VT?0ǀV^1rɇ¯MW'MPQK:SjF2yNPxV"gt`ZVx xIC0ƞL]oD\< !C]wڏ@P L5s6t֕5,u_@;=J>6# IÙrJeYRu:VN&gSKdiN.țGJG:p#LiϣgGCk 'S۪b3hc-sry FhJDrRw5LJ&/`_g%-] oP!KPt궡GDF R8Z6d =lPKV!^F@J]C=L1!a%6.@k}.;PXej(MylsϝɢiA@v ^KD ^IO8+n8y=Y?زWÿ5}*L3?N^{r2 JrR Fzͬp))C賌@bi(3oIQ,Ae"& vU5:o|<DmFѿjaGN%q3s]&: JLg tJ4qy\HͬQN(ױO÷C@R9jaص>Cɨ,aԎC+[ HL"ٹ5MfJ/= W_؎rJRʳ{XpÕD #=6R#˄;NΟ [ƥBڝ pr0xWJGmw\}1Saq#%zT' GZ$'[Iͣ!cel{klQd+,PI|m=lKVHLԌkvOj(5K8 F2KЂjaQd N#>)~Hmn7U37oQ]8%|7:ɢ :3ʵճ`"ȥz- H3Z7nJ@"`x%PSk9%&J (Q~U ^:3O1n$|;P0BIƨd7ړV?qfDVG,q[S <'F蒛l OZm@dPǚx,M1 B%}ɰl" N8Яu0@e*O6i1F{Y¦T6RtF-{j`?}ORvS Hj$G kkXI=M k /9T5bʅ88 ^oq9W2 |-^;N.&iKz/K ;KG1Yk+*dXi߷Ӷɒa=,*\,͊U0(I$zizT4dNf* R䒸 P Vi|mBѲp4"WOY{iFZ?AlU Xّ )Hg Ʉ !{]җ}_2*S8$=%&a89BlMx1D*x']b1مx_|r5,7p߮"& (~Mf9T@̉%exl/ 1kO(#n3w/ cO_X'4f\ |`jDTUG;+sf&=ٕͣsX e8b.y>@NI~^yX.PI#hMv9!GE7y䄢DL~? bl^}4F1&f4>}^Կo ??0rOwBrcb?N~QxDu}Dޥ]}0xϧkTR[y^ʨ]A[<([>~SH"U| wBPlo!.;wn)lTڂ2iiIhIjv%` & 8gW.>8j@2n&o/u$_l%Ul06^e*<5h($7_ȤA,S*(sgMSTXU͑  =0㝎ZIb2tUu,k1 5ggWc- yxH<4|>}r央 vIvQE2OzQRpX@[]4Żޙ:WiwZ)XGYıwlAYA@EQTFQe]~\+Z|{hzg,4 }nz'POcqW=x9j!BQn?ri *wy] y q[SЈ8sU:*ؼO4XThLKEq(r5 NS B;!\XVz+dh>ѤDm)Pp*K_2":=/bE:. E"9L8oʠ  ) Lҕ?Ё@tM"wF6@S?6Up6 rz\~^2C8Ln*ܙ0gv)d"eß%& w]3 2 fV.0 =J]v"4/H_i. mMPA߃::1\6bxPij.ijl|CtܷK9_'=fkK#3iH_SA@>mřnG= b/0Tq}xr+yi1&rɣD0Ypݤ^k~-xmػإhYp0|_Bgah k\X70lT7ҥ!ɦ̙t0~@bkWk[OK<~~\ec oLFagv=ENJ:;79So_VJ*G*-YEmlHZ)4,!6\#ɴ#&BUKRšFf뽜\!K C8rIXۦ^r݇ $VWxóikޏN9/OK/'3Ui lN=5G0]+=p놗!50h8.'\X0 FrH7NHN'o{Op0j*ڮɚw/an4\}+tnC8Q+~9^ =|_~*ɥj"2x=˙LVm3Jo&{&QTC\Ή4ĊʼnΡ>8~?ܪ6(NE,: :RhXI]/h8ɏW1JKr9 Uᶎ=y^aV<&xl sE2W^HɄ)rdžfچA2cu3f{R4i$8nԥt]9ʭ(HUM W^? i M̎UfETq{-"+~xC`n-ZyPuXEL~MP_X 0w:MmF~/mC0ˑ֐W |lH0ۨ\v u;(] u??V&'no2 #fX5\!+keѢ}Q V"5  ˝ffv2lR0 0ODc ޜ`-Xz²,`8mKMz 룜VU, ۚp40cvAkW5zl`&fc3MSG?MF\7ib/Lξn"(t>'s^m]5ja(WXo7`S_(9_U=>a7YV=Q\6 !pBiˈ2"V7/¸ Y`{Hoj;$A/I ]qrl-4Mfn7R<):Vd8伊?Iw5I>.o}'̉Laj:Qۑy&¬kG擉@~>dhDW nxE}? J7 ;˪CfUo-Ɇ$8IښX/Ng‘X޸5KeW 0,e{E;-i%X]%NHgHwy&REM"h )+xU֍Ox/̾Ý5n͜E=KQWLpӶۃ M YG =Ecoؘ+ru\V@TyYe`p2E΀gA,7ݼ>`o?xʯd7xNȣ^n+ZrE~*σk]2nS2E2c*bsO`WÉ/Z2u1$$&yy@ gl_j%ևL8j/YdNEs{w7gI l>ǎ4$h&Ȗ+Y,mq4s |{ [S"_Ɠ/)Xe5KĕD&KT/"FL>2i sh-[SD*ʾ?4jf? ԹuB$M+wW1g3L>(*-`dmCqQ ](2.08+N!ߪ!uDyX{DBaS_<+ߧKm #VsieyK t։l:qA: TI2Bd?<ߦlg-.ECHQ*fMvȃ4+*1)7g\40 MƼ cD7?쉥` ֕ڧG$t#mߙ%%MI Zcy]pcQCbiEaJuz?ho\([+һvSc`D4B0;U' 2R2Ly:^9Ui1-XkYu,ԉn$K.8cلh 5bytAhO '&eeODH&C)4%<_b\VQ,עy3U".dhk8w۹(wXe8X>݉ʩ#SHɕ0_U|XZ'0<[[]"Z!iP0-Җi%PL:#r ñJ,J?VVI\sEV*;STpI $T1tӗ~SR@!M΁)*݇ya~A-λ|J{u/Dm ,VpSyC4 bZНIb66ҽ4r.;rveӽu0).pgJL7<ǝ@þq]^kA\˥xCvquE;)W[0$ {bbbjQ;yԢ r-,ǡ3/էZ\iӷhJYbLK]tߔ$݇ά0᳢(R@5d(&׋Np/@_ m/?;h'.ff)>M Fw4*5 jHd;&ը;OJB9UC悜'hYDZˉj [1Tb⤋h; 3$_Aĕ/^tW.7keeQb}~7.E^JCаiX#^2JW֦ A#621iBN+Șfo.* UGe3B%dX 5&KVFg9rf/zqtz>BiZY1J"XGH+˓_9X^M@tU.lʙkdRe38V9XiU{g ` 7Dx_M*s7R(L*ݏ8~:b8͌o*b<=[(Lz$m)Hn;9-\[sAE2Ը}mLۡ,I[NJ?Xj @B2h/SjR^'.8DT]95Pxϊ VK OOIq >J&xY1";a/`sk*X= Yfjd yk{NY*JcN&E+RRQށCj%U>?zt%; q$y10N7~ XÓSnܗP{{' 51c葧8:RD0l-vO;7}\v@|bee]IɈZ qU|b8hȕ.)W=H#T5 #1j^d'^{&7Iq+(aWJ Ca݉.,fKnV~ڇteDx _'9(;I~t^ rG~1ъ`=s7'2|Z"],<~9zԱHRx ȡ*MP._ΕZ= i$F^օ bENm #NmѴFGkN/ C{h-,r^++zMnT\-:&XD~F XFӁU7Q:VxQS̚)L,' fԌt˓eb6ovmRz"ZAr^Kκ3 =ׯIG,[&.OB$'fz}xvX :&O"H3-dλlӐV`J%Yq럹lX~PsR]ڸ I>w_ x̤+>^PkbH0`5]G.%03tU[#uCXzћ FGdjIx6ABoɭt0> _lpÔ Dt-F&9%n`TBW)O3V2kĖ8:Jp_k3Z*]EvqH!N*O.u+ޯo^&'iTku еQ$Q/!ܓUqU ahWq&O>9(#g{ibxĪ#o{<N]01$cq_V אosN3odkL hUh̦\úy@zaJ-O{~Ji8_y!XqQ0 +wCj&GČ5 ]'՚ˆ#A͑ՔOǃnZO`11j.LIjwlK7\7B:n*@ mMXɏg U^dɦ(#xg0@nb1 _ P3o*(ex5]~B5| @c:ͤ-1bA 2}X] D#àVx?%kuQ89}6}~A4$ zlu.*, q؝ӔN߈!쾍X'Fzrƌk|7U GHZNT#h: VYSL;su$ <S[htYC<@6u纬=5AP7RτAǜWgScp tR: =C nJrg1w+Au9ۏs13P\b&IY]dkZ4R7~sqK*O3Y A珲?d{r+w֋4b 0ieQAUu!%b:m9t/ '_3GоJj+轚nvԶqî*H_M>|GSfymJ݋~v!d \V^@',J ɳȭo4Y>  y#BHx[ 2D93x7ZGy:P쵓!HFvhM<҄C-7$~^>zj'ͻto5(;}j?"izBʭɱ2Bcɨ㣮G7rxYP;|/Qt6a.8Ɋʳ!(Pfg(܌Ha瀲JJJ%/,k$@JەN-dW\o匂v1|i7"ޒ0 ;Z2/߱38ϝB -#1˩!/tGfpDcZa,tXn+1KЎCk&F?}Kg_fN) pQ6`=5X[}g,n |C'L *8KLw"k;,caǘyUf|k`(#yO819DGDT9b!!zQLEFanjMTƑR[=)Y,UG@j&ĕ 2xP}SZ{eqZQc 8NSu 3 MFl++u=m*;DI< 7jT^UMqwD7 6E"w bK6oP\rz PAN\ iF|P TU {N撒6u*+*ipn-m[pӻE] Ø`Ɉo"CPzUe"7R3{Umc"NxJnz[,U:PE2D ̥+`K_O,p!=֐Cp*䈞OIG=Xxb"Sd_/H%u9 NC ţÁ~?3JHvʯrfm2d]m(s YEn<$]^5L+DKgEa4U7nCr^d_+[r]IQA*'*Ǹɼv9ԇi.F o |wh:2/XY>-7+73Þ@ZO? ::JM$ʇN ^QΪokFW ؕ|@)e1K2o)y[TyuXF/ Ɗ(vo`QVPUZzg%g0h94V{4mͦ3.(ESY=0־GچT*mj ~s|oܹ:yǂ6G4lן(*NjF;=3 GW'0M╍#Z/'+D;>!uB{pTp2Pz ܏KABhΓVU/J/"Af\PܮJ̓\JϣAuTjçvx6уC0/-_9:=j|^YX2iR3s aʄT]a!j`f!nHfR2QW-{7߿x+SzwqR  7`xv*98Ү$u*B\e _4:V/tSvi_Sx ֊:Aݦl|k2%pgm֟:-=wХvtL j/54QSA4M\:Z*)f\lHQW` ʫao֎p=-UkȒTe'e,3a!O~4}hZ#) 4y$Hx+*Cc#MqKchB5IQX[49 b;K*Wㅴh~@'VEZtj|rb]*b:[+GKrTK"?Fd3]AU 5Zh#wFmްoˁONTujeq:lxs( JК @k[Y ߏ넨۠R;v&7^͎;MK4 6pǀF#RBM|7w.>+W^olv!D8F7#q5tӻiuiW n}|nI'fn%Tw6//uc#/ό _+ֻV)rOT2>N.m.0J/]+pįT?QV{nO3A|\zx\#a[tW9~/jB* BcugK}JD^[ZRBMAs̯:w?F_*ND[/ F|q<vlvyV֟VS[VoX¬Xǥ&T&::z R`aZ9zXE~Fʥ#1-}F/6ǴrW\O!};ajرV /A5qԷ'8-cwš䎂;~F֌ '=3dx露h1%>"0x uC9l5`$:^MP- '༰|ʶOb619cGl vsq%۟TFb (y>;3=0σ$):Ûr& ?]PF,)~칃)ѯNGDP =IO[=fIJޓ;h*r.GwUǗD+yӽ^Exmm_E`=N"!M< O3rK󈓷DߧN{}m0 E 2"zkq錚52AT/[d8?K;W_-r7Pe6|[|/$]HE!Fnu@c^Lbԟ$QƓsb D5Cx>kڃ]Clhb:= ֨0ܙ<(:աm ͛"t&q}z3Aى"o8f=u м)!EUKOĶu;"UEk7۰Qtƴa=Qt1q)L>Ray`%>o*vnc-J@ =%d=L"|%mshcs>_Z>\dyfIW} Ć}+t4YagB:g1:G)=&4$gQ^IG%~'lxʽiu6r9%~bK?@`7g<$)AWg :dpgHU߉b`f ryWݯM 3EAo 5/TG:7nƏ^j 6=LUT-cuByQG_gleB{.+kF嗗zHl ERd+#ҲF|TF=JG'kEA[7B-ƺ kEݩC@LvarÝK$WeAYV^D fH!\(\M9Z^e#͢ThRFۃtZ(: MWnNucJ_\|ɮB*v(ރnP n`B: ;r\#VH AP0D&3xfĝr: qC0_mX'/P遈-gq֨۾m F֍6 ez.|]X~GaJ2yl5l-j aPR cGٞH'rϓƋ\Z!f-jbmr |!f#yH0/]~{x1j9Lэ I,W^* 5]vdk; Uķ +TJg"1}RQz~JJTa7u^0"W )g\mՀѓ4VEgOwZk3/HLvʰ"\cW !)KޗYWMnAUWHKΐ$+Pj$ Ӝ?P`?̽M-"CUofzdMZy [.(nunE;5YB`zG bKOUuaU"fn%܈o,s3 Q3`#zkI+6X}4I\e&`3}%t$a?~* h!1TƺHu}R厑cֆ8ro"ˢsqz;9<‰I a@)2, Dmյ'~A2o>g(jGj1\dɐiDϦ.CX|#G~,I;D4'Я ``'Q/@=b @FL&V|,dJRi:3 #x;&iF =I" `|Yq!@# [ThEa%c; d&˪ )xY>R-KR1͍/7BaNp10ib|M] 5":x G҇ Ka$obpOxcдkrUY헢avyiԒP WTǮNkprHŗۯ[,P{G &:M;B@Z`F* f"P%59G0<* ' T_޵S$uN꿧$'aUյ:[Emzbr8A.L2ԲPspC_ @&{_},߀QpKнzE`1oş5C/"5I4D%ՅB>.7]3ޫ8× Xg_lziztڽ^`=Z,G B r ߠƶYVL>Af .`KpsrUMۦ2f$6H+deYE0X'6{ O,ZQ&_BdŴRw-ag"K#o2&Pg܇u&ںY8ʍm鐨U'|Qlys0>I阦 }شB5BC>7W݉X.;5P,p@B;7T4}1c{g+ޛ2D)Mt'UrHjíTU 6Ubjzy;yx0aJ==|B'ůBJLu~K4xKxHirEl_yCrY\̌4C?PP҉\6W361GSP4Ue.{ӮB^03L4^&kꠁ"Qn$H>!=܈+7/iѓ1Տ{! Q OZX=7tHɾ#ESW dr?o t Ae_R xwD_2;tSlWѥ (?&P\Eÿ")l3ږk, lެEURMVkق fXՇnPeutnVIߏwGmx7fINr$y}xk +|t Ƌ蒙JlKO7"8*17 Ԟ0$~HxA9Î PD6ҔW2sfcmu"-Qc^(xʫY7F~b'>]$t2ȵBCƻ u2XS U8ksR{]w&fA904~jaa2X^͎'"~2^T5B!GD8e|j"px04"2DV <O m3E#bu0\jBxޖqʼn;${O~C<kݹM^{WXEõxOd͓0نI[k4iWyߙӊ^%frENCd*DF<*jeլF|3ky؆ltĠRK#S8z*_z?#?^o~w;2X~f}0 k`V2AOrp+JysGR1R";k[@3uhL8" t0`09)F>}U$u/Jiqm4Oh͓8k5n ?s'{ _jT,ԡ_FwBPKXLs~brcCҺKUj1c'YzxdrXpFzL30j"HZ6oDp?Y俄DI4 {;tp+I8)tތ2/I`$rAٸ].-}C"y3q ?1ԃv!L_S{1hINkXZ E%^:^D'd- 4V@OP}{4f &?ts볘4‚؁+CE@M;Vb.Pm6Q CUCFB18+D1t,iޙRJj%'IDw*!ujY8vޖVN/x+Enm:wq5}k\(1R>i2=roOeBTwҿW#qR2^%qW G {$ֻ.U^'=Cgt"#iabR SY?Y ҭoõ{[DWx] Kg˪4 CwE%KG@\qjq'OWd7&nx3ݨ|<&=1_m0DA Ux3|2,D >:ŀ)BF#$a4?(hJ0K_oҵJ/q]0 _]W%x6ҥFnս얧Zobޗ+O@@# )eJFdv1nUxL44_St@íZ0@ܬUW!Jr}g֭M$Sڿ/h$W yW{;st81/AD8-hnIƛ \W6L*CKO? v%֬BȕwmenWav :Ϣ8̋j۞J&i]Jb$d.Ԣ?0f arZаL&˲j+#X4OZÆ:ZQ.&"<&DjCeJ,Kͻ 9=jY2Per 9hK%Oȥ?qrЭP/c_ cio&/Pm& RRUZ9sbvb66F,p}δ_'9a'W# .cQNCx+ Z8=&xP͝T'SyL&>d-ͫ>yc0:l'gI?Pe%%suCh>.Yq{&[-lhp.|o`ҙ, >w %kYk5 ׷\$GUNn䡆ϞkL䇾Ԩw,p6V>Hyr0]3wDtEIq&Gs0̛g越y1S{AV \- JtLw)-sFP(FP5v@C ʋ! Vd&rlptP Xd/\8.[WP{q3iAW4ަ_63ng9]%dL*7% _3mnB)9T~.0FFɫP4T6RIAa%k UwA\g>ocOXx\*fyO/5FUY7sy6e1=񌀝83(sF3zKnIؘwFf(gmA]-a}i{Hjt5Fهs$sT8ɛB*a \ !QM:-$ߎy1(c^xFfg|?jk*'fOnwi9^u?(O"^Lt44 {:]%mJp&g~)OQgS"5N+L~I F*YNӫquNx;F&|{WrzfI#*, >(M/iA>e9xMI-FI/+?adTI{ޜ`#ΚEM?"9 E ~nڋ52xaia"]eT%N 75K33R?_pj׈-GfZ.2 Bn(Uᘯ(vt!ABZVCKRd]nD ”ӪFJʢUJE^mci%LCtiH s g4Dc:9Ԕ995eݧ|б^d@q7̆%WpזFIE,t gLhEȄ!p2ڜFxBc>ƈPWU[3TnvɎ2&x I M~']M){&)f@,JUE43RWM\p7JYvd*`/LUCu՞H-_wT6k4S ZfSA5`R|zOJ ϩ3HX3saX8-[MP= Qk,OVJs@h0>Mia*x@ 0f:s883SVdrtG](̂]vD uHOP"sZ6{6YL>BqZ6}!ҔLVg 86&hY&J eqU6J|HQK,؄#J: SO}+D=VuEQ. ڀZ` 8*F߯ǠG6$% ~)Xd솼򬠠 q^ܾ{"ƒS -Q.RtX5#scGrD F.e8ngӿ+RD:9^ȠzE65VaƩ>#q._b?)&gbg[k}^0jfH-ֹ+LgXϐᵭ0P$qu1:ו׋G_6lo l 'y2(L }Ͻj?>O~f$v^{sz뽋j]ҋRSKR/>uSpd[\k;>k$kroPh?.2Gl5GrX>*)HY۽<__;=&׸]*x~fT Do%=(KHɬggamc`]f#FYVv6O5Юֲ`cv;bڬ}?ԧIgWHXv8}{#:oPvDhk#Ky<$@]8V9""t(;%WlOHI+3Ub}.Op% kR8naa."1TK8Ұj#1bU=蔏,,YUk(-ɂeM= (Bq,w)@Y*K@F,,['M{S5f/3yMD x!2cvoK;]!st?ёO2 2"iDyy`5L*R \DOD^A54ld"mеԸl{&).J"r˝ugJ`#(΢˰F8f_}ZcD_Wgά!|jC}R"϶{_3 J+LVzE#IJ-s29}ԔO|?W`CǷ.VNwfK.@Ԋ$C.T%¸ UqYDqYAN zhiZIʍ 5:{zB+W" j/"(ftBj=j<@qqVН/ciHqNTN_ʜaP~.YAµY.BI|Mn]hVŖW;=Fxhb|{臜+KT\P.;i'zM6Hj@v|'LB"~|bFh?uBS[Ik$Z]L#ZH/b qj q&:l{Gtϙc T75ijw}) I?l} ~mhMƀBF=̨FHDb_ + 1ӠUZanqPG`v0к>{w> ]r*pVVs{l{?2 VQ]a-rv5=fJ8N4#nrwmֱ{}hcCuɟ ԁa'!$Ehϯ$Ai9@\e}_vP&8Zw@־ SzѺzDɢb6٪y#ۀ!qTrA[tO{/>/4V',?QJ∧d*EJMtnZuY! 报bǍ -.AkhH Y^| W6DW>e8ùha+3S~gՄT+kZr*|Vo#m@7!X%?%N8 ̞AÖ l<X0WQcű>6lRue5,Pxӕ%]\bqG,BFbƒ^E]f=ZfaC7Z_)*8˞ZtXZ9I  %4w}gN0fUa8.X2:=垸$%EX#m&B0wwd8F]dR_@qW*^GqAE)i2}YU"Y"mf|;a YLo,RQ4$`MwsXw'^;w.^ΉmW%k~$`TZ.5Phm*L/%I6Qkӄ{<}ɸv)~u)ose37npX-}?Wnc+:w-\c)i+JkI8́> 7ۗg6?J90ī޴3ugg+`16띥Px:ŵc ٜ1jIx|0-,7Ze(o)+s0@'tҩl;v̄^u\$m1.MNj9roiq+NWH![ NS} !+ßBybHzR`Nh=_%)OQH'%VQg؈$8V3*IΎ67>cs8 a*R/ڃu $$!a)Rڸ b$_6[$5Gq(0uQK0HkwX `eURJz~Rl hx*m#hk+ S 5~Z+h 6; 0j #>ő`V_L q . [amrdK}y\X) Ő|RifPM[k\8}OIe74f ɶA@֌{)ZdR{t& HؤT#uTy^(caz)tǢjoɬ E}ᨤ\(/;=OfB6꽫`{'S .,a3# Ry{jO)yĩ|r:=xeIbIHx t M9&LWo8`,l$.[\$My~Cm%]ԱK1]Rt\/nbg-@8>cJymΡgj(6Z  ZR9G9ӣ[J:,Z]epYOrљB>jbxSP'fӿuz+q=5L|v0 a2wxk< [ൕ0UyrO~\%}hT7曃>6S'Wsg#9-0l F?c3GoP.Acqfr',$.XUv_\ʫQObBК:X/@~ E{<ˎ? yl?9[< 23N8\QF=JaC5t2ꛮ^obR^łE2x]W:O$ru"svSb}ښ`bC -̴[k3 ?>7#cꕽٚG{0𼺤  xvu}!XvwA i;IWb/i]G8'S);#wxGBc%t{Cx˚2_t'{i}™-n.YZM"stmܼoD_t+|X84Q+Qd;Yyv $ewJ^nAPԵQ#(;[zfSF3 *Hx+!l:ǒ+Qڭ܇"^mj$Ej`Uh/PLxsftI΅EE@JW@akFPfVe{_%3YԴځ/(a|^Ct.ҿ*xYhʬ*9Ȉn RETg-X` 5/;Լ(jFĵ Nʭ"Aଧ7-}Q4 -h3ͬR%`W + xF_3 kH io֦D?'{XbyHBzLؼ5کIn7=Qu|:pv^R n5F796#e&IG)U[\o,a23>ibMa|ydXiȬGF:@kl E3x Pi$ƜDera9a;V}8]Eàd$Pog"Bd*wHKN!lĝv3- <2In+Ӂf=#gn.pC8$_?e.Y4?#zr󨽩jycAHku3m66})t<瞶TG}HlX_tZVhK~ v̰NIBGѧu\I_!W$ w̱7I&_$S>A@NO" ng 9  )0#2*X E[9sL4K!U[k1PƑJ{ڣ++t+h$R:6jqrɱA: ]uX&VUywzvԁb0?rҺ(p}lQp \I k Nnat_~QP\)UDbPe/16[HNn^2苚rMx)S}^NYDD;P+VӮx IN^p!R4 ksthpݻKb#P@hWw޺8\H/%7׾5?mF*k F*V8d}HNH'aeq"= re}/Pv8Nl[t C`e8ዜwڵ6SJmSmHktE^ Q_.(C|eɯ7Cz‰SX l IT`;6N _wMF*:`*}'[u,EL2IB"ӫmBbA|rXLX[bC)'`LuG, jS⨊MfPwEu^QwxnG@mR\&QA N"ٌy r .ӱC~MeSN7cY~!Xр=$,/6fE#kg CNj]¹<_k'+ՂZi)PNi&>DY7*$Y{|>V ~BMd"r SFXl"ي'U'խ$g>ePd}?:Q$ BA:!et*X=S4J넏Y3֞Vw\aVJ >IFve? ^?27G9_{Y}?Nh .)} >":~0_ C F@NBnp4h١^e\R*F ”EJ>fWNG1׼I=hJ>_ Ey8,6vFQر"$F^tHӽ)3?p+W"ܩ8 DOKP6<7MC*wԜظMv7<詷R4m 7Zs 0sJ^{'^Tgv/j`t17QFRO܋eU\,"Ŷ"XJ1cM~@?(.QF&&ɓe[xàK$pj+'~DHM^w;'f;QC iB(КZQF i rzJSz,m"6Nɱؙ$^酲kiGpxoNV<#:JxF.k%+pp_sijMaHbd0`L T l&* .׭箰9Kz[pc?vV8ƌ%!kI :vBߎ12vp]2Ј >9ޒ(p:3tRFL蟹M ,uO<6*X٤l ?Igԇ˯, D1ٿ,4}?S ak;z._eXMKLێ_y?:~X wW]Ɋ+\cYDKGj-ml/aG_Q`mVd\Y(51 163-K~9A>M^_CRDM[?lYR;ZFrHW8c qP~+Hy증!ѩLHsZߛ cFMbq4Zg1/agYC_&gnՍJb2^)Y&n5HS/KxIC3xpL.vxhbByUP:K47y//E@H#PcqvPC'Q&P 4{{;`3.x(*Ђ vȕF鱩] [R+|/ _e.h-oJ'zi6sB N 6G`S> m b/I2Ha^"3. vW )5L9 ֪ݤμdO\oQ)tMQsHJ=5!< %]8V-ž@'aT *ؙN%#Rd\^xL/&/ف~ma:2&07]>m0j&=_*h ߚ,`Ebz*12K]@w",Z똴?ȴ)hoJFوAAl sj[E=H{ڋ7Bq:Ad#B\b itR0,"AI]jcԳ`_O-g jC&gs- X{N~6Υk5HYHI0-]=¿)Eѷ*K FWz|n \p^-ECu# %c$Q<ϲQdo̵5EH \iҖ6W\g 2ӊt4&بU9[E ǼcLysZ] 5b wܰFӂ"Bվf;? Aj=Ĵ5qB]7 ClxU LAi뽑L0F>Ka&Uǰ>Ý )6";W/]H:CL׺d٬G1\R -P]:TqWI>FvnXt=q,%|@&kjB3pl,)[XbQg0p=UZ%aEowpMo1NSue˾l^u:sUyA\ձc\$ :\&,ז9Q|^`wKy$I]lY@+`rbu2@»G^QijbSB )1Q _=)55$ 6I :#{db&gb1#R^O:eӴţ m5@nϒMDU몮f:@hx6;'Ͻ~*]((:0xuBS+Dw]XDϟ 6[2X/kEjd({gh{v_ExnTQ-4P6S& 툆[PTdTE/}ҫơ52)?, aS(9:WQaf:E2V6$60FPZ󆴇|):H-"pȡK @|h( 1H'tduFrMIyJ<8uu7 a,=!} 3G=?hƹP?C9j=b"c(ƸvڮK[}#G^ YF6X;EA /U 2wA6u! jv4tla(rRs񢼳r>5MBEl!!!t/qXʞ^JB,\Qt4˔O.MvM^M 9,Dڗ̼{63y {GvAu-2)3NaT?|vGqekɏ,`!xvٸKeQ $CNe AԔRcf 7@fBFgХk sP.cd5Aƨ4F `v鹤 > FnUdH,xݠ>:D@=Ry9{_W15ʀaMgzw!w.>3MrxP-T[Q) AŇM&Vh96jncլ {@ wbk UNsy#)u1 nJCQr#|zlʸJAY6PQ Fk ?xjfrkq2j1M*h\ H_V~uuO6F"I,Djyι܂fBG6T3|ic[UIijxp]ε`7Nv=-h`sRةpQ&}DD.Ea],VQdJ,G9nBƗх!v~Аݪ$8\ 3Z$ C{wN5LxM3g-yuoҐ g;!7TK0Ifk;Δ CϧO7ЦLzL:,֥ q(`4J>'Hj<6U,Zfb@6ዜvӤ'ϣDo7 -f3Zg }՗Rl+xry99yP'Hjyy0aۓԟ;+7O9\(Q>\ElbH1NeC@b)8 Q1'SGItG%€%@!R6;i T d=J1;,YLst7;z=3S t:n\VsuS^{dY|մp|Q",YFb; G4L~\5tS AU8a0.wy"08^GU& \''|j!>♁뵸[oPHWٽz< t7HM#:X_CG[o)= =.)n c*xRs;S9Gv5 >aϏږlW{~|e6gwX4$_c)LLĠڑ݃[U[},/Ӆ \6bT}zP8%vd}fݝzN3ktjg ~ Jު(K_w%U )6MC䓂[)EEz=Ll1d|_LLbo {լ*& n&D;HYxW5!/U,o4fCyjs;{U 'aF'#u[/ CD;F;[(WP-ͅF%3JiLG: 6n8U \rZ%QJk)&\}a:ꙛ?7@K-Nc.Ĩ@Bap(gfK|XBE(>ͨ2j*B9Œ|u#x1[F Eٕw8(&Ak*x`xrt29|>"wLEd7 D`T/]` Bd>42Y |9dO@zaS}l?u2pHIp!oO=\ur-YR{`zI1!_$ ΟBLLAv7I)5wp28cZĠٚ52Dey2(BVwk `۷ [)z}r{0 D+{Pժȵ  O}ulmQ"K[z ßKI6yV&8V7.,m[ht:(@u sA-nI>U= ]ΓS@/wwqr㵮Gx`͈}'[P-S Cڔds Pfm6"B K9;)y#b+u\ӲgɥW%|:"l(+?2݀H%:SHӄQl{ĸ1k "ە[/!YÓ_pk,yY)mS{&Y lA&[k}?9 G</R\qg5#%Ȃ%s_ r,49SCʼnlx? _O/' m,5Jbݲ9<LhWJv7Cwݧ:v e"~ЮgTD`taYڿvGY jKVdkzSqS,i?i3{Jbi4Z;a"g[#)^r,wt1Bφū_cr3^K/5`}Uekh 7eusR;Ohor_+A,]G|PJk, xeA5_5}Co-]ށ A'"]y|^ǂG#TPƐUSm xHdv)DFroMFpVYUS(}:iC~#ߍ Q^WRz-b c0^PwgC$=~K3eyRku.&)7?&Yq-W;[jʴ0,  ~EJo, MbFoւ[r8ǹHS: Ȓ a7"-z\6۶5W7C!;Sg\zDyd3\H1a'K@)y=]e!!Z!={t 3p[ܺl2=8+É Unb 3]_/P12ןf]x멄?VӺZ%(#On+mg|+p7awS%ru6l+2q|A@΅lGovz+6K5qja~,>A/4r'.+'vy C~ Uo7)*W鎴LH# ufblYۖ,]kLk\ayU Ӏ#:Єo%m;"m_Pt{K.S~Y󃔾к''uHg`ٚRI1)T]3mbSfW%QJ=O yjgdi<Е.ˌ蔪DPŲ5WNN#R1澮P^{3֔8Ƃ e>WcXK75f(fdaW(+w㇆p8.1;XFP^V텛{攋7S'9-kn3˩Q{*%Aw 0bzN+ Gy-Þ(=WFM֖ݼYEr#4I;܂0!T}x;dd_"Sf,4fw!x8;Hg"*d0$>2hiLEұ)pOҶQ}Voq1Nf?`xFML?+~EK_ش QW<5#f&aYrK.uUڤKlUFi^DCs7r|{yPop:oBS\hDv K78(D`dQXȬ@sM{ Tp]yA=UsZIò-3ΏTsl5DnЕXed Ӈ!Sp??!n뙳\H1[gk7va7DžCtƣ/nH3Ls1Ӆ\XQؑW /1a[큪& vTWN.g@'yقX©q[vK͢x n{4ϩҌn_7kN8Tܒ\E`EVT{#T+Kŗ(` 4mT'P:Ce {["!q$̵}@fHܕ7MzEAtJfoV3[ iX/}nj[=yKgҕ볦}r)[Cd{i e+.37ftYoQPZ }ˋv D&ixG3FճBB?mҵWUUEurp| 3{ٜRat^OTDnCCέt蝪Z_"Su҆-3q@>Y'Ъ1Շ8KQzN4@N_"t:! hy(J9M% ]8YQ8|輦0c{L Dk=" 0,F؃Prw2@d/_y6[w鐂D3p=y<2%"=}lj5)zt|%;χÄlHa.DW1ũA|Pf(Vǽq_Wiu "~+ 3H?={K2Oa=p톇Tؓ|ےif7ߘvZqu`4z߀&`p@rD9Rzx{+DdM̘u4.IJi2<\ro(Oj"|ߊZ9\(߹#!>CUx3 ']1o:41N% 31ڪxG -s+O*9G#ņn >XقPyDގNO0p'sV@uToБ#x= ڜ_r+Zܡ (,˽&2m&_|s3>`B 6!jasL@ ?"bօN=&Fl*Yx;4nI@]g6srNiXYb)OF>hFY_s'l OډE2z4 k&UBbOPq51U!3l/;Н> @WK Jw ",HQ5n5MuD䪿6W_8o6qw:.,l7~#н76 .@@6Sl0y1XhCI*byƖgn&.\{D[q"D9Iӹ>rӝֲ%}*,za0DhP<ZdKXx?Yų\( |}c X9iɞW ͧvh[1Wz)9s35dԂm &lW޲eF*ƗwNq&h$(_c[xtcHW"{D ذI|'`VV'LDVS82 Xc]fl \tJ< 4dTQ0Dqfn`JXt)0@|ෙC? QX|zNuGa8SnˎCCA7N0ݽ7w{ETv'l7<ű'``Uxkf=)SC.+r,qU_}^bDYAoA bM<ݖ*<> uIL\ϏW/롐XoQqrL$L&݌ {u4=G/mI S;$oђ@^p `\i8;[|92ĉWc{s\ʁ+C(%95O":m:Q7O'=Tg5OL_t΍CbeJe*lz ,T?1%v[,P3sdLstX>\~? eߗ0s6$ F{1Lsmq-5 -;6 YT-Őlo|L;qa5|3j{>NBh$"at mɃG>3G@5ƾtM;/i޸8b$ho/@K|5\xػ1,3-@SĐIq?(òS? 3J $K^~XA52őXBF9V^(>[תgLID 1 vq "P RʼnN,J˾0-1,~<#Հ/-@h3U3k>4w]DeMX(퍾#{?ha1w`PşUjY2` S j\/W`yhKY4{ǘl8֡^QJ?] M&`t?w9bњ O$e@q &MA[%e 5YQØ*nX \ٹ5iꐮt佇G =PBvFC&dBa{x_]!^d ɢa(6᷷ˤ&}-|>2hBxPn_ՙ6zgOo/Ci2)ⶉ= &J51+<*ىx n2ɭ3O*EP<04v0!j'jE"),wY:6!{*^kڈnLi٭y.` 7 &1JuMgg }ƮTpTnӒߥj#;Tf^|!0: p%y˽4CV~e!g3:m-"(p݄hȘ +h9Gyjɴ:a9;q,ןFmg[4EfNy&ş4F$X𼶑XWc;T2lF EkLQ25; gIךqЛ>Ƽ(- r "!x-֊>.w.b9|Ķ4AJ4 {"{OLϖ*"Ղhk%E8c@g+ 4X6noC@Z` ll2[۽d,-sn~ {ObBzkFLK'յR הE߁#YysZp֜h|8M7ϛ]Dl)Yw^mjuH) ̮fQՑ4CKzX^5k0Yc2e#]՘Y!*ˌ Ŋ@U~37 L)dUI2:-GN?[yeolƓX x3P_|YJx$~HomxR7U|"wDįù3mpf% 9K`,9ɳҁChN>1rpړd'Kl%(N m1go q̗V|H㊟-xrzbEՓ" J eVa/TL^-^S>".ei W_RmW q`|t,l"2&_MY0/.ZػJ3 nk# JE? m<+^M`iDx^2$3<;g!:&C ʼY+xJV1-5"77 JeVꇿ'ԟ -"W/2bUwG)n-#a0\r FY)aI5g1)6Nй=&"is*I!oѮd7 *++@ k0'z,su B3>s4VHw0;e;m^ &M-#٢_@FwrK`AA *~NE80B{!ҨsY:YzHa9 4j< COm9y't}F|~N@ǚpVCd ~O_>\ t/7R_Z詶g,3 qS>,6hG#]M1Z f5/$@/"~-#įӢnA|o}g?3J5оV,v }{o|/D= JLfFS۳HHV 7ܸVw$s0Eʰvr=E\}QO/U;4Ws5Anit= os$8 }i`;] pˊcԹcfx0|0"l"0y !+K0^'D"fJL;rYsC3hrV<&vrtHV#i5֐dPVaur=iMޭ&/ե.ZN 0./# ^,gt3)3k:ιG9E3gQ^|ӶreD{^;`|SͥL嬛 tނɒf0kOy$W?H{Wd3bϤ^˖(!ޫϚIm^Bm[/m7V8`L?4Pn:3p8xw[=% NQK蹢P&OvUXrlA0<`"+c"G$:NG5"!HTDi2hu'IrLqu4C9~ FZd2Pr{Z-W"/WV+v)RD- k•(>e L BiCd {L"l-nH֋c"΋lP$|ؙWbFXt)+]`2:asC2R]TP D @{/R m.4;D?G"<ސٔutf?f" +L%' ^Zm>.OI˦%'t7CjtU*Jߵ?T’[MV3,yA\Kֶz;Z9@Pc },a )#~w suRJڅ7t#=GT|3?HCHnelSxhU4Y%=:BhuGb~޹ʠdw: YkĖzx 5Ehfܢ3W18dCD!WX~9 3,a`X^Gf惦#d/э!i#_P=Z:%p4bjRVXw4GqYl" :1S+$7}8yc\+ Mh!琉R:BREԝill@m8=PUڬ80z27Z6郞V8.z7ntDu+dQ x~]?OS7FT 韊*C= xi?6'J)0*bp`}d|>fsBjNK}ج ƞ^232D0Q2ŠV5U Wb $ SĻ 5c3zj&-Xb1ZX|GFq ٤且i;g|UhWgx. 81O1$c!%V] gRJGpz}XY 2X%9ЯT{@0Yn[mU*vQ|7Mw~ܹ^Ǭ]eNd\v+-G\x}JLD %h\qaɒ>jRڴfVj( kkǢ}w0.9Ec66`NԽ5 %"0 Vv9]r~6Gҡ%Qnf2f sQ6CbYut4ON($/s#x7o<^pkNvZ{@IIi' x=Aj؍~ott%7⥊qN:0eK-&t ښs|?p?_%r~o?(b!4Y66;& u>>pMJьnUna<$DsW9:_<b& _Y3eFSa>1J$ʹ^,92@ JM$/3 [xi*jTAn ݲ=: x,c34|_\qNߥHUsAbRK4韯ҜgkQhk{[s2`6=@_`3,Y}pUnp=0+FPgz[Ǒɦ8)t9mSˆ⛎-^"Ơ"P-{^S+)K#a ZML9Kl[WP*2~WemrSʉ&g۩Z욼1֬UWJ"C=Uק%w7hTZ{,f8eo@Gvs) ӫ}Ig SN3sӵqB%Pǝ9yp$TVˤ0# qȳwdߖAu/zф񠌙> (\?Crj7wд{FF0V 'f$ۼk濝Qmfb|d22M{Iѹ-EiHMB}O|SY!gIa V:̶]ؼ"%_S * $0tJ1۹€w_f&`ؓIM \R.Stא{B_*ȵXJQ4 d3܍Go"'Kc!woAr{@W=8xD% £U~'D@בZ}AAnG!0^}s~Hi^>+s|Qs FE+9'n@~{MH$9Mg qT޾ccguo{0ᚩ zIUxC-D!ੂAX1%ayZP0^.X7 0Kx8!֦a ۞/a)Svs!򐼞_'aofwyNGKz'KuÐ1l{yEDaL4c@Ih/T9pFmJJCćT Ha~t sK=,JPqjn7[o L0yS,WTU1.I8- x@ipRǹbcP:J3>JP8.[ijxJ|4 ՙ0-2E ,pV(X6j̋~sM]tD5} be9>ERMs)1Rt[ <ŋak%L5W֓qSh>V_6mJ~a.qt`&' 4@GfMc=d#? 1~+Kz<ռ/Q.N,/E.h0 )Ϊ8S/`,4/S~@i[W0C;S?RZ~I˗L&$_XܠeEAzJlZ%u\yq{@l.I|-L*A_l+b4utW)L%"%^%/SgG? Z/!^_ X2Ҝ0jqG;ؔy+2-j <5R90mSw(P[z>!ȁ >`] OEU~ #zY Ex\6 Rg_ǘm%tB!äi/Ȁփ)WS^ >][cI3]gu[s8 fH$Qœ:9dM},USU+:}2 r[u_qG!?U:hTǵEEp 0sBJ/+K+z(]F߹x L>FD_[;G8A[f T458z>ʱ 3&8?)O̴dVb6Qwf<ю⼪XwJc C &U3D nOz~l*a4iۨ buN`+*Pₗ⟄1nRir{쾗+򲱙Z8Rn.FDu,yXq o!Æg mC[ɚkEFA_&?IƟԁp&fs-|z9-bf{-ck3m62!-4OACN ^%!HO5+݉8=ʯb%O (~y%@1:!89^p0fS޼FIzÉEHJ,`@z;"U9^t@85/&݋v`mmfN;~H=M*)T l=1AJ"˫L4t&'  jv8 F ϓH>J8/2Do<{bqXEY۴if@?y.sla P>YkMy7eFYFA ZW0 km( ٞE&r} ˃WӞ70s\=Ggt򒴡Ƴ˥\SIHG`cG1 ,g9nbMljI9DwCX+![Qc+kttW?Kx ۙ*ID?f`5+Gѐ͆~=K>[XSdN(Py0RsQ6}x&x}x]~KM2g{&;{JUoA-#9_x:|9m#]ܝ`!H>b9}ۦLpSMʛys'ޙB7RE`ݛ03%Bvz!&uV OA-fA-Q02  zXI3GAEF#Nj(쐰msP*"g'rC6Ӹ0gjtVoRxI @Jܧp,CuEDo(kg ax>a (x:w a &vndeh^>&dEErt͓P8 FŤS6(,+8Pci}T-/I8m>skl[8ק~^O 3 NUw?ḪD|#Ht7xċ.9a@A@ΔGluiIn%IV=1TtMyBcr-dbX* _/[mu1sӑ xk=kR]geD@3RFR RKGG^O!źQKs%¦=GvϔMGf >.9E_TT oup䦷K%fsձe(:O&p>>Sіoy J; r[(ԕ15TYN 3vu.2wiHF=,5:ݪ S "fBV?@捶]Cb De `{|d=kx/3Ǣ!F?=*CCn3Xx%Yl >GMk[L} .굈}|f Đ~Wvʳx=B' AKJ|B 3 XO TOk؇zC1[YЦ:y.Īp`K~Di-)l61^T<1tc$S/3jأdq0J̋= WN8Pǜ@uMYK#z v-5AlZ|.27*G=Rퟮy89%v=1 װB)\cs֯/̖;0t됲fx&,(^D_qLH(f[VʓVby%cp-<b)@yu*/2qCR@s|޺rSЛ?٘b0!` N(.p5̖r[.1мD)*&T󷬴˷(!ۤ>n XʒIQ4J^X3,G8 ΄] A;W+ΎZYb#p\/kEi@9< h;EONq_n&"ꋶB8x㓸~yG-ioUty0OTb59!^yE6?sU ,t`600#q1h:>*ibd?\F'fo'1 EȦNaF0cqRϗ h^kzuҾzP d̒Ye"Ǖ5 f 7 Z&~ءԟ)礭5@GIwH!2Ҕy8q_qr8= :?@IS$^$yOiee8pHn)FaL] 09aN=o=&dA۩@"]/x X+K”*s>٩r_ιc+@ Gn4 w`!|YkϺˡo *ވ,4nV/cMv/ _QmZOmI,u<`x^aDah޵ݛ\K=<@;F |TR$3:4Pz|@Z~4\7AɅHGvNyԸ|$ǘPRkZL̢#P1BopmG'f .˶36?U怐C/JMdjv\H]w VQߋ^g{-˨٪Ϥ4][!;gTǹ?\׊r0+VG! Ov>K?LZ) Mk=J ͻD#FW>!>&7;8 y'z K@Mj<rGq} YVMjS-00=GB mB/~ ]*Zmd 9^CPmrҵdk.lE-sNj?j6m.T>Kܻi n-h)+t2n4w˻< Xy uD]!~vd~엡zu$Z^ vtZuLf&t@TNTHz ;l)sb4MEMܽ e\˳&7V~td߼ѿIڻSw? :{Ox=?B+7VJzvQ.0O @1N4=r6+H?Դ )50٭qpFpLCneW$}=h,2W[g+I[]A!8e"pB*kVĹXoRhZ#9 Cl7AL['P.tW˶jb6'D־Nb1x䟑rN.n_>ܦ7Oy0/0RI`\xOs#ϡ/}9A,}࠮9)G+z4O#ɐwhXoNC[iUDSO;f%}v US2(P}Y]XHc_+_FA@> 騫U:3©iYӑx<,B_%Gc6!1jhW 2>I!,ԮÒ {?ߞ)a7#DK]G"fTg` &RfW۬5< 9Ɯ)>^9)XJ˻q)L95OyGdn:Sٽ0ɗlϛ*Rh$B|L7W:"C9Gk k&H*/ox+jQx ;~12MSr1mi٘=YxW{jm"`!8͎?܄x'|(9>Y Cqʦ#δ[۩Vلx_z̵h–jda{n>=7r>7,iӷ3$A5m *@1[yt`!AqAcU/;N\\3׾%lK"I(,Y1Mh"30f!Ug)v9P pZs Ep 9##j %n!/qB_U=TbM:O颈\\hE2H#ʷy /pk(?:B}./4laf78d逿֑ "br{vlBvMr|ZN.}bWWAP _ObN%o a02U3!`> -6gIqc8,N6oN*2{1))[ %C&Hp{WBoȋ?OYQr=mGܽ]6A+Chw)|pvV $h/yވ`FN Q+W/V5`Bޢp^*yk?`h?f1PaA60_p'TL|l`eAk-6qaV*"R%)<=' 5`VCZX0bO'&{и2ۋuv"YS*upʁXP=`_Ŀ&aL?/<&BhxыTo΋\ Ž(ξ/ES{.*e?Ar㯚x7NŁ\mqD<`@;HPq^tm:Y=óFm3@ڍH跭}SL8|RhF9f[(閿Zo*(}8@B+B⣙W0)Lga'Bת,ttDI{,sB $:(TON4&9&tJ0@Ob&55DQ?mpK2y~h{]S,@>D2,T!S5qyJՅ((kcnfjQ M+呓 >II|O}CŃ$QW(͏Z KRE :E7_Ilc-$CĄfd*Vd)4bI*d$KܹiЧۑrPyKe 4=ڟ+c1~BXVzqCG 6l:G`Nr~+`RqO]L .7^:Ej'n)O†[wwMXXf`'jp0 jHO$8 fcvNr(GNa12uӑiM!˭rXӟJ)#?SmB%ȶcڄ$U,6$qhiH8[ 3^Hn^"w]z|$$j>`ga]/<&ACSg|Jkv!D=10Pr V,e.{ S1,ar3>, z]8N`ҕ09qq?QQi2mM9qo; 8i}s9&䱞E2d.#1ˉm4 $$GM:~Z +i4!p\0H$Ќ7e7̊lUkv+r/Շ0v*;rۘ9R5 .@_#Np&IBq[NoG~lGo41 G&<hDr]#FoOj,9 *79 kLkZ)YUKNc`hMq~w$1vzuvc1\WŽ;ѻ( "LE9"&9TiRfcpƩʟZ7x0PpIXٶuEܽKBW[;/A%ȫ:3GSzo c&Ӿ({RM?KwL!h @ZNme+;!l``PG`+nT5sTe7k >x' &siOay\"wJhb:GK?5@JU5 S#BE/\tUxKAIMkU 0 b.P[+Ij6٣fl?` Hn_ҙfђ@ H\VG1/_oM5^Cp6E+0BOt~ ,;!+-]1/T*2lBwىđY-{.qMj~R'Q*U1?&LA0 .!zVZfD\c(CxooՖ:0N K&\@+`@O|5 )b^yV~KTݳL^Fu3=Ib߭5S"6Bvu)!x8%/YN n7!$)I iB 4xu=cY^xXUu d) ĬV`˰û]I#ܬu LT.G#et-)`q|t2!aȑqZa7[oX@ dࠦݢy [j^IH,tlEnk֑ը#\V@fYWƥ0?+ΑN *""-}G3[l!ҳ8#B|kX(Jfsa~:"h6Ei-|"EeP莘wK>ML28WHI@'j{D-ݾ uyS[_'l<QZM4'x-=v,RmR<+@CPlRπPQahle` F8,Y?0GHXa96t5)HnK΄uw~&H{j'P)Kkbm^_O58۲o oBrOh H\OI\bc}e8~x3.Ο9hϗ:@^d``WvkKeV yWqg6eMhuMUuHR Guǭᵯ*]b=Q4'Q1״a㭊sfr xãÂF@s& 7>p`5PDvp]s?mH t#?1xU$eWZU8ߘYܳBѩ4UOPXdMnb2:#4&}p0kN|erԉ܁ݛo WYfphAyrVd7$0n[A.o vcwiSNTNH)%Lt0rb!_t#;V},FlM+Tx D+ T,\(Pl|1rv?eb|*϶.}٘j% AɑwO:'"M|;|6_6S4dXMD"'Ņk_U`;=W8T=55Bvn0e^otZㇴ/wS ZYV^ .67o5xO];΂Μ4^8 !1p"`c΍ $FpxZ?TH'2koOXE(4FkQ+>qqT2gq ,Yez$صF/irtn`7b¢,օe3IDazf-JbyT WӀ" 7 D?bBx^s#iV:W2_uhq$Xv$Nk.(MsuZ8K&,mSHePnsN'ڇLZfM].#K6 ;6Lr n2 s*z!:75mqܫnaHGKi 8d'~/~jN킊@L=u!BPZbPt>>VQm&Ij۰F弗A-&j@Ym j>ERa h߫_2V*<\kqeZP3BRCZԍXx_sSgdLR Γ191t;~'/߅>Nur@f?gH(54jm]ǤJ|c13}fȂ41Jkc6;!/] 2Ċ6Z`ٝle=7_9^Ժps+[icȦIE[Juǭ>wUPl<ǤMij tp)t*T.i :+y!=iR$ 2)B z.>Ƽޝ k(h$wng9V!--5nz I/@k}R;lELjo:weTG 弋 ;7܂9䱠dKZ%R1~841 5oO&j}3I<3|)ߔ7Y?Tv}ȧYAHU[mvmt\Ccb}+ oAF٧VT @sy0އl1$pϒqkCeBueb*/ }a%6͔XCw9{~nRQ8WH0EtFQ%Sb9oX'(zvZk,-ڟWr.f6 Me,z/CPRZg{~氡h@烀iCAY(o-s^':OQ9wW/O_IU4$Y)4X7=ۤNEWaلʜmrtɋ0.g4oZ.$9: At ^ Sg!!io.яGm__p"?C=) [i4Oy_͈}`*{n k>6# O}9E?4Ç;n$-}cK*V ըKFF5Iin̻%T0;}tB kK~k>Wa¿dI Cd켁jGV7dW`+`_E&cT46.g mJr}Z`hO6Hɓ#'`Nj홀h0PY p!5uU)luUeO׶B#@|TyVAȮ! / [Pၛ=x0E}4씹;eߙW=ځ<3?yhp1-d 4=yBJQD e26.YW2 a˫,F%̣5):ѸM[~$AV:3Ou2sK"]n9rh1ۃ4pY:ղt*~gDR.]FyH6GذOۺ1gVi/g=ܠRRH*>|ixnTiSΚIN"4 ljϴ`(Hg̏EvCv,DxF&P^ ~)~7;I+wZ1.&(-^j]=sOq!!MwZoreRܠ Ai!׹t(Og~ɥ8^{SAIÆRW亙51N(d?DhG|iXub7GG_9Tp>8Y(ΆOzF`HWyqx?ky=EIHִXCz=TÁJո٫*%WY)CrǍ"fq'EHWVLmlųZV7ɻ}xLW3P4Z"޾Edd@;`&爚W7$V~f}M'Wv^7]~o6VN*Q/>= o/;\O&,ow67SɄ RlwcO٫ESa[K:eU{I#CȚ7ZEzV渦ئ:t8T{]MlQ?K>UtKcUӶ)\ f R|w*ؖy{LF :UT88HPZ8i7c֒Л>`f*!NP运4-PꜰbvA{8ԢE^VѴūW+ R=Uɺ Ey%9#\﮴047I2gGSo_ϔʬ|!ዾ8j<  5kL2j)W#9?V&g54~W+upݘL(m[`ԣ,pCa;1H ~`nQgԚ3\^Y 'D$!Q=U`@$CoFX\LQ1-_}_Dc "v.pp<4kgz_>!azHQKt,C |_zolv(Vqx<#0}/U.9FVžx|UkE Ļmo%@j}$$scFZ*OHL87/:s;X=S_uzrƶ @8@ Ȇ^-oeRuaqIH&vD5zT7|"6XLFd(GxGnt0_K^pQc5J6w-;ql8˸$hcMQ u[QHTr/s7 `c[xqZB(~҈by@L8}"e5X>ϓZ9*7**n^ӝWe$-n!^xIV^e*' r .q>m\ќ[I1eoOssNчu8һӦ<ؕφw!Q0}h2Or"5b* (mzQ]1˪h MՏ7.V3TEqyۇGU0ȣi;axV9Zá.!Žm'G3M&MAaD Jo^\74@K;e6M(wuۼq7fF=e-wbJ|vê@j̈́Bװ"Y>ޫwA"OA8]_"c*,M(f)fas=JXLfw>VJ'^:S6ADGu><߈ {. >[.+\Bx1,t]Aխ;sݻt揤eR/yr66X0%닝tj5Qj$ ƋUǻJΫ5Sa #MA^-c3($vRꄼ5aVK^iBc ]m]S]5lOQ3_{ʰa2Kf*ž-c7߽veAqƪ OC՞hdiS)Cβ06ɇ&D rFU)G*6?$>x}qd3ݚZb `L:e4! I`! C[3 (yl~PGyJdqzdAM E??s4<>UwZJTQB]ݫw {:*N.AAo}8{qBJ1%ZG UDBB[izJ0hh؊?DƛEN'B"8ZW`5Eҷ(X,Bv9wWVq%#B9f;n/|[uA դ@vo$o~GcZj{w0 /j$_m ,.b6Kq)5,Ϻ.h P,^HEDL_xCj4қ mfeƸ*͝2*o=Bّ2=<%Z:Fұ_ Ll{L>mnU3/:E0һ/;V=Lz7qhѼ<_v3"k2gRJ*xp[ )gT]~HĖMek /MGRŁrjUc|*I9{ؗD`IqsnO|Gsl),QElf+Y5z Tr?:H)6a5) zMB(jVHJi0z@#OH ei jb}Ջntb VvY5: M#FL8V;y>cc;_N\ekSw>N}6t"[;Ndv<@v+AgSN]e2e&LgSgv[8(#=:{8:Qf}ymb{B!|)ޣopi^=8 o{nj̕Agb&z!Fw5D9_CQd TN!8"ޗSHq6ӖjiEoڐ#Zy: RH^r{`w~[Aц7t'eKJS[>՘9&DO*΢hAGQ\ac(lhl,( 9 wm E;:ա/o^6Iߴ=5o1JzZl_ 'Ng̗`k.p..|#w ›Y[ 5F't n_|.#lp+ubTccoH+ p."")$^zdY}}@ zc1^gxv$2/>|7tGaU+k-bHj[TqUjvmܒNvT8*H Z@D"FC=wT]<ï, TJdݾ}SfG} @K3Ty@e=n=̩`0,))G.O} ^EKNtXmrq plP6  Iw^ٹ;f1#MQ&X$ĉl~ӈdjƠ$QXJ~aI@ĩ) )mw[#˸ 6<H_b5,,\}G\O/݈^{X)/D5SWXO:eJ <ʗ i fiGmp|"$gV~4OH0Mk Ȗn[o(Zk 6j$i}C {V_Cݨli )*^%Wg޼%DWD&rhLhe&=t6D(f{JdvK2 B~ϸѢ:\J&Y,1;kokx33Зs]w8betOe9pdB~ ڤ3'-,nqi.YWfV \kvJ7͘>}LaYVG*/}}M1qZbXY.j$^bϴYoܿU9M+ BYXCJ`m>6]Y e=*6o8-FpHƇM&ܖ(p kWI`ɥoy7f6r3s?(A||n爪W6.QVH[Dqn.+~BH\XbHI7aw> ;^ Uqahۢ0jf-&iKX,ܶE¹Bj/HƄa@?WF"Zo *hCO4o"ș%z-lQI'A +:m%6T,GSvy"ņ1}Wc#',G-2 @-`St> Q7(䵡OV8ZܱC㲏 $YJ?֩]tR.ĂWuћG(t\ywtZک-i)5ϾBsl$-!rnvRp'YIRvVR>Z~Vr@Ԑ/&\یC(=Xk~Wo2k=ToA^QaRpwXKKqCNkߥteQh"KNO 7@|l4"WBoH)C^TGѽNcDRY(o d#,㛉H/#?^㚨z輚/]KMf^SK\NH Pt>MKŦ:G~`)L c,$FChsvXmh=ՠO$8'CelnggY6#UGgA+c0eeH~&|/EYȆkfB2{WnkOZU$yo#2zBwYEH{au/[խfQ>@_< CUPYcj[uԧLj2u7.WPq~Fxځçb$;cN@MϥSeM6:/&m@Sta!kK)fBa,z2i۬wmMrӀɋ'vd1 jD@#s`$RQ:+bΜ\X^X*z@cLM-į^=AM[M A ^u5~i{q( ))ӉŹ4G. B!Hw "{40tcPwmO:^65,ʳM ި &]7@UO&Mg2%Rds}Ui])9n#m؉͖5M( r[Og8BS2W 9HrTFLYm;U͓֗4(U)F`\YJg&e*5cr Br0 +"RD9Qw\[ÄTy-@0/Z1G g[ ~=%_~/KG])'S"uvGFFkI`ѧ@*EjxpCW*5-CwF.%{ӊB>57A.Q}Ddn)qusm&UXs:oe- xh2Y>O\6XߢmPJI S_[s~j^L"rֺy49/m< WzT&#х: bD{,qH4NX_2 1#Pk;WЀnx?ԧzJ<|2!.ѩw~Q}(S!?vzwV{,nI\U vZ ѹCqkLo}nFzԤ?P :2]S䷾q.Dfv9^ ? bGaĚ2,˝.0{\(fy.}k*p 8yHæ*evEnD;|`FȊR櫲\`;Y bi/|0jnqjF[,FP/2P'+I\]Pw#k02zaJ#޷R50~A9rd̖h6F_A^y jѧT9$ 1Onc\ vH4s:0J %r& ?H2b>aajCo}U^*Fw@KD/_gWɍ0dӆ#ݫI"B\yxokVln:I=ffpew { .$ GhM>>Rx)@};mxig^>ѺpY(=0J=!T6\vdz3 }p "Oc9wbX,%סpm9JuThNhq%Qg]]l7z@J [z/\$f:5JոtV >2$ƾdTN.{XzZcu,ETx~j2 ⓯:C+$f5]akÎ&V+K/c7? n^^L -M+U^԰ݵa"⡍ '`(%G$0}1R%[#.ؿ&#Y먰 čN=J+ݓƼ93VI0"&[81{NQ9jN_T#Noig  2u $B0{qg^?nk_"/|c.Uѣ& @.E3 _~q^(%u[ hpD*:+ad]wD h` '0Ҋ3 LR@D>u'@8Xe9*X(QyΨ@gV ytxhWB-ץ= 3Psv|4`FSZ 27P[g2ctq,|YalF= uc6m6ᄒ/S kb7^ГyM0)sDλf/@~#Ae !KQ ]eg[ƽOmh+v%f7..h ow7Q?,˭Ҹ_;S N%MZxX4'{:N֒5TxŸ́u߂ w F w4 եCG|#@)ïIQG%>9&vb$3;MU rT~ݯsbGnZ:-E5Ty)a*.79K$Kb3ЭȖ,%njl gh:W46ϤV#r*>و4\P-ݖ|\ ղx:CѶ/eF}R!X'G幌B[cYeƈ bGC!>7C"5^jvq0v`LzV1^OT)1%~:!Yr#5q?gW5QH6I߳nHwԺ.u_"oB3U})r}B Ʃ٦ -q랢F7|XjJ9j+*i<ǃխ`injo JS){+ګfOªP9")}7!<~޺nG2i>%:T%nF+2hzHJg"zƹh` E]5` jJ8ɒXUT !3wW)|W'Sv@Veīw(RԀhV0RHj?mur/r<7;rq.\)K(ꕫ@gwyc*.ՙ%1H^􋟦HO&3ױbL%ϒY S]n!UAtgGICU<9s86ɰ&BΪcnԴ鶞,sH& WÌ3R݋GTBk)#]SwrdLRSV2QX*9!0z`U-K甅m ,e1(QĦ=4[[xpܐ\/p,V iuzO.{dz>BO},䥆##MY_"d$l0s` J1/HOlg7J'<VrN/F혀zOu.&f9m9L0`>F0d?_eɾ:}[ݩtSWedivFI:7 㚅6mNļ>N4 !\5@$>\N;>qSd{l,k0ӮN'5e2|UM`/m@8KY7g킚>3kXlיz5  /W0g,'| o#DA)pi4~kmCfܽvl9~ʻ9{S4pOFIiމ=R7s3^`ӒB uEJJe3/YsN}p&ɳ~FL^ڳK<`{To H]R>wFRpSb1:e'jގ\a*F@%=O#zO v!v "oܼL!(LI.g, h' 1$}AEd~a!G_nQ$h%A[o0(&r7g٦>y {,\ji>ڽץ1AoU[\AKfd/S,a$M|4VX( xRX+ K\Q-oXh9|B:jjD'؁LP:T K7\N8vGF<l\^b)(a.˽D2X9ӂX ֱ,5Y c#h~D h (Rc3A<["o K]CKo㬰Dg5c^k AZu\y=R0 ws) cתOw}L5(K=ؒܙݙ:>(+IȯV .fZ"z*>uհ RC-wd TْC@3S(|wsg XHIQ QOь+:EX PӋȻ2&% +b]k-0tR~yC:#*<-TzXƻ4;+<# Exblw@b1pqz\  D!JuJ lZҾ>Oɿja#Xa4W]v TP͜~5T頿Ojʌ"˿f͒St;~8<ŹxLS=qPdcfvJWj}%m96L jLb) BHFV6Kj]&Ffpt3IN0ʒl$*oPF?f|)C>e\#^vl0o4u)Đٖp'+\`Dz?XvۢOY8YFm6PSIc>!pulM-G~BКε>? 9lG~Dx!hj:`$t7e>Ft{]Uo7fF43CvцC5qn4-b dLb.rHf1 qs.ckع(Y\2Vk[{I)Hk@ w9?~?(%ȤqV(0 [/X8ᠩ &JCݯQZ^<=}RX[^hHqN^i7n5tx[u97=JDo^ݬJs~{vj:Zo7S3˶FHOU=j1ƞn_ H?;mfٱZOco|W+D0:1Vɴ^f,GC)@&pQˍA` Ι;ㆶ#M*,(__hy+sŃQw@D?JדՄڵ5o'_~IjմgK ,e9ϑa4I$a>t|`#‹3)5rB1j!ɵA35ep&OˣXu#Hb % 0{[;.+7XIYQG'9|䂨~L& -JF,qq] "ZYF0ZV)X_ L Q:r5+:~Ɋfa!u0ڎBR*wIuM@HxA GxQ!ȩԩPH!fa7@>ڔ j =?W`EK)vK9`W)uэ#éؔypkGEq hy)GZx{NYbu3`g:3VGH~"ff"jhA'f5z<a X}arxİ]!ǸոђJR'^e -m1WMj [ ֒R=|V5~2&;_h4VwCaۍ3Jt@ǣ*FaD5eLnl XSqMȟ'wW7=v{UAl[C%H@kX1İ5>'/-E>B (+sv/̧϶hJt"~aHJb (Ptw \"NoZPץn L4|,E.U]zsG552N6cRU# kAÍc/~~Op^yWZRY/E,I`c `z*}-Wbً}g-z};9` -M 6Vol䃓N̳ Czm#%ݎphțh1aXBŊuvϵ7Rt*"aT_sWFr!&DK_(uVe莉-$6_bsίL'JB:8,f1 .$ז3T hyJ?)|HŧL1uoB~ ud^°L ”# d]y+WlUS7O3?4@¬.٤.Vz3>VV)jsYxKY9="~ " Ŀ|//XnArx^>iCM<|Uhl$.=C/RIPUɒ~gZHuZL/j-;E(x_1ӘdW#&G/B KAEȯA-V|yn9!gvbв[UX6a@#=2/g׈pSE-p%YvY2:+r+zgSt`?ɕ<&tC#=eC:cEd^S$Ʉݪd!v'e "UE#|R^$s3JXd`L^ԗS~n6Z Ff!t|"7Id3 `(&S$l1I|^5'}i: Q9Z$Qwe",9;-Ww60-5O|X7=xɟruH,m^R,Bkmn7hA&cc.'ψmӄ$`,op>wJ1i>. z${/SBc~^(z>u{$v(ꡑe Zڀ4,M#A`{%ƫin\Hk|l=Ɉ0t$- 9|[XqOC@,o2f%<*tʲImgZ #x-xHQޅ?kC[E׈ԗT뵹GuXSVs x|.Wsxr#8yْQ|[I+PffhqUtAQ 4m cMM=`w41?i #pg31q>M0H[g|K`U0{ǰeh /_^X,&;R%SYZ=ENbun9{`>`E,P`H+גP͛ML\"HZ\)xKγed'1g(|wX6\M}0}nL-toA (?׊lCHf*P Inbc`$G߰r.9Q 0=!9Y @EhEMjѤZb ُDꠧM-uoɝ1QAjrKJFWMVy$j(=^MMַ/Gr5#fZ>RmG/W~s}f=+u9ӳqnΏ2RfVxŗ徙󁇇,jg d$vRyrrf:u0}3=d\ JѲC@k?%Sa: b~MbR+bb9Ju#l^n)+(*S z*E43]d=Bxo:/bo+0?+f|luLLSZBa[I+9lUdFrC[mWig&~J#|@] f$rNO] *BӠ/q =[N|Q`KY(43|X1ڨr3ԉ9ݙ'lZ1R\ |սbOzh"ׁ)L4wi'En7۴aHCیS+>Z:W;ʴ{qć EO:⋯gƖj KjY2ը~; ώ8g%lTM*0[aԗӺ_"4:zFDgi2c,"?qq 'MH|}ZTPoefy |9;g nZډޱhRj[C*|Os UWgF N{҄ڣ92QbbR\gpN!RVlCE}W\0BǢ#BA$E)>fF_%O5 M7(-Ӭb@q%FL ň퀏;NͲuaPe#S' :2J\2|:_j!ϊ70n *X+ވ>.j?-$oI[Mh[Ƅf?ڀw%ī2|" 1Z!_D#o527BԏL3^N8$Q{0vпAhIOh8tAVʦk .(1Q˧z6R&4s@CR{a A3rC^=[4ʼnVuj.Hl?Ij8uZ;S{<h~NS%Ur)9&Rɕ+"YJOc/9bgVH5kﮜ| QU xȨnME.z)PD(Ry.h|"yU'aG&pz[kPt>+nUǁňtrw,8saZJFڀk/5]3tGJer}ϾM{6*>B5cj:4AN, x⃠ka೉Ҡ6hXPO̽@CĬaט?O?rg]A`st=5(EZ%uժ@訟C }F$M!p| F.~5#.I7VSbUC-rǧ^pJl`yTgICGߺԓSBF=hBU$&VJ,O c[YZMx(P:t]"5|34b_Y>=yRMyz:MK 50 '65Lusf$3(H6m0@[ӃKz++vޠ1i<\uq" ioP?` *y+#ph;G4 j5Wn^ie!Z#lN߫P/NmL.[@DW 5:ux@eOxfe F+)GnTaђDlEqJ2>i{™r€cQ&20]U ৐l*o6rU"S.PLحErASbk2X O)@?ty[A2,`opnGƤx+/N._hRP(&,Uk/QPCS * "N[IPhTX|G<|Dï2`/I~#!@GMłI?ES+QNh9Z%N`6 =ISiɝ&Sϰ0')_OiT7U8֞O ֧˶s r(a @!lMHx#o`"_|MHj\F߇zSO u:dӇF/uaY2Og>0V̈#:FXDI MG US/S|qR kIM&nIJTM3pfQÅ똻|+}tꖼ>|#ed}"VRh3]F,fj4~\ y_ģ$kjoֆ$M:v5T.8+ѳ*{/tŲ+#*P0u=8'u~0dD?oȑ]U/~аx ɶ/ZJЬF4k!ih&VNbCM;b/pelnmi^^rN7qS ɻDo+#Z0Рp[GW}۞c4]h*{fI-K%渐Ι]HǮJ'޶_ oGg/[qg2eRг !F3w fˮ =M%uI`#U9}919ZQUf@h}%NB_36R{a v{O~5'PtGY-?~ -[$q#TLJچgIڝR:r'st)zqr3m$ bj0fӲ8x7{.c7-ɪvz"£л{ݍ*( PELMKlr=4hڌi>$/D gl\B.5̊JaD+JAqwp@\2+BP9pk1.y-?G[X"s oL4{0is>^PC_˛Kz77 dn`t"Bg ѷ#NI95\oEL2+_`ZE% c} l#$Z1kf'l:RYXBCTB1Ǿi(O32SThqB-w16 roJiN5._SXv+I<>B#OVҟukZ*-JFU},zµs7l2:jd@tыq>UyX pf8{a6^D#[pC*7O}Ei{)aҒ* SÍf `,qb l';4x^4 Оe rU˒ɐb,߻j@3ƪTeF8pq~wr$E(b?fu"s<JM'?Lj)Zp{*T8LV/RBVu-^wR9Ș$b(S39,Ve _]#G=ṋ[78WEj)IB;;}==”jM_Y/G;P78 %%zXnVp~t8}b /:F`P=B05@tP^ a-%}E,/^RlYK0%wk̑P(u%\gvNc#Ia9P/l[v|8μZ5T+vjdR.*ꥥ߫Log &VbgrBNHk+[ܐٶvͼ4)8q]D g8I':5ʨX f$}:%!5ʹDu '& ",XK}h \ʷFP!'C_;+b6"*N/!>uin f?ԿBȞb^c#[Kk6f=A.Ix Dt<=S\RɣvV ԓ֭4{V(T`6&3]cz|_RI񦴫@[k!y Pb1Њ:Zq1xV|LVQdފI/D-)/^S#b1]ܻ.h }Ni7w?g}7 Ul9ak.mZs~27n{~չ,nPF3Ms|ik58~Qi!kc%ؤ68 [J2D+!b).rf%஀3ҼdvqP'vF#7$E (g\7o1Ru6΀ϿT?X-ZObOBV n~EHxK4p=FgXOXKedJp` "-2*is-%gx X9i5 $@4ɸ䑣^|F EZ-.G  .:QemxꉏQg5u",]醑I"8w(kX Uu1y m: lN'Z9MFFi」3SE0}* GOu g6-d~%y4+(}O8Ʀ5gk.IMC& ^Eo$JZeRlv{\_ sz"qMU,Ip /!EcSMu| LHiG@v9HL?Й 4EBH_FKu+=zGၹ2PuXGhe#}-`qdq,>Nx w!dS!Z] iwsghWBzʒ$kDLA<&%#Oɧ >g,0 +f^kn>9FfŖCFƔ`;$|6#!JqmģvY%̽U= Bòz34Y(8f"Y|ij%{~~DCl[³4[#"<wF p{ JBĊ>pN&^A% ^i7͔Suۋ6.F gcx<`,ĩo7XΉÇz${ۛ!aB$[#qE)B8$%#ul)8Cu¨8B3=^wWR ŨL#1p"? >nGGbsr߉rlcim,Z1qu|ު߇|[Ժ.J"6/TP]z@v%x%պC>6V)#XiCBsTG۷{3,gsX{c X@f^f _b(y{ 0`I7 d  q]0n7󙄟{η8x)UX8kXVɿkpbNv>Fj6sX"ͫnO0oX!/ϗqlC+húCy]lP{q1U=vv¢vXwB7 l@mWҭF"HOϘUYQWTM^U~ҁpwH:ye]MOHrIuFJH x~8a7xHWVL6 -XИ+{cGԤ`U353ө \҂0E^fecOWP}'Vri`jaB󞩊vr%sOq>_m"pD"XoLxa@'˃Qا;Eef#Hٚճb7/{@r ѻS>*qjDtkidgV F1E:shFe? 2ުIpghڕ]~m΄NTF ؟ d2*er,}ztbk+oN3sNK2TMxh}JsF{QӟrЯ^;iݕ]I 悹z 5{y'bK`MxAf$*@uES0j-aߐ[V_r.l~YN*9Y>Y؃ل^&+4o:_"Wǘb@dÓ3A{Y!l\ut&*&Qn&nWNMD(3{sԔ~E7U}F[H')Qađ_}ghZYz1Z7cYa2{)_DI)r}LLELUnuKtw?!5VȈF@q՚P@_V u$2J%ZVMO6/AAm.R2 (/mFgoaQ>,o5x艤Bǘ)׌<_'z\_3lF\oowB=~I{CN~IY93 l?cI}E垤+qMBU,PwM( ŕ ŀ O>l:kBU(*)vmSMVmAR8-E#zz=wZؚUzuQ =! {kfc]WeIMɬ1t6'rJ+9;`54eBun031bfhw{{6TCI䛯#x{Zr7vp!|"֡t&/ς2<Η $$Y^m[KogU.SWMes|v/"O:{(M_xh*`EA_0[T-$9NI҈1QF&ΉTv;H.CG#㴤2 @wzpSכ%L/1򅭔;y-6`z}aLF^ ~h|0p ̘15 TG$ sŇt`h9<ٟf1D4AU?N%x"a -?׆ZAq7z,v,1;"Oxԫ?k ?dk}_DsٳU&p)"_\F:.A[Т ؝\]rՊB)9oBa۽pivh>vKS4;n•N~>갿iEPO/#?41u/' Ct؉<< 'n~YT C[X WΕI4 "sW(0RS=*|PeP,cI,DVȺ?jމrϦ@Tgr-=mzgva6i&ďPGM4'.W˨BDbi=Et&O^< ǘbA] TDvV@RkVNwxLxa$^{k3SnԷ1@uBdz{ί8TyM93ڸD}׊28=KILBdA|XtyCjX'Nm]ayRܥ Ov%DkU[:l$cՃ[M3CXeMM܁qx!έRވ4+ |;_ r1tz|RZb _E!ea8/m[N m}ۍ)zz/NĊ=+l);,[tlA70@ a%--C"PWeO٢UH);C?LE4!*{Qٙ#)z B!JI'=B TFБoR\j$e6%.8eX쁆W\hvaYvT9`U[T}=QPD&ʨBU)$pԍUא7"&<^ނ+8+oap*s{s=H'1]J#Bi1\6Qܣ;Z.q \?7cSG)pH g{Z*Yή> I7I^BUl]ɍ Ap^B%uYHZ wz6e&^ Ay^3CuѺla弱s#5ݙ6sJ1i˕l ?*y;3i`eacQݶW'7jՐN\L]*Smz%3'e^5|ST=a{㗨CZ6.;eoUxЗW$`b.P܁D33p]zNp P}t4O"Ὥ*\`3!B_o*uVQA5 ,RPqyhTS%]$j"*~Ko~#P`H02Qc˦z8%~A#jnҿ\z (P40hֽ8x&&'`jt|S '_\$9vҤsģ/2*mɔEiC(o(rTFJwSAD/TUm^jy^Is1+-&A52 Gތ{SMRFpqmx*!Zw) C g;?Qgd@7G&=.p}α-!q+ާ)-{ [D`*rDLlktXUpn{C[nL I>\МYibxj{w"d *YX`;wQmzL^o:ĸ']GSQC0)0,?iʼn$l'ypGBVt> sqNtzNHmQ]=L`m\7WC/_*_*3D2UK"@%CWה|qJɗϫpIqa0IߢoXcuϧ;zJMb?ӑf2bT[Xf&k ܂!ῤ%8 '`{Q"IeCmg01:VIbr,;HQBcJ8g3!FSi^лΘP܌=%/Uc9hڠ-m\ě@dRG2uC"_PmC V#JW$DZoƤװ^0 JvL|ϕSz/iG)J~c}*/Unϯ!y|0!\n^~T(7||kiV.ZV+3vP\LNHJQtyh ' zy({l_ F/e<2e&3͗hޗQk1/ hH+[gUr0D eaiV^s6mm`fW+Q$ڕɥ*N/c3mX(ṗ6q82WPX]7xD9 rdeyzūBS`z%C; Q^oznvḤ#z{n&V}Bt`E j'S>ߕ lt-3*'ry[WF͚Z˷6+S>CnpOrK"ZNöTW9j`X ,y)wL3Dt%\m졡-{_վlD |?4}18s nY ۚ9ˁ.|3/I/n>I`'}|b~L36"u}%6+aLQ<}ѷ(} O O>:X C9.fly8AL-d]2I1JBڨJP7;COɐj6~w|բMt;^sb so~є:\esoskogD36]x)"wƅ8二0.rSq}tiNRpG:SG*yVx {@]Pm2 psʶ0·dC\i-hAp¾TsG#cS HJ@{L駾NbSZHlWh7a8F#47s ?.D“biÁۮczMVMLBsa<\si0zU]XlV϶p%V=x`C a>c Gu4Hi|en%W l7 iIhoy'+2w<, ApB 2"yFʛZ\*.ݩ|6"QGs깇<+-~tj yC6 ArJf+Be\xذQPԵkA#&S]`|60dV,饙 z #¥ډ u FF*EQ'Mj0#1fGRHXW3nGqUM{R٥[m~::R!ء*w‚<;A_e1y &-榖YT'!i\=}Ǡjo(R=щЍCN7QJFR6L"^p?Yc53ƘyJ^zޡJ@=V8w4[ZCݯ KxZK̫ [d G#~{0#g+a DJVL~w`24zng8ESEszem@aݟߋ%  ZCb ZkSo~W=NJݖU6 4CFvpx@V[ψneh}Ti blM1X:l#E5$mԭ*V|8H]-kXM4 | &HT;$̲ki1-Q]F{ՌT+/nU»_q-04Y?^Ș-+R=Ÿ@zKom3V]f ̙&vccOdt%OksyeΖ|C }ߒ/md)*.)&[j5(^eUh.١1^vcO(Y6mP аASP'ӔIeGova*! z&'p5ki 8_׽[|.t|m@aO 4[X=]/^V{iXcFX0 = imۏ7Gɘq"-u\%ėeep+kzi(#ďoaޱT. zGs3<1ϝLJCn4h"\4hRŀW]}g+˾OFǚqM8]"w!cqL  ,eZGj.HR_MgmHi %0s6 9I@A£ 2 qfmB3Ȁ*>s q HR6]?zzh"?(m%hɃWk,F5O) 5=pgdkcN Qrh$5u/^tm!Aq;>iFR2}Ŗ M34J?o!B >iJa7^ҮZ犙嘕LEP1x92>J!AbVy@g➨C{^vMXI"Enyumizu:N'!c3Y]~wMHJVA\hQOR+ OwA+}rrˠ/R}4>*u-8ȯp5VM3)M~@h>I#?ΞiTj ,n4ns+7V<,͆)?:?F7E5kE"4voѽ )BƑ i8)[1o~7.qerJ/ D&#Dn%_kNa_29YTYom<J>nuYxnک'*orW(~CqßT!M17ҝܾHx{#$(峮bcS`eֱ֪u. n U 萔8Av yn~.aM:TH4G >^be tZb+% Иܺd6^b@>롈b{-+>״t5b*(;쑫JSKT{<ﻼ! ͽdW񥗅x"V?m]iNNe"0ؕ—MA&}}mH -e8P fsh.׆C%qC0{UpH-9+2b>r`>t`&vY$+K;o40rȒ9 Đ~X,菐Q,<*VC`>p"/@/N^C#?9$-%3t}m[Fxu6AXCMKbWR ѡ XA+EQ,dȌH"~)Fg[mq=Њm>/[C_{A "&Mj|},Du \y/*(?CtUD :+-'*=hͯ8(NC(*ϖF*r( Sv6PV 3!+^KRo7'43en3rߓ8 '2GC\xlJUo!K m 3(0eKO]FFDr7|NFs*Ds^wCI뱎.]%H9k1CmPρdOβ{ozL7:Znu5ruͼzX%,DhE4soJ#WPA{_ Q~E5FޠD-&4p 8׃x]rH~eHEOI56E!+onrM/vŽw N[~| D2/PllJQZb]̨wJn-IGɏC.meƘq0vS܇[(bR  W8MӂI'zAO[iF+M^\ ;C%>$Nn&&]-{rF2p9*_4PfJxQ峠YITdr@ޡ2c (cjGzt r]mjaђ+& )?s-b:=bPٖ9IՑi@}hΛT`v.k'v.ڗ]g Po[Fh6 4H$gJ(XAW܋YEXv.Bş0m0UafT(*I-ӱ wYUC*\QHk=XVxdaXVV{t{ ;݅AeibPeOۧ{^lu:?5IfN@{tx3[ KȭݬP]i߃zoX.ȩ⦿!f FC#iYa-%WX0( jS>֫?`ya&L%GjFy0+ h@O[EwgI"dB<84+aKת_ 䋰!vsM+z.E \O[ά<`'ヷwA٧$hëQݶ}ڂNn"=ʢ(G-~W: zRnt:n$76z6P3#z6 %A{O՚$LulBfń~2_V+2Rg J WׇYšK2 xъn(W"`|wGu@; 03|tՊnѮ?Z^z*:)&%jv1niXl/ wDE(>/XqATйТÿ,En/TAhˍ]Xy,o& 鷺SFQ1"HV!g$h4 Jw^~GytG |w9\Ah݋yJ 3w̷O a^l@b˥m !٪Bl%P8 9,uVʦǁ#KMLKc5jK=^gKhZ⽡yJ0g3wϥl*vre*9N3 Px&z,v^n[½lB"0\v"\Yc9n)֍dXiU1z~%ֻX >cx !| 2mo~=[n&Qj|}4@Ui ޯ_kOD%_$e0c)z qN̖* DKia7R<(GR7QBx1 i $, TfWb~\ƈ #AI |SnJс21dsoGbqdZ||PL%M8%ş0IRƳ?O %]Đ}b=YMCCtŬ.\+z/Q҇9c Hew<nҢ{z̈́ PQQ 0̭No>_a\IA߂B<NaڹUOkTJ8(Z_BZNXF_ VDoͷ8K'ŋ8>Dڢ'P[]cU9!@BZ;J9 zhj-dJ[­[hb3N3KXiw{MsBO̙' #+"?]5iZ'JoIS+3bkTG aRg֣%L^JC>W?eۗQb~JO0.2Lp(LtHyFcw wV&գ\a 5^ݘ cW?FeA#⼭z`VԡZCI"s>lqM?zϫ!/[٨n^ȼqsz͝Vm[+D!FsX8ٲ6AKS_p. JFr[DzęNX^GuO+ٟ'^8@a"B;w |աs}#WME=I(d ڮ}KּHڹ}&E-uaC0ŮS5gqIԀlw m*C6r" w[37`Aݬ^^K8;upo]P6lȢϘ)hku F%Djl#3M,zX/0&,aeJ;ulnbEDHr ]ۉC!S:tv#Ʈ,Sj{ iO)p<ߔW. ; Vjc2XՈ]aGO)KlW\i.ׄF'>k dxN㍛t!Ԯ-ڲI&AFW7Pɉ#z=+_4 wc LWx&`hܑXx(v8pIx˯:|ў㚃5 4@]iH&'+ Cvay_&@YQX!Hj8wkC_ҷPt Wqs!lnM) 6y.' "y I:YMyeb^1+Itcڢ@8w Jor55q8Jܬ]u{WETQTeR|y)ܧ@V+$,GOiת kw(QyiL;OiMˢ; kp̑2% >uZg%_7^?OÈ2L4}q̯&Rl~?[,N"6TDy)Re7.x}bQ/,RJr4@Ksjd3*%&gyksp-:XWsJ!3k?B vTWr1㰪z&=3(l C~!x_Nr-|xD(JW'O e.8BcBh?R1M=(UotۙJ'{ N}6w9z6\IpBSrz/HquVO&X~ \<|J-[R~86Vqem=[j'\PN*m 'GИLdiꇒM5b" ݌!w$v5TΥЋ{jʄMJwp{v-"[PG_YP׮ n x3u w !(uJ6[vȍS7Ct{ܾ|Љ>;˓܄l . _}o#e:L ե<_:i{}cY7Z]QpF孺b6 cf!ρ:'DH^?Em9p`hpUULw]יΩ0Z:ŴD6KXBӝ:bR10P$AymANڌdNgmp:05d'ͼpa'0͍uqYPo&L;PackHn澱;䐴JP+qzARׂl C⛜e<hѤ۹fOyMo8/ R Y7 6$[?7ogic0LFݬώ?ȶ^ٕ%Ʃ7\#ojKv}^|79oJCd?fv𠌧#ou/>b{TWJXmx\=#}uϳ~U|AQ|_BM@;UiAƬ$MGseteOutILVhJZ۫lAoBJAcUvU?Zv>Y hISychy̗$;H6ڜZ$\GpdN@t̸MK6?Xpx0l{Y›]3:EHJ*t݉;_y?{Rg |4#yD,a5]Y8ղ.&Dt@U6 <1t)W*[h+Y`ccG8Z3m+*J+qH'Gx]P X-,U ʞE hQLL2܌kqvQ9Ƴ"8O&m<ΨjvT󬣵Ir|߆w=a!1~@p}kQoXzqqX/6 U&d,d˟u馘Hz)d6z[ ы#T$L4(\  pMUsT1fq-8yBOb~l̿s ٜneR?4d0C:6aÖi0m:fC{h} OhM4a81p2̅OU. A^a‰#rr"2Zm{[IyY8!U*M'%EUݻ@ P4nY)KY0ƒl`UL6vIߑ%AB^KS`@?.ai7?Q&g63>&=ĸA.݌!n19#* HR7~HoۋH1>GQti+0,A 4kC`{ZX0銫^pHRvuH$E"||Q̽kbbLcV8ɞU&Z0ty@Ֆ 4oi'N)̤$W:.H1yd]R;<TWW#g(M Jf=$Wu,6wI`QjC$*v^)9GJOH.^<|[ĺ䚰'%Ɍ ,q%ͯ=$3120\3lm,-aENCk-FUƊsc= $y+tk @!26k=̼bLAvS_ 5Alhv-Dodbdl聁1P8}qj+dl #7Vറ\EVL}-3uP̟7m ü*z qe|Bi6 (1wֲEh+1^uf@s''yOYX7];m^(I~74YF]h#4ʎߨ$p1qsg sg63`1ĚM.iYKwj9*9w6ʶekpPBNE?y{Tk40]JTޝ NF7Y@{`lU_pH2-x e Lm҅1 BEA~ xZ|X{0q/fC2+ @JA=l-޴ԜM;=PYH 蚌1U{y}~WNyD}Uro)S֦e>CF%ipEcQI?U__<2uP1#k_^DcQ)3TF^X5szS@1֋+J))ɤXb UI`v(܋[e`Q^8{~{] k}=8dj})99ZL}zK#h\l>;tDf4<.VdZG06Jb`h' d#&Vvry^J+UYPUFkZ0i&_q\~M~Ĵ] O8gqCrXzuUV/<#ۂ(:I!9CRg g+b=)t מXت{T{L:=߉TcHۅcC `V%W\i\W3E-JxW|#Ǐ ^=͑NWi9/f^ гh4'TxFb!Ҁ6 g鶑mdfsP|4T {I%%??kS'tw[JbM#!q;:oqDvH543e:s-CcuJ4N]6xNY Vv.V@k\sٞ4ξ;pmo$w%ڄ<.G 8x rfXa};vo9vГ(Nŗ8 .OW_@%Z_cW[3'ijpbC݅S5``>Sp sp.R%hܸVg"ͧ8`"r۳d\ߪ/IĐhyȗގ.߄ ݳpJEr;٠#wX!敼1 "[]Kd[v0(۱B_H\@$5;&R-` V[_Ў rq|?E&4$5}'e$7;`V{ss4%ÈInA"o؂g 4-R?ƛeUyڎ@zP"3 $}M\FKT!A@j5,Xe0 rhRkN<1 jcX>Q_NuVx>jG֭YyJADcrAD,+H5$W~n#*j ~VԷ UJ@du dӫ@*ea%PӥNiL SSslxsx+ͽSiL2ar'A-2^v^~EW Ѥ][9VZ%s,mwBY6_8B떓8O? /  mhL/ #Qѭ܀49;>;!kH!t5Q~k ,cA3O۴+*)k {v|ИU!o%ZiYu?g!J>mp薜GQ򮏘8ZS ,Z$AFEP ?Ky!頥jMOl40#m}NuqVOlIsAnX[tI8>H:ƈ.>sFAQfƝ+q{6.\n:f7ՋqkR:&3$9qDŽ'#P\ ݻNN]C^vy?b=>t}KKlӢCq=WQ&ߨbP% pP?wG O6Hx=jfψ%Y J8rF\a9t.[;zǺ$ןwA똁L zPgO,f)hhY @ˀ&J&2㗄z1|˛71)QxsͣWÖY޳AN"W6Ā}t6Tf؊d9q}/ǷQ*'ѽ6t(T ]-|V5[$:UQbb!G]oSٲLkݥ\ t\P%>&Lփ}ĻHf,^kU6϶em'?7ɟ,7Ϟ<7T⠒;8H=+;,-bHu>;eoXu?~XQ#$SvKZG0h7&8"5DaZU;30KRtT1Fc;/rI*G|>H C9b;o] >FĎfN*0Z=CCĜ6T'y0}?kN4*̌ Y8HVw$x5:Gp5)7+'Xѫ(:D;PݐYb!YLK $ 4QVJ7y~"y%~!Pj -RfR=jR;rgĮŮT!Ll Pǭ>naF@0qM$7E;?)UW"HBF2?ҋtMVRj?]$e#vM g'R?@朗u(~/p^I'G"H)ȱq&eXZ&Vof]jdb7ĂGEHszf u>"MxnQ̮O1rp]nI%[\g#bOAteEO1h߉^zHK%̣5ߊ9Zvqz5&dڂge}ZӜ> VֳhHEȲeͧ#T;G^[HbWxzF~ o@Wv5BvQM`pZ$o 0˯HrPX  cYQ3b 6EޠMb[;-iCK~'QҿKM5 8 סPn~7b,+hYRۖ7Eؖǡ.AlY]JeLzuY&m&+0zk p$ɹxo: <QQhA~8"+;CqbԃV9jyE? v')(}ԇ翑g^1vi/_?5{WzK[޳ݐ[ooVt4JSE|I;  )@(fll"]'=,;[״-ۤOu&D!M( Tw,&񎰇?F C8p=S!XPtKfv*uIzJfTcu \JS Zڞ(p;Zf9u!HXyH`+Wy hgBǒ搗D F'RAb$N`&S_էϗ&B]_##B5 oZS-܂ qgm&{M4̝E+ƒ?$9 ̫Vuzx>︇u{b|\n~Z" Ceyʹ{\F8m8RcXWUAM3gTIEs-e2BWaNh!4* CRW'2KD\|fJf^)Z=v,nXP _93|t4yjn%c6 ]LBE/ˤk2m=naؙ{˲WK_•g_cr ThuZ˺|sn6"DLŬbTZxe>ĹNn:b|rѡDqퟜ-c87zv1G% #;,t5)rb&]oެFN!qoG8D03X*[+)(9a84}>Y3]4WŞ=\wbVL|97<X.ߑ[C@0p)1$*&I؛4Z[ۮbphY|FxS*lQ{ÃsI,[C| gUrOyƎ~C^ VKI HĘs|DUtDu* zJ` @_{kQPWZ-+24A^mIFy,KhS_Uf{J6v&flμbsbyFe$ʋ{7XHI!$,TuL΂cKjS}"vD@uL/0x@FC|zx)a& [pT鐀P–ļ?,BMTD7* z4"bn/%C@S6 G^z/7$@Jvu3(Kԧ}<| `BSv9K 0y~Q*c@cf) idNVLk)=]BLq5q}0\ol4u/V6,q{l4s?E/ rv1@q|y"տ sD=nMh#QObOGܽlY#SaBѧ!ޑu ,9* Hcٟz :1%^7jONؚcL Ayx ^؈c0(ᾢ uf&~S 릪z yEa%S7e% ocƎ5y#&.iq-$@u/0H+u'c d[@pQ˭[D ,C7y,:e^LعkY6$ثk6c}6TӨVTiH(ȎnnQ+!ϱc.4~|d0]=QD\gewmyq^K-Cj~^,;f,*TP4"TMkI%1r+at#48 - xOetS.a1,G>a &{4.7}Za=]R݇YJN݆ԑ*όiT,x%DyD8g{/pR!XuAZ=f$P6<~w8ܴ`q5f?ST H3 ԄdѳYS*AkI+]"eCcX$*{xv GBGi()vJnJ34itޚL7[{q-:>Hhҕ磐PCRi',Fr9 ǔt@ߒtT~7=㛟iy#Ɯ![p}*6#~_@0P%mnr;<+Jo߮u^NH* nXWo5xZh7{o##ߜ>-ssպ[r,ѭX|̋CSztS,uȲu)5iou.a*R=E@䮲*Gh"L~R><یDQ*Z'`NNw24 0`CJL$]JjTOۗ;h)~ԙW!]Nӳ(mY84aTb?xƸ3Q.m]x:W>M>(= 4)xFo^-Ҷ'IzZUfqNQa"D~V/ רs bpHnm]Wljfjc r=iڞJ#ɥx?'uB^G_E2G{Y+E?Qu$\zpvjKuY݌(,rJ8muM_fp-@ y@*8M.7 hivFf>$mս&悺ޯnoy0Rjz/X L[HV2=J)xl2͡@H֠xl_WN^>D~\:WO-ZzblK/$c-8?ѷmk7?~QWfص0 @N񲃆 uzufjw@cfGI`1 3'rbw m+.#늅mz2}Lg<@A/ޒjc LpTHP"$k(̻kع<|@1G.XktlL?><=|ٱ/[pCe@sdRډ0˝xWHL|'L 2D p^ʔǍfh  -йWL_K:x_e=if)*{6FsSs<-`4:6d|aJ09^R;qU.YtION@;k l|ےBՠ nL%x2[{ih%["խh9}P~XPEu`<SlWXK85pp&ذQX7?CejQe.F 9O z tvw[zuRyE{e=aEqȈ!xOOXe w u>MV.l,1xVYi1 `EͦdyȷphF=e4Yf%;v6dչ栮 wmUQr5{qEg/#R{FNG֦VkO;k"e3.jA}$>'y^'BvEs =sVE{9}UF>tܖ!߳>J G>=!ѷUco,jy]Iu<0{|&$pk,& ;@kZ3wF^x倥V9 jՏIn;_juVۅQ3E}r2Qϓgmȣ+vpD9*^ԄDJ=xۘWnWan@dg0ТDo+>ؕK>8ymпU4?:[B.Ɨ[e9M=]K S}Em)k-TW\E/5N9XtCWb:]AzOG %`@knj@A͊n[ L1\so0arKV;Q;vaҵƏ\%g"v;KUBE ٟb:Jچi)"'qDQ)# ?4J2av== 3I%dhV۬sӧ-@y"'(8g,9v0E&o HqNZ- wwV׳`Q昁p\{ESh6:5c~Epha]i1qm^u,Lx#tӊޯ5xysRW$JAEJUR(*u ?Pȕ-K58XK_xδzn~gfU.SHSzvfɈt%q xdkكq.bx7y=\@;9$7FOBBm;2L؇i/FG`#uQ4Jd q"p zgc[VUEq^z;<,g\0"@4\bHk6*<6*'ޫ=,LкqH1#NJ1+]ebLTuƐ$eH)]GO;j DoOOkS$LE=ij/d~(k֛(;~!v2dOV# tYE2#<01Ը2N[.׉]4 ta*Y'l +`Y 9ώʷXd?? %wl DvAlf\ #g;t4{zX jx:,O{c=UOL&cxTL.RI )t' H(3*%8$EV|8nwL`A*יȘ($j1L V8ٜ :%30%,tKsտ3?(<4hg7Y|JXw3~'q&68]P{I*e'%DU;1Hzɼ~w!Q 4!Xш1Ih# P2`U<[=+.T8o=<0%0#"ΘΡYW!+SFc2 qiJ 7I<3s&c$U&lPD-OMm.qzrL)C_O ]$"w7H;@bu^;*y%lDH])QBLҊXV eWϹU0cE'|k#| bGwh+ |!__ ˈp^C˜!_WEGY3DB"F]Z0H^}ŧwբRNtjC* >zy"ȒRU!wo/wj0["Z8c$Vwj c45nPG˷R%'׵%/S0:ArҊWd6RH w;_pq%`-sNc,]csO#>zO*?e>ʰS]m"$}|/`iQ%NMS6/F5 qF*nw(GPf]ʦsYfѮVtklNovxX\s>XVurp@'jյm7Oh1|[,57&ݵm)F7mȆŪy!ܹ@WM'|h!5{f 02H< B)W1f.?._sZ71 Ѓ5[#feux}XZpa;F[jJms<8%G"3Xy@Sbq@#$^nR rΤ1EV= kҒAuqK,]Ogj,)}M dW,zXrZp*yZi-!8*Ծbm<=<ymGLOM"eǐ?b^87lj4ϰS7`BXTQF'sG6[BlpDnNm̟H;y;"@u"gxXg JC~k7u4sDj3{+%}ɆoadhNw-ӊiJMS(2bЯ̜֩FOTܡ ]МϩY%y?68a\cN AuD PJPܨ. ۙ K&a;sm=#րA/c6X!Jm )kG#OrEbC@Ssp/}n;\Oꖽ/;z{3y3&'jҐ{ͥgeWN#HDoW;2p^Z`Ӯl4"p2~ޛcQdaS߹8dTF[w pg2-:l ^nE#!-0Gӟt̸p'J%j$AԮ 4̌5YA8 #"'Z8 FBA0qƉڕM=\m<2|x*V t{+0rn)R<_|GMЎpj3FݏxRdJ0~+PE{9K8U~&MfD HH3BJ Ac:FSƃ Cר4G903KV!HFa I[p=%j V0,Mz#,$dz ^KC#Qk7-mxУC%I-_"d93"H-6o\Vv}"QKcDp C\TI' [4-L`Ҫ+i 1տn>O}'نD^e3g=nvHfh$5ޙI,*:Im٣:`-H)+8oGd{]R[dGAJ2BD|o֦(7dY65ki .6c\bv0q^ܦq˧b쩞8rb~vC kEr:N @4V@|V7bzmϳkHE6-s{ G6b]Pzirx&VX5}<flE0ix=Z~#dU0 fndT JFV=zaQc8s^(CX9c4jb B,a5фP]shhb;ʚ.*;>5>:vfk ɬ̂ $\"̏b(VX ?EYtah/e`j.277脹˰2KGNA %WlD̹&`nUbmΩˠ= @xPiz޻[g]bآCrK 8yyoZ%yWr &Uh8p`+juA%FO4Jf0o)bxVpÃ^ˏي? eXI]fP /| Gԏ_ǂmzf ,}e^0!,&n🈡ړ")N6Y5cb)V)F`PQ >4??'r"v  ّpovn_&km:_^pj϶nϖf~r}66/D"JQ'֣MJ^*fT9^+{69&+r˄2QIih^Z:$G7p^?|eŝ`\Gqpa.@G؝JZu^OrӄX@y'ÇChķ-8!ZyWT-S_9MRC~lލ@҅2zydFɌ܂bHX0bEJak#kOg &[:;Z-+ f$Hwvj4hJNQr|-;.U }\lcE맵j!zToAac&NqҎ˭N8yq~:nʱG*27+A+n"As_AĆo9hm%Ÿ7bB&pb[)*ie<4?(PN!Mʣaإ~c81~LfPB.Q=M$6"j.g\Wv#ȶe 3M(&twc\IoþM֡F_o1?O㝝tS6~/~DZRe^KS fҨAm4ŵK`a9ɮv 9+4_F8@Qǐx<+2Q@ͯD%ؑHzP܍JϜtiCp02Krk cϸw ;"b;]C {W!27,5:<,/T':( ]T}+`IQ`x7(K2o7=}feHpWH\^xjg?G-Hf|n& vp̮60>Hyo|M0UPq\?H5n?pao]yhpp xj01ީ%'mϓ'ljWC=HSnə3nZ}iQτj,VNk/VX2c縋`8Q3o&F$`mxBы)bA lA,u /x%\Kϟ)J*f!YVvJi`彊HꅯĂYg(nZIP ky9=8$h DV t(qN[c z7u"3 ~%%eBxA2&SZf?zf Rg^zd*hmV^{͖?; &ካ 6"HqO4CN̦|}B5Ck:7gO}ɯetzkx!se?dO 2N}>hMl +MKQ[/ybtUd b9~$q{ACXvVw,%XLٓBez o[;ѵ"m"hWԓ/H4d*VfV=uSk~AR9#;eܱ=b4}&pP__ĚR^ -qz vR?#V9IHaj C\Z.^:):Ȗ!a#0ss (UXQ|.CVm- *_`ASlM_-ns#fk)!^>䫏Jy1֟.[^Wl1GQ̶x 2lX40ʽC3ȴ" oU@*F͎[e>4?+d:*FN% rmƔNJwҷ)*y ucEl]4Xñ`7A^V?Z'TP "y]+&NYY|8* XY qQqB?! =Hi_85[&Wpu=%b'θasNQ&Jp+U%ܜkOkc>tQvl]諃f5zQEC)AvF&֗H{&gsˁ"v ,9_o~~uˠGL|`FḰ$}@ Iujt 7B RKM7o80q$6^O./55MFl.ZƨR+eQFP)1Ry cxWc@bV4OĞJx #G4W+ *j:t ?w$3⃝78iyʰFd|V/o B(Iy'+I;.np>.ݴ.k[V BH [_m2U0AZ|Wv&ҙ W2zqv!# `ё94#ߪ&< &/QWD.BuLaicFX(?T&I(=l!*FY/*1qM8z/%E莂 jWyIxg^鳭F)KUBiZ$P2;x匧:HF#>!pFޤ*暶e6T-ܓUiI: 8 iܱg& v׊y^6]*"`Y[C)j}(z|W³-^,;R@ڂ;MV^"&CeǖÂ"{D;^auYm" u4 UΥQQ;)L/l;4 @恠l!( ri ` CΞvn&0B YAf5ǶNA#uC~u.%TW'J&U4%'H9w+Z1D•uC> smEJa:I Wq t\`܅>~ JaӪS*TWAAظ[vhq7&^+IkMgmmjt]z.*#BBnl$;ᨅo FU8鴶^2ė !( 䟧ݶȁS6HR<ũ5;Іz2ǗG<~YеyetHNch'Ki3ܾ.,oOYJvE + 'Rϛ|hҳߐetCB3! P9۾J~iVPUYЧ Ő,Wt ?o̗6bmj3EadS+n ;.,$jޙȱ@Kۓ7zzgʅj@Y/`8;Xbn_: U~zCM^[Gke$Z-o|P@cUUY<(<bȆI$\kB|:A?ۥcFCІYQ*EMGbHA Q S2`Gӌ\~C)OJpQ.&si)*I&{J͹:J}`":g`Dr8Ͽ!<6C`I;7DMaIST9"SYp5& |#Phy/ gbW/h- qfiv>'FWm*Jm #{K`*\ ʚ~"U_#|oJZ,ZQyxN:^.S%;^ċAVvmgƝE `h~URZE8U(i"~Wvo6DA\# mj"\=PF*Iy빶B|ȓqIg \H>ØcP}LnvpSHJN[&ypRv:Q?Z:X|Q6>ח'1wb "XX`;-s6A^{ŷW\6MJ„JU) <'(8m^Sc-wTYn#VօBZ1B3;Ѕ *W|Z/>^E,!YZ0$o&c  _r{D!/CVP/?`:QW6zkPSW^ښDL_-p !趦g i hP"Mi~.Ϋ6$%}۸t8&"siM~D LĦe6ot{6ٞRaA@+񚰞\DW\hej~/cǠG1b}jfkH2̏Oϵ{!(q:ch rtN_Xb;n4! 1 )45A-t*e_SYjWV ht[!(SY]<^TzWRm8Niv*tg5Gu]I _YT_YmaKEݺ݉z*m$퉵}%ed,[ n1+aĵ[88rkc43,Q GTTz, )rѕo~$=U)w&H#`VwY(/Ϟ6QDAiH+ TX>#)I ,mݔ.5?>TL'7-#@|/qyH}[ Ürsψ#wQK1UtlG7%i%gz[&xEq . agF 9HA4i ?^Dms q?Nrvy?yMMvrH7x@SoJگI`r>Rt#jNGqyNWG^qL|QjqQWƈ05Nx|Jo#و˶vI8=Ezg[9'cΥ#Fv _iGm]9¼vzס^Am1j="8СwA7 ֞huu3ij6ke_FnvbR xAn3%y`oN6}xE mz?D6+]e\cXI8I#o|/,ܶ)OP'1ﱽ'Zyh{J!;٠x +Z/$Z5I["rsv"es]]}3k8>{xqyRpir-j! KV̈9;.6cj趓!:vh8>+ lĥcw!n.d5|!,Wۣ,zA,={vRf.Z3 V33Ff9XcX!IVTdaovh x}e($'HhMf(BN#+U1^@AmdFY+kR MBl}۸g]*J><@[Ί z6lym40XY?E^0Yiu]`MOp bC+I9(3s5/>;1 '!1uKJ /l!&BG0I3$y>,I .y02-2 K1hF1cp0&z'ݠHipx/yYo*0y~Lܮ ^l_6&udu ,xF|,#i_?Vh~F$2h9r2:fF'8 }{lǁ%W(S([U~+g4R!ܦD(pЁbWQU P0qݰsD^@6;Atka2HOLdá &d͉塭]!#wwzDԈޣ4~+_44(t=K9kq2q V1%Rb08K+/|p~hnaxU] 5|GUm6qYQLt6+Wﴁ{Eǯ_aqD9Ӭq-V,!KzYr՞1wNzmoAt>1MLT@!p_b vQ 1BtrOଲ2;@,4)Pj=]Mx3mRd3廼NQckVTCv`VD#\p& \/ m ;_I|B Y3.N*:Kx&lw5,a;be ˜a`"o6K/G}f&B@ b ?\^`碱^MLkqwaJ2wרhj%lu.NZ\ B%1<=ڣt!D a2ۘ2\pӪ :#jhG8BE'zˬV7 :)n'ܡcc,:4 X 1m2&T*{_V/%mɊntV!e=tw0|:pqI6iftRƳl2_NAWnJ#l;ǻ*P[T6 &WӶNm֓ Ե5I]yj b mBTn tkK2}obJ0|bl Fu~zs$rudo|72(VPn3瑗mK K0:L5!Q(]I)b<nĹ]ɓ4#lw%T뾃TpWS>g-Ǡmu%Dߥ&sY |T\"d&ߘ^yՠ$璸 [EoHN=T&alێ.gFάLS:N Woǩ\YC0 >\4U s 5\`rcB9WvrE*Mf 7] !~vn`Wd7jDŵhPK uf)]N&aKK)tj %Eoyڨ^XyN$Q-/@u&TѮoETM˨[>.|#2 Uxz

l7>KP9%LԬV"FhJwbIuصHH48}|=ïy=oiݵ8fJzviُs?mxI̋a111 P\O`<8S;S!(BTF *FuDkwW{eq*0 cՆxs  0^_w2EO'/&/[)k9,W`8z} f:8=DuF4vkuj\AVU-Qt"H8xS)?up橢1|4pHZJ$7}H}Q9bN(͋d=iӰKш~F =l1o qh=|]7fOKJE'\Q9q^1 ';boKUGFOG ,}::[  U}6KyNi/JnnVW&g Ξ~쀭5DCߺB@me/xp4SZ5ߑ.W<-;8tŘjȺf|8s4kkp!'0uq;-wf@0\>msvDRK$MTR \ŀ8IH )EG7/I[~The[RЍfQc1IѝfwiQ)A]1Ng`N v3=Q|'v#J1Zh]% ?OS4C\C w!½д:=m,bc! jowUB44V% p6g=\<شCXY:h-qHRn2y&.ơ6,hW&]=M&VXH܈Wjm=u ktoFJ *JH*BD4}{B9/cj3'q (ʗ䛛>o1 9@923r5C%FpׄNK"A%9ѻg;d>Py(/c=t1?1==#xuNcCˣ _w[2&_ w<*!2FsiT,n (tI(XKȘ!l{?,8z?}ae`iWrӚAGRb+C83Vߎښ xjl7sκQUlP#OO4)Ýw%6kx@dL* ruw+n`%7zt]$ʑxt8`,r8UA JS|ٝy+~!5TXJ# M8tb`Q{(6aJfA䛖ץU/7݌U}+/чu^Db MN/Ⴠuɺ}oF^D5qDІ-J͏c1p^#:5N/@&9 1+(xgi34"iK73ۗx;(K) hYF!x7;?'9O2>3`ԧ!~8 ag5/ኃk t,^@ͧQ ޥҺƑMBk'f*kiȅ:+7jC|,h<mВyM\Xmf~EBE'C]CB]r'~"b\g7jUh;F NEt?6B~ c}vR3"udNANCͭ, Z}C!FO2PmWk ,>E`2sklW_鍾3gzCT0Ptm>/upAdG&nN_Fkd% (WɀhdHQe7^Dfx\)rH n4_IfɧTZ!4j#_MLuZB/1)L?7d8=o˓L{p4C"<9~Nn A> DMg(ĘPhpUr"[*I5G4MD7sX)|xvu,S :HSUBԂ[;ix  +*Wz9(%)4Qod*[7]LKY1pV'`DG=B)Fڹ=.oQFRzUgus.]t= Q&y޵NLfAY]C8)- NK^rW.fP0!xJ \}K8-MCmPh!۵=P\d8 y_cEV*W~Θq n~?(20Pn;pW).*=Lъl \ͯk ՆTP9QF-4t͡.eR_#wU]W#2ր/sY AuRv-*Xjx w4mLv7u7|:6ŻynWӻS\p&W B%ɐ ^[5 (_oD8)_ :+i>w|Rzs sV1TbLİ=PrG,8Zih>MٟS}ϳ7-k`\&)?mD'䦙 ,&lGk'v*. Lk9h #>#F 'b4qԢ 04ݝ[yctǶf X=+ca A- U]&k) ||`x$ANI g~I`'P,*i&i_2+ϫamj }wbzd|ÂGcl apזHV˗ؤA"ZdQ҇JE [ o}i- fW ter=i@ó辇+^u5IEn`zC ,I=F- B^QEqww< &J2t 5(DuUrU_ 84|JÄ%Af؂H,(y.Xsn0HQf5[%ˡ deEg g'.GsWUVfj!-ұf+ VR.^-~yxbWZeɺ7KΞagAR&0V8h,֢LN-GJ#ݤ@[r>q5˄ޡ ]^d/d&"uxF|Qs-mČ2kȚbf38GVOϊФj}U;9o`~nsxT_BIV:UV+~KL,s2< 7eN{ӷ|Ϗjoƍ8yc46 \ R$#|(t^&{F"q&1&zOceNiXC,^+xʴfM߽k+a0cƚHV9]:O(YG,-ƑuEK[&ոt-m/ nL*Ҫk]kx Vhg >hABzyq&YT1N-%s鬋?+hK H;M+ՔzS+Nz!( }t)TCݨNlHEѦg0c+<=[j85q,j[+;8{80|]1h/ys}*yrli_(ȷȡ73*<S]v$Dj@F5 t9}q"mhr~X3aKAX,~3. +zEJFr#Āf9-ʤoU0r[64lkYX c܇1k)QϮ6UP(#;mwtq. fpmFrq& *wF÷bbn01N6!^W+V7mvUmDDL"̈́nW%{C@:y@8 1fvXp9{jmqrfd guBTl*x٤e]N7ʈG`o|=50'T.HD9"](9$9xr?;Wqp]HzBz[KyI§')zbk0:Qv⸏pfܟ8dךB"Hn>hQmh_?(cU]tM:w[,Mͣ]t@+B]Jk eIo44%_-{b,?2yow)G ͼosNL4O]3ϣLbs9;uoW){쓇HJ@a۶i Zf(:-5ʰIvsŷKXn}ۨm?ŚҪO7 ܷ..0W9DMLI<ى '鉘!Z)N"~\ $ cCqO1:UUSK|1A8nt>!8D6K,7 E[F%Sa&U c\.33<6 T/Xv?- Y` {qyY.ah%u4be7*tk TÚ*XqC,*G/{G6Wt6fzb(eE _,[rpgC+\6a,3ϮsKZ9-^=R'Ae ,v[i׈nXT6Ŕ(Ո(Z>&Iy|׶/" u>y,0\&]^z?\5-PQO%hY%\ĞZ G&2e?A^tɞ{50ߧ" EMukA_#'6#!qeԄMN6^9%Aۧnsdŭ,Tp\%L;$L2U%VuEi683j9>B})J,0 9ۜaQSXvw,1%h{r3Z WV 6XW뤽}[~s7o+K_  НW'|'9s D B4 +qGTJ @V2^fB|1F;vrw,J;\խȚ%Mh`4h,8u-q790Vgp> sht{1|Uk]AO;K(Tpc?y2XMqV$`yR#Yu4;R}del15y,-M6IlC0c3Fכ|754jYu;k`ߌG1D5&`iO5m8t8@{+ז@J 2-}"2Q!k׽J{ X@.5gBj:cbP6+|^{ϲ`I%1G7mT;)"9Z?DOokd6&7r7Nf~Jy!-@+ "71n׋kTHVx3~7ىaX XЈ~FLBQ+)Q8,6P!Ɍo$J>kOR'5 w10#SFh݄-V#uAU2-AᆁMlj0fأ -!ЃBiJ+'J?{cg2ɹ }a.y`f /v/x-J<>͉ԹgO6oՆmr8g)I6nߩmGN@ ?,p(!E ba$-g LO2RPf"9 Srz>p 0REaMJ6Mt3AW y΋bm@d'&B$P52e;D8z')Q#U`ǝ]DZ1M |OnG@lA)ß*csita$ir`)6;zIl>Ějr>|oPy4i?e~L.ɘq m"s* ϏN $$=2]eG׾.hu4,C\dcM om)r7w)1My@$1ylvWW8b3CTv_J|Xc(߉P)QmӲ}ܓY\6k'yuL{[_kmc;#H ʵYa:5\Q$. n,]ӱ\B[fFR9Xom+d("[{L1D:EQy R4)#ZK`E#w>5?k+IZ G\[G63lJI킁ِ S x] ͆L11ذ\gb[j,ꢕrf;*ijNFwQ"ܒt]VZ,E'TE+cy!M%BP93}uY!GMor0ǿE zypi~S36EnLPYƏ+/ufNJxi$ M0;uD>@WmoE]AZebA3(gq|VP%dӲo?9u7: {,4l~sQ~slܰ zMҸm6"L2B?Ab RYSI+Jg&75-t7yIM:%Դj~%Fz˧D0H<l4޵9/2+L2[-{5m50ޟ{{,cJcΆD@.{ ͺ%F nbżYytN҄JnOOXo}mY/=K$Ȫer{$N"7I(a2_]|O!*긝|OR$K]*~||kUf ^"OI|ˆÆ͌9j?j'`W51qྤA=vd*u]1=Qv-Xh&Yp󴴰TE'J,12F=8aQe-g(FTqwC ذуxª/7hǾF$]QHc}.#+i_=De ~S$=ogBr\*o*nV5O,ƌ2 $FHƊG#De" [l2Jw9瓭 <<8 с 涧"PZ7%I_e22 $ghW :IB41%5.pkMg*SuUzl*%Ϧ]ZT/sq6&4>2.< t:83 .PEg*`2ߢ=i+}rDwϡyb2 7"vWzb?4FԪ$CObi.y^ 7H 4zr?rS וLsTt1$Ё騈Q$;se2]#R61K$?DTŅ ]ױpG-V;W,+F?mӱ12#>g M r%=zyDk»q27Tuw-kj$GXQzEeY_NwE/Z\ю;.6y w{9h6$BW-`5khF tV ^lV0q gÐm×mۀ7;[Jw5ܫ 5܀D -*[[Ԍgd` |r0IؾIWAH;? L~ _BLJO1~h-XεEι$sA hY :WQ 3+Մ]m^Uo6` ϒ剎$-33z-ް-J Mg$m|+J:9V@oHp!1%EymNksFmdrsp~~w}J]1̽mK]`s>w=է>*\A~QE,̷8VE/+tLoP x'B^](dYهh@[1o%x 1$+V%?a<"DdCy憛kv´}N@iV=Z*,2rgi~@Z-F}l)sC=M z'#Ù i -.(@ہЉRmN#˴*YS˦N_uo ^Q1o)BVT6ՙ.pI$lځ1!*s `QJLlA$>DŽNkk3VUۑݢJ#o2#'i'ZӜu!Pp{L;hEX=2o:ԑ܌?7㞦~(l5nq 5{3#ӪvC :!Aǯ4$hQ/S$G=;4ӱ_#09.tő_.S9?aP;Yt[e%Ӕ_ 7¶Ek7}=veGᘚ^`ø!^:bhh Y38JdrZ:\K0yv ;4r($1HNbʲPP:'!-PT62_yD b &xuy1ÀٳYpݺGt` 6 Z ('H =UjkL687)XM5lcX꽆) p2ct&O %\) l3M+q?6   ۴z: hȞb^c#!mf n1GTY$NLz5{%^sRU3QbLrC:T,L +e2Na};Uj]/~< .VGo~p՚ npttwY8T°xdj4i5Y- bMTKkE[}7SJMޡL=oŘ 5ۆzP&,VtVvYl&+}8}'g7a=vBDHk|@_ '+a|*m_Ch/1I>(76Fhe &nqoP`xi%˞t[-ɵO,e𶵵,'9 Oɷ$]kc]'[n̰өF WSwUP:QLeY" z pS()8: %Zx<\9C;7MCl3P'+&~͏'߻}:0/ =bAz Azq+P+]3d^5̀ 뭟9OQ-A/V0%J3Zfh!V>1_^g:ugl?0#y4rAZ]=ܾ|&u>6,qDCIqIkˁ^ʏ]ܧg>-'GVQeaBʆl*N .%%֚ѡ܏edr6z|wh?D$NЩ23UYPK9wSbhmuTQ4,rDqw/ҊbRI rF^{oW)pi}H~;Kw+X` hQLWBz+";)+zl6wwuvnWa͔ w _ߡ 1eGӎ`ZVzHCoQ>c=l `FBųm]b'- 66Qd5J%HsD2D^ܤ|Ao`;0SuPf:D5Jf Kު`GRnUpD Jt[FAVEE 3:bBțȟipjtU\DX‡Fk3m\bPT\TKBdab1xrs竕 ̘[xbZxS(/-v >X\-NaiHݵ^^/{Bf AjPR;L2mfҹ}^rͽ%d';LB/t3}2SQOL5Bs37#dEʽ~~aDrZE%o!{SswVO?v`opgb&.tqPBLmCN?CܢPwO"r2 }h9e5ZtMr{M:z6at2`#ۦ0ցms_CrAJ;Z5 TvבS~#_ *hwYGP~w 4?,1 PbZMH/JLa-zU/Ք!f/vˢnq:mLb^mU|/N(9j{EL%P4wݵuzRP,^k5ۏZ?.2X\i"`QiI~C hHe@b Q 7A\eU1 [jPx FFPShV {G[wJp!][U|$:~LX0HlzQfhx .Uj1vbUb6δJ30=] &c<9*V{X?<ĭ6gѭS;Շi&#m{DA="k4}{ X>uȁqoN:|Co\ դs G$XxU?Y/dGH+~2# RҠ<5e1&wcfUqŢW]O1u4["&@7PHa0H% yGi1ՂĮoLX"S`xMF#3Q@Q 2*|~sxŧν~fDUG|Ӷ’}f)oa5đ%[IVA!Lw8ӣŖ0 Y"G̛qT^h=Ǩю+L$ {P( knV$!S*!QĔ5 #oPOZY},K0P7؝jǁڌQ#qLx &^.!GκT^K'$VfeQ=pJGB;ޢG<դWݗV(ܫ& : ؝\!s! JiS"" Z:k; ,VtZ:݆e37oZ 46!|=t~Q:IoB_̮eJQV R%1U2Qv}BWD&ӑa4"S[x]hiQۼ>˖>kʝ̌M{]p(F{#R{o=OmZ ލ>Q݂xAO Mu}"ho.YAj%=RH'@}n&jK)SQ |^B?8 7eLpquJIʀ"s g%Au_EkC!T1uL.Glk3yOz O=NKs"~,Qޖf‡rw2V솳t̜ y~Nl^]IqaW2$#t--aF-=R:7? SMTKI3_Κk 6 ҾmaGa Zdf׽9r(N_{GT"mIH Y+/RHly <]A1%;BI<+˶?А1/\Vj"2ULx1N;$.d0T"aS+}_X+X@Ŏ?˿zؐfv\m3#u]ͅ"/6%d}T7l'm^ 76Sf[}δP ~d 43>l*bߦ"YpL΍V8 A(ߝ3`NϥGiowTxW=nϾXW$}aWﳵvL&xF?3qP~BxKosϫԟ! %vbm3Fi&!TlY$0)%$mX9+sR3WGbOwQ'OJޗե'4(Z05S|c}J(!M*\\tvIex167eKHyfW*A5'"/a:Fw !J}RK>. &0z|fTRBHQXҊ Ouxf?V9ݼre9'ƮI+z-LP⼓h8_18m\/mTsh?#>ABh@L^?$XFRU]e7'/tdKxT?oT7@Ҏ((#`ۇU|:\3=Zi̥>k߮=XUԀ<"z tD/մ$}=&}gDVڍǁBۍ8ǃ7muv@dZ_Lo`ATQlD- >(yspM6B4 Wv{Vg[6\TJOQEC8=t,[&EhjGW 4"t{р 6urȡ5v#w`ղMDV\A]$_4RIy9?&^وCh`PYCǹB_;zlrˆʮ@L@&CpǖX&EoXv.9yl?{S:{Wmi)J}!k鞛b s鞰r~#R4d\[BdTF+/:dp"cy,V $52 d sIunPw|ĩ-LF? 1!=NUlswt _'`\/% jIDsJbZFζ͈BduLRh2m>E\=UIQ̥h33w |z R`BxIybv׎hpOo)_{j4ن=a۳6'XW:xk{`ɽsH}CPyUgEsʩ[ofoEb&׃2az R~F3TV.3giՊv n^Ӻ o-U߃ 4ũqց-MZGeaF(?4\ȆǍ*YNWO ,έst&xcWyIŇ,3+A\-k.Z@ YL;+k*`BN^qAnf1Q$3Bw^8, >Й^3^Y\=bl=:PʋFJƌ!`w. Dm  a}ޅ,Jc6nrݦp[YfXDm=:% 3o Rsj&Y3M1^[',>.k㨖q 4QJ&d+\DM%eU92?/RLS1#;VHT򲱖&]+VapMg΄M /vz Qb9d#4hE& \]bO×wՅ.\sKN'ܹ.#hXBi{MSן1 2F(YZgqx`G ӣ37)IL؎bX׆%INiOU,㔓c^/V,A?#sGP=s^ ERVoV ~k]8 LFD:!G: a do=̏& E"%$>U{`{ō:2JU9ML.nR|Sl?W]U6dni&],:5d-Fb흆u]k(ȟ +s<lyG(Kw;K <&!x&_ NCl 1E۵ W:+>$ñl<]GK$'j#gt͍l"Qi9'rgf=ca0l~qGňėiL,Ak FkPj5>S¦R ּuɴVC $R?-e[{اs߶#Ӈ൞۷s]چ k%:KJRԋEٵalF2¶2_v&t>ꏏl"{<3'AqZNӳpi0y1FuN^uñޱk*@y唙H}L:7sԬ7V @!$ԝ8i%*0$Jپ`+zq!1wyE%f5:E&Ǒ)A *jbL`?15lQRK\ѫsȇtj%hdsAY={`oYB^~wU/Db\hҨ~·7[-Z`o*fd[gGٓ)}进zdB=GzZK$rpu?2’Z3A]3bR+QunE+?)G$pAz>$Q@@D14]JM9U<^L :|Wi{BjtGO%%2YtZ1Ρo 7dQ<%{4֯rT|-ϭw:sb`@s-JYlA Qh+$e)͂i#J"'%7LԮy4Ė%wlYY3@?Nðw窓B@^l+< $>-g{'hȣc#G%煣QP~լj&/쳊d`3 P+<aS-:U~ qP M=vA?2l͏2)f= w/Qf/Tkjh @o0 :LυB<6Y@Sޡ\[+ײ}hf 2~E gȑ!N\I̯0;~Vq&@(]6:ƴ{|6VtР/r`b@)j 4'>AkWmInKv;8|ERZ-"6D%x/ɤ -.,󢓜Ʉ3|f,8FVib%m ERXBOnC9y8gΧ bFGˠZ [ׇz""&/in<͈?R9 +MVn7VTB\pAdht D\ Z MQzߣ nxgZ=Ur|G09*f\-n2IW"膮GO)7⢷NzT6;.q_6ِyH0K'3XlQǷ)հ4+dTB_N{xҎoDs1 k`H{"8dZ&LϮGP)rz- !4W97ɧiOJ=<x,;ahf?44'|ӤF q8aތ"ME+B[8`ek3[dؤbZ%Y >R7zrʁM<`.2j&/2e͏55Ķڠe{T6_Xd`EHf!BBG@`Ucjє`A#]O٠fxQWuh @?X;xDs?\eR4>Y6{V$p꟝, >B 36ų{XCwLMcw9^_3>0sOT4" T&}^gU>?fYO'nkȉ1;t-a8^][~=Lq P[ߛ#Xb2 y˘(OmH[JȂMzrCez&xzA]؁-qsx3U^02:jVKxwՔ%o隉p;ațs7R$͋ERR̆Bo<58Gyc@WWvfW9rn>q \$;NUSM +qQ~k%p5fWq Aʻh ExH-,ͤx M^!Цc1Ac`0U%3)µ[;Bs"JelFi) ( kQ4k1"(ԇ69ÔoEY XLʠ. ؊ ԊSFKj 쪶$qSژ@\vZN\C! ewXMtkjK(Zv SՒl,ͻ8av^ʷh4Y2:1Es]V~̤c".C+atBfj]Xh\˚Ԋ:p#+p20w;ĤgOլ)HqY~M?ejЅ[~j򫃘䚻"9C +wkKb8ۗXh^fS$Vg?vw؆>Iݯ1Ҝ\]ƔyK<aZd`/5a!Puw ˸K~qWP׊rrǾRt93xfYJ^bxeCx:u’DD+kKDvoh̀{9Jǭ#pQ`  aXKztGq:czӠ͍Kvs-]0 .^3Q[C܄o eaRP!>> #StX*ZWT~I5eR9}/',}ٺ&ѐO$i8CI' ɢzIU Zck) $a@y"8[5L Vݳf"WYvPu=V*SN zΨ(IQh͍84o2Xu|ja֋>{>s`+$gSAnؒ)=FaMCߒaTrq{Y"#7q1hj( 5G8"=[U~pPyƇvIz A ģҬ;#d);!'!TZAI_)fphRQĩj~9jV(2]ȲEt PeS+31&G'wiPF<ֱlb wpzʞ9-Q;>^W)8-pܚdx$Z+%zkXyYpSݤRXtH.9i>!WcrG3ZOIs#ހm8,[V.\&edӼɑ@# LK=K>JGSm=A[CFs{YW^/5 *:b:AaJ?؋;oS{0c䪚ߞwN:wLkWvSN -yjy&+Ӈ5%P &nɶm̀rD^?6y!6 ׊&|S"z؛Z5XZwD٘ˑN:Kq̊R!*[tJ\-fTcE0vb, /QlbTQ[RhBHgʈC *::5k,zpv lvZ)\V;VRᢷQ7$9 ӫ\[ٷL\O%txI{Y-ΐg\L t٤Fi Mi /S:}ףgدդ)'q+og<=Ą~-FװWx8F2?ycDW ٷat15A?fmS7HI.6RNx++_%5x so|X_r0qG<sZ(fyC0r->7|]$%fҽmEuzLdT,O QGDWqv쐀74B~aUK 3/-9f~ k6;ք%zSuWXY-jA(  'By(3{_dVL쎀Dg.8ur"aM[n{\kqV[s+ȭGc8I/ABfU Uῃ4Xضd[w\g(Fʼ6(Rp-lc*](0$0OMx2xHꍗe03,_^КACH:^&7t*e8nOx_5.Q lD۟5!fe7:hn4P̽$7 t:oQ&#FV5 wn=(q<%!Mo˘I>'2sh(znUiO_Q_ҌƮ"aܚtbl" 4:aZq€EHG"cF}z5A3,2mMnɀP1q0~"ݵҞX\g(}D Ͷ fL:U|$3 )TX(HBKYǁdG|{aˢaZlJPGWz܋1`tcv!ysuV+fVы0&%!F@O5F$X)FL%caEBX+Jf eJjDjX|h Җ@#*Xu"?ߘ&gvF?vz>XbG3X5&^Ӓexh쩮>P5 1P>8x$o3^Yt,HKLh#!"mHQ(2t1r)G6"a2;y7HseGl;v=D/| 7vο4GQͲ̢k1 /CsS5dMx-jԦ]%h;<0'l2.54ik5+ ^bs̶Hy=y&H GiRgz߼+7V[15Z{~j{Jg/;Bn(Dqi\MgN8` 699 t_>1DMX>R̍& ٞ7P8j\>r"Z̶D>F,-ϊ!dx/s3IX 1K8J "'M=Y/ޗUܬU Jm 2ܗZ1Mj ذD4s&C|cci9Hessb|y[Pb¡#^Щǔ6H9<-4d t)9GI4[Mt}-ןU L6]=幁to#k)fE0 auߨR+"KLW?4FH8Sè Լo.s %iTN̔Z_y_gD˦Q89ـ)M`rnx/̼ Qt.`r2cO뽀6=h `ꙑ ;|Z/,~_YVm~g\P#6߭*H\BZ跊p>W/P}V 4ǎVUD$z^y>!8zTYr/I%񷚘 9DхWlСCᚬǷ~0T|L/ŗ@}׭BT(N? ~LܓS49p|agOMvrƩ1}H9'" Y@RǶ] ]te:ݎ1C@ҫaE&yd^w͎(T‰rW(-.+Mẅ́k}<% |8_“cȷ?"ݹ f2Ӄ&FB?O|j!WxKe%? +:yJ,;!S0"$FwʟUOZyA {G/mN]%::LI 0=d/.>])7]p^n I_]JH|Bf)|UD3Q%-i*YPhmFޯ zLR_cnQ\5Jǂ[E N Pnϴ9 gu@P(/"OUwup(n/9%C%5AF>pnbDZu@D$ivsF_AY;IT$I4d"|0V zfiQ{ Oc5F 4::sPs=mmIcK[zIWbh\~s@A0rR'@f[w :YTh)3!90!M̫K%w.:sxUaI^-߬orc^A+ k Д8H m [Řa'9khm\ҫ~bz]w 6YvSvLLO2e@dp0TMVS^ū}Y?X6IkM 'ɶD#%"4樥ڈCkݜEerZna#Wdp p&P'9Q4-*$\*<ŏuJB$]Bq f9}2QcmocNI\>w/ʢoUuJEqn<2/[dMd2ThEE4;e9c0p+s3O_]PdԒc f'xNBxXϒfS$ӕlt탂…کʳth[hRf[!>.?Oω,-Ƒ7M/}!`y.{.HH@Nk q7cь9 &S`^Y}jjY.T9_4{__0OZ*~o[9bq׋5X+ِy(ȧ6}MnZ{QO~cjLHhC0loތ4 =!7͊bgiNUe!_%zչ]wP#6%C}ki@CK##,G76œVj*o_5|(, Fn ĜWW Ltv۶~&^&2u6q&zYF@);' W]R''[Ti.*D/9CAek\Ҭc##j#K i?PTݝS$^"Q_MכZ0C99z@t@D)t Ӥ j-5Fj+<^;T#%L$Ҳ] xcך Aq[@F!,?; ώ;g9kiLt9AqE{ :9OpEec9/I~#se^Q۩eS$OS0*eGi93EÜuW=X77\bygd9 b;rg۫Pv>hBf3L,,#2P̒/s$w"C d`gvA sثiADt6֡sy2ˍ`?>(Nb A]0Y*% nqʊȿҀ3/#YʽCLJQ7B <$q/$-$ʮАS;]yPo6;57Ь1H#`9$gp9 *F t:hfNhOȡ} j1PB?RPXW\^zz)zJgYpܱ`qʯs~݈FX4;VJԺl !<Υ>UN\ؘ҉1h4,9CO5׷c6X("KUL?\8lETjkEK;S4(Od pQIוDo*vOr>6R$@̦a(t3*Tdhv.-"Y-,6'^Fg*8>Hh9❟[Fl@POCz&mRP26gKA gLAĜg$0qE]8uhXߓ6-#d\=`1rC=lWϸËTD慴~ָM#A# I96 5k)kiaRk+3˨/*Ǹع*Fbpu_x vmHaTI~J3ȿ;&(s"[t2Ir҆< S^J|}YQ<=ȧa_hzkWCV; i*e(=lK %7&wB]| 0 &XfmWtEuS.P{l.r,8FWD#~ir +҃xз]JxZ MdAJqs#l iePSܼd|5=u2&Q!*~F]F_qh,T7-1U3: ANȥШO٫dXfLX˷w"&`ІkC+ЫW2ۑWBQtX=@mjyBɦ I-'S+Qʶ J5 <{~L$sIBd9R]h2k4;t ];6@ D%G%b6ԝx9#4otC&*v#‰}`Gݾ8R?(bjd+ް"vMze~ll(&U:d ^r+ndWtM{;,n48I7L]D6VNBH g,4PV~Rx0Cv?=ezsؼZ/ [1&s%fбbVJqlke/Vj!WPy/RC tƧV%`(R/z҆ 4pSrFg,VBy/bK?stPRPσkR2J|0ZL`- b+՗.b 哚A`''fzyw8R'ܶ%=a Zw2_PN ,O4P04k'D>=~RWAi¼;I# r~-Ce4;zC]ٱvmuy*AhGEa_R$Q7! H Dhvi' OL7",}u,k_[HPTaWߋjvk#="<9[X=t>s>q5GcFHj/xNA*-3)Jq^e`TMI(4̎Ai0.$dgGӌw"d_sGo7*/yN7K9vB#YbjGT7 KnDm@l(WHZN৑`!˟:&`@5k@U_<eDč@U+C-nz3xK\#g!=S 9;hPO:4˜^X.|؊w_\al<_<qil^i!hqC.gQ%p ,W,Pj$d1X[OqO͔.$PHxCk}U zf9$<#F(]Ш0~ K  fX d^00 j7XoU_i>~{LSL-xzۛ}kvƹW} )`K'?D dX`5@Fa-'a".yذpKn~gwRDtbV=x~@.N)HD0U`8b( Ue!rJU`SStODuyNĸ].80~β̊2.*NKC塥&u쐎RUDR{Kb45 نź L;24 v|ⅶTrO}Iy *̗7\6P13sTaa>gi_K!$.#FBGZUGI,-;if26m.3wѭY׬F.5M/d2aC@0ep#ca8^^t˜TQ%0TY`Dh'^N ۾yh.yPN=Z^J-cF hX ( d]7AcsLl%LNfACn幕,%GT)\MqH!0"nT>]" ?aӕ5D--R|J~Rk䮗 _ &.Xv='Nt8y 'O'_:"xY3*{ru~%ғsϖkg!Xz zֶJ$}ۭ0Z#'IdV9&]X))~%#y&'5.H1[+ <\.;z2IMF5aqREvPo$&@v龋z4ĤK~& >R(9;2C ktSiaɞT~pMy,:6i-7a5iad| WU!K7cTY_qtq9}~r=A֪ !oBehZ7 j_& B*L)j xu:JMV WA.vcEK;Y[7i¿S#pOOYK--C( ?3?Yr!̼j}81,y(Ga` @R|VP!b lӦzD.C>V\[/FT(ӱ{i3CbD dlYpOg&؀ .f1D>\ 6b  EnuY~~E9dۗqM@.N'=2λr ':+ atZX&FO*J.1տJvdeB}ehSɖ{)䛭#Pe#0oyb`KFӐòЏ`%HEz{O| uoYOf8Y{K살)gTR[ yYP!d לkWHQ6cyAbщHx Ig{Wr͆F yMStnm| cY 6兂r\h/4*$UJBLӳbx:&[~n cV,P=5ޙw 0FztEsv\ŷ Q&<Ꮂy[ihU"AF?Y I{aqqĬsOb/B^aeӰ}47VP|Y8<mFHT/@%Ɠ/"1\\i!/tN{I{.Oc֩qRC79I(%Ym$lS~#["l{"ʂgDKF6fCS1*_Wc&rnv_m1VD3}1Ԛ4>^BhCd:ĕ--2(s4̢<v4*v{) دĴȼ'I8(>s}?F:cʻv=e G=KIdWO-W2_uFX0q/_\\9"aLX"kb>uSzZ^xppwg;ȝz7JN829_GGvABbfS?+W(2 P3 缤}"RqhA#x"}=-X䆅Mn}gRGȢ.!HէE7cҽ9o _Wdg%4˲Gp;Z['!50̷? Z\6Ň#a.{hM,^%۹wNAb5HFbpg'Ec+rdL7䨥ѩ6iĦ~Nn)I%jDuyd})fC'a{7Psh>&#oN7kP3q׷v7U x/J&q] ,}JͰ3!7jk6FIF9y=~u˝:!S׫;co}6 Je"Tb$ 4wŬaD*Ã.S{ %Q:7&@?_x/2Rm/ՎHZt%3B# h$A O C~8a}p5Ƥ ?6#RUx'TUj7 t]؇RI%mjMeg2Qʰ ҁUt짻Q-<{bg/eV8,Bep-=EzԸtWx,NnsQ)K׌DٹWՎCj8Vw֒d˴\)+ϧX#}q=HbdQ>_.brg5:pii+TT.;ŏdzk%B⚮+Eڽ3HsCbM֣Ԧ91X?t3['ifzYh8 1#޴xzE&Z('i''Q2T-lwvv.kHRG9az3Ga_6mUUlE Fydڋ*k$؄4JZ8-FV1MuV>t whE/۴`>X>߃8U&&ƑBWN_v,6شd7 xwy3v&O$#"͸?BZe=FU##;Hu2F3Syyc GpZG+[_q~'ŻpVN9$𥪖OK FU<؄*[Q1;̢ڨu8wiѱa@\łKJ灧w*_.}Vu?`>{ӻ>jZC۹nQC>Y:2wXu0$`F@LkcaS+_d/]Ip 㯙%^e/leG4\}zBdo~>@-^ 20Slݡ'$uP_Z1`OI8KxHro5%qU=RVd:zs{;%>w=;Կ|O) `obb]9ՑRqTViXJrJ31LX԰0aJE;(g3 Z-;GctHWۀ3R#JZ!JX9om8V/ɇzsԐLZ+p^!6$Eemmϝ[оł'Fz!GXRU>9b7AT7*o sZ^Ttсk@óSW6-S\Cvo !iNCrv+,MhCxFC`b_IέKX]>Rb r<q 7e2f'9ZƑy5H{r` e>urONR+#Ljʡ%}zA5`;X>p?8m 8gkVӥ$)Z1ߵ (!1, fOi@F`B ÚƤ_]8r'A %ٗL9DPy Pf\F'4Ա"; b,18&x#,DH d)ԀUVOB#Е?%^9P]qlSz*Ż}o.},UԐYh/* ʖO 4 ֗:Ï^ <w ruDE"Rl+ 27Ł!߾8ltLhu%h:5]=ӟW^bs@ٶmD= / kT:m.i=lje0eqDԓp.HEpO{pgTxiRp La|θ#E G^X;9vk:%ŀf|<e[9i8ڒ@AFr$EE+ ;;)ڳm RY+Zb;}E_%6Mvy>M?!7{=st%nA:k*:u;ʥ )lhNWr;ޘ4Z8! "jL:-Y6Bfr-Š:&z]x} o.S`w_ŭNU/F|Eє#sv#^9ne|^$i^5[| 'e V\M5D/]vʙ=~ #`i^i{jכMJ?L''7`*FHwEda Iz c*,XNb]sי^gJ@.hw7ٽNTvS?L׮t~ͮㄧR7ծHtUSn)AEjƕVKxX+a xPaiZ_*Ѕkd*BPBҷ./YsXK&{bu)uLn.lcmޕq@" L,Ee4-%A2BJ[.~ ox_cz'W eU{>*)w~}dȉb`G]QDlH=v'u鹰|pe7ҍ h=lܑ%9z·'@] Z)V>dgD =X#6rը'SCu׎v Y<Ƌg'n߄֊<Yf: 'BIѕܶ:}/~4FI7| 4d)+9aa pw@/DSV]Y mfi`awbr=UR#YO61aCS7@3VyowWz$MUTfg1 c3cf0kL>[1XUDSCiXސvoIMmء%;,DCLa:HdϞ$lz 뽣نvm5*zHa!Y@PqYo_DdA֚s,'1HpmVҺ`!r1A? 2cl8F gb"FH"ߝ RBjMgsF|}gyZ<5^)`[>B-hpx-F_ I#MF+|R IR]`qUĆ]AS4@ _|)ӈTFxOzz 6L_締 a1XHC(bO+1X43I}NKke_-Ԋxvߑ0 {rկk xhٕ¿U%4)≎~4+$ւбПN~~kx} ܧ3g TWb -{xI6Raİ1eƄ8dBKb21@imwhX j{Yp=N"Eܸ4r^Ij'_̣jKC=bXB=x7O|Ute COO()]ePw/&h=<4!{oW.a:Bɯx+NKC(AFGOOo|O0 P4+`3%/Gz"׮xɻ#"972M[Q~nգA(ب\7Ҫ --4Bg%GkϜWAԲCۑ;^yqic츗q[ Uՠ/v ^]ʝuFhzO1W ^ ^|`::^.A,ЈMZQH|chuD@ƜkӱS,jAGdă+qRͥ:|{bngG#ȹmbx ~xЈ M_Rp٬Cl.=vČA̅(ޜ|I3h+ uΗI_Ɠ4wn8P_rQ:?}|ML$q $U(Ww vA>+l,@ѝeJh/ۅ;U9|Lmazp=))O039N|+{{m/Lۋd@&3!᝕GRJ;Pzq>{᧬u .5Ice)༁myqzF_9?qtKQsTnȍ` E-lOD=L9G .kQI l8.l.ξxVo#e 2ӪskU !Eӭnkho{ֵh8gL{KÓX^ Drlf%`޳0ĥU0dJwGM/}Ao fZ05.lb01?M­~jOIksQ۠0$I?Gt:D@mJ}? 'fH0+X \Oɣ*x\AĘ.oX.-$J<,JB6.Qq^m&A$JBdHQrI#E- !ȐZŎ4ZˈvbU;\'vcXo,[#rī&ª `·acP·^G $;)EFO>b- ޖu Ȫ7r ,8T&f8ate_dn&m@Z9#zJO+2^B5ڏx`N o{g|tA65!Kb[ 8VK<\fFpg,S3!boܛ\b\?2̡Rj |԰xX(8gk̚`rMOƾ[|筡/%Q;GtM Ó-ohAB/?V 4M69wKk.6&9?;GQK=W5P+pr*ɷyQe82I?L6{M ?2>k#s!X M >LP|,X-plK98_T` (@6'@9WښD֖Mie}{NZ8u\ݣ5f[?ld_ȐB&:{sVӞmsbXibfT|̲-c-;!'] i#װ`rEPi_NjZ9K/}Ƌ0]yh66=+uԽI'?Fuad5-DJN]` hNgV=^g1@שU6Y ]6{V'6Maj ExD7+ °bQK2ro!\!᳃@ o*Fi(oey6"ms:|~F[ID`nM{nU.zC;ƹ #Bq܁# ̳ % ld)v}>ؔX%@}nSГ%+%$q+¢gj)2skOUQ| ]+ f6pgú_ 6 ^n: Py2bHUv=ɱUw$8w#;1V DDʅ_5a' _&hc47,;V ah70*BvNrai<)Uzu2'y&si~.>,X6a`}m!VG(e )¦D_.K`吱L[['Iv_By$rK3b0>ꄡr0Ʈ_hba'JV9^tV#lӼ& MMmC춸3ԢA<C/у)*.ZPWl|2HF/q+MB*aDX#PZ/7&DP]f,Wٝ|1M{niy\7Ttxji *&Ϊ G?݆[|0kJڣ @"D@N.s_Rζ ' zTkPCJfD=*oxȷ;7 ݖ|#ܦp{tؒKݺ#9sZeIʳpP)E|Gk6C:z-h`e8.,ЙPE\bbvP0ZszNd+r.xviVMu٠75F 4s8]ET { 1+rCyf-Y Z@)~~ + ҸBJSE-L ŽoN`~q^''!?Ԋ^nT? ݉ퟡDRQ{\ oa{|PT?gޡ"Nk~l0:I?deBڙ > $O Zdsfv"EK-셢[!ƽvQ1K*B 2> 32gՕB9,,O5 X=۝ΖGLts{bM˵^7S uc|$7C'BDЦ{G'n|}/m^e2Аw7 UVBod)vN TU>g)byJi'pB&}#T g{֢`n&Jdb>c[,&Ay;C2dƮ́v@c$1ܧj,oY:(wăN>qs:iY1<[%(ma.d)qdۻQ?HvXNY37$J6\ImonfN4\k~\"E"]9= \@4ig@JXWp;,i(/{HM]Z=oaa`}(_(0sO GuqYTV- Z7spK{ʶRėT[V]hdFBqp_/O+|Gh ,\PeF+g!C}iS n߰ю>T_@kBBW͍9 %QE!v%}@=<32ysZuI&̩Su騉Dk:r|שYy#Ol3vp;[3~طiFOcD_(|M- h|$܄~~h6&ێMcՌgzz{,2%=۴(Y)](AWG-\QFF$% Jm,tTj s#x?2f_@RhjsyX/fCܮYZQ;BDWQ.;[̀,4^ 'r7ks&Q (FMj!ɂ]$s~9{zhj_e"vfH ze?xU~|W۷wL& 0%6 * /\4P4hǜyîsIx=[[5ݑ?|=oDa/* V!3}`@]+3&)E5̩SLF;*9AU k_è퍤K3c17ZC;eys_/1{ѮK=uğ00w_ ]Y({ċ2D劯vz(R +v{zzzB_yk\K6m갭3߽6CVҘ E+o\հ D5Z@ l>)3IمjE.D&<*ʄ>L7ۑ5Zy]OC('8U^-ܳGTs,I)uzVeF+0r-!vt!uxUs?G {:!+rAlѺvWj-L*KB _ba iT`NX.=|/dQAG}'aڲj~gI|~-cn~u jV',khÇ;za+?pC=Kz$sT033Ӟk~+P.ԅ#x(ۻU)uXE s`#PNpNռ ZaDٶa io}O̬b vsij/5DvMvX0s[x p=rz77^>`s}J4̈-Tcyt!*ZppykZe3SΙ.O;- >FoQ6 ψ2PBwMUh+"\Ҙag*鄳 ʩՍҩjj~MGIZq Rbf)$W4\΋O*yHcđR˘wNu$@SdCOUGx O;z2N-fģR>x[IT3Q@8@dG[>00ǯfK{Nس bW"R[tQ!u_cW~,JG~NxF(Y"(omd*@ʭo#AbBJrN!{dl:LKnӉ9+fc:@1- V뷄J9+@ %fYB!RbV; !OF/7Ly~QAUΔuv *s[&,ʭ^6: WSl/-Xe*(ezVI4 ÛEUM |^O4\}!IYsɶ27QgqIN*vZ" AwmlR\֖K#yzo/1ݵ(5}95hq.Q6Yjt/bN`\B> 6:q/;Yx0(]$k93acʾ#^6Ƴ{N>")臨L0C1&;\Eɽ kW3fpsI16S{(6(YTfZ&u˹o<̫f>|N#l &?/\63qĵn+끷j7q{KhλhWhT-m2­4{ih ٚ xͨkM+x[6Fi/YIYė +2O]WUuobf ML.i~|r$5P|Dz8׫fPdr,[_-[gyyn P61= [7zͳ!ĔeXmi}i~ %eȷLR_]q9p⡫ɌrD簨>c)NZ~; M/\DA@CZ/r-5y )y+\}=uYMIJ-}uy=oY6Ug$j OVlADk"`U/h}[GE&zZg=5bW*\eP(_-t*y}i3l6iѩQutP޽WrfGH ÷[b 畷Kj'Oc {+'dBn9oX:i Rısk:x(kA $6e %nNVTHզ5 IbX͑P?r/>㐹j?h!3ח{Y~=1::0tW5bOvjҝ "(\7F5ug+zxfT)N8.%HPߞjtxtI +ZS.Ux^Ƿm*gyZڟbp {;V4y|k@В=ACuF<eMV3 szɭ'hJS#1dZQ 5YkYw֊Tʤ\qLVC: W:XO=עW5^&URofqA)_O1dٔ6%<%%<]1=`-FpҦPx ՠQ#)q%Kn}j^RD %ƞ c%vOW> ^F~J,|[,]qzGDgB5LNܺ'+BV`3 $uR5 {ey`Y$[eU3,/ -}/}޳ )g`г#%މbܱ,`/11z 1yTVp#< XcYթ[X4i=6zrUWCr#V"Td=q_;u,_;q`n0|666q%![QxO_}GQ] }>Z!JqDj++Np `]暣totMPy^Q>>O"dž[~Uk~L!!G5b:QoTxmWs_HhX /^A1.!.WTcd}'CA &0"JK#!b\P{̿׸"SCFЧ(Sn#%3&@ )0+;V"#ơ7?C.B^o, 4AB"UНkN|/Nk!VSƒ2h\\Umci[%rZ N|lH ½e `l-*TZ !͵: Z?Җ:Ӂ_??EW t.t20CY~ O[э1#o_ ]؜ VSA(}틼V(T¡c=╊ZY&V _VPc h>˜L뼈$kG8+y7:Zg!xLx.c(ע13`u:] ?O5`i[uk4MLfͥT!LٶmS8i=>>$*Uw#ubrB"4S;b0χdX?sV$\]D㲮U=9y T{vDt^(%ݯ!qnWiEDVVԑF(]n#l~cmڎ|"&eَ`Opv0_UcDZ9UX`IA1P AD{1."v8m_fnk &i{5&|B`@a PJx3}ewPsZvu .qʝïjQYbXЫuqfT8?ˌuV2E~KR) xJs+ڸxv&QvxEm wEpG CeQXW&&Ӱj3Z)n2Zݳ TQ(9rp [ +(KʔdH ڭNevqm (b#mu #?=؂Qf%4C17V qK'=yV#ɤ~ƞ y (y|$+,}g*gof!_EycC*aģMdta< Ȝf:tb:#:1[+եU6P.lUVo/7,(ֲ~-1S ql.=)B}kG*ajȿAu%GwO^k%^LF`l,kB\0~-o,/ۃŰwLƊ&A*FP7d|IOcU#GS r"9\½jA1irUYB ] :e$~Lnk̰3<*lwZ:l!ĹnTTDn}c]8pA6u|j¨`0ێO11gyElVt0:Ω]1 ]n;CݔE#-uty Y~A" 0$ARS6y4sh X;ι{UagS hLIc_~fv3rBC)y.:e-+oo)P ^ܖY6"Bw􎒮@aՊf3.ez}vBb ^Gy[Erx-ъI4>i7'bqfTPV&B~dYзsN!{o;GQ݊$"'q9uVJ4!U2 rU԰: ?$ϗnҤ 9>3 !!nw) ?|F͹ I#!Y[IhXy^"=GTs{}ǘu[R2K2ny';3m^FL%kgP8ҀVQgf|CȺ'Cx5p.yk8QamhLvߏ3, ̜W̕ݰ /f$X*~%CsqPEނahpQG%GHGݼl'#mwѩWQE 4),XFXy>dۋä T_s@ pthoQN`llA~w* uN10zW*h:/aD m''|B_1rw/)gIPaJQxs3FYa[ngs N 0͕e 5|{ȭ|$hiHTD~i)W9!w%:2~ GAO\Li&y"xkB(FB( 9W:h- %z~#\Rq+f0 d)`-ю#I#h;rLpD8vwh9*X- l>[/f xɈ"2pieD(&uɈEJNAxckmlv.JŢŅAc.A# g2gWEa5R&o\ږm6tUɓ ԽGz01XrUD/qGx'9$52J bu) >uTgGۯRY3`Ոf>w@[SYVylEVc\CHѳ7vl@UѪiy~`3`!o>wy0VNFDfK|0]'4ZܾZ4'V TP3S>5 0<"]W ݦx!r +laA, (#%c[de֘s Wľ￲^9nL ~sC2hHdK\}ig47mA2X} ZyX >hL3/ܿ/'I!\-{h6j{Ed'9^'e-az~GVDR U#鶨_prJ6 IJ4a{jcvq+zS һ6 WM壻XT.cZ׵oR be"J k2XKwb5 [HPrۢ")( ~- tH %ubQD KMHr!rx*bYµB ա@N1P^&|IKƖL]藃 xDD]x0>t)W = \XNyEaxֿ5%,h@ObA6]ěGPAX!ʒ;]_4 WR El*.h@َ߅.VtB4I;]1骪uZMXwJOSv{ $9'i 0f+Rtj5[:FYDìbLIq퀩L]rD- P@`UgO]+=ij+eE:qժ|[}?GVy*B\jϔ_}58c}BY4:`+ڪDž\nև(H1@p:.=b&^6Y.ojEkQ-^uH<#@TEsL/b*EBά魤ȌrR*0%B`xf}5z)nIy\o+Q@5&^YjzS=#W@OC ޸>ei9е(8_G7NIRnȅ)U#cR=8/(vp![:n5e `'ÇFKFT_}kCq l@Tݤs=4H(N0ĭM(Ϥ4DX'"@TF}Bk,$3nh&G>ȇg)n.qP++G2DP-$s\!Jɖ&5nCmk;rDLfc2_g)~))z87:i=u1|;-H3Dm!W7+|ՔO"qijЃݏe^!`80jNlkl}>uK}/fuݒY֚ +eHC D8vO/ X"+~//s֫:+UXC>^neۈ~wj dMlȸd_1ѧʇfmSl 6D{1].ǢʲPh1Gu8T6,nlHl h Y|fF4z1op <ݣp/Ƨ[?T oRJei;8 (^rtK-k9êm%:͉Гq;mO3 XH8s+u)~(nbmiϦ,NT`@PNdחȇ"Y\'g:z|Љ"u/ɠ~1:@Xֽğ+g&MB5JG1ۑ42SkkLc$? yT!x9uLnrH[/E]UI"&FAO)*?voX1P3~n-_N뼰Tԙ4yLf͜/5;<%0 *rId~_=jr#БoBD-wK$] iڈA93h.g3,Yإ2 +<Ճ8xܓ_+VgDvֳWRv\?p3(ʍ@DBy =I0!C'MqY._n]t>/p.hJp;փNLN W~D݈뺑S'V=:2PrP9l[S"]Մ?eEޅ mT \.Q :D+b-PF'& z- F5{gAEU6vm^(}Nxݵ#4xQ]#{nn$XD 3*wi^™?3S{Ϸǘn#Xjg:xbJsW%ϭ2!s#@ѭJV%ҫ!PZT84eh }|S\+}>c_Sl4b'҄2)Z䴺]| ]w^IUf iU/C MR16&c0H2l>~||qArpSDpcEV}(4pT ?? _,M,jپgB! 6q ݶ`]x;]w{W3z( 倅siFƫT!Fr,QjAQ1n]=%LIX|fM̧];QRXm^+q̍Qu%>!WM٥KeF,|VF.)iAtg?-Dxv۬ V'Zl,v 8t\EGƺyF&-,Bc(Ps[ckwBX"q'3H"WOT)`velGVl_9k77;ֈ- AjsE^mokhR5}̘+b|0 >y ٔ{khٝmbP/S_زw#'P.;kN<% jqgQX:cVJ#76D1禬8.(֨ɳ-<~ՔQG dO#`3Hġ=#–jV_6ɽ{]&g &i t_/۽S%9`Wqb?D=6dJ~jd~ 'kNI=VDqs E],e׮zD!els%O$ P7x2^v"5hLmF!x4o]:;%*χ\?/S;lC >&sv8,i /=f˒NO/U댑>wU`_@$O.)/odh7g)Merl )9d2i"&-+%5lclAjJnQ&J`gq#[SQJ6:>q6/J0ÌC,o "Z|8]sg 8x5x+nDѵbalf&z~yMl`(VVһZJaAn$?i(YAgQiL?W˝ `2ѸESY|ڑ:HpkRy_*)KN5xX R qJAP_'IagZ}MbZF,ѨBx bhS&۫~Yw9$b4xin7x%d~p; PXȏW}`!,Vc.)bطg&:ޞ+,Aז 99#0pxj]8I`k`l\'$aK)WfURT~ o'l>ߐPi&0]tKpR}x9JC' USpp,s0UhuNhFyUP6pk'u$O ?p0V%>ꠖs行6/l tPiMkAjα&=K7aIYFX $E1:|uZۭ h!ɽ{Wl5[4şUPtT|{T8BxSY[ `Z/_K}'yO7}m+WF^rjL~%V]ZI ""pj6]d3aqnd#b8so+7D23i-̗i_!CvΗ~ZmO6?f]ɠ;Y|/06 LC DGЯT%REjERi`!&ƾw(>[nk0{y ń$8Ce\>'Bۧ> -;m:|V"zrQ v|׊=Inc7 0I kJsi\u \oFJ@*W4:,˪&ղ;%y>|N͹W܊V{w ?ߢ,։4ʚh?~?f,-"hƧ1;ɍ5Ll&LSUrV%p xm|8@.!>Hݱ럾V η%^)nsnKC-eopuT+o~یG ]El]+0y>wt_[P1ߨ[NғC%TGIh(aGZU"~a 3CBAzt0JAL~قC)AOssM'Ȑ F,ͰfW/}!ahV8># @?KiVH+9BwZ&Эi=~4ݩQ 41 F|S;ҏ\kj,b.¢S?& !yI?L wPsiS &aQCovqsmne dD'~~Ųvi h%%4Jak0,-k-`hTH¥>/  諕۫s/}af!=xn?sH]a2R9>?|v@7 ݖ~F>5/"s:>)Lm¹p6_8G, 5gs**(k]SygJ?akVe~&V(Zw:8;@aIED$KWXJV5:;w>] $W)sQuUK矋#% D>Czʲ,Ͳs*]㫁{5C͗:,9c/aFM<ˤqSANw,v)ml38m%(Wξ#Ub')t>l\ҀK*hp(&X4'iȻG2+qďU?4:U_)Gɖ:Ѯ̛p5u*XqkxUTJhW%P$2x&=wgtؾIf+ݶ4r &5c쏣\Oˡ-Tv)? ,}個&4`."6;0stj?h94Zfk*j}Qn`?Ra(1m}M9na!͎!w<5 ᲘjbH̕}%_/0("bSGbah/t&b!O&aO6Y[x~O/oɚN>f5 hD<x@t4#GRlz-\upH,/w{j'>.G3à>b=X-1v9P2Ų11pU^A@1E`fO9F{" .as>#PSh|uH,ۋ[Cp?<=}6,L7`TpѺ^IslO<~ZP~bXo7wd8"|qVVyo)v B*L-X'@X.EbԀ{TC2Ga27N!Aj `rVe3#AALÊ[[dQ LWnB߻^u|B0[~WB`8ŀs٢QI:x@^v{'UfHaD D8Ϗ{a1e4 !K7;oz%Kdm7:aB)ۈYZUoZ\!W L9CS#]x58T$xH}1Xq'AXxxuc+"1PK @.3c턺۳JrA|] 8g=nMag"[(?xgļK 7x!;09`0=fqJ|ĹAEBVܰnc̒V(qP* ]Z u8,U76HCO}J ~;,!lj!nEGT|3X|}nw;TGg!m=D{A*ΠR rv80-C$+96!Z=AW%܀Ju jN!2( D ݾ@^yA/ .v{PLڏ B1uI448QC!oQOIO %<|oE`H:ltRE0d1+)O(r0(Swdtm])ux==H~W(S( [DRm}& w$q*6|{I^v%&nJ .ni89?tc[@v$Ud;>'H#1:,Ssr,[@BL:Nd 4(plVdj~`A5Ԯ-Hq.`ۑz{7[ZmL(LwPD={03/PZ'T{UZj.TvQb _m:` 5Nyj{=i_;~G78z5d`&_df (Ba_ {rxƬmaAY`.ʙ*c͎ez6x|jMæǟ[ۣg)Cy^VGG u wƑf*S; If7}F,Z>rp1cX|uu`XIفD = PQniw"FR܌Ɲtܚ e1ML`U %od7NQe@df#. \FZHHҌV $`͛,87uTSvY(0m-, \kuV>?~YꞘN8۴dDa><3&t*fy[-_IEpxz13ڎ뼳RNtTx)1 ŞR!A<[cЏ"ʧw_h)*Cb0*Uêp4R1Z0S cxHh1fU5 ²3e﵄a XdW!0t 3S,ıתȆɞYqXiXtCXGP| jͪTxklE0Cñhoe'^Ȃg*yg uBbY쉄(Ah-)\޾Em;Ե{! KP7OǢ f&5* qT"8 vr;Z0-@Hk9yfͮ{ hmgJ@>,juEɜУoޣ̛Ā*dUuU-\>_pIImNj "| Typ?K;#gI{qBPd?̂#[NY$EK6i*62ӵ%TKH$G-C+^|CiU(|U#Oǖ&zAXY#/v&j*@}@ݶljVcҰeZ6,fߧRmz 0ڗ$*ܶj;&YvLh9qFrKsڄD="E99`!*BgCT[g]݀2P\40"ΰHQ wK~-<,/+ݍ#NLc9Iᩙa Dz*xT{O<ڈFpp>h.ȯsl^|`D)d$k~/ L;6UM)ߧmi<Վ/7Qݿ3FIb7.^A-,yuEiR^E B#já`cQdmո3 n쿆j~WՅ^goA#(j=53қebػ@xӔSn#2*45chc ˋt4[A*W$AR\ʖ8!5|ۃ4zA/HEd3v! (5+K:6/w,קbӽ 7d2A 04& j11FC]X k&]8A`Paė?ox_L<ҤrBEvDaaz-dI7 sB@a 9Ce_56(L]%FnȊQ{|U}3h$ mJS8Ⱥ =)xNFZ_.0ةKxrd񙥼#u}tz(ts1@)eI k2hVG\"jv84bw J1,>ʲUXUԎTжXL;J|H4rt)J|ey$8_(9[ޛ$hNX$;+wC.dy?1 c(GNPn mӁ}Oo0#W^'r )~3Cdor)bz2 TA6_tts^ P Gd d-KN),]h>g; SOyv?dZyW`4Nc⺦vtXh79M {qe؊9rcߊ쾃nַ-b*j w.I4V#2N(&kp|4Z<[^i> DU΂r&=@")M$zɞga 3 ct qPF-Ft/}_-̔SbhnSp" pW0Q|մ!]7 )aJCЁeڸҿʧ 35F0od1\BjH]B\6YS@'~JYZX9!xҨ߷I <[G4c8P#a{XDI%-b}M۫wcwx&ỏWk3LtIoOVι)EkuZHy`Z?*J5jHiAW]@jl M[#9.`jpz]o6D}%V<Һ#Y%8E LjH[$}D:V?_qZUC4NwbBnLU jt' ZF^>r]]}sD/@D7^A(F"__SSx ~p+tP5e ?'Ada^v(A͖]CNԱECik-c Ptr>\RП 1+Q%b4i:#du@Vމpy<]7@.UeՄn1ùZ niG媬yk"oa`VYȳ!rw{{n_;ičzC Hb* GM Ms"3Mr{6'0Ln骥²ݏb/V4PE:`0Oג0tBDC^%ņO\p TǯfT%NNdJ|3Cvc -Ѱj7ybTr@%ƌK_69KB4bs\wv*/Y~V4\a_U:_?RށEe vBcWc$1:MPHY Nbv€Dߤa\!=H9CRdj"_\2L݃_)AV9e bUףy uYjMG r>X:2Ejn4pP;-&y$FmB 'BD/UV0Z)Y3k #ߵf w3P++C8"5!e(!nEQgxF{ir'hrȝ `Olf[uc.]p/t!_!9[t( o_ kF/5hW9:bguUp b^3xΣ(jLW酽 6wșGvl3AGdA+TNұ%`}%^nlY_g#GO7@n4ⰻ6zXI/NjK] tDW '9δ$!W-".k"Шx$P2&q;0V =')HI" 2/*y)ɖ H exx(?J(u48/r5 *O\|T#9tOt7 W`KeL˟I+7Ѭ ߝ`ijထ@KuURgdemHh@*W ~.s2=w0 /;Mw+,lU,M-{G u?_. 4nl;*O8<%<:XL b(qty H ӧԗ< ,?ȠAObzt! !+k!dl^.|FE;#j"80-֙@'sCkb%XiuUm9 : m iMmYNOi`)OKsC-Eҭql@/Lާ':|$mOZ"XԎ8nvTꏘsG֒9SǕXdV  V\J'OH&2!$ٝy&mB^T[ݘB UmMKS'z@¸R{8`5ky {9<|lhvwmurxȑS}%Cfʂu19kYH =O)i۞[-5a/ &.g{HGiwd9mEèMTu4t]ZafIT+̡N䎎PDщ!*T>Ѷ*"k}dcY9rKm^~D2I}:]<"|#-ޑcNj>Mdk:e+ YGGS$L b$bMReQ<^ƚK|؞pi~7)_1~8H+₄l^:G. &~sIY~nOF|c}bi}rCNknnA.PӁZq0KD ~F 9_pN^柞2jNօE:j7x5{"%jp0!.F%glF_I7Y?ђAn B/8s?yU*vf/&!gT-ӵI=5p7ɏ(Q@ŐOb B7H:V!^?246Ns1+rJSE-o?Y´A9z<*7CJQGߓ9y1# p4PPxng4I^+~.0bfxw*"EvP i3@DD=1 Nz% =yKX-m:nYa֭BʜNë@iUkSiJ$ȧ:uL9t$3b~a{`!,/i70 ‹B%9swп}| /r6k~ 6{zǗA/ I rhO 9:cUsWaqS ?Wѽ [zDEax*YrHW}oR}z8?Xl!-؊Q* Nn;;6B$>. RFKΓ3hsCB.,"6v;G) Śr =\:<`6nqQlBmulí'=>aPyD Xg)v8wI\nskc7хG) V:&uDGΎ ;F}JǠWqbFo""'j}gBKVޘ{☱1a9c~pgCۥ݃A2 f]0&o͉آRgB?ƁֹNUQKGo eZ,m_ m+12LlFPI  ;%[܌FaiÄ[6MWnŇLIk1Zh(I@ր}^KjMڏ=:{p4 (WMLXȿ~tr.2("p>[Hcw&ʏVІY:u6BL7P9F'Ϸhu&l"&qIm v2EK~"AfVdmuκe1OY* ?_k(>H ,AôVY^ň?D.P> ,6S"{+}3~-i `$Ecq]:Eu3[v@!u*xܳg[fKTFEIK$[݁?})]e<<=y[19 q*F>.3aS!eDnW9I>qJ#Ėh 2]kl$eX! *.~>{ R1*U{e8%v06?ôEsa*ˠ0,H$7Uπt}YC9:W>&=wߎrh>&/3"~f,C--g0R%Syn6Ȯ"rEQp9"kԮS~{u!#y}$ L"xj&F*Zr=׈"z˅[u$! J,>/4=r6ٸS7tz9K~jo4nt=!6+,zustwϮwgb/m緭.BӄA{԰?O[&Qs (e?XF{ >}R4Ʌ#!F+E|}SrP0}y>$kʁUGî-nCtDQȗ/CNo4Ԯ̪uoZTCL7kn1!;,;#b_ih&8y-ޜBq*JT[X^NB]0ay7Q]FWG5yCELԴߞHHܩjՑ!3o@pఫn@Zkmbkk7,~a }jgz~j"=֪&#\ajО"oRwB)3{,ZIB"|L_ݶѧ;cOAd;~Uz 7CQފ9CTe`ߝSBΩ 腧σ Mʌ(#CǕ:\AXSuAXt0y8DAsaEVY5(G痚X{0u^ΝnbjN+j}J\_x'!,2{ɮB/)cR_8fFxIeuQ=l4 쾖f褹3 YBt 9 {}2}هlC?t82G(D9.I옎 |xM4oD7u*(lTGQrqtVPldT؄kGm}?sz6>(-4K ~ /LTw_P{A;4WI+t,Aq5f^[d)% _kUVhؗVGjz$xѸΈ,`<"r8x8Uj-4^tX 1i^[T|8GyTCZVkz{=7al>1ph36SLvħ{QZIVr77!/[0^|s*'D|4VI BzaDJ;dÒ\ű? PtU'͵AbO`ᨫ'SrKP/yD&h!% $}KEz-c ߿N$l JD%0}5u=l0rj%qHBJ;!PD܌SM&ߨa+;R(5}EvPv| 80#~ gM.ٞƒa(Lmzi3{Yڶal1./SBKBm"8į+-_GZ)-77uE2l2[MKBӿ zb56CeUvBQ(ӻd,rfFqGONѧiQ+Vs+ߠjR88B`-^Ծ^Og -ވj$v{-GӻˁxQƂ luVie$&`݂98g* )6u[*_9yn`Є hp'? {Y6[I@|^A$ CDܶi/'my%tdz@ȋ ɐrtr5ZR]8G;[!;8 hl BC|\y7rwN:l%UUYBZ-Ll.m&Y>8cu@V/KԀ1A E>(?y!7nHnn˻*8u;>fz%ږ[Fs ?1o=w緮VkH9) e>s(:7| fxWbRSN-6z@`d#C5OT9̇#gΫ,j- /j G  6PWb)ZrfOs)lMSuΌJT1x`ǃy,MM !'tpN:g}fObh(3mf=FzgSEkkϐ(䮤KڣDF(,\V~F[\N.AVoÓ3}VZy(q~-}Ouwvm3aᤇɼ4T`imDIWAA-]8KD\? f 8a){)bp B GZ]M&._.ү JKKs@}罓z ♫gNeH!JUhgNhŠ4k $D)Ʀu/. !P%9-w4KV9򼬕h+$\ %/mZK?3~)mN˦7gE M~s2`ޔPJs۰^pA$x*P:Pzւ1$-t5K?Y>;40 T[ΆwW mrnz7^ _~.:8ZC5 X'.uF%1~PU0GC쑓Jf'kSj7Uwb5 ^cG=NP e.ʺ2H{uEliG[TCQ:.Cﮗ;G+UKkk{]5/(i&;عSTE[)G*_<6 ;v[Yd>C ֳ Mލ%8,녨x.RwD46a*.|X'I|9(N}՟Ķ6i Lt$p Ex؛ڂL!)(jjy3QR3Ewjb "Ĺ~šޙ-pZ$ظ__e-ʵ2#<x T,MOU}ї>:C|~Bz_v4hWlVLf\PTSuGwACfdL=L_1ܪϕ[Q*,&j܅UE=Q&@zsL%^mM@jsF2zLzLB|u#IV7ژgǍI磜 ү#+ \'+~+ cG[pM)=˻HF[j@c'U,uXٻL.Y+QkN7/4Sd3VNT uZsz41"t*gȀh[|yw #AX#_"Yq<2}!]y7qk A[:" 1dyh."w }W$2Փ܁?{.Þӡ)/n->*v3p!~ĕ : UejQ4d݆I?mHy}CDj&p+q8Yqar)Wc BzF}/٭7(`?C_Ď mtO#)C@d 9g.h#nPBl܊ch DԳOezu?FGJl{,F! ԧ?`%lo<۽#4Xƭ4\yxϫo1HQ\vt6Cu\Ѩ1^~˫`{ـ<:?<#P\x)\hك0 *"Kl= Izk23r{.3zB*?o8?8v{;u#遢;F<+ <ȦO5k\l7*(}\ZCmpR9n%G11Ю(%};:ʋ +O/DM`ӖHȉM'L<7@,8n_@Y6Ѳ b">.=/EXZhLyy:4^6_V})Hw64-swݶt69죁@SR.DX7{vnEA>1_Nr<$k+/8H;CftЗ!ĢIv%Hoyq''tG\j۷nIAqv36͝ͰM3v.0vٝF3\ , C}N5}ٵAD+X:̇ aj >?7㓦CCd@q"՝7 q W`|\՝N< uc M@Dop' =9~l4x?0o6Ҩ2\W˶Z'_T,7r3?|X!=P@7{#YQB qhkja@ XD/䵛]T5OǠ%Ug.1my2cDiH<d+D"iF嶐UoI[TTXdNJV{sVM^̗5bhϾ ߌ:*2hD'=%5.&п&Ui-et})[W667ŰZ7YMB85vli1,7hV__}㢪 &} Ť.qg6'HyA֤E2OϧlqkPYi Q,s30v=T {4ik=)I'QsY [92RL?",q`p"rY)\9e-pBj bH̗[I3 6 ~`v̬ҁؼxx@N'e,XvfǓΚA/F L[Fe$ hbRQ[ڙR.D+ v-;1͔S_ \ɗ2N_]/:m 地+Qf`䜡:)780;QvJ7 Fv:6ϲB9/ͫ"5aGF}਄fNDXU 'Aj碁x:_pQ:`Q;գUx1W0Z&j3Q| cL 'Z''dx%4p tv[VF9ٓ*WM2[`cm TE[BھCGƆs#kIf^nWl*u@Jd: d?9vY!#{M g11s=#4[r#㺑+}1Cl4~ԓ3+,MT;[r'j+kRnEU8jׅd""2bY Ъ@- LaQv"ާEwL5!HUU3y#)'|K N,lB.&lW؁ ~ګ25$\ unas`8=4Յo˹|vdCs<a^)Pǯ8maWRTnwSX^[KЮwdۋJ88Pd'G'{mXy6pT1譫ԵwBE j&q￸kO jllW1hU+h$نg9KFS49.:]2 aQ0V<`?5p(;*I1cz~cdllT!&A0* tO˴z/_GSokrVVY_[YEbcǴ@1;YjYOq6bD}4v G?J(E:H‡"as}r-;$/G$^óJWRj|&o\[ M}Lq5|4FbG0yȁ]ޏE~z3W0u3&8+Q 2z0 8+qZq,91› 4!Ǹz!Fբ\USorBdzItp2A{C9ĞwdPXF@XiVY ;7h<-Kelwwcg5'ĸ}?u1qE5.hWn̋k{FEz <\tg>%S^A27L9:T_~7 8M%zR7 2NPv{q('!仁NhqYHhȮX%3q!-ø~ΰO\O+MȮf_ }Tbc(33ȼ|0Zxe# P#j!CDLd`|=k t}x^;3.&R=-l80= +E4Z!(6y4)h}GԉtA4M 3&795[OBY e͔i2GbSz;9R+v"`gB(=KW״ 0H@ux.K#߉ynRUlS?:l˝!>WnCo͹35&Y=Y0dQa~8{gjxU#jxnGA_lX37[AF=I%mnis$(֪Un*kvvZ;Mjb@ٙ]y CKwaʽtAQ^)7a"9f8j.m`-~u|DB |HՑM17o8*!eez Ay#^{^Eդs2Dnm߱ aF'y&euB-6B2bXDNvb-l4HQMɅ?jENJ-c)\󗜉VgDf8xkmsۜPq!Xp#!" TmDo+O9Hlӻx6lt$4vp/GY= œ0VtNZbJKp2Ĭc"\xNUDZRJVsoUo`gF{?[k q*-YSCv$}ycbW wRp2X")>='C J6D&W(aJ']DI+ (A*lXi54pPpJyCTZh:b`VnOf+}BC,gcNDߘVԤ\4P.lJur|?*AgtVnٽbXs= 1T_Do{[!'+G |xDg-~7ֱZdeԥ໅EQƞcײA/vfWM(+Fo'C=wMcj"ϣ ݟG2+'ǖV46|67ᡃUZ^Z@VAz865m'޷DؚŜROy*o'kG).epz՚W1'~hW׍_Yv b?v¥312&p6O]&WsFL`IPh <ƻ$g95D"<q2;~ك5XSCA2̟רaVf5jL=pD|[*B?oy{<|=?,~7PZZa76dQ2/N>g"MJ싁Ԙ []dGkEVI^:KE=07@>c 2N:rŧ w*R0glsvN=I }fbEzV~U(?G!qzC:k%U}>.u N>--dWQ3٣\4C0שO9ɼ(?OB1t;jLvyBnB' p5+#~"W1G D8o1Q(;Lg7-BISǎ08a7 X Ǐ+IbVų}x,v6:ʨD“^K|A7vo!k4\#Vܤ5 V8A]-M qAP*{| S9߱;6r@|4X(] WB#CW>GCmEiGy({v:FF`7D#ҟAJ9ۅav.fH<?Jx ]/F,CVmE\rWkSZ4?qo-Dkh~(EtN /euhGO+ϻL;&Ϻ1~gyt לVNHqu"CZ/}wn cSj"Q1좾M6f'1Nm_PV`R& ս(3{/g06P#@ qYg!RxKAJ Xj6iV5l̶j@bڣ0,(;g-^~b: Vkj볆8d(*ѿt|XLе)pځ$hI:Y _9+ A8@dsЏ45C(>Zk^S)6ۇ]T^jp X8?2-Qq)?gj3~sPrlۨFOՒ GCӝ^jn Tl_e5Gř e+08:ѺR*Xd߬3TU~#Q3 QH#ح(KۦFi}E~$0ᅽ١D/ ME [ѹ䣬,˂)aJF!p^Y)ģ]3W>J%U|-f{ΞO;a);_],`x+K#0/c!O૚8zKdh49ty;[r+0xh]nEvQ1{T0&B(6eWQP1΍T֮?ʪ]JluvɢWѲ%#͗S*g!)tK*=_/zQfD')r_0V*ziVw 遷'c0&%@4"zK "؁ѫv5+WV7 D%xRInըu8Gjk_d#f!CDd \$е#Ě iAU tuFdQBKj.uVmAfEq|챵St:ÊkD(nw} 6N5'Ktewcr&_YHz/5CQgsK 0EXY @F^ׅ@wqp:zYkB0cy T`sRAcAuH?̮ꉴ9r&$yahzPvy}@4-XKaIJUֶRR3?MiC3 vpL6mvN:2\U(ސİ$2ӛmtlk(}2wiyꦌL&(TZ{w vS7toÐX7ʢ\<(G(z2@poO1̇P~.ֹPfhqy鷺-ۭϤVMhz&,>eQǪĂ}e5#H 0-Օ1w6LYb͞ȅP2R/׌E7!sw]1{XX c4<wy)c"R\} ˍy .@* ICzh+5 9mB1 >szRcʴ:%dh,#Ab[jxɱq7*|W(-u8\Svμ9C<:AMJ@Q]$6&(EG%x&aSSy /C5Lw(d|]sg>m=z? 6Qumj7wQxQmik ա4PO6 p͙K?_Ν(:mKWm$iSSx7sj{<@JBYO!e;aN5ݲ![A[ @pT95*bWy,dKpH+/>lTlUWw0Dzhjae&8-i0T #J<,\֙ߡtC:t0rH5BM&@^b?T_7UfX'Y-ޠQlM}jU]r 7k ,n_y8"ҝڻ^t~l^~Bu%d2}AsVv#8%{dkGOCōFGϧ$DM/iI?{f>9-`+~*f@_V.!`ɂmƂFQ/` s-WCUN0Q@乫Tܚ°-Mw W!Q fAy|ʆ i/u/OS elʦ]5i !k.w솼b[MuF31_V sx&'?6]M\q+8_Fb$a5i)MI`/[)`:Ԗ8h b2J2hO]uuDxa*; v,1;4G ;~kPfQQ,GRu+7诅fj>TS$ʪ#3.!u1HǃVBz-eʎHB̕+3ѓb{HԷ#F.O2_nd2é3{T"1ѹJO8O.Fd;0=cRCKOx믱| ,Av7Q-?DZ)%&SZQy"(_XyO|'7 F[Q42598ӴNl rBa[ՒYV+;ɯ'D|0l)Ňe@mX_̱ˆ}FfĪVN?kDv=OlnЋ2g+)6&%}$r]3Z'X BZ~pIr#&70qmuCdL]&<"&1fZ䎭IAl\ ÕT).WK"n1F[w82⊩^ηÃd6#ϋTc&}?4_8{" !0h\u yLG\ +eJV?ϘpLmqsxwm-)$?둑u/ndYpLȦ]q[c#( M~N9pͰiM}0/e͵H1ܟG)&7S> 'M]}>6:(S}ֶ-LTbw@ !>PR@a&p'b`Ҁ?ZORپWÍ6y|wլQܵ @E(0!odu73;s_A)^$Uf($.b{<2te[.U-TL%ʍK\cs_ -N"Rg Md iY4[]{@Lw ,^hVЭMu{<ϱi {E4$~;ה$3(͗rQo78&^non9vx"7c$2a,Dtc9#!\Fx1ύI'5l$%\G&؏efѧ4ǂj,j 3֛V5܇P~Y硐>Sp"ߖrXQC MgJ1MtW6h vz. W)?fM9yf<;>ƄuN U|&C׺HTf|hBnrPl8+W尣٨ժt/߹D v`Zn4S@+x'㳠Fym MpI.|O{.vcR:/2{Vܝdza^ zl,ҟߟ }(akބԦka!0ǰ९{OTyJtRgܠ,ITcز,\d.~-wEypW"j aoCt%/IPugTiU\F㑖j_nL}L:c(.QHy49eX0lGoe%Z/8_F$mEXU>kr+%)3͎lɾ-r taVafa-sNSW.T&QPsqRgY]"n c$dW3;EU5: }M^58ߘt5Ƚ(־ЦNuD@,~\4R1ZV;/_+k8xztPAbObaտ xe0mV$^{v1rս >bU"VNU& Йg jl:sx8=$ ؄B jNbȣYN)WeQr&hx'Dh׮9"o6+NԽ= Ue:62'ࡴV5L 6{Gi>Tg/s,boٙ"/R]u_@Gz'_}{eQRr DupdHj͔R4mf3>2]nXV/Rss@Ԃ)„ք%G%(#4yѝX sߞ.ZkNeïwqVڎ?s VPZ]4dϒp߾i47j1:BXP}_Qf82wq^2s:߶<HHk&ZѪ(Z(+3 󦉓p\12߬"1@U=]D&| &A &5r]?@(h/OQA趱WتG'!r@}L%9qWåC'o5v a YaN欱x)9)iB8 f)a%Ɉ c7MmPQ1㢏6SwZ+[֌6-Su&D) ێ.ly;B)OwBsU:~nOS}A//Yx=631.'tЧE^1tzKd|rR;\Ur+F O cC;+uJkx'D%6drRΝ-<@ՊRMpr/K&e3p{'Ѳm# e^> 񑁻;-wc$wP݂#FSjÉ!UXWEW&-/TH)}>aRQP vة}^5{e)8>R1lK0gZn|Dtw=O|u}B:L -DX-;460WQSwQ*ARx67hsXdF,BDJ?>Cچ*Xx^v`Nk椃QaB?CXX̒BN!n5aӟA—.]$RCYv"]qurYڂM6ύl"Vވ՚ߑX7׮yC5•$n@-28`$iaI1`cY?"(F ߚ l_ pVJ]x x"c= 349[:Vvq@^=& ΫFN_=hQ<+YM<):M}XPؓ8-֘T}lzXWw7NsbgǯF(Y]E)tIfmJ\{ayÓ||1F.Cȯ4$xC51T2G09(xoo9<`HM A)xgˁ#~=_VDڳЄ@I~"]J^d=`d2ǃȁ5dፍ"U W9R`TJpo`@.r|dRG+H֯,>Jz9XQ w}R{QJfZ}9!<)cخ鑭߷5D&JhZeen@_m6H ̕zm/N`v9| oPg~Lg0:^0oVM@ ipBe{*a&.Lf_$ ͬMLXw7V L"+V-{ܹg6cGED\;+c$VnuHhdɻ". +VE',[Ui–{ /P%[K՘'/\ WdF8ZbhQrM:Lˣ+|6uYy>wuc1kf %@oRZA~"2 ]_J3|k[;괉*ݱ8u7jhKC z~A8k&ω]@k;{ּ:Y5A۸/PFL9z5[ħJT~ ^Dܘѓkv6}HI&U2X&JI;)Gr!J{ø?C<ɿ'נkCGw[w.97kZ_51dr9|dm&#&J4-\ޥ6"mWHhHi<`p-8|ށ PV'7]&ie(a@= @{u9Ĉ^+ꛢؑLU]f)KrH_ڄ gqi7I0~ܸ"aUiA&Ioz`z\_m@GMD(^4]+'qsB:MF(k9 یk2a VIOIO❖).(6wV%>A&d۴G7ȉލ߻)E;{/Y7|>xBy%Q l[ͽΰwqky_0} /bݸZ!LŎڀ^TB? UD. #j0{Y$8dλ3̇4a_58hʊ([FFr9֮?&w%cU~q ]/ȸOwF UYLPԞ#jAr T2(3u,}fƒw-H/U|>2 O.| pJKUB~QTf_xגRhl4k(Y0-Ѽ\ P&v,0j{I/Y\O5FMC{6 u7G{\bF ?uwha sgUDS^4;@)o v)!KU黓\>ayGG~^.W)ܮ:pjߕ eE .eQΣh}7u1?Q—:W("|T]S3bT(Tlt sV@IX-Ֆܣ愣?'z$mt7^řW,xkR:e^$WNtw~UմC't[=:n]E,ԢSME ],`Wщ=X Bdy.on^Z ˂jFӎd@:IXy:BñmqUYG^$V߯MHP  lSUBڹց-̭VwW7/cZU!oW~8Xs6[ :ŔoTw 5{ Xn8.^8Ee2Og+Lys bt Ƌ٭-4i| ٸ8{uxwC Wv Ʃ{*9nN#.t1Jr)Y;T!5\A#D8#KEk%CkWw%ܥ3Unw? {s$X^Y|ylH浾Γ>n㪔Qucho VpGQx͝`& ԍ S6!#|gW"BRXEI 6IDLS鍸^/5Vޞ K~ /DƂd˖VI톃 _S@*񇪳ǽyy8;ʑoA?f׊+-sqiH3hwzG41~Gsh-5maF}JlUֵs QQһC-|G.X$s.XAS M̀Uז|G#R>%QG.ɦS$C[,v< _9jdH.z'>,XATx0,dQ$vyRt]Zlxq0WGn>`sX>2/{U{h=f:Y-6z"N6=V!dɃB6>G.'{St(&W}5eV P!"w 5蓻udn?GWc6&TPqn̎Ī18p40||v[f@u K@O_(n[0 $>݀^T] aC5;],g+?Kh(kEaCH$] 7^7U(*pb"ת6_Odnjo[_tM A ,:w1z+Y6bABB gY"i4UƘ ǒ_1IٚBџR JytYilL  XhTͶI{avC]@ yDAQR)`F8^)O,N8>iMv8/ߓuöZ3gn&Cm5f`sM-Q[c4A;u; cHyh@M~{"UzBkK4%>m7")LN$(`>m&$@bhQ#pm2G9_L>τ G) ފ\RB}aAv2F0Da 6l#{Cjμ҆i_ %@ԥ`>F>`ᡰ>XnhblN jăgc+!y:HtBI|(ڛB[yBL`ni|]fjk5dhe/єfs)k651_%T/m_ukц! ##M r~- VKkcCT3A<+hIqm.m0d\[nA3BB/?ݨǞ^PʠtkinM AUMz6b]㜚c%t٦ >kH|HA%P~Hl` n$R,̶4׊ lHm=36hNCjX4\3R⏄;Kc܏8KUJ\#c?E3 OA3O؋џ#Hߗ7po-@^y9^2jJ޼ RM"_f[QJԽF˛VFam^bXN\JBh Q0\.\y*An\O:@ɼ̯Qfw{| M{N rmC"_?{y`nw9rF/xWRQ2^A+0['Jz(#1q Zx Bdgx b_:գVmU⿳gD6hݠ0ҍ2@DoЇ)+tA%P|צi"2u >З?T[ 6SX . MJmz#5HdZW/0^pdj)W 2sxdS{:ǹ]/C*F46;B؅5RU{UKy5yZĤ %5}Yc( \f=laf'rE"e(|5RK7wf{ef@7eUXAv0nΙ?Ԭ?0vA7(=V$03%B*=ʍjRXL&03qS=ř="ȮsLO| TuH}mb=-|"/] Rb"{e͝{.AsPKU7]I0={hW"C~+DZߕSITTzT͛K;G.i7x34\fZK(0h-;A=rfZ w%j{2E3\˝V9]WY5.EA'DV⃸7^&Ly*1;` lSM7 i(\+ks۱%h -f9 ǚx@R1j=<TE#!\&!+}e/ ox01A:qٮfh΅=0;l E] K9M@KzeuMz0 d9xXrU+S2|FJ+>JE>;LMgݛ@`8Nn 'Ν% }I?砩zL4鐗E&X*;H6C98g'κ3C׻tdNj\N45`?ǁ✢P/ [=cZP&7e Uvʛap<] 3/0V3-"AIgN2OܮwH+caG]ܩm}_ZX!۫hB[qu FYD/#fL?0,-]ᰖw ~n'ýT5π. Slo@ަnAf}|3(G#0 ulKNIuF9Ƒ=<%H<`)𛺔=eV{Ii xb{m-|NRw)?f]Vܡ~*&P'${!#:%@ cGB竮X#u'(e`Bf?ǑF-,j7^*cm"9GY-£/TenҥjDNU,|.T4>* MMdsl GJ-Tel%2Vi32Z*S VmUT[C9ݥ:LKy׃*+cAgHai,tڱW_xh' vɠ)4_[%v %i,dم]cq 7_qycѓ].KXm-l-V&D“Z u-vF)*&mUvIOYtG fX9~Ww*e1 |x$]˿7i=.{ěu\]@֟K8,۲ע.tlU$wSK~% Ӝt|oeT~mv?yu9 >gF0^A{T7703ſ̻F+YR;I˥ `2E!='iq]HochIdํS-굀px^lR`T,ա4SwC*πx8$kzvmW/f}(ͲTW~e=u5>.cG@يwcˠ̜Z#8T(1E;>B  Sp)5poi/%ݭm}^0 0 &'ҲNs0ЭDWDS"obg{z*E aDž^Y>OBE. rC*O?iB2y.sŨ(<Í<Hr§u'/#!=Iz`;K<( p9+W ,n[[|*f^ayp4KɈ ɏCЗ,-+XAF`l"\@1/TIuG]ޗLqXП)Srz͙WL .rnjhgaHЁRgzK(Ocԗh>*u=U.Z4W ;w"FdءgFP#wzl/gHOIM*?A}Y:>w02ye<`KԦ~Dp\w؆S3 ~n֟%kWj}(q(ٹ8ǯUrb`(YxNKpO`n ;DCv(\63W&w ҔT/aYQbK_UMpsULަ1= ?@jݚ_n`dVA{ꢃz7[M99Uk:38FoiS$īf'Vc}e%Pj*x֪-; B0'l*?1c qZ.zNd\b3o YFOnRbjpԮ-kSh9/VZ}ܓxk15 vc#*=q+YHx5S#Ax㫌 e[|P+gN{˾d6Ls$ty,ASc]3V׈X fXPBJDfG~>X=oܻәb8Sm>G5(&47qdi ܰz}?\^s:NA@Ӗ>lѳ`\ѮT+/Cѱ|8oDu/(m)R/a4\ 5X j%:2xBQo)QU\Y o.0~9ڲzrxЉRj P[tx@3і/jj[|$[? x~?_qkO'e"eLL%۠ ULUz)\ŧDm,W9g!PO#8Ѿ3'hBxԫ0PYScAx5ECB5Km;E2\SOr0>3,MF$Gua]= 45?lYY$!ttҩHQ bNP =HJQl,nÑWH*:gs`T &!\m6,?cJ,R(+m\*?Z y8bX}K#׹r}42 2A5=0n \ ԣ3b~rTD c4f]59M~Lž8XtV$b5wYlf!s f?"$Bز9\M.P$sΪI.3r/g_DD~18?K>*f'lphBM/|z&p>mB7=u7%] $RXiֻMڏlXhTz,~THґ$Ӝr&Y&nΘ^АQPȗG.33XH˯CcY@)Yd|gG7lqnN=ղk?1*69F3UM !vؗB#m䟥\[o}C>ޭ;s^OV T B H 4F / 7kIDa[5Fޙ e ݋&k:p l$Uo@kdF~%`g8X''e4:Qoϓ %0g"Aƈ8Bޛ1-)\AeOpս?k> :E> (4@$Wyc2q촭7sΝ{Uz+)M`ޓչ:b%IJg -x׉D#RY2щ|"}^8Mf~Hcku/ʏEOuɎM޹EoX*-F@,FѮE0Xw0!*_$~Y$&Ă씕4 %A&q~]X^gZwWg%J1,;wpq}LDv33Fue2- < %Ǒָ6F.Т@Kl͜e2EG`#M7M]gO<<[~$aij|Q-X>E¾qXzԙ %Wg)%ra~ I)Ŧ\6v{o*Lhd'>]g@̫giw1bwp%4\Q5@VzQI8ʑ1Ջ.52&v TN=j3E?A'x2QّK7p\zrdc HN1q܇>^=jHg|WVQC z1I99VD'7G%OٚRxnQ/ 7Z~x'$ `Pr0%0hl*&u~|$A $ji\h>{Tuhk.Qq[EV0b.V!WMb PL[p݈_ };!+bY C] x`a(zMNR>kU aMQ"߿5#2}Įo>R[<jiBS쨼׶'uخMO8'[R=djZV[ρkdv O:* n؈# bЏO!oOR׽k5ҟ̃Yf{|P >ggE/DLJ,[C+.*װ.C( "*c[1fZvsZ]}h3(h{2 oovB| 'xl)p6A1 j]{roћ@cS#:DMc1{rC%KscU5[JH 0R\+cLM`¡{bB,:~ =fD_$j D" ]q7LN b{D^ITCi善\6%^/|.tfҥ+oԮ24xi2k_QiX->{SE:za{@:XOcKeWe1J )}r`dk|@-XRKua&& ?,u%SrC +6gpM2B5m/G^2)oх@Bl ++&I|y9]ĈSMN5՟aU.+S3۸s<\Ô70GX\ꗾz"S] X 5t\̀4 j%,Prޢ p)ɩ1E",#s*8`sFu(ё8]|֑;&77Ɇ޷ ?" ~!kYU,$T?k!̏C_WL`I&;/=L.!zCs)3P9:RiT@ფzUùȏV}iM_̖/h Zpߎˋ^K3YtIHG:1ql`Ah8$_8eS:X)|?M ;( BD(ʼzuX# nsy_&9JG- EYZiKZ4rN]-&N8)1`2YvJ^+5up]0C 9&#&V}MPO༻=hK {*j)+.fE6[4Nl \gˎ"'-q4&vcQ)\R~I~zIBv kYt{ iI~t:A!2@n`P{mj=ķ .[% }^VJkCA@XK* ?dƧD%h+>*ވ{Dбl]Ц BզfFY R|7W Ti3ld$SݹTkHM'Ӡ60_`AQc(bF-H;*d 'V I<ߺ6iʛB5=+D9UWw*@\ڢnR|mt"C9nd^wZsBx{.9"#4fdU90-|33Ab2TdVWmӀP 2܁;LB~l_jUnrVB !0oz<sCNl"M:4;o^ĉOd)$C(/ͽ9Ln{ʎ_ P] ݂YZcpt|Uҍ C1L|oO Z:I0Gc5z 5L\4;2'`,HIbL2L :woV=P.w:k+9 *u<~P]A9#$-~BW`d 7,}/ _58R;)zm*j \%Dz @Dx8jtc*=>B7?lqu 0G |(KxĹ|;tklipRmb_H a갊O[RLarNJc,,7:*@w1]ŗznnOp5uGu8k#T}!' +",O30\PK3tn-sOA-=.?o7RLoLH+@Ikn+K=P7(2F:m)}"|׺"4~@0E2|k霞ßL}B&`8 EdCυ uX."LPF$v8qSЬW8 \u!GC}鳐z0,Yٻ*/" NJ+5]y xiNq2 rii[S?ϒ?4kɴoucTFE-״ӣsR H3,ˑn\p7/i;`zdin_l;8x1~O7JrE[^~h0f%vy J) y]CL{x|uab]<&΀Ӓ$S`9'BzaA;*C0^z(m"E*wkS6 u E?`o6l2!W;pk(O=/f]a X)veużqd\ri: *[-C0TR'XEUVDrR x3|&zT,Z3/k DK]_-ƥtTiszÛT:t,U;\S?0h *cpnICZ^7!Vjڊ X jra$rhHbE"L' z R(NXY u3"RIB{l2*FD SHk\OnȓFaU%ޑoŰhPZ ߄SJOy$qu BFac+5ukrvm6hH՘3ÝI0zbD(eLHBsc+F;WyKw _S%%vJUwvې%faLKaoh¼c+ XypHX'xBz L3.{w Ġj&yFvn*{ qu GYu2ֆʞc_m6xF6FgQAM?G{1DOO:qGGu.;FP8!@U/`쥸WStذ[ 6 o>#-$t2/C?E$_=v\Zut~c*-ZE2x+qz ۈa Z&/2a|?H[J6.GNV=K-toCn0Kb⠄  {8<sϺ:as/ lR.%@)]O"&&q=D0Ϻ9@U.i<cʦέ7)k۱j7K? ۃ4[d7~ۺ7H˛pl8q`kS,. U-뙼{DmЍtdTy*'zo1fN[C9--j'rsɋ[єжb?f05L7rsI2=in:%5J{`Qo xRzcGJl? ͞*iCH1OND%Hb`~zhOJzKOM2,ְ.|N=[)-U7F/ak+}?z6qgdȆ)2(~*qaFsX5Ƞ:48DBR _pyDї9"tՙFbPvL!$[G"R~_Jj V.6ݝq)@E.)"0f 93{a /Z%iټaWE8 WMmBuf!XV62DaH}P"_,pDzRΗ9V>;Юvnőw <^  /#+ۮ+0oQ|F2η={6FQH)zc\C {,;Why8݌08>MPH򾙎F%^zeI0k7c2 !qgÃ%AD=NJ㏼-8q{(M1onY(gjFyQ3sL 4?Dc:5~K2~x0AùɒҰNl)iJ >Lf=N*>=2%QW}P^` w+1*Nm/uuVpL 4 fl5e[MC O|[L xg>7E8[,`(|l}Pz <x c͖Sq4!MZ_zq~8kkH WaB0j4>,..k4R8 :G&yH7t_k(pDHɎ`$L -7! Ye\-\QN=PeRb&)_>j鄪O&=OZX^P6y^.Ny"魯ZH,tom*,(6d1asC,=5YmsgG 7ȯ}{Iyp#-޼N$D@J:$0a,xT榍2pz\:v]E_ͬPFRǽkd& oăvjo$";‡S\KoX4WE+o\﫦R9WjٰqR"]MNLE'V#`Z'6\X1?Ҷū1מl!QpAk/( 󮜦NSq>f ޴S~97&\Xގm`hڕ[{['Hi%0F_ 30Oo;\|i+.$4$!-+i֒Fkiak~$߼JJ2tv~9S[oa'=ذ,ϛ"meOF8IdPc! ڦ'" L!|#!G/iBDN[? }?9rJtI ~,+H *c>}>a<~(Ց'1~ح센MΒ@Rpzeˠ6oe_N\q ƺkW4]^MX;gyWu!&Ї+^T{ZϭqKauh|juRwk0fGhdݧi!!rZx|t,?de"͒,~&JFOF〟h=GR? ٿ pH5ek?+):X7 mJ6 Ĕ84Hl j] T4"&J 240}Ò)sO^ʟ7p-CRMĵTlZ34YwAG9O,fGйB9RDB{}3#gG !o gR7*9+91 4U_ R.IrV'"}S]\Ӌ.c4t/JoaLj^JEJ<h>#208ƹi$H ExSeU}Uzkf'(Pĕ2S_Rl0SIv55qޗ*|X`hiH˘o\IsgM ,w8һ S6)Չ^JBhǀ>-2W=[ lS!6J>.\ܻ'moTD-Tlr}IxJQdpdU+ݓS᭢6"˯h@FXra0h̋C:LJC*97UdrƸ\}L#躊[h0F]M; 56?A$x_\lZ"{`Y vU!w;Ej3lyAb6G}4-3gA%ԃ 8@oCF( LuU^Gm,'IwkgUz(,lѼE;w06cj !c!rsP|KQ%2G@@X,AoG-@_ {7/ɎF:;Ioƞj@vvh6J']~.C| x+{d,#o:A*1~ rDf Xo\2о*'R!fp6"o&pZ㷵_"ʨƛbk-DGi(?,q=2_܅_zB^( !9%aɝg1t8i>Kۗ`ӥw?D+}p-;87f4,~6x%,]HxPf0= Ąc5pjѿA5:0cg4Gt5*5s" o2/-u&!R;DNVpA̾tY|!/z^^B#y>ԪCGoB={o] V`=gdq`>ŭARe4®M$mIN#4J?%?cÒwwd,R~Pa1]5vHig['9J_\(uH o#b塩+ݿks?ډ૝,@/$t6بNւom)_i&#ܚS6x(.2;IV%sL ]tuCr8m\Z`Dޞ?|nle'yG@ dLYP FMᗹ/2ꢺ!%R"RU.KK%];;HLTOJc7R}X:Peq xl3 /HƲİ"*`6@^y<DzӼiN mxH8+E;Ên)0Z昞Ȝ*(AtV*O+bHABȡGŎ$~nJjhѭiV#Q}r$0漶K Hej? e\4u%Z?|zGYA_sr~㱻U(mN1}&7SmW]6 ڗL|#w1Iq_Hsdw9=s?;;v-w]ޫCRoVl@P,Ʋ%xBh3&:T/aPNB)y= e0+j}jZ|]O 8AqޙΰbĦÈ<9]CAn>.#u$i05_H6U u3װjL,[y2}T|qyѡtuA-QX9,%2]YGq%f9DUȊzexsɗGcA>%ɰ!/8Xpwīڰ>?ysCٱa4Y(Dq}n̑ިP rآAca5FBM_r!6"&'15wd  DQm5RbLc RN~K ^(΃u8H0o[Dޡ8g m)i6WKӰM um s[h rㆃn 6SjP)bGj;2? n9~,Sc&5uxNhiڀϑ6~!"+X^fe8g4"CrW偄s}}1@7|/d/PLM]၍4t;Gygo=*f!z(o/vr{gQt}{0׳$-B_MJnZϹzgΎF <#'o[R_ܤ1ϻD)(=jf>ҏip"S+L&_v ՏQ4he,>qțDԜ!S7uUT 1>ti0*^Nc2 M RnVYφriIO H](&k&)i@6 GÄ(jq[mW׈;hD"'4$|drҺ̺eGR_o΁ӯ2tpP# \:t<ɞi=J~]AOI~g+tz.QubhPD/u)==1 e )G3m@>@RɎI" ?WU`yDF{ P֪RO]@m_vh:蟼#PD{pS[SE/S',,:B`%XXIcq.Ε 㶡t9r\!bCwx&/k_ XirP?N7]+ĺ 0We.mR*ETV+o|p˽\ X`BU&7$Yڴ~ 4F{`hY[B;J$Ou~`y^BO)M8AbbL6 s,Ru*>z(ކҏG57 wkViˀYWgt `|wDԗZMnrh<4ϑҹأ` H]f2 W.ychwwW|HdgOo1@bƿ9|dXn{B_,i"{-ހU?xN( 4xk/t 6vy_1m思r1 BbeTy߁ 1^PG-:2sɊO=_0|_\_ >jP RƸ# >Ho8O}/Ŀ2ǯ ;JVWwZ0kɲc")yrB B|Uo`CqIn75 n@a܏NaL{x":b'*~ %y'voO:Y{wF||޺D']MDv髃LJO;/Q.=Z2?s<堸%C抲c1Tol\Eݭg2Ϗm:/^?mZޑnVO!nK6եzIailzm<(A7)lOc1Y@oBc޳y iln ƂNANzش J'Ymj̿퍖H8C0GHk{=$'Q#bJXEV+r=amc6(%eOc_g6'M`Øw KeWp}% ; U| jU ;0,g9GG!Xdtj=U f|} ӄc?"iw 뛿"PIJ?nʗhJA#vt0k\,)̡ʲ;m~ŃxWb2&xUbZyҨ\ua< ĄSVE)Q";YƄal}RA}7[DV@~nA@6#%?{ӺҿPD Zr[QPXu?E3tKS#1!p1%Êk2L'Xj1T[8NEn\bH:u0'jgL7([-7mTH#BO_\!R6xo>g@T66/80iYn - atk3zh$oBO0N%vMw΃u=lvlfULur9ev"k\tQf~h>h;!tcew`hPfɪJtuݏN !%W=qduP5HƁ4&d,Y)Ӛ#7V,R 6"@RcϼƯ QԊk w,=d3$0W^$O21j8np~zl?)9fע൭ID 4ni9TIvQz=eIꄀ<1 IFS# -ŤMtQ4TL,z13PNFH3h{FeR945ilO{%ρW՞ *)[\ pPF(:9zȊ{ޏZfG" ,qhƝBOKrK KvYCHEMX)Hp@Zy&FA: v{ɜMp& }fa8ߨ*J^2~Tmq_wlfip媹$&kC&]7}CB+R;(g\0Q q6wyq iUg+buvѨCSlkDcjEIgy5G G.O{rHk)v>o`@ÎBIX?;B;*d!# kG C\#=/Wz/M*Δ j-M f!'L4DPw:ͧ>"l}_WꡈuqVeR5d?ҵ. nuzdʀIh>sSTH"J> qHq%$#7ö*o8~$ؿ$Tm%}OǚŇK#ܠQN^4@+fYG7S ya_2wj^ -zqmأ Vu6ʾƹ&7^8BDL[jeuHy= %G> 7|na_r /k(E.cN J3ue ;=x be4HK4e6s<}"vXsV-FT(% E"_F1؀- |e3􏢀uu;1tj+K!;3- b`4s`K?Ӓ-3EPl#7Drޛq~!TUb r0(w gETRTl3P1k0a7}(Y%-ƭؑ0ӫ/^EmP14BPKk- _u*Xͫ@*v&j=K; Xu}|;(91XCE F Ie]A$MSzHaDkʹjUj F rlRY!g@ -h]PeƭBhA2OSt}sMt+F0yf!e%E:;FfHm@VTM-<+q V gy, y8T5eS0%NP B`Jno~;u8Dž "KsuJ-@zP\QgCe_"6J|zc d֜';-@ ϕT\Ŕ8uS>9v9و Ag1zdBZigahBdcnIHD4?[@.#|K= -oò9~򘳭WVYzQ ò?.3]@*ThezSML=?G!Dțw\  [@ׅd{d$Vz<ŶmX~XLk+h?fh9恾hceR[7kQimn3<'pIP!yLìtɣ\UZeqE Xug.o"d!Rhz/~A_a0'u03~ WדWMQɖVAHE!ҹVGHS^y`sӳV_bj ͇6ko8:kKY/TO3YJФ\RKtiB?F+Hv0EPO@0"Z^ e셦J8QUkP/,j}"H,"TKv.sP^Uªik8직p4qa8F%X[}`UY}:$rY )oC FRQtQjyO'gE; "xfW&:_ )2?ve;L.J[R/ շ C 9b.K mĴ=)V7[\k)C]!E{9W{cAoM{Y< @ l+5Ft f0B2 /)&,ʴO_Cճj$/Ed0" k]2),hCnEFаVQZ뷂 kdёjYlމ TZ>~a@bi~5dTq0j% Jm0 +QB%q7xx4I=&}z;%V8T/9k'6,Z{SwO#\&# MU#59Ӷ5I Jx]K/jX(_t<:Ké$py;MF091nxWC-#  mlP r%^V/A>cȽAcg9][{VCɶb >T nƜ)2?YyL&^"Il[gȇ"7U~lL-_|5xEpL7X. N֬ S)&k%EԌvNtm7!%c]>\zJX}}D`&_ZRJ-ȲPaDy5j^א»V?yeHN ݅t 'F£E pZ! :BD\Euf=R.%TI?ЇŊN\N[h&őjMI'DGGl647˻c~Xy(\( czB,Gd>h1 xs{f_'Sk#o]_$yn.OM ܬ^m&[y8>),ZG;}'+@Sn=u nDjO6|EgIJ#z (ҕp|c]7WbOǑqOZz* =1&=JgZJl@)^X)y}}88; >KŰzp` ʫPeGfo̤6@ܖqʙ"DQq= 5&3IE)Gx:6~s]a1)w5ΡC9/5qD5r*^!;!3)f{jN+nT \(t(,O:fcYm-PK .s1pf/g'0au@zg5Krbυ=]H?P/+rФEE1͵ ^ N2n #2oiyd$knlLƗЃ  XThv~ xsrocJGQ6lYwFdnlݬ^-wD +3tO1cE@raQMwا9ى!Blq 4:Ar'!#W"t egӲM˦UɤaGrrg- pOi}$=)+RɊݬBC!hN tK4/jN%=¤$icj>^-{JOi)zk=ETXV,29wD9x5CXSBƐ=?Йc:ZUidK&f\8g%;/w#^|PjBfV!_}:tMMHE 7kstN@?;Bu^ =di. G'r5vq1aLa&\dtt *o+Lux+&4aA(z!i8@KnH"@qѩv-9.]XQDH@)Yۓm+]M:3D9.1ȡ=-bsxH*>};O!$B'-KPqX"6uQU좖pDM.*iB2Κgįej,Db>& =Q0Bt>q*ǺXn2@; ςQ%q|8n̹Ţ?-Lh4սo d6oȒH};e ]u&5s3 !}we K퇕.j!_]';>X*d0adJ؄ ru/-qLDqx6ndChi7DLIVAWGw:wbM^k\]Ru;uNN ܦ>w9=[M6[v\ZG: 4~r`"S9*j  /ܶqηiqiOpapЊ h͐VmyRǹw_4o!mܕ% @E{k_АŜĩ̄ݙ~PWEguJ^潌?,bu~YR &g¨ I=rb]*w]|WBksJ50.qrS5EЍGaMk4 BnMԹ^Tѷy,Lګ5-r> 6@auJ3Y,je8;ξ4>_G-U5$?E-#-~;GsN8󢫓ECBeE@@ٱv +Iop4 7{4YxI<&~YsՅ@DS%? hC izpJ*Ԇf&W&WEnv SV2ѴE5USdX(S_An)8$.zE i%興 _6yd5S=2/>ұ񪛮I{xn]`Q مђÀԤzQJ}qJb{Vc.ཏ65EXBR ;@UqB zRVF sBٚh[Y2?J;`L$ϕۀ66ڿEwޱ-ZwEu`ПķGs?k禯|*b&hwΩ 3&8K^ Fc#.I cG>8׽7k[^(#dO'=EaղAfT۝ "w;. @`_= ^pJbw@T0ɺڥZRF'7MK xS&:(vոr%A"9Ce$DL8ѹd\wk(5YpleTTzdlրCnf]| : I=:G؎HЗ]K]$_ܓmE14& +؂Q<7Cz\Y(|B݋S:UBh:nvB+MA((B@*!hwKSyꆽ%,9 iSY kϰІYwwƧUy+@-{FÄN ![MϽ?D:&^BRW2V[UQU~+~) agr iӒrl7m:ؗj #`S.vCz3җl fWmg0KhXQa4m.ճ+v8"qPsB$>ל~GLZ0-;!}2ϘۍA@?U 3Mz11. n;n 0j4gȳo3SXzM`)Eu Y8‚[BLSȕ- ~O5; ^= 6K 1s =Eե[i2-7s` ;ș`զ[*R6Ǯ?z)MF6䀧"_KQIBA@.hPH8ⷾoC#L[Jm:`aW*% &ϔr ËN],2՜B`< X^jkrSp" 561E!}p+چ~("UԉSڵD]+:|>)aM J~RV3GbvHr1*GV%ĭ nS,ɇAAx{KPAۭnVvg4X~,:X5ч,,&;(;r'Et N.#AUe~C O* k MɹM0$t?xS%Gyg%9HRxM}_&"깏$dj`BٮDD!6di",{رS~LPMG"Y4hƏ?Ms ڲ sv`,EXŝuOP͗j;w/eY2.6bkMfI(s !kk 5a""Ha裒b1EB@t!+4Ռ EzHydyA|VzRlQ~a!EAV6܊GE fK (GLS!CErD\FH'Ow}@+4b&eP*I*KxAq3>`L2Yv:wIŎ܇1̕\=Xlu`n8KWp0L9JS=IØ6zm`6O? X<\OX\M;ltCm<ΩLJ54: -fN':GA]=(vGKuP'7n?}@58M*b]i~k$_~Mr&9k([dȋ\X%-1\1A ۢ]2\@^cȣH9pYcOVC5+\7`s W5g![CH>) -8c,TF |mzR55^g̊N!x%0d{{gt]z =g\|:M fY$|dYLo>4.4,AYλL8_3R  96KpCT{G/wAN1ߓ"\dnyAL4;d=k6ȧ%ᛣO!7.2u˕V=ѣ66ЏgYYynom)ZÂLԛYQ\U71#yL6?3, >XNÛԹ 2%uǃ+/L/(0`.2j#ɟ9}GY5]k-ۅ?й@@Z#9D#sj9rY}^yq`&d|4{`^\GЌ&rJ 39 6K r,^!B%;B覚ڶL/˺z᧦Ri3XB4b]3"Yk }209Ȩ@H2Pkv?jE jؾ 8Hv9QHyG:9GYu8U0d{VN{tDNR3~ӽkqM'vۉUGE]g/;*1GK[ *?!VR Ws>ׂ^ώLxB9~jz}(m^mV)7!Pׁƣ+m2^~fc%?:Ai:|W(SgIx,j9}*!^#S !|O/q ѷYB/g kW6;>ÒNXsOm)p4XٖJs#bR`bq4Ճ7PSF}) @LQ͕Oz(D}NLH@!+ ֝9kaOAJK Mt`Z";Wm87_KO[#  ՝y,t˔,8|J; C]5cq:n/gp"癿5}Zyqߧy՝yd(Q195'tsq^_zk3Nvi)hԻJv1Ss \S-kOoh.4yWIlg,^ 5?b~eСuIiB@`#lkIͨc|B.,`c`PJ9]*YGy qͫx3b=2Fk+Bw >I[\X%L$PNHcW;t.;zpK#JV)O +ߍ=RꬾɩڑWwyS1FcF!F+{`/yIfd,!|G߷znHf`dţSR FQv\8Pϱ"#1FI'FtEAyu^s.[XG%s(-|"m@ci73;!!u- NM> PC@Db:Koj;f?tuJ;:^w+>?ɷAh YrYQy'iduB8S^U^RBZZhں n_ iAc\R@#R[+̇ BWK6rzt5,c P2}Ck*)pL#BVA$NڟLnYV|Xw^72Vp>fD/̕ъ6-Ryn u,J`:Usy\KGBRtf Z; L 3uHX2Rs"wǰ^C͸pױI;XsyVw9ߚAd"qB8KRjN.i`@/KQ`) `ZϮ*-_:yI Q6R3ӈ)];54%ZdzQϱPFZ >ʯRC7']2 QTP˕"[;|8c-btB{w EV# y\xF.zSnwQ9.ХN`K~lb.p qQПHsIrTI׳EOzCm8ĮW=IFlBYξk$»'fO dI%({}'{Ԁm>A< QH!|Jbߴ5эlC?Tpϊ{Dۀot] D櫢 xxo kNܿeo&Up[< i_K$- +  *k=`(=b5EпJio腲' 2{iI;E[#+>[h^1p$)z0 )+hN?BU,jܗۄqIPj i֝"k5=!<-} hp=ZGPPTn W+ ӝlvXjLMNl9]/6 "<ߥa@DQU>u52\&X˻ѷ;hx3ޏXY<4Wp<;OBfGEH2[C"YĎXwPc/ mbo9WE@) O2X*,\֏?%xt#$0ݷJ3gKS7_*\?59x?Zr 3z4-\Y:Auex16ɚsT-2 -*xA`,X O4V++idv6#Fɛ{c6 =,[ [wcGs3L+<&y"{}j@] YϷ[I Бv]D+쫳—"y)Q$w<(F`T)yOWJ-QؗY&>7KlJJJ{.Y!S"?4V 8P1zӟ.tV NS6o {9q@eXK$KD&i:k扁3I8H8Oh8q[ o3B.?/M=įkPO+N*!@ZS⧍K^~YގDU'( CFo;{wV{n E S97&e:%Du}c WZ3hC,kA*G]F{E_%>v#(XpyWQek:sq^*(ex"rӋJcmzLt&T*=Ycdfy)[NFN!R# ~r;iSJ'eAAK] kC^!E&jZ|`]qR ϋ\^\/VF2;.IЯbnլq\;ώB)*n腷`{oלI:ՠejy ~iI>hܽ)3/&mR`|l'*Q02Hw*6~Χ{lD*ApWd`!{6>2YhkOR;J9(W1BlVΙ9ī:4˝vR_?Da`TRycn 0zaG4ӮTYK0٭|aػΊv>XC*̬V2PRa"+4Yqgb-wW@Ys{r*/%$v0&-^_zN=ÉQQϧЎ#¬KL"2 dtsnz51ig/-1 u7pheQ+V7H{2ܗur^H+I]RڿO\2-OP%K }{YyQ&Os^K*ֹ~H&٬bdP$u6#r4΂g03pCdу0(K:dU@?ؽ𚩟ΡE+wJǪ <6G˵-Lj)%5g ])#X<3En=h~H`k"HgFd;~u#}U?A7l 2.ȡ_x#@Ɵh-v0u͐C'~1 }˼/y,χl[5Uk->L("9|}_G^v <څ5+]KjLt-x7_3bh 2Yw?,ބ%d̒ema!I Ǎar#z0xz Ll=}@Sܡ7'&Q{`k .8cuT]:֔`1Ikao},'Nw2ڇZ36a7N}_ ܁\"I"<[+(6I8{kZ(p>-$ up Dku.Ǭw NF/i`8c]TV)VxvTWb}`:. /nJN,̊]r?ݍwOd]WTVyʲ#riLcYVw4|fDU5m^h<l@g\Sx#:C^$)T$Q,[wKnb_ ]7Ӊs2?mG0e: -J9&A%I豨m)WuOUT4ēZ%fBs$c^Dœgh"b1&b] MG11F-֬sjm@'aZ#B}f:u`߫|"tCd][HkT{`|l"i* o LS SL37ێ~cUvMki®>gv<ȳu>SjItH 5Y!kgw= |Bsj zۭZ( @*#踫~7< F7*Ί \q@:K>X/?eS]+qA1p)E,ݑuZ9aPЛs`gP>u9s۶Ъ֖Dz!h 4!3€'SdAC62ȑIػu ?ߓVNITTY*'_]h2QiTU]NB1e ZvߥAXm͙C'5=['HKNbf8%%ҝ"K|L.×[?g{'DUW'tX]0x+x}5Tik1e[tHu.OAIJ~Цh$eI[z"30m,D)xʏ Uǰ-(5ysJ5:pfYаBϻ&kï!_O~tPj..E<}c2 Yh/IGc(T/?6)~x?+EĿ2Y%OfQj]c8#=Xn3b9jIńc6=x)^o-X,=h]|ܤ>SN%%qA]%›gD/!<ƴ_jNSa9Յ1d%Sc9nZjЎ0]Vye@*AbmoOHh73K &:sXQ^ooͧMy87UK&J{͈KAb3OSn^r38 ig1j,IOJE>P,UQ\vWo6ur*Yr+=%ԇf$M}4ѢhO[=Xd8a&&aPjE3G km>ɬ){[e"!xVMz~,klQ A=$6X,VT^Uf;h/#cYOԍE \W0`bɍePyhksvNܛ[o ?vPM@Ôbx3p9(4($0KcLOOBփ9:zC$"iýf, \ґI\\K*bѷ:SmCR1hDy3:Mfq mJaGA&"L ǎҥXT{KwbV UlQL¬nCbIN!IO&ȵ^ze@ybIRfk9\uk F(.rqb!yx.q07rBwid 7ȴaƬ%Y# i1wu9=gI5 uNzp**2aO+Ow.I?m^.dwV<hZDj.̶;.nW)GQ (=,8d8BEJ\oOΚ}4QpO(xIv5\{6 5`zm0\BqL@|vG^ČLi!2T~X v2ת~1'kCrsaR8d ,^ṗ6%V'%?k+(g{f8a54'͕uEuToC"ST G8(eNp7{rC̥Z&oÛxm?DRq˩ 7bI@I|]2eFN>F,w!Rut܇1G|+)0xhH3;+=91Ik cq NfsS98r~}#iPաJR ZXfbv=BYPSփrNjjWM7L̙B'PǮ u{t1uݓzGy?MQMNkGzTshޅ|#n;sO׹D.w9=B⦢(\9^O_w{_Ŵ\?Vӈ/+0e_Hi#m1hNhM+bM ?%XG%@A2;8~usV%Sh+X]ꥷW)<'K͋X,%bpz-W2Tqs}yۭ;K X`rb5b j4n4;KqHjl3,G[]&O@m|MlSUcHװJzDrvQ[Fvull{2暠[̪:T+r?p5#nŅ`[5x<=De-dt̠%f8R1~^O%!|jp>Y`hܦZR&׌#gԽVw*,-2ua)29sW!=?#y-XK?׋v]= w H78,:\Kgq1hE#=LFjb'7uwewZF\ RC">㒹/|oeżz6g*(q.{` Ͱ#b3H[\)bҀ1;[m[k".z`cZkE|]\tkS~q+T" ˞5^KpˇD*VZ#Jp1ݑ&v{YSՒ+!Bz|9w%Z񃿖ك/VpcF ~8"-_&ړ[R}?s0=iH Sh-E,uwt5qJ!ēU3n NԶ\26< o'ͮ\AEc {Qb?*Β=&Z回3^j9AJ:ȼpj`UY{Mx+VFk/:d"Ymterm6T0Einoegʍh u&<-\!bh7J-ߴsײjSs :7 n"-X)N1L>c0bpHtvvw~\QG1"6&B"++8S65~ 4/ZhR( ˶NtS-k|IJ[J_fj(FUܐ41! g"?/TM} "hB-¼i0t 4.V1z Pq_B e2EB;$R~- *%Y8D@C `&%дto]QڿؒpP#u2"95''/$.T &&1,(M N0[3V 틿4^bMe( "TiQ+Ոmbdy uƼ0f$reٝ?h㤨e=l\?2|O;l/:H#aVid}oB26G@9i*QXap[#HC~uib{}1˸Ie2 ͵h{7ޢ7eko ,Ï?zn^l"~3h|U8z{j)l_5C-r* E>}5 3aWiz4OXԸ>+y-o鐬v҂+|z5sm ܟ o`%JpJ.۠3ゐ_ Zl#r推AIIJY : uxll\'6 ''sҡd pu¶]>?3vfy;Nߤ;4zql>NN%nGEo:q]UOzai_a|l/kf BzMNes!0L!3b.m^;쌖mxxrTy2.ңPwHq~ RjYYwY*Ua6xygI] &_ߨ%*+0j@J!U]F]sƌݸ\=4wtyGڤm?mw AЎ){`ʈN4b+U)ʅ7M9OicB]޸m~ 庯!h|yLM-%j mDި%Fq$[[_X^_ZUؿءS@2y]Ns7-1{3UR'&-03Fs$gG%$:c1ndVg،uܒ gD??ʰxF.Uu2+öUi u-.MnWk~!'C%S0|?4) |Cr we9Y=\M.7^Fr`*m pTX0"OƲ[Y&[WcdG/'1n̨LfI3;I.!.+ fDiCn*ɮ< a@mϗe =a 2i/KqMm+5j8m33S|LN=MxН'C4fgf0VF_̧VQA4@*Bh-m-|U54|ކ>7p,hYcWBLqZ7<ތZsDÔ^$&j#eM%ؤڄ%xp#^%cM7-7Wn4hԅ-m@*q6#>$Y&?kًd]xc]բSM~rI~_wp̡}`m:lGO]#nQx<:$X:>)laWEŠYҤ=*N–1ܱ\Xm>ηI_y,g\*dfR,tJ;葍&9 UjtϬ}g[O]QJ;Mq-ځ  N`j40P-mXt|ؼA q*YC#0z}C獛j1fX58E ([_ȄΧ2qcp]R"pI:#^H[qpqYoC-dhXWƨ;Zm 42W7q8&=6<0A2\w*7ª{aԎV zF6jŞ]kTs}BBuBI5iV<]B7o%1P7+I l^vح%}^4A:i5vCwW' q@)>lņVYF=ԟNGKjdY1!Ѻ/=fI+mm#~kPRpMNLs_4ә̍d^=[%C=}9V0ؠH:(BRat 0菉snZ<|7Bw$B4yܛJ ;>'^ A1zR0f܏ja7ծvd/&4(((i.b*$3 ݉K?Kܫ¹ aQzrx&ַ~$JIoP݂I*_ +V:ea\ ,DVl;FĻSZc̻4EVGEiVa.Et2~4͍ iы{H8Q'V73܅3ކ] d'T B{1A26m ۭAArW7g{i& MBVG0r,8Go.ZL,(A} M=]YN|q̺XE;ܝ3CI 3Ŵ |$eT=Jd99ā.HW/L! M>o<'%.oNEj =40xk& ~ټU>;vvx%2c!]rjuGeV6^Jߌ+N50MDSrtf t+NbP&ZgTڞlٙ+T4ΌmH+\6?ttovHbq~`jA7ܼSrIC4u~#&GhTB\Г%`ymD>k ;cftbe~ 2,e-6\cK1Nީ:Lѭr4)0K՛^n( U Rm nҽY ML^%;2K; eV"I\C(3qƞLQ?>xu:8In4ēq}Q6321cC/sg36RBJCYK'zO=\]3 *GVHZ|-#dd匨=m%w|EZ|/mm// O9&_d'0S?pVnM]#%=Z2a+zC?*x!TBjPQ n̞QiEt:\IMvHzQ) .&?E4a&X%Y +pgQk%#52Y[C|ֱC#A4ELG,htO% *3QҰaɷKs,zu.= [*_.\F*h)|v p›_\ ab/f'-?gv׺fܞd|hP?}Y(kI8NzI}o}X, ܯ|6^;oL="jğMa³ofs*WtRL=aKY~RnJm#1|`O$j֧^`'{<ͅ\y;2{سDȤ18gRb*-| ) qCLDdьgl0-5ǭL=p>`r)A'?4iMRA&<I̒~`w_O4tt$UGQX5Էr؍68얏_Z` 7Kas %t"V y'YոONs9`"!IfQ>]1ʞbny{YQ=M~S]T%ͮAg 8m S {Pe=&SM* Y2n7wXS*ơV#nU2MMy{H0 ̓KɃ#y6 p>=0bh'zsL9 8%t(a)OG§|i%؂b! eE}w]+Qg^), il6dvc_q؀/H仦^z<Fky=v@+)yqt?wWczLC^RxٻIy͍Rm08 q)F~ ,Vi}:\sa\J7 (Bem*KdoI ]D᱃"eV |,#=ֽFIξQ8 ZsR.;$۔ MzбNbb>E.KC ,IhycMkKك.ɀ[(Pm 4UmWeti@5E*;l@ q6T^L(+Ic᜴cb$b5zFCH?w_& ,VЎqokKE_5W ͭ CV]? ZQ|-jW#)o~?"#ڗۦ}ۈ1OI,@mı?x%U>p V)J_RSm}ު t$8--x? |u9)ӝZ&VsXP+PQw6Z$>@qd% B盨gn6I `Ɵ}Ix01~n$dH\㨠iF+MCxĴ*lm5P9SzCBBǵ|I߶hq}Rs={|&,7u> 1[:Mf'RY H=Qx.0@}A,cpBPVyE"ٷ,kLAZpX>ׂE5?x#1X8E)[zWE 6p5% l]\N]L7LAz+ _b-ۭXN"!;hAO?ѫ< Q+Ex](Jӹ eF a#9JYe_R;);3o~d܋|@_ü>參{Tłl# Q[e7:. IZUcol><4xs [7Z|L!<; թxf2k aQ>gផ;b0sz\|ܫ֐!.#K}P; "Fc pIEnePE1!6ԼBz,ֽFn4Vs[8:!Vm@U C&/w h>0&ˬ/x F͙,KZRCwQ΄AUUvDn8օ&TɌSuk%tɱ;|a#&hL_3F5n2\7ǧxe*1oi2?uh*qo/ Av,Q&tV1I d|v$l#L&>tZsM]^LlF 5sI0qޓ'Sg%c (9 d6uIK!]"aVЂsUruZoVJ )w\u![ ZloP+w/,󭦵#bM5<[E=dNA/GՀJ\3oi[b#~cOGT xXVixbI"_R%1A~\7qU:j>χ'勑-k$y~ḧ}%ff|^X 6nm]QluDu>Hqn&KUö0$E_8]%ƧO^M^L^[ذgp)s6Sc9V28E[bqZiEs6"YƙJ" ]{-sfx~r"DbZ( Rhy?jsu7,&9;.la3?;$4o`X\嬜_4>f+D#'g^ a1Mt F%hs"|Ybkɣ锗h W-}M9] .NedfMfp<_t⧼.zgWaOl C^xq knnη3H0y֧|ުRK`NT"ЋU{c*օ2}LSxlzp"K;(ІMgcc$ʑכȂqp1ȥ.^!( y ?J*%'*-KvCsv{oD U џLIt*0?RG(^^`ˣhc~_k#|?%\P-7= >13J{u,`a3mbr4\ H\? {V)' UDse?00K.3dw1f݄}mE$=`.$csߗEj:@Re!.o&f_郔Pq`O!™e[*KU}ʯd'!T{0lW*ɧy ݄ ^]|d}CQ[g!a cZ ľpù%/cMk(\ǒ<6uO>i[6L?]k뱸v&u#AKc{.uO%hG<EzuˡA~_#3'f{ S^k<^FG2=:]Jr߅6VP( y[N̰(sI(<&OBwX0wRSޕ?/NAyӴ?jv%aQ d]/-Uş{>>]ޕ'J|)()r\flqr9k 6Z>[G*]L87W>(vU v_82~*DyIs_ޅV _W. ?z1 Km?pҳc>(`@ bzZɡ z̧g@+HJ7wCZ+,<(\)fE\2ޒkFeAxNw]zg]ΎP"pXPkIdnQ/ @G+ሶ+<{K96 sf74]_S&B* @[@}4u*zV2V܅p!` a_ ~ :-Leze@X3!4vzhĶlc ٗ]c@6 ͛[-+ǂp?10~CP(TQ]\(a42QBwPJUI=:2-=r܎S=O̦tӞ_h^f>})wOlHA[n[#1ܧ<~#^<{;[yڱ@윈ln&S~.n = ,57osDG:o vhe`qK~K*u!496KL+ 5/bS*Hf|~ ws.Qlkjq_MkivE Z]UC )C璇U'D}y_cGgYX)RhLѓms/{i.אFP&i/;h-K B!¦^ǣ8 #+<̘~1&jjhҔ)Uw՜RY^kT`|+!9ةH ^bѻ/Rlz(r jD:N0E9Bu3>^ͪkB ՁbAC}k~ /W\%G 8uB +y sa \l>5 5QrZ4pZu; tTpiȘI:8e6IAD ҷJGWˤx QV޿r nbpTYJOpL8\hp;}qp8fRlO\YHN5Ժ!fɋB? +1S$-UlzTbR5': rBngvzĝϫΡ-Ula1`:ș13rĥ6$v@sD8E#!_qAFJ1HcN1 qlA'ϴ IAZriZ3dX02mkowE [7tE`2SuL s{ڢ48m>V #9qGRH.Շc8q]>P_z)9iO]g.~<)aa\v1[5@;{3tM5 %L]}Y5FM_=[ڦi.'ZM=^3kvD<~sajRj=~b6pd83/B=,hC<\T\{G{I!?4?T0U ck8脟Lbj Z^[=șK@)̧ E`$.+yDa jO;T*HQRyPYW| +4o4E ^ EHC/=IZ -hFϬS [Oy=^E;Ds,(Jg![l62av8)/U*HʾQ'f{NN-]_*|6 ~̷29JӕvG7*Mj._fڜ!@eqˎ_ ^E!bL縹9IG,CڣTKy0="KJV|W |c#O47ˮdĖO "E VF@; SgK$@kf# 3!A;W ].M cG$2Lm9 iIsZsa3RD$1kzmV$ܖ@W xu ,ӄe|i$ul+gtfS ilD8d?wc8y 6D0I":-IF^e0L'޲| kyGkP 8 UG[P8z̀`0^x2TѩlAmCU̬8sگhp42%ReJ@{!@~~f6ǡ$ců Ք,rH[XgӸΏה[ Iᶂ.qf^ O(%ӊq[HSxYo`m52K}`݇|-=mĨ[J=u_.ւ-&K1 sFI$c|I9nAqUJ}`T@BE .\eaLnL6%nGuw&k ,hRp2bL- wB#ʅ!kqv{Z.e_i#7`OC lV?Zi Q)fҗC&5n6>_qoV74U3w"ŰȒ/\W"ḫ]:R`B ͟ Y/lx.mO|2}HE/ń$qDVo]2N>#[| 'J?I/!91 FׇKrK.)I-\n!(",= :OP-oweo8⬔'./c[ZccRr*pcYst ,e/w6w~TksY.wzdҏ\j/8&۵cv)v-}RBȠ.'S`ƱbVo1Ԕ&Yxt#LL#Ae~\~K؁ W:DJ%pp Ϙ9B^;FE_nB<Ȟ}?k]qU!᝴Sx~kI .SԆ:Z5:$׼y(+/\C7H2it#π&[tC4yǼObYԼJ:HG#Lvصzsdax&k@N]ڤ}w!m{bV}b:0sY&њY{nZj 7f/r[á dʓ7lnܶ M}?HTaC<I9dh jhm ;˵]Pd4!ND@B&OAxP֝ w}3MvfO#v#Uo{HO[d3&C6|ye䫰fDLr(U![zC{_ϣ &@)5Q*UeQ['iA(^96tpmٚ'Niv0dL!^un_5pEvcU 'H-7;gQL_&NNYxPIûx(ݙ#lۻNm}-.>I85S0ܻv徐ήszzېz +UW@?Y.vz)m"DpXn~~x>;fcˆ l.:)b%E{lʶ~,P@ XoU'[:I|(#2kVH.&s R ޭdSV.|/ڪrIrhPÿ]rNA?gxF P]`;?m3v7PZ(Jl Z#F' %f#ZqcL)zoGFW*/ G1863bdaU'& kq1zqL(ky"?. pFN?$l'SBC(-oAO|!E |nƕRI4 x;5lXhX`"!=̜!ñ~s!L /lk COynv}93{jΌd FLɅ o{zt1̕JU> gI) qUHݢ.BH_V!A IƠc.yF-M:5B$6z4cJ  i֩5'?ɛgP.LAqF~D-Jc[ev(\ϼecKZp)"*b p]A!H5Gl'v-$-=Z!&SvkE*u"?8橂wW{6¨wgud[7}[kJa,_/)dx(p [3^VNANO6#qߣ YY?Fu@wYv9]h~K#-ˇi跜ֆ^ ]TrUZSj}q>>p3FTNZVt˛I ;@܄\XT-g#; n%5 1Iv]evO>c2$s VU’ CtuPk3qxw˜x-2*30 偒j'fjpJA$2cp0Z?7eIwrGtǯ n6ZLv\݁Tf`oy^=!~/Ϋڪjh/^"`4T)Z#mGJ]'0s['- _Rl?q5`GǐzTUZE}U y'ȃuR.MROh} ?hޙB2 }t&Uĝuê,Px Gǽa_ss-hx-˦pff,Ȇп^t~JZ ¢N Kb:ںbU?R}_ĂS#&}[ٚd݊,tn݀]ݒ%P[c"ȱsx' l-V)̽r !r[~j^pgVa 2pi}BՀ_}9;o% ؑn%>{:%|+rə>M҆jיTJ6wR6T Θ /K o*8].iXEz,y'|Zrusn₡]d$3HO(ŽfHXSz9q~6͌u--*s)I[}zUtM[i֏^TNR0jPAe+(d}n*b=m1\8Lu\Oz@!V7(|k3!ڡ?jO=@ Ѣ"1x 'H P/yУag}?|F榡_5|lAճ~출J7bxY@a%4cn^|GLM"ff 7gXWV]$A(0蔖DثN?Sl~yͧ.T~_v+ m%cd@XTf=AG>(l~]80btJV$)ПDJ.׍%TT:?X='U!NzC p޷ON@+Q$-30* }s S% yc¾VQE1}CG#HE2NVs85}:D|BU\Q-fU%P=ܒ@ZƸS*NV9)`u&*{8k vW FSW r({7h28:ucx"bc s!w;/۟SiT#ъ[ q*%f&?Gr_={ |Qy8 :Wz֚3Qgur}Z AuNSΧMuP]#wS"ָmqj[{nl5ؒ%!B޴W[Wcigka:8 .鮊G֝Dq0 -,2'F3%-̫n楪~+K7[V VLd7 Mư$FU3Kː9t40TQ2`i"(_j+oM~a[EN^E! 60 k! XTzʴK.Ҭ}&;Rhʚ+Q{]lwӫJ"7uQFB,U p]-fzpP;l=t>s;#EX#0~iCҹOAD"sh~#P"M8&q4љfK+~jM $ze x bhif,Q*[yۼD%±Vۦ!ٰZB^c;>C"U_>Ɛndi)n^mrJ\7uql禗"\>ɱjDm>bΙ+Bq,/AiCX3HžRtڌ䇧M<ہࣁ:HUK1RUJ'7N6yPٞ޳#`R,e '+e 瘞I*)`$ F rhDnH8x@Ʋ.d7e/{dc4nvij.YBuF{9JǍslW %V4 vj- t.Xc)PvP؞o*ޜC`cB_GPșxV+RLqF>kf4σ'ET3 3-ȵ.83B* ,߈AGa(49k|z6ey~.joQUsEwr7Y}xHux9jrwtBi]o%;&GC:F`/,܇tNeZU26G9ln_X*@ɨn; 863H1ǓYTWV+-td RVARĮd G&K`rYm>*`[y7h5U Ʈ_31jB)W HNӉ5z?ciڅ-`q<*FrA864q3#l Ջl+d+mvC2G!n`< B0ӡ&iؼBO52a&+̌@.l !9,32 e!;OP__Cjw&u*P+Y-8 ? bxqÂ""k d̡YFd~YhBz< Z[Pm rD'\:#PئU {m]=c,LIӮ~v܃<+wQĄ'\wm} ., n7{96L"*^rP[0 P-eV̲g  h)s뀄L7U;hI8>kUKQ$'Ze+ _CMcr' 2MƟ:m .DXՙV'{3v=DEtlv[8C:ci 0'ᙰ1 4+i2c Exq7F3 4OI}.# cvk N T<95&M1"!_@A~:Qtl(o(gYݮW gA-+EԆ_0@pq3u2D=>jSg_޼Uj>cq7 ő,K1 T:Yjh)).ocR=M&Ԙ[:%~y{WW==S&Od,K&TU7V/%onujد@@FyÞ*.Ayxw9F>IzP3N"yOfa0NAkPxk>bܻлsH\-r}*T2cޭ) mHM6UWvQ b0aI:PL{_#[bK:A]~"ɮ3Q,+]ń71X1PaPŋрjO9Ll &zkwȎKKo!$%$9(&fS.k^ ŧ;eHE_3$@)?ihM]-[/&=g:}|m#/U ],RE(ekxGeh*;"1k #ը鰆Vʱ>dW7K[*t4SbW[ݒ}_zIx0Z~}/WfnV];EkĩCEݔRfnWnKȝf_Rl+7f8íx쫒8x+[dMfk6( 4IWWϚ](*N*'#P-0.cPq?ELH>qڗHpG+nZ,Ruۦ]y<5[H|a30ܟ-4q8R^L3Nt'oƊU(%-Z,uz W1rF Y5i uVR(01D#2NZ8 wޤo'aǷKH8A;uj>Z`VbvWyOՖblaձ<&W ]_b ]0ԯcv[Jd}w6h(Xb}~(^wZf ȓNcžA.KACxILpTJGrBWwcvdAa@yCE[QdXTO ]( ?EFˎ/X{X!TdPŨӦ50UDT֋,HS.J@I& f 0ϐ.q~~p;eQ5:ciEZ3QG :V: M-~c{ h4D+T^8FZ_4yªCjʶҹi[rP^{bh_ 0}ME*vc`97t~5LTƐMRA;;QCTe 73T֨B!nD߆Cu82]/piͺCVOե(peD- _9F,f+oĵPT.ُ6p}yȈGRAk Zևo{ 1L"@3={ (T?rT)+r>萱2KFW_uEDyˀҋsK%.w{70,_fIku5([~=/pNY(Ռ}O{8~bu! 2/k#ޚltʜ&aXL mdy訰Q&n3C֋`^+V ,*!}T||+}@|q%2ୋED7ݙlM-$&g]Y5ѣ3@L?y{eO(D=Qڧ@G :2ģ1R\w1Ö!؇<55׉G+}h 䣀u4li^t Y 7$JvGUc%]5lL0ZCZHP&`>?ڻ1߁PTo~ø FpyH݅m2i%zFHfBU&hѦnU!`YHbIh`m"}Ƶ~!7 wD rmw9ˬM+rbf$R1UHtFv -`6DF{POfEhÞᣥc+7^r Jנq _@'>_rmh2BmߔFh-s8eG½ARrn_ ?b=Vަ!MTL^=x#Ldr p{YO0H//Kx wo1YZvN~ULA::v?q@YX!x#qkעXô_0Lׂ I[eS84fں..`4j}퍼Xf]&9Y@0";Uhr sC S^7P2Løʤ\y5Aى Բ *LcfdKW6.c].$ ze9G:v'U9b}V*x[`S1@WLLݏ:0" 1- epW,c̐]@ʄ=*}"n2=xcʢc&0~(q¼crHXc2@2*)/?S}/]CsGqvseLC&(MYsxufpFDₙ>+m6 i)t{p*mCêVbWJĬ&NA-iNvgm hH]0OK8ZƇ188-;BkHȃl\eX"{6豈Nns+J^RoL^ y{9w.fyVކbh'VJT [3|ZruH\v:52M"VUfg\@VXӣX+*PեT "<VJ0q;⧇ @&!P# S}^"0k lM t{+iԍI¯oU_vޯs|竅zrt{dmƺoZЄY[`YFFb*(a˟B\$c"qZ7M )f)_;ʨl(;swT9x<DҝZ<5,םE+Fz]7qUt*@9WEong-FSI8o[u[y܉'Nc ?Bt;n={X-p|/~GLs7׽\u2!k2 H%}I5A*гfY_"[S]Yƹ~r.`Y-0e͝' ;)k(UPFSnt ׏B)su-/_D`򂎈Wlb'9` ]E)h)&37g%`BqX᷄TrPU=\?kթkn3h8V,OIаaF Ӄ%- Hh V3M6=!MoBED-Fbf)hleS1bʔ( $w.; t,v`siO;f&G$'XP7ٿrd-Ǯ_>kF.$O9h`4mOi@lChGv/A35={ltpD@?v5qk0+}PSyXnn*j&dʉغsG8RG`j jC0h/עd0~ykaA>*zVFB~yXAXX $3{ ~Cж`ߓv;j q 6+LKoc(BOA2aӚEԻ$i8%%[Dd*kMk-Ʌ>6ssaMP67˄MU{@R"ߑZTդd%ΊgeDѠvW>Q xh #j*_=|Q?͕r' 'uYQ ;W@]cd8L*XOl 攢]/;)‡6]üY`xdJFt/mIz*Q4ψtdr {rN i$ I_a  (VU?[F/`Z(YI61זCAoϱ^ zq=nfip(8l\}FZw,xfN>S4^aMuIw1kܬr"70[347@?fS?IMU6:6C"_w\7vU"k6 [fɼXtɱ"$X[09.;EO3zsckNpfV,Xi݉. |dq[٤+)QwFl䍁5{b?eZA62 Zs?[Wt 讪z }AhgҼy;4`G5EդssE4vu1gWN*.E%_[ s3Nݼ0xq n2AL5 b *W"~$yB8 tA@dvíR/L@^m4NS. FL\dAI7bVdS6Sol^w@D,~>f7ZnY( UTpk<赧J; . Yc%>L8\w #=ʹҮyN6P-6O1CKkW}Vy݅Bu|J *4\1=5ݵCوI/NZ<87fM+IӯƔ׉u`l 98(;"ꑠ9̜}5,)sTFn}lG[+GEf<{u%\,`akpӬ OU/vMU{=XNTm i1gwA[M MQ˕ز}t?U8i͠(6b5* _&z){͹@t`k *67M2O[ۜ#lp7=ҕ~ks;6"RӖYEk,h"+-8zW64Ă#сĻKHL NZ0㡾 uYL>§@>gXlob#;@%f-5&)͗yl;[.Bwf|-. dF3!`+>96qHJ 멞 1u =PP^İ= ]2DĬ`LmW_^MV)xݎPXݠ`Ү9l : '~VLҤVȜ+b7PZx3XɯJ䱥?t>c,I(VIYogdf22h@fr nngZ!衵O[{i-i`X"•.o{}vK_#<$&Mz*V:9iԋwhi rS zI/ti4Qi3aڐ0(*XHKL!٤Jy:9ϲLH^X7g _æP>(lx.r{Y޷zGemKbx Gmet$^f.^n(0EkU8:cӨQ)=6F: lmx5'qٟwdҹs< etL+[iI}Ϝͩ_7rd 4qBji QG˧)#A V@슮QWњe9=eΊ!?Kc ՌKUU"ɕr&XFJN3`KuJn䄹(D _+$ɒzPzeMmMoG܏!kJܲ:'g熨΄t!ȢqTv,`[ TeQuKFN“Hb[g8 c/|U=%YP ~n3NYOg΂ŇVgh3ƙ?Rգ-&͠-xqhmV&˙& v79Jn/d6R`-{x%S:m]Y?m˪(%We4rD$`U_v<#o]-&>>)eccQ;m(ZZ*}LECuZsc xt@75nߡ= ѿO-o4h,(k '1s5쫾q2yx18upV"`n'bD=4~yZ[(=ն?NN h2_یM# 4I/璠go-Ay!*O), FmZ{$ Ե8h'Ǟ~CbȘ_3Iox-(ko[/ռA)mfV`x_t?S6C%=9EA,8iUWB u\ R 0]Cm1'K9@G#󲵽$BEe.L?aep7첗Ѯ(;cm2Z] '1`${mKNsOzX6 ݾ2ξ܃1 P /^`Wo|1yOf1Nr|2g3aБz_> %$_*n2F 1RH#Yӛ(dGX]L}زh@^v<KS逴z*%lcמt˰'VWm3ƙRu/Yh.V'JI@wNs?˒ΕO]u+[`eЁ3¨asVԂw z '/Φ43MDXCF %H 6sfRQ,Y8F] /Ai$֋? ?oQ9Y!+Bp6Y #S4P|ypI{6Z;jq*I\ c$q!@ +}2}5GtG# n 2s}γ%x&DWGu; U" aFl3e}U͍xgBQGR/)}cegrqGu)H?{1o~LhWS}.6n"yP8H~BVя^stso*z _߸Q 'R#fZN vw'8!HZbȾ;xHԯ-;0Nn<j %Pۛ`9%tfMI:Êg6YNM*c-i}tB)X#x@R2Qlŝ=P4횭iA<9QAb7t>i5XAoȒ VG0@k o06nMMBT =j-L5VNczh2l~g3ܦ P 1"Ȋ8R !0^ĭy/8op zrrohf>jABs|)#I-o-9`BWZ!Wݍh0-,tlʅ`^@51) A&gy<)1$n1f;U)Uxz hz2)͒"LҰB?o.eS\k<92R=J #ӡCz@Jp !*ιtka/uR/4#2@ȨCr%~t*Ɵ l$L7#Z9CIE}=3j$%)Wj+QiMU r;3z-Kw8$.i-%J`O N\H23naJ(tNb.+19 {gi#\ Ts,Ý۟P}Sa1SlpMnBǹLµzySr:MvPwLс~e9#D C,)r忬@d>x2fJ͌$l S&+AT­PFPrEtsHq72:k#>nv{PDyieW1iSo\*8^˓ Suf9d[A݆J-Ifٱ ΄xQ[2B79b෋ְRpFGT@);+=(~ˡs^R,ZifjM%9_[& ͷ=)}!g: W A,"_;IC0)qFN^ޛXՔ΀M>&hDJ xOXҶY C &VA'ћP]v1RY*\̰%ymR(:xBҍ&ʰ|B5S@I7k䔵L$hF-@V PK@] L.r9rk$(e9T[$30q&Iq(qDž^7gؘT5_EY[uެur^6>#nપ2v"Ꭽ!5H<}j2o۔DGk?]#jC7 }{ ;Z!! ZhS ]Y~A.O%=JSʯ6"h E#LE  Aⷓ.X/fx;bQ>|GBr|pe&уrhOYUW`Ԝ8,BCT2RI\2 `&|ӟku4:~RT}4xRכqG WFILH9:CF$T | `=doW~㌡ߦԵ$wd۴(y- ^:(c%w-xI˰]#V$*BFs4CGh8yhgVm ij>Ԓ̲}q6P60%w\䭆B2m=Wa9Eb2|F`n`FaEU)ΐo\mڗtvDw |g+I!E[ʬx~ak%9jmU]F^GͩdbШd-\)K&J)n,1:Z$8](tv}#D:ɔ@ٚX>}[cjcփk" `ndcwi0iAp9zx-)wŋAʪ%ͅgANgP骄VhgƧA*b'Yr4PMEqc)5~)EWZ]f;ٗxlk}{8tUu3F*%m3(֊XqjXPq몒unI:҇,Б¬MN_m'T|WaO6\ ULi5w$۸w+> l[{'U,- '!lk&=.ca/N2ק4: bɒ^WÂHX^,8_ujHBx 2:aiaTOp 'q٥ KY(׬[py<ڸjyUuD>껌e~"n4r"_*O֗Xxq=ʢ cl| 9 gZMth6lAtW'zڗ ~ՈK ۮ6G0p2?7Q`yG kJ &JlDQaݡZg7E'$5%n$e{!dhJt2pU{Ht>f[}:0.U7'Hמ&H EcmfUx065~V ~`Ia J3h%%Z;S_r 9Q#XѻSk<܌> /i<{# L Ǩ%l#.TME\:`= 5ݙN+^'t]'iuMT`6=Fhno=%sS_q [+pj7?o$݊ƾ%[j|<aO7=ѶŽϙTZ?oXL&>f\UDc̈́\h jo*|3ww#% ,q5gI#e@#DMY} "s6KFiLyV@ 2=~OG QAj"WBiu9I2>}N^=vRg/@zH-p$t TkPnfrVKKwTf5fhXjCC.S*OC#e9?&C QXD\OU0hɾhCfKGx-varL,:Yx;Կ HxԞapWvB;j[\ad0yp~(XE/n?0 ]Ό }>1†v~%S.`UzؙtYީԢw|gm4J%>t$s8W}m{ ]{%p5d-$)mqYv]k*4VCI *{t>jrf [ppBF(6(^N}X>ް/dx˪AS"!ff]FT٭\`ĎJ7(꣒5w,eeI&ÆuD]G/l㘻~PNZfM^k O qʼnMo(?.Cxg/ <{R5OFJ=-`zdCλ`JeQ =4J)dY&::g]ڧm_J^(fd2_<̳*fR)aF-۔xՋ96Na&w8U*ŶC_)eg 9+eAo}"dm' !dz7$dAgǧuEyWgec]q?Pж8jtΖG.cjퟩUY/C c y^bڜYMLk%@ԏrnʬ?a?b:~.Q(ja`3VlMKlr6#})T<+\5eZ2&)fRlqؓ~E8AddhSS b6O3j#&渨4pNbTPO=bW5ǩ6IUj%CPoT/h+£Rȶ;"{tq ܛe;b'kL* EϰdʙѳƒJnVs%]~BIʫrҊ% jWc85|;CaNULNHz@q$1EM !I}XjV*jt!%]t@%/GoH2}')lnic7kfUN8WjKZ3av!@]i^$Յ$miD)WݚYw2+ѕx:~CXq." [84-s2@:_OhdKD!q3{5k4#I>1H);\ũ\mDN)zvlԞ :i!o=k.(klP2#:U~0-7GVBX%9u&6L!PIR]NAm;j^k8f`[N% &t<ܕ8Vpf}Q$e--%J>гYǟ>bM=@I._.#MnѸ%zD<^H)TACx\j&'9:UJK=$uQ/X4MzyC$F%3nӅ`WI׈tE+͊ #qE 6W1$W_킼<^ʏG_ $ sN5[k1 |5Yȡ}L f(ڴm|"Q+ed 4+ qH 1~#ǔ\I ݲDTͯ)L̺^'~<[\Hx+c5/yµq'xWy[jAMFK|t:+ydkd'֦G5^`R az~6饘_}i$WC` I*``>A,oF/M 7 HllEWH/t%%`KwüxЂM3\P.ŀ^PhIc $I|&i(p .7 \VQLV/L+ǂUTL3O0ͽJ88;וE5Q?,'`Eb$OF~\`*S3pYj(Dfg6طj-[R`sF`/jl0i#R$XO8>)^e˚W[=av.>%{XsQ(`oo򒉔CuWz8Tx3vӔcݸ~F?K>KkVQn+k443?um & Rz9iqk5!uw8>Q@FZ4858TQ! <(3eap]Hz<^z]RP2SY#)03m!Rws: ,cDg[ȗ5߿Al-gN*aL[WO=uSƿ%nFІJ5vܒHXƗg|CΟyWKOC4tn ~TM'sj#8Q1 0aJjGM2Q3*iRF;ݟCyς~F;W٢\zP5"h'VٷhrKi(lJA"Ķ3u@he8#N>7}Y|m_D8 :8<'7\K0L fdIIC7੄F#'vǰ*]˝(o{6W 5" @3(e` J/ ūK|t^q:.3\*N(67LzKzC7(x1~"G#U%mJEhVɭ=IT p+W"v@ENks),=~BDZO+#(?GLKq0"3 N |Xl7uK& M Cb$%S13j?׊&3zD.t!1,?͡Se391Uh: Y̧2F v:.mf+Z4xzeVܚ3VdJl~999żo:w!oh$mZ#oݻ_6$[ &v԰Z<1.D,n% dݮsO,tzOF /%G#BF+ Ʊ4cFEJBMicxFYE@ a6TMU?Z$ zrld,U3k amYQǡSv9|< 0[ڪ: f;|_]{kOWiGl{jQl(>;vDp2f'ީRg;, u(UˤHdjEU9I,/6D zxIK<5b*[3ŒyŒY Foqegofw,ԶNT1tP '5i-,๵{bcl{mP$c! G :FMl: &9*@p|`aݾ/q==q  Vd􊙆@:/=Ix59z ?Xٍlopl>[02wlL`Ẅ[ ݎ_DRZ*(ۋzގ1\bn܄ הLgȒ!)}d^c~m9`@׌\duf3Hd-@=*EVn%UB[ ,(}`:8jB?h/Z\۰wWm}~=XE=0ʐkͬA =)vU ۖUbi#`=Xs!9;,O+pt*Yd%z;v_fڒɃ:KܘajiŎ 2fa/Uo?K=pqwLɠ]!!b9+-OfxgcFH_&|{Zw[r[QdӉ(Tz`\L//l9t]|q1uP q,A9K)SHS5x?_ Y(w_Gk5̇"Fv)3/l+ %Dǧ>B&]XF]>Q.jE,׻;rQ[oJs>CZ>$J*K_ RGj$MZYJ& :uXpSE&B87(pR]&'ӳue᭱"  GEBP&A vaP©26զ,EDm7jڟ`0Ϻ/h*(T,4̜9652KPG7bWsiP54C^&5" },BřBߓLPȅc:ވnP?r])ҧoLW)7Үo!/nV&ya`47X06NCN.C} }o6ϾB?%+>V,'XeM&\Ej\_l=Ṇ[9Ρ UMX37=?!%H)Tcjm_(;.B;h!œ}& @E]G$ Tg 7w ߡį~'%.Ӕr`\TA8LbZu93ئaE RAea2$GS n9Lx䵀N##æ5Ep #D'!%`rݢԸΑω倖 ]dp@Abox<_OXnӁi)ҴdWŃ{,,ZNAb\m֒wJ+ؑIiRܦg'S~{}_Vg^=^HɢgM5r%'>QEg36[dCq$F49pWGWbl_Cy[yuäKcП"Mt1k`2/[<&{݀Pc7[^v 7%UĴ7zjD)&=4 F9?C&H-*9YMtk ?u/a󅤟y2 f{١GȜPO1h8?oo0Wb_mAtMC׶?B+D8BfͫLpVϰ{AU8tEIWD[ }If\96#ѭ.+D#Z bbSΙ83EW(-;/ k+Ϡʩ'c꒲@;vb.iVjz$TXpˇ FWg9VL,t`*S펗1-iȺh8D_y/%h>={)%eȍ,g5Hyqav>X=7 5ʌuäI.Znnk{6 I ]ne@L|Iפ-w/;3^ #%n_?Zj*6a˘scn|%w9DiW-d̷q87۪Ev|}}D9ɏWDdZ2ZB{}ڵ_7UK9r+$zݘo6δRiG9=8KmhїT ^\,? Ȓ ðt_( *`\ǜ 3\KOAK@nq!Lg!B?k1e"YtG]H<,PЍë 8nlP/5GȸK`&7nlMHژ ZUY *'z[E6,֥ORk |kRߢBu\cݼcܛ2;ew)9MF8) Emf{\48LY@jFj-dƚ5kH/fLf]" 1i_{Y/bD`ABD%ns3K~ujg W?H^҃=o y_,I~#=PI}`֟K:!*Cw1J%FȌ4ܜ HTk[ tqMh}gxs#3Q}ꩱ0;(ㆻ(z[.?B[RB} v x\T`jn-D/Qd D5nw`E}*5$gzIJ05iB$^ys =YgK~B~L&W?v[W }z䡇s}Xt+mD`Ȧ8\ 7k1Ҹ?btY/'QH˳sa/0pI3\3vw) 0ӟ6 $ T/G.4/MrxN=!<=đX.o`"_8+ː!WjZkVЩ}&Yi HӄjpMMtүgV5_&^# gk`~H{1>j\ɫUp3xE#y44 ̈́AeCCw^RcG]z]"ꇻDŴnth+K:ݐ+DŽ߃V;}sZvl_x7LZ㞑0Q *j!.68 u;tM? ʋW8k)T;F \DF࿾@٨n{~&AnY82z+pTfy xYipCdD/0qA|Q MIR,>_VU-2T+f.aDͣcLp]kڮVDFܬa4,pr'z\ 1Jk˝^=ML51KhҪQDq*%t?򞼝4GxKLqDƓ&Ȥ+YQ≂li0y0H6,P6fEmb; cyƞ&㚂ϫX('N9ηd m3@M"CJ?!qD}kK%SvO1cZX~h[h8&CIQ%Asc*ˆAH6tA|GS T{X? a  m_},۲OyBd LC; NA#K?j,< Y}հ^͸]9)55A,F8k | i'_jˆ_4CO*fZ^ ,y] Hˢi]/9vi䡹i+/6]+FGn(F_n4rXVyL^ش~*_Q4=— ,it !LuzU ɠaJrv\M&򉨐,4Α-Nu`b6fs 2"P)]X/hB#;`}ޘ8lȳ_uC7lGcuݣa2o߻&^#UUiV鄸u{7SUAJ7F1q N P|X֌1F=PEEw=u/e;oЖӻ &X`$iÐ7^Vvn};Eq%㮘{/w c6W"rƾsY#)sގl &eF`u+!n] !M=SxT )f݄YXP08 D$ی>V29wʇǽC۶UN![&<$屣x-]NBـ<;l!!X'n HVڣMI0"L*ܻ8]+v2&Qպ>Щ)o_ruL2V#}oJBZKn Q6-:aBkx nmt%gƮnᙐ.8r} uұ!7 0ȗl nfuZS1ǺP[-FGT!U="YJʋ!V©s4^TJVh=7xZ_ץ!4cok&SG٤)u j:e3p\o5n_̏Ny[Pq~, Ջk%!a4"ʏf[8jː9{/_vB?ZX9&xE8 ,CbNԝzE̷\!zrb脜Mc@s,\'Ru`f}Sy{WO6 UfK9d>g 3@; w@b^a*a z)+hvf%)E$o-MYc>T Vuj`'>>(Z!s)el;`2;yD&.OaʹI3v)oDqUFbHEo{KuNV&*c,WJ# dSioK_уGźa> Tk &뽞b SdT:65ve? R+G4A|{ ނ>8xpo1_&HMou@rmA8WpבtL"Vdpdi*Bc}b8[qUlt Ykm,l5,#ї="-9,'b(HƧ+Z;UeRdi)*F;ւB+m{" }C;0: bIޛP]VTNjQiNbB@jm"932;{PL%oC.@gNxMmɹژU Lܿ:FMCf.1 +Hѡ1*|VMU'imkH9U%k&#d#-x75N9 N&vϊGrSk+p]Nj)1O2TѯmK). :a1'Ms}{ ʳb]^ ZML律[24 MxYHPqsܱs~Q& tp_?01}:c $-0C_LMz]RR1 Ci$OLlX"[ χ5"JxrNF0 IJ UփeʷSHjz}/x9̏bD*_FrIte C:o+t<^Apy8Q?N?@[ vXZI46Y(%=.5!`VScdJ|&';uo&> Wߊ0 tCUB /z杯gG-K(ؐWW#SOܻvp0nXd4I5ۜBMC+?1C/0GthY)A5V{RKt㞿T]?޾ߟ@I´(@i٦T PcY)#S})S@Í-oVB|i=pη~%L?^BV>qJFa=G./kMVTSjr-o}CDIX34H*>d Wk}0 념1]:J>n'%jʌK΅ҭ>t|Z Q)ՙyNuM6bfuȼ.Jԏ`EPqAu̾%.W"*e( Aӵš)c814O_ގdrFWaޚkM 7'fj;ғ#:5/)˦Q-U0/αqx=}^KN 3 VVf6R1[&fC )| V)#^~4 }{o3sxz0iSoiAk/&̓˅I N,--P~GPEuohU;ں h 2<Ȣr1 ф%(wuh Y\"hta]õ{_ߤYs ;2Ţ_1@M~RL(cB7zuheXc0-@kFX'al'm&FA l eZaJ?ެ@HgP;V{;3r(:֫,nC j}E&S٤={ǣGRglwKy~Jpw^$TVPݩZdH<|($?,~w:EézHe?FA™Khj@.k ߅jptK|^ 0Zɭ4 ~RL%yQ0qI0gs4s\N ,/::@HR %ldvu^^O0pk^SQ~UXs@Оޱ^J8@@m )̎2QWt6H&Pmmyh$HFXKpD4>^1msGO:! VE2d5 O;)Ѱ:r%rCod3E1Ȗ8:%,MzԢ/[K>Rh['mdT**aJ' -ȰJfG5ķH$?Krf_,휄{~** GڰR4>rADR  `R-uoyvb0 !6B!dMY *d,L龮PZʾ (#Y$pTp2ğ4(uMvVl*Z\J#%[.jcd WECiڼ -| l'dQŮr[ 1FUlqtv&W{ΑhE,vULڑK [Ci+u ̕cE{*'w@{Nҷ"J`J%S͜M~8I(g隩{)fBm}p Ǘ=[y{R-"iz*7]|*I1ݿtMWLQH7DBtؠбf1GI&vK> [3iya :$ ? oAO8T?.# bS:O­M]sCq~xUGwza#mw~?fi;3NTB k(]0.iqТ^lƢ'Zc(\z}]L)R@VsiX(8{k(7/<'/Cn,ƻGJ8 |M(T7C;f7;owd >}=wNFR6kNsw޶s5+Ξ#sl9TU?fU(Td™G3+55^<1/o@% jΦLF- oV7DZ\_dmGDz(a] (b TzLN䏵$ CU Ӯ/5ܪ ]Lu.nI/m+ϳű+oA¦S@JG_>so+D *49n ζ@q+9UԲm)5.TMr 7݌^6*ux.{sY~ag:aFRf/=>Kфs:˹s0Ajz>ϪoHOx+ܗJS % |')!F~4E0dQ^+n*w`\~{<4Uv:3P|\VbS 69E x2>/Q/Iɉ \<wA>QF1.N*.{CEUs< cpnTGZc]Y2l39R 8!K{ÂcxH[Efzgrj-sRGոÜסad0/Jج.͠|p Ǿ0u/~NXglZ++6U)E &n4;aa H1\;K&p|Sj8 !D|OYӋvaóԃVXt/ԗ N@Vjs:{r%Q!zJgB )wA{a5Wd_Fu,'CHߔs 愳?Ɩ3{\J nٺpXǗ/C <{rB3q=9r h Y{~Au鳴ؘgzeԫ0<ЭH_h{Di D_7wd!@z67Pn%QH[ 9I^yDSo @[K+Aإ8e򀺥Ud. NMh6}EE#> y}Lg[1Qkk |Yr1T{[\A\4Sl PʖXpPX%^k&n^X&ŹķO>3k۝܆RigSRbye. aB%k]i5a+1.9:;2[-A!\D,im7Pm.6(ڧ"̱K&.nD$Y '45}5??^~+(cm?5 FhF@LDfU1"*РWQzK}NڼCTP4CSbr>qvY`#Ӟ  ߎʢm.}?6{Dnth"dBQ0U@APo5QҲVm4j= /fs!s;x=MدA٣zQjɪ#m]{s4}APhFyQ-'_!,g3| yJ]+[ p#9[0}kt *.%JE.uAϋ-Cq[<;2Rc\[VQ{DZ53>:WA[Ppq]X`$jmZ4! `cwErHUa~ KYI%wpv i#r*atB-*2]| /tT>"/9hUHrf_:q`!*X( &;E#2?Dvy^>H}*ä6KL1$&ιuʛX.mY]ͼ(ЯDHGnp;P_s~U nz !Bܲԡ`Y]h0吿/STZ0Bw `ǘM/DhAqjGCE~\ERiSI2_6z)1I;cƥn}.46LRe$R<x ~~Jk .`vň ,MH j1- mvJ'IW%GE8Y6/i' QjKf{p svъ#ԙM%>U0@8}yIch"O묱* ǨS;]h-qS}va3@MIbpY ;{AFleU׍fWҏ;GIՓ>B$k ]uя|(*Eѿ(ï*3T 'X<oz _0]lc'>g%$oX!Ju2R HU=YfXSHz$bkTffD,1Eyp{+!9_j3&͇ZF*"zx+h9e G$ h/:=zou!7B9J4RSI(d ){n܀PL2 B@#d]z(CG<<>\A=H f&%FT@D-~*}è5zV㇗hyM :R?*TnG])oйokg  UMIt*Pn#s8eTocEU_L޷iuC=]k<TԑX'h 9(sM԰?H$ȯv}rA† hG<6W&szlGYyo QY= k̀aƍk:6>"4+*s|Fd 8~PcB?v%JgchW.fJ21H K_v|<']t21W9tUAoHƷԲ>n?M߈=ļ)?I%o&q6hko{3Tr}\hNwIjFpxk΀쾾@׍O{NN>GhZxLRfKDGda`8]>s8y2$/>0"ؿfMw&GcDyJ/ƦO.y³ dkP3Y8Vy_Pյ :_a%EsxdM@m] [ QFL\O\Kп^lp"铔ETBJf+aF.UdV HkuTx LTuV=AC9Ш>xv8SR-7p 8KQAJpZ=>ʣgzx3u ^V:v+[D\yAc9^;=$T~ʾGDzaZ_ߺScX P?lILQQIºfD)eFV' < @Cy?V`/plÒ\#i-na_Ag.pHHg 7$9Yd`S/zg]@M)Ca.ކ{3gB_f/;2}gAf7a_tm%fQFBiǮ$ڨ6UfXS6+z#R&'.hsz*~j{u:ք韸70jWy@9/ K.Vn,[lYkd K+R >r$>,ƷkU9F}%˯wG[4OgOd6҅i/+r}@:{* Bl |y[gh1;Q)]n{=g?5*BB+%= \fB*)I_s }(Wv.NR $cAY6&tش'U͝[.Kv,p|,m{Ǖ`v;Ac) #r()/(c{D`k#iVfRcD,,oVdq9@|?Ńoo*m^ 'ee֮_"[e؆+.G a0l}^_жԘm&Ѯ-./K]Ad"!߽Pհzl͵A˻G0׭w(8EH hmm ^qN'{B;Xa&UoM*8?'g' &/߬rqpD'\h;`Q'yowc ҰhuB%D?RQ_bV 7&@Q(:ԉ)Z\~a5%cxv\9f: |bK[pUMk w WE1 fWZwĪ:"YEio !HKuԧߜsAM4ESq$ f;Dk~IֲusvU"̩AIv/`lY'qˆMqWb[ Ůɪ=vy2@KB"pPa'ڹn@gy?tھ7#yW,R0Wx܂8:3*|RJQP{; جL[VHL'k0Bԟ/ m sEq1 2%`.'i4= $6{D>wSu&gksU"_koJS`tļG㱇 7Ӯ6 cd2&^7@nQ _(a뮀slX5s|5)9*)t߫0'NjFWD;6jGeƇ\{uBNzQs,OolWeuBDI [O͒3iv07 3ansHlg] ^Z'㩱Y]oHqF*CZP_N >RM4چrbZH E[0QLǒ$/v.T%IOS)-!>N al^ "7 e"wj4E`Ꮖ?iC5Fނw[[ַRja+vBj2^ z'bΕcvoޚPioh ׵ sǽA kԜqRjE~ (̡Lb4.|r~^Tg6bgFF7ҫ<{Po? Y O&Y%g_urw&C-KGN'%8r5`W+xC=H jNj<}ϛ5 o8dCئTtݟVi#C(ҹI3t`*y=p!:$NvG~XeUnk:D~9o.eEmL]|*6X2$WP߯iVև5j#o6RhM07}׍4EgTt 6vTD_E>b/[to P8:2E3@+C 63Jv>\V#*~a)`QgX^Sޭ`8VvZS pP;hM4M"ȗlitqe/j Ih `S4xB[n#S2ES} TGf/ Nb8j.S?F%XA|kܺA˕g^bҠMbc=ʘPxV|tȨQR*C"r@xs:?[ԽR 4SY`WnsO.Ig#+tP Lj,ߒ*e0gLg26'^ } ְ&KpC6fF]~-Iݜ~&'eq "SADS+/= 23BO-*{V  T,$z&#A#q<6ب?5R,igj8"Ų 14TE9UQ9{鷯3s uKtjViRuՁCeVG]QsNkݱ`wuuIV>^%v?6sחF5J`G߫_En[Y)LB`{pqazIkI0ΡsxD"O.NZ+yM\!FDMτHM[802cM¸;*be߬ZAWĴmXeuͨ%ؔUbx`}MfmώM &Fyi\~SMK8 kRPRbJ,G:~VJG6?~նPޏ%tj- hPZFxJADꍟNWaee_W*s'"Ivnrh@A.8AFV3"ƲdNMLkY@RSV)c}lR fnW@RҗiM^%eHc0# ; \bΊp+,c߸݋gºQypTZ5ߪ? Pќ"rVeX9X`#w_JFgȻ#(ߒVnڞұl@䋎 q/iAtI~5eޕ^aӨQ\c=/MbEg ?"U0gH= ~Z}<}U}2(_^Skv3poḏ4X)iDs35wC.ä́Yi^T+v7?O~6P㴪BMh z-.P\Wf <1rCCtT*M963_Y ͦ1L܇[8z/b/Dg.')6s$oTSJAۣð#H#ͷaȧ)a{>kF,z6*Bb1J]TcfCm&TCRfrD  Lew$Avd.|/ƨ[vj I3aNQ{V40I[I(:<zCװ6NI񭟓klX C՞(E;;;:S л+wލ#NKU%*p+X8e7i@i Tryqªs ف,<\!O 4Z玄F1:,I, 55>@@k{neE|8hH(f>Nys˻B{$C(wNrI\{._fs~OH)y`*I}kGmAv[1ϨJR?pwDhݷzNjtHq|/L:bx{%Zpw@= V,, Nf?$W;iiv/MkU-v'kʜwHűϴ̜d/mqXI] ՑIsڿXo,4)іrx/02OɎ>}LhG]Y.'y|MeYxͿWUnɆ~c'bU'W3RO:oOi`vDޜc* & *Iq+ir7B}qݺj2YO$H<*g&ԈmZPfp>O)u)EPRa[J׺CzBypmg$4ӽ e4U&߅^ ]5V\,L!}Q+PL(f/~)bmT8CZ(ɄzF$Y ö:gwW#g.{]x"̗<>UnI+7)oC@-h fez3H|NS. ͌ݹmW-swU9q4 DÛSbpR X 95z ݉89ֈB*%kU@ZFh/" vp@OW#= QNr&[N4Rdk '2i=kYOkcV6;d]v }N thRI=T߇J 'yF~d`^&-eQ=WgȖ7B'fiyV*.T1;d6p~Kh䅺3)9j$>1"A W{7̆)z(I\*CFd<詆<;XB w_DB͛Foiz%k s&AqHY5xB7f"QgIU/#2EB`%i m# ˳J@Kȡ*Ew/?Qga;ʌ3W*'s|wFKCSu=~f_cs#ό~`?F-0A7'{VvTw{SqCuGu7ĜNBsk9ױb)aUo 2SS3qt^k8B=1~tzgrfWó)OriL!|1YTl-̂^Izشyd]PyG1mԫXLu ے kMq uk4i~G>y*}YmIkfX9Še0,Wn'j@e|3im܂(ނΣ`C':aLٍPѣG Rۧ1)7Ea:y7ٯ( >dhM~4YO^Zzw, Wij){Ι 0"˿GK"ihE}a]UR[dwUR 3=;-E˂sv)=.]JQm ڱhwX !Фg h im?a!?<9?JN7"7m]H%"JVz57F((-[vlѦtHE,˙fs* &1 h( ~M~y/r?l[Cf}]=L\eL rHZ*g Jy] FOv{[W;RDmAJ][z3&^"v*{I@9c&Ej,9Wc8i4)/Eh*Kq$"/f!-{o͗ !K*6Uz OI.<|cWKo?􈚉210`I>k6F;<%BpMtՃל/lpa,+@Nq'nqM$l_YpdPЇ̊#kNXEXTS8ێ(ueNJurgkw^z~̾@g '$uuH N|h\ɉ*lv<3 ry7tk1wф2R&x{f8m^jFa6!,Ou):D~W@`K9ŁQ/ s.jǍTL>wzWc94 R" (K[_ץ ^J{k+>*p8%> '$!2q ˕!aFpaYd^5Bc(&]0 I˛f7#L\9JHyH{&a+I#=) AM: |A,zB5:V(IO4V7FI>f\]L)ڷE{{1}p1(dǩ$J"3NN@ntN&VXɩ[#{N8Jw"_ GMo#rE<\7U3Z :oiOe4\4Cۃx\*ؕ> msEi`M~n*B#|OxgSơ&w `NP Sb^93똡O6\x%C3v~œdzW&y c0,jH '|&dz0i`Dc,B')kS#˒n8Sc̗>ϲmՎkb+ߒpUM/3l2>{'Cy-«بpSPS_j']a*ZѯN$5ɚc"-~54Jo?U= #?U)dEHH_IOX ~`;lӦ+=|ed>_J騕b 3S8Cdq9N%\*?"\4$ 0C0@?YMF'w.B]O+ٓ<iji~MڶJ1 ;eϞPdk6BTtwGο\Nkb 7,t9[T`Jmok3ٮjA(Hvz5{ [V4췩4th1zb_>0eSgV, EƷve3?/7P6Xҟ!*2>M"~pX: =&7t0€8wҔyxǯŖ=Yz؛M_dMJbLqn\dSYM透I\6ܯx:dr~.hgzGI v|H%Obg3z<I-P%aSw&h)1Ǭ 4?wyӰhg P`:akp.O%;oTd'xDB a)1F'4 i^)ex$y֛-G\˙_]fb&#u$]C裟/OsBg)";KuaPV)MIQDoEѺikHʠb ]6Fp8MV&5F*i^LMtMQMzڒVͦkHE*v hgrP*r.k**6C]YkLye\2%VC4.Eg9so`2qs6@eOAnA$]('AtI|c_Rb,' [nc 猅#kDG8%_]LG6.t5&buMhNVHl"RP @X.wIjA݉X<V=ځXiX+XNR{1E9A(cH(vm$Y72tc4DggP=kV](N/bcU[TC)0_FhI`]c*u ɵmP+P|0IA %;f,Э»pd- N{4e&d=:V,V~{7 "6f,6>0YD0%|f)naXQOynJ$}˥W"{g Ζ@db2'Ρ&ݏ}4]ԇ+t5:wH\tQBOdD̷r›򡧋#@Hy?hH(y g4P~ԖS3J#h@Şae{UyeC(8ъVEg cme8`U|FHS2)O[/O+J.?F!~灢B75ӫ -%B'%#҄Y|b]YssbWQ K(HtE6i%z[3S?$<0$s'Oޯ9jZ%E} (!OlLڡlG0s8ыâ(SvFe zُpUSFdGȦ{盱Tт'8lX(vRXg°/hnb@CHo ;:Iݙzhޮ"瀖)33h9VPHMr i)15dR1u:OK]#!/X^,+ to|98xf$BC)op0Ü ۅ HB/OT%L~&;f EP=CQOsiKӭd.tQM3;,rNvzr+="[R,둾E0oYS)ͤDj:,+D#%B<'<#BQAwqp)(9)ӃvVn;gP p/hQL$S G;8%~QVKjk(NG-2,8zhz;@PZ; /Fnnҗi-ܭs7 Wtu-m&2EMFcBJ2Cj̵2[! ފ}'p7|GSncg+K{WYx!SǕ'pVR% )Ѓk+1OV;TmlXȽuWobn%x{wT$ ^v}UAw_{*((22@RZ B;:e'ŁىB;%@N!&l}ÞEN-3Y`؝r1%փ&D `C ŦED$gܦ7{eЄew ;"\E6#H*2rP<87naaJٙSmbVZqj- X8CB9.sͩb+`F!aD\ ˋ9,,[(e`ɡ,Ǩ:Xj#V,} AGvĩLʸ Zw.GOOHӛZJAuV7QJҰ[fyts2zvY /^&U$e. F<2ø/gu% b+MՍHo}^kĈ2&]S2\HDD|tZAGhTF֡)9KVf '<1B@;/-:Z. 45f/q[|x'I;,h|jU7ZZ[]bcRc7Y-<7d8PgrmP'Q5WM+R]fu@hS?OFG~un[|DVLrlN0řKk>FS>M/bUduA- JUVmP|ңNj=JvA5{7y<{jA;0Ҕ Qݔ%rק3}>?O[ۢs1n)<fvuduNmDxv?iƤd 2Svt\">#>I鑹'7a+;`JC4`DdWNJ[;(vu(L[ *oY*E$Z.I r}iŠ7߾u85Iw+nHU RrSґOZ\O WоWsJݙ!^%Mѧy܄owK\̐ LoPvw&P~(KWaq%_<,LhB ;9^)[&!e!){-3ܯhi-یᴻC7.C7[nM*hi̶ɻGE5DCO`dDiҒḧfn-݁Vsr]Y0l]e[l<sl!Zbe!s97Z"zCSa " WYZ6`xkeND502u),&+BĞ+?Yq4Ћ^-0N ׷T91`5R,0sbiMG#?j۵Mx6gyvrCahh,xc۸'sTxnD\Aڊ0`!*^r:K){.#Ξ0`i3')>8ϱaq5z釷2Nz 'kޅ $Mplv[FouC}=mJN'%waX~Yz mHtX)aA0|oغnQSb(i.]{AϬ9v\^ڜ#1G$}VgvkĜ Bb%'؜G-qYӅ˴OQC!)Wh8&F;w^Q5MZ@gZ~ܓoBGGEo]I @OZ*etV|5u7փ`U\lA`5g¯Cnp~J'm4>8K¥Z%ٮ*o2e"Hjuy H6=[u=12wT?Cy\\>Z BdіEċ84}fcXrWe{@0k40|lFnsV h&q ?#+[ vcY6tB;MC#yj $P_Irw8>| 2!{ {զ1|Axhyd8 3T1I|q9סGYt6=_0jj[U!o/1G9jΰ/k%LTRv0Q{O}ʍq=(4}p/2#8-MXQRf@Lrh9zNG뉁z15ş%a$1] \+ زK$Y`&5)HQHHCun^z9 _߇Zwx@I-`1i!2%!PC[ e Y\y[ů$j#Ƶ}(אk̹W3Ԛ HZLuY7.Lj]Sb]0JMCHg0`'lt76b:vO/ˌ7{0.[|`Kg4!lV[g}IY j˪%4&`]<Mf4`~Ma9i9DxHK~Z/}Ž[*MA*̉jԵ ku8>5":9J9dJk͜eJƌN~U> >.۱j/J#1(Hw0ak-JY}xN7Ū=p3jNa;'Rct1?_gpOOjBJ'S8X W㉇=F1F]xwY5&L|$QHY9OS_ #XNդaNoڽ2ԩcah|_j!ئ\%[=r(q~%K@L[K5. k*L&-ŧ yk1$&Q$ qO-fԍ~֋ҷͼGg$,w-HePdyFUp^䈆f(8vO΅Fe>JOUÅ(z0aQ^#)yPQ!5W ~5Uk+b33Ӓ"[SBcyv:wVsp#)>Z G 1 3-H\ er?Ϻ0Sa9+oQG|I>9RJ&wt=VTI"mpfs{7=NxG %6xtn+ =ې93i [^yu,K|p4p9Iݞ:+/xPFwپ:ˋ {@V@G$\~-THAp-[ޒGş.wz;9h$ @×  9nmla[+j;zi5[^Qѐ ho&1}Kҥs9_L PZePwl"Ӧ]|%#{SAƕ%*.u3^5EtH4<' If҂NKژ8Ї]V3z,a`5-9b@qس+!ّ\W{Z@9-ZvuW.%*Yy n7MHٔey?f\zc !|˚n( $Odxض_ h-+tx=NX" !*_=`,Y.$0 ^:Ȣ5U=b7oƝNWQ`qvV@0܊Vq>>5"q;~b|UčV3*vЯH}4]|YZX;q7&< PWv\%kIx+5^EI BAee>\Uϕ:* OKr2PU&D;sġQij< WpPt \y?J BE*K>Fu3aI$,0ٸ s}GFO ܂n}UC(3 m-1rɨN) yU8 :Yw7.H j("- 6Th"6Qw7}PN+(גܞ"<0EGP|m(F1ar⚎v^CX7Ր,a!pLc/~9 55^ <'43ZIA~V;^>[.P"0"Zh-i\B2ٛ%RVBi gqK ?HY#/, h8;M G$ ;iRI;ID EB6)9DKeb}>n{auc|ӑHE~6NKd$Ըw\~FqSOG/9&ss-ۿ7cuŤNLτř1+X-V_P<8[ϑ\,dkO0e2ӡ>A.sz4bdۢr+NeHv8M(MI}ҥmV:b$O԰~6% 1R&|hkW˒5tp*{'HAˆA,!:z6'ܸf'|OTNdL'~C`ъF־j9,;W+M1Ïh<5!ild'^ٯHQºk?HȠ=: |ZPOaM4՗ZAc>:5;+clތxSB;c м{ [L=y[0Mm2d-c2!ӗU0*8~``#(k]0AmF3%ȋ>|D&w yM4R)}(j 4 kjY';w@ Jd}_; S,-zyh7;Ϻҗ8s.V5( W DGBX7da-UM $fߚLos _5[9<9E:m!kD4zN>Sy O3Eg-v:a-neV@߹| 5 Kc?pL1=xL" q)@ŶWdU*DĖ3C|Xz!norQp:A(h<{D )Q@D"L8kY^ﹻ~`Ktr ~N9I>\Pqqu釆Yh&tޓ.s4ͥ 衱=W h-&Yk֜ƫF#\)vA/i nYrrF:0)}{VY_L3\ynsE~F]s93 !v$%švJ0f7o5M#;We P%MG -鬢מԹwuL3ѧv'8HnK{n/9m ?FXL DV;ɻ ,qZ>7ajK֗鵶C&L 3+zߨcZNC*I$9txq{Rz88DxXGFBeW ۶f4VNZߙ j0j Tp o +9L^H~8x!%3VH."ϐ=Ʋu ޒBF1bDI^ޔ#e4 5OkQ-*|y9)^T;3G¢%\+Ύ؛bZ Zo4mzKc%0%EnK'"eH~ܦv6E-tJ\Rx{9\szAf z1@RW& DlBX+r엒OW~ݺp ӰBz۷d y'Xvc4D0GN jT8`/Y(p# zwݱ2N7^v"Lr/ݱ|>(0#c0sm2sg#rX˂pY|J]-ZT;l}_D1wvqlэM(1!VsB^uj]Mkoh(䉗mNNJs晳.BPqd5ƊTF5)V> @1"l29n$-k&m0(K<֤#Pś"{+)i~? :2;>g tCMS<%!]w*q mFBwza9XOeՑYixTFr΀N6 ܛ#o1%0%<_Sh꾉9gP#‘Ip :%p:IBoY³Elw~&4+ATN-0l--,9D{h1MͶ1_W_R]v&/ÊG=ץjǞ=wLj pO)>U%+s;p 1DeN0%鲜@2Hpv2"(W]3DP7#>fO#UYoW_O+ߝᘡ$eys.U^' cȍ2P{puY{IIx=sA&4G ЖiUI-l9i;x$+|&kT{j_yMcʓ%RtIǧp0k͛|*zQPxEmvuo jZg3j9Us 뒦e߻v!y7<[Z˒g VlZ!9@ـz8LNA k9d]ۗC`Lce!5x7,f`uN%QӹAh7XE{;&h1M1/P%_ YV~]VOu辶܎a}_ 0-P@i^PDY8}a/N[t:Kw"D$_hs[ ad\ jznjq)$7K;N35oQuc~R͓yY`ǡ}2Uc*,ۥGG8tɱq( {ut[XؑCt(W~}HE~/l&wt63@ǟ8 tRLU#\ wCJBSZ`w\, i(JaenЫt`7,q4+Eu\yĉߑT͍ oʸYblet9 Py:8ENv"n;Qtⶓ IeyU # 4HbQܴރhoPޑ9g: 2ӄ&9d1@kRiںفᎻ?Ob'N<򖡰H3/ ^lL峺ˍڅ0VYl)>ćdUw!˟8l)uKǫdWS9CjI5H:5ۮz_5l071z=;kJwRJsv^((>#5+ޠ i mp{[{TzjN5#1/Pm~JVڜ5iׄ !FNQHWw(q +ĝP}JW;{.k@?B"怯*VY/E5ǹCBh /ΈB'+6k'^(j|*ݮyCdꬌw. b/DhUikէE4chڥVE8 cfB򣻎IM@ð aN03:-9COY69fu5•֤lkB슶Q'٨!B^6W0X3.{dRź6M'Y=?jp$ Zn-?}T;՞Wrpqc K qdn}_ȿ)-f0Xaܴmά}l{y#]*J.Gl.n³z\n0ÕoYZ]!hX s =/bKQK϶G&J+c{dDYn=O(x9v-L' 1;!4DRu7E; `zSDe5 VU{r ZʤBRE ǕءIG7(a,6p:o}k3mHRՐk'ʹ>?5!I yZhғN -<,UP;3_ O#0&x>ak=e>mSP=UQd!)|fep. XM`wހPsB?pf!;˂K;IOz8 NJLݎ#4,|;[ukX98x?^`OJߵĶQW`a=@rY{}x%SgxVsҰ'0=nl1"k3VFiOݒ&o/Rk◳rH4,. (RV" t<B`m)D(Yh!/9qDa5v 0$ H@Z?q8Ig GF:],Q+ Ojr;jU[Nd(b8.x!k<"nE˃ =U _g/Z~wZ,F'"q-(]I3̸YJ Uny q4=^8,a믮Azxa(ڌGy{+J_'?wK ʸMav,ꗡؤ-Ꮾjl2d*i1"x#L#BVS&_3)P+Z IuEk *uqo.N$'2[,}ݥD!PS0HAvʭK qRnTKj67ŸM CNVFBvlS++O7,8ڷb='캳1# ؟(8V=XIalKAC3,B u}>P1ƹJt]|Dݤ>^_sDY^uNdggJGQM457@d%X5]2p]˒5Z qڼCeV"տ1R>óІQ΃e5w&zZg;wǁ(;$)|8!JR`m$HC4Zq{3GkQƭcK8.֦8V-T09ݖ]lƻ^7R - )q9.287GhVq>iE'{ }KhMV*ؗ?SrjAd0C^o효~"Մg^"`MWZΥؾ+ocU_c)MTSjwAZHTD]­)z%*fuɀ[qO$ph}tRJJ46&ڎ@!>'hgV TS@Ӯv'J;;EâǑeal]o3p&h/^ }ʈNY68*k2~u <6癵a܄g\0 ( N8};T pj{^ ~AҩUEy0F߈y}ب\(b2|,vU&scRaͿxKD {sO\}ozH>Bn4 "Vyo'6Gu/gOp`WۭEtw- X5oϑ"v]U"ͷ^IFAI!7f:S+4OT5}?M2NnzکEe m knBi)q[ˀ_s4uF^ _2J>[F3s#CbQQ?4HUT<^g rj[FV$ `ŒS7nGrO`bgzݗUvj{ G!2P |:cc޲Y?/t<*[ E0zmEmb#ĝ޸3`?hc -~ nHwvMN(4ͷ Tҳ!ju[v5ܝzY$ my^HJаezuP,0P(gNRz=`O}YDt&$~(LBw k-J~h^%ZU[N#'4-3$c<,~'N<~jCnQ~9t6"37S&vS35w1 q4m<_)j⧗ wlb@?d]ծ6BdD#K8YӒR@3҂W&߄/[)}L<Htc6Tٜem2᥂ hBB*Eu(01`Wg\VtPw[-[Sb}򩆐H ZF|s/3]'8/ܻ[V26~RK.ǜqP1 x_;UM|rIܐ=Cm?*3qEBÛcSGKl|A&) } ]wKNR= wt*Ī%_e "b^G {`(w8jtQu&tVR7Э3_zPkKE#(:ޤybEL`;"0ǕnxǤ@ux-?9sRLyAodjv[ЄAt*Av z|JrRh vҐQ Sj@G8D.#2'͑ ! ̞KuW%AP $l6j4&uH|rb+4|kk:\aGtt۔~(ȕ†ϥ4ާ8-!9D"lc$QQ;=ӽ<ɑΜl@(a>kuKzV.كԜTmۛoU,  knt>Vt3Csj-(}c8_aX+chGS~Lc/I' AL%f)]èMܿS9k74k@ד#ۂ@}a)BQ_پs19(tk tCUVAso&hKꘑ?o%yaۯFOl]!n}:1fGbv{2m|)޳T|(8\,j[YG3ѱs oiGq wu jdX' \|ҿOpG4偹8]qzǩQK+%3 $m~/cыf-5z~I\qX+aԫv#i8\eJĭl5VpP9GxkCVW"g0##E]C j6ïg)!v;r:zI "]CY 6 >LlN]|B!)pT>e6M!v,fH@8K?*z$t S0NO)"lǡ^mZ.Q;C=\r9Ua*adYri-Q`+Z&q3fk?U29B2W-߇1Nt(؂R18G3 Х`$3OQ)!DeG@)R.+OHrJSyɭp'y&ELc>ZqSsHDUZj]Ne_+Ut72 -M˧p|vK5c.gdDυ˔P`A:q83k>P\TcB#ؓ"C}]uMU_ig+yV)DbElu:[9ؘ<:m7 ׵НFoEF@$6ܗmYBqWKՌ*:SQ@\ 1R %8Pf5VrBz{c_6h, xsB|k0 9ԶBoT,UAmb9}Fy-j͟^ |;ңevBJR6h|>+0}PGRqE9Kxvh\*DRQD,\? (,z^͛Eipta^&Eu_ɵJ.?\X F+qފRfϭU-Z#?#If-*XlL%9}xd#)h**n9iB@מ۟.*Њ1Z#j&׭ڏ Y3 1.})aV i&G=ٲ+L!W Y{͹1z|v/ dN+"y2BP,%["jOиTPT$PfJ-I~L!ګM:oy-[]#(;f [4`$ʤ 1eς;Ӱ3v2GccAL.QD°>g 8ĆW!#5AfD0) RC:^%N 59x qِ=)+D=HQ:;@%E0O Wʘ0fXoc"cT-=vGMZg܈D%Xl2ը\YUq%u jTitQO7 ] W~wqSܤ ?n}`%Ҭ(\:rq IQNjWnɼvfVRI= Йdulw7m/8Tl Q+RJB.K>%8u28jwqUkѸ EW/KJZ=я_&"0oЦԌ7rk/Oסq*P_&޼ʭf f-a2L6_Dw&*2;gդg_ -\~@8LHg۾tX$HŕHyd38ha†nHc5r9]m8EpqwOnV 0uG3?1M9A=GdG g d%+Q7Ss_Of89zFWdѮYwwT!!G.NyIv.ɗjzd/&-ƊD(7R^&?NlmbuC)㠂Us9l%>Jg(2r9eZum;9f:4eOWP/.U A$Y 0r'm[8TxђIf>)* MK h$\9Bx/ىTji€9[6y((_ŒH5>ZTbfGbRHy|#TTR')J$U\'5jtke ~$D5.59A(̐mRzK;C@oӸj\%m[q DM<ŚBlW UL, Nrۅ'+ʰ BZĸd6kEZ80PyNVejm֍[1Gbg1"*/%u$/B*wf1,)V^/+O3@\W<]4/<Daف7]ߣފDAD_J\UQt&h!5֊\,@MM3=bB&Fw (iIϥ9!  f;V KM8=aQVQu̺Nn}Ez"PGf~Jo$SJouj-H06tuۍ+TI6'48?SG|GH j; L*Ҳy׶G^igp> {wG ȸ@ P K`%mխ E YAA,%=+sxQJlb/:+WxyTEV5tiGiɮ ( 85^3C2!C~/2$Jg ~aWZ&) 4Vcz7ߢ7d7nWrԪ1m;J`1ɖGU[o%#D/ws~ŜJnᆸG;ϧfȍun#cm '0*n`LOBP;xQ\ѢUVPyOo֩Y2FVЪB 3{ 0Zf [R1gB {$h}W*]_Tp'&;Tu\.2^ _.Ν%!@ka͙ͳZinEʘ*Y9(Dj^\戲NK M(2=wPU7a (^`["pT%\g(玁1))HџREϊ4D[IkGmPB7lȝcr؃_C1><[RQ9a-x]`lkt[w'oK%Zu0֒h n)1k:k`E`J.|<9ZiTR o@β`[haƷ3A6J,ffrpBlKXV YK,'O Pkц{?O H^{3~?Y{2{ؿE\5qQ *ǵy5z],`.2ə ;Jwܳ0ZxM1D3cKڧE &zp &fձVf3>5b3ճe[~Ǟ@i3ݥ8`om2{.M1w)Y'FPq#Ӄ%)N)Y{+ d)!WiLZIdAk5煢 =dwӜ4Ƕ/oLۆQ +2Џm@0R |\iR dh:LƻY% AR]b:zs7| n   ݏfݦ[bZQjE;"L}:<7oz a^BSq;D{tbiCx2j8@@P[o) l}#TBi`hI:j5xG=Ù,An@Fܑ6*ĹC|{M+j(pʹHNs]O#L}c*'c^?VY(_#n#pl07L̴C7UhXD6 Mũl"ȟ&QȏEوhK jF/ [2?|;zl~Q0ëkA<^ˡһ,^֨eDԆxoxWwsk正63H_͝{gvXŤwOKVtCܭJw++waF6yۍ4ZR%=_ V! Tbv*xY슘1/A$x]"JsfD\{':)u/lfMT ѪwAh{H3sp\/ Xb{ 3Qr+%|n?_$h?݀%2rHj88˸~Df~}MjE|ckfi=eڊau 5g}Iqªf:ټi;~ -M!c&fr 9U?޳5JS ['Lx IBk$ID;BF\䀙8' P}j"a8?Co Hu#j+˖@vgEccQ]iiI؆oA0!qY#P@.>Y"ҧ2TW= @ οXkg~m|{3!ާVAOM>4Is=maFeU'.Bq؉#j32`z0w634fn*%`Y.!yd 9*4>1d@=˸.F?}Hx EY'Fk3ۄO%C̠*xC&"2ZZ<5ɍKwdaBTW#%Kfe Ӊ2Ͽ-"N\/G5t#;E}B/=\#F6i+`#Bpx(YfρC@ D LR/ҨG܆0T]7G QXu:CuVmIC儣3Up` >BW*3~7v%ѯ}shP(+hL%44X.x7MLR3'<[µ:/W#>s럻7C{F&<#lhVD}=,OWT}nR1H+'q~(ȉl<*E0`|u(sVmB5eGM%`3Hq =s+Sb+OQq J+ד~,"ק$2SD|:èGHv-> ekFEb\ 7'F:G܋$F w}Mg2?UX/4=X6Y6$}Nc=(w*b,"eHo›A[5Ba`k%҆ZO&pLuܴeî{78b]9NV7u!}AŽe@ %%pVxL#uxj{` -}lg [07|},Q+db15ybk,qϥ;/a[%f״ !+t̫ _5]pS189㔚2i3/_3~%V/ 傯x@gf@t} oUI%DK`u8K8r~DŃ8$7CpA4|KxRHH~GA Zڝ 90q`%oHk_ X~+){?XY+!gУfD.)Ύ.Q-2cgϧSUe;2d-q6m)rf/es &5ZJjx>ws+!<݁}}7EPaNt3LpSFQggi*[e#<1n?0?جvp`Yej+I6g5iIaJ~"ӦzY>b:"9"u3sk/v4or%5!T\Zc kXwg`)RXf;_fDdK vY 8tEDW$Hΰf勫+Gaaګ3MBذ6kR- ܍EH;KFal.^E_=b +DTߖۚGD'<1*r)C;HpMTUyn'3Km( M8,TecEܳ,p~,D>g3D4EXV*F'nCL(d*#@Ǧff1ۢZNWJP=>:"S#/=& \|lEf|IƬ+7S})י(lG'?gjuOgGR!\^y6lЅ|7 XL]lz@*(}$x$wH(ȉRW5@d~ -X~60nN{@\~~"v__DIoPU= ӥAy,_/ÖeT}4h½omO*$_K1\AG`?-hȤێ'r R.+$K 9,q&oV>bٞPAy;)wѴ\_Fn-#txYl1RR,louSVQȀ.wPH Qz6_ݖx:HPdrВ`^֔z;W|_}"jDu'n562j<;:-*NztON&4#XS[Ԇ  啞605¯_O^6mU/oMz?;-v*gx~ڟuSJ;ؠ ݰA<;'WY6cf0Ia6y_D K:N+DG6)"h1? 7 Bjl $Q'4;W|K1A Ok7xΧ3ז^CCI'6Q1FWʈya_^sI}xgÖ[z[8 rPVl޴lUXG:2oVr.Y˺!>c*{ ԹWOAƌqI~/~.z.NzZ}9ܞ]8ݓz(RS'[ сřSlXW.%Rh%P؀%{aE׸B6( |k~FmDX` [=s~і)Jm' Dv JY zS5mB(Y2]ʗ8Ρc?4vX_]]l8xc^=_.) :?.5Qc;o򓊻iz`k} PGNPIx zP7;/$R)*R7=(nŅ(C2j\XY_n?B)#NYb_3,IXi]=ѶB 0>!̐R%2BL,q} kbMbXvKʳ芡H qE@hx FacsPzSa hM@fU4;jI<&dR4cqbHs6;(MŞ#Z,Dgb*Jx_M(0vM,z⃆C(Pn-[qGChd8hk4K0T;e\Sv&ۍ_!YXwVm#|~gy84fyljUѮ%En('ǹ)ckl g1M2QkHڟ^DBYOOi*= ǯ5GO &  GJ;#悦:/\J`y 7ꗰ1B/6?'z*-ypP.yY`[K{x"!i. 6;^p%$: 4R˒/¦ᓭ=A2nb#nN`-%kw,d*NQ`>FHSg''ƍ^̩Uz&Gar@mv%LreE(m^zW\*@g{,.{lT- G2JŮa`W`fqzDyɬDb*pVi\ +4KOE,EG" ͟@($t)`ho+Q2K#Ul?ԙVKxa= E7I+;K]vt h T7ex.y}YfW9n0|,'y:~v~ф8eJm*YDK8@ 0<2/]c5)X"(7 h 'L_jǡwCӷ.{P uԅ T"\ $X%+Kʔb_e$샴@…D{KBd8p.@۹H$ 62LHחQ7;(uQt3~eWڻ;^(Lbj L(/ !{5OF:~^vSջXQgxf?W !3l.ޯo$ ʿ5PDAͥVշX GdaNlߠaݤRRk7yY7. G*G#\ .^~dQ^o[iĒQ \{w3H~d_~{WfL+}Ց[Q9°;eh?\0y2b pǸz!썬!|fž^B.PR?` IF':Mw 00` (cYtCo=^frSOJhLԑюty92Yfk7G HxjPεMNdU'oҩK.3]9z:91pǑjw,=O@Em9z9oGxJ)Evԡ'N-#VQ\N46L6+ԮXP6|vz*S8UH ø83)"z /5#X5j܅OvٔGNxhBM%Q[AhbC~LyPI z}u}̄S%;Q;74Ev@V, Xɏ|rsB|JR9~uڷopk}02#?+ __!6D2'm*'&Hf~|,;q.SST^)^-{m5a>MŽ<^ A?ă8FZغZYSGiZ;0Vgg]pn2sfɯ\c'`şk^ǯE*&3 EE5qG+-ES$=QM m7)&,.],n7XrN?v^lS%"D»C[fTٝdjLdvᘇc~I?E7}f`,Sp#G. d 1Q!wi.ɓqk=nD!F bf#?zTgx@nR"RXbmcQ.alفXti(=y)ZQ1k4<k g2#\b 0YgOҥ7yKv/ͫZRmڷ~} ƌ7v4|iN;u{Z=RPM,@ R*=!Շ 4bcX;TL #jjdޱ0<^oضU\Ԣ;\Y\bbPjW[u2F00ע7Zkao>37XMPP吡3"{ɨyh.goX"_u,33a{1ďÈ"rQ_lN~IA{b(d ?'}ɬWtIF3P9 Xi\u]hCﭽ] -zL0+~5&Nv'u Gkq__Ռ@lͱMvH`pA HqDɾ8* Pv0k Bϟ&Ⱥ9Q#aH7[ .n4aPHk"3mWFMzF]/Hߞt T|^^yaͯp`ܹ6 IRд߆ZQxNq $ǢӪ\Ľ"8 g\{5bu,]s,P'wJ )k72(KgFǍePyRNSj2bd_vdh,J=Z(ruӚeV[1N>)xjNHV4:㺕N bՌP>~WvEbC+Qk7a0t*]i2a⥶.nӏԎ^׹.F?)kV0K k]3rrgEcZ( k#h*Ȯ.h[#J]~w%G%~W-ηm:ve`JW|ʺ O |WQRYw^t`xEG#Eif6nj x@-yNV N64ub6Aɥ d}}{`zmG sW^Ȣv3:^Flf³z?) )R2RdXĖvrȿi & ߕQVRydLnQMFvCTm uJ+'Ҟj$`xxOX GK3YcfQqlN$Xҹrqʀ\wQv9Lr5m!kAzЗM,x6 Ţ_Q[5ݮGB*(VoMbh!Kfꯖ׽(p<3o[S7pW҅V[:=.` W b#wp&N(keAA de<})Ŋi/8 8(7m9ld~CtZ݇ЎqM=4hÁ>\Y_x'90F9 E<MLH:],0TNydU U'p3XQmϖ}i}əZ9=EpӒ\ȼujQ#Qf `qUay܄A[H zXY#>UX)No0cZ>MSƥQzBCo!!y& `Y>|vHcUJT '+L$kGFX*jVmRf#ȭQJfSC,\D;?9?!V2?4vMs /rzj==wN4Rس+߇H'}ҕ5n~Pڝ_Ga`|`qeQƤsMuPBXuQ0̥ҫrRN0@%@{YPyd,؟KԴinW|#;K!E-İ[sh#*M/"(AhvnL!$TyS*Ӓ_R-}#9 6ĸQ&(Yi[`ªj&?n8MNyItv4%ZY RAj| #7R7toEjĞ?UdCO.tuv,9rT6Q(y4x^UC!x.jfTϟ1W-#ӱ0暀az*`w+?bfa"8,GzuhKX=`x=m~a4w4XMmo/5a..|5]i~'`_maZ%nb_ASC[B'OCG(zo!gD ?- qlL5_ <"_tym:!/NOBo|Y2 Gͪxq: p_TRY[|\zϮFy'k=NYV$esy/%`Ɖ5_m>4pbTQJw!=3<-X00vYn;.&Y!m#mF졓pFkWɻ>rFTEyƽh%a[oo] c"yD!SZNݲ<WM?ե0mz 3(Ԓ=mϕz2E F>29^%w aFͥ=e+7l9oZmrY.]: NQKW*gSTkJtVl@Gӳ-7lqDFa`5΋coJT0 ;۵~dqY#WkO*^e)&oqykkO X.<ܦLqD ةE2Z <СJ RV&^& - /w~=سxm ȥ6p5 &cYRԋh=9J 9yCATc"]òq,g>bvlʩLOdSg(5%oSc97Ќ@n٥ݹC=(Jt2ASF;c)[ckAީh_ESNN -ƳF(˓5)ϟ wCv=)ϥ*C]ُ{c= 8L~ nS4 }O[Sc`3, %99B>^ъB'UM)OiHY^nikp]R`Htm 0RL-K*"̮jֽHN_b0DTKփ]!y`j[3e.3{7박w5dQR9yvLPg Ǥs1_KcY&Z`J UKk^Y3U5Z]~P`RYp MQWiAFߊ ;P&PxD<qwmA,Zs n(1_a嫄AEB?P p%F׆mL_kQ?ӈøݏ{SV06#^e5nt v !zo{R}c Xl.Bd1p3u۹nUO%^ u:K@_eG9B"V9<]̼N7 ӤVtK^wb2{XtMe+e0!b_zN 0#Wſ'x8ES_*cjI-wǟ%d۪Qk7षkޣim*OHёh%SO)^ AW*<˒,mI6.tGX, `hh־q0.9: 0[[hJg:72~< 5uZ냫9hd:"ߓ4AƵY&wn.#([_g*Ū7.BCghkΜG986|NK<$XQH4^ׇ qɵsjs0~)m>(V0f[ݐ9z([XdY0Aãi)*AQNT(0yYWQam=.UQ6Rҙ11\C4J@LyӰn͆O95sy(oZzppGa|05^TxqTD;I|YљE!,*ō9v.͈vBWhJR(WZ\]`*Xdeh|?!|,^,DyI!ӮDމ7HQP-4<2|XȚ;.[6(CUDZ"H7Xcp*1,1I/.bBPG3[\SϪ.8tH<.έi>ORlPGXoy54I~p P֎8ᶯ~ԽMN̜hwhDiq2"Z:!W¨^nG8.{\NPn-@g,BDtRՌ@H%u0˓?[d/Ba%}42W+GvM=*ID@O]H9O?nIh6rYqIE- 3J7YJSaxY%HHʐ#/DX@Ug.=v}\mereS0eKӌD~3DzNhwt{E4zZuzYZ/ (M)a X)\:47%^ *oLϐ1lyU&*[JDIR$R73PUA[֚ӮLۄEf2AVo'lStXgn4a5C.`hk uɖGYee,c"t35 ^:6s%F+4=hbhRel'^~esGh{ۏ{6zDH:*D S"/Ÿz=f878HߤQ oYﶓ*(xY;\?ٺAlօ~VH .'ۂ/dw4lg_~JJ Q)iz]%}k4EEQϤn% o2:Cg{/fyU%f߲UKŤ=X4֖xqKbf\1\DNv> FF̫?OҍDιOR6 Tsk0߁Mc,EQHFί+1&aDNP&1ņ?VL*.vץ\/6p] ^ڠ_h5sebYݢATZ7{_5i=$@=qlslW?4%-R3_X<#u:j2_l5cmf9'T&`^X)yֻYq1.J7y[_Ӭ̈XiFof7FJAqE(z }S 4j"Fof#9M}b24h7.ʸfjSA-#g̬e 42ĕ7}҃A(e:e5!?-|E*%W: rQwyg5f^ԱzMvl~Otڀѽw$%\P:0]n^]H˫Ml"J+c3{_ٵ2چtg8*z<=U\X7.Y{CۤO_@PT vS#zAmDf!JC HYJlH37T*{QBKT #O JW:(>޲W|3r|c):֟)Nu3\)q_?aUTgc{ gUtygq#l @CH3;6P B\dIfĦ#wah*^/kXX *Ux,ا݅6=?ܓ"CXF ɔDuj$ћx}?A͙R|+qX4ČBP-ֻ߽aP+uQ8^"S2eWX]RLmw V%SKIcg֏7 R<^3ԌKc&P)fuބ [L|wX/,w+gǍT!|[?2 "5) iї֘;pʣ D(^cvy}&RDf,oBț,K1ȹƢ’1&"F5\`Y6][4Iѝ6d-q -nD8HsGmAuv xl5 ݼQA̿ـE 9؃Cn{c"GI^FC --Hei,NJnXwm3^F HZWu|I/|Kl9c%%9T̢⯸,HeyjX$Gn.$@"!ӆYO~e(02K&IڄJV hd :m1 [$KYNkla4A3EMGLOV^Y M2?,[AZg3tkh_ ؉h(&#s]r񒯊+A@IA1NŪ?d[bépxx c9uk03Vpx"?Z m&NzjH'B1L?hF&/eO9B:yA,b[)MXuqQrAݱ 3 VtLL [v2L5qءd(:ͻxz%{]02P)^ʟnyAB|Jh|6=LrX2ܻN?q tl(5IxXl:( Nt F[#܆+ u{DžTҺV"=Ұk9}(WS,/v%.݀"RpO.M>ؿ#Ϗ~uQF,ba]H.[.(#Jm&R=3 LE3~(8JĹZA'k}ĩG('cQ*D@TV1h8ph˩(@?$ kjGhdK[Q@m<5FJDaS䑫 VFRMI CF(28`i{y8cH)rN\ >,ԍ{<~NMZL܅eEbA> *7&v!7hvQv1m5Hu`t +7|47ڙV'jlC2opV x>V9*"̲Yո]t{rtkziW7'Ӊqu4k~R8!xC>k2i0]㤹zQ˼A*bV*-p[e'JdeDZdI nmPw-ѩ w6;.n[c4 >,wRx TQ@O7mG ̕X ;L3,뼳hk~%#GVRe7=߃1c88n+i/ts$An_cHܵ=OFCm49|AjT?'Ý4#bӜ'# wOwn-_tJPS0rX4\p6u k=9-,+Ro$B0"8FgQԼwět("]%|=bs%Ͱ bDIĶ@uQ61M#R|_Yoͬo rԐ 5bĆt欄ε/փA{lǥtk1:+كBIi' _KQ^V_Pk4Qﲔer^]ab@(I{BQbܧ]Yӑ,ћ9^sPydO*^BiȽSgv:uMp+r$sI-!#p$Wٯlo[ @&ʽ;@sl=2 lac\=՗K`VnDN%zg)b aC-1wH!5\9)1{*zil"DWѣ8q&n}ɖ#̯0? Tǯ7Rw2 a@I&N[xQC\+n۞s3]YL,1369Js)l|ұkZkEn;+. ևM <^P1/  U:?QF%'s|M$o \]N:KH!ULfN?LB҄ap;h6gW7 K0d. CgC/,[?=LEY=#>*fW+p|,1nG >-5aXMo Dņ)y$Q^WQy O ]!u$O2r`P4HZV|Tj #Ltչ.vT^s'Y.6ÇZb0O7xN @ö}/%te$q=EĴ7"տâOƘBo噀3`o7q/a; gS(ʪd __E3ّ| BʒC]&/0.H-Jc`zhsRq)I$잨N B:r{fK } /eƘ3)@ cca'T0ZzK yBdT֦@*$w ὛpQ+yCS61E@Wjgv{= RמAl+Y㓻:h/0.5^E4lՄ?֖'l!Yv3pZ *ͻ>ȫ$2pHGr!%&ZQF`V0ƈ-I2q|vF~1ds=L芜fOvJZ7D\Ai2jK4/'yBc1zw2[⵭2D7]f!-}[j+'6utǎbT}JQur"hDT8ĮF&P##hu-`Nlu{ȁ]F[&KVM'%񴰇 ' L|*ƪl} >nqIBOzZy`] jڙU != ud<(8_SlP,S:a ?CxP`U3IrlqB9]v7KuvRȐVHVɶ s"WSڤߖoQpoMztE>Mk]Xdx|_kF{YV/`n&:p0Vͅ6VV+& )jKjƅ|=j:3R(DZSwxmf KptnN 'o4R%JLF<힍A;G(6ߒ,51J,T漳ڭ/1:E/mu}!eN}oJ i`:Xg=Է9.kAiB'Wi~*umWO{IKsR&ʵuzht(9qe/׹&+A)YkW'ujQ5#Ɉ^ N)ʾĎ]tģy{-н+yT `H 0 iY(q! z*ٕKͫ?_rC;a `ܗ{'CWv~Sjѕ(NzN@Mpq9>XxA77_0a4 PO&`ŝ%xV 8~%VyNZa8A+HHIs>nT@2,B\{i$㋘H9{,ґ}K|?xӥ.g?V{(6 #@,׮,#&p8H `QFt:I]D" )Q>2>_ ZM`bo"gT{6oq,  a3B5~+n} 0]7ytۑ\nY獲#.<*wZ|c<߅.(sMWU}D\.Mo Q>e &l4hn|XJ@36GVapGi.jENpe[jz(nQG2' }UU]9[֚?{P88e"@LjZIUZz#Ø30;A5֖\? RAh`wp}¬"-ּǓX!{̚Qp 9uhoOe5vK,D>BDS٩QLK)f}ܵz[?Ʈ{@*J sTZdOjhKђ'̂UuN`{p)%^g;F[(?j50+J-9+VCG \EEv}!jrZs*8~[K`qqyo([ӍôT}yyɰ[Y\V3Q W21 ʈ0 >)!h9U6rICK4K%C>MAX`h>V5IE ]T-P>j uIaslN^tꤱI:a2uZy_Ktw}߄ǼM=c+VK-[(R%X2\|=bf~v 2.@lTSIPOt/uYVin`m cXMy]HtFE&f`!fp9A&r"Pfd5-ycKH)ϸ_X[+XfbEc\ [JHYRZFƩn n%3X_pZLb/>q`kYG %fރqEF^(7N0g](F{X g9^z1fsdY3\i+5M9S` ysD, d a}72lV%Y@+їMC8fLRB a#=o18𝖁D. $N̰zU JntE@$Z";gVxlъv*؎\,} 4b ]2QkuO¤} 9)a -Bz-vz\YvًNVIk \D-6w23a;,8bw׫H;?6߾n7}kL<AѦl 39+O|gB5SV;wG:9 ޘdo$c'%Fc C?[@!1}>&f)Av9ow4ṃ+W))=dM͖8霽_SAƇBy9a0qC4mQ!n+}~tP*"Mո`4hKƷiWR%`gu͖H1pg?kiaȹsx\KČfǃ,@1_^ AB^ܓ1 y#\S?Ta9V:y./٫ Đ:7=Mό=kȲ$CÞڼ熚$*dX{ΐ'koqa|ȣ+oS O y$T'P:8xAG]jv_lP~Y@ AŶKダc"ϗPD}]V#cud 4 NޮgLpiV KژACzLjZ'Tl;b :R1.3C >Å9'DWDYсQS_^D ۀts5TzeU;~Ս׃X6#>>.^y#* 4K*BP ݸQ#,caJԏmZW\U`L|l*Avcf*t}N}_YփpHsk{B|Ɩ&_dĿEC$@ʘ$8{!U^?22RDЌ!oE 0.T^ OK^k7R*T_GK.oX+L<`U7Rͼ&1W%Wz󌲭ZNє;[!UQ8/aI+Lz"` +}ſpsm @Iͪ+W9mbF 9?ӹ"T5VVD|GhLQ~PIFQqabV9[ouN>M00v|b=cl۞+ek& 9StиhgAPڿ7imxr7~Fb"j1__>͊<<Ĵ7:| =d,l8ZAlZGДVvxBMh}i֏pl aZKXuq"Fjr(6Ht)L~(Ʃc5U@d &IKІ9Z4߽K6 u+GkX 2޹T`*Qw߬;¢xFNVC-qWxJPS@vmI9^1SZ | (S|‰sJa'jBZV)ʒ? qlBy҈+_TF\R=2Fh/:Gɀk!r!$)"܊T ` ċ>* l-t–=+E:)m5{.k8O}zݙ*>k~B~Яk|C]~:(l= H0ydw߀:4O 10Q|:Q>>]m,oT> pĀ RDZ5a5o͙_o **$qA-~P'L49E-` 'xu%buUe ++ 'lR TԜQoW_ED<QaV)Cളqfv$(G;8}K+T-w%%0\ ^|eUf5 #yQ0`\NT.+Ul>PHkeI풬k-cT`c4F@.J0R*0>ADv;̽u}^W<$v8U/Ţ&K.1r؊a3뷬pqϏDJ΂^?"I+(iʐ}}@ʷx3tHbN = .>UQD"bXc۩V09)@ޙ,.[[=@ծ<ߔEuz$}jI9>%\2X`qAžp9i_5j"$njתbY ;lb \%02( 7 3c\!sfwe`cSȪ}4R,=b2(Ő{VfE̶h.dtg65K>ghrĬl5ts>v9/_#4aڥ97u4ֹ.HUV (>.@]p.>2!&<4qsCQ#ˬ!NCrPWf&c4L5(ٗr5c$0I+AhHG0(!qAɹমnҵa@HN ygrj]@cY65:s|2`5`-rtbR~p;C;3ȑ54"ͩgιtK^ڎ5ArgB*c['4FLc2F)=ĺ(0o})I^d&LBdz(8 r/ g=E 'OͨQԛo?yi+9FBSWUPݫU,' #,Ѯ؅|_TZ˾"`VwӼGqVޣw,#6oRѺH[?k:ˡt@?61dum]2ζ*D8\5Tb-.f!h*RVw~wPNRhH2Ń7[M'6c/֎!42!.DDz0+A ,BЫe RxqnrDa7AWDJ+@NKZ#M$Pscy9X~k::+2s'8E PKԯ-NhDmTaZ5MI7a@ݎ.``A4\`k5E8+ifLo;".,kV9F%_|M3bpo?U/8[sy0L7"1pbg ggyoT'4UlޜUf[cWUԐ{sk[st]U\ r ڬk5Qd%sNF&aJ ~"sFőe /lتTK{5iF0K{˨VI1îxTC'Ÿs>dz;nes)3 NSKo^WMT;yPtvN$Qo皪9w]NׂIY;q=68jӴW:X;j5=텬 E@BسIJ>/koP'PwsQaWF,͜fh-c)v Â#IQ@#M@Q!APqlye jC^BA;pK sӄ */MMn">.{&,L9js?S3? ߝChI$A\^DW@꩟CGW|ioO, " s*"c'1bo^xe]uIfQ@{eHO㕎d $llwX_Vq]R1g:@S).-K9R@~'#B!;?RYxdqN_pz<'+B)Q S& -bTڻ-$oryqG{4"]}i"neKM٭+SYZ+Y#2wT'AhY1Pa\bamA3CfA2|373vtV9ʡ^ }Rz'l;47ֳՍSQka{M2£phJG0Q٘4F?p9ïb-d>;Ue<5ûW%=#뉈d0pMaƠ\mkpmFC 3H?+t|iZ$;Lg@(f΂ K[z耟ṃ0.%F5]`hڅ_GƞN`gca vZSĞ26$X0G5&U@+_0Ri4_l: +LZY3<뷺@F yOCWshqPNÞT+ R eI2wBƹ5 %ZI[ǸML!D6iF0Rp6#\dk}K5z$hO/n1*ohm/*מSJ1zwYu?nkk@8Qg2ST<][n j-.)FjXⷍ2^„fZǙ#lp,b{_bw>V4Նl6FSP*?> fLβ%cI=B1viт}lm&"aANb*2%l2mh]McP \LLzA:81kbn5;cgwMIu^le+A OiQS`HC;h]k#V]lﻥ\ ?YvUL3ʦ=3EOOmU\Ԉϖ+`v@s7k^Ya.ZݛG>aظf ׬ZkmiGsjЫFLPP(7%RəUA$zǧ|Jfn#AR6ȈyF[lljװѷc wڧV~fck|*b{H?g/!"<|~_:ɅŶ PJSؼBmL/&Q']`r)Q'eVXIFwLbXO׹سP} `)ׯzd}0k\(MwdBZ)csH5啇='WxG%e)qR,JMŖ'Y Rj4#kx^lihvr!(? {ZM``~,i=a%gE?Q,aгP;8k ڽ/κeV$vڞ,AhFZn4ϗ9t痰o@Xz#͙qe'okqo8(dPkHkW0@P`M]ݛMnXf H!#u0 Po]IFQ_rI} yQƆxr@OS΍EHmTbTI;f_V{`ךt@` nM:| GQx+'t >;dN@❒ t_xo`"\R4lԤ $U}68wU֎fJ[ 4i8ݏw>ԃ KQ"dRv2TSr G#)ϸ=P8ADgtPPF;/sK]tXzj@@ 0>pڕ9*01.Ϭ45oI:ͻ|_W ?2]؇M8XJh!;2݀HB9NW)|t~ kB;W_%EGmAzlXSS+MYM{ߋ|N7(ݪDz2 diQMV6fޙf|Uuoi>!s_zvABeBHK_a ya{#-\zs1I’Q`9U*q ]=~\%UFqb^IcGQ,\waZXp̧ (^ ф<-9_9SYGXhA 8(5CC7sxI6ͯRKI9깏6_!pdҶNl)ɣf OPJ< BYjt4XU]Dqwi?OXhzWA1Eê_ 2rMzb_[ZY"dA6WiY_݃~3-xb E`Md?T׭uXʈWnQ<VqlApk?=Q릃g~NZ{@h0ʛƺ6 XWJRؙ׿0 IE(.n6~yI  3DCJA8`JF1u jIho#8 裏t7L;O ~H}T,^{<25{uXkte>}cUy IvH"'|Ddj&Avƞ;Hh:aK lZ&Oט(9MIku&l,;J$}u8LB2= `Ūv(_$]_z4X ޏ[tn\`3EU$.v(?/3EW~JYhތM۾vhR}~u#XRCEGɢ+ ieAW҂7iaRI3S.ʾ.m#΁81+RQŕwD!O7ڎhI_TpBBICcq%QF.T{P<9 M)?3KP:N$T-2ͤAq$؛` l`"cB6`/3y*8jT&$.u4v;+CuԎu(Й~zMIh0qYYn(U\?XDU6(5?U`͏Ӧ3Y̤<ə7 MK!L COÐTCbuGG*B5ܝ f#n:-T>}#Qs :FL$@bԾy 32M^a/MzsMZF4nK]f3o+̊]ÌOq\1%'ZS*N#4pY!|7LjU?IJUB"I?FDI#ߥL [g/`$Rճ[;Vx^FL>/`<-兇7ݼփ1H=mTgLhV-3;䘌Al8W0ƱA:2H5t`z#<\:"*}O<ڛ ,`}# TI>G@j3K} -HxK|wγM D)bZ#nD~Kh#.=ۍm֑ίA$BPg9Ů6t$>aZEɴmJݘ:3'6X?RqCMcc7%;b$Ta}&``OKbH. S~uR籍c\FNhvydeg׷vTEQmps-yضvR˻|*95$= u]O`0ю$4.`;C[*2H9zxc< HY&X,:p~2"on]' ؓb@a `V‚͓ a;{CQvv}M>D Lqh n&V"Mpmh_T7!cqKqiO,zHf-+*rGi*]= "^Q) ] WmYF97O[N,=x1ƖSx6EdqTsLF#x!cM-8&߃#Ʈ 7)['Gs w5x3V/n9 ьヅ ڹGgIBL@ͅ~)ry5X8G&$uk"yTp,U7-j;SI0.lRa-fُT]=.)X`Y.dض`գ7r7j= iiQ/-%b-oBrKBnKܕzm5A-Y(`ₐ24)a3'͉ 5Jn< CDQ̂k:{ai ~C׼"vJ%Iќ039&MnSD]TmDXX]1?%͸6w}W8E>o k3KT|al?܏+02yW*hCٙq~my|#Ч L8zɰR[IF4ڇt)E,†BPbP s%#o?{owֳJ>"Q(Ar0V+qNF0ժMCsX=+}#HB8kQV%E T#8WYehft+#C'o7_YV>(+,KOcUfR}>3(cjl/D ɺv_ۺ_2,ɰ)t$%S˦ :~΍US ma!l/N-bct1z?D?Ĕڲ@7j4Qt:^~|zUQe2NYt1zS"^jS:o\btPQxȉ{@a6|WϯB RR|O朹""(UPdU 0<Ӈ{3<p{kp(=X~(0 ɂl *Lnuh%lŘj9.H@ v(0ON0EY?<vH*rRzʍO sycի}o0SdSf+tofs;#+pZ49IϢO=yo+=Pe"}P)Lj^D buDB\cKo; h m:aEe8}e%x%?~%j$96 f:ow)mP=@3^&&ŖxhC0祽™DƩ1ھ*kSRtW2Ki.g8tan JĊRda Z%^XcE׵[v<~|Nϥ#˂oUY"i PXP{WBtZQw>olG ?8?=fS*> ܾ-&4[ ", qB{V2^ DrDIi[C)!_9h]`[Bp#M &7)!Q7:TJl'L4˽/zd,D>ᆨS"$FХPws9cK0t~dnV.&%4I4o:h@Jg 4q!|h`V9 j,uy8?o-ކ{ځC:"wevEi]\rif2޲, yi33ܭ~72Wcg!@w5{+-Z [x>NV*~OYhM֋A3c."kaXFei]26Bnk$;!jvzic8(~rVm⼍Ep#.82nHD *ӫw f-i/y_vwHU;T@VfU)Q<B;%O3C3K([˂OBmdϚ,[Xj¹%?p4v(nyNk )|=ՙOl;P6vD&NY2@0Y5sdE9|.M[ΒnAj+,,BG ֙wRW0lrbdಠGKLB4[abZ Yz~|SEC3hW7#WDbq(޺eؘC9 Wl;x8Ao/U&;\;K|ÐOn _PY3U߽̇CJ%:ȱ'%-ʛWƈhQ)o!IMV^J.@`Qj.ǧRU}\~j"MRf.RI?rsYIVۃj" \X V7 ?"Q~Vz3^歗9o>4-6+$W@n;e0ED¾X!%K yEy=ϟˆ@e67t; v1mňuҸbZ[ c  Qw=n Jn2S8}eُb*^YqDwVڥC^0v8 sU0Is8 ߷24~/*aScU3! ]]Gev}EJ;#+o]Lh|%Q )`,G,J]Guۯߚ8K|Q|VؼN/wD[- y3B,HU]NV]vdWFi h5daL}Ijxʟd۬(1jpx{({ wÉI3')[ diM\$MI[&(tNlZ!&w=kfw$I#:FsMļ2"1X _1!_Xʀ}ҧ倔նO;m^ k!諾mŀ9\KvG6ZHbʸϮf" pJ*-I2$X$I~)ESkorLuOY.gGs?cQyW5vt $?i'x 4:ijlxJD?^J^Me:vM 1|QJH(8Go2OR⣸PN|YlѢ؁px>~mRmAcE2AU냙w~ƩaTAw0Ձ_zn~A(od_ bzrPJs;Lhso 6{HuD+z ~d@lz0K!UeY asl.{`BَM!|&9|cp q>Md$+n+mY-JJ{MɁ,XOjIaR?NH3k"$ONW ٠1g귝Զ}er| ߍLZ~jh $dl,\Ok)1}tzhpi)BZe}ςΏeݏjsjt|Vxsri8Q͛lm4IGHfuǔ`#n=+8 L$)UV] 9h!d=1[@xGCl{0TvvHak_BqNMB(JVsC)Cp+gK?!4:QneSj~+2ĢcIi۹0Xm28 A0]Ͼ|ޗ~ 0yh *{yS4}o7:ǡ7 ^7 V, _\wq(ytEhs\:uEso䭉r|r, zŎU8雺kDhW*n~L$v հ7˃ v=Y&4(ʊQO!ٓl=*gܼ'"f_̮SH|Knm&mrzySCf!_y]=?a8Yʝ^W;V+|Ez#;Q7ѡ|!f`y#~J8Mlr^㆓pF84[VO[JO!/mTRn pUҙl~=&SYiJH>~` VSTYyCSf*ʹ9F Teٵޞ>g|Z[aHqhe>=X)nB rU›kߵ'AM:e x:4> L=i݄~U0\;:/zhbݥE&Y5ZPs ! =9{Kši5;;.[}vu%$\0 t ehgѢDי1F}@mK^-8}QbhLzT$@/*2㑼>/( /J5o[1;0?K^@\dŨڌܺKq%YTP؊tBͺ?^VC;A;W p]ۓ$E֒>+|KW.rH"2(ELp?;Woq4 5N}j{۽&uz"Ifе|q%y2Ɨ T*@ZBFNN"$RZ5W=E E+_wEI+-,K:"t3>? >Ε., l;SZ!nmV> d5iObn#2}2폎WfJerWZtSCs(M3H E3LV0xuAH9$H@'XG@W0E-YBf.ӎ26 JwUBn'voΓڬJ.gI"@Vp6Ă(X9B째[3&2t4T+6wY8'$zQ;{IJ(lNBy i|k%bh 0;sШ8۠Y"t#Z!I|m*c09Ӏo3)JY[!ɔO?*qޫ)EˀI\|- B\aKSb?3jPdpρeDJΰ;rNZqƨg26 tg;۰xǷC9hz녆BSYQ1A1f$p/Q,v8CCY3p~f}(m\иymp0~Ȁ;୩(5 q!PL#x@ei+}NԭGſ.gNJz'̈́;LXFT#Ŀ jh f"]6q#}wpa@g*hu?'}&Mݒ6؝7-RԂE3T2yPd.T4[%D,x'r9Tmmv/e7MD҉;dG( fXSBG9JyRĨmQ"J[=UZHTT^0#PLϼy²`b70c>*vr]+'M|G~wܶWӎМx^7_"l;;8l*¡&Pè2l P{ް<|4(UYHv)r[r*Mӕvq\dVL 7^_!3ͯ(h}pmu8g{og5+{h者yPxpFኧ2(b {PM.q8I+z!e[3#";+Æ*lV-@_vL)h %I3Ua| ;'up%S%Zxu>_r DDVgO ^!4 5 JfH_2ٹӜe۶U PFf0_*fmP YpOԶy-jxT{Rc${(ڞj-LF UDYc{>g{:krז(l?>]uV\ k{=t8Sp8(9(j.\VP^ |ߎۘ2UT&nrB\[N孨uYYy9:Xԫpё3< 槏~} cʯLOUf_2 YŜy^h*3-HozȜ}fOw ]zPyexK?Nf*pX{URz0&"%z ;sV l$<wNFӇKVHSZx%Tx| F W`/8TYP!"F8x%,(nb%bXA؉di-)|X DKLCN,*k>jBhX7O2*WجzܮAUWo!Oڑ:\]`q Z #=e'H{ߣ K) t$+J!}I`㱨N@zvO0 +pá)(8)Y[`/#;k)^r>GahQi68F{^bq3]Ug6PWtx8obT0H5'0Wcytn?PJR!-]X1E,=vY W/{KΛ^`#CvqmzH \3fxn&5a.-uLPm%;B/,^ bw5M{Tpen;d )~1MT#morjU8/pWCƁoMF.Y&@25.۝o^ Ё OYUR;o}%E/J+دt'O^^0,z(:qSsEhqL$z:pZnA.1A1яC9z) -⏪k>_xE2!x- x8_Q@mI?q s .2}69:8#xļ76eL~g/4op:" KﺿESuΙq=i25E|vӾ h%o.և:8rX^J%g eX*)=meR'1iQ 2Ԟ-&/P9Hџ}m="} 8jK Fh$Dx ˸isxag1<3VըB!m XJU2+ū:˾^?*PR-mu{K3\/.b/)# (*M{mYR Myt1mN-sØ"Q('cZZ0&v MR![dZϐ䨱1j,{&-n-\C+ѡ xY |?Ö3zJb w8_g4>H'y &`a% 0~aK0%R~zY {}qe9?Cy{V)ql"axqZDn~%O{Rw@D |P[w8|&F%k5?9za5LQ '3gfqA TWF2@]f"}=TiS2nxe^KpCk-rƱr [?)}7:N #bjWcCʶ˨ nM iA]KB ( eYH4k}L )Lzwl (8l~kYe9.OPhy1/ ; ̴r6%Iujdn{ oĿ߮nc5Ӵ!p B߳k&NES.g".F zM/ ^NAY7&Q8 *}0G)lA_P cyQZPhmk(;BJB<͓ezM2-,fCJ^7pP^ $zU`nZ'rZFg<>1k'Na]>}6́51m !Z1mmUp-W_pmusԳԏ-us8»7jV+<@z{CNj0j(K}&FOLOp=IP(y;8nv2Do:eiҖWnMnU;vFj`-pf7>ǮMnJ9O%(\;p@VS,wZD[@J8` d#3#UƩ*A$IڂZHЯ"QUZhtHk I3f8,昱Bpq/Okp$7+_?[Œ,ޢU3!2'WM~ .uh d$d]zᮬob%g[u-oM9e'3l?[!*j۶;RNH5~΅fĒͷyP;ڳڇKA*5?#HWHGmM hj[[]5 hpQl 50YKH;,V?hhtÑ S>7D/gJHY43- (S1Eo& ֹrQJeNom"\MNP.B+Ϙjd$]=1IXþrC Oxokچ7NGD01Gapu q0z7g ~)6J麄˚4N/<~4tO) v=%?Nc's*KE{ b S:zq̻Ffsao^єyzE,BgHU?ѷ3% D[on`QIyy m.*5(]}M2Ci]E6ݸ]24C5Mr%;VȆLS0´MIAZrYO7\#t8E+$DƩJw3)^;Ռ&6HDObɒ "Q .ƙ M?)@mɋk ~&%7r46O-aN2lg)R@&LVcfdGp^ Ѽ &s<%ie?VֶʩJTp~޷72’f՜9N5 T3_p.pQtnQ|2PvUqNzb JMGS:LFa0lzZik9[ Dɐ 0 ]XY$#-Wt)p潨av396ca6ݡ>@`. DBtEp\|3 !tg+_Z R}Ђ)}EMG˛8icZ:LX.aڱl3ҕ,92ϟ5n)$~GB+JۙN܉T=WXtAoiɮ)Ǣ tP[_Q^DQ$.Ҝ% DUXՆ`m> Krw_!qQAõuۼ2K)4_R۱Q/O/.g|Dgfe]ftwx?JJvB)G: }B75hУ?%liDqaznuڃT,#\`+èb?Hgj|&0෺[.dF%ʰ֯M\hNȹ!t4Ǵ25eŭ`DlZ)Xouƀ<ʑKna(\~ؔ<)aӊƨ+hܘ(}=Ɇa[o `6.CYּk= 'g`o;NjTdЉ ̂>DB; JY"}tdS,= ɶs[Dky2~A12.{v89'!b~S|J^++јn9w"򘚓˿I^ꂲ ;K'®a[C8Fs"Y؅J troWM7_@БHYU4ѢU)G:וrJz^Fz_3%y(re& wa2U?pӪd:@l_e1 [Y|":Tï=lf#ehsQy:?#Ƙ i\ɯ Tu=ʬpdtryb8я%=VjeOƦ%|9發SYەI1_PKrn}n4PJ3=&Y?i|+H!РRIEP<'.fSߤ}|+A+\,V-IkeE̹ &ci6욌Ju%%x zE$? G^ S :o.vD<LS)@3]am2"CyנzsdΠc oB@Hf}Ki|Z y2 -\rITZȩ,DC-pƶfO)>6\N ߣ<,PIDNG2O.\TdQs#A>5B`ᱱĥD'Ƈ5ˡ`1 RZQH#JOV[imTKĊ^GU.9#ux i`jkm׺7ݿJuCgip UCb涮<9nt|uV2XXQ ޞ C`>)V-ƾR|0a<*#ub$%0]>)?SH ZhK[.%J9GA$R+o-_^:!([#dYB/A>Qwu񛇗Zٛ|.Okeb8Ltb"bLZIl ՐEœj*Zf7B(>ŀ]/'yw4 pLM"sTlaqNZK2}5@at0ieo%qx cJB Ѥ=gGtKTSy_8(¥wl4zQZ| {ȓ^DX4Yx2bz,^mф@8a\7Jnw.&'J*c>|Zy8cz8uQxZj՗{poq!-u-rqv":)ʉ'䘯HxfqPT@^/DM`wWW ]sQ;}Sl4V` G!7uh_s;{tc'=3[hWD;PưCq_,h -9)F\wPNOB6*eCZRhGM٧t_.Egq6SAE:_&wTW^J~gɋR~Ma;)v.yʘ+׺Q.:]\d rJt2݃y`̣ Tx~pzuAb?B &h!5+#A[\}0TT`ûUY" _ékKL@;W>_WG__˱}9fS X_~̪/t!+Nx_bԛӣCNRLlh-0vgL>|c7gtE'6geKmTн?%\_E$o>o4|b%"ԢܝjW6SWWQ@F2ffX MSl,+| L_nά$GK})ra2U/Kw\UsB\N× DƮyi^R-9Hka`4Z@Ғ*Åͳ/FϖI_6tPA}=)  Bi{inI{ȩD;+>me ׽\%S/?܇ѭFxP-dS8'b(b jh]u? [Y^)7hޝݜ*sHinyXy7[z&Nj/ 16C9fF&NC<7}q ܜSG p(T:@K0Rm]%SBwUuFX{>ތP14k ,쭆njru~27lsi#`|}/T`ehF!cWRza:͙F ,6]v5AȒ\] KR\@>\V֤i/Fݚj:}HHَ3et ~ 1 g-k ޡ >p+lyogtD|0q0B\6c$/ytzKCYgy꠫/.ʌteW9!i&rS`HyC&KJrX/Er*ڐ2Err~(@KD| Tw%, ? (r#*Uȅ=P >}\bɹ.9H~AuY:H rx肀6 dHkgsU\OӪ1R r$mǩ{9775ce;fJL hA(xuծ{~m6-heC<:x9MAZLԪIbg:!h˛fDw?>ņ2Y<'ڞ-ZcUEvl{*|&V=OF﹭Z^Jq#I됴'%9KJ" yjqAmr1Îg^\Ow;b)Zk*ia!1z@^caI_q!Xzcr.WYIIÀ7eS9i5~FCECn 1GX*s` &B0Vo#;1[r\LP\+־>&"#776d2u3LiN |Ya{ Lƕ^/:Ds+RyC_5/n O (6}<r%<7N%^v5֚Ձy, j*XTT=_,./7Q3Dz8D{y\+wv~ئ7es|8.XND^+M`s#zx\F;p36F͸ng}|LdFڃy,'lb_dv7WTek Cu."SʪnWrVcJ,gX#uN d6O碭Y(V{u_L1U~ *wDAWxwJBhsRsj@S5kn8Bj$7KOM5W֌@.r3 %r ̼&CFu5ꭍZCփmrZ#~  x`)'G.=un^Ucs)B0e^añ4T5' (d1V*og>@@4܊䵕ؿ9}Z% (=t?->@LJ[HF'6cF\_df3-*&R0l]x>p:~ KDy@e}U*WS8p 7[v/- ڌfbvo4`Qab'8įu˚) VC}GYqSwmo 5!hRS#Yk.Ątv:IRON `P1n_&ͽ =5k5Kvx % 2njtKֻZT9hsJxAJY0z 0Qɜ~< 9J[NԲŀ$L>s Ocȕ]ҕ8Rol[w6:Ý\+G_K?&dehՈw4%*ys3ڛgA r7yI.sg'1hU5}GN<~:Ű8\+C6+`~+CZ#}1]c=ALO#O.|i.`vvq\,XlT*=u'YDokG[/@3,̬f AǛ{FA]#03 uÊE qNC%`PWfD^u+ hCzE`5s~NBT[ ѭNRHK]fh2&gy;f|PsWV+w*Gd1xØIhǨW܊}xC(F->U},,XǪֶ!ju,2CO?uI@T H\[i/\ A )N`@5/VceRzFu} 5 p$*cuK(/If IgHk_uCʲŠ/a mk&>ЂdOlKqjxֳMe_#j5Btހ,@z|t K7쉂1,qun' B8c]h \{:urV 蟧9ƕ\o = ʄcl pnnT8jtr*/ypz kw /o O{ []j%ܰrIyݢ8o-)9.fd `Q:4gLa(j"r($L8l;[3#S暋mI(9]1v=(.P{x9??2G`jMaG_mP&3Vϖ{=~< 7ՙ6/B%0 n5(1\S2AbT唨zΗj# Mka+9j1scq ǀ^* ^I7,.t4G} й'EJǎZE]4ӔڗKꎱN1qᾋNcz!ѭǹ_n =¾v`,g,< M=rUEr7(B\A5Ğח3kߐtԸWEZsGKyW}D7:5YyuS=:Ŵlފ{ %f)f𓨺d)rNեBXV9@x5RηgX{R^ |K;: AU89 ןuTye_qolr&'U1e*5$y;>v.\l' M;xo麋vWeқߡGUI.M}:w`#4|X'.zf|XbY|&U0N!BS~L[l (Ė/EކNq }{f -7:U>$gu @冽, 0RҶwÁl2E=Gvn;nk >g';m;yЀΛ&PD/98]'DŽ4\l;ڗ2"zI\6ʽ3>H}| m_Ļ,/Cnw)lwB1^mq,ev43ڴpc+ CLY7q@)qK_C, `?|J+N9!d9OLDO\21h9)s Fkcupg^&v %TKH!A⎏1|:s5M˗;-eȆ5VN)k͐%jއfa |߿U͋ q@sA2I_WSŁRr&%b:y{(@rK߉$o|J9CjgiŎgLR5:& k:5cflħO.#8tAA[ M C$2%zLoܬ݀%:V KU |vW 8IFB o'Tχ6h|~7?_Qhv#څql5Aي*uLtE^T /5SD>~|àV0qV%ݖsFĹK(Z JSH_MZ|=k7jjC6J8*LcF.Gؤ@=VE~ITʴŠB}-y*j5,[7?nfw!u}kw~_4jJ<F<:>٣ASU% [(_ Ə΄@)&bm֒PkmaYCH29PpOTC$SybC95(rO?Il[ޓԆh6LU mr&;^Т J!a‰pfdӬTU{Asz&DC%'&s\HFEZyK) #-kz iE.pM= 6~_# WM&nfDB5ՌK3!o+*Fr#?5K%7e^~zN\X!H o&ް-㌦!2攒xid 8n[+IeFdYwП%>z[AUoQA*/wD%Ʋhv^=CiM2跠|bf$WaБ(xQH+0}.y |=+⃈:OpAf/aJ*+= iwl_@tF2ʊ7x$n0WIJ#6!^n=,F0)' lLpIEpcOVտ;ʿYJ$ȒD&8DɸZ<^z vǻ%k 3Gvcp_xbk5d Zn{.g+Cmbq3#'dR9O _yǁT (oE?K/^w%4ަ!G+ysA5udYV]Wkp$]S 83#tF6/$[2h7X妏|># *iN($̀6GaKkphH4T`s}F"!ܙ rB3(V$P%gz ^좯)< *#{?*k;ͨr:+÷DpG,Fl*3,@ըL^A8y(`H*ބ+2[9MUq"#rolvX_G4%a f)28814-y}U= ᶺO yZreƲS'_EXLM4s <L122EXEr:z =zlt B?ov p(2j Vv1G AahwKfuChnP)O6HX_D8󬿬 j2hbrLO_02?k|:" kA۶O(:ŔCKh"rT*^Y0֛^: ;1&<\Д._yH94[N{YI9k[pT ?fsk T4ym̓*Iu_`:ѻO8^YDR9*p]OF6ut6'f(Ȣk оWm6<+Ojw9c)G(Hh?,y2ؼ-$}^L+zfOn6lySN:S1ڑUjg4n$^Zk3}}W24jꤘ{ds* d *d'_F / v2YTŌUԸ [,(*3ȎgDN]Y:[9/kPhV^Q!2:.RxC*d(ј|9 #H`8sB>C$pXԷLұkNPrP&1lk '8UP͘UJO8$ 7M% ٥+(|Q] P^ol\u%"=FK4)grZ^KL)i}<t`N D:DlK-Xu=dfsZH+ /nd?zlN5w 'Q~ui'grAv[8.)&iRONvYB~V&|CXtQx|7~L*x b,[[it%+ۖo$[U+?۴ޕwPZ͢7zu/:EMJYi3q`% Uy0 |I ~'P4$p5M.ҷ m3-jffAv][r3&bH%LF+/dW[kSԢ׹\vNUwȘݟח4MOJ+Aмt9һ؟8B,m5/ޮl- U>UDi2׏Z[L>C+.4Go Xd+.}jUj3]$/ܸ\Mm4>=2h rE" o -V?WxB74W&քA(wd;Usݢe,+XNgw-! DɎ |b[W OKa1sRc9v,>2%tx83҈HyDniU(Y5z-~9:rz晒#A#nUI35Xck 7mu-HfKRD"(%TON8h}rK}&m J֭a5wY(Ғ| `du|LYdzzC|d%o~dnwC0ZƤC5>{l7-W8 x_9Lsbaն=H!@{NDp~U[w<)gwi_]笏}CNBdrImOgą<{7)Ύb?Pp>3a>"%8{y{_22OӑTvIq}u5"ۘ~Tʻ߭5F#aRCxQrG)և}~i c`)|y MR*T[N^ojrqBdrlqz߉}tpZ;=^  @qM٠|?0,!R*U# AXzt eUW$BVcD͈#QEB͗nl O!M"66Nv|WeD_s/cu̢b-Єq?E,3/=]hxtuHp{S(^0 a5 `tn5'JͿo eՌ׶*GGr)Spq (905.64N vuKx뾞 7.F="gɯ8^ይ`&{R(L%h[?\  L[ԩtlX[rzA<zMW*`9+iL"9Koj8i|I$$_/:hTEIyz!O(Gt%%hxFg8 iszi5*VCaҤT.?Ě}C`& W~DB{=C=21ܖ?;W ~dLACB4A%QBr>! 4  QQs5 Hf9#@+- -;gw+;`]s_c&zC^ dMRМ5**p$a@s({F} 3GQAe +:8Hy@,F++^;hf~HpfMʉt JM4|1 6I84Vͺ7cg:Z(q=$3WR5N2IKBX(Glyb\}<?;/iJ%Iy;;xyr*#AP)SM QC% \5@)ǝ38n5i@NmT<%yB+bDۓR|Q U&)hN8oXć@ͩ:>o V'A)#{E,?qz`C=\(\] ;33IkB_!kc^|Nrm@StqIC> .rZ9M蠖UERvGZ *=NBP$쮋3i .RL߰!H8$KARg<9 3@0*cAyGr>)n"*bP 遐~aS1_/s(ɥjǭraC1n1~V.s-j/^Ԧm!L9bRZ v/rmzq(Nn~iڕQgdne\.5jWyNeߪܰ`cKL 'I{d0k1TP?!m*ڠ%7 R)X!7Mߠ-Azf+j.'wt29$ `FUVK G.,ZБy{^ĴbG=@ Gr`-mȫ'e4eB/fup TmTʵ=JaD)E\Ĵ.VFcwfSBCPi3L" }nsp(jcdK{3ubV)_,8wW'c<~L'$ ؈_c@|7-* #0fj^0I^6AhfU} @@E 8BHQ({b U:P|Oi d5^p%/]ץ$/2 |8YQ5%=.8çh|a5iгe&"W u02 ||Ok-$L  _zB5oFmYȀs}P\).:_O;rṂa{7eP$9K^Z'ݎ-dZs/Oa8-l:El7:P\2"3WssғpcoVuqw+yN7Z]f7ul%D4 魀x6}򫩐mp #6 J5 'qO;{8% }%yfB8$,~ES4tj5↍ȾwIxX=QPYޥW$Ewg`:B i!# 4fvĹ~ډ ?qQȩPP\F._r4Kz,wᗵ,HR$NGky_]M>x,SR'&g#cU 8 x.gj8e {e|eV ~.5[?kaTGN!~?1DLl:撜K~7,f5pV6K47B_!R\ bM9c}MSI4aGg0Lt!:4S~ei/}f],FYE,YpvW.R 8ܸ\&< .=,!ۙ՗?jLAa|h[,•e}+IojPԳ"ީ_.@86TJ~$ 1ϓ1Y/; A< g`&;R`)ȐT¹9'ԩS4"=O'(cl)3.kg+̝4ŮA4WFKfl:,=c[A@ L WX}'!0Ku>3@ !7s88T98Dz* X,9ԠBG@?"ݔHR>}Y/'M }/l XeCdev 1T.^ϗXVZyHB29ShjlsaT0|"['Ӽ{V2%,3S9(sT@c1 RZ74=fP%+8.` " q> ӒBpeǼD|:PԲ3= Cp 캂9s͂MAF|ˠqb?u tq[g ty}DiXk$Usmw}=wmgj9b!%Ɓeª% 2 kojv^!|]1* T>^<] ]q2{Uh^WQ"%~6Pf}M5Hxj8au{*Sg&jΥ~ |IegVVGf lg*aS9W}o彮o(;gJ#6\A h>.:Ñ>hWuKhcTpuuآl ?o{P}3 e\΃\dL33!,PSPnX ǰx4C7{F]Bp8Qy{W3@_׏݃r)S3pFgR2xȍsB:źx5G h!nJ@^ ю cgyv*X@\qTJ!7 х7&juOq 5Y˜9v +Q%! c AL[b eku=9fM9Tr .bc@z6?-zؼ6 ~=x Q2uW\Ã`"?,/*rJ:ޣPoTJu47`=2˲tO׫D"ume/-G(``c]۴~ڐL`ȟ*4,0[ }QTߖG}lVj-~g> ]NwpSf>(F[S?ϙ:q!Ea4Rq[4K-|f?&ꎓ-$3UbY \Cv,i'%$PTvjSFQ[[mů3=-6wtd!^>< u65Ѐ-&j^8}.KOr؁ GS̢ІmᴤJLgY1M!%|a1w5aE\9sN.oA`f6c :i KLQu:xݖY qXVIK`dn1 "|׏0 ${( eQ -bzV :.'hB][Ph,߃R|rۚzgeN3 qE#g]cu>(O[WSIL%|2AT?$T)Tkt'>xhODQQN^ElY%W}R,||~>bzdŊL$iRbr8+Hz{-!p8Gy(r`jȹyqJ6 +.E"?#=&/KRiJbϢ,~b6nW,sW3AbGMsa-=ko8!˫^RG}@ Yu-ڻϿeSt[zP$!;FeP ǿ{GUN|'d%E8 $;6@$jrvh|v'O@y7PO->o!TtĤS~xDVFXjƃJAB 0)W)sd1!k2PyWH,=i3d Fjn3SN ^ oQĞࠌg!-{*BgߧB11"lzWb[vW Id?r!,S+RJJ޾G9 ^2,`o0#n)\)訥2LaOc iUt7[V\vL, zFmĆ_OvxT 5wUm 6KS+VR 4GS$u:Ef t:`LRy6sfg1:tFqXFr35ZhKɟpt?+D*45%hJHl!v8ݭ cCLToUL_(kL%<3)y?WxZX ԔkAw$pfFSsieM.o h3iFbB7x"oSn 'ɛ-{6~ޭ g ۯ-R}JQAAv #U z'͕aѽzz][83?u.ĖFTx oQ rĊ?8(;KVuKz]rVbbsy[b"uT߹+ 6RW/ DG&Vey9H(<ٵ4u׼\KX:Ķ LP Ȯ"V'O?,m1&]ywJ'HՏ#p=L汽̮Ffh(--Ojm;!8TN" @)*6!F{aHm?9;h'D,q/%m'0M}PuއԷ,}/(D.1 P|C|gakO,@),c.cM;e 9앒'5Z_jwX2!`fAZ~AN=N3w-<$/prPϬ{͝]vظmr2_PX?w)n:|7B4Üp UެP7+G\@z^>!Jן";VSZTC!Q=}XJফ̔ rHw@8fqv{+e|>w,wjwLTa77!.HWlO *+b!lwl*^UIi?_Mc J4X7%%ü^ msxUcgMԭQ߱$֬[yɂ'oK@0AIOZmCbD,/_.ܹ 's TLWւeBo5?]G}kTV젹e/!R1hM xb:ZnyPTIGgz7˫K >T;?ȷedhŻ%߀ӴϦ40rEB6?ά?3|C>+pl\tL;WhTvE%Os`Iв&[ 8PTc05W,KŴOڬX>RRn G:K_|r$bs(_^w&qgGw|?{ f 1wqӾ * 12^t?A pb65tFP57O݃ws\UK cWemفɦM`LsSkntֺ=>;Dz=kJGAt E&$ zL%cC =`6;}4|^0BqJ?)貁J 8s>I5SfyҰGJP-n8ۢ͏B> 좕gA}VML>Q.ѕUfO mӲ0(l#{*Pl5uͅN8(f{GA'SS-/eHf!CY?*\қߏXL4q˙QJ)w AN^KS~ిoAٺGs)Y]<7|;~m{Z嗽Esxe]ZwzMܐ!Y̗К;"L6MUIh !n~k1ڦ1Ǜlh+_KEֆj]p)y6}<#Fן2 |I`Z;XDPvfloYY؎Zz 9E?᝜ %-Z, *ij)q~g:ƋRvT G5#먴z=ysDzNVDXVkJBb;Xhe؄3-9*vpK9⛦0A[b+[3pxIr)# EHQ  >'L/TXV xo ~:!| :-ާOzI,\xK`T2ĥ|e<ѡ]}{IwO/5ψէ$?")ODz.HiP#;= c1.zHO a9[6 !j?z1h=oT]wK(Bi8\_:6r?)uPlkW؏N)sZRW0U77Wa}h5Rp uUh -ė4ªR/%0R^Vʏ1 n',9q(ػ4q(Κ2Nq Pre`#sZ51 7  s ^5y_i%vMcs-.%rffTDU )5&EK 3佒@C~yԕ<&-(=7Zz_utπbhtLp5g:MEz<=~`gV46`h V UMuA s{T@yQ&ՇCy`c*4-LF1_S( \>}#. EB!x"omM< Ki@jSnݱʙPR`pT|vnb`)z$ڮ(#2;rٵigLȰ:ǟ cߙwrZ䞾b ޟL+7ԙhu~D{cҴC+ڋb:WO1'1+w_=JRvTO=Xh ;kiE6W^ cbB3g'iMJ6 p!`xh,XlڐJHxd@̙4CՖt Qi&*ak^W:ȕ'vFEHV:4"Nᡠ쳠i@_s߿lv!" ͬ(6<ȴ*%M҅.5?[O{|t :GEWH} s?d'D"hE;섒WVJo$-nyPkwe2C¼Csw&APXpw 0jӠ^dAҤ X$ w-AaQHjY{9R˗sL ki4m9\:z4I&Ukn./ .-ztB;u໥xq6Ƅ!tItpɴS^TeH QoOZ)9G:3 u؅N]  {F%QWƙ1z.F80:g+")»9;gv NziD4B缛 ፝(xPJFe1E  ھL_-׃O| ?:SrL 1vIOC6&}q5珦y+\g YqXmACz11>]n7ū4CզQh~J$qs"nnŊmƼK u1^Igٿ9E&_*f!f r0=xPix,[A>a\]n9 kZz:m_C^7R@][3һ0PV77V|^,&?m>ii&(,IowjEy8g"g̯y%#Mr 1a+d-鎷sN/qHOvh c6uxC|^ix#S6/&6F Ħ}c/Y|=uW.*u S1`lu oZ%]QXvkb͜rEB3W09kTr^BWнY.Cw%,ݽ)Tވ+ZT*.oc3t{OfBE G yoAzM/9?n>uwuX80M1e3GGGkV|^K)\Qr?7ߕm&Kq`< p) ++! Ɛ sڇGfn}B}pQz ƿgvɓOE]xs^Q>Rq;ȡL95?qn4$"Wgk6erqjyr8$͈k78L\ILmxk(dzky .'ZG(!.}9v9*vW ;@;Zy? Ǽ:ޒя YH8Ll4"rvMIl=9 ]F[=긏E}F|DLwӕ؃#.?}/BˁvATW=v-g'@ J0[Wͼ8QRpE$nTtS) D$QSM~8Dth}da_`죃4-|xG gYƏ .Z#]ik|S\.($һ>T?J[2B- BЋzwPTV)P@[9A7;^J*ݪA|5zsK1+@,f1 LG:窜!*K?aERi|b1zkwb'QƜ^R7/"l=a'9㇪Lx|. jSI)_׾SX;5^ (A孬2QDzWJ7L[OAY@U&)nñG%i?rj۟*n Q?V)7ov8ٜ6:S'>!Mo.%s@-UWk~ ~ ~ȗ9l /a]İĄlR%w/ݍT#>/el;6ǴA+nQ;zX{dmKIp2pWYXmE,q\P|{_ nXDRc[-Gr㦍Raؗ<'7C+nog5*t>oAܭSa1:{oCAAW˙k4)PP\Wɥ:dG$R4n󦕚Olx Kɴź;-eNP0֛2O"IV|/eS+}kX ! m^dy3 ;992r1K]0b[ExzGk.^b" ?0K bZܵq!7Lዌz6¾?IfkLjg//̲QZ⣎=?l%m}%%KXmqwea2ȩQvQ58>; 蜢AG!Gpn{.`0?s-fc)5Vk!a?)E "/@\m%?1M{? az[jqq)N_QDN}g/Bz%ar8,.+S%#y8ϷV'@]2}-m<QoAJa'>k,AW/V^n\ˈ%t`#?^j: GM+MkVaU(rrI#KU7% duuk5 9N[ ,mc迸jv?=xKGQ~X}B?f8ֱVƚLmX*m4Ҝ'"뇂vr!~oElU^<m*Z J5EH!Է'?%'NoS.ys,N!:7vg"m#<jB"_OhT[xMfL`h #.pGzRGM~"ՅlzfaU}brЕQ3 Ɣz5 Ün[,R+AB4}evFhJ\Q^!2*wbTkLT1-H4Pڽ 棁x%7c6iq=wuRYe:x:JV_DV~X7,ؕPa&d>\㸵0!hܒ3ԯ%VRMv(3ȡX-3NsF#V5Nc: 5'| K3mjiݸ.CV Z0ឩ5*u5kĝ [\؛>ظ+ZtRāԮ0:x22܆o0*A"a[.] [ܾ@6)iDԽ3mj-.*ae/< h g3Y$qƐƵ uys&9j;ѻK28~i>G.ݝtCE'~.i$ӥ3'cqv0 GPB8*ni#}&2_CpsNUOZ1SGj!!}j:]嗕WIY i(bcmQBI?_ش~bPN٨X8r-źTIk ^|eQݼcx>'m=⤃2"k?"{э[F?9r+M:eգcSV윱pۓp~ jmwM[9b9"%xJff4>Ԥ2TT{6i^tڅds,p~|b 0v/\9QC|'0> (*Y \WރӶ@6$zȸ[I+r7ߡRd~2M*Gb.^(\qǜPZYX? `c-i߅Q ?A!ysTLM6@A=W\ެKڸ~⎝W։8XEe@Ϣ@t2M1.ÕNwB`n?cR*աJ˳gB}"ig.V!ANsTx︘7y\]71+h/O"X<`seW/q<ѱvs@UDţ<=@] pS"FHz 'Hs!HբtjWJnUN6&},=HyJ_N~vMfljujogIS-Sws AIXi8(X"?3ްTi0 (!-t6[bl֥yZ\]VavwA}Z!Hvow2WS Exk_R?5GpX6̮Uq ׉o[ص2kI0{}B 8Ύ9q/&$Z40{2YTTj_ !UW,p yiW} ,r9:)K1@6_V1q,b==&''8Tvn1$U.HM:\[ r5&{uoS kiSiZrW̍osan8,,!kE&IŰ Rоk Ś3=h ge>.)K *6)z|mX qp͎^)P{=;>D?r$>P% 9Z<6_DrK4э'Y{!l m\1aF?X7X^ٟn}?Īu`goTM0IK]]7T{:arl:|ZZK&.s'Q=^VR[Y-YD*{141x*yPȚ؋&AL}6zP됽p/(:&x+`KI"V.-=u!nP?4HҞN<-PY=+ӏ+Fۑs–!Vf JNj[ 4z8cҡy^YpݑMÀ~8,oG=yuKq,,=Y>a~uJAtn8:ݹC*ӡsݤs N!cie=?MḰ` iPNk~P W qUcl3>8S|nVDGg2~0+P5|#V@ t95 U?&c g`k ps=hFԢ4(:Z1jXjD3Jz D e윌S*|<$hH ـ.#N5 h;ִ4ƙJA4 -@e>qfбv9>i|i<+|doXHҮ(GTyQGĆ>Y2E .KÞ8zDrbZdXUr]=]^{na|>n\r[I&dfkSGgNR9]e*R#E&耴k Dy.iYխ&H,N EN0RbVU _>30.dGFE8ȾPF5 +G_ޅW0H<2yӐm*-Lߚf .)o5t^UgšBq&l^4¶.S%S7t_mՈ'3Y &-1.b֝[fL ŤMe#fi6>O-j_Y|4kl4)Rb!+jk =ׇXJ2a Dh45(6 o~#:Y-$5.* |l <Zǖ%"ԏxdehfi0|3H*5PEdp-s1*.7*:\AR`uO|D;Uo϶9#g/)4Q pD1ܠ1/L7ã|X#P>]adPuG@ *xxg _/YyY])[0[Y+kon!#ګZqG蒋 !Wjwoml 2qкn2zIɢAh܇d,C@S])T)) !XȥN>2\Нwc"_CȲũ.vqtߋ7Ȟe\}]Q|ȌW7xf4ɭTC'Fl*7db +P!mk?W&TQ4KBӸ=9 ,`?ub9jIVlRS$hpjJ$ /3>1܍wςDąM^OQc.Hff(uL;"L~-r՜{9qԱ $!ܟSU(k;01 ̜;)4!g^ԽiTn<ĆKSKU3mڥaZyqFWN*e ހ~ɇ:W*pXOC໥Eqzy c7oOn# P0VQ.}z4D>Cpk|dy? <ޭыkt@KPwMG0q.DIdzq΂ÄqWbXH;A IS~aYŹ%Y.U#AkcSaH-,l=M/Gnw՝'1ܧ,ziSH'y_OyݦI״8D=!Ӣvk~x5J

jRCWIZP#ezq3kb-Gɼt ~gsKzA_^&wu޲< Z $!ߜE[T<X(5 e &i 12k[%S"{L;DfbpLYiRb'_#'3m!.v")w\Upr׿g@Vv nc~hgLT\~B GFT:G19R1WdX=pnPݏqɲٻTxM5qY|;mxKֆhE=Г-OFuWDG&K`+7 ۨOx iY< ĝ{J Td3^+g IG!"-ʉy4 ОNP=f [;CxWs_0!*z%  J?/X7.E|^1UÔ2 AP 86@F͙"}Kuy%m4 AyVd{I M^|_]xm!2-&#oe +Vp[:E7$ڳL˓㌜I_ˣn2s0B`Z y ?XH4|rUutx]#)u.)|XTM{czG7,Uz{3v0!dJEguXzEG:TpװAgrb8XMlW0W;,`[DCDdFiIY%PjZ.UU7d)3/5̠͑x]m=ݵN; =d~}XE; a^]?$'=P!g3Z)/fь7{=ِhT/*]oN,#pU KJqe1Y 4ɾd10(à%*vaDhi 㑒M/ِ+Q9PYzn)$Y>=+L VLA^TTYr+#Z"$b5dn~EUcӀfՍcDX6-c+Tqnh}55HI;4m R9Tݬ+ڌ+Lmn|/ dhʿLnf9FSUt=ѥLp5+9/7ɩ1xKnjszg< ֺ9f5A<-gDdj%` 0Ȅ=2RPDq}8 !Kiwd3?#˨mR34s >S~dASV#X\qT"|ց(fu CD W0DR `YaB%8l9Yv`14}痡diڿ;79!2dlB,0j}"kr4bt@L@w+Wz&;(zf6x*rH] ]sMg}sKq.N"0{CB>#1L^spۿԓ>$; 0Ծ`Kef}?qMgN(NE-stCz8&[p.dr& 8!LDtG %Nbi#nf A4OΘxsJE~]m߀W_)$:uCa|Bg_0$bW^o:)撧I!Y-3E%맹R fx0#l+ap]Xe#Rfxz+`~91Ryl#;3-A"_fۗDA'ΆL5=8 ΓQ>8A͎mC&#{a6z&Quko_˾tx* o[cZG{"5ﺚye!Π[sn׵J']Evs6-E%<5-w]\q`o|=E]6l:q&,MQ;Ѷ~\qm TW?DDŠ&`jblPq~!v-'wTHk0^fz-YgQt>"{^]9L':| ?-IX19R2l`Ve{,ק]\\:Zb  W l\8tƏIQJ}¥pB""(2MmEM}0<}?jIc0=\H6NJKҥOƙoCt? jǙC7hQ!%>_cjSf AX:Gfy= xH>;9GXBL[G28t)$%E;M+Wؼ। h9˵⁤c?#g(еZ;Õhii Ɵ8kE!uj0 USms}l[, ]L@$*w6v)!ˆsIA$ @gZ;}CFHױ]&VAvˡ`ׄ$6e/ \AM'Hylb̫du$򥍚-mv}g \0}#wC>ƢLY†d*vm$t͏9nSŮ2R k|1Q׊/[)}0auͿRe$Gڣw@ )o" 7# tu^ 0K(C;$ל{Ζ)aJ.FmҎ%><[iTs!C1sU+`qvh,ՠ%v`F:eȺꂜh?KA_a\S;0Li~ :`(~ؾQ .:)9ـI1$iil_pך׆K"~|٪+%AW@i4m!?ft[+r$yFaU]kyb<ay8.پO˧@m|<=Qڂq`SXZ\>+nwƦi#ZyX|V7a}%Sߘ@=D %;Jh"ьS3칀 T>nCB,GxȆTnkC%وI$d(a/ڎ'zfNkSA`8 mTVdҪ́e'dH;In!  7^u5kZNP#d)[կ"|Zǿr N" Q I ll@arx!JO"s:|8hqJMM> LHv/KkLx(ŭI T/(؍au$ASC+-eeS5FLp tP;fVbKg6qµN4j!ʯ@u0yѾ,>]$'P:L˂cGt'JK6S)P cIy`pU?6'J;Ô" /tY/lCoHXV<Ͽwȝp`ry7mƿOv޴ T1j}kf<H4>H5!pO #Ny&3zF~xG+;cF*aY? 2Ti[B,:t_F$}i4\6U%u`s%BQ|ߦ%LXSNU7ώz TIs բ,P[:>ޡ@JTWk z/%sUꥳ"WpQ<~Υ dD=ۛ ]s^׻"b  uCjQDgr{Uhu߭ 8BFqn:UAI~& *G['>;(E/t]' %PH\K쾐okq\ȄRR%NbR%;h/^tm*ɘhr>=ؽt3 -;Ԛ;=}|y=xޔ޸Y.1mg傿"i7kߡ- :d |L3ldlpelccnS @sivd0՝Ndal?m!˒,,jd_t|8pǃ=Ɓ=נ4+ܬm0-b]DGVD5N,s{L|3E6 @8pg4vtbF_ A3DWi0'h6V *(D6sj'zjĨ#YPS,n Gs]f~G0i{>HGC xu$z,}͹ңZ,z ;8޲\zb0\-ZI|~UU?1s:ɂ{W/5ISXtuyx\uFn`${QB8i& ySӸ{šʼsI|LxN9VPȴbpf o"̣͑bQP6@QfbGbr@.[D,{эwO{DK>f}sw.hhR1˟`( xZwB  q ^^9fGb#̬+96sO] tcǤK~x3MI|HCIN3c`$h<2&U/XO ;[7a2+xlV/_ gv?#'iYdn.Y*xV7X0zt݀M!xI?$]ٷI(ܟ]f@"N83Uǐ\HAXliO$QsJtCGӜ\J6F#_l=#Ej\vV$xO_W dP8b%F A+S)s𹠗>f,h{ҔXiM[i½{z_b`\:>M(j[LrKnBXJ}p"!A g*.U) bOAsM|V=l뼼=, reB* tT]rtt)Wې?=X =2519B(vpw\DZaf!لnT heI3i Y!*0J}i'=~ʬ(U<ټ;&?D1-yfu70~?+Rqb9·~cY`;s0Z/:ƞK@RSZ/@AMz(7r"!Wz"3#gJTxQ0c ,5mxz\xq1i\83⭟UAPv^0a72e>Wﰶrõ~/aNÁpp ?GrHlne-aq||l8g+%~Pk#,G#09EI *# %j1æ,=+7"8u}zJ&]Q/P0!HbA!/@߆b*lσZBB!YS$NTQzje؍ݕ@;F(>3G)3>gvǥZh VÒ vL>Y{NMq@ t֠ΓZA|+˱QTN hlj"!>qۤ\QtMXj`G@@TM[ &F6h"# zuurvٷ$RGW ˮB3Nz~ΙzF7Kd-Ћ9Hv.mk KCw Xpr 60&G.C>Ԫտ? !OKC>YHT-z AzZqa)u/%'Hi ZYĺuv m`RKX|v96 y%ҷ}Ep`QCy וBڦq.;~1g0!;V@IU`[?SpE,&(C3U&y XYw^.ʣ`v6ߧ+5ĉzrN Q\NҠV͓caL.jp`sn1u]Sz>&TJ]lkJDԣك937MN/UQ# s-Yt _o<;N9,a.a8#1| ؓ"3nߎ6"8]\xM0;k!M8{mcJxMj0kH-}k4A Ʌ9EyLxLkVX4VL8)V Y&2rc jM1"ԭ4pw1#T$@r-,ۗ&1>@G*3A锅S&$j\`;pQ?RA9itAՔԻ=N@.ōOl_UqP7[z5F{f<"D]Jgi2#fdNn;u9 fPWU9G٢+4|Sh0~`ݡBQAieӄma&9X[7y}o>. n0a'0˃:rf0-lGܵC x H'H3)+;Iwp,Y`t9mxG!Ԅ[Gоqy|,~rQd&ئt4ّf3v51"Ep6*c#bCDAd%?$:YCvLH=W!a~,f.opD{Zl/QDz)oM|T԰Zz[̜{w0:'2)#U.<MO\pXRѕ y&ShljF.HL!@݃P^tZUOvFym-5D0(Vh>Fl 嬑JP V9HPpr0hOr'wx}(s%RM_nR08btj}Ìk:uQF?ka^QU` TFiȷ@3u6Y9ayHp(Ym xyy_׍A؝^yPӠҷ>_m̽~)#ЧvmPy/ʅgD "եW@^|U$NOnX?7wa}Dh"2=C4}dIgSBNW D;JsL=8+CA3n0/IӇ Q!vZpK1Y;vb<2!ӴKi DpPȹZ͕u 75LgyrB "$-F:OM~%0Zv8-É6,YKZLo *yYae|`5I^}:; L"}C}?ӑ b8̹MʪRyČU0Fz$12"YvCD҉0K(IŠ3$*?  ›tkMLGMܝsfJ=]Wnj"bNO-/tFYJ xX%6OQHۢӒֲ9خ iU+kZs=^7*Ϡo6WcA s\( .G"-}Agx\i>gVer xW}#vOrLBW#9ω& \P*vp1.T=I\DtçYErٽU{&j!*Q-M6Xpw22ȮPy!U}P…ə҈ I_)%'9?qj 8PRc+`2&mO=cI#dIzwiFLSZr}C6߻O׸yEXI;Yzk=lQ3i6AvG1v/=J=r+3X]쭓gqdG:D:=>듙~̉]Je11)Tx@W~WsJҔWFQ9rdC>D\涭4tf%cmڅ gZ&2L2I|`sh%zp\mQ JHS\u޶!vi0h P H LbSkb5EoJM mM(qa%*B}2 %ȷ(zFKzhF hd[[2ĸ(.`% ̤Iȟ9+gb5MkKWL䄹%}`šY'٪~90Q/yPj+{ R>iхzPi`YꃅjWɡ9Jl9O{#4 +PTC#O=zϯXe"v˰N|jS:2VGxŲe5y. MH/VV>: 3, ?z-h;e62jD4}hU55.F[*!xV/牞t1F}l_I:jW劼l{l]?q\ԌRƃU;=zuՉBOd#UV FiPaN9aK l[Ar$3S04;[^nd;cu 8@N4_5Pdkd= S_.KĹC8fHJ,*w AMTg߁6ypVMhFO@J=åc~1$X/ wϜp1P3Nr<AQ]tl#1T /cweBL@\Ƅ+uB0>O4ퟀLt'y9*}۸d~W |xszu q+_}Ki #}lZc~UhHS+`ċ2 KT@rRDu,l+\l!D8"I09TC|r-Bu]P9ܔDpњ4c͕^9# 1pb]/΅Q 7ߏ|J@0D${Kh/0ׅXӶw͕ȜL=;@S҇15 jNQ rt'";VEk}JP[٠7_#1tg<+K@oL] Q.| =rjn[oӁZoq>TAxJK2NIw5?gKT#Љw\;^gMX⃀Ī/lh>DCZ!J ILO~D7GY|wE#u=/נWח9ңAܩT&_)[iT&Yz?/KÅY@ ҟ҂TlOO>Jrkx, ymÝS7p͂U.p*/.tW+Dx P(DN]A9%u\& ڎsB=0Fͱ=`Ez%  )<0-t0ܳ~֪T<+{mNFgE{(|Z᧒YE#檡d1272]d/oF='$p ek.sVZ8!}_@X57tZ A}cQ#M93\Q!orݸM竌6XK݇1t0RQn㕪f1f!q+渁WQęP1"(&S8IRcGZ'cQ19}l 40`C9җlHQy\+\K۰#Ur`{٤e84b8EzTWvJm"X*.܁V{A,"i$H~0- +9Ef#laM~eu+g]C4Jv恧1R6;c _4Q),|Y$Tr~g Iq%sÄW>*S~GU5sqt\x#|zח Lvjֶk/=kXy:.ꅒӵTVi?RMK00{k &i!?ƥ}hVw|1~Vaoib" >i{谊ޒĬD W+Et/ VɌB0$ƕCSCՐ>]X@'[;Z@lqݾڀ dWEUpgHVEuRr,8JDH0/""ghuS-N3ˈ hTrK#_ʜǓ^?4'@J׭db E ӅqfNX[݊|'y /s|]&p OY!nʀ+(Jqd.q*-22f^&"lXQ*$YӘk4*'3ET;Ң?WثG9؎^`UyJDY{#5i C# ĩp}{WڢC}Nm Z/+k0X[sK sKd(4\2'WwZwY $E= WJ\`XG‘ūbV#gcdna_XZ wm5ߨ'aҰ`P@c,),(dJt^=6 )K 2]UY™^*3HKp27QNvhcYq H>@/c /VxӉDg)V\#\b̢H*JqhALSHKwl` [j] ѯZ{(a!tCZI/H?'y%w}?Eb@C,w:e+؞p'LD t:,t,[=]UWM'mRc > Ey~N 91T6u_p _G;@7Ot2bsԭl))qv b9,I|Rcd #R޳ LkS_dHkgU뭚uNH7w9Kuƿ;zI xՕB"!]z. iI0ZlT/+}+5s q~ꁲ?f,ѻ*F]0&6_ ƖweNLֲ>MWE϶~w!UV@w _ud+4:g嗱Y"{*lPTq7+7{(>N&2 6E0a*׬yȬ'EiDA %mb@P/GV 0ku“.S-bgU'Qf000NS)cMZ,x=pWY#2 ~>WVntCQ-|Yf GAF0|>JȕaF_*Li%3,_}s5hj5C4Y1\'QgoƻjE";r`\R$Qf 7qp1)LPR'EyɓF nt-SldSd\6Ljٽ)ݼaU'H|bp5&ρx6*:_*a90<[/ ΐ[$vablB!Բ!02VV9TUi:үrA/|P~Cce0d2XUI1P5?ڎ:8vm8'@ j):VuIN#[7XωȮ+}_`'$lD`? ־ǎrQ85ĹQ6?V oi(&w,KHZla,uF7÷필fw JM ̢/qQ}54; ѕ}'Iqjzrz9m!EFzέ۞%fvW8PYMոY.0=-[7(6➁dv~Ĺ+O 2f5;E {ɻBX>?J vXo4>cEF'Q5m=.xx~EGđ$ 6?咍V[L1+ }f0 }!cIڪel/sP(Z4yCjߴPX6 &n9f~K "ì7C;BOhSs ߁~]ɬ13yn^t'D +L<{`X INpm #N&} j]|XEy^_ 3.90&dR. /8U$~{W|zeo۳ )$%TXdYoχ[#ȣFw>UEAΣ4Hi G?K5_Z^5.9DLN\+Kfp`E>4Hu9p9MV,)9u#nPYS=R׮8`)\=]_R"hQTp^UAWbxkn݊zL]OOe}JcE{Ut 5<= ytͪZG/oGڒǕ6 WyI,H:kdžA~Prs*gIMaЕNԼ%=wX>^=5IEPhaKT%^ = ?v`VKp(Qs1[ZS8 h1n.g%1YV{CE*JM~y݃MBλpQG3μRXd9w(Y%wuTXг6k/#z23Y*kQ|;JpS 0w(RYՀJS1ӷhW ި3NOi@ߏj|Oɿόtq2F*19I`~<J:FW1p7!!-!u \DǴx gn}Ʀ#n-'ufCGW7 /1DT?C }/4oB5+UNH9o`d ~+ ]Zfhot_r?c :c;}+`[j4 i"Qt&#" hx{WbJ 4`)jeb.8x[7DC) [/>Dn؀M 5Pύf"E=9."YJX {EPE'6X:VƗ Im2„%Iz7lV9D+{#XAGV~A @F6 ᭤P$=6',lx^R'yaP1usޗŻogAg.Qk)X˸z[&/6 XݚgR\WB#sAB ("aneSNk("9u l%=Ž kS2zX}\9te+rH%NoDk*{8?m<nzzȦio'h֓CY Q\O(@chw"W2sρc2dj!w~mWN?}B ,9K:~˚ev3): Ghws+^b̶S{* 90LE\,߹INus7wS L+~rHDc).{)V+b@c[hݦ^'Ǫsd.ͧ[$tp4WIؤ3d9r%>1_ZsOo|A`LTr&l1MkF{Np齥Izt=K"[#u(;y0kl(!H(J)}pxA(^v"xQ].8e0mB!mLJ^ۥ@+(&ve=OL_t't1۬lƌec.ae]Nώ:œio44~r^^VJhOPn K,PG%dv_ %sf,i;_`g xKY%9ȋxzcO#ۚhJ; k}P%Ldl渒0w.a7?~^z*] +̆Y FH|x`^{Q6:JI"}_=Mx΂{sj[ǫAx'@K RЉ|8w%mp_[o5Llҗ5/y,]?Ň4 ʈq$RqYOxϡȎ*{+~7q2JU,Kֻ|v\N%Ĵf C/c[[6"/t&}jJV366j.?dpt B|[tXixYg73RC6gżԎEhܧDFɎĺ Õ2X;yQ>1R\ϭ$E?ۻ?ͅz@|kfUJ!>̭D:"m抌XHcb"9xa|1yo٫YԆaY{[.K#@fqj6 p怪ήZ{#sFd4Ӽ-C%Y+ Y@I~-<^o`:2{:U@&5,Vԯ@C@ /3?UL٧mV#o˴\ ;~wCBr];4zP#lo 5E{$= káRҿ.yܱՒ'_dsdAChmzr\ cUy)'&LxOT"4aKqD52e8VݯxysuqMMQǺ= S5_j&'wwݬ_gYK_4HRVF`f\]sD Cid~0R  ֕sQ`鄲r:^> ʌդթmaTkVD^ MI9T9Zz/_W8ř?8A"kC(&Ȫŀ︺n֪D9U0}xhf>݇K=4eЇܹYAV \I YoY CF~?x'l;mYLӢk7T?k}z@ň܋>'|9^Ȍ!#Ґoie%}x0­DGNx;aP=>č6'#{Ë&rˏZ}A*b< L\r, TC L2`oE&є4w&,@۲&z: g]LHّ#T#K) C{6Ƙ?X Mqۻ7A жrZd H fρN_m[Mĕ*Zn8YٴhIу~%ېK˹?IH^s =0mq 0u Td8w?mr<'Cĭ \"F@8tlFQԥ. ]Lt+8J h /|[tH#CD̷6T)6dž `Z{WuE[8"G|ı7oesҷ6·Z uҊh}}j<Ls;J?3.|Y~ Rj12"86׎E}p%l_0@O+ƂfK^Èt]:>4O~(Иt~>S8]Inw>Uub_1ZNvWomL1.7csQW{i;5׵["'_Y#Lkti4o-|8si3GTefUjGv5]^)j;c(kOtrh2ݴ$@C9 rXxipGƶ=&5z1wtI BN%w5BI+1'q띦“Wf` A/05'1G ]3DԒ2>;#K8 ?xmDra,5uS]]AO(.O#FFC?7<<}&L[y, "Pف.85-Dǻ^ ^5k7LBs$٭xri5/dAX`ń-G|]OM01ukv*}k`^ƫ h()UDԓ5ZZ;!EBFΟu4u1*O{ 0k{/]ޠwg/ a 4MU?BܲwLPoJAs#: %u9zw'sT{3e݊<\o? '.'XN3]8. s1ӰATV+8>awg(SYooo4ٵ=1q&R'`V|\( DI:Xv38vs)$oR0]TkJvQv).q22xϖ)vq;C"!oތnF7tJ F, 7% X2kh鉖R1H,{T MFMjtA!uX[Sr&p0siVg1U$(nƑ]ym="kc}XgAf-*IJ`e)b ޠ-_Ueoܛ+&Ax=SՆAP^GapKRb}ѠǺ~AԳ rW 0{fڰ@*rkCusۄP˴ZnT9 kjׂsv72KHTd%iP:9rR j2W^{pE!7ۤ>fkXi3LS>*9xo'J =i1|nV-Z%̝5gE3sjM{5ݣ%7@[|Q~p8C|y82\<61 Mm/W)D5.C+'e͜Gq ^t9gA0xL]JߗCYNܺ{/(k4;tٻ є}BCeݦ.4AZ]pYnJLt23N'NvNbNp)lV8-jnJ N"Q&9>7xLOt?j6IxBق>+@P8fxXzRg4uR(h@ŲFIJQ"㕇z1܄͛y$Y$JyYH_q_Gȡ c)!:rHLXaFO,+\{?\Ȼ! &QD泟!aԒxq+ڝ!!m]P<2މR3}g7!z#/TmѭI_S\ M{m%ӷ]^vFc7T<Z`xqVfQ"omz\ 2V6*o%D@ti-ӁgO&=Yf|VBh#9IsGl z|jV'h6.E'g_'m}L~08M"<c,L3hB2>󖇄8g,DC4A'#ӝ6O47!U8:ӹݹat`q \~L|5!jN=IF/""#e7MP="-ES OJb"_#W8%us 9' 1 wǜ]7\J[fi-B%A?l;Jһ':>LJasi~qzE LE@SBV{Opit/rH{7h^!(v\B&$ZK4:{ )3KٕkUoWqr:[k7?#\ xS(4kx~W^r{G&Cg^Y=ѩ9o$&꙽lE(:t=PfzU2y.xJN`[ 'MZ~'F?t4'u'Ӻ ` .YdĥÑn"DV]^y+g5?&B&.7kæZP9K"C{ G7">Q opn2쐦AO65!s!ΕT/'/3r MPy13-whj˹waB0yRہG˲Ns@ߨG{tLm6E*Pf[+t"n*$-7Sl Rxr{^Q/4ԁ02qڄ7XVԐ#0*{o@Cb"i/`zz=,osLljTBP #fBTt |Yʃ(V?4B #B~љ%gޭbTf3|yE,} }HZR'AH*!G @EƍBO7_ aprX?C鿣U$=W7@54a @,8!}xd2$>c/Oi35(&Ntet AT5tOYKf!p8|Q7鈿3]Z$KD)t KǷ;u.dK4ن(0ԴsYG67ljd2)@}-eT _u0Τu|rNS ?ک p,jwq!wn8aҍMs^;/7B"ObZ.0Bּ@0%Sw:Oxߥb8uȵ&NbtS)u R!P-%_G) &[8~+5;pރڎi /U{4FR(Ɠ(#G}=!n5(cMfTt6?}J L5K5`{hX{רlOq]Ռt L)5~ 77DĈ`~dzf V?9rÉDdf1A9T;yCyJw501fL=[;<+drU+'˞˜GA+=mlُ vтWX0@|)ILzZ] jH'/9Y'&)9cآ'y9uzc91wsM}\WMҫ*RfY;ᅹYfG;aԟϐ f߆pRRiϦKu$gHvg~PvIߣߠ0#˙t'$B^~@(tLNphMERH|͎ |=+G]@>n&[c}QHjoYja8?'4..~Ol q%%! XP^ƥ`$IoZF:pX)_iHoPݐYPJExt07T!g!ӝ2_@#\y?;UăKM5J!2D2"dݺ2hl+Suh Bw'WQtAqU2].ד<6Vo {Uw$Τ\GxI:Oԫ.\ǽ;Ǎx{vn4%¤%IDAi}(YX JIsߕ] Z&e\mm(|_6=rw5 Kyu?\8F @c]3Tբ|)}$ş$@*,`9ü;d;/Me'"B ;k*JHk6!*pky3.P':dŐh \Rn sĎZ&#W_8m& 8u@* Oo EYH07^8-kK!ufaz/:k 3i3t ]Ouj=x&׷ {^wh2aka$Үt ܿe2nn#C9Bz+|'#V~#PDCV9 IfB ^✔,-RZftHz"F#~>],ySTI6i!$/al|8O7n ^.DO4 he(j0C$;X-ζ sMy@4] ~Mh^1 -9=cj*[bK{$)A٠kR꟢g*Ϳd7zysUebOFOd>h& u ))!ww|@ćFWY`b7.u3eԴ{ )WK{jh-[G={*U!ұUyR[$}(~>3 uA]#v_LBGv(sxP5U)SǃT];ݳOrYq3XiSi-\hHt)w޴1c`reדA(6yi$mS21}MԫcPǁ Z^N?ET+ZΝ'*pT蚫DPVܔ|#~7|,8JBFANaJ -w@X"J{ń>!kbimIGL,'/!hCo 6iI0z`Mk0 ;±qn4x0KqAՏKF5QpX+ @vZrj8 x[ 1\6om<4^1>VPFT8mCbnX]#ꎯSñ3iW'#%[CpU~~;DHl.l;kCA^ްnrp\LJF\}"ƥ~|ƵUf)8 ̌ ƜF?Q>a GL6M.-W+#hWmH4% Zo0J*:T|lR'5یgORǏ` ek J*$zg$}?|iWWcA$( FUZY\o10)ЮTᯒ'r1ZSnQv"jKLW:5d]?wf N׋,;d=!A^`N~ `27fFi颞v6}I~64#(QF3!+0N:(d4` [7soU #J(~v'EZ4ڌ?zNME2N?vtՐ{IQ_( Mm 3ASMØLOWwz[a Xlyql0 陳WE`i s3Rx6zïל1%(qFv=zUrQ؞h%{ъ-xH(%Td̊WQ2It5~cp]m8ֲR*9V|̉XohB Amy!XEaB OQ;UK3OnǗlQ޲> HOr5y'+ +YW-arz\`@<0zyҚTSrs0J!|/zҲ:cd&OO\TB \q,O4hnP O?3r/{KǡsƪGXa5x3^IFDO^ep+f_3yB\qTN5]|P6 5lW-MKE^u"[.q/Q5RE-tQd@Htn6 x!٠53Ao4XS^5ԣh>;JN`ސ|2`nNM A2nl$qXSUֶr5 .z]ˉv7V&Ww`]܅4F*faO)XD(@y:כnQMy a/]9vH%hH{V}rkt)/)%RӣJ^D4콰> $(qFQeGp$!e*yÙ uUtoG:)q,h1N$hBѢxl0-!#q%]}}@kThfb܂B3 TF 18Jh1? 3s۰G:ZK5g`__sWMmYh'/,b Y9%o8 "^Pz DLgG?8_3Kd}MauU<s.΄{ CohnI(2_MP9_-2jhb}ꍊx`oޙe:W(tES>p*%ž"TYS$҅7k;c~3^# }_R:1\ 62l L//!!mrgMHon2p3aL>tRMFB>7Z/0: hR_LҾTm-Z0vTE瓀vH >!v? F\+z;@\V42z]uMi/[ېtÃrR:-.7_00z*Ba:%XO\ $fI>~V>9ܻNd \Z3ktā~o t,BJjH[33?O( $HZI'(bT`Sm(Ľ>2f'jA3jNY3g UNRkT/CHt6L291Mo,_^3~+$V ĥr`[EIfmם7\tL_`@]~2I~WhhQ(Xa'ViLSsjM^~tHmDlO<z>ِGSuOW8W4(OK޾2nA؜ᭀN)H'_ʈ-.S6t3{OϦ~{k5wylѩrA~Q]cG2iDK^$k]n3KU}"R͇IaY9F B;d^|R ш {#s1`KqG k& *-o/to |a×}NYk $ZrK錀+ /e. MGU\[3>ƍY CοMе=!0e(]owہM f$AB+K&:Tr`]ECyb4yг (~gNs1+'hpogy&d`3!lԞ;{gsA}$~Ǖ|եvR3abmrx@s6K EƩp0"mC<8:76R ^sפ)/naOC=ÉNCL_1AG%HC+my*5 bXsQdM_xK=A\ O$ly_IH8y!v8yM.L2Heu3?ftQP0㑌rr [[zEBpV"Wxe2% Ǹ\ :wֱ(h'$bf(FdܟM t;4YWe{ ס/?!q%8@֮k̦@wAtsL>s<).EEP~dmKu2f)ҩ/yO=.nOLfKhz#3(9# {e e Cb #鞏c"܈]vY*;RMh7xfX=7ff(_z:-ƪ>*\F$:|i}bS%sFH˻gy8 ;FM$yH(xKR-ݻdzbl%m#F[vB2jV兴/AlTR?*j,L? V˥{c/ʯJw8f.hNju5{'m 4&nY3k9nsAv#sɷ[kwCe88^?8• IFzK+NX*2xm(Q82*^!8A|d6!kCRpj/@ۙ1Ux~؇'65:<Ѯp#>RjM`*.4yi,XYA.C*mva| 1WsvзN9g/^avM2/'v}x)qO 紦C4Q \y^` ,Ne{I2Y Eq-+tolFq#!sջjq^N}}b  ª@~Aٷh3%Iiy Ʒh{vϿqaAi*( *iԘjQ盎wT hGMdiVfu)#8WhJ-n5Q׿#_2+$Ꭳ`+ XXK[nˤ*R ?8bp?\cNC8ť붱6?FЀ;`&pjk"x|/p 4Ď*ޠktSd%jLJi9zEO|FHINꃿXE{;bu=a(h#!>g(E kR"pqJ4(ѵxsZCv#y R #.i3s7NϦRgNcAp!+vg CugcVaI>g+dLV8#h.Q ̟غR*&2tAѠFCĆ ΅GG,%'LGK t2y3߫oFWPIq ]o6ڃw׀b=wi]^8с_`AG2HE;d1&"%uMUe/3l ֿz) .G% R'W1q^y53ɕ=+TPi;.FW^^=m>56N=8Csx, mLVحqt M6قXg~? j{0UDZ2m$%__)o|b:wf+D .=nTы; aRNxR+qʁUٹEg׆<܁@,=iI4f2vSH.j}CQC] -lUw)I+0ae\%w h\S.Z@5 thgfEbn8hfL O#<^՘uI7<TssYcYSN'R)\;eH$j}[ޅ#M5MSAoڦh(0b ;$qI N*Y u21zp*f YL?Aj=tWXk DI=)~R7dU~l.J-Jn$봟є5 5B̓dgGtȞ`$څeF~ea+P,A1v1zm$~8,G037ρ(EI1y 16S GıR$6aJ/Cߟrev-^anjȣF=Su  ъE6N(]^VV*|e:E }uA/B,߄F&.L/xXzځΠgǢ< e_ 蕫H.P[d !*:Ϡ (2= J_ĭ:{'6<1TÌw4=CztK6D)^qIEާ*P,餆Kw :7D@lWN޾0-]LY?w|[PzUpy~4.~=M/Uu)µ"=T/G<ͺj2nTdTa.H9%vǵrư&2lѢUocLLu0&h[C^I5>*׀ 3TT^WsW$C7-} T ߻|Z>o0(S DAZSbh M: jI#-ߚk/츼`L,NU)#':I:9C' tsQ=@$\xdl_c_qyVt&s_DXJ?TNxDiשtlb],lo;2%ԧΣN7;wvo.ɅxgFHNL @yNOAT$:;/y]lr)=>H2xzjF%jEtfPd131O[E't\udzFe}F^( TI)4KMnFݳڐslvګf/a!7Nn hw<]"8}*!֒ӽ 'ٷ+'lrc5L[oo.vl*A+)WY.k !tB)3Q^,\P0Mr_v&2nkM!zaz=3ŗW@xg5i}'e[k\&Bn}$ ˲΁WFX@Lh"DK6[LA1-h/E)y[մwN??SNºKGN;m; RbOf׌(whL_NX<<²7 tFQqWA aɓ@8晸@5;LG*aC*;N|FpI~؞@ bGW߰=I yH+5A.T k#CpnjT ] [$Gme&!k57*b'+jKf䏡zooU'1 x }H 4 bLaiL󜮞\]^l pNydRuGΛm,BTfk,_BW'%1ew>"ٖ}rP_d"-Nnwy_ FKMT-03Po.Bo\"tTri$Kj o/cՎ1|ΪJMVP 3WO1.b_vzq$C!洲= sU#tYRr"t;\|ld\5ż|=/MEK@AdT$_r7wB,eܧ(ଚBgngYN JT$k 5tqޔ18G FaVoYO<]2 ׷'77Rl0c= ѕq(c]9'G%;xAZլ Ax罼} GD k@j@Zm|eRgoe;tQ;8#) x AEe _}*=Qi& T9|b%lN5$mTipsP.-FaNعe:(JB+/[gG_ 7 7@E?Wϧ:'f=f>GʭF z$too(%?W ۰%ŵ[ vx/5Yc10^K.QGw5W-Q8s2U-ZE{DYm_| }Bէ dHP`ΆhEz,.Lrb$Q QKXFaHŸTFWu?%eF¢J ~ &N=ɝ&]?Y=n*JmVM2|*Χh "0"%Iv.+LߓhdOv {u]E4VOٝ!;Ljt/x'1ME}65̊;K".n05\L`2O:Zޢb o^޹JA x՛<)I ~l\g- D5k㾬c,\v_)jsz}C/jN%_yk̋X\=Kwxңi՝O$mQ5OT</#{5Om_ )~IX Ƅ.W8ƟC-cK[a .B(bnwoT joldDՑWNiϝ{!:A D[x= JSpVHG"yЃZ.q -f\.[>e]t^vX=3K⸎(j|Ћ;)"2&rrKjIL||KK.;LNs?S0=4ZNYd@iȢt[=c]3e ܔi]Ow'xq4 JHQR MgO#m O8~L,MS"Yē-C;JA1) up'-wtTفӱW͉B׿4r8&xYoG!%7W~>ѷY1sKbR wק[J)8Bԫ`m͙ pl;wlyKIJCwL-ʊ$8= Ğ^mq5 c`1'Mį_^7ӕH[k|hSAQ:C0Hq5Yf 8_J)4jo+h [9M|ƚyا=|7R\UZ~E`,@54SvqG=M5$A#yza&26N0[UC #0߹\GߧB]W?Mx$Y>( &]fUY*>B43X:F̢]xrcc͍"?Ae]Wr͇O)bu2˫K~K|x>m=ף᫤WޓΟ<) ׁET-qQC],'H+ y gir\-a6~}w̾]:Kb};b描+/7P߭0N"x][ΦCBn+8 {;) zn<_AΣoZG 沃T I˪I6{6Azݘ>4' ,03cv]*HY5C;fw"~pu.C1 iy&i P;b603TߨT.k%FZMrFYG96BebPqr`:W^!c߀qp_=oGV+A%c{ʃh3Z-GڙaSI:>cb %ߍQ.pعN|ķvH#02^?i.1duZ廖W'"-W߉ӢH2Ć,1*Bb ! &Q_'?st=!]W5#rCftn#oD2ތ;[ZA+#zuW2I0^@761]b3OLmu?KM@!+U, lͨ;z4t<#$Bks[p\ 6¿ NCϢ9ڃWh:PU+PreuX6~$f}޼fcBs'pҋ5ᢶmiydۂPn N` JS矼e /BU'dRE #V2j7"GL$AT2Z$HB.Vw}i?vtq1l"ֳ ق"ha"^"Mm'e˩Z̎*oo֠7g̯$ŴU %Lԙݒ '~#PIyLq8V Ȱ+ h4g$r6)[^_/0M)xH7 0.S|$-s ~9+fEM^c*'y_8eqelQsDi[jE~-&&΋ ?k١Ǡ<{~Fo5yd p\9qF e#88G< K"[3N6>f Kғ<h8BݬZsHK~b|B뉍]Թ@sJ{Z0{ռjlrʄ~'&gfԏ >l Ks^=ˣ{[X̌ex66O"x([nG`jB[++bBPI|GU%xndrK}*}:CV @m Y}B] TDqoǒ8`[d،pA.3ܒ84j5LV%j"FهX懄f#rJl0M) u']U _fvm)?+ -z deGQ* &Yysm=j@->11pH쉫oS{@)#|a[$21ڞ7Tqh=GiO>!+Bk\mg7/JT8nx.,z&K\ãj/ռ  > &+\D Y >jWvu1>_@`:Gdlc4iT j?ܹ1VJ 2\1Cʏb[HKov ʓ7y,1؂oCKtv;t8?w@UQ9I'<GO)`b48M@W^Q0]7tb2Ă|bs =ֱ鄭O*_5Pe$,/$$C /[#I I̍ڕ4Bӣ55eTPew6Kc AiN;qv<{-8.=2!7+g:BtL m4avKOiTtB󞧗# ։0j6ο%ʶUP1l.G .TS(njHڐU5[ļ`:!9d|q.%& ݗoq ڿJi6;կ<[Go˿J(c֩$zCbγэ9i. U dqURfgC'n/; _sB/fQ=8-] c񃘜!`tVۮ3i± Pv?K?Us-R^af&uFw~;d*Z:?l Xwt0)X;X'*^fjcqTkA+ P+\+2S1y3E HLpr< DZ]Tl[I=)PY,CHHke̴<}[ m%Mww%\   cypnJ5 32ld>ķwK=n6Urk  Rp<=SUҔܕS؀E:ԿC;S]E *L cQ~kko&kSPY 77'QgehOZU# m2b7;׷a6l;ҘɃFA$)~vXN2؆t`K F@gm_knUi5h":}-xqѸADXqdXJΌkFT^B~TO؋ zۦ67C5 9] r܆gXDٮ0t0}HdE$&,?eIy:fG =f1 LurO]j8g\Bg9ogBbdn!QF׾MpZq{|%l88n%Q}&Kss$B=+ꖶg- iXFo[^X:W^U|Z`nfٍ2+߂5E39Pdnb|M}JG- tFҷ`` jBLx|)Iѵ$(bV/v,:Urv,tkaB*H$ZƦ--1>k/$Y:+{nqOt%Yě#i2I_Rje*hc-촿5Z.UaWQ o#=i_G|L'::Ba@'|@aXr6:4wDnxxp%t tt`]j*=^蜰\R<SV_s s\uh#ե@4%ͬsքo~lAO'19ژj)#wA|%)jBl[2$k0R(0n7|,a 3i j.FLi8KmHZj-p^*V7@cc Pޫ n[Mê+UӦ~%xkbڬGMMY~,'[#*w,x4_{4T|j_x6UgFCB'6Q!w&.1w\8OS׍"nȅ=G8zeܠw.#wg,~eDĴ,Fӧ0 +m=e13ꚋVC#eF*6Qw-R^OvB9dׅjVfhNܬx( _vl(6qybw3=r)ºɎ[9$kQNNI >^$&5-NtD|xYz>[텡." +_km.B^I,%L̥jX3YN :"_qUw^?)_m:#S=Zk}P$ێڷkݧR`4Jq "mtf6qˬ6zepy&>Re:{^Nc(-DƛNSM ׮W җl)Akչxk@o4 N}_֗eziȅ$|b"d)x~䣲3ѩOd@_]b\^Q1Ia)W`UdDvӘl!U"7'&c }@0=2w!'N  3jpvvŬ{Yf!n/ǽD^i{*+A"3G[EtPz\LH\| zg`P;Sw= 6*3v78RyƴB%7:N"I߽Yu߳;qd~D8TʞZ^Vb}_ k|n[X;Z~[W0!jdQ\%YQIT=(s/nhf앹Ul)p2U+-Z A”: 򞹿U=m/4$F3d栱%wUKC{URHY״@)fphCDu>Q5=xRAKf2MKdJx َ4} =KujPf ++M^aL7j= |#MՁ؎̒y9蚁iq*l`׾U^::@/,Jx'[uZ|0WS66ӭ>> ֎s0Tuik'<="I1;|]3[u`L8w{qqhd:&mM$$Z@H,fk'-)G98aءiFΣ8 /ᇦv[8IcL!ٜK`#2EO>W&l({/Ͳ[fk")V8=y#sj짴qi,-֗o0,-}]-Hԥ)+:3 ;i 4Pss~K(mbd~hwn;ZMpc::23{_~qpq@nHp?1o;_aR텹؟X9,0&)W){(CN_!GИ^ٻˡ) ڻzg_8T"lgXホ(}| CBu{"e|{+*GHwX.s^Il 6|dr}'|+ = +,[U,\}Ca3{2S7WEiK~{G]׹>Lq"zVm~c„-`:5rƼm=Noȯ*n脐]{:؛T;-fw39hZL:mmWi 3 NX,$&7[y˜G7SlSfi]!atufߏ=GR$ckVdvY4kF=7 u3u PX~拀T.h6ɂ ^˙u>5vɀyq*M. ,tdb*tJ4@[L/7 ece6#p&Xt鱒WElk-@sYs9Xu Y:c@!":snIr+ xۧpqlL5'Q&S.H#)F_b0dϚ`g V} UE+ В{paNR$".5NVB hY~? AIy(:EU֭:˅6d:= @ghd~A^j$ Hy 5m:h>AS+Jq8Z-e\Ԧ-3 ]{Rp2KËZ۳?gb7kbÛ'f@\i4#?jضB;Ay]ujMxluWbzK Ό|[Q*cc㙼{. GAM[^ q<Џ AV+&/ovN2%WMO|,~QdTW;^mDVEFuҹ`[0Mf~=23lʏcrVG(.2h6kc]ݐ ѳ+IE'}۲)Q&ƻ|bی (kmPaӭYO~Hkeb#*4$:7Wl5!-4<}:;Np6h,"2ߝ*ÅɱS =[-}F_J /lI@̪)v{0b#r1 l\$ ]Ig3 |dt2uO~iҡw1G0Y!l=(MJyk6UJRvʼn/(FM/Y,*$>#-<GJk3$:CX@76Y*@g.1s B̓,cW~Ivow`E|8|>N2`M se1Fl{'nwKa9`/=G @V< +sEzԠ+ 30N b6NXj>]>&iX.n#X7[aN}|YVb&"+#XEe"$>L)U熠+i"-3QR$Cass\Ÿ쀖>eݗ2=j*W >Lokk!%tGǤ%Lz6}yF_k#T|UzQ!L Y,@Z@}.S,X(t7{o: '鈙N(9=7A9bYo ^ aGEݵ!1,`dsU]IH:M S|JQɰ¿g ylΏoҊE2c9%3f6fQZm"39Z*ƚ[bz?aςGbc"lF~ 8bܰj|Y?G!ɀ–%U.cX?TIk} ND>"ȏbp7Rul oq-OIjTpFίV.GXi7VgK0{m:NV,T˰uj0u i4Fc!DGw[YGs,pz-{m}  ǻƫdn-A$82XJVEDU]V#f#8I{&FOm2a+YlGی)yUn̓躾i48+e}nFAo)Rr-*॔-P7P8٣|s*jɓhg}W>S_h椛7`KV) 2*"#>wł=%RvU"vZ#eО%=hjѲ3s 6\$![&Y@o~/mKl#j sAd/T#.;*CrڃI P rvDVjWh@kFUg3T֕ h 5n^*TbϿ9y;wŻkVPYmsdImjg]r"+~BtG"QRC]ΤRiB[2K^,0 ޿2)ȷ81qH1m_Mxho4}'oEb٫qNe- YTd|aP#6O@ K4vg6,L_~A 7^%eRn>1sFG  `Cdl LKԖ۠j7,1|v/柕wr*n&Oa3" FѓH {c-y{kz!(߆'Lks0o]6kOAg]MɎ 곁/* =g+f[yGLO`IwY 0T\]&lɗ[mXZvOSeʝ_]p9\tvqo 0*#@:TVN~S}R2uο[54n4j`8nQ/J?7Afe[NC-] -¥2ϱb5vjQ0*nq , ɫ'yN"wwxNdwAF?yL`m˯/$^/mlSGIh~qS>OPBM5oI[Gr (9!('xj(ނYE2 xTsٷeY!_]}By[u>~UD",g]:ru$YԸmu7hk8D3;gJ H"+H 5Ft('{N.# ٮW7p$T|.3 VT/[K(' Fbg ui`#{".JJ5Hĕ_dO*C1: 6B _8f0݊a%$ tp3(f0be905Y|Tpxx  rTS5 _ -S`%㸽DKA!X?<נ;QĒ&2vax .++JGUB]zS9s5 b \斉0YJ?Q9sF`RbGSFq%5L`8D>!dΈ#S;߱atm n\ q #9#/S FYuɟ\XWϪ'@9UؘZco'{$\(cPZಶoSn4Qhu2F3v+ٝ{>4rt#GPk,ޒ0+_RV(L`;uRwK?qR>jU"&i@*[U%[7C1܊̴k3("UGmW 0Q,E*H'bo1nv]usQgR 7 f< v?ʩQn}ڇYs1yPOJ텥.nsL6ot*'ՍRoOsF1P)TldI6&dwҩnIK% haR )!\|l/eLC2q#dr_Y( jVMACqAѸtyZM B"iWt*@4yo?M-ΌJB=Fy>nhJe}"6q˅?<c}+Cn55+Q"Ô)#;,.|?xkڹ{41 \Si۹`Xa\WRE~*q&pQ/njYT.JxDrBu7儚TRri Qt%ByvH6`axjhy (5(des0[.B{j2;8Gg9q` GZ ;`)$-$X8>i)D1]$P]^A~ҮkϪ}K><]U y+*4S67^pwW3pܐSI Z8,rΜL]l(Ϸ;m/al9 ) bY< |U KP_A\ԩà ga nF;̝+lq͙j=!eȳ~!\kEKI:w ]-RN**LoNp7-- /RO)tؾL \L ƳxQH,xe+p-z=+D֍ƫyBQElL.$Ɵ-$y:<xT㷒M]& 1݇-xB]k0 79ׂi_+=DCjx&A5*{6xm0GE+-2>q]u^b5װ*7`xI1ܭoe< `1Q ڋOAp#ù`ҹO| 0] P_G)Lv<%]5RMrw 6]S ̭WzS{~5WH{#v5Qў7Ѿ.h[,t{ymVzV`e>Ui"DwƠ<\2$KvP6+(V`z bv=qM=w~ixZMTKL:"vՈ|^u5h2G`,2orG= W޹ZH +; v7aKdfd,zA(i>c1m>c D95AA6mR9"[ bƔF퟉O`2WNi)cV0d* ;Qfn ^z[I]n\W3N|ʇb5Lt{C/4xpeIg#}.Ap^\?q%imz w c {Haa ēqĶ eITX2YQK;[NPR)qQw(xxJO-YeKTa 'pu9& EԾ_{[ Gf˹vgj]YOnnGomfSm{4ϛL R8[w40txJ&)[w W 0 s4oyeElBZ8 2W _I ژ3plxk\QiҮ%Lxqʘ|nh;!p]$  H)`af?,B9jLX% JRs,Y gIt36jX4F>d{L^bZA8Cj6.$)/|z Ns$*I ?&W|:ᦚvnZO쩒`s ^+ *!1>9JbsORr<^MkrTO:fF}6/g¸3D0lZ0}:fwC2#Eun GڼL`I"pyn=ƫ*횡34hGT_fzG%j4&dw"Y职+k.wud, x.7| fp9*Fߛl`H}ku!>LIٚ"ʹ&}Y:b}]XE".uJVIJ}Dn(]WjqrpE^-/[#SF4|V>J++8rCӛCiaR÷ ׷=a_1cYV{626F` L~ipqbKFEPͅi*{WySIN// )c Lb79(4)-OhS[om!%hsݩp768|%hzTY8z<_`K"^UUp[ H)cRig &Ab<7eM':ErYrЩFHJ֚ˊtkvA_9&m&_l U]_1so GHKn»u,p7+X9;QKrWWl4~ݪ=L٤GTG^eh9B'MHs+r^Yaswr-MZzXP݋M| WÅyȓk ]* !9Y5Fnp.).9KQ|̊!j;jl V=+^%GD8SY(*U.oZAS4/եƙ䑗lGr0y"LT6N0+-~ W͵H_8ѦL|oxf.d""\g-3_KJPjm\|BýiVIEe#w +ߧ(Pd.*@/o&#%}ϕACI; =E8$d&49fmݝ`kY(S&]hlxm24k˺<懗_%1*of1 :gZd{L->߯^%+ C#]{f[>k!$9<  ~=P"d\k̊ gMm0IBM܅؃ jnh!!EjZ%q5 ݵӻQ>М@mqEѺ=r:w%q)xKa)4tNY|* Y3) X8Tbvx@.Vd @nD2Yx[JphɍnਲvP)óay6ZAmwgKcYǨ18$@8صf=ɶI]9б5<;S%?м2ܗ/ #v, [# wa,u&:̩r4V.GǁiQPc#nt~ce^d/\0:ʩR&zu$G$\qeu$4~N|;Ip׎f}ÐY$T.4o+_ߚԘq(;FTb(q8]lˠzc!w%3&bB(r~(/2`50FS'<x5J0n7H-N߰(UBNtX+Ry75jY./L@8`Nms2"ӻs=FdKiV,f]֔TeYU; ?+zf5c8.YwP)om8>?֍ o;Z3uw]CG?ke5*5.NoI4:І'Nvhy҂{:}+){ 90L-T`yC\ۖ_]xtiQX_3Y(aMLst婢)i #C g'k\'Y܉  mWi^OɹS0x=m2eڥ{[zXI<|Ϋn֬{H68NaLٻ]v\Ԧu]bS?o(eԿئ7߯ ɽ+"Jq9jcҽnSO\0 (^=+0r^RC^Φ-Ǻ>wM=wn [F>asrH\o+\@CiIo( ėOl m=$ "EX K>#[$J$Nd[>p4V>@Y"8+FR^X]ލzH:"fuT釮񯆜"cczNo0Ong=#䚟je#ʱ̘0e͸?E':k>F[&CtEc cB[ ʩ z4fdWx:yuy sg,ss#)"sO[>>ѫ-PlSG֕䠙kL%J'"AgX8kT>EvGm/=\ 56w9ޠ(QR#l⚁Twc*QO7A_qqO5<Ф~u'9FJEdlNȚAW8Lf"j^%3̈́lc)F=L@R 0$9Ʀ`C#:CzE'z% *l>[NZ&e(7e3KEYT@/avj4~(k Dltmc39@^衰S>gΨ9 \B0PlI oV]l>MJ j`F l!j'$۝:`= +u-{nhX.a0q5 o"W@u-9`_M`%zȢ2—čl&`hcc46YM>&rĒK),0Kۖf} K̦ &wI+0-ٻV'p=Fݶw1m`!b,RE @0ftcU(S(gΩkۡ  n"(%4bYHSJ*)db^}_[KFiQu1[)S \^Ƀ?|'Byռ]{ό%{1gA/6y>րy2+Iitα#9SX`s_i'vlZI=&&+[hsMr^H=vқ@(0GF薪o'rq׋7QNs.M\ȣ]pd  ȥVcb\P_#U s+'*mMz^E#e.1-HE i*REnP(R<7:;K4xMYcT~zAͱ$RMcjwB# ,|O[}mqi| / V{Gb?<*X!`F۽t'vT r0+/c~9 3hڡcx#8K3φWAal* ͡@Z7Fm]pkzUSr\~Jrsq1;HfqB|GBxl -HGu0><6y^ݠKC<XZG^iININ#jw'v݁/@evΙTE8aG@)YwDw=%yhHfňFu2 g M1q&3ѴMO@gqjxY|XZu:O O}say`9Ǣ>po-![61pkٯ }˨n '6*]~{Yfn@#@Ofnj-H)'/}q42Ȍ򰷅nXZ7tyON>ng~6c;*1qM] yz[Rڧj`Ė0I[T|k#BI:8橌1Ƅwi8F>j1>5FJஒ9/@wS&}!/41[A(8^[mdH\sZL%3UШ8>`#  36`C쇰imF5Υ3PRӲ$%,? 1i{9iSbj ,0ũ=Ae%z/δ@pV%,< ^ \zQWn|.u82kLu$jZL.D*PluK(jSIq'K7XmLOmQbPW{%wkܞW=ï~(P )f.Mb=_`NGQ$Bdf9Ҳ %} Ti;>EHzoӶgqI3,a^:̗8 lXR9Q+pbi4 l VS@aIG`LLhI(!TnתHaaRB nLzd&ziDE'6$7P9v46wG6S>UE11(SLZaC*88.*EZeB"ّN¯d=?ӼN0/v2H}!艎'\qQ[TGXa Fƹa.qd ] Ӳhtd*>V@ kVj„Z5nE:@Y?, ,5r{<q8$ HyC+?ؗyQ2OҹԦ%Ĕm '}Wt 2Ruo_BH{)㾉d:v |~Cܢxa-U78/ʧpBDyp"+R t&ϿgsgHa䆸a6$<WYTv˲_qrP_,MOַ0wAB4F97rC@5)M:ޟ8"\73 Б)̀WYJtzMQڈ[TST {SQho] \X*`}*ՃdqsYa%ЀNgUuWI+H$b9GEOsYl?-X:jeW9;$aXE,`OA_[^X1/1:`J|?5.cAj3bi%h,fcL(TVĶZK|l^q<^-9]^D](o&9:&f!=6ROKe0֔F/䬨) v0WkN@`6)H*神e/XBD*Oe(>\Xox]X9npy<'4ZA+ޞR !6_M=ow^tׯ\/'޷UP7$aR |@A~D-a.9%%lX ֻ'P9}/3\YfQEi͆<{TcrVPɛX Xbԥ"@}y>(-Ж!VM- iksXՏ7O&&ǐH?nڏeeX8C%:% A@H $Gmv 鍟{R-1' g+ʣQIV]Ʒe-aӳYZcűt6H מ Tnz8 Uf ([Dhv޿&s27p:WShVр7)Msk X r H !>}ɮð8M n/BQˎ-[+Յ ͑Sk.kB98/ jf{m-f W(=dBxwGgj 0-2 g'x5Uh=0R )`-gogX÷6SG'3dC,I=X>!J6߁%+x.pi\%i櫛PFQnd Z*6|Xb40q*wF51j[X1Z(q$FK)l d҆2+a_We P(R,hrFH$i̝R0;w<\,tRl\#aHBk)sCOy}5;j}}{{Jq@&w_da>E^mUC#@tYsIm~?PHL›q]:v#N*Z:rh`j@@}O-2 |1;T"+&`>qsyWN=Na9_Ԡ4J|hjb@@5"u]c -!5qơIeB^zYֹճT&u#2Y) L(p˺P-\[GUWp>!~ x]Ù9;mQ 4{h>uDW᧚-mOmֺfdkۊb<uHFd^EAdfwS kx_8.sq՜-ćj) )Iۚ!ӀhNŠ\+dr3CdSLi7 ,,b)L'g/9bo^2 PY 1`uЖ{2p[Py!VSW3 d݋WZZ2g! !h$J]O&eKCV*|mPJV5֘faAt@3/"+`7?1=kHPŌԽJKs]}>mf@KI?Z9 - : Tl;Cd "xi}Iu_kN 0l ;9DOJkCu?<3*:I{##> gۛ4.c'ҥqY:vT!Is!\ $'tFجFȩݾKV}e#NF ο HW*ܺC/>QNJ|E͡X?l:j%ZL`UvBVӀe`֡+47祿`nJW^BǡfL@%g­r`0?+ yCP|oeD5GFiMY˟ܐ/= 6'*8QX7 e0XuneE,)ٯ }dM]cM46f 5屋HkGIqlռou!&Kؗdu,T0;zȔS4ur ]ҥ%0\"f݄HT7ӹ;+_d{iU1ÌPR"#ء5~BULb; wAd:W=wQT8LF鐪"psL3~dKWX$$Ǒ띲bVvƈmgD#/ ,Hy27Pn:}_yB')XZRYL\0/8"ñfݛ8cVƶOfWR?%3mf=.axjT蝠22ڠKqB_O㓘{n6m (G YwS3 u[0D CKvqj忙rQ:l!\S,V\QVDElMRr0`f?w$uB.km@( {| y$ 7LhôO>y°+f.dDr-ot@;<5Z{ w[ą`ʧ 4={(s t0T0?fzb&^vjT4P<;zt U|2k0A 4Hno+]*n2М_)zFOf 9gf?`Jkݲ[a\=gNJaHZ* DOPC օNj`bv9H, {C !n9z# Eck\!dz!u -\EX73$)A%_/^Ya)Ⱥ * )$m̙>I *W}_NS.ˈu4jKf0cx)<^l2]`|F^ a%@HTaB_9}Jrz65OFs7A.|'4Vb 5! ;ƭ-#ӕ?⦱Rpv#׻1 )YB$0`aqIN0w|na;MN9-A/]\\>quʽJڗzN?ǡPq_~c/47*518SowcI҅3226,'hLa!01q^e+>ыE"٬vSy\P͊ٿfhc2P!3m'h}\QŌ~`m13Mh_EoG\;3S*E#U81ް?^L3 ؁n8VrZ/:i ˾f}Y\W&-="TYg BD)BN89qL+E2?riI(SҲ3a7jᘵܳ jZ?=FlS,DNqe߻$n U?"mw}-f"bFLO,?)q{Fe ~_߄U ?n[ ԫBQˈ0DMW[Djlp}1S[j p[GGd:*H'WFawRO ܮsZ֞.zyn6A ʱd۔Xq4 8C}Zfd+Sq͟it ŕS<4/4 - Sp2OHTYW\QUf{KZL΅ ~J9lA4>n@𷃉Т@L/<|ٕ{fzH>ׯtr2Sz+%cp}m0bP GH7 Ҩ6DQjdo'S!WKQ;R60QNو[,jt M%%;lIUcWmfkpDSѫO@ ONr Beު~!bآA2jߵ<_Y:D'1 A[}! 0|Żf`^ }*+f`H$, Zm|!nw327Yg  TZ3L9ykO'm&%^y'ι3AYQQ7 m<8Ɠ2 .Lz3tm` EDmcP~/ wqx EsEdF3>:!llSSwkb-Vk/wb{˵xlbR\m $%uHgS,ŮYeU/]Y]"ͅ) o+i5#MDx|mh߇O\\L,P&UOP8wdU)]$jHv0xMGG>I8op2ȋ)"Uh$d}턐MEG&AmU_3賗 ˤqy4pϓ}?>jW/!˓cuJxpg9)`cG)}ЁHBz^i@n)'2Zh"hE?θOU;sEF%2Yn Qcg{c$ο"}$M'c9{1Ei2QXa28; 3XG{Ld*j_YfMzסͯpc3clvjũvOgWqM* X{\c c|; L:fMb$|noQLM\ɇ<M 2312zUQY#O6lkiqNɹˣEjN$ﰑ aaHt٨bJDŽzyE/F!r2/r,vt?'%I$Y!Ta39Sj!S)]1<_Qa`Ef6C ;Y2.ppx7[\@ Qr386N `|B9i`0(H$<@G#pm$f10u2D1,{) Q45P8bR EA7~ZSWcө1?/} }I*N[_N]J?chM ^m?OE/( &LOzr;Do_5S|ٌuDC0d@"a?f_S\I[sk%N;:罎?suݖt6͞a]xE`[8%F>Q@zU3KBskz^54 )c=@Ջа:c.RepWՂks ۿ]0$fTf2JkϼW9k}hn@ ܂?< fŖ棩LEKEFttt !AI!BvXRI4'Ǔ@KG1Q@?h50Z?2a9hOPPc&a7b?@역c5eJF4U5QeM 9x5/ME$m`T)I47jiW6(ftuvn^ dghA#4 7Ѹ`L)7WF_B }|Y;ݴ{>vs6~^q$__5Z͐mx ~6, q!N_g 1sᓍsAQC"rn_ao`ܝ`YpK)6xG)k'g BX5nfRPKr0SJFtG1(F ~Zߌ1 T |"4`iYJl *Õi*!Bz) 媈7ځmu=amH=a QPv+~ǀܾ%B\؇p OVxSAR7IKz},jZM|V\mKw FxKt3Q,ǮTʞ/gPFFk>A%L5@T^CnLug1F?3f3vp\nVy)8Q(,ʰenHDHXasIjTL=% UAe)v*_5|z"qE^ 4=srt~K&{1 n/u?<89#Jդ*Yq?^~+[N|@qQmLܸ -ϙf&^,IMh:֤@[q]':n7JSf+zX} m@9FW~7hp~ˏe0W4t8LFY &:!w4T$8Cگ$)= QMLʄ>.sSnn @~ԅ(;7՜ \Ղ:Y _Tɴd:}{>5.׼%Sڌʤ&`1_yh/ .s+F[A6'9c)b1= :r-M7yM=Yo ߃5X|`X}"N.%RN=lVZ^PWBYHԄ?@~tQE, ʥQheʘiÆ Ө"I0Q^ubWJ!m6UO6}A6%Tt{ s"/F)]QWe, g/J6WEǾWFV} r [a}l%^Vq!Pb E3oR2 e`,6Yٰ Ձ :4'%d`) 4dN־#`}L4v$+3rTؐ&CVօY霎hIHlPl鐩 J%4]+ӰyH?~V| jbu|%Kԓ%߯vW0xLFͿXQSpzB}h~@.k+}X*Kv Md. Iz A?hafK8Jĺ#$\nC$#PTv62 P}JnmW7%zj/տ2;To v{#,Lok}-1_n_.f s;Pfq<˞똖1]fzJi>{\5 ɛ5tUj h^:t'Y[ͥq>אٜ XqZ=H=^ZR} J둣Vxz/7WH?ֽ83Tlog:R\ Px1CگvS3 ǂ{ τ5#PީfĠl  ۴VM ?0%G] s5_=in'[I2iôðr}RGTR!`xWϐNGEplDR_㫶tPATPjZhBCe+@@N~ܵ_ ΂h/`A n.F =.+ p3R-';Q+ߤ 2kA Շ2M;ppRTҖ? jMKo!Xؾq(qq)- fPj0a1ʟС+`te<4r&Q#o~Ϝ0L6@|8\`_F Y\kzq`\F`S/OA5p\u~""9˿j^]`qkF^tN[;*ɛ{8lqR|N5O$kxB;'-sluI_MZc%q[q.~|w9)N2o6w"l,V(u)"uS֗H4Qǭi0zA$ CK1+ iN&qI^EKҸ\{f}rl19z^WLǮѹE@M; W1?x7'3Oy"i,EMDei-m4Qv]bD]B+׭4>sr9-$zP㮌t Qt@Tp2W]g0'UvX|!B{N5nE&[)y.!-nձc\á %g\hh^''AfI{Q/Usy3J{8ӺRov'u?{G:*z>򍕋grT'jkYC?k@s?SF+=,5`Kcv$9gp¶ε5#[Λd91eVie\ӷYx à!FahRX=siLvqk}n\'U,ex9$=l}P`i ?Ģ>ЍܯaߚtoOEROG;$vytrw.{.P_P552&.H^Q~, JaFgHgօ x'Phޖ D@Dq5܋q;_5'K :iy.7A}_O>[^:pAa 2ɳ]Ctx :iv{xVdzv`Ռ{iΝU^2v %pܪni ҩp뚀dz=jw7 H+{LF6yJNt Wl0aOؑ <î{=jw }0#ʯZf'.Xd1@^'!ڶ[.!v\"24eZf {eWeF4fJ5(HZcetD{573R7C~񉡅n5Xvr̜@yy⚄ -dKec_xײ8A7f= X{dej;2}CDkP0 Y|FK<Y.4~K=O/wv'ަDtZn~%ZYC2 cf҈yt)?E@QK%CTGl;Gju7 #᝽ ј'{YhCHqǮ:y=$g2QCA ~-|5`t)Uqȵ5<9/g p]p?A1?B]%̧_aϦu)$q֖8PY aĕ?({a@z[3 yN#d3}қ U/"j{ OglpC2h{ q4c8%IEL+ܜqk L,^h=W7-(Ao]H]p7D2n%Ha;71>άɪBH.*-6wŅn )Տ)(#oK')xM 4kmwbÚE&51rrsj+3 ԅBh3|Ÿ1Ō-. \_ਘ-T 1nj'oHa#9!Y)XLv1bҠo,4@rw%Rovc١F.T6G+1pAZ*Hsl0υ&#mlDfd(jB O:6D43j;v3WBGFC/N/[}S-ӰLuPҮajA9c97s;?MlAf'<J!p1)~F!&[j;rn1> i QT8鶈~Rn$V1{9ZXZ1"%׿ڢ[-8%9k}פڽ*33K& ¥$8KRx1ZUdmN!u%N[aWE9NM뤊i޲7#1jŬg駦) vl:zmGC~{ ް9 \ub zl_p7w (|%ne3d[$);[)v+&ƲEkLw9MӃ7b0wvJ&^\ۡg EuqSUzpjS}e[p~4-7S.}>& K L|<4! WM&)~uKV'2IlygwgcFBs_EKGCY#säg?0Y (~V/V&גu׽|FFɡyE֊/3 ėSïbWcLEK2J PuZDDbIRUDz "AQdR ;]1)jƋ،dznP|LB"&Ԧz`U/n'OghgʘE¥0J ؾ ? C-\!`x9ڎĎ<S.+i٢ ?-ȟ]=*Fٟ&-6e%p>B]_9k }BZ3\\x;'XpV_8 lTt2qN.c>7QjNQ\3Xj*] (;AC=ђт YS&ʆ2)X$!p4w4{#龷_#/%_ܯkө Z$D|6KT,it{ lGDeÙE,014V9d&_-xj⼮pF8Gq0rU'H]çJ0D2y{-">ǞuFUl `VݒɵN01PhѫcD&̀F0h@(_cge=Es+Qheq[@yz՟]qP"@,WE[]~fhMR,8tLVʆGRNX"1CVl>! cUt &NաNN#Zo rZy #dtIf2l1񠠚Ɗ[B@dKņ~1A8txh@1S~BdztJ Ndi~}Cs;]r#-M y?vv1+ݧc8DW҈ b6QyQJDa<98{jRc@3 q[ڪp`/8%N9T[HηyAZJxk1+u1gMuLKQe>0"lJ:ΣcT1)LL"TZ$ FPS" NN[oya ${-pk^)Vq:٬&UxfK/<-WXJccS,ȧ _e$JLv|&ְqbOIxwзnhz>|/z0%T:|I]@uG0fFXnCK8O&EVdzܻ#NΏ$IT:ge1ksŝ4ySJA܋tw-ZnRq۵|LϞS[zRAɏw wv₞w0Z}ul{0̐TXŔ8[|d-)A+ %W9M.\%|?%tЍbK]AźI/u`QO%Z{yk„$ןÅ caxf,цC.TPFflx f'mgHY5ykL #|)y:騇¢- ES-qXֲ%fNEҚoOgLj\&P! ,m=dqJ:Y-gx#6C2մQBcͱY ch+ry\wLO?ZUmoI^c׈V.aŢ }r-~?bLLE:aa~B Z>wq%jQS'q@2Q_ k"= tyPDv!/|_S:UXPU"TV1*h[MQ"ݯ/B8GJ9BXS0{ O%^WSQjՒ C_RAWAb.rmO)~%e۰D$J:L#e|z;U7|/u㈝,ՃÔ# u>NP߿wYi;C_>ؔA*Bny,X>  43!1qr$ ͂:¦vmMM;J,o6%2̓.ʩO@(BDl=VP tTVVtHy5IkLe'oUIX)H=Κa{\Ӭ$nY\Fϡ HP$|14l%'@Fj )Ym_lCZuE^+Ô/)e1& _"oi#V`_Nq_A qWJ(1@ei_FI:$;wq_xafj Hc,*>?c~CE[#߼aӘ-{4 J/w>45Xת#;~m5㥉N$(yS/sNp=ZL09$@e bRTJ%VdbW'n0R7M4GL|4&HIpb= /dj-abZzh@8*^5K=-fXO; R9&f#&J2?8b6Z TҼ;뻡޼eGMƯ[2BnS0s[:%XNkx$O<D%>H\'C} N5CFl?Ʊ m-+ŦϪz)}:}웶 4uCs@to4E!3:/]u 7!Xgޓ\O]?j%QMuSeAQF|0*`s8Wz[x3L",tY1Y3iLN%JNOg Muy-{Jbu.iγxn]𚖄-{^T mָ vNyBV"~d5 MKFw/)[& Hk1]v*Ә`p[l,Nʋ. g,<}}%sq]~Ky]HaԲuĨsnܤ~\*G3Ej|rt.lp( g0e|kg$\?D벓z54`lL$rlY䒖7 w5h0'1 $=)QO#Y.dj`Z4An#w2xxj`۶: |<´dR$?پ>}-5s%ԶjGjdM}ChʐbFh*}>SLMB+*}*! мq~r)?,(~ƀ@T$YψI"5rMAT8aoЕe#I,r*\@)陞h6r:;"wjT[wu,r\(?);\n/x6#ըR3cՁ'mԺ_ VT1\,t<ǝ!px=\bFaN&Y&hl0>I߭;ju]؟Фp6Xm~wu#jvYmp&͵1^J9b w6aDS,Nн F.zL}H7OKΣ]+Q&Q/ܦ)-.mPE $t1ljz9|fmH-+r3S(j(M3'Vlvm$>1JCt͐,Ƕ6zya ̩X@%'u-??1޼]_y_fwjllKi%Df p-@ }b<Ȅ#1^2S}M=|+erw9T>];u?Ĝ\&ڻC̰m!Ӵ{ „./п8>́^W{y*H-~; 0.z@齖`˩<䮴䜕ElY5*r*ܪ)0X̗a<[(Ol@RfZ?66eT?9v7 Dj>>Rd8~s 9^l*:`9]+\ĺ3տjY>N<z8|?1;N [[|j3 ; 2H ,YXel"+<[{]V5b )vPBЗ+u|p._9w7,9+|2<-9g?ˣ@_ePr`rԩs?: y KVF _s IH6H%~K)"$E(`>]R`nb% Jj ?P~aY4WdSB+zTA3su*@"a^c{RA,99hpvYdɊ+8EWBux^v`:pya{sA3 TqT D` %UW޽N_r qxS܍i8v.fFnҍ1_,jX ߡ`+*fb{K bP"[ 1P#B=Mp n ~RhKTQdƊz8׽l(ƀɏ\(:8.L8k?;)[q}QG <5ʼ8btI7bQcAq,˰8;޷rEV%ݵI(b~?:֖մ9ޘ(HoxEMR_p)-Li/go ؐTսvl`z]bZ 9i)d\|`#U2l=/(Se- z| (Yܥ̎#3[~z2 3)]mED t=H=K>`[Ҿ-㝷e3ad@Gуyզ|b^3ghl xM2G'g4ZߨPYwD$ =B OS] ^p'.>3LM Ӷttyo?>tkCW1'R slA8 5L$!9q!}{z,9|TM}J)+bKwu@:qݠtO\ Rx1,rw򫏧wTi5'-O*; 0cPgٵTrF9kY۲ȀV"Fx;tp~SJ%Y4"</rs𭏂]$/">;xXNޘ uZr-`_'xKѠ:sWak _L2Fx= ]w{g y Rh ^Q%gGO`'`jvi/NkG(#+?F݁7H@6 *$Aֺ_Ȼ5~+YF 98J3hBlǤ:BQBCa=7+ҝ2"M}yqJ{jY3Gyf^@c2:>Qu^ w w`UwK+v8B0{^|'l${qԗ/c+>|ø.~$2sU'ٶ?ZOZ@Sq ]E[*@rOV#+t<$t=_`iWVnW@sſokMÖ){rpfUTWZbbwRƜF_X X |.?oKQEW<.\Ў=̱}rD}ͿRILGW>}|#vF'Ezo? ({ GcSuzzekb0 pq, &N@j܏]|.rgFUBiF :׹XvX-;kI$*1ו O!=}"T}s/WJRqu՗kv(85y1Do3~J͇{yѹ42S`XqYՍaY[lu˙Î2Mj&cw|?\ 9(Sq[ ?P 2J5'bXQk0 XE +%2Kh L YMy~$L *n$OavsEp}+}_}=QeDJSۿt kXpaJQ?'goC}| '43cc`og忱}ȧ9}8ewtyW,"kf]Lo1=,42D EsP]o/_>Z\ L'SG5 dwP-C'۾XQߧ`@ SRQͳj\ڒWYw0^|3p M}u}ؾZx F;?wU3%6 i/eƨ3c %u@qQ)X8Np}OttwMgp59<NV0$YcTI$[vNCYBrG{b🄋rh/g{FC$m5?4o-œ L y}ݳ5DVFej#rr _}E A1f~&"%Wt3\ʉKj}F8 sPvY YjaQh@_r[Ay߶/,XET} |Tg,F >UK.V\ȷMS7cOx+jX(bϴ 9۹?iX}l,ɋMFuPŕXZ>/m 9k*Bl(Ɏx??ֺ< '$S/=Sdݬ8+iLnU8#7XC| uH$&\Jru`%ޜ{KCT)ս}(3$t5dbZ~ bǔ!&AvxgN:VW="64g'|\ NƭCA5X4(Kn+8 fHucЯBVvdR<-E žih]cP&'J jAMXfnSBFc4X$XX |-I#1F8Aa`jW̨נwS#Eգ\?fa|pQ>s,<$]šu)2ٖ@ͨ PNDoRLRkQ~!2H6|~qtxr v9A)m`FwB"W%Ua`~>Z2Uh@m4SRC_LZB`v Z2nUK]L1&ȃaxlʅɠf`&爤wb+`a鎅pAid|Y\cUB>9E!ssZ/) d'π*" wS>wJ>Y$g0CoS-Rsfb}AbkPD6۩,ߘ 6 ;njNi"}Gm ,a!KZq:QDVh147=fXlٍL9\F`lG)d_nYzh!4G,t:,EIc^כ+9Rjv|o1ow&_4OE4_)4R C~ǒ:EFka*HPu{%#>>[6Eye f=zNՇ$٬`ـH8Ңߖ}Ta\Цiyq:G鑧':Ђ݊J^t*Srfm~W ZjR\r66z:=׊F a3W@ۜռo1zI|߯nW/;H{iw3E*$6=õ$a)p}|E2r%&o rVǦHs4Oڍwyn *]²#mD}2{qejc y@/ijUϧz-΁i9y wC茍وuRZ҂I$;tpXp2e?Y&*p]1*U}GZunz<.!%7 C0Z9p0$+Qk8w^ >V ^h58gfu ͡)*\Ó=5ǗڗnOīPalJ{ 4{dM[L)I)^و $C=qu!VLBn4iT;8aw$CB^B)U|=]|j^'l`Q QwK %>26?|E" !$a \ ˽}8&P"c ʾ?,2RehgX]B+)u}p]<%d} S!9 @lvM(jHTV3bVQZ6M 8tWf}{ -uU*Wd6W7@G;Q˿*(  0B\t2ka ^C"~il=4{Q]$^Gm˅?)xU!)%o?6B"Xu^8gI7aTgN+:"% 5"weЛtx˺B>HVg 6~a B2`uQ^SM--$RyzF)OfTXGJK>-Y M©8l8Zۊ fC QiɄ4L;;tЎf$LnGEqyw\P+@%)pX'& 8K+%Smw5եo_O5]Kt Q,̌wW{5(ny'"vZ jvw^{ v]=#͠Kӟ 1[TW[6^~-c7  w3LnY?JRw?/U(Q+]h뢅~~V;`:5$JrDs_pxArߘ T rF_DmC?2Gc>j_zꖰSTq |B"̜ Os˧r̥X ۪}D^\XŽL, ;.7Ly)riDUg#)q<o6p@ 2))9౹qRƎƸm" > E;vҖIX4umyB{w? ~QėELj '\om}u n;J4Mo nD bnb]ެmS%̙!,QM&2u$jpp+N4  +Cn)^.?n7m3P.dNZGaq98a~%\Douغ$I(l' c VHg[ tzsWqJ8] pUIAA30,2>&ԙ/yVZifx㴋6km ˍ~F鞻T1t4)q׎w4$Bw>O#}m)GѓLJMU;0sƙ`+I*kC L'-zVѬx`Q |5:e7r}]B('#^ ?>7DDJĜPGke-?d3_Fy@$u)&D{+JKʙc 5v.[%9si{Ҹ GqVѳqI'2`Ѿ8(C/Vxs( `z+ J $1oV!ͺ c \ e?]41I,V6 X;;^;:{=~Q3P^x9FF y v,sxGK|azh2tȼ,b~#BT/ZQTw9atQ+ 0K񖹽"x )۾)y+  `AbFA5LD[w6!?6TraTN]G })TÈ%{ 2h9 C+:.ܗ9.JL@Нj X4(τŃE OK=Gph,[ O~vlC-Gvޛ1N=9̻"%ݞQ-p#1/Ot57En:=3U!Lu_xDvi Bl883ħI"Nz:e7$V=*&b؞ Q?#x=MFh.!Oqf܅T5=}17a͍WM>څ iFחEo>6=V xMS+]v_٬cEؑs0`yY5݆%f^v\'Q|y5U 8hoZwpFWkhJT;}W;LOfE3=3}=}XمN(>#fbI]>~_|JU5BUϽ(| D80%CQ[5Q itXM|*}kf1fPJE8Ά.nч"/ܬG&?߃LbP`Oٳ|M.ZItU8-Xs5dY5}R-NGϞ\/x8OON ꯀe]RF)ep5Ftr-pnn7MgI8682;HuxG3~7!,V`{ϵ)]kz7F(tqLJS!]B49Ӿ.msx>vi~]_ul鵔h`ݲ-4_Ddn1E􌊷eYz3^m!ȟ9E-Ԇzn +'Z4fJU2q^>vD|ƱX7%uE΍gvr:u( 3^^n5~$ X)C-=F8-&I*lB ߬i\}YAI{6j:s.YA/܂8BN#JL:!iԓw^vQtbZb,=PAVP6DZ9* 7 U&Kѥ}X¹inn25UXI^D0v薼nE3dJivOouBg&g㔌 7c:W!a9S¹:/j[NPˮ餆1m;p*u dP$g=p# 4Ru:^xUHirS4y?mϧGTQ\ZqYV pScOf{Ůҗc?Avxہ%DR!!Q*KQ )p aFWZHsK:5Z/,|! _oR "]9b6D.:yyEL~>a\-ǡZ֪ T$s ?- >ܡ\a 9O:ʿвTώ[p'MɨX|jB""yI z"ސ`(_:P_rZe473S8x+IB 0*/yC.S_KQFSg 콾@pPC plYogf f󗨐陘ze xRvpecs'%OR@lS䨱9&vA?55f+^F"T¡¼qx\b]-_<'sšd VOQK|KEi"`µtdW0胋rT:parZ<މ?jGNM'K7)@`*w\H%6L?AhWYX2w8Q. {j7fS5 J膥ǙE_~X *%ZcxKtz?۝< EIv(Yhrok G͵\4MlZo QOMs R)g[`ej({`/9U,g5U9OۉFƤێ ]y#3~4J蔯xTӾڼ)u: ( OŨXiC9+Zp_ӅGb0íי޴mݓN\I+#?𲍻+T1o,,Yhc=}XCɖWIA/;u::Pֱvsafg>{aT Hia3OlJ!*U>Ngxfx91V'gc`/ZEٲh`rYr$+/h . >ULݏG;Ψsr~Z(I繴Rܜ$n zp"|N[P3^8Nqhf''Jؾ)]s+.Bj2h lYaǼ{ LCD =k8>c8ȥ|/L2Oh&ܤ P`F2 A.tT#FOl.Seơ0\`~Ut3qFQ6ynm=-*_ YVJɀe>-PG#ܵc2 2P-F`=iۓܑKG8q2D+r&_5C>a@kO*3z wŖ6{B+Gt_M8Ԧ/á~, ksV!k?{\//au<lX~K8ZyΛG8 avB*=1tx?B$`m :&mmonEDՆ#|Jc8;}PtрlkRm/ bMK^ L{{d \{ntCR[m*i7}2;]>ͭv6;ڍ`;3LaO'mvNW{ &OA]Cc5Z1"n/oxe{j=k rFbjz] Hc#>a_),C;F Hm) gƑ'uun;j1\GQUks`MM3/?6D/ccVl ߏx@A%', 4B;]uMX+sHzx6 a}> QGӏ !ŊQPzxebXr(󪂹 ?*7u89|-qݠixz5g8Ͻ%?|k̺G~sB)tvhw={e$*&|G4B@QjEP`Df1"]2C79fOk :_wN@p̏끿:HsI= d9Y s"L\0ZI4+BD獲y&KRsGn'W͵5EHfcF 2)"%])H/A箚ުY/,&(q֎Y}8%Nv"SpX )&TUgzX9݁7[`pQv3z"wp5(A rq VT ud@䦃R'/#N)IbF7uh1ӬiLv@ٵs X5֕DAu# -6ӵjH<)Xni# EE'*yӫecV9d]qxk""H{8 )&:=>VeG5_R;Q5%M|@V.o'j<:P!"aKOv6Q92(swZ %H i߉Q,ig!}RuYP;hf;rrKkj|A fB:؊'}ݘVdb`f>,U} g-L&;1#xsƅ Ѵ@嶴p~H,hog`ln^xEX>؎ľIᴒ߱4 L!l-YˆQ#pC(?h啊HY+\E*3P OKu5&xz Fʬ\lҝgƪ~mq 1gu`D`UCe6AKU6 Πt A{ۄ[w"mAT"OY/nvkKz1i,1PҁdưIew RW!je^;ӝq*rEJm]]OA#p#ʔ׀* ej8V u`Lu9=(Q}AL:=8 X nE._[P砏,GF ih" W9y63$a4YȰHѲ} g[ %X&rB+a7䌹O֣RԢWrS%؋@n+~i N`E-t*pqKո@96+#\{ ȾJ!V`)~b:? r:.dV&憊_tPJM#`<w4@ԃZp : 6mo &272 iߕHB.<'XɪFQC6K=g|e0J%|Oliβ!c?Ok2Ĺ_u[aV4~ޏ{_KXD- A䎯8y8R_PPl.:y@q;ڱy;yR<=v  eyNҹ7js&4ٺUG+Р׼u&|t/ `Fޙ} 1TT]5mQ*)_!|(MŢ=a;b=>UՇ6[D#Lu-f -E%I+S?żE9NWT5TUڕի={~qu;]9rS4C,fH>2A6N։VG4)1I>LmzpIs7uWfm*3o jNP .@|?-}7p7s!v)rK˜Wvv۟6,*=:X,>6Ih>Uiťw &A@."O,uh{Sc$H?7Z!7+mT>VhE%6 ykSx{\=zyFtjUPվ NN9(-%7&X]dwÊ^R'[a|+-}7Zr[rԶ/؋ sl+[rFHT2?chatL,lC6$;%tUD\yh{abQkEl`H?\ݍ]Z{gzс`0 ~f)n]EMvt>~Oay;0%ltfLS6=f)Få^ÏO,6l {[6ʣ4Dh )SP:( |0uO3| 71Ў4[.8 ֚2~׻8p>J-Mg4i7i *  5{#_[4t*,1Fl{-߳&=m?&e4"5^0lI.CFRޢ}xrFVZ !L ճϣYLa#by (qM:k>a)#N5`ld9lꯡ3'*YV7jQ o! tQ_ 療D)uIq[*S=@ j(ˈOaþ6hrGfxP =Z)imSn<, S`:gT Lm@q@} ɗ*hfl7?~*QW%B>'7 HMww9 G\rHrfȭf(;(8F :.l-6DY>ps +혋qNk%c {۩kb& gFSfjצ.ڣv  c =­^[YZ0Rl/'R~z$=&jp8X@VK+̹P4  $Z uЎ28!wqU:&MXM5Z.l@*\kҁZ ;p48";:ɬ67/^]o{#B]ZOiw󁥔Љ%Duȅ[tb1o=sҡIuv$h1`*/EGpLQliݻ/҃4/64{^.bM)~v7ɝVw, X&|(tt4Sc'tbBZs^#%߂5SpTno]ySq'PvUW uHk%;$O %{ꃶi{kinB)o׷V>ALz=W2ƵnsP5;Ȭk d6l2HϽ*"N JL/2+=.3'rS7m?`}A,-|u?NH7n&3Xma%5~r6w Y 'wVE 꼕ԓH+dʖҵ:o0ǀ$! TN_)SPaxɇzjѧ%x~~5Q2^xHۑKŷujB.|52Xrtj\%łˁ@JX Ǎ[z,T^MVF%F+p0b ;_ւ|?{>$̑j%%cx[xt3k~j7a5rR DpC!`(霗vx)4_dc`V Ck~%1LgҞ ̕Un0Sua 6fuUkh2f ً[c%8ջhlD ֵ66,)'"y!A6>O'Cò|K8LzC0STX5#ӄALf!.7TU&JD*+۵Y`5hѷ}߷Dg;ьW*3;P 7,QޘօVYtBtah meS gP73Ns{KOpKX_YԦ8Fpaɇ0dr͹fQ4i-e/wJi~ :O{ܐD ˆrlZ'`4x[`YmT__;mϴZ鷏Mv ڂkۏmX"F5ӡUǸIchB'"tZ8o W QW]iZx^Fqr§-w1wDٖ Pķu^)5',2g(S~ -l<+d6ȣzSf>@aM(w4Bvv- X^yA-[}]v'Ut]Ώ[\@IY2,U?J5a'\tdsd`GzMtUXk[GU֣]@tF Y;OWa_ߔk80dR?J&%B}=~|w3#N,WvK/zުILܒl,ķ=XtJ&xn  qJ@4 54S28̩;X=^%m{Q[ 0J&逄+}Z1gu~#/ɔha5Sͫt5@;a YZBH3  ;0Yxкڪ5Y1 d3gT*rWycr/6Ie|bOm袹NX!yoK & 8WŲBn1 nſe ۾|ڧƍ jD+Դ%[ n(6жX}fԄ]]Dv&V8^#l<~3ve_O[6,$fJ-*Ho4|E {ɩU2< 8|AyD7GX9q ZT_lJgu]'9kfnѪ./8nIn5'FT;2fM9PnBD2woI 6f Y6 XP5|;dS*{hxdbHl Xg\eeKZI* D:~r#Q0Y3ؖ)(HFg%':6Ɗ|w!01Byt^Ic+3I77(X /{Vpܠ4m Ko^̯SsZXw(.qʸeL&=&EfRd(*9-y "Dfvw&v{Rx姣vI-VΠBL7 t=,i2&[6,#GNa'0̞4=n=?vrq#L K4Re !8GC8uΠw}ijS(AlˌscrtSޤ7'`MUtv/Mԕ#0"m> Qɴm(D%I|׈ջ KX_׻:֏i'UhǬ~Wu$PW0%;KMV7*nڲsz$lKiٱ2aJ!H@0+\O5 ͮpŝ/XrNd Xޅ$B/e9o~^I}gzxCDcU M2-fڿY2땿!YIQk8=q=&'gjVռ]E5>\P0fz>]v#\3Wx,]Ѫk~)6P}]T 58]CWWfǃruvj?XC)42>خ2W 4 #Bd\&zחԉꨚ uUtIh26-#9.&A7DqOLǕIYQ $ jJ_ h+ j6D6  hԙ_C}D9j^GEt ' K'W2 x( omlɁ@:`=HD鬻Ttül7_}%.l{HQcUxXiG*X Rɷ1i?cL-V"c1J88I% Z8W[I{*&,/YSxNcQWB)2+\Y%Q٤5`A~ 7Vz:`fF]h==T%-HA=J^4+0{YotJ4+W\ `"Ok[HD0-o8T J}BgbY!"b{6h9َD{QܐrtodipC_mHm HtU`ax@ p5x=#pN1ֆШZo|) jݠ~/4](ThȨ2r4/ r_FFO2}e0#&80ݛp?W͛6$N]ꄐQVLF+JW-騝iYE-c/hoY x[ںґɴ?-)/[qqPTt@5' ֨4}?.[6[ j=KP@<~Aޡ8ƈ@=tВ]8Lcx)rϠ$ hKPTeR٫v 'IN B xf.Қ"ou6yOj aXx1ţa{i@)0W.Q`oK^m-E[ ٵ!2L+c/hzco+2`g-C'(mǫ>%l<`δ^..Qol+1^pA,FT;srn46I`(kw<n譠i4Wğ ήF Nŗ|ZKL˘,mr?6RS0[.#nQ{x5_E^Rv&Ag}b旂Fzۮ Mٱ&vi;+EE bgq?#]#ԉ+b*z ky'׬_铞|NjvBRe; 5/ͻ&U)}Eib,\I gM6x&;pӝ D\Yr8.U;t*/;/s_&.Q=R~&o("Fv7>ebI$ԬN2K >>kgy%HuN(yû-jV%W!J9J$_p9,&NYpzr_v 0I_S%!.6pUwVß YbixI0 pD u5? cI D (^V۶reE)肮:<ӹ-47~)]8OֈT.N>=E2L M =EjS/#Ѱ[j*"Z 4 ^!OQDu'Q*%^2X7X01c%Ysf=É7QZԯ>@c&bd+;ך &$h+ 4e0*P5b.9_ aL%? Ct[a/Z0vM:{%t織Q=Y;d X|qd.7Bµ}O/u6k-˰M{Botj]a!bO([5r}֮P;.D<<ՀDZcU1#0JmJDLEWWEѭxqL;\PNXa/:pќZE,Yi}<6+_UW z( *e`Z~J$o1^G^9r'b// ׸YH=Vjs6*@JJfNXc>&,طi0n0|5>&ޫvL7$H<.{ȧzD}J)ǠE~/e_c}^_Akk}úh= *A"ե{ fJH8fmj~Ҷ&AnoܑY{c1]=NA;h7sZYHhÛ^h> 6zc+Ud'](.p.L9k"\գc`mW@@t7 2!MEHsfuLJoyL yr[d<8@M{d`DHmh 2rYl|OD}]JI$#g}H=Bq$ПN]ڪl )SxG FUϣZc,ʮZkd?ҳbXb͈̓]"Z35j~@ u zriu-`vyAmAK4چuߎK!*v8mt/1I_I;h.1lG>rރa(;]pGJ1C~lN-V.LP0+?_MM2i f" 륭J^nmA.I I5}Qu1;ۉ-d]w\{z [+2(I<]I*<,۶r-Ҥ4ӈ+E֘DZ~՘Ɇv>9sx$n'pQ~wjVj^Aִ|ֈ9y,W6P^SL? @菭5lkvks,M'4[Vf@g!Rn"C2i=6T }{K?xTeoQ# qWݶXV,Kl#l DK"V\8jM w" l T}wҭZ4u-0d۬"ىAwl8'Be{%Ny,`aR`JUk&3n}lFHNpH/:ы.Ocq2/IA[Ch"Ec!f!k0m [& FJR1 n>Y[CA|8q]lo!cTL..6]k-o HiQ t!nKkCk7"H+՟I-qT!a "6pMRp9\J?BqQ|)DP̊/kZf$y~,eA ~& >jDUay*\_ 6 |$cW'YL7`#[B-1 h5а .ڽZ%rCq/Y )\ &QEΕIE$QuRLnVC(hF N93[,yMWT!q%E=Trrz`q6 ån̡'"% ZyKēх iBÛElpe"=}h:X`nv@s@Hj.Ӓ95>tѓ0RUlٚ 3MU~wqRzi?gbDpMOe-zîaNyFcąEUpxbZD)UzƶCG0T-yX?TSl}|$mKfkDtRy@H\wF]*G>Ϥ@kKi1&=f2§E|цG8%(Q+y*ҋDf-nu*l (6'u"8z m1g;ݗ=tG tuwOC1b0tѻ~=֟+9#mj0ebuaa*ZZCOV1ڂ*Tk'Xe! B7 uL6 Ihj=/RYRun!&Qyc"Һkm">}ss v}؊D4yvKCC^tA-wwT9?Ë3r1)yZnoaz7F2p"m&Zl,ijV !: o3`܋T>Ge'o  /"KlKԩk&&-ޟ-?7 G 7(qWS{xG7평Ge=_gTȢ'꬐ #J,,i{\J_Mkuf؍rv[FJ cJ8к;iٍ.VBlI֌g1Rpb44N/C!@f9Yy(J[= OiA 0Q8Wvr:yܾ4ޏ;QE'}OwQi9OvDȜI}p䡱X*hXgMP&Ŧ*}%S-YaI,;-a+G]Q-O_k o-KuȕR4ȯCZ% `k U/C F>c8Y0YY&($Р`K')uK3Tng&gPHTrc 8+)Y`_a͝Yrǀ}0㺚5cs6垵ΉxxP ,0`~CM`\oØ$ C~+Hz F= ys,/ miCi2 hw)TE, sNHMi=5g#tNȠZWSqD<].Wl*(!& Wo?# F H -7D]O&?"vhX˸ (w۷V%1|_Bu(.c{s/W 싲9Ȳ{əNL=yO-Y&1%'- `}MmH5tIAU얦/#oXn@-ljEJ趘OmSa݇k᪞S.\(ck uOvRY*ex)֓n'ݖ9s?&MH5ee$#SK?%:o&!a}yء; 7_W Yw2,0PQ4JP`~<\om04![qbIԤE5`S.0K4|㓸4Crj ?϶N0wb5bVD]ͨ0_;vM'Ԡ+qΎ3SzߩO $}4Ce#:~s\(R 3\]x j#KFO@a[ !8\6K.0P>4@xѶ?v_ A~ ]"n`GRړ|la6)|DS254:DL;(/@2ܲ /#K6 "]F ޱ琼 f2 {?<۸%XDSO4?8u2Pr ='6 d cM^9Re$cF-ޏ 7Yr&4 䌿N3Ղ:]!SU%LM'QL y(֗l/ LHXp#T` |2kC' B^ќf5I׼ia>UE;j`p T}7Үkoz! N2ʊ4Cl,jlQ_E8˲KtR`WJb ›$䤒%3Xx)l HN*I-g 8f|7dp|TK- uVgiWyحnPL"P!}3v53@Z\* pmZiEoj%e-he=貨 _wd)gCjc8R(.b %FnMvNtBd dީtQl$K5Hkߴ8oU%H̶=>a7j}hk`ܶyx5sdrs3ԸkE"4HoW;[VfKcC]?jw"K<Ŭ4OU)S;s&qFEI-Qi RQ0{y3Qd#~aw3BHDS'ԪBڗ (h`͍P7.sqQTA=! )-L Ш$Bb*Tz iGk:h%+ePI-]M5BB{=?VE+t4=.[C٥yN /l OEsXpRE㖷Dg@|1|\uN'v^LjVX# /,fsJC'N-Z@嵼W$Tjos62-g}KՓY[b7XEX],3(XԿŔ\5"ZӪkB :(2=:Y_ɍa;H>0i[(ɩ{`jNW3HapHbO_iTЌ#'96ёn#J?)V~Dr I3G~\Z齊$9_mZwh@s zPip.w ԾLb y'a-y^%jeu6P@JNI1J2q9/J(Cjb'歓őiӬFs`_8Hgb^(Y- ݜƓJRǻ؎66p1nLIIHëG<-)lmɶ /]k`i`87Hm:g^I;19Гǎ<3ڄogzDx҅C9K淼\܅Ca?@O|oLjˈwbE^/E: / BJ#lbɷ)h!.WlV/;y j\I G͐G uA*䯺6;n?Oh H<1:g |bNvt/Y.dk4SQģ1wXI4Rkq"4Qr q*V>Ǫ ]s ˭\i AI`t碀"(~]JTA h.5PQV \A` 0萢\$I-*m,xA#5rE@:(/gy;(7T+E,㕱H'3o#"P E#GD011t-#LU^gT 3~_Y#kr@l2"ou>bwX3?2? ؝#gME!$H+ Fhagt{[n b5xM⼑8|\Bt> g Y]ɆC} qd _Ϯ (2JkXD;^0rx)EBLLXEa/h[g'H^S.`J`htoJ/1K""a j\t3[;F$t*u#@2#KQpG4C/b=4-p$&Q0-L?0x w0[& <ğE)-PPt+#<4[-XScF3uqE9G~\TKk rٴPo3s!Pkh+`KCyAh2^vyH"aN03iMCѬx/YJ=<˞lL^K,\uHlDujM\ғVfw](dLķ$   p|dL4&sdUs* >5ZӀ56;&;DieRho_sr$zNr>ǦkV>FAD)ֳ'Cc~ _ag / d/< i^C/]b>;R ׾\.EI2.$-4onqSn-+ b' 'zOm xD9$͆Ӽ^4"Īf4Qr&=.HA5zx{fAqYEʧy@ڮ}o}hSKLc=qfLHBC8(r*l׭N7\E+)0t|oVհSs+4_M: 6$/^_t5@nHńw옯9Bհ8QPa & p >!Mξ5V89ll>ADw?7L}nG`e=k[4ult+Q IC>\qtdRsOH|AkӣuQb~mF?B;gkG17>~li5s[5XtJL^V- N ҁs:6'4񢬄C7]D9:?TǠ- dTJſm %?VTB;v{5I2{( q|^ $1V" =Ś/p԰10|}^^> Zӿԗ GH:>E"C`8'p0+f7ۇ6c >YJ0K3]{qDPޯq^{dR*@CxO;)M=NjðҮ3~+fq5(f]PH @Hqz}2R,>=7}&L҃YE`>u:v䵌߼%#$eBАR3VZ4=eL}٪@3GĦ^,n1yWߧX=$9e2<+)#4aagk^Li)Ol=`g@+^1rk74}7:D/YB\;HB0j́2wI›yr8Hy+pc<獕ttՉ8Bi!ſ[;y0l. x _"*rE X@ e(U OZ ?޼%ߞ1;t2(bb YuUx~*eߨs zS+9;1\Ɂ;yRC@QILwgXbJJsЛ)IܬCQYԋwV)O-g]_}0DԼ"a;78',F ݕdgf9vE$y)4-Ntx<- Ed uNԨ,b(`HpW'4~^h19?:CZZ*q`u1} !ѭ%c@]PDRSI=>J@%;zci KJ\Pw,cݯHY"-t=zn3w{w F9Br8[oQ:@_zja?'R dCbjju.*W1Ⱥ sJ v+7A{-mԏDua'rMq f$V/ :5E\Cٖ1e- # DG,[XՆϤ/,~PRe*\.љrOhgm SNpZiTKhPyǤV 2wiy86;*e]L(N哑Io;Mo~oi. a1⠬bsXOC"O~t4~o3ua2o1E_װWb|dqk:@Sew);˼,K5,MUƶ[¥KQ5:[Z3:7FB1qM-͔9oI\ym'ʋg/hҫeiIH{d|@HAƔbwUpiL\F}a߾9블5Obz9mOܸ&;.␂|H&gc"Y/򮞂",Ea"n޸؝{Xu6em^FQ19W,o: W'|sO㥯^"TBogLEॣxX$R|`*x}5vgFt2nk}OJ>$زvx7o 摠otOnTWвDt7OYy}3*x iW M33e@7i&]ҮƯ^{=2*Q~4"xb .Oh[YŁJw2c.0z2XZSoP_SWIHd ;orށ<RiU64Cle麌 )'7]\߈ {4CyogW{U RWKS!Q\5IaQk\Hbd)muXz#_[2aË0y*w8|nڼ4T9T@q]|/?e/N5I=k/֚ӗIVBQ CLj.{OaDi}{%){ )Gr[ɾqn4y.=9Pڛ1bUų/F _xl]w&'M' &!W[Qx 'S_g6} Rdb9E!X4T(5`({2GEqt.ΕMO;`/k +%kkͮQi/ThK^0S];Mru;l6PO0$MPVEuRXW*]OE ԢTfi㪃ci%2%U}+Vz gFy=ߐg%9Y,mՁTG5 isF-="PXɜI]|`&HOaoU pʩhqx?k07~-D/q}Nx B)HN26NF%/٘nɗ[X6z76)֏uM)CE)%qـej)1맋릦VX5Tj"w]ޛF,aJ5H n\`7T5-tv 3v(f4X"#3F5~?L1*>GKp;73Us#zr;l)kw7}mk/WkIdgYS4ɏ%?)WDplT7om΢]]+ )j]= a\f @;}XYe/*(w\]F/Ho_ o+Fb t";A s|o]jIx2fZxVJRU8Lq(KKr ͡15 E묟|stM yBA_S#>q_n)]|İDG,%BJfH*\)¢ H,I%pzZ~}7\{/ſYpD`ibq_c(,h>J4ӞPIfnѩkn3 {{*3r~mg$K{gljM =LjcK=s_Ϡ!/)7Ojִhܲ'G 4a>OXI DvhB (*O>KiۊyL+$Ȳ8j'De#u)͔8A*qZD)ѓ ^`j''}_8 pqk3V7=8%fzKp< \w7|wDOד 1dPA3~c~%sМ3N\"\WG9FGZAfpӻT+Vݿ86ŰZF1܇cILI?t8((tr6  Ƃk,gf$5j{UY|1~+v/(׷yk:Gv0/ógsQLb |학%i1}VTX#|w&6*ph[}X6ۧ3¦}NPh\Q%㒉1l8:vM-G~HHjrx_Պvk6A˅[{FXc*[kGd_ >-nz 2=`ŠH6[`e2-a&ɔ'Er4V*Q&jLcUx̣CN:ʓȎ:q)NwB&ze1YI3x^7VѸ1> cujԕw;)ծ")Av uHD N14و+ J$kFˋ',@̤ffn(e-M*mm}h(gvՇJ%dv . X. "R-?b@XVb~|zHXU R))Y_Qq2N (*BR_;BfZW9>r'V{}pIwڈ1vOCZc@ah-;)>ΊFޞfJ_gSVBj|'ԙ=骀cwy6,~p=ΛdHԏ- ?kqBQvN-. L#VG8QVIngu+K*aqP}q/x7ѥ4 a Ckf/Gpx'h-c0M`ER]\UO{nF|mwkQ:gÃr(,Mw!؟W ĻHoĵkQ`ktŘ˕~&jLSr|`M"X_͊ ]kx%#P6q)ml9Ӱڋ:~3y]u?si%Xrp;h'C9%I4q5V-+!;9}^_6t06d\i+㏇E9|4& |zW 7%谏?+OFa=>\O](cfee@ )\ oqUSM]z,n(tETcޞ0XzJWِq9q4MQ pv[;!nvH5?= de3 d<50≭\Fv;FD(‘w`nQEFC⟸v jc^JYYcRm=FKq t-0=|7G![HFŹ^AHtKI? N8"+qp.СbWa;cO|RpOdtf9Gp(#aXO?&tTikZvZ|5%ˀu`G̃@,)A`MԂy =t{n 6Oo&zWII^#_&0R9/xۘ(x~[m}7eJ_ќN1H ā2.w3.. `m7DFDt,'_YbH\*i(zGN'Vvb ,S`c{GɮԄ8i[b/ILJƒ d f)PɎ"h%7iɅQEz5gX]7\_|j]g_@ WI\}\z+? 7O#A JfV_%8,.p]== :ETBo`td2Kd l{knنcĻ`h L_|{9 7]=9ﭴgG搗p gZ)ǕIyH¿ g] | \|C^A7d[B}YkßX'J1jO,pM]Eמoj>* WW%;ǵM,!IP2TB$=M+z&oYfK'VoE?}-r"wT0K,ХFXBtoP-8 й~}MMܐEL7[r@R뗧{^~ blqg,)Y F̊1< |JBJQQo<*3-.eE\6VO<Xs P R3Wrx,h, |tW ^gc*U8몔耥v:4/ !NV9K|(ZJ\ݤb)ё=ò_80R P7lQNk^YQBé\Q"94/ ptKa!%Th흆Tӣx=?zv!"D.ir'œ+~dEFKK"Tk8_PKySu4L^jp:} \Ii|-*ušԨ$c~R)imkݤQG`WnortV-@~JU2̼V/3W9R E'&vmSwO{$C">-{_3yXeۑQZȚ5|Ө:r|^7_%?e<.-&>?'2J1  w,KH0! qs VSyiģBcz琣W4p> c)Hu }g. {w> T]{M]!@w<(ڹ˻ vNU0" O4E˥O><HR]T1n*rG>nX{w]^vB='<7\

٭ \S80g\bHECh3NsErIG̈́,g114xJq`.-\,d(Q,9lRV6(Wu˴QN2t+KQ2d $ oJ(C}p:,7( v>ͱ?IJ>p*Zp,i̢UACq:$VI=BӸ2+DokQ.IO;jN^ ҸG' =bmpY.2Hf9굈&5$Og=NR N(wí|,ްeCn"$l1볚X: !##)9ռI8Γ=Vu\-n 6Kgqe3[tzAoR`j y[p6Gv!R p$ IЦdzo&ReA*&]ߦ~WqACBwb1FU$T|c.Y>Gq%/5jE!|žtxGx(4plId洞Jfu!T-}2v~3|@ vjvܺ֗#Ǒ@-Ab'FZ; c~EY̓"%C oGz:qrJ@1By,,l 7E\7~6OIjM\QY MŊ5c_AdҌmC L虭箧i~&̫aAp\ {( /m*ڕ{2Z:Tx sulj_頢BAa~F ҙݔX@.7\8Bę[廉~xzG=)P 4݀'x\≋~giko)W#:4,~?yd pyJ QK~Nw"v$KQ7[tlް7Bd (6&oQRnE ^d*ĭ9\0/2n~.+x7}]siSَaik (&j/4\"5|hhӑ>9KAe}OU@_/`[:<ӾOK+bQb: ܠW?Zt "6-'%4R%Mq M;aX&cW ]Eۆ5?'{`DǕGYRi1!M<~:.QP\gUDsYӕܗhWAJ>B+G8If<%dLv D.;aM2 ZqOMd z3] J_i~>W;:-Py@3~,5E v)eIzUL ͕ns_,ks=9g4`b_ ̪\yR7)_bqtմ iѳܶVI]ޖ@L[GK8olTYI 2a8/ԑMUΨ|?Rr=g _˞(TFYJr*Z_1]@\Ny1rJ K\;>6z. P.#2>Ύ :fC l}ܱ+IZG X ykؽ~G¸"2%z:MNи;ϨҬV\%q"U ;7 Ts0o-K/!vrw.-#ሴW%FA Mrj ^,mJɭh6RߙʇBx?jzLI$iQ-Eʥ^;FzlD `}N 6sfo41FBhtFSeTdz>ͧ1D8\͍OdK!bw% O4N7/C)(ѻjqrW&bSJ~ez fhdF2~ԇg4]/̉Zr%x$*cN u&ROLUiӔ>D}V៧* RIu# GV A4[|5]cko |22RfWγASR`ӫX8'F6Nwa_&YyVu'dkX&)6ey,]WŚ9Ľ,Rh),¥Y|p vF2&EǨG\Mڞ2y12yOymw`ty.ޘ=`&ʨw=nE&! ]geDߤ껐#`}8io>( ƥ~eMl1*#TSvZ>#lx+:7Bw+@={~; )dq .qy ׵)wLOnjXf uB{#R'3܊8bN%m 0d +;8wxM ҚBl0>@[* `}L1A w2V@mFPE㿚D3I>tH5!]kIR2__J78XŃ|CG#dqX]RLy51J_$IoBɁOG1v?h$4][Xİ)q!)YܪyUzdӼv8o'|_^jaR٧prE! 2lW9i7S̖wBW)n/ܙ,vĞ7ΆfIN *_X6$g$Bҽ6Ha5WDlYK۰&Y8% 4)  <+> Iکq߀[!Ko@>\iTF>0atmbޢ^9۲Nׂ8C ~etfn5ХyqߐH*kco``*TkoFA?=~Qoy/lQ6G|NR`^8O4$ ]UmgkdveJ}QM(z)'7S!1<6/T>r'3#}E*tr^\J+p|Zg sp5ofpqۙ v>WJl &!s@o wu æ&YP(J/y:6m'xI涋#|H&:K4E> $5"H'XWʈVI߃u6O+O;}IGԱsaC ]Iχ _AѺC hlXq>DxxBG,==Rq;hJ7PpHՒ!8ODaj6'EԾe`GڭVKBK#_#,ƪE9 Ur%}`B$~K~6{ p6|& b|flwl|=ޡA'&} 6Nc~t!-~!Jfp&b@tv|ף>*T!"T%RhB!P6x}0U X g'^kj}%a+d J\1eP,g {:(&Q@O:Hh휋#iveRxB顫g֑fq^F㻮 `>}ٜ0u@XVV.,ܭ%ǕAwT:`9O;2żro{^m ͈V&()[9jEMXͷ.B65+ĽTl@doT Y7He`vX{`\#j\8oJ˥. W:D`f[7tֈP?%' ~G89mԣJǃZ|ܥH.P*dԸ_4G98@系Fz!V"4_>W(Q<م~$fP#䂆Dˍ1B>P43)$.Š Ӿɲ#*wca$!~TA_"~q u My|#xB[c9γ5AI۵:F)!MIMQ]o./PV_gW29EyӚbڞO Vj'~(ƼO?RAä^}z@/cbTg+ (P#z:O]KℲ0l=G[ MEyDަ,֭. 6m/)G B=>exi_-]xf[![X2ov;) %d C%X 7~SMd^.r>.{|"xI2a-qP׻iɍ0/_E[Rmfesb ;:+I8et@f#>yl<֍st\TO9T&[i[1->pk4e?lSbJ'h.CX v8H;&eԱ0λ"(ʀS:G'~u[P[B2}M&%\E+"VzItZ<@z5D,THtzyһ}"V*(BFhpz8=wFI)*f~f|;7v=y1]yg?wf՞!$͈qCYFe|,Aݑ !V/I9дC^kIEWldH-HGtӕB c)&'jϣS3G=~ {Z Ps8gp~4VrқZr61FuH)"dwڣ6$KdaS̛yb,'ĦI"/uY|#-Q@@>zZ-[ &4oQgoqf!Iӭl[IPB_5Ck_vxRlH!y@yΕ G|ctT)&_|:(DW?7KJQoo*92ѯ-m#CJtgX7cVG-Xtҩ/_WObOJS㋉]U"D~n躏A6]BC;.]`~o-6qPNV ڟVi>r$Y"i\ŕr`{w&gbEC.a!$5yHV0TI+V4_ѠVrKd-ەJrwǤs~ ,7Kq\YqS@P3QTƾ\E5ű!w\z\C# 8u: Y]Î>v wS {W4QM0x3]LzÛgXygh0MQM U@|T*RN% P%WPRN~RZt0$aaI5GDMagF_;ZfċT' !]u>\0OTa7;d$Eet[[feyPg+mA}Um]0Qi07[+a1~<=AJ6\J5%p -o xyt.ſvr^s#)18M32oH,]}e+*z2%G)ir"sFDdu)LxzO1>OGA51Ge'sܦM0-H3^ 1jREZP F#!~9-x{c.\ >>Oz$]\A\,:Zeh/:^.I) B({ c-Nvɾ a:AaX#-8oflo&g$DoaE>B\nQi.֞i>(x\El;⍄tqj@96xN|Q)-`ꉨJ)ТO2M\Yd _oW/#kKDBKZ=DЀyLLUr}:+PiE/ z"zm%@[q e6 IΗA6M:^,맥w=]1Ȥ[ "-jڨTT5<i =Y(&1Ed' "JuL@ !JcC j:aQxGV+y8c#ZSL 2ޖ涖xh\Fޡ#D$NvcטRS:ɐ_Ɠ[/.o LX.^TP%E6=jX)1""'b!K"kDqDwЭTp~XXyr)-w(@y<]e; 0,0һ;0s2JZaJ%so<ʪO3LfXm{:o?r8RJ=lsOgZHz)VSL<QI V&J[|y=sXoTƜ湐u,bo9Rݡ*W^wj G)S,{# }ּwyq<\|H 6ب#)J̼ 2F(OC<%xX T43[ įbO dwTC%7UzPMC;WY u`<ۦ9?QAKz"Tq5"}˪u" .C9&#|_3FgkpU{);]sgYRjX@l mO X(OBܙL00fZy?⑪ʔ~l#1e쾸Տkxpz#j)* Gj ˛hѡS0HYi7,lyY|/;绳 LT ^f!hU TIri)ȆokP ޗ! E3?>Ndj\Z:Y`+قB%*l[qbۥF$z1wv"`C:xe0 KlPF<u(#Hc>RUJ6 :L另p>1qcG$ x~IS5fsq|:'~7RgZ=ߺ.6Eh\IBKK.ߐ$y`?W"0pɯg:ÃA>1N v̉V3G|'OqrNC"yAMwRT/m!|a"Jy@0?4:AdiR+7M_Tt ʊ$d'ʛP^ c돛t"+W S&`>]EWά }qh]-()sL +XQ 䒋4 $\ tdjW4Ȅu"dti|@iCGPߚHaGK@Op 8`|[<9| OM91m-@ŝd"0%_P;b4rNo5 0ք]0GY +%}v8`x|&H&hu)mR-.ƨmTΊJ h]pƛkmةB⚑l"OW\|"M⅚=&*» mt}U$k^F-|,ٯm` 7@p@n]֔teGԠ^u"#8k${$ga]ǻ<S+Y*9[c6ߎWL ldὮd ,sI Oiauz٬<$A,>^i q3bkpk:R)5T>X9 Xɴuc{3 rBQ5`Obڟ@gƇv)Nsu #U =oZ#5~/!Xt#<aMJ/}ъЌG75#_qU\%+YY+ɻd 힟 e48SA;{M#U˄1 cd İ$$Zblw~XJϽ[@u:m,4RX]`)ē R4FX'~={}4*䋂G~bkӫڙ*JKk4|Vq< .H @wh Ng \KuHzU_}։>z߾D&uhs-9+_;0:Bl$>0FA/9lTkFB7+Gf(4}'gC_ijha#akWKɔ8YlDuC\czd{d{h*ӣħ+ J3q]Υ<896U.%S@\w(;ƹ!M:;NnXB+"Tf26$V 'XgjޒL=aRxp{<Ħ'R"KY* ;A::7y4:m~ /jʋaUߤ+j`aS׋[J:Fu]q時rvEW m̺"4WIL0Pk(](">Hf a\{\l>] ,]fvNZ*J\,)W>dyqz:K咗4APӆ_G}U䍗XfC6# =)3ۡ+` " qd##=O~xdX>HXD^Z%yEagkP:wϯ57 {eBP((XYgX[`6QQy_&r𿂕;?,< Nq~92[U;(0%QN F]AʞEt#x;^NH ȺFS(xi? ,T Zƽyn1U{pd폇mQO ?ʵV)ص`y#=ϲu"vr82CmtJ-)[8:5żņ޳G1+:Q~}}GjS馊dbId8PnY&~Fon2,= +XyQd:$^L}YjһerQ6m:?*Bķ P5hT]{=9qWڏ k9r ZEPQ#03] hoTCQ 8MCG$8ph;MUu2R-ad\C9CGtBGR苀o}hDRp 2)d[rIHΜ ~lA)N$Xc]j([KPTg,E\aɾš#vR(}& _ۥP\bQbCXGb~U~cc!M;"5: 5m.%#hmQ0K(!Kʍi>:܄{$4$RJ"6IN_^'(HDcP2!8bS 0GժbKp$T@!$]ZhA>8KD*(~EKHoV7`˺rsvxYb׾cccc=osYVAyXQH-7Ɓ2I +1zȹ5O;ؿ]'ǣ(E{|e|l52s3/چvV1b9}4=]f˷c>p?cpyÏsxV5 q.-Ɲ>]l*[Dpbz!99 JYi1!wj,zGVpH15(CrD@ Vng^K2U[d9 !Ӝc)\e;)Rʃ}!"k|u|;ahK|{wDY}s@"%z>3 ;)U =`"I4ڧCxM7śqT)!RRl fX 9CJ_tOTtJLY.RbŊ[0BYƖ"YCE 3ځX^!NԊ6\)UҖ?wئ$H*p9Ry?4P`+എyhۘt2(n@c A*tR.)9l8\$  ~2QU֔h85 }ܩX(rqZ^ R /VūUq2Ȱ2 <h&}>EEl Nn#A> rlH.x+"V( ,SxncFm'_<ż&p"Іcnv+J%2|FGPid ~+} zQ!4A^fgKzO_uMy GE8{J L :eXp/J$c ; 4ԋ0]|@I»4 L<zHDt%?3CUMY=!`%c:)MUK☃ܒc3N/^RڷI{.37)Jb_#;&>̤k4[>L" =J'^|M2aeEY@܈ƥeQc,IFvZ$@Kw+Xю|M^*k1#x_qkmMĶ~[e+< 0a#FBX;=M鹄,M6e2˪B="Ń)[I`XdfFx2$"biҁ1&g8tbM47wskwe(צA> [M$DPleKJ@M}Gٖo/ro9ikid5؁#U >f$Aʙ"iw"zvUs]ZadF ɍNjT^f*;r LE 3@kIJ`?a~®m-28|lmUY3HvT ɉސb1Pߴ;ԑbwQ o!թ|ؐ՛$Da!#DN֜c(,8> v'Ё#;b:+./DH "=֡"?8BʅO!Hqc^* ,^ 1՛ٵZ*Ɣ뙎?b.=$ŷag!sްVl׺BkTx;q8BOWab'3zdzc UmaڴÅ>2Cj+'~ia }4YQBаqc_#Rw1oEWP 4#Y~ B +9oHxA3\4qXf+aP|tp5{* lE! %e7;r/\Ig=+=aYAnLl?[2uvl5îve)NT+9F-6kx LԹu1r?dMJ:qJM rnCVJ#hM f 8d{lH3:zX5vI@;َݍ&}ZizܶQ@ݏUc=&iG^f6n!G-݂"bR!u\] `)tėۡ*짪ϗ3=${H?w)z_侀.WTaP"q 髨qL=ޜq8(aǑVtxIZQElܴaB"*}H&ǒQ7. QPWY釱pT}#KbgQZ;P-5%{yPF7K6bfm*bha2S4 #K_UQ?2 \1=Ar8Ib@`"c~j7SM@T$%KM^l'`'{+ IkܴQM?Svy_tMR5떨Lf|*P1w_M hHfɀ뇵Sr,kc L:TP=M̧^b+0 YYUAΛdq?<LxmRiO=KjIyuڒQ^A7Lm251\P3 QZ"d&e`<vHZQf^lvl%y2scyA>խ˿ُQ`"_AϪցO+QdabU;Uubhx5clQ>sd"o3q .؟{Z/ܡBh\KWLy5sE*`j4۔}qT|v—(iꚿ3}`g:_7a]IQ#^f {8/)][ ̗o2h7X~ʺ+4ɂj f/*{@U}1Ϳ217qׂ]ff&׺hNdt9\O]@x%-oخ(旨m'Y_62OEH6=14 85;~-)KtQXsؓ.NP3K]<q0;hc&%Av[3|M%Q6^y`^=x!T%$-y8pT53zG";뉩N|WEq_= 7Oі@F. 6R=-昵"9\cSk¤M3RƢN( +|sLc c0Ef'e|B8E2׷飫82–qFۨ9)3?r.*(֕%PF@iÜ@;`Z0hޅD5%RDҽ@ODǸHjYx2LVɿI&FʦbE7vu QtUM45Z_p^mA@3m=RspWЖ$PyϵFѝГW %94r8D˪ivcdxϓq{W8TOG#~2 XYE4cSٯ8\ X3:BuxXftśs誻'o*u`ͺ *N[SѹaLn3!\ɐ-l2PH? ='_̰wt\ Z(wRfo0#8&[bEOJ1`ʑ| AfN͒^9nQ z4Qb~}EVWi'~`auȟsaaP~%3BHпu򌱽C_ QیsOrlBtZQ芅L3nⱆŠ'{!%FhVNO9PCy/(ݿEV~J~kVGNJvqsFcdSmUoZxcG^rH4#Ea՘БV;96z\MhC=< dz2**eƼ{KX91$7 m* \^M !ApԂ-FhI1Ý~&2N-N;q/uGw^v^4BS(Oi$$f.ַ D!F&Ad daՊFy:4$X_}ْi9+Qg !+Qu"%ωC?nWIFr|);,:qB-Ca.~q:=wwLF`fos^HH{Aiț] %(P{Y$1é?ö?H}_@nQSSd[5"(q(Dx穃lXO!G5 8vd. \.2ƥO4~XZ>J*_t>_Iupkعc} '~M.y CLvȉ]H$XMD'':JM1i#Q+)ㅍ#g o =%{{ήXonDABvFct2IËfǒ@z=`Z968ј+tRs%R2Ѽژ3$*^{ߘm 'AH*?+?7ꁝڟ[́Slj?"}MIӟݰvSjg U"}SEߙԵ*,_q62lؽg,7miՍH$ܩ;64RtjݺqDYugHv+< *\oj$V[61+8&P\Ms#a( a/8sΉani~RvQ* CSгŽu!e+L٫nZmE SR3h,6;Gs|r1Hz+:7'J Oı_M!f|wuT'E>cϚԏ*Kġ,\:5"׌2)'I5,Lwb'jjcKZ?]X!yUI f|w6QajBfN "d[!::{[$.DVqRsI=NκYZkNm,PT#CKb Cʞ]R1ruht:MmkKtkUTþ.N>8f1;S|/1{q n9K3F46e~w +#LZ0ֱw4u˞"u]BcV׳R º ѨP׮kZ&Xۅhb{>O+YzH/v溿h~&r',R}] jjODKMv[ld̽w~(%2yqs߲hHnp%oi: ;5(pGe~ š/XQ7:Ŵu f;!rsf4ͷ$W4$-UMgƳgd??*(P[f=g~A6`*'H6u+QOu3zVȳ!e:$C7|z&D4i{;G ڴH̐i(ξD)s=*X~$[U3wz#Ɂ#XS| ֠G*%oBeA`qT;Bh@r:{}L`u3:¼+@s?B(^V<1#&ړc&H^1G|I7H$ }ɒn(fGO!rFQMpX%XwO(W3^(Ȱ5nԭ)|Zo Ud۲28>$(B̈t?&͌-+ΝQ@^g垀iٙ☤5pڽ*sQ hTKW"Zi;,~R6\}qB x :,^.ަ;L 7[k8vv샷 ܪ9à;1ٖ}41US+NAcrĵbBX|`+,HQ ^"n"*{o7IORjXx-P#PβV}k {U{jI_R'Ux3qWߝV{)J 2doܷz[v;O@t@hMFū8,E*E1gf&)qPE\QWpEܨGP#(qw~*nU\p "8ldkuWRPRMllro# \-c:|t/& FYս|HKBI,j^Mۜn٠c*aubo(=-WVj(ved 0LWk< R0 1-2)zK3Mǎ~+dF H8Q̫SY@14r#߁f 4miL۟i>+\(yHA2盾uL曥҃z@J2墭-BsUٛ!V0Fw?rܛND!^-N@;:v[:ӃӶDنS&mfxm_R@h.E&Ix~v4',1?*nEB baMs`gHx;r_̈́[ŗ},`%9j\O%6ÄO/=.KUC@ nq" sC'0vP#o](<*B ,%۴oo0T@wmփ[ݫl>D]}ҡiqŹw #x <"p IW5W rIžTȯ=G==[2ٹ,Y.)PyM<`ɼz]@9xe9HD3NvG/JH U@D4pг6[6AEɵA싨fX+n}p5YU8/E!YL~j,oCV%7P2faǹ)m8D@=6pD$G.xwlȡr)Btng @˨ܗ, T"$K?=_<=iYEE1`E!gdLP#ih1 8x5,9sj˫TAq2~ȧv ;sP4iXج2~7 qWדH0|AN%bR;*hǪ1-5E|գLՂ_:zz^©W/|x&b'?sYkz԰,faݡb!Fk7NqUJ Y:;B?+EF6Xzq3O.&_?ø&lp>w%WIS}t~Wh\\:}=U; "JA%hXBF73[[cRNy6j7aDӋ vM;b:d@9<WRH1HYL$D*,p6Y*2&sdpD@Ph3ciEĕ9 K2^ }{j+Vkgi!/WIHNo5%+93Q:fzZ'eiYV졣ŝT Crk> ~:[eIzQUI'iW^&I_< Z"E/R=/sZ`U{fO>>N:S^/qyaө䞅x15@Hp7Z! u1r.NJ4+eb܉f)h&ƌO9%V@gQ>/w3c v­NJE'qoA0oIiü{*3gKNmXr/pDn'f pXuiԄTu?pĖOY5[ >i!4 #hm2|-݆Iɦ> @Q3'5ɨ,Ԭ я뫌 @|Eȋ̬c:s*`̀ J¹ɨr1mU.-s~~g|X*ɣURMNfdꎱK"@~P#⷏@{w: <6JbKЈu{ܤng=w;b"}+V,k 0) Liaj$7J^q:4i6|3}kҖ~a>Dp@;Rͫ  #u&R<'2I[Z Ԥ#\?,iBb'W?<9xl ĺʯOkz{ :㇅:~_S=͈U_Va'S8~$> -Z̑y%./ EqQcG*u0MnQ)0w:l"mks1D2NܱA/jcqb iOfBZ8KҰdx94G9N9t %g`mr;>(^;=dZ_le8݄㸯5ݑwji LjmAMJ ?f@"ħ8̋j\0*hzGw|{zw!:HDl;I/Wb+ t8s u~ԛ/ հnn%8BQi8'eV.nJcV\~nonX4Sg`ޅ=MZ2x%yC]>O&j)m漣L e,d%@*)9>oۊKqNl!&x'TQDz d6iɺ2 Q²^Ie%VH^2/1>vBtgXgQfQ6˹@o[ͧRٻ΢=<0b7S͌+JOF {]ruf&Nެ4;L ~@3B(+S(Ze2S|4kq^P OANlشRkKIm9pϑOkayr.[#ma/x<<|a&-fmc 4`EvE)$1ʵ-Wπōw0r;`jM|=0bRAQ:w,`Y ̖TI*UHI? 7{ )rW`w\A;$ex 4d EGJȫMiJG$TgThm)Ȏ٘#%k_A_*Wt!ِjLYtzg]egkwek^*l_"~bZҕ%]J@Џ2 Nw&oX/ !vAhf qq*mxqʩ*|W D%)vfI1oJ*?L-|]0I8i\_c q. + |{C: t Q~۲Ll"xӋ&v3UV4[ժ!/2yS1i=t-ʐ{4Q7vo5oNi?bW>!pI$ #-R3qZ 6!$t<|_[`혫3RuQ=0ͱƭΛ }Dom)ReeYc4B_|a p&[7A&՜{"υչ!C)^K.+`JY٥`t;c¿ag8kLitkrX_5Ń-@߲ԏ9"~C|Tgpǝ`q7t }KOڀbhzoUK 3 g|%:OXB LayZs~u9̉Yiͧx/trzӫƞuV9Z2q[QzCSLSMl{} G<ͻ RBQȀUdA < n At8bt{ᢐ{ݼ'ͶHaq/_Cozy\PٟS d v# ,AA;xԜ[1y Đ,ƴd N鬄A&-x{0<(:eoq1]5ʜMRyk "NKNdqɼU¾ؽ}x6XE(W}" ꌲd'YtWppIxhGm 5F%5 GV:vGF2h zߑ'tgTY]jɿ[9T@fr\a/<cAP+!/?W*sχ:*r%7vu|m8ۉy Wd?l_ /2FcURZ4b#aKߺfd/IbwٹmBgv@E#DXvR/}gH=<)¸:"5yT8?YVnl"6E %6b5:/З2BpͿl Bղ9[n<$QQU6h_!i.J;⥶΃PÁjN@M@?B m9co]ri[?&OMnLɈp+F*cvKAY?M[@Ɯ&\6QS|GG^Q6-^.gUIcId0wJ޾:ۻ /RٝP|bjjY(.+W e'>Qa['|]'&w.'-WM(xVU4]ƎnŽct;/AU{dr4=TT۸MJxhL3 Fdn`K)O> ,1ݨT,3\'L+Q!$48*.C j%6`8\N sk ,hXOx($F\R 9" ">,LJbfz@ԖNt&CSU.+s3k2U%OiTO&8βhv'MOgWvʽYaD&mK3 e}Uy_I}:5gs(ň}k{fXCN N gChsOb;X ~G/~򕯯YDp;U!qkύBGkQ8%*2̮M-k#`"\RkiJ/z|"aеj|ذOQ&/rJP+ؼTxD*B#Hr*C&Ta%vޜ52ܵ?:T*NoV\Aq7P'{TTtcow09\ߤ͛[>g0e4!s|?Q]+;b9f2p*1MQdRT7D؈p-{L9t FNzR*H5 L_X3փ76 (:AQfǧYg`0oh:>Cs&!,a6b@Eɱێ*WNx͋%ޤR$~fȩ&i ^hGԚf/-xrJ竡 #`5Uϻ.xp,_n,V W0ɳaq8 g=9D{v⾺#Ʌ>8+3f:V{Jx.Z*iMI7S+pnXHH^p(}K.՝ROq~p_*!јN=Gx,80%@3?bS NwQfSME?ꄢ:5pzW^'kOa X@>h"knaaOky3`@ ^.D $DbcaGfsZ3:̺o£8)} N ]4ע FYE튳uEwCn''M8"u ^o#"Bhh@o&H<ߘM5 .D/,靰'\ߍH:ez9Y6*XqJ|g?hS~HTAS@BT^dwWhi흻avBكΞd(Nӵ( ]'u/I&QBQs5dp~NQˮ+8h~lE7Tz92Ț|msQӽtлGG7gahro .:2z~$Wr=di;|1qbsE9E7k滈Q?>HZYqpF^=0Rt益qp'At׶5 Wd':1O-۽QU=u6sMmWj=m.tvڳRq*ײz4m+bIM63)u.&1\ΤLČ={ BaOz"3"=ɛv7I@zާv8fJ{ uŽ:{Ck,zĆIgfv}y诓P3{M-xTF\c=xP% l lywBm3hm_gXNC< (pU`t:/SOaz8CO64_r"!X&6d}05#/UN ˪Br/f`^UQB2)9>ep jCeF1}ù^sCBbRo^~%( 5V9fQ)qG6H?3 xI@ڬ> ø߽D!⨘^- oQ^rN6n= vz81 **7Izsa!8awb3 A80c:b#TV-xi ۸RwBZ[a'SjIZ:”BV,PC`c W(ƿIDm ?A_CgKj,CٷI:+p8w:Ѯ4ŕixvHu\G]L37V L(HŸAtiƚOHx^t2lQޞir|վZC\G܀jd*ߝd C 6@G|)7P(]( \? f|WXR#K umrbd޼\`6[."^O⮑PnؓG5zhځt"MLV ]7 ,=|/v89$_f㴊3@[Mu=4I \:Y>؄pV;A /p'<]2$c( 74Acxr1y4&Pj`a:6:wNHcg0LZ(;JJ5 Y4BUomCV]'a Bζ^U35.^B5ZFoX'zi[}pm=f3FGS e% BKTuؓH(]td&7^9YHA̒e۴_Lw>W? 8Z^Y:.R9ceg!j wYE-r]6p.M[ -C%Zj]k4{v[z}Q7LaU} jHUlo4̐jM?)g ~_6_sk֤:K$Vn;tЍs$ s# &{0)gf]瘺CaMLen6e8Ty] 3km Ě ߒ~o]@jUn Jv*Cі:"sk~N ^F-u g VG瀰Ebvv6q ܍~?S:5O{ӏ\(5,FmHobcNNr|(gƤ]祼gF)#w-Fw&tB"ɳpU.q5>~]9:W6:&}M'8ޥ޷vCP/jZjtvۋ,#J4Zׁs\+/Bx ,sΙd׈# kOnA <1HF}ӱ&Fs`xv>nVo~W* clp`pf4yx:W I `C'Fb֨@8x1q/P4kh|: w8 JƈnCmnj+XaD2;?%Iī؅ƜOIZܟ_oUGFXŐ=N&M0:90?pDMeE#|b w{Mh.}Q;3r)Y;L) XC7^ t/n N~p zAaj@po,fiQ#_Жf9XdJK{^l~Sǎ0Α/xuCk2`o#)Nw&{K;%h4yb~,he)IJX*kZ@LvJ+CV ֗{UrVQkhG:^ӺI5Ж7z]wϊS՛1m|UX(ԙPtՆ揄fCsFҊ`cKBY/(7׆q>YOE9hKQM,D|9&.&dPX۪L4)LP~ݦ@sa6çEp;kܵr$Hבz͵ZX=kR<,##rwW؄ 6x-x}&;ɗwn^ϛYZo'@߭u" RzzpUV/Ul(qGn40{q[CraS79|&,vh-&oAlB"SXpW6tXK(sɪrss{KX8935h#gmօ_i*)RaE3^Ȝ;SM[ 숏B_^&dcIVd]͜h_@Q I^`]IB|9r.Kj?Rѹ%:=*k;(gAӖO%&N6ò x K g$ Nx7V` f { ,##x[)qBXm&L{o\!g[?Ȣ+PoB$r 1c9& :^WpFܭ(g5W׆>{M/mgՄa ,l~,:qM aZ^[dHB#٫l#ڼX; :,x]o1h ei= :򼐺9㊮ N7]SB[]t"Ԝ4=~𩧵Vb2I# еKM3UHz-Fy^^t,A 7:#T9i@ÛKf>,!/& "LV_5o+ih?ZAUBQ(3ӂNPQgeϺb.& Y*tfxRPh|}fdv Sjƽ &Zn6(f¿|FU3{B (Եqtl%귩>41a]኎a.9|_=hK}]aNEh܄s6L3w#o%KsЂfǙ^wq֓i&x\V_̯MӭjJZ;2F_\:|̬1J"XWP/~.,P;UU*j̈|g.XxQ7]J0ƥ oځ{R̆ί[HEdݙ NG`SuxVatσˀ%[c򜸜C7INA8xBzFD_֠~#XI l!IrBO g؛TIʠۥf$1r*o Rd{Uv(Ӷe6S3P>wT>ZFcO?uKv58 癠(^`7lG;P^~(l{X:]Xr8|diY^3{(7Gy4ٸUY O[ ?VbD}b7dsޠ 2~%#"Ǡ|?j((XWRD#n7- \8F^~c޻ YШQf:?]CwUbaUoIRҁOZ0=RsPhA"9۪Ś /ĊEF2*Rpi 4heիF,R|g[Əd%&T0˅y2\s!GxS:I^E JJtVࠃpyAM;i'o|)C7<9efN9QbWDʾżbM+-6/dc8L6a"FKp7<#ױcsVߪ=*fx'$ WÑT>DShP('ς xC# 镂^}Z|%YU0ZǵDC/TUǬꊣg;hO^ɳldێ跄VMJ66fzXrjj!*tpP}у$T0,w7b l.?F։1W5=xd]ܘnOBsN1FeZH wfEDYVYH;rtY HLάj`ڦ2wj䡳TJ28W*Y| q§h; 256}c"0g>-鶓a dƛa搻KsFNZʆB"!gOdmݱOOėctNLD#da 2aj/_ 1 砵m #_l)K8n ȍF}lH15^6ZmU?G (a2022LIEd1*^fDv-^$v7F4]!ƋڧCnv+l\Z*R=Һ2s`Hr, =@Yn$f=aiF?ՄRt@f@3phx<^놗,ej-Qʥ QRv 8AF]"ͺ[ouD{X1VrIV -?P݇1;k5U7乼M^NU YYeMOZ'u/L}B)uIu1gT_f`kukHTc Oi7HB\IIՀ]3#MIث733.a{Ewp+W (Bԋ6;ءG%zL0 W>`f% ,B 5X]#Z(&AQ`d"x:8ymh/v lWpWh:cp`o]t8D]eb.vf,7>/<=~Ώm(eZ"l@ж\k.ZXc i*dS .6Q~a-dPسVkhwu/" "5"M23uנqNZdh]B+]-b":XDc@ ם,5~?\KF>=ǎ[^T\f]3[xd'Ou7))tM}eX۩[$5&Hr1А Rf3έ`A񐞷Z,E<2|z9*z[ZSz2%="r4|o72ncW&IB3l{[p7+CJѩՑ v.n5aXZ`_huX,d~ƿY}3]LK>5J d w5 ߪ.:gXXeg|b;`#l\g$Yxf!~U-jiN^:ϐ Isڻ~>S<>;V4Mh[Ov/b?rҹD˂ ?HpEۼack]N͵|̑bO1k:$Gq%> Zs͸xݗV(Z/L2KALXԫ ӂ/ cCI0UZZN; s:wH+ڣ*bpLdAn̉h(G \£O=9w1F(>js9\czVk҈u6y1|-W!Y..]fXlK2xcݕE]T}ߑɀyEՋ{_~JZ%wvgR[CRn$LQ\;oƉZ5=Pd\(rd .nnYPǝ26XWCp/9rQh'z>q6]ȥƦy(Kԉ7]-!ɧ+, bP[o;c Us#I.U%:ߔJ,;$}֧~ȑiỒLN =;{@*ΤΡCYmISDb,JS'O21hWϙ󊍨愱5uJ\G<3Zȱb75^l*6c2tnR :CMv]w hҮM`h,CrGL#4q~$T3U_^MxN- oFl7.F7Qr9pQ,.E:ax<*'.8^N(u*A` "MsdU z1¢YRpf]Bjw KbY,eGc@` wwx,eVDc) Xۂ##ອ|ĒZ/$EUyp'|S2"Vg/)}撖@~<_G NẠ'1Դk~AZAA8aH꣈pӣاx,a{P2G0nIn_Ҍ:e l#UYV2,oE/O^@Wp!΃"]^;%x N8q(n-W3YIPWJb*]]EaO]ܓ_`LOIΖ $pq'YhJyk;tS9>-)dzJ-*h89Џ"-1YkdII*P<+dwqw8}ݏhpU1ڜF!y- čMT]1_y 6 .Xޭ{땂GKqy582*^-ݤdwY?f'ʧ"߈̺Ur-ȳ]x)|^:gv@ОKU}0 CdOqg <;X $kqqAK:UkqzLB gRv+~U_J);BφCpO 5( uM5xiXZbU7\Ƿ΍6^4j` o",C[NmL%2x^Y=G[ <5|FY Y"TgShr64sZ^;*Q|) "*4xV):MnbW@KT F}L[bWⴼ ~$Oc_+Seࡢ5pj%z +\AJ!#'bb2x# |)ґZscڽ{x_)0jJeFG]%i wqSA?c7f K%=zOKm#L#8y/` .iקJy%Plxy*$Ovҩ;M _4#6K;FAKIHcedt $X %~~3oj7;4DsJ_)BHY򧤌ʾ,ȅ7lVRďAI0XȈ҃ݔZYo.NyF_U/g0zlA~N}jӫKZ;1suEޚ:}_oscqDi_RGx ̷&就,$c C)T+I*NiL r'+ 'NXkͤ|I3Zdue3:$I#^TZjۖmHp q'm.XIaCU]׼!棹{,_N_Pz.ixKIMl{]/u TaL)'Sl(곋{8hU }J 2xhv_nx&bwZXx(_ u:A3TnV&N E3`w=p\'z94r_1 dz4*z4bl @=yOt)}&XƝU|ոJz=gW[3jɞYZ#l'7J=ͥ6O﨧G=iw->KCh8c3hޒT+6*%Deܡ4 Dd-{vBtf YrRMݍͽsxٍ~#wO.1zygc' 3>&Ks[pjz&+~R` )!Y3P  TA,t.474h\yjn1 @ \4ˀy|s}[@0\[dέ-%ef|jGKڲ%_`J\NOB|bcڑ3 䢐8v 牄˟pD /kn FdmeB>Q0UA_Y.]W?[$A+is ENZHLĤyz7C:'P3ɓ##Bj]EIV1!_<# #npoz}r ̙ N61~j9h}omPUDw_PS0%< ~i B.L7R{J* I&'.꘻ó"O/.Tq;t€pbݮqdž}[GA\_]l$uR'KDʀFT\* e"O[ިc-@8sXwms^o%uNgcc]t7fZ?91,8mŰ X6g8.%upm?{1TZ)M=6i) P3yu˞_OFskG`JEE Ʊ pÕ^;_ ~qАG ^W34i`8˖)7lskZ/јOoGkH]\^dtdPsӄj|4R B<4 Gz; z $2;״?$I>BO@6ڏt\⢫3H7ndue}N$"! /|8kotZ"ř/e4֣K=lMȴxn9v޾pa\;I|:),2 ͜ wabtAsҺU ]U&W8i;U)qoFWڊ E(6?ԗ HemuL`kX<ٝI!=.4G <_jJFnmn^29&b:U;p V;z n?JCp KɁݲ)i.d&a <Ǐ[oqWp;,L{`zY2(oKICz@yrt@E y$7=ʒ(S:V{Ȱ>.zP 7IxIzzL[)V1ON=TUK.>Je߉L03K}Wlz}5oSg"(oiȭ(?ģ/ $>9:і;K|5/*KɣI*" PLjq@R6|nUNʧ%֞.W|dFI⨟9ڭRס7(/Z<2?eZB+F +,a[K M ,e-s†{GU%ב IjºyN^t,F7sì=|Y`*I Sj.wU̗)bpߒ;+hʑ/(Mf{UBK*9S Jh<:C(!H4[9X;:$PJ+ ' Aj*4j!_/SuIY 2蕵vJ=.(ӐZ"/]q :D*:D m3bXL.ݚ'پ%qHE`bF3o?[h`&ɴ잹ziD7諸`jJdtWZY\$6 DA*f%ҩbl9v\'qBwmDLKE\Z4j(}i-COt+9,clK5N{:tOe2 VZsb9MrՅ8Naѳo='KgJ ­Q =/Hʦ;v4~t>cHZu$\ȫЫ<@m8 `[{wA8\&&wq8Oq6F;d[%nP0p%PjơIqh7PIHЎ`94% B-3鉉8jLБvחKtq(m3=.OR#7PKjgP@|e#ݮA0LO˘-csd%HL+f;.k#Sn3:ρ!hjĕRޅ ƘLlN?yUv )4Vak/j9g49#2! "J&")da&zʼnd_,a qH-r7Ef$ Wr}u(*x6fwIc c^nˍ}Û_~zTF)-ql=qy<nѰU0\3.pL>UiX,R ]H*W~|o 4Y(?(Hk ougx O;B _NIKi5=mW&>!/vz:]@Z4ᔅ@3(6Qر0n`yi;d* c$/_-հ nh+k3cxzA~^!bC 6$2 `;D3dOy:8/ycU2 WOfdu :"(piV"5ۊZҜ,#Լk(ݎm0ۻȘZ&ITostŵk(Df#B#g]0%t~4}6u(UJՐxXF?etJR]m_&-{#WyzV;@r1mrf 9MT~tkr\M8l nյkЂd(>P, Z#NvWvn3_,k2(Μp"OH;EqSrͱPd'0I@:xb!;$j'kn:C@نXy~FtU M/1Odq#W,d=U*VG Tp[s F94[+w;FI'jc Htr^]NfS!HNc 5T n3D_W]>DR[EY' iW >(^ _E}3۷/lyeƾM&"1{hlﱋ2&&;^rQ,;'Bj"r8<&CPn;LxY K8 j‰ݕ @%S׵1"We *̳Rx{1?g%we۟Ypa)(ϽoVףB^](.ض|h a|DxǃuMc|ę"D#g~ȦT8=J-{}bJmQQ)+FܩJgFfLS$jASkiblEmE})Y"& [w&)^HUѻ#nKK$ 7T ~NZgEEF8fU1ve6ZYJq"zWxv ˶"NsfH|Hz-\D8`b'})ܣS `)2c Y`y!5%a-ظ0dV sD(m>ٻ&r/]e8& {4{ T9#"mŎgMBH|! 1膐 %})vY9nVs=\b)t9hnI[-aIu!YF> y[LRa0_Dc%!`^ S[iN=fR60oG5//rTt։݃1Ņ!!:T=pa=)6ÕioL=OH(œՙOXƼ)'Wr:Mc}p?ck͈P9џq[:i#' D_=toCf A=QӘlwW&pjٮO4=3]b+'ҟ9,j|;HK?m<7aPnSxdaza'=Eo$8jFnXn3+`8t"5M Z 0N!&!'Ĩ[(Y_I/pĖݦ1xCJr'/i{oïGg2:-|.Ek.gQVDs>U}~pv[~ 7ַ2':I%2>Tڿ?!\ Cjg4LQ{%vv gvhm#\Q(ĩ lt kX埼<&0E">ѫ[dRwx n)M89D:-_ph#[bpcKgȽ\!d8N1r\ui9<J Ë*Jz _q+a׼DtiSakZ;8]mw0˔3fŠt0 HScy!4O9}seu}G'eo{T\OS-\9O"{\|X//  %;ر4>j`fn.ނavZƠ]PHhSvjZ*w}lo61*YvWk1z?D\Oq ڰeS:/WiVE Hqf&C"@zR{a9ğ궷]{O1wO<, 5L>t^wdYn UMWJIRTv!',!?)لqk6t޲<\}7HAs"\ ᫌ+"6KA-ZB=C[$cP9%TqvPtzk叭TۦkziK`CJ+;{KζԄ@@eg%=LAɤ8$EgһpT4Eo2}=Shh7;U'WSd Y>~70v6NV9Vz, ܪ>T7){A_e Njl`k xz-||x dBc%ӯIXfpS`,r ׂNhtK^Qw`ʉqG/umz ̇[9f9B/T K  I'yA׌ )l40v.5mc3LY XX8 ݢ ʹsZqoj5Cb?Ds)4WwZsQ-.|8dsiM~ݗw)?7O:t`#8 "JlO99cӆrW5 Wэ.Js&ᄝ{^5=KEh&xR'vu[LgD_K bL ,عYjY½,2)9̩[U s|H]) =GR|&&V::O>UCc : H0t ;Szjx ?_J]҃ 瘇5Ǟ"jy+H)ga7œ3e=  ;?-eYZ!4jVJ$pP1T&\n0LngLHŅGMWnB)kn ;!_3A!Gt:|V57EԱ3T|!fݟb`.)m K:mA:TL$D;~^&.=%ۅ  /dȋvC+zU(cJ 6k\P `"<ثdxTp?V?]Q׵TdA 9Q ŕU/ ?mZèEE( ~ƇB?£ǡD1lTh&P╞zl4|k{pw5F5ª ͷ&[oODoGbثdA}wm:,}KO)DpYK+ CVĊ&cL Ł7#ArZ۷{:a} ՄP1WBr6z7<^ %-Qz#La8af1k q'%-1{2 !E>}>t@| _u6Q#,1e V*q D |H$S.}AbۢcXHi:k y4tn5ʼ8Gk[ڒw(bnWY)7PifPDBU.gYD7{w@GߩE K{d /&uLczX!#[-(sUne>9Ui&Z Sx) hUJո?Hl$t0STp9[Tu{!8\yTFxƣHD14@3^td#Ym^˵hB K^Tu[oF %}_bNp;&o/# ,JF'Ǿ Md{b%t{tvdqm-ǖKJH9gвo7] D#P%>Ǣ Ɋ/X!NFy>6(MX)D2Ho|8>j>.H] rbQĆegX.8)")j?CϬR:SO]E\HzB.*<C\@dx2pU,zGԫo?~S'aS1q%X^o $l1g x*?V7)ra}_ADJ 6ц0%tHKUD:u]-nߙQN雽A/hS@X0;$5\=왠M[Be Iشg). ^D9RYs !0"0-t}vv4'w.BţCe!1#DzV/?qi._{IUj 2~\yF& M;=߉gbP][; 14>؀'[W֜zk΢xK{s6ثjT6 P"e,Nx'?#}іDP}Nicm/AL횭xʠj&YU ˨=!xFvYLn7L paɚcDrBG|2p5lCo[$m0 xxFQRT ??.+PQ0v+> l$z>t LWhSk] E9Ta7w_H*C ,TB݈: j> s$V]I]0vujtRw%:'`7 4'w(|`ޒSN ɼ޴m<,e/92N07JycU# n\m*[՟x9?T%;v}sK]v1b6 fm%nQѳs?V'xTk7{-LJ݊le`veY #3xuC߮\i&4?TBFAA6 4COom0UϲPØZYnH.ORKy}gכ-FN{/KCUx:H,/,vI{^*Em%t#!hNdpnA) d,qdd`x/%% zp_PƦP}.3aNj0iKTsJ*CbRbHyr"RF";4kgg+G:sO%tǰc+} zgv`7]rгi$qlu"a`72b"^`F׾?76f[ Zh,gOb6 lwpK sEH))hc6j"wnLgrAn9 7Ɏ_)mOLaIV&4 φ*z30+q: kb[f ƶtnp!3<[0ɒn]Jy辧. )EWw W5~`p0 z.YlV!õiJU%6J>gIĹ#_BPtG-r =WѣeÓ^r: o/xTd)#11PD} F43ò:dioƄ}ZNzTm38?9M ":YjĿ%cƯ)ntZK| HVH11?1>G)[:WU^-uҗx a$;v%0-&/oVAirX`W~ft ^paxN7Z͎m2><9ZtR*j<"˼L&B\rW]ng#o WRfNh=%־|zIEA99s{:W<:]k#.y=P(,T-ъuXO[%3в\h$O,:@,3F?moiyMPR1<{eI.F6ދvi#Y?p֑cx m FKq!.+H4]GcX{v8@y6R$6H%y%n(#`eH6ٶ$*o;vCg]D(0v>=7He 'ie꫾vvܾɨ^wO+%rx}a(O dL'gT 2gܶ"K(E$G~6'uaLKѢG"{BTSHFo}!}dޢkܦH(>la5enEr@oH=[}RleJ]#%8Xd8TOwH$``m=ؽ7 U=MxbCJwpOUBbmy$[Ȝ^O|9#-s&AV4^~Vٕ[ғ6:"x$8RLnTPFܢ6c\Aq1;*&Ĉc/rA[Ue< Qpɛ^g-0Mw`4d>yb $gg(KOZe-]ㄮ^1ЌAECqjB#=s3elacf rXu .#i?G~XsNKzҤ"w6~QK&6xRsrCpF` -qPsN7Bp_/_b7gߑȕUBv.nE=Z{Jkl~\=VVgv{f;u[ÀqEQT (tS@_ <64h'q 11mVF+!޼FхD3^TB_dht +kJTk$?29p^wU?"U &~SzGcyj~E;M=8!p poVB4 6E?7v,+ٲYdPZdKe0C\Fµ9R a0U #N^$oWS }!<$gxAa H[}ejwn\K7b0Llp=5@Nys6Y|@It!zYbKFuᝉXDLq5XF `[b)h0~WpJe[l]*<[ecY ⸒6w/|Y4qf|nUA ؁ik0QcFKN⋍ b#ӮYjS#_B]1b1n*->cr=lPNSr_ -QTZ&F[3Ϙ[-v|N]9FY ]ٍf[\^Dlgz6ePXL ȘDHtʴۡg2#ũoRCCrsC#:qB]On4L|d|C[F9-"pVǔ}C$keQZg2(DԒz^lOvNAE~c 9P|c 07 MN + jMrnVqqL‘6,'Km>'xL[О:oN&=Q . ? zu}eLD,ph0UÛaO uO"Z& (hڟ!fXǣ.\Z34cR0,O;]9@>] dwsΨ; h 1Rc>(>`^U3$4'" uPRVM}rBfLIcv~jAYH~x0gWu3n#xʄ|#Б 0zx9u[d)S^.L8w/#z/o%]g* >l$ Cr`!otn _Y]*2_-yl5XS$ FNT'0l<0<߾q/ɪJuWpjGϲ"2|bQ=D7m@3쾜-=w݀nY%o\{|:A5:&*v2=G4ْf!$QS_=PeXx*#Nea :'.51V.VM ;vZE28i=N7#΁6bN#JmF"69A"Ks,= Y~`.vjcRaJ;RCVGDnIud`RAixkeew+PnP?P%e'} s5k[d7inSEM]EN77+OM)=]`ܚUM L մBKIY35d )ohfmU0Ӟz#1hs#фHy=HdrgCe:N>J}kqxlX>4xH&(S x OյU둺d! ]"i%2B w͠ m餈j:>J5(I}g~J7[󝣯*p Eǣ!iMۛ5ND]McД]f-jTc_ W1G5aK/,SvioKp0__yAT"ّTxn@k}l=xDId)rVK4j7YTF0<|9LK-aWGgF"Н/j"`jDȦBcN?G z$>Cv0_=7Olbdx3X/ _Z85!'1˕}WYÇE /I!/;0m?讧pN-Ã=$jʆ%O,L[Ή!< -(Uˑб[~e_#R*:7Z5ۃd8\ԻU׵{"J*ͺ3RFO{ U"SUօ\Mا,}C&iLr&?Kr5^ϏXq8/5eٖSEg=MGLv޴ݟB$_Na o Yѱx˺6R9χR++;\y,7X84@|ZOi+Tj_;ώ Z / :0_3۾kUh]\/I?@HڷSAu\אanM7%zAP#okG3(Snv)QH{{էP<:XqM)8[k ci=mi0|@hvJb7O৾n!בk'$żVOE`Zs]]tъ a0$B||ipsQc (pDf{*44"n,+> VBi5F>KZ&\B#kAƺXEKʝy5:De>y ڻYp[IG0ӭ _{ lȣ.@T>Zc>2JH%t vUva1̦7OyׁOV=ƄQs!F賲ht9y*E?@K}6'm4G$ V3឴Kr5ӟ d8\V퉡4])5qz RflRDK|u&AVrw/rsH-["gJd"qp0 Cq=ƦR=[wдE1rGv;/?&eoU[q]O tl 4al~v/?<{6 j˼z3'rXZ?# @maay5:X@<0ȞO"MȬjԿ<eC}NڑׄZ-J' R!w0W ý}WI>,V|\nK\Ίw_EV1Boa(wp!kEΝ$C i g kVg1<0b]007ްaHexW:$SF- mQ)iPx#^::jmI5_g3~vlD#)*Y(rMyfA`mD&0j}>.BqCJ`>4" /adNBɯ@Xp*) Ӽl?!"wx"{ %T"Ul#l!'x&+iP(J1o rid3Uv?'C< ]F<}dٖFM@0o$SU׮[ŰdT =(F-Zܗl+䨾0|2xۛ-M ?N!UH7hJU@cέFdDsGhZQ\6jˌDfn) EN#]~ :ˋ:;\Zno6h3#A\\ W T(XGW/|j=,dqv-kF͙/5Ra'IҒ'E8}ŬŠr^fn8m˓7ǴX"DePRkepuİB@%35&yOxdDuNp}AX^$Ԅ{ j,-QB\\k 4PBSgB[R[2 !Xswݽft&sP6R7J#ɷ/#j7I5hUxcYj1_>Wekg@ՕzȄ -wS_LhaB_%('#3n`}1-"tIq5#?PoT }L Yj؇x(f`*=WU> 順E f1_nbh:zk"FџN1S~WPJlN-9MDlF-C{eU``}4is N.`z=_";t,GzVu2%9{(،m P: N(rOFfX6ׅ=? >iWxl5~9Ѩ^jV_?߮,rwrȡJ=Σ|`p%Q~P@.˔ hE&ySeʹDSvo6t)\)",\ Lb@ֶ5V֘՘]-%<cjff|foQ۫@xO{֚ <$ ]0u6q%vA_w0B!'+wXoKng111ekf*yYd"00۶iM%U}XVT!'K`o!Բ)OnUݹHZdfch >gw5m0#Y'?-(]0fKDInbQŕʦ^>IUAaEs]W=ql4VTu{h XnonHKTV.W~ ۿ#K(3 >l:41 (RGwGm!%cd:4=>95"IZbh}@{R'ͥ9NAu[,7V3l 94oqT/ݓTRܟc]z6 UY` [a\}1x;$,l[!p0~Q^",16=.x ]ߕ8XKQݾSpIe)P~|~x_?N) b} w:a(YRX~N9,A(NhK2::@DO@JV}CV Z!֩+eM .&"0=\?2jUd+Bh~j¤m&&FBSI:=UH3vbL$~UQ1NdY6|~%(2V"[vMA?th|?BfeqE(%Ǘ-Ñ`q\Ϛ?2{؇TL?'8J~zb,sj5APo8ؽBg3Y])"T P=%̻#r1h/J{Lr>A+3܄T#˹G:ID<[ fi ܉/Al'weT>-&0%E$@onfpXL0|58߇h]!4}Đ#}PqaG; :?բOJxk?ȠrۙL4tN)k c Yc:K+?߉+h4ǎ$`Л@ ^;bfӷ`JVF7H|6G*erkK+a.̕ ?@ bWݦ/vэI e4ɻ`Wܱ9c!}2ӥ/ yLf!X3[0xy^ 3*p lΆѪۨfEE;S"e~.I};}Y3؉jYa4{XmaU*wNFY&&+܃Ͼ/4!jKcyģ=fnVf>`L]c1peqgb?09dk⧏ܱSjڃ[4:R%2sZvy- ABlstؚBëI_QECȺҞ[̍Ve䝲Oc C?0QGVHFS[1gQ[vX 0x֤gl ]h82䪸8> ֯4ntKz#-5M~(LWRu^cRf*(mZ`yF;Tk p:U t7Ǣd <~=114Qفͤ%Urwy}h_k4Aem~s>a<+_IJ+>|)~=1u^9*!w;>Z7 45fM;WY^۔' wöd9q}#?jVqvaRʜc.Gk|-+t-0 qNjxG^1w21jBd$=3qzFL -4o."jJAi[4R/9WBOnB;{?6*G w3K}js{k0Rl9`rz䠡O)>,[Dԫ2. m0  }Hc;)uBҺۺ; +@\}lQ63 ]FK.r[ $#*53=g-+^]#_޷4wc˵ZC 9hWJ/x!4=KP6 ,oV?5v ]\̪ :XT^a2hdh}%v̇A45m/׷/Ϳ`C nLKʘ 6BWtOiI$ ɗzx^#:Xx>!~ Zeo4>݃߄(/~9| Tn0h2* ,جZoNd]q"pF񊼽T&HB Nayy||KEHV <=Q}&Cp#1f[<)[U!!7t[Ы:]ݾM7t"${Ng U󈍲|dxHzDb <>kC>jdhϳlkʪOSaỦ|m4Qѓbh0*AWЦipW49p _ ={f u %$q 3 C |̘>!v*i,[cΪ jŖ}t,chNC91I@t^1EYl Y:$9zs?zƅo3j!(sf.) *qZ?u&Hk#CI#{A~ۣ/)9\[e$;;LtdzŒ'D\z_OTQFp7sZ?l>[K:߹3i(?$o{EAgԎwz٩}/fc4+R0f O)v%|0iTw{>T#{O%F v0X ))Q˴'.]2n^.M'rId=]˥ouBDJor>m.qc kKq6*ش$Qw?^_lodƭC6L7uyց7)t-ӑmbڮRGq4H?v,J(s0yx~v$]XJQoBT=b]7Y a:!1i7PmK nkR߀y/yI%-Lz@=0],z@oPZ6-}n?x̭f0 t_Aׁ<7_ b{z} ^V3kOo,('7И~5_# iW2(kssW]>Mvl*xdU1ƳxӭkS@s,1~*T3<_'*%Nd; JS ZlB~"8X^nWO!5"bjx)NnZujILYn}mffyZ{;F1"_g{L=ApKk|\(0O^2Z;/"L[7aTt_1beogә4|l+=TyoɃoYb(nwGY<-\{}-zpu:;ՖUCx߽͒UXް!rk?Lya4ϑ>H!OZl"T6RSp1iwZ 3"L ƁX-€i8 СN%HJSj`UgD]_m9"a<e0q̰!1s|3^3 Ͻ)_`/ 1d ,vY^|Sņz48t@`ß*IxZ tÓϊ?nk?0<7A/,DŽA\ q; 84ҡ (oIGQN^KA穸8+b1zԶ)D]wE>×l`j`UB HK_!ЬFPYM>VuvĊT+T'x%9q)Thp*V%guP!Bn!\7UjVJíumlקBK'D)uKt1-yg5 БH^rl{~u\ۛ{HDĨF}!kϞIgqrD'kM{B깨|fk?6QqB3l%2.۩ޤnYA!Tdﻃc m6 ?wK4HN cD,p:Yɉ4Aڜab?8 ziE3k{:':BQ.JxeOH^$$ #q앟n%~>0U _|-n$CWJߴߣ1CLj),(ah=շ/c5rsWEW2+;Ha/ U&@u#J'vrJZ 0;XD: `2Tephu0ef六\ERsQWXwQJ0 ! dJ? %G W&8fa3$RF=`H^ =l`h˛6xTVthft٢!źe88!}^ b=r >Hވv6|SUmh)gשf&a{f=xQ+1=J/c!%@OR*1Pԏؽ-qEx}{D9qX璘`Dq;F"(>C LqD;#`m|Nl.  'k-OO^(~ xEQO!0FSYm%l-1x7QqIOu>$gicXW>F|LOkGMN9ZPubcDԉGb +"GqA%-r hJiޢ݃D^`Yy'V,E, R\ d8dAz'_hBSm{!1t< 7Bbk@T,N@@psMfO7=;:#4EvM|"M6B# kjoj\;Rsa=ijTʶMii,{nm=.Nw;(1oTyu،!G %YѨ:etkb1.L"f.erT0̓5~`d%'R{T@E:~VlLij}z"gq cfԥUA:.{}]yY? -ܪ'uNew3\@s9iUG#;`̑p=R>ch︟w-FSqxgePFT+R(S{l2SҾwDK$g;С.=-[ ,RKg1B|Y\]=[`H V]g =>m:܍t^CCq>1ٟEAxQ%Ll|5-wuRoW0` !3+nU?g Ntik~Yc1gx{K 9P,$Mx):DT6[6ȶh-rX,r0<`agz7xl TVyuUC^qs,Ԁ ]I>«8]6H8H/K,Snt)w׸_lS:05 /IҍZl_-A\~=mX59 /:)`!R Hu_'ZW7U5 ߆(xkdAdSJɋ_o!y/wW`H}wzp .`q<{|W ݒΪ푭/N&2j5 Wf]\:2iJDniczh]H0f ݞ[` t^9ͷysBqO LLIZhpI2뾯TÍp܊.C] nj )ȃZ1['X4W"[B'F=25gz;̹p̣wըP>N*.<)Wo2O*pцeir;eGIg -LJBSNs$f[`I"AO[Y<ѨuCC: -cq&* %q- _48zyXW!jPNGuG\K JŹv_r#npf{ykD$mq }r6UTpgZ"r\o?k&n%,ZKȡXfo tNECnن+&4pSahxk8@x(Xjso9R@5%Ԏ ѥc_DXqt>* =LEpӦ$L.>z;PPDgF܆FSאJ=J\%r6$FѫRT؄)G#Dۭ]ݕSe,/:QTviepl嘥7Јzr%7.c&mԄX/"ᒑTS, sBn6zj9"ZibS+Y3"=N(1jo9, 7M+zkjEU]leZ:Ì1h-/^K+U}}5Dwg2̶{H'6Gc͋W"E ܌ԲKlwԇ\ԐVNƙZ9`yOf6\C;w*us{-6L:.4fV;xxI#t@uC[7Vwh6#}z!~c 1ܰ-'](jxò}Yf_8vyqLf/f4uhH{!Սv3tx[_Ȝ](/T;Gg 5t9p6\05J)R] hKO5 {ZdzJ܁FzFq3:[SړN: F*1m93QtAq6pejQ:$.<=uC<ߟ~sw'܆ܢIO Ne-p+]]ZYF[ĵoj gUXDBe$?}seM~]㌾>6>^ѽs=$>y<hBu^{drQ+@wꭳo"6+W"mՒքyLX<OYҺu$` @!ݝ֨*oP%.K0 48}0т9Z,JʓόZ ڣ*'x.Б=XRը;%hZYmXMmʄi H5$Ծ1/B_Bps22贊$P5 +^aȳߜ)|G?, ĽVW;3 cNR,Q_t=!ʙJ_) vRV|ȓzP @Q`"uOҌD=syO9(,ȇ+rq;JX^eP-ikg.{h ֘# }B5tе|K-.ŀ72VA`cOLKDI/mkQ'(3 _`3`f`oiZ$>aF $/Ʀl\ ;ԝ%4D +jifo[4FQwopRs s1%״?_ln8lRэSޙm R"#[ -ЂG5>_$&vz e۫UShr$ݝ*3{ @ƌqcAu?&y5r3ƾ]: ZIGyJM!g "?hl}НXwRWbp\qcxl2_Oj^_s%,7[Y\ ӠzN|f<.(r_H~'+(#L/o^\~ƨY*f~ogqF悟z`1bPs񣲣E i#LBFi3/Rf VQj,#K.j -T(@NZOԶ|nGSzz3Q{ê"USNlt3yO86Gkwѽڻ>3'&\7rw]DlWL9(TS_{T7K2ђVuR P5oq|9}hOc5ҷ&џ!̒N"h?86;B/ Q Ҕď #ka ɍg-ɝz54*ӪRqQotdϓ'/y C1H+U܁-T,SI[4n̈m5k9C[CSXV/֦9H(3]xN'JN%4'C`<􎥕&.)b :2"Yi0oxWP.Jk1֚-3kv"xZ8nN8ZYOɩ{QXiETKF NO꟎vU&ފHTvR+sxJF6f-we8/Ut?Lj}G>e=ٗ V@N|<קt=`Iedy@<6=tx Q [&y|Ba&3IOsW3Xݨx`3ɝ߿TwϽe@ӄ.c%*hYdoz(,K4a5٦S¢rh VY=j->K)AgzFݫ 0xMnB0wdj" F6tkFF ,iSw';́d$q=>\6-<o8vNFF@O5"葧1GO)M+qSLtSq`4]EGt>#8QNeNȒ%gaRޏ: ̋I3,] ˏjV[ Uc3J3YE#8Ԫ "BĎ k<+^P@F $ С7<)"Q_hG:5 ϧbZ T2(!iY:9ckL#wNwب./u!6'8h9Z?7@U!-ooIazD,[kѴs\*T90"j5Wod򌀶i=M4=?EmytDd~c!ʠcps^hc_F|xХ|n# FؤM8UW@grӵBzL$4eΫiB9 屎_Q&!̹Zl[Yz&odgnFЀeAe.B@t ״`]{jN6TěyB*F6'ov,pϨY8e}HNGzߓ(,捛s 43vVſ.uyJc2L* !u5Y|g0HɜDKADU:v=+&V4 ?'(> 봊++]DeX`HyA?\-i|mPcGx )Au\t "vd5'e:`PPC*{̔>T|s= 6(*#uaoVi0՟;av3TNowL?\hIr)NLVv>`9 /-D-k__d@GOB"@d#Hd9)!8u4OTdYgcΓ rpkQN>)aSF/'^M'^:4UUW(r9Ķœ'UM > ["oɗC?-d;Jd9>wcpŔ| % h^A |x=l?gpN ]'esC/`xS7CQ!aQ?UDtM74[ ,ldNd@)]b_?==x[lM -.SLJ|,w xoŎL5u4Gsn,d^R&/Lr5U+?9g~?1u[lF7Lsݒ_!"Qf*'VcGO7nSp{u ,Hf* F7H9,d+fJ~(4;|7.ʗ I>.lja^{b wB $dXDIjؒ c7()vB-kvEzp,M9coKLގw;^0?s99|r̰GGz|4k끋QkT?A=)NXvKF(?uk0?<'^CN~S+, Z_@fQqQmf\cII-cIWFƭPeѢAqIS,ԎJT>= W7o~d GS^VKe8AR؞)X;o谾ik}@7Y´ZU)'gQ1*8? [{@"țn4Ŏ!T?fCt}Oΐ;#knz?&"8ѰZ%$QY,)=)6h+G`Nk-ARR[02~"ڮ\*5<Ft[*.ݕaƩA#_wq4#3E _ {’%s`цȏok[:1i-Ԭڝ;p&g?ȤUyQ3qT8O8EVO1f'>y >؁\;lm uZ#=\?TZዅ'WzrNDf3Fs#OeL&!h@Id}"M@~͂OuZvp,?g:1Izoc\G0oGF.uޣIJi(weGMJAz7 Zp70D%pw\pƠ }U'Qiޠb A6%Ǟ4\&wVِ~ ÿu{su]i #AڕÇl]L/EEs{yI6O.y@ Ii!މكL3jZ")]J6b܉iѴɹ&2]Ff1D-B份PuCt{,EE{ɀ0wQSgQ燺2GZBR8NXhJ;uoCNA\)PML*f9im@<eU? %VAhgN}iP3zJ%V":@jk~I?2BFvp_J#dZл =[n@KZ܎oK{нXsvvSylK\ 9a2fKʨv.ғ>i.wOcZNW] 9}j_1(rpئ+"Dh[^dȱlRnt հL&Quቛa䦟h:2z;%7:<^8I!^ҧ(ƚvhs|~h]5O`*-a%mZc{ $}{͚R`σ7ѳz;葩[1(2E1s55tĎFgY r{wE벮c]En=wf9YWف=Lcbw o JC%r!VʭG/H\u(ٱWʝ{}`m_B6-^M{J#6|˃t¥+$(&_;%~e+_?}-ݞUS}!{Ng's;{vzi.ȿ, AEc@f⼛8C nh;nHVxltĬ!y׮nJg&+ў<]@Jt N. Q$y5 [ŏF&DT i{fˮ{{%A>zfaT8":brKOjV`VQ&VVtӤdlUjæ۸2B5ya$+B]qkb ) ɦlH+`Q&;MTf7Sb,>!qZs;Qg‡R^u y5 ,SΡɃ->'R<\oNAfloIXG\|d69cdxq ZA1slTn_"8>9޿tlɅzKgjnI(!CxhtKjfA!Ve#{X" ~?ʞd[H.4cҀT'N;1I|#X8g:Umg"ѱGԛVz=-4uMsZ60BE#&'':)L:B3̯ JglC84ձr `x Ȱ)&Z 'дw k~P^%‘esk9:ҩ!#[I5/qeBQpY.uJWa kИֆJ<)&rf {ߟ`+\ݲ)wIxo^f՝ÖlXhu"IIu܁!Bnp/Psx?tߝ_ZGD,p$b%Q)SbOc•G\_g > }=F)=Aȣk9hTYFL:{tS򙖷Pv7W8}}Y;(Y#cCeH !w5Pb.V=:X&WoK+a:u+k' Kjt'wd &G2)=H[16嵺V F ҹ}Q&:g9##9PU% cRȒ>FmT,@M4;OU]P9٬7r{wKmme䜲qBZdRJyWxjh?vŰ2[35 EVy>s24YKXL}10Il)2;)}=}ס4fK)4xd>g5'YMJ Hb\GQ X2z%z #\ 06r ŨcRXpM1gsԪ0%dv\Af;bgwg<To'=6y{<%T96s==hVk|niԷmV7jQkLMP#1D8V*wF$!pN6;G۳g:TYR@۱wmysz:)v[c uUuT*Z3^:oӖ5$l= mdDZ TC.Tehl'=!""XD2ofsvk-`T=EE֑/ H?#d\W1I)AQyH)/;ރ͚[#~?6SoN\jH1.3(AMOCTRB"Tj)]̸y@J1G--@K\;H`FG|sR9rB<tb{wp:r 0R˼q;iG(0lI[%@TYlںjKoh>4 ⤪yGR$ԄdL`Xt.֞dܡjL.>nˎuLؖeВ3N3m 4Ʈ(3e :l7l l|Ȳ2|h+ >}7@Z|)sP"k Q;"!<ؚE~/yoʲǝ}S lY!8mÄioHoWs.=0 WqA9B ؇8H=93<^.3c m)1)`*s#WIk7yOCg(>U J#ݬ˵S澮w_KpFjQmѥȣ=\ȈnrPDړ85;Z ֺgxN: Uqkz` ?$&T"p{)٨_ۙ.} _akZ ayC6=EgӻlUvLC0gcy."Y|-}>.ʉųMR>d ^L|7t ". #2??yha%{t CIצࡋz=q&PP8n5}kLWxS{#oaVbו!^a;I&Lb}zXOoƸMmK:cnd7T%q tj{w_[ca!ZF! gF enihT($l|N+)Bu祬UE C#hwYPk-1$; 6H,_bcȣ"^AUD6 RFe)z;5ӽ)n? }d!Yppj3~>T g]eM䠘6Œ:z[V=g7K Gmb0W&VٹsTSNM 6>˩'.ww*5Q"]e!`ݱYEB':m0{uoS?ͶB~H}114f@Do'j2mE^kc21K_ŠS |X1R$);bpÂ2|j y5P='wU ʹc NQ؆7#)F@q귡lMǒ>AcٝdV1y=& ]Jk=OU;̬l55jaELeT"L(7v]DV9 ZA#\Vo~H..\֙"g~֭}!{fɈ^0IQvRFLar2D+9Dx8uT[ݵN~02)R4+B(v`v=ٛ 27Άc$u:fƃB`Zv>x`{HڰVXk)doK}e"ѳWgszy ^=XӠ듑g&Ex$Q3kusq._;F ڈ6(vnAwù"7+ҡ4rŕ;. ״OLߕQmyP]L" .*z1<C~g1 1PvÍl`u-N-Vnѱ7O[e!4q|+;i%^XR2pP~L;<7 [GiCy†Hgg# ΂n, &HeJOqm+&* J )Ç9)S lw:IH|GWa`7y{++.BJ8'hBͽ #NazQu6? =mQўtwwdz5uGrTB"*aQ$F%<1kD@ J1+Kj+SȌZ&OdT?u^LYfjӄH yI ڕFKKՀM1\O^F ,~^I rO=-;0Q"> Š-8m\->,@>=?#X]՞`SH.W4Sܳ48Z̓2\ujUA ԊVhR3CI ``1WLEq?le.'0?rnv%1v,Ot+EoFa OF0'~"+9Ih5e@T8+ҩo|&J#I4at.M!īKL"V; C {F*KGs5M:*YE7ɵqz(!gJ0 >6`+iy+ar,IFWP ݛ ) }kce(-kdhJ#|+SI[ %.ى'+ k1$U>@񡊳\ =ElJ;ܼZͭ"_y 7=O̝IJ6*E~]/E0d0MOHWquɇhu˖**5ZaHJo ߎ'a";j4FJ 9M~퓞-aʻBN_e&RAE(.=Z~saOJYC]E65KᣮBa.C"4#suG1!}ʖly8|)!V86eH1R(5i)1Xs9> ix5:`#ӑL>gt:<,/*7(Ac1p?!ZCCh7Tf+Q1]Y\ׂ5Z~/P7bOW+cMgC`cgIl<ԉ ʸ6 7uVX5EM fV%zq"H_^Ϯ(P0gEJRu*/ENbzD&a{Sq,~Fx)0D%yN4|M;Qvz,wm۝Q}>^Zbʐu5C#uQA o&y+4=$w4Uݗ肛5SpғH)]`z̘Gk0I) SҼ``MEi;(mUH/捽A}X-/`ngz { l)pdW-U.4[]FӉ<agB=p mu!fQɨл P÷$u麢y1ؔB$pdQo6ͭ?Vg(vP6mgœԷlKg;mA"_u2- ^ӑ[iBl*a*}hzڋhqQ tF7[eu!x*^9HiH ¶*G7}Hy`~xtB;wȟ4a-~F>0]8}\B 6V!UV(P&UC6n6&K [?~+aK(@3wgD$:gF󵼥 G`3hT;@vPѿ*Ksߗ\xNM|s7T&ķ'N۠Mº v עK)zr8"s8b{ 797 m= Bky^oxiLVsV**Sn:35a,u=P= 5;ڳ(W{ӃW `QYTH6jN Ԓ}W@NQjl}vhft?̒U<ڱ:҂Htت~)_,<% 77}0Òr#כ/4䳅Ƙ9Ū5af+ BJHӤtuBVbIR5 i)z,fsEp2\qSI)w {QA E+Fdf>f3{k>Еb4=|NkUw3/wʁd$M1*T/&ܫ 4D4헟~ rn Oqe@Z5xT91 oύ`?(:&xر0i+^#h ڴ+F3ۏ&Ί%C0(£8Ba3g3rCdIL6iJ[Tᚡ!n|U7 ް #+Yrv>#;N7fĜx+v矇w"䠴j([s( ΤżΈ#D<|j$>]4W}8G6ʒS .t,rh^Qg"6_)&~7%&? x9Fkd&~Q% 6UxWթ5^5ޮ r u"IJeC4}W6$/X֤Zu@`E7P_7G׶@JCiԢ!*/iYF7o`Q>ѩ_uYno0 ^ *.3JdPU@/nʊbƗ4'lckc;D/(#)rY. DՓߎb ڥ㟎"NNǠM [1 ϱWS/H9C.'j6}c ߓ7 Y=(Ob~t .hc˸$-Cn8Ku143ŇQ 2{J np2W 0Vf2)r~dԊ<@:w*^EVOEeK FE`[7=ARHZpao*ekӗkknQ(㜗 A?:  $]!lN9}ydU `_G-D &PQ+\{u=1je=6nRWk<v 5L`Ss.j/Z!d8k\mrvA.q O!'ac&?ةq~j(S!u"-SF_Rh>Y$5qHl+NU@yGxCLf~O%NwM̍$>`pw{]7"#ߣ+60C NI;L2ڬ=@X(/u - Buݨ JvE% Q,ʅ/_  $TdgPlD@yg`m%{jXr.<\. UDKGT"J.seQ” l &<y[u?{Vjxݮ-ȮJ'TX&iRB6\|/!K[hb?ʟPOC\,+&w8=+GkYpH7bFl@yFRK7{v%{2۩Fdvɰ΀S燆܍wWUKu6S'4QR uˆueS'(W[ܟ15pk.F T%b€_|y\wX8xMB3λG6s$3&Ѳ0o-sT;cR! dK?,ykE) ;`cZݖ-))A&_?T^bg8^B=ר,j[m9 6TXXQK̷?R!nc^[^e a{ffO(Qs e!}5ՁB~"K#ԑd&Byg[:.;bfŸT[z`y}uqǐ7OPi4'XcS㯛nO5t 4S6A=!.Ʊ!D&ww0, X]Gzr/&#bQ1|', 'C; \ 1Rٯ9$ ʖ< „$t#q?9D"9t %Ioɂ`tEQbUڮxBOV`M]j62/Q'AwF DLة#07x¿gݗWWXZꭶb5ӻ<#c'lv;q%#y yh\!WuI +0A-xZESij!0i#&#au 3j6ߎc S^m&,Bb3E'J168l3MLM Dؽ*. oWAp ""wBQ+h3Cc֯&d1E+}@w98|dnc%;̤'sqvf[l4=aD!ԧ6%2|Җ%;%oP5QRKYnjbb*Șcjw8Pց9smi OgY,)c)"f34qXNd犄.nqIUf;Ǯ3cFbU {W3L`gӎ64Tc!Nq'@־xN& Ù0⦋qZ 5:g'Ҕm-m{A֘k'GW rBD6pۮslnQqܚzN%D:#ep5s ݶq^o2 H`, -4 FbD5 ȓUx,Ust5l c˽~;dQU)FF:aAB‚j7/D}9ּBf<7;簌.e6TbĪzL"J+teڳ\ ż\Š~fE,&KH{DFL 2dvgx̾bN0@:a<`S&*iGY[5}ܠBCo΀yimPkD|dDFL~=:x A*!*(JcgQ4vc`aT4PZɼtب5¨LUq`pπ!vO5~m.y_(UVp/.0z9h!b<67^YϷnxɵm 5 /{QU6zJvZM1 G<^q @Z}#:ω3{7m -oZAb6*bWS_viW<h{p ]6"Q#!$'=xSEMYߚ a%DMĉQS'̌We$^H ۻҘUwLEiDeRaɺ+DT )c3t9?0ct&4ohyZ /׶pSUu Y0?at*A0AJх\a m-rP)J%sLQc@%셣oNgMSRȣ`a4:?I!cMQs!۫V{UlZ"lAh|m/r~+~^ j>* V}-㇕RUfX ܆?]Ak]Y׈W-4-n{m4F`*O: ewu OsNHa]3'Y҂HDS#m[t ep oVM]8l[v5oc-m&pܮVD;Gd$M&1k\y.o CSxQ^Zd1 ȸ/'Xt<9nܚ0_[ܹ9'nt(1Gu ʦ:ޟsۍ"qz{2^́? ?۾;χ ȿ!$ݹt5:GH"@7 ?;>d;L\i6'c}1/ڸWUj7$H{G5M{9omυؐ{!L^?٢ AO=d FQ! c&(L8b:; +9C1A+(%>zSYT9FFaikG փ*OSrSd: ]S]}]a@k[m-s!G a#E=Au':|~~M ǀB^=z[{iQD7[%a'[O $;h]sw)_A9(2 Ua~nz3\~Gm0Vy~S Ej/A\lhTo  p3z"xԏs$X@1gTU2 ㎼PΜkycm?=d(D&Vnf@:˥3J珦`B-M>o!!~qܥ@[(3Xz1 KXFI%)ؽ0 Dmᚭ)bhCӨu^GSUpkG]nK$.-A]ak)FB7`V=_WC1[A#e=^NHkbl\X7gnf؟9lMÿ)Rʫ  ̅goIC-i5j碢oV}hdk[ F@< rVe{0>fZCX wUq/PK"T+dNaZP˅ 'KAьfa|Zz::!Kg<ףre^S$Wt < O3!f꫖th*$#nH $SAPܩF @~'1!'3pEVN#QFHᕣR-XֵeQ!yhxgnFRrll0Bl|}dZ4TꍪRgqց7JJy V{BТ ='8D?܎wcek7!?u0X2~=_vc7KkZi8s5Y͑Bee^fr\5;QN}Z@3T3tUܻFgnAAYMp[vþI=tڧA 7;{YX][aML.5s{EcފE5"\fIJ0KX8 WW1=ahM+wp&JN\rBᄋ_mo^i+_ mP40t`YtPjG"}wiG(\twB_H,/ `1|HIѲKO9C QyP"R&Tĩ#(Ez~ pF^L%†@M9صRf2IgLf_d3"9HϞZ|V'QhAIG&4?>› >n:rƞ? ʋUFѬۃK_4}n/}]"_V]'|UAtce1;fZy^{IxÖ),[),7n\^?i,yDPNdwLa foS ? -B n2w4iBLiӍJEդ=(EHWW+ L9k:϶ 8d|2(}~16tM xˉYGu>J%+[/%Er lݽh ` P؎"VP<_gyӲi8yVyk)s'|zw`*ku;<5/k)ͮL>HG S I_ ig~㔱.BzNE,S/'LH{6_i 9MC!TKh)FWϖ4;Fqٮf6sشeS @0py'lhp6*C>@GX!LD ,[>7%+Oj{ [$Ly%,7()85 7?|]~Of6Wl>+&jSrOXJ}_v 7J,)G{ew-4kvivv^\әuqE c)IUy.!AQS3J1Nbv8ؾpjڣi_S:!1QU?!_3ψo|cZ`Fq2=sVq%H+*Y/ܧޢe|N9o$c.I5^"N|FxxMfx[1YMiVJuuJ64ѽ!noƞ*f$+fuc63ޞYf w@aeP=<|C!;j8c|of2ߑq VU5#lZy,Rkw%P%>dKw smc"-օH_r81XZdh.s,tH4ӨOP4 釛SrG,t~SGź|F%hXwP$O۽jomHX;+WE)H J ~?YS8g-—g& |UPƽAH뷴po#FTQ߱\Ro3W,x&Լ'utdXQs@0ۈmp<0Gex,0ϝtC- k3 a![-W'OAܘ/zb 'paHwL'y0u3Z^4z=-_׸GԐK]ktsD12vW ߀i,09/riX@ %/GuElgEcyƉqge9R1Y%,Jf6hSE(rja2CU\ڕr:XP mCi"ց B`puRI NQxR 3M'+=X̛bWaH 駾ZV nRGH&AqP(cVڥhm!ow4XTckƛ&|[Pxn;[xm!ToowN৕T=U็SJ6^.9/]w -|.p܇#bӬc4-cq)hlՎ^+ Hw B~i@9u7l;GQ7)ULx/6N55ή^Ntͤ?#)ufkX?lK*dkE)!m+4h%?ensײQI{۰KHdm=X!qnd8r&եw;=*; h@^xwX ! )H/mp>n.] r[!PN=JHh"tPbP.Uŗi|_^hl7FHSKZ sE k<`.maܦ$Z=\&{b ="8tH<^~#RvXk$7p&~5ѫm"f *D)v6s )ŸatVE幯_Zӌ]t[JYizme5=g-˷RC"ǟ$H~uO ǫ` (TڎU3 [|h3~ƃ><|/_6YXE^#[̰, C#@WHX#zȳ [n@6$ nV<{V7 zTOڑX>t$& rZDZ3ڛG= ?c S?F铘2I ,DSko"1YQu_գ9SMi+;kU}C;*FȡȘ[=" ioƃq*xk`S^{Kҫȡf>47@?sfbBt4x<6Hql1n  /"v0qm#i; yOUeBd*f5*:b-'έPh*EnRLc]c{E$o>IHٹ " ([gvu֩jW'PWR:yQs2%y6zd}VEcZ8̜jvP`y]̘ n7ݭca*y{aNն/LYOLj329-*/:'`C=!'5OXHx%^W%kzVB)fvql~h?oG0yRddFGO/v [r F>cc%_ /ʞRy͛(9J2`h  Dj|(J(Nm-|Bsw 2ASYȤd5j r/LOiK'99;=f<cڢ_`So]|iZI(RTVf0\`t,_2ahczj9`(oy4ꎏv7ɱ~2&ǭy}7ެ@i5$}y|C h beX%je$D^0aY'Uup*spUTωD},mdz밿wdB #I}(9Q 24!`t&b* H{;d3;_v8ѥSe2<1`4f՝Wl/ z`?_%Q/F\DHUfT/;SIY5>E'"B׬  g4QFo|RÉa&#} ;X.Ruf8Ԥ /~!Cn i+i|a/=@_y?PnA/Be.;qPU| GGɥ*feiQ"H7Vv__wpa{_PEε,ǿ!NFMN+uukІ'%?l5*fD=&X>O_gM/7F-}m[¸)i1>sP *5%[!%vd0k1QٺĞMͫ $/:x){ex q3=΀ =wBSǑS^T@=م9uҐm4^9=_`3S/01M+jbNDd\46u8Iz|Kz j" (&wW:;)vFDdY& Z0Ϣɺ;SQ7ېGˡt 'Ђ=l$%?%k܏7:9C}' `yJv1Vscȹٝ~AK]bvY6\Y ΑvPO]dVEhpűϤR#LCC*=4?޶%@ƀֳ}C$GL bT[ڽ,<,ƅVq/v:noJ6(cP/kp.Ussbo3gFPO X)s [)+zRoTÍr ^T=PdBs5zvH I釱鑰 ]iUs[Cs@dQB(LyJf2.aœWT[&ZN#pRm֭o FW&qƈ;Vvru1 S( f^aJRLٷzxR S5EhͮTpN%L9* FK&=0BG48i#7D b*HȖ|ySB Z#hVzĀ79% /,ؤpḪ,Xp^5ʕ9y{3w&kꗒ1d9Ce+3dq%4t "%) ZKYu32z@XG[Ad[X%PnlYZ͟l::Pa*YsM|^%5-h)!J8vSLnHhCs}SWԷΔ ={omv}3e^ S@Ke"^Nc6z;7G.H2QI&,V밪 BՈ6h1E pN{OҭΎݐH:?3i|dG6WMQO%<>n%  («sf=W-!kZk=)h BcrZ&UYh X~~A \Yz*,m {ڼEY?aNո3p w` iEUVvQs 9%V)ME4.qQԛg8݆wv>h}Z{.e&uZs\2< djm!tT^-K] Q:9ע*lDQD0I0?EDJb谚p2hp~l` .JZ𥐷HU^%o2 |axMnyMƂ7.ZPhOX";?mUH(') sN_ ~ddoHV»NkHŋ aLfC:`n&Y˲ IOSS^3o72iDGſeX$kroy;gF}Z)ӫ#), DkTXtI؟oB\R0ګK2[$#,6P z8P>LRӳI8bK%x<'W`ق2 OtIŧsRv9,m: ao lt/3>)Bqý{֖1ֽ/v\434y.+n4@ƵM]T3$TItjHxJi-GF7܌}[ѱP ʡ%@k3JQ'Fcf撺'>.+D0;fk_ix>Fئz3Eee"%1XXdi;:SȇMxE:GSXQNR06e?f"leꟃQ6o*=o9 f+ux䒍W,ɬ&Y:WU((LmBq|:Q5\AeBF=roeL-j2U-W)ܶ8ݱ"-#6S|3}7hsUlJeTug$էNB7 # 2HPE q|s.-ף,Z3A_X2Lԟ$z2h\+UqܘZ~kQ}IڸR8ͬ}^cv͢1KO{}edt^7f:SLyOAfU̥Ȭ}5֖qV|B2LOXY̙`wV1 GT9%O]Ys=? $8ǍM"H; 3\sQ[ħ[+kߐ㿂uحG0wj$eˠH"d^o)8Wps7(V)9niSz¹CL7 rmWO$ZdOۼ\=^T8݅{!`r̤R5sZ݇eO 5"f;˽KeRPKxS~^SL4<| {z#ɿ19}NRJXa?HloM .3HdQ^"taRc' a_{%|-7B <"MVMfCؐQ}5…潾<3@wY'V}`;~ ~$GqY)Ils]'QM2w@?~p`.YA v+p'ic'v1f]rmRs|'[7>]6T.u_uhgiвȄoN992ci <P{!{2'K.d;ms me 7n!-5~H +@wd$`0Yzޤ~1IYy* VC2׺SIx^U( *aU'~6)8VOwL׫S,/dnsZ&?B|CXWr3YچٶU1q\6HX îW(>,eYDL=A{Hϩssg2IAMM-A&n*׸6E>,gҟ-C0<>_SW;[MJ{ǁUXK7f'w:f&&vdT\.ؗ<:EN ರ:*zh= J}v5s[sq6p `jrPx|pMH lb ',Zp,.qke9CWuHm$d(%GF[c5JgӔB s 9N?$As/Y;-T{' \v0r1ls1R5b^=Xf}` $k1&tUb'&.\Ztkg}b1F}-<սFi FzRz %Nꢥ/<\ɺx~Q*fV2uk+sJ GX9tpTUlWsy@/{lT3D~)(|A)q>-pF{XhGȤ?Zfa^sp̻ EG>%k>:Dok9*= ^Lc}p4? DYўs8]9 zK5{%o0?iJpn*F/aC/8z[?(Y`ts[_80֫t-+x}"اS qfh"\\HJ{Q"ij9D51 ~ljQn μ s# z# h>F5k%*.Y&E4&V8`G2WӤ݉9Q9w9VmZD:$ڙOd6g*Do7uK>$ByB%ҭ . 7;{7(;}kO=OhQj*mqYtp8/WhMb%Z*K[Luk5j2H7_=tEIlSN|sU()8 cڏ'gg*r:/l)zk<3k[x: mo/BQ Mk {Ŀ Yq{ƒm#O09*;:,pTWrp-qRX.`(/LB2ɔ3-!W ]?[暥a;/gZȀPBO(ZH;oL6p %{֍h@: %"aa2/nyuX\[,HU8m5<ՙoDHLO)r"a6m`ҕݴfigvhyg6@LDyV8+5NlC`alů W"?˲?PZ?!OqY],W3o;Ln'PgLVޡ.gӹdހWxQ<BBy}d zJu 9w5#8> -l>ud?TsY(OIxnfMm҆ 'Vuo;@g-{o9sjߨ'z-HԖRy&T}ېbMm_M!L0ZQXskY#mzbَ4=a$ihnḘ CHu)A۝< FLy5; vuWug*hO%_ݭu8Dl?W;k< z/PUU.iH5s*A6'<0W': ⃣K bOm)XxCq?g7FZJo9 oDZ>ef{ʶsݜ̞Nw*9{KL,0y>M5]3='3I C?F\Z*vujzP_OөPw34&KIb  * Y0D<$ۮA7qv "r:VW$c8Hf. j~tWRbf`Bl}Ge8wy͏[kFc&ӻHBg=˘@}pw.i ;nkF?Ш9.|tT9 P 0,(֠@j\K,X$71{YgWd٭O_$ܷ)V1d'fc\B"2ei@5 $SЄA;C(zXv)JFaغ2בs!VPL5sEkS,ltO̢SSg>_s0~HI>:ՂFl篰6LA5qjx.c^hجwZV.ѣݮ7*7*>[Vg=L G6o>uԘdqR[ ݎѢhFmČ̟<&v!i%N|[NcZ.ws_sO1#e5]<Gv5Z0~)˹AaL!iJ[]˶; $[-Hx0SHSz4%*9WJ9 @pY5UmTCaLV^ψ`3a c$ 0T8 vPۼ|FT m|'ɁOﲴAhU]_¸u6 ߢKo†j ?/ _ݸJ%l鐣DXTFp~ q4alH҉1ȼksTB_|87mk08EU?EBsNLV8jn`-(ڰP=&G.tlYC5χd\oDP̙#9( 33džS<,Ay}c ^!&z6J+rH-PW :3#:$>l]KĹljsSɅ^vǚܷ J6= ^ {G/,ZcH2Aܯ`$a{n1?zK 4y z84EkrUBFNm5rTf:%Iq&V^2R2hn:u]25_>,Po?NrMM"[w&C1Jg+..Lծw}$gc^2C*\x*@Vx.͕?[ 9jYfq&zX`D<+UyC 1uFI%Jm 񏢮,xx?3WŤQsZr#΀E9 gr O @2t%h}-ćN̐bjBCZ=7fE'Wvth?G>gař 7T P5R^2svE/@c/DbJ6;ڠ]C L|2;z{P3 wťVڿ1%B Y|şŗX5!Z{Es|3\Wk.]:4PXQa]AOt?r)ĸ#@+b#䎷#WhEԴ =g^q* -o!HlcmoZ+uUOj!֬lyuPm3z(n> ê ƾ>N&btdl&$ckvWCT< Z'+tu4%/0rN)+=H&1Qs+gɕtd oxB@R*u9OycfG2xp" x׼%ґs3- M9-|xe%l]qcGjd8^?InGIDt[ZƜwy,MDZ0Zc3WH?]v7Xaj={8$ɬ̓2]}\xOk.#*f: t!Q@4 Mט [ y?\:euÍ8SL;-RK1+%o+D[G(+gOEV1`a~ >a9y2h6сl!uiPz*1'H!˂K(Q͖N.wC}]K.3-~H]^ʉьvҦ#WKe7z|CW yTXsȫÜU SpI~l'!+y;;}%n9EQAHQHxl#2ʞt@TaV7@oVnsS;9 A6 Ҁ^N_1B7tZu8PJ\Ax/ ݴ 9izAfXyCU/x3.s.vYHr|ڊ`$#^˸\N*b*Ui7h^{r{M*Z/F, JŌ:II]{x%e]=-~~"J4ŵqJfYm(bwh_ DH_;z7=w%K_y)y=y! qlh|jS!?OsFԑvp9z1< ZNfh{,U/ &Q-e3>GF$ Xe,2b%MٝqEK~v.W޽AMuD: PڍNNĢy Xں4%Jb4ܓ>m 8B|۴bhTh8ž?+M19; [$h&dE&DUJ36WBf b'7֋5Q?B51j}l4-XtΆ0?dsw8<CGjYp$\b2gqtZO["e/uC2WI@^'Y@\(=˛5$k۰tݔ0?@ Y9^%u$C#Grً UAܼ)k CH2Ic-UfNYH?"TXZ`y؉*Fh#ү'O~hQ 9POAd@Gm7lz{TqD)⿛9VwܧHMw ԳA+z<,?[ R=i O'Ny?xЙ E+WQ9'TA>? `٦@{Ӱpܛ<#bݠ15@/FG-$?_zAm#gBYk6"孂,t4CBq1Eh!̨Z]\E&ëE/̀όUXў.c[1itPj_)@\6+aCk[GWtr#%Õ7N ΄a?!*4TcQ/]Hn$~Y;΄O>yNtS3l8(N7rO}/n΀tǸB~:nHB-z [cʭId86%3֤&jl&~]C%teYvoExAww]1=ґk #[sz%D: 9)бp5"d鱡\Ijn¨E+@ȭYBkv2zF؏4T[%ӑʂ!Nekw8 ?ZF[zݲXj{r"Ip"toɃ U1:xHΝ(րeJRo58fqdjb!ZA +-9;Ƃ3܊#b?Q_Ҵ>mZ8uKU^ovg-#a%#FGNBCԏ_:{Dpip~/w$|4|[ك| }7`)xD*fl'[#Ŀ~d"Kbky`Ad,"DyJ3k>qu|ʃ$Rc]i3r>mbό-?^9}5qS2WχH]f4sy#9g;S(VB2d~#4:;g3 `ޱ`.W' yAglsi,Ypُ1!U:2b*smhơA` wkǶmoyWVI=~G (d'o8/l_۰y͊n1f_8\}RZ DVKLh6J*Hn;1o38O{i\{KC=תջ~y ٌ+mn{Rv]ײ:YKrc46̱m'. QA>`U2K' fK2a60B3iS}<<$~tjЫ)F|uj15} ~ H1Đ6܂1tS8B- K1t~kxJl>J,VC,ٓnϮ>k,c$a]pãt'gD@hx[@䩈O~-Z|2m[nv͵9@rM&vhQblnt7}))" ౐U Ӿ=p> пDsM3sč4H;6 ܺp&:WXdj]r ?:{ыHϛ,5bu&}SRȾQ&Eb{]vcZv $XY}[.,nZD|aj!L +.dKs>m[R󕭷g'a0ø ίt.W0NQa4a[g2`,KT5&4)d `Oąawz&P9\st 6 b7l=E0j؈?xKr~]JBW@$LMye?ɋf ;9Z~. IXR}tg%).O,O, 9&us]\jbd ڪxHfUH/U +>+6L9W>ƍb}"dr8ފUz@@Ցiʃv(͇؎ܾ'v}M땎ojUbŸ0EAeW8sJL| 厼6"J;ǯsȀ3JD3TКW$@uUv%0CK5 (yQڷs:|6+7 wnd1.0Lƪxh:.yhbSP;ν4V\W[z "'՘HPyI,<5V߈>LV~c~ \[ox%+MUaTk'+PEpSGjw]+0^X:I^!/&+|E(6( O hQre2޻*Mw, ;o6t,z)6AL~ kxC%j]ņsZAW,Er 򝘠bMke mO1& Zʠa Ȅ[)[296]aNNS[GS)DIF?~f(Bl9/me^, 4-|,',o-U?{L<+ȣ֍2cjWR#ćpes$1C`_ܭ& ˣ-Eh"T6i3=pA`P9snpEſ`AzΓRNd0mvJ`|p:V) )i*(x)e$1x?MXJjF@6f﯎T'c .C{eym_P]q)O.jt)bsT9\q ^K YYN-M;/D İSSUX-I6旳E4 ohMHl\z`Oo$([JdqI:'ۯ>Ֆ29\3Gѡ dDǽY(Q @XO.h2-=ݔ]t0>Pԇiխ[Cr Ȏ4x BO*IC#NX ,~tqԜOWx]Ǘ,T"ZJ-xfO$$Q\Կ^Ά*LKibG"+7mnr~?e)5^ u?>`P5k?|U&s B]\\vm.M6^l`;7q;SG(ٱdgW0OhAm!"&wxR}[Z u7\͓:NJWezS@O\_aJhV"6"טҍ/-wy04H,UfYygQd20/yEZO*;|JkfgYR`w1ɪW z"VIl4Q*DZ:h\%q=nR(sV={K<ī(Sm#c̉eϤ#[*q]% %1ÄjE6N!'z ⥕^,gMdbIVU^D 1.H\{d?0)` 4,,y$~\<<"H%[lާO%0,~_± zpR s:7+74=5Ĉ\+:FẺG$ditK^%ho`.ct: wֿd^G162rnD|B8a횫sc(eq}SW؎+)~ϝ 6nh=*?妣fLY\";#Ys?5/.Ex ᘃb17s"3nnXd7]Zj!Ly5b,GI21CU L:Ps!!\ igZ !ÏZ5s! !gaA_Cã{u azhP(uCh Nwj5SKvm~- U>E˭:Iգ?S!Aǐ&05<-mRr(+k h@ߑlً.h_0vW}1E2 ۳B%9Cwٛ[ity\@@ËCd 9 2mOASIve1lÐ!N]" Zkri(^GA_w< j]nEZr#6%:6nkUN{iE-ʌ(Ҁ 1Wro׺H] -EQ;^ж.'Uf[ 眺=KW6'+/Eu/]sFotA;̝Xq.t$]Vfes^xe% {>U"(wG?b]IZ7Q[NVLʖjL96 ~G5bQ$c+mLE?솳q ZUP/g85t3֓޲f$Ke$. Jd/0C=~8DteW5#Is{I# i(676&GmzS:U:W)|@zE8+T w DsCW0N6jDwJ|X49a%Y? :=^\i[}!"/)m P~pꆍ͌e-UDkōaiT%AWIX#=vN ^IdC6C%js{LUiL5dKo:-ስA\2cbXtK8 ._Rni}6 e<:UO̬N ]]{b)ZϴQ}.G^U7tOmFU\5-;%4̿OB|ԉXEE&),ABcO7OG[ЉKf/FEjdZLL T^QzR1].qԕZ;~y\y8,Wחs2)mqˬ鈙+oUad,A'=Zh+630nTMAfBnD{ɭ 7+EH /&ӭ+P{v Yz=a38jrP&o%sXDpk~"?):5-sl QtvZ;cg"ӼEhS,6?$Zy I|HO}٩x X 5i1p tDuuc-W+YbS=IĔa퇾Уh0W*w)tw)`e/M{bT;6\j«&Iu1E"*sy]f-p ||b}bV'̿& +8n,!aԄH0t& B"Uzv PƜR'_t8\99Z&Ϛa,`z_~c&TXb)a4saCq^xYtfj^c;J09ءGYd7-jHw Su .j OIߡ tY VGe+ڸdh jʿHEsFyjCQ0Q`k Z=zQ$.`C4~ǡǔoJzP56h|.&ڡa_hA|dn5#Oy757b3F݉ :RcTap[4 j#vSIXpd8 )OFH_Y KMο.b^1g^,ZQJ%;0V_+s+NqPc*cIXT6+X^0GSsgYt;ضB##d`F+œݳ~F]'_R\}TD0Ӌ0S]U+?[ͶhKz5u(#G7:nɜ_xyt3^C ]w=Ħ7,43Sf==Cl󈺛U* lbNeA&%%ZLEWJDUL^x`q{$R Vq`ݯֈZ] Sy/mgLlcZ%6Gح~:i]>}aoSP8]P2G,Z3*\l1,.LʠsݸǁY8Rp!{(?ϳ n)g֩ ޅM' /}rsXh0@ܱsC[ ̤ 2kED@* 's'$@J+k>FrIfEIx% *+ϲW^1FǢ{9A:v>̦MHq5"@^_M{-~m*J/,@-tbJTsU c91!$Wz @9; }|YNDeχL/mn^J{0i{[yoD,1 GLYBsX,׷ڸ3-G^D yD-NsrEF6'&012HCWa5mC6XbE1:X#D`,{p6E,Ȝ]K_{XҾl6a32j`[f:GKmH^OҴ/nXC` ogM*h ^[3+xψEQ-rs "lW y-Ǵ 2Z'V (|9(HKr{!0~ [~w|y=ƷPG]prE=6V8R!1  C%(rsjX/YX ѥ0l-n-|ʵ,M"ﰩ`_?yLS:[v׽:pDA{q'mx  J& Y'MnSHk f7az.t3QVpENp1yo0vjxAEuĒ-y!ꂽB($+ p >}mĄ?YX8*ne1oI^6f!^J8-=r(]tf, j]N#RMt/m pq" .N1]:G~Q~*rN؂*EnI ZG`pA[qNL%Rݵ6sc%XF'cxuZjH7p5B5.Guh헸Jt<)BnV_m`ˤ> ݯLM>rQZwIA.MrWR} f5?d50OaQ. N;xzSE3{PPrxRY  , 2c&\{yd]aHJsj 'j?๭I(?.aѶ,~꽻y+ uEX @k:`&9RR/SU3oQ? ?߷=^zc5a}ה4F~N*t7d2AZ/,+W3\r"7ZcAa؞ ^X2I$X' |e$jC]:Rbu?O+ fǾ.y&يͪQ$ sDx_J $a׋&"*[$n`; &J.`F,#ُUt&p_.pPR&7dߜLaVi עu1.GX pkHqz@!n&F TFlqm8IUrey5;ɶ?*q@25+.jb3s|^] *%zVz# gsE&f Ȓ=TB8O6 VJb Mm;7=Z:tSO{AfwI;k}ۏ޸X̖41Rycg[flW{ހ5ɧmEkx;z AGBe "@RC*TU,{IkȍV:n4L(R+478c[[;piV5 z :zʩ9Aupe 4!GIAX5ip2z*4ԋ4Fz-'k%]. Q4C!H_},$Yh2zsbeL# k&N4YU7 XPn g4G?\&8QxfKw]70N"LLkB3߾Kq>yxvӇ4@HJ^: g">_pt+zIvö-3g}TI{pq'_H?~j[+y ]bN  &?o[I[|h*lǣS Q!QQSzI[6jNSQr/{K%Ic\F9 ҩi'?#c@d[Ob廽̭vI&>)0ΰ .+yU/2B8J$Zeُ?`7)d<"cM3[UpReMAŁ%9ffs}wwp!ݚ 1\tm F$ht(\Q`B qI7* }Krtrez2NN/z^'Ѱ0P@Y}Ò5+N07>e(B˖؜#:9W. f*zɄ>HG/c'P%wb=v-$i Z焉.lWHdc{w1|#|;'GeuP5DYtiu1 B؟ܗ&:{d#@Mʼn76X*Z6gDǧɝ]ufi }' N \*Qdaڭ})0fxšZ2IgҖ>⠢pY@0]`Vý ̴9?J 55}F =0 ^lm dǼ9Rc~Ô{fy?]Re ҉F{Tᶂs񖉒 3 " 7:!1}wmZ.R9`1Z +^P(H26K+S앂//:*M~@◨Ih䯞xWX~b)Ybetmy|?HEm6KbYh(⍡;3ud3y3$O\-O7~9X/0O|a~<\#anh3Kl`'i_x2$}r 7*wM5Or֚Rho r#t^N2 RLgR,]қES=8wO3? k j\Wv trM%I_m}ƮMuy 8"8N❻*ozyb:fw` ':;/q X5f$2 H=XWt×OUb U{ #׹pX7 jTY)Ay#Vmp[P{Iwf"Px@)Yk X}ujt[c8TX<&ɾ:N9ns!tw<9t*5  kT[3qasJ|_>cMzyC(z2P|bwWzqy@϶F/}Em8'RS=Gj%Z #|ekN7 i/A1!CyQ\d]# _?եu8׈ 0J'_ 6<|X.87֚$6VQcQI .$ӗjkz[ze]v1+ąaQወd, Z=|X˔Cz믏ɼQ:` t h<5@Gl^|L^a?ZځLq+H]qHu^| 53tٳQp("s|,#ǫ+@k]*aVCξA?R"j3V̲]Ka\Co@oE_dsw_-ihjYv~Dy̜wzzZ]Ynxo<}ڠw|mgƉ % BFP4Pn z_kOz5Y9d")Ї1Rk]e<#:Kd@iY h; |wD|Ѱ/g5(A _t7 3s[rq<`YHɕU0u"(5Fo M89&\F^c)eZuV*B#:$)Wm߯/ejk~`ijhF|}$04J݆)nJ}-`wkhLRC{eJJo޵jmE651@fdVz^|wJy%Эd~+cE%`/8zGy ⦥,J;_ȀTet;ORJο!l>[H.ԲO$c#|fHTDnO䙿e0eL1b* }PxڻR#M²*7C o9GE}*l\ڵ(^63뜹 A1f |YȎhiYm3fa!] ̈1B) <Y1bbE~Ԧ4;ީDFȶ5|2Ds4Emo+bKE4#@7<|قU]q(Kؒ73hpЦw& +>$v UZ.YUnf7;)~AfLXy= >gjPd wtg*%cɇd*!n3+B=< +/W%c^&EE:$B岯jQAjyKSɃ6wn/Hrrht4~76k ktʅSz ѿϲ◱ś@6Y6ቑqrgq1',OqqKoGNz8ΡD+kfTWOZ؉~剒=$i(7sqrɖ*١f|L8?GO{l}@2q ;_rCVpm{= f$csk;ko{XfdahQ*^A!ImŸܣ`e%0E K<UE#̰ĚOJ6N'ek.St s4>ê2w(zK~!GѺXVcp5yI_ ?D4|6 Ny<֩)'B^p3I Ԍā?~G4]Co_`l-jKPHjTrbVۂ1L c54MeS<^C޵x(AbWdnBqd5jFkSLBj%JKd '+t>r9 y}~ kH:  Zn{kO}WMR߶BhA7A[Wz tCbSƸBX!<- Y+x'1olX/Vx(-YrW/(7P)@g (ƫtMFU"R%IYs1o:}qz_U>B1zY >J̓a-mǸ9@5a"]_(u -`! 8AyRQy$VuG5lo=IHB' yxn^j@ š{- -g/ ! 9W-i"m pf5f| 4QA~fP:&dD%ǀQy ̞ IS!/Bm,A.-k*1# *䓚ssDX: _Bb>MV- @+>ѕ 坎_9T̚k]Ap LYY\B"׳ʴȔR-S[] Fc6{@tJceGq J TL\o- kle\#C2y"dC ~i&^`%Q~/0v"xIa8X8GnМ2Zw{􍍼 ;#BV[crlT $Ym}H#_苣:ʇ{ R|NTI \*y!10S?X?#۠UFtƪ@CbUm3<Jep댈[8ӯAbVVh^ؠ#7 fbHKd(<܈,B;C[Q"(;M`ғϣmt#ʖBj)"h5Pif:izq8Yϔq&b%K#ǡD=ӈ$"}]}x(?eBj gKa }iڎ@ +j gh_8ۤn ]NcHjUdf-`jFC$!n?Y1ߒ2ԍI1>TP;&eO`Ƌ㇬ROw!?ChqB-})ݒu#R?DGމ#R ٱ{WWk|u(Ѿv zlnQU8Ұ `yȮgU)1>1tfPhlZ z1=bOq''|-Q;\͍Ӷa=]:*zǂ[EL&2 Y^ 6]~S5 M$Qp"ɝv"հc;1G'}x@w5T6 ;!'fp${{&C6G>yT!qh2'( o@aF+r1f HnrTʱRޞjvq@_T ' SE+A0ֽLt?8U~w#ʽ|KKK*$UƺnEEQǬ!cn!pX{1 lD݉^+I~}=gjg6;A%Zh 0[f%G#AČ]iECtVSkX0Xs^4QzR'A7%xАRSk>} 8 mcexy3SWaȨQ{Do3]+LqfWWjss&6M1KuĢBԬ^~]&s*3xtVف~ +~ ~eg3"\RkflƱf^-k{2:!Zfx9"ͻ9 1F#V ?`^Jq'#u"d4Ŷ@нJUqb- ŎH4K'tsf:Nok ^i #f 79>,@:wK5 KLjoЛsLyi~q Lrw+QxЃ0z5VTpQ@5eTf|mSop.4\kkgdS;8;XۋUG#v?;E,8B=ͧWs|3hWD{r GJx~~Eɴ*OQn1%LyRE;8ӸpܛGh;k3%OՆ!)p_} B5M;7YRYtHLI ."Qm^hmyx" IAf"]]hG[%)2_jOA I^&UսYqu{B`BpMMFBky&!_Vu+јݽTnT@{o:!zUz\$F4#mC+Ĥ+⨯8Y=D^כsx<#Όl+,ն,U5[NۤelPڎ̵T*Q%vٳTu{  F-z28 ]1h/!PEm.X- ƿhN8?{7DӐ1*@jJ)xZųnxЗli<-HcH nJLשI cvh*: yLsh7&!8(cMfLAhCe'8dU5Sik]K$+lS҃x;ly90g\1)Wy:MoaҥN¦k?*t ރ}GƧ IYEeh\%o S}`W.g:=vgTƗCuv~-rmR{[wjt`59o-R3Ivsc /VC.gችzbP̚x"l9"ꮘZl48zrdv.fesw1˼5h.{f "F濚HMoJ}zQIx<*oysDeM\p[pIֹo跑2y+˭Ѩ+o~Lչ gK|Xvsw!W$V￧:x )ҨV<[ +@׽e:{י 1Ҿ\.gJa{WÃ]ÙDHAY /@%C!a_םdvZ?``g&SdC;u1Sye!h;xD׹0L>lgT,OuƐ$KD WNqu."zL֔vЅF[g\X_C ivj/6_j\p ǩK~_1ǻ@j#`WK;&JC  vW BvHBpDTXBG]l)'EYVjZ&G /̯[N 9 r n@XtF^@GyM@!)0?E}g&ػ%N@OiGDI^Ij(ԣð7 K0ufP),6}.8 e6z鼦γnYB!H i{:G^+D$I[ 鋼a^OՋʈ'` WDJjqa߄[K!2/ݾ{&L[ pmdiI"),5E!9A_/$-@t[iiOc.kysfӲ-ȪLvf0J + LʉH7Wǥt.Oa,|qXw*eryǿJG&u򘛟0bL%4HMÀYIޢ?4jo을MM1r}P=zH!DAM2=au2}C}֚GAm{?<, Ԑ@Qz#Y4e[M^c,\ϩO/ ej) "E}x U֩|%| O`CK9|uUhTػ3ݓ6BԷ<+ap3{)"'^#髷}yAb& 7z/Kt7.+dtPCȨy8d]MOyPCܼ6{.4O6n.finN3B&uDD{(g㜤ؖy(ԙO>4svEWnr116Kggdod)˃uMbbZ|ⵚDz#tEu| bh\z}~M ;TM~| I>Xc0;5<ܫe&.? 9 {CgL!{C<9E[}OwkM9'U zPߚZ=Y->wK{Cʋ`&ˌ[Q*bFZ疟 vѮ_4鎈?xr~xD2},oMZѝN:J)yR΢+ XprMz_.WlJ9Rl.>s06o#HUB ᇹvQJI)|ԧdWb=!UMQY{Db(1$9ր!`"m-ǷXf|<M{SfXH?Vf * Ǣu ,fE1: 㓡Kf&6 z<{ [(߂P֦f}1o^e+|F`%/4HؼvZƜ(prtulub|;f-sw»9` o!:)rt$өPRDSKK*!n:s_?jab CM DEnc--Z= ID\^9_1=O&h]|FL-9Up^aʋHFEvtYm6Y27;'f[ 9?NjdzQ~p)<rz m}AA. *Cv ˬtGpo3W6XHtGiSfT%hs\^ACE'?QuQ.4sL*u S3kOcg`g,{g-.KDn^2:sNK! ;#Z!6,xĖO w򤟹YM!0.|n= n~v4~ԈKqةs)>0\H1A ,=|QǠAakgI?JDdžWs t<d4Q-mXR[bdݟ{NIfy]%ښbcGkw{Jh$hwʸ.홗`?d!RLGa^z+;ARGI 472+BcMAy;B42~!QSέ8}[Kv~m#BۗLL(2 -ng4xsqmz)wG6攽۞[xM75@c6e{Ekgn1x~m T*'x$裛G?t\T$-`w# ,"Frdx1GarBPE9@|xyW͗X5k'@~ |+Pbbj#3q 6i`p_ZֽXQu㢵dcjF-VXv6mser@\_a?=*1[$U$5^[g>ڍGY3StJfGIQ0׼"ƨ@j"8H?E)qo;+ M_n/RƋ=Ų|/J\n8 @}59cFi0G^fnFuRl_B@ȨAN77g3B~ TuΥHH4*IK TqihYQ~(m#YW(uޝEErXߚ؍*k S'oWZBZ}G ^$1$  '갃%D0b3|z}i$v\hM8:Ma*)sdz\/JF^T~qƍ~۲rئҤy4`(o̵,иu'"<Y[1a@=HY ,}!-!J=Ш '[&Lq/^AZ5LO#S6\쪡iԒfgAFPgC쓀vVzDa/{xI/tdS!J O(Fm5-8i_"$F깗0rTC(cOj$B'Di/*~J_P J x*q\;{@m@55"]?91RO4STE<*K=| 4n0Ec9=*1C2D٦Oey䌗T\, ĕ<yȑxl4гٶ&{@{g<|VK$~\L31X-t7F$g`fnS_㦧gaOca$+ Gc=m% -6(t?M+`UoVs=lcv~CnZD=8,\_' ^黧T<5ՂMu,XsB0S*|Lq1j[ST |<5ʮPh( }!oCc -izѠ.qkWYg5U0ԍ+`݇;n٠ ذ7&,a/]T.`Jv\I`wD=HWZW=g#BeYD,iEw x%A (m>u#g =PՍ4帿ӏ"f(`h8rl.a {/k nIڎTD; =skL;zo%|0Ebx\Tx=oS`ּ$rAol) 10y[' ]3}Y'@W? hE8<p, Rs(E{%=lj;vpﺲBP.gYԳ+lh:=|/`7IQ<}Gؘ܅Z;N=r*wʩi޶VDCCk!lL7%p&JQ :ݛO2e$XYɌ&"2EHH)ޏ ^~}y,?ZztnIyu!BKieCqKgR=t%dzhM._URq0Wb*x^AN,ps loXԇ3)5WQ +-iw~B 5Oy^ b B,{Qšj Tg*۞-@,G88[RhXA8l/Q˃2(;nH$adڤ%@ vS-xԽ2(*ZsJjvZjj={+PPm =c347-/z܇%4yerKE"= rU'@dMLXjz'-!!N[j#%s;֪X Y⵵mxhg ΰfWG[K3\EozXC{Ò4HV<%G 1F`z15A>qP6kDw<-I&z>-k-. m2]oӥ|ęA '9quBNzӢKB잛V~NY4gxz#0B=6~>}YfWSd}9ۘ)Ŵ&Tބ(R?`A4 w9vBfv{2Oa'Ur_~ .А1׃(> qH -P9K.[!+ܹf/NͶӇzK 5`NӃ/@yR̖+d|d偔 rוP]x'R"I{$tu$M P5S`θ>" iφΐ"}/q{l ^ >NYA;eRB9.G =0/>#uVF-j2̷[N,y_:[p\Nl%%qԻgdLl7z&B#֭iIhC"Kw?z]'0mbCgOJTfD;4R Tq̟t %Zi{t?Rkf{nq3p+PAv/L :M&}&O4Qd'#\Ƹo\BAX͹>?ݬ٨cHa* ⯈U*q5=-SwWoT798l3búiy̋f&I⺩ӕKsKAw}lTSqd.|Mj`V5 Wbp J$aS]kw%c#/ɚ} AKv#]L\DӴ܈c ͌|v2aٴ aXl2$ 3})]Nsc:ă[JNK_᧶Aj|_p>#" dzo[{8z3ےD2:<1i*RTX~LP>h_-./̼5wʣ1&q[(G&P-WIIIR{(d7k ߝfN3G!dTҷ0œ>"S6_R9r"CwLL>G$a +Пz:Lj 5/k6"fru9/ nsC> ~eNb ꯄ%;QxX8ճ M 5٫ȷ&qKa.B7Qr}r)z e8R|;o7<ebPB! 7^6bf8[ՠE(2I"C. R`h@?Œ)lL:į,؉-a:s㩘ݐ+ ޑ*wCըᭋM* BtvrǤAEɏ9'``+iĚGG,%E+'vA$AzgqgrXRkm }l`_ˬp;24hrmŋM^81o:!Q@aQˠSk/-X֏pyO\e-9@Gbm&vP!XD ](EweJ8Sži@>>@0SQl?)H|-NCe%\';FF y t&|q!CfX(<+O(^4ez a;&^P~'Ox殙K _CK{&Y__oZ礽Vh'l"Rxeη59p[A  r8Wkg F~RDNs⿸qJ9IDlMQgK>~Z' VdI8~i;,w'fl`mZ>6L,Wx߈Djn**3YS'*l"` H0N9|cWO`5 yɪߥ4x!#8!Q)2" PPV2g\`+MEy^2pSWჰŽsF˼L^&Jg0Kù}S#PG_N1 9cyZ<-- HVqϷo[ ` 4ݳ(YaH3fKUH/H?u|*ԑr%@zKN l4ʾ:)#yv&"4"!еL6|cx+W, qg\[J9!ANЇIR,k]tl&*^@2bʆ2mmWAgD:)ռk<|{ynd$kmk w4ԔD#h\I?@W7Lf.,NO pmZ)~P4W Vn 傴vyEu䗬!*^bU|`%)i6&$,;bZ`.(+'\ L |RX&(Rdtw5&rBNwźs>_-ztΊ~hEnL`2ixV/;S-ԮB;dG7? ky\Ji烜Аv>x#8d+CՅaL&Ԟhc"UqRs^c +d)ƺgXϋA5-fP;O ɕL])):/ H&,̤phK-{id~[G6k\-A񠾯Q@JCaMCZv\{ϗбr=.k7ӳ>X_ U$yЌSKˎ9Ij=Q1@ղY{d?]MR4T OU)|XFn7;zT[#T%ʻO!cvB"4xSR0qJ>n\Xb$YK9Q <ϑ~Ug]]zX:__^:/u>z>cɃM'q?9{\nS4ٗz>l2P9Z.dWR` 6"u=:zŪ%{VyyڇKGdք?me]iQlG>"1_x~sRQp־DZlm7Lbb;0HV&#!´桚m^ySUTWs.eqFMk7E!!L>J7P<ĝ090X& O 2Xb6@c[TX:ÿ CxI/xki[ :: %m?o-AK1Ӣاe]$> C{WI3f}8 fxφe<0jčq2jsZL_ZYǭt8@jfǟyT)$}~gQ6"-pxgG‘=&8zQܜ̓6b^ד $.4eGkOy [Q%~ϝA&W.L PG6>Y[˸ES.xRY$]I䵣Mgʶ0.9pԊt\yt2|W`}'b ji7g*·!6vEiꕃ$r֩R@>މT+"XT+C&G O^jC2+H:3&; s,yBDgZA I+/Dj ~aR x\Fy'JɆ7Ѹp -i&{ad̉(&Jչ^{XDh6,h>R"n ޞZ{IAr־~SdfYqvȐ3meQ3L(#n~p^k%56яe@g`7^ /MNl4/r_Y?ud;k2ܤ  |-10 nj>Pss h7S8Oj~,`}fkUw5vh ȱ):#)@dWt u)`ԐWI"@r)o+O6:ݒ,) iQAWFr7;2#WhK%Aw,]XLSX!lZT!eoD,kާ?_ Ηtި.m Aj| ?lhiV&xnL~/\!(Kd̒N7ՈQ:LE02hgi}1ůߨ?C\:1d |!T^}:ioީmI=#^% QQsUhR?즰+N}K$@?+%kƟ/H2ka 5ZAc^& !x  Ph?.8(tФԯ'e2NdX] Z?XP{%yrQЇmF ]"i?OAIqd7^Ѐkڵ;A4]Xgu%\rj pЉ꺆JN7jM L;U{wN%Y%̦9~]eK3*67J DRQsCt^`w3ҝKPV:t sk#0X^%* Eiwޔ3%GrpC_]12V { [Zhot}ݥJ@}P\~(Y`'H+w&J+D[.g<':ӏ2-$nyY2H!ؠhs[=HA5dWZ0x2cpD{KV6诀G9ʰZH C6bOmY 3ZJ: )E㍨QS@̽ىiNy,XĩVvKFIQ B6;/XjA>FV,T|d㨘r2IN(m + 6ejvnXc&6r9n? #Jm _74,5Yx )È@cdbKλn^3 ]ѫ6#M^*Wg#zs%jZPX$8:FAΈ'DǢߺ&&Ta9cﶻK\I0^uXn6ei>WI>P"X9U̾=&M?ym@]MP-»j? 5}[NU=2-8xyU{4J@vʋe2sIj{S 8 jWu"J竕Bqy;?@)~Fژ8Ki17r7Y=ۘ}cE8r`:Nl Ьӡ#J$1ޅ3'N.߻MBN8|YH ʿ+z\m.rC;cQxPb d VSu(vX1TZJMdNVJ1w蔎)Fa:;Eq =P=):>!:YQP<ےH@p O.CE)C/&bKtp5:ǥ+gٶS4>:y(B.-+0-bed3Mlv V&R8]BE^Ҵ$uyn"pٶ(B ,² ZejPPM`\LfO^*X(&VtS8C}#$}%'n6;PWۀFGn +!ά)LWycs|ʼ$w/`B7pıu~h.J9mf2b~ī--%bףP?YYZNY_wK( eҫk׳*>O\Y{F~8KUnO얰{]ul1OCo-$hXML/V䌑 >&s-&uGsgi{ jI Rx8FdAeX!;PDSl1jKפ\`N"o}M#d\%QJrGwkCj#WKq)v6sp2ԂZI${ڵ/*/8ዴ /|/X>b8PԄA w4J gp57چ\K{$=뗀># DR^J*(uw=/بT3bk*/O:]7kM1^ȷFȓFvAdvWߏCpE uSyk75<'"4XQl$Oy0hS%?WB7$~"ʝٽ o!d, [QLh}AA a"]ftf供(/O jS]!o8axx[@EF\'Vooq_`^cW5~t2De 3 UJblڛz y AYvd5F{Ujobzzǽ'g +&]yĚv p(;1dH*r$WpĊh5ҵm}EwrmD.MaG@kV=O!!?\mZ5\$ATҸoUmS4Ə;dS+߻WZl^_L%LV; K)_xYD|/]W~5)jB뽋҂Bm4UԳHcұ~zp 񖛬PdUx"@GqL}¸:Ra-wosYQ:HIޕwhQ*DG({xb<BŐ)gDIJf2v$ ߕ]8 Ihnҹ(. ("^%Hؠ̐gh!M2jyZ?zGKU|e 9MeX]ZHx(o3vDS9U*MU{'a beE?{"!hzߊ\HX[`Zgfs a(`170aPd7`^2*lwybbgBjc۰&' ֥~c(vx3m(s ]?/LML<' o#™O?Y%~_ IAR@_YFAۻ{g*^Tk-G\tw#!:lz{J6O*q{uíuA%ng~;r.W$agY#io Ne{c40 =9M:%5(Z8 D_^ߡ>_7u6[#`>Ʃ,ˍ5O4JCz0Gћ{116Jq'|YW' d W 1V|@»Z̸0 ’F\/xD؇=-Gpu:vYaL^u#{ xmA,jPz9.gF/pʢEm)uP!j85L7G `}6{J4vpA΍1S* 0\-GnGd1t%NGT " ϊ(SYl+)):MZ!2l đ'6oȨLe j# &`n}@3sZ8BbXIofy/W%>5W<*Q"ϷXH;@l3hK{jj i._HXjD&P!i1[ͮ|mZntE ʏppSD &i . e¥c(Cf5cBJKعr^Y[J ?gqጜ[obGGSyh3w:7F1qQp^[xy)",,`$/gBt6ѧ718 . h+2xe@;8or0>r˶myCYvn|nhGn! -H og]q"rgI\8G둙ˮh`lr$y D>3uIb{=n@j#l.H[xy`QSDA*Ub BC ܩA$:˿@9}˲6-%^ %lVv ?Jh׷lEpx@ydsO=9߶@c\3ؓkaEx 2)/w~6Аƿ;tMݻ퐿\pDTz[L|ep:&oەܴ˻vCI9!t L,,4RPEXV~nb-rS-'황˅aiG0N9JV!E1sc+ee3- Nlq)0y|C\䱙bxݹL??u"Bи1*Z7pȮА2Gc61^ZqlA^OLDbXOܮ,]tC'}" Pq7T6. JUyϞ^&]hGҘˉCG^x'IW)όA owYfr#iODBWa7w>?dfI6k"u 96ReF\ah䆳I .9/0"Y¸JSN)M8-1cܶ*fn*X`-ޥ8 O6Yd\r&Ϻꔁ4)ur6O0wۙB֊K?)t~@‰ |ۇ pN;Nthgu,m3 41t5$@sLqhGH"AьjlbPI$ƓR1epF3Qd|AmƪaDcaԴ$]l cal6֗r+MiD 8Z^[ڶ" v s{+hgŶ"))R9jnI1%PE{'0 k5;caDcSx܋,4*1(v7t tT4^Tß'cJQf~}O cY_HQ^E2o>fI!aT@. 6t:NZ+?Xfyq2'Q_DmK+QG,~U8sz;,zd}r$hMFݩ!{lW{=5btشMKN/Pe5;whvtJMJQElS+GU+ˡК}ݱgnŸC4 6AYd#)""@'ܯ͔BI|܊)i~+ B O u̍,-BGl8œ q3; zkb^NۘA#¶|"‘Cuh | A{[S)͡xh;atZ$2%s1&ku %8HˎI Đhy!8K!^Ѩ ")ufdVbԋ]l%E!I'zyme{e Ud Lݩ 0e>Y]~ Ӟgc (C˘RkQz@&JV,i d∮]W*蓌zu۪1'T:& gku G{!,#"52tK1@=NeD& g~Q!\ON5J*\'()gƗJauG-pÊmbX>(fHEPcXWkj͚z7**,<}EK_h`gy&콰74S=xښZ $idB;O *gK|[E5 Nd[xRڸОU7 dQ|$͵'d"FIL&)9Pg ~uâV ~m#P A(弢 ׃9=\ڗILPb(3_;E#>43s3ӟ6ZK%mW4#n0Khtu{hj(fweX?V#tlQK`3qşDчUd]}'}{Ä#FwP`?ٻ -2)2&2<2WuWߡ)Kk= .5D"Y)4 yF_U!yZ:*<F#XҞ~hܓ:B:-|Ϟ*iy}2Tw%acOLXv2uR|CKp~~m- D,nMfP'{H?1z// [=9OJo._ieK݌jK#n8ܹU!`5ㄒ,h*`aݷUhi qDyLZ Hck>ڭ{ׯ)?ߢaocR@zZ[4(Yܱ+E\ د-u*WyV<'Tk-!憬cخǴ:LfEOj G#c oS%KEG9mކ 1x*7F-B[יVR݊>I/dT۟[#dka)$c-ዦJ&MB_t?}]2ָ:@sߜ7#s:]`5UKM!xbTϭtjE3{]TBVẻɧJʉdp6k#E5% L|O0 0nrad]ie5 ܵ B z#OOuNլ}%ؐ$u:|%}n ,'#g{ٞ EP89ȧ?YB%%nCWOiM돒^ثZ#nqmRC&6ɾ5O8-ORÍ̬pƣ,M,y͋n~>갱vRǍ5&0g0:I\ ",*h ?i–)mv [/{w"gcX:6*𤰷1L.f\:R2h-h1dg'5WicVrd~l >_IVyv>+`jHIU.^kˁ5B1`TSƫ-as-&o46 ͧHdtnT;.W,]K#NҤʓPlN'C5}~Wlx TA9>H-1;6yr^'݌H7Y-I% 5Dt!j ) TߓOΛG'xS"[b8@4@KbXr0"asnjW3qB~o=n!iAjvFc'; _ K-y9 X^>ݏ SKB ZxLj*(E2<}v2YƎ@H!:ЩvWXz!FMC\ajEzecIny;u*D cW;#W0Ϩpc[o/\pxoᅆdb,>m2M3xst7oʟ^jn;0 3^-Ӊ;NRI rٗ}WE]WFc%RDbT̺ln]h>hà jg0& xc+N>`F LU5|F~ ܚZSSr/WFj8ڌTku.ހPC^X+ayʖ80MekRfL? A|i+§O%G9E(7hHBY~;m-aCdi^hTH[{1qWԞJ.f)p:V][Xeԥ墭1a䈸wocgY?l!+`S)(A/#_ Ťz96WE 8\64u|& %Z!fuܫ043v?rDzNwH^=!$a2rbvH(;crb6\yv_$8dmB3 ,h 1)I\p|BZ /a(U!ObO(3MkC)?ݞ7^ οչX:*m|019r#WZU X0S}y7/WzCమ0C9X߭WSaoK^ z[%r"1-"Gb|Ҏ{ ߄4)q3nxYHԋ勿WZ#hn2;`l+X>1xcG'ft7amۚI{Ba&A|gQ-C.ͷLd!8 toiV1ܪ(~@+^_U-EzQ_nf |9/:qjTGV|{Vh;;-N#Wڋ}En, Z7x_9C,?7gWʜs(9%EgPq,>:U2g,mt0HF!}ڃcng[b`d5H""2":l,!.$o$iW ~RY>h5EhQb6;S8௵&.~d>qH%v0N< ,}F 3*SRQ~Ř( B-foШؽfNdxΆR8K?^3ȽU*Io R$߹3=[sP)ʪc*͆ǫlw}kVPdOO7*2f 2-_Ud&ƞr=¸  cK.kh4ff!X+evkLҠ~'py5\'͕DžzQz7sNLہwXlKf#XؓܯvrrPŸ 6H0Ek.A HPTƖ ЯY*->>ul4SZ+=m[X2;@M8͇XrY!0X[# CeY~i!P?{&``WTQ K~AP}Ǩscxj5!#eKeGI|PY3- ޲[/ nA|в#J,y|Y&V@jGRE&z(+EA-@&E27l-o'馜[ow-8_Sxr;o5WY8pk`H"\ pw/#*i>O ߛT|2D"E yS4&! @$J#_y =967mzSdu/ihQes+rI҃_QߥJ1{BL+'R–ä=THd9ο5=,4qiNW3> bfnKR+>(^rxV~9K&GrKFYXHmaU.rs$exs9q!ٷlZW0.3/Z.6uȓtݙcaP@mff#i7&ͬܚ0˛)LEijxm]A*k{jBggkeF6Wԏǣ rv)PZ7">0crBZ`˔#q}+ oE=7YDx(3nIpAS)䁝$MN3tMr4X_x*}I HQVg@}+3lteF0F8iV_Fz=/Z890 ۓ pR:|,$/FveQcQnot<3B`JQȯQ5MoGM>ןtn @CHOı*ϔ?+ihօ}en%y lbTv&0r%.s \|֨2)/hx*7' gJaXWI"T/`Mֶi ^ mVrk~\Cߦar#+2XM`ѐd^cmEO)>.ER fsg$qvEk[C tf8jNm%&sHe>R~nrSL:2.tqdskG|mS%-2P"+c*Lv&I {uDğФ~|Xq?Sn}3>U4 Q3٣*U>yVT9ynZ={(:9g85:ʬIcy0@y:Iى&DxD<6t4%Ț{b)' `\H%.0DߐY{ĮXh96/5EP8 ЩTp=HOV% ָAђ/%^ ,맭TZAAhW`S$~Csp(^u 3C&?2Gmn?=ȅ# ଠ{& \ Ui/[6 0w\Yo;_ |$aZUD§U5oxպ BW~ң^ &⹅v$ځ>5#TCj"tɯ>LO;G=OazvR 4wF$ [oDU}w":M8֎@uѠh)t#-g11m7O☫ 'G*s=qLͰ~iI2Pm*CA9 w̫, ~;P$cawYX 1{k40z 5n+Cn69 @Ưjܻ#83]M'BL.I ב_Bڧ]Je_<t`c>"ֲ?}x39`1]T֭*H9CY@1-1ZVe#*_^A/ ] I_G%*|\5g-ϏG7a,ѭ+zeN5\᛽w!@̯io;RIkJ@1/wvq+QWx; Rgʋ߁Ncwʰ /6dTC\Ƥ"P+E.X0r鎯7L_+ C(jbE`0&JM O uCTQkx-HO;ګax9ځ`&?$!D@UIa*vHφ8.^7ؘ8OamtmfbVyZfY[7 uy! URХY6lMnaZZ :!Fxy+Qs8 B|ᴦFzZKp9v/*N|j'Xhyk3U1QnLYEckk8uϠwJBk$J _|忴 %QEtL[@G6evRe6?7=B> Ty}|kIk^.D>k~{*b*RN=S&z Q?CXm#̱%5@Tziy"Ts4`c9i+rҵk㲧dI9!=c[1?-^D#Cy-*#<+0.1ӄ/]kNXC?ᛷz(R v҇'*Yz]]UawNͣKڞTƋB^D/|U q|"JspƋMGp=?u-"Yd:'hNZx]kO\#.^ώ5T<@3c£ʔr\>F8/2}jSR|;ԪDD&{K&ֿ(LMxPW`9;%YOm6"[$/We]lf@(+{3惁fLjT AZ?y;:g %)4v$銏_; Yo_C9nW0ab& f<$8E")en5ZU>㸨Da_i `}R vF;xhN{jzZ\KZlz s6(sU r.-kL~t>CM HM^Æ۱y:eo{;&盍yf7"fqk{aZ ;Aϟ+b%π%iB~|SzU8b wzxEVhhzyѨ7gaF~Egœ%-zH-]k\1ĨUUgT?E~(ÏL=g-p{;>vקyZ4 5ו*qpn~j&)/TnDJl|#7.wϱ_{nuUH#*C*tnʖT:LWG15~u\mCv_aj6W7vIqz DR C&]40OC gBՓڣȃbxl둤D,c_~Ւ[iaoi}\TF1u ~`лP]U== ށmvUv6w\Xc*yoX.b`}RD;o}s$v_A mަTvc4)|"|LYq4uU@vixl%P|~R˘@BM[-#Qsey_TxAWig W,ug.k!7>F{:52Ped8W rT ņ= Y):DH9,eλJ/XZUy[dt_ɬDD$Exjd„2.8݅򓌪wz""@zOVg#@HBwQsBۗXk[dlE >kH<&*Ol)\+m`*/kz(4k& [w'@8;znq`j9;.aj bu\| <ݍѧl2,n"7ݮyV_¡;EkͽrG;qy J¸9{hD/RSHqYN5.VBhnKѮHcSќ4U y'&+n:È^|)5~XgZYUkt <2Pmd9@&x׆dTWnG&ˤQrDNU17NGN(~Ah狙gYX 9XpJԪsz5 L1^c9 uUą*{3~%SYB}2'sC 3+yFTv_cs?gӈ$_4MypH~%oxMŝŀ+!/~.Btj5J4x /X" YEL!*_O[d3xKx:ʌDoDiOcZ4dk%<S5ʡ6y]t7SVd#Sꇘyj yySe,(^S͹5I2 $HJs_ UZU6Z ,]Z$E&Y#oO]BFGxz:-ɖacZ1j?Ggүkَ#f%xB^>ŠX;"|" n־A&WCiHUBpy.x {a o#CP̖%PA0<Zp挜=j)ջk꜉?UEDW/+h$c&eћ3qHrSj9;|4͸ $V:fcʸT8FE醮a]nTYZLC"Ŵ'AcÆTuA XU΄k aDޭM><֨,BU-kE LuRNrpU~C$;ByRf55#J^ _Sф"wbCi uqW;'tbх9SE=0@ "kρ:(#<K&6 0&EZ i Y΃#SMS^3mt>ے&Ugx@3j %F2}^~E_/BRfG84;W 1k :8bq88Nj|%5Gp*0DPJ* vc sj5)X+/LkH\}[t=_2o<;m=Xq04Ԝ[e9?u) iNu M㵯|~C>vR% lQ!ՏuS ;uG9*@ՙ |ZsםY._Axh*[4tM?:P7v8fh jDvчOqQMmh{\8P} -> _S76íF^|]<63@a4G儶i0cKJ| BbM ~] PqxwGO5%΋'<|Kڿ<&ܳt"D~ u1.ˎ:tzu-ts Ne͹_}+l~aݽ/>,jO Y ݮ4f5\hvPGqqZK0(zj** <%ߝTbuU&#m,%15[ H\u.;u۔&+Z,ozw4W$EX˕Lk2]BOQiDWغ FFkPt\ڙY`7)>_yh>ۃVc靊Nƍh(qSoV'\/ד2ҷE q*:tⴜD]7!e >]E-= ͽt};ڼc P t_VTEbEDj1ǠUX olx?`㍅{&*J||LP2 $ $l$?1W'ԭ7]auv]'n+y>;l2KeB- +\CP"EbvA#`_ dn4T4Y۾ArG9έđeii~U1Ϟ Bl0>%+%#dBA@JF~a9{x.Y{p2(bڵ66 J#z7#2Pռ[j8$ )ab7ြ8 COthzPy.ׄ '7VDSl˯N.jnJ۔ul!?$U2qR37L}җΡ8EB%0l],D*'6cs{'}sc}p6<7/z&qm1[Sr¨"0[:R؈i5qFl_6qS2yh"}| %0+>l<@U,6ۥ*A +h]FfXԚ*^u|xcs5ia1-s4b;^.b-,wt>»|6#U琈Q.,ܜ;I %CAX5+槽ع A_uŤ,My1I>'PS>%5sr}IPpZtA"Յ]{ԑn880b'Rfn͹ v슽EoGKSm-ϻa_7u_WG7Zq'DҝL}ыid& vpaPQys96nb./θ8s´WJo??& w yPfBE/hύ  L_.ViuZ1vШ͢ _d) `52ZU (uWxw劦헊*H܉$S5dĊքeM"iWFֵo }I<h9M^.l7ka!Tx (-BI׹9 prbV[_C:/$ˇ`i[{: &d 9ev9%%tUU2$ ݔYI/VJVҤ"Oe$I ?Z4i^\E ?PmN.ל ]Y7 xhT^mtIbJ<Y H%1=b٪z$o E l&7x4?x UVpb㒸J:<נs $NoXSs*W=:_lb/ 'e.rG ZV]ӣ9V|5xwg܎&6oqǍ [`Ȼ* ΋>vto#Ka:eAµ9ieLӲq j܁ٹVg^K` dJwٳY2{0KsE,.޾^;H#ϳh*Lc3 _1AGBHХD|еC1XcgrЩk|M|:d8*{ bQ::% 請OWvӒ(#U#4=[HRҵ{^Y,9MdOM6S~K> E`\/6i7RUf,Xv,@Mϯ1pmD&-JW`'~fi;ן6^tj2[:^#sI P'*,iQuzlbMՑ~6ս<*lF:D{4½ ('&0?[KRy3#үbvˑNKe֓yӴ9٧sԊP~P&%!D/EmΎf@JC6(fnn5@TxQhuY#WI7Xj:9w0(PkWEE$8®m1&->JLy.fk?ʍZD,܌0RLK^yǍXPypK߼؅j9Hb_&x/a9P,ySSe<+#c}{}Í829sjK5J9A9o&j0F;(D1f4&NC|>@ [6)cQGvx 7rIqK7== Jqȑs/E;oEZZY`(D(HD"Q~YN˸& %.;]#_¿*3e1O3 (ai[`&+UQXvNJ 19xeҷӷt m}lTx5gor^ F/XM`o9MZo =28'wՔ?^zviEm![; 28>q\r\Ҟ^yS^tV|9uy8׽t$w7)PH ܃$y6O~O3,ԴUE\-`^oy P Re@y'f)[pjkMVm]xYlJbrrSg؃;4~41ZxΩZl,[ <]$o q6ж~`g'Rp*޳eARR]@n:kOO zK ")`?ߵx6Jm9֖UF}D2|<J;LxtzR#ǫ;ln7f)~ ;1Eay{ðj$ D? u!Ja˼l ]F%3󙎷'C5]VG*GH=.Skӥihz2v|Ax1XUْWEm"&Pz'RW;%aPjSBU|,}=9{1Sc"E+b@ JWGFt~mPq"In\fbCsC؏_(󄩪aDC!FvXs屜nߌJ4*v|U&Rn9(&ǘORWt"GV)x"gv>NeĝNrJ0C'W-^%?o:5n!$ &N=&Pwy.lNE1 [7BRnHD՜FI/b.J&Ԅ3jJ%A2Euۄ/+IJHMMAbi i>Sm8л |B5ё)u4gfG;P<4Xv; 4\ifGbYD+˸pqv/YM,u׎pD@ (}\5q Mj}\-OOشImdEn@1m/U m/HD|X  ԅ Ԩsm(Wc Ƞ!, ' 2KcǾh!mT|x a)||_i uj ̰ K/1_< 'dk`GH^zyX|d9<4b^_DHv ³"!a0y; kd1M{g=l$%Tɿ/л!!_3tk{1 Qb|oa_F9~삤9`ŝ?,M{7z,aTq4-؆kTn.P<6l}~{#[cW~ \\dԨ=&bS08pM^b,.H{$,3\yU9n j1.aFC7H[Ci"q,CIeji3{p+T {>Tq'ߛR_ZlpJJw8QRf<y`3}&??z5ZSj3}'UYf#?3"/o_Dn7'!A5#-ȉj n4\w[@sks=4+n*OS?݁9o>7A7ve.t>9+9~P@K΅Ȼ|v_THZm;b6?u9@)_6m1@7uEAVvPGHH|A~ZT}KW/n)7 ‰2a\|{E` M3.[7a A8oZ8~ւ;./&0QXu11]uw,W ,MzwMi3mX"g@$ЙŠWjkNYIMs o7L|kBЏw ƢL *_ZM?j ׼_CG X'BQT:i[Zس??bh*v[n7dlCM{lRc)1p&#Kɍgww-^4QHʖQ4"XaÝ^{YFIn]E~>w| %-~U;٭(lsgCұFf &Ipda<x ޢA`]|33r/)#e#vgXኒJZsuiZ7龓 e9e*PB`*W4MlI dgU8wԥMfɴ짜 g W\_qVw|÷_2i _ _-n50ZQF f"!U3J>bИ~ 趔)A&#W{BW\o.míq}"X/?j"ծy^O% x 'Li}aGFG?~{@w=5&/&hw~6IAZ"֠kg6gh(+ݓh8-eWΡzn)XW7"xA.+Ntgm (3kboY-+q_/b duy|cGǚ8'X9^Ԡe0 VEZ4Ǒn ZְrsݼˎaU*&Q?¶v65[-WAD:@Pc/'e2)ΡLd~p<^1hQy^2O%2SgE;KŽCy'' Roptr.e]jC0Ž@BAic V 0Bnn¼.qCHA9A;.:*xG.4Ia{Ŭfi5خ5UQzJ>H Xۅ% 3Vlt< \& aމ$51Sb7/ڶw!@#_Bm\S-y4/oڥkܲZ% rLNǘ0kϙL(5Ɵ _9Ɓc5Ê֏f6fc.caYKX& oxF :'⇤JuLd XAcq{Qw](mX.49f_>ߛR\,ĸcgӿJ[G}*[g{љz'lu[Ԭ zԅYn勸S=KWu}[3qH`קt-*R z?;g}! QVv(3G$,[LVS}ßؐFszjÂiFIBvߍuo"RElZPi*gQ\41W]̿0%mz|[tgl{'TZ09Q}3'9iOkJLÉ@r3)ȊLc -E xF$ ɽ|󚙥cϔEC[v$O"R_/Qp .\DNBY'pM.׭ _x{,(cFZ&x<p]hQnW]Vs9Qצ_WrizŨfjd=;l,1iH%1a;6HDz8i05~.^uk΂ i JLOo@o @%FMYCaʏD)/XB?Fu@\pi/d?~W"^=,_6e21 uje D벙r|ohT+wG R\vmE(V!>t3ga fj4Zٚ>Ǵ w%JlY=%+]ޝ:!?A_Th݊+[VP8I]B,ﯲ"֌ K4oVд)?ovd1A YC/DuZ rqiX|GNp\D,B`*eJX% hq˺X(*cwpnk ٫<44S7G┟sd#1&S4Y^O_r/({Mkjf :/k?e?Pê>JOOe CӖSm,HۛLs`+v:4b`Y o i YG?9G5iG>U9ˢAbhD'yN *# Sy@^"P?}q߽ ORT҂X!҃+aXƖ<Ɵ`4^#eMiw'p<4@DyjtA}jsO^%EeB]i-yM`r b\kqhop-]=b Ҧ/K$CɾɐH99C_k8)2J,( 7Wz9v.;>mo#QHƇ,xw{M4g}ӽISHO(y bM&`YE6%Bsj4I헣a^e}ػ%d݀s{L #(QCnʱȦR*;C]`=`k+TE p}"9DW944d,4K`>W1$6?` {i"g2R,9*?(:cDHI+e,3س"qN2Rx$ZSIc[K* @^حF2;eS5/U+m1Iq#y;%nWd*rwU(x)dSh{Xi:60b^G)?@=MĀ1*5⚌;HeB~渤J&<=7_3Žzằ=T,܍'P(#f0$R@D Uh3>uz9 & %9GsUZȑ?o"VJA‚0R& YciYV<6Rh&2mώ )(Р7l60g knbXXY.t ,U"M:Mm9O2 ] (j{sT 8>dsEzD 419*VH P[ևN?@ܺq5߿ *?{OpgBvе{FS8)a@\uwV#UxkX; e' 1J_Cvْ9/Le3ҝVC -Cеl7Ě($6Xӫ|A:2o S{Q} Guj߳RKg׸HZOcd^Xd[C/HNkK{k/APR┉OO|l ong{d1.FS@r0bQzvk!*J֮Y9Q1naNXFTӬw.?w=RνYi's,iZEZno(=%V _ar73$6)% m6*)wOb$Y ~n,&AS No[FC.`'%ѽ(=}% }fߨTVɃN'2(]'P-s,np6lM\^g4m܍+ȋc=&l)h} BJ@ThCrJF3Xhm{_s8"2.xߓ_De*;!G}cdͷYT[W[tm^f=I~ TQZR^ Qp;q+*I7 yǢB=tlz"=T5{/ҵpStD9l@G^R"s݁u~DCYt.s!Q!X9 !\3{vt b.qB,C8!h*B: ˜~ȑ86:FOdch&HC\LgG2 '7kEWߣNɨbJeGX%CNoYOeN,?n=.¢E83d P/ʙM;N+& OH3si;:#qպ-,=/O'憶Q^ i.@X=a\ć{/SGaUb} èiWZ[ 5GtBͥ(55VVAAn# N,ܻۻ"ڈZQjhP@?dhHEExlF 8 -Z6:7 3V؂̩%'ȁJVh@o'9/]⸤3;:Z\*0iTi !}POFe18]O]2twbIY$\  o ,H&e|$GL)w'{=k,P3 &AY-GD)p@w[no1s)"LWIƒBA9HsS׶Y' A(x{#a*k̹#oA+;x";z'R"PPNM7cXmdJe&Fc{v΂@},DqJ횖67TZq͌qlTS0Pe8Q5Sbl\fZ~K\&7b~qDn \n%7ekN8?3T` xoT_˂;m 05;[; N`h%jgG9Q޾zaWk!S-6J]qZs]$8a |l$8nˤ//Xl(<2 *A ^NaM$yĚ@ՇH*=?"gZ3dvrANS-AV_zRc<f{^$v\ۇK!dS|6@ӴCB9FG܄Bڙs˝8ڀp-\xcz^#ٍqP}״W碒ꣂn?skHj}H@Gxڝo5g JpKjIǺzΎݐ c'i0w̆q`;`7INn6`g> {c6d?ǯԅoUkH@C *j@2N=J~exKZ.vp\IҢ4>W-1Yf؛Z[AV iޑT^rzI [}uEjqRkX,z{OԎVnvw yެG:*];z𹆯)^f$. wbYmёC'ߑ'KJ渠K63(.T1zVRYr*l/>,F, 9,x>l)/l`{^B)Hul{9av,+5f3Ia+(ot"׭jS&k TӐ\ ڧA BH7$%X 2 Gi^O4ƙhҍTqԳ.Z4OF7*Nb:3{2veZ$ۣ/+k5)3B+CJ6n*shZxEn ,io-}Z]l(ng'xL`wM槔˄7Z40n:XVB՜d%PIVR=Fl~ E#O bμLqʼn}E? +6ti/:^.˟/{SV6ÃĦ^GV*75k{cѴ9 I߿y-H>P M̌O\ i {ŧ =J  gdiG/ѣѧc,'HRj_.ƿ68S*p.Do#K5ň'N 4n~lSh$syõ)@5I 쉍,ʦf-4K/=)Ґ/=GNā(jL}ءIg!\N37y'DŽ9CCE22qّNq8u7xf QM% DB@I:+ [| I?b;}T 4ra10\[ڢOaOn7^e~uǵZtkf{DjٳJZb騥bz l>SB* {bs9(˖*N3ѹEhLwc}%Xy?%hGDzi.2{PⲢDܽ(6AR?Ƨ,c-I >YO}W{"4HKF}vMZd>5ط"tǂ蕋Rz.= z_.*IUbqH7?Gi_SQQ~3pNʿG]Y*aGTUrgCDLhjTZO7^gw -c0U9D#+ )<@DN%~8Fz݉M`w+u޵(&5*6^Hz$Wucsv*8΅ydLCp5i2(r47ӄЦU' p)xcf:d ͪ|0og3jo!I V.G3RB [̯ lsIڋ͍O`Fgh AFkKMz8j7/[HoH^j⿍}EukdB<cz tR8Ntk&ڜ1g!æ.{)45yfBɉ3wn2#?Gb"ur&-o]v`>/DLyhqʤ,mWk/M]-pFD>8Cp-r+]U_x._1JhaPGk>a(]'].كDDw݂ZN;fhb|$tjt8vVfУl՜Ҽ+Nh3ٹҞmkdT @-}"hCRjL1DmzaG)N֥c5D~*E4\Te/poݕ"vN Uz ^E*P1d~ >E$ݡ~ot!Eߙ*ۇ硫XÍ =hMVDt\T.q fBXy9f$aL?dR14kqvE2g=Y?XZqB%]q&Ǧ_XN.@Bhe񶓛@c$!"[ٖ+2d CA┦(^8޽AA9M_Mqϲts"|x%,F't:+nO,o<l NŤ]F7Tl2wb.Q ,5FDՐ` tqY<$). ck6*In^F)1L!m۵t/q(&^&n tKp`,kk:SQ#)TX wȻWondunC6!5S#ˡʬʄַ鈩yFۼ<QM3ɶBuES&_ݿ7mIB(jSJu K̀KER2R^!.>k2:;L%__‚Fy=i r$X@Mn\!N(ossQIe6KEW$_0YMmQ*8oqt@ Tq|"xW=kAF8 ?x#/⅒(Yǖ"xJ q@B9Hv袹0GU4J$/'xa ݔ|w5ٳh+?uw -CKEYi{B_\{J*]O}Q1t9fD'HoҢu6xk2,.+ELfjdF"7WU>Y>+$rZ(1SCs[ہEw)T#pݳ+Wכ[A5 1L |ˁ|03+hLؓA0`ɎOwvd@v _P=wNJ&j苩6sjKݍ.)" $e:ޟyl8zC|_[ ;\@o^'u)Zna=JN6uifcC$2V@ [ k 5 @,BbYkI1qnN`2=-?1<Z'ѓ*P!Hn׼' цʺGѓK 0\{QI*mu2ru3lѨwo.!uxF1/G JG}936'fTae켅i5?߁(i2NbS` |ABy3xuocB=J%_ׯn<-;!dp5M%DFc$}[v8ط ~cAKF<8)}zec|f?ab{qtyFQRzui "=AlT:֣O6.g4sIWfϤDǎ6O>Hl@ ߵEKuH;VaQ` DuB_GqxM7H`ȁujDKH*`xE4%N&d%9ӿr/5 mQ% )(hH0m+);esBs-Mq:0/Cҹ"Iucs1=F;X.:ˣYΐhG=ߔFm4JM^8ruIU@^ ®| >ߘu/m_b砧<|gbLEL|}oɵz[ݻS14{MLj  ۳TvcS2S[2LjKSmL#\pۀ+q^}@ƀ:`]pDkV4G/3V49A6q;6̫ӱ 8ཷ H0Kx][7Nyal/ܞ,wO]HCiQ«_#B5 OJ. MM}m?  nM"||}h;&ۊ"XDo&-DR5Q;a^Z{5v;|7`{h8LHa8'/@2s\hY+["1s 'ͪMغh7*@/JUﺜ-Ňgs5}up,٬lht7=o<Q/\h\!N\-09>)Qc8tg` ZVe@#NG0ZΦ@l̩Cw( ~b69!n 0/S.< 2ܲͤ(#GpTa~-I̺KNZymxxE1qZ~՟N9f^sĀ AXL*GXЀ׼drHֵ.%=!mָdAͲo ?w8"bsvlqB\з! J3,8;ʐҌdV 9s%F0 ^k"Tag<k8UmT~ٽEh(io=<>Bw6BNH!-,WK(XrFJ}B%5eCLz&ƵZSJPr}U]VXF,5Wn,c tUN,ʋf_7X E U4r/nA XËo۔Naf]5[OOix3Ec8jw΋2NDOpRܙ|\b<."^F>}+0~3L 6\'brхj8)>" N ߢz^+IVl#VǣkV6 29 w:?|CI*0\ N$%a`m 9!%39$c,0H)u\b7xj+RPPr:NNPHwI3RvlTq=vjgiKX„ly,;1NeRPrf1@B‹`6cZrFR\IsN*TXC Zw/º:ZJ6s{SlȸM1|RK# \ЀqE9M[u@Q!gFQgGr: _K%YPJM RyЍxq.Pbv hC+gOB=fT7au>YQ@6/FlD=.u|>E)o<7Et'@5[}i嗰Qa)]Ճ`J P>'p/݊{8KMGqT ΒgFGpR`khp(ԗh'q2.6tpiD YͬFX}4td|8ɼ|f;1aMczDawb*gr mr" 䡤ӆݞw5wQHϜe۸!~D~ҝ>J!EtMG!=/SۨdOD n淲Qm瘿/_hJƨr?򖳜af %r#A .vѤ~34=cx_UAjI\a adSUgЀ\SXj=KEu |,5:"4Mz#~^ڔ{̩۽Ĺ7 ֻ* (vÅk]*W*gL!5҆t ߏTSw kAp ಑ES׬I˄>BVu*N:=_MG.߾s Z$LX\⏓cQ/QÚupdR]>}dޥ#3I$"6Tǿ'ǀIyO >'.¹8i'u//خ^.VF]v#`f%Bu?0\@[ ewݜ N{% 0H>&¢$ Pgo.\ ';9%&_z2/[67x Ş>+x쾩֮ᓩc%~ >M5 ]6L74;"bP wcߔ- tjPP9`_1<< <!K9 /K0 xZ9_xr X#4\h0ik?2|4$Jdpq@Agʯm4 e Ɩl G:PBzSƉSNog2ݹ@ԺeR2Em(X¿3cOI9ɘp]V5.Ȁ/sYFC=l[RF~^ҝnʽ 4+ِ6\^`w@b VUFZ!6 hdkr6c/v) QLT}k65:8U`G/H`k\?!mCX[2&KN^9@-Q{ץ`Ezh]g_[$wM_$J LYZ8ԦxE VƑKO>Ӈel4DZPW,L R>x>PwnuD\S'_9my9"+o{. zGRIx#hV&PdD=\qўZZ`|m'5ExDfSŸΑD L/ӥFRI=EGZ[,^u~O8kE85^~:ڃ:0OjUT3Fd6X} ٫Z/d y:qnjxMnWN ~9"{[ß5)#*nm_]92{ qLDp-7K{0JaXٽT^]ء]j]x<[֗I51Ofm>ڭPp8F@¶ 7Wby$C2]p1cRUj '= ̑Z7Ee@K.mfXVSu4poyodlH4Jm?: UTR4uYwGSD4.R'F1T BT>t>;7,C|i9oS`?J?ypz H7BEj@[7360?:[w߭;t *݂h/*_?y{ydT0ySh{N LV34b5<4vٯL 03#:EP3,6eqB_6[mkҧc_ė5Re"f9EXF?R<A'3mv(3=!ɴaS9ZuOgPؕl;WxkTپ *hY!*\szԊd=M,Y >`nö?AnMH"Ŧ$2eNԣ $cⶰ3:$[<))-hGeZ<a+Xt1C49x$BD#^Տi4};hv?ÈQn髛  MOl2:cVnOA:u;*nKwT7urK S{X_OV+.ut[0_HAl꫋}4߶LK3Sh_ #_iu#{YJ2u/-Yۛik~Usy 8ͥr#g֌}z6OqQz<`7v.!n`>H4kZBWΧOmw֒2P<qpR] $&S@+hFDzY̹s}Z{(7O(Cq)Oͣr!F0,so tm7`g%\P)ϚyM6;|xyUo5ZRC)^ np'J/ 6jJ?mDP K3c!v R{9Օ݇e~v/07)C=ឈIv #ņ'ai|q;=pH=-gSan̷8faR7~ڪCJ Қ).$zg{ ~nϗOG=J71 cو5?D߆^=FHXNV㦁#g;ACI63A }l0^.j$!zӇwgZ)6);.g5SnM+1[u_`edNC/S\;q(Q= B75Tҏ3 ! 5D&?, B`颔$59hw-#V)!{,Yr[[SdkHe |߸֢;vBauZ\!Co+#Ix՟L+qC/S8~oZwݾn0ڈ]XͰS@+yߡ{[`IĘ3JB2H $G*븺NW6~z#uvίFPU4h fNe:ʞ y~ů٨-(A] 08&6'Dc2X[$_̘SJI,Pڸ3]Pr-G]pu3+lTf׳ į%)`ƀL8`| AK6&!ԕ'ВO"v=޿dflL]V{\yhk4ڀǕ_=c8<Vc v=E_0Ғs*kkם}ޥ*z ;{%,?ltadqCe~L SFt O{?S$ g{ 3w>t$FΑ]7rk#Zv;x%KxUX^Qѷ3H􁪣Kvq2Abt'gGx_euU ^^0*&(>FkzVundC Jj$q e Nmp7ƴVoO8ߗ @eL|/N K>{dD,wF1D E!ЩIgBe&DFQ!KvaJ6K8\7 ?O.W/ӻu"JUn}(;Zwö`lX2a@"9jẅOzR#KV_J=Sʢ/Ao*mFڎ(#~G:0axB*~ًSܒۈjw_ s%(at[ek ٵu"f5Nne̎y ܛ)#ԱB]TJuzE*sH;v5aF0U:@+Poƃܠ >^4lj&RXn.q&Qlpk! I|R_/^l#}=kNMNj5,gnw۟Q:IףH;Pr,\O8ADpZdOc]* &ąf6Ac2zh n,+EMUB4'g#͂NEՁX%i¿pIx\ ϸ4pg\?ukȮ sxZZdX8Yլ>$ tgݨRT(5mR*󟢼/+N\©ԃdC8> "{ekF~{;g| Dw,7S5]#=dc&5Emm&Yл(J]ώ:8cLTc"lt.LZw&0_2῵OMR!K @ɹdճyZypQ%~>.3G3qA::hmmX!fy%ȕ#j ij--fIu[_T0 8" % rhŒ)#YD_Kнrs䚥]#B[FZ4|q`WK5]Y |"ZLfo ͖-{VbTha#cy *ǐPQɷTV%b d49^@yd6R|Chx( R hmD @eR!qkzCOkڭb!3(ĦC]UBu4֯x.z}א]`hAH` ᥳ}sel jFKy/! [;`ķˎ2bA5C@b3UO7U2r2nqvlR/ﭣ+OWćO2ZeOuaaoBjXƨ weZ;4KXcGͣguw J.wmMp@`sze=ד R ¬е--c_` V{ppJfZ=BŪ?8JF$4Ify<=?^>tx? yv%(fx BV^eJA7RB%߬LmKrg?q*,~v sMmtQrݡ;?/Gmy[$ JY[Ɛ놴l~ʳl2]#n_쮝ٱa6FQ%;O'/cPS%(t"D }I.# qƗ ᷫ1s9,)"P$NS&MJښPX]5?wxeci`Q`w4ސ *;}c$p<[թ2J7CA;HUW{R%  :aɏhL ,IXd7'KMv7ŽͫW.QfcEq1i @Oچw"mjzD9ul? F? DMVy9E.XC)R&vk{Ca[+.PvǷBXFlqR&.:oSs$"i dl1+ k1Ђ)=pF*u! wTn:T5¥'ӭ $o`jĹui_Ohgm!r""֕Zfݬ)Bdt<v." 7RJ[KJD㏸$x/ q70Z@Ti7m8XUl. 'U[` Ӭi;zƆ#;CYb4Grq f]"=*B}'[0U%q1KC_Ǽ~ RH2u.}YwE-rXa&ĽQrNjل_I'+T^fk$*_+ dJw9KYk҆u6ť8毐2n͐S߅{q,"9TB!KHi]9<^ȧH$ȃ:F6h$ӞV^~v*BXݐX0Wd:,LM" b~/U tfv e^ԗQQL[9T>yaYm@!I~c-ǽVIb2'o}7$>BwO!¹|:LLȌP hoe9+ӑHr 5P*pkzJ/FioҠ5&fuւZ*a^g^)5(EW$l]!5&樣߃ߙs]\m1y80Tqw 7je7'Vimy9~fF[r0 G)&})&a@~;C1;;S+d.ڊt/⡻p2fng֟-׊"j1V~ F5esLhQ$d *pQ~lkfnB>6^ׄFɺEރϣE^$j 0[ü@#[`" 4ɇ͔ͧ{OPޟS"+m8#I6˫N R<91[{|"Pj.m76~\6P9}Bj*۲PGO:Ɉ(qz/)>TG㾼?,!/p[1I{YG 'F@0y42#dyzlx꭮2|U(Sx*нnƯ29wOIO-3R@)8,G&j^:C HvEG@k爋CIC&ӄNX4B;?Y|&G5lOKRfLTCUjoe֝/DfB ]ia` >ycyYKgE[%}@mzʍK§Fwj ?VPTXA1K)EV5]Wl g(o{Uܔ8lr[rՕ )V|cN'׷x|I簯E俪Z~j!d~9(HjNJPo[9dqb_kc<7s_D>ʥ,q9vc_NR+Pjvۨ_}9@^u)m`7yǾm bS4d**qˎ,% Y4mTdX_j:vrAšGsߍRXKNdFu##/L TYVU(/ٴ uFї :0,쐫[N&ۻ z+NL[ K_ !CC#'\ #6>!A?;¯~}f,Ư9-,fzi.,얳9h5 h-؋^HwEvoܧtB9Gj[)`?mi.,c3Jb-eDjsQ%S)&d *OlpS|h3OOΟ4V Zd["N\,Qw t?ZY g~6i0zדLm}9|29*uZ%7ON?`cK 0~:|8cx>wo-s.,Jwp}䡑E"\8"+KehO6xC(c9#f< Xq Ep%f ? k6ZBRxW.>ӳg&SFUZ+PE*ȒlÝ2q.&٬|V#@{lt _Ӷvo.λi9edSd alpH(1_[c]|yg}YHL7GP5'>HE+4Lq"j%ݨuT,Wc PP6`N= %\5A>eQUplko\ #/QPlN):QE˿ͮ/Y>a-LHٿ]î~Fqѫݤn켒 Z Y}@yff3xɔCq4tĶT4$éTd˄ bvn3B؝R6 5i+_12YW !6G%I6E5'x::(W(*I0O.$>ԅ IqM%WyvP ŝHii<yYb؉/k'R 4mFH`A8d0ݯ-|z}ip<.djV- [%zNz h;(h W%#Yr x3#o(uSW]&0^ oj0K{&'uӋD6mzčbc5M~i+]Q0$&K|PrļVwxt38Hʨy:!Yk"ous#vԸdO03;Hf7!IIưAc%t5&b-S}1" ,1X)7/0 7eoC";a:,n*j2̼76-{5׸}SDI:c=^cwf s7=%ePޘ}n5oeU 0`>a=}=l*;,Yc%rmT[Ҋ>[wl?~`5?(ߞ6˜B:9q<(p\L=7E$3^p| a?Дz$0ces4P!F1- }S8?m B/m15V])6z^FM}$+;9Uqg-oZA욹P!l; +(HDSj$ZO#ژ.=:5dR<-7 ,# J-6]Mv,7 ߃J RHw. iSF$cՐn=NƑb˟[jf.¯<J4OGjJEf!KSŒ6=bg~ؑ+6vcèEXg0[^PUUKtM +:Ƕp? v,(āKw:И}k*GTƺ)B$ / CMUS%X")+Ns`n(S/K\Q( \8i2G8x4(w8y(#7H=M "O];`GR.i7'37^@6覐4nZL ,+:A":N'^T0]BGl('E>0'S!3ƒ`vSN(Bэʡo:(իpt.ɘTo*,+L? -D.3M[D}H$7bQ&n~F;:?_tbecr~}jPȿJck 9rxٰF|O|zjo0|(ԁňpxÖA"f7ۡxڣ=@fXNjpG~Eʙ*l1Q@*0tܱ(5;k۩zx%:7 _ݻL` uTs@htXxLĊ ӹjB_N@B.P&TȤt7FqV|Ƌo%8B]EtuM6Ψi/i]s*PsfT#N\ N vN'Ԋ_em{Kj?d]zScFlCTdBl.ՃMd\fAZR67 %60"r7NKӓ=(*/d{~2rPDԮ?8ĥ1=_qg|*9̯/t.\0n_d1O'*{V 8|xkԏ8#˦?H>ݝp`^`8c|\nkJZQUiaG{w$i%t% O- % YHHgBba pAd,-ZMl q\\- 'X[T76' tfɬ;;4'T¾p܍_~Us0Ab+a—.8:y*}.7^Lxb6WUc2H ?Q Y)HE$:\<>0|) CaA ^OΈVvT3G}5kJ c!bZB 9,xhg0ΤYc*Srsˮߴt/MaXkWQ6/^Ե;pUV}<9ZDq#+o ힰ WOEF&+m,cjg</DYǭ!Rtv$vw)tJu"E兮k&XNSCp'*V> dV7ֽS@Xpc俤¬MpDٵ"Y)\hJ emo4yD8GMK|BUrUܺj dV䇚Bm6337IR$QnO(MQ_SA{rq.>ZMkXIom,5ۈ5 EXYfv !UNTc4v2+[J`.4t8D]}[&ĴcJv}so]0TXjV?ُy&=Ơ2N乭9l +sп<0?Cos]ذ8W]9IspD h3T?K+Q槙?%`8n cʂVpaŏ6((2]Afw ? ,MeO\O [ug-[:|QK 6qT)\[>Hڔq Gaa8 }g9o|09@S#`"~!ǍY)ITnV2y?)ryV}ac [QVϱڄAhOD  R>6MЫzKsS|A_2\銏/d5G] PꦸYhYGMr@M[/FehiY ݥR],d2 VYo7* 'xX4@g˃(I=cs~?#= g>90X&h*傚h 2D0z2fs8d5y\G$ۇJ4$D!3 @mՐ)+R|Oe\Q:R_vQBu=eGAuޤd(zLPE[n }ƍ)ْ`MDʈZ-yeyش5m!؝-{|̛o.{e(킔a5$oXY,HA[wr]g+b3ؙ߶v iF ⩝^d"2aW{A5/ӷ2)QkA솅Y\?wUA{< JۄQ@XDniu ~-#g--9`!P ,gDv5\si?LZpʔV&i ~RK>x]HZ w7o9CefQ)yvQorZͱ تnH1v_]/WMQժb 䣸uGtI2ok2|.;ѪrK &[7[J]|٫ qYOt?wnh5hY?U}ZjN(JvC幡X5|Bo0' o\: 5Ӑ` iI9?i{z'õ֨B@ϾPEȟ?.d󣩒Fi;f1n8s^~@D>ەE?HAxG OlDt';A(dmL(|v.DZ \k<0*FNfoIF$C43O]ƒLˇ8{CP!$vk҉[f {mnlI\E#YI3qiE&Ԇ})`*445'Ki*M8#nf_,yiJ/:! 3Rw<=y^$!@^RβZc'z/>W=_i9K|p4_Ǒ|JKK;xƹIOKÁ5fZمe~G{}wSb398 VT(  v{6 Z{G/2 [Pg2a ^Pi#JC; &u7b2[^ VF =:ޣ6 @%F+iNa=i?% X/V66޶%,;)Nv6“L\.vltQaF@|#o{WԜ;ZP+8'r0Ѿ,,}̃1 =!ǍTk3kL)&**`gIc_yM"N*xTՋ(Ydu'gR._@>M̖ +Ta;+=5$M-gOO|1a}F.ֈ8zc.*+7yGʤs ~1cוQp-4Hİ RseO'C hf 3 &КN_TNu`Ǣ2{ R?_c3FXs5F@f< ʹu3;y[j`Gy*^3 ˜tQKu7>rԶ =tTp}(s{¦8Q;3c6om|;!nH5>ٽf#j@hy74dQg=󸉉mE&׸J*Jst2\jY|4>U8MjFdRY G9FAXTcȣ6ي1)蚐=mޛJw{ M8*8U ;["ۻJ˃Qa.z04{T{r>YX:/3斺6: 3,>zq I(30ߠg` !aܿ#?7$2[,ۂ4' Bu񗐈<ߤ~eD.:Ps>Nx.Wa%r~?;soufgn]5-`'mi8b9m}=eɢ$8>4,63GMH#LUO)?각0LMNܨ93rls-.G2/fl27)` PV./[k`I#+ǮGG訉d"C]Ce20Jo ,2-2tq6!TܼUcoc=,R'36#b!y]\2~f iQ @ cm5TPTχն@ҏ<wo/'zcb`*kmzځjy"ㅣ&y')ZdCOuc]o/mWU馴st-RN ST^8%rWLG s_ųTt/оbQJS(Yk/H'B Ec)`eCܱXrkݼ63 06u|)aR-#'^AURք3le\\^]+uS(V%C ݺ`bd}̎ɰź yY8ۘ X.pG)g3M[@`Nk l0˕kZF$HGQ< ugwFGxlgj0Zܼ\*K{0ѭIaÇ+a霨PP}j-ngGP1|}" XƠ\x /S"[E͍ 29WyL+CyU^_WVMhJ -c'^r;r|}i*=Jo#G>̆ ޕSd jwe# Qj}Xu`Xw.T/~{dJHX3Nm"wtA~nJbv5ugp%Bx:N=lF = IQz |$d 黚t.}Wk ~u %0gd2 >7__(,cE;=2څ $h.L5*{MsG:yQ˱;JZYXPf\u1dXB\DDY\/Bǭwפӹ['3}LtV45`1( 3_2*evw!zBdF&+b\̡q\1JL8My_k5쒏g d0w* Aګu5 ش׮v2Ş pW:Gvz˘7rZ@0*[5[2J:ZͻWUJs[eAkE8sJӺP`[6gMB^I`ER xH.q+ hD}˭ /D&~-w NfI;m[Da3>ri LYp\ vjJn5]#AOa`>;O4>4*4SAO9^k0ԄҀtM4V)1\|D>Y\ꞎgzT-+C΅N->P3^ z|5]'"_tMF)4F 랿e,ln/"$+l Yh+= JR3^5$g?ȃ9^Z]SBҚuyn5g<. !F_S] *+zpy@!,dއI,Uʂqdp 8|2.DW]TwҭIj>=v/gFejU ๙1jA=iU%voO 惮jx chTSx;S??s<d`4'$4^AHŘ bu1tv7#fԬsA^Ԛc(V,"y[˫ [QVY*kRخ$CjԸ5 =~)dFwCbo0DX[fXBx|8#1B%hKsxc5yg ]T(z{+H; lSh[nqXr}*U|׆}n&("' )zF%.\d*6u 40> eT1*_gus"H@ôSWgLovg׫a4BȴW\: \rUJ4 '쭗Cð*A!g!{-LG#7b'q㹒2r2-0լvPL庢&͟6|fdQJ~ߚWu%*A(sa;,2sdyPz m3V,[q˴z n?Wx"xxrpROLkmm{ߍʕ痹m|;a󶱎pgss.CR2VHMe22vT)od=|@YCv_\4 D>R ~ 4MzOL'y$f^^ɑucVG\Y6%tRf‰$ &scyC%72bLy܂x2 s S5r>cŜvQ_wå=8ևLlhW7G&RvvnM?6<+nZ =kU1N:ܸ|vC7ve{L\`G}' Z-7 sD9Ir6"׈ (t f˫%-ir؜D__?aY\s}8EZL3oAGdI."!U²ݷNHM#yIzy4m?o)l+8;aLZ8f@3E0uXþ}[F0f袻n[kzC`XXk+>~I+l c5QV!d{IA9\,#,:m/ypr#څ0^숅߆ץ={EtsLn \fp_:#$y@'X V_А#Xy&;-Յ <#3XƔtIfE7^)1P 4m%*: Z}m7eXS`oy78۩r)4qN@ch3arVq[z/gl{"ڲhG_X@g!Qɋ;S 7f/Vǒ;g@'j,mkc̃=NbiJ>Zy<ϑU`񗤶|- Gb60 ޱ ,GYc/*%yWTTħ΄~iR3H .V̍dn]ޝP#Pŋ :s,]FSd} U9tް"JBaeL>^@Kp?ai TBrO *Jt(9gH,>q%q-ϔwS"goY8y3,"ޫa}%Sj&v,qT0@A#<8kATKB[(2zr͗Uf&IϺ~H4w.ݶ(i$eꢢ{l^B*}|ׁi `JTv;$G!M`34IM[ZlAŹQCC)6@ C&t/;h|yc]FAR+r K7 Dy*7 }ӉjOUk j{eҳy"|6|9?R YMyߕQ2o,neɸO_dX+*Kk!ܭ~}\C5s2+ipPH`Q=Xs:y4<"$RwnfvEKޜМ:t6o(7!BFRۃEQ7JRs=9^!T8ٯ84aY{z9aۢW+F{?//}pcJtmA8fM3 FX#D)b*J)H1T9!P}GL (<'[~P4NZJIR!5`DaMh@h~Av5b*M:s%Ѐg̑ڄmcQ5y=!J6<|!p#]=CuԣRNm5ˇ90^[XMF(xF^tln@_ N_dgbNbK>L8 ׺n)S6;v}Yf#O8$ciꢓh*HZ@ .2+qUJ䔱Xnt`P"ETXo4-p:D4;@K;(tm]o.=KkeL6z|Ǘ0"ݬFdwV%r_Pd@2b{ȽQXȔ|M_b*=tT؆J{!%, SytOC6SD~. 'faWFGҧRC oZVy8ԂKh͏8kaƍ|by7(BC~@0Kl HKy#өG~#[m?=P_o>ZѥNR?* 6..[K'0Y4nmE3g}'M29 A#3t8 3# ̛H "%iBf0A UB4-W›%Ɨv3p7ax`-޻eN^>90}_-rNܣgfc{/[3 -KE$+`^?D аgEq_M['#3G_T6xI;сhh8oa BXq<b]3X zd;iaIqMטJ"ŬB&Y?{`#<Ȉ_fB*fYxzudݧSjގ*bR+kՔ[j5D?"]q.Mv2`_g/`E7yceiwcOZ\,z(O5]?.ٹo5|c^H,jCxQ=*}ǷC-*Cne+د3 RQS{s\ uK:D1۬C~.֏!8Iaa1B~:g(w2Ar-C*OEb 9~ \?n樧߈BET"FE:3+&(xR9m~(rPwi{mu~ G1pIiqGz%'Tr[ 22 RxH' lA $ѲM)^I&* tkfR _'ټiʁ4 X*r)5CokJJy1uH^s!qz u's9XnCZ\WC7lERg0]@,cg N!^7b3ސME/ ^.9WLZZA{8ߪԗ*\IUccY̴0:KY*A+JO/S?G/˻0|tWhD)o鲅-A6b'@n%ZPW*]qO cnos887 woIu i-z8g#f dT.먁AY3B8AOyw@j*2<ȜMz`eR/^UE0@?\ eqc>W O\l:{` |<‡-cWfjAYfUMk& 2bZcIKâ3cXlAR LJ%X5lۦ%S7R15Z&V+Y Vg8@H#7aW @j0'o_ldSIdC][OK_8sy!M)?%"=:W;o.+7K޸NFBDHY+#f_bQ 6s nִ Bf5' x}TZAԭ/ pā%~oZ4&d`8JST4[7UBMH١DKZa`*"KNaT:?B&E9g5i77`Dx[/A_EqWɜ*P~\(Œ#Bq ͩ=Q| 0oJPS6ZN&*Wv~BI EҐ=Bg#%iq .nwL|Ҩ2 ZS]7GCQQ|muvOQ@ E1X_ð^ = a1lEiF_/ed(S';`$wG^6Kxͅbg5xhvcȯ )*Bo"RqEv 6 pnK b/85KaK+gq y e]YѽeuG)QApV%hc:ᬝ nK];!xgɄEY޴1/c]\#l<)Fu{" جI(Rwb߻\csXY0ߝNpt+q'Ll,_5&`HD=Ok {ulqSÀ fb UY{AHs2&c]B*.H)ϖ̭EY,%+8$D10\W`&Ni狡wnB͡" \QңR=JA[AzH} 2NRnO/'ҀFXUsٞ">W·؏5:bY`ڪ1@eπls][D[e@]5S3( a2'ZB"I^8HAO̓ נteZD^Mn ]5^E,9cJT0rMፘZ4B̾=j4`$DHΥ@\i0M}=ßZ@zC)sw|fz =Pṽ%a\Od̊ht$ƲU ߐB{:׊0 AD& hҦ9YD)6ݲ L ) V&p:=IHKi(XPzrL?M B640kfQa'[9tk%uǗ|bJ`zUzI2LD9JK9|G-rDu ]1BF\.ǕL0=94z .[U\7k4kp'("ި JW[.&6KUnG_35 cZbax}jlEJ{iwj>:g|EuN%Xg%֯&Efd<.)O{O 谞8JD{Tk"0^rQB/v9oq ]TuWg7 lӝMMeXGiuҽR !y`Y+|wL$vmh4W#0 MTx2j2eA།U :V6? $ Ab"W`,=9ð1aű$}T8J)2v5oE :H=э-o_ 1T9d[pu9Oi:yNY#| |f0єwTAYOۑ/Lũ__m}j/O1OH7IˇT8o_uH6n-S@t3kYu8r)n"J5(w$H[xzT( +TM(ŸNkH< Bup|q|Ҿ^y>ƍ|p7>zWҲĩMwd#$`֋EɖS_2O;%9^&P^OEazFBIZ qVe,o)T~_,k6/pǝXyPⅉ! 0lmn=5 -pRe'T@x.0Ay QH=)͗Ub'F&W抅LX47NjX$ ENC̰G[ZG,G]ؘWRS.Q6m1*Zr^D@+ҼQ^01=m+,|\KsQkCY%pT*H !ӝi(OCAcLCR={[Ǜ .9)Gn<})ξ>' 5LejaеZMYhG!1|I!ZtUr`87ۙ[Sc_SNh/3?_ⷿ-8;c#J3(vDKD`dj7&.,B &Ýz+ xPgRqL'mHNqsw3 B6q_ᰔ-'iqw'J+x(t!VelOr( ED\ցyq˜Y&kqUqzM]0zYյ>3EC%ߖ+1xH 2v27%.6!^m= "۔Ãљ2?\ZpjQKZN#yHulbBW~OYV`gK1$„ZщΏ4 B_sL*g:g#>p%ģG6hMc6e@BXj-# n&VNN$ NSx9kR.àׁ3V.|n(+͹ٝ7>cga1~4r*yJ+ =#.HP{WkGzH$˸zi[A!)/fy Ph-sz?f' d2q)*#c/SLPmHd)BCԍߪ?] u9nO=mL{Drͽ>r=lmLUH[G l9LDrB3AEXGM8~cPE=ta׺+.Kޟs I&iD;"]0nA JKBE=\C D jA!;4__I-"%^`PWy:9GEǪ`WO[ Fh5J7熢 cLPvPF /eO9z Qh ,Lʤ=:Oc >lGNwy73bP7(ws;i*͍m- yXUj;~\j#T4 Yyt`D9< }0`.yS<'S C.n^?R3$Ҿ"Z%ƣy!6z$QOQZLĄuI1Zo}X!ć&]u~/@`cC 7^JӭePC)[F/.jrW|!\\u4+uPJ?,fC Pbs@R^ ,!Xe6Km)j2pEcC$!09O>0-CYw36Ab׊.$:-13nc HCM\엂 y zYXhf GuKRx?pXk:ͷFj27]+ɺC{N>C&0zM+cv[uNћXYiUkNgG=ۂ*:D:] 7)V_f{.S^Ν07{CD,cw"OqzCQ m37 y \46SH,)EvÎGy/ɉNa7zdUrao{Kȷv%qNiБk:~1q3`RL#Q8-j&4Ù(y6Ԯi!ۂ6MaXVNYnWc[nLf?S`_FQpIӟvNFC΀Q[C@"瞯d8r, XRϬ40=9t q_una1K=6'dALW=8Uc4ˍG܂%8mP㦀tfGcoMpw>AY0 b~6 䥢K ?_0oظRM"ȁzjsdcLX\sCV|Yխq Vi{mAEȤpĵ\M>oPq s$ov+myǟ^i.SPz_!2ݰo=BV}9Cm$8,."N4J{}#Iul<0aUK~bĥa2+P7)ESc O}2DԂ0J -U\h[hnC *CX6ʐ6}1t=7_Nqd dUM=T@e))Ğ Y-l'`F% #BGf_w_@1_5n<+0B{j(q`>Q@8Vi[tǭ^삄o#Ұo;~:[،!^a40uk5N<)Hj`NwcS] 5aOwÐ Wá j !A9IG1կN/yFsdC]}AbH ]6ToOOMxŇP>2u"H}6k4`g3EVV܅[ btjIC 閕]6a5=He?4cuHyq=9M{ ?zaTzIۉU^igvz[tύ`L^c&=]>1aRո ,]zӪj4I 332.yGr`YVH (~6K%g{e^I!5a ->U`z^nrˎF9naQ-AgcӮ W[a,~mV^3$,#N ;X(෱@7/pZVjAH.\vxa[$cT=s&S|.ߤںc$f VkM sʜ~ o"@=Ld [\0;{E.dS G θ=h BȖ x(a *:C[gG]mU)#(@dZQ 9IIdP9*\y>XyB?|iVt/TcUDOq-2#gtL{%l>9z1f8v3]gic ضC%"`f@z7f61܃4~!|%c[Mo=}GB$({O}Be-[cjYٯ}㟏HaM!|ͷQ?~*QEW,uHýEՑ1N R*JXӔ./vb (*H8 -D Dvg}Uj¾N5; Hy-Y$!)_.U_k0^;f+3V_t)DN].s)#f]IexٵL>B$*6G9dk< LeJGEW\yN9Y[gы/g.I@- ߵelV7K> H| _B@" -C8o׿} ]1mٝ%IzڒUvX5b*Wә Dwiyp#ENW(CrEב[.eI%4a˘YC~UJr$6%<1zF^z ҂fd] !7HRfPEb}}Ȱ᰺.LzS(ߣrЉ؇&ɣ2Ah N)L_@_ν*9 \`4,[dQsgp3yD# b|.lYN#b8Iqqg l\ʨ(!$sTx,_2S=wiُ-i6LQ5^ž].S ƶgaYqZ~O3LA8/$9 ;[O^Cí<إ7)~ KnX'bnq"\`(:1 G|f]JSH\A!Gk3 xtE| {c+A,B<oCoDY Hv,+۱vv *tnSԥRYO)'Ʊca~2|%lCEFLKl' Be"`)}g 4CZ:/T LzG+ 4 Ny޻xv&ܢ8/fm㹠S9@QONtM[*Yhk a6e sGbv*`zkhQU뇁\¥Q!3pLȰTc5 NA{I`wEw|a/ڝG67.;rq$61Wer2{n\Y_ j]I"LİS#+7mVZx}1'u,#0z0'0 |bv j-yc!'.߭8vhk@P?NHlHкRsۗaLt潳 wq7ĆX(ev]񋫝a[FF&S#dxV\ p5B+ 3:WuȜ#m!MhgFs_wRZ s>Z?*ͮV4 CŲ754D:ear^2wUGQS.LaϏ{t)>4^输ᏄU} ; \ Lc"6-ޱ[LUPv%Ϣ fre!<{vm{M>okHeX5$wṳŪ"7QXI 7~gn:i J |U7:n6:g}R m.q?WMq "!EҫzQz2CѥA65R uS-w9EV >\^)¸0=oۗY9G]S,m"nH=&UȰ?Ԭf]=ͧxvҸ&> }*L{ts;dCzwC,*KU[_m[Q $\ꏻ~^6ft*[j@G0DFyPI8\aNCvzl|>^nIƏG Sv2(`<6vL=%ceZuߕܖfƓU@Z%=Z//!naZR߱5m!rV߭۱67F.!_%аda4_P tN;M.o_F|<7_!Ko=+AGu׺^[Dd MKGDLyъgӲɻӢ 1AJv]4<%[CwU _k]:OR[+c5`e/CښGdBKV2e=W܆،,>Beaj9usT|&Ɯ CߍmUNa7ƒuz[Н_x!qvB 6paB~]*ڿ y hi-R8YHstRHBGFB"h+CmB{>':aU<$=VDӡ N5CQvW=IBlO"8f6=rH#47+ ӌ@w)N۴jT.yo=7U9Ӵѻ8pw簏)Jl=ViO|RRS𞲪>3W]w=&gUVto{F.ewJ9GޗݱQH{yV2rW%M gV!C 8"kKBGY"+ B)KNEF_abJkn.0t"gpz {u ,FP{%uDn;,蹧9] Yd!d0o<e_X@2k.Gqd=?>ud9 Koqqzj aY"*}^^&i!JHt4@ױVHMd( \ 6d  K V+@D(xךZd}kgnܔHUqQ:LgkڮU$xu+yfN sҰƍ3͵sxmRQ$5hS-0m)X@V.Vǝp_gVQ=w UqBͰT9h1>*x2]<8>E+х, 眶+% m:4Ya/NRT<sA3dR$)uR()EJn%8 .ck25,)Sl` .6 "CäӦ0/FC>uȶ{$WC aCPqwuX\D4m,H޽a?o *^g/J;YlߎT7Ḁ- "Rhoҫ>;k%4[8ck㣝U<Ңzvx6 gTӳąQh{/Q*jЅg22z%6hc\>(Hv!J-kUH՗Wrxyl2&MIFD&L$G=vZ8%=n>R(t;젎gr;ڮ+u5W2?Y-U#Iޞ[ܦK<[+#YZmpQ(Et&F2U" paQ cXZ22LiWW"`/VʦeD>ܥ8!aWj rn'hcɆI7KB sE9IJ ܗZU48 !Z4zK셀63| SrQ>PJYqd^<}iVOe,mM zi&BfwtSgS2 EIhn>zK0:lI0 ){ jy]Z *$BizMd?T;NXNvۃ@4DBbbTR= uQdʃ9__nbGjA.wYtmdv(+C뻊1  ^/7jP{¾%aGϙU1E;N<-܍撛$] ^ç pRjIؐ15pSh R*##;ֆrgJdDjs2bѕ*WHIkאS=fzfl5F$Á&J$N>3r>1 $Ԛ<L8{-^Wš,o\~D*$gYЀ%'Mغ*wf HT _^ӊtH;[ )yy[)n68VfUH2H",&|T3.K8A l.!,8YUA`SkիVS٘m}j6`e8}cn +ў&N廦;QI3d`F]f[OYG,gMQi.yH2 @]z?e(o c?捏3@ o]f +U0ZRs諑7h*Bc X豝Gh?*ڗ1<^o2Vש̡'s{heNkJ7H&Qm$tޞbSc(s2{+FYk,0p?‹fWSI;U#Dw9_>3 !ٟ6LZ3Ԃ|Y`[,b?FK2W_1XeRDX@i|9K WиDmOM7G&)lfBK'< QjbD*LPNS->x.Q4 3pl[UAGt v*uTou_,Ou qL R;V QP6;ñRcj2&d2Ŵ] _77Tɩ,|ķϘH@W,҉mX89!Tt5KI$J.{59]d pU9H9jgP$&BUCreG.}TbWx5lQVxm6W{5u[s:qQjpOU2ÍK1` ப/]f>d;g5…?M8(74M :t RJİU\*2'QfnBPQδ\ZrZl ŵw  b4]Vt}9uoĈR"<ݕA%?RhUI٬aG>{Dx}5]e,!&IFk%GL[sdAt:d sց`Og D]: *'#^F1l*5B*>0xsH E"4x`FJU>x/ QKG4$ξSt+4i;kWɟ܉)&sK *ԝay%[-ЁYb48=T1K[;];EUw3꜃o `f e,!F=pwG+yU+vsm]Xe6hFBxCq)2Lu"Wu(k׹ؽ9X;&rJ)4q?G-P/6 |Hz^u.- mQJ DZ@|E6^5_6"8۫dLC1P;a$qv9PBe7u ai+!Hl ^QBkhF?q:^]>1k"hd(U~-#*)HP.c~>Rʛ v!߁ h> ~ex20Oqަw}4Þ4 ,0h?:' ]DS|̣3wP/t ,Xh'~S6ؚ!\$YQh3W=9&P'0Ci2$6k+LF~Ypc=0'rp6|XMgw[>D\\ CgdJTl֍4H@Nۺ O5tx^ls$@mBTߚȗj= y9 4ie1V{ϑ$@v;0]译A+diWSWTt<}YhT^j4lhdS &y c)! Zm!0]6\(r-+[y+BbvwN׭"1hTD%P ~KvD-\oC'#=k%Њ^.:EbCpIvHB8cդRY{k"/W1,Ru>i}"]z&?bRV:_wyT)auG_FGT͈jE 6BH YӍ`GZD&[5UPRpnUBtU h|GRe0s{^aξ,8qL#cK%emro`@ak ɼdp F^ڦWlr=Y),YX/dw,N6{`V?8hs<1D-\$6o&JؼN lR$YS,QCf[FWUfA%eZղsjiE_-䙟!8J*%/q]L'i!I؂WMLBl^F\Xh\4MLg~؍-e84oAǼ~3㡎~甒c e)wavL< |Iߟ+lzJD[8NxG/59kݳ.MĞKuS6@~"ى)JZ'heܿ!hKܯe-R!8[w_AV ER4鏮ŖG^\\8 r@j(\ȫ]W9e!sPv|ꇾΝ@- ] OiL,ƻOF3Z4^#ˬBzI/Sv\n˷F49$ \ 5;`hipBҎLghNMA G}I쩻*AO: ʝHbWW^k6IޟR7eWDĮHh3&q~3o$q<{L[qT_ r4q$uQ+^QFs?Bv-IBsO6Z[eZQԿ>7[-HkOi[ i@! V9uu]l j>ky)1gc(ʫVKMRf=N'fwC) +i刼+B8QD%R2E_Md6Kc[*nȒ"ro1g;lwM RgܧdKJ-F}m{ؓڒ^4ۊEM)ݙ~2ĈRRhaFX1> Jŧ@DQX7$LjU*r$q0 ϫ<ƌ(Hʁ_d ࣙ'?.˝ ԅgGC :jFwDmbկnҲ;c;rDǒ /LeìL7Pj)o]ʰ,SLvOH*P>u.,:{7Ai0jPЙ<#FƀXt'RFb d)ɼjܩuAC_nN[<=`W2( SNw5C?fّVQ<hI|>s?Y_,#e'13@Ǘ]ȭ*]xoÑ Qv8YYpMҦ6ԜaJ2 ܑjyoS!~wQs2:a/R=Ou8k P<5 ]E;bF)h4Sc @{&~.:Pm!N\.^Tz: Ȕt@+\Ivٟ`jG0F*b臻Ucy#Vaf$jA"fHexyB1$-1ÐWZD кՔKw0yN>Z L ,J FPgl5]|S1<3R߁=%FXUTCu }SH҈p-5$/elw{vrCnzc*wPYF7e;;䨔&wjҀ#;3|:Z!|*NRJ T`b4aͼldhDw=+0q2 [Y(`;f`o&Uw&|I 14JD+'[j#q@cP \<2ie;FgfrbҘHs7tbxRlHģx@'KT\ jJr)hdbZpdjo[n@vE|*EWYFpV!{Siy[$LnK@0ǹ^t$yUq/KADߕN ~㉋BҿRYNd̸10ڀFtcމ:DH;8ԟ^NQ{'T^=^a,`%e C rYIe;o[Klb/ [U`Ae{e}t`'ᱤWL_tu%Ѓ]xsΊ <vqgϗ{, -]'r-=ҁC%Aذ,ޒ)JL>ZM(UwHm?K> UȔZ=M} |Rp˧Vv}4Rr}B& sRD9ǽ&[C3- lK&hM~c3*hSy~ni[{o)",Mr.n¦2d/WS È<"{On<0u:,_P-X$z@n!f}%gсґ*]\uX޾_[:QLm|z{x}/hׂך̠rě5PSջPPFd:a{ϭL/9GhcY᫒W'VH1cXGB_bCtt=&M䣐Qڣkf﨓3]  X\eSOъاFQeG.]_Disa0Hd4A-_ܯG0,D7KG[\P6-j1?g? 9KqCC><)KM"K{6Ƞ>6gI~+mD|YC~dy$dl>I+wc/̯P6܁2 O?Tnع .L[CšKxtV|,kfR.L?Hߏ{*˱ܒi9KNt%Q.%^ˈ/3pXF2W잿!-H43;pH_ FnEDY̥ a5uǦ>ۋ֭\-8EQH?,!R T+Z(ϕ>p$(Ƹ-1%9}0h0Jx{ArGy} +Jz9 tg9ԥi.\3EW8+CAf?% R;sv4Q4:ut*+: G0Xn| p gv:L4l(G@tMMN 1ȱ(n,(T.#3BHUˎ'p9o2 -8D5? gXlLϿo~ ") @kee̗xn{&O V&],\$nc ykZzkA\W#Vz2@HB%F-GJE?֘٦Ѱm_ NԖ0 WĠ|"d ~rQt~MQ@.9-Bo C0 y҆|fmP1ӂL=^@g\p3z6OA`{dvnNv֤>9(nCK|\ gyi>nZi[v$ʪb$# RHa㸃P;2nKfi]ʪi{lb %fIYD+Of,P J.]̤j#zP%k+Kw|&9UW lz +`v[#*ӳ̬u~[\K"#oSf*TS @|a]܌D!n)I+KG ^nBohYXmL`.[E5 Y |/㖿 ;t7WuI$=HϠQHP='~A>CCf!hk59Z''g*Z9as䁓Ӏ$N _8q @ZT=v14T P~:x&l;U 6PxIy<uǤ7#a0R]_u@˘z3wt>qJT}V@|}:0``+R`rJM'(\x]p0 1\[FvoC ݥ*߽.DIa4S]-i.S.䫱6%&Ysb84b3C*Mh|@2K\Ŝ@{ )vu0N^0A*26%0b#K!D7E~\<ۆUw F +ϾU )5YU"l&P7L߿b*L?e^MiR@9sw]|vT/U3-NTHQ"9_g W!<̦:C &Z,!Xk%'tA-B8x mAб\{SE 앆2.j R e+6KNO;SG%jgWGG ks8^1ץ!,Y|㙱ZyGE=Ƅwh!D'w95\8e5\^4tq QpR;?+ 쳃2ۙaĮGNז QSD LK|0Pi>]؉)%!vi8K/[p,$!#ǀGNÍENzY^Ai1|7mGYke#2˽xhWNY4KC[0~^(%oX!Qn>}{ |Pk qLj_{VepW&!x I3r|۰偾ay|i&K lcs &8Cf)o5|7@m+Vi &#a"\G`g뎦9b Zi7D7 v[\HXtqA]1W+-=L+ܒ̙%2 RI80[Ў4qMk>(OxǧLjokG|D8Bgљq V7#ݼ~++TL¾c!`hîr-]u_"g6 n)yJB4Tɐxgθ|INt-_oUْRD@vSm;y]8:idCafT Κb\'h}dS&MC(h=Wɜl[ qN+#F穌PEN85xm 6Tl_˗Eeo!/1=R4t>N up=id5rGmCZ|h.g% "|*Ʒ#UrfvK!ߔY#,4].*@5k]X϶߫cO&nR=@r¦(j ^Ghd5`o9ʰ|vsz5ӧF[b 7\qT#u7mKo+ 8񢠀i?Nԃ#UL W`RµA f^ΐeCЍ(YH.6]>6ŸW|*Kj\A+ Vr|m>Gqk-X}U-SfW:>-] 9oK+( n~Łr㿟ۯG931Y =AJIiKaHi yh%&x편#LwN .u:^={pgh$ 35Jb?)9._ا, M$@&MQd; GrG>J'M h\1<_8ol~-w_7S)k(6m{™}Wp(;[N:{I F0K'@#-qU܀j̻jx[zSReNNjm;*wttxY=zz[oj9!{#WOy&fQ32A]Υ7 #פ&]wPygtWC3u77aXbDƆ]Q˒ƨ(s5F| '>Ls}.kb}=*ADcN4KU*{ n̽h.dc zĵJ"Y2z#n~\k&ή.-213( 6"3֡$f%_(_q47s맩!b uþV49QJI,bٌSUf:A%e"aWG~:a ave"]ios~dV'"I=Fn$pp14ԎLK\%H;(!/m.'QoHP-7k2(yes#R]b0h͑:f\Dޥif{"~À$T4&U-4k|4 EY ßG  q#b;لP6; +ƛwjY)nmv f#4Œ09<H{ \|9/ P5-\wQ4kx%iŃ0XКj{dA˄_v[יN i}'sn;Y؛(S!m~{9Ej 26:~dq= JSf/!-s!r7:G?bh4/|RRZ"`rpْ/;}fHW""O$yؿMGPAz A{cڮ,l{G{hM X= A%(;&|,J% 0*6T4Oi6 ѨPPa9>$Z6׶@zA/@Y48 X9E4gƜQ(S;בb"4Λ.8uU{Ezr+\SsbB0XD7,uɽ>|s^υV1EɛI\gE: 0.os,1zlM%ϖ'@Et!l3V x_Yn;\ulBATW-Gd}]H {ug70/554t'r;r-nBs>1J׵4D/RT254| PQշр pz3ew#O_Ƀ|3Jatuu7n"elUd%\4HZYA0Le2Rn۰>FT*YF»CC'b|GǷ|̟wF{d#OFH0?̻rS$\sξ<+*ynou|6t9|l J!(_ \^A2 l|pyEGw)8gQ>ߊ%Vi) iג j|wFf<0쇮>l,ECuF.!@N6)Cn?0IF&`J-MXo7Ƀ.BިW  )5 m$mU Ue,eC7(aN1VxqʕCǹ>:6GF UkLV> ,&}S{_CZʓKۯo>pd[ :ݞwV}OS*h6Xb{ȝQ S'hd!Mz@._uC ahGn !bGC׭F-5}T|\M]yhZ(9*1NYnolI9:6CBt맥KYrxi VIԸ~6wSxu՝z@x0V/xQRF؛vUxۯB 4Lqz/2"Sl\U%:{¾g+VyZ&ۆ=;E-'>H-ǔCJAS;bE}yzsJe!/S`ְ&CN-ֶ4u( wgT{Z b1$i+|[ܐsF$}x̾~a6`о$y7SaA)K0 aEg"W:c"` ʁzǒ.ڂ 5:DS j^TԁOVHwWVuH4T}TTbz E0jx<: XIAbs;(s?hR:m2ʼW˼Th-h`߲ùB//ʥA=^0JU"׉0]op#k)?7Ѿ. ,X^ qYpCuhN$-1` E5+f\CIlj.9ۇji ?"D]Lx77HOfzǧѼT!ѽ/D R("W7?k"I6+044=:X5 SŎGOs0pD*ld]QASa!.Ip'BTrtD".8^3\DNTP9üw ͹v&s`2nW;ÚҧL\Y ~S"]LnNP_*M\}ꚾ b[PþRI_Lq$Ǵw2V)9ɘpm^L Xu! -Y9E2+BSfh/T *3H)sȯ^Q:K9DžOue@x>.FRpdNLM/;Wly](acA5# 9 Y v%}xc+32_l3o%: 'wMjbLr!S-gO8FoIӓBSGյA]配قDaCq6*{ ;hy3z;dC*qcXS#ǨQUc* 1fXRoAgtԹ:gwMH刓7Q(bu՟{ >gN0plOHNS I 4Z~2dFkYdH$h ; *-X0|y7h۹cYD1;Y }z|Fnnj_TY3Z4݅OV{C])DvҚj׃hz{pPbpNcx2$$7[Znԡe#ܡ&tjL ->.,1.]ͯ$~4K [" K~0? ^誛1>Bff!^=pJX}tYh'V[*9vp} V;ijlA#ӶSL՝N'Pk[ WJN.=1 c77mv,]z (ir?/|F? 0ѢEMF{MK( nEvÊC;6@QEsj#U4H)XHq^*  FiXVtlfd,ql!<&p9bB iYҙ[Q^Xk 5NͤEߝ7[#Q)#ql >.7NQ[.!{%Ji ʢ8f#: D]>$*wqT$}ZJG5ߦ.J{pMSʠLtz蝲Ց's ui3pjtlX"tƺuk]-\Cky#Iݡ7ߣ:%pSA0u :P\7%fb/1bO 6kt dh~Np;E"Qd#v WA t2qɿ 6-oCD\1F U"FƝoK ,`a@ 1j&/y67$֤,H:켞 kLnJn?\ k}N98"RGU؂gؔjP#šBm6g9݀u3ΨwGl˅7v; !ƛU}+/U*D[r ڋC½7[=TvHynLDDRIJ*|a5B^i^1gka6M7~Qrζc bisqkÈS!k`}\7(m`cIbFw;!Ngv];?a @n)qſ%a-$z3$ml= N3ɼuF</y1xF E >lJA)FL0V똞zl$_bj]A.iab-kEǨ!Ks%bڲ6bGg=~ ~a^Wf:kVu Έ9gR>yyu>;06ӕmip|);;f_Z ;{TL+-?'=)9U%8j[ۈQCF𘧞R|OۓL҃YHgW(f \$(KL[0Jp e^ <ر+RMՊ _'vH-I^0ثDS]fq@9e~ѭ$'F1fhmY\@ cvw3g14)4ȎQYT`w*];[bCY둎TLRɜPp.FKAR3uL65G*vVW4GD6/^"ν}F+Njd=WBM7sԓvDW_7{TʩM+SsKT!ބۻC:ˑ*,xR"21T`6Zd$deʝ2SNw"uQt\1!fݧ&3fzPxW)lkfd)ru05`-q))2tiGnw` za_R)^zѻ:Ym/5gD @fcZLejFu93xa!lzYķY0Rhv%8gz-ˆeWm`YQmE_ys`^/ 51 6 lEiaH 1ZуhauS8*x[MBԪ9pRq(8~DےpYi:wdKBiyZxBj?6heDnisTs-}Hw/wWJ(Կ]=yh8?\zA&47J_K ?#0/~_ `Ep!Rc;%^4{)1JCRc@SGʺ&у|ӞG6P ݛm`<ʵך+iaKۚ/Ju'UaQj03?V$WVH?Xfrv h :RN ?A/Y4c%}v+뷸3iqTAPeLi-Y?Q] nաS[IbB }` Y|aZGRU,d?Ä;9D*â`{E Xr?VYOw,`fOIPc'w|iתWn&lV!Դ }@b4_rUvjm aC2uhͭ+ JX^H[.Q-0mp w/`GuZGJZТ"rh:SAqrBMq_k/3GjS!GٝE>HCXaxré_|*iWSVYPS!y#,,YsVFAthZ!񿥯]to6)[ wxՆ6D4Fe+W膕Wh+ȘwX1i?O>?1:K:~gwvbbH[D6$|H.X&HCFv$mּ#J9@Gme*<)In]5c< qf'|8j8jw7ZsPC+qqWTD NÆ@\a#t\T/c26acUҨ, ܪ1[oS 3/ӥD-x&Qgtz>eS=N~=Twfו$ÕF]Pz2OsK,B{%/&|Ȩvn-Ӧ{O|9TI{.q#}qPb2U t& ]! 尼 X2<P.dQ҈ 0.#OaD M,@$|Hw'ʳ@Mfg,5iM'ŷ5 ƈ9P8f_KM5xMaش( <ȭЂJ^R( }ڂG1A#(dd}YOC<"$kt,]gXʷ# *r-m|z<^pw"b I{N8t%(TԋxR*?0/}>i+uҪY Zw#PF5ӫ KzDjC%!Dŗ)<# 9#|[ U >_8!т)LRD}9CyXXd#w:Y2+&v6"Y,sʱ#"1TnYK"_i<))|y΃[JB08/{+8'ٴ h3Z Y~s8e>tΞ4%xeV8@)f*si1 ǟWX:^{fX&4ݲJbYL=Wu\LH 0;HgetX._\YLV84^PNowr>)N˻@HfR)T yd uFƍx*šG`.UmK 7^Gj6:$6-J J/\ݦR77aa̮;:#P+3XL_1I,>п!0HTS&Wlr?!(KT/g~0[ع -eNjjQ/]0 kn\17DFDiHS#VُAxU^JU\=ʙ;`(EenG=Nfiq%yƋފ@t:dS۾Dcb $aB-ya -"fkцeR@}YS@XyJZ!mZ'Q)*n?Elrh8nG1w)Go-p%<+.9#|,LR-=EʃkT[knq'!uLZ cU쪫sLMjetY9CjçZS^S3y["q?t"U#Hȅ "kKkaP#ohl;KFȃDͿ̣\77dm{pY [EXu\7=a,8^yI_9|Wr|Tm3]SyPS"<!ڃA8m:y@pv|#2G@CQ1pw=0З)$Z%LvRZPpN_};Elx+N('j.Gz9M HR%W<:Œi';cN;QMܼKLlWJoFd2J\ ԋ\B7W!>|28QF@*.T@N [C&Cȹ^GRݑ|&f=ĝȠSbXXDw7Ra^O%2 o8~`5o2Dխީf لC>@(Y:!5uä=ZClAar`eQ|X:!r}5{7^PFꎩ9qަl1c./.*?hbsbg4hcշB|N{[>rw! jf8ey>S'b Vz.Q 7 (ojxhlx((VJ Ի̾fT ڸ՚K۰_ :.BzЍj71n!ut~ 3\>G4oRe*VtGJ5)yJh6t$-ñBn-Θ23vATɉz)Q 1 -oNr;$T>bpVmH:@V@"2|A8"mS?6[}io{O^bY=.tcXk#0(/80nLm).d!dC+܎-MB5 ۾ dFS S 8 X/ME1G_2٨ )[f s5- ˞rP0Q:oT- (GF*K'FoBي͗6:PD@Z-ATj>A Q79\pxK?[ oI O]MpS#hN-A|KPx*~!M3Gm:`ޞ\L?Qӡ Ru++ۛ1-eMK )%G T920=F!O ^oc;-CapWZ1 .߬#՗sf<-"`6S=`5&&63)^Cbx؂rm_3 a}v8N rbAn\H_);3_cpꡒzG~S[?ێy7%IJPnv=N_c)qmn aa1$nfF1$v\(@OK"g5 (Cb!O-b#Y߯XQO m)dw D1O ͞t5^`d@oQi Wp[(~vf>8 )/㺳#B  Kɰ|X_l"|O-鬙FaRgdQqL+ùss{0?0&F,n XQZ0bY!$&0Lc:ۙT*xGmV>]In_ ѺO$ y{b1 6.ݢ Hb./TPic~^OtKŧ7'-]YcB> 4QxSB-*7w0)T$GԬɱY2)]=GX̣(4>9}TfcXy}]Kd\ϹvVJ zk|qR#0:e}v]?.*+|X;m|n^e|`w#:mKTC-9V꿛KZ7DyQ e]ãLTYFKݒVl0 IA)}>B*f+$i=dԒJDF7xpAxb(\jMm4 C@ObU#R+Ƞgօ,H0EcXu/‘rͲĠBT #=2S5sn#ieDW< wM1|n h=g*$=1!oȒ *b8LNk7E9: "# p!=_4+`Sr%7p;1Cۖ$;՟eRaTNh6~'k)޽W|%יwK6/o9nS4YAr+Byv 3 d~"O*gt~"c{A- &sެhRd!^~ÊkX BHzW Z6'‘lt;wt|]j!qǁ ~ >^yQIw0]CP#dEbkvF$ @Ur/w>+' ."&"4,YܧӷmŽ-UsYgHgaռ"N3%mH ej㮓{'qvtkniR&\;,eO=8{U8JdyKhkfãHn1HqKy=RK"^k l\-;?I#71gGtt ;@@ǜW㊋~ s_|'rFձj2K_3!{ 'nR@bkzCJ.|ymCF(dacvF{PV !i ,e^!KT0H,pU k vue'{x,܁cRiTGO|T/vx,"%:F[Q UsV_F(Hq53 7_:uуvfKb \kDF>2-ZxiY!n@{R<\b$鳛A"ws'.wK[SZ ZZ үiE:-+ZXj(DJ;IC:TY4Ս73mn.!=׀*t{hh*w:PT<Վ[,]1V; C#+|H܆jԤi"n^dA]+TsAvI]T5ה"bPcIunQO#cUݿȺQQ'HjSL`|C4C D $kq[X^\2aa6.-CVfq8icה <t-w鼾Ro'BПeK$bBd8:P3 N^\뷶L٣ a.r{>ڬ|][ivܶ uѻh}6adu,c:4D=+ GUQ*h6ѐ4ЌM)Z .KP/?S~r_q52&y6q~EzRFh. q/`~y0|Q45 (NUVBJ27eEJA7 găx<.f[]pAju%gNAr%0~E(s~ LөztysxMsf"،ŖADJv6i1'lk2d{ *LNOݗPCl )5"{+Vw:S-dT1},oG7 kPh_؞*1K@/ZÇY|@`%Ҥ^?U`}%I#C&[AlVj/Aʨ+Pt Gjݒ6I.â .MId@J{zRT )9B- ăKҧJNFٍ5J~D&|Ww}c1[Չl(QQicdM??á`Ω |cd+mOL0Ȯ(a)ć dtA:~m7_`8HH9&O^PHC$!:.,D.(mp^YZ$FO{~]t0Bf`2@J[VD`U6G]g`7%/n_Ӆ(Ezjﬨ<%l_&kU;ż%lut&kڕH2Ub~M})3ۼC>ɩëTmE<(IC Қ:4$XlYխ#\I|5W|;+&0VYzbO,,r߾m^  X3CRPSj -O`=o|XHzuCsgWe^6sGEiY&1yugi?0<ڦ ٺP0./ۣ`A6s;C 2K[<Ǎ,=>2,6(-(gIE"؍fTU]4g_vۥZmL a {WƩkkҍ+[8DuY*ե>}b;o6dU!~Sq_-UYf ^dߛvMg9"uU5&{39슢L'R[߰~R w s8&zUYyalTW#aF8QOpoWSaty.H>XRZ`wl7s[ks^H2H}nyf./tf[rƮ9>bV븹[qPރD_ kAVE??gwhg Sd+si~Tk5%;Z B Pg_\s#˷DeDޢB[a a°83bl#x8dmrͲcIwA̕xͮ{o<, Cſ3ژAGf KQASaoz>oj> K庈EEٴSri/ r6^BY2R _Py(`M'{-T/a&q *j獮]I#.a!o_bVEVpu{HdG=wzjT@3]iM5/~="1x,˳碟VNU fpBKY/TZNGpmaG i] NpQp$ofnH.f.l3 +pZhj_axdv=c<.Q72s&IqT}4V& ^'cGGS@lTR]Umn-i?A7baz+|w}!)蓝<KBT1:gu@wtw> =¦V.w9@W _Rq1my˲QiFxYu8RcLE;.&8IMBQ8=|rItfQ^U&*A27n)0d!*UHN(QÒgbjIZ /)+jl(EZgܨS]m6wdrryӘ*";Lӄɗ r@$ +c1. F4Q,ߍ a&Ɛ5`T)ӏ4_?%%Gk:iGuWQIpɌ^V\q#ʁ2aC^1xHw[*U!Ҥ L9 g%7'n!{]\@x&\M@_W12 M+|FdzR*|k.G0AL8O;YA⿖37oza*.G%ʎ2%+2Ɩu-~, o{BPl<7),dȒ,MN uwA ƚ@B\U\F'T:Q3 K&c>E.`(9TQXTQWϋDX׌QXeX5 CQ cv.GVphxHq# XE䡉A!謂B-z _y чb޾ Pܝ䏛q2ת?#_]np${jі(=R`J#Yb%qP38@?Hc,ґ{*|Ev!t!JISZU5tVp?~ĩw_Bb/+ FM#Uk/v-@cZKrdlXti0Z$O(;Hٓ8_s #E)yt7Uz@qrI|D]oBQG}L#hUoj"QcÐJYl{é}- z(RZWNM'eʢ-#kZHz ]&Cu;bG|@ d ,Ay lģRzsAߩJX̄=EGYnР :3Ϛdž}}//aʰwn;,Rz}ƅW$xT#H).@ja<=mXV;2L`J4V:'d v*9bb턾 ٔ";+ >j`Zy.!I8ʆ`3l3&A n#2a|ME ;!(/1FRl2m-T3б y͏l\3$ǁ=涇QxԯVZLbe3 8(x,sq\[tZ@`@" _r| Eg_D!Hh7Qψ %L~y{44 jl< WNCT ղ>^kC*5Vmg*JBVyF3-'p *(b8ԃ-JﱠL VHTu` ~+oM ޙ8\IJA$] )#21nSJhVS[YX8hjNo8ڙy̟C;Q!I,zJͬ} f;%E''xbG5#w4o7 O_ bhɴ,55?_FٕǤizp[ V94zVȣh@{jo ~-&c%nJJe$/Ij$.8R. -*h?{Qw[E6:OZ7sR/ 3VC"*K:+"|dx_'kumPCvl,U]]Hye4ؠަzX-4Wl&+Xɺ[.O~|bOtqiv6oy pDWSD̉*8/:4)K}ɮmp~ nBl"qH02 PFKn oyN\=)֤.(d~;K~A rg]BdTTzAj197?$%ڡO"R^4:e>+cpCa]_Fq砶K:|:mT/fr3V2'+={ȘҶe3k@-W5G7K(\ V"skAV!7m6bBV j7QE0f8"{GuXE0v7M'>`,$7QLI/: ;[l$1ڂ؍S^$K KF{Z~hWT4#oDAC0ς?bǂ`Ω, f~>݁ڲAݶi2b/NI58zRx&U X]^5q[*ͽ85UW#b"PbbI#&9A/j ׵ė.:۩ms"Qo:BDkL 4Սm%|D80j)*_|<\k0+4s>?j4ztl0_esK992NL迁 !bX̚?؏3 d$\d!EDDȻςd կo|w@l"{  ?%?N,J "Wnxica|#w],Gv5tp`R* qRD5U*^bG^o}KQp2W긜{aKPvZIt \) `bs2]^uni٭P|=L,pT={_,p?<艫^LFk :۵lx}p< K`O [[ㆵw2thAyY ͸38{ScM9WC%,Brp``1bA}q.ѦE݃RgMI!M-!&RT* _{_`Z-2W1\_[f =S'[;akqE h' K1theΣ/x|)PKƄa.վ/74Nuo-&Xq{⳧:\tTtK)CIِG cZXCT=$ٲM2RЪUU3S5%i3>܅'?!!~yx2L#D$KS~psr-`r\Er$@ ^XMH5ymp<7]#$I;N2$^h[ SI49<&LiolTTUiGi~~GGz$aCHLCvڎ tRkK&ym)Ʌn&Md %[RN 6`+*o8av3*~y84c{BĴ_Г;CaIX~2kI!)͓QƆUwHLFÝd u>sLx-2Y˰)(4?_ F8`Eg\?}]܂ѽk p笫I9"$} :rɼ;p2! M񛿇ڇ@.^448Z GNh+n1 =|\"wV|nZ2^o rBx$l=k˥M|jUA 'hS9\744%dԨw:DZh zKKx!Xv ]֟E\ GjZ{GiMAH?er6 Rr=rflʤ U ?MYL&Un]} )_:b3ru&k~Y&I59KUbA'S,0Ag(_j/xqC(ҳZn@N!~v2CCkp{ٓӽZes]fH|[I[2~ּV,`:'ܺ{7g: A z4@qN#kCiBLSd2 Ѵ:?)oìSت1$鍇i~ʗ+ b}nWPMpR~ވ ʼppڞՍީ3ΰpkC⠫[r+!Te8=W!t 2,N xkc+ {(3$t UF/U#mlx&]pt;>`&*m|, E]m!FQ[Rm'F>sK '**@ݶ$wqxn->|Wq| !+e8,1gn!oEJt4a4q!BGK:fr\ɋ;(xV|cn"Б#R#k (R$*lNI'k%Ԋt^I]*+}+4he/%=%B]=aZZg9UN8hpO0t 2sj{#F K{9 DU=ˤq6ي#ԅNYQI^%χ<={( #/'sWp)M!a5٩ Q?)Ys8 /34$5 NcMޫ=Zf;Q!hG&ffpO)O1+FmMda+AFgn9}9΋nJl lAe? i~Ɣ9cS7 ԏ链+lи&`o&ǵ-8jlRxМht,1$ͽed{ۘc~4Mgy%9^Mch9yV-5aqOPJ@[){BxA^ Fsuu5LM g8cov45ˑkqe?cjܖK/Qne !h},f 3<1YHXf6b :R?Y1\X&(.Zw:I|lt}\Vd! $>4RJakSv`\#T썻L%ɰZHʱq׿Xj ()߄?*~A B*UQD4X7UBjW (ރJŊ|޿%p37vδ{;x5cn+>hg xD]IFjEIm\2*%K N0];+fL5<ֶɇ?xVf;QanSg4զPa1v#o.<UZ.S ݋ٷvpjnؗ'x z:%dm| N: )e*OvO?"-$D#XY.=a3 آkѳ,Q˸G]P1RԾ3Q.2rP@^:3Z.ASj3Qn+g%eq:}j K]*Cs7ZЊ}R?C/ѽ= m`**5 ~}R*)CW_?};*T53bwF< c(CX萅k8 9s/52L g  =w }='ErH%xvL,ݯM.0և \yBj{s  |78]j6qWqϲEWBS;wVMJZ\)@.R1 }c9v >Tz7pg3KRZ@ɝqΉV@[o 4W+`CƶĈete#'6\ R  ә#jDw_d!S} ɧAt Tz.?1wwWCڲ$'*t3*|#A #ň͠/A0G~NϮr`= O]y]O{t.,ҸʥtTMhP5&vQ^y-[=P pQ&Ȇ8;]QbGLlLѸӍ[9MC9oW-'!}/0Lr:cO.Ә(5騝%7ַd 56G UCΈ}{'~T$T |r<멶L4P|ЬO"N1 sya@ ps"ygL>n07N;v ˂<\û8%cubϱy!7W)l"S{<39I ~;Y6Ya~:]V2UQ^Hy{t7Kk> ]Y,ǎӗ73g!TPrTߙAiT.Dp47eפ;אK.K?|YE@au?VY?-"$L=Y6_;u,,5\c8cOhG[.V/@+ ~ ;s+%)}e3Q j(c%xǻjTj ;*h1] SJE{}-m[ܥ\y_̚5–Dlh`ߝ)&%\*ltqw;N3+#ѕ4f?`9ۙ$# PM feٵ$94v癑)T4OwS0sHSCꙑ&Lj2#v0N#AX+Rvp=2q Api*֑* /:_zK<#STA\fDC+ɂ7jݞAs,qG0mheସ8Bs& e5csoVY]ܝ?I֮vX]BO\E $:%/z 3ϐtB:Tfۜx[w.Z%zge$IƜZT}݇HOfJ>UGfn֘r fލx? 7i)jlR$(]efـYŔnƷiZ#Voqmyqmu #*N<%ɚ^w;0eOa9ȔaZֹtu hqbvx8M~?r%5{s#T?uqtu yC.:\ Ka יq֭ƞ7٣ը3YS9ͦt& dFOvH(%HVF\E% *;&L<>sd͓A]}}>gCӝӜp\S~Q!Y*$+Y'1TR@?X> $,#D5V fZCַ~ɧ'>G{Ѣ`?f<+D3C8X+T/Vvr[r &\t֗$W5y8Ģl1QAsuPq"uv-:M>u%jyq?ϰF5CtJCm[+PU ϱ>:E2İVcY|~_kn;[zDqwE x]jݻEpb|$ٲGMH >(4} L7/G]_wM[#"WOGjȧ} AO-a+‚uP^6~RgR7^kNB =Lt69 lYnd=,yR%e([ H巯7$?EO-(~IVͯK4Kvn_ree|:~* ^w0wiLmb)WfIA4#}C5'RxqvBkHtO(6㔍6=0Ͽnn0^zRLꏺYqXyq]GFzxmp^iKEzaMlQ@w dJFD,I f{ eB{Ѕ2ڛఅ٤=n4yF'51<֫bs{EhƩY..q$bPԨC[?}zus-8Q-(-yy0c: ^qq$YO-XT]` kj'8ܪ ~?.ɋ7Hl ̑:w6~2UCWx;DŽMUKRK.b3\ 9"u~!Ma='sǮSJF-=DnH6Q? rP!"Bp8TXNc૷F,8Dd nXoOE0F>bDa a!*"ɜj>:[@(h%B.ѸQ+bm`9:dL¿>w&=;`.~ޥPFI]w od#[fmxB7>?XM>h=&O5d+T)"2a c]ҹlDbW=A}3]Sh2I+OrG:J0XBS3̊s;ħ-|vqF;A -,2Ƞ"XxGj>7j ߲^ vu1 /I6Z6iC\]#rUw2-z@d^fG$$Tȿf(VCѓt +h5>pӇb2_{I-y$޶H'Y%ڇ:91iҫ=~#׭Fy&% _ mA~̝O\ wS&؏n)*l" M ]VvejL؎=I@)|j빉{֦en ,<0-,.&0;q1:|Gt?Nɏ7 qa=)ƄH1d̋5qk*e-Iest0QT]K/ZxԴʷlL`l {s~u^dW#\Vo9UG7Loi NV>p;kgo)ҧXZWӂg_o*mV8 f A}p雀9'|C32 =I|_M,2TeLܡs=.!ñr,,=}B?7 z`^y 'ɯqWY>`wqHb"K9oWOɽ퉹KKhiw' IKm +wcե b$,|Fg0#:yR<'@?Rɿ!]yA ?@%$4kP(K4MG#IǴu3|Jy#&7" abwe5b0 ACD= DrW!%-tՔ,Sty C=z63ꞟ SlbipLЗȯyfEMt:roa6٪R:fh^(Cztv/|"4\xؙסnFexP d OXM;V<pv/Xy8d~Tu8;Vo/EwFуt>,}uQ-P|>זeZd& -3l@M>ߙewK $[V;;<]P_l. 2JywQ"Ke[Kf6Ѳ?|jE,4T&@C+|ה֠{=Lƴ)7hT'8AP%SG`2>Zl຿1 -K~'/ gn] e*RN[GCTO1,eZs Q*p/DUv/p3Z*fNr͈ EJT ! YF >`BDOu~XҘHcotpfx}sA(hKɦO>RKS=q#³Ec)A8wVUO#$ r 'rTẆK2g".*6N6GƋU*fI&2M/4̊ >*3to'teǏ9΀b@Ja/*:ѥ&S @x,NӦMSnŷT [;ϒHmQ>u]loW-zxuIdB1A8Cu֤$G]L rd|MA\ c љ?Upu\MRpX{mm/)O'7klYvS 0gbi#Y%[d{ڔ+ oe'3t׬g݂61Sת~mZhaIQ\_*$E0"1"J c-`PU*AO E +LiL񙛨rKچD I뀸/txFA,~(?M)J,35|XVszvh^n y6HByC8H-OMhS.dk*.Gm(j9 x<9T0v=\{,TY Gu4ueb!!$:"H-]c4d=$udg> H To! 걍6Dυj-lEsw=)Mgp%Ty!hCw߼{!k6@`WSBkʽ;OL^bb:ͳ7@a,u,Ts3k>i UA_K xe7j.EbNV'54ٯ9 am _f>iOJ~`7Z,SЫmt-OjƼN+1wv mŞN{ 0 *S2΄11,$^%WW]M@sXaμo4E%:Bad. $*(j+hvGH!])RWaY'HA>?g2зT9UeVhnjB*{TyVȣx)ªPf QՍ@6GxkWDЭEi*| =r{僖3ԹUrS`Xv*.B- ;u1D#WH ַh3+XjF,""D/j‹H>SDrpқ5h JHm+%<H^&j>ko(]?z][L}9{ej^FSz̺+l3ۡOxҁm KS_Cv3M$ 蟪% LڷRvvٴ]a_zlG;tl,$ANlD {4R`nyW0*ˣX]x!B3LQZ g1 /:xZs,]n\VPg+驏ŸI5,nŒwE`|pFE3ʾk|/tȝcVq1dvTM$Ds-QqP"\fp}(B4@ql֧Sq'bY厂x~ o4}unIR =%"/M j8Bij?_r\VRd焂-98p~ "ĕ`GVwE-$/ Z^t[nZ>AϡV{,fu</)!k@r _2B}VP;4CY|r$z񩱀\^f8\dὝSu BrzZ73muDG(/0 ~A^GUPxI%JczP.Lj k\k]4#,xm640c7=xvmn m{Z$BwE|4s%O- |<*eՐQL22^_r\۴"]fDjJ&{@5P$͡+KKWX_"aOLlxL<:suHCdU?g³B$<žqczt9R\>zd;] I'_OܵDXTx3[><:8~>F3u@pջa6e ^{FIB4lvN&o A .Fy9늟!D([!-hei6tX BMGq-+:vw< SΆnRdWp]ӳSJq: SPxxey0>w¥-Vڋ%*Ns6Z؁gz7:#N^hp >`(E7/:0ޘ vzS^vj_R>5  JK=4[^*a40)\g64IxJc _&5|jvRh..J1^2)rZ` \"a1.(vcDmywx8w'l&yTs:ݧP7}=P-!v#Ǐ3īlAӥR##H.iJ2C bYZY1O-cOGC; Ɇ]̄1hD4&;#"nǙW9!k^J=%a13#|EI}HD=y wy Rm4_-Y.u)yrG(ylrcI<]/iy\yzEX^K/~q}OZU6Da#Lf#y8`gnWFOTG4<?rͳg(%gZi'Ouc$7i*B&V좑$ć9;+P,E#`E6:zN%&y{>  I9 >}Pw/xc-{E] @!u>)CNd__;0> ;g!>#O)gsd]k X(B0fcwAR>H %6g:Ӓ/tlO1R!<6qn3+c4^puN_N*[8~T/5Kٯ׭Mجt k~SZ>H׊;^pI9efELZVvW21/1ԶuZC¶ k8Kyyۆt>^M=o](Fdd@ͶB߁;jNclYs!{B-Tiy8!{|CAPc6>Ŵ(+B ٚPVABU%x?C1)P׭Sc*\emc6+ '!kr3Z 胻ϚPCtkW93a1KSQjM}' %3d"'x.^5f5nF|\eo&'VKb]gΑ$UDui!X[r t{6z6OZϳ` ă.xQ'Q2zaL\v$f2fWrNȕ?`%Y|fn.ɫ{+`էk d#A27]j!|(1Ҧ_uJpS<-N(GM4zj{,>(8^x.Ҁ'2O\ -sϸK v`t11`rWΧH!| $O捤mxxE+HAr7*%)D(-R6Ͻ5s?D`5m5Г|?&{#ijPL~u>~s=oaVl#8͔Yp}q$`ÚlOk  }-? U5 )~%, #.8U b Q |FM:JlXe.GxEP4v 77NWzuJi{Ew"zمyd>.*7KA WT!Q?}MUA2g~A7I@a[fOUY~yP>db1no77rGu֟4.cp|ܞ~:dg'3x+AaMOZҢphyrC K^3} ެ}V C%QS94w)~FXZk)k;֢\;o_.CP2ʛ9o=e=D Pi²!4|oW5 hkS ml;( (.-*\{ֲ tDT tϪEnNiwy+[̾m?ܳ~H8z<[f"ǢP,zUݎԫ};TҋD| ׄ1֣xё`2 ?P#a K?Ӹԯi"qtF.i]-n0T9:m =;toɃUt<|\K{ȲM5Ch1#kCRa@=P)ISN{,7x[6'b^XKS ^h5eHAAnLj_ a`⟙"q}SǁVo0lMjQ|Qn1Q'oygXCxciF<#> Ȍ?G6> udu7 eTas=` Hwa$iS77v6nᡩZVE*l }33v |@0X\T%JrTZ|,b/3I#F֑ZA(Z7b\?#~e 6†l=3yAe$q?P6=NJI"0747ENҏl t>} ,PU8HqRB6U1 I}5ࣞv^̿vjv٭-c WH۩d5< }WRf-56cx~)ox5}O,R$\ZâGa QrŐ'RC<+NHGɿJ,f+d8A =*ΆU*N$7̮v_^̯YFR}(`ET߶]2 /J^Og#,%qi^8࿫[S -2:h+KAFVcULKnlݜ*詮0v E:,#1}7v@XOp׫qADasizdžiWxuvY|NwI,4aa\ΑXBnqh36J}ʫԁ)?qѢfYt_t#.e|TS>۵5mM5NnvV@B⌆&˜JWZTM,%;pEJ?`Eh["Ki/OaVBMFմ1t/?K1)8#fWSjɘ/ ]ɹS TlҼW dhq v9oi";B͡c:l1"Ia{ҤvDThǛg:T>J)K  xWM:+EHķzG\QɉhÈWUeէT_m/ZOVcd"(VMm xP&> |7gz!|('pfqtmgXwt -/+t7dYD, 2ފl``^.'kW 0<;Q$ WΫCʥ9buՖøZ6t|l\I;hDŽʉ0fr1"]l2諝~OQg^Z0OafʁN3L8yr?GrDK߀8!T&JITxfX@CqG"nwB$O‚3w  /4-__ѐ=$DqNA:(98cif_ݫO]Zx <8+5Ǜ&@vC3ojn3O_H?WfA53R*DȪ*Ndq{MMvv UTI'EtJ634wϢ\*VE~< Dq9r2@eӺ>1fuJ,S~"-rB?b%8[|#`JW n%{9>(M!gO#poAӒ+NɥsH->7*7zX U; E+Bc([[ Zqj&\(2q3Z_k|x<=K3MǼ5ȠQ8+JcTtLN/K/FAآ"g8ꃾ}!7HI9D.m+Ctd&g.ܜVF yWϩv.q"3Ԟ"&&?Ջ46| 7(|+o#  ll3 YsDq{<22 ( *`bUD34O $śE)Jİ/gg/!?h3,@(4>M}|41]Yc[<& /z &n-_Qi곜}Bi W,*O\Ss~T-"(K X8`{掀Z$VB_㚺LtJMe6`!nS_,{Sтt#X1Yh悍&VZl|u+TyBQb8=ጳRH#Q^a +UðOcVNM)>]A^g1%lc]{@A1&T ;VPz,wu𒨹٦+ qtq\"64I+%3~$v>_3S#IB,/gͶ&Ӈ-<_f5/6RD )F(,??3~EH\ӊJS"ާŽ`;Sߏ)R|b Kf8;+_x< 4aVg)o4巀ElcuQ}̫:?܁i VB0ǚ w>[$Dd!TwGaowk/0.bx;bRuAdBdfGWI ʚDLoz_*\o`09ՃU!F|V;N4L{C({\]Q&IkN4]{[h'yBּo^x ))d55-л\A/HQ}P~r޽Ng)ϓa#P?B x{="im"{|ZT/b_f˗&frԐ+2T^Kb? [Hwo )݁Ah,S±Bu8V2r_U[%eZ79?X +S,q_$>Kt;e"&HVȔ->%gM[9[hPc&41#!Jwۆn,v1jKUM ُ!2?x~nɤe1FVy>ZdfjֱHi)@ݑhХ2kC*ؗ*b)KC_ bNy;6_54dl!Rk6!)^D$G"x4 TYc6SZ`㍩kW& <{aU~DpbrOjkXXBD)+N%;8Ýk_ѐA[OƤ&mjQG i^#,ٕ1}yhLGoʋ.8ݹ㺾CKJ8+_4kMʞtЕFI珰 R@;wǒNָcmrVrxM!^c2۳RDuJ"T1j0%Z`7)tԷw"MQsrb ns~iijkz_FOB7 +1/^ |%KAE=Uaw۴i=^x)04ATYi[*ثfw/lmKkxnķʄ(G!9\>V)(e^T+qU|afZ2_1g/껨*+e\TM4 GfmP•yۉnsʩxs2L;'H38Mhp{>i ~wq߬~vEQ={~KDI} nC 껢ٌlQIf:ƕ( S(a[`ǛnO^/rP N  {<),!|LԾi.ط!r~c:dz 1= xc+h|SHsVw oY %/F#]'{'EtX\d9*$Ip`UR{ QYM hDO(U%)`=T8C2ߴ Vc%5/j!i@Ycf)hk-~cw<4Oӫ"^ %4w7^?tL[\l0pE\|TtP%*-l+[bڙp(oĞg \2 YE%|դ (aMdsl/S2[%Z2C1ɫ8kec7a+3f xtqƍ8:3 3G]@?,}pβGdn$ҙFR=T$|z^fSlvO+ o8`0$`yF,Ӵ*DHK/ijWos 702Lh0y#|*WɼAtjh-1>%A|* a3TJ6QL/ b!k=3ay=sld}X~{8/^).H l0S_ӟJ%MNEUN,]>W&go%{. HT=ЈCy4}5("=V5zGŦ'3p.!x ֠ymwN‰0=ۮ;:%;z5j, "вd>2X(S;RsB8`eNT -"+Q`AQyFvw ̄5߈HgǾ.F 90 MMCZ]0Wv9o_R9lvڥZT( ǧ7^֍ΌȞV7(?eo%^ԜQN.LV2!ޫFl׷Fwxה0Hy(x5ݣ-*h:欧}QȾjD # m2ʌyRy8=~CIJYN|Kk{֍N~)D(܅)SD/a.sCT4xs2l=s1:{E"`}AH }deJ>' >l[\Hzw!OSj"8HkTf'fhcqG qyDCğ mA ÉjqzBW8TMvBY<**z R".gNueW.][zWAJSmWaFKuJ82ԁCf[[ueZktsd.T:Qbq~wO[]r8qh~(Owpz.~,FHEyL&QΝC-XO7qeJbrD<5Ų/3mLlNx٦ir<6:.uqyu@3@1xе@_|yM;Wr뢁WM.W@vOh +HaKwxذq(>W}}8_fuRge,kHL+ygE{Pz{,t%AybT[7g'iʆx vw|~\޲Z0 Sd'TLKC`Uڬ]׈V k GbTC,nөFò6EO0Le9$ ME@-6\{m0^PʝAڏQtmOE5ŗW˛YLD2.aUӞd7'{i@(kq,(]7VXt9痤~"Gp*%{n U2kLE8_3q*D;y[DUqڀM$ E" >bv{k2v"u$s+s-x;ǧ XM߁Ѵ]泷t`U+)I0 (A/3dJ? Wh>^RI T{JYHw^-]  1< k EVDn/>+ٴ W%P1]!A F=/ :û:бw},UVXv_`7XSBCb1k@~U/Xv#+(gYs‡^>\Dn +eЁcֹiGld&0PA.uO.wVQ'kt^$t۶~ %fA"Et|U>op6YN` :è;X&G4f +7$fz.e#Z{*YՃR&iy2<:[] ÛSE;E>eY\ܔƔuQ!Zա/㿰sE1b\FE g%+ &b7qGbnok0(ώ8W@s޽SCM4cVG O!3-JQ@Cgku^$d1;|#)Vd7aѱ˿Þ(JCiWE@սhh<]uqZ7 U餄OU6=#+k$-ksEJBSnBMR`Z_?ukɍEYnñ;G5%TÎ!Bbn$p^?aBV Uqp`nvԞݹ͛Qǂ8v}:|];^kHC6ax[-*NaS煱ԙh.RTJ,(g.Τld>SަM c'|㟴v 70'Rkum)lWP1&k Nqk6 c!gSHQ[W__<{ nN1r#AtJa*T|Q|:(/,6X3_o 7~!f{d$;i(j`+)oWh[ 6: @BH}v {h/)gqK_.$]|atzEMD$'UBRAqՠ-y*޾rP9:lީZ->44T-j4بrԓ,xQUGke0h2A+X2UѵkiX#nw#y029w JkJ./>4+# _5<gu$Ga܁gs+aM\LFvdCFn3ɂ췹B䳹[ncr|͈b~rWH̸vDplA,pgq/ 2-{U$7X  } PIY|"BSk1iI)YͶr٣ԗ,߫kJQVBȺ2ږyhM4+1ǫbI*'L-BƗ4!q|dE&\FߨjE稴W:9ak^'A>5}t{Ϟ^.O>Yyъ´wxE{HJQ5?\pB4`OH 6m4g"~ 14D?V0s}Eq<QK]^ FD4gu`@iRǓ4RQ:wUܮAH/>U%o>E'.:]B"JkX^W­27D 0>F TN(qb(K1XWwBqϽz(j qE/3 ضԴ&c+Ws'RBh()>)ݚW6a~`(ofWO|bnǫ䛸D=Hle߭i2AhV>*!g\kǣb_ksH߫0nK;I8޴m|t Z&(Y;I4(g)V&c}2#Q԰#Hu;fH+g m.z(\<;O362Zr.u -ɿz._q= nxJ{c(T[d(E{2S:b%>1K7!N_NWˆ)· '3ŷ!K2%CO]:ui1r"^EH+sD˛rb#bӤTeYjK;Mh5K1V.yR=+I$5{8ڄ19+%~ٵH0Hh(] K3[gpG u!SUp(LwqnS]9dVm~Q5`v6vՅqBUːKYC_] 95m#Xd,1!]o#qR[mQ$g+j`r[&yauү8Eϥ=0!v/rT^uF=L N2|]6ˬgk>ޖq$'AFzS6 fLR.2<ڝ}5B34 GC-T"i:вhʨ|3w-Sh,i=V1IlO "9e@&fk9kJs6蘄t'9wHpx }H^bsaUg65F"l2v$d:76^Տ! _LU 4L 2T?Ez *Be:39? p?LT> g>ȃC٤BQE2]mEM=M`g+JǑ+1= >&|r!0MU[t2>S{׽N& 2wxO@Vuztn9wȌCXJu#hj!yAAp'^^%{j ݻ?͑B)Xjj^G/ g:5V^N溓bˆ7vW˄kLvS0TF^ž iG?&7eF81OW(P^2S,[,j1܎D8Ik>+$Od/tkՆ$uH"KxF69[m?J+Q @+59'Ib ʜ&;.aڑzXp"ܰs+p [sÐ=ߛAؾksBRŽZ$gܢhF uR ۗ0I'"4wYY-xTjpGq5.\e/9Z&i%%ۈ, tow@NB.p݀,ȸaCu k3i$1 ۆnk(S>ve@p%=3Q*4}&|;$n+9QRH)J^(qY(ȰNS[!NqQ^S?5ĩ4ss͛ߨ9T}B#5ؑuC܀bl/ #3 Zl, 4jyhXo}GAp"zy0/gUWe]KH_ $AI%g-Q;ę/͘X J#\4m]+>0k(ND:Y.h [.7 э@|uT$RyLh7B [ίz/.Z+򃥡}Q8R(є&|uR/wp:%SQ:(2pi0s)bg }4Y(trRik;ü: i6UWP3)ϊqvWSGMQǹbgDy&_@WD3VG7`X/MϤm+ e%i H}@%"/2%>x/ wITT2)HA+LyirPKW\CYqP Ҵ;E,D=UGZ^Yvmƥ&*mXLeHoC݃=?M t5}J:N}Ly [y) ƤOTlQኢr g/N E4F3OM" Yr;dZ1"tqXP 4'ڢ6 -TܙAމ°4CcE.ŰƟ8 0JQ|SbGVzsp\z aZvEOa|:u$\1,8h6)?)E2,xЧr=7xsxJ niEfkiWYZ~LXTwFdEQZk?[m  -]7MހG|rfхՈ3 0H2+F]|^S]]!Ww,qvfLLbYa_cJ.CJh.5ݽf\}v\V%f ࡡhܾ%vvvudˢ=V6Ɏ* HV <45){q~ru$ԙ1>;v~ؚ3@An=AYFӿ[ [5Ɩ)VK C}Yu\a R=ZvJO}uO*%C؅_Bԛo F z ;$mW`_ZC7*(k/\Y *-~m(nܯޓV7T妼WEu5tQ~ w-^g oKbű'ԱU q3AX|>˕6>1"ͩ!oto,AG`zb.(rx\QhD^9# Fo$%dZ0:=5y4Z[v=2PJJ}:ekNi {#QJWwtf#BC~3AfkQ:&j?zKaVn/[wE>9N槜*zl?t̍KSwq8RvHZćeLl)eS/ijEGܬ}oUG>dgA,( jt"jYan͵t{1ʙ Yś'( 7l@DBPMVE,tvCs鴅%B| ,K7@Wn%[hgTw=JKÂLarl<Pi0JK9 ۮ_c\lDl-*B$+f&PEut9IGiWrd&]dWq`- M,k^j`<>by:F1goJ`D$ib͕!?UuBA$œ.BŊ.|Y ե}=,i3| ɬ]iW=u%mtnz 1@PK ;\ Aq̣g~c:.deiȾ0[iEQN]ث %6o ' eppK֮T֮sbi:S%Wk ]M}Y$_T3USsW) K=V)v7 VdM⮚W4dK}Nc-tLZfdSt) oGc(BxEh޷9NR%|x[{'fd\s*B* ~nO`W81꓋~{傃h-Yg)iblz럟`sS5.x/-՚W/xa1V7K_ıݟ2 v| ] @g'nH ݍ?Lv#7*,`疡k{R W 6Vx_0 I}DDy:SXT40ju~>pwVȮUʌmMf|7~RjrV|H*2ük쁆A1:ˀ +lM0+parocC/fL6;CHy~hA >ߜh-lȈ _MOܛKQ ."w]X1I]?Ƶ6u>,r9ʁBρa2!`j FRre[c#Fgʙhm* ZaWDm>ZGZ<,dy3go UFIP\OTlXռ huRW@˶Aӧ'ZOf/H v32GAP~(vf8 8iHMwc`ktkw eA!+uÇR۹(㸦<6.;,Ph7fi!-TumZ-obBZT5ar_#GY*[h`1%h5Kg߇WGx,Rf<`ڟxl|v51~ ::,:* =ǛYHsqTd()ք-:Y|Cw*USh /C(:]sFvpgM][id\@-g@nQ";9CDrQGZ^./))*Ն;;8y܉Zd!-<_OH{B7şHQ$!.#l#.Gx8@SABk8gP%:_;GG>/ѕljؙi/fl,*t#'f tvKe Ωm^7AQnPݯuAFdH F|PľpxnZH csRvBcjXI\{ l_iaK] n7T` '%z&$J,M}M%] Xbnͪ`U|v@(FXvĕml~e_82GQ1JR.?J,)'TCSK85M9P *vm3Chmj#8 (s6 ;@lBd%"Of &w ;>6Ŵ#sLe? DՔv͇;Rsy"r#c9B_.k#%,7Jaaep/5;>O +NAT=qEE5)dSo^N0E#:3?nY!#2.K h׊oRcC7%rf?-F=s)a?((Ҕ6qdA1j]$+ߚT #Τ +U>~C,.9@I ٝ+qr&oYY[ !i[іD]M rLy)t&z;6g~΅S벡3i#R/DJ V mT]'{<l.+q4:A-z :lwAkye4zuu4~f4E ?6 Bۈus@ŦlKhf*toߗkgUVT}NGl_D!q2QCmQ ȐQ8m:.P Ґt3Ji(寺#3Gf528Zò>Ȉ5ǘTʖe b 4ϹL3"iaٻai3[Α`>֝UݔNwieC),2ʑc bT4u0 yk$pDWD[| N!E+`Nz;ȇ'~6}> <{0qO̠YpƠUؑfڊPNF#y&|M)) CĠbN ںNz a; i;}+c~|{KWl;J-ք(!l [W`I7L}="|jɏfoS]z~s9¶ Vkkѧ:F8:P_#T*'y!jroTL* Q?{},8eZ]%9'>%JE)!Z}N 8Elgx[ Bf`NF3Y`lDiډ*dR .γ0 8tWL߿7L32^c\Րt:B- .ktMK?Q $QFEEpҹkMBVCH<)0[_xebAf&{gwf v72,peXo˃,q`ZBVP4d;)Nw|Db^!9&BZ%ҧa|*f$=J/1U]n{Leī?W5zކ;ЗF.O,3x_t!qfڄ]0,xU-6@L5kmN;m.M~QYdɟz4EV JgH %kk7I#q}quG\=>ʋwY^U/rA"$f_̻hqQת|ƶ*fZzĢ uZSWB|P2+ m"b&)(mVܩ$&a*ĪD~l*q;_t1+ۅHnYR1 @.ZhěK{mgIXx5+s}ü&eo#?Qek&X:1b1ZRvjt刖)QVXEsxFTo1aZ H!E`FXb#&v(xceHq{\3`(&gP" 2NuZ"H]CdE969L: ndl4')yN]ai8'ʗ63 d^&fbͣ.^,nAbஊ~}W|1؂/v$ hI'mvn۽T43CF=WJVrz`L,c0uW+hf珫 ɩ/mL_j4f\ƛtIV2fa8OԖS&k)l1 m B&4(^M ;'&>!: zljYO{r}† 2X԰\L7@Rd[S8:y F8?n`ɤ#o/W|$u}$~Jpl~7)0UD8GL4 QARfbiܲ(:9A)W7+y7y%Zw'E@;q)qdw)BjAoEܥn(n.bF<8;C J!E=!::)R\꺫Z.IWb lZ3%C'Ϸ綫r*gLݡ Į8l1 2jp`H+8"d-fw_5X5dcbuEsiD=؞3MR>%!'\٨!^?Ѣa2.տ"Bq<M׻7s=X%JedEuEOt:^^kM:#rЩRBK_bQGCȚc9$N\y,סp)+9P<\t&Gl(r &Q剟 ¿:$etW ;ҽ͛Cq1hȪWׯ6=d+;3z/Q KCeicBsE"6S+'Ǻיc# 33m~'7fnݒ% MΠ+ErߨM{@OB8Wp sm6cS%Wۅϥ`߂.Ru +\I۵!zZpIW{xl>@3gYuDz2߁J>$b{*STx^A:CF&!X;7hzRbψ$iF5"-c "o%nV TѦl8kk=<mcMc]s ]m'؅>сl & SQ&l!^R"M=A|Ě2Ap8i:Ck1E?jcg\h8}Ԗ@ !ڌr{u_rY/dXw$4YN]o*m[7TS݅@lȘ ` o7ު'ȍ7׫E r:UF&b=+z gˎ&D@,)@뿲!A?g] _NCL0Fm)Glqfw<M(ϖ-%k ӆG2jr^rd iݯL pj"q ~@? ԙRawvz!6 0jso2=>B)1nT@ismU8o-Hn3}lj_n/Ȣ&qFIvQhۈwa>P-ڌww:>3Aw!iJPojdJc[V7:srMwܰ:OC>Iy$.|<;:0Y,T86?wwx _c57_MLM~4/)~ # =leB+Dظ"UMo.;aּź~vm8*$i,bR&!@O]4+Xl 4`K90htIE rOo~yhgc@- #:0](1ʇ}c PD,f<#3᱘wW}q=,>9$ʣ1d)ʄ1ejδUV?bcf<^ I&%7ObQ7EW$GL(ZTE4?2꺖~z61}6z`6@iWY?2bt`0txA/$3 Tƾ>f&3VR;7P+#e>A ^O[h.X1R [5QmKT7u43b{G]+3Y O($а;%4#^sAG-7hKfy*lZbă O dK2{'QLư _ 1kl'[w6 =s"Yzo]&Y[ ~Y&ҟ6ьŋoV,?@KgZ>#'^QSqG'[%sDNp9׍vU -wSJVJOkk\ @NC<@2Ii'#43 wSKc)s'@@xEΧtT?@4]{]@V|Ne2/91-ZXD(D '*kA)8z'\cY` %?I3fPfkRKRpSV'-{+0h4esI~c? dEp Yil)2KzdׂÁS8˕;qSwAnc"ÛzQ8} SK,Wfq"oMe`q 7\47qPw38}v-tUBj<֢2Fx:?g^zx6-pj[XHtQDoo}TжmyA:mH꣝Jec*m$K$.꒧tӣG[xYy\fΓX3W=OVɩ"ҪĝlWη210hwinD@ FXGOuڵ_p, I9@bj#\y7$<̩M.HOvJWfp4}j9es-cM?:`<Տ"pŮ%/VNeq!k9w&?{q+0 K*ժ iG⃔z/hu+6CbVґvԬzuX :AS=Ǐ]Q;Rв^fZHXgIMT2;5& R؇y fWO퉌 %nf?̔ace{4}r{U镬͐bh"0w ROY9 @H!5.oMHS QЭٹ|Or]5\)%\)zbfRn^@ pdVx@}nˆF1)┆gkz2fRWٹr[:ޭxB4L-id|.7B}u\qHC) J4'5,eW0{Z#' 'kSÒuc -sg^Y t$"lmj9OTJ ^2lƝ1:cR+5]8NU4irn:4a ^NG@3)6>ZD8}4m~ eDYIsU ]ygnnH\ $XJAL!Ŷ5dlWfM\]da6S=q㔐69P#6 JKkV{GmjhLHhïK,fLICWǫ5kwDVIV FObIn"7,xY=-7_(E]~NC) >Rkq"TEnq9v|F[żԐfJmb= (FVjoς›9%]MY\J#˓W%xNɼz\M ~7=)G"jCMvSPu軨D R/CSiD̯Gшk>( )x- "e$ N]Mk{0k3ypZO*547jY#P k(ddc2S,yo+kHp~Nnp -UN )>~ZIsEڻoޘt#߶:}I= "V²G(݂Т'kmã,#F] v I'›%~jyqyw(#M|\2 TIƈ>%[KNɀhvv躬Օ^;F@#YL5-$i%_͊C +Dh?hNOWW$AAG!K )2=kqXqgFcc%r[+oT?S |L#fr'νLW&n@9 [7vJrjh f勑* a)I*_A'S-}26*el .7 Xl >pYvM)nϋÇ ?Ob?=t)Efb5n0h4F}Ӄ̟bD̘I|:6]mрd,N  ϓ'NDaAwǗxAG>O噦}bx1%c6t44)<;2XRf7JAsI:2&Lέ*Z09Y`@W;IV㫳yVErD?}hrfn).?ZA<",՟hG? stt7q׻Q픍#db#tʮHmjVϛɉ&24*.e8+:c=T!_@ D1BĬ2ҳi찢ݎ7h sQ' .8DtdtzJS,Or]\eNc}fd(!BF<) gd#!P{kPqu] 9\F/'o订`5P>lȀdmh-ɣmHm*ZYBcc1 6(俯ݤ *ȸ|z(AZ8ONUd*ls&S>)&BRc 蓽<%"`ΔOSgkY(]~Rs֑SpA/}_ $e̟)w\nvJB:THҝ@QdaQiqSPbi+6dC.AM׶5N|2y=k ?Z8 D%nA]2ez2`\-DPF'ziTIko"7陼ypi8Z?O#YڨsYU a(h3lؠP,y\ߑ^0ݸu΀2HO|ALϭ*ܨo~|`m)*}*դTzR(75kh"$oIr0m9ˇ ثZ_ucL) =V^n:rZss8GE`?p"v/J@9SVC*O~ ßL,gʌ:TTT܆ȠA,q=UǛHr}~ r뀀C fd:?LJ2Ey$W4˦9!ְuf !S! D@3+űSc%u,jOsU۹lpccFe74 4hJRTôEG2Jp٩~%;XejPֵѬa^D6~Ɇ EN4 F@rL囏+h7.C}exSӌkKfu@'dI MG!)t$$dW9\mƲUhI2B:1oMbe/]2m7S&& PFg'ji W ȇkOL#*`M/֙Z-08UN9J&m@IVH(`NN̏Ks^/w,D;Tȥ,>aZ0 p(vKCf;9t`KM^zuyV(*aJXP~gL_: T.06xTӹ-N os[x6\n2b 1gړD$W~2Uݪ@vuءm%Y{1+;U,i Q'+:2*:xv:cK"g胛Hi"fi]Z*_$}N!i sn#,mh)bbq4l>] der`S9V #ɬ{t(]Fwo\uyyM6D=]\K B&9/.)oDr[K/-4d*jϪ[k5R ћֻ6r(@Ėfi>XMrpq*ry$Y&G[ֵ_/ip wc&߱ďIe6}ʪ~&Y胠W3qae$׾{AX먘mi."p7;O2([DO{ remf DC ] ȸ7>q>?Rp[So{! \%f& P V(9p8j6uZ?#.}2I(FWxc( r5bH:aϫXҒS d';Ŵ Bɗ <=pd#YR./w=t|{z\#=Ȟ 3by~ۀ(b2('OwFhh6l%VEv!V#;IyL,g,%CF8?X/kOS}t_Hv CNL3#Rṡ&ָ~ [wdSlCU,F6c9JDD0UG 9a3xH/gҜJyQ$sU1YKX2&턲e]tYWL%6<@"<zg+~ Y`1??BMٞ2( xZDxl.8 h̽ }yҐr|Q`lq.z;&1zx"G t*fqZU5"k;F 7L6VS.&0)ofQՇ ݐ1)\(/YͩS[ŅBzmH#GɧL:SP#Oq^c debs?3W¨! +OL"L?t cI: hםKŻWNa?DTۮ\D*qdtjEc0!>6B(̧<`kn{"aZq^P"I4 %~pv{;C*98~-ww4e6ݵX| 9YuEzCd^K7X@*AǠ꾫PnYT;1!VX1?^xrF8*a|j1 >كI!04#2Pܙ+Utni姹4(uoTP(\7lvRk"NÿFZƩ#$ iR5f>Đ];ckb bB9@`>cԽc/{\ENw biIT`guvɎnObySofT*f𲴯}Ve׹IN{'eQvV+d܆X rqxD] D_ÈJ:uJoo?QMJ3|aS)2t8z0z<>0wzt"avܦ@:];Ĵ8Bxq|S *b0QmD/]峚[AGZ1x>3Si¦ p^xgYny?;+QC_k¶CF=j栣L,Q_JOv0aaߍ^|&ӨiR|ҾiFPYu:z_2]FL Jϭo$8~W髣^)j!MHfُ _c{>sTњz\1FܴI%y"Ѽ'\)*|GGKmNj2uK{٭LFSf a[])$ӵ:2%jbF.HC8!O-뗛asX38QӖڴ @ZRWX翦u79בu.B}uI`@}%;LoXq:ȕYp c)aMiAGov"Fn9݃d9$C1̝x4 WYIib$\E" v@V w/C0 erzѕ$AeJ>9lb(Ǯh($5&m`OiL0YG,JyzyAH|J}#a?AB)"oƑ8./3ma޸cF+ٔޙ_% "X@QFՅy ;JLYn7cc&le ~wp1rưh+PN("5MfrOXN\JW^1OaUHV9MlcG]s e< [F߂xߙ"CcǗ!+ |NzSUv]u@t\j{'@?>#dtkdyx[/Dq3?gJ{ ڹ2czl܌Y(^~wTΎk@sfaBM1eԔ2B'>ᙜI4EL1BT:1!vwQX&\[ l>.ϸ}}aTliU5A.b;e<lnMaB nFa%=Lyd" i C`)_Y~$[IOO\l'z=@G=Ŧn`8su_jw}fzvOo?2-²/ߌqÀR#4\|MápVv0a5 $8sMlmˇg:>,!MJ_xv۬]H >̒>̖q^I!aM9r3Imy%X'[Mz|SX"=q5abUޜq,N_T2}@=;6魻]ȶ[R߈ zBh-BfMv(FM n\BuM7b=$haDg7a_MbIϝ2ٮ$(XL*EfzC4^48SmAJ՜RBmGzd!uxҎI[EpsAʔ9 B&N\Y/Q'Db]SAr_vC~$X Zcf'0w䞶]-؉\AM>m$}osγ*ƱBļ?jܬ)ӻ% pT.pyC*ucVbMqkt|b*RND?h9#KTE%ѴvL__IcBKԉ>gyP@*̄Fכ~:]f\2N@ה8bSJq?ͲJ{ϛ5IըĿ{ڈ2#AY(#ӷ똣Fܵ<*d!ZJ*0'c EBhA~9 Â[aL"lp!g՟c_E"?1k2͠9 -r{5DW"^HgI3LݳG@X} wB'F!M51k$臡'I>L`l9CjoCuK2{+BykNKF_ a=ztOݴ}}RYs[L:~,Pvp1ԻA~ m1_m5 kD?J!#H? ;>eJڃguupW%BhPU9BRY $zkD=4dR}(< 6z7xf\5X!q̖itk 7E&$NWvVgPJ.Ϭ9r cT` vHjbZ9Mjy'QՏ7o{AfG%v.0;Ytj(h^kHFfhyw(4x~q޴({ȴs3{y K-rt"(.Tb~~p==bD65[ aK9y4AtR赎O #AY>H,Y?bwih F2VqǧB)1p18=l7O~ d cw;\(vWWZD4LtS/jjgq8,>)B2 rўSNod{_&9!FLlaNfQee+Qu^ V؀YWSX\"w]eV]f)orF ̀8ే[# 6HSݕKgUyEgz8r[]LLbfL OΑ&?#*&E8/`x7O7;@ye=hI{(< w_{omkU:ҴeoU!'#c%Ùt9q1PlD}pG.9Pg[VctF" [Xc'!W'k>qdL8v%C+- Hsꙿ)1Ơ YwQZy:E8-TC 直W9#?/Ckk?o;Q0B&>m!YN5y̘CVM}йa,uH:]C{CV03#'˝;?XQ*&oIut]UP革 IP7Bܐ lg?QEr~qJ̦l`I'G'uwDU)Q[/ Gl1Du/T*q{%謞ަPѲXU:llC'< J+#ga0VCR#qfbKjrjTXy[yt:HN (Z RrjU<*?B@PާdLj9]‚MyH{' gc iv_YҩGb|F1ҌuI[eg8׎LY\6D_(2f.mAua|Y!T0o*ziGej.Ysqrkd y1 T1>qV#Aђ>v32,cHt_ɱ4 >7ۨQlu4w3YHCK,AխVxR>{8e (O.\% 0HFj4L7b.X~JƘİ"w3XX=Wua$pˣ OTrb[)؁O4{TOtbyN(7ʧ"aOxΑ2V[g )N3!W]I]vUosDdN49ZhQ.+C;p4':ݜ˷̝d"TaJf%gCYhnP2PV` `/~!Y뼞eA.Jy?&JC(;8\Pߓ7hv7fZ|cC?O5i aH6A_.70HL`2n figt +#A mؠL .?qԋw[~:$`p>Hxq.ǵf«l/SLQ;9f A$l=JGbZ0?ƣi[́P9\Nef[dYv+m`1tA)Pe#s3W]^ C 9k^7bS.˧&>O~ 5Qr]'IáuvW,OuOYg,Aza/I:GB1 \TksU%hEX{wxU_˒w8uR晼xPiszCEBHOvnAf4?>YNkA;TDv*'aH2#v-sGV<1`1aJw!抉;PsNDowؒxa ZRp1meg2,=viˆ2rxJ?X9) {6"-3SPath!qz+a9I׈281kzy'o,Lv:~*˴4a!g¿5f?b9/׸Y-ckn\ЭF`^-Zi0|gq <\}yk$u8&+'}br2nIgׇ ~Ȋ6kfwaf, Ki,FPF7bM*ɗKPiZB+>hqҵ,rV1 YՎ9v JwT9FRm9}:\Dԁl0Eҕ90yXyn`\Ж};'5U &^5o+w"\'9x9Iq@P_2ϡOoC>W?y@hDΩ[q(nxsf%qͯnGE;Ý'q#Inzg^rv)F(A<+ E ) 6k1i :/Q]A?P.*`F]JVwh&GS аlwe8p.َ,ﺏ+_ƾIiBc3 \1;̕!+=wU>pdaN![&1k\% C3$Tʬ{ E~Pf!O,6t"mH!O!$aws.E6iNjv5^jinF%$"]M2ށ;OjU/ϏxO9\aLy>@6$?~PBN3A{rlȗr#X2VMkȿ$RwJ{7 ҇x#q`+,وoJ*іn$dNXw 4 *E߰.v0*IH3R!=bD@5N6%M? n7"lYͫ< {Xd Ϡbh^t.c<>j=A,3;`_жz$~v/3)9NCmuZɣ1w`}8˂RԭV:&TWL[UFAT;gb,#x;xJ$/I2 Ú\+mC]IY#wOd)Ag,Z.Op>e~W)ʜ1n40|B>1mrlǥ.um_X~_VT)~Y a86Sb OU0mCfJ~h'[nۿ")U)L;(,@y ~Oז0r @+G)|tboFD;Mn,}DG7I,+N0^j67i8XrDpjxy_EwߞRТCd) Ct 5}.qbPt3,6׭!]f4bh9M_cM^~@5T!k*HqAi cj6)sJLRKJبvS0=COu:ʊ{axBDaO쮸{ J_Zg Yߺ/&a{kԙ'FKڳnQu S}vܱݮcuRQ{}`⮯OZm,:˛*mRܠG6Or$u&}9W*\UO7ӎg Ö_\і\uV%3AF)C49D91UsAL  jEs?]=* Uh-Z0V7or4ɛU x1v/>wuzI]&id[KpwY]i4 ;Unt9<`¶U6rE ƏLվaUy2s ~Ď j2꿔 ˜.Eh ۿ`aq W%eV)>廉jq 9\:{p+v+j;xؽZF>,lFʻ/,Rb5΀G~tyyoW2 t~*RI]\KI]b*mU{74$O_Wtf!ߖ$1.*W (DQ PxX9U(2כ~!'pm2?{joNWK:w~D}u3Y;^H멛=8g[n?$_=HB[&lGY?z:mL=R(V^\s\(ԯm@g4V!g)jƞ+vgUyu-6?vCϧEA>"An}j}]vvjPc#\,քGfd;<' V*t&]}|O/VV GfCy*+ʞx7Y%Vptq-ϱ:8GMզaf焬Ȑ~-a=ew '01gC3L߉rZne{;?SF,ŐQ{|zףR%G~e=`w❁T+1"Y)VN0TD+SL hTÖ/fV!S\?yGX!-%>A''Ԣds@ ] Ksg?,i$D}%+bSQ:TB},+EKbux3wٽգ<@9y@_paٗ.S $%_ī}WU;OfPyODuDS5} +JY_2ᘌ`qզRx 4}#@uo~S5n(KM bV^d>-Gl]pݽ DC!MiI t=ng|A`$qU 쥒ݞ^^k^VZϚ.k]Q#ȣ4CZI`Z&9Z,&kkjjLBcc|ڃAvpYvX'hKqkq~?@lja H0C:4hBm<)K;h,eD8=F(,nL,=$/1E=1tȒͨOYrTaj5F h&QJYPrR@ao-O ]{H;"rNUn1DG\' &VzxO;l!rveYA))3m 1Tn:x / cz\z%s'?*vod"+p9^X%IR's.T)< BhQbVA.eŇ^"w7sjdG[w/. ,)Ġmw$V>Ǚb jxbg&uP"8ZlӄĔ&)%ɆQ),lI,BR]<D1WLF;'~i\M|jkW-:20vҳ2J;y ŝ.<^o- ]gΠ@.W%}ds-dNZao1 >DxGؒX{S?]@4]p*J`'븞SOY[B( E>c½JA,ci-H.y쑀OtVk>/jK=ɋ $"/z0vl2iV!)nbryU02[R=/]/ք3 MW ti@fᬮm;jQ]"NZx*+LMM5dvXS#=5 `\*~̭CA0ȵASk4S-ls\'Ǚ; JOi>,.!KJ~:vLZkrz8"d^#QG-` C̺3Wp>M8؆d`'Xv$!"ѥ!`NCu(rB[p8 Krʃ?a!I>#ES?QY4C?9 Uyl- vz Tb%axVƚ5 T"9z'Һ fCXh`z#H3[XI?C;W^nā_^# EtOk|$ t=5WfTyJZ}JS<yd{!z?yݹXUcK!h[ߘINHyZt}Dr]+=sk ?B4ƥ1yZQ9/B X4EYUwϝK{4dQ³  ˛-%,"M\+a2]FV 0QY[4^c\E˟C~6%'}U^q&EcU кz"I'f *[k~F:1$vu O:JgIɫ]+/TUv )MRHޣC1afGk!$ҺjUN/Zՙ%T$!,9criy.GrIi4OMu{p<2-8K3ewOuF,+ITXQ%.\퀿TJ wl0yKnHUX \QI۴s &gဉ6/.),HVA&`p.s?,5)@b.6Qd뤆,^K; wq\.ES)ΎWTd7}ZZg7 ዏ[[22"~ѢMn922oNYȳvA+ݑAE+UHY%8y;yB Pgb,[T'@}r|dr+L]c[HOpAT 0u,SSzG?KNҦoNYzB +vc@;웑%zZd>ĆiT^шGa뎶4ٵ-= qvכm!pݠA -KiU5L_:eo+-XjuE Zɪ՚wksG] 91%KW|%/ b. JA(>_=r B-+0Ld6:*:iql7kN'zj\-2/#kN|J*ͰR#GgrjnPtfPqWΰ9lTe3 Z E+. _dHSduΞIp6CbJ, f#O`.8ޙZf0S`/GW/<7"S>[ fF8t{G4r3O;I%yl Wܔw r&y!СZ4wXIO9' *)6J}X it1uM(F$L.gؿ]x^xW;11O)_Q6gp5g| 9LeOb2 p4Go%[4Z:d`%riڐwːl~}cuvv^p&C-6=&3rmR"i4?p0!g*\y|ƨ]ө"Sݾv_OU40GHaN#Lt!Yh?#E99]F *S&Fo0V4K(J npYx͛pYU4Q|d8]R60.l4Ƌ#Ak'`G^I[tiw] . ۤh>R>A% 2(fR,[cS/dE rPAEGK?q;cI<2n"~qFE@]TCʡeBWw^8I@mzwvK`K2q 2l 7 ؗ/j4d-jˑk&a-7xӃƀZ) r&xImo5pq~k]l [`I`4ʪMPdT84s l;x~6&hY{(1vLݧP Br`Iu5K w#jZc*R)ߓN7~u)]1OJtahI7ي;SУɰ*h*|t}Y$`Q"زkSGF}9`3#T\a5<}ݥL8gKY[Y@iGms5` k_Bٟ4TVXtӄE O>s!s5:cZOzq0KђKI|ebiʁVgL{PyQzbGjcpFe$o4=$AhgS-iFf~A| -QRpk\\u9JY=;A];9n p 221!N(B3s-5\ZA\Dm#l-VX5>%fY5sk]^YPE2TSx#gc(`UfHD7 0X.)#Î<:?MWҨz\ERsmNЧ>h.y=zc\,IAu+LQBxYˤ%ʴ$o.Qij(jK1>vqxFܗO2#4h7BD!:L0g"kX銊2?G""ZG\*z+_`trJQ- uq']&œ*ka,,- B%m#>-;k@Z{F l{Y1&(KB1.M qGc4$^k=I _EW}mJ+JT4NNC\kۄcrFe,U Q' Ⱥ)g\“8_[ d(6E틡lNG{m)=k[A o5[;Uqʲ:ZoopUc+.Sՠ=G00]#HK_M(H;4$)2juEӡA$0-&_M˫,H(Yy}&{>Q UKLF˓:dS|라_.y׀ MG%`v˓>_&wݨ2ƒX F5,juʔSeoA_Rt ssO7s_N8YxW ;AkOuȸ_|j CncAe\]9'FWPXhyrtAp3ď N|y71HkuJz86sG<49y0\S2뇃js-trRNȵaAjDTtk{,ڶR/TZo`WT,/0ӄ. 棍 WJqUjZ:x˯{V=iAL/l $) T*1b}=y3Uq2r4ԉɾp4'á>DF{|ŚkFȫ+JG@:6;eCէI*aT1RV>%~ΏB$boՒvvi$Wt5kv;/Jlq1=%N W<# ԉrt.Ð`TQ\ȉ&< VEWtK1A8-& 篯wYDi*\8T=p׃]M D(|Q84g?f ͚@bCR b4A%Ƚ \M<殡4ܲ 3 ^2v^ۼjiaap`_oc4SwT?mmZdld4,\M:YS;c rjlA/Ս w}$1+F~UoI%@2^xxD&Ufm%V.L3>L;E*YǚvvFsV{KY}sEoyCXZs]Fa'E-,ry0sU2*ừiR9_4a'6MlVi|ܣd UC=|Zt)4p^WTiyJL u^f3?j"0eϑ(;LJ 229Pb Q9![#3!;ZZ^%AH1͘*;x-nrl oԤ. …)#Ȳlۈ'+&(}"ډ6`k"[0򘔥[u;@pP0ēls*}r7f{NH`JIqA37' Gf+۝H$¬Nʼ~#Y0v 5{"FPzhib1%-I:cqDDmľS1QDĽwXEm=Sz]k}+5b}:zE7a/{yj>zs#̗ڹ 5bfL3Ө(/OoUB1bb钲0~!'(TAʾ':X,i"8jrw8rkKG\Dsnս^IV OY=4hS&߅٥Iȅ PKHаkٱZ݇UPb;~ fc# тNy݄\ߝ,%撾u .m Yr_5 “F>TS7Md/Wy@LL0DB=*< =Ip )(GOJ&rQ[Gσdb'f smdI0S#{*=XWR}"Ya!@ߴb%4r.e0w'*6&~2C1o;R]Bŷܖw"muU4 tRB^0 qt!Pg58Ob?(q V=󈞥ecG'q5-E0d9tDM1PWaP/Kόs,vC")~}?.Fqg^^ůʳ,SXӤw45,;Z7Nkj"3]?mL%MBY%`ctO glagzknQZhۥulGX/ NY+*hN|SAɞ{s=}OQ|@OknH![ "_MZU/ǠutRhuyY2q8#wɥDY&+zp ݚ| քJ}Ue mEoōk_^EG/r|ό)0t@FʯH 8fzgt>µ6RR@AJ-򣂻eڠ{Ѓr?$ а7/i7@$в$7 QFFfzm *Ud|hL50 l:r"SQvcq%k#L{c.C)rxef_Nd~zٷ#P%J$:n$bhLO3eq/7? %ZBuG>P]Wg]u1';Bbʖ:R0p3o뫑 IӨ?3Ϙm c|_hf 2jg})+Y^R?$ ,Z"utq9ɲYCY,3$!K$FLtE¢DX^GU \EeԿ@#Ovڱ^sYк%@lE1XBloeRi>ta>J!kLApZ&w|y] ,)_l=m;{Ok$::H=Wk̹Yå*-Non4O'4eFqb P7~-QhǙ6m,rqeE”FXwK)`oMwՠE6c3G_E>#KI%A$m Z]80 D3b aMK +p`V]6'٥DOM6ɸ6ega`Ϯ:/VFV Gc-w2Z03BTNJH:ͼw k Cj/kp* MC]"|d:,ЪfTaΤM^ܒiI5z.X" ;MQ œoĦ, L`P\8Ⅰ 'v)S; }*h^2=w`Z;T~32m))ul[_Zap-$pf ˦ՂUK"ew˅h!sdz1oU,H?tޝruᐍHL_:Uޠ}XITq$}9&V);iW^ms#S , ՚J uYn#(cvUW~%4<) vC:MI?=)Kx׬t9 myH1HzpEPL>p *ۍd 0:U$ 6ˢ[r8hENF CLQPߚXؑd;7+ߒΫ9?o'ri&#AvlxeRLie4Xc + O@&'(|P' TAi'6ZP0p*okoiiY IU~Q5;-Lw9ep:(k/߷qn\0?_ShBR@% iSoB\FZ!4-Ax3Ć.@x!Xם 3a H1SkFٴ$ J wHZXy7PxJOfEjLPR8(TUa24&,Q:w=,%\EHQ o-ʢ~VUZ[΄K3SؼY٪O,*h">}N|? ot#6è _qELrECDII~ p`$«ri ͥܙ}B$VbߕE頷XpVYRD'U*^PCkD޶ᏊjY6Ͳ:ĊќDSo5|VT`|E G)ژ_RЭu o/pQ5#ȴ]O7$ꑝu{IRsl['Î1i$3"_gvp;Y# o]E P$-Y(*L&ҚQBԇ} jMmQmٗhafE.Zђ+t.ҙ&d̜۫vG |5ճGȄ(oFjRTvM63BH.E׏H퀏NYғ!!lf UkA& Æ$EA dcŠPq'Lt%<"+km;,mH#d>J*x,R k銣8dhߵ|q &=%L q\T# 7"_z&nR4.I%YO@Oi?L@Hbu'K[hjj+?g?á X,9nB9~,'B|W}Ҥ+M^#Zpcʙ3PEiwi Qzl(vl3 !X_Kmx &z/~vlAА9K߷IlubW.xC@C%o ߥikyRHy6pjHIAjڋ!ܰIw4ҲI{9 foT./XJAɚT4kL26E_튇G+K;#9-tE G(s5/2ذwCѥfX `nx)F<~rIKvCxt3Nw).\ZTXߝpߨ&q çS _sGx/@7RoeUK+W#JJEQ'`V#竴%J =o/6I>OLT//zQbW tB|v%N0=06`[V;ق+Qm< J3Zg䚶GY&&F{vS(HGh$]h>P 'KUnT 7 0QwQlg$vՅO eJi΂?dKfq藞Ө _ER"%o6Q-쏲wGj=zp :gn=Ė,'ҷ]Mk\ .}7vI@[-{/nWXOw9KWGVvZBVQ PCz{S1Acޠv@zڴA" g+ ďZ'2h*~U@ ưMŒ XoD{wTTʜO,Ss s݊B-)hLKTZsʟCMVQZtٺZJ6zL_^W]+li͊b*2; y%;Z-܈g8 W K1dM+V$`R.mHPjn uc/lHV۪JXKDQ5SvjtV!`a}^_1W,Ó'g_e yB~,P7kI/^p}!Obr<وvOI7籱D;@2} fgT$$ԃQ FhƽəU!~* ֐>Ň۟ a2Sr?jѱl}5+׹bK^l[J֞FP#Er25f!SA OPxQt#SvO2{dHߪ˗Ȯ]z+&YUJD"9ľs ǩaM;Ȣ& *SSJrxJ8)-)K=|4ۥc帆'ߓI -I~7lTFȄ6'((-*^4ztw*u:s&3\U:y;f'MhZ_*6Lpҝs:0,-][υu(H ]#fɯOOAט.nQPTl+"XiQ&~a׏$1r ;Sݪ= YTx_,{^I h_Y*f'RFHel& !`W-2tE;A)mm0o(ǹ88ē' io~X;Q& v\XKFcA"XB7{0KlN䊬ȯO@ϵy,J!sk^tV7h(ɠvtzx9}Sm|tdqpdiMˍ\a[kAa xZؒR #_*do/iOv*.ƕHAi)rpS1Mԫ`zx.?UU_ݐiD}VY.nV{ո̡n3zâjRB5ǰd("k~|"H'ol4d9bz2^Gsz%П{o\1)t݈\Ar-lI,]+y%%}ֈrw$x%8heaS] $8?<#<3*byrGyΟv| 9늢|pە֛E=)X=9.;`.JG,Ж F$@L/sr͙';0K!ut'lcHʫE[}/8$]k:JNFL"z z&}$]Cq?9>E+/I.%J]\VU4H(y{iN"{1K˾Z&f9{s t*ZQӶV*O[BmpW9bY@`f2I8A|I<~L2`y /XG߼|S2I5j/0fKԦC֨)b <%௝k rLsEOogȂd \;lYctwY#bvPL $}a²P̾N ld m4ۅt08)Bxp A0;3 WXUN.."940(ܸ6ݰ.-<:juwhZ{jo-Ȓݚ]p掂%\ԞT}'|Ɵ6,GuUΎ1ZjΑ(9L Sxs:rS{sC肠kfQkc':M >]~xxq-Nҋ]H@$b/($s !)վz 8`afB4 As$t "ib|;2M{'#KnMJLN85 Xϊ2`4T⩇9ިPd;HeSS-m#$AQcdv@S7!J|PqxFuvkK⭙H K=>XJ,T+@`]PA G؅X"x9&&0vaw@IۥwPVkqT?Dߒb\{>՚δ|jٛ 9n@"f˩2 rt4SqҘƾj>,HbunoZplB &\>= =]ϕCW!&SВ [#1CqQwFԠ;kt8=_eGuMToH"5џ)fl x{ _غThԍodRb .Z8~؟i,(Գb(YV1f;>[ y:jl]$0022$ɝE:x(Մ8Cߛ=2^wmRW;si Avy $$03)ͤZÜga^QS>2 媥;,\UrRVC,n HM~WNK"U+ٲH6d(?rUT+{`~Ktk z,>d~{ꇩJ8eUF涌̙$m{g 9y4]"2\9YOz lKJՄa\D-8VFnj97X?󁠽G'0[H#-G} sWޙ=):6nAʙ R4T+3ky65l_u5 M*{~,&mc$ |35'KƖخsxl9eju[})PX`wV"sY#ׂ|e)QԞ"tj@};";p57qEnM/]=!ZmSJ"R2♝].قfUd0 GZP.ؠS7Ngi=zSs?vmY-䕳o50`}! 0}xFD籄ÿCP8jW xa[Wc\\$LeDlW̫#g_;)d. [V0ʠų[#O!^ GĴW*]7`_E 3㳞98|cf&.S$+ܠJ^|':Xy[d ө#2t,JiH?zr8SPYλvF>2_%5vSPnl3!%CwݸS bJ!O0ǐeoG +T^-sEP({%ذ$kO 7)|;rP rᚔM}PR(\1 c 9YF$&C{r,po 50Ӊ-'D9.EkQ`}ت/`5AlMm!B xa\9.點ٌ74b&uayN_CЋ' ?J,HT` AS{`Ur;yv R*W\y4KLո; =saG` G |4!GlF[ݠ@S6ߞm]`qt0i J-|)EY|EA'{k1~nFhc{h{[c/CoEP:<\py\VSm-~o3Jy&\J`0l!}?D)iLRW' _n%`=Yhazf]hhʘT;e5fljbL hi?>>`w9:85/Hk[f fBOƉhSU>~| â=WwEt{8^Vc[%#lCNPa~4[2||5ޢ1V<ŃP eB_nN(_pLsMv!2 um(NxŘa'-WBbxt XTB3[ D*Vh9|^1KkT2+ZcGo~+29פ~䜧Un[Da Vuu?1]:TNfAVG&:YILEu2;F3^cM"2n8 g;y2 Q-bY'^{C!07L@znQp".RUN߾2 '&$ՁƵ^HOR6=4j x VnfB{$3[5K&>܋TPm`)VY %aWhV"PoXIǀ &QM=΍?Wku/x"gGu7TupRvx!?Ԏ, w11HD!< ok!zO2NƶR])ɂFn3Ta1I0k}%JC [ avm%w}q{0$הo4yso&@AcI'75osp2 Ͷ,k! #x80߶uM(ڑ=O}Y$M~+vEk*,֥4"x/'+i@N$F,ZE0^Dvf^SbqP^z Aܥێ{]tEkX[cfM;DO^| 8Eޚ[Q`5P!zp#ӈNڹӵZЈisr.|(& \\5fMU. ywW@ pmw']d|F;Pp;80liocC+cĦ>ISlKsb/U"$ N<;'#I`{%+&iRr+J܄:oĉe5WZ?T齗@ ^,uMذz~Elʠf5< הqw^mUsм(_ύ#TlQ^/ WIMq{M3u5=0Apd{lm_6sxRXXVx b2|W;%qs5ꃽ)M-z W \mU:׾*;.˻BW ׁ%>j;cv4|iR Ԑx8ܞ`% qK*)^4&g\@`|=#$@ܹ(ʹ3?9,@[Y}ӗ^xR[fR^[ ldw` ՗5ʰk˦ 2`d!&;q-;HLP~oi "zA8ҹ:*_G`ߏ LG)I27R֫#aC:TY5Mc0tMoY n%e!Olqxk[:/;IAsB?><Ɓ`_nWn%~,4v)4ӕ"ފ\#TH,3[oɰK,}{WUb59xu*[wj9LFRxZ|=a>ŀTFV,hݚdԻF!$q_IJTW _y2T4IK`F ]ޣuyLxF:>TO);ːQP@^*3Rl)i} P ٛ9[ix 9ݹoPۘm@>o"H ._u!Dn5L;B8=FwU$\# k^w 3i&GupH[/ntqL`l11ڋ"*)ӸL-=ĦϏvҟDh{yȹ-<.SIGM{:p$JQ˽J`m ;ŗQM>&:Zd[㭱xVSdR6L G MZܳF Na8CelrJ$5 =bdX+?\hh U)EŞ%3WЀ&aA՝cyk?A!q !" ͠('LvH")^͞! G ?^D^J`\:`F$`n^5;CC0O t*XIi>shA0V|8Хlt"ܼ/ak u(џ>N܊֬yB;M n8̊nA0=sh ׳7G^|Tp%/ N$,`K(yb!"Z;H,?+ΆR*ǟS`O2pwMG_DYd9OYV7J%q6gDaR^"EZrv?;?3T}w}].7(ݹA.^$g5+ ♪BtTApz鮃`lV68hE3Y"nS-ߦQ}X>~ aFxsy;Ի]az/3rO^38),{JPFK3ej֐ba2ΗޞjMmk)-u3P\-}VkkqGIo)D䙰REIɖ=F՚LUӅ1 1+A &u#"[wcfAgO{O~_㲀ޥV챵Gw}ilNsQ?EZ WZqV!IՂ8@.qS/H$VD y'БD;t% lMm"dJͦ]G+j{FG-$2Ҡ"F!+I˾I |΢Ip ͒/O8o ok!!m(;#j7g oc^#ٰ01D@(hks3$$hMK&q8qrN!uvT 0J+ޮob "P{?IwL7Gp?͕D/swٰ$ZM'EJ8qF9}_# s+0%y2l+x{`'H)[*En \27 nS"y0bg lZO oPWҦC_E 0 5ޥӀ ]QՇRSkI4j5FVO}\"NG[%2cSxOzn5mHOYtʊD) 43p@5 SRH5ܑrQk Jwh#fo GB&H%mzh 'f쉀ώ .w @_r[Dx7\! cvYJT =`<%[[u>Y]vi2?{HNxCHHaňI);ibcKg"8ŤL3lct7;Co\^Te]sq$>8Q~:äg/TDJB>?B8U%ٲFg/5Ȕl MVL sX{R$+eE<_ q\ګEM9Q֠4on@5gO`#˅,!:5W>^9䔦z&E!Yv-hv"<c5~ur[M4k^Gqt.i'xh g\_D+Q1ٶ9o_.e2T "5˶z ș@G^?'PbYm|uKm.&47r,NfQveiR/HZ,oY,Mr d5O sA319ILʹyʁ~h)W7ܰH[߭ :R՝sT9:Vfj3 X'K͏xVˤu,`ldpqE#ј!}?x,JƱ?H k2G S#Vt2VmsY/9^´h ^ݒDs@\ A aq|&n_Cf<{q^V&gF?5ꍴގI pq7\Mk@= -&ormT+*p~VP-: `+0XHRNUAV7B٭sʩ "~ls-'Oׅ*߳'h3ex X=;_)|cD j5wǮ,n"I@JA,*soCM]aC ḳysAݘT5Q&VN|54u-4'Mypfv9ijGw^+ '(C%[\7Qw>f4"4քगr D*@ǹ vW1u]U tojxe}Fm61C:K1~W1K}`&و`7La~zJ )Q< ?elDIH#LY9STS]WgK= jvYc7Ab)O([֬>!?uq/Wчb1Rןlt%jra{[3L4=c$MD(pecQ4t 榡pq)bNLHdMLs!B˂ hēk5%}xp'0yg^\@Ƞz̶(SQnd9ҿKdzV<ݣ)r-I ^Heqd6f+ 6 !"1=MQZ6m> #/ϬM[Nu<+OEqwY<rgcg&Z;':QvU_,Jm trY:TpR2,kk #3k{󂶷 8 H$=#ܨG\?F1J)5M.hup$g"I>#h:4iYt:m:t 0OŐG;ɋ9]>[ebNwez:!\O@)"F|p_G6Lj%VgP z-0\a-T-\|nzpo !>J%"yC\mFq΃1Y1//l (ręЁocgjqbi&3Q9]OJAw'% 2農z߁}8# y Gui33j_dSGD|n1=E7I~Gae1mv2VL* zqL,RPme_`K;vaq̲cH^kqή~;@C8 aG7")epS*\eCy *Ug )7xϥB w@t+]#N! A'lB) EC&;rמ(ЈӝG)8ꁶ iڹ%f*0dOEʮ::JEo ;wPD\m@!8U86T//z].=S O!?C,xLZWqWaK̮}@qn#[sMIJ4E[Jxq(97:@\q|~myPI5F̦s&◨ڀC#Gh&P[xX&g (so1 3fɻƶxc29Mj4y"x7iwh{__ ?tCk ax:tԙ{#q?L~Zi_|ށ^5Ʌ%q#(lfyZ/'jD@ATy̔v5A5&R7%hт]soޯnƲ5~:ZlFVևIG #(0]fmïR*4|N #2Q~FZ؀qaowy~QT@$+PD߰~?O7Ҕ^Dݘ oVxTX ̏ң3YXcСrm1'1ƴ[U1l7"4S`MWz+49ӛPC^ -j^UIA%1<{ۯ)2pްc}4NF$Џ``EN2I 4FHKh(K])q6b5oJWr*Npiwɓ w pglO* R^8%vʧѨg.a q%qų5>pi+D՘kH xuv>S`H̒Fţ.j /V(GSY;ySƆ]6xI٫jF ܉a8+;!jOi'l}O1H=UYCj$(&D7ȁôU3֏3ڋZm-$Q¸ },k l*ÂQg> |(א[ EQM^O9r!&}3UU6پLw 8,j7Oc+}ߘ>~vxKJOGFzv?,6ץ)&=MZa\6T.p]D_mi%gAwɬ/,ȡ2]/ ϟVQ]w3_ iDcjJAi2ZbI;oPã8SJN"K4Sĺ/ˑx\Vв5[D%O:YM6G 4jݒDK/ ,MaZZp>oXߴnN[mVM2 iru]Ϥ0 `Ht[O%JFy,qK_¹Wtg>6}-]F(0&.uLmj JC)E.q?%67w _Zذu,nV\Z[K-̙]]B[٬O! Cy.%K` hG?;< *'X t ?,ֈؤ)1YQ '$ @.@F K_cÄ䧘aς zN9lZ$9Kwap3TXW2O{ 3tbPkŊB^Y٠w?YRڜ3Eo ۋ`p6#2(ҖQlD.cϫ1K<,ȫ% $7p$hGϞţ(֖M4KH Gۦ_CH.j ahp1a¥:ۂ'ə ʹ`¤g&}W#pQN|@hڼC&}d~Z &̯yr}gA}VtWjQKH¼/wߑL,xgʺV {N/,S1%w܀H5ncr/sjMٝ[8 +.2s:3RA׆ #ϥ-oԚO$$mXG0!":2tumKR7y.9l֠@cRoδ[mIXVƄ[98lؾK(6ꔮTjFER42v:@ ߀ю`r, 4"{n$ x/>Y7LoTAB‡tbCǬCx͈U|I!P7$N9 97Ы=(.AD:}/;j']l3 nOc}ZQ^n-PB-+j*0]otxj4(OQHaq|@Se7pXFAus74C6P2gvrM:Ęzd]`Ld~|"xkpYw#>Īy$<]ex/:^ֶNK؇ & bQy&wf5EwȾ/ތ/ZeZZc"X~QЯ}ՄJ\F]cO2G_|u̶Fc;yܥ@׉$Zwoo!@R(0q厅K// %t{ǝ"n@/z뱣B8&">B_S0q)CQ K.[ 2WVpPQ0ʵ0h텓_ y oNؗι[>u_b1JW:>/0u6WjnIA)^+ꛟ T j\>%AJ#',z0)Nc*J;_|B*$ (`^P.ii;p]F̹1BhVEӁCߣW׉-"϶*R|ߔ*~gK4zɴ]뻼z/I* id9TpAe)hSk8{K@{̎n+F2guԪTOH2b`"kg tyJx?D< [ kW)fcrJb730dEKSH{C' }m<#7ݬTo$|lFcVm\76nll\(WA@;rD%A76\(ˣ /}o 1v! DSRpƴ6d|h<j#חaKWhmt↔ 񆭴Mg]s4 vq՘^ 2q>>2M&rXKy/U$t:DY$ |N>bKr܋I1'|#9'.,7ݴRp vˎ(}Vs$`!ec1]]wm:]e 3C&'9+%VwzZjm@3A/ʉ_<sC|w |h=t,(E݈mS݊(z.,1\g羜pZ¢`+cs.]$3nlhJd ڥ{Bh[ >B$Bp?ǻXjjdC+"XLy\jǗ-5,en,KQ;95?lhC,Fv\ %Cp(8{Ҽ3k,#+WZǥo%W5l{2)QmauhOoE{&{De˟r_޶*B> $'ؓ!j+pϣy,u)o8BEqRq,ӂ3 <|--=0+#4$>LzQN1yz fBO\)G[\Tr}X#u: !O =J%*zZx229Rd(׎4TP[rhd=6X0w ,ݜ1C,N?(*uu+W%z_mSY,hK/-Qﬖ2J~E~x+m-cn ΅7gPK9փ@L|OD6K /3?FG>I u׷ݜ-O2p,X|.B'?t_4c uϻ - Ç]$1섍T'@C [h!/փ=f ja)מ`'z dwMiVy0t0߃´k5`aF+AcK〠EÔ Ssj;xwC 6n-l]%oÝ4{ѿ0 6g@|䋶+DFZrVŒ^A9&k|k7>u^v6+i;J._3(i,c̬[]]V_[\hG*iQ:]4Gp|LFFO3dv\ ywϹU~N'.Bt-D[sњuuX{\evz[vaiX:El"(51-G%Ԉ5g*)//.VqցE.⩚Q (e#6+篒i 6LrvXq81ON[ ~{ +yO֮CW>tv.߱S3[N6ۤy7G{qHrYp i,EUou %iy)F|e`'Tπ_DֈUg-NZ+"]Q2wV8%1&\'HKO챟y[I=n* 3,[O.ANC]RgKqbӂ.jO[uVR&ϧe 8+_2ሙ>T+{v{9阜Hy4?W<Ԃ.'` mD ,!>?{w%qOÝy۸NoVt3%}MN\]>sձg@I{sjCĠ0M܅)=˗n)ĿaĆ3izG,9iQжhR!Vz}]T!^7j8e^a1 ]Wpʷ:pt`~u sji){OI݄Eҳ98\ K26-b_\iQW#A@JGVv>izrhhdJ#G&i:VS7b"CE<ј-xm#v77n2\+@{us_@%ٗ1hܖ~zMEQ։03k?ЅBJ_QxT@6YU|OOcǺ^aBx1WvI8U!u?)^?sHqn.Զr/SK(DjS[֏agqcVnif=QP𝶼dGUL!7}/Z8t5昳nDOt >=V!8? kMwx"G\?"sFr̊:3*a~ddu[eƌ}]\}wDǞ:zC]q\@^aX .).sm˸@Z siYɬǸ"8dByV4Ǡ@Ga)C5 \JdxȘ^,V-w 藡'/6 ~rh_5fQʫԝ95_>{SRl?* Mr*+"2M`(jR\\|}>+)DجHLQߊW{Yb`A7 @e Bbʐd4)o[,jEí&lmQHC ~!%q|zR5#~C=笫WYp ir_"76`LvCjUHh HO8c-Q~'`/#OႢV+o}~ X[㹆//b$=Hg壑504]:&CY.)Fܫ!+e*wJ"OV-0wdMtfԩ~N')3'*oLPH7i_,`{Qp硌_K2o!(E%kj dC %̜lկe}NJx/V%6cf~ֳ6{ xˁF A[$]+t9إlp]?@TTq2 zmFJ<|?ۊJL0-n%.b![mS+jkхx!TB^^m, "/ y;8]9owdͣC{L!FܝEeQh$W`@ׂTPKƒd>wC(b\y>ؕRoM@NLV$o_1>W02liZśabDbTrnY+NM.Z:(vB4Wd_k-]Н,IK¢ STDHHP $MJ$qN4~KV0bO`4tCGlך|&5rG0{7*ܤZMwg1?fF@RWp(235BoT{./A,Z_N8ew| bb3W#Cǥ|­d>cWZE1ڰJMA¯Z${HH ҭ\Զ*; m_`dLz}4ݗhѷ$6Ax2m'MOG'Rn)֧ͬI \=u{")> Вbω>Rp}rM`#.rIGw4>U|~.\ya~}Rɤ &Mg)ŃF[D«*辜3zUWj '(mk:< Scjk&oBnW*;f  ywEcj]oK7{AD iW-yIޖI3pL+nFUkWd(TYh9'XeZJFߕ~{u`Cz\S |5 2I({q0ۘA$>wʕ!Kd$K~Ғ!1Useh&D}sYC9 G<䌙g:Z#6V$q!j @ch*B펪 |NjOzQsqu\0h( ֞7$I_;UAh) R{v%Mb 7FCr.7*Of ߺ~ޠE(⍏2FEFNM #j !^/_p7fj6@^Ӵ"k:"l\u^. ;`EDgР0_hYZo$,sy}A(\XOqAq 'Q 4Y>(;#s%C3%5?9=1n #;HqLKsapT{:݀9-ũqT&JVZ8y0grY:-,lts СmBo)S-Tz(RyVmK-KP% E;>g(yZÕh%ob2 얊X3~\?"Uc;< 01R E|?3Y^vNX)g*\B=lw$hA[#2PnjϽwVmP(d炞'G}mPvamWo6eG;L4B,*5lk(ѪDLkXJ;=( O;ԱXB) ,h h ۠i"#wzFN9p((*j+˝7_+M'"ZAb2ҠO)qS/] no:%:qUZղ]|IV=w _Dp^3 {|]8<xڡ`xE-.3Tʎ"a~υ1lO-î~,d1sS_v8-rq8\ 2U>/,Kٰc 0=FvXF+|LBZG%j [^=gLf62AYaϫe^ܲH004 Qj/h -\[$Ȼn([Vwtp>LBG#&m.>.Owa-PNDuB*[䆣M {pic\58*6.d:JghO!-qwC ־@ S'W~L!J lr#t@_d2߽;QdѵME5tipqyHĆ@t5:rN'f yEÞϠT̻ڬ󗐵 P1GI=thZBnNF\f]WldqUA0OΨSq~(T7h.Fi?Fk-NST0{O}٤v8-`VC&L)\욮>jrWjvȗp2yyX#^Nfdz ~ ŅXҔHm X :1qB#gHwuٓԅq&&WUꚵ#>ӾкtȖUFux7l̞/(rӎta2gVŚ0<&rhqi_ˋ;qlx,#G_r|N t⻶Ct >+u qՒh(q /:԰Vخ@,ŷwUc33FΏl )\4'7VLgd1k¦vU*-. pZMͶ.۝}:3ˏu&f : bIuDF z_^qźCyjWJ(j-H9ͽ-rZ8y̫zdU*AY@=:E%ž!lBb@|Lۄq>8uLVU7R(.z5é|#IyG[sw=E e26|¦JC(* 9* @c738GKAYw ўl_1sJtJUF9c)RcsGEhj/)r,iI/`L `ЙNZ*LjΛvY}|?GAb6+k~aS,ɒF06*(шW\](E74llo[o @ls9R2d10sԧ`w=}[=8VjV%p\{ nsOGd%S|Si5ˁHpr%s8 <{/ Oqo :<1I]-ȲAMrKqeG^&鶊2rnXKoC^/"=l*]"ϖrx nqnvlRɡTaBǀWX(i]4X Ӻ}v1FTD"t˓;&͟.(lNz2mj 0ˉYPTU c:&Xp۔$>{k):(u,D UW qjʧ=~re'".)$ч2U)tH1"b7q ! /ͩaHp1\8s䧩~船L|$ =&Wti,g4eWWdQDザKF<xFȺh\0Jau2?Ҋ-*^2rmyR9qKVΎݐhM5fcɖ+ J蜧]-w'k}{}ek,d֝)DO{F.KG.` C7M)n|SHk<)}hIS-":X;(ZA7F35 ]4|'R&–܏(rtÓ ?u$^D I?9Ea#"7|+2NW24(z"16ʉYT·ə-QWuEIY:ʍXDj!}*xgکwǖMDGV:6ܸ䟇:-|׵<gHon~0A\XB)qybb2˛ǯY'Њ0 2/&"UYO (hLf4v s?-M\ω({5BlMGI<2(TMFhw+pPA=_5 Nw3K7ܛv綁Gc4&*~- lNo(Fs! IYŷ.Y ?UMϟ}xZܞumrZ?+HCUz[rx7ZIis=fH:舮*LQ 9.['b;&rJy7<ʶ)FV<'t=G\U&@tϮ3љ+bL>4F|fN_FkS,O&qм{7rj0*IMwWAuMBu5a?RutP&٩3zRbiQa"W.P[ ]Bjo5 3ჺˇB["Nք,IkS7ˑ(b㬳 6r׮qL7IIW!j,zOZ,xK! V͠#eoK#fҠ :PiMQҵg.'HS%grIvuOK # J_B믷(v+t*ē.ФrW 0*#kVK=xgCBgҢSOtۭdB}Hrk$tGp#; rha׍8w/^^"B"*t1Hץ7l^W]GQQp ~eSu^f ~@] l$K3o0k8YϸW(ä.ͼQo^ӕA'Dr CC멪~|1W pQ3*ٻ_o\JSs<K:54{F.G-Zbs֔> kaeNL)vڂާivu껻bIp{[ !ow1/'t2)Ϡ|d! ]Ը;M ]Z -u x|)QA%绖B@M{ D|l2U0p,%aw9xx ͠Ɗ8aFUry;Rk/灳/ҟ-EEٶ.I{ V$Cy R7Mk¥6if6rjfשd}L}r|WW1/f7X b̫w/٢>o8.~@ќ>&QJ-ydS0:I<hi Ù0o0Z֬t{Ku˔%) lm zCɔZ'\  dE`=gJ\˚5; ؝Cf媩֡թi_ Z7W@h0.[\`>/R.cJ(Y){,O*E^&uFzDkOt5Q-Tɏ2S6\ʊIkq .MubAR0A}k2~e($ TW'B2O kF?+©3uq;0m4DhRLT k mΙeڊR+Wrz(S6xԍqQZ$X|?FFiye'ez`ߵ]Wf]_$}(sJX+6('.iq8#Soj:f Be'=}l?h?~3x8U;e?&5?/%b"3{^< t>$-W}h L<]1?fʉ:4T=-44A 72s(nIhR s~APJ]Hp3=hץnSқ kT^ pa$7'ZMz js|6(%!R,mg^r*Ms/#!/P~8TZ m3@Fy@Y1=EҘlދKl+o]ih=q;qhz[Q.1ߐIo+`k?4X*%ii=rV}մȜVF&1%lgn_\.(SqU%/>F˨S-U$OI݉2StuHvRy8.Pwnmx49--cSϐNjB02Zcu1KRmF.")#r| `w_j'L3o& J uEj9m5lleAG'j#cZ ܚadCq:OĥG;wyE18ɷ钡b+DWӪswMTG4 ``_n- +2:/ΉeIЩ\ ZU:|8JtnQDWR{;aBvTʑR51)4ٲWfa@)3KfcZ͉ 0$t I=R +֤ܐ`soGp?K-:7-f~Pu/]7=䶠e6 \cLV~E=Z)'iAϞhoTE>C@Z1a+{w$ IbCfA&SXyaj_cL<$㨯U;+4g6H͟ƿs (ra:U`^CIc ,XKNAN ~ь[6=ޙ#va `F~QT葹AԵP(ھ{W_hx>QDZ<G<5PP'抁}vaߟCK[x.4=?-a]N2sAKPuOݝ.C@ͼ`9[8Mg\:0a!Rbэگڰq"FF F[^&)%S‰w=FQТމ=H&2I'.|[ۅ-ehD=TX:HY;<ߌkJ{WC%%6Ce53z>TqDOķ -6@a x.R_MƆ7+BzlFt z4,hŎZH!kR!VX^ZC #$`OZӞSIf5?nR@W'PW 9Ƨc]j_jX &?eZB=&Pd}E{; >_  -M-ThҜs%5UW&לt^[y1J~xPl+>il>o1)xޅͅ ǝBW?^KxH>c4]'l܏Tk%80 ZiK$ƒQ)<N/Z&w`ţ=#6|DT)ݽ?龉sF/<LKV*g^BLRUE;7v2M':UO঄WV󉭩8xEmܾ?6oq?YOdхD.y608P<')A\:'esk9q.B*)ܕj[5(Cڅ쓘o0tbi*oފ? G?OC5'SƯ@0Q݈%<3oȪ4vL qy@ 9`zp-Ph_Syp+Dזʞr|KqhwFm!N^愄IN?{i3HW+ͫ,E?U\,TxVE9:aJJoSpM/;cTWoJ]ltq*-#Q\Nh^:Zg[ -LW7&1x\T߲*˽?Tv(.v_5qlj9$S:p?~gbÆ9XSU:4-GLl.7H*A I #v$>]c'9`@+ڻ/eކyߥӪ&*a:Y>[D F &ψ;CS|=h"u4{]',ҵ|a)DGU=D/DTV7T Idf:I~U!B'2ٯo߰QxcL as;tݗpֻ߭4>|O+Za ROW-{ڒ$a,)XPD [Yc. <"WV(LЮY)Qst NmƘL| MΛSS2 8U^\싦{MeϮ1mCo$NT ܫ!K_ rqeXIފWAY2`osjgg`ɫ"#92ejLL7t-މ.PJ1 d:rxv ֽg9p%Yi0Yz_3M?= +,|0` Źқrqo%8~@A6۽G%%m&FqJo#j[gb>6y֊VQ{?kXdjX@=>=z7w$+!W=up @uS, BjȋcOLߍs5N'a1g1RhQNIlQ. qA4*H^d4lA::m5ݑѾ5oٻnݰflAJWӱkA^NY)2*ίe j ߜ$";{Fz\Uzзuǻu,lZv"+ 㪾 SN}U'WT;rFC6d3Ϻr[UTBKEEkJgpT?|R`~`ptNi9-OئG:y=vqYY7.dUez≇?+]aǜ8}NVЊ0P}f~if=m-8j ` 3ěϠЯ(0ߑ0'F9ϿZm$-i+o AV[rڞ=X1c4WBs]}t =M*pȼ&"PeB7๽„kQr%Ty=wxN&%&v>S4԰Y场| Y&>,b1S*ѹ3MDlnC5Hg:Ch\pz]jo_Ks:F{1;g=w*qTw"z @r[-CHՌ{F8 6$&4WEP|^SDз&L9EٴMlbz֑3&HƮvR-3jn?gc)ceWiYÉPNu4Fkx"F#nY9Ü|&r}eTQ#'"]5}?CnB-LBLpQN}S*M³w>,q}}[)_릇7%Cu"س3.,>) 7U.N_V sva6Ʀz.7n]>PU">ٗ٨N_C .;.q$z:Yऽ;]:He 1QWjEzu ƩfBCKRUܻA09 xNTJy'| OS $QKQ鋵-yAPCZhK VAb\4ITLSceJh.8%v$O:WG6 s#; q6kғPMBw~@hvi0jTvb?3կ];XX4fC.E57HΎnGbtD7.VzZckԍAɀoCB 9\!b/)+ M%ޟٲ r/f:&FԂvGPTc~^wyZ 鐘)`iO`b{_q @y75PZPz^ wCɿy_uLB,Psed[t(巨2$Σ$#<*@{*PEI+P=N.-b&9HE<ō"#x,G5F=>3? ShuX,|V.P{W8Qy`:^ bܞћM>AVЌ_,?TJ-b8a<%@@76?$v,:\7aCj\9aܭq jmw{o;- MĬ\~QAn\*E{G_]on :]*(>P S?3Uؐ_$dc&0x1O}Xn42IpӏmcxMU³i "$'f:Ę#؀^v)f^cPT0~R(i;'+4mrפucv,n  }u%Kk0sh8^ua\G"ѵ9}Uwy*' =hX>]>"7:GgD&kOd^1r²5Tb֊ԁ+`#dl`*އ7@0ڑ'~m~1wqLф,.+<a\>B6ؼ2 pt"Ǖ?Dx0;u#g:^`IG++]rϰmzkc?,7=ZMUCX;MƮу dPd;܍hgKUg\)<|TĊd< "Ca.M(cΤe}omShs2 v*[+HivA2{uɔɫ+J( [Cp[F0P#R_be(s"M·np6厱lVPhFxz=2ҭH΃:mC/V:"ۇK괃7"l$vW= :H62J6P{B:4(oz/7);٬/&X&7^.A9z-Fx3-@Eǣ)&?)CsaϣuDDOct7E:ƴK;Q-^(ktKs䐸4+K`ځ۝|xB3vV՝{2Cykit`Ȓ9$)HD#Ъ3`:\6➊"qjV|F y}+c2.h vɺ#+ &5/|y GiM?^Vr']* tC 8mYcO!'0Radgv'Lf7s l| ,H7=hf1HĪk'х HpVa0c2ɼw'Ƿk} v5_ RbYhtPw"Qcsx&UnW9 Cr[m0_8/R l09R>UY"q@C9\@3ghGH|Gt4@g |w1Sn&qN7y]^ }>Y#f^ŇL#uMo8G;ny;]D(9jcNMz mcKȃޒK΅ܯ%ʫ Vv,<@&سv m*5Sx k0] {]{Yt(۲qiӼYe|:-=ɤ_#ݬ)@VB*e|//x ylp*rž쒨"-^~]ҩ'(x v*gM0 )iAجȀU"jV+KAyJ4qsRF~aho9k"H2{d[(m1VqoSr>"FAONW8>pG5dtv|Z o," 訃eU!~1 Z$)繞8syBӎz" lPe6b*F.[3>hOTL1=]9&Q!o|E  T؅+M|~Ȗl"܎2y Ert)FKf"E@y&8M/RNw(ȈzFarz?taF:?H M Y;_ﯚQ2Ebi>dX= z@:뼱8=?nr U srf~C vc6H+#!:k}yO)ࡧ=NLϾFƪwȦ7վj#rr^>RE6~VOu|lfN0/ aaUz37wܑi͎"튒зǹdo= 9pͲp-Pmw厎yojyXvOfvS%Y a跔ϻ͓G*tW4yڕ ^i_\׊$h;zVw#r&z.k{7/7Gi[a( sUÞ?g7@P KHojHZRpm30 /_NFi8/~?djLc3--ɒU`!eps俕z+'|[f!㞜\U.?#7q@pkU:9-:oQ}EIo|ĵwC]m|;FJ$mnz5GgJmz!4 [ij )OM(*ŅiGz6D'SvwB7E446U[L"@4@QfO`nYM|e-cw> ╢p t?Dة HAq`v FSɖ{$w+t}G8_V7VJyV+♝nXS`LKokLW~kɆ0Rw,y79Q*p 4=6#~1#0ӓKj}=y6iנ{*aD0h{%6 %Q~06pm`dUOw tXUT]?do9ELQb|icbڶ)b`S@UDѪv6  r p-uV)wIFަ"']CO3xHgv8vzkƉ~ ~Tdͼ $R=˽棭77=K`}cSP!G$ujFJ }f' N 3tw{5Y:|>A臼ݳjd'0 C]jFs)>ДB^hxF$k(³[.Z4 5Z#jܹjw'MU-HB(81"y ._,>ﲙ}k*!DҊV2Y|ha5I\J|XNm]- !n̦ΗCLag%%:8Z02;!X T&URe")Xh 'K.j U>gzl&LpiSM~דa:J߾a|~U.I ,g#-Mgɶ|Oq&8 sC;/GBWgs+^\)9kN},͖H|=?.L^J$vG;fGyްf:mVUcZQd Q&8wxʒ!L;0Ͱ-xyz (пMm }4$ 93_\E5uԮt"W;;Ɓs_Qqe6!7]M 5Ga ڻ:#l1$ lj>#zLK8j,Hf:]xIREӹQ-$!qgNpy e,A\q|_k( nVs)? OuUQ̏{4*?UCkpe p}R]k{Xś 81Tae;}б z!1H1y2f3HhDϩDqkH^Qڿ ;>z__URǑ$(ܓ_l[l@mpI3c4/fFN %?z**(,0:q )[r+|7*,8 ]Cc >4z2% k-Bt!]Tg>H7XRNѻ)I%:/0D *tx^N`:'~qцמJAe"%3Qz*BTMὫC'oJ^6n/\(#@Ib{׼K˻TN@ }A!11$Z7dX 1iYNX)3!&H8`Li-5 *\joJOBq+94f3{L׵ۭ^w@WP(vzQ,OfsA&[g>R3Iq[OiϛOE:xgDͰMC){ǤVᔐ#'u]ID3;scY|&| \~Eς-}0ׄ=)*ǜN` 7M֒:ewܾQ*rǯ6QsK]@/V3LC6|CJVY(ͨьm5փ޵Yhlga2MB}yFj—ט 8 ɰ AK˖E-fC] *R2i9u\*]N7Som'H,$_gUHB;grIĤm l{,Otn_gA6G 2412Zy<\.\ʭ95eHxӷ#G½! ⲔJI`R-Ł<]86%Hg1\S*,/XGLh sCyE@ \yyWsz %LaP‚ykq eXNU~ꕰ~. 䉂l# ="qSt\t\jXg44z{ FzI6gX5'YoךM=hW[{嶢qD_V&2im6!6wEc̒sR#W2[UtS7!( Raa\QOG J߇[o-Մk\:5Iy׹c*^\:W‰kvr9ߒacm ~_HV[bU4$RLfLd}֠>^D;pV QR/At""hT[aZYK%苎4Ad$@c -ZKp{#G=V Ix__Z4PNj4Ab8)F:2ϝ*QMH P ^:%8@F8-m5w{ˈvދ&qZ7j+8ZPeF}rm-&|*=B&8pBI Y UQ\Xq}.m{4 )28}%zGWs@)*? mn$*)[BZg! N!彺ZK7/\Y-O +w`;KÌkN%&WP.0 M̱\Rgkt :.mzΎ"'t2SOCfUE\fQCoHaNϖ$%]$(%֏M`?@d"1׎迂ڃ_Gҙ|r%d.SD/*ZB>tBo0a$,I* (J̬Vrh.&j0(~@7swfd^1)r3zgmۼ~Va:CO:V1!lسL}^D=P10RjE9Y@ :Nn{J %`ܴl%w0*q Z=kWlAMrt gpu{t̮?' $@(af^=w,e^N^GΤ@Ǚ;R-xâc8NG$hBp@_qs tSX6z@^,:ݗœav};_軣A`Zh{r8[[фJ`݄iڥ[CP>Rp̢}WM .oJ+.( .q IVJ0 DqZq\|:`|g윶//(~1y ݖ&x+wCh4gO&쨺=]Sq Q&[֟"Q{ ܾJK`PV#LU|j?2Ry!nyi#&oR.j-U)DM}J7)baž2ae\ Ґ>Tq/sNth}"3=_JN3ؘ)۠~]QzEP|ӂAq-;s1[llUcG%yu 4ib+]A8BrX5:֊ {\NkQaV#\$usָhܰו -R(]2ao\Ect "9J[ [E_57 Auz/~,FRGC5qRXraXFGWCR?3)m&8W@1?5\1f  R} X)]Ĩ~|ɪiC%Yᠥb)q: "Ʃ _nܙNyl;+czCdG@4i;}2CY 0XBQ.T4QOSŤIVwq;n2umj鵪o2}7 ~ܿ顲T&›AVXf2|߹"TP_;pW2y q`SV]3;|Ok!H?l/jk&hl%FOύ*h7B<_!"G&6r-thZj.^&uC9cje7DZojp0^}p#NHy!sXUM鶚@N};Yyd|t6Pm<Ϻ1[.X'1ϵì Blo8AsD@\s$ُ:O4`i*2TVypRڱA-]k24jofB=ܢ8ȒQ+V& ]Տ́nHXْWpj^,ڞ|on ėB pW\42.@x}yU+h+j_?A#bSF5AV1ԅ JH5n_ d cS&ӎqe764Et si.Y?n*Ų8hbY4# Dѣb50|; Ǧwa6vO5aXm`ГN^Mv72ޮ|v*Ӷ]<LݖI4V{-ckD̴a )aPf=L{T,Jv0ҴT {{ Uێ!$t|lըh57%C:z'cXq̘w i3a=:>\Qۯ/:~rtֺ f&#$s.rjG9Cppt eYU* sϯD/K (q>fz0!mB#/) 8,؛DGLzh@ҕ/"SoVZ߇v*3a9 Kq_%քx#PxB1H%r݃-z~ (?]"l s͠ CP3%LCζ <;?u~{zCOoFLÀ@99^v{n쉙}EXO$ځN=]Tth¿235)!.dk- l]bq%s\bAAnfPrY,+d)m&X V]-$(s3b@q넕&9S:ǾzTz*–fOSnsW:]7"'ӂ %u_@l*C!;]Vԕ#ǦuF`E此5]d?֕uj(ދ= ŚauM70pbBh/SZA6]\OT}9Dz'ű,B YİY}LI[Fﯢ[uP"N \BGo&P R0CIS3>zU58ӱG,iYWnqS+*E G~ bֵHP VK~{UnY1@ ыQ'D!zgJXK홋 ؂I\rIJfS6q[v ]U&:iSy_waO"s"FhY*!T'cٶruFkADPS _ ;X{/1 aHzc_sC$#r$7*+rQč~+kͲ uojsƵ;b^ugJ X7%eev|H9΁39! h.MKKg0۸˜O˄' wBl;p3ݒfYL(sbDVϡ*Gj%t3E@Ng'BbpQCaΩI9L̦3jmBrM)vJ1u@㱒w]nt5:R6쉹-Awfi[Gjh.a¤ߛbxdx3@uFLLߑ\[a=^iTxV jKY.=tעttJ49""OCp Gvo>׻$ƥkz]i }rKi57dQ)&PN>|v HnE[σqkܕ9^Sٍ&.Et"^vw_zrfLz#\"A_eU8QkJȝqT;%۬ r@ &2hF`|3P:hXҲΪR wҦ4ٔ }S9Ӻy,!| ԣn]#HhxFGBh/`ܣoZ_rV1d?$uxVF*Gym#:xDFƓ]V>Ԡ3< k\Cco;Ccݗ{ؽl~Cf #^ T+GF|)Fk3e4^4\&,i] 'c vʻ?F裦Ř(Chy Ӯb K6d9yԞk5Wihx1Tbh+ۧyF\7qě:;XZ1Cd^U*{cKM9 M`ūּ%>9,8e=ÖS X%ižAa Eze&O(hUF 1}DZ/=k{[H!s3X7tÖY!:/c1u[:tvTIMCKz@{}l3N!$% RN J̰xۑ+5JZ1}zxeN"6l!K$n5ྃyTz3iZgv!I^F 'N6 É&Se& #V^5C+N q=]dEEcl0` s38gdH  =ԇ}dϳ X(:ӋXh1 ѻ( E .Q`Z}߈"MVL?Uod=^G7 l.QrB7(uz{<~(x u ;pA kp]$84/ˬj> =dCI?hGא߭Ng<* 9# GV+Rה7uϣFKNNHo<#=> ZsDۣ_!l+)7uz7d}5%pJ~%CD9!J#b nq=+/.A.g¼h O*ͅr62_]Smt03DxKR0.hdwA2|^jhk[:V+m[Cw>(H3MqKh\)}bxH78zEuܵ.Q! g'MO&9S}~ l[JJߥ,~̘>K'ҋꠈfಧh9,  ;lYع>̻.mry) h8$NEdp#e)̭CQfmt3`g"$)s<ބ$δ5ZP{p/G {/…B:\;* Awv[⟕jrBt}Ou u`q:\ܭɱ9uZu'%n2=DT fr 1 HzI#BLWTz zςvH2}[^S?rU1/Gĺ=x= Y&;`9R |5xcHEif~1θ<'Z݆$wv{`ājGH3& {S1w}(vq84[pN'4- Ck' 0+qTnZi}ud6M> v)= Nۨܽs?ڧk'7Iʊ /)FY\}yf@P_7Bc]N3nq&`ŎO奉-ۅ8[{c; >j6R: ]zt*|2j6Ae_=.GBOsE|AS2`M}:AQ6)#ʷŊ,N:OjU:vhktWC 06IG#SRe$P9eWWH_ e_'u8`zpyLJ= R|J&%+} $[b1`L6-@ǥ; v8CвVw7O3slp1ʫbW]\Bu-Y?OJ>ي_'ʷ+vbױtD/:{ԽOQ(f $s}sFgp`r*z&jlz.tzcl GF36 g a JUnMpUPĀ otyN<|dc`J6C#|5,nndTP36NDn'Hu (})żqyQEpEg៭}\~>sQ;iZ1,5k aCFΟr314Q55ҙ3Fb;&0S=;7|`r`+tB7 vgg!sC' N^nPd?EHBw}Y =O9N=dJƭ`I}r{n'wtkm |v׳T{ H#umAYiDՈXXnۗ 3ʶWĺwfChGdcNjVb ۑcjuEF6yl(=EQ'ʠ*q-Sl ?Xgs!AOC>D69*(]ӟxŢeֆL ()46ZJu.QYb8 Ct, l5kz>ݳ pcN9?Q8{!ܶ.CO> fYhhk~&/FwG@aRWY?.4$lq9]@ 8M%2᷃=!Uo^)ѯĵ[УBV*{cح>%zX};բ jnH[ʳkzp`VN3jvDu:Hfi.T39[vߪjidA%%Vm jd@aҰ|"0`U3 YJA >|#K*czH<`#bP bctߠi iQ({^?d{-Uj"o!c)F;(<X܁*(6.nLe $V"Q2S[}7Q m |P=spdljR;A#%gȣv8B>=\y^?) 90tNx<ٍ(J'Eeܩ3uHc0ga}4j~,3<3LnvA5`Te X!m a]G%,EWE5ICԀnEYZܓdԩ29q^]~/Ei OC؋3ny#YfO65k/-7yNFYaPX2l׶ج`- Ð16/3FO_M[ʓ#'s(Oiv$#ߦTD8=ol;T]A6: Jyn ^;Z5gma+w%p091rEhPEᔊ& [DGB}\Eֺ 2H=:fs` )~$ l˜w,O܉A?hss<@.qb{#h ^}~)w àe(R.X^@4>Lsg~NWvBzQB2Z='$ꬩPLˌEOѤP̮5̓Ӽ@yĕ!Xg1c܎Ѡ:ó##ЅXj\vVm Q8u@kp bT% Juz^ؤRVu|ht}qh(4A F+)̃$?L.WTGps0шq\s+._9Ov5D iҡ]NA D0XzV c*m=[Oc˰Ú{\UhšHMs {(?ΈgRmG>ua+~wt)z]kvt|iˌou*?$<6[$=8icT8 Df E;.#~JSء#_7~b=&h#vUS )"=٨IkE:H>MJ5͏;q *1 7mc 1+amrD~F4$MvU sMInj>߳: ܠЗ! l,n͸{Sؿn(` GA8#ݥƽ-fKmXÙDȣA'Jiwګ5'6$%:D#!3~?iymޜ6#w͵(yW)fw})VJͤԖzA8&]D-jaIG/!VX}?Ef7>ʤb#A|nns[Heԫ2GS1fwߦgs@?5cEjkoxgXMBN:>*C_yB],r+B⚽KF.?[u#_7RyӸvk|{O~M4#uQgDhY糟޵0F~vroeL`-xzV\!џuywr 9p7ʸ3RV}Q|ޛM)T*'89;7`Tn'үW.Ѹ~!È0qt]T 鞿3APıu8ͯ`4=ᢖ-z=KM,oF\O/JxM%yqBCfĠ8{VL=.Ue:)ZbF`&1l8uXوZ/~+&N Y ;K"'z64 s([-y}b[WUR(^|zr[s| vOm3 #*7*~VԘ% :G?n۸|T1~:kP>8ud0iywI|d=SQi T ɵ(l/Xyě@dwY]쾜h~(Uz K6bLGB_lxQm|tJ(: x8nы2b_~+#o9Q"L=6|%cxń0w$>;os"=5v> Oeƺ /bﴡ4Onr|slAh-lR=ֻvGb]BpyGg^7Z({ .W7df>̊dx=O=(Q2rM"ZXs>"PÓexԨrx@W]{t_}\NjBC MG5~'IQő. 0lLϙ V"m<;=u*&2FG Ovؙ$DQT+BG1$;0|'-5/.@虻vA ,r E/;/`cyp^h _|]kѺ3M#.HZ+ҩ絻w{| R@om*~j/7Pv?(<"BY5M>$h} E߳Vw׬wfkE)B~Ѳ6!ɠ+?=_8h)o Uܹ' kK 8!{e48dRPB|+ qE( uv"}W#G;O9XwSlտb<}M/Zz+Cof.幋KtG0(T+ύQ*`b̦=RS\T/*}qZ N 3e`CB<VkCO*9 w E6 %NQ0=ۈ-5{'L%l֓սA6w$E=2pPE |Z#cInݪ+I Q/,SGIaS/yp1"f%Z/JINO;*|"Ŏb+9[q iZ4\dkJ,5I7!F5ĩkt=bQliR xd2r|HHɑVR>2x+uqPjA}1*ImyTρ7֑]In@-`~GmRosW8ҝ.9MwW-b:֖A)jۓ>`2αCw?#,Wd%a>vfRQiuh 7F)];i5T~r-PDH.6m[H( efp\ \%vY*9CwouAat&x:7 9qMT5V"T0C [YaEdJ2b ^2s"E1x„3V aIpB}+u'j@Cbfk]LWzh }gZD;‹Ps ŨiLBNK_d'xH$ ӣA #@2yY 8_.P(>ImEq>m+B( e+IhEnVUd?SǚYS(2jK6dx;1񤄒]W.xH)/YD f HSuo͟LH8zw3 #` y94;Zuucڶ4ts${SɟZm/ BxMK uS*nwsSIV7l\?O$82r|aTnDWrdэ,iIX-l #mȘe[d.꛰aq'PEҷk18f M'ӑ%7I_C(O1[tbWW!zITG3lbpPsa-=QPM9sd8 v4j$Kknq m.O\y@ {?;P4_B!A +؟],z̮YB%p&{":e03d̼ 7c;4uтSLjYܰ@:}۬ ݢ9V-5Cz.l 4րЅFB= |O_CO2CfH^#--L+a'ǾA ;"A:m]o%b2Gǟ ndFB A" hd;\C H}Z &m<h\N(E`u .Gے 3 >=ե/2%TtJbF_>b4nߧlg[+s`0b< 2"hэN4*- E*c἖:DE{%lyV~vYku9&'B_FZAQvdabXW} pr !4 =NmLD~a"@8d׉փ6~K#'AߦX9cqȾ-o*Tڿŭ8VTӄN:XƲ(jYAKZK4?2P2;eer(>`<|Pkp g"49>Z>uPTIpLA_p-7! gzztj&(;ʘúq"r7(㓃͙NcT+sڄ6cd5a쁎y ™hdz17Z"x#_#)V7|/'bwwL) Č+:}Q7Dq~uB-~zdjn6&D.Mn(KO}R4&Ə˽mz=5(2*Me 헖ˣa4?q >d֥hEd~3Wtp09T f#G-1Y8KG }#FKnKRYjޢ>NAP"5}lޣu[Xz FX4 fi)xVOy]'A>}̓l_P[tYv8ڎekw`*+x;ΣG #a{:TMW 8fD ]y7yd|ԾP쁮Kx lD>tLOP4,vnNY[NsO+1NpHos@Ź5%GNT;s5CyčR{>Mt07.¥|vSTؖUzeQmKtewvI)h, 2W+Sm쟙~v.4QsǔbZ}ijL1̯[P{^z ̯Zwì-r)i#'\HU`Dn;R<;}޲jaUv{@]&%i\ 2ى`h.k?CV%G4a)t2_ ICgVё^Z^D4BܷunTtv}*@΁dʛWOmˊ_v1FJI5nZ 9GHoْWG{-*9~p6a%ORX2!Jߚ WQ1m%nnhQtsU$tzc"&jqpRp,`^iTߢH\߀9ok ]t #N9O \ʾ?FdžM3IKxPquY<- ,m? CPAdCˬ/rnl2I| j84r!}V|eN@^b0l\4Hܕ 嬁I])zF|X7 gL9Oqhdy-٦ŸGnq = RK֣Ÿ'rNJ(k,&sϔz!.~gKzf_4Pe# x,M4HWшўz,~ ı5ּ5 3UM}GsaO홚9k!˝b!iVzFӯj)5J,3Xr|OBH^OUžak^~t ~RD'=IGީUB۫:e*%4(@1[f LBˊ!sKrӳqэ:$S'?Yȗaq !.p3;J ]"6-xL>$%}X,)QeMx {⯜Wt^5J{G&t?Ug7~( euD A(NCfƶ{a7K޳?*BsL:F! `Nx!ZF]wa~$"bf5K\dr 2Q׀ yjJv!(LQLruŶZ5|^k }@4*<^Fޘ$z*WYȠzށ@) Xü0njVa~5(jO 4ur}_ǒBl:b+ !Ė!JdNʿX ƞI3Q䖫Oۣԗ3Ae8lJϠ_&B(Ҟ ڊ#u+rY%Iueyd AP.꒽(UN˦MD(8ѫ:ALS1u8j夰x>r?6\c. n$h_1sj>jKJNOG>˄A!M9^EVC ȗΨZĀ^|ZY `ep  ԧ*gwK}WS9 p07jCUFh}^O0g ,w qL 貋.wD1ɟ쫏aa3J#-8;a M"0!,fa0{Mo{ Yg<p)`cw;ƧWKQoMMի vhdUnmuF_]|CFe91jx^sAfl,_UHBj]2Ϋ^ Yg@ha{ p7\km^p>t*1rid6aiI(+g%2dZ7ǬS[~a'b^lM ro4P~IdwErFl\$~;_j:?f{cђN1-=gtQ_2(v|mLA+ݰs@ /YҰ{xO?}Wo_,^3D&a`͂j_i98TofCQ!'E`koF~7tRVڡ"+2S9x'ӕ9ʝ5krq) }:S~yh͘uEBx@PZ#*| <6hiT2iO!v3mp-ZlnÐcަU6ʞfsخ4X 9OHk]tG@TuePl`_l W53C5_ґ#BMzz+`Ѳcϡ[+ocoh"l?v#;qfZDxHGL~é|`KR#K옍2Mur!H=-$\1w ua1`nWtH*>إRȓTsu"nl"X-kqﮂ:#w;MFgl~i{//AW8Lç)}o<ʡ;m$$#Ir~AUt0#gdU D=6 ]VBЦ={PBqP`IMo᫐[ b{\G2OZ0gLޕLg7q>7Oj0g)bdi0t!|N>i1$t$_{u+_oV+$ZLT %^EԨцs$g'ٓ"< F 2h"5bŢüɲ|c}*LR,E91gO>)x5󱮞r }Gt _$q鸗Z5xr dFps㬝tB рiSgg'JUtY8(ц>i6#D?-a< o`[dĤ7 +'1%/;=zhs y\2\B$pSoڥ3#ih'{\aD Z_'ײ9?塧8tGgGX{ƄSۛ]3fc`Ŀ1]D~1[$fmE,H՟MэS6}V]lX'I#M\4_$Fc F?9 Dy&]005*oa@@ .];l~(Ӌ9(oddI‰77z8{ ^LM$Yݽ/|]xyU >U\k}Ť(>NjI,vc lIdH E^1zYGO⾳R-c4j0k;v5WueX|$͵?܅ e}']0ff̛XB'ҼLeLCm #^W ˕ +fBHmc}Póq8gvFmLq)tO:I5_ӌ}nn!pL\uT'::ewb"d "$٘릅4(GީO_&Iևe ;\-0 >%ׇQ*e.z{ ?CuyER N̔X#56a}~+%8{(V@/TbXf So%⛦cҵ=YQ}@e@e#yA ofƸ.YdoV5mvIc`hKۺ,5l>"hddR#jhD߂ZAz20J69=ƻݤBV2 FuRKzA7Ezs9^͠e9 2Gĭ3*sLe#aP8ZʂyKcNLhXqΜM<Ê[+?X_|w+؅աK $}FF KP4}фIR܈ ب곖\ی˯H~ɜ0$DhuEuH~o .L Ԓ!h0 v70sFgkTI'۩\P]Mo&%BUmPP_TAD]oU5c>B1hHiuFU B;8x=d 5U!Oאf7̵;shg//lg<(/b6]3„yzYӶݿz++ 5C:4av<B|O)3Ҽ߃4Y$^pmO;wψpT?,ض,RŝH,tA_׍S1rm{gP5 { d#yb$ R̍5~c5,Rzla(&|3(+d|A]l^gz~I lLsp4h_z oh8SKp`D:.Wp=,EF?*2{p\fC6B{" bf15/E^ﭪ^>e M+9lcG&X'}9_@.av9U ݬs 16VepŹUV({#Ӧ@鰥qf7^,KlkyވI`GV|VZǗ_jIܐÉWa{VW} yےrio\eB&9`|27Pn1M4 &&O {vpUM_]a 1>m;bU9 T?>kw_uB!~:Xkiyc ng< ^~K'StBZ*7idBO|~W9oK ^rDLx ,&Sʋ.z!dVz\)LE# NH6PPadd)]PMUp*y)2 jZPUÉD싿ݠ= Cw p l~'ěu\koc Zo2 _wv @^}'YY\n)=#_Fw"Uɋ6 O"L69<53<dʓN=3T,;I m.2`+|Ҭ fYEP? E~Qid TrᴎEnQAw 9 ˠ6@%`,QeU!|zsCW|SfTq(o4]=c~늬YlG4-F.&nA P2g=l)3.yuu"3bY,HW`%B:%) %O \fv0hU-t-!F"H#ݕP1֊AGXnN/ OrG&$ӊ. mʼݬS)*}?TV'cPZ}$#g{fLb<Ƭ "kQ]o',T?sb^/ Rb4Ӡs#.k7(ǟF1eo-/r'c`)uP+:(puUZ+J`\r%eBsBytEhG ooũd FbJ׬S *rƘE6>1X,oͫJڎ`Mf SXyHmZȎ7\b vbV™0L~jJ׽ tW{9'4 u*#<߻(tyuHuVK0 x?!C'dIIZ}ȡweYo;p>SI^—DʩZ Y_%&ȑÜ6ʾ'AW5Js$HASp֩P'pm (*Z}#E|-}:]zՅ/M&u2'*NT^m$65ETL>AHBdayh%^NPQTӘ9M}(r•¸R[Lu yyje:ϚifpgܸE\/L,^@% xLLX:Wq:{ Wa){f8cUp}/!LC3MepcB-nw|;߁C%= m~[(ۊ6c>WR&C:xvb pO=~/ao4I?[YoU(RQsO%ey&uYZ3߄Q\-OB"|D"!/G!ynC0?Ln\rk{#OND,JWn I=G٢)6@UGGf=Xe@9.e!}A9#+>< pk@3˻kܮr ۠; HϊaDDPj.r` 2kB.{Jjlx%AoˆT s|`4,w xH.D3܁~RC(vٴ'Ø26Q&f V>4W .߹ƿA($_G $j_}hݡ۹3KDB'm4KwExVo-|h ZNnrĸʮ##=\y/99rf\8uT>i2m(BQ ŠN{Vw AuSpr:GBAi|0eҟl1uO̔&f gUtjㆹ$Z,F"Us/l{zzSSg$2jޟziw/Ufl~7)r<{2jfd- C";jeۿhߕ#SһAAҙŰuQ朼v36;F gւ&kJ]1+@;R32SPb/}#!LSS%1j1wZ׆;"((ՔTɿQ;чdψg2$B(z-&Y!*Kb6̵6-OV\ТOz+`TpLxsIEx P7xZo\Z(M=$b v\#jIm;E4\o6kD7b)֒緖%a%MzW2sEa7j^ɠoR!eMrq9ogzWN(J;7M"eUbK/}(9%Yzqa 89o/{+ej뒬nY#v~Hͳt¶uUE_`IupтxcUUf(])G'A.9(Z1Ded@\HLrC=fvQ9{1D\`.LLX# J~Vaa/7+d WT|zgcu+tGΒ`¼-Y8%d7܇aU){!9%kVNCN+5RQ3.9xdhJ[ M 1R .qryOf>ȸ9Ja=t B>LwbRʴT.72TNo{LCPYv`B(F1NOY' tqceЃw_~[w6yv򙒼ꤺțāN !٨AEJ?'=7RRvBmQ# pC^e*D T7q1 u}rޡ0Bɕ@{&htVd1AO=aq%DjkVfY8]߫Tb7 YXPWee."m&m iď*5笷3" hPA[a -j~ygbLH;&ELJeWY.r zLBskn?á=ɅhFX$ z]f3fh#*-x}3W9RG4W^~`箻ܷR5wIju(|M .EURH*;֩LZ9qVS *:Y_a<jO>k+sT4KSVjd5$(Sћ-*eb֌W+>(WJgh-ÝLα5p}v6]/=.'s >^}q{߿| ^E@jG)N_|}!jcCh$Q]j)kֵX6z\|&j^l/.26ZЀy?ʫ])'{-KV8J<,4x| u,G1a;2a! KR%Cw<⥏D liGvD tvFeP` ʡ8fubq38O38K@In#ZXcG\ׂZ풠/P42k&px|w[:b齀ShQ݂hO4I'mú8'Pmfj?Ksl$K>=.SXLO3\DB`c4ݻEO40,x/|o,HL oKK#>֒ɡG󡝣xY„Yfp |JdNQ#OGp& xlB>7>&JR;7j;'@L~!@o>糔/r5}IG¬_Q+ w Jvʼn} szymXߜx2GCD "^qdxOCASіku4ϛ 9e} m̙}v,n%$a# 5f ~C (^+^2<A U_ V6BUh_A$}bSh04gb3tn6ZLj x3T!' 2q0j9/cZi1^`%QY&O}.޷iVWg|-39VQ p4C)l1{|v4 zoݛ6\_jRү].Vd\{P&׫0F~ ^Y04Fl'W 'X FqS S"Y_Gl<;Sz[$bFBr_/UpáV kn/Xe }ɿcۓvMcK ]*m4tz^s1ijq_$J1yva~G /:O#l?bJy!%yg´ZhK("uvk͂߸'[JʨU7 9!'37;ҡ7wPlD\ZAsL2d*=ୂ F]PaC_>*[+Zu@dOҲZ3GQ/ ,C)@2'dRoOls>i;WӚC*1$[Em9Ӟ=B{&#[Vq1cd%l+Zs푨d\0X;ca8xi[Et3 /bFk92.zC XY\Dҟgu ]>,Q]Aֿz)#,&mX;>6nOZO{ܘ%=75~S2;R[لgeleŖa/mF^Fd a@tYv.7Lj6e9m阼eo 7nfwImS) -l{h|AJfrn+e_&Y{/gM-07wq%,Kur7lgt^GscNL /e!Q *%cyv`UWa &[-uXC ,.MHo7Z~vZdƐD0;WU^aGOMRK)vGZ:+[2i͙H%WZ Pw+X!([D Rn0]iYTS M9 IkڈjSDFl̾n}c%JE,-/ʱW/V6'-| Vb̗<_l.X7BM0$ól@I 4\|MDy("4JZs:3A@ˠx2:4! oqϘmhg|!rœHm0bKh ҅ !'GZюd(qM\v(IT2; n0 g6PdϢgs"%˷yPń!~vQLknSBcp-E"l: KuҏRlH:a}5T|ˎ!20')q\]~cW[fg{*HI<{tiz)k@Q(\H\&ҫ Љk]nVt 4wvkARy>n"/~Z3ċyJ'"%!@>9`mg`j|C՝jS\"\SP 5mȝ ;h#+&Q\rZwA'ڇRofHkF=M:NqU&晖 S+35Wd"0pK y%A׮~a` ,_ FOhE,? NK-ʈV>EM }!Yy3n3uh68k;k҄6ׇܺc+|B:`<9]sտ~4driTK֞.V3-̪̽ŝ/ZQ/(YsN*i2(965bl m |dH fi@ :Qu,s3^[. ֥F>A|>[Na,]$-g+hqZ\,s!Qѓ?w/] &RO4OySlDꪙ.W!kȳ"8)U~0<@!clo1?Ckh̸(WVȗ9ӵZWo[#M;6xn3^]Xm[~u=98F<>+c>۫Hrv1=qLK}v  ן$c3iuߩ ](M,cK)n0 %h'tiLi"fо!2$n8AcnMiO wPX:t RF w\ykE&i&сPp" xK,厞cLqV9O6M[mR֕Z1;6[XJ1Sp/Bo.ӹq]9.`ڔZoG %ۿ5hiNAQ2KܛΒv:\,CBFRI-ɟj=6(9b%{_usV6N>ۭ[sU%u%,x F Lksyƍsy^rY&>ưYsM;tF˵vlNȸTR(u*m2I^_)MqCR!e\!4S[XyLg>xzp&Ke%BPv—gBDm2e9b$Yؠˍ~o>da﵎ 3a4# 6^}[8z0 8Rthu AxroKFr./}!WxHş[-: m}X4Nzj\-(koO\ AjsHS^LW0quIotJП}?RG9ei.;b~6ΚAqAnq(?>ۼFVH+$ O-EAYtTsǫsU +>.W< !A?ɃECMyg98/dy>4/eFL`({LK+ClnY1avNjQ 5#\[Iu\,afl-{bd|_|1iVH"`.Mԫ^̆h &ʥX"z]r6u-u:Prm-s뚲&u(ez/fvs?(Q{p=۱xMjM7+|sWxo͸_̦vSV4}X}Sg M+&H!f@eH\ ̆," @%x|K%^]`i#|%@AY ^ypV ]w:,I 40M`nSCK'*1ڴѠN;U3c'YUጬ(uw+FQu:Af55kFĜV)ƒ|hDgs8ek1~yD5SK@LZOk $j"9b0r +?caGŵqG >g0xx yƦ|X}cO Pa9FI#Wmd XDŽ{@22dž:}6<WO$oE1Ѽ!<8EuSN-KG =@x{5SU?(8bׂO?n N7PAf@2Ql~$r9ڕvV_n\ Y"=z LCw[ Eő_KSBzS :m__6oOX@;Ov&dKI8NXZeT5CѸMib2(D64 = Mf߮`}/4ik_(D1 b.Q'347{0 _0%]p4 ϥ_O *y"XJ ^ٖ\-nӕjwwsRm}Rb,TM ߼!"{Gj&6Kl&u⓮$4ʕzݸ=p%$< ןfdkvzMj"n u5VOb9qmVpA6fK]Nogг&RZddX.Na`|&y %:eMv^Pɸ %*Ga31`M=;A>XvJ"0nSu|@N J,q#3TT6bZ| ľoϥN%FA:xqذBlf5$I5N^bY Uެe OhȎrVv+ ݎia0#ITw-^>iyu/ K#*WWXds"|pHt)$|Ү(DwvѼN{-=+hJB7ɓ+z;rnx0& zJ&\EA./`/JH'kZsII e !PS )9 G֖ DEY,uHgY!Zo ;=xo(!94T\1RyO|ˤsW~JkG *ٲHQֿ7һIV.BNv=X#)mۯI"%[ݗ2w 0Ԙ[lzp<!NZwp]۱;)k9Rg` 7ɝ6paXL,&"~q_uŇ[‚^f+x7wl>Ċf3>Y deS-1}@pgY[p>[*6y҈Y\2Gnd^,#². ތbv2nVhf$ fc_'?ϼA_}*nFnQyN~YF`ge5W̙K"zeFKRl|*)]OVW?ܭuL>'g?h@H/ώ[>;h>Z={4~sDZ=/ڸG&e;YQDzwן6[i@ z N&4⎥]piLͤt BoF|7SkV~,5]P𹠏 L';sDڷ D>j鍟RG'1"92gJǭY3lp# ~3]گ+b|n3̊7xҰ'$#B S ]bsR "j #"S5DgCR;Uk@ڍdAO2& sp{8c$83d3Vq\/|}TԒ{$̻>PFR= NgOh'6%ce)1rv`&9VYFiFpk76Ue=. zmue_gG, 1%QUnT}fNJH$YFK*Ff*v4s 1Q8C@;۩%K 1JUEVk,iXC JNPLX x#s[tX'U_$D%D>gEqSp]ZW"NL $B ou5K (aT^˙CT,Iڴh~$DC'inHu3 @aR]~)Fr4P}=*MϫhDOl(F #iW x-tɠB}TUlp;)OX!Ri#$R 5FO~N%Cڨt~uC7$^儔5+ӕ ˴,tiylWc}<+yR QWx2CDT Ėϛ:aOI|#6="Onl!@"CU|OoP34JFo {]BB%,X* :Bo@.qŞwoԆ{ A_r!Ou+TFBNTcN8>Xec..Fi>rd577|^ ISpCk քoP-ͰP8E%VI%x@%{LE0`ExGdq6o#Fxڴ IZ&UgD\ltv.99?7+i(KBDZv/jLD&aA4aIjr&.&ey0?i  [K:P+q :|cX7#K7tLI\)]Xx,[eypD_w}h宦4CR._z]fm2AUǨi9Py P0]&1p4%g\Nqj6c6q R2uј tQFh?FBi3ATWV&nEd~8X>0hhWۂפw`oY%c дdnJ]\Z5@eƸ 8ZvKMdž}#Ui]4\Ζ dx5m8CTN5ϱhϧҲ\(Zi=C*we9串/GbvnZTd?'*3Io>\''YF;zAm9İi \HeP"k\*}Y!#\GqkQ AcWυ`Bʵ>05{pZB[Ƚǐz^xE>ڏYX%Z܊Ϲ{=h} $HRߝB@i齕3xdrոp'W 1H]6DQunFlV H1l8ll9u KZ{.dVr,#99yRtii*!!VVtGDhpۄ}R1%-ȫX20H.n|uv@j[i(fJ=L&1cٜ,>T܄uvhQ= Œz!pnR,'F~qwEg ɇߖ0 PW+sNXG?Yn~-%h3m#(y^n*oht #5ʜfCFϫzM,kf窺71Ǯp~}N{ G=J3; ?`nDm}?ܰ ɕYVl3g#UGDBqt:dhR*)JE^jwʾ:*pg:4ޠNwƁČ~15IX>j}j6Ȋ$TO$VlYHyP\62#7 {P73xdgw}irAsxɋx؈z  ~\<: Q?aDTEJ!i*.))ƴͭ>O)kEVxy ʙTX難94Y܉hްEJ֦v9( sy$C9I#mn ]&]ݕhN`IZoE10I& D![#,lY|7 .೮GտWծed3 jR ƶW6^+)|UXJ)hԏ[߯ .YX*5nl89 ޕ2&  9LZR+.k~qo֗? }*j cSLk"q/|jGɢk&XQN/SW,E @&Zi³ ֙,޺`gJy"`&cfW1RQ,|5:Z\co5D* GL2>h,Naq,S ֢L4-4<߽pЮ_bI ;p{ܧ?wvAΎ#yc?x EdןD/$լ>Ɨ.?)}JM}akxwU'cªt-.5pd9'I|5?F۷wb}:4.)K]j9κ~ұf8BVST㾧 %*F<=>թ\-#%h6!]p*5>"P~EF>&z|_}x)w;h0UqllSG~nnIj#ŖS PLfD1SXmm$LF7k)i@Ow ,tT?48"N ] HhC i!_(h Vlra[1_1K SB *<Ν3PDDTs¶XpT5YH*FA-wcO&q)X Q70;޳>1qԂB|LCG2INhl):Q>C/k79:2Ai|l[&F:&(5+ǫP,#ٔGfC C-cY/DһJw̄vrb3}+h}s }–ɝpl}o" +؂%,xbNLJ{W=OVۻuN8n]r˓wIR!4wҗ$ #Żz_-k @}DGCK_aip_ 4BbW?K23+~Rx |/20Z߾;98XXrՒQ45Fqd|lJ)C$EfmYlK&n3V}Uq^;kUd18wkN^6`QU $-v<2_D ^0 BeJT+1I/huߙ/&#kρ|GGIx9>{65SNƯ/KOXp,ﴄ\ Z=l\[؆}MejR1BXy[1g/{~£7k5kҩ'<.b^.q,j)j4K=m&1Na"1ų3ae5ʚ7+ټNA4!S/qk6Mc="bYv VzpR܌o6^#i>KZ8Ҩ?IjJLE c'E2 G;"MѩrJ&{,=D^BXu =M^ch \WRի B f7 `Tb=sqCmV1dEi*KݻE#H&M`Ϋt-B:s]T), B=ܟ3wʅ!i|‹Z6:zOVR(wo]#%zV 6WG vh.+csv7+Nn=w.s9 X 6=InVTf,`IS}bS %@>* `uP3!sRċIvթPCu"&~!tUIy3ru -e%,3'sFqcbpR?}Ao@S/5q$y l'>:35`oɼh|ظ>굩1#(|3{y 38zZiYⰛc(_\;kV (^z̤K~ŽOo)W8zv8ʔIAiv"T^?oST#%[)[Γ`03Je6'F[h .1KWFH.yH3_` mQv kH`t#)-vS$CTI){i$ݹmKV3Rt21dLvnIuވ"{&A?G :kotս˚9M۞6L)S>c绞,'AE||):4D 4`,/aqWu(.=>[*60{*;) Vq;=vlO>;6 `Uy|^nLVӊ>ÉHE<:O i*x TY e R%n=@>ԇ+-A ;+L+vEcͶOKvDf VPJ)Éqs<]J̡! D4~Ku `Mz%^yIEH>4(Ha:ՓJ]ssO! l<;`)H@!Fa,Ј,Eߎ2e\ '8Q{65Nu9ZǨA Ë9oK< 31DpaE7]V8/I0 LmJ7/ jmE9}?.KCρtM\/.<~rE.i:b|g^k8Z:gmt4wUHk}ӾڼBpeֶv[iʌDE93LZޱmN kL}׽3:7c]ܯP'x@<$l4_j=|La զ㘁ѧvr'JZ9D+},`_W! u/#gc=9ܤ9?JZiRVƔ}UhsفFKfhg2p4S(F-푟3!񔽟#+a3&bY㸊^L͂Qy A/Vӛk}9?3ʔ/%gt Zw+PAc𿮷LiQl3wbU3DD mR־zHtk[ @Vq$Sz8=lޕ}Z D9/,֥DV(zhgDZlĬ#h 7 2oXQZ I &C 1;߼׼i?M= k4%›w[NU3u&lE 1+.1΄|?s:*A \r9-;?i|T~.Z`Ą?@E:Y CY|eN]':]5 ڕd`'9Rpuc\mWB6ְ\bXܝ(F4淨Z{ iqocOYRM'xA>$_$QGC~O&xbaZQ"%@@X=S(h%FdPVIvWU/oɞo w1Q.įK+fGtYGǽ_M쮽9/ T&-zZ"{&h(G;-;c.˱r$i_堺e9:=D>X,(BH2GLuoȵZrxh pE\@♅ 4ƿoe7)#(S v5>{ *ooB~Ǯ^TVŶsSԘuZ'[-Qvy06&iITW.4{NIGVhk-Gm [+O!&+H0rmD &m^lG\t3XuC/ܓa<{FzTWR + %SaQ3! ]\^pL/7jUa^=[ v|]y;<L^}q{8gKxcMC{mI3[m~]yB8l{&bu +EI21r1ˡғH'̼vu!*˭W% !`g1ƸddsxCs6| p"{ erk3J QBHCːcKVn0T-NE7-'d]48Xj3a VW!*φ(3喻m(%s50n\9"*J{uEM׾S.KBdu 2MM@q8ؙ'bS2ՕC࿰ʍEjb26'<誹TKW79rCX)`2&'7eA(97{p}k6/͝s?-{Ǎm[7\^ZF[ӹ #[!lr 5"T|ffRAq9ếۆ0j]wY :k>7j @C#ygDæXgHV*0v_YrRȶ$R{K8 bKvRXҠUNqf e+)(l `#4Lt׬.Ug >/{@@'-2NJo'zCu!6?8ugHX:SY5!pqh8T[/)1a.aA|{!zQ 'wVTym<8%vZ9OTikOUl3~\I鿍!"~wk/t,C#cP2k_Xyp_no3r&PZC&ءLf%PBMȀӧlVuj>D.?zXWQ#%LރpG|%G?/'Қչv_  S|= +;"20TBi|FyݹԂODX1"ꮌ?/a1u gb+"CIJPhu}Bkaa,CKy}LA]i;?LMJǵ}2O'>ˌqë]vꃈQ\ބ_HOW{}epܜOD-B,&.v?. 1[>AG29HMp|k4OS?.v\7\/ i+L va8FncB _ɨ*.: p&F^^qvCx'׀^V^(.cPP3#~PW>+.Mn %g­1K0>y|qNfr J'RmseOt9;,NMiE牁P&RTFznRCQ #ԟHe6 %vC͏U.KE/%dQ/=3\HIᣎ_#lg|I ÷;۽3ރC\c*F'І&[#rDc9%2s eɷz?6<昝cy:PH)SMG4d!9t),4(aΞMSǐiM i~!&j9JZ @xH3 t˲{#BJֹL6<.E@(8كSuQ&: +w,8O[*iKӇ5\-\ uc?%u+pIjzҧMPxdlHk(/R eb Z0C:οJsSpl>Ub0)g6K$yڶIFqdѓw4|b 8-Y*c MJ:gX) ߖ<H"֣L5v:U*Y)2g#w OQ#LI!X 1DK[?Cbٓi0@ջ<,Z'PJ6ǞݲŘR`GMCV53p3Vٽvu +RvpDQY o3#dIь̂/rكt'9ڋ%7Fw-N_\d2ʟ0cO"{|;xˁ:̘SlMgNcPǝ1 S mABF@=ڸ`*JYd/ĚR\2G*4m<&@]^<DD  6Mg[?%A6V0K!@C bWdzHz&*w9k :f$&,3ĝڨM=,j+I F';7֣]_됐Ut!E$^RJD'a-]޿V>qQmEdB'oV=/YTa͈ᮃH=ҲMJ=[TD3hW-OWpьjJN"I|՘,aaB|3F㮓~]9?qRh/CuJ_p >eNb$mShûrF#ff `k- x􀦺}Q)ykOg~%!o$'.Rk/HәfhD̯^/W;{8& KN!U:S wNc@.n :4pFTӠP }E$2 T,8$y[>T $X=ɰ"K%C\ C*R鍜qQAϟlM!;YLfnk/ q]A my1KJ]ܧ*J\.dٻNqݗ|R^%L`~7`(fOIL悩Ou<H{kQI_X4w-R6ie6@,! ݁5ȝ'IUcOYbۋذH!T,KT޲O-nFZN{k`)f١ܶv$ D^WA, 9S΀jQ$؊kjA g nDQd"cB(gQBNiqSDDbALE/@p@a)U YŁəg7H$V.ŧZD*Ӫ/_x_<㓭Ԇy1rX5Of_[yYl :642N pjNllY'8֞9lQG `fI5$ hrRڄ=aKA<)BbaasOTد\z\+N7^ &/ Tk* 8ܑ˺MI@nis) ݊ܞEz1%-;3~ײy#= IC&iYu-=b҉S㖖s#}0pDM p2 '.JB=YtBU^?RGΆTv@7u]FwZrj 8'63t@XZS[$Q:hAO&= fYI 19;͊ ^EĦ]0xCJڱG&(?Ad~R^|i R+hi,VCnLupKם@/rw(iяnz0bmO|sWow'&҆Bbm?ݢ ݥ2F1׉i-rVYrwR`8kƿ %&OAe=ɲ7T.oCf<klxUهTmEɥ8 o 8-O4Թ)YuxA+) ,6=kM4n^m-X4lQQ3Klc 9 KX\*ul.܎uWdnVe Z3moq13MoU.SA5h|OQHT`\k9.T}L77*-Ũ".^}Li*bLwNH$UADv:8kӨtֈ{j'h/!aA>ȃKS9?9%֒H;pOnb3f!DT6@[sƣ$^eyA\i=6M6,W(JK9&t#;| h%$'IYvxMIب>L#|"]N6ǑPEY/Pmɨ) yCIHo #(R5[VoW,z/$T/~Y)]v,T887b )BEfgrb=Sno#If(bK2)l:\(@bhZ?_Yy",˽@6 hW WT{'_'>DOg?^Pv NNv B^|x4(sUq쩭e=E+MmGl;>MMZl09 =^XHR~ft Ji=^,gA\oኵ }gRf>1Jo}I8MG8"|acD(C ӤCLH,CO4;V)ӺQq!czfn92d?׿d\㉏1#XOEK!Z]Q51~Sץ|M<8^yd%t IBûi7c1b\H mZj)i`3U rpˊՀ@pcr#<6Dvt5>2G?9S ]BU}@,Q?LK~͔a`4HŹ.X!R昕{};H'S9M`qKg'i/ѐ q&^ 0FSp:_=ιy4w<@ޫR,Awa?y{)`@?eM >k؎ҪvwY#rdm`L/J{}/6d~a,u(2<ӴX eͦjŞH>dL"Dr.:a0R /H%Bѭ yuz,`;3+ ԄaΓ>\g{F0=@,U]F%XM/+%y3= Ɣ[i7MS.ȇ=ەnY:b*_BūH'[YM ǡcKO)2WS.P%Ե\ BK"v( \';u19f}w*ĈD)A_(Ep(S8{{@(P]eQh`ZY26DֲqaVH k-Հ.7V: rתATl f?̴2-@(Y4MEhZ ݹۯf}{q#l ?,cON-,->m~4:kzB?{.2A;}~_GWPmYCLЯe QS5G᧚8pRxE 84W\綛2uqwaC+W sil@8S FYD. pmRW"?r y}U咚@^Ùjs2c2)EV I7zTgoUoe:M[NN,cI' ; ޮ6Gtj$]}f8'{H2Z`/mNx!;䵭BlBLA;:֮?15}ox1ooRh,:r]v+-e4ݸM,Es =rMtvdޡ $}W=?yu:̖JO瞉W)?;d̿/w2jw҆A 5[ )o|Ґ%)gKl`iSW.dUE;tսI* v786= gN4\G04Q}C  *O7Hmt|[*Q{hϵk=w#*I3n+ 62ړmBu[hh8EsNMC(eX'oooh7 ? x?~mwh{z L!8b3]-]dI\0>&yWEHhl_%Q3fo>CTiND3E+7=^qZ<ۺ9y,ڊf*\*e:" O9A}c)w/PVƙ?-݇ egL[^4вOH';3mFUIL)2Gޯ :L4:]5c-\GC,mZ.:xXOakEI9Hpd { dz0)ZN [|c1 [BAZʟVQhfCH֕/ͿB3d?85 _7+dfPG6`]o&z%'T* ,+maJE Sl̋ڔ@oQQHQC~[4>-KOu!^XHRB Fܲ," %1G)-&1h8fjE ]0NIa17hpKE 2yy.,K9$\k/W>C2Khϝ+B:l=]:NKSi8. ^iX=6$`7 ZLΞ,<;,++Ԋ `S-N5?f-t6*PE3'<Թ/+ۣvn'IFP޼謽4>ƱCAC"3d({=S:'DS"@jS>K3.\*ѬW`|N'_ &}ڒđݯh ,h˯Xb&yAT,=9PrF6' j#qT $̪_H{n7#|+86 Y{'lpX(Aǝ6Gbmv@^H%41&JnCmƊZDžڋ)# g"y)P0 %a>9Ā؈,N R xc聈(?Tb,!t<_ F[ 4s( ?%Y5傫Eɮ)%ʨL&D~PR,d!P8 d&tʱúfh(O1*^!= Ѿg zp CVM*1%3;{A}$2mUp]? uńz#G@c =҅~I6asEp)ӣp9 i D٠G:՘<P]l"J2'W[E='7.LWܓ9T90U q"gy, {cA~J=p2r#s帗J AM5\Wlˀ 3Qo/fK# pM_.@6=:%I#o!v"^2`נ0=k^ 3鴀,0)HcЎn׿A\M iRAͥZkʩ !~\m"t9ECyBWFd3fAszN' .7@Z4RvPS'8“'I|׶1AoשvyUR}%ݚt \#X>tH*cpMK2'aB2ݕQ-:jV.dZ_3Lh2ѻ+Cƛɾi=y;* - 'SCӽvb} *YƔf5I]X5=WR}zv_\PGeyEܱgOx>덅+Lh 'vL?rCqU~%&65^m)*{PyR^ 6+U(w)^k!Jv}E*LV0\.0MgncЇ5 ?Ӈ#d?6VI4 w9vuwx1b%LG_e4IP\q%IQjP~ oкrl~ Nk3O :7Cv+$dn:uَĉG$P">(w0֯Q0rgSoww'[ua7#2L!5ȂhtO+;iA'2dbI\oa'X*tBHh:icfL':AVJ֞PPN7*z@j5/G"A0u<'M=A iiEYUq(1rJh$zu'r<x/g+ k۳)Rq *\y1/ʝ8̎q/)5FlTN^+pq⟬QP݅P.{w0nЂuS쌿mpc@pSsaO)=FC9 _xATY]i"ՂIhJ^ rI :i}'86S-噡K2rI@1Ak!ɛk(ڷy2})W>@}"IP.])~H5- <"Um[L7ja8@Er7taW53=á=']4f"Z$"M1ۓW*#imn-<`L9[]7DűDh)3J{D5x<9,ϲ KΞ B2 VNW=_K%?z|5,qv/eH+?Il_u9z~t4QIu>$>5THWٺ۶C71Q!kF$t1.3Y͐ls-E:Ȉ8aӯXoc!HɛXEM:ţK!HH70/[2VGqC L ްq$fg}Oh{hy[RUf9  ^X(]" oWeuri]U [ :Z0l YwԺ"R0/zxxNߍ<G꽊n+&ה]A_K:eㅷ?d%;Yf({pOhf$rn4}JbaEqW#!j=G:H+ܙdC| Q.c0On\~K[JuL'"ؖ:%>6e N wvd菘aPc#twl7T7mS}3!`=o܊[j3{͚{2Dv}?0(Z~۾0՜=: 2E@x$\8YP&/{vڵLn1f*,E#Q?=cjX{YtkNǽeA +LUS.hn \֌7ĿT(G dOsoq-c^FBZ%.-5X ?ML@ <9IV+,Jh}baΈɑ{ԎFܫ.щ Ty.ʧ(ʖ@px?ƎjSa9 a>{”MA FÔiI#س c* p :UF 19n v! ͘ho[!.P =sؠe9I3My~Ni2QkQY..kG2ekt. ߃+X'A0OH$hz)o֧@B[+?~PwIjѪׂyd sPǩHLG'4TӺ$b]l$];Cۤ 4IJ@KCzLջMq6>zJo᭽rm>Lއi,"2ىClkIo߰~d~hp}a. hƛ 1>>;׍Ęd3Ѐ7 HH+x~ҜA!EՄZѮ c|Ss.^e"1n3x׮ȑonghVQpm r[2nBC>2`ދS$b.nk1wE@5ZTHe ,agkv"Е|[xW)q=CF#U7I8/,N=씡xB<*q_B4qgCpcgin3~56guk %oiC̴_A|NYN#4/϶ v ψ Rۋ^JߍkC%.,^riR)4w3e[ǍITmݞJ ͟߸H7Vag]˛^czy4֐MUAߔ{hEsU]K\Cqpwo;s-/8O%&b.pXMh2!طq,\p&XUfuU 4^ 1/X [R]tixM˄zQ$хFnVMN$3;/Nw@( %YcU F|2:n_oNa'-!7 ^65z ڒHYJi^_e{X\oV_#_ϥY.,bf4w! ,kOЫ;RZ(># Gs׺^Qƌ>~7Vp bAnPoW+7ܢLdƺ[斫 Bc2}.4v\ȸ%= ļTc)^ 䕭,YQ;vU}B2v[Y}~=NI_91<2F/148Pjx,-9O<3#dm:XHLs޾ _u&7<| (%z:L ɥ&YQ:pb1zrGS 'ו 0p5[G䲓J?0_DKD,mІtXg k&7 3 EvY|WtPEnn |6'Ajv࠳uLw?u2/Lq^$0fu{꿻i 08?xV8*_ku4rԏ>SciɰgNXeN>p\'JpK[e_~KuהdEpZb% ݷp|#T*P`yNH(I-F+/[6|xBiֆ-YoҞiP85ڪo{̶{Jw3$ i+sC_dY;B>3.or8ه{J WLE>Vq0V8l k8ty{b$ula\7D_iqz!ME<$ O)!-iv\1~yx}?tsK/Q*dIuuc.$򾙁s`,8{e,RѰ1= $3֞pS@[B-?^-=-bO5텢hʲ݉/vUqMCOχib^)Eɮޱp+||<jȖBt먃?q0EޚKT5 c!= I,*h0~Nk kX2Q?;Y]ڷ8PPQj' mNb7a蝲(Az/~>vpak UO7_zsl_|0l̻08:!%REiԽx K>lb`8 -Xg6ţ)͕`~aZ!pGwS_Ѓ۽.S[hϠ]e,Q%BP 1θ~=x^`,\pW̼ bǟk=t!RZ[Cy>9c%[ޝh)'q'vCkĥ>66\veф@%R j.2fꩄPoyyUCNaqI*7@zEď+OZhNZ(1z+Z=B"%9a Q1gFeNv|U$ÔtX7ԅ2_Rqr!+)[B1:x_-d7jD4YK5Бb$`%$ MUƍNFLn;]|'zYTTC/6I0gx lD߁q B-%=5Xax +H{ۣVCqMQt)9Nx8#A˦v0)Nq? r+8{qN0#ֳUBv\aw.vDi@m5-X@lO 5/ibLo"~K_:iopyJlqhlOT!["ʙ1*&cp 3?D(1wko"F3a 6]D>JAce[do~HyG;Ob d@?0fVϱ"XB툢GWS]IMzKmsK ^3FzI,%\s(:n&Q:c?^%fȁڷUܟ֛8 (R K3-΁ASߋ&5'7VMiP u^O$EO\5ec{ x^A3؁g ;OHɜ2Dvc$APO NIZj_RLRB.Ko/5V+̻c>@k9~=ID.p~8_v΢CSN6態K0vW0y_b+qNPH>Ld`xupI ۝e|f1]nFanZf#btC4YEL]*9Ԯ $zi÷q|kYfMUi ,V8t -gو %-VvG׌aFxܹOl\'oJ3iٿ=j{(|N;¤<`)Y3l9, k1 U.K'Y߻wHm.]N*n t:6~BA3Wl{W鍷kUR+*ŒI5un4`$ҜNwFU}7W 8`n_oXf`^Map0aO].|+<9d2~Xc:%黣ti@QWth.(Csg0\0m_u5Y&fy[®id\X萡O?}^5+qUGW uK #<.q{_.<}@@#@RYlw}# R9Ll, "<${JriK88Y1Y `QAz[ I.C@\N~%Cr nSƻ6_0:ed?4{sX鈗Ғ49k!9yCnKgIn^7:Hz;=BTN~[geW?rvtyg[8iUZ g,cx hrB,SڅƦzT6}cai7O2dw=׫A_P2q-ezkd"kj_r$ݮKy3'\4AqF#l^Ql.@j{Bp6*⢚F)F %x]DCDRisk>2-|Vy{!R!(2<<+F#7CȆЫՍ06'N}}&U.].o-4yNҠ ׺}c;<: N"~}[d",]&AV$͞nGQbEk@kQAĄ9#yl i O~њP~V:]gx |oU1炈S4zN_Kڶ^xSlN2394GRa` "=@m'EMPvےiHa;[uOXUmU~nP?Ie%aԪ}- hNd+d?,GYrF*7lT"! Q1#s 4bQ!qKG|6|vP;m9= _ԮݜgyhM͵O k| I)jc3հ%ZF$.+6LUaLf-E ) wQYȊ +%EzN䜧m/`?A;KG?]~Gӧ6Jx==% 6XVj9012bfhI}޾}#X9ǁ?8=ƥ$lv''Kk J 5A @ _ di2< MlV/<4t$`Nl$Q@ZPK3^u"M)UO`Nܑ9k`!HsOک+ 8z]D{"ʠݢ9XZ/yf n'Qk* OTB0mʙ`H^>cvA#&4=*| 2p?"WvKA=!`le|Y6НˎӲ 1Y-@;WpU:_TЋɕ&]K:¯sV+ȳ.&8)L(P}~Hm⛖Q/88=燦ʿй -_@3[7{UfTy%+Ų55vf9|BL`=y<&W*rhe[z~3kuMѝڹGy 4 {@ 2%ג,˭5C>TJOLG):E 'j qp)jV@.㜋y{՝)<On2Û)Ī,ZRl(^zlj:czSu0:R BA{ Zu$(<F8ȴ c=B9nQчN=qvDڡŲL84O|uIܱ^jgH CFoD2瑪TPDb/^v)N=3J-Fn+83c!bl( ,rݴʵR.S: 7~apkiw+>4/$YOBzPR" "5c$oNJ_FȤH9̛M{S4t"@5j;w-_U?e("FqvlVE@`TN%j*;Yu<Ձ%C2RA=CMK4 Di[0_ȹtW@>Y=L2/=mDL?iZy-,{ϧn=ν7Z{(UI&(,0&jyR@k"/G]QW>oIS=lP'"a 8l&4 !-r{$ F)_p;XmPJ-g6_&oe+=3/C!8Rx$yzv$wVdwpʣT?A:Wg dٮ&3D'Rs E\ԍYgͻ Ɛmnc))Uy_`]*G3.%>;08庫*Gh^i{o'wVSĺbA}o[ 2,6x(]} 5trD<{*nɣTmYF}.=@d{s}N&> "ZANiq[ Q>tѝp ?'*K31~3Ua`fi{TE7Z+c9`'CƉjSBpÁYz @7t"N 87R: ?z p7cb?$-C^H][1-2c]!20ƥL8돃B15ly90#PEB\UiDo:%Ό@jhj,qC$9UvK+F-{:aZk:C}m^u&5GAAAtI70zz'!Y+\TSMԠq/=j}bo[)F 4azv*Q9L>F.ƁLCc9ڜWf"=\@Jua#, ̓{Pڟբ-.s=G|xRG2, Ήor03:>2\pn?Tl(5%5hx8/P%i^muI /glB!SѼ(.nR[l֬$9D %{!<93ĉ! O?v4Gz4H@u,c#n6nplKmU.Ce_> ,^4), :W3mj8)]++Vⲗ[ޘ`DjN;ڔ2H1-vQrvhYwAwGMOk]iNkhM8νݧo6yMU &q]}iJ|a/g%0Kc%ró!A̢М3defp_xgS+n`їOb&c:vH gw45Bj9mxQR&X(l3H1H.Iܕ|n*&8@J>mL*+Yy {^'VW1Ym"[ ݺE`C%nxOsߛZX [U(Aɏdu&}.<ٟ`71\xJV ^(}`ĕm Kx}!) ׹{o-dJo\7ÃS\s*4gE)ypՄٔ`΅RRh.fp5Iq'D%kpGAtUp9Ң_ev8]𻏑CTٚ7q1'pk<@j(Bbu,p%b|e`asnwh  b !`߼2k0՚VHq+} _ZǏgf[MASd#%BM̮ 5ѢM%Z@nV "e 4} &-J$͎L#}uo`j?$> ;jhNkLpZ?T?4ᢰ񠖂2?X52E f#" , VI\{{8is$Ֆ[ܵetM[}2.6zK1+;tC դ6{!yZ Ε?oAa(Tێj;lu_O-"eg뷉F@uۏo*#cG04YcT:F٣͍|fNL,!YFh` B[2mquƝaaB%~r$ @XT+!PqHaZ뺃:״垗ѶrE(/{@q%K,&g ƶ ݧ1#I9I9m`9CAbʏʘ9Tz0#يShUx#G{9$"W6erZ.Fe䠺08hW`37ݞd%IJzJu}F<ָ Bb<1 KHW"I}6yRcse{t!<Y/{!e3kKa4 @6r$2Yb !ȥ>7i`xR[^ѪT HDPJ\tzT+?wݹNlI5z#|ޘQFxyKѵk+u>rsL ^-KӜ7݆'RoTS(w@SE, !+ QUl&"Ymzmު=3p7*';|DmMٲH$ #E' OIf4쳌[<~bcQd/ٜ%Y 9ӰkǧGMA]-5'P|da۔ĩͷ`2 $I{p 2wHQY$h/ VkVM'gk~Bjd}JI1HJC% ~a}%ȼ[1L8΢$j`9)#? K2#5΀@ؖ5Ys┺ީ"pmM&VP93@K m+r#ԋ a'0W p|4XP %sY8<9גKZm7ȅ,rC,Bi_*'8^EE 1#t>Vb3MB󓐽.b^ʡYwގ a6Cv:oy׿Okӹ}j{5b WBlo>bj_I3OHb@B~;yl^\ލ-$C@ƉEkiҕ(Ԛ;D~=]bU,=Za9Ӵ4$aE7~ȩCT:'=%>z)Ep@rTY~Kt8x J;xaRl[H6^(;12>Vߴ]Q.-zҤv5۲೩eP"C?_8JyRgv;ԧ hTZR*;!14q? ꜍&2DH|sOaHshaz3|n+6}Cl8X)ea`ʓUZ Oa Y:XvjxQK ?f2oh~muf T-O' % >٧iƒ%C@V%~,G/lNrjm*`>?E}9!bX 6Ȯ0UD,i鸵lMr8R_AA2~0{gwHv5~ қHcOnuX BYu`!h_0#eR)P8Kdլ&m=3zx319پ:rSl0+,n.إXvx/~; b_)]7 >g~uy(㡫Ԏ aݻX&:zG "TNԜ=z:5ܯkyFcFsf*9wvUGaS6ݮ?`Vij/"E] U~˞S(Rpotj$d ݱ,pA\ m{ȀaL-ݕ q2#ؿYZX WdGdfU3A` !yX \#a\tI 4ru+rߝV^%_.H[̯B2&D꺤P|AD~vxvmGkKV@+ ڍ3?/3-,8 fmڐ o,vkؓOgv~E}J_7FdgH-qn.XYʢۚt ^7[jL",Jz9_"o4Q"TWXIK|BT \9n^ᜫ E]WZj^邫vE&S(;kUΣ78duڵNBqY,aw" 7U 96QӜ@Q={z5ü '>Re qE0 ?oMlQ^m3GU^ܫCkg[]0?Ҫp0` 8#j𷻈6%B|f'PSyizgDOT;;Hu#1lOwAJ4SpP/yـ6ƼTV2Lz@VKЍ@99_1adj?J; </_ 5 ^Y4υc ?zI>FBFAXI?;kK,CVF&xF$ͩh/=37Dl>+ۼS)4^حb3Gk,LR?zHsaeK& -v.';0o)3lIZ&݇ P+U9:ƕ.2(o[nFR@:f|f8s`Ԝuд7 E-,1Ora_l>}CHV1=3/w>xI/Ui o*BD%pN\m*TQ?"}SœǠzB5="iʲ iw7Max@~yQx˼eCs0lE@T̛~E գag}KY|q2&aM­CZvڔ39q -Nꕙ$siDp-#ɒ*' yxBXm5ny%)"Pt$Snx*\3Īn(K'i[ʈpՁ9#R:_:?ŊY.Rӛ*}& o浾p>(2?WQ֠V\yYC519oPQ[FaƼ^8czF,ԥ2'n=ȯu(?!l68e9"ts[A3SL7m)-cxo\c#XAJB317:\tʊg>R }3D=Gk> Yd{RPD^#N͋nBnܢ9zHbt />oL4 3dYpW {GoV*j;4Y*"3WTq5˰ϩٲX\jIæ8;=ze" zwJWtjMI3x7LI:bQRꕉs)o)s =Ø%[[˥Vɮa5,@]B=Fܪ-Dn8f ތ헲~4Ih82jJ>8҂RÊl)KθAkkQ.(eZq+R6 ڲ7%b51Ay_$kt6EꙆ! 6)dˮsM}XZq6x,OU57,"7ⷰX6H;,P"*f юɶE$ ~"m U4Mo:XpJ3#B#L~U^,l=fHi8&ȴwe'{fީna@U&C:4L>6x"+o)%uW? igއ:z{^ <(06&::iбt0+૙#MQXc Xfy0NWso Z6=6V7[[ltY&'s#kL-/mH2p M`Qcݍ?.+0n*^Et,[Pn^ߖ8?($湑>Q8Ә4p'koϲ&4YGc9LD#k}C\쨔ts1HIZPKQr%x,EcECR S{f3|ဩZ H˓\rCe i %Jul EbrS6;F]޾I-0|h(ֹf Ю(Ŷm.M9%AA^ըF:P "A>F\V̞%gZ_' cQa[4>պ  %N=ܾzM7=DEE&M4حȪ2m۷ %_m~HZgіeHmqYzP;h 2Ip}4()2a9hM_S[KR+q^!:bH5U X-kߛV6EZJ)+n ˊN}=~xJJx&@\)ADͣs!x!(3##k8ݯk4ȿGkV\ݎFp*n= uiS]Oߘ- Jǎr'l SBڂ HG4hL?yE ˎn0)%?ߕ,3-XI';5H hM'8ַ%~@(I[(o5|,{ ?ؼ Wya=_ kFd10Z?zќ $NJz>x(zk⨕cr,-9q}-eg;y>v- AP^>'`dMg〠OvF{bYGE SB#VWԪ&CaA s")WtxwX`PKs)!Y{A )u&y@wzC e4du/0TTMG崉?C)#P7ĎC?r8UYX#޸O nmaokJLj;ghe=@q>P~3e n28fCU`Wuju?!{vhX:s.cju=dD;JUO2KJ^cM|p:A%?Vgm,0f|; >\P U/u`Aꠇ؝`[-欜քiKt;L?`΀:#}:ű(.B K}YFħ+_&]P<͇ >L ^Ca,5޴=XWe.Y95ɘQ"_z)iPX#dᵢ(~OvnW%Yw jc2Gf{#qA~C 0Yļ!C儔'!@-}Ag@-\9EVe?*u%M(&/BE{Auz+Վm{ʮʑ? gwV, I&_o܆8K'd4m, Y%٘Z]^D*.ZkIݦœ޽RaGʾVg<PL6p_O׫^9AQyʊUM?gZN~XfAMguzᘷZ2ƭH&H`hbbȵJK+ LgY7H ,s_sMϐZcǝTsPn6$ĽppB0dyLK4Enwh4+]*;G;3t<À+5$:pkЁ zsAH9Yd`+{{Ʈujs9)ea*>?V[#S>ZxӀV?6T9([noH$+u ڶʆdg:qcz"۲5$ F[M0Dk7oi|QEUb-cI5AZԪPʃpGD2(Kёt\ӖțxiÐJ^l;ۉQK~7q\+F TElo4zv9UE1ʐ$@ߊV)@=Nf'PvѦ 5\k(2vfYs #j?{L8OvG;tWOv.sY7'9+F*c̊UR%@]>i|-d`SI#2UpumJ0ɧe͂ zB)EbаZ.{(iA{n[ ɏ޽yy$a1V&~*Y([9hW jMziSrqQPȌa5(newa Kα$+M+GwbsN…9CE+CrݚdiAAe#vNlz, T؋S؆iLk6έCD3w[PNJx gDjA\Gzp`KD!81۰z!{qJy,&t_ﱺAiW?<p!Ǜ?ԑ GKoWkGz!Y[sAwk2#Ke}, iO0oSۄY>u\DѺ}5]נ [rgqύn>^dQkl{q6& ؉% ڳ_T]j} UL~^X3ĵv$WGkB%_ȿh9/-a!0pq8/@p84nX`,ό/DFI1ˍ8boT|{Y W(fZKS[ @!4=Qq73 ձuEydx)˜!=%k[U†i)r48x+PgkDZ#w6Z#iah;R* =ю3Z/DXb9ÓWN`)FXڍRaJuF> Ȥr-t?k=` W88iSGJ9x(CO 6ht)J0V~N{TBL+_g<$swm&5!9| =7hs760qv !|SʏtiG5 b%egf/RWQ~5\fu8,4A, S/&Wƽ w W0kF)P6E˙g9"1ceZ%-RO%#[7ߦە3Lyض 4{]kp 5;|&qs7ߠ=^: diXkڎȌekR4Hp񼊉ʛUEC[o4F_4[-Lf˒v.Jߤ6NGrMCi.ѫFǾxJs40^{fhw yO Rqhub_[ `4BM[ImgfԾ||ڋ1zNx so+4XHI`awJaq}g!JvyiDzXn8~[3q~SGY/|fg?.ⒻQmo$H\)ɾˣP,Tu#:pdE=}ڎ.ŭ"-wI^u-QmP*wY9]0";e6'C.+"I^T)gp(i AGOPJN& ,7NIJ4Lf@dŒ UB`V@arMaGGVڣ]ԉ3MwP."1:|J~5iNw[*L'cCuúwhﭺ _jŐRm2-vEa5l'w$p_;" mY*FE7H\eZU$gctfnnTD`U:>n7fU1_E(3,"PSw1ŠD)\.w s /T BcXrXk[Х-aQB: C?*wV*i+/=ԌFʵE(Z ޘY7 6ȓH`=yzGЀ~T޳ip%Oݷ֫u?ژj@ \u wpՌ 3C '^eK-LiTfF+#Ј'@x jQKZ؉Gmv6a7n0 ߺ~0Lm{qऺs&,˜~8-{͌ظ*qO6W+qs8psQ٨uoӒ+I~S3MMAr?*@ľdk\R fsߞޛNmMq +i {병w'庭0{W2۩N؜[&ZLA˗G[р9!6d GG e7{N93sG6qvRΚ~)l~)눷wQ j졾=)ӄC"l@UX0y;?O:da{A0/g.ftEa⥦^tjNUSncErHL6].|iBW`Uk:*N]',e c}aw 6Kst5`!Z3 1ǭ3Җg2 -dG"q{qN/v*"G"LASj=$I4RD61(zAu]z17yzD39Z%J̐*N7 x?*6lJ^QsfV JOyO3>pQ3g?MA%(_4Ĵ.\G<*mt<ټhq1߂ubtumzޱjڸ>;lޏ K!,,sPW׍Hg]IIEOHhPgIb8)pV~Vtz,uz8Cou/;yRkΝ4ܱZa/Ry!uInatyk} V5beSk.ED/Z`/2ʂx8cy>/~X%1SpTcb~}iL$D~({w z&_u'H񳽂o)X&|$ {W/1y~o1A&w`oGRTum|wpTd(9(!bYN@-? sr@v~GHuOG!ۜ{$J2 SeaMg*[N>‡yS:/\O^'B$=|ObM)X>TQD3842/RAg9T^G mwxE%'ДԘ9g^ O KM)-S2dfӹs]eΗw l^];7dL"P<E]|\&"Y |X(iIH{IEA8' gam-p©M o)e ygOAj/33Sp%2]G OR5^(_Z(DH}㲓_^Dw!Jr3~SE߅cK\ 1JHNahl7No ;7ly*seQ-w*B!Zˑ}z7ڔ5@޲1*Miu`~U$vJv?VE'D.N ܤX7szdJm*eEAj^P/&Pϋo}qA5,ה>nlp6 :ENm䄧޲a)vSN%9<9CK[}QsW8K#P :R7`ǵE*R*0,h~&!n9ZSCMT%INʳ`zsT @ [dG谏 V`Z͕^Sb,#9#.ST&x'ލM3EDdo*Έ\2X !<*0=k@Lv5 #Ţx;OC10{k0Ľ]HWv$[ѷ9gB4>l9{Qn`<͞uیqmd\]1HD,5W ֥c>woų}z<"fg~خs#z)"C!y_&^P͒E&.?b+}M֞%#zͲ8e}KjQ>rL(KN"Q&`2^m[119Bͣ~Sᑷ~\7v;RKDIvfRu@P{Y<&x2,Iެjt'f+6ȵ@*63?t\̯W.?Yq#^mL7OIB q2wZ,Yio jY K[rVzG^7Wn$[F#ՠ O; -ĴR5:eLg{CE6VצRֈuJp8^C)Caw\dK+';sdxE bctфz%l^|{nIfJiwk|> όHfw#ձ"o5K.5˩u-cKpyO1igC#_x,U zX:ޫ2 F0Sf"o ',̠N'*V^fBfCyLhAGzPI;@wXQS3)o:C4fAUwGv9J<\6?nE%NRizH-U 2ԣQGGhNs{G!㩟[ZV :l!A~,-<7كpy$ &H! "wfwW˴݆ i!.fTR4r2&-U|>{ꊓ@No(.EJes{?Nvhg7j0-Ǒ3bL8tߥ6^%0\[>( &J8qkd瑈DRX|f&lc}|_3Uo-˪$'$%r}&$Ag Ɏ;s=aC_þ#~8v13RE!oWlZ$8YjWYL<^ RxUtԜy:dEG,`Тf jUFV\sB$mN;̙$zL S 801$m,߲3[%HNS.jsx]&6|dw?Bq;WdBf1p̠" KD$Upx][~2A.1BssMkӆ/J>1pWW0ӏ|SA"`Ix˹ t͑7%ڕH9Xj"89Y*w!Zˊ@=ӏ0VoH MA' k 9m@䄗{TUR_.Mʲg^p/O_7:PVaT(['a97\Ϗ%{ڻk$̒Xﴣ~[|v~LyIIvJU)6J U' ȆB_q^Q #UG_ pp6ݩ# #D"ւ,d}OװR9X!k ܆! Ta훽-^}*:tSjtJwvѰc|禬uٷ% bQesS>M\"ݚޛ7DtAI=)*V^w>3~76VIP'o-*vM&95m>BtJ-&!gҷNB.-'8)t&Ӷ ]3K%RRNKRiT^MP(X?b] CJE9Lx[dx"F&9ō"WbmrM;lUTv͂^Sn6u<>Xb $8e [S @jb%h`:gȸ}en & HRD·:X,*w= `8pM!'cш(KL͠uf:dFl!+jkMqT]b߶аDMQw\hjS@C$l5D#kp9ڡmd0>;ܷgZ}o[wů JJFv5 RsXZe;{L?jnS5=29"qJC{k#vk_fY{ M1vX)rHEw@A $سlXo&|.IGAZ}3hjΨ҇98^@X5mw2&M;)\йTf 90eTUrE 4i4:R! C|G,:*2*"Fq?D9zC>ud%K)ن~A6cɱ"pfbzV"Uѷyc>2e{6-,{pD$7nEꃭVӈ}{(HR]L> [> eaK~@b&N3pr@f@ef,uz uآA&N$Vf@6B_ŇPnftk[w ;L+o{DR{/LD+qnݣ8NaDDh:ե.u\l LblZK,XV24Yxm> wp~c|/%0:JbkDV1V! ԩ9JcNpO4 &v`S$Q϶%y=uwַ7!sxosY~9Kh?]6_=qMTrL 1ڶnkV/V I`c wPlV"էDEkX/B$m@?G[q+ o^cgH8J8^foCKa襺궪EJzBiuK o / 9t;OkK;j&PNO7<,AMIagP~QǕαLq ]c҅:|ґ//b?[qO2, heAoLqmM?~* L*jtԵ *>o#/|V;uФkD1y=-c^TOT-?~)Nw-ӿ_tbbEEvx q6Xu}HfvƍFDinT?G=F?oMGOZ_}R[ϔ$6Zg i_gYԅs]h"1va]JS6dyASDk$%Yb+q55[Qt)uz9*JFR+X4V])N 0| ew|BžKw'WeɟSd?(\:Mlj4S J h$ 2 zX8>cV^浨,^hBw!Nԋ>8|S oQ0#ι0Z%fQxLQDè&iFݗѕLAQv "Th)c&1P>s -kZDP :{`|@F;}DkJ"1,NHV:l1q |6gXnee9!gʕ4A|m/ KgvΏ5AW\ۗ77DrXar_bTz2>]iYMիg_.hlK݂\wѨY^XP'rilt'Htk9qxC>ο;q }\v!LL;j_|2cx X@/ ؐ\F^Cqe|1($g !!ٺx* d~2r#Bm5?|mՄv鍡uh- 1Aȗ~f[&OM`(UHx 7uM2 s!',!``ԝ6|nzW@OKMʹslk@i& (UR^}#qEz {M[X垱I N52"d` 8/RBXBBnW ,"Ǡ61' wZӭK`g}xmFeam2b%>nL| *"DN26&Ym<Ϧ{z$pݒĘBcf`y1The>)y`{` *zcH*:,ҝUe՟C{g1mT,3.H/ltfC܇ |Xk9;Jo MqʥoIpr렅46&o$ëdwa&)|ÇVy*iso!k*.%-H)hkeebD殼[S,/ͩ8o-9PpaU z[`}eTHXV]T1j&Lŕ ~{SŶѰGHޖBq!suΈuS҉b ׺B$U Ny%!B5<)1שI}S7dLeܓ& f]ӤG d݌1 B9 8ߘ3n9lo {ZKsykSPY BicuP5:a*󶙊6ݛS%︎$-@[CEI4 HJ/  $?i=-@~C`g>;nK6M 'il6=ŬT;*W1y2s[rH\ЏrSo|)V)?aRϏz:B)}#V ށ]6ZoyRN!' O_WX pl97"~ 6?ʵ{] &ŚI#adnEOUI|G |X;A%; |vzi'{W SxJ) ϒjsY9λJ'B%$kE45:ȻЫfgtbr׍Gafk59%kРZ{6JttL)Nw[=>b[%k4iWm3tU`tB,,+tp!gHʍlyio0 Q!+Ts 0NϗTJeÎ@D;JIz G2@{lT=ɬɉ73{8ň)*Awq=)]~_i_!u?Br]F Vi @j![HˣAAt]4qO#N*95ǜ %+iwӓ)9XD8Q~xOUE*PK3;LU;pEG\[ygуfH|и'U0j]dC{y'W&5WM Q/\׵ya=`Iu0@͹+ˡH]ΜILN$b,>6$~n$' &'\qb}ZMXsD"F'k&lʵϏR5PӞ}}9WydWtFNK^_F)|HUB* oFÜC= YJ`$\{J:Nn6#FY/P)5'H/.cC?-`]&̘V*&1ʭC_M:qOEC5+LY0L)l]i.8X8R~Jl }YW]w/IA{$Ee2pJ7h7\؅iů:16obhpҴj[2Q˞B*GIb% c~? rX#Ԋր1834~-Kwt=*6D0_׏04ZE??+7I M IYEaz0WZi4کډqPmb||JX*ZɢJr67Z%n+gXngT߉4^+r/u&3p]t ];bu<5?tFE]/9vͩŦ3%6D#ޫ9\:؂ lx& fN˗[y4f%&3l9 q-יZO} Єb &$v2/%7N!h29^@[rNZEd Aٰ`4V HA4{"}C a(In=8Zu9Ή.S4I]dor9[j~vɟCUB ]y~-;6ɲX6dgs)_RC"I=dP- XF0BD%qou#{2<pՇZ"]&aodx꽿:$tXP62eЎr̚ɊXU4 %X2 ;.yn'*灞+Zl^5*zr%cinU\~wšѡfm=fgnFmYXU %Hv?X!OK_sTٴY_Wf&&3R`Yv4^c ?8PL_><tNSpذtzO#!EP]lXD9Hn; ]}+_f՝,)4Y+M>xԺRZ2g)*㍲F Ԏ T%M9mʍRϟ#Xn6nm~c~JD'wmFg? aʾR@V~RqKF-tEbA~J!f󐹽0fk@J|T)D񨭡jα&zuRMOu~mޤdz$##ÙLNk<<87{}e8H` esbzzWҘ$*X}/CU؀޵3 jaݳCۦ k7L&ԻvT>_o:T'Ѱ6= Զu [cT4 LWDE~y-.#Z9ѷC ,F`ֶ9T[/gwكUn& hH?\C)ۗ6̕hDGiL xR̼_YK&3LAC4;oG?Q{Ggdsq]1r3U;(2J|2dq8>ݤVgA w4?9b4rfO4bB; :̡+ʛ~We'bی5SZG[T;- N)&Vd1O6\?7Z#ɋlFx$frJFFу3X;ExFҫ*s@+s:@ ̥uu(I˩!x eB8ZUXNէL`,%:6|O@5zFcd툕r l(zGd aK&n !N2$¾dk'l.PPF7GjԇpL,^8Ʃa "㪕 D|Bie_v k0%U߀^g_Ԥ\+IHūTYBl ߻*Hy8tP@5lUHCY̢Va6W,sw8;#ǡt2^ zT9;0˦.Xߢ#tXȶUu}:E72%Px m!$i Q3~%14fZs0M."V2g(ɱxh޺IDU7+yLMY^y`ߌy(ͧOL)?3l,E%LAxiQCuyYtQԙ#/1ÁlHqg %хf#$Bl53˫պ-{,q@=/8.񭂏;ƌx$?\ }(ԡ_y\^EP0 9UJ56&{}42HRQ=NTk)Y:JIm2nϓp!{ٟ;REi_ P  ;Tp KUcZ4 Mf"O%fgKvP مFحg{h5- d;0w%ʷ*1nep0qC)K:98s{+,!e5PP<ːT5c/bo")<ܙ,yԎepVtc.p$BK`F N$r!ߡ-nR;B4r*N`g>j?KC9P1ʴH;UtSs8|%ѡ#qWPPVŽjK]45EQA*LHL1zʧ* \䁩, ^_yav9|Q+y{dE(꛻߶noy3,kۨ?S^1'Ɋ5p;ߢ">>PibW4ȶ}"/YM榮|[]\kS{sgK#bꆙISH;ł͏Iy}I ~;^ΗL}),)@/r0%mckn+BtrWP~;[Oп,%Lp[(}{u7c*Y;6u]H$,r2=RO9C} uAcr۟ k60[4,Vx?Y5O*wIdצftªm06 ՏTgGӷjl=bwj}0>}bzsQ j_=C^Z ^wl."VL4:ƗmjCf7j'zE51 Ĺ)I}cg]|3G "u͉3 TrJ&?\gۗF>砢z_9V7~:ctyaމ8U(S_"21uލ -}$O nW~3zvxHA:úmꄒ*c疘u%/D^ifLZ}\u&4*asBͬeo},^댗`z'{X-t/XڇbACclNa;(HlCה@d`SƯ9DFPۏra*}~z%($:Ɏ~Ѧ"fa!4 -Ə"q>.owjcY R{w 5\|A+m2$Ur\KrM:zF.'hȌ58 JLvHӀ!Dfq,iġ{~jQTVXkg/,@tĶ842AwDłqhhϮtMZCv܏Bmv;Rɧ$S8 ,hߌeyеbP=:#Iѩk͘70es1mi=.#- }A0̋o"<,I_G15hyR;vwtOؚh0sNI[s&lcIjD_0!oJd`ݖAIdDL?<0wXӑ~l!Fiq2Jge{,]&DhDntyqË*v$5OHnM-׍9:_U#}**ZnN^ϑ"IE–lD2ajv՚֌ew4Ԗna%#oa:] BX%3TwPUW;nռEk,r7v|=NYxoC PT7#!?fB@_5ZŠ5'UC:Oğf~& e%B*} J.@LlA8J// 6W٘FQkirU=gk^Y6U6I3BgϋC]Yv.MТ_|dU4蛴bzv;ϲ8MވMZ %]UC.-xFr{kL{ҖgNp=?dJ=\ܳFVS'f #8hPa3Iq~AHq{o5r B"h$["Ⴘei|RMI`xNȖDZɂ_)FӦ5TJa2N`RgdE7l._srxlhai/V޽E7sD\Cf4 ,IF`]f-F!usf:PE%C"s}w`9a w֣ԘT7{u;_ er Y천{ yRz h*61RL(Łx1J AO@G4iO\}2_Kt20wwxFu@i\K#_9`nM gՉ T~~41#j,|)!deͽ`A a?c Pzhr nǔ^q  v {>71rtzaHNcgͣvm|n7 m)0yX,.}I"ϢoM>,QE0tQ1d^WX=_|cgSlن#-toR$5t./a#F%6bgSZ^ .dg9{eί . 6oh T g#YwO=z@͖9V`nj^47de.ja{#Glx X#s90&tAڲ-RvݼL{ مZ2IymyX![}٫,.şk2EܖTv2E-yAtf;F7YlH,KW!, Ҝ$!v7i%I]pr(Gn{tiU%? U'!!L3.OY/QȞ_>nt)7Na`H>24d l_0& F)AS P?GvEe;E];Hs{yڟ^dPZJ=gXIΊy:0UzZA}TˌB񼔈cK p/QEw^Ue1Vtyo /`yd36"7Tyӌx_#Yi9/ڞlH4":Qa}n_&뷮Fn5g]/Ü0 '1t$S$kPc;Wբ ) aJs^Ad壦k8S۟s8pg3&⌁#2 R!ύ!&+я(dcx"20j1 N2ghߢvLCGt` tf3!F)l}L?RlH5r=N1,ѢxLZ|DAbh"9WV&.}7PZp=aǕY0З*BX> lnb*(tu ^mDϞkpѷs+Z n}gUϙb| Ϣ-U<5꽏t;j} /6kw}օO* 4oA"~Ʒll0ܔ􎄗*Af5NɎѩGfRIC6#hHyrkjJA4C'Sؽ/cT9;p<-^:_l,X6!QϹD3Jc]F!?K | ,ewgi8/xƆRLpf];f'\_fZw8c~ϔV!/UtMbÿ]*LQF/|y_Bo\i~EGnH(i2o `=r 2ZzW]Yc?;3P;bM~7ie$CذsOqCBp؟S81@.)aHNdK!B'"]]LiXׄ4a,\rK/5ϗ,U7ûnuz+XXߗ7g`QЏضp:6.nrg)_:;ߐ {^}}kX$ͰَӞ Uox<Z;Zn/ׯYo9l4)aưkju˖Q_ N3q }}~K[苿#.r4zwYdn (5W 'LH%Um'5rcw&FNWM 7ZA*LZX rp[H%Gxa`e7+hF^5mUؒ$@!dX+*L8NXrˌ}*y wdB^yop4fSeZo6h }Gi5@e!,5̈́G,o4)Z M–mwt{NOeʬT*ˡ$NY1|hԖ{cf 6pOt*rlX C%Zi)R-tG$nCN(O lh$Pe'Eiw,t>m8>9_$_G>;*?K_v )՚;%I:Ӥ7\t}*PvWigNo#Fӻ/62vq1IkǍ\+[4GV"ݤ劤Bp+M"fp]Al Zk wP/UŨ -dRPLb|dcBB)CgOΙhG?:)P(~tBSU^Tnړh;𓾫BmTeAp 6܃@Q&$ }cHz7T*~U9?$<]zn%Ao#%w:ap3LC&uȞM_i͘VA%u#*ʢ/ӫSC+1YփLbbrm̱ϷCY%ؽ僷ic6ǾorX;2yP \JX fr3F$K?oUcr~L~ְJ8wH*u뺊_It0AR.no45ghp4܃?^.!g-5, g] H '^:%$PrIZ^b+*@)0U B}PLR) = P⛴ -k~[WAPZL~ښnPkl2C,#Ju^d ANtG\\疂&,[%nGSMkM%z5KƴL.btg4ޯmO쬽N&Cho抢_\z.l$s }Cx1I7*: 5,*RfUF$M% ,=u*.FekivuD0bl^Y%pX?3p NZzc TL8l,?U7 zZ sV3ЀdZ0 Rb*[GfS'ҫL-tPrԳxΣS[4>2ߡGg*ls' ^5q{a]WsjQ[N-A8 (c.55'_<֟zt=|OިZI2S@oa*CXnh,zO?w upAjߜƸ], 18BXu9[Csu}AntcLHm7ya 蜻pz9`E80IW:r1vr΄y *H O;ps#WS c2 N:,pY'K 1x~T$ͻu @HX퉘{ţ'zl~5P+P+Haӯn~-%[IʨmQ\Ɣ̂Vy׼}c"Rz`Yt&KHɿssfT2jV}őFû0^ >}=HiZ'DSZ`_sRPIs(ݸͨ:$j`D x9x RxoH, +R;j/f5t>Y+2rW7_cf)d[b4]d{|JO7lT-VdQC4kS [Im5U&:Sl̗xLE<7X/\YZ-\kp#n*)KnI_x\]$~]&3%e[tz'UPCB&Jc"?EƈǴidvԿ;'?"Âb|ƪ+niijӑ>}::Z^\" /DirL B[+rSBrήl{"ww|L`vKoNC ^fC &|L>F|xB|5VS Ʊ,"i1`5yUw<< jWMN?6L466He#E'њ`.q33BY ߳U^+&B =J ' 4? d.yt,|=3` +Ib~P"6«\FS :W1lBW)hIu1B8ZukKmHQ>$ePL>e_$(G/.c&8T)|=\q,ތ[ /XL/=p#R"˖ͨF-v?yEyzEUq.?LdӗkJ xyLmn:*;>׫TDe+p =N1N@5 τYaTQYK hYԿh@&5 ?㾞/qdWĝu]\B,i Za4b\&24d,p5xvƗNVS j'A='$u]S?8Y)=u{kT~\V}u~5]0Xb"i >.vkHߩ@$>/#L6}F{g\DG:@,ܱ|BJؓ♢C&oyLܒtH<| u[Қ<hiv(<+Y=.OB>ΦJLh Jޜٔ4\/Yo/D}523!Qj=o?Ȼi4z0&_Ջ8[l;{wd-Yi_"ܬm t#pY\at|ueKQ\5_F݂aDZFwBGo`;Y]4&p)U' F^4bpw^Cho6 Op`}FC@;H*| o夳XY%"N'J$|-.sAΕwˬr5B;ܣٺд w7BZ\7n }6( &V$\gE+a3h4whMn"9acO3zvh0 ?)vE0& fCCaHpukyU[&jos[;Fc@Yx0z>aqi}3f_R݇~?x.|d)n*25~͎|&k(V𐼋]ų \:ՠ–(`howV@J xXtv++Y]yI9J0O@8j b"ٓ=W'biA V.}l| s < FU! "_>=Gek.s' :r)r!?o [)8 aMh)ALFt3۾}I?Ľ=Aj&^jg*I? R:ԮevZ5=q "`V-h!Aw'l0 **p_,쳄yJuGv z ݈/=Z$8qx*nKroLZ_?O3PZ]UoyHlф9#`[X]*5ۼbl%Cw5S* "mlHSfݣ{Es5@WemL拈ۂYZo0񼥿1}22Ad0CckƘb |BZ ^ ζ^}|ޡuδ鞴*vy$Ga.QfOB,9x`&&Ce2d& ^$lUF^ї >Xfiwɓ~UŒ/=Q8y6FGU&.5 ?'I*ʌ9;&["`&!(UTR!A|PJAX^:!A&IyM'l ~̫CIPWW(pi5;];&xm{uo?|߉X6-;~JʽNklՂ=k@]a4o(ҚvA3i|$s nΌ.p0 ]EhE7s=y1|G@FD?Iz$WKҦk^̿2Uɯ`q`Wnf<rEjmK;= c`e1Ԭb6? 1zp bLc_gO08^&UQg?m2Ԋ,ޘ4+lW*e[Y9V'OiwW>'R_#  (vbT 8m$'=e=*@ꊜ'!n{s*yQTE'Ha>t"!3ed#+Zf? ⠖.Z '̀zݹHI>=zRuxghpE\'/M%"IU7lmJ`f6h[LF:oflxQ04m0% jz-͹gllE I@ >Dhdyp٭]5 /]I"YͻsX=-;6ց&C+HAPe (1jPj^BI ˕=~4fLqM%ӳoОw=@4WpCqf#-+ٓ!8 I D+y?X't*)ZJF,&%ۿnYk9"Y<`ؒJBq% <й[QI^AMɖ(\i|#;9Rhx[\uF@DB1.qV\eceϷ4UEŴ0Z!JD Yƪ B-i¹nindJӰRa4;)"1ChV`E(ŗbe=$IrM bktY[#|cE“a+w3\6u06:7=tN}Om8%YZPAn0"s@ ʺ\vOĄnw5 o,`5a[ ŗfka嫼uܚW}ژ͠<%AqHLO٣0F Au9EjZ{Ǯc̦-+QOAw%Ȳeb97hC/`2m"sZ͒.aZf+ҁ C&LXVhBff_HcOY?VnݟP]uy8B孰c9SUvZLEM.!$ -$=:q_KY@&hĠ2z%JT06sP=^#})&AkW=) 3Z9;[TYM5iaD]}6)9h;fsl֩l5 ~`u -`g)Z-J$_5xGHPp h0vdI9K+M mm:zD^7Xfͽ {]-h VVi:ɍ= 񏓋obOļ{~}j@<1$OPEz[iv b+|W+i#Ȧފd&|7<;t)kn ѽE4YQf~Y7$.V^B7"^5#uqYH8%c^~]U{OyK[_+8ܖ? pPsF+TfN,i{b­<E.M#z =o!6i%а~^->\&\$w$9@Q˘]=AcZ; D6xkv)HP) LcyW?V`ZxET-$ӵRSqhoP.X>وzEd' `9v+XY󧯒aFؓKfGxC5ͪD>V{yຸdS%_Y֠O(0oGƺpS"yljY1$(9'" c,OH ip!f) c j1qzR 1uQQeٳ}mJ`zuUSڛ;ʂad٠OvؙJ:p1-4M[60 $Z|ϭh(u1lfv1bmSQ5YL "&6s&.X|X8(vw ohHVyXƨ5#^0Ը ?#'^ Un!2tiʈ.?>>18elPA%љcѲ/Cƹx&5h7O1v:g|oH6VK|Q.!$˒&7;GyM{65f2I6Ynd>܁EAw+AOɽz܏ r(!!ue$ ͪ,A@V3}i.{)JrQXCQZPQ5d} 2g޳ۢg^*;n]0a&j}!а="Ylf?|}3jbO3W%৑_6X2.d-TL+S wgA榓1V&xRUBD~9B߱`Xq);Zl &ܺVz Sc=Yu%E/'9XD[NT8ZfM <+zPՁ=>t8a{fS]a?.K [ܶf-BFO ꎍ:waZqMLt}?> eZ|'VKn^Sq:~ީC 9lxlܳy'}dT KO_"81j%$_dB 6‹ &-syF8`?/Ysu2ܳaKp/RQNAnt[&|{)LPYBFDS2$(s;vܞhOx h6x8DA9|P8WrЦ{B;̗rVP̺_q3IDh멵u`1Äa*dm$U"dh#Rx.B2@!"'"re0Z%(2}Nel|5=ñc[7D^a1r~5=$Y>^ v+dIm]V*/H]wk)wDm .|e7jЧD AKh,6#Cm,rhb)Hz(-]aUp%![V&hJPܿIN݌<19X 4%,սI)MĜf ̻MXt3IX6ͳͨ /y}͡ެROPtW&6D=$z8"d8XtTH%ᑟjxJtSΧB@B( ݸؐk-Xnhqo&ݽ}A&bԮ Ԣ}QdSp .N6v+6GˑmOy. UiC~af3R/[t${r\ ]=\ϘQBl2!6&AD/&0Ŵ ^ ̱[<,fgrʇ*$WExT}\S?7\)2~L4%dYH%ObIڇ{7-׃re-DoL.ډ/JIIV\k{v`bͥdvGQh/}4^npoJ%ھdZ7xj0J|K-] 1nAҞrI>qQ:E Q&%>u琍1嚸)gN90>iC;JokK/L.dnX?$#jkA4~'7˱|:r2;;"8M=̯&_ IBО5愑pٶk;wa)f*U*cwoV~.u4ȦYg,u-i_;GL~ha%cU, &B9(ɬSU:r@]O͚5:Лǫͥ:$0[TI BmMr[I*T;HEjvéˑ]7% f^-]*22qu;apH:R}ҝ7&:NI󢏳$X: 逅b5z\( 6_"N+jU8]4LkPZW=y }wvUE9/VQR=YCcf_G| d^~y_3/q.1[u0.T HH_;A;xwP}sFm$fإ[wM?znl{kX!'X!Ҵk3߱vI59K PORncbs0Ê Ԕ;QpiIL6xOpu>a6wW0k,4{SCӓnzCk= +y.h; nLv/_',dKGɊ-fϿo~KѲ9Qc Gyf3- iPltI_Ghk{ ipIP w ΎJ+zp ][NV(U2 w,Pm]f Bʃ[GUa订)#HH8!&lsmet33XK]{ImCEMm4s4 B󊙝G\CN QrnRk&&EFDu@DDx6*%]jE~wc3gO8J}>@mBj"q0a|RgNxm`# yr2fM_rN23aodyAc= W3QJgA95:PODtOY$ܮ6^SL||8EzW1'(m R*it EՏ,WY& 'RM4;ȴuyq1/EE}J2Jв;"kt9dM%OLO.:nN\v7?""Tn[m,ƾ/ɭ qqgNaC["!Pnh=Hq&N:壅wP%05Pᆨ>% 'IkboeP)*mg^聖y *LC&^5Ŭm*'$ ikgkYTJŪ~p; @:-X4jIܻsb#yV`O!Đ-`“W=cXL|E|T8xG)A ,f>.G|~kϸ}:gR02i,~Ō3.zTzݭ{ B@?Nm ͱ5j9^("`BqA䛧C bcЛlAlۆQC)K n Apjpm`]` v, 9?㬃!]ְP~%eL䜷hByH5W#/SJR΢dž LO6{,7 c{QnN}oy e ;p`T~!$ZΰjO,pԜW8nX+Q|(}L:qe}]ʱ"CObZ>s1R$SWp%P,ʨk 9×`ZkKa:{--Rv ڡ:R~dqh K3^@??-@ZxwcI|:mFFOҽ~Iͧ А7}ޑ'g/Xf©ӟEy 5\1HHϊOGT%A&wp f cG%0BaxkC h7tp[>.ӡAXqFmE3 l=j &7 T+JaU[ʡ{V_-4p?.:Jf͢)D%IK$c=qؽHpK(CtutDIjm}kk -W{ FdrUtLR&k@+IFltqܫѼ7 x4M0q]aA|iיjL>͋A3 z!2gIDx9&E9_Sƶⅽ hy,= ]w06Xq_>FR{fP Mi;lԐܡ \inP||ηXiw~Z7Tks+o0(a $􂘁,믿O=u}FziK{>y!_  \佣P{7L?3Tv? jYX t1mX@@ e?K)ݎQI-:).A2[C2:#Bpt_Se1 BG1!&ވI'nFR x5eeD y8Lh;%hTWլL1?83*ŁU1MoEńB 7"DIWHB=;*̅a_Jyƣ{ԧĦC7_%<4]0!YuMCmi +d>Zʸlv7xVG~nZI,̽ 93g2|'] woiU 8}/vo x6P:вFA`+Jud+/?g"iPrw }Եq 寑 bT);̅EEu 0kBV7CHjnϡĘx^S6K :swξr.b<`.oLZ+cp'17xEΌ3<#y&FF* >&P4(KAEHSY^ԉS}!U޴F/0͢fHrSʣU/Nof2>yG6)N:a#殊{ϫCnX[\o()F91m9ßD:_"CO;(HP@O]a\P:;0.*XQj+)\բ5KG&0tNOO-m-_jwDu6ϼ%Yޢ\ =`iMҾl"i |xm<\9> ! #d#7NlB \3U;O (2)UJzA=&)^kIĽ܏ޒEے4c:,0;osh)P0qY1Z{dng- m|+[SLQhח&]{䨪ɱ^ޭD=/&)1sT|Ƹ~,ԚZMg|gp~ZN i 4 '|]~ ~('R M\r <W 6DŽCJi$X>4@ 8~? 7Ksn8 ̰@RIR[[OdB?vL$VO"Y6eNp}NiӁX,hV!_ ~c,l6y nV0ّN\w9LX6CRi  eFM8B]EA+ӗJb?оa/#uN>y \m}Ig(`ϭ8j-iΡ)<^;1<+Qȑ#b6L8%]D{Jy#͜cZ=i$yz\"H`ID݄!̍ BS0.;q 'zX^)Υ6i :k༗JցW2کY ȧ߽+%jϯ|qZܖQH:cJ3,ҢU@*5Obߙ;qbpVSa;zWPuj|yЩL)xgbQ^F{pPTȒClSpv ڻ>7n%:C4o䙫U X% X0tb|v9_>՘`.N"K R;dӽy<3sJm1DMT;@xjA̷ G'[m|#f,$8Lmxk= B!Y"<寥,n&+ O?qGGW+uKr t{%XapiH'm4̀+wD|CKpaݦgb):gi+4Hxs7~UF9ٴ+ ]#:8 ;&`%]zAQ[^^ji"t7<wqr/JJcC<۔qq)/ʦDxpT@H@̠оBhsCjN\[ zGlCvޚzu8 qO>WD8)TJYۼ.§u*ɃI ,2 y|x ]K.e,H,O>'&tᒯoUJ SJ|np9>MTAƱYгYTw{8XJ{I1IH'Fr^u<-T|ϟ/4I7 22#֮+||%VKA !4;ݔgi}QW\/o`tNLE,D5B8d3-j2*suײ뎦A)$HX̄A|ND n/ږYY8] ࣜn$1` 3Q@tOr07"{R,sJs:";~GVHj9G)dr>$-.Mt!1nYt 4xweˤgO++㖍0Ͳ3~юF8HNt}J)iKِjGƊ6+۵q7gD*ȦiXb ?wM1r>}d.>f)‚րs[o 7v;v>urB7&ߠ-{,Q֡ cR(a\ j3|8߃*B/MjVh9^4|df5\6-Xz:=Nk:&OcX|2mۖ!Mꔹaduʎ9S8 w7k<& Λ=e?̺kilNs=< N.,o=Ү`N]1_gdD#sKqY۰a,CV&~jloEnxd ٨g䩵Zx.]{RB\,3׿qjf_e1Ru/EGe%}o+=Ncр?5sݸvp V l(ƳA.S=gDX r;ܕ5շ+]SJf3L)TR`Yhr dG%vgy3#{0aZ?(&߼<(U*ի%6zlɪ=c9!! iY _ Й_4ms~W{A͠-݈b̔Qi6WKHW?w@;F uR2[|rn#Lu"J$_K|kB /۵uM< h5V]U7p%%qx@ +P,4]zޭ'u{.:ǩགྷB)lKghm#0X y><MOoܠxÍqpt4]Dhm1nikmV۟dR0QnܷFIίh$si_Q:(21<r>NlMR>;ZGI" %Ļ-&V.Ԇ쭏(EDyGtjDu\sUnY n]Eg^О(1& \$"DW{+ `h楥VΙXӉΰ=?wQ~:,/ɠ7YQR"XS:eGaDF9hȃܦuɷ'lz+x۵BRJ!9(,'Z! sr$_uM;;Zzh3@bK21C\m(vw'2>(cFX x4,sO`aze8[<< %Da 1bc.Vo? .Aqo*mĠٽzR#CVf++tڹ^YyA ,WJH+ t R3AtJ0LwӐ*􌸴S13Cr2+7I(>]Ōaٍյw~ިĪ=5CXbߝKN\R]'Эخ *+Pa$$7H嚈ظOfׇDR\0z!o| 2&YDQ.*g7K9У=%wjzrb NiL ͔>e-5|C5[(s Q{@gAw ,g~zV*Zc֝Caɟc(qq3JÉW6X ʨC/魟T >O@(X% @w 1tp|yYX3yGȭ2NE J#,ΐBMwh-Wʄ *w& ֥|]G|-yL*,a 3 @m|QSz@X5$ePa*s .eFFV|Dj;%Ea熾X,dN:YypFDȾ 1+. י{jN!'ɤ$GklN) ]ː\1d$KuF`P3k0;e}23#&8N5}/¦Fxĥk>ELfEr)8С;g ek6% 0'3.xѕk"S?26v_:ed%a ޞeM@fD a_-nT$\nl!qu|*,ali.C883\* +#>Љ`}+ΰnsnޘ߾Oϟ}Lm^kN?1}gI d\Y+$bv5|k~~.6'c ʮvPb% kHh.! TeTU xӝBd6fpYІͮv·duLً;k0 / 6A*% .cbLl&4rD,vk5ζ 0Z؏U{AJm̀ZߖLs̳~?MlHB0:g2_գ IRX a̧ٻdp;5y%z}JxWk#F1sM4E9N0aSeINp_:U Նak?,[&q$Lz$<eҒI90L#Z; s&^_s|hع, b6_Pac u|evR_QiJ~r˕'PK<[4)[5#0 GZIrr>Zf?1mڈ%e3Π] c:xM=qy Z}=!ַϬxd0kv[U&EsTo;#g?]&d_{^^.2 ./E_17|uN^Ǹ=a~CF5JQlUc(⟡8˲bPEiܷ7[ƧiQaZ:8m7eL,NJGmޮEʜDT%T05f>6c0q 6jr9ؾ۞&]wVwa EۣAr-`B#SiKgnsG5o-vGt/^x DyYh3;?{T7#Nx%8:hD?--]F]Vw] c%2#XhRD=FC']uR* 6k\N4#g4;J^ێWӣ_Ь|=)9 =tpSr7n*>kW|mr|m3KU/X NGfe!ʩUnrzM `(qi\\5=_`ս.+0TAC(|m&_oFb7s!<&|xcԄñܺ=?' X%|!(4A\VhTl}`s!J6ss#*t8R%פmD&\Fzz[&F]qCd+OZ/\8%WnJLhN npާ 7A6RKkYq(2ZtM?8뮐< >̥A#}yf2\wWI"]l\pQ*+KtpzΟG4Zt=mNB=ql5 =^<,r/S_&K޼=WžۭPoȡڴ'?{o[Oyu:x`m$9ZqBU\ +'˛&I gy vqߌRg yE:sOh(.j(V psWoyt*LF0jOU0.5 =e?W|\Z ] v1Qywm!3;/TIVu>s#hF0z|^$k\0k_Q?S tu~:pIlC2܂2C@vu3E񡎗O"KVv`PCΝ|FbgB=P2qh| $0ER#)W=Rs m`0BN~rj;IYbIm9Fܟ;N Kq[Az5Tu V4LP= 5.?Wj 5$Z0*(A{gu"`]X?X4|znWcN%^Ҧ1Q!yfzJ |Y7kZ:YO2)i0 v j &.Ĭj;< w|pBS &?/L[ϤY# (wJL1?0END6P3w\w2VD`PE|`د!ܴdt͟}y5La2S›dcOTG;y6 a 4#f7޾N氜zo&zK$lVuĨpcK]Mn#sn_…ټ~uic5 zga%Ft EDNUJ/TddO8eKpFI@E'J:!MN$e q`b6o٤`ڒK!as$"9lZ3e*gOt,\^2禩 T{P2#9:~cBj$:g,g.S2XK¿;&*"QHx<%&e5SF쥫`clDu2{-+Ǐ"IWPgUM әXR̠({Coq [ @iS<Z+ǣQO*Z<X1,)+"#AD'P%ԚnJ%tWgXu/J3qꚌIZKB3)u"\86Y p0}( bE!ܧ?T;=9='H`B 0("4onoN0ЎRf6dcك(wo}iUꡧwMO YK1N$֮eI+WS`ĝR鉾/Wl!/~*~7VVh"w>p$>5Q=ZP~[D-v c2x! ܿKRQ@B^eO,cWrGVE%PfB8apڷT+Mڨ:VN+{kÓL{ :JX`^5֟[͝"&2tr9؇q~#7Wa?:\!g@FӜX\Nj+q9Bu! ͍#)Kco#@j9?A @  ןARt뚎[n4QE+MO_Ĥ~z_xR{([(΋މV8] Z20j ͮ,֑`DW6}."R3[l,>~uZ'69"~6p*t:bJ3c1DFY$լAs"mR )C,P`;LJ`[2 OB{t^o@sOXq9ܱ}SF-KrpLp#3I{T?:m'jC^–+4TF55H*hY;ď BUSkޱ!ܱc#X@^C~BT3 xD8,/\p 5y,Ӛ4`VYLbXQUX|iL4\s"NW_?MGvEv@??qƝR#ج1!ݹ^;@-wS;9J8E2UzL@xY4|?dذUtrlG~ &p ȋäi!16|?d(Fk=*Q%9D3.Bz#92ZK&p&GO⾦cPZ bS$c{bމuA2uɗN BSGe/ЧfkrT0@~IS(>K6=`RS8=FM;,(0D !u I Nu@E-ZLPJm!ޯEaV_ҟ)wr̞P(~F=RܽO=g>X@ tM #8@*D.٠%}wtdahJ+6,-yy_=YFör|3¡"e) @ޛ+ Pd@sZu_pvx9CXU:фp [ HZdl'MdK?%m< CfT0rϭ癫*l\evJ6!p"~/'`s:*vMzyExw C\h gSf7sJKl?=[ 1oZu^S߂Vgu(цWt^Fi%/p3'{It&ISbzP,]j=],(FR"#=yP8lߎ]\Um%QVѮh4Q0]1sCSbqo5*Uip&6XxS(2 5:>'A^7M<l3Ԁ+Ir4t()"I+Ktq[@91[)-cQC‹ ˦)=naK1;1]OzCӛgóv8(jt'SYW altUg X@v,W󒼞n`Hu`2emCn)1*ډSh4 6vSXuo/4e!cӪ?2MuR+ͷMf/p0sL+Př :. b+O[>JF-S/ih!!'.p0TByl'0<Β v}wNi~n !;E~Q抢a1*9ްoĨ-M^iY]EENOP={ho48HMp=R~$.+q[Ԩ@d71k[R63?[g »tJ k˽Wti ڨ]G\P h.h'dqG¯ q$(Q'wg-%'ѳ4ǪX{ 7L:IDs㪄Bu}CnUH>B1_}v8󉹙UrKpVVd3X[k NRGHX9p Ly3t3-I n*irϢӹtۋ/'SydH,0leN"/DCQ@`D#]Q3\}^rIxȣd^~M^ m qRQfHE>ǃJMS𭛫L%}bh ̈́Ozp4o>֦h_=|B*NqAxv h*uU)Cޱ}Vk6uș%m낾zaea0Te;5Fva^M2O`d+hEw X'ˣGK20w*z ܏‹DzTa;&nW>"cќ[(|q~E zKJg^Y]qeh |s" -ȣe怟@*[;P@#AμIq ՗Y[i [\SgGbݖ9qPI*ԛ&^X.qn#()"+2E"==+]QXT ūv!/hFY9Tj*j^Bx TPpw9Άd4#:%sڊ~]`oY9YW cgA1ȕ_MacE΀cBhTf *"PAC2r%dn}#tOrьz#N!. ]p ZJGȵe]UAcO)ٔ֌/#)vD= ,s#OEa h$Z,XZK&lݖyH:;u{"$?I|{U ҆fjxNc=քDw-SX[ޭ$ft3=Uyiy+xS:?+9 c2xD7(i-DYʠRۋvY8 `foWk~|Z"f0A&fܰ PЍdK '$AE>JrP.YWr=M`M^ ]]t+ ;tFjQI^Iȁ] ;|Dl0yQȺ 3[ e1ϖu]-nf 09I>I) e%^\]̄󢏕s}uNlg4}dns =5}`D$O=Y}_8&8Hv|YXC>,)^_R rsە%4h6-J<{]$ <Уeun k/Lb4wYN)^t]8WF'@~lUerB*d ,g #kkJ޸>=5XւIz ^ MV5D2΃z; diry H@b]l;wҭy@r+s9Z燴]3HuwX<8F}I.c`=5M璽+*<&m =r&E/NuhYbM-ѱMV֛u+)m&SoJnGsy7XLꆝ#{#P!F\uH3-&F w_ՒyuSzLZ|xhh](# MToȑqؓm3;uNq6tȣ'?|XI6Zv1[f L{(~bz4G5S8cKU30)IHkYuF 63ϖdDjon8\(#RX ϲ[VW)AYiGӔH\ݖHx̺Z_鉤.Kl׎&eL_dzb o!Qd.2Z<{Y֬WMb[g!oMvuak`v$O}Bڨ15śп^B GJ΢@Y)ɖޯ9ٲ/gnp8j]^Gw@/Fbk2nl-#T'x/'DqkNcP< _boﺢQ P1C $,5L!홎Q(Rddfaڗ Жb82Hxqv H-c\ԹRiL5LFDRfO#zqBF'>OΕAF>S!#1'YT/Tb~G]f|s`2pS 9ɑ)$:XeȾQIBEѺϳٳXwOH>YPXo s%S^Q,Xz-zg,#Iv%Р&44l3wC$)X;O?,I@xw-g/E3_Pn (~Ds6 J}X>Po "$)J_?!4r<+\Ss Hʅji8;3Mz?:Ű4Vr:/JHhؤRa$(5 Y:4^BCc#8r??3sTqeg%5=·t~i'8}%iObtKADX/\JV=&v;vKJ=lcju @pŁ}QtWo5:F|a9x20;2]*';v1ZP%ㄸvt |&?_r|J{1zTG Z" $L4I\79M|bLhX[O GElֆd]~l~:gE?|ao^vq÷ k]"5(%M9b,:Ց>q%mM};ěT&:%EcyL󺐯{sajG56:pAnܝ.n,ܺBieG:bpTȜ1Dp jd^9^MFviAI}gCvJ6x DI89!Q+Yf7Sj'& BKnn?gSP V>KW_RgАޠsXqfզ-/~1T]`?E.O9j F X'8l+CCY!B,CΒOWi .[cBs#1׬ULhDžԋuTČ:es;QnQ蛂 3W)auZMf-Ch 3,̰*zg.o\ŕڅW٠nLy|6Aax.XB5!GwKt[S-hpƏSŀv 5ƁF:q/SR R 4a1nx$EH/HI1<_~@ %| :Xke7SA0NPe7ꆷصF.Jo\AAr?KLT~5t ܍5,+ГY Hę++?Iv\_VY-tsʢǑs):kQK~!ta8Wp#E`"V"No@9dq4~85btg]U$zkN"A]`2ʬܝ5uss;ʋE 1ą'*]-K*IIsfh,-66IB򛆗SywC/e>jxsm-TcS./mq5S [ ]3P*0$b=^b_$xD@vs^cI6b.#1т?(PV:^H!ʏc2KJɳ8D϶UD*1ja\%+V@_klv.4\"醟g)Ɇ?],(8-_!vnd47;>&9Vੁu@5H-`b,"ӪQ|gJCNۗMhO/*(^CUH ]FsBmlEx~:E;Žq=j6Z㕫UwP kHOt-WZ*06k,}uS]lRY4 O+ ?GܴWׂwZ$Ɏ-(VXx`W6.ejx\-hl{t.k-jnxK3C Pg kV=B$L X|]B:{j涆FjZzf!ږ4ޟvYK,ҘVfl]N! 7n,UOe>/,[YӾcDqvZ _#lgt H6SJ߯|)K,H '2HRBe@*]8IWSV?01SQہ:FUE0XmXIv9jS*҃_;yz} yҪÉeZ0d(ChĽ oH9M)?yxg%1F@ 4AQB;<GԡJE7+dȚ +9y{-Y*Aگ .+TKaH/Ud ͖e&LlzPkwR]S Nj-d';r*T /Yi  7q ҂;q0 CWu 8ڠ`n!&4 8t>}D\iN0!b|BWOa3Sȧc'S 5*~: 0, LIHS5%ѽe~wB:]Ɣ0 LkRz] ON~sPl6SЭAb9>ˁw'r Rsٜ8™LLq`",'f#鹷^WdAm?,)'2Pu)]򵈾V#n͠`G6ZƞٱFVʘ!Sb@@%.A!"?G(a/l:) ]U#`a¾F_e60 cAEVz=GßIO9S$+`PN0p66(a;W>/kf)RIvwdBF5o *(f:– {e GR`w^ Z:$_»_), - i(25{F;uҟV%U*EľύI8|&ČrW '˥D̛rS@m·OQ;Z_ Z=YWWKX1y~e#ۗSjơBmla׍{^+̉\'W'*k_Nh Ju4 z uX1)usrѭQM)tf%]+NLlcS՞- EEg \`e:eR.j-J57Ub|*%K0NDS㮅bCmg~YP!Ie _aH:-Z¾w으_̾Ꝑ`IVpW)-N̫Y!j-+=g(ZG>Gdוyjtx2%{oVZ[C28 #wU"1#]'m;2n _^^mm"a~T\b1Kn^ \F'{2ݵg^ Gޮ,* j.aVzzV<(ܑ^9uv贶 Y\>gw F7 񏉓y8b;¨^WR>JiЪLX5?v0 |`?B8:H`qz"(1Avx$V1lHH~jK>kv'Uϐm o+tD_cgvôj)8_R[uTc} .iы˖5Ws%Cl''JLTsLb13XhERħA3%yHH*gf"p` щ cД)>Nlm"9/>_n?P@j(t:>0"Pb@ R;ަxIBrm{= bV+sD)~DNv#>C1X]MP0Iuad<^fج\͢QBvUW.5ͪxg(A`xOFR'*l@(MU(MԒ#NJSG@)r2bVRv5Ul@HsSTPS%Rhq{|~_Cw\pmW+z9>VV!9 zZ-1~Q] E7@#1w v !~:RIÎt%k8NiGEi2!Wg+*wA=(KYG\Af2)G{+bwp6[f@M9'-gbJ!?)p "DonWf=RIZ8&XhuRn4/ CbI_]a֨ ,,gUR7ttq.2̵ՉDO_kf GA }-6 9<hv2wmW(=4R"3( e NB6;9.6f8.M'q,Mr}{^p'na0YQ0CkK|otzR߁ \RSo)jg\o;[G,3[#2ͤFr߃A-ϑ`M ot6R~(Y+Busa  ʳ lig~inYsV[Y*ČEss aҨ<6":6@/n Xm9[`Z,6~Å~Q0 R@X !uHă= )YuG4_ڟPp5evdf¡E=6>Ԟٶe@գ}ܕ͛:c Ki?erW7+& V2*+Uqr%Qj@o\w b!)r*d 76R=Y>,9 KiʁV #rY T@gp=ՙP8E6X''Q@# Fr<^0iu9\[ \|{3qZqTBߪ)1u?H|mIj2u8h )Fhz+7X1ǽ@1Px`V=|3ߚо`Ba]}w@beCR;(Y=bmu#b– ;cڭncJQDuo#p (wwћldGM/k^4dzlFh(^O~(в rp3 jwVšvaD%y )<ʦYdl:| }#rq3\ G7"AN}ЬnJ! w838b* {cLװA4cdjڈC\t%n%reNNbu4D^]4E~h9@Ojkt!2=&pcD|&*'Nħ8;RLڪ 8m:T܋GV +b\q+L֎Fރp@FM`+J} SQdrM u:V%2t4L1ߕձnfT`|яxa OGcJntEު47G1QTo|z2b鮐`Er4 `>M~080W] &r0#Bef^$۲-e/ j, Ek]cKP麍{ǶZ1t\F5'EDlbahҤj#Fa-kS n,)j8W+UwzH?ix+cc\0555=(+l.(CgW]1 oLs0us|908!(m Mǡ-%4WZ"Oߨ=qheqp۞]>PIĿ?gGm`~5#U #bt]?ª C+&!3)~LNCBYHd3Q8W #{{q5*l;Og3e=|l!r_)B`0CE=q4%CA-~+5$ͥzEhcm,+4)ΫK1efxM2=kꝔ%EtV/\WЊ^" !׈VE,ʟ9afW*t{ucΡϴ1A؇Tn WVsbuB#~`T-PZSV b6bKzu[oN)iX#ޒ #:J=O8\F?{\0S5p%_}>ա){|5,/K iLș 5f!F:]U곈 5hfO΅Д!P^X t0`(Mvכk$?kAq^- a߭aí#VM}b9:+ H(ToYI>+6V%h귥FwM.D*^vǍ 4Г\Ko0ҎI9b&WUlmNعp` \P+ߺ(94Jth`}䓙1^zpXʢQ+|9#6>ap ir1=Q@p=TL2l,l$k8VVG6Jr-' |k傞.>9 8=N!qún̯&ጿ'ɧF mc ȧmvǧl6#d0h\@$H*3$3ŁZG^T$*]_< (+[{c%ƴi; d1:pߍx@2uϏP\w*9-JW3!ߋ⋋L?0RI cP{UE_Fx~#[79 DOP\XRpx \ M)Uxi].cfupaMxፂvi ݏy8Y}$IBVY_ }YP1[m8vzszgSᏹA~u( (,01]uΞ 8'6h06WU+ G K<9 Ȑwc&x՚rN, ~1G?=L^cy1KC\Us85jWT#kS]8ˮY T\gLtD" $RSD3pkD] 5T}FuK_S%g,~jU[*<}:`HjCk)h] pj8)(e,?)x|Up=Vt MeiR> ~fpw">GٷqkO#9@J FJuyb&TPAT T.:Ew:p vXsG@Xb7l1j9@NvhTznf:8,[=:Sn~K\Sң}'M0 դBL(ߜ@IP^>AS aV4PsbMAm +P󞲧]2i#]H>` &V&yNl|PXLwߩ }I?rV:+U)/X䵊QB*ʉT[VՍg*C7h]Dp`! K1[3ڙ_ll Ll@[IyKRk, O5R~R-B_f|'cf@G`^/_ {m$n4y3A{u5zz`|=xh#!xK^NDoۨC@5LC(Y#z%\ #̛UHJaup95z8=iD|eXȖ$ZLf u/ߨ<Փsr\xBkװ6v+vi9c0.`]eZR0\ODyMK5soA#pOhcRng_'OОj6sMf-*ch|d(yY- CI@jw;RR iKjNUu@;+cOfcyϝJeB ѣ"̕O|(&\azLn^%w2/|E&j4}pV|T^$Dk>Igв|,\J꓀NsS.QlsGH, :H L 9τ\,:G}N߇99'Y 8FLrŝ케C \ޡ7CEӮ8 ǼW?="0$IUC/*iBIш2 i6V}-LQfb ȧ`[ HML,|%an @/fFtjB@htv,v(>ndZ=4hVkem;f5q[iTKi{)ކpRN{Dć0잃̅&P9i${x0MS ѯEq#@#BݹK" (NIe]TvϵX,AO ö́Q0 uHL@o#MSe=֒8F O׆JCMMmQYr dr^# I 3"EW!81 +6a?3f%iI{vGx.$&:W%|.KQ%!'BZ ItY/7s[G$u[{'BX;d3nͻaNPWO'&Ҡ ~Af&bl@LE$|l B͙#uFuɼU4v.ȢݒYdC]}c#N|٨:̴ݘc_7HI<TnBFz-9O<陦nk!]F'vp,U5PZ\]_R3飁1$?:dTejbr "wOqjZDc4Sڭ6rsyU"oBK=$U3GM2;g!t_*d_@D lH􋨎 +ۧ,ȱ*eX">*o0{ )nYqqL]'$` ̩zJYY|ːzBi.y4%sG; S&riYzws `;TQk_8/cP7@Y ,%iIMqO&2dQ5`LS`ƉgFM kGMm|Ջ+8F|}FRQY, G .P.@ϱ:K,/֬H4xVcNwSܢj Cͯr>u4NUOSauчͳRgZkWL^U#T.ymIco(z>XE[+i;qd~D^7$\zdWO=u3L-"N&_ { 8Wח`~(ӑKu1:tj<}dB*5 CɵaB̐gYW@R@W_b(UvWG픁WVRZ _%(msdr*(UY[G.kxדd0p~ Rl* gDgPvS~n`NmDT}?Qz5Vm/ `4#/9ZIY r[=UKs۳5 Fd*$:@DV@6ூDn%A[7w1 ФBXOReq`  ?m'*hh85e[I򱤝ҷcUQALHk gVݸEo;TZo2B4!>dèhc97R)^pq9=TlD't@oۅi{AӒ%e_ գ蒉+ӦE,Q/t`qvR@׳RMr HeYCqt2 7qy+! BsWGb#il5j[pNFm&^$*o}9C_s5ArنNouǧ.J5гpXkK1J׀(oG 8ThVsq" !Zp:p=޾Ӽu:RW?]? pX3J0T #SPWi+.y#pm$m ;}wYF^tGYArթW mac_kX2LCIWe86AbRvsKb9ZtF'y rt0qg{VK˗+?= .Rhs1y\d)2hSr ;9z;X'U˰^x[ ݷ0im?6ШX[GJ蒈y%)l{L Y#իnlga`9е9"=A@Clf, o.Px3yB}ozS &,:e/ǖõx:b./`"qjX8L3WflY(~ɀ#^p:477h#dIvHS;v=z\~)`GZ\m.hݣ_g!-jN\7F*:wвmJr +:* `0&&޲Xf{UڎޚAÄgoZbOoD̄Byv{}1)W#7RD>-r<(dea X%o+xG-3 +g7+c} ]c"GJ9L 7J&"N VSk1͋NAeRktq65*]KǓ>܄RrxLv5r}]@ԐNdj|cYpH&:ٲ+UsOSt'˨:Ϸ8cj!pU&* mgu\v=xD/쫫Jr.,q>-ډ;1%K\:;/h=\s,Nh^XdUm[O^\ 3?uCt64"lJGj.% A8kvRXfn\c->[jafouے%kk{ &-'֞( mSfg+ O1[I<圤c\̙ TKST~xH)=:7(DU"ϢSBAK 0h ٱ^Lwr-~?P'^VQ2޺\RS2R&^ϣU[m%Q䙬5!̾Fv\tp%*)\ʦcр0uta\bϤ/#VW8mUnawZҶ:ĥn׽#38Anaa' G^|X>nOi2oZHmasbQϾŹz1 E-].,*iro1zDkmct W@!dL'I$f|AIs*^-Kbo\!*03}7 7E2WE~AOzR?M\ euq>?-`*s4]|w6\ԎZ ILN g CJ{m;ʇZJEob0ywvXG;(uo*sGzr Dq@l-^XIܥa)qCQ?ҁ=BABzWdƋ'P|Ѷ.h|!`(Ğ|tnb.%uib*ə2+G{ -4.~U 91dߙ!q9gB<#?J%V;_x-_p |T4.c#{FLsȽ-M6u XCQV(ذj:M!Ew V lN(C:wןܶ#ޠu-c|$0m#^+PvAW23Ǜ/ M-{73d;F - eqfcC 8Ǣt❯o(v.~sԙ.Jtx9x50IjHD &|F>Y֝*H lRWO5[%Ϳ[1T!衮<:3n٧s?Uw#7så6AD*:'Hj8*{#}PqF)_yX%^ |BR縰H:Z"‘AR|$#bd!o3TT-WN&^(ިL:ilAO_ DhmqwKWlۂ" F1p@ì* #[0,X}jؤ {E^Z£XVs&?;a{A2:qxkLi~- EM(P`imRumΕF9gv&/`w2LQ⏏KǟBOxLU/2gDH>$bяw27Bp)nUm3Aoqe,o/mvВ(0=*3Ý?W[bs j20Q/TҞBqy v>z|; "[p#zz]v9meUS$h̡5UĶOgؘVPnH^j_0 ܶ3)SqE6d UJxWO74iO9™@9-|( xLq?o 9駓:D0d@yh ƨY8jE8>sqSuMU!ߖҟ pX5Q!-cK33DZ=|GtUZ*23yWLM>ڟ ֗7e4 |Bz/JRoaIg22v%NRIR-z SyUl*BG&6c ^L(Ԩz!)p"Q y2t J/oEwEuPӍ#BYeҹ\5e=`fzsTY_@g͜n> k|PmQO=Ʊ043aPI謜+]j֗Qu,x*PH/ XV %v* lejΌX3c6q߅%pCRؽ9[Hk!XW}:=LĘ>M#_]"J&AXkOAÑV׷c.lH\qu jF@ |ؠ_ח.hQJkNUAB6F8;iP/Q2(zH a v n\>痢77-,  ܃~̈ C=j [sD+XW c' 0L1>vrDѹ=5J]NNP]SCe['q e~,h-7%h[Xu]T|S.hL3&jzOY jҀJ‰w۬cJ#qrqDf(qqnW#V ceuoiTLB1{h8xZ^Ќ:G𠷙qx0,j/HXHTH\ 7ٸM}x=C6` =?$~_Aɘda 5{vVk-p`"ΈD9s3mˇ: /=cޙHxeio?e9*H(/>܂lGB i0tFJyCZ=ӄb&( m!ZH%9|f=2 W؞LⲿQ7_/VO0^ߍLg̎<#(@K߹ 5?3N<ڵ;)M"Sg^ňC:}={døa"$-U﵋KOд0,ӬE0X[B BU*ayݨE,sY ;Ӣxna`M*KE\/R#Z0S,pC\ki7̷Lz-;áM*KZg;A`ମJ_&;8Z2Չ.dJ NiBNcoa?3,b!@~L$5T %* tQcOƟ:0> Ȥ΀[K):]*~_[H3]7$[Οןa2_Y {G w>^j?>}'r&/KX]CB*NQLVAWhcN hFx?.HѬn]TIH)'41϶k"+\qX?H57ɝ3c)m ӋuV+ a˔FFiO;K> #\9eߗ_^DϥR꘼M+lԩK_Uy o'[I)ީUEW@5OPaW-¬ɱ0_i|ʂwubf;nQm4x ɸy~ )XLq'.VCxY.Feк!t+9Ӧb‡Lt.C܀]o )J%xLTzƧ3*@}"pQiN'o(q@y^3핬h ވG\4 {/17UmiOĜ#R*`V9|.w sBiΙ(JRm=!qEMV = 3'}P~G\0r+Mź@4xW;Rd̩l4~/,lAܞbhn v >CfV͏&=*y 7!WTW1 B% (w(+-0`"4W3< c },YF|/EQ27rÂ(T~]п/Bl94#'ckxk\Tq*OH`gªDq=4źQSHp_UЩ4ŬgPbϭ_eu3etό'.&R^df:E:%z.q Z{`/Gq^jH'uN! tu?'YP-?Z@*?4a+>t].Ac' Iׄ6?nԐۗ{o[~׊]Pƶ䶸$N[75v^}qJJOܣ{.qZf/ŏ?#υ[GY[RUR\We|â4x|+ e7۔; ;`bPd&PeJ6G7ٝ:7}ۭz7Jl'`!&}#DI"ϑIƸ}k\P ֞P4t;]3i*,|WH΄5AgH(~yŔ@SjM`gHGWq'݋v&&aj%oBq۱"Wѳe2MCtJuߏrR*T52>V|v Ý0W XBGU/s0 u{VIݗ)DRiC0&ʏ Lz 9L$k6Hm)I``<i˜AiVD"ϭyP|+t-ܥi?m B< X8q5aBN$RV %]ɲRqޜ1@eZ&i-${ix ہެVi,P݂:0l<kFL{D{kaf>H~30 w' ׏HX>;5mȃiٙù/W$Bk\gDmv^3n9ODϛn+7 6]S Q1/-O/>DL}prg=R9]H!Q[vK(od9mY$F{a1$ ZRFW\>z2NNA)> OCЌV_0#gD" Y3 f+mR/=" .L;`d9Pb4_ kl:'I+ݚiE5Vl4 }&t/<\[=;om[ ZvEUg<$@Zeff HMw +$y 6N3f/aJ-r-'EqN 1eP!#8YW7l%4P6-x@]C\nX߸au<%x{~H`1KwIHc/SU4c h#]/lBVZq|ݰW,CDPPzhˬF6Ȳ԰IS DK< ԅL6%s&#C&|7}LPorUyϚ'V=JXM?junzc]v  .e%(i`^Lv]lΟw=i" #lw-O_ܣĽvf苵W,RxkY1>q ]]Ę'(: bX{+ ~{eՓ8G7>SXpy.o{iNlZc*ʿ֢ƸI2s`RY5:Qngxi;%?NVCד^tDZ9 陿-AъLm\: @0s!l\uwWmZM.Jf#ɟɉjEt9&*P?F]{>~X ή]-4h̴aa~8*gx^P!qDW5u~BOzT( c{=@ RO8z˞_:p>WZ,#zy$Ҧ㉘|}uXP7 h|M; X Vo0ZlyH]}{6+%N 'mA$9kv=K"UeFs$)$xPـDf?hqI"zUqJ֕ބNLq@Uܾ4CKhwXkR e8Ǎ.b,8 + XbWgx˹-?\'-:,ᐮgry昃#dCt [({)3{WBB#7QwKZ;g"ΰcQ`  ޹a5 7Ŝ+t>;8םWpE7B (a,P}i6^#YʱE%L͓Iiֵ dXx`D8b]ןtujiK ~ec[?9mb;m.2_[*L0d)ϼpA5Jn.+VF1W+粊@U8?X3B򣰠zD8.j'Ub|yͪ!?ſ A53]R #)k!wQM&(WM@-8Kvx*tDPSTbRQf>t+)1s\iK9kj&\⒖yL>hjG t.@|j8-QV-"V6G8nE$-ꀸxE ;D),`us(d3xs ޿ vg8YuJ vFFD-rvè2fy{6J,t٦kd NOE+,RyOwpAiRi n (vb"1jGxQVR=C(=cG ԛ;b> d;\Ia2g8Q׋-|q #$^n`?J=qK?UAp2ue3U0}/tBwyi6<%B9.!z~]͠Krn1~5R+Mܮ@OWvPYg`!ᚭ.$Rb mYj, Ʒ,q&7,FѼV$mMީ4 i xm̹ib>uC-⪪ Svu~mvO$V4U#dj<+Jb-!b]*T8`x sO|Z] ѰyylzzY׃GG)vӀVq{9HbkZS0(ᔐw׎I&F/!OxF<Ƿ#ΔM jˀQ)+d34S u`Zxpydڛblbpb'4mM(㭂̭l[fK[>=Gqn KL<7s[ezO5C7E*ȟ 7Z,đJdg$ 3xSVlb}Rl- !d:bY_b(pqR!˕BU~}\dNʟԱg DiPvJ2X;XSuA}h ?!?:Ě4_{D0).%Y_BQaz{DhiŤAsP&Ѿda_J"%S æVXo)q~(p[ʠ.)i5o9nF̾W2ɗ.vȇTG<:vV"-2^TEjg`$' 2:C=GkAdWRè1t9DS3uõފ##|͈}DQaB50dsb+s#BY`@jxoqG7RsOcܻUrmoCxx]UKǍˢVhdj,)v%l)Zg Msx8eK_gW%V^/Bi:]qgrCmuB{`|}ě*8HZL!$\#W_^ X]'W{?5QN:hߠ`jO$(hyV+3p\jy;sێ!h>mac =٩?Ƭc|;i@}섩 -/|Ud38ArP^eD)g,{<]qe+j J܈_n] ͻjINvy˜ _%ZӖ /~Bbd?7Qc t gQ.隥Yk9g"50_h}8B~u,-x|́C,h*o lF48SGGn&L4D78[A[jO[`A C+ ,VFuuC%=+yR}`ڲ(Kjw2la! /r!&2~f1Q'<ԇp$Y>JyKtԶ_*0s`FI^nj}ϐ(.Q?ik-@e(TyMKȣ ~2!q(3nkdGfdU]6Mˠ*í*/Sb e-?k0[-?17M{( {؍m{nxg*S} o:_T? xjqҀHD^[{ZSŃNE7 G3]ũ @UKt#X &:6`T[{,teK1}rAG A,BS n꣱mP];nc$09M)zVsQ~ 9ݙKXIrT԰7v4A)fhwuje{ a)м]:AOsh ȰP™"nrHb;FxgERufj5\"J|;(y3Gs1_6gluղ k FFU;uPgpr*!$MG6.ng|yr/kp 9_?ݙ 3L;]"_a~fuzU> ҕsb1Eԥ_ ag?_/e$œw}%sgi2Zo=b_kV6\|4頢h6r"r7.7`%RG.L r ȉPם*Tt SYZ4N0SQ p(zWw~ y\ݶUd{xŽ^ߝ$}#")Oq͌Bx$z(Vա.! 6U=>HnьdВ?L1n \+YZʂn8=ìn Jl{Th6v[r(97"09ׅi\&$cv2{{͗k xۉ&tbHl wVTј 큚ewl.tRcJ)B]lpFČD:=<'[ΙM?w ,ok"L{ak6#.p8|Czj 'p+ZOuag=;b t6lG ’?قJ6_(v y}P{lL]GoL 0iy.:jڔ=Ij##2ILŇ׌#:#aCq}YmC-kKGVI@RVI+Bef_KrHu%Hvo`÷{9d.E,]5hKl|ȑ1_!*7pTYс>u2%Al*k%o$֙o|;MľMyoI NC{WIp ^ߠsõy_Ln44DSUDR=4tj;UʸhV1_:-~ ]3TJ$*ܿ;KΟxMralq/2щ:X4^1t$i]uK7Un:%PɏM?'Aۙ~yCpMEm:6Łl_>koOφ!̷j-aL;]1?a;_&mdM|zk0ƫ sz\r6E^j  F;H<]Z=PL)u\&sJ4 CNͬښ8]f$bV/λo'(?s*Ty4[*ThElĦ V)COQlZ3 7u@o~J1 ;V{ߞW¢2ɨ†n݇x­Ϳ%іVdO&3,Rhpe$-㡬: 4FG| (ԱVbcB!R0]zR/ :6 MA ",6nrsN {rN tkɛ3nCRz1M1gk/]V3 W7!yw.d3<$Bs ]+nd:(8 S+(Aע:־4VV;p$c,>rzM3iVtvtz,12+dz/?q1I8'ȸ'Sbdٌ8I / AhL/QpS˶o,&_Qpusp7s僷x@eI BoYu4TH8|}=?\ͰLk۱\خ^Q۟%w 1Qlv*ėvi{D/E| 4~|mq0Ýsھnl4^: @fz ?~m2$白nLW\^!x!G#YW`ت3}& 軨.?D )ЋN>q 8 +aŀ͘j[ii]EP?Q:C^*}> K[L=4x^򹹇NsnhK>8osd抄Td\>;W"y&H?Unj<@` ɇ~W2 %S_ cʰw'tmW2H1:d4Jd턢VZZk Ҩ% _.Y/>ĩ6XږeFU9B:֜&^9xr28Zn#&GMgJ|kYEէ=swh%a.s֯wjɧ9y /"_I"굍>)q=PsV]'s%LNonaN:M㡴ǏȠuգGDW|@RWme:I<Os+L{ !&޺?z(RF@>Bո/BO:@T]sA>y=`ntznHϝ:m бM|kҟ.'L< 7>,`ޤ( -_LyYUX@ۯȜG iaH\_DpFu0F'jkWV٪Cw@$Ye3LlSMƳwd #\"$4ظ\bLսKo);XKA( gqf`"3O &@UFȦkA4"F5F|yǕ$v*e;Uq́]9#R(V k ͡HeU=$Wri. ۊ50oGw}p޽BPK:xzwZE\۞ h x!y^UVLI$FP%#J f'"2LqW^}S1jS U /Gy{bcd˄2p)+@k:5*(ڿV˓~t3G%\1C'cZn_,UP52diY^=oIA "Ad85$A ׭)I ɷ E&hbBū@KZ`~: cmG5HbxjIBa`+,,53B|SCŽb3"@ab=R潙`yx݂:;YnԙDVVMo3;dx%)pUMt@8) `~,*U(yf ("Yyp߂lhFܮ,AcZ"S([ e_mdQmkoϪ( c6a7-d ŋ9/v^!nW\nZό}ÖK$wY5nnS3^O(H,0&i;WRX:#((0_ `M!ՋŊαJQlb+Tܽ^"prnU]gBhѓԤ$n'Wnp__FsH(a<)X' cZxKol_ki9^v* '<G0 BfbX{cUFvC,~kJXE`Sv5*R -qByblq vst0`&$dda6jBLϝU8@O_d6eI|IM<\%\Tn2xűPQ8C d-"kC2CCI&d) ʅ2>&12V11*\[2fXj|;US)ܕ06fl؈a 0_58 IhW7gHۄ֪n{rrT/3"3# .-'g1(WȻ! _!*B_DTC y:p~Ww ʙ²IxG Y R0{D~2 -FZH` Ӊ`=͛,KF_n6Xjixm[xz*LّƵz[ty DF" ^^^ #7c5+樻3U wC쵽w6TFHA^d U S}18(ABMוq=9W0n3Eml ޺Iab*a2_!VԠ Κ%]ެP`CLs?B$e"аx0WXG} s Ncf_-T.;x&JWAH^XWzeoj?! 0N{ɤ#B/1Az| &,yLK˚D=+'jd9zgGɎ/,0U;e,ެAO4R~,H-GA\Nm|9 ,-4 K296]0_u7635@NS_Pz:d z҄zNvjX/B~x4oN()x4j%*\I{;%;w{0`;M:_hH"FMs65 IG nύ)pb~G\Qi Hn☆cW1',qnV#DkdЮZyJ6# g(y$Ʀ@ 7.jvl " v0Lr' O˂!dYM0x+HUICXK驄au,mw-X/_&:3QUwŠ%\"$`q%ϥ:F\TXNsS]!QWM+$!uP;K-} rRPZ2|4Z&Wi3(78%);}uAÀDp+hlxDlM;,:Yi~E͌.OӔ]2  [WEWvj' G67c;*żc~r`O ]_%Amћ5oh9X5ǺxEC,\^SrhR+j۳zGW RȽ B,C<ڍ<~q 5 )t}:Cugయ]#~m7[<^gLyxS_?"x0Mdh.ꈳqD)45$FBX'.6-NҮ^6Mg3(PvdvKZQ]Z9h\h,$n\ E Wd[%G' CWtЇe;dG4(h*Mqc۝J0@LC{/Ƌu ݏԕ44VrE>O u "s(laֲ /bC4a^>gR="@&v)%ZA;kUgTel8ٟX@@!ѸV~ I (h"RnQ8;@ B iy- C]y<==M.k5!JkԳ_`z^ǚA zSvf9asl8vfa9 wUDtL%Q/qvU A+Q@?qo!WDȠGp(`9I|}3ۖn}Q$ü[!<=b/D 6Yc}nH[rkʭ$]!_[O@ vCrj;Op%p3+(ג?V7(%mh~Q)2L+~a_GɨBZxZ@#~۶*"4tYy =_<.qVhDhb馐/u"?JeiuFmpf5MEdyq@tq* ,,XEJ |Kjh5Υt"Mfh S=gAV]\QHi#Kmx|KnǍk>߹tyZJ/ q)Z8TI{ ֡H1لYtRC@_2ȝ6GJ\GRk7N]}u~݅Mp` =jvZ \tŜPa-͝/u?ʔt.L^T0c>$`kµ$%EwhpQ%q$>½W=j BD:5 gAHC_[=F6,@9g}f̂sh?{ ݢCC~KDvY?Bpv&G]lDKf8Pcm|l ?2*Ҙ9LS_ P'xkqUmYG#ttԝBKY Ǎ[=/-֋(*KMh"mWP𣍶K:rXA%CWJ$yX‹bז xiRo~ ( ]Wi?6Dhc3g]rnzؓ_Ruk1jxsr]mެTXA-#q@29wP8SvHNUPM>+/}ll kc&ukK0Ii)DGG"_?Mը΃<p g:P(|Ŕm(S.*Bi i'MYU1sa,B{?J $:8JI zϙpS tP_a.<̎_%3L x{fbj])$U-P&&Y0`]{v494v[I\fg]RWL٢sM.d3 #&- U9XOvsmcw[_j|8DDlc 3X5uyl`˖ nÞs KRBaJė_5u"bŠηݴkdhs(Ѯ5_\Cq^VT3 fΈYE풜׷QR%~ GT,H(ғI/Hq[Y:ήd1b(%d@&ǵ0?I^,Asv'n s9*ȖYAM첁|^]z.ߌ+v1Qriy!.b6O5S0b({Tb7570~@ ^ʚf4xAB&0!* u5vw|l[|(px\*T˻47n#9xWIuFlɠ?,H#ob“1~LqU'0)&ӽ/r!tɊ!Lū :,s&/3o` )+}{戼DUSƦ8G/'L^x!j/'D%q0`&YfV<5'tNVlv\oژUpLD/k v='>Kn!3PyL<(25RxO~~?$rމ"9Yw<4[ҽVRF%0! H2 # p㟄1xāV%bK'6Cli*"KK\Z~|:S~Xw$ſdWءq'yqW" =~$i$#1sJ_w cf.K$U5aa(sV9B^Ę5P2_7o6`T??yn9tK>ޞD>a5h}-WwݘוΚc ĉ4NMe wa)b^VHm)P‚c dZ~0^GjY*U ˯cV$a46Tg7^q'|նȤH3'8^i\ yf3| +b ^=~hX$G^7<`#e R#[Y&n$ĽY`.gxeUϑݲ'5ˏw~5&? (~/׸V7 |vcǪq5+{V:U(ÎS#-OlBXbdQTU#eSU",o(O_0E\Au.ETU"ҥ!᧻W :ZI&z=B8ӿJHҀxLw'&(a3'֩N웛%qgbQ%9:2p/7NR"[P={gr:b7O9!ԣtKk\Afo=SzUfEMCZ3## p#יKDYl pMX2\sRj8QXGm%Cyul0t8_6:kP*A id mM0jϷԐ.j1$L9 \[:|fjoFhKF#` [̕2^-js$P;qCkҶQ9-H-u#Ec?syV KV%-QXш xswE%RᏑBLJCMbLP&cX|ҠVe{#6j3 tXɅBҔ$EЙ3Ɩ,<ڟ~ܠ.~6zGT-|5Fیx#ke1U4.{,Fb:c*J@یx|]-0JosUryUy?QZE{/ۍǖpy{ A]OeXb9 OI 7gd8!ECvp;@PŴ$VdN&KY4"1)>Z8QSQZ+UWTR1_x9EkcR2l6r;]}bFozlg0}:|80C&8Nj"|φ|^@qR$ŲLshD+ i:A$"b4rb&ƽr(uYa9o[`Ҍ{=}j"氥0QTSЗER+d`*%`05SmhRߋqʅ IԤ` U6XmM/5ȳkQh1BQp+sPM R8OFQ34 제͎^>eJdyY@{(Ԁ^FMVﻕD!;^zA[rݼ +f 1u=? sZ"Bp_x |QyZr1<8BNW  ώp^$ݤM3z7Bn]\F[ж9 f4 b$퍒2g wuAI>Zn?sU|lf_BQ;ˈGS gyj)4+>o^J>9,c{ٸ5=KXC0|`щ#5CPΎرqɦFرjmff%Sx%C:/NovaƄ0Tۜ/umbw,ۭtrzpuLd{x1.RۿOiarа_&|Ɇ!IF@vxP\N@HOY .iq_8E,"ehRl'8ǽLT4?c\)'f2OQ|p!/FLWt2v0Շ=`=?Tъ\okK=Kcc"'(.U-$ѽ,M_\b<t|cnQRpdA1sV&޹?Bo"-k8ZrI9K$:m@)tVpd{260|"9`_Hdh!\"A4<>bMyXA3f[5"LdkV D Gp&:{d@&č,ϟ"E$N3kMγD'bm*r^Ӏfa/Fѫ"nyzrXEg u3%< Øbs'Rczok{T;]!cֺ7_VbƱI#Rc&if 6>{ln<-' { ?)}02? HghxՊR4=hXkQdE\6 r$&r8 O¦j}_򎖆W@mQ/jwOuGez1 -/1AQs]iX ,xgNPrxPr+c28"vep]ʲE)tE@0Ab+u.]3}| 2P,ڴDƐ9HxGK}'2Q‡˂lޤ)I(Ea}},|F{ %cqtUjsMH1O4$p(Ү^8RϔQ³)W)aՇ7z=}`>u{yAS"R ,D`E80ޱ-B9YxssyO:t2l4`/~20${oL 5>hUt hKϩ5%#@eciq=c B%7{Z`SwvxbFD#7ᝦԵS3=h޽ᬨt䟺c*fxsGu:!(<;G4u%p0oWSt eeB7M>Kf ,E䠊5T6~:=6-ޤ")MF#@FW]1ss:]߮|4铹 G d=[0{%yEɾYKCm0K jpL§'ng6%˜{*R7=E~Isfrsܽ]$¶p8,Ky!!cYfmisb8s`V2Hkh.,Zuӝobyryj:^TA3&!Ӆ7~7 KkjCs5D @H]<-)YeHL({W;džrh jD:',FjE4xEl>*V>SV1/S6/d-vVÿ.> :2`V6!Y3.ɝ~wBS1r^xMTIMG]1>b VS/'gjꁠ#PrZ5}ڙ}7ZᠠtaCI|<ڐwʳl;'xNs>.jaPy(c^PM957o4?dRXػa-g ʚst{ׄMp~/Tư6ce? e5FdĆޠW9ڪOxG]mw_F3O  .b;KX:>?8rq,[H#\z* B@O9ɿ>}ʂ_=$nxFƭ*(#%x6Ө[tvv効Lb&3_*w 扦AEۊKaкmP2D\UwD<U0 @sv?( GۊYx }0e>%k>vH;q"!F y|#Ru׮@X:;\mF5S_)Fw?o7_ѹnl`+b%Pn4EEfqB,mY?J(zfĢ8;#S vLuDya\9 4eĦvEMͣJo2$~|Ÿ<)>szrRƋ2JPi>=TQ$<9UOQ ;牶R3׾Z0bgeA}x^EZ[bz!#sPpDD ^NET؜&- 3j`螏t-_p XK1Pp5H^0(@ًUEv18v@gnuN)n*,}J^1GM^?ŋ!C#_iciZ)a\K2qA;!ܠCz n?w$7ʘFBt2oa|3Yet(dA6躐QW#?kZJ5rYyTvtcNnX^蟎B+0FHܸmt  qomk}7QAqI/+ .&6_{t:g؆40G<3sْ=*%U8bxt ɳGcaJ­y\k*{uG%VW,=˭T&fI=J^x.bRRWBliUc'~ynC>KJ Idiu{ %.>&ʰ^v%\N @(/s+2Ǝ7%εz1{oѶvrS \( !maɴ)2V1p˯Tww|! &٠_p .%f-)ETvˉw; 4&youljo7Uߦ5w`UpsP $rÞ! (IF~$]Y6F|ԟES2K4䕮\1{`7"ꌿjnI էѥϒs4M\;y\4Ddab@/ƹ}XD]].2cvl73 tJP ˪ [l`ٺG𷒄/^Hui0B7wG@=+-*80%F@S4,ƿZ#^]`tĕ\L۲w3BrhJS"3[ Ö0S9`gyn9>#Ꟃ 1;:˘ f \~&$榲, IS$a32'VR}?4mo7$!+0>$A/~L̡5 b~g=SbS\DS!f i_ б>O*=j8gpReT(L·soU!wTWw, 9gYN/ 67g@r,gӥGGf񑇰DJS~ڨAԴ%5^7hy Z#hĬ,Le 1'=`FTINCNmâA'*QW|ږtPX``_m߲U,!]b>!ÿ4M8diA_|G<fbWCD Z\i{zJE&XǨ]S6 ̦24jÂ׾|s Vư֫Z'_)&X<z`F3+Y}K.ipbm⷗XDH; +< $QePr,y꠯ЃpVɻq ʒNAG1fmUHo^K#}pޒo;zk{9j5.⥍sr#p.0pr<h)lZmY|]qrאC!֞%+ zWg"߃k*=n]1ioBŻBuH;]&gHXBPr9j)8m)1cփEIf SFo6Kb89`@׋sxݏί('ɩoћ 3y:D;!Pjs{oJ][w/-ݜ6 4 VACrútg7m4EM k#&;‚D %I7?dP5`b+Q-GU r2(֡bu;o1y)qVX&r?4=HT^R@e[mx85xЈ%wlgD`0( Mvaf9]uAaHNne7H585>wVBAfF7J~E?NEaᇒaO4<U!/ _tX4<@W䰯dXyK?i&zY!lsz \ώ/i≿]YX0l2[^=jHSyS2pE ^/hz0D,z1H5-Ȯ[q@)BMZQ/3a@@,DX[r=KdgUǿc Ԅr$2A;?qh}@0ph!|9㛢"dgD1$< r}^ڻ$#=zyZ (&k1bl5DICϯU) \(qK]jnfTlA [@XQ"Nᣑ ܙw!\SOLq(HK#wx~ɍ#c6Gڰ$E ^"|F`:<#oKC=ឪܭQ)lR (Uc-$O+"֨M0J` 99A|]aj"4eiV4=pe1StN?W+ۦ懣&~wȸ;i¯J!yHƐ"Q&jfH1^ y 65xcs%\FIXHftk IB&B52ā*s]]G\+DuYW$|46HHGؼb`i`cW|@dLtirxR)h ׀8rkwέ譪Q=?; ĤYh㘗Z.B=2u:QPOnڏ!+R*No`1W=؀' ~݊>%/DEl{0eΚ;\ q+p^5,MaI(qwnEy3'''o)xx!x\'QA졢ÜP,wJE64/2_Bi!h yyʱqL-O:) uykr.=)lCyO.],%V~ѕ %(i7Ƒu0qxCc#QJ}{8ZFka~MTfn6[ݜ;hB5:g5);ڸ1d*'WwmT^(Vd1r,ga|#2ZqWqZofZN(T!ȩUM+ӣ!XOHiAr:(B{+WLo-Xұ;4\O|o_׆ЗdSCtEN 8]#+v'XW'Pd >)BJ:7w'df`R&~u>`K2e>q{x;RpL NZԂ55m\ !ñbi̫,z\ȇd#ZTYˀݻg\X5Z^z΍V@1fqSiSmB=XvkH$ &7q7YBiجm͟KSxD\71:+-bGD^IW);툭er~ fa#u[زl .hfK{3u|H1H[4[=G.݋*o%F?O`fp`az6s6P"^$M 3iE`3ZKGpYBK͂kH34GN#O7) P{ }: Di[ط<.<5'v98M6vw7FDGw{O㛤?x N .22ILW孒c'2ʑʀ}_X/TɄpu}1NbN'#N1$GmQ7r 6=W.{n*:P|mNIliHM.HFCF8tμw!O,.G>f`l *$!4*S2V3R*)Ta(RO]01mqK PZ9NF,fNd% I TSkF Nl zNՖEK=|p*W4X4E/(Y'.P= {! iS\oV$\KqN:#! ZЈh4zBSuk&6ggaAY zI Q^GFH=9#]kxsxd?q$h?[iJ}Octgڡ2[0IX?MwzҬs!Έ@lɨ0EgZ q,/э5Ŋ̪-w"ռ"zlL,bim<̕ ϹhUw/!ml:Iwr)nӚϭi38=Dǒ ,sPm\J3{V` vigKZ{@5;؛?+uJ:P?޸hc*pK=8+Hw>%sOnijs2n|ynq}'Pj nI6İe v?Yo% `MŨOjO[qp/.bʟ X2HDэ0uP5K ^Y/1ysÀ)yICifMr1PCz6E.~L<%wGG1Eߩoe[2l!yunrl$hܔǡL&S Q[X:* `iڔ N9ZuAހ_Ib EĢA7_E,Ԣ˶~ΦG_H5> @c^T%o"_4q9R<>Ky~^>T,lXRK /u+Aݣ4ܹô]::рIT^rDl{^Dm3g]By^E9pȡS?D+4u:GbMu >S#H8eH>XfܒZm8] `옐!ע9_F?gSײ+F\1D6NB&7FMhh6hAПN!H_"-F$ 3A,^ihWӺ/Bp/G~<vm~ڨƪ祆KPG}{]Ihs1B6\ݜCgow-;Rԡ\J2ĀbIR8kJ,r0j+6` Հ12G'D;!*_*ˇbtu[bɸ6V:ÍkS\7CÅ&2u YP@:|k9n^ Zjf1ާI$'JPGd:7R8`q0(6 'g7Og)j*L伨]ִr)(VV]ߩ)jHpJ:GLrL .xy@:bD 4^!S a.gQGrҭ}Mz-x>jfO?.IA<"{CH\75=.5 HrwK z>D«1zYzeqW曟?5l*}U㉽:}L*5f> `GI11q{*mD,B4~׃ȣ!|-}P8y? Mѽ%:"MNV(GAl"ˢ[2h1Gr߅AhCA#g~cU2tZm 2D> U"wj6F&W됂w+VۂIOUR=GҗS07jdVR!K/3Hޱ-T(@xM|-dK v0g;ɛ(<տ دJW/p'cƳr<ņ!k3?zwd[J]-wm4Xh7?lsf]"&.URv誽w1Jq3s1g Ocmt)r˫DǾDx4L( \M$0԰e怏b}$RXnu/"#sMBZp`N<-8X\pؽWX@T3l{De3BV?@a aKZk< `*; ndDdԓa<#n8x` J{m.jhyQ:wZgHmQ[AIa,t]uhP5L4a6_ٹS3Z$Ve SuTv ZXpֽ J{m-9}?3)6!ڽٖSpCDC-՚Z\Q}"H\淑E,:~028=vwW3阇}))&`{,w~yZZPQrq{~_EQ ?mٍ|ߚ}xuf K1;Cg[zJWt Ƕ+Z>@.Ă5T+nvDs mە$BqC(4@VIndD#ͺL$  ,W4Sw;!INaSo B\/jUor&Nn.=U:==sWt /E;FL9FH$n2Nn=W>a$5ox`aMd<:/U"B>&TB:<.Ɉh9+@|uA4úti]{@g>7c465{ROkX3z>H.v8XLр]toY Jcy^T1Ef(!2peC 3x!bJ8UKj?d]+V &рnQ{εΖyTr06\ RFcVd% &Ҵl'N#M}r?3| ޣIA-=O 6EjnOxdQ83̒&5jW'b\jzp6O8X:R8W<њϴ k&QT{ D]aN`iKJʳ PءU1"I1-[R7^%ڏQ\MGfhwQ,`F{CLڕ .$oٯ˄tXoP~EEBIxɸLd`WNJUW3B.ozV`C~}*w!ͱ7ƶRNf>I! ʎxtY]Մ֊_ڃ/њŎj8%,σMJ'&)0 &b7L"- |F剂2:ދiD#"Z zz׬o<#s[!fA^dM^|$ZJ 쳢LO,o)LZ A󁃳 CK1:z>JlW: |Jr]c:t23 ?7#/$+FŠw. חV8겙(S3ɇ&T$ pJ8:pM iZZNsDž>+v}s*>qU'RiOKXjj GqH{ۚ-I03^ ή'#*#ڥ#s-H`N5w)T q,e"(Lcr :i]N%hPxΊr%-$_KvQ}I-ŷ.fo5jןص"}2WxUvrڿT5UԪg9z{nu.%qgMd, 1@"p:2Y7 /ASx(Vic 0ȵ6NqSxl\ PG/6L=͢@bၥZlmk5#ɶs "hҷr,ٕC~(VOjXb8\iV̈́ReW}]jS_rl;U?Wp9R+I4s&yGBo3삟 :K7=0=HFPA!iR?f&EMHZ4_[' kAK'P #~rXӈeЂ3\EHX}jvR9@tmtH{sשF>vdDOgW8g9/qi#4`0]x?0涄Ęa0#Bb/ }$3*Iqa;4ORLAI͎='17vjZVZﲻ~3}՛̉M):Y#MFh& oX$5 MUUf,+A{t (/`MI+D,L IϐdWeL f>WVۮ)X(: Z؁Fpc1o ۩)]^i3zp㌱ln8M6}pZ#p'j֚a[Aw3iS|G\LPo*8ҖdfQ ?v6vt|gygOytP+ Z.3찫cBP 6]HNԮVI+Ì!4 !QyX68>W$^1@/5]z@滪+K#6Kg쌥e9!5 9/*~QX>u<9 c#N!oXhSm[EDk<xľF@Nj͗t5ɎQ^R7=Sl)^[WE) Pl--/L&1ӗҶPOؕzE=,o5Q0T|&xh*4 Sf R ?̋?g~=u)K 66Ak$~EN&3p}!SRCu$ 1K%jãIz<%Bxޠ'@izZzFH%z(JdUj I{*,l׭$Jc./lY&c$(6 @lHM{&N !0mYm__ٮ}^>&6_^}u?o>\o0myNnq辦q: ;<35C1/DOypy,@`F =n0YUKՠ.q^p!}ᕺ7Jљ^OVxZY^yf `$fƑ-\]b3.j/ 6Q"ZEL+g)q)փU"R&+BzQ25PpDP0gr[Jv9sg` K .ڽr[ddM[=?Sp;j`f}41=Qf2lH1̞U[muڝkPXИ^a>r]8w`m,5 cӵ,PCi%dWs8.0Z)F%dB:zA@. |Rդ5/ar)IOfd@Giw틔nŁ&+r|; K0{P] "lK2!tXbN~s>JZG \4 'y 1Aݿ Ȍmm3|}GfP<|_,v1fg@ U$R҇F;yPڰ lF2,r l&(8hK?J(ΠÛ%L:Z8Vt"0utE##[14qV=b ]r?\pG]akW;0qA fͬh(LZmvsb|V15Hoo q#4L @"7͚d _b,&~0Osզ0?p7HV(53eW-Tкߚu]?۳<} +!g@ޜMU>sl%T),=2@r<<=MX Хc绍 $˛YL9eb 2R;b%[m!?7擿(nPAWJ-}ё]Ott(0t HbRVye:$Ҵw$HJa{^ cjh]ԳZq0yc~?5ѐn½ [kk)z]ll[ܱP߼qP5!y9`Tv}w53HZ7TLN^ɴ9j[ޗY~d K2y7ll21Ay:%H˦n}א\َI9eøGkIO;()ñSL, `PSښ-BLd۽N`AhsTp9Gqgoqy(XF8n"D5Enx%4@?݊>h6GVHSv:o%#n/Y"<@ I%#sȻqPEvE=aٍɓcT}"nk']P9Q, =qCF2HGGt+C$6:L3aȻSe:"@*YSWMwjJ&u-cPy"w1$N- T{~?}JMrcY)]% _irCP !b{,Ӎ1YϩRﳧ$@/nߵ0SUDn0às_>1Rm&<"kB3V^[KKF7zF}b'vpjyC>hjx*^tf s1,UpY|RYnleUT}:qECiiOj!py} bGyU90=v8l[ /;TQqgpGj]#DȏC%cdYY0 .:9 reeARDRD  ;=Tz$5U)D;XAV )ys({Σ l{Rzl 2ng\`W+(Cr[>YJE ~b$?zC&3MӘj!\;2D:"PJ@3tAQ1 +֙i&E󩲹h|AW~@C֤\=t6m)d"Ct"h&CL4m{>[DMk]3%<9SՋ 8(PsAUn~A·q7[U^ܑؕ\I|/kaRʪaq68 OHʮ&-aH/X7G+JHBΡ$<$XHz\*- b{6O ^܍ٺ0,{]Lc)@TR}_9u wkbgT~RTEP[OSSVrS쫊,S\f㏩GVds|~_oc=3rZȡ-{/IJE7ohӏj#z˨l_9Z!?Uv#YAKۦⱾ#/KnI+ܷV GpS&J:SP06,>Y^_ r>s^sIJ6<]cӳ_([&ԨMk_dE2eR{O)s/}]_wD4)F#uOx̤%oI+ȏNa2A%~@ Zd8wޭ>V5Leqs0Q3G4_QAD_:䩆MUNt$W?$R^@uvQW{K*nxaDd8%@/0rW}3C-ۚGoMϴq}C\xcqtgJjv.*Yuo hӐglM' 0>A:@{xĠ[MXh,,i?0@jK b[%ꊃc G}Jl?ʸSwn/&_X?9K5GSۺ ퟺ*a'$s"?T3`a>a%+o(E=-{)2q$:$`*A YZRKE.ma;%6~9d~W9h2:_ \>EC _c*wr7sa~EvX#|@DlZC|5IPsXWE!УhM UXcVUH&]ñPZ:n'޼0+)n(qxJy*“gTx~y. Bњ;T.SD a#ޣ4 !%4Mn1K /b"R'+ |ޯ@{AXZ^3vLumYv4$#sREj4>Seԗe^v2,@{J[}"28{iE..-[rX8IrDӾ,Ge"D#N{4߹7$ +7Ius\Z >CX2PT%goT:~i| .* rkbP۫]=T&pB}Lj䭁C|n!jps6оAZ9`W zs uM_5Qn|LY *','[a(p֑fQoפ"KjIj=Cg7bf4%Z2+'A~Xژ|gRo6UE2[5 jmM_X̯NRO0Yĩ6eʗ吕aXÛ~s)jGS 5BG/)4uM2^?@bM`)O7rri Уi2J89Qx9<ãe%"5+Qb0rY~@w fkn4ABJ9'6ѰX!{DU q¸7)џ@O nQM3$Ӱ2J`iHxlz^&$>=QfNYjd/7r)}i;Q#5*pOL|6X7O)FG_wIf[8h}u$ w{q xT͍BPQW cU&G<36(oy0Y ⶚5^rQ5ӱq`FT-Hxd )B4XbH9m]iߨ2)<%]ЯU]dOX_\rcW jPOW2)kmb6t7 ~ьf"c1 +KQy%lr`/,q}"iܨ,+W_N)h fЩGfZ*Ads)fsRpC8:6 'et5LqA}KJI_ηttJ7?cauHoIџ /K`U; e]Ʉ=̨DBR ^l^*e3 y-e_MV?'\Jx{_ANM^<7=6"R]s*\%̬Y$:BG3a>p2r>} .΍Bnp?T[!h y ?٢hX0Zߏl'.\ Q9)6XEp`AT ASr$4ȭH P$j}Fٮx5j<y,)Ј^g%PClƅR:[!Ơ!4mɡt2/w GUa8 X zeD`c9m);9 KzCZN4^W~j [ dFȭ8KHNxŐt+~3`ĩYDU.LkeC4{d(t~Ô!ʌ`XY !}zO*EvtEXm6$ȿ[譠oP@YLP] Gb"!YŤ󈢧PP&J[)atn2ÐλiE?~ lcԶ7Zzz 4R~4?.XSy1'8Ba(~yX†RYKeqj=>[-9VMb‰پDAjDކA"|+ZӋ});^ +(:RXXD$[ ^MfC$j./ş ud-qȁU7 kRXM}v_Zͻ1w_8wԜ\Z竿Ồ_nstmfȼ~6593Ul{䠙x{9r4/KpL!#G>.pFm/#荿$I>ѨO|Q>SFwj ҅- W5gKPBጼmiB$m WFkyT`:E8,׮%iCL1I14ц1y8MB&S[ާC}ssrr֤s r#nE4AIŪZBc$`;Vp))(z=GxB\V*tߌ!Q$,EHE ?ɹwf%K `O |:jL!!oX':~"K+ ׼w#4QiγjFJMA8{\ Lv\9%Wʄ+c㝎nn-&4O3YlVF }M] @\H)&>z M6˰Β^ÈgGUAU;4L}o[^f9OaL .do!j:(-s4޴ x`"EqoF#'( =*jt] OH ?J}p.#bEg{d8?!lg=%St讏7.-m8s/2Vש*2N^ VEY \vGKv"Y5(*iR.Kv  @Jfh+=M&PU.{m aeE+%"ioLzl|ECbEK8͉ݴӊۗc ]% 1kdݯ*ǻ bUY^4㜃] gl5^|7X}[,UsߛA)ai.#򰘱43k - mF?wf^ٝntWpGsqSD4y*ڠϛ'([ wWyX"9(?xъP܊ưO̦%SuMsٷ=y v%)G# =1W,,}+ O e#Dr Gʊ8wj&Ȗ9s'}%iOTTT *DPep(NJ HRvİEx* -BqiHǫ69lr\sTJ7_rb` ɻFpur0.wx)PsK{ejPAm6^~ QpϐB8z#(3:׸[ͣ/IoFTRArw׀CO2xap4[e"m%cdQ2;fzֱ5&}Q.K%mW騪I|FQ1疀pv*TbHkarc'ax2v5`3оlbz=gO-pY K8&ƺ;⦼ %l@w3tkO7a+03Y=}.?S C3"(^UnmdC8"-),՟J} CQ%TVj৭W.$% os~LGt55SmZg0agƙy>jZE2hzk>70#n0f[FL`&@_+ު].]<֡ :UvW﹫φbO7 "jzC2nGxJxn[aJ<:xCLKtؽw=3L@i:9_]I! ul%lƃVy\pZ vlN d,g2g} v0cY w}?܈:E;T>V }eph$G%oxMC ϧ1x6.Qkn?LGkE t5j0yQ eqoZ=ANٖkz\SP*EVp@;$ʍr@v[7ZF#'_cϩA;8*!EFV[X1ԘbCo376׃k@Kz}~bg1Iikw7W0Y90Na?$ ^w[o+QYz)$$z潠M@HsrKd/zT"&.r㟉z.Nk ( >; >FFzbK*;+%L$(N~=?+=*s{D!D@oŋUi|\E@> I5ɢrKHIpϪeW\$`9¤~b:AXt1Mw:phjQQS-a*i}t*XAZ@~==ooAD-u[ ѯUؾ{_ފxanTN NtJo< EqO+0a=_IԽ؃O,Ge+kS5!¹_bkeV&u5:`U?lV8u\*~A*QWPMSq;I9ewmtQa ؟=ez{/gT322GJY9aT-{#%U d{@66@ =Ӝe,fFKQ-}:wmuS.ad yƥ;?Z!#^?#CRC:E6 :a}T: i& _m Ә[:5۩|Ĉ_Hk=A:n]G]uTJOohKoˡLS97A4csYHvW%v ?*f3()p+ɮkd{#SǯKq.giCj9! -sӆ,VG Z8ĊM ;!58H@yفZ\$1퓮p%fQh^uO;/Gw;Q3-LE& \ B D9G9yVBݮRf#΃ˑjvU51enG+ {j6&iTFk(#F f\ plk?a|qo:_k{zC2 O8?C G89m?Fnh?:BK좁rYꂙdOr%wLg.vߨJvKDCy4u݈yLgAMŨBAMQsfv%Kj5NInza$aQ'@?p~9(0"Xə9zJ^/~n 2BRaceA:fTbXm(D% u%HD6 :lcdݕ^n<-R1L(E0GԹkXF;~tmRh[|O3œaE3Ƀo0PTD|Da7.(gC[|uNKBz:J:[[%R{p%#/:_κᚨ71Sz.lb98Z7-KŸ/m!0^0d fREBuk{&{dO@Ы#8-$'9gh$}(ܴW%VoR[BzHPR0D.WuQ|.tқi(ջ'zFtk?x"ł!Kmli<{7@3$}{il;& p(7 Z+H]rAUTT;/[Q_-7JG=9yџ^ui3_):k*AH 2nH:"rF2;)WPJxkM~G]2o[ny'fMq)hZ%:^^`|f+MCpqtTƘC/5}Ua\Ys9M/_0*&lXs +3*V$f;gw\#5I|z].aCߐvwVmx8$_<%N_y#{{sAo,BLSfS nt:/I}g$16^`G˩K%$w1y}i@h_pЈOU2GW!V}{w9 Âpk#ҕI|&Xͣo{bQȤoB:DuFx(*@Ӏ`&~poQb)cyR)hk_MtLXeXu ǜDfn:AEV]@ւ+u,ƑtDF*Eb;W^WBC?*KAj,!K+k4Dg%!`ъ ^`^է8): T$+~G,$J/jrYax'4з(j~mAyG;3ruQEd6;Jl!!"%ӢI@]kt*Υљn"OLyOe1{!AO0&Т|O(S ,JKC2(b`P!J &ځoEW/OIieXNg=V" V/μvA>q&9ߢ{ۿ$xtpw')̜6`~;Bs/0lHbVN}.W=$O =W;ؘa`C.k3թoaǛRS| W2g8b]/E#G )~MwZs n+{߫4H|WVHCo|+)d*Sx@'ٕTrOnD͡ 2o}R,Ō]G!B;vUt84tn@ ƕ7vb Z;.Fl#" #~ANwC^6hYsL[n|I:@6<]¯Wkyf/yA.G[FP1Vi60˵a/·FXIP{^aٮM$2]YQJS&OkpK=4tՖٹt@oU)@h yrkV@]h0_8Ej&^wz"h N2?x)8jH ҳ\[)NSмƑ,XSb *z} :NUUEjhִ7褓a6(#+vwS[װ&{FiD%dIԻb^A o*,aZ 8HBb~ݢi9M'ўyOaCTN& [ȶ U?clSGFE$\O`>﫼}$q:Pʙ}OˑnwӼJ}TWwBY3}HGRf}j=:kghhM:M[¢Ei֢Jkm.ث+}؟/LNj>jP|ӓzμz &4_B@XT=EF& .2F_t#+N p:{WhQT (DsůؤP-Y ۪"{?>O5ގ=: SI`w*SտU"Z3=ᚍsp}t^V MxGoKqV aVaRj9lE,nN+RXYBO̘ˌ4ebi䄰OzAE ^pNj5n>n<ƸqE9 1Ui5 ]*@Rmqi_e"s[3UAh#/GRpq-R0ȖcPXZڣc~ױECw!02+(w7G5vshhB6'::wg-; &DAVֺ%.K"G?Y&ӗ$w!x|iPvF>N cbL NkJkͯKzVM[\if 0Ӣ۽J>Trʑ ;#~4߶tW>ƒbeT}bm?UV0=B:bT'(&9vuL&bh9)h<"ԟ46yPyWeb 4Rl72Z=ֆ dXywmЍH}W 4ZYeIr;5|p_EoTmvXձ˛"vYh z:Nge{0쓡.mA^<MNw uxxu1ߟeA}6٠Wk%df{Fb&ly!T~ԡO]L:Hs^~Oe5ͲBQpُ ~?n"ʋl1+ZVkY/sͩygL][qH$9mfj?=wb*jzPHnv+cM Gn|8- ܜK9z8-;aQ*g7v;Z:.;]E?ʱCC4-Ʋc#p$^Y2A2JHX[53VErܻv$$ (p#9;*ؚ<~9ėHvQ{q ?S hs`w?l\a:Pѩug.(` ܹRn9zU8u`ЏiaN7 Ըna-ۛS4[og^hL2X}"pNcwy;8mH &GYLUS}tqS\ą9Q5$Fݯ&tt rΖ0Z6"\U_ìY}`=Wʧtϭ- H[tLW;bp':1.ZnhW;kG--\IgdXon1iN zk?HR_e))j^ę@<5Mrk5x›P"7ʹ1 uRq# 58=сb 7TuY@4*lgli`mVb,h_rdp2۔n>#։. )ׯ[>pluHVx.Rl{\VEg )Kǟz_%o ?F "XiQ"AudBx\u"R<.3gr&;I8!.ym5gdjZuB%q\&apVltG1t ]R`Sӊ2盶!D|Ǐ[6@h],oEj&=c!>L{X*im-b`˭lͽ |`f};P# B{_n|V~a̷6fKfOehI Rb=%1'ec%3aɵ̲Bpoz;J60d%DkVdn&6rD/bZz{;e F*ӒKol^Dx"tP $I g;׳OGz`}alq#}<' x?%ۂ7hfb^Rӧn!*"1F.Jr6A TMxυ{]eOmp}õچ&jŭ*W`A<~=˾2\~@LYBt=7P,/RAr#Oku\-R@N! .H~c5͠34J]!NGBDW e@NnXE! l "_n2k9u)ݪvx| EZh\~\&* S;E{#"#u5AWHưT?SEn /C 9nRw\ur:q{pJh>_G7D >NLsz~s2,Ek4!7F*kaV U//PCف7D~ 'Ʒ,ĭJU0>z}[كe8Ξї c(+rM/pmh(؁I2֐%oWUnZJ o <+1=˦oʼ/^i*d&bt]n=ˬ@9 ѤN<]tM{ ĈD/k"cU^+X܀*,1 eu^krLTڞDbc~ 8Ў=ҮY 8_3T` 7<'_>v_s~wL0_C0iD8>G+fłČ{](Uzi/tSh L/d98W vlƚ%qʋ"@њ}{MO.P¡WwS8\ ˎn)¥ӷIy^/:0]c ~:]Waeg?!TWwnzƤ8ߜI$'ո@:=)P`Sƨ p6c :ESC~M  qB~[TВJ~<ʇvʏnmtStLg CN,=j94nR${u|[OZ5;wmhKdb[b,) `pzfSj&8MP޿c;#n'ߢdJyGWWLi wVgpYle7ſB=) 1_HقCn鰡΄R403DZD PgbU O@{E#h'"J FPi~4 jW9BkL2xi)ƄZ:w_@E%K3"l=7Dohd^W0jۂcB(T9Zida:CEd^t"Dz5=u;w m>ײm?˾:Tt $f79oN_a {<+=QL [DZM^̍>vd-!|#*j߄yzN ' gwλף͚sXVGeDN0_~0xAObWU-N#sj_ƤKmt¨>/J5Z Z|TB(iEɟ4EQHB3.>TRص {]W)dW͇X4A>YSn{&5 x- #gISEUf4:AsVjP-LRYd5lqxfo%N"0@*MRYef>3aW`I>2?ٟ~:a]o~*A̋xdL{Hxk6/dp؂s*7VO?:t[s*̎n' wMoƙ>K { fr'|V J"Nt{WD*Id7M. ukDz'CJ&ίfOfAVSඣ?z=sD 1&J'2Yfbăɑf,AdRF( 韣}bH³Gr@i\; M{{FQU ,W[t #Q-Jj6JY9 :M L);N?c!%k{ӈ5 YdQ]㱶8̨Q"<} }忼rX" +3|$ *k66uFsP]o([47jz avMsÔ-b L*0MCNL3-f!Y!wt1fR9q;cl>՗OZ?E~d*dii _"M̧[YkYhە?\(ݑ;iDlR&֥S :{pIcg=nM}~35A YmःL)ekrPxѭI>^xy\M8j*"̝%`cZ^zu1 > ` : PÒR]˻JLy}Uᅏ2]4AJڝ[v[~4Ut6*T׺5 i,g}n♈~`<*&h[̏`*ڔ)n!AoH7B |L5'rڹJwy)hڒ^CKx75jQg92<$,*g56$>R ~2;Х(@ΚMPEEp3VoKy>JA^iu %g*C]m/^JD1_Dw' Љm&b)C.;/s#m 31G:q>l:CJTjna%Ss:3m-Q_w$oib7 qiJ0.JE% Nxwca4r逽xw8Ԁ @x(/GO@@5Lj3dBb L+ ٳ\?TP9\0Hp[Dxpf 0w;Е1{,ws2tLD7fݤ%;={tb(\U 9j1_y)L*6%;;IЮBp \3U`oȎ U&DƢ6-Va莿m*:ײd'J3YN=j ūx7._dDcf 2KrD2& ˳ް*8]! +m1 f҉&k)]$ YP~"0n$@CR6'AM-QޢCô}fX!Y瀧kz/"Հ@nQ.sVY"~ 3y]f@tBbo J]gͶѫ<aO2@v\$#"F/#LkZ/!CBx qѯJn bA5:#\sv4։wHC-jpX ^|E}f!ӴoX:zgѾ A`JԪ.CLq :QN'G1Yz/'S4OOR`'ҋhdYi\]}6Q%W0 W)q[-+W'IT)ʹY4{N`;C+oREMBPl{n'ωL@ "26rz7E ~Yf Ǯ9U~\k/J9tO494r$R.-`CfpNs +IcR4ii%g\: (ٌP c(s #JaH(n5($34܉vˡzbķf QbKEfw83ɹ-Cj+ݖdFw :7} 2sFlUYݯٕxG-ikܾ3ۚwlSQNTpP˴&Ysa^2+Ӵ@Lk3Sg)0{DKJ4gaX>,j2W( i+Y39znA|@y!Ґ ZǦ9j;DIz6=g{ b1WreMv~p}8*qS:r8P.D湒z)^Tu#B=eF WL/a`]`t:K`󬚺DE$KI997h;4t ~% o])D.JxvƼmDZ  З{'HY%gp=1FlloNubCÌo-j󏼪wCo )MCOg)b8<[}=!a;7Zct8Yl֌=KIf^T[7L%i@ce0(Ct  uu&c@]4E_s TV{Ÿζ G"o$p6WTFܠU-5,^^лYWHE("$_ϕJRdP-8r+K^%[S־\1=࠽5W aQyM xN8~$.浢8}^_6њda1u;G0a/;UU(uq\%5ھUWGqE,7sn=c?ő<nW㉬iRlYg{!ƪB.m 3fѪgήHyJ,|eOI\%XL52qųW)XHyz:M99vy@E'"O(@RnDctڦE Lb:슗Z>Ob껑X%Қ }_NWp)ܿ9uZzfKꖍ8]jIdY{B?ҵ`?l &zY+4q~rn1CZ Q4(~]G{5_?mvPתfȆY;Ώ'Ŭ='W,Q J)qA k,\ʲj5u}<,_9!_-G ̸0į _ b&y=ywz<#~vRGjCyKv}Z s'*@CWxoC,8G%jA1UR`bbg"m~B}J?kɰD՟0b 7f:hNj3w!dTlPh"o w`8#\?'(/k4<<'z<zMs׫ O;Hf~8"Cͫ 4eN78v]ghcuϑSA%%71,A㰾NL g gZB.SXijzEXPէxKD`x.F`'S tr_E8v;O*Ft7(/Bް {Qfv#6Pt#nx>`<)NgbZAAz Ba\ں]%M26Puޱ7~8鶡7S7j-Viou4ّgG& ;p6uJw3oԒTGEJ~fc*Wb)o_o. xП'ЋvgPP8(rߔ 1'>I\o1F`r-vzpbx@ Y3|c%=-QQ8 b`Ew Zt֢tW ɛ蕴{@c`h:J>z7$%=vh2+nAd6k $ն,hџjnQͼfc::3+ڪ~ jA%TIff>`yZ?ׄAչFzM[z7n:qU!!H\\[R2}-10 R޲}Y{+w w)6D2IShB܅T$ҳv"!ˬW6n(U`R#A(Gi yԜ[h ؜,c& SXbI[e<uCNԢ'sl:\CPRP1=spZr0Y$qv_Ij{.4γo=ws9]MMTk@sF5/A5gDx譝Vݺc|)~ǗXU-5dN:3{f频z >PUM~J= rxKq>_iS+ګ9>ٛyͮ#//Oe}筭?6"" ~ b+gMpwfSOڂ/Fa:A } S#c?FS itdaiI07žUEN/ ?sQ<3F2Mbsiya tyAcM.v#W*S:1Ft A_ړn\ڨ`JJr<ߤ]-qu,dBj7,U"U(KeM;؉(.UqNTl*:ݝ إ$ a#YkעrMQ7i)azM~+!S Ãϻ7@Mt2?BD+܁LBND!|L}>&oqwvƪ΢ݩxӬ2E3SDu -oɵET)k&$@g'DݙE!  WQ'qjYإc<0Hgxk uZgTD=<蜈V  k/Dm8l^/!Fx լ,{2Iu>Cdl#™⟯GY8RZ=$Ja5C/Pڡ94=N,gwu89&A8)*m.k'!dwſ/D0`ͽ'̞#\ۑ*'8Y/ /ɍIR s6WX#,W[ica3-\,8dc"8hHc҆Y˹O5 `c*UE&ښ乩.QJ8y=^[ϯ^]@?aLjf)5Xc֬~W̖xV m2k֔[Gid.,%ҷʈC2)  $- MYzNк9;JHo#[306j>m٠-7S0E#P)$u/@,&dۆTN5@ =)d,#vCHw؂/ݥ T [i4K4FWN`Wڔߢ5z5]gmAĂ"#8/YX_ Gtƍʄ\QQ(>'+!Zvթ WM WDMzJMW$7 a0v5 0dhh*M)84gIg46H 9ao=fMavn7b7j;L9sLeUM,A>@+fՇ_bo'-_ Ld[ipRSx.ŜwW2LxrUpPIm+~XDX4mUru8.=@Jƽ#bt p<#ޱqvY_]bthk^ifi]ӏ*KXz?!3L`)(gЅSY >!mM$iRc/5R7r r\g3rm4'>^6ٯY\%h s[]_13hTm8sf~}96 0-a0qEgH9,ԑwU KnI[߽".4L3V6VLzɵ@yS:cGDL=a% a͟%Sd=e)@:t=G}؉JU,ԙ1Bp2'eG.RsAj)IqT)oYoo%bsd;3{:{~uRRfn'a:"$>%'-¿?fdLSdc i Yy_ɪ:H#FmӐ?rVm)޴C(fJ-SXjZQ$5$QU5V&R7jWpvlDa\ @NVr{a35ApW '{ؘ(mC{kLϛ؅hm#$l=(.70gIU&,@ȰFM ERV}2 _6J^z"JalW$AD:O<rp7V{, moG-JtZy{Q {RF] iW%䀧OXؿTwQoM+BU/rJq>> ʺGZ Bl%q' Ƃc76JlPO; _V"@=0$6љ&禹ER@C-D 84/8n9{ 6"A -ʘȪ9KF#yAY|^b*N08b\Ԭ% O ޒ! |r%Xl}K8jbB:~?e<X7!٠^x"&# [h.ʰFk"FQ]5d3RzݿB Ug;#*GaI М5Ժ9';,i` \L&fme.9%fe1ZSpV̛ЅAΥT26ײN).?E0Ќc;rOOLN{ {&m$鹤l|1_Yh6/WUqqVд4#ٹa䏞p Ct:.n9ѺCbkKƕԜ͢7  9 sq 7/=b릟nvCF ?x觵G~'Ho,VByY;ʅ]Er3$F6 ͙Xfr 0 X%[N[NS!BdSy!i]t tC 8GL8o[]Rg. h-I8?2|;u`$ݸb&)@=V*.JW4^9(>{&&, nl&VGur)QDlgO")Aa$P7$eK@i1GPrnf캤$&Ds3x 2ẃ[k#dn+I 5"6w-VPVmg"4#!nF묃v012L(QMʴ }n5@VHz=i~ WԂUsJǘ:pAnFr4$黕6(f#ɦ@w2W"k>< xF$#δZANgWiSCM% ѹ44s%̞jBCCr%>tĜNAM;lyoYАKA, gDd0<] ` yVޒ*b0Ajz7}<:tDj[\ʅP1&`t=C` GI92BJLa`U.3+x)kwVFoZɒR)8UyfaY Y(ѫ[y2m2]RO:< +v ~dvuŻ wDJ!%מ([ T!Rۍ3o$wAI2+%dB&˱6U e Smݾh$ ? ҍ[Ŋ5xf3u!op7r֔N\>^ 9ݷȥ__kHmqϮo G;B=u^\_|+zT9*݌z~Y3;THPah~t( 4D`B>V[ .%4vsܦ'bS?mW -3PUe}jRW7>h^bgt)z2Ts҂jR tT" -4i[y%BvsD}%ͱ73;B4ct"%P=fcfڀ*϶e³LXŏ߿QVmƁP^'Bپ"cBYmFj%3HQ<2k{޺`0!+p5e%>Hh peZ=LT#0!)&2 'bZU+vHIub+K8@Qs5=LPQGyi^8+9## k|)4eܑ}LHS}xjVQ>zn1lޓV5]5s.*2`exdݢ- nv99M &V?J$& pu;p)J}!܁捴kAv9#0IW4-uqqEQ[oG{q6y1Y^Vt)չٱJAKnaT 0ؿbw>s @54vH^[oy>1 fU< E&\ |`{}iS{V 1Ӵ*]*.2\, ѐJkҐýcw˨|eY̌˜yHʂ^|kM-lZa1逈eU-5~W.~)(t]':xm~+A]NZDȽ< ق9hݱ2}#yABdMPԍHJEg >pgRV햎MW 1X6wX]x& 'B {\h6_3ځt4M$NsDb']:*fVRp؎ I*z{y !ڤO{n䗹D6_"WO*M8uܑ;pP8;6%6\k&pa.H<qgFp)3zv*S Az`YP'3n0K! nĎЈVI$Ituk֏Bbn -_ޞ1b s#QU:=3R* {{o-"vF>Ne.Nrlb]7p4htBrƬ6ObJ[Ʀ8@[2nMX ~UGe5`7dC0DZ㾇&b26Fu~e"'R_ۖ}ǃg6R!sO`"T [\W5= 8H-a'@KE5 TC454Hwb4uP ڲtYĦ ogh+XrtDX-Ok}G%t+g,ig"b#VEs9RU|HZ đPS$uZQ Բg^,^1ON#$m" 7 k8?cqbxաΚƁ]d$TǮD/6:Z&p=YOȎw]Y:M!0c]IG,Ny}nǛ %d)AZ;lSXg7dU_5bq[ :#x>_|!-Zp:t֣rt̾*C8/#ϗa]sJ댊JpsѺ?py^i4D.{י Fs0lLG$ U*FS x8ٓe'N ZsC\A8AP|PH Fs|<<6/M2G?v!@=O!2fJnxr3ɟx~ 5vXcme#؞Q74^^_(=) ܔL-;T_HlJYYx+i' .{tTK|=F]A,p*FI>Wb%m | OJm2$[&oIbjjTcץ, J]? !{Z)$* G*r;" (:E)7_6s4VObR *-Xm,X!ogV٫s5_qz gj&K!sjg/rFMx1"wFߗx0eĦ#C[- ]cs2bk?Y7?5㺊auTu !hp᳊ 35LKp)c (Qn5~KϽ|mЙWIqgA7(]DB) Z v39K{ħw3!a(B5bE \ymadmF @DJh~l&4TE=}yMo\l< N#"ZVy ^iy_`?9𬲒 A<80s5HygGQ%&=ѵ%Z*eCJ s]c!q܇_!4"c c<9"RNI*PK(\2A#I?CsIdhϳ-zB 񒾅k {/3+#4NǺ{[ׂ'p~:'w,cU֠bdUj@}/ajF4C^Uߺ7:} ;!e?k͊K.9 m6Em;_G k?k[-5<"$,N\,#@zEi):'0.?WMt**ןu: 9 \Ie{o{㳓Ǚ8-i'{~엒M:]E@`1֚y#83UG"ZM{5*a\ T%ʢ>˾ˮ4M+ 3+jYt\I/Բ27р qF^~3,BB ф,<|]I^.wnLd?  I(J|bXٚ2tR^dsiO PU u쩎7Rt'nfGE 99Zz@bعp6@@b-gqQ*'NbvRP4aQMu}Q$Ia[OI cB56/nfIkegn =MkP ߣg55UɩVhɩWIAV;DPc9ob[XvZ\-C aC۫P!E{ [/TX=)\U|%\(.Zvñ6jfHCm*|TQ q\0K{]-ĺMzN:r2W(=AJ_ҨR(cq}! {\@}˛ XdpXs; ,:j (|$˚AJUybFpHMSEC@P8tWp \AZCSx^r֟,t`>E8`-ǵk/r9`qM$=Q%Gt5R*5|x7Y@5cf!gOaex`佪, lTK J'!g̤"IxPf: Pʴlmǽ)s?qTɗS2cLKNʊK_QuJb#)Xd+$ @V]6shw61G.1qJPh-㗏CaYZ G4Nis1 n9''x9vۛK6|\ )Ok�zD`t=0(‡ nD/٦7;÷jH= _t] ſA$QWx!$Fsx2j=%fEDž/pb#b&7;ul Zob vDDC@&`Yg 0?V<(pOAc1.ނV(9,,tx!gs\de-D)ȼya@T^<$姩 e<$"D|\ʼnU1(tJR%,6mEŞİ血<`v&Qw("5w.kWE=KiH2ㆩ-LyDZܙXjmF@vyrxzA =c3X6cNN$;!;?H}u):|WoDS{1~w1w|3犵tG1@IB2 /JL'k2Wcօd BGUHo!Ck 'e Ɍ B;fgSCMBm켿I05lq[*\Eud(jOSPӌ w#ֿF iͶ BPY@rxŦb9c>5>S~SC2\Aj6 1F]6_p"v]=D*#u_9t$wMW֙Y{9oIF`&Co "ѻ(~"aH,,`Il3O뭤g/_vywց\X]$ Zx^tD;Bڄ+a9/rRތI$ %*%oaM lU]ORN$_ C"BfwZ sc No7TyE(~ptt8ld8޺1O3i] 8L5n-k+2kuh #[\3 ^t~$]CEqL>> # ~¬.:>Lx)m쪛`^W$5 AP; l/ /N݇w2(#8~ZIh5 ]/(ތ'᷸v䥏{pl]G- Z1ԽY+'aZNP!T8=bDuYb9t|;ڠ`=Z|t|rCׯ/)}?l 78$X3T B%3.R>ں{Y)/æ3*;S剝 4$n52ӻ(}=r>'oIye|,6L%%nXPN`ka.ӕ.fǀC^IIruyJlDmG0J܌$m/IAS;vJE  Fs k8n"` [y wc"Bv>x44?..b [o3=q@F7Gc}u7{WmCACi RQY$Jd[JW/- DI(F6=j ;0Q4$>^`V{׵Qc' ;+G|&_EbJ-=Hg.冏Ǯ=եҚaO2Vc}yO@;<)Xz i)ΡBWHNM Ej$p%bg*k c6!4sI>詴 r3Z ȏ=c\,* KK`-Ay{kѵ=I$́ l-9:bH:Hl'ޞ5h O&L7=6B.F2lW1՝ 6Ơ\ * D }3v6"6Ucc% Z)28Y; Bn(H @;s@ %6~C?4\=&& U']AiumoݑCdl}~to97$C!x/N1cmZ~!Ԃ~;7G3=(GXPf>vX )%, zoN u k{dloQ.u|157V7lt(&y`Y.FƔVڵ pSiU2xKx*׺`0uzgyRB#RuNCH :yHģJI]sVEٰ9A>`g#7ö5d{_Ё4f _똀t$+xim" PAS*B(&L< "!TRo5'=@_S37ooLLfjY3slFf-4a|>A0Fl_K.R 0TB.kXrj+_>Ue|"]GrZͮm f1~g R)so 0;+(x`| >yU$3!n,M%`Đ 2kgKKJUa~嶱M HDn5Z 3Լj/Q+ὠT`)ɳ( >Od 3BFǨu'A ~ȭPw i3K&U5vA^,qs%z_xbYS1H`N:ꆍ~ P-\I)[ieWEgݾ6)Upc mbk[SQC`V $,e@)- =P r 3jvX@yyhS9 YGʳ?./~b~k vՔΔ?uJs*PܵT/(#8%&cah/wO[vVo#MUϩjǑp}*\~O;b4 ~Yc9} X ۚːan*}YqI(w) IIX!s1tDZTUImYɧ0I(~G:].6YsbqrS.!j<{>.*R6s)a6_Jd{OQNBQE6{EHPp C{H܏-d~[2:xYq$[rWf+.4"`W>JQ$C d؜?̧4]c57h"fV39p`):uh!w0/-!ΛF2:  +vmw:ЯCPark dVM{"oL">-`CxXKkt,ty v3ʟ'L/I rLTȝkyxx|@ mx+]43,"g`y $#(󍁧fg*&!7GHdDڪntvz` WjIP3M.t)+tvrGXf1'Qg-4ϣ- )/wUk6/շTA֚t5 nJl"ѓvD*ë?vkZGO29LJT'0"hZڔ)շ; rqVf/RȐ#~܏X@qVR݅ 0D&i41Γ-w~h3:+<'1FTN]mQMlC9`YNZ0F,=WM^_ y'W&jxWǫ2*:ɠ :t7 z ^ hP"ilJcp]`A`~v T(g Wa r*ͺkj`?jgWN KY㲜R:Рqb` #W͕:i0-?vRf~3Iy2 BV&xhP0 ֌'u@V}p_y)u߉W42܎`H{thA,eBdGPbuW'ϵcFfN\sRXT] S bwU9ux]yψB0IR ՁdUs v@'U3V;(* :rOnT&:֞Q =0w>Og -G}|j0Sv |*,̧T(q;f|c|7Ԙ6hBKisV7`$/*ؐߧʭ8(lPRS=iT)G6xJŕƺ3z2ĝ0gbn 6!Z\ykޯJ^W=IA Ļh;q t+!jfHMƊxkL/t_u,>5q6JT񴧥Q Z,fd{6/0)jd t߉CH޶ܴvfwS8HF#Gl\5>+~pg /'\Q5ΗdɰcGX !P FM?Lwcr'"^ͬa O2{lli2gf<0"!S7,{u( -{.Dl 0_']w kq ,wkұw.NNjpۙFeW9ǿ|e 6r+\{csp%g)/bz0hи #V(c^6*8F`&:foo2q,Kl|JU] m%mGzstLCSkL 7dfkUyEh~KB4=Tv(ShQ&rYe 7)n&]Y6?ʬ+šSz7`HKN1s|-"gzc4\S5DcI Mƙ%q. %o^%3d3T5 ܀}^U+׿ܶBb0aN aFLl'sWNLN,=f:ATOX4ae-q 4UFaE - ܼlZ&mMJlX~zp;*@jTQ@U"95ȶ.+P@!Tt= s jSk+=@7@EB8yY+%:ũ\Mq5l߀Obg31"lFkF3 ?M@3_eıP:3WLD뿇Vc#5ں=6TwR]R Ȁrqw)}B+Uڭ֤ED$*J l-E&} a%(н;y9^Ncֵ݂YւSժr#j6|ɕ!G^ L ^zE. QӀ!鸮 늆TO ;1ǂ_ %*$e c]hJfz/|H*['[;\2N۱Rꭦ]ښNf?M unF3 FX.|S912*%EIYKwJM+$Gsf:abYBKZ~?.|g:ThP䶼s jGQUM7WްwiݹX supl*@kY#iV +C9?QڐCqs`-@ՒŤzoS ьZ\>X_Qq D)q fPoO䅇eyß,#67וF>H&us7TWIF*j} .=ڐeQJ>xg[2u;ÅfI&֗#iS Ϩc[}ܤ( Μ3m׋_zKL±;(v{@ &ؼ2N`ᧄQ>Ҩ|4vH;8q$ONdd_3cl&WI{|ק.N,Q5{=l;%Ԑi;ç|tL'⛌s9c,Sfqd|P%WqQ{,lɄ5@P- w,h%}_c݄%.saE^䖰=f$_j-P^Kt1X6 (6njǽ3Xs;ؗT;郧/+ϊypiJ U y6FHS#12Rad% zҸ[hFyix )5qUR6/_5S~ y_vo&Yj3ղn (Hˌ|PZGPL@ENqΚ` _ҕ tLH! b", ˃j_& ܎o)FzN`TYb*)zȞYU]mf[6A$qkԅq8$ܶT'ٲ0Lc2ePV)w@ܫ}hAcƄp#@6k[Q_]Bޕyx% !!rs#= 2Xq)uq4ZU AK4ɞ9Cmfi۶۠\R|$D*l; y.tW?ԩLKdZ!59jkBC/d%\%x{AMkìbH V݂̋sǕH@lr5n\=PvrfuQhVf>IzPϢ^ ^o:5hScVrl(x5͚zZr, }szp+1: +*JQ9)wD\Fˊ=R`|%[@\5Q(mYHCϮ-NFqZQ:W.a&&O~Z{)T8*`SjG1>]9P:k5A+ VO2N*b^5EWC\1k!/'F.߉=ҿn*~VėrJ s&P_1I goe CVL73NjnA0oC,e<4.ַi1  $xN8/E41+ 2oƅlƼ+$g$Ώ[I`vb ;K.L-|=Ap.2!# Ųw>e2YrT6Gw"`\,5k*|r3JC%W|U ZK*U$cO-$0t{C}LU6Ӣ}:miG {'[pԏ_SU%而X4) WIUA^JxyQkrdaޟ!>UĠ'}Kuvoβ|$o*:~.Ka|R4#\IX1X'/\SaMItxkf2<+4@6^>"Fƅ? ')өHDԃ <m'&KU12Ov)r籌Tӊ|p^?J`&8- ]3Dh[ܝqq.IKY ^oRlIߠ_rgo)``49Nmh_HY jw \iu#Uس)@Tn_oyD і"u`j_EѳFːMM}WDXʙno5$(([9?(Q'!h29[cBq-;HXWom<瞧j.RLG`\qY Io y#/'ΏвI7smT+" mgBgWj/+AddDt6ȶ<["V4,z!-%Sr=fwPt;(.#-gɬ_qJAL85X2\V(.7ʐ Z.H0HH(CdC㥪LE"|gNL3l3XmP`9GSSE_/. ĚWMi7o,:KES %0V0m"G7[VY/kvHk&ldLF.έFB-jƫoW șjUbFGt|2HAy 1 kpom"Q,~fS8t 7Ξleл2Ft[Zk3oJ]63KA•DFxfYӥ3գqf$O:@qCM[F6e`p }\oס.IJ0M;VH@oYg(\ܖD bd1e;L-*QEMRh@H$-!ґv?\56LPtmyNhcxr#/NwZ}m(' bAA͡Գ5Kx;~^MOO}eK6tR׺kl =͒R/TĂ1qJoalΝ1Ԣ? sTu"jrdNnU 8wJdи+e`[Q@,Y ||ʷ$  y{] ;TB^=-Pr}۬uԌ9&p}*~0<$T@IShKDmht$;iG`Ϊ9\;DҸH9*!>pxn'hHCi H`~G"J3#2^=S{^r8C9"#ōq ش겏^ I_5xC&ˡҒ7jK:s#x>>@e2JZIlOZJPځ՛ehVg&y,z4ԗ{ K>4Yҁ~"L07y<%X(FI zF.~&2R؋Ȗ逃R>8ci7!^uI'őaa-S̓q@ xW:K쫡BKv*}F_PCq5#ͦ2&7r ;7Sm-[W3ӥNb0 z-I:(ji\4lEPKÖJ>ňyy}M>H.&8H)Gao9pf㑦``e~ę%€&ZDEq8w0 KyV XxZ4 WZ)v4˭*͘(pUזl!r7T)zDsnUCMAhKl61JR؜A" QXA:5"lf s;Sw ATRh}f _ 4 L},_ѫMj k#ͱNn!)v\~ޮ;3 8|{Z_~"-l0%OP9W)y{ͺU7|gPm;|SҠCQvpW Є"@LrDOwtZ| ՂIIbo<-` ZPA1Y1 x9$<'1}&uk qb.YtyOb8(|@;a" 5c)u3AT1N#~BP->#Kz],#6%i^^}EadZ܀U(T&!'NSmKl dK19וqN@>R ^'raZC"?0v4׻i:G|::ko(ʂ%|j>Z´1YJxm/W^+2Of*$]鐉h,;!q&XaO*zFbf:pw=}y@zz%JE!|Gc: JFc62OQVB|M:QUg 3]tT,Hr"՘g0XWuF/foT[B@"Q菃 -b }cf^dMކL\gS;zzeb\=\c:w?׹GEljBHZ DѢf٭<'H2v \-н9IժnXftjPPI$M bN] MKO}O` ; záof[7J'5arT+uٽ}~v`{<FOP!^v-`blTƨyx3@"z)Ӈ E$`,j}c"م "k^7kwF-<{EդbnRIm_T>Ӡ ur%S[?]7V)v&>1pjJZtf;UPBn-z2Ѭ*|C:c0K$ EEb`(mg֘[H˾lS.aj$`Ri-_g]Ĵ5%~|dcL0~Ukѩ076#uD3=9>_+&߭IK+8<Ƌv@L^$鰖)jv+E {6'a9SŚ OljbhOF>__&*R2nH>uaUi:#սP,wvFm-ZAhDUt+CgP?zBTu>.HF?-2ݪE8o)R>ͺfkG'sM3@4j %acY~zq)`QT9ޗ#3U˞67y"P WEV 4m;B.=oڶS}8.D_6k'ʭ6S[0ĻEC*s5ЌA2&Eo}I_R#]#"Hooݳϩ}<kFP 'u]ȕj'qޓi嘋Ѧ1:Ofj.wBNSW/\UZx0&|dA ؝TN*M{Rɳ2 1v+WD^ C63bz]~ 9U_.*IqY+ĎF{BW$/$JJ{u\U3`j KϏLU,yR}VS?ߔ@o0DƦhnnPDhf'qiL{rbZ۸Fӟ 59.E3]v}vP27:e B:Y󭉘sƒsQ:PM )1$wLs]W=Ȇ0LoS1.~ $@"b:qzstG5.=L0EER|C!:KwԌ%gs_i /z0vߑKo$R5HQY;88#[94C͌jPxHoF}stF1) (u\e]>'8λ7*UT9RHDџ0%$7=s-dfS`Py  44@;brٰX~W,!ĵ<7oyqΨ'ӊz6ˬ{ A–ө vXIјK)o;-RmjH-Avvxf<2,J_ys9ZX$7""| _ztUjyBR T쓏?eR;R6h9-7"}X8L!~VݦA7-8=T3%ux.~9FidWXHK(}1+\G+9ie}h:͛)<(Vl7ua.ђ#vHJ"|daVr܌,hǙumږi ߐF%t^!)&EWI]r}~SPaA![-fe+ h\0yXW>TCeѩybIX !xgs=e!|Vݫ$ lN5CHgteyE=wi8[<r-@UOk>jHW=#%sұ!WEhb0W2+|րBd|u~k7Ev*/vxJtCO%3kJJxrkDwH2c} km?tfV kV9#u #l^h!*N!2"Bu׃8^G, sSrQQ K'E 8%LmqgWKh |e4%np"|'{㥨S[^Z/},|,6T4K~ܯJ+Qǭ& 5ɑaGғMyun/y(AyD48;Uђh2dm/ŰXCMy 6<78ޝ&r=pw0j>m*ѾVw ɝVܡ7.+ i**v .Xݢȍ6#[_{I]7 t#wIUU35"Lg)<hŽQHԵ"ǜٔ}hE9x4DŽ3A?wFۚy'Q 2{%~iEm!,)BV4:G +mct?0;DEW5OKXզX#hiO(ҽ [!t 5!?P?_W$r {NRnJbe윷@$׮^ mtzu\tY)4oMyQDdgYm=KFd!A҂4*zc]zeaj@א<\|Hˊ׾87vVK3dn!M?DJ$crMrQ;vxe%Խs78;l'a vIIx0P8VImr(^$8T >ḯ:iTx\(ҝр/-У}`zyhZN)2X(V]OSbY҅ kq~|D[\tZ d Zng[{a6;>},j.wRYF.".=|JmQl&'꫍SЭ4b ?(/#2HOSчtu$̵w ժ#sJ5)PR|VC]>Yb~PK:{Bzyr񑠔$#ыHc'i+tU5P9K&x2LiHonry% f o!F #*!SyGI,F lg鹑p8=,(fM5+#z R_ߑuru"^6<wp<(iyWݻjo>(OlO*Xá^8m\u%έHF\DJ7J&R|=0 KQOd/r$qK]bp(k'j/deUu&U$Shu %EWCY/ |'3P #;1A|q?y]RLIj8#~;)Aemb3W2=f5 Ε6tɜe4u"0x1nm8B(iOPbQYZ%f{VFGɡbAfD2&X9:_VY](ETS{pRegQS'M aՌ|S3 .x8UM.-Mh$2n-ڥ"qqYg^ @I3?ZlEA{0_>(xUOXL&)3 RߧE"<џ'@@ Ë~5YșOIgݏ2gW9S+ qdt7Rx_scFi!wfٽꄞ&l ҄_^D w<:a-;md_( /E݀ƪ]cj^u8''TRl&dGF)`Gp.쵂A~if@ƃC8˻4}6`PN+-;n)":?h;:~ebb u#7/0'uׁ;lr|&a!PML>F>IO:Vm[XCv#8*ݽQ$ot vZ?uiNVh F'&Pڦ_|嚻ՙ3UnF5xt RRtǐ$p*eYf e!zRte = ?oj{0q0ڳS[B8)J1w+.q'wJ╂bsy&48ٓͰjVTgm夁&EV ѤZBq2mpZdL C Zv}k۪hڃ\D|=A d`zQRS8=/P\@;Rē3Feѕҽoe~ /TR*8\|67CfEF^8L"(Rk._2S&5xtg>h6Pv@R~5`8Tڀjl8Fia<nQ1)Va&GC|VwKu?^<lC 8 Sc#x1g^I"}gBDFd,(kIk[ܥiqHߚ{ޝ ^іgb~=`B6.1i6B:A)!ݐfrާSfR9l+. +Rh7lFj:' ZH+ީMmgʍ(:x"XP9kɝdc9b3wLFЍmY?͡4vLɡju'5WV  eYx :BC\DDBpTDT 6bg^T(teXIg1ɉ˚Qw"0V[hIA0+]ENLu%I=џS=֭\ߠBOBIĐ vy)MR37ebDiTKSH\raԐrEzjw&+~!Kj|ݴ[/LNѦ[q 2Sd  Wy|A [Z2ś&;R[o;ac'#V$>{D;Pf&5s5 Q$¯vd wT8$~LhiLLNwRE o"g:**82*XAM Ys((2;$67,Ө\HF J.&6^2+q JEIܤF۴&c6Pqܧ:1(O#I"+]`q@h53|Mv@) CE6V\vԼ=PZNd׈S+/X9=WM>ЍNALA폴eV¤R ^7Kw"k3/Vy0Be&0S9{;R8E>p̊&_P׀fNjZ[QU@ы㝲EXq /i&]'Uw4V&S2a\ 4"-%? )٦5+Rhv\LmSNb"- Wz{g[+?8-_ی n ӏZZÑ] ]ø6WFA\'̺+>nx/v ũt!<;תj:KJ`(o^Uэ<6QL|0QF+r؍Pҋ/gb1SojRurc}ZGuzdw|CZK靇4[CC 'zƬk'oook11TxM*VO%e%'#t%%S XJy:?}3mȯ_ 0W|7QPʯ$6N5HzR"O%QAp{Nޔ cLkj('h]4r,k2{ZiMMatAi_aSR{-naS՟A~z- >dmn0tIGiJ~2Y g"FLJסȒO f\:)oe[ޒR[.Ȕڗh3fNKba" qQI$־edq'>!H?hI wk90눥}0vlDWfJ];_$FǦ eTqԽH, "/]4J3>/WLO]^NY#g&iNM =!j@_{#"P`2uJŒvCKf,b#@= /|!OiUj/ UG}y2_`]o)>L{kޑ!i@o?56ˡ+7tAv&/٬T kUMӟVjjTf xk)\CK p2k.J|:nݫdyc{{{`͛vi8#8 8iY4%vduɶD%z>/^QC@`(Ry.$\0Q|3#5X_L]uu' oƋ8sxj^,!#N~:`!3-" m\1'8u"7x<3tTE1?Q+O+Ze'f8?-0SuBhTBf p)̰~L=IuDAH#6^"AYߩ[SVs/PF+AO4ZW,-2 Hn(M-Vf$p*jҰ}G&a4[ltg:OOr ?r VWQ~Nz]OIGSt} v|b-pE&kbklq$g u| um2 |ԺiB^KGKGb_.(9H**B~RYQ3Խy'u3?a?k+&AYMağz Wj6Ժ ƿ1ٻL#jK<|b Ҏ`:9QIne;iGN)e;:^Z?ݫhfe?V\Ue>[Ɩ>_rLKdhњ|Rt-oPhQW}XĿrG/%Clg/TUbEʛ*1Q~E-Ʌ+`w8{h{Kk[Q`O8 h.k7ϲ >KB=GzXxďSh@-rsPN0ɬyJ,AH hUs)ܖ(fF}F$V"#47n63r%!+#j4n0u8q08QBKP9{j%(&aq̟2Bwq0VP"%c14zdTYCKQI5 ia:=cF!^<1*+R?[D X&~aB!w]3Xp2 dbflpS6ީ%0$3uޅ)!\r.~I3i;r,GLG(yw?TB>C#8j)[]mulh 7ģv7Flb¬UDF{PPڹ{^u}%WnNncGx|D;C~3NA>`O|ldN7CO$^ qũ9Y-z\p4`׳ m^B\}8p8Ua C~ I}Ŝ|00L\̢ͦfq+Tl*)u[ V3GXG xeW{LU}s5?0 #KA nW|gi? WELKc2$}5(5A, / , PC-gÚE,9{Wz4/] K^R[Z^"HFǪZMv лTj8O&^oJ&ؔN XЅ[*K:4%Uk ˜$f7k/M~5 6͞aI2:ozp? LCհP?JBRפz笱gu"W`Q'*6 ^kRBWN7=8ۿIQrɬRZsr Hxko~A{%^4'ޏo뒜0+?!V>]o޼{9ʞ4ADS8dbNͬw :ij^MOHPe;\\C^1 U%=Rw~sdhH=ogqDC6 ]n/aW;^"o給py/PnI%'wmNPU  /WNa0ً:c`D rp?6bUCSU̎e R܇A<3;e͐X%e[GN*{ڮtse!#=USuY`c,ޟߏtNlXȢ q6j]U.YݎEe ppJR2Zrr|HsFZ۷n Sa ". ŭWWE@{? mvڳCHqJߙo̞2R[to"+QhtL5_Qh4*n"*^s!gF4yWcMSMk+,I|йx~$S;F(˘:pwؗ,4Jx|vG=/{+/ND> TءPWx_IWa)V;}Q$ Z9-k^7%b(=&xƶ'ȒK)Sa7;#[IIIѡ=ܹ]ݝ=@!A*sa)Ǣ([SE>SVʼP̕@ }-<pvZ" r.@7rair*u| MT-tqE©sq %XZ2QoZ[2O8r,-x17hN1,xȵrr @Nx >kH.K(b} JUFoy\+"d`{(_ p| ͫh!XoLI3tzd~< y9wZS\BI#PWaT06-QKk FWW,=KQ6}oA4K< F/)=?,Di".d 5q7WIIA졶rQTr07Ior\lSuKp}G)J?!# yZH^7pkx<2-zmO:Dmy'Ajѓpa6)ܻ"O$(!RTCIt` ]7YD9,?Ny%H6זx;:6!V|Ru?.Aٻ;SC¼ANq&ys Q$܂ 0l<   dL%5D()/:4KG.XuO)+Ȋi!U5-ѻiI݄]Rq8m0@ 7K`%᥈b+hxF+mTH]Q-LT [kOlK4#uQa-`(VkV6'`Z] 0"y@Z.3? oCd'%Kye$M:0[V}sliuB0(4Kpj6Њ5rV59⍨savyo4 X^y1 >7zo{s@*9R^{;GWbz#KB5$ؓHvREӦB`!zncՍhԘPi^~B֏iED){ uڑEAV PY'хXܴ+v0hGQܚՠDy:W/ݳ+S|F14 *JoVG vjѡ8>p5LǕ9@GIpq  8 mM'vqFÀ#azRՊ:.>dؔ*JƏ ͒ʄ*}4aLsD Lc|V @zlϐh>*>-S3쳹;~rᓻ^%9SKfX// %)jB>ʀCoZYTiom!3!"\6^`TlOci'䕿71byX AOD6$#z: GN=Gw ;8GhVG8!S';hܜ ,ܭm"X3td&.|G1|EE,Qo/+Y(z%w؞W0vɬfTS ?`/bOZ'G5}>ނi>46S7@i6D4o<p T,>4&!2ܽcYw$!mqcHNajN1x񘘵熋5D)uf=^ ׇ.>`81+$jk}5f'(Ͷ8OYư$<~Gʀ^'_3_HGN7!s2l3Ģl#IqMq3} o}?t&ܕ^?ϳ-:{~gʻ2pwIhsFjψ3[TjXF{YlFXU嫝Н-_ʏ^ i hTpQESWy/^`Ixd?_?IFs3h9T+|}1I'8!U^Xӽ7olb3ٽv 9?d7qõ'ZS13pƸItz6}C;ĭ݇^? pCNz44ÝBʭ?ePaMj 6h()u| i<Xw.x؂GF N452HbOh"EDeԼQ\\ݒTm6|"jѠ! :+\-Ǡ wCWs'> 3U6`lz=Zys ".b\#>%cH qY :ȣ9vd6x͵WỤ9n leYoלNOݯ>k~^2d_jC RכU3S_l+'E?m.g2Ta~^y 7V(i 0V%Iȥ}'i/#ʊ8rP%cI5D2}PNh31Be{$4iaVKo/qLufZ1ˀG6Mc44` ).K'M[t̙2džg;lpG[Lk0>F+M?EBnT$BQʣ/+@jsl]t퐄I}x7zg,\aq*r1)Fmw+& ezHކ䆭rF@VϯZo24m\~LUDʛM30u>`1( lLOW/omll(҄D&aH Φqxy߽MH*C|ט yd,s 4&VZS&mcэ:A]ǠR0 S$_Z멿 $(/ sLv绖}M_`Pf ]~<̏1#9I8'_֍LYpTdy"`7{Y+0s>j ١%u!bi O׮#Kyl^! Ix+D \Yd#/"E_H҄<ߧ/kdG W&DP*VguqS\F֗87+,\׭0UO7d6o~FPL=M{'qZ`WHhJ]R6Vg$b8'Ri]i~HlTTڍ̙=Q_'s]]_GD4Ŵ7w w"֠) {/'v1aG"fFcϧ) r#i{@gѺ/'.[n(mfPEd\E𴆕a lV#ɸӸcUhqhz,vu/lwxbW9{7t(t ۅ&OSc^^+U.]D`_rdL}ŏ}1 H&,2?(q`xew7a sތܸS&4}iedT5 #>y -=(K Io>+; xӰ3?M_x;%͔`ꜯl+'^Goy*dҁ_zVbqOhJ.͊d830dh`Iή*.V{'Jr(l WoJjphղJI+nKZm8|IyT>F#bR[NavNZ3ߎ^7?\_oƱ\ \% }(MSrLYI83h~4Dӌ'(ZSN} >Tb=ƃ$rZDZZ{3x3j/:M3lK(CXl!wfVG jnO‡)jV[θ$Q|p݀h/ Hdlҫ'KB怵;'Nrz)R6̢y.ꇈ-cCHK/v5;4w|ibGxg=* 4_^3( YVRQqF@~\&v>J!ɕa4u%,*KQ~,eMH(-g3+ɺ?#^qPU Om~ŒevBǽ]~S0FȋӰDSl7/}nQ5Xq>~Ԫw)J~sT=@G?C$^Tq͘4Jdpn#> (wŐkr;=3R~bWYځy%oXFq{ r?T+I] )pL,lxj'L;Q@ ʛXYӐGc},.MrOܓ=NCfM Gy]6JmRj[!k48]xid> )=4s79S76 x+:@صGڞ:8D U^ϳp-G[hrni{-4'("Z Q~%ʻ7듾27 @~ZA[3]H&-*=%0%Sb=.Dǝ1]/?d }a0lCsݝϥgrt1YQ0He{+ZY m\-&R3;J<,}'M:O Ҧ$Fqϕʜ-O+fMy~m*PD39=qW=Ol2͵g_{A&षk{svێ}cI& 3}(zY^]˽=-BB?4-{žMKw28?k0i2ȅ! " 4&dvJ"D(v ̵q6`<,[7TD"`Y$z^XBJÃxWeۨ^2t."$R 67{uV\T$zU;WZ[+Fn!D_Jks@8=l J]bbSXՒ6g OiR2mUp&ڰT)Hp@5p)F_  }I(sd˙S2U޵*aVmF`)/%2Ta{HIGlnddD3T g̣; ^z<u U Vj& a+~kARX)'-Yw#KBJ:.Z^W bRVHUUgXNkvڒk\+Ю#ˣ*qRS@`#@݃C9,_SZ^% ԏ5nP=Qr;*mY0d*nmL' t}\|@o65U+=vE1w~ l+KMIw 7)%􀘄XJ#1?D/ڵٱfz(I58 ݿ`>czgǪT~gږ~:u4c@)NfUwn8C'@ ֹ}wǜ >XBxkKsj+)`Bȿ#yIsmt}jLp㥟"_x9&w>nOЃ;c^#jln["#,q2#!ǒ}~D&3Unu(fsJ Iɐ<V*)͟ږȉ6$u؞/{k]bդwIe¾-$׎fx~T*5R# g],ǁohɝUkh߮Յ^3V}5=3%ѱc&-Wx֛3KP$nRN螳^1:{i.s?NE8 W{>ԁM*su:+pIs*zj~ fF&I Tx: Z°?G+*]0e˭)Y͇+DE{,Rγmg2T@e.J]IkZJ~cĞ 3QV0pPuT<;p>jIb_Q<%"/;UA 4=*`n -6`%VSG! l")X r/5GjY)ɂXۼўWmAN_Q"3r H} eN! }o|tFk:YzAZp_gzZfRF$rPxbwQXBK<E;Ty\o6Ѩo~qpP}I$Ch.j">ءze@4j6f.x61@녙5D+ry];pE 89zvРf;E}pz_Sw4܍~rI2? 1?>*c]ڡ-Pdc9dhd,- AoL5a ?f@k$.1NgPsJ]b\C h0 0 BZoa5X#.bbMlsczjE1}rcKI2+$lYL"]pNVP.<  !< 4pVGu'7"4,~6U&nck.mF a*Gχ#PgNY!Pe9^QxZKqnq_hRf"Sܢ_4tOq_ лMcArqa4^$Lz0+ZŀKYe"\0?*}Σa9 K8^Uv奨_ eGkRpZ5AVu M7鬅ɏw~l >! $}4'AbN¸$xCΥY"J~a_hZ=;T7D'_-x~7lutzHٖ'QߣjNr|4ٶ6*69ꑨVؔ]Ǐz)H{9%e=z" af1Z$&}ґ4RD.|, hl0ޔ &q( )A#4 7ugDc*fXMG3_<@U;͝iT.6^)탢W+{;QeǧrҙN*#=-ۿ潈Az@_nLr "I0bNgi A7q[DF;^5z`JG(4@bN$Ⴄ9O:!)QCn/t_ @L؇VDHwS]:1"K᫬|gB:Y]@ "$LWkԇa'Dj GxUm@֜$+I@zE|#)0(} mS!{S(p?dS+RָTB~) ]O!(E& +I?,Z+Eƺn)5fEKgƣs9*w<:b-w[Icv2Zh( dfXDP8NOXu{ho簔+J rDLh^$ʼ6}5g{!"yWs-q]|@iPMϝ($AZ{w Wu;Umnf8% WV^4?wڎ P4|<6 $NBYmUQzB)@>i|5 K0Z`.G<r*CPz\ qᒽ͔X(9;MBgлs$:ZW3 I+zT~ -Ln8 EaXlƻLAW]*me|UIK!4_[WSΕ:q`5e#n$&?b@,qqm)Bl cN@48;(QV ÔA\'H8}&E~*8fpama%sLHWA6,.i 3IśB4 |utcA)Xy/I<B>I_r0 2eVi}04% 98l|AKo4ƢcpA)Av;yWg;4,U3N9Yҿ7lol\<ΐDV[!YtUSkݨmФQP2I?z(@if瞆qU-K3u1Ervāb0l;y2M^)pFO|TM3 =m`Q ){f7YQL8+P*^ ]b FCRjUCA,'$DXik4(Ph0-Yc]e@ßBhV{ xK` P(=ns$8WU5$\~\ڊTD(ۣ s䟸[qe]=)?F DH8u4o /"i&{ &Ky!WyNbc`aI˂ץyEḐd4s?^5fJ3ڧ4OPB01,΄fT-)^5u kCc6ALݴG&"gʞ1 ^Z)L$G p+ZIj[pkbOwb#^ j1 jbގD?!n #{ f3NBȹ@q& -٩x}om طּM1Dntn~jH|`JCgu rp[Ciq$ZtZk΁[iجU||W05`ӗd!$#CN«|~7^IxqS=^7ƒ=M]_%yT7ZG4@ 8/՘c(,FAd‡iG%&]EBz@xXzUV%asoę⠓ Zl8'r#ꀊ9Xh&=U?9ba̡0y!GMw5z9/;+tmYq̧&Z+蝹j3M5fxU%6@"!;7(y98 ϥ u h,ދ$HHM+ԍwBAi.'ĉE MrW1'n xoEwhHc޴Cgjv܄щ>]$zv"*782Bڢ`:i莉^{u|"IZ#_Io74D.yNUi87*²;7rbv7 uYro>irq,g3$v[bfɔ +ءr~q#ssL!dOoꆅHS.0-YXMFYEjȜN"`kx(+O**OFUvsf[0gp'cT^"hSKȅt~w=ơsԙHbe,INbYWN__w9W_{D&ۓ~}>Xs7d:aL.ޮk } щc\jدpaY';鐇 mDyÜW瀣}PEޞ7gd\3faN@Bp?8ꩺ4ǽ;n|S bX }aMuGΔcV  Yy7UyQI~1!h{}m:G}qZXy뾭엯7]ɬh]#k%G[(Yfu%CH|I,n!^07B q!zVo06ê(noP|ZLXv_Aqds%* H9 x8x{?.WѩLLr X_8֗sj&Y{< 40 %.S H FbGn|r]G"_bٛ! C|s?'ϭ^,WBkRە)F>&m6H]'X'.iTvuv'4;λd&߁ KI : ZljA*Z\ @͖ 닺ط;'paa4KTaG$*'n3ܬ| El],-qW%`s7#~I}C-VD=)^7/&ձ"-OܣN+pbJ' @y8]>]!o^s7.݂_XR&b\ùx'xNQNG$k䮢5*; nݡGmF(Z#!9s }7b;OԌ>cwNNS#~ 'Bx Iϼ@lHMCؚq Ђ BX~;OxEqEw.K/mϘ ysmtFSd1*,4c"zk#CU5 =|$'֒M\#bg0e!;۠=~Cbpq IJd =j Liݨafw&7/%Ѹ`B`.~X/!!w$KƳ/o,3?\8(wmҵWtx+QlkJ1}CRܤ{)iNȴP,Y{Evo=Njۨ"x;&I_q|n/$9 i8+6# p.uB&}h |C >U/mz&e~儧Pz*33'I8v%⎐6@SWstzGxt ;Rgv e"į'GLM;Gn`:,OPi$3+6ɮ~J(;:eA(~O!p_{n5[c}D.*bȞYjzOքpuUM˂[LjL e8Fs0\[3$C wӞf7Jke9g<p5< P#sXa|n7cX WҦ67>s.sĚr4 4g &2:΀PʰL|ZgζmdUY/VNB:~3VtʩgX@s594k={p%=40^[N>:oAw>ZF5HYUW!ҠUSMin}%+e&~"Y?}w=Lvcfk͌/0U,IiXf{/)_@O6yhEl+Yi zӭ32%;voT^+a\vHϙ3L]:1F6B/#wzFR# 7r˭).݌1f$~8]a{?#'}axl~̃}w"ځXZQmzr6JyMrlK K?rn`ht7$.a՗F_RLa#oO֭t s\Ux]w2dq1e<=Di]mFaz=dtǪa6(Wr61L35FfRu:SXXM,$A=Ht-4у_>'5S:$]m^2TnARGiC!5Lx@l6 аC zчΤ@M8̐c){rQ.3(/]6V z :ު(h* #Q'#\Bt?0K@XM( ANy@%6}D@\_=5%cуYVwX?n&V0'PaS%ݎlHݝƈoDy;E';Tl ζtzȺyPX}ck&W\p/$ ^9[_!J*˸ deerVM\dxZ'C+"RZGv6;dߖdwKQ#ehVwU˯C%xzJ[;6@ߏϰ}brtK _O瘛I L4 ƊݷsmLglרfY(drJ(#w)n+ǖ%Kj-'CU[汉uWM91E|6[?6c4Zp@*|_;}l3b-6i +zbPwйpn5m 5P}. ՠ:)YdvPRr'/YwҨ!g/mSy;瘍Hբ1usg#҈#:Տ[t#xلZR~snRQ(8~BʈKgYF->B~QlLw?<7:eϟsXh$W- - *g]g>]yݱǍ ?;!Ϣpjө/5R6eߩF9%{Nn#;pwd(K*&aLs͛t $$isyEsaT !["ꌦ{!c3 Fhl2@3BXFUbrTXw7QljEk9M8͗h#R\JLՙdM6R3Mʓ1֦՝\~MeoD}U?ز9_oJրGQxu)uf~3Hi= p c.n>KLlOa%}\J<P7T1Rdqnlqgpx`l&:wKي|@EUF~4?*0OL=ÖBw$(:COM<v Aʕ (,R@Ŵ=T+pN׷ ;F#PVD?fp. bs >+i_XVoWp)s\A'h8^p0cbyíl,1 *Ct_ٿhGP~x"X bث)k(Ρ:ef\"xXTO"1%V2[8b/&M\y|>7I]De y[Ꟙ sdJyl~T1-2q.GUVQrSjN;,>"w>B(KAcBIl@*@@v4"{ M`qqbF>rn#7T(LpBw^tލAo D@씞fD5g;^@جHԅ5HƐUq/p@P?R8}^M^ n#^uϺy3&@AIgUjphlѐR{^s-pl>IUOď.u"'Jx5lwUO~yVQ;0 Q?~@@HDtVD-@2A/WTaW:ĨLz=c8RZEv>8C/h)*!&"PG?8sNe}QPZ3.]vlL]+f'yalGvWYFq31i+-،}=Ev$̠3tbbKUSAp&;F!RTcI*nҺ8S S7E R??̢Z 4DV{R( [ޓ&Nf Ȗ.9H/)v [!$R7= ) x+C .˖?H]Scu7ߠ>^ _]Y쫳' -ubgN%+XS! CCsrzg 2Q0B>B*1!HÍZ~R sa(-c,W)#i`Cg=m矗0#y $1);7φt_}x?%a2@SgCI, bhġӽ8+ lp(0w9r' 5<0Ƀe>j1.t /6.D1U@ײ͌w" R8𖳀 Lz3#h_cجm.'Xo:|jNXA65X̷h*݂ulVz^EpDZ$Rԥ%wñgux}΅;OAJ8T%L)-goO& X\-ӒG~9pjr ?Xsryoҥ.(xqd%1ehT4p]޼R٪5ezP %q\VBb{!Ń0?mCȳ R^a]16dA6̩@٠[[6;{܋`67kvR1xP`h mDcл=ǢtB @Y[sc)8B"j3qC(wD;ZRB~)^U0𚵯{epd_P0vi[W).eM )-R9 qu]- ` /4I'JźȩpI۞cfH/<"!WW5 (9#K͂C:rN}혏l{۴jPqOl!N%/E< =A@3mųUl|vRrļXqP4D)PﺌmbMZtl^TB!vWbivI9)j̠&튙5|{-yeY0oz,X,qOA'iOأ-Fԛ3*8`䭸oW|~/[RK"30,ߞy1'k UQL|$$IyPހ0ۭT:TLx㱩9s- fjY$#Z92M`5\hYW8rwTƒxuU檨FӸ!@V E2!Eǭuw ayI`}J M^wn饻F$w@DI 9o%_Cq &]tto%]~)Wm`"Pt4VtЂ}{=RbN :qD{)SAygi%g\C;jw!#-3cTO>? * +_bv(_W-UP=Es lSK/Djſ5Uwx_|E\ΣU\ In>~vc[NOSMfVhӯq'~|ļ} ilG#}iKHj۝b!#R` Nza?h3/" i0ҮTX>}株ցRgB|gj;^WhR宒  {bz6󞽭6.fG QD [] vwL@p {{ u:X&X>n1|갠9Rh+]x <*bE>H)|.<'!1`y$Vۃ֧4 Pj&ܑC^{JǂZ+Od[ab7)&Jf#jɵVzS|Z2ѭ;u@ 1~YndxhmvڣKrķmQ֐G_eLOOiQI"I:S_9^LmxQ .<\;o:8c8چ ud+AD4&ٮ5e>0! #H?\ǧ v#JMD5co#) G,:"j[ake*Uncҏlk.ZZ-?nZjq#,B]Ҭ!?9>79T1N] }O&Ϙ!5MVf"n5к1/ D5Jvŭ/y3U r\ao؃P k Qe^ fu,TajYpsrM^*L>'6Pb^؎%rw߀OaT+(d bP}gwlO? o 3ו"  $ܢ'ʟKyF^?]L6hi{f멯a*0JWvAL-OO {d4I<@s,U-u #PxLDWeh-GĴDVҡX)7$K]f&WG»:4mc (G `Mn!l)r7hJ|ゴs;M9ܮ*2_yY}-ơѦ)}{<2!gLl-J!iv)`LjC:*BiѨ SD b#AYu~ɲAD)7=sUw,q&B Ph6Q_?}@K;'BaMtoR!p`lc@lBwIlz9㪻c2)YUwIL'tvbU" wWJna퀂"9 Ӹ,y](hj$' T uK+cKp ^ТL<%ۊ0j<$<П:j#V FDEnLÀpBڵې|;T$> ?. c]"U=Q.7!ry0@QPDY|M %zu%'Co!"!rWKIC\@"itn5^mk+nřR>nLW]Z6~&-է-,im\ 1US1Xݥ"A216rd40M TpsJŊԃ,C0{*f]}nB-+f.^xxc>RzlV;Z֮%ztm75АI-?!J -H˻)HPv>((eɓ }lUgxd$^`^6[Tlbsw hhSzu~ǐ`h LK: 6rDA*?3_Y?ȳ%)?K&jA"|`q4e'_1!IdQ 9 '-!,v0J LʮF̃҇; pxFy;r _GZJS9N #2f9sB7b98+6[H؁둳@mC7XbC㌶nG;ad5%=%Ue /FY~95X0O ) ~jwJui&ƉGa< ^6K:W>QC1NBX{?x]I΋5V6ҡccg0D`6ۯ27֘ u>EYyMӡ?xFK7+y??m:5 1דsb]^Ia.m]4oR|8SIK.1aj<6Kն߄U N`B?PH-GwS +8~I[EZht'q CpjU^{xnS;퇖|&(-xM><nZ=g!0B47%RFB63<-'#{֐K_mt{‰>ؿ4*zRgN]- 5^nS7='o:0-BhT?ST)H϶q]n=.^gqe`͹ hub-v S\b)v H$Loӓԇ\)@hm+W~I;6iVA T ދi{ٽژm9?\3ߍVV ww%%oJ'{'8Z 2-~hjU3Kl6yVCU-e Xɀ%8:KЪCd`#&WσD\t^v_oP'b[.JY߈.iz1w")T`MVnlfૣ: We4@=~, ;uҏ6~ ?hc7+LƿD n&t$~֭%<D=5|DQn`*lgv$nr .'}<w\hVMe~z*޲5Gh3 #3t pdALGg~zof%D3alt#O9)k % dT !~YV$29l7 +mCoz|wQR\c%f-Wcf%g8V9a(\h׊'XdYmҞN5B*ILg0YV)*[Zs01ylŴ)Hj$?VDT4Z gu_ժF ;80is:x$-V!$r널FyT1Rꛤ0P&N{X{DլQEZ/(t ϝ$t`Xa6Mj5*FZfne*;yZ4M S~u)YJ8 ,YŇ2vTe]4tV% 'z.usj4lyj7`Ij#nrXY=?_ߛͤi\?_%Evo_|1h#/K`yI8'U@y5Pe%)[/+kcϿn+UeNfXn)wN9-|٘'LvљAQ OuG%Dݓ@j9X pE("&DpZ#3 mɜ1]\xjKv).Nf-ǞUCeh7LhK/PS2O̚C8:n "؇DXkkdym$#auHuuDW 0Xui30rO~F2 ZWoqu*GŻ:&e9U!oYEe'%NߝK !#eqhn]9hΊ]:ӹ<)9u4;v\/9rIrYE%Sנoq?8Vzf(|@6ă2i&Y8wS`5f-9uԮ.+RRq6,q tZk.s5j hdpzRI_?Y:rfW{<<ě$|䵋5g[D]u @&^SS~P:F+5 Nry84Vp_FZ^EjLnx}תtaZnh}{쉋'c[UZl\h>G>&d|g?nd>ݣgoi л=DPxCC{ o@Jc.+Af\ݎ8Ϭj.>>~6Sv%t7%eo>mdI$]_yGuAH=X-4t&QpL| b1UeհP1LYyVWp";Қ}/6֡hk2P0qؑkVw >EFmgv[Mە}r.+eNP#*w\7QIc*I?&X3ؘoo&AV rTL@^+Wo1c,EENu~9VT{VM&[* Y\r-*8xlzQ2$Xӥ 5c.91r|6;s5UEY:9%ܡw<'K9+gR>pEc@-Yr8^CD:i1#a)RN8Əu`P>m =LuK9 ;;Qb.BGZV̆n[FC')~ghaؒ޸~<11o|ÀK|.r#w v۬#$Ǧ}w_$O 8ON]RB;-xe/" ˳:IvutK~iE?&tDq7db*`k0t (/^5dQ9imR-B@# xQ}\anRb )b,5w:-EӢ(%sE9?>fg.O4kT}}Tf5Ѱmhgߩz|*nrV(Gk2DS.ltŸBi`<`5mj0L f} f1 ZH2nabs񇯊ߘz_Rk•aL0+i\9@dT~`o8PN_VW2?]YmhM}.3%j&gi,iH,C|OHrŌɵDhroRɦʊGQ}i[:-W@ zn\)'ş&>>IfČ8ʡ)`&Kt 0u=+<Ɉ3 Cԣb^*6ka<#q^MBrI}ҎX,b}%@Dl2c@.o{gr޲ TA함"Y9? gzhضK<Ovނ08dJ,;"ʟ)t5z E X1EH}Ɯ~[!2G.߄b}̿~{:AaO\p9 Pji4TF SENo)āaQdѣlNvz>U Pg_UIFOzVa$0(o".quH) J[8չ\xg N{ XOR?~ [*\o݋~6%=Zj$1D p5sqDyDS%%L?'AܓV($/CRHĶ%庴zjg ^-^OYO(NJDLG6xXUb*#LқA1QCz#w+\";!А&>KstaGDV5see\KA_\h]vՓM-@ ڌI9NBx|fI[%TcH9;@E˾,,r栦@Ca&fE&fʥ&'|dihC|߸f²03d]FRlb zПeNabJ(U-g[f;9% dcw a$tl9D/G'=\&S?Z -/ ݞpj^=<$۸}'*-p#N@sh:L8䱦6"a52f76{˔?S?b@} C瀳YVފS| @̙¶T%fUVg*=&XD4Yo$9Pr 6= b`s$ ]Xm=!= I9?h 9W{=;2(aC-,%%Mm!d.֞oX wy\HBuZ}(VR2408X^rn4jW k -jݛN,8GrA9(p}92m]b津gGF}]j k >c?WZ?KpT$M2, F+| l##Ve^%)2Lodإ(W(2ZO}"V$Cz[m-Y!s(w\AmtEoOi=)1_LArk]lMρ '=[:[}⢆9! SgP+XM%5KOJb.QnhnI/p"K.t;%g =ض,(m<1`0kwHt9PCL$y'ɜ3ΕE*Cba'ii@`^Gǃ=~=屵gM\]ѳ|Vc[UnI o5\go8(ן9ҫR7{] ? ?`}QDڧXR#23Wh q`7f~"34*KL=ߡ}\jtn<9=l ݮL+`Eƺ"߿ԨKٜ$}6c[Tք_kN[4ԡB * AN"\^m{ƵP(pw@W@. 0,09}sW-E<-X[zh ل QbвjhPq%P?]$q|)*q*RGX=teӃ4ɔgbQ !eCz“e>Y 8sU>&Q)2@rOgK"{Y8)U&*aB+4:=T -5H dnL&uCԌQ)65;.V7xQ{j0bz|]88'!pU)l^%>8 C6%SKm L=ENu5D@v4pPJɀw2@.39 ӥމSmaA۰> ӳ}yOf=2ŒOGKC+q|v*a!Ka,9Xl7Dgz6BlCa>lW7) ~x:e+rwqI y v:!աcP87CL߸2N<4’ "1y'D'ЈJAkHXǕ~$cjO݄%,3J'L ISW)9ñg8Sm6"Q j퐟N~܆?1}?F6-"%_ة_㳓IwRehs.ȯ>gdUJ.'͟3_s;x"oCYm0U 2PKnu*-N7zi"p4 s6 c"i!!pNAyzW:gD&85L6FE)g6yVc:|a>3g6FPIA)jdş-2CI>q:3ϧ%fam !ӉyCvUL;r!vQJ4Y9Jn+"ͪE L!PX aS y*TRF/i9Fv4h0W%L^< %pܽ8s!'wEMƌ~==.fq@,ö%|H{m Yz]> um ?f}7Q򩦤6rf&4̟մǮ?LJ=6Zd:D8/-BuՀrqekCG b,XzO\2[+Q[4eea۴N̳?}6B cKE d[UPVv$*sH"= ;myDCIEuZ R9{P>V 8u }ʳ]ûaEKus DՋ#,NspoOF>%_>utюl#0x<6)UTO3_9rLNb63R Az,Wp$I#ij;.w 4㑤Davf)lڐ3v;gWvЎ>EX˃D|!D`_bS'C+H ד}lM$fEuF;vaAE+[]G]TWkj:}DJ;Q׈bO\ȥR6ToWOc[{[o%|nJo$+$NxWi8g? ؿ>+FP3^BOS)V3g߼P@':^2о{[0=|Z|y/F",2nVJj,2hwHy٬F9u _qd&>ow6lkp3܌K~C `R[OlU'ۮ/qިļ‰#M85VF6^Ӿ_M*GPڗi1CF-.$V>)J |  "،΍m'ب8n틜k" wD6d,hvfڴf&독u~FhϪy?2Ҏ5x) %PIZREmrfPgA rۂ%AbKIccdK*+5q󽫯2%}sd!g$ϻFi@^LMw3M3phzv\㺙Az޳Ě; K"RނULFeK=ȹ)pHƽ 'Z<$X9f0FM(41gmy+CUMZQ9{BgUşx-Z]tZݸ 2Ȍ5mmgBڭZrNk_Ai`3Εu\(]*iI5g#|]3(J)_éZʒ@*TJ[65cԱ# O}s@ꍀDa7kM&BѵV%1 ?ȟx"W[$\Hз!;'HPd^ݑdڛ ݹsɐms.@mh)U_%m͆),7`o_PQ1 |8Au Hꡌ&j'D[GHUWwS76D%$BJ|:֏kA=P^ $D<]sl8h;ڽnJZ#锇NFQYam} Y1II+ O9RlÂo;GI&uO?$O/P4`0g.}4osP>j"}9=& ǡX:{Q ޅUQ#F,s7ۄ_4!?YCFG=5HC6;j^s%^JۘՄ 0GUĔ7G+4;? g#heUcP cϡ'9 \e)3Dl;wXx$PHkg#TǾ}UFDIc_ N<~v.Bx~ؘ}H#`E|*3M~+cgvW.&<|O$96J=I굽 X,,GеAp)L0{˷Prg6Y_m`{IJft´h> I{^?<48aL.u4L~3.sHxOF[q!2{% K.,׋nW N &_n"@Tڣta!Tn+HY*۞(68Ƣl!u. vUyVb=-~[#QmŢIo/9?(,fy,6{zw9: QN&`u$c#}[} +٢cwYNKSHI~X,*4F$YECGh8P\/>HLn!B>-.cŋ[:俱1N1ߩ:FLБB"!Za q҉mIzEXW[ak4&+jO)`?.Y᮳e5ñG9GMcļ)~(ɹٜGOr-MJ&dSR:zxѥPѳFE(&qmS5i 1DSE ve;fl{5ó25O."7׉BŹ5l9]62`P]ڬ bw_`y_G4b9,˛,opY Jp#;|Za ܭ L|!Y"o+aa[0g{ Uq!'Ω^/p稸f+,4Q4$znsQ w'qFUYI!UL7mn#2vEU: esp\GԠU8bUM \>,F&Og_,N{Re>ID"38'.߫X[)8] ɿdB`MBO#0'߈1<1HQ؉;$(!,aЛD"H'rIzEB$הrO샀lĄ `nX$Dz(]IjGZZJ@}] V\ʁk|BJYkS[kPfU B5­$8HŠ]}caAuƎe{m@| [\PmU\:ŒZiw^xWh?pLc#lwK(]Bvv f_yxۺș2U&h26Ϟ+Z"v,}!J1lF^K7TqYۘ:bȠ VYRjP"||98O-4c1NKӦ 6,sg nry1X2݋d%A5Kʹ N^St,as?epX.f% X+BK5jrEv`Ɓ&vF C`F/J8s!F9#3̩Lo'[&ykk)?_#.ښz! ݵDe7 yoZ\sBl-L"wP<ӝcpvwV`.BKA4WC{ae./}+OQǭ PBV r6h5!/:H>@YB۬[?Z=@D%Z$ *cTSe3`; &8pc|s+=>&Pls`"j6K\wY-[(-H?~ЩRlUDLJ{^ū)Zj/CQ?ԖOA,r=R'MB@iF21UqV-~:+/$Z'J8j'ш a{px4- H]_5mHҺnw -S,vf/Ò]FSM䒭]mq>[JTX^ܕyqV(3*"uhnN@$z<*#iNdc ?HUE\-}ɟJ;ANs͖4.w+ԖG{6B͗m'EQ_rG}E.w?~4'驆DmK)X/v4m)j[X>q/yD6ʉ)EP[bBY*MF &,BbᏵF_H&֭"P0:^Ԍ?\渜ٴ`"͇V]O0Ԭu^\nhs=H#"W "v_'wVU=%/Pza 7W`c\_K!rnخXkNWhg_E{!bĩ{btJ$ZzWYng|n]~ p<*tc4)I8[^6H'#Ffq|t -D i\~ux`tR@h͏ק\2Kq>tYEy9O0D-c痾+. #YqxUo{KIl ͫ-CK\}/;ǡ_XahZ CQ38e=9>)"BY?֜Uv.$|401ՒVzyc$K4 5A"QEs"e:]gg3(m#+sj_Q/Jn߲Dq/S@8~{TL)Qb'i`eA D`]K,0)왡rV-eBf;3э lSF(?:+]ڈGOTsT^zeq{FtBSlxd[dhԓ5T*7g-mAiRUG?\FdհZq61kllV7$2`' |ubO*/OuVouP΢BTBө9Yw=NE[zSw?RiW6DwnIubc?0t Z PA֐dTm[h# dOG.va |ZI%%VD)F&]hiY*a /aڀDyKKn͢"`*gf:kU3uf/I7;5O$Bw4 $\F{l.ݖGUiFM!v0da|6UH*ȼ̟S,X"(1c֩E_4u> \3`HxPF(Xy zw?"# ’l8o*٩Wj_nCMhf+p~d%ǫ+EV,[3zCv?p}䣧.WXOP?o6+Hx >·Mz5*B;P*ZxiƵ_a7BDOkQ{e|^ӭΝuvW9~,SRAЦr;)Iџ~vhh 63ltS!cwżb;RMU ]-KznflDŁ^7sAL0N| aG \#7Jzf8[cigHXAm6VK~ys0+cu~ 4p,{` R}\xNnzEfƽUїy5nHG3X p>Wͤn-qr5$TF|F9jQQ?mp%:3fҏ.AzYDМ .2KE9Ny"haT.X>E.»{Db0p~\qi.”웖 Os>u ^6cVa<2ٹ"78 UbH _Hwmk8&O7 YKkzD҈`mkG93Kfg*kf[nˢZ}W/b0Z0*7;pܾ2;LJUi"z[c)!_Dy6*E7\Hi$[K p= F?] zt|BVɇ`B zt04CP͕qEʜW Pau#C:E}>J񖜻){4^_b`Dc]47s`\'@ĒxQt*|*JGYS$-\{8BvN cհ3bCEWYIHcc ?W i%UhMHf^I32_K43[;gxf!E;Qd7x՜,P_78Z]e>W>\RRm]寭^0|e Ď,wFD,֟=3VIh^Su7~OJ~}[:_iZ b^ [YR.<$J!hŀjuk%%5GCS%.,+wcOX={G)t¤rHXY_CN"q BYIxi92* Rc53UK@×g&Lcsd΍ulH#y#üC\50U?n H-bPrX:jNΪsO3Wo7hr ^~?#_1T?b)">RO:wJy20}WmÉ+v戀][O'?L :5[4T2מ?#䁥N$OHĸM5B`p!&\:- w({HWRwtK MN $ 7p=,I]A0iBX'5P9[ac.N@暱WȂnʹg ȶUc$L26hzqI2H^_lA42%/[Ce=*% ]sR#_$ǎO˙xEϋs _Z ҬAa`uó2=rF?w1퓍òQLT\lʿԕGkxJ9dQ׌'!ٗs 6:8%sv/"7JzpN y]~+]k.;?8mkUzd|3,d0x5AL>j.Vxo3+l ' \>QJr# =v)!3Pr'{.k:60џ'᯹4ot$!9hC>Y\Ayb)$}k_Q6:k5Ǝ/0Ӕ !oJ@ ;0I@5TmޕWxFO,~RfKי^{!P'N  h2? #\7_@3Z i" ӼԪEh'RJM䎧Nw-GqP4? "~c0}m(zp0jCWP*g 8(uc'_90 J^>a,!!# B>b . B\>/1y2\3xkD IsWE<{)z5,Mf牀,HAM?Xnh O$j"765Xz9<} ~OY/Gk X`{lk+VxM݋FDcIKյHmr;oOh \~n:o@}NFmt"Ҫu3Ȗ%^ȡ4vԘESpWmZN7wG[s~;T;}1˛]Vgz΢UoC Tt3dÑm>}3hLȀ~E4uĄ1Thx&W$|UqiT>ٽd]X<Y^JD=9"ܐ`՘6jhXcin>#wY<`aA5r/ xw֤E*ﭜ\V78mUb==V0i="ypMko|8k?SNN\ i,VYe0|FGy3ϼ]t9<$aǞVE$(3 `p}YÑu,j ߻S1@'ĎR)3>x&"࿢_ZW G,|掄yL>*u}I[=;d#ޢ`8Q}k"7~c9gpeGr3c~8݄_T桾K%d2l@CRw H4PF<}7Y:НR(kA"gcM<sf(TmE罕]{qel < W"QO()DU)R |1ҭ]Er8qo*"áJ !Hjrhbel{]L nz3yp+pգ?2Cx#V}#$ dj{nO](Q F3}qxd2]I! I|zK'=7i*cW`bU-kƒ\ɿ@4Ňs(?Z`T.OKpwoX SXzE 0@o;ɂ4+VPT0!եP* sT,B?Z]$ gے|:Jb"JL7G/ۂ5D } ؗXʪXiR4 +vk 4 [ͭqӼb!J/kFC^ZeWwL ]DIw !*#+JCU 7 1E%rFX?nyAotО&&7pn5jBL~dթ]o1kZ6i  ɇk_ԯ-sA =Z?:'J5,\ "}J֒(Pc5i%g"T%[ZuÅp_4п#CAZ"'%jݼspw(vnQ{(Ok-,Q|q΃kߓ[9:D)lb߬3m|@hW!L)D[ cE1cΉF٨DJq!V?%Dbd,DhVVS5yHYxt=Z _Ӊ'}L39=>2Qn(hس݄,&ћ:)qμҿCŔ x kh S`NAL5ӯstRNSkYU&ƿzce[؟)I/RArN#Y[,䀤lQa%@*,L>)a]/0嫺]=iAJDu"a "'W@*u)L*SVAj_"afź-E5>b]@4$N|D;:IݣP]Am&2UbaychgI{u/6E:<ʪbf^V63~[jBWŲh jyac{)ĭ35 s 8Js1\ix VhHO>ښ+fQ찗be\S*dg)ϱ8fݿ|b@t +hCY˞@iC;R{&)vb86>R)Ro?^pʼ?M}I vHNG!YU.[9eZbC5*ӂFh`d+ݬ{J`!_<54<?yՔbSQ+uF&P7wB'vejE,ǁ,b٘cD, myfU 1f+B(Z?O@1X.x4x );e(F^܇v59n?c]Ag:<8WA vz>t-h\[`Hp,el$L3/{im>8?sSıRoPkY[Bjet)Pc.ri4CX,f{AH澯sLW9]M`vկ{?o%Jw)]X<Y^ᆡ G/>#$*m P3>.p4p. ]c{8}p2 sWFyiqu t^GR g/Mڝ]VkOBS8J5DY82;&kt ڝ୚KVLۻ=ѝinc".$9RYa-KdԼ }֐͛lMxڼ&f$:~!c锐l(Ot]Վ ӚW#ˁDJ+/4*5vbCDwE-4G><*ǖpP,BPn38(,>R֠[1%yH+mJҍxF:3B9EV2ؒˮeݰ4)Ż>_@ 5BӁB [>bp~2_4K.iW#2~@g5ypJd#\ex>u`ɓ]<'U3iQW*PR r;̥3s7-M&0ހ*a+vs%^߈NfW b$7fv:NB&!Y=/^V~m ?^o# AEsytD0N⬿`d8ST0NkӧCCv5SE ]考8Y\7.BۯhW3@Ce.zS:i[/C^uY"hϰ;pҙy5vMz 8ָ#[_M<֜3m͟NI|%Ol$gq:'-U:Im+f%`jX jUgQ2yDt0P <%xĚ?&]w`)IRܠw0Dku"(t1q`p썻^AG~Vn|/ \~5rt::ɵ-9}< P+qO@*6 J4ҷ{rbaŒH|.*wPvZC@Yg?Vo?(u,W@1PyԠS9mb TQ02?3%IU SMX3%GF6B\L^J "b5e#.=#٬O#5DJ lpHD`]c"l3q<2@!Ҏ%I^3AAj[>COֈil wrQԋfOC(ڠAtgtI@|4KŎ1jnF%wgH%ϡUvav4lH# TJq*(Д jNRDײ\7K@}y .H9Kw)\RNpy(*iҙ+r0d zA{ꋬG9t#Z6%TL2?_|Wi;ռՄtjb9(W ˞y"pH '=Umʓ ǵFgI|р/aUށu^ȗS/%ĞQ@|[[&Y3'**%ty3P>u[G3LM(-E56ڶ;;mf߁ر%z(oҽp,Mw1!9NVϢ*+X2hdwFDfHzCsl/>2^(_݀bh|-snVY6]2j}9oYrЃ MWN܅q*A Kˣq򔠌n0Yd\d4Q=! wPx>w~K9I2kfV{qDf^|S~Ltrjd8}xzoZC,V]^P!ccux*Ўe&^UIPzk׈<3Wm&BPoQJw[?O4d)^8*O`JCAd9ҝ ; ]M.&)p+ Xk^ȣ?h·)ρ44^ 5+Wx$7y`sfLCN(D$W%&cYKTmk˥5IXP3۠fnuSRN78 A<:[8Yq})LS+X`J'p]A]l@i+F][()7c%{F:op~|ĕ^5&Us*J }W]=ߺ#T ?TڔB9jpC} Y=v1B]t>0h;;klvdK g4Y87eAm8j#] VE.\XEEx{*Da_ 0p)  u +‰xPkJ4n@es{kg}xd[uҮQT*iUgC 43{xALVLqɁ,Aq1t Ҹ{ BX˝62[)W?Z, c:m+:LRšax[CiN>]d9 /܉A'iGl'ӅWeGn2PJ}N&c m(d3CD]n1T:?AdHϞH\d9-abM49 2Hu'|flx,.l`;="^k}DՕiił \ :X,5TUV(f!Sݗ7||~Ŋ{jL>8 e+Xy{2UqYe%3:X;JH& 2+o~ZS8bZ =@,e:u[8o0 X£͞ISi .OMS=iH?fgԡD= IpG@ؕDe=ZybUO\{X 4/J)Q_hR=v+g }XLAsrv892SQv18kvڍҾ>njb&R в'ྫ@tWoO w,cxITv$88;ש08tLSDQ֢(Z7POןG6D)ɥ*MH~LPvwØ~N?~4d"wv>splG.dU~pjL R^1M_eXc9#c5?g [CI$Eɮc6<+'ljhU€| b(mT`'r.:ߚTP1 d* lܣgKֽ26;\Ikي/O<26$V It#!wsC9;yUͶcu  t`og6iR;#9Qi.7j'p'w,;Q>iݜ\w#i!o"Z %kl=\d  kYdvH 2% 9WjӶ'C?vөCs¸|9$3L9V:LR!^PxV{{s6U$TZS *°ILV .#_…m$ &ͺFl6_!qa.p՟lTqȨ83 u)B&U䣛/]I>ހX*!ezgx<\b"}2feɯEeGJ| W{dlxZ [@._ ,D않Ir~GOa`CyXHRΌT/k.˪} k,ኹ'7ZPàUt|Ֆ}cƬu/"p{ۻB9O+pT5A112-X"{Ui/S3 .{_OMMM %,jwq1y*  |;ჿF =42ݱh؎Z "T N2`Iiz$$&"N&_AL1r 1L'Ox oPN|99NwmGG;-^oqPwS܁ȶWD+y H#7x\R9|f- 8/A\6.tDKэzF( Z.d; X*z0VGX`eJZ m,jӀ5_KN7& 4MG99:F@q^Wp% np#l >٥Ll -x_/OB`8C0< ` <߿&0Qbx5 v:+ ??^ D,d<.defzyIN´t0ʖΊ\TmE0@[ߚ @=LQ7 i93iT^EɹڐCS ~8qS`+O>M\F[ ~CWxС4%'%46#b+dh 4CJ;>c"UB&#-)tQ4 ~.Ug;sM!Cz! UtH\X:SpgԳ%7en'eysV(,v V#H  (7.PP}]vJHbC*躎f^-jFI4t`g=FYR,yTa~J1xEiRs^LU)4٭SZl XQ2 o%pB(9to=hZ73֯{Y4Z*1H{jvyڨBE>\ h2EXm@tWA5T3;C[8(&ZdЎE%B$gݧ @>oʍ@T+0`iZs b8u^@-/` +C/X$b{v-' Z2eG>"_˅Ny~F@H v*ZshT݃4d g+NV UHN{Κ5 /ݱ|0GOXH+ n3# lr6yyKڠ1jmP!'ԳycӊxlKEPsklS%NO#K:cԢk4DYپ=V1Ii!u:^,3Fc{O0r/sF{%}l x}bW~w˭mr3H3#FWB+RYCAG䦴3n9k uS9 fQЯDE,|\n~YdڷsX|S;5$GګUFM5,I#. 45[!{?>|]R5z ٺ+9Ae: < D3*JIWͅ "5wp$8]=M!!.~.Z5z OU C'p%D͗ ZYw]3ynH7/ ;WU% %d3& ‰i׆Л,_> EC] ו}|y١r2)qsM ˞5*AXr=5pQ_]mqw^L* 9," [ƽ!{k N͡y)c fF!rÿ򛘿ur&|<) wο&gӅ ٘hd{q-YAIF6zb,˚,o$^DYX^:Z@Nj控9&.V,Hŋ,*q ~D_ gdx$I/  ըm\_ұJ0V#D=R|;9<$x=lXJ=I1]z[FZ۪#W>u٦IϜi%e# D-7L}Dՙ5x~kairA"H5$PݱjUWM@%Ks"z*tA`)&1"}xK? !7F[rY )I-p/B=RWP qah.)vkWU35Ԁ?&?[֚iP\iN9>(uf7V HB`d\h?pbOAܭ ;3#KJDdUL4b-!Nܔ*3Zk!._R\b\ KYCM!Ta\*xu Ov=*yɉfsz @VpO8`Gް~43;c[Da۞EZ!XSWWC7 IaGR K%ʤt&A8Q%Qz−t;gC\xLWC{! b^ v<F8$r JއB+enY-}6}"U [Fkè9EeuBIt܈+q|,S)xcQ=2*>_ߏI|]Y_2ZnZ#!*Mf,M}tqbnTF?+I,Y@. 7ʧ.4  ʉ,cuI2cd{ׇK2S缕IzofILTGWKt&V˒1 /?wegӦ:"s_R˪D/tL2KH_ENÖ;|PK Me/g" 8p|&`Tb7pޜR8T5YE{YL9Z-Ѽ邐WmJJ)aܙ98 Bш8HSO֐{Liy]X!Hi iz=gZ "&eJI\iZ!TyqC);r<zfԮ*\oI'``%1u"'jUa5h NHzHUy@Ѱ(ZFm3t&w![̪ u 6U`qӪ/qQnNw˴ܘ(~Azm>x2Iw̓$ vUsT^7 };)6K% M ˔0us/1XtHq]y G0јZLXxp"K{>hJ 5P1 )\1n.io2iY⎍Q3]T:;c>_ 5GVe}Jonsm^YNHYoJ 8X?,sp0 W\H\G-h.)lsI/k],l<+okth MGϤ5T_CuLhZ:V'NSfS48%aw޸5R0eU:Lڒ+.zpV 8K`'Í3cݡ\ŌN C<?89(Ÿ'1{] xڹe8-bc `dCTGJy`Iqe`S\Mx"KQ5W)[u{z2:κyUXJXyu0[ȟkCFTz%\@z`DrG%QaBYh^X!% buU[4p<:U| AyakstF<߸H̕XoߋQĎOkeWKk\x@w@OcSA߁%w( P%2^]ՀVVJ̼7>x@/+m{@zA׿f} Z#zJa۴N*#TjJo>+xRرp{aK?@1\r4_\)5VZ,lWPbB>|!`N$ίX2T]kHHQ#JpgWA3Zjmwh;l кk*Gj5tJeۣ;B_2ōB[ p3F jȷ[27wxޅ'ա&9 y) -bbV{z >+dԺO,!%CBUhŖp>7!=}Nv^-ü?{sfF<k8>?miۙWk\A0 - 7Ʌ@6T] &=+{.lB;X#S5p̬!V-tD5gV#gpA3\I.hoU鎜j aViBZ`%r ͧӣkМaSnLв =6%A)彥*&6jbӲڼon~5.#84,+f7L̅mʎ|ug51f{hNW6  PGQ{X#/;I cXJMMgsBg&I0_FBKIzd:59U5">a9`VuMN=pˬ*-cz'A oa GBO>k j蹏lr2> ٞMb3!bI6]LL 7F=̻F cp -%Lʲ"*F_`K| Zn~ǩ%tӗb_Dj5 Rbv;wW:*?X(ӽrqȊ.uaӝ`֞ H?ITZ϶>ΰCINwO@͖l(F6?y:۸ h–Ɗ7eamNO?q&߅W>tDɍ p䋚۸|Ϫ}fGyv/ RaPAjo.q)$JK U/V<ĒHoNꃲַ |Q޴to-Xe1N (72W:\}pآsq@'ŏ;^%Z-f)Xj#9-råZ$nk!rݶ^ɭd^CP8ʹ 37Y&,q\(l\K%!R=6M@7C89P(" .>ׇNp΁S!s^$,뎇 +V-FXw>SS  anQs\ǖI=wsEn fI5t8{\,`ބjH _ΐbN]~oE!_?+rNOgh% 䐊1~(,idt-<|Uḡ\@?'luvXa&5a\~N&\? BbmPSH< EFZĔ6$`ŝ:[fc<-(l<|`)f}\H/P%|s 9lMis@mxP;|#Z|qnzzaB td)Z' x(A}@;H M?=w4C}?gFfl }Wn$IجrY:1᱂-W@Z5,I*fzj> VĻ<%"^Y* @C?rڢ,9ʾ epߢBd*|phQ77V{Q# חOY:M7RTVӒ'_l=4+ k92sa݃߈ jU)"]/%ij yQ#T\"4+DžA/5:  9[U=Q4\ Ls,s;.0j:~^8oUPt>1 _PhF{U:G㭟 !S]8tMkrI7Rs!b;*փ:Uof!Fc(,n@N w<2q =b~ {tEK{ iG ,231d3qP4a ƿ:.Mcs;Т0Ƌs}eFeWepl) 7@dtYA"p `;'(gl^mORqjZS;o1pIt4}!BE/gՂn]]PiWLC*XTelv(UK\O`US1dQ#)eB^7us-+کVIsYFbgF n%ѵQG:8ؖ~+dlauk,qn 񩚴qq_(ғP_NJX:yi2AAMK< -_DIv lqC9bQ=G8C{u%29"uqIe vi꫱60UٯjBKͰIi*TR[.=K!\ 7ڢ\ vV=QMno?.1p[4w1On4Jq3-' w]x\Ӹ&Rן . h>ryUB2Ȟ%  %ӑ;&:/tl@]]i1TZi; ឿƷ>5BԻm*=zk.{@"="ўl%&|# r:%^My0Ŗ6-P6] q_D%,75{w!SwPsԻ1,f<DžLusS6k3f}q0хs\iaˑl u^)Z1q<+8`ץ(pC"-(zՇ-wVz2Z'E_K|wKeԓ;(D[(I%DGnYIg-<'{e!ȿtVݑ.A,ιժ:Fbz-Pψ Mg Lnj vX#0Fg=ʄL((({:~,eﻲc8@eTDkl<vݾ")|xvHlA k2')'Aͯ_k !aY${EVDp.}wQZ=TNn@fstػRT7թÉIL2@\n1o▯UkXjr4=/z2R.2t C$LG! %oM sh#8=DKةDD n]#@ڏ%'UNu8QcB.S0/+gsi oxF-m+Z[=@|RAl|x3 1r L~(DK "]s0g}>+ %C$bu@x#Wыbi׭Ԭ!կKZ |%lmOS;כٽTSJr"kuTk}uN7~V5 0EJп<% G))#*dI5r?,slW%dAZã=o|N2xYS S߾!in2C*+,Q khǚ|;|4vw; K`DN:(FUN"t2Χ٦!Q&[l2x( kcՇ7n Bʥae5yAe1٬sXj`5>;l(L@0~kAPEQ[[# '\䘓?0ssUqi|ϔuȖ(!s҅բaA7gsX/%=̚Cx–G)UFQLJ[?,[-zo7R@Qwb! ,q Qƾ&yڝlH4dak!E'JGج1r'ŌM {O6F(+Ȕ$`mq~hFҨTc$JL~/Ppi gNC;ADT,cQw)+Jf =ǒakUhɥPW,y-a, =z6z.ˑJ2OZMHN+j"B(IBBGP UfVWx aaJČtq3I).{=EڣZiVEĞ!=r J_)ax UY؄|^'zFA7GI9kw[#GldɟiSqy2[5:U}4&ӜRt5|5f8hυ!c]|l8RlOmSUk 7C LϚi/ oK {`8']0ir58a2mI*59'y-!W\TƛW>n>4݇i, LQEQI|ٱO:Eѕ\NiDP)z1|G uTT_~<',;sż6,ޡsjm k1'N4!H'GԇI~^kyjܛQ)-FJ#WXx IN>(X8=g^{njU Qw!Ҏ B]5j .12*\,nvU%7,-j#[}xWikUe"BBsd*fY>¹G92 d*S;u,go1Afp{E~*/, )$ ?LAͱt"Oa7 `WTttFfQKmyHekbPI$swW'_>bЌJf`y kMtWT9KBӴ! B+er&r^* jɽd[͙) 4- N9'/l\Ӄ'(Ϝ[8~[ѻk;ޏH&?/@?>%% {PXd3:d%YX;>jl|ss:-U EkCR_D l;35f//.Rh- Hh.eA52ˀȫ/툼O(8aF%z+@ vMM4 xQ4+!KyM零shQ\OQƓq&n%<1q=J+M1J,t!O-3`(Ʋ91ZCʈ׍Uڣ~zI)G:W|ݨF3h&4ÝXs'Ȓq vxi|=Ka%q, K2}>Az048,#T8K*țebHᄮuY;|Hqx/\k: i&^Wm7 ̻dxޢ\y @xSPfw?tK@@fݕCޔdgIY$+ZZ >0-hBΡٱ9xhCgNjZM0ݻшۨt)kQ5-˜.zqFTvwY` 0H ='Z9&X2Yg ed;5(]H03j-nPOs щ8f$pa^6>-Leh%LI@9ڟ cyx5G"5x /}sB." nGP',x@䧺UhrPilgÍָ^K#4:H *AfHyn(Vl+p%:,tIKXj;a/"ClMpwOgE4 LmI]g2{`eyh1'2}L@?Nver*Ƃ7T(7c(Y)>IC16RA4+THs}E$>b |Glw>y*ވK6f;o6(kN_( X~ӹ84zW%bDa5I]F!vq><@nr5/C|kmndeZ,fܕ.RKdiT?O t=+f_=K=AmJ& tXvC#A;WȢ3~ F_{%Sz(pC>lA񣿨d:0D ET:Rs3D~N\\R{LVTY_5H4nEi?c1IJQ |*| O Wc^TRz+zܞM1YΚ|?h&{wLV)*٧l~rxw~3X֟% cMXu#6$), E N(esp1eU38n(aO@͝w,n7rzOv,}9s9ҿ,G=ߵd]Q7FOu%_ӻX< vP"b}S8%4;QB۷u;d$#8K11#Z/ {KCeuoG\s| 7SQ*cA0϶ O3lk(Ѷ. Dv9?]Cܧwǀy*$wB2B^ޗ E޸YB! t,mtdIwU/ )ty `mG^<.$Ol⧒I Y$^ HٓZ \d^6آpaEoٜ) >lk$ɕZ3_'vYP¶_U!vNYzq 4-c/.\ /ܓU ,L뚲qᗐ֛? ^ض,8|pgPiz*:/3^iEZ;JBBm#=CŐ#f,2pX٪#QsI%rRE*P7۠-K3dbh/ @#7=;)P˺lEMƘ:1iطSoA>㭾IĿY@_LJ->#4g5Xyr#@hlxNwUCLxь1 < Í" r;|IG cd1aFU/P7qb# Ippcck wd%(DH;an_F@6֦wӏtZ`iDEZިZ:6uYxY ֳP}^uYY<}6n sB ss|xiAԼetXl[σd.C񜋩OOW: < M ,!󖻰6xJLqV)|P :@wdKp(<_äwrL'9a)q$g~AS#-g=vD7U;>ؖY`uKN/J&3J !+$*աgӔ0rwb(,^^#V?<7n uvL.8Q6qc; }2BTBRY_L{s8cޏwt[34ܝG6fn>Z(ЎL5=ο`fz@SqӶfDji6 gJ.BB~z \9 ^ݿY35@,ROY|I,-_8;sA-(9I17$0nV%z{eߑK &RXWK /:Xh+^TkB&㗓0j **:Q=zˋhonFw5J ŧEshBATZ jc;z GY!,:Cӝ=Y4љ sp}i@D%7cJ֨}R߃S|QK2EϬec#!MeiHZV׈9ozV8]1T3p 6-mx]7c AHͿJ_1Iwc;pu5<%S_{FIHcN40OՆgLMv=5{1;4.|Lҥr˒F;\qj4i4fCBn3-.2WȠQERT?:^hLoPA2&hB>ֆ]ejn]"0 x݊Vp $_mf|/v‘H9 ՑftxNE!;m?߂Kз.X5Pb^Cl 28pl8Ot'ƶ_R$Q\/] ו+_*ͧ(OUMO ~~݆*NAs&@[;*9~* I ِ0 w;sfv֐M鹷 m[u0OB)D]g:b:l퀂5OpS Lg+*a/| ѥ@׆r.Z:Z0HaSʬz["3q{u{Ly-*>8sIsƪtfc{`?&Yp"| NLER&qAjisPY~nuEN"?2mj @Szz(9ؠ K\Z| EѲ 1ZOadRf d A8 =c}Bubv6!? MWј"cI%/1J;sXE]ib3@NwC"χؕ/$?193lFI:i:ϩ 잖D9y.VBT=>yۢNXi`^qs{Yǻ>PfTYP<*|YB (URMs*ў˰;h/_5R;o42à裊$pWilBM2Hw+g5p)tz.J"5eKUMYL!8oSF`;=cȯEN}Gv]/}_]_*S?-{:[@>3gxATޑ bw%4TpټoiP&'Pw`MĐ`y M(+;b4%HբNlR˲S)Va2}3 vZ>v9rNUbh\'aZ2]W\dqݨlL-]Y&fߥ Ʊ + :_00.V !8s OՒqUgH0BZ8pb~NiW8pb,ܻ$ |gS1e.(gC%TInT>F\hN˰H>0~t~}BbCmkc6};|p0-,t2BxϤkŅY)fPj0:ױo.db~߉IWT_RH!nqneMbH򮘎BK !#[TڦS/+Ey,my?h᝿ec[-~_w *d,$ӳ <5C[F '^-$M߸u s˥6\~g}Q&4.qWixyjl Ox>f ѫQbѨzB6bM>Dd֞R;Ō7.mozVyY&vikh*)Ѷ=='r'1IQDCXNl|{sm:96B.֐ w˩ rLj> *ɏ~9BT_BSdnCb=}c[h F) uC 7SFqQTFXG@G}y#]BJz2u u;(MAS5W9%˸)5۝_c! Qo+ѧ82mqKHyH&sZ6T 1Yo1`0 =TM x[7pJ&~6P7nhMǗ*o v޺+8FRk+<%- (fv H LHHL-Ϫ|k /ySAW}V 3 Z)kqvZ`[["XhixR$Z@2I[?O>oW +qd9C8娂zf^;P4=4hV1wqg\"AV_PT$n\|_KJ^8,\>~t0B81{/ o2=ܕ P.6Bœ*s``$Rx+kfMĠd,#O9:u$,@CWQRfZU4]. v mK9²_x?N |< Yҫ_^9;U7}`hԍꝓY[)AFE泎a?Cm2gX`#3B'c 37=bf[c;pB{u1A^ZW yͲ,L,ifj@{-˶j/JafjHo۴8> !BfjjP#N8V;KRq#+& >, &b]JGSq[}JhT2Ӭ[BuMH[ Rw.ډ:w’ :N|DK,W[xKscVnv凹9Om٦w8^%`KSbd[G=MHrK}Lfݾ9ƛ1x<Ӣn!bJtYWw[R6FaN 9.ݒwo :ד^ü`\ nܫޠ$R!+f[؍=LiDz,cMA+^0jݼ(:{wQ* 1 o)FŒEfT#LM1str0 ):]b/2(㮲 |$x/ص pyJ\ cbqtL9 yq W xOqʎ21oTfO(Gݛ\ݫih5-%a\T!HY)K؎ W 1-4yW7]t#o.RX\ ߊ'[ؙ\]@iD#T!CS( pt! U>+{kt56$icbŗ_ ͰINt2=2kd%e"+?)^S({PH d!}n.5c~+1(d6qvI=+0*7_)42g ?hXF s{BeJp:)NXj_'<ǷmC=x.qnРRmT0?D@c<4O Ni9U#Rϱ9aP*>7prCȳ::ҏ 5iԀ F̑8 bZj 0D0OƵ'1GPK˝ƱK9 8U^6ռ.+eǩT+Mr wS5;qe#ģDE-{nbCO5p7OU29GC`:J21'啐Rc6}}D&VRp C"Pamm 5/[̈́@& wZ >yg<ށmnחWx] R4BvT4K9LTv?&hP`5>n+eS1j*iउr2Y i؃[ H߰NzU͊H~zAb~ n̠gEL;ԾL1 #;[HS(7l%$MgVSY=ckU ϝ=mn۠*ϧP&!6 [ ­zǫ1_*:l M|ǚxFp4eq, =Sd{ ta9_xLB6:=zf¶~f*6#yUm?MI5Pmr1×(E>ruzn 5D> E^98*NՃx.HJ@5tLO&x| Tۚ"Y^FB zJކ`0 J!umJr:({cm‹]\*E>"*Ir }>c׆x͠qi[ b%* wh!?blbGQ óɹS -8z0ZęUHo'@:`Yv&13jmA½Q8pA ^>a PthhزKǨ .}U@Q2Vؗa_9%.1rL9vGL%O1o)_T ;NH( y@+#䕭pMlm39w]>FxA%'o@ѽzJ?ʻȳʻՅgПG52F&m5@M,#J4 '/__r96Fh1Y5vigc̷ujSM-~W4ܥvW UFPFEz8@D7U:0qx^۩yy7s *?>+HFiEEo\. vɌ]#n&Mair=`F$8tS9{RAʆ6\MWrkIz] Pf!%ݺp͂19U.FW=$t By7"@EPLn-~ yOڭ p-D)H EJy9>+YWٮ@{>Ʀ෹Dn0cb]Tjʗ"t)_"_Sk;ucbtS,կ%O5ܿ@^2Nj&G`+^LwrˑwHBsY5L٬k#2PRDsvR@v} O?u }[︢jW 㦓BwS^Kpe*ָH]5:RgbpX. W˱8iJD&ڳnʰBNgp?9ᛆ {g4{͡jQ1sZ:]zxYeo>V b &TuqcOTfZ$O̿ciA;i>hZf͢J3}:ϫE)G! !ѽ(4 YaYC9q{WuDI .J M3 NǥqFOXodQr4(S||$Ho7@PpGfHB *mYl/jJYlD׭6ޗ< 'WCӼ JԩK^ᝤO |>:}zV٫徵|hHCim6^ZS^cxA-#ͮl)ypM!2dO2RH@83Zik\ m:Z}_WơE.CݾȺR`{3| Vf/.W7m_iho+fՏ\!h&qmuE@&#7d4k1b0M:4k!:QeCn  N-+8OwvU3%_|lt=%o([ՅExohavծ)-=ճYpvi&-:4U&?\I h.(!Al4iWaLjY ˕kz>AP$'OγuۢXaK1InXb'"ˏ䮻'~ă ;z w.$ !(,x[8h[1x?A@<7<o1^L!vp Oa:׉ssU"zɟ`koa >uJku4^dc jڞoD:OqHU#p5lUQ]>]yչ.:7A)#hR,* >#2>(iRtpB_ тJz'ߋ81$u%vD* Jk |\%}D5n{n{· CJ]k)h !H~g' [a 3pUz;]CrD1j UOZ #t~iG&'3/nf Vۃ$=g\`g>IѬG̔\/R;^g5V"-o&m#־\<kSյpt38v>tvvĢgQXϫQUGȣ<U,d~gCJeRTZzxKCe"C691TZq#' Xqm ^n( fKrީP*K$# l*\פoWS^_g-(2I ~{*' ܠ;4Ʒ0Gʟi.wUn[<د"OrgJGdrrJF I6SQ"ɵa9%w^2K͙OOTQg&t ɸߕ[tЪ6$#'zws sUÙRg8OOjJ,vUmF Lu˩w_M@^B]JINbF&LI6?.%r(4v\[PD&r $@V r)n'_CZ4B$ c7~uO~ y7EA5@-I|:@W+R_2ym9x-hӖc/Ui|uQFt7.85V5:d5JGz1-7kLȢJbc|ˣ&Ð7DV](2Q114^4mӣ1'AS2Rա(R+'vi҆$a, V61T/?g ]@7>\ )ce# _fgj$ 7KJ :U&5s)zxE Zm[ժ @bؑ9 0jvNЧM!jw%qI7)lz%,Zn0?QVrL!"pk))f.[ڦVySPT#V ʷ`P#k#Q%i"rOFF;}Q ^{HБhYUBgFĖUD1LF[JYE`~50r+u 90`'ͣIK'Bdׁ~\UNHbRT)c +|ir`*,E1|auHD0ɡ]iym(G@\? `m!MɿO{\pGۨ𮹝ZO *"Bl#mfJ=Rߣ^׫ֈ5T!j/Չ)Ũ&Pj,coR{)B$P.a06 A2jC{rjƊNzۛCxa]l3>#ARwghZ^k.6銧WQ8l#-d3#ۇ7cl^2 ]KC˪>Cr b$lSm7FWd+&{M1,`$n_)wI[M/r?Y\ֱqXZFb9Cc%+n6[VGh%D{w@ADݮ{w':ǃQia}sWRrOC[MabT g|OAk >ؕtn΄ڦ2j+k[pٙVu`G'_k Q$8ghl$Ka=c*J[fh,L=620#*E2\֥HsCSk4kx gc3̃[hX@y®GV\?ڝv-kuf(^~?ӈk LaaP4<dzzCg<$a蜿d:)~kSٓtX-{: :8ISE4˨9mu\9[ TDRv Eb\"y:Uߞ;ƍ*DP(xd.ʻOTmȋQ2|0 @^V'I*5Es[0WtGXQ@hgy9, nsw:½ws<µx/(o]ocӧlTaܪcBq`K߯H0mzS[<0_vR'TȒMBI9Oy1'0Ⱥ/&˙2c2%:' /%jؾ3 6yql+88ׅz2,/Z [X"v҃@|"%# a4ۂ'0:zF^ t:>\ޢU $=&ftlSlȀIDA)DET"*.mM3m;!iLry +._? %&EbMLY03vUWtUt$`%$^N(uQ PUxZxjEeX3vdGWb@Q96=dMB/t=᚞Q{D'Q癬o%LI,)It!G0jKE+ >4#+ͭ`^Bv5Fg n),촬`?wjly=0=13K~.7P2ԬZ:nM9@`l{%Pb_iR+ 3f5WRt\V9a)4Q}Y*Eq@־U|F̽Ys;oH'+gFL- 'T$XkCӅ{hÏtAwkGr*?F67u)Sc(;DݾlbCJ \/y}c"Q*Lo3)E(iيsEg_̠ϒ<$XN!5an ל@Ӻjm #MǛ;O@7=&d3d~[ 1"0VYy BʐD .~ %@N O^Ee{+A8rq2oypG}rkn/ |#dwj gJPpƈݰfR, *XӔL3^ RKb_ˆ`'0(igL!FŻM"F;ޥ|3LlppLlvߥ%k[^ωsdL]7jRzP{Ӣy?5k7&=i9Xz!NH/,NBWPb'ų(e/2 _4۫hL.MnO"V )Q  fr#{5u`D#.zD%7>.Y:b[IDZ` Mw2”=璧( 8}VQf@z[J /ݰDG;K(]hh*B@}eOG2 Gj!/^2t=ZǼm1 ʒ7u^|QA.ZW!R"&$nl?ju^! ϔō~^ց_ݱxP!@ X(\pUXz#qw4}tY!O+)td:zŧi&b\o`0>bH@j_lcLkI&i{YA;B:鄴hć?423/L.&hE<&j{#84- ׌53 Z/8+Zj]Ug G1p2n_I 0֏tdKyf!W[cl+/M}YT6}v5/%^Y?Aukjv8"F_Pz/Sqaa.|. *'&zLUyNXǐnL9 9\\e0469j􃙗S֋$ qTc##)K]<-J sJ'++^GۻOU5b>'RZc1YX+4ѕqm%cmi(FG_ݔfQ]m׋\q*RTWQi|鐳$Ct<+f xwSE"YɽY1L|e s}uH*Y12m` Ggb+CC/͟24cS5!Z 1`ZN3{]i9.z F<74מwi'kq>bŖb #9`9ܤuWmh0Qp뽪/n aG- Pj{D-mf40vS ^6"}& YLwy3{GM2>>ӻOx%h*P{2\ 9stA|0Q?0v%akLXĶ~ C3Zퟘ'L=>O iV QߧM<\#@BulꐯD*'iݮ_L5Vb&wIKCsр*?$puDgFDn_BkD$)ڈ~U>3Х2Vj. %n̶$6Uٜ_E&. Pܳ"N^КFdFGADg@ pf#L_V?xh<y^+^ BqqO&:?ujC딹D"T϶$&EuG-ۀ3ܚocjnA,AZ+t`+1_d}&SyYYaH}YhZ'Nq 9\H?uM1D yqV,8'\Pu9kwz HID/b_Z,'iWVrn7y`S|H@LaTiX]?_?ɨ0B&؜e;N?ڧ} o«KeG-&oxkX ;dFӞ)ri4pp @Z[BOh.w{w Oۘ%7it~9GK)ui\^[*ӊ%nr(2_Uiȋ+u hO"->^X "|Zdyo-#CD{FfFb_ʨ2e=JOK]KEa^3X-S<[Sq)bzY*PBq7GRnǡV>T4"XDK6xl_Qu-[hkh?:KsEQFƠNr7"j5+פH#ͺؐK ɠuk+i9[$})sTXj?"ЍAdk,yH4DO+ci4]#e{ mx1i)5-ށc/XF$L6Cpn8> {|ÿkYѤxQd1/v ?f:QT>4*n*J}-diI7; bюq.ۄ%ШkiT z'zONj㫴 gˡ^ASnf|HKy[vwlTt<٠%SkrEῺGŸ]9]Sp*!0F^@ R)7~# 0ͷCOx*tQo0܈H%Ŕā{ (L!VABY9u O1h-/Gxc8} r|:݌/^5U_<>Bfe7z+0|O [ AYƺu bTv3@A$R;^350c[]x#L$sc)"-K>58-gVF28 [n~W"4bqv#&7ÝN}Tv&Ժ$&sY{.f/KΎ,L ! z^\o3P/:kc-QۃP_ |EneDqŵ+ʶX;l 86Nc^Tv."]N'#RvᲃÆ̈\ö%F)*\woƹd[.8zR6}'!Dž\n\P"$5I/p:%Gԓ@nfs!MAxc26]Pz:b 48a2`g?QDߺ0z)jڲ0JNj`6\%y,μ2ġs%q8DܶO6h7+"|Iu߰tyaq{bWd!)ѓHSc[D 걢0xUY5SDVk]Wfw,9ޜxOvhĨݳ2 ê9J0|ᚇKpV 9 vǽ]2,S}:c^xrl1C<I`:WH~3K[6 S,l ۳i*JVE1V40ʳ-G=һ{;&6_w@酦$ |  ~V5Cc5fEu`=_ G }f§^n 6O hv^_el Zka\O'Wy_k&ÊR(J7+"d :n{Guq6~~W?CGxOjua3n{\=8hKQX =}/ChCp/NPQx]b 5\>FV`Dp!p[f~}}H'i܌ݣO!(Fsz[(#o|cEph1\ō:ZEYC7γ%8(@}7^oIT);P {aBOUB71*Ncazz']$d<\We=EeTso%4&u!m3Γ%;kpAP8RʓE?b'm 2b WkhI є9n@IÀW)쎬g|**~n)y|1s/^?D2 y/ D?|U與wxM;V 1*^*}) !rQhyB(9A llY@Z.{\)~|=.+"IɧN,eY6WHpv KrjA5 vbw Fe][9%C&<VR\Bt5((G%9qMMUKk7Ӡ\hܓ.,M01 tx<e#\2+ʮ$~+JA-F:Ѝ(]3/)T_X-Wr)d|kq*dûOwls$Y= h-CmeP@qOw+9,`˽rrfZݻ>l|BEߎ$ViŎs;77Zy } `{&(ku77șuݢ'zlo.pF'bT5DyBCԉW9_ ǰa{O/v\[E)Æt.p;MM%ajht+)9+m.y{bΉ+Ε>ٙRw}OdZH"dJ9C(E LxȀ!Hf+d9^M&-!֓bk~1G8vKNK :c3=p9Ո2okw{4[c{>cz,|Vm8F׉[aNػy4 W5㿀Pvn/RURF=b5깵  ~d>TMk6ii]iUQgpdsӄNyëݝON(„I e<5[V HZbҏ=g7Rn*VPP/%X)_NJqf8(HNT8@I5!cmNuLCn 1GT=uJx2>|"CDS~wfgMjؗ-`Xo(z yȹ| wkzt R5@O^oQ.QWWV$xdQs̀-}Ƃbhi49d#8a;63t ~Bq}GVwW?u08GNfNtvfJ䢀mC\Hjv7^B ocr1q=u*.P'c:Y.:RLJ^ZPcP砘qyd0?pe =i̋:U%Cq˭sVqN-h9Got8(c"Nc,1l44> l"4OUj,^(H;_$꬧:ieҾ۩Ա I|B49LlF(~ċ̸4:n(}C!]/XwL.1D"}(F@ 7:4@0$J `,P[1dI(g32 @E!ڬ/'T/Ƈ4N\O7Ns3'r%d} Ta*lػWgӕ蹸זsM8?p~(L)ΜU-pb,߻R*Y(8wOJT\B'GR=ne|]^~M(FlD2*kPvT뺾ς!ȝI|K5aa!Sͬ>4IM$Xu5Vqꫫ + #{L 1Aԉc PSr 0#1mg+ ng>$2"Bv= sCuiDe>hlGE|AlV W:R+)q1=5{9u(i>Oe /0cBì['q?.QȒJvʡ!'?НTYF^>jԱdt%.4YKpWէ.n4/WM;Ahbٯ*O>r߂^^ٯ;3m )4ǟ[C6Ư8oױd?8#ge_%9ARqAkOۍqr;cՔ~u)xPwZq,<ɤI4W F{ wy^`GdlhO^=IÆvUK[N1kǠ~ܞWWа(9ކ>Ԫ'UXtVVnZVgĒ:tkjm#']cҍK $GFp^\i/οv0Ѝ1&WF>iI'WSaLH6&EF]*FEZn<ɴLlLjɍfbi3$0]4{[QxzFn0ոy)dxלξ蹗۷X6tt#aTtcRy[۩ǑIے|Cy i exA.Ў-8$'\Z>/'W>/:"zO"kF ERM J1Y? AEsN] 2ѵʕt_i_%6 ćOx:HLJ HP./w@]inv(-%~=80~r*ʯ-MŖ)V"˦Z\iB.Su,cktpSk?Tg9cߖ,/*0 v{1khZS:M &QyOd>+g."Ϲ4N |~'@}`\wEZq/O.Lߤʻ(#`R->d4i ~~.qxb N` 3q#*jѵ8,qB֛#Te~h)KjsitPlg-Z]y(_no[ZPcZs#d@@8uc"4uWGՁ0bQ`⊚ REH@ :EhS Pvx Tdwtʤ:%rjsjflٓבXڐ4+c}@YT;.IsS<8R ZfAd2XY%@mS@9h*J/\pScN-nTk)I]A $ܞg/`if+JwS b'D/ Ǩu#孋8ˣ9# },t3eȣ.Шs s&bYY+ vXaRuVoj:wd:I+}&='kK)k ӤL@n;j_U~}d{%M{:(DxaHاU||^BG3lU MPZms@H3mNZ4ø5=$~em$ .)xsrtO_pqG.RScH?vnH+nra˿F[= Z^5? tˮyk9#A>>Wk06߻]P L;WԸTrkL>9Ju##DJlwceQm>.5Op&!+: {%,dS`qUX)X-pm(:돫/Ha[g`'mγ$TeXvbf;]Ň'V# `4 YR<%ۤ%#wI@ŪN7a^׉1E&2XI(I_U`Jm01lb[Ҵe+bZ-8w8IM_,NmA{tByo7HDV Y.nc)$9hht7oŽTپܠImtdAƜE.S+S{fzvRI_. ]R&)@2b>'o{ 9(V.e\buA[!A3~Z4IG%(\mLAxSH6 \L9/lc+eQXt_YUV!/V ZMtZc%[.2tXw.CGɷy*3[aANN0<絴͉R~KFI ܣ9:}6#Q)[A}2GuPR=i94 ZfNnMƠ~NO[3=K`]e-to.zɻb^9OX%hƳ92gG+*ʤ0m^f#ߗpZ_vV)G˛ھ #aPSI_D( vOs2-{ڇ1=$ݟL{C vUڊ:ϒj`QF\^'(VT[c07@HPg> y2 @/2`@fv"t]u)a#jyT .mTŢi1bqiKfNO^ Tmx6^#cg.LT%D'.c+ y Q-%A?SsN@7m0Exqww&_Eͽج(k@/0_Ǚ;P8#egQ8ꕎ8]@|U֠qOۣ~&9@iOLWo\HMKrR ۺQH:#do?j8˥Kv:ǥܕ[+/n{Dn\ꠁ)cbh1~DHۮA+9̻1T/5%x|~<6}i:iƗ:"MW~t\e;*gwjG@ _v1>J>ew7;&f G7}~d7r/aQTEgXNt>p8r'ܲ; <\zx@܎/`A[uddO%(n] W:US Ipjz#[)\^d#=G)1ODS]nIL1t 'CIFzdة9VwG2MÜ8 ւQlL+E[ wɔk*Twx\uv"Vs@Neߎv)M_ @Q@,o̝PC xZayZ(pNG^ p(@}m)=J` ]" Qbu5hg8I2d&.vf ?ļO=9bTw3:n}KNLyB7Aک3y\U"0[pkd |EJvS ࿊Ցrr>/Xβ=ԷU7'!`7zIT5J?Z%]5I4[QjŽ43[qD5Don^O`T~`Be"\0٩Ǎ\q@j=4w WaPٌu*/ZG$w݂?>͍bTLh$"N/@H 2_kkV想WFTG0>ppJ#_A*zx6A")+pnFt(YekeKo}ڜ;+H(O]Qi9ɦ77'}w"1ۿ0[%~ JEYyLX |FĩT@E!bU;o ; iNekh4y3hh qWpDU ۙۂ$vחD Y\\:,)е>a%>ԶEA*~76Ckkm$GD$|0k&o'HѹLK>>0&UZb:RaHgnEE h!:a}pknAL[N٥gA>,v>N]礪B0$Wljv3gO7蕃:)+b['&pwtFe,93Doo`oO3'ЯaW5D'\N1$pM(/u$E<ԼꌼIC}D-2ӨBɐϘ$GB=+tSD ~a?@BG" qtE__x+H>F>0ʎv $dgKB+3ih.#pfJE h]ØdSbuW_騧By.7Jo~/PY;~ˢ̦w1z׫bQЂ{)Dma@2u.u?Σ'fI26GWi+l1iO)=ң?.(G"Cjb(s2ISḛۨ8Re@{|z#gF]\+=_Rу݃:>+=%IĬygyc}5ȉbp8;Oc=W'݁)[jcUZ,D4ѱ!";s4IM?> j1{R:a+G$灦XR.t6x`!]ùY1<͵^U{Cy排h,>`kYUbLZȥ]Lj_]R ٌsbld[o;Fk/{W3\NҢ,F/Q<# ~Hl;[2ox:i Q%`}T`l%-H௱ >"شK) 䗫"l t3$ _z46ơ-DSfN`!a# 0Y@x!FW Vc aC%X]PS>- e+r[|EF1 N@(Us)Ggk w['/H3=OW0y ?5Xh+[{U?Gnoi! /@9* m"1 F4 gUhD4SGbڂD^.ah[jMrdLJ[|pU AsH[ [) nh4C3¶4dz$~#Zr 9pl[jaZR|\\]gi@b f*PR7&^ɳĂE SͣR7|[pc`>B㘛Жj3 :C]JPR8iP vN ) #uKU,s#Y3uѢhK첚(Uojt7KҪ&f$C(:TN3bآ!>u Bo%'9ލa[Gy ܫvRDIAUmVjBg>\IO.C.Vd7*gi7554D? &c7#Cܐ0bz [WrEԌ!>za¶L JTr"'ˌ_as0xy(+&:6SjKz8NOCv<5!K)Y5d3 {Ю;Y}n !ra\p? ܁uq,l:Bm(/f^!RM_>Zyk!qKIR:(Yr/n9IY}eZv:l (c)1*ZIzE/s'8"mT.]BSYL{pz-έ[ .Z.Xs^0N8ܷ̓ Ԟ>m|{qzMˁܧwbψ(J81܊ M`&ku5U O%*"?4zǤa^PLݾO ql@t.jW-B6øWW;q$ϝ(#ĜF8:14U䘡CJ"j7;9 T$4wOLiT4_d-x { 6d34K*x/ B##2~ڑ'2g`CvaPуZ89_hd(!_MN jQPS }+ S]OG"CqXh0 mzˑѯVQ Wd:Q@6 j_9{̀Vg:}]4͘'Q>:>J2D.O;I'ErwXbnxWxvY!0ԦZw˨>^v[MI7EԒds|NSTB,:[*K(;%cb@IvUX* ,6AS%ilzoji_H>/;^J}Gu;i,N9:P2=΍$8e%0w￱PYrAnk=͆o:PvX{r}rx{ܲuet6c S/n"3 髦QX4s95wcǽfW;XΊ0ڢ(4/6 Y""IM@`ڞVEr=#״Χ [iq] S^}3ֆՊejjF7 >7iS` H=F l7qDqp~ u%>B\SK*#S݌dRu=%azXͷ*A.0P? jd+ ڌ"g oCv{mu( + cp XJ*\6(/73O!]#SwF@ 9ĎI5 ;bXJjd[jA~i#/=ӓ~* MPWUwV}{  ˻[S pC\{!B^v wLĶ݀H _]leHNo-@~n#d~1r>Pilﻈib؅~BͽVɰT(7?)pg7E1shI".M˴eڰ"rLfSssEJVuلY[6W3Swzr{9*VQ5e, 3ǽ 5pkhCFz5V=GOc~~,\KZWilG YYq%GIReMبvJL?-+2$^!sd/z?(g{$ cUdN, *v; / 1zCER׊ ,BН}FW^jd񡸿%Auu_t p/P_\y\PCWiȮ1DKԦn } 6\޲@֭YYKHW|Og f؄3o{눚4wK&ʙMWDuNR?]kVQ ݦi/<L􀳺@PSё٣5b#Q$`l^{٣h?ag~NϞi}C ;$cɕ0k赍A vR4=d36 ?='`K߮uƉ*Xg ?)D5B1 $v`{\ؘ' )fǙr0ksFj^C6daķ^4qIC%lm@aSnw=(lO&ڏ>@GNK؂R) UFuw}6(Ll5Ńf֒Z*P_)ˆgaf,F =<~i!N<d\T'x.jK,ҡ49lP>5D1<ŶfSjb+%,Xd*)Ji;N+(Ty={DQZɣD79z9Y:ȴBUaȋ$^pT.vP'gq0UH vV hf~el7Y#;8`縑oEl{w )|%S%(4.߲ΓHTjA֜Bnp$EF~ &`JPP> 7PǙmm[xv HVF wb˄s)[U!"鏏 `jyPǡXл[GV22&q\YRx9%#AȢ%S!)ɍW]զ$[?O+OrKϠ yWrۘڽb@f Ԇmik=BJj/~K(r&FMxL,[f#a+Bꝫ?R ~ܞc*@cq>%W*0!u6I~g-f_Lu!BC ,4~oE Wk3Dj# u@u1`j }[H!˕7IdcJk?T~lE(\z|\Z X ЋnhM+0,v-TC)xUG_le!`sŷ.N{gbVe,a(*(p4tqDzMeo<њ !yULa*£&ܻQ2X-V'xqso U]ĔE)2!_)4\:u) |dSs?`)7_;/P/Lyċjz܂/bD Ι$ݷn(d%?0`LHҏ Bmvl[- [RJUID߬ aXNy_|bECas"-aS;V g^XI3-TySC_dGH#mnzI ǖpԈC&Ô@;Vx!Vξt>/ I΀wX\cc!5x"QVEl X45ʊkyplԎco 90͘&>u"K;^]9[@>x`F鷺\K7v ?h^\ 9SKɉ\,]vq+U$881_-j&62zo0J09c,@9`&9Oic_rO3AqxYufTTXg6ˋbK1_cIKvy\1>eiE׺A0'x? (iuo3̡$>O9pp`ڵ3g='*4~,55j|ZH7;''8,Xo X'.֕)rO`C7YB,n]=K9.}A`daؖt B|B THgD?PfvVnߞxv}b{ֿ8d87-6,Kķ 9ן)q9ד̇1tMi&b=s-M5Pxի.vD< LPoM@_^:s+MQu~^#*xK'JFLEw{K t7hU&UL:!jbNVٛP A=9y<蹾`'ElDS\‡Fyn){ە8b1Q*DfВ&s&]iFZ~heLc ym'VpcZ'8Xf=6=5/8 %Ic7\d>AڀB+d,(;HZ#Ⱥ+6dYn77njFp .#,Jh@r3&;2]1ZXlE!% t9=U3Ef%Fb/@}xBH5!w SXHV_a7Ѓi- Hٽ 9ѽ ywodӘK}^5h(~-7 . G0Xr| KQK%pa ' ׅrTâ4ffj$/XaVU4WY/$pH!⍉>ؙ̰uk~ z"$,[d)m A@=B7SI=qgO AN`-.)d~(S)~+Ck ut }qMD!2K*EEܕVH啖W˼=fμah[đ:G({(XeVMw+RZ0iNG# XW*[ff3r[R6Tp8 Oyq'hXrJ.^1摒!rq9D^ ʭehP YWlSӡ F`;I*zaY-zQRV^wHNϻ#"<٠ÞFL.Tu*xDU W]AԼ[}$idszj,@2vCJZC5?roaH1s0E'>W㉖,lT\Eꭧ#flf_ne,UQNB?k"Oj^ HڣܟȤy˶`nh$ӝ)AjwпfܰS 4~ป|c7 \njD#F+.lPOSy6\ 4lX7 e{ZeV%7NCkn=J%RN tuw4B獤nKdő|`괗ę 5UNg_*J3W !Mܬs]4d*@\4'ɼYhXJ*焚Wq1wߦP&װGhaǽ=UJ'L#Tx &k;ڦ<C  bCdVǘ3~z65͢ $8p^ :"Vq} !3ۭڒVrZ/?s"G^zvTV:TuC'و'9&?9MC?l[e:v#quZ  fgc6N7l`TK 0& |z-ߛBp|z 3\n"WN2S(F醵sE8 hXV!dJKaān^dy{  N?| '_Ȓ|%SD(N;#uYɣQ|mO*gd[Z.p*,sEDZ̢D!AeI G>gYLP Ws+;a8/zC#-2"#~gP#e+]JOar\rYl!Y/!V;hb+jԪ Uƚ'K3M/OoYF%##t @c?`22 1{8]- ?g5(Lpr">C?Mو9,Wz|<+@KTxc%#-uZ3NI%Xƪó{wcF;#0G=4HXNűF AQfϊ;f+c^\i)Y-ըP{eb*6**N/͎i _id"7'1[Li/d* y!K{cPg̀a|@D55e"#e5#4ނ\/5A-w*Vݫb}aҖ$>$? .Cܵ08EVļDqIOg}b3r$ ҝ%Է c 'z%fYFR Dr@Vd{xcB^)tsaf4P\D؂Q'Um`9&<\]l4B|IhC s5:T))!{6,?TbxAw_M[׈O/%3q{Z$$sg@ߝiN낍 @%KG5凨 6K kYAad8y$ /5kӊg, T.8 D} kZW3~ΣV(:78@chz֠Eu*v2A(<&l'?iV_W1Й;bL[S)o7R\{f&?. 8oZtvA\׿>OVY' }#]$C,J#x)Y:eO^y6$.xgɭMH쌲>lN?0ߐW}x\=QT;Ec.~6m"cL\SY[y@ܺW«5%V$(;D~)ȇuՈޘ,[g2̪Hao8B0Cw SMypRڒqqq83 r[dRYGF;_V+nl֨8tT29kE4:U@o{υYɻXŊ#>}%$rG0; sb~̷tF^S9ar<o{O5>"kizq 5/븦UaiA EŎQ1ev-@{*}C"z -=uX ,F Nvy' C V ^~k_i|O;{ <IqdYկeOuͷf´B)lҏ6crq,6ڻm fe'}{ 5u jgB9H3v#R'yF!= T[9q޴?^.V Xcš3Ix[`n Kc]O;n px}y>qX>1׳| (]BXZOR}clag(\!3]m8Ksz@|r'[GD;]Puj-3p.7˿h%_>!>:y5c@nxBoPh1k|p*1NnJ}K Po8xJ5+3h[?mLb 4#h o#`zW3htpb54B&~޽`yGn*G i| 針 s\o]05G!2)۩ _~fL,.B~L*+.ڗ`@Ok{XzM2pz]2I>m SmI2!S?V\RЩz2k3Zpvgp6q彄 RV" C3vQ!7S/=+i ""n{\NOOWPw1_9L%K&mHx# CqYnNԋMrG@i#3({s'Jsm6ۖX G@E}901z})ePw3^M3UeAt`<13Nqӊd;x^麴IVR T?}ޗbm DeȸԪ>QY'16]Fg@={I'_ijNr'iq3߃s>?w^aunQ=cj%vebN? JxRuR~ !WizFiPH06O/l 뜰n1Pf, Fߟga) (|]~ !"inwBвN"^ *s$dF9\GɌ +;J cW!_m?ބQDK}M`vwsӄXHg1gy!>}F\"l}hyύ+-[GMpΣD<\j~?/>űL{ğq\q5S5h fF>bL(@ 7z-NzW`}L-#-^:x0ңa9-?IPJfwbjlgS0,gmExMmF,MӠ|n\-F9T\[`2v/ pЮ HCl!bvtcxwuަ] o&\Iawr;P"z*W~ݩw03V^n-#Dy"p%M)4pKU/t!'c\Sk{ʙR a^3w yUo8F,HɅ̱8A/p-^CZRĉp% 1'v꣹C~@RMޝRrKtAOSOՇ C趞T~A+r'_]]'g?،BLV]r~~nlNÄ kS h:]qmv0$A)*{/^߉wVIgu솕>769Y!f-\ZA8݌KrnXNCj^9>B,#Ӵr0k0kRM/=(q#Y<+p\LۼٴۡLaWg-*Hhb͞?u9Sz:LC_eWEޛGDtɜ- :X"D=\/ AD~,,H> (7C a0^ 0Ov{ ThX@N$9EP *q3oqsDKP;f}J~9fD/_ʁ"x]Ȁ3sHb#P1 O(~Q_L+ބ*0Aj@ׁӤ;+d+ EҤ- nF .E]Zg6D~%l̰[%n]/1O(H1)"<2slYU'B;R'_2TB.MCYd(=Nmؤ\nhHbNT BNȟ,sBZ#T%Ai+Anv39Gz?mZޫ o|<42iFUD5}OOAeZ>ӮAqk,93*/P_rmz IIq,ݛ2t&1$JBM[T/=̚Xy34mISםǨREMM yO1E pcpb!RO#g7 05E[?&:N[a=%Ρlfd^ƿ9Y$&doP{ߤ 7+pIۤA=, )2?8JV=6׀a^ _BZC4qLLf{G6A]dr, F; e{tX9Ŝ ;?CQm QYC#¯/i?PtM<)#xʂԙw'R[dUoLG&67#l8]Mek|YwG~!!s`aܿVTwH/ xT ʳd`ك9Xf# aөmhlT-\\,4P7!צLl)囸xAitTdzĺAIA0 Q$w @k.n"y)ߦ@^őu]Hx5G[MpUawSB9`E9biȌYZ/ "-?{M p1q޽7G ;;XܘnAĀZR3p]+S$n?_+I Vf]8%.K`EKP>qwqӱ34|Ne9G%J|tOT+GAOP>O툢tW^Dz2۞ 0Xߟ!!#,ɋ@V,V? tG6CdܣGAv0Gui3ukx&phrW>g"su5ߔ,5jM d2Hsa45CD A긂SXF^h%/Vr74%yK\5D47@dӝ!Ŏ1rmUx6a109^Uyx hE(~T'xdb2o8$`AMyeg;/E# y/01<(jaŶRˡ7yG"wX-i;NBQ{8q$]X-$EߙZZhV|vFh=Oo#T z̆O2u³9AջՁ sGFp2޲vi1tUwiw*oF)HFXt<n/}1D*.0x׳Wd,ES_0)TF"aMi}y2t6gu_;[+5,m&"^ն 7j7lR>'_Xfi7ʈUh^ ,a?")MčkWC͛dRdI(?Y֍0=ʍ*C |׍ cYIfF&ԢE({Uqsju-c|a)oU ys5oT+LV.0L8 B5p) k!祌eH}EFByҽ柗B֓LB}(%qZbJy:NwZ#4~WuaҪQǂ`&D n"JF߆CMai@~#t5[:,-;ݶ3v..֝I}V oZ kbPr 9@ .tn'WGw973h!EOQaQiH^̈́ۺdZLj#dq .{gg@q~(6"3)4oO u)3 I/ԵК/bɌIʙob `OXw_] `v)lx_[!^բ3KOQ`1 emUـ~q?8d9HE2#%ݕTL7rXc2di 8qco*xUH^&&U_]UӒ'm8Yhrb`7t c=N훐R mj[Hö Ÿ#At6;,iI̲+ K$R<3T5)Ahb-Y=MVUh ζw^l>D9IovH OWQzgN8Kf1p,GY( ٱžt@y]N5c+'*<qr CߊUq>ʥ81`#9KBERM& ^ߛZ~t]]e< jdfj  "6@z:T)=VM؉ u@GHksʙ2qBӜft`nte}ߠ eO $!UDM_JuMvxu:UMAy{B̈́J\0Cq ,KE 505_utb'KF> ޅ 丿s6yfgAm ڰMkM*rive/xnh%;A=4ODXɂ\1KAAzT [7UH0sHǩچ5v%3]vPP-ʾf6 U˧6ښܞ5zdׄ L>5q ᛘ+_H l( ՠ0cv(I8 L{DeˋX5$z&W;<.ԯx=o|v̑(9c2bUZ V͕,;S]BPTN|Ry?(lY__u'x's vv kS/ KAi Ζl%Ǖ]*y mfjRd;{yjEovSIUg=O^Fi}.z6,LUk0K[ SJ!=g#1Em@ڄ/|I_+UIqtj~_ el>%}`ˊ wli _eV+}41o+~$l.@5E!P{V[L\E@8W#Hӧp͖lb)j~Egڇ\5LBXLR}WXҳ "Ih47i;)\z5{EI?c"SW 5je+$BhrBY/HV*JS]O@5foJ\PQ^@qS|S$_ˆIh0xoܽ.\`jr4=go43mB6n[9π>I8 (wm{]HoD3b6]gg=(sG4]glN $먹BH3J*C d}P<^7ߨ&Y2~;Fȅ^uZ9OxK= p9G h {Gy nGYJN#R>vM\ETM, ,dǻfx4'Hk 8 ZQ QV}]PH9 g3_JT7׹-{ST!] xxN)5KJ Nwx(P~-vF=zHXYrt] 76EvECj1\-=Sq@1m ֋kƿ~xtxQRD,ښ}ޛВ?kV7Xnǟ Ow A&?\ 𶚱ϧX_EWB(u1NkX\z)}\ijY|a"J˵Һ ˓w}oRohZ $AdI49TM9/#9V~,o(`Vt01:Fewh.3|j0!KZH@2F(  񷟲W}Q@f o7 ` ɤ$j9) Qu4;L~\P+`ߪ=h9cnPZšNA8Ɍ(5\G%(q-#!dP~=%Ķg&,'*}oB}06 I>z cMУ=~RiP^s[ R{O9(y9cc>^m7{̜<.O)X"S  T;:O )/ dj`JVqeU)(G*V& g"74St;~:8^@%X[ +9@-Y1ލa@LB.\M0؞o([~e]Hnh`ABYV\h(Bו<[{3g~;HaQ_W%LC^ vnA}:vq*3wVq:D\W;R ︮;ՠV+S__]^ܵZo/y c ]ph4h"+\p !x}cD24S,1ASKk/ݹer:Rs+'ovw篡l#L?|_s5LDc>unMS{Pflu\H*| 3DZSjV3cX?SʬL{8L?PmqKelkmsEoDڗ `HhvXXns2V͐'c)q0zmX#X*pgp R8ڗw ^>>ɛh$j%%Xo=NvjJ #U}3+ݱ`Zm '4!AkD(Go5d uƑɱx}Ooɥ.*5 , +W-stA>+>?aw(%A&~qEDB}𢰚" Hs_g뼰qAC79H @-+Jqb{BUJ߁A;ف8رy.R[ DPTO^,CxjM.|#YxSѬ!N[nߤrHT"L4SĘdž6x1t1JgeBV#m/u@qn<ߑ *' r$/eN|I#wX”/+Lw+ u pL5It"|)KKG-g5;Y%~HgG5 lރw ez hPo)\t~?!Nx_@*M2>LuDՃg8.1ƠN[EW?a}r3c}%rܥ,>qgOڧp x^[S ML\=oiLJZ$Ա H2ӓ)M}(_t\g)Eg~Xg4(DW>>&D H"s*v@\" Yx.[K_=p#A 3j,2`Ho[oe Id>PzejKGp8 bx NXR۱PةngUO6Ps^ƾcu|監{ wG8("c/ٟj㊋f&Ќkx}J:yw19 ;ZhӾ&H9]Z]h7/OG0U[XGCϻ)>>*-FVRNu% ``8Tӟ Z~9Q(W#qځE`nQy?GZ6*u7!M'.HIo2֙c=/~##9&S_}W0jc)h phH됩xPnM<OAuTٞ2bȐv~D2LP5!ͮ[ g` /'.v|,jY+^csra^ Yᑂl*/{(ӏ4a;,v_i\֬vN%;;К H3Rƒ.qQÎ*ke.TT ꌛa,`wKɚR.\ HmU@ʬʃ=?"R(  z 9:ClBs=tEh'9ݎkzXTx LJ|”J]Cop/'XwosjNnc[xL`G`7'5o3ZWU$/9xbBV,δF Ήmi-CϞDAVvsRp>aL`FGemތպ7*bTኝ(s*`f&t穮]iNO=w6-YǭFܯ|ZO`G;wTeسK{:pB&֞҅J;UU!{o m9݀&#jT3G&xn|%[ʚ4mp&;BUlj. K+ڈ=sp0`va>PUYB#;ZŠx13F[:D] <h f;#ރ_>p!·?`5c`X"`hwÅ PAM(KO&p{J1'WJ,\߶=K+Û1 <aLGN33Lb N >{&0K\i +EQҌmB{vp2:jkRwd#Ṹ(aNtms+ m~^V&mB\ִtT+Ũ01+1wmz?L/:6m7=Л-Uɣi[80QA Fh1X:zE%P¥uí89{rղl6wRhxn@2 ldvtk;!BFMAňTפ%.1 &fD<DKɫD "'@mد HV_b,.Fv>,?πv5QNʪ2ְlC-Əs;(x;yDQMٟ:6ЀhHħmTc+ ؐ|Ū5C4Ҹ.wKq2 )S-(eܾRa;?]dzt,Nbtüob&{|]DCɫ-vj%0 ~wmzHqF=9I,C..iw+# 'Xhh^fٸ53>XQ煃lqCCaI&{ |W<l wOtlH tpZQ8oYA¡lJM|Er6N!+v<=;IY(D;L.}[A- `益;VvDd)uO낓!nFUp|% .:Uh1%vyuZ qbM҈v!إtTݛ zrfX5cM`% {{] 41`8i[ c &ŇUd/ wZH'%=DvxZsQe_xmB9l'a6ddI)X&Uۧ-֌`[T+'Q>tBA/OB!?" hQRgN#p>[ZpqXiZsz R(3wGQs-hDEa+#.i pj;g`9llI!J8TU682kIKmM8HN=hSH%1,0>G$--mgӦ[8ŭ taHsLH8;9ֹ@- B::{ [lm7| 5E{x$4"4Q`l.wЪ(^sN@;}Qw~Q~2bEXfkM՚[#̸`X5 vaFݱdFU)"#=a!UGg$Lw+Sqto&e(b  Yw֦G-7VO?ږGǸћ@SkG̐r(tRtT[kW+6[4]Qe $N 3RwC8gY]j=5OM?^qR!a{]]THsUqFibdg˼<2ɂdf:@2Als6Tfl[xT#mPH#PG8S~qGo(鍂 hԗD"fniq_utq-͓6k-NyP8S ƺF~܈E:2dL?Ow8xrvFgCvu .TY2=6AgmEnā>,b^^f(Z:2ע+`Fo)Wh䶔ЦR[Z{* H|'-y8K_֖3ﳋ?HBMsq3cua.ȹ꣖RRrPrhK[{^X{86wܠzIVB/ BfI*0y(V[u&FF +$|@ 4~yF"̸L$;iK v?|1@<>ۃmj-cvYXɂK#>nyj:FX\ < =OZp46Xa bh} RL܅yN; f{=T-NުZNvP w:%iB>\?J!ʍ,C_"om t<Ƴ0KPzp(0$Ҷġ]\D'1"j#a(}F^P5d X :cKqgzS5Aqr-mKpzrdyypE^:2wPS:Mi͸ȋG@cUF?,B"1(g7= 6EحYle&`,*HrL^K򍇠\1Oj31:wzZ0@No97m12gey ,gX9=Wǀ];AzHm\Ϟ>2?iUޠ*UsVmp8M4|Q^.m!6#>}15nZ0 RuL׳akqL@\dWb}xYmJZJXwǭ\CF*'M PS,|j&Q̱h=0 45DhRkp#]MH,ez+ti3jj[g|}d#5YդSXk(= lS) zQbvWfCk&ơf! ߇佷yhJˢaN$uybvaQd0g`3@ w#c^79^87>VXo䧏?כ)j=j6kKhAA1S")C#r2%Yc=zR^"d#?X $TB']v\X+yqk!Qf'qݘ)p:AQ??嵖4AmŤSLj4f1Κ5Ze z&hPKH,[7Zl萵kMZeCU.85nI+5֦D L{ >6 {Ǩ/b.7d|1وC\v`_DH `u\<0_$^qT$O[*S uYcSp|xM<@pΧR-pp`uk1ZcHNMw=R! #T:jbZz_RAXJ0S{@©ikJTE|>M임Yvn7xI$M\W֌8*BY3ϥzY29 ZE\y8,6cх}lYz>X2[]Ӥ ڒ|?P $Vci XmaShfJBm3@xZP6A1=F#FvThx`(׏UQC6v p~MlժCzs{GqYӨ@H쾊3U,S~Y`MzCUIdOeA>ҎYɟa;g2p5Z5ĵԩ01 c:K*אe:JͶe Y䕓7D6\ WF܋dl`jԭ Bi]wf @'2+ɰvy;76c1 IhV@Ɲ 2'ʜɘ~ݑsxRtLЕ$T7yIf b%t yI<G˓T b{s( ,SFP_}#_ gߏáw@E_V(guZ菗o3Z/%ǂ 7j5 S4jHdrA+j Tx?f$_I5em8Fvb5>{=uC {Po߰LGʿ/5R<|j+DEd.o-`-i-U}LNT:ʶr-=UK_/@>n9[4t`+3rE-&@U<%ڏok?bVO>ze/0{?`Ohdu\=ay= H=L: PG/f?Ltz|j@!̨, feF/N0_SlV 9:ck3LΤ8 h}[5v9s+WH$OMg ؿH{ epKCt_ :48钭-tb#TLUqltIۗA1\GRWD2$As>V):r!Anvqh.3,O3\0Pm`?W۶E'*(-h<B“>z`ٜN0mRzoZ@A 2|Uw_'wpyJ»J3(ũ!7$} pmY<ŝJaǁs2 T;xLrq6B#F reBfrs][Y+(~ou2і{[oU)>U2ϭUAWTwΛKD).Mzoإ}ۀDFwֲZvDa Pg//_[L=#hKE =&`9~P/1V(,{vĄj68mY_m|\ l/RD _pךoi{ȺC 5MuG9>'2+NnEm#Ps 5`k0 o sEefF͂ڗ;1y'0X0C'r6F܈B@ݙ*F63vݥij]TG9v!;=+49: }~m-aIsS=D%'Pmc&+nP?j+#0m+4*Z2S'kRc;dQƱ&9bJD^vLSs :5F:@Q2uɝbNղa9kaT?iҫ`ax*BF_2BV,y?HY?~G 1:MQ_iN%?B8 ~4#z(;IXF* Pơ@G|b#X<MqqfȀT;^LHI;NKyvq_lD<З+Bޱ%Ҋux?sNކT+eG=/qVLd,۠d?[ eY=ZZ"{Q[fc-P^@ޫ5㴽4]g<$0K %oC60 IVŞ~;B%99d#h[9fn&3Յ@X;U}+H LRђʞP *XpuN[ i ˇh" ҏK*bZ=WLWDR:^45#(12pz: C1|᎕:Lʚآ0>7b9[l(+M!6Mҹ Ѡ,*^4Z?}B$* .t +o $/mkfP|;O D.?/ "%ov6B3eK3<,,6&E8 xk-eϨ($w.kqԸ*5_x}^n|&7FP'FV3ޡ)eJd$V:Bwzf)ueɼ éz,uܱͼ) F%Ц.N)DIfUʤF `kr"HW@8S2)Bd|VB"k 4k\L Czo5?fѼ˼"Gp͋+ZSa܄5Rl$E~Pls|ap[1M|yV mT 3|/C${oQEsn묔̷c6,kNHGyz(Cč5Ԃ60!0*7̈́4GL҆Q)1 > DE䟏l!%d߽J+-ӂ ҄Fu`ˍ}s\2hFM1џ;K*_O])I-Ƿ]h+ޝ2D~ ݎBG|Ж0ԣ IyyASX^8:XrQ)pѫ.$y)ݵg~^ nP?S\ׁ 73*Vߝݵ>?4|R<-Tڸv;zB@A8sc!8Oi#! ?-mՋYa6CY7OK4qd.t\89x6a"9\sL"UD q&$ɏ+pDa9@\p}6#gg9:*Hjz*'\Cyik-${ [r3Ll鲥.YcI+LG+ePu- {.Z}wg QoOӡ:ҧ&uf14 f0_F[~F3SŽI6Q;.7Y")p2?bYlc9v5R;(kE&ֲvE3Sm#ڕ}1s?BD=BBAWc^w9ś(l<2$ړ½!<]ŗ !6 @\c#ӃF.a9=d/H0v]n?=h(rтQ 4QUVn!fYBSuJг-E)—,U"ys0jM涣1=[Dٰ8nkX( 9ZkK IBUO0jt`UIyy~գNtn}Qƽq工sOnz0wLzΠ$ymB;]zcmcN.Ƀ{x<ƥ+ŐAs=p ;#v@_8!$<:-΃RaԩƗxDʢF=!WImSlu*tJ X,C{]F;ƣ_8XbA#;@;~6/):2g ~N{*'юbSa_|v\S:e!πg08oqݺכWj;}]5q2$+1ΠƁsA|яzpRrGO\oM:R4ӋugΟm}O>;ymH=1xzUNa&Ks'LJW:G!;A xOl;^$D,jEKJDu;Gh)A3 I'YhODnEK?Rvϛe-A|ҰAD:a_S"D.|W[|0yo!f%ZCjŨ > ڭғ֝UN@UV':Ѵmpzg_njc)dը5\XS8X3TPxk/OjQ|xuRē:Rz"}$y(kR: ^pa 1U:Np(ty\tc Qfê zr3({IRtWJ& &b2?$yO}?NE/!~\WGXR`ٸϜ1N'K^!їK &k{_q\`ɚ6phj\Yh' Ҥ_(8DVM_8"JbQԘ#eY/:'d2?¨eX,h,#fȼ6#DzB60D̨`E+"}fOZгl*dy) 63E'#lf ZKFc_h7(#wOb֡dw'E=͘#-rEV)(w[θMVijPRy$0i>vYXg$PӭBa#_pǷU2pEk70{Cן=SL}/L)'ܼzLY|5JO3~\T8Sw8.|9ϻ3} >?sLJn_ t.K|u1cFv>X|Db/M<:;wKr9?,!hb%w&)bΑ>ظ,ujs\]ii\Xuro.M| @9tun{@ި r#\t6^H+X~!sau5TtW ߬>1&+fÛG)A-T"Sp,k h+YF˫TjxЧ!.4;lK?xOYd*:j˪Ԫ+p:7i"zY:Q/tGc c|79TJ0j@/'HZӪ'-MJwм%; ъYW5Do=i.̓=0j]z&r^;n GIy 4AR5Sf2ܡ?!9I4'z{ݴ3 ̰FPenZAѯỏG B(AVg-I#m!c>yzh6lSe}1WSߥ0Qz}M{ϸ|MٰӐV|Zf)gjgb6Q8Ug릘Lͮ0c9U~AUiC/ggx#_I&mv/$3850IZMpNڲ!84frȽ=PZߓI,6{K'BF?pYT{pԲ@WJO5XI/(R}(YwI'<\o;M'7x'$i62afܟ*,s  ni+%QsxAF@l:Mo'Q q.TBR ΩZ.Y c 0#ߩ-/f{-QISey9IԤ [߹nSfr;-)FQX0a)۹~~peY#%R1`}LӒH3 TߓQ&몜T/ |8\B ?Tp`bv<#(BFU|( (^8Z?f]g=eqUP!mkxUlߡ"o&`^oCt*5:*;+$vɥtpi`J%Q8<ȝvwm u4n a, [rPanj nbcMn9 { s~9՚N͂@:C?8OhDzKɼϬ?ctSym>4ڛ߫WS?g{^LegT~t:K\L՘?IuR+YjغIUp)+V$'._ig9l tvQSMCloaaj3ZB@pU-u l $!3V<Zcsm{oHk]W% 9fuv9ʐV;),9Eڶn_WWHv'Cus+'c5%8ϫ|Km!=cӓ3 @̕|T1f/(I˨գZ 0!po>.a 3r? 8Mkkj$ ,QA%ϭWܫ \K53P-ܐ/#+2NE9VqY:P*p 8j O:yetSP$؝{Q 4RF_ɗ% վ+ONu"Gk0H;0*E,gP0dĚM?@VC^"ygqݨX6`ebpFp0 -S,;0UZP0HƔ D(c4}-,,bG)gtg;QmZښz68Ǚ:%`e%ttjM=!{ΈޥRgZNeA{\AEfc3-TD+}_ds@a07Q?ѥ'Nj@d]$z׌2+>:ɿ}pBo` T `S!N4NP8R$j* J\")/?z dGo:\?šlr}KT9w|-o9Ot&8 cj&z^y%D6o*\Sxj D /f^卄do?&` >A js}]o{d$1 -gTWD^<;_?W_o{XUlywkOzv㾪s#JpFBas\4\S:t|,SbYW0+<__H̷_^*$=73^h|x+ʛ*̶ᄱyE'Ҿ%7+I^ ь%3cʩnM+ߢ 5Eet|lRcǹBF 464wg`hSj@z]cMя2ْ񮥻=̫ Z'Gj526 T[cfZ};t#ݝO͈bas@y> `2K;~R!.,W0*XsJi?S"NDFsWBdVb"8B1=wG~K xz@mSeHbW#WQTI(>/D┉̌0#=p+ J˺c1x> ‘%{(C1r2+Og;KJ Zz6t xR'og( + `<3)f*ϺUewm2'DX]_/}Qma8P^Wz-QQoۺA(Zn>MOȾ"3] @y] ЭiױTIYYҸ̙鹳ޥPuHA|!P{_]\8U:$#IхϽB[Ӗg0aOF-6->0HĂm_!3AN'yr42:l.BŽˊ]5؅ /K(Wo%6»ZE7|UȤgQ,?q׋Bf?4"2,{t_h3۷ܰYc6^VfSj;]C (tX(`&뵾beKNc%N(κ1 w.d _迕gX[X)z{ͩ7{hz* 'q0LN4G%{CїPy]Pw/LΫ )TdJ!ޢ0tTsAbV=!Rrx[ZA %S@&!uf*m߻:묊uc_?BÓW14.c q[K*CxiI&""MGW10%s|pEV@ŧ!iĄ "i.i_KLEPD;Ss`l(*#8@Z7IRf9R_.o59fހJ| *BZm=IHӪ^nMz1XK ki@|%$CHKh H&5׃FLv<+_4wqS.ؕ *65W-BWĨy ҇A?MZH:y+R s>望Z+3wAW[wOCCvhG\XO~w(N )o G-?H.ι3Av_Ip~/fPz*7t"bp pۮߔ/C/x|;݀nZk}t!P(LoemVR+_3IIAw^QL mM:eӀxů[hayEյQeNx œ[YQ0"xfcq@~$U#8JրQB<&q?ȐMcLh[4a= q;* :LD<<@mZaeV.-h@g~dF htp?L,+O =QكװIYʉ}a2AP#> hɟéTN%*=ۍBG< *qGMEoX̞ړiV} nv#JiWV02˜//#EV%~T%0,IWDy6|/eۂنzdD7YoDjw e+,8M2oE b8GK)vϐٚWƄ\qHQCp {H i& jԢ FA PgqʆG*bk0= E!)hn/qzMMq޾jL;y~.mS ,΃jZVQ8(>S4V Ş }VoǹtOU#4ٳ?PEnf'X(̸9'e%wPףY{űt$]Xr)fWj̍;rZLۋ$!=rb95}'MdC=c&dC@|K^# )4||q1uiH 2І~'#̋Ԯ-S0/X(^EX, XV@Z aI8[,gN-wAP˄\/,Qр\aPo濰^ 83uYS5xuzi(p]w!g,Z;;(j׺\_BBiiiqbp9)hl{w_3%s {?ۢ4 $t4~[< p;g_vݾ藗`JWSoxTЂlsڃIEwJVIs3޶stO%QpGjwV`G?>+~+dnӵaXG"x[YtT-L^*̨W{7XPHM .[<Ҹ=H2(iwS% 6Z{ǒmA4*"-l_oc tɛ>O"&dLdϝKm4 j=Q ñi={b$_]i3:f!((hubS #Ud[B1Dcb0g=O) [hp_ i2LbñjgJ;:G~32:^4w-.yYCy]y#.t7TګǤԤd!vң8Yf剴WL]\?]'zP Ccu@NQE7`،VCT% ^^nrIw;LIFT[pMǥz(M7ldY{c zFc`u`SN- f@jւې4P>QvG.;@Q#CaTjZ@9l\7eԜOtN>L^1[2 aE%2lO/ٝA?ǯV߯2@ʗ ;P^x{؎AM:ztZ|4]X܇ks,Ztd'LŊ0LED<|/w&_g I'@a3ٟ>FN wz9/q\*׵ \ vHx>`lIωzy1UlXyvqaym+;M pltN^AATn]?F5F %J+NIQ.߈[(}24zf'/R7/ٔ*-/ɦ6bn7,i'~~j;0\Dɇ[Yv\:# CqOHCԉOЪ3vo_0h {c0Η%5pD\_7lA̵LdŎ\7޽_Zx0J&d{Q1kNosjbGV@^/K."LD·,}H)]Z:k1a=wRFHMQx)i5$G&C0[O$2",ٽY3/\xq}.lMea8(qZ+w;2ƇFO=RAO02%T}殴*yj̣Gu60+ {z嫏7,ԛ̀\:O4W}'֥ E X%Ig O}}nޱnc?hNfq#KSuOG Yã9B[0FV|88-0>LG8t4i7A7ť!M/ !Mcgۅ6X}bR%=>JSO-/ѠQ}n_e{H$ ~}Q8G0R:$ܮ!%՚gS^ ȴ;"SӚ]r`?)Qx%qwjI$Ośw~JG+lD2]}p-c{# %sGæO:qLÌ.ǑfR6U -*6o\cP){)I<gl2ageZc^q>씭[1 PpHDG-z)3uh)LE>d{B"_% 0yjvȾH޳, #_́>ۃΕ](6ݛgu,=Uqs=?$% k}O6xȚEiX\ok V(HRG4d+J-!|S'?TFb)}Q.]a ,mGQ)jv訒2&GڮqQp6W{hc]<ܛ qN@ġmO<^Iq# %s> 4s0ךeqV^<,qә/cENtxZi|o_arp%jX֕ qkpcF6C 1Ef!# T'Ak1ycZswrC.cpmSR&N$aS' @.pGڙDOvMN hf{ߩOa}peڅ P=qӘ)- ֪f4hO#,h>mpm JӘ< W$BT\B5G`b?dk<9h.uf!qoUϟ~8]_8‡}.>WkwNPOb4Ϫjx{lKyN,쮾F4opN4A@w 30&{ŕg) ?X8.Ubc)ԉSmV0~3 Qp:;G]fj[wĠ1;%&_ lE+˶k64͘e^= ̣ltwWH)`8!=؊%ELJ Ia҄RuɔSW^ OK1 11+iL[eCDf9{Vge5jP UYP0 >Po~wDۘ<ݣ*쥫Y2zl0Rk0&Arqv"t,#> פ)Jk Iy=9WyqhMCQ{issKL5ɵe./xp~5jNq;zE[)̫OIAN(NP3?^jQҠǁG\{o#;=߰3p=ʒxE."yQw ZfJ%ZKB,4J6Gsظg@#:>_pDHBR] $FhV$l@B ra C4J-,R'sL\{!;޴̦H)__ivFx% 'ISL8䮥ҍNK)~\Z]{6Bȯ{< %: `TM9s=2^U֓cAæwOtT'RFdxҫgnak8G?~h`fTp J/%梊 ⲿZOGs#Fv( +h{q[RF9ewcQ;i;6. 'i U&,^BM+:uW5M\Xg#?9D.(\p{x~ |{w7@#PKVT f]ڲxߏWjGbUB3\>\` Qp2HdG]LA=U' $Z;uCv/CP655i4(c힄6W= 4`qǦ{iB3⥿Äh''[erO9ZSe+:T]_uG%U]m]ĶY:̻`;W|0=kKg;/KR9;t/)-8%3"E譓HOwhLlwT- ӖMojy1*̈T+Fn?ecqHŲ0?ۉӋ7ݬhs$q[ނ Z3 4Afe JkB]ѕj8*>*kLH ,?I;;^s$*fD*-՞𜽻 pjKɗ~>4;+H$S3J5퉺ׯ5ʋY@};^ ]XFGDF類AkeɘeY)BY 9dP%%Le7(nvbv#5դ-ZO[WѦ3^HU2$\:񯪕-3+R?y 2 9q*dC@8 7EAY8cU)f.5R5LiUv[QKʟsEa cOF}pmk, ݙ9$'g%PH]ͷvS> z!կ8wMtn3+M5!R+49 iw;eUŪ-%,VV*Zac~'^n^χ1l64s!n`'2 SG.) CA7a8-Z`i(tbBvd (eefqX- F} '#@o hXo+G\fv.tJaMuԨ /,LUe5 4ҔM@! v$C-4#r*+2$(rI W,bGP)|qqw1dPL^3a)p)<;[*px,ihEP*`Nm"zKa S3P{D\jQA^ GxSXޘģ4rqùs8Ld aF Ǫb\v*kj665+h%Ond,0'WJ>$~(ъ(Г8ns!ymTf0=C̦rQ54~0տ`H[k+cTbү-[5hQP{U9H9C< M7х= g]0%##c㗟)M?HI-w1r#uh:=i\UϝzQhx[s>pvVY[)/0I.2h(~H`˪_0tdr854-!Թ({ӌWzBA6Ӹ,@TNb)Q  s2e%I=X (JoPl~[to7vFkVFp߁m` φmķ%!rM=?mΐ 35bg3ohVm~vVN*z+Ԡig0.Geb &d#Y/q*=4!XttC $J^hl%JCM"J=-e.G}Aj(Kr#rª@~=\ieMy`Mi*ېMJȩQB(Q@ΠM>-"y֡h bc3۴UBF.%ݠ ؄R, ^Y. -{+1sX_5R'n0s"WNq*6 Ag>Sb{m$q6 759|~be6Q75_k ٷ<fX FB~ sɫ ai)) gw*@F@уs] yѸb7D{1ød^nP vdrn'xsG򷄭k iz"'l}6v-w$ OLsd E\~7CxY2ƕ$\6̾B~swj=XojzP'hkiB hv;n(2йa6(h )AN# GL{/KdzVC0Rw,7PSRCEg95B{Qϋ pYvm/P~r@m5Y{4)y(y'[ėB+Iz9~o^U k& ;k@󱧋)%7z~y"H ]ln9Nx۟?E[-$WXЙQ|.X8&jTxzN&gGm4{9*oяwK0fC~:-"iI1ׁbcVާc+CtQܨn;-z atIkRY#RT#v&TK7UVz̟I7FCɽlxҐo)syӥKWo +Mp ) =O)JP2=kp-DA<LڸgR\"/';" bZȱhzbwz$:!)W_)g_1nOQBZ);Jb xqoP)Rv=m v:qQgC2}-E]z+$Ά- z*_q,;cSF^*J)PM+f S`T 'W29c7 6K:iqnרSul KӫFG9;Lŏ\ [M*>|f:T J71 Ov`Ԡ_ɉ}6moYۀW+&p 3BX'ֳ5_ĩ|{$U='Na9 } i-U 2F$* zf)?mFS,_AXl'9,`)ӧjC7گ'ya%a)pSaN:7x</"]؝h99'ev:Ǿ*{`} ɘ|Y7RkD3M $(8Ǘ\ E˗X,J[e7:^ etӯg|ן߳ 0q2i6/]R5gJoVoĤIO-Jg4ixOO]gy y=׃+3q*W:B;[S "t8 &CndQ!Ju *֚JTVjmlx~y9#p1!Q{+єF_uTn |u&$;T^b q^|!BQɛFTɷYK@n0#ԑ!VQIb]Mв3U ($*<L[_{DmJF34@hQ/>q @efL ]H^Z[jQ2V"}NKCbU<$RM [4̒U[;2#c!"L (>OJ!8w{Zg۸t«ⶠAbyW}ḓKD /t(%F2-Mc}Y ]#q '}o 5(rp Ő(K\vɏ# ?˻|0 t򐪹|vTᓪ|8pѡW85Je\2uj-\\BUCk%E( X"*!WnReL|08;gc `B?o2ᗖC,$r{WLՙGsn~cٔ9VP  eBxZ ڛ>.jVt lm3RةH#ݑ 3OIv(#jDO%=X>6yA2*5po8B&e*hcM6ZG;m݆^#Edn6rջdaz sidz/OgB@qS?Pv-yD +ʁǻ_~2^YzE% %L`ƨe%r)PQ,7KQa縇 a0huaDXM1qUT' A( f: %3ux2͒_(tt= i69/z[:5AUlQ"2/,U`T.;AFtޙX4ZJ3Y䀬>rp(lu :Msk{4?gu\>I)*Xw-9WR12bƺ oBCZGPbGyx([d`u,g&>ߎ,^$H&idB r4L7Ǵ14g[4i~Խ-(߻rbI[r6MnV?Svo"UtDU;;$jp.}C,WokOsC=\2OÈ.\:HtݣwN2u=#BK|J}򸥐"8H˻DEjI5ztH| (žPq?V%LslWR3mj+Guy<##ۣ1%x&՝z|{ t$XW5{ЋM5Q~zdŌ 3ȶ>s92`eS?۷x}3E1!~Eb?Hi9 ۖ"}~>98Ѯ󾭄W[h9AO pXZy1h8TD Wyg8!¯<1X b0J#ouՃ "gߥŀARۦ@o/! +PU+r§]RؕCG߇orqM"8- #kk>Tv>ҵ!wS11Z }Y_- *)xAǶ)k.٭чf%Mw];Wf3;n9Ɍ'bԛ.llٮ?a JF0Y)b.-1N)LESn4=N>$5V^A/5VKr5jL-/hϤO9,-0܁~>z`/l\X}蕈 CK>ʷW4OG+HȺǥ;?DM H=nP~- p7i^ŴY˶Y.NtaCK%xSHMd ݪF,?=$A p+k`4kVMV<"ew޾Mc-~mIdi*4Ժ6~ѡg vCH>jyۣ\LI=*[Qǵ7?9/xݔz>wqv_\Ꙫ4UmQ3&1f``JNLlGOdgv[)I*ih6EMt2 LeL;$9f"T̃Go䟭sdO>ǖ JlX%.9 t2"GX gbв7vNH;>k#VX_qtJ_&ANܪ(]}@je ҧCw/Y "/蟠ZETQxfvfey0aXД5V6P5ɮ絵)BhLX'Λ@ٴJ4qIGe3w/ SZ  cWO W'%{HF^Wd6^Pce `OlR5k`_ 螥L(:% RX&;h]wQNjusooQq*lp# e==^ r䲜 K)c#!֧ofߡ-;;э8SgT5 ut^mqI^C"/VČ[)<,AoF՗ I.5M=򷘊k@C-;vO.Mt Lk.ڬh򓞚oگ@kk| \l0&eY Bvu}> JReK`0Mq?u0w24U]Ge|H˓GgG2!̽?Q7 ](oEKRnf0):,B` _zc!OIgN7p5M6J`\ A7S \~sjA|M:i7׫S$ ,Q,}?h~NU _Z%p?يu<Pf͹O݌ _ /NٝViTI \|Oy=DxOT3 LOk eIU- &㛿c$Ԅzzmͳ6ј1-z˟ђn4+ĊV:J&b$ɰ_9=ZcLKz$_d_J=wτWt'ESeJ~&vEZEyANDS]ܴ߮iW8OM}Lts#b6f26] !n;j$J BQrhqqɠч=)qvi=XZ^܄>3yj>;}ޜYf*_!?Q19a)TpRؓh;M47Ẃk(ojk;F`Wfh ޯA[R.36?!ƅan~:ZՒ1T[B+,gߙThS:cRm 0XWl΂qH ɸ@^˝I- pdVH`,a`!! cUf,m% bKBY*z~b5gh,|Pʰߞ!yg쉋?}C54t%oаo+B֔$NH/0=YYT\+ISEdI

/5&zq%G697ON2`dmۭB2}t=Ȥ'Ӡh7]z(kG:#Yѽx`ظbaѨ׸0!HN~:|0huz 6NR]6%u{[TI\o'ᷝHb}5Xۓ KҰOXuw"-(6+r 6yN9nVELx)v Or2RL}ZT,[tS^TTn9^C`-6Rv=ƦUP`w--Ufv<.r (<'z8TV C-38DyW*Ol?\*cTU=rSo>웞v'(-$GV)wIkDcwrwzʾvՖEvmuZNE.ݞ*Մ3Ƞlq8|8a9-sk瀎 .VVa)0+&<$:--å0Uł⥫s{mDhlW["W(rZUrVT?3upoªO驈/S! ˤhr;qCQpǞh!|OѸ`}pr\pwۊhd -L]rB#h 0Cm$q!}wnH:zjQX[o$e{WxF+]f[EKАiC% YLz#fC bDcNT#BlՎiKt.hVk A /!? Ja65mzҔ`iV.v]6g%ڸ4xkjݍNG<؀<*\K F 26B_:y k ;%QOI4K)0!•;CBjQDȊ(Ux/ʮ[;ܿo Nw09XR?U+d/i5<=G~ɓ롋PlhU=2E.%MV3-*iz_ߥ=VkwyߌK;8T[S1`<_7!j24~&7Nz>LWPCΧ%s;L(lQ٪x\>R[ۍY҄\+s$UdRdYV3t9ˤ fNm; 2ؒΥBV{hoP/6iG$k܆Q:|hL򒯏N$<8rs _ vtg^wS;L%Ab~&~2nT fx&up&ҳ:. KȀXUɖUoS*7d` "JNgN0? -o-dׯ:nC@|m KK0' Ja,9(C,mbzD 1ٮrIe G* Iv }◨zVyA=5Dx p'iס̔d$nϴĎGaiA 6n$`m q]Xy}]< $:^AwU}B'yio\p'Nfu,~;:_YH UMt)g&cޗ.o%@lTie KR[ c&x} 4z~BwkULV,'dkv&^*C|KeG G?zSr-(alzi'ꀊ72 3,gL}鱮ȳ8Jkv B}EIL:-ѷ*B_y|?OQF^51 t/02DXsύQ.P xqrDʵ׉ҁ BQԂfeh|Y!i/rlML[ U]gJ>4qяPGy#S6e6,lsW^'E~.|WY#Om$U>s=I}"xf,6aW,)oR7ME7" ߂0\ed _b֮{\S]oBb!w)^{~!"քZ%~Azs lDXniڬ䃩Iѧ“址[f=UqpUyx?|g- ٩*&IP |jVGm -֫EyqLASؓ  ~$t JM{M‹A} QN@a]xg_ ' +lԝvYVrFjD4Lg!/ &@BWJVOdkՃۍUt҃>6Ka\Z0_םU]3{~ buc1ZwP?Pe }x=.MDA)v'fpa`Vi%JD W~-GM匍]5<2DbYa` [CZ){L2UZ;u.M%CKdD&)pظ4Gt3>MwϘYuoo1(AC_XȬ/^h?yMػC֕XI1.i}kة6F%:'ၙzsrP!$/'~n7;Ts!PNe-uՌi5ףe0ȱ@N8R+) 43#WG[8:ƈWf?p̩Aq*@~ʘ7NUMwmVLdMH--=8Pdz'$`og]"Snb7 :o.T;ƶ?]&hK]g1l΁kŵDZt]{ф;hFN=Fǫirg'kVB i M_( 1 $uwLRFgG73Od6uKvy_7!L n'S$8Nkh^EnXv4U2=aU)~Er|!r)Dgkwy`d{TqdpL?l߼Qz09K#{HSQ`y.]2PiXPZm*!FaEPt?W+Fep}ХP҄>tq+~P8~(( ٿB$ĒR3#on6wN 6ul2.&tS]0*ҰP5" 8Ǥ=qu I.í )=M9MRE;"qX] QeWyX]j6LbOC!ÿm bJۇS美``]Yn쾷Twħ<>3V6+j=9hwUX*?vx~m${/PX: K=9R T´& A&ι߂]`]cT.|if??H*[a% l<) Do@J} +)t+`bWU;9Z8;/ :c)}'hRCЀ f0^^xy*T1 O؁5@DPjxVRaDJh:In4@cs]&,%ݯlA;2kHWOޯwXߖztM0Uy3t"BZX2Ef}h݃YRFti,Nn#OO\'eIfմ]ˬ{3$;lsC,+0S:U/GK:RM2oJVδ'wyXn;/|s!( ӥIfShԑ{uFݟ~o>AV '.4XD˹l "\ix(jBg{QLv2Cͦ5ĹX}aAcY7R"Ӥ{%G/|{rI'[T!#hKԥۻ:m Viz`BEFa @ s-x na< jjյȇ}.3w"ԡ *_WgٖG4$}wQMThԛ4keTP0ʦMEl:!)Bꮨ 3>s@ՂMVV85ݣMSۍ*pY*ɵ egՃEc?WKTYC]R dܐߠ/u]1yU) %D zQ7@NII@-WĐ` Bܰ_ ]_\RJ\/3v̫fgOH,n E2|Xl#*'μʏ*(+\FMsWr[(Ul,*7eֽ}w9[oVNDӬ`:cFxL5oOO @ACiI]≤ ," la 3E!x=A]b0]Pi'G]X\yr8#,k8uDb_kI~ m2T\ף aX;9tl>R̼iqӮ7|לf][d1Z(gۂ5Zp4JTwp&v'ӑr^΅b`ݍLCMbA!R81 /rUZ!bs ޴ZzK%FRJEU! WS;h,l9"W%YW8*ϲ`d@#F=u'%Tyv!u3I4UgPOy5"^v_xqZFA34Fx}A:o5OyQn1FA^_A?@TٛwdrZ(@JYf9j댢-qDZ5<_xU m 9a<PQz32BrlB>CN%t[rd `YޑC6o{l{2,weH+mgv7f6żi2gk}!#EzdU3RHtli7kMy& A+̽0]9 } >)뵗QEmu$4o0)/Y%Vrȹ@jJ_Fv-|t 5T!s, 9VcAo#کűJ$^=kU֒?D\8^*ɤs>oKLOh3Zq(=&GGE3,6MWX uYR~Cԡ-FȆ({=,ԴT:!JP`O3@J`mG}M||L 3i^nTBPv^[!M 8RP)1>zTH_^y XXvW8XRy08/(~"IAWҒf<ݠ2q]= EWQߵxl9aUa!Wbm4,JKii}g%wP3ޙ |5R3R> dF]YѪ _5T:8/\Łgkd hh&)\ncr;$"C.]{Sd>V>inRBP^$A6풦sN1` \,R=-E82nr(VDHS@ΥWO=AGM0/I`Qe'켍Q]rܺs#hPnֲRj@'^ .|PwZ5W%Fiq (T kivC ːro(,d &t/MñBƁ3bb &I"4BHoTm4}owaw.^ 20WUBZ'!*1|ȪG(ז~2X 5ARgm:1GU*(4ˊ!.!}H-,R,NV'ΦFwUluc1Nv1so][c\U"˗7ߠg7dBAq5OsUE0qoזWUf3tېbu&o3X++'E'QI;>ގCFٶWOƜudMO ?36Cn-V*x hG4BH/3A>;3{lk1N׺BvۼG,, T{Ac煁Dn3 mBLz6D@J&F=U6=G`)}iZJ%-8!65ƩK|]6ܰ 2zIaеUֺ}ᰧy1_V8 &3C:L;I;ӡ#IVY3ǁNkX/ՓEr=m!YJeRBtSLGOq4D/w\%k{',0G xE\E˘yUGXnEjOh]#A&)-b3Xc ^frdPz=GNjspl"7gi'>Ц_ /4Lo99mݧ84!"qX#!偢o"Ķ򗨸5S+PN<ÝBhzZ4tnƫɁnmvQӑYċT柠I9sAqW׶VY <0ǑJ_e70:&n5-ͺSڊS<\}~f,UfQ08oF=(6qGs!@sB!q8'QDYh|5'U}? VS~+ۺ-b846R8`"J+9|DȜHoB蕦wJ0Iy;/>eV_oJx٦D!Cv. _ɊSmۄbaụ?g#NR҂DLj"Em<6HAmʿmgo|XQ urd Gy9zrQLD_KmWTZ4YE*yNuMyy"t鍐ҠGxUNF]qW_u>d0mIay9̭ta=iuws_hsu]l'i>ˌ6].@RϠ.\QoO0Z@dGq*E̕q2iGibV@\cQ7_=͵tjCR!ia `a7EJ#LmltAMPMG)~M% X]Љ>g`mZ 7dx3˭=OͻYag E+EWSyNZNwa1{@{ᇠ ƺ6lE L3I G[Ir4]ݱ{t(!je"RstQyrd"'1I`:BD0W_v[`pi迥kݻo4or$ϰbIt,==٪f9Gi [Bw~Dss#RFI0xy qрsԣzYVrBR@v5A0zn#4G*Q %a ҁ t ~p!1}$&mGSGxВAWgiB3Yߤ WEhY%ekNV& (=L>J8gfclJA]6[8fY?/<]Czt Oj ̷ѻ{$E*wf#/ζٶ i·,gc/rLl.ttHW2GkXߑk׾N Iq GMEWk+͑!W a^fEBS.hP*AS I>F.P (xN¹OPT/rVSg"e4vǍHk [uCt[v`ohvLrzG!οZz E|&?lEG^`'NCq(9d8t7MpUieQ̜{]qBﯕ'!srw\W9t@w^Iʱ~<'o݈W j"6*C}`[隕W7)A[΃Tf_ %LmU%u*")Fɫ'EI8J9Q+bHi<@-7*ŇsHfnd@DT\OKc#<>+9(su<ֆBI31\/\3h G}@4d"*h)jgkҹ&%|v\#,ip1Wꋕd I(eT=i4k!pJנb._ PؖDNzWf \4,~nH&_*CQ-ܪh2;ꙙӡJ1Kg2gʽ\uG~O"v6LN / nRMKpTKXT1Zi$NkүAq^K])ҏ+W$vuk'58#]LrǸd}&Ƨ7iy^җڠDiv\`{0rsLzm03CGe%y"\"y7ڪiAn/WEMI:)K<$$l@((mVNkS}OGesnh&ِh@m6a]ڇ}5sM?v BI9<?(d2]x@]҃I?7_\=W>Xv^_ 4Ic:l&:Oq!ɏP8#nT: ,1l- C284%+uIĈ]~*rDmfo9uMw讶T&/5vԕ7efMM^۲FPR5Ly I}aό`d !>F07ox[wzCV?$$kKPW$,C{6ŝtM Ьͤ1n&SV<><@m Yǂ`T3*Wjt: _X&YZA} 9oAz13G0sw:vf#fNp'y v猽X 2+`BE*SAguf@уi׍˃4`E?ŹfG^Qws3iD5OnGy3}ܯ݆~QeaϿ6O8-qfQ*|+w}zIK`*z7:2,fpJ7W4Gˏ;M ַ4XX1> hpbSkΰcl~ۥ/3<Iq5Yy{<Ɂ3ߪAjB!,߅oOԍ$n .ېmEP?%s,so-1l5ϽƗ= VmhM %!jo:e/N'U8,Srd,LIHk \y]%p+"N6Ad027 `g@.!r?`mTS,~N@⟲S芷d)Agn$A+AפXj;fjVrm ܕAz+.NJ5L4=8m΄}%؊}Ʋ ;l/p֟v$Qq WjdlD+,/ՇfuP {m1EH=N-j'콊3U:sw49ed0 ] ja"_'8,]Ыcn"[,_ NhW!KvK9)Bᳳy$NpR5V?;[ g!s kFv5x#/ BKGQ n"G'd)84Mh) "2֒_H6[$w@VjG:G-Dh(}Z=PW+h/=K%:>*wA:B{>qїru8d-al=sqsf  !$U* l#r1s܇4yID"c=7O!'Kkư)J1ݖ/}([t}!ឞ/͉ةs?wTJC]Sǡ0$ڞ]5<*%?#./Wa ܵ'Y6%;b`qoa߹I!7x+){}d14XFgTJMĖr=O8"u97'\?0w5} dU#J?8v9l߀ôG_'!+ٌ+LS$$)L*p^{+:GY^XBfz!?uV6ZbXpv>*Ӥ(dri܁\7 fЯFD&ٍd)mf/ Q͘ !1&e ~ږt==J5~DqlntvOgGq@ "=Fz &o N ,nR&wC.Y@O˥R$.Jo;z}" `(,k/65=} 4G.WW ,D|䄦TMI9'|t3q/.́Υ0,>CC$i~KV4ォ+ק2J 6u2&]LPTϿpMdA}VJFI"޹cXfN2WD5D[J^]CYj(#:lpIbj&ZjuԩAhfzS0?4 =ı PyjcX-l}FpQlvzO/iF5K;`IT&8EөϠ>*uo<ƞ9D{B0VX~VB>Aę1f2H-S ;1"@iE- so\/F3+y5eɄană}sΕEcB<L,ݻ٤q/.Dd9 s>$&d: O 3Ҍ O2ɴmCx曓ߙPTo`Q~oYA4BZ/8 H hѩ¥v͚*h;>zbf$F> [qX+@N[ෙHq4H7ӟ{gGJ+JZ=fԋGO=/ـX)n[yKkI(9ѳu|;7wYRϐ lIL+΃,̭e*=a pZEz҃945^Ȋr5\WL¨ &Ц l-q\Bg*閖\$lV]^˝]ĝ01:fO?\Q:xl)P)zCj?Ջ_.@4U]1>%XM%h|oVFј I *f{H(a\?1 g/O L2qϦrC)fsT AM@)#ޗ܋-)g_G$uJf@2ુr &?NS 3լQ VQ!AXGz s,J ]oE2IHtI kFPf+_mk( c8' ީQ(Zh?ʖ*qϞgDxaON|^J^xKna"*rtCމ~g(:jRj1 R2<cb9 VT\%lCI6ۨ"CT4W`aĩ,ݞEZ+Vy aQn6_^\@L~)T&W x?GdhyJE,Ʌ{QqxJ%rwJ@ָCFE%Si{ %j-xPq\GT9[^c/q\Ju9DȅWuwB>c_g!v<j5D8w44D57 JѲDGEgaPS2YDFS Ǟp{O Jbp5eTu;Ez!rk(t9&mk)H+8މ4j(Pz~Op'ȑé1H.Q+)lr2\ӕg PvjSdI^bZ& M)55s_M!f=ex#G]o 2InO:*TC9yT̵*ܣߜs?5nmj_V#.H.Z7]Oކ$kǬ<#@Н~O[* Ց./|RKQW4iHtAEpσ a:/4eI"ZSۗjX5BC 󗈏rOZ]>1_V}s&`CP],=+ o_kj.\fp<ȟ=|EڣbUQ#R^u0A;*3nL[d3O4,Bxz'Aەnf@;{. ikg6qX(Ĭy`xQsyم@CpN>MS(Õ7Zflg2 S ͘43\nĪ^OPUWIdຂš͠"#UEԞG0WAUf M_6R8[eޢq 5$%7D$ГAY88cF:z2*77nW/T6 L(p!(y_te]<٨{_'0(y$].XF]TkeTI$"m Cs3[viAv ʈK\3f\̎ C-jHϸ$jrrUYWnxpq+H ]NT u6D_雰"g,-7w]OⷫP aǾ? u(j:K2~kk~(Y?GQwvWM`.^YTB%RzCqoÊOF)mbfxkt,y1PObQ5xFEAR4Q͡ձ<2=e\6U,s 3V.1xPӰzA#ɒؽrV [\=¯O<",O"f=v+{n7>+ه;B2 j~0?yH[5N,kڔ|A/l 2s_$TJAzГOp,i,c4=󓅃c{$f@bȰ>A#?Fu7Y{*Uo/ZwHl˜ʡntDB#1Sb"/uuêPURk[$hbNtcw:BBp҂(e6)͙"5y{s=a Wf  $OW Pgq=o_7F3& pylTg,vS,x`r4iSPO/>:kCE2Tխi<0Ü)sV̭e䊔o]4BzVu̗Ɣ2Lh3B mkzyZo`U]%e/|(١C.}ݐѳmr=\ `7뜪!U2u;B9 LgA`*~Qc]0 |{7JelVI2[omG~MOɈZz a_|q 9*vG@.Xu4*cȀe"`QLm;|_.MMeX[3V \~jQfDMP@5BmC|9V#Ѓp\v&:v'M,fZ%}&z 0ly馳(gKFn:}e -l#Zb%qƽ@*8A+ 72OdFAq"EzHl٥#V3ф;Clב_e.B qvڎ.oF8H5%9!k8b˳;WWTZ-=rX;Hh~Ua[g7u,%-/o2|e Da>Lʓmckf/1j"|>nQ?-@|ۺT%W*;wͻA=] e`'& 2[ocs-z VP/i_VzfR k8bI[z24~Fcr"9 l>ۜ|{,꫹KMԎu`dg'C{fux] ?bK\^X6߹cwSԶOTT q|?.H Ѽk8;JE3LH"olZ67λjߜ]cj5[/m!7AZ~jV'2ʻR$G\~ ^dnNStk,!%њKMԻ8se~ <}|zLX78ޗzĀY>$ 1(`MM`)耭Y0ts9w!&GbbגD*k)k53xL>[$xp6.2j0 6u4?,9/.OAۙp&ꟲ8&3Rc )prx8ى*eGhMۈH1@H4 j$@=jd;ȑ3t ʆ1蒓8ӃmM >(EL6/;@yYQ4>7?aR.eԧOAM,>}֚{J?Gb9+;3_SziM_jvm8JUaM+2I<`JNSoӢl-FB ^ kLBDȽ#A(#@!3:'fdЄ莥X&e?$jޜ۽-(IeJc!9i˒.?Wbimw> ZMA 7,97t_pJ^{4QK$\F&;nxGJ끘jԠ)+@}\#z0Й\_e}ɓVP&:.o.[E*(%AK#ADqYf _XzR&Lof|14z˝kb1Q{n=#AD8eߢ ;|(;Ye%|'gdD\"{6h;!l&{uddb3ߝc o?>oKc.$z)Rʼn8>#_;c?[dkEݛ*w".0;[yӦ+8vjf@ln {f`JC)Be.vWzP-Sz $SL/bǜ֜ρ-y'@xCO yN md0M.A<TVX|?y,9ro8]g*P)/EA "sGîa镾E OU i0-,%.Z8drI̐v~t_PPI!yl}&\}Xɛ$_:DInQDzHh-%M Zj: dyX4 p4NԐ/SY3bSxjf[;uǕe&3h?Jf@_X?ȱccUםѣk*>M4rqަ\*{P"tE0NHw1C ~I=콗#t]}BV{A5_YM߱~I*CDn6DC-nGB5%G=Ey5*]PUoӬM}!-j's?[gѥWj054˴Js$]vQ0U=O7矈UOdZݸFi&ޟO{_ 'p+:IhހRiQd2)Ez[ĵGܷ_Wllپip7`h[9aI.W r+PeP1Λݾ:r5 :m 0!ko!GrӹTҧDzZy1Lǿ9?M܊y|!K) oUrYSkllN| BƮ90/'S{ܯ<8CrCm}ɝ8Ux︖+-> nR@ekpi!OT'-`!zKPAB#nבvfab:ـLJaϕ-eGjNJѽ3%O`As_)Ed Y" cGN@U&wܣÊb+؟]۽ b $UGt̓gNTٝ}b (LUxƯP^eecPJ 찳 ;\@]]v w5Nr̼m/)@oeE |N%t~$;]btH?yK[')]hEB؍7F%;eHe0r;e9{|H@*w1bDB\..(|r[`|^ '..^1͍"WTbu6 \`+Bh3 @#)>zB5}xq۽yexdY:mE%fޒË+$rx MI2+U+vT6*H* @Jqgu=l%fY7\o> ]mH R"A5-/Ԃh){F"p<}n9^se43_MQНNkq8i$BמӳQJM8"WvN1>b eelLWr^TkFH@H+~˺>yyџM}uvl+˲a6,3KpHVYγp;>O$vx`-tn!cɔ4vu y2ړr*#2]pS7?׏zŭ ifڮK pwN^EpMv6+ze[# 5ܯ qӥ c5EVlmrܿ3YQDZx` X"בB2E Y|Wn~_E=xذSTII'A;l>isR.pX"5JUώr0 d ȓPUBXLMR(,-1 w6ԽX:xLy}}O9ڶ?a2Cu@MENx|[7uDf\ww+f!d+)|2U*-`Tg.bա"yW': S!ZOEEELu8|nSg^8D'W~]& K/{M:VٜSڵwDgwFMBnYaۧD1jpR!솠B{Y/|quOjcYI ,Éכ!\-syvۓ\X.ܻ$=%+ȇ'ܐ;&a4>`Q|э\)i񂗟%+-pc GC&ucXlU>f mH"[ />5yY}qgvUa|M^S %{shKmP"~G`ԝ*X#1Wl[k29wg=<:3Vf-gyC2F4f;Xag&Ο &Jlc7եɎtg{]tF"^\".s@7 +p;K6\UӖV≅=&aNecO,qm%Iq8Ќo8U/w<Pڍ9ҐTQM󺳜/zsH؈42N/ F?u?A@ԠF;7ye}¶E)TrZW:X(53Jp6+jz<~Y1Ԍw\ޑUxBYTp"Coqvr7&{/~G3?{p)Lv2R0{pq\,}9B5[t J5qrͪIKe)T{R1$nS&|tՉ0[wf5I,&xy7r Kq MN|fվ~pu;e @"+_ey 思 p 4e6q% >W jp@[g!EFoI_#h,3]cnlm[xtQ0y[{DZO} 1G{<#=Y_f :nzd}Ǭ~?ϋգpV+ TxZ2lnݿI³I`,a>ֱl"-aH窍ǃHlWT9\o ;;vjV3ñ] ֬Lב=~%1T+-j'3HU4)iCI*zṨ,H-MqސPC Be*#uH+u1pW|/ф zDe\`?4W @隬K*+)@ih>AgʓWz*(Lb<- c}$5DQYuagFqEOO_a2M-Zl#L) faXrs~,u6>/W[^j2 5ą+=3sofֺO_Q[5ԝ7ZA->ghQLq. \| K tMXų]o+qaX==u_~x}]~x &z"DJ%݉sX'P]eq1s'99W"e0cab"o=. 45ush #zsm559Huޛ"## RYts;uglȼ5L{[ 0};¸xWRh%>M-<:sf^ Xjı"cmBLR>oo*'fG1L"(&GM/"ME#z7I) ˛w&bT epɁ=c!b=#1wG ~YiCkx3& 4L>sXW߅?l_Y @ QMrK|C>4 zaٹ[JKs)LF2).0rt^^u170GBZ(/B$_lJ[ _#Y=yK.s?s[@'SDeq(Vη]@vM#fQ\iq]/Neb"-4?Ir->- FeڶgD语h.n]c3K(u~J5g1%^u56u5T)6wF΢N%Fe <>BuJEב!R,Mxe3ɲ-tƦJ&p#9[U4k8R'm`0 Cut.$M׺kct ,fʞDK?w(@\-T/й#sgESY5c󎗏SGĞLgX .P=Ty%)5_NGNJޫpmL3ZM^fwBbq<>cwuh| { kA-' jwsUʵ84ӌ&W[h'lgwLZa n!5BS@D7?u4"3όsV+ؤG#׶  `>NYfDnN&N p=J$[2|vw_L0tl/ɜUBzB#Ԋ 67/[J9(Gt(F'kQsfeŞ{E QA>|h̯ :ū^33J4T;.@Loo8ޥ ͓UHL,dL d&7>f_nNA@1]tE2aMcPF>}1+ޠ/C'BmS`PN #i%O,߿MɷB 0p)qx1_VFR hӰfJ//tfJ:2'+-矨R5>|BoB G ._m f3=XU]*O*PE&6Xʱ2O>/ /1sZ$)@;#a^FgWRoi2|kbH쉪^`Uh1*$c!ocՊ"G}*m>Kcsc1_#l^#[)l̝b??iZ]Ĺ"U]΍ij gb%mygf{Ӊ+h ڤ+Eg_}̃9@]r,E#Z(֚C47NOaweS65((OOAq-vb|zȺ]4gGf?||#ڌC4V? y{& U,/?U+,;Ӭ-}M(Q?ʸKhA7Mq'^yFy^l60|*a>2{/mud 2p.86J-h7Iרصƿ48{=C\C.-WٿoR,?){5|E/WgX?!~rf㬖_D7BK.Rx w^8KCbiC17"zSܝV 8YɇnǬ& ?6CQqAt+USWkdk+]NZ f`L%?^X:'I33Hۍвb [6.N>#5X7andt(YEIf/*V[{;ۤ#qǩ*RhHʙe15S=*ȱS .LԔ;%cs?}:bF4[񢌯9:ev3\H7-L]gVmڌA[6Oṓ^Cb01;i9}OڼkC㿝C]LOzrBnz}9b6A:)t3+4ςF9q-HKߞ"_3V/v>AS9+bAᤤ*z#~sgkJ _&A4p:1\H-{03R7bKqE\tFSHD a%a[CW,*[f ߛU_P{@VU`VDM 4)lIJaHM $WJ~Pq>k:Nx+pkѽd[LXbE Lwt&R*\^9H`6e/.Q;@vPϗC_{+0{榭 ߝK1T}#ǟ#!BʮֵNo{rsq:nmr-l\40D8~ѱЭ tNmv O_j '\?ert+ Ê@?4+>Rƃ!]yy̱ G)[{!9HJi蘲D~2QF&޸Uk?+LƵBQn4 tbVbbE6JY5.{z2Tњe"r m)eFL붯ћ6o0{|Z.hilmzޫU<aiB QG;˛ By.Wcis$#$vDuehVR S|cZ{k- 8C0_paI9%-.q̙AL_6eJ@V&7kO :kh?" 1 6>Ft";4w)֙ACc b/2fI= m. FY*kbnG .J5E<|QZhݯ67^U c# !JW[66_ Oox7?RPv-}S~g͕k3M6}l+5a+&MɘnJzU8lIPNKtLypmOBlu ŕyxwG8^c0-%]i{S$8'` Jhgtx/ozT=ofW#2ul^xRr5tn!'pKUO% m&")x!/x&bZy3:9nQ`Xe%N׮)v:`eۡuA~@XcʧhQr&R$d4  "u"Qo?F)~|kBT/k @&f+l+iE ӗخAFBQץ'WAZ:HQfYrgm %K'`dgu(kfZ; 8s` .Aoaqz~Df Kx=^o;(R ,SGW_ ‹X9(HS('WaWfږ5 sKU.Dz_:pqyY|u%Y!Sq݇Hʍ/VE|e\"}W>/cXd3b!G;^ͥ}|Vwd\7Hxe\Qʜ 0:nX@L>^qd{=c7^wTJzNUY5TO~!"Uj5Ӟuչ&RUWhf!B UMn ns9X F$}}KִRt?WŝmJE. ]{6s h/؊%[ ]Ue=I ~WYt7hR2_p:>e%tB{IMRE>nBk.&ѿ Z1 208웅i'8~ n2.}b3 yrLJ:,hͮqh8Y4`+{x>|n FwR?O8Oi 7zC1ȠenCk EA&]'4)[RFi Ki!C"2DNvVvOl*h^TU_m~}}9 /2b/{F+ʹcӣAj||525t,/Q~_5y ׅhbIi3ɾU1[XFГt~[TBJf tw a ׋:ҸJXqqR!ZӢbf{._wZ-N;ug&_%C-hVRȩAx*cc/yk_ta!ww\%/U/lRAʅZU]!G~ cpE1t Ӄ7P,# zF?OA1!9Uos.'߃hkPG Iyڈe˯+x'}쥚VG<|oIKM1q*ng"9h:W^x>zw]!>ơFX$.v_}^;c$}4U-6QJnGy>E<(,LJYpRek}a.X 9 /] %o"z nDΉB 8F҃WcH;M _|* /O5oC3vdvTg W3n=IĹ%1SNOX`$䮴W:K3 U̟_#bm\GVp7 "_0Ody7H\M1bˢb!a?Zt DYG_6dc0X !i ?QFKR>EfITvз ZE)I_ QXZ^uP"S?}#4KQF%jHKTX`(b.&G<krY+x#‘=33Ȁ0?6mk ꗙsy,wn-0RLOVZT. )[=#ч9u);FU&KΝF9TN i7[GϖRVs!CXrEaMc7BrrcՙpgMhGK]<=] oZx[!F >آ@+RZ8lYk=M;ީ~g8?ljf$Na硍ؼΥpWTtvB)JݓjH5 x0~BDDoɎt{ ȲmH*Q{:T;A >0~w{$v'o*|γQoWdY%o%W] ҝF=Ƅ!0A>¢  %~/C-2|A)/#ej4#_L+a1|k5$=nє| b-%~DVK4wmm4]3TY'::7b_h]O1=希zu+'i#kI1Ȇ;,\N._+R8ÚgSEVOECq CK)MUy돞y{$R -I%ݥg#E>oK.$w@ Z{^4%:/hϪ~+]mkνرۼbIRE^Kr.c*㪑%hK%X~fD7rɟl5` ںbsѓj PW)ZlOE.0~1GyGMHU|Iٳ.:*IZh>A5x+3-zlIhBl1h *K<ֹMi̱+vч~4|2P F&d"S]?̋^DފRp b٠:vag}c}oⒸ>Q&ګԣ$؊F%Cv(ąf"PeG͓t=ED?K.T+xϩbw752+_AvMcg#: "bG$n(9CvD # juŀ:pJ(pq;qyWX!U~E4"))Eijڇ~A5lH8j(ΜHd%;W6[9cB1]d&Eg:m`/|G,HC%U݃fG' HTL:42'ڒNI\h?"0[Kaj=#rdBedcar\fDFD~-/|X38T(㓟m-1J$}YJV!k9qX76=XjR)$f@HI)rpvHi#6pO$E-ѓzthTZdRe A6 y&qf{%:@Sx NQ&(?6Dj[}aRބlebmTȚ\I?l/gIRVD/?g^)I:%ADž1pXaD◠BeF=aƜɉXrH:R%'OțI{Y%n XR b%GBڃjp< r_b, ͨ^wM/}IAj_R};_Ev[(V${hdmE"@f%ULG\ّ!UQ~Ex(sNAI_҅ʩ2ŲM"\\p!M-L[,k·…CYgu 0BOIJ4mDk-EI~v.=މ͔.3Dy)/ wlpE[.m^z[My#_4ރlq^nv6)~e{"W\˂00eM9C L>G)RHuO2:zwe2 7f2 D7ގYSxZI f=:AZ`lS@M .dr}jF3d\6gcX1#\N4IsWZѡ0u8fD&m[~)s͜!E ۾D5aI2Q|/<(Z/$1x1ʝ  ^oN,AAzXsgBQXd xNz_X-5mw;9^TF+{^W}Wrِ7'  oM= Sm·᳼,P㮺ܔfkص>2H#`rPT=O& 䰗&7XȷN>V̆stQ4|-mַ5t-2Bd!BpvgA-ݑ7Hz|kSCS2 ioKz c*D7zN8|RL{z_C-ِ}FK#K/QCgsPͳsKE)7/癥=z#KE% f3}KP |40*Q/ib-=㢺P#;2/-3/qROo,YMb.-Uh7bd ylG19%s85`D<Ń=h U%!rN2;+Flg0e)d}jl5g]veko+! zu\ l;*OCܵF9PO!f]|tfK0Mٙ+SCaa|dޔkVVCk~e*܊ W3vF܍10ieqz@ Zd 2oi9BR8Oݿ #[Z`p}mz! *n){7,fJ B!lӯ( 6x)Iɠe}Ԑ#ەUI2\oXÕ̆{2te޼-5Aj<7 ";/l ^Nror|,'\'% ;ᆟ$-6z0`1Qa e'Y.|ƙл~)?x#sk<91lIuS172, n%0sv `|@Q|Z*S<à,{9+|—uНs#q* kSShE.LOJ tc1Z-ݴF{WK'a?*U)|ܳmʔً#=bmG,ao"Ҥ@tp^z_J+JE)k.7yoc`{"'"D8?PE"4-&A6%.#|w59RXYi'_>I̕ ]?!m^^{SIŽCo,|Pa1Ŝoy(CwRDtiPw,Iik"f4֤TXeK."td/s@;Th'dRb9ar{6s S>kuJu o/F ,|O092-$.I/_{ Fw1^՘/12;U݉oN6E;b1ٗra\W5|_I ڌD1E-__1^ Y;ZuqSHfmEK Rd\Aaf1v1 ;oWD+ #OpTe) N$㏢WV`: _ x@?=*pT5vXRd;ָY_,kY;gbߞ ̙c2p7ZD{d_wf5um=v^57Ą፬GJzj[ۘB Gp"|{: Pe~[uE;cg-86N,5"@d/_2/z^Cq+aHl9.|5Ri85)XpV`X ]^DKWy(8kHn.w9}^ߤZ[XV&oT&^?WXvxD]kY8rYL8E!ÇDOKxc1h"\L$#&L9P|2T vIQ2^ "ݻ}2Va!BH uiL>b} nl{UR%_وjsNoTȿ$<tlʌ"!Z& :~ 7=(y1 zּ |< j"q n2-nʟ$Y;NQr۾ d1T"@v R4#բ:pYImg6pibbpo$q#a *VIT$/n^cL|L묘mݎ2rR4tю2K U ɘf}e/:k^VO@FMuRA,'33z7JɡP6'BZمuWˌn ףaur|N*# nJZ3 -!¿ yXDgO+?A\tǬ<nX^Xjs;]]ْy}:L2Թ @>:*}WʉFx:T֕5+58Av"GνOT3|by2Q\/Ut& YxpG15)tBgJ{^Ѽqw i~{JEv2Rm.jj%d7bOk&*nZ?$6r}g-hGؚ1!dέ4~.h˾0 O\ߝTD<54>tAXٹ697Mt'\.;zP5VOE|ݡӪFέN#wiExOj!n(}n 6cAfڋ^:'ſOpM@Gyxqdt"pu7x5apBK(Kw;e9H%y?cC\s"铯8-`0OC&,1@rsB氤,(4ѽYx﷮TGl8Vd2:lL+`I| -<KW&?4UF!I 9]H1'0~3 Hsұ]jU5*HuһĞx 9N>Քsy% {~E4fo4=~H7z,kO0Κoþ[y*$[FToR_ gJ^.CߪHYN]L`2`S->-9H]OL!c,ͽ@JNZ o! q&㩒 xm=\gA)xl$|<{U=L{VY%6W :"Ⱦ]IIM>0Nque>ՠR0gxS,-QϢ_;?Sb# h̍D{BS8KYė3WZ5.zZ +|aSaᠯ_w`e +,H԰0|6 ٝ뱳RMaQ:^s75@92rzv4 5+>~:vZYl7T\A8ŏ柭`8JҾѕ_ʾBYE_GOS!Uf u+U>CV'a~D4X İDŽNqPƿZ[_֗kB~"sN{Q-nbUjpNk5¶zjQQA/nc>.hͺ&~_^Ml\/j3``Uɭ 3a7@;j[1W#*Ld/,9&g}=e}RT\ e_jDv;s`n5 % W\l1e!{.{Ks4hG- C^1-B^1w- 3ѰZy:QusoG6^Uoa<DO],\2z0U3G15)1԰8L0IJЇ'ErIaӻLMv{\1 v> {2cnv=T-/;ltuYji"#`3 uq34E2fC~ F E>-Bg!>"f4OrpbU YMKAC+=v6cZ7ZXf,je4o7̍CB3K[B R;[:-:g' ^%0:-aLX&`1a=/J,%,jXϷFki/$lx1-砨 K}e3΀U֢SlpznXM/2񬣧 {-uΆ:&il`ĻaIxʰ26GNjWf_=Ӌj,Tfζ3,K\1$q4a{x/E1i81z X݇ɏQ@"?2/s'%|w5zR%JatJf(3ReKYTŅ;<GWUh{YZ4ґS 'fh#*QCǿ~{cׅ` ch IF2KMMOw+Y^'_SG|QH %gy:~X =u4X)aRTie%ltgT`Q}cܓSpa^7̰gH]Ύ)À0lhx9{ȼ#s+#H&8z8IE}9p2=)BY$cdl= d Z-AH8 hDeVPD^]үM\jfoaؖS.TYBU=:Z`jugoC"f{cdJS۲v]Kb=Cܦ3Bx;`[-|=PmW,xMY&x!1!$«y7VĤvc X7~N!K!ۗjyΪm`ah (DO"SQFZ%M܃T%jĞ[#A1P"vmrdGqW[5w(9i udwZ1#phg]ٓvU]hs*Rnɚ<,iq+,I&;a8b-c&xsY@1nJ{g>W7@|&Us@m YU՘zo86T [6$ œdK%T\a)C}A| cl Dh1AܻeQQZ d'^_>u8*jU(,ܱ$n@NNU̵T@ڎYbDo/Cڔt wr.e14)i+qoEٜWWs>R,yr9OHkRo=AUTT$gr~*B=:[jߺL 7Vߔr[t Pj^4[z[ '`9M@(M)ӄ 2dXew"0΀U K@D.|ϓo1#spca݃*39IhG0A(Ed5 N#>h/ƭaYYWp/Xzb+>ǽ]]x^wkdG]|H?&8|tUޚzZ[2M|B>xz;-GOYSOC)l;,\31]`op[Gsu#] 1]Y4薖4LƃI+yq?P{,nZ214q¤>DN\_So@k~~#\mcPf+@_`8)~ Y(  ZpnThbt4l<09g s-ve;zW)"b%c eֿ"|:\[b=CdLe|PGt7JoO54OHvĶ@( / [!"u`T.UInU٪"81& Zs8=qSH8lyzPX9`O(\Z˸̎viOx3ETu5 @Qp$xɃE5攴WSR3M{*AzO[Ќ ?x_ً4U>e5dV殤UƘBH*#vLPFeF?ea~ a' }C) MI,`N//$̵Vdz-*jRh˛Ll)_͂-a$ r`VZqCmJ8pn/TS4 gELJv!hxpK/CsF3 &; :@!77ӈvZCe{~&OS4a94p~W|I3s{i n/ s'w]e2{YVTͦ.K64L ~+(,cӳi18ÔH~{lhx_p979[JthC*^ 7a 3ʛ5ve~+e(1k 0o} eXJƩrO:/jK3YXH3x˅WK=cG|fW|9pAOHxMx t2*wsƹ4PYF4J$eMk-byC@Y&Pt,z'Ʒ`ߓa/e,/vMIܚHǖVe04 V~Rx:9_[jXn"ý%,l234!џr:2+\U8ATͪ@ŋBͦs5*I3rxk,HH9d&tݲMCZ&˜u]v,#p齮1CFɂZ5_pv (ӜVm~ab[ι1_`XיU;\([n;x0{V\5ہC\HGzGCOSc 3d]*d˕HʡO z~GY iϑ &*q_n_t^*:l~yy*b 0d3s.嶃܉D[XG O$E`&UէJ8]N)BMֳoyըq:H"0uSU+YypPPW,>`_4{MZW;Lx5Y")̐+^'s=|[solQsǸ9_ p]Tr&0 " H~wx̼aZxγ d0AM}uvF6ҰڡrҞƮR-dd2}S ?}4.]u%Z-h_3 ODA+<*E\ &5koF0 L<*7Ʋ{e>t|f;Gx+ oK* 0S݊_L.6r#A+-] [V}ˮp=;Q^{~;>d[D3(ҿp)hYs>SHz!Zrn` m$鞂֟'^\ GTYX!9q윎S!ȬmȁQH'UΤa[JUkUNi|?tKmGM-.ʂ8,p]ܖd%*Td 4&{'"di~%nQtOE'$ B3éΥ!qT\6)MֽmehIKDG&TYdNwh64LO0 IQ,PKXI" PFrH*uﯬodŲ"GNG/-w<~JN@ϟ`$;oz\/^m8ddL#IkwaqFzqailDWQz:_T*C 41I2(MrIuƢġ* ͥЧ$">U{jw,bLdAfuX~qYGbʞp$0Kvy^ >gҷ= >y=|B:WA{"9e\I[/ALI<PM&ʄ,8p-L&~SrSܷ yk8Hu>o= rfԍ, ])SZ 7W=Nve>}Y6@L|G۹r3nSzͮ! ^!sH9-eTcp^GJO)f۝ogMmÁQ~5Hq;;4ۦ\@7 {.('#K5oKb.8-ۨ:,8K[]`2~l#v#r67s6fӀF]/z(wf駸z+Inc9$WvD_)N&M"`)h`7;-.3wO%͋@7 w0-*'#j $ sξ1U{Q[dl·<2A#tO \@f5\dw2/p GqlhX tjD{ 4!E;;߱yBw;6q&SLSQ } mpm0[5-G[#i`ui= ?,XQ0y1H3v]6DHuA?'Sq 0M'i T W0xyCGs_D9P6|=^:A6Y:AU[ӮNnVpvU:HNv&B3ms;3 E%?[S GB:QMJ>V)|.J1`\n?g^99NkSc դnMAQx`Ar_ԇC~zaԫM y<|/W9v9*q}ݭ;ډ'J[#rM(Cb%~գ.{NmQraJYMY̕R*Zu~V8r G/\HI vE2RLp ؏aBA֖?20ʥ#N}5Iuqͻ DXUK#!PHѴ+S6ŒYgeQ!LCSm)5 ;奾K"B+V *#CHQ&#-"EVȖw$4Xl.tX qR ޿;mI \j>_fň+0FsA_Ca֨RPZ0Ӷ튊ȶ ;%N%d^S 3?4^KV1zvptm814c_= yQ%X֥?Yӄݬ BDѓo! 7>6DKI8ɺqDn_RKbvt+15mg7gEϾ :oj-|#-F5? ؅uW*^futj'p3abٶ. "Gc{-z=md7&O&,Kxi9 ZS0ݾ?5AԻ0-q1arU$x3JYIweRr H>ܩA @nw?03Vv]𴊠H^ Suz("q['&oJҹf$ޜҕBwc$]FA27)n[70BT9: C.EЎKۍ ě*) ![L] M$N+~6VIy 8v8x.xtپ {0/PvBYJҵ?o׵(ą|{AE7žcTk^N7|UIfU' իM^;0adoʮSϼeOqq#[kPC[G+.5M%u1?2<5 r.0L0x)qNY Xz m2 7(/}R3j"ߤbdnE9.,^U oaHADRd$d=(ji 9`GޕJM5͹Y2jNeIOE2ø 1M ~l?[ߛծԒ ."Lq/`㣎{E~J Ogmt2tdQ%PPUuwd <@D6ѐvXΆeB6+m%YQ}&.~{:j}FN%['u@\fGk`D,|e``+ t*nu4o (彦(Z}ܳ]zc[=6f+ +*B~g^N0F$NMq셜Đ][[РP pRJr̵ Wh1E+ \Q0~t F\R+d§ȗwpUshWu^\@PM"}!Jz:dmaw(13?QmÓ![tO 1$(/\FX_)2PΎX* {yVfvLZ\\a/dzXv gҠO |x~0$zI7f9a!ja =cU!ԁ$$_JtV ө㘍[|ܼ+ ~D.Z! Y" ;5oq" e)ͫ ]$F%f"MwI('!W@~:4JFZ#}ԽY"Tܿ G ΓmHIxH}ɛUI5!Wm DLzMpgnx6.Rbd+2[w79r/L҄]q 6ΫU$:D})u05r-x]؟H:Yں@ͳAyWi):C/Fc+B6s\imRH`bFx(y%Xd,(p&.3pd [g?U7PbWglh4!,+zh>f.Gf) 7v+Y6gF1ܿYnUp5jEJ7LM#i*SE׬eVol|c%>'[`B寮^ܨ<:đ2 v`$WYM,xߺp Zpj FüQ[K N#xwR8(R8(v(Α-D`68RzPnc^zb`Mr8AR&[r]"1spVCr&TN5l"Ӳf>DT󇘧cy+gYE#J *[!zwC++̺Sqa3%j Sl5F jxSUgm2N(G%{$-׃\iv(|V(i)9kDҾr8x1a)tfkI;(KT;E3$wӜGl_-Dr'-XgET) _VƚăngIrsl%&xf@կ@ shlğ/bq 4qm[8I '@BrX-2 úTYЩxD-c+6D=G' P;8\S$e; 8Wd54}$"Yѹ:'E]֣fAK2•G_BVzn|(u_h#f<NƉg?sɔJ:f)ۏAh^`WμݑʋG63=E:Y+#oֶI,'(.dy\'Ā[3zr.9I'V(գa ̑t;mp1&ÓwӸW??EbQR(. IsQ{ @H*CM)ƅrӴZ+%u7MgK6ɭ5ߪ3b~W2sdBvfn p7tjv\T8ÐF(#~!8OԕE!#[XEHּ76/[BH_lS.@uɘaVv:77wDKfc]C3kvO&0RkA WЧ$pAPaMF Pc *M1_ 7.&Pެ⁈GWqR8V:t3%SZxh=jzCkеXAhgT(mɪ\up3F#%@Y6ыe`d\gQmڷ"$m-1_Ѵa|C&z*ĺb8˩'Y~q4H^*6:Mmx9*&=@D4֤$%cɤ;ݰufH` @.<}+MОMEej;ClbBhא$F->t.In ("aOdo%l (4c+JVfqbxUMQZsf3/>v &iVvv}x s M@j}.W;$zEYn&0B5(d+E yYOb|GT8H,?SY }Mux)~QvlLK~|G4Ux(8z0A2v35?[QŘJ '>oWu׃myX}A9.26Y؝3߶zԾps?eQhe ~əzEO2z}ǩ"|U`Xzp'ÿ\sRHG=>t?|So"b{uVvP n.aO`TZOhDq(|gq|`W16\ iHӎ}Y>0^=5E_qa5yjkW남> qp$"WiRFՙ&E&v+ќUzktpVПa)4 P@ 4}9d%g4U&9XdOT. :3Btf1,<=>VFϺ3fW?cBhrrDqFQ0Zls{O\.'g^| pT>`dBs_yB噳(6Bj&ٖȒs !y&3ih X >QFg0o"x}hɆ9ߨw0`v7? T7㒗DpS߆)Dx b ?Mw3:j]DxIJJ?'{ZHpљn?3['bnm?%fƈt+WȈ>+oz|`ZӡR(Cwb{x@Brɂ?iDVfOO-ci iE2*+zq n YS@$=r*S1٦(-Hihm,$TjvّU>maOtTZ)0Mzl07U0|Ѓ$E]:߼JNڱɁۂ]5v \l! štn D~pɼr- ]}ȁMťi0/K͵u}DHlOykǶm"&t{ⴠ+^N֘ZR,K%ʱ%Z^ 5Nׄߝv@\̲0( y ~v 7g*HyOC3Kh+'kKihCm*T<5?y'j^~րnQTz{\ :֞nhF-MT%6 +3m,4Z4 IjJDg<dE#`H3 hVdd(ӻcWv3BU Aİ9m5=,W;4W*jLu\=l"A=Vlx%_~LUS? Z*C.؟~ ƇH9"X"|{(Vse4GEi_ZWi=ԏ}Dʋ56>|DiNj+þ kHg{ 8#Dc[ FQ"fҘ˹W&;6~kdτkMf!MLša6ٷEԞH;b=]z$vʚUkI1`ÈPO46em507ߓhotSs` {oȚ.:@[>,ŸzǾ0\_5Q Hf"E$KSMe'3$LizE(yZnmTW;N?6 2,TᴰB +)d0xYXMw?ŸŮEI҉ۀUShj~Q! FDPJ^{Obӭ7Z+0aH!./"+n(S5|*XOB]6s[8[E`׋0Rh %.-"dE?Gf&C%`>=Hluf΢ri#9_W ݫ&AAc>l( d/QA+ =TZ*x6yN5xCG@'  5`9 nם>0q B[Kk?WU,  /.)aCg6|,B,y5ZgɐH3L@u7pU8im5(񾰹ӣn + -cLWm&HOGVVL/E?QtM +11>Ec٬l;<7QJE_vvJ(+Zw b`A.v}~{~X'F;W08)3KlB(p&`P$:^yKkmr1+@aaְ6Oc!Ҟ1ʍ{je/sPppKHZ *@fxhyEK]?1{I ڄ^{~ EMF\nEv5^&_-;lG rwPW9ۆuVD<= KA!S_̥W ÉBp&5YCqEҏX7-JgZ|˚s-°-c C@UGؖ:s}#.u5r`^. c=~98_av=DsLL#,Ju∭_H@;ʧfպŐ$'u+8C;^M Q^'|oL$)Hkjb9Q껭E*諎16PFm1A:\WXa>1H8,] sͨAZw@H9C>.^ PɟL^7hgcw[Sͪy{[W[ Ϻ t%Ua[zJ G 9Y6bʰ8՞%8~RKhQ>"s-Oόk3qʛ=46^]s3l|jy|'f?pnM.D7mPW^g/ja=k9.:kQrukq?@Uwkk"[%go}O,9D/wpFW?x0'4a<2f{&&Jk$z*3q*1'ܴBY}|F0W"mg"&(Zgdl;tTZwOH᷸ apɘאeW>j!yGh\ C!8g*{J6n0Tp `d\! %AO#s-&!mŏa~_0Wϟ>yٹBtǟQc;}z=ﲘΙ'QaUT>?ԛ@v\1 ԣ ="c&0{x=Jˤ@я_doăJ Ua ".ϠiBhi*qP= 0 cT#w}ZL6.;-[ #ܦBN_ay[:ufl|  h{Ę:E[QUH[^L9&+Hp6قVț;Q%TiWG4E3_y! eKeiG%`Vz? XV4S`1)f~4?gGs&k>&p#V1˽|+^қ9sf%Bpɾ狼:{$ ^L (_}p=JTaPD^P?HXT"fS^Z-;v-($PmGzxa5c(NiZֿ/9F~zҁ% Xڝh2`C'Ye\W r!;Z7 :%"J*}DOtȫ_=Y=]$ja.|^uHkgaz Jp/dĶ%Aݿה;m8Be*o5⍉g68&h8JZ NVO8zl/շZ0X4p4HFt=;Gn?H*4$ V(Txj7EMtv$-P(*+Qm"?])nE\A>ufC_ڷ Y&AAavU󱧞{nczJb}=ݯ`8b c'} $,Ʉ+9,uJ 9pqD/lSP@i]U QuM2+Z/QѢxH'i3Np xJ23%SY2< YVw(}r >7ӺyuCwJ'%[{8L3kaT\F7b25EZn0,U!xG`iE#`ǘI4Pi|EJ1R+.{:gb{{1[Њ:yZ|MЃzȜ3?a}y*h0.\݆q)Q7h&_oȥm`4 dc;bJg?%6F4l%1G(Frv܊yuΊߤm&C30Cj U{'Ne#^|2{& ˋ;[@] &M- 2ۗs9E<Vэ :'mD%zvA8ʄ)ɳ:uϟ$6Nҧ1D'I-ŖW)3VWS5WZuvk .Wt[Pfja*Ca!%U<`e$`m^erR;ݯ&"4Sf\(g׳w[tmպ"!Gv!Q$kjѹ ̎g@]㝴gQ$BR#fʛ+fc'+7cxX]s%V~Άa-,͜0W %HؐT[v%Qx`bx9D[ͪ@5NF"oVA-Ş 1Vr9nMFqQHlv{NrlTײ$\?)r<&X;qUfH=*9K%^$\?8 ~`yi]6$%$P0ot>5WWDz8:gݸ'&>$en8bI6v{I2"#2uqꂜ m 6\o*~xw%bc!wVjl|4kRӛj",g G5\_@XQ=sRX&qz6b(g ە^^ɾ-qo2\.-=㠯34ʡ6E| w-[e.608%KdC~NXTKv\;ks[(WڹSWsh!eM2fwq^0!,\D֠(5˰X :2-GAiU_Vٙ隽XC}yz̐+c|h ,C8Q`2ݦ?[ S"厌Aj1iպ7'*/4zU绢(В3jN٪#()f26~d?e/N]"w:7WXǹSړ+ߚM\tJ-]+e :=..>g4ԑTO D`84vbC:^"sJasv1ֵ3o.ӽ) 2R( 0v$K"nyہN_!҂by=PeV{|\ou}7fdC#hT9WY?x2k]9H?߸%A!]Q( ZuDPЪbP])A=8H! OAw]as2q0BKza!6wp~qJ TSG{+_mRMMGJ -tD7Rf މIqƄ 3⍥ 2γC)q (^6lUQJQI|9=EpMV3HG+W %қtp"~qq19EɌ@\ļWRU$b\ʫ*t/{_omC~ki?m d .G㇯0">pKKo4Qza27Rև?U /U`Cr#"h{$mXrt cnG¶>o '= %e+7b3zYn>Aco X@{{(YL-Om]m FPV{ZLAhfG}- #%=P+XXÜaGL)I"9g#΀T/3+=-nbܮ 4w9J1}g&_]Po c=>ZwS`nC{]Kj1b璙Y^e+]~x=z\ TSvE4;එ8,hDl c O00:4/;#bQx_ ӯfI9akP8kp[ u S_&Co h^];E$dTO$5S\Gp;U]ehz+ ,i6jj>l%q#4,6S8ڐQ);ðGrƥks؎^i$yA*d ,#w}\W2-cbW|&4Phqn?b`6&~w"Rxἵ%\/H }7b[9V0ړ0Ep JGIJ7CC8p ;M+L&,AXg'N{ɳtJ1Mvt!b:O5Cܧq+!hwe4 hw{ _iB.s]=54:>YkL5*6ĝ8 V(uUXo @vj3%{m3؄nJ4kxZKfӚ1Y=TT%Z~rB 0_ږ. a)JShImK)@_3g"-Α@LEס3 P)wߞSa:Ukc-6|3Qתj6 iw>K2 fA^~Kvw'7Xʋ R>,fv|I$IHFG2q cBu0MHb(ey z^^yᯮbփh\f:0!bD#йYKV~d[o5iI(;y4[?xZCŴ>u㸃Bδr6lCJJ@}B{zwM';` G!Hb4i KСd 4e壛`/֫#wjԨ HJ%S`SΚځ(rlTW%#~N}Z@l|hk}1^:hS^#LNWm/Uнd$5JXv>~ Z֍sg:sH@%.3c; )rP pJ $ zp/ގt= o73yVd\Dcvp!kY}ݢskQHZ ׍ ?gE EK<e|ֽ;K*<)I@i0c&TJ=1/^v±$AGZhаP#,`^BHdpCx`))4|5..߈-z}ɴ$M`p*85Qa1yQʶ/S6[w2+~7b8=չ{ҲX4[^ںuy#%rM&'VH~̄00Эgl=Jw7K^m"QW}m̀t[}"WC82ɷ.9:o7X0F _pt1}'N|R,I$Kfǎ=2U: R~# $ Lov8A]fCփUQ`PsD'| d1M7d H$֮>0=  {zEM>8̆݀ H߮Yx`]*2/Qќ2ƽ;FTuS^y o4NUA[٣Lul&2٬"W@cj6N3`[<ĜSUd œNITx@,|L51Sg1*=$jfv79ѥ`mk19ln$.M_X6!!E/u  (MP;W . |V](?򐁧()oqhW+z_ۗ0p>a{5AK+*PioQ̜?P܎1İJl r#azn[@ܭ]}1Il!=RI`_Ut#q;i9b [|i I9!By}ԍF5ȱO=a^|?txzw Ƶ;OV۾M;bVXP*ŜT!H[.G6%?)X9)>%Y/YiޘX۫RRܘp1r2"WtU^n͛VsIdTF4ƒ `2{mzfdDdKT̅gP`F,Gz*kM1=$%JuBbw1f2:;oL܀=Dp`N *A n~/<$E8iҀqHoR爲X9%ŧS>wh^d+H8&I^A8}QgաÚX joQ 6NA; O:KA~4ll|llJ6 OV5o&mji G$v {cIh$nh`9k L6䊆cj#i83iby:@w*taOprJ!g Xj1܂e D/(Td9<" xK(Ne]-_.Bzi~v9δdaю뇸Y>Ǿ*I"e3Tn]r.YxNQ;cV׵]c'ZQi%ĸ9?JGH,S\?qw [0L|IZ,NgäA%{|8@q}KL)%d?x*t<{n0tro8̺h@G/"-uMEd{azM}Se;8kXVƻ`Bۨ0koclֿ^\cW!l"ZMo80#CuGϝ _0iH%VQ s&aybQ~l+kv)[ [#onL#viĞ{vK \~ZqtVCH^b-pL7ܳnZmsJ@KM!֑]reBGYg1Jf\[Ž|&6y;St,ySm{*4`R 1ްJL(*@QTXOV^4I8\6v~^q.Z7p n[p_,R%3K^͜|J|ڥԣ\捨Np_}] ̛<5Tb}2])r+f̏zVtGd Μo9X *1c6y;t\K \V<7FZNAzXAWkE0 ]ETXwU9(§%J Ud @@yBhYၛ"/6}Xr]ՖCCNCmI%AoԶ@`16SK8.s|WV٤?߽֒TaҼ\.X/fW:1?х2x4'd 'f[kQ? R]ac@XA;zP%KI,}JD;Z+]:\*팃q[ɱfHd5H15ubaNSg|ulfyFM&s:qt~Lފ~ G(=LDOF43RAcHNiS@z$ "@i6 7IW0P!ZB X0d16(=Lڂ7y\CĊ2[|i=XfٝkvJ|1*Cz\Ff[\tOru8ϵʬKcROΫu$g)Qc^phBvY6ħj3{ͧtA$a,ațC]GH8/1v+@~˔hvoUBDΰw7uHN2G  Λʡyϟ5WnBkUJpu諐 =l*Xh3PȚF'u#)r1*c-F`''?K<.<񴱷c%+pI}U sGY~qfƕ npalǾy hE(b׊,uAX.9h`nʈ*4/:Q%o9.Nqܤ7Bg.( ߝnZ{X]Y#UE3BnLA0:sc(@,{cVc>ȘP\-*̸LHbѻãŗ ]wx6ISD,.̣PG_ ӔQD JR \ )W*W4rT0NJ#L3LL^m;YNacTdp6ncxtu-Y(vI[{6:MO@}'Wg,$qyI'O1={x,\w:zz'wl jwPyĭYQ7i͖Ǘ=˒hm=,ԕ!;_j{LP~P0}tA) >{5o@'iwtGpsmb [#a$ݓGܚdkvdXu[L6\YFEY@djWҰ7+Wd_: `*\t-Ӝ'+`ɛ Fu.c' 61ҏ(Fhȋ]b#B`OBtmߛ=bl*Gz{[,#Pu4.r Lˠ03h2eb=_l#Uk!a0C4ySw9wح,Biuyvxƭ1mBuG/w_s[e;dO <Ìр`q7" fbcK0ˉ-HCX 'uq(>fRT^+yP4 ir].g;CKN) (.K<~,1]8Dsw7*4If oI)-kD}0?%HK2jy'*rbKV2.CD\߉r ҄'uǩO@u`N ˎ&s.ia/v:JȪcjm8Mklh&4 yv&tTbDSv+^C&p1SsE1;1(lF-+^Y(E^6y"5a ݜj.''E^Ng2)ߖAtr;_B"7|eh@\=[\ȔQqG-2mÎ<78l1Q 'ڤ\?k/_oiQ.xbJۂńfeͩٷ,fnRt4m%1TN~IE,u2Vn/?hBM(f|}A YӊlB^}qNa"mR ;#pQ4.+wS/ hPv_r4Qpj'g:A+m3>\@T Z. dxZot~ߊvs槺1&qw0PyyLc!2d$LWG6/;[u1{$̏LbTL0{~2:̃Vq$9hx-@GJO[9jkɤQڝ#PkĭhԹdNE7 ˻ʦh2xN3-,\8lGc+=Q$WՑ5UQff_]Ar#X4);mDd*:T`ۨ.VkI킻¢p 71q:fA6I4>gȲ_|뼃ذ mJcjZY3OQu^d?KY ,9xkKT OR^*빚PAS4a遼sǬ;bkT͝ 5h vㇽNWr 3ϊpD948Z ?JLXYL_5AWY)Uyqo=6PMIS:ԖAџvo]3ĤKLlɡN*+\IчV#4?];˂E}g= r`Ab/::;L.םF>vßڈ'U8&NQ`;iwC z+ 9,6!-k %bPY:\v`@} Fzjb>܅p9k|1e%>ҏvCoyA(9x O6=uSQe^[M=ˉx-rW| lm7BME6yʐLш R!B[ فO:8hnd c1$2!*op,m.Yvء+(.2HkxhoAmG\c]M\5NoZTf7r>w'h)_|HS/ɱHqq ϰf^dn5* su3LjFL4(!-㫒Xa̤f7YڙSWV=g+4MV^!"7G膩B|SoNo-gguq#ǭ!>= ڿҵ,Z0|}=!~{|[s5;U\zr2V_w'SMo7 ܺ"Ix.f4$70E-,([a]th <AEO(aު"HqP[2/Բ! V׭:]KKwV6JGxe ?yӚ>x(9;?6r(iA4  ,hrN kDin"49K^+׬g@-&/׎A H|Sj]rm^ٮ὏-o}C>u+G歫N$Tnb@އvşy QU.6Zֱj^>jh_8tWcs$Fۨ= dݮ(EtŅvyf9ۄ^ikЛApA[6#]`YEK#u=ߟ5~{BI犻^.}#(=ǼijV|vs-xU]Im8#.|[ U!ЎDS|b6v)L"D 6]v !y|TT @Ќ@ܛI묂J]0yi,vTA&tx3\g0sMekWpxp|vr4'*鼏>̲殓\+:81Yt.I{u!"gmjⷆc ;1B$W$1:(D3-C?*MM}Ĥջ^IsJͩlB/PΗL  E;X 2Ւ!%$ F kMnY(čsiTPqO0 ̔4[T:/ n]D_{p"M|r~8-)CՖ#Xe4MG` .ƕdU-4߹ ^MFTxWsIKqI({\eJmGsF̯~󟜬uܒ~1X2~ag׺),ۑζ(]Q J̪xJ;Z6R(ڍB_,[u|QOqBn9EFUD?%1ݼ:0EN9nM*c_֊}wTND +e7!g(8Uz 1nOXA'֠0p|4=Е&?E33 Tص95o䬏c5x*8N1$C:kϰ KpU8̔=Co `o1v$~oV8뎸*nxuMn•vy_IO}`o| 5Wy#dmkBܭٮ+&z\5̑QWД×j2nDnX)wnPŎ4]db>ehS̺k1-J("uE|~\^eT*SRW;IC)-וP:&]fzkxoF@ƅR r%oZ!{Jr>>)Z ,fѡkG˟6 -F]WȟE%3f^Ts2a@Y Ej.,&fv5{2Ѷ Mm189qvX:i)a z~‹EzIf!EMR~S%Om|,Q*nh^P 8SSHʩWht/-Łbݶ컓M`yݯWA榌܆+Cv]& "rǕgsh]Y~EU6`"΂o]& ;h찴e ԧ4ҖT muYF#&3¨SEC%`rvoBd\x7:WI4XRfO!1~;ߡN? "3" A^xG7p~5OTY1-pn[ T*qp dGA 뢔e^Jqĉ b_sA*.ES+&`JN4Z >׾骄HP;V7&|ӕܥ[mƜt?#"[>^NtKBqq07a2{;􊃿( ߨf,tnUX]tל nɡEcr/!_'9KލRb{F+ᚺG .Oyc KOn8g:;]yrbh6?OCg N(V: `vgA M_>vcځ:DMܛ'6 o>ݝ,rl.ۖ.wHE !\[,<.$ii4`ŵc3S*糃5As6QWxW/~aQ ۝tP! ;t`*B{/DQ$׍U3,F!iRj795'#a(mߒM0"x̵`!FƚV5!j^nw,P.;rlKI߰ KW x[ UtP7?z9b p1%'HUdY d.y]ʬhh "ULPU,n8,"՗g@G``9ycU"Dcz3e\DUAHCSpHO3hV:2]5JLJ[ҍ}2vP oIHֺ֤2]j.|`Wk1lpv}坰m&2+jxзbɴaV͹؀DǾ9LIVaͲ_]qCGo::mYuR?liBD%k$$6'33 N&IԯiLaoe_m ^FC77ri]_2l:'3z)ug;Mu]"4?˜TSTf)؂;`?6QE\7qOxZʕLS 1pqm7V2e(ҿib\ekxX̝55`C!_wk.#}n݋!9]Ŀ |FX=GPnFfƐqH`y&61m(c ."7-p ^q?P;{ #c~co]K5ة>͜%=Bj}AU`Fư%-3{XCm%)ԸEb"Wn*_ y˞vɱtO8zR6VS \q9Xj17]ν=ЈW Z(N|gb۹.BeT ҀU[&,dBO >qC7L€b*P '<&LobYM D"k1hH\=EJ8%(11PU 0m֥lً1 h( $ Ԝ3OK`~8xQ9 bF]w[3^tŜt`))@4bfDɑ-7dwcbuƹ}Jfևr3W 9=ptj@/0dw(9#AW_gdRxq_i0bx>:CigtPS;>؋/)Pr)C,\z3!4S%2рHѪ?ԉWՕc sW̐Rlѐ40 bC_R* #bzu % 4֛7nU*M/8%yJGKȤC;JOay5} $ n o,T*}3E##Z۲zϖ(p[!GqE*$=|ys~=$QnoK* q%K=UuWؐwv,-Q .*\CSc\#u8kWe 7ˣ!bլwp'9BodGN^c5FfNx0ճ+ UW=q9+B6-^͋f5eZODW.[̐F!쮽h NEaâvd2۽2kn]@a0a8& >3Aj6b`}2Zvb:~3Ga>cZKn lK~5"L{yDDzӲ/2A9`v[ة8Eŕ3D^8S A-t<M!)h;#*aW]NQ^Q$Zpԥ>42&uT}Xc?K/7d[pL8K,5V0 ~* mT5yWHkq9i/)؆CCkjLȧ$$9٢zfD%\i`Yj /{Z+@ ^v s -^0m#ge10l.]Ȝfq2) Q'oȤ३ơRtK *X~h-Cpr1ēvB5[1s;1`m@\=b wM֥#K8=A1\)&eZ;$+i@$ym[ zs Pɋ2ݖUc[XG0]'!71:zƣ^3v>]:3iJ]V5C\IԙNsP@x:̎ cI sA:ُj XJ]>jZ-Bsnom0Z _-IW &I=OOќG X|zDL_!S/iV|Fr]fv>LA99BH9g¯fj{@w<ҙ (j,‣前 6%"y%{XߎLh/xc 薽&"ZnJm}4ٗ'Z!+PAN!>Zk5˴M^_v^ێp,fRgP0>>ڢe_;dˬ}l%inx=Es!8F/to3_l#Ţ^>N"Fu4 GUd2L?b.anx 9}:Yچ?n"1o)juO|akt#<)?˪Z uƐ0H\a ѱJ3!- 2E=)d-`+\7KIz9XbIϼt5V.De!Xxݾ-LPoX)T؜sjyOmeH7!;&GKEqQA Y:JRR8:LcʾLbWITmXX4+2Q1lC<| 9>r&K3Zťh/<N5Ɵ1 IMTokotrƑAxmĎybA R~fm9A,p| Ix -. 7CCJ1.ؔz*j $U@8n?FN9&H`'cm 2~8C;W>e cYUСik6d^v:?lSQԵazd㤇)1`q/m }.W99Oln6 6:]N_09$Ϻc#ᮁҿ  xx>>!Ba@gHOԇ0% "F˶L&'@d:AQ'qE3mg\@5FK``'N@qz/plϯ=8r.~֙P(SIDk/Oa" :|Fz٣*!ēJ' 7X ؋|g4z-3$1gIJó8D?CW<>6f]IY6ga2F7tZ!1' /xIlЊpM>{}p*F#/?DXChgBnRLU7 }/ OIF+ࣛjQ,4ubqI#CCpY~u.TE+l]vDeO :-vatI4FL.]*Zy \tJ1@4+ g+]DWT;d4]v2x>FwëNɢDRR5ZnO锡=EMz]4gâS6 [¿%Զ%î<EnܪVJՠd3H0k\uNm(]bO0;|;­x~E}x2e~`0[ D$Ԯ&iF|¦KV 9HHꇏݑ338$`980<S54IŅ)BtH%*cLцgo0}ܬ:xK C 0&`"8JYV[ ڧ !jf33IM ?yĜG:l`B;AJ N*(繣96W6Zqrcbv'vruCZ/Rej0rxA;"*38T]eLLlIA"`skN?Yk< =6G 2`4qS&LOUo8Kxt e(~2k8)]j HUuMXgĉs|Xu46@ $uhـFBe= c%CIeF=D?.gƄdZK`F5t>\I۔W}~Pu :q`=lV6͚g21A «%*lk tl<8b9&]@ZC80&O Wge^g:$ xV&aCIyf <!@;[D!]aF"|јW$D䎩8$3B'(Hoφ &3|NmzM/g]3+ƨ2EL@ܜlrReJ3J'Oz*ݻsdeAq>8VZL+n,?1 )^w T,cx2ș<%EtKqrzVb.>K6%L$zOowf7{1Q63kС3.jhn גJI[f@-#8kijl%E E0kꈽ _us>-7bS7i)BԫcA½[9`/sff@ $:ٜMw+K3kKGziݐpzM-O?8>.Ѱ)dO-j[r=kK{"1 Jf"sR; 5Stl,vs0JM6uǜ.nĉ m <`!{@,ϫw c=?l$_Jo՗s6ִ^_kyv#}pGr2)H $ T!d%J5 ,|teQ,ƺtpLCv$6uC,t2$̆R\Vމv4- #nI%WDE+0 65/tz Gh3d$5ܯބsI.{)4MrtdcxSyA&\GFV`ɸJO.8VAkՠn JU0ayLo`q)M.=;)n.z8'‚!ޓ|Ƃ$]Lsey8>U3ql}tz\]~T{X(zHR. w>OF4QKVpeR_x5 ɇCotUY4y,3):!sCbb_sQ8WZk/lY>Xz&:/Y$vDZmhN7.-;%c$4uГks[>S/S֕:5Ygd ZH1I 8Cܓ"G߇LdߖUQ3GHhUL}~*25tnͨ6)n;+9؆r!K<rm&v!yt,3uԂ|Ygvc[Fcboۤ^qt$? &{kub(b?}=U9k6hdxynqrn}.Hw~yh.(*81"|KRe-`4=F,iraqx6 ߄(aWLRβgK{7 JgMl d #庳v\G\m,WVKS#c'UCt09Jm:@zl)MѢ⃅3ޑLlj vݰ- i-3컁3$0ΙqKiD||nRjܬ]HʝV/Q=VxcxbOŁͮyZ]hL >j)poB& M[>I5BܔȊ'c"IWJMth<' ۈ[D,L zl:.Fm?埖6MlŇq`EmxJ`K#ʭhb"qA}8BIH8+BXJM2oPuZ29~Yg!kh [<̀h.@XClb}X#vf!@&.8r)._))-< 7#jaKlO!wy+Ap`K!UͲE$/M6 ̳!3(=UlK #| B|΀[cg-/7%,=^$Jr)[8RX]Lzs[V0d~*$4c S3db=\5>2K.h(ޗh4:\iS\mz %!f. ikշS^Y\@r0YY_{1?EQ#mrޜ0@EZ,srH5NE;Gho\Sڲxq~fur3,>7s>2etLR@ӹ5r69F.2vӮ`DX ,GÖ 1L{i7za )p4X]&Խ0QKzvG7䏞ߦT0f%@kEj{wM̅c JІf&6ʁ&/9MYgf@4_ =lQg,^I<`dnd\k 5gwF zas.(~rY6W(M7BNEko"WS6&'[Z3mi#ѐ62ufC!$ZО"٤ h5߷<~t^bcݰt*PߎS`Z0HqHSY&ob 61@ͬ's3r:oҷVε {'ޚw?"X nF.w?Ej%)oV>28LeT,Os* R-+]tq"cUCRi죓-j-[HzWj yohrˎ~EӪےԾtcC_)'Jړ*]BH"=`u<|w[`q a%nh)CɈ!Q~Ma&Z-#hI>Ӓ3_n"'X+hzߐZ2#SɤdRgľ\֧kTl*ͼxۮFQ\' IȔ@@t60[GOŝvq7_1{A)u^o^o/^(v>z![Qk&?jJv9oW\oeC(*K/k1AeWğ !l~1H@݌} &6qV& pEYm-֘鮤'hW2rw3sQL-IyMFdw,t}Aܕ"8 +CXpY<tBMW<g7؏Εxq!.cþ= CƷYDN%=@oPG]#Qy mxhL*&ոEoDC7v?!yZb05nTi$FڏܣjH)um|ͷéWGAu~'xV>%e͢o?QpɍԻ W`48lY]X[g2AmTub *fU:-/c7jbG1LF~!BuGA;y5eOY:Q$%FiݐW˒l 0Y^h%H`/4."D:B S7g+,8'(W`9+_?]S\cSHK` {V ?4-.4e( e8s9rMU.A~A֒G2`4V3%8wVsɾ%1M!I0&A]@V.4Ɉhh(h>f7F Gr(XTp|:˽ >5;&p/,Cf[#V1%#_Qj)nl仔ZN~cg]tjOֶRwiGZQAn0'Nnvw*>Cm^@PLCs :و0쫅զ'&Sd\k&ONft $%nZ#Fztg6ۢ5$淲pj~Cc1Qb囻izQss X @_'znT;iMV@?XK1]$i 4f>xn(؉!k"nɃI2V-~8pe WN2&IOQJ#]Z)>4<ߢY/w+.3_#|y.> , d5*IC+B0`eĿm=@`&TL դ@0w}OBPt^1(ٵM+ c %'gu8bZ{xoRW.qlȟ:PmhB)7mI ߖAAiN_+OU$tDfA|xgey$N#_1ɧ ,p{q 6ʽꣵڭ&GLnECjО ;fO ./in_,9'KAybC^@P%h ~Rq=cwʱg=qbkjh[I p~oScn 1eD"mɒknjHC| a|f C왚IO~~ElZFwv >#q!&ׁ|0CGt@OT Sy&+Lq;uj1Oqdl~L*7A=$FbI9X(K5*]KasZpK*4.SUXf]X#z,+nԪh Dd$itWԭ! 0[^[5tm9 ZzA[Fv_,VshwyPӬVS&T!J.is]QjM:j$`^i+^DeIΔ_2ah}4KGϵHp}[QBm0ENBSڔ 8^%c@e\;ơ:3rIe D|eV$qN,q/@"kDˍl`Q7x)0G?tUH)_+3j/3Sܤ.UQ @> ֨g&:FC\c~ Qn|Sk>9t@#˱q b[sy6u9: ~}YªB )9B`ª4 psc2O.A6ۭҬ=EG:[wo;im+G{).ndwfskD?OmrcCU-*<<lSs:eHln=ޮ3cCl覯gx338Sh6t`+^s=oL 7$Y+P[ϱ]Kx#ڏ :鸈q󲁺{Ar/+$iiCK2"*uveAL~_؇;}kQU_Tw~2GoYzcR ㆌ/[h8rg:4 eeǥ1; hay(hzߦ669LP+BfQ|1(:yg/YUݎ?چ怊C|Tg "vڔuqi#jxܕh|tdJ*;53厖?b+ȱ4d*a֡bK5틨]|ioH=3c,svreY97G ؒw#eqmWK.Z ,< wx.ǖ rOGqq}*ƶ0c󈮀x7xJ71R\MZbwGV6g=);|g7qs >aֹ%CHyMn!Q-([ݹ3ڐ$jO Yb׉70\qquYu~0X>V*G-,0/@o,$t=Z[:k9fy^}N4q%@aMflӃΫR32_ČF8oƀpX8Y!n57l͡0.dIyr| h*8Ӭxn]dLw.b Z[3FZ 6OS/G^ہ6Hz!E6# g.!xG0/xp>GcB)`?myLI:5ia%ZlZѓ =Wߛ^HMĀ2g|7g_뤋QAƇ4͚-<@'L,j_9T[_Ҍa='-s*tdſN\yM[ShLm" SZV-\~BiVN*q|dcW:ZGk{p(aV;Z2F6&S*  CM>m߻V(Ȑ`tG YI|ebw*}RZ MaKTW*U茙*HWU -祉YCbj/1ayJ{Otɇb$v<a%D 7[JZA1+ioQDoyzi8i㉯5'A.X4B9oCzHDrƯNz3(pLmZQZڋ#myu>6I? #Q4@~?^I[ M^^ќ68bJ}!UCd6 }^ )w}L[-2?&.ũSY"T tcF# :ZRLƊdJ&4t7YODGEGbrilsL6Wwf$E"e X?H, ;v8UbˆE,-YUF$Y"t<Y +qod _5[}.CI,.\үQ9f5rn[~<;V]hG ,G. g&`5&h5y/ ΂s?Ce|bNqJ0.˅]q_1qEbn= Ľ<6{$ikܝF G[qw>gMcgO&Smԇp]'3x10>BG?́q-xˠ6%mTDx4k ,H̹aNRӵ1$( lJZT"qQ颜d o':QCS #PtT!@"!ﳱ+-Q3wȖvjE TG/;""b0.G/,b&}ۛs{C7*A pB%o⮪ZsrF?q\n+⩫B1spPHtW/z 4S 82XLunzTdC ,?*He#9q 9MYc."?@ J4PP{2Dn kAz&a8]ÄP4KL\`y gdnn(>"uβ6 !DE䁋Fp*;:%BDG/Fu -:<ӄ]GH05 L_ o">=ǭ7i&0kaeCL$/*d@o{eI}8ozICD0AE,Ig*!Q35+%}J nH>qlw(0Ǧ?t5}(';3h_uG0~68(k7\[ڍl76^}gT9޼c#If)IA''l/2Fef1+#?P˖%N#;Mhy˴]f?Ѻ:RD!Hm~mTJ쉅, [v!߭YS9*%Dϔٵ˽-R&vOn1>Obw4bTN!A?COĚy._ռE{ɽC:ݕ)3$bpd5=LBNR TB&(?gZw3ኁ:';{J%$b+_=Ua$47՚ k>UgV*L/@\*O@SυDW7$qY}:ӰTDRoH@=:0lw!*L$b-R`ͩ~",zOõ 0Z-ꚹSؚbQ3\3QкIEvwBD|2~l 9" Og`"aDZ`[:J/>ֿTeƎp ʳ8WílUTV^# VMKcR([dK^йTw|mOq1s-㺿;}ųgX;e:Ԗ2'\2/^D j,昦nO)H}9鵏 uPK#kq+X?x&[tcaWע'q_7''̟̾H%_{Mi*gs;xԋ"CR=h8bY{xM GT.S(a#:USu_̵爅\ qnFSm"f`Ab`mǖg;9LwF$G2Q/L>PPEuQNzQ?5"K< I߉Zwڴl]tpjl齚p3b;$sf%0tЃO iIՍ)&cji~Y|tBEkwN}$ٍ)HoRסfoˑW30F7unkX2otڈ&>u‚"Ofݿ{,w"'YRk6WB.yA۲Ep\+NʕvloJpw>Y\؝} >JjT_]\ӧ'=vF1ՋDbbhPLcZqjiKxH(ԧb͂z[.P,q38zmamWޱ-Dt6Ae ?;g4cev0ks6o\ѥ%63\muCQ `;i(N\czeo:G)oep%P]*F"H[~G9OU? 5:1d/,t؆]=Hp&-~C߀1h_(KH|ުeRZ!J(_ʧA+% +^cuV;#wDU! :ZIfP% n0i0+髲V{|ShɩrW.ֻn-%o\,9âkӀSۗ}n/,JH9o9mOhuF"fbbd2N3v!2w*).^ mķaLPDi)uv^O cÖgt=/mA]Eۜ{{^&d)ҁ-ХP Ve؎Ι(=JJav{N7`9d:Jt ~&W{ע CzTO4>abBӍ#zLڣWz0&B8W~YL %c&,-`Zx8>E=u"C wgc/(TQ)~g. 'mYnM3܌!c"U[!' #>n9^}'ap_ (d@ߥWߘ%ԅmGMw uvK,"oho ̜I:S燃#3N>`q`NGWg̩T!9Es=Cif:Jkm`CF+m,36G<D%h]b+-Yc4ˑq)I?,sp&*$Ld̮6 WQ݃-x+yco=aj䢅\x%hc!,GQz"v 9'>lX}Q"ui4R%&%P=!7YEɶ(`!3l1vst#go@t&Lobo.P9PF@H]ԏԜ$Q>#A h\>c[5q]߬L#ZsPK+߿'B ? vC1z]6gqܒv8y +9t{̅Ѿsn\[#%Q :/Q c9>U m.@w* +CGya9#UA`/Gn@ɶ& ˾ۋڮj!T qLb4,=t[JD)8R |S;[>] F+Z2CĩRJ! Un39o`XXa*9,t@[ *04^qk+ aOwӲYSs@\v=VIOhd'V^ :W*F=@L$?Se/yXg*eVf(/OE>$Eh̿ol(m7o]pGR3u^_ K&$b{@7X}E^ qQr/NJ/WEs')lXD X+st|63Aviv 6;'@ms[&޼2'З1zb`$G0§Ќ fF R3^90p?My)u>!7PRp Cu&EjmcPV!9q6JL*nմO^$:ۆ掋,_!"} F74.ѵrlͨ  ]㊯ﴉ:rEa" ypU_'߬^&> ͍g.,*1ai4faoS1N8T5q[q:G_՘!T=$Ib3MJ`B r"Y҂Yר+n,}tACɁQ R)" IM ڤa.=BQ[BQqC%~kF+b;58mNׅ#2Ghz0};t'T"JF&|BCy|:x|qg<-pExhP @|x {9-z.>sos-žR砙kk{~\V4>Qk)yXi?;nvtL?ߙ?ɕ)* DF>LhM F'J%j  iv"STxj_7NJ&b^M3<KFXێr@ s|ڂa`lJqMQ֙=B:?;oW8+wZèڞmjgj6&)^v9ߩj(5L#^jog+ǎհ,;nYo9\L2J¤WI)n 7tv]pWAI9h:g=6Ww2u;â܇*+oG$SWdrt6߭ Tu!>r Df^JrڠLƨq֣lWMiӞY#+6Wȇp:ƍK@+h\Fw _lCD5Ԩ-oK}B8b 7r3&Hմ*=080 hT{#\ \2`_b[WQ% 0 2?ǰK #壹ğ19lC!WK@Rܺnv' 9J1 nSKA%]DD?h7ջ ᔃG\OX˪]ĔjТ*q6W֚K ^Wt=怍ճs[>5h LjrݰPnv zzY.Xl/XgR+慽Y@cVkG]GJQd)Bb'ώm\mڇ\.`DWP&վ0N*DjZ\j+QuaSdge1f)E;Ʉi!;G ܡk !AZ5P-Ѩ5UW'/Cc[uLʑ1G!!D-H ia&!R _Ūx9ExLa'xZȪp0OBt~PАܒ=uS]ۇ g;< I#D0F@z>eMݫZwDz3l6 .^) 1T9.$XUN z}Z{]Q>THqn]+3KiSztd [6tB퐑ىư}zlWv4AhkGx'_iϺ2NbWKŞ.E##6hr7ܙX!&G&7'ꔈ.ms Zc-#p&zkdz~9YUAJx9MWF/avڵfN,.{9yEn[^a̪5)'zŅP&76{?gnpdڈe#kEMR/`8,%davawpܸKO[5uOa, "NC\pȕ}ꇖW#zdž8{-o1 m@WbsJ'vxMJ)(^ bI ]),s8!]\sƳ!!S| h`Ab.y.#WZ.,O ǽly#QVBt!7gGK~/@j9 >&f+z̠bVLP\r 1*KΌ瀦 (+㘫zUf9&CJMrͣR nzMÏ gV>\YH}><4|cY[ ٴUR>3Ws_tXn6fUצnNk2B}O ʄA-5AJmكc_&a9ZD.%z;^q!+υ`Q;#=zW0(߬3.Rv bF`e+WQ\<:+ eBTH4`%U?MιsKu$qf{R+@eqw2 fd ڙ]̡e ½.QZKJ &%FFoͺ_-"oظˉH З.dfƚ>4"Y: $ֽ;t#gFx۴a:e]Ps;<1FALHo; 8ssg iQ :1$[""KM u^m[N"_Jd^OCE* ԣR/۾,(@  KxLQי|b, j\t|%bZۿ\s`Oˢ*@0pyXZA\ i`%^H'p|r![6yc4K bq K-N*WTatd/d.jIZn{v1@I0!9Slx:֫#(ֺF¥JSu4AlI,WbI?nL ҧ;b&-"wCؾ&*M0][Hr!d2W<t֭q l+;o| (B,L.2̿j`yk5c1wЅ:\|.pkz ,H$cO-Al!B$5,4;qi9Ay&'nbs)iC=tAb^fmuvp@uMʋ1\.U퉗`С){{D)v,ȍɑE[qCɔ%!5X [H CqUA. @'Eo&9?Pr^jzlMݒJlWu}xC7t=@R5IF{cԝ>iq맙_3# *Q5p]i #$"HҺ)I%ׇ l$x b\[\yÄ{M]*@r=AdA}a]hd;R8Hl %Rђ^I i `RPZ OdJ4!8$s? Ht^L*ԣ5nae뼉a2K7^N:)ۘͽیlه"Ё%s/毨R<+"7#]`7jIΌS"}89yI\qk䝿[psT'G Baf޺ K7GR^Q/sp )(G( <=g7xe0N!1ڲb|~qt1X"mעcZҎ A*H >|MPSiqV5۴ kUH ՑH绗1nc{)p`GiGa_T›LY?Z}5\MԵRHфijPdXt9 gɪ^[,(-k>L',hs8&^9 #>Q|SF "G#r6~#o~CB@Av 촭WbjzsQQ'툈'켣4b M8CvL5/$=|b]XB^l|(dnfqcT|^lc )"u'$27.ݍAiݗ+ _HxGECq_(ݗ~ {U @i*e{!}@{r6]$Yۅ3Oa[Qf+&< b]a V[*U;`h.c}7^@Za$청kp7D@n"ɱoE9lOS݆Q叴ڛxrY]o5<^)D 䉳1@Ee8~;~i[(fQ^ ",S@DԪ|G~#³($CFZHX@5`iZAeP5cz.wS|e`m73ms*&oR8Q΄rV1p~pӠ5P5[s g^jFoSh* ieL_*8v yqi{Kjn+Cϐ$v/\b V Aʋ[F{=SR#"P֩?! &Ԁ5+nɌxFlHV)xT 5-uT]#:b\Ub% Np璥-ϸ|~3LƤܻ [pcGdA۳"įvIB(9.U*a0MָcsyZ}BF2aW"m$ӟl2mEOծ0 K<ڛ(-px㫛Xz7vYod)MiB6(o߲c6'@Ggz'htzWwuhM@0̟>O*j2hb>HV#QSqsUqG?K$%q$%d|0ֵ4dV{I̅5^1>+g,9Fk}$u KO7!Îja9Ol ɻCߋ`R)Ԟ)]71=b:EwR3!Ӱfv"a<n yuA.ׂ"TA8/QpFt<+Lhݠ^ՠ,VO5"y\O(E84>ŝzW\kWA!`X?kԹG'Lű"qD^ɞӭx5ah}8ɒXT*bI)])ѳb#*oh@枚]b(9$-j}c͇M4QR >Vo1ܞTW'PuŐseb8% Gv}&BWυRQbST6E4 vWqPFKBnw.JQxh&ȦsfW$0dTL?M{F^T Iwsi66>i56 * ެb@BH&Cf SX9.J{לy?`wZ(Nƞ< G^pG8NOs}WMk4ji>t-iX@>l"ӉCyهH'E-Etp03e 6*$S{caJU#F O:%siI4jG!;N3[aY^T 7Ojmgk+Tyy*9N L)q0Vރf;F(?YT~ܩ8a~k$c}GA@|f±+Z4~" C$Ѵpsҧ2"zLj jdAiMuG^Ȳ~GQ}j?|2/|~x`[R\a|XIn9k}+ҰJZt;U,պkW KhAI\pdjجhlfDNz<}~+g`{ wdћM1RcZsDaiq|^ڐU"@[Ahboۮ#$g1t YCm_~Ha]тFJJvO"p Ѡi,snjM\4pq9KjչEpo%>O/6XFIb cGۿ2T-jq"aۚ8ԫ~c`C'$#!d .WS"jNdГ{ ipPH$~>TY!,} kt(X╗ ?_[6 Se2F"pfv-oyMZ ׯYM ۆ~v{"Mv_>6m>zga O}jߋdV41T]d`V[,όZ?+'~giJ.Ɂxĸ{^*=F "\ Ouʁ/‘b0TwϵS()ƌ"x@"Bu^V^Z~/[ 8T*L1V I|7=dnJ`G} ႕OV# OY ?iE_ɴ*'Zo!\0c<99ԚnfDz;԰T"ҹ##B4k;GWoB_ 5< ΍eyY9䢑}-dp~m:<<t:LpWrzu+<[y$rfGKdgW.-U0sif 66q 0f\]Bg5aHVD Z ((1;?0BGHQ)5g )AHtmg.܇O%d=.( rB_X -Σ=fÎH]gxGFs,uRCdy c0^3|cSG`zm$!7ť6IH8$P4}ڎ]|G&,}8 !bƯt;읢:8&7W]aL-L,XIc3b jaHd7-?fHÃ: 58QkUIwm̈ŗ*[h1l&F"Rg-5CO cnP, a/ш >yh{tMir5=ҿ?) @dTBՀޫD]. _@j% ne Z@ 7SM n[-7h@A#*9$SZ_fZZBdi~By'.- V+!|5&>,Vۂ,mՒ@Z55!<i+\=G&r\>9>YHP[n]5*(Y,4V=L~/vjru.X-HrkGz;@ciScޓ]irJ:vŗ&MȪn|oD7~un}>hQ\z<=l[Y$rbt[784ZfhWHFh9&(2?IsbQvuLb+ ?w>Z&z&Jn3)DlȆLGߵJZټJhY("ΐȔ7ļCZ>!~P Yt4#1FeܫkvopWbf}װf_hT1AMKZ9}ZTQIkc6L9nG&=9t2@uG,nBip<5Tnve{i9҅CxF V z5?Nכ">cӺCHҁԘs[jnlNjFJ[ ۲UVZI^}X:z6΂NEǭF{l*uySe |%^_9Q䴐S¤ Lٛ(b*8eد蕗*|ܠz!_rM,dA[[Vߨ0wL9.ڜ0@݃yL?`\udMxKI ב6ZhbCl_ mVSWjԭ.)v6b &=w &ݸ5X&%Oank s'Nv[wo j Aܗg'^>)s"vqpjX2z$prB H(:p`MVyFn+Q6 ea/CVƙjB%_!:];3a]¨u\G)nF.Se`I%ˁ7Px;.>A\6곷eI/Q{~iİGCd iz!ih 9=HZB'/E.5Pu3// Xr!?^2s^A1 Wj3zM=~o;v(xY:yL ޘp5X{'SފmW[4PDi^uD" 0Z{ZVaA_8wj,`Ca1!$l7z6[梇uos?#OV RE“41J4r4Ӫ׊y4!c?-j` y ѭ;fM c(Bϐ*e+AVuFc!<1U)YL=u8Ńek @vG5e|G ·TqC}7 *ʕۢHBʱY$Z=xE/ ;MjIDe!Lb7:B9ep.]jf4U#U`Y>I/5c~/4G)B= Nɂ/w5f(q!0BB|Z;k,* dV 7Y*\:df2j\.\,Gm/drY &f& N IJ^|ꗀXa.&3¡Vsc9X2 DfX?0'8z 3q̴܍4[q"1K1i8?Vo?1';_z^:`P-=QךAvn y17¶џI%ֆ?7x$m%JՐw.`ZRFpB&Q롱'73rRt?>|Xp"ڸ{%v8I-ecIctXAv*CJ&p2gN,`Z;P߯.`,g1Og0:&۝~l:/%P#" #>e6 7͓F$Ѽy$1,s/{Agm*Ct5ݿ<,f5W&Q1O@%(a7$;6誟ޗ 7 ]BvCA Ũ8ZчVdػ%a2 ˉZ)>o+Mچ oIw$/X 3n=ED?HfqLAl ~V@: ҏ$a!߹ڧݧt(8H`kC IV 6 9E4Y5e >waoqb>c, KR}]d<$dU 2e}iJD].)'ݳ§53ҷB( hKg uu\ lDL>!('){7$JIG2/=55vmG_Q}{ 1[w$n~p>ֵrtHQ@y-}i}l~A?:f1Ioe|ӿ0 p3h/2UK׾p v$@]߀޿0{& m!t(R)?tD,dG*s)kxAE_XNi|>*bDϸ9ɵ^+<҄4i[HJʻLIl]KwԂ}Hv羢IRb ,^1 wzCF|MG9o;.I::`q \ȨxE~Y*9F)k%ԯԑk޾ךa+jcV) lԝqQ 9QwqdlDDI51gƗgG8ʉ\[]}ņ7` ҟarO,(#;eSvBÖWزſOyu,%2+ odqꔏW?g;-fEѻJB9st@|M*e9"v}E,'[d.ٕYW;uŋn)X; *Bw5$ ˉUگF9T;f4~4E[m~+pp'?~H7w˷>mg˨)ʧ Av=(JwAƫ[^=ʀd+a p>"/hY+5w`^|]pjy)_&qyծbsRCqzŸkNS F}ͣMޟ7=P9%°R$#ߎE^S&=3zןݏ'Crlg52  DyS*ިVQG LByR\X?7춎汃ar-ELTzF׵ -t<^Nճ>+[ f ݠ]`AVKˁ:1F,Z~0gkȔӜ66wo=?z99EPs!(<J4^`6b@Lh@xtJeFdp0!صKm9_HL_դ\k-IC{xocH4%_rmjX}AqRjޣ8z^ɕ?ӱY(a4CרHA=O4BEC=T_;r6kXFrKH @{ eAْ$zԺ4A~WP7d|~AҨ>Â3") +Ԟuz+^ᴆTaZELeBf!kY͓Tg]n!.)+,\x2ف-~ţw=1C3T/y XiPG;;l+ D8W癞Kü^:ҟNw;fKwחj hY`ej$"KՖJV~㜩eVos*)̝P6\c%gL`ۭ]@r>I I=xêSK. 145ÒOTK?d kYb4Ò\dk=;:!+%#vɽ k;?0kTz Wǡ.>Qި M gH(y 39˕T>r=R$stRDJzK![y67M?ա 1]`w|=\;ysLS|/<$AJmPMX_$Dz'H^K֩*fnQ7j8׫~=֩!Qc[l*\hsut Ӏb)|w%Hsa"WaӪR XGRyTie'jRG/WH'?eږ zdѯ'IM6痍HɩT"k>WC_B-Cr?cژwH)jZuI 0ٰ Dxy|  R{-ibgO#$ݷUru`˿akrО-,.5# ~ ߦ?sSę`/NA@-skTG&6XapBr8zMVGFs'!M1_u:U҃ Q*qs%KPx5_ϛLw$~R3L=^Mq+%?X{yXj8fƾٞn~@GK<$98àO{Buhţs yzG$<]m/,#՟u1Վ&듁/O'bC̽󬞄 -U!a2,/hDb2pu?pb֧DBLrB'5 UsQĺJa>16:lRF/uy,B5(FSodZp =Z7}+Lg*F*|?;@ 10Pѝn6i_m?\rVxg"=$z0qq$zNTۜ,JF06 &Z[O3֧rGlt67[=J DMGD ŭ R%{vU%VC& ּq-FdTeL<} JñN'}o' Ln}d潁MLITO @$ c=:vJ&jCêQsVy[xX,=|3Q3vkRƏxQIK5B&^0~+7Ne@ 1ndgY7OeBOsVX]j+:떡@k5{$.3x2=z;nnK٬Hq`8z-|>km,#*:GB~ZćߓNO̺%3v45@fV©};Ĵat`Kީ$e)oʼkX\{aSPYO9S7P (;ȶA`?%%#KdIuԞT Ij `#l`⒡F67 VhWٖcwGyyWr8R7E2Sŀ\up7[Yk` xtlYa J0U\S#7C }~"yLti hG .w~yE7+g|cs&4_B9:OD`aЗɬG}4Otjs?c}ʂi䭵MY~L.Zδ^}b>1α{#E opjhtpP!Ů([0_gڈdsnFwtX((02kOeaЪ:7O7Hol\uSX ȽߵYAգ  v93= R/) v+Wm_%Vo\TSA[\$yA"%^.7ԗãB8 *ct^ɞ%/ؾ<&-uq@5*׃! k0MqTZ1^K=Ggm5;o/VF8(Lz'Q#3兤l~ Flj5uxW9 ܏.׌ 'bx|C܃ e,ߘjȃcR,ߜ|KQNgtJe+\SSp ӰHlW4Jnz(`nui1]VlUGVbc.̫@ AJ 0 &<_l-BцzHV%/"3*SM#ii;b3XG[c]Fbњ|Mm'/nס~&$`/?Vm\R@瞰@R%2.Fq}Qu30(PGpFSQ4{'Y& 8T =)A$`l)"a<>z(eӰFp+B#[NØZEU Mш)qj:4q- @9i\Ƀ[Ī%$sf+_SYYLi>= VDdq'&{b\yLPEO os:&u2`;c6WZJ8"(A/K:> /{v9qws\5ϙa [d91w+R1vpq -JAޅfd $QKxlҊN$ ۪o/Hkq>Rl&>1~_v:%6 D ar.3qc~K.&/a#nw?*tnU-m0>%.R M=9Hykz^&ZjUB}5(~! yP}[BtUB}6M[6^xZ768. EjX˰{ erW~Q4 є>zafx؃wm[ݪEK9c q󲿵w 0 wqd9fأ Q`(h 1$?1n~}f*}Q8FEKo\|Nj{#RwlH#%p ЩE9WƔXzO6t[[Pr-*K06M ¤|_ͭQG<~]8)xdlk/뽶h4J ?%R!8i#"#hJol82`,5^z ˲hvٔud:k=vy2)r\+ns^|$;8U Lwh|"Q)>`=/AP$sU 6VhiE~xD6;aP3&tƥ݊a;2:2Mh5Ƒg$=׉{=hv%,8d3=TcyA 1T # ZLLuRbJ}窢 ?P`)r ;s9Ix |mSV90@HKykREdڢzFS4fUŘǵ=r%{8>f#UΒER0xEӐ>zHb*>c:!e&fŐqMZ{ ="!CO=$,6w_4%e+V^ _%Q2Se4J'dZJ*2GMOY삅X)̪מG߈oz8JrWZjA4qm8&,/"iJ-׽kBag3t"krzӑ>GW<,ãicW0ahPR?|NIJG PEm8T^-{%_HU[f&k.֬{֙U6hs7D>b옦RjQz/`;)WBƝSwޘu!|1 .Pقq j%lvU?GصV*GYEZʕr(lgD^nq;Ac5ygEc\Lv_%F%)q!0Q[ [7t~|Q(.*Ҹc",GI`Lnw /`ȬذV<'Pjڰ-E &J!>:dݣ!c\QppQLj`|ETM%&)  [2E g0KoD'10\E077!ڇftm*8 s*#bz3cVn靑Ďgɝ>E©:[ _Qz9#sSV m 6|w,FXq1c¦ư!TEw}Ga 2$*=Ϻ; 'oB!kekkyZ i\EN_YtCfZƑYk<28A q?\4B*-Wt;bVmquűfEU*:׭ ͟G阏B f7|,j" \ӜYʄzTH{P<z]kj̈́AXED3aq:ҿʮ˘Z'8heaAPnH.Բ 4 &~c!qjdZ"_noeebl5zBǿF> 7|6*K3^FPblo8ȕ1d D66#C"o-kP̌-ՀD o6y%{\\g/ᯄZ> ԌmNn\1Z9"'r)pZoX%PEMHF/x3/ ;ȑx}?iߙz/5O+ 98=(8džubh@Fl[s\]"r2БJO#21]vbn [w:qfg RWh@E82_:pdNLY>kܩp@SXZR8xw )4&ں)b`;P݉YOr_q((– ]7d=ȱ>guon4QX5X9K!uFTo3j*P+s:̖zHk|>LۣrA6opWc`+(L;\5!K ol&͸$͒z:Vg>)]e-wXؓsŐxMOD1O*+vnsUasl!hxlϡVNևDf"H&|. LtNUIǵR|snIģBgməaە@."[MA\' ܍u$jg&764Ck+94ⲰU ajc>Ly*֒p9)طVY~8h0o.\|B=G3Q U |D0s]v~R)YYs8DѰM)HUc.2",@d[fj,:,q1'׆ד&4yHʌhc2| 9+iK=Gjc}fsSߘhm!f=ƌb+;"{ LlsӎBйs/^8dK/e;x_Zq=}җ3KיM>[W<+D"wգTOBݡtM2ͨKo,3R3Fʈ!&$V\Է 犙]cIQʋ ޕrhxABkK<<I7Z/ekֵFGxLbT{xFzKQ~'̮lRͯoV{7H'+ lg* pF,F:V hÁv"̄dfK 6}#;41qHckfmGʹ;mQp7m:Ml%fd"2[yM%]QNA8U\ +i B ! B#z6|輟lA(cW{$SJI7Smn5wld(y ;a©>u~X̩o|5R}}$d~Q1 1Z33arsYt /ez e{ (Xn[h<ʈh$8DKÅ#D|ɑ+e=]:ݩ5#E#%QAuQ-gQ):sl-ndgz޷A}]|;STDQN3Ic* 2y ;XrʑBPS( #!|bQ'W䓮j@m^-ajk۝ksZ黓W~`%|DW>etsLS 7;,@&N'RFIL;Ǧ_58@VΫHF) x5!_ͶKy+f姢5W)Ij1)]FHO?&&'_ӳ5V.^,d<\k"JbݕU.Sū>`uk* +S-B-5}S?446VC&ͪs%P n тc"b`RH±g8|+yZ20A(ajE%9AYml/CIlR1h52 S,3Z "© & Ï"_AmuWxp䅧PS(dD:\+dOa&L(&G13 \ I PAY%"4_@VobhUŹDc[Ҟ~um܎"u-; M5b2 b;`b0~ "B\KD}ɿ\͋tWIqZy ~f͎?6NyM1k*,?Z)_SeuMEf)mDiF^fx pӡ8T:aQnAnQ1Xg~jUՖinIŘ , xy8x[gIunmm9HXkia-[>%vfǍ;\pZL_oR)3U\{;b6p*4IX3plvZ5.ݭ{š攰l2RSODքN +݀X&[[N[/fPhy.IV{7\„t!'R8`)㿦zdKtK{H%|)6?\jO| "c~Д>5g|;?.v]_5͇N2M>`SKQĹ@y &.ha6jn[ !o+Gb9%X2NiIŊxyJ~\eZxKeDKV==QQ b|J淠> ‡HHĤG;n=FI!X<710 b*jIϘ1ȷ/AD|X3 FI'Zk. kunr f09!Gtd6H`$U0W2a(4*2?yiaSѫa܆AF Nx]`-,K^JIy4*~JڊKĞXlP=M;v; Y8^ya`zco؜)zI~7O[0Ǵa(@ೝ(%Qel߭NԨ$$"pMVBa l *9+*H9pDzg'{Tc?$dYf}Vn"yyykoU'˪3g%㬂S1iRm2P4l+r:Eg"rSt@L4tYovf3gn0*uIvrS-p&O%$W#^顆+}3)Lcs/c^u'o-4Q|}rj}@TT:gO)zE6zz|ao4vf,TWAml>6Tfģy|u.IzD<>]V<% -F;<SKFd곎ay#Y]٠1;p6ʨ=7(YGƉ.Lj9jgE,GnʈoyCwt64EfV  "_if~Jђf9PF853Yl3=IΕnf [a Y`P}W5MB=_܄?9ڋ(h u.ګ‘0mE.YY).|cL7:**K8ni@ gm\[f!ENS `$Lw%[ϸA '앜"q6D`<3n7\qMGnY>D- rk%sɨSVBId^18W@:ҤwxO$0<݀Eol&3bxRp$tʤ(cvF‹XD`ݥHQgВImq NT* (c_X\z, 7(wR.j?/;S2>?tu/x%vVgp O&!neɏHDXmE0GJ ɋ8+&C3h?ǘAt`YW2o44%_@ ٯt$?#0\v n^9\쒼0^sp Rz-3׀f*=~D@5sKS}u.d6s2 B 08/<ą( zOy)au #|ppD֡7"n$3b`Y{" x">vvg!0zH`2&6HM +$H)4TD5F{%i8Jk~4"# .ukz'2rZ[(*RYlOM>_r:5Kmu/7 4}eY2I;!9CT6l#^Tfq{B-(HGp/̀mb[5z?BU[9cpE8GHtkB"95)@"%^v`aL XbBhgZ\KkLI&,"*KݤwRQZT,<7 Kӥ}m"{r6?]T&cApG0  >^L$ŭu0ᙂiE؝IQZ:IKEZ1ҭZ^٪GCh*)I*on :Pt+Ŭ K=عS=SuQGDW2RK/؍/wKAG`p Z-{5=B\B*SŤ7_6nhOHQ(V;ضr1% 1N2خ64Ahn_ j>'i C&K&Q1Dcc~ٌ&>\_0HHCv+8\G„C{Ӟ}ǽ`#̤ _ȖԌp],p}6:ENʉn,#2m#{Oӿ (W|ў7bfUl7co -d8rV5 YRX>Kqپ]7i0ѯg޽)o6i9 =T_bR _aśn1wn2 iKCִ8$YTf۞H𪏖m(Dت'&uƍf3gnRo.~=,ed],bcs4FyxMgZea|n[d:,au'H7FpYz*!_g9ΰw/V03>_Bc"<@td*6J$}qP} gu8KLC1aSAm;(kȬ&6Ym@귻עt' SS'^4`&^[PclJe6`Ji^e6!h]U_y K%d4v®(3jǛsz\'Dg[.`Dޓ1aRP2p ZW0M W/BRUy+"fad a#H@NeV9/5'B[ƣcL\;_֞f^%1U0)vPksuAU gIʿI'=-#_]!fԄakQfa,Pp# &^204Š竲:^62ЎHG|uSod;dU ,̒-`hz^Z ΟFG_t)L9Ũ߲]}7ԺK+%zD_cmƲ.2!^t d3"A40?fV;{Mԭ#5R_fn9Կfa3_BQ-)t2b -HM"(R'Nu XKifd>ZKvgX-7fրd DJnh?TRFM#;pI'q^Ȍõ0nq @Ll2Z\PmW~jZ,EGuR)*#Iձ,nv6pH,T:'<0VoMG@>o9ѠHUz5 "I2ƶq>QL)q'US ˹Fp`YvLTbUrh~^wrҼ -';&~yq *Yn/GdJͣ^jŀD+ԳuMo.THFʷϨZ^1'ZgyADZuRfO~*o}p`Xyi p=Z;*t NZ/bx2H71m:$CZ`2.M%qTƋH$Q LBzԬ[tnti8%){Bs%LoGD|0BA0PgHqZ[J a1[5E<үdn{ˑ@>}侬БZUnW3z"@H_QZj9:hgPĊ%{6ʿؑ:'yʆ粑$&t|Aȓ˫Q N/nľbFYFI r}T &K`J)>m-pP(wEOA9u{+iu[PH&ƒTc:W h-4/7wI:MMIT }xd*bCr+P5r/1:b"3$sy9ǻu@w}=L`N@dQ_$ /24:H N0܊óx_ *y};c] "LjvaTH-Kƀu-dF4?tn'Jk2”TK>z1/l+,64"Rz+αl 8#, eSP-Dqݐ=b6r;.x=nA)nnGBocC)#8]rOkgZzbږP~:t pD-m:f'P-՚wY u^t[i;(Ԥd܊ eZlMj= ણ]ν8+G?R*y|8p{JNeh-5xoi1ߦԥ`71%w?{;=) 5h)$:Ap"d~%zȮSոq*m!)}B" h}\:&}f(n (p–2k-Jt: !`dX_q"rM>* C?dprLB 2 rPd0O;W)(Uљ+>crdʀT1!U^/drvʒ2ߊhhX1eF SU޶̛UC껧<k=s⯨qVeU_] WHݲx_ga?ql F]R3Lګ]BZ{65GG[W%U"xy+SK[ڌSM[4MpJa&Kd]*lRAZIDU%ܕOg5W}*% Tt552ےkqOW;IL %WIM2[ މWpxe{%3U#%I֒2^~ۍ@hLtoYt!Y arr+W#GCsAytT'2xu(rFS >cSvPTa6in$7\Bz+1Vϊ̦hp,= 'pG7ihjrzb/Hl},r0x |pCO<[WJ: Urkᐰc%%F:Qn&49pTE挅&A.-0y Մx\R}Ɔ[,p/еCf *k}W7s@mCʠUSmΝo&:OH+ /C74PhXBðhQ,DŽ͢Ę":͖6X>'fd誟ܘyvp7v5k.RaxJBLzd 3Sm]:{z .n2U~Ojv%9g7x0>HlVyW(fx|J]PlL~Û-MLg}ND'z'\>K$ FQs$3[ַb}z+iaڔX8犼w!j;_+R Tmׄ ~< f (nhUí6@(cZ5ox|>CYMRKt[rjqdVQ>l!WEghКw zIrpm?-3<5y[3(2kLx@=R;K)[,xes 3yT  : ו "*C[b^Saz)Mdz+j ,g* -PJr; s|J'_]ic~4[=O iԷl75jӊHD+7]cxzE:z=ĒvCy%SSN0g8 e8䗡ʝO<=\wUYe}\K8,eNS9lklg[(m:V_G:{ݕC+A &xk(} A3SR^ob۱Qgkarj;QԺZ3g82W 9;TVZW 3C(?#BdSA#t;-*i@J#9v4n~(IwjNdp='qbfjŹsK#C) .ɎxBW772chvef48`1s>aHX˞?h{dt,mL. ǿh:p,oN:|bBޔ@I>~H f|{-YYУPW =4_HŬ|`) c7aŀsNԀǒ4`hߍlRD<롔x+ÏpȒw ϮJ "yM=N{H /澫;5r=ҲbʳTˆfsK));8{*0!쎵]4䡕BmĜԨfҢ:F F8:zB2g6!"IJkm Ŀ85 EmՊ,y]iAAu|yUɜas0R}|V^&os.$^i> GUY0a@HPnXql쓃Ȁqi4>g3fڥ& v+{e|ABnfńFb7}κArܑeVSɽөB} 3{JLxo {e:7]LHnZ۩u 绊3{Tnb:i (T!C6}K i ;$U {D0ΫͥJiȷWXeoXӨJ Y-=EIVyUE'oPKOE>^|4R$mKbqI$|3TEgO Ωg"Jm1Q*o,L2uV6ݒ (^ƣUW,UCɎjW":zAmu"DhOJOCl~ja]/)a UQ79-/O7<}%İ&,s}V^ߙCcXRԧWl(ki LSݲ9~h5*潓}$%~OW%`Yo54AGfR޸]3\Es \u3/R4vc:ʺG|=$ޒonYO`y#gŬ w |CW}4l)a\945f$+dopH ~BNDh,"xQbYu4.q F|ѡ|u\ A_Gަ_z 2@`4VF#6ޠjwS&Êi,bc?(#Y&gpx Ҙ}QR E ~~|AgMƶu]N~V1ܦ?" +5/4 QҜkA[wk:~Vr]0'9x@OYSz6V@&;ڡ:HrusZ(H>* 㥀C/t\:Ό@u Hw, Rث8B cwϛ_&Ú,͒ kɪ$Dk6jν Ɨfz1j )m[mx]{i$Ŋ D+%AJӷcs/)$e`qqɵ\ã]]4T?/Nv9Ic k`jf`!qAdX07GsU/pOgg>Ի7ܧ[ܺ@IL#lη3ZYJ=/]A#V Yyn%y@B@K*g#;FNecsW #dxX1&heYЇpX1]11xnbH6ڂR.;G7MawnA4"u+d4-bvSyȱG,xH>@˗ Κ@3.s-7חCϬhvTΆDRPm4<-ݫFE޶tqbrHlupH$n>;ݼN/hV(ۏC9E׉\˻,Y[y\AU8{$lhǜY[S~Ĩ5L<.wE|6&CWW jomwPHH3mfx/2&=ϑӡjE>h.MY R4H)A|? q;f|ūɄ1Z ̦xy%ڀ~t%Kur7ײ &y2'OF׌EVq +B&φh(k4(Cq7vྶh@2/Hk qi"-hĸk*)LIq!{+#MaA :m~jn@]66%o^sjr-չ$bOaQtK&.M~jӀwZ0BeƯ{ʓ6bw֬T-w.dNHy?S6@V ==/o,t@{ U]cj :]q 7+_+ũ>1Rg WyVP:7JB%' *HGworX{i5qGH!"6pO$bUǢRj)R34X@/銹.#D=gfw6<&}?/+cnJ5maEVSܳ>kc(dh8o NnUQi[EETQ]SV• ]ڇ'jN7[\H;%'q jr)vYD+j@JzIf<$Ly,6`~f :XTẶUn0(>_0'e9Ċf:p&@QTD0U,0WrEhܸB+@53H^(.A&> iaK7sz±Qxj'%JGRꂚ!DΒV|b";eLF/C W_cQ> ~yL4 :(*&vn X4;3t${ `6Jgݮ Ig]Q3i#ѧIb'R밊v塒o_7s$0?Hږ>+Th A&|V٭, Nr3 㽴 Kv[4 ,kyKI ܼ*+Q`T?M*ho@Lev;n_N׸hK0x'j:{ A񣣸/}SuHXVctMҭ#J;P t0AHa-(0 lUƻq+H161O»F=%s^iງpYBJI5V'B"O3UtvJ~޲R,4`*G6}4cego54Y@¸}#I;|AL_k[sR8#82O}-85!->84o Amp%0Rrڊmq]A@.V[|T:\t5cR}?!NpgPʗgkqm֋i2s-_:K>%V[Kwc%b9³-#%ͶVϏSG8O႕h]~5ZMa<˹L* Y64~)sMIh:hBu3aacH6^ MQ} W\* |"ChcGࡕ|Aߥ4WGOcQ(gDBJA=0BR+ ypGjTPgʠ=1ej'.Ws\>)e3HE#3! h]BSXl,I)nsq*_Xu~@/aRx+DS]V/<1g`ǃKɭ 4[n'䩬FPĸG\ԨXOtn!;ݶy2`IYaQoG( {/M߿O, -1UcߠzNp *V6AgTu(  >h}쌵d=f O݋ LVΧ~ dFİWj%BO% =`c^&*7SM.7e{_YV{ 0Ws{+[+h/ t0:`joy)&dn#~ۯ;Sk8w1YE]7 pvOIMO-@mN [@~ȉ.%[FRfy8hNQ:VF0#aS,jdi(("Fx]\?>;Uv8!?5ihy#뎺T|z[G!A z,(H.ݔ@UkUqG|H -8Ti2 +m;*\v ef1-# SZ#yF,)$W=\RYvoM:PW[յQd }_"_*vHPIO| Ƕ~ix1q"Ng8KRsrSs8 DKlXp#Su0> xDl H Sc^AƳZA{kTe8s+AfG196w"(-%=h0icTpYТ-i@k;:k&K+򪰓EON6=sY!h'2.C.ML8 lD,jzB^*o(y6$J>G 10ip mr}`V*^T 3<͊HǸ)FXJ|]P3p/%]׾ ~{Oc_$SsdjYd NY~;-!Q]DV9tqa]F]*񔪒9a`@ع:BXPH qĝDI`{5`svUy5xK) =|S+C+d_=p5`CF@J74$-& R!0quRj̙ 4=#{9O xAX[YI' -y4hB>  M=~`a!Ч7e=NFt߇n'>R:S}mzD, s(ռHH׼c'e Vƭ̌vxR90 h="1eZyYmiunJH| B $K7rMS/Y۰k$؊r8շ .J߇uE PMt~D50@sz_?66_]ݠ:ߺZu 0?>uژӧs[MCOrDYۀJt!Ǝs5Kd7"$-yuyz"@NTYm]TPZa,- wtmD3i+%ĖGzXJHOp#az`xVi#RLYH)8iU'QU`"Y.OUYpDA|v.GȈ,>}Ap]f!8iqd/jZ8/Je\ 4Fr":kKRIr(QN`_5CWC4V{?Ao#/8 ]sBj|a@3rqzXאcnĝꂧf^䋃^XQQcj$, ={f3\Y?2KzIQf@!P:];yn~tg}/Ņ3775O^a͒Ddnj +o+ E :B-?cA_O6*댊Oq.6BK:$g)Ja7?}z.rFb,bnG(>%E:H@ tdeqLȴ`0:3]vkl~QeVZXlZR1yB@!?|`~H)A%ʡfF#=QAU`jդ+8?l UغAL鮇DuT$>e t56O,dUџʫ rU>c{)Bػ[)iNkB%:1S=, 竸 WRw?+cx lމhlRRm7`8=Zdݎd|K2YIr .qsfVwBU$yM*7z0oǢRLB.HU`u"SA VRYƵ*KW7-Kt:[ -N E.Nq }l) C86/Gu= H '۷P#Ô X5gf 2Z9uOEfB,N`$1ΉR.BڟIްP] Po'8:u’:v.&%jo3FxiYYE7kPP"9Fvf[KG0O687neE"c-Pk൥9>@%_4]513V15>5O%垠9!'l{IB@x4EnY0S AEf&‚P }@4kŧɦ6+|} Gc9C5hPº O[:Ma%f"RXe4y#?+빫vŃn_,^v6*8 }Uġqn(uV:q[-jPj\=-iWA#d=ՇKSG+›>r&;w^wn׉_ ʂs:h%˦ dIQ vj)-݄Ը\7%?sEk[c-g0PC1–f|Ĥ4 Qw7(S.0`pX݄%kHv IU('(JKN0o6cfT7~̞dLsIj]WYKqԵ@+t{ oG9/7PmPzp ߡ7(8}E!:ә4%":F``BQa0W=?t~GMOr<<6Fvy0c(! r~>o:.4հ7Ҡ"Pi?a˰I;TrXB #K9텛6(2^CG!e5NP<qiB4FFa=#ʫ9{\%*<:ourN?/f& ZrP= 21,Rqe7Sڸ3BIW?-쩕ٳ$'@1fiڀm"wUmʖd"GiM=F.oq|R 2ƙ.FQYS,Du¶ZD|E1IŽ`a0 p`~Anb${ BDX/?pYLf=Z>faT ;ҹ]95B +1[hmV `Л覉Rh', a'^aHsɋ?Jcqwl392w1#ĠCP n}1(Txt$j]b_jldHzeU,r:Z,0k_ wޫMBAm_QA<y`<+QoʑT<6쓫HfbY,4c&,CCŕ蛪8@:=Ex4%rc1瓆^įzlhWhg;j jkjGŎ_uKo~}zJX##ݓ>n?p ]p(Qa ZzjQ|o`266pzpapj~xn/>܌hTG-+@_Z`5Q}iajf|AF%7Jzv)M?ɹ ڒ͑rS-7Zf}5 CΩ_g{9Idz;Y?㾇%mnFyj{?ޅiF<[b`Vٚ8$C囥MH-Byn wf"E6;;yr&?q# =΄zM,9TInOZ.uCZ૿*.qnĄ@-c5_AMǼB.,T~A2Bl6Z* 7l)OV-}yesKZv*I ڥ$})CbT3BdZ>㔡sۯ!}51ätS ?3WR{iu&~ҧTRAL[楼_tpvtÀ'S:I@੕OȾ3/0%3n̢Ϥ3i_QW Y/rΔp.Ь9qeyuwm3:([O֫k38+IB7=|cG.<3:gɚo§]/(%|+ M#w)fu2E:÷ڍ۰'Ŝ *?ȟQh'wIF hB?_,Rzdԛ:o58MipU\5|ߟp9%kA,DŽpXG^K1x9@ *?qۏ%b@y7-'ᐊP+L)тyypRsdv*\2Gr1jzZ2q%;s,7'2%QEb|W<"]Wy ,陽eέ̤'/`jn!r2+~߹8h*-EJ%b@yv9[&- 1к'Rܽ6*>y"ջxcy Zjx, K;6٩>6K'Zq)၀Z3\#W1JowUF" 8ia1X0Ds*e%lTӐ#ЉnA^$ECX]iq8!'Un8 F_IuJ})F`>v'As.c]f \ XwQ1Ms o%a4xni u<46}3v塒X,9 t.X#eEqFU-xZ.9 )E-gΦc؛uk\r%PC\_1,6ޙ!Dϥ߆Ͳj2 ԯ0ɗe+YDb˃g=哴1%YfA ;pw{Zs ~lW@940A7 1Gi{XbYO\1Q (/ӅCRoN[ N=?[@ iΐ1_5qݘݮ{(%>3ݬ3TSA&/6Kx)" :ȚM)eKۗ|jl >Q:--}5ƄtNݬ/M3ۭ{u^^Vn&^)RooX!~}ǫAeo}:t3w. 1g/3B OqmfSÓO}vs^ 9b(,AybX:1R-Ee`I/{%."u!Uo+}(V?,՛MrÀ!#rkd|ɿWg%.Di6!h`RK53)gWxV:)mSnR8bhJ: mpT:6VA6O_7P&L  Eu;L|Z )t=)D*eH;a&hS)ҿIZ?wDxS@<&/p9Œi&Z.N0z1@=H"WD_B$lnS&iKj6F%B7mKs!_pJʦ_P@Xӷ ZgD(C'.<zy9\! 1BLSfJW 6-߼p": c?/0 ڭiMo1x: VնXg1i,v"4i/Ƚcȍ 4${" _vu G+vQU#Q#%/pv!À5_9.I@äV.N[(c ōSD?*0 D)TU&-wq  '{\btju^l͋bfM(ŕvk}Zb e``ۃcPԑ/8P(F0v$//:\8#?$+9"aN,mRFѻ0s)ׅ6j,KnفFq|I2/XB7^ z1|DyJbӡuLRc^ /w p$> 8B ؚglݔE}q3PCTARs{f\3U+I =S+V'3Ewc`g*|P/۲`U[WW=&4O<\{hP (Ei0ՍJlbC[b[JEZ+'6%U"^ 9eG܈cC^/Ւe_BeuիU+QҞk@bȵ]Ĥ> G"9ˮ_ IU+o+A R pD*(?2_bi2shӃc1KvV7햨uH3µx_+|(FՏKRhSŽDs"sf1 D gDj8)m&%TDX=,aj1QzHW BtqZ$؆,1CJ\ӔpK7)] n09r5oUGۖ.EԏU W9 9rh#ŒU0i,pK^uv>\5bڈ[!,!i \.Pet24sp7K2>q鑸 JT]|;3f0%gz5toO .m HPEM LVXY\Sc2S? /AŰ^(,0$;PsZ7G@EL){`/Ek 2^x>ɟV v\E ȼR(Ly-;%c c@ɒSp]Z]h(BSCߚ,ϓ!nMF?zw]J\5 f.v5ȋ.$08Ei]hoiF$  G%uh6sq(](kF\Ε[~LP'fIN_ä%ұT%w%6UwQ?BcwAzk<|T]1祄 N>v+XV2%ffk2E_j<59j xi D!"}4uT̽is4@W,ܗΎnZKHT$R!!Ѯi"̗KSe,eHhhX! g1Oތfȃ,y= Nm08zQ:w ^fͪ2SΤwpňÐTKqø)b٣iy;Jc֫'<;e&*|Y8NX*lU* YܺR`o70dDt%rM4gWB F=ًGzKT%ҵ8cƣs/:<=Z۞lEf9#j$*h̢Fv%l_ + St/^woWO㾕\°'ut"| Q!j)CN9؜m1B gu%33ITX.$jJYc_4bzApېGfH̼ -JN?TK`M8N/?pݛޜ'/D $iKj8=i% TL]LNN:* Z[ Sy ,=28/-ON%g%PHDE=&f"G3),AC. R.ybfXU^aO {B5SB:C";*XSn\taܶl`f;fT8^M υ>dm15W3=^rHęMa^b8Ƚ1<#;h "6J5@,D8Go?t[d\v-kemawP`"I# F!@p-!3O?4>.3wUb'eLMsѪnI,A "h{qȩbg&&g<˾J T iojߜq5׽`ULϟ46>o F~' j5c45€D*ڨ`%{SSa@Ðy}ghG.\jRkbOfa[x:^B0O*&ڟDP$G}k>KJE$wlV:er41D3HZ*55 yM 2$$ .Y$㒊V@R7c!5#lb'ヺ#$8r& a喇3`:\ff3)EInY3paHJ\dQ+6g ps83r9)%HjFG۔b,@0+HӜ?FP ?x1@mQ}L2/a/d T,)5G/mi2g|q]˙np Udxa"gbe-#A +Rd܁,fQ+%7/ӪnlCp+I4r &BBK~PF gz.PW6AC T+bX욞%-ۮFY7RN\L^(ga CzKnޒXlA?])au,>+!9\X͸Um}6^l[_Fa4V[5ڎ +3Usܷݳ ``ϭ6cGe2%,%ؽ{3:Tuˇ s7kA1(0l'k_abn4)`r7bJ+4%r~g ɕtn3tJ闢!{uoI!C}3.m֯P2R(?Hƨ&Ăr۞/˭l9FٺQ.zLYxo]h;*M?¾MӻKaEdU Ta*q w`ZD̈TBso&-.18drWSkV@ A$G` V :JG׷F)4HI_(M[I;E,BSȝң [6ŕ@AM5@Lz!,_jke?ޅT\N%K"@|ck7&IMod ĥ@bwPR 9TPEGNy4F}f.#; Xoq!xjݔF>__*dXL~we,iYalBц;U\ds|tmFMZjpO9KYP¿N} $U>CJ85Gc="b@Qĉe=vP_ a5PX\Zz3YP\)*Vln'=z[XRW:쪋R[S~w[#>Ȃ҈FPUXFUs[Q@A|=c`ACK}9g[ڷ @x;tE/◗#vY,ip c?۪[`a6 #lXkƘLoIe>/HB+w!C3)g NVk'UW$NDv^#"9TbaT*?~ny h(吙KD|5)QRhݮg)=EĹLG*na)1BT8J.6 iݨUzmK+#b6SE>8 ;V|z y#6:*amKc>&O:e4Or~yf:ưR{3q9'e.qĂ㚯e8[t'彪)AkԾ~~T#WxeLa)HELk<©ǰUvaHt]Wn H"Lo|FUtN \q O $[$(KDUC9qoӹyV]5( ĻXoォ.[>{BPLwU's6Q0=zW2 }I@d=}εB澫u~dУQ#`JލȂbee bg|T.&|º@m#!?"w#3撡7} [:H"fbPƎ]&TEHYhw$MOw)\1t0jW1crK,MqK"VH|$gI&іO-sA,7=h‰ /Ra(ɒ;-ꌵWZm[Oq33 //' 7t"`w<:-bh3OF#e53ʇ%'y~@JlQ,Sjy;7]$Ozm-| 1Vv=5&~"BuG@74'5ݜ|@ clN;e?< %) ' S!mc;r8I-VtZ= cG~| `}^;p(,m31vWHµv.2r._C4m'[#0g&h{2A$TCOje8_5;L9!.|0V?5|$gtFO՛TݺQIh9 %1|Wv3@H]0;CH87>fԯ9@ScR AG5¾߀X Zs$b ڏ=)[˂R% it*mxE"e'``scͦ =F%f%6fnQ |)9KI^_r,XvG[zYam5uOpj8/呃%sKE ye4 2,jV/߄sH>mo{{Wt|akX5;Mh9U"HJ<=BQGJ Ʀ*D9 'hN>r@H ߂k5b|Ote q%H3  U%S]Ѐ(xzF:$:/`KWT]ޣZmnz' V)^@UMDiU(ww^5?xz[O>ÓaUlK㢟VWٙ!8*`d#I5 Tue! Qw JVxW֡xϖ#bAd-dn?̣gU]Gv5 X5e?2AsAҽ5P=BԔ? B84ʶD⏱Bd;ۂnF119ys]ob;[SUJ c:Pȿp% _uOqUJ~i)ViE)jdj\ ޾o&q/P>&[X4X/,ܱ6G f&bԳA/oM S_?жe..v[Ay\Ehs 4|ߡD'ORF1|} "*Ъ;mgs9k4dUvo= q ?n/3ʯS *k%ZMD` HJ#ӏmΩ[DWΧ\n_6+̞lHxaR;ZkT|p>~u C߇e_U-p].&J_-PLrбyw\i(]6X0{%]Nsөѯ 2}"90=FFrk;QWw(9ʢ'Szo@Gis5v~A!wʽ0Ԍˡ^,kI>JߎGPdskF𩻾=fa| ,QKԆaD}K3lπb4S~[Qkze^$>2Iry Rx ZL/RiLqq:X"|;+VMĚ:ۂb ц'hz WdO7Ō +ayGKug^,#}4Π̍%'.ڊW*m\KHS_;rω-l#Q,63@RGmE!?=z<|G@[ )Vn1j yJx̴ t T/AEA 8ܧ$`K <6o晽F'(љ([j"PFOة 涯 Ф%ѣ0.&W*ʩ=&K-v}/P^[J=$ Fr5Ä'ɎRZk0WcK?b !]~ՖrGZ>v}4\KVkk+ JoKzЃr+DGge|W}*("UQtr!ejm{َ8~#{cҵw,-mSw20w}N<ۑ֤`zll䝜HzpD Ln-@gA^;'ɕCZmo݌9*lv2@Dmijf^a2'*0)Gwn;ߕ~##q caXF S_8 #$ 2ˤЫYNYr?mlP,#YٰjV1 !+~ٛ\Q Ar 9@_vOe#J!h86it~l}+8}ХvE#FsYTsM0YHwr]Ƶ8oLQ اJ`-儕I515(mgG%c6Td2Z(3L?n yQ@KR^h: J$5>nh)YB D* %Ci$ӵkO P`n$ZH_w5S֫vʊOJ5f .!9=;M$,εDkt:=ߝ5 sjd=&~6' mV@Ka>Pzxx^{ku-XeAKp8Yfb *OѿD`X7EVFԘbW 4gG tk[6Vhm%},jئ]0{%U,,?L#vE&JB][i;ץtkڏaO'l*:B'SNУ+7Kñ ~Dmj!&GcM=ޅlp]f'"C\A=or&xO8Ԏ)t}K"`4(i+!$Fv!X:i(b݂҆Vyrona?tA{6LHz6tY&Oa_O,ۂk羡e3U[nޡoG!,=3 'U=HC *h =7uŝ#qvE2Ju (5O$H 55L}5\Cv?*% [M]Ɉ{PKF0{eHMŜ^$Bpz%R]JBz儸FlN`zh>j6|EVvxDQix3~o^?)ԝ"vXiv\Ws+ݥeB11V˳,>a>i?|ʹx}WCM#YBz,bG'Pw{)tؑ#e ʟD=Uk#P7j Ι_)q Bғ? `+KѲG$*P|Wwf*5~=ԅIБSF )FR&z'3DbSY`E]:S%\lT+B4H(&aѰH5wmORVVL$dp[\Yf1lO}a,y"̱u:Ěj- c07GOgm!] ̪k˯*&8,mlBьpkX)P]0P?I>_ 1n Aj/I\Nˤj)Omea5S%u\h7|׎Q݂핟BТd]xR5Tjq{2=?6Qǜ.g>0 d6Q_Ns1Gj@}fyɐSN;}wr 4gA)w! 0<npϭF7P 8-]$yV$ {dim8~WiK=O})_eMwS|[(no<߼]a9:jC.;D|*Yj.1ǝSx-ƁnaHn>dаTƹkYO g_GӝԀq#ٲzj(fYd&8ඃ1uG4GBꇧ)22#B֡UުGn3̕ju4{4?lO^q|>b-F,f \WO[_2N?wH*\Z-"^wG\ίsh {)@5Iɸch::1bx_د{=/#uG\ˢ0/nc)8UGn2BpR\[Ѿ>qvQ ji:_G 'bf+n+qh(͠>5'8ٱAr + =!権'*,*Wқkgb9ם Yk148 &Mu,E+pTM|gcavMzBixU+VQ6t6ZzHwG IKq|c۟6Q]!bU(Gq)9*WX\74x:oq_FVy\t])SQRb-tJf zjY{vy)ɷ{>lyJ3bIyX~s=_ASL+:"Xt5G&+ PM%6ȹsXR`lqCstУXښdH_EI8Qb<%ݛr!ׇzpbf&Jvyuxڣ@$t-l"SgY#<ΐD8J"7258_JyUy@;L9  "zi'G0&tH4ZÖGEΩ芟VM ]!.Q+ p: tQUnNn=G[Y3;眚| >6`"bO7N5>DMd yv1<)9= [o`&V)8F~ϑ O-!l~ VSr2l췲3 &o4G@[F@T,ǁ0U >Ɏ-1!L?UA}p>b$=37:vA\8i%Xy4'n`@=?ڷck,.NO*OHo&J*]MpA=k+e\,&P/䇢f) ` }XvǓ6O i Jbqeo}" x[qE&_Nt+_Dl\׀)8M8d6ic=f;-AY7%lqkcsEJ ͎^c{L |RAg.5~҆p̞z@> 'Nr=db:< nJ qoaI,5K&3^_MW79XxZtX"MKY_=Y7 Jdc#1-:2ܵݲ*%3DC*Fo1b&S/ tV6+{Tʬ".w v"P_L~9z]Rs^6͉Wءq6_صWLKa)-2Q|Mu8z:!;@ܬVDdO@G nӎDrPȇk=xĹxZ~oVY, 2!iUG0ãBͷ6ֳIk\9Ojx4_Ex ꁆ.J7QJ5y-.O $v6l=ӟǎ ÎtIn5|NYc2?'D^|^񑩵*1*lo^9 %x@"–[9/y 4/}m #'X?Kי73q )4THy o9-"sj%Ku/hxQGtnY ٤8e@F^_{~8UN=Y% tYF"zu.!E=lBUf;(KY&8=$߷tzaK Xl)q"%)wJqJsVFG/b*I_RZbR#C+|'Ha#[,d5ZG%MZrc=}dUI"Y [ +dH:fG?U9?[՗\NMǠ5s@RS,/ $fMt]Re?719ekEE+3SP(^VIkklIAO[dutYd?PGz![Jؖ .FnN "p>n4-U߾*﹬e o) щ'%UGlP%˯6K7&M B(mF67io^ ZIp .R)V99 /+2}c#z%(i|'`XЉn6n 3Y4ӟM f)B&qP[D~K'to~'7zQ ":u죵b=(( <У[<{>0@]hI&7.nM'UrrLbhcm&1pفpoPo3tc[*o!IRAv:_;-챹!xO$};πEDI+A8w̒MB~W;W*"{/ZH'9-ZZ G%ay9vS!/u*@kpE*Z 0'$O4oasVǍ |}Acj!@:O8ê:!]; @'aIk_EC=ro9'{晵k_Q3ߢ 2M WEm| :fso摽=l%2vt&xE]Cx ᇥߚwD G@lwa\Ԗ!]y(Pb^!l%pϠw=`h9Xc>w<@ ~`AdⲱgVpfI3PYLXs~X%mU޾s-!mώ}X WJ2~YMħWc&7eqtD V44~ `ЛY̌gpci.9>TJF^Pq eLC_6 nV46j&~ySr/'%ֿ0%1u바5 G%*<|xAΈ/T-[P}?!9Fx؎G#/TQr—:6IȸC\IR"trYG:jN^J\`4c t*q LTfa3 b!#Kq7Im26۾DoןD+Z@uh2[u؅ҽ$Q5{LL7^=9qP+ kl r|e㢨 JhZ۶ElGUI|\څ|0K4,#]ݼb*|8SM3%(=׿_%Z& t@*?)\k j0_MIc!ºIM2eOMh'fZeGQ^ 8Rm|8ZA̩q=B%}-h5BCcܐ 7ձc%f4>o=İ_ ", 䤫Gj3Xnʏ DoAnj6cZ@]'HS  cf^|P o+Ёa<Bu9gF Oo}m┲ɞz]eW*f-/>pn0l_7R;3LeHuPP)ƛ!(Oϰb=N6#\sJDY.#B|gK'@:4sᤁJ*k}Q#]w &${׉◝aU>&Q%P0gMN$WCs$`W v$/3`E!B ja^a|l4YFI%fʲ{Pnln|Jwt:+hŧWѧ1/=Q9S#Hanb=Kbz?4j F>ƧX{abC.Ν_hW3uKQܲ+ԑض o@x  hj$F˻L.>E :ʎ(fK:Ǿ3*:W?ڜT.02 'I^TRwf*W/tU_Ҵ}|/NPExYߎur6ǯyyB]k4A#3;-e ;k)~JX9vJeT8Fu6A44pU]'!h>L0Yx|${`&P 9 5PXZ˱QmUur\xGH.d\Ы&ߗ8qH l|&? -nt~8niO,%jpxE5|BZzyr$p.lj2߾m,t-:~So$]twmIS)+.TQԮfUW)B&ff>ۯ\}2)YZBQXBRƢg -v Q7Ny򒶵}]{!X0G;fVU:)3À0ٕg D~-kS[,t0"Bj䖸4mAS7HƒB,$cxC,oʸH4W,|!q$LYT+ m:說DqnS[s}8y[]M]- p)s{^Ё9Jd>Z(ޯub>,79}[@TȣbeC^ڈ4sӕN*M`pB@q }AH=ѲŠQ] T/΄,cX9#ƃq" Y.Zˏ  dntoc~ɱ(tXd"!*։jAwa;iYhr|Gc]d^D8ځ9V] {K=?_%%r5,ɫYEIPek"Ig BDz;0o,H ƌ7`u O0$UQx|l=ݬDMTPC~[#0igUIF'pjsY8E8DRX8 |WbLgƞsfMaeNfD}>ɇ킴 ݴ󎴶ҵQQMMz]9:ܠs& >5a]<Va'AQΏ_ |cZ*DV؏ F$L/E@T#1 =TM >$M[IyQ)uGJTt{(&UV#Ml ۯeȨ8)HxKCA!D>ӯ7|ˁz)tpҿBEo('IQQgY>;Ћ0(9")9qS]Yp'^o}:M%e}\axIlnnKb?L'XmAkYV;Kutm8*a#Gq䷷E~jM_(D4T +HM [,;b*S?ZT_ZM]q m+/yH2W#?f|S$T lK{L=.pkKC56lf)r7Fgȫ?M'@eR:!Jhd)R0`!_ʹy " „^~fx R z483,+ w~dYsjٗHk^I63aYAxe}kuDn8c=38Mx, o?b:(&t{..j%$c{9][ъبFr%kc_QmE?]iv<p>UO`Fs/PWnT$,4N*۹ lv"dU\L8%A죠?R] d2Z+?0jaQv# DE1m^l_0vˣgw*m^ mQpc.֝ƺݘ…)0؟.oߌ 8򫁺i!3*Sՙ=zyT>xse}9?)]CbqiMLDQ9拼HgABGL$Tm}rI?oسqX|NoEA7qatON}ֿ'n6le"ٮa7IOjoߛ\x^DjY)]TVABQ^p{!4Z-~UR60/8Ik+Q' \GЉLGT +/vy |fJzn i|ߖn\wVnxAN I1F53hPݲHHaTd&? &t,ז #+?>L,*xaQtaT]9Lw KI bGD6^ĎWl='A>35|< p;mO/ΈHңe6|(Nbmx^J-|WWt1A*R.T[S H3l R"/ʹ_I"4a>!yJ#x,@61>ĹrՕ69njaJ{?+gnVM%@Oo|[5 c|P#!I0OkvOY [ 6eout,B zK3Bz䒀VK XYJe7j2i>G03 zRnPT);`J'7V78Hz,'A5Ѭ4e\Hle'ksV,j3gjM3?Ţ[ϻen"J^a A!.jEFgHc ~H\!@u)Y zxiDPh@GpJ= sz~rϔ]1*;MRGQAv䳗jн + KX[P'b]HIͳ!=U(VA**]0Wnl=O+,A͊s G,:'IFLBhʹGNW٢-{cuQf%~fN.AYҗ5!?K Ʈe:injKbӳ3t,>ȶKBBSH*G(ěj]!gA(l{3榿z _ddJG4r ;j_ ?3S{눻p7A SU&NBk"!L,_o(q UfrR_O=,ȿ reeվnrMSeC_ +WwNmz,Vo5f2d&R} ~p? a͏:#F qZY An}E \$ʢo{ n#J(׺9iK[ I_Kccbi#g℗з"ݬ u $e R3NhҦI2T1~Sf[<8[<1dfVf :Yٞ _d:b%Nm*QYX/XYosjv*+>i8Ft-T M5b]e=wDj I':4ާeFh%I60+W;k2NZ(DYoΦjxo3Y0En5.QKJ _o6 b^VZƵra̓KQ_OⰩX)z$L}QHEm/V95iɾ='"Nā b>&NeSgr%UaN`t ) 5Љ\%qZrqU=[ۊ7:T*TX5オPR)M))(  x#iwGXY=Źr|1qneE*#9Z1G;ic)Glɢy }BĘ·>-5gM-5?v -Lu-J@#\UTRҿ~b e宄T?ԆF4$)W…d%H`R"古u%VRJW*?+@G{Y,HGe !8;^ dg)~_Z"%:La~WuʻC| M~l<ʇȴ'yL&T%lp4~<h7>?)ߔZ3^|ܑ]pv (h;NT:iI"*-f{U)y!ic8::CRqn;'b51箶B+!cI;Uuq9q `!=Ӂ[ebʊJGXa%K_q yY_ѱ>-A~#?'f6u4"n/z$>[< ^TU3rPRdkuu[ȵOvT!d"еT[qn28?/1ݮ| pm Aq\Ey%km@ p1I( D`B{zמ:zbS$:)!P[f0>.HۦZP$XirRLD(Oհ> `fҵ'}LO6\-BvHmhvoA?k똵EX_LԲ+ߤD (OAJ M%/oz2)aG} bKWn;Ahˎe#SdE3J9v~89mJV' #fAo 9} D$`C3ʪ!2M[np"tNmxg8\h8 _DnGe)4QM`M0^5:BajX>svdFI*ysl 4kgUUJ\ `ODgd(0 _a[HH{Ë́D&:hT*&݇-[\f22 ǣ_ @PNfRzp K{'>.Ѥ4X3}H3Dr]Qn>MNf *ӱaMA_B. xp|p2vmh{c3$vqNFE ;E,˧3|"vrˮ1X=~R(;G;LWC/~GtyKlt : zXN ce*c{MU_zfpjC{$n:[El-MqS>r5`2~3|+|xf4/M1bZIf6U 0}'jcGVBU7N ]HEhD;UxEI =({,SAD?L~w#H<!L =ݩl7V^dON5Z7 u| rMx3jףoxl/_3x,\WdWUqH]|66V_1ɫ"'դ-9ɘD'*')lE a0 # i2[9OS. x< oȝj{` 4C]Uˢl)IP=,l%bcmX+iD.}\Y򭶀k^[i%1&Bw={|m*ugcx\̋ h)"!xsklrC eDM 5: RB o|pP9姲4_kq)ڱy)HvdG2/hBk_4sw*Bl@`'TW2f_JH2V0b/,4~DG#J*u9q{'Jqu|'DnkZ/2 F}n) lMw nі<> *io޼upeJgw~oKi6^2kES>$5ւBv2~ +Ü+G هU+<_tUХ3SȧY 7ɓ dX9w"g[nM7o 4"&g+ֶP ~am/œ 9"Wq QYx%Mƕ LiսCT0`i~tFk%#IC:P^k("=2Րt76.>_aZVV(ܩV4T4N(ꤻEx Pql;2kEM[wa :B #Rr2ޏF^dH ;Lm tuO0l8 A$ĥH˺PNI $vj10 /W㶸)xmVuag[2,& Fmζi^%|][\ۚ*4)߱)51;Μ}n>A`^y,/%!hd?)]\&4~>X>{-s&%Tb VL{;!.TXrB: aʐ:=op|1,=r!376DkV7NZe}V /@9HQy_Q ?>J9`bo2Vt $`>*SĊi46↖cr >K"}i3E%#PU3 xҍ} Vڑ0z:F/{@d?kVq$RMe5MMU2'R0wPMݔ+EIaTcS!*SqT4QOLFfx4NpSu,=f1(nP$kk35E Zl Rt.֙-Q.僿y GN`οznlpυR/j29)R@#$n:4)[6kMvE,ȺOFGLƚ٥., 3f&',†8ξ$LD2ilw_@ie{5GQ➂k|g%rƕWPMG`mШH)\L]6=n'-s i:jB Ÿ8!Bdٛ1+C. UnRcfN0fZ/S;|W?>,T2!e SqXINz.w..]d;+D)vp(;̶t )QseYߟV&b)dl ݗZf3 (*MŠA>(/6*?sɇ{/~4].Ӂqˎ#^U>X d:fwi+BP5s5ɭ]L2x쯲X+&B4Nx(' #ߦ.cxC'܂/QDuB,^fQ+5~2 -WA DI`=$#ʼn1= <8~9f70CT,4Շ삷\ .U ZTn_v+b;;yrR(LOκdP7'[X IBSJ$n?|zd <Кj*|AEcn@igUnWT+D@MߛY6wWs^15KVЀᐝ?&߿g j|GoByXvuB !yR0G*}b xsPZ-֕P&rx[q)ˡ5qmئf fHE(hRý(ؿC-X\緛Mh㼟jM&|, *;.6 vJ lv5\m*wْϳw۰_r0~Ba1X # 4ilYZ~5zwN`+Ԁek_t}٥Tn jG&~ 5턨~R,kqMKT3q9vnP S_c)wA,XMa|k5-6<#WߖWKhE%WUڰ-wnucRaȊ.Z\ޛjS~oPVmaxZD vd3ς:q[ra5h<0![z=~NW\zj~ӝjNYo:jˊᓙ'J}q]ӀŠ|I-k1v_NpHQ @}nB_(W02 O 6=-`#=LJXΛ z߆yc竀(ǕHk.7=9k`wzTCM{Q|_t!#&mRifƨn1G&0y(Ұ%p&㈩]=,mfp6$Yjo{>swh'tQ =LB'! ŧ"|br}i/E?? :?K ӹƒnϡ'a5݃} Hpb'(%Fbb1yݍ@<=J$X_+ _ >;+}Q,8@8g|[4>v9ë!$_A;qM]`,\&a¶jbr?PRA͵;*˙膸Xp:E5Oy('V'Qkk/*y1Z$ȭ<;+ݠ(~o0̨HjBoݻ[[3u/(&`<ݗmߗN0uN;(5g8k` 5l!X%#]'ů@aZLWy;>s=)$ 9! P^ڱ10owYoSwlsYэf' O`K嬵%rg|w/Pcf\ X ~kk{/nRb:"1O4DIJ KuxKpŖDr#޲ⵈSdwo"jRT [nF0Bz 4Xm  VnB6nmK8Ԡ%O8#ދ3TGn4I`U$B ZVa.vp_Xx6/( EUiVR3G`I׊ 'W+v$/IxBjS"dD^e,rXmd#kH~RdWioI`qu֊WmL*고+ewU=?z^Vk#ՙnB;s0G7T@56NRjW]H^xQA N X 7%k?Dc)m0)+%D[oC{a4,KeD?lqL'O*߾FOuNɄz=-QtuE*qWv,U)$jPzX`υ,Fb (q-= ky[cv뎑ݍ6_̡fXuf(+SGqcMM!8|b>}{%yZg&Z>mV@. P3`эxKQBcyC> hT5`$nk`TﭷNjlh!&k}eZWηJkXH[V|GLsݡiuIK)zu4d$9X. r&1Bl8plM '>x%!`VsΖP0ZXkТ2LӝTYfȝF wQl 8>[D͔@cF/P&CV>n1AW19XNh'$:'jZ%t  ;kN_rЉdO.\psI>e]5!fp :.«o*@fV"f_D% )C>Sd[>б/jGB5|1Dyg3} ::yTPkCЪǫ잹^KWLa}?gd'ֵ[}". ˼ɾd-9ǒ?Wulђ0{~*r~lk =]gMpV%دvY_$bwCE{jO1 >3npmzv{( e2;ȱ*f:3H٘Gc/R:?Kb>p1`:X<%hˊ]PFAtw8<|nMrQ@elFG/ZJ[! :_2Z&BW yh&E)AT9= n܄OC_O]!g(/)*a)N;{ZckT.MH|7OΗ6}!8ؿvC@qNSwN3YOZP`K`A$-4uvRm&E5>jc}*7#G=Q[Or U&4sHq!iu Ҫ4.N$"cU^1,l@{CcP]K&1R*W<ǔ6oI 羲_/V:I\&ۀVr .TmLQa4h еoRi~vѡ[#k<@'vM^ T[]F<qmRIGe ?xd 1a . b=g֧N  &_-[c|މ/iۻ+nOKviFem*6`QеJeII֘Z_+q?&V7~loQ[$'콓YWYOb6X.6}(hdpkOn4Y]AY?!&M4:Mv.=V'qS1GL'Ԃv/teXC]w[0$ a: 1DVee3;h`$.^Tk񿙜NRGGjvȅwd|ɼ#o& { cyq1 ^Lp"p6$7̫CÞcWbȃu7ԯ>Mį ifyzW1' v')޵νZg?б<RiFs,b0!+Oӫ@l^vV؍ k$7zEN8ȧs sMhH۹AJIo ͷֹlGDAG%g)DUQĽgvC mDI3L■dT|  2F;NXuFH>=Hvpn(ڷLVd ?!>6 CvvmU ʬb"- Ae0 4d9nU 42}E@ :]G|8uOݪEē##*"g6uA^ s57aFаO #!nP <ƫEd%cB}o{]k.j%Dӊ*ףBHwA֊ j0'ԈqQ3.nyq &08$V cњ0t81C^{FV M60#/MU 'F@sf$2ݪŪˮ9buQSf8Րjo | =CϏ~Je,96OYrShΉgaϫ#K*pı} |geŒӹGwè<&A!2jcO x֓1̺HM4Oq@b=Ǝ 2ɸ>?z'EI2욂%ٛD6"]BEG㎻$i֧4GX&ll,/ɞ0 Vdg=2Cm\~F +VyY&FHkI`|}0$ib4ZJS8wcﴅNa5Ktkt0"zWkL@FK1" =鑿V]_U$h>5Ɂb%.57N/!)E#b٬ e !<FkR2揆:m7.G ;4TBgCn4%vf|XΘƲ”u_{ #o0R0OzGc)I4aX;W@Z!S3/{)]:Wϑ&ΣFEg'5m 4.#@/YdM Kv9| G5kf2ysq-p7KkytZdA $PycvW"5-@7ZX%sUNؖ$`a&2ωBmLp WFh:@F:^-ΪVYG`?*P:#T=iֺbQqB(BTKQ'VTLo(HԞM_˼-ݺnۤ3gtKcʘa38vba#kgX\ XT9%lf7}7U0.38#̃}9|^gz/Q6ƽ=YnegS?{ܵ~*6h%}ŏAmD/7TsQ46m`k>seD N,7`S"˜tm1F3. "+@A7[Pfz Xo=]!S=wfK0U|]F!s\םUq^! ^ L>ɎܱHBjct^|J`K15ZqugnD.cQ# z")$2HN=p-/,ٙAP;+"#FG0?jBMS;_>9\!v.?5/oPJMU[kYkoIk^񋅞\Ng5F=Y ָꊥ6E-1f4?.kݸ8vWp*s㻙`o"[PvQygg/xP29Bڹ/Ds?to*E̸-,"-ZGJIhG&q7T`ޝDŵpSȒ՘_׼O*vJ%.%K +5ZwNg×SY6+U>Wk1Sgp, "zK*6lza;J1 XV,=S>#W\\$1|%A@;w}S^ϼ9 nms>NkyF֝MPxs"6L|eK \Eh)^E_-EVpaςzCfDҼ(PڹW 3v}]\f jc%EfȲB8L$5Tv!Cg0p:F}EGiYzQý=#P~̇K&ǁeI^xdfHj#Jj%$w?KxfGXՙ,S= ?=EN:+"-tΒeqwߊدD<@GLΉ3?foaYA~27<0tT~ʟYS l@%Kt_HP֫Q 5|:aJT2 mk_ X=P1zS6j=; ڜ\^8oݿոX>ynT:ՙd|L_*L6}a*X?lkNLN:T) 0YvKF¦p!$ /SqD?jD!b. STM. FÓԷ~¥O555-imcAbTƃh[Pd ޥ!G{꘽&'MKK;ZVbx̄>n*t6[{ъwc@exDqVgD.@Ly6'juҾ wɠBp2E:l3&y;#,Rt@ˉypxMiMW2Hw6-1پ6p~^Rm!,ɦu{=>`371^ڍd ѐ]cHZYCa(i,CH Ar\lr!2"F ڥ1v̿И†*pxpm鄀2%U(L'+4ο&OgtX<03.@c\q̷\nΝVz-,}9B_G.͕\4/(`)< Q=rYO\Wr/J+ED0jʀ/{?@Cds ]?$,U70*{fMr u UK ,?Th]8R__-و@-t˭M1(GcGt>2˅PD: iu \jBJH(+Z@ Tn[}>P~BH>P'_sBGRfFo[nczh&r=v wLw#\E)4fT@N֫[HP?,ѷ$6bkZ(*pphܳLY0%W>|E]<a-3@L[:ء[O@yGg%kXh#D[gZrs\NYpGjmCHjOOH]ܼ[mB"|4Ļ UFg$&P(FžͶI@FgN1}?K+,+N7X[J`YviJu=IR.)4vSEt;= Tbl#rÏ" ej"U lTqMV2y7Hj;l;A4ހނ[m}YlqޮxcVU{E q]^6 EJPj K!P#]@t /r7Ӯ UYy@r~&4O3O*в>znwnޘ7/a?y܊^R|XM@:m@"=`[3k`%G4wZ6?EG{\ 3 Ҁ2Tsׄ߬;?ǐPH24ɯFSZtQ9S/Ʃӣ`7fwHh$1!J9|I0;Q?}D:XqU*sXl E@;GvLK|ki4?.0"$#h7"$ &bmszmbrK}/᥂k`D{("U4:M phfy3sOHK<}% X knaLFJChSL k&/%<^okř-8rF1Ȧ6X tŸ{p7]ƺG_2ZűJ%mo|NJ+\98>pri5S6tJ\ ᾝZݎS'nw:ox{Ncb5}XҘAN \V#y+95\1wl+]#Nb*3ZxΪ,G3 ƒMw˱ț`v c@[ob(/I26y$PSҊ v;|Z}6@E рfHZ4M䍓Xu6HSIQY-il9ErHya)(3jzOmql ~͘իG%&m?{U1;{҃L/A?DlJj wn-{.jWֺh^b ,ٕ]J kQ>=]h >ҡlQPl96#;\D8ݞn %j{E6[ q $X- Pdj˟rţ"QO5 {"Q],1!8|OBK*\|xXAUy8E!,@#'nOt:oc^eO9-REݘR!/i[Sײ`QqxVN~sdWoq9d6g?A duhlZe#k3B/GgB,*QKxgJq%fv^cO, XD*v|nȏ1`55Lf*vw\S@Nunv߄W=SV7 Axg9BFc`H3]j:| fӸ>XҚʒF3[Of!z⵩ X5Ⴈ#  7W7W3wG\ahC)Qֿ߮ 7vVP7Pi(Bu)f g] #6}*T=96tpd?%㿂P5%kT Xoϧu҄TD,?y YwƱjJܒV~3X=5K\:3F(l=FGnڇZed ?}܆ׂGȣU&,1XkS-jҎd.+̈́emFwH=:|N3ǥC׍ٔ??IKRݩ L0嫺iq/M˸xCy1 <#ZBJ 7WNAoYNToo? ,`'~)Jv6#N%$HaHM(q!udd69ϞřIS^yok'Z `O5hB](uQ~1iU3Vƿ]#O}E6l GOʵ5l<UU8/~E,x/Ĝ ̯-1b&3.kn#ԘmH~Ԃ窤Ғ Z(:  k%GSr0h*ޏav=F*2E̙2GGuZ\Jj?59j (I2>-##& f`EqE`Z#xC@4ҙk=ƫ µ ()00I}[7^r;=e$ k(ډ:Dފ> I"|>Z sPA>QW1Gُ@@l({hx>ek&5*Ҕ\F8__'О=̱E?Wm ĴXaQpܮKQ% WpM1t ǑO0'l@L 5(X% UV>oxv1)D&ꕕƵ]KգQZ;3%zji<=RiEa +يj3?Թ/:=Dž/`+=4֋EȓG\=cϱ@B^j|uB ^K2PkKO 8,Irٞ>~[쏃ݵw9 $_Z 2N!Ӣv$:NIm{>M~ $Ə'_ 0ON Q ^#4R͗-ݽʡŨM]CKWWDah.z[݀.qEֲuFާ:  MPn#vNϪtB|~sAD&=8*֡4PC;mӧt;MgPXh=¹ˎZiu )7q&S(y,3?3 h0Ԟa!d}f>\/ '`e`VEm+鳡l$7hz[M'$P^9/_;B_P+}R} }\0^‘6s A=ʌѹV>=$"ӈsiFW$õ(<#|)uE 7JU!zaR лhd3" A< *geډVvOQoNN?5k^F`2vN_@ncC6mPĺ|3.Hݝ@a h  xQ~ !^j10`D>TP_:49Z2K0f-?HfBP[ط!hGCO( E,23Ko^\HIOʁr6r #bVqb ~`p67H?4!(Ո$ #,lWhR) YPM,#` Pxc*`&Wظ!=\Bq'gh!|7yi)u(h)Fx7c`h!(TϑKY}b7΍e;hM eZԭ]|VD*FƓ,(5 :6Lkc_}{t$Ez5W@jPbZĎ//]nRS'f@n`H__H#."[+AySb W1%O-U m%(ND@(,Sjg]}Sk p&6eJrѤ>w#^PBafea"4|Z6:.K{*ձec_a%oJOLeOF;łRd<:lk6l}~'R5RN29z@Y+-x6vi_c Зր[wT5ke2≆;Jv{ka%ľ7N0I{nxR6= -=ePcSNv spژtR՛ :`$pUpmq'''36(EOO.%N9NFo)g 3vri * \ aEM fEpYA [8>"nmXyAASہCZ:nm (qq[OWHbTp1hfߺ" [V!`+hPM9Z$Ng@ʉ|"8b2'p+͞ﱾ},Ry~ ,,49Bhgl`Qoos7-J+ 9 S[,৬ryVҎU"Hvn&U{( K& W0 =X:;ɑp{HN@ubԋ PNȼ0o@pLWvdNYAϽ%y͹LnY =v  @"`5CC)-e3H3Š8Q\VS3 m*噑!A^7?2| ?@4ׅH. ۭGƇLL2m]ԭ(1 4n\;$8>{ 4$X2v0 |q?a-Zu & *+2yJ\|0DPoH@r}"`j1b)I v%6,>g3ڎWbQ>x5*8t!B0 Nl\=Y+ y { tKO:߮/2V*M?)'[^9mNCI$N 1cdѺSjQ+g! ziq6&۴gfsQ~_*d&j2+э۳6"f(dQA'Z+`lR$^eksYRÿ=:0d%/|EVjwJV0%}][ti.  uA<ZSV b3)GM}]U<ृ ;TU۠FI$ťsNe)ª_y4g\=0df-E ^( Fv 8%1 tT!m)5P1xf?|\^lJiA@bfc΄{@a A }ae$cկZʞh>1\Y܀GN) N@ B3P('R, ~%L7㉪- ۢqUDžb{P@XNK:xuS1DY+\ q^Y[M_uZDBpEv:xKU[qgʧ0X"y+Ag*iS8(Aá@&C{d{Q0 }1j)7tHYxv11gPV>!(w=kJI-X ?ޣ"ݲzX(lk`mBTEϹ47EcRh?Ymy5ٔ}]kQbk ZGv;z vݯEl*pjz O$v-bDXʪӥZȝ$IiNNb"Vr-(3s(rW-C6VaSvgNv7ҩEk~[mt n.cּTaxgL|9 O[v 6 ? QXgFI6t-#-18:dQϯ}.鸑=WF}?\L'#x:DF-YNS~uk>5w=jخ w򀨌:WPhA ًO~drusi*noCm6VtS=jYH\rՠߘ~LYj%Ƈr{p[t5AHnLGnM[ gPSN#ʆ0˵ ; .I%lՆƵ?r:M(˜_LJq*fM0!Dq-s"+HC$IRDfzk֒`U8w+^Zhŵ@wư?̓{޿ 'Ti/Ǔх.91 3!/\_UV~1hbҌ<אpVK$tcHЃVm%ٴEWrdX29e 9Q'wQO6RVc^\+  J@)d1a1m0q\|Dy`C āӚ ˒lfyHXPT CU7FgFjNDs[xW'HXu{=t3ơKM" ,К/yUB1w[gXXBiaal`<}(@l ض+ Y.^v}HSqa\q [5)`` & ~2!Tfq]@gJ`Q>q, y~pC4{1MВ7l߿!GDtm\ ⑳ے@*+5HZvbς{]⿟Mıw{l@kϨ-TAmc+DH'>m L]\|i-(9m0z$Z<5QJd'*7s3ogxq}l<:{$K{8УEaiۛsDKfv u'ԷQ |S7DXW>L]G%7׏|nnlfʘgp2bE9,)fֆ۠Tv3-j,e`2!)h)ߖQzGWEa4ֆ10#<+ Fr@{9)T-;u=›!NdG 31CCQ|}E2,SԊS5S`T9' Eݭh '%S~pՈúfFM 3Cx/Z*Dzp64d8""e>42h}߼XhZ dy.`I.eG,A7^:@ƚW KP<0?6kz˨_&tM,IHJe~iX`Y-/E`hߢL#ð\$BX%)Jޗۏvѯ(%%iE/@tנo } eW'Fim'c,߈2o:2Ixeiق.DÚ="l>=gTB< jt |CQ]V-bB1U:q V#Vi sԁ[^UW^f=1@q|@I=!r \8*Ԍ֣ 5*jP(P%Ei)k5]vDƱ50ڭUylǖ+2nKtDM:E㔭2H>3s"X‹"DwYoeQtp\#-Y9OLKm5fU"QSst լ$_S 7tx #ﻊwsYosm[<+cz!/ ?*rG>+5l2U݄r\B RD?m'@Natck2/Kb a\WsPm7n)م۾#e7^:Ą@*ng.| Bp(̏?x^>ȡM#H'gW *jP/`G̊~DHQ9(Fx`ު#{ T3b¥]ᑑE,9L%: o$@c7H)TN|6 !qŊIb7<%A|1C,f쑣Ǎכ+c;9-ʌz?vX@^-cI1@59$1.*E+MW%s3[{IqM2)-Fwje*6GƢ{շo>D5EX^ܭ;igH6\҂YmRYj {#s sT+@W1c<Huq "7+j[ @8G"[]K?F{k^//Р2#1Etޣ5sp(cyOwEt*\E=f.#,YlDͷV[ Cu2#%:>h6"-[l ҴꙙZ 52MFxXނd[zc MLWd2)4Koun< Br\Ƿrbb|W5W펅 |m6m@ n:H`WٵBt]M_&20#.]_ rBke]a6L 7ͦGeET$<iŴ1d]9k&{YW ^cZ?2Ke*r Lɮؾ ]!%XV3ȫqlX0wwI9Ux&:@L=!iR)E\z; [QΝȱZ"u2KFt ہxAܧTan./ռ9'Zg[8GMn@X!9%QiY=4p.ۭ wh;hba Rqg'0&$c0 *Mfҙ<79NLt(9@b LǤu"kip1Kfdh;=&=Uv58;,!OH_b=Ѹ>gYds ' 1^oG ){GNf+B ̳Ü7&'RSΔ!;)|ù_#}{䙡bw4lk\ Ʀ/ԝcv]ri{yOͺ~h|7Оk.Fqjm a@'чZ,\d fP ︞w>Z f\}#67D֋ʌ_|xJGãL^jM8_Xe2H+ҍ82?|˞*0 \W@&8L8 p zM|a ;rcbZ0&l,^~lp`H7)\ p7P8]%7?_73*( ͗<e a4!5oW%ovw{i>]+Pn3#(Ct7<{D%@F r@3V-/?<ߘ65>„(,-? ';kf68E2>ЃjD{q>ڱ 39K4U(`׈-$g.<>Q&C)+f-{b(#B ŸjF$1͙ Y?l'BG`[rnm&("JH.2D3a;lW:I0fyfЭd3y3̴RITS_CTH0`LN]䎜ɮ.G_\mڱl}TʾiWMj΄m드Tə<&jʋ` BEuCzWV.Jj #)2/69(`Io]s'q~odFE$8 =hh'oq$7WQuOfr.L] ڬ,ߖ7T&(Р̑UXcDqPDg;`ߊbԤ~so˫0\kGH+ҿXhi`Yw_Sսy.@ e\[n,ϋq]WJl!%(u YjMc0&l2Yv5~C )? Ew.ڶHKm:6i܃jtcA)z1̟Vyr iX3I#;0\Sн%,K8eXY/2O@EpDk}Tӡ4(jI>&==e@-܂/RoxuM!du;/G>bP^pHoDrl݌U9EJ%"C1Ce#o*Y AU+dsժ,Hm 1DYa *< qX;5'czi 3Vy{x%!k_U ۳Tf6rR`2ܰ{_qDAЛ -Avڒt#ͤ(L(>-t%P=b$ J }y)7$4:hەm%,{\kWD"_[amG8# .7=np *-?i~ay0!D*]B0YOù]1F~h̘+v^+5F6qQ|t /+ɱO":5aHFPtpM׊LS?3GQFTO*$Fu7i6=iBٟ_L9׿|̚GhrѸB"֒Ü qn:~c{Z\T!(e kQKBPcX/\hK:sܹM{85_^}gŎYoQgvO0h/ã_0Qnap~YMо۲ x ]?{& 6ktMũ%sg`J%2dȔTm e񥙜uQ—k+zw69wSl7)1t2MunfN =-Ffut̟XV繁 +MDŃaZoWAg- gR1xUKIP*g^|=b:LK-X |գ(x? g̽iCDd gZS1H@ `mr|͕d5KD?rſ@|"4Kyٹw}Ÿڋ}T1@NQ +i `CSi8gec#a)tWtL({ȴ˹Pļ!BXzx|ϧt6G1q@tM NW%8AO=X|{1wln,boT͖4y=yĔ?)0ùT* L0Ojy#c^{ Qpgf](fʁ'p ⮭[Bspg ,&J|'16u'7^%x`C]A,ugVÏ|W^z.'d=+:QfX0+ӎéz*Nh'hY KfiSLb$/;yRgHطf[[w x4.jO|ӬM0x!lN2xBҕg'`+7{R*:"w*y+"I՘&H}rj= m6>j+Ӂ =#q2jy׷6ۈ]RBc sP< qrG4+(ĸM,YNt`Q[W*+=icoU{˾,GWZ^Qmi0{CR # +阳kZq;Jn->}!{%7٠?+,?uŒsx@ m|b-&΄rEt9N=cd_13YtY]}ܛ(ܟ967f:hS0bI`׻px22hS6+ s?և(dȧآyz%}ajg0* UEHa *kV`f] wa-Jsa N$ni 8u2H @]o:HAcrM/qlBx꣰5fo+  FVOÀԗ 72ZfpE[ڑrnR[c75LNLeȹ'L!}.6(}U֚kzwEA5UJN/-RYLqR-6NĖ8Ւ,+lIX Eƽe޸0XxfUT, HaYؓ"OFBOg{4 xpWhoBdK?VMW[y-{L,*fB]6̃y؃.WG Q]TgV8zh=P? `১=TM23dclRfSy (E}nomˈ{|BSG,F xJ\ZFRWSb6= ܟV!b$Ir;o0\^v$ywAiVFt?49+TӤ5<rO>u>H()̀a"7ժ쭪(B'c8ЯW * S9e9`_u8G"1c-23C m>`*&C3dۏn A 7;Zŵbc oM%r8LF.2a_0ä**>߿UL/CW2VB<#>0UKh(6wO?"oKl$ۣЬ̐$c9e{uA\ߓ2_%Dպ.h c*8Ʌ m0w[bu2/ؘ;cw q#/I]XsUՔ;!{r7`AѨ&TyH=1ZYPȁ ̷fS,?)NKQ)p<}5/(HӦuNAN/,)dwqN% nk ag ޴Rf.I[8@ASKPT(+Im 񍕴|> Pڂ"o.6v * h .6)k鑰|81M%*%|4CO @~Or!~+hTvQhb_I1 D͌oK/*7pUX.׊•ڃ58N9z2}=;Kj/T %=$Hm+W9xdoS9~+3JgE/tϏxNcLKʪA :|lGюO* )DO=JŤ^fYZ~y"4iYŃ+eth/7Xrt 9de=1GGب*b /|le2kijٝ<8]H&5?3mHmAr0o7hܷѲ4ђSyٱhV 'Vt #.E& qy͢uƑ\V>*h&td0ޡzHY֩(ߞڦ(,{{=vs2azYz^L'f9] jiRNRh{' Hc漅w;15ujCe*\a'9~Ӣ%9TF<Y.1&t))N`t{F׺uXd! NֳK,_FgBq(ZgkxJXP.EgK3h&FSBy 9ͫoR J W zD7IޏJ)4ˁ^葺k#^,H79 L|iH G>Z:ٳd4`HA]'p΁3 O-JBv&}Ŋ.],927I*kN.uQU:Wz6;bxDjM TX}Ϗ( n*` ;@;l9p H v3˛wVZMD&lm^;9'f+0)Eڟ< W1mBVG)aK Z+rA1hک;?ߒct0/YwϸD;})9-|TN-I7?^VKf9f+ehuIml3:lg6KLo3c-м 2Br / x/G jEXc ,}h(/ O16j?QЉZ,K|N7IZcFcGl產Brq0m=z 3X_".6;v%/`9ZbdPfKz+Uԟ1s Cx$HT&O^_ʌZн6!4If,j J>bw 8Šk:&=u8ںrX9qHoaF䮪YB_`MVA, ܛ0GH3,L@ QyoKy)3tz3V2vv8\w|5+6@۳ dMTOMa`p+@K f K.@<2*y{BNJF?q#)R>h`!*==<&phUTxhD1\ b)KV#_m5@H@¼.U XT:麥^(tsKt}B)gj"fOЄZ?M#['Cg7[:8Ep@v!nGr+7bkdkd@!pVCc4 Oß~~-ҺS͓u'vwԲLꬔq:Aـ=LeRKS+! G7t!<>3`aR)dPBewǗPv<Ҡ!E(LzkV+ǫOLKH#y>Kb ϤW;1lބpt,|Ssu:DCCB6b0pөwYU]9+C㶊B/[1 u[-Э;ۣ% zaf*aHEKYdl&BI;>NUڍ`*S61]d:`0[i}8nKrA<-P淋b]{XLshռ?t%ףwm~ Z(ײ#Û;yA#o *Z@f'L24u o"MwsW""}YɺwkgY 97GlFٶU1~m&'wŠT!i~m@\]Pa֐"oGi]KZ[W;&YB>wVoj${̛fgse6[/U%l2%lp/Rۀ3z Y@Re#B*k])'UkHhY!.CwS1=~t D@@YR5OK!o;<"3к.w[:R(P-Iw^0@^K-^[w3ǧ:AQWXyɶhaCgB!~ hz5ԯ?:p\N%d8f[Թ7#c@mM- ZAKϮ|`XJ;Qڈ?]}P;3%;Wn ?If%90GR ! Snx% `aUSrNDz ̾7qehNSXwLZb L ;?T2 *%|FvV@Ü y0,tHdo{2%'AWS<%6}ڋm o(*1F^HU8hHN[P+NlaQBf\)!Kt엦t1lQE臘/̴̘#vCK Z^'(So- v̻9nw*; Saa䕘;\㏞ǶMDnMᑹ".M2d&{oZitc]Jf+g*FS RՉ+|?.l&K&繾!̷Xׅ8:10Z-y5oO $,g:0Kd Yڎ˞^zz b f/= a%zsed)k#&s|ԙ KP7|8R{VxlHjf87mkϬvq9|bqY:2Pk xyАUyq@C$ QeViW[aXuEؔ:(ު'tƟsG@!fB!]\\[y]B(겿s%a36ǻҶ~eS> Dqˍ#JeR5>1e4~r^<}KQ Dj>%έ;wǺ}%3eOt70OPC/fh`Fꖸ07 ǒtSӒoo?<`QxuϭIFnL (kG%`>Y:H b~yY9T$x;RMA5v\Vp6sLOq$(F>RjPz/Q*\oZ"V/u2` h)4i`b!.W([z*,aAnjeUOh! ?$if(Q׳Y2mʕ6x7i^I B蟏 MÄm؅鶺O3;zTE,炪 =6D+FboxVLo s}nљꯃoL&N32X=[LYo87<*oV(6iQ)=L4UPƺx2h##"ɻ s U3x7 w%f A,]י1D[FkrhXW+ E!(\ܳT?Z+qbo9E&r|A&%FI</>K _zwSIO3X'=U 1򼋊VU8j)Ҏb/LBvXxILcqy(٧i{;0ZtO5(J,`{aΐRkEe`~Oo[U ] F>u$pt+}F  JgܕX2ey$B< ¶bʸ"e/#:[Yw-yRL)aP ?&_7ܥ;zՕ"FiIp@M6 Q*6]Csk_ 뼆b]cOl;em)HwDӮAJw] QdTnfVD؅KR3N?Or[K*߷_fje;.7I6X Wo$! &gE@<ѓRaߕkyk$O<5!mc jy`)ܞvȳW8 ]xDo /td6R+,fC|YtIRe`QzMœBNԥvOXwWG"Pwpn&L⦍44U8ހp߽/c$~e)`xa|A;絈wޤj|>]ر1e-DTTuKހ"d's̃)p}J4bq MN5R#F!=䳰QEKŚ:@[PwHHa J!IB s { .3Y҃x;RZORG1q{nHa^q ׽b[6;L(G}jS q)¦ORɆ2H;? 1ǪW]( 8/F/aNX-MhU* aTJ<=NJ%])u80/_~ݰW}~`]!eϤ(uLVOV}W AU :qҊZ[b 1E^}ޡNWqpGљ5ḮSRfio6Q)|PM%ZF["_=ټ{r/ğ7e 4-q*#Z!#K{$xxYY]: b߷ϝtiHH~\t'*Uޛ {i4؃qeLkWzkl\Rۅ+CǠ\!֫SHT2Ó䞰ʅ$3BUz!o:@+Ԗ+s9,#>]R]E#:F{G,e壛`lğ3"`izpު xaGT8T:*ýS~02l[~F x#;−h1N~ jc3-Cmleݖ.(l귬!w4g 9_3I[7o-hʟLUݓԭY!rӀo}9Ie c*޳+_FMc^]'+4Ğ^9pXFn0  G_~@@H5BSjމezV#խ!hF@ r]j3 X1#ht>XH5Т,¯[4]Ew>vQ:W=pJޓ66`6AVޘW܋6Ϟa|kي&j{Q7EmU;Z/[ pEVZZ3Wo 2 `.QkC]5{Y2,(R%Sh8GqyZ^6"t:bM'ӮeM_5&n%l(8GxZZ0CEe9Q@ZMPYGG`AQ^P ,fxR945H5o(]t l,Fu$AtsJW :nlH[ZZmecg$YJn){S{H2 =kܷKI&r_6ul2Cpɍ1qSYs: o Y NX8 ,(!d2ΛEjdlUw=KH7p#}PeVfKVa_k;b &G5Yt'EyOXS+={p-~Ԣ:.eхj 틯 mθ3@6 ݞ.4j[ J.+IgPܾ_56\O2#ӧ-qWs]ۊkCx#o%_^s(NSa jq@ h{֫k^{oSLJW/o-C!9KŭuYnZE|(s/xsEՅ],sa4BJQZ)u1MVz2\f,=d 04ۆtwq?MKQ/_8ȸi$i˵b){jNgEUCbuqQV0u ʂ[ErgBƀ@E';l4Qq̲/6z(H_`% ;n3ȴ~W4$w:]D(#yG v)ͩkL~*htm6ގP>]-?UyYc_C"wW.Ļq$\!2{mGL*ɖkA`{N+bYWz:ad$df6,WL@2X k rQRHa$ obᒸ1A[ kɭcf+Ks$cLFPu1yBMVL:C1MRP+cKI n6\ h1>ɲU@(n_W9o6C >@ LX@lu"-Q'{o,6v<{=X6L{@{2kaq_풦_Jړ|c?7k7`nVCmFF4לaNBg*[DEŶ5tI9 O2X&)LhdW)QT3t%0=A&-,N,gbm5_Zj/?]$*PDDCu0(F/xsEjYTLu% qÇ>|E z{hlڦ?]-j KG9yd3M_VN \A[:]qH<ޕJ=p4龑L/f71.ir3*%:Ly:xIr_xJRTdB -g¯{/W۩Ϛ)߶Hu0h}Ob@d?4{ɠHpODK@.b,?ZFrx+Aur3ZN]I|RKh|㰐'kĆFWP3PJjc9dn%%ުnjf? ]\g %M\ s@@+#뱺Nj v>B 3q`R,EL|!x}pR >pv63'Ko0;xlgVDGCE˲>=*`.FnѪ9WjRrߢ-  tѕhax>R7 }vF 438-0Jfu%-B~㜋Yr)sC0 uY=xţYzVZ{|qkݑmtAr^Sx v" t *(Y)[Ibz%r.Q~z2io_CIA|KPW7Y/e2@7sB0WQp-@7ZXUUl/2Mu$s3JVki:5H[f4#t[mگUMG5I6=oe*)h}<@iTFh KF5F,c,迌_`zv2򼙵>Pht/xܷlVPvL /=-qZk 5'a(hkJ԰xH4 =]YU|.r!ߖ'0CBuix&n5!^뗘&ܘ HḚq*&ΪtFAzݹ*sYc@h]T.s!~^/؜ $&M?ݾYEW8Jԕحfh[TѲPMTO+#_Oz`cҫ !#ߥ,]/w99ZԢ-U[c?"fp|p&Ɩluqs<2YL̽4"☩UݑƷWuk`Efxtg9gplP}葴&X}O@Ɣ?يE+ڂtLPe l7b^**WZB"y)t+4򣗆!a;Cz *q.L-6òN*r&:Cf<+pQlEp9X{m6/ln}GC ?D'[)q]5 [eF9&~Oc|A$'H$6c=] ro7t'%V-%0Ηv@FZ(HUIk2 6SQءUIbʿIY{z׽;\ff>$:B".~+x^Z¨γux@K%n@g^k:JoF{" Ԣ`s.+RX;n>Ls%V4틼׿o6FkRqQym3D"G#-qhCʎKOPD!1̆JS΅bu7nX'?p7q5pey6pȟ}dZ{Vta-=PPb9_wۤ~Ռ_NU( I '^ @>Oɴ5Z.%5^F:Ẅ[BVUT'iH@EUc{0 ,YJ ]dBiDx6k t隔F58rވ$[1fmeuŊ:BX̪lTs6٘ yDkW!`SOhWƳ9Ѓ "D-q@^DOTC7^DN^c cS$dI348x EU1dZ%y(##7꙱IlLzP7o K||>bYnmnj xOFw}2ɎAA8Ho sRb6Hz<no#qFn Du&- M a^j在ݩ?" uRV7ےzwLAzGİbD?ohbMJ qB* q}\$ҧ7uəX;? MfZU xc;;$6 ΦW ns})cL(oaT =u!}-ٯU_hWO˖i\T%!߀XԲ0*> C@ergL beWGQg›Fҷ 7]ZfH[>nxRIA9ą3?o M\M}!Ű m~ el-?>)?/)ae-C/L, ^.Pqljh/s)K-ErmcG"Jzv >~^!I?c^s7⏢‚R).x jl:F~H,Q#J $Ԏ\;۴?Bq aȘ-:{q GF z YhxAkDb!p={;A%kv8l)O|APb;7-%ŏZ/ 50mQ&_Gܖ9 ͵(F}Phcy<>ƫ!h`Y>ήy#"]H:vF|3bSe7L3x#@3іpRX^ kHi)gڭ~}? 8MM%yg?"t BQ{Q$ HN +,mh4/ޒUeD X6;*xH81pj Z“z~+5Qύ*<Pv !L<&6zH\+{-*C#L`_P\l%Fk"-{70|: YpAHV.7 O<rU]{izODUeѼ)[+`NpP昏Z p{ i? Dp%G+Ԉ ;֫]4ӂ纫~F*X t۞Cuu=Zb䢺|'lIX~Q)JglLgDݡ 1΀GA^8gwNLb`P1P_1VMzN8K@~,36h$ij!F~!`:[@ 37ggŢs鰋G $:P0\N@\vrC:4x@Bo-mX~,c MfouA_ }Y~5 \_Bo:뾏 X$!cMu4GF)+[1k/;y!<厹L.Bh{VFUF -G܏t(xߐ\Oro)4I8n1{\Haj,7+ۜ}eVU*MWQsNgO@tdcN< 338 gʧt ]Es.I /7ۉR CA dMj@Y3 D YʼniXTBp-*FnL/q*Q ‚Lk"ݏڜ㼼e=Rֆ\ݔYKء{XQW)-0srN $j% $S=Y⧐:+)OtHet͋/4=E5̌U+S4b]8AITxX`-8< }ZS|Z_ ׈ӚbiJqa? 3xwZ^ 3nMuqZψBzY"ƄBj2NR`t5 ۑ-j?]F 硿 {0䂃`0"Vq؄xyQ1aQ>p\wf4fU)H zޯ{ TGdє&;)ߪzWdaWc|#Fb}_k!l2R4$)=L)W,wm AVaHN s rЁq~t<Z# s)eJT.2%2+qgέYzTaI0$DYH\k "T WX3d\Yأ35.;e^;d?[oEN,ͦ`ɀb [/7%Z6g];@6QtMä{i=Vr=n"r~ x֯CT}հȻ!{ _J dvY ,]xAnY8㥦/UgevTn~H|?R3F@?;Ѿ F*K@4(d_w+H::xٛ1J-G)P@'[ʹьȸkUljz|E(lt '؃i[j,O\GE :ۙAӣ`{>/x Vpo=KR k9`*2+x7hH>ΩWM 2W_L7qr:S%('EjE~>7AiHF,},K/~V*@̌&oMiNcM۲4Y"Rájmb,='@ b{uc_ Mdm{M ) NpJX*kIVF\s<(%%;_Tc3?~PX+M,p5[ ]=Yg yz_<]rbK "{@iD)deP $xZh=31#j].*ҋTr}I'mkҺ8C[ (㯟CO&PY); VZ]+16πH~C1fTV~l۽ʗ?OUd4f :]pwӘƳ`s"5b,ͦ["a;Cu#W<$f pſ?uL1,i%87ӌHJ4*}X)vȂ/' j f'^^rB0Fnb-g7I EyK>RI)gg[|lN$UHkkXZX%?_ymѩC2j73"h>#-q2K*؎kƙm}CܟeKC6_N֙0,{ cHYj*q\"Rֽl RkrmYin5MOQnXķьm2/d|mjNC"gQmdHk4H9[ 7ZXD_y ёI n_ȠmyF3Q.HB4慁H9l =nXq-[Zχ ŝ3?P^wXERd[yzEtcfF%wJʖz{5A]N1(=~fc-\ = q%Sh@s2|G=.nT5L`Zkw Q)M?<܃n}l ~[cǩq^ zPZFVAj']-fT[AAodրv:WCTz#5UCQ`%M%Ξo͑^ oi3T-~RPC *0;K;MsnuX&v"nyM?4l8 vcwr-׸P3\~ Hlܪ=֤Mbr "ȈL2x 0cRo+!"g}(C0a ηVSrf -,Hˍd '%Y."E𛋓i5 Cp$|x3pIS%ϬDx,:Zcq+ h37zh[F_PՋ\yPXJ.!Y-;devަw3¢,Ƃ2bfaeMQ7 zcq%Do(fci.=c? YPԱaQH`YiDJ͋CLux &o͝ڠ]-)NVD&XT$0(W۲Jr"^_7]EP\#^ enSޫ&p9ῷ>E=$P&j0)%!1<.uՐWF 4]l6uÔ~4qns:a'-- u3>y0[w[UpEB]cjFg/̃m`,bߤL5N׵ZNGP?֖7Af\e&bw#~kJyvķFoe4 \ Nj Srm%u+=/<E8Fs!ol!sATsKr&ad?=_qoJ qCu(h#RuגZ6X F d7`<)du؊p*`TuBM(zu786P zZVQ:tW/5 {޵&8b eA #,}Bq 6,D+:hRӞ]t=;9yD$|sl:^N䴷 l䫺jZ foZ,7fҽϮ$V PBח0r4(a c~Jя8-#"Z^Z 1&]t3*=g XsM`j_܎m*O|t剭VlxI'86#y_sr("S JOE=340~G"ҼBsiJlޘͩ^CaϱvH ÷,G%MP2Pf#ׇ8Eûm* ÆED)dDiVߓflܕWQ@x *Aj+D-YtNDh;ى9[[%Mǹw &{in˜N'IE #dC 28HF2-oAkAY+0G^+0_"UU1xDa]opU3xCe%lc2ۨ 25wm:b;![)fٮ&9 x*Ѻ־r|R*lPcѼτeNu-bx׺CkK?G"+3TCAt)M ^^ɗ+^tnulr`]uڦ83n&wl+] â1[cUT&f(oo{yQ6mdMaɲԖ=xNW3}a6[NGPڛ9'j3cULi-:hpF߼c xE6^Kw(Q])t0\g?t9$abig![BɁ,90#s[*nv M~od*1#X%I(ㆆt; l"ZOS7T)؎.%6MV-}8nNʮnX(`we>n@lZ*S"FˍVJI c+=j,VxI`KДD$kG"򭍕\>/Omҹ_!_A0K ]ovp$"pi-!o ,;ڴc4W9.Ci_fFM$D1Nj\vu}iF(YYŐ̰Q?L)C|eC"_ҁ)CQ"z&0e&BFK5qQҧ􀼛r gqUv! ? a Yljxh@tr,*Qb8AYkI-|#Ϭd9EgM EH+'QD;qySWD,Xon7fhH g$7|j.@Fj1 a))4X}:^Fa4{*:GvNF~&iAoxCDz8}+wLy90V1wMʘ \+9YFТ# ~V}~.nWIm~ER~!~>LT6W <a} s͎\X kS8RdGHe!X0'$-Zo98@ߙT7Iro8vOjtr?ZlYAB !3bhп5ؘrD5ZK\OIüL]$#`Ms>j {`z-l`s3(2w&fZ&g!7ܐrدȽpj-IVl9Y@FIhJU:m CW*džKp`6eMiO|⒔]Dcd?&:9{j>㒉7tʃ 7Ȕ;k`B(9уWFsS> dmAyIYl8)]9oU)Cw +BS5,CLu #D3y71YXlGYVlz;nŠyyqLv>"9I;+ͮD4Ҍu7k!@R ATDL*_p| RqEM=8<-"K{ &'z\.@2&PC?Uz*!&v;HNkgy]FDT 9EDcy| .gMeނ~WU") n/`2䣟&!& 2xk2con;js&SX΋ B] ߸Nh&z]disQL#wic~w)dKݳ50{A6I|m|@bB?R ANpIP$P @j-r?ZP욀}}rppOʼ=®Y˪9y ,ɷM(.q8vR`3 `GQÿ&|a:GMhhpf:#)6yf{&<e߸| ݴO+0ԭW!3T' b'C4>y)ʢTghq&CVҨIIm鸌l׀{5@؛ *<̎~C}n|{#Dk9_ݗ@nՀ^nB_VmzaL祵Fay kPф\.o}Eyߙ:[^ɩ F<N?:>"֘/ˍh_u.S%-ilнxrV2 ]Pq22 hkXvȲRA``g}(awHt2dﭦtsKd\8\n:ay 2?ab^yKP^4t{w~ٗz^΋ɸ+e1a4Y:&Wx9:ⱡ>ÃP+^@c'nz*%K*P`-9HF \$0E#&?g(ٚ~و6^Уo}y1t=)7SRV[Qh=)i]KzJg,z3)Mm &üU!k3t b7 ڴ! ձ=ff q(j@uj*5gTd'.D7aVd>ș:-@\ҦRb0 `G5+E?7P!f[e xΪ>9bęGZ~>EJB(-B*{0M,SS=5c&\% K{P=՝!|=MXE95=4F򨊅" m [[@gVƣ̈́tQyLS2Y1(f۷`. ƕz̄A,k­o[Ӥ)ydr]R2,[C \;~\XhOK-HO1@pkX?=Zb6.GZj 5 ^GG5f/ 9TR*VA¹}6KM Up_ws" ǷGr3K”(A;p]zHzxK?4L٤ ;-q[m[f1@m+2cPǵxRn+6q`=lCBOhYwF>We&U7OFzЖW^N=: Bxf]zH$P@ ZQ`Z> +i]in-t'Xsp(O֝HPl^,qǧPsq}ZR#WuzhmpXl#a#0Q`Z*ŤHƜ"UILUFUo#otcx1}'Tk7? TviwC(6YOSCU7,ڒYb?(W*xl3; olĒqXW~eZkZ&x82 I/lR𠧸,m m{B5Q豤(SHI$WM38kvrym-V\*&tTB ,TD7|<$3uM%CdV:PaˊD8bA.'١(nȒ uZG}d6| 4kw &gpSt1+QP4k/m]Ԓ!=fv'm ݹsH*FQyc)%I \"ƚ9bH)h0CEyW$1ۈPʇNضKLy6%[tL//5Ǟh% #o1L)k MV1``\r?sH&Ʈ5]U@'|dA_9}ؿ*;:Cքрt3}!LE_GrMp=)8Tp $ LɵF $M{?tDɖ:T{2+H]8@P =ڣ,\4WW4pJGӇѓZ?^#h[O~CHzWB~[2~`*3l?:ug^Օ1- V᳄8`*]|M!\'BmBw`+^`g ]|;i4GWl@: .vj +٭tT=Rw{4#ސ {M#i.U|q%xEDǃ?"2Ѻ<^~ zf67Ut}|~WXv>F^Nj>Q,>ټ^|eT~KqZh*Zll#Wj<VE!_flrOArpf&Wz5`u{[ 6XK uƐ;@S1nܝ3B? f^ux1if ;E[mM6ܤkk MU򃊃]` 2ST%r(A{S ǹʳt4.Z> W{I/jpIěYGlaȵ.0*j|?fՌAm2}01s"-_ek?;>4 VAkA$()*.|:+W7$vKnmLYZa@S`imuyZeqTRL*84d,$Rn?ߤTJg#pSۦ^‚h-t&1PCKQ [ߺKՕC8 ^ C69% >; _ ƨ&ЯȺ5#AiRV}ÙaRP.5^6d{^AW2"W 1߆dneÍ xn[lZN28"eR}z%+|(c1<\@&?_%މ7 xYA'&5k]k{t2ry gflQZUݽ2K׍r4溃+i^4~Fwa6 :SQV*!V]yzFB=2 BJc"G4: g196< .(__]pH+O^65`e_cfXZЯfW&i,e|TRJ xsD3kBm. H%D}g16`͆xǟ͜Y4mXF0=`]9>#cRҥ)uzPqg lʕՉE8;E7-IoF Fq˚=魽 [E%]a30#e(b9gb3Mcn1w026x E":{8Co ߾)Q?U~ADG=bi; "k>cD!a:`v߽a==z(yCN_g%@EgOe|f"$ q?,hA<>`"dq×Ehh>`&FWʓ7S{`}t91+,6+xL25u"gKnN}CWRv"m`|n35_8'J~ZƎ>tWI.LizЫFiM'ji۴c@ݥWG"IYAE[n+!o`hѷ&$ چ?R'|!HY vQy%- M9b˯ׄRO!Ppx7U1Dʺ qv:s<~+ >ףH3nsP:ɘٛYҙ73j^r"Kdg<ʘ?n.o)=AiP ꖅ[!V>|{n?a#Fsǂ9 )Jߦ毑C<׆cpԃ @DgZ@s\dĢJG#EQw"/(`>p_#%_y;-{{o3jt~%Wsp0Hŗ2E$4Ԝ@7TDJIx٢=BHvhbVXGfzho #  tQ0:z-@Ӑ?bP0:5co)n]g:z%Ԅ=*cNΤI{P'| M<}-0snVRB%(Mʎ˺^ZGnT_`dnX0ĘvvX@J#ZH_5 t|͊9Űh-9:cfPfH-퇘I\Kd4eU! ܳ͝?ĸ0}lm ؀E;iR S 5ۍm~7I\#4w)3!t3!_ˏ*w;ݍI[=xWZdjW>FU%[րΠF*|T%s(3jtGB4x.^vbp8čm<䆚걯2w8f0l :)?,F|n;%m㠺h3?E޼19sI4ߑC@l,cҹ:F@\p)ݢZDYLW/EK)c&U /;xjqk'CmFbZdʓժ4QbްH53`iشJOnʌK'M ELKkyuV8UdN|gv >/Rxu%lsnW ,:̸Y*vyYZW iW#7â[jfr4u4`MDRy`iTE Yn=mz](q7wumj!^Nb/_=8hq>n쐂j{1Mm,y$k&xWTlĹVH#{b~~SSN` EژD|`d!C2" d+6"r_K8b"ތyQ>,gW8KʴUۊrlT𰙜6[_fINNp6'*I*{NG,Y^6NJЯm D4p/*˳QE1kzՃsrSDV3ԛ53?WQyb,H (e.FA`t-o{t%aK7˛Ww}3:f>DE<(4 s^}HJVY%T<|OtN*h2lz'zfHVf6ZUK7s:m53̨u DhY/d{T_qm)T Щ[V㐳iuY|geNJnGΝT1o@{i8 )'@YI5s9٘hQǑ1. Q{y:JZ֜U4z-r*j'o( SM x!JvM`,ޓ'͏l+X%)#IEцz_t;vOJ Lhdr.!-Pa pkKyW 鄑сGFoaU&NtQ@l>$>ܳ7d{(!ՔPJGO"٢kx@țug' wg{Jk#822 *jm #'> shi1yAbQ,̣dƙy^!Im&* wሐ,H@>^4@&CuJしelbmCN(ЌU<٤M"|%"b(PX/$DK$ -%Z~y^x׋=<ӻN oWmq qbtyNq1R׀,;ϏO|w,H> ้|'+ꯒ9`)16?y , 5_úFᶭzt bϤgpw3 \ .!)`HH{Iicn7̲W( ŵX(VVкq~tH>蝢v0Rw0uD%P"mN4k ẄvsCHpzQ^מ"f7I!Ƅ)0$geF3JR*_q9:[iaeVq@X,uVQᨮr!1x;?xp*` sテ̈́ DBge e}$A@,Zc齵Ar̕Ԧt'c) k֩7p ?hW)!1v6LfBgX1 akksBսȩB5 qr|g)zHUT01YWۭ )$j}"#Ҿ61'noH.`x2M^W i ɼωsȥLKdap2\14VB 6M[E؎WXXB~P"8.ڻ+w |]sl4Ԑ[iv,FU# )F&sj\@*5TZIje|TK&↜NS'0MVb=kYҳ۟!HpנSum'<*K. *pOFsyr's#6ep-Y&Ot`[wd ޭhOIޅ2ۆU5V&cym %d, vYI)&A`ABT6KIZh|>zP? ~1mhBLV7c:X#cdg M:@$i3"nC#[סּvcr͡8A~!Ie2k%%di{NM쐿` @D긋)uuoڢNjkjVD&&Y u{jMxoB.xwg$ xu{߉KBl>Hnly49D8Y3X'sƀm*AHRGȚ_ڦA;:*'0Ϳ՜M >-˘QN *"A2g,fd}.Tw[Z46B9HpU+\F;ݽ{k89rN)֪{jEz!XlY({i>4BIH$+TˆDhCEXi+vt'g\v~T ,wc|.&^r|n%h=3Q6 9~+W$^d:W4r_.iҽjC{]$yxiOQjmaT:_$\Is Z~yILN"P>R|O@dXEȇ RLjքd 3%ec%-W[s $y=1@9pT$eQ` eUh=P0˿i1uVhhbK%7|Vk$Ƥ,߁מN#\)s߯sL>u%K`YEz1@ن6p{5ӟyYJoO2j`';Jem^}P|"(5$ZHgdګ MӔ~Q61x|)[\Hӊ#-`aXkX R;|bt*vĬ|4#6c͂\{)=]\m&|+ܨ|b8;%G6WfbqϴFA4C_bSzE!ZS }>K ?gɺ?rVVFVf*ײ_L4Vx9BѱV\ %Pj\; ?^JN~y}P=OQ/pa# qʹ;2B@DfJ34"R!D'i+Y-a*RH$2i ])#`Khj`NP''!9ԭ PKۡ6MQ]zziEзஷR+ Cak.]ЮbX#~fFx(:V_!x &m:2JJBb_Wzsq-~^c4&vy_Z@ ]6 *׿=Brzf k[-{:RPz^? MpPG 99;MB6E!ճ}4+IxHJ +x+1eI7 T zlOMGKeޞ :> b 0rZC=ڕtO}0cgP2j\_2wIM/-^@lڮibXJ:S^J5pCa[LCxlPO􄦚{q9A*r[C fbDt8Ys0:t?'7j>٦QcS^WI:}sNaOI׷S'܄'}fbTXYY澙\٨c;$(7| y2O*(o-u72w!uq!Bʒ7CͧjMcd+P 2oD+$%mrا97MUd̯cIW>+ sWzжvE:"L\(Pu ҡO30)TmL=fpX5BnO'q;{<;c̣ZT?U-SB9d)/KGj.ܶQ j@LƛdQ!ltȰuÒUZvwe.kNI;à\\޴Dn0>K ݾCOZValu OtR2N\y45ō[:R0/fV-S%, e/!ZhN!#amv=le-ip7dv{tn[pBOcԺ-h摲_Aaᤎ sy,‹)B=kCVԇKmOGҷ$$Q8+TjReSX{ K]&me4g(۳i KKlEC=<4|?Љ"kE%L}˜h=vO/_A]p3*ϖQ -]sdNMm abr_#S|0b!uL!r}<2|;!J9I"5H&e8Z >~v[/n b0i5:oi9GVl~2"jɨQϋ6&SM8=j~)RGNH@֣jf't8noWݱ J&Wf܋0%HQsqdJ цb1#!/g~OTB*ZI#D`.!x'rI'%`5jO‛O-ц JO2V&3\K9\`14D]zH;Mq/h9KZEm{N}H5x., jRQA |OrE:Fm6]c3'*fqFKL6ObX\J2DP :U19FYHeN'f s\5F Sޘ#jȏ&kvP0deW]A`}p3d5t(ɬ2F%}GC~D ~vK6dv"v ZRH*iX1Ta6tk}0ė{iw;0:U10lU$;)!!DH|)+B~$ߏ҃hƚ-ZFk 5B:>+~ 55u4_.leiM,ڊQA72^;*5#t&6B8$&-ž>߉w3^@/1XYI'<*Ombbh9L_xKezL)>"@M?Ne=&'ovL'V__T`b54TL䀹I3"4/6M=f=ȟH s#8QKr^^?'iY3gXơwֶM[M6 ~ \8l;<$<ݩ[5|~hz?kE-7?TvO;sO8 /|p{Nm7x T <ϳxI1 EpϡkOז}ĩ(><&h/e“u3lDdb|+ӁD[GKp:S3%ALJUC%p0""5p|/ ݜ\")/@J>PĆ}n ?؋QOyf1 돘iPh6/--iP-}Nh!srfud48Lh¬6bT%#bjfg`/'cńŧ_lKBt KRu-`*c5>5$m>~dL&Cau<"'y*w7]_ce\̩Cn4o9򙺱#iɮ(./r(F%"Z4ѿMSgrbw(OuV'̑=9` u#QBb}6Ƞv 2VΈ'k:Uf{d%9GI2y E{\v:_S(ddo $I3"7- sDE)[\9-o1 4П3Qsr}rq5oijZg<7e̒oI!=Zt QJ#"V$[ =Q 5̟iEaPGR$7ATӽF$7ze. *"pK|ux+d|DNƕLKv;B@]0JyŔb].v-L(I"8]u||*4<(^]${cBwe_ 6ۓ>xaJ׆`i\'X']E? RpӔ20NÿZ>P_ϕ(2z׍)E}@l.=`I{jс_$ǒqDpKt-ݡ/6T -ukYwXuWr?^MրJ02=Zv&iJiQE[c%x9,U&kBW{ >/>fg'0P&ˊAKư7R7ȼdy1[#K%F*D\/r$4;eMu|]@aZFoʌ'CW-Cj+T0͇?f[lYMx< >9k,t=U1B4ՏY7p;ݢc.c8y7F0hEwrջcsv bbc^-ERS=(~K=Bt%# Qj$5U xhhCKH{"OtY:ap%[JaHZ/疩QfV^R&i/I0%䠀;[5wtjf9EFT2dbHOD<Smk)VgKv8v fmQLlht'K 1꫻Ur9ص_3`IN a |{$86!U/s> vȰ٠1hpWg.X#ikiM0{̼$ʀ`3(H!}=յ/m-Ŷz UV1Ob!QC~/%Y sth5zs .ma&J}]+*cE$j,MZzL4nY]pn]⪪PUk4Q"'crsKv%u}|#S :?^J4VEcb63jϾ/=F]+"{zE3ʞ#p6LZy+R|(dU90uw?˘X;,hbw0p~|l5Vu;l5aWW\ P7 E=J~Dyh\ph 12(98]9dI ZG8/1I~fl5\ EzGmVOJV L uWmMBQ,OV*SNѤ \f7M8`746Ai ,]EqXg+HJZ2QRI`r1- eCOr%HMZZUoTgBs K1jrܘ*^Wf;deP|{%.ka{ɀعl!NP מo_&[̖ \N|* !wZ}.0FͷvZٰH.qVӯ[%@fkwM"W' s:<V'VoB.Dkv-1<.x2@ۯ1_OBV(5KbģɄ)Pn-Wd)'n[LG+`7u !8!+`X =NNFʄ CV@Gvt|;6D+ĉp4Aex{ IAlHIh#5RWfr҈:v2 j<5Cij3ڨHxw+b4u6|\/Q׶#hA2^ǞLg/3tEjUTT BH )/ na>XY R^ İ~0Ƒ13.уس/=2ھ%!k轍3Ւ]!NF=@p|)iiNg nְoڱw"TՌbä)g͢)rH`1F\-Sµ+xWýSz#VuXRD3^\幒6w ?L0)Zxc{4Ʀi/^v\ClWMp"Qpv\/"j /hSO 鶾UM`m%IH˜%0(ȸXFy\ᶹ5\m(0vB9TqN>hf| 1b OX0*N%tB_p-"vu==˾‰&#!7iU/ 03(nnؘoqRO=o7ԓ-d[E';9龎;( PҞՔ ѷ!(Q}HʠʲčU&O]=S"7W=r5( t B({w)<%p_myFBxr`S-%X"Y7i [!>Tf SrM)8]H$cIMVq$gq*3b%$ />}?ڠr'$9}L Z@MZՋRx< -l\6p ZD[~5QQa VhidG`g_ ٧aqgWn/+rFo] 10hVCMpCL2eڼC??e&/8Bq>lxkb']lMdhvGOAr-s Uj^c }5 |&8FI7<9A|I]V)+83" XI}zp;Qq<@ydoGxH s{4P=IqW;bf)!sc W[|=A <R-,+43坙`gU5X_Q/.HoEԛfbT9A*p1tLcjf$|Q<sG)q\E')_8c(QG7jk~m2uyuÆ!H]gŌ9YxY%f?uzRF(Vxkȧ`+>h=Yp8헹X5nODvJ[䈝6#`n QA N]^ ?􈴄/Œ$mpھ#4RSТ.*>|D% yL01sޏHfN]SJb n޻J rBc# }[tq,A숨ҿ?[f{Cu j8Du!DC 'E.0OblCS9kPmIWLWh \"o :][Ù5|wR`Ine0YfK?JP4_%8ۥos/M~g~m XXMNG*8-]d%VlC^2`%ܤ_zNnN{MPaBVɨ̾"Xy|B 1w!NO& H Q }=ʕo*NthG֮m&d;[:01JE*wU|g?Ćq{2 ;hJ=yO,!lP:'wA"D QjK#bť68`6Nr)07DT"1x{ Sl3Uy{8 wQ1K6ek[@C)GLM1(#U:WHZۃ  'Yjf R⧝pogK/uuw,}]X!RqHgT^VV9pIEJR׏{e[95YV+5\8}X?xtM"$ Y:p0<7;E1T1qP:u:[&zjUcu9{FVtJ[ճl0G&rQ.baTex'Dz+Jl@pWVY=t/Yf|}]-JSBtqQ`AB(I:xQ}9C _+eB*T Qϋ͍;!!t з牸w~/&,=sc]c.+LOx˱-9n6`!gE-s2j uR(Ԯ]Id}贛h4m&548%QZ1$f~ H.W+x1t[M$aDi}ymzo[#nc6@(qY %:x(FjjRLh2Wڄ6`|10= 6~xڔ:xf߇'`OocZGخFs5.g&5>ϵ, < _*}uNspm􆁕ꢛn-YDfoWܭZ֢AU"XAc]8RIo5T.@" oUElmZ?$N^j럼tEیub6:"(oۜEVjN^6{m+l6a9J"\gk[8bp4{L`KT^񏀱@ 'X: . w#gOlZQ>:SJG o2GjAF!?ZN/(C0ǺzOl6sP l"54mc+oo+iq>6d.ɴDSCG09VA[cʤl4UFT 6x"b C`t^ɁE:hdr=e=F ?4,mp:lX¥Dwʐg*N}#+L>O}yU4Fz@,')b}y8Xdk"y)ݜV8y9>ڞD2˾ٲj.B>)Hl *!h>DHDRʳk EDjNG=KzS3#a>E%DJ-RBM\HY5Q$ 5ъ=FzmƁ(1}? @dD8 ҧZEPa ^Xo:qV%?g=cg%m2$hgcː?۰Ipk;$W8Da8Ly(zz]39'.|G@pwYq9xAV:ݹ> H|靡9&-"?#VgUdhE&DS]}i5c75Q_NO\K;w^zυH);oλsj煑`wv$s"]> M@Қz qSH{kQ̏ `N8-h&v@'%EϺ*50Bֺ7z)rD"1ngg!PFy󌛂.TMj% ߕ*7'Hm()F[Hb0RbN}g BV؁)E2()UbfU?,W<ׅ'#cYIrgqL֥3㺟M$2uݳ.ať H{-gRI::k |cA,;^A@?oj?p 㒍/#m$ԨoV Rx(S +GE&Jue\4yxB3SeԤDJc!)v&Zvmc{k3]M <|>*YfXYbP@3/ Q&`$!Ա4 k-Amnbwm}|rI:gZn7&!G/"g5`` z\}Fノ|e$^w&p)`.+l'eq̊?/ Nz`M%$j#seܯ%dk.`E5ڥ%EM7@8k6tYl~:}ЇԏKN.A>͎CzY+o'DL{O$33^)A7xzl*P^C[--ݰLX٢,ߒ%l[:wDpm>p5Z&8T%4`rNwe}KicRf?x,Z&sX*I}Hsh*TѡF==8\|KEJ!vUzB')iYVA; W%C-Ъd{mG,)f& >Ć@t6Au5~.Jc@ɥM P>8oEP-}'RQBf}*1^Q}~ IǕZv`\:hTpſ]L--  zXE^R6J9T7zY&KS'π#0|~Qb r j/RlRq*8ku;%F;c"}]&Վܴ5Irp5Ŋy8;Ⱥ'BRPy>@j6E4^>t?nw P$Y\t2 |WT##uՌn ˔'V1w~ûEtІp%s2=K"1YXntEB&VH#ɋJmKk;m|Ȥ.nSdĚ \YX񺲘}R^}-E&]+c2&S^a|`.XLuz(2;D!w0Dg5n[xFgI&SOa+U-29_p=cU=ןtoIL"wZVK2՟Y:ňZei8 ~j#V6ecXu'b ku!fBz̖p7Z%4WP#W*M-1!Y\^ RS]UV8F aى"/7OΞɼMjz<xo"B2݁-jcy!VKpL<4(/i U(ˀ!F!^6,̇)DXvi2n5`oFG`0`N;hsN9si6{0rB#Pzaށff;CKE<_B<}tV!bӛEgfy/H;۹BXЇctbjNU^ct[-b Mgݍ.h|tukluK _ġO Ѭ6ؗ{ &?-2@}qO PN dӞrw^'̉IԏV VYϩD3~Ïlӡ_i0bGu (,0A@|aF~^0᧮: 3WUm$cEf _f25Q Y@նH4סڂ$y~oU>m! y۷{-5nGhpq4}0.ϳUzTp04zDtvar>d$r쭋< e{21U XS*'Cgٺt!2X-j|s> z3mWS ʗ\J C1]mq@WhIK薴;4ʨwbqBw^/ί~,mxz9DtC$NPNCnX7fHWk1X1BWެGU"gҝ?!3Qr!piZ\%|[C-Etb`g5朎]IUCrģK4`aSײjӕ\i645Bo)uIU6RR#%|.P 3mZ݉#cm֧T9g tQFf!d D{fI -M"5}пc`͹Y/CU_s tw9Ud,f/4Ԟªыd$@>y}\tLE@T^@nM+05l~yLkGoݴmj-zI t;/3IKJ#{ЩzSĸxUJ^[6/\bg䞳TߓJcNo`~(4{ϟ/Dž4qr5-GozY$%4˹t’RoBЍE O<^y&afޕɬ3ΐ#pyZM"Jk=1rKwIc 6Vr3\Jn~>Mm`GXNq%Х#!jU\z{MϳGf%&D#N?D HzwnFȣ7i==5}P7^V#%ZW\uN??,9akf 1FL*uW;4K?WN~kZ5hh>,$%hlLOtqթ&؀or2kST<əO/Գ@d+dˋ&ʺ $)f? G/gK|).YDиUF7Umv"@]Ofr@ 2#'3M|G-}Yf#3]㠽\=vqº0%p@T-OF d2f"O21Ji_vc_k-05EbqN5+( ??Ŵm+jBN35JW"=pgmҀ&'Uω92l&FtlV֧x;Mn*THof4(;$.\[smEҖ `9'Htٹڄ@I_{fVD p?9%0S< @_2VT'Z[ /ޱF7% i--ٞ*AicqC,ܲki' ܏SRL ~$95lx؆j)ˬ6fFe( {zrgyFBvPjhpW覜XRKIo/.Lm, e{i4AQoXȱ gM!bc$ӲlN%?uudcDYaUf\38ԞHP:C:шGY8Vqu[S&s[Q"uí0y"3Qqa 8@V_fCCӻZΖv}xiL=²P.pퟥ0[ L(Bߒgd+nZ@PRLHtI7a Ltlݻ4l#dF4#FI/t>'eTD:tUN9t /+ݷշRy;x%ںϥ0@H E GBCPC:7kMN[IpJvdJpܾ<€7v6 m7R'jg"ԳCH2脛FU!SH8T q4a*۟.0gwXr!**+CVpFzOwRA[-P)4N 3[8$ZeGX7lV;> eVh6?v58ק:ʌvce"D[ΰd}6J 2-팏L% 3) rŒ%(19ӡ|gVnsmg68" muHOc[(Qd9diDW&i(du^zEщ3eB7^4.~93/N{{]0&.=ӝ'_7#N"o2.@r?QQlB#&`ƥV1GVYh/פz;%Q6ͫتp':%] <܈YG~[KwH[2g Nz/Ч*^f6$ܾU<Ē:7aўO G V@c*q<4#BgDKM8eyei- L,ëasx^ ?cMU\iH?QG S֠gF(O3:Dt8dLUgKwJZYb;9H@x|t?:殒nY~c$y/gZ*\,nN9VH%B`VyBQ^#93ـ (H Fq=i +.S) sJ:Yd:kM@ObȠQ*%H)^2bNÃS}TQBJK)M Iӧuj⌵F^YtE}:]fJ|x.dQ@ʯ@j~g/‘S3r~ak*Q)>aQ2WrB (yoEuwр.'2u4_X|%K9ޛIԣS"=`yl?w7PW* 9!Pe !l X I31-4Q =͂:Q]U0]Y.SS6#C;K?͝NBf6Ka kh*iT6GxLD!x{q8,PA  P▋8\'ԦͰi;6c܎\.n; 8J9(j/PN8 i9+SwS92jKF7YҶqVG&џs?k$oMkb9#7pvR(lt m)5vxكh+RjZ]8ȝ7+sȵ`෱k+LܐVb<`>`֤WaN9<M3Wr:W8M>1gK4B&oA eE6WhNzж)nf(MsN%qxs൐)}IuF*1/ހ2h+Rn<$(vIΈJ/AAH}TF4Mdþt+r3jzmum&tWYTY/ 4Mjꌙ8U}V(?㌐!Pl qs 7%DxW\F5a]D{t Kz:Ɍ \~sfmjR5M,y1b-- &cC bl MSUJJ=%=5KW% KuN&K)igۯ#@(uqᖛ~fbOzLt-Is_hHz(AL:PN]4q#q={slzcxAy rv|^lne 1vw:#ݳkeJ;| ωٚF8QvԳ'ز2H=i u*zePQ1t}"pˀR.>wMG׼snSNcه^e|B3&IBlOmK#6Zw",-C ߭3t5?_"nÒ9gf˧Pk^rP{/Dmh9G@p +,[M.ُcTAѺ+:l4 wmm sz%75ߩzgesn}šB`!S p@fjW1?rߦ|3fЭH!KR̶dJy %ĈR sQ]GRů 3P[B)/ĕ X'Z\ Ws)^JA !w@4?N$=zmoMl*r@G80sŊd7XPݱQU2fIqsCMCEq~fV8qKc1zwփhe_W!6PfYB-|u_V ]E<2>hZ8 N84HiEߏS5Y5 vzʴ NN8Ly3GmC;ڬ4*< BX_QcX62hbп㻤dwW yv\|;c'c ;nCA ;O5J0ߵ稖\Ӧ})F ]@k4gnQOMg?ca|qki&i<5|F*2?4k((lL.u`(zV_yFwBn(C7p=1c>wN"8*- ~vЋC!}pS@EMw$'[˽Q*k5 = x*Ih6RfE ZO.ǡ>1kT@|y`!oxB7E!$t̞cbUcZ*"Hg0l{rS As^[Oշ~Odr㸴$~&](R\4|ξjZFV -A;#VP[&h<&yr\mcvPQlcw-BĊ-`f $ʀK"(!qπ,x|hY'$ 9y.o#@ ceu؇1 Cay[A'ϧ < p`֬|Aa|/;Ib|vJNu︮w\֤Tx$.[a_u{1>XnYg]f1R>a0cjc 6K-lk% 5(\R#*F rl& 4 fL_wq0.ݽȔxFyTb=wSKqcOd:{ &TFQ9#xM1cͺޖ'#"nuSjW$\$Wb`F 4~42{*Iu"+V6,܅߃Ρlc$%οe=c2VvmlAe`_> U0%dUTf>^;W*TXz{d]l$-hwVr݃I+&+[K<=X|>MNWclmhv$`n!3%J<<&V xz7ND ~;ZڋB!5r˚(` ͑}Ժ΁r2HƑkҊtl;ܵNAȦY+5-6f NpM de5#!&)+-I\L@ P6]^KK'a,-Wڿxy/Fk;֬R'XmmhX&2i [M/0oыmUMW x@YluEN&u}t26ͮ orǒ"xg£ײO [▲+bXMmJ1t$q\ ʙ8 4A 51o=}q9q|[ k'ÅGiӻ@MM)tf!&Q wv%9u=I$Ś +[۞5'H,{9*bñ"-[~D0$7oכG"lZKI ML ȑZ |{:M:u 1MWƒ. x _M¦82 <RWЩ}"p.3T)Aq7ϲ&e:883RG"d  ]c~j|3ixYTw 񴒐2[qA?Z?7)T)y)Q ;K<3Q"wl*~nVg]_Fa5xcB4d l)]/iײ)C6rX ʝ<;D֣J `$a ky\437$v؇%kW^2O;i_!L G{F}'&ZKe븄04ܦg 㴒z3i" KbN8H޴C7 ~םWZ rg.ET+Q ']`}Ċc0SB$  ́x Sm }{2:3%3Ay7>Ql~-#AdABLukK=;сSS"~C2~AHrt O(^.IpH9vUM+ cO#5m&@Ԙ 1\\a8,g/5H^S/_0ork`zI>L2/ރ`nx-@bQr@5݉V'c< vxRal]&!r3q/??k{^uS^.\564w=;}(V]6X7?ݑQuF.6 s31v?moH9df@vF|"kmrgmР*y(fXOHиB F<(TMBUמvX3騔^G;wʿ|Bx'i%fЎIh1m/صv4fkOط+F]+F[NUԙq/ nd[HMHZ3 ߡ\2T D5$sE4.5K9r[ְPN ^.W!*1*#-y;^F;prsiBX_%Ow*HnTK\O'3UoN}i[X[1RIPÍuBef3T@wA&q\}$*R:N2?4 2uEA~v!̹WdٓIUzBKU"ZD|k>KxYKTWx6eE Wل!ƒxS@7[/ls@= K`fXhRN$aVP!ΔOrYxl5S]tK:eĀM35/]0&TGQ @ٯuH5QՑ Vgё7@׋/:i ɓo 3\o|t@ψね)ե2Tgq1u <˅ϸ;yi)dBp4MıRVUCy"H~Y6̲p[!I}=,ܷW8HZCYPNy=^A ^-MU3#+&T4ֳ)kcnzf&`[xHS ~s\--Be_ N1Ge1l~V|x_a/ 2 Qpa?:sxwGNWft,.XygU"К~x)|>K09wyuo 0bjnB]iuk~i{qkNwQtj7 ԆI`'T3J'Hsg0d?S>KEtz oFƨ!49",қ5jH?V{< w*PM9?ރI^qh i{g:jZ'(-i%谤δyxvyjIx'XY+^n/n̒Yz*R L~Ɣ3A>(YJ4k3{_O{ $7v=I:v[DqL[`+d7O 8jZȻ,)(Wۖ $BzVw$yDV!_H|&|E;(PzQ붰0 \+B$hF~jNZ*j`ԓ~3,#/keC]9U9]'DR=i v?;_qF"KuIS!sEnբw׸jj58wĉ(2bv̛OŴ6i|})*"EpebS ҸEG1/Xc( ~z2+R hnnRB=OK%\:{8r"iZQg$Ha|p+Gw%/J/!=Fj:!7S*&Rr^JLt4{A2#` A>+`[ۓW|D-dC8gߴGj5EiMG LnM ꣚! %IL4^P% '"Iy<08v?awbǃx H4z[Z;Aҭِ3dawYoemBPvvxU$"sxy \߯ạ:Īc/+UpC`zX%ly{` OZek%a1w4VS]!$71dBWBE/G܏MfleDކ^uqm9ʸSD;gἳ(DS@ 7!WZV"\mf-Emh&IO,!$,@֕0{[F-!3gWqC&7u"\PΕ}y!5Ȋ s31{ 8W2p<]L/ UR x8DG}E*{_E*{2^j]W#ʿ˟?.xϝ t9T5,m_VkZҷ~cfDcs/Ih{a`]c O.`а\ eix1mx1X`uTAF=k7V b{h87+V%6_\"duOg <$bh#lZa< N~ i'!̢aaΔL-˘15pmW8c |YR˛WL]eTigsLqDP-n~:]7t{Yg쏭&w,@Nrm{ݴij[[ AXqQ?ʗ6={q '7-'pNw ”#?T)i > ?կT%G i}IG_ЀXK#HZ$]035Z[UF`\w-'arCx߆=5ɂ~1sEZ:8Fa21+:/5gB%[75+D}r¤Eł8*.1!2sۜg|])Ι Ha[1:bmE9r䫲W?YY_\HUn0P\ d\KceGr/RΌ \ŧ݉aGfC4_2& q̻H.7 |[դ'*uL?v#Uoq}>NoO  kyb/SϊL;pQtQ%Kk3MWg}(86٫Cγ?|b<Ͳf]flj}ޏy$Mu*[̟xhh=dx4oԤM]oGMS"h)3>{#ؓk1iSƣࡀ342:Ej wlcRl:*o /atӇW_j09Y7:^ŒMK)Zv(W!-3F [ońLEjbNYCEz3HZ0ҀE3X>(N0˫jc*7rC1>t'c3߱T(u: 7]uU)e*1Zb=yq WFlwnX˒rA0+{Ni zK +;<1O!6x&Zc[JOwJU)6Zg$6Ko I٣ELgoQ*$ij",m3 <fB #[kNςxV sġND[c 3э آs[;37B:Gc&\x0aYWHy{6Zs4h~]޹wn®*ߛup>t[Kz=BU)"n U= !7h&-R%LY:VGYB}-_(J"[ӰfxDsCC^qQ,CzUp<4,4e9,4Jg"3u4I`s8'w xqB.Y+JF5?:n2 Ѐ= D%^iC ?ə vB4J rs,e=',cA߹?t["vc:f(a*GYjC97[*t>z.PSُ<\L KBj7HDk =r{h#k@X$a3h`yMsu(.l~{$ڐ3*"2E?44.tV ŠtRʣ533kS`Ǿ(CYqѺk3ʘҰt1槈`Klh4[gq-sh +ti-.a&*@Yz6{^mjmP=SԹ#Lv\#V>TwV#CUc]=^ijP ,u5) @ݧ𪥀I\.aO\yY lr0ZmQI! +ȶՈ|V?Z"g ws*z߭$͑>vÎ0h+x x)Z5?G&SD\STpRB '[KEtNjǭɅ!9,\3ψk;yH̱'%-ŒqD4x]H^,?qźv*^)+RɈ‹}N9jAQ0ӀeкIV%(*%jS'}PP7t 4Yib_(2[2iJ"^y 5\%͊$ҍ &ίb"U@ZOqRx4bͦ,4jX%5UV6@=:æZirECKr>^^[x2jHE5ޑ4o{C58ҭf "/ C,_CYO1j̋)r4 O), ^I;.AzZV]@m2Nl/;`Z|]Eٳ}Р :.䒵j 4v#O=ky&eH/14J>k8oB+g9Ǒ5GS ^A;flIUHU4``2[@ќx5T mC+,n|HIrSVBy^4.mk0B˔b`cκ'SR^̡IPȰ~4Sv%]=V؜6tštтuYvnhbSoԂKM@?Hy/X/bbo3WP&Ipó =c"TeN!;=(mY6PHT`i</7Ux)) eW ކ1dxc|xп,I=:"a.8-L>ےkbΆ6ML*(#觨{ִb"K!P[2n) B@$VHo(J6Exs;W֡_-IĀWH"lC/!kgV 0|;_ Fy"wLEXGy)_2ÌIqQ9rB-tz}Ar23zzeȽāk{բ@N&;<6I$ɆU{FݕhBm DZUlnp.'ංh¨3|0o}m v2Ɓpsc~J0*r+ƕO (#8bRMx7(Yzyd(֥uvf*w4s6+*3 -ce#] e㥾F.Z;?宄PcFXTiTZ=v 5ͧs'^I"*Tafz7Nb ʴv}y<6dn)3R8ݴmϙW˲N<72%DqS8l+X269g13{G5(r; x7:q| r.Mz$g SDٗ2<&uJ}AFY*ɜ"x`#8&hCZ/_ZAR0n*`|Wv+q #?/tLLR3Kr8#e#WkCS*( ѻ UT.l$}$l3|atmR`37ލaQq *[-C:ɋAm9L(阯  ]zkxaZ{u(Vܼyp~>GN_~~\"Zl(M&& sKDmЀ#/ܑ 7d>/@nʀ-⚦x^.䛸F 5.]eb#R uY"MB8kÐ*xW(5ׯdBG6ƻ^,  $^Pq}H8v;"hoTNCDŽbؖMwi<"fl>fltyxï0Z/ o3-\VG`% @Y/$މIu_rl`҅Թ% ~sW %q!w,dTo 9'{"kI)M֍@U'%Fg i35aTaZ?Ϻ 9@k(qn Eh˛oވпKhCSe#I9tb4`2&Ϋ,XPˀӫx{[BeTn5$aܼ zGv,罁o٢Fb&2unE~Õr,M;Izu!m; GF0Z 9j+r-Ġ#Mm)&:iXPZ؄~Tp&?b #'a0?}}N9-ae@FǦ}69_ sƢYyd}m^@;=~JH"*Ut3x\ \XD8_w"|}Fkm{ϢlůpD9߄^q$gBkR2pTp,`O;aaO?")Z1g|cL2l`c4; 8~Lfv]`pD(/ T n#ё9s21T@k2/\$U?_!zOxO\^5UFdۭ${0㋏l] w1<8ߜ*$] _]骗,t<- ,M*~1fl[;g_n\%ljGZ݀ql_V{&=e6xjm:nzҦQ!Z"ڃ_RЄy GTL+ϓw=Nʮ6.[(d0^W"[ۛ7u7uIj@cͦ9VLpt]c.mԯ}QZ\Hl\ HH>ɾ\3J$ $sO y*vBDn7}P06 ݳWp g)/uL'xɹ"K 5}Ҝw #cjHt tuؚC: 5b[&i RKJXڱK" -;gH%v9[PA`7K)x{жT"p Ơ39QJDih+;1%aeuSg<[R Ou3;&tJGP!_& .]P)?@Ӌ'rK8ՀYtfЦҙΉCU>._NLh-c=(}yڢ7¢m"E7arw{qtW5*&LqSOI1=|XSMKߙ03b8B!Ez֟,FV cX>)w8 K]uš)ۼIT} NY޵'U{#'G(XSR]S`y'lmB(wX=K*踹=TBXKf`6 F=*Iu%mz+z֞u,hAj,Fr0ceQʮHB? b^b"{}g/ijcp6 J^ɶ_W? nt[C9[D+WKQh7|19r" :7RŎH\˷4,GOv.P]][]:`QF{)Sg~54 Q[/zMb*`{c)o8^CnvZΒ+ұB˼'Bn)r|Gi뉓Lz:ϒă DRB[ߗ+@Ex 0 |8QI= 2ɒK'`Y,1֘6ܩd?(/Ϧȼ]"JM6G&'K fJTngMRSKa_;L|/&[WlʫU#5."{H@˭}gEОF"ItQʃM]@֒ Me>hj46y`sQC/y+Zt[CgJScd&TKL˫܆8-_%-01RWmQ#'jCI>Po< |2K{u!-Z< 7@uAA>pN3Aۜk`m>="Z6x2lctEN?0aqJ( ih78.DE C5[c FqغLBӮ~2ïSoUzWHׄDLߋ[䗑*DKsDLyQg ;epG  nS4[ilPas D\#=J"Ts{=ho4nSX`.o=Ӿ_4qZ}P:Ť6dgHL@Ռ0nAyZ;S K~~` nQ_.d -*:y.!ѪhH!uTz*ccF6gI'/;Y"RlYJeNQ#3Pzi w׉r&CUz1?}~ƒkR8"Ԥa1۸\~@ԧg`Jމ`ҭT/{^} Mգb6aݥU[#MCuI]?q `91h)5SMl5>3*W{ @aԺybmZA5FN~\9UfTIꐞ)y4@.ט>^3w̬ûg y9.)`nn[ jKsdwUԄ8bEon ųsSҿVIT|ċ768ELb,(T6\\U~|L*xIH&D$\N%.w;Yїa÷w>A֒k)#ɚB_阒cDk bY)g6ޡ^YO|A,|,EWcQT/Jon.~Jzyq`oex?^64؍o@Hb"mp>q==y6( + d@+W-w x FT=D»Cg-+PlA>1tmM/1/`/\KKl;jImp:<zO .V8a@$s[i^>d. bu$( !O{i ;SMܛ"j&Y]~( x֞lV5fɫΛ=ܫߕt7FU CO:)'.yzgdγe&ȣN/^@Mc&#ಋ~C"~)I\y Gg *WM(VBOat詜NfS>w( YA 2)IL&||͵n$O(BߒgW/! `KꀀH:GM6L_GaQaOdLNx8-sDk!sy+; #Indʤ {66J/yVZ;R<4$_ RpOaϐZ u;e*š;WOf`:.H ȃ{ۼ4IxG!\p[c#Pv ژ!|56ѓ撠z̎O>T,Fy5*qJ|) edf^]<&Ƃ烣QW.7"d9*8T`WˮP=/#"AdmFbw蹔Qza?Uӌv*ɶ!5F~I2(a ,ABREdgd6 5!}ω-#gԘ>F;m=*ɦT[=9VR)KWi:~w{>9j :)7XGɔĨۮ[噟 ;4Г%8v131!N!>}Ӡ U/0!{6V "~yV:sf@1]\߮' h#Á۸]h2;p qrA%Rv|T@fd|*-whm`fX~78E iqAwr|*o_qZ@w9g .]mSN0v tc59TN.lHCMfZj%=XqvI<?ANi/'+mѨ8r 7>!L:l0 m>Xə3.>-%p3 ظZ>DIR#pO [OCs̩҆ *]- jrfh bA7irWgYkPa&zm^sUuX} .8hRnxŪRbv(4Xym[4: g% AlķO\jPNV ZԵToI=g"mtey2KOXZrٜ\UZİzTGiݴhX%GȏrSY" iMI2^ۛU PӞ5Zw:ʹQQN*ب} E~_RU{Ta$ܽLs.>@H@}Cw,k` sWnJԻ^!58޻ jc$}/o xOKǛ*,ud/ cc w_nzL}=G)9]Gڭ jqñzsDf#ĭn82LfYQWng:kLJAwQhl(8 WֆMƎE\h}|CGFv/F*wi) *WnNh}w)N7/N&1d;,SD`uA ^oc}ӄ!=3s9sj]7&b5,IWI?l9RAs'PQu=!ʀ%r$qhı HUe:ԼR4=5ەatڢomEX8>d[LSa ~C 59b'3)7Y֠7@-`Ȫ_kXQyymqw knpK9b{EXg!ǣ;C] iYP Oii 3x9  )ǡ;ExO,5IvI澻%>4l2S>|~׷?!qq &\+Wm]M( &2@|dVV(0ٜx5Kz>bq6GPMh󥹐qDŇ'rxJ&gVjW ift+MZ-b#a#igp51zx45#?|n0nzr*gt*.H(x*oDy g^|'Ezq8N|8z7Nn ^}8-2ҀQXRVck_h11aV/7lmHiQ18&{/Xg#&5޶8+__Y @ ŵѳUaNWJvC4 G;z 7Z/mKa\?i# MG޻$԰\|a#k _fB2%#=W3ˮ\\vT5u{dcLmݽ"Yu(C*T\D5wؗC$PGۆ/-P_%v)#N31i/|=2ރ08'II4Eex@ L ]Ws8=͊^pjg1P؅ZK:{pQ pa;P,=qv{h~ CVEkjcOw37}.` 6! XoR07GD!42MQogiQ{P3\WiGѹw:Umfrf BP_Ce}$C]Mg x ]MIoKB{FDiW!ҍφO)W2&0YQաA# bMCV{v:PZ~YO#B=|i7&z;_`_y͔Fo- bf"`󄼏 BzTaJjx&JhoE%`6Zቇx#ʴ9r6,0U)4GkWlpٳnuHxdSJeȨXkw {HT"(O7G>!~># RிB' JBfի,pѭs!柎@%?+0d`UNDʨ+zxy&϶*Wҷ{#_ ͽ^[Art/j{IVlxZ_⠦Q# !P]{39ã!nH+.*/GZ =.nsz޺vklw % dڸTq8Wk!f>6NS8HeM3ђhW].K4CS)Yl PAT9aҮپգ, Hk<]PEjuvuJW2uDQ_EUݻ/|Tn)Yʹ?M PkWYT~xwyK(oYK!CըtcUP+/b + 3Hw%7}h+FrP&KkǿZybG(^GгJ XS͘pzcbs<G&ԶxvXRL6{[jP{?ea4+̻>EFrP'B)qTnwZ؏,^(>7=зQhy@g<DLxFg< gZB8. xpP^YJ5Rk;㋣`w`{Ge(C+FJyc.6Ppk̥l4kmж♽Z26J "׀vh @ =4J%uTHwu-N<@o*ƍt8<}Evh+]ݬ3L\"Pɔc:nk8cxgC.|v+j.(IIBAo `;Wj>,3jҸ*ʇa>2dɫ*ъ%{U=^H_`\,50zxDjլ{Ȍ<Wꮱjm$T0!1 P;D/J+]$7X(OUcz ҳ%GhբEdp s1m_޲r+6IO͖&z3QGZ\9K=NlYExX}G;!bL {RsV@1K&7=i=_fO|[S`w7{yӰBhL ~aYA͑kED,|zngg2N445ނ! ei"V m{[-FB`sKvMY&C)QgtxW] N'ӖR!Cm2(hX7cyd-ѳ ԌȰhM]O 2}k`r~.^X{y,5w4/4Cn߲Դl[aܞU|" 4CaXiLj!Æox !`\9YdH> Xw;w *e8gߏ*jIy Fk}ExM܂P,l@P:̍w~ud /Vo"E#T0@7}py(( T-MEI'vf5;N1ƭDs?,j5̏F?K^u۝;dI$ޞ2HV+G}P0UMw.w6(?.Km.#k籈-o,BWHh+uiJk]"ݏ>ɦlV#*5MF eϪY&a$ ߘ~jVQ<][[a!&U2 _YIq\+LF!9Y! ȀI qųSzF4E[٠x  ,oW<a=W26Qt!5OOWr8qq*{d[%(հ`ʲaa}t Kf2I؊1,Bwk>CDAKc-RTwFG%sU6CộteWb3s/ ՞MUM@:G{ 4#;p5"A@/[lT. yGf! jap?2]Vuhg[EbYuI¬'-Nj Ӡ]yoMh4%fJ ;Ry] σg5}.vRrk{5EF]I8eu?նaWE-A/+Axߴ}zXDro9,>[QaS,Vo>`aF񵦚@^ʻXΡmoawD96X,I ^EΖ`Z4\d +r?7R%,zi܆Ya&P˚++TihƇMB4TC|[9Fa8\0+c_9 =A%"HW(>טynp- VQmuWyTB*47)ǢjרHxzůpc"َu4 iX3T9@h"C'_ݳ8> B%4T R0lVnǢ7L۩EZ5 ucOX'ؤ%Ʀ$P^|%#$d^S-'>16ޟ6 |:-^Y)fBZt"<>3Ozh#7qHL$b#\#L ^KêB_R<.v:u94\2 [^:$"z+$mzi7YV6NVZ; a;P|![*g$hj9?OCebp8a|x3/Bb` Y dkxYr ]õ 5/c{{7,y= 9,wW Gn%xIl ȡ50T^V5T9}9[e` G9|:< KQ_2f*Z\ ӣay\Vl^ęBv1'<4:&14XI_.uGRpdl F׈WP_73(9 y:D+BƏxPn jITBճc( f|g \&eIFƽX$=Pk4pF!$е.Ti7cD-A:f wJAO/HKu7HK BJJS PlW4(뮤bVR=>bU؈d.`I=pm\8:E?pHv<*v$ϸًyIyV**hf.Gx>N] Ǎ]PuaTp/KƬ33C+#<նn-(> DXRU#6IM LC{U9;)k8]=U`XyQ7G)qx=].f_Y Ԅf; h hЮp.(X8@1pK bN[<,t' {*גT-pr"ʅ߉GJ葙}аh2h%];$H'UL+ m,ZfjbNM44i#"9kaBїI7M;>eyWWS !w +@seB5x\oEhXWͰ!(ͨꢚnn~ר2ΉӑK6_>!qj 2t݇z"B Ϗ^ĩpEyJX7ѦJ'YpV,VǮ'^7dI۲]vWQ/S'Y\J.gp_J}_:uGSXWse(հ)h%C=7tЊUwgŊ?.r'p@:Wxsb"b3Rc"~  T{X:yklqe6A|UoˋVAr3 pd}pIXTTw m] Cv4~K҈5 .ېU H+<8 81[|CnP?@ Dj⯷o)XW(4+U0uԙ-?SMxpB;myZXu*Xb~ս_s%;=-L<R[Ns#x惱^T:ǂ#"NPҗր܇/b;R<0B zM3&Ok4g@57>dnDDi+o,Rb +B;C9› ZWYDm@[I}$rR 2;hX'#n–[3Ӌ_G3k !8ƣ?U6}'>u(YdiP4k_JG4: ?LCh]jK =ف 5T,鿉.ƙlpeܳ#Qmǭc jNNա \ F!ջ?OBok .]6A'V2*l8ȩz&bbYs=hBx{|4msuMp$Xoc+|9$$m3L0ׇ"?LZ[Hɟf@[-W0֝T-[PEO&8n^0eV>I`HڑJ£)&n,B6[3U C(ԲyN![bU~;ý{{-׵T|/rapys;x?XPM֛l09Lq21"D |@GKn!HHE}x01`ڞWV3uP{VSM[oFU@.9Isx1"$*L qiz.6yd *ur^ƭߝ!iqI~R/"ܵt_5nNµ-GMRK4;k鼲m nL%6Wl֮CˣJUOsdod~&9 ,uFMh6sf, {/JۼT~[f8`DQ\k-hiOfщު}zd{99 #3Qһ"t1~ǖiR=bQj "ZNf.@9ڊaqsIlԇ3'TY"z %UNַWcĿٮLq8OD J@:=^}֣c^++yۮna>u`J %U:T[^_XD1Ӗu䄘+K_LwIE}uۋ:eaTDq1uٗ[4Ae{ߞeU>yuT}Fh-?>+ ^StUv6SAӌe +3 N :uj!2Φ&y+s0gPH./QA+>/.@ڝs VaNbjԮ^饦˘[FH"k0,%4_m'9` [/A[ßgOZJ 8l.a- s՗KܪʻLق`?]E0`!B6apK|B*Vmr>w Y_!L.R¤1ox30N.xd;Dg.iJe⼛H /7HQu,.\UiQHԸ{ _7Uƴ ⡽:7u_%`ÃO5;. s+ܺR.@Jڰ0qe~,=7p 4_=N oܸ2s@ɣ(OPSqd9I0&D6C/3 eRSOjܱL q洰O=gXv=pڦǓ=mi_êbg^*7TOYw qI><%Ah}F.ZUזPuw]MM`C$*egDtPCIL6WZLR{Q؃꥞ peLwửяOFes\8+N>كXbh C,[mҨ;(zJq[=Bk?,F:FsTOpˆ^{y/ 6-)μoKdimpC]pW!9rb~[Ɲ`GϷ}Tg!U%EۜoQ u-:>BKz@H%c2ObDZUYw༲ v% ݌퓘{OɄ2 qXSjSr^D#ccgz7`Wѳ1Ng"9 S- pFɢ%ѪBT&".hQ`SgB$@i; ۪e3*짟n6֐I.ydbo@f ;1E]j8C I_M, ߇27%:5=U\xU4q.)؋b~;߆ *i Qxklyp"+}!3JHIZ4_ex@M&*ULm{3~ſvLOfonەY>-8uMSDy8'8K(3D{0 /I^kA A h lg M];މ4eЅE*i^k)RܫA炽)c٦"m<3al0T{Gʄ1?HY s%O(*u-&7hPq/mu(ILBs6WdDusq}cK~[M_^jb=%Jd(?$jI@bUF@ݿvտtx0S P=r7D#E (dfo4KİKcA+-N@Q:űb朧C2P:"!OXc^ӌ_V9脙cFg5G Uw'o]AЯn r@1_{M" $o+J3:)^zRШPME npbwGfYFx& M t'9$89e:! ${V.K䉻]6p޹h9T u FzLQs!\t[w! G,جQZXS3}tC(#~"'; ׿9Z{M@:p/byF4%)c鶵M;HaWTpT?G`sdcw_:g;;n VE\1p`o{s] /n-x\>pMtIIpM +Ew; kCc9?7.tnTٹ}'(ZB򠀘/` _Ib l4aq"ǜJjɶ5a`m4mYede]ns--΢otz)$b(ewMt:EH,l'p;QBV7Kc@ۑ!DAlGd)D4H!?i)]3]=l(Qc(K֓PUC.U3D0EuCŢ\+RfNǢK@:C +odn##࣭`QZ+g^b:٫rFi3~qOSI7$py] < gep= Ķ>nei(4 Ͻ=30>\|؍-8 = \|Cij<nk ]=f à cQ:7GSq+qD:~Y-S?;a|vf7Olkߪj=µzX|9FӏrwW9layaO? duXdWy@Ob;b; )4VQt&ƩukhGq*fR{uO4 ~%gɺOD&ZTV6&] k.Vی'6nPȟԟ}ɐ=:G 7گHo,g.s'4g#}]qX Z_٣L%U|\@VJJ wE. *Ay@*Ȅ;:=b<ުW ڌ'UKd4Uvr;CX*jqy5I2 N.֑Ҙ 3iQ"tNsH8|h^dlK'~WFO "3ZgD(S#o.߁)H>80I 0c]'iIhx,T׋Ja4QKgJ-Y(wFq%"})mN։u} VӁPZATrW-6pPw똦5bV Nf@]5?TTց 2#XEN6 W "Fnsv8 rxm햋dZؽ< ާ^%WB sVBe0ԥ&ĩOԿeWYXj?ab}\'D<ĐtV0TZ"_GBWv䍘Mvި$7bʓy߻wt!V|w///Z$@D6[Z'Lz(6Ʒp{</%o9]vPs^+ϥ?06!y7B^wXyU47ܟF)G8c?r@E8Sk1֮̿C7ā|PiS~E~aA,񌿶 0 IL9 d(ہa=H"{VJuK]z-SڏiZgw6*%w˚N#(bx)=QNA SN1j{Ѽj!D)l}X5%= 5)W}Eo^AfK jxG ?hbIzSvCS\)7ufX7YQƇ5EPc'`t]6n~)|Xt;D*VasgV̖,p 3-;R=)FPd< W 'l[vvy;={xY2Lr&<}iSʫCb'L2!gyQ5pd)eZX(]Udf/ACSb& Y1JbH5Bgc`|l觌4etfmnqsjEfHRr㎻:݆}) =WvHB5^wHdj`Lɐ G[gQʗ~$,Ƹ=n:̈́+hn ׈]#, TXo9fDT {ߴ * :]TF8C)/Y.؃N=mI9$(l^ќ<~&@+>Q֖"lCKE\Uقt(hc?Z՜O48\0Ks0Vj 󤺔)m, AWf-s2rҺ~Mg[!CM:m \?!2YPe514@7m@yg7 'f+laLjF0gŧE ;ibw [>k=>@`q,]t N f̚`~.WL:wI~! nwIU-W1G!/pZv4!h+}򍰬UC1/ KA+<3&u Е y*s.bCmaݤPѵv=er\{:)m2Ky̧@ae:ԍ FDY5+9ʻ_nj/P9> `/a ~Fqw\ZP-V?uXؐ%)ST&Ẋ XJY{bACV1U's#+'[b:i>^YЗeAֽW|:=AG{~ yB>hK{*h)ٔ޳#<'Ziql~Y"jZhezI0A3`_\hLφspAk-۫]ӻ0}Ae{/|ra ҧMvSi%lh2?v U_`O9&Fņ@ u3قs"$=Eud=R]zmRX:VGwM~m:_ɛ}x;,nؓD\ώ`0P_?k,\OdԛbD8?sC"HϪgͅ%jnDǞ]@UQUv]- %%WY ;{iL]!X~x3m[a?#<ٱPw3yے/uRQ=`P,Xyp"c8X>)ՓݳqMQ`RoKmvZq\W X3'è͕'KN:+D{cʠ5=^Z;U?ZdMQ7_ ֦a ?aS $ϝA..nHzMc< ̓=byG\V# [j@Dh3KDqv,yuʎijy8 Oc0$FO_NQ.i-O*fm -d%I[2s.fk ء?.kP2-7;*ǩ/:;]2)ݒiLn 0@,C5^ \5>^!>]>]]}Ŭ% W{Zr 1~Rj-h;1 !1ڴ͹Y 2k^A6 ƮMH˝*at`8pO j3Lb+!@K ŷv~V954l8sy(4Om(:@>gL&8wr,ϻG{QM=958܇7))_ PN5r3CA]g* Y"j8qͬr՗sЂ~BB~h/O7! }b¶2M dE| RF'y|dOxYk()YnóOP$se72BGB0֥wDE< 7\:#4E|g؄\e%P40;w*>פ10y70m4p"y@<51h}j_G6 (9lkVISdC>ksW-%KDX6VN- :z+4h:vH[N;0v9 u}yCoPƋ hgDiT'Bw/>$FdRʣR[&~E,лjIa*)2?ҟ|7=鹽1>+:W|J~YÇ?6X ͏r?c8磯-15+dzJKΤpXddfԑl]D°0cmKɆ'\>p_:^1_` {1#"Fw٣yiE Hƈ:XbWF)ݒvw[HވB҅rF䮬+o%DÆy@^L"PMxden9lMe(\\B.<*C[˫ sÅ5sV #WKS|GLjPϭ$] ʣGG=DD!}nD V?[ ?iCPSZ.cRnBU&K Dp !^&_a>fx"Tn6yH)+/οE+1#)g8RFyzw ꦱ0kn$M4@ ˿j!f &atڊE/B)J! i PZ@I^́t޶eu+GBBŶÎ~v4x]3ͱYQ6k̫Ӷ_ _(: 4<Rz7df~ y9f8ߌ#ߗ *n( SCe@<6gW(II6TUf#32 搪=3e1޽zD`caRKcU(hU"2 _W7XUMN,qɝRߦMJqeT&F ־{7޵U;`/_2=e(&غw`x 6.\YKx˦vF_錾(RjeoBI Ή)}eX!~rygQ")ԆYӻ*mL@(!OLl+8{A.Dk O (%H"m# (r~(`+4 Oy6:Z6]FA"4BDymo93]eą 磎Җ*CJq9,Y]8k|:cR(ϭ+ofg/TO`˾KyC .Ϥ+P /^wcYz(AH+5F 0Kme4tiu' T$WQ~EuΟ"N$$]Ki"Ӭ\^v=L(O6b :ޓ<]DQ\Bj8P4-?4ט[U^ ^~*3w;ؚ7KC%}D."R=Xk:+_m2rϞ}2_gD6uq nnLpQooHP#6,UWUxҸwj3^D*>S 2`5=v@tg.ӤC(H& 21z 2= t#FCyPR %tpin"+j'=Nzec5|8y[Ҽ[FRHV3qei\ES~n{tM3,yd;k{C@䧘QrY\䞷Ub$[-$YƫP;\A]e,~dya>*FmbW:7*e,~,h624~m*a)n]ogx|GXs+i?PSyaJoNi Ⱦc$"0R|=zCvj )Ňϼ\s:8[\Gy1 lvSGX@z|WІ\ JaøEB )q inh䖾>$Q7óm7l-Nt] fquT[ DG. $Zu(T ŷ7LPn !ʥPˎCF_܏4k-^4e1_.inphH*P٢^YC2ƫՕ29MrV|8xkQWUڊV> 7!0Ո)m+)3`=~CՃ9M5)D?:49ɖrf(8m!A. uW= Ta7źkD}߃mGU;PIq. ])΃u'e(P/.f~wnLT͜c<,i oqkUi2OeWͱn]CcBښB'T%URMlnp8-Vt/ܘw( wIȳ ݱdgF*'b6dn7QYLmSY}WŘItdaHUq-[p-/7g:k2Iy ,7H? =k&/8cu}OR[5^垈i0Y 9UuR'ؗ]4-CA7$@dKbM!H4NI>+`D[*\õBpv k:aT "9)9NKo0Gk^lTXKg_OhG1֟7]abqI-Y&%E`ÐDF.wBX``0W+lxfM)ۯ,}y?Qbѽ\^HT,2un{=͠,ȿʮNB,Xwtt*ON!|6Ng5,l3zv$'8Ec;b~aS.=E#ǁ{1&(r4}zG4ߐ?Nd|~0hD@:KySظxԨ=2XJ.>e<gLz|6hҀ鴪kEy=~c`7Wݥs:m 6[,ϖhZ[@Y#rt@uJjz_3۵o:LSzį6*,/ ѰڏJE[ ͷ E.Ȧfy6aXb\Hfׄ:iWYNy -bϒLǧ!?ϿeԷ9:5O9YQ^Fُ,h6KD+d-BՆZ܊/,Ўf@X3xvDuH }^Ԉq^ >҈rWyǺA.kyO3k J^2^ +i Y4S+=y,#Ȗ+"<.9=M#S25d-X +xU5U4'b~0peDOX- EX%Q,4tuRAKAıynۃXx$q8cjHY2J%(Z$iUD@LPkJٺgUO]rR~Bb.g)6=,R";θ~kE^<*@HrNeZYpOOXǃghHLr.][=ݿ۫K":~h&GMc]25nyU.8kxjQdZdi޳f޳NN/xMv IjqeIz$]3Sl9=tF,s8s ,Zj&Lyg -)a:V^n\ hr$f;[%X p I3־=k hPˇ=#`: it zPqNd>O(dQhˠze!fS[xf{SSk0r2(_T4/D` $m#;,A{<?ؘOCj2 8gUud& IJZAu ztSPYc9{$WX>~~B3J]cj,8f0y=$b[L$h?ڀi98o,}o> y,j pji9u@=.5]|Ns&߇QT,Nz3(9qg>N[d$5] ?&eʔNhuieP5yv ߍiV\*N?KFե.b̾IFp@.9 R"Q\kKCs J}Ruk|htdeX~RÁpB^\tIf:l 'c/"(PW,5)#6&o' a}D4b_.(m+:;>X61Pt&Km TdAK!5>4aͺ criD,}oP7]€jc%q#1s\C?Oq<=dl&axupk$˅܇hU*_F*!f6tbD @hT<7vҵY%r< +ȧs NգEJ:P+("q&wđ!r[(oUӍQɋrC\Pټ>:Fbn 7Y0'bL0cVpO>Ap!bE52l)sBx; /cJWV5hĐAvʇqn#nPϴ Ffb+EG4W<\|Yy 8}4&!v4,ΐ7=`!^ /Po/ZaTܠD6#WeAlU5 >I0;ǾNI&kD`'f:xAmMzh.\1{t#qh$`ꩺǍ^&pC9؎O:eޖi:\M j!nAY~N7G I,z Ͳ>?m3) S8y[yK끎%uÇˮO(1;ݖSH6fEgW# ,Pu:U2]Z)p*gKOPhu 'KIΎ޴-Cu 6ֶ3Y` MU^@L:6#]9f*6sB㹪II8643)!;{2|<5}&P:,陪9a n]ف"VV(FfY5HN|0KYК~CmgF_.ahpM L3;ca'ܧ'`W4 Rس d40.T6*n +&Ӝtuōn7~ݱWZ$,x~8Zɢn"Kv2o`o:P o\_BTLM0Axkh%>ֹ N> *0EZsW[sTGf ڥߢ$=,UܪA0x0 I@0ZdB+T`Jr[[#j>ߗRrDpLށkN_9+61=8_ 28u:-D n 52_KZK CvS r.j=ey`/7 ic-y掁AF~~5`ڕhJ)RZ<2'ok$1 IQm.pR"A`j"ݿ]EX:Sn3k4s#! 緫{=5J[xANLD.a"fR)Oba =J]vAFjZ{wGe=s@R4`)0>?TUZ|AȨ{3j"Hv?ʃm#X;2Rs Гk>̄ {.~`UtӠ +]/((UjQJmĭu\ٗ^ {,/U+D۵B@Dbj=b"7ʯ\n>]( \.*3o=QwQ֙.az`w,9)֧gkLjI^N=(w[FS{e=R{^k%#X9w~j7=EVzI^?/-m_,|t(͇YcG=y; ;TC(=lԔhf=<3U>!` vAffALaנR |W'bc/ DPaPN$ Wh* R- }:J2X|,*:dhxeh7ɞAz %}vҋMK9ݻ($W4gGߨi&shap2]ޣܽ$,U|oҷJ"?#tJ+o54\K0GsÉ< 򹷇sWR1_bBۄa9 &qqpNN5Dy̚|$ЉbM v*6s>tm?FK_UKWR1C* W}aI?Bbr,y3ာNJ]['NzeO{Qةb1}s ƚRٔj-{zO6A٘yq8W8Ԯ0CO?/vȿ}iZ(K @i4 0F˜((=E|S0 Z7/hdbAb6 ( ϙ)uk!kOI޸gqc:Կ}S٧Pz;kH@fwq!m¿.^4Fawט(n\$+N/=/\y^QAE[$\olg (oIY=kal{"p]w@Q -5r`uR8e0lEYc&kiB=1m' (k8HD6R`GlDpxS!} Ww?],h8jDHPng_1I*A)WNgaQwʱA"LS._#LT1q([T(l<7(X'U29Zz8ӬkU]2몎%/NHNJ3ڞ5P0[VVm8?\–QLtL۳BOFcph`>6.{8bHV@`Y̨[^Zr돢GYIzQȃN6!/(3kdlmOQV7vwݷFKOJr|+_b'm$ IֻrwDrq \4fײe~Pln[\xi^l&dWFh'wXպ Mj}sMjA|z{JYvHҼģY/3L ؐ]dnPhPN_g 層M^P;BPG/Kڼy9?#]Vk*nxXpl`WՁ(xN23bapZO6?;:VE Gy7O#i$@Q9U5g&?N/2aWgқ +iDL]z`vޥnӶ8 05,Bp+,]d!6@ft&zqzrc*CS>(I WMCx(5[cd,Ճy$ޜ9L)]xf^6#xݦN$/X*E}/ T؂H,ǔ7ji) dC ?F"Tr07a,IZÏE*5kX:hEXOvtt>aJ):rF @RR;uD$B8V7kI8G/ 16wqÙؑ M0g̃>^GbI-x"(z cYzl=%`Iw m(wQ:tFW=%a;b24:;r =}9z0jqٙ 3K"_$N"c x|0n RmT,8ͯBF)bTDYKp68#`q.=;{*5Ugc?p x~#+-{oЅa'Zۗ$3pn*7ZbevZO>5/ٕ,L<;nqA,Xq4 jv׳Ƨv.57lH/^ϾGp߇wMvb^ZfK*= %n͝adR?+ D2gg&hϟsU}Jv'UQZE b!p#]kt\;iƼh;ܱV:yX8#> ¢dLV'Cxv?Ùls503JkKl=9E>/j½=g YWFp\h]@6xᰠPlLñEab=[iݜe, kR` 6ģ\.L:&5,.o^ـL.o);*>8gey-{sߠi{6=K~j˭H7l}ӻf(qحBT/Mtfs]!dzMf󭠃*Tz`IZ4PýT_}Ƃq·i.XMޘ?kl$rbQ:=Y 3̿Ma#;@Băӻ8)1XȜ+Fޒ0O=ޮ=T/H oB %#n;o,` 2MË7PؿTAi5&_4ˬ B%Y}ҮVRT>*x}.1Nj|1b2@+o+4XicI>zua5( 4jzOaV?+Ty(-或m|5js)l%2Lx]"?F..٩ORؽ ~a4ÊhMu^ L0\mNF΁urKF .{EGfH"_sY 6C'!r mD{{J2 Ye`pNL-βVK,.tv‘l+z7K>EDzV7,@g,GsC>io7t!q8k[Jz)l"x6qުz}Yb驋tRΝsk17s(ӧ4=땡|vlq O7AD3[b/G4ڲFi6c8#b+wl>&WGSJaB}vzS7ZaIMs_.ZZۧsQquH4W`2eGaĊ ΑH3~.9p@J2nL~_Iي4ՠ[6 Fܺ mC>^93jsY]X DŠH½(X`{ew-d)$,Z 5P hs kf0XS||N&vPfN\_ǧZؗp1!N3"G ~{ ӴL9ܯr⑕o(hWin e=x]<.BvJ=X ,-E8]jTU>l5^r_2+HOyLmy>V*8aA E߽}Tj~ZmH v ™m5xFòV [6Hki" V_D'tVLmLeT1WfeV |:R_ꄣ7HlVdb pMG?0A輠)Ef@#\LNyd@n5o M=Ws㫚 ufVKy0WzNqxGț`Zu] ƕݸV%rl_4mr ѲƲ"K(gP=!kgOT|ķz-E3\Й;6P+=9Imͧ?216^Z 0TKtˌb #u2*쐓XZ(r^=rۈ!~AX̔7%ʊd=z*߸Oh%ʘI;kGX&NBUA5T=`i?K c:zߴ_=%^|lФ kmqRNXY$C$UXU{sOQ HȞ&<2PB$N),xL&{u|.k# ᬑDwW[ 4kC(>&H'KjPxNΰ͈\sai>E w\>xʰ7mR? 0πo :Q֝#1)&U [74`G K0Ut~&@ʋԂ|`ȸ4P$:H*y6nQ^2h>Rx$Ă Xk[&p-_N )&~Ohʑ,hk9UlXnh!0Z~:ޕ;l=U-aGcwZ3lf[2Y7e~e s! Z:~N/BVw*E_Kh/ ^FU*1&/{٥}8R;;9!b@( erS[Sog2]Yyۗ0~UHRWIC>Yʇwϸ( A1pA5 zkgr*S 7[uW"¾5Bn<}?t9hs7N;X,O:k\Y^2ڠYjnRl,0QƂBzezנv2-8](W/ק)OHa^ ';QTV>?A=L ҔQ Qu~Pi8<,oVRR +5i+<8qXV ^d/26Ũ,ݭ iNsֻ~k(egp)0$?`Ґ)StW[f*l{_'cV?!7"q K2i&˿D|趙4˜|Xk<^7h%6Ϟ3:T[eEELkK+5oaU7~+ѯ7vx$,*~.ؖP*%S>o!H dzSZUO޵%鵇#:q^BVȱi*#ZsBMrZ^`%{A>l"ghkEnOꣵ~*hɾ!7R7*Hr̕W.P߰- bX]S3>DQДǡBIX|S-/4O1i$)43LzEbԣ r Z[`#KRQ1L ̲I DkC#hϛt9%:5,?5_չ1n, a--VV.2ڕ5{K5}?EwƂLPW*iC[ `lv7j'The8 zҤ|8aPIb?!DŶp"ya>y8 FkE^enH]$>P8'y%5!?}' KW"5jRiqAٝ@3w#@_Ϧ1riEdi]] ӗ,c`ybf4:=mvq$B,B>L8-+0ӸcKm~ W?ƃ#f0zAӰxVhkkXBvƁ~$PAW'oSf[lwa*)7_En%4tp$(\xuħh _i3W2~SPWub$Wi;">v|Մ$3 cx>[ku"PQ\ZVF5A /1ߺ+CAHoՂnTa s.`Lp->Kǻ(' )C`IiZrhrx$-McsWN*"~LbuaK=R~3a9܅E^NP'q$jϿcF=fP IZW[}6gf#VylTBXO^6G5_{ê180'T/ HBܬitUΓm%5iY{9觴Vݬݙ!=XeoDj0ԞoL.޸I΁TWMX;~C]e{MS&n7E2ݖ;}f%Ed)m ϙMJyVU,3!վ4ؼpX|5y8J~RR^meW2Fu(ϳe>$~{uIa6 V`?#lyW{ֽb7CN3 !Vn 0j11!M]"=ډ;Hq=H_;MVЖ<E'!_^sꑕ2n:jϐ33 fcCa:(L\4xuDQ0[/gSj| MӉX3(װxtz`s;A5^9;a7zsCLZy$.qzq0OԲ /p+Yy$O~HԠTU+bQC3+iGBE-:bԥnI`A:r+1InGEGfucE3Ld]iq 9_hY;S.zTpbދC}1%o&Ӂ}w]'vf`%ŃsKÊ8 =MX6Z TQ x.y|fWt>RAl5w>&>uaho,lŽ`JN),i2 ɛ0YwRnqQA '~qe0(tu?+g,UIStJUG:6ZDW.W ̩,ʭl Vwzx8uvA z# NOc$Qݦc~vk ЀB~}0v` O]a:!Yf"^P+lq~]}J' k56fZ) -zi?, Se>2&,Ԁi셩+ qm) g%};6|L B'Ү,7Q.DLɬ_u$gߜovF5BQ$,.,i{lZڝ?e!n2*3<})d(bX2̳VBU͐L M`'B tҼBbͽE4~Hoz?4AB?:դMU)9r0G1F뫓*AXd:0_N$-snG\u; ?NuSQ2$:lR҂ ٝ{u:W~$@4 k_2KS3.<7D`-rv^a$G*f9s HٖtQ 9)Iq5/v֋FG$iMz|XWEUSY;AeHi~IٜX<~E; tN4}ժ=wE!O8袺Jt;O{gÓF7iwժ߶޷E!,GU\]+/;@=}YǞnf[bgn7H{Y!f l/Rk ȘӃ}0&qy$֢Ĭ,Pݻ%*>-,gWM,Q Q#̦*CYA@D {Ov Ukи1~*@F"?ƧքxJ{=(,xQ r,m0r2X'甙8F? &UgN q|^'M!Agz"pFl{i,4U.' gX#Rx!hg]!SxK>iA+\7j`«_Z-(sw[ZهyB=ЊD͛,-`5<>Y?,IܬCɤ)@j[[3a.똱..W]4ψpp `bJɑU&6WK5vh,*Ư?/0WWZ'?S/9TI؝5 '4_}D]fXR`])iw{^(s|OK70ىQﲞ/0 A= M' u,Y{X*wO k>џ6**rĠazh>/9Lo`g !I/ -d-4^+H!YdcY[B8xZ)OesD{ e@ZBpK{FM J@U"}Ԇr0W>'EOc\aQ|%8+Β .zgA/gqYB¼jk[ν,HySU$xQGd~ (eῗb^.S9(67vSlǃ!Y. nK}<mGdt4iƛ"˚G Q}eBG gݎI-!# lo&5=E)Svb}cZ6xI4zqFk^XlVޜ׺^Y=Dg.4.v;VQPrQ\)D< aσF6F养*IL^Niaav?{eh/V-_`uᅳdbᏈ@AN02x.UN+#إ&/ճ:ilWvhǀ T: ՛3OXzn)$NߏfLtq݂w%PiV&ܑkȍ)Ut5[(S ۡM푾Fw-a #5^ A3MuI5Zp tys+2=v$]ܬNY?slD̈w=xUhK?c;F C?hEG|vJVͷzS2Ӌ'RDy|m%\z{j[ BoAHYq9Oaf"f^lЬ 0OP.\mGDH S'0B mA[? o1"_}I·T9 <#eP&)U[s'|R݀t+̴6^l1 ÛRq*9 QiӚ9o`&O3RG Jvf[7UϞYR8LIUZtjiKZ/~6 nH=<p &dy"'6;TمE_ǶhjF"ˍ2χɓ?{}}!3卆׺h$ P=~^r'jhg1o(x ~v5-Y~.6{W0Z Zd)qmEYe {uޏaE<##!Nˢ&#]2+pYk=ъwHyH{]_9;]5Aj#$[PŁNO%Fs-V5sk8ɸOB7pȚJf-<MLɄς"zz~W9T}Z>3_gOrZ.ET'h_oh$B?g%t)diDk]޼>N= =>;o/h]w"GH:yȣM+YRE\ w-mV)Eԟ xy'FX]ʧX/d> HZHoĠhƊ%<@x+~qjBJw* Q,X=qNXbDUh0}xNxrs=-n!(nU( a`AZ2&(RH&`Ha"\\⺿BLG f3'+@g6"Qɏ)odڞz$O(>)Gd"S08lN4P)fKgLNNsk:ԖFJ@YdQt'mf?⎲:b^')+Ȼcbmw_:3_ƝE?jƆlzyZ[ex V τP`LvDB'k[Cn3S U؇%߭翧JP$LA/GEf6HD%|{Nڪ}@jC(转.$wv BOB·Vd=a צЏQ{3flio/Y,a"jQM2X>k oV}!htKþ0h&8'A>Ca#<߆ʫ4ww:^A)3.qH:-,boCρm'Hy8iP3=}<\AR(<\@[E.(JȻ>[ApTf!5=k A}w-R\Yfv>R&gv" 6 |ogɸfeJ2(@K {8-QUPLv>"5X>xe(Y gf!=XmVaZ-DBd3$(apo`}FIܢ Sv==,y 6ct~J,\H!lNU z'FaujaTmϱ0\3D(|I1h#9ŨsҊOf1wzb1X;SqVΦF6)a0@ wy^j9$AE :!'`VG#`7"!ҏWyփ#l ׆Mt8-6TdXUUm(jv;F?[d02B9w*6/BnIPWttp)Eț"JuRQ,BaiO}YTY+1}N3]pz Tb c]3k6in}c`-*sO=,bG؜f Gm;CE['I§8~9.rm["}m9[4:R!K u[/!{4f0}#:ȉ%M m[W4ϡnF9rS}rf"]li~/!6S&g>ĉ}bYĢjnYwJ7,%!‚s^M Ti ]樖^ԷRD>ɿ)Ɍяʑ'^&*n>yT#N@ux2rCǘ|5 ;oWe8-^o&u'bיG2Nnu0b-:H'h#=@+Sxg}xx[N&oM~<*K&yT;c” #%5pYDĜn,4?Ttu{ ܞOv+_.ϻtP0P\|icIDV9fPCISO&[mk]Am<|w;uãO>-lKbYK' ?J?u> ir)[Η0z;!ɇ ߚi)!gxYV'k FZI4-O2Ի’ #^(%_w5Q*N} t4$$vdfznS^VʼnG J869߁r ,"M͇oy=S/a{t2j&.sˑy%!90CUQ4D>pAܸ,n"1:~u?e `#.>^G]x*'1D\$0Oӌ>0PU_YyH2KV$uo_ `|Q>k23(͜0S@NDÝR;EOr :8Μ`ltɼ&D/~ hD wҘ1B;V&Ej01q}^)ZĿ7 #8̦*mMӒjdM,4H fui7~I[n[:ޒ͌v=c.8rT;Jم I{ē*;:5G^9290@_ >AJ M}".KH:*ZRa<)PźV cYO?5b-Ju' CHk+!\52LOtOo榭{C[^iGP5GچD1kEg BOQ*Eʓj9>"ͯ湍_vr}&.Ug3\e'T\_vc QC7>X74dH`\H?P7.㊋8WYVJ]]{'-@Au/I?𿵏']Z0. n0Y6+wі^7yQWV@yGG FDH{E'WwU~5od>]b.mH"<{:&YW(cR jɘ"X} c}!%b¹Jow"gqt|M cZ[Br<]6e ɣeYmoخ"g~W=q漼:%|K1Ӧ>jzVP6@Wno9Mwnȓ.ytd)"]Z &Ql #e(:)!Q5݂$a .ݦ$I_W*VOv7\pz2@cc*rqvƓx'2bHbYRZp}M ##jeU&UX"S~LEPB^I+aO{Ime%2}QPwU!) l= Pk㕗H/ KdIYu_~B3B}y|ަ]@bȵ:s(L+n% *90)|> y#%شpQ uhTR=K:ie.4%uF]eG޷ۓPjl w9tB_ ~M(SUKjmW)G?yrߓ#SzJrY;!c_J8jH>Zgt#u2E16R=+\?O:0Bo 横1ݹNFopBIrDf[Gͺf!vgD*@ ęs';9G55 VR"hYlGpE8{0nCdt}Zц+:!Sf !)v!QP1{NA&_2"-7JW#c7C$<; ׈ulk|r(8GJ @YL{ep3J[NI=|̇੗c]\0_ϥ\[R+`F+- p}pxBj9ۄH0;uz? 嬡8qYi zȂ%z(-PRi %?b .H*ٶxEÝdty§ !|}hvʒyw4Z'Ӹ,RG"EԾX+tQ! U4~KJhvqYف71ug ze8Q]oiu#)veE^pw eR+)hLIffC$%0e fSEP*"LV?W,?*4 c}Cax,XX}'(|E_Vp]~*;hA]> =^SKntg?gwǷt! 3s1sx{ MkJNzPUQ,E<,^$(ъ$ٵ\EJ2f_w6jF@X.kL{ne"tLZDAZ2P(,~AݕR)ɅEx9$?ozgbSМ=ud\%pAV7Qs*`xRO=p FmGWZwMR%R*1~n}_j՗!{f.yqT&Opr+2% F ko?.t's&k -rdDvpҐy7^ W}2%XcȢ)WOF rC;-`8k]OxUgԻѝW7)!Oj! %e #S4 4q k="j.T?:/f]3ڪ] h[v_ZtfӘF)3s"M#qH&tpcM2KFwRׄC{W v at{AaS 18qb rߵ7*85՞O yPBMKL?]ɿMt͚9nqLN({+Z|ٰ^*Ɔ=-eA{U>Pi]2# V&D48tBLj⼴d!Dp5E iu8X/5UVtV ~3je!33C~OS^<OL-BRʏZbw5L;DH;WcQYEoL{Ƣnwi,4^si:f<<8|k onSj\Nn{dĕ!t`>ʅL9 f;[ϮQ q`W{{8^AѤ` kzAsq mӉ*syXe*Y"vee?@s%_VZISؕ'Ųm!3W[;IĹ`š4c<*O-Bǐ-l~u>hrRY/J4ϪPXZ[6Bύ4QbF(zTnRo~RC]FW)P.mDzxJˠFrx~R$Oʋu;^8ċvxKkJ tlohcU0ky3َ>qygAh2^A&go C2)l(H1 -ZݽUJ0Xc ه-UJS4(Ӄq}*pZ^'Ihh̥As.R,ȡa<:n*5<2 L#_@I1O,BYH\J[ Qw{?ruĚ2&kQk4F\T %@?Dۅ׼ށ@ekaA(mW|ބ$gidAAfS-:r 'gXpb:r%D20Y<yy.{:7@xʣйx`7,mUO>zCw̻jJ$bIl;URnaɏNa=@}/ 3hea$LoV">/% JZ7?Ƭξz( (v3{#~v `ɍS'a`zt6f]"F,r,8Du:ڰ#0u}%rvLӅƔ _A^IWpU™M>j? od |22! G`OoY.h(0pdج<EIjr[SXbVF0>kP$v5t_ZdJ  `_ 81}fBHK"bzsfAci71]tѭNYx-0l(sR~c ARf=YXOFLk SѶ$FO& }ƌDfr*#(ۄ$c.&"F6Q2Pꮐ>3,@Hp"SKu=˺9K`REZJj(.4$ROɾN)pe)R]ذyTk9wQ"W(&)@U#xM{dw)'U_m7 _}%>Ŗڦ$i<} 6΂GM:)ƻ+oytD~D,}b9;|^(@8ui Ş=BH:DG ]NLm/i_*N1o[}֯=ޓƃrdWpѪm-w#qr)"Ξ/T䍸)M1FbWmHZ L$!*x0| B. .DbuzjQJfo!gQZ68"_bBύ 8T#9Q#³ă.n0.mŠsઅS<ㄪŤ.twF_w}NƯԨfꄑ.wRN`QTƐ$j=3:^ykevOC!i<eILi#s!+,FΏ MEh-X)FM暳IͷZ:RNG2\)qR0?Z Sq\>M0zo_\jKMCr>Șz=j(NgɅ}|]xH4Qw;a4Ź=}}AWeWQDtַa&*oUaSwi eG`CDÝk.װV2(ѹh" 76\YHfw}؄ǩdh-I=3,C.9?^ǚ 23T%$}xl3u1+h.x9~뇞u^?}(GDSgzv[eHb>[W6ݓ3"9v,8;uKAKdWdfCS^zєG10`Ak UC Fd[;B~Bi9];<}Pcz)VY/~T5uԐ$˧F.ޚfoQc'0ж|%?^ ӳ;,8W_/q"$Z\p(nU)#6}H6 A +Ja[un3sf}7ʌ pwW)MS+PjQoqP++,RA*Y%9ϐM܄B5P;LBygιKM!x}{ pT,7 T$ 2XWmavk(:>ngoۓ)kRYHτl{BM8΢-4!=TQFI U.Qy󤿘P` /C;ۿV k7MxϐmL`w%PY~-y9ĉ޸y =oo:-zuyP/X~,90^VՖոȊ{Sg0Va r}` -wtfĥCz:hŗ׵Їb+$$쒵he$?Dyآ9 sZĉXa.B yd\<tGC{Gp>lQН,E~t4*AQrƏ桪:Bxv'nBvTMї]{zGD&^"!$e-@'`&z$]Ȝ"  Y9;јlKsS#\>re~.„Ƨ}`LީE]UO#L%Ǎl ubR-,v@^-F8"VSS~PJ05n}eדYvIY:Χ= '[ #F ZxR+?!RUzFgm"b%tTH YSOVI_b`}WuM?(m0-A'7$#5@ a¥gEKexkFɉI~s5=D\$0tG%nc=d7АqD8^ 294N r=P~!=vY֌? O|`Ey P+SJ ,O*vX[8ٽL8Fh0heQ&~S0|v,.@i(;,-ٕevl۳LyO0n]mZƫ y݅NҡBB%}zZI`3EEZ{fە`{*D4Jbm7ӆ D(߬M]jf@'Z[\tLkؼLAIĥ=ɨ G"A4}Ӣn}I{DecmI/flzF1޼|9 g<ЋDBH(cLD\  %w.MF4 aqHԮ\V4T;q?9f?Ukrl7EuLadKGEL&"Kb\vH[f񎙷 Du;Uf"0LqufJZ])Ⱦ 8<;Yp­ '青.[`"tknarLJDWS.r>˪>*sQNoFv͘pXJbG6)k_:gaU5 G>}Ӓ3tI:͸7SG 8 s(}ŕA~pB eZȻG+<6Xx0pRz5 KѕP%>q '4^_AE'[TX9; xzEܯjĬsISnّ6bFUY~U%:ٍKK”&fH̀!CfrgptԿzyVqtr?G?re>xkyy u*sR4޺>?;M]ͤC]LTxS\ޜG*(wK>Qݺb3 vf+QaUJyZmߺo=Fbnff'gIc·JN$OYhFh~3>2W7^{fWYc`w-YQqá!Mɷm+>j6,U:@WEB_7o yj8ϙ:ҝװh-ﷁQ}hNYi/*Hљ1 Jŕ ?Ho9͖첪F>Z֚^e!Bs@ eŕy!^v7IϪoj 䁏9Eǽ_/oNmO;rHvUo$2 ^|y%~(&V 5e }ۮ֢՗U8LA3]C_68X3&vz+g Zp+OR@( 9rҪT,: k`Լ̵9v;16AvV̑%ꦦIT)>7ϫ [~U#r#n^B܂GrmdܶHe Ε1Пd!A"Ø_=ߋm9B.?aF#( m.\( s 2A>HSUr 2xk*rOZˍՁha`k;0#w*$3<*=WzGBE>'p5e_O1ZB|i<ۍV!)Qg q> ƱIݻ]`7OCUV Ғ|v^5_f`$YoJ5csps&XCSS7»a;lsq;Pb??Od)rHWe8:t/=0mR@P.yr|eKdHd7G/42=Eal 칿L8<9!Ȯ e( gYMI 7 ,{ϰVAW;rn~p|yi᠓fRv9F#ֽ90 ۼ_z75ӰB}ẋIPWuK枺ʲ^3jPXLWkWNXhGc}Y؛נNwk/1nAag=Gڀ9V*% xgXp sz4 1`F|}~9A*Sa,3/P@3I#?+?J b"J`ZE:)/$X3 ]R S}\ xkx39K3MWC\` *o_ru޶ >M1ePEGya^BEQ)PRd=d7(N2?z=Z)L:?m+"GP<{d!T$gƥ=~Rh< SYG6F?D~F4wOQvUQ?ܔ:_x6lZ(3u9jӱ8H^/Ю޴f_a57hxdeYWBF-H _lC5Vy M$UR9u:;b 7GXRjmܢGGӶ2in-T7r:z+#<S|oWEz3?;[|-d ד[GNs9#1=ѠdCQ֮lE?6J?4/z1D;2$I|RP$q]_fwVQJ:0;0Kg 2YB\{xѺjeg3՘wV*aψu_L$o6'yt\$z%4`n@|Q$G;2xFvkZ~~@rUX􂬍 ~*dYJtj8fgS<¢ W|cy Ȥ#e^Ͻ[Ho )!з/~zXWNH3 [ǯKJ!3bӪ _c&30NCX>^Uora756#^Sl:M 1{Av{di3iRoHWr^^jQT*bX&BL@J kVNZcglC1P;S1Im^4]K̀=gfks0p"f*S["lUd+RN2'klWN|O=7@-ܖl0p*lVh5tjJ@7;u(K{( .B5CY҅H&FI=Jy:bi (Bz;FgitBDi_5{ny},,vdC3aaLް g ~-w_`4Qw:#݌({|=).{u4u'}dP=VFj\6M8DW4ˉJCSDHFmH GpkTα(׍֬+O! "8ƙ+j|.R@W1s: ;qdy7;zR5A0 Ter 3F&G~WQl|47G" Jg|j^{ i+ ˷5\6iTA;_<ӂ#r3`k 7m4пkfǎ4Q65A|6ȴx ^P|@=9iM݀4`&5)exy;hHQ7~7iŢ|Pc J9J `*V$L|T$:6'y4:DYnRb%'BuaeHCiCXkC{ ~!@?j7?@`{#: Vk&M~b5k}1\ef&t|г2.,hy Ec:NAe])H^2 wH|Ai[u7\CyDizfЅp䴝2CDSbUw$E;(Tw K:We$:~@j >mMISj#銿S?U26:V<&e;d[U{J|FQ (s,{)z:6pp/6śXb@䡑gGͯM[wꆫȉK|T*mOu d.r(?E:h*1o#"(-܃~31kla&AT(\#N4vXKƔغ P T#Ӯ?559lڽ,Nm+dVWOG<SŵPm^JX'A㕧v8vwU~zQX{" &az,ļ 6۷Iq}栃$π*/nbu<eƣ>ڭqEFCp*o*?+G^Mr[R)ꌠv?4na /Y,mL:3u7Q&PAGϖ["|CfIzgM&55ʨH(5OJNvڅ"mH#z`MAVD&$Xs*Γ/1\ VF/۔A[Kh58Dn}~+ _()= ZX\z ;a@1wR}?+K!7A]IsM{2 ?X~pY D,N!ǝE҅I53=hx\rj9˷V %ڻ:^uXv2 tJA?by b. ;"!#[4ٍT%_0mR9s7iY\0?:C0?1\lu%&`'eR,R]o IOQq_N=(XRIɘt+j^%{=;y<$ӡ9>q\tYh`G>˛XĊZ!PJx/E2<:ȵߤ 7DtTG*a}L^- aS?k! 9E?FE iY6 `zHAq셹%AP?VAL&!/{98&2꽾 \${m>dՉGC#[NWPE1~[dKBUj&ы9?Ct35T%#vA+0r:&xx m/3BU 㕬hc^uY `/@VP]b@UC38BP]Q9 H8Cf:h(˫pjGJs [Ctd?<0f췬Q.͐K?.}(n^|4u,?e4DOY\@Lt8dK+WuU{_䅤eD2bS5RIB]w+uӀqj:xp]1؄B8Z#@)w:llav5;ū"L0 A9sIc=şc]MH oSw<{hCw^8'u[!֯_ e#Ow|wgͨ0"#CV:v69j|U״9:o_hz"1[ O: MnaXX J)4ߜn24cdx!xz2?l} pIfP%U1M~ ^q!arg 2? Qév7[C{/pC+J(KA8 L2^R@+%6@ #lQY09|@i\X4[®Z-=nQ5 IgdHbSCAXC45#"Zi$h1|/OnFg7La݁OтKb|mKQ0tYͅ u^mJ齔> zE&SAf̏i*V='] C kBLukp [xjtPFMgYީhNVDb`rjF#~c:p-L.SvxG?cVSG NLٟK@ MѸ./KUҹYcLo,4kq%Qi`ؗ@GEs4ݯ*1eZ>mIS$C(|)*cQ4=%hšNO 1NH{7KYe3 g'X$HBjU- yLYcÏ]oo~ڀ @|օ.7cH~vHё5~gDT63tU809$$s3|{E;n_/z{ ^Y^FdA,]2-ӊo-6Ձ5Ls+q")NSWn /4!xrx~.+fGoL$)=07SP,ZqW]B o9]E\tוF>, 1F,o&rQ PA$D =E+Pq_Q26CE3K_My"][wZL=] TaM()b9!H'^I9N;dԗBG7zLpՀ6oS%`UدxBY22b@1]ջ,n{ddkdz,5({W;?ngY#+K^5GaԜf$1,&g?}_G"qDџ*Y(KW mf@n-jH\zk76Wf΃_+xS1(=Nf/423M'A"ZR^4LGv85g??]3zn@1eb3>_=:(LA׫3,zOgc87&$A?*Pk>tOΦid1%|fOvxbP^Kl L܁>ؖh-r/x/rCSAU-;Oj2 C3zͼ*jRoXrP 3\X|\0B(kHČ;4:^tR[ҵxREں67qfE(&2xG??/HŸǑa@ڶj-_[(u/rw@ nsbK+U+2|F.L|P5GX*&'yL2fbq8Iؕ>u>:;) ZR2H3{onF=i Un8;_(D$eNMDA\|GC2e6Oաe%:$xep,zEA^'V9g)ggRs$;yCCn}%ec3.:#\"]bR?H9ZNYTLW…dqȂIy IJP=UX} [c(##gK@'SѐL12njՎ"a40#ѪT8vA7W~TUd+ұ~ ,C͝lP9e1AbjX&ԯ!>o2M0=q&wL򛩏95 uʑ߈x/Da+OdSҬQ'drcfLJu %$^sAIUz[gpB Ϟ+惌KJs\%pYbi%P8szf8취u2Ġ{"'Gn]Uڢ!WybܞUyrm42oxaK+*9,5}5+g;sś _>M)qc ]cn ũ D y72xI`lLϤg>j=YoշsKMXඅXC0J+M3g&{'בy>k+QX[re:B_TYpThC>.n"wDC&q'=Dh{us_ 7ŚII5x$g 8au"OٗfTo}7b7`dVӆ;;2RKG;#\jʐp)_OE&\٥5\xYq@E]91 VޛMHo`(Eq-+[ҪvPWO\5(]oa!:Jۤ7U_z؄[@$eo+Ըq{[^BBhq6G_(BÓ]:vR}ZSO{D' VRB>lFO-˷~ 2|mrH.pV3%#K1p*<..V}oY D<1vL(!V[)جP0vhbҶ8+.4L=[7?@5`<[b;\LZ`]bӥ ̴9{Q q==(NXq{#>lbyȭZϓբG=Ppqs^ U7pMcOꝉ 'i-#-# P>$YaOקRĠH"kJzyTwQrjH?pxX혷S_Z5#AsPM @<&S~ $o^eSiapڏ;0#PYCƄ hx8 7H YAf7xӺ:'CSCoTS/K{<鱏w!>IHsyp.t3\FYp|oQ\pa(|t0|9Lg@\\b.uWHۻIA/ T(ePL|Xf{hdOnM4~3V_:J1Jݧ7h` *P)z6|4|eI;~g"R/_ 5b~tÏ ,P7A*F ۍ|Zy<VU8lhydWŗ&G=Ql!u>~jAzsݼKkxV>ELA &(_^ zZng -%.ڗ/f_uloTt85sn:LMG+rs"C6gg^-HJ_ rCK35@)2V߸a\Yc&,:- !=J`T+T>zuds = F6 !#_P&gwFp _s[p~m'+-ir@* ,_3>lQiJC~茌LG@ZqNVN!YJEZ6QeE"leO1ŒQ3Kf¬"G&nzS Jv;ןƑD+u:"}\@ -+8HTe3yJn>槶 }璾Se>U+ hٷ:SjۥGƂ6ލ#'u%T@ 0L˲.jň N:uv wKr3噶ʂY,UX#}S*pD.<6ȹ!m:M=«mfnZ(,& W2%:O7wBF. rA9IJwVo$_9#ѱ,[XmAx}[m,S3zC|׭j߼R'hni[eVc-͘Q99σKql{߬a lHK{~ ~?SȒg3Qj>EХ!qﵠK6#FWKh(V|?XiWΠ"-Iqm13Cڍɮ>+= p60ز?E?dE]gO ?I]a_̆(DR=2RS86"w$WsCCMccGb0w#*2#ԗcP@qn6C2  Y'L6 wU?jek)%_8؞NaH%3%̇酰q?}!B(2m9x71^nmkOʼo3mmۏ< Bi1Io>F ,'[_iPdžby4T3LK~*0}}:Foljb #5T$,nۿÜ@( 07IJKnGY& -oUdERN!دG,Hp\_^*\yUM2/͝5AW7Νp&_r_O=wR5n͐N`` v"-qYZ N,^y|xS BdBo!~6hFƗE`D7*X;%芤_./N@Gv,aW./yɧޫ*҉uht*#j"6nI'"o|"AM]6mDis*ZF"!ӛK<2'fіTIb?o%ֵQ#>N (~r+*[2Q634ǖ^B*b!p_L|WvIT>_U4Rl.`5^޳ykHXhֈV `ʼO]c6i/f ?{~t'ۧ<8xmjW*W^3ʏ67r=&v/E˨): a5@~O>$[+8BW_.kp;.R`bQ};ӲTs7`R17:;#ʃ4[^o#8.ǁ? Moޱ0Ixn5_Zp8cznJ#[X[Mf: Fu/LJ}&U"Oı%Wm?܈Quq*!Vde8W"=; ,|a"׈4OdmCrXP[{kM;(tuTM(cke}H@LPYǶNfs űy6%z=|B'TW*yiMP3!M9l|IBY\=BEYP[`y#\c{Xߊ{? )`Qig&>M49Uո@E mDn;Ksʐ{ll7J8n@@[-iIҘ ]lrc0Xy1>\4ec']/;gN>Qn fR=2?pOlNrP;@5;NouG4q@̹fja%@[EZ_Á|Fb4I\9O孧7J\^9K~x%aV`N XzOah7 if_^ o0L;=MQȾCJѫ=b$Pp:)kT##l)ग񊉖)džWYaNgDB_fL]JJ.L\Â$mJŽ0np/m(fA, DcJc:'0t=5CXɷD )5/$zXMJПӞ."re{^0GȀ]ad|P6n ܅|-S'iO8oܓe|@_](M80Ƨ|ejd^I2"3s`n;nyZgo8T)Jz fsξ*̜(vp}XϵYV);NF;\起s?H,Ͷ'!&-.yqu3o mRVDx%'8L`$A){\ _{z%8r>.apYi4]HEz?aF8ku]\A5~a= VJcx Ҧ3ݎ"'tp鑈8yeY(RO1~ZJ0oOU.be)d6撱*O5Ĵ0RTlM;?\·g:i\)`:c(T;B@{28׿t*n+@ɤeuK#; #*f&Lؤޔy{Hms!e;؍e,1W״@V.@\N$:K$'Pk茣6Q 2ynA?1B \I5n89=}09\; *w~UřO'88t\07_t2/J!dCذ)ęN͕!T7D"CCuV>}YٝMcnXqk6@7(1e /eզCnʢ:&*ޝW9%0̪=%"mU:5L26Jf9A l-6sSw^ȺdV+> ӪZ}dckZ zRl!2W'\JP?8o9 H+aMIh wU"D/ȱ@`f˒ #؆z]y.DJQ`UxD*V%]:ޘq719WẠ *倝czQ7^ m>L8'%\ˑ183&F5FV^@uAP2orE% 3!TL[@l3mY(]^s뻧e|FWD$h^n**x!˫V+$X|z}/j>Ay4MI~P]S0!"gP5O:f}>[^7V"Mʯ_*ϐTB4a;+2͕ ,;7fbN$ |tAUI?F-ʛAٕb1S\y/Њ/h8HckHM[ ;"eu>ZtEF`Ƨ 8[Sk\/h%tnM.[IJj~uwH/g+ZNnkY q˂*X{eU0ׁ|ˍ] 7MM-tRZr1* ސ҂P3 dy؞I[C 2|;Ռ״Nr-ʎEKӤdǁ"Qpdر agP+jt<þ~e/7ckW介s&'CUBѢ\q~ٺiA 1 !$)u"SgH|ass._~ _Z=m+z!mljA 8sV 3 g˞L{*ݮ{v5*kRy?SoLSKdlV~FBÑXEeyB(dU.vsZF4}#Pi;[|HDC\Ty㙠ڪs׿GQEtuލC^1߻{xˆMce+)E$Cu2hv ny;:9Gcn5s%Qw] ݍ.F~^0sIQ|P)~z3./y^>yt51L>巕2J*{i|ɶ%sjg߆03=jQ4T6cCzErw|?s׫BӬ(hmFo!R;@ @!gOh IdƄQ>Cϟ8(T;]XiTҮG=n*3%o1>E6%$[P_\Ҵ^ 8.'chiE;CsMxYXELQ̨m3V0"ςNནʯms8:W8YK 9!.39 ΅({U˽g ;ea3n($8a.iBxAϖX97L aAIZFpx~/:vZ(PHD\zf@A$)J]@H lq${ 6"ьB)zw/ziu)kIC?6? doĆ VrM;v41iUN3L!"y:Ӛ.͊Wn$G+Twf^|@;> N֗|v5ت"RXۖXTjs4Y"R4P`pL ͦXs*O 8ToWdl228r_Xe=~kƸKW0b<_댸eǪ -TSnl֮?J[[OoKխPA>Vu?  snY׽n7 b޼.wz30b /'f_|w]CCkLSbgu0Iװ='!1܀4K .7B9/Ps|\蜃w_m4EJɳI.ad3w¾\qq3sy<3!ɧ-8?4 2[Ѝ b웁mWS1WUDC/s0O~`jGB!11ҕ%Ceb%\^s`S-~՜PhQcJAL i'nO-pyJ9ig? abdZaDw ?ge$* 5Z\j': uysWA2YA up':9"zvєRTSQFt(#%)PdkGʰjz7#zkfЋQZ &5o+: ¾G`e)*_ٕAϣf/(ѢYZr VUjTi9zvxpӤ)_a*}/q1yv{dWT|~kUM)|;&a-K\6#VƆ0y<C*RgSe/N5ŖJ1סl?.u 7~eU 0#Mn_TUh sśMb2k, f'tKt6Aq-|6X 7mdW)SRмK1t:TE a*`&D]{gr\, +ʅUD4nh8,9U~!"AآB0#;]V>`3#2~ Q*Z?فdgy8ii!ϋ ?]uݎr u ds46F_ IicLv x>J9׌vZnABcM<%T#lhYU4[w*hNs= ' H.#3ЖG«7= /8=!61 TՃ΍x8S]sWiԜ!F{P]x=PirI#S2S-)wB1 ep?wei 0gE x C*^N(~Đ,أ-Li*T}& kyĠ`B0WOdY+zC8b*j$`ȀzW1<:x-ޔ$Yei~$"Mojmhe;Ūǟosx wޫn>κULP ̋|hjm0M%u%"ZaUhWߊ¯)Vs?s VE9a8fzP||/rDH.$0o)M V0\}\ƛ 4w(=FPqAzwg k}@b5 -b"ejPݯ GF<*6RmѺ㤁kiTF_c

iΩZ\Fn7.vTTt'7Qwƒo`TBF\}Ң}^C@V9a[B_7b]?BZ8i+Mל!:*>+Qc L7+v !~ ?${9:EQ\KS=GbTTė_9d=Z`2Sd6Q*!X/f(!lwoCڑS ƖVMfʑ3.e@j[]w u?y^#|)iPƆBɹDup릿CTq]]u7._o—4Md> 3x uDsb'=b)ޓ)'&Ky^*ɶᆦ.@.at悝&駳.Yܜ JTO>$ 3e *doUVI=J+`_0>0A/l!LXl8(O&z+lsx4 <5f9g$jD`+Lk)߽K7̣̒.'@,5#I1R6kѯ35"*b-:5B=Oˋ6h2R}W6%.'"nU"=~k:{h:n B/霜JvRLncZKa>f1`bI1 Ԡa{玵 %Yx5kI &omG 2^媪>5,mb vz`,j`11O8ոğoLr wgmE;sbͰύvYHZg:Tg]'ޗ~*R<7D/5k%޾ :hx1۠iZz.j]SFאK/,h3L5#S筄 Ҭ:6{:IƫdX8"8Igfg1KpWH54)k~^h74tւ9AyXE^kG@|}P)85P$,DR¡-bPB z9!be8Ta2QPrjLbG?Mj snsLlŲcLhq0ptnBGyAFoF%kaxeEgS ^Jڍtf]3G' kb[('jNeEԞ` QZ4&QVǍccGdDŽ"lap; _*ypx+ISXn= &-]Ε&LӜOi]jRlLq W}3YTLi wБdTnXfw79`ɱ0J͑+:ߒG]誽_Ϝ}o e09TӯT~ ᬾk+Ly*+qQ^٠)\SzѣG* rˤ+RUo2v\G6lyޣ<,$A^<Q.tPrf7+Vf\foM: tGءj)&y4أz>ӃP~?!S uΎ8a,P`[*ؤo GdS_XϚ6P!*_S񀍁pcrL6{_;ts'tu d<2%919='cXԬ wb0x?/E8$WLb6XԿHg\))CBiI\bT3|l#jOP$Ԡa8[ߨ/-vR:k*!f=WuGE5JLaPЏ FNX{̺&݈! /]FSmDo4D/X'0mîn(\^Tg"A{ZKOI%0>@'{EAڑҩ,eEyAiMWO69-j\QB#y ݌}1+Dg]qwzCisA!JJ4{9cC Acs7Bܟst{K CB ::4nw+*xfK#O!LmlÐ8LC׹47FK=no{KF5BIb5szerY94&-Pζ?Gx㛋Z8ՈhR BM#Œ{zJ1(O` !S"-a_}HF˸~ ߥKW&PKB|`w }k2b Lq"I!m7]ͯP#Su",o5]59)NuaE\b6U)v3 Ǩ{E]zryǦ+y\m(4X2>f~ / nLG &<͌t+q7%=- +^ivfRC "Qc`3/lfq/@~k\uV}FߒYU z_TAFԪbIVo~|ݎ4 ,gTM)+q?GN=Fvog-~Vr[k q䒚7-~aZBvH,qBVX6.\j)[e nM-G̃? dD%{Q՗@G~2/K7lZ߶/$0p>usfl*VI0u؝O@ bI.qqi8MBV _4Vkzǔ?c`b"=9VBjFF;Da$ c>pc%2t+i2CDv3FSS}D+1Iȍj س@ E42Z3.:cы=Di Mv^Z]![F iyW0j.ш%`i0-[q rTEwc ą ޜD>ශ-)}WXc?\RD3gnJp94 v3x ] iw<(F 5jNYCa)!bhu`hp }BGY,y)zzZ&"xO ӢN-k1|?~`3F8Hr^?|X4)>R&hsHtkѵGbc\{Ia?MBB݁i"q&a haL<_haN#SOo i5/g#5\wRXsBO;Kum0#&5/UpYM-Ma޵SNdGyAN C40kuvOE/#Lc; ofq'~F| v+SsUQl0 jS_{6ℲwX2z۽k2#zw^y\E5\ ݈ߍ^!s+>N޴s}htfrj߆W`j 2P{1?Ca]7-fL$H/[C)+ȉ.?I3R3Fd4 Qv_C}AI ? {,l}!DZ<E 8XEnz XߵW@7 [xĐE='{ihҾGn', ʫ.(Wm>g#nReGq+sIG%R"?ᔎ J+?i474-sݞI2k?$3Ң_x`Hݓj AQVv`P0]f"E. ܺ, pn鱱i\~#s'` C 'Vz4Ap @jJx%oQKqP* us `L\ZMol叿ϏUQY;2zhRm&a˯ܟb A<0dH+|*Nڡ04@:TU-r8T7?Rf5,ѸE}ۺt_:Q YwTP*IpR` ?sp4g`)dN>.s鿎OhYiO 9}>wSxja]9^T# #9ێ4MI Fy^ !Ʃ߆2p,=-fn,ihxBKYE w+6a-u֜24^վqYϊ\I5aMO=?tv׮|-DZָw=uSitkP2,g*#)g4 ݆pφV2%s=f^l DC>٘d >"읷%7}&Ujݘģ>H+~TޭΧm bG8& ,,@|}iukm ׽Ή0GFUczM=&m~Np_$)?ÀtY'BsC(Z!xxЃO~y4eTQNΡ74)Ӎs+C K@FYo}HVЇtxO &2E9g4]~>/XUqKT,sϋӍ3;1r{c[G`o3IVkĹI=P0lZlKzio UAqVy]酫i +G|S $em B0[  k.6e+{ ̑OJ]q`4(GseLގ-Tk2"*v2~fΎd@ /rz5"%}!GQ2+ qw1{wVE!O{\q،g°EɫRn + Q!S<(ů{°mx:7iog"ņ`U@,I_Y9Sb˗U(gbP$ }*o<*^;>RU 65@(?G|-3\DӮ1vgsA[KV 6P9LYhj W^%VI6{@;_íjJ<(D{L.d{~]unJj UH&1x\O 1 O${`b4-wT5@aJ"8 8"[›{BW,{ ){0hA` :cBI>5""8cD%紈CQ[gwJ/[_jCݼof+%-_ iqonOl4/Rrro- P#?Zչ1^큒kh~NZvRv}Ldb1?Yu\"}oueZg 1 u_"}}$c/ ^@3Y nOYj `(DXr0~"˞}(ݶ:IVD|>$S Ҿ?n>5Ç ަ5,ñO^C=eBc)0}wxڽNA^!{j 5z̈U56@_QgEE::[#~'M# <\ ôbڄscwe*A/{ל'tچ|fG jx[+[̔w&fz CܫK#d_zV75?Z&$Ĕb7kS%hH.m Kx! k̈įwo׻QBQNaZ2|fV>[S_bt~##@YLHZwU;3|h-0A<~Dס|F-ӵH3F2bFN.ɽBi+)_BLlJd^r>燉өZM4O[3R[6'8y`f_$*Ǧy`1XTqu-[WuT + rSʾ,OߋQ6چx7V]BGH$'7 Ⱦ_FqVM5fބSISҗT7@s/DcQݿe([U9gP֯ţWن<']4,HНhYVLjmg KgªfWϨ Ur] *y_ [8.^zW}"# *OAz6j A-4A]ME"SLvJ)cIj"wU֐Er+~1Ҡo\4"h=̀k3,e88 pǺ2avH6_V+jV$羓Q;ݩ8]gv'X}Æp/vmihnZ.Ba{u}ߥКVU)6;11PeF~PVmFkiX7lbabGR.Ʈ/S!#[N_&Uضˉ7hR FYBNrdWmy5 jW[Pܱ1hŴժSfNc2(R=^]ЈE^t%GگdC]䖴zQ@zR 1`0XM.B?v<).!"#1TEbA)=53m)eJV0\BbfլO=b}ǔow +w^㧋''J["mt53j̟  /eMD LЎ4'& &N>&ptmON3EjQ%P Ǘ壀Jf !`=0uJجc%&N78` ytVeXGӆ7G9 x*f߷>Q:d̲;Ɇ0dKpײi҆Zqdx>(,^aWv]D4Kp AXXUfHm2zYDa&( ^)a{ [HTooΖy]|FVjD? 1jH2WLHUމL?@7yO%4w0y73(rro~ Bsyd[#]fŘ'G}kK!<=dVd[!X/0S@3j*GBc0L *¤R=XLDV9f}zkbkiGTO4 ԶARa5̟ }W%(g ]RoMpĸɞukX % b>EnxtYiS<:wUo4O\}*!{z̰}cť /wҵaSM:>Ft^),KYDryjHe|Gl"{FJ geB F6Uc0^v}l Q`1iO uN;XUc~B) @G,Fkh>ׅŴZ1 *>AF$96W~!yiEUD}%5߆toL14a$ ]IBU1sXB.: >@u;TZz:WeJ4EUl9 Z*f YY?gVDdāy~jo~Yեt%soU,8w'`$覶06h@ %2kKL}KRsJf_t:Q)>n]a,!6{pP䡢T]X{rw$7$ PULҦj'wiqi|'!Nni]>e {EWlF&#C8n9]nA\Ma$Un}+QMd2++ $}̞MIoslEe$g2zcԤ} Ə _7ҖҠ_e?-<҄dp NF1dR==2 #睦/zf," mZ z=L\|KXS^mCn>^){ā5~/ʮaV6cwo^0mPhJkF<Ց(D7LH~?g5" 5=$?=VV`N~ז_dM}(&c٭uq ' A~eia '#KܢV1kAA DŽ9ݔE(z1{8=jV|lO,_UQsd4ѲhYCOݽV;e%Wɐ̐P˭T6/&穯MAsED\;dǥ`b ha*Q&8~X};1 GrH(j}.xP3# M hENx˫0+{^\;ĉ$QɻKfY)/ߦX;Yzx]6Mylk$s67~4BLrY@Vܽ7-,z :J,t[=LJkT+0*|QGygBwo:{>ܳkfIe~:˦ p;1MUkO`+ݗt ]q3m3H O{yCROoB>b_m*:[a6r' qJQi <~,Zl@寸f%`R;(S:8&oo2~7'@d@8KTMӾg /Va]~wot_?&⼀db [ j]?8;.veU6[67Ii B0)*鳮,UWnAˀM_ܜ7gɥGXJǒh;Bܹ۱4mK{1*a1 dk鯼 6SۣC[YF 0x+ &r g"UTG&"FlKYOѸ + ::ڔBNӈfZ,YeK|n haG;3cʷ,F')&wizoS#?Aex (B=D|WVD;KE @D)l k'BY/߄^YPŦ5A-.UBAUQST it69d! ʙ]T͚_<-P| [j+dTlUh9KuVb Ĉpq5#C89ʞ-y^NawmA rsѳ<Z+yV=L\\PvM$֓qC%Dr}:%/0Xm.J|^^LF;>;Vؑd/ +k`3YxωoTp!v"'c*J+ήFh5_:'VḀez?ĝP倧e5$VAcCgx=G]'7WOc!zx|]եe"WDMyI4>b(>H 3L;Ho! %@ _d_&4RPGVƏ&2Kz)g \~eNlx+>I-" QQ۟}{8u} xw% Ŧqld*2̄J kҙ`8(  Nh$Iۄ- 󿧠ﳽVCB &Wk =]vz+ DO^LGfU!)H#n%m ًM$V~kإaĈsu>~7?DLа`j%ysX_YLvOj{ͦ?i{ǐa.A#POZ庮נm+*  L)4#p_ |:gol*o.j5 wI~ǙZY\)-DwpXWaI͈<r< /)ʒ}U#fylzgv-n?gz]#<#!zy*@1酩Ez*!ô̐_[݇6h+9" e%tu *LHhdus`֟ȅcizjV">!dٙ6oV_\h0,mURhevDmlF1BnVTA#8ݿ aW q[ rAmHA;[Zk2x>"ׁ_UIޓ2g'+d&+y re^$9bB&Ρ'b Koj&o~ 蠩Eo9)-ۼ&'ÅLޕOk(]l_5QG-wXqGumʘDK:mBOTyQehNu{#u;/)Tœ&S;FսMR @-u8Tb8SUNHHg w3@Sm8gQG5 C_*p U-Cf(5VgT ^b^E,\өZyH6;Ko~ 22T7} aK秖J 7j]kW,v:Ju]V\&lA)?A&"q1fN@lhhhQ o$hGȧ=(70A{f='\'Ɩu8gϔUHBsc4r5 gO=֨V cp'yǨȲkru@aDKbo)8a*~ ]jg>00 L'}nvU3j5)=f _`3|urģ HkHSn*>Xy/& =9²߄PbRIJw OBuq[,5[Y5#@%qT5A*;j4GFe84a]n,%"Xv v[[Ѳ?a8 ]v hEX0` ;;b&VoW8ˇayvA9y1j % "uyem ^y<Y.2NV6]Qi;oP)x͑A8e.9 )O*CدkwtEfݖXdd&ғW׮K>+[YrUN$KPQr]ł}-D8NbfK=1STR#CWtCg8݊.T+Z4M[m> nYnKF;]ݐq1>LDYQܚf") l^k!@nF6tk$9PN,O|d CGP9OQQ\d_U[fd"^@dw^_64Pi']^c`|8L1'jsJgex.^J̫{M;ύbBg.L|&^$.r7GKp YixI?ׯ a1l?AqQ}b>Ԓ6_3(=C)5mn\-6$̓>g dt+/*NtO͝1/=X"W*?\K!4HdEct_*fvD^1(sWȱoiR}d?auS02 VP??Ҁ8oOs #3L7TSѮ<s+aPi*RK5šగ">~t{P =7;З4 n:ʱ&`EU U##1PbvE}XqTٲA{˹7^2 .QpsO./d,sX0q݌ ~"bRynX)\>q0J- o$- Ўo!E7GOxO~S#"WI`SNJ18~pL[u o=)6R|wP,*TWf4BYk?U?l0 G[#OF>Oo[!.KT3 Y⣻fe3Qy]zȩh=ːf-7r?f.\8:h+ WM⮵* Z{t(zɜl$:Ec,RmGr&maJ@꺯Afkh 3T78.a%-w 1pa8kJ) s$Pewl=RZ6(Hv28䯔z(C2W?R5m)VC")dLEȇ6x| PUll?W+Jiz;?bӥD"GuqK-m7 8֐&2q3Rn-S&9Gҙ]?N~³P" ʧ]+Kk؞+hGUCB[UoH*kyt:bޣzYbS^YGh VH3yGPͣO6`4@Чs[xiAWV\=cA\7Ëu Ǽr@ׁp-P^ruM 7fQ2"ơ^ ÃQU+*]%#5Bꖶe/Vp_Udr(] )F)!V‰  I8*d8O0@5=Di;[=.O?I?nnbW.2O/}SL0QR q/=JN>_)y΅/I-x󕔕>'wYZm?oi4w]Wd>t+iCk(xז3(=HT)لRxKk Δ\k՗9{mifp:/s^SB)T2WIEkJ;hKOm plS13뽙?[AUhzTș!үnP:}7 A@"?8kqO`16\ƋT2\1.TRة"wáFE y5.T4 丧c=r}( jC0iHn1z"$<vo6.{Jʢ~TlEDd1+d"ѣ( H{xm}[~nBkrۂzM[+ {q5tq;ܻ]$Uvڄ/"toSo"҆;5_#nq!| Rd!F\q &jף A3LdA=h8bmd+DUY]>#Q.`jd/oy/"s dCB Zi/ErCa΃j>2oJ{'BR׹xF9JDF'٫2[u4ȈSfUW|J_ +ӬXZfiE*y X5: \-K2 $`Rġߖa0Q0.[5]Wp F ~ɻ,It㨔JeEk\U- ,#f+bT86j8Y uy^DGr~֮4Y{*C <[Շחoq6"d{9P*QҮs.=ˮ;/4`w[ȹ`#%~"Pb>ڕ~. z Ρ niU}Ҍ,XMzlkw Q;pU|A0$䌵&*]2IZ0JSd"/V.M?s m1GNG[d*aHl[ջ{Oa=gԓۡC?k|k)Ԩ^s('!e|k-8Ewr/9ʮɐqλ~{ z@@V0 CTfYG~:c*3"dmR 9B ,aکv5!,Ry9GU'~`w7$n02w"#'~[{uѯ38ҨEZi$` em$[KhO`|>R]ÔJD{uЍz$Im蝭243c?uH#̫S@zޭ;n F&{I8q\S—'=#j}y`zyv;$r|&_W&,`p&#TTRY!Czbp)p2fB2ځA=Z */+'Kå)bT++-%^dW`B -$c7.=_{ԵLl *;9NOw=R#OG#ۡBW+qE%fPk5FNr=;(q'5B IɅUٷyvuK2Ȱ`'']Dvrh!3>).1  ;^ӷ$BцiS#B{=3N^Gh_d/x`vF2g^33t2[#0pzX>6壉G"6$9. 3t+V ѫ,We6/ݥl 9ԩKE]2(SNL khN璛Or BBJʜhUk +ؚUwSѿѯy $Q{UIbk^ޤeNZ83h1ߧ2j>] ,RܬYڔYnO!8[][}sN Zsq0DP" 4 ^YezlbSa:[b WTۡu$TZgVh[a .lҀo?$a6-Qw*<u7p_fC`uEVX#SK}ܢ+7b(^4kAZ5!f" ?GpQ.4(m02|yH羽EI":)DkT t'QsiЅP4qRZئ}b/ͳF!]2ZͨǬףet|G;=.y\YXj7Pq'8;T~yŲlLϵaS|*y-cB\D2gT c{R{kL[,Og'Kxn ĠzW&@ tjJ άhKy)FkOY·K$)TFhJƊ.+B7)!RO(}(gP։/< tՂhtmM[ݾE3tfMS0muW hJ抖8'nq1˗-1p-k4f]E-:aX&v2hvQM;xW7fĦz"r@ S0)lNG)7ٜbXs<w[ LOA _o6s_!r5eii2ljoolg<,.9, T}(D:ܡĞΤzTi7 h'9b -\~tlWD!~]qfF9ye(RswOE]r o1|g{F"OԼq(fbw+0-Òx>7 rLtkE ~MB67ɇ|,P;,X6.eP\Nƕ{\ˁ"MNX|m&  i7?Hz5 c Aq09=4ĸY1U87VCGmʠ)MLVT;u<@>5E\zR@3t`##ih-VT UzG3Zdt|W{3|5^N?ttzjW{^;*C < U$'z ;xp, cxjڞph[YWל 'q})L ̑4tى&\Jy" #C!x&@`TrK!1-H+M؆M^l;~:?N,@=Kµ6;cO\]*u ³yuM\m(H ˀS$+F0wk-ѳKcLGֈY-v;AL+XE} `i^ O8=[5U (eepj~"t/u;d'YcdqIHvvl*'X/⬭v1w `]VE.['r\VODN?j?!Ckx/W0AGj,-Ȑ YH`f_#C Rm`1+U.@=AĪ/0A+lr˧85%h򒘔y-s0?<О%5`CƹueZIE"Yӕ\`jb"Vl?ʨ(nӢ3]Q o$'\Dk5j=>(i_Q;`Եf.`d'!T,؇?5E elo%:C&L ߬3Ouoݲu{򨑘}K$´߃[e4"jq | +z&q=B>:$cBm6@3;[T>ϧ4HI NN/穦Ď WHrZȨ 0\4-kӨhR O =б=e43#BwdO̓?#<ش)VS+Q-jsYwPJ V0aE7y"Y1W5NK^ nzFʆP 'v k#]y4̻cxdcf,![7o:@IBx9LLgB 7WdFI$bS"O|S~st`>s|91H.b`QెMFVк!_:3C 'OWs1lOƋ|[] {FӉ^8: 'A-;-sͱvɮ73M PjN )m@j@2m!,#d@5j/ ʩ|53"#@yL7LѰ4W0o{G}~xωnџ-59mu:=0Qb6R8wTyPυ^YP 5O uݹ%L٬U/iY_-/c1H{~.ɪ"< .`ҝ{DWeVr0|楈Dx}礥D*?VC8Ƨ}gƅd۞r":6 x&@VQ#_śInb7Ū$R?9rXs+l<-x9Qf,}qz >4'8:vX(kՕ,wVe#}0_Tlxo YOihwl+7#ZkA̝훙*pw߀W.``v=VoYh(_q_K"E9u4aF"@XU RD, /fO|ksA -f옪U;{u˿:=P޴/v_rHQY֖ޜ45wgmkI 2,FeYoOl5PbyX#cy[._1=ۂ}|\䔡m8Sc"O7@n512&z[4gɌ3v(37E cTբ' 'O%aְ\߭gp )FvRuڬPϞm1]ŁEM0ڊ_vr>٭3l#S>0 !z`an-?a?2s,wpG'PfDf%A]XБv@-8[n97gOJe6 qpd`j*깺ڐ4H%/ClyJG9F'e)jMe#j"oh_рX"!^%%fB0Ϣ1#¼(I֚~ښ)LlkGӵo9Չ{ ^7Hf2g' >,RLBVU10xC$jۭV=wӧY+k MqG(s/mIol_R!LS⽿zMި(g+Vl3/t Wqt6 Uvi#gfbF;G7y*gd0abڤoQuMVEԞqP=+ii6-[C&4d.Hm?K^ !ʅ.;t:~L" }Tsƺ>KKݘ2l/{_he.YaBŲV J\CYʝay\0a qSqJ%Bx<+F`zQj~wX0LاL'[ERѬ.ٙ]Kv饍e8}7,S%ZSdGJՈ m?*v ޣR|c̿oFs~}8)eQmJ ֎vٵRs8]O-`PeEޮGqZLlJmuu]sle#S6zOݭQZw(!Q={T@5sƉ*Ӽe?EZaW24 /a%PЌ꿋| d)%`RjbpQꕩ410֌:Oo`7K {Fu; bD 8fx _ܵJ>2FE KJ@}:5:ح5MጿZ2cT{$= <m y;o]9~Eٯ6d$xX2jX%$ba-׉i>oH-Suk\gQ=B;biJ[rWߜy$lcZ1%{FDLU6]kV@Rr)YHLۯ>EL!pTes&Iw92uj #GQkm@h ZU ;7w~B+n՞цa PEmVbuv怙[Po"򰩥MMW=r0(\՜4BhrG(㹞\֖%tJS|3 ~?Ϩ3+K qt&Ov׍bk\'o qE:`(2 ˞>ATu R=ugV §(~n?(1oxJDRpY}Dd:3v3c15{-V =N:%y&z 1$%^fZ ƴhw $@>܏.ثܓeԡh6o|4@?Zz=3BMƎSŊ1JچU4f~ pC&L8qӯZ+_.`|O9;gO 2ŬT,;1dRF?V/Z z/Cf!rz4Ѫ4!x ;x]+L2H"l ,H0Ȏ,U~q 1)`K,=Қ_{ξլ⌺{pFchu5Z)u!?QUq9;/[R'rBUCG`@(w`ߔq9‰4za4YYj l]Հ2n*S[,ifӿNy dm&4H[Cmtp,(&!ݹ 0lc@"`%|+~O6ȷ̏r3`<Ȅ[ P}RY@+wG[)=sDNoM9wFQ7N`Sr$+DDeZ%V٘*ZּBw-袑\3 uwxq 0 Mp79 ,H-uDBᄮ8qaWQqnm]KOK$1$5(ڈ58xt 1N4D,q3W[)*W[PC/ #Y\W)MUPu/sꍤ@b^b< G<&.oj,|-vಪ<м/KJGd]zlP!D&$Qjx/ŠOLRmĺV PhO(ɱKܠо\ zw)r%m 6-k-"dBn&U E'1|i 725.nd8XFʅ':'0ug)<6\QaPŚcLЬ+}RjX@?!=-@?3Я '6SRaSd`qUc6@iEE ?YX:#AQ@2;i^uhXֳb}څzpN;Ot{ RӺvVUI Pϙo8@٫+1kvG-޽wO7z",U@+ 'VN@"'t ɜWGy C1AX^+ Aw2hȈ`?[MyV*I2ƗϜͫd}sE8ŋY4+idXl-c*:NyB᷐e6G_]sgEѬ"1y/xh I>ru F)Jg{h_l4s޽ؙNT9p2rhت4f مyn4dotcOԈ@#+jL-z@n@8G|֤<=V {ƀ]#]gԜyiDU 9!B]Z֒RM'W oj݆koj*\-)r7=:T `{oe\PZ`=RJ`ztEυF(Z0ӄw!{%MI9e=/T_ &D8Io# X`cuYT`hGga81nINĈXp޺XZ8g;lSO(5Rp\Ex\0FV'/ w glenc$_n%M MlNc12)1|laƢMn@|{8_M#;kG-NnVssoWi"ɉ/S+#%lo]Z3ݎc蹙$1^)uWShAlzttVQb"zHL/5aG!Ndjc;HS'M-u2Ifx6؏\L=pꕍ7|z 8gclrm܄Cɶn(4؟{umn.< O cpf( kǕJRJwY}7bUu8FQK P\ƴEҾ mױPfQ.h [ɸ&CuWd5 v >iVrW^SF jzM3l0`&MJ*Xp1C؃%D"aCl:&fL_xw8#Ί7Az@50Do }|d4܈/]fP|ǝ3j^@fZN$+ pmh!'|lfy۹>UtR 6Z%oBFɦ*)զT49PbIf %!SҳR"OU4xO\&q@,Q}]#zN`" ,3ˑ SX"nMUx(lHRL6L! FD-kә~4O0X`&R|eO H'mȠM V6fǀl/?P*0A'7횟H4!1'YGNֲ۝^:#:sYr<5@d߯`3gH+٘%z6M5J z6@%(@+?lʂoHgL >2%*`TSʝ)={qCgW'1k>σme W&#C NFr#O3=%w!TGJG;#괡8j;*QɎY.,/Q&ʚ""t Mݚ-.L v+. Ȋ!+oZi*y1cd2S {ƊZTOq5O)u|ngbg;(nD ٽJiN5=8x\Z8DmtVSm9bܠgصD9ғ\S(;4ûMe;RA ]ZAkΌF@۪jqH ^j4-}V#.jzPTɾI=%sk6MY+rDݕTQteWit fV8nDIۉ.iv,ZάA}G>O{<;G ggA@o4B0GMAlXNX)V`{$a6VƧɅ3C|W#Peb2[=U(W|:*_MkЬU-.9:-)=G%.Cɜɋ6d`+‹=suM%MSiɶT] U>E."MDV#4sQ?!H]TTVHzSt=kόn5] >Xq󙁮!N:Ap+bPAi& ž 9!|8H\עl /|l+ŽJŽWCj[aD%W'R1E>aeEG!^fP'peQ~?N$wuca qMkj P}6|[ ~tk2hn 6ˡ'PȎJrg#+lAD0-bcB(Va(D64畤ke[LYT1>qƻt3-7{4,`m+Mn[ ^$N(/qi3Y!6kq79+n7g =ʲDRWٚ {հ>bdB|KГin `d s\3[ӎ8)9neGϲ*uoҟ+Lb|`{RiW̄bP[Ջo }ЃBU$n#!ؑk9 29\YG oR`ZÚ׈Z+Rgy P/ф088~mCqReBVK%]KG V掭y#/E_Gh3eDk>S ƊfimϷqi|\lsiP)Z,/&)I3ByiXAAzyC| QǍ\!6 "V)Y$vl$ME˔4=m&)R'ц,IjkT4S`=/lu D*L8/_Ji} ^d|U}A^5=ް_qeN>5BW-ţHȇ[._cp .[sF8r/BDLYB$3(Ztg WEa \BFR2VtdRG?+`̗gCHq%xDb@q;laeTDJfa^^Ji>(̽ q~I}HHϾRB^hk(?,id. 60gkڅ NkRmRkd)ڐ&o%-( w4qKN,\e,̈́]ބOV* VS|&{kմfho ovz^5VpbLTATmCɼf/V"&2M1^%fs Lp<7g;q4kl+"2kҼ^@Qr?#cp?FOv)_GLxoY $:"v\p O<ӲF&F0oWp=`;Z=sw̦ܞm?"HƀIh.jK~ @!A82r?@S8 dZe)DNU2`MƨqX-[9-V0ӝGٱED^O&hdntUR}d0w?p>JpT䩅o7ovQݓOIt#>H8Z2-F}Sʹl>l; U^)Xw~~u!^Oxk{ -giIߚn"F}k;rYZ|!DrA-T@"8zETT؊{R@bWþ0!9 ,9ƗZ]DJ53?7q"$*oƗnG삘P+RޥK]=TŻMc/u{֣X9gnۆ4|qk$}и`hKAf 촴0Tms5~NT2{Sq(M" H҇l?+ ± jG+AF?bFbdc/b{lT%RIb>bq$&<9 9yuF g鮶s%-F%}+8q#HnqÚ݂Ǚ;fbqwŗGV땓q$(llLqQ^ }HSL<v}S; ]uWrLe[EEQKF劣.EsQWMhLtč}xiUXv0ǽ-TשWw7vS؜Ft%1w97Z6VmOG3͗ _6;9 VD?UlMǞ4;~HbW}ZrM˄0WWA$ ڞჹ'S I(zp/N 3#dih/S{~6"@t$JrӒxN3;C>)W]BOf=в{ -%ɝ!XRd^7Kan2׮kNh1n5{6gxD8 {ۙs:j|$ˆɠF *̓E(!>q"'gy5\׌ gCBUpRa );wK-#.əg Ibe}ߢ~9At4GzwKW C&܏8r(zS!?3Y8m6kG6YL+P̓Q\EÆ7 xjg*#6ҙ (Wc+1gg6 t$aЫIw,Lcݦm_^u/fO &wWra J&佺S WkE?Z} (8 BaxWå~#fЃضTqD)(iF/吙N@SRty۷(H\  Y.YBIh׻G}g J-%ߞNk`Q*ޮ|hLL7ne>&#׷ik'[u 9qjM[ǝcU̼⭳IRJ*]|v&Dޯ!B;]Y5f6wu]`]wZzJͭ9D@K̜i gMcM3=h۔Bsq:uH3:Oyՠ*$ttnE`Ӌt|ݕ"b6JL7 6[|i \Ĵw,5tsx,m9 P0,nx>na7#6oQP-`sL/B_!BV9өv V\lcY19)Xįdv~e/4SƑ="_EFwyuH}G4$/uP~Rz4}iI%?1 O0G S0a1 XMPkNpftE%ݸYNU,n-U(㒒+`Bb hd0^.p6 }ּZ+U,8[6#ҋ !DDĪBKT-A%}L^?&@7F$c]+DiÂtwb?[);4d ?hSpGVJ@s`_‚0F"'A'A<ւ\[i~'Sś g G%"ϦEl lndnBFA*=*IDuŪX} ϬVbar rnqmט'vgZM#a|lK/a'Kf\k5䭙VjhH5S)53ǍMW|`ئ[Dp._O4?6=񈽣_.[/ 9H07#:h>$/ ȍ; wQ:3#[k׼ WjK=h=SS@Z|nz.n3x]c}gq+}~$X*HXsY=~V*,f,}H 5b޸Չ|x~7I̲ tr^Q^Qhb13]ӽ4 ~v ~1Lj,O<tMiέ(60)5 ,z@:Lw$.VrP$-0%f=M߂Z?}a5{LJ\rٺYv>I;tёhlvVx>qg:3B"v_p{I_A"|M՗Ekn[pH7Q!gN3S]*7:oWA a%߾udxR8qΜb2S[}Ab:sD$OhUV[vC3r0DzZȖ;N/hL3ǿl a3Wfqb(9}kLSދu=ֱ%mwHF^6cZXIomSv2mD܂6<˧+ ssFXʑZHkprqoPFZȳq9 挼#b73mZ( UB0ӢkYVw1=ʯ6FTh1#]v*-lg!:YY a_ |&<؅]suJчk^9,nT@pjy] Oi??l,ٖto I_=,c%cL4ұujI!l(g(5-zt);ҝ*wxpnݤe9W '^W>0ӼGF0(s =kA;drHFq!g+0wD⛩KyR-c k|j4\I>)c+Yθb߾-{Շ\EÈ2E@޹kL/5niu8M_ހfl9".e9Y{)k+nHmJ0zaUTdaTKg9 Vnuĥ{Js6Kf :Ƹjg6U,,MF-Eb՞P Rղ'5#ƞ;'rtkj)lFL cac ŷph-LpQ .λ9qrN<2pdE B[V߻Gh y,A*ےk 1Dx1{wU)|ntV7|eXrR.==puk' s wg# -]j*|4@er QSz s2ƶW.εD}t_CpH&|VulA^?n38sM*Ą5u<l?ǵ!s h\3D 7eHH-Aem:;8OsTBB5é.G#W! ݧNHƭ{)WBNaaoEtxdV_^l\p-H$gˊVðK~ZFbX=)XVM5gp0:`uQRc!!Fy&+uM k8ъMb+Lp+ "o6+XEviI_hSZxJ]Twv tA㪛'BXɘ4%8X>a7'UE+#*orVʁ=ZH~RzLOcө-g/Ee]RϠ\2n #,t&jc0r<}27ez͂PEJѪM_F=߈E'KafLhQM^ N,տ$e!CCl3]L\dtc)s" ?x17DL#7Dx|\Q0BWnvgҲ-@C(`l?Ч"O8VOAnxau,03V{@4 _@H4&H] \e}c@V!:W.<^g) )"aLtL"I?`NA^0}L<ѨQ՜~DX̳ڒU憰t8,{ a0\J+t|4no[d`R^~.j9 EƊZ}N^Qnh]tD$u"o3\fmO*K[ѺfqʴVn@Zn(x`8VDkUNpg´}1֧sEx['irM =w_Yv6x,y/ۘ7@{߬uy݇H_Zn- kZG얾׋.CXqV\8y ~3pFu,Q f.^DN%st,{nKf ۓSCVV|:)SpE=,ad}GbRZ~j}BƇƔtq ZݍbC*@9yw=oMmW_\0_>]ҝ&o]05f UGF#@TYsA&FlR]In1LN )n1*T}d"GikokAwԴJ%5>7ff'kGq[e{Uުrd^{: gQMU&=|= =Gn `\D~pa*!{<Ҷ5n!:>2„f~$JA3V2*xVP%~,L|]6eb3T~e.=oUhќ Tz9i.uF=6Y ֥ 1]O~9ۇۍ[xyna NEN^![!yjsO|4q `OwZH Ɏ'3L%=i =a;c[ncLY]< Q}JР)R7+Vnq\b;+\4A?.@m$r,;jt"Uާ{L⋿m"oh|Yauhb :#p6hV+SrF/My;AR9l/?]BsNNwI hHJˑ/B;߿+zU.-RlWOq։:[c.^F3Լp͌ K[7g3z#}W(1N;09+hP5x-G?YuV,/:]t~69x^wx 9Xhbx\[t%#s4!xT-\Q%|Y+9FX^ƴMgZj Zk#&1ਨ]B+[~vj!Hb𮿋}# !P7oc#4SNL"@g"<{ygv# ]ű4lBԺ,\HV )ڢr0qsǤ,L1h]Vl9d݄ {$ 6qtC CS.G6HI޻UpTq453~- ۴s1=ϝBAmW#܈"`.֘b{QU|~yS9GAH]b 현"}D ?4{4-' 7P @SI2x RgPY:󷯵h%lj݀bX 0v*.Pq V,wDh*_:a݁cۓr<*ݫ161ʖ,şE`>L&do Pare#u!P[$Po{ַ7Z|M&Q^C~59Gg /{ cջ!/*qyjHs@}Ea+؀͢dw۔*B[okq4+"o?0!wb( 0qՀg`=ƣMu|BDTsx(:)8`1l0NR7n=nyo 찤z}ݕ)! Q뎔%̽ ~ E}X r:?Χϒ̦{El`nWaDvOmM+Y,@dmwav+?:i4Kq5Y̧6 d}qh:b@l*x&4Xxui|S=!e.<9\]Us}' Y9yW.fBY*ۀHCys)>l̩ $5AMDX]Nac!?PBFcB:?06,4C8mƺ3p\AEWLxJBTA{ {uk8ȏ'T^7. TK#؂  p7vZ|hfgG}':qd,$UPpqZ$o(PK?o:)TD[悌c/C%|5/d.&ﳬ0(˻m#nrȥN–Wj+ 5XAXύy= )%;́V", ,^lfPC)noTe3,K^k}y3w#Kc %&__~Ք3KS7(`7ũP;Oi/r~|D#M17V͓e]+[ܰT"~E6dM6̬^ KK+j}MAWdߟ4\c%B;ϱ o€yw{:ꠅ*F0g% M*mqd\Pf!kc;p᫪b,Y}F_:4ɥR,!K'N)_FK?nTaeSeG*ǙtM1%35f\VZ.V4g>U34mbyV 甖'ڟFi$eБP=~?~a;.)^<[ֺWin*(4Ep/q/.= }*4p gxPq)wH;]j |B P?&F¢TD w}V0:7Pό<%zx:=ʝc%4ReY0YVt7|?Utc{!74SRb*SJ@vV*Cd\묮cNֳyϸr~W!nfX0T2)*4_,^[T84.A jM1s+ -@<*tR퇦,ЩKHS7K 5{ګs&b@+0 .ɴ|‘ (lNk F, xŰdS[_iP|ȌmB,m32@޸gM#B%ajWۿ{AU',}.LI+rs(Øw1aQ [^Pq&68A/BmE_(UOh [UM^8>Ž 4wi%rƼg:ŞaepYx{0; -eP~:=A ham|92b]_irXp.:[y(> ^ςϠL{ c=8fH600m;p< W#{<[e&ͪDNV9w?"<E'HZ.l{¡+ QF&\]WJf)b=қcBd2;RU#]egB.jɧ9Iy;o˻ZpVqӹ e/z )w*eIT >`9uYвI`DBݴ3Ydoq>6}IB(L. N:7c8}e L8uGbW*/V5&NC!Q'V`O we%L$lwm8ϏF'(QA"o*6pܢNѾML_Z^a|tvH@]C,>k˾s}sĵ7ɑ'w2p~ (J3?x]T<-/ $MQd|`?+5@c۩MeS3.J>["鴘'E!Gk7M괙KZab.Y Q8Љ8Som̥nXFHmmGH6+* %A Zt|hʂ]fqEiޥZ&݃unfw8$@5kYo`-팡nAsϔܑX C%/~}rKFJz~x^'a70bWjρ5M 4ZQij*|}ei hFUآ$f&ӨHyZ,WD[ͩ72!WV²r&)<"V?dA̽rj`L\#=pg {QX B2.l.R% ]/ILaW3mLl_pkjj8<#Kq7N/aC9^M5ӷ`,NQ_pU-8ҀT"0^=d FEG-Ē}_΁I=@a/Ĉkr#!(K1dHN tV }b:){ <_Z cmPdOL׾UG9yfZC0Q.ӯD.GKf@@>"{w|qˡT jmHfJYWcoZ4X>@1ocɔjO;E@ =tsi*x^1ZS 3>k |!5 zę4qz "d<?VwQ\^$xAUE2w( |\{LJ"೟`+xK(j#tsCNɶ?~3<=껷K״OvuLU:8)0Z8bcWŤ†U$5E+& !:OG`R N7,EŽ1#~(w `8? ^Wg@|ⶑs Y5yw}{?H5YLl_aށ}ģiLHo%]~ F!)Ҳ%$z՛}]{pE<a߷EBf9(}i#SVFf ljɸwgݟJG|xRGPan`9ϻ-T&ܜ% Ts}aT3-g&-P`Jp]pGo_9`vdcIEY?!fcLo' CSdT#R$z0sk"NJD_NAMAҎ\?[. lPnWjVa$!5uQW4 i yr0[K"jwlsv>_k2iwH=nռ2 U/veqL-0_W%k^sbf[|{LL7u;3az,9| NvRb&|5h*pg$Q(9fH+5HmK}8 - bݴZq?(_1$qˁ0ѱk~z9;K*Yz?p.,ޓVpk$yhbSJ !$F.:M|$ՉL3Іoj]8ct-uI%d9á\r*^tCV}N2GpXJddAM }"w40V5~і6:OR/POM>=@RfGAC BhdfB;cщ5o\4tRuUh%SNE~}?.j K /Ef^'4br9A4Kڃ2 šӧ n:mɃRJ &(>Vz>&H*:0nLΡճL.&X:AIGOyԵbp@8󟟪zaZ :-4(DZ ZI(Ah7SR/DœY]T]ՅlWJB߉+a_s j*BKNBa+7Gw.n!\ILNGaP!w@[?m ۀt(1ֻ2&:iav*HK P=̀7{z(#Z.ԽO#;?AII8TndFZ6MK̛IB. CG1JsU?72~;dDveC7%lrݟ*w2s8]MMF5Q[)H#6ynT9Ñ@7hp6|ߤ$ lj4{Jr8mVq%)r9ruaNWW\K̘9z ,ow{Igm/4Ss2b9ů ղm!9^ dL\~$\/zY4NEg(L"eBPđ$!e t%6y?WC@8Qg\ra2z1P .gmuU-$\A׿9Ġ,8Oq(:97˪:nn8xo]I)*y0< E` uy L-t%xB72u3y&W a ,RCW\v*YqzB!';,wΩ(2ZM#A4R <higuS9?&= ǯ34"~v 2<.L@Xbu[5Ϭ~EQN9Fl4 fyYݺ YH\2:r2qq43@RΑU@  \Gm  i@/Jpl k U,abn!8";0';S91,1C}h0Ү~!Pؾ?.W`]V+UئdE"*d۵/uAoj{oU@؃ܲ $d[RKDHE+7shY{nyK(lz uJg3nObj$g4gUV(ͳhj&h,E46* ^u')kW3rvBt&rer?ht<"68lD& ^DP%o)zMö&[.D$A׻;_ʀ\yG6ⱍ?3FJYoDjK?!D&(M;eyl\9asv ν4`#c m )\SAWƪF}J XP{&k>2Б%f:j[:֠X)|B&gCڠӬp6+Gbrm g-!C*g%Y~_at(a󯰳Af3B5P su8IpANPnlr4쿡 @6mvY6) ;sx.[t[w~K [pFߵN]:gPYx{֯s<^XGhWjTK0@OcPd[wBZ„:G$u j89mHK:K YƐ2i)2nl?] KO.b#|:[5݊γfl9S~Du mmSr! L^?٬]D3F<2I+V'd&s6L<c+gE\V*D & ði.7-r>OF[#pL~9ֺ6áȅ%cΤOl z<K,5<-uT<`iA`F_.֑K̄FOz41ctCȃeg@wG)ZR#>RPiwAr,$c~J}R2wbr#JSĄ_.)A3Ѱ!s--tmDfSrd)/!\<i ߼!Z^2|(TyړE= `71f<ΔB/A<q}I R1߱'d49=+%;g姫H_- .GݒރhC%>2c禪8wI4\HN)p%ѲHm->C7?Ċ9˱㉡A 6RTӧ8rL܀ ~{KBn:2|N}].żZ{f~U0z9dT5$UX7t VWMf׵T]H=DK-;d{'d2È^c'#UB:=~.!gϑ$>wmP]Q8UO\X$_m([c-0> C !U+OͧYwT<8PD@o)?S"dT)J{4 ME\yS=ͩ K'fռ(%iϏٮ60 "48igrQ,M}J2{[V7a/l[V:OPlmRBU3O  {`f_Me_W6.ob NqhM.8VUv֒=|ԃP~_L]`KL4۴mMsœToΌZK<ك`kc^)ˁhG@[Dͱٶئ'd:3PnXWA$bp ϳɀX @ύk`hrKwUdJM]stv?й3xVyLI'$THs5d\n#qr+ KE*oH C.Ua\#s(ėi9zsY'`㸊(#s`Y 'hEV v(u讦M4Ա;{m+/d+ jYF13T͵bGB.e 5񐢑 y?V0_T\ 4WYZ6/YꌵEc2-kFB3Bg.J!i@Zmk(\)-|BJ/S=!kUU=Mf&Acj9?hAI~d"/.`ś^6t Q `7Zzӝ/A_z_{ysD4%%G*@m`)a bOVq <,`xRo[@W"JGI8 r!?QF1xGtorװ?TbKqɑoF̄c5uGI]D]HA6p9UpBt0G (VA9}5:~JHNzB;c,L"ؐkL#$ϳa9Ka_3m pH³&h6'&`Y|?9U9tOι_bjdc^"Sܗ5vd D5ְ\;h \+Qa*^dMRU:zSQv{(Il'׉jުrDWqc0< #:wЛEJWZqn!C+! Y$?STQW.%6MY g]pJG-yI-(4Be)H:k+>Yqr#XUGe޵5Mkq`#T#Zl !c( !+xkW S^="lW^l^&f5?cU(ZᛛoL~܌vqQ^5V+ϝd<޶lu-aywbmrb#hHP7#48 հuI?Wӱu#~ ZN㝴Bh:%PSeG~NJ_QkV 'We),O6!u>_-&K?IV"McP#u#]NmT "k4 ""BzE J? aUfU>HS9AQsiD)".{rhd=5!iU=eɈ;XnRyc*: (PT0'P?5=;OrMD%Zܪ\tj i:`ة;23 6gg'Rlϝ޸9~b8[K|Mgd 5f]"cܗ`zfȿaUrQ[j韰0٠uSز[@jb2HRY?O=Ht`B]ՆةN A:J|]BkB?Ct/~%Wcq4%G|lO) m*I騶 [;WP=Z5hq/QǓ W+Br(ѷ5s?#ϩ#}!0vI;~~'\xWtu(=jY7EI7DE*O)G >,?c Z}p Hw 9t_g =VVk\l -_DĹq\xB[ds:Jח18H-D1g,}xhy*#_جҭҋJ=fG] 4؏ze5i~ KC3z6O9g|9߆?]y\C&2}i\\eRwS!n&L0H_|5%k0TR"߆eai)+cIqa{a heb1lƿmoŰKyKA}g])#+^ffsU=e;yG^{~1+#}6=)z6_)"uO9;{ႉ%f4];6 Y)J2J`REAy5Rg) o873d91<6vϭbt_3Ob1<Jc.BՋB)H(eAu1CV=6Jʁt5U z+B؉jK+OEƮǛQ5 i0h tn0 +b _V1M#;B׍.gG̾v 2ba0-,6:1&HX$h?+Y5߆M.>:Qzc;zfm*,DW֯ <n!C툷 @by1={S|U*hV٪NH=S޶ ПǚͅSLB/Y wV Ӷ\7"z1vsҾ82̐G_ZzZ"k;W  HM"3_N[Cf9@v9L> qRnTS#De>@ɢm4GgR<ڟ K QWC3.vφ+8_ըk 8d6_6p(ROzF8u~.I٢hu0l+̓~nYBc>\쎄0z?{CĒCc!-KdxjU0A{q[ߎ:sHp/N6as%2"Z8qJʇ8xJJ$X|b4ۄzKyl*YwpP<%1]YKD(K?RJ5:yRv`~Q3J>BY;|3^8Yx>#(hcS(snGL[[_۪DEw1l^r#s +ic'G}ݻ ~-!u#jüG#sk3{y+'e9T4ix m[=z"`iu$Phw$dqUl DifY 1yGr}hUq(*+naEvL`hp&Й{|fc}ϼ5˓ؑx#R8WF>F}&x:RtL!9@.e&Ot ęh-dU\R m:j*$}hb{Ck՛٨W1eR'K+d}Ijvc#r3~PV3@j<~W<>Lmh6LֿDխR*|yra\fR1߶lICc28måtNnخ릸o %mKa oEӴg@q + f0:rtY4^5gpe'wv&TnWKH;&*(} 41 ZdžE?,f:/tBYr[53%,Y^Q WO0K]=N$ͥcuѨH^YG'FHLvQ  ATC<˜[bn߀WYl,-3nNwi:NkGOa0o+oq˸_q-Sཊ8^X]G Dį4ܰ$09o)'gi+ZQ)kL$}}&:{9yXWEo-N`(XT]n+-6ZJ#iMzUl c޾{ch]P̡LMv'g)#wa6CW~a,mӬIҶ2W c ğj Pxi5Io,JI !+l7M<*ЋهU[\G*lj},=|tΰ{IO0aK$:U$H3`;\\6m %9˹C5^ SpUP9汨E(ݶz>lq#Cԉ`aSW*5^C{󠗇-AI>y&?v=[]gQQ9N 1.4IIO*pn imtдc'v]q[CVۈpJ/L l+/?\\ZjLZTs!Idf,&K+dgKeU? i͆JܘIT܊c-#{Kк߂."q }Ox۸p^Qss\V芅\dtA[Pktq*+Ma?,OO&~q=F=F#mrmSmQRD[º-;N)JNJ$Q{$ ah6?V# oR'j\8<:!*$FM"1ʬ fI7ow%+SOrD>c:p\ڇLildxYL}U]he;<ک-sZ!|ʤ ̇*g*)慾lfc':Wwn>9+Wߡ76a~e.Hh$VO!l+$#^Jo«A9G7^tӻQqir6ʛs/XEMPQަwr 0 ?9e$Hc*@;r2"m>al;CUZ4;v!>sm9BcH8%5Pső`XbGD[W~~RN1$>D27R'އIcGW#_٘mP>aoΝb$YxX"95@>׷t'FJ P>*h%*NOVT̨ylʱ-V0K/# e>`A pHQVF!Inl|ȢBp ECBA;%ͳ=rs&G:2* i2 & ]%5"2cW)>vV (de oF\BZrV"*TwtJ͇P7DEܰeX7žZJ`%ҧOz,QZE:e?2B Hԧ~0r\Uؤig]A6.CL閚_ fxt&@Za [(HϽ\l /|_Siyl"(B[ Cbd5@gdc&BQDHwaV7r KSlC52~Wged,jGܣgщ6Dlv G&3u;6U uPT޺yY޼|enbQӅ1i鎘2[!\d*['S3>v=n\cE USsZ1@"ˈ̳6]Qs0uU2A}s%DDʓHu؜z NFY(<'~yنMR.;!i֕.Tx֑vW\$FtO@1c-du}IEτss(,mҍ~ 5R*!;+_|db\UH5kxzlې[8vjVֺǭ"7C3 ƒpY85%}Ռg|'e|Xa)tЉd -0tj )1]ku}Òx )HD~U (t#95G hgj'YIaVf28PۭגoL{B&} XUfuKp- ?m{^$0k.R*nTC|L= EK.CiiĶ4V0(Q8/ es(pހVe-$ a3OX:X™}0(=dx-PBS0+2HObtX|1+$D- Qiith&u)TbQ ّ;,ogEQvb);LaxM-ڑCO]eRw5aWDi1(5<>9{VW&Ds=K!S6Q"_R0ewQxSQ&lWr4 #N%A(}Sxj8-|W‚'ۧ,M&f%m[,C[zb4wWbRҰA;pJ_|h8ҨcJυz7P'Oa >?R9R?@ \"PcT>dKSs+'*\ d kJ (->z{>F"&”iK|-POQ/]E.4,=z4;!ٱpY|jQE xIK #Wnj.K1<}w޴rnsί2G36vmM!1 XpK6rf?;h0D4)`߹ iɠuOdRxx5;" cx٣=Y L }׉#A_fdzKB1 0W܅gy+2X?c5ˇOi3}CYB~Mt,vvmQm?ȃՊ z½>ZdDa9-F{lYOtjuX 1/AhlH/ebS]o>1_dLh"ECWHO9ڥ]dcIcF)/A}v6esz7'=4K8c%/Δ5Nzoe]tb teR(G'>Sp̕euQphJ ر|1_87eKo'~ZO0 ``*t5~Z8׌7>}k"n ^*@ˎMaEl^9 ~ ©( 1ŘGoDltCh@ ~EpS%g^:*h"=7 o];}poG0̎Q8Pa)ce'_i(ԻvJw?E@8 eb]LJ`paUO}Hpg!U\gɑp¢ю'D('yg2 ٪&ã˸]"2YbZA凚><%n ON$@̎p )n WS=+9\}xꘒ|qǦ'D) +qsPHnF6~j`NixЎE2jV$QغQNn<mDmH) ] #{E6>Ĺ t$z_iݕ5^mm$T@hr'ʵ^M%L YnC{0ZH`ۿ0;"d^<-O2wXmG}/'h25g^}P +57]kLVB-ܦXEkQYe'dzYO<7zczP5^)h5Z/ k1þ;==nٿTo344Ɯ`8.nh$[9Rt x^g OL+x `#v}Mm<ӻ(j-R}:~SY0X 3>@KAGCJQqQi~ |-IZ/QJZwP%'cl)n:"G6 BZrVZ%,!ѡE 8Tem2e=ќ l;m ʾ!VC,/*E{0b@]"-[2|p*x%7:jzg}(c]Te[b 9 W7oH^ԔvqPTwfDXDZ>l@]XXST~n=nqO܁ZZ& })&c!}IuJHgj\DyZLj(ԏJ`ZYz!w)QQt|cA!`;)h{BR; ͫvߪ*zQ^\^&7B𒎏hʞmֳ~ly߇Pcsb ,K?nY4;q&GŽ@GV/ώX;uiӜy c/ͧ@ ?A׆#F1ĜO}M|Q5t {BG͝LtZ2{!rԏ-_VCNJRtM!D3aYOW"O= lU!n:I]n" *:l&$PeS7ҬfxQn0Ws S"Э+2hPֈڌrA@GaquT-./(9ǽ34O$m:MCQ&VbM@,4ب d&iVNX`Ί,X-Ѱre(lrI!?33U`Xbe8 OӞ=^MIͶ0ŀ!´T,Eaޘ 8Ŗ#]٥ "#RQo]J/*/q xqp8T^'1ZA: > K([Jm{1aP(/]tX$I΋ǸmH(HHⵅx1\_+⾏EA,0+1b *q4N,{"fvI(ٯL`c) =Ys4|P? S6W>FgS9C58 1Nw. ^&rdiBY|QW;;}3uH)R␜~$QBE7 (hCho,$]SBg˜auU>ꨲJb9pX';r8{E^dJG0=wO^KԌ -UUqϼk!Mp{6^\9oX>I,tE4 sџ{dI@`?JJ`O͝z ?A|)u* ~@P1x<Oۓ:XqZ!|2z֣8 I6Xqʴ}wF9s?'<">':C|Q ,)e- ;,;V%e,XMjW9 N-dqb8)XxSX e^rd&gQL#Ah{XEVʸ|JjJIaxf/?ʹ3C LC] WUMW?cV1bAղ~+}6UPG7̭W͛U)Y3YxsڝB-_Pfmн.5Cvpct%[߃]N8(>pBB B(H>9h Af1 -Cܚ/Ӈg/- 9h2zlƸ2DN炑ܠ[˜ׂk\{Slςq7XȷUÀ> o.NX!g-y^Ȉ'.J@KOY^e~~l٤:pfkkT|Q_) k:_YeAtBS_t@$ڨJ Ӓ+FN<1g*}b SƢ?ʱ V]iQTμ2ﳪ@M#u ŭ0޲ἠ_~eN0+߶Y9tq@jMREhù?`y5uQhK\NY7'^%T b!@M@W7e I+w@ƯS<9y X1<S^N/LrDxTFq)FXم9goYbH0nf۾>IX+X5H9h:x+\^t`>7n<^C^!5T/Ix|m>ݪ1].[G"LFg~ݹ53C'P EȲV\̎Blnί%];[u=~o\":^!/*m+w0QבYEμ@F]EytWПHO(t˚M)l+9XO>#{ҢG/~|sI҈ X%;gmODygFT'\%i. n.O/5އ:hKp~ԱUYϖ_ړ 'F[4$O ?[w;20ĠD:.ૈ;Kn׳24Z?EMME,l{gΪ$ 5Ӧ δswsEB _t K6 [aGJQ $¼:)k͹/VW5+Dܐ?yXo(07ZڨkdAM篶UioW#jFޞpB:'&:SlDP|^>8ɧue F5#1 G\S??9I({_P6hKDKY-l\!E$FC7i#セuF38N;3Ӂ8TjDTPIL?3*^?D}%m;u@f.P\x"iHzi*;mV4>V$o{ D,"<ͱˆ-x!!Mq3ݘv s6hpH^'͒/Y:y>j@gҌ}ńU%r|`x;3Y$?>`kH"\=+NsAx$u{,Ue3c"nOZsijNmV̌2ℼU1ӎ(7@Ng^"-!`i+:r>;&K*, ؟~+2d3[Aot5 ajfG^/@b'm)73=j/Bٲ#ԥ࿅D~t7 OKa0'ʈC/¥ݴY?h+NJMgk)<CjwM/ʠ0Ύ?%3Nbb&lXZ\;-dRǪj bftT<=܅zz $ݍy{z? 5~\ biѶ=̪yk Ct{jZuRM 2&j=[)O"č8PMR͘Iu@;&S6O"p; ýLuذQbٟ_<5{޳_Fb K?k1^l/*Y;!x[cp[-:7xTGv Oϲf{@CH,i/g s̘<-]$0zyFRFY+Yٷ^3j.1*! F%c`pGn7yqId=1N+O [tI[fL6&<@ʍ&<" EsCQEiv Gu5$d\UnT'[)_ 5tGXw>6U8PAo Xɫ0DXC\͟=&ؘf!"5(ؾ#bwT5T};uR 4>ĵIꓦdi`/wԊX@M#kRv%,#OcUB=Hv vWD$3XxW.?>UPd./ȯ]gg#BI5'au Uok\S^Rx r}*y |rTFZ/hXNo 5-&T`nibkUxuw7H94w!aM] R7}pVڦ#07jk7K}ޒ͜H4l#xIOYlNLJ'5z`5C}(23n%|a\Иӊr3n ޒIO.d&t ]17ȼć(gaSXx|1JⓌrsVWf[.Efc8?!=M6 I=,J~m`c *7IZlB,}3h3 O#{rZ~c ]~V7ጪ]a5@^ǹ_Jp}ًfB;׳#Etifܔf,Z(<RCW8){SpՓm{lu]3JέQKibNǿA~v qk|þoime_Cn6JW?@sChw"R7fpE_ XWn~'& VIxW:0/uOkW6"V{Inc/P K޾a`' ^GB>r$M=s솱~{Kh;y"f.~zd`'.&+DȶgM142Tx w iiFq9 Gsx02l}$7-onc4:vYٽQdLx=Z)g4F `Ǻ6Xt?qRxjE8P :Юq&}/}vNj6^=טm{ZD5،+ L'Z3'9g[g.[jYlOPC@5N-B&XF6ARcꭢAċ֍o: h$UJ-dܔKr3z5"i]tegI1{- >dKS tRPj~UQ]luսOXNJ5P~fJ}rV yLOIPH2 4-dݽ_k!0lb*t=@'r=4۔3 hk|2]U7WҐk]vDb_\=W((&?g׬(]XI7sc3Z+|.UMG48!H/yȤ MM@'E(=_9y@ԒZ[I1lujs;#hǞ۫%cSt\![sٚ~%HpcUDRylPbqޯfPЖ.Qq^PbX &b m%^E6w!ᶤ'=N0)oz&alӤlsXU ~nעK@FNPZ}0u o7T̠= %w[G4QH+ vg8bʔOq? ͢1GT2WAt՞{ov;qx@-P;mG}s܊RtYț?/S&hWp ՠ ɒ<eGp +K; pcʁ HpliTa(QEh6{Q5T8teAp&zB w~T}ePX|!ͲTCf<YsGu2JjYen _4hCCv+8a\C׈~o^2SZUfՌB <3b;e;z;n0b!:V˚cJe-#/HSQ/t%d%uв.{o"5ڔ_`l$aTZ-eqB h/=i(:d8T_g>.*Wo 炠f $FFNi%J8O8#)¹Y8 [k:l2.g<炷a LrA_(ogQdI&5Xt$.$fY9XΤ>8ENQ8 9^\TLo\,% %ZeJDZCTF 4+nFKy޴K +I+c٘ǀб[7ӓs(`JIb TJZ~RΘ,_'"r, ثבd袳Fe]tIy k$|MHbRW;3KDNMv{5v7YNY RexO8R\F[Z.s1dQ56 XJn Hߴ-_n l 2!W0gX,ڼy0.!8 ChQyT^7KӜ3f<;8^ˡح8i@eTZ=A%߇N:gܘi7Rpk^] \5foF}@vWA䚼;pL3#ˇ~\_˲U&|bg$&\O7ִ݃()XεƏ}6.!d9&&CIS~ә=.NtidjAAh$0ʇ' /w}?H9YH,!S&)>+6zKGtrL~KNyi4H3zW$? N>t*!؟>4?Mc#lNNMa7gX]ݔBaUcc!y[W3čR@/6aQ22Y,K\}5zQz3K3 D/In4Њw]9_RqԒ{Wq}0m,AZunGa WNLRb%#nX,)\` GFd@Yq!xŸpB4" '.( )#JЂ{c ]'M;^;a|P/D+:/-|!uVusTx*tFOƵLLƵJV/d։AD.6{Ew(f Ԃ—rHuˀ@m wr8oi~O[b]19zkb6N 6y^ SJH[w ڎWҮd`BI` 9ɤ.1&BLl"<[XyK J-EvVm2AbXe0k+~nFxORW=pbKxP>! W)4V1\>GT,v]}B 3t\9V/!G%Gﯦux}Xr\I$1/=rO~c Hw+B]b3Gtn\\Zl]mkw7ԪT6%q6A)n{pIJalN~ƒcŬ|qS>[_?& ;V۞Dd SqS4Jb[]ڕ Z"Y$,,ySWv?R7vbfꠁjM| &'eR7]lK+u\lX074mѫu fùc֔g8 g]t\T MkR3k`4~0glk"*Mu$zH)HpXܵh]L'%4' 5XX2QO K"-I$GDg6W%OیFN Zk@ӵ "``@|@Ac#xq$cG1?EU!\,Dm20b2v 0O\oLµ&/ޘtڮp4-p " (!;Pdڈ|r乙E^AWEkHT&.0{QSTcB/Pۇ (1oLbD'TA*=XCWj-[VYhG C[m|'maRCAb:UYh e+,¶ =4ХD@em[c:[`,X٨|\?@xB^tLTe3LshяtO6E*I^`ֺ9qT\nmfy?qRA\>'n3-9X>:ej/{ђvtCTzc^ fRńLF*KM.EH l4h^҈'詉WFh稌8ceLjh/*EFPn Co5pI d$v!s惲)9jaJd l $m.~TO+*d N7)l6n |םVОPuML ~ $.P!Tʍ)`qu 2,IআeF8M<ԍxʶقChؗt(ߺ}cߡ%ZZnwڪH8+eij Z:[q0c`Sr:n>ņVHl@1gC}V!;22GzӬ?r#S ao蒐.=>.PMZnE!z#cNșY2OHq:xsxrK"8+?,֙:$kgam'؎Đn<rB [\qn"q$yvN8pa/H,jaۆ ɣLkU_&2ЕęX81M^e6lXϾ.,8`I6jqrjyvnk݃VONZ3ԼO͗#ȝ9-XVaӵۄy\MX]~cq&1"0]q4Μ~r{dQQ5͝d{o?<|y֓%z۽~Y9)Cu:K^ S<"7`s#ʽpؒ{~~UDqhGLM%; @N*,Ix nYaU 5] 2QrAnF_EblXƆ&@{ScpxQ8;R ̮{t+uS/1^OzFsl`w[uxެMΑm2C W~;}Mw|B=^&}>*V-hZr%o/ uO3T,V:]QfF!WFZݑ"e8L`UJ16ȒԒ<| 9X& ٣ q{Oa{mvu[BA>)[]fL{p&̉a#MY̘fN8p-In4/2W&{л;|s[]m+߶FMyW}{$;S Z4\#gt-O"0 m\:Bo(QFuMOq Hs&XG=C]_aJ69[~nJ"pLֻL(ʃ>IBLPv.55TVБ H;i|}H/Fe6r u%:jZ C`=IFGa#).7P/uhkiGm@bXQ'/\*Kc Tۓqe^ZXW 摇BU'K.F %(+zij+/ 1[;xZFE^<pC_Oz&>5 ecР(HGV]b/=,x-C몵Ҥ |߼}@ުr^EДP/x:?P-Z9:!p З ژE߶ "z7@1#euDaby`=o)e*Zʌ)3*MN#f֨F"PjgrZ)P>> +Pf6oixgv-V8넭sMRK䬞nE=`VFj&RmH=x60DR< Njɞ $NOԒGVy }x k8/-;:ռK!-V+QvH$q3;qU:uUj7pbRBҟã̖Z.KYq~MG,?8ցbR ۺ3kc.;~Nvƪ|POrzPg.k` -~e<ҡ*#aBeK 0*-DJAlW1WM! @dm&}Phn8gNQ핋*YRPKIр q/49K`{7"‰BsKx$%/iJZzf$"ftːޱr.?nOb*+sģ)I)w)3B ƀ G 2!t1$T)#6Dzx/ ܟPRY?X vhE6"R9cS -Q("N;|$rB̵Kjsʨ.$>ɲMiǼlmJuQFlCtOϿBiTklz燁0M^x)tYBOoŸlPuO:s27(P$&%N}?UvTrq"R/:*1ևܽEG{8&cH>py"[JF nBH RT TLTB s~mVZ+v4jvn/I^^!ͩ=U{pyӥYɚ(評CL$rTJ4HNzo7b .gT52Rn=`DuRyְ&fDّ:z̝֨o J⥿ޯ(.1#g/!ǡpSM0K 1ʩ3S8hy!;8"-8z+=g[C ,Տ0öΊr+Lm _E5.&nAhQ>|Tl$ ޺fw=8Q];!$;2_W̄R ,0(B|]SN>aF|ZEhp(?bՋ^C҉K z8`Rv`oaKs TifHsVʄ[V7Hx Sdʃ\MѼYS7Ä0:fցw=T +bS7G6|N3`9]&? k 3%5 HkgDew?%ԺC%F?Du-0b͟#ܡ2Bbs hE,>gw=*1 \T}FlÚ,wE!Pa)TiJ. ԋPXT:AdnwEwa />s*<9f`/Jch7ϝ:򴗮dNrX̠fGex!K7(Q2쑵 5 Qlm&>IZNL+YID$kQ!={t0?ȣ|VCɦ4 'N/E Ib# E㞘}M F|}z:@c. NaM9M`8&+`?Jq:HSnMٔڧ3q_kAkz3@aW£fvKBi{3Tk/C, ߈t3wc춍*!⫠_X1oы59AJ=zP+V]0a*]A̤S+ȇ?|$C\R:bn>ԻwXԓ2rU1LvTGuuv_BȎ'٥@{i=;sAa2O.2EFL;m6o6 z+!bȍDDDNX0KaDFBqLG3;LD2)4MT(p f'JЎN·KLBL{ w`7Z:q=]dWiwZ$8]|\5:u\/` Rk1E!؞ScgE`CZ(g] U~e;HX3ߠBe&mhJdBzXxWh}H# Fd1Iqxr.ZTy53u+\Fr3I"55-{[0fb_3y+BKpgI4ޯ7p?qn mxK1^L 6Itg8eI";|l ,fiO}S^O~4N\@wT'i qe`=y6mɊǁTޛ.xR'!]Н5_eC&g8i~-q1E<ޤ~Upv]@bm3,Id%i!,\HlDuގj؂<%PzBA8;M!5|dUB/ZФzow̽ZzH aF27QbJ|M}x1z!6zoSp6FG}"F0Ĥ7}XBۢɊ`iE?)~S[tMJ.Iy/`=[AQ{ (%4?F %+,u.+{&^5ɆEcɸ ?d QKQTij  `+oMcVG+nkc4'!z*f8TM|"qҽHé:۔Kv&ح2/K G!678 ]Ǔդ2 \a:t 4=4K AA/5iS&jGkI? yֱiRG)sWY}0ؔ ߻yJ噾{K|2C4_)]m,^M|O\5M#{^~Bp*ϼ.5c~p|X<u[<SؗAL'37Y**06|J3y]}0+R%C]aC 2 ]u_ 6EB.s<3DՂOWj^b73!tU\:?ߎ'kҝ!`'@nRqZ)kMS҇efŒ /HTyZ --)֪(VwPܛvJ9N[l;kF+} ȅK(UNY/ MkqxYH((3;3y)$Ҍ؜jxgHڶ/ qG3X1ݩ/-w3wUX<{ڑ?T 5)}\ҤRTxec>hx 7*sv:g bi88xbf=>?'B+K(#*]nNSoTfǮUq;5 OE+"i\rČPP캿hC'a.={٧65' +% jc8pɣyCfxQ`pƼрcLF1CIa]mcgFbM]?{1U4ve^e1Hzd<?i>T+S:ZNUGpDP.6qqb4ӏYJ,u@_| v,кP!N%݂ҫou8~RY,Ԍ35M)c֓)<] G@ =|Z'z [Vh Ǒ@[TswU4j815B2d 6 W/ Cc>a>۱ Q/-R&0عHo:Ksմj4)峵(wl(STB NMnm5/V!Ȋj0>WrX#@ VYԇ̵ƫwcE ,BX:;acqW-tOׇ{St4qwu5 ;à cZR5v"LqIF }f1xy̝}gxc^Եf<`W%:ALfLԟ7$} 풨(woNB@)̻\$&oȲ=1':qHL{<Ġ6#Lj^(KY9'\>E@Tȵ;izkPFg3W!C-{5Ѡl. զ ,ƑyJzRMb*dl!IQ妥s&ff~XKMJɴWR:KL,YDj`nvr+{]w(iA;&Ix0W>L`\jY6ۊCB^7tӸ,^(\EC7)W!S?JrY yWVX" ZML M \=?CEW+gS Jo(!a(ej040[ N/{2~K#SZ#ɷz=|3+49, Hoa6Y,:BK^3 !Wl#}o.kFĬ-s8yAWf'D f v Ԅc0s] WK5oN~לs`eB8%Er-`Ϥ%ppLWe2^f8 55\lw[!e67 %=|'~olBbS^hl}Em.o ?wA`+k;7YǺ=TҔ)_4%DSZ:߷*]UpeTǼ0G>GY*.Ʀ%N!%s\aFZ̭e"Nk檒?G{Ի:1C@PBJ4۳uGAJ\9".3o̤\,4ۣlOxLē+>*eQ bӽW67HذNBn5G.9Ն]a+iSC!JGloE#Hj&]\)/d9÷g*"Q5#U ?8Rlmp xݭ{A/W'mIMqcsȍIYyxw^7;\X2{!8r[w?v}UmH810&zhmfy^ [F!-؁{o'gGC > UN_&>q"d7N޿LGHͰxr5}h಼dh=Yցof>zsQ.tܞ059lb1쒇pQ~>`W&̹^">|Hb⥫3m״,r|㠪Li'J=$ >@m+b_~ט`W?2}!}3߲˖T$HذWhNI=vόv;CVFbGd$iĠm8Cbϣ>ߎY5f n*OaVΠ#Rt\9} pN:pn@ʪ9Sg*h(H,R~qV˴ȄZƒPf}{]-xҫqOT"ixtp}vHtY)J"wAmwET1tk3MasSctI7!W{K{70">j *ǜ£pϰ, :t"MޣǽdH8<"8 ?dkȗ31c˶{W$Lå5O長8"B)+VTDg.)YutfRK9-m#D|R0viyXoq@rm7Ң\7,LڦO!|H Y}!S B@9*5F-p\{ :>m 9&p{X1Ɏ5=S8 "M vΑP 3%N%$(%)d!H>#7W.6v`E*cdY,wpܱ n:pqmޠGaէB)W+B?z|-TE `FMCSuV?^y˳lFC DKhpFJ48Qfa ϧLzUcJRs"$%,oRCe UKHX{Ё)ר$'񟣼IԋL;5M# 6 xzc|oBYN[z/Ht\)3eUU[f{,BknJ>|򻤨> ctX5RZq !5J5<¾L5TO `M@*9 h%#vhi۠Ka=OdcV&1atA|`-ͬjGJa>16xV Lb_oZ:o[ "vľ$9^ruoX̱Jٿ{3ĩ8.*DJ88swE =T8;g&h:GJ;l]7g+xG ;Tɩd<{ vȺ%y'e:*r.-,aRB_(+x^{ +si.|J N7aJjE+͗Lu@8Ce>^ʺ9xs%dL 5@bHqPp*wO!"􏸄;>5ԘUlλ+؊x_I)=|1{&sҮ4R@V QLܤ֛?"jӱ2=/ {Aq5.NI1.J|m  t1GnANYЁ=K1*}Q`\$d}" tk =^zOfLlEbRZ8[ڤ Tݥfߗu<п1wIq൹Y-9Zzt瞝eG՚LXC qbGKos9Y5cOf L跞/Fj{d^"]@InM{ȄW ӗ?*zq$Qeb4/!nL4_\m6̥Md 9OZaA)Zq]Ԓ0]?B~k_TePEj%>cBγe@NBhV;SvЊ; _} %/p8kޗIYåF@o[1jtsiA?)*hqBnZ&]CĦo~]cQZ&>"u*/SlnZMǷ{ձ"tp SM"|UDLʭ.Kq@KȁvMT9 28*CY%5*.7TqZ6+`YJ O_onTz`yK&I;F^3&.*TQ`S9ޚ^$ 83?qbC|C݁%kё'2{ZC7P%iqgјVx?`7 vul;u?/殦>On=iAN{!faJ^f/\?SYTEӈ|eizӧ嘇ߊecdm>/xc'eɤۦ wr(S:hrݍ#. -p&vn l|)IWc[)oy?gmӝ,nm|f-g>H"]:G>n`HS Ly0>o I}&]~5<YA`I*w!d,TÖzj\  D%qëD'{!D֢VbL(Bǒ(g!12Sa~ &;7M/KL UbMe6*FM/)?\̡ᑓ@M':`O(rC>q25bˊbyOuN?@^>>TɑU%Axd)u*ɱSah`j= g&OA&2좴ke,ŖA O +bQ`X 温2, :_ĉg+{鮅& ~򉈮8,G}1GxׁuLPe Kr !rd1MGv#j<3g,g$ S? B߸i\uoз1 _W\aHPX3Һ>.GpQ$_},7T.sKƒ f{ ",~*-*&xЫ>m3<b+PuK8)6Iv2»]=U,FpqQc-ﬡ J9tiP?n]遼UTYNhe{G%)o{յqmM 9A[90bT]5qe}FO$ztZ@FOf2KV]ҊŦDټy&j^9W1rj+U پONmK='Bʶ "&u n5FZԋ!Y:{eJ~^#ָK?4H$?ڏf}BXo}d>Hz5uOx#i \gRB쯘LX._PQ=VT`*%eB8t]#m'~S7^n'{!5nmNz S 5|<EŨ=-c;CVLz0j rߥHqѮ".rmAmN: dmbׂbMTin -vb&AR([jȢM?` !SސK$nJq&(Ņ3['UCf9sT{9f>MtC>kDg_:P #~z3c x-ln(; fJC6!_+{]p]d,@eA4^d:"i\Gns^v]6ҽ*氍 (>zZo'pmaБzջZLLbt0n5qp>@wiPT.BF.Q-o+J^S>v@Z 0)LO蝲~f˝gxYj PLt_)dp\ȸúcYWtf +mP-Ny'* 7ASXqsn⢢@I8nTӉ *@BD>4 9]ރ2Lj2A$D$Vʱ6Ш_GxqaZhկbY\lo'fo-n'5a'깍 tYpc*}5q5>ٚr&3Ab?PLz뺢ͲZٟgؠBJwsMɛ]|uB;=gvߧ=cʃJtmA_Los{d}`g1%] 5Yj1R[ZXCG<MI&}c7ә ,%eR&\;pAy>>O6:#2$6} 0_\#q !W̡GP3mVwQ|8^&\z-bDBs(P.̠ж= 0*Hsq`>R R\C8pkUڨ|\.֕IApI.b?MYb%3xm<'jlUC 3v|զީu>WjR= BŀHw+u|h韲Ⱦ-Qb?E2{VAzN&dzإ*W^%g_(Y6^}4,|wx\ |^"@YPU(L~it~zcqDlvk@W F Q<νA&RVK  ƲҖ[e?#J(,F1 Nb|Kl>6&||`hjJ+8enC=R'},LI*RZZoT ;zd}&6Ze8Ga!'׹3lBIJ6[Mƙ J(0X% r a6ߘm5VY9s )*3D஺jDSt) k7}0Z5ycBE Ϲ9Ћ'BCE:lp 4( U#g;3r1-magQJXtw/Vggh]+Q1w `>ױWMRDFcY0u:-7RF,AT):Vr5H<3jqEeL'Xie8K '2xw.~GI%ޯGvE:X=CX'b+1J누×Nh?Y߂n9]sptB)f-}GR_`d7*xdPvyl@*{|'|Y#/+23mv `h:p` 98qQpΟ]`{}`Z4ruoG< 9ߺXtlutFH3pGDŽF*%|77Hm(T 6V?7M , ]sשۛo1]1= ˀt0wZa&>3҉M~Zh8aL^?;X.)w؛` nbi5OݱO!xC5UX/N&ب1RfVXuAo%K#,8 n~̺/oV>Ez M7^q~UFv<}Tc#h:Dp meߩ-/R};^U]3L PtN}Ȳ@+ެ%bدP<9 `+H_} ^ 7?7^\=snyyI|5m₲U/@+Xgv&f /wOӡc- @}qΘ4374OT}+'ǃ/i?pVIPnI~Zje'"<bK._w'AЦhG eҧyf/KVy72ĪiWGңxdZ P<024ľ]chb1fsCNmGKU!,T3> 1)Vw,bK'*1"V-)Yߩ(=U6 u^x*FGW|tyzfSqr6)w맄q,aUM2Glz%7yn[8@q]O!SB{ ,f?Cmi7᡿#Y9LAyP3mLF~6gէvkHQp0+W'0;6~śQ72MkQ‘]%Eeg\!@8Pe3kAhw 0a|'Y^PV-Dh.[ :IGbH2~TNtnv#5[xU.̵4g0`ɲ̹,x\H >9p\0 .{ ["i6}[!N/GֹMQfZNIUrĠ:;#4ٸ#וʃ8f'&yuh!Kwk2qX_EªGw$Jv4 )cܼ'#,)_ga -zy89p65e8ޏw[2dp:%k@@ =sDlE;EQ3p]]Pbhy^AuA]XqL7h_?yoEal-7`w̟0sx%`3+"n_%FFP<&}(_RIӳyDZrl~C#+'`d:JN/RD8zmfӈ.fǂu'vKBUX#HLnQeYJ>ςv:`¬r!ÈBpFoj֭Ghhm 8H5~뇵-|y99`4uU1iDP@AJTZ원 !b/}u;tBcI{[Q'';Á3!/5-o2Eܚ-@NgYi7 ]Mtch z?.9> e ӊ68C3GXո-RAMfB=ID?m8uH)Jc/lxޚrSɣ~Q@~@,CQ]<1QЬxU-ei^>9Sx(574[aԼYAD PX=O[+^DRoΑ(%/|ɮbw)$ЄfwBobSml&DhV?|-D,-g:1cEy0`寚l߈P=  e9К"M;jKk@=2,FHR䏰zE1H~ғT؛ڨzA^ʝ$3|E.OU,AD>LO0 N $eP eO{))Nb#vC"~;OJU4 I "uk8ա/1 pR(PĒ68H֝n^u+"<,pVʃh3gQٲuP2 d^7PY˛ҷ S P}#19v9OoWCXވŽoF򁧬Cl''p'6Q@L& TZ~j ,D[%\j{Rj t mf U48fꦟrLO,)8 5Gx`D( k (D}j-zZrz͌p3.N/HNzǯ8 K=h.?G'*}7FSF{ABĶ I{l},4DRg $VD{TDѩmapgr;d9fSEHĻ2Stye e`ʕGpM01;k[A2>Eduz÷UzΎ߼bNUѯ@$n@Hr{2Gh')>MXbsCg6`ii%]n/*xW~s3_/et8/+KEsH:w^0 !jyKX3~i(_ة=wQ'Tt izJA+ =S5M+L s+4-$;V=fiź0"_#ՄYL3 @ֻ9NwUb9^K N SsQh{}oIө+5L-޹:l Wj1r|uS2X!z80#cT' ܷ% #oS梸T"Qe YK>!MY ݨ;1*ab>D :`֔CòWI6s|, hIޘ %{9 3 }S-jK|xųRkyAN'[ ]у̢^6D72P5iwOZ~~Yaxׄ6]÷U~9كI$k{aLh!Ec/o6]8@V|`05Խ,dK^*v&z1 xhΙg_/X,Ri %]-^aaAE %1b6S T#~%t[V5OG !}LkMMWg\iw0IKt1 KlLru/*-r7Bp]'l4!%8ռH_%`%.SVs-}uaQ'eW|:4>B]л3;by \Surx @mg&C. ^!JY*;ҧT5y"hǀ&U_FD 7NJ!6\=v]^)JM(}R^%ky(o:?T#!>{,XkO7 F"d)V߃IZ̶?g^ؐ cݴa^bgJ1& 켒RfސM F: &u̾2;t/ly#̷!b83Ce24ѰܳݔO6c]gDJy㳫+r8zcg{ J(k;8ֶ4"+[W \>`YQ|}26 x;4fR{>; zt;Jv{G4[_]__hCMZE]=}{}N+'QC0Ô@FCŔCQT(VG'&C(Vq{n1 U6').HW(3ɐG]' ZxPĵtoopÒ{/ķ7~/Х LȊYDicm`UdN%- ύ>%_h_rB|nY'⓯R/q"kM[?̽E1G9ࣧ1}Roqo=Y4h2Ѓ#KRF#0_+6A:g+*PVal?!d*EzXaTu*1 :vJ8-9)Uf.OO3-oLy7"R;aW)J&~LaIߏ'ceYKDdSBHKǐn{KA|@YUk/$:u~0`Lj11݅јV1]j܋~.sx!ၡ)o$ iy\D\q3J'A{=`r7kK~@(kbNo7A7G!8[N}<o[eS3;']:o9!H\QLWvnݧXo  Z4׆{>j?kEO4\{5d.YMB_gW7~7Χb@]1ۘ~Щc`S+?;5"cIcLqQNT:>~KZ:{ Fr'6. 4<ڳ`@ŀ3~9|5XybF4`We^Ubo @%:NYӉ ^\` ƿi jJL|*{Ф|{3(po\grv,VQ pʮ;wvW7`Q fl[эҵ+g$ѭ,B3X[Bzu++Gsd;J5&I`(x7"F +SҍY,ޓ k" [bÙx|/^g :uzR _8хXaiITʣϘX!cQd> F6\5d<$F9^ ӻeDۼFsfdR5sL(a&Wz!:fa.xB?搆SonvpHIfCD0U]iC|chgFRժ$S0iĥ\S#mư;`Uw -xoM vp )zށє<9Acϳs :_ o&{gI>vhmӉV Y}iz]@:z&XX 9 2m{n!3 Xt8AB۷=D'G@s.@QLE25\"E, P=W'DÃxki$IfO>}]wuY m.m"Y[ C,V;e5i;Zk,tstl@B',+s#>*Y1x:4ㆌRz"$y[_`1tyk5]8V3N$cuRD!!6=t[CxeJύ#s)F:/|@ˋ|%E4,nj/ o*Vz'YҹݜWt}4C_UW՘I  dʐN' "Iz췼GO=bۯh^[Ҳ 2|33 FDNу0Fal?6Mq1eďU*vXV56ҢT)c̻0)twzbz4t;a#MXe +{ѺE5 n2g{P1^wז,]JS6gEa]w2o%%p~ǎ JJzkXo(4ll^Ԍ0p8klҬe~֜%Yn!bժJA.e|N qSg|Q%*p7 ި 4ۂz ReMU;_{7 '4cM1\}& >4nGSHssaʁ2k.Ck쁊ޤ%*0%9*qM%I[ax5qш"d)\q5OFc<?>ogJ@DV?S4%>p3lz`iS4)b[IQdxVOA`җԨ|?H'tVc RnEF:yjHURT!S\#ÏZ DO=Ǜŷhժ1hʛ&Ex pٟJp2vkS=}OVM A49[T|ۋ2BÝ AEr|_Ut|$(`Ku:'BS @rt9!H[{>Wb_S,؎kFV0iHA4rQ*< r><]I!Ew/ |D !h.A&p)Jg#ńIJszVPVs[ X⻬l8EÖ80ÿ;ԮV${AyC.3 ledŧCpYR"Bl]h;A/qW8SN3' ~[u7(WV d؉[j,(<^ix;a.Euj:Q_YeӂSjƮDdIT}gO<2I]u|'B/0Ak|ْ:GǢ%Cd\DߧV/ $j!-<6;ө@#TQmfoQ0[v4nVP)웸zIt_Q+iZ!\?cSܮ0K"56qdcNt{ ; уh'TД5 E[0]Z\'3tS~Y8 &.y$YXY3'<8Ox<< R JqK8,L{OO웭1s9Cݏr gH ;EkA>RۋU[58i\=EІ#T4H<9u~vڤP3GDJiL1WpA8eN >3$LG7X$?qW3S4,pWO'fHuX;1xDXnUJ}GRdJ,ypL%jꞭ{w )XZw9ȁV@]t bF4 B#i6yAcY֓=fY GgI ³'-صRnNFbL%r35Ӣaݺh|M'G]Ûx!y$YL{dGa݁'Z|pV ҸфAorH?ȦizBũc`o~\.[['ixcN2˟@/,}*ﴮ"FNSq"z1A2ŷ?V{;urr5RC -{m hNByl.:e$t*L;?,8=G`6ƼiT"/?F9cu^ê273r\AAaGs6>`ԻF"UxsdOM;'V?x6(5_$DYU/NUbaSHjR椱{Z㵺a!R47V,Ud=d" vboS849CD;~C%uLc>J3^W1ZL#Ed*R03 tU? Z-?x-ei;xx;]3U;XX L!CO8 I< v8 2L?=\,VeڛAs{wr>MُOc\aIRV9U n-Aa]}xŝbU_/[OQ7߉c~j\׫naxGgZQh(TDip q֎vin$ֈ @P5=|En$Y\G/NVԇFxEuLq'p5 Da!xֽ hbԶuogۢRV݈ Å~F%{脠಑e.ó4"دשSK6rLAI'*nDIJuIn Q:>i*5~'2݋,<dk& 4QSR/HZf@Mܡoc5˛ҞSRY t4nm[f66U\<>Fw96J&6 *Hufb`Уc"EN&QbE*} ܁s6mIf$ =Bp?Pκ9R݈LLHyt[ܩxm6>LtYPt/e !@@g{qQy ^.0;zsa~ֆ Qzo^%r3}dIqf$I&Fj?C̱ proȢ=zlT=xKŶvl b3a8d."ْD@V$"1J*עHiYgA&oaa1Fa]ھ{}/deǽ7YiB3+xK6>KQd<ΦƊQjД*6~#[PyA0}-Bo #!0.*.ڂ Hpd{*;U:oԊ!5W6`{-oلO~~t$O|EaOWğF*^9fc$m3]SU,gD/~lР 8Q&޻6Y4mrbJ[t*Z2z׮x8*:7Gs* w&IαF@Vq,\5iYl¢ǒ!KsyF(4} p~Ml3͚Cq%e Sޤy~ ܀U3<ѐƴ(K^[hAR~ lshĬأ-AF|/WQ‹uMBvX@B&e :j>GFH6UY5ZMeMnnX<ߛJL"dS8\HgM*M;Z/}t9(HuW[w~+_q _p:r]tka=o.$:I/F`21>Dʁ$N~wUS~,TS5v$ IϐфM(&HZM~3m1n:ġLO/)ȹ5g<\*/ y.K&<°X&Oڐ8^p}7tz8$h႘5R‡h T{ 5v893iJ;U9s欧(ETl]KCs@W6%[$rcVCRacٴ"ZڹťoT 3 qllk=9" М{5ǤN+}&hc(uQ)Vej#,ay&_ VlDHe=R%1#,RO;$B**1l1b)EFߜ>dhf}|LVB{K~j\L7ª/A(jR)![PAz>k, cbSA},ѡVoTVĥb\:g68~lpKw b*aR߫92 r2_M5]TO?,ʡC@8Th^2*^DzU;4rx BO`Vlj)JHbLBT릴"LȽ=mB#vAn:coaDP#Q0h"+_fwĊ>ε/\??\#ݬc@}~*Ż%\If(GZgޟuvPද;?)! uA%/JkIpk\#&qKz8yg&᳂`=3zz`tHH) (M!;bW5k;&gV`*#7*{&o9Ʋ;*e]&g&47s3u G3B4o\z 1!ohϬp)bxPl K&f.P9yVUALft L?DJ8okjV+\dv@+TszpW ^2+AJB+1G%n3L145U&+~-Hq1N"g$Sg!!CB$V]v/vσiʇYZk jϯ)0Cs& fI)s3<,jkɫnZquo>+*+ @#?rQ3hc)=4%X;ʞxf쏩*>]qHc-~[!8}SdLsNwuYr L-w2 KǦE 9`לmlO9%қy ,Ϙ|Lp(Y9.ՃoZ䘕'8kd|șj WKpxq8lwȴrPR)>&uXiYBp$DzQ󦂐;^_oY*Cs\yԚ!Su>n/g=#q@G}R#i=8a9Qxs[zK`f?"4Z @gJ+*V@#q(\B~^ [Xcb-"!/_x|wC]P<TƋ<\Uх1>V+PsɬhVe#-PʙrG1Gn}Pǘ+(K؁h|r:Nu/ >D 2=C'kAҁ]F]UeDTɄ&T?:Ye(4Vؗm8W/Q2*!掘Òv|?1ҕeX>'nS1?H[PxնlUn8{HrwywD4^egcUh짒}6WF|'*Ap2N71r䐂jJmɘo'df )jPZdXQT)s^"4S ;aA@X.9p|y&'Hv+ekp!T(rA_p0Zdu??Pg 6p݋j\jl+PɤBnn_p)LRjAus Ll ?(~}boIgAsy0NzW6x.I_~KjS6 y# 历K@hK,S߫?^{cziK&/9D@%+'E*8*GT~eUs"T6[ ky򐽎8(Ma Z>kETv̪+=R^ :3ts+4UHVpCyxq̅F} ̀ 4JΆeGa صYAȟBA%&ŞQ+S+)*oҒ}o+ٔu@|"AE=QM s3'uA1!2[O{o#k|)@LaN7YlbK[{T#\鐳Ǫ9mO!c@%|qlr->UʉEZl,6Q8ExJfĚ> 2mi1r rta\tSYk[ſHebx?RVyx\"_)nO2Su'jYjZַ,`L 3+).+iD"4@ cRDžI7^+J<Ʌx|e#*Ґ3^ '@j)U: m=bMbgTpln/c|EnK V>G6Kbv p=x %Ttah{CY?s WJL4 @-Rn@{I0j I,ҮyMv'ծhsvfw2w1^P#j{ `.Cd6zC-^zl,Ip_{tݶ$C8w&\6\=&Lz2EAq4(6S Vٔ0cӫW|,V,FzVZX":"&H K?Pv.IMgyoEGߠo ~^>S,5A\B]2~^PDXj؄hVC7Ps@-vXx': W! 8򢭾]٦ZQz-gׇm~__lb.Gr:M"moRKJu+`h,ڌP\6^a5}*0g4%5 icfFi"lƠ[T'G%X>;d7kLZCacûl?Rp<Ѩ4F/9~xw%)U̘jt;Ͽke5HF:YˈWzD1I+XEF<@`\R͇CUzSy#AZR`ɋj/.C҈C'Ӵ*JWmA8_-7`ِR ^\jfU109Dhr)Ac R阹']\Pct WfJE@pui׹D;=n`ڥ}$iU4wbkՋt'߬e;~V^ވ"].::uf׭`#Z(L"^k,qt+.`۞7 5ףռ[Trx^Ipŀ>5.&3Cp8@ "ϜV!{hNuW^T x,cB$G_T_ ͋ǫڟvZk1*3QJ[=gģx󪂦 W'p!Nz|ޯz ΂V(w6_(T|AȀgQջ,NaD. w s`ω9l4<2C)?/+ y[;}@s}0"^ᴉk  y &M&_R1qm1c Oc~[jL?X5@T=eL1v/&݆\hѣ#Gʗ,[&:rOO%m6bZ {6I/ev(:OM8cVvG1U׊T7UJY24oy(z8Xdj>̨bW3F8hD;>~{NKE6$M . HnS{\QCD>m*2r=~1:Q6Cʆ@ڣ>V7U+TSc2-p"9Y)L2^@=]ѓvA[M]ţZvX<$UV ?\m8U8$OGNml7(o,pظB>vAUajAnKM\LҜU~͉ 6s/nPmڙf5c5;|~XoGXm' q1*Ƕ zp̔N(3mTjýaʀLyA a߿ֻ0+хٗM{wRnQ7>\ib-"$=Y41+RpM2DDԪF+y ْcv Wkb*{EjHu5MIC vz>}?JIթ6;ꪞ>_3[qDJ΄4݄,\tl r[a%CY'u3㊰=iaŤI2Na o˪ٲ@hO51QE7xMVP:$F6°V=. fE":2b@nO F/~{,g /r )bJ\Yq h ;[K_gǓoj;7wά|9X/saw $2A0QFZs5qu5^Ƒ1HQ^^#ABMJ#˲T_KHfENca.iBp'TA7 \ %}O*x8紊L-RB/1&Q^Q#q噤aArf^Mv(k }6Z*gޚ5>:˿Sd$s@ET rC)lQ oNN<W;3A/0i$ͱpx["j}9\௒*ܟ# ntg^L t54(DqKb2hsZŒVuDbe뵐A^*YL2'# % ٭T$ }Лd斾Iv 3 !Q\92[6jY" K:b_7k $7>:'}n,ҷ`$h#٬nFu[_t32"iu'wZI]$%(qRpR՗ErO{9Wb{jSs.K'HC΄vE8w_z<'\\($ [H[}Ƈk4s^&p~ptϪ׋vrZ>\27ղQ"߁daz@$` B("1 QYX&I ońXkSqu.8a$A{L+ZpD,AiEI-nLu2LQnszG. q2NдK6(܂ɪ|C{ f' Rl~buHܨ([#Z<"B[ iwh [껯Eo TZ FdAhze@%ЙkrRm6tg[9Mu@oAGb2?J/׵|{tkQml'9On[ { ^Y?DA^:¬?Z>2#mY!zu6.mh$Wf:Μ*#!LU|%w8pЁ[?h!~-IZJA&}❅1*nuj:>ۣK?bȰ?ܛtBf9ʊ2nC-U$]l feLrSy.xmFC%O&J 3N4?hͽ GEB%㞖McL Z?91eA8*`w{' ϔP_\vBs7lx<7HN~~I$EW=' YJݫ0S|-^wأ]@Rtr/ 60VsC܀y i : )6oeDn K;"%3vLܤ~MAL_f˥Z3g- >.96lg?ɔj&.ogƽ}`wgf^C޼dFw` E:O+I:%'@Ixz|T3h\Qu03GL^ݍB|QCI@)/5h k A`GK$ў%T孭H^d]h4-7 QK RV%qoY5eqXv!'˓!KG>OXKZ ξx^Λ+i 0>| vJ[qV"onDR ԍiũo |F^ky-F2.#w@bW%Ow\ІRMoX#"##i ]7ES%e*ymX4QdV@Džrg.|%7׼Ƽ0 AnVʃk4™n0tFChɋYSJ\tC:Vlǖ~z+m'+jC0^ņ&ʀ᧍Ͻnj{V^^v(YG LGc0DHY iCypB݁׮PExB$nnfnM?}n4\o=r?H:+-֑;$[QG Y /})*"bOĿR?u'uCA[* ~4wX[X١u|ImMF3;0 •o(,]$c7k#3_+>uȶGN({u5ðYBl3*2]JC/$師}"?LMS (p3} KL |>l'`y_x܌lךn 1)0g='>8$uCJS1+pá) IAZV=*G ZSճY6xo2.}pa}n] jKm;1\q栣lr,KBDstQV(b&N&*9SEg7 ߬T) 8X2dOjsfmܟU>ЍtɆ2{yܖgxd:&T8hF"O6uok%5YisJruݾ:zd=,a&5 lv,GtkOU~y5g|*UTr䥨Em 8e8?\}I;vGfɓZr)$G\ ZZ(eT+*]0N_i|j;z"uzׁ3B NQ&r`,i "^:mA!(ԯv(i(7ЀFrGJA (Ty$!׭)2[1Q4j?W3M/N\Z $f$*ջl-KUʙ1.3:q/}ݾgv}NhPϱ;ߠ(ɚŚVLwT'>OISWhլM *SX [iX_A)*BvKN#A~ֺ𢎆F{Quv)QҨ+CM9;:CS`qԮ֜H N>& -6}6mL%PeieDc&yl|"17Q%QH~*;M]=Ϗj"BZr\8NGд6+3Ct3̊LhG)'mӭsʰӕ /]ҨuWzGMȪʠ߹%)lD—z/m{oPYv+ȬV-I?u: l/yD7h5k;1uh4}-Jލ&=1) Izʪ7 ;[2{}03yew$-ܿ`-Jb"¦X6vbQ#oHMdz7jzXkv 6\8*^UZA6J7k|e3XefXzERћT= &@9GC-sbzL2l@uV G-c ^S1k+8jmE>\gjE`՗}q_ `"2!ЭgaTnFZЍw'BnwcQ8)BX(ПiDBЭrƧ܅ˋh& ~ Z`q](-d8l1̢ 7tqa7˺.3VjK]S7H恐űXw7WevnqxX3]Ej{PyoۜN.LȭϿY>VęW]%ܯoIyGd'_54N@E1Q_;N[ !`W*f+Jlǀ5@T*l Ľ9|>2^ij WSR,@ȎwQX3UHޢƍ5\ҧjB8{Q\Iq<* ]TS/nn{v a25 ,^HƫEkCF~SikyLL);}EW .Z8?ɿH>M W1M P[Fɹ2wLV Pqd㬽3WZPk3o%>$[#'v-jpui e"=zN-Xnպdڣ7PrX i@qCU_P!$RR}QV(Y}(;Gk%}rAU.xU*zD>~aK6H}PNU5L\ ^z_*a)ҹ'zxxghVE Eda޲tNotqf.6dᛵ-׍y 1UaJV@ԡل3r1.04B_?g./da % gDlO̶NO1y3 otr58&k3gOo=6AoQ_!yԛ{1sl%Rwjq!yfFcGfxM$=~jeO s:/a@}̽&gV0DJ=W *[ zi@so^2ĤЕXCxဌ+q+XX:\ɽ*8:Bg.-'dyx6=4a(v5!釫c5׋>#+< \9ݩp0+S+?!+WsT" Ma6S^ԅ[e9dDSʶ0}qZu^x \5LBմ ?-$I2\%Zj<z^a|fqǙ(ЄgR1W0,@Y_j*%_#AFB"4T(IvBPE~OLM׼ [8>gh gUz`R`NuG!]X{2ztg1Vwl ̬ˏ[aarM=tdy<L.@ ?dDkVMBs`a8k1|1T>Cj-|xp踼)zΓ݆ym{s:P 6Iy (CzcDBhp%^oE*/Hi' 1 &9N f,$h1oh6gM0epyF s]Dƃ\VGe@΀F aѽ؟d\'h" sP3b /:[ a< qz_CI(ILW˞B2W%$deHCPwGu9)!#Jycs8x#k)42_&IӌjBKz9%h"O[2'@Դ:G@<*wϽ[垬1Nq9Wa; $u= nT4+$1֕+^m:]zm <:h;H&7-^q5w<}ZrHit2x\zDil+mpL#Vl~@<3!_u<2t$V ֎ MgEogF.N~ r͇ Լ =c1KJAzS>P@iPoצ5?-{X7aWXL76p3wEkk9t#T4+ɰaH~I( {-?i6,Hr T䦁bQ X!H%Bz|)?]j*=Xo+ź}ڧ)-`fz6ٛ킗žp9cP*O (h}5/͛4V7c\1B5Y1nf:Kv}MSKuoԨUNnh|⋽H56Vۂ8__>]Җ@9yU>NoQqPNK&Ӫ.["G<|ڋ:ȮDEHB?bv*qtv]V(s\=ƴ'l.c"IK0ѩzA#ʞPn%Jex%}hRfGl{d9^<2Z=BWbVmN&#) î1xGYq㴬 ;wWȫ@_QIy݋I>:CA$a":aeVʲc>kh3"/<7c^]˲ %K qv-N si؟1PԃLүGX_ޭ[$q/L_$vtBylœKQk 7\qHK5 p胬zyc2unץt&0{ w7-pkJ0niEX U>c6űU}y$XFw1zoD]WTw k{NjBi%IMDvXlIj~ i{ҙK5@6RIbkbݹ8ס`_(ض+wY4F2"49ݯL-Fђ*hhQ^sit6{=ίpV虑9ҴR診{Jܳ>K]dKNܬJ 6b|]^r["u2)HfOl䏲)3`t/@#w0ƑKJ_K`e?mgP(1׸&-DhL7ʛE^e^>-AJ4;_ٴbջ$vF2?Z+^2fd[^}*ZBG_H-x] Qj %، nv~3Vqμ 1,QקK GV3ͻ=LD}<߂A>W0qfzd.C>A$*| 1Zed)3*P?m6g)c.3CŘ0Q ܟ;Y 0w ̭rV_"#=tMJ5AxdKNn7jl ul2:*muw:PC,Wj/iR+ 8ID58ppxJsJ`O"`8&TKeرnUFˉCuaziW4˾![#<: Q181.n6ZfX#\Lh &@Elgi5#uwLQτ]S'C]n4)kH$!-W$.u:ʐeIҧP%wkf^rMUs"fM5)}ߨ*?'Bhm\z<|bVTLJ%87<]#9Ѱ\QhTjpwɍϫid@<'AMƠL۹YMӢ(_#9-1`h ȩiꑡ_?hS4T&z&Nm1[8;)?Xk'DZ 7T$ڑf9r&>it2[g#jWU ^2sRE-L^3[YTvz%]zI"H5j7Lhv*k,"|:CW} ҧ0Wz+͚YDU\}J2f|ZG_˟ntr1K_QAhe>kjkm,K"39W0ăwťo,:3*?E U-im%¡Dm,W1ɁIW Mĵہs[]\ l^I**O#~*014FMc*!Qj̝\3@vf2n&5&kC`:l+bsI&Bo֟A@Rq}dk? *`șJ? ']mJL/.(vgCV|eb ԉ $‘e|plpK`о9>;N.v YKIٴ ؍r[d\:S[2=̈9 +f˦|bbA܀ݘ=^_oYԕVh"7|9Xy<[޵PMTkST@3\oXb(C)r/:=wF;~9$MѼPP>u#Ih%ekYQ i H4~ι{\%-^/ZW#»4Aq\Ƴ? sgbRt}SyWп31[! Ǣ*j.lu( .J+?UDMIœ c΀}M:ᜥu7Lk1[04* ]osZ7)ϿFڸWX{h %"b{wO>'f5{]SWtٚ;8kE6|G CsaQnD<-mjl}ZSSw!J?`?oF<_q*&X+P|7 m#yQr c.O>6# k"M2`W)iҿTȰa%NZh,DUFta(wZza,B a\ʡӇPɼT!qˬ6%y,DUU$wsδ&JM)).LxE!qUf1>scϙvBX0d@b{{LnR؝A*"Oe>XqWE){rZ%/\gCSL I#EuQiנ cjl[&6 eI_w,,r Դ3!;dJQ 7JX2 R #nև xnp2=R70x>#>~zcI0qtzl~js "H4-.&A%FDA9 da_6hVi| &VOd$1ɕ o1q\9WQPp ^QҲ޴Ci׺ ?{ =UjkcbB ܺ* tɕ?R hRӌt$2x5逨M;c\?pXhٷ.B(vóxpRz<drzaokSv@5~ϙZb[C[Kr<˩"v WBͤ;wvucIU5WP?yɃ)ܾɤ|Ol~

륅 ʗt7ϛ𳤙ftJpwHo*v nx.2u4գĒQ +.&6ޒ'#Q YG_OI절$#Nw "3w[ȉl GZ_Wr D@w°ܼݶpBّ˙]=ȃl0UF<,! xTjJf)E4XF6|yq 4?X3Q<t=X_?Y3Y6 p0N5Q6} 4%{]rZz?21`XxQ:Z~(CVoڥxW {A:4 |9 ? @F(Vr$;3ח3\f\ M©#F0~OoI`,ΎqN3m0AAZ;GK8hyKr>ꆱѓߪ(p3_?^Sػa3 2  '-;lJqNrriKI1to16-}U%h{RĆ[!^ m+gQ7GzžQNjuiB+Rr\ E/d|7lܬ`ɖj:+$M1$̷-3*Do;UTcra!1ai"Asj,9_]Y3x@h|fFPXwn 5IoY7UZI}@`ϤE dd_\}پb]P c1hz72-u ح5%74:MחOe"!ld|~t狘AioBgZGaHQap8/6Cycu'g  d}x#fdLώf:vQcSK c?l* ȆwvP zLHª&i,|к^RGeŅF~- Kak+$D[]\oaH]\k %Ewk5 nD`x*5`{cjۉR 6 ĉC;Qu@_/)`3mӀZj<S\yjT ~\zQn-ddXc됔WOCV$jj *;#0 =fgQbiZDG],"-ʺ۶~t }NJLRsK%Oiv?!hRm6[, Rֲu7;]yNs+wAPHn ~.]JIvErR@LR_Hgcy$Aò$QrLmj/83ec\i iAh*E~rg}mYH4#|EW&欢j#Scf|lI+=qNʞ{DnZLS>϶Ȧ\'ks r/*$-#ҹ^M10æ%z|)&i2h ԫe$ wM@>O8C@oalNyq'l-^LA 2C*f=Gx|Ahx 0Êrشjf?зiͬSNo$nf4ev4kYsjJ8逸q0aS1*] --bd:?|gCG|פ uCwGڢߡS;'% !;rJ"pJl86z1"G^ |{ bjy΢LUڒܲݓ}Q:Hp1=Y0̨clS3­j<9>X~|nfz(:7c- Q T>Ჩ?,uι`&ͿuNČL_!V]fL3H~ַ֮6DڰYn3͙_MYQH4XBl#uIS_$I +;P-)@EtIށ]Db-G@IW-]7g.0)we<)ؿBy b#*V?ye=;[ {&QK|fz#dbC#8?5]?ExjXYc{FcTU QKr,f"7 DaE9,i5s*HE}Jw}eWo0X6ߡ|ѕ5LU)h9xг}ƅ }'E@xcv_/\bq`Ta"UB pn CCƪɀ-0MY3'BgYiJƐM/>2oHb]if~k; +9GZʱ=M'y%LEDOl/j\|5 K $ o^jgu\@eE$u\cӥx:O | [\$~ݒ#] >eVڎ Yq/a{,{ݯၛ a :P^"zm0|s3PzJPbDsnIFB57lSα +y1Oz7+Q$%T"2.%&mE;}':lɟD@D(R;1ϥ[ΰި[ ō U"eNxeН ,?*&?~bYlZZ3 W2ct((%D cg49,Ɂr#Wy_ Ij x(Y&@`JhY{Bd ;" YMHŘT. N?P(k&6 יTtT}?fذ:5"\luSjImDZle{lvX<k)H{zfwqӒhYvE$i jӫӉ)7*`^*Evrp>2s8 H뭲Ƴ@S>@(aÎruځҐz_D_hвپa^3>KPtbx ajϼ=Owz[W]<(_KE߮ fe9hЍo}C' c7h]>r1安WRGB9 =r#DݼCm_ʧӛ!qEf'ғxj"*){!z|>r  ײYG̟?3B+1oCV9Ok CiZ{-Ln$mZ̘wluu2Ke6&o^$'~0CI.Z<}|%m%L~ѻXߟ̝UM«)!Xuoֿ}.'xq=ȝﵕcQ[نd; x?k4(OשO{V(U)`؄qd諑R _#-,5<Άf]L{F$B,3rrjrq´ g 2:9X-0~FЊ65 9JkUcxf)~ xh؎OSmPƫә~^G"}n?[y"7(men jy܍.Qfn8q-qkhoUMѺFC$uZ[!_HeTzdҍ].|;Q^'`=;Ҩc~M,#[#+@Nq#a0y=%-0:ëN≬rM *|`Ua%XQ[adHx';jmw ^ᖫ(")Ŏ)Y'R2?NE"5\m~x2|&Ȼ7[^G^Ml&9JR~ՓUƧ]%<ʇUе쩌$,y f4^QTYUxSP=w$ _X]?H- Rj5FdPAe9#MR<^ g?R$R&`bO\q*[ϒ/^/xTY.UxG۶e[Sg1:Ꚅힵ렁05n;?6WMnzg)b@]zIS3(TĹoBjߩTՕh78HPv˼6v[]̩wK`,R6/FH[wREf(͞Zbd'i*΁'|PE8Ǜ8'z; zRXv]xGg$̄HXꑥSG)0o)v 4^"5pXVJl~}.](~À/]tmٛvm&7&uCusUyU>QgiͱѾGSG8\y{ Lو8+g̋|ٍ%k9͍Ю°WG!c;])ԜB~3gAA]{‡mjJXeL k:-J&_큝qS-Oj V|z3b?:ěGe2m*t!;Ewc*F-q4TԞt܅w ?xR!9 nA8 n߼cJ9[\ S ߳}b޳U&=eL4W|"F,*/s!C"V߇"=fZvh=[+nֿbo9eedYI LKgU*6asvoŎ_/Q|-PVڳv<@#`FN>LŘ5}J/,6Z@X6uXA5$J?-HrI$WZz@ IVj5O~ ?v+9ھ( %-K^NۅS}^q,P7̶^i8P;&·x{UZY9:m3!%a|hsuCኔ?fͷCʒږ&T.j<] ; C_ 'p/>@9EӾ|r¬H Ln޹)8DƅUGsDo!רk\-Ȼkȓ# Ɲ{XKxg_wnk ؏aoS?|aFx@P5Mƛ#bo(*#,J>q5?0nXeM6g{EU%u޴[G-BJQ *W; c&t{֭Ď=3-!`*<8 -Ǧ  p$wI-@"v%+_ܛFdb+"Nbrn{4 ;P;g $3o%AEz.g*N5 v3#Uf;IZA23/[1KZ ]չo\:qZ>ڬf]Z'D9E’r%zv~ @#4Ӷ!)W TRdxPOXs(>.-dX&`y/ }p-0OE`TDf)t4ylK#s?Wyɖ[u^g[U*`f9 *P;#:z_(2R ahg+4x9123ZM(ȿx꿏 ZQh!49|b+F)K15+?b* ۴RN};ŚX@GЬ >&Cvs4b}kn$Ɛi*͚fMCoN.oxht)wT Ǯ<b3Yb&O{AwK~SViÔyu HOW8:bTEJq֣ETxE &~)<?4w+K=Ur#+ <#\t]LuKt dt|iz`DI!ho;z& j :atL= '5]XN K\ԿzUeXPY6dJk%O\үXP4b\:`{*֏QF$|/JY`hi3-:k?\t69o!kq;K@_ W]EZⷪ+k%vio+13J :׺PD73p<2TK@@EN2$ޕ2hSYA&ziAiWcp'KO+ʞqU'D[=C:?j>W;p &+ݽs̼cLS>C-}J k`?v1@5eS Rf5Qf%)Y'M[wHD֣A:#7*y1u5Lh,肠2bxpavPYQ0u8<l‡3cfO7+#*2j6-a-OC͉;e6df,GY~B7+I l6P} `2.c++ ST`%6IԒh~QJb!;"]1./҂N4XQAXN,3MoH8'.!=‹r-ǣĈA@{[빝%K@aXvm0J&`=+Mq2\Ug+ߒ, Dxr &iXHɤhHC41 6 !?NJ.P / wBV 6dJSҰZ #k Nto+ À!n}>N`tnAAm"I)|h[ z8Q ,xm$c zj/WZg|xk eAYSP SL"-$&7$EMP̡@fܧ쫥rXI6PJ6ԅi';~ *~}ExxDJ\( >=0 VY4gBd֕+J/>%1¬|I[W ʿ=HWthkBX*c6˪lZp)d镮 5FWh C)/I`I )Z8z()J8ǪrCfE8_\% RGjHf| mpoC-T;ۘa|+**4ug2v/HXKvGO />@Bj]Yq}RCg12L,*j /tD |wf\QX3uqΤRͼǜKbؑ $q̧Z$نuc{ qC&oP;LsRe^VtE9q8kd,?/WZ|ܟtc)&5%6ް%%nX{61In #tx$5SB`HL϶Ȑ{ͨ1TeԠ]z#Nh“S!15v(O yjk1$ONtG?㮳g$ .S5uj0йW'ҨJZ1r3)NRT- :N氂^`*R1/&l|A[d,BcΕ! 6˵pr P7o!q~G/`("ڌAm)2BM\-ň-N͡W4o_ڒ0TT$)$gtQ8c}We)bB|}V>Y?TPLV Nv;h&YDAqGnP̎E?Nl" 1o%%"h!yK24ʿ Ax@-[\ Xn#7ײ+b5N/jC<=d Qѳ agHw^B́?>+4<?KZ nh]yN 5fk T}IAcQ"#3;uRNw \'Ouo=1tz| ?6}"=0zU@;W2;lҁ<{꧖LNJe@lf~Jxݨtmo=`,#C6{|$0dGyqtoO/<&ıϑD7CB,`ppWoJ]X;}͢/hDԙ379mc8[^҅O˵E;'._A㤿#7f#_0]XLWb!zK-"F'1lqʲs=lǝ 8S<,uF ns?%`. J.ӨCcݯ?.7ʖ $lz>  Z"7dżJ""gk{c @Bx3麕Kï9l~7QAg .wW2W/ ;l7p"8WUO[sqJ)Àm cYJ'F i=Gx-.w<`R -|38H1,E=C+z* ZO]<ǿ 0u-mB*_95Q% v.YOxuZ5U;T{6bɼ?#~oӤcdm&V; )Zʹ~ŭ]1, (;:+t8#_&te"Zʜc골 4^3mU OSFPHHWe..ǠFOtMzSG(qjLe~z 7<5g"UDRpOTAhk<& U 6UW|e&P J&ȟ&VڽK7أ /hJe5enVoˊz "P]*ye+ fyB:E*tZ-w#Ǜ_ZzS#ZRs1h [Fu*Sn_ڎ[S<+փ_uэ(uXQ(ٟl`s;1t4,?I&Phw[%, ]}pI[=U4-q\T2E]k\ )LȔzE\|B]U0ORuOWbe *&\BպY䑿 Lq=pVYwAC\օH0dQkmf\9i3Zbe y6:ApRVj(Ă@x{XRjo"=%ky0⫺CR3DDkp<$ D:@bտ$7n?$<.Z8X/5to'zl-Ց@mfxyLMN>,!T,e*a_G}̍^ Ec>L^Ik.J@Dm # kDls0(Ōn}㾮EP4Yqe8I TtTn2lQUWתQP!KtD\_vHo>CLTvVwmXjujޡ;m<"TmDNO$sC ]c, gVY=hLR0DV8 QDh*( W,k&䮿b(ĭX]EDhvuxjwl/PUN<?+ +(L>l^wb=ݼ8 @c=]K2oBy~N|D0*X"`0e3{5v2-T=߅:dpd.Gw A<'ì^t(BbCL>f5rVW!zrLѕPP{-5:!7(i+k.'9?&Ṕ(k7)^jrY$F8j|,(*/|_b݃Bw᯳BRGEu|xි.7;`6Nс>U/"Fet |2G6 E`FZZH,ŨU:|3cxH[z[%^Op&u1[De|q^s k#8xǙs4CNMnD dh5c{ du[.O.-[pce$\yA=-t ؒY1|7>BJL-C?IA+p5\ 7̧%Ŕۆ(XJr?JjdlYrtc,mQfp;A[Ƒ!es["_rB<%`<ȔbnF VMGyePXԤ[?O?~D~GF.+4e#ġ*+(ɉ2g!leY%*> ,߉Ӄ *#|iN; Ǡ͉^IJ~LgQT.J*" iAGL=X^\l5K(PG%V7Jr؊{`l6K*Ԁ+)rK\'?\msLLpEF`xbȢL?#(C~Q10/M/65Ï%QP_rke. EihufbI09$'t`ϦYU&X`8@>s G@֕$Z@.@YI>wa׻ -*z67L^k ތdP0 wGN=Ntk̢)uyv \Fw  /؆#XTSsSxG*¼?m/gX1U7q%,[J{4xX?2X< 7ő+z.,NwWv78}b;& θ˦S~~=}p⥹ eQD׉lIXU,-C 8$Jkl25kjf}ʆ-Mh\!=%~ZzJYWe [.^׀;/[lzhA-e-<#.Qm&?)Vw<ԭ cIh.U)q 1 ɸ'G+і7"$~Zg`6o;#:aEJ7fo9#>_J~lPI@A2ISrJ]$vJOJX< n+e i~8F.ao)R#&_ ?cLAi4~IAhgbJnp]TnԵ $}wBZJJŴ^dkZěsT~vוM@U?Ǫ-֋t&+G Xv *\v4ڠϋ*z Zt>>LpՉ.Fv"a2d` q -۸& 6;fMkc>+(Rk&LɿשOQ6o3;_qݖ$՚/?M%Rj3 1m\Qm}|*7k+z\qC0مLX5-Z@0JdQ%!C[9q' ^ J-/,I1׼1uνm@Ja) @uk$iK†|Wr4-M _KڡbUbܠ;Wt*. 5\;,ÏHocS rD?H 5;C) V52X1Bx9 jQ7z 2,(mI`35Ik?jhKL¹o"\b6#52-~czcv&# WI>UjhMHWUCXu$80/յK$">/>SX,$m"z鳹 ÑK&@؋IiwDRZM#&A?\;A:H12W~@b"b@S<#8T*&GfZo5Nɇ 8yTw2=O+QF/zg,l8%,89FࢭOP"v]|qc7:}EJ_JO>Z!O)M̂;,& lхҧ8V-P#^j,%D- z"$h-\ |3+VȠKQ{%f]5T8žLB4.aL$łJ릤o^7Y2M l-[]|4$;dnUdøKghimiu:~RU2XA> |A!es)ܙ?8b otKٕnLY$yMۍoZ ,BNPd܊31 c67[ \9 Y E0iS+XHg.]d[!O罌ԒnX,O$P$[/^ݗ3D`xA=_vYupK}7/G d롆cDM[~sK*TfN5B~xcTڏ:X7m! @._s}Z<2Y{ X(f݂a /!]ڡ4o|d(tSTz=f-%Xm/PCiDB[i \$،XLG=oO [5=mKk6*8@_fTyx|!ז5YIqlER:|Vhs@0&rU5E"5,qyg"ZukNxVƵeF_ځR}dx_ pUE":r`21Lsp&a>5t)rCM{1ʋێv`:ìmFO"IY'LSrB%̓cnd uQҰĺ _b/]\|}nz`]5BI#"te[ {Fw#~]4z:?m0䇒꠸㚉~?QGnE:6B U2ӡ08E2oC[@"iA{"ȕjlݛ tS*Xuߦ+1o:s+kHʟ}J:ޒfvko/b*qc`I3ǔxR[ +\6erZ ⼛-Hr'w_j=cD%42>2C'էUBMJ\oT"k@yM@ff4BRRv# hñTW73hG8pNm /y9yw9SO+._Yf(cXlzڑ=/DEcPq\|3֘M1w Z*/TP Ӷ)a> eN\s[Qu4lbUv%eyh|zxyM\~>*$Y :XaO/XqruQRMt,b?B;޷mCgB8/w/\O$gzΜFJ(g`Jawn8Ca|)}x?G#'I#?Oڛa]Dzt訲!hĥ7 @A Gw0yA[;ògHd|Kك"D|5=i6DJu*u[Ƥ"پ`ʒM_@j$Fvjjk`~>`xnZ~ ox6-]aDI,M,*7| Nb`[=ǿ5ٟx}ɗ$u6SDūINZҽ&H8odu(r:qCyxҠfAÝ>G*ͫzSuy*%wItp7FJ`b2k-M-0On% ; 1ٓT~c挒%B(Qx?>C R XQc94|ilJҿc ԳLun33֦Fq ǡw"4O)mgI_!o׺/~em"" pHqJ HZ%XQ8M FGD\O'9x~EX?*ͯJtMܲמUik#ԧ` XI =' t`sHKȯ2b \FE=/_܍V-򡄯\=/mrJ~1)m^5 8@"4:pN񡇳69|>˾S#GV ٓMfCcM̾^5m3EKeޟ^ekun{eiNFD ,2YT⹼tE-#( [=5HՅŲgN੓ K_B%-(ܔ9vʛZ \?Rkʆl3hxe^8eءS حt[ǒʒ*(2o}=E8Jv<"2߱v ;&VYq5KL%dg}ѫ=lk# 2Qч({Dй=:N(ae&2Uœ-{4pp ;xr6mZ.8VYY ; #G}~zXMij{T Ɲ2KG}RK{kܷgAfF\3߹O7?2bB6KtXH1릭 +/IGC+ 9^!=ZɁ3^ےvE3 0Ge^^㕖̖M/7r&f;ػeOf,;NiHXe*Y㱵V lԘr]d(fI0d7uX_zBOEo(CRBT/7OV3nv~&7J+#aKmiA)9ز*kr-oࡤ/RR͡/Iȱ{wXc9VY g}*Sez{Dt >SC Z+Dx> 9W5]?Sf_%5qWz?̢-#񦔶TH%_S4]K?=XKm y8/X cl~+"lTvDvT2l$Y3 zM8(=J9W-1q W$kK\ZϬJ,f~͝ҝd!RT-Jg|[\ wI RfSߒ~#LAzHb?P%_Agr)&'|+kMF7Z~6,uE?ң18o*0 ;e*vf"'e=Ol,]vd/9ߘ-vn[ϬdOU>es1 .0< Ӡ)(! )B ?4 P|2m4f۰A‡b !r9A/t)^xM3م<`ʋgXx Z./k;ҫltaHC!&0mWör"B4hO>O** 5 s Q0f`)qu-4{Rޢ5>XŹ/h?h6.vK_N0@j WfVE)Ϥm\XN[}+k1:S]؍7'l9E֡D\{h-yuxCȵ'Jus T_msg|^vx2f70 Of0pЏ=C܅,Xs1@ZZ22pdW5Mv_MXs`iR5ӢQ97_*}Y'KIccPf@g8FJaBWi(wUL+Py؎"g`1rK|Uj.j嫾݇]n@8U{W]t bc ,<2dL^0ABdL4@UXD Z _z6V.G?'vE\&d?' E&TIRS7b_xeVr}e2OB%!o4xހKt崱Z=lupX@WSpx<kBHˈ/Z.Au9X]~`_Ƣ[FC$$PwNװh(CqqBY:Z˚vFB$W,ΤK͹C9RŋKDHǨKA–x w\uǽȉ[. ͸sBy4m±Cƽ) ־-,CDÇ 15IǑnDPow >-:xӺ%Q;$tfinXc{X0OR_d>|2KdTdJT}"8`媧_琉*"XK[u6+)yQxJ}T.pJ䖛g"&v";u.t'w<ҙK䇚~a}h.MWKiBjb@5`\-Di]0Z^x:;|el*/ w+,ig>R n42zL\FkΦH­{λIK ܅MW5 .8`H vT'\A4[`';U3Ɇ==5x,W3`czBXJGaB0hvV}p .F}pSZjTP|57қy@.3VZnnl蓮&c*LpQ[7%qVTxw[x#M먣"~v|LFEs.4V!^`*)~zbOUM_1_QEP-hfcѻ,NQ05í "ts2i}M17~ ӀGȹIVT)'R/ÿRZFfOZhm DTuFk&;e0עb .k?K -JͦK޸l9 d/9D'j4f3HvءbZ=x֨Y kevid6r%I(,&^xitb"̯OPD ^M's?@zjF+9[D Y`Պ_8+Ȋ܃PWޱ#Tgd͋UO1-O dn.encF\)9 iԧǕ5WoG9 @`!i;m!c%) 6]r;Eǂ϶tüS\ 0&:y:HK;- E^T4ҁ*\._ɵ՘!uTo/5':?V/C9ЬUg/>x ,p$0;L62[I:-#"wr?S X7pi%es rFiufNg&)>Aʞi[:ՔH$FI͍݅}^H7Fh3Os0I{ȌaWx\O뵲=`ZQ rBZ xdQ.帉j9P/$#XryyP&!4k?|C,>x.ǒ18͘gr`ڲ)m"m9 1ՔW4Cƒl&Fvіt Y5A bkz,9_ .3şЇ`.6R^biVt _نsT05LHMTgb4kRp?/a03}P1ĸ spOLaI'0 / wF^Cz'1GPqxL #U& 4pRr;Hc (^ |?֕ǵ`P;孃KWG>Y&s"]2:PvO a>0Tx*9 ٠6pPkHZhXI1b - Hh8-襢Ō&i9#l%(&N*ћҍ]LkIG멦!EiW;ֿLj͟\}CZs!v0;}rY)DZAߟ>]Y˶5EwEH@`vh藆rVqބj*Х l/ H-1/8ޚYxt݇dK#XdZ|M$O ~`"םXBwEҗ0{jI8 ϞD} a.04nGhUA?I%oNK-hVƻJTוҩXsb8Dr^3PxZ* wA2~]S'o*NP2{E-Cp@V|\5I|QF˘fv$֪ I@چd@V*  p?^i֮M%ȯvkF0[} Ue@~ gWx_o*u]=g<k ;}d~%Eȴ4?]6 eKǨ5c'Fq#&uZ>̆w_7].Jz .3ezX&]l1P_QH5q0V2i[ὛĄ& 瀌}ړ %չ`#!"!y@0~˳#~)wt96H+!إ*,|Ј E߳]5N=!v >i.yܢ Wǽ9kAH1ZTEyzWFyDnR ,fZ=6uAZxT`5ab O0 H&2%۾0>+ziڦӇ*yyUDg_3o-gdVi>No?mqW._+(9eǯlc=H@u-&۹fs)ΠNu+Y58eAbq5v;;"ȹ_7IRշ%Cw̎Վ&՜@ 0@REyL'-;HҮ='%);NR*(Il2S- fBxNaTxnvi0;wsXँuYF6Ž.@e Y>srG8`^KԌ1ʹQ@HD/L ~)d9&tbOpͼQ 0u7jLn e?0< 5Ecl[D6E #ozو+y8=yS@F&963>@>GN(Ycə)@+I[qejYQ*Lr *l,V 5 ܃U[Ya!-!q'S1E%4H_pU`,Z C>Pcyn`'-|1Wr֢HWp)=?. < W=M7ڦk=nWm`Q; /D{4;/v몬ٚ`?(8Z$`m.RV nT[U0c-aW$< ݚ> Z\먅 (*[j/M~'=d{`7]Jswȋn4Q#%H9y6Nӊ ѿ cBك#6wOv"۔ډd9>V_6Q0 7w8@Ym]Oc/EODB&#:MjIq~XCt\sa=-j6PG_ϓUrewIZ̺hdSl_L${y,v_2)'S܃h鸠`w`5yHM P}xjEqx7$bԋcѕ*-lww-@:T /9Sޭ$-iWXN)PT@I]~ئa|yB$jGߕ%Z§K^ 90|gD"#A &:!UhY)1Mq/ڍ% cDSe]5o؇of`+CNI2 +ُW8h Tn czljn%}~Uh4Hgƛ=^IYCX'mnx)NEZ'='C&>8sŬ\su$ 5) % 9\VNQ3 [ꐐu $M/!Iz'ns@ %IWVBI`= <~>:b\{ m~yؽُa1:*[~l׏Z˶]%#ĺC0['1jŨI#rveЎz^O=_-o߃JHvEEHO)N.g<kߠʃڬV xLGc&›MKQ˜ F4SgnYmt')~>[$3'_R),w\ Oֱ7rcYXKіTC#r";h ybe"[xrIc23;(vc и^(~bsnßHtxUI*RNRa-ć*ROJ@cՕg}AR>9CC=0Xn|' }.t?d;=Dpl2W v tр'ԣ whF-œV_ ~T/^wRq`c)k mY2T> s#e[ ?hY]o~ }l4?|/Gcc}||[c;Ԫ9loy]*x͋;irma7"84$'U(Y{ŲU>5f \&Jzܜت}Qj ol[qperUeta_xe0{p&!/<`R|GKqj PRRҙ8F}2<î鱃z?/diU 7(P36S 5hyiG07vMK9x 8m{Ycub<-K|+{$~#&C!?}a%: ?hjE3R94rglw)"k+GXvu11דE5Fa{OazeSE^Y0Yx3vޠ3Jç;Z^:NIov5.#kggDM*\܊{oOaɤC=c˚o!p:Ih\J9+fĺKw嫬߻ʗߨdMQ7ܜ ߅릐^%l$S+g@Ӆ<,xS! pRQ%.&#}rE({\n_ʫlxZ i.4n/xԍoFpY;qsIt8+/hMp (Atq1%ֱ菞S#A& (.2NJK_xѿR&ߊ<ËѼ|C.`jDR7eU&K30^5x`Z% %jY *[H`<>DKϴ1Dtv}'- pe@VF)vbY(OrP9-F6ҩ~QA:}QoT#8|U^ pbP[UQ^B2PR'%ro>TG p-NOI"qf,\趋uP. ŪQS{ziuU^E%^PN>SQ[ }_Ԭf,6ygw u|f&S7(HQqmqH慄YLCkVR,.0깉gMR$Sj(R&57 6xknc񙁸lc9|O+zE wӻsY (k別AWcL9cyYm};)o5O: 7`((dz:F[$Y/}3gU+ _JrLǯ1F}8;B+\nP'Q/QVHgRp()]*H2ҭQ@?`mr5l& D)jWV+kք+JC%eU;昆Iun0)iu/Y玒3K(2Fݎ9wP5]Q}W<L" i~+Lc򮔃>w>gv<{qEB.*?誈s %Y?n[؇X'Ŝ-]"5e*3$ nZ%E`3j]Wڢ0e8^/LT)j!:JO(INjU8=}[(e0qLr`f*Xr0fFO)i>- -"~o2jcDP0MA:xOn~DJ: 6dڮ-!(nbxgvᥪVyK: ZՉJ*UP}='7PaIayK4ڐԎ!=!lts@4{q*bϖn#aτyB4ߣU PeU]i-$3?> "Q/M5`HWtu%^aQG۲ KvyjEBn ySsAV]G?M1o~h5C*KSq!դXٳn'ex\l ?:8f˜8ԉbwvi`GD#"gg0>_X5tgr'QE2+=N8 2O7s #Pokg~G(fܲ;C\93.9Ъ <ٯ9VNTzJ91HTIӘH0Lr|ϟˎWA,Xxus^dwPu>ՙ%{韓fC~:݃w1~Xihr1C]`E@ݙ /'Й+͍p =Z| Zo/:>"ߣm OOמFQnբc֘TM̀퀑Dבne`cP-]NBٹd9bn/ C"CPEfkcfCG*MS (8gS"Z; ))-sJ:;aٛl5/%]:%}Uh%#i2@͘Wa5iK͞gWLkL mus4:39cX˧䌽_QPX|pr +owTX-2MSeY@xYPX߹1(CФkSY;t :Tσd3]_kB$9J:leQs2)[IL|}FYAz ߢݥC5h./̦FpLrtE7W+/xiM^EờN > n\+o=!UDjP+^$#P:+$~ b<=첂$d^qJ{ C4=+΅X̑v4 ,yl <.,(}f3aU[=R.;|+ϗbMm2N<Q ]0{IM藭´?kU "jM)|%۷V"U1ϔB?l"<=>MG.gB=\!oRRb =#0%ڒk:ܛ'3aewR6F`n~aN#$IQ 䜴5;K*|%GG o&ȩzquk]vNݸI# ת.AId?V;2:qj '"&8E]XuLBwW-J3u3 iQѐ2![*&U+5u_q[$5_z֓=K:LAPEˡ%]Аu}RЁ'N9j $tVt9#HHʸqnd-sUB]`h5O_,ĢOqq7xM_@Ifܒ ,ve?qOCNƙK䫥Ba^2_>">`+bmyc6z=5ućy˧i4Z >EEeqҬ0\F^˜6/oJt~/vuΣ;ե%'ׄ#c(7R;˃¸ܺ߉f4eMxcuSV:vޤ /p3OogFc\Eoj'K) 4&8afd-ý.!O[%O\ha{Ĥ(f/:g~){0!3 Gf_2ĒK_2oVDr{ؐy  =6`7@zUdzk"Az T;(gE ^WW8LrV.% k#=}KNw&ή֎5'I$#SX~QTQK&Cɘ\bNA-|zQqUE:7㿆.%t5kmGJ3ʹ^3FL`P 2nӏ-f-txus9M !`׊w֢(qVP5$!4_r7߄M$Jd݁Nm[(?IMRX;bmځ4uV>T*1k)>v@ itW*s1*cə3'u4obͺ9pKYOK{0ԡJ1*|& 閠 Rr_d6qvd$%4IEQCƗ$Y< *Y@- S߃U^l. x $e1.֒ wR09E!!~|-UopOh.Qݏ גNe史6Q.;<[ThCQѡz);3SAԧB⣡)hh7I d GɦhrTz_oNLޡe8w>|RA珈' o'Oa^Yv=oG)%ƀ/PnL~3黀 l x]b;hhT[GH oB=0QolѮ[Ԛ-@13`kFb 10o'ptޣ17&1;0^1AtL/=e!/$Zz6VzpCf o՞i 8u(T'afB]-b}|*_H̅UWW~C 'b"V5UmҴPz榈KB}[f͍1m$:C.C68c "BDs\[j @k0羐Aq3gop`87r`wSg%핑Bl 64xAkq_`,K"EdM ʉL7IG坯./~ud(gHcR^ ~jh;>gT,W72墦|Wϟa2:I9NBbHVwA+F %q? xxe2L܁fNW|mQܑ硊d%z;U@*V9|W^\0%4u.1p{d_$^ͤg*W80 eNr~YxM.` Z2뷧+  m]fWdR3:e"I>NQ&~kE$+;duE?vK*rysdc\]4 Z(MY'@CAԓUw7L>@I@DP=C䤼|8݉ŗhi9ˑQP:8^ ҩD8^P/ߟ|L 1, o ){5&Ɂ2 оB.N? 4ig`.j瘟z݁*4-C}t6Zy("DN%V?{Z zr=]twV|`5NGZeFΒr̲'x0 ?1%]B W]Y06w]!`M55ڜOFC}eVA^zWR%S^-vk H'8WeT%no/̂@C:J/~g7zeqo} w@BXCE/|+u|@-1*0BM'ISݧg#~1Gu[[%P@+Pvn;~Hw9o)S{*_4̬'v()U7P?f ,_xu!|r`xmvE2q60S.е^OZ%pGyP$4dW-B+ȋ9: qY!V^׶ 3:˶H* 4{'<: +Ix4Q'I²yyb}ژϴZ>;\Iㅽ?#WLKJe̒C _-#`k[R5 Y:ʺsg6/g\sy?}lgwrg|`+`-""f71SΆ1= {5WN"Cs5ba2ߵg{=-B|˪oۚWH:#Ci?tP{W>*[uS[UF'@2sRa^-}Ӟ.,uA uTF8C0loGK;kGi`=#qPI H\d GƊot{pfUKV :eR/\E2@|X`V ]!wveoOߦo1df-WJɝ,9PT3̺@|h2֭ ״-3sMb6z"X;_ $B@I':?'TSD YqsY5Y̳@z(wo|[@tA*w.UMJ17|YGk)ڑ,p9P׶Çqm% /$jhؽ7{<pwl]94kGqȞbUt+>*j[7Z {re5fN@-g.ނ Z'kq!Ք47I1k IVO)f"y?Xg pDUN9 Fŭ !n.7VZΩ.<(9]@8_nnvIeԒ'ҵEYn6@}Shˢ[t A ;ʖpO +0:qZM9ig䒣$g*@9/ZJƐ3ZtOi+)S[1 ӓc@՞Ihk.҂*<}S¦tlGJ_:E>F^8FW9eKz" r$p24Oh(1{WZו`N"y ͹Lz'AXp|?(,h/ [,dEj>` ᠣf> ;c!-xK"ǟS rZT#BSRljyBCZ.-\-!E?g颙ZS]g◟; _gOZe _gQwN'mG$H] սB%1+.ߦMҢ8(C!hGdr.iʈ^B0J۵<bP LBU0rY;VH`;sCⅨ';TY NMgS:.~gskilS"=Ĩ$zsJ _AU>[jd FN_;=wW)!$ i:3Z;|b>BmU dl\E)t|'5"rsx,^ ̦v SE7KUl@" oF]Te"T"î^"X7ix4yQ'оJEGc'])^6&ۀeΩFw/C N}zr[hJMD ֫0xIЮk>e& S늅 |n 򴯲CυjZA_yv%IE?`MU? ;! s- ¿P ^"hI j40ZOHaՌ}a 5wC}YbꠁL*{8<,H_|Zө uvQIJ|| Yb1)Ta&;p>`ݴuH ކ8p{bh=^ZAr&̶3Jw/ϟW o4gɦ pk ZV7,9ix&O=OQT(QNklշ5o.]P%m54VO =Vҡ 9 Qzt'"9]]Pl2++!Uc;r&Bt8I̥wtҿ֚{6]aA vƎ-A442 '1B̪GJ;>5x6hl1reـB(o&cd/ŬuoE08e7 ^T}/Ym]E]nm'cBuW=#8G:߳oĭ YRb;Is 0~rˠ~@reM1*ϫߏ, d1DW{MN&8" FhxоH Q_g?!gXH ہJumpCPK,BHgjeicp+_6FO\İsi.a]A&ӐC;.HY!Wkؤg8@vb5伅k1D"F;`n*xHP9^S9zPObjBs6.in5Ę#O_o\к/{mD9 Nږ`ReZe.< {YNDžc/BuU$:*bܲ$zɃ[$oU'n]KV>qzt-Û xTL#ʈHXSDԅ"0N{=Fؙ OVub7ʘFNT7Zs!OF-Cam8[. dd1y;Nl,jNgcZdVP'H]`x~q~S:qVF\/'VPNn%QzzJI /[wjxvDVfqcpez 3S#ZyO8?h0wy"F`-oh~Vɉ5./uDV. xqŪ,ϛ4ڒt(kdIMbϒ3g=w3O6?i Bԯ5=31g==!RG=O;ZFgAdg= V\3L>b1QwEq/-|_d6d`:f\s59õv[&nisEgS\NՅ0g$\ۺM8m$.tjD+In(,(jwDk2E4 ]*ѝq}tcB!E%LcFв\O&Hl{]5,'m{_@!GmQ,GigU\L%h<[Vg6,Ŧi pHMq[Q.s bFv!-r'lcPr&ܷ CaT}z>ޛBuL3d!6<ދ5y a {ĨY}z~. ߚp7-l(kt@O?yE{Pe ߈` *-P*ЁZŖ.Uψ2Ȱ?۹dw MD0^dtnn iKnlwTiVytbL`e8 > ],T~9U>Q9QGTM,/OEnmpΩRs#vG2 7dTq) I+xQ Hbe4- t(8r]8YL]b QP`=):H-UN9vfA#VQ jP cӬtk@Ȏ{efm5DN./qUfxCTA lΜ{)dnX{3AfT "k UAi _oPkjy%ƒc'{\]C0va3ȉky–C:(ﱅs};iQ澲l<X:g:T;q,W?ZN?ғ,>b~ Y9|7WР#/mEXW !f)UPL-bvzV1p+zNFÍG8W12\H+ \CXaMeAJ%=N}!`e"4M C̾1)` 'U%wb+~XE׀Ce1#qK|R15}4=`.4ީs| H}-P2 [ΚK-BKam쐢 j+I@рoQ@QJ{܋je?'B?e CÐKHMU_B45c[t:V4nRڟaff&~e1OgURhaiFI/).`ez't*> ;W-GN[6k~;/\؆Iy`>.ܜMˤz Gl1er)vL<{AG{ R f *ХXK:`jՐ6FEM3Bhm4Xh$׃Y|;۞0I\hDn]OhÆa'>SɶodhꖳHe26`@\T/d ;ȏg&$'3cbŠA=*jY'Y⁻~^M]S1@tnjGԄRʭZFO4dZ))=faȊz@@c76{^wm),GFn^UPBIxO{_|7hzGĶgBŭbDs،ߢ] !ki#JE!.ek7Hpŝ鹩vSYD9qV(ZZeFh[ #~^YWX*:G5v k3JԚ ?I/S/Vg#MMaT7jP^Hs @5B&f!_5F(:dO1>F1{lDj7SȨʯh'L_mV#r m*S$MkP/팂=c wN^P%zk w݄An [>dKӁƽ_iᛰU/Cɋ ޯɜ 87ܩLq5PF7hsھy,gզYR7JJC?ϴIbi"C>A6<3҃;k2fJ\M$i rNuڔa?)qjqMzhS XОL2hA݊f&$Bk;=V_kUڌa)MX؈W{W[)ߩ]gxAZ-ˆE*BwoŽzwAS[gkE7O ӍvWVX[rT(2 <ܸ5z&@1rI;09 #&fo{D/epCˍc9]攻2(*N!vx?1T} hm(1a`OCUIFn0ɡ'$Ea?5Qϓ;RX/Ow_Iq<#=~=uw22(Ki_"ÈT1ۓ nN5#jR}i(wTvfd'DRϊ_Fk&<8!O1 "-a|FƐ=Ni&tm9(loFZ\c!\=mE:VJzb0;,u:?tVԄ^:~?Un(J^{B+hib=_}@\[XWLM:0qpԚZ"Yk>3g΋ R)n' (grϳVV '(JMSUVNs﹠H{[iLGS ۧ=!9ͳ5u=[`<̮=ۦrOi8]Vkew 1N>Qz)iV7F(~H9]):i v|; X2WNXRA);p3VL*@6]ǝN3k誯$KӠqW"UqRX$Wmވ˂:d7#4c 3GF 76 pRm, gĺ˝%kcHLIŭ|4, +q7 T(zJ̈-}_N(˴,.gnOѪN& Ft~@##mďz8BoAo̩z JFS|rh<6ugQNG.{{Q 6)[UK=rT/L 4zkbh7p Yf;*.`6 S=}TԀ\j ~Ji Yr[Ar&Y`_R”,i[q>lj^ɚb` szgVyۙ ]oބ݃9sxx 23վ7^P~xx{1uK.Bp>z\yXQ+9iXU~\6:yh}FjTKނM$rmRBqIC2?0;O-OИOe[׼uXc)7kOzNmk@vl`([B7Җ9ȃ?`*:]Uϓ6|aA=ֺ;#X&vw19ҸB ʨK;HTZKyù+pֳ܍㦟S >NmsfQrdrYJM C_guDVSj Zz :LԅTNarvKÈVQ|~>I4F^MF5̦zw6rkT) ڧ[s@I^zYR@W܅GĤQcqy.`G"np]ǐ( %Yzci<=.иzхgT5hX2xs*j^(4IM$-'=r Šn.6їn,m]A{`J"U:ƒ8cboNd́jH`]\ZPQf*4i:zQԷ7;.Cj_Jjr. ^BD/*5gjI.h%;|׹68"fuhsJ)J%[ @<!Ծc[+ ڛc]slW;~,*aͱ1.,O'{ňhTqBFONo\{Xq)u&"6|A|C!@J,FaQcd>dȵ(&'>d8hdQ_ U1O_ kוz.5 ~zI\ S潓#zIsqF |T]F۠1pDI!KMce8,  J!s$b힊 h>2-@q3 ^2Xz-!;O\"{h,Ș/3;u@Z0旳ڛޜSؔ!i h|gD#),ŒּG}xN);-D2dqL5U̓w ZW٣ Y[XS%/Ng3IYUb^-&o@"Ni&1gy 5:fAӼ?6+1T vkې%]e+G籗ZHWl)w:5ƚ4 @pؽf%~1 yV3ۡCr.vb$z<1Xu=H n;vJ{)'v$k 8x8%B46eSN$5_3 $0DEԬ;+K@AvCHPjŠߠ^R[xD7"?\EV甌vXj6n*W Hc_xκ3Rm +fJ#9_WxC[="FW_$AL^{fS>pqIݰvDƤ;8MۈoZ(7mĭ۷b|iųt&cn<9#,͒딒-h]%)Nowio8#Y\3z"Vbpz|ګ蠚EpTҽ-74/rE ܰ8ŸԐG:֤PSUZG^up_: mÄ-b(/EaHYp%;K}uE=#Jqeif>:V6m /Cڼbł0#v h°y<>j+_:%8.:{2՗T@I7 .Cڳ9`Pi;PICf*CjmsȃUneȵ̷Jއۅ6AԁGQ]bj,K|7PZ..-:ʔ/9*a_h͂U_;tDTw"k\TMkenHn0f8ll^`Aq!t,_)~5N4~⽴ggz$f~Nh֥D||-$+b"$|pd,@!ab>CloIN\lJ!z:v6uܑKL+Z}S7i \:n7l ( vMk#_o2#q#-tp5+*W-(~cݛvkbnP҃ WTt`lc\Uj- HKXksdd[[I<[kntBvyw8fN~)Nr`{?R #9.+8 X#nARs8,GEEθ XYSd|];//ϾOv:C'n{B[Q&5=M(RoXgr])"Bh7<)5,6dOw{1k"k\>6ɽ]B{E-Qy!n:j'ĕLJƕf57txJ)p{$$!a8톉yGO-Xd!v֙z1IhnZgj|kG+7cgNkDZMilC% Vj[A0vUi6=aK&&n[ T?Xg:9/5][hلmb~ Up0Qd0`$jTk2En I )KM!Mh fX68jmmb0 *Gw7l^BUSObQ3F:lk!4tu ZZfې:Ky @G"T9|y^F%?;k.ݲpx¥Ejo~ifZSz^^7`=\R4\^8KLlh+_FE\pBo!EabSAPPY=ٽ^g<5^ɣ]["-&fܖ448Qkt׋|PpBޠ;=+< x*Y( ͏$mדf&˒:LpjZtU1n0ʬ%R uiIF5kPqr}t-w2bk_f s$}NjLc"}Mm@ %ҎvUzB*g*`HTwʢy~3\qDEɪ pOK3i!y #7;h-0Hv|K[{[Z*fBȊ}ynN 7%wr0\o37hRXL>+ ܳ yw͔`x2E򦍭tois։Xb+<glv;jYX 04yvezNHmOrؐ#kQ ǃ.murB'3D;l; <^ͬð  9j~f(D(KUBըZNX^6O׌ۣ;[,{v卖؂W*^vm׏)C){?Kh;P;AGj:=f&F1 woJtD׎:"Ċ AARG@㳊)ƕ(<}؈}S$vx{᝴HSDu3-u2ysVc<ƂGOaV]3]8H=~}$S̼;@o]k;f/qJ(#!̸No;/4uTd(PZ"Wh(܈>7f)0irL@4n,uhSžP-gdӍi|*$Cݢ_f:;{0øbV5gT_Pޙ ߭zܷX@G/ވNJY."NP3Te` ȁBđ߼ E>x1'TfkrO[C\oZC?q%,]9nnheYpPy>pPt\,f$UDmHIY?pnE}x3^ud]Yn&pE[G uRb6 ڙ( . ,A%%8D\N^=f'um.jοr1I tҹPHĩtM}lDc X{5A1s? S]9(;}kp]NE]N=8Ǟ5?K9+Ҩg^8p7϶j;#A2שl⎶yd#>?{K\&KkK'c0NJVf[7ġbxcT^:tTɺ>~S_M&-37)ry(g?GpCw _;?^L%mд2nwC^g ˺a]X'o [n|o:aqdM#;տHHF}Z>v!ikP`=E-XXm^Yb{f'gOOߞL%kɖHĉȹQ}Y/g#,+)L[_ ty^/KݚUNp0B{S;c/z݃="~>eibApjS21b$dIT 0cLŔf lIٝg/܆nu n}N_63P̦d{eϻ|hfj8X9%(d^54 z3Ka0ю <[y|̺D_U@q̮SYU= _*v9ϝ$g?xrMU~?6߁ba;zM̓Ry.{Ѽ-*a)M%v,-K5z!*ׁ+vPZlYc= z.zƜ/ny4 8',[u;Z_C uQ`;ٿa)je/M,ijP_\*EJ LVPoP], O?^lQH6 PF>%Sp,&}!]#Bs *W#5)OoG>2?kp4&|ykֿhUb8nORX9"1@sTL>4Y! (h폅-aq342N~Rf4Y8d:vlowFN4>B>oەY\6M_z&MBp;p F'ClUÒ_u|Mxu3ZA1s]2alWc 4>&-\*Ω ViS Tf1=dO`v§"+j{kFJA?I{^|.9{ &8i1^;'+J̸tSB3/9XK/4ֶqɧ k^mvI!t\_>5ie'Y#oϩs_Vj/;Cգ(L0káq?rhJIи 8?WvTc<+}%u s^uGSLX"|=Dn/8,IƳ,mܼ9@R 2C{WnJs5mWG5Q,Y6c3Fv `'Y3jv 6si&u&ݳaW+@]&G'_ L>!h{&A|$OvjǴ_|<&~Z\-8Bo肊+!֋8y+J75 -7"m$= *\kٛtܩi1<4nJ^rqkz|uf|C€QM?6y$ѵ❄۞HǙD0aW}EU!QIq:(Ɋ`>b,nbO<+C @ʋߍ vB#LC hV?44nj}Ci5TU2_]8_wyTgw<;5@}fٕ#$EEoO}zRVqq'fz=^հx Usn֞.|0KtG`ELy*y];3)fo\sf…8e`&•8󫨆IbT&?pL#Y6c'({H榶킥&?I1{nTHu$W MNU[uvf9Fcb 5\|'KpXtBvha,RIqլ/6*O-wYe)bYMvhugh;d z i9#jJ?_*zG6"0fb{ iAzJ@9rO;z+N#vWn#fL05Ք"Cm!X@c'j@?/dC!sY+.g9'td,FӾoJ>&o[.|klc 1r2OZ? G3 sMh(4~4atU{s:;}r(v(ՓS(tL5Lx t'WȜ7B-1VZhܽmI S{߬+0B ˽##Ek?&~h vK֢Jz G6@bSd,־m.Ɇm,*6o>r^ *,/ nOf<@[ȁCJŪG㜢M9CZ>t>ݵ%uy:f哯U{/ENxKeT"r@+@`g3B%y}GmFH͚~Ye;#ɫ/k6NڣMϽrJ(.8% 2Fޫcʧ3:5Sgs,V C~ cJ]XOʫ4\ q5'֬Wu)5ENHAi|!kk,0ZX[ѓ!7h `?Y.,hNh?2 xB,p.P4!L{R t[ح}u.K22̖qaT•Yhۦo7*BnsU ׶&QDH8 m H=:0|X#.Rg#]n{ީyd6YpvuD+{XՏXQq7K1&ʰzw Sq/lY/:[:Q?X5W*r@jf6w%+c32\m÷?6,웅:8:YyҠ(]K3zpj[{m]} hx7r`~}v&uziznKhxactfhKUҁ%B\7m֑uMj~ɺm83)Atkl^fqr'^FIeWySƿ%GDg:\ n@yDWΥۏ̺*.t6<]%!uPӭfˢvsM3ۚf^20nA~-&vP|=fy~q6L2h,;uE<#1syuʅSΙ)"gCF~Lv@UmȓՎY^jYq)xg k|*u(Sx7*RJ X(i}R+ӓ}qf\6q6KoXfts?.)^ttb;Z+y;Xg eZK:C4 `3`Tϔ%un_ E(r+a?LDcī]Yp/D"nGZ,wf OCK bDc=?yeaZ\F[o"Z *ǀ,B~=ܨ0Vru:Fvnw̞W{zOX~p BR!,`HXFC&ܼŢzCe"nW98 UnYV%;SxVwF R=£ êd"((ia761i%!1F2 ƫ5qMiT,4!ggyPʭk.W `IE—snI!TeK2,[ݖR~e^9 l-'i<ZcyXu,Y\Հpv6,W S[ &׊8{rnw 䈩\t8(O`NnG8s"^1pUT$g{%xFqYl% WO& j倉oNͮ+YxBfi& nP6UGsaׇbTOIT%}`i/g)m"Ιvf"Xv[w$}b9n+G2Xȓ΋KzȾ \ x軳]3u/>͗!vCȥOQ >1Rc{9o^k34Qg A}5P(eOyFurzL 1cJ<7E͸r]旊1)4➶U/&Z,tH}܇U#5%dv+t˻Gxjul)dz ؚ̧ 䄫N"Zk[Rw6TPC'0 $I𵅳';'"-3.Xb9$?kt;H|'\/\ˠt̋<  ks&xt]f\\ꊐiimm2=XˑX>6n x: 7iy:Cm(q rIt3oO᱅ 0"](f:S` Vf:C5_Oa)KX?@$ۭ)n9AyV\YA U!)2Trwb͊\rFlFx7''FԵۣ$I(f7H4+Y#^KvhߚL7Kp5EJ6 /-}`H؂ڕJH,_eI] ^",u\+2`MRP3=K1hvd(K=ʲ3 @Ri =2m0_I!wy3p(cgE{M%t3`=k.9nM(ʹg˵"×uy[hzz5Μ"ɴ@mΈX)0rwk7~F"|0, we$ ]δㆴuSPnÉnaY8կ=ʝW ;pq9߬;^ni5K1~ʧB ˃{O+0+0k2'a; J]I$ܢ\ZL xL \޼tXDavU6q2g\&$ 혁]/bU2?#rF2&3502Β҆ bZpCf5xtvV &}GIJ7%.ĺn ayߦ`(\cQc\m96W~MSFZآIŪ"2p$㬫ݒ'o&TfRL'`Evj W3EƶYN o@䌏rʐZmBx>~ۛ]S\Tl8YQgIJBT+jOއE+56 zs+JLiCg⧛ڻsu D)efֱC)ÑOnE>@g,Xzgvc<*D I6Ms%xM?i\.6,TZ68dc• S!"<.⭝̔-[zjZ<)]JrC2+T |]FrqWCJkG{-$!]H?^6b C9O/w ~ܙ <4m&${S[;eqŢ7<1ӪW$q|ܱ$zOUKu2o -VxJ Rlu;AaheSSMt9)=E|Mī^:"r>֧‚muT,: e&PbFe;S ;=E/e b2,|rlEK.0_cVBF35/#޽> `{&Y/y\.i*3R%GNnIzh!RoBh3s(z= lo `&Av`$2S*8vY&g. F]NA1pvYMb\adH]& lNb&.%bGB^W@+"Nojg%c&Mg!=twe5kN`J~dly"Tm8Xugw:8aScOyiEqC#nowI2c@f7uM/|TQ;NN1οw@Wt{F0C/)D֧NY VsXgudNbV '_Nzxv 'I쑟_Ljev0ق`-[ 9:^HMѫBNކP@Z@yh R9JW]yqmZ? p39GUky@T'瀙*|muA1(LLXȌxlx$=Br;_$~v 菗knY4EN)VS,Ru9{ fT=%]9:.G3i˻?aš.9H;.\'^˅)*vْ4Y#ykpI=Z0G PP5f?8; p_hؽ#SL)PFyѷ-B>xAPLjB>)لOZHS1PE|dZ\S҆{צGF7&zn5eQЬtz32~N9AP̖͠\_y*9br-]jYLƽGY ?𶶟DhJ5g(۴zJC:\Es?D2hx9>aDyn:;%Iܐs7t$%f5Tl536 hd 20]S4 .V:#+Q4b0%x\^|\/x5S- 6nw@X,{x9Kq=>I l>.˷ reUٿn 1UMڇ} cg\r2NTJk%$~CGP~6EJsz o'09)#g3ߦ~V5kF8x-V!&q oQҐO6իNR]s< ,M,% ՠYn#-&>ۣjN25{~).[U3+rgTR-MfՐ]>Ӯl.e]I`H\=[&M7}PvՋ<gLwR$M֎J]BZ<']\fU#J#.2c|'ɦ溧yȿЪ}}kR{A'L?vQh`P[J|W\ 酖 > ̕,:XY.~nn=#X0's>KPg==5Vjlt􈭞0)p3Q_LMdYLXG~ֲ eOVu"Pp|;(c$Rif85ZiuZ]^`d~ 1kok Jk|1fJ6qoZ?(!?]A' N(Pw5!ǻ m\-La|^bx@[=943I߲ dp҇V]O7z V.=lWMfR\p铫 lpowM9͆P@_Q+. ~U-z׍Ì/BнH`yx#X1MlKug`}*HB, s4ұ4|gDSWHQ_zM`^0?+F(׮KJU,:%`RcgfSu'MIk}X r;Ddr/Ulww, $m˕oI$mA*/Hwgl^~͈M CG M = 2(nSVq?cv/ANp): 6>I!6 CO?ch̍`WWPRg *[w*I2X}0 ߞ0=Xنܥ>ʬTfZ6/s\ H)`SU eA퓴r p_uKʅXXR-Nhkjܘ!q"" |E@`P 7-%DY*;NC*7k{)z$0K!JV^=F+3%_+㰺38!$ua / Ua ~w\*\#`o+kÆ'`z]}czAҢ5">-N c*xnMp:tÉGlhkcRN*gg1qZPtdQH~x8/<4=ZPvu^'0CXDzm<;4}~*Ev0:6UWLѤe(+0jcZu)3T&u 7XH .d 0mKg*9!ThʓZ`)5{ED"~8< O5Vvp_ta}?![5c>d~~69I3qqy7U> ϋg%WCq(;~RLmژ_ؾ* %d1=Lх#(jC;7.m*0{ `R_ <  㱷ƖH?&^PbK+4 a邸T/2k~ߚʬYNҨ y|<pw$? $WWzV}Jo .:jVQb۹ [nY_1Lk@jr^7>]tNry|rL}V^_EǪiwx{&j%lǧD1(”H.ݭvcv&! )-[֮AmS O,*=ZĦ]6p=t:3A ~zPj˃n] vQ/'ZcnhyJ r(P[W{EGrŮo3N|"9 fx N21FzO@SG{]ha][VjV xe1s+4eC`7n"CF#h"""@$Td:D;>bf> T/Q r|O$#"Y 훯op 2+# UF[Ia)FQL{}jΐfgNC a9ֿ)G;;d E@Ut%KǨ)*N 4fj22NG}E\-#*a+xPp:H-@]NӰ  w܀3懐c4HTTi &,r0/N5̹yQ`9mÃPK>mLp#,ZQߣcl:Ki>(}HSPc#!Vy5gwowفV'yo[=l"ƟoJ0ru?ܾrKAтx-GrHZGhcV"yA@nZw^`hm:63PTͬtr3PZsK6+EXdU.5S|'ژᜓ棜 ^ eEOE^}'? qUZyʌW\蔥PM2Oh"< +`dLf-Vr#.o'z2<)bV#n@'ଠpK {j3Kq ga.elNҏxS`}t̵'fm,cw[QPi u) #5RI1<i'EIܱ(r)Vl0^Amy/ G*o؟c4%Ƥ^"BuSQ5N/ t Gǯ盂uߤz~y^e? ]Lxp_Z+'ϓ6jg/y!F甞3΄3񾱈BD}F7@ h/ Ue, RjV9\YZpynGַ˝w n7zF^\w]ߡrc2Em&ua~܊QT{T_T3jIhDڇE4W gſoe9ͺTsaŕ+䤨å*dFB![XKa!Fv ^C`  ț)ߘT.<ǸzT5;&5ܜ3A<,v"oNWa4Yf.iL*q*m4NɃGFQږ ]j+(ipBgeRO\=M*^2o6PP%\z54`Tx"3#l|Nd`c3O z7d&)̌r%\nÆ-YWGȚǠّTu%\jA8F1Iqnة DtЋ.ܴwnj^F*|[cM5yLnAN>4wGTҵo̪hN{+gWj6 m>69ג*č/Uwumv?3ٻy<|kCK"1GoQ~'S{<cܹp,T*G@9@z<3SA#$&a21ax.di6V\p1OXQ4Qj1iHSꄒK%FVL̉Pk|*kO47 .P&eF W><'@tXITf6a0RV58- _mGEPp+B@ ZÛ9I~Bd11Hw&M oyzst"u퍲qģ!%ҽbRʋ(zYGlRZWQ(&E.{ "6",w&|C͠v8Ӏ$m2IyP@L^Oe~l۰K'Aǣy9H +p` iէsyd6<,vǞH7-ly%wX2l#ehWUb{n@ev ؋J谨rڨn9:i|mYY"_|G˷k(o } a_2,גez {IGpd"##(C Otaw_N\zDlJd[_Pz9+9%QaғﮐIt54cIa1ZQs,ܪ̴IgK8Qvp9F%.cb<;&fp" RV9Z.C|s+=GhCe>᰽@.jRU@qQw2}6&١RGR.~ibP ךg'⭊6xInYڟUE .etn.KhՕz5eآzvb;>-y,Ҥ)bazG5Ud* )4RR&hb'O:-99]{ܖpVanѴ*-IZ1 Wqŝ2(Ql6K }3Q4| f1ʬހi`coaa# :[sՁյC3>sQ[{6vi|ݓng(V@p 1W, )F3YWRq:veyS~l>B2EL<\&m>;V 2Nn|t$PGQlиQY;/lQa| #fkrt}lc bN*=[N!n:ؔ NjuӈHŰS'wzc;n' 9F㘡:,"k]g FpszK&e(m|➧EyA< O3] #{vƢ6VLķi#apnZnY~cvdf<+SlgY1F*,8QdAkX~LFB8HdI0W'VQxN{v@TexVn,H1: ?Che/! uEVuO\W{@g?Ku0!VfJ^W YuX`<ϐk0ŠP@*o0H?V|^TgW `㰨F[lva$2Z򨾣v OׂfT'zk!+$xcOXiYt2gRBjVQ>sؔM0L[hk_d#C&E|'Iar\/,jJJan4w(nljg@aFүLdkwek(vjOG ec!N%&OUi6Ya` `8! ir둆7` *t.kV]- ӍXT­ZR-P>[sa4h*3^IU V! GqHjE{IC >o{ Yg5wʗ{ xfZ# 12"Z|aOSui7VQ\RwWlZV WS D&#EJΫAb)P3E?HfǬH=8x:0YR1V#9.;aTp?Mcjsʷ, W M?!xꓑAJB/ymwT DB N^(Qlgį-o'|va%sRyۺEݎ & p]L XƷóxc{M;h8pyJ7#ZDp>1wJ-AR lQ7iPI{֩:,b}L'Q{J2[iOb\҃\$in&gz;mM%t[?󺠑գ~ 4BiE]FZ!ThzuzXOaږ|X::8Nlkx K0o3d,v/kj>?fJI짴F_W"ŸiFTG߶RBX( N)HPʔ$qp6o,|ho5M9§jIW)ÐKd{ÃTG|} NM^V+' X>e 0<(x<GOpsGRe37F\M2KKS1K#`'5 $O*UbK"\{؅ƚϠSC-kW~hKU%kБ! D4`W_[[lKYM<Qd^闧Qv]?[#2ړ6r1U]po -DJ[}h' .L9pI󪭄J0 7, ߟ"R5/5VO); wlKa i5 ǔWrJta"G-ۺTWnj.HHg$~`cV9>엯 vqM=ǐ:if>HYYa2>|DmZ,Eҧ(21 >bӒC:!uP(0j'V`# @L5MYsg$S z}\/}E?)sӄ'戼A44hq.Z`׬U8'[Z|pHsԛXXn5C"-8IםF%K1)SjpaM#0^h+8Tp4)UtX(?h/3g.):[xcbl=vPo] z IFTu補6|H5 #|;$3#4!Z."vn: KLwRo'w--|;F%cѺJgrc!jydn:‡?ݵ{,A7P(josz%7e>4w?NJZyx29L6gPn=!3AL[9`,jйk `p6OGR K|j)eU5Myq۶n.H}(P+-sy en_w5^븩-pF1o<7j{yWd+WݔCĐ0ҾxarIn(iXgQnQ 1Vdŭ`ՐR_J|Wg6Y][ZՖ~p[-Pm`eGAe+CA_d>iq^n++d&GHPlK|\:$e ‡wX xH)5Z.c߰)?zsCT^sD"?ż` ()gSʱw_4ΗŴ̇D E~B;Dg~>r0e޷k:3{gW)ȹGeyg 4BȂpЮXׁؙ/` 4LC]sɍ\с|ֽ;Cy}=[KR2:'zBK5̌FG p!%]5(aQcO?&y`k$J1OaQ[0nj1uj뭖yLyNrOˤa?N(rN!nC&%S4Q<i%ǺFcZmOP}}m :$ Kz8ϻ~=uՒX_5E`4NBZNKe:P֣kDN,?]^NmF񜼚5e˧43|aK3>D!`8Xr-nT]]TG'.z@JEtmd@ dC:&~M L[2=^ΨJXAR3FQoy 4A;ߎ ة7wfϱ9va >kT)V"%3 Bg/D[pJk% kdĂQi"y-rTOeT.[\~bA4\vf`mR ֖jBCAc304^{ΙĶQWNHV %^g[ϢQH) J;yvJs;" Af0Ɲ_HRpX  *9[[IN:ǃr;":ߩ &Z}\az d1Ea]Hd=I2'`S}Esqĕ{"ug fɞyybe$+"ckx!iԗt "X(TСuYd1Y$q"2=RfJ*uU4B?w4)KrK =Nlx́u+;u i0rۓwtg;22d3Jg,hX^ء@(qXIc•D yX13zӬq 3RӒJT-fL^mh1ǫFMQ~2KwbjR!pQP}^eK`/t?}pJ`J3Ws>c8}SCejn:cHg=kdlS!J7AR~:BmՙghB(G}ǚ J d!vlt?1V!(<>@\k5S)?Gbe 9Vo{*M~Q!b@歑n=);yݰAKYGaͤlO@94VHm';H`R?L^3Wk0 cZ=.y:~d(ugOA XM #cȝd,DUm<5Q&ʔ͕Icпčʉc'/֢:'.!~~†Gݦ]B[ۢj@6cL<qhz7~+:F wzʇ  ;ɩӹ?%  5H}!+Ì燍; wjm(ql#@;u`TjM+.^ثw3Wq=t4 =2Ӈ%;nufwg";#ANYacRogTT&o0M2KxʮF> "xy-1 $"knTK𥶽x.0x2UqĞ* &깚v a.&ŤFSD{^9}^|i`{ ObTɬ9=ƽ3 &pLs!7s4]t㲿'"lYN[$rqg1+eFiP%J#N>r),f|RNs 1ͽ 9_S1F9Ɔ$2(Lr[hy|(+@MԒnae56 +A.&ވCJܧK % {fJQyG@f/:ɢŢXf/ezъ#o#F/!-P}\^@41H6"d=5F_aZXgKKa;Jїw^(rϡ&gN])]#`{;PE!$;$}7 s*" [լq.9Ё30Ӆ]8WQX6v织;;vL8 y5Iv8[7x沌IlM5'Fɿy e`[9mQz'>L/KٷElן]ZoſT7ٍZn[5*fvN-\f0-9׾ms7^ ЀD I/DݠGr)r XyU3dGQI(.!W]Z4w.K1d iml9C{2rաj|~H/1)X?oֶp"e`kbW 3 J,NK/TP$a<, znIU c3ѿE,HFPS T׊FY *k`JCՂ_̥k/׆@aV?*ɾ8?`ew(AK=v&"50>@'h&Ϛ2ЭN^ f Z+9%?g=Ա:Y4. M!L>tJ1o7GvUӦ7l]oRH΀AFF깰_tl&hQ@X[3Z ) EurHػ,8Um#/T Z~uۢ$Π ~jlz1#J[!7<*uDQvVyWN 䣻)^Cdk:HHJ㣕v K蘳`dٖ&+'p',ux EK ^d`_4ej>A&ȘBo,0C_gZ+L:*zriTDk!:3,< p.r_oNza|<_XX ֣$sXV j߾+e4pnoTB^Fl=Bcp=#?*V&9iԌa:K_IVQS6qJ|S^Vf) Gդ{׺h^C9iR9rH =|䇔`KhτVs,`4ęwpSC 4,6_`o'ʴsNbu^KqF1nqq͵8.ZB[g?Ď|Vc(͕Jm 8ͫ%Z=»is'#tc,=NV舎i>37|ش> ɬ&^IL#DxH#]/DAr lzv~ d1 tQE;_[o=}lH`LT`$'"+l6AQx @!%+hVTȱO9c9! .,hIv"D#;ryMK˵ljobמ1x̪sі/#a1?ELٍy^AL:'-{װRVh}r/О;t:h7b@z)9PR6,X m_ulu :~a sh#t>ExiQ(Q_a1o!J"}u7_cbo@ϏA #a֜_`9;ϕ f+O(E %hbz" E1DEPӓ̎-tj/S$t5(Gw`zB4`)xn{/OGҷT qnZ6A-xd- X'ƴN`*Z* =xq V?a.˯r=FuMCi̽C5 "{}$#9CE0/g``Q/ZJ4$uπmŴ}R(*-P͛o$U$k" *Gif):0GU{m|TT ?&e$_`UqFc!r/CVđ>8$k͇&*TdCE'Td2/Gim3Udb &)SۻEK7{omwm%tJa֋,Rsj@(N.TFP+,RǎN;0?/bWPL3y*JNk%}.rq" OEvlsNn 94JB`'L YUl|u*KxRQwxUı}zQQiqaDxZ;9)xAXU+PnbCCLV |j E|"$ Tx#"pVc.i7 z1-mJloT. NH@cY :ތ4HCFIF(PܐWOZ-U~zi,-]zj^ C>C)TUAu֊3ڗ­Dj?ؔF<ʭA|l>egX?0\p lHڪ|û):V!vn^xBKP\(-D$Iʚ-[C}BVi)5T;LL/FY;m1ד "y2lZ_|/~{BtkM\Qᖽ4STjg啗:KKap;|~x5f՚̒DN:VLaMTDu-`nVvi$e9KM`UHE"l" -K'nvn ~'#/{y2wtaڢ햟3Q v"r}&IM,L!n "^7+;Ky0P(-HoU+cx@Jɑ'+hkqYG1軎 QQWe2ߦٻD.GI} J.d߼Ǻ Z st WXw"vZm!IB,^GnwhQ&ӕev7͖ %{A"rA۷vYq{/_i@}r!j5<=0y{̺B$~#K HP"IjlI'r (lG1͉xH{Ka K7~0`ffA.Z/T2[}3UIbߜ8n"gWZj\#IwEhş&ͤkQ7<8ރ$dBtb3 **l{QZׂҋ9$JnvŒ0FWf|3K칂kGaȧ/ڒ_7W~: \ fOum?n2߭\[g: ۛ!LP#No@HE 5o(IP^G6|P2FnnQgL][yH&e>~=r"s T~9]di5B>ђ2;KO6e\$ *?f cE}T`! I<5yI送r:ZWTTVtD~. VXc+љǸ5*sh3K\ @}Hcr=+#e *e5u҉Ѽot̓ TsReISh/֢iOd>jcKp#!r6.1p~1I ڳkK^E]\FJJnbML1] 7BOv_E849z jzNZ/P sO`F!-rCauCt22F5i@1 n$B}0ezZ)/vu݊i᪽]i/?{n~ȋu.UM*m8ThheUo|Ѐ ԁwGN<4*@eh guB)Sqj2GbuQqzy^*u1)O30 O`K"1Ac1d0ZHU*eB$">]K~B&MIhhøٷFV xS[-9֛56''vxCu#*L%#nNؠ\(㎡Iw'9kiκ?\BحQ Fb@V.>EsȎWqJwN6E,+ FYl+EET~vZ}Ki۝ AFRX7w"13扻!?2Bi*k~Lcf)%?wXĀ~sZ惘M~]b}EHԟej0kQkLL|kFl*|uIuĞ#47OG2SBHw$ylr 8tŮŒ<(gǧG/FE-n>0폨h > -&e8~dY4:{%<-6z9hv`g)DԝOzy=_lr>B]1`KvP*k˼lG/dtBi}-MDWgU^V 0TgcƎivi.9ruHH8kXԍ@U*iYAvNSΎ\[݆El"5?>?0kkry#\WήOqM%w,Z WI H 7iـ0C5Jk{z9}].ꢒߠ,kWE8. QJU2*nͧBc ]Po/]I~eFejXcBiG9m4#Y`z$KQ5a>DR&B~ U\wЩrGH$xT~mwS;RE^h8).:JKLA'P~Q GNt7Dnn!M lGi^Ɠ#c0HjxM&<ˋZPuHyeO-7ZIf #!,Pj(6VW= |hw%nv> 4{oc%\u(LyBDV6♧DKHS$!m"f j=Dn3F1zQ5_a~Wq+8"_ rAfi}u MjoKXjKg{t ACbHvG6͠##Z!WJ8+E 9@ <ʫ #'%=DhrM|E]?Go]ubԾ~=5Qd]?6]mHa6> XEٖ1ޘXV5P _ȹ1G0|}Pъd΋tHZlb|##\].}\]UjCBRyuM7fJh7ݫo>2 "fM&d/;QOwQYkzm=VUߧiܤYsSg7H5*MNzݵ!MB[xm}b_hiyC'Aަ2AN_7{Urp#YͶҚNRFE(1&FYn+;s5}u >sH)dM1=Ҋ g>Y1TV 8BPϜ\יB~5z9VnJuόKҼ.)ˊOByŸ礁&|<Ȓ!* ٭': [{HPQ)&Pr*!ӿ܃Bx$xl<MkFS-\t7ӓU\Od)^cTGOni,T0\(-*ѱHiSzUzitF B` <,/jNOLMAux0FHu"Ck]b` =Uלs2xOOe7R ӭ75cuVV|Cކ¡$l` K[ xYݷ:7^2e{,+bLRSg>mVtQ炿nVMh".F0<@ђwf0KtJK@pbҍU)v*X=(eI57Y>jTzŰ %(=93lYc Iw &:4S4\1W8v >G`0p\ԩ橄ԧć5tW<܏p,:HfO r/2|XMOk` !t)(' 2{י;EPWZB݄t` /<;|A'_Gp֝>̖}I犉42cCYF4[!p ><@:ԡT%3zbGu |;");^,Ŕ}){yBw\ k&v.®x g-x+%kk ȌRCt!@?>8&ntjvA-f5186۞d~1^8#:\5T2ڗ]`:1֕wJz?d[6v$xeQW( w2s;=bӺMy}r.#2/P%BQs݁3<#n6]q r=)3 * ~A뽒z(8|K:-tcJZJw/(6y45ԈK`} `Gtm.E8yAr?cVT)jzי_w6ƙl(z*Tq9u)֦ kf?nSG8l@BF뫢)F2L)Hv2 1[QH89Z¸j ໻ibbB~7Pv:ɾ~Mu:.y=0; crPtt7$;2 4q:ܼ/tǗ:$U~Jl Ua"s[YAºˣ\yH}xBXl%Nl\7*ߓ$CfMWFWHmtӤ;0` zpyM.GTi_.NB5~+"cxJX yjp$L5-d [w_@mU(O4^,ȟ, bKNDN7Bmim$¾zPIN<ۯ`~ dE@ y :3/J*o%;K;z$ xtI!WkAJ?=ɐL.n_Cҏu#>wwO؊m뙮sG I ,i 혝mr]%=#ӤPA߆gm$e܋%m_N4 1fcMMp My^k= y_gG_vf![ x˘R *,/ZI/r  ڜT-ɐ0a~Mm:ek|ow/k42%bɁO+9!xWܜ۷[cB~D D.@IV" )NHŤw>-ʄƏki-Y G{AyPz`T2U1nޙcCɐM":>hvmC"OM-n2yK[7 Ca8:WꆕAĬ33aoYw\s&ȯ]CAL,vVd]owZ]%P7Zc2;W3%dF5=cL#c>w$CJZ(>Y IKAL3.$򎑸D׉f_hr! |;3QD搡c"G֞5x;r $PԄ ~{:Sgc ?$X.ʚhw/[uHP}q201FP='_ܖߖ:m #2J}t iːǍs~IwrG\rsOkTOǾy_hz'\[91w/\\#f -)> b'ǛYm_Mk cl*#<*]o}[!lw̞CͻN&rLU ڿocyNq~s2n¼^#V$bq;5ŹV4Ǵt%YP7iP1v?L腼L*.>bW }xרr~A%ۍr`+TTT}mM*@ 708KZ9E t!3+QoWi+LM]>E&i>zPz;KSY{9w]^raGrhrL!z Qg}PJ-EemToHjQs>גUTzr,埤HT-Ѫzvϓf=qk}mxaqd;LևՊ]sbtO u'J:tIcҦT1?Aa++0R0[7xe1X@5lFeMf տ>Q4<%'تOƪt! ⤂G"ug.wʱE CD*xagӂ$Wh|3֘{s6Gb왤OfBz 酥+Y["/hn 2΄u@i|b`X -]f1T{j教,μ`92>+]g{Y8o"ݨz> C} #d$"eL1i~8XS(C%fu,'s,=誜R-b'#%ga$I eU=[x\'jQU~i);bɨB5dUL:˅u_| w}%ۈ^g _ݻ5xCKE6иS]<ɂ*s:] sbe{fst[k'U=b6G3*PGǏlOjۇc}ǻKhGc|#7@ 2L㄀F!000bUv81hEiن|ԣ7i[0qh3pXc|*?G |Q˰y.'`KQ:\4ޡ [m b-ϟD&]/Gspݢg[ ]84f\K[2'E.Î=/<YG9*"zM0mˮjd p?(t"D3 g[F A9mP1;bmW ?++3Qf[σM8tDA$AG" /M,C]Bf 2 zYAt"#tTE)!=ڪyHXnsvh7cf?a?71?էa3kUНz+ KӛyZ9t \wE2 7YR)Ht5$JdiC(G,Jl/}.LR,kbC$EMzgt) ьj71fCyjA(]L<)5%J33snlܛ{C_,F'bg@TqD〳OJ81*2L,9e F{O\bLwOϝT%V\()B|i(ߒ݇'C:[s4$T73EqSGsSSZb+Dm>ztuCly(5FfG;}ү6iӂ?r:gjHRbRA0Kwk0ۆPxs3)mL몙;b ]$Q*r  ԥҹa*`7Ҏy(Yo/vfO6|uFʽz jl a&w]7håj1sj+@ NZ)Ş >A=Xjsg`QrkYBxސZ e;D)O`eu&TwTK* ?Gv$aJ^GWߨ6zuÎ$+VT'8!Qj3Pb1Y!:&TצI tBAʅRƷ2oɴf`2Z3 tW.5xӶ3#5Dʯz ۬,e\q>{cA ]ΆmMq潪L`>se"/Ų[j(uߘ*ןvhz>Ng𙦢t4=)v')~T6B*?8}}%ijKr F*lH<>є FȈ*Drn;%]`;"X?o?Kpm/%fK S^Pwrl꽾T~૭tx2S@ :w?ˎO蓏0ҡtUJRF?Bl}" Q|F'Kls^1?0u/ʥDh~Wx#AZҧbٽ.Tp&Hy%:FG ?Ou\=;MN{(B71p'֟`$~\@<=F˹Z:4QG>r+)\ rX-Hwyq[d{.ب<)1Cm!їǨ(4p7<9{¡=@5elљfW/4}͸溎J r+zs}?xgcO%ңj[Y1vm+xi6f]wPid }0 4g'ƒ^0wͰVX "A}nn+ټXxi;*痀4F"Ra:u--<TsXͳUo$ #N||ZV Oq=2cFej[a-l~"!:"u!gJGg(\.X(D;/.k[sgA֛@FbŬZ?[׾,-@lzFs0k5(禖`ah٬ID E05U-Hʀ$Ȣ PEuަ D2, {\)2tdw(J`f9]!@1Qi~9u,sx;d`$.[i8Sr==ZБDB )Я/u)4t]xYJ:qQ xrޙI EF[vѹuTY|' sf"HBF`p~Ҡ*:`s;MFߋF!J\T(uʕ})`^3pb`ztN/Dj fc.$z=S7f Gak,:iҒ+pA_AS0-6!KCX"x G \?*2 ޼lD#鉭/ wi}/=ra (;@nei9J>xd$X+ o\A:UrՋomTanWvwQ(W ?HP|d PżxNyeZB@Ukp$g0|SMu‹S(hQfETd'oS ;>hkZ"TRsc \1g5/a._n/'^'WBU\3c Ik}ĩ zZGY5Tr+z@l]J[뮚d3y?DXU4"'|0'c}ODl ^E0D/8l*|^z`|k\FuJQAST<:J.M*6<9zH.WqBk5 ǿIqNqsCWW1+&p?'$;&lI O|,5X Y t NDncM{0?@062f_b\YSxQv;Y[X\ Ҩ QTʫ},SАI T̫;[ô.ẒG@zFlF(+.DE֕:׭m}Ż5B1LܞL"'Ѻ`J/xwEd$,QC}oѭ9#F5y_fuWlQؕٹ|x5xA$!B藖 O6a'ԯJNf /=#."}m79>X!z f!>>{"p{5zqQ_St5O8fsR3왰q3޹ yk`%Ud.GLMYk9~a<__uě3 j7r*s~2xb15[/@Q>(4XՂkx^mMJw tP?) CcڏG"/ dJ(=莥Y<|U^x&}Rv+q9- 5iKD Ym+PI/ O| 笑A4v`!rA'BJ }m 'rr CkXV1Rb?vPWX.spN )Bf$lZu hy+ i?~586'NEy '(=d}]9`~9^,CĀi`K!f/|§6}KW:4+S8Nj>ĘmN=}QKc۱Et18f{y~!#Dh@%{Β+/ bzNt٥* U~cDl U$qS[B,zB2_8qf[MJ{9}aG^L >U Z*zU|}?EVF(Tga}bp/WזyCpTz>vrv7)poP"4mMd[]ZI 6ju**ϠIS%HYHYdp ?=K%(i4\FV@"L+MV8dHJ|_~ںϴS04[B;0,1XjMIÚ?:IWu.&{{mQE4^Dgˡ/`-&!: W֐X!&:)tapČC']ΩjzY.u"NE`xFʁoavzAY%Lq .?6v6imQAe P Y$p~}4k*D2ER۾u3V˔3i3pwptd[wC/2cI~`]jvMxur Bp$e%t%pei$@NnEVHx:I'rse-f6ASj^I],!K=|M=]֩Q=18C=vJvQ-Z5CNE'^-l/dS}vE-N;\5HbڇT+Xwᓯi_*Zux)t ׳:)ڦ7B@WrWG|Ʋ!MNzЅU ӄ; Si#[Rk)nV]#ktZK9[=Qۉ=Ud5:@C33D؉ϨcZё4ƺ'UZC 9opC>3Su|~=` KnسK~繥GCۢz$^>Dr1m00gBJU}? 0a]|P.72l.kuJgvZ #1ѱDۀqgґeK`WY ĀThCw7LӨ7`+H~TmG!x;!< 48G|MiCC,/sOj$T%&a("K9N›urc[J ۔"ƦHH4lE4LfpqSc*j)I[dSq:l A}>+?=.K#jMC(}o0K{TuBA(=PٝSn8}1nBN{n&1xgci5t$e*mw|`1S"Z}N9,pLr9;[iɻ7Oҫ~h(CIhd\c9K\Xlc{NY2tm¶h@&uCTkb䵀(0QtiJK}Znts 9GF7axpTK@j~y*ݥ~%eNdKR߿+%_Aj0`Y֜h ?RgVץ[$LM "J@kn9'ˍm'$U J],%*ѭIWmaրWؚz6`ҥaUFE4Tؤ/-k d'`DJW\챓OD[klO@ ;{.ÔEۋhlHxʛZ4Hbk%-E:>&uS3:l 57s <%QmϲJIƠwe-d]>WoʴNŁRj3gab4 =oEkك|ߢn;+} ^ #VcU[%Ubvo4~@L1|nV/~N_tV gzJ]OpT xg?"NCWS5"{)-a0؅4=<R"oi7b#qmS fz-[NOZ aa$&k1cMG8_sm5}- `Ruǟ3,B*t"A^[QU J7{ML}[޶J.\%v;#D?Z^{O깃qA1wNwyiQ<];Ybl2>qeZcjڶ)ΜUSP瞳AQ~+#y Ț̨D{kPր̹S@.lxE9 urW V/׆2o;N`tX1yU?s Y*#ypsBu]& b=NM㡃CMP}vv>-kg7 u_'O\L"2fژ2݁ {Z+L)(tʝl1Z6 BݩS@Ct}={Mu7~tt:y7p1Şb ok0%* QԫJNg4zX iAw8Ѷi*(ŵ-BsoSkW )ɬYbmC(SVlJp0d^%4"7X+l4^ ֏̠҉{}L{>ѹPviH_zg'/+M;SP3wh"ׁtZy%n" 3J)]ڤ•u 7M4W$QAAvtEÕuFa@pw G],-o, ư0B}|b_ys+Df>Rz%u{ovq57>yD`Nebqy\̟A(!SZ@e12 60:;b/l=L4eE,ɭ-xL3+Ƣ ͱL>'fjbs IV_;Rì, ]ᮭ߄ۡm~{xZOd-i?͑{u cΦz1WM)YQZ_@6/Y7 AT3Dq9_nfjn'h3 ~4,)G'fv&Fa fEJ#2gM-vABk![Vdn OW{ t4_R=hYxwnH]A 3YOn^a]q?1wB08l<<]n-Xy µOh4:Zbt$۳뀑я͑5Tv8x;N,A`9䀚QDEe*C;#zMѶG)SA ԦGm<6fۼ>+"iCeG]F:"4$gQkY.!Djږ_FB?+.,(cǔ`36PsxÌ@)L9an}[rP `d9!<"[r\c|Ī#AM4P C^R'sZ8qSy(6Lǁ}(w*q$sFQQ\$+6c"Y@QVYU`ehN}C^_i70Z3 ϔV_JQ( ='~?.h 3SIՓ; Oy(^ih35DNV3kݯr:pen|#1IKO*k42ɔ*{N.C0Xaa|uoFSf8g|ĒQhؾ'yCG&%]YdlGtគG6*pq. B&D|FVTJJY?x}Bo9mSD`g)u:;#r`Y$ٴBgH$4i4f-3 (P}R;k&'vTmkGj7N~^vd3Ji}iN^5jY}H~)fͭ7ޫ`|a-z5X:ze1jHH`Yk0义;@ԈRHᇇ)`|=S<&$#p,R JG(r}l^ZlxJިBY:{Gg7%79NjQkŞR"AqJ#7F>VVypu&)s6~b-o\Ր؄A$kZ4Jsi]L;p&O0ԹW\+͟2c6BÚL)jECyvUx9ebՊO "sFܜ%X-+ӤR>Hoө&L d5eQ0`Nfqs @,%*XVxZ!sD=0*{d&xV~ +ǣ7T\=30JNv->.jdϲ- egvL&GwBnj\ƬA$a=b>i KZrU23[WȨm-!hLr8ȑȥOp( l^uNe#P[bvwD4T5!3O'XO 3uSJ?YBl[3G$% ?C)/gTR.)^$߇>X뛹Lb#,Mhܯ.Xܹ^OS[P3e:iD{KZqCԝCn%"GVqA/Ȇ{`i>* y@Κ@jMIE440WW^ Sj(;L#I F}Q̔@.N DF88)d >$|ԐPˌZb*ja>M~(ȠNϊ{AY]G 2۫?AIx:60 [MU [5PыumIq!s?zMLD)n'mcM`CVЫ;1 =Xg,Ivϗ 2 V\7]]u >v!g(q ,18 m!6ƨD?a.Dӭ9`u۝I2.}Apw}$9n?m A\xT(K&X^}6ZMuzh1僈RxѱڍP U:GUQ.L(s#rtA2aw;DKGU@Ps|sڶF?3#!N"oi VI#%=)9>Ԭx?k;:F{):rΏ$ޮeo '8Ղ<'Dƃc ЯLԕG8XܖS}zYG`@{g]XOrCj ̊D`ExNWhOIK:.1+&96yl7p4VeTsXH$ir:>`ymz;.RkIR0V<%pХ tȇsWJH4|y8вl5/ܷr8O=1Af[`7i23PX>M1`P)axTjpzj BHq&5b$+ѭ?E͛ՙ4yöF,)xh""a֢G FFbcPn_t| jOZĐAEڻ5nb}}{`9J~d۝ FJ0/j/W?ZlIsXNWQJ"Tdd \84BoFxIM1iAV*voL'^@,'&6,Լ/bȯK~r+ӻX1ZO$YYR刋mIûCR>P PrD_ˬ\e/Y l4 t,|/PsyIYmD&Rqx7BS⯌[R4˼ڣ (_5q]zLyD'Y.ZZW38=7TSA8߯/\u4TpuL#? 8YC,G=9e[w4ZҋOqLP˳lOƌ T=^sPwʇ^amh߹؜e0#$+ áW[̶5S8|m1xmIl3uI`л\Xd=0RyՎκٕEƩPf#Aj?UfiG=pС '6ɹ:k{g:{x{z̋ =$nH8c3zkIzN1`Y۟t7ƃj_R `8򎭳9)skd: XǑMc fw \. 6"4##M M"aF$t Rek]=ٰ>+y;WZHq & 4T4;"/shdjUvZAPR @)2qOr^6|?#Ԩ>EAYqsl_M]z~Ldΰ& v!n8cGZ*$ax6knbPN@* bvӼ_U"- %@W 0]O]ިC .&~(Q_\Y`Wkqr 8T]yxgVɉҰ*Rd2Z/k ݴ^PMo_ E<Ԉ|坲|YHC]x8J|RVcG_$ЫɜT j \ãK?PW=?S%NFKÐE6uxU4$P:̃oAc>$?S]TE-QCr 8TKB7cɯ8L9c@D8ݻy }j+t'Ȅ -k p(wt԰eu2[߀ n`%W߿3oG@|=a/hZ"B͓}?mKe}]=ujp5( 5< g`^+\%"Ѕk ҇Č R; &h_}Q9<C2ýw_ 2Np:eKO|G124XHAN6$H|Yo:wzV#FZ}gCBG ?YZO) Ze}0vH{h V0SL,jVoAtg5U0P$^}C(wE݆y4I/g5 ##xEwF#T~>tR%q[ vQianRjC2 rX 4'M$wuS#T9u CnAAf+@{LbMw-Yg1oڳ0L#h86Z;H1T_!Z41J{6KX=ø^vjWB8t~bNɅ\XO̔أa\nQ_Ɇsg؎]1' kn:!>@VhN_bc>@tpE\=L(9QZCP01yirQY(Vl*^@;L#HSl* No0"G"g-6Y?!3:pl MRx֕, zX^%;:\xC ~;/pá$bdt߬ ʶq ,Vety=9 &D OԼ,$ǢdMˠaxtyA~7+ ة8+}ptUBf7sЛMZR]7Ta"T s#sw͠`O Yye3]k˜!@,M(D&g4=t1tR`Uo-ޱ ɂ ZSbj6<54}%[KBMbF;LgӴRw8lNeлŰʢ VB :l_ <>V^0_ݖbd_7s4[$#A%%P\e3⽉S=1Gބ|1@~2ⴶbiHNăd"evڝĸ_ Zn%`]lݒb7o;*RHh3uJN9f25 0V ϳp#D`ϛں=ɀlJemB%>>#LMC tCnPl!άcXG?ogC69.tތ,{`1|tO%2 eĉo딪ň+xCNaPN3u_#i35z)slX%$U4֧thu۪n,!v"bY/[Ner)Oihe@w" 'n.Kzίzyd㬶+B,6v RK!C pО<}bٯ.A"8eNJth5엗-Y9ҥ9@ħ&r?(F:_%k0HAice BX{SBbXVb;gڸfpF,$ޅkEuw=D댧3Ӕ|V!YHW8"H_ʳƱKɇ݇bRW ?a Ebze4~}g:UG V+&xn: 2(ʌ.VGY_(Ls"P)B) !63z٤FؓT; hODn*6NՎ<vK6mޖW8|k=v|fNTZA{ˬ5'쑤:EKX]^AA%6ڏs [5298A@eӋ"uoѿ%NQZֻ6z {'rJCtc݈?ݗbQQ 76* qpħC_%>,OCsK`I TEHarXc7F!AZK .:QMG~[&L `J?#XR]͜y}+ݵ "fɈI}zh/YAXj+zhO9M,S*{Xb돛RCH]P0Ҵw E9|8ΨM9qH?zdsk? VtY탯+L}-܀Y~4CV$ Q?)Jp;5jpoo6[lV$W?$˭_3> H;r."exY68$Gx|'|7p8l$O/GKqg&$J%uaT[F50Pj3\pszk?=6#k:{ IhAVe30SܯxB9Nk?Q_CْXԏV!}|@N#wFNBaove^ųMHo`wp^3Ga:Jx} KJMq3/%%D nHkdM/lj cX$Ls,U^3ב?ssF4%~P lz&+}J YgRS*7ƿ]?FB" yƿ rNS#W6z#Q&-atzV}R %wBc6ȕ, lGDxPeK'M%Z:rݒk(د0}<a#/׸F31﯇g𩣏HȔTVhݴs7-h{* o7H L%Ag pj4%&5#X*}) OvzjK:MbxS8{bqH:Amb@| %nYgo׃ $)¯-ɫE{|VOh¡c>>K`UnT?ZěpN&,mDYJ-jou8K$/A 嬩0WMnH:i4l܄m!݉م۴~L-QD VIaYA6?4V+3\IqɅ uÀ$ؐtv)|!St Wd)x MZ.E~'4q5o徻zum%)g+"C>G n1 CO+5q~`;U!vK&Ĝ˶.Y/fWMFPlYLa Q'96Cu~QJ~cHb<,5$謽ggr3aMu?|x% {JlPp-_e4۩eIJB[ɚYjA.J.)VCJM i6z9yxx_ʲ745< D+7:1CI.H_H~š#m?&¶cozT۪f ؖ=B_9Q a`+GЃ'r!<*Ŷ5"5 sJxwB `wmǛwb1.L6hYrEW"}hO[le &-R{u z ̀GH#.AMzA_=jj{3x,Y6`YoT7_xp*$OQ0,ZP; Lq.|wxqV-)D6APkrMN*?CA:l9By+-z~,HNo0iQ% fDzʢ!փMoz5=#OH#oCnA߰MCLqPFÄZ2xвq$ܔ_!U)IWZ1l%kѨ]=EaLNNa_p Ocj' dy i ooDWM~lLV}9AF2eDaj qwKs7cTyTKxv>n2D߾mcp ,l4ãzn?cQ?rAeP9{HM#Q}gݏMC'GU<;44.5.6)I'>(+4FIa"R<:z$rl] O3b+2+h@p7~Hl%F2~-{D(;ɕP] +ٶXvơ=>@r209WU?D *?gAS'-z=P"~I8bj>wG_ B#II=- "F`I6T?ox>S(H}Х%erp:q" \*UoBL#.cXHE~]nJNtg܊YDmf ydzBv`@E o"oDAV4*̄_2Tpta7&bp *8o55)m1`?0>m3)b+- 芘>0 כf5{aD+i Y2PG?eIOق EO7YE.}멾:5݄Z;p^UP1:8)lBa~VnYL>$>X,GG:ɺ5Xs3 Ly5_ 0whOrnt«YU^,gnbm'7u1Vy0u^_Ld^pr8_48u(BY`I˗hL\K1op*$-i: <8l@rX:}44h^`\zKݚp}|0_TV[6w{ot'$6Ԃ͏?>Ko2d#q+9R~rG?KP`(MQ~v4c/{rzɠmVغ,b`+htnznv?*ZR%Bcp\Z-j>-n4;t&7 @#0a5 v=3!v~ԀkYNJDD!^z'FԽQmڼldrfy ;>y>R\13S ww'OPP}q22F.i\5tr5"g$BMT$ bjYiMzam5sMs*#fhO-]g2ЫҖCWmF'0ġO0E-J?qT޲+sS5Jd0ƀ#2V vQ9WCT`|KWX6c"f#ܬ嶨6Xlw-k4ޗ=O6uÖt/1oHhmpF>SeǮ*E͕B,l*8[Z۹5NC`Ke>2U\uDφѬ={ \rj7x,}H j&&MTu`y3ٟ`b_@UpJ]zR2`T{C<ӊSz.X(%lZo/Lvt :PS4Gy苜9djGH8:2`(@Jq\p v4ezUA9E1 !vI=wtӰ KN}$IwHR3ẵAQ\/0De那lvR]\]Fb3>wl BZ n=A^̘!^ +TZIPt&`;tg/VI2dC, ?2/.6Œ,:@:#nwEA9K:M Ƙ _n wSOzB=_ZK{ e F HȰo' fg Ve@ gcj*:=SsXw). m3ػogVƽi+]J5z4'ìBCF/-%Wb?0)6X9Ȉ݁z?pMsJ[۹E*7//`LUBUwk{b%Qiֱd!iHG/rS8AYwg](Ѕg}hrrGQ3)#E:ߜo'~#mV В5 i‚_=`4#"OϤ&t+O-syJ v{ _Π8tF{!ϲZ<|t'-:,FRw=ҌKbNޙq[axp DB^i2&oh83a+Nbc8ϰ"TEZN/+wV UNP`TM(h+]*yt9K GԄT%?oE6C P s-~c8p?Ϭ>q|2\?/OD4?RܠTcj;avG˶OA"`s":|gR,ڑF` ˻50ܠ&>'t|ٲd5VͦЏ5A|NMuJo^Ǵ%WA,2\':8֊< Uh ^:Zz6v~oL4K[ADßdn|=`C`Z4ŷ8''H,|EC`_-J|?ieSK]f֢JC!k npP10n,vˌH*ĝQߦ`zgN7`N$g{$-eWKZYK#IA5[ mnY料![_Ec]Mn\.Rf%1egh 5jOIh|dֵӾ!mK6_@4XdL4 5z;[_ܤEmNƆ (:a)nQ{?90rm`q)FO[Fʑ 9k-.U(vPʸBXq~*]kRr ʁ~~t;o܍0GkwU0Cj@fN mV{ aUDr5qHvl֣k| LiЎ§Rs> _51NQ`j{J@)o7w' 1B5R9`5,ԏT$ ۑ.=ҍ vM2TUGd9h@zLvU{ oB!%oXyrSd|)$:s BvUOE $Lf\,Zӑ$/Bx[mrpQ:!KX2[~xw%KMxx GB !Ӵ?bh6vHA* +'fkrnYG\<>gd$|bZK=L}A}\eBCAh1/b s­9Y֬gH;iNԮ/ӆSO3]_ ?vzkb"< #3ƻ;k,H[j,Ў.%.8ڹG>!23ɬ x%hA&ʦ/haVb'yʇ (3-u W<hjswOql’P6MNYqU _IG~Qݍ?B5$HAG)Lһ)|23XAk\&E*Qل%=4~Ĭ۔Ҹ+.dh^5oLQ6Ϲ3an`\B`220gkp%wKC@b[PR=rIh?ϕR20u~ɺ g|hHs]:W43e:S!.D(%5SOUѻ_ PGjQqyׄ%[玙Ɲ}&tknK"ϛ^̗.Ci <ǖZ1-ž AW2VʘЕ*^{۞փg iBd T%5x4M|65$;j_=:e_.Jl{ 5< fb еW%͔V<'_! vYZ?ǨN6prܧ3JcJ!, ^|٤p/F~O$Ԫ0gs&*2Po{dyLViwz8zjIrJޢ>P9f%B>6`AKuBh \fuO# 蟃xT4ZJUIQ1>:51_L)7HTXp? Ts/sy˘hbG*|'ܚ7\w9a؆)'dK=1n!lK?1/Gv?" `s^0? Ǻ.?&=P.z=ɇ< Λpësi ?hOW4: 'tU(y2yKϾ̎l&`#➦wW}xǓ+]4}7 9 cf2%=3ro5RW=J5iwM' .!Ӥ4z#Oys mR]X1>$qs,}?M)x#/}pxtwZ+DxIP]ӐjIjd۲fre%{+Hxmc)=,ٚft@?3V1lG{E:VAM}R#m@zd hp; 5jp3J(N@qHy T21yM>LUZA7t, Ȱq_3˳9* s}iZa&Bvҗq)/FȎ+쳫I{hԊf0H˳\(〟mE9mm_vufEW7IoZM]U: ~ ވ딙$(8jJ} gy(3Qb*(qqC.Fe;Β]C`.z4a JFLHU٬ v=h%O倸Wm~Xh[g9fQTy1w)>WW#UݢtSf{ C3DB6w`6<ޭ 1KwFy13h08Qהzţ£YG,Vz{*9SkU dR|)Ȃ69p S>G 7ƎRCXw qM'wscorHamB@̕E_dyt'_,֕*{Ľd-}%[zf.˭kwAKdh#' OjQs%e R٪.wg I빔 ޗߞY\:UXsAQa0Ke7]] ~*u:1wRHΨ !I1t^u_x[ nbIG?H,RNyQ0wbΠ~8B`G?^P96e:>M'%y}dr*rNu~6(HA<|dc'UoHrDƳJG\3k2:GCmiFH1G-&*ȌCu.*$kǑHCc΃YmW9GiK'=GϮ M]aEWoU$O@#|0W[Mؙz8 (+xՁ$tBUfMoċ}#pȴk] LyYQ .ppsejن'υ)^iN8C9^[g 5,m l;E8qA/,̻׵Y P?*87Ȩ~4bK}Qgs-=O**YpIݪZqؕx4}g~C:ϊi*?G~0sJP.Ȩ7+IңTb~L d.:l9iM¢1>`ċ[-lRJw %b{Jfdh6;&s66 @)j-A3΀o f~P}ݥW)zU}\!"=u|K%2v9U_Cwj M;[mUJt|(,'c*i8͘b?]1#ȩ= ? K=>BXi/aX| w;+[ת4Pxdѯ5Ύ||.ZMzs W47 aM1d sTrCQl ( mЅ>T F*Jdahm 17^߉*F̮-ܼ 'NVj].lRu2] $-v*,N}(~iԙfW<ʮ&ɪDzúttt1 H_:IXUFMe_'w'C[;Hs֍A 9 .@7$4لs6 {yԢO{qyo~݄`ҁ\Wd [Wx(oFzN^IUsÊj;C]Ja6C 47N[faR> ?`"ԃ/3+%?T!Y;|z FeHO%ϓ3}[+XI<^\ pR2:" U+xPՋ^͖==E˜Kjl~Ḍ=Yo͔8 Mf/M ՚yNMDOJU;)*JTo>Ifub[1 1~U }t0L$ I 6wݬ)&3-̩DU%H,ytpGoL] 7ct+'wL zcoawCWً16IclQ7cH+& էGKc7PP]YS@0:C@FW!]yM/@ad{-T ׻} #:FN{7L5:yd0/L]‘ho Grߺto>pSqH|e^TW_8^J-,CM_o1vQ@·.52v:(>тa2-P3aLyNsم~#lLΔ)NAԴښ ?0Tއ21zVvpx ch?]N-pf]PFSkS]!>Ap/LY{ch5s l[k/Po(^+g!ojI`2ȄPC={Oŧη p~9M]93HElRRǻфRS Y$}F-;zNz6cg*[ ""ƒw^V=e%ൿio`?p)ip)WУ,I\׵cXt#3 qq4 Ts+aGՑ"1(0}iw.P&PWF_ۆʛQ9+jH,5 )6w[J08A;|if[-/2O=T4 O1p[ͥ "a'2ːoam,!Pp܊uJa )S7wZe{<6-yNb7jzLʫ[0\>Eʠ\8Y~gʹ0HgCǓ/Aqjba%\] _Ӎ6@E f0%B2 T [ϚMQ6E5-[z.:5tLE{YƜ4(J-JaԁmYA԰Ef_) -j~ _XE pU/Ħ *e y<MڭSRPySjfL'gg9%- K 7saǠ^۶%mdg a LA+IJWLT65 "皬lmm{g~+&LQf3jkznDa:&9Z~ 7l5񚟪f&Ȫحv!9H^ˋM:dpVщM{NIl{+hX+?]8BcX?hdϲux,FY#bxXSYs&(!z[<^uGt#emUgYY1̀`odK6U;"%jpW3B nMH=|rr]:=MWU`A{r֋ݭ(UTPD-X(IYRK2z Uw.~7W@KD5ai.FzF )/QXfc\ ìG%ZiIi}?,$^%WCSC(yjZ<$dzO'b`aȗ(*L\L|d&=2hf[PJ/9iSTH4w.|?F!:፞<|Q[@[d%0=cy/V.귕g#8u)dWTxMWǙ9wSIL%ba"%6$66)}~$Yzub3E'8H&oZY"rE"al5`25\LEZ?_ G+xOhHEyAA4ё emwCZ(,XBx3{̱7BDNNP:}śbOQZӁΰu$t[[}뢔/ߢ`,"^ y) ER]fK1qDqO-݄ߧfۧZ@LjAkv)ܩh_w =9"ppp:{j#O'Un#bWn-.q&]MBJQeR3:M#*Cx|i vL@DT%cO)2֔{ջ҂T;06v>rGICy]MྗK72_(w OzpKw* ͟lwGE{̣qM6ʈٮ}Pܼe#kl1+hM: l;c.p"=#Q#6jll-UE_6܅)7$wAA".J.G.leO?i9ztBmǕ#Fo4 ss lW>3(瞝R5ρ'n$P2@SS=?Q fRtzUB=[[Q_G"r"T@J aۆJwx/s}^!r9R%զPK܂ʄN^9Z\Z{o4ҭk) d3;4!BkڔZS=Έ"5-%iC0dLK޶N۠F|컬-ߚU7h Y!T,T5^dpG qG4m+؊3'XQ̡1}zfKUtJ=:C|j$YtNU$;rBG)~_q1=U/nj@ڋpvFD!6 ytՔK(ej̓G^= W5T d c gtFYl{"H YO}!qY̧_3GK`A[T\(Jm(] oku mHf8w ѧ*:>j/)qptםP3(^Xʛ>kXj$ԿFe,Yk)H_r-g@\xvX7'Q6=X}ld!_UY A C]ȵn7Iuoj }qh+%hD?Gc)tV"n; œyiJ;3?Wa$O)/UX| 9{, gR#휔 z7E[XSۖI۸(1r)a33ݰ15  6kZn쳈ay{di+z .8G4+͍@O,1.Hb$谢,&)_Ps1\N[J{֧*BZ6Tm6+nq =,4A< WE{}dY,ӓnQq,PlK5G{w0<1^#Z#$baW*Cj2IkPlǐpq`/?Ru-\) [-]6=/Jk B7++w se 45'ގ!¾uF_>( SCsr=}cddQ$N[t^Łλ~ַ][%fn O얇*P K[>Œ܏!s0,lej1S"Fh%T2|=?C|VpB;2sYC\\qW*W a, cޞ=ĸQ@oi""IiбEjY^5Km$y_īUyd= a"{Q0B"ݶF`ym-<ŢfLz՝ f<|e" ֲžm Qe]8l^*~-~[`V9dqEI KEZC ɖ!k {gM7_*lFcY{aqW⅋ZgV#>ك;wtݘUhLdV2 YIk ӯ}_nQKQ'_O1zzx?MK,32b᪉pÐyCNZTFeh{6sJ9gw <K? D ^gEH0͊|KT6#@w-@qn֨tB+~{d>$j*)(٨^ pc$ePY c Y9|ӭp+C/ ۼ'DT +Ė?XY@.2}Xlk?N9vX PƔbri9."$Z PPzrZZ]:}JgA+to+8rG뺨*1K! # 7F.bc9O9p2Kӳ+uvf:Mc?,j?z ؐQ[>qSG` {[BJ-@੗W-XGhNm҃4gЄ] ƀQ&*Lt 楯&#c8nWow"#1_\l^+eJ(w~0 6&$nEtᴠbK8>=ИݜS4VvHD^Bj(2,_tX(N*\ߓYZ\0zN8<6O蠔~`ضz83l[{绿CJv֢xZ yZOOժcl nޑ6;UݖVኆ0>A:q G$3OBӃȆ,! j$lM(6+x\GFvi &G_zlҪu[doP3n_F٢d|1Q9W z 4!F.&XtuqƧҠ$/wbG#bw<݅LH bгzAu. 1u>+?dz j;6Mlg2 @~ВPTd 47R6uΏ4+0_ &+L5J~?!܆x@΁Irxbho&G5u]>.feG'=RrH0}cAep\DlmO5IW1%b]adүHFToPތ^OgS ʥbT.dsoGԄ'EƘF]\]MN w ]/no5UJ<<Q%QKe)-Opl/xҩ DB>}Q;G#( WOتY?1Ly2eкTh\XI&"ޅճ'tY|68?Vve*Zhv$30zTE 寄n =%,ZQ(l^/EX#w#eФ:s^L0P]P-Ћhr>:efWBdGffㄮʃwx_)ĨOaxK&JƬXqdt݅PX~Ɠߡo>Q."NH.iGTȀ>Uw?6z{5L|ܨ5C_bw$藤 Xy8+^OfDvY͛^mҦR0Fs7ϥtZ{gҽ`<&\S7~Z6I F@5c̅"_ (#2xuGdgpI~ېLPTl_i I*0~)82[~l =ف UծγN4ni?M=b92v{Z/&aўהo&,L֛wzEŰRbES"1oVzJ #B̫cXR+8¨f8BD!A/يk:W_{mS`n 7S ]_K|ۺ&ێ8)\c(Ok1%]P*=)du6zFtd+!ayނ٧,7\Ek-ԾeMuj(djWwb&x |h{]>_Z=h"FJ;>NU |G3[YEPٙ_ʹy'VąhUW-}Y:YĒ(Z6<TS0NǞ*#ə|!]q/90|K],═Zf0xtŭf?Rߎ;䨫 *,R?kǏxg\z(YUk#m7C5$C:#SMkeTkԜ]y1ð7Vۆ<7'4R?| C8ڕ"T[;!`*<ӆҹÖ m]0+ueN0U=6N ]*2F|/TCCEs7a8p[{}3׌BWpuo R2N;?oཤht]ousi@_X)$|:wd'= ;?٥ٜ8%gAd3)!*88( <LYQwqi{ECe}=@[iM%jԦ=/{V7$t|e21cꐒtuܰ (t {S'W^ŨUcE2^9.»5.;MٿpI*@>c.M Tۨ[AxiqC9ז`u(?"U}L]@MecEز)@hmU}Εnv򠖱L~z :xM7u=*ς5ڻ*+.?"O]4ۗs/PfRmJh楯ydQ- X她{*zG"hMk'{8*ņjqɏͽFnPoEztiAV^8 I[-lq6Sq1UCQ:k8) I0gƕY(,$;xXʶԊ(N(Ob> SZ˰6&_fyT!Ȅ%MB1?@.oSCȥyX8T:yHKNϨdR4y Cp C~PIhKXjKH]Ug6j;7C>)Y{)TR Q> wnǣ框kls9@Xy}F~ wLchs-GY(\$eM# /psb+;|EY;2UQ-.%OQWCe*Ȭgjt= ˌ/vM< ܼ6zHvrOkr徤MƦiM7GYT."RH{S@.mE!w)5E1uh%3IT)NN4:A>ǷPa%!bXE¨A_6L:ʫ-5AOnFf oH +f,>RҕFn{ݑ)!Րl{!' ofA*Q:(S{7WZL3~өOTT}|ЁJ/Oo:)9^ͥ;Pu5e'دL-罡.!8pgceu9g6)LGaƥBXCUbWY,~D_i0ȑyz nKbxtW :4Wpɇƙ>,t5%&3g|m?ԝ&)?K_-Fm!/RK5V-X:nYt2cjO%-VxhµzDe[A|Qۀ<kQ/Ό ܐÐ%kK_YK^ ƀށI]DS:P/v wѻ;/C$6O%HR>o6LYA!K~T31YK(?P-\$YCKƳxkY$+Yhm:7B) +s>l_gBk[#y@3pm'l.TS: Nܠ0z4U<>Y R?l]!:C~l%޽pGvR;}L/X=HaxKbn`d}x;PIg 覯1vĶ?YG 9LcƜ"̚qAxm )o;i>y:m+=f 󹫿=Tz;ׅ囆Bm]śֻ. MVlޡp -(lZVwaz A 9v&/i`0e  @}.v bWlzšE'9ibf_fD |Ͻ:Ip rK)hpE j]v…[# .C첹+㚓2JwIO\f YdAq;vgǡwJ &>w&46i_['ٜpH_e>)=ubN{^L7)}YgmnY]8yOPe`rb? $Bwq81ЄT~>b[`BmhXԛnmM.FƵ:_E4$W~$LC³dvi"Sr-L0yg'Op}V1W!xLFXBd`Pe =񫊺jLESbfc"ß_[[J"u3.>ePOʢ3vNb.k9ے)Egp^)ShIԴ6*$Hm(<&*' 2S =x8Ry{C.+nQq6'YbyVrpКjzyH߱~HS}usDp=M`!0Am(L=.Z t䕔q0tKA[~_ $'g iQn^ Iç^ 2L A 󁇃g؄x.ofDUB'| ~bXOAlM8p;ڃ׾aNnp%d9П;Bޒ|%JeQ[J6ٔmkh k]G U~WJ~2'6Hvǘ̊3V chߨaAWh5o0dvEܬ4rZ戔W]dW;2̃#bMeed-5OzrNGGBS{)h,:K 䒓 ,#=w%yC|G]1$U‡01}o8/KF%7!?p-mĄ-,]tEg:ks$yya 8~9•KCohoٷrK6H,Bc"'ڑP{1Q5o,@o/[YԄ\7-sj럆]jVHrL}nlWnمݺ]' }&<Q2&$r%yj<3[hcc%6"ii ь"x5߰ BK+|Ԉ@F`F }W>I9g[j\JDXL^CLG0`JIǡF6Dd4[Rw;:iO]~pcN߀E#k灎-⊅Űvܛyղ,˄6lz#c|>M9XXչ,{Or&Zhڍq[H]]?6WB,/kr#BFc?J{k D 5ǻ<{>8f*: l g`haGℝ1+*he+܍n*a&ypb/ W,E l}}T L RC1=5P>F7QE`\/ۃzwD̖}/ M9+ss9Z%aE'[-,yLKcπo>a4"]#m<5iP^SʟQ a1BH4Bas`tadW~"Oi$Hf蒔$BÞSxHFI,KL /疯#*#Յ͞& O0O*@d{{y!D+P;'ԓ.EpJ=FP:LG!`}h3ZUHG<ˋBঋ$ bE<+Σ J0kc9خ7't_xWzWL]ࠡ;m;pmc#졎ūt UGMvۻ-W)g[5w"$UgX{`.諝E^,4҅ĥO7 qRhv_Wc^~etnE<}BR5z@f׏/q#ZyqMwùgO]|8ڲ>)uU[O i_ Cz/hNu~ԫh6G0'q6qW&7(Fv3M-0ZV"-y_jD?cRM筥pc r|2m^ vP?xIfBI 1H7f=pC$ s^ QoIjzdIAD_QmhT\/ hb>ԑ>E4].K \r=(PZ>b bv(u`nO+QDOFk6a|yV}{]3G")C"9qwY(.4> ʋr`# +zd^}Ƣ% W vrttݤЩ tM';ǁ)|yiN}IYNm.X-UPB>8;cPmm߆Ƥ9P9p0nwfTD)7rНHN++Cm0^Tb?7XX3؎,xsjHboNw](={ӣQ4$^w7{[8-:42x0^My V"|4wZT-W3q%Az}جcLJ]L;n_J{@)mr*Q^qH|YG)Q5ڜF2}ad%LAay 78pUTEh14{KZ+iAL_,`Uތ Cȥ Y1ES9u]V) NofzJs$}LH?}3t^LЎ~Q>Ǭ)6E+Ub ;w,M 3iHG/sFk K'sF0.^rލ6+ 5yjHX9|,YA?p:ehtk n-EY55/#Jfz7"8URp,] vٟdH@9 ]>W k."7^J(/|Zlx2[у,E6KXdzh+W|vUP+rZK+Q-$GC)<s Z/9+ Yv׳kVX] dIAS'cb`g7W.^XggxKxt$>!-KMq-ٖCiBh]Z TJ *Ue\s^|[{akaEMڍ3^:5F> Ii-UKps}J2\$r3젼n~uPb~|1U: А? Xa_Stg/̹V#Y&ERW+(10% l*+ E4&]#O rܯ-J'am0i}=WsXoD;J_?@u:[qg~mQ,e5jw`U5]@~4wNTowUb"׳yp??y'߆uAV o,1I!KG+*kO$"0P}{2BG[0 )h”_['{~OHx fPjC(wS U12|cwI8#c_L&FV,z%`iC,!p4:洔*Ǘ{~<IMkS,:.1O-dx{3-'6{] zw֡F5b2E&HuʦĄEJ.@KFkP&c/ד_#֫3Ks3~eBGV-|@‹߅l-ɳ?KaSto{|YtNY(]w^г"퀇jBOYu64f\gdJrqSxWIng2v<8Y^ HŤrߒhel*=я5f_vv!.uUۅ蠦M:wykE% )!4E)_igj㵣ʖu.C&@xק Fq H4[K7A~q#viFҺ#H:Ǒ&&L b:o#ߏD#Gߗ]_?q(#`"Ut)6%$R(\0zMASMD)!i') ot* eeX2L١RRyeWCC5֛")*?t-^G5'3GFV pe,"DΝvl`V̊yA(s/ Rl˯Y@K!0A%e<_}g KJ*#EyNWde85HO[T;QJuuk-1 c+&shfljoq&z_srDʑ}=!USZi`Il$ $vÚzoQוm Y #ouJm"~^WTLJJ0`f>z>\0nlZ rۡ܅|ҬV/u_I&ou >Mcᧄ!٫r3ihJ{hˡWbҚ,VJH/ghC(3]nj-[~]x" A8ՖΒ^|F@;ȏ~Ä2K_d5XP̈́m2Yϩud:~ŴMdWZO(|zZ,$&5 #q l92&N  π7ޟ}[~-Լi¥47>awx9t\9,X% SΉӺN"2,lo=ĜL 7'&l~1ۻiQ).k=pDMV2}rkK28Y.R-IsܛVHg.{ Š!pEalCw˴1 ?0+(j3u#_V%93x}XZ=2;3!kn2CrPCXKU^h/'#V-s;i3Ls;hK/(uUxċh<`9FrNrhID!/g*M4IH{ <ƫD]PFײ0 ’ߔcR>a#8dսt d%nso t~Lk4 R2ˆ٫]4xk[e"\zQps'8R4Cj #!ы *o~Y >دAy)8}:, AzMRBHM ;{~'N^lXx{YF AF^MXG9^͎/x;}b"K);pD(CzפB 8ΠIC^WǨt* {U!>١!aEg)daR^#.y+qf6AA bm,% P,L]}$L)i_}x2sl>ԃI՘xd@*Q9Zp@S-:+P4ߘz֒A!A W@>lTI n]{~!eJ*tR5D3Υ*肪us{df7\\WKi5V$, V3[il/,gI0~3F>1ڡu$F|xRCVQN);0"Hyf" ~btk@?a_'#/<ZᆵT-O k j:uTRXg5ҥK%@* "m`1c,귆EW7#>.-AX7RƃH3hнZ Sӳ8xok⬚LEn_߱4X,&X#<3ɷ} jEthh}N!e8HК=;MuǿJ*.Exއ>83[ )_F`@%$ (Bb/=ıhVᬾ%t'k];1ó\UO4 bS[8eNսb}Fִ3K1v Ol`79o8B/xNΥ0ծڑq:s!tdòRL3<ǀeAQ5$0!|Z5aT&(WH &K/c˼ $H9Z=ߥa,*\]2B#Ńp`YGi$BxO\#V$yP0{pKݥ,$Kx0Ph  ]3E%p<jz)F!.LvDglnB+4_sNMh} L{:GLIYLq֯ H7l; DPnՄbQ ZÐ$c2j7 n^Y~H\ X `/MY4'cz}idq2װ)+3ܢmہܒSRǣ1]pVsM2PX| ~n' U1vT4ن5fCQolA-Rw Cd7 )#%vҨg3磋ͅkw} SIFs1X=R pB`\!fyal ú:AsXOz 4H@u.G) aI`P7 ,#(Lu})JO p8ň~$HbzhUŽ0;& ;, *c@ۚ2ku^DM=)і Yh87H rQ0ZL_6D3"֡8K84A(%GN\)!*džD╒P2 ]8h4Jqqi*`ZWhNRpXJ^qr*WѿO#ܶϚ&seGs"=c(TޖpteTZ[,Qmb{ddޟ݊i)IoJΠ<[X<,,J[,'2~:mĞ Lh00aEug '+ (K[WSlrٞH_F%p #j;xy2&O5@Ϡv;]\̙.T+ig=pkLpwߥߜqdjӦئTLn=?,xCK A%q!H۔$ϹVi*Y},acG}5l7Ulҥa!Q|R[-.(l{ G ,A|CjvJ?c)"hgڟ=9X7B6#~ehȆr"h@;ʠq1s'd!'L(RŘiU>^̒&[+'זW`fCvˏ<)+GMbei`,ՙ>sb^fE3ɹ|R&K fhFhϜ]7RKK mhH4j1^48} _f&7 Tl BHWx4,znh`3\ک[ }zm^J5BjdE~N{kWx7hBJu # ǰ2>%py/X"}y#ӆy]o"EP5jnǥ4VVb':0 7B֚ڍYig`3j oC8l J D0ωq`|?1ݘѤ/n 'mjnZnH|ՑS(Q3Exƶ,-42^ܸ[뾕JwTo1zԝФ=3(8ecc"m%蘂S >dLwpQdgqC^bO]W3t:Uqxdl0JT6POD]J5daPn `>#N[&50 m5Z/ۘ.z_TZ࠿2Kf R(Fo) w`Н tDTW73\r3 ~wXD*W-HP"e (]%n0 s𜧏f #.7 \teZ+0 O WuMqh?-x#qܔ93Ae`} .lv;Jr<`B0S=\1XXd/W81KOu ~$W(&_S9CJR˛~vRTȎQ-șCEAxǩuct\ؚ&L&swXo6!%xũ4 u|h:W  אEBsJjx.@U Q._`Ƀ:ԅsVF6)?D=ZڵS6eng|I٪np{5'*t^+r203/t4U*6BAK 99%$ml)kޭ8ùwhB-f)qJb5] n4 c~x1\"}@=-ʅ8/gV.N5sѷ }L,QZ}̯FݽҺLb2G V"h z}rw0"F@孥N.WcU_-؆56 ~yZ,̬Յs9=o5k.lJo%ѲRJޮO^GI+ŸQ[5ku2»-S|0}q^a>:]ĔE N'ft LJJ_!#^H5;~8SSgR~=nțϴJνNө1>=H̤\M%p\ˀt!+`Œ(nrԨK-i'K;GJd,'26Я>]o@qdA%ze(_” rTtUVQ~N+3HgK|LeT˥.Ox(,%1w<#̘{8 A!txi V{q`oPANd[U 8AN7cNgndPK8Dg>>O}΅hA# {N Pʖg9>9W^ئPc?DRɚH:BS3,%;<2iG=m$:@[MM6Zl;n}M"'.(q>ǺjwYƛ׉l)MF!.RF|%zzcIYm'JcxgAoܗƻK5)5hK~4vb |&%ti 3DnOrsf!U*[1 1mp ih|'| t3,1gon ٦h'G0AV&CʆK5EMݕ%ǹ~:_t wZ8:_/WPkLf00?Ғ)йPi}Xh',i(xVџhuXV<,}) =<[o&3V=3Q\w$\.7nQ0&N$jl}hK ~]>BȤlUu Ʃ2@XgVnmﯷ͑o2Ue51CZ^J8*Q?E e_j'z7vYi Yytk$b7 +PcFW`HN)UU}/'EEii&:g(E>iE<|)!4p\h+Q6Zf (=x尸Eo.' A 8Â\c%ف3ʌ5f6Sݬ6"*u\c)3X[[&`lN3rcQ< ' sݽ`d]IBLm2F6m-x-}gżI$T 8Hk(<6YqsUQ"D'7-Wԉ1J+K G%4(4.<笑pN5240lxT,4M묀cs̸5zӑ{f>U [y+Ky:7rǬZ P>\tvkFJ:"jdCbNW'Ø#}@<֚IcTQd|Ci*>ٔʯK7g>2ElbO~(Su%DZBm&|?2Mp#O\hdfܞ[c5Y䁰/>YZzEYX(nj'vY 5 IGf#2Y+yb@7QZDh'mh۸9gX# i:" ֕PIql?v> lw417;AFs_WxxZ!GGAҸ"RV=W:5@\&X_F{@ǒvEzSr=:c $1S`q ]g]a;>]u'^y6h3]}rm&rF+>-꬚P.^gُQ3V¡ǖ2 +epcZ?R|n|~L11]w-kRmjP^]H/X:A r{bbuofF!zd]c,#9wq?Ƨ& Oj ¡vfH }}=HM:\nQ/ *ͳ776Ϸ`)MݹV&Du~. Z1Hf?ƬCJnPV¿ Cr%4Fy1%g mIz9S}E.Kܣ/YQ7x@G‰'z RbnW4!敡X;j #gi>{)N54W~Z7yFk)p.*MHf1,hWJlxO+{axAB~z4$U $Jǰϳ0"٠8 ;XKĊ8&IVUTqSd?\FLT\&7ŷ-R=%G("%i>UJRs`WǤ)3vhGe)7C^ܝ) Iͤ8U}֩e !fmnfszr,P147N&dY-nq%x&'* [k&FM~k-6]J@7,)ym Q7$8ZQ3#IO`<4F۪_5OQ@%Oj9ʌh>XD-K>r3m(a`*COEȥ9mHN^a#y@\B)+|H{ >E}>H7 ;'g\7&UCݭg9"\0y$v珯(!a"e7Ne6VO핵,nPv+Jmk^5A" l?V+0s_F71mF ϛY,3 S ϒu˹%Xnѓâ"e-!k|7zϿb`f?#Oo kۈV}-%a>Ltɪi4+/p`:{/jmo#X1]NL#6HeW !XD{g$Qt|6OfqҼLfpԳg`!h7_\-N &i}6 Ӏj~ȄMK?HD$Am(~ۚ^t%idwCҙo.$BeZ>gdgZD{mWشx>QsT` _ oAE%s5i 19X#j7уO:y$GNzΔ&<^ M0R]4 nv"|2 ԛv6nD3{Y4a,jz1!ӎp|^#y;H](o^٢FP4q|#}KjN]PBjx%O/UN]bDUwlAfZE-^ XܲSu8M?ߨɶL:Ï/mU0_ nƅ Ol:; )5D^Q9dsl|9o__NGT([J ZvsB)7gR5? RplKAkeLyFPuN6? !i!f~kcZfsd]MD8kå 0Ϻ>ޞ]zd\7822c7PBV#[ ƍ&RU)֡?FO #[RX ҡ؃6~DQH Fyσߢj#h1p/dk_;qcfSt)[-S]hIӮXh|pgٽ=HٟRQK|pz- |V3;g(aձkeܸ~xJ"@Gj j!osJrw./c:#$G=wmG 2Kb!$ 5 3r1CZE!G~pq^g㣌|/H:58W7a37^6 Ago9n;r*@P$Gﱗ^Ɖ뛧™Mh1i`G(Y}Pϡ>'S䝍.6s*\?jT"?[evn:"1yUWiKCM5\?Z4zކjLQ")OQ(,ɒoR,9BԚ Nr)S'MMi 4vmxTB}]^U;bܑXŠU|cr%:ҫym*S'lSZEWMe%jn]C|_ F@3neO$bj?Ld^N"'\ˊgߕhRt' h*9 1t'z)e^%jrBZa&(G` oBM6Ґ2+*>H6=׶~&qOmRgs.!9@3<>wVص~{`|%w1NqUZ]\,7S]R3g@ʸ9>-ԁ[?E; .c{gA/B6򃶠X-ZLZ fJyGd`b2ӦWR K%] Bkq??S:LG1KR=a-ݻ"{2`įy?J6Qr,;Mv/.IA)ߣ"Gmg&_xMʱq$$ zD"raF`J I^7cXi{Pa[[ذB㮂о8>]!n VSkR i(n4?! &2_;%MvyJ% qm u7,MB lzkz"%S96Q e-^vY ˺Qk,XeK9!\oNn7ЎRZu3 Rr]kz&='㕥6VhqkQ1\u?]?)NZH(eSӜ+:FfIH6mXV7V+9RqC! </` fa,Y`7, pӧ)YXc\u)=6V6mILB1lB9UՐ/:bרʔ +l_h=\rdͶn(| 緼|1X7HO3hƙ5\Mχ{/`bӮ JJ{2H앩qaV A_Ɂl'2RS]C Jš:`b뼩I: EGY=ה\wW*ї/J_[j]55cIZŷ^T:h4"pLHz'#(zrDźW(Q)n׀zmUfD_S$3YZPBٶ][en2pHφu) >B`9xOE8/n s;x?y\Mn3-<`ݖYJvFsðQ{Eڬ3#L"~b9e2:)#*v0l?VӖe}* S( 0.q4s$'$WѾ$0ZvQNkwR&h0"(S>g d&v!Zý3n''su>@'.{/jiCh@>lCg +JgKvu:XR$u?_R sIl輒:&"U2x|w57נzYH L;OeWC@CPl$%]U5LbzöfuZĻf7md*QM#'2j6DCmTԶZxzCqZ_@J].*ת()a 'b}yi| U_do>kPt;6$N 79T!$\i; pݿMBMB5;ECh!5>ZFȘ^Rf"]uli BNt_-AT%${ϸ?qHipl>!Չ zQ;&OsS!n-%2$Xߣ>bG|zu"c<- t6HSV"f{P0uڝQc]|[%1 mgGGsb6%uվa7Vo"gZxEz =u~!53'f^e`C2|anB^;"+B#+ 핞~ ZK9vB" ުZVOJ~/_6f|)XTByǬtMPQTJˆ o,hw&S^ ^ LȪ`䟹NI'Y;Н383 F$\zt2WX:.=ASB O'ol&yg (ut#+4bL:–6v0uv&e"R J+;$KԥpȲ6 /'qLFJlu9KUı3/QA=caٔ&iM+oO$оvݯ=Dq6Ї L yBg@ς&L4S(TfHEFj2_ ӧ3%aCAȶ&6+XoX8uvc 5pa 'Eu)ԭ8a5 .i"Z|~+u+~Br}L FO*W"8c? ]6ea b  ?d#W#p;[ogFqD.Bj%2( sW A dkePTfj1_r., F%svnqSO"f J'ʞ)t( Oj.Ja;k{-}OsZ-Kx4W$3nO&9Z(r€ם\B$Fw]g9kN]+n~ihI!gdKhGkPМJy0d%>41}0s>bDTM/rq5␋U*Xa65:&񷼥+nnRX:u$cADƃk8E_ZmՕ6.I7Ƭ &lz]?b%c\Z@5 \ɠ ܎s[P@ݱP6*Z8i)y'uőyjy\zAr2r=`!YGh% QJ"OEui穹i*u V~5kCtG%,^>l"'lؿʌƂ[OaPןH#u)Rs^˿NAsµD;r _p-0zz!'@A2="Rh >67ւzsm$xz*'ME(I`y Heߘ,ȿցc b8vcFI3#{P R]u?:́m}f{,Ex0{9q{2aG]u30f,NcHl_ r7^x \g[SI{8+W$J2G*uxÞ !XVd6K2KCbY_u: B0$? Vo 3Lm~N AFb&İ@oۺ#>-HrAi7&]Hq\u刾%:7%}7ҥ|>7aNSQZ2҆F 7I^$<8J4γ.sߟ|S ̮Ur_bڇ*YKo>1+P 9vX fUz\(SL/$+ҍHSdRxV]ܑL=PJk[긒VPz4ïzKPooVZjL99Y1o 8CQkxkDw隤EZ΄$vߔZqFR\C%tք;  *24?vtXXlF/+HM_|uUu+ "`kBᇩ$ ԢTٽp~z;>Zʾzh^{~|ry]osLjaxwlx#Dr;_(mD^Li=Z:!?:r Dh X_K 'ZLL[Ji*hjAlZ˝LR"_{ggfզuVUr[-#YM˩UV1'R,DnxX$wN+l؍P% #xtFma-Ult#L1 acʯtC/ #^/׌롒7Lɤ?ʥK`"cK39*Oyjo2&1Zorɗ<+iDvPakWn䀆v[7y.+ J]7_t=jo?p_sOw dh[vO3cv OΒ*%IhPL̏0wvO\0הuFR__ϟ5]&");AND'p0\[kٷ3<ء0vVƞgfQӐ>9,A3`lY.݃~E{Fӻ͗(tW?"LmN a^ p á]rNGa("F+,nwHnfmT-ab7lHe :o@3I,ɥܤCK*Zd<^JuIoz=Bh+7>m6|>W\=C=t1^ppUc˫t_ܦ[fwʖ%) xɂc-խ7PX7t$As?d9N/eI1Vy#،>Tfm.SO-?W> UB{sWK :=2Ee_qu3>3F'-^QwT|nz內G"P$!_r' 8(0y?sH킻N- pe2ΜvŬQù;C+&xxY0p-=i4iεz."~n=iM=+i҄oy}8̢7NJ خ9D ¥q( O/s%}6"]Vnx?46" ߋI̯,/ 92eH#>f`g3)*~SS)/ !) tM(̞Kldn;&Qk+y^1"P]Q9t%:8YOu}Qk,҈ڝF. Τx{rO%a 60Ț[ҒcהTd VӪB1td億 ZQ;gMhK ݃±'嵲 I@ 5edgZE첚9jּ]+_ؠ~GOO|8? qOd! VAQKp͵:`%Y2P;p4VE۰ߋy гߖIxUzD`WҢ5bJӫRSCtHN 3]_`Uu,fP!8 m;zPf; 1[7&./غk77A%B@LKjFC!]mv@GT%t⻸@Q26:_u(#JߜPυUapNi0Yȥx!\xIzE`Wr[2.&%W-EV;: π~婗Fw!@2 -z2~4BGfHSAQm;p.( 9~:McUN1PBKt)hSiUԦ|^Ta@uw&cw^>x m3CWwX(Pv "ʖ}4UX TEk1EZF|GgB@Pm8II ÷OX$xw k^N\CzxsK?EBo͠KQ;nؾ`="͏!*6I}:OplBmmVICC551|/Huj%=_G6%yRa"{Bpʯd,ɏP({Ꙉs_uaEt/z|Z,&S=%ߒT$(ʎǖv"Oݥ'}{ٻ=WH2S17VUz!z|U_ uM5Xb#+.#\0; e]k7nr\sT;Bğ[g2C؜DVt-HSEO໶[5Vydmqo-cbIc"d(*wfèv@zx?V%$|]\җț=RCp-l/ַMpݷ|zpud{| s?pp4S,fӈnβ6~1WE$9Hyn-UӔKnKk|z*W0+c ~AF-Eg-!BՙdROJo؁GoKm?qX*ܭM199 \u}ZL[pJ\q64&S;)tk#gQ܇Gi\ݤ #U   Z6x6Z9k 3|V\9awױ@N ?R3ɋO>n6 $K,^SU¸ ~IV>3 H}8h'Q[5g+Ҙ/Du aa]nO9NO'dL~]URN.9E·}:u!|.mjPk2p*CSs@E T /6`(Mmq)R/> :XŐ# ѧ`Mڔy67hF9`<1)2 H}7{Lk6kdZ"1F#2n@ʮ8#_ }'`PF%Y4g. 4ZFujk1b7lPxr ?8UuV8/ԉD=.Hc˗-$m9gFtn2-zFCN:dhLryl26?hleBMZ'iy=gT[$zҮZ"OQ8ϘR]|:K MfT)[?{Ah*j'1 X!H:)7QKx4y\Tjr% &H6b4Xdtˑ[ɭXiq21-6=/I4F "CZQp!2d%|-meB*~F9P"IAGb #KS(d?՟,\h:5Pr8)e#"[+a3X {`ODTF+t̩ V/c{*Mm,y_^!*8y&u 9苇]6bOu bZO SSfo55~ط\r[vyC[^b|)P1L܊>v','HE@|}6ڞtdeNx-9:ج«ev`SJ<*Hߴz8_"Xl3$8 aSmeb/LuBSn~XWoCRnr.>ڵrbsȞeM S?߸kb4x >gm0+4֎^VߕL받d^MLv2"FԦXxUFFsG鈂\ZJvdՁ)Y:׋(5*׿1܋ZLO) |׷i"IFdbNNcZ.&}B;JBwmڕAuyd t=,vOVkhGOz5搦 — 3Ap3*exx6зdhBn=bqCBi zv[gIwSP]TڑLiDj&gHX;qJgmz{zq1ɇA!ױfx΂t+Jjxtyr wJB67J|arRQId<6h<5~3c°>T/~KםES]<~EСdUoRF;1Ú "9 P,% QFJ $BB PjVjfUnFy'WPč޿Qq;+ZN2<bB ͂S0G  Z@֒+`,‰o+MxT@xpMZ!DBc,=Nw=$qP.dod]^cc k˓hMEHT#)l9NqDcg~4NΗl u0B@2?* @ ÌnNE+il 4@8vgic8ʢ2d;)&I5CN0^Y /*ӏ`LPz5s@C VáL1$|HTMdI+zڧ}[NQ0thvݷ 9:.Ǵ-gMW(FQYg)}Nٓ ꣖OM}Vj+(jzNQ1͠F(G+̊k Q%6Wi\ 73BnW)6![=bvC;%I: 9f_JR\oyFdtz 3%͘A.hҷb{9z|bdfw$DG5!"م|G\"cU+k eKpp`?BTZ6[hIuleTRMpt3.ʹ^ [LT19ۙ7~mtfe4 .(WE^칄w͌Ep#Gc<]bg×R~2?z!:Rޤ)_" H4@i852r$t X)w_2yIsԚwt^˗G\JюMuR"awb ;N:~o1$f!Gߣ̜(t]G`ꔡYS@%" ])C"I~̃^jHL쥚do8C$E$7HoH[>M5,dQMXI|z)P}ț-M$`ϱSEW]?it*ZfK2a$Dg:mT,(f}R6tWEXs p$8$H H}kkQC1qw1@0OR .Q5*ʡ9RAoAƘ>v>ߎP [ٰQ ùPc۩SoUMh.޷gʸКBun.{Qqqb^'R+Om=1֛EOIe=P[ b]yMnMՑlx=z6_}[I8Lć p27c%o)@WҢbXzd 4Y6or_JaŹ[Gk*I `̘MbuIvv`9(@ǣofbYb5=ri2t:~&-;2S8YD+;A8Hw -|O"` omnO1R}qB[[TʒHiE'<{>)缚^M}QT>5hEC{+{qd]%:0eP~!\?-7\gEB+-NԧQ、Ob`KĒi 9"]t!Ir6`X{+w;{]w+89Y=W/i^?ИMZAD--H";9s}hJF*^b-R:KX>8|U `]bo@k"蕰P؞h;^K.[馪VP_xB"BmO ̿(w^(S be#tlv -\ʹޢ>dRvz(Ҷ ړ^VB=")(LڤE/{26/\ź^lٟeJ!&480ͼ,*&"84k4({ɠZfYĠ]/fX)Z;~O# VɚmKf883<4A.-Ӗ\u5[REțNG]=DL{"~enIا_5_b5hר|Wo&eWl)?w1HHBJ߸`9Vcw*) lV " 㙄ڏ4hKoQz&c~kdqӫ%*Wx&5<;ǎ-nfTǁ8p\nP$`};I0SR7`IQK-{%.9 ;TV+DO N d~v&fsIaӶ\ A_\>.D"W%)٫LȈƅLbs=B HT9i/U|Ơ {O$@G,M}NK r̉Wj2X<ޯU7*۰0Ӎ.S? 2yݕkP W䉒43k=</MPkJyȟr3<:4>H%e":ƢPtXm^֚*7V;y>nͶM,⬜ڎN1P>>B8/Jl,,=y9s9%Ej~5k=$42%4 uuһE33尰u/|_rP8JxD3 L(8DRx4`3.2[-MyG{|ɆHAWCvl51dIZuAYIs)x9GI49f*4Le(ô<$gנּ?e6T; xa%oϞE'kICy)ռ"A%dTJzh& :{385A L %fxEc<8M6uv{#j>"]3pސpSr4G"D]Զ6DT޿&&]lTby-|=🈻.JKHHJq\Q|iZ-3#t|, iӏ<o1;f&uº/ iBK(%ѫ_t慨OKG`#O 4&߼$$LC#"kS@Vi=B:a #2O.|4axÚ% K:uEk^Ga{EЁgfhsݑ'H` 5Kwu1pg *f)΂yJb!宒'N)4QtwJr ׽Mee-u8!Ē U$6B=EH\ w(r1Vj9\Ghvo]="Y EXLeA?>r+[ aе2Չ/A/+&n~>ѻHP[{l 2zf!>'yZ9dR0b۾U`c>3완Px ypgnZ_9}P~O}֛KZ =jhpv| )Cj$ F@*:JCpmC9w向8<7s4QP/ػw\e85zb?8_AjS,cl+-}8w.I/0hxgL<#L 9>UH[N$2> 1#7p>*UKuk4y =Ve7T]!9h0nDY  7g$!B Bk2IfxQ?e \T_mTH%4)"M<4\{߰⁢}bg@ү%GtueKj>*S:;9u(Ar- f:nq:GE|}ƥS2Ç\BDd2?=s×aݰ<gtp44=OVII# 9f;ýǣ笺2\;Exs]vEdF*uJ tW;m !wt>qKʏXP0Uۚm'R)QyֻZ7jgD!b0U]:QtsPLR3YeٯϾSG@/n!E 5Tpٜ~z&VE3#H_͒EHd~'ּ<鑰]7GQ%7F.Noc*BL&-F3&9C KubnBRzvn̲Dfn]5%/t9/6n%"$A#&@G$2J30>TY#*2Xḛ !0r(KUt*O9|Ni0AS$i- 4,25T! jJXQp4ײ*zBV9iriيuM,t9J!Y1p-;ZS2+{~лC4君5r91N#5h LW9u¨pq"s_5 ._PaNu:Tm!/~!W.;cPNQ_hkPLAXlpQg 6i$le\\ ?̖d'RI'bn B!yWrkOiS(Xݾm>li F--k97>Fl\IC/gn4nʜ^x\RyUkmC:ь(Ql%##Lk& KcqF+YG9f]CMnnhaj?/EЉ>4 Yv'nP0tʇw`=kXz#de;'ʅw7G-?N,`Y= ؜~mƄ5jXW\@W;'3T]mFOqp^Ό|"dE5=#Yul#%@NcM2U|\jШ+.F'-tS֬~H~-Ҩ< nxfCHCKo3o;,k켰@sxV`bI-QeD*>g&I> Cl@'΍H06o p$'{hW$bTF_Q>4570 5?|V̼x gOWИx- mӱ}ʁ2-RZ2 9fT)_<^cYXL6|+Itaڃg\ME2JֶSؚOoqm&E~}uJH̖ z )Ϙn/φJTq|Hں[KBuBv5.WU`mDwy? C}Mnæă `dOw+]YҠS ,Z }sּA!A˯Y] Ǧ^;ԝT,f\68b>)2peetАV=1xodaΗqRjUͿ c(Ղ" oy~0nH3+>EZih$ϖn _&rM /EkYϗ1RW8:61Ȇlnq Na"&8fzmR*]c||+6 $h ,4``77 5_WhxQZlA/ڀ%:de2-RMRۊ2Z򁟯^aWg;24K G9h<,uMFPעTq%q{>L~'14nBK琬HfIM[}"1SmeD8?vCfQuَ1q}he'sB#01~HRb="Z 3݊t ceX萗G鏳Kx_Era)OV<.ĥhM2ko? g]DNʿd?) ^ _|f$49 2w?=Z}͠@j:J!+߈{)np #-mWkS{W??"z'2&ˆQz"4FKR윹iv"YU|R&? 0`O68:؀A.`{? 0:Ij8fM-R=tUl%]D+a;(ȰO' 4w6E{J=S*bgf;?tXrtO8q;2{4rc)#g54e!n!(Dӎ` 1(7q *J5ϤY;>">_c Ei".BJ`rWp U;do'}mi\Y6V}5.RQO'lìH6aAv 59Ǟ)K'/dKZk)Xt¹ yO. Y47 '6m~=1?(-,dl3 aI}/I*rk9m>YZ@tx:>ޱݿkZJR$T᜔@A?^d-V7  DKۥ;B>u;ۀ AׂRLP|IiUI&`!8AM􄄟w@k)IkVuҰ,?j1-t[t[l90ĦKj[6OHG{ !bcN,Q@q| 5`P8sqo֨k~/vnr5U)p`1sl!YItңXKΌ_x5$f&HS=ՠm͈Rv0ӄM)D ]n.<˶73ߟE7 H~ք^ʟ◿ېB٪ܪ[P!35 oXؒK3_}Z;W'ݺ'NM` OșCl㺫;eQZ/,w% :#KLQvDc~Bs `Z*.UiCSP6ͧ1%)ph[Fgm#<˹k8kȓC6k`.I+;g7+u YY)7 LId uj K&n 8p:ni_-{~9Sf"!+䣢,*d 7\@mבF6  PE0BRB#cAI{U|/iCNOF U=\P/\[#ʮEeK5df>Z4ȿaCclW66]xײ)Vj<ba7]j'lZo8稭Mce7TC*oW": ;ŀhNS'$QSWmC #e zjz!5ː, 5#6T P8+Lm^o'"V6[PYHh]Vl(5xy@)oOָLEXd, Twz2TRB11"w3a4w7¬m^ֳw:|s徊`U?rLhIwl2 L}ņC^5(UGE}׭RٍTK#l(T2tP*6/#&PTbrq-xV3W3[驒6ݜ-"m|SC 7ȽgAoM@scJUc߹LL_etٟߵgf(uiq٤ `8:DY_BZP#QfXLᓊGhvW0fA>1d8rpJA5*!?XW5/;C'洁VԢ>x@:N6:IAqoQ9ӌc'u`r)nh2f_!"Q +f $w = `fM_mz3a#LvޝL7eU%]0dXbxI +VH$ 3/ª&"3#>lPwBdQ3 BG)&Ҏ BU;|u{J_\&nj>" 77_<[seoaWY>t0Zc9 l$-I%!m^5~(2'2/'z CX`m*י9,!u'!+Հro?Qq$&<- N 4i@ 0 &&eI8=--0Gη_Hm pZݹXƓmoȡcҕM< a=<Mf7OÌ p/M?7Œl3O>yf ׏J:70!rJ⧣gh~h|CFdy nWZv8F@:\e8*Ň's<> mGz ='qzOY.$ ܔ T{~l9G_y<yKZ b ;At#.㫦tTT N! 0$Kp&,<) cTzN/I(=nUIZBTh%'S/悏JAzO@9*iA1 c尪+Ԉ L m`%eiP5F[.Wl.o`leվZ2~^3h,d|92Ye%@أ%\S,.2F<ϜG 4E)DsÅ Ri-餏<8('oQ)1B#Cmvw=ynDSDae!JB Pb-uE[Vg xNvImPQuŵm~Ԙm1򺩥o(5BrPy3/*GOPs{$H1!?N{9;04tNu"›;U 7bɈ5s耩Z@d#?v+7+UF}{|tU(Ztqڡ K_.> zHs%!`T^LPTRpދݱZX{ t fa1W%ٷgtDVP*8uEja@irƍ'~rcϐD׼L0ƃifYcNQOЧ(:=Bi;;nIhW n*GiLIf=cozjvcɐKuT;adjSKQ*2ͬ7sSTyQGHU(@hU!0c)c NP4m28q J6doNEǐlf2>Eg!&[.X7QX[-^Q9S ZNN]V+rtaL}\zuj?4ˀBK:r|1\5}?QT>:ͳAׇN<8+GɡJusu)zab>JH||LGZyc: }Y4FKهqJVB.9leM ,tC ג<}I5ۚOq /<1k_c׺!qw4t<k򛁅wVWvQg\sDKΦИ4ͻO(]/*$󸳱HQȮvy(Ny`( e$!ŧ_$Yjkd({ ިPn>Cp?XF,f9믶VnWlwY[ #'!$zp髈 u OiG 7kzw6s{1N%C0/9oL }=['yNkD&2"TAJ@ECx=P;]( >6STߐ[%:l *\=8A-Dy&q N90/H`q6uTo,Hσ\cO07x}ό&$A%c[(݁*pTM|`Dz;5%$@ڏ+cy>yIB E6"x405)72݊馻8m4/)Ug?Mo8O\Gz1_+_:4E[_HxoBޭU r%ʩ"@t_w NcEc]J;0_3yL~`!p#jmu! IA'; "o@%Uz4.Fs6z*byMo'LBOTN 7F'+5 @ꌿRvBPM(L9}DLp ZGB^61s]o~%h qѽFwd0-y Hb>^;Ǡ;IQw+EY\ܦO+ÌO5܅#kudX hqUbO6Jˏ 㮙8mm.x&U݆)w$ELw1]ă{ctqʙ=Z"9'2su{~Qe$Ъ!s[2-|s`Eș<׆(\quڇ?=`WCݍkL.S:*/TyB'KtU|kK#{{_˸lӶl'\i;${56hq@Oe#s/zH}%C:[_ϯ˴z%*݉F'F72 C2+|ctk*oLi&" }zC*;[E*2%f6&HgK#\:,̘=b~_1J`X4@~X쎃9 ~y|a=uUP("|.]9L qhQڏfr"Nhm~3[^K2No1& 4W!;̦|cpOʶ;>y~q8su\(1o 7+( {'E`NUΦo+_[ IU u;ԕ[=G֋U9$J.O '% \Z;%w2wvd۶\5p{V}]No*N تMY}!VT`퉲!=Kk#gSI`=5FF?uM*JU;ym]t&Eb}PxʳXG4b+MC@, j.~#Q:$}^keBiCA~/Z'7F2+dcBlK,<θ5< ^.D^Xd2 Kbu5\FZ)p:&>]HNX#BfNꏀóЯ1L:l;'譯9<.15q8K>gn9ySGw}]T/80\P3"xW$iY? <᏷tUM/⽀I-J ![.JShP[@:ģV M хWvk;BDaX_}}2#8~TwG$[uraVCe'`% ?c(o`4#)]e+8$9幖)L~SaJl>γΒW N20+ ۯDz2?D%v`2$DJ O#|am'Ok%0 ĉފΪ=󻂱qvMϳ4+8n h%_ۀ5w`ǥih^sP Bh0g/d2E_kQi=̢8%>ϟ^LjgCӭO5K?~1aY;WH3J%@,~|>Y}X~`+`r /_mlt@=kXOXuZ0Dе".ǐvc|o~f֟¹,DG`I(?K68(#mrʬFm553{Z1?ekp"QHu|R 6 0*^XogVnOpݎ>L!J9,k=)3ᬑ> _ Nd>9"GS#;=< 7hӌ }:ݞsX!nk@l w=Tx+rCqoEO'.Tv79Sbc1_ t?vETPŽDdw-X8en([_n8?B0Ek*ԑLS[,((*"nOQebeTb$s*߿T_Kٛ˔ Eq$ ۜ/HN'OCkL_^d(=<%%v~2MJ6/H +BO,r2zS y~8L`*|`CBܝ8sWUb)3Yl?} V"F jxY3po[׺ӵ[D/^l=e f={,aV*=bfYC_]=#,tG$} prb?%DN;Ot 50Ʌ^XE͋߷lMpXwGc$:^,/'7jd:㶠RM88a$K|2~AN=Rtw[^ve=n&d{>lgKSed7uHc= f, ݖn`3=n*BHlȭATBs%)+e.ANc k:d1 D\&?%6"Q2CFls /ѿojGt}.JCgUp%%)4rf9 KNF@ `K*:lC[± vZo1=sMz;2x|MkyKᲿGޖ!!"0ʻc~}axMWLGH5=921w:a$k ߁e(yYB/$\(i]-ט,x)^p]ycKM!}I%9^` xs‣@s,r1 7qx>6&En HAfǂ.9jJjM}eyף"/-N>t8m0Hc^ ls*vIJ{ w_ʯiPX Ty–n[x>S,k|;X]kn}|R󡕊17ۈ~қ2Yڣ_/j.jWl0Gݲ@̞3O)'c4>,u|zwȍkJe=QWk殈Up~k|u:g`N#u34 ~$la9ugJ?T;lrb:-/Zix1(/X=xn8G|e`KiQoLmZxۢ\@]7DlHs/$G(o|O:㑄Rn*/QɌ4PZ;H߬$)>XЫH?̧ۼS0(#I> ;$Bxߘ?jSsz ^;J]VsywSb9K&Np͍mÛB~G{DFk黮;D~VԚ @)}u$] W%Ca(ه5(lSi`t\A$,]4s?<5C^e4upw" Hda7[:WBΆ<([ƑC0jVU^B׳1QI5ĒBS=k$(}Q'y[ ̦v{6zTqe/U}K0#VEpPf)*`TUR.y(Ԋ):#PT"WA9Ohw]VO2&<2TJ`=)ss##-`WP*2BW=~j)z\Z`fq2mP${ # -}*=tz({Ϥ*Y|eVpLg)̔{xqiZ(?㍒sJpTp8 B'zmOR@SNJdw ')t:U" Ų 8 m/I6ξa2elxN#p|te2Ɇwɧ:j:L;Q6_ұw#a?M)+S ::(ͯ'N1~:=lĂRT *^Xv!k@w(unHR#[]LHԸ׬) VeZq\듫z):l4 }jUwHeRR=(N] F܄ lQA`7?BrHal6NC zm>ŨPZ M`@ (鍗 qF(ah>WVՄtQx&t l=B~!@**<0Sy9 NV7"m9uˉ8kV'CqoR)Q_'D%k\:<0a7%5Ag\Me%[Kh̽>Gn#4'VҗH9(k"e6h6lF)˼'YrK]>P,)LA;IE*=^E>`/+U5<·vN\moHbIxs0, /)vE1c,ZOݥVM{cU4tWEHe{y0 Y^`6 luYdcrQ68u`hB٢.&ڛ<kjE~} ?2Otmq`Jvϸ1rV~TF(-gLX-Fg#m4'մ5v VȲ K}Q⋯ަ#J+ Z^`7ã00|Yf2)'1^V>㨈{Wk~FnsYќdW?>GɬY%*: ccLq>(t}%G W$(v<ħlbnc}JC/&0PPSya6S[BKIH@'T)̨rfK pĢ} }x#\} C1Xt6Uf^ku*`ڵpmC^eg"z}ΑUo>Ō|7.|`͖3])P6~ِacnMU9q!5ENs*4Is] Qg)zJ*CkRpC--!ٯ1ve閌Sr'P 02-<*GK-`/` ivXV{xJ5[i{͐eb3ɭj7D7D+ڽ؍ gX|40 {6Km)8 C7v*xpW5|[h'bnI^- K`ɺB/jrYpCS|d4) 8A~+ZLW`"(nUg)dd7k5\u/Daw†Z:;>V%ҷ_;GժOZUK0p9ynjjR<\8hffd뿳0=A$xA@a"[Ƞ!RI!.ep:vQіܓ8081Ɛ ud r_Bp_)Ss_}z%q\XgT v0j佤H&v\P<NZ% "Q)X9BS_>^X=ktêqiډDS #ߕXdb]m%;)]ۻt/ϐ9S:N g_Jv W,Jfs)V YYph,~PF*vuR2Yj9/Kپ~ ~!#=LM }9@VǴDMa y۳̠W4? sq2PSp¢TG9ņ6,>r\C^sz)i\ (]jʧP6pT2~TX R؀kQ Scr)%IMl:lqk pay2@f:]%=U:gQYgP# f*mjXDz晩灪ipRTa-iذш&}yaevր֙~ͼթ6]$JڿEX9[sAANTj7XֻЂTDYTAp?zɨrư{ Fl;SwH=,.;AIT<ɩ|:mt\t $%2PU{ [åO26Gշ:. {^ fؒíwEkfIFW$D`5m >"aA$Q6-U:<&2#|2.M^קb[,WƳyۮN}&X"[R|!:BL/CȟfDf,* uPkAzٺ7M^ }^*R ]94Va*3%Yj P tߋsn h&rwKiŀ܁3ls]rz= OįX[0E'pV ]|3; =-nRpXN-x酠#@1<HJYS5{o{D IO ng0]\]e@c3Z ]}k(c43$21ń8n\yէZ6L&AEPÄGMѼ0áSQK5֙iF i1ٙx;@%s22qfxEaNnďM9}k>,Q~/[Q73_)f^D]|@WzW);M*T,^zB4jO9h~mp_mN"Y39 Y}2/Jx#_y nxBu;i&G9?Sh5]KcºˣjyBHs^pun 3A[ۅ[I d!m>܇ /  JO<Kilz {$ n~Υv XU:fԻVTɽ Bn2?7GQ& Jдs1gqAI?2fZܗ7r]qEn5,Z9sIJr7ihIgPg >N;h~폂/!#Lifj:@zpe¦}W#uaL| 0S&-_2:9nwt5+!7}^ !&[ k$|թ+V`!mn!۩/DqFshHő +&!xdD{LF @j Q4g9]#r(]+G},E.%L̓?+Yf4㍫Pp&meoT %1ms-z҅y";a7Sѯ625]:hĆo Ff"ʞ6,\t8qq(z`]{؆'q *F(]$a%* x:Wj.]HuSb cڝQ*&V^#~.V i>)a bj[.={Lh!h~sPd=4b'y8S+: ,X Nٺv$P o"8Ι  er$VG,yŷNw%&mPr˥"GRū1pB nGRCGJ_фYa')Jv [4a ueE'݁D_;DTO6Tyoe͒TMQ*,,ˇB"= L(3.4IGV!9~:7X)o4iP嗫vAeIX]6m,?dlH[N |męteï>h=9v_{wte(er]η/T/%ά6Z ⋁dQ&4ff;+Mr+BB臮CȪr*f˩>0.Z`^BD EgoЮ.mY窱Sq8“*Sg/qaXzJcq.>Q\-3z AlaIC&^yP( u?ҙT!`MIn[(at DqDr Pn ցLAגimF;܌n/fҶIy(d;ґ4)Țf%!WZzCpaA0(Qp%$Zc%1VIlnXRףUxb"NӮnn~ p! ۾lqd,pydl+$]]kb鎕Pup/X{DEpTV'}4%ɧ̉Z[ș6hyy)l )5\0\$+= oE3 n!?l  = ^<$ F""{#$3b|ޯ!`%{c*Oz-}p|]s^hQ)P[u3`H57׶qe75= |Ӛf@c?C{( ʖ5>oy1tuTp7 c:6nH9S-384$\=^'\)`5P 'GEr@P03Ɋl(ۊ?'ws|H$)4dȄ`\Z/9㑰[2XwZg%tןZԅQC^AR* d.R2Β3K,V>Nǁ!?>Vd T[5}&d#!m-Y3$MWbM0Ta|sQEz^fM~h }kĦ$v]2I/v.mvYME4>CMw;mYOP?hd,f3ښqCF/WGu˱ۭ3/_0Qӓ^@gs e/'%ĐH"܌)T#KT﹦+@WК=^6îu* 9_FrQ:՝!Py5>:rOH/?1#߷wr>o]+~Pu z$'aBr9 h)R|$J0mrJ ug 3m0c 6aP  ;&n{Q47r3GwXQ9F%G5ӜsȰq:1/@9XK39-!l`d <f: N%â3@׾Νv1 ,+YHh܆?h?|QD˝I0?XW'$1(H(On*Kx?"x+⏑*.YHoJ4_bdqaY Q>c8i8b&\ˀyjQ$'Oں aHI Ju{ C`s)z׽QW;ð7[ 0HreLK7s;%5?PT:}B;Gd c>z*O};Ug>|8O@U%>TZ*K0gvZ}~`Ö9td%l0;>k˺8_jy6hrgv´m8>d3@ׁZ{@T.Pf"v/f)5ś)_69֑|.56r0H+:To2SWh̎9|jc[r&({d(Yr uYaL3s] I&'7YeZ$mN>cV ү=,u@˞ ( F@)|Y= &k6y۰ϡAVXۂ3tv ̆ANYb.35,iaq@i# ڒ^60%&p'F򂡐>f(5l!3N0$+`ISG0ЉYR]b#c3K(9X&@~!,K^f T vKsMԓhzPy_z%^8"Op|'.Fscpʜ$ }I )0pOEDڙLs6C@PΟւOͬc<3h/xr?yq!}rK"Pp8Nq!Q f}a/ sbE!5Е:f9~b}^_R&_'nLLi'r6>MBmLεTZ,maHGс/4KHqM{|^99Rq jȝ`)M`qAQs40JnB!~%f璣+`J EAFBU '"*ۅ{SzS$ɴcҙ.c@Cc dlZPJnQ}6X fJ^J-2j$%K+8pʽ8\Y\ʜPQґpMnXYLk_Sܙq)DB3L #(z܄(dqp؃p B/:7J4_W89eKz[mY"cִgb_L8e]C'@+^&wpHr|&|j>(#I^\l^I?W Pׅos@ H:+(,TX9[TGsm:8VN0!I؋Z`f2'V YBeTG\HA/Nm2 ༞{Z,w?b\9?YB[A'uɂ]/[MMn؏fJ>jb ž{Yde>yD!gs{a!>7dAF]4No՛`D', (px3% ']գP;F3 TOo껚HILrrA*)+}'b>k)ZT%_sM"̋; =%UAw@}wHWݺ 5vQ`zCXIq3Tŕ+`݊|DT\X"B~PT%kU;kƼ %zDv3u7Eǃc&aʩvg\> `piMwտMLH#c?C.l X^X 3vz}.%{\fn&5' pq&Ϡ4+LL4 1c9xvg*Ml`a:h5!g)%u|)Y;bc)y9d3|N ۠ۿ@/ale->xTG"gA\G]|S.V_R@@xZKb:b夘v 3o7y>c;%hNo$: c 5#_D=Gsnj X[ jeXI+8:[@%&St ԬO8;S3n1r59Fil.<4K(k+v%YKȦ颧!4佩0`-^-Vd94 rV̈́gf/,kL:arz1 izп #y)sL0cRf:?̲SE;o(pa{G>~?"+c{=~8AtSpn|ʂY%SKJ /?ŚS}s/ J/.XR,q5DHbf Tq^=&AÛ͈\(]h|Xk̪jȶz5Ya]7RսwfEG$r]:PlG% #fƞs$EC=ʸO?&PY';liC݅r/.Xh1̭aTtM"N[EȂdL0K=x'9J5V⌈,u5ߊLUғ q[*ޒӉ^qv-ֈ$>Wbn!$,n614͠a4C]VYtj҇B7ݣA Ċ ?}}cS<ޫ1[U˨n-*IC8o/SUS~a'ԭ+0 2ꏿͣ-w:uS @w:EZW ]vݑ;1Gyd-^L_UmAA kQY5?**^A p|p0|OLG-2JCQ W/w./gk8j F2пt?ܽcnfs^[]udF]<픒7 =)܅~~۲3HN_m$Ml *p8C㓨x?5\UQy/l@WףKx+BM&4d|=Hbh= }`yx|s ^!F?uPd9OTi.LFUc@O!S~ Aأ^y 6m՘*Xֿ?J&loTk?CgXoP0o_BW0<]K&%hʨ UɉҗjOkZkuIVbb=uI|\Jmm7!WQC43ʚzsֹjU|@B ;KeI/V$RxZqؽI(4:|i]eRPNf!Sc n6vݣEЬo-yak Tjk,ڂ)ɶ"l#r OANcS@q0B:Okͫzl}[WAt+bJXO{[M?mdOjVnUc})uBn=}3%E 2i_%-Sk/"~@?oEm47Z#'amyZjƞ4j͇(W y 6}T^.测y$播O'l<S+%Q'"t3T9GJS״8ru<{u+VIou eI^l'A$~kޖR^VsfrYgn]"u nO7<@&1s=6=s^"&I ϝC^2tJrv~y9 ~9^BM{!{1xפFYH5C`z|2N'nhs/Lľ6BuvU\r5 +&uyȖW*a;[34{96[E7.](G6gjBPbV^aa-)F>NOZldI1,m]2ҙVgZG9_*L#F!/*Bytc5摪lڸbdaYU#h%} Z9l]UʆEP ֬,B.K:0Ձ҉[5G6HeYb8ƾk%j7 KDDjK5[1 =[7 4RJtG|g*[p:d$ځ+Sw+= ۪F/NyfOTn <:E}F+5,5Y"SvXlT0௟3V@&1' ˪|!F̈́|^ץ|ͧ_ ҢK[< +z:[_s1L} ]L#$ѝ& PpVĿj?ïuj]O;]ϙB6pbu!i׌`ou ’d`n~rՍW}h"wyx!G>#/iK?^yCt1f=Eۺ)0mP %Ȫ]CD*:%MXA$7{А!rXd >|c.nAd;U% + E,QC=>zdlHI"X>dc2& 6!Ppǒ<QEliM9Jf >$CmC R`4k`:!D Ycg3uRђ8ؒ#4։`!׃y̾oETq~%)t0p% q=0ϺGbC!GzcW.lRWW;KwkdxO _4I<:UDGr].@L2SngNγCT0z1jmxwwy vspƲq3ɬtԻV ".tS]4k:7'@MZz*" CHn_rֿ"m(-@u<m$e`eTy8{AY]x98,,՝ bk$p*btwkx*%XL# `v=ȡj*'w7*vKY)*Xj NvpF5M HMH4,t_.s\o7h8j~i7P3^փZ8 J6Ti:6&$:a@ .s{/2W*stx /ׂQ"M(wt87퀮߆LH7{r켩 TƯwoyd[;o}hw GE' l aVz^v_ųB;po!0% E)Z4n>K!S[+Hqw"5 ʻ+Soz'fB' u0 =ffEOV置k۱ N.&/\&jPoD1@IG,`p>9n\[O $!v 0һ%L.]~Ec B*'\r0;oqmz4\\?ry{dKy48hM$,$9h$wYkO_4o@]\ű2(]D,xE)%:Uଫzͩ <(ѫ}D vt[ńXr9fC_S:5 f Ey9q)A{&K^AK< NV<|t)KCÑ=2W)i(mٴtUc"{ę~a>:@ィ,kj nr PN6o8T`I'Udvܥ߅;[UlS G@WEZ%xLkIEkeh`N.)7vm:bY?| @*H\vJjJo'}g]RK>%5c~rptrmzo_`\jק,Oo>"<.<쿣kc_aŐCۃ,cV>b [ɝZ%b-(,0JtYL4tp6$Xja7Sl.} =܇>Hzb2Е/Ű`?`Pi3q6]|%jj@2M~xzcNwPIX79C0S<+*ʂ}=n[0/PfæfGdO06}?0<,njL^mpfEb$hŨa8P=ke^|r-1?MCwc" IQϕnӥ+"2܆+89 _q\< i;1$ɪUy9}6:Isfa"^rgkJ⛠oF3b;N=GJ}; u%ݳ*1wtlW'jpKPCmڔ@1᧡7ٱ/恙;mo@o;phb(u~uY݄/(*$)>QݨgT S,ՕsA)WbD2}4ؿX'C8&Z֪3SH5Lv㑈gW{Y[AE=ŁwED.6^c@Qt$ty:a!Q өfh82#4ɤL :h7kŊB jQFieU+ #!9Z1!VAU.J lMsDCUPG=IL4L]=MF,Ս+^0~˅{Rj U\P\DDJ{ꡧ/8-1DqƝ8F| 4(Cʸ+&i8,* FZS`~އT=!Xp!׌p\gAY+[L׿+kG.LvV kx fQ9WF4{Ȣye6Ĕldp-'L Q+ߚ@ⲋYHzcu5WUʇ6t!Й*%RqhTL2u{y RN YϷְR yY\Mf}Q`ShrGLb9#FQE{1{c@!P-{OOo2BgkleU(#= [WY/e8Q`.d;3$H>bV/`I_&Nn;^V(>%ƁgٞhRuTdw[#نi41Caiy0X֌Y×>c8T-G@4 0&ycm]cmW")yK.k no},ps) K$@ϑ/Y5!>V^R}ELcdՇ͕v/Ox%1vnH˽y#R`:[K=^W}ÙUPCB9nP(uOWYi|%Yr1ä惂K=t! jcHkE GԑĨO}cJLHwg9³,xopz! ?o&м|BZ1;_b7 ;n,`{ZsBW>4!h'@\.V$u{-FkXR5`L>ybrv/w6l4^:l8h e}6Qha(0AD)g7:mȔt6_ēǽE@L{iڅ.D}irLLTUA1WÐ+}/( A&$_R VU넍Lelj I3]qw415r{C1y'.G-`0Fg,:LK{PDŽ'(lXe4(i̡hH־.GZ-,PCS766An:XBGZhY%ʃK ^Oʩn ]޲i~=p<4 5OοJqb+7Y"$raj0|zb 7qSWkK i3p8b @n@y-,/t9g[ Pb'~B3]NZ⥥Ef3QUYs0Ko7`s[kz_vZMӫjUz6&Y5 3s"V[eNo@3LT6BKVcR ϥ_8@;D~} WPl=ϓI>LE.\,;73'vԫ?bM񎚉<߬"0QpԐ=⌇wHܺ{A3 aPAW.FW.GIv# PHNA;~\֢I+ ͝/}Qk^=&y3ff=sMOnX$g9Qd!|c@k(nֺ,8쇴`{FXX!%)R#NpV= ~vI]n]8 Pp#$ғj]JRyLtffN52c[pzvT09ecDŽÇh^J ^S(["Rf/}nP u4i:o3q癈ڠ71`4v%էwm̩C:yuY}b3 59-?׌486C\FղZJrlG2v)L]Q E^HCH21Wl'h#7$Bis| $&vkynxuD\HJt l5iv1Av\τiʮ]QGEl]pxdw33\T'gK_Z3L7Cē l΃׈曻{o Tj~ ǞǴI޿Cb(/Z+І26.mBA6ѝ'[ hHețG$"75V@4ȋqvXnB`57燎s6&ְFM{;| b~  PG|JJl`03]UP4)ਝV}ϓw߯-5OJ}{ *mދXNp6XWc-GH IZ"Pdtx0yD%X"o{uQNG紼BJw  Bɺcq6RDkU}Nr dҕ -N}5WZD?y_QcC6 j*X!4F2V 'ZŸMa08Q>pzܗ4%L2l[*nWk"+˪``o2YͲP y٧ב.tz>v@W5A]MT#Iv-c[tF0֒4a$ӿE=#i' 3]ւ}F^ ȔP^?( ؚpVy GXA̾dT& "h¶BtChE떥G x ̋c?${k6RܻY Ut?Vq+*6+uv VW u56GH?^i>C{Çu- ǎ`?kz+HN`ˆdLb3rNTt)nkEp Rra_qxq(5nsj&^ǽ0pF?Uu ?\P{@ߑ6QRW6ĹծQEq? sF:nZϑ ~YO䦊r`\nL2YPQz~gk'gQ8<x*V!F>Tm]fav :]n=Hp \n6*a:}$>_:Ř`3/B]Wu~{v\G(CׁhXO1@9x,FhJf$&y١@ojv >l7HQt6eZ~xۙ `މ84BHDWr#rQπOĄNrcr>e"C;8i.c|/$1Bsm;Sͩ0Sl(~9bC%7{KCZopC- .Ѥ֭iwxĺ^tE<V' & ;C܀T}r6}sWZ#FL'L\4UN͠?\i;2Iˠ:fSzB~,Á9@'+Js@>B4RT%Glۡ P,9tilR,xDԀ`y$Sy]c)-^ pD"VOR#w2F~j1rl"'jkC, KRVu^((/LCiargV^(Y?h\?]uɵa2X'Z4=G岬3JԬgDú[+g[8͜N%BC]>O,*ZõP R\VA%H䇨fu_-{Au/d?0TC ջ",v6qO|}ua7sŒynqTԐvHFU(F1Å kDYFTբP^m׾8z]_Ks :(\;5lera NkT&} +GD5]RUdgDp^, n@G]8HXDDŽ ~1:[+>KhS;k'Citל$G> 84j:&Tvο'/? C͎D'iL@t=cY1jr;O Rs} &^` N tXfM\=XcLiū5!cqw2>.oZ $,k}L' $*>͟ Ů\<`9#U;5 $a)HVv#okDg>E7N(0xUԉMftYTL `P˵>@WA*&fG4Ȼ)ȮCwM8ֺxbXny^$DJ:R(ɯvI4(-WZرV`9v$e^m4:E !3H[T] .GbuГ' WRe+rҮ6_eg\;IgMg5Bnw,J[F~ `lΡ/ߨ8lOVMlEGzC+EgIOiN|2lrzo&pa$a4V ^au^zCe],F@>}ؠ}Pwygob g:AGB ٳC1#>˅ +uр#hރifnA!%EnCzOIݍΨg^p_WĦܑkwTw9\Q>퐃ݜOeME"[Wm#PUdwGToj—[~L%ANy7mB=eܒ QAhwƌU1 0m!f9'ΫRړ4S%ucTpdg/B 7?f$h6gbEF$syY.C{^.vɾRqSP6tBkθǜM].-PܭГK:^`,Ym/ [6Bݲd`x4e4QH`<@΁kK>y (ǂ2HG.傅~9Ja.'nMٷE;iۇ f؟/tۉBijȋN B! weAj2ImegMFq[5m" Xtc dϲe W߇Vdծ4kP|gx{ =,g _'xX ejȭ!x*'--WDw4ɭ-5<n*uh_7^h!$A~dl8ەɬ&Pw$7B i^Xh`v;1jn.aQh~?kՃ h'H6-غsݗS%-={T$P Thx U)p<( ( HXhQ\dhCsݮG<țd\4&=yF(R$ Yp. ;%E y(fg{zК˅0*`+;&-"S:s,@f2S@pvS"v8[ aed#\>WTDCN"إ'QyMx*#*/cT]e!m_Bڇ^tb.ɰX %8>1T32 a_ogPP齝\zf cfmUe%gGWtїLXһ#UK  :-dob;D2ꕷڌɽ`~8ޞ|wWVUGZEu3XuYn[m޷7I%࢛bM~XP=yqH8N1d>!~ثzW񃑰/VSYgK:7o{~}]C'ѕøӗ+ƽBI,c>F"Mb^nL. Xjbyӊ/S$CL-įI!f.M瞤Փla{^;h3ۡ/={@NJwnd#]>YzC|zDh/5bQzм)eр <FL!5P7ټǁ#}.5X:.dǂnq]O\p4s;Wʊ]{m@Uߝfx,X 1=3GIh\*HR\A6, t WJz߹wq7UXWΌdhD'ro!Q)Hr7=@zO+=fm5QJcF!PU*]26ڕD,d=ߖS@RYp7=~V|&,x Dgid`vl 5 i!822= ܨm%tT}FW/[tj;[tGo(L4o:'% 3tƏi*ER1y՚2բ$Z)7 .#5wO:>$HTC| ;h$9W:'lWRj&F[2IuXƳ/ײ$UIȜ'RΪ=Z4f'Dw4K{Z&j}Ͽ?Kex6#S{nV#AR6Tvߑ°ԱyUMԆ+۲g]CG~l(Mʫ8!NA)̀|{@j{(Qzqb<9 QtH/iZ@,,ɽI=U93%7]@G6k4b3/n]H{7xdHORlG:؊9m'" `pE ,Ѫ׽AiMUoiw/] Z|JM`-NO]D4 N5@g>Ob (¿e0+cjV=e7{x3= R> iLtc\Xhl%=jЙ(kM8IKPR|m*<<[e!uϟ@Rx9#.xLne>o5 KEj %5t4\E}6ZS蜍=`yzΑ 8/,w-5AgOxU)cԆv,w`#nxYL kӍWFNߊg~ TgyLޞUDS ]ϝT|c::>F8KW}L zyt̓xulXKiu3=bOХ QX;FZ[R0!S#Xʷ/ŕzM(cC`+4{Y? ߃ׅI Bc6"|@ q@^jKhbf.QʇeFIZVT2 ]Iýp-unkK_\Yo숚}.M=luTEXFr[nTZ&d6;'QѨ3s=8$b+w1ШsH݀Xȥf12Y\v$r GeqXnU4[~bfDj6M,D-NӮk}}\|H秪˿n0fT)SSRˋGd FB /|" NK\_AmE[A .f>$W#xۃwuIگ1қ2=H=w`Q5)i!LrqYWF÷rQ4Tv@4 e'Lml'F FҮ:7,"_a0Wo!kߘ>gбJ(/sLJ>. sjߩΫi1n$Ua$M(QQU,j^lz50ɄntIF 9˚Ne.;!=˳WESVP `IĠ;ġ5$' &w28ZY"55w3t%G_˭ w'q0 ' pY^iɴ$Du'<"IlG8}3!^ } ̜cua < e)D7y J5i@  Ss1x$pC20̇k3i_W߉C8x=QNa\(G;oD?Y9SٺmߤHY[ÉY'~ ]6*I ^Q+ItU:8Id:&L.Cgx}z>6;ZGxVQߢ0^}C " lTlYm!]8^<߰ĕgmL~Lj}5x$ֳgIs ư2$C[X`$# nև\=04uã5_OpT,h uF} wސΥ]NnLqgP k\E6#F.>ReyKR"Tc)a]7u,ȘS)h5,yc8I-_n`s5V\SY᫐nm#!PV:w| F]xX>1y^h  enǭxZl bM&ILƅfpJRLɧ&>5l.S\E8tЂʒ@~(Ҝ>ToSG7 .GQ268Y3Xۢ6t)Ey a,JSoGs&Vj8:Lʠ38V֫C_%*cYit]X6^hؒonl, ̈́K[]xdY͏^]9wlP%p jxNǜ$n1u_Y=FZ¼ԯ[<.P?ZIx༂&r/*>A8ֿ5ZTrU,epe s"\<ߦˌc%XQ,~%]C ʰ5(ܩwx]3Wr5k\y Iq5jWŻEe.OYHf hAk Rƽ^$?%\nR?tIœPFyN '̥NJ )_ȇF Eb]P}C<\%akz@"6m Jؚd 4vMk2S2õC2 ^y?SFΘ#ǒ@*9"d. ٵj/`N.gl!RB[K[o17>dk>w@^ePr{?Du "9 PɨQfؒ\g:7:Սn" VgQ8Z>R}.Z3ݤ}⫇6Rijy 6OT,|ѵ3$pC9 {ܺa\?v" Y-!s9[hd6ǺHvc_jJjI@_Ob)tTᏤ 8D(F4!P?=W[`i|H\Hc-.} pUg`ڊiYrɡRxy&AIS$>6淇ޡ+rӍUȻ^*M6yLc:/*,'Lȏ+gXo.awJXd`\,sԺ^ .eiw } %FS[{֭*ywGthFγF-7K5` Et1nulܻ7#oE|,:K6 (do7?~8` kJ$Eņ$y(%;SXN\r sc+!^LjDJEI,xYlZ˄Xs.⯐VI A^5XJMgv ˨}Fy0C54k\8y6ꙋ&Ǝ:Q}Q˺>/ -*EQ꺾j}M\O?kJ ȎGv ޭɌQhiPS6UYR%HjW/-iI jBr!ڛW 3-F/#lU\T0V i"IX `kE\;#VElLk3kS)Dzž4ۅw֐94&Ylt oQqM+\ ?`xZ^M u%}:]s`,17GҬlPn0X&cw6IklRh(<,3B>Uu_fSr ]U@Ю@C(ma3ʹxT>"mnm;k$:Sl u|c{p[gƒ_8PykW]MvnW՞QBce2Q$ #iltϫiô ]-kﯹp%P.&ٶ,-׺шtKJ=X Ii$}FTw]-n ,JNreQ(F~+OWivmi`RM*y  zKM wI2%Y DsL?>EH+P FAxTg {"S7fLw6s[:c!3P8iSEƅ.{"4ˊgFmwUvhFmvl">@P ohJr80g@톫;B"#Iko\W '1+ϲի4=G<Nfz(@#+yr(DلU/MNW!sD;pO ˋ.xH ͚&@F{Hեt^%]!m^ s HB1%KmD"NgkzʼnZںӡGXR8I`rF5;aU:Bf")(1x̓:a]ͬ8bMK2bD6j<XKߊfYݒ:CC&Thk j73/O`pso̰sQ3'mu M:cȬY$Oer"l8j~띾%\ol (XmCwCw0TIG_w(}Xp,wgx&Fd^^H\kۉÇ7fvj7^9ZkY@W{f뾏B8M2N6AI@"5y{ v66)٘B:"6&$ߏ:)5%nk9*w7bZ3L ,f':BY"MPaL\ƅ K|/raT7y 0t LnwPO$y,^"X鄈Pа)KIYT 6T;:-=q]ߡS+xۗe5xг t~p0 N8`%j.MHMO9QwתV|M3QBVI}|0b7t# 7l8_1 1[rhc%,ƨY*g󛒦>r[vm ;%c[bN#wWbuP&m<]G"ڼ+f4ߝ*=G V5-C#Lldr/z QE%Pc>>/LlW))&bcApGiѱQ00Ř?GX4`! nd#7ƭNVMp$-gB|aD6=zpꖥ!շU ܅9];huIa`+6jsRA!ވVuO݆^M*"SmL^`0y?n\Vп.P6FvHVKw9\4P];GɣM?Ʒ ""d5?sԷ\EܵixV~9u'kc- þ%u+˅$'e_ ~|=ܣKMŖ_415˗@)LP//엽A#Q)>;0\=i\*PGϞ GE֘/^볛^by\a,cI Xioyk'k46TTv.O,ɘ* *]5[pd6^!4qu-,ά!]5)v0} )QN{'WRyekoUܕ@ݍ0B/b2jr,Bǃ=1gF#a9`,ftGOC{8a6q?m*f0[KBrY%yt=N ȧL &”r dASp1LSM~c\[\4Gw@*n Ӂ%} :61Tb9ּ d`)$Rہ/?qץ"јe%n5示' 5ߨl9H#Gt19S. 8k {6[~|߽,yDz|)gJW_/O@0"jǩ%}:aIQQUP[TyN]`hyхE',bb= h'^` dnqE[#$sB&gEΔe q9gis }c k k(MY!'?^|gcGLcԇC: |QK8 sPoY0`a Af1;L#hk˿W3Y\"O^)#HЫ 3Rw M %8v"+RZ;h'Ӷl gE qی\2 <>6w/xяAԓ ; GD[b|]}~G76Tx 4,4-xǪàq옴w] t+8a8$1fh2jc=d>AoHʉD _lîVS pqSLUɠe ,°m</:K>T~n5{Ca]Ld~\j7gȢMՙ`icf ]Kkhzw킫5kV2 Ȁd^fraʘ\Auғs?HtɆ&lDW.a͜ jDn~i$eӅ9%xܭgIvE&:^pz~}ƒք%Ꙕ4 Nj>0V+;&(v|4^&wb=`}Ds2+ Upg6 ,M+.{jn2-?!9&U ꥂONxt뿛ZYMm*:;H>tG%U/Į&k|5T4e˱jP H HڲoX zA@((BʱE7,)br #7S02S+FQrogBVY"b?ۇuM[ Gu1qm*KWԪQR-T{vF [W؅mJM"zdVNoF<5GyI3 `rgҏ8fQ9GN ށyƑSDgMnզ;g(Y@0m i?ke0w-WQLR(|nϚ{J3˚}o̻/2Y]hxy.b^I@Q* \9 gmd`6:*C;ctLָA`tz#OAŷl;<5k(A$.O=PpOvU6 W$z\drR\6u,ٍ;~cK }\ ݩ:'Ich|nٿ:$x@ . ^= rr/IsGi8S :OBSg"Eeԥ T1_48&wxܘsX Wkҵ:̱2W.A="Ňb Y^ee ,VwJa]*~bF6ʃ7VqZQ8|$WR=Oa^^b?zl&) sFIk)/o;VSTk!<ŗ%B8$ֺ,f8[ٱ/mT"/adfZashCS091B* _ԝZ!V31@tC֊SHku樯,5*~_fZw iz47:E?|W5=q`]$n돉W?{e A"A&yϭAv lODLg_k+li))Fz FZKXeBpگ)ëF\ؚ{: %n⦌=4G6⑵$_-2F_ӸuNU_q-h}qw<˱oTV}îsa|6Ʊ(PI]ĘaRa( F ^~f *Y|EܰײN~ɍQʒ?kM8ǠF*|X,RwK}~ B\3Gkym*9mJL15X1%ah)nX_bm/JyFD3d*QEѬP$ճC?ןhip}g 2@~yd乴{u*ƅZ2R 8X~K(5\jq*HdW4D˜̵͎2`E*><8Pxtu32O89(y8}9 sƩҕ9v&(pbFՂT!a~TtPg{ vDu͉CZ4&C<<*v^H1;Bw255 \92?Z;4$#3YjnQ!WG&m'64 >U8i+- ]UKT1 y (A3fgEn q; w_PjGF>Սz@edEcgZQ|aN0ʻ 6SOąLS6%mVmE?*A}ן;7QS3@CI/38O2.b L]g+ Ms ʶvN'6@q8FƩq~O!ʤ'>[KĞ3hσo2py@z)u2{9rK>?<W֨@5&SU'۳Yz:=0Y`7eWry-^9~׆Jqi<ȡf~KT\mh3CS.OV ]{ IGOP0 Yb6.?E9+;]gezinڬv1{ט!7S&pa cWu<9۸].ׁiɝ1vac̉{>K 3*<ΙG7 (uBtRj15SXCb*GQ 6 ep $ ĿCԉ||L\!aq1O#@f&v>k dZ=lY 2r"ɺlIHyB9I*~/ᗂ,o0L y| $_ U6wؑ8)¡hH=t0)H£,E>TݝI6KC\,c?q >q ngo )ᚯF4Q }u&5|0ŬKU\BHdDd4Gs3C;#|ξMt#Ye"(UB0CR4\Mkrm=/l][UmTaہAV Xvnm䇩̱ ؂O"$Ew6" =qvJ@oY#r^-ؔ>ѰDw)sD~=Kj eZbX?wڒCf4(Iz<>4^l1UO־@36(b L母7QD Ev|[^O~ ht5큒 w0ivgs+tzUMy5T  OS \VȤ.0f:bGhL}s,njDޢEDE+;~Z?QC&/H>Vb߼VxbGޛT.Qmj_.6c^Z@3KН?M⼬YXȍ>/2)np]%ۦ1^5 8kvL_Q,-lu65ڰںM7d%e6R7_lu ߷hu&横x\0 vc!P#˼5 C5rJ49|I#g']RG_=⧞׾t.i"K / &̹ 8?g# ]fK,`<.🪡>%U[(5uG>_͉l?wt7.3Z`%3\y,fkYʫ\SQ5sV؎&8D"a-"aLwecGnB>Noͪ[JYpis^0?)x(ȀF_3@~"n. ־wՇ퉿ũ3QD j&2[?BcdiaE!뮩sGSzM3t@ Dsp1W7 ^fU*b4S~|Wcy?#^nŒLEI6s>8zɖ>BAnc\Ft]jʰ}1/~Nl-層;˴=gSWa7x\ +2L7ڸ&u6?² |TnCkO9F&>mH>Г)Щ'Dˮ>. N,Rٙ%|3fj\Z]4/ C5`~~}wE,-'J1rYwFhǿO}Hzdx]{A@fj ^sub"\oيE-'7;CPu*fDqυA<8AΤfѹȷ=o >LBĉ-ag,c4l"Cu2.&'dBX..3Mn''M}~ ('ǘY{KA!X@\#n̲xt}bgHtf<Zt~Z̸o!;&̘([m>t%B^k22ˌK ]UK\fG|.5d CY:pW.zbi-ڲr(hdsYo4;$_ EDP~<{b+51Y=;HKy*0HNg~F$^C p"Tҵɒ3S;Y^:hMl~iQ0J+әMqej+qElc0-p}YKPdAGLr翇>%s@D¦ 7W#+`v-("ڹ'XҲBh1/Xf ?PPz꫸>=ZQ8^"lV8,{苼/.`O ދpD =Ku{f1CWEt \ dv,Y_|o:yִ! # $IED,x $Öoֿ؎@wcmPf7Ne5BUrFʕ,\=bMT\3T[_Y\Q% bO1P~$dԣ A7O0/}}YLCn<`@h_oD=MٓA!qbIRt~NΡб^3Id=AF`i&-(TNh.^whaqi7{AIGLL 18ILb1?v. &R F^hCy58<93e6jڳ-3 Th[Bj*ޅH ;-U)bOU$ LuW:0lV2IA6%;zZN dld؞>a|]@\µ^ T_Eek}_nϿExH'H4@p8V*\9,SknԀI0JM"WQ{f!ٖ: k}dv/}[]$Jp (wYcl`4@*w}t 8€2lDJ`r;:aS;> |Y^Ӿԉtɷfy8+{ L84D12$ ?STgnr2&Sg_HIJdzzI7@MdQc"$U(93go@OQ0Te2S- i%8E)o$<8j* j?ĀPTjkCY u7/RzGZ#@` 4!wy|bW4uog#j"a?ϻWqԷOu( ,Op@Uhv߫pWĬ| 6ޏ.~ Ȓ!X*#^-^Ц#`Zj/hn01P\0Ā&6`BX(H8B7~^+l<9)h12=-$2ٕ%t@< ׺5=+>w<.nXmlXSHS(eH=яG#PBȁ4̱. %yDŸ(r"~xY mO\^X?;UF>G Z?'jFWxC3xpn\70Oćhj%o'WaFWܞ"Lh9R ?y2{{ЖQ{k7ˇP*v7L"-'hIJ`?aNvSlڌEkVĴW?&OCёe@Tg~mfB{+^xP ꋳH1Bg7vjCrUs] K볋)G[sEg ܫJFUowSfVs]Ӣu'6 XT'd@k4Q E E 97q?ޒz`|(Nb;3߀#Cz afd1bM%Nl[9[^fbMYrZ+4}Q,KPijHw=a4UCl<)<44JM)bnshF]w۵\d+WQ@9\+ }h`/z#5SGXYb8]i2Q~l\HMg!sGّ -*r}\{F|?}BۀQMe"n.1IRHøjңgPr\e:^m'N3X.8sї[=;8 s%] ~4[nw8\́:ym jf?C>O6r2R5겥Cd`Hl>g]=pdc^aq/Y@{yU2RA[`f+ZekV5-Jy /}7_!_Rc*Ԃ :hK+Y]lŷ+Ÿ3>$Pip9j~{.,5[I 7tY2\;^0S,r_Fq?P&\NWDF|ц+mS6gb:w[P@l M;O4+#_I~Hѿ3MNrM}D831v8 uN:5^2Y/DKo+'T_b5.B:'9HݓP͸"?͊@OEW)ܩrZ,RpګgXRm,!'L6i.~ѓB=5 /qvg5Jt}e:;yM!^LcCZ*4Sax7KFwtBuyQ)tKe.p7jJ/d[Q>W&I=\Y" իl;NSTRs|B2B7J3, X^޹L7-%(ЬehY]D-6Jr㗃/fD@%.Du]^Pq}SZEw\2>0k'!p_P*?:W׻"O8Ç _,m~ PB{dYAs j3S$&hL2<F<|M;#и 5 b()F`EK]|dE-N|ZȀ&L6,M׭`.0ŴlS_0[U*?AηW`*MRF56DuqhYԋȌtEs#a*=%\<3< .;>Nt4N%C~_ȝ5Ej*04]fR2 \jXMV3;3=36rƍ3mHOė;[PՐ"aZbݤhdS:_M7$ vP>O4N(ĺi;ߥK/E%ֻxL mF\ cC{CDSp*؅\1!^OhHCM}_@Fr *O_yG DEDD[!*atVOkU:H@4D D:2Hk0G/ EZ{)t =8p2$]~tN.d1\ԦA ,}5sj.>'e\izafZHc\U‚.F( O4YE_VRNW]ΉR&GEՓEV@pZ8r_뽆|3U-5.9?g?!uI'<6F(_4XT6o,"ot}3:'|-l6dc=O)@'|f}b Swp|-cqR":,#,<Z?OUȆ\xO7T܁>vFټS^tnY3f,YjXdžCK;{K͝GD @z؀Ը@R[U]Er Y lY/djDb FܥzV <$2Ww)1J6Ug:w)YKW<81wvY[ lc@]d]S{`4R9q I*7hGNDVhO\v\fIˎ/Vn!UaIT |b 섒~DSlt 'VNKp,m:/nWk@/]-m2\Mef'E,X\_<| .ϑxRAnؘ7=SRZvલ V^,)~N:Hwύ-\X$Q=0WDuƜ KE_ s,3[؁Ej& $N7; X^RR21`EF{{BXhEg(%)M~Z!,u֨nƏݢE[ᗷЊ8r{g]XR)s܃(q q}wL-$f~&͏ \4S DF݃{EY9 (3Uٕ >/I2tZ~LY"dJr&!>X$GbHX(θ,E7К)nEL#kW%g>Q#8bh^oD=%q8 # {*&(1ʛ)H]F _[CWKՄ:]mܾq*-' '_E$ \L*<*ue؏p|by]Vۅ6;rw u{(8*!4% g%/ xF,k!C&Fr8oK_lY_VZF26mE<%Wڍ0DȳJȤ~,K+Bƭp8PqX6A`F'2P鄻4}Q!Qha,ދ5{wc[+9w9?_U*o룤>)A*{)Ɯ6~/%ӭh]Y[M}lc 7HL@d fmY ibsӇ۲/X+1v5nƆV9AaXICZTh-F5ӛIp~nl~yG/pn&TeYֳqn#dǬ̋xKtLd);ܵB(M $GШt+?S%]Ų"Aq9nEh[.>Z/8S?%ʜuYs 0{:EZ"bpe n-e4^5¿{mY8Go{{">](' RىqޞcS{TR @jwXMphh,ǝ7i~@bBֺl[ur54&83$W4bAtڎQv%Ē"ʃ`^Z]UޖP`O.ü\%$Ő4]嬳m ֤ΦTR >yFmj.zK!e 3~F™Jw$Z:^4߰pW`I8B&"gSQeƃê콥CPpr* ` #?%hS":Xb2L]h5>3m9W,WLB>k@˫e{Xx :& ިMޓFjĴUwM/*sL J$') Y$7!?7ud`9ӳ Ɖ*1,,4^ƖFifJ%-Hx7OdzؾeJT^Lf&G"$1^3Ծ;{)u."!1&g_ӹP?F/+tfpI~naK RQ53"Bwhl ;Lȑ{%޵h߲sN'm/|>M8%L7бiV((ZVk¾hYhMO4:?-"/h א5fu, RUodU9 3tֺL)j_p]WâUйR@>(=qMTN\WzޅZ-1})HάmQcϐY6]ZƤsS#lE#*ViQϤyc@g<%X6 +0)S,&wᜨ.ؙHZVse*]R0NgXTB M!07ek)|{c]m{ uӎZa o(Z7pu}c>@7NsL{eOҥRȪ#7njLB?& ?0f/gHʺfˇkge`5CKm1U 7y[E_s}46õ$7Wj .' KJ+$\O%&͂`Gnj (> !I@kz^'8F57zmiԑ ׊0twyׁ6!$5 dEVuV?uzx,y5khsՎ~׭I`(gV,:v҂T4։ Ass;"Caa5cҞ9A{a)?ѧOT_GS$umU%Υ %q@Yc0 /[nBoM(T2ᰙVT(nPqa2wRr>DK.$e U\ O ^w{7ǻcfW@094*8*ي̠ٖl2an#Ϊ:t/D=wY嫔,=b5ڥƀKwvwmAWA3_j|/5/I!X.4s ]c@_GS6 m s4&R's6s6[>_q̰-6!*rT巒H/\T})B(PKG<Kt$L3 V_&"`6hr!`Zoǚ i.'⼤O2 rݟ晃ADF^rGG"ܝ1IL"Iy>kOvu*Cf,tl *sQl-2^rx]l6i4-t>w[l@.#AIjfr/ B^rbR9UI`ZbGNn䢽=>ȍ<`[%& 9`nQc^!`z(3:^33iJ8R.>=b ]OCc':J{WeEk06lN.l83`}"F:ǮbdЪbΔpr5Aꯔ5yIaU{WE F*|%_`)>JŠ9Hno0œS؆<& :e'MzCtlqɽqtJ ֌%ʏ+Eܔ;ZsM bsZUX<@2T 3XAW^g:v^N$Z`GuWA+ZSBcщiI4 E`PK%ZOAFK.ۅ3}M,I **y]EHz`1¦c@$<~]$cćnOl E7e<`^´GU4 -&>@e[L$Oqӂ8'P$ж1oBtR"#/֕V3UYyZ)I u7|ϯѐ[GJ&$j{ިƥZٰ֝5feoo6ƀhJXNg. pއY{Xnb{XK%bɓt'L}Eh(ѠPiČB񘞚 ɸnG GSNVJ+~kV 'eAxd~2 {wGt~0d")w3.CE9Tfn y?;^C<9<Tly J@O 'E&0tkk4 414ve?] s`ʶ?}Hzd @!驰1{3W G,~|ut)SD@uq<@E}k6l5ҲW)QnPj4pk-MD&fyLA[TdGQY.E|NV8RU׌^r=)+\ "Ʈ& m<-ml%a)Nq{)uؔ16j;&-e*=(5v"_UN `u uM3]f$>[BL/Y{;ְ r(Smi>~hĠ=P2T^< SlbJv3iqNVd u +x '-K6nbrE-"v:UGSkK ?].]ΖUeڵEwv&Y]&nI#jA.6)6:oYϠԁr2aoDG:0&3LI({!I dFB7͋ma "a.1_ FV|Z.kߊR -3'k&Ѧ'"SM"[XX Usа39q8)+>TJ$sՀcׅpЈo{ZOx6ۊQ_'dmkJa o,7q{!Q+25 ATXޱ@f^wp/}kvkA]Ie9+Wrn*~0$ `q|w}p~1Uugʲ}mRJNK(sZ\Mqu3PӮt, jZf|(!3f酢S}v4ڋ˓OtqgN<4&tk4}T??Q x's2M1'X:~k,*a3]&9ҭ=^Rx.Pa@ErbKa"g,XمZvO0=ȇ%ݖ3q; "~AiTYAVo%ZP3Qʑ 0SFq"5] 7D=p3(xrǤw֚LV!!UM1N8ʩ32gD®i; W_rmd%<23ro';C(<3L2Ȫ{#ұv@lc<^,v곆ʝah" h̙.u`&k7gJש\,S BL敳+[~r8%渆\±O]DY:\ikq7D@N%Ufb1چ>uL[t|䜇dN*пŨY?($."WﮀΥPӜc=h_! \G#q_c:>zf uۧ,)IcGƨVo$/&TETʢ4K"ՑՁ$(GXWf臹,F!H>sF֐Is>D{gBsotInH€{MZ-ϠB&~Sw$GWO5NBy=u3(deѺ{ɑo_r9%HM'qFc5>m:sZʜ\m/-OzQlt=c{W03.>' x4Ƨb1D6038zi,4kau%1G_ƿ!:j=(pF6U,0 JҊn/M 6 `dw].-\ԛyH5"lP+HP5Q{. lh)فl9hC,JʍQ{!L,࿣yyԄ8Gά=0!0O/(Q5[c`PM#K8IW3 (* YuNG2*wїH#dj71 E^< nE2<@Fsd_o\{=e3"IHHy@R%8\9థ$ŔmcՍ[Gc4O>T[5 ^PAS4Qcߜ WI-3'in^g<a( xϻsD-]ӊX:\Os)7UXtR]_,[!s١ I(Tk^EV8ɂ0c^-?3?G*dC@݌8wDzjpT x74?ѭX/ofTuNu鱱95POUB/&2 gq[S3n`Ib囄F6!:Kj!x䅟O-)A6G +qSUR_? ~w{%EaֈOWc*`he7?YyW鋀#ѵz&4u?ډhVPPˊ+b|ɽ=A{b"fWRc;\= dZ”C;r5r]st})nwn"lED.N̵`[Z)̲]Hz,r->T\oad *6r gheQBM0.fyR6x_=lm̙]_tSv+cDm~nVb .-VA#2yA=H<^|'5TCsTЦQ0n3н$ 檔m:2 @€ cޜ֜SM'']4p.Zb1#d5P9|fGZ}Ƌ1?-ׅZT_+iН i8bDiI9V;2ԟ 3iRYrU6k|Fc"] j@؅l>0t9OqD w0`7ijrEQKUUu_m:fX=GBZ+P$~4*\\s BT0eXG ƻOҺd i#c+ EN/ Űjg2*"J9ؙ-kZLj&JmJA3t[6ITi~2z<`(f\iºIz4;E~GIX=\%e#f:RFLheM1fiM;j4cb6#V0>*2 4S?QGJdcyK+ҩ6hLOίDĬKCjb(Q) YA/9tB GL)1ݒ(_u @S_r2k%Ap>l}O_/-f>glASʍ yCZSBzv9=vVAaW]H,D6#CVYV< "nUVĀ-=5.ߴg]b2&,%t%Ύ8ϻSGg&I+ou=\BxfxbZtA`0FDq4_L-.xS$04l QĹrRۊ?qlPn{R3ud^drHW6SWc=to}O03@nZgWg$ь 5G W"cI:k](Q`QS9ΝQmDk7 ,)n%̇;䲓jQ_eӭG2XT,ME [ߞb+CG-&h"3䫞OH[/%To> ~r׉<ʥ[M@4A멑l%5-YX%w,]Gi O@C ܘ>Ck&K%P܆l&Ul^޲J ϵt栗nOr\NQyЧI=@y07+QN5bnTT75~_S2')"Y٨f8,i lV^so2c7URR+Gkmvdip*<2iW{Y 9 H4F/aVLB6JN)-(7CD.Mw۠jP:a\o,!1{ řpM@B> mQ[_}kY+:'x4"Uw~ HGbS7j߂qpL^ {V2>S3\Gm .@. H$i%zM=yUIvsg}JJL|5$_O>nT/Y B-!# 2;!x+i ypkfˆl<(h$ӹtkîTϫZ]I;<2߸^j7 WF_^` 7)3`͡:ˉf9U?Ցozhtt\EYNjM>17i7K?=TаTd7}+ Sc~􄋋ݨ+2(Ӗ~k~s2_21Ef} }LG@[ܯ,. jcn<T@罶P䄅͞Ô.c5tluO|G 7v‹P HbnG:pWXHL=4ծlӣ?zWF|%O [ȆvpN7~svT/ݲpWv 7'xnAhvHIo #G,y/PYT_~^ڹۢYfJat!ٕXN/ˬ)5FyAuFF#8qUz)82+Sف9] ,cvOҺM/"Wk;-觵ՖR"Ax7;"e¼N0莪)J+JM;8c|\^; oc[ޭ"LZ[.;DA|D[q [ j#fmXL-jdZ. T\1*C5jJ'v\G::#֏I(f2Q # 4J\*vZ,a>ȅ V^vD3$^"Q*E7X.Vt)i3"]-Ux5T7r0 IE%>L>}sk9vX*څD;Q DE >rxƔ|2ҁ(8O>]2> mxZ4bm չUG<gHh20i|>zGނU#!_8­˨a+X2u ђ'B_hudNh(j ҥa ?<ƬLcC4+`7"|~Miӏc Ū"QvҬ٪\O{GhXsH~0(^+>@Y_wWOݍ53$~2@W'6%|jߢ/TOА)6+(.B[ۛ޻P_\`."~p8ש./k,wWSu<M`wnԪq[( : ]本3"]z_[3~EVfyQ4ex@;SqXeISf:U"X %-pYt HEl% lvqJ)c|YgS4ThZ֋A63$2͑ULXս?{ۭ2M$y^uzCC7Ë-[O{P׊Mb5SK=ϏnI}r;A[oڲw\4ltl GBBHOτTӗe^~q(YU1 ɔJ\b6dH*~͖o eԽbkR /&bXg/[)[&=W?(צC\*SFXUB⟳dV9ͦ1 2:陸 QZPo?Z,D~(7DeY\G;^BͺEF:|, <}6DaHk ۳m7ЭM?R IL-}!Lxko6|:~ JJ"E< yA:f, 0 amR\0&ېx%>{Q.%\'N:8P?ހTg |Mγ5Yke1HyA]mz9 ‡ Ā{bβfAaڀ!5]8hp3F^Α],3;R5 }]K(>Jזzy _<ڇ֦ BsRcQI@;OͧH'bJi^gzŠHt64 ,*X]5ZHVd&F7f|79FI:Ghc2KZ3^DঈB03mPF z3 O&G1sx^~{w= t;DF㘔zgmm@H287DW8HÛt: WMoQo -xrrfNBCBU MxL6fp f宾W@[Ok[7ѯ>bžq:  "4`Hq twA(DuI=@Tȁ寗꯳^a˜ 7|cbVN4Mz5]_P/.^O0 ܟ9 3YGI!n[G^c)5\|YaEsVm!H~RcSoBj L棖 {4>~%[g Wc^#`t|:n.T@^tۘ{(A O;BDXwp!_ ;_cԨpQ*eMsrs9(;> 9kcavdA\Z2f^eApr PRSׄBv>r_q<{?yh݈s-L(:2maύ@b51Zp;$uc 'U kw&A$厠ƱH~SrE8|RGAk?+|Tu>tgv~y rxQ-`H=UB60]4Qփ@=Q[*=z/+"\y mQɴ_ J0?4NZ { VWYnb6u fHm% DZd< md9Z u1/KbWK>}!3vg])z\WEٝXJ%卩Kj*(tCG^C-܊nGa?Gm;)|/讧"9qmo,S5Ŏ,Nƒ\B8;i 4c j¢]j{>7\_/) 2_cG #tYTOF:KCI +;#yA'v>81K-մ3yphƒj ®^ǥַszWWF<& Ť:H$6wdWhc2:/=I$zv_['whubMMBoܿOf4H_XLBoϺ4WE6D@qpZ,,a1eKOskFKqyϸ)6T e:X@U`vR[l].%~1S -w\v.g3on9>&luz4y*82 >0j3$rbb^T6 Om.Qh.C0%\>ۂM(; ҽ *bhuts\}WP:,PZ_p{\ oAS;JL{U"/!oE!2Z0bpH\n>ѯPCKTT^Yiĕېz/Ɨ($O~֣K&>±s3mړ -99oׁoYQˣ :#K3D`@3jw=h:d8 2J8l3Lv OQJɉ2}ѻEnZf)z-Woٗ ;nݕ&<&ʕw҂ͧ< WB;G]IvMEo)WIUm |owfBї/o qij ~]}oĸ:gYKBעlwD Urꦨl15ubb^LrEnQ4r<+y+?H?ďs:ORlļY'"=8loxW94cnbͫ@ bl[ 4vs.A[6MѪ%)u1lA-"GwH!߱J/)mzG+=+3ED;~:?Wgkn)==&϶n篞sg%UoYZk7c>\-)>ѵɏXkPN7(N"lkMt@*[ RzJ%O(F95o.MxE".{>I)"ȏȓG_#& WsQ˵,ȿ8 g}fzw!1vA2[&24 Ga1=aXf"lz#"qa1\G-RG=˗?(U5XlHrby k|$tbJ6~5un`]En zu W%P3yMsf'΂CFnL]̇_P5uf?gCDyIQNOs>t^Eluvus_|Zo݃G<ܬ^Jm5nNm${Cf*< Kwx8'x/Ham ~^%sDD#FR0,&{G u툟6kVQ &j_p CѦux%&daV_Pμ|%k&9yvP5y#W_OF"rtsm:'ڠ)r =^F,~5LG$"fd'Hu;>) ܕSgs:WwAD̍wD>@\'W<\/vHZ^@A/Zo cXk< y (N:x`Vd!Y;?m~^pI䪩I5hSsDŽf]`ӌLzҤQ4w%Zy1^G*$кlFry?W}F_Z8u"eڡ'0tvv8ւ۩瀚͌J59Tjܓk8D!&xDkŰ$0sQ[wϙx@lŻ#u}}h}.[kvh/li䟆?a#yifz_WrދӋ7tW}UN O8mټçoMSN׫e\E~IRkg\򠃕2`#LmRQK1-l^d]C<8f900&x"Gbn^]X;$2+|h>k!KQZt qg`9F:R~rh#yϋ e;p^0Bǵ5,D6R+ꊦoXwFW=@gDz,i'nfdBRtA0T?&`3<o7o'z)m#Q|bO -?CU m7DeZ 㚘ƥ-b4tP&3Hj%AEB=Ba? JIe6ٔ.KTA.$c2Ybo*2)B~p>Q9[[X%4r \ֵ^@( '灇C߽m oȁte~sH=s|[έqy#փ0jWS*GAԜ{R6a T_SƖ8P8IKx֝\-B*h=ؼƇ\oQ oqQ3?L9k`Eı='q/o9[<iz) ulW_PL.kwhP{'3cx𿤆`/$?Q(ЛugFGfF8[]|!{ژ#|HT;OY&m ٢fu颀U(iyV9b0R5Lz* 0GD ?c1vZpT~Ap4@o@ 3lN j]( /IҒɪ1Z:NXx*Z+k\niKGu%A:'e/@id(7҆6pRmRm]B~lfI6exg_bhZ6!䙏W t(:՝v  s{$ហQtYvj+یtE-SƉl{S?eY܆Jn:l($_RWCkqݜ,?ط"nw+ަ͇ ʙctaL c >`: HpG:ut=3CFe.; udSlZ2 ХQV KU̞h\_,g.W d zmw2"1zATqKHcԉHC7`y>&쇜 A0ɋo]@e=ؒnS?Q! J%xenБ wҸ)Aq X!1!yb|dZ'Sp{a ;,M SKc"\!Wqs`CBz-\HTuN|2IhVl ӗT V{z=Tkn6[ k:Fb-L=Eڶ5ok\>:uL>{'ZO>7Fϥf"@!IB3NMr^ӈ߆Vm҃ ]V{nBCn&.l [w3gX<y8NS@JmWҜDiՍAG~-<#Q౳mڭKϟVaET[!YyD/ oi/p䊂M~X.dm]BLfuB:INM0k/_έ'UClGVoEY|7sX`^5N>%6G%f݉ϛuf>᪚)vv)G&cHT|Qg33D3 V$PgWױVOsw5\Hu"1IZNu_ȍvK#E' 8MIdRKV8NcOQrO˖/JYdg+bJ+Ͱk"npkυB98CGΣjDVM:>o}R%̴)p+DT q9Q{$_GAAbWn8/m`GU z4}k&OUPZj^ҋߺ3͍Nّ2kQZhunr%u];to28?BkdDUu'vXF^"?>*6&{dQvU H Xٙ S Isf gm13 7فȊAu#Ii 'oTN0fg7~K&9G;ҙYWO+]t1$EqOFWvsm^"E.˹6(pٴ.K&ey}1cXI(ѳoKXfi=FpMPTQLwbT'S:VUnwr-]6p{yd$H)^:*)X_*(% ̩}|D!?*o9 2T80t-z?"*DPs3LJ7}m2필L }hL) CK̅mwRye f*{{HD>B+bn;ws7SXbPUu\;?n6~.bW}@@v1ؖUR5`ոѰ"˲NĘb|MM5]U|FLxŴouOm`o!!zԴx~&@jĒ M\GнOzߵ#\ {g34D [a1RY"bB6oBytN ZlNw4%;NŘ kR z }N\8ޥBr骄cPӖ4D9QX(`3U2ҤjH(FSc!p eXc.hԽ{( ~,;{@zL%wM{mFDDS_%QU{A@ڟ^8#_GbRmQ@uxL@^̝؉7ӱK׺s8kj}UIIul2M( bCӀJa.<DMp,4ٺ|- ,!$_2B l99,%C45ɁXx 6y؆+:먂XN3}bSre͟c_D)HGcOdw8%®BH0Ldzg`WG6a۔#z/$ʛIRMgI1`+QVz/A!Īς̂AL6=\/ {R.z0PU)ng'CouHrzl ]e:͹ ,Q]Gz0((}oÐ^܇q/LAVM8YF\ru@iyYwx\. MǴo!j 5/֛,d%_إra C[ XS 3$]ɇ x1;ЈqI9П13bqq3Rfd<2Jx蔢`&S j:m݅[O}&W4ғRmN{" /=2ʂ5ٙ#>/S9Qy %tYh^ WձyM㫭^Vlq)PvI<0ɉJ r_VY߷}bpSM:FInSg`Ƃw )c'hzl5W%< vݕ@JHEv8rA^!ԶI0>>u2jTQQf Mz AheFp. f*IT~@) }-QnѮPB@ěeVwK^.7D]U*/peS}1yoTiF)3 $6IAFTۆ8hyߞt? }!?$u[dy>`g@Ax 30akz-ͯo+nSQj039hXwJ0>&n^ى9a@' CnXQmX4⚋䂱os{ C/Q y5P1.cLF鏏AsS *1d5x+l=69VnA)d^BBW?(ƚFO G|ejcgא{M;ɡxBco3)~KVx0.[I_gBlᢤFq4h]"t``eqj o8V?+|G(e^mV1fsD@v(0Ϸ3Z< 6=Cf<-3hܖR$t\gƞQ׳>Z%TeL\VXzf$lx͵zUjb`ӷ8 |=r:a:^hZh-hhSд|,[E ޱKb  1y鲍FE ^ BV5G][f׌A#NȋhƒQ=*x EIǸ N0x+N0gpVWJ$ZxzqNj ֒N  >!{44\@?^yF;Գ 5ց=z$c>QԬt|!5r3R:!N*|j{O$3k;]z >;ATsed:_جHwFHV!~B}@w8)oL'x} ]S=՗k#7һ6 +_sZ}{ib]ŶC.RsXr,~7zz4akx4A?ث6IЌ zBJx;N ]~Am:xwSwzp "]},S*pV'hY}cэy_ES>;Sz0 7   >1LNF`ՎM#gsp|HNE)>.9X _ vAfs*ع= ʥ/ ^hJe> ^Du_$?PuǛ=`N(wό"&cs.^QZ^Њ:زkx8$n\ф2U$wwOz |Y {UfƿO1׈Ʈۃl_Sa%arH+I|I\b6jM7R:K.۷ W|Z%HY[XIHN.nLƍw8gG})TD:ցi)<.p N @$ 8 feDLR{앆%JFd5HBb@sT@ѐA;{oRAoj N&$LlSn R|Z+i&oa=4jfZ^J[3VI,\<3K5*3TDԞP1"ѳsZIΉ# 蟃g6Z~Om4<&bBNyO+O'~8/(= /ЖXZ9u-ڷ9!)EnLdۣ=HDp6ŊF!Ewcb?|z=υU~w`vͪ;)5&C_ ۣ"Tpje+lY@c!nɟr>d{)iUuj2HEoqXcƲ$xVH>{lї{4\v'~}<¯:m_f4j!4}GWQM> X΅ߦK&nFtÖP2CD /UP~VeFve S\'FX^Σ|&˅~# 6ti]Z \"M0iRlXD ֶlwc0 gN.fڷ@kb&/ ( Jj{0uvNm C$so@=>L<T@4SL*llqI!2T0Ӂ=חX*[pMk.)ۿJVVF R%F PL\l" -)g4/8oSyZUaBT(Co|vJBhFr|W"Kp5+-(Eօ:_g8~CQnlEEj˧!cVϊĠ+O@n;t'k}#ځ j O9+fEEh#-=L6^ :ؠ5^_ F:b19# JK@~篟(G$Ie=#$YlW;jVG=gv= P,7=K EdW7fo kDHPM{aw V;iKEJчdRR*>Y~(\v CB\_›.h\9'MrdЗ%h#:[V*)} '\UV)~JPg2^XCsaXF\,~7Y|fq_eT-xjpmߣ T7t jZ "7Srlc7L5`W`?(j̷s&`$ yZ0ۭEv} 8S{*zEI ?h|vlBa ^rp\o`YWAu|T&X f^_|w<=VWM (홢4>y] ?Pc!e4&U"ةE-o#ޢA?, #;%䦍 WF=:6@wC^MzKP ihbEn'JMT@ej=v> O(h /Bٻh]=EHyl˔z*JŲ䏸ȷ} .v7c'hq1tr4rW9q/WH"gFGifw_;"S2#Ta홹SC:vB&[ۣ!_M vrF9wڕ[[3\3~K/9NdQkk2_$)' y>F].CM˽H y6yc/nRto5):'τ(xU8Ræ.Yp 0+rs;LruI20/d U|H)T$6db&eFg<q8,A{SGykB Z ͭjdu~VC.@_9;H k"XB#O7Eʔר2HK6x=xg7WX@_W7WFǮ]h:u|C]%i.H}OwඪS@a44,ٖfh3Mwp=k]Sm^CWNesKX~a*uCګ܁!>%i^eJv_n&au嬾]mC;ഛ-0:P{5:>4V;zoβ~s(+UR{8(l*Q$[l߯ۖW&C"4nokbl_6,Xze:-K!>WǮYD.=`V |`yzS6UdK ƿ]1:6/6/yS_ =[\!OqὡE=܀ހfke]GZ{e/vӆ}J{r]8j˪#RDW> 4B]SV$*摶a SNpT!6ntьء̋?ɬA,wYua0*3q,FVbz䰝8&H![CmB;_b=.OEY6݇]r)~5VFS_JP.3.u޴Q4s9H04G:|R ɏ+.L(,Ju@|87oXBO+zk<霕,rQoRʌv( bcHQ4R0ŝ^X3=)S/m7M2g [oPRړ bxy!*.e?iTE`u"Sy|~X#PTF z3i{gn%^ X'8nL!xa[$ۈVF PT7Q˔C֯;)r]nnkYh>6jU2,]tMY//jzNw|ν/rj2Q=IB0(,ysr#vRmVCg&tDUJq ް n^߸{l8@+׎" h ^v#iYS8V:V l޴g+JAV~pA f&()ݽ% \(dI^48b;PlNjz=q?A }J+*Z6[T ==F$rt i׃7:Kx@CyI@O9f)v$Ե9MPIrk ko^t^ꇟ kk&OVPD M)5J Эf?K}hc<)>ݶ7:ɊA@t}⣣I[bZlKHd*,:I-̰3i@pnYN  il͓csn5)KMwWW4(}_峏 ꛦqAOAFq+x rz8'!a9BXk;I tQmLTC!MåFr#kV4c{&od\h uzS^Z ACe(o`ʫtI oWWZR5jFtD{}־soC .4ՊS10{$J.վ-e%Iu{k'.B+=f T5i ETE161DH55Tr| o<铬_9 /?ی8I)>TGC̻r0b{a 1[kTs,\k7\F)*PX48/sSb6ۢfs}שٵfO¢mh^"uň=ڡ6 ,7؋Qh^l'.t.0H-J'Ę&/\ĒCG͋MY2~s+n_ m-OVz_9}OnrZ/kn/PpcTo~0!Se͆b+ЮQW~ eC ΰ+ߏݔ_L=5d]sq!RM~~N#Ƴf&QP&ٗ<7D;ҩ9"*pb{Ӥ{Ҋ?ͥ_Ӣݧ/Y3? asV 3+zes5ȿ'jjzLj-_)MߒlX5(j MJ~ {T}u|0ײ)q|l{'%tRAHRs¦Vˍ2SVTФ\<`\&/G 6K  $r.Pi0dLݸnP7Dydт8 Nh>S.\T% )wMs7>meI8 =JE_ lKSG}Ov:+ mYqp 5SSY;j ءō*>"U2*m`7*Ҝy_qsMMw qT=ZZw{-m3ǶI9({hY~6MKR]DqQ@fS6kΤA FOuFl(q%E[ORd8t #lXl-0oJHs>L6rN/UeG4J̦N.ۙ08"'p&] hw.RK JGR=!?pJ5E`X nD'ꍖFW߂~a^%}0F-nFgs eÓ|dnsqf)7.xd1f:'NrɕS~PMLMduҵӍk%TI:Ax/u n3.jo2؃0'O}4؋G-$pԥjiFK aX·RށA5+7j)l]s@j4v- p>k>|2ojo},Y+nwu'ykjq>,匊Z?ڊ}JFx(W8gq< }6 ^M",Y\%>es/Bڽ[/ 3,R x9#uqFF07]A_Ϋԏ& sn#p\iHEd4 9%EnPӲv4?<K6.;8smN}gFX;$$&o c%JOA$`dL#/5b-"B孧L|qoevf[ Z93nˬ|iU=shǻŵ6dif؄Γr16KkZN_/tNjMhխ[oðjXmox]*VʊGfށ1ע3zӶG R  v՟hiʪA&B=# Q崐ىVeSI e)M*XR:Ϲa&L zzU5(?oV4#A?CgQV: ՊKs0ikŸtI7]4Pym{Ò+4͕ZDFwɤᯈ"=udž֚*YVbJ5>kWF/?ccYii"ѕhƭų߹s.hڠi~&$lOXA4i3R8O6n*8Sϐ8d(vFu3g nsW(̰=g KUC* 5qfLVap Zt 0)9}쐍Xfupa< <$s`s>1> x wg^[qlwy-qD}:(΋AuUիߤM5"M` /W%~|_#2#u 1\,cNLsU:5C"2Y:%3m2xbV];yyazxbɯ'*+FӢ!65yR ˬ[j~MsM`JZi9j<+@EncZ`/ShFWg>%).&@?M:W1&gIEJ9FH@ х}u4+>9e{g C\-qQz:Y)ÄU?݅pe|7%"ifoq(ev2p>!aVs0 &i:yz" 5g KC{{Gǒ;Z[e<<@Gp<9, Aㅣ S K3~vI̳W6]%,SJ6 ? [\!eΜ6'b%^vmk; 1=c Q4O]Ʋtt͘\jiuu_cmlʓl'ָs^發kp5&v9 ⸝oHo^/ ޥ;?eM~RqE0 ,%a[:yMb8'(E9of׶;1Oi0&wUv^{w t/~;rmhOA -#^9TsjUl /͠@`Fpp߁mB{uKIrAE+Dbruf ZK6ne0n+9`lmmB+,-9_$_#l0>q2KMg4" vBr3y!A&%||;EAKV gCm1c%ЬѶɤwG(|9VE)+K,2b1>q* 0$ X&fggGLKI?-N9,Ą/H'|?bI ќ,wmk{K{j )qJ52 șd0r 0uժ*b/ISo& f?t e&o(ǥkПYъꀕ &TyĹP.WpDTnLJq"g7LV 3`B>mm/%I!b_Y^lP5,n2~wn?%=k]ƚCc АFtP9+6 46ug>71dd/m~8EtI&;C]` Ypq6O4Đ,j'UBV7ji[6 ɒv^Dj `=]ʇvDuP*z}NZDJd$*!rM,ҋFwNN2} =5DOi!u=}|ӣt;uE|hSsXS '~6+ 0zY&`5)zxJB.񜞕ľ!`4pr9[P™ίQY8xn ,8.uɽ7wRfIw$IM)][t)td'Y]5d[?0ď#W7ƌx/!"4L5ģˎR*۝^G_ML$3 Oy>KZ۫P~A6Dx4Ir<-ΕpZ򚂝UWnl/0?bY3 bm*oZȆ1t>uHv:4&WTh1YeB1x9[=ї\zm1Z,±Hdy'5 :Kk9疶C9F-x 1+ eDrK*WKҡix *#ӕXCHSP\.[=5]HDŊhu6EPzѳtT܍Z;Itx>aw2G\4{E-BZ rº#{"ؔF \MtN@Z^ډ_[a@_"/h =0v vPe=/̙MK@Pm@d0XEr JHhMr<Ս#ӈ,/\'#Vf1;O,AuaBȱi#)c0T|H#9(;ouf46˒[Ҫ>mTsV4&${@¤_ DAqUUgq&˹1p7P*`w5s! oӒ_:LYc3AVMCwa(vHRh'w٦\qvmn靿~Ad^ٷh\w(,׶v DƔ ,֝jN!>gzxG}7&s=EO@|Iy5e (-U[g&!nĆnFU7\3DyCIӤ '!!l"-)XE 8`%]@U[z.i#UA!T\s.ԉy$t?{8R۟?E8!5ERݒ"48!L2[)jf5v`ArS9]R0c'$d\;uBLSH*.Π8լ:2 'N!O‹dSĩr7z;*o c~csQbYă#cW T| c <`| -u<.^ 3qY6 F5:<"=c@ܫHByH{=b]!,W-HsRnzm֓8 =)=\ݺ"]ktQӾ#"/-z)Y]8$Bџ_$;jPTYyXV/g?l(o5S{k՗ Ih!(ՅM_eX"\סUF!:馿r EV+:6dZ*eEuIsM!|\p 2.~q(M!HΊhk?<*YOR5+^Ɣ_\5$=7 $9EX 5!=Idm?˲+V63}D S{maMHav/Tcb$В-tQp/ uS?Ic6'{k9N汑7\Q}$ڽXZ2"BUo nr[i$3;hzQoTX;?EzUmZ&Qk+{^~H,#[΄ݘ&cU1g*HޜШMŹw%7b+]!fI/TRˌU~PX0XSFşIGxE!]ZZPʕ0]5f]˻GBO=ox~;G@ ,@2 CX(gtԩ5eN+T vSv@:7Quf9&e- V˟5s: Ur3dLW_r2 |!17@ NGW( dh}MTC>(e2=ڭ$T:5R&ji#P {7e1oҲ. U>s"uyЅңE$VЅyX1J";ˣ+ؔ,̬HO *|}-sT+J 1gtv*x {lgpM _ MY=yBȥpfn΄cu;LE :eg{<b! bBYO>48Pnd - _ѝG>*-}[UKWeB#?E^Sl<3 ⟶kkXзXk&BRc >oiP6DB>wj['Jk'w%-҇w;J܌\>=kmJ^ cĥ~u3 ~^&zFB3*A G.nVg~?=;6%Zn)aR_^v+/LqeX~d3`2qr#/ V9ҒGgq u z=1Z;W9\nZZ[.)7yƍMH)FڶE̹_ޤm/q>}7s@gQ?<`;b!/_^HH"i "|/Ms8oqWjqy|gg{z|P&Oyb -ص kP'CP8tZx)TlnLp~ΫFPqe 胵Gj^ qm_v#oTulIUwlnd;~e <Y*] r4+#yxzX:_u/lԢM$h6 y]$5gì3w4i^ zJݛ% Ï8Ar^jz*ړSWd[/^kǿɱh]srb&(m+jkjNij$WPFrS/Fv6D]6S)K MtzaB#Z%tQ"%P/ -K\paWl攖^G8[i/vsюr'K!BY@ҐNOH8AYKƯCn `\\| I,Ab^sW~*R s!]#)|6aC~36Nk,kd/yLQ!? (rOCJ NeO/I>U9*q/c'f3ro΋Nj_4H/[N]уJ6G4$Үt#492那]] \ COAH1hZ@ersPV |l!QݚqșZ>Ely}1 ЅT81;QC 1} z/CTh;Za<v';hOhwSĽ8 "!<UgpF;:1Π?`0T:S !8#qBJnx.ɅtR 1^xjR#\w󏻀=3qܺ:afJc PŜRcCbW ˊg(DDĨp*ۙ znG"XGgяX^ӂ_vMU0ǽzPCz"#Ig騶)j4ėmKAH_o_.]q 5/AH*|wvΎt8IQpy,e>yy~,ؒk+Rd~2nw֔AѐWrn#}U! A.7\G-h~ ;k):լ+ԑ-<Š383 D4_ƒ[R"s|. NLE_6_[-kEo˥+I/YfS›yڿqQY/hI2KTHQ,RKbH۫ Z=v:"Xv7 }-}8E@pU~z( ч_1t&&nv]Y=TQXfwcU:(D*ɞImλ+p?t,4z1y=]kJcvjx~Rģ-L-a4$h7Y5#f$;x ͒FB/F„_̏kB<˪n-?i󷻵?BD0l@x0Nr9<*?JzpI#d9s;3Ɋ&TP[Aej7Cnn{^2v-g ڵR@`w d7 W4Fjp"q;~(#IWI;X|J7f lV]w7| y"m|ňJz W=7 I }H}0^CMR#}ļqUt/dˍV&^58](a{jg xZcxv&dKK}:DgV{e+7RӢpnD ̛ALE?&s~ͫQI!5͸/ўKIrb<%8Yc W!HdW:V<{:KQ'Y|̢[9DԜg=`ݟVxɺʌ #/7LRmЧ{۽z~Nq~f.㣏|)&ZPoOlZrRy/ ƥVh_17[ۿMˍ`hI o2<]1DBRύ&1%"PlN_FY2&]RM .Pܜ5i2+V%q$UycHF*P?6vGj/TV#ӉI+=r[Esn8B #OKUWmc:^+g}d勦 e1B>FnC4c&`-V2 .h鲠Ē < ;q7t4^{Y:ȘtyYg;ڼlW?$>}$sR4g9;]E#H0ȘJRS͞]+\1j8]f<n٦#?JF1=V+"ՕQ0EH7g}h1LPw R4-T#M~Q+?ӈYjV5D绽5o/ʏwOBnBJNgڬo iwwy<ʻ53 kD-mq;0qoTяҺ*V`W^s5j"AuIԝm[C\+U3}EwR֯d4:Y#?fM9Ŀ3taògc̛˥,$|D$}[u K瑫 I%rjn q%EPopb 53vްǐ(d^gP)UQY~#V 4w 8f ppB[-д836oؐ0UpBiWmdX$`d\e c aJJiKGI^VR%"۪ۀq*r-V@o R`oW5VH3K,n{×|i-F,\`Թ"$֍f*㯌&OEqN;?aG@+[Fž5䐓@-ϐfi9ыs3T%lnYw̶8T4Ex!*!as'AKbq +l;jjVf|ZrB%?s|J{31Š:L!%/-W{%#\HIjz p}N<ߌq&@ʎԗ,Utw'#^_7E7W?$tW@oχQpr2g.:ʌk $rpm鞆<& Nw[E_\a sT4h+KwxېZ`Il p".ל7876&Ϛh}٘GMjjڨԑńh6;Ypsc *V6#m%eSpS3^ع&y7›AӃT'ׯlWjJVԟVxԁ ǀJzP5@oXJA#TT</9pG3@QޛtMNHۙlj˲a.Qdˠ2^WU(7lV-$j!`IUu1>DYȾ^j7/ ^Xhӎͱ#[(KKYH_Z-yy8QARw=P*18ei}G@M'_mM,E鐡)#ɳ .?AԊg.횣3ݓc"4#W}e%3Oc~L!GffRo}bKX^RJp=plT'${Ѣv$18 !_JArMl **8T.`$O5GY;_vpVŒcdEwWՕv)†?&-ۃ,;wDn}Zcҷl+sn xX^F: BViןl`aN]9 Nx:m\[R|H{-T G.JW ĉ#\DG`v-oM-fm V꣫agLt9@hv[I鵚p~jy};3^!0+N9>$^OS@f͡Z$g$(F,.]l19@-b0bkY:UyҨX輙|K2̚osbo ^ion/~D4LΈ:,^ *G ܈:J"{&1GY-O-,- rHfH,D|oplqNHtH-fT0!װ` q)!s8#7^ln*뷏^ c-'(`!M0ÃNɕ>7#+:*>C-14#.W! l~إ1i7,d6n.?GS3kb3 kXy´@aMePV(Z(vmv ;͟XHӤha:`7]:Mζk0EN}Y!q z~oe3;/@ )v1qpb7?afR^?_۰%6BP_}EFc̨)'>wc?i;9ݼ t%F3'3js) ME}| Ǧڮ YܹV=4wgh*˃#OsRSPl*0(VQ=.DWhK@^KTI(ؽyLd0WrQ W$ֳk,#.m#hK􄚗%LvEZ[[Æb*>GNn:2Eu,7w}D 0F+!C=kn&ِAKw]~!0,ק]T/jU r;c ?j_ ZC.H?yp#ZQ/p<glx;9s`&$5ƊZ@*:-PgM`/F]-%gr!0y_V!!Oj=Թ:&!I$u,VEM5%z(x"߽~զ_9Hn:2B:%t*c=OQ`ihsΎlĭlY`O_쿙G,Xp<2}c ΣOZwbXBF}A' &y^DϰE,=an=iH1TN:Ì1$ڷ ή) Du21׾/HGqZavz>-I"KdK#cEc+7,U`ޔjlV p Oϔ6,nc4CB s>UIxq B+F;GP "`0,oXz?^.Si\D ꎎ2)fQQ+%_ >9MCqkBp;Z]C8%;uvK&)gHG=qggw* > y/III&&%ZQX9U  G*!ŕVV*1tE v:&K}[fӚ<6v|xӑw{<]awv.fukKd&rv&By%G͗:!TS,R>KS t!+R 6a?d9|'ߐFa0Uf4<q>;X$^͕V3=QV'&f.Y}ڪ0uU8!>A֪ᤇ2&!k <[!jQ6$,pR1 Gx| t4ҪҾʎDTJu%iqRC#GD!cX$աmkȸ}/s@?챞($G8 D>@Q` :dkS^~:K;Puڜ˫(?8xU_ؐ+nRNG1gӞrVBHj;5c =YӔC;3$&ppϡ?9W`d^#FmEXlB7estV[°m-h',>2FMWB&-_0+\n:m)s*gK<)-VF닞V~k0ΎH`̱0U: Ϫ@Ww5AW~T2A-uR*x2kbz mf{g#؏f֦ VJgpg >5w]Fk<=(Q9L'/l*oKЧzARapD#ݥȠ}v BaCS?|v7wŽB"ۆ_HN_߰)Tf~-1[#^Ŝ8XL&_԰pKu_JhQ NN΃W;ƽVHH]1753!>޿%ZC\seLzQ(cSg cEgI0q*.Oc<2M!:[M;Fwsee'X0Ie/) ߝ ~ŁҢZK{_P/$j)\*Wrs+H$Py\; %Raս8:lbccGkl)R.63F`<j -v(M7$I%pJAXɸXP3reC %dm:d*BCLqkz, 垀<Ȇ yy c`#bhD[}.Da.1!%epV5F5u5)XsQ( ;ȊdIjgZ#=s8 Zϒ\iCZ] v$T_ݓ ޟP B{ x+>>( s$qh:Y|܇.BLhNA#HJ,d/xj 3"%eRۦ3 g]9.fB3'΀! k> Yu8*\I/(K;6|Üv[Un?Cdՙ~0t!w 5łnշvzАU*y?M8|l<?xn8 .7;LE4ywM0->QGJ"H4K ;lmɯ91M%>~'FL&0 s!Du7ZCBS~&3_Z4N$ 79 \ i#nsiu B)يE.2+KU76~&i Sˆ2XT >ŵ9QG6 9HH5yJV ;+-t?.̟0dnLL*N+rWTׄ(i&,sz^ygLfYǓQ(/Cv7]Zx߂N˯dYRka4 rzϥ̳= oUuY4Ih,# @7Y YoūQ&ۅrޡwpA؈򸥨Y בꙛŮoxuzsXrf_ 6P~:ذ_D.=R>҄zLWcuEdHXsy(0Jp١ޙ({K5nz:sH]T;l经~}|o} `rt,!']>h9h1Z/O(6gHԝH`z 2c1@ :5ZsnyO=~T>4|{[̔.Z$lkQ֕R`Y.&bjvuŦgԻc]X((yh]g,•{ z?MO^Si 5i *k@  BޛkAVdKCR6EjbvօەHPnfO>C_#BQaD)Kq,icXltLk}B u(!> !trJi]''\! {1~48țh/2"?Ыr ;Zk`qWa=(~[̇ǐ43 %]-kœXă4JGpNTmвIo j7/4+Vlaq߇4 B\y߼QXPUEqhZY-Y jUiIAxDŽf8U'yu loc.:s8YW`I!;jOgPl+.p0eX~.GzA!w Zc'*DB䆏/y-aW)\@כY6ɺ39o"4R vRiXw%ԥ==QMbo 0z>Lb* Ue4 # ^r|eXQuτ]lLtip`)@NG۲RT/;IwDZ'0g.J#S йaH4ovtC=uለ``T*@xQÊ,hj/DžF;?7r;LW]NLT;[ȢL{r@R;9:Anưͽd̷[D@~FX=} >.JA,t"{0+԰XX\Wl&(T:M_2 lT`f=C )~%v[F @6(j쫍~Щz-V:bڃ$Y یi]ǚo0 *ۦLZA+o?l5f;~ l-B j Ay!*lc~yў{bi.tVVMAڿ| d6I:կ/r[VJ$P3> lu>ʝo|c9>Z7i顆_@BVTi+QW.5ᦺr-Nh8BG&+%g,Ygp3]wDJ nf4]B䴏S@ ^*a!joG7,DS1!C=6)JaG>؝3zt̃~`.os\Q=Qo@|cs{bVXC  Eq|1d@џ$R%ʪ#Ygyeջ8֮mV*q15\S:E=b1~)RIW*ܮd\̔0쇂X An&Sf҃4b_We9c Sj>z_̿_%fKN|1c~zf%>wery`[#9l./E0[!Jl^pkMI{H~(`t*RO::P&E=,7fD@]cmnx-*_ND)!.'pM^ȶ3&@٘$! GdI7 *c/~zL9Ee"y;Euǡwxԗx}N,<ژu g{+\XdyHD#$w4f|j t;ئy^xĤ4k!.ȣ`z4pk}k&"JBt sDzu7:"k$_!>)3<\hz;zH 45iɨRcX8 (Z@W&x+lB"G)_ՖkQ fE( XN `8kb~.rRlՉ~mE#"9z>P3:8~;?oAy&Թ"3fߓ(Ə?u%w6c?1 q)ZH4"!bwjm[PȽy6uwѫ)QdP-% ]@GRa$ EGJCI,+)3Ϯ2WYs@ 7f 1Ar✪t<:W28v&#v iSolLBLyc\߽.R,% ;CBqgڰ%2|Vy}{cfm44Q~׍YXо(?{QBmeAzinE"MUR L}ANYN s"sCڷRr>y(惴LԎNyIr5➑Y>i``)\m cR=-B c߮].::3&—n{Ɲو~e%o#O;o^/_ ϑ=}p"f\uK0pf0XxYZ֕Kfj"z0;l)v܋_Jo2SCfƌѫP45%H8Pvg"H"դ o;RޮBbHrIUah(?ɝ/6铸F&ޔK\èEM^DGu:pɆR+˘܁* t0$PKĸ8e>I-i]ͼaLkg.9ϑu#dUו{Oyh+B%Kd3X+;›THaL3nZ_(HEb'X5=ʒH){$0IƊ7$#` 9G6$mdwBV~Nxm?j9~;0g@%\YKT ^%AaV/kp=!`Ϣ3n~-,<_,&aMN,UqxBy M%\y3Lv0 >528D]QuKǂ0^&Jn er>Kc#Pz4]/vj@16WQaA"|4^'Ԣ+JRg*bsh90~?S_"E_gSp0 ?): >*=*;CYYp\ieD6KVghCW.u&@cFOV+@-[4RCקAׅǧk^KoZE*`u~7v\`cԺBj+A]hW-C8Wfe3Q)vSܷmﻟ+fN^>t#3[`=u%phhtJ36e}=DD@&Qg aă` `C ͿY.y7NjFG]?C0KZ+YT>±ܘ#+ڱZ'>Wg G4e%:u,=g\H6>pp Q]q$X,8<*CW1 ]m}EfES/2g"7 cfOS**CR{yqJ~%&氲K>Q. Fp}X Yr#vE+sa;ޤ q!J3c"L9о#nYߠZRC@ԶX`g~nSI%LM[ ƺU׍CuL\iը,KVmbʑMoW{R|?V`HfzaW iũvVwlPki_n=Ȍq=J &5-j>hUge&^RW؆zC,N:u܆qNϸ״%Ƣ7wJ8ǂ9Z({8~ JW|BH H{X `}V]V@ Ư]0-{],0y99Z &ΆvU0nw,:K6xjh^&"$8#JZ)Cd^os&񝹫IY?=0NSj#ًfέ⅜k( UtaS',ar;CUυ9$H`00ocV8"wN ύ)*^We -_voC-U.S2笸LS0xf8TvࢩQO2m D 0c@S٧>K4} @m-=Z|LoXuF4g@ yH5\3i I|AFɻ } g鴇"EX:Er"dHW\; SC<M(N[<ϐ)%յhn9ږ\PJӛS//- Ra&cŦ4YŐMs0cwM 6ڧ7ó:怈$BEƮ"+o]%U6&x=<$lcf#Q fϳ` _i@O%#vb"dU&]us>aʚE^/;W)).D0|l|BYvSCDӈR[d[JvYnofj}0uZ;ep0;s <\1s.Z=Ux-:,FկoԠy{muP _⊑.bJFܺnc䰶>Wnn+`'Q\4/~ $KO帝BNBz6Q@_*D} RdqL$nTjU&jl@ϓŊTl~Ϊg?KUiq;2TKŸcS`p{?Ô\jOR99B~ GLNHOPsÄ&xHb,Ɓ΋;8jX 0[Hvi=!z#6Ɔ̨p?&cVJ 0$"VRi:ӦqGz,ɁXE>~Ѱ來A JvWa}oꞸBuϧg6e{:gŋ=1@"F0R%xTЉTi}E\%hG/`ᄉLj:{(M 1f;ZM~&zI)Ȟ$Tx6dqP^Fjeir?sbaǥbC:!i?T ^U٧Oz4da@bqC&&]Qp4rd#^ ]Xn䲌,JC0ij7֒ K 9*BX&>uߩ(m}x޹szg^S\g% o:kWmpz5R'lD?6Ѡ,"6Tk[!z bE ֙韔e Ϥ]D w%C!  y5,1VcIWd|q9 3.aIӿM\j4Pڌ*LcY@`8P,We?4K tWbw6QknƧ u6hXy$81z`Hɶ͕09$e.ɫDŝ\g1"{q[8a߾?&sV~UB/d 7Q$\i3m ξˎG1.r饹+x$gŝR E.66]x- Y~}%tk-֦UQK+ɳ Xu(E(Fvz&H (i-WV HQD) h(QLژd,l[ӳ߀`y@Xaގ 5JݍP|AxQC>1\9jEE^ei52CkGYC< bϹ.B1N0!-oi\"*ZM e$m'|ʶ*v d۠6Q409@c`B'Ws9>i awP]͚˃Ă-l(-=2jpkF#r>]>@,QXr~PKpfa@ňz[ 'خ?6`-#B6\4'yj4#Z41ʣ}f~=}k֐\?TDM/͐IБmW0=@/ռSUiq^aXqr-HJȌ屰0;퐝BGȃ`F!)RzRwpaGat Sܢ2Qp] ODUٞMyctwR$ʣn0I LDߢEn$qj Wgk+ҚwW^x%WR]" bV[삅9 k{*ѥV_2[]R*w$ٛXSK\.01Cdw944~ver۳4H[RPmQ]jRGj ~b^XS%tj H˥3"H"1uj'.++O.a#Kn6(gcNʩ?0[7'P\=ڽ#Z[XsOU҃buТˌJW+ta/~ _wovLWϢGS d2vm/hM_ K Sϸ4XkUn^3Vk8,ԫ v¹PRGB7zHy4'k$pT|f|̱YY6..: P$hwpp7kRx2^uwOej2zw3Fe<2%ژYze{eN!寜cDz0YݚEڿ+!OrgDyD&W2Λ'cyʍLӤb*ʖ'GS@ՕfK y^7N@CD^npE ].YAC֪̀\:]Oǡfbw'@gBb@OtK/*3\W:aNŘaoHcYOdR#OtDpYQIWAVBg̹D͓mUEIK#n7:ײ<1pi!X?sQkNo`Vto=' gSb0SP !ި( *tKH!QM˷C#`Ғ$2-Kwy, {՗ [[y۠V>I(Xy߭@r W0 6mt!C+3ÅXX3Vl $9zP*? E[ [TT~༻/.5BnƋj3{w}Mbs5Nh]2pRS9҆i:i0=1ty:mi졩0 ^'6 0IU$1PV.,%%8/u[C rQLA8x!6u6J]LvbH(D9Lzp}w8|s\s>x7땵jk*Y-ʭ+"[ u9Bf%Ѓl~(Zy[8FwW1iORABilw#*|V(c Wcu,~@%/By&b%e[5p]Tv|)SyG+c!L0<7H7%f:ѥp!-o45WqB|:"p9J9FI9@%kӍۋ#:`sD}wkR7Jqxrjl+_yWTG5K/=4RxnpWzi ;Rcamwb& 9H/{9!1w4k|$[sYS j Fm'/3=ωxIS[Я\>@rQ>'QkW1 eoH4^-1^U/ף)Kķ{Zq{z4gbKtn}@{L^/} T/{y ү|j63OAe+R#[SP@e\h=Xx*jS| yq-?QVM&fr݋q rQ#`XN¢QhqC4 < acK䮚 ?0MT׊4jEV0ѺkQa7 .z؉TTDԿ!)|g0舞%s463aUTT  z۔KDܺ P/ T:RiC[6 XU:q䘩5Ks lY 86(4FL-spKAz[#eԸbтYO ~b4FW$,BOCk 1%'guhVND6Y` nE;g?Gm"чSS$ wD"wgsy) ߲LĒڴM`Ξ/dC i կ2\$QO)d^6@!i5Um]A Ze!JmvBEojzraV!_(5ӽ5}JF&aYjX(_|uJoܧnUs-83 twcuu_6mI7>y;"0~-|ݢn1OnP3cQ鰑B\FuRnw8!v)}#bU|!d'Z"A%"y(.l籉Iq|6?ʳ $m},4#/u1c2j ( Rsn*nB ,#wY"zI]qTG.S)gm*rfݟ/1Q3\9m"Jh@xU B=aO+TtZ&%8z]U7ݚsؕ7Y|<%V*,us&It>.c_/ER_?A y; g#uIAmpv}8#n tha|TGT&Es)t$!]:ɣ2^B|u|J'|g"tmm4_!/sE\J$$cϋm W[Ĕ].z*އ!,qeo NF(;"lk.;V?6rԗ)_\`d"UϪ9!~ج0"/E_['NIm8|CǘYƽ5I~V2>fPBQ0g7]sW{D&4]_ToPyʿ&m|{1I_%Z0M;ȋy}LY̘7cFv,PȄV`?^upWY˙gPXgֱ-vMX08b8lUYN[CRGwՄV l'Lon Mc4yc4WMZGMUDqV(@Hc-ˆ~|bw iikQ˚)eY.dگ뮋74F ;<D-l}~+&!M s6*38ԓd/ Skï zSEUpkޤe'b3qug]aVV #<:AE=vafc[fDv=dFK@~趀wBчM*HtOYjB:H,4h#5ff]bĎ8~ R}nْd [@YU9(B⻅ɟ8NV0^5t{ٖe[dBItBg]\_p~9tj;n$J-c=-KTOyw0Yq=̫HEEJ +'4=HOy%bWl9ٍf3,㫅 '1q`oҥX[^HsͳlS4驈 Z3 ly4g!FzW\i"6јLl!0 c w6ZڼOnqS]LSz!#97&HEKd88Y|.ub.ht@ 8vY,#7]X=x.+37&HW5rpgpxRUz"++,ѝ,ba*hT77'HGg&]3=wzb8qƼ  ݄ 66{]FBS5?̽FCXѴg+q}Q ".y*]Ëؚ%:"sOΌSӔ"kG4: >r s=3Ï-Ky4rwa7@zY4K6)dy( ~͗<iՖY8mW1(n8g?~e>qY@ P> }|tw3fą!.(U<@ ^U=BFFnT(i !OB]I/ H xc\Qh[M8v t@^q/G, *6ɅG;kp„*&-ۍ"p;M1 O(D<Q>(5oH>*o 4ۢkv3כ|5x9.Bs .˽R.PhSbO|gtW8h2TDY[% =L;ϥD{0u~ 8K;ŨBEU~& ,6xj E)5fl]g3>U]IõAb0NY.#Of]"5*Pm0_-5xX7ֺh2VHL <*" J*)NJK;]ָoѻY[O^Nf p:H53:wV &05첆 kԝxk0qV)kD1][W9 G|X,%Hb^Ȋ!Î+ HjfHHA9-O7 7tA]Ž(w*WBSRI+ophs^Yq*;`SN9G|'Tl۲@&,g^uUf%F:OР6ޕff6&{W8XQͥ<&~%XÎO=󧨼m/ci5Of avh>$pgrM ZUEwi~RO?p/Fs`Ǎs| bɈCy e { >d V+*d'>9LJ!JPQoMY%W|rgĞɂx_j2J;Zо!-}9X7$~.ce4mkFu: (u؈3"TOUǢo$eF6̹U]e?]ֽF7@^ZmYpòM}!v^Ǘdii5ѝj;c ڢS #=RE"CH>Afu8%Qb4[PS?O m R6r |}JhswZr_FAq`c~F+h 9ǿ_iY!H<;:H՘mJEgLYKc_‰J{]7=I11 WѵWZ?*C.T-ʁ@:-2>:dɮ/q_f3!OZvj؁75W4ybX+{KkE]1!eOpbe)p'YnuPB5J z|K5Hs:{ 0NF%b)f,ʸQb8 ^*S6}f^qmS ?j(X!5dVXLiZOG5"&Xi YY,qܿ5Q-ҝPz /:Ss;N=P,pŎۻO/o#|F6e˹pZ蔝YsQti&  &j ,cW )2w JA1 Jvn(]WҲ{_{u uZ g]<$wJICJw%qjp=M0.'?Kl9j?TɦOh 15Z_es>Aidl 0^jE߇œ} w;{E]L^3$e1A<Ⱦ _R+h] w^c %p@ߨk-x  W'?jatl 0lt8!MBGK[3㐁r8QׇJT-ubfwa Ce{ JlV~fvqۊR:s?.tZi9SZS^,rVp"5zo(*aT|yp`CA5S1i%ZMfkyIڤ5p-sbߐIsgxv}[![)tKOc5dۦ "*C=p !" G2`YUŨ &IZ:m9bmm-=&F8E풢d-S*e|ʜ`ҋx,jlwJ ZcntzI+`?{^CdL(P>o WA,(xE#ƃ90I0##uђ!{ͷn7A'A|.j#]irB@F1X0mT0ˌm]u'IOjU}!8U3ز,55| N_]VjYw2]MD@o%̔u5U(njQLn,GFчZo.zM?݂s3 kuh:[e3G}:hv AJTKaV NkLKqf^ C枞hMVv`J@SNYUXT'ҜZs)~m6G8yaكwN+bjR8ow_Z9lI] ~ZREUUd#7G A^$>v5; uKDS^ o! %̻_]A+i~ׁ{JPT<\i.>7嘗@x`(nc'Љ2((y/&¹10؃FA=Cm-u%I-ܸl >b=0uZv3Ț4{k%97>yh-@zG3xUګ$p ߓkz ﰚ`ބOTv6&՘9l[>@&ߵBi Uu jeL ixˆkL!(ه^`Jn1nÍ&_<H@,'-Lpf"c E텄^C츿$ ]K4-r8FPU~J .M&p@nB.˝B'(Bxm`+K aD%Ĵ( V+M-2jbލ Q]1s5T3TS}UtnF/H\N?h_.B9\oaЅ5㮢YC:Qdzt/T*]k.wo{8 п`sBizB'HgSQ'4.}O1,oW^][u`Ns~>g??hzTF6ɀ_$!@g&%f/]9o.-;tä[Oaf` h/bu7Ce<UimWDHȃVsߨ3;>ԾG? =X۽Ѐ0C"LR-!T?E$'h WX-#n"=4>N@gN8MLxUq{cxCDY=GKpIK j1dk,jM lnnxen˟SY18؎@[R*pY܋4V^S3&WF(7hӬ W.j;j9ۜ @TK5h FJqǶt]{dFIҽÄfs1AO3F&j#\%5<#|"LKA[iYfeQT24T0R09Q02`)FXbpb;Y:Rts)zxfNx-?%% Z1fDL~Vm˃$z԰6C6@sչpx q5'3ē*5ԪZZr(C 1烼|C@7/%pώ6ڵ1hcճ lC<8-Ls͈K>D 6f6ə >6:9<^-[܄hq`D叐<9P:&)Coďzv0," yS T'LY}H4|')i_;Tۀf,2tk^цFzu)"to)P߯rr~҆y]w"xJ1)`ܧh9Wgc;B]ЀuGJdEd^wE7MJgy>TzTV݁ 6coĜaŅHB*X~Uhr2"HR)CH($  ߸8WU%U<)@l+xWq(;Xrl SG2ϖ厷?#sGAUFHEى mfXMm7ٛ(kCcwwh?;@'< QAg=/C@\=[ZgfQM< 鶵GB+vyl"[MHbM8_X+ 8-lcISt. !d0׳xCKnc!m];Ȱ߫Z%qߠ"-e+|%-!5h~ix"k06e7cšgS5#ÈR⡃lo ݬ ]Ŀw]\tt=wuy9SFӘE0:~wPLJ%!8|p X|IHvY_#4[P;4[mk"Cܟ򰁩4WG3vԷ;o t1j4ɁmgHiKOM çɿO$i !&-Ԝh i V8F:~ICg{mv1$:䨸!+1]H'㽓džӼ]o~׻:{/ݥt${a: ޑEQZ lv{)kn]Tc}yTu+>(Xx vXeij#n^V xwr Iyw2~tmb>"kw*Uxxٹy+b1tgh C 0Frot=nL֓ :өnׅgDtK JA\!6F*JWòs4q@><|XqjoXma~C".E̖k|Bt.WY4\f)$( ؊$(u-J]g\Zb: >[n](JQ )S=P6kZOQT;kUw`u|1%ʼ2ebF^YA籂ͦ9bKseJwX(pXf=򚡮TnE@skW|Hɧ8yIxw6AJሒD{t3: xIug\h'h=:,54-k)?&]u^8 Ä&ܹGw@Hߛ2ʷv I}RV ʹ!tD!Aă"Ou)^ y൅F >Q/lM[bMjx۬[! 6nQ%BN[NY%DV4OWea>M~Eϣͅ?pq@؏o}c0b A<2?0چ#+y0HJȂHV%b 3108֪)|&xo|ӁSѳGl\lȆ `[hhEg"hjS]0xDJ0ogZ՞lZ,kSci]'JDx9/E09T?ʟTPh,AJX բBsOn%(֦ԸY{Y3 ҮY݊$˨mzכ+Vs[8yY֊]'.PWYgmZi{ȍ\ R7}]%p#}'Wvzz&7oHyVk""k`K[*_ z%D|Ck7c]Bbz96z5`)C`:2A`uA21 kK21ףM/]#SisKc\>"di!L4Tpc̮kA Ɇ;u|U˶"Oi8kB8AwHG΍ >v O+-MV/k{m1-aIZ^a %'7'ZzzUD d@JY3`qKm8Ru#^f'MבT)P/ݺ,牏2Sx#Үn."L𽓾T S`k|^Ex?oбz@#Eϫ5><ѻ*ӔUŽ1eƸ}# 2anmٟt 6z8G`N\]elJzNЊc ~>6 )t!+hkT&}!0FIqa(gG|esS>IPDAVh>yWpX*ڜߴrW%yVa /+{?d(zg8O扼{@ߑ b%| 6ftЯl,wP y|<[6q/fnsW *tu:t\ɼn<"drV-Jm-IVg\2 6?K{lWcLwXx*qݾzS- CC;",Em1]1>O0[C>i@~eNzE,}ìM]h]\18ᆤ [FeIsy>†2vW AH0\zoi{yMMʿ4zmc\o4PHM3`v:%%#xrqj?~ISt VKqĮZ@1$]a$d񢫲MA'4ާN-D|~X};>o@ E%F1Э:tRVt355 Fֳ  ô hI; :[i~V_(U'*S,ey 5NK=*X@$PB,ѫ='K%i؀` Wl"+}:Zi.'Q]TNds.єm6x:ws}+Smg$͇gr5}17dPy%K*ڕnb {nw.D-Ts]_kg-֔zJa/B@,}5B7PEn= ^La ަu%IP|Y"J JN,^8ƘJp ')o]gs 3IU} %䚉cXʹAPΣ>g[2ƯF\ث!LƵP=5-rA;s5c{Rⅆ9jF),'2Y~ؖ {UQ3  FԾB_?TWۃX3G-=oR7fFp.85J8 S`i;{0ĕl)o.E[|_O= N,tfa@{c;?3bt5zqt:"[7n 9/]Eo H-Q_Ųկ:T=Z3zd!ĭzV`<3L.Hn{4+N V Jhj \>Qrq QjF}>H9Gx>LbZmNy HUBl<cQڿf^i4:u˃5IگHJ޻a6t`|X2NNi:[4ju/2k2rYL#-lp|tD K<11퐟 O.C#|u=MR+1bЯ]ZHc[m%:9_+H;?x55Wz"H#C8FҴ*|Hm i,r/RD=s/WҔ0Gԕpo!L$zX<@.CM gf[8 ʙ6e}6S|S㓢#GoŒB:< 66Ěت.ڈ:`?, {6< A.5+$3ViE7~)kP&Z:KUX;5WJ0!ƀ  G8ԸCŒ{&Bja8PV7}oq*emr@>_w的)mm=Ehn4'q$$>ـb{>`~4&٧?ƨo(R(:~| )gWeR 'oEvZc\C#ZEDrp|M8vE/|Sƣnʼnm\UW` A0&LOC:83ӡ5D s5t:0|Ah5R1cA%V-JdzO5'$5WP+`[.@_*fI.Mdcvpਢ7d0VxCNdCk7Ǒ t:3dWutX#)%i[:mnr w38Jk8 mE?JN!MY%WlsT.|@s6m/$d:=;jKR;u8Ӳ/-9:AAiWsj&'h  IJן:T_Ѻ('hPE1;h{FjOةe *6k !TCSMy *2}5Xi@9׵ĔgCmvQ@ZL8=KXkIozovΨ +g94Ɖ1`2^x6M |Jʫdz^ Ub%v@ p[tch;fKM *Gf=`An_lUwBIa-]S3k AWh>JmgQ4;= h=~| )LANzq1u/@bBh΅hw`M4 2[I$T9~|jCIfxaLEh@zv_5}bN~ex' e;vvv"*+բBajIZgPj ;^age0X[9*_ozG m%GqKJWzW.՟{4q\s W%_*U%ՙXA:*850X9S>#c٘oŷp\ /ԣAR ^LC:Ќ E:c%nha-DUF +izBEߙ ܭF 5`"\w&;{6h+ЕQhe´plgMGXV]5T0U (iU׊E rf [Iz0v. f ShYi\GaZՖG$cɫ` 1P<*+}4{+*/+,`CFb@HD]wH9[R?3>q̺7Em!HgL&hwO]9rߨ{Ot`cDoY!9xv[Ll-2r4\XHrGg/0$yF\L\G]yv\b(B,077+k$8 B,vqy5L+"4=3⏍%oDӿ4%ٷvIƔI`+]kx M11 Еϲ~RStvg ~+cV }F9I[(:ȷNDqY͕cþ]'6Z||ӛDV %^Gmzoq":cW\lh2IʯqF~f۽m;}#`u7=ok:}Z4pL_.gĈN}0*sļu9M0&Jl {#]3߾Bm>0V.d-cLU˙J_~OX3./v_Kbz\DΉ@'m;H~&Hٚ&ʌci<(r[|!䀢ƞ#Ȭ˚9(7sBc7:g#'l8iޑb9PRw g1ҳK:ꉰ_)wIL#aB9 wZ.KvrĨ~WQĎ,ӌQ^ fz jcee$OSsғL@t Ԉ$awP Bx;"aqjapy Ax׸!;Vw #H;U<'cz6 -7lUɡ߱>AY\sYwEP s?U+ݷx}YɃyB=Ǻ /-6`y]ߺV˹zOIfvjF@v`2n>( zn742嶿27)U81Q<4|ꊙɀV# 6Ӡh+!Na$AQDw>-B*ŏz*4;4ܑnSƨ=9nM8W*7{b N88 +C1J<+Ip&r<2JDВ=10U nf<>M .sxfCS ~|,^".j *%sx 5:QXJ[PLjZ l쭔,؂E,YW> ]vȁ0P{~* ']>TJi T|-Je]P=12%JO:"(<ߧ42 RO b>-,̌t31.M's_w7;a!)smCdl88c밊S(jg׳eLܬEWpr _b*0@W?bc麪٧]n VW \3sw!%3,H*qvcOұ=5|TK/MHv.)Kp)l|+>IG%/!9uX(Zѽ6XFB nqgɗL1?R8{ ԿEo39Aك[v ݅SH$O1V/1}%ӭip!S5'?oe_d>3;$ʜĩpH#[3ذ\pui /ڕH :3])TїEӁ2D0O88"d)euGM# ew'EE64ެ $(KVx\fW\{.`4&hN6O2Z|5w~I}QM5W`뱱X>!hO8 T6QDdg?ni}Yc,0?/1buva<wXX)dj,*4*^ġ~(V؛j ꏂ^t2Wz_/\x8Ky8XW{ތ4jTJOwцs7#%[-p-. hD?{M/dhjiA+d8ˁgLpOT<:D[~H;3u>Ñ}ym.=;J5Jc7HQNQL.SXw:Pm݆JT%[{_z}7FrlK Kr!$j- Q $" 1z+Ig:5l*J B "хИZ*GϑWxO<@^83֗7]}'ZBոE+w-~$ϧ\7s1 ٩.)/}h-GY.HkH w#D:Di5};SVn7GC%49q͒6쟪_?~ uXAA}{ fc QJ[19Mj{0?=,ihV6_qXR":œM_{bH0 _Y.*UIV EhiXvx [-~BAM"ݻ(g5ET%'@+ Ool1/Ͼ>9|)b@!z *X^A~=C)eR&EidI,y)W # ]RrS_@ OػDC+e{:6lcS3qulVr5͐.4JjHa%[6(@ >ZGkCyu7\cbw2DS-dC/HQdu,ka]̨xd*-(=)valQ+7_%8ʃ*[}+ cit8\1ȣpzE}P>Pg5w 2m+n xYy"c.ӭ<UHPMٙk5m1I쉵2漢*al(o.=m{Z/*>Gm=C 0HpT>^_.>UjbVɞV+vH>:ey2 v<̛"7PV](h^;uĢ#ט5\3gL Du=~|ALej4|Fj%T[38 $ey99jr9_:}ty΂O})䤿jMY`&ҒL4+ϰ:yFQߨ[JւH3Z2yRs$,0 !%_6꺷3 NP%v(wmSrx3ƣC"w.@hGn˥n/MƠ )t P{H~K~3}{2|ak_*lJl62M/OEWz4zزe[ 9[دKr6J[E[_dGa}C]~GPP,'Ȑxb~qӜqS<͖Kt-N yWN,M`1mQ+L]]bٱ?OͻmodAQ?[:ܟk—uh[eĦ];#s|D Lܮo!f)[t'皆\А|#js1Qjss/tDU8zkn> Z;GvLJ;$*R73jO*VIn Ϊ vL>U|37ºxxNCrzHu5g?W}PhOf3iŽpqifD25 tzG\#)I#xIa~bѓ8ȳa86n$s̆=&SM5 Q}d&cA5= Ro-&(' i/HAՋkg|$ƭ3FM~B,yL"‹HܣPe'W+>?n,t*<^V/>G[wggۆ \VýJ1F}sSIBn~l vW`O6_/h?9KݲE:;2|?h \?[ЀcYܿEf Bi(|BEorFF4|ŘK:5g !6ZH/倽/O/\DxQ1 jU^_[ ,ݝcE9.^AnAR)lzO,O]SLgzw+ ]3x}ۆzf[8BA),_MD2e{|xCXvr9ч]'f9u 1 1^DfV->:ZMt԰YOBN/CڵG $\1S$mUc[^͟d|θ#WOҁ6SHۧO@ Cex;V|eZ;~t,⯔K9Vp$g!"vXϼyGd47"b52Ƀfsӧ}vܚȂMrYrb2-^ XG MuRɈLO&|"qDЋ8wl| f9ZȂ µ~0v#.> Z;Z~9ǀ0*H{dXx9lE붵jsR1r\a]qEBޣ,߼8X!(|–oX*ԢJ#UB.R{ŕA@@y * V$i/Tu)TEɛ^}SpTJ5τ6᳋"IZ7~w޷r߱bm21 76Oo Ϥc"͏n>: _ !e 9 Jއ`bq˟-d wE9b@9o]4iXۂs dLGv—U6\R\ ੥ 'ə_a;N\!]:| ܋ ?"| CII*;< 7mс-d skOy-4`o7o>) 2Ğw`KyڏRoBXTpX)6_lB 0tP[+B(Wi nyġo>2%ލb&Sbk 5(HnQ~hY^z4KNx*H |xvs?B|!-do 42%aq5A[Np%eVY>,wN՝J7Wʬ;< HԎ&3N=,iw=v \e7weT~~/)"m[%F.(#Y]YT$zXլ(bsIp>Jiw8TX[AW* 6SizQ|`…WC* {biػa Z\% $>bAwTȰNz=;bA|U=eQj _kv"KM~w>8\faXtֽ!"N?Hlw$5z\?/Rs_  "g\E#kh!6&Lp{}):xqņ]I%yT5V\gzmNqe]$rY8_p"|v{$Th%%Q<';7_LK訫+׼; US8w 8\^N_n i]?v)X\E .$&4w؇+#܄EQlvbl?CPW,SSTy3l r/,e)e~Ңl0癨sS.#Ҹe?9S懐X!Fҭ4WCc79 phxt!9ݺl8~cxj9Rvb+r ,+8? =q8!tSjFP 97d[Wtuu؟CGM6S&b&^8(p- ]'%No14d\nziWp%ӕ H. VC[/#I7 "WG=M槢) U\[^0~iw$K56\iZD;E. 6T;]^uTEYSkj۪c|cR]H y w{ l D4t60Ӑ+F~7o`7'\s%j'JtDP#w ғkе$y52^djws<*!̬vltWΒ.q쭱 ^+sf6 e\8AV ߫x륆ZX+?pFrp<4kSo{ %R~ XGaMӔ9 _6M,VaZ',mv1^ t@D^n 4tP;Ɲ/gF_nF@^$*o˗,i`P60%R T ѷ3.cw<9PVl 㩊^/)0K"^ UN!1Iv {WBE,26]t6(%?{7})sM}A;6bXsߴ˦L+% H%Pl2^k!QĨ  z0iZ"] 3z1Le #_ $MYXE_#}&ZhR~PM1nКM?{o(B+8~Z/R=+h3C-j{=~8|S5>_na7%}lOD XӒX"UԐPdC]X-\WJY'n<eTaNT%Y %!Yg5b%(ԸnW%j/F/n ?%GS5RoowsƓxxNuF(KZSN*Fbb(BpUm3GP~,,@M#ۛ#QYXc??\,/";*G[hgts-%|DuFNIDǽ;M(Aš:ij $~[򦩇?Z Ѽ8eͽVڨ4Vl]ZWy-(duh鐶yD~My@[~z&ۥ 5U~fWMG^" UObiQʭ 9C԰Y `lbK8=ɝ˔ɵu8iD]|MO䣹q5JI>&(8*En n?qqUXh&ߥ7inZ;ĽSrǃӾXᣥ)[[gD~G{LmUᵌbv&B55`DfhdQA *ENH+ }a#PÇA*A9G;i,pS#+B*1J_"R^qdR̭la0DU_Rޤ^A 9k5tzՋ%J;Rb궐C "KBOhh_߮O0K+5W#wj`T66%#q(xGIrca:HG%.㕏t-]n- %iٺb`\0"JU@'?+Qq׺x8{*jki1ZlK{N(`*S0nJ | 94TZmV:24a9) څW}sxyG1VcYEYZ@#I;=(6>^Cy:-sFmq|2jfDaܡӈĮ r zM/m1nLw7Uaj./"C-<8 j܂ԱMo͸1þ u^yӍfA4Low^G*›D'];w f[w3DK혁bbM谝p.{ZXHN#sӒ4X`@sAB~k)׍dnJ0u?h|x2 F~!hޭ.tŔH/ <|xQW4 ;`HeP]¦o#ߺ"M%ᜇiFriٓ 8{(TbSl_LVϼ68YGie%S"{k+nbkn2SZA+N-_qIأ(661AZ>42d)rz)ZcA$=8XP&EYVMSJ1IRF;eEA-ܡj\[-*3gT'Ps٫O?kp)o95H'd(AЛk^|9PV )eᐼ&d ˨ GuH هS5lLkDH<>RBxv@k'wR/K3+ z3](benR-v#eb6,l ಧ'K?L.AU'(&p_O[ݙe2Q!0_,qT4tݖMxBK@X'IﳸݒKQd\5QzRwҵT0cUߠbhidz~N7Eu6" vs`vbf6xZ0%gYߴ gwFA̵7NiַzulZUBO̘0KrRwG?a(cy.|ݻy7q.DᲘ?v2nAqk wuRZKw*I_x)&ǹ1.2 ݛ? pٟToJӇ2KhNX3h[Fŷ(NJ/1ܮ*Z2%g( fG@?sH6zaK?gBtK܏ ^#\8E ^,* @{nf QW)L_0/ư#G䉔C#cLL"`̴N.q"Rŵ#(]N/|k%diF'@(M?xƛlՠt0^'- a_FH$2(^߰2,L6D6l8L 8_v5氫2ݟ#-%"[vq6|ίhFݍ Hec2 H/x=5S˜:$7x |<3O?1Jcvt;l4gV+ 0!%ckUqTqbg:_dP"05.Nhy;K0dzj"GS`*Y70>]ebc;kl!R-)V(6ppq`*,6@,$)(;A):X$h`UN\y&{<CFoGL-r8 τCiK8"̱cs%|Q*XWmf+F P1* v]i'A﯎Z}„s(p2ݿs{֙%;ɂųCQHm%|4̿Ja1]hV\nnt<)1%Y)&LކvF:)3IIGI/M6 6O0]=ѠW7G>m8/j+ y¤pqW?fx-֊ş*dA;G'5zv A\.u{@ ͋K\ٍ(Q;_o7nw G:_ZgdCb$}]>Xdݭ@vws= ' R6szETDSo =W@2ʱMCJ[Mm܉Xi =%n:d- :Il1d)AU/Z8TDW)Pq ).4 9Kl)P,2sxgd5@x>mQ[[V]<2dN͹ I5B/{#z`EPU7 YABɔ\ײTBZ%S|+;9dּb€>&3%U@DGX5/:&$Y$GA8ksIJ/$I&:ޘҢ)ȉ9^$>>:-GYwAkٯkS pdw[` pAi.gMLm''Jl' e14guJӜETdY7 V$]Ah$.7?g=eĜEB*sjU\O=)0)Wr.Z)e+ Oޯ\oY> 2H߰\/ZBÇIWn^}Te\լ2Mv|q]ซ(:sf'+*1L=dӵK0-a-@GTfK>gUj6{y}(Nن'0!R ZrdLIt,o:Esy>&bX'sXL+ȵ^(5_DyZ9x >>qkt UqicQ}A27G7V y6Ē/3c}ƧKTS'Z~j<LqxtYE`̻@2eW#ztƼ>'p,\7]tTs|wǞ.[3J%yU.U||E9 0&Ld)?ao4 |YX{R/6ų{yd+v%Q+`ĺT⁢JA[d (&0Z(#RČ8Gq&?%.kzIt:b\kD&lZo TVf}x'?G@`]Ź L̈H̕6tGpj ՗M_TS4a;^`F(_q,I22GѓX^ꔣm:<9hޙV5PH_ 6NQhzj{ cf::zz~ 䨙V,b*D0JSJ?d `.V]k^ _[.Rڞu I,^ʊsY 2})nY@|:b.|Js9YۂA1oL]S( f_w~eF5^`L_{}6vhox=dGs!^x/30Xp[۝7(h) !sLj-dnGazU /`]lhxWL씖U@R\gwP#ةʌcg~-ƻ]; dWt3UpCR`DA)wźf7 !`뗘OR }չHFM+0<iIl%$JQ#ϜiD: >ؑx{xmN9bi:'*e^zMr;@Ae?N؂U ܏#U:'fwKT=G&qCx(fB Qv-s7.'֩' ?P&Nf\( Ȧ~.V$">x=ߤᕌnDkqxY =ΑeE#34h2qq7F-h2!@b8&FDd:;`C|5Dx5{< rx.<ՅWX=é3+Os!)sX$`mIjONYxRtJRGϳ~]uOr&iMv^)'TT~{[V8;gU>[ $2 uģD'LmjmvXڢ}9$z ; )-[u "o9 73ݪjr/#R_Vka$cV!u{ݓJA"+ QzA~ aBD~˃.0U`G%P;DoEEw;"ZZ;]&D9C5 >D+<(*ӻI~j9gwxlxAs2wȁ0 CmU][Mq m>ɪiqd|\%@uhNI4̘C 3,H%I*a&$E' VېV tEad<Հv Ti0B~Xi޸7; "3^( ]_!SbA9e㕘OKdpauu'r0-["\d=ýSk1puf&,eA-fX덬bPGcÅ:u`|˗*x"HT֒<ҋ.-2aIUαSy^ 3e/s*',"Uz5Xg*[ ?n}07Ͻb7RۭUz ؁0YChJbT`4̡M.:qA|U'8,ļV""$H8z!8« .kSt~営 >i\p2 ٻJa/k}tƍ{cT%ΆީI<_9Iы9k1ᴴǷBhr0L"‘˟t-'lYSM0u\?$4)sj0˞ۆ]̒c6 Tg%?8Ubi6i/gR"9,.@oI`_:9AY<ybE@V:o:"}l|g5iu 饎x_-b٥\`7vLf4êaQp8HExv/Í_>h:&tnHv*pC~ϻ3 黀u 4*a\>N4]\IA Do0C= oHM &תy ? qrHS.UDwҰ4qN*tB;G͜/ U;L"Tq`]cwYtm`Nu_D.?(P (rE4<p/SXP(;o)}oPq#1c#9!t$(j]+(s@oj@$QwxPi:!3y`) 8gVLSGbM_؁</v]ˆ!%=î-.cvln9VRގ`K_}%|u7}]wQqOZ+azf8[0}tBПɫFLhMmJ"VOzG!9#arPi-S&LҺ y͑ z\ݭOvzh$>oxRT<% HY`xa^ aySsx8;;4r+l;[`.tɧ,X$o褷 ޯI {EmأVP𗚟囓qMeRCc8$@Dbv??Ɍh_y H؎c`k rzf\x0kΘJܥ+N{TQVMfD ˡY;2bu6256\㭰xw/NU vyӒu%Tm 5u)y&"& 3>p(Q6'g)(HL_Dpczd07 Im!Au)vɞ+nW~%H`6'e?s5?s"{/tn7ew ~jfOF-1 f%yL/ єTQΈWk~|ٕ ?#4}sQ:6|!mbF6l7-0 sɴPa1Uw4hGB'P2Hi{9;qZraV»bnA3pW˕8ՄOK++٬]==%cvhҀ|bZD$-L o@hUl] ƒޗ37:^,@XJ!񅤹ۮQqPZS=t#)0+h rMa\c4Cꆙ kexxQLJX5 Yp<)ŜEV3Bߞ+/:y3^6ž󪍔`&*XPه7K'Z]5ZuT֏6e5fLI7+g= L)kEPϠ s6$}NG1pUfzŜB$lu{ysۛӓ(+O ( 黼e~r9HN$5jgA$[r_z1QY9 7%uo.srZPʒd 顢/fco & N 0ȩQǛMly;x!)t="ED3JNYuDa&!پRT(,)!P 5z9 T&ۇx"B&b,&gIՖO\WD/ g ݀*6k]2vfDP6l?)d}h,=a[Ԑ!oq&hϹa@+&ց?ҍS:ܽбÅQE{N1.U$zb8E f [ޭz;^uXr?W Vu7@IxS%PXLd>ݜ?)j'a@ L%S`a@{F#Zi 4 WftcA{wDڐ0 x5T~P$0~##'ɧjn {7a0)g܋#~o6Zzu@ R>K%Vp&MYY;gmϞaf*8SLE^^.g1[M B aY@Et}wS"ySv Uk`,VQˮ[&ld+0'pCC8rQZT%~^jM`(~[ltCe\HD\9 l,^$ 爞P0Kv!6@f*?!e)_JRcf걯AyGJ%3Vˣr͢k$$egtR Tk0  SEMeu'0Ko2]Q;}D"f8P63 A,vOԶ &{*-;S 3KMnL&pYo|_fg߇8j /gY$&0xԄGdlSn3G}fkXʚG#ʮ[ ¸yWdsrL3{sfȴo#DQGfLh;@nJ'|AJd=Wm- PC~Z܌|So}1 n!߅ǔMV1o"QdrץsH`*bF=BԃOX.Z਻.IKv_J1B3!JtHѭi;=-aɫSBDd||jO6,O:8A :wr]+~T w*;! ek̰eB {+#=2!wD N?4iwCxm iFJ2dH-3BO߸\okm|,Ux eSvf>s۷~KSF/4ah`t)j`!yv4RkGzYS0Ɇanx'AU$|9s@<" D?H}_v֠Z4,FYk{ju!vTgSlZ^c48GZ_GE ɔFhoUbbK>zEXYeR"̆T~5t Fvr_kwai{ &/,Ru+&-ZTN6%OE!Bj!"ax׸N8rZc˧yVf7^&X^qTVmρW bmY Um0/ zBBB 1Y6MNYGSJ9K'ƍiBPAr 'J-X 9U ^-uBI+rFI2$Y 9>ZAޚ=[pKdYu E78LdS#"e,{MY_\7!)JV,ly`|f߭ "ĆIμ8edr?wli&Դ/7k{y7X i)0cSnrAHH`+y*-meTq&6Px6N 1aׂN^w+]\sJq[d=#ZP) )4F( D稡{4bLuJfone̲x5Di&8c:'I¶ :%OPWFUi7ҝb6.LZa(?-ٴoך|ˤ1d&j]&ivUbH1Vm'=IW{@}W&G 9ߗJ@oxs72dᡯҙJTm%_Վu̅IA??8wX}Դ^,<(,y!= IO+fź^ft4uRRz l;L|%l@+<8ʇj4/sO@kW4+L{ȝj$Xf[)yN#.2,U}k, 2mš2Km%bz-'v\A(sg64_7p]-5&QWe>%0Cv ; TJxYl[g׃D2]#ͨRۖT19a{5Lni0eLdZWa6Rκc]5gw=k[%,/gE8˞YK+-:7i >mczfO@ILy/E,] ȼ6`,_uXD6,?*Am|g5Tb]ߟΏ wTCD@R) H8+@kB68@?ǷsAz(,Y,b)̥f:xΪ ad/SWԃuq7CaŧL8wmU~!P}}Q[X P\rIEFH=:K~Dxn o"FƒuV:#C9w`PVRi=M0xf>oضSՀ@Q NÖ@ęI ƿ\{(:Pw]mnvMrlQ {{.@kl' GX]cL)&nRf[Bu#j`z/vͱq+ôsT _)*ƕ}t?&+q,n)B  ?ۅۋy~'Ч1#&)f"~WH4Il.#;&._+=?o*_fPÖROcB>@}"{p-ݜ8W0KD3g^6 NX*yI)B[ ڔ[=BDGsv J$TU0m@QXbnՂPqPicyc}I~[Y76 ^A"ub-) {V&FVZNmR-q?X-eΏMX8ck߄\܊ă#ѕKI꧔ r["NZ"_1&JuU(%J5$$V^  ZEnϛx$mR4vkѺ0{+"7t59ľPުV cbYGxޟߦ" 51 ,)ᓂqR'|95hgC$CFfdffN1-#p0 3ab9aXW"-l@[v.F3."*!ɀ\n jJ[+-oF08\">3|~P%-FV?_2?#D<mq߳h:~Ֆ.^p(jqJ69ƞZUKZsQq'))J6I+_0-ta#]7T#U<.PqaW}4D!t\qx.i409G/esE"yA-+өN _QQ7W[Ll EW'ISTCB,#4.?DoCxܣ8(RpyiSlW5;)#_ɸg=sG~UKC,q[j72#|TT5AѬ4(__ S""Z9&'Mk=%B4}6t8T 5RZءR~fZ9kHk6H@1&U쬛P@P-.k;i赴HDx zo1݃5 .ԧ\?䚻ZWkGb~jgeU_5]y\_rx(@L\5L>}`!]U|Bɕ@3tt/Kk9!6T47;QԻ<8TA@DDy(/D*YD+h6'5#^*%ݪ0 TI/EkJ3 ejP&I zuؔ ae͜6R|Ϻb"oHbn[KYAj`Q.N| O)샤_|Zh^=V3ع1Sf9>U kEペ))=T;uO6.E'L\Au"p]_TL}zTN"צ f O@I>YCˬ -2Jt/( M ` ^4N#s p>-  v$ %2lYuנrڜ'C=nH+ լ*vL%e١9015ke;bIXQ\d#04i&#cvۼRHfQɜOo ,;0; e L[ 9 SUy7N rJe j)dR[tP82䗌!y׈b(x.$:&3Ko7"\GS&P^z ~h#Ȕ^NL+$@,SXvh^n#XT=_fFceZ c! tFzC8/3%*"֌K;Jֈ2i,% }Zō ;Ӛ"l~qq$r.k_U5Rw|;˷?@ݖ8]h&ӏblOLpgMFbgn[7e ֗߀r($:d@ڽTvQ5jU$8JAysZZ\0;MtuXU/\dkv{gvT aތie|zcte[r1Ѽ,{^- *Wt|qbpj\2~*e/ZMh2WIJK2Dfrصw% $ALBy1 u]_=@t˶٘OfGiݼ E".e Ѽ*E{+\ K@qaII+Tsj>e|<@w8:Coa]/+-s5%,kXWE/)+`TD=c o].uOsS;5];RJ$@e#婍ĩY֑ӟuh{9,, v ߢaXN%w`jVqA i ֽgBCAg>␗jB, q`K#Qqӻe*yYv*v cj ̴?l iÌ^Fi/3L6ad> GpEKC`[kNEђc|iGWt /ʒCu?a7hH`n"dB`aӏ` {a#QL񧏼R&3ǭZ9~ W;6~ýSS{֪ҡ40A+ǩR}Øc~t{ o~UOo?DәX֋o]灡;33'D7%pKIϊֽ;GXTj-m% }!{YuS)eDWg`}V !E |\7:Qآw03=yNνQS4Ex[،>-ʴD[Fߐ۶ kH"4@m,G¨nçi)L{pԡ_ijp'HTFMQe7IH"3S'CebWN*I3{#GQ^Ԫۘ łxm_ h-̢^Tvv< D9,e$e4~>.xe(Qf+! 뵽yMc- \DҥP3?F/^7 :}VM g&x/6k{[@XHw cWr'mջ2[Wq4xx+`g$1s)^PU E7br/Ry=]}hF2v؄9:ܲЈH%Rz.kмl_]\Il͗)C"X h85^F+)N1>]lӾO<\LFKZGTLBs)G"6~ ݝ!'nvP;۝ vʦhCw?Ҕ6N`@4d|? 烵CVq۵],qh |6ho=,X@ 窦r,˯yIF>eż_"q Ql M?䐧K_b0 a@Ě^V;3fYwa[5AHj&^6TP'qHحEߙq1]Fhc὜sT][r@7NyO c?So)([DH" JQ6GY1dIG+))cqpw؝h\`a99VMtx5WsvSѰWtg|$t1[#9\C~n&c4xSO~l}Sy n1n# &:fI/Ks,bh{q=n1WӇHc'x8j[g,݆X: }<}fyD,r NF Cv5q h=B` I$sdjNa#/LLZ=R18'I$>xB@HgƋIʁ{ZZx# Ʌe`R;s1 [3-4>kbamyR*3̖n ,;rRh]`2/x\$m?;~τ.@*6p]Z%Tq 4Z 73q .bZ*+nx$ _V'ؾ1Vh&iíԤm"/يrڐ4ępzlGj.ZU3'G~=B^"LCɇs4/um֎{"GQ{ `q q2dH53BcK̪[n3_%SEJC|P D!C+% Ersg@GgAF!k*QŽD&0P4(~>z23;@fO,"c¦e26l%s1lYIɨN^vivcIq`yN3#Cd;ubkd=\j"}щbqfjTv3fD '/s )RX?oT1D@mFΐy w:$D.(JoFΐ 7)Y#:8Lkc܆S[vXH&,\kQ[ lYO+"ɖ5?ל xd$:',Z))lh]_CmIװF?Ăr )jl*< ":Tx˚Z*-Ō=0z ENq_cgo):^E@nմ9H8_q<ݐycb+99haĸ#vdv fcw(OOέE+ϙkǽ&E%_Fzb8擨_uaAѧJ++faxj>sZx4Q >9)hH;R9YYfeڨ.tN4^Y-~BƲaFІ_uxOJlHh@$B*-Mr:NH4*YP|iÿ2Cy6jڊvw\y[H=eC K6,_'Sd孰 A{X@L&n~t>uÇOɕ DX 8 Y8BI(^rR"SIA/Ԟi hm*UĒ/SU阰eↆhv`׾(Bu 8[G/,ܒwAiX03.:a@l,^%oȕ.q(t$ɼ)!| QdʸX^8שkޢ W-88cl>Nl`䜻7,;5wmWa=>b,]gQ<@}vaes"o[Qv-*s ߈%C'èN :=uemV3V0tQ;bd' E_{gx 9@V 5qW7)1,_Mdq}gM"?1&\$;-UvHp1sI]"I!Gu{#CZzPy\|!_U=^[ `zN=0„`#kJ31LzFkOdPl=ƯEӐ% @ń#yçӁN P3`<~Zn[y$fpdQh12:,87+ 8Dy=~V$*> c{,(KBn-U!D,gS_u[03:ho dG)4P~3Κ0˦o$RV&.vVM}ik-s),؍:Wj,;Y WՅOŞa#a,a…)De%7r~f˹YClL#.;&jJ< o^sXǝx f{48sW Ǻ[2X%XPQ3lFo`t+]</*\k7!&0lkx%OtR'':=ZldZРuxE ˌmfUd2.T"".c11mjԝve Ҝh&=ݵOm!砺 \\Ggi ˠ>=/ aTu8~<@]1/rba%%0αDU74\6Li`hҳJ/ cM2زiQo ?g lj)֝u[*&ZAf 3fp&WGUo^/3VU@F@gyClL*I|4+(]UHCiƸ1KRi uR Jot@.׏XH8qKS蠇1RunRⳕnd{`7沷Jߖ+NIc٩,Ycvrm܈ m61N,;I.6(VU NZn~'А4يo4%Aa}v`zS=gB5KB  tf/}I& ~EF\H/P߅5>J7Չ#H;< n2goӃg3px+'ZC"'W/S `cd,O=YDHS"N.ҏ}g*65vkv 4)!L"71F2^lY <Y=ձL4@sH6Q :mz=x1 DbfėUi_F+|}OwEKMzn|1ڰwAt}f[Kg99CjD!-]Jɠ 1R8=3IwYSՖ2MɕEH{}bu?h1Ur0G:aг$o⃌<>|K M$;*8O֛ z+C[8~鲵裢a GToyft7 VN 8u `!]pcߤ0gArبƷD@ʢ \FVTB iMԜQr&W}?!;f(dzɐF]PmŸN:8%2Ftp ] ;_Yg^@™n^ իIۅZ,&6Z =r!˟[Tb!.);o4kc {oº &YtlWɯǖ;PδSL }Z;Cl0O=Y ytu"1zŀ[Έ-\^e4ϲ:$CGu 4pTF|uɄ?= N690SI8H.Rvd+ZN_"+?a!8V qY,"$_,E[r'JiUЄigNL_5Se7C7վ.&)Jj,'r{ω^Ղu78cK\&xifyd C=glyw;gWI,&#x5gBO$| fn3F"Rqp@;iogj;V23:;@4=OM!௥*ٛ+e_]^Sو[X/c/fHY@` '.d\9%HPp.o4 vؘ '8遮:xlH#oMK 0`G2!Wn}t ~MhӋhW^K ^l:i KB "rGG|NJISM#LVC''fM,\drTx'˨}1'qy4[:;LΑmJok)$AoY:f$mI!%vD'#v :iq)%GJ]0@S4T/`[&{)2܅+%9K視w6 !\UCwʆǹC0/Lpp敷ȱzԳ= "|DǛNj?}hزNa5=)px1`_^MeE&9ǀw*oyXlݤ1?`$wi8|_ITo1_Ù.L_BD0d ( ii 䠝x4Zj$:g!4ܙ;,E|E `sQR Τ żPYA{$^#*MY 1,St3Vǟ5fb0cՇoxuB}W4\`F`\xZ3uQ9180O8un)UM>MR12*#)@xܽ;<ܜT T*iq|O쨨-v9 ֖c1P]t*1YN,9t=u" {ST= ŵ.M}RL8H&yHYx1N@%OEJ1c41zg}ӆq o`_=Q"xu3oH8w۪\Egxqڒۨ%k@anSleBabqEǎ#fuBpH4O-ߙ#]|Npx(6,+qj t {>$2hCnHDz_>US Dw}Ƙq;0h7QgPUN}ꅊH:@ƞQ1GhEw>jS8bFZFyrPSCEՂ9"zW~:ƵG= Fn@k꺌ԅy E2iiDpF-/ݠY> p4ɅLA(ZC)*pZnaD|-hɮEJM9B<=N7we>=53eDƱtw<0bN̓/uG4Zb\|0B\c]`Oy+09c >v [ӣ~4>W!\2Ur[`"^"[wG 9}ݏ/Y0Wl⧦}0R/a(d.Zk Bq95T:O-knZR ǖZV XTԚX3{fOwn=l'hC davL-:@EV 4VNcjy9 .l^a/ =n=\>Es1ޝĉR"ql9u7b2?zd!Cl};;i-hi€p",˼PFU9py=+)䲫2W~FTn ԒX nm%˘2g?>f%)U,y+p#M4IKP7^{WCz^],ŲӉ& /۽#$K" <.fUfܪ'xVAPU  Tž %B,uEH4ï7rVܖRvxVAd)hWٶm븫75i -ݨej,`؜&ѧ6 =V8W勵 o-*r^".]qx- Rst6Ns}gZuN[O{ A|ˡv5E[ЕO3 bx赳wsQ u0b%"qw~7IR0WJX$Lg -Glyh~\Tlxd/2nt(92%qH\% a!+1Z U3O~s!$l#xbvQx[K_/و爁Co\xzKxC9aRn. ѵ!2ԇ\kO=,յOZ%Cc.qSGSNRQHz>۱rhyC1JDnC ΍ tnM&5D3z[_:ӧdu8U$2KzW5ɥ@yOTd)uc/t>H9Nߗ@.6Ҳtk+WI(O஧=2:MKdNyTQu;4?~&ek vTp!eo+/oE ^Mp*EUiOSZu1d>$qaj8+iMrQ qP i 攑\ȼ녌bY| 06KSæLUV%1Ѝ,16L8ʝ۠3ثc|w^R%UMc?(Vfan Z )?; H{sD:^q)G%pTȵ32oڨ̂OC-p-6.Zkk3l;2T})u.*eo]c룋l[ӱC v"MQ*x}a7$@ЀVA3n~֐=􀿒QXB׬ h 17F%J&-"l`^~Pɲn]̈ci#i*P1s7$S&iI$YZ/@1[ӷRUP5KC voGBaY̳a0s@M?0_“ b㎘0Uqş-ԇGuzPr"GgiQ͈IvBطrs%2ɑ/pҝz<&|(wl/bSK(`+ТԚG߸ ޛf1>/Q /{7 tȵF*OO/0]PM(/AܙT\P f%deMo7TPE{:8ɱE{&"|MF1Ɩ-`'Eȴm*8~h!1Ftߋ#C{`6.Rʹz_ͦ2ȰIc` R,Z@R/-Php(NY}dp˓kj92j*_=a=gx,Ma9Xrmem)hA. N~>c9X57$bKb|ZDe\Qs)Eˈcl3-9] ;dmmqӋ \QMک%*f/a;i/~.#qfc*:æmoB)<+WUރħ߃FL# 撲D֒Ya^O!T\!{%F\|բa"ݝx-)s(S}/ ӎazi:F#mb`߂\ڢp[ˈS(誺R;qc&Ho*:&S|f+/n7gY脝ZQS?NXϹWC2@j刪VՄ~ t덿VWIjǙ<#$H4k e>~/$h+ 䈉pmר6=,Q14yxlpz`ķe $]9BX`B]R gg'Q|_8D:4) $XYCk ?[BZh@2+dK1wqS9MO@ԑeo]R(~f x:yPퟳNauiTa_W 9ew[ CQA(>+Ũj2T+YSCD =8CeRИWHLl%ٕFP٣R1v1f{&o@.AL0m.j32Y ;{*pM˴vjX$e^]nћ U1Rh_F\[v\:dazo^E-CoCcr`IRThgdcSp;㸲^ <5>v.K kmb[Xݥ|T4@) <(al9@>T!]'ժ`RյT2DfqO&l1huQ%AJlǠd È&2+w|)<UWs!K}bX|\@F˪ >Jj{w9SI!穌f1j0u`="W28 w*nшP5YDg):YFTkEn6e@uyZHU^:]rhg<+M$N3M*͆6>,D#%Pa̳uÅjV*^])Tc"WV] ?*DŽ8((WYOi]d#y6Y(\CR=@qѴf|,Х׍Sh#=6'GQrj:T2lnV/(|p"Mro ?xݡQ= 9˭y&!q&+>wb?hZ*E7zA]C+RBq n;qČ!ZUdeq>)i~X,Z))Ћ<$$4OT6 ÉN쎏%AkƘa1* 'yW\[f|g$őrm xCCL vE/lOm9+k36\0 'dX1υ sr75)l@LUMSG` ɯȈu[U8{nj5 }̻3a_:c%J E((Q𯌕~o Vtd;؋5'gZ5ލt@p"X"c&4;s[.:aIJ1}Z#ObȕxmG^9y N*.Ug{)BJ(A,2V҅)j(u6&$_cQ ,hbI+&if#u#1y5`VBOU e)Ks'rOXJk{/c9cqfb֞@*Ww0ѴlKﻷ*A~ oא;c(t(X,oML"%SD<|vc!3JGbRbA*W34F nx.FVT jqiyCT^`a2%4>/t`w=S=no2Kǁdy)d ߶Ǟ# Qd&}Zz? cM2vẅ}M6{Iy +61';=) +j]<TE 493>,o뎘gvKL(Yω0a7lJ s0&gqf?Gaߙ%XEzɑ9)ߏMu"#l՟!]RtrNco)@l<4#=wT9ozTR Jdˍ)p+Dp2[âlZWNSkw" x/*y5~z"7P Ԧr ӛI: {=0]<{J[W lOX}̃+9 $4lL,Ĺy`ZL#까\wVPSҼc]ވH0$h9q5aG>R1!TjA&n^YvZ3]0B\> W^,P"{5/4bl/J. 䮖I۞qPH4#͓%G_$խ%є((aIYA3{ u5oi\4j_L3.,.#UAKt59/BW1%iOm7!c3IGDtm'2TvAu5~9UF^L޳G^A!JW5i/;:׫8$xdw+8xäNgܗ~gp1 'z>*SwW\f WKl{>>aU4rؕS`j6 gWP܍ΰjJF7[`9(y₪GtI9ܤAӅ Ϲ'/xePOeg7nYtB>Nm/?Nxt/-ـefy{&udzsM(axgxl9n@ Ni ].}QlbHs{=֣iY;.7?y4`7 Rv ` i&=IՃ"BS* WTsdrV`); \w-f4ϧƴGŨ.6ϱ(#h^e}%S=s@L$Bmf*dSP}}zpXD>hsC z#J.VMZR]zmv\~ 5!~.|"ћ`"Q ]fu JgcT.;i;HQdk/%Þ. R7T\M1a@;rtsx s䀘84>G]B {j);}IdLq@M!;*'@1: fōNCBi3GЊZ̧A#RBTӎEH:4[؁Ԓ<t8U!B^Ʉ j7$zB".s);<]p .vGc \'ilΡR!9Q%FE!Cki/z9hHKFa?l(ҤEъCf'Mٴ0|]V{UU}ǚ3!e_pv;BhuڑnFvTRM2 qy"s};?& .3ƹQyo OrI|ՔTA&x% چ۴dg% d "|T2[ Lr w4=i)eZ6= UV!"ohMJՒC?bNbt)n~PC}}'JM]OCsWaG~fZ7ĵ:QN0'FJFp}Ưul6ݕwFh~Xr M<[tl55*Mu X';BottAX6vᩁ;;$uq$ s2XjoB+Od~)G&pG)oNpz"9Oq;;_D .u]l"Ado#td)ǵn3>Yn:Ib$ڍ#ўӚm$٢q^7v=Ē31v&66XI Y:*?U Ry A !,?'.%o6jhrN#([P pP߲gI~2MPyA tݟʥ)d׬"}Szbx*? d֋cBo6zrNV>>`4\?0yy,k1GnZ`n,;Qp%ڈ 4ݞ2zO/qlUkJhc{79@ ImV Z__Y;dm1$$-FZjpƽЍ~GowbT.-j:KW]ثK-$ f1 @/51W,z_Baݬ@ŋ]އ-'ӜaQnߏ|v#ѦjSoƘf[ :W3!L ?Z)h<6DvC]π,m}* $|F7 ZL\(rTu|ߌtL#_&y;#X5a{vJx۪.k spu)+E ))n!cb5\̝[q2p²lQF9cyE["$6fE*Y !Sq 5*>{qY1CT9!OlSM\ H{Cmϰ杺c S4 gUS߬N=[Aa꿇^xlcEсA1UawȦրYg88i,&>:xZߢV1Җ&Q"f[-QaKB#J5568Nɖbg4~>yW_6>bRVYg =`_2߳U/{/;DL_.#FR%]hWVwfI(V'TC7~=TqZ0svß˯z7[^fk٣xS]x?t"QL1V2u7lLF*L?">'\ Cz.cqDv@]Uz#0W<k %Բ8,gmYQM?xSzNe .M(>"=kNRmWY΍`Y ;BwgO25>UFbOqm{Ju NެĄ~N_kћpkAAWB '{vCpx 3ko> mTL _ZZi:If mڍ0N@}NE(idBIK I%Zdk"ltr{1$lEU=&ySq#ÿ Mg 9`[Կ#VgP ZfAsэ|îSyayHũ`fXV'M!m*+ѡ@fMF|XA22H 8R7vq,0OW NQ$OCñ BiElEys8C%Zd^M>6PS*ZC{B͕ng1[^\w4n{\SjAF@-!*$>Θ415ӵQt:$sr)ǫWk?#d}M \&Kjj&Vu|N~[pدwAr ӵb5w&myyĞ8 &zGӢW[ qNrNYӏ N(RX_QfVMz8N0ջ_8Y;h1'Rzeڕ]~ErJ/)J-?jR6H^b1G&qQD'wo$E})Ia,f%F&UƤ(sۊ`I\xoo08XrmQ-*IJ!]>Ԇ DER, H{23gհV@/3z(Gl]Cj) vdbjsyȖun7~@F?ۂWpR W}B 6yd5!D )}桃DjGxf|^l'HjʮmLmqf嫶Ho~DY3#K1a3@=GWzvˉEߵYa`d!\:k3/|n>CMw tHg4©r@*b/[a9N/(Q۸kA6-\Tc|pk iMr]mnGXLwɝ#b`?tQͰA:sqLi:UI?<(鿩bTgS 6GB>7ԑʞ?@ Y](m3qV q|.֙q(w;Mo"XLł;AҴA L tyov9I@k[:Š˩z1Ru0WQa lcۖ~ש)[:҅mC{g9aF*Bl`e+V|Z%2ؑ?IԼNV* :<-5VT۩ZB+ΛB\Ël_ 6|{3 aZq&>ٵ׈#3ݙwޛћRLOuݥK#R؀4:jP14O&1 ~e $<S! J19m'ߤNMrnK٥1jEV}ۺߟ2vݴ ' &"XH^uv0FŇlUÿ'V3WEH6 9SlO2vJ{F9Z[A6̿ICg 2F_}-{m1'Ps]ML1}VF=>_n$y<L9d?TӌT;0_]ͭP0HI?<'M=[MưXBݓ|-[yG*;l۶)e {{I҅(! f\_sBvh<'^Zl^W#%6O+S,)J`idTe-SadVмNb~_} YO|zqHbGoZfGJRbtq뷸 1ieLj_5@\7Tc(vڸK hN;Tt7g1pqz[)6- )nֺv>}bdVo=rE)) l5WbLib$U0{;}=2]GdМ1lC'/ibU'8TϹhqiury a@W~p< "(EŃ(?]ݭ\觥>nGI$"Җw7ƥ%~I9 >zX >Wa=B.\&Kuƕҝ8t>}{I%e<aLV:sS{. jdebb~B*~21E ]R =cLD=@pk[6k[b}@AA"/oeYz ZFk%@Q ۏ\v}/Jp6dAORSivN+`9j}Ib8x@o˪1"oJ^k%:&gSQ0o!h:?Q?+Pl7 ѕ@.8_hg~6aȣܶ4ZI[3- Y9%bԯ0cs L@V<]MT*}?#ETL05a CsDlKȪ= t8zxm7 I=T@sT\wG k@R Ѐ/, pZ1=y\y=V Ws 7a[]7$e ƸH%L!~@gΎ \p8(n0?83SYS6g*ojlU/+E@2 zG<r) kӖ_ ;˿h¨q,wy]aPE#fcu/}믗tb멓K+S(q7yex9BPw>ceA&kI@HR?CafipD62zS>JhڈS&eq5p$wj0-jjJNa5*UFL#مxZy[ bJ Eu í+#AU0A,ha#Ba 5\tr? u R4>3vs.SJxݮ&ױh~{RZp[O |Ix*Q)A2ۺdy 9gvNtѾo| F)Ob;/^ ^A3ːŕ Ϳ8uAr#8n+J>+ꦉbޙ_XI*h|kaq7hՅd\؉~hDqe 0uy|:^2eIUha"t3aqS scsY8}_OZȤZUi TA ;?t^S)o0[jB挀p%QWZ./,fzN.~ʺDtoP}*T9v0YലODp?wPc$XX=p4KwSKI_DѡȤ{Ʈ!g c:^]GA z u>6[ Ο $fN!+Pf3\ aYRHKG޹e@1v-t}OJ< Z:s[TSL J2c?GOXA]]Scs+Bۼ2b>#a .FC,㮑ȉ=Ёm¸N*bw8.Cl(|qyatpPI h*TT$Td~!Or6wkw;Q(:<(& a* jj] :(3Nዷt{6 K?-:AaUz/0\nCdqT )w}fYha\;bBzE${?ӃcT~L` .Dbϟ^B:A-k"Zd /:xf Ŏ*W|X)ԅBP;Kc8q)X E"WKDtRd CD)'9J WMw5H뻄~JK>SZ_ǂ5boYRsZ; e+4b?TcXA3vYClQ9H 9JSiÔfUFI7~T:{p'BafV_ f}x1+[@;W g5tx! -= jNp KuI XA(WG8 9vSFx{O7ŀ= m(͉Ail_bt+Cs܈o^U;㎷ϱvgTN}yڔF9`gBÞ}9!A { imZu[Bc E*r^%و?),ewJH mPʯn ^I~R*lrbiTt%9odzPa5jc2@B!+k az,숪'`CY&kI[+`uWYU{i${EB(#&+AZhiJI`ie r4(Ro&.ȤsElqP̷6p+yP35̜Tmܗ'⨰@z}AvAl`fΧLJJ5j+fd"(9y[8L,)gSU&"Ųt|$ U6է']SUK^J9Fo/9F^ȏ:ft;PZ}_.ZϽw4SKJU?2=L,TF ݝҪ( = s-]{xá$eޮIB}YL'Ģq\[COڅ̯o˼ZRzG gU-A5o.y?R$j+\k`?w-v} H~QxHd׵@_j윇c0H2:+ήl7omF޿,I5sy*& zxvZ6|Z'5 9#X؟P0*W:t#Ŷ`?^*&l9',dѾn"K/&քʌnoԪ$[3/GRp-zd;C @QSvPc'B0WMe}v<$|,S_h|VJ?df uuş#ۈLV%F2FCfDQ{(0-;F22Ydp8 fR~ RԈ"J} ad`5Xk:81vFtdh^>#C9,:xl~/8q1y*rłqd*(hm؄lg`4$?8 J]{1+P.tT.d%Dॲs&*Wj+}&F/;MI!]BvdԪ+Oe3j\[0P!J DC K3^;T6Ynܫ;J۹LX`D4𞹴1Cg^g-f_T7"vׇOD*+7ZmbxEۥ#tBa9bŊ kDž*{g6*6aaz"o :EJP Bt%2 o2bU-EGs*1تszMڇeIhB[[&"ݲoJV) VK Ì_ǥ&&(:gSE --A7VVi~*.{M{+RFꕣ? O^P%쪧QU"H(5I(EQ.y,Y B>XQc`T^V"+Vt89!279})%cD?|).)lm E%o#K6|LV~gd..%5vBxlsvc؂d~Dž(ӕ쯰L%F>}vFaWTHiǻ,ԒӔjU2Pl&it ku]ᴭ CYѽALX˳ZyϫmI \^ ¿f|PE0iʹRK(^z79[uP\]kPQcy9IwW_,$Qyg:+eûvԷIG}(o>/Bi},2g:bx'a |o`~H߯'O(;%cC|>CZG.7r*T~IݏͦJ5G[bӉ.WV9cv6Gz*A .v1c1$fܑn?8GxjϿѬ ]=\ C]G<YGe"asz}wHd~xFwqomF`V^H*X$9RكI 1ܮ?s8g-Cx=ҳL+ac+ e=ufH]嗟ʨEqhp*[Ǣ= _jz2 :1[h3?O\7[WoCσGlfô>w!m7Q"r# QjIe0"j;LunyM1xɩO8(I3٩ H_H>I I7e647:v|D:= P>q"^z``RxC3Q.T% UEHE2hYA;"ɻz].pުwH[p:/1Y?ް+>4+EB5L[}]5橚_n <-;pɕkɜ9.'&и|Nvs_TRם>&(Pd2-Rg)CBf2%]eGw5Y(fTPت,ZJl9?.}D(;+L@CF #`;[ %Gt$u2\Ǟ5TGz{ %XAg |ڵ YPKG ݊Gs'(qߜ {@|0]ZG. 5uS +#;&֛P~!wɩLð^%]"ғ 2+<jJpx-?(XwbxVI>031;)9l5#x>lg9]#]3hMF go#6(i r+iQ󕇅R y**UǗ4)wqJ8@I&dQA$Ur5Ry\fl+)7\L(&b#`ohyknpO;$J`r}2$^kY*P܂/J°qur{ Q O3,Iy-נX`>*@eo;KqK[ ߸DmR(>·9Q~ 捼6W$ #XLTۛ+LkL387{taj9 u+QvGm8wғ{Ix0J~Cb1z0)rPt;B7\Y A "Q7 2_vGdeW6Yw{vz ; pl;d <=qm ΃GsY(zڿ&^o36!1ߵJq u_d-'bһV8"YǗɩa`UMPZ$c}C"Z$ꁉ>./H óXESn󂓟^+;E' 4]wbHE)mǕf,* 4 Hh/{x_{!m+Į{P..8K{0k ~͒НWM[3.4VjPl6io.I>2qq+qLs)ywK^q0MUtTt"Vҋb}-ѨRdJFy)o_ǖa.tp>34 )$1ؘdx=܊84oڨZxwfv*t&Vjrp+Z}fYͲJ%:7n 5lou3YHTpE*l$~iOz C%=XֈrmXwҞ!%:ieF4=M',:yTYeSaiӃ8pk㷜HNz8}U'uv#(Fξҥc3Ʋ;- Cz_8|mš3&q7nkc%.oT hT\ʶB"C dx+-3~J)F l][kW m'VBuat̀&( ,HW$⛎ՠ病:wy~Xg]$GryƔ8rrGDHVGqrkA; xe-(!(%} h\BN̓n"#\3Ra銺NcEu1Q)oz>1Qsl3 kMbB xlIuNd; .# #Mk'dԊGn+΅VJJZMNK=, n[M0,/ 媛v/@oHk*/9ա`G?R DګM I˵8Lz\Ipx yi+lWԿP^OpUS-< U \Μ>ۻcfS(}݁J]myIm Hڷ/>'S\VonM0Bzx(4-gPrϵAX9t~,ܓvwzchZ\Ȁ//_l7`wڨSlwtIKs>GbɋDK/XE<%Oiag ]\peb鏻DW(Y?iW,',)ԄlSvD=݅1uckuM賶Gv21ߘ.0dV"W-0S;P됟kiMmN/|6Ay]r).b<"kg^zY]\kDM YW"}i7_(ZR){\QtaX/r]XoKynU\DpTps]c'k7є@J~ Jv'Qg%$)yO)ԷpKs 7FM3ϽoP+% pm^%m4 9d 0y5-\%xjܬϋӻ|xVI;CI|_w;*C~܃OvR!‹ƖUo:8'`Nӹ~:T[W0SFTkW:U@7fZr c ť0ؠ.7!9ƭLkahsm[T&o)i2ыպQr+rqxk_~F>P<l~B*k sbZI3ӥl'k4n_WJ2c>"]v,1^xnW셪\e̪χc:0=plzB߽{D[{'u0kkK=؝c#R*'U:,Th ,6v#$v,8 YOx<(v,I7)km yI9a K+L=HSMwFc7>rGNaqT`1l xգζI$~hC[C+n`FȌ@X&[ʢ -g8h'LfwsiNsA~Ia->X,˸'*rVQT;*h)oh>wf?ToKF1$eU;]h'Pѧ@=V賋 DO)]I\Y/m-w_mqalcH3?>]MHo8uE6HD3 a:%KD% (JXؼW! W51`uV3A0 jlM/6uWs2>Ot^t%RX$PHB*<[ݕ Z.>A/ ?-oAX- ]F > }TvqL٬Іf=K÷lr4:b;ФB81VE1y۬֞!ۋPly']J;ZR=J krY#؉?ŁXf@mX0ڑb w\56aݝ|^~=s0!? # Ǣ=vSEK"r1ot e?[12utݘ&#KS_~Э D  |Gʃ{.ZАkQ<w]r}Gu\\- :=8i{ +˹^=7c Cu ]T'VwcLPѪ04gK^bEDe :.Pd)PC@-XW8)bL%nw -NIG Ǵ] /!bÑ9SK hD>6Y5%/Y;Civ*JWJu7G=bTNPݻG)#B$"rlmie>FDt٥6xWcVL`XK,\ThC&U =-@x# UJ&+#֞W:>Ԝ\s_ڧ 3$}䭏kjcmԚ[aqt1Ұ4Dac}7h~a?Յ v2뽬uקA`1NDV],bQ}كP ĒG 'q$T6ApO/Z4#Mp[)k ¼ٮ,6x|F n/0} x[)YxWn+9iS}6j ~?s`0,+pd <@1 `] $GB_a%0\o+r-_ۯ }ٶR5wnfdoH8n9/Fr-=UUMM\@]U~7! ..M+jm'%XB;yyW)EͭlJ1ԟg `_JZ50Ю&C|QR}M;0#qyK!Q /fͿX_ZCn+ XH`Sk[Ӗ5@=~ vlUE$7z=n5"7Y5\+~%1:1`w1b,| [*7xJ#j.Ivo^/88cokZH6IMԲA3'p=yv5+$ż" S̉FP͢[jS.2jKdl)= KYRsrv{Hd=Q>!f嬉~I.6YDQ?6X$yZ2|"&B ,%,32"C$ %4-~EmXNCW?(Pv~XHb{Uv./-9ҞfrV?8I8Jt7@Ր,U N;l8z3Z}#yc5{U!bA 7)ģWZZabH 邃?_t=$.Q;;gM0 ;*U\p<;q~h5\%V=?>l \;)=w"yxoNh>-oMgI- 6@띳܊LNݛڦD^YG+F;ڠ}־si[EH0&QTh\Ӑ2edՌ(Ek!(I$oy}·=f5|a5V6Fd-ػ00 +*ջ11,*?TAz w32ԗJnz]t_~bklys Y9m\{V;I97muo{2| UxG}sS{Fy8+mI?@ Խ k'Yt c60e'}oЕ~S֚{UA</HH;&QRpti^+*ݼCI KP)D990=ʱjZ4da7xG)v 7c 23T55u\=>biMawxrޗ4< ɷKq.36: etY~O"uTII_C 'o%A#f(^֥TEʖK=kЦ~0eQ*B^xQ#45κPfbMPCtn˵>gfs_ - L7n$U$η0Pƒ>{"AӶ+n,ߒ|KLwF<j8슛'=v>|gfqFtЉc[Ɠs(:Iݧ6Ʊ.̓_r 8]^BS^crҒthTl\M<2Em a&DJ(W8 yI2TBWHydnΛ PXR||0/Y4XAEn0t%sR|Lqܕ_@Mkly_o)kp2=g^| Q%E{ƜEO |+e1Dˎנ+G/77=bM)"5 (gm'Q<YyvvX:~l/S4_X*6lz Qw{}BGF[@5O˛DVּ'܄|@s)i Bk΋Cwb|2RJK&!i3k{?[W-ӱcFު&tJaO % "x'2l n,9B5l%2'5@Ħ$ܞ+_7gbGR{mY=[ 6s^ Ғ*z3"zTqF:35z?~{#N?wbĬ$єmf>(n?)COJFgF DӒ"HmFB,KJ$]I~ۍh/^(#c]6ͺ H@-,Dz'šq;%P(l9 \}Dԕ002"X%g]NCd%\#m5 gtt2KGfrWo+dU~z:J "t.ضTOgmy 'ۯ1<(ovS'6q(Z!AdRN[KSc߰%NG"3띬%+~16ثj[<84ÆNDmEp9| u =7y3Z$^/G&i 0V ^~~\UuMQ)E_ZariMQ'J*4♂kzsvo\›όUcrJ V.* B)֔%~dV|X/؈u+t3$G/,c<Ƞ3"SaaSL0@]'W\zWz`Zj1¹\Jpz-?@Zھэ]Υ4CWo品#0AT?b}jUF*=f'+&! %/MPkzx濷4 AHf[\|n31UAPfSZoYgE?BͮM[v)3](&(K'_ܤDB^oN9#*Z{fqhgy^"i7mҘ5<(Z?R1`^Xl@-\a!=(zCX#DZ`ٹPnaٻjeD(3/'E9%/E9Ueb)d;WEa2G!NK5WY9RLcS8y죒ɯAi䷶]h耻Dwa, ԩo9(oa B_kz {Zzv?Ȁ>DއH@ȾÕMrs)h|;ḭu祰Y*( p)Z QMY%+Il JNRޛξnF/1L`U1 &R*adԴ *lY^z7"W] 6Ǫ/|"H2Ly Gm%>}BWn%B^z^dP9߲v 1Pmc?şIlrHE|mU"Ĺ30J-4HVW^v|4+Z1 8{n hk^q럍1U$hZ/E"N-@YE#ZW ,1}犉?6Z#ݫ&8U1ܼ{>vWXTfZM[š_Ď<BS?:[EH!Uo"o I~jkjoAmretmBZ`@? Ҷs#PMu17X2:tNy܌"l)- !!J@}γ*xv/FmlzC[J8 J6K =SƝ+LdBiUuYVX#u*g3́ѽӢLQMIt#p)AQw XvRsVG 62gFOy4**Lýe.r7CʹǷj]ӆ}(PNgԽR_[| v*L*]AQ39(u}kN-z sa @Τ3h}[r+: F G7=j΀DiP?U qY9~xrNI<,qQxN򮑀?PЯ&N1b{&tn|F =]6MHF4%L`bȮn'O;r3 Jtcا`Z]UsEc$-=dd9W•r6#`ɚ,z;Z}]ɥ=#9m4.&g&+fw$E|hi̥װ3nVhq3äD/(Y/f%Sp9hQʒ-؎.]` PI)DRM<](ilwVt?t]nbꎏ5+_)A8ϋÂ<‣#TΨ8:g@ =>aׄfrY1b [Qm-)P'Ey*hv\4$6J(p+zpl\#4*zT ~=z`2i\@kUbkmae@ּIbu;ݎ 瑈w)xe:YY5׭n޴QE{.T*Х/N= u.n\}\sȶaoDh5)R hͦ hbb0Wg`]MxWiG[ǚ,29e과YFG R b,eub+hSu=/$_(U-ɛ,ii7yY(JT*T}+:|+|Fɂ)KX{H-ͲO HSy''Q*/@lЀ&9q?usȬF@zu_ sD!>*'u$R[x'Ӵ*O)XUpxzO ip۪G8'c{ Gȳ>.h9tvDvw:5-ema8@$zpSv{a(v\~>_PF&!t4da<t;KE$\ERkw' 2- 8X/rMt\X4mMTOGW:j_0hBBQ:6+_yuǺ}(ggptG>!vK'ܧaqtskhϏ6Thw1fPX 2XâіBQ+uvz>`!Uxsk?ՐN`P)IMA/y#$T^FFb; œVlHx *xűء %l 9'*IO4u{fgt-9q>^*' xn?0$;erEXq|VVZD,UrB{9K/xՅ֢a^kkȷ1fsPmiס(|jU6㕴&DrBCН<:zh_8C6ʚhk&x*B/ĕ>gWrwmV62#VSi,D%‡p7>APf؟KIr.w;1)~ 3^xE[grj*-+0Q,\ oN%M8)_W|k^l@!\O j+I5V~͂Nd %HD%8̞uV;~[Z$ia&1Us{+CehWOaBzưXa|};A.z/5}$Nʋ"MvɈ؄'|:s[F:Dw "PLmH9og>recG&Z%es=z[N>L hP]G`*4E.1h"S.;ΒoM} H7lpvX Mo4ӬϭL@]Z%uf+!({|lc*Zp1gX2TN;I(B ˍR,][:5 3]*TiG^'♮ڐD["/ /pe0VҤҔyT14~dJ9+.钐:IqxʨYGκ`wiStZN4lAKc!OcuXyc⏲s"P0T0w\ LWR8}Т9t1E|h]KfsϨGR]hǿE;I9h%_M4Q_.Q(󖇵mr2AE n1kNO]\F~6= <ޚqw[8#vC5Ie!C.rW4&T~_boԑpXK$K(a/XFa=W0a޳f2k(~޶l\x{2yxà I/ګd^aX0X#1%7^&)ck0법EjwlJ.R9& ϓˆۖπissz]pdKB GbG}"ŽQ8ųr6pAK,, ΄^HHJ`wKYw| צx(+TOO]^JS(q5`0+,b1z]ì[k!zI>Db>U}W7Q!9dq`v(Sse3D^lOG[(_9~wo1GYI_rWX@g< HVۆow$,7.@Fh oq{@FGt{bL+qUug쮁r1)ۤ'w'PYiMCqýmRvv3k>Vם17δ11{!8P_`2Pl ;&  HlHqMA"9 .UCa@RKKDeR!xN۩Nф/syjF;9C#kڍ!Sa~lBj 8`ªp%II+ҝ}O|xͮt]QyDL0QULz"&YM=a;s*I0=R c9"K>YPރDܳiR7!Uh%ȨnN/+)9;BC v%ea]<Ǐwi)'kh^CǂF\v;2} ٱXˤ]O.欔GG'M~?ȡJ@QU 'Bc8Wۘ9R M`ww?r>ϭ{D0)?5O  ?KZo*q &7Бp~H8r  ,ORXo#{*׬İ)l?_#Ks5P'7e !J5! 07%@S^Ge'lQc!cH+7:;EV)0j՝PTM(P3jaZP ٻY b]3*[½ \2}d;-5Pʓ(2p14z.E,q2U4)h&ۢCDgβi?b<&Q+C]Z絕6Ь^D"]e)}ϓsT.̓߯3hÇgk'.%B%"ӧ[g}@pmI~'ƪ/0 Vp$I@O7Mqϼ$ӂv̓F>G4e.SՕxӱ#Ic$܄?akc,괋AP" mA9&iY%ha'!m9&N7pP&w8VX`epZ]5$N"§m=Μi(1!~'*9B =玛oKS)vyv)D:P2 MUKxl4s AWFٳ >_hy'Q|N("޲pdfBj} CS)uI8{~W"䶌fӀ,p(C@x:YcH\rô9p]b'w<] /k=5Iz7=LXE-tlW^DU2DDM :g|>#?-NRy ]LkR ~6rUDHhqkh[:'Gj;NR>ԳAJG}|Uӊgn0? Sݚ&->M‹A ?D.lm$=2r =jHҼk"/ xJމqцX X.2kjϷ =fU^H@kvJ~IO#jKC= .^0><#OGԾi Ug\%HzkKej2 saZT;)~VLyFk꣄ b7M 0maqDVh4z{Zw8apZm?Qx1e| ^ep\amHF~:o0ŵGdHDP (@h`1ႊ N!4Ɖ/*2PM:ψOTBMNȆZ/8zr9ut 0wU( A*#(W`_g`b"aj.)b B[Xs:5؀ ,:ˬa쪋QO䦡Ԯbr9J߻tEoS 5'(/U*Q,'~;{Uq5Oۮ[qq:J?:'z`8eO>,cdS0I9bDG~C>c=Yin囬78+i۴oԗIHY∍_UP1A ~Y2H1ֹ:)Z u/;'ߗY0nQj Ӯ1PcfTYП;F$BxNqק_^[6y(~] |Q$^ĬE&G/`Z9ogzU!9G7n%)Ԇgw-;RIɿz*rRe%rPm,͒YL٪re^*(@Ib|a ޴Ƚ$EZ(4hRH.yVh p:'tg #H_K0XGH%8~4.d Ygnb7tn/<ǽC¢-5U AwEXn&yTңO)x܂N4]sr k5LdgA=[):6wj 2o] I*!TQ*=$9n:DI |?]:\7%uOp҉u;,Ԝ_0Ls\Ty_Vqo|<+T%xvz>+Y 跗9K% xf^u<cJa7u^p , aE(h%:eLzb=a^х^IۃpTGzKw[CۏhWunlj\z NH ZD)&qu:Ic&XAЗ=#M+&(q]z3|P!vWL)KVkc /B_vE X$ }O-Qdfu;JrF{ O5~n"A 8Qi866)Vf+cv]BHAƻxqq_Pb=Ke;4Wc2Wrb IZBuϠ_ݧB*/w>3n(w*&I}]P6e)R+"}ϬRbܗ*NCו] 4BCٛ6 $)O\pORí9~ݚ4m3 :ŽTS.]r2+Be Oۨ5f<Cr:& ʫN4VWcLJ>\-lA0ku kwE<2I L7.ZeK=fySӆ-l' moSkOr4'Ӿ;<0ݽ @\ >O@ E3qƪ%8 __Fd KE-u}MbE} Re`Οh QN>*ep"zf:y&WiJ˖PNdp,Voy-͘B=pi [xx9 a ¤ qԊ3`8W_؏\۵4qK}\/q cU`fѼ%zl׾0#w l{k I/@fZa1,=\ύ'1u ,|Je7t,@'[Ҏ[z"C1Ձնsd\G~k_Ж$ujR4 {ذ  +L$ub 2 YeZ e\ qlzbQ`b Q9 $l%u,;v4;a+Qqt\Ss-u{Ʋ0$_(Gs$c&1lbAԸUf?2AHeP{MGK(}ټXk#ɲ26H70T~JvYrVFG6gR~$)!T@'ϒ#7Sdݾ&x-*7]?,#UГ(tv块7F*ȐZ}faR%Z3R]{R ={](TUL0c^% +^_`ɸ8:} EL`c\`㊴U"M|\m>Es$g{k%XѾE62Yqjd䤒EC "K'V5|d^]y#y(3fR qAyTfŁv2MOT=ۑF Wb_J*k$}8SjjiJj(肁NOhVi3W׹@0L U_vvw)>O1 VD#{+ SWh,fRֻ|h" {aeÂ!1(M#-sp"jm~Sx,Khtõߒ7HLƤ)B4g93+?4Lw[Vj,ݺڵ@g?[H0 BWptǀ 8POYN vdףE+sFn֍8=Ͳ5YaN.\JdWG`ib| Yi;fEj{Yj.S':Lv}dQISVӨg&=p۳bF,9g9yIѝ@VDHʙaO##BuZ6%}6PR*ݕJJZ 7=q) COkd٨|~E RFv~4$H* b /Kf!_\/J! LHKjF/ kְ=ϱY!/wRAAD{ n?g2OGu{RCKdOb]wWP U:eԛ|ΏWƏ_5N]v+Ezz9c+6$:ԭ|滿40Bwu@jFk$Z\I{Mfiv%6=c?Ā<.nL::|3⢒S$O_2Zk޲l4塷i#YtX1?%@fA|&{B^;L7uZ#y0p' IR:ey5fk_$毨\2ϒa!EۀO8\r|j]ꍡ׊Up#xstFT۳H!*BV0SlLֆӁ{p!ъDPf3BU;ؿ2;E_e2SF,5l+=# LpDLjX&en 2Wrd?C %NP8茣8dI=fohW2,v@Soi7&4?UDҘkn[S'V@0:8;` g"gT2v1R?}IPWWDΤ׺MV1S dwۈr'Mr8Y15Xu$`2ࢃiMmx,>%/Y!.\ٛ3XMpzu'l Kc.B(P3D*3)q'o↦J|5$|LߣHcХj՜7jZ6)·x\ lŭ&)Rj8U:nAֳ99t sMS,Wy$tpm!,xg e7C{A v4tu[|6 W?yMo rHhaطRM7LX^{ۮUrZM'OB']Bl5jdY!Ge,=g2,VCV%hn\w]$~?9ߦ#Ղ@r @0 .C#&0rTi\S"q^_`_\%yK7z5:u'ևxSTa]ȸ~3e_6}+FBW'hlq鈴*tYw25JĆr2zBZ&l3#J,Tjk6 ˲@N0GGKCwC)ɜCuJ^{#A)BGex0rć4.4hcA.32OAYUQLE 4kcAJ Ldlr,kLl|+|sH醯rH<F֜i_L>ڔ0Y#偗 &*h+B& 1R7LoPCEY}$XIm9f`ͮVP"xv ?{&e)$qNT^0g.4ȬD%[L'̕b|!^t7a\EW ȷf zk )0X(I湱,'cLnJ<zOʘPef)]1׭CvP|YC*nO.o{{+:::7cBCP%vj,ں7!HYFsT:($qRǧg4Kd0#ѩ y;t]UVnA4@-\ҬjKmL=v)#qLj [c:t&}3;x;emjUfGŤ\Ǐɼt IC%c9iǶhŽ!eB6>= %6ㆰ=SM0^U5pi2E C?Wџ"bD-{J2Zij-}ق9Ƌ<{wVFg 1_u+Px4Y(=chLӽoǬBba%s qpdܹC>0:UUNFԾ {>7im:Bo4M[ Ig:=d4^%K̏2iռU &I.NKŸv/2'hllDʖ^DYifGD,eƂP=;G~EaS,X{]LTTGT74H7.i[ JR ?.-\Nr϶تΩgHB&@-?60xd <㟻iDbf~*Mǀ|X,w']T5zXZڋp}:(ck눞]<ŢsUԚM6z(ۦAXN|x[aw-S!t3=SƹNRSޱ ְ' }@qT̡syEڵ%;cM*$ "/p/Wm ͟G :"'ȫ 'a(Pt]òfb{>/$W$clTI4)G[v%JxdePaYY߲ Gz::f?) pxJ[LR&xڟ" d,G$%*.(MF?Qq2E31 ޿1g6 /U4xJ0 ?zgjPZNç֝z७qd߈kU.VB틶8 lapns2tdd[o\A0˶~UhWڶmfY> j%;'QnףsDD,ऄP(;5z~lkYis@ɾ ħ+ŅX#~ŲEflkecyfOnQBi"@Ѵ^^f4 Tuom !|V}j#/K^le%11FK3Lʐ[Fr{b %ЏQ3} h/h]nofkemz*ؖzk鼖C;{}U[bH IҞ@)ۤ9\{r'tI{A!sXӃkB VWW`F9B~_LLZ;1U!ٵ|&- 9Ym2ġ*f6SQhqyApjѼ5^S&`RՌƯRSg|9<9"C4|YKXDvq_4Ox ! {:F$)[Adh1ڲQF'!d"|SEz`dM 5&q/궈2Zv/ m[y b-g&T8kC\;9RM^~#H_|٭_\q4e YZKY#i6``AIkZ|&8,7Dt[Mx]ûus ȴHJ-[ғ gkoXm:G]1NMdP:4STM.L^:O`9[p?#͚,X$v|Ӧ񈛽STL $7Ka`F;Bzэ4~W"n)} <`x GX^-P`2I+,N(\=!a@WpHZ9ba! GT#,A⹣ ]$ {:G yo +83ÿy;{>- Żgt9834r,Q[CxO6q4 nE6n]/COdnOLoXYkﻼ200ipZ#f'0'(&yGYLx"=HtJ3 IM?ت0^Z#ir?`X-aMY1&}{ K L} i }-XYI~l[dy W5j8`d$İ2RC#ix٥&Zq".xS{#a`"IV`T6%tJGՍ0GgA0d27ZҨ{'KMTBre`vQcl[əi/,t6-Wemo Yq%7w$6Ɵ~s, ;TfeͱV^Xep^Js*o 3[G6xϪHi vXr]كmW Us'ۺ} zf@;BLɾZsDoEe:gk"ך߈;c|V nR0blH|cXv"jBT0Τf1"HvSt#^8П')l?g(. ' :NQf&/)Db8{@d,v'FfQJ; ,w=/Vn꟡_I Pa2fǙ*lR0*nALqoG[vj,` wSc Nq%nS#}KiR..K7m:%%*fP&M4fW*H`ހ|{CKT CܣJD,p5m@EW]ƐEo &*0 n (@Eeuؿ_40u: hSU"apS*7e8>jdK˫N$] sVIzI͠Sq  mmi1dfH[ pIbSbѠNУܖP v*]5a͢=_T|(8|aPN{e] ".ę#l@%'ؑ1ػ9VJ`h ?QKYPy(3}*{ Kpyh3^w|M/V2IF]$`Q[hɦ0O˻nˣnt$e 8^jc`d1j.c~*i%z4~~AqY]Ӣd3ylp`@/ ݢ 8aFKw=zQVA'*Lj eFM>¿* wGvzro)'f1CӤ'xUƀoNC2Z?.R|Y:zܙcwrBQ{ky\]#)oS lZbW_@?Ǔ) Sx}U g1)YBuɦeS>f>{*|SZcg]H /Xްr>gx]obrØ]l-Iڿ< P{pS7@b5> ϶]pe7ydv;aT1ex.{/ܛ+,|-j V;'!O% X4-]GsI&y=JۓPush"v#aW.KcnhӅ@T0Q⺔h2^ | e6:IRj@KKP&-Z$|'7  ϻ@ҧ삸=b8$H))㏱=-䬀fx\[vrh^^Ժ;\v* o=ـ#|yxr:``RI*$M_z! Yy<.%;2R]xB nr]%Ә1`N%LTRF)W`Dn[ۥTt)8o {&po գ Ly%yLѺl G Fye 00lGγ34n [ Onۈ)HS 5X NgFg#6nS Cf!W:gGw6lV9`B6NBW ^"}(q5h861^;W wbOf=h! ?UR =GKYmdm14Ųs<`g1iέ6C$Ai)ɖ[ޱy=Od~G¿}11 HztMWY撌ueW+}:r|#,K%ʄpsf JO=&1[jROS6v_\~ 3a*/\ln~~Z*{{S֫ ^ӎ*QMOq,I @zFʵb- $mLJd7I=֢fJ<ɛS#ywcyyOoaˆOE{դ- yY]r/# ?甓b.8kAFY%VF;yW&(dl -  ,%v&$mJHiGSP5$AȦpې=jד+Hb -F26>VxMxԦ씖y蜢Ԓ'ݩ`@.F:QdjR񘳥9=3>/|[s 2,3`џg5]+p`8i t, 8bi8!>IQi뉾=@,88XtS}F=+[?!Zy[tY1jj7(0 (=SdY "҃)>=(?;NM&iBpvVWH˖;MGwQmV.֟SEg1\.n\Spyzb aap:5>[hZ{)1zmRV֜t (no W_{Qvhgt"xu>μ(i#?O"ηj౥ +p'g :9i!1^bME`Tm<]"B d;]C +ʄw/T= U9uw& v9n^οuw:NA#{vMErdiS1Fu˯w~Cpx z4NLLZQ= =-f1nph=/<a7{3o@w BCxӺ}tdf,Rl2wz & 2RA\S7C"o∺9e_ㅙե Ui񬬿sA3ת^qgۯd>(UTGꛮ?4bCfɋÔ2Ȉ#p^vFvI͵~[[]`c3hr)HUntUaYYTV$}- ˂j.,`qom'A3?3 ڪ ,󈛤uԕ5zZ QhZK?&u>^!̊]4C:T`]>!^x t_W4pLflֶC2cWʉ.E"ɳ?:у;[n XVcV]{Fe!')Wva.?mź pJPo| clmiN8p("Jpq͹w؆#k&Q#GEDe{Ѽ".NR*6pRSfg=a<;^Z ƎQ@"E<hIAwU`MQt)ȅw䪀AY!T_L]1B!84'˪Ѧو,o`4%5=, qRb5 /orPc(&=̾Pϒ]c!kvpU.:d4dG Q*EPnCJCg =TAM wYU^lo>ܒ.ӠdE>FC0U);g5~4R4!'x!H^XrW.YAymv49b:6S-M}+=Èĉ0ؼ9JJ"~mFsJNq$lRICDC 7.{fv ͞ʐS "}?[-9 8UZ]=\ H%='i@Y>p~ߕt\'ËiWR_&\SR(fH*Obp",uS݂hrReLK #u%[K(ILa"#>mPb ؒڔQ|%)8x Xj6K =Y)ÔѤxoy/[j\bDF 7\+) $5 ߞ\YWCDJ7߲ Z>S-r{ r)z9Vl8f%J`+ED[)HF&9󿘌ЉX34KoAフ1 'So,?& rf`C0UȪX^)X54D#v3X' M/|H!V*AA=Іv޴ k~* 4 < ?ֻ 'R1`y D5f-'x(R\;,CΜXaF Jh)C2WRPm|T|L V?#تgG;nL=Ua'E-wH$ێEڛ({tXBz 'zk 0BZm#ERIw_J%p$+'K[2d~tܑ %ts*f%7ID#6f 3]Ą>%NuEbo@ɗѥѴy._tn`ء}teOB]f(=9>zjrۼN_(~ 'qxzxp4$Qq`V!2; h~os_g`qbCӃ!KEHi[ W뛎 y.T޻n{Pi1X45bE]ϧ[ {:[{AK¹ UUVs'): dC,To=5tv lڋSA|͖x ,&Ӭ2'+*6n!_UTV$is2aoA_Β );xh_u1U*DH.wЗԧ >H1Q4Ѳ]}cJZP]&_h=@zp%IC"J:P3tʜs%ۿ1AmDi;&˔FFP)faw5sCx#`%G_a<^ hj$)N(pc:sCFnjtŚ7ΦSgx.*u_ld>ƂZ=BIkrvj\ѨUZQ$^gG1-qh 3 ʔM)eI:-(֛ ruʬOZFe+Y`P]!_u>X4<؉hȋSu閣h<!On#g>z\UWwLUФͤkƧ$%>1!Iͯ黺jP9 V{E +ZCRlwT/IJ=GZn!R|abjt+>B"%[BC쇨' Za09$~C% TaK}E aK P{Fpg˜& $kۗ˪貁ԗrcSƖۜɺ{G ;MpŁfP,5Łf@ص*eݒ%|ݠu ~uS]eƌ3UH7PDǻ,:~9Faj -r5YJSzDr'ȿ(GR*d\N{?,V/rAk\bH"^O*nNH=I9GݛU'__h \Y7" Ҳ. ,2LV,PN`;^ .gwZ}Â=>br9W(u3LhM|5kΦVkDW@Bc)4xgCMAiнzL[sc%bNבulT/K5==Z36|xJƂs\E}9:,`rro s`>lD7Wx/Rx-ZWYF!9`VfVΛO B&0_MsB+Ts Y~'CDiζ:LӫG{HL94v\E" _\[XX_МMn6/j)Dj7T>`: .jRQ1J.~10tXAn m> bݴsGFkt~G4j1.~y28*Q†Q/ϝ_ }^bp|8l+ɻ7 i 1#r#aB.$ǷSFib@8:)f"t6\ @o')dQ$ahמ?/f4`xg NU<yRwR%HOKN؂seeP s㦅O ^ub^N_=m }ᦂˆ¥!pcSXV;Tגg@iR z"Y4S.JcC+/, y iyms-DCn|QfoZ|aOEP4ZE ߀>6/lpU:%Eq8qYqJol=So}ƦM <6}flv̊ St* ^}Iyߡ~m;/:8?A;vJyt߼l o$75AcaHr-/cQ_ z|Ir;+hn^ K)K ÛBO=N͟&d3yyOX͓oC2~f3h1 ˆ!Ǻ^bsNƕb, ܻD҅ص`aLdq7~5Md!&)nU*GFNDڵ4qʷӘ fyXx;ÿu Yp8;wx?u+.!ދUxlO4-c{JBx:/ >ˌ(c kr Y@ "(ScK}|QHbGQ$ r֦H1м$w*9;Z[80lh2H*Q~͠1e}lI|җzl G#)͈W^OY |Yە8taT!8ՂtcOwB""aID#Dm\8d;}QB4Cb/ jrI\7!s6 fp _/KX5>s;N/ܔ< JP?.Gbg*@nLIsg63Ӧ6"C8(~J؀ g |!h߾b@,6.v #''<嵓1(a9sP}Nۜ2O݇F2J(w޹ɖ`D"=wI80ʸ <"ɶC*1;h_4^4&e EfFeSע>,K|,.!5,U+ԎXrݜ 'A4%GT39ħSG#QW8 эڥRY.k }ב&<ѻJC $pzMF3 +cQvF||bkrhϩF,ՔҘIzz4^1VKQ]#*x'{<\S 0>&'zKF`D 3k0HvuyYG:xa_Fz"~.|gxⱿU+p#h-nVDQS"n(Ғߵ/(] &"绿Un~ & IeFA. M`k]]A@69w792qkevɓvFU*$BW uSAޥyd.'R\Ƕd:zZ,@*J%}E;QwӍ\rܒ3>ya0u fe˾*Br7äI}WDqj5 o”{j쥦{lMlT+l @-D6`;jkI!]̱D"z48H35 EЌszH#U|u_8UA@Dx٨7ήܾ=4pï>ವS*5,GD(Y1AЬq:slyS9LGq~}M#aJ A݈@  Vc5 g tuja+`Շ}I Oeň'PfG⡄{~g{ʽV[mKre&!2sxx Z;WN.e\Xs Ays)At!ub;ҔĈ_ w,0{|x>ӦܕXNmarG!z@Н/]ߞKn;Y;/y8V1)罋&KWSg)Sg-7NAk|5snj>ybS~e]2魒\qlMxh7XdmTm{A ~V;|L+ Ѽ`t^ ] K{ EacY+v?i%WԦ8YwHY)ja}x;j+7Jٕz5VAVr|tf͸BTIUIނȔ0Zcۇ[lr">^KbIচC0v0>A8UsP]KJ*rzl ̃4XY'JKOlP8Q@<#O镬+whkХ]X-|9AԖ!"Gps̟Qb7M|.@2= Pah"/0'ҴWׇM;U&6V%܏w-,b'&]Oee=,@ #`BZ jO0<^dE@C~~o[{?Z6^9|BTt0 ƹI o*)3=q9~./p[j0rCE,I՜OFu'3-2SHJ>y,1/F݌6mI#q?vL7dufyGaSK6SDv̅ݗmY~"{  ]RǁT?#da)QO<VX!O @%k eɍࡶLxeZ_^$^5@)뗗Rc&v|-fwiF4TS$i ;,,4id49CբC(`+iIŏ*' 8t= pL H45J0(|`B_yX Ee]ȁ_1U.sn[<\/8FdЦV'I'{WSs5+>WE.l,~ D{b]kޚZN;S%7:C.\` y87c/+TR ?/AQL eqhۏ5:|,nH7"ɽ}&0T/q?M#!,Ah_śǃÆAh& J.uo'x o#ͱA|UTEYze+ :ȳ=]Rz̭`U{afz9ɈH\~#瘘秝VLcF?Nl@6 WLj l$ [|$|tt-{b@f57929bY)2pETAθ1#:;Qd4Z-HqyiSS#KyBa-/[b&S$sd+(;&?PQ$p`LAUIbe o^B|+@dDc`^\}BIitiɬ'!ieҮIALLO1T8g2M;hUT=U93>>$EYjE7ɅO-SsA-Qx>uxBz=Jz-k(c1}ċI7LdXq6 |yD'9نưNp<A!,is2*$qSgF^*7؉nTq.?@nr~C<`(V5tn$ӶZ}qʹ#+hpw ԕ !PEyD&~ǦRWtw-*Oزmt&2QܽΉz H@K+}>)P[j'v2#&vqBUE1Ҟ"m6&U?#-v#V*T8ȝP6szi;Z+ЏX_:[ efBc J̉FZ( [HQEzY,ȃں0"p?_x"6]2 Rn}Gм\ZJEy{QMd7y6!;,ꎰEf ޝ%Bu7|U.pj,Z4ICj2֭֕l8@p>,_n wX.5B )e iLt=^P%C|#pJ+=b<)”q=Iq`Me˝pt3?c_lS+WqA$EV} ͑ XКZ(_[JmK hNU.8 7`)pGZ'LuYT Bpdvh>nɑV/E %#GlaD$ηLȒggbU p coOXWjyP;;~x-z0]-cOiFX(7TT9@`k" U  |Ԩp.&^w}IUibwݽ'<,o !k>d6s7y]A9e8)|qM=5q 7nHhu}Y}$)Ȼ]BOAJ뉘31Q[CbXaXw' .x^ѱ>ɑE~oKxٯ6!hJgcz`tP_0@0M܌c ҁrPywZ1d:}eho`n=Ο#angVNiܮU>~MB~x E]Nӑo4)fX-]_,y_nFglwjύ6%]6%?-aKz>/K&/Gd(g3Eе[g)1?k]a %OIB=6EW=E4~ "A4V6a\f[)'98ɸ]x'WNlȃ c6ѡ0EQ]Vd&gC`%-9RuEP}6Z>Ŀ {d zۜ**Us6P<5ˊdVVa sbj/j倫q2d"H]R`~qml-LիZLi:'JkAxS 47?F"xFcXjau iB>2 ^޴}zJ/VLWzJ"izT>@iG>k64ϼo0n:jv-O8а$`Y^}061bN3Q{W6QT5Y;wWܦiJNm<וo֕-u (Vg3?T?& wma6Nȝ2jOr~BJԁOҴ}1Q҈"Kɢ;G8)DaekF3!3PTWݲo噮QIZ2Ҍ1# 2[QnkLMiYU0+AB͇%jǦkQ 15 7sDP~4tQ|̚ڈ(΁텫]W+O~Z"lN{/v#BT; -soD̹+C픝Z~ ##MȎش_pRQm"01`Z\#4% ,O *>ؔL6aT0HaȽ$$jRj |iBKCRy0a<)HKWXIйK`b'ٙ9d:]#R=Pf1)jh/_MU-fE!GйQ z2aQYU{ܔ QLLB.p +e<6ly_i0Dp= nC$[+8tʨC flk3.L@ wf~pJуF4!# ů`Rq=)Z:d~bV`$;631orڷtTOF0s [TPqqU仏#FFj8E pIޡRvS#W6Psfo ?`+43O|0t8J!PnST@g>ƕjqlZY ZEk"!T9 Wѽ-5Pf.,P$.w,0:=/zH~Jmr]xNBLT@?$Ke C38+/!3|,M@<.|e5nFzW+2rc/A3[0XnYOtT\>q ^1a 0S3T@E7H2B/jhx2BN]sov,QhRd}@͕Xʢfha!N6`:,bALG^n`C3٨Pir3;Ab# Ǩ8CGy՝#{cfGdAӸZ]&}R,:j TiYm~8&&MjDoh3;q%VNn2*QFWO6aIC;U_C<߿'ژ9y ; bN뾩 M@;ӕsZ2/Lpߡr?_EPI9{״L@pz0س0vKdTU\szY2J+0vmX`.%\wY,w!Ʌ-CU"aKp=48qgW!c@R[c9Kz g汈8swJi.To&_︥A ޛLz/_w!y8,+kl{}Pz*LֺE K ETJ|gs fTNrXD^Z_NX_-@2y,+ۆyB*΁ 4+$VsJu"p愋 jF{"_$G UƧOwN20Q| OH;c16ҹLcMGU-#cjEөGF nU] 꼓iw;6*֒.\-BA>OAfD$=.G1ǹ\<mX*sHqO*U~''ezÐCkbW('W)\6\BcD^H掰6l9FFU"g;G?]ޥ"vw*Ԃ`ROV$*B3ä '8Ln7]KkG*]6|6B"PJ<ΗOn8ǟܬ8 2vV1έ[LuhM{]&)0緼 GW];& ?oVwh3j^2ZԊ́K?~TQr:UEMeQ`s= :%mM/Ph4`ǩt8ܻh@vpW=jw%88qD'?VzQ"+U>&Ld%0MBCR5M[ާnoޕ3%G=E(1SLQHR:uc0 2?PTyS!9s1C׈?܌53-YhOY;:,KfNf!)[“:8hoGq5 9 ?Db5-dxFW'/ Y{IH4R0>t#p#.QU F;%ĎN[NYK< 0Sxyeu _o,T p`% ɛkFCFs'R*C@0|VQ:†Ȩy_(od9GQ5A^E1i?;3Pᣅ!K`@m|Ho&]ϟ^o[6s28W% e#`ZIF ]i$Qi.ScDt3))ZNA;Ԏ>d 'xo9Җ;m XYF+Y^&M0c *d Op {K&ֵ Th*B9 $/ֵ{XqGYk>Wr,W+7~]32Hd+{X-3JO87k,}۾vXTF)펃mbY=mq2ͩȍ{KO-xYaw;5]i0QiUqqWwտ#6cly$t,I*Wqؠ'k2AdbܥZْ_&UӮ/GLT+6 Df)iP9؃ÉճS'ݣd{^;wrE׺3>$RTUK>ֆbù|sԈ oUް5Vo#˜^q8R2t[; -yB~6ϏS/F'l䐈.+OWNd'L(ly_Jo] ^|J9QeN ˿لߟFf i:)Yv|HK 6fS0wF;0rQ:l-[7!؎w'j 3$;T68Sb\jN GǔX((hB}Posj(E Ii5埳ͣ$fFxcyHģ·Rb4meOu)]c0EsLFhhY]Esp&oIQ;93wyE@Dj1A`QXl{ E^"6l dJν|m./.OѧAA{?`2$5 U ܞpl&^4i1kp4] ƣ&֏wDu9~7Ƒ'k\bA>|>AHm*H'Psx5" f*h2q*}BZ ;vLO"5:W;W^N DM;Qдª`7ʕD] bsOupXq jZݛ!Aw] .Q A viXIAl>bN!{-(OEK=Ϻ:fjy131W +̌Z.t8i#n@|"̝UD,YiuK<; ҵy[se9En.z %3.f[)J>G-G`:7vn#mlJ\ch8DҞFBiJBݿ1Zkr,=r)= Q)BQh $r,ح"Q(_QY]>[3p;Bc   ֋')|-k_|- ͮ ztJP9xTvn(y9n"8WM[&0U Cߔ/ǹSBT7pl'LyuuW) ,% cd=2&H5]"<-[lXo3Vʸ3I5z_d==},6#Usy6{C+g5ʗ`{NI~w% J?tUVĊƞ' G f/xq i^^Zfګ@=PYIv^8-@ӰW}Y y~LoEM~a WwK7PHoYӝ`qLԇ 8WPT]y`Ǖݲmd";Q>-Eʁm*xJ@4)E\&Ɉf :Jܠ4L*"":^/_#:fkZp2 G[fHH,V"h*J>(},8HNtduߣΦU~`ەݧGa\ mPMRȝ]%~c{ӹwaf02DjuB1~9*}i"Kb\q^iڮ)x3Hlqv:9Oأf5A? jo0чׄ <;CF8TKeaho{UiY zՃps;E5= $mWn1(RG+oz"UТ!Fc!GixՔ T87mh?>,S_AxN[˗[ %dd;aVB`g_[? K{Lz`]#Q49HעaJOάʹiA_{*WT&\ cI@ {9Ҽ &ǗkYn[9gEFpL~~yM8ԼеoLi|%nw ;!ꔣx/XHΓpV:pORvzoȦFmG 4Z턳j^hϸ3\|KO!Mo6}K ,278,g8Zxt݇~P~E,L!}LjB|6?ʭzc,℻ܒ=/ ^, 79r.6XXM({w\*j)'ܭ[,S>is [J]j^ pY}R'lFZӘC.;m՞B;vW[m肪uF5 Wl)VJ1JB…:7t=^x@A.b7tJ20uɎ͟'x'q63zn0j- $[ lB\E5/DR F[EpDrYן%W !KGb {5bرdYI{M^I }Ss\`cJ퓂fikJX|{De "Tf#wLc/F?Ga4s&ӎDX*.dbŒx1)GPG9'U zY}{Xbskڽ aIKYD2SFe+Fx^kk2R/%nM3rr~}CDn}C~MO!y˩03S+S|x_׵픲L".Wh+&&} Á-IX+p3>xn*@ۆl+ڦۇOPeHthTNN $:!)I&}0JH<3f;@%.3ӻ{ۨX A2(qk%g%d#iNc1-讈ZG}DuQڀ^^]xzI [. ۘ7 b("# ,,gpdYXc & @ʇa}sW|ͶTiqVͭv1Zz$(8$[9\fyV[Vs3Lo™/g5% fo}f1V s/8W?NSiH`O{C48 C Z{]! 0) C[M7s\ccbttq 5{K%*h/k!ify|DjS ^ҖP˾&VTn2L,J<fEu[Ro(L 7o~3x޵vyDRD3vfE?ɤ`曆`&lpUǑ jԿte~M:>CS&家/*GA˩d?r卥s~ީB"砖3ť.ᢒ}T+K*4 #]\,LK&"-i"mP,y *3,샬Rb;}ݵx ۑ>k. V1aE(sY emAgcWj;h$ԗa7w.zF?9] 'XRm1*}i $yUf5)/K֕N{H2Q5̐~WQƿJ9ƷIVBO\Cj31yjsvxHЪl܉ZMn% WU<|1J%gKd &4L"Ы4NH|rkYӌVuM^UJ>Q {ton;c\n+־EƤ#LGF@`JrM6Sۈ҇˯aV<-Hs<*4>'_XT Ԣ W'ƿo`ClJN8~c zt ߸c>@oؚMHd "jPsDQ˿ש~{z\MTrz:#I% Td3 F<0GnjfxWuOo1fA{wvEkڑ׊i@27fvxt4<!4fDwQ&Q PzRU4W[^}D2˰_N=XAu]SDqTjY|_`Ϩ #L\ /CcrO,MnRE43ˏV-.oy Sӥ G@}!D|T_w+igF:-U%DhJ1@S޽G8V#ޭNDg{ XQPt=G֟W 2yR|ѶN>#pE(~/K/sp)T22eH f9;q@&aT(I\| *Bs|NIW$[Μ4x.c[XMRkj5 BmW׾W> YѪɳI&XꚐruXH.Ni_L/gՁ<~XeŰHLSeYu-pqD;~-\9% s G?rܻjAA:raȏ9v2ežl=; kœS}zM3{ oP֕ (/S>um݇ C^ u Va騡WnHqnkѢ}=)suNj=ļ4>50cEwnG&{3{]! F ?wU}}$мoh3{[trWt0/SbD}:G%:MCy:wp᥋vCr}%{*74B)H `J"$L<;!;83Kd&!o%}bsֲRh_:^eD]<46e|czKuQ$6ee'0v4fŹ=*aK6f^>f( iYAɠn4m+bj"Z]x09e[|F8ڏ*TNtv'ʓD 0k[z) |Rm3Z[{Xlat\ < ~ &ݞfE&=œt8Q}EO٢Pءk!`׆^2;uy7)A˿lT#TU$jƁbXڐI6܄Zbl-bRPv̠tǺ{PB&2 CR!H,ތjv8&#B cSeBҞpln9Ʊ׏S(h?ϩRAw3wJ;>NB<μ=)&ge{|hm.-{DOsiFj8/UC\a=opp3EjI[FGd8"DbsAnWE.|4Z ӯ'ROѽc~ҽMO|LſX4FNds!Qӷvݨ;8r`fg5ÁRϪU>?t''bS&R7I@cȽ9/r֣Y"ڙKZ Uk6BQD?Ig]U4¸0FJ- 7>+fv,~I d/čk5.svg*LXH>SJTi%檒DGsG8*G$}é@bT?YԹcuefZ<<@|T d@^zEi 92袓 -%E@pjQ{X:MVVr$sf&BxK[|n掇?L-i\"2I`yK T3Zc)%f^kgpIjEĢ8B:1ΞE07Y!XP -q?t8v@uANw?rHIf q0֛J  +\nhKd Y5U5n{2c!%5 e|UBg bu'Y6ABCLA X_{JH]Nԏj!0Z]&h~1QhX_ XքSE;Ore_ A~s i?~XtP);RPYxXX9LmdľL_%bA2؈цF%[fK7d#Y劅5Q-ܛo?4Yip0Y\8` n)vY `4 ,쐞KǟYL^A wIQ q`6Fx&Us f82M rS+VyEʡ0.&F+;Uh" IO(p/}zf?y7UC[k#ʳr[ 6G MbL',1x0{Ty,]tK|[ Rĕ$F O*Ay2pa~^U'Cؔ]MK3m~_  F\dVsk]tW<ޔ BЊ\UyIWHGGYxIf^۬yrjw T0F&D2XmhdrQa;}vXHΒc>B(`ͧ:v`F 0g߂0kUBTf//F*c-3X?} x2$H$qmn|=ݧY r *W;IIް(BKxn~&)ĖOh;)~]}' , ep᪟pȼIotPeGo&g6rH$`*{kVdy8,D3@ucvB޾ eRPA'P}f_Z.]d~2(kҏ6dcSK;-,#+%~cj >uLHaò @`S yfΤ83[X7YK[,?2b)? TKT$.$cIJKc?@l?~Y2@3ǩ"qVwN:[g#P]F4(!mD;S3gNfLnɺ\z|ɏnH+ELZoNM]f·#J*ZNdK6LyXUs9Ҧy!;ɰ0K#Sa܆8L:ԁp#$Y*N,5X1aVf&&\NŠ_dk"3u"i4`?La {DE/YAHīd.a(Ц[`UXWk,pd[ ˵zId#mTl2Dv 8@$O֖"UvN;\y_Dpo^Ca5P9 6őfz(zPpI\Ok^oa'8!OWqZa.ϼB/Ѯm9$N/cҋuW"FRU؀Uk-@hz2ֱJrt8"|C+O"enEw StI"0Y3VvTйc: LH\mfEH@}餹ጀEkw}͜Ik"5~;{C/T?ݖdÓ^7x,%m5hEi7T+X)_a ТE UBJjR%t3a AE 772d)^GRo;3 .=.7=eVX;l ZS -Kz Q,~JJSW CF)ݹU~FSc/ۼwTĻʗ9]$U_z] Ѣj`Aa-n7-vY/= Pbd!<?ܚ7],r 3q =J1DA(P:E|(m1?`jb.s7egX1:PylrQeƟTGh?* (~ҰgHda{<$xR®4G(܎L\H.6@l+}XYr[Oߐ"bXOmzUg[ xm+w4`8|NPRv^cmXiM};W.3A$H$t-3JF) _S4Ba01~~}-6Y8^SyN\c|V &ݟFEGN* 'n4bBJTո,yEoxtSl0:寐 !cIlsJ)XaV25T^ѫY/rGT:|nl :$]dH>?m:Qk]Y0\1g8 UdqZ)n)\#J&:\̅je^"o jM:g&`RCH4 n9^6(O#s rEs;nZ|nyp@5xsqW* rdub?D;ρ1bX5zh@" <+t'g̱}FخΒ8WS-G$ot-n1wrļ]{Ihv-My(AR^-H~[o.v.`A: HIiӝPd=ag@.dJݤbs cs$"Klߚ6i`P:]3gc { :Rw_3ń1$&xR`^z%/]&!BTB:0X Ǿߛ 7 ]=;cC6y#$A0hZ9~(DhXͣn"ć$<d$xu ƌ(0=XLw1NyM(T\9)#Ԥ9 2VŕkSP)Ӧc]e7ELL7Y~SPW4(v4x2%UMr hlacR펷?O`.m<qg0=Rqmۖ#+Z/Sxipr'Eiu nW 1۵oG5'-l @{bZ'V-fP=hlucWa z[\yǟHsX9fa TWnC2llLrwu%THa"w0ʅS [:7iHeL4wG!z}JK}'H!uΑwM'z,Ұ}wFi{j>*z7: -}#XY䞁'UaBh~P4*Ž$R9/L^0aNKCޙ#Ģ àeM>sw_>S)p5CvQ+;Վ`ߕKkJ2DL}@ SK4 /9!;ho*ʢ.m޺ZHA}<ɧӻ,6_GddQ1Igė$ԧ.h_`>w{ӅdY2=)z[p&`,o <DTCx(/@=U#cŞ  }6? G*>  n/FL`mhGXm7^s@#EXp,Z/vZ:,W+4[O+$z4|ErؾH!cD6HτEi#eT En@Xxm@>= QXWvG N4LφVây @6Q'_D |U9]Y'< Lb+-GZ׍ʎ|W,'0M;T?#D;KHx*Y>{/1KD}1p^x:e龺a{ڜ{? t3\%%At($bCՃ|ub̦ƪһQJ^NBуoOH92M2615c>j$cc @mP,fU;yLmȾztQ@dM(lQM";Xa[Ӎ)|-]<@~<)=X"t#=-%mf ϓj"3,7[K] ļc`0|rpO u+[jUII뇫Q'0]Cd6:VP?GCfF"?l2#/nSDW}`e Q.s$h-V7?q?Aك0ku8 ~z`yQXෛ7R= i#G{,h2 bvI3dWH`=88L4yt/b8Ʌ7J?~=&X'VBLt_LzO $lEL'+ ,1Hv:TA˃܎"=/z85ɚ!U,qEB Ѝ{36WI 6L,\H>@ S@&,"P~ ,c;_ Hv}޾.wk}2UY;,>[^`Nd7pP6 JH1wm&,bz`1'*qcA}΂TP^>׏n;a\"Q ~ UTql\-FteRP~)Uw3Ûvbӡ o$_a}k HϐZ?8W.Z;JV1HgpbwF dgW|2!ͫbѐ*˞"=`"` %1LD)'dq?Dhxo><;PP(NHj^|9ҿ"qfj, y;py"q< ^V'!4]YDنNo9n3%V8QP7":N_>]fikGO#&V& %k*ch>LעrTbj@L`Xro8&1S! Cp;YHSAP6o3=R1򹱧Pd+h@3LLk }k;rPR{60WQsq'udӳ (2 wBưPwSGM`^eAG|U7cP G$):Q1zm9SXXaK $]xbg(1.Ԕg1ﳀaUlz@yPfd5,'l n:)_> 7^aW Q!7xCTm nwGW2e5jR(uBl~6Ҫ}ʼnJp2W&Q"T;6Em-ܿ:Zt & יmxoS@JHNM &`q}X#Ҍ0clLVObgC58@Qp*dnC7`?=%kR(ni1*D6.zϽ}cC"~bvt4AXoރ~X@,ixk bir .W|BZoR֏c^NNd穧x!wt:Ug%lMce"2L9Gsc(N#m}&_13;onlو(ڪ/,ĸ"2HGE4=(x{֟;dˡhR.҇3_k!v('R-4ҷDXNUZ/}OV([gF|Y8- yp6zOsMɮ^L_Ň5 l>D 3OV?xKxN0Щvn3ĵPv /Cv"7aTM"vn,o=غ=u[ˆ <2~Zo uSx\PK@05Hg HT#l/=!UgҏoΛ5T>4ڶ>!dg2@V_bFcpw{-t^ZG Jj=vT*3|V -ptJ*IWVKVwe\*#3duCZۘm&JM,_/N =ã1D{7u973*җW>>;'ml )+W̹?B6D'LWReA]7 /@.U5ܨH*g9z&RS0}' eB֊/0[IzK%# QyZxfJie0jh$^i e7zrh{wx3@ns{F:z[J9ݍ7aq9!x|PDdqwg wAC*s첡VODwI.)0> &zvoRzrv JwBYsTJ.$І*ٰ0F+ ^vQDd̏K%SnbY&P,MWx](')8ʯm |Sisp(;< ja1QK=W$ XQT"(,'?hGK߄hP WKLA:ۇ5ǚQZ)|"53,[̲h!9e uX<ꕩ~d=5JMfrUGLT#HC^mJ9PZ& A+'xSئZqkx=[?uչ_Cr@ G;$8YQnNބ+LfWޜ#ʥۀyzArgMjY8'44)YỄ^_, p^>M|wnO0NbM,ÖY Pj#o7:T6 tròS! >-f@TQG  `[nPcϕ%%^hveM*Ha{pB#~vw閝x&u7AdCcGp>ʀsU(/ ۇ@XA ݏ-S4 Vw4Lulj>R:F$6S'B,]3j/!.|_,xKS>~TY) @益JJi(ii?{-Ymy]. 5ZϖHg+T4l{:H^}JfSkeJŠG<b'q :˼Jp5Y/\]/#dI',N9~˿FMP>" vj9s*\EEƼT stg5vSâ1cvD6K-yUۜt%e ! ߵ ˰-Z1"1#fC rWx hKҺ@=4ew_i@ʣ;çX䍬DZcƇz`'TIa0,b4C H RoO芫5da9 r66@[`T;D LuU |'Yy^ TÂV9+kFvQ.UubqAa*B-%Hx[v34uX%֏fBX --=>!dy+x_&+ąmH1AC{vzFJ')2nWHZ~kH>Hհ8"/D!$7#d$ɴ}wIG)[ަ3lɩB)'eOh3w+mOlpԲ֒YH\n&ѕ342JgnpE"JwގTo!o1Fd1L߳9gLD\](Βơ\ L koǴb;]9eJ5" *_Ӊ nRә#2oVg.סգgU{/fǡZWwӃ9To%*u} > QQ[:3/cw)zG:$ &=^8MDsaCgt=V1F+\|۰sP 5H"xF`ZNu"Xee$?k}WdKqfX|A>fۑ`נXeV,1 OgM~ '> bOP ˈH1 VնdB:/ny}Ȇ].ΦÊK#Dرa^ԊؕlROܺvgH98B^O!Iʗ`s`p ld..?Va_(#_NY:$ deAAJ׻|d ++#KI "|T, 鵘/3ק8A?+ǜYsWEr3Ƌ["#@{2cxOz0eʃG쬜3ƕ 6H6 PAT};P/J3v?29<-xk)=#'Eg@݃vL-ڸ>aC $1as3,$Ytƣ}W]E~ WU +oGSpc:P}i.qw8&z @ą#w>&@l!aRf$tzYA$x|$@n'b)nȟWִߤaƻHL'bzElN&wƗ]M9hQ4cexnD]f4!F\xde8b=2뻬(\qJ0X\.YKײ"\TwV,Wn MP٘R&wL.6ctsg|`Y=ȍ G Оwڔ7X`6Xwrxn^"\K GMO%#>yT/gc<'>-XdJɍ-RF١2U9BmZ=Yz{\:=;&*= m ]Os_6Ot+pϿdJpd3kx΅NĂӈr{ŀ|4D^{̅\[eΓC1EX0Rz-/H[رl-y8P9 Tq*ҵMuffOj5Jb:y13FqOD-hx`/Ri((\9 5 ~QS3uPs[@iu br5Z'a7F J % %.䂧g`6aCEk?L'D)_#ih }(FNzy&hDΘJui~x|yz(=C #믾=HR,G d6j"+/ \l懿V՛ )`vL:GkMT|r/V}scY .2]"J,v_jɓ:Dmoy $/`Ѫ`ݿn8ѩġw1ЗE|KMT`gve5~^9t!"O/.UM15 xpJ6"ʇ,/o#KٕR,`mu'+FVvvJG㾷Unh?$"L{S14zE~\8V0|%o Ɉ۠fj$uzJ͸zψ}}J0njBAo"zSЌ”QJeS~es_yWmU,Mn ˎkOoH_i!볟Z\q9[͒}5o֯W^ hvP}ǭ5\uF4+dV,"IhUh}=j:8, b퐹BrJ8d'Ȫ O%}"Í[(LD,weő!5KĨG?z?7Ӎmz0I) lVbb(|L9֑A*]r]H'M.DP̌I@8#u; vTSDTBȱSnxٳ/4cDߘr u^/pC.} ' 1ԖojH{B|e mC ؕh_?RV\{kzDc2:"TWβIOEeۘ&m׍PC $T( ;ԇl (K%y8{9 ZE̻v0 %D%/RJߛz.lLP=Y~v7QQ?C$Lqtl&m[ԛIf4C&YT; sDVye-YJa',ex` %j?2dYT\${ZJiHCʿ`Fh}*vY@7eR-N}ia epKϫ[cSPZP @81Sa<0d;ĈiuCp"83~F%KeDAK@.8*m<#4]?}lzlħQr+H QRrcZiWh}0z:S)]xA}} PWX߰+iAGWMǏ}* i"5CESPH0^L*uNQA κC*#Hޓ5|=sa?T0sMO|CG-zN^Yf,Eq6yiQX!l5+%^X kty> U: hM< _c}'@2JZxDf07h'{A'nW!!|< 6ޅbxJ2/(as9kUIc"Y8sk,Q =MsX)Cs,q?8"$-cȴ,SP H#Vb2Wr0s^a$:/(9jl&9O* РP\TxBu~}HfO -R2qMwixi%aMww;{-:t7ĠG1vC+0:6G^WKVdD/׽:UMƌPgU0DrP?4#i0~<`,> BʀoK]%u1aׁyk vwMzp8R?OOk뿹֥L Dj&4‰fj^ +JE ,“="-/gxru2\sRK/"̻YM*1Kᰤ@~ 7وW# s>s OC %tcZ1D\NDtkŀ5H {% ;_>Rm^5nAx0$}tׇY0j)Ye}J^A;87BqI /u9_Ќ9|ɳIjZ;%®gWw Liȕ+y,=ӋZXxm(#*Έ B#P3jf[zR ` &J&-B|<_T(Ws\wåT<%hEb97zhc6ٗE8ހ #*Tϫ)|AAǏ1gp4w[ <"1,B9Þ\fd^=&CL:6l3Nvʏ{]L4i[PƖuN vacG|p%EC:q*& }Ft=~(}GZr*~)2 Dj$eBIo.U4= Tyy{Q`u6&s &#{`\ɍtT5>2=\0|,goZG7/*L#~+Ƅ1-W*/@ \A t]S0SK#dd-{} ԑ Cb03N2 IgcH$2n7IM 6N:D,˧ #'WbEݥ(lw017^;HpAcWm{uѹfܶ-takhCCv+P./H0AWD?`Wc{G0Q\1{(Vc֯ӻ'7l hOŴ ೑%`)K:C#mDHeC肹?mM*Ywo :]r!,`B&N\`v;6 @,,5}B;G*\F_$_J R%s0:}*[9!b uӰ]*]1hO A6ӮAJ؇\CN- U$Wg8Z>-eyWdhuxU])ޞԣ- L{Dx"dxs֔(;O>%D*ܮW1?Y ̖+/gk[<]3[`G 8=|2 ؉pv@v*R;;$!CnO8mwwYjcr`cW-}FqޣT'^L I>Z6UWpAT¾ Do騌-p&$044췑<" QŅc"u-f8j~36\L|?:<̾p.lMx{r9+r⧘H[6Q4',#wx-S.p`P?2tP/rHw9Gj@߬P麠3Xo' %B 佔0/HON#**YGEas Cj4UK=!KZ0j];.Ou06hzX'@?PR7d n 1T\RA,kZ@&~?C?%x'+\l#yMp2|d*@Q5dcڇ=8d4V IA+>p}fz}j-@ms7xpkI=y c^+I,)ަ96Zuv|MO]VDEP#< 9Z [ ݡsol9̊z ]Wz;6 ;c= U2n0S8F$oU)rz/<oCY/~rzIwDpY$cХvazzoTdʫ_lr~!Uw_">]8'ܨ`WϑXs>9>16m?a)B,jfĭ3˔ T{"K So*ΧxR02a9D&&OHڭ> ۑqjnn`v"&CM-m1RQk /MUo'#E& k2м%DEzNm]!r$w88NCsq]*|$}; hRΡD@ofm*tF~vf4}}\Cd,ĉolZsBA b޹Wz/Es,=I%z`Ƿv ={ز|8V?f婴(ӳP[@Zx6(Q͆C~# @R /)}D+ Xj..Q~ɏ"WP{ko=MW|k c~_qʋxӌHfѽ|200qfږ2.R J#n`[ Xohk:2{YyPꬨh6bECOٝzbQ0X{{Rlɥ߯*?1kI&OAC {NS +ݘ}]{c.?|/XG_'`BvjDM,9!;-7y{pr9(+?Un@?dȜF%q' ZqDw3#īޘ^~)KICt-[ub?FqZRCP~M,Yo*A\tHpQ<1⾍vSe%gaVm]]n_c7bX ~5F(|tQ%[1H"n<?/Ҩ w ><jmYϟ맾tu#>R,LEG5RQ`\7UF@1 8Lѕ,i*E>jb8N t(!kkb ptĀRsHvi (u^tdPt ԓCn/N8RF nLSsD6sOPa9Q ǐB̀tE ml 0$X_w/TP1kRNdFހ$:I?feL0n9j7/`~T ۮqT|Q\6*\Y[ jzys ~tHDE˧yn$ޒ);w? &ULy_ $m0&as@;)4tE< QaW"]!Dٖ$lܱm159qXt z /MM& b6`Hz`/?媆ܰ}G#W,Ob4Dpӑu_?12K[|ퟄbx!T_cqQ1+avu{UگGv׍_—xxv;\oG_*(2/dAz>7DcJ&2%^UgHʹOg{qX ꗍ˔n"Xfhy@k`6 Zn ʒa?TT &\,zd_"a׻'e'*h"}] I$ËM4@ZhI>Ϛ/r|U%g4)QX5-H9-sXUĆQθyg,wHVF`:;IѺq:l| {$V*m=Ӭr'%&36IJv %-@aۢ/8u׽6U< O6ޠh+82~A.-[oU;jvܴrvv|eVՠ1SdD`]SSăB{2jevPvM%0@O?aM ,d02NЂ'xV`!Lu;5 nA =V@ d7 dX uxW$MԺtKVbj,]_=+b ~"Ҿd:5;ff Z\-^; ͤ6 >ϤJJ %$w&-MerIYZ̡VU5C@tAL ~[:@f+De- aMN{A'j`cdffP7񕌊ԫ?+W2(P  [s}ٽ}ŧ3Tbl\E,@S%mV2sP_-X;=0nA`#^e MmBpth&cWG()ziá/xA_u޺6ЁBd=JrOZX[t†&pYrJ*u=oʑҍk~ uFvG̩M$}W<_Ow3V,mmz vHBeK]<ِzib!H~%j oAokpTeL'"rg."`gQcS+Iy M+g0[:&J̀F k_^t[X+qBvm-d?lk3؆#Tf DK 1EJ!觐do\T cEux-TPWsL5u5O1vav3BtSSA>~ճh }OuZzlX?Z6C+Yߛi@U1rU{m9b E㰵;v #u.]at-8 HكUݕg/ 7jHg1wŇU&ai^4] 2C z>9E&l ImSͮbqT}8=UBF״DIy4񿸏7܊$6?bˤ bMzK6k\걂*=F hx|e{Q'I{ۈ_iT²Y(W#p`oJSydZHPnn%>Mݸ|q*P;Zؤ a-9XSHѢ0 lk'{P$$maj}d-wby@+d@z{2wKi)_zN9Ж[J<}u@l̇WI rW <=B}IA*R]V2_csvňIIm!fwC3ՙ5[2xyHN AaVaS6v6ID8h h;g"V޿m +ZP'[{0#_D/ NN̛ۿT"" !RfO"_!m$MƫOFc;Qbn^OB5ޡC)TÜ dz_Y:g+0&]Ljzm8? jF?5G+ĭ9čn]MԞ_#Q;4' S,Cu50iJѣiW$X9lfC1L/TGbk8C~$Mr0-a`;0ωoʸ z&CJ}'Nܮ3b I5 @qԗ𥶱hh}9rΎvOQmW)`[ugV;w}vy-{ ʨ B蛎o]wKcV0;d4t0&W"ݭiUfBl:vzDE`=]EP j.;-5MvwRHn lcj~t?SwB˞f)TvrȦ;%޻J4huWbF ibY QqdSkC [MѠR5杮'͍,^xR >E6^EK Hw'8.:`R.n/IGͺ*yp`^|x p%B U*##iPc/`l4ji]'XjzZ霏nf&]P];b܄(8w2n m(mK'L%l3KF-fI`NXIetnliIJGAn2*XtX}_ {"n?h,dkQ|h ~hC"pAuVё3Is7/*c,aKajssreKc+u}E%jԓݘkЖ3SzQ&h ؃P+:4f@+T2E;]3; U*A p^2jҹVΚN_Et0 haiJKr,QPIS49N84 mq?L:>Mi@bq7L]"Șx\; C~tA*_ ~׹"!fs0&p<<F7ETx2tN|EXW@OOͪtp񼀑.v haV#]a B1Fg G{*hnqz64p/ڲnlJ'ؑ ,)~LJP9BhI_ڌԧь@Rڊo@C ~W. ژp~q s!A WGĈK?&ܦH'%)c%P>`M\5ϝ OfL X }}>+=@Hh3a2W5$eCͼH\TQ|=bC|o=$^U{M9j36`ԐLkЮ'vWRvYS{pVauL#4 (,/@?נY~8ѱ+e9Q:"NT35,@`}Q 1 a|!4?ڿdn(XpB:9&U"89ʼ\]$>U |S}l 36k7*-C#p̠rkpb-~:2Iߚ fḸq & s':ȑ mE "cNP &DSc39T?5pV^-l`yӣ)CccXf1+N$*Vqj7.YRiޢ5o/%KO1A}W#T  |;_+@ T\qkZ?^IZen^tfK/ƢW~{KQ b3-mS:Qv>3ǻZ !AmCjBl:MGBAVE]*g 2yS3c%mY3.w,V/k^/b8.CR3%j4 Ɖ єG).j&yɫ߹:5b9ͻlhq$'d~Q1oB.[%*,MXbli]Xב"`W90]zqP4h((}1nf͑y Gc7NTJ GP2ƛ} <&@_گ4bw~xf!rmlX{~GGi+15E08)hjt(yz1H?O`!= CmJ8'Ah8NsW¶Kq5lgg^2Vi+#P #z|U. ݔ#:צZ 7gVI-l[n:YND;RyG>՚g@X(Nh UQ#8,wZ4\>~^xZ9gƔX|dTaT( _LGdM|A;VHlmdXI$ ?+YME\VK 9V8nXKSɖ[e=g,9q)2UAǘ;]Ve^sf߮^I#9 CD'P<u򐋕Cpaz29M(d"ORMaj33ڜ·tHWBw壹x0C!Ah9(D-v\6Ar7R|Fii]#L)<.q3g\~ ;lӂ5)ޗ@wy'!9vZ0JqV^c<5A5.Ȥ8r?Uo| :$%^Ⱦ#!Uℋ] LPޝD6@4 #!UC)O| GqIܤ,V׏D Mk蜄L[?>ٍ^ͨG4`;NF>9:uʙV@u^K HL[&{!A(]盧&3].] ѿ:@{q></$^Sx|{9v:Lj_pϛ_"f0/d,~S2UG7@VEz̟zT7[>Y 6.lbx P,tIBEn«+ۦkt@QU}_xA5$ [P 9xbGx D.rDžj{|kaT0]cC@ya FcCdLQvnBM<80*6kԸϵL>;KK(I >;݁=|W!$mK㖪Fxlnl>/C6XpJ(W3-¸`bLHdȍ(+fIL]]<$+j$DxZ``tN:=DvDQ]m+IrwZ!ĉX+xgpĬa<Ο@eSeO~8(`Kƴ)b%NI:ρ.AWzomW{a榛7?vWT$ Ʀ3Kؖ|]Y e鄰=8C#\Az 7pFP&8 BkX˘S4Υ"f_L7'p`C8f${o?]JlVaۥ_H*Q431\C< 5eao{-e/82jaO4+'5,ʗxl+\>h'Rp'r>ԝT)Y*/GÃxWpV}HKh,}^MZv:ynS), r| ش;a 4ż ,r(aX۸ {=T88 H*a"^215:lxce1^ҮtP W]P-(.qm;8#D}׆QR dMLx9@Re>{I,@zኊzocx}v<SQlЊY@f )F5I9bb#V.7W jȃA^I E~)g+O4PFfrSn#vlOL/JߞA KeJbIzCDv u0u<->n憱]\AMP*TcMP`.H*#<呭&3c#錝\; KÖyT.0XBV0N]!>d;g1b?p~pSTby)zN1.7NVOz/HBh6SZxI^I䒿FgyX\[ǵfu)~?Lx(bk, ]zJC$uˏqNtK7^>ϗK)DLQɰF5[# H&*| K*cyi8&\[ WI)B1xLi/πdܔ\Dw#^}X){y')Gֿ0;SSr3ZV[vl=(%k9i i v*m &aDsuW( zb/jkE4#ԕX rU y sƒ Z PB!~b_Ib!_> n<뜁P,$E7zxW5t#t/_XIR0ni)))[T@@4 TXsi`][C' 2a:igmuO,@yi= |KH~E .ez;tEQS?> hйrw}N#2 4]P9 XAYNɘE! M}l´U6548 n\|j:oe8sK fY{M95ؒi[|aE6&eo5sٙx`՝WJ_e%y4G*#I_^UQFU؊[N R(*AB63X@gO4ETI1עk e(G҈񖜍h=Xnoy$&y|Â3fڮ<~ ]{;\ќLsŭ$?bR'2=lo18Eanp RN,"1oTciĠ%svŨV8^ډa1I NsN+6+t~g9Iur)'U\2B"wQ4|b%T #Q<, $p9KBF.5:55nːԆ/ЫPqL2Q"j-a6@»IW}(yBvW/#ǡcq|JiԚGK(^I Yq+ .$A:[6H^aΣM/x+iw6Wtgdlk33ؔɱBr6_ѥJ})>loeǤ"IT鎠Z .9gk nR_ "%S^á<bHm-ל! /٨,κhszUwBkDw׫٠'%]D:۱r<(]0$ Сb/~~q mKԮ.ܘƓ^-.wdpt!rf1kҰF8T6 le^_;&!--J 9 Hw}HPwY `:] ~?`j#Ǯ֥z# {KZ( 0W;0+XƬUV\^e'Er^L9Sw k #ލI*!ܩ'yX\7#8tEpлO4R$Mn@Jݰzƿ.`#%CA;(ǴXn#vy7<'{FfJvY} ƵpHGFxu^C$!, !*nN ^͚sIfG= z"W' ~ъ L*n3OK2ZW/|F "Co3Y'S7`{[C%4x1}'yr^]Yu CvB(8*IUBLop]6܍rD?BG9XNtR ofqT'.XͰ~x*FvkGDP\rԼ7 G.R2bFS%b*(t?imh;ϝqGF< Nhbp{/Ʒ8 +f[ÒbNeV#Wfi>E/tq~bEKȠuG3Uc#:c_Xa~p 3IB7cZbÁ(7}\/- ?TqjmR'mBB?h<ljZ8CU1,DH)PPݬ6Unv۬z؂G3 Ug"qzRKIv#`@QtfO$xA/r+OMh-.x+QDOw [2v=-;erN+cژ">TDe35Q+!Ŧ`&C6|')PpW- otݗ7S۫eL:d)N<5 ʰ?? Ys7Z,ݤ [ ҃K`*Ef$_ѱg-cVcw/ņ ڢ'X(xtPjKmmFdIٳqw.y|YTu׬9<&Q*D]_ '<:19=` I+l=гo,q.HG'k 䇖=17AnMyWT"{^_)uʠ<ʾQ猡9[^>.@^>u jvZ leTUF~{|)<E[=c"d (,1!>XP$!T}b5HQ"@y(5KMh]=mkNq ,|$1^󤛍~2. 3`߱ۈ-TMXTm xlBC`97@0uj q+GTm虽.sq(K3`e6YԺx}n,f#ƌ3sV?@- s%piSi|W([E$(yK6X*_Ǣga~p$6/Ji֛av9q􊂦?fIogܠ;RU>k |1%i׺pЪH]rDgM%'~NK5O^9EGt8"MuŅ aj6mQf_Fa]0Ol*l% (&ƃ_8OL`p,cӨvpo"(t>ibSY7Kˏ]S4X#V'Rڸ (F4Wl`y(Fi+Sb[ϛn~7 ±"i/9ylÔ ("%#Z+'(e[壙npR}1/ Dʤ{dI"m r͑ IU?UH—[z`[U6)j6h hΠ!M%5SlnY%Q5'K6\,Cק{8T H:>R;n~)aG?{5DSs؁v5'ۧaLUZV*-2|/.ajԪ\۟?Wl W'ȡn]Z6Kp/P]lL;XjPW_fY?ye™S3e.k+KBqG`I'۫_~DD>,yym MOX#S赯lIWǁϒkA{q9jˇBꙆCZ:tEjyFTz)PCW!$aoo'ă~W(fU3hs_ RkWq u{_kmB-5Nsw@W(JjޒGy` {eo+6`|<0gzȂ~yɪ3-+cOlI wb'X}VQϡ>odY64||X>Gs_!3#|_21:PvcSXnۋ. CK`g ȴ](_0ئN3б Λ*F#:t*ihIdXYJ|PMtT򦭸nBqg]{O[we9ɝG*1s{Ufs(Y^LjΉ Rv3Fmc<#pJ?^㪗cK!?<-Gs%~3*h91sd컎/(ՆZjM~BeuҼMODnp'>O&yA%]AU&gvNN11Syh}z3?@~'#/ৣ,jjkYCߨcN7).T,rR8 I| 05#~;Ywjڜry3^5Ÿٱ?Wi^U?:l SázУmx#v R0Fs\-Ի> \fDjUf=ur|'ZJ+?w0uqO0[S7zT>A[p& δZ[ 3Cg͵& yݽNsO6-/cUs#eoR}V)RP&1w>7uNpUg~|DZvA9,ʥȌqp:VREx !&e#,qH<ȓO+(L @Z xh2bCe$S eYl(?:;L6^Ȑ/u5,f %-6 )m1Ɇz馵j Ghd*hL]|GT$ZO@ RN} J˨lmZY' !ƎrpmQx'p=mlSd#Zaiр"|+q}:g'/Xh¨<(c6;ír0?;RմPQbg'zqXG/,Mdq 3c)KZHQnf4`4Tď7"sx|(sx(EbL3 #DX.bA,Oш-Xw%!O=E}/^5m e-W<,2u 'TM{~\";2cm /LN|F6 W{-H?u6{6X{]9·H=qP d^_Zǵ_~ =g@!~?kDeA4zUwhor1*{MJpY#;Ðv)qk93{HDTД1Ū٨ۀ#®z`mz Њ S!3.&0>brW&:*\%i2B\8fz:?~ ST3>!YzMtg\u 5(*|YfƼdQnҋoTA*FEܛ9PK [<8wMҿoC Y5DۚfylEY7x1ՠj{ Ϭ<b0Yςz#?1%y\l~A.xG.QֳfmLwf!HPJ#tz匢SRO~| F3&SW'clFb!H8Xr#xcFƈwKT\TCΥ]N?֟ Ia5vH34*"B3(f:w^$ou 遗WM2Ny5ԜЪ^/Zbu܅p$zCi0 ubF2 qW qw4@-Z=f~#<~=U%#V!O neCߊl=󆙸̵q5BFjwE#}ٌ@GV`ν(OCw;/oZEQ곮ȫhVk^I6Ey_%6kKVne4- 0řF]MsIݝ?<:ա]! +71BۺAOw=R'@gg=b- f y3aλ5[2xt]Ik$J = eUj-}1vGa!I]hHBE\񿔋 Fx+x0዆6b`q4=i֯urWw=?S--2U}CW_d?Q(5Xĩ,N:s(ZOֲqO䑒e?Ghj>A\S(WإpYoX#Ёʅ'(mQ4a#SЕ\V1"@YZF/ ^R%ң5 @K9?&kik\%so2^쟬1Y'wyGʧ[n ڏB,ԡ/]p5]^mQRO$- H7ָ>^~+/vORV!ӽ:F8kij ;%UD~ߪB\?$99(F D]}9[ U S&="\Aa ףB tuhr`,Eoꍅti1_ʗ1DcU P~#6d(gyF.x "='ЖRFxT8wI!<-밭 X37s*-SM Q>rQay(\]ޡT QZ=X@0«MNqdBUfyڭ .5/< % &pڶ&}]t17k֊nX)y<ڎ! &CLd 5欩' J&z􈒆u8(E ePȘ]$F^r:`bc8~v ܅`$Gp56$h)A81('׻oU}d qܑQ7fv3.â׿Fg<#qd sVnV0I[XEY=G23N+%8Y'k0)O ؝71 ͭ$Q؅&_m#x`KFAw h5k7{G I,<66P>~)5Hp,7"ҫl˜&9c?A~-x2 N\%ǓWv0-X'E zFI7FɣVGh n̻Lċ1 bE`:SL[oP*vq4Mxv/ԛ  )ܥ8QjQA[ :fZ.RNiG'+%[%3 >Wr_}g}WQD` 6UNԿ hX9i߂ruv԰4#ĕ-G"6R]K֑4:AYNT8í}-I헊c{ݖ%a;5 ZFD[E{4Ŧ;\?{B#]Ӈ"g9*R5â$t"3؍B#;lbO7}0W6^ 8 7%)|_Z)q>P|iB84X=T઩:&1ykb: R̪r`oa5u%[o>PDC5p4G|l# jC ֚)QF`BDhn7A̵')0ಀWCx`' I *6$EdM{m9OHD5,\7&Za{kW;Gn,3)lC?o.HBmjnVLYJubaAun = MF7)Xa')0ne -rdAHLAcf#_ɺbid&qɍ~|5"s~(e?t)RU4 [FL1+v0ʦ{SIR{O\0ʷjLg3 h-^0g#X Ntxysyʒ-xĝyo"V4z1e,>' s,Y#u`߸$ zÀEk2?i8v<@~6wEg:*N~Kw|Ƞd+,\Rpk([9a 6% >yz;E RØƱv"s6!r e0"Kjѥݾ~#!Z1*ʰIΑŀjú NF؟]Mݗ@E|5e𦐮QOOkYRdAM3e/]?C[h) ]=j ,3U h{ uN/VzϪ&ʘ7]; ^*[csVڜ[^#9=T)sU`\xU`w5{;g$> 1XRHCSFҒR`Hd϶T|oU*Җxπ|p}[z2Z^*ށOPbދjcxu}&| ـs`/ wE,KtH6JhZP#4ҴCqt t4;F+>Q/qjОW{(H6BFGSm_q Sg}w q) I0ϯ 'b7,cYgcgԧfe2GWY.Ei"[zظљv8~|,E`3̗`ޒ⬅[Ñvbo֌o>S鎧}P]sDo?kqiY|pF!gCx@>y:0' JC?#NǶjmSG>E 0!pS\ooDD#2FRӮtco44pQoeTzx]ƲM \[7Rۑz>,{fmx 9NtO榪Xc1.tfx͚MID4sΉgځgjUSnXYvcn|$L_*zpI)W|گύZdMjk nkuB)%=+zH;׭WsaɂB5 ܐAЬziߩEۻTl(q^K_:iTaz?2V==idr]as)Y~ām(UP=fwFP^Si>+udڬ9g^ftiGfvu,<fLթT1u I`nӏR0ge:A; ?D DFgaPω#=8%w ^:9eoZ)(]8T\qHl~ȥ]= UM$T1X&%r371Kx#"ͰsFTE"}㶊 6lT˫"p vfāνX~ٛ R+2>M;+S!epEy) 9+CFcn袢`c9TH\y!(-19xdC4ו p3Օnh5*3] >zFA2ʹByk3}6Mq6m'hsDއ>ˉ!GoqB6ATdC;։S}9zMŽC*vAla7-yN(-U+6WDu{gG0gg]^-tpzn9;a]PHdр6px!=Y؈n[i*G 1Ƭ8-'|IiSR-IlzlfCNEgj6eb[ŕ t]4sˑ *lgtvbDBJz2Zlie#7|v/ìm t;w^*z[-ѬæQ%RFkZ8M7ʥ6Wؽѵ$+-%EJ廠~PSNh'9Sq4P7,ub^gd -H-7*Rdi^~=Їz@[c<7Dap&= FÑ=ec?]zAb;7VaũKrLQO{I-V&M-]?;D/)Y5!C0Ϫ_E3IyZ/ Dg4U9ы.BIW jĸmY/SCg WgȾnh`FLs8?kB;dAm3qto@9 a0Y.%34mY'T.RHi_Se;cD85  ͑rɉ&^QOnX؏2"w },J^"23>7~UÛNw;맜gnm):zߐilooXkp*8OEwg YQJXO8Ul0Bq>1Dertd?d[ͤx[+ Wݕ`{x1`vκe+ wݭ r"8]f5~84?V ǂvn[_DuFl!EfItuizqXʁ^EjBb7FcH>fuNrn6&nx߽=8C5D+,iCГz'`. jYf@9t.gι1$b +4r^l<?j9"uo1S#&$h ( ! G b!CU2΀nN"H`(^J XT,SV'j6}7,3+XЄ܄FfУ3r2vfw|$P*WS%gaS "e<ꮲR\52(,u}ʼn9Q`({H|dia4M &׏*BklK= jZ-/7AgK=컔gCnE{%-N)ȫ1|FEhڋS0 `x)2lRUun 4>KJK2@{hR<Y.Kw҉w%UA,]XCȁ`tZE+lo{ xgL'!lW l#K8${?)tr w#.w 5rtz|do/N@I7#Ŀ;/x(ގ&C{ui?ZvP\?]}9gp{f06T۽L&f1Ia hE}?zFvW|"Z˪U)V{/o*f06$SvE #ؔЁ!~'o_ hMRrhc"-yhc{v1U$rU*TV#wLp+|o7^Avh5Rn JQT{j { c& Eɢ4DKoIkjNOz|>Bbe ƹ[` s%rg;:3n1XbV4=@M \a*"t,~ ;婔ˊ#k8jwӴ;Z.9hxnP zJ8WXPf V&uo 7I(Q>3!m%z)aNr(+}W  M:_xU V:u #%̊XΏ)IM>=&M` A8r ,RSVbT3k5gJ  X`Omu,:(O<H%Ix+Dz>C=/u!\W5O^&iX3<?lC-ͨ(Kq)!Ds|g>yZ=< A)yC/}]$Ej 9))B({ #4xz ?H_D mɌ^ a-͙`XcIbT1Ya7U'XPft擦SmF¯#I񳘒֗tKF\zunxl҇giv 9 >Pgr+AW31 ֧sN='A ?(Fn_8MO˕H3iH惾 >0}I,*v}id2W~%;:5,%6f\Tgȝ0q^M"47~|ßۍF7*iXQcE(L^)vv\ fJuC`V euǤ`,Vu cHuALEq_8SQadA1j I<wr>5&f?Dҝҡ&f goCk,FEݝ["Gg^:ځ^@5Av WtL&]V ]~ q|75'5*B;/gpu٫(:Eۣase& {z鸰e(pMZbc<-{qP/ A7ca`D˘};g[+HٗsFh8*];=e~f#RAh^4Ec։++=[ݢUG03%;M'ʣt@Ҳ9,1MY*vZ: : ,E{_Fb0XPJ˿4b~D3MY&rK<Ӻx$2o5I7j< B> ~FLi|ūe*wf.KJWѩ2~lޱ|qM\~ xpCk|@IaMIۉ6\ccNgE*ˀ(}~zƖx,mu T=)ވxXswmW Oa\GƑ Nl8D]>ȿNd<5Y׻+U;!Y4u\GAZxIEnvۈCXڂD@wM|(13qJ B+BSGY"u!<6kf`vPB \qG%}"bTEUiɹ;70Y~ F>KOmöhpzj6\r][IX#!vDndJǛ^WL'f˾magrCO;E>e~Bg[Lϙ!,9@ܝאH(w\Yt0d,Lo ԴJQNmCwB<4-]{^xr>3Xp"Qs1VN5:jˑ,6̥[]ICW<4MO3=)&on+\!4%)-OeW*.֡kNȢQTbnΚ9'>UHyAkY^)m<5g0+2EWNٸZ1Mp#UFjkQL rO#1pg LP)h=c6A =qz^Kk:JG7e>G}l9BE.Юab\[ HMUl#D˫m#|( f%+v_^SZ_JTii2:Ӎ>Ft3YY_cbMtUF|"Or-㐎۵%Σ |-A$%,y6?X*쀋z?Zʈx4x쉵;TvQ2}6|lf9 L5HBQ$rWkg e+,$<=NK:mɫX;tC5"zp֞eFYg,y1Oy\`o(mDwOp_GAhpO_A K^'z$6~q# 7i^ݓXt p\=8r8},s 㼇 ޚQgǑlo|s8XgAw]m0y=s蝧z/?gU[PI;,>A\`Qh9(bhyq)YX VؚM jxVE'I -Ya["sHjǓ)ņ {&K9]HNP躵@<;!aHz,r~ۍv{r#\ۯ6 =lE.vvq6ԣ#P,G0ɼw ~a`$"]{wfY_Q2zTOA 3 O!Of#US)o)8L{nA`7m%^QI+ YU-P~9m!4$tȈ XB`K14_s71s~rRûi@ت=X4A73/+N~xj6 %o`CA=ؙf۷&N5.wQ[ӜL I?*geDypqaTd_ڂ4uzp JuMYg(UҹKMisSpzV<|d}J^h-bPJL/F 6聯pp`q$ߖK!CխUls})XB:A]G(^]~A Ig|qAP[7cF/b*Pѧ,# c-jTD(k}9ѵ;0?̦U{7S*Vx E6+UYLկ)@?<dS >[˔Q{Ra"OhqU7GaMN=saCXҸ3MiE4x ՜1^Fb8n@BTq^= -Ѭ]QxJ9_ڭʟޡ++HTTM$EArN}y7/$-Z][nx%YGK1,Njwư[1($!Y~ݟJ"H0XPSQZE.w=4Y؆ 8Rv6 B3IӔ g]L/1tP9Q2I3Uz-Ok1,˃N ᨘYU.GT3b 8Ia$q_, 5KA)'b¹Φh fOor7;ss^twTd4Y>ZH]5F|CfDu,k C G'Ǔt'k#yW.; 59,R|1z%Xz{)iHTk8N6&nU RaxjOP_\-(-KtQjj+!aaNȡ 7SŔH׺(T .+.rG<A.K Fosk0#$Y˄~7Q*4Oywq᷐DtUs(YeϮo3dw-So3w%mqr,3(w+ ^YN㤃iC"ES2m#n#xڪn$wW \]_\fm-;u2EKV$VyfV[.+mJ$%5 rR^iÛMKnkI/N>88HP 6*ex~ɺOFh "DSR|p㺈c=k}鈟[DW?C\W/c}oG!B;''h]G13&TDǭi [(8E4WT\P0<LMbQ (:T\jSy郮,>Fw ׄm-CVȵ!?X2P?{5D(jSGLu\YOٳHk ig_Ncrĝ$$ʲ`rJoqMy=0!E#1&t;IM1\[nxyt\_F=x`D*ӯ_nDX IYŴy@tL};3r1{Qr 6[J"yI%vʯJpo)`\$0ا͝K8 1 <#1 Cϥo!1GA"}wG2dCOfy vDa/q~Ж%D(6:[/\*ذm Yn@0 ?68n=*l%ԇܩ%OAoڒ~y7k37(!lɌݸSZ .a^,!_!VQa`r,APߍr |ba6:z{zx<+0Ģq 8lYGFsJG0'ʠi [Ŏ=!¶/$7]!cM<jy?d~MpNh=oT8%T Fv ͨuBl~[X!CiQŠmFK^=m%2V+&'M&JE$+Dx1_f'u03lF?q1sZZM2Y`$  3:T8&npl_ ǐ/&|ȠSNU>(A2A-XL0$@DԾ)"&c-;'|{xq>X*#e"G #d)++"tf~I.l["qW땝jkLHB6Knf]Aq ľZt^Md#6꜀"p.d. mn1 .7* s_Z.!۹hx"ܡhpݥ?c.SŇFc&c/Dp{E6(P3EdcwWio sY=vg'OYmnNA>(fjq>jY"27A|'y/ubt5͸E[>ȇtژ#YNI1+uܜ6F뀽 x19u 2JB~rkCFPpwJx,Դ,9v`c*y2dpo;]N='E>mYZhO Ys< RQG=~@r \B%H q#벓Jqes S_m]$e`∏A<I\![V7"TiX6nK;c!\Fm>)@ƲJOlS4QGӥ 1v~vD/=# ERűidG)UټW3:0+nN; uW܅ b8kA@pdwredz$!!e=pL|&WDgPo6i9~6̸ jNEj*#x6`Pzs>;KϙfzКU̱ SofXΡܠ7W0'Q] -mVsu8AfUͪ%Ӆlj6AA!+4e{3Ij +Դ",칾IRalU:XeoB+쩂u۬o"̏n`nN>LvLÖIV[q@ɢ/S_֖T0U%#ء!$*ɟ)ط~x;0:ܥ ұoeAcZzI?IP8s3lYӉR.bS6B`L,[R'fo .~99[IqłN;CUƮǼ{bk&Ag+y8 ;" q3OwlCIJ@ZH PnZɿsëo=NpP0\AIP {&̷ir#v2aig5j틽(`>0\שtx`|Ymm /n< R alwiNe#f=Tz{`gef m+ʝFTRԩhAmt4;gU&QHaHb}v'ic*p4%H0!3tߵ0T듡oLNz:Q}v#0WT]V}j v:h Zha [ jNIW$nsACuX& IgG9~I3Lb/nnk=>܍(#1o8\+L=)M5ifE3z;˖i>1&Cӣo"`PeA$¸M:Aۭchjͅ$Va/Glgvrf,i0MP󽐃n#n5&nB:rP_\ Rb6L(PyT_2Ws0SVİ2Om IjH&B06e$n`ܣ5 @5lw:J4<7i2ڳ/7sFJޑ8 M[G+ô_ .2ݑ| _ QVoȦ^Od ű(uR?`,Zӻ٘r*z>YiE5ToQ`rR"פŴzLE*cs׎?!1ZgZrugn_)qp@9a-c-۞ Y6xWo?KZ^C+̐󐠷Vj$!:@. PS/MYr$R'qa&E}nP;p9女KKR)<z~wM灺PUv:+p\ť#=J5듫{Q]Po'{?T:yRf80e%b!l[/CeF̡b?5E?I%rk`-;\OD23sd֑.fC#^*gTiB˸lEg/0U*,~{=3/sIoe$I(reiv5ע4u@E~iACw8q*{ CK,wFqѩy=ZΫ8a!q%%>l@I"2߁ӊ#OGgGOm cЕpSaHasH#vj`_KU:ssi(Ck=WNp^$I%,&\vX6ilj7.$Ip+av0+zE=b# b<0T;&*Ng6?8x(/vEu@[Gv:muQߋ}exgx ̧y5ޝheC{xdɣ#KCt ^ w=oZY%p LAcT몔L|?˵c . h** 8{],E&H1t/0XaZ/kiS|JZ|Ԃ^1]Pij΁'A&@?sϒvг79&W!6| 0uO]_>,ɿ aK|H@ɡ'lhiV8~zN#÷`M`Iμ}딽 8xBV$ L)Do==q@<_e2eAD3_FC>2!4P~ Gf:vAh0r#HR^|<[IW;Mݯ.~ $`h^b"D`~!=;1_!Tf"J֤6A]9؏g$8V7iXp ?NhWz>F#q( d.E#G]R==(Wp^_ A8Hl)7׺2&5V7>S\Zd\Z z(6js;Ҷ{&Ex4F5@!k DžcM/vq>fg$~MfK2q'&:퐥 ԐމIk2;a!ΰshK`9 Q`u`xav &;K{F+6*;;(B '=&dدûBXlkL슭 *9:.$&+3F %$'m˳aR҄V J THjS1h\\ *D`w;/ee2Ϸe*-8"fSI mi=^2l_V6d=&!שW0>jUӕ+/TfPaZ[p񵜗 2:-IŹ8xY2=rW#g E]RE.L]DEA^J%lMa1*:Np"ٮ1 A# 'тŌgN WE{[ꒅ\{nJʭ|!z[9c.P W[Q ]IdaQuD! `eZAP=Vh[ ߃} J[u1K=0A# CěoPx YoaWK_e鮚EČ%1Y$<գ0o0=a_=J:!_b}AH lv˻?QX:Ax|mil󽺺c`6MPDrm9p%,?:yOZee3a7})ޢ4/0ihA=`wڍiGEzSAi47(b81}ZϘN8 B$' fH^xGR67gX|덨XKI)A 2~6uy`C&j:IMKY<8cTeA U ;=4%W֣p;ik>Cߠ-R}!r:aVbE+QG)o4G%qI8LR%c"d XlQBՑIيơwJbe~ qž=R`j2,-hBܗWH alܬVY99{ 3=Ś"ˉQF\̙(8ܻ_`>ɫ Nj ԹfN >}Ʃ7Xљե"ڰ.vZ_ZbhTtX?= Yʦb(RHjERu#>sntC;W5qգ%MdFvi4xe1H).١=9jϩ=΁R6W!hǼN!o=:u_L9U~nS?h6 R#_'jfNTTN6@)1ۚ`ƪTw ݽ1*1 R5,Ħ-zeIX ^Ĭ*䧄QJh@]RX>!Q ʭUa>in>!Ewtr26u )="LVXQ]">Wh[kXU>p"hmV"S 5_G\#o_}f7#Ŷ{Ͽ 3( UFWԮ},-3Mi]cT!4l*,LJha` >Gby0{WKT:Azq_)qpM Дe~as !b|$z=G܀$[۶4"&7f[:>la5SQ,z+!akTۅQ ?/%H>㐔b(2lz#XkŁP"`ݩe,<1ԘיNC埒A%ۉ`2# MJޚo6Xa|Hv˱s| |֎ܵ^bFM6kM+B#Sj OŶBߙ 2$D޾K'03[P`'?-I jn:]\%l:=szD.68cU(ƈ0{LkkQwa| ? HakrMGǣG8DTgCqzqoO/APm@JJ@|)-@ˆI勻WCޓu'-ė_eWZ_F!A$|^0^@|_Z@YGs]Gm[aKO:Qhq 礕6{GT hB:n}UbULCG\-0[ @%e)%b}Uͽ5$^S>kwrjjrw[MAnA, RC ̛a:l/"=UG_Y q.m<8J%(f<)H6u%9] nͥI'ٛ9iN _t˧2:p_SnH$v<}ި5.rST)<^&#HA?5Q) C.pU)D+OuPe ~# ߸Ze.  +8Ooew 5:o?bZb.R,PXIں*2ATm7D BOXK=5H'D.h.@Wn!m[5Z᳐ͪ`0Z.n4>Y7_K *Z#Uʹj R25X\hׇpKAB<.uג.Nլ@Hݝ|wrŐu'L {T62)x/2?q=]4|*{|ݲ[t*Q.<?AVUeFGD-fj]ds0?lj(`+c$"Gu팉4B}#jgcVVožl~މ5~+@p1U= -4В-;hyiu{ '(ONX66r.aކ{ @#x>PϳKG*čCV*r澈N8|Fv]Tgڜrѹf%:"'Bw -@;itZȣh>`tfݬȜh6'>g 5B{CP!<}-;3 ם9I\6`T,qx"‡j6^yB{>h~TmEj͍x=/ԠBq&(|C߁Abԡy# >nv@P!6kCzDF?n 뽽w!;À#0NeI92s3'Ri/걷,E0\T?GW0TZ?pDՍќl? NAz=Sqۇ/AkZ.E?6JS(\rU3j!v״,^z QO;B-m@;Z`u4!"x܌Ѫ| #v#W * ?yJZ݅i>:9)ϵ=jQJ fSSUrwv(uP9#YUs%q-?EM@M:Zt5PEƼTo]hbGlBV_MFnn,s[I[CpoPGY6Bˑŏj* !@dv:׊x{|@z%_I!jLE5z}4摚d%DA%q\ Mp?4[C-b A~tK,J@M; b'o:CM~s;sxžOg d'v`ºvZ ML[`7/jt6r8:~bV͏G~cW_c<^OyTd-֨Gq,;fBUC-Y86-ÇKƥ&&G%Nt[C1VJv"l!M^3wƺ C<^CΣ?~QE=nH%jW\&UKJ<ǫ5Ht+ˁc9]=',͌4zycSL1\XqN5ḧ́)ljTc읷Gqɑ}4h9(^F%F~3V`ُh^%%۾ugȑ1kv$y&@5:-3`\]nK=MxQwE}cICoK'"?+9,kvPSMRO^n#?Iݛlq6#ޤ .2WdɡzTB 2PiAY_vr \3 X]-'j5:vV_׵MQ2ă&Z Cϼ)^iv,H*D(it_-I)B/![k1s7o84)}3v0['qvtDs[U[q}#TH:6z ׾N]d6&M7f= 7_ դb˟=/Ol $|BJF˥#cAb+ݏ4wiBQCZ'UTHC6cX?PlG(l6 Y˗A|y#l筩BĞpBo$?,*_qdܯf~'~a;ΩCĄorD5`C}-Ʊ [ZjH.\o/ZX( ~E1?{ l54BW8_/ Ջ=zRLrƭ#9qw0x>iĚ%㺞sʚzhO"mi 5pϟ "{PpJ8SÄ.v0Lp-Sgx5LLtH0^stFc\T tU8ϙk,&R A7YX!6/0=@7.A~ȣ_:#m:!)N:2LJkيP'EnGKN@N`уhgU7/~ROQ {[B!wYpj/X m$cT8c>J ~T0-ʖXռg5^%IuFLLlL}$3u\Ca"3Wd0\$r`Z>*x& Tmq"Ox(wq~\Ƴm)(Z\/qR ,7>A q_>2_F!;}G 3Xɉ9(6+?~c?fx$s^|~g8 Am9ow ևb ?uEsrXwYxBПpq&u5 o,]3\\53?sآFG\TP]D}9Āifd1*ͮC.@@-6_A AWc@nCOG` PcE+]EGʽ{Ҿ뷒.9+3oL8V5l\6{ ^:#ZZ)4K XJ i, Pf~c7B_rԵ>Mk*ϫt^V$l…@)E9/jv h:aV=[ \|dt uZMʿ'$*Qn:CaK6mn`.&ArFKD+;qPK&\8X{yj3NY BA}+iP*tdv0U&ō%h$k0D0;]֜PEF"'V$1p @?`}@&$$\8ID%Պ1e/*|F R/wbl`ygF^JHo$?d }!KY@-fꆁGpTݷdX+Wn!45O)DLsiqis>}͡,^NTL(LMn1ۥMo |H(jkFh[Ld7!Tا@w9 |prޢe#2Z&xLo"("aW<^մp_uPY#qE AZ3[zJC]kҊ[~q(\(s7ڦ$3ߘS8d s44iQ1+$pPϭ"믑= @w&J%:v*\&4 j% u1_ ?QS4ўy4žҀ0w>kG(>ع 8Ҳ<$[|_i=t-˂ݳq+OPn{_ulDĬ C{C0B9Ei"'!x[i$1qt^`p9bjfI519Y4ohg{EV qÒJ<!*% LjRgKhUnc!(9(Fhƛtt靏d okj2:>FN`jTH Ih?uV'bu<_;h.5DZ:(n̲T =g߷a=4j$|]BNG|;ݿP(ㆉtN޸7<ĮƔ鼝۫~Ø(>/R +t25JYƛ4d/Cd!LVQtIlf<`ӉU'} B UKZ}LaCa%c>Q@V6THM0W lvC)67 |8S@E ӁIZ@Nwa"=~鵿zP͎[R}fq Ll.M3 ~sYϑHѥZnRdCLZĸ[Hq?GJzH/*N &巗7%u?h-4v(tYC-Ւ0?eJըǒ,@V@]{9ye}{U< tizt7vϘhF X=58*Qy+9hDZ(zZ/^Φ8!00@i\~W$ڈ`7d]/e.zGE[{J@+Si4QMF,kYk5ϴ׸9eſHTEg 6uOSKu]3۔|MxU!Z{EneU5ٴl:ŦYo+ ]=Ɵ(֍emK =i >^&%(j equ-shz9_1uk!Вco'79|@s-l(ϫH}R<1+ %7?ЬűBOF}nf (ByױB wZIWjXWiaR(Ro/lqk/qI#Ycd!Km+Hk,Y4`#\|6lt}[vs-6 G̔oÖā-'ۦLʽ;_I 1f4ߌw) 7J{lЀd b-R>aǰM0K{ ًRLͪAkP&umC({V=JXvw:<9 3R- QCm#eڏY&HaHРdG,PY,+W_(ԍh˩:)**s̤X }4Y+$M"D:f`BaH7L{g6[ I"]56ZF7 h +Nq{_JjQ4% u=‹=:%)ȶِ8;tI.;޾*"] 0k9i,V}W$jV8շ *_:T$I6[ z -^3Ȱym$ Hp>}q@6/۲gQ;63dum.*ڂDm(nR0vDUqɀf[M'6Gu;9d3 }cs#&hg%UBϺaI KmEYCFzU*ڐ"m@iJ{B/W1g$haG2rS!waCxڼGymP:qgyz-ŸԂkSΧcf%5J4W>~OW IpLTclNSTP*(7H#Ub#,PWE;hUi( ƾRdf.oLwU $ÿ+;0E&؎>vϭ3/>?\U|R=HĊt}_௽2/HHZ0 knOuOՏVfB'W.khz7o ,svU6N~ EY7!CPI>ka3ߙ/LV a$7&zȗ|ž?;?w}d\jm%F!.{0h\S Ɔ/yʭ4~/;ђÜxrփrEv݋9[{@/ݘmzv7l>@ٜ4h]\OCk ;:t .IGTw k .ȼlMGRmM$2SәwvE͠ r F[ n;:԰ wH,dD|ސQsoAJc Hf[Ϻ#?Ad IEb)؀&Q-j ՛_!~W=:v%o_ ]9|d'rawHFL - &>4//wn ɶ unh "55(ڽt6C}>nкyڤn=L:*<X6Ef=vo*~Lԩѯ hwztdy]6R <,{"Sd@'cuM-@kSةz`Gw\WC*={;NȨcuv~F|z `ry,u/}G ܟ=L>iLx;,*K4@q"#Fi]T@E[QʑZP'b| ȥ}{v!QHR{s/PՐAsB.Wql~IE7$,ԧ d^ o~:-b%5uoz V=,;h/,RH^B,X⯍WumP+! ˵z2bxÝHxEX!P,#ͼJC_Dup Acߑf>NE 6&5ik/;̈#T9uxqXa@9-BY_:ۗC@gB/zؽS⮀bJ4 jh;81?>L*B_K/Â?P2 ^KϚ{\'S(#p7o֫c}tB3]ţt&~Y)<#u_)kP]u?B][$.l&ž`yIv lln]=S i=IQ]W0bOtA?C3!<&O?ؒɫʟ9ѝ6KD&i,sm7.2wR΅ ŝ|:=?>j*)c)̴;9 -e% (O_~Q:Ř( ڎ<<_;&wg1sB~|LVi]܏q^hy^̒T.Vkth5RRLXUφAwINQM rٍ;4UdR\z$D(WF{?fo)]eJw է_ȝ\t482Z͘¿]-+{Ҍ&'na+E)Y+GYy%[}&B,cKv?T1ߞ9d)MbSIh.QqAL$ʜ=y2}ZJ?%XTw{0`5 1ٷ cG1qyDG En2l`l^ \-Y?ZRjTwK/D TEyx1# ~^!<^x"#R={(T/y;G=*Z@H~۹00)\C' afaFy 8ތKvgoww_R%^ϋ^IvBqRlnjwiک;P~5{C_]i%m (+,mR=nwELL+ щ&ZJ:3jRlD=Mͷc,IWkMqrsc n}M0-Wn hNFӖ,(_nuqBUSeCVg Y1|i2ǚ;$WJo]SƇ)Xg2dͫt1Z<=e`%\'p7"a4F} lNN NCl RוҒz}$?k:H>09(Q=?x' -dֺRRE$]Y Jhz :H^Da7c$VzQ/7E8Wxv,$@|p޶+3ֶ4c\xCVf!h|n(݂K OB峉i6` }r^ிOR!|;9Y#xfDCOE+M[-aX[$ QaQi G~ m=b-i 8|(5$CcB®lj82D5#8dۘq_H} 'PW<9;_}KL fd?Hb=M &[-:mVjiV OM:n]u;_J-]ƄzdBDdgDJ"m6Y.._),VX6rR*%MVJ04*7N_h&n.)U%"5 ݳ 8^%+8[lvL'C'WIhky' M_oi95J:nEsJC~F6?.+fd8r ",{!OfѺ `٧IUpN*bKIהٴ= !T+R{s:cPNVN;;[tk뛱>\-sq;;J``7Z?-Ę)- p.O$ Cp ߇ڧϮ7䌚t=3ލNg`ÿ e%uNSokZ1o` .i`R3=& ?+D *]5G\3p%K_5ch]gk-]҂oTVkҊ_5io5DޝhV?.82a-KZriz1AƆ NtG HSF/4 {GdL=onp-*Z~ZrBc.eϝO% P v:}' Mӎr(d+@pj8z$^l,"nCt1m6_;M=μIH2@@6q>ZεW(j#T= zJ\'\I].CL* ú fp1;QL}+` nj(4'! Km\ݓ&3i]f̛ kTZĂcPcK |Z$ 4[&/"__`0Fw \Uȋ.Esw[9N@{7jTl*!!O^'(Zé%" (Y6}x Zi7&JY-&̌gFY4:pNz:E؉WYkk8dW|GwOA&}[Xw~ӔFPL1`7*WC;elӆNy]E萤KgG$Eѫ :#:7\βYCf:[1JF58cnH8MϷȂ vVLwN_NF/?rf$s"4}{YF&S~\8F_4Я$V2SX =d"z +e:uF2 r]Fd_DҹK+PS2"$ )L{6&fSB0pGY5wo򸐂vn+(rp8bOSTuZM*տw6Ek%6|_T΅ᇙz#`fJXP)7ٕ3TZbyRȯ! zlFb҃fˏn<^ VUo 9=Y< Y|UaU}XXigٕgJ"P><_G04[FaPſ xWmeԻ`"$ތq:,4Žpk~Bt{c/[1#KhiI=Bd 8;*d7 up 5K>}^R:^b_X)BG k=­̘=Eyt1ԡμ){\z3ܜ诌X18e2t f,@x< 0JNl23 H?g@Dy睊/LcU зNTa@fj hI-_Qckl4R2% 'ZQ) va#c]l6NM|8r Wy7 "8 Sj^3OWPn]s#XH"@ I: m|'5Tyl>TWohw{N${-7`ʠk])4\#hRz4ps?iB b)"JqF?9˼]A2Bح%,%nBp>_V#MŸWt0@U}ZKKe|`J*6"'@|MJ bئ*+<c]C=\Hp= 䉵yy/꫹suFh̓5k>?; Q,"{h|GIgrcݠiO"𕝚 #$6ʀ@"ѐ{WG8>%<; hu\Det?M1gCi7-S=y"i_i"iYK S-tb}K:]o /+6f)p?ng69(E%<1gx̧')H%nyZF n޾5Яs;}p_wjJ]qK60ݙXm{ &NK FE &bqdH|[n*鹾bZhEvv+5u_Fb*zb-Nnן{ U#@rc=YaƆ1877L[bo~ -FGUqesy'pKT~^9).ME|_c#qT.A;3bo[6+7%Ȇ*%| ug,8\۳WjXu# -\c`R}zs!n|lԅ +@(#Knp0ߩ)Eºc?"܎E`Io'4-CO6f?9Q>՝P) zK 21-[Г]બ4GV߁K*5[%AF,|X>t<\lo,Aߕaj>,;A ʇzy+ݿPG=rA kUCMN*d]vau9eZgc`/RnЅ SXE?hT"ށx YxaieڢqJ(D/S;7$h#\\>%i#0 DBs7T Z^ZrMa:}`jFBm]v\Abv6d%\{*V֚r2c' Uevp-+N0y6m BXU17,~C,,[ITF~]g᠜2'Ͻ 6,JF Re!o$FVp_(>+e''5 w2HEj1 $a&oo~HOe*x;_b>ok̊;U':Z] J=-VIPHD6' ;oƨ?`2I|{.NѦm4.iYΦʔ#OA*X?"wkXV3~ڳyEŖGN\(jRORK7<2O.=8{=GYc 3AWKɊuT:3XN{,}}}ړ} #PU<] ƘX*nҤE=4sO-B_{.iH~4t} ڶ/^bz:d׼1op2-)~ oD᛻ ꙶ_BA3gvо6<}rjžJDBfՅ jx[$˒``DV]àT? H_[ 9J0L]0TؐmFߍ`@_ݼm& ka=b̐_:WZZָ\pN~5z'TG6FS_0Vkx:JwH*Wj@jddfMԷjfiXcҜ]XRx?XS[$rMzzmZpm/C\nTM ؆9CCRoo}75v2{ mgrPGZ!%$ eUJ/ LW7<5pEwDqoX+!@6&nzZ+5ԡ̎{ebt\=}"-ha4 _D/ե4IbGU) IGF\Cf J|*}AYm{͠( *h_eF .|7G_!'vJ(/nѷ%)tW䪴xCNy\>groA-,mx#ZPADC&.Y彸Y=e5}KD\+(b_e}[a6!.ٯo dk``CrGpJ\s%\fZ0!H)B0P( ZWMtuAЊ/udW#NZ"<ͪvv}Àd-:jb]A6Ƈo&Y&&vSA':@{%}A}l!PўDuϫ !tjʣjb@VL)!q,sC4)mO:z~.iǐ6Aaf(&9СE\"c,dt/Aɫu#ML$Os)H6ڧp[ sbHc9KG[7}>'S"`c_Nܙ0VMͶEUm+TiSRƉԧWX m6W]!FtLniԿ>l`E@ {/^h0^Dv-2l,H4\ 5t4f)|J&u׊& B,&sH[;3S{ >s %>d?s)bGg POÞLM"l[u_Aǜcm/$w|ĩ%*=0$JWڀU|ev 9+p.o5vCqD* 6H?+ D*sÏn,˷9{tYnς?\G% F L<ۉhZV%_ -u|3mOlox 5) x~u=ZM`د1{aT!ou6Y )8z qb?f,3|6/RL9Ny 6p.}: VzQQs%oP=#"f Q2 JF1NK#Y}Ak%: f(v2d.z-9sx.r}5b3r/Vܙڒ 91GFT{[Ì6_hH]?oYfˆ hW7 $]?KfkҨsvqr *#sZ7E{ZO.c4?#Z:E 㗫[(mxk|w; ëa?8G}ef)eq( [F-W.`*o&KPeGXctiW~oo'IB0<1p~ mgDlW~# ݵB5Ũ{W}]hz U;dƀj;cD4]wTM31yO-BY+M\Y̹kͪh3|Zov 2sWY9pUB!XہׁbI o]KE;GKbU)%%5IT6ix 8ud} ybQUhW|~c$oEJcH ^@Qi`w_nx=.r<98IPňvc<oP^\7n:΍mpAM;*11Cy X7-'dYH~T~Va|,erSJ)4m]f^OXJ_JkY% y)_)'Im$sֆPG/h P=<-{`)8| =LqG=.7gOx -$(a*Dڊf)͡Ë|`4O)L-)zw"EG [sL$mi4V\JYU`,G`jYA` 03G,z v$/8\EI3Ko{*5:yeԋܝ^n@1d̪XΚ*\-ZGB!x1̝V9;_5|aeS q,K ?)ljm$ӹw㹱?h z[DԂwmfkЯhr`g\Yߋ-mHn b]2",s+I.ގPZ Pg/yW,auk3.3(GoR뽐 oKc?Db=vCԎMRԏq}יBsXl_*sȦa'Wro1MYO_c.n2 Q\0a#^g"!8k:yD-kmMH=$K8CC+LU,Lƪ3J ޟ|Gmq;Fԩ}ݻCom |SȜ-_7oψ6<'%h !7z2鿵V^}:ďr 89h -?_"ؓae.V_d?ˆ3 D4;[&Hflb;eR!>-IF6 OL bW|7sB0PoCҴ3 g G}A6\$L{aBy"nX͵&m\z`RMǢl^PQgk6Zi\xEih[W[?\%'okbBEU\tP$]s ^ & 9xܝ"fZgH\ic~H*!{5VHWⰛfUɒ pxᨹBV?tuP]:Zm͗tC3j![(fԂ??P:p8k3q8و}@I IALGf?z#TPt>+Ig ц+6l/gN[vyW_NZwMg<"$@vD$tć4vW|Kxs$HKє5ݶ,R훙C#Ȏ3ykk(5@%=9,"G#u$;cO|ŗ4k砭h&3 ;YcJb^2Ho/jе`MϪf,ݵjUaftZ>#Wlv4n6BK5|>JFO6BLJۑICX9YۣWߢ-ԂZ8N_**!Ǡ3+QG_8zi5Z*J!c3U_TC cC fCy="d|}3ͲrYdֻ9}gJd$Z^N1ut>"iI:1`ϡds"ԕ͟ ߑVzɦ17F ,< V-{||g\+ش9ST =4nꄣeyos0m I& c%v°DF/7"(SQ Ec7S?/="N\5>^ @;din\G7e,h؁@^ك2R*1(vTTT iJ(IȀ%^]Hd{{h&" xGφQw*: Mq9 m.uCޚFUeq&259z@; 6`D6Q⛋+Ehf}Vt<#, ,# jK>֕U̻SŮ???mox4EQzJo{v'pسIPZ?ܙlYtBQ .Y1JDI"m*\]04[2˚t-x|2c3r{)=eyqΩ-8'Jg,N. %*W@ b~P5ȪbٜeŃ2~TC>bt`07tCM*bw|լ_;9alv`%l0B9I0ܼ2((\ 2`:R~`}Pka*5~5Q~w>SGeX(=Tb>\=/S Z<c 7Ha9W,w}NݛMWns8t,|\2 $#O{O ֏DcGI?\ά̋8r[XSYA$tʸ^2^F%aPO4/z-Zֺ=ؠ/،S4o [;_. VBX6(|c5f?!|BvX`cI_I4=>嘴s^^f̑at"dՑb; Yդhh+" XϡWҽ}'V") 3Mˮm-!9>^3ı#Mlsy!Ԧi69̸D)h3UC'*wg Etrt ʁ۔~XOb*贷xZ`${aɬ%dLKz@PlOŹ5/%rڸN<˕T13Gmwb$9Xn%\Ht j-lfg3 rL7]y Y ͉=Ra*~ԉ"ytE/R~Z35 ^a ^6`ZhF ?TZ~mTc5?H7d ~XIiLb "x_y$scgB){+TJ\6VK3 Pxfi418*6=e Aت)D n$^nw7Ilڰ. S6'I }|["v ^.@M&ͩiYIW44{k6d6iYi]NJʶma7I$+~E\461({0ȓS˫nY}|CߧpSa5T`6Oz|` b:j IPL2t9q\Љ |~9^Ȉ:dwe鍙~H.,O+o^"i9]\=UU袐3wLkƚy!])WLF]%>ΐ(8d1hfa}GZt<}q}VԲ-CK: $ٚ&$[d(見cpȱdDg<٣3*9;$,ϫX{ӥ # "'϶5+ѺomGkZp`rJм1JZU*&3BV) }ZMY҅ka\DC3уMPמ@T͐ΝGF 'n)́ u`zVun޿H][. _*: 5sRr(MYN#|;2Da.f5,J UAf}\ҔM)(FZ~$ebf%սg2xqHv`J1<6nqG=B9^'D"Je[R:„!?r]Q_N5ԩ#_5,; ڳ*<"Rw )>D{}W}X]ΪٗT=q{Ukl2p.t}fsYt`lHW]"ͯM2hx>^stxiK)!}i* N[[ˆS=Tq)Y}`a_݋$bG5{Uݢ Z?8634lК=FFEL߻W|P2oV{ގg /-7orBMIl9,F?;eEZOiYIO l.N=ʰQivҿ\iBVcyBi,uTf@Fwt216|?R W-b _aT/L mYhX/jmPv琖TO46ԙQcˊ,[ϼА{ʓf?}@P("OFmqC^UX޳V߶KBYEvp:sT2Ƈ_Se>dy% ~sW'67~[m&+l莡T3-8q"Rn&L>F4MnRQxܢ$G8dDnې;cx4<[Iۇ~؂2 a#3I` UvYDM]a#\؝:GSh̴> rZۢM*Jp"|ZKRx`;[fInp- NPSolWCLڨ$iy{*wP '+fRBT]iLa0Pmx1 w;4e^9Cwu+6&tޑH.6{bbK<f$$J_! E{RYF|Pq W)ّoX;vW}/z~b/-lWPW?N- \1Q<PJ LLRTY'ά؉DrBYi_^攡IlKhʼn]gtYA \kpEzq. 2SڮknDl> D'BK{â.ְs d2W^)b\nͳ`Rt:,_ ^*Ӗ~ml~mzͼ}\+ֶل%֮h'۳Q:[ɿZ^zS7KoSMڰ=%8kw_ ;h8uWs=6pĖfTZ '@νOh2Yxs?J.7P4fҽsQo_7Ȃ(tڈ &#٧:Hdq\3 jhij%yɅ/H m5kZ7]x f;D/O :K@zO7jEqC5ի*'n Q[OLRU7&A}r>:ZB[MqN@j2Ǽ<5ClBf0?ތ8TPrxDwP Av6iѠg@=J`81oT PT֋! Š 'EvCyE"dc|u58t5-?TEbPsġxJ9PsQ#EA%fo]j %~f˲4P a7_#rNVcj+*L'U]D?+6ӎ:$gԳYM|''((nHmk|F5uqUA?MnUlf81)pw4RHAv &m[/$W`,нw yUz̀r%HZH\$)X=}&?r b&?7WQ\?DCFϤ6GA0##q}zJLă8$EO+^xebWkr-m«*kL_8-r:y Óo;9#Q.SrCkcLc~Q^ H}XyGe>&d"!`o|g6LW^;"k*N~ß/R_:A=ueΙmiN0.loL-;}ע#8a ;& Fh"g<}1>B8 ^T$ZI7U⫀*cڃkȒ`J_p8 uAӁdgu%B3J؊+qz4Ѷ35&LeJK {hM*~`;=8sxdD|U6ݬi`б&q9Ʃ`k؈C S?A =+f [Y($ t5hy%l{$f6`?dY޿WT#z,e% fM'vv )6=#˅?%UmӢ~}"fo9zdgΓ{~|fFǡANsg`g0yee `u~V0}g+"hFTQ.m؃:Jk=S Ĥ]bd#ihyyUnG:t/hestC$Ŋʊl/jXF_ݲZsCSM|A*loY4/i'U.)'sL Hq0>P4B/&֊R,>qgFj#NbBȇL$(g-}3])ޚį2ܖAya5.%c\&?~{Eckt7SWb-dJ }n&oXO;/oXC^@qm2 DH+.B#-B0׷Aɽ 8p:7ZΦrUᰉ@Vd[k(8:xrIs^S }+]K ጙN[w C)֫9MG7 [k6 Gu  9bHm#@G!!{ϡo8ɸ-We|6hN[e/]Qe҆:X eY7m2q#}A~XbT3J '{7p@}EsdD+X"bg: .s'xy9syo5xӀqw)IJGWx\qUE=3|A.=gB CEkKGGC3yi&x'6AL &OvY&]xNHkC;#/'zN)kOބLh{Yxbf~ܭ",SdaTlxz oM*Yqs*h2pvGm Q+_< <УqVc7&ֽUk[@R_Chn 8._\=l;ɍ$y t@3pFӶYq <$B&EGks>]6X qREƞV)ss5zr=Q)ۭ:3ÁFqpOv"/+K8K*`G#CUn:fP,{Tj!A#)DI%k1?W7!m+G6)$SdcR`vg*IP-ʗfvBQw<4DvP-\nu뜨%JuAQaCAbוu[dI/c64$/SFЋש+|譗txzrگjmyO5 <=;a0Uٮ]"ۿ_@!>=tHV%nrp'[cƝTW8`{:qi>_7)|H[Q"~V\ m Xwpr&x PFz?q,OU0GL"++r#!FH<N'=vT!2/ڝur_f ;cnOs@ -D U7d\C@iXb5s&!(BͶr.VRK*56o~cB۞#j  н¸{t*X{Egp|`6NB@}8nFCaG`߽-"V+/0"g,>ce|CqRQJUOF#NuĦpU* (>.|D숰.,y9б E/|0E1OOml}O{6+ Z>: l шM,h4{1|JӸXϥ' *W 'fmb_~h!^ Y&2tz$DgjO UzBȕB`nRf;xtCwM=lael5ʌw)xIhhlneҩՍ8u?zWVS*8=O{+bfayf5acUöP qNC;0?Y?6Vox.{{YuR ̓U{-ILbqMc^ ĢOE&u-90pȳ1\JH+:]SKuy,R-5d޵u 8Jp!);5pOg] ms{EO4Aa'gjs 5&^#oat7OTyȦQYFK'r1Ngr @e_ӵyC0{%!OcIsOl5 G=LF 9BHpn8ޫD*ItLfzhd;_kvpлǷg_Ȝm&pM&[(Zތ*16)?ON.{,bBWcֳYY;bG{㣍wYivhL{B?!@:/Dn~zU@^ʫ٨ V"3H\@i8,lv: fFQQ!T_eQeJewFM&nѥnhh4L^< 'S?:)n%Ü>OqFF{o ß*#%sȝ8N 0 eQ<daاrDC@ו..1h"{ljBSʒ#0 ڒ6Z?jq=" 0p$%Tmy4F;'1,ѐ?#*mNhWSK H݀N1M{Z0)QX&= Syp`縤a7>@ҧ[FlRpk:0NR=z+.%[s4sy5 ѽ3 j0k+$g\nK{S?ۘH)a3{䀶.WJޓJ9weO0ueU&Wtk~d8qHgϳouL~}d~CL-IݭV&m%ܘkt]l$ Zjb1mDy8P0c<˥$CBX4y?v=l 0M{FOiJG5?%fz leO &0(u E(]v-3fc V-E^.;J?ճ+.J{1ܲf;*5//$)(xk~~QجMہ>U_+!  U+nNKqt7I@7 2-[Shi8=_5S?EzG?Oʹ߮qFv { |nyf3fґh?kfğˬ(m]8E2 Kӄ%.AUn&w +m'[d#kڹ#p0vd|8L3=W+mtWL 8/j/`$1yIȏMlxW-rb2}gYc@-Kk7j* 6IHPv}I{ݭF27i\I eeiQ,vEh{n)F`|H-gCS{_*+ǻӭ 0zT -_$0<@\۲a tzyO36Eo`x 2{5-ۓ~k<9uJvhqX6Aֻ'Gs 컆kDbohX>i&U%& rJIfT՘L//Jeh`4yaހIwnj4{fſDB"/iɹ D@Wm. jg^l䥝]B?sݗXWOo8..-;İv#aZG>܃zQ=竤0yqz㈢ֹZXn߹DyŴ~u}֫k@F(v'IfWgAmNb~-Af]'8+Y_jt:gwͲWHCΡ:OOg(Ȏ͈1q4r<.+FFҜn1uP`+ TW*4PQ*$I;b@|8'88(3;ڟ6Ym{<|FB{^{әH^cDNV =]w;0$^!L2&AW⓷O}[s6i[ e=w '/R>1D$q{pFs{"/_ E+8!C r7VW &JI!|~rv|>\W0[%~42x-y?{=o~Xw"SKe `&]Eb~C( Ѣu "cRU f멨$U烏; jPwݯ`sZ ,ffNawK}JC%DULj C~Rs:‰FU9~ C.歬ɛe~'ft 0#fdSSMZ7Q:|#E~h 70u+᭶$ !Y4$dfeB '4FqHdkr0T\^ ,9'ŝ!\ܰRKS$T@Jk꾌7MŜhGh9~ &-&i@AVLVw 6$TR 1Zc |'bi>'@K#F[dZ+1P6ggZ6z,(@ȫ=/CLyc?gi3ΐ:\M h385pdl/o&/Fgu:()@0Fzᕝ⦷^h t`ȼ߬ #VM{$Pg"-jB, eNͣd>mH r|igObwC'Pk&XV0HUN!X6_(ڳr[c5x:ȅak MCB2 N)D8#GhQCנ&JnzL`AHh o9Ւ\:"$rc % {d KmB+nL3ݬfS2s rmlf $G %7RkMkVg jfdqs\1N9yzwv u|\,G71ʋѧL3<7{c|+:$Zސ*%rȢO/;LwVUzQv #gFnvp_ ;(?tc26,\cF;t9g21[8S  Im"(I n^~{ *!v-wda˝Ke2&zН#"±5+H".-4z /83Ng_'_ y8sN!&%HTEZK_f`7ѯzBCG&yՓ+18p[4mSPZ ޟs@Ģy7"u1s3ӋZ $EBfITWUvw(iqat~UDKgt4|X Hr{gTlx׼].@D-ȟ5M~u'ʬD0ngz@~NySP9ȦH+OOTӱnX^Rđ=هZ."n#'$9 f6 lwFChN3X8.u3 v C2eCȬ͟}`@BKNui]x Ֆl.'tW#^YHqOcA[ͯjZ$M|MB4AX0$.À qJ`@6=,g H&%ҖnuZVFf./0y(z|ѫk]&wɅ˿pŎ.ᶆ&!}aPP_&}MR jJbL@Pg0Ql4W)Fд>}$~# KЧ(m ++bG]\cO>GiuuhSDOvvϊr9h }& |wH CYG,Qf^cb'*C琸/39=Yg6Dxio4 *:-"UVEV'kt r MM4PD709(Q?5 K,K='YSwR`VyԈgf+H$ˮexIӐq wL~ A'mq6"tꬵo X[(iM 1$D0j~s2ܹ\ȶ\pi3-. i&[XNQspL |hTTadkDI_xe!Z4ToFm q̉foLRz|< +)Ge:[D˖>٩ 'W3Ř 5x%qyR}2`SZ"hbEb; t:@ p<+zrPt#\frѫRƭ@:Z<Wn]N~{9\Ö(XWuO-B*"sQ태:Hߖp 1T!ۡQZj,t6t; Yjʴ7v$ymgK KK {d؛@fF Ml\14m"'̮;il"}t!ͮoF(~3d=5n5ci?Lf!pa&:#!e5Wy[,\ttْ-=K$?`dM' )»lpnFi-O /9Iu_^ f4%IEM zʓuʆ)6ѻ]-iƫ@O3y ~ؤa~MIJWL*r 6 ?g 9E951Ȱ$f 7"~D?.D4=e8Xv V17_Sy[b:ݥG,)\FD?"<|#sYaZl}W-7:NOg tcԂ2/P@$H-ߔhK^CCKY7,8uJqhIOrYOFL tN/mRIC$Z-r҂0;r}*6yK]%MoyAӞG7 ѰyS_Oej93.ZbDHDUxBaKÛ94h5޴V:jk,=T.#Eϧx( pP[C(i_>fo쇸fH}}WL9>?c{Iz]騮xS-j:G i3'<{ fY 1i(.{3KI2#7oT7AwWV妜 eͤ~J}y[GϭWB[ +d%rd+?Ƹ}zF T%ꭦRd>l,>XF1|h&o4ƏyUG D.B[wo (BAVcĐ(1!rq"n&Rdđ!߱ "J.&~W)p;aKsAը\#{0QL:tqh̦ؐ8uC;P11FVK68N^{"QǼJ%A+ݣ# ת5~e*`y i.LOuVxG%oCV ןWf+РvIo>PP zUe'Ӄ"NocVe$p;s`]r@86@ۮYοeX4}v_9 \B5,HmgK97)Qot};l&@EһkОʁRi8GHDX?{.?((1 dPwzaԪJDA3|\Sa)|]v=EMŖHE7 Csque^@lʽwfF`jS 4pӳƎ|6۷N%BfxC|4p5d IC@u~{EݵL ovJ!|& cE1).JIW'@YKcxJbғ]a2%UW3\7H,l͡MԺTh[5pv,#6-$H[Ί%4RVQ~0S?R`^R r8]喾JY%_-P59}bĆtW st\\IUy+""۩KQcM–ArE/&)vr2=r pc; v8t#StΪ*Bfxە,]gҺ 7Y)=t䳟#ZY-Cl$BʶH>2(LwGHqMӀo +h9nCjhSǬ{0}ʕowskL |GtҎȩvi Z0ѼgywB2gO_Zd@#HaQh޿dznS@čv8d-w 0>$"GcOF_2$EUYOKdǰ Lb*"rr&@!`i=(bWA6p$xohvzʡVb~wh +?~]pF80[ͯ{,!“lVFIpY2gL370$neܽqDY 閿^أ"1o5 J)(6V3m$H`ŎX Գ =8M{tYk0KP.mcYf}#LS'ӷ oRJ#^dKNR(q$W{`A~ Tzd>] 1xJCvVd(n->!rT"l:P?8_86nEvD;y6ֻÇe:~|O.ǣs+{{e-or1lO.ڪ$\T~3F ?e6(2zJF.wn*|τ~q(>[m >E2\30>Pnd1f,𸸑1m' vwo-_}5㤓OGi~0>,g(/[|@ gƷ>֡>K^}[R+MP /jg2$0{D 7Q<ӾL\Y}dwۏت!d" 6A fsYz*Wǀ L 0vw3֧d%DKjciTB!C׾nF|2}gn E ;u)܃U.kȳz3M95nOǢml]IohbcD+{I\{w䘪n+`Eo:$O%!$l^ [(|%l+3vm_Mkj|)|!QNGq'D/$X1r}rMRBLaC2TV_O/e(~փN2)(PQ8+a6e,ϝ(X`&!7$wGߖJeFJڌ );A?AJ0e&|mqWr2ϳu9(ԑ쬅;Gp=K۫F/Ŵ?+ &M=J뢸hNsYXWGrL#f% U-3ॅSxt/ϯίRtj%=,HA'dM4*󶣞9Ԩvq_tOUIZyIPvizCڽ,T Dw-j&T6ߛ;"nc l#ёcp)n} A8LK]N,fó5y{.\|ʠy6=oܩ Pich 4egHV _oR,:ь;H2β) |6N) Vw}78\;ÜPőtH0cip,[8\H{b/do:;2MB ,8&V.\V B3*YaD!B{/xf>HS&S c j]s|WQhb W}Pd˄?3t%ΛX)3"ܑVÅ\ҲR̜|3q8ߌO=ʯ~Q uvi%߀rc¤/ϱұ^HqT~U5.$ ~.(us?5CQf?2`IzJB`%tǎGqogX?Ed=vH%Cj$:t*$)pA0ķ:]@DfLj-w- |hѡŨ5t?U%d 7kyj)L]1yz;nKN`"$߻FSfvⱯ Za60vH (v `AHJ13XkxWlM(+CG$ Oy<瞥&< пWWCycU&=In=w xZ>WEEr4|r.fXlI̚x7x8;DFHsފ@`*(ZM(_{%&HG[bz~G&?tPlKߣ,% xnD}X6fӋ :QCf-V$]r=|J>Ew?֥WkN+|ڕ6LM]5OtOͼy-ɝdӭZϒ3_OF HգsQ!jJERAԇrϜGu]_CI=a ȴ?.` GHN #ۺ&Dt6 @ brNNBJ_|5n'vH3pv7ӭc\8(\2[:Qa/= 輵&^*"W]\b ^_I')|(μ(d=@kZ^]FSαB,-7 +P_h3Ͼj|L*Sy.ߘ@,n 0btbgSʸXs/fS -UюdSu]Œ6\Gu_~vm? ;'cD> rI)PfQR+_x d^$`KYA=;E#8|k,'x 9@atޠl~E,{A5)7&~F"ΔA`;C%E7ʴ4x:ƚB./a?˝l='{hW¹XSk;$팂2hɟR])@Ҽd7tқ&R?k2ă!ESprc!tm?{;u| 4  9g롿1ϝ5|^&6xy,@I^u1ILH}2*=09Y逃Ơ3Vk*^XwY3nƐBfk$h䀞 ޴? h,]D!fnfjٌt\RFU(c?DothzLr8(>Lsx+ϫF`w*ƕLr^.u`򢆢!44Q^97j9<)ۏqVO^EJZ(`b˫a7CKv8DY*9 o-Ģ jxVJm1ב,}2Ra^.SPB]{Mswr%ȚZؗiw'/jknY\ 4W{"'|f{Qຸ4K\!{ܙXG `x2DXHo5L7J\^6,% m T(Ts='O+QyiJ{Nݳnc΀1G ~xV+ե rG-P\XB wy%5rżi1IUB7 Q!K$E}~Rff  pgN"r-FLOWUVNN*tݎW/v1J~9Xt)Ӯ"e0U~ƹ&'fSv6}i(xץ8靕7EB(-r}8gPreOc./gV*j {0vyw{L2AzRZ7EIR:Cw|щVgc*פ M99*vC)j1$GWM P r8/zaO0NK 0W":)Mt ';ҥ?7-Csry WEb`hdG<砉x#hWx%1*nkAXup9AFqa:=.Crs:͘0/`u@0` ?}~;@E݁#[f|#,BᱷVeA |`A{xYU.YU&`Rz`Vˤץؼ*Iv_.5|`D 4Vf4.f`%-y1k},%VKvELV BJpwYv@m3|Bi 4| .`7Mc*@Agu:4c2=J@ zGU1<ƕWe2`dBO+85&pw_Zs%|9F38fv.#^!~zkYcGy 4#L&N|E5rwX&ץɳm56Yco IKepgQw~ߠa,LYE}^Ysc%" 5כņTWn΁>}$ mOqm2j?$;'A1|Ȋe[EF@;a c\`۵HΗmbyH1m^fLT}ߑaj95\@ʅ7wsL*|)V%X~N8!Yf$̦?3NoR}Q4{%WN[I;ORL`ESxp7 H)>vuj $(9($֬pnQyڊ e8-} VQP!'{x$Y+lb Ðrs2leU>I&D:P,f0?kmkV=W8wwS(wvYPuWIjUMG:+jo=OL P qT52[7XrMrThfd;`NKw=A#PH;oU`Dk]c#6K->#u|?sulG%[AD0ZB[{nIןv>8H@5hW JT.ӒA^P0zv6bÏu\K+Cq~0^%wpSӀpή0SpH`#f`Y҇:02fjGsLِ/R^D7AО:8(Zb_esAY:|DM=*Ư/i:E#iK~!y (%&>r PkTi@ `UeMi( _p AX[5 \J|QY=cS$E/5\d;dQ4١5 = %YшV ԱՓ7>##weh%q 4E=Vo* /!-'ޥm $gd)U!B,ul'k{bhICA {I&&*OBYQmDnC^g'MZgdaJw{R1Cc*I(.)Q~Lv/15]* NR[ϱ2ߥ= Eqж|otvNN닰^gЇHkG=Ys`'=2)V#u5 e:K`S$Y*8/iU\RXp~=rӲ~ {D+t>CVQhl }QҠ7TFB,Q"p ^sܯ,$29?Sfy:rc؟:O9<<B*}ɡoUQ "}3 m4VHI Ft^+:MLqܩEɬ߻Q8PMF#R)PBDF=VZ #CeOl P j{]mx^94*]ykZ<]0`(>3Qo1_=3C j@'"T]mhX(iٖNuعm1uNh{̹sO`=?LqUo Ή'a$>' Z'wr^`Ӣ*'@29Z<ܕEA!Rݫ &DΏrpJXxJn?)iqP @Pٻ25\M8Uʢ]qK"&fު Nh&k=$s H%>Jik uOߔBR ;{NDx.j%K gezM /xQâ9Em %0}+`Nӱm3m6pfvOo:}.kh;TB)Co9*c+F'}JODb/}VGXl $Dr9員ٖznnՍ3%KC^\=$GWS} / >UM3I/ )ت$7{Z]w11ەIM<0 *wKnd+%(Y_d[ P/R/N&I`:S/6*-? L/\-8;''9:-.cqë%ıRtEt&&wDRƒY$kZm ^`#E}\`=QRUrf5=1`av}W0n]|$)~HqA#aGCbb^+??/8ך*IKU}*7k V8KZicY}ѐ6 F]bJ}{"Ȫk qcpbw7O]04n h:j^sRnMKH*p숥n*[cgaDO ~-X Gt;4e5\ccafO+4*^+ Yfգ+Ez[^WFwJ+cHlbw~a"[W5.E[@7A #[u<١q-F(tvX<>u;_W .!NҺfOuFt(=@vC090/wI:0wrVe(^D[Ӛ<PYEGNMP~|5 a8 aF% +!rㄎ}*ʸVU@l[07d,l,% :G~u/cVl3\1i+&`Ј˸Ƙ6Qq0AXjNiaO @?qc$xG9..W~] ̹O^UG^"| fT:lKQҒ sHM[e`g1}5b:7Wgz+ld&7h(e{RY)mQXYMqrmlz)p[H',)^)d_ 2-ZcG) 3ĸGlpn~5/[ &91`G59;4Ǖ=dͨteasD3CMˍ^ʢڜfz~Bv(.0U-?tbvm2F4(a|S-vh@̒#WsNO) f2?%(Am{._tfJb9SFO}i(&}e) ɀ;`:K V7RzȌp3^e_\埼d t *"挍LfoహFƴ^i\i|Xݮrl886Cn|5jx'' AZEJ6vŠ"\E7WJon>ūچ3ì~AQn}k2vKGy~K^7րZv;m=$dhF  !iϤ=gP_x[@i 㟊dۊ˳0ꠈӘ;uCE64ڃg|U\O:(Ud&<_kiSR_+T-@8é>ɋQ=.f[<=2:sbr@uG.(ЃN~ܹMTks4 %y Ɏ)blmo! (E gF<%H8k<.B1ENu.bΆ@9Htc86X.rlhƋ+()˥pk3ʾUD1o=r+}ڙ*EcxƉU9PW{3P(gcdzdYh0(gd_ ;u&"ZYvޛ5e+9xOeG~u&V#^Uc,5UʨA͟c]JB=+uq hl\a9?̎:ʬ9˚/;Pv=KU')ex!u`r)Xh\ս6qRe&Bl-SXͧv Ϣ[ŖR6Ĭ iDl(vȆsX ׽;5_}PUZ{qGڶ%h*{Nw(Ce ZP+=Ϸy\9=Vɳ,{z. v4hnj~cH2yZ-*oC[f}ThZW9WdUVi=ReiPI *E]^:ysnOK[A}7c.--*!AXgtj؁J6#6fC}]xrgY^5#Wϟ6os?"ַS'HX47 u׼):EÍwq}@M^2 "\ )<, 7d@TFWīqӜ}J`Qʔ\ǔK}4 ij1Ԓ>"XZ v:VaUDڵdw(bq7x {fxu.Xax0KcWZFcX+lxӈCV5"bxv/p_O,S}.[jj}qpOg%&{gۢ`by+-#@!|"*|5ѩ_P>0Bey[f&e&XO ?AS41gQ(9<ӸicR">F {a!x[ּ/oR`G+vޘHVS#.>ŚUT(ffo@4`5f3' Bt/_CJ_S5KGkxגa96ZX2h]Zwʠ V"ȟ\dj 20~+#^TAm43@gǗAXQ[PQ߆'6%<~Qi`c@˃}:.B# WuES$3 | ~*!N/b+*埆JQר?M {۽u ~y|-PEKv!xF,X2?F6Kk`ȗddb%,C7;V>a/];+в]/,{aVcd&[fu55[)!-R~7c,kfuANȉLX̏0\[3#KW:mNw(,QEttC[H;,.HRۼJ˽Թn;vA+ ;#}3Nzb՗yKa:Na=Ce{TeMyOM~fbFn)X82X>IyyXVXiRh΍jݤSniJσ4D Y?vxdD/*VN$x,$|^+^Y {c[LC[_>-guSy12ԓr+x3{i=kʤyQ` ;hAehuAUVfwPzi..°}Q!5ǖAB~QC1lfUУ*v/G )s L("]5Zy6LJJ}ЩpulprtX_t4Lq0"nfKL)G&ScYX->>FtG}kߌ}IJ OG-3v5H=?Q7'Xb5oB72?28f}|Tds>mZjlAIMJw!Dg/nEOXЗ׳ev\FJ'8!2Bmj q8J B504gX89gS) ̀z0ֿBy2gH[G@X3:ЩIףfBS<ޯ hr{6um"DpMuh?i06E`+%s#~7DߡeA|Lo0QO>na,.>pJ-Րh19^R5k>W}ٕNmʄ:bONawfFڪxiLO[Eik8C8ԂJsΥ;{\F ƈHL =&Q$ }5fBk.KzEP)8;)c+nKs=:*㭥dic-|~7v9ƎVZ翬^3o"/:%8Qnd<.9#9bvD\>Hտz4쉯FWY4|gPcԞa†{;=ᵴDW[nIΜ iq|"OkE%=Qի =7/?%p[-0XloV0Rv31c!b<`,@t\CcpxlA+﵊̀539#@m/,,\_ w[?N*B\(62:m{|xK9Iy>Uf|o HmIfH(2xO;' xd[vr:AEΖiAIu*ܛFc"H;$[3 fȵ*eqqdĈIm׽&R󚟐5ZacuBQ& Ȯ[0(ذ{lwǞPCmxݣiҞ=BOӱNKk2cA `@94U:Z?;ŴZa.|_hig=0X1hmg8Pj(vd K6؜Ad@3|W6DviV*,xf-Tci1gl]Kw?8;T9pZCʰuھf& D{ՕfWc/h*lI11ΫN&%T9 TKKpI|ݑ>s1w]cZ_S`Z72m ig>`ZS U 35L1$VS5.)TiY(y2?94im.3P"C/DE74u%)F?M>q_l`C>z ;6Zr#%V y/K~oxlb CxX\^M*Յ2^V=Q#roԬ p6;̩3vUiE'%Ai …%H]`^%dSW`|GH WzYZ Rf@ 0-&FSAHq`үRoZ2Ģ .]x܃1UE &U|?F kU/d\F+B|6g`NZnː ;rLWN>Bؘ&IH 慟]Eψ8mjHvVtLeU1֠^MF~e܀^o՜\g5WuY5蚾#j oBt9Bc;/ 6X&??FSێw[o{ƿ$ XYgtWwQfnoY S(sr}qڟUNEڣ ɺݫp7KMwcV9ވSKIiu)YE,RX4ܛʾ, \oVM;l4'f ys#~Ҁ(bxgi_\ l~O\Z:b B[v9ߜɪquqV~#7f-0Sfd2 vٞ*tL nI9`f_=F֮&-Qb$v3vrRC` F{F,㑝e#n*&~^ayQB1*ҭEPE~-t~˝PXȖO<㊷, ^ۢ8(@@MyLn*>Pȩ7bk-Q S5v_J(b缜C'tiGLXSj6MCߴ{/:"|,1@PTGFULZ7#WqX}}>m,zB4~0}i{!8Pc܌tУb9 S#JĂ.2%lKhuY we]E2wxR0t?Эb FQvMYBje`J ϷڽfHD@-JG$;9׃yDuF)xH #:fz 7G^rPn:z\Y8_*s]8NKTWQJȅʙWCߙ0^6UȺU({ w73u sh$ xw V##x,.]>:Ftu@EhuUVXV]/,mwG/N3lAe\~V~I߼ qȀ+bW{ژqϬYM[8O̥1oOoJ-d9mu1x8ɵԬ~0ʑesA`9W+S B2{! G/҉ 貾ʉ9Buz0T@ J̷.vm__0{#ʵ 2\٢zȞto[O,292еZq^c֫ܙQuS@ѻ雔(뤥E`٩}vHd mShiSREJYa =L3N -'2| B 6kb.gԻVd~|wfi66NQQ]Ke~b༂ RfjԘQZS^JDb#rARS_hıF W7$! GzH٤ݚc߯x|N92oprQ7MlK}d($ɸɰU+um sÁvTܺ}30IS =b" zh" ;7 m3Qqh%N$ m$BHpG)TRQH8C󾷠T=jvm ,\=ԻY)L̠1t 4?/!îKFAh?fTZ|iXc2PYmULFT(݌}(~ؾwa{/[ YB\}OgR#Eqzq "ľn д>?G‡ _oݕ, A0+a*꣄L7 zk3ZETڱP~ڣاpoKGz\5~ͧ !R?aC?g;lQ9J_Ew?ܯ'D\ת)ۙ =BBᥕm4_(8\qs};봋n6ʋ6Š94>|u3I"Taݝt7|5]g6jf56WK(@XEaq$ Ҏ~KASU&;Ga˃dHG,/% P'*$4q|{jBQRU}!r#wLP 0Ex[yZ<qb3&\B#,#ljY?)($s⌋fnݝb ~_rgb+# PN8kWcΡA;Dj\*C旵?l(!]|1p2 F\9{dUP))m:T˔vz9R$15r%fRCմ %{іc}6oQm$I:F;^IyQ=҇)6=VKRf:!s9}k9BT/o7/󥜌)Ag՜CD,YX\$f?s? ")2mI-Q[G^ɍ6ʷwUdTg-枳^ 'RȦќ?JCSI_Tqe>Y{az?#{ eQĩH2 4 ɤ.~Sb~lSSA܁ZQ` {,ϛ{h81k}A cLK%঍7`ZɁ_ozh1l-Gm[@ |g3ﬦA$L<36 _9G$J[vB&N@E-Jr8@)r $ϼI.AȢ 8'RQ}<@e'`oK/Ep=O}0M8L#]Ԝ_6姫wd}ɿM>*r\U-%tI(?_p?Ӥ.׷z*q(>J‘6yTCat< =\TvqǍm z<FPwơUVI,qhw̒JL~%*Bo f ]`˄- L‘ϗWQ w jJȗb?(C!%y"KBqx r,IP?WEg("t)M+Jkg9@ ) c_Յ:]&/i]a9>|z2ҹ/{Z3VtZ}v ,'V `ճeb=)ґ ' 0GnwP1̚ڝL 'up w&M5z,Q{RULVyo-7OӺ _AeZ~*EfمC9 ̓x_˜HlbH /Wm9ZL+~\oe!xvTf;ԓЫ mÎ^X3fﯔώٖW:nRL6GvHDwgӁw}*=jےIC7]]}2;~As)WтӤʦi6@{D-Q@kU#ʻI@ڮo_'V F6sɒd_; rC|Ed< {IV8sNfS7'kDe(x&z"(up@IOA{?Eif4P8p&TI$#\;we}blWp綐Ei Ma1.Rf\P'hS]UkDg)@'ZD!Jn1Q:©AZ9E3s^Ʋ̴)Hܿ,$f%LeʔBv3D`NѺ|qUq\aн@s'@[;uQ Ws]瞚8+?Xc ^5qL! _sTd9i$c?]ĹڃWv2 c/4e io,NL,4 Tm$(pC WBM(g뾴d8r <[CxLΕ'WQq3[Z\pҽL{&F۷ҷv;Gm[.!f#*1|! ޳vǶGXH?jw4ҭ6?; u~)xHqئ*i#a[H&6m }ۡ~0r4q:v2sZE`)?rJE3e!:GE|¦A*.5aA0o8|._6ȁ19$":ԝdboA 6Oѥ"iXOtvYF eunK.7=EfNh?Wh=a2-1jd^3<>TSԫ Ƅ69,ρE eۅ jX`u1,/0`2/d9'[Pf%ei9r{VUyŦ@Ck]⥃ ~C3[!θZ8USUEkoqE$9/۝OL _C<ұ(k4Ped̞&L;o vw~!NLpJ f#K)iH0#}_?6{UR"OEJ#wiRv援suFM dNR-p|@EyttM jY!~HH$[I/. ; wM`9MG U]S5,32R8H[@"A?O |MHwĒĘR1w%( 7$#V; F6aLɘ=! K ,أ=7G R3Tg(nztJ@CLn1rǪO^,>ڞ-W7zx=6<3dQAip=F;d 9A?m=aD"1fF;[Ed+З S0 78TEǎ᯦b5C:6+[K#zQP-9zqXlşv[VtBo=i+FKHkūpvy/=6{pp4|iTV; 4 I 2ώ |i6 殆Z`q꠩;%IXzn2[rC dsr,T6zzz{rf=0<#w||7N5е}ƵoS3V`Q!OgF!J Vu5y&_j ,}8> }%ӑ9!9+a&7?mB<;H.` n>潵%waEvfY1@G˚&TiϘh7% (˫a|Ϙ^m1z):|m?oJM}{VP ]uvlF|v4rb,z`}- ANϯ:)|B|טX'n[φ@`,V@sڼ%?A:ļb=]IEȫK6m-TZn.wvtD J@6ʏ%IǞE;yOLX}2`A4DLKJH=ý2F, DlY zRЬ{#U"c?8C<5R]Hl3B 2fhn,"p#!1ƴW(u CFU h31TNaC+4 gpUBJsr~~I3@C_gtٱ(^uͦbR4+,}X\tҦKi*C4M<;h}Hn0zp?)-$Rvd9Iw3yO|$Vh D%hf⭸ϟWD5(ޞ]o)SW{s,>^j]̷]Y8|raf~\2)6N!@$%NcwmP ,sMZP,I =42*E%4tRMeۣ`qW6vxmд89v2 zQL*93idT1ObVgRc?kle#zWο?Im"4lK: wl##g=jo{x\VV2%v <7=c)Pjiw]\]Ent0]EmS}gn4w1?G X|bɕ#io>ٌhJzkF-C8QMZxh)q(~aD^*TitJU jq3ygGc' u?gɶm<9x6<IJbj), [96᭢ItcKNBY$ى\x+wBgCx`qዜuhGn؀n|ԷFIuiXh/Qܤ<(/J f2)6;K>y[| : 5dA/R`рFb`##~ bʜhoNDe۝-Њj4p hXH[۳Qr]4ýcT(&܂ˆ@!㓰0"ox$ƅ B 7p=ֽ '} qrΉ+rQa㱁nG1B41*%2x;_߰h{1Š6–y@G0Š2gɵB6$딚0wycyLіdx /jE?} %JODaX"]pˏŠs&6di' `x ULbngP6U g>&9-D%{ږ{'^\& 5i50;Az)jg,-sˆ'BKY1zf .Ā'JWccڏ?:^JE3g&绛X2+*x+,G p`vjo3:&7ܶ K x|۝gshjNgI!Enn&}~$[MHʹq*aj֡N jxKBikJV ?`QŪp0JYEгzEy0'TS4ksзxF*hPgzh#u'vƋ/ ;e~=ⳟ eMaogx Sq<ᴍvʉa¼;y϶ZB}?K̯\ Ƒ4;憣5Mj ^ ܫ,:TPUV./# LE)kBTg25; 6p,?D75F`ԇT׿5CK@-k Fq?tQBF6O_\ܔ Tk ΪϲC>voFZ(wU1, ?T R%v14:VVƫ+0%WY>/02@t"~}[ .iW)[0bg4xG[ܼu0l>˂FWfl~cp Vچ_ 7\LHH.NkE65gnIti%DPV&ow,8 DjOM7|@̛0'?#Xүmc 3% 1sT``n KnZ5IlvT2uBKWnƴb7Tpc3B&@UBsG1}Qx$4Z{:fy[]>ֈVFyIG=T 8S@XHZy`h7y3!ZJ RHR[ͨiTlM"M~rp9g AFKXQXƶt+2J̩B6eti"5#@Ld, #z[ S(bxyuwb=Yy W{J M4آ@k-v-ܸK;Bz>SCzgKҞNl1BW*F \?LF?k\xJ K^[ ہtħݩy X™Vgj`Vߴd9K1ky04Tȓ4_$r0d`SyJz[ %Bk8\t='S# ѕZ8gslJdOvgrQk1BF^>,_ӮI:S!zNx[׆\YNr9B}k&ʁ3V.\ p :@ok?d$mi*)q"IN<DۤiϺzod)7v2!`+guNv"h`XL?Ua|~DY xxyr t6r/eY>ve/Cuׁx$v@gu \BgnxKK5@0ceCCAoGdF,~87JO6zpKK2d:#:TBw7x&pYT=4,.~8 @IFPh&wvk'eMMd=8& }OτydsvTZuWp+j[8G hxnb;]_5'5'LZ_k/,GKxq+lE#)PLrQ3uDc'*ɤPYFG}Dv>in<)d]CJQeYYxI3uA8k+巊 r "nIjƒ4/?L" {N__*+JV2yt# ϊZ-cCuKVwX˩k<N;lg|J]wDᑮ0 H* KEeI]U~iG|u`g8%6ZTqc镐^}*'j_Eu2D39z"{wh}_ _EmEiQtY7Wwj>kG@]7 M NIgqY Ȑj $LYqA&LH`U0)reAnso.k>ԝRK3nXBR Tw2moDU !9'3)lt0jð &% T&C|}aH1(U\DǕ6Ӽײt8UM7cl 0׏S\d <O?IK;*_"-!(b'| g6}S*WFJOCBoytF.p[I6V$ngWȎ>aY?SȚxLwP0F m&i`  [Ega+4%WH&Wem~)vn.LRAF=ٶ9&MC8+onDysDFFG+^ŗ~9<)'A NwlNaF狶s{Yr u"t;]3qÙhQd4HWB;,)iNʭ@}/Tձ3JoJd 0g+%U_9)o :*87U?8?gU =bm{} OlJBjg j{Y* ]wiW9:p+ pN9Ѳ84bx8}O`mcPZ$]Y ch%yBT nAL]SG[z{.эP૸`s_:r3^߼=o& -P^&pbВ'$[!5zD {v2!קSFknq`kBź`C&/oÃ_y7G[V~䪌zB)I0ʫa$3sMjrA\f69վcfK`w]\.l:&r v1Qܭ`\I; !IT$$>w߅ZЛiWq>纍.up=QT3~f(Yri/ .$l`lu1WBRemV 6472r$w|(^9JLۗ93"-\'K_w.[ t#w%G_|B .= 5ӎ($qVf:=v TO,8:<8L u>-n  (o+Q0g[xd*<-U!0yZ_ΈS PȈ#'>cۜ*;ρ31L$ sFVl_rR;N9bIV4w)J>:vUF=(.>`ZW#G<"2tiVwbi =%!\ӌ6i@|t6܀Oik Tԥ(ҚLm2FJԶԭv6_mϤ~N2Bq'q qSX&(iLl\jD7[o^3/V`\ĭǩUA4۫4){7) aѢ1u/xd2)˳ A Lg[կAX_v?(;.,D!r+9C쏆,v=*M#!E2g]|睚潐ǝ+8kA@"t?.~nӛ|Y~X2 !0h\cKb ب s'Uoi#YO}ŗ$t+oM^('Wjtl]t5D,r`NDWP [-MflafxP2k@P+C~cwYVT1 h=S@g1e}eJWQ|]x).L]%ۉd <)-"Fa6U7B/uVW(g{U=Y@4tfixJoD-ZiٶLsDv4GOhCcȞCO2iСo۽O9p(7ϳOKD D<|tC+ץB1'z\ 6KNk -uI-‚eXKi{΂ruK!SD(2>/bz5ľ? w&!6vq1I,3C`XmX [lU<We\]I .Qc1m36qwf2Q%y*wd0|XR>(r x `1G&|ڳ 7Tj@aCAZnE@-} ݓpzc~>G\=_ӡ$.B5O:@f4.ڙAIRjb ]ߌɍ"N`YzͨpѬ(r [7UcW#{.xnR4TV>+@p>u7%ҴXDJL H' ͸K&Xs,Zk)OK9bR4^B8j9=4=QS+:}=HwE\Ta5Ř O~q ߂3t7'3q|)/p09ՇRu>7Jw8AV=T6ȼ ?Sb&f~nOyRuu.>q [U~ZNq?30Ȍ|RYw.:m0%n'9ECx'a{4 NT} }=NS n=Zw<}I1Z -f9j48N{ٸX}/VsG{Iί%M7*PBU7p"Vp.] j}.ʱ6q%-!ݽDB7}̬l2+a?ok>gQu7.߽sN+޹Rܜx}A*lmQIQ` f3N_˂1uvm:NVW]jb 1gw~#z:l _P  u: OCTʪ\>o V 對k3hݧ҃C_^[[/0:aB.׻6viB5sB^mܽ' ҉(hhAxRҷq5d&?8 ru۸C3VL my ?JLАcxG9y}  ] 0jv[b{Ui%Ŷ:t1![,:a֔:[ $Zqź;nxʩnmXpaJXVlݏi#$V̄98#2)W^u&}tP#.V0|K(u](9}Md\˷bX;~q) ߂4ޮBiw inyە0V;GfL؂Cnwpcr%Z!||mUI]9n bu:qrUI1-^ױ錡A"z$ᜦ+RjeM7hArXZUt.}WZ9wh3-?  T7})pɊdޏRVx~VyZTw z]o cV-bCO6/_wYeL tsZ< |֐!kQ^`qTϺw.@^&)ZӬNuH!H³%}oXަKRC缑B2Ai/>v@ȹpQ%.a}p-[Kc8z,QbJjZzᏪF,w(!0;<]:9Z[imig0UT%]Gtz's-9/5d GKF @`ͫ/\Xb`YzA+8Y3n+ꁮO7%R]ՔE^=]$Z֔X> .n 7P5j:-lR>ƕ0RcL?,2Fq& |ϴ[ Ԑ UI!q'p? uw m <{lKtTUJ=,@[2w/όgzI*0`ZGbܕX) i)atѦA[`\(6KҞ湵}vQS2df|[&o}PJD k]./Y^M\,!Ϣ&t "Qd!fV۫"plY6XgG4 0^\b6IsX ˊAGr=X*.T;d[q~Y+.G>f`ȶf L-K/_7-2)m6X:)f)u)l;{re&MAm'F'XqijW˶yXI >7 ھK,Se%5SBlBŽMU_4}->6V 鯤GbѺFm?*Ɉ8$:vy CqOdԦzńЭ6+~|_!PZudÚЯ:G'yFI:UH=e/z..7 k]1O8sI68))9jhFO쎾!̀G]^M6 XګY+Fc8m ~"O >oNt 8&6{=<תnoVeFu`z:Q-4hC biZcW)9+vwFj>;ḵ/:yc ,d5Ӝ̬w$oZx̑3Sqgv{s'__ɶ)܊?zEAvM58euk $kAgua^ԴO.WBפ v.o8G<}$w^+KW #'Ƙn<ձM72X M m81EޅzX:0)(g{: Gn@ccmT-MER.(")|ȹY&.+Q|OQZ<cz;J'iͅ)o$Vo{Hk&lQ q9c}5Sx#q[/6g6 ,!= f{_E͝ghaD;Z- XU'0 Ϭ lg()y5 wʴt³B:fN·++u.(c(2~2WU2*-1>Su.ffйKTVxE+8\C|6]-: LFuZˇgFS.f7rufUl?32 ǩe',IpH qx*`  :z Y$ ِLRf*{ DYoA#K$%}݅;Q< pCgB %3ۏ:;%3Yx 4-6'T0tP ZgZ\^UyKK3'5l&j5B=I+36h5F{) /bK΂apQc΁Ei2rWо{xB(e:J+\lQ2^=$;-#`˙FV^Rk4W㊆1@f+Bd԰GڗSiwĵ]~3'3<^ o_)W0kRAםJa(0 ^,~aAWQEi\ bKv %vM8PQ@r#\;[Xƈ[h#UӞ+Q@;|*\1$*ƈ7b ؑpH?*>50t2m=Vh><DDFbIEUS>BCb !mb[yeow$ҀxRiW 3a oԨXaz_϶gbf"aENlDξYp&79o,ԏzSI@]ueX<5Ĉ.'l?9;U*uly!Mj#NJ&WΌ4p|e΁>J vq.Og Ĝ`:S-+Eɟ{~/ƲxO"bܾR/L|Bz.&${ x`NbFS-_G~}{* .jB>Ѱ:4zn2eSY2KLҦ"'C_EHXnB mdk m +Q BmR5_4ez8_$)erkk_)8jR [nlS34T(0Z0%OhG 3.aG[gX! 8Q7w #Fx_3}6Wؘ}t٥ eErTEPQ&6}v /W6V.YFojً]J&R?  bD#j)}.AblL t +Zv߁Ky~`*Vk S⻠~;܈#BK* Z_/딬ǰXȇ=Z! A-[jvڳ}]fe]iX 0sFH^=;u(F@{ _3r?WDj6OՅ쇑 o{Xl* FT`2wg7nYKzFB[AqsOg'ւZH] Ś&6ce{-zeٛ@zXؼ}OZ&v\;hUubJۈ I6͊~KZ!Cd d?]9PJ;i W z Wi=;r⏭I,CM i 6mlj:;1{oK+]v `Jj31-~BJCz },_MtA熶ҭՀ&.~\ث3)/Y" Lio-ԩ/Ձ3a|;y el=4#)zwb\Oc)1.i?K~!"h'Cޜ8:1m-[Y[6:+ iW'hB]дE Vf"=R1+D$G%*aM GR2.HzCzg8tpQ[h}\+B.qzt䶌qsN`.ut*o;;9x<I' -Y0 aSD ẙ Kv,*+xP}ml@9t2k^ō7G ʪ]Η/ν؜wr&&^tϱBдHar>}PsaK}˥F+3{uE>Ba7D'ŭ )h-mŸ0`, 9ԑjD:xSʦft}VhX|q K.VQ54NmS I,BVe%h'{5p3: (P.F44Yzs\7&Wp?T19Gv(]LݦUb))e Uv!Zc*n'Z"-"f\c/1$y+9㴻ﺑZuMwi#abam{EJ%0˃! $miM]3 fT.yCS*f%*>6&?c=JQ4 ߔu yګԺQi .h_BY_~0WCڶBS%1'j3B3۸By9˻zPȮN\jӮz[`nUq݄W Y1|LQjEB2p"MIYV<;Fc8n ϻQr3D]_1CBC_ϋl|¤5Y~5SzL~!fLSFAm$Y֖7R n=|V_ysS^g?=+8HXh2uON'BC!wANw:VSjAДJ^n,i +au'P@wt c)U5?ICmܟLM0j1*S_xV cѣ+.!PȐe$M؂SQʛuV\IN% 8j^)̚c^ܳm1xteé?i9Ljʿy"~-|0 W{GWae&&Zfmq=Few#;Qt ɹ,CU]w@wBnT%FY~x z&9X9n?D,2|3R Lvl<q]?$L hQbw #5NoEFý~BZ:H90uѧVpz Iဂ8:LiA7SQfbgC .!0Z򡛫{|W:B2y^"vDG_TZV|,Ѵ$ kK76d+ n<ҫ2 Vwpƥ ߄zY:( r˷IL&?7xEx)YFQlvcx.3<bĭql(*:?diתx~_->v 14#ެՈ:|)c+a'D5'CУ"鐯ev,.vci%1Ն=ckVN\nJpTCCt.62\?IMz`&q8g!wx:P;)}azM 8`? ڍ+SYM9 gmiqAYş$):"-Kt#n^hY)aR˺Uxʇmv=2Q8+m㾽# ye:}079|>|)Z)Sot_ 4XfkWr*6 ̥% ^~̃U"=/ &A3.BkڷA9Hk rC`wrk. E?!4~ W㪆R82>|Гj;-cXQ @,E ai~Limi!9DS7APj@\A7/S!ҞI= S+}h@y )" ^{,~(&42SO'AߤL@ rZ2P"oC뢗E3^@t74qh;p&Vg¢qL{NR~=5ZNIf5cU*xn ZRk ^V]g`:Ux7p5ox'vft@SS[(;֏]g,|h ͑'m~|3̞:atYۜ#|NTO(3 2̽wt AvԱZugy+à1^}Db7ƅVQ ךz*O!!!\ ]!E|4-/KQ^є{<5ǠTtZV aGxxRF,@VϯZ&(bu>/ r" N0& `o:}+Q>GGSӌjs^)eAQ=?(Ms?^nw9 '6އjc`VoM2-/rOi#"S)tZC""˶B8tSr :{[q"f@T4ʱ8ST-< {v%X>FUv':rF0 F̆'WF,;Jbi3uՋuzʎ;>GS[ R" n) >ă>ivYNwjN. ržkj!@q-i!s&?fP")üTOԍ\!t zz6i3 tv6(݀ΆO#ĵoH1H`N|G^L=b;ef_mgA(Ȇשd)̯/i~P-!V;Mnt>-Xo zHh"uE u6V8oɩYC8/?GR[ֹYVOl1⠏u<ƅڰ)ɿᔧ@9[L_ ׹;XZ(:"iIYbƿ} gfm`j6=Gw ގr_!RWMs 1˷l[[7M17T-` iR ^ ;ʯmYi$jň2<2AdG3v4@l].=\w&\E< I y\-A=O-g =#on֧?.zz nD,T?K"uQ";ɲwՒmhu18Bj|3V8W& R{bQk q_U^N0bɻX$N7bO2ȋ nE _0Xbb쐾 ~0%|0t_$ƾlB s~;PШ6!%Lg>ȣDF@6~amTF#i*aR OpbtG7o g u L ɐоS ~h6iv/"[(W>ݺ=*l$KQR꼴$_̇T gYP}|:_i7EV?Kg%2ϑGg6;+K?O"$k@pJVv7LurKUM}+)40ț!,U幔#fh1;+LU9VlX0`x2' &2ib۞M)-f\(N?Tq3sxrGtj/& ygJ}ڴc#6A8p_P^ɧXxs%# l*_ṛX]er#'vI}Ab'|ՊbUDoN xvV=Ųugag;)ד$gg|q&OøFHa2gL#Ѳ2Ĕ˕ß">nv ,hH LB&З å+[4h)RlTŠ"Q|ng D$v҈~-9U2cuR{ٖI]t4bb`+x(sM_47H35cl9B^HH/rMdўZL~ځKmÍV,N%t?Y<;rJhuͬ㖙VIO]\BRh;vYij^aak_c~V/ }wƇQ :)5:'O Ro u&]m^3cv7 *;M1ܗkf WZjU)#xQN& ZL۟s5S󘔟B*B3_45 z2 WEÛzq՜ =TeLsU6!v%V~`k?ӂ㹘*b\/)kTfK,6 tP0qˎdx:H#g1Ls]xĹx}u%0})ѵJjgqn3XwO`&PV5tI:hL(h1؏8XGnP8 ;A_"pUTykYV1jъKk0MpXcDy6)5>TDF DcBU୮&3#Mv队< rei*CaϽ]ZB{YxW1P3FXГ7hڦ).Yo"ٟGR1G}w(w!5&'-IE(Do3QF f^BzߩiB.+}a!׮ F6D'.Ё#>7)E'+) [2;9 |3TXÑrq{莼>0BK*P^BԶq A"ʃZrly2tV46;C(eSkiU9nGksǮNyR XG0[[NLJHWxn [GbԠf?wSCt/<6E]|~ _2uu#Oд~I.%'״L:'d<>M GWZzyzs˹4cYa  ;Va ٧v$rUU|k$yia٭c30*P[ƕl@%3&@LR񹕔#v횉}8jrbvEMYt3 AܯuQbO% Uj!oi.=}PI/?( 'Vy'%<=3pu28=_J3:b;HV =bN^"D%I~ FaSa12BcO󬹍or~Dûcn]B ^[ba?$sdwM϶up%*^@"F.Vq-F1~I1'zdN}4 |L1q[ 4wqeJAaH`lzpTە͂A$Y^ = Cd/8y qBK]P|_T9DOL]vl:Pf"~_u.(\|rEcD^1P}LVԆeg`flLBOc4W@by1eLg%QǐpHP!S˲\E9ho7\'ÅMૡྕHM> (5n?лѷZwMBsJ\ܷ$C}z:OYle4s&lL$bY@1@>+%\栫RkT6n3e$B#/:i͍eX =VlOWse]0m&{*5[/l^/vU3O~Qr[\8? 3Լ T >k @ 8#pdUG]6c>*Γ2?e·j 2&$HxKt?g(Nd'pvvM iqCzغ'/^yPKUfe \&av[QZ>IjDWPcVc6<2جhDaat rچ,;;k80@. LaR:S^;wo+(472˜lOYnLߍwR7蜋ZqЖs@@UWԕFkR*]r Nno, *Ξ &! YL>k/S5EI$K%<{c"|eI lZf`g֭R{.`?$41hĴ/`ꙗCgR Ew76䭀C@e+aym)=&@&|W83BOdUȕ}A@JU]y&4b1O l4CUbpv9У6pea55Ma8qavڲNaϿNʺ;#!Ím»#c/?.9!ESWYѰWss^F>L<^&CS|--qFmQoP7OXq_i+3(hVC|Eqݎmi) <2clBj8DΚ0!>W<9/3>ia<:${x;K'_ IKY;jh pLi۲76ɐsFqGsdP0STy`(2QjƜuI͸v=#zWX"DAs;'-NSMq;È9pkחp[.}/dU9}#n([)ֽ flcU};Ի2.(ڹ֪[TT0-iK-ӡET'q9“#Z@}>@8<(LڪJtgM#tJ'dH !|UVhT£{fx/QKO6&[ZȅHCDXSq | "-pO5$áYOzڟBI:b+.`ʔp^h_H vS9*˲M q _7 Le!-cWzy~{echpJ}ƻ0 }0A%r옍E~cTfEjAr,rxVʏgX՝"EM!{t~Pݛf 1_qwmDAm[(`g,lZN}YGFd:z & 8$*0d۱c.B͓2RuŖ8RVJnⰅR ű(l]nZbݑ{8^s_LʔV8;t2EMR RA&t|K!\콓lmH߶y+?,'JlU,|ձk!˰f 3Uߚ>|q(^ @Ҋ5"mN^$˭vJ'%}L4Ogyz|8I?!3O'^Уta&~LPѡʹ]qqMW!)U&)M|MW븑/q)E fV1Oe aj+ I`{ pܧd/Y5X0|dwQJsxJYDeXXWU Cc4t¼|VtW[5۽]CTMGe 0l(a -w^ m[SU:x~'$lZ#o+a1nhm@* l DrbFG4"Aʺf%~QӅĢt|mzϦ/'U"(txXx-.xo:0[j uᬑ5`c0[7epC;a8YoW y/2CEv0p~co,Ck?)V%o1491k{Pnݬy]ic_\ Vm1i}*M>%30csJ@ֵSPq /3zńn) @l`&UnBJYpi.5-A?= e7C5\OSD=|X6cL=X@V ?/V<;qf6`)bK ܋ T%$B'Z*MRC; :IHP\kldk/?P5\|P3J˴Y6_ L_걸9r{!-Il`Zr~k?9 oot<4Zx@c>G 7Af$Kgb 8 ķٞ.PFL0}q.}-[@cЪܠ(Rs)5Q٭zB. R> 4ay@4UYcOJ`#ш]c @`u{38Y*͗Ӓr{ͬsCC3~1')L#bp59_cş Y@'ywٰyPiKFCяUCJ&?mN-QgXQidJ)Ζc)Jv|Š%6NwlNLPΫne-Ֆ\ 2]6 3ݒFl3 w9[7 #ؾ{.xyi@;gC|e<(Wo,";UWp p$̡ս֨/aS 4j S!9v YN S݊ πrf9K+ҚhP.QT锳Vh6;vXhgb|:{3qmTvCVS piB$ӪQxm!]ٵ%\ZaO)*DHROZJɀQ5ʷgܦz'X ۆOдh^{Re !E2zeWt4aO/lܫ6f8As.w\@[6w?:Q+:h<Կ8VW}eG:/+aA'ձ;CW2\2f2ċyj?G٘"&R}"uX/ܸNҙwc HyB-'Fin^'0i`MH"o5#g ylbڈ7[>1b,b+T\ !g1'ߟ_^6os`P_m5/ /NlX:=o3 -Rmd7okpyiyO Z:ci{8^/X)TЬ߿w8y5+V(8hצ"L\1qSk.^I4}Vu,H8 "6,D~J)R*C֕N}Ȗ(:vجt[OH]Y (GzI&%Ffq9#OZr~`OY5no}+!w[3@.\Afnעe;B @ոy$q7᳞G) /Z5Ж5X)%A}6O,1LA7-e{;gFuRFDtɽ W ŎԷ]GSS%ıo d2Zm׾+Kv lTИ0p%EUN.8>J7.M1ߌjtLɘ,8ZZ:8֭ZFn𜸔_YD]KNM$8yq>4*~Kk%.dhp{zo6rCM{효޼'[WVnj-|2jK Ekc ϝb;?وne7a0SC۳*ѵeYuqrՆms(qC93<}Jc\QTci 8Dl&xiHaoPxNYW[x okD1FnGi\_9<)9Oa8 Ͽat`rL8lrU,;ohuP3*لf&*ɴ-OÍ:;Ev@炍$1 >ΖLǤW+# 8Qnq[k gb.=^qux֖:kv!kuj8PՎU0ߒ%HFv.0Cwf׃l3Dͦ_̾#d5:0ifgfk3'`= 52qۡ'FjQƕigRPno fyXEDG} ګ= )a},5*uYfdHx$ qsgVO˕\Y$ToOBgFxgLVv9f+o4޸B)-1,4/Hv+Յcw16anHu)o…;9_ʤ՟daY@\"`o(f-~iQ=M:Ǟ} +*+O1 8<GPt\b!>d12=k& sL ިrLO dC+)T6p7QАHH׏` vh=rL&}.JuG3 i>yh۠Cۉtnj{;w YۨrhAX:kaq !D{\/@24?s/cx M/N:D1~Kq7#%[']18G2 \B b,K$Džq $:tB説r)$ дbƺv&^L2%(?-\#Nu6ubZ*>܅gM|VTO!\E0T`4)fд tAeq_W*sYXguWg㿭^Z2L歲wjfur\ق_5[@, Ȁ]}䇌8Ruɐ ʡڃ)Z`V{U"D;YNLsT6%lX K(I>VV)|ӊVj^6lcD^n! O2^`r̃˵ׂ4nbdGsMx geL7gu>VorcDj&0L,cFed ׹#b]c$$wOp;p |tyTWIU{ro ^0Bzޫ;J~m2#1H@ 8Pk]\/U|8j'o,G:aPҽL6޹"(ÓPDu3oo.">CMjeA%#T<.%H}X$0jjtbD$T rwwqWOM "2C5}JF?,t*|L\bB1O¸NyI*hzV ӮR7GЄu=yi}ߝ{@TYNb^?DR 9*BZ0_F*1;Ae y7 6: .x/+|S 7[ݓeoڔ[L=J8R E\v־ }"ZHoooDi ><)jl=ݖ'È ew4z^Wh@E KC\ ˳7Jւ#n€ßjKTž%­T  lZ1WeϿ@051-|s5^ 81x&!NrE| 0cB4=mybsxP32"]m!D>:޸K OC•UHgW1ShZ=l,Bl}ObÐ &sbʪ ؎{d#עxP~j 5qk3!%\kr# & E *X{O/ҷ#Ȟ|5z?7 -*=Ξpax~j6t<@A^#s2/FgcwPhl(xU`%$:Abocc5ɅJCu_ӊ*j7:J"zd/\#¶d~#ꣲ+$> u=V[2CiÑQ1Q2t٤m [۳"DAcf$ ,{>i8ME@[Y<$Aiu{Vګc}\¥ ӀK&i[^Ȏo<2Y-UeɲMIBm@eUM7y\\,:Z)vr86Pk8Kz k6tq_jHm[oLb'-%MSĘeMH3W E|Ǻb2ϫK. L؞nOzi5.2sqc=s4_QWTWѷLJP (XOz^_=^zQ"Ȉ&"8 c: {PiX2Gkh#rDcuj ufetq)Rj>BR۳sJƺ)TUڋGbW}{.t ["xTQe4~ <4_UUXӛNUܦإP`W 'i$݆Wo) hhU9﷤$QOp6T0|nLpdU #n6"AhC:"UmoՀ H: 6'C60[͹+>#9*\ OVy"%>qJRquܹT+W՘2QMKYǩm<>^SMLS&&F~)fqQ',NPFȝdn, 7\QAPc7JXtCыcvN]cnK{NUݲgb{\ަzH .+6]"F&P sӚmm@zۦ-g>`Rb=b-Bwӟ)T:rAj )⽍k ]B|/W#PinJShh`b|3Or68&J0 Ǥ$0hs*JÈ#OSlg}{QtgiZ& [E]W}OAZӸ3A>;]!*/C7@JpG_3\UV#=oMҾ鲷${!AXE9F۟du}}>gdX\Q3fPUI[ 1pPFEwb;n%eX7P4؀g㟄 ^mˁ:,WE"4,9 PI9֧ e/&DA-G]x)ob7U~EGw}e_05\8 -C^&2{-*wUKjtjX(*08.ڼuph\ RfȥZI՚bϰ+6%8o$]$s|L<{6^g@V6h*Uo{d|.Rl[~@ɡ_ Iو5 h*C8 *)[ мd[\DC"Xq3d#Bb^w_ݷ(}"4 3􈾣B)_ʷM`Q\YX i"=d\[|cY_dvpDvCR۽o?\z|> uT;ZGC8u}RFY&OBF"n0 ?# (C|e䃞") ~'Q4 >6ф)->xZxehR|(a2ߋG`Eh*BQ?  _k|ԲS/GE){g\dNZsMTq]h7_2+5fIbtҦ+ZbmWFz}rM<`%,vC4 J=pK:ehbrgdCeè40&/fRc,v'F!2Vu4AiQRO"V|^qF>$ Bhod'ŕx S0uԫFUҟ7s~P ҢK"|9Z0rM(bj݇!sm+^ 8M4Dʆc wo! fѨwJGY_CME/1|l|gk0}3W~q'/K L;.{< JJñù-5d^ܿ1As䊂GZI!WŬfiL d79[M r2]%+4;!W&vAn' kX-IfehNŗzl!@>|] eKT>ju c.*xvWoobn檽%΢l Y~^>~PN=J7kZD˴D}ih܊s!&&|آF8 B)! &Yb_T!{eYi9!"* b=PF{ iT߱ zm+IY=aY+#%A7Aa䤉)}-RL]9tyTmRܖȔm6/M`g@L ^cZxeڍ 8dD:KY&f1p@n#J~n ('Y:)CpzT%Boj4$\KڗS1hk\YJ tAؐ/ّ#Ϣ.>P$¨:=9E?Z?(?q>@5'u;u2R=dRkq0)L,H4)l0." c&.$jfn)Mm$_Gb=O˱ɟUnvL'hݿBK_Ic՜IbX!Ϝfh2' >|V,eU]@k vej=Z5r1nSK6߻HKOZ<7 "$$y`.5l˲cm-H΋;OI xcm.LYx>8`aMO"<6—B-޺FkܡW4Šm0ߥή&tv~BmGr.c, ߀y@)u+t)m3O;yhRJ,6n }XaWnP.V0y %,p^9s!b][ 8 :u^2 ^{EzX T#FS UN5 ΪsRP]Xڤ%H.QxHw'q協W| G`CѵQޣsdzk/K\"'p.dg^ 㱬ƨ̲-i?ytK7/3̬2szm.h@aO&g(_rѪoE y{@p~V ELBJdK[u.\MNN 9&:NQMƍg[6*My(VcjRs, Zi(=T!W}o# "O!qc2ي5C h2 M y{J,FSe"VHvYp5s.Y|ΩM[-:;mQTb2KCnu} HocVRwD51Jg!0|usVxנ%Jq2oxOA9e^mLnjǝ;.i0l\{G?7Dpk ;ҍ'1Pĸ6ުrY&*O(FCN+oc8e .<6Hksm8,Uzv2F$)z|'[VYyGΚ|!A_?(H] JKJ[ .{*bͥY9LHԧH du>B3 R~.5N6:IVM k`} O9Z?N `L h$>eLB a*4p!_bur͙jjcVc!` wDй:2?"j4Ye H;\6({b@͜!5ӻX+=.~Ěpb﯃ nilw$״0 7)D̝Sw Oxuo<ӑ`BfzQzs hJRqK\~\{qPBlL =_FAgW;s];k nT$Y?⏁W'&X=[0VLTRGd*|hf}d_X~o؝PzN4܁m= E\O Ej˿[@7~O%tv: =x"^yF/YdͧUE `'B<6xأ5`H\C×eC.7V`6^JW?XAP܋ܕBјC@nATV@1.׈ єaCW :|?ͥ]I%Ft#<+ī?NHFV8[̖֧lyE. ЊOĆ~`Iߙ7CAUY@ƽIs3cn*%{̚?;\GO14KGbw `wo R$e!&CSxfy si%P+1"S{TN3[5j+JG'gf.7OzF ͯV͘,^-u¸ 7tlDk)R ^*TA;k^s340 8#%Dh &q&^JnQh3U&J|v"~ZR{Vx@DNG jfɎ5<'Nqo3䯀V!a aV@;l1į4CV}/mcg+Efh./FX!~Fcw#s6֚JQr=w!mR`EYCOtx5'~W.! tշ|4ϐ&"=1f=i& Ԍi7,9VʷI>-h_F, %ݿjd3WT6SyƐwϊN̶T @˪>6JyBOYEp2%ߔnPyH8Aɉ0 mMǨKBĎ/d.- kŕkZK'WyRM=!HP폘E3wGh\,3{Bd֦hu6 {^@rb[Qzf%/qrA%#.ѥTWkUn] uAJaHlSORl{,%#0*Aiս(5EΪFATG3642Mb͞N<ҍH̱5EsoAG&'wdPռdn|;תԑp^]`8%\dS4W[Ec! Xz'C;{eW0!ٻEwH4⨼ER-Nd6M[w0+p?ԇ>5ݎ9eZLڻPU 9]zށ|e1A-fF~:tݐ *frhiܜH{Vii٧It_?_1Z; Sdq7PDf4` ZHg |k. v283ɭ՝TgB"5kk8ouWoí7*]:$d{G͗l5H)d(PD>F& o}RiaαLIw0TQ١O]}Bx{-,Emjn qS߃4*ܕUT}u/YJZ@M_#=shTpBq)^Xy7NTLAZlLEz; j6Qt,Is ݗ5F~}րZ#.M6XomoQ(ɖ3ztqTcVXtH5ܹ6p6/ŤU<=)'OBt[ ķg[](g:RYӰkCR3Q|YiA~NN8$l7N,cqVQODc_81kK/ (|\ғ_ 'd%%i E+Y}$xw '5pg2@hXbUWo ydåfskxO5s' ^`6^h OH *N! ߙlhкb(E p8Qa1*x;ވGES2);IuZom8)C/yX7JWB PRdR?\٣Y+qȻrD8=ڦ]3(Y;@Pu[E@H|<7~w0eSb(3UKP_Z5<^ħ j?~b}̪NStWes*rR#|0ЪƸʁ?Yg1$SYt>--uSrt EGUJt2Ӈv F/e5_@l0Y}#Exhɇ; a! e07"f7Ȗcx$Քt/HUѝǯW% YLj1,e2XY|AHNG((@ DPw#ڊֶt8'M)eOIwx780׃R$eɮk7[-J60-uw-/ۼ+ߢ`U2QCuȖke}{v(!@NleyNi1XZ'y{Uti*{̓tcK }$C04kT9 @` $rY91=F~"x/Eh}y\G!zґv.MO$띚401zyK 5E: ;f_"%.HPb&ޚZsq-m!n 29Ţ<{a:4RS  xma)e tO¸ "x(/Q <?r8UOv ^9DXi(~+ .ʏn5C:#7 hTO (9"[@?ШP3mM%8#ұH݅}zR@2!7?e48(@Na!;܎ - vghdun!Pqs̺;/R!1peokܵ߳) pV; &)d /eԚ7ߎmmח\tGN2=!36S6O]f8I$=N,龶lD ̿:"{?#6,6Vj[,юۈ>iveM o DM4q\b,-#[Z .qȈEBS# ub(w P٦HWjԠx54gԞ-:ILiCm+Uv5&`Z]| /@=pbq5Hy/%ٵESWt*`oXel:Օx^|HL SVӸbY%*j6\6h+:wΧGv#pVG Éci?PrΟ wXD]cB8N)T;UEko!tV)% Z GӇz~\ġÂ|Y^F`MﺯzDx+HSI\6Z5:f$Ϯ\"&~)U/ezgBRϡ5gBh7Yxm>-r%ZGw%J'FzKm+, h$Mޅ!6 oWe Kg,_!PrxWs=DoHҪ}PzrbOdYDmi5|8x\ɛ9RGUЭq":?,@*JVsۓr߳ayDž> VF!SC3\fNT;V^re7?ʲeqוzr(_Kӆv>4ڦM80n ȺmõVҖ$ a!1TJOuK-˚j `ҍۊf8JЋ\K"VXw:}fp(1`.ټHx:YRDlb.+T4ޯڍT1|3|(3{pZP4n-C_?IC8,ǡ *4yH+jGr&DޫΤS;5LY-+PYmaJZ"?얂xo D꼥-. ޽Fx.~ ]R2Dx@n.V+,:ӠGH Ohj|7?VtN_yydDC]_TP=sUa{j!Wf9';*-tLR{n-v.(3u}4LG֗/*uvX )fuׄ`Rr~8J6 J;yGtfTnx2-j/ABـg"γ3fx[_@ۓۜ5!BVNq^]hcPKf_ܕ;˹Fpk CY! Ό?[Pgk]蔲yUA,n1E)>&@ Dr4J-dH-FB}75]Ah[tr1KKu ͝m"}D U-I|SAƣq[&LP9 r'^ 9hP3i@9ZNc~{Y=;?^̗k&IF~x\3^~X9qCnܡEal,FVP<4y(TgQA$%cC bep/ .г!S[":{# (Ζj~&er.2!}fgD\ Cc=mQ00UWBɹ+,'rЙ:3.f.Ƀ n}:>4j}D@5HC͆qU&p[Jk*cKiBP;⊹H-Sk~̾* ɚ{FFv\eU\>\y/I)Ii ܊E K+19zĐ91_q7k4K(Qw:O+sx'\EQFՐrf`? D?4oL$i)[u+|ZD@)BnN `ʠ~}l~"PCFo% =Y] Tm̀e$CI%[hqR}zȀ9dpP*||'rl+'c/`7C?pZg%[r7)h p礰~yVyEMPԏ5958=x>bY6}R4.AfqxF,A1ʎ_: .@^*^duXX/I QnKmsԿv^tt- 4Rz|"pyڎIMl~ͳdD tw}5xhH<v0/U9?l&ZBsh6>Rpx31]S`GtNԄpU,}98χ!+:WGl apΰ@^,?' '>wr!]8fڍ&!cCRPRfчfQ1NsZ\YdW[Ow*>>Wy[ 8XVϩu8ŹvR\Y`{.xFD8mFP*Oj8'bXqx C <^d :hMtNG Á:*r|JxnLjx%9k P$Gl:IeY,3@sF CXr`_ݸ1ÁO}^8"iDLJG>&Z|'R4%3I U٣mLXWyR9JHu3nՑ,}ؤͻ!Fͩ@oatw3í8 g?孎,L)w@-Y3s4x˄ߨF쿊yFD*E٪͊MkkwE0h8Ga>I欍pC I҄2U'뢈 , c4>A bpu]:]a 5W#"26i62#ZXm6!}>s?#АHRi +h*J3( WiE{ gcQwȳtΐMIVߣ(b69 Z:$u]W%;"u,yf"tzJcFmh)Rwh >~64ubi]Em:Cs-XzL$Yz؏Ƀel%Mza3 <rK %ř".j%$b?ĕ>0˷d҃-,9U;C}=n;D}5 ®/`c]z9D]:)_lThVi|A;ptJݐ5b?ۆKg4 >9YּqVt*8%5(2F棻,5Լ*V1(w^mKlw[`>ُ' ~#Cf rˮ>DaWd,$*pwME'Z ~{y\`*bqxG.$@.R nN,pق+x?/!7Ђ,1jFE\О}XC֡eS<|q*RքMIԥ8; L7u#rH,`COC X55jzl n lr-K| \Z x{LeCX9SW#<#jSlSc)T8 WC)kC`!f>]P |)G+{@1܋&"Nٴ;L2^ j1"g^D^Czw Al(p9PZ.TMn"j0U"u#ܝp\M' gƤp\>Y{w {yrUVn4Et0Z&6r{V6g8ye&)7`S)PjFcan7#M'=GR=t"̀;mhm:#1^&a*ȷEquƓ!61z&؆r-z0~ &]U9Ir: 5sڸv6 {/Jjt\0#*;>\* Lל v) @*Rys?ڷ8ǭ5 jyi caEU ]f4u)xTx.ЯUWd ̼hc$>WFU(ıh|W*۔Vb,p+=z܊9yL,pVp l,Qu}2uה) f^[ט66rRj؇Q6H 5:a+I]6#Wr 7q߹wBqr$°} c5 JKɆ'W,=%0Џ]shO)uo_P Ò;}ʭ_^$*q #8}.yh;5DFA+I;/WX&أڛ="8@QHDPuun8L8mr':*/bOK^ARs#),$R!xŵaJ?3IH!2n_-lM=:3*cwFgQf?R@ȯ٭h#o'b>UxeC^TGG~1M1o{,^`4j9^& U*xБ.sk>|^ <sSe&Y3%A2U-ߑi +nx$Bl#kAWȑ! 8> r_g"A:c,,㻷cK!ӛ\ ;>uP^V@ Ȇ6Ԟ% ]^dZ 5faH~x#G~g [ג[QE!6Oub̧>4q1 ' ߷_l08Y2@vnM^sqsoɧ v[sx5՚ڐXi "r}y%#j խj%>؋|%f-![' >.!ـOWgD{rc6ٵaASNOZɅcz}dvFkOryU!+fყ5mJ] xMo|fAP_CumnهQ4u-l:^"mc X#2TS8>6%s~QԖ@DFc\ㄕ7Hڭ8?k$PD V8oe D"6X,t摁Kp'*t*vFija9!5NwT.P5m\0Xe, 6ÎY65CG@=bC%g­mG8H'+&O{LVȰ)JZ޻jq$#ebk!(rؘT%0g# (m@N ^W-W{0e$%A|E 6A6C5nSyglH )EM=q5f,?*쿴 kOQ6kŷse𷟵8vT{.DÌx~(ź5藫LD;qnjCb(|7ɞ[̨Xh}V>&]a 7;-:WCfbwtolę}}[~eݥGxD;k_od$rC9oAK#CH{܊+)`P>f8vl{|(/ק_i\RvPNr5ߓig8]cX!E? :61^[C|2?"\p=:HP:+@6|b(<8Rt#\&(9{lC lΙ2S&F%I/ Hx^rmvR']{LgIbrI$vl8m VeQ<6}`>^j1{O֑S`>g 9OrTj`z$*c&Ux t-\O]?~}T6W%D [cƀAAs]hkVޜ*qW\]sAikY:B0`$+՜ FʁcS ٮʍ)>n[ HӑoHR*1zͶҎhؒ8p4~"- E ڇ̋1CאUJyrl8_~"/JVl9dEof+ r֔/S3J_0eP Q~8TLM& -)h\3CĈ(/G W ,ۤU@J8q5H欹[BH גּQ-T1D= y -=@;m6 \8?h F+ ]Ghj}-)_`T?74wھP̌T}4TZѴ|Kȴ=Ob=[>zDnFLTM'ch)  r* %=0 d%;ﰡPhD"K`IB"1Fl ys4o: \Xl6LJquݖ) W"gOYgIq1J"PPO&|28VIKMuc'!TcB <Oj`װH*Hϵ%UKi&Q&tSW8UR$H5WC|l!Zi=]4L-9Dy;bHCdkv 9k콠2T\4NQlFn. @AK7|8*a ƨNrotk 4͹m%J!+jZ$e)1P[az& Y6΢v:׀)Wwi_^'`#"75vt2 iǼ&[ΦInг)5H4>iN7 2s:y Mg(+bdu4P~ƀxWXlUb"|%%F|Cu&A) /8+Lzte3ՖR>{JƖ1Fd2(#CDrEc}uӇv (tsͩG~p\$s=#%rx%fy+"ƭ,Ié:V+)hK[d=W `D3 & PZk= Nu,TpanR!siId3sx[]R=ۧ|S8{TRݑ3WU?nY+9#g)|%J TpG 8 z] m  n_ Іo9(ݚGAY+0L 1IǦEߗ(D\Wob WdE-YyC gkh`e` қ*O̥QmT%Irr&kW~G sv/3r0GQJ'@Eo!Ľ LnN <;LU3vܣ<ؙQ,3饼֡^X9eϛϚP4rB0ǠYΡ9/& w1 Yՠ (1Tk{!囂 0FCƍv#irvn1,ahެt|h fUUF~{Cy]61e'@Dg69 oKe]〆 w˨iԑyoXWMVQ3هJoZcJ']ڧ:iTE E@C{ wkaY^&PX+yj6M~76_YM!=~ hpjYGDAT`h`)z'/? *^N3QymC /gKc(#3w\6v*߈1D8[: htiO$W WLBo`ށ5w;tඤEkT&, NnhLiYTfkᨎN7&Ў b9 s#q@e0vRWo֊J ̓ D{}M\i5Ⓙf<,"z]On58$9F]sRW`lGMg-$Bj{fiu>MsyuĨˀ7x 3gn_D]u&t,H>؀bz5c ,<}Y "EwV]AV,/ Zæ.R75i6Af#.e&.m;KITpA?eIxu TIZ+sϨ8Kѿd́k7ImmsAH1nd^4ğ<=v ׹>;w^ ARY#& j^ޝ#DyQpF-nr߳ye16kI :$[䣅,&!OBE=w>Sw5Z.Bw@jY!WI%jd:Am02BQݓ`Xf94}$vb~q2GNz_yf~O^A"Eln ӅA c-g8>Ho҆QyÚq!igWúE#-eKSU,}k1& ֹu" d$6F)*gklf B9.9,u6x}=J7tmA/q 1BsYm//QR6i"!},?ʑ+ϟ?> <8S/\xL7V3#\L/Spoǂ$0hvOAJ,iG{ix-H"k1C W1́ZyKʁ_^a?b)12\ Jw-wwW\>$ 9x=K-PBF1 XQL9ӳgjpݍV 7gvy}*Tu\We$Է='ԩQ/yiэ&&:82aj? &ĦK= Ƚeb9;`Jtٕ ^.Cbcշs oz?XF>'6nADmQ4 |41(mSGcQm2=k#V6۬@.Rm&Wx9覬K;#_\+v'(zY7Y>ƎEH(& r3-H.CTF+gبB5Mec,p5-&6U kMsiG|?FhE ʀk\u)'aΝ6Zm2:B+^J_ "E'D@[-]`GK$mxVUN\)t`C?v7Đ2jh$;r8De=ڰ-^OY>ϜK.]8dOݻn͓; Hw[/4!P oi3R҇C&s{dfⵯ(5< Ň6..!il[8%S °wS"TC$Er+Zہj5׀tTq"#0eѐ,t>+<'[$X2/z~^]Ӆr'3^P?2,- ^ȫՑ?tA2 pzI(灡CyqMkOV vt cIxm Nm%硽$=S.8"Lm;YZ]{e +~2ዧHD1{NbCTg-:5^X e/*@: TCr0|;Q!=l+bƒn1 -jO%]4 tB@"%䏶jYǹjUKZ&8UoR-j.(9P<[|MUu:r05M8r 7$l8zuCݵ|2GXO3IXm* Ħ?$n/d'%}7T0>B,ґFϜF˗}%W ] X%ǻ =00+5̃q iF4f7ȡ $1*T #kn)//^Aa"x>H\˫\0C ߩiI%@\\)>X/·pap'K?"78Y| 8o*6"7y <e+'3|+#Yk\,@Mqxx:OW>\WĎ0U4֥Z<'g@R/7|} 8*l=iW nX#N?Qn]G0IcgnߐL-/wMEh3Qٯjǫr?SgfqoyV~^q#-;%ByW;km2i$W?4%ւ3^Zd{>we/ǻ'˅P>ҽ)wn~r9m68]&ϸWVsLί ^-:}%}NHmYi 6+(#^OJ6JjRYMN1d_M/6myhr˅ r̛4,*R_5,8 SKIȠ!m< ˑ.=56"-'N'S))kj'XsN-JZf5f)C_SD=4DpJǎ7cf0ǐk~ /\PN- $uͲ:(a`K[∬gmq".mjbv+Drd<|,WZѠȄE[ BrU]OBjtRGvWgԗf*jga?d'B2AEctF}5|:Oj+4@͊76?tu\Vⵛ#QBj㵀=Z1.C!JLtGpW.rפ*(9M"*$KvA<6+~ʋiw `܃v>uȠ؟i!nI DɸC Yvt*zøm8Nѡa, 7Ə-EMSQŭA}.Qx/GvH&[IB׳Np;0#cv+ô7G6a_қ(cE}hDO*Ol6h!g#!S FJ3C;m޷-v4PU#|1qX,qaQ~_h5kQ :AEB?td]z;^$\58& eٗNMSաvӇsVOxgrU,@ZU6#IH@\_o'9אw诳erW=R1`ͻ4*-~ @xI#`\}7.,Yc0G(T^dVa:Vn ( 6Et69@j'Jt[T jUPF SDڳ!1G*Zg~чV`S{.:% D~b,ְ+]䅗cW sAµHK'KMgluT^y%øC bqXe|Af3(}bM&}*iX%[7JgC:綁wVlDFR~`_Oz| MMCSQҴ(8M4cj~X^ys`m9hv%2g_tV#萿t1́[M׊S&n=X r֬=,/㹌ayLY*2t.:r H3O*('I@ R^7:]+<16xQQ6ɝ'0lVVCc!usrn+\0SXJ6̦Z?VjR?$5!Hjd9J18j f.?iWBP]ك33ѨWGI0d'&8*R'qO,L$̆J_\j.t(:6&`oqK%Z>y|۵nGx/F1 DldBHWm&$(Sob= E)fƠ2]ʺ[uJ+)DNޠ*!+*i; ۟8'ۼtNj?l:c1N55;XA#V}̌T!X:"˔)\~%z->K]lΣ s &)<Ww ʜ|K(H* h1Hn ^:{2P}bNV_DXFLG☁eO/Nq*396 `3gO Z  i_m6"=@0'KSĬ>x! !s6M 1҉"3n͕;lCO"KX}sR&몒g"7e&!sJAP}q{CЎ_;ݲ_Q ̱%B Bk E $srɶ< @g֩>4}%|w޿wOj,uy-Ȭhd{Y 4}jy?4Q}sEvR] =%؆UEFc 3Ϯ)>n_'x$Ϩq7݆G'\7o̝H(=5tz:v.Z-W΂/P H-j~eTvJ"mu[8/^oNg(^]Bu{af pCwA$CMrJPֆhWp3c4l0U߿/VcR`U*`8{M]%r. K'1t VtÍL(g v^pV(5T&7#,/^HG(CŒ$vjyzBBUX[DN <f׳ݩUSvV I337캌cȬPK)?8`޶GCTsj͆[g] 7;R0gbiRG z[5S8Dy}-UM ^Ƴ"g wr6?pqf 9YNÿZŀv[)yV1 ľ.p;Wʊ)q^ ϓ)~b.5#), n K0`Qo$kUKT߮cC + R8%.$~b;SN!7~Uˁ[5otbz08䒞 ٯ/ 7O g]MOY>ufu,sWrãJa4g;4ϲřt\汘:^! ekOٻ1 ߫@th+f 6G9͙1_OTaݪc5 ( +gf-gh0 a~aioH F+xOf%O zsnXdDEXZ^G7˶_ qvM(6@NiA[HVlQ9.a- oAqqI:WlQǙYZaJlpN$VNQ>oFw>Cf^ r;EUn5Qpp Y궄zz`e6#)5%.c˚"3,iP-\,1zyN+2Ġ?60v.%<-`2Tȵi :$|a. UY C e{6I% ka2pwT"6LMwkx;Я m:[Bxوgz nfTb#e)E9c9ֻ9UkW0FyP3_YW;&Tप\\!_B;"%_EH=Ew ,wOU)b^a8RM\kb5C cE]OmԒ" R>|!`<\ enӒf\zNW i: @oc&F 5ɅbW9''8Qw4I0cCj\$>oi%Wh du\ vxJSJeǜEv1c%HgE0 yG2yJi}QC@U=ÌG١)'@#z6 pyd2m+_:PE1yx. wKXF=;TrwШo"<Ϋx*lc ;*Vnh4o(ngRem{[rTp3ZW[tw K0]\g,6 豒 .Ox!ݭgí!.hl"O:5aU@ƶ-VcnSaf2@(0λW;N"A~šF5[3Y| š3qAhs'¤6>J-Ԝ n%i";|kV#yMgφL *٤Ш1U1EP./i|04|i;Pmax8_oͤ;lfrWSD5~Ȫ{. ˜/!Ѭj5Q<%`j ÑgG3X^ ݂163?;dbbH+"e!cR'Fs{_ooiSSLEbdǧ ^i F6չ(ƠJ*j0Gfd(^L wm9S9@h$Y8f&wFL_|;PvL4>vHR9F+vt?-!F2[H uD}|/: [fY_P?S:$! :{3 z]e;5l@1/uٌ~-P;n#u(e k#1!{D.3a{[O0)=<@Pm2]P|eˤEf:mRl2KH"p?h}k&K&^! Nq=P6F\(Z2&pd֬?F9edNs\pu C+o RqIHebd>&9~9)Ƕ&>ճaAZgkB>@jV# ICC])+:mxKGxYN% T7L'Fg!eeB U[kY*pBDmT&ÆrVj8Í>NV " ;CD3 V9iTO³%%ͪh`pә Uv˧K)F!6 <=+bULG \ql&_u \zCW8;]+塟D9FVx/%:3QڰNY Xuk%q˨]y#i\'%xOyeLW!%N, 'c>߲\3ŜNy RX0txrJ2@31.Oh]/vrP=Nļ#W #UEzz ̭[#8T:!|>p1>TIDp77bZ~j|~.t{L)OEAD!+qYYImOڼ]ȪaB.&#\PiMAk؋Ugy s/O]]0PT8xnm{*&k@bqk~7 eK hg a_EtB:n@سb*D@n%E&3FyD;  :8!\n)h%'iϋ>:/Tĵ]|6UU?nҰbX*ЀOZk_!ey![ YNH!碌(', cT>X> B\Up)_S<|t( 7aiဎI{Vo<Îu_63% D.Zu Wp"ĽWaϭ}Q-<| K5յ):+MTrJd&B&Uo !+ۙ1aqPst3Fj%V2*=;ciַ 0Ec@ٗT[8gzp% A=>[º2↏蚐T ~*3zH86_0XNME!v1ۀ;敧!1]IG`>Ɵ-i5a sE6%LVLOʝ;o­ G7B1:(Cy 'AGjJlpgZE,)y-|1_{:46Y7vR{%l$N]#?3c[bZ/W^` nxt&Ѻ7p K2΅vdlYs3@A#&k XXsZ K8?5ĺlqr;mco"QC矽iE~WC4vRs6t'45H* ʲpھQ ֑NR JRO5{蔟<9q=Ǵ˞>MO{;X%cxI d*%N"\u?Ai+]IS-<vn/VaJ_#rGܪۭO>y(6-Z/V,0KfOTDJh6[xmisvE ;l=4~}|Pk(6i`M:I@8J  CXg10^~H?9Y;P'ntP 0eb#Te7caUBio!e]!9LKO}eڷFt {eTqvs-J7U2?BFq(bjdRxT1VVП[OaN&IDc:i`}DL̘B\JNa4߮Y- Ӑ!]2DfsA^{JŎL|pcnu޷}`52S+[x!xQ|.͋<ɺ_"ٯLG2Q[^r:'N#1b^5@Ɂr[ } F.ZɂRJhhGu*@yE >})ҟta Ձ,.}q#CO!QkO`F)f0FUۖ҇ҭmʖo%lsR_V'?TqƿP:Kvki8$( /85CN}:V`yAϬIi4Ҩg0>ߦ%C+XcLۉٖ H)b@}`VnFINJ ؔGE>%)8-KExy%4||nΈ^>$qPڰPBl CXqL'Uf, ω;#B01b` =|i4FdC?9y g|pM#Ǎ"ϋaOU}c'ԣ[dzyi{7_㇥[ e1J0_CnfLv Q'R9ldZ=Y~5J;+fɮsXkO%$pqK7 У}!x~Oz {jDCޱM|6GcJYĚybV21'\ia5Xw].! lk1WAfǛ94S~U5tѮOrsRK1U)_v+g+O:k;|+`q&ѭ*ͳ&4˔Glc@)c,[kLUY.|`P~1 DzGhSQsiMrw{ )il!lԺG81&aCm?̀8@6kAQj`Ult rdKat3d*tdjCyBЉZ@ObݷyXBpؾ<>BF3uC{)@mmܘ\g@|-3ƬUIgDSu‹P=]|!˜ڤdЏrB,W6:hEca1"x1 B"nfv?Ć=Nq<6ꦱ lIH%LШTZH;k=C&舊YBƅ/-@KkJ7[3P &z.Y()p٨“ׂ-.ES!fY~te3ees|+_bHfɳ aB_jWU h=۫xAߊ(FGhv!}Z,΃>K[qMb,9,r^nGߟplb3;*8/!7ƱӒnO*W$8BQ q6{X$h&TInD/硄VC#cRg>uEEyzp7~7Aɹe5aRZvqǭb7YM2 ^MD?XcW_,v~apkN$RA@KELolX..R'Jzk?56´(orLx Q_RH*WWºyqq؈yQ8,s*מ5K;՟4|Bxp)S!^!5IKŷC}cx9r팠v;hnC:ʠ蓭u%.NqR8 ɢ?ʵcB\&d6_Ƒwb}SM_q5>SA칑 ?h_|I|*2}zוM0`ث 7Wp \b_>;Vvv"1кt%$Iv_~Ӏ#ZLyCJ!ф<ڋB܉) `}/;CZJP]BlH<{"cI:9kl ^>%&ND>d=B4P .+Ye l{lF-zs+)pf2]I5S\I@E̡<<: ˓k)5tB8}?3.GOEcZŋ^ a A[iT![N{X~V(CJq()wp!1fW? v#&?Tuuk!2>ؼAߪOM-w=rR"7X:b˦AQ$U}ҤGfzPG{ͅP8q%M+TFk #NPnte)8w1%X܀=pO(1mwg&y'X/EΟSdNA +n6=Xݬcb ?Hݿu(fEbHx`!Vxd VBI?r93&WJ*^n9;mV3NDaXBIH.&I!yVL޾mP#/6W?(h~`kO0kFf/~I0[i5$r]{ƿSpreύ2(86f> 3_Ϲ0a~:~v971*'ҽ,='ba"R U鉔EuYan$ht3VUuE.L1x6ֵ8Y81BgPUPJhq&bƽux=!42"lEyF"=uԾAB .F$!učB E]ŗG">PRQ[C/}4l.N )'d6ΕMj"ܚU2UՐ|-ł^W+tbfJR,A 0JNxo:̹<#w馼+$җd^<9!dt5F #*.6=#6 j!M@"9Fϊ'K9ͦcIrN(Zr":e0F)1Mg!ʕ=j[b-h4,NR8 KI3_]^͹v%QyR{uWMG&;ɵ1 {9R= Zs$/dB :/)o O"׵)Tۆ%;#xz 8Mgg;caa0={®7{4\4ri ڿf.&Cs Ov{fh~(@&GpLP]^hL6r&-Ġ6^|$Z]=XuڙA*"< LZG<f'ĵJoz:P=~⧌:W癧V'SٸgIхq-)PȆ=i_v;oҽZyoS7 `sewҭRmnUT6W@7r`Ca`@D}*tyǏv[@1xgdvw@;K?2j9"o|y<'ooPz{E r[ gA)V3(c7{;)~E#LW(a;8Z5+ 6~bX=̂-) Ęew!Aj΋̙J af¯bXFPu#2]{CԐt]*@={0ϙVm΍>ng PJJL|鹀X#7̫'DiD6e[ć,mGbqWR4GR$v_w fjaMF/334+ӄ?! oDO~F"vH!}i&zq3֟OLoA#Ū81QHrW/ 8Mf54k(gP?oЩBM}G9ElOk.Dɪ%j J4p/q~F5#{d.KA]~8\- 7Q#љ,T$9#`RKԄRB`>G#U r58kz{14S0O5`uMOIrӃ3(nؓDm͂y}s` Nh?N/.AEA t鐕\z ghgM,c*+be{x݃U⎠$[%~G{!5@7_|^sxμ>&AlPN^hf<q]C2CG< w*nԶ D .]ŒEa L!ѹqY*C@'_~fk47،˿>5iEU*CA S9\W<8׺*ceodbQ_l쒴Zf(gN:C=V*Rl/Hl3TF}l^,K1F0 Gט`+o-~QkGHmo[E22K^}H½S!,*#s3B"oViٽL@BX.?X5YJ0-)E̡HCG,fd9{d2YB0K$>EYڄ}Z[=x8FȢ9/k?i5(=˩j#0l١"1l꺀I%uΏCы]K~)tHߴOO$eqYpbO2Øij=3_M(; 7b~8;`E&n?J+9 E2k|Jr&|Vq [i.ՋEۆw0p}V6(. ݨt-C޵a,JݪW*.S-vd-`GxB>޲o=p.pdQyujTff@ }*Hw@RI΃wLkN[?X<<F=F/5J!"m Mwo~]2b*-Z.,@rxBi Vpڃ_Aw>/ 7!zCE#:KRK:Y¸<!j/|pa;+Ĵߺ@uOԶ`b̿2=/ rk`K"Q1;L^d!"yPH8Y$'A &4gte_fukVƩ*98Y_pl2LBpZ9BѼJYh|}|(oT/M*Ա_fakFRV+ Ci[!db&L[VsJS*yq@ AxD:O`oӍYҙĽq_l[CeͰ +,Ȃy:>4d*hww VawmMԯvy{!]+Q7pT=`< 2a^2h )Y9 2 Hr@83iAbW-ʙJG..Ia7*8[/ga~CS2:J)~4 su24;2m\%D;-o8vx b"p6~9 D39O~#E g+uP^q<AJPznz9Iz̐,rCLlq4Kpo.30\ζHÇ͡Զ"> sؕsH uAA&:aE'ڠ=ZFfO[lUY $hm;iR R;*zEɼt)Pw;ǝ<_ṬaJ "{~FV A*opN'Fa UѼv3ymJ4qm9C2O^_P&Η= \snZ hpjXIt[4(1~k& C_@{'Jem:,d'T{nC6dRWyåZZxjV9; 9oۂ{ƩgR=ʦaѝ<`_$ǛíEл h6T-Y}cAJPl_mY6* 8wuץ˽o butUQ!kKv "ooDnpdMYOyⶒ1BBpߚhzXL\ʛFe\3 Ɂrs)+@u"E6x,,eѴRU #/n!h*jcQ 0FyZ?ZRTt(dA9f&0='6!wOmS eUҎ+*ȃNH;$up M^Dm@Ltsmseug RX>_'<1ح%+TjuAT)#^8j薏?už4eKSބ9᜿^X=GѪΛ1~І4omLԟE㘠U<Byc-L,*[9EfS?uLhD*~ LUBZHiO27= +]zk6ʿDV8rs M#ެV{%AJ1 !ʫK0@0mK'~9v0< h`^Dqha^ݷCC͓\L^h lPK~`GAEԠ~=';jB>8>k {c/qQ5I?vF5AYA: ?X?ݝ &.VidG$70p]r}H! .H-mDq_zwjn Xx,6GtRi|lJ^9@\@o%dSV#qa:V-)̞4/ C]ԇTLo4/6߲By75c`/x-{ODE WcK*v#QH]H(\~yMo:yȕ+/0z+z d!,y6)j9@ o#(%V/[l̹{&^姸<iELk-{ku^=H"w.|IkHt5ɬъq4w_k0f %5sq<Ӊx`eQok~BVv`ZW*0 ۏɊV^!cbTLqǥanRF\&3  tQ~znoA_n 01:]Y2V8LRUq#kp ąidxFkŏqD8XJ 72CqhfUK[EE2forqN#/*F1B7۫MR9U~ /6tS2ԚsĸlŽa;"āq`#i)p imUC\rRz}\7יt7q嶎%+uHg%rS!sQkƮ3o{WX5Ǯpsnf3`]@l#V/JNsA-d{jWrœZʆmiӲV6lsjdU\zV;_l3gP2!0څ-+*h - Gl)#Q1rR0YZ]]CzHwtުf/9Q\ɥ :&Ցe+^ =)*haUMCm`Ij>*4}D҃c3ğuyʧKrj&Wv||3 g( Se+|?K y 1zP;;J mM*V or: H}AhPkʕW}k繂cz0EaA!><CYP0pqQ^J۾3ɍ %EDkZ8葍n/uWrmӅwJ"D~(br)dt :⬰%GdjEL-Ytyi)2SQ;,qJ)h6.%HN*[~U=b0UQXY BHW gdÎCJ!e^ gk6 c(2~VƾzX}޴.!\R}N -DGNPMT{4{ lR*Tcb߾wlV:ƦBVw1yfH)u+gc.!,u+4 BiGK1K|ff%RVp;j-{5X/ዿNyZ>ǧy21ԋ)ҍj)QgIhg,yСhKQ#J9DP*s 4ޮgFlFTf=M.*վu-,V#M[hvet1opMH"[6' ֲ]FNG˱<d/Η' D9] g4Icu}U|04 L̂$_ U](RP1bdRοjRVK< S7+o]],.d[xlƐ EʟyogRO1q]+ݶk$}^, ZV%rɽK+[bUԐ7<`9np5HIA>]V*cw@Xf6-7F'>ss={锡CGh)|AYs~ql&!KW "tGeN2SON%Eb (dV%~dzx%V4?fy=#`'K.OAYgڌ-O:B($buO:_KWk:xW]Qb{ ] r7Gv<ٗ&- 7&B٤u;xoN%tPhɉDܷDcZ.   4+ךtF_2eN$e_%C2L8X3|flSUϰ4ͷi#$$ c/G`h<%06c:;,ֿ>3-38`*gڂ`MW:D&*YQvx[Ybe!vʫ#dWjvJ&tžFbV/eٙL@U#DžS|&$x$nE N-BRXnSYMY}4mQ|ү\O6?s&$6gx>H`2iW<tORGumxlK|!6 |21^wq&ZqfL?`QsW(ҷwqF8Lzx.}b"̽g4&D HaJ99hJ4 AAؠ7h2wd2W;, ` sbvnحxb͈Ou2픙 7J8,v+.$,=q iBg"^ĜRfr/ d-7!w?Qy ,B][!{V1xCÀ n'})&U*IRԹΰLd4زr.+~~vI8+M+VYY~-nSxxZ8F ,5^ԍſtb<#_2Tmba,;} eo0 bͷ+D ?-A=.dD}2#_3.z#pr_DY=ċ3 x}F,,Ї_= :3W6lTя-I.f‰_(J2sv'} 6Κ(N`PWAlL cT k?"*B)C0-t ɚ![252+KV&y*隊oHd|=#qvY^6'fH+LvdTbkv;_~B.RrmC#oC=+ԑ<ʾԏC,EHU: V~C[w M5 N*{FlS%ND].bԘ!Tad<[T N1Tl9. Y2ADK1 7gU+'oZ5쿅3%M` /0p+-ܦoȧi˒uϷ8=p(R4\K.k4S,!n4lkl `g"w&TDgn3*I6눫 Ϟn!~IENgS4@kɿ<qq\ 6c҅!;o_BoJSz3]{BIIlEp1_B+2Me# !f=}zRm;z)f ŭЭe[8Ią-tZ\.d&CRU҇\kg10P% P12F R%΋kDXd;Y /UϮ*ɐ&@2DZ7IDD|UdpVlݚStjQnM% ʟE 2ϒLA%¨#Oe⻾<6kmфR,{p=%T]Ad;dzX5Bcï'e#(%,*_Q=Q _PlW/ W:;8~cy6鿽gkS,A]-x>@??S"\{f;۩ВL5"6SS3(Jy֢mG;`v^ri7WfȲ4 T]_Ne}UH*cjD[nuYعv8% KLT Ja&AZTă{ȦAAۤNW-w"tTηܕ$tABKzW䫰o eMk5)EcM5 .xd>lKT4{ ov3i$W-Ipn5 hIȒ>uM8r"lu|SJ9˞dLjoѩNt4t}ZF4)};龆Ez)XF7м5{7ۂpx.Uk`!-vPC =Z!jxy͔'㧚l* YދbnQ隆ܪP.[ju@[ƠU<p(v[OP5t111h%#pHM#&Uݷ1 c ugӠ4",qxxl/:B`E>`uõ0;.k;l']S3F2δ}U ,6Cjӟ:$i~//c_`Lލ{A_6<5{R)à9Pq=/=A)i(Iz!VWmNyyO=O[CPU5;n`m^ܕ\ P6ϗ`kAΐBFx4B2 k)ۃH,eExvGZ3}.ADðT%Eg%pbљ$G\{PYF չg3sHknSZ2>XM`ц4KuJ=蒦p"a,Yuf ^=+I"9#ܯ ;V%S>$N#{c]I bWڭQjt`97^Eyoha{{dNF*f x(/IH5L.$VPqd1r޽ [:QDcVjh0ꭓ$Z1av\d49A/&{3xnGe;/ j>ybj$i; ZzyZ >ч* g` q\,oZRHCM: J/5 lPmG@&::DG^u_pdAHuru}Iw!}۾t  #ʮoqTbٸ$F6ꤑ_Mdrv0_~Oa i>˙^!JƧtQip Y<8pϙc<n 1N{ă8SG c@8܃@䳬l !$0xxSf؎mTD7I"̩2DNO)4b ;'HSN[B#;paaQ6̠͞cmW f̞|m#l51V MǁU0G|v<݋>>l?=v2!=>ŧSDDnc9 #G`iʳ*ԭt(=| RX?ɳ[9x0 |qss;u!ESKOF`h8XŻI ]-#'-fBR2&U3 _/gSiFxsޢTYCXx~w(N`#/"GOe\ѱ$Ǽ,93sgV2ࣶ3YWf_ѣwug{V!ݤ<*􁏳 {!ܺz05BeZ$RA5ENGşR${pBc3CP{q]sL0J% Iކ@0F5UN)NB޸<[5nygE.(ĩ!1Xg0-(Pއs~^/a {㉅e OܵfS(% .b۴8JWe1{;}J(1jh r2~K=Є 9 9(F%ک5OϋĞf~zt%6f Izm*,&Vf&eY)i_4%ԉd:I1u(ttGS;(z |] s$ݕ(ohǗ kXh(R5 )?pػr|ڑiۭzp }|zI~ }xUzCYX'EO1//W1q4kfC!׳[.UzAXvfa,fj3;TusGxD;xF:<+F0Pq<[i+u*kS hr:Y# R#'YVt|}CjØ8 OXЋP F`W>IɶQV[>|?ANN[6Nߨ< <4@2 2?u#:B-2iZ ݼo#ئ=MB Kd~"~O.<rWtPF%1Okc)~:ua~6+͏%fpNz7VkćKXK}p<+u1ݎgO+j@! nrm6Ni,ƿt3\.g[Er@RZ?9n .r,WN MFצo1TS2^f򠠞b4J Z}&sL]ҙW_ i8LV,'LքoU2ŏF@1&o+Sc*}gǙ4-,0rkϷ(bԙGd RZD@`K!۲WNM{G64n^N?1"4i~[r~q,"BP* |=~4'b$~Yga(w '~48xbR~՛FO5%t~/vq| RsO,uW4Ӆ!uި_'Q t˼=+~QsmCS)]h^̷75ʥR)D|;?op?0 )~GpNC4ױWxUj^X_`jT|3Ϸzw/y(YJJ)u;ȡ{^H3킗>=;R ߻OSHg꘱ )M#NǍ?/H h !3){EZMw0P\f* 6S0YP\2m^Cg)}]ٗrm 7j~VMl-'&S; *@b~^!HTi** @ESx&)%ol]Az傔fJav:_ay= C;9DCOJY*DX~Jex3`Cڂb^-Qd2joe1جHX\Aǭ ˩g5~#G`L9SVKFk_T*~MS8Z,7>ĩ6z`tex]`,onSGXW8zS4Q"ȠYu8{.Ehb SB'L&AVcq/ퟪ)`ȱR MSC3\'QqqkuÌE~p"Tq5eiR|l E̝{`itZVYDALh3U4w1 7IɌ\{iɇz[- "Fp8D-03Sji8pm̥{z{HꮜfR1uR] )0zc(LኼB7sEª9kJwhS]=yC//EC*pȼ`E-B$Ёoh7hݶj@%qʌqw!9qMd:c)?Ǐ1w&2e>V3K, ",ĉwGal-jkhzvH}$G>B@"osKḦoDVl NƁ:Ohߏ>V8=({*W[dvL-tla}]+Ma.*PZyͩsdD'UzO]hV ^gz8PO/s=I q5mծ`5@ i)q֘ F\<6b}8@Q#zyŖg}0RmĝyyWr =+K䚟w )d_( Q+s$QqOoZrۙѣfl^Ǻ{^IIW- G6i篴*<&8{U!=dU#,/vpu˛_WKiY[pQ+? ?]E,A60 CMsxn}զ;|24Os?#Mx^(Y<Ӗǵ)$Հ_?QhI5sө%LGB֊51uU8D*w2:g;DC~`& <8r5FF6zM7,دph9CmsFzIG2f#cSϘVFoo1VRkь۴R¯$&n'zq7eOfTD%)$>,vj]dIؼ]o BrHM=[&C1v 2B<w7+UJ:A }Zmn$c/tI2:Z$G(}ro6}_{\{V'c|3涽I6҃|/_^#UV^ҧ87>"8 ֤tO,V@\j*Cj4yZԌHiR&q2ixT;fvmK) AvaLNkØU8ӶM+K_t>-`6y/ϰGdzLW-F8p"k*\V.ko!a=^b5Odq.0PZE2ZbLB#$7ABǁm}r(ҵ\٠xDCtd1l.=_!_atY,oU^Y iIu|/*YTcFЁBzE.:+} ;xshΆ;pg9VTeHC_Gȇ/8\\*$ٗ 1fl jܛkV@R-v1;A_xG8q;oȤ/ 8 ΘOUh0IR2ᄠH'n „tTSӹ {X^7*ߚ6ydz?47IK"hdb6 inدF;|/2*X!9f_t0=/A` 2r"߭u jEB(𤢚9[2V{nfP}G1,*|>hYw z/NO=Y=cI+2{=[ mwkQt_EzÁIER]N1Dt(NcYQ&9JhP ˏܓF&&H)pl}*ۨ2(ʗ ENQ6;C|Wfp8$׶&E5N&Mm*6qrx`ʹicx4)H,}A,ƒ5ueZsH+EαKW25Os00C4Mgˍc҇ #aKy\#wBqN|r y | Oh!= C%ȶ`N̶7 vT~J(dU?Z1D=òϤ`IЄ".\<4|[, l~r8V v3-X6a~;.ToB{Z&JҨQn!3l[Q3E5^NcU2x'j! @xJF{/40;0r:N bFOlI0n[O^Hz玐ұQ'r6$?11K*q@`Q]aȩhד:^sc†}rc2fc9N_[}ܼitj[@l#]*<:qթGP1a;jM%],>M^W+[J7k2"ZܝDŽS/7yMoȲ'^N.a4:wHGA% $.6X+N6ϿE{MR bIf=߁>zP],6;h`Aqɂ@]ĘP8@<^ zR\i.]L?Yn_y슷#8mHKmcCjg cσ5S,LB%o riRw͐b~A;b=Ѽ<>ZV ah#m JCú֡=̄#7xjfdabVgw֬O}4$'a۽~x_;.NQS3w{''1>u1Q=!aNxj T/}&Y#x1MxB),{s_ ! rDEG|yx<`QF2o8XcfRzM80U3";E2K+nq~oa~gb|:`k 31bLW ?/1~iWgN݆.K'H2b7I6R`0yBr+}9:ɥ=Wܿ!KW~Ė2N %#8i'=΂8$kÄF1rń/q. 1-gT^0̬>Zw߄$ !TM&R4+}aYa@S6W$gRDZPKGgV+{g ~P*3&mbpXf~?gNl%*w7pt@(kpٍS 7Y R[F;ݹY6m|17ÓmY+kA]׉*XκA41Hy|.n"gq$BIsOٞp^qD㊇`o'KT6&LwtZ 7.\[N7Y;xv2v>Vw>t[lɔ,}GL/gqơQny}#0+֯w֍^մCq S7j76@&+FT9LW 30 jf`2(n^U[iajO5Gy>l ֐=p\VIQ\m#sХ*B*gxUV颒0Z,"*6oPfOzq/8!_I2'J?#c@fXr磏8n,wGgn,mS1}\~ߩ'AԠ{W Q'jhqrS* @=;᥌ZܲeChn?:aZe _ D]?xzז8"4nD7Er#/(D.u+ ӷdM-:D}/CDg:nOܳe ?[1]S`ƈ5*DM]}9hQa ]qoFZczzC>w[;" 2= נ|5ya8c1o *m> {Iq/?V%Rzl`e e{o99C9 y{8G>P Y9aKѩg&Wr'a'<>M%\L^1vᵣ>Fh@F]>kJ@Qň,(/r0nv, 0kZ|V-whJlc4 }䑯s)<UUвPXd-,1 ys˄< }aF+^r{J俚VwzOBX3,!1x:.8N -^0#n1}cYo59bH ?9_.JsT^8m-,tH% hz-=W<+O >!rӨMWY(^`<"_ʳ6ݿuyx?,In5B| +[Qj Ip1D;az*˹BL.{_j }pl8F~zHf5Bud, ꓿?i 5t9Syl3?Bq"K{7iwUh"("%K~*xɍSY?4T>6a|I)4k:MG'P%MQ=bTLjV\>[#,~d`5|X, #//.8DDl!r; wPۏ{^5F4@>cYQh"t2_C4b:y1I&PO5%h_S5"p+p3m7(>4HC Iφ<:!N̙ Ac@5+/>tϤ=ruHqGPF ѱup ^ a-@-!/KpQ/1Jz) B޻fD-7ža x[ub|T~NW=<áx+ԚQVH=tڰ%ΧGfzTBi;ОCN ;x4Np_ 982U[/oiDI˙/C8m*(H 7n``N? zA<{__ u+K-E!)e5cIRd}$[coꣷ+-ک+=TjᷩAP=Kǒ N:v8 I410񶵷I /7=e?[/i5{ev*%1?*>HloJ3(}O̡5fDj$KQςnYz##Ye[24I'$FfY`n?l55 ł[_TenՅ*Ó`zAٽQ}oo*ߘ@@d6$(*O<@!WYeIN g 8Il}i&:q&&lDo^/6+o+/T,Pe~m!}= OHҎo_O|^4ZX>t`4\j`M6ul4ʷ:ơCZ/NLl5˙Ծa%t,jAj=! e&]81Ɓt~LPC5 nX&'6Jϭ,4"My=ؕ&Bk { " A/MJ 6^,5|;SX].3JJLe,fMO36cs[}p=4+<< ]*"y4(<ۢ)Aj ߾-$ tE=R=xr};P\dWtPfaզ܂ai99wn ƷyՕt zgSH@Y'圅ú8'<0yk;b @0r+8+Sfu-&˜h5S 84|u'h^!;r[I:#5YPDXE38߄Uz}Q.nK)5x)[i^>|Ꜻto28b EUZ405ߦ=AuXWzi R}x/j*HZ953y!T恸ʛ&hnsӽ%n2c\ PEReE^3`rHYmFVh #ĕw -q/p0"\㤀A"#z] iч䌋n<!?nD:l)0_P|I< v[+(&C_\=#'=`ml .z"s>XfS&YG rDZD(k5/za ވE$"Cfc 1&5=hFDŵ3\k$F֙7f #qWVF0 ɬ=mznx8^Y=ʛ[cP {=-Օ(y'%%vj0 -:lkVۍ}_wVwF}}%,2+`SC9}J>h7Y>+mhz7˻{I ~ Vz;@uQX$VeSͽq@X&v#(zs" V$N~ K!|s 4p~|2J6/>_i8jhO& ~db'h:hh(M{N>fX2eWF( v n|kA.RR-+~˜PGT`d㍡D$y9?lzAՅxw<LFHi?_,d|KO{nɒpMߍWYI#]4HD5ji|xLj\;,iO-5kd7EVn73ٍV49x6NrH[pMܳcHBFIy3V((ID x+8!5IޜClQd g{H&w k-[i@Y?=gz- ck-Ed$n!wĂ}qZ3^oq]&q6ka %n[YGq ] X:ccU1T?NNY.K̷۳ ņ,MxY Y-dA,цP_`P4z-Ā( У4̥I'$=SBu n ՛y=I6L$6 K= UW dZ{r뛓) ΋uHE: 5Oj+ںUW5V\<:ˏ 3`ag0a+;Hfz*HIT5=V O1~?0FokΟ O^/L?(yIuMlV颱!*arN c(] _>XC0 mJ4кƯK ܟ ?^ֳ'ʈ3@PxKi')wֈ恴oDH*f@yQ#񨺔ʉyL6,6(C8 :Ѐ6wKeBU 1>{̀,t9U(AW+b1}'Ze #(.8'sVjIܤb[ {BnZbbÂWvcq TW]E8ScVL֊ਓ^dVC@Y5d9}=<o^C#RfD5 w:H0[a[Rr Gbs3(@'.;Z(}&(rM폧z>h zM_/8[MF"C_k|;2s ML>%A^1ᡀ6"TO4qÝrYl)Xsb)Ztz^eǧSۊeX |A4/P}K]gKjf2бEs[A'yT0 -/b:!AW󃵯0 UMYۍOHe*Ibk4 / aM: /M!ES`2#3R>~ɺ>LCt SSPdi-p*Zٴp'? o%?Zܻr\"jp Fzn]}$? sg-~%7NώF;FUu_g`[Z&p{{JNL7 fo[OS-w!ٜjcth:WgTmJxru{- >V& }/^=/881+㪽Flm{B -&/kBdo+ vl>yWn /YN8x4(M)8#׫wg@}{s&tҼH%!'W?d~t2Ie?ڶjLR$9Lg{r*氓{-CM9f<+O3N =U#ŰyM/5ZG;N<:sgp 㐑K1"wdJvhuՎn߮ϫ;$A}v )"YTMRWmyғL=sssJ)@Jփۂ yy͆I<N﫻ʨ0ʚ.R8_S*yUd+BtJ䲼1ɦ !zL1mi8>^𙞢ESq;"z/0…jYhQ'ۓWo4灮qhV!mWVI'y[xDfWdtWd˼S+Dp/X ,bMҴmݰi45u۔RA3yW#aliI~+:1otq]Q{3vbꃳ̈pTb(`-EkX2YgvZ 񑄉!;2کb5/J 9 l<5 -3Dnhe 3Ne\IwŇ)DD(W`Ј|Iu]76ꊵu+ 8|eAGx͕賰5"ЋC;͸vbR|7)foxÛ0YB7jpNS>HCo=nX/H|><5-p\l5h} tݗjbN J!@Xu"Ac^w'=]:j79Z=EH(HO1#X/NXC|3䴩r"֮bq#]x8i*-Ժ`ل1,L*lӇ;A^%5s2£;Pɋ 3-Rso=Vll I[ჵG QckmH-#uCk Vip$ܓ&ɟ-FzN7=QMv fΆ&^rf|gYcWGTf/{" DKuO|rT_qzvA\9ŅD6(nad͘n9!XL@9^ 7\!SzqC<霠]pGT#8ː׻kV~znO؋eYx )cvsi^9~f& xMrμEu&*x8tK~Ύ[nWVӞb2yNȠ%gY0]6]yTEдlM'5/y} /҅Fƅ~# ƽ Hq#ػM.#G)ܖGn=eKO0#Eja?XH;r$wwpkqlJ;=O[+kpyI2') V' CoK0{C)ԴoP(W)ʺ4ގ†Z+-ǘ ~!f3&T*y'OÀ*6Dk|%iEEO+Sw=JIp~0*ޏHt4)lC&83D:0+̬W$xZ*jDb,s<7'bN]tӴQV )1#'b8/eؐI`+z78Ta21;RH[0"Wmk3vd-yco"tT( ]"!pl-( IBױY):y61s0\@[MԳGC%T)}'gPBnH,$QM GܙAW 9mg!- JB\$Ԋ_"{bi %vM:pu Au{B5a%~É4t6Еag7ʮԖG?Uq?uĭmlh+{8dnK uGH1;8dJ~d  ¨Pcq>~B"o~l3:(cgixepZE~%z=;k^/pU҉ce3yH F+䜘. p1olpSI}+A` p4u;$Ϋcy=Fc"U `ym|vZ}95!U;qmh\p厊Y{.VZ`gɉGOwsQኾ#ƇJ=p,ۚyWџ_1/iJ(y6b!_TE_SP㈣ ЃS)*㳱oy.*g,5n \§O#!Pi)s Kz,WyҾ^HZĊ:bO?x(rQ$VuCZ4XC7*  #73vE[YMq Y+5 tEz卒%>vӄ.tIwaEw+3##i"mì >a@H3},4}i`9bz\(@,AJvp#OS^Sp]$ma)!97 LCO͗gaBB(l34[(60r/D]z /@e cq߉sU'߮\r.ֿZ_TxZ?Ur5AW^!9Ֆ-[:BK~aX1NT6.byZVYmmy% '^=]/\R׬`#)rˤt ?4 ޤy<h3s<"ʯl&'x`SC+w&(ucM F6>aL46ae/CׂYϿHGxz1հWi\ƁkZ(49P#,6Mge2}-}j T3H0Gpv^1ug\Su$ċKQH B#gٴ*`\gaC[dӈ;T3N5WInZInyp:[yڨ%X}Yx]hFUE 0aެXQ.̤"Վ-Wh-ڕ{M\-oT ud.s /4%ۅaTK`+8z\شA4v0:J)~*I?=Re|r4؂y`RPR1k״SRisݥ\/qlTe79M @qkUoM2 Hj&A* Z BebM2"qb]Y@ қ-jHQ.TIED~I^Wci{w͊ AO$2JO *BfFfHK9Tڣbl_s6K0$9}qKݶDRX1fuQCwE1~YY~CT|Ĩi.V~MlYzHcBsGQ h u" |qb(wê?_u* &rKQY`~HUmbS4E]l< xxbCl[Q+dkN Z웄~rz 9lnx$9JD!stM?֥#Rɥ\ЕTOG5* ©ږ`[0n9fm$.o۹}BRY( UIĖhdHSwD_ʠ1;W˷R%2k^vԥr~ˎ!k\"O%U&8b{wə?4YVBl6jW3jfܑ]B{Hjiݜ *^c娫7 nLQ$D+ֽ ˵npN<ɌBsyNX5'qVe-+@<ԓsWy kp[3{83Zc ٘CYwpZj^ ʰa")0,ZDP)P`yh#?ȆԹ1fWCj؏^JO#h*;#$˳C05mР aX-j[sy`ݐcChll~S_!e yTW}I;5ڒ8#z4{߀\Hi%! {&DŽ>Q(t V"TnugAt >_sҖFqQvxQ{u1Qنﳱ 0VDEp d2u:jiq!xkxNG%ißLf5xMmx嘝W1ct!0GJx]=cRbN=RW#YY&5u]4 *ü|ZLi Le9W29TCFR&߳XkKU;Q.ZޑWޟ2Q{Z<+>,3T$y-഻{ۖ)Wc^b2܅&_-%hln2(^p&w9H̦) cNi,9uR4 @0m7 H A؛pwQ U `1b>zxv(2oQ*Gob;Um[̛tb(#CqtŚ~ד~)ۙb։|O|daX<:#У&QN?B63Cd^9gQj)]&$+lI*s9a`槞:n(6IN ;sb!4) <L"P s5d7tf ̋H(Hb,pfqҲމQ9/R1J2ǥw3p_fb6?0&$ $) cYӻJjyߍ3jBAF!xg#`^(T6e1 ڔ "+hʫ2أ| ckY ?h0|;ҷrl1$|/} ]a )pr 5e|y**jeD9L؂~5\!E43vQwF}hAbt]|"٬?e{u=1h~wƢ $6˃{u ?a0FtQNlլ d(2X.D֌Hv f?7'c~Mo4yAl4i[P**H-Pz<:4tc63M$)o,z23?Hcm`)M]a1/ c ].3SbH'͛A9CP p v'2hs'!>{/g ak ڻڊCUY _:zDcћaoΕv~3' )Psxļ67 %Sύn /wn ӆWtu-rϾ+n}.Ny'O9F  o0<:e9ST 0 LwwEh$5lmuPqG8`4͆ JHh̄aؼi>~6wpr-S2S-O'a]nPrAEFr (8+zsg]aD1^ۈ(#鬖w}Y|c:l[xRxԊ#U1;/Z#erB4 |Ш1jmdŎ}W4ZyԺ9Ld2Ql3av.)9Ue-`ǷsJsa@56XR| ?Æ;]?*zsmSK|N`fڬ4%8xͻO|bG4Pդm8~% O(1e7Ype lYeq&u_|AzXhL>ɬL߯4hpKrVvev"ٳCYo<8/?np=Ӳ EU:zn r՜YeƮ"Sjk'r{yXa)%-ENʨ8c{}*d~~+ 8odAhB 9gH:x8 1房ba'D<~\>D6)hw+G&(=BAXíX!xlO5O/f_OoGVB)N >^x'xՎ"p\ź֐' 6IAJP#o66KQa.'?xdZbt Xm.c|hI=`N߲}=×]])5 q"5~̛UZ7o!$c0 VR0đHK Cm~W[8ie6sd[M -o`.C{:VCfJSMmZOK,65\ eU~}N\}ʕLB; D&纜F+ǃ{LL!jF^EQ0b*ʓ?ί~cwQ pJ`pCErsY%PyDy6ҾTɯMl|xe|<;QdǾuK9qzhG}:Ex1e&(IsW+ 7?d4} ]#e$JߜՌ˕-X~GN i#b=Uf0Hp^P ]aё:g3rdIMq<:i 8ʓ4i/::`*!ںTDZ1mRfL{H(6UDWfJda:h;],2i+argJTij]#Y0rTm8o-5-% VU`.npc'z閡=E.6E}5饹^łڂ$1 ŗz6߭_iW\ϛ*- .>@~Us~VG-zioF𯞓 l+xVmR#>%[t?O2_ꦲG-";%cz8mpӵcvp@P[Sq#^ijaqfYF +]"2$,s^"FDҐpDՂħ6Z@wb1YRs$'bKD_: Hh, L4/;4>lcYYeq*jL+YnDMҞ@}jz ,S־J;ҫXdoȿL\4Hޞϓ@mRB7_y*O! @mYW[" twȋ&'( `?34{jA3 'J@MkSr~,H_()"J{l-n^g q0 q3?*98;3}Pժ5]  Wx(_X֠?6ɮ0yYla WF]b t+f&aNAgMeƦԵGM<ЀB; H/ڀ4qw x\26_]MzzIv}Nڃ"FR^^5o?O\G#Њ?܈y}m椿&wfzu1UASZ%ZRfI E<}NfK)ȉwXeI*>qDJXtd ȸFH\倃&kWD]iG]+C-ϔzk+ےۆD+:,JKJ8Ïw&PpB)eiM@HwEjZ'Cӧ0em@[Yч;O2O.v(y![o߻:T<`XMߡVIfRE2 ALR{ J!6"j+m!hTށ~[8d!֠)єPB_s @ԋd:a09vءV͛ȩb<Ф.ijzll.o $2v#6aMEFp HDq (?mZon y=ٞz+/x1thV47olPdb+0/>{RK>OÎ],xno6[AR|亖/ Q.AgO沷ˇʝU%ܩ5/"1q4i)$F6&z 꿵E?`pS?9QX{N1h <4&i~:nzjkCܖ\cL=@o**)0+QOtR`< < YjEަ,rBW`tWVCg[:Xۀ1"Z$,p;t O˕HWt8~2aP # f]^]'kdKP_"`绠 o@ί“y2ۄ3D ]e3v RBt=qE曏DՉe# ? 0EFFn%^^AdVPIE3v<Y#kyGS(r9T4[w> wIHX Z4Kd$h y.ImS/9r_+I3w&H9<23&Pܵ@Ս!7bd~3p0ɺ6:A%sq],*`$~r*ǓÑm[rV 1{tv-=}qkJZ%Ou@%*=gZl v`}#$+] ?02E#2$ zˌ#ʔB/W),FqqK+Ein5񸯾( ѫͺ!y650hL΢ѼN#JQ~t|6q@]ayO(!d_aiFAl6H=ZɚaBKYҺ;xx޴Sn2V];tHo$X/c;F!@ [t?{ƶux0mu~4(ʂdʥZ2#H<~7K1WXoz?AǾ; bWQ}cHših-2++LyRD.#Rsǰ59 kyG tpXj<[ j2%JT[=ˇy e^DyWz/;Ɯ޳ B̎SFZMq Ju'J56{<ٺޔ~`WYL>,2*w(-[&-!`I.u>җb^L9x: #|'WM q=ZLbF弶ip#OcLC݂@ʓdFfcnT>m^G"!q9qܶ8žq VQR֡eĒpwѠtpX=^Hv`xNC^k]J mp1Z[<^,O0|n5 Pbg/P^Ɓ|)*?V* UI3!5ʕ;О6ygO1!hpb%9$^#J1`a~SgRtUϣ&d,M"4B-#+@&GWk7C8 rJE͢aKi ViZUN9OZJYHa4$ާUE{Ѻ${f VLYȨh˹d~ P7΅~x,Ѽ=Nv ]|SetMكZ#vM6kztn5qEDI:fފ. g;eO x%Z* 3.4p6}XK>@$Tq;Gd:ͦ&~h12XJXy *|HL*+pfCR?xa7 ~yķΊIhOwCd85&tJhY$i'I/850L1Xq~ =hU1hf޸xr6P -3|RE˒R0 QW쫬E^,T1#בlmT?۪#+\f>5HERò:Z p7dzP`1)hZ@lٸ[9T[.׫ԶI,oح^zf?0쿿ڃK=@P%y1֤-; ĉM];c ݈Iߤ?ӁrMQ&E.jC0tnK' ayh G!=XERSu '.Ό4^d{z$஋|-6hh{!*YA ԕ$f_cw:N¶҉G-jO{d H j[`oIpljw3̔Qsx +Wj p5FjݛI.CEKզ/;IϫzPX Ƨύch"p@ t)ڈ O7g!<yzeΖz㕑8t< xNɞsQWJ1nk @QB@'͞LK=.n0EiBacs\JM\dCylC#13B=c)uHbrM*ں2ۡ5$zlm➨Ŕ&&Ƚ?"FC=-bZ4~jBEX3\A^]h}gL'cXZSǜXrE3`rBZ[߮ 6 jMmseuߢ]HT8Řtgz6ѢB7M,H R@u_M]G°QgW &AqNalpBJS85=J4׶Q)B<%0.RSZQH!hBeL434f@Y.%2޴=m<$r>z!3%ќR0)ꉡ 8 { Uew7SeE7S:Ғ9q( dD tQPAm^[ .쭴aS-qx3vs_X&X1̐ @'g:9$co WH뇚DuJcKv4bw] u+#E+gUJ{!J ߱Nw*P[_ELfaK|(Ύ#%uj@c[+*啹p)1F4.>lbx#vUiIBM3HBTrz>pK1RN켑2SQ*K `19{.0f6vJU?,T"ƌ@Ԩdwqˤ=7p @y/Mw*: i{NzUԄΒ}z Xv T W(KsVQblLR䅴& >>Ga$M0_ ;(.u>[Y*Dln$MoݡD\1`26+O%@ʨy] KodǏ7,$HƠMl"[zRLIΗ`P(9: ~+׸m/׌v0 YyFx*u0n?81]VwWPEBڜ$#:{t* 嚔dfFVR⏯)QcŏSNtc.N ㅬEr/zmUGL *Urq\݌4iSͿD.4ƄFi,S<.pY:sR|y.wb)6D5=8xi_۵FfJ^x@yz[n1S<*:yQ׉AL(}l*=P XC&Jg/HAxЉFR{sFޒa L褈hG=]_l]G~e"z;9,sPn_ ",ج&0Ijޢq^>+ح1/2jǢ_7W{J ǖ/F: )i~P099*$rݧ'q>C_~F4NgMtL8&pDZg%)R!O ND+,!wL&iA2xHmS@LI!4W9(+λ "-3nqFNy4$*ڰ)B),)zzpv„fS)jMZ+  5x27y񄮸7)$ Otg[ƱQlR'.N ClY`!w+X\1)JWR':7TpE sY#'gAcݍL6Ъ.dv^dyyB4Y~qo% +Nw-k:b2B|pDؖM3(VΎSƄ7ˎYS{b#i_nNۻ 4JH?1r0Ҳ `rP}ZIroĆKAȨc'Nfy+pg߈6!^$Dvq|u4<"x;K^z91-ɫ(qv5t6$-3Qhi)q}tZJ*PHb5J\U2X5N"\0O;JuFx=W5(zB}ݸ j6_t8IlYzf:#WFhhhԍEv7MNʺO:oh_uUɒִEQU{E5޸2^ 'L BbGT^I`9^J+».C8yځZ$ml' ~L\t QF-$ù#w,#&f7()˱%@)>Q$tA)eC&em#?e՜da_5. njg›dacLg]LὁE̙ya_OF'EU 7uobTz3< .84,:V%w52v b}BQVZW}ENHuk".-<\=ELwYvvHbv.!XPqBV2z)+;xT$;D6> ZE'kӅfnB8X/(yjdV'[.ajhJE`I AMӧQxCI @Tw3h{쁂J[S('#@R6paʋ""{ =cceN]3ipMs,}s#: 0/\8l&hYƑpT#I2K^ ܎~L4\&3w0: IL.g,뀡O1lU뢟"B*n ~y$\%--x[C!"`9}+hfaMaXG,_T$GINS"//$ppmut+$4d>b рJ4#V=./|Bڶ~7Myyy՜C Qt}?Mm3Ax~ s@W6;ѝgи48ONJΠX`D1-h;*kB=a!K=VX0T ,0¤s<^ͦ4+9Dg,R|,'^䟁VG[3; `2ⱯA9&zsZk,=:"@P``:9 Op-~4r<3AM.M$m9a]*M8NV׷\ $ f決+֤4".#UNM2W o+TsX&(=Ak._,['v9:mt˃̾#oTb7i8H޹}D3nhO;C ~}fo6?"w4WZ3vn]hMOKER,nګR%" nSDu;6uz*R r[Wtv.9[6R,{m~[n87\;  kg( {u2*UTY00p."hOc GD9"eJ #J)#H7F!r H;GHt>ܿ L"(` Zοɇܚ.`jV@6h$L%1٤9,QV>G vfUy`.Ӻ[̣ wZW+NbE-kO9 a&#pQQZn xM?q+΀S908< BwUdZ'3uAQM5 #Bo@$S|{v,8\ uBY y(I39.U@ľC7?4 v^~,0wvg))rv"M 5/ǿSr3ڜx@$E[O\m.ᄒ\@ڃ|hh8_)Լ]NeѲY+ wi(J4tl#n[auܷኲ ABq`9`/uQoNعMCXhȽ6`3, i=&Ly~C6ID^]E~ ~8n; iH5Âdt)\7p fNjm(:t5T@sk4,z1.Ox~;PA-M'?<ggMaoyS|hr0H CWϲDW59$\rh؞R48M`+X{g'Qe\Q_%q"\Lꂤ}ձ^/Ux v ȏdqBp;zth" ]Ze"NfZA.}oVWwI `$jla"j ]d[$+pa!.vYEU] :gHY0HhS\`'kdd+Xu!fJznKaK mQ NVt2q}Z` M#O=p~K35 C68 3W*w+R՟u;<4zA_.ݖˁ5*{Ma,nC }b9x3O‹YYŞd \2$#=mTvK?g8>-Ix9w/-"xsaJ$\0~:g\OvثmquL9\| o{:P/.rd 7Ubx*t;`T{},ک cQ牙K>怔Thf#;Bz;\: O7v~>r%9c)GB]tVRi%Wk!gJM +kLP"Q1T@WΖ EIgHBipv.ZH_u,O, Q6;jor1bB<qǂN5z߮)h%`GJ?m 2G @ř\3=. YIͷthh&}90=0[>B$_ì\'A=:a2B"QBч*mOG\ =1)[Ah"%_BIU(;c>DJ]IDwmJ~ R0ƕ%B w`2*&lȶ/2V΢x]z{2Yj!lF)tFڌr ̠[o{IN'.|UZ 1ԄzX>lH;FxƦK@ 0/{yJ:5{e4Aˋ:mL%jZ`w":p搴}%lgKb㴳zL8bɨZvOՂ!Eۀ@w]􎣹ï Ho>7is ]@FS3~IUfr*.f X}qR +WMq) D= vv"^IMn.ï^e7=m>K?!1\zȺ4yF/^=u"eG '~&PՖ56jnU7)>3t\" W>lõrz P(ƱI*9vH,78@Z3 t,*6]3m Y9xMx6lӵJispmO&'+H {ۼ/G`~#銆kV/eKh4+q3zKy t+NVG~FN'.*T+*ʂj>6#:K!k& 1І2Y/Z柨ۑ\fkcwvϙ_~.2<;_aYf?Л@QmhYEW Sj _Au),@ji[ƽ {Kk-G!IșC#!?/[W!P~'kpFn ,m$(9aXATkFccZxOoRZ1 4Ti)3.VF]$-[a`dGј([Y"ϟd˰RO{ѿm\N>xϵ|w0e`ƞ.K9074ƶ蒪tH+(?~Du߈`+'*f.R5,FqGi Dv,g2b?\bC7 VZdҖ'fKwKB-țyЈ"4Cmp)/2E( Hk,Bhx1#DOđ?cS)}hQrIHX`ΈWd%u>92Zj)T :VN>'suM%mwΙ U(x\\{WF^Lad{5騼⨙nET9P ZQ?? z/ڡ_2JTMEG/xIӗ?zGڒ$87j%u@ ?Ov ,ct⩙֛(KpS!W2"Vew䝭 !GZdޚux1'.l'>q[*'7f7av6Ul svU-ZdQk׆p",s| }˂*eJouXa*Ac9N@eOmo'mM|jsw jH#z#I&9ʧv'XDTs}yi* :JZ K|VAqgSY Г/]hAi$zfqM wp0hiF n7 gM:FJv}`K}tZg~v +TVt9}^Rj,yp[ A.ԀNTc]q{c:gc>Gn$Iũvelp!Rξ`uZxx$S=mޕ1F/B@j.U`űkXopx7@uMs,MY 0JѪBXsI}m٘a0#hX]h*Kb\Vf߮X$C9U݀?/p1B63 c/ D1ZkyAF1 !=0|pWð'dW4C<vt[K߲$rtw2 $SF]HoƋ,54܏li)sN. 'ćsOmC)c䤔n(U*37X*rnHxo ȏ=?ߣQ#޹!3/Kv [ 'K;T[=f|aáѭ"TTe;̌q?3B G펥u Mz&'!Pz0H3#Kt֮,sDH8bvNay[}l xi?& Q.j[.]e3GQ? _+]~&!(XOyz /Gx@4AA ,.tt*!"}cu#C :c{W! G{F1_3RzϊoxMUe =h!ʌM;7ALR%U2+DRkXJ:01$u6jLb zs>Y=Nqz?yX2mҮ#%.n'x3>f e2't5 g z%SsNuޕ+q]p.^4q)׸;no-茆se,+qLDG¡g,k!L?Uܖ6p3|3&#~捄+D>` vLS/k3&?U6ݺϛzjyL cRےʦ <%D*ğ.zn&M@@3!fl𴿥=㲩yk~I=-.eǴ#Mr7zꊎɠ"xoP@`<2:w7Vv:\x?w5znQϧzpW|5;%F) ϔ$tU2x ӷ ZU"Ӈ >aEx*s{vo4+%jE1 izھ6҇$`}FcZ8 mDXg[W{YC"|@Hh<&lF7`\*/a=c~s mQ~(PU=iх f [SH0IOwFSmn!rí,j5m`mSPڤ0V /ѧ82Kl#k|ܠPL.3{iA ʭ֣w${@YQ,wV9Z-yJ7; VXmt߹Q'`t8X-d&@vª~ ׌b-9=3[=ED5#=G3NVr;2}*{d2 ҁ5l+ ϼekKcvNkM80O{Y>|Ⱥ&\6qЯ%371J,%w0 ·saQ2Tw>+}DzMZxʳ(p:|6b-vG|- @٩`6vFGL*TK5**Y~=:K$(9BA]͏Cnߖ:湮h 9K=%/&[7SVW=g^(SQB9<Ef>M\5F.U+Dqgvk3 C]< vȵl-DB>րj&@LBĒΙ~ؒBTa|ٖg!,ymd-תx]˔DjC-MVej<^&uC˭ЙJWe ߸FoW9W&(sF3/juLMEiGZՂ]+pՐUO7/[ƘR*>c/$nQFA{MJ{ͫ)%uOO'&&!7>->缻cRJfiH3u[w7b4wi^ fJ{q&S/'8o=$Px9K#b 4f@be(ZgSm&Cڅd S˻5MU|麴t*MCҪhMV{ut0;d5,\kY?Hivf=ekt327GtR<atiK8) VJ7ЇrF=Uarw9杻ܡz^*HyScΨvH&x5 &$|$ҝۨx Pỽ܀3)OH <{Qm7{:t2'5SH]Y &LyOo+ZFD + ԔVÖ'YQ Ao$.ALO нE׶U>C1jP^ *뗹ГYrr8.y=ihLm#oN{#O;<EG^tB-9TVXOpXi0cGg}+:ҚWȾy0 .Oܵ]X^-?N`~k$Yw.?cUn8W}`$/8/G$|%%FsȫXX PWA%etZ3PO~.}ee:1w!B##'PP2?_Y65)M@Y&>~6ab.AX0l -UjQ?. ǤW~1 8+楎v|uV& _V'qͅYjk=I[n)?b*'ؘBC#/T4abh$CTU& 0145NOdj#!&s,qqhe'AuOY]a&m+w4H)8b"!k(aUaV@1+KW4y74Zs;X ~{=^b݋ܷjuLթJBQNW0hS[x-s465XP2-YLe=jTHPɌmPx:oSLkCeB["X5RNRԠ^8"fJ?vo=;L^"M?#:hʧ < l6c~;gZ|DU< /8?C P 9{ p_mދY6Pt; 4S5ޛQjvO $6pwqq_hrʄDt]NlO8 q|F?kqhDPyB䒈tpkfhڊ簱'hbGh"gs_gC 3*=GTEXfhA 7fM*ʮZ-s\e29ؔ.+x^`ﬓhWh~"ϘXut`ٮd ?\n"µО ϫbTEy/t੦fN4 fO}wbv+u.'cMm~-棊] >v%*,!ѵEDzhǙc(ě! M?Z_cv/^aUy+g$dX6n~l/Ahɺ+'n&#M&zPRj3kMZn5'dQT1b1Q a02LURmȼ 15@UBMvԌ(fv3^Z$@ `.[{>ʤC}1cފ{Oӛ)-# W}2w<s+#La_M l%4\?Ō0yPG_qz3|Y"7e !JG=rS_[Mf)fcig4B5W0 Ʃl`9"bk&&B8;ipWD9/ =E9sKr VFx# %'9#:RPi,啯$0al) TWc̕<aah( ,֪& QҒs*3U2r|TNr$iC?3·Lt Dbh g.8&J[ L%mNX`uyKY`5/f>(HZOKPuRM\YKG]w2r@I/@3Hq]/# 84y{zig}J++ ,.Q|aOnOo)kPQswĝie V R/Vc Q|ȂT~W5?$%XdA9y͞9VBOGJӑU!ͬ|a=hؼb<1qp@eL$ ^ wΜ,Qb*LUz`c!> $)6Ս~Eƪ$3uO,lVןl㿴V o}4|a($2]Oƭs>=4{XҦ#.}(\J[%[9GXl%&aC*rfT'3Pmh3y)[d22]44֑,FZٷp.ShX-y\Fii?nW1eGe]_7,y$$<,+/Pl8d v!w3t W 1ǏAdnތ2D{KG̬\j~V:GT#3;gB?(FBJ%)E+'t~"e4&%3(bu//Xg :z2jIdR RLPm}JSY ֡qzzŤ?ͼUVPA߾Vֹqcq?R|K̅  ڷv~ O7ƶuIQIL v9Q Ev/+8\ j+K7~*d`5A(t'϶پ*vt2e'bZ yOؑ 62 Uy̢C^[|ɮ2^"DŽo^&Y7m zNM7&ʴi} 5gy@Ei͙2海(>!U|/- v~C,B d"_pTU!GNmE2ICz. rVw19 ʂ}Thņ?2F d:śtf< t4vWy&9 jUy2Bʍ$i[iM:Нza ;ᶦ$:CʑByB!O2ވRq{Di?o [8BE2MG2H3ղj% Z@!.FXrTƿg03{/i"iIW̰^(Q#@!-Q`?h0Zm#lU|=g+Ŀ2\2;ǧG& t!LmT5N/jӒE鏆M/tO2GHR_ʙFYR'p^Aa{#"=e6Ckk2l[L|]$-pkM*MZy=Hm` ;ᐤ2¼pMiBngR[x{#"aNZӬpiWiYk?qN~ntˮb 9fM `z0RjX*e6W7lQ\ط/6d@S[]0xq )sӞk[sȏpl|<p~MDU xh`i}zT.G2T*{鎤s~C+rṱb<;deT=eoCb;KX*g;!,uACIc@NaO8}gۜ wP(./xO-R'UV)3=f i-xc[+Ih}KNFgMNn ^>ƈ++$ܖB ;& IQy'@wCF2ts<bHӤ;\a9'5+N+Ql$f0(1ɂ Ҝ̛*w39ҥKT5F^pз_j9Lm-C][oZ5RְJ_>z?(kVy%.>shB|KƂE!< qD5HDppM?,ɠ}DɶR n%7shLkc ( ~\=&ʼ%ut0a2yvl kCɻ*[LMoP6O?}9Fn Ӣ6"+zϻPZ(q5sʢv Q&w 'Pxw7􋬽R[[Y8jRNiQ>m ?vsМ_Nl0J?8ַVdFY-˞9A~Tį~+]VP;P6:F!GCR\ -%2]~g1@#=S8]b+uXr_hzţegC'=p E^?y*=aPk>6Q﷎gS-m&!3{^( LWĆ< }mn3S5j+RytuR\ dpA" O%>$*]%/1+ac&E^ќوI.9 dam3of }m(u{(/d0H>1 +F @t TKwiNoq5 B9@/8zÁ߸f1*Mf, P\ ^ON:y` 31b5G8`c;b<9KHW`'KcU޲!ـ˫|qw.hI`+yvSvlЃWv,4onף z YJn2NbaT)ρou1h %n: |KV<~[xүUs!l #48uO >HN F'XvuFku_0cY b6_})r}QE=w&^"9!22J"YK2.ziޫȃ<[ȋY[D\Y \`h"][#,&LʄZ&q Lʩ=ˆU49}`,]#"S}]pGf B{.!:P-- ߇lV*=\In<ݒҨ񘾜 odTGLrK&Lmkm߹gU7;Uewia~D`|71Pu*럖[*xr0*>4pZ J˧.G~̀! tB ʊT]}V( c uȷIA5YMuFtyAz=<7~=w6Ր~6IAN9Q^ طbht!zbVTkѺd~(뙲pڟzOk/CCiR'?]2Q\KŤoI'Mv?k4͡SaHCr=.x56{w9rI; 6֚~cnVHekT6I0.""G+)Aq@_eK5g)id߯dWC[*Q[Zjl[JwP2UR?A@JRw=xfP2eByS l][ry]:O _Bӊ!vԢX7Boƌ=e~8_` t%!YE( ,h$#.Ʉ%{)K; ՝Ͱ&R4e<ot+`Z6ga/fGx;(?TrҲH&0~aŅԋ/sqZi3Gvv)4 -nbN4@nsDZMx7DKzs(f0'[.k`pWal-cT#_jw0ςml~PdŰSat #lQXdJ)`ey[3b߻jM1sFQ\?7H33~s-ccㅔV2 .$ sGұL =k0Y(EDqAk?=/yo--ZҳjJm<‚m׋2aKO`2 <"[^'56-2zn+CNTm+p/Y}{ͿDkW(`7)K\6XG^JbKFTfA:$%3#zvZ!znW5~A^ZKEν>(` V0< eV($$ڹp6vJjaeE ]\G,3,t {-;χzb }wG~ėGR<{T?Kζ尙;`4 ߼{! 2))UR2eĦ%4㺅B}P3`U1Fk{>Xוc0įKuȞeE!hzs$vW)EGql{P[3BGf=[o?dP汅k} E}#q{k>^8D@jAW Ý1fL_=5N?=݄?/?PC]doZ+zL`a2|oAQr;0(?$GX ߐ :I;-}Nt?/#]r{mN7q]^2PX HDY=Jtg.e VtiiZK{J)E%"ZzjR5H^na!^Ybc!x uCဲz3:gcݼ49\~Ѕz P u|^ɧ1ONoς LB{Uv՘sZ농61-k#L? .? aǒ-ރYT(IV0'4xJfxgd VTƣe z|1'tTG~qd3֯qP%lo:CSb|HdOI@'UV}T"] ʱ|O8Jaoz>[,NI fX*K P̕`ȓkY1zM}vh{0| p;nި,%51DGE9dt%tWu%Mu{#//Bmu?]6E0X`Sa]Յ"!.c}7 lMMOtKŮ&d;m Qc~pOY OZEA)}"sO])-CY{#= |G &v7NeLC616h"5N ,/BJrTkL-7=k8&(uk{R=䞭ϸDALсO}S(t0+F? iy04|;>$̪,.ہ`c_bbk<x08=jERTziB ^Py7$YfYU ٓ^٘``H+zHر}On <&X ,TU5&+*y|!3d誔1f; h,A !?\&QP A-W?KV/r95w giK4*EG5xO M2RDq*mv )ȧ .bzʭɀ12tJC#I.lO֠Jν2%pO 7m;:ghH|^uKoʺdP^m~r:%6/?bBnkleG` "=_ U͵élܴtGPnܚ8p"c$eÇ1VP[ѧjMyT\8 5fpk=<O0Uyd!!K eϒ2i0< ~!qM88BHDɊ q8gv*o1dͪw" OGǮ{CSzzgf8j֝}F~dzԤ~zZm&6;<` ۙ|Cj-1 lVWЎOF 8jKe;v<%\NsCyO]Ț6 _ކ5\P\vS=^!Eӂ6yҜ8U;g?G:HqXZ\^Qm2Ί`"nƨ v[쒷L :.>]P bp 6~vfyz `~Fdy9d2L% 1^\x1<ױn*AL6VȄMc}ĖtA%/c-I`OBC6$/@W\L.2g; P `*S"3\O F 8@|+2}8:jnK^ND7^RN?*Yօ’RwT_>Y;7ZXB.cargIl(/|]L-hs5|;m1{:} .ާd1ح;;HcAFW*6\@J`e*sD < $w"uj2M(޿˞\YdL=8 v]w,3f?N`j(vorj"Vo]3ʹ) kc2ax6!w< 3 qԁwڢ k#}յ} =n {%V$^7e߰,u*6(LF1$RF(}[ MTJڮʗk^Qŧ݌F,@JA>̤Z+z\Շ%@,UKFB!:f( .Ӛq9e?)"&:ຩ"rHM3[9jʎ[#gFnPpm-l;d5^ކgĈmy}"A$cryz $hk!Zobs9r. O\ˎ(JTi!I*,я3UqTo(2/Տeĭkc^L1V:% FYl8~MSkQ R>W{.lB.gG{},w?-}AeGuհ:ͨ0xkF%Ǎ~FsTIsv`(N9CHF){7\!1'g OR/k*Nm5!(L(Q|~$1Q(C) aQSyByȾCT p(H+vK= e v*h p٩{& evNo[F YZqq3:G8=u^0诨K71Z!~[n#qJRm$LkY]̜ap=ҥO}ܑ+bQD䒋cFe4Gnj+]u眝^ݮ{&/B_'~tj?l&HkK6o'䛊B 4)D2X[Zܧ6Siϱ|^k*Ul eSv/\y8kW7(@D}Gc|8'N7 Z k,Jn>JYx1`;Jh**ء; =ƌk-e"ѬgiĜP/>⒝d$?ĦgWk xE_P{J pT=$#_:I`YD<5ZS6Z(U 6z3#s ^qg!)@7f":o009($$M QS9IR1Pk8k$0b6{w#n-?>vf6B4:Ӣ0v`W C&O,R ]C3fH,JМyfGQQKGg)ү 0ldK\vP>)y%K\Oyy2ڤD%.1%k]_yG_"a S&!%JkPXpOc?-=|BQIU#Q mYhKyΐUN78}K?i7o}N_u &uٔo+_CS(G%LVD?8]x8yk#FNl}ZUÙPڪRۦǦ7r 6d״tg1d"B`牅 g YIK-zW 7R8d\ 4ɀ"Tx%'PwiX&>SI C@V$ RiI':3Fm2n'{&77![^$0%Bc|K eGypODEHgrԚ#s}bj*9 ߩC}Df$^E٣͗.3|LܯNc $5 C{>:NYO!'_GNXD9'x|yErR֍[|M?S_i>օNa4mI*kCMSfH| q- NC^ n#❠r) \9myCHx^|l51l#uj"n$`v7o D /KxdIvAz=OIi jFCbR_ }(F n/#E_Ę*Qη_ U>7+z/zc-u| 0ܷRU5ryDY'6Id !PYݥOUwXQRI]5۝wKe8}YpvܮǻQgJ9E4|TVbB5ȉ' zS'l"BoI?g,Λ. 5+UnpX/{, )ҭ#ΦOol !{$ԋғE܇YH?p`z7@/$GY!R 6ߋ$1Ohe=:O1Hj |4eLH/Q=!zm4#ϛ<ڽy(l$r1F{4z&8q[k:n!r U46 *44?dNDՍ7Q@yRO_m놆i:ՠ9Ŷ|_}ɣک,eAz:BHd@QvrZOWn귃rꔽS9y\ gԭ~a؈ /OL2N 74dP{-F*38nP~ ~%I5m8KvӤjo_H<iU:9*dE M,YV㙳=#-r͑ǸT:^io4mH[;*<-@߁T?$F̻V"!Ur7&pp=BW7 qcǵ0ɢ6QEA0a%7ڷ%>Vgn/=6Wb3-{j26~ X.=`_nJH601gb73Uߥrӟg Oz!xLT|-pB+2;NIfuWJ|):pR+[xQrlR@;>p0ܴ oJMKsomI+ĩ% :$~x[Q ;އF#ύ]hyBaΛ7nЭB<`\W>%ue7Sp!檩,5!"kE:o]c~wcb+CyG%aKV'2T0O<_ M!{Phҝ"oUE$` ;U -%A#I(\Em եűڴԭjD$ k/n[p7}XCҖCQK, [n3m"?pLPJIC0a2>J(|dOå럡K`Jd+dq[`2iyR<8[4K Yϙ"6XvXRO."O7nr%qH(ʥA_=FsgdL힭-;m p70>88H2fcTTEU>Ejү6+ Lj7W$nva*j!֙)#=Tv}>= S7APvs*Psf)K`B_[ܙ yR;oAuASWMO &GeY 6.?ˤƵI9Hm\|ыD)m>fIRm79})wPSh .\j,"֗ ,xLΒ5v3#mcxZY q.E_;k~~;Gj@Iוu՗\FE_-nhջ]Z(rW(MkviNco9}y,BS1]"%CLrnX/oϴlwY踥H9ȅ$FQTr04!tSL"{|^E4$~OTSv.{B@޼bFU9s¸ID>^ҺlInAxs1CnUp'l?F?g@hJ³L3(* &~/@CXͅRJu}=I2h qu͔nI˔B Mu _ KxU7QFҟzK,,J1G8m[?H~}۔I ĿƝ=0BVqֹJ۷e@INf*2 f^ SN%A?!x+|䩽unv.jn.S`~輝 Z(78 _ݢ7œW9_'MHKqU%{6j_lf\LcWlfKz,$1;o%ĎyB~™IL>ؚF!F]SQR!tzSt / :xnBƤ Ȅ:e&h`{LHwbe%R6+[kD0h}&uyC΃\VHܷOu ٠M045Tr!7r8OO'xv9X=2 @Ŏ?m/ѠiCؕVA"vW ~%]P*/te&ْd| .$ cZv@W@lgw :L? /}WtӁı#h N3T&V|vakq6qG=wak&o\8iΟ}q67\+^YR\zvbBH HWAC5+t7K+4N4h*D!x#wys7}~ٮV5KPxuO+Z%ɈH'Wvdek{9Ju , fEv{OjYةS) Z>ʊE]\_ S+&݋S1 pė^6ttFB4*^/`NoNgo`l7o5g7՘@'&Gj&uWQ4x}UIzdRGC=hRT!?1mØ o+V7kX _s HBŷ@={ 6Hh}ZA,?Nw~ P1 :NlYF`qf4~.3 }70HI$rdƒ s,A lBwV>3ުN]g{xܔ;zӦk,T_-U0MDf%זy͒ CAs0FV!Cۨs-W:(R+` ߲V{{0ִwS .ױqrU([D$7x)lAB[d#C]AvT~.鏀s/15Arb=-BA "t; "vWctQq Ѧ`g1!} WVnhDZ0~?fcesMAr(x:>)sV$iU~/Yf{ȭ`s:|hT _ײ6͍0uPu&x@g4(BO^ZIj̽]m+ STm+&`";""驣P`!$'ѪNg=ctDIC\[A,P\7R P 9һ^fڄv=2-B\Zym0QİVmRqC- 3yRX b>Pd<[?][ 5]9X< œS/G~̵(c.Q>̙hzppRLo[->)"4A>6vˠ~/0qF=瘡`U^hO:Fva~4 Lz U9:p}0 &(~46uϞ=d3)Lj^@ ƝW^`,xI7޸MnkxwPyt3QhK-5bs* BG?̄rƳS- Fk(nMJoJ' z&p➊5U+H\fnnjSyo*m[B5w)sdY ϛк`Oհ ^?}O,!._rI>*дZ*b@%U[ :0QyȽefGYI 1ZN{R,KXV1_%A^3ntr[rڢ# <[12vk T==73k9h-8+z frĥ_%\ EGd|S@ x ]9a%E}'h|F9?P,MbsU]Zʌ7pͯ&1 V`SXMa58%8Bo3w6_oWY K:c66Þ׿mųΪzᬺ6 ZM6@R zôD3QOrGZJA朴}ʒ4n#H[ʿq`}\7>,S DODҒ g(4%>_GZ꤀;gJR }d/}X!̨)"18tUhhT "hg>0Re.2A&iҷro}d3&>o؍&+;vNW Ov]ށmV-+bCk8!y> Hg PD+ӑB"H%ޅ[ &9^!4 0\9PMG W5MRҐF91$;~j0-R0nRÙx N;u3&?:)!Bll>?{/@fKsopX- SG)^dSNB{1YZb2IBSo(ߪl0%$ L{Wa=_  Nj(<[lGBlx5j@WAv! S?btN🷺?gMb9+0n0}@hV q|FRO# |ڸ/7g vOhA-JN[0췃þ:kp z$x"7JHC_u91B/t˪2zLdĴK,0~}v! eŎ)>Ut,;xj:z0/;yaĜ ?HJi^yYDwC 1RU#nYR5Wx${7&#'Pk^## {Wu915Sz˅6ƝafyRbl]p+17L2ɑ{(vWSqy FQȂd(7D#]&3o@uڎͽMw6_Y.v osZy!=rL~IҚeTSkP)U%Q"M-Ѧ4DLj8:#TďSU#cC׉\T"MlڢTi8;8_# CS}?%m7 AY,-{VTU2MG+c {2}js)"gsݩ7L'2@QLKyfӓ/Wo[;eW¦GlDk̸>4%?a ~ma F8(w/wWv ëwW֮ۊ%B؎(9TXE43 Ȩqs ۶w>66)~ yzV&QZWȶl/d CiE,78CHCMnEHn ȣwc]xvA!.OnC+(wbg,BE-~GcJ+Sn:,*! a۱!S!\D/"u ̂wqj I!Ww$88w 3ӣ}\gkA%)3q3Q|J7tlqo օ$[~9r 2Ϲ&Ub cN1G*`{ I _B:3G=%%݈2!> I"๪ 7cVS5" nGF%Xېm,[vnN37kcU?!vD[XjCYuv@0-{o@P%&!Z]Fğc:ztOv҇q_xffYGy2lmA!vlW KBu,6[4sɄhG ֙ZD8c'bkJ7φqȹmt4ԁ#>sЁG+$3B$2$}|u}Hh{lͧVBRc#0sW+3Xgjb pxsKM1Q5A*6Q{0Y ؒ|NֲpdO}ajB)2ŸeAc 3W oئPK}lli'?#WF)m ,.ޟ>!w3{y1L#McQ!wДqauS3!Y?R*6МMDžS.)_ڍ҄ ݶ#h@w m"\٭A?NJ߂me;%}耛~;=bJW~#g=}U)):2qd@(2')+;~͖ϮcGQSQ-b )25"ͺ$"68)` 罎}0\i$4/>\,rC7{*6IƲ9/#"URߡ ߆ ^ރk>f.ݓW羫X%:Ӏ"36vUG4ZX1NW;KB1E1Gd-@8hB2z9$:9[ڕ*SE(o#.7?}m[eݏdK𘷉,R|,:J%߻蚟xP{ZP enq ¸P51F=>4ҖT _=BR]߲=os^rUպՊ&P\c =sd#_^^䨎p#-3I*fayٌ4?NfDZyIjXn*kQWi{84Bf[L-{HyNug,TW)+ceۈ 癎:`Gi Jj+[}FRd UKS_QbDNg<1t"!f8V%M֘`Hf.G^`-:U/\qu* _<) 1v!vƟWgZ]$:mt@DaRG©q5& `qڷRspzzbC'c>KNE}gvc7x&`H{Net Bhk(J%5;z=GAkr^.lS![w?$5ez^j>@ `<-Y!K bDC-; 8qoKiygNs{U[ɱNJ>QP|Q)ܓ?;n2䥅*H$4x|9~rb%PӉ(L"G5hLG>&}F&7ǗZMәN7=&\vP^A _ֹv;u|X[>%E~xSpop3) 4'fr!ǒRCe%Ybdc^uqEerČR< ^#"vz6I[!kLh8 ]T]'@TI@td ^$Wl'Gu& t)Փa? 2;Nz8٦+6|DfmXf&Y!z~|"4Ycy8*PӷGM,;ʍS'RNfn+GZ(e31A_Y|`ZW++ L78lVO9Har=y='ߔkɻI=׷#l #E?iӧ#70Gߠ{9.àja)hj{\5bb'NH7P wKm7WLW_FonT?o3WŴO {.cKswR8td_>ɐy_ ЉjÆwMVU,O?zĶfkk ^4q[Pf$oYGacqkٖj` 2B  $/vq eb]gj/,iթ̍sBJ|뇐# Ep?M'Dv 4vjԬ_sImCl/* _EETұqkDDwqxt|lc+AkY= 3~KMsSkk: Q$q xM{T=ϐ<r!T!>Md;ƪcCƶPW /:4MĮhHl=dDK:2hqm@<;0ۡd:+ >cU&t;ྥؒ[SQ6^9vucv ? Ȼ8mr <˻Fw(@g#WI44@H]ӱSu G3n hA7!Mz^?$]z֌Q=qQ~CGFW8(e7F1ӯօRǒP40[|퉹PI8L l'ـ|V#FA1~HEW&ɺ}2םrLyGcЩ[!gSd;j$7aʙhwwSUv ,~@֤ݸG4*ўa_.?k D`(&0u=K&޸ң!۝Cs Ç\Uy'ܖv959,jN?\FrUJ\2mNPQ4!ޡ3p#eKξ96NXxjiލ:ʱ s~=hliEcZ@<d̲xPZQ}bkV# f쩘`sqZ G%w ȇ#zA.-0 hp_H4x!/e0ͤ[(Y ?aP'-،OEr= Vw}E*3I|ѢWA ۶@k9έg5Q˰wIc]Qb_٣U=yY'+ԙAǘ?mϯHN0mW3KEw}rhS%7i5˻K VwGv3ae`Q"_&WALC3ƙaLX>vsceՎsm#2s-K'fSY{G ngTY!dgaU:?"A{XdGi`[YK&Ojm^~>VZxE +u77bj"|)wIByO,>F8Gw#Ԣ=RF@|9؎?"렱^%kλ3t\&r" @HK=Pm1 ]{t)k[Y7}f$/{.炋v OIwzZ>D6g6g'8b'[qkO/+lx}nRab{q3^3VmN!{' ZM# ~ߏ~o!Fp(,Ȣ6Qt66m99rKƗx`d0RF֔9Ŀ7i+DX#;RςQ*dF7D+sY';pO?,evK%sxOj(6j#N+wAu#-M.7oo +@Sp'FDTRtTe_n]1ybvҌԤVѩɫLiqJpBv#j!y6+bѣ W#Vk`d[Z!eu&WCV/Ȭn:,w> k`췰F$3=^j6џb+e#nU(&(X6fSp[X󭜗J 0(3T{U9)ߌimR+F"0CkmM%/a$_lVHUhM?Bܾ>JΧ0\g 7zTj|Eӽ"uLŚFHVjM4mInնEH7޼q*Ѡk9R4dp3qjyXA`ĩNXd>K9d6S@'87{>sD̄ ;!bEq+Azi:i *,b>Kad`_ I ]/;`%lȏN;UGu-v[N )dxx ;o/l'#`[zp%QkUuFCŭK-H?$'Gh2*a+WPTW/;yr5~ma| !-]#Bl#NΝ|93 7 jxjM!*.~wk›{|JiwO3`=j6K>E]vNxS'֜FSLe}Q%PI C,NjX"MX$9W0ɭ(BEѨ1fq?<;n{%lO2<:xjo4-%ra_=-GTx{.]Nm\Wh2gu+ >kve.%S\N,AwW#۠Q̓Bݠ%;-r/cMg>* HE(bJ0OC@939 Shۿ):͟6lI A ΥTia{:dqu d/D~%=!Ҝ­ZM +%~~{ gǖU@OđCTc l$I%+ap9C߬i)^(؂\]),d {]GΡ#NrQ osl deLn63~,1R~t@&l-M!beSoZAӇ+^3_O:MȪ3OuPD1o!&xBq%ɲ(cyhv!/J@)ԋ"l%VeqmnͲه%S])9%BbaĨ2p*2Vh,bcO{ͭth9_rv! ';!f,W^x IAt5t-8h2}`*o?g&|76:Zx݇!p^En F<\7!gB8toxĽ~}XfM'ӃU׶# pOybJF+~'r8R' _u˱LJ+1Z54Կi,hґ>?"%eυYȑpğ5A3Zaxm"Sc}y;HQ$o?Ϧ}y$ziu|{Yec75! g7XD9/;G`ޚ&(WevÄ9be\'l[cbGbAFꢬafgR׫Ft)#>]>W, ԑ;q5(y͟P( gpd-O DUAž :Sk{t4_sa5 yZ D)&Q\q x9x^h.ei%JϸHR` P/U0K 7akF 8zf\y> 4Rmz)|:7u(5HC?RJsQ5u׿d-:a E›dtd=,$IgU/vO.8Y+4[2x+Zǀ5ɪJUa_C/Q(^pUhɲ/.~xOɫUk"sl҉4L .7oxbT`х;xYmWn *GT `[Y|&JdBcqHacA8oABҫ.ZMnhy` $Ccp>85Yt?Fzv% )@i\_ i9MڷG ,:A!ӱ?* M}F!@lt1yhIBgӅ? Xb J9sY4%> Y_σ-rc:i;P ٌRZll? ivۺP7U/7$haߣ/,`l9>Wܤ96O}bkv]zF0eT!&ba|O2˳"АZY/2@!5[4PL;ܘg7N `С] nEBV +.=|fc@r)=ˌ+C˜>Cv)>tWY=,8}}YkY FB0gBhuYH3{n1|)!Ydg98f(0B)DŽ5ZTr[ucfSHq"OBMY%Dz!Hs)L[(3@ {ToԶ--q[s̤+e[sd2>XYl<TMn:a[˪He߽6U!]Tv{O)T5/d;FZ\MZ`]섶& 2hƞr ïoMtwsnU}u_7M+V>*T0,mE1=:k}&XAcZ uq#[A(p6/#-Y)U.KZ,jGN){KRИ1+5!ȏU槡AN\-(#}b0ћ8|C\7n+)uPPzJk o@2#poD3 8x wъz.|SC żpn泅4׏] ]3T_: Lֹ9e%#}[ b|6i0Nrͽ  l! Ӛd6=pcK%@m?CHYw-oJjگ~,vìs <,Ԓ},,8M5?Fk2%rC.&Up=ɹ  ?be7+>留܍ͱߴ0JO"E_eg"&e#Aݑ`{<-I麳ݽT&P}u cuޔX^-'/۟P#qcSpǫVE1w7,{ qI,ڼxP.TUQ[l31?ȹ9i^P{Ka+:8$ /[ӂzWW2XDt!De/l5fD$̒~0{^66.HfBz~1yJ~|6xJ~f_/zFㇿ_-MhS}@>vxc1oC ٻU GymQJ^q.\m!Wxt圍ge$FV9{ 4Uߚ`߸** G)\NMk^8' ` YFZE*/jyCm2jhWOwz We $dDM0]3粊GH25Q oֻ,WblI|Po)Tk[K@ Y{}_fֿ5ȧH4*Pjp{vEӹ*~f|F'%W|(6aY<ƀ@ gEO욬:[$`2 g_U>t$NVѡs)k+$Nn`jU; Binj#[T-s # ďWO䗳WC%C-H'[Kܨ嚴)[sCpzX ˈwPYfIh]oJUޑ1֨q#V`//2&s?01 }'K,?:rAVxIn]f!* {Pl؏sHu;oHҰ@b!a,`Tژ5 5. 829L4#NN:(hN5,$+>i^"z ! ?Lx c^ತXaR[gxv^SH5څو{WZ^r BD}L_< C1F݇\'z>UdIZڨ7L0m>J]FԘgmcXϰ:" IX"y(d JYjHނԦ{-¬&`[?HVמs$)W_%u[[N*p&s %b]&w`K>I|?mѶ ~ZrASp2j$S#G6Q*ncυ7M?Im:=;_#;TF^(An)3VuR,~s.-׌F{ЂǼosk$v㿱 +a7_Z~qϴw!MA-ѯz[핉 7FCp:pب`Qf"IoFWD\~J4Ҝp[_ջ'mn"f;4@rnrwۈJ^"zVzEfj_W)Ewl\NzYz;PQP ٴ?:|49c+>R}IcJQB$Wƾt+s~Pϼr \grEѮNAR5rt-Mv#}ԵϹ>&m z)%~B:c/f( g+,st.Ti6p)ƊHJou,AXE@i0}e,blyQצAϩ69SzCbM9,N^_4gM𲌚w6e d8BsW OxX(4_'T|l!:hԎ:2@1%_MyimxVYkP@_=`Qe3 2 p8pҎ3pol;4JhW ҿ͐-~~JGr[AI6{'7d(9DjQ׼_A9λmYr{ V(- Q{+NILrTy!/jSd74ӌ-<=n6'Wm47LU=}/vYg 1:2h(t@6*_"D#ӭ)}MD5qo^Vj-ejDـ(GGk@Rq=m~lRRoTr?4Q9ˋSܪi)hH|7(9~nZl5''O43AE [2BiL52PrRZIe "*Ott&"7-|c+3rmsuo0AeBSZғ#}A!q<SuSɱ' zh[ѱ fаڀC-M\-ӨLߺC`3+}LF*H r#Rz3"R"1_3LKU/d?1A [ApL7ѯI'Tp /ǒ2Jh>R@-^c~"1( `kFH5<8g=f K{ߌHuWS/WIHHP^/6"ɩ^TU T^W-+ apaQ"f39AahH2+(m D o/:6Dux6brp Gs5:% l<'#(*c\]ӯxZB$WՕtݴ`'[k!)8gdX~ ng|wPEJ!U&S{Mlec+%VS9C:Xw%2R՞yHHذܡ o!ǐ,kmf6mǧ!]y~q& =:H&U j@zUr-E x PVDe E/n*> )L`a1j #ovf@\YÎ ²a[#/piސp gOJlʗ j@. D4(wc93H'ff]YVҾ3,2B'OP7v(7-&"x4M& lKڑ6YfeqK+ҫI)<'ʂtaa,ہ7WozYurfR? ? QO/rM OuCM&2@]Zo T24e;?S'Z2Ē] M)US1 y3 #?"|˝3/9#U=kSr`zJCy~\āmUTr5( J.m"d @0喂q8?Ww KDJZ9pSC)Y~5:5ԨcI_"ifU? H46r6łO/K0f^T{FixqrŹc-V$cx1?&zI][gqesZIp 9(B$t}2QêQKM(z9rf`1'' "J.0,MI9n{#HSD"Ӡ>a l c'oW?^R?0 |#s=?&1,Y}4Uޚz="2)9Ғ QFT8'[R2Xx(/-B{CRiY)m \ `*s!OQ W{a.<󈍮d.dy E+[<-\MxHO:0Wۚe!#3UYNX 5  ͻFZ [b/8YdVi/V;DSLPyc^FHk-)]066*U=jy=)-ZK-~D3Y0aƭR6y 9?-M 0&ڂ&a24.Fb 从 m_94fqw.-FEvUC)䩖T8׎05-\=ɏ9?vF# t&MHT7l~~K|ˍP0zJ&,@Ni&] wf-*bf7ZZ oR{m qRT7Je{#1B(hDtmhʡ",̯'ܨ3^$Fm T~X|کn/fÚe 'R煃/ nǽwhJ0 SZl('z"ZV 9QoT6-t<ɿrE 9GεI]ۂ;yv$zh68I:=]FL^pNE PpY]8/RGc9ɱ|e+xRmPXs1 5 •z8HP5],G2T҈~T$fzVe0kI=+ArYjЦ<#$,!:r'j(GKX(4p?"xB#@0%cZdT#(GҸ*ة7.f^W'mߝVY+#?*0:컺жz=?@@# "gYҋsЁ_$(QTDH]亵h4U|~w_54(#f(˨܄|Bzhޚ Ηb$\獧yδKnUG,Jm[:%.tVZq(yydy?,(.)(ʎޭhLtwXppKX{O }&oOE_w7E"1?<-Ÿ\\ۏP f8Bf,d_B" Nca⿊[ͽL@,ޡ|Y:MU  C" z<(,7t$1:<Wz.M={a6F/ @Yq,gbwsy'\bK]c$L^97/l.Fqp <$vkQv;z\ޕy*%: 6XB+X>#9 g=ɜInDɖHvuTѾJu2_,&JYm>yoɣ0V~%7-^kt.=D{'grXŻvHm-KKhj7Ǡs}N5;ؼXEi-Zo]Ne|K,)}z 57,;bK~$^D+ G8̺)pٲۚ' jKͮGv C|%UHT{&RdfT>ޒV&bC<5w1s-h~HCc9M^ =M"P#N>6_ףi,R/JR2(bhtdG , oZ|ԡ9% Nfn;VuZ|28ϩ cfgrvh!G~$!*v J44 hYXz\y)Y\qV-"*t)r'=g PХ-do+6LJ9ʣ_ |ּʺxm@)}:Úqa.~̟_wByD lp䉳sw),0Ո%}k=A@9oyA} :L&Й񌸥+RtI?*' Hڟَj\ߌn`4?m!=;!DRW` [\DQ=qC`K:Sf[j>QDD(kzŽj3`QNWqfŬfe4ըM˰֊25]f<^>^h )uxc'R.H-RI=AȂj4CH#|⺏,~fD޻>&¡6ɔ(!ch?M-iv(}4Zd:8a#Vkl޴녦r_ؙ"GJ! ^g^?/OU>n)ĕ9Je`I,?Ɣ bh "l䰟Ni;ZO90OӰVS (ɞZgnrPۥI''IJNW$ qDin䟃'(J(5缱?z1UhT(3^6p^u:Miْ~' =ݒVL`"%:";6Z<.na8cQG/a-܃[>UjX-k *\w CJ!zQCu?Vl Ojd. =:=aCl?t5.k;Mhr^:SΒ{bXC \/غuW20״[* V~U~``F3"B8i}:\RE7d_"LPP{$C]G)۴Qmw*cۙvYg / X~X[C#td|O(a rK5A) 'O- ndux7؃B["#MWN2aÊ(P1Z9_0$Dy%37=lSyg;uo?*Ju6'f6]'ӞGsY{<@ԅw>SkN|֒eYL`"63:% 흊V9֤ ?̷JuavI^ܭ[t}u==wX: ̨|q)y>å n tS.]f\<$-j iÙ|(]ܕ/ë f`\;fErRl.;rWd$K?L H W0g(-ՏJ0Ac.1fBK$D݀_vqz 38;aFú~ʻK<Ls:^6OKīj4,QY26k!m=*q\&~T7 );kAmc^d ĝIJu|N)?O :ߩ?,LM7֚ CQcUOUk fg=~KDuՈu[x]Tz*]p(s {yaҒ1`O FC(c &ك]GB ]L|om;]v535BM0BC\6gKtW!s*늘(|(76a)=[V+?yOIo&dla(K:B yj8qO r/`_ֹHzٺZff'$ƅsFba_UQrqySJa7uRĜ =޳1N7[.C5Zs3,^[37912Zlƨ C^A:ur=ebu!?&sE6 v»R?PPdvq8s)6܆ Rx}{k<LWsVǽ!~>Af>+4ҘZtѥ ;aCc./$햄lu] {h& %ICni\R{႗5yo!R2CvsgNcւ K <Ɗv,9e4qWq̆G8*ʋAeZ g6žgkyI 'Sy  Sui<0D}3mA>\΢Zqzcʍ /Y2 gjso<\8" 78Y@(}zJQG_XoYA^U,-"qoao:82' RHy_+}Au(ձ@{Q@p[Gx&pdDJ)cMhqH |~,?,qÕqlc)viGs̺ߐ튦#A߱~6 cW2tϯ))P\fi?,njNGo^KP4Jz5vHWr C̣aTrrclSyüxSs 1v]g[~ΐ{ݱ`^U l{lyCx egFXgQWdZAH҂9 byZlz802T-%}+^cWAɨuc=CK{K\iͿJ/q^|0-3}[`Y7o#-=Ɣ \;%r\*MY3xܞ)Ƿn7Mu=E{~̽;jDCBዡ .cRK)vmf)g"mDf<v^:%d:XPJ{fq$aÓQyr ״w;LڅWGp [ MIQv;: ;Oa:s6&3MC.p(kbC}/[&S59]iŚO㶸QSyBSLͧjL4!lQ:e5S:֪pKZp?́ { .|Pѹw؟1ƳOjI1U|ڡ$Sk4*`7,G{̚-V֓x*+FȖ~JFo.~DP[IBϻ"h+s3nG-`9{X#y8޻VYTfL^xC1,6tZ\Ԡ&J~/ V >U`G .~q0P`So-R@7w׷HPmRi菐L^J WP&c.zE54Yiw(wy-C<9;&O+#SX; |+ =uXU)Pw3Gm_c9ڮo %PO/óc9&>r"XZ, X=\:pua[ոacYAHjdKꊪBx.ZyB4Ax2X7zvQ_w.D1jW=zv(EĐ j.axWnO떐&I֥$<^dl>lQ,j;jV.[DC~A\Iז@dܴ v ;mqw v—8[=& /sS2GBItovuguE˄򿲉9 `@1HW'tA`[bZi|&RFn#|<.b#PIL.L4M.v[/jJXV@P3c[ƿz$`MUnfYG%t ٚB)]9@^j;4qք_j #mXV9CZpf'j9rw_--pM Ro`FTsgě{9Z"!NFieW)%d y3.3_Oc>rr+YR䧼O0L!,.EjMxY_Cu/e+#h ]!3pVݮ/Xt/* q$C(tΗ6"v9> T~Je"/(x T>9t-]Ŋ JG4=|.F w3ʒmntX7YJ@u jyL6(q!ŴV\ZhY®=qU]ն/a%J(C)ޯb&cecV3d"aEopC//p@LI|" CZ&.6'm@xwcv9)MBU|ZaUpVB$)71o2V&/;A\Qt3q#90X JdS$؇ ')#͟d:(t 3,%/XiGk!'_ݲD8ڦ, o[7Fl)=ȹwqqtҙm~-5i72_vivb1(f7^~>4RU͓+qUeRP1~_@nؓ$72xh5dlkXaYyx>*xR5IN!U:AA_rF3և ,G8 >H=bA`=pHdE ͬ]54 :XC>CSC^-0Q~NS{WB.VKD+6g)*;'ۣ[r MNvgAqlP[n/.$,a!j!)I1n%^zQ'^jwDlt P&#at  @'}>"g"/(D%'TѶVrGMӷښuզC9Ƕ=|_iΚ׬" CSKYa)y1n5f},9qzι|梁,N'S'5 uQAbW5q2 =U'p.:}i4j?2ESQs ?՗(Ŭ[ʽO/;aC' cW8H> z_+|YHPT 4xcnI[&N']MfÿhzF*o Hl 㰼sɀSc#9*͈%o'h6?%2eP< :2RPr_B 4= `OgFἂwB׳#VAXΥ EYzO}Gr{9=PU0`C_ѓqF{Ȟ^7ƾlΧɂ*S >a1MJ؄tyo$Kn,LL8-eBebsEH߷ k tU>o哛V0F *M*hlHr6D$b|1U'?JfYۿj,v}? /nL ;m䝢52M2c+ JmWm̏H;EXU.-FjyPx뜩I>B\Ҭ dhN_q>r` .!F$j[Imah}n̹TJbҔ ?5 #=+G/T֥g!Kn  PT(=@"gCsmlX _"<]<nCh|=)wӵXėcz|dD`a j&/ПZbMAHJF HtDןN;bgx>ƽHp9ˈO:'L)mP˜Gӆqׂв>8Z~*=t!%59_"U\VVxENqkHX4㠕*aT.$"Ԁ֞YI˴"NRF͞wYh_?K< şi:5?~~vn*D():^Eն׉7yX'{kkӢ_U*Z1@> _{nN"NvAjiB<̔[)S˝t1ֶi ‡8e⺪I )f\MZ:\R7E I=scFf`i.诇PpF'a+@(6!!.[@ls"j2m,NH`l~nTc< Mm\@ k >zA,YX\.9隕ŏLa X j2!WL&e{Pmi; ۇs6S>}Oͤrl4T~N}YB[ly|:{+i;G $nm49Q'̵y=5|$(j$+HŘ9!*LīM\N>ӪOr/Ut3jXv!m{j#:8h޿ w>@080+#wɄT WkR~e$vVqeVᢉ2?ևĦl^a'_4u#Mm8l!GpE1wODŽcs^oZ4=ܭD8EAy#b6K'&U6WAJ䊙p>u<_jv U!we=Xw.`r>^b~ DE=rʂ f#tj%5,"=lg3ɰ'_mw1uܕ?-2 PNN[^cǻ=nIڿ3AQmn8Lt#[Pv8Ͽ|>3=]-!% ,\[J(en=vZk;^qKEFhjB6 rt{mm,Xi<4a8xvxpi/hq.PAX(8P- UdyX[+ pkxOfnGԧ m1vXFܧ E 9pN!4 J] C|S%Ye'&[`v J _ulS KNǔv:}m4:ە@vx0 X$mCtX*q3FvK }cD/m}HGd<PfkrBGF%jNno@$&{ֈgw %hh'րF jJ;ⶬkA)hH'$Fngvϋؿ|+f[̍-qDYt`3wM`|ߞȖ~V}iOCUsOF d8h:n_rvVi4: !fDGMpe}Mg x뢣#fg;aoa,D<qmXAHEIb܇$݇Ir#vC54g"dǃZ1E.ժq#Pe*:ڄv1U_cd/Msu`ӳ_@чwG3 9ɣY5M/A7Bj];PTe4Z4 :W͞vT LYS޾֧.qЏ$f!o: W hnF6l1eY丬'E\ ϼ*lლWc_^ &,CXPRH\a֥exJQܺ6ބH͜bv{.ōD)Fn4 &dl lUN3^Ćq=m,׌{hB'9xyr xu'Jh5 =s|3<>["`d`lzڿ!)mb"\׊zO-dݸA;ɼ_WΎD@"AK"m# 2mY83;fΛ8]ޭw2>/xRetb.M5jRM~Fsw00%)z˨J O0[d9l(@~HQVj59BYLF9CJeAhuҸU:Cu!d-a`<"'B>F~tFo (ݍZP؃6ËM3':bHÎTU.ee9 Nx *pzSkJoCN?t?_O.'<79ɯ$Oxs.v1A ˷N(;1!&Ȇiyb .chU' M) z3a28a+܊Vيg?ŤX+Ci-5K6>$Xa1ڠΔ}DU:[m~/n&wz,7^=}mX,^'H~h+Ӹʹ.<1j. j1v 4aZL2ɤX܉6Z_Q-r7wֿ|#G0ҭ(c!v9׿VW6m2}ft\]t8oT#j6ѻ ::tKk7Kty/V8F ,{V&vcܮ&YԤa `ʨAXɍl l|촃&HE2qCjUOVfĖbYU4Vx ګLT{Y"Lg6a2}K̽NT؃W(DC~Wvci1'x*=ÅMI5_3̺m픝{}0k)Eսa{~rlw#N`k Ye|Xy1(s_tw>ԥǬPē`[#t~a9H<ڔ%~N]c6xph1CNI{"^#Ą6Vuc{Y`;t5 WAC,01"U<JԿܻNƈ`H$ <g뜢:r Bm}6:sG^69ԡF)ѓJgţ# JjmE#Tj6`~]p#=TT{MgSAԾ:9}'Vo2R`E3uHquܸg@k<գ..N edCV 3K5xھE@G&¥׽ fAϋ jJ7曉:t%*}zʐ51n̽(&0(Jd-bcvfKYI!F|3YX䕟V&dҋt/.mbHBn^돫ڮ-I(%!V>&.pr~ae<8thA1/}G"I΄F>[R +@# dB}Y_柳̪f )&#TSyF\3'6]isJo1nɫbf}MKhΊ3zS'S ~f_w$/{fzpN&*pS'M2(յ}Fn8H /҈C珱3X% aB-geDsɥыsLH4Oo+z0GBkqcګ1:CKKjRgV|(z⅗"Θ2 jDiK*W{O.##==:j& y\$f帆͞5C02=5Z1exwQǚ*s3`~`mu5#.ssqv(G}L\M #^Ѡu.OfWn"IUXU%"h<ɴNFì'[S&jny-= S\xwl"\(`iJiq;mr ܈8I(ñj 63 O)!f2m6(/YEjRuvu ? NURE!mhi;5`5"1\Pd5bK7R/pl:Y/ a⹳f̰v/&s K9[?O8apF g۱V҅(τNph߾+L,בo壟'8Q[W> *X+yzdh`m:ͥ*dI*]Tep`U [Q >f.\}Mb9yïdYt O#d}d@ ڐV5l.c`:8oVx7g^|Ft QlGk+k7m7mYnUpMT`wDO%ЮZP)Ӳ8+X[ g;,[< ^p@@AO;ekwk2 Cũ=>,y_2֕yn%nXwr(~RQ@_u>~plc9 ">lrmұHvK"OQj8.~[dʑ= یٚUWbOQ[iDhXV8oH&d櫭[C7ײӇ[b{׫ߝ>2%o 3TD@X͏F׀N5BNjx>wݞ$z6Qk6n?*1~mL;g}^o{lL]mIYoմHudHWsVkrz=O[rzR--#YrI"o b&ak+F+~:!L[q!Ev_E}g4%\Gczi(J佰:ttyNWOu_JR /xB6TK4R?fhFݠV!xNS #<aPw/f_b_7mX3ZDaw:MFܾD}See?DOݿ\;Mi'[Zp(\FI* !mԛ G&ծ{f UZC.x1Жm]ێ1%ɍ?:77 7*;3/Ґ:u.iq~qw+h!x[EylTf1jlcCjm#Z?eX :YV30HoX #`I#jv¦S1f֭tw]:%@ *:od.MBzD&2tpQӷJy7eЬc.ex:{Jy( âz!8b+Q1hz:jeMvZKI!Pq,qp݄]ernwPLB3G0>Ks4oeD .uoqODC>Tc l=_D?M(I &28뺔Tߡ;ڎiLee=3:Ѭ733ћ4‹c3-Y 7E1A\ei*ȱA9ٞ@@_gZH\.U#% t;%/3:Z H|ѷeg?Qb*휓YdmLJQiTg kѼ?Ų3Zu|>!"GAʏ{z(4 J`=ŠfW3ùW/R /5,F'm1EYו xX o4/-|9E~tOhUF>}y٥`5F~Kh,b4J T's4o>ӴX6Th *#cL[܋^m}XѻN(2c(#kj0np2)!3N)JdZz,q4۬h΍SL7 !f Up͋<7Cvc=^d_;qc/N>{?WYQV'EF*G=R0WZA|12jRha;^ {޾6f6SZ!zqS~5Y &b`΁3m .e={L(A/F ;V @C:vC>6kc;@,`sj_,;o6E;0X!a9T8+x {/ {CSbmxo > KW3K"B3iNǸ'Dv I(T86yjڻjb.+9MgFL'?fKdHZ Wn/<َʍx咫5Zo ?g}-riox,Cfnr'rDrvrں?kFD0' &nG-O@wLWFs^FUh2ub 8aE8q z6"Vxo4'} 葖=,"8^G@ƿ-0^rQPnfM_D:HRUO!Hk_h򥊿&*Ff騠\_&U0(Uys|BH0lRSkҪȿ^>I+S+Bax߿ow)UC>Ug}mJwzh(<:n%~qJguQS4_K&GЅ%oAKbkGص99.S)p$,)o4jBՌnz֣{n$0l/,{>53S˘-Ici/2qw(pb/RHfhcn"65 @C(h~I{]9IrQ |/]=]{M*8h& I^ +y`?ҭʎPkUU'[th1d0saD8쬢 rMxb欶 8u"Hxd1F2`Y΁s,-GPf+o 8jf,:5v~gB$-UsM\ZY"z<Јf_l!'VתӅ;]1zcz@ωn8_iv2T,ǼdmU[E9&6[~vl(yf~:b. QtxJ՛q>\Eג1Z;^𕨣W(8Snh.J/}:aAw~a'=Q,`lХIybџ1xb6O=?U8li:BjOmS _1H82$*4~ZQGkyN}LAS QY;\F}Sh:$;uVN6U3ze tZ?"&-mxn*Xwdڕ9$3v#chK^jgQ LŅ'Id) ZdSjAv{x]K&T@vor$ *ǛL6a#JzAgH evNϷNd5㪿:#`CqHAMzVRQp"u1%A{7L #c?x Ff1DmZ Iu5LO0+c•[oa.Ss2NnqN=$fe9PQN~Piޟi)9%ì=h0T(I3Mڠg1cu[P怇R&zɞ%T F u -j93>~wrnvXgύ12gRV_HŅ]F+ o犘D9]^KMڕ(na#Nu>e Gs5 -3Oڣ̟h"ܣvauY`jeo MDm{9#S}1EQ^U i]0 (@R/q_,y?u(9? J3ұAEO! e7X5`Qҡ<\=/O͂c@gqVqَ7~tMe,bwx`8r-k$Z9 @aR#5ȗ!2",u .Ao| KuS6T.rWvDtLH@rSp9 ~9G!:ОQֻд7)LGm=Dp[쀨hM+O*O9 UD { qtSo U!]ֶL(lցdB/z N2p!c:յeR [t<a+VZhnlrfO?>9 J'e֍c.98k` ,mO8q/KVT,`Qpp>O؞-5`UzC]7E3k$m&,Бw:"+vx 3y,Q@ŷU.&'HJ|܆US/ qt8] kIݳ t6du{`%Nhdq0kܵN&Ujux+r}bN,8URe^\Nerذ~׻娠Q[.aF6 ^!X[ >YBF|D^3æ[Pg([eAl ΨzӲnmqO%AJ.7ͥGl  _٭N?PBMBic~w#~j"t$rUj ;% Ia !9te)ͭS  *gTA\d!F>Ӹ.ϱK6 ')R/%xj5&J4Q;UE[]]nGѴa)Vf1 t9l~F!)O痽QFC»y)LvA1ttw Kj_WT)~E-M8yEqgX6Y UCdp{)ḡNUYax}٨ڻJʄܒxfٓZ}pզ܄e!(sf^d&*3qNţ +o+Z"kXNt9W|Ѓs33sjK~a()MEMʍW2\c㯠j$%7^;T/e۫V.]k"`WgunvU@`r1nRi=c0ſՂikXԹ] L:O32(ogbm!l6+Vm]E /݈+,P!5ބ;BLMґeQW N2gs}?6# 80xGȌ㲭fptatk4B3:qlt (Hnue19zp|j* 7x}^2 %;jMII;bg4=IPXFJ+C{Ds aWr cTG24AB2d_`+ J4,t,^(Tr.hZ 榖X:  =}:NͦX~#D9;'\ʟ}+ R=/>q8sáɴdx&ˈD~vPm?&͔ /ӫ3y&2f7;`1n}C x=w_9@)%#ifVSڮ :)#aAlrxh5qx)1,Tt>K5a†N<в'@36m-ZK 5KL9ϯ7LkkoG#7ka.2GkɽPUﰛ]zITExw&d߅P8y{îCE'DX 3ˀorYvk0(%uoia>Ю '0ݗK%/sCjź~Wr}?-k_߳{-"2H*&銇g*Ђ8n""ꎛ*@pcQG`)kJHɇhKd qz01v$ܭ ovA-'lFswaڻ TB2 )7S|  = (O ͗D`Ʃ7|r↽>U]YBSOp\{d:t<=$yQX(#:Zj Z- bKVfZ3>aϹ%4N}Ԙx6TA0X9I0CRfc]͝IRQrs{kX܅Ƃ pi/J}BG'[Eƭ2)5毢Ns/TpyΰC+ R7GZi1ͅqkH #l!9Rvq yVR>x/CWf zmYD`@Zk?6+.Mv{&Rvq%K+Y`-R~uO4eO{_~$*0K`y7ej0^ !$A:kHVzqKG==m%JޛYz7:!5Z9\ό:HpH<x… &ZR<?q"d Ce)k hL$Z䋿4&q gY-lTBћOHC!DGaIF SlZ]\75,vI+RԘ2+-P!9 ׊;7P7{\)d74&^R!cQY lŵh W5@h,b>zPI ]X~\ʹwݧEOxu_oJ) `~KZyEJg )|6Aӧ<.FY k=bVS7#E9>5b7E}ͰA+6@/ GCd&mgMkV̨N8ʒ~{IRaj#%U'ǜxU8 8i-OBMfC+ wޙGTI7/]p գ+d9, mp)DjO-?-'peٳP<%b O,8t/!ƪhP 60eoecbq5dWF5շ#~LϞȁ S\"l3MӚ̅z#]a/1Qymy3f:`JQnCNoA߉K>2,xv(̀S~BY_X~ܙ^Jۦȡ6&T?qY|zIδɓdfmYa[iR e15|v`DJD5\ʾ;>ïfxbljv8G v [2'uj4eIN4e*d?1%lb f3}E,gi*Ax_Gy{|& I;y^~$=(B]9i"^QUXT5yeLY?ʗ)n(cK\V=%& SHm䱾gh_Pvͥ6aX '1aBq3\~\g,{B3lg̯YI:|D"|&ɍ8*rx^J9y0l;<a5csVLe{< 1X TgwR7>UQ_Z!PZwa-Tα`%kcyID\΃l.81Uʛ.R1cz.E=UK$Q͑ CKi4;HؘF#-"kExak^q>L~@)@؆)\ 5,b!Y#0:6\;3厯1:\; A<@>BקM"]$fB%0#<7q s#zLZܦadgfw#Ლk$Өκ:L \z\݋ |!m!->_o茯7!4A "^4hh(P ɕi3. u)%YxKڐcDdmZ6NڶL>YbISA4 DT^!pt0h90^@ǑNUm kM+AH(lp=Rz]z-co~9RANDG9۱PB0NpJ=6GJ9Xh;̛m{B^bAkCRV4 x^'Z3c #ZI#o afׇ\uL=D zy_mm.IGn: M$ #g kK\HrqeHx8S-v/(ډu$dH&|,vSAňNN,^M6l\978Iҥ7PO;qSDku .!Ŕ M4wJ-惦^tړkRFɊ $êr4@l_ :ߤYYˢl꽱,Y7 t?a SG)[JP-&QTmv5'z,At=ۨ36 JSlȆ!b!ڌ>o_Z|ԁ*( rU Lki%Y É4(+đ}V+D슙'10j&I+?FK>X aI 9v[c&9au V y^L e} +Fe~a*&5 ៸ƾIe)Y ^_QPra?vr.&;xիCK{B!ibR *|4#2S6 C/[ 9yǘ@k=,[?;H8ZnT)竵n2#?ڏEWTuS>Y- ^|Cn>c 9e/\&ꂃF %Tie:O݊kZɜo@o jR2A7v}WV(pk\9Ch(s]gǁoI iĨ9`.w !N0ZcDC">hx&s#^imӽV̻^ovo@L|.M 4\ RD&`/2Uj6>k2\YHlVQ,|ڎ!;a`g5}ʪ2*!8-FfJ׌ŻGANb_zh Jܽ `1@kW~;xU~ZES5mQFI @$Co} /);lqNO! α;| ?Zol3`OΦ@ьJ|,qz\BR~[ܤZ\Ђ(!@qYwB}jfm>jjT<+<IvYJ-+sڪIb5.Ujň]diJy/hA B~Rxp`(Xr7ޭgr EMj?+}L/~nuO8'kɉx#\cش jq1#/+w`IȊRQ8!(nT>G oD_<5+KZ&c[w=WZ3L|40>L&a⮴ iIX`090}Z M7k`mtC<}d9}Yb00o.rQUkU^^+%hbܦp&$4ڷ\yg>'TeB[?SaX/'`Y .LuŎ l34/ܝi#mY''V ]8޺3`C_pȗ$*V&XF~qgǷìp[4k%}<֥7F KszW BFŎgfb[>@ 5`h/>2םCo 0Jr4r=¼:feAP(RWC.;؛E^s Y|5  เyYڅ~4S4UFd>G~;W1%m#tv~ (B)i1<yFA jsfP1ݙ6.tG0`Wor!#Svicq-16??=dyq"RE]`o7*Hu%k\?%/| /H_|/-1A?p'*^mwĞb!<(e-v:M}2cBV2b~OmexԾ#LMM?! pw>*-S>ݚr\]\YμP؉ YyɚD(?Ȃ5ąv^l,,EBWp\UETŢr dEFqWmWc8k2 k3Yl;+=u0w?;Ry8O07ülz!a$u!aaE`ZZ<7/8'=#0p̃i3y9#zquy^3{$ܚQtXJ~րor]c &4<s6.4-ٵy;ȍy2nq"{c Sa/ضF. Fd>TdKX|E4ZBW>gmvJAy 2;<mrے*% Oz #j/ݲnKS!X%grk'ȡ^S} s&W^ƚTf?;}/33T@x"m^pMK=/COsj^9bX"oMFh%<62Ic i3ewNܰCb M*fl>ߺʧɆRm豫Aܗ4(j~L$QR"|0fA0`6—IX'C> ֠kw1hg K2hFQEۖ~Sn)L=a;U9dFAU/F g./{/ e~_\c6*kSOM_κC'~=P^ z.RGDA4QGsc1ꇝ.]=6ƽ)ˀ:1?W[](݆Tx2%aia AgU[A-貋}[{,08j${6C#PDn#Н@;sa}/qhY:kr2hr;:d[U˓Nσ 䉟5Ddkf(=x`<2 eW]!oǓ7ܢawa_Ķ"˕//-EO8X-'<Ĩ/ͨ;Jc&b;..T?PG`^F%ˍ9Vє&op!Q$ z#W  f>5IԓcQhWE Y9ěࣼC#0qInƴ~ rF!^ΏޱGY*Ύ5)>ČDeG P_yygu[Ҽ F1X%+si0־RixzPng%/Q9%s\l c,X'IeYn3aeh<ٯ؁}9& t{}O@IĀ>zXoiAC[Ku=j ᐆRV!({kɘBS_Y \K -7Cք#jx %‡(3}e*N'DV!ZbΥ]K6XҒŚFPv%pl3F?i:s**aGWoQϱ `>!T ؔb<xW,ZR}\3zE `y P@՟6F\,gmƩ ?{/W"KŽmZPP\}8-ks'5ZēK:S%גp Lf9O.SVY ~tRvA_ŷD Kw@ۣ;mէg \/[ep$]mpplhd_p x:޵GȖ @2ێԎ .ҵA&6m cB+T*UZ9]ZB`@W vV1@vE=70!'y,ˤcQT{T* 7SuzDnGeU¿4V8*G3%n%[z;\2(.Pq4eq[vuyuδS[g.*2ېs1R{#nɣv2T %2<.GO)y-uq։# 1RT$,=|eU{i)Me2alFSK7v;Q!mL4i [L,e,lOhzw>Cdޟ*Ӂ&:B!]ڌN]E ??0!;yd&4D}#Vo1jԍ6&8maa܂THhrRTFȖxꞮ<?4Cc qěi+f4-ԏjK"!f<ؖd.~~.E9U=T@^YY& ؄npq別6WWL8=9YX>t.?i@{=];~Q>9u7Ɛ3uT\Emx!50(,rتޣ#2tc7*X,~O@;&dN1_ '2@qvMYD-_G 皬^յNgb/]r!lfˆZ,*#Dl15w!|Ns"4 0Up{֝5/,3ֿ?"y*F;RJ$kԿ?sJKHH%Օ378v##~;cѵ+*saMg}`s_Grƻ]jƂP `'^.l ,DF;Ju|EP>'ܥTEK$LO l[l8J䑙hdl0.0nph@~~؜1'M#kY,?\|L5$M`Q7P,p%%r?߭MR‹3 ͮJgNc # 1ZJ4tb?g$ɟs0蠞榮}W7l,6b L<"R M*$P;pàHzB+bxnpPְΕQ"ELi%D=<93JS E2DD׾0y-CIo0%VݓYcB|ma_d;[ɭ% [%CmjԧN},LJx}@hZ+`bu}Kj,+ 9F\KaJg i wD[[pq b=| ݒ"T$hHlݻv80xzgh$\ SgR9S[G?> h`eO7vMÛqˁ| Г!FA' 7O-ev@ E5{ݛ5Ї4 y7x44TP*t$Rz_NEշ=C֪|؁)f8!ȹh;s\d5 6;T(itEz|`zhKX1;h#6ffVXoÁt.;|O)|7l% k5T;# iOfD>{) utf5VSpHSU8rM0q~_}wbtؙtLr;_l#vR^aJ -]RLkvUe"("+G‡i'{JOyCs@c *ϖfU=dü2) Whh'f'!ۼkDŽ-Rʔlg#,~BZ׼x^p, 4ꄲ(ٙ0[qg/GC"mZ؁ WsЗ yjةr ^@RFYp~#:9uOU}C".iUNjrմؑN dS.BCKCiqA|ү]G7aA|Ob? <ՠ,>`Wb3Ms5\9ʳX$}dc|͉Gz[Xpk0NG}*oZ)@Ի˾ 2${]|VK[ fZZ0Z~Sds9q#ϠYZ{XYsFhxD\,͍ |ml͑jί X~h~xVk =3*eUԫ{*7uFRw^2|/ ׼D%r-TwFh,PLsBi)#/Ls,ǿcy ˽sXD( @Bޣd]X5O剶xNwnzIU*0!r[#pӴkfƵSܑr2H_x@ahr±;Z#^ K,qgYo,/lHvm6U|uXoPgj;]ȼ)V`{"D0 a" & W~_v !$w*HeģEam(=L67AHޔL(ڛ|ȡ;jFzSh0Q80v;թ߮xR~X^z?ϑ1hB6FW#71R @ !)y dl޵[pd^X]IL qSEb<){8& sh0.<Bllcpj$T_W}UG ,ZJjw;YvʶH@D*c"@wⰣBJϴ8꧄HAE.0+֢ԧZ^oxCOm}#zob3<>f_U~cqVz+?ܾ~5zoƝO~yd8`Xxsm0(]n\D oqp\;Wޏ@~g 4#l b 9x7o$|Jmtv\Ugh3S)d$xEl`߼qdBHaX7SœltOKh@neo&=c! sDb*gU9[;t?0Q(!+SoP $O&!0xZxYtS mH JwM M>8"+`͕r4 *ٍ ߊDFV%YNt@.%<f ><l +Hql tenkWf#kewjgp:5VB?C"p^b1ZN'|8X[r9Te~n=b)s/w(qicl((<%Mk{& )xBbۻ:a՜"?@< `PM* SnEQ|o&`U#y$gP ;l#Q"/rP#׹$ .~t<,S7QȆ u  ?GX:'ʆ1t;纰u.HkQz=>$Txg"rU ,om PXu(S2c䮠+Xes 3lp볽}*"EY?]E?፪ZKmt$*iV7ԟR!)^RLRKW1,kqdry'*Ŷb?Bo&M2."ЋsU A! Dnn T *<:A)Qy*@r=̻,IےU&R) +O& úZb+xb.wur9Wk1TT+OH]ܒׂ\4L߂fbO~ >޸Ep]=.3?d/;Y F@W /M.h<(؎XA+ (.,a.7kɼR 8-(#c©U:~z#/m)I& FAFp5Bً|'oKhF)9 eœplrl -SLc(R$m!?ƝDε5Ⱥ} a|ӽՔO0Ju-V!&R6Nz+Q OED~03O 'U @iP(g>_פf v/y%kŘG5g!7G*Āy+pY:X\B*@x CdnX?FsuJBycw>s$+[Wc@:E#ÉE?3S}-/DpF9웑OOți_Aa𳛜hldPDjYMŲM~{- P/c(ggQl j<6t"p{&'0e!.&Il):/ytԽVUMjS9yQsY2"mgAoW0j,hKx~Z%h[oݼOV_5CyЈ𡕀ˀpYVRt:_4֧(֦KJFHV CDs\Evrm:g>6cW=. IogkP}7K 't ^3xY+vXD8"&Z@W|w)ua~Եqlr?+x^p GhZiQFDx wFTߡE:9a%\]/2x0{A7؆d0/ oWt?S1.DTحl=_ܢߎ_.-ؾñN1>$.!0B.}ݺUXbؕU5j|b5cǻw#'3T;?\`٩NPbS8q|B~מ`B:{WnJ?M+2`NJ'ƍP`#DŲa7 gh :fr@'q^ 9b)* J{úN&_#) P94w@"ƮMq0ʶ#w#B/<+ҲۙuYi{3ų䠏 |?1~ڨh}ᔹ0Y/6l%5'z5P(bt (*B=ы9'j\B'.%ͨUCPvbG#Qb*#ˢ0-#7v6\^A"cDIħb-Ƥl4 hI9:Pp g$PC="*6-h|78_~kGygl&s͊K,p6" @ Y~%ay!{Qi9ػlI7W Q~|zXⶬp4Ȥ|LOhR̙ҴnG!S-HmK7 -I1@Эgx6[׻];{$65Q/T8r{hFVx(ٗ +j 氹)$,_9qsa<8 l6fDX3mDZϠѦ%y0CG= n>J-jO$#t+Q.bK2H^^S ٨!3" LR۞Z\Sv=YG&bLۯ5ǴRWA\ЌaRB-`i8Lyibmq)H!: }qAGI+=|g*|Du Y4KZbڱm4 tev,$4!G>I8Ly8,&s(juգk.e.YcC`y&`ޟݣˀU|hF+ SAGL& UodOǮ3M~!)X}&(`AD"TeX0v-0DxB9Z,:(,Ou`.;x>OM.1fݩL!7(TgXҐ3g!se_&\rMi]_?0K:B[2sd3a$s"XBge*tԃi" BjL[i^ RWOn:oTa0_p{\=ۃεodBu*CY 0b9 sXmk4@z2Fw{]&zٲ^in>PpoLeџ0d'x:uTոrc+@*Tsz[Cz9i溣:9Te4HuJEw?(u*([fwhY `47unc4KsHأX^74wʿ%8N 9,*y/w[K[4S|  J{k,t!=Ԙj\A#Wz-0.U`n$q6C29Qelwk,574gi=2;@7@~SOF 97#57V6qjG?^,ژ`<^3F |d-{8w, =5{.I[ xp%Tj+i(=xRpOTF9s2bx>stj8v-3;|W։Oػ>Ոg=3KBPhmD(pQȐ4=ke.X wǚ\(s+]p9$㹇b"BVlŠJN7v'1*_4P0& WYӅQP'֩>&o)wfNp?aV5@jE !+P#  raNxLtѣ՛ni?2t_Î ,(=FP/vPs4Y5Ek}Ơ]6n{:mrv$:k򃩆|gڅu)l.L;%AqdwڠYqމfЫ=|'cZ<ȅk|rF/i#mT`(1'/|?ߢ1G(?]!kʖҙ&`*>0ștMRUnҀn i ˇiIT'RfϦ t)?lm5z ^] ~_X/gN%[϶G,\@V|#lj3Eo/?, hd75drJIk2MDÓƣ vɹO^&M*A{gѺrH -fu48uˌG#,eSXTRs_x{.$VHEܿ8<:2[_8ݪwD=I`[I.-鈏(?i餥.Ad9Zp?!9!n|.4@y0+9#wWd솁~`~A<FTrڢ5b.{szlpʛ$^84vtwV2CG*-TdIoBn@hmd+!"r*~?1jGЇAȨh\9;T0j OL.(c~J&3s`W(/g9,WÁ_/)m[+3<@1b `80Ty"! =9/(ug+냮V^z=1\xU "]Qe| tZ(@bVw- 2 S:" !ns* ct}{Y|bo$Fe k2W3qo}ڹ*} LcnxH”琧4͸zo{r ExY;Q(G/Gݖ8TB;55+{=Huպ2m[lno#Hte s 2G|Vؼ3Z{Z5vRDh8 e$4[6k"Em zL/*rks9h4kKˁqV,AniVVaq<գyH>oZル!ŦW̑R's(^8nYW f1" \3:iHGFmFGxzB!n\Юt2_g!Ya9v?&1a%a-/\8>"\yrs\\"IHB 2 كEդ'M/ح[V@Y94z#A5Oas6\+i+(d<9ހ53.J(?kxo$s+^n[,$?!#qe5>]#yfP{V܁ÐZ#"/4G qT3,us"V&nBfUsx/^6|Ut$"OV9Qhbd!F8P25~Ls[n+Xr~8_W&s)feX?cpKb՘؏qR4 &CTQ}yw+[i :8ݻϱL)z?;:BQ9%+[+a!5׽C7yC-9dd gXZw{yzF/xGJh L6DVNz鉋1)c5kLjS_tcg)6'!b^~|W^/&C\o9p`3&78P0arEd 6Lg{;3vh1zmOe˯,W?KM%~vS#Uh*G8\ XJbTbR:j8}QO=֖s1tlGX ,D/.w\edHozPp0R>*3 >ix_K ez&R4yJR윈@/^AZiYv`]#I.I ancGj~Yl{#<ZQ+6}K];>u4/9S\ /\҇BGdOMe*o )\˜3̞$Rl~)zB*%/o"QC0zw*iM9|1*8)~m T0|f\\ۯ+󼕬MDYk֥e o%oI{_@ZbFū|⒞ vRuAʡ}ɞ9n%3Z^3ீ9̈Pyub#&{Y+&%Nf 'SydPkШ:ґqI tvDD`d( ը(p0L^9WXvl:?ZGN/|9ce*tΕaO,A&|DxsFߧF6hڻ{uj;FX$2ȦGaP|wUz7;6k$_CFRΤF^s=u5/U}˃/Aߴ@FZt9#F2ۨLʲQ߬?KY&!i,DW%UL[MZ TUx ζ)O ˒6YY:C)0qiD Ntd*"ۮz|tliGzoB-&CWso핼pj{{ՖsY 1PAbL.4A(]J8aTAƃr`lNrzЪڍ]ng d$ǧJi]5EtHu-"=d<]9Uӯ9+ܑ85`FSBV`I$ lӅ(5[(8ԓJ[#uiOשAߣffi`5ҢbL{Ej#aMkK Q3r+Xlwt5[;x˙@>s΀B[KպtY.էyG)j H{̛Oq߄e=6Ībs- wψ|[!uI zf$7QdTxOqQX[j^NV8bȧ;6nG*^'ːN"cB&C/8.R/Tż^̓D`vaJ!ByvkDajnT{;:SUrUt~]Y7_?>{Z|, s qeaR!˯ Ą?*UԐqjI1;Qс1Je],G?{&i,݈ 7Pd\f]bH#n ZgЈ1I+t "''_r p+9B&.>9uW$Z0pEb}@@3&YH\%)3$R{@|<[ S0), q|nl ;fԇ `*( zN/׊røMؔ.`3c6xfx늪KTaD_=k7Yƍ=v%3zMov!K@MlػVC[ꗙ+=*X[ό8fge&mR.ɠ=~_&IlyKۛaE|8raýl#bUJ<)w}bP9ZDQi(1-kuKxOmbLumh9"ܤˍB ihir{G[Ε1^ \=pJg8 6j]33=i)Hkg$mNuaB,l)q׊.ʮ qXTjj%[U_um[,ıɎLAA(\ T9%  Bv5՘bS ">?tu^y 'iqJB/6=hga!Rn!ɗ&StT413mKEN|Vdwn Pi~=ɎlNGmR%@`n,LiYk6ngUab\yL]џX";voĬI?O#0EdˬN] `logqde[j/T*嶲I? KZAU ňJ=-/ރ59Wؒ׸ŎkY'?)NŧMz̦{QU|e8B^EZH#)#2ˍeM(]`C.1{phBͨL>DURj(>5G2ڮ;ݙ _ ]Ej :$zZPh~zE২?㲇4Bd,,( :REnj$o3;\bp+r$JcU [\| '2cInAU% KO-B[#An(9' *e̚reٲ,pcMӼ-BUʛ 3+ 7S)%)F^+$A7pHz7XvgSm3&v_d1iבLnp0YRGҚ^/ԾdCvgS2QJf#yjȚU&*,;w}MK#P%\(+T_Ae٭hb/{ PϢ>钗l&w(c~ܔz бZm8;uQ$y]vϱK$0JnaU҆'ۥ/D-ZohK-guoTU+Z]ŲBbF$Ի`"x:[ 8LZH2; \UbpmLIu9["`+sD9d!I*%vxN7(:>r$Iw97(]z!}r)) um՝F݂'%}:vXiG#n5x6>xqJ,1(-5+k|dX_| {[0;>H* nj*D;N:5"3V z#F}Q̍Fu8J3Veݩ0C\ٕY=f"ze,C=2:_ úw0"b 6ٿT>zd oK XQnA #OWi/茈E$¿sؼ7i+knܒӠqi憞E@3^eE} \rc|qD" K$ yWkQ1v |zfv:sW.wTo <$,kNd2:rOoX*#psPҖ5db3T4SAbDprc"K"S&K{r!,y\h;QV닞"1GaxgLqv.jd "<@Fa?;r8f˨9'j"[.w&_gە N SJL,ɯF7`!O餘Rg8X[I>>چAv ͮ겻nnhP_9Y)Pw)dQ%NR^uI+Å= {P&F(L,(8<%,t 9>n_U*=<;_ե\F~ y 6 + ̓0S&ďeJ2uX~ة[˷Eݚ7CQ0]A%dogp*pNjOZ|X7 ||8.7?Z4^tLĹW` ))bo RrrWݣ*QISK߁oKnCg9%b+CR@VAV%Ck wmBEd2!^tESt.S^#*_xBv~tg!`c>9Ɔ33\1^%& cG`w4iq|PVag? f duFfW Bk̶׈".a{ S.nx ._ݬOY]tf_<*_;SYILf xU_5%}ь7qtwA %ڡ(iahn[Mhxpeh+^K{ 잵J.y=҄ 3NQ`XEPŋxh̦SyGp:.? [Ѷ짞-\{drNs Ӷl2 &)>ӱo~+a:4I‡^9\[DsRc]eʎa֚,g?#̹-x:q@>N(Ah<֯Q9opN*=cz gHăӗZ#XTnJ}x:ԇԬWq;Tciv bxƇᗯ\2.X\ 28PI'\U3:9ČPv/J=$nhuQxXBT,dXpdrfa\MpըLwNf46?3e<h{sܺV}+v}n iBLPhE|#hQCLS}Y2^ 5t]At Vuӣ1'P1AJ: y1+GdV|io1[EU ȕD0"O<KB(F&ϜhiVAq< mqp-QFH&(a_ {:@ڣ{RةE&אqNQf X+{) ]=yb; A?4 ß}î 2_n%x’&kzb,xP#7A1VBYq 5YcHW)Nvyɔ$+ЛkY׮K몊_WpjƐ;YrUZN* Kaӕ"+]J'sȰ ,e"C@,zsҺ[dp|oCnCm#_t'.؀5pOS)Ud}zNqE{Z2gYt/}#9!$ö/{CB.s $&Z+ՎMT-ぇ:t B 0"[_'<{ǭ53d4 okݬj;ī,AWþb'`Њ9Z'cBn(~эD =&˅<ϣU@ &`K=~_7DQ$yl4!K_ʪ7(92>8\VUR;[K :%xz1DXb'ڰLzO&c<[~( bpXW|/^S4HF_ݬFZj56Ɂ(#J--i^54v tuB*8 ~`slC%[<?"}qTt. PNs'YefMeSޝATݾ^T|& sIΕ٧>m?RU[+N6 eڐcJ;U7<#Ε`/葻Uh򹊁!wNYGKyG1H `h٩`t(N~T}o(7oon6u[͕)OF+"]< lh>ӓ#V-{|n ;Rt5WP@'8VL1}!/5-E!@=a;Z5xI2)OHVVޤѡB^PYLU'07᮱Hh`#R{&-H=/4xogB zv6sxJ>5UNU8}&Wd.^tk(@rC&w[ [EZ|[`Rk:?\^))kօ͚(k Gw@5 >&](zSJ djƳl&}Mb fs3eSrVb Yr&PU>&`L[CAy@_=L$XF#h w׭m"M qrgq1"en˞T6?4~NkHa)WP΍ 5TR%ͧbaT!o9gJƭvp ƹ+` "L\Y-ҘkjPı6-KAAuxOݰ=d8t_a(t*= hu*Rm g~#0m=6Agq̣:PږtcZrU zD4u.JSīrgN_ æL\EoR>Ӧe#\UdA.àQ :(ieM6C(KORe 洊iWN֝{/>ѩ!G(>vڰbbnm?֛FlGr&7QzdH+x,{}#ZTpCuRҊy5@x^K1i%]2cȁHnH _=e ՃBĆۯaŁI'$,&󰣵!3*!~AyBzw4Jwqzgh(~VSN]@h'H{OH[_7~9<W0+0$ Um_5g ~E5g-)\ |^ñU9c߄yNCLe)m R@H.ې`O@7b> C- c<èkqي}GY۸g*W@6ݦ5}(Sr.2rWOW_Nڇk<,Fa^T˩_ lKoQx D_x۫5*(yԑ/a&~ԅzm2^`},IUt !z/Zѥc/, , ѯ'n?q\ĝO.jD@r3%R50?5Cʽ}ROXlWAdWG9xQ׾ ~>*ݼ2J@if?)nACNiJZ(sG]_EU*Rjjl~yϔe 'sgyXjz&nkX~eYx7 nY 5X.% ArcO=@OMdd Uvp8-FڱXO iN_iC~:($Z_vM`(Uyc \A]]Jː ,4.#,@|2Q3=zɩ3t)o6 ̵Ɍ|}K \TwbU_~/S KIul;SI כ>S5Q1ه.KD6QYV5aH@ȇGȁM[OSȶ(rDGJ 94m7*8ִmry6u-cΤ.j#mֿnO\6Yg3M@A ߒnn`0[pt6Wt6DKbOp⋐vcɅ{_Tg?4@MZI)̇4 [)ڔa6ho_u@2"b3-`8!<\FM9.%P-]0a.(y?ᚨ/^xfBeC& {>*4YE0h&wfYVk@ls56GLHԧ#Oi'DٷeS*B9;-*P4W/;Ùj8#9?zGVXOX8 }=jyvNdHWf@ߣ=nNk dz=uə1Ҥ>uFzqt w"vzhEx#S>=L.>OR:0iKBN`v㡂p`l0̯n `9] l8 e(m-kHZ#cEC_gߠgEJT._GHƂpPYꋦ->o7Qi=ߍd}RvF6t Vg 4vh+߻NBRK9:)M 9(.P)J4X Pvp`5+`Z.=CIUDfSW떒7e*/(Y'gswG{SKr_\'zIZ W#ؿRo 4fRO?p׿Wm!ޖa{6\/1e^Y{ l@dt @qȊ9to(ıƄ^Ҏ>9fH"$(ĈHBpe5p.Kډ!>I!] DOnC2  .l2ૅܱ[ <i۶yysa,x揅M:yy=Þ%D\6VpMr+SHNr CғW9 5~}y皬|nSp  y> с\MԠ9v1pXfn.3~`*">dl1+ ;<}4&2l^fA(aN.t?i Ցd+RήaQO\lwQ\|/pTVyhs afO,( ˓|[I\Qr2h3 mg"(dDaW1[ߚPwٱꢟZp[8@V?)6S\n:L+cдEҵ5Wp{_e'9T DZ|{u;:0!YF֊=#Cfë6"G~|fX)і΃5>p(j]-}=lw76<;4Q@=Э2y1oRpMUg^ ~ؘnP2oz!m8ñ/lY^_J+ OömqNOr7 G?mcOuڪo<0jZ:A9ך+\?Ѣ$ !8FK}nؤ3ݑ7Q{^p_-(C @qءn te37,Vƒ%z߫E- fB6NɃ2/ZtJc4DJU$-}epˬӼv>~V{M$Hy/w^ިثzXqqoXvOXK1/S<՝.Kb*xv\ }4E'VQb:0&sZT*?k&xEr )M{ߜ=.W%O{}MB|fer/`T?JD=OׅevycZ'GvnKqb+RK-5M:4{~nk+xm&lCXW>lk4ԡ3#L/l52\GßIWή ϛsy gRgXE>Ė=;zj~U*/NfQ}ZSwM/Pi懎40nSƱǂ:ee[$MRUo|ђխacΉs<;^/?FSr1cd'L VFΦWaQ#-@A&rMK8hϗt _3u}AlCmOQ i K6s=Ü[vhJ~ܒ W?Oߘw}X uSW 킏k54׭&\cd]#!ismMQҞKD-h<{4H3^8XjojG ] my冹Ki"o~.qҨ6.ߏk:%YmoYs$G3ڇ &~q2T1(ƛf_/@c洝=M(ʤc-VW8>vͦ?AM^R8w.^ DLjT?T (2yqm!Ʈ$_Qk^W] کF͉2DJAu@) i4 2A++_j] & J6(CdCi;d cf*܄x`}G]"(ud9ٿh5y4qJ,鑥dI.F_sʦka¡> oq5CB?>b4l_f)JPkHIpf4nliEyd#8Pg$Lz9{[fG  #.&e崑JDI ߗnZӲZGyuׅ<]􂍬< P(H^R[VaOUz:w >n #˃ڔ΁l>* @!#;ʻƱG6XE+UQ6Fo8e3EFE?:dB?Zڬ< "vUcr\ç:T/E2ZJ]g6̤|T2DtۑӕOKƾ۞&(Vo!” &_L6}r.+=rh&OuTXy3嶼9>+Z RX<&_ūP9rlȞ6 B2BYgWڕvcPφLS@19x&<@>9)V>-sC1S NxmlSNb\ '9ˏ#)Ylg,̫[)#X30PkҪ@qE؟$|qe+X ݹe9[ՙxz 78 Vj>=q0hRWlN6[ U]d#7ewe`-md}d#j/bLrOPNm8x%, T2Xq[ P|ڂ/ѣY%G>pxxa*L#k5q.GBMݫ が͂R㏙_᱐-ʾjfp>l' ֘LQk~ۊ+ؙuyRGK8%W y]%@ [[. UHp>0sʭg10IۅmPyV-#|i2vѼ {PeUJAP^N󐒬OJSajǭ XmœuI U`nQI"ڱb=20|wD2M?&&E/*%'G_AV>GUټu%XHdd&|>dL~͕t2hѬj#˽>f"3tTm?jSv%ArbR9Z~QNL;.'S!zEqC(On?C#/'}>O[HB^m~ So) z;IhRָcjGcEءu/ OêGP/CMO8[ADcX?O-kEn:>OSP>Br:#oN88N9vcƉ^|8xWEJ<üP80BiV=uw5Җ^>o; XhwyYUGAk9?!Ω)B*h4^ilX0aGИ- ۓ:e,Ufά|ρ\!׳Jjs@ iZ*R;3YHx7 ULohήƇ=v<ؤMN,Ѐ~Q ۹1q u:%BѢPjr"$Bqj9fZy_Q;P_y-=}ZRn迹*'+1reŰMW;'(F:f?*:hI ,s [dl3iD>(9ͥLWԞ([h^jl*%aMHe^:' sIR"ԣ̷y2o G3h%$1z p6 JEagykLfs?!M ynZCgUIG̑΢uarn1$^݌Pv>E%YE9t91|< lA9C 3\_WA{S5Vqvo*aRzPa:kh"M.3A*k2<%$T&Oѐf]TDd&>qk0M+Ll "w08]SP[}]EQ&4.GVh>epG,"67ibm8%kKi`xWs|π֪ Q s3D'R߼_R`k<rNЧ$(c4{򳬍qz?+d)fT ~`#;ݏr0fL7T:^gHe!D gmP[&0&RY(ocURѯL A"[^D69Qmƞ V"jT#N}(RcV[Rj鸘⌤Dݳށ}Z+&,f"wKy;w~ ylBU^壨m|Ueeӫ/V"Q0}0G*\)Z*7vFNrE>S1" m{Bfc9IZuZbk6!iVr-iS*]e.4z&̲I_ 6wUNeH0Āxq稱P VTy>|9z%I8$kB82׊+۾EUi^G/gwSd?\)UsLݺw Rp˞^.9DoXH.,Kwo4I+ٿW[9DZlc:IC./h3q~eFD:(T֋Fr>˽y.^BP^s>mq8b6t!.H\o%@?­O骒^ks>Rt[ >3-9{R4ۛ|ru^]paa7#7'̆A%4Ε_5J)T>[¼UY]c\\Ĕ|S:vͩ[1FP6#qQF v0mnH{k#݆`y⻇@f$NR\bAa]Jf;8L^Wӭ+HB .mxp)OAvڀa7lH`R\Dz(LTt"S]`$DGZXףT]zx\Z0Bk۪J! {4P)-\uțHtmsZ?lCoo9I{ȁ Rw1quO,fyaj+V2RANG'D顷| {v?G (7\8m%HՋ 踓>\?ǂOXN:՗B*ϸICC9t%I{r=H]\=*NJ կ8ig{ݴL/a]S9J(Âz_0׼@=(KT6a jLX+ةbz(\57q>8&L[B^e8?&uŴfnA}0O*6PciM~rAK]<{iHyqH%xq"unZv1JD-"/جH؁ch-P1(Gqt&:ey\&%Z q>3vE<ܪ?xnT[[1 n%/Lz24iRsQY֮]I&C$Vd-Złhxأk}.28&uX*d_PZ8R0#539V”sAaq?Gk!Nߘ nAc:ҷKM6(SF 6jWZJqCz5HRK(jlU#H5U>&`}mƏWLc]W-M"+*>,V?5ʶv?9닥Ǒ\` NYJQd~k,V@hWuy[`]Eݐ=KNaH zHm̏^jTLJhRc/a斏_hЎkW;n0Zw\.$mi}[g9,f?ڶ+] dx Ԏ,fx Cv?Y}?B |fm"#Sm|׌laj lb Ҫ#9" %B'TMT1.= ,'n=@gzD#mև- Cw(#;Ēm"ȈXD#j?=-Z˦ ؤ!m S 3kڪTH!$b x~Q'큦Mv暗Z55 mrmxx;g(yoyڵ$Z}q9-t)fR?IcԔQU~\k8 ԏSB˪ed Ԫ7]:xx#Xa@X QI]EF  s=Hr2"q:#gW`S`tn  ;784/E6aTב ڴ'Zwectf.-Pr:j@wpHhO֏*{MY'Qo.I0LA6tY E"Cs+eGX mt -lyC UJepA2$,MhǏ881y8īq f";ф "[>).P}zO*:||^ż]7e0~@ |C PHD=lqB 08-lNcޫWD0`i[JK|o`zpiE}xhOW?YW"Fn{ǂ"9uK &1Np$CjJ>]zA]Wj{*c3#ہW3Y'ElV=v6񲯭~,+7˂Xf 5)'mSgXXgsߍčBl*Ha㱟`@Dxq6s)bNf𢚰QMޥYQI( /g3#-mhE{yQXfp%Xu#ƌQ!k@/)?tǝ01aI{Z`?Y3sqc, FOIkV*`8x.-Otw}9w!fc rK{\]c1VCb'&iNQpqbޙG3% Ӌho%,xOxD?DW_&ڒD15[oTb;Ǭ3ZQ Sa$~8q] fRsĔn?y DB"`Nzqr\$8J?Ϛ͒DG?fIv$9@Zא'/Q*wsS7`E5SvkU9 = 7,L JEūM$xf կP~x@>fIOo@áLB#(򿟸 \S!L&y?4ZM695R 5flѓLXQG;(NsT` 5d}nCL-_ϩɍ!P͠I~J*;an)i'` Ҟ6qִpHM:_~[<;KK}h|Րۦav [ġ%Tcj{ݶ{` M@/W|u.D~{{Fu=IK܀=yd&?g_Cˣ)}?)VpE-x:H5 PTj0dF.^E&j'@ǭRFI3qooxY!cO7Kx4~&hplSEz1*9$~bxZD8ś.!=.z ރ4 %Zp;>l6ni9Ԙ +>b؟1Q5QaZ+lRhZJic*28bHg)hөH>&$OghMĆ.+!"b6_;ef1sChJ >2*;7Ucaui=A9}N{x=QK/E]֊xpWM.Q*j5!ݞK'!+Gu _ҢgQOs$Rˉ{LHP#^c:X6yF·`Brx[]vCE@O*-"7TMB=dHWt )**2胷q?%bCQAȢPR*{԰ jj[]el=]E҉6Kݼ-Vv!@XI:IGX<]%yIqu^x2w']|`B=W!>z}\~FR"U$/خY$.\gF'BscF|ңnY*c$#?]t.93$VS/F"ə1XSn>VH MJly(-VD%'j0dD_{5d0;$ э](;zW(e\BvAFb^, U7ȏ%و(d_IQYˆr*o"?vKj/&Ž,W:EJ>R5of?&fBQ&({AL>|omYD5;1%V'1ЮD:)"_90~q,$+Аc=!Eo^Lm[N ?bP^FD6+W +WemY=qNK\m {w<0 N'4WK7 fqk5TW{Аk xb8,EFfl8TfW=YZ^,GW?Ӆ̍f1˝^oyNsh˫,Pk`CX;W;VOsgV:ЃEckH_̠P]p`K Vc Q")5) rcfH%]=5/ hX1wصxG0@WAYk7$ʘ:9蘐^E]VH.:HTY")]t嶼,Fg")gdž.s|xz5HT=sM.m*K)5QRP{X0(f8B6z'*3knF*+,wگC~0Q &`IyCRhw)(ť8b͔n?Jt;cl/[3XM2pCAvIj0 4d] Nqf%?>yL›{Q\!~Mtrj  Pޮ퍛y`#gGM_|J3Ar.;E`z 2y<ߪmYA(ńpTS"'<@!&aƱ4 fAȼס+xw)th]ltVkeU~_YYApWoN?hZXnn'm5$Oţw;&[Kt; XCWG)~cC0PwC ];YϠmZxd?hdAaY v3ié|&mM >i?"h=6#)'BNb@]wQ<&8*nL C7 m^%fĬN 薩';^AR٩Nq1|Qo@DMW2`YЂN+Fll@d!p"IN1glQZnoL.;wkwx/I!GPׯv՝@tC+=7<=N y )^7-.Go([IT @^ Efє9/"CVVDF洞n#I'ݢjT[GmwFy'ִ꯵:wce~VM (Ǜ =j=ٵ?xW0 5$pπ LVZ$YHݮ;3ُ0L,2/9wuEЌ}J+FeRÓ[?=G=1`gr_W΅4"lk? -%oGA\"^% y1술d9ޖF\/_)L/WroDN]Lr*5vc{T!).com'YOώr+[F \%CȖϓ2twJ&+ԬiLM1pmgJROBWZK˹r@WȦ/&ԔZm0ȇ3p2;l/͌խ*lg)q6 cFYuJW$(; ۂWgV sȼz6DEPNNs@'%(Y52 vmƐͽUtZ>7{Be|7N]J.mȏKxPQ3'8W)vC m|*FlĮDV]Dil֥/sKֽ0v'!Kς#ZKNSo#iKs-HB& 'YGjT_MyEԦzwtΖq˦HTTMm *A<$8=D#5qM4EYwD_𵳎!OH9Y#$Ɠ1VI[PTC wxz%€Wb]>S3mkɮAOt6 ]I`o\#xFU(  ㈊w`/Q\3pZ_wV]+Xqzf6kވ4E?l4^p㺣֎ "C5mA1v?qZDv߄f>ĥSc4r+(qgkZ/L a dl8z|'*IBl8-U9?RGEBX4$ycv۬ȤvKY'/|[`N·ӞL@n,f9a?z~kCbtK!R? '|`}P՛EFUi~T' "vثդj{DQG ܕ 9Av~;Dg0QML.8Ý]Mkҙx`ً#=dbAὁ쨪 2d.88|;= Wn;eG~^GL.n&hW\]9o+CkmY:ͯ%mʡeuU}/-׋8d1`JjguKSc>3,VTc2= ]k䪇(Sɂ/Kmhux0s|R!r8?ޘMO8p]L9|>Qr{}xHw@ô愿[L6a؁aSXVUY[Td:ߒ\ñjol nԇMĊ]fl#Ǽ}%j*^85 ,#(XLT j'[҉u_kQCQDL⦺ T&JSW%ZHބ᐀JcqcO1.W7y?0y.b)-v)y F``Q㩭Hsx_? ̫ެ5VƑsv,EXSүy2T IeޗNݏ I¯sAgGhpqem] tkf-yDC%wPDos6rQ~Af H$1UuKKqIrgzRbn5[ ësM. #LwS B&3l%FW}i8֝tOIrHK ȿ>0Cc<찵~,+BI>^P5!NŎȂ f%mРZ% qb~-qTN b 8#ٺvz4m1ER-;"ٗБ%vs fd5L' U-j'Ji.|{b1 tK/x䎥HH'uG߶`D(-P̮]GSkˮxVhćSqipCO]Kr1`!0vr=0|@/'T5vHqmTX 3jjENm_˯,5FI̤GE ی cyI\ дH*a` 0L$v1Qx3~w{, ڣ+Ap='R: O}#5hR)(fplF=fjG2($GtܤOb'8)\ѺI>c} aOgB 3{lP|7yԧEH'H+fDL ߯_~%uv'3 0vELU+Y([9 Zr4a`;bs"\(=뮌^?pul^g֝C~WZ%Ö&bRlXO}mcN -oHȐ`,n_7-=ٮΑr¥]S\)l;Y>XL>=HCy~yh*=<=7:][ ޯ ٖePxGqf]DA>LPmhVvF tXz`EݷpfNxՑP nr*}-?EζtVP? Nb ήW" 3]A7s wӥ;`F&DUuD'݊&.Bd4UイaD2eϮ7gj|z]Py}W*i~Y\ =7綏 1zEX; 5>َoc2H8Izs pGBB `{@ `U9jgl/4tJvXBaDnݢWb T& dj`d:<0|>& ZO'{w^K~Qŷ.M:G G8]oN>ag wdRf] >AG> j ei։擱޶rkJ& ,lqpqb%ǭ) ~&eBF($6䨱5Lu7\iL#(VqJ;|ײ,Dj:љ;}^'!D ? &vź "H fguZ8*]L"f}O.t?U>=,K\^u5UϮX5'1$7(z+)geo#Gvp De7~QKDףu!+d r6]A #HO)w]&_lOP2m [ktPsM뛃u<$ E:pe5M[G 1 Q&3h !?6gzb./ӭ^#>ˡd0vlePw2,)~wd7V/RΜ KW?;r =h^+eXo k NX@K-Ā͊}1鲃łhQ \Y2H/mj e4ߡRoʘ!0bmD;C$!Pju:MSw c ~xku[V/&4]u>5IEXv" vL-T+wUn 稯$s0UKq~g .,o&zAc]|]lHrq&ʵ |=+nدc0Ҁ1q$m@1T5d $>/$? Zv2C|h-Е_FEm| Ă&˕{gџ|vBp> 5S}(YpZңn^!Mp]!WѧY8"pY+SGg&d)P.GhЎ :fF1m\4BQ _%_,*3U2Ė5FV4"J#,nj:GSڙ۳8|t+SٔOrWWږ+&U򕫣 [LM,6$dkd&#W%J~eQk~ w#L\D:€ꂊvnH&_0k%> V ߿!3$U`7 웜C+(\~!Ą8q(B7w c /&:3MhzCQQeiᆮhY\f|{2"CֈS,Jb*j <-M\$|+Gq]kM\8d5ϒdI>/\Ӗd fp FsG $L | ~+K ^-_&"VKyF?c 1X/\AvkqFab*vI߅DbI )Q1dJ)ЛN[ C8ҙܤJ:U7[9i ڼyZVLE:*$?Z""kЩK~R["I \1RX-tKPϽ7rǓJ?%PY$5u3CgY8оI7Bd X#nQ_&N4 M~DtXq0"->~܊+̣V2 \B!}җ\@Pؔm \`/gήB|3b^- /u̞V5bc W9xK' /$0GCڄP+dǟ//ӗDK؀d%q,6uE 7v2σ"]=HX/ܫ;(&u!v FtPEٳ`_¼"Ň|J~;#tmuZW)g? asJ-\$+E4srߵb%Ґ|oݘ5 WaEc-АbÎ# YD# eOtv7#Q;<%E7Sχh4#-\"}9UƲ2<5LvQv,ˑ\emZ^J.*7gY]ؒͪA{lN’HnkĒ*K2;jG'OӃIU7R/)2u\flMhUl/C= \n09#q:&c2o6CPr4e mS&̌''+p5yqa:f79 }64ǣO_mZP1R&WZ`U9L6׸/,!c+Z|S6.pVGYoPU[=ULfe%DVSdn9eE{D z/$Wc]]J<-`'TJ>98;;b7ծj 'SfuCh5@%*[[ S_K379t2T#ǐJϒr{vTߛy,Heh犎UjA\y|ZCڱ K8[ڗ8~:PXֈ \ڢ$GZzhYg C|A\vun+Le '@X`k..QcoLڲw|ۗ oʐֺ^h{y7%3{j[3Vzu@ 0u]k^% PGqKIPMJBH!1#P+G9q;T 4}Wut%8N[F.A\4fDb0k! + i>Oo8NW-/AuA!۫~HR&}Z&B+K86Ok~]mYjʯΧa)weϊwF)i$zL/ A/äKŲˬq(bNg9ciM?bi7a)|T"~NM y3& bosU3qnm!&䬞hK9O&blWF# jP&OieqP:" Eop]ϋZzDjg)KZ&\/ 5HmL.-=>쟹J r)ʧng^\珄/ƀu.hϰ- 𚤶 8zN=%y`dD-1;umj|KmXWE ԫN&/?P1uU"\V:rs /3"cs#>#D㈗SvI,u?DjM+ 5 w3(TQ`˨Xy!ĩB2n00|Uj3To0.gy1@ ;QdHoAm='cXw"HI /~; &ݵ\Q V6[DE`sѴ>nb8k6XNg_w|Zw} ^k%:?r~*k6oi8ß,Or–mx*p>Hi $ A\!RSx@X7qim[W%R*wa$HyJc64=s|l\i@;W(zn4(UjW%hD%];,K}GZ )8Q4wb2ieE2CۤAN!˝/Iwk>Y1rt v۠)$!%]7Bf'N = b2] CpӰ]}/Dz.$w= ǏCvͩxjf[էUj Zm҈SY^g9o5ѵ1yMO@,_9볐Pw7^l M$X̄WCPb$#>Sƚe-aO)/rJK L;8SУ.p\ر`nDW{BbR;8{HE0ۙ Ie%2ki` &}XSv\+XK:4q2xQbWݘHyU&nn ٯ0:4ʲ%Y>@%$ۣLb~Q-દu6y\hEfvTTҮ*ˌ U}jJfuN<2-fA&an*ODay-њ66!m[*dؐ3~Hܘ4N"ٖCWwg# @>ka fGF #ZɎ~4i_n5]ګUZCOe4-xN%A+E oĩbAjg01/Ow ZIX&퍅ζ~'^Qή qGF"0V+Ԁ}$];gMycL^%W-˚18O4o\(-ZuXKN;3=tq,Uҿ£n˵Ťs໺CُCnjESRv)&/h cӪg8k*ב{&٫C5¶,Cmk᳨qd;9HwU'9GΠ`@ wrM}x;~B6[Bݦe7`ܑ ֒\iꝉ#7^B?}^M <1V8B+7"P1)UA햒vB vS,7W!j# [ml,˟w 2WCBSv C1ʹ)zi4W* XQpx\Ѐ M.-Rܝ5zĆ>DYTnCGA ^%L/P\$>]V{K&LFNJ)j2i<\NvQBzdgYfEx!㪦bۨeXvɌRP4Z@i4|9>NmK[\򥗛gA%t~SƖRq =FI'U.ce1"ֽ*/l7:kmHrRK 4?*1 OϸI[{x.MK+}9ӗ'Nw)\&\a'矜&xd)Y{)`br7/ MMh=a?o.%hJBx=xlqe01JNP/Wb#ELtD$Yn v:֤d]τ$v|A_Y e]l~L"C}_n|_50""b{s88Sвɿ }y%A-42*A(ce>aBl#uz"+m<#hQ=0x%[n#f;k.G9M @ff C]V/-BӬ$JE;CUM0W97tL0V Z'>gI;Gmt\τټ3J>}j.@靖 r k{eսY*pg(۳R1^,EԚ B26 LB3..N٠l \oL9q]Igfu3$7L2|bI*#POl(vm de{ &.US6Z::s\;M&0g51&pυ֋Ы'}}:*WNWF~'p^~fwLԵr$t<x]Q)yN㓢,l.PG \up~ְaoCz[ޖS0X8uGpV˱`3 Υ,8.o@-O9}jk1%Eaby~{)r0JP #DFb cA٣k<fd#߆ٙ`}5KGG^]b;ۼBOEBwZ|~0  @E(!l^P񞺥gBVTRr8ROF.,b{EVzޤDxq[ 7MQ'tt9z97D}X[ewkY=uQ^μN/K=Vx[(4Ƨ"CPQ~k;A{x~-r:}NKuj4a.<eF" pLLϊ ,ވ;2 <Nq6qc u*䵣2XƉUD D vi9GPsf!=| "y7 ,USV>1xzA4r_ &2 O7mYFݻ癝-RYNJ}4ٞ\[εA}u0~.HpPEV .nlA RxTϖ-_lT!Ee1T{$< AWYO Z"([ 22sAXm0r($jl(A1Z]tIf u.EGRzpVc0w n(>4AJTm^Q.]q(ыwd tQUK`f m=A(G>P"bkp땽w˝`j-NzfՄTyrn++u`[Hi,z71NG'Es\9IҒ .3kek#F2]7?GD.}SVX88,]K#Cߺȧ%>+T{%RVБ4A-P3<9g^!hʑ@O}a6f]kTd>`ga1HoQ|Ã㼾VeJ_5p=iY^6OS<]XXDt |*WȪIo)͡C!Z6BLuE\1ϕ%˷JI!cU {`KZYy@64<7߫}?|9t40&JB^GQoRYdOx#uS%a"gr-H+zz4P:,~jx-=R WiG岇#$6mo'\q\E n7CO-0p+!aZ[aɬ̝Jg^ҔLKP9Rk&ͦM M.@[ށ& DN<Z&՞iYϷ)x<<4J- 9 ]? 0!͵58 \O)ާ'hH=CA2~##D1,RV)!ba%2xc(|ji}v>w,@vfՔ`pX +mb.*&/TUؤw`0~"=nЗ4|HQ h I9K=%U^V>L']HV].*ce6^>dո{Y)#0&ZRKK~8j?{B9=5m~ʙ0%pU󢽗?` XϤak͉3gwsl&!sd͘wsxJb7D엚l0LxjmۗuOx+E8{Cu lYpcXIa#Vۃ,sc97r#Vf[%t@Z[1[ͥ53v݄ˑ373-(g%V˵&\&Ԥj;MP0qKݚ˻2OhMft8P,*VfƞM !TVO,pLl:O@cqe@P!0gy 8Ao=J"4%Eϸ#taH`M(Ry pUͮgmX.A.2רr z]}Y7j6^9\ }Ǩ勧fNadwqt}Z7 Vt<ō.|36J&UuW TU1b,0^I2*vҏN*OeAΈ//"إw uv C:[Ǎ (;>X:v&ycʶ~ᴣ}4$b*N^wRW#U^c 0V0 !rW"#.s+/FdV~JZPEQs L>`Q~u?ɤYA~s7imE$H&j(zÖpha[`v}֙*+] d35WPM͒= gw>\\ ~STQg)zL\:t.VF`GY2O9'Rk_ |dO=&ZDt۲["8i0g6FV:&uv*g@k6UC3|Vv_óE+#'ׅ: z8%dJuBz(_θ#p@"q/ ^~UkvGQLo c}ʬdn!|f}W3SSܰU{#/2%~EmyEْ(!OI `7,p(Q¨S, =W18ߒWEpY5ȝyrx: ݄ҐmE}xeLJkG"am1:SfUh輝 cɊL5zcR鮛7BRY&|);nH*~%r-O^\6\2r[q_\C!,|(;Ѷ b.N[g儴-+څ)rQQALE騥s}m]pLU?[;i?D Wۋdys$WR3pcG,-, h5xSDvD sV# KaE󩲴F8p("H)$ ,2?)R gwe@ԪD,h 9KUCrds-0@q] e~8t7fhw^֕ <м;_}°Юj2g=f.ʮcLf`_]ZxW^WU)J@JԢCG%oy=bK5_Vߖ=Pըx-P@i `UN)VkOEƽ;kQa2 pbb$mluTߖ*e"iNϿ|sT֗޵s{ AIV"@iʜ|O^,[ChXI-]/M"y1mI\Yenm]_OӜo [gjNrQ&i)'7i_ %D)'%~`hpzCH7ZB)ª۟0nXR}{tzG=zIRECOܪ) +=4 +Uxf'74$|=}]\yaA)XvT>wQϺms5q_6pz\u(_7QVqiWD2|TJ4 9>EkbFtB~2ުV9ʔ(y(L:+S~Qx$ԩA˟l4o}^[}nyQmR* %я6  : MPz htEPR|9Zoaɨ︪sDkzvP;ܺpB,.mX(py 9Yo{/UaslS@t(ˣࠗc3@۫vWaޡyMhn؊XuXP:$`8>F" J+`7w{CbȮ!dP,[ͱŞh;R_(W W+.-WI HsoNr"7u-[2e 4(NdNM+[L9b2Bsmj&A''h\F;€T* yFƫ~LoV6&)_/Ê"uosUOJjRczf$]|+IY+f=,`ɋ<߸VFIBARw'iw=mYk>Pi%³2+ raO!ig.^(٤5O]? Ǧʞ*d)m3UaM[Xk 2M$Wnutԧ 7u")j0Xa~PaTػ!bcrdpHАI+k²@ǺKOzmSEL7f!sϿwl/^ )KR[ ~\^娌ɬW)5[]dM)xS$Qx౧>2^]\;$tI_`q*VTa;(<ǟ&D0$f^?ilDqeah^α]rinY4+/w;$U ۾]\nQ50ݱcB?%zxh5),1mҰnr.$Q¤JvEJ2ݨٚB,8Oa>$4W=wvb9YIA fRSfi;G%%:>ӟ= )8&ѐYLJUg0 7f̽x->+G\߬ i(g A57q* 'ک)RcĹ{t4$@ЗGl{@d (g'¿ QIڠXe3ԽZc7|DVhwf=P6i4 6n~8&v0GVjhq:pf`5CFSKɆy+7/*bE[D1,܄,sV*F>\8yYF?NވX3g$D }՗!" ^b+cB/Oo{2d7H(?K e7U4y6/[8pmg[: c l'zyu(lY֬ک}7CKz'|qOܶb?$I6} Fxz! rxCᗗDɫD ^a2i1_)i-($ٴכ>bo'ʢ!M0wLE{ Hf9hj? Yʹ8u8_SV[]pȣ(tF"5^}2fK {s>"Owj[=a64oc#Q~Z}e`^٣5J3;ܴ1c!2YK1.Qpun T<W$]M²!< pPMN/ 1$ .N1Y{]ج0O9֮rXJ48zR&P+z[7GLJNrX7)x'hɗSxf_>bp*J|$xugDpȴ:oڛ%K@WHҺ=ne^9jt;.eH8?JwgIzѪkb\S؀l=P7ՠN&7WmixXhnNZd~[iU ;Ͽ;Z!tR/KoEԉ|J[*VaP"uidQ[”鷰f.Ԫt#HiNf1!NPkB@UʻM| }E=gA h^ k:=;Vōb; 'pUVVs"B[c$ yK9Mn8My=FK53a^gQ"WX LUno`,Qz+/o][Flٚ&zDӛi(83Hze 陂L Ko{Щ`09Jc_*rQ릦|R5;ڙ˫^V~ԅwR8+-ݯ!Z5tjeI[)^D\k bT:n 7a^) v˲РܗwXI{wu LЗ=Mݬ7ZnT6wy@(2+(=/6xսTLސ-xhÔaYƶk5IDl>sܔ8qQHaYWTѫ^tb!)Η% rwtHIV5Ap q$ E~d| DL Tj&Š ~ۑ!s_*WϪzU\`_a$~]pp&5b!SCc!>G__W'_wtPNwα8g@Z^}jEV8%]T XK kquWk:M(N裓t_>f,sC/~/Ƈ| pc:#c[af CiXe2IcJu,BQ%>1~l2N'6ߊj̽;0j]"3(W1 P&O)/C,tw!>u'7·\ S,ztQDN7I@|ۗ-y*J`#{DkS}(3hED&AT@qxT2&!+t9џ%9 Ϸ=054NjM>t9 '#_#X!el)З@S5ܺ?XNn_;LWV[ƌ>bfc00s^Ɨ3QRc,U=N:^+3 ^†-f;^![㨾/%m0 A㝧:I{I3>-9E N._GP/s-sE׭y YLT7iqC סJf!uJ( Z j Kj g=E2߆l pw{qȕ ԧRiX7)hO C ^ JilY)0 Ex30f<ㅠd"yXuEKl^C^/!n54YU|9j<(~ÃRHyݙ_dĹ2*VOZl8.d|v5'$y0j{kRX #͵-!8.0^cvEjwcaB1 ᠷ.mPx#G{+ $}M_{}99j_9 >u:I'2Z415grX4>,cYЄFlm O5n_Nu̪ n7 ,1v5q8t[͹/crZ˓ (^ne" ƅ iX˦/{"UEQkn4fk"ϮEFSbm3^@x,1[VwF" }jW헹 CVQu]LZdDٽb,Ĺ9xjpʳ$\&5:12Hv[3~:!_[Ћ$sJFNRO蜎8 I.*ߙsPٮq?'gkĒ],%!k zrWʵ{8FbprʭDrg9&a‹!#.l>mDw"KJ<҅H+j1p$;r;έtYXm_ol8ıZ׹-"Jdou }5Lw7"}x/UݑR 8m4 wt[mBn 91aE=܌=#3Z&(: -ߦut؁epPpE)z4V:@u4pM8Wea"=4#dIX`!vqÿ𽧔'DtZPzX"zTkliwե/^mgI±0 R L?K9NXM÷mXƁҚƵ3먿w(i8)Q8Q.|g/*(Cӿ;ump=2~F`&$*s}<5HhQ?AkĪ*WVSa+]†u"il2#d =VOG(_JASEE;!( =ֹQHyY 2(xiWӃԥ&OFDPamo! pd쫼Bvb[MgP0zL,{x?zLF=wwp4_ׁ*ŀBThW&{]FǗ'u1"d=ܦoH7KX VʚS3\UѺj-%prYV?湮EI\o_mXH ::{@BTFbL,ޤ||.0$~Vڰ1oQЕ ,%LqWzNh"0uW3/*vrBjJJO^դj1ܟK\n?)KkHh?5 87tZroC(ⲟW{0Yk6kP9ͅĈ)kf,͖]Z޺B8h@s_e6DڄOYl h -G1*%ckŠ٫aYlj/-ޜEtK YV349U#")M̓-fE^Sofٕ>8V7] DU]IJ,htҠ&CJֶa I $5C[YV9~oeU/ƨx?Xrj|’$eɽFmS]IP]%c8٪UbyxpOV[[]v'J}o.hsud½z?դ~vq 8N MS4؄&Q~,["Ӡ+ 'Wf}^2:uǨ rj?rwePCMlj|O%EMh92K%gzk"4w/J$Ub@Y<ϏF/̧C]ZGKYPqlE F]D6W̗Y[PI:%iCr@4u2dq(pw?²bhn }AKn#hݝu:F (psd Rg@s%\(Hbj,H'rɀad_$=/-0eK["ݦ)&خ;b !)nd^APh uĎd漋̣tr1߇B+D3u}8.LQ3zt֠fqpkۃW2`. ȩ)NdHvBF GCPCi5@[Zȳ+rtnNQ Hh?s1]!Q{61ŬlNuMpkfrpҤP7'MP/[y?\LFZ&j{̂1]vKrLy'O}2Yw$ 0+̹b-m˅ |ܝٰcX$T1tYiTߡBq>rQ<5F7Qd0kt&X'aĨ14μm'v"̼fysR= ,`lŝCɿn,\D @;%W&E(hRb@Or> >@֜&3Ƶ|mjgGW N 'U.[FD5^ƴ$#hjm0ckСh624e<%Dچ 4N_f#ҍVeY8Y?A$HJA5A#^-8 {zWq7+TO {)6t*u>?(JG-3ɩEHf-Oa?%Yn$Q*'S=YĴp~? Ey܇G(dkF 3HM_(dDޏz4bJ<;J.ghfVZT#|\; bJnؤy=/7vpݚhS܈aGݐoXZ!T> 킔vrK4R 3ڤn+]'NI gftX߅GϨ+]½瓼Wm3$m)y̝*#K~BN

[G2^dA\\unQ 7V<Jvx61ϚfT.bb)KmL XY #9ɪYy$#~[,)Tv 7>LJ;dH[t0Ҏ#emഝͽ)F%W^ο𿣸c~ D[ъe [zm#q>8]1Us,QC1I|SXϳ =v O2*蝈Z;OX  #ۧXg=P^؂wo|;:kޛ+ınW Y`hBWQ8fa&Mpɭ+aPآmzwCuIHK)MkZR؇Ӛ[|Ƌ~'j7¥ $a<*t=f9Eb+Hr˜oL n07cW'; Њk9?hiWsdAW .:v?GRGFdk5\3TF!~y}w"ݴn(y@lhh?Amr11 t#b+x#g.<]EA[C+I>9&m A IZ~RaDbt+T}鑣P<čC0nro_F^mA Xu+컿[16Į-L*]ئJ,^rV# eYvCi;F{𪣝qjHՈ{WcKQMW1J03q IBxЍPދAq.C$*Y`ѻ*!}klࠉ'~;t/SOm,Ê7#u,NMYSvũ<\k֊$k^_$)z7^ X CfPHis de|zS5مýt# q% \W68y 'ι"f~tY=0ƒyvvu gA9gSuhGđn‘ o'-fFkibXff-ҥ?F~' .'<ZԘAc!ڻ- 传$7HM(X9C zQ{+^iJfߑ|{Jh,vælR? s4+T 鄄51LL_TNA!j_A_ZI`@rS|45ƲCHw-f czDa/'.rz|7b$Ɩd^g>j~L(s:y?S* Lm5R0E"ȅLM) S/G-";P`n (0o 4'<#ah?wXF.BȱJ%zr !3lsgO\K.3} /o|vf`crd?e8w窷_iҘ%ymC{EGAzaNĿ'3.yB7<+&w} ԉ;@JuȏчVjP|J4e#44 Il㎛Qw1R@lrL7n6{f(˦*dim_P#VVH5XQGC6yId4j0F$"PHL NX{ިbŠlRRs[jדLS1vNnMfarqxD TO.{4oL#*cєfqkHݠ@K; %8\WY)1}d"KrH"pr. F-V7L_'6|$*AQs3;:F*%lNJh1,猀1?0}J%(1j+Ŝ8!&*DJ h);|hD<[7?%euUJJhx %Kr'BLJ /s݅o!{ "G5׽Mi.OXzz( `1ejts;*iVV/#G5do u윝~Rw՚ڽա&HHő _.yQċ ޒg@I|#H{74N y.z[[Vq,nh(pև `ؗE搖}x!)y >R9扵@v /5k6fZV9h?ymT+1K iH8)#WaQ`+&2AvM =h=fV2W*5عl`YU+U-z+ث#1t`CJEXu)3TVTa7OT杦lIڶ"_w %sV&yGrՑ}ÁիKQ&< Tpd*^jz9oԍoIRR(4pK{;#>D`-oq_7VO+>y/[tNPjOrb6o5vu3 gl-;zԊ7V{{BV( H7cXKaVrxA݊O{H>*~F$a A`Q0eC bMN't8z7ۮ4@FqUK,Og@wf\a_G„`byFY J&ѩY6*p5$p <8S'B)WvI1^+O{(ȵRqCu"¼Fc82O/+$Tȯ  L##xDj 5iYUKD]s'>%DផppRazxlY^V~o`h`0 )"T:ܸӲ''/)z دpkp1.\{&ODzW$ʡĝ[ToL\*[B r?l&rAA~؇GXJrEVMVBK'?$%-b8{Fp:31ӇC}'?Oa uuq~>f x?#9 4Xt1(ɞIR}"\2C(0jW]G7WG5F1\дj ,[NеKcV봹w .MaqC il;OΦA o:u߱˽C |So)KGDKߜ`qG4,PRH }_aIXP}w مp@mw5_tϟz%ܳ`;pF1qNa 'UdIj]nmF h i55m)+e3˰P'X}$]FXk $YW{^3>w+3wcK9'YQe\"'$ggmVk RY k̗XPFEl(H1Y<>HW{<9屫i1! My]n mCl1KXv镎]5q;?Tjb:.nfMVV6iU@bd>;A W>T iutk>ٺL,w֪v|8 -Qv .4=E۟rbK 7XPJݷi5%>>`Ϡ̌|)+q&Ze2p 퀏X"0UQ%^H^Kk,# I܃ήΓ'bSd8'7J|JYY!?Z)PF&Xi僐 ,1-P|‹ ˪;D+S޷;uM|Xa} ZS1fe_N.Ry9j^MC;$M}M7 pNͅh7f#޶4W~<ԓEn xRlLM P9w?0eچDk}j4(}5 Pf1c+0 kAިRddMJh%?flgY]Kј-X`{jO& n![JiXNBlЀ8%c姬 )-R|jQ,*bR%*3Я*KR_Z-9^Pg)ظ4=+mmqs2qf7OJӚ޹r]uS67Bi%\Ϋaǁ2[A,VdK-Ev⢮[?m0?Hj,8.̚g׍iFVX}JnX5^KK=VG'Rg$H4e:uoZk}}=Ղhu7R|ktkP 5:jB.%Ȣyږ=ߐw8OLo!hUN\xo^c$]ӼcQ݈1MvZָ2✧hυ:mq eˮh#מ/fˏx*u3LpQёQndBo1~msܣ=I~{,%Cu&dDȡ#Ь 9#`%ژ.ܜ9B?OWEbQvnL"ؙen.bT/)7dDfLEyJ?$K _\Ca>"aQJv_H :@SۢW=q AUH8uEކ*yd6'V?2m?1c#oyU|YFK":>0뻉z;fB/VQ5X$g7No^V ݞ#WțЀKo-:e/y.nvr1z1{^?}W0f{RdTf͇-V ν]K&-*Mb ~]`@~.݅iv"П: -ePӇCilSAZeӰ̅K,##fGYܹjD OP R1ԯǽYP1R}2COب>/*K¼~c7&G4Ra?(TфevljG%?Fr:יD*sd^Dp÷W$qӊl{S)HZKG\@):]<${HJtq`>rwZ7ϊw".0\m,v:t3ynpitϑGX9VMNLtJf$|2&cHs@q.;|5PUJ X!-;D, w/d0kLIؗ5&EM) u+" 8?kx7NY,oN L2Exiaĩ M u'Hv!rx2f!_ǟ=iAI WX]1:1 A5}_j_ `T8ZgVΏjK4wncW*:/Co9e{@ r9&r9s/@pl,n)UdGg57ޕqF$[/J+A0~3}Z*u9Aj m^# MRVB ~YW_]"B >!pEqi C VA7e ~"֙Cݼ[rSJ^`8GۋeǝԐ\ԫpc*ָ"U]IZSmY$^O0M‚i٢@T,:DIyg*x9VۖdOD ^Jz~Z=9PN !<{*=% w>FjZ\Y6. -_Y-r-SV D\)?8[1: t/Erͽp^9' N˽4*@g5`p̲iH} iR #O; `sސcd9v$ѦdYO?X;rQzC S׉aޱ|i3Z.KT/spCl!0iBS*+{@(ymt8*nЕGk:> JWhţ"(Z! ^? k څr\˕P)6_u)(GOu,D] q!gҎ)塅+fF5a !+u*;NuP͐S+`-c*8λ# 8T̼Uᷙt5?x&k3$'X mL|mP2;WKs9EX/JL V^ԌZ $ fX&fv^?~!9E}]H59+νcKً]8 ̀aqz^Xo!ފTL ccXOm٘9D' l4i9fA&sugGO( ͎8O{bTț+Uӈ}U"NޔJrX,oqAiJtEՌN3+ojvf8Aʢ QaT/ N18ƐO`qopD ʈۃ&J~9ۓ $ 6QO*7Cp&cPYK&jhjEs_ۦpY뗳 .ApUS*te~mͯ$W/rRI9նr+WOjPY5˰㧇qcD_Kg8 {zfYiؖBVMW & ˰{i *եQduiuHDZ;TM43hs(tuXd(wUK cJջzt9&h7NևP#15y1ܯ#%Rۋ R#BD`v:7DV֣q=3{M!nOVBEN p+'cdJ qogAK}Qj4ܝl!?at0 , o-ѓ+">M]*{#P=C L<¶`C\gJ* K܏ͬL۷b k%'AoՐ$?73.,#ɜaH9ۄ G9(sE=+w )buA&wX9GէjsGc>4{Q3|Oٝ1xuEs RMģ*'Z)8Wgx*p ȨoCcy\Hź,;YT^{hgZ@W҆_bNJ#\_ .MRQRwݴ_5J~t#8u<a4z‏վ u d=?fpWPnH|k*.>fԌlwH.ˠ%Pֽ;Z!&Ao.\ܮKLi3Szoi nvx=x?&Y 480'.?pg:}`[> Ô7,kf*{l@cay@B2>"+{ByzxOEAjY]<=)̫Plc碧Nԡp*B_8 n65i I'Eﳨ߹$"N~5x | t"d h{[a``=>2XqA{cUg2+fL^e{eƳDrYMJBGGN!SoD R{ Z!p1'Н๓z:R[U+mox1F3ֻB`Xhu;rMv`CJl4V-wt_ӏapC4Ad4N~@Nʄ1tL^$رֈ/[P7ǐ^=άNj?mf=xg5K );8&<ѐ|"8m?TTF|(v:үl m`l p+Ӈ-Oa]WBa)ڵ<)S^Q6'$[is89 T£ #&k.O^t@U ,ѧ9RTȶSRhHtZϱ7hؽ xe;6LfτU 11Hm17MЈe,B͕Ȥ(k``=d5:7dc]ZK2 c\d{:~`YHp:EO&!',ʅ̡Ο!5M giCEXP+X1g:Q⋕}C+W$[#q^?ފ}L̓58vPPdf3z6OYHa; r^a|p[`kL/vc/-I쪐[1{=WFc%X?#P*IBװt.ط)a{uxc3O .{H+TL q_^<ǁOVW=~m1bL&)^Tl;VU)I3ѷp=PA%* `w '.#*Gj诼i󎿘vԸ{=F.aILWh֚T9y`vRlƝ IcǞWёX|bZs?P2Ss _z]SڼWy ·gBdg8V$8aإE'*k1i+L~]"'ʼn,[–P$%t $wEfy6w܏v6nSщ>2w9/Pe!az=lN}w%o>@.W(=ٿ-kΗ;.S@`$6zb{aԝ\p}-Voό̕=!$+$A%JssxB.DB0AM[n铦_Wn+ Qƥx*/{k52/ԗNׯ\ŗ"jof WP0ΆslX㺻7v VE! N3 cvA*;|R*񼆈;nOLQfWIbdͯAN%^(zlˣn{$&{z+fx>sP=";]nh%ZDDcm:PM|QӀbO\B/6Wr5X2m'Pɴ^V`׫ְjI>ͧ `AXk>fFqܞh,"kdWOX׋@F3N{3x\?1)A2xb^0e|,2qpr-0i ^ rvR|L[V n~]40dUM8ЋmG0VH̰gtd/IOd7}`FN'*zew?䬏nVsvC&BE&UUCpKJE(({Z*2Uw$Z-d]wV5By^Ɍd4lQN 0ʱyͷr Kh&Q2l; -aކ$?zxSkSNM!bVcxpCWBgNmGYr Ak (~a,mˠ 2We1a3 K,-6z%OjfڳN}Þ$1n0\uzwQg**_/9^-tǎHC 5Bܭq&QQ@;SN4B"tܑo.K$B0DGjJ뮺|mmJݿ5pgAXڃ&In]%s˖xu q1ʓb:#{Q^ l?|> e%hQ.T:zQZQÉ-x΅މ+lz'х0sm4{Ij"b ,GL?%:<]'ޖ<=wccjl@&Px_u^?壼oχK%EGMoհ-zZC&3Ms&__&m̿3"v(++itY~pMɵMuGG崎$}j:@yfB-o\2Nz5Wէ_>xv)n8 bk!slӼ<;QL ?ߜa8ܒ[j1 QZU J\+X/p&dIĸ'r 82v~OM´m0}=gRǠOiV?kXL_]ߠPN(r,/ 8>t2i0 g GԨbKX{]:eAwbS>뗀FDC)\VWϻ ?D`œCd7/OŹ ? WrԲBvWAr E\oR(t[fΉ$nOfxkђӗ`0<5H3R.e;~[DZ^J/bw~|D)eK u;Т|-vC?XbO-F*+bd}b~ yf |YW댻ΙGndQd@xP5PO3_^ɏ q^t!d/QIpΰXh/ffP qC-S&:t`O˞6Īe 6^F~] af"m3x/$~XNrL:Qlc5R+.Jb_0dN3+l'9VD.TO @@AV ٢.$^'\-YEuo ?gWHTVfJ.&e:D9~X|%vw)/DK¦)VIak:ɂA7<80(6zhO?ny-UQ#w#bW y죮3YsFۆMsvr\{7 z)x2YXrɽuˏv%,ԇQQRZbmZ\D]9.x]rm f;,Mš%ߩ =Q5A7([ԬI_#Kg <9*5l#-ByS* uq(τqY#M thW{cݓ4ѻeuu3ڏ .ƷX )h߼ xr;uTfrZ! sVq7LvWAbSKABv427 T5 "|.r.;İ҉K0- 'Dd=20 Bn  x>ZjITYSfӓW,pH1ܸ%H1y1s}ҫ:*s+ Kt_ *opMz"B{Щ ֎?DS`?6n<]Vta/ZK0jWyC}FwB6g[OVojܭ^ۃgMbdܲ@J. 2#Ru7\0)Fݝ4}Y@> ՌE}1_1I?@8uKR0 cGmFk: )uX ®e7`S}޷z]p>א2WԗE8fę/niQj8ʇa֨TwAp_9gnph$l9!WԮc`yƴw ca;!/F|"H2{>)/끁|Wf歲c4\@2W5K hI)ϷCpY(`iUrlnhܸ`zvDfGҋj'%4>Datrdb9#$\x'0н"k*y5B]Zen42`__a:"%qQTd,7^&@\EN.@.<Z7 'Lh7YMe3Ɨ T\6yyۑR@[PXniC7憙Po56::h:O{RDg0QHgEP#ᗬ1δ.ZNt))N]}wv1eYījSA򽆛⦲WP.ÂÏwP($ [RϺ( $ۗfK V 5$.a5(5 Ҽ`CKNM/a1DvDו_ 觇'ԹAp0AW+dfk`n4>w0>XU#‚TDK![Q#>Iz };Jh㞇R3.RCJ4͊.DM_FݜJ:F6`AT` dX,D.k;#r>e0}ty9Ƿ"n :;Wo AuqWpٔΜ)@^ZkŏUm*Ƙ)[~I_-GW•T?37?s-l;\ꪡ~0=R%עY;?9y`^Rt=孖eg;.E@jbVmҝ`q,S,?)+(wtؤ=hK{ZC@RwcIEA}h/{/9 y.nxYB; 6y{A\wf޷x~f%?? #6I6DH %,.JߔXQL[xi [ML{R#6\mm!N~*u^^r*ݮ^1wUz3`ȲSJeN|D2*yKMa%XF\>sq^@V rPOvG].{Nqa6{-Xn|TASN` 2U÷2k}78RN3Mn< H”؉y a%zZ^v[}A@)ǫW Q\%Xl!Ic7X&}Ică(/ FC tx2!xByQf zOyn445Tf"uzp) {O{ [513졤+Ǔ'j ԌJۓM P^O'MCMɳvGB\/ {LRAd( sǻ?OWAFTS 7_ww qH SV,~XS8kPU7e s9#;͉w6|dd+|b;fx`z.D0\zdѸ9Hb%_Yz-Y9r1Pꋠ/S CkO>КA4i;TM?hs~I}(8G-|bn{~|sXTtY WMlxGf]M=3BM^4%[_ "c &%*o aD%6>yZ7Kilmx{SU5b;kId d}Rlf8#Rg9[ k_@I*6Si2*»&m&yu#F6OЧ\bSp~7@gmf𩥊`09bGB^uf]dk,S`1YAx dNT4ݟ,|Wj([@`G&Ʃy6Qފ̽uĖOޒm ~4_!9ӛKl`voJX(J#( ^R.BX-ZI~g^%wӬid?% zϣHE9QPHKd >s w/V/P陽FV]&̪cUR 'a <(z~HdpA[IytEF7)L/rQm% cSZ|Ɓߟs1\T˥+IYceM(!*d/A th7ÛG쓖E vqAu! U.%<ϵ4I= $/à rWdHD@@,GEDٲ؏*UWج&IW:y*;xT%RJӋ5' EʺD!\q㨇zWSE'T[Ll{TW+VPM8gGo˥$umݹ&Y}I#PirRҀK kXL\7 D!o,%!D"8MPa޺{w`(Cn  -\ '%5H1ɮl x0C!W\# n8XVʭo)z+0|R-KVW 352D]Z5.PrgȧJtPv@=1UIi GJ~FJ@Aomŋo88&'1AkOيAw,"NWSVr"f }]׬(B$hJ:o;, 3 (FO \nZh59C4K`zAdӇ/#P,+&pI[}')iҹn~8§r_EgV\(r:3>E3U=i` 5H "W}d"2)irI_$[/'"Cː&-%/d5!SANJ5بVqd4WXhilw$=R3PqQJ+W- o޿Ӏj_z' UM 6|2FtuS p2Al72Sf9"<<3w'gJp͸B@p7I$f^F\M9Ch:uSO݁3c Q_ Ԓe}; Lkq/|yb3WqTyt.$# v/b5+xWѥa ^Euka<>qYߗˉ z%K 1XeA\%Mt"Ŀt'rNvH^|qӍZx$zdWq[q7B St $|DŻ\ U҄ K׍'cJRO-V@Ss:  Ns+BM/]q} ,WZXjx?yv__Ae.K[;Wk~N <@A#I2)CP3~{SRhm:3s'fc\h!DAsx]LM32[X!WG@w%HrZΔ"J?w/7T^h_bwW,tXqo85,6NJwwAxJFJ}铰{CLchznШD{ɀ IXtRnAd|WlSU䙆j> P$TN>uj *>5CoYhY; mx*ٖ 5Am.J6A"!BqSbT._y:Bهɑ rl5. 뎏zZ־AWipQČ츑6}BF[BO%$'B4 @. :8-u8Vk U'5raqӌsVp%vE[6hNG<:/8(|L2u~4Ȳ<xя ii#E.:ko-%{ڛF\G4B}ou%*k)1fEȾ*3d@P $i\E4jKaE%{q:)1;,Wm)Jń0νs_:5b4PҸVC]y2Xcl5$5G-b0S l%;2ix#[=ji텅5}Z*PW=D$+p>ɡڿ?)R2f_]$H+pA Vx}~Ipsy 0?4;L S>מ8:xҴRJfI)7<#gT)ѷl6[=D!LE觔;,kTFjQgV6~804K<1D3wl\U=.90W6joX~i4lN+~fT!ѤVU<{<'Fӹ2EROjbq .&6ԡ]Z36Ú^x%s qaI7Jכ 5 +TH#H7} *)fnM&$5a//u5|{đkI2 Nf,Bip䕭2_^{LG#sG0T#h5pDBϐ.}_v X$ +"~ԌCI a=h۞hr D:?;Iq߫"z>h'IJ7Ń7XA+รN EF$[n}glױKH$5g^+XQimMQ쉿Ӵ+atC@VtB TmQ4iiO[^+,[1XP)6ME u}$R>NcWx-̹0ў:dx(Cmry:BK"';VBJ/DZ3^O`ůY.a>$7ؘ〈G?aoX:S}r+DI,Ey١}4"uD+M1#ѸAAEXw]p^[3Tvm@q77u-DNMgW}%!:>W@K}ǰE8^Z ΰ TwG&=oLbD%DAfat㆏eҥ0tPSş&&&G(46NneOG<+b f ܦ -TwnSU<''JkUsk@+<˼yRDG;zr!b4#GnV烅'$3>$1[be%d0T'+;S380B22얾ݑL)UI2IXIi_W1]wtWp3bٜvᘤSSȂD'0H&Xܤ0`` o,Q(ءm%"oq_]沲yd*=8Ƒp X=z43(z>3^dm}2Y .OAu)TM\~Jy.]i8Ѯ_'P*(E ca?.H7Jx0w26 .G42`lw04Hv)`| %mՁ'-4j?l"lX*.CUU*s/S5 >asG@nGk v!~s >U?=%qç*bѭD'C: P,O2߮@9as.VN ° o`/xlnQ1"[hWtċwP'ЯԷ^N]4'8^;VEmMiq*\F~ոgǤ;"pLD7~XGMp՝2~m4 ZO^lgg >td!wqAW>eCl]EEY=@_haQhqv7NFaNM~zŊsaĀñyHxMF䕭CX:r 0V%8:EW\`J UZYD%%%|d*hzGi`R8Ua){b.w)NR.S\#aB5Q)5'!-YqVZ.% ;^Y ri,&ܢWCzݡmYI&Xh%4I:=́)Vg(0J@[wvhmouuH#x-3-p) 7#i87|}=LEA6* uWV-Q?܌.G?a'uaCCJ &< !@'TEy>̚V(-h~Ɋ}-$֐k1ZC#UI"\QPbWͫr宮p#$D~S ?9 ʈ$ݪmW32=IANKWڙn1V}4A˂2f:Zf`r6D۱:n0,ۭ?08-OSiϸj7רYF4|vi72ả46B/Qn-/ .=Efg {*w} Bm4:UaUA?>Ggb`[$v=o79KMo/"b4t5@C'EݙOW,XkHG b*ø£ɽ؃7$5R8d]2П\iD[ٕn'JRtuع@YN3C]9ދ731mEZD'c6 _ZQ=S?7%IqUWL#DXymL}ڦTY:Ye{34n5 2rxt"`>F ﻜoeMkՁG6U' /X-Ծ3C7^b1%C:ǫ9: `qMYcZ<&8# xڬ |@'Ŵξ…ގ$ќ;3DpBCzT GoIpuN>Ko LQ_X~"+.å~ ȧt\Cic2( }PTϢ'|Q%)XIJYr {ل/[C_TqlhgjT[ԙs"J/O}XVY՘: h4_pPWY+)o;/MX_f+&+)ǑR,$&JwN_X#3ёW F3E>%BFoUAtB{TRW^\hW18~&AAz;WuP%-q<ވAFȈm 75],h2 n5 'lXĹ1s)H+u|mB]ŗ.l7-MD,Go<_ؚgUwMRF\`R%Pj[ledgrݟhgֹ3#!]tESQ 4j_6EgMFprO,ᡜuH OjMm?1ɬ7~3w[j]t8Q}YB/3g3QIнag3Wr +ju`kkٛIǕC ڹ!tE9*U䬿_ߺqY6sSθ*ȹf7ËĪt\U%GmVsvp٬-sʑSU_~|k9KH^ ]僪 b_JF- E#+ +^mN)ʸvqDL2#1|\Ms%L,#-Ydon Ccs`C#gA'9zO@"mYy >{rC8 L,[7&"aVh?]uOH5ZPᲦU𨏢Run;E Y8&\R ou`qF>]y/+syu AȦE;=g&6 ZHS+Li|o:EݞN_.<p3Us5Ѹ]*F^CPM(5} ьC*P2+]LäT9zd~^<HG9YW >#\1<ћV(OOF &L{%JJqr*t&+fbiDY]ٌ~ aYc~53qY{M|{eΒ7B  ^[R0z^łRvv'g;.n}b>*7o&FHgeܒt{e$RZ=e̶2|AyyB=Kq A-PG_~ٰ uʷeAN4NSf&A}. \_Y:Mv:8G(5veP>j_ 7b.aU^ZA_#aQ]鿤&T',yPL#>}jh SbQڇ5|;tI/ϢUݩMRzFcsrBkMrsvA8 vID-@Ϙ8Oh|a/7k22]#@~poݦ:NvWϿǮVbS $@)|+lM"a)*[Wm I&)'W@;{YY1sNsL&#*OceNQ;FpLz[[L0)rT6|M1J_Ӡ6SX[2~1q,~Y4Hs wEM; G+/WP-4^ڹ'ZXk=ҰCژ`i_Jx=Zm@p#^>oCt d2Ob~ZlO=t.=b=KaX &؂063k+?0aUtZp [QfhYu`Vy;@%9ravVr2,D'+<͢heY!UowU0~Fl0iP̽̅*k#ȏ΅% Ze-fX7AoDYh] 7fEEq .2"r \Ž`Q>7D[ oڹ~޿);Wϝ4cŽ[ 6Kȳ\F"_jo*M졓! j>/]6r˦iS̈pܘ/ {d nCsm0e ʐJÀ"K7u3 r^BZU`;X,f#Q7dYB~7՘)&-a:B Ru#kݕQ{9!&1vsê$^Cv Nͮ/ ǎnUP&mr@KCYW gwPa-&fSTx $)0B2b9|ȷ+ |N?:Z3e GU|L[zIXl,(aȰL7sDJDs?l2*Â0 -/AxC?1Prne-j81_X1Ugɔ_|ֱmLl{2NUɋD`eQ$K3(+b(&}а҂R:n1#L(.NMBEQsA cNxWe20 :gɱK45ERy WH #V=&@:b'7xuM> H0߰q|)]r:e{.e#yVk`Heޑ}\\ͯaS#ίPcJ2̑S>r]RR^X ]^`.]Ɏ-uo,Xj4*HR1Kf FYό ,(5\ >8e +0?`:"³ubR:i0Yl)!vPl|(}ܨȵ;Ƹbp F%[LjEH *@#sckklp~Z& ZmڮX'Iieπ}әw(" .oV6$P>iU`GaOԾH߯s.,F|*ު޳ "5QS$zļGgf C3'0Xp I饂nS l31EMࠌ.xڥ=/A=؞O8te;ǦI/" D{Zw:}0_`i c~'sp< ;/dyG:YtM:BZ`;ף>MRyJ7;U F0qDj/S퉐Q2Tΰ/k7TgHZOYjQҔl+ęY(XڳG##r/:Ws)ueey^.K=#)8j.?QH ;f@穱sj0ʛ'N| hS8JVӱSVK6Pz@_&zg 6b9bvGe^D^m `<$qqש-`^Uqvrόfn^;t V*?{Ff,X>+A >›m} Vqmpgc>]#䡨Fm &'=<|qC>^Q؝!zw1IEU"{O̞Gr/~T|/ƛ9ߦ( 漣\0 U Lj[A=͎Pm|^yvgD&wb.B'$f=TXaʞJB/ xv]pzqΘ i{ĶV[ bf#B#S5vj*R/Ç(ťiDAg{7uȌ*sNUi+#Bɜi n 39fu@UP+'Ndfg?akzGlLއF-] ^C=$Ճuw^'z5mk9kvZ7K}i{} Ui&J8ɠT&HOP xCln;'+kKO\jʜ% |5p0gǜيgԮL=+ s[|J#FS2dZ y4P3[B%8jZ։Wj#%^aJGCY5,.D) [ߧjTw, ]bf8 .A9O[|WjW/ 3UJK\ @7*s8 $9):4g}lH.SD @;SP\T9zhۣyr4fC|}OE(O'2܁cR}H7y{ rW<D 1p?=ɰ!{N'62%5%`',kJ nᓻ@a`V 5+b  t$q&5^ʙkNXUbl

w3=]JX24kiYRX =~cv/wȲfJ3: 1h\ ƌefMU ڢDžrАU^'.! ګ Cݱqju2櫽.0 =O,ݐYU*o1` G;*p}ǭL;;wmʑm9!\1EHi"ovvh3ilW9U31PnP# t=Κ1(;9qm43v^]d;q*N/zDXW׹|Іx||݄pƑ|Z@yHU/>\cZ} T<8X5' g}ʿm>)t`TROw'+Mh9y`i矞.\)d@ Mt#lv-92dKVN xm1"CS9`9Nfѽg6)eGeǭH`|.F>I18P61 8Nr1vp2aR0X \,4sM4Wqy%s.n{ 笓g"v%U曡b.ad)i}scT5Jlutٞ.|"h+bȼv24/C+iϽ^!pr?^(DnrđI]Xvt% О9joJ#"Ry&f6 "Yl7qhPZ&ͅߞDDۿdsuz[NX.RWzHu"l{dmΦQ(wz[5chU⋶ɮH@WwtDݰIB/qy睻ߩApZ6)G3,m_;w:Lڻ6%+H"|5=Ma9^]>GDՐSk9ghB;H?ik7'p-ٸG[ȧ-{32pLsr)MFy:H3ph]Rx$?oCL^TfI[xD3%d6Y2@?I.|wk my8HTSׄ*H̝]$Xx6#Ki@>g&eoˆ<$=- I2_H/NhX 8FWgx'rD{1 N(HTR,ԩh$C<[7EkRZ.NP?ýO CN@tʢ؂gK&^ .~&V4/UΣN);^7Qt()D ޵4Vn7W)C2ݡ@8^f dD3VlE~qB8âD j8di'M%A({Y@GT㹡˜7 K%'o3(c5A?sa !YWmo4b: R)`G$d dV#qM^ϟxϭ*ÚѶO1O,FOz:"#L^E^;ߪzM2caԱcΨW { oWȮ-fI˜}Taĵ%HG `R\W."y"AaS}pJp0h;HފN**˩s#`MsEցƾgJ+aoy$D^Qn%H&q}RixiO%+ۆ8$*/黍uJLk"/-L'aHG.S J cT ǭDkcMǞ |:фٲ0P\ *M^;XZ"jS*_›$ ߩ=YWf! k^ Rc/}R౦o{ߧ,џyJ؎T*ܠǽۃZ>tqB?_0+03,m>^C`dWӰ;Epݢmvk/ BW,!Of #o,F`O gi1H9|FpVM jz\*vahU?W ^0Fn0%!謷88d+^6EhK]rBnJby;lxa)Co C >i+"N#R"O~JM_>y5ܻ]/SO^&!.h()ʴi0 UdfU[ M恳nߞ%Ԡw%Zj =EH~a#<4"hP+oCwOmK$8xAp֙љ|(oYW9)gs nx𳴣yat5D c Oru*GG wVОU98]j@%#0uQ^PΨp ѝj; ٠î*<6@_O9gF7j&}5D w߹ʥIN PH%#p*A[*C@?$MURT%XqyrZPƚ.Yiz/m+Zidk-\E?~r"o=^M'/ &0p :[ )TV93b{ɾ -u䡋:;)#%v ,¨Jf$┉W򕕩8-D)[P-NbEm`b]y%uE sts$2̍5glaU%eݡ>HF?3 !24ڟ>[?DTbu b|GW_V1KDU@qt/iG;/QO}*2jcmƼLVynK&iSe#9D,ntI=HѪ?^ffkUې. $7X8<`bpAݗ+b`ȶE &#]kkr. <.5}>2\,}ZlZ#[$Mu~.'Sh P_d!<\ܯ$1T,Wk?R0j u12V{whyuC틮%s). NNzvM[,KrGb-ۜ[{r^B;cLX0\ [}dr^>OA+Lv;K2*&Q#e. pL?[."BA竂4lB4q{f޶H?鮊FRdtU+bh,Bٸ GxC.\5gWhZiMJG+u3b\sҌFgy٨[JԌ6ltwvVKD6ā/ rU#ƌԚ4 CQ5*+dP. $S?w_Q5cj%y+i#PdɎmՓ=뽵uNk<Ҕ cđ3忘d)m'L}qY n'%r/M$!±4b!!y!9˔q12=e`kM7Nh0䪐#agbX>|%wHnA q7K8r _X[I1O!Yд|bӊ>J׺3)ȿF%6CZ\!Hr@bZ~Kxfa8y-ogvE52)>+qϕ֭V?r.~Uv2%4e)S3ڄ@ f]VPT0 1؃9_}1Rv*qѰs]6M hH9EULʌu (䐿fh-RHjwhF=REbυ/U~dF i?{Ek>Jll [0;dɢC觩LZdRЅv?te(YY`2 M(soƳogt7_#=aVx,JaϹ{tG^C`x>J=:U+l k0Wzwƕ׸iÆ;_tU6;dGdyIwKHBwr+vٹ1ƶCzQʚv.Ü|cK>C||ofe4qև]K3;r}ώ_CXX<[4yXH~,Q"tdYHvmM͓|oPv]d9@Gw=.*w.( tJb IBLsҫ!ՊFJs|#j^_G? LCq1$$6JM^r4ԗvPdVsG+х}m8 QbD?+u: ܘ&:H5%:ڸxR6iٽFuR`Tʭ@S g)W^qrv(,%_+: "MVIRNr_dj ;W2W"lhnwz~\b65V?a~onNۋsb%87Rߕ2 #\Qlh֫k2f9&D &ޟ=sK[b".,C-d4IQ^r4L0B>Ry;x,asу^"nd˰2MoBPiI 4vAA'|pGML6ir2LsaFx?+t@s!M]%, #Dv&bA6j ҆д#2ָn;YuF7Ls68%H܄󟣹nйl?#=^׫ h0*6IxpA!O&fr,M?Ed9u:D\** [Gm`0218D>/$p:>j)n!V^MoQڱ˹Yw1(!+d݌;{m}&f֨:$EZDΰ RUQ71;}q& W΢ڂcFV/XkZ&Sh5FQ="ZBS<0A '3UGp8k7j90_7H^VK/" J$IFyR"pr+MvRHL FZ)|YySjH8C3mW]4ʯ}Bہ2NڙgvmCEHSِ$,`Tv 6`o@Œi w GYt!ȴHD愠Az\yHZlv5t!TWp걭MgjCݖX bߨf`SoՙagʤY&I v/QIZ^ Haܓ/'$wM0}H;x ;`M6 0筷D.F!M>l^Oe~tWET5i| jToFmS<.$-⺊aB\bTVfCkЇl.P3?zZ(U.l^dȂ]3>P:"G7bc$D`RJyKp>kMؚjD]=R+ݝ;ρ7s$I%e9fN0hJ|1&ú1,\ljJ=Y 7VTim󀏋JLPZ??+~2ȸ6g3[\.~1^ :6ok ؄SWW2a`ՈXQ5'BM}G Їyob̷UM-~(֑_VjΖ+R@ Uk)Ӏ&Z@r<؀dX ۼTY_Hgc. |4L&uJ4K;HJثUxg2Y%aWlA<:dl;%P;%Hj`ߤ<hp'.)A&Ow6oGD3KG!nD[P+a7%7Nڬye9 }/>1v7*hI淋oyMʄBBR˥J$x`w5{ii"qM骇enE%Ҥs*8@lqT^NhޖTib*ZOu*Y ƖX֐[ƀD'Xz `y$йTmhҗ&fסySu:4bm7NVg@L9@ڂ2"J sJ)dVZܷrfK_R`&`> Mh*قY=:BP,{)# vcA6|wVjHZ˖őy$ G sL1f`fw {\1@H[>Y'$yg658Vh1tM;Jfv[hY\lڦ':8WٗtI [>m͊u`S#\Do%lPF2 D͑ L9N}c~QAQm+ԊjxwmDYcLTw>H-]p+t7oU0t sϷt\32~"V/՛&ַ6Cq pEw؂-0tU!d2_b-Y5@符tK^Y=O Dk\1M(&ܞAam8\MLF%_LŸ=b,hWzC3OvNb79u:lB yRg, g^(+ИCa ~R,Ie#ښhevxG%|#mDxTxK.kXwz$3(Ӽn" rljNOQEK6VТT(H,9%k|Ś`{BSEgK~e:Y9Is fK+ }'1>0 H@~{n @Iӹ,_9aFID  0L2n%;mI6-vy DWY FWQ> e\b h)ㄦ/%?~ kT_O( i;*,BOe A \'r&$ Y3ll4&pHhCd}8eXބpب ;'4BLHQ0ͨɔ wF˳Quzn@uz'Xj7ck~V/^%{>dP>G_O^RcK׽ṁ쓦Z>wyQzRH'ڰmv˟ؙj :TAn+ۺdļo~og ]P?N}ܷx(Dve4=|W@\O&_a0x sqSº*2KLDob-|]zP팏2l¡mE=S6BDO'b\=.Y Z7Dbfv4 ݲIZaքTʧkπ2:e' A\חn|u[ 'h@ׂ2{ھu+s g'glLiB6acTŠ, M{)M2ZR >/"ٴl nf %e [Dw~5Ee)S˽d2jqhrĨ=h'K^_w4rѹ+|Ҕڥ Ǐ% oemڈcl,DZM~. 9T"N(=boSFH`kٺP|Q&׀<"TMZdpgM[N ř 9Y+v CIn~ Q~+Gt%H94; ˥ k>݅p:IH(!X5AzݩFu5ҺgrB[ͫ `H:_{\Ю%Vtg^>X)]x3ާPjSMjؓRh XT1i: NE5 葹T2pjH- [ #A@ҶD2NkL%=Ȝ֊ũ՞̮h7 ʹhWLVRVe@UtѪʤ\?6 (.ȿpoD+eӆ%Njks_` M(sUmf#U.^6"^Ihx},9D+*9JX`fP!\-bÃ*ft1?q'Q"K㳏KnPJK,<>BTob]m\#:tE~U]C<:~Gpɒl.4/Yߌ2# r b2% R}Fϰs*6NH); uL{ H7<]$["0]A{u]K]KUyv|FLaM3Miݱ\lC³ÁI( %%8w8lEZ=kT/wCK$<| <ݸ aD(+\cI63׋ڻ6̺|=86.e +qe@v. .i3Zmaҕv? %XgKK^ sdz%uM|L^<~`SWYPiuZkyȩwJd'^ZRNz(L@%DB FkUu-#(LOZrޕN Jb.\R!;S0OZɦQss[_9[pjhƃ7?i9FbAE sbUk]mAu!a۴$yB35Ӷh[uȐP#Y\;74v10q{M{\)E/SC#t u{(OSho!}^p\`LEzD)&:т^tN aiE!S g*LOC*dX9p3M@=;CllbņC۲-0ySJFF\U*mߵ 1^6?y`,&6[ DcNP{,̬{;x NS 6.8v=c%3d6}&Rm\1c[m!*nZQ) ލ7187Yf :IAg.;ߊ|"[Ěbste)Dc/b$ b׽huld|)Pai_4U!f$z#K̲ҹL {mW#3w);@8P[ӡ`)V2`S06IzYňBm|%5bFZ3^?Zҕ`VKYRzRչ.& mg&KX_ٟ'z}y/(n?1N T0;1Z du-ό :M':7Ţ،׳~Dk ꔘ]̘L*9%,&mrUD4ԭ/*8a+j]46,u[PHze1j5쁻A=ky}Kv7o?31XGF`מe/eVEq 6Q.S}IU,\tE{g @! -@bK:CX5I,0Hqnb0* uÂ=۸2C*9'^9\-{˫N5@'YMه&$0Gݭ -ҹU h$s*~-KC6Z9C^j2ZgAßEɮVғT2'v#F IW<}݈dCs!܃ d(3nH1zd^z勲dN+vD[kYȜvo1>h \Sl(R˗t; l|jFtxhVH5ScK{=%ʄaXU8'r*.{~["/gC$n)R2pyWF9 k8% 1L|1^c[;HGe!o l.sR7K#HY#ߤVH@)3OZ{Ř^pofhZ8Jb\3bg`tjxiG(`/ i-fYG'oc@m?&AHf<^_G=S"H0"<2Q Z/lh_"Murm R ݟ`wa(G̊ АN6hb\S5GΔ;R {PbL9L!*"s1l=Z+sWZ7+N}rkS/hDvl[#uo'pp~&li1gCeIFm{#Ox]I*9Æ"2'+⺠M˹6/홠 d-RGv7Q~`rt[ R!Oѳj)"Vq C@&IJMO3RL$3,5?ˑlR+6iV$Ci0B+4b)Ԇ o^s|he?#P.Z֨-na<>e@̶xED!yY5%vA2@1ubp2Hbads@Ψߞv[EW[ % ʠ{ ָ q TƄ.!H  >XS4dPdeU!JX|<ٗW%t$ W߰[05UHy0Rb QiTfWQ,&.SL)[Y1~5XWx7<7ӷ9Dz|5vlNR4L/_)hMHYPE@/X9o&&ڱWS k7lFvlk |@J.i4dH½'c +%6|38emrò Zz߆D7ėE$)D$S%P_GSdc{+L~_!Ci >=v$Q_yj6=YL.`&{+%߉ Vj6Hԛff8%f=>; G|-<8o"R f@5)F-,X>ugr-w+4"3 gP&@y`<[( AqJ+\]%P |@K b^_T.3d4|$[uSgxJ4O'K 6ݕ2y6lztV(X"?];w=I١RpX\ mam[Zpk,zʥ_R=MJ>vD~BO, \p&ގ/M ?Ky"NI(UzX:J)GyrJ8s 'f2%h<~gr/YcMTS S6tobQf8#24Z×AjTvcNL~7 ٔUy.G@Y-bT!T&\b"FN1WKuwY;*d AIѹo,SRP =`?\!"CU圀{Ye~됕~W.U6;dȤhF%ݭ)9i-/=\Na;`2\;ݗVd+y *(Jk^9ܓ<piL!$ |6E*mU;99MKv{ :xYci_? xb$Xu8i<18ao^`tɗ_p)V 8ry+C1qӪĶðP8 .9vkGsBRY{.TH3[ "tVYq(oM+|yT96 GǛIdpb%pt3ٌaW3*f'uWRkn42L`ߡ+VGVGsR|B5j4;SӸ|ziXAs],H+@d_,t3Dѡ[g/*a'kpv~N2ڏnbǤd`H$'iօxC|5eĜ3+J/dxǖIn|S4װxv$7uC;vsFp[8Q25Tְz  s*w c) K<#愔!vxz SC9v-BN}Q?;*$[6꧵0Y|X\Zљ鰴"Ӻ;GAcRnb>?toIjkM^$%ağ5Q񒝦 iq8{\>#hRGu$(nj>9H#t{۴MK_/TB"_A<]jZtnly  ,7k>D7F=) ٓV>/oт%8-G1/ F Qk E&H0OǼv))e(poUG_+Ysd%gj] Uq0COA\4vٶmZdSyti}3]WU5cGs6H*%N&8ydDVDk,98t׃HA9-BMxlMv&x̘UkbK^5Q)3K=Rcz(yQb.wSu.e] fˍ7M~U"_KnvQG` d""{9΂::,l` (%?~~LvNQ0q+ȰcM/@ʬTeKPq#Q͐ jn ͠X&?fPҖ FS=kFt>zppz+βJ pLffJ_ҙr wTy^41bY:& #qgL]L >L"lܡ4cfeŪFt н=1 b_uЯ[$+cQ ʤRa%)и@B3Qo'e`aPvl5(>;aS ^-IBb ǀlS0҆A]f".\伉bOFvj ӎڦ.8,Ħ};yCL84{\=="۬Mp;z.z]}^`٬!cUH>b Ok*˥-ХQ|f!>xyݷA)2I,ɋvQt♣ @)WT~QgoH8ˑ #(Z+H@5P*0M -\wE a>`4g]!ڀ!ч1"-q_11zkǻLo5]7 {,S- {y:64—&c|"ԸʕO_DNg vcpT@rdVn@Ʌq-Dbe!5oAAyܱ%o},ȱM'GiGϮY]$p%u\< @>U Kz`n.i'GhЗ:[U_ct"1]!%0:^(:@p<`"bU&:)Y2K.[k'a-"@᝱ rM@*+>t|;y9N߻K wR{܆ =d~5Z,SY\|t&Jn^ZsjُƜkxl\&1V E?u{2ޝT=mJcee_Ӈb)ly5Οi嵕8ҋҹ )- ʴH .9b3|"oe/udoFSk㗽H" j aZ$YDvVPRظܢ=Ƒ3 o;.W UC"E.e0vJl~Ev2Rdjs ߭m:z3fN]:f\_om#D6H,vwe$dvorxe'˲nũ׋2mgMyTӣNN! Yt&#*P>;f3_h9*Tv8]nء(t?iX< ɑ$)bR4+8K=޳_Qâf?$ _c[`AN)^/gSBGz[pm2-&( hKh@4V?{~Rn=+> 0q"BT;9es;tm+=KJk/2WM +`ۦp.ކ npH$?nnj }N}σr_ Wܷ!:77pw ]g1Q ~J28?]1^+4Յ/G gLiC>OmJ9M2x&fNFQ|"B{_+V--ЖK>zJ^$$wa̙8xK7Y bw\ LR|f#>+qT.` F z/-,PI~X__@b~/ı_Q3lҭ⏾2E/a8HF B#lKo҇Ӳx췻N6X> \DI c Ø^40WPjܜzqolT[QQQIT2Tڃ~D Ã\-h.}Fw8 VT8&,lt&ì6;;#1 !^YŹZ{jAkea;`JZBuBQm [U~R#x3>mdQPyPxoIz&/V  Ҍ''\3o",gܕ@5T;4F Jߓj OIɝ}lA9&,0s~J?p-1!5c53WFVsP@!\VķfPеd-ư,ŨL^xG:SQE2P y޶`b!K)80T}G@ ,R $|iTDC)pYበ1pgIblGj+>&({LٛfS*p׍D/W N a:7T~/ؚݣ?/T(*{fIUQTb^핤 -0Z -B=>Cd?h&< %30 Y7կ<O$. !#MGˢ& K~vQ`ԋܕM"ۤ1B;T~kdsb'w8cMW&(ߎASy'bӃp@_ؕd[<<tspY2Ne%5B F3b^(=PQ}ǡf4́LMZP };mZ71{#! ,q]#z8<(A7%ۄ'PdDEU0 n4!*BJmq~%!Ѳ&&?1Ww0?7)aCQv"r9nNa?or=?gM9_b`:yGFPԫI_81oG~ â`wm-A p/sgGML*jZW L~+p#1s Gʻ*-bGx_AMpVdo1<ig8nD~RuNay欚Wz6 ~8A\hG->5ckb ƴ3IB$~U2gk\}#)o SvF>%x:D"a$\S_RdՖXǝ@Bc}"Oz@RIZbv^P bE m}qt?oČjk׼ԭE@U(Q!/dq )y3WV.+z.wGf$ !ʢ,=Wvdy0tdoWȬ@l1um__לZ_I3QU D5ha:u"S sAUiF{|8 PLYҼt%V4ua9oak ISZg2fy73[\?j>ȱ IPS_/6jm}ORJKB Xb|۰,-+׳Xh?ɩ-ꕒ2kQ]" N_s,="*tedѝRrG꒕bCO8` HʱRHlbuQ SH!B tB?zЕ;bT4`"?kCP~8OnUY tX2&rE.i&-7W`+L 'sS4r&\|?~};ZLCO{kaNS TJ"`aVdTX.f םN҉=ʌz)@.r[WL!'0B%Z%cman47y1lWmuZaa,G0s8n ny\^"(EXM9=zɨ^ )Ki&zuWgQs{=iJY ^Vkړ'rEϸaMa__D)[r .{haWdi5j*+j`ro{B#5LPk8yNG, bhԩHMA~mz>'9銬K M~)ck6yt uŴV LaEj[.'` 4&Z;!G۴.`NvAW#n]|]D81otV{,SL~ԮߗRݤ93`-dK>Wv-LٖNU) @;%ŗg2G ~e=fQ_T%(T/@u1n(Sq&Glbn`\CRW[ꚵ]Ohb:/O EmF ?)9T(s@6%<]uL: ;82 %F)i~3B@QƸ$O_'o^@"$k7s3+~{ox/ G! JrD,AP̀b_'j޽ݏF>~> yRۄ-JڵNӵK5QŶN^:MJ{@R8΀(}ޜZzc$4}aԱGG|FrQl^/3`Yx29XD#L-BSſZu#ш$4/,ƅppajA>|GWO) 0]ѝOVNiX'q ِheDm.PJg,NgR! re9~ߖ^º>'X? K)!^akJE{2+9#W?0DNy)LC}pSg4q6U,s fFy~@4_S%87Kd]Jό62NC#nމ~Xү)@+K'c,ԢޫyNy6VjeZ`t3r?_x˨WW( @=.OY 7W`U*恩>F&"z5mGB][ p (,Abg}8=TVL{ILA1,Up[ pq ɠtû?8Aujz"]AIFϦ=MEnN*v m+ZֻVRj=N.*rUOSvԯP6nsڲh d}~ij_o ,'PoRK*tTDZvfDIN_k[{FzGKbݛ7 5'e`rdo=`FwS#ê[n]wuZaqcb8(C=L5'Lþ`!n*Α|d5*Of(/B ̾UQjWg]%%@jt+%xMN:9щ}UO86 ُMGu!,,iӓj*xrkS$IX7ly-$)u[.i*ZFH™bp7)[=0f^m鎋<6J =95~kT HT n>F`QƪgKt_١/ %qb6 M`2_F;U߲"w*VUED`C7vtZpBQ9fl$<-?lBASlGh-1]%B0 VڑF-5cP0aa`I쑎t2Ե[vCy\i>/ܺ_+sq%__zp LӟfoPm[3Mpefqp)eR'|19<#hTTpH.W+Ć{(j\&QӽvRdR)cnܮr#iO<F _ " g,9gS^f<ɊEѭ`CLFlAnpSmFSNrj8Dy_.WSk4GBe')`z&' 0aImՔe@~oHw%ٗo`*J[إN^Alak0^6WK4JbP7ߒYż,oqrh]da^zZ~2i•XktvC6 !}mVTĐcI7m_ET IIz1/ è'.96Z4=g6"Ϛ#^M7!4ҴD@<,Ssq;FsٯVb:}}6skV\|yylR܃d0~k٪D[ |>JTL`BO5QIBJ_\}0\ZPL2"UqAC`Cyyz>Rz6XeP)I1GUq3='4K,B= kA6P`o9 1ǶmHL?3l93d 4&gP]QJ }|jQӾ CD , (D%Ʊ9eijt _FG$o;r>kszHBZm c~V!!n~ 54mG2HLϣ5֥ooHStA,[rJ gr '/k2>)zRbf}fI(aㇼ`tuc~ݻoKXj9z`8έbs[6~q:+Dlg񇂣.d|&ڨ?á?)/&0*}eASu/L >I%%Z>}ϨUA.#Z!S<$W08&Zv2UBiБl Ga<:V4Јuw-[Etqp }[>wV 0b˨2 9ɞP#F"C-$|GJ޾,Ћd9*"7N{/[ PW+IVo Ez$_-KbW]ˁ \u2}4 [-n1y0&5@ҹxe?i ΆO=*@2x$TwXU N]FMŇ -wUUIÏ(L}~lZE0v́ Tf4ryvX]kr>!䌪݅YmRW y}6*m%08D\߁(%O\ %Uj v8/RhvƬnyY]ᴪ VZ*2-10L8FǛ9s$;,ŎQ<1& <7^> OˏSGUw-yeEzڈ}5Ȇ?eD#<4 \[ SZ*(1Ә#xW".ZڔMX,JѠ|_8UW3}b!-FypMP.DCRS8Xz1cތ f[KVErG1Y+=r¢] V × ۨ4Ol ߨq%E?N/ @}"B]YjE Xn=}嬢oAT TFMA%1ٞ u`eɓNbBˉZFO^ՎZpDbuyQpz 9H"Ƭ S /oO#gNzrbUiV1: Kw`EJfwٖoOG0`L[獩LmؖK2ks.{!QR^82i#%&{?4>Segހэ_/5AmM'Oj4$ɰAM<"emˎC/ >_#F1dbw߁0G1BPRsX G=,,?|^շ:}BĻS (mKS?SE`1?'7h{Ќ̞h>6ӆ9Z2a̦)cPgZohNf|NoyIi R 㱕K% *V=<ʾPYgbWO=NFw•?|= Ѧ*Z~`I}K˴#ڣo`!C9-JbVQ"ãzt& ϸ5݃& *UbTe`ib yE+7qВ'd- v.|u&0Q|+$̚rezS(,8%8$(]iا0/jDO se[\)GFq8)"`g)V'&19)[α$~xӀ;Y^sCsdtUyIE;]"WsfH?"jZma_2Te!=-ThαM*)˴(=dI!7q}vD>/խYM$"M`)Kɬ4y]u T2Sup`ͻJNjҺ+Z&&l HCnI7͝3Ρxi0c1QBJ0$"=#ƦPxt0fKz̲S„OO¢(" ^C*.Yer"͌S%c71Vl;C3VF,`PTL SkVL=N[O=O.I@_5#5Dh[z~\wuAfJBu w&T{֡t%f#sC!{>IlMr, qjU%94W z/_aA>Ao6E/@P..Fuh|!m7DS$ۧ=>ؠ*'u\HYT w­ D)3?&)48Y>2U6}{6T UmPɻ!\N8}–d&EB3O\I)fU*%lT]-NͿ4>;CCgcQ י70fe4N6*Ks>8ŔxHs¡Cm5ԎL0!ELZ"$&Q -YN s6H7>X᫗d٠' !]n4v٩Dym>8@m#س4>p)SYG$a4)jp +F%,Ën|4rTW%=9;+nA$Ylo]6*+ B~tCuz Bz Ek 1,ט7M{#O#e\L݁[þCD@.FS?튖8$^3r[V}艰OB {lZCeyyehCc-ȠcRhwO=[cFo\ڡ@)h 7k꦳[@wDŞWGϞ;?UO`O(s }P@w?D=/ssNh r[}.ϤKWmDC.Mڐ|0+Hj=ᦡ:"I; a~NV=VD''m<VQNŘʗ*BbvHy NM3&^SB UE28@nȪjI%ZH wC N`_W˞YP*Tɥ+mڔw9Ϻ:P~ ewţ뱧ʿJD[v[|e)e4(rjB>QSr37Y Usp] Sj'iHWu$ Pvvz;։E`.ܵ`#w \AHKPBUϸ*Nw+%іm&ٹgMV 9M4%tN&ؔg[CqbЅvi+C/K Om+0,78j F_6Aӈ5?BpTI.%M&fj2p k_\8~ѹ@)hdy k3lbS™ֿ.m S65Z[znaz^/łv-POCM湯O"6Ŧ5-6*麬ܰ\{됔# sH\"bnItO2@]oq`$)uhEI=RG^~4h܄]20N4bZcmv7 G#1̅#t8Et;Ur.O}Q7[iH0)!)KXԂnbSwϕE.+'տV@gz8?z! $bᏻN`(I[{Rw!|2?.o#^"%뢛`hW.? 2HqԼewF,cK<jRALOVtm@Od>&:% (ht]3pcDW>66}BP,3_fվ >OZdu\˟ KŠ!r8QIBDYD"(u 3# zP$bt_0@hGC.9]$k`$qFcm\[.="+ՒRKZL/z~+Jc]b 7:k鷞ws5^] #~ceQx!>sB,UGp\,y.~8 rr\k5E]^,x@DcDžel%Qi8A29|OLNL 2QfWd H#kbam"yWHaVBj%n従T5_a JIgR&Y$ی=C:~}փeTCLl.AP*pj偍bڶi]bÏsZ[띋 ;$p&~Hy0oT{N[`!'b7l8M݂UK &Hl/02UvkY9̧8ܕ7f4QLe"b@-YKdEV@Hx@LsC/ քVxF2VEҵZȦtNi|Rx26Ұ3{ZcSgM$T,)r"ozuHLvU\ܕC^Ө Q%tRF@w8Rb4n3q -DQeG0Oy!O3t w+ggK՟d $wyh+^P̚c) # Sum)e{ood9=9/EY` 8ScE%/Q$D]bdm~OB8싷MDAd :vn7"nܳ m5QnuZ*lt7 .0F%)fP85E7cV 5ֳV‘pl+-܉h=;G }~5ԟN "!tBh2QʠK !ZNi0\DxN t<ȐB(󥇥+byIVŀZLA423H'+fI06ي2(cHBYQ =SH@Sz\aɏDX,g!^c|< {ZmѡEX%,d~r ߊrB;Jl2d3DU* |ݱ~ ̚pabUMr&MY( %Rq,ф)R;]9Ax 0 cß~7wS3PSXKy,j. aN)/B 0sJeyL`CLh,'ӛ=>'ƶZ&S@aɟ 7,hTT2Q ՝u˯ljU+_㈝zlk϶WFLz:|'[g5-->G֖΢z(KJrvn o9Zd}r9Xx9`gNĖDvo/Y3(w/kΦ<].q..9A5u*ޟvSRxd71T*5FD(3݄#aBj3ܓ튜p5ABnZINエL_"Q':u FX3_Yt?O cȞon8鐐"39ac%NǠjf7GC1b{m*2ruvř΢*D;gK|^RGj:bX)E݊nxC7>A:HrY`{kn/ōS׀DNߨL8)Zy[p_#8;-({s6Ȫ*rHP#řyUWX8?Wߧ5-+Xa kSo]-`htk k|,'b0^B.Zfr`q:'UE&(/?.N򩋲QWߢwz:~IcBR Mmn_wħJjyc{ʦ]J-3 gaܟN9EN8${dkw\ϝh2cd91qp.eؐ4lZmXRA{_8W\$&X[ VdҴ{b٦yԓT^b銠i`v }ǩܩ}".;7Dea>s7׊m$G#)[!4Fv};ةXPCJA9_7Wki*eVTI.'hT][ ' pfvqz9WઍT>Zޫ%zNM 5ݎ<0-y,MϼY=LhEܐ}8)|G;ΐtӼ/uF&MTcmv^–j) t;z>z  *J7E-anB[:ð}2\>AA!5h. HPB:Tdq5s xI⊉>8~Ok9}q\vҸlgh j)ӄ$شDx޶i$=B`ܿYk_-sYdyפ.go#:1_=I*HF)ٲb_|-1N$%11(N^OPr\864 !EJ8T0sT`S\yk\LWgBc r@97DCE jF0 Ak 5P|flDh[T0Q;?L@L蝬lߺ2Iig-s 7l;! S ^'/(0QBIp.KHd?.kX  ^kC:sqprJkhCT‚qF!s Af6sZ܎;;Z9 BXRIz$t(Ǥm$vo9}@BNX1]ha˒BkJȐ1X{nr7eaI[ӮTiP7 ?୪A3Ν?@c޶wߝJD2.{48 p2169 Qn2Btg/띍>gPm6ݙ8k5@YPOevAɤI#8`e}^ޤHҼ{Z|gb+`e&1(jS`uыeP; gvQ>0zHGΈO5mS`&CjD݇7@p{IA|@>@z8h'+פ9hX"jQǾePܬTed/Za)g[T)8NQ\GٍSg0Pw-Z/2.Z8=&Rb >St)BϤ@UV`++呛W Y%@>F:.0AeY*M-Ln0D}: MO $+1A/Vvx6xU~EBu8 Y,)RVn=F2w^YO)?_I 6vL)[Nc7 ]Bdm=J(]90 qFY^PyփZ4}@!yny.IY甘wx9[ߌHfkj؟:|} rBQ*ڵL̔/Tyy) -荢P֝"b4M- jN1F c8vAD0,R;1l=;r: KNR`kos,SK4,UChnM]j,grG\PeV'Hlޥ'jN(MI7VimQLN-0x\ 'k_\]U?E4`W\.ZmRLq!K)yN:lf&;Gshyg;Pv?"g:/-v5nu5 h-),'Ɵ\*+̷ҡUCG%÷ 9恚b^? lw> \_i)]F9DdGW+iĘx#Bg `+Wlou+NҀp&T6p&U|rKG@dE0R\4@En Je eN{[7#vĒ+r#A,N!Ayֶ,Y%6=<6{'lNOWBjS`XB֛QV2w t<') ~u:|aEo7dGauwP@09.~Պڂ&8*Ck^|&Ep;Y03:&s;:JJ!L"x!ڕ0,C4WIp"߅FO7|A5wO8nG!%f(/FI1{]H%&2% phs .F.tCڸ\m ƣ۫Ax]#}aC)JQ:ͭQRit8oS@b|mӂ]`fFuvn+6g{qoWʜTϞy܌|tssSh\~z/oFIiCYe"3~'y'EZ"gzҫ:/ iH&/J3Z-eerq=N.Urյ@:cRy=DyˇRc0)Iitrh#x]^#苣ۻ%qՏ^(&8 e=֟9{koC> SXl(  S4j]n]ocӃ0虃z`}*x%VX {-Sfu ] OgvMp $ϫE^Ҡt&R6AU@T;z~nBt;O [cM{cdbbU̬éfN3h؟ai94XgUn޾#6!XZbR6yxamXҁ_ p#0%/!VEy'6J8v͢K}ihx1e@^/:@Wy*H1xΒL:hcnʾou59|7'  Xv8 6M%:cK.eU_!IT_1ǝ͝z2"!(γAz̕ M^`Ii1]:Vqd)z+ 5XY"j4b; b߾̊V1ĉgTbyFrCeޣ4yEdq+B J?_UܚNpkއ. JS&]B|D)e>٣w>4<,yV'%߮"Mՙ8q6Y^`b%%t<3LlKh?dS]EСM i?\A]?f)w9DzKxMo'};v ?5Oy+ l@CW SO=d z(zjFu(# 3@P9|↕3S$fbUhf,t,:քgL2Z ͛zށKƸJ 'Vހ9ܽ㦃gMPgje~e$>ֿzL`Zqo-")c.=ntֈ>Ac W:nuVd~ ?P!^˹X "&0v5Ё\̂(A oDʗ}lE[-+Z6DK .J3~8 VelbQABD8m`^N\K*Ihex~~Rw5/L˞ d̄6 3YoP0W]k _dX`ՃBQgb3FPN:Za6OjJ)k.,ن{@`fޤS=0o-A5/'-Z{CE5o-: dU6_q4E͘{lÞ6S!?3BO aU; 2uta$ #v H=8SHVt:w> .d$kFJj> d>{"@ |u+IwV,L|1W 'T2F7+ q7+}@mP2ǔn(׭;f CSӼxI)kO*tımr1s]j*=L^񔩈@_: չxHVL뒲XvrR-fF@aFcpCGhS k{p- F 17D%G3K3V)  -4!n,"3Eܨ10٤Y:(`U p+R#D.A#TXf'ҪOvmC@dYlVs#܇R[_ #q)&;6LPS`$'>OKIGgek*py2gg!H1soϛ0C0ʊTbA%s<mgn'oc}qT45>täx8ed;=:aa;/Xt+Đ0a"y.MΠM*޿$A܉M @U],FWF)u(_>d4$:r34ʚQpp(GI'wrF\X+k a3@F׾, 2H$Jކ>pz0i1%R7c:N2ݩ'~9z^i3'9irDEUufѪ֕RÙM}5IQ` Օ6 |Nލ лS)zZ]@؛&h-9.>rzko$Bf#W-v%G$&A 'a|=)H 5 UlV@_[kxԾ<1/4e:b|B`S6=:CRT:;zK'G^w)2PU܋j\+KkC*Y;"˝v|y, yAjC!b8- $ ̍O!Ѱ{cju;+#蕴5ƝEɦ OB+4F# 3{yրrDK tۑYԓ*{Э^&sgNրj\5kWEyPf[xO^y^㿌\p[v"M=BhM)nq$=dn !%!^ P^|heã^ڶ=dHgz@?[g5ME(2ŚSC0G$cS'$1Tމ߄mAQOS^wͼ ֤Rhu3|ۚН/ȷ:l <VGh#7svHۨ5y'CZ``ȈV6E%P^ AFѶQ#,7]šTΞ['uYIe\ gyǩo{́C{Zq뗮$#N|WE|j!(Oщ xn)Th)U H tݢWZ4<]؊ڵqݫ+"~4By@.C؟'{k9"jwU ͛L<R|VXyK wWV{Ԁ c14uj= _IEm@wfI}ᗄ[ج]gCBkU`ʴY|#w&|! +xH_זy73}z5^ 2]]~L*+d^hU:yV?QUqbXb0 JC-glfޅ L ^$io0nM+K$ fm=41ŦRA Gf@0%%iHXöZH U1GQTMWjezMtZ]~~ !:\pH2 @;751I9`c"m, ܷdBʯ4tB0mSR!dEpJKG:pб"O <$Tdַ_ʦ5E6U O|}.Qbzִ] ږSxsHГp0s#O+1|}$1Bh%kh;4h_)( F:Yix`2iTfb|j}T$V M,X^~tv&uS0ϪPxq=U]O-뚣nx(ENmngh} 6 QRO[ЕŜ9 jZ+D:Q9u%`6P9Q66M~;4xjXh$s:3O^-6o0?lm*)mCk"6@j_x']W1f/) B\`b}>> SU?3"L뽕hU9 Tg^fDx*T Y,t3Y~i3SE7Zϫ &_dp܇zi֧;gKv"z9z4࣏ռ%\JoT_3-_"Gtx'¯_+_I,s(&J(cWFG UF:PPpWԃuC#7qI<چ'(TuW9/~2ʜ].p3wRwԐ G b!"0fJ|F2LKpAP`k)xUp5]2Q فM䷲$q ʚԾ72X0b[vӲVPiR&mE#-5C5*1.SBc11t҇a=8lO%4%ԙAM֠` ZǷU2vHmDoi{ 'P"30>`x`dӖ겵0ʷZ ҜkنX 8)qW21 5t 4==u1"["Ip?"zL:G2j&*mDM^O >O&2MU.!Þ)Zw3ThiJ&Q]- AJ2oĠ/ԅ*]B `eX8lk;}5Vgځqy)|qWAc$gx1^zmIY`(ĘϔNPCqKh7Lӕ[fjJCx2.A~eUTe+d+uzz~0Gvvϩ|$#jG︯{ar7(8rpz١Ӵ!`DmƥȂ_$*{p4 sФmR*I#u6ޡ V)|m\I`@w UƂ1ؘI-K@FA7nf+fvlr=ds]֑TႏdV O?7+xYSQ ٴjF45Qh oq&RzTH7f#-Pm%x٤PG KAɲޡw1y0uV w7иi!s VԹB6wbL׭Y-~U7?햘uyWvT.]"]`ׄ42D%soh|U0xB}PN:Ĝrm)rhqԻGh2X oyy-nعjGqKp @d8s7Aл#$j>|}NpA 5R2B**O _g9/6`9!X/[{}t(MWf"\6$]7SX\컞fq%l42?j_MBC,&;܋܈%ƐgtLe4TxI&8ô^BLjOҌz VSrXK1*YGnx)q3ԗX<n b5wԴt5uXm qUN ۾Wn"< oȳ>13+XnkrbM<2W~V{P`ۢvsdyBz԰ÜKJkǨ??-F4j`PE/[0$LYӿBA7?a__vȟ *jz~2}zA ޮ`<3ñ& . I_ZDt'9SAy{;ݕ)a_<;WA,Rpچe#ďy%<8Ý %Aj# 7:3]~*! '8&gV2؅4q 6> f c)YOӖeF>aE}:n: ]:kdc#h2E(Dہ57 J`K7•C5hUԫ>ỹWm}ӑ&O+z!s<5]ҭ9Ζđ6o={(0t0;L48o=_NjO h(ULXKY"$ȁLsp.&xw؈!~tLk~kbɹYM{ϔ$ISrd:!6:}qӞՍГ c?2TAZ A8MҞ_ȝEG(TfxisxGq\a- mEaG1SI]TaqRD֊WRx q? ?+^xZ7Z] x!}VHn ۷]Re"IBj@aPp&'C6lklʸ?Mya 6)4xwY u?)y@ -6[{ =hGM&ůQ~KpQ 3% p]Siy.Z^`Z_lNh(ɬӟ=G_sT.Rk[?S87l%}%_!BDHԅ[p -3qsE/2]򔷙Uʇy({y4M@J Yȵa1Sand!H8AL H$aߨfJ>Q7AmPp2"X\>BmX )D # SaH,qp)( kPģ_S%9q1OvB6Gߠ|B>#i?&` " c[gͯ1{vx!?SgIqfʹ7g]o\MҴDP~j1GVwc %c.@U_:N;,'HGQM''Ցuvg-Za"Pǎ֧j%@*H9*I=Ü21}lutdE2%n%QR!fȄH@΂I;l{tP2}$ֹT(&Kt޹qx;|0*8&ʵ3ܟ1ȎZHO_x֑SC+GlXx([n{gDjE~VGo*3_b?)s)ViЕ{DU'i(=j$k%@p6axi1[Cs9!uM5dtWtC1~tD=gԈ&+}'>Ȯ4%R7ÞOHqVX{9Dw^x8f?7 4H 뫆ʤ$iB񚖟A`ҩ{WR!^kNqQ}i]ΪYA/^y=7"QWm[&]O $XX́~bom~\3j8{+ОQy'RH]^joXYiR;g~~SrmZ o JH{ k%>P'p区Y?J#w#@Cw5A`n 0V,*+.,NE6AlK G0?O?˙;(hd^]I"dkX_ej L@u\9Zס/4Y=dJ!jPԮdyqt*ܻa=Y=Rrp5Y-a7l&F?Yx%-I -@E .3$ kY) ~u+:d,q\m) X$NO8)6j/CX~?:.{޵I6+9V%qq<) 3X˴ <৚Ic`_D.㸅a` |-=}HٚoD/}<0 Gr$^Oq- e1̐ w1+vʆQ}+rOWR;eh`hH-)X(КNt8I6c;S.r Vgy`L[PM̚.SAObsaԚtUÊp 1^ zum{mu>Jᙏ8&9#}l;qkrG.r%۽#CLe ñ;&Doبp[jOMiM 9ޮ\mkp F]s8=(  gWŢPM б^$m-#;=|6dCX>iGtFOV Rj()ٙ-i/'6"te~ ƅB~%yXHx&> y+w0[:f;N;v7yӞMN3Ժ㴉^ Hm+뷁L%jtVShT=#1"7=bbaFnf̞X,eMIӭb?yB-1trB+-X4.h:#vlɸVnc4$Lj!iox﨣M i> 燓HUj璠czH35|[ ޠ/9O?2A MsP ^Sޛd~"m<9WkL^1L!1Jf{R-,\f2R3x[B2(l=+.*hܕngjur$'Ǎ 3tĩ# ie}0F(\W{3Q:}F o-sWX3]KV _1SKmbY:QǶ"}Ds0ffC=l^4]z422އڪ.*Tr8|| GLb\8Lj" ,\uPSϨyYMRtVPτA?^rp {+igZ f?70ġ/%.#) yyk(EJ`+nYCc\ Gqr7yZ|RB[½DRֺU%6n\߂#Mr-I>Ū,ʼJ{eTFW$1’S*ඤ _<"Ș vHOe}!t(ԑumdD &wZP0>c=2L^AV` PI'eA ׫4$ڎX73$A'~O۵`M_Ԉb#CwyW^L>lL HgaldEIG &ia[z8 )[ndiC.K;.m;͒PڲW#ՒJ<1K]lC%oĝAz&@<,?O("&Y^] (q,SUJ@`|xxJ,x¬Ei n=Yf:;SƠq/^6Dx}i'-*7j.c<_1Im8 //6U6wd 8 ͋AF`$fj͹#Ù4DBA:G|?Xٽh>홀_W]ɾvi*& gu?CKҩo|A8g1yB[[.K) g9vQhLu)t:l?J}c+y!yDGՎJ\.XO;kY_;:tjv;:OgnS酧.CVK|<>kk:/c&9+arLr~r{ffoy0H|aPjʓ]5X@Qmo:c{8Pѭu;܃Kjl?o;~Nq+ w(/4U ic&lS#\JGslPqԻhgp)" M^]%mxyxüv0/P[aݭk]c|doz%ʚxZٗwKf5EN^y]KV8s$+jY8lb 'm:G@m>p9\o[?r@?>zY| .s{ ]dBܡKw{"슑f {9a}!4e:Lj:Ei?-v5;zYqr5o@ )e^c3;xQ"ryoEiͰ nり0vS$fP@5Nl WM#be?L]tJӧm̗^u;ڷ=~_|Z2tO w3Qt6 #tK%yqOO~육 S~ BL*>lHrWXX;S]NxFKgd>OPh7"yorsYZ LynA߲{t ƜӷTyݖhEI HY-Dm7AJ[m[h"窔JGDG#9E 3QQy=a˓p+) t5Akn9\;-psvoLzܽnK?%^4wRމtrj#A.<5J PE2AhLׇ{Ot:C=-aLo+= >kDJrQpʐK; ȕL1BBmuX$cG۝:r~C^jr쌜k#ē :x B@ۖ`v.JiC2@yR5b,V3lz`l8Y}}- ]b#{]y:R:Ohɾ([Ьo {wʝC qm=FUgM#a5|UAtf6Ӛj;& CJ&(L1%g `2E~z'8<|')#$(jf&TLҩ4m-JuE϶R?P 䨕n,*] KϜgБx jT&И}!:'{W$D¦STYORAB@SXz-n`IpV(!6\i#-W*଀ *H؈H6ح8ïz+ DdW@DݜRͿl;Z$-< TfSܸh%jfPs:<Xg|OQ>M NOiJg{'cRNۦŦ Z଩ aګ{xh\#.OC\jBBe0̨dx*yPTJ!? -,,fݵ}[dv~bypX͍ 1ҖQqI/c6eKفjX@tzJ*/ö6 -iAO̳/ZԐQeq YK1A~-9M_pjDAI R4-ѡcPةA؅/.<}Tw_fG /Z'*WRp'|QW .^4u0mսUݶ z+Mex0誙P]߃@PSwu %sz<gRC[oʟFSDc1}zzפhp sXOF0؉4QCٵ@ _Mvp5A&ֿu3E)dDdV8g[Z?n 4ګRzz콤b:D+V4D)L=?Aᡰ+WCv6ŒϳjWI&#gB'B8qPX@?`y: y wH#L.5D,vdgœ_tP~UX:)M%6#E.9j[5[+w<1ߌqRC,⒖KbYcK}iגv/K=cݦ'Nw$NVaݍ иe\~"I?i0}i -9.0)ՀM*+3&$Pr~r Hȓ 3А3b(}{/W=*2v~V:LOxU?yO6t8l}kX5{wRѮ񆫵\DhќJԢ-Gb-7oV]"*bcT6vgշ ٌp(҃OYL;vuGhbN\hf;j-&︡dךbm @GѤZO42K#"'wWba؆Cx!s$R5 ``IA%-1}O ϋU; gi2j3E4EN:a&@4jmxD&P!ʜ I~ -n}@{OfRfo/BsP{ ڋ6; tEEƸ?YӱsOŊ]/6yۻOn1ӠHҋɷ~~G@`Lv[SϦ'Q,Tzd\M;f bPZ$K{ǵNc`8q"+QFeLs)( YY  %]ǵ{R&,bئKl0!/^4eC?4tCd@~fʬvLSdf{#qdUBh*9.i'Wf^e5 ?+etN b]錐j ]S)~ȘUN8yjP&ň9RG@s& o{Z /cjYJ"pG+{Es,dIխ&p #*tq-OʡGaSS]bqb7}_Jgh<~c;ѩ'A-pCl~5[Zߟ_񔷯_Ե_ Yf.4s 'N'!4:N$.Mb [(GO%ʯ"n(vE"\4'yA!R˴U &E.DZr(V>N(?%byOF^0+̙ӗTQRHa ;g}k 0K҂9XZkUxqƛ=c+eEj)l2Z~7QN G 34UafFat3 !4۱ _oY\Ht; 0䏤|3G*~I?22ec403mޅ T 6 VUIPdsw];VTއ3K8<*`eA)0 I7zNp<4}\,rT[jtNMrkjK^O#h[uga7 l C"^a(ƣ'Ӑ$J.`b}, u\UJ@! I_ːu.E&3|cS ;1y愲G8N1 ېusk6_:D!78 zL §"b_[G9>xRHgiy 9nWįfA^s3S-*4^2:S,!RodICַmwN+/uTu6oeDݾfו[R9RnpFL-a\6!kRFW0.;'+ "`F3"fu{|{1gAۗ"̨n&!KhpJZIZˠSN$rnF Hl8Nl~kܫ2pa|*ECUhї~Br+*!q W#N@ GZ3;~W &./ __͑I&,JsVjFjY̽A-.x̱wg'bq&/~*9+ ,͢(w W,-8*.8*s 3Hh{OBGx,lK=uNyx2y8dP*Hz*OKxܢyj"`;V~/ Rs}2;O,Llj#7~11\ǡ< ꤡ/hy{8~aYH᮫]7r_f뼝ȍN0Sks2TO"ntk0/ᳩ0 WRԲ7j3lFN*U=#~=+VS/㟳I9}M_b渊eX&TPk(5=b]Yyb}&zg;c<~K㓝HE8 *K7 U8*x |0%~#N(o#?gȃ94!-fQ{JD2IVkKtd[ ~CEUUŰA[EyC$h-`6ڡ{^jaee6X nTE52@ގgot݇hwZCbzEg N6n3FtWY#!)`>Aie W{5ǗfN˂?%SȊ||F#N.pk #( @!󬉴d.[>{2FAxڭTMM@T"-z\4)F8Ca=NnoZ;rB:1R ]i;N|oF0n3 5$G,x.5F_¯?{hyYUOHhNqIaVkV 0Bi铆.qçA WKdMx%#b@Gvݞ3]H`_ت q7S?㴳ubyK"W~xP>ѯ]i<ΰ#2tyۃø$R@>@kÙ14>0G{4t1C/h6IͶLVȢM3I G,:?[e* ER&@RTkޥ,b<+ wHXh9[=oԸw$)M{]ETW&؉3xM͖KE0 kdmQ}>. Wk P| P?^|Px5XXzj1K![sz得#MqO {ݿǻKVEJ4`?E܄|WF˗6P?i1mylHf4DCyЗUoOq'H# Õ~UWеhAKmrb;%)C3  ;0J3:(z$zrrb)V7NK=~(ε@`2A0[<,`ʭG+>B܂ %k?\"qr^_kH+LE5/UbP/yvkdؘ9뉕9P?0RQ񧆐ܲ Id}v Sy;NE4yB3R6)6ߎ]/gνw-w@Yu,[`lN.8+`C xw=2gxڿqbť&̢/ kC(ZX?$:l4w5q.B~Ay,ur8`½-5b;[[S}{w^ݽ_/.e q*{% c1'*vǨ*~,\ePS,4lysN6$󤐐}!.ELɩhQ};M?9-;bzy8"vha2+V!^`$RAGARn>rY}LR^U"NE~K9!TyRsK>j t=u"" Q'g^= tH7 *<ͲѨ1e$ 5+-CBɃQOS(>HJ7VO؉ֽ2xCbW#0Gq@Y0R~cwgO xd>i s<gc[aOc "_}SOʻptpo[ )U,ۚ[r |v7S Ū}Eݒ̐6#O\ ]|7|! xqw_2V7繷 /9٤ Clڀ%7cj(n픭Ė[[2֙j; dV3!Q^F&t;?Kه12lTz1'-Z 7Qʜ!k+?1N6$;/J.sxC"Wd\M&<&ׇ[B*z?B%H ynp{[ ߶H(ϔ ^4Y ة/%X,0ǹ_hϕ]BÄQ\fp#eEGٗ9*n }P=ѶW"hM,7w_BK$B d\;+$jjzUy鎬ޒe1SIU}AL)=@Q.4vk/!t|B5MֆYS bfAu¾*8vUIf;ČBk YpG>PlgUo R²Y-Z)Z~$l\ @:$!%{MJKm -L?S.{؋ilLw"&w-x9pwpsx¹vhህ5t] 2R^w(ȃH_Wm!`9+2vmZf #-Kj%, ےѤhD=bDQ ?]{ڜ5X,:-w\[k|aF{ yji'њSiTp nS}=%5Z0`̙1(sqːy5S6يil-gɭwIu|;YӼi0a)FPT-})G`M:hwK*_xDUaB;ɛ]y4YU!66EQh?V4^u@'|T(+tʥASV53S~@rLj:tp,PsQ0#-I|͡򃰎'[n{I {@TXS8]ҳ]b^>"^r 蕤} ?NɘVly!ύaT]o*-fkٴ.@_-{cј+YQ<3˓a@@U(B("c !>*E(oZ7?릱\yF\Ewf!_߆hS|7lE uV(.&m)' t;߳HgPzh*٩=9"ł:WBAw F)ݤ|EX[tp~3}7&eV \l !5aѻ;rm_{+a>Nzk:`9Wl_4K6 3õ;IwGV[ e>eh%,CEVP>ZY'݌8i7GI?e-x2.lՔ͚yp(B4Zm1GQ:ڗTʝ(?z;cp40ӶS IƄw7ɽ˻r͍,`ߊ*YP\ۤrwgrz K*̀ZԸ|r/Zw2>&OB=HYňSԁ:]{6}ozZi&'HgQGHx睃AHH{@S΀%-O^@7Z3?U=㿪ljؒ]3]bOv/Q\?n2:i}lH-{Of׉l]gPg京Cz<AQ>0 L,ԏ0[㿼 "C+Qؤ\FM e+2'2d_]Fm?$eKC/=^zO&t[rr.BHw8V҄{HUж&XztvA\击ɐ]Z Y{! m)lmPgݜGoLcPKЉ)g- ڑ#YWAڿu9GuBi8!T"3魼i("ڦL xuj;B;q1k)(f[C)V4sM F(xhʢ2Pǖ}S!JI2n9zx+~acѤK-5UޢL#m.U-hiy3.+`ʳ|@^zW,I{Whu6=ʅDHD[{c ^A׼~e/P QiĢn {q.:Z\LL\nYd`u? ?wc?Mf)vi!cZ¿r&ďL vy-pnQJJ$Մòsc[ظy-ۯ~))|f6XW+a÷k2XC(BWK0p7·\$0Fq%,3<0~tmwEa}uxCXFr)gJ.{PzTg%LyO}Lq9LD&">Q5`O/; R^(tD|Oǎb?#` 󇇛jE녨N[W lW"t!ZUFR6e+Idaf>nh*{SZb9a#CMM-|:Q{bX"ύ>'-_6]ý_; |`f+N6B#~b[*bej!O>nuQ}4:2{[A5{ot5=k|qD ! Z$>{vc>p믲cX3KiRGM=4oʨBveq]9-U}E5ղ fIUL':""pMw@x| a!85tdeKӾ+̀L͎vãy4zR罄nvEjOiQWio]ʀO9Ƭ-TVf F OvTG[^d,b|)vwA?u\\ʊ,^i3 UNsK]M/uRV\UOrasDHN:Yګo`%>LgeulތB+y]seW) /TD\R-kNE'\a g]~<䈊GI5[um#fҹk l|~_νͭ28^4]ԆGIMwSҖ7Pd*B¯ŔQVYP(lO. b=X/I:MHv$Qou\6 gRq*wk!a '17G7=60E Ҧ %Ros+}ȕ>oɸ\՛pDpnu{R|SD*L!DLe'Ii~K*Ӊt7;38ecLj@|:p8G&.([#Y)Hzi{,RW&x \N)ut`8.jc6HH\lal?X06^JC@qR)<*h9:$Gf@j匵0:8\Ҝ)Q^ۋ+GL{ ;v 9v;r$M,m#uO"Vij'BKtKH< &nJ}{'hV@<ujWމ,è>!a#I* .*L^UGVp 7 Nj.hOT C֌{q<\bb.SS5Re^wwͧvG"pdP*މjɸgaW%sbi'PF0~:ZvGyn˿-!J%UԴޠ >Ɨ'"ofbktV :Zv4&78t3rȡK(˄K2)z$/c $!YZq9ӵk(_8A2k-$WOg` &<\Adn[^D8V1^-U^!q"ồƈDR0*!=/]$TX69z& 6|J4>'RZq4\O &R;.K;R8lʙX"엂贎~@I`C1A zOcydJlo/QgNpٵNWt²{Žx]&NܪycuXm]6 6if3Jx&leLƃw/Od | $ {h$1%F}t['bd5@;?FRd##jy9w^UlMk(8.}'3\Y }1g$63nwzk,CzU%;c{F\&Q}k ZOwZ}9M|Ln'RDH 0|ٹ}YZԴ ~=̇$V{@I6Dh+ IP~'tX=0%< v@ B$ \ގ;h^os8Qǯ ҥG[_>;r;Z S(3yq8锌f2wwSzQbVӁ[Xq^M!尷GصU 'K} l8KH!=a/& n_9Ӯqq[Zg{J>+HMH*. o(\"XF̛s$L`a A]}!D|n@E܁v5i؋GFxq= T?aVksEwǤf/9k Ł/vz7 mp^Z}z B(;ͧmxJ ~OH{󨷖nJ$~< vdldJ~\ rrt̆5A{q` ' AYyB]K=% 6Pj*i]^"nӶ̃{,Q vJA<~>0J[Y%3  @D:Y붳$Wt-oKCe._KhB'>l|4 \ h^haSG<+bIs_p4 mRc)ǁK4{Ƿ$XfAZ^3V&xO("BRٔlc=R 8Q¢~t[S[O9ڭUbt\l"nNvUFXX%9g_SGi*Q{%ѿ'X:mx Ī,(>BvH1_`b jH&~ @k,Ȟ<#[4>gyAuQ.c39si=fEd)"3se"׌q7XZ$3d4a *(Kwʚu:#>0K}b厀~=vڪ[*l EgKΫ2.۸j{evDʐwy q H$tj2/} <+`ۡAhJWЬ7ކ;L3nMNڱY.俱/c:  8~vlYԗ^q|Qis%b x_PiSz^ z'b<}]Lʍ2t~}[z/ڬs44@$gS*" ! hw$; NGبQ`Stya~P& /wWDsx+,׺8y'Omsm,npRk )ڴ˵+)m[i o'^+QtPR$RU**Q* ɍ [MtׂZ(}=t%?M2W(ĬUDez=%1j_갵) .yHQ^paC,dbi OU`NyW$trw?iCZ`O2Lͧ]|Qp5;hsY4/38h$1" s:y-!|Lop!4׽:Hefaz*NWOqNZuS'<nPGȱJ_1[J=5݉wdR|"L1 7+}Zvݕd9WtϪ"'|IVBSJbI`G.oYn,%0eKU&mKh4ki]msLDoG4fgRZqnܙѶlEl{eJ4W>&P#vnk!/1/;*E` l=~u %]lf\E!q= "MY$VQsfJ[&/UVIM]QJ&6%7&ј"ޟ,0us/"aXbߙ.7\4i!YT&/<g^cXZZ]1v5E֫Q]49sUV-|'zu;P];k\ ᩅ 31ٻk/}y+{BzP2F.|K7bg idz5 B7@i}(#2?}h8҆4ed_hr6bh}ʜLjnmK_D{B[5., N/x8)" 5Ka/ QO?zT{VNƘު(NWKBkg sG)ߛJ{fѦ^ Gq AKWžVc廟+c[ڏ`dc*hM. K70[Ԕ@Ӯ/[>* h&Fr4M GŅ01Joҹًۧm&"%+A%-NDf&I)JJ~@&Cr6ߑF\LYFދ<؄e/Al;op,fbet7;/p1}=XN20u/:Z0n$C&iFvԦz-vM%ŋ`4VS]&$ʶM+E&,!_~?(~gW{zf0}м AT9(ѿQ7ϭGY> \fehfo-3xk\G#>k"J#GF%/pg{$,拺9W5~]:5~caoUH#Si6o[qGTڬ-k, Sڌǫ@w+6wo?FQaM5G|-WL#r"/7F#\y^N-H3@&iː GZ|`նSM^Rt(롇>6yia'ؠw[? | ؼ }GC>i_ճókHtuZeU\*MUaL6A{aPr4 בgR&vϵx4iMSHx8:M "8S)j|_``VG&4`8ra"LCyV9vN3zM9[2nH8Vp;[ð]XCLFoGۘ۞.XczSp§e]⒆ksul$h2I`/Nh] _h(I[}&azb\$`GCUEq IW?Վ Wf€g|<  ~tR1R)TB ؈ܜ?x4 ?҈M /0<td4k;6[lG/ =9 qG\<{!xt.y\~ A x`SӟʡK뢭y e~kL_/XXޏfD\[&Xtw'ADᤛ&@8N͋TbwZѸVوx; Sصfxhzr.>-,",ŧ"kåKq5j eI<&,>H +յς%_@v2M0 @=D(ؖzm$&%0u X%ӱ[0䌻\cxeW~C{r5 h5“EHĸ8'R%t(SvSU-JޖB "ܲPGWA>?ߕ ~0*q!{*1 =oM9Z߂v9hv}.SJseM:a{If"c ^Q E0AR:&.PkYf Ltz[޷?jXD6?!,6ɫ40t|ׂ߷Ԛꂱ|Xd|v†G5zɼ0y]"KdC ہޟ\cPΈЃ h5>bSdߐlviݿWj< c6?ח$PA3q_#孴F5 Ψ/g˜e[tj\h|N{vU$i9F:]JP}E] ]^7UZ|{g^5 2W*aCd8@C9 ^X׻a*.c B!nv އWe_1գq^@! j"".ͣ k&GM=|gɒRɧn%s*90=er0#)(0Ry϶kԣGƅCo R}џcт|vULVnT)M6Ls77f-`үNc-ڋFN#HSQ(0s&+:ez>;^hp3FsSfQ}~wpn3#Ńs(Zh.;[nA̓%LjdցRhS2zO ,P4C1wnEs#A8Jݼ˃ nS8RYۚqs^1ݬ%N*~Mc~&Vp .QP-_uVӆw4AhoQC`'Z8. WyM4<r߇_yi$ò(kBN^*6׈_ryg=^^} }耦StWb,qCPp]mp (}CÉS},,17R^5`O˓",HZ rr!ϙZX!a:irގXp'q@!.Ԉ#Ԗ˴lWא*}U_M8 x!6+Jti}zw]MXvB6{oF8< 1=RU!j_Xh/Kfp)rS}J7yPiўJ*ҿMt,W]0eN7Ipb:L:} (4v+ڔoO7ԇޣ,:%">ɵddzWU#࠭ T aYEW D~;pkRq wp9qrpSM&|-Wz M^h=B. D1(ə}L9v6M-p8-qjGr"5QZ$TOHsMqYJX4ObHC\xGN<̋ B-|"=zP5%H3;B89lC*1߼ V'G/Oey犏4UhbENL]7tb}i$OmXNT#[_x%?3#Ra`O& 1(B@HU[mim$W]< O{#@I#2! @3mq[@ ЀW?ׂ.߽Pz҅L=E1X±'d5=ӳʦ{ܭv]!mMȸnl |&9-cPRx&)xuUm ͢cۘ* {*ačozZ>[hj yl)*tU#E:f$oU:[+WbJXsKUyrE$o ut9zR5}`喤Q}7jRKG k~_Obw>sSx#_6_šoUwW'Ep~ (,IܤbutU"Ì!xZ3Sa$.HZfM l[,v׺~[q $4Nw,ʄsX~ JeB#ntNL>έXTYFA J$@{QJuN j^K=nVGA崼aljkzM+P%-ғ'#L7^7=*@` '[_7bQ9' :mN8Wy vR4W :*J,j KILaeK 0qsm͇lc!'s\ޖuP5M{EjހHR`]Ki=79ffٶs^ 8Shl&Q(S+ 'X~ u!&2)b"~T<κ<&VN8}EgP;/K(l"ъe׊up̓61}Tը.)yWFhNwKHOYiNT9L*d㎝y?:S Tֳ0R;ǰgK\ZAa=2av| OuO".7M1F6=X63\A+fL,S oY%cc{ #nR3nv27[*B4Ke_- @!az3&9]e\st<~A^"4 {ԏ ~*!J.S骧HH4c,)3U;IV# oMb0Le7f?1܄=*N /gaOHY٬ZX>"_"VZǷ<eQ}:;|6b]#CxMu~:4o9=uoۿ?ރT@w\rc7ۯb{¯MP%_x$ ?b]T Jg Gs ;uz@M44M[uR=5Sd' $(' L0kG|Az#B V΄,u@ .vb/Xt0Dsi=طUٓw ;b&cazܜgibVH4<\buϷp5>܍s=BdˑYt:ݰ~h=x1PVUܥIkݿ!ߪZ\2CDEpET2&@i\/Ws3 Xd-X$)p u2A <bo~qVw:n``J{BzYfv-)N 7T![?nDcΨE"s ٨ż0D%8XՊ1\aŘl%l#k|jSrӚW_̪6y(TV632'W$S+$/aC{=HvLIf#lF;!ʔCJfl=z ˴ m ջPyX3SH;Rs,? nyE"V،<i^F~|̀v>!kW?yzPK~zb5Qā3sA;aσYyJ,xqM$fx%v>7b6 A-wFx0e۝ZQ8-]dHPIP}=ۂbky{G'솓2l#kT Y_]"9g(趥Q>N0w}m EVԎ=:#il{("r #ѨAoK>3Nuv\Ĺ;A˲-HB*umYzr<{(Is)LINtyD|5un1wV ଗ/C]XuUZO^U5{S2 28X'$j"z MĚVl5D|w._CEV{QbC|X00D޶Ѡn Q?v.m367~ Ҧ^DGHh4auէp>R6zna|FEKaE6MgY S%YеnLXQznob@Z}BO rvl0KǛd~5J$z򨁲4>o#:n[yFe=[(4c:µڞ*uU'm Mi?sY^HņTJ15uѷ!~cbG0bU ҨCgCoLBN7X,w_ÅΔE 4i\ IKڇ3uNA*oN`Ph FsOEZ|oVL'i0o`$I#a2OOeZj{`@$Sܞ1u|\W!/|7HLt PcrLA;I郤[xr<2 `0k._3[X_!PŕOZ!hC,UglXSZsh+M~OuIoκxZ~jek\33JY?>Y@d-;nFGÎKɌ_4̠sAPY{Q&\Lv݄(ixDEU8pCPR 4%u91JV?%&PO0+rf\8f\gPʄ_ H4sx }Dm Tem\IQ^1VxNli R*(] Nt 飭=(!8瘂-lfMֈﮌ<حe ^H\"~u"hAPky|Bv}f΍E$dN.D-RW҃#4 BSwLҢ,KǿZY],`߂$M@@DDF z[(Ue-EWqU5ěet $1!eA]K]r٭(l4 c<,+67O&@_Y$wT0d+VMC gC@1ۗMp^&X20{N ؜pDÌlLW+ C p?&jz0 #RsVkhT^9AX"tú`b9Y9#lh(*AX_ CaX˼?\QY;㲭jνcIu Lؐu TJTctg2dcVN.[J I%[A:}/0(A8Xd7y yִ@$~4$}cX_p:;D¯lb<+DNʎO'#UY,M~'l>@Ab6 [ cp&U2!H pɵlMzZt'%/}L#ͩ,s$Kbq"\'T S4;r0ISlL$z ($x5jTrNM~;N b\:Lx8 os">:^g}U>& =Jc5Uk _-Cq)Wl[smG~pH+I#m;GjUbđqt7kz vn [Bo3,ʇp1!kSHL!}ݽ 3g{84{ 9F@"*A!r%݂10]7s2iwXV'+;Ytc5tRJ;a~[8#/\fdBS;V{~?]P9PRo\Wj#vdC :iSjsKIV)hNW,)vDal%Nl[0]N/#!9&r%ge^#(Ecř.ʯ[q BLjQPdRxC'E۝E=6o1# ˍݴX SOJE@@moܨϓ?q<M\q?4}UWr,{{yof'  ߼sq;p-k8gwa(*xܱƓ]V^mS*>Z^o,mw ,I?Hpzeay%bCɇ;kexF# X2Pf%2\CWkRf[ =s)vւO_ǥDEQH|:ՖX:%E"SfX_-d7i2A[S&M uMX'\Ll&{\eВU ,5a:Ndo/bAd['YtV`IQ&ӝy=(q%CθDe ؇5qš}\o@W84yf{n3R)Oʙp&h /^}1X/#о- {MVn6C0(^4AKVOͯj\{]Q$a=lٿ M5) LgyMQ Ώ|%<\ *7ut^$j)dZmhlȮk]ܫCʊU^ l"6`p@LfڶqD^Z=&r\W:cg3Ѐ3O/7yeF3[^l`Ee#pڈ:QS/!u20K\Zh}f`OBq@!PdA-te Hb#UolIT-+䪃r^A@P?K  R3ބ2RL8cgҼuJO{SӤѽIi+xW$2^z~\<3 a%߀j֓0͆ :H^ x, OeHZmk-Or`!fG*ӹ0M&ov@eaE'S+&KR4J+\CF ;d[  ?}(Wv尲-MHL֚0F. FIM[m/y!ݔ׀.z`l`zAo]08s"uVսuK, б%bZihX #7?LZ#Hou?_:&h҇me:ن $HVn!$^ ̥?k &Ck.Ics&3Fܟ/0\VZ"e L!؏U(NjИl{_;'̍U}qh!)PN:Q [/[VJ/[_3urVdڢrg3O3j;J`r $j` 9PQ̀Z+tD#:ʲ'*ڝs#قHK,mr _jҀ>!&Q|3`37|^֌ ?꽤eSk|=(Q}uu]u #4q@OS-(ˏ%֤'˻x9)={iC?)A\q_$IuQ0*ǣn7\z!ShC Y|)')49Bys>#'A^;Gax5U'1ŸSVg8|V@ ʸf#z;+Nö-Ga.~mςo\Z$/˟#c2lF!imY #rZϰN(GoX@[bIw=#P(c92p 4FEQxxEӻDbrPt`4f$txӳ1Fma]-/WO"`0UNcQu1"|J46S/ f8X% şl tΛwJ+X6%U|CRn" g P $԰21wtas Ɍi^4$f{L/pb4~w2# ĔѮ,ArE/f0k%n VO+$!ٓ6 IGǂ7vK ~NƟ%My릷L^KqӀt6OۆԔ9qkh?^C'7heع9J5s1/x,!`ݪ ,֪_To?҇+-Y{N($b I|b@V{'֝̉8˪h!^ ([U_wOYCLLR-t~@NiVYu)TjvYp{LLn_HENJON@N>A<6Y/R܅;2;.tJ>fVn_Z4AW{)5^Әn]<~RvX#Qk2y*~aޞtMHI|%lU71)FOl|dAP|ЧƵkT }܇j-,e|Qp"hw#󏄘x{rKT!{qg>@[3iFGυȆ@Vƅ,gḊJsd +>1oeQ׀܂o +t:ً%"6ĉUу9F iNy:o* K b*6eVbhdO)O X+sHʄ;/|Ā7ylEҩY$cE錌`ĊtN]1Fo3>gȓjZos vdH iAGc$ڭ*ȝ@Qu7ν1Z;ѨOblu3JI4:';Ȉ:s fqC*$> C n5KŅ䊪 U8rzOVw㤎m3؇ YQBiĒ1"SJBE&CN \d1mr{1k#Kz`PW"Jҍ( ~w5J5wnaRk a $bFq/rVB4k)u+X){׀᱑yk`K]Ԧ'~s%h~ޘ5!}-z2[Yŝ.MMECVbjI#zGo$ʔ!P:1[8?nm=Օ0ma^H5Y鈯:vJr* 5-mD(kYGVhҘBUTa.rG$EZZ,PI}w-7"hُUcJ ζmU_GqKyeT>$>s:SZ#6~nSjT*w>ONi/s~&MLÞG(gKqawP~Y4jX(uMF۠8Cޠt\*,; @J8$Dᓺ{HfP/0"CN ˸w%19۠kY n^Gq}qMx4X߹h(Ei[>~ 밌%1:uGHGTf?+Mw8Ƌi<| 0$3 !F6']PT:R[b:)&0@^oEHCnr4!VZ{:]} qHzܳʌ~2MdGfWԴ.çA\ GֈiR? uy~wCTm@(&dz:Edi-ʄ`4WUzOؽ@Ip&EMn*=8U (R#g1/CG*6 zΰAjΚ"cCzWrjYIh%w#_`rֻ ,]gCcTd]ǃ^bp408 wZO:a^kM)zĄV'iVظFI4CVFަ=Pl^o9:pFE.[>@9T!raӎ异̘SE&zEY>XQ'doz`4mZsf&t͎/ USCoINw5$KV] D/ox҂0[Κ(ȩmޒ";702F6ZU&`$xU<Ȥb+xocq"c!ifͬ#?Ts}%o y2jPwNwSlGD?/dSt8k/JRc`ؑQx5#޹ lxƏj77l{gSqtXMFb!gquuG *e+2*z4N /.|R, kC u΢׼JW"K7`R+Ħ7󼂄}Fkio3Jlۋ#\!RbAIP:]P7lyɘ2a,}Ygvl=ߗP̒7w<<b^t$Lت$' 4؝3l.av0}-I'9rrY}-h#ϧc,EdAOI^snOMNb'|m$N}v fmPƔA*S$ꃬaYwpbkgaF䴼js}(,?' hSLbL-4_l(XP9aQfKZLw E6rOLn~ !- =ZI,&dM>TRA@ZJc<CC;4C[A:saې UջP,UTԭk7[SnDxb#=+%B 6ܛ>Go˻:pO|~.:LU!vos=E.f ( U؆1*Gr03iXxʘJ0 ?)'d5F(̌،Q}JHΑi@6śpcXR 39S)U-\[]e ,۱M&-3D%x% UǨͻ  \*S/W\×4-gPo죃eJP"9Leͻ>Χef= 1Ow %sYY%46['˰'Pm?#tl}qVp("E[YgRw\1_ߥY(/9sϢZ/rrbPmla$kƦ7RSOYy"×i+63^wz% ZGuJ;WmXNYjR@Z >KC ݹ$ܿ՚j$D &`[y ij?m9w,v$u]bLm iF5][]sA*` ׇSc(Ta4na&ʻxD5hlqaw&6?^ְs>heM2[/a| _rHz@L^ޏ7冶X)t )tSUy@[Œyc9[0啀TXWV>,^67 Aniw aSuOاxME7ݜ "Q nQ8*jC2œ ğ> 6ܺ;εVzBFI]5ޯfn-ƼĞ a.[뒠f|yw# =TB]N7oSNۭ>ɔOSgi57Һ~ͱbβ IuNqX]K߯:w^IҜ u"+XGt<6vypmbQTq2|P/Z_XcRȥ({ۖ}M Ebmv,, b}Ln);flEqS DToʁ;K'Nʮ=^"wdlmP;3U})nA>Y=MY1@1ubRJa HY_2Yb JU[.:AU$&/ؿa\&iDNkP PVl[ʵ3> lT2 7R*= 9S-$/ (&`N  .ۻBm!]\`DbN$A[I9B;cMB!\U9?YYLW>V.w0D>eQ{ ߖuG$%`w@92&?H &qNx;'mb:9`VFGeQ`0VP2_vSnGuVyX1cI}T1O`v] |;[LYq5y7"=D0IԶ NbGef{Rrh],v z1̎Y,s? mKMak-Q75W3?s=mh3|kH{*.rϳsQ JKDI^c3ICVm_!e|r ۙH[e06(ݶU(ӿTgFOeZk8 @QUt(G^AH3cYwY='rcZB8^i RJmiDNV' kN45uz,K7΂+i f m!N \g"'{Qw™ O6C/$au" zy#pş݊@N, :t #9B&ZMCRjcy-Aü<ɴAdLWR]=/bupNݭSt69n@+od#[lJ >v{/NJ3m07_Gٓ\ g]ڻ1%q3" |C7$]|Z5׫³  X@_YCŸ05jM2N.3$ȑHld?Tr|eB!x.p{87 tL:PU@њԋsz3z 2QrPj1=XiCCy.\D~Ǡ&ysϺ9' n,H|JVqO 9~,PGrcwmȹf]K Z䭦0dz +OV )(UGcc0Y:V$OB<{M&Di&n_hQD/ÜY(Z@bsf!^ 2߄<ko[T@XC:/2W޽.݈ kw.$:gutewlG҆L8!>M Lp5c2 x9ys0՜8Mn*"#S 6.)RMf 9+sJ.)2@Z;.1ڑ#6 ‡ӓWn|Y3hzsGف89"2C|7gtMP۰;-S[tmYMh)xDJs:u~Q^}Q4me#iQ1+v^3N9_ b/,0sD J#\H`2H+zІ5jkp֗BC2 RZ# 'Xl7Լm|*^D$) spyA߯Wh nd,e,X-1S+cҠZ­XT8|iQu*%o.y åHaA\ɼpN499*v@TgI@4BJdx]7[2@FX#w2xB'g{\x'pxF\nD<pDi)sWS)mmJtWDo)MR*t&C\(bxE1MH{TZJ+rr+usd0>C$q3=l$с($I)g`UK.-`pte gvu6٩>p1ݹM/ Sh҈#2]'J@MHr/B]4BOy})]/bnc9p] ߽m>M/,juw5{[{ mQn6=N`(XzΏZ:7ãQ5 :v17oܖl!NW{ BwM0@2i*!e|1>Z{&Bs:+/݄!-lЂkhoFi兄8RΪ@,ޱΦ8 ED(*) -OTO*.}z{!6*}꓀-@knR) :[JLNCZ9Hyyih̳2X_DAJ̄ ^Lj*XH@4=sЃe E#:2H)T4$DZjeΓiOkZ.]{FeTIRcSEZ'Uzc"2e(4n!KO5~3;D Zxmtc< dfK,&q(\Ȉ`ȩkj`2c HXSp`2]2sNVwŵږ wq^8qfrSV`e@?Ѯi,=+{_nb.='w/F?@;6ە"L4:ku2S}rqYFKr7ܶn~fޔP Z]QPjt]ιDQ:I5̯J-M[g8mƎ`GoFCفJ:2x:GĆS|ҊεZ?[9P` a\M.ZM?0{:^8\"ע ͼh,oNft\`<h=n&I~?Ind]E57 |ŻvqE1)Pj'=y H6i%J# i(8sX g~D 2\WgG#Ub@U'%!E0E}ƀ͘0I[_7<:PH= VDy'cFHH+ iUWsn g˾Y辤Lr=c?\$͜Si(dp!gޖ{3sFG { ZC)C;=Ms-vR9bD\|tjlWI֠AވG-9rJL=";`ξ=E>Y:F0YZ,4p;]6Iϯ8*Dzs{w@%g[Yd54 pHJ Œ_0 M%.d,{6Tsc`t5Xyx0\(r!Qzg;c j̢JuةٸNG%Z-r2ѓ>YFE!pNи|5͈w{{cBYzBR ܖt㘬eE5?7!ي V b1^x׏Φ^gwDKc`/O$j(h)%e9kȔAR7y>I,H *MM:e“.,#~h%eB>`S"¿10ƒ)]|%j]ЂVFMxbD8ÖCh"1zY1^Η2:b|ϿƤESHۧDi_> 04> fp zc9 xni00A_vCI{0i9 % +an hT(hmNLKTN5pLJѽ$ۏ*%'^/mT &ڻ5k_j{E4`+k,ח,JP:p G$ȍA'H/%= |U ϴ/!D _/Ibs`d޺C!mugh|Y٧-2\m7rqdLWOPν1=l^ GY6n3UEr6/51p;WN[byr=|-'6>/Mu/{sLڲ| ś7lybhKPi0v݉ EôZ`^@]cmyRQJw$大PEE3hN툕8\* o*yh?M8AXxT? Hw%0s0l1Wp!I[qdDx1jrh;V$nOc3b eGۏvAyg3Kv2#sp Rb ,_2 +m(}H25uQq0psd=5pɉ_'U#r$P'u ;欰]-4$3 1.~r US|[1M<"M*i "i> ؏9U[@^ϭa ;Cا&]0TF?f|ZÉr#> " PZv+mUs>_omͭqUe| pJDەS.sN d+K kb;"eX?ZM)Pl0SS_'3Nۆ83Dۨ1mM!.0,#8&]h/Cŧ"{Cďc%J)'&>yKmP4TVD sTiR w6o},3|^Q0I40t]XnfvѲ2I-ܫB6l\zJ$2G-Kݠі>=@:B<x'3?`8Qӫ aXlP0` ?KkYn{zN:N!-D1hiqI鷜Y D͐'RaNuW\"} Y$!a̳Oo=Gw_4/>"N>$JGD1+)d(`i?C} Ɂq&?7-)^aF+0-jaR2?;rp)?$wsRi׿[qQZye^Ou^L@a{}ˑF&ufh nD~~OdD.F{X%gV> 6F&Z˔j\(g"2{03o"|"j7oΖ_ oy4u'S8"!Fa"]n je酓>wJ#饑q96|-H34JFUiuZT[X :Uj̀ʦ;Sr4snhh*ILp(:/6Pr"qO򡻝hC*X/ÊzF;Y%`$NlѯN1[2Dz+r=3$szmO0Yje:[U M_< >`t̩ab1 e2q3 4* H^#E" KY,"A?ewvYI6THv'a)Eb&\[vqYշ? GЬwdV.ǹP Y.($Dw L^Q Ďu?IF<8hĄY>hMʧn^~;:C M'҆Cg}#*BLv>ceCq5ZMS\k2pfMKc"X9Pyаk$`!jJJ8Ґ6a^+}wtK[.5-*=}W@by-?bȹ3werNeD0W&O, p'3t=E拢w/>.ޜ9nO$\mn$"D94ѓ1Fʾ6|^+%%'j ^JJ1_3b B<{T@5̍h"?W쌴`C{hT4&eW(!fTbJ*ŧ]Ė\s֢ r،t O'I4EbDU@[УE(-50rkxv`ԢCEӈZ-Po)/X_)8l]Fe dln>'T6O Ph\@j \4_҂(6ǯOeVm߫RxqcbLmܜ@%رWɾ=$~ G94ic툥| T;d.pF@Νo1{a%Hǽ2e᱌ma" \-9 #ʐԅ<׫4ϼb's*@ogװwCD@\.Jƅ.Z"͊-]Y y7FWFyPwBik\c]X;TLt{ҏyK{3@ojYҳc)k(0-3nA[ք1kMLcnJ˔J"\lP*SQa(ZLj޳Pa kl7_*FC{Df幢_`T)Tz.>㓢:t*)v_i#=b9~|O¢)`CL H6m^&A/1 Hݵrv|/.{K-z!yĬ^Mu }5Z,x uXC%|>ǟ0.hm|_>:Ǐp< #~cIOV e Ɏ&tJN )JU Egs{X~dNWjBj>g2 sk61ly2ߓF*@MS[§x?y'PTN$Vֶ !,AHCo-4-[%Uz~zkAbs앱/(@]5Yz'L*6Ih:|Ge?!jd4S18QN#v`ohS* }2yōpϵҥie&z݀4`_Z]]OǸ֮ED^G'4hX*-&ay1Ȏgз?w'r A5=3n yYZ;{ q1w/ƀPZfur etW?@8y8,캖ch!7qXNꗞ*-°[ rxAR001ݲ iKuyV.PX',;)NQ@zXA{r_\Ȟ2[{re50iܩx9_ֽ}˕Q%%w 00}(O;s"ME@5>/׿,Kr^J7&8u{ۏ4 40+͎*eY,]{.IE~=lhxa 2ikS[7踠Ogރ0zxIPKGn;>KpȮs #qE#1R!B`?O`|M [c;~L$HWRCFn`2JjMz,i8O \d4%H J lm@ۗr֦.H53$s {pBfykR93~P>{rBo J7Pv:1 >FC di:Bq=spE( nUNH $AhDWj hʒ O_/ (UhYJdQ~GafP' / Z9:mJxa;IPUMF6sK+e_7({4NuzUVgov" ^vZ=\F;.xı@փB`z(њ#|`\3z|U_fMf _ 9 U;bۅeJRv4|Tv̜.dWPC wsAXB yAΉBUT7)25k"7)ר}15OfX? ئ Yy_FR,N`/{հgCz/s; 3w^崷! ϖMu];w0Z`SB]1٩h"*c-ba~Wjy.U92x:XD:OXUQݯRkMv@ky0I8W?"}Vgңs5od ĮpmwTuǨD N 'Vm̍<Կt;OIdK? (\;M|޺t> +XFޝbk^:ԄhLy6M2גHfw\0&l>g3&Ju7F9 l7Fx.`t("JMS%0ᱛ]!qe)]w|Oͼ ^ٸv!!J{oY;`&,7/MW$y=QvaNdSEèAO03>=;0u_ϛC'OC%HOE3auTet^Iyݍz'h3ܰڻ>=@:ٴ3dM22MTfY16.=ΛnTVդ)D]^|8(rjZ@q^UEa[~F m^{ ߺ6]ee]fw) D"Mm*0ʰfcЏztk$QYܩZ-5D|$jB6B :耥 8  \;P7 %]0ДgH0Mk, }`98x GSۀB/ r,׳$,㨕,rB38PdcU9@Z);;[BM% DI&[\c2#'miV^'\]rj'GΛx`9Gx⛳Kqr;=4ɵjx@(Xe?pGyk (fvWD5yvcNgUz'M,,Lc ]VU˜H2"i 8j)%042J[|ɍ?ǽt͚KJ,0~fLK%| \aՖR>SϜC޴_þoi6 cvhpġDA4fm.zzvTwYN"C:_vQ= ?&+I5b;rzL—69x?-kUaUAW4BL?)jX;|Edf; ;就=#Ɯؔݕ.UiS\5ٳg&猜#+)scTR ;x%%vPB elǴ>v磣n#GE?\pYΠN;LR7?;\ϾGh;T ֧ 7qB *$.n e3EPT7Kdڴ;E6;T^Ƀy5ܼ;LrÆ}yBV!ݾ!UimzZ_(ktcؘ͂Af¨*ST;#)N^@d >)|Pդ.;~_vn."z^,K-!v<7:܃M;k*tDc,Bxv$()R2ArA2nJ w*؎_+j5(eo3"0.3_0W?vU^"Q;~S9;9jɁTyD" :B)X5^AӡeLnW!PUQ}pEB&[pjgrd >|&.d\feʾə,-I~[CW<]e*=Ol²7 /yvKs5`eJ^E=j<>B!6|1a8l?$2C kjDe><]hi\|QcބqtՇ 8XØ6aJjP1=e*͂?!X5Fm c8۷גsGdҌA^:}R`I$Wf#"SK=t7 HO+@q{݉D.F?wat[Cݱi`/m3| i|a"26V#'jQ`ć3 09~DT\x>E?X`sz􈞃'lY)T++Z*ҔW/JfM,]!%QM%@ ʰ/%+^f[+z j{b`1XL'"g3 ő( }kL`JԽ*tömj(V1'q4´$L/ݝ^NyXZMm^׿hB@B3aoO M7aSv2;nIOiPb9\^{PiuN+NjuI| &'J̍(>\ 4@ӔES>͹kx_ ˄6c?jbpx9h&ie8C{tGl"]BLZ 0e R`Q,N_hm|NvE2%BÿH,08璟k4^]XgR8`e|dmh(ռO//S_@p0)̀Z;*~]^3 í͡P4?Kb| g.W"nC݅ U&1Smɱap/5EDB|rvoH)Aů 5 UӷQnzFV1Z +c/pd pӨ?.rl)ٕTA$c(ieSh6}/yo\7b|kr10^Ɩ _,$J"ْ'oGo1|}&Xo}[m+0fσ샏lAc]n#:-(Z/k}'TKXr{[b6ߞKG%w= 28睺 7abH>JJ~YHR`jS"{*vgpSN4{udJvStTZ⿔G* 0&S߼zX5&^k4퉡zݒGKaSVO'W+a;.vǧ1'Gg(D*%0n9q譒c B&[`½[oUV jvSV(nӊʔ$LϢwPSP%16\!Dm]D(+FS{Ӳ&J݄v$`ZbUR^)e,l28nbL70ofeWBZ{El9eqW7vECYZߤYѢԽB5pl˨x<+Y7(E^ƣ[-ۥC, b}V;w0f\vԐyI R1bWK" P׻U)mJ w@r=PG@US מH)!S7v.׌ Ĭd7֙2Nd%2J㭈COלv/c@"5 ^a' &ھ؄\}nlj?bA>Ed&ە"eGBu# WH䯿}8۪ni~#gV$ԗHy:/& n559pԑ^TԃM"2˨,uRw9H"` M*JD;@Oh>kDn0 {D,cZUû˅0@} : h~1tyз$I9p}x9ϒ#e悔CcM}/DfKA[tu[mzgTCY+X9bu\ ya^?O7a;E CVO@q÷bi7! |m5|fYt&l{Pg-##΁ 69lĥݤPp>fpa=n i~@un\WZwS$.!Q04rgD5$ɡ/@|쳅gd6v~ TZmfAF!=㽪e 'pomlcF`wvOe۵؆4x;i3fJ3XnpWL;#W)Lp~{vs>D$"{>+0+}_[9F\o{m)~ V\9 &h@MGEHuЫ*p[p؃ks Q/Dλ J%{}ϵtDցG,"gKq,V!9\dNh"ɭ76qJ$. 6تNF5 ;h^_wSZmJaQ^ubuwrR@ƵE ( PV]")| ㅟ!KN/T,ci#F[,"\9 F9K,nZmҎowMc( oU\nVEl2Q,.]6S+r׏l0c$wÉ79qnebtTY+Jlh9V\R_r PPM+".&cCꊔJV*P]/s[â1Q[O2$mG 1<讧ݟAPV|3\+iحP"rVHmʼnZbVЄ)'1&I?c$x![ssU[w S3cb|g)8w3">s~_;%EJb|H^0{-qe;=w+M5N)' uM0gK Bpe8m|_B+v3 @5x)!櫛^ayL hRtF2JG'X;x-i7:RQkT Š{(wgv6 DmZSlaހFb),†|i],fO|rmjg7i<0ORlʤ -z=-MYFu/ڝYrkxaa,{H NRsiϭ2PP| VjPqeq,.lȳ7 <%d&d1/k{x%m58"9Z Y*;eFƢ'wΘʜL@^Uvb6ZL*ʮ$/c-P>ii}llX9AzDM)0Xll6+laahxo,2k|˽= ` ;|Kmx7ᄌp?R%*% Ci/i:۪ؒ}=GHG:pšaa Tp Ѵ5Ba2tP+GO RQcp)E3e}A%ʯO׸Tr(yo\ 'f>ۉ -8ZΌc A@\N*ַgKYFC!}a1_Uh [Ӽ_b;&K#+LYoܮ ҹ}  !u#k$Ct⁐'E@UHَeչf8 x+L],#&AFMp  ,>NRYz-q/V. 'qНk֊iV%,ҷPtJncTJN@O98bk/+Y0)4$WVkuiJ@;z{A^2hۘ 7=̂75Rl t^lzD}M= ˽5S 80YjG*3{Gå"tӗNO@ו`߭﮺ޑ(H#AwB`Hmu*!F 2Cqse|*k 34 ;mِAxr@5V.VTﺹv%lG-LaBi3#hHxsFDRԈ_mHxfȏa[M e]=?jM8+OIPBU U _]S+}38f5q+txmNiV1t~PN[c6NR2 HYa? ~ƾ+H qeSZ wQ/㋿V^Q0Vg}զORLh@ -7eG!H!D0K&$]=WڿBLZʶ ǩ%` aM!LJ_W3ʇ.:!t{Fɸ4Ly3F'MdFɱ=J+g$X،$H`JDzd N״cꁬ|U{ LcO̳jfMڄ;`rӓ:̇y8)^t/;2DiR:pM(C78D@q]Ŭ".=29lpݦ~LU5s {yiMpo?-)?{6Qǽ;8~ҿ,, T{h`dPCmjP괤aj;Da%X{" P &dzTLɓNf9u5W=;jT)Ht^dYs8 c#sy'cs[A@éofKh`xڑNeDh en=sf>AUlQ+0eS#r=_HGJNf)sE8F.7mW1Z&!1ZݯMEO֯TJQDžL(]3B8I}lB ێ!n~;:peMώYV,蹡Wxܒ] gg4 ؄pAq,e&Aȸ g;9!t5#JbMǪ:1pA[(Y <5F$ 431W^J.uhM3h]#F`Y܆J h,܁s1rZTd3A |̱3N5wcd7 tH{LC88ЕhH X.&Yl x:׽񵓨bfl9n&=EK@1b0)ߴ@Mx x'n.aur sҎEv=aiM0;~2վ6 eE*5ڝE)6Y۩(iBZI#wxlYDN+ݞbp9rkJ|ZԶEeb@yb?&Tp@=漅L.P?O'.3I)n9$_bJ$o\PJ|xmJ/]8dWx87/%!ca+Tt~l1.4bII/z5^ՁTk|o9Z=M&n)gj<2o^4"cl(~}IݞN o7j C_ME ['DZIK%,: Ȝ82efQr VnkV'29|֙87p'M6V>M/ȵXhG~WBRb] z]cYb6VE}¾@u܎eUVgTa8TIgcLl46ZӱuṘgObgn&ȽC`{B`ŋ7Ng{̜J o3" o9<֠؝G;]u$싪2u 6nIn}?kJ0FfQDfFh٥ 1IxSk%V:4ҮwOœ Ҁ x=cr;BL"fZ&]nit'JKCh!OUn=~?!(ͬt[vBWM ,k j=1wZm㙺ZQ|XNcVCK)&axDot0o$ jjMbkb)R>!"?Z|. ^jQ}H5x\DX v=i.PR+My r4j|4" TP ]Yކ^haEst (Ψ;8^zbl^5q0Tپ AyYeObғ9Wm-!'\w#0D+ ƅTps"fi(-9ys<6^D7zHC7U4>W%NpDBo8rpuK3qϻz9_eB'^ڙi`{F$,PqrJ{i{AX\~vpPs`YP͔Y#R5_+.W#‚79 *!v4+낫*]4mB8~.Yg}DA~a VhQ>'DPXC !5s!' Q)4qI.v(j:ºPSAN&PM5V𗁄dzp,uFw{ݞ&~9]:2<'s(mq*mt7Pvs >6JʜHuwA 0qQ'@A<4ba 8{x{ 4x.nK'V b)2bK,J$J njy v[ӼMAB.ʽZ4 G0|w/'N0r 5YGzc;!zόh\aGY.M(^9ʋ*eF?2_LAt u9EIT >*|*SV*QOJ25g чJV-E[fnC#Q.`׏e-b_3ocSlTvQ6z LvSXA4sAF\׆&Y,zhIr;9djUSCilQ@M#:!_fK`cIZᛐqـ[!ϩ7F ͍.U C}ƍyl BWE t,9=XZ%$ SzIռ]Ncu"+LY]ګFR6v`8kK80L~W2}&?!ڙuY^FٰULBЭ>6PSd*[:7{ U:~0's Z:{כcuVLAPmWcHIiCkjPiKEwM~( { J.2,u뫀E-P쉘77$\{12Aw̼r m(]0pԬݵ$-/Bov6Foqղ=#螸Wp9L9ue!\rn^?Ԙ@cC>LNWkSH7m|MHp0X&|9g~`Hɬ ~mJ8DےHիPfC_m[$2ħ{y O)ÌuF;>z툷ULB#%:@yħ=D4=ZR*,SVIaAK7[lYvx8h]ł/ C(6U!I>6+nۘlRhx\<ܘ 4S;Os nXgktC)ItCoS8Z(tY;:ˤZɎĄ K"눷Iw*DlyXo5{8C*f6u&[w Q}gT}dwƷF @YӱNMJ+ V!LLZjq|$>4Vmwp| aih XE>ɘ/NU[0FQ_î>/pD/l*ϗ#"י5'-;Xz}BCy~ {PC8[mOBDC"Լ&Z\&67mgOy6͓%lgw%-gx.=Y;Ca%J&U[( +:e@<?by8Ui7l)Si"I0B&IщRLbHKЄs$cdj.upTkt=ЁPLAribZg1ΌW ?Ot]ax:P6~ѝã 1VjAC۶^=_wJFp}XL]hY8Rƴ: /"њԿ@XHy8j0WXqܲeUDvmRuZ~(yg|]Ms\G5$rp!/RWL]AG^a oUoQw*6>'u{R5DU'hz {~QeJ A1Qw_0uBJ~̿*߼i^J{r%o._I[#IC mE^"P?C=Oçy>hJ\P!ohJ#ʅp}qJ2YGe ep]gṮ7D7"=:k4Ɏ&īN:aڽGB)3I`i |֨,iorjd98+&on`]5W.)5GЂ4hEɐ<,2|ȊmnE% FoUƞKCMb˲9R6ń>"(w:)T#B(aJ0mqzj:mq.z̄sui}B *u weG? W3\҇!JoW/)OLIjubzι "fdɠxfẩ!0ѥ{W" ;z;A}[Ʊ~;:*J]ࡊoKzuw:2[<#\njpyqzuu"q.^љ9sɱ׋)icY]H'l3A3 rxKU.`ea^j n| d(6qߟݵGzpGoPILX;8I^P\HVW@ BiT1h{F M^}Yuέw6tLƤJ`[Р'}p='U3˹H RWͰ ;Y}Ik ̐>֩mciQϘ#rzGZBDݚ[YUX7`A;JOLSz7;r2\Vڤw-1KSb\aJ[MPѡ@Yjό$jIޡAo\'.Ty ',QBWo>Ή+,~apYϏ y-H.jۿ|qE? A}^wq*_Gi4 8sMYWuLj9A@%Fɇ&)HL>p]8',W2 ᪡PkA?ze}H/IJX5-D6E"B.׫sLh4,$yC/^Q@OStrp.F7[rVeC{1nYl\}_wzq7nt)9B\{/2ORdU )ִ*P |GTWUVO<):EaCSsEEOS5sDVNNl/]ZjZM`?fAV12t-K[͓^&`i)͂&c#pіNJ8yS2vd~+" ESZaK ZI(%HgB40> MrdS՘VJ(=jXQvCA) /eSz) (V#];day ϱTCZ[Py8 K<%%"fضDNge#O5y8k.^;12 2Dp/zL]g}E k2Eɲ1X톾yD=)y1eT54%vftIWԴ]pnb*]!8uC>ŕzDtW8oxy:X`CHIL'ł`O= Hդvks$~m=/0huf_ԱË/j/%)gH)xᄁdY*Z].R5>i̙T܂d*[M)-ۮ">Hy\27;.R ϔ--ި54 u>_ +';)Ab[i~w3d&Gp$+xesހ{(!qҴDZI;,Y(X=V3 =Hߚd?ZׅESYB9Tc]qVce^$*ނjEw-O!LhwYw-Cx0JTN܁Es$HfP #yB,w!=C*zTcr8o^>dsoφVeq7$ * .U-Esͩ?a D:cd< UVivڿ_oCLմNb[:٪$- l~7qq0J"pP j1csq2>Djv-E,Ԣ-`q}m $?zԑbsN7F8$>èTK26c 1UISHVwtr/6;R'p59JtcX`(M/++ԉ>Gъe2VFPdb=>ۼ^LJ XZ~aqφ0H`U&ۿpbbZLT4||Ҹ *QanO>`a{gi]/f@%}bVfu/PhGA9 V# D7:ʂQ%<ٍ-fDW+ ]8pV9.FA=68^M`νWg!2d/v @BƬ㹐:o;F5LV!1nGRA+j`46ziY߁ȗ.Nʠ:u?{^Sz_EکP0s_:8~ǨavzAD?QY H+.u26J ѝ)^t ۖnYMS89i3A;&s>s:kcqPk-p#hpJ}ll,>ix@̮oVgyQ6 epy(# ['К6-iO6R 4##3e#LuFC󄠏|rW n {@yĴΔ$.D0vv#9P4v/jNUB$~s^Qs`TP¸1S\3cl"w(s3>.Ϡ3 ڛL "3y2{jG1ͯड़B Q$ Y@dk)(]1HM +BmlpI'0x5Rj/Zߔ}5/Bϡ=2rDTCP 'OA4Z/Y+D^6sݡ }:._ՔLC.j~qc7EAV ?-Z4I/Ew%aubHɐE+ᶔ)!pUdl&&k:2NIwf/w__+J(H9gTXjgK൉n+Pv^RW#CO>9FHitBT<1MJxt`!7g.7 ,ܦɩg9"!^^q!@W^s^:8tb!v堲mƖ3w.ףS>B ?*$E!@bgeb&WH;+|8 @KJO(*9CuGf.q&1m3!wv5oqҲ8԰3Y'*ௐr [C`"wJ&45!*qU啢+Arԗ4|;u@u]wWS2n}<%^1I%J>W"` A(?} z?,Dy fS]˷X7SUCn.&dYTy0vQB`Nv_4s˕cYc#݇zN_Rf.ȶ>MEQ(&EK+-_~(kNugNYd+|ot+6 )ٟ?v9I߇w]_&-njn\/mvM[ۃlv!KIgQ Ahz|DH HgiTC4}I:].pQl,\uTqq&QMDŘiα2#*ȃm"cCCWWha 2j5l%6Sy!!| =8!-DK'G)h5$%IHmqo-a7Sxw PWun 5g͛[d,ib!?Q ʈLvh,=zsSe?Z0$}aBGS7X@qץFOge2N`Ofє &ƔjrJYyY ڻ6x[1bPH,R:P@6W)3xO[+(3OQ){TFJmˈ=kYihzΣ(]0׉#@72<?Tqq>fF;LAXg|[QT DȎ<16GcE" ql\ieR-[(AMfDU\hERFh&`F*BZc=$O?L?KlLCM`6n|6K&/b)7C 7һ44'e.Ӳ H(*fZnCVr5l7OqlERꗈnhբbP.|!2s4ix#ATM# 2'*470o t7k%[uwJ9EroǜkTf|l͌MVLo;I{j1l'׼ u^Fn`V̜}ι}tn%b c^Fc!#͖XQC.Q&OlsNpǹV!5ggԫp{m!*.We_'CY!wN/./1I'}9j9 vԠ:!_;hfJPJըYB:ڬ?ࡖ\^::(]([G u{ӽ5nRﺊ'UwtBEl̘ăo݂p .ʇ‘|+ `PȻN$>U:'G{ Z ҉Cy%FDuӃZ/X' |?gDmҌ,>)aFP]~ì֌͆V&Ē3iO iBWc*XHX+SvӃi~Ow~W\gW[b \VcM歑Y#IXFDHXЉCH;`Xޙ?3z͹  4$DLQ}ǻ+WjfզUSM8i;̻$8G_+D -ujdߧQɝ Sqc(U1pwB;SG 7rZ_5 bT$ϒKG엚&5>A[ ݝ!࿿ח3 cvs}j VoΟ3Y[UEV1W e=QH)#x'3(%RҭA<.䄘;,D\?18mCBXQǾ9 ZT[abhK=m8Z\a,5u݁ΗM&sC8̷W.,|JjoS]K : EVH*~uXӂ z;Ƚ.zg5-P Ɩs|A@Uboxkv[$xad4گ0狠W·G4x:.-51&JXzB!aGgBҝv~pSh!lu^Ngd:-BQIiRE"%5?\ߝT/>`V? Gߚk']VϥKV\k?S$%.WĤ[~,a`uoCRѶm8LHٴ Ư;ʚriɢIdYfC{#gF:46Mbv =6/] @<{~,,W0CiC\xbp+C 6~0JX~&}bd9 jMvUC@ÈWL/~ 2>;E^^KFzO@pM[o+Pv{"(T$Hm*&_3֖5JhO#;@,_-TDPw⚝?`ܗT_ (g[rJҷRVDBwhzO*vto26VE]iU>dJpPvVrv.^mH"rGA)GYzh{p٢IA:u6\ZB7QJyТgJ@Hr-P8ZCKHt*T+G`Q2'LFPr-q.C i5Ɠ v(7T|-&<ƟH WO~W gp ˑhU[c+ٗ <0sg:8  2 $kJx"?sql|*f.7 #c40vV%w$[%՝)s< QBziSGy/ G)UtR@GҘC/0)\5[]Qԗ'Q\L 0l̙{ ͏@\H50ؑ%/g ToISs4 E`.q>Mbپu(\Jl{N-%x&Ez2sxDI ^.bA|ҝޛ̅ǰ\UBQa8gucޅGeEc EBjRb8ˋ%5MҨO?WW\ʦ4e KT 31h/4TIaq&ywnX`p 6beP᠘2hJbo@G *cq".) gVWiLJ(#~pDw߻)% MώK,3  w >Bwtt0$quirB:)kzF)a HXi>MuZ;@RsLILm9͹Wc_ib]yF7)5 [hc\bzFF$2WLON@Tb[g[ޥAðe0 Tb2`Yg79ٻF-4x$ƧskyRUB!p fM 1#m_1׫Bwx|L:w0qA i{TY!D,vэ4ҋ5Vz?3?wp9uWsx;Q"~]P:M>.ϯ `X+;Gc+! h*?t,TBH/i9(w5, MC~oxz|+ 2 23d,Xv! 7Txc/tw9M ĈƈzOڝ*1tv4crgG`x6!bLߘpky/8mQ6gmS 3,WZ`aHx 8*K IJHkcGӓ>SCbQ!m+Y{E>#"tlxwthӭ88tiCS^]?D@o=f$9H5pkSD%j,ݼa/En֏W۰XUu(sm.L#~fHrnf ϑVQ=Cr+[]P9ifW/$םޠ}8V5C 8_Z.٭5 X G#4OL&/PtPAF7ˡHc- .>5Aݥ9X@2,}E#"5Em"5|Y C-\MMwS<'46ǃYxaePvT> 8QVFV/7Η҇#g9|bYr5 ՠdO꒾8݌4SUG ]mŋz_)r؅M2fs82F[[ٔ:vGb쉭vp1%Ò;~)`,TAӍ$gP(e Sp=A:^/ۣ$q:󆇢VN1TD0-μ:@^@Rg6fW9Pb>jeVmN"m[ ߷L޴AN\B.Sz"jң4T<Ѷ?iWN*(9H?SIQpDޘj6ȝȡYщ^Ml aml#eXķN1{:rȳ RrK{60` kA<~ iޚxkFy:,v86n2,8 b(aWVٕ*1R(A/]}ۙ#K%Nqh eݶop>#L$۴2K7mdJ 4ks)fP7NQY Txnk ly"B{R&҈}.=up rV̲!m̻XTK\ctb{V:CϹ?d *PHbɸi}bY\om-ƾC/1x|sѼ,dsCG+by7B":0Ȁ!z E)| Vc4e  {m r.:3jg'ۚJ|ME.{\C@op( }3Kޱ>Od?qe#Y$^Tqsk } )(㛮@}?p"aZwWg?#ִMPuO T2hxXM}rbUiíX\m3.ij'~uJDYuܷ m\h4}͗sSQ|FT9wcZb0oO#|$?ъ(38MnO\J] bਮnl[Y7gFIBz #9UuCXV:|¿liP{{30Ԍ~?fyK;X^D€ ju3"zw8ՉCFA&z_:׳Y e7vOL!ɕaJ/egS 7Nۘ=TNK?HLaҙ55vy㾺kא>(P;0m<0N ͠*e[]' ]rܔONU`ֈQR0nkeZn[䨘&uޗ?5aB/.EP﷿[2$-Vt`ǟ O|.5voȉ͖c˳l8|wC|R^%=~@]t,A-f#b=ԓ[bϛG%HnM΢:5L]s)?Z; Cw07a$V!@ j_/e8}4r7:qU,vh=p`y4/JMTQnyX<,*jbx6`yiW+gAolLts%gt#5\! prhD}.˫R jC|lWgNM'^JWH-!0,`#"6(*3c'wrud 8wODnݦYx{nͦ[rU[y8^[nsz/+&kUDS%)oq=t3#}F#/R@)5M)*tsutnz X{̛}Ęmn(6i_>S?]Cm3cvyyD{dM6^P_-'H* .[I<Ǫձy "ѻL1avҺ0=j9S y0f.8H]am?sFO|0DNTs=)zûy/J!?}% >(>YlUÔ֫NʀnĄ] A y<]OmD%'{TnI+hvIY^ b0=jTz!_ww$[ю.?Ϲf%N 2H ^{_kȇ@-gQRXBMgE4/N~hWŲEXuMׄl%8AFď~&cBaC%7c /C[_,bBP;SJj M͍01lv@dr=A(sUkRgfPD$=& j;$A?OdY)ezsSlm<G^GF,މV LsƱ4+ZPhfu]Ǡ,+Ff~)+l`|{2Uj}(XەNjU fC6fFd_p⬽'1+r[{cr;ou|V@׺[EVMj?}!͕ yyZy¤.o;G+:Sxݮf\:"{`+^7Kd<Xq8a챰dR8[1pcpQ'Db>]eHD+HO4`3 ^U~7jV Fgc3͵2ꋂ̀SC {ɄF^dz}ڟ΃yYgŷŵ+ iht`5vʻ" kdo "L_k"rmcsZ>[AzEwɮ4#c5(X5}H0kw+*#w9и+_'Op$|*De ٳ,e, a;#)u0oe @O`ƥoD6Hbbk8۴R}oBH4!&fQV;A6H22.i\I2GʓVsQ.~6PLꇴ7xMdu:fjW‘]|tBnRk>/9O1> fNI'j FNNY{ G{ÇI^k{7݇I:)yNj @E4U(=2'tHԏ.4cdL"r7!5ΦX"A#Rw¡9K6G}Ŷd}ûw"dpSC,vPܹVK!4W%J< HVx;;7Jb~f_% AlEDa#TH'ҵ}>fG[AJۂ^_nQ ['e3Kwe EvO38,8*$]@EI͍1Qe9 uQ'WO@8a1+2CIWEko^6Cy4I{Ξ;bej S˩!skecx{_-~tW6g|TI$_?2H|>x_'@=c cQGnH4iVLX=E8޳o^.6.l!v&t}/Y.S*\%A^  89 Ih7)ѢG3.'Cw3+5|y_D4Lm]}$O--61Ka>=xT෫~- o]paV' HO=NgZAS26S.CKݣ2ũln4q;^xQAeϱdx?b'2P(7 L [ lusظdÏLfNn03y($*ţ.K[G}p)O~ul-+ *%~^6M­=W^R訋h@ דQ~:#y#~S_7D7S~J3طd5sq,c`h3FɌ~=2tjv]捳MY)2[n4%wo!CyrÑAY#$ѳKgz=&fMv8Jz;5eE}gR 3Ku<\Ż.޳tG\67FI S e<'Iݮ 0kթ_ސaO{3x諝uAba":J̟9glM5 GˍUUyIlSK%KkԵ$ݓα$=g]&(0=B ~9攈[d HvI|[+΅qx蜉$f]ei f/B=18RJ|iGY fb mcp]n[BIe|{@KA\A$8xB>t=[U"Q=.&:mari@u; cvS3Q-6=bx^D ^E/yHcy VO3q(iXWYГhr! Λe ա$sI$s.Of~„H؞ÿ,YڍiʯgZEu1bRy6sǝ#v{J굦^H!onjS_u*GՈ-ںXM!0e%0 XS8 ]R7+x<]naKMblMc[E<9gX~kh}f;)Izퟻ(csoPXH}r:R Cս)$#9 !:!oYfOmSmfpEpF#ŻyG=]O|[vg줋 o(ga~XDF;\ OC_4<ф7>'%+q ǚ^*nv@ӺiJAI_/`Ǽl3ae# 8cFӐ7;X0Mqw^Q KG^_z!CU Kb&O@T!Hz;.Lh" m<);Iέ~!L~6lʭg`fQ{9Jy}r: j0+@\ ۼΊϟES$f+6 rͯ4m+RcK×$∹qU?ʛ_%yLW{Ge\ |4ZJ#\P|VPB z%鎵HPXQ>ђzFC`w~wn bځ2$WB7A:[ L;D-uc$&в@yl Zޝ;4`B sy^L!M.9ۭʼ|W!`;Ȟ5uነ<Ԯ%>5b}?5;"4o-W^&O(7-AӖik94bw+~f5+{\;Y_i!(!jq-dS"D<]V,2MA$wy"z3Eqpe'YrR>sP~(e /b|c':Bi ::QVDraP)Ac4IE'oK@r4Uv{bjʏ B>f90R$POdtT6+[$ZL.ib:aI+)1 *Lx_'7EVH&:K Բ } vqaVp=}2eC0jI^9} .2QpuvPL|'"-q"A[BC6ENkc^  W¡w~M1fkHYHndv*{=X[%F$H1ȀW ^.^.¸RB^\SzꦦHSj͆u|pZ.SUC o#a5iR筢Ǡ(d"rZc^ yF4y8igV(}~߿J6q%#W!r$ecUPߒ?f^#5,"+5>)j~޾!<jܩ]Yd)bԓ;z-~mlyJOSlLbpFx*l|fL!*/U#ͤ,fSF2]f"%zkrPX>*\'cA`##GH9+cPtYa+>HD#M- z3W20BkqɇkW`OxĂX1H`V=o8BU P% [ȷ')4g6kH|,Z}\ec8KvzS  ÿ9U#f,KShVc8;`=s(xJmI6+|j9^4>bԏ߅k|Hzb]33Mf ഩyiZldym>!-f}?>oěc:⭍0ĆrCY=b.gANC4AΡ:yAAL~+?Q_w ȷ:V7߳ g{iOt? ^i#pG.p3diwDo|B^`lx[ @3^t\ț|hb?r@ua˅l$L~ ʬ.^!MT#]JA|Ӏ*]k%d7y)=!§) zg:擉b+;";DOB9\lRt4'b_5M5ua]Ϛey3ˬW'$<E,38$$5vKWlg}>Y Z)yHM:?_! [nA;G_(Wܛ,QGii=`}yċGn"xf^J^9]znF(OArXub"v?oA>RJoZq0z? (g*7JU :iA644nL|8;r"Gx9^"uE,KLtL} de~:Vl'T8{}w0`g}1gqbSCMc@h+Z-o'eD*5Oݟ{mpIds ….kJiKnuʦ].U:@0 1Gׄ75u61>^oss ._fob%% kuzm|jbGX"ZзԐL"*_хå?c/ae''cr5v iӛ06ԏ; Q. 3A,;ڎ,8OO39څq-A>֙1\}!ZVDicDbU5搬 ydc<̥9!$}hRu ȼh샩73c-V#'Dt5OKg|SK2봈3u6RɊT;Ԝ6[unWWo]PlcQR- .Ua0x& gz˕߳A-f'y3&+YL hUTaC 2 pE2kZhޢfMlW1cP?oם rWX@!;LNewo !=3KYNJCa_6u[ٔV2s:VF`=P8iK٪5wsi0 rN"}էf+v.0<\lQ{rlkc0[.x2v^=2n"D>nOr+D!EYV[6BG0 hᘲ[ 5{+oaT'ZQ'sFV?RKbX?m:hƴ޸=~YcF9>lӾ& =yf?J&UػiyibU3)\2F;g+6rJC .hmnHbW'M}zVms' U#ع:oUAf-/7 86a Ƹ l rFo/J0Q ɏX)oFz#9SfdSX :ݕ;J~&ST`6?9&Î>Qw'eG!0m'TkeNOkтg#z0k0X5# D;'y&^x1ý!z>ϒoyw V((ZKA;]3k]+Ǐ*zR;(Tوxނɽk+\!ȌF<g'J,NA?γ* jdYS)~(@,s.8P-3S1zG3u\򳽂,P {i&13]-qA{Zů).9I/񫅒d J/SPt.2^I e8do#! 'Rόi_ѧ& jM"A7ks)-9Y2w}o}7 jD OӜdEI+NiYGƙ-rډ`E8XәdYbѸW/Yn<2))=|['w1-Gwu >xîsBz^.WI aaRB]l%౔wtCUFŲ K":PCMT;qk! e!v |2zvfgnQK4S̳<Z(, \57N+^܌za.z;QKD`7[gқ;^Y!Ů4!ާ`s}b&LEMCY4R1,S2 ?;9lTϮ6H֦ry[ڮ l5<"(8Hd-|5?X/SF-FV?"yY]&;>=<9yÄvB\j#sC#20f'>Y/sV6jFY1kZ~KMdFT  \ղB(D!ޜTm=_J-m+:H",s.'g;ŦFl64)D`u|@c7gkp"hښhYnMr!9 8|4  y{<Ȯq#gWz8|7z ~_w>#G>GD$ؗ`kmGhL']lkm4 ^.Fq~iqiwEJ, d\R8¨Vǽ@v^4@bb}Jx[5ors!?fr)}˞ =\bp!& Ze`o)偧qoW_?ȦGdxc8iIE% Pcp &Efp(&,DU"53 B#W}&k;1Ӎg^/c]3M)=b$t29FpCb.yD=DvcY2`'{eO)84 "tcL](t עTm0dH\ۇu&ƥvO{1@QvU{y? \Mp8ua=ǹK-2_ǀKuSCguxHŴ Jwx/cBB5O0ClwÕq&X,L ]jN;/&\ n,7gO?>$pM'̂)ӥySTYF>1-LLp/Y|#5zP:>j)X4pK9d)򑞷L1߻L9['@;PqBʦ3 gQ샖Tg4AI1wZMR?xSaptG~:OQ,L6a Q3IL*I˲rO"Ai/y(цV=cTҁO]-k%,XaêBlY<@7=ME`:dsh#gfl/7X~%#pP\(r:<](&*͉]ڀ;a[A1l蟽cZ|8Vk+vM7IpZq4`|w A@I78\>prr0*A)|ckCӯ8neߧyDqzš0s{4{P~l0{jEٷ,H){xq{Z>mᆖ ?d\[$Y!QXdLȦ9*ggu/WV8(΋Ur*&Ԡv6ޯD" `zD]Hh ?MHgPH o/%iwޫW80w6TI[bQGJ}MFεz߶++ǼeSu[CT)gsF+;Z;jEv:؛@1L `k'R|)X^Py:jWθL@ T fMVPx&d]xhTQd*20p\'R"4V-]+45(تszs<' 9(0Ӟ~ʘ:$>UE؛HK4SPeؔC8|Y~bӮ2r.bzCPJбЯC-CѮ)Ѳwu≟w_grO"i 1 ҕGuضRͣvu!5fc5xsRLp 5^e?N#`@[jdXgJ D"!>"JF^L<~1IX~QJc<:3'P˰;1BB3R=z(r5w53) nCeR5?zHHƎti~:?^-y%WzfnЃuw-pAhu!N5U#ygNu Fx@jĩJHZwgCEaA&KX?֎ e}bXh%&I~-U@Vֵ~W=C@=>(Ⱦ:;*4>ge"|W#_tv:lۤ=7MuL֛ӳn%m:Ypgq^˫9r 3)ȇoS|zssZ(-Ew%1o6N!JH*JLщt6l`Lc> X:93 Gr-(ENʻ ۲+BZ9!`{~^m uaV*pU;w?;]t]mz)5x7Ys=K7UbLZ_UiXf3'%_L72ې) aٞ.+U{UED8%XV!oa}Pr{ "ZVR@OPY[Ç#}䶳J1R h=c;a)g脀N+ -0DM HKw^(UA%? 9~,qM8PQF# nu]#iѸ۬pU:ĄzgW8j2}_ttfk^dש pyWO։GAw5_upwFoH^q¬`JME }-Q A<8 $笊;Q:  ]1ݶuT38( (!!<5)K ~ųVp{!cW3Ȯj[( 5^.&5^̓ɷfK;ħDi)GnRFq}&@D/f<;@Q|apVmMBsj|bZ'8fwBc &2l%#<0W~.S/~ڂf!՘YJW8߅؏9 ~cA-3*Xk@,=j@Vr3朝&͔He&1:nTI2bn/iu*㾿~hF{S&xRl~aEw}Yh ^uJTK7{O`4ZY:$@{bKIM*D@Q xtkSH'JCGay!SXg8c0=Dyy ^Ž)RoE`N'.1fC<O{^x{3yKCOt6U4`9]!^ C= ZJ"+UO\cZ*B~%Wd Jwsˡ^&F٨U?Y~&zIx tu55% )洓(8h\kΖ4o%prׇBABʁq XncҀ2PA9s->R6]W*).ZZdh:$Ay qCM(4%h!~A<-(|h_y 9Ji 3& Ix٣U2i>ePS ON$:u!q#+f[;ڗU{wm{w }cĕ3@r! ߿sq# *HU;[e~v34e ;X!pfِý+Fr‡;(a_UW}? w, d(NI ~x>_,ӀrM04WvWHƝ5 \/>-]ze`NP+~<xspykGh1UI{&.'˺D`E^n0[-@qN~#iiNIqJk+2` t¶]vKݏ._|`{^(ǜWK:x[1jW;U]Xms(SlRy o⏿nPNozĸMntTZ&!7_"Bj.]g6@8#ukBoO-OLi|HO _DvO|};VU.(.]UL}z馏ޝqE!i?߬{%jvESgPW^q[䡟R͐+ 5]=;Z0٬3v]ZֲŒSmMo.@ó"@>tsC,\­x.w0"7H(PDzFf@i mrXRb s \І&deSZI M:T X` pcdͲYtL!^WWx!522#e*V4Li yAPPі*<}L?@,X%ĩw o_մf\IDȽ`"k ̉u y~J|㽎!r >$#5t~K:nP[d̗9fUВlS&C#T:F,G.^Iv8gz-ve[`p!A~0́Z)lqTR OnjC}Lx yU<|"ʞt :r&s74_ 2 Ex=DIߋ;]FWLP( /Jzcx_9Q)s9:?LwCq2@Hv%N5n/1a/L9.<4>/f֙ @z>HLԊZ~3ɟ[$,lío̵z~s?d I2= P!;bD%sJܱl# "S~KaDȱ,Yx4z7U+ɿϲDv!'{^B{D`ᣍUۗ2^0~=Gv@q-y O/H(諸q[qgUjO)dzI3–.ʘ SEi"/B>N|L|۩?; 2v`|g%HMx%CAo}_FJPp;@ ]=A]PYi.&JlݨˮBч-g~BLkᘚE`&7>anUƅj$u-l i,S|8]_J_}$_ iVyG7ж^)eFTl=kUM- 2((܅2y ^-;t3ƑX"],yPixEMFvj/aKq1xBnUx, RX)lnd"o"Ӛy>N''\Oqb1xmw!^t=|K͡ygQ{Dئ@ƚ] 8 opixI=gg3 K{V 8 0[W/ԸMPL}D%DmؕG +\%3bXf4PAAʗƤV26Ãm/jn𭈴/9aE,c5a2{U%{C 9+D-[n(% jFVb)'6*1xkm,8O Xh=(*>iBN[kϳkkEq.Yf+Klx#9 5{c Yr@7X4i. 06H7ú#}XP[_pLȘ$M?'K \x[SqqIcO+P֍E轱Jl+|k 6/,M 'grK|i6(ԧh.Ik޵mx%9f/_HίY`I( T¥oUi0ncXa>7"(Y *4Xb(DG$ <# r"Kɸ{It!8^Qd<uPL}$j9sM|X^բ= 1 {1ZzE;z B(Q[rGm筿i ;^G%Q\O^CRP8Mw_T_ߌL:~ 4 a= #TͺYnr=8uɚcyO⍂ा[1[ʮW`lDNBи,rVc­XwTEAWꎧDzz%V]F _U]<? F{Ym$_$a {}G ĖDF~ޚip % |(< 7,n{YRե}%ɂѶ5IfІ(rC:3e`- HZTiD:lǦOƂ]Ɉ V7zFٍ xsmN愱(1h*1C"OOEyPF~aVƕݦoYZ9ev!q$#+l*ܹQXB9FrZvϒ$7dJZ{ Kſ_o7+{t$/Y8|4+Ϝ2Q\qdar䊱X>(Lͪfýt^/xw-VTvЧF7RׂIJ朗Rì/>wc329Op% 3*GNԔ2@t\is2 qY@/lvt@ɱ? 1@L'#ƓujyI# lDەd{c S*d#OLNp/5C " c%Pk#VDLd'Hl0>.yIBf`$H)Pb9((ljl|$ sһXg>t*pegCx a&5yA9B.e HR[@h6cā- -d*,#.zZ̧C*f,6LK&>R,(5"$rp>lhy`Ƴ*lWlZqu桝Br &R.ktD[? OH'B;]m,uNmÑE x7Wfz\FjJWpZ5~ڧ:LuYu4I4秫ZD<䟫qCU[$o!"O^':k*e[VMbgYq<:ּb2kbI*q;q;:_Y?_uEFju""} e޲X2H ,^p:Nݭb]"bGeg] !tLH8*EhTڢZLJ1?C" bްhxpoyܾf4VVs[{q Y$_86Kb?G!X%ABFJV)Ԟ\;dJZ@1 QX=}R6!څL-^vz6 If HfY#lBZ=ܬU'ⵦR5ݳ-0Fdw4_v^da(<#B?2a畑"rM4EAb0b&ͬy:* %f0e-_ɪH-a/B&3GⴄUABx􆉂XBۮ7yqšǓU ݿoD0ERs@HyҧK]Y<;CF:t ( |rS)^yv/fĞRCs}^eUuēo+%n:eGwҌÍJ Q"I93 >%$1-Ԋ+j,6FK:-] aU:a44ON'iػT"#F[j #es{#Hڿ).gYbqAp4w5›zZ$ucOTywc@KWz|};߶0\Ї?S(QR\ C_wD&37PgB͎]YyÛdi)?AX6uM4kݵبNYRHM2 ѐ\viY.-( :!B|DD"$V03'6z}f+u(UVo(8-uI4kJ.4_{wشYL>gR\+ p>v_Wl x 풓7yA.6nƹ VeO[ah3 0iU?lJ"{{ZHmX1g>+OHYӕp\F.c&cq3=zƹS19@j̢>`eL[v_:Πtw@8|\igˏ nFIT<#,ލ F-"rBui+|% [:A| !o4  Q{ ͧ+2n6Mr7]QplmUBkwďlۈD>JY* u3gEXR}n9X?[O@r.O;#YцZ v!d `[ß: BJ {y1?d[9P_Q/ -+bvP[.w?C>?c/^ ]L2"UJ䨲3T1;?;[ I[l| #:bbY+מp5tž5{V7hwA&  7&y:$aEyCcclVoыkp II`ആMJ<;i479%:63?Xr߃M =/!Z/`@Pn伔]WL-aSh S?W;K$+'Ul w668WP?hRI\mDHoA&{q0pgTٱ()yêFf`Bʱ_Nkkg|v>%+Re<G^r7nWrObVP!|/ϸYƶ]gml.5û U܄ 3 N+a J͟CP/_idZz\{A;u9w ;kM}@j"f$3O{VHhL9d( Iy݋n:nnn? b'5ls 9`&ۖ @d Gp^Ǔ=e HȁaoR:Fdql͋Q*LC+l^>,VLQ ":H-O!{2FR ]jA gR2ȂNOd]B&J Ζh5` "7JUaS9%0fʟ)|b0e³nͮ Z.W` h'bE*ߍQf(c>K `afuJT\<n G*Sq x,oϠa0!ByZz/* X j|@JzmCT0*wssv&$8F?Y%/c1N:`qp} `qn) E;eA9gxO63Ԩ95'0{#VyG&^R@(blV]|_ nƼ9n%XGG\,w}hFq4UQWO 664a=}̒VG i,L~ x|^VԯhW lY{n'p#NS_>-2PQdd'+Lӟ ![Џoz kz4F,=U$x( HS"EUɸF-ԓ>uP`3؂ ERwZ7#7nLvoda~׹ @Sǖ7}PUFCZ;pDՁ>_ #+hQg*/p ff]^r2؇Bt%:/q n( h3f5*uA2Up=1ڳ$b+E$=<6Y9s|\ty~2 B0k㕛h'>l n/Ϥ{%|'p+|%߳ nAP8j"۷Yf sĻSh^t 1y} w&coTB `l(a> 7> 6KZ/ B7m, Q-)K,Yj 2=h ,lq| ؓ+Ob0d7h~6[g}ѴyFDjVT'tB\16TQf'Nܖ44˱"?i^JɤcE 4%ej٩gVqN+=N꛶} 2s_V Do4d>O!/@Nn@QZ3`0 +g1'~潀>?:x҂h#bC:YtkFA]77&%dtg9!`5hҗeR̉BqprvhAs|o&-n. K*yE4dB_H))dy(NUGe [YʔS Zͅ:VL;9½áT $A!7ql0áPS]U nDy| µaLhe.w#u;_I\Vt" lx$%DmoKꕃ$h}:(ңX %hSgm}$^{4'XCJ> T'Ĝ}>3RN ˪djf# kج]T^WԾf Œ#duU.IпwU}MmڴAEw-6=1kb9 J :u(bV`gɹ\8TS T}ѸiF+s{xMVz|v75GۡX+OZ`TPD v/ \Z';@sˍ[o0>*fn J>Cܴ)ƈ\󚔧4z8SvOCWW3Y7 .%ҝ^4]cMa4*?Bn:R(\WtmxL-sf̃_'k |w; e;'X*<Lk19$G٬dH-I0?BO9@`BX%|wD䃁*y+ed +|l*|>=5Hp;sqRkl ?k7jq_)e$&cabdP ˽KÀ}eXTt)`:[&f;)v) $}M#`/)*]9XL\b͓rGfްvIǛnv~4d;xB3a^%FWq} LZ ,wf߽V eٻ ;n軈4~e&#ec.}׬8gGxdǰߙ͘dI:F ?NpA iukÞ!#n8"UY}rJtN٢UpOmn-Rsymma}[Ek>ܚh4OUH +UA`PM!+w{CK͹#ۊ]FѢ¯WAJO齳 b#,S;SG( K|Gۺ E1X1,+A y/+n0{BUW޻AV hfAE!8o*`"y6tucoT=Pˉ]۬A#mf씐/v J+5W O_w='n=qc5jз>~ݠ]֤Gr\Y叛 v%GqR.EHI|?;)E/' 26O깖1f{V`蛼p\ճ?2iZOb% h^e]/$ My 饔0$]l0g]'r ,NMPhw &D'' J2qFh'eI S_[=q3lЕ8wod;HQt~mq۸X#!%hk(} q*3qrSj\ .MPAfhp s+~v~j#739zAv&-)}Ƚ<75lg9 $ i2Ƥ:a(3RKRsSl6x ƾ\L4S\.UC:8[IGZR[&<&mK')l gI9eIRz;cEஇ<Ϯ:>5뎫X{3!$ o%.36ؘhHXx^Pꬿs=VAL ߽4Фݗ,5'dn}k 0ʾ4.. ԓm-h[ehD kj<>{s3ta$r Z$&bQ^DLpҨ-`J 6',SOW2с-+}wLyu>^&vhᡕՠ6ho8%XxgIRޡ]M"ճ,yhO' =JB1yCGV?bgVXzz)\֜W FlM\e"ZMM\/)~9qdL$>tFbb ˡ^6Wtb%soU`b qwv^#%!Klh\1e*e /1Ia4o/hw̞_KO (*kC#4\Cp51T,+Y7TˏNܪa xZOMHrЗ.~{ZSFKCr2="ʉV7[:o |UU`di3T>% &]Y(# Dn8gzg@ĪLWl>7brTҲ~<~v&_̦@6P\9XחsT' D-: i>F'ᷳ)6MupE~Z%$λ>sVf=FQKP6ӂO#tf'B/;Snzw$l݋- oT,HW_II V*^P9h-,[mXp GVH4"K5eBˆ}y84k C¡P/+ Xv)-WwgS*Yd8D.|]n/BYsxb4rkdf2X ^}hm+CT}>y;.߉l@ @Y/Auh(?TD؅U^,.X㿾Y|C隙qm̡ _Cݹ-C}.o=L ~UwҬӽdf:v40nSic>ʶ@npi;Yt! u2#<|E_M-j[$ +2ФhO*MW+r֏;DKK\aMG~ۀ_'B+{;hzlrM}L }+c odqLjsi䧢 ͨQk-]at9λ*K7'|H-$>߄Y6gy ֋,pF_!鳐[wAxIn,ZǑ1]hi(sH J~bK恔9.F̘.D:[ D.S ݣtoI>lm?v3^ZT8#~Ot$vp]Y-\zCd5@D`C _O NSrKMlqj.P?ϔ7ʼnOKL` xoo͘?f Z;.F]\r: ;8~I7jKz"m2=:f_#{mNϬX*`ekBd@s FVNzY8Qx~X^\4&qY=ds,ʢ_:t]՛k1d. <_r:HIPYZL[BZyQmI)k1PY+ƅٛ!Cqfzz>0'>C@-xuSj xtzCkFL,er-i3BO{U }zИdf3?W Y W]:n()@^(A>11rA;څLSP(8|'K/mOVt$f{m7|{gx7ճ]eH: !4%':*z|G{ %#& ՙr$ݗ(4?%a""gKSXIpN+ȔI[!wyJ'A/ML#zVH Vt%Okyp"Q^de1b[Et3=Qފ%rSDdM;MByPzW'ߺ{n`3n[OxFi;] m;i D϶3/Ev&N"m= yToQy&1d.>pK"qwϐQ;Y)v(*J؅oy" _FPuLm6)"ĖNR% *@:E9>@.|:Y݇ ƪ )Icʝ~z]' YHq9u>>?7<d /bkRɗq?NL~\ zcT?#{yaBPR WgpVl˳$jf C~{0MNSؚdьzݘ;J=qE(x6\'F_(znMí{`V;ItGd xۙk _%\DD{[s[c#w ac3W<ŇFJ5OHQ밚%bT&7T6&4!<ly>zܞ!14&+9A_ȹlv0{ԅ“YH"#hY}+t[Ɲj6ss-ޟх]<\b>]hiG"F~M!L³c;D4Or>&U>`jp2iO?;]p7I3>5 q>S~n .4^I`ȦI븲9Y=w/.^!]W$7bv79N 'l:ǒ`GDzro(rdnl_v`{vy<&gB8&b{p߶KePI}YZC0sM 魨\V#ŖBP dObkP~S8Se5*CTS'rq^j`_VN Uߟ=RHѻ,+]0 ]l fjx||U"=Cg]y\VL? +6 -D]bPD8gF7b֠`BP-t\yTӥմ+6FC+38 Fmvn-2_p۱<JZ`Uրi]Z#Hqz:Me-W)`گ%eV?0&S+'?VY7/ 7Vp=ڰ$Mm4Fۈr!` >S܁+ybO` $艔I{U:B3,.&.m.`-SweE<*;6Lc r?+@ 7bM܃H5Y5sT)OF\9qOw))aVpb]2/o1BP&){GVugpÔHRa" +AS8pufkJ%l?z]! qk:Mr2A{W5[τ"5{:7in<^EGA,l BXsç[ FCplz̰-4t3@;Ӽ/w粴w$L _d7htsq-3i0o^ˠkd6iƢ"q_/t(Kn8D{ǐ:XeiRy,FAh"{~Q.H$)rQȮ Hijݾ%Z%'2Զ'6Oܧ5D-+=:tj]gι$> ra*]G8A’x FbK+>MS^ϼ?a(@ne0-Q?w" w_#ȉ.:.+g\I@ֆcf }| Yeusӱ,TeŤt>]_}Mvgo$Dky'$FJPP}Rx j _IJJ%DG$mxXj+..VjPJ:4TR W-X0 ayѠ)p:.5CY,=[^U2cmo,J0ob Jvc~R@keGe Yv&9! 2Dߩe.=ӆP/Q́?6h_jR1%!0>K 6uu=)@ ΉO~"6Q \"6i1z(WY+2A~TEa[뀾';YL[{2yQYV{k-.̀똲#l_Xph>7r#C'ʻ! vO&Kcؖ~3^8n5Ia ~p_ͨxU7pszv%FRQ:q$qKJ/h} ]"sA{3)ʜ_z RjEU"$uט44L'"TfI1 VT~Խ tCçrtkHҡ)`Knw")IʚʂJ Z=3V]ߑNFph(6pcd-^TdܻDECj/0O|Qzh7D)FG%e۰j;L0r֠kͲkLˡڥpi( 2]~?sg8HM[:LX[ˋΟ PpY06l대cpA륰1B,$Őpު|.2o}z6IlU(&u{Nlq ,Wy㐢0 Ls *̡ےx?u#O\\I6N05%͇u3gT %9눫iCk 愓m#'qYF=XV`*̸Nie 7a闟L 2@BLWgGrωKp"Xa΄Л}C.p>YwW8o]󝗠BJ+X`I@7Sֆxy[{/{,9the6‰7jdF$뗯nc rxL}]&WGk}pm՜a S cT4,(J0U%Z{pr![]_;GoJcn[d^#UT/B6Ȅ0.w:Kɰ\W7K W|K^qD跻u r;=,Q eiRE7n=9K>h.2p_WG1A[T]v$)\eچ0%Q`gI9_g߬Po8k|cPdRcu+EW>x6feѷ_0Y@3n{|6J !4#j :R*; 3 M ⌈G $4P?ҵW_|E*J-7abj[SaPϋS> 6) ^t-#uWir(Wb k(s J77xcn|MHS|puh.QMKJֽr4 Yn V8OIwFUƴg~`+M8Qs  l'LjY9_W^P=(S/q2'iCM͎:(ZmEW, -Uh @n\/t\Rgе9]gKm2N5SԞ SH8$Z?8L$i01MJ)~>瞔cj"`B 4tpF?i$= 2D!yD)y_K8߮IgtKhy&os}X/CN.cn|aCKS0?]w(w"r Hk͗(pIg o'h 2QZUVFu( ބScj 6#{9a1x0_y[J~s@ӎї7iۜ^?g/[Ī~fb+F{)*P^Q}Em0 jmL}ӌ.i R3z=c7AP`ۇna^&z4B~Vaqq=td̈́wχ@Ye_QDBBw]¨_ȿ*W4&)%n} |AG6s$ROqIݷsۊ0?8U?v7GXvZJ!ĝ1yge~>-zO."_O` v{[8}ZG#p`O80_ e6WyxEKi.=0`hL%a!J@ը)xJ#-`\i&mE4cD/݁MTԩ&'u>`Ƶ׾$pΡuy7ۦ n %zlPJ "N Am#9 478unBu.I]SiX3 !_5eU0%W {AĻʼnJY.)mLDZ( 7:› zdl$LӛJjsT:IilWF-at,P{f)GQp8iր|ͪԷ)8?6MҮ H(Kр]ѕwQv6l !>NZ$pz(8Xg9}焔B. `ӣyMlVRϪI9݋z&Qy#;: o!0 vhL W̱,-f[ll.{&|nάƧ\'of5!͂>8Oi#Ȳ6у•)Wlce Ẕȥ>.յWQ 2śԵfu= ,)ڪ!s|iMн%./im^p>=Sv5emBrV%u;(S&쬽tB ̣IP6ZaIFZZQEtl^!Ml!ŽI c()gy+BR&raȎֽ1>|%ݍv@h,- 1>g=J{_|Pm ʹ#dAvdǭ`JB-}CL(‘"p<dWA.f2pJc@J=$隺Uv72s'Z}xe/acQE5&U#ٲͯĕpW&4ōd) 1q\bNơ)9sX4*#DLҝ]}UJ$If>IHz,YPʳhqϕ|jmQ!gX˩POĻ;/=v嬸_BԑW PN5rh_ʛۅ @]q;?󾉦t]3K^[QXG8H?|N`_KiUQ:z +Îð$-p>Ij^nSǐ;|70W$T-g2 [Md~5[5A+,eJCiǤ%Sn{l x8n.I"pzh aDɅz ĺ4OsOCs{BpMfm{98pp_:5sLr<}( Nn)}xPlӘAS4<+]1FG{ - knaxX{R`O]fE;,]%Ahb_GHP^ӫR| xN,aPG~?\5"2*,F,/P -oӎꡙTu-gFv´6krs;D6@PKAspq$K?˗AͺD띴 niGxyZUsy"w=SFі&ƛ7)1bAEJA8.w5|_Vcqx"Ŷ t8\˕IǶ5Pz$2:Ҝ,MU#بmcָ޻lvգ.%?CnYp3‘-D[>ܱ{tϞ.xr_a.ANǢ5{rZA)md=4KsbɆ#U%G*~ievL엱6ϮV#T3bO_xy~XQ\ۡ@OL]*?  3 4?@CL'EͧV-l؈Bp/#&ӅZhPT򃕛Ԯ^.#^@>qgW2 Y\IU>3X"2_P [._"<}l40܁G[8¿{ (UR㑉` 0M0_lVph<%IF)ߧh&$*-Ιg]g}f+?G(ɨ|CY̒Ju1OtC7=Q~ZJNjؖI[%[ [}tɒ+\f6EA!mdLԿc҃X΃30ï:(^/+|K&%v}$ d>t=cLbut5Eطŷ{dS<#W\S ~yH\m .QQJyU=lCjX_x+̊s_?An2Qt>蜨 J#ʀ#)3-I%FZ_V?]>1+95v>vn#!=^`JBf ;~|VPL o [m *3*^ "q`@H6ĈTMid.*Otu4MB<"-=8`8 I0w#3{h; &ӾvW:%SK%ggMBbPhZҢzyo;WpB%#0i GW?>9 w!WSף0oe'}y "b[e6%%$j?;0ȻTX$ as{⴪,$[#,%ȅc>gelQ癦 @yQ$hɩ87uJ} >EcxB`@#wM b] hBN͸yl{9[ݬl b-ƘK$i,q)`]YmHT+%0^eP+wȍ?\}d);/Ig pl<]iw }<ϸѣ12$=V}TPFIj>GشLa^2RxC ۅ@UƟkGO)~}T_ơUPmS>eaTGGmd\`G:O2w+{#%7`uAd m wLBC$9)}s *LPg=q%{"E܄>Ygs*ľ-֨=Կ+ s,TvExPQ*, C'#s\:|/`';m6xeu7t9 zDŽ]pO[IHj-WO {am N?㧝΄S[|$T^wOn=e=84f_fT#Ya=*hZFajs:RZA.P(yo[`KFdΧ>]$ HgT($F4uzM #!j~$WC>pӈy:ߨTA݋^ٝKlHvvo'gًpC !xUSkVQ&nZ 1y$QD(<`r(m j0Z:_#1 }MfF+Y3h~A #q,B9fۏF۽٤Ttai KK,/|G38ܴ1N ق|i9iK 3Јzl /q5f{ibqu9&ڬ8DiQdC$]Zv!WNÄI T'?1$=y:g^|R$&?W0h-ZGsJrtHRrmJ|s9^K(YQw^\rmYl|¡.8xc9ծp M4ſwTwj>ĥy`m௦wÐOs7e'C*#J_بEo&mN늷4ù;@pd;ʹF.bQW#<6,`Rk&'f)$6n%P)8ao _|xBz = ܰ>ri=ܡS1C#Į2Ŧmmt*2RWRd2yw!㬭g&_?ICy舡]+-ukQw'uL+M8= %IP^_&$;qftV^ybk-jw dV [(n[x0ry0H`+TC#-(q7|"yU6cR{X!ԯ:IB׸^j#0%6H+J9e5&'g2Yz}533q=fpY$| >#6(i?B6GcsNg-((j.VUGJBMq!mҦ2.#4$ʘD(BYR{xa&?NJMbA &)7˲]Q 0I6y%.lـmݩiC@}Ptqq>|y;inT/VT=7 =0g }Y{ܮ#_FgH9/fF*dk]lq;iI G bR[8vϋev|nBasvhp|5,c:i#C, B8_+TYz,MeuLJb]UV1@ͭ7+.L:Uz<odjz12>-Z%WɴV`#|W2R)[0*0T:?aKm5lTңޔZ[R*1ZD?{O4F@z! !tRhD(\_TÃG8}kezcP'`gI8FUQ=J&7m=؞*X&L!Xks.~A ɉG`u""Tlj9XNwҎj_BaD&D0XⲈ\aIwr̥*fcy guz#3oh1f#~p(qȉU>xed,zgt/ Qcn@I8+^QO>mÃ%]9Oy7At{l(jEElXĢ+ZgCX^t6d~!( _J*/A/qwd2$@0ؚRIlԪQfzKwu-9z^Jq1$Y0AfL\4Gյ{Mjĵj 9lܝ8KGH$WZ P@!&W"^0db6iH98"i59fVߡz<ө}x?e)5(@,h#'EZ1? zB+Ͷ͈ܲ@|pΒg\]9]6Mnahل(IЇb%}h}ޮݭh# ̼!`(F'-JRSXy45+TJ)s w54[-ɘ*uYB8p] %EXJndrbVL2CgzLm̭m;c85#Oqe77fK yޔ|UE]g9^R` )ࣉ\ ћݼ91$ IsxQs$* ޴"fhJ=̄ ƫsENūwuy֟A%9a,eb#Sr+Ut{1Ha9]r)Dg!3W(o *^/ gƥ l-uh+~?^M6;UHZEf0> v@3ץTTFl/yEٵg}|X{ȟޟV"躱%jQx?> vqY( JW?3 W +FD WhЁxr_f\G]OL.L Gx盎2s/m1D%g3Ev6hd&V!C`K{w(/'< ɝ%;},!Vt[F(N7~">hF}բJR?MtȰÚPkWB+qrn840i{3]uE^ڏ+bO3[$3nC@4^7ΈtoAX( b+el/yeݗr;5>c!vDž#^\8L BKҖc'R,A{2.u`lJ=*e1 _sZ xřZ4l?xM0`r*u 1B2Я(" kkε1l7\6dq7q-Ϋ>'%ěve[| DIšjHT6!6 >mQ6c8| >3M5fL10 wY*-4ROQ 9e[_wG{yلWqj.:Av\G$Af;[!A 8^F,{rL$=9c-c\*v&F\_ڻ. nX\mX"9IR(H ? xVLaHmIl"% ^g2Ei!m9 /m ks׶ R_xO"-şQL$[4~RʪPV߈sعq B:lUxíE-q(qq0s֡X*BR3"[>%3>,,7P@AZH;v"ªi޹iyn:xd= rAWv`0e5{cpe F)} _WwV]^il Hcv>$E7360snakٹrn ޶)S6_J6|hgwv_VD*h>(ljFn~0Z?kEA;Ec&L3.=Uw3k T?$mBg^C~/0*]wvʁTSw2Q"-e+9*#? ?2ZWS]>5WZ'4qM:f X/@3J}ՏkT-Wh_]Bo1׽6xW 5N_Mv>KcU#WHxE2r@zB|Q6.\dS#ҳ$2+цKb= =Ggw)2 %<PhY}y6}W f^e|5T]J|2b*`!!n=Ctj|#z"]SX_<*i6΁2A{rynJ/Vu~EE*+әF9[LE!,yd_$ѯc83P1"+,*&8٣X$Mע yxE}ens E"46G =]0hLm2B y1{<s=t)IL V6 bTis+}}bRЋ@}Q۪ƥ\9p՚k;wV4Ơw>jGR2e,*^萁R[D/FO=xE߷R#@F:c8Uc|Iנlδ w б5-PJ헤;!v caiA|3p->Qٛe !]auSkK1)zޓ TZUp8%תŸAO7pJ?@0[i4~ٺ75Hm@WL-NBOc:lЙfeE%@kXy,hE{"n%6΀ !lGBq/xvup@7.OUHCWS؂D`΂Q pp˟&1Qƾ`P*0< /ߨh|ÑYo| YNX{;|d~Xo@+0K5$3/ǰZͨd0u^%3Z XnU0YL_ 72 ?mRU7WhSғN]}5$]q.5xkB~h'ﻔ &E[;)%/{+€J^~bq?D1N7x7A%LZz2NfBMuqIj3'-ID}h9fN½%׃K4}1Gq6Nmwj՚(mfX"7ZINF,b Bk'KGk`,6D cdu\^%\:+~qqtCqv/#IN%8Hp@t#|NK: e YՂdmn)nV yơK-G`* LBFCZF n,U,&CHdECpfTBDq|@o&F,[c#4 d j2 /X*qnS7: J4f6EU\ SXTrt.rѺcd :.d?,Lk8J!J#fCg(\Gy։Wg}l] n6Nk[T ڥw S(y6(='ۥj׶8E_NslsSo%!n[8αm]"'$ey dUW4iH~9c _]X c/K{j'}1d?ժTr#xvz$T~i$<K@0])P{e a#1UEPTe-m04tu20lȲRiO/u8g4ITRۚyDTOoiW03=jULFtӝ ;f Կ1^J-&2&aH} $lV'x?mPF M?=ӣ)'oqC0T̵er$@wih 3֍Yic) NGƱXU?mbotFC,=4GW?32Q#Wa|7ߨ!пAg+r[˄RtQVž:xzDD\ EHfRs!Rmxo Y>o7Y}Y X~)hN3PůRf+Pmߘow5透5MnkqJ 6ܣ陲"5Cl8Fiхo ʩm3ЮgY)t2 D٘irbURШRu7b|fT zFtֹcGp+NNY ̬L ͖m T9%*: tNuS7uz^eJGoY̱7f".V>@[1˜L|y g!8]c]QV ZaRɁt1^!gfhK|>zd(AI`C%<^7|>{09sg߮9h*7 @ۮviAC%o IA.rb{㖩,2\Uһm0*Uٹ3w n*1ۈ~[-Ja,)pgMr|թI=d6s/A[K-DW#bw n֕K.'Ei-QYu}Nrm")ydZ=Ǔ8&jdtDIg 8.BnHWwa_ؚj=3$޵:5n |Y6#S@,p+µO@Dٵi30{ؠ5T+Õ8t"sX^t1&}_Iv[n4 i?L oceWQ]Ԓ MR9ŭ{:r8vx[ 6-鼇Т>vӴk| Tg!o3tN5qCf95ERbfo)A؞s脓T:IKq`n-`BWAt#Se=eN[k6G0x-;s7[v7ĝ䀰O D~;/Ѻn0b>Z~LT7`|]Ed+fw%,P]߉ChbFOrw{s8A?-yw!/O.SO"½)Ohqd-` +ܼut ~ HylzV: &nR4Z7/j 9cU8EsE)Gu!Oq8QGW#} ;6Tn#%/jvL&3;B%{x[RKbBhfRJry>PQKSR,X6; 3NcF`%Pv KmS(*O S<~]ת> 6&? sHn]E鿶g+@@5Cېc l")[yXV>Ŀ#qT@bpn?-̼"5m8J K ,@$1rA:5) ""[lC=(l=#O HP|Rxm jL^|/3@)wv.G$^N ._3's 1ҩ! .ǷyMMG< cJ336Osk>>x 1*Xh3R]SiV{vx Y/jY.dyZ7mww ^sZږXVV;ZiʨZxP(T39?`Q'j ē|zC i\pJ s;k i_ b7@* Ũ4Qi:yƭO FfC(kQ:iİ=ZF'ܮ6BÿX<& +psuq_*uT#[U]SMrb./H/qтgt36}6{@R-HV )"r"N/Dn#=vޭg sᎠ7ce5`J5巙8lj;p^|v2&L;t' 6hJ3I0QG]=% G`^lQ,`/,iR5+|DO!a"f/cnKBVt=/?+►N @~_i;|^ ~eS\ h h9Y7yg_!?SPdV؝Eۖz, yN& w^$pyGCh576Y+[L "=D qiTY?r[a6.8R$!X5̸L+ qWcOHI3fy\V|؎ًR)MNG[Ju>= qqAn֦Kr@Fq@ah*oOFq;?fƢ`EzCZ(W G~/Ѓ羍% N[ӄXg?y3dշ 5]kX>o9LΰY֨Z^j^@V }Pk﹘Ñ GilֹG뜕 z}_7!#~mkY  m^*cvQW!]Gܹub}&Yz7+,Z#g0R}ș`VSTbх/2+sV.-p%C,ޡqה$(ƶbI*vOx|ɅKCǠ&c`5#!/af*Bߪ ŏZe]Ǧ y{b>yĻo 6B@qYX)ҳu|㰈l)-r0Т%rOȒ ?qw-(K1pz_QF~$F)k<ãEˏNhл^)TSI!z@81\Lrfg:A JJ0v%u*+TRL*: a託l jmrĻ-PCxuN @790+NK?t3"q* Б C#w>T4c7y {fe0~[m{2*o7DrhEL 6ߙ=zrXIas\j#tQ .}QGE^z[WJ6 98r%;d~^of174ai"/zclI+$`vhU~\Yu:γ ;CdML'9.b9MV4" ɞԉO;j|E19Ap+\wާ[,=*c~0*=@,8`ܣU-Ȑ*~o ﴮ|"h7ǻ>X+ѯ[753z>GCiܬԗ.#}6F7CFrU>д}Hg2Hx*ߚDdU>Ϩ,lPBOs4v[Ň#PЀ$!$jkٕ8α}cnzw AXNZ K%v6zvRPi5=ykV;[C81t8~n!ɽ `^Vuϊ{W}^@铀Ƶ zldTyemqoߊdZOv ^n4r1Sİj;N237tZ-AEkv6QB FvtɚWTOe ~y48(]Ӛ0?+r hFX,Nx"-W8V#9LIHa4dewڸZ+ kKsdC}̣/50=h#֡GPXS F0cw__a0ڪiiCW2ܪ ^ NGYDJy;cj;{pǖM.H`m#T,[MfOS0+.p^鑳"1DXs9),:}4BB zwY򒝿`T<=$NޞC5\^5:U\}?چcD ̉:P \L\Q)~ˣK-@եDKe>J<&dq8 kC.mN A}"e TSrFSLOTaËs3#͎KKѻBqh; &DoLiTMզHiI16!yhLL* c=M~IdG㌕b*? #bh^JɻӶ$"N9O'huպk~,6m ?oUĈvz*o3$( y&%AV E R]XOvyb :2_ m'X?[׋ـA;>lL`O"N9K'+O r3(k5u=Ռ! { >FCqo',04IwS=8d˨wI]6YUےMRv'ARꊚ9cqAD:$aCxNE ;zk{fIeTl1{21P㻼Zwd6㛬Kq J=.؎CR:Pj_z9Rc¥ 0S>X E`vz=Oh!pMw<,[vLu^z;־6|9lzI Y"aV>Ɯiab78R/= ;liK.< ]:O?WدCDԽM}X͙U{@! N8 9NI n,M!` Ji;qcҶ_ , }ρV%ӦT/|'FJPox f󚚵™nx'"]T-V=~"gO~ֆEDӐEB}]* o G6: /dR~>**m&1\sfǩml5lECc4B[D^ FꀧC5 %_ Lu_a2ďЪsNʔkpB2tzG5{ L['pt^]`dMd_q,i />H4ep. v,RuO=V~A ^e2@DŽzFΜij(aHâ!A`zCrt#=~Wm>X6k '}f{=EIt`ywvuE6""OڼDJi ¥TA`$wA* A&kB?ffG$@-{-۹W%s)len7]`mfV( %x')ݠ?3"+M[|cxh+Qm 41wp*m=d &zĢRaY 6@a J=,5j$+% Ů|CjMi`M!"M|sħfш2;쬹O[}պldn>)tt'tl*4? S\9NT8 㱩d#21lJm. N Hצ&ҞgӐy$&9(∻!] 06,^r?Lt;s9[(-2xk1*5} Á&~Ǫ<`dNڶA3l}6lv6F1}%!mL$:)wԀf:<[)>ϡu>g2Aݖn0~ZF/z1¡\Hlw>ha{?kg&5АlѭeWwPdQUg;/ Jd|M .[gI :pdSr}̇~ Xa(Œ&x:̿'B԰+ZrWJCꪯ`gˤMd2#rֶ1ak  9\aPv/=#rf8%9j*<] <}fN$7jDؽ_n~译z c)V4&̡"T.ۺhL K~'Vސlz`#e9xa(8$}+Eʣ j,iK@@& 9̄Є4E] Grm0 YW` ϲŬ,M#/< jMnƞcQB&I6h{{5Q ZS Dr8+EV[vu" UqY'm8£j36Ĕ7P+_y"`' m RN׿fLgJv,37<0oArọZcWr1Qo>9n4W٥pԘN2zbSܘ\ yMHC\f̴$.kʎ$3xD /^M\WQv]}Gwߚ78 کطBŲ!l+gBN?af?ϾּZײ%tZ=w NPB(_10.֯L#œ^^2cѽ/~zn$v;םD5kۘG#.}ݘe4R@8${j~05s8 *&}[9jrA'(¯ BQ6i]<FKVcLz{rTRzq*&0GdHD%yާq^sovw;qǩeh_ :.Adx^8Ά!/ ݮȃ#w-E_sUFr2p`f@5hķVUJa_>S/!~B ;K‘O8@SA ]X1,]5.Cit{%Nx"/bFQ[[;^ȠAEn 5;/ 1]@[Q5GHU<η]XSU{`cb{#n(񓵘7h\S4o:,:ɤ]:ՇEHf<ĜNb0[C:^QGV,Lk-#~rxo1YЉ=ok?5,ޭ݃&Ar!n#8NB9!ިA:ӸCP!*!iЃBϓw(:XwI/~2\>C2^?{Yurἅ7JQ ^ց.CC[ThtԾ%w-ziys :]5J]M+l,g<Np 2TYgoe1 _`עzh.Wʹ߮lПJo=bwhN+7% AyƀR<7Lj-~cL0 *H<r’۹; A,뽚<(E&`6F޸pnG9aɒC"Ё8Y }qeL4eX{fft۠,'N(͊\@-@͹JE;tag:Qdq%yЏQ |_y& Mi )?lGgi?h1Q Ǻ+WO%@ jk-y/QwSc;n+G H)'1Wt'2¤*)`RAa/SJnz~ӂa?#kuY]ŘņZ̴T2é*>B!SS9't=q^_u$1Rk *{.?`]=QsGI<;y~. Nl;d)J^kOuq phg˶2)MP"@ȍqJo}qȣ9Y_}].^z8-l>=7&q#4zTu* 3[+`>W ̸Ɣݞ]RZk>U;\8? ︽EOǎ~VH>ʾufPYmm q+ݖ*})Jejm:B>8K7f"gi܎_ġl$#?4Ež_C\[Ln3D9* 뵣JRZѓ<-ũ2@hW7"{ԓì_F>HX`VKc[5 m?aKܓ}r qSsW!N1*@04T g5v {hϧf݀|z|tT=xbfdִ@)OU{%LFC}uP͝2o#t=HSD%Aa: jʇ5:oC}@X4?ѽa:m&[CZYVF=tRE .KQ=( F[N{iC̀ Qz:`/ S]/f}- )*;P>كxo 8 Rq-i %:n ЩW#`1&eDZtM SAK׿#Ս(8abElv]u]5dړU"\z2h7 cFPb*FbBRY$˟5O5 dL 2ak QNֿ׍w.q0)P ^\C`㇑}6F e\Vh p{d_dRs^u߲R*,i$3F^:m>Sǖ4SyVi,]1 i:L 5FA?9\;\z0;dSL_GdxuymШ`Ӗ0@[^S?T* h<}qWp_Hy˽zDƪCD ۀ4|:<;(px>t>3Cݍɴ5h9eԉhȕJ "j(ߕXlYij۸㛇|x L @i(@#XeZF9`PjnF,XÑfbgD6+_ڍھXuE'w6Z "JC5U ֡ MߕE^u#?):bq7@~+bҖvn GQMeK 8 demJ&}m? HY[=zX̜ Vu֑Rz`C;٭?]dfD$_dn@LQG7W.L=vkrt`j$s5 ebfMk ځL>e /EyDTA <͗ڙ]n1uV<4k ^eyrkЬf߮?=OY):?ٖ"K(`!T;S]p6F~ f{5mm_ƨkVzS*-W]%W:$)}s ?Vͳ*TԻO=Ykq]쭙%kxItmi阖ȉ;ڌ'6)b ;y|"vtZӏ.ZdvD!Mԛ)~P1ʉ3krDdLoJ|ү0Z )laAI:L}n= 4Sf:_N88aXe6fD =C@,EU1HVG =BBqUxs@gꝅ4A\٣$m-`s )?">=?xl(;gToԀPEN詙*K%)M^toviոU۴%qi6"мͷfTK]Y]L"cZf=1 gFb mZPy͘^_,\dumuʶ)U.Jvu285;Ѝ6dOknPv]vB])vҙ(ӪY{S]'12P=]d`lhNdbK0d⠜+7ŽgoXn '"B7[FXI qyT8mڡFY7L"b&WZ^vU=ye_\'md o~2k/?k>ﲍ<^jyףkWR@ϓ Unˇ{j6OьVq˖x+M' mu}}\7w7[ P_*uCGo(L0u:/_=H QxT@Ba[>cxxD;I2 8pœƂ'LJTUN߲ =K2=/W1xIxivetRquϸ1WCa_xRҽdTj/~ }$=.Ff'2 ѡ|/eЪ'EՀjJfFQkMlPXD yc_Pd+a`:pnUWf<(웩2qk]~iVnkGeՅ& W*A@py1TUd0m8tN8jMUCg܈zh^l{szp}azljp\]GǨcp' 7ʊWX})$ ޑ/{/Qɚ>zv"@KƽSM25ը]EMz_% ABnFieճ"8$~}[¯ӚXaoWfkW4dfLJ>%OR--%#_^ -dK=EZ!V"Ig:}$qN- 9wCo߸k:]旪ў,05nRo)~ٝ #IJFG#ybZ! 򽕉OC:ma EK "Sjj%Tݤ!Ɗ,KW^IKgu<q <"LoF٫sW6*Tt^>3qCNJQEZ[Tb :}P4_yBkQTrA# 0aLA#j_mB"R`MHiyQHq\&iXVT"j٫\Y& k HgQa.+]mwvZbF%ft |uH0H ~EҦ;0-z ͻMʋ^z hW&Tw|ue}Rxԃn}eV-3.s@9tjx#$"ϱm7m"ߤr4@7 ncJP)aŞ(-MYRa{vAVskABۘKi5{..q?iOͷz|~~ n8qkiY_("g'n@M|+ߠ_ЙЇ8QTMsJ{BI;ѣWb_ 8Rq#l#F4֝G]":ul`|}kCFCKRәs4_EJ$WV088ӎYg)ơw Q%?%# pTϷ#ECzHW܊tѵ`A>;\t.&Y/6}=l'֥o[/ ~~s wRMQl^Y,=$=Z&1v$_MwN>y[|"3ȈR2|$hVS,T^/D>D8;M70~-KCt(pl)Yq|ğjQ,_c5z~\9h@gDќa:zѼ|Ol 3?@À3:uN@݊31 e2 :H_:vz-_#6JJ,HmHvDaV,@}>768v^^n=QwYjnOj2R] 2c?lVEE{-D]8Po?Xk5 ΤA&۱7G''kRMS>*ە8j%B7] g[HQ"Io&_qw|B!So焾uy4nꃸi w,@-q݋`pf,+uŀS2)l*t-Q=<LmYs6_GbS+ӆI3GsV)4r=/ GHr,_CA'9gMqEuܪe`g`uW dh?+"uXS+@+B˵nZ#=nΙx]=|-yX D]32zJi/&JQٍu UwҔMx]u૕}z-a:؉}a6kpP^]Lk jiRB;(4%ή HBBPtE8tJΘk2VfERF GګR@+ UTXTb,&ҾGyбU=$_wR:lH!x!^qX%'E;66QoB6 26'RTC$_1Ye_DhlT-\50ȹ%ˎ9mPŘJsNF(E {jB]y^pwV_HivLSd3L e-lrTKo("t*!iޏYCxCʰ6zSeil-U&ڏPŹ]',\}'.0IB97Vah<#TXawţI Rpa Vj' ,N {K1q$F7˂G=|j5VY%z(8:myr/&PԶAţTۀ(F-3؊A"䡕EnPy. X7O1Ej"LBbfZG<|5"ݭ]ϪMTF!UN4~5(cag3Rb[mSk w>?FքVweHi˵iD~lH_ ۋ<+a(4cwMOsJe}ղeXRd3Q|($4nP T%9~fy}48~^FTQOe9c!?pDL,=i-2*R_;gTͷrə3cgO>P^3ցsT`8*80K!{kZWL__gI)eܟ%zl_\s;TJMv1КKrHjwID)+% '1b G'׺1'EO 3M&Etp65Jut:-$؜?Njf!IgN nCM~(٘p^۰y!\Zr8Ms@zcJQ*ȡkD9LQMSEee6B t.Eg2leZm;T=nkXe n*PԀymwT`L̓whI%ucTWЁBK]}8ˠcBevK*zN L@_=b9pufR_F P|2>%Y"|2>LonͰF<{{tVḊc݄v؋[*8 (gCIzjFa#qWj8ODGWC$QGwI M)ClKGU#N%q F't{)~2DKm{nL]2։S"o,b1@<͋ʘwuhr;UiC}A*Ln* 5Zaf58crǙ(` R9MqsP 0>h)٢S?=<ɮ|*R9PSա qɌM^(wk &MLQw65GC}unΘh**`6^ÃXk(6QV̡gv4RI1s_>dz=]6Xt|qr+$be۵K(s,<@K!}i~_SNO2S4]xzC>]2V&bI0OM d'xUn9šU zsŽHRw#K3^H È?,vTuVuΑ~?^aacUUt(`rLӠ~=zs1/s3'n ߚm鿜(~arQ~:DWJSX엇`{/:w8Δ] 'b9%S"Uٚhb'|K>&llp:g7m m#9>믑V?ֳW>QYEJ⛭ELfZ;\yyCFWTmHx zͥCk_.Q?!TҜ+yNO'H*;7K\YWW1 %nY}6[Tpyt `jgXA1H 5S[ 錰gy]MW]g8+['xH]|ff]iSQlEQ݄v~hL9(I3|)"%!$s(5)4k{@.yD2ebfMf[`}^ߡn#׶\Ӗ5:G3a; -<|Nm>cfP-. N@DR l),g\ǧO&veS;\ #ʽ@njlQIqvv:2veL\h/%e~Q48K-U_IqlJ"@PGN۱Ԫs>J i߇[u,ƒpwExF|}ѮdY|;k͞2"LYt9RWglf!3G!75HD6K~ų^_'5 AOnGQAawe*ek]Y>>a{I$ ~ۿ(ȴ1ã.G 76T$8WsϤI2)j0}4\զN&*Z80 P_탋vi<ˌ*lO6`2]?WύAѵ$ e-ߞXDz#ԝH5fp{]10hu,ۻt{# yasEzunu~tt{ <(y\¥?o_THy=2N,+]ap5B1;) _TR@Iexz ܀V_2m@@q֑e^a:'wFZʛڐL!X _<-b2{+/lZqz+؏ŽjxtY 5Ex&.s,b *r %;Ԍ^QB0wZL /pJZq g܄+yCDݼo*gI ×vwF|u_Z<|?)C8':#y;oP9Dzyah{ Ag!#K b^R9L*]@[q, #(ˑK@{<^ :1~=?S5׌zED¬\U_[~@VYhƗbg8ùz8Bptt!C~ jTǦۨ/fc00牬lc'MM0{9{l[zN{֎2(˨/$G!XcEMd/EkKz;H/G[Gx0J۹T~HGc%f\w2 ۗ[3z̽QA<`?~(wSـ|vՕpo!$ΰ!_@Ċ伿Ow/3miϽR:wRUm]a x,$__|Jv Yg Cy\MćyB|ۡe2&H ns,:ljK|j{Z5wȷB̲yf]RKF[q-"rB&>YA" yZ"ex$ԍðfb̢ l>FC'ܳ+qU~i97l VVX@VU; IQ)hZ(fAZW:0 N_,X9\̍o8yLw ;'}@T_> k^?\~dװn_CX|<%OJ1D; 9dT29S3![mxr30\%5uz 8K|tlrd*e6P4G,bŇ桋 s9Z!f;E$mi kCj90P7 (V:39 j=3yV<<)t~5qiFDZdpo3I#l'1Xޘ<&K^:a6wѼT"̆&,+zp0ׁhOOq6F5qZI_!Bo=?cYH*8},u.\vHC 76 zRLKAȕmP1ST:“Z e(o(m\I[HEĠvQv94ށu>"Oˡl92ʲx%g1=89h?Z2p@8&d|"y2FhHf]JUg4F^:9H\"_'X5r|Rh?mNe)U+#cѧ\ϱ-JEώ*˼#7ڡ0 גֻbx`tT5#v}t-b(ʒwtt2 R(U-^,1v!M+ 0:߇-79_ҝ=s_?|}l@Jw6i˧Ky{+ n"F_Iy FZ^?f$2 F #C5Νx<{tӃp5Nj//fAZK{HanDf~R,ES7JW+S7y D&Ƃ&zzxf~h/IOם>!+N\j8l$1R#*4j2;G,gy_@ڜ<1'f̿FK'br2F/aAtY+xHgMV-fWF%nZ^H~-9@ccI(;i^vK)Fdȡꁙ$hÎW:?cEQohD*xМmu$uZQ򲐳Bw>E\N5B_0^U j?ԕ\**UqM8r^̣}Zm]e K/Hơnlشհ7mW5j)$^T- 535Xa8Qpkd}!)Et ޟ fعt ?ђRJh@{asv)2}挜t:l7 yA)pyX;U ёŠ]1B='T֍>jLPŒ>mq{fp1A5aFrT:Daop^q a0}RP  !0USW86q ^f,jG ɢ՛9Rۋ~l|8(lgm?vB.DD@Ȑ!M٪{+q9~Vezt>ɚ^_ܗ>EKS7@XG5;pDj{Ip/ Ѭ!.c_Tvg<BMh ;wÖc۬Zf+]d88iV)HʉVo*(ߞOͿ/t!6$|[hN ʨSG(b/kǾ4ue}~Jx$wFjv?C\#PiI]7I&2:nxZ\܍fy}S}9 SƀM=H8hd\&Лբ mV|n+x/r,VC1I:v?/U~p|moJh#n%^K3r55ַzMd=2ޟ @ A I%$'& B#΋O:1{ ܰl7: |'[.sy [wr0u!V30BK )v\sv/|=kn-xfYU3jq.SцdA =qwOo'Vձ $:LPiC_iࢺ, l{6ItQFp7lY;G( E@K@€›REvׂvue)((`eE`IfYym 5pgV2<ީ ,'-5H)@.iGd-)$% zGqߪZ2&rp+}+9LxSFk"g5ע\2 Οun(ƃ܅%|1_f\[Y9hX:3ߴok7źS&zn=mIA8Hn\T7&A+kw,\VE> f@)kmϵ(?%sI~TA&" +HJr J[x5{zu{ieqwd8۟|4sSY8٧JX;7 X'>?L-0,a>}bX%UC@"4؁ڵŨ8)`6Kȸy&Ti:Ч]~On'3 YOg6ƷO<BR/y1[w 6=pw<3l l͟RiӗuN4-]+C8am>ڀH#%:2[gxq͵6\B 9}zrCԜe|$bs0?Bm4U0h , F)qpOp`[PZe]Ci& YI .?pJSw?8pg߈ЄwwB?~("0\q7b8cr## J!!;("VspŤ^jeZ55iKkoȐ1#,5eH1-j!glY*U&g둩ܞ'B} ~ɽ;- wD|ǘ5=QO}Fe"| @Ӵov4S0.Y^EQ@A~=!y8W@7%`1Qh-6:ܡtyJB SH,e#X%'`<8#u"~L?V7+>"v(j]Qz/|ģ mOLiSoVE"x*Dv$s :)stv.[hV;&e90)k .}FZXhDi:'CܧäɞJo?4\EoRRtLM1r88>LuhT peK6sFM0˙Kt nզI`XY4#>QT>7Ȣr!Z,ҥpgoϾctAKn4hot ?hIlL"λ1pf^Tt78KӧN06dV]+e 4#ƚ.!ߐdZ<~Ϛ^alzXyL;)PLܫ!fmt8P>H .TGqFU)|Ac=Aj'P,\1n/ΛhaZb\4? $pуίI޿yl)+'\lX#$ͩ|6m' #oV殥u:ScTK BNl/m$76ʭ`$/ *.&VƺnQz϶':.t}"< gmύK"Ąjbu1=DUql c(Wrq3`d;0SDߙ'YB f}M0j5S pq60E0d{ >5_5 {je:SUv]$k*wge4'k){(OJZ}"8|†H2vxIϜ E'659(h5 ]j˘p] 3!߆pF4opFvXѶ[4}.<3"Hiָ{/V5SqǞO|f wsO}"WĢRj]Ӽ09g٠R K]ܑ]7?! ۱,hcj lԙȔNizpc}S66/Wpޱ׏]KH`$ԌSa_/3h¿DAu~HO)_|2}%,P9q,o R; [}|m ?2TbCfԬj Q,tJ6jfYYe6Hև27|@EtW{Y6%Qy0e-`K5-=v_ [7F\jbm(zaAw&pGNK:tP´>SyVm.X(]0mo^Q:8^H`"^ÒXm3U56-(?Tw{jUdۛ鈕7* ؐmle } ]J1HZ/A[Q_a4X),KLK6x|Q Xf_G#5f豾Ѿ1xiZ4`3E}utK/&.chKى&I[6[ gH@}R4ZE.0~bRcr!Ҽ{8 XHy Nj^#,̘zó`M*ZQ;g'5Q">)^zK޶ItQ}ba>]פZϩh>6_~GIEM}2c#tcK2 o<|O1'7WDXv/̈́9^/"(PBd|ԯ2 %Y'= EWg|/n> ~ܙίА &&x.Cjp&>V`γ&^HQXJpfB@µ_2rY`Y_[TG~R&C[k@`hDM΃01ɮiybi&/qb.% ei -U"FV.7!+Q$ bmj j3g?M!qX v̄z@Q$ 6ɩfX`멽`vN7,!͞S"H뉛-amʲ>l_k\*Q$ F[Ra><`eTxnq[|'6Yv]~2CN."+i5j sTJaC6kLs nGc}i|'?%`"Niu:'6<T46[eVnKwBGHؙoX@/|.0k-䕆;Np$~z+'Cz'֐`#1d6ptO dLEû VC)xq.Ճla ~m:ǎBa-]<[îݔN|nR5_Cjr6fhJz~1DHTa:CލE6轏j"4Rp_BlDI!H9du̎s?4sEOn.|-+Lv$1 (M|%Fq#aPIWS7q@2w5}q5(LhʲsF8BRRk3?_}̰_#"&sz+ߔ0Y7{̀%0Owis33oP` WW6wz^aM4Op*|leh]q Q1[fƳIE`6Wuvtg[è+U9b|Y(=p!}a6<53[H[&Qd%N][@55[B!Os>5+½SoZO#vܠ'8c=Xc@D#M %p0 Ƒ^av3E$C? b֭lYוǹn5>-=rN8gûjψRTs(LlEQ% 4ބTXZ6'g?؂d1b8E B6B_wq &+͸a!ZB C硊"aTpkvFTXLY|s]OS"ʧuc*9u:=\-LĘ818)WvwJ.$`m_uOa~MLSӪͩݝU]Aug.U^-W':l=0>xb x6~6 [>e~A-^ԦMEuJYaiQݜ•B U|mK9ux!vףktVQM~܊߫mEV++IyCU*^c8<HF m\,v܄vI#9dRȐW`fLSq[p\F>܁uYϡdYVi5Z'NuVmYvAVx$ 6 GD}SV)Gӭ"9+෱C)9^@;l\BIN_<v30O ro4#fa(Ζ8-~Ur[dGG@evI!gCg@Aɴ}#=7rZ*}>%٘0k)U21c8X<,ltxVւ}rt^Y&)ZQ y@nK#Cp ]mӸ<v_D(9.covahop7BQb BF2 `ţ#\*4@}:3\G{%>o[4CR J&`U}jFcv< ̧ Egҭ;^*H5^DcIGdLN:MH랙Z S@hlA?y^`b6wͻѯ"ii"G'iu+&JdZF=ï, o&|]!]t= 4F{X.MGwo,f $1wREvfE)Y;]iVy zUN_6o]vSOe{~1WUR-T]z:}<_b$Aq;;h*w&>qIO00:1m[MH} /Mj:XsvY΁ eE]t@L1y/.GoܼK gP)W7*d_S&Y\Ŀ'D,[͞/9<*Խ9qPhKk{!Zƥp},4ljM—OeQJn%C4nNGցUяPAg!*/_Rn߉KR_0ִ W$!RُMr0 䡄`$3ܣ;4/Pq_3o Ú?sne._fu [4,0M /m$oWtΩ3R{,mfJO'@%摳}a;gBj\zx9kp⡗b T:C䖼zR$Dm67tZܳl .3R~`x?dt NY3Oy.yQ q`)3[vErT<ކCd&^/GAU&)B ] i o smv@?YdDv!H$Nc0BZ%4I''A>2NQ'hzm&{moexlDqTez"D0 "#)D;? aTZ??N~q@6y@qC\q{XV!|AگY3,$c8)tTtuS"*T1Krd `_V#x?(wؤZ)Q! mY FIQ~RJbgm]:w(D$SQ:t$(PbI1^Tn ،o%^4B)ne|SǛ6 >N^eN](E#yԟòP&j$n Wo$K6 |H)e8!v^b[cS~ g1"@?j[VMūh0+#-P7qDoQ?ƸK8w3!9^*iOWÎy ̲ұYMR =F׍Aߪ^ ψ:ſ qoFL~2@f"TC0bS)D4K7v7X4yy7FT>P/0hev9U93&;TV`Ϻ808u8EG.^(yhA_[Օ*C5]u10|uC4n|ݻ viXF 'wh=jq]5]AO%/>Z$r+&ߔ 3">C!R!5Γ*ǩH=]Rmb-f;J r'1Ҽ[i@ J}=ڡ2T~! rYfMv]펞-Up˔\^oA~sƄ>HJuew-fU̯YVD$p'Ԁ~S.EQs荜Yeߒ75[|qqJSQBgVƋ%1=nkwEAbœ=$(R0QmӋǣj^MƇ[XAؗmdl /@ ϢR/͈sǧ`Xa"V;bX\%n2EH!*1A?gz>?> ^Լ5&[V[9:?MmE`z"btɖi='B+ ܮap{*Z|^Nb(Y \EJ5TM[h/=ȹlM4ý:ISO> EϜȿ4(dۤ/9C0w_͢j-}kq77n(hcER(;- lSЉB`q-7uC ̻Rm׊I# ӭ8ԣ`ep 8Sw+̣r%YYJH8ܓ.)Χ{ޜ[|}Q!|foDwZ՚ jt4[xö*wܠ{ҙcNx.Lz W#.)PȰBz`JjxK YXK4EDnqqV iax^[khad0*VL̯P7cu tqOON=Ǎ,@FX(+:c v$U.|/r],Hu8vZk= 4Ub\\fl#$.' N=0#sOݪgD4Y k0,r:lFC҈|dIM:lS8;6ѵ!s /`WޒH;ԕA?N6]D&j3mƓ#1?AF{f҅%S47$ 8~PGGϢ$\?Mw}r_KQ_11T|9\\ ,J0`gΓ&UX6uT9 ߍmk =8e6ʾݪUq(F{3o t!j@U-> PB"#nk4VFW!y~/Dh b*f>"1$| _bC$kCy ̵Ùчrj`F'wר)O"%o"UAK+0fHeiR_@qRFA a5{e84GZ@fdɮX[{'rj[ؿ/)@N"=%Բ+XRq'_e1jNV Vv+ WF_H򶙖`8MCH&hQib@vr"SCS骦}41y8 ,byJ|4D4GqYs0:vϡݕf1)@aqDb^uT^B"[in=Xk/>OOɞ[h>gM"_՞~ߢ!+7@ZSY(5#ty!N' `r.Qf?Xܗf=g;He1K]Dˎ'g_>7=\6;lop_FjPݶѡ|v@9GF&;|Z4jxLo Au;^aC)B8u=-~흾i S+h49'mԿc wz y#DV>pctڗZΰ;*MJ, )KNqsڧ14;ѹo5R)"BL[9ɔGK&qL"i!̚(O1[~ofaj߬\[806W 9k`a Ypa7[\)*?!pk?J־x~؀C_-?n>tUZPʪASj[I MN/Ø8ZP漏p3yπ {jYkP;®~-@8`4|*sf^X  2F AYܜ,H_hs1+h'Mw=0pn2S/+w~9YN44!7R䥀B h5a4Et:Gi|_#[<:h)VeAZT8kJdơ#cUvnpsvnGg DFi0N6VQDӕ?݊ B=L@@^Hixcn /22K!Z5n~y'ݦ{<@YZspဴ-E"/O^T AGt.{8|ZNv\; bh7=,nR͇"FڌP)wmrd ֧U6 уۙlpBvߔ\h>T;cB:҉a)/΀?nh8ęd_Tgcs\B}H+["N3QPYQzkߧ*kԙr湍ɨʥ8OgHk(;4J>8e y&( {`DۿU|B`t\"VD,a#ZOjo˼at ԡf;'/*ubzۉ ŠRgk JK(dÈ*8kg ]! 0B 8Z uʀ`6>2_ #PKM귣T,F{AN0\]܈3c٥6jn< 3 zhC-0(8%WR ׮Ȳ^N^'EgIQ/gd"uYxF1 ǹ ToA§ՑFw,LW9Nj ه=!7^d݊Vt U`Ia`_caU@uz EI^Nv>moSÍxI $`7 }FtO=8h𹵛?'E!@#B %=7`\NC>s-<>W4L #@ 4Kx\#08U9a#̫ǡy3+ :co[|ϩπ,̹Nĕcc +i)f+ү cπa/7 eT.:!iJʑ4!X$b A )1U@Lg*!ڛ} NLY ̥@:lkK>"3T7*+sDF1[X%Bȅtᐗ=PP=w*O!VR"I'a<p`*7|YvcgԇڞPϱ\~=_b MdQPT^ Rq  6s5<.ث7('-Ѡ:ڣbj+A_ڱA:x{$n+X%_@\%i |%hӫ$M/lMԥD7OOZi7u~I3@FOj?mb폝ǫpm ZBpdD*8Ր>oyjWmѪ*zg" '?Zu_Nxy@xR +P|:=g.G (g A@]>#r5 LzuoK1yݘ xMݲ6 e:q-[{/d 8oSy_ KZYm'D.O־2[to @VIb_Q~]da$ޟBzԱq;jT>I%&1͏4CVg̅>U7$.$>X6Ot[0\U.0$4ejn<-VSaG M A1swT:[ "_m7g:!.&p~9to_ؤ8,UոLkekzA\UKCVvf >a10|wd (zC|G Atp%ofӛ x! 8$#:A)qd|% ~hf! aiZ:|!yݓG[KG)} h*a=ad/$ !M<=|Vrdˢw褾D{gZZfR_O/Lw %}X4zH]Qǝ VGbm~QL\uCa尿pvϖ$laŦV@E˾hmELbᎇȵܘ}g^&x T/4%1.!ܳR6E,x2xu1.]\VR&-+p߄<KP]z4Qf[Mҙ*B_[P Qs#_Էo5u¨ ‘<||GA=╃coLMCU[9X>S俋$f0( ^> pw]3F h}8DQnWR]Y%U$( s,_}jAJ✏W~Xl`UUMofqj(v56=/w(LlY/;C~SOvY :wGogyFT(SCR{ϧ4Dx3i#N>a#|ƘW㏫aH}hslWڐk>d&PW _=(c{ J-@`w""joܣ&@lI_N[{ /2;0i<k#-Շ~ nVNᩳ @oV=4\srP6c < 2T2:w6aT7P\y$$v+vLBuHj[k-uLtwj`0Givu., ǢjFTbey;2P&q>K%B+lUC]⥆@쾤!s.$l5(ł P={u}UCS|N1>KMRX, + 1L5SV!Xrenʚ̲Wdsݹ+Іݥzb[GZI]˵}|Rfo>yd+z/Sr` JhvJxG Ur } @c v|lh(s0=>Y C0-z s'jfF]zB~ץ޿sڻc)INx:)ѾJW]f Ljk~)RPw Ԇ"gP}hBhm7au˪ gAK=)| X@g[ ګ[NK徢˜m6R1K\,o_oQpwB*Pj˩ !_Ѭ|`EYBg^،oMÕ"3hpNB'?Of+Ag[h]FEXgg)n_}32ʓE?]nS7 2я,O; 0G"Q1(9ցzƨ4P)uKOejUGnl@Vl;)F悃5:m0KRnx+‘/dI&E-ǣ]0NĂ]mvX6Q{/+xyÀ SudZC; [i$USك[rD0dtaU-EfM[tvgf%(Q4{[4V&nd/իߨ(I?^<$DMٱ涔A<zg&> Sp¤GLG:nК.XP  \`J/Ƽ?;dž vN10齏FCY !J]V)o+Pwփ4j䆩9ڮ̀D]}0.iS{R&o@ϥv!y;xh#1̒_L[l$ޓͶ-5hucXu%Bme8'PLfcg:N}d7qJZɀîA>^L㹽^z&% ]5)ݪ@2 F95~m#KSגκ)kM,X:m .1Gv/H|NdK=ku+>o"Q<_R@6qd :)u-WZ 0x· 4cWg8RߘLFhڋ9v`5LnFEl8k_.ý5:@ / 6vơrRT\S\\{CHyμg-lD(>\lsa"'sL:Q:`%|hA .Htwj+YKP,zLm@oI\o'.OfHmK?s R?yO''Eu A\ZpA4H+,;t`mυ ?P8~yNWU&`$`"-#ͽłkp,9j-"+UҝIgJ=k[.#d闁)"8v(|*w/j$wrs{P$h_* 'u2u|B8&*whzCltq|RN@0E_HKp@}WWDqěsHVk%^Q`r9!(p-5c;FE({0Fɾ+4o szheѽՎr0'X@U@w ^>K.o=NW4fjr*TpR3lؐ4c[_zJ bD7YҠQ7.>LNJG,5i& A+KK7X};گoA MYM|  O?ߣHr^@RĮTeo> bԀt`vR-D7^94'm eeTjނdD%9o衶5/S˧Dh)<^S8R4+E9L ?/B>hHMBvE f,AJ]jWN3~]~bHu/Lr OFks)tbRߡ[ ''+:_-<+/W  7XN Thv 1LJRv8%RaW)hx򗄕xq'Y aRR0f;Ŕwޱ>V=u"Yv =O0ĕ+NeGc@S/T:awl714r1इxZ9>NSdex?DfUt-mYY}KsH8˴b,|4p1񙸪j]/&uSMqhvi8$a(p{Yx3ܘk {fl㔭eBvh^_O^xg̋9u.ݣX?,e|΅YJB-/TrRϊZ+!sHi*o8Kݡ`z%F-[%hjBM̓l.Hyݘm68\Tw}3j^8*T/ҽ#c~O:V m IuM(ftCV7@{\ٝXǣͱs#֎}ÏǼmr o=ŏ]\ /'.ޘqBlDxa6Ʀ>r&Nsqΐnڊ;Vo7YѤfܮJ烡H;?Wk4|oBzE;LyWIE!=O;UX#q$\}<{eZzl)~X^?~CYٶf -Qg&lwj8nTݞӳ*뤑Xem* n5o".P-K\Lg 9Xe;Ei#xLM<2aVC0 S%ڌ; IT)Ų$oƂw~k 8j9wj3{Sr)_J+MuK@\=PTWDZ %QPՙQc 5++ DUF ~1!FYKiyLj3Tϱz)k:v<)Q*74sSb$W%z3{=%[}i⡃6lcK*N~  QQ\u^_zV?J%ENLS+%{X,]qL;LlN~1h" J%o|Q(xY.4}Hb4""e[-,[=~9TG#+>B6'5 'G8!l sY 2̻wLIye۸Hm7}VUKB]UTȮ9puڳm4sݹ݋G̮_ & M&.ɓs'I鉘 g5vnDq)bpf#''ʼ(i 6Λ7߹`6$GJ[} ~Rs3QoY<ĸo-Bmg7wB499r-@!۱7MKD<4wAA'C#lĪ4-vB/u5{7闳JN)[1 %4n(zظWǪLژ}4DRlGK>7?LAR}- 3Ћja5QdIVw]hü!Kgd/pK;.J-.3i0|1[?]<}ERNJ3=9fQc_#:Л6طU, ~OEwۢO8|!Iaz`x`1!sVi_]נY׍d[%Mx%=Eb"$ә٭[aO[¿>!36+Og<&{4_HpA~P?Aʃ~nkJ}i !,ب dD<~l/1aaL&teāYP,; ^\UU5R] ;;>^yWC0i׽ԫ^f_@pgO]'_8BsRq",0]Aqfط-2/#ATng_kǽv[:IPzssf-G}Ż#:sUNW99:mOY ! ^3}X<<] cڶjȨl(k+W;O]S*0~C;7-m<ፏC+v LkфGlhalJEiAZVCd&Lzo|c;G^,Z0NM;%ȹuBH|WuX]ZƲF`f6Cu$N?Qۮ #Oے7j"K=ru1V@;X d8"S`9KL˒%J!JK >Ead@A`B%k"@7Α-YLX݇*~^3 &fc 6_1T\9Qgy#ޢ~t> /aOm bhZ9EIJJC¨휩F,$ '˦Ya92597Uʒ]!1EĮcТF_*Th Wpg% :;B&\*/R(OR1|0%xnPyO(M,ˠSfAjV:Y-3ZV8eqQ#J۪@N?.Ua?(L18hb>o2W$pI?u#wZ[r ZǦ/ pDBdfut?·uYYePzv6<[|^T{GPyOe,a1iĵj6Ms:#sVqXkEk*Ŝa~~Xeh0>//4]X+r8_L&(;礘Nw9̧7$ʝTF)7/\y`ZNq QMcЊhpKM}Y {8GO쫅2nSK-wg3eW9:ck|T\zU %jnbPJ]0@o>4KEoPY*Kw-nn<^j1Z1EaH,v#x||-CpJUpc[cؙOyv ܀~iZR_ng_44Y}xg>+|qA5U~,%n>Dfh`Nҹ^Z|h~&4{è(q&%s!ؼ)pgQq+č mOʪbqX6DGhЎ4h%o фj AZ2SO)ym\Foı󖖢K@rAҼ#kQR\`F>%=8ǟܫ骃 -=`l۱v9#9X^y3osgVբja2eѐul[wF4&qbzA#nLf::M#Ph?_\I%jG{ :ê|ط#C"q˾ mRI@Z&NXQ?4f G1^4whab1ogB2:m?EzG~Xx7Q+^jpK>mlI}MzAMh7q $/=IޭҲs6!n~F梌]LYr Ly%e"T'Wѧ= ettenHw5[-®]z+YU3jc7R8MF0qAg~PMPK?)1]7}ˊ=ޯ|ݸql`3pʗHm>@"1gsƩ:onpqs̨P N(FO]W?%wn ͍1` =V‘}j Y^ƍH‚*)m?9WlØfdY6tm䎲l鐤(2B]"pLQX+qg31+OḡjXDa'剛/i㦦~ȆnXGͺzQk{GGIU ڙ2CSg3p4IU)fG0g@g3m@2Dn&SVl 溈{R]eFU^rPsrcH)9]6,+l< v ƣFht,m~@ X@O q7}$kz&&\>1ƪlr 42J Ai;GVƤ7蝏n)T-vI;K&g :Z:,! RGh ӌ8v`#$I?Su$f%S#"u嚣 P?WlC4pK8]v/R)DBȰrvZ2NH6u^m13_vs{ֱF8%x쫋 lC~Zv"pąMHXk]th uC]j3f:deMՃaQ7뙔4>ۣc-;)? T^3 n Kc]5zY>[~*qW+Nf޼ UΚb=W;l]D{' W{26VJ#Z ]sz;x@ }lo PPn|cc3Ҋ i<1.Hw F6}R| !B|qz$|Dlm'ۮHk?/ݍ,F4 ,NtƐ"B-OfGn\I tn=B1\4 .`W2L5+' u!nQ%OaN7#՝vy,*s%17ZrG8; |lBa>m `lDŽ~{[,Nݮ ^c9ھuHVJpɱYvTP5xc\)RV ~cUEQ/ \?O?vXeM|-6ՍE,\|ce#~7:D)wLf\Q1-filBKRMbh$S'_6zA G拗?6j` 㘈-"\nl#ǹ(wvX­ CKd$99<z0D[εz׽ ?fGP~hd .[^q>R.ý6 }-F=k3lkHR+ A05Oa&-/͑ps~UY)97>vQWz,n4EW&1$y>SYwMa>$/9fOQBtI3~X#tҳM 8w~AFZ.2n]O,gYs:Ax)$ j.l|?BNi75\ݣT( W>;)bja3a|g+п7-p="&DXPKÚJav]+H1NPM?ֺܤR,#~>iv 1!kt k3Y~NHλXGA6עku+\10AWɖV'Fe{YQ0x+U 8zr( Ț7m#W}5ĆqkWpBX*@&dksk4kdeןHfyS,7D  =;t>TC[5-_XUv%nZYwUEdT0EB@}LmxM712ȏG;wPXL ĥ 񗲨8$VJ}ׂ3*ăDhIl#XtU|*T~^т\{ʩTW'B\Q%Y%u;tozQT}fntk\,+ 3ƅ,FQnOF)d^-J]~l-/1dq=bX x]\##HTGAjফ"M Q3rQqWҘ|F FH8״@| Hw9#9F)*Ql6࿃/bw!pdK j5+)yHB۽&J^`NywOqH*}sҋcmο^yl N`Q(Y>~!+;sQ;WOCRޫķx,C4A: ڭ¡KdFUd]둒|Zzf# =I:+4aˁ 0H ]v!@ CNNŨ֦|Xt5?N "tVc7]λ 5РOʕ {([Q(gu}? ըsF͚|W5, b4F)yKIO|HL&XYl'#b>?+Zܦti6,k(8J 51 m;a(I W!9+G';QSӠ?|[UNXr˘"cm>bc$(uk53"+BT2k| xp*ߏjDH, S7|4f^x=KN}G'*NL+HK^nE#=؟_6lnPSIȥC]釁j$`V+!_ІZwTG(J7[ y|cqNeltE>>Yt ƿT{> !*_"H빪cAW?n(2b@Z{\4@[ "t1hU58)k80pM\a߲|ᐁ&*~y#Kc)Iɟ!ǁ 9PC<,HJjqṞ#N|^hMf]LtSu [O#< rykyh W0cn뗜uG Pk$,&'(@'+eݪOx' Nc%yz陧S$Ӣ#y5H;0@ ,ϨMeig:jdWMC, FLZE KSdfҠd^4~U \.L2u0?~M1/i`xD.yțUǶ:nQ ЊJm]aW}dߠtHEQlFڕN 2 w|?횥+%;=l;J-S۝;h\] = Jp(u6:Exo&[cnhЬ&D;z' ]9>,J'M=Up~"]`2TܼF~eB3JMg>! u;KF]O:&Fn+S G\J፥ٜ'?if<[FKfhy6u3yY$5KC[XnC6ϔʝ,y G>vǴTFx% ~91ֲQԂiZ,1sC"Ț[_SO˚]Md(Qk?,vR 6H":EP^Ј;FV9DU,#d\62;3۰Нj`F(M2O L-}Sx)LURXO@77t6MvA_Ɯ{(zFؚ#d?i\i;0yQ.\D]\Z#VL"Nr8PCWI`of<| 9@0A[~8egI63p=I:Ts7iM〱լ ]A2$go;,&3=NIw> Xt‡N(Vh+JhrxɊsL%" rUQJA~IH Q+hDS[n Hy TjuWQٚnHֿ8+ZbKVx]݈jx"_½S 49W|PXDqǒQU"¥tOXЛ[AsɒIҿ+ߓZOLG[V܃&1sSc*:VSܯDm\˩6Y{_@87 shm7sQ{p (O yAp5(yB,y[xrɐ۱$9K'r*<"V@F 1]+..'l\kl:*>IS =x꿁17W,{mo|1_B*G%W/^ Ӎ%~t`,'p;`T.,/W&H_/LMgƆfx]j֮4XA]!D'4PHx]K(yt R0%D!_=ed!*&ʼCB5$foAhlqfNe oG0r7#YkB8mx# P<},lbJ 1$W46p΢Po I\,i uℒw1w12~N\3F65G]kźqx7Vf6G&7qU9Ƭox ڷMsPY<%T!] (/Om"\Bb.ZybUxYW }:rzVfُd6HѺ&a!6:XkE_FE\YY!;[x~ScT N$wA춀?=_\-;:ro;kOoI|b͈Ɂ-BhfP |ABü*8+w 0w*G}Dd0\ /,ۍco{3:_PyU"u\)6S[3`x+OOK ڬ8p܈b4#kh ͗$ }[҃9F ۹xuKsԑ@U b>[6N;ڐ ihRO8wӷ_zXOa''_<ڮ̒FFfFģPɆMBr*:1"ꮘ7|Ugg(=n"k74׬M=iK@t_<N?_a"2LuuTcyW8\+h 밞1dg[̥^^c'cuNֱG7@٨YŲ" >&xu#K™%,Km=Ō{AсHˆ6%4D3TyĆt x|F̻`Lr$P{ݕY3d(UpeҲmڜF!0z&Cp5t!n`:UҭcvbΏ'L燐ՅxЁb jNr4)4Ă׮ 'or>&&RUz>J [:Roivy)w^+6aйYZ^x,` MJ(CLxAbtznrSIB:w1fw7ss~ م' >5ZO~Ëwd=sB^,jM d)} \@IF+&NyUibC!EȟesC CX`J*;M̤[+~) :5`tc:!]\a[crVzqz6#&},j1-\BW{X@;l^&7"(0  Y$@)c (}3+ |gC؟gj :%tۆu1u]CxASeQ^pyq/lAvC-2=#D<sa(^PI4A1h|OA>,Hr'd4js6$/%V,@ MOHFˍM@V J7"Sv& Q.[)'vJkEr+3_8ٷcTB빪|΋Zpi$v8 Л ARC2ﭰݾiuĚ[9pb"/AsRzEuH3jҚn˭/a/q'AK!{rUc0=~l8 m+[7"5ܦ)I;?\FBhW{Xn)ØR<֖#@t;%?cRDCbŻ򻅭Z,eΛ v62CUD̰[7JhlRzDû k&FuF5Y(ȹ/ZXTARñ@\y_?>T>c?db \sVcvTo9tC2UKǏ1H-ѵ*# C‰\DyV0Ftw@dD$=q2dUz"B-Fֆ1˿i%Iܧ-P_C vk/ŃBKRK(VulBGDFZhR1 sStuȽש-r-0da@yݭN]AōL(+U31\]"yNNҋɭyV_CV|B /S4tIE;Qefg9CQ4Ҹ :L.Fx6!6ɾ>ǐъK% #?L¸o8QPZ|@ [-B\·j)ex_˰#oъiIv1<4L z_L܍NW/olP5; PھOa\8~7T1 T.jab].cJ 1} OJ%=(vp$;%ާh@i.Cr}a!-̃c-dܐH&^Ҳ x嵮L@̚ʈ|w瓐e.V}hkh0,qFv[ƠL+QNj"PTeaxM>t9>w% leѳVYvG[>V/NpZ}9OJ`0wJm\o k֘:BPWuF U&ҦcxC~(88tTDw* 2|M'k!԰Jv[{6VXr>yߖoN1@2 +kf>K':DGj6ܧ&J<\ r_B CѠ~r 䨅C vN iTF~yXf(*M+)}Hge7g!zO"ΜbLYxY[KffAjݽ[8Ǒ):6)=q'4=|(\0ZWY+RȺ49*Y&_ T%gMqw(Fi2gȲ^'w{rE)I8SyR (til D%*[j^ӓ_}Kҋ"Dtnj#u;mU5d2c&AMQ&fg#1G-hA17NpF*B=O!s#)3 ld.fD׺ML3wӄ~B ^8͊s8&iN2r`N|>n`<Ɔڀ;g#Yg)ҿ5懧&-BnՠVRW""3 A7+ٳ L}:C=4BpQ.nyeH%࡯\ſm^{VFf A>% ks\y"]Cϯ=1Zݝwг xصQH&r7g UT␙,}8- P?cs QD}leQIm'ԖH~?ڬ9i :o? *xXY2i[ޡ)#P@[xiW.LUiPA*k%yU9uKPHQ/$a)=X%yarˤuA<1>"=s)eۢlXEQ{.0@1Mdg $Д#▩y1LSΞ TNX`Iw.?^ $uFm!Q2ӌyҵcԵ9_Z:SѿjiC!On Gib!\]wnП)pX*0keboe7B1rU-k@ni4 A {f+[C 8 9f@Cхӿo{K: L˳P`J肏=_-@9C~ g)xLXX8Ѭ9W H`Sp|}o*1?R8 pAj+1wXm^@'Lrq^$wlR&FfuN@,CP;j7>"/Q̭&tVU5TY3ʚإǎۅ!,G-L4s{Pm 6|V܊qY<Lbs m>/a1K`S@rz+֕oY{Ēm'֕['c}$TQ&.ʱp44~U _I3.'58w얳C{fBꁇ$hR˅^o~dizB%W-gSÜ@wE=W@-M°3ZaJ}c6Ϙr>:ƃ$}zEnJ~:d3Y! Le/CP>c50{-3< +jͽ8]`OФ._y3+"ٯ@GZ=A&7I" RnletGh^}U<һ*8sL.!W :Ml̪4Bq49V$S:m-1r99$Mf}~ ĄMAQނDZ/HGcZ>Hm#/8~qy#C od)Tf̮ǜb4V:"*~(dlph@66?BuV ir]BkX'ΊFu*t{W{py}ĩYu4 #Ēg-FY1[ 2Mks <|!(5yae8q\`/$aPx [xt)>` IGB)r+d́y ;hEؘ8gEfh`Ns#S;[/ VNT[S7> "K> PO} b I3=CH !iLؾ P8 K:w,39ek G8Uo`omQr"Nyyj<h‚?5{LRwGi-Ȍ'eB \2-U~vOjrM ';yJ2yf-H:5|Łi Sfm7[\Xg :Z )SE$e-X? ZW *MW@ **VJA\Kb"nsk)|B$fY67JP@P}ҎdXKHz^KrKĴqm[x؎\lB_7tlpB "%&n|?)fDl]U1bx8h'b 4U!ZĦKgϜ[&+Y$ jY@fVwR'~#Vl^s搫,SÍ_m,z]&k}rND$W.JEZl˴ $kr>,}>1 y:IAdhpp \gAl0KuО]}㈻NcM2J\݅,RC9 *!{udI,|^I!0r=& O1O{VU[\S |JΦ& 7xE&f\H0A_,y2%RPbOG3\_ɂha7ڵq PdfVYFH. 0ywO9Ec{jQL rh^bۖce"V Ă "ĉ̆9BQv#~qW/ n1#5N/w ㇪+x'A蛻'?>mE-fe 5;)fg(H m A2$ewPvp" w2 Ҡ(ŝԇ53pedc1Ҁk)MU"1b#Nq Kl&Ĝݪ1t<×9*'ƚ5P uIBWZ|)\8EfuyFp7&j>]Փͫ E"z<>5W\y7ckD @ґm:8L.g=ݠ %3U?KBr5(UC",K"T]~dITw\C>Ж !ҕtX7hF },bQO\;K<-K T-tعbB*` W’QY<AewV~y;J_/,?mV6857؆+',]h'9 0J9f9g0;&L>Zpic[TE)C:L󍐵N^Ehol2ˠ;$# 4mSHyr>ud9ޔ15W2ъN~GhoM2&FWIKzy!pSXW}ҿHe}R/Eth\űх(c2-h2}2YcҒ.X+R[|r˘R /WԪ҇07]o||GGΧCĩR$Yf?]cr]8:}R{?agGQ瓭׼&1/bn;O$UN{ {C/SF.< 7=m+ ^Ą1bJʬ=gkH#cHlMQyDW>Skh2?b%kbgՀ'mTWb[V}qR;![vH+l]PLc(|wL^˫!e=hX<5 ,հ DܢnZ_^oheJJ-RUPEaUt&CdRd4JPh-ayH_x\TadptݯHߊ(NvC @ٱW;WQW0n I%5Uͩ)gzg,:ƕrfdLU%`zmA~!j8!,W%iELQul(IW^`_kM6 8VOq;v%Eʊɦn9> p21s]&:z9`͆V:C׿lrKk TåzWm@ =+6ϥS4ÄV#I[dNb]FB[o `MqRIΪְhk MIVyQ%+]y*ט a_ Xs y.cj] ̀X\5r"[uK&ۛnB,a:˕) vܝqjS S ZR/rN{Os֬-_e4t2%dSmOЏ3׻L܈G<^Kp|lW9"C¢Emx0h;Kx#]J~DF]T@zi3VuhKg4_v {ϙdw[?ݲk9!QbK+I/x_C%֥hOЖR0GY&|M`ܦ#`\; kK{\d /w #d"L g.Bfr5ƍH:H { zdk׀z Bw63|rZ)O#Ll *TUSD[')3 R뵖N:^m7*(*-0C#A׺%5-N`r\_G&=2R4eⵉoy7ɂ?L9LLjeayF0q;6CN@ My%M.1J\yf!ž43]V rֆnRzCgzu8#04B; Y=9IG `QU :p6uvGN=%#QDKk(_XA7J.A񞂎RPe_DZt>zvՆބx禂O6* x^SXeqU2gАp <.s6L_jtŋ{e|}@ݞ۟impQ\ܙT%L<3]7ѲM}$\rG$d/T]6 ؙD+4Ęy%t=B+ %5䲐hb"'ǽÈAYSAc&Ƴ+̓z6_]‹'5m3A>EQ(E bk(Bz /i==< WؔA^`( qtRfszR!MЭsC.%9RkdF-B*| jJ)*26C+erGËilR%ÝD$A@>ԗݽ ݃}kT$%^;)ޣΧSUx\ܠwcIsу"v^b"<#ڌts*myAzȡLyi |qv|ɾBGW5MT} dyNO kDӹLڻ!7_65ߴTr7cVEH݉n(M8,@!]KG~6PB@A ̽_V d-:߶GgW=S-b1$o/.o8el@UTp:.Ib/ru/g>7knKoM?A朚Fa;״;3gu\4@_(Ft8  G[1E˓gE3RY>P@I %=%1@BӉTiq _R?4%6K;n3k^"N+tpYFD6KAhO7^nQeM,hw+b\*v58ʻz-ۊR X 5I:MLc\. 0U3j;KorZBMYP;F@s2n`N#.Kb"*֪ʓ@ݥ2mq=Uf^FO'G}r[day P63AxZA=AoY;]v$Y֫~,~@$<=oK{mO/^o\eĻ';Lf4&F@SKf4|IQP㌜oVAF3:/fKtF5Hn(.:`@":t< xCkd𖷔%j'^&},rZsX} H(<i /L"yuipyOomyFٺӷ/8M5+`WV 'röF2dK^ix2*+ Y"4vIeD)"g%ɽlSh+[e,t#@p55< 殣 zn^%$"ezޘekS$*s ۇTCMC+I@5P0Q ֜ڢ8T^Py6yON-p|=ݶh=*) O}+YXVeƃIj#eFjPeZsEZmV |%@Cn=o*A /0U©>Dys ?3bK;)fWA';%2TE(S%s|jV&}<̵1bXAKiJi"΄v5Bj:/N#S4y#)tDP&t)+@GX1z7L+rXH9[q}Jw22T;2m݌#̃NE}_S\O7%0Y䓺c}ɋH,f {yK*_)d`m>XXbY<B[s!E'$vouM q L}tBidOڙjTވ[m/I< Q4@E~@37b.،"&*-n?snpjSAuwl?ߘWhbn5F<&ܼɚ^clxUAaMYw>xYO%gZGϗzƎQt4)p*'|Nm'])4?HeM}oCz$lLOil <'[l]I  XYm H8g&% RJxȁ;7<H{%h>cl9w*X'̍_h;m:+K~i ;cc(]Ay(2[Yp*WkYϖ=9ZueURanme+ҥp(8U F =')pI}2*|Lul̕xQ};1!\8>Z\.]0BBR0K2꼅L=- sYɮHFK˝ ?6Ufe x]|>^(N *CF.Kp7mc6)r2,/pS.MњoRxU`UO2^p.? Kr_% }&\G-EG0ϣһ!!ͣ -bwA|$7i7?.9e[bú˲& 7mn3@WyH?hh>oe·,mG ".D gH45hb`\9Qc]M]R)%"gE|_G(7C$V>W~: ?UE4# j띯?h"KNPA} Qbqh&8hqձ,r pY:,6/o(-"^.oJ;9],&@d [(D˴ذkXq,S@^~&vQ/U F7Bx_NZJ'{ۤA]2voa-lB{%Zl;N[w m NAumVZ2Co.ED'5#{bMD7> 4/~dIg)ѓW5"i5NM\P2ގF4T">u @rN|E &!#jr7nƴTjsK{Tچeniv D,P{Lf-b/ՌgtoP?&9d@lbt&y#8&#zPA%D7<^|?""5bQQW4y#Gxڡ3,D,p?EߛTF^瓷 aOu8;ȇ}5]m噩fŽ WipyvJZfazjJ(2-OdݍG,~d0 'd\ܦ㢢Y]{6jTT-|5Sؿj`Fk/+ݪ7Y!$߭x8CNIS!8Gm.G&%'HݭɋfZ͉Kҧp~7p+鍾{iYF1Ў肵ݨ:"99){=;!&`5Gx KnZS3tU9`YŅ3K6B<(Uzy.:`[oKkֽkOE8hc,5U\x7$^S0).+,rhԺ>#+V 6R]MжIU HL4*B{SCĴ~ Q T aͶֿ`N#Mh|iвAR3w] V->%Of \3ڑ&: >QW-e8Mcgk6@{鈒(7Qvb*0Pr2\9eTRȷB~2kF{C50wc#tl}Jzh~ǝ[A%LYkDCEx4mԇy F27OCj@%>֓Su%4,|AM *s gs뮋N7E$$˦8)[Rv?,89;aul0xdTjz Uo^KsX/׆=LFg(T{{k5N5'ড়pJ l5r(_l<3Zoc>*wGB/u mɇ:8F_\gK0Oe&'i-NObfm2z$/f~՛dod;~*OYRy]6Z.9`55Hdzx9p&UT70ZAL)E<^67iI@XwafaMBߪ>=3MV_ll$a,DTh [n* |x}dzw~M K -k$߅DPj'3{{.{gDg'st l ԰f&]xJJD|WlN:Mr<[`LhZ?k1fA 4]=fTs:=Jiq=j.4dn!fAVoe ,1g> TZX:-̧AL N\ [4(oRJ$)͑/=U*NGlj5JW򤄘UVPxNb+ 7Zk| ,iiV'W}V:Yf3hypgﲸqOJ7ߖ %,רQዚ:.{8}I 䎲8r㉧mr]Ƭ/rƷ] D|*JSāORđ,Oމ Oq>[e<D@@R&6!8 ݈Sb-?M/*Me9H IvA|]kp3Ю>80|ĵbFT֘Rμ\M3C (LQ9GM8)KC?^͉ R@uʽm#uO:" g/QeQ}[o,_S( QX! $]. S!xEǷ4Z10省w&~Qs9r+V1OW`=a~% ٓ;ʘ~LnRb:ȂHձ@sf,[\1֡p ZIz?}c{ZyaSL,$א{pr-.H#rY) ʫ;8榶L5–$<oK34O3Zdbj&% Nm< *V/3eOE !n+%)'t Wr>RR-O4͡!J#15Nꄊ9%tY?FGg[ ?ikA .Gi {t) 44/@G/ D|!ŐGhY|ֺ{_dc@K yRO&5/|FhCZ(i*~^ QsVNi{5"_1'0}6`n2AH>ire8EsE{Iw QK%qV~eJH`\fuwaF(μKszI?"4M(Y|W˔G ߞeÓrWc0D+? EK_1A1~HzK4v1M_տ*). 꼚9-['@X^1d6WPbju] {"S8޷=@.egY[Q8rԲ< /?5[I3RTܮ_1mRNږ-/+VFg 'k T6]^#^ڇCflG'^f*u_8L^ VrH{g_$@)g!˄reQ\!^f:"w dMi^LF9A鋓s( t[,< keG4L6C\X_:1'4}#+NAUzBrI{ّovAR%}yI@u9X21c^O͟g&6f ZHJI| ˠ§oj@g43G~t@@=sY~ugxx!?zo%"z遻ە`iz@w9 {Y쏉pg+nQ"嘕787>l@O& vk)\`gܪAW7½JL9 'bw1Gn@|*rTI4Ҟ#Epu)g+c%'}HJ,@F"MaAIݽ_7b;LQzշZS4S b&#dS.',w^ghׯif6BSEA|;8J*vrPܵa?"b i Cpr.pL ?u=uFt`DL’ߴӝ..58_Esbg0m^,8 ~H~Fֽp8z+ TLGQ(V_ V+\]OP=d0InHR+`*͕WAΟ!sES< 䔻4'``j79h В#̍t ȗSe.CNՕqw%ٕ Gݕ8 (3 sNˏb @68U߭:E()SI/i{ Bi䧟 2K#\K}׸dv|?K+ ll3 ,M0+%k 9 Y C4JC@:Pm 1fj Ōt6 EӬOù\ߏYm-"\Nv,a> D_/85ݟSq} 2W DAS"L[FxƝb<הٴڸ+g .ROsC_t4|%'[*$o*Rd!LU<[jpҊ79؃pon=Z?Z&<½J Z;7PD%ý#e& I˽OxokNtmB9LḊp ?*HM#4f/\f9@%kJ{FHTbGf'8 T>B4 o1r`UQ⸤I.6!xFmKk taO^2It/eR]lXy 0ÅmS u>&g"¡߰w Q?dX{X́70Y ,),@&ўnл>ߠgԸ}5(2v mƓJ7PI21Nkذk<"Ik9k[3[Iya ָ) /]rCĒS΂|́^i ┦#xJJC\ \qHIpb֜!`53kl{ժš~?av W,{2h+ܾ4]`#;L|&+(FI7}-# O09`p)p DTt;֠U(]X:2..Ei%]Ta*Ԏ id.#=A ݤov |Tv|V(S|̶f{r A5_hb2rW V6"-3*YIќ׎SvsŕB{SAls_ \@ىng5'*;sEh"q/we_|o)m}ϣh5&wQX(&/Ҫ/(aezӝ}? թ F'˓ =22 vIS?'ߦWH#jNQPG18*77ܰ?:R(:R]1yQ(*3[Q=@03-opLqۥ*Uw veyvMTry`'1)-4'U Q2ߦmK;ۮ(9\tRPΩ*^)v}W:ү?HRK X?@Ӑ9 #ÇךNrЫFn\9 $}lEkVl {'w+Rٖ'.zNoBc; 9x=W~1:c:4)Na*tRzA$ꤦ8i_ !5 ho0_(*9ֲmWIjieu!f2n}\ !4^OAދ6FՓj7tMi.z+eHn!9` p $ f.\o&GP{pu[ 9'{PYCKI`W<\YIO1qr VRLF:o/dKiwa'bx6nSsECnd(5Ux@9&yFiAͨwp:3LIcgҕm 7E:S1lH|* ?pI T?a歉FH+%i+#{2kEN ^F͓)t])TƱ|6g<`KK_}-07Ӱ9X٢[CQO.:}N}. pEM|&9G&}W6q !6%G?uL2xd?3-{>s]|Mr?eh˿pXWj(>DXg:A=Q9~(?-=2ƽE:,$G [5ՔvT؝abD)dd^jHEa ҥI'L2n`;ZU˩yus AǭzQI@_1^a*KIU~߬vɣY^1+XHU̡"Z Xv۠''1c'[-gY-܈ j *r9gȸ1%sf(HFV܈ڵ5&C~3 Cܰr<+O.,N2b*t0mkR6BKĄzMKkUߨ(RR &lwߖvc e]Ǭkd ^Ӫl_|? PX2go7de _)-u?/*HPEU0@q4 w=Z!b/?KhP?Zd @N0~rYH+㋨53eϠ t#YuWʨ$uL[u}/JK :gkH/P55_;ܐ5yOϚI߽aɨ]AQ^* 2k0(}|`]}~ޫo?'%Ut&.5,-:9 {sNEA ޷NS9b^7d EL}śm*!8׬-]rk?LC5ӫR] N>4g3 &o&쭸]׻n;ΕdT"79_$YOt+sjSṞN !ATCQAJyzA/xUZ̰nUfalj{UHr'-rS,?≾gw}Xj)U?C+cIH!Um#<=3鎼$b[H,7Ax&@2E ̋<\\[(~`8E\XV 6vablZВ>v's)^qe &74ȞGHx*3cC#D}-IW|C%Q%Qt"p~_ ;q( W2 S̕ѻnPbnx4nUFrdO:LX@EDh N%TsGL@* V%_ex+J&tO{4#"[;aF-̱{vՏ:+Hwl )D%B /fl5#f$ݭJM 31 tq=lڊ"r0X=+/zfC+AF+iNE _5-Vu`&9ss{t7$~x"{BO~A]K%tL8vJEbQXAwj|jPz8M+JxF&_Ou_FІpئQ 7EWmǭe,7zuFGe@Ujֆ%ٙ^e8F1nhqD]x0@OhڧWхTvL0헠yA,]o*) Tá1̉JDpY,-O0s+V+U tfH ;]]Uy' Kǻ$bBque:Yp7H<ᚚ2z^Uwڌs8Of>` Dn*M4F 5BN%znO`7k 4Pu\PRi](l$;h["ҌEas?U//Q@Jnl˾:d/Ja_9+OW&ҕ8ǝ&MaSDsӐxXgh5 4A4LE H#rWaTq,2ߑd`R)$'E.kՠ 7UJ@dLat8%bfK4SR6ЋϣiCbD~IIf9h^(A9X1}4SC &13s&>R3;G/dQC鿊Ħ,䱏nJO΢3Csg1E6#ю{0u;J8T˟fw(Z;]{9t ~W,U]V♐ rhQI>)Z}5{9 Ac,a>QE"l-]/WsL A|*J4TĴ̡q  M&6zoL&a*# zB|KƋiZq\)p]n1.5S 5+.WeF YOuXyPϝ dQu$hwpX`s_| g^l nŒwSRŠ#' IaU1q0Q`\}d7Ukg Ϸp gk(nm '5Vݟ ֌ |EY?'|4Iǩ Pn9Qh5a4xXB!3ވ茵yVPX'7E]T* VSyW3'; Dv $j?a@}j1HWv P8ӠQzDQ62-E=nK5 $G%,AHtYFDj ܬ-KS'=;wyOQj|O>M΄RwPTop&$(X{Wͳ`qHm k8[ƻ}dۚiI16Yv#CQh奻ënPyٺKbP"m_X䔢=[( }.[f,_ ?lxdVcKb#+S>܆.^\dNJ&AWg'gB1ճ]y+JY=n^]!;΍J`֠OFyJQ8VS`t y̖㳋!^>П/tD/-</GvQ:[5;+3 \ -!hŢ%D+^@y LLy}ł%ʻ~ߕCn?Odi(YČU[' EE&4U$ӊhWxMG|b>U//!^>PeiNΈj?ir#-Ē%0];X/\.Itϱ&V!* '@LXz#m*BK$%|ΑEgGn8YF#YqOgC'5!RSpOl|ľyݱt?͙, %ܸؗ9ZpPss3:&zkh2N^@zJD;+rŮaGF'B9Dm\f?& 1E#Rx;ݟ"?|(_aB (@bD%ߑV0>-7 `vsK`nK&^U P/(jf<'wsݣW1ҬndԪ(l|@1`vʴ "ywoy0 4q%x6ǚKڹ%X?'7M2G͜(d6[F40:v%l;"|C$KrgV] 噀ܢDAIN'8 /P$1.PE1l/LZ y-7H?r _ j'GZ`=#7.ߵ|IDIXGNk3,ٙ4Q#)#{(ּ"93[L’ wV?p—|zFܕ8^ʶN{DA^0#So%RTrkTsuZt7zk+f~1%*+LPWzD=.ؚN73eFGDo>Ɂ䃻Z@Nn}6]jRYlE:RZԯ[T SH:ۂSΗRLs`E!&֐'mFéؙu.*, &Vy]'jeE%}Է\gUR" j(\ksR϶C#˾FO2ůy^%V_! 7O~"g'TA~t zt(0IJfғ'` /rd pˆ\ u\G^ ~94(8'䠖>+dN!z~hI˝#}p/M}=2f '#DEi(aBkeJ'Rz嵗iŐ ֱ]. cBy^JPӑ UIZ *ܨT,A!Vhu'#C`c¯DwUI7Q\Y#wIup.=I~ǽw[+B5uVQ:B|}]zo$|q'-',^1n3=|"E, $h `rp6Oi=vUC}A7c~zHE]+'y h͌9.olA}̹@ࡁ'TO;P.![Y̳b"Fs{6X~T#56o( 1# *|ܙ^:w 3Bz (߾tmb3,f$+K04 /.w?='&B}INlb`*E Ffklϼy]߅TlpOŔF^>N4(;"ӛ!@ʮ˧;8 Vf8FB>)YLVEg6*ZNZ;7(k;8i(nនuZEn MpEyNȎD%OuaZZ{};O ڗ)z1z`-)kIS)%M/n0a؎db ~-'d{¯ܥ5{9|e9h7Xd_U%7xG 6#-%:ۋgM?rxx&+VةP~ ׇM.kpΡ#;JѰs?QE*ITt /2-ϐ"ry. NMShC/ b[ 1=^-pTZP?9Aϝ=IDK,#R~Σѣއ2p7uEF]ҭ˱: Hc>q`dc>C\6 By|k\)ss*@f_?낛X|חZW8!tчmNf^IJe-8 1WMѵ= Gzb 6e jD`AyL0m;6[_\VkO9)Id+p^b| ӵ8l3w(c|-yC^g\]ƮQRפٳ3~%&.v_.nO}$& tR?!t밮VKx6`ׇ6Q9+W/cVL5N|R+:;yzgZZ}pM5~S,Dd]ܑ݂Hsd2Uro-Usj@ڵt}c~|mxUx8#fkPE پDx^ʈ8lR{"~`^fzj@ꪖ2fZzk;ډqOmM>bR?"+];;Il4B;I{Kt5jCڍwq$JGu4QfeOyRHIOn'P τb-^8CzyOˈd0ޑ@>@BmLEX [OF, TQb4xm:~ eA^GjqXIm4"+@k =H& uܩ2ZӶǮڧ1vl"LFj~=j[`g%̜KST|Q>Ӄ\ ]/JX/^$q20H),㦞Iq9|! ]ClkG&DSyuxWE1Wp`v{ate;DYoyyTE$Qqn1K2mA[3bJ-˭Gn; pzاƆy72BK 5>sPPn9+y8c[+jNP[`J&e3 f@)U@˩l; ;Z(K)G#6=oE@V? _vswf lgE`$j~ze֔PБ߮Mt϶ݷTGòF)aV\c:߱ʹ$)BV rӫDǑ}aՇt"DcSr~ 6GS]Ϋ@_Gޠ,TA-R6=_vGfU 8OqHaȏO&J"'iGȧϧ WS1͠Iӟ94bPډQ!2D*fQTP}]vlLmQ|2OV<(t}t. b l_EϹOeIpwK/ǣJ2ֻ;J[|{KLT_V]72;$O/.+!Am vwr9YAs޷wr3<&VAt<=U/j}vd/RAO)[!αHPc^Q6^E*tu ?DSSL$.-i ,rƐX:IkCqR?i*". QԪ~SUGʳ6Ef٢UYa8]Ty`;CSכP=ZJfJJ[뺴⍚r8==[,Ug'Vg#)*I!+؄ yQ!l2lk[3q"yœMۈsSQuns+7<%ؘ!"$ ?U.>t39b! J~#W9m<$(+u@F#k7ֽg<8 4$^0!*t8{D +ZM!R[S;d@c vdip{.A-LTJǴ1Ddp[B]fQ:ĽES%EQ̷;d;g.5Q‹SڟDP;}XD lxfY;ZC۞wbR#፻'^ aYp}5}t@pŖPXY-lzl|Ӎ3}ҒThȎxZ Cl*^Keᬛ]i;$Si-/ㄭ(YX-dWe_;j\BЋ7TN n4D|,dLWS99mFFqwqM3wMD GnEGs\UE[dMgbjuF_ZO~(b{^@*exJ:j] A5+x#$49o]qb NW >%? m_IAE ,411oR=~q9u9 . T}X5?fNB4ΧY/ba;h> }$'Dn r%u5i pTNhMuFЋ`JfZ5" %`חTGLH!L/1!pnB7o'xO,T~" .-7ñA̛x꼽 NE?rL)V8Q?"0Թ_+%t/Yn0FF*6a#B&:.S+I*$JC::z[ o}+@ux~'NxVCxlŞ-φz_45LxӞ:`1zɁ_hp(M,+ZEDvϛFi/{dQL.޽1( ,95'/?L@_z4\fi@G4q{ΌՕKR x%^l `*Ep4N=khMZg9lNW+,qBic߯%|_εV%?P+~_ӫ=Ic[x0EU `Ӻ,R$rfl2R7 ɀ&/5\n 1 kl*s@r}ЯYẒ+َ$g?zZT ̫MiWz me)%"F`,B) +]Ǟ"HXRk,L+Z51!qRPЖ"qt74h ~:Ǥ`G7uۼ:",֛X[qsODn" |_bÃU t`Cw7݆WZ|Ys{!&[7.[Q@67TٴCot-SlƱR?&lkH4;I;vgΕφt$[J-0j[+|j L4O<ۭ3M9 4/n#Nji4J/W.GoPU;sSm NPCڕ~T'./x~653G52p^}#j|>#!(w. CDŽG$d` I~Jj=139CBکIV98cţ"}Fbf{}<퀊lӔwǧ&)N aaH<ֵ]AJ11&R0.jY}|`W:ۻB.rCQ7wYwh(Ls<PaޫDv c?;w "i㛡eR2գy)<9PBb*[OvMfɚMfxͮ <`oJn P!;p]Kmy:O몲PR '-X\Z|Eѩ&ڦS_vZc8!Lr"_FzT[.Kmڞrfԥ1e}8اBGUі!+QY.l~>|#CP@,8O dWUndthw=bz;{7ۗ*i `ZOV#`0shOI! FGZAŎܕSk[Q,Le6geH ڪҩt/ jmP ްiJ)X g37ej[Abx" Lpn*7BC.&NKaBأZX`EH Ss5>)tiؤ 5T(S" 5̸y~hgvJU&KٟC4dipEGk2Nul%)NnUVr>z4;s|gcܛ+i Ю@yN'\xMʄl%{_E.Zdfw:T(l;_|EŸ-\k78כ@+~9E "j*h Q,p}KÚ0FHXR-,<`0i3G!a?z꒓B H,%2:C33Z0L~:榕54mvĢ|xGڶFHG[tQ^64*K՝qJc#[0MSK#< #U"]<6aJ,̗C3NJ&LfpX+"ބ|v!;鲼5-&vciZhq?Ğz2k-5&\T:N=~# Rѽ@Vk9'u{*̨̿@oV,85(!}bܿ 2~\J{ݛTjs 魭N!23 --#Β"]*C؀cT^g L98Z{7 |#E~΃OPyH,0E8xȯ݋rW&+]eeHTHpo[ 4:{[Gk;¦``Tu;fPϥ(-D+LtΉK)AcYL\oR y\?.'Cǯ \v0Edv1++I Ut{ J|70W[eM&5}z؄`GEY2HT3+B ւ{_.PIX MDozG$>)tQm+CbD@s+~\Nݏ8(c;) דs€A9ʹޯkmT$'YAnrt0 =I3Wh!xif*.ERiOEUDB' קĪe*foWW°y'v[6-akkh=N`}O-u$F="mkkRbx :8ba*wz5;'5V f˶Qci}@E]1K'4=e jvtc[>ӷs$7VUZTBJڶ03qr QEѫF9+~α'J~Κ{zvNߞ4AmOJlҥ[Ҭ $oiO:@+`΀[sӳxM^U W[{yea泒P7O Xk-~xH_ӵaG;Hb]hv&uu1cL(XMZW.>Nƕhkr6% Hh$" O`XSRUк.p.cQoE{u0XTWXۏ5?uL*EVdOSZIil8[mםCj/ Y2:{*rJVP&ˈҒ^V2lxퟖ !E'r!v#x3M[[ŏv\>^Ȑ󈿎Ub$\'y\aL|c[A~A{Z!cſWDŽmbJ7T g9&})t׶vmMiBaG@b @-_F HKyɟ;z"O/ 9QGn~H;3`&љ=˄Ӡ$laϘ& \A3 j -6Cj7{'3ƶ];GI%ұ!@NL"Ә9{Np&HLYϩd=eE1ZOJE,DCFx pqa fnF~&l[ @H%Pk.|o=+E$.r2|/Facpd:de%f_ 3iyح<~"@re2 v| mJq!e-JF  T< Տ[,\kKPh:CvB=f\?z ccc[xb"FS{|NkN.2؍#ófQ_Y.3ty OڑgǨ` 5wɀ0Sg91`ޒq[xX6q%58T\XmBY tN4:~-Zm+ _ ~aedL pMڠPE-BPb+ٲ0&ށLa7I&o?TI Y7o>X.> xbZy!xxki]sodRKԞ$El"=s;S!{ML| !GJ2{oZ5MP>>"n)f‹> T.DAziħ]$!2l3ȊsӛN c.  AIIp͏_R9m:أ$+A\g7)VǬZ@? 'UCQӺ,8Š+.M5{ÎFh(ς}ƊU@yW^!yǖ ){"5Rh[wBϸ-Bn9BM(uJ1I2^KfuA)qB&{]> PpIosp矃 TYJY%U*SH]-nIB^h6D3>}d޼'l7oPGhHł1Oߥ2?rozWjc\AOm/"_ՁD(vmP {Goo3+o:?"^oXa5r  k, cM%tyQKWm[X%._qJlU[e6ҫ|9@~P Ӡg^un5{wO5]_`mö/u 4U èh{}@k<4 kV9lq-Rg :ѿ4IWm3O=.zps𬶳ɡF륢]m9("%K**"$Du%ԓ)lvVJoVbi*p~3M H.HO_{Z9 ʂ/ܹ XEv;>lJjxmRf *bT7%\U SFNEvxW_CRF!gWݝ@h>֥|K lHe@)gqFѱ~td'$+\+P$h-!ߘ̹'za~P~tc#q ɨc$Ie@y9&@ucp1#Hzd RE?8(21o-,sUI]a%@BX&)&TX=RFN֥#lUV/ăKpWIi V06ʹ%wr&ײeReZkUz;559S- cc>UQ݀A]zFdJ:0q>UBQ#;B~ 5}B#0t^ݛ69g$.!IjQG^γXs{:~0G") Bz|b RzW5};̝FY!_/dہ 7v ;0;^`48_AZPqVqK^Њ䱅|a?9"jo]OMȤ{Q{G$bH*x w |r]#uI{]Us}Ňx,~̯.zG9e"=ZpTi9Z#`3diTѨ˗Ϙ[%/~%P טhxWNfgޜIWB$^Z,^6M%<#7mFqaq1=ߋƣR! ;?jlϭ ptG-N f ?|_7Q q;8jZ/0%KPŘ)_Vg 2^~g y}ˋ) ?_2TPXr,6sȓbE'[bSh2'uIQBmaXmzT;;Px^VԪƷzXTUB1,̔覮K7 i pB,uM)u, `xsdS`&*D:ۙ ^vOٍǜnCB^FV C;#UR? FJ{__w@rbuh>ԓd~_EiQUlC1B@Jm;ϊ޾rNeH72bykCXZT}nT&ꊠ%&p@uՙ'_;_a:EhvAؠt9E]g@6əT*?=NA?^)/h&1!x%uk@]غqhIѰM>z2ËRu滛kLpƍC6d>Q_(Wd,p(x]<7"a@ϕ$ 1̩2QK8rP4Uiwb ''f>o󱛉WyU[81b! *(JZo~ 鮒IB pZ޲ͩ\ށWm4`ض Rx@vc3-40y3^=x\q5nx_$e8լ3ugq5͋a  ׂ;.$WLzDkjV+/+Vqh?fO̱ "4#EhIh69:|lXg\g zv90&%DDlt!H)qRoj@Q!ңuEyI&:ɁWc0"(=Bep vwJ2,ܣS:fE\6 \EOerBF:9&rzī)Tu=6Y.B ˼:|}Թa~鐊$FZqk'pmh?bppj b!k2oMOT3]Cn8W6V;)[2~j ylC8@:eMq{N '&N~)A$=4OcNΚ|LhxG5z8D? fV[US}r pp9 5J+̅ "Hy6 Ijh.MÝGD}ZϬt x] 54d7(z6&SDbƌ#|(Q|;&6GQk17QH8NAzKCFH%b &.Wtȯ0uX,UA)h'h|]pyJ1QĹew5.H"Nx {U}B[n\qu$x6!ڤ\P0?8 ?Ji5uJAXNf!4xRGEpPoTa n#0i߾X(uwՖ]bJO;Bed(Qn8MaFfV:Pr\)j)riѷ`j^r2״!``T.<*U+yIG<+w+xzT͆{7f`FXVWeVKQ3=q~rKf$;϶"BR`g,O؜[;p,4WK::tV8ވ|y2 kU;O~GQ_Xg_Э25@m%(/@Ljfoů3O'_(Ŀwή4 K3(T:8lr]r{-]-MvӉGvZ->BmIjoo|9$7m'̦F crC8:ѹeI \B [c< =)0eÀ>μxm(Pꢏ˝ ea9Wŕ,_/ w2D!fndSߑG P^o*!YDp(߮y S)[(\ . Uc6PO%c)jDsCM ; 7:r/+X 74Ǜ'6E9Maҩ-f4]D'T@b]||Q@(i^ pf`P4j 7) oјo˥s/F,9WkFz{{!0ż%[8,Jú@"rWQ UaoBŧs B{t§wZA[oX^.?)2U 96[4UOJaظ밴6e>vk$fͣ|u)=Yy۬Oڥc1hzµSXEذegp5Hvpٗؓǥπ";܊mN*Q?۟oi$s*{C6Am92#c%ZlHM.Ar+@`IkI9|4KS!)(Gq$.`WS 傷+l9]D&ڰH^Z! ͒%?Տitz'Rѭ]X:|;3$|l6bx\=~gWP bX͆ /n&)-Aor.c}=މb2 LLE4њq_ Kgs3ǶyXk;DMQ\MȦ$}4̖𢮏itP6~ 1&*;M4ټ^+菿*Xug_Y:QkHTp0ʤu~Y@i*{W V/g0Pۏ"4.Dɟb΀wjRCfb{(4DHsZ߁ʏOCt_dU&!Tα XKJe^z]8:Gan;kF#Q:c,ٯ~9AWww1a"cC+Ly9aѠ vWWWz^kaNj|"#?1((%٨ E ҔR9.YS%xf Σ,i5⣦$gklw藾(i)D0/a9z}YOKP A49(!i1x4x\ݛī곥]~dlB |@ƷZKS9('ˆn7D=r˅"!|! [JT@2;sjs=^/ L; o:4 S3*н@. X- j(%TȋWlUPCqN*i΄1u)㬪%PDؒ+bޓ:iݿ5-3W`oļcrT'} >3)@̽s.:KPJ]W3 ~]yVҙ?J; 'v'JQ#CMu<@MWMɿH.jr@VO2u|֌O}hfH }/[@@U[雡v}'߫i;~2jɻc4ᰫxcS6QW-k 94 2 Zw#"7goBf@IV |&*/F1Th1rKm"qGә+ ܝL(yP{ˉ{4 PcUvu36l[Hą|DUݑwmwV G>:m%0KXDZ躛{kߔ.QP_BlaU1VJNu xjh'(tPfc`ӆߖ~P K@k6&>8ԅꢀ'(AotHo1[V2[)ZIHMؠRX0&b te w ӇJ[ȟu$H2*6R43+L#2+Ѱ2 88fH+=Qn^W&jf:n1:ndށ4Źty ^nT SrUFDz`ς6X%'Ym2'_#:=kA0蕮'| %a݋Ci״##C'Evх@KMlJ$41Z׮Ѥ$K8MqI{l~ _w/J8K ܌Pd1 $1Z SӘ۹R L!9B] nCp4⛺s z` L N9 #|mմ:}w6+6Q w=AxFwc2ȾYd)84S$e9ڋ#l]2MV7=y#:T]~ؽlYyOp." s*-d +@&M~!pe\ +_Ħ9T0~20nT?f* /aᭋfIzoZpIy[ΕGIِC=W/ݞ3j0Mt1z%d՚d$q{ɸe$:D=|"ioxcEu>hun#+ f,QylUHxۉŲ3S~ve=+ z._޴rΪꯘ%1`>'WT1Sp  \ld]Hcwɥ%𕉳KW2nxw;9$wNB"i nu(_1vDaEݪSA]d\ ,JU4BCЇ P9lluhYgY>'Sj=veKqEۊMmS<*2ecPʝ o] ~g-wC,NSNPu閰|9r 1KO+vC{ "5ӶcF;i׾ ^gLMgp"U} 1:FQz0U"g-{:F†A"{,cL'i&I$glF(GqgV.HB73?ʓLUgJ;{U/* aP "0 n14h&)a>VTno8{J*ToIuK)Iّ[pn `7W#%>\')ŏ<~WE|B;|zJȶGᔛ)ng +gfO!5=HZ""n((TӺXKA^7o&lI0~VTVnx>ewWkR80 CnftR %(kY07e,ycX&Zǯ9xhN(c#$ԓfPp]q4kFC?+3mrfJCپNtcFZ̛ᕍ\ik?@2EN ;zyڸO'06A%'Жi M KxwwXjL՞,bf]|2V9Ba ;M.CT"ytkp} TQwE xTb#wc82p?]V0:rFLwcZEb>ݝ}0W2^鑢p|ǗGʣʣ[.ćr aS$ ^G1'č{<يF `%@Ř7r];eHPG'ތ򼂻[)GI1Qƃʰ&UkFMts6Gs, ]핰1>Dp@.V0vrRBqq]HhG:$q'K=%d۪m@,RdPJ uUfa@CEB  t/FK}@7u/@ ilA'a%&,\0ӮU|~RMc~dܻ.^3١N2ҭͺ ϑ78':Z3pHѠ-@V+g \,׫׾4#l.<Ł iT@YPׯ^ߗiiD%sХں|%t=fofHn84]ۥC`1zuC^B骒jqhn+4ɗ n=*qHc3aNQߌ-A &~iyfw+S{J3;ntGS ;xm;A}G\Gܹ#>.re67@랫Is S@n?0)0)#+X14)Ib ~ڄ AbnRvn տG+Nc5} 1>+rW"n+8j]]FjL{b)Id*h+|/G=No(o?m ;zߣ.li@}n" H”OGy3NM!x':؛gUM[RtJr>?/K}6/ktoޏ$b8E[) %&7݃Ry{9aݟE9Eԭh{9b @Ѐv CR|+>=IڽĴ#P~EA/ l=\XٿOqLvJa13u{}#M٬KAʳT _hu-5!<)tم7!X"BPcmF^ q:25r%47ys/?fn4㾺}PNfì!"1OL*Ke.)b_mMWحd볊wg&O NW2!ӓܛcG%XFe*M\3 U5X+H ,?s M;$sÌWhuGDc{^2)Ȕf5W G]_m93і#_hRu12z{ES%"i>ONQR~8Kp a^uj64>飹KlӖF6bd|UH+XΥG'#;pxcʾ*T7E0I<a7Hp|ČߪR2l\ 1l\;?)$Xo!z@RćJ]&ق-MAmKwmm Aя+f<>wrΡi\<{b&Ty(+Z=2.'xT(v!v}2ߡ(JGn181Mw08 ȝ=vt~\NWS8\9Ow'g_(9gc['C9d9Tz ŅucpMC&r*#+mO;м>SCZwAHTD/F57.9<2%*,7F-c+b# hQN?SY"QݼWl0J̀E&#USB}֗2@ Fo[I4YBUL Aj=$$ieymo W>slcNE4yѯM"BSFZ;^K0I}MNoIL[ek\–i 49ӆA`¿R5 mSr>8_P7HV5x_x2 <[d[& ؀w6ӝ1(&CvTf!E^ښ UЉ0xN<CA3uP$3<(x5 W,T*/hD `F٠z҅LksN b+mYg9T5<5{m*!aS{c##ޙS>=^A~e',2*ãE?ai#[Lj T[5aR҉P49Q%M쪨*j{8OYDz@rv[8JҍEzCT&]5όʭ";I~ .7eK(\<!M\ۻSE,rY}}PC^pmߠi#L=a4Ǭ[Al$`\.k`5tp ;6PEs"SY;9𵺰8lEcA4`z-R4S}8y"˃RZ1!FT5vSx"E@6!I^8w|:vJDs)]>4l~oEn}vd/ꄡ0 Il#/pD^,=Leuv=:dg髻O rqXZx,$)Ogn5½K7$PL(x츕=oJ[͆8p-5٨4CWqU3S0*nBx+Zw~R W ĦccDd{V6Q",,Ne-:j F jXYB 6Ю!ϼ1qB6%kbء>}^GF;+q:~+ʟ\qIs!He;;4q!ld ^zpy0biqImF7+]X9L4OP#A;t%ևt 1\ ̊=0Xq$J=/h2DDa D =zhR`T.(Ρexʇ3q 9FzͥVVFX7VHiE߼W Le45Bw/ Umb)d=ȑ5{wϓ>%(PR1ǹ[Tή$2C5 t6Y%uwy6k2a/~9VGٓ(30#݃&(ެ@mv۫.'lxEOR?sl8m0Q|>CnAK~ :r-+;G\†ebQQc%௵pN#텦"ePR/g}nv,QLܝgD4F͈ȋpb.Ü~{͆d#4P}TTn٦C?~?OjM|-S"*"'w#=nz |;\r%cKeqenFDLdFF/MMM)$ 3*/ן5m*YX V7mѸ乻sbgg r|\z{Ͻ#:aH,2.>QXjt1E@VGX;=N% œhqӹdfrt=}Rb#AN)YHÙ#+B>߿r祯xw'It:j?(7Obj+ l%xGкai1K)s# Es'dMYͭ^o;Z4} P0XH,aBVm"& F~ⰵn`XƋr8^Uͮ=ޯ;3Y)M[&ЖHmtsx޵b-,D,ZqIv>Tl u%BlgΆLi2Ci nV*su:foNM%KK kLf+>R"#H6^ZڰG:Lq:K҈Ǧ_LpYh7[+eSNk,g\1YBY/볺bx#)?./$M-sn3`vx*N434Ѥ%BBbMf-[ӌ6 nݷS53Xʯ9MU$*GAhɱ 8L-,D!>u79,@Yd2fn|0aHC?tN|o}jv#{n\7.5 ([Ȝ")kW].?Јsg $ls)5D$5:zJdDO9>Fk胾szf敏TEcHD~`ِ߳QEujɿw}~k+#h8˄rsEW:GIfɺ IN3SS,+oDֵ}to=gyQ%9(&EakoRD`kn2;H.jS ˇC|<@$ !$NC;VV@" ۲Li!9Zh$u2mDZLsj-9'dedF;=ܴǸb{+3%0&zwޛ:wFn 8*T\ߝ\T\/pN|JΌz2 Y۔)/S^PԧT>a̱jVЎ_CS{ Q6JZ|}"*QV Ԗ) PEOduDM0m֧~Pʘ דA!Qݙ]Z !лlQ)JKVN4 ྼ8p((3;Ȯ48TaXkԇ(2G? qL #ΏYL- X\D#V\h JEu tRZİŎvbڮs3I8N#/jn[)myDI._0.ڴU +m mD8)LsrNo" Y' M%A`׬HSc8JnSv"Z Yk.ҴQat-X#9i!7BWK(+dX3>aPzn- !Q\ᒁ~sYյX88TF‘eQH0#R CYge1%AU)N<ʜT>/z2E*s%P5cPC0vX0FSЎw;*b"im,nz-(d8=,&vɈgnZmY~;^ l 9Kw}wx^ 9پ d1ClROӋQ/aMCMޑP gֈ:vmY/c=̯~Φ5_yhQny."6|3`x3/4}f9rZu);ߡڗ3[}C[45gFE/K\t Jh9JBO. 'K¼ j[RlX(O9뷡5/WwCdU:ot kVehSXDs[kMʹe:B?"8O.b(3̡i^U:܉ ;N=%lIȣ[bBo'ҒʸQƜ粗 ua8߰pI26rTb(b_U` P}TbU4|U2aikpuuIC-tΫ7C^ D},%5vV"l jXW͞2.f5>y4NWس*{ #Pe$RN <8[IPqY]+ nCi }Ȓ9 my[ pke;i %uh^ :?|KA/L^9q>T~?WJLd ΀&Wqa12ϟ hfZLe DK0{U9zjyt;% ǢVXrhkEsC9'Ds&TRlDbǢ*b3sX@W~9~[0q(J] MG{-#?60~j0O׬3w˒݀Lj}SdD ؘ:G嶵'n$@ߛʘb}Ry.H8ʐe{G/*S-It7KO\B}Bkɮʨ!`>qlE9`5riJA--[Vw1: (Dd)Fs?PF6jFa qL RZ^71vuc~sd6ݖ/k=܃N }+2v)~p)@Qi(g#)N>`ݹS cOt05i$+!t"H`WgvbLE3~>!@ƔѧUFޅVJ](7!봬Ζ7 m I أd/~Bf^C3 ٝpT/[Y(ƖIrkZi(~uYXɦc>YVQ* Tv=h"!8E눠R9hl8 LDjS)۳k!K:z-B% e@Uv ȞwdCwTe?r=7nyv ai.=Q. |ZZ<}(4MZij}&tClƛG٢btjQ' U9'gyOeL'"!lf5]BGtO!M U}" wMmwT+10wyR1n7 6(IB&T j8C"[F32Xj1m{Ad ̈́I#LD(m=#ܵZ`Yʗ]|M!MJ3Rm?O:w".l'8b+Gea:*lZ6?/WqKҀ6yLC"C}'/''e8y4Ȝ7zx>uFA'5Gβb$b%W&NuaUc{p!tYXٷ*D oAS|Σܸ~PQ"wk>GHPmg/ e~g;]ɖRD c$oQIzKt)x~-HZu} D=ώFn*myGF#3[©% .FBzp/:-I~)|  atbO Uiڗh9iȺ@PшV6/UVp( f-9˱wTy<0ū&΅j6{REat`?:EL`3f±nk^d}ٳӢRn;{^_)ήD|,~cϪXrkBlX^ Ț@~x:XSSRU3fs!Dd%Zy%_-̦` '.NH IΠT#XBn]Yn¥E;t|LNȝ@/?e~8!9f>uaQ{XX3WKcA"ÆƼto4t҃@\L61B}d2ja7m8rZޥ't9j;?*[^S/3 C[Řh7e,[!ŷk:olhz{jQg Bʷ *Z#ӛ7l0aWdj7+ye9M%Nv;:p6Gʣ {/@ ǣ3LIZV"l5+\X8eȐ3LaT9,(J?h5ls ʸZ5k)ꚰGG? g?Dsq:5~M@zě]p 4&eSpݤZXz9|ֵknܜfXxtֆ'AP f p09 N=S#b+CLl hx\{ }}X!2 V\[cqK䟮aB@y1feC(߉r*BV02|r0-jeb\-dVSZ$!:uJ _qVBZf;7、!gnÕ7#AomᶚMsnT^ؓG~o3N4<Dq#nCHtK00_Aj%XIpɐ+ZfF< Q&yIզ9YSeAHv*;DTӑ+xtQ^)űWe;гXcbnʺ#3/RcaUM߽6 \lɞ J)X4U"ɺ^b̅`Ȏ_1EbIaDgbZcBԮYK?]*)Ej! WHw%椽 QCЊ[d͟ӒN6QֶN4% , jTbd#L02Ss 7CWDhD"4쒠:4ʃº RS]GBZ#{@|P~(.-LAǴ4JJLy)r>ʠ=ygY^P%R=?XE cqϢNݦT[|W!Bߚtum>we{Ak+i3.Y9O'`+C)cp˕YP؟ʤv:]^~W(h<'Ol$"Ӭh+j?MyQcqϜ.WvtY8Bi= }vU^5(Gf.*Z`4 JC{1dS`G:{bֿ9ILDGŔd |0tiOL7t,ܞ#w`6LdL1O;;¡Iȴ0[9uP"q~B~uѹu+ȃcrSňӴZϘse؋űx<`_8hqH8 &tnuSXLph+G(O>E3lϗ}NI;C1`&<^ܨ*dzkQű*=6ݥZj(T!KV<*ܗ(Q?J Gگ͌ `U @9us#4 Tg9*_ꐫ6Sr jB; Rt剥QܕV(Mvd~e0<g~GIL}K0H̭fЩláaӢPgRt9$HN)\<ȗ%wnr[ Ϙ0{|@7'g g"[?bAim`:AN"98CEXOh# bi.w-:LsC}|x~l䋴+0xOze֧>l؁"SPz)iHG웯Dysc̹v)p&puI/{=-֕raDu—j( 3^de._PhA({x{.O+>6ڈ6.?A<A:BkքF` , b[Cl=3i+qTFB5@{vb27/Fhb+#Wud3 9֢-N:咱Tx? y] tabߊĕ*OnFbV94oޚ3ѕ+92 es:}8W"vzɦO| ZjܫPO4?NGv<"_)= i2ZΪp #:|nXvsd+zv](sBa#D\)eN7cȗE1@@)w#k ^3WxuI[%S%|%$+ FuHp1AtC/M}}!qܾpV]EUS.MKOtWg]樉K;|4VipK]03ж3nd$(>EnPrlJW{ysFRJˁ;vFmiͥ5wiXqR~V h/a{li5> ]|GVaX^ Dme3˅ Oա-gw[B ՇBս&_utpD'udV߳2,Jo` 0Ml|kڲ ֊9A[?ۊ#{aSƞ)mm غi*~@&JyKЇ,LYu.!Ɂ<*.!&'Ù\EAkyRƚĖc4&d]v >-K}2Yή4mr #-AQJ/ud:&>g٤fGSs,3*،65GK,c$HPt>꧟]3.dTeKHD7Π7+À@LVa5e,Yz0[i᧍|N 0r&cn~6XZx{َHg!Thɨ l>ya֯< kq3-|_abHwp"7UDj%%ұp-?9Ly_z2[zA3鱌cWDŽkûNn\# iݓXXռi23l+<;6~I #s禣۸̵vT51sD:aC7:v'wҼbP j](P=\вPZ4 O&x*fP6e6h‘蚥 =~dmNB:Mdcx}ɫ_g.Y9xNZAW RDΧY)mh^CGhdA4Q$SI;:̏Ko*>0MA7k} s5J s`/>'H*Wjd[adS -zZH$|L=I~J`NBVT Gk@x s@38ū27آ"kh:Pw@Ta7=k>Soə1҂ّH!*&!) Zy kxӚM͠n2Q¼'p.,xsSuX"hi-I:4V+]kI~tvst7-nb$3];us eϊ~OlhR/cTmhRAh$[H ,~iցfV6v|f1%ud3^ (k g !*q|]-nsc 5;m M)UVѕD Hm JJjme3g |a7163߿ޠ:%ۏu.ݠRWxD"1?L;ϕBzWD `M,+*ӳ̆9..ƹ%𼟟|WD_>%(ljBE{f꙯A߰9Xgp%燲:,#S5N7'L |9cטzn)3뾲t86YQy0;U.u_uYpvJl|}~lT!dRy)M|k%U&G>\66 ~L!w]`TLD8D/e$1:O S^|plȪZ&hϖZB/]nwe 5ϥ};rjndz @xG( pv3&5l"JT )a'ÌiI33Exztb;7+XmB`5Bt ګG*wSBHa죹5 ;0dܙ86ZL͠K܊mM> Gg;|s"ל*ԺyC/qQ3{FVI4kl؃ ss  *;V|TϳXe^lu7t0E/Id֥1A&c-;t|[A)Ej"=aSq^7&4ʘwNSB ,Yǂ?h_,sRv70e5-tȌ9pvzjN%VԥIūv0MJ ], {+ZSg>w|˹HlP=J{ً7"?e=af2 )d &R (ϒ>7cxyQLY>;e: y# T 诐$k]IQSTuHv3uҠ…M8R%S$.pN$NcJTH@@=5OIZ>GxVk =o,;? >em?4 +Aɴ.g*n̬Jk ȳU}Nbס?-`\ 4=S{FnSz>/ ]䫐5܁xxSp$-4۩7rۤ` .@\R+&YL.1ǰ{uœ\#PIG\E/8p"ХqH 쿵Wnx1?18i AL O!hi]eߌNJ2BE)nߔî/ AQPx0 ; ?g_zlzpwSXUw2G;u wvGn^EORC',ZͶ" x>"{;a:Y=,kd4Q̂$*y(0O0 s)p_ΘCUJp !W}Zڠ?h%9㹰њcj fۥ ؄kQ5>a^i$ CnWνg|1U*we5uC'^u@j8"A*=K:Ic5gŧC΍nd}3Gl/PVOLO}x ZNp@YM~5an7kE=~yF[ 2KHF6kSX͕C,NMW,='?|G{l]׭Wyd"*yz6pս"![!tV&˄l/yc"MN8#=qD ;Xx,t6֤>v?e~QP3}rHε3$¢n)- bv]kG rF2 ^wJ1'BOM]VLNS%TwY[鿐# K -Abz1!+g*xosJ25&:| 1TQY.\tDӲW7þ^__CmiHނN[%_S )ɩt b:'' D MxsKGQ&kpiK/@]' 6¿lF)td7؂>̾?)iAgxEuX'6 ,"UnEhRQS<ѳP-؟.ඣ@1w VW*qa'O2$(tsauU +!1 od)UIlғ|/puv`y t!(Xb#e Y[ t/2C<ӗiD]y(3m,3 {G 3DgyX+4yR`لW隄/KARr)=na] & Ļm&Js L/i$!ʰ}Ylj,R9oCFlz0Yqh1&+wf o5j/[) r.0kha< 5nisRDBޗ4o00u_s4J|gF_e'KzY pPwٷ'+LĢ?]4~ 221ke&Z;cCRoc~#3?7>h-=VA'4Cu cG˫^gE{hl'2gtF_W^eT?!"YKJonVT0 ]d/25+5GuGm^W~#aB;}`@b闲EU/ @5ii 9Sޔ4-N(J @S)!&XM ?TW{2{a-"Gs*G%^le-6ho!Os 92UV 1Fá83Gަyr:PX{o7VҤۙnr@kdH -i-?C Kwx'<2 ӿgs5 37gϴa3ݸMNu)"']ᨛ"_rj)(%׭(#_8T[mzqin{sM۶5Ǡ2LW<:8(U# (hxǥ2$J,_ !_$_wwOH < ~:+_scFJo k\IxʂM4ՀbdX NQ:dmCF^u~A>3kȜe5"iEDYu FY qP/,S#4^q}&.ۀYp̧"H:\̔!{maSuXޅʜ lJVO <%(E_*Y%0#JB~2ĕ KkBrxg"@/bcy4?*F4Gߏx H%KӦҕzGVdyݫ#Mm3H`G ŝcڑR\\i;dwXDu,0f"ށ *oƟeM4`,dpiD,:/>*]ȁ䶢ˀT$E1d^Ay}B$DAc(X˹b7""`28[jc2GH)Nk\n+n T}&ճߥoDRjmfTk `Cˣ"g_li`pW*72,!^~je}:N*#XC^zm-T _YL ՐQ][D;iH*oSE_6>ެ VAؔޕTtJx;1,6w_#%ƓRW)S6pwAG; 1rOyB*22hݩЕh"Ӹ71`L/4#OHMy좑񌡘7ô'`~ /4/mP8?l ge./zf?Wjq'E/t|;5QY4zK fM $}FhN9 f#b:+?@G.13JSnx;j5b^X d(D@Ro[LZHWo/9!_+l6ZG$V4IHTߗ8CW7âY` ء>>v=o\,#oLŒVaqfg29^ŗ ,F8pS":v+r:2i_ja=N+[„i{):׭9MJه|9h,s>ǺC:8m(UQi:!U# -lW`a|Mh2 Hk9Y], :B4Ur[t=;VeY;h*㙐ZU9ݍn^{MDGdj^atW r.3 4+EXŹi`ږ˲>fC5(˒_MY1"dQ"9i4f뤺O/uye>PNE A;MҘztxҢ4W/ⵅX5 [\C q sVDԑ3hwߦy'0 ُ#kwbƉ@ ]J $r5l&v}z;]kcֶR"]e_=ngiK62WxFI֖PL*(&hm4)W%e3ʯa~he ۬ g]t1v?-wa󬢞q?VJs@5}}xUOį2ٽTqGl~VAϕ\R9bD084ZLB'_)¥0Y\D0kv\9Xt4P5Ҿ|.>2w`7(e`k6ϐ3RD5F۵})sKuo)/Heh߲,Wbj!lHh@ H~^AoAX/>6_gfbbpn48^+iN`ɼ`_b~țyFD2;GWHy FQƢi?|ɼ(vfHy$׾9 AL~p d__m`psGd|Pyq!l {s.cFQ;qbVAwb" >~iD11αow^蟒La؟,qRGkSm~p(v2n@)SEkg; g3OL!_ E Df 5Tl&3?~Lur DIwW-eY`nceV$,Nfp1*)$닆Y!,6]/<14I8 Q}}ͤy!]L#XwO2Hȡ*CE_QM)`hd\SNEOI(Rjt #S[F,,rc^ SPAT-_26tqc٘$&Ȉ>!=6tSQ R=ZjS'9=la/d#Z"XpimOu$9ӆI͜Y_k Mj'^A̻u)8p+J)r./HS+uP]}( d"6樚q{AH!5E o@R۟^G y)3m}qqꟹQ3wV.|.n[xyv oǂx_O‘IL |q'y#:o%ZEe6 Mx4Glv|-i~oV(zPDײ}"Оs/nD#'lL } ]tI:R'0/fpӣ_O&aQAw7`B!g&|LNJ8^L>^S@Q@Iq '1Q5ma_7E4t4{x%n̓:VO | (!/i NnHy7],Rx\ D :p/ssbR-xWj2R`}g"(si0}z<'J¦>ք5XkaL2JP(E `C!S u4+6iI T 0A=& P퐻өw/Jf ^//.Zy!u(Յ;Dy٢hd!ކh)*'Xݎ!J.~}yAkh/NTy8: B׏ar}!ljW<]|YRv_9mR|ɞ{wD榄z aj~sz9i:@>0|Zr/yCuC;v3#jWH!sT*TWHX&(+@f 7sxpFlB)-60akIqbvЃv&`TTvDg,_z`;H h}0OW^2UU W|X3oReFKdþ3*/!>[u.L~e#&>0W"!`dpLm!Gltб-u q?!όPro/"xk{^Kj2,Y"R).蚟uHV澣\I2Tkw%{0Iaxcr {*7+TkcCN(hޚdk_"ROy&sL5sS+2R%cuh]qJ r-1Gx`՟_55 r;#V%}P7Co8BA Օkn-,eZyl/Ќ&j[? aaWt*zm!r Z #\k$37<1=_=W܁KRc,';c N |n!&F\)mbm`rѝcx$,]AQcf38Dwd]O t8HQy80+WTqMglCq13Ɍu[9F tZQi.2?.s-ҭeLܺmJSI:-__?*E~$a.N}wXsH1#\$_0nyjw2$cBGhoc6u]|( ;we %bocYcpプC<<@U=nRsBM)ƪ7לG>YT+'A~Ĕ[:|8wڈ7̸zHy4MW?XqE/ņSFT]#`Ǖ'3=],Ha4zw?2& Lzr-o[ۊYH"!-iiTkPpPT 3DS?§e jh1z$$~m?[fu;{Q9%hǾK ˈ칔 ,Z^w C J~^}O gu\(rQRRŘߺ Ta1s1bq,Ͱ$1;`T;W&i=jr[$ 7bhk!}`ڙVw0n^[ 8c>? m"@ ^s ߘ) f&X]W/|`t =f H<^=P(bHHyStQR:WWЈ?">g ~=ˬ0\*H<G`ٙ/%ҳ55_mJNm4t&n;{ `L,s )$34oxÑiJ.I,zI坧!lLo'1:DބNBvCh|Nu**mL\?XU!o? ˉ| ʶ(QCIxxS<5,)>86Xw-e(C%i -goOܓwy j7&叿䖨PY7N?5t찗uŦb\JωRtAb%zL1!̙&~Oj^]8M"d=R0XYO-[*Z M< D5c&TwAi0"\_LN`F%9l4d06|RswS.v|l7 @يZZ}Q,AqFErliVvWQM/sH,,QBX&Phi Kk̽۞$;=냗?a7~6&vs4gǝ:@ --\wnR ?Mi:&&O(һ ГE)IX4_lmf>}zƘ?{,֑fޯLԱ[t[;* Rz*,ކp~C]0EO&:\x[a)J$R폾BYЭrH6j\+Z=DM%"DKjBGN͍5r2;&V2ԇ2 l d$jPjw}UPP@$әEߖeds5LяD5~Ճ-7WS?1 >.pH[o#Mذkz*^@Q7݇n{#'z.n\]0]c KK;QNuXu@l+d2UVyS{P3<>%)w6kºIo9:㯛!nM qGlqpD¹3 -\r'RcN̼fC b2)k#[Ɛ&~.䵿d"Ůť-i< 784,ܺ#ȽS4%l#ۡi)x^J M5ʴпZr=<)Ogrq7: Հt5XGVɕn*|+~<_m.G2K +R:t nr/P4paW}pηd_=fΦ@2ۋ)Sr?p&5}YQ@ 0ZL4kf5ÀLzd !nl΀vģ .j/`窄9/p]l+ Llj N]OPhIAOi,㰩bw9]mo^la ܭ] H36R~ Hh"pFR]L;FKXg/v5a{ :k#NXR>dn+P/jo}H4FE9mߏnY<.va؊IyJKX߿ں%*(9zKHgar%[M|l8Cs;kx =cߦX2ۍ8hf\FDǡοQǎIut!%H鎏BJ!s~0~ԋ1dYnW|pTXh~!])қ)BH /miU/U]9q<<-:jF%\$\Rט#gR&eĪoytj]nAC:%S%Q{+~TެnAMKeKAR 4$7VhwX}eƕHSJPƗH<3g]7֟Yz/IzfOy 05f{io`P]/`50ձYB6<|+`dֽ}QzZ \P G<c>t*?wy2C0_׍rHԸGg:EKQ=yb[V Hڄ- u,zvV;+9̤j ѶT&(SsW 0uwpm-̋M !/pUI Vm m`/w8--]~T v+6aMYՀ>#AyYH$C[68rz15f|rnzQqy$XILn@kpό P KFdi!.%jхJC3YI]rq`78Ac X^mlI' 6Zk6|cH(Slb, 9$rs\ò!y{g9k]+hPSTJV%2K''g4Ŷ <.:_?b@~SRpˆmrxP 4oTScW(DuW1_@ndY g LU=C͌IZOm3'S[)Hb$x~jMɚݿbbgy;ZM/O71%EÛf:{ #1D_1F]BѪGzo:e^|-Yu4G0v#!" a}$ϱ&eB\'$E]?Rw:iG8o< \:›;Kk^<)۳ [.= ɋФS`H˺R/%2Fpmqxf6>M'/N_off-/IAS¢wLfe %7N`uq@ZCl4h;DvZTp,cbn cĊ-D߀M*}>y51zL uHoRt\wG2W<+&z& +,OKiS )K({Dʒq8lA-)`dmnń_~DEL0~⹞?s 1#׍ݙr3+v7$D&EeiwX6FDk6Lqppڕ1{xx3] ʢ:d$4 *gLB:&v~~ @}Sg;=jw="'ZOL&qc8WS=Z_Jw$ٳ9P?]Ȋ,%@mäkUtMd]&ˠi"e]fMwFuKZh\tC\ċ8Mc_'f҃J.1Vhၮԙ$іY1]kxܥA"'O|jlʄ Sa TK G<K֍`椢zM14;-ФRnےRAl8q|#qIQ{)ʸϹj3CX|Ѐ)]TTujJ9o]`5*cd#iSBxȷ۔?x%.!F(=Tnh;TdjH7?N$%e1IV,c:|HHC> WdQVo'i/y:Z&beg_{sӬK6Lد:^h*Ý>6* JvaHR~^:LRu)l/Rav&DOVxs a@w q~ȘAG5W~)p /R 1aYa`Kl%GF1W&S1-P[XF]gjkeTTm3IH V*&W:gt_7Ey:@3RDo~]"z2CFg1 ,VJSk+,>d䠵j2ԡia照0)}$82D`Lj/Oh"n<`u=ȴ2"JTn:۪Vm(d3\@Uhj߇iknh6=:J(0T][z]rW\=B%6E#I l!󉼟(iaeWȎ~qLtXJ -ylzaZ}]4h>4<{q?,^NdM` %)p dsBUSL#$?Jg)N R{Ǥ(oYyY}RXA֛6+I8!I{RhxSʨBL^8|3afy&wŵ7D`* B$=V}v< ŧ , VO=\zYI<^Y0ŷM %@>F~* t2K[9bj$1ɱ^dRw5u*̡m6+|X%@noѼ8InIp2a9lz"Nh}ᮣέ"f驽3af!$E\ jg"!'>*FǛ55DUPr+p$DU_ SrfQǙ >4c1$DŽM@WNHayskVxo M !$˔+sR>LB/%;FZ9 M07zE(Z (Csgϧ$N4}ZpCFv Vtpѽ2b!+'I;8er6&x!jy]x%JAB|^ ,]4tb1ɪ V%5/3ef)Oⴠa8}-)ggFlP5Ʒc}fW[Ef,7e*ur?MKV2'5:kHd~~ j%?Vf݁-97J>Y> l0Bާ N=WxO m`Q޻TddSX!Uc]#s]hKLۇ{"l 73C|ɓǂ8;G뒒CKL'g9 /}W:.$6ŭCGb@!uhIda-NPUT53F o @E.w:7\G^5AhEtdǰo+ +z +Erȝb!-peX&Zˬ|?3u^DҊ uAO+Ri0_[5z[9"*!gw˦B=XYo=2tY0o=a~"zapR ތ6sacE]Űt=h{*1Pnji8ԱMI\B[<\(g*Bס]?l"1R qw $}fn'oM& h<2 g5 ,-0*Vɘ~ķ+hC7O)Tr#iGnKь!/ǦZx\2*SRx EՈ%4eBcq19|:$zT^ Yn#"+xg$|@6w:3"j9\ͺْcn xJ1髷a&HH*sPH=c#׹!8qNʧ]`A]QVJ#cQuTjlTT7/^{fzќnR#),S ZtV;>mIlKHlC=KJYy Rf}eg:Y5J,6jo %r-x`Z3LTՕ.Ȇ `v{玣H۔}ߵ| ̂Q}ۀ<ҠBǔ}6^ S_;e3:Ep5Yb%/Xɹ&f1tF_:H*fIAHiŕEQ\M\AޏXDY4JJ`Qf\L`ɉ.{_LKEFݯlǐN|/!@,w 9ɜ ×Ai"M%FLZ&Budy<qsp d=s% CխZg.])8#CH|:* j:w3S}J1b쌿}ogUWZh`P` Ȋr aA /[6KֱFEtYű=MqU_H198މ|[` k-Yj%yej[X}F#ye1 2x4}YJ[P~BGpNUɤ[T02&墹^M8BcZ2&⶷~c(]9'{QpNyWE ;$])e:>_mTZj9ÙNaٌtz@R(:8Z=0<ywuRus_5(Uem;`# i7H?#{n4?cҀ%\)h/ٻ.TD"N]2._b[PD`.}733.P=_76jBtڄe<&86Kq9_uY]791\]qo 4u@'_]2yD9c\pnK?2c }Og$-xxɲ^ P2t9 zf&L݈Gο9F X/'# -,-k<R޵zWDP6O9pjfiD+q G^T΂O">:WJH^ yK$f8 DIZe$r`a fБMSBKlef@c_Ury)e7%|ѺH/EW'==:e#kqseff4OSQnYFա䵱- pdB 3ݐAyz:Ubm_`I<\)1,y~L@W.4ǘ4 d`hir͞Adиdj5٢QpE @a~!-ǥ\|R⻶q3Y9<7ă6ς]fp!^(p枇itfQ9bq.Ki)bV;tA~Λ)gpc<驪")K3ߗ<[sچhvk,kD_ W:S ߖf(ϩ%#1IJ<˫j4OoT6/ACiME;[/QT<B6]h 5/eGGI֘ɽuvdts qbMoVvRylReNlM`\0mS>w>}$ATem%]Gb\WĽBETovG9 Q" :fOTYv+EHtYqPԽwѮ7icWZAG[\`-5߷oB ApP} KCf$S8RB -̨ ^[|lkܳYDNJߑC rr@;)11-!xSlbi[K)>He.Иpus1SI?k e7J n$'gB*<V$!<&eS;rL̒7H>F;I)'{#MuqJku "tF\'{O)6'Kb KO[A"3w.M1N}8Kɇ?WZҒi-XDWTи1ə4Q&(M$L:{7 Jx8چ6|HEQwFTU wQW[j("*zIM5u88rxB$:-\ ;1:Z-fHV[Xr?=Vu٬Z.cpl'mL#[R2zۣZ.Pˆj%C|6ԶT`-?pe~@eP n<3d @W`kj@N_!d[ca릜`UnXdPf,9,GIL.[s)v*w{)LhMcL2x3im&cv.VFVޜZ W;*+0!i2"zم .Tj>q7SβEێ= ipF:?ѨtUkB2151(x9樵ۛ? ‹`q!NGT/pQJ-ʿXo[W+"Iu=NCuCp+s,TZ >AJ)\)ƧqCD+ј;[r ;_d.+8Fa0*9Ds=kplh$J> gE.B>Șvkj}Wk7zN-9W^,Tm,!+DX_$`CcKSrk/XgTv5%n "lcm.E#K\QfbFh3'(4,]p< &8P3ӼDa)ܧ{Bģzݢ1?'8z2+oϨB6Q*ϦWI/= ռmË% rHmzR`[AO_U~r3,o+ͪ(NGIչ$M2q^N?ڹ?Nlzg79q8r\$=F[Z l#caO AU{<34M7xDcDt3P.[HCUo#T۶O2F;bT$Ωw-Mu)`/y}->Ws>gE8TDSÎ>vn2agSgA6QOem JB\zԓ`51A}9N?gB:{e.qLlKkSA .ka*QR8MQfW'ac"]:Cx]BW \"Tg:w\iG<$2BHE{~*tM5YhD" | v_Ť-F;lO EםP j1̂5iK:Z[]B-z} u R<+wOwT ef 6>m0Ǣ.XT +|߂yiEElRG~S)"VId*i}`K,~J2fR K{0í(1n A2lZ0BAm.sfފS{ !EhRvgP)v|[t_I$N.xM'+3&J{ 2 *pU*Ez7CڏKFl+tAā@Xqq.%]w+z[-Mڤa_nrRTƂƉDFEv޳4ɮQr1C"EL0șijjd{y\푫m:3,Q?cf;7^og S @^- _ @͈MCF6ۣsc>wIq =j Z)+˯b`z j$m%zH3()ݟFʆS{C09>-,1D+ |G^ hA3UIE xJ 1!L [xQily? B Ք82 '`q4%ɜ2vT}]DOǮՐ@?¤\J((ѰH֜x!ʦ10!JC;Γ`B\=ځoݟ j/QpT,cFtM7Xڻ&TaOB']OC)έS;w@hn[F o;ҔT<|Tŕjq|7v+UoBGUwu_0x11iA 82^I܆E w5lS b00tW~ceZXBp]Y1я0i ^# h; B趝I=~i+dgH;4"6[2oV`}8NlN&.I(z 9a^L3.t:N@1Qa\=m[R{x 9U-fşwoj8diVH w}kYb_~ox 4}pwj _},ߏB%O&:}Ζ/)Kdx0[T7942BWF^9#U7,D?nl~Ǝѥ8MhJ"=406g'KވK)a2m'|ԧyl~,qXNq}ZWQm+=XR (ő>^ wLvV__ﻃClIV3emE qp)OY-~mx g*L/RuX"ˣI򟪋{ٵku!W 27ɥB(Y@>1VڊP,5Ѡ)l\ #黝7 ÝC^=Ñ-0 鐵-ԓfX#rAyDá $G#\JF)L_,a*4q1n"\w: 2倕n ص42-/AdusS.lFID?5P7߈Ekix=deq'o'_yE K{ Ĉ?)cbC̶gA*E-Bm ƨɊ}4ߗNșgnaB'saC1}BΦ*dQ1XtosynoYr83" >F\y`-F6rqHAy^G"75`ZOu5A}(#˻ IxNF}n"чCOdn^vJLV+ r+iX~Z'`a)WS %>̘Qc]P=Gusۻ-|~~j21)o@ɂT{8%\[,* AsY<'`Զdi8a8;w}|X8\yh C?{zoV2w¤c<'KUsc>oqfWnwQJE ]FPDf%=:*J$>$M3)u (8U@pnR~7U7G_2] M nu\(*p=& |Պ yqQd)bӆ\“Ĕ ~b:CPQNɬBV ӂ%;K}A6Bv1qbRmVa: 5 >,+vW, u?_ު[S_%gނMJ0W6B#ZBǾ90嬟e3W1;|J%=}`galJ7vѲEZ=aƝTl%Dƽ7 8 &ڨ 5E۞zK*)W$ _Pt(n8I&4^pX`0p`(Y1p?86nՋrr\j<7wlモ$׽'!$,WŮ} 23p)G(%'BZצ @T= *&o$:, bW#bSQ:s[yu5G:@]&e!n<()*!^QckocojL>T!6щ*NF!N.F9|gzoȩZs 倔Gfu`r|xZ<K|IW8vQl}1Dne5 ?>1bSvyŠ$αE6qh|x6jrac+λr*үQ"wߣHDH='~=n.7xn_1Rz5)K`fkЉ(g>XC)^M~G3GWȘsTB 6q Y/iY\`,yڳgwA. 䥫&NT6Lhk/øi٬_BΚ<N*{j""ی0YR!3iP,a+ {0 X?[bhXZQ0eo:O@D3'uhy4iq{_=Pѣ~&{n_kaH<ѕx'T^B X<X5[bRwm!{m .k_re8%IeYG3=E4cӀӶTfNiLHB(e *aUNȴd܍ _7~(?=g# c~~B07_. 0|ร+v^! `xN1 J:Fk*"U"B,LNGYZV"'ϛXQ^\2LsZ.e̳LP֦f0 bd]j@c QNaT::U(*4 }xJ`֕n;җG3HS*Ekt:SY SlSḴumӠ_`&Z_qXLJASthq&$v|øP e0cw4vGẕX+Ԝ&VͥYH UTa]. A N YM:\GK4IV=U]==^͞4p(kJPz2bZ}ñs _R\d ] 0({e|3K?@X_Fnq03&-7pR4HQ@ȸM ueO$+B_GftxC<<{T&%U~.;rGa4qu@di1H,։rpc5 `TMP;ʶTMBUl>4Bxo) cz]9PdE;Ґ7ٽP#C]Q~?ƛ8݈zs$L0:8NK:* _ICz,א3|z~D ҘEYm n9|XyH 96 EPW䜴 ,=éټ2g*z tȨ$:a;\fAk ʜjCM j:z_;0BmmǑ1njU ܉r>韔vyzFe@@S9EE2&9).Fy{/wۛ\iTkgeYSKgJ`@[pp%D0䗅=} )ԳktF2,=/y - vW6XY3d4}}[FՉܷ/n3͘8_31~4PĤQ'IkGyz?656&:2F觼7$Ye<o՞&yg&;]y;-Y-J^A9 }'&/䣅7l|J}oTd*TsIJ= #wެ[&zb`%VX|G2 8\c=4#47ه3)H:^Ӫ!ߡ`"5̭+nCGW d"cpo$; )y 17RӮRl{ell4Z]r|.a[mխ?m{scc;_Р a E_sGk.>Sm12ϑ`cAC"I~1: kC`_VLKҰrkeu'( %4i D&;K`a̴$8TϮoSĢnש\ӢY 4S٢#O[`owTrI/!D_߽9E|ݿO-cO`x~^ڣx؅4s^i|O`Bz2+:Wd2e A݂ayQUO"K89*+Vd^sMGLF#ϲ*HC[ZLWi2~3}l6^ 3<@t +qbVuNNsd*!u'leM8I95>hX!^W4GN: ڪU)+$ˎAXpNoUzc/dREܭ(EB9uw%xfG+֥C^uV8!]"nBQͰ#dKwezdA4O1S)oqt oenG,R!:q ߵ@.5&|J|J״:HhU+JJG_Czͧ]1$uoHE;c+t1bTxwKq#hU׿}0^{NGJ>2Zآ&%OI0T췠;$XLW*L$t+6ie &^LҰ6L,Kr>43H͵l]Nt&g'K՟J~T ڋcUx柘abK\^u{)r"ZqлA`s2 +v<_~ j9IJKo}V8amNԮwҁTa931`: :*xT_l<JY[3dbJx,ĭ!Ҧ%N^ąuB·wݐ3(&&S;{kx.ζ}ZAie>NkO 1caAL~qf kncv* l>yT 2B-mq0Ych+Wn})[YqE:O`gwzʰ X.y|G(5p̠ h9S):LC/WB98ds#袤zM蓹 N}O$b\QJ{\RnEt Vvyg)YQ]0gD'R-= Łk rVql߂ko;{|/Y""D\ 8 @+x.pS1_&SP JSYفwW›Jmb~6cօ'ZO"ɍ*X$OnlWvIEmDbp5"LV.GN"FQ}8pLW lB>t́#ۉYO:q퐖I\Ti ީ0g]\0Hߴ:;uvYO>YuSJȕN`qSTjOvi^Y_(6vftۻ}2UD-&ʊ -Lo#7F4؂N9)8tA3.m/ρ@tEۥ1 9Ʋ mÈwa5 uT6 H1rr*L-0ᭅN؉ K0AARD4W\;a@c56Np`B?6C+Ѹ1ўFkwE80_'Xl2KH}B]BlG& 5N9:a/GإOњFX`$^$η LOqq7臻}$l={ YdBI?J}P'q}'h8OelB$rBeMI,eIkWBQaI7O^co^b{"جrV؉R]Si,KeyQJX[%QFzy::Sװ._/q)~xd4gZ 6hcPrƴ.ͧzd=2Y h/]K2IΤ%SZ%afW|z|l;;\)*&*)^ҩkkfnYT0px.}/!Kizd`ײ9 GeU=FDa@$BǙV|Kڨis 5@XxZɢLo8X˲V:R|s0!XT e۾n;*Cu!,g'A#Pˮg5\hWNM"u8 t;InETnlێ~/D;þصæ\",/,$_WP0iluG˦Ofszݚ1{r",3Tde)))_PŶF\/se6M}*kr~_?}(Zem9J~e5R\{RjpoЙl4&òsl$7AYհ!z~CX/!KxOl&fKPl^ h$m޷\=Sx[e`) ~v!5qi r Nq\'/άђJhNL 2m`?U Vl@)Jόu)mܞ0#l%-4c$2=)+\5}p!mTdf== z0޳ j$Ðl̙\=P[`*!ZIQ*)Vќ;ͪ*Vyt:+ HdlEH˃kS%im|v[e7.3 2LG(hD4$U*ejUd9,@=9 V]}֠\Lo=(#Daz7 Eş~..(]T6;ddH&^C&*Ѵ!(:)Ybx<~`aq{0~?{߻rS[*YFDRPiA{ck|UiQ za>yJSDYQXyJJ> < >DksQ䊘DnW^Cߑs}}]vz+X k.2&q\jO oeJz^6b*{?#fk#2JQwVKVEVPd=2ruGlG~A-9d9É_1DpLdA/H$PCI#uZZ{ t1g uN4afUȖ~F#9Ȳ)A9qWw:] 7;wz އ)9=[' > ĻzGt+o2lBvc*V-y;7bQd\v0'tzi:PPK彂v}] 7Hs^">4 3ak<{1Yt:w"HS4۞lM$`'}ex/)2 %|tk.GdX7\ =:% ?Gaaa \a͖~?<v TB;=pGUH6@֨]YAGM)BbHl>(oҜz6ڤ[ɬUheN03fB`pز7uC 1c; 0B='By] ˌ PB QjDI:Luuwd8RkG!+!9p; q+I|9id3S{̸y6m_ WraF CV 83.Mtd]4?5wMJ]+G}ŵYW|΄maU&:Xm.C@lZӠ8M澰ڇQ̧oMV۰GwN(2K޵Q+сn~^X-⩰щׯ$PIRu:Ȩ jvÐI OKFKıNcEo%$`cYb/1Wq >Yn7I7U5wNo]Ӝ=ӈq۽G:f{9jO! wG:c/,ka`@yGq%C&@Ms3S ]26_ HVMP9W<[5hU`8`2V.Wi-&|xvad@ z?GڞP!\V.P/^chK*:pl=2EHR?A'F';s~f:VkҩY^к+j^KD38rͲ1|&O8EyskCw5 X4|zaz=_<|6YmO "uұ/8q\\Qߡq|H|\Mn򳈁pf5Ҍ9ݙp%qufC[!}rH4/Ls$}YQ6> Z 8~@VLھbmh؀c^q֢k:Nbށz$1x`=)sZ11kBs@;s cJ;:e~uMT6COZ48Mw<xsz/bp펏;]|SboG8Wd:dQ]+c׹׵clZ*)<5!_8Sי%:׿^8޾D[\<@ycJ6o 0aW==)lts)rb-$Zf} Ph_\$#̣=7m8bX'<ަatH+h %^9;֭`M@8\7iǮ1EӌLo. ;X5%rPٞ|5_ 5$6wʏ@w?sQq*)?z#Bxqb*w& >Ecv;] +$[Zf R(;tÐ\9U CǤ QI0кQTK6 :b@of?p׎>McF>O|'b\,~KCfsb9tSm>au)bW * z}o8z^ħGu%}JVm[e@PPE֎sF\nrdbQgn:p( [[@43c~s' X`ЗDE{z+ 3NL߮Ɨ4LdpwCGku^/:W1pAjtS_jΛ|UQobo/ < ;aǹsS.u8+8">Õ{te߶, >9VvNN^w&* ѹCGG|,Ɛkxl]Le_ƺݴ^*=`:<@(I6*{ \q_F9sY 9j$?C+cT]F>a{꿢<#*;O oK&gtubra1g1q6eg8,Ahg(8%+R- * O\U Lnm]j[(a1mD: !ij(gvJaQ꫟8Cd |n;?2aRo:Ֆpߟ:,:S#`C3e{Lo1t1o&RJ: lP[`P̫FDžqSQ\&+ʦzÙ.}=_̊i%a (k}6㥀̿~`+4?7VfںE|j52Axl&Pd=лע'ivs;Ybeo]ZMw:3]&hpt>Mf馨F7Rmxl;V?~ŸEl7གྷ7Gm/WoeGgMU])@I5>}rp9vL穣$B~R\$B_DYUAҎt\= $f]t%{y'N~}-a@BA!%GbRտon }XrhZho^ZmW<,ў5|X@~sHCEy<»M\<}al!{HKW `}o-exb&TD/0a(-9L,/Dx-lz呉,yg(tlLܞ9T:pwiI).qN烋©- JaYE\ޚ/Gwqyj3=bӘS QLNb|]b\y*JsQ/(8%#E 3^(qmZ~8XIs gCF&|>y[d oLynJ"'ܡ#ky4&u DNk vel!7eΣF'MJ9NˆzD|lGE $M ~љCs̖Xύ6rvv8wmq#plb.8[hR23o<{@; VgqOawq SpHH94\RJyVs 2|#<:i/xAwpw|0U._#׍xɍMk}^:c"̞= c/nk,yu+I)%@{:(?kZg{;}#Mv^tӛPȞ}c|Z z[ v=iqc.GuӶ 2V\wX`L$F pjJX:KNȷZw;*N/Us96]_<k?&'UrvSq1K97J0s/?A&/ldt|Rt`@j%˾ט휒PwO#yw#Dȷ PغEdYa&\\eqBؕ&LδӠE)"؄h85Q64/!x9Э" M:?5|'v<^=t 91?fQ,c7!iܯK9Yp7:֪.m*j ^1a#/IZTVx:L%w .]P+B\3,Ca[h;2dCL+cCV-/Rs*v;Ak.ϣGC&'7éVi<8!2*D 1R-SVUx~jZ3^]t} 5u HjR])^n><8U&Fi1Y Oam76TQ{ sΌc/PXpH$} Hɿ }{XlfQ -d_R8%cVxcuPTỴ̎4IP5',lQ'T*h{.V,AʎAj~v?$]HXlona"fh[X @+n[l1T?1n70{~? RE- m5+޶hųnYiؔ¢Bk7:w\.|v@]މ z?t!iiA P4CVXf^>}38?<*0[v9; >F=x֣z礉w6c2o/Q nɔr<[8fyx{J_7 5j`wc bԫZ:#9Z$jSu*+B}\!-;?,=LUfBsֆVMoGtT|OnJ:$( $ m˓𬥆HT>u0 @8L1⩰.*0eBW5drs-d쑺,xP~XWmҒ?+܈dA_mC4be}çߟ9P! &'84飁v=ޮEwicߪ'K' <0+b#sO!&{w<(ƋJU;\/$<4ϣ(x 絖 GT`Bڒq /vԋ?N~K `Gj> k9Gڊq3OՎM+>!)-|B}0Ukv* 7 mU!mҨ%yxa _@x<$9 rc6o,/13vKw'o̾h7$cMuyC4@c],4?Mh%38oU*#񦟏;Vb_H<_ix7 ud/zxsR'Y3G/7fA?L|026[BPꤌӮNdFrȿM~K;7-[" ie).V@sߕ3NmIiWBj` |4<2At Gү&cgm6:`o c%MrDGh ^wmn$pvVk/ս{ lI>QBei'6 g7CcyQHRB (UI 3W#SHo%m:yF_ $8xŚk髅xn1^PDfhFd*K/OyIwj~vYdy,+;w*_ˑڇ즡X}EC< ZR|K"ng-og&4njXQrVwmX䡯U lX*y_Tm:z8LL·T,N2 ZrXq6 4Y=ӗF$o(+M8cbV;a|Y8MdjAYJ]GFݬ+BSyƚǞk17싄ki>3#z{w'?^žZ<L=_QnXDtyƏu$edznGGZazOdL$@LjpDte75F5!Г}Hx)j ԋT?.vpƸa^g*9IkB:̲o`P[ce 8x!mQ |" ̰șOUd&]H[=S2##)c&ڋF+~3Y.v"pt/)8Dri,KO".3566Е#Jt4mkU"W옌\mMXR @l Ofģ@#'JL_UWKK@ھwT@aшtZH%)?`;-F K< >쵣g(U_YaIh4<z1M?~kQSԥmVQ] j=R>aGa[VÓ:@*yp61T3 6"<yN<''8^d>0< ᓢM{2frhfir1=m^U0(VwV?R?&]D\\h@(1Xc wό*z^y7[Kѐđ0oyVFH+Aw9~5zKE.We+Xm|I` MjJ61c>Rl+?}[#>`` Epu;'ж-wKa{L8$N3v'0eK* $WIHh&%塬`2[T,R[ 9vv]wž7a 8؉sHYq&"g{ }M:lh S咚^xX>n98;:E$˧"0=;! -?lya uJ /N>EO4 [or+'n=F-U\t8s(2y8-VĜ5*=qf?PTQji ծ=WJ#bmtkU,3\Db[HR 'if3j7lrz@lHQV۽;,O3Ug ˘6av];5}LziH/ %GAȗ1S*s*^Nfќre*5|;N:X];]>hSЈ"%&Gx 5E t\q']BEnx!}l$p$%X\L>K&rkn 9 [eLTlmsFn9xT ?5 pꁛ{ -}XΣ,5=b[LÙn)r9D:x1i܁oPw\eb&( 40ZtZj)ppE*/\q.hݸ>ErBŚ^(?MKٳi'd'wJ 5ČH*@XY s}M!l?%tX}MZob r+4xB\yeHjpMR,'0adOȔdeOJF%v[dyPg7*2 {80F蚐A \6556\ryU#}Ed@z5[%"ՠ0N7&gcK 'sf"_ $[srDX_eީ}e_y@$s1f7JIz;Pڞfw*AپKݺo[xҽdCHg*֠oxx7YAh8Vێ 30a}BU~5w,y+X)؃T*$iXFAem`%S-L/HY[պ$w?(KD<PCQ9km]VG<.|Z|ZYDK@"0Hv)fkCt3f>@Fl:ހ[O8p Co#Hm{UI޿ʲ%Nm=nR6=ЬvKl)! ڄL mo+=`W(校o|+cؾ;J[o NbDsA ɢ؈GEjz}b_xMgϻ_c.?V-'֌j zxIk[E%ϑQ2>˭լN~-F󈧖wz30r_  `0qV44 PdxM҆ʹqJ38dǝL%vϒ$9"<\չ?o82ܡz)mT]C5x۟$:o[[ӖG"oh-_|Q!}nH#pZ>N:;&ey$}QF&臮-1xx]4?e{'2UZ3ҸK .K8 rީi!x *mQcjоf 4bcND,HS y搌 (xM%#G gN:&9oz]"YvY(VvtvŘNn _ݷ{PTiIy^շ|9; 7IJOrr X̃돞_:-1=rM9lL j-}"U$O(@l}:GI Y'4B2HJH W.i`Z ysP->]yhAT3JW(IVxm mp>F!~`[F4GO:w~x8ӳ ȟPQбpW xmS%rR(AcA{|"o2L׶p~M󤹟(Tcwi}SV[WR0 #7Knͦ8i ddH#[15{iD@00ڜFxrҨD@ ^K<82o=O2çSZtT2T+[ZH ZM>ohYU(f IYx!^֐/֭>88; P|%?Ae7a}lԨ*b9NH^nh@F"EPuY= Z̃#A<@DZ0Q C*kx^|NۊPru&|A'> 뼣$$x߮'miWۘCioQ$:G5Z.Y!;LDπ@?W=Z0*ԫA \n},/f_%mg;UT: H鯻J ~8\1ǫL8%꨿XFM7UĿJ''\lV^r/G:;>0G˖ZŰ̐pj Cw#VJNwE숅} oYH&zC)[HK$!$@c66*W{cbosz8=|TTޛ}ŒD8F_ZtMhW~9>`@?4b"*yb]X'!﵀<tH\=lfF[kc @E֦U:qzآrY7p`N)OlnCsV22@] y:7͓3tP \Eldt(ᛖ^iG-+mt,ɿ/ QgBQv)2P$PirP Ua==[2`сTwkc)=[Ʌ4ÓHBs+;&փ}/kOJ7x2)*#-]*OV'hT wb٨pgF`~Ԑzl}ޥBiʇ3d2z2NƢL$m໸EdLֹ##HNxq{E`Y0k+R2ԷgT-stsSd|dW*bkNk&z#).0tm WHqVB~Y*<$KC%8`qGaCg&x5VXTۤ(WYşu३`Ime0@QY;;[L ŭ-7\SOhsh5=`jgF4gmTIȯ+bT+I&:h,^g/)PG% QC]gY/dgw~[Zn X;J9C`ʎJ-jM1}qWRRik<2S P3gLg"!Vo!/p 0 beGYIɝ%w *#G;T{xQ*Д,ܭƘ/a}T겪^rVN+ Ch\ח"\B"YŊΛE^?mWj,%y[ƓQk *0 %Np'Itc[t Ye :[hUp#@ e׿F>ayJ` 7Tu;79eH5צGOas1/K7825kL0~2lڏgA~yRƾ_5<}DFA<BQTŘE!!!򢭤_?]jSpPZXB(qAG<:BKOE;{HmM/zv7-:Z50ӎ9FԲf`^!zP"FqΉ(?ba~(z}*ͿA38j%$SYCɚ5MD|!>^բ ch~l<_ cRU*L a|y)Ed{PJj'v).lkGmYӭz򌮇flG| gzFi>,VSqf8Иn7^Y8_1&DcCƋ#'Y(@;;jQvW SDD HJy@zRJ3שqhm+e.pZ(3z "SKTLպ*VIGYx1D^K'3:43D٭j")H5QW=QG.C7y+^T;\.uTFHfc3-WlP*ufd&wK=ϯ'bIg O3x͒(=zjY e[U*ʬn9G_ѴyR.q/UQͣ.y1lpT5gt2-'K#3y %+XO~~pLX6sCrSr8}~B;L3kçuRe{1h,bf-wiXcWwV,4Do]˗tӲ:Cː!SÏHEյaBC`  J -r 03QvW @ u𹧫D;+IVe*KG~\Vj툏i>Ia x\)ֵ,u)bA}|iS7C2in>uN]M (]"G^Ŷܶ9nή&4(b ug+L=AkUICu8f[ĵA|É rzr97;}<5s9JX0 ˖4Qˀj3[;'ȼĨ9&5t5VS f<ѳ'7S^*֨Xt棲@Ӥ]HAo[u6јB~#C}yWP0^[Ԍ싩>Iw\wq8#6-9:Y=Q&!/j!J-9/O#Om ajHpwk1.w.a8|2U P=g58bpUpK{qAAb&VCY-r5U5[dAWU@-#m-p BTvwrߞܿnB~s/ iPצ^Z0 ڍ^Wis 85]whrR/mY  AZj~5VTCl=|"(fkV-nv ,&ӀЬߏDCsx*' ,%sU?O, Ku[t]kN* J~4C-3 AfmC#Y{+@)f~e{Mk7=.z 7cS{a~~ /B%np5Jds23{xFffz.sA;%\$W1#[$c3QT70?^@/0{Hs3(= HJ:ۈxjc[Y7FfD^Mtec.4W"Їiцx @Zaj\k5on.d; ^*W1g$Bfhs.Ϳ@(}ę$6LBl!R l(I L8+{I#2rL@9la (FY7%-630^n9>=Vt^6 TbW/ߓd{P*ۆ5'pY3b+PDi\s6X=Yn+{7VѷVke2?_ 8ephgү| zF G9C #WT3?ic$? vm_d8{unu#T;$| š#%I^E)9Oa):uŬrWmG[f sׂႭEK sL6d6 RB:zb %zI._Jrrg[04c0T{H v6Ŷl_ArdFxnF:Ati^YKZ~<Ԃ [EEV+u܋6v0*FeF="U#&1/~wE}F`[3xqBO\Xgjl*g]ps3j(1̭d̜/Ugx!~xOty FޗSgfǝuߧlB&%?I:6:T$Q LO1E^h0pO>g<i('5'F]~,]C}>,?,Q3c8#B@=x~456S_֚[,Pgh!Ѵk>LawcXQ3I|7Wx[d4l; sqn{2B!biNclm 3,C:?%~荿 Pp38ā%6P5h{4Nzqp͕҂Q@zK^Z;%DzcT ~3Y8&>é˿0lݢx]4 pYx$^wLH҉ûHN1cGZ6;(bΪ \6`fI^Bh5ZYr(@w)mljPh=`ˡJq}9IMΊ]ӏOwaA }z^n>`Fu#lJ1\-G?yTCV$M+r;S1p^pU9{(E ӑ&?)A" bMgKюݑk0IN,l?DTot4ߛ4:w;vG0l f2lz3&dGv"Cy_PΉ$|K|QY5-,2|ƒuMz،.06VAvLgX"i9w)vV3~}(&%AO L{\J0=:0W}Gh NR2i׌VuǾ^;<gI 9/QA*;DaZS_ +x>NmG=r@beԭc/TM ZCm9yos$76o#VԄHH뽔G>a55g6:{t6{G>н|wNKSvs60?KRal[2`ڻytpsȆ!e xڤL.p]`d.~ZwpE{PL+kdNJY"d*U7d'@B45*5$ !2-$-ψx0/bv3x46ߣVîy&b{:aE 7+C5׋3P)()u俿6VZ~D0r=J5&D352H [1 ċ@[=<Jy#6 u^M8M}͏g^j?"1s,l?5S ѼPӎL7Y!됂Tb=1^FmnټP:I5c${A0x ř+Q/$ B8L_4D5ce㇫ 9X2T+ ZY2X$EM)j{ 9x&m~ e6Jq\TlNd2ҫZzHcaĦcg$6(yJ` Ňל'i, L}uVʦlC5=:*XM)[u;&__(Nՙ&g :| fQ!JN!~c%в+P񻭤6hɺBHvGⵤ5xɎWc-bp)KZKX*.12ǚ[Kok(x1%kй> /Ӳw5vUs&Xwz .Sy?X0jj@:h_%xUrATr:մRHJ;3<d+lg>/}$Y0%ˌ2? N `2i?2&ODئmaDB>kѐO11 ڎx/hNPPJ/'u(qF`H1yq^{]L9D۾ ˭w:x#ʼnp@UdrZo5n`-:Y0Dy~{S>MmTDQjfzܷ姊u[$Too:1 b5s,tIi/I\ڹ<]pi$W*q(q}pt^d'|o+ N{S`M؀)OCY>uϑnM"PSfԔPQMnj /WSzaҥ\OMOX?,v:,![*gm9Vc#snTJ:-zux QE -cєp*Ǹܠa"F $r+P!_n&WeΙulEpTartMS sb$.8 Pџy5|v : ;BLfa],[Ze9Vڹ/,q+^Ô;YπЏCrxtBM]앰&76g[ t`?~j_4#Ĝa8dsȧ+t<E({Rte Y_fv۔~K'tPY> +F2kG Ml}EAo`bi:!|@xEi%Nc$2*{;n9T~6M7uvq}YX? _]5"GN8WV9c6Pkh0h,Emrt Ց!!8IqlbƋE){yg;Z_veo=0*r"Vh:{,F?]:4 PVDzKHk'UŃ #/-3 %;X9MǜNS= L> {yOA] L 1gA~!FWZHXHcZ˷.tl#Wk}G& wNGa &2~?jjx 0b/E/ᆵZUi^p1OtY?ǔ&BL11s0{L]?R!*u(ĩϽ4fFoA.TX0qFpcdhD"};?'4pP̆~w3E^™BV!.жu>o1tv? lu1=.BO qԦ /J;'nQzBgaA}/4Z|lYv^1vF ] Pr'ĸ '"ފjX"nz|7h۷%SÌPWL7  w덑[X/wJr-#b(%~F9[6WSSsv>B ); 7:EڔCqͩLG<XDlDIN[Jb;d,p%tlKڷk8"y<̰5P;OhOfi۩4EϡCtooGwTU7Ԟ3O2Ǐ&ba澋BkQ  ]¸] CNpKXUYM3gLjSÒS h(=j࢔/J.I XZ%ɗn Yz7Z>bfD"B0%I$e{ܝ(udVJ ;'*Hնlliv n4O3e.j5 r%.ӰI~:ԷD|[ų /}jlҢ_|_w:%%}Nu8/ NqauB[ 8eG_ wbh )L'J-~:5vl0K?nd5m-q$YTƦo ,d芡': {u=E~Kؐmfʑ 1T-yXzs;9P+(h$@U &&^{T 7|6աRw3_-*}*F9C{B`Žr+hJ=?9<;w qOLԅ[O'0X8M aܾg-(a.׵ҭFh{A6쾒3 >l˫JUtTq4856?ƑFsj9o!Nx/ڰSQd&S(1l1ϳ]Q TEJYqjOD)BoY i3X־T 3?~1fp%f`?s2!'qonHfYBX =#6*37jF1C gAZ2g?M3 1@ <0c<]_8Zo 숽{_ NĻe20JڠoGہV C#9ÉP+(3Z%|%@^1=G$x;ub~$xb0[ wp4 OTIרl24jEG+2TS,? ]-Cz^G7[J PLRHE#<RC{)#ZGUj|3Ry!ۻ(j~50TFxko;∲[6P"\ pA ޾( RzW&P7 z Ehr[{trJ^S`j9u(RNR%x:J.0=]f`Ǒ5/_yhbVTx(CNq.MMZO[WTC|Qa)\r%6}5JƱ(+ zI$mߏ~.T\kV5|ʱiկdAՖmCe5yh24. 2qBxCAg' hi]pTsFy@~>8,vb`]y=K -#]"Dz ʴ?#0r^ّ#'+O|1:'SZ:mgw{bS.+eit$Sʦ#gea?']ly^C Y ZJb; ={194c}#H]R'} xWd>P_e@{$%G-7ly7&0txn9)opchgX/` Td:Y͏U1o fa4䰋&CgVqWȽ-eJUi9VlDܽ|-ϊIG앋DiTHV;OVBr$4G )O0/d#;1ے/i#p i׮FW櫀@r/,?5\kb)FfY#mBTMV0q&2T;2)޿Yozm;}c?8 vDUI/YJMv/\y(9vbh|# ^k}=d'oMAb*K›u넆 ~n{'V\l 8<|:g)ɟ8 ً\gKG|!, 2p `b=YF&grDvOMp]+qmB@0~W@hĪhKLޅ@!RFntARf3mD0-Y 阈}*h. ȵhs1.c_:/_:p}P?kUz`~S &"@aӃ==դt R| }#jO"mԲU(C% F@FDK&|cu h\vs}晆I%xBtZ[I*Зků`@U$LtY[q?>xiVuXϜ+ }C=;`_ PZ^`ǹ;~SWP1CPЊ3 fnkDL?vW3G=)M ͵&YK~4B.9qZᨗlN;LADNn C$686\?[hQo yFkإy5ۨ?ݖƓ&|Qk n/؟t4msvcI!N`ݜh6PuRIȽ\j S*F|$T:踷=10-Bbأ. LI ZT9TAX#ZV.W*|kFeaP~J90& Xܪ  ۛ:* {2yU|WNO&r_Fx>O# '\i8gƴua}`/hMP| S},iʳaq'Yk0"@o{' :m2Њ)A<8Jܤ m&rj/2в=3v%_" 8V9 1z#c),('3 Щg9޾/.xJ/޾UNZ2ß^Rfu!_& 4ͥ }Bْ0;]*M;lFR^/yƺ:!W ESN/2A?9ٗHy)ѧ8R;4 ?=T 8x[vIU}!^XeKAmQ_K`ǩiz;hwCC$j0e[H./hk8>ؑ)'-ɻ]T0@[SJ.i#(ȑ{aTcMdt <3';ѽ?5/TV%+ LGL v;ʓ! .`XZ1Iq3CQ0% Fuuz:4B蘠 v͔.XZ9B;=!ٞI>Y в! B`}UKi92kg?eg4QI -NrU.%i={Tݕa՛PPqn)bW" 7&J&!3 ->ԪGyԃxAwÝA{+ U]Oohe>T=hPD֒O~?!:",^͠ M"tFq  VzŽvF5 SdM֋LT.9vQuG# w%g| /LMZZ2DH?B97'tvfEQUTT*n,RHrqRl) }mzVMՔi!Krx@ f8Rq,,:=z2w w_#γJ]!bhHQU[P#${v8: ҃zBZ g҄ p: [ڲ]+vѢ3']him+jFƁ!7Kaw̛UR$9&/ OX3zQУ0èEݮ]~sG_%;Vd\| < lXTv[}`}8o~^ e([::ZTdnt܉U  oTCII(Om|8QH;Gg[ Q;J}t8+on~?`Q).A՘4Ĩ_rUU#h= \yS3Y%@ ~Zۨm[cX:sSƧ"u{dŁ4X !>m:> fƒMY/}>uR0FLI!P!y#~e[D=~ǔZ4i:?aޔ{D8JFR+:fhpQKUl5A #]z;ƧyE@T4~͜ \۲xPM1]"*Ğ?;N^jLi&:;_L6f?c`;\U{(0ZxCl[o&J1?nߌF6TlR@{FDanӳɆC dHw%Gb 8j /`Qfh?{b&<4׊dp ="vpռ͕Ѐʠ47׆( ?:SV ituhc), v(ėymTԲs)n2'3ûQo7YQzNcon8zǥnڧvҔ< \x"ZA_Pg 72K%_ECECV +-4/dHFUBM lKޛW=n$?={O[؀Wk ]mQO= %b@'$ˑօtHfe7-=1X H'vF֦UõY&6F7i^gx$ocdzjr5OiVirT:aSΏ~w"v+GةН#unu⒑PlajSBx:eSLW?~ٕc܇1jacNk =yډ39M $ݘ8\CCbѰ>]e~.b A7ouD4bq61Bԋyܫ zZ_7<߆G8GՀ KFa~@;k&t*aZSYb:s@%ne&n2ȭ;[9&ˢ0ZLh'@n|O!G$UaHN.MN!ⴚMr'B,qiG$X@mق.U|qC?Xi#Eb56qf)3vZܹ.lcjr'g>g4nYͮOc_9Xծ㠣T=SIi3t<'?62?vI%fٴe͖S`~ߴo`JB126 i!X_<ġH~tnbe~u}Jt P1c>N-uL3bH\)$XfkQhX2^9'x uU zmzˇW$%.@RJ2}w4.b ),2өE؇?-^8uNUZrΰJ<~]%'O75KQAXgi%5z}j4YvT+kIOkTX{ʨ::;J#d6G\ZI(IL~~zz$ 6"d;-p ,v<3Rmh )?}6Pz-37}OE{ ӪUXNh BqwaA> e*):d eTc>Pz/{ *gk̫cjhG<ÝHF~CeQtyv p.+`:Od /ӟ}_r6JN~DܰxCrp6H(k eb>=񮡽"ƣny6gɱq7A;^P*caƬO ꧽsuvSlhl]`@4blUR~ŪrE "[dAJ0g~y]ɣxcCD6G-(Dbڎ@iiՎ 0{52GW߇ِYqzq)*AklD[GXXOY*):N2'o&EӘEO8Rq  ,}^Y,LbJfA}A-wxGI3h^+69DW_$;Zֵ`Š a&;@-;KnvihaBot*wF4DKjޫZKɡeE"v7=G6>|Z{ 5O~'<,\ԄhwIk΍4kKq%^^8|M\NLZFFƼݼZ]@`F#LF 0T>13m0!0RS` ΋P` `z&Χ+ ~ E)b BZQ: ܹ(uhi^ N61#D=|pMuCorVؐec[iN ݃d"(GUڜ럣.;kxRCb31@Zk#h0}2э/%o-^!4kw ŋC[Mb!A־Eau9jsX/S<;sstSO!K-5^#1^tSɓ>3~XU TmI Y"3J9AׅPA>Ek95vz=H-YN=*fxQ/?Wƈg5pplR]3|}bxWH2C0OqiUg41^ǡQ6kP@ `@DтppL>Vva֏ds|aPuv5,,?Ź3y~sQw9r@p^}jGb*ffA>r,]ɖ<EٓE?W/aFְ*'H6쏩WL*Q` *cǭJ]'6X'X|8TEeݘ!هaO@O/yd)4&ăMNŽ dF{`JÑ1ś˻D DEa.6 t!]IY)-uylLCy200w-"-071Nvq5}s-/j9مsxi m!=\4[uRvvoO< ~E XkkD$fS%YKF 92ɜ ( ϸ(hiҤfu勺!mv3a#LDea8(i ~ C'y@^ֲ ʗqx[t=ׅv@eŲMx9j[>ama"h#p xfg'(eQ+L)wעQs,z)8um'9L)_?D~~Sm,C ufRiO:̳9zArԵc兤M.}Ȕo#ML\C` \IB0uhl|տ) Jm;NQSn^es9ROO@,W퟇uO@CT 4U[#d O V^ ⷬÐiG@F٬}"< HAͲc;ynL/V ud](P"s/1U^@i@Y߄ iP&}F$Ae)F䓡[l}dHgdG$z)Y7ᒦtS!.(vޓTW񗔴Ѣ|dzj\'7C@2V@C!Y'i($AѓTpBOc9}~@M8Zl,K^Z KSnl<_$p ѨojqbpVC&xT6Hu^8=:gg_8 #[ͤ~XIZcd=QȤ` LAAH<CB5@A2SS 4EUFa mच,Y9.BZYJNauOpt4E,?1idZ8m2ҁMU3KgL?ljoOxE9ǎ¶(}+q|#l6EH y/E)pQ%`Z&G0APLfn!l7aU.V:gzKN#oQ$gȳA2PTK Pͮ71 !Xe,n ^FMkNN'8ca͹1иL&U\ݑ^;[&:0SM?`Zn 69+1KzAmiJ|7mܒ'u# ƞ)Jct$n* I!嵈0.c!'讋YH#V/:jR(l& ժܓZ/Ń;tBt`XqDm}Rmmc|WLQшH@Lˬ &qThRBolP._9? hs$= om?,W_Sy {,7$@3u\d6M`R?`cϡ9ʆjxt_%p_H>,y8z=FD0~[n ^J$q،%_s{ VEqg{63LnZ^0Owhn# $׃g"<$܉xCIȾ \G}#=-氮\h5[w:ʧA J{|~}!6wJ?Yu20 qםSZAjJnB89b&#)U1Æ D.N D.cYU_da7?]f<(9gFh!zQn%/1&i.V7æBhPq@'˳\U(=vuSQ?9XtM8"H˜jJE9ͷlՀ>U_bxL:L"_R!rÐTTx?1H!"L^[((9#^U3hQEݔ{eiWږ @3YRvg58 <.<,*Q@, uߞ^)C ?ʶ,CyzN_}Cj&uT0]d}شH$YRwfANqFPw%>6?2!5ʊE& |6|bM=poQסڔ %y4es5Sa6yX6]#deTR530ȱ*-0 jvőR.nxmƧPq9Ebn'tzgug_V,HR'U/*ҿ@wy?sa"J9꺳!8ޔde\m?IDL6ɑ %0풶d@0H" l0ZuSa.Qڤx 1ן3C h^G g\uQl&T/3G4LW.0A7+2:vU̴?L 5  $t J6BmhW01!B"X'إt)]H.p6 z]M6u M п L!ZJpޣ{ԏ7ɞ@3h D.D\Gm NG@vt!zN ;3ؠ1d α-,XK *&{g7Sw=}9}-Էz䃲$hf#g^&(=B2IK7IomAHi/qK%| $t- jCծG w$f,@SiC-*ٕ!GU-{K-B RÆlO8wgzuLb/' ;1 25!o= ɰ ǂs9yo\ 6ȈLėP9c k:n֋/TB6PU/+NueMGAv)ŏJQV6XI["nD-9b,Ve@EG]0ia^hVIoKҀL Uע`p8iЙz[1*'qG l"!bW%;a* LFɍȭxe܃wKN01m}Uc")2j7uU?Hbdխ[{-9`4!L200)q%?- V~?C< 4bmQ~Cj;Uu" w6wfq29Di9 R@ *:k9F2LqӋ@uaoSxX :AM}&ި̶(Ӈf+8g 2jr-oV(-jbID  %ͩ S!}s/6<.tD: GkܧڂN2 #X4ٚYq-@RjXj4?A'E I8T,<4js8<|[պ@31Y|q)Vʝ/7H׍#¸e@O>'XHOPa^-#VvK4/4؏?AE? UO_YGg䲅 w}ߌ 9XzrIr1: w66}o A~.M_ GxcXs̕},ٚ4BE^<.:!.WmNԫHCVy<>fkCbI"{U BBF>XdASgj~#c ?ìUMZ'^O "r9۝!؆@3Ht߃iHgP{e}kÕ3 erPb,rn?uIJP9G&+׃ZJNS؈ ;5;0c߼>B!ml6dlq H[R4E1Dy {8̼-W؈5>ipdr<:huP;5) ƾ\pWzvQ|btVΟ6=^e} J\e#Gbrl㌞7 L'F |+xk#ӠW8LGEϘ`\ t_i ж^Ʒ5A>Z%cYbOH<88-a,j'0Iq9A~Pa)1mfp|9o `@"%l$_1DvlN]fpcCXԴ]3=ʀLV.r]v u WOXL+&R>XgFRLy{@!k̺-rDPI(7 D;Hb|6GZaKkZ7`}\gH\6&'KH'8!ݨ*ŵoE%"INy䷨?wsڮ)#J83Ik_]Ӽ$ty m>!#6JqhHkkCç挪u!sdIᮑI|9#cRpܮ`u/:31}DF쉩jE3Mb^8n+SrhM0g2Lt 8Mv .9zU80 w"tᠵk>N-]Dֶـ4;ȉɐb 5'kA8@٘GbvQSf $BV?!9:TJLiCH} f⢠u^rSy5dB6y]Tji|!=f<ulu VxWŗW{FV512#Ѵ@ّ3M3aѻԻGQgDqg7~nZZ[hU+Q ?51SM! tN*w04e>]64fL2G:ݐOx!m %9;G3~4v^!VM<,X2p)Fe vc*,ܦv?2ixu^{[TW/XC XS/sq&^^VsO[V4rؘndCHR ssl u)-ryf]#]wk.`iTz]íI2f_G[-gxwƹԽ*Cp4zavtt?D0Z0&Pk*ꡝD{o3{wR 38: _LAUMPG(xX~e)Cz .<fG-Ŀ"]*ḤC/SJbsQ;XV2>vVBil(z&C#WX~-z^-nIKyYux.XVl*J y/ zgwH(7{Q E-m.ޞg{aWyd8@i* Ȕ|@eS,yrn]$9,xM?r*{nâg]uO91#W~3eNpdۑX}'DOF*>;|# Xs w^ij0]JBm7S"{ylmfA4U&K/ƍ_*SHXP9C\F7{PFj uhdz`QjIVG g':kCնRc=\e?Bm 7wEG#FIXSvveL;+LIk^a$6U(:0jh+4n9[GtZ,kL|U}3cZD1òa:6`NiNn@TBaf3HoCB6J'E2e-igiL3 n^~@ 9Eh-A-aiB:-m)6Z.I[kbkɗ0&Cq|>/y#ʈnG2¨6YնQfGGЉ{ʂXNrcY\1[eOĦ[`\**ߴUa} []!l*lp$VTK_B_d6"Jc6lQb׏KUJu0 YeZ*{ _DKt\oPP쩎u^֏g=1|Cٖ.wLp {BVxVV „Y2UFobӖ^jp:Q=K_tgͶ =,)ԩϳp=8fm\6F,Ҵdꚴ+Tݍ'm5*(k`ǻ_W)w*$"ǹ ) AhӁJw7I]\P2r]Cmj)1dߤR懰'quܳ4r a O~7/O'9[)JV d ]^c CȤcyGpjpMYZMN7WS 6526+lzӷF.@VTYO 4@ vr8j\+;) <=3F_[ۉ4J9QmV# ikj;:L9]V:$."Wg,*n*i@ǷemŅOg} s$n x, ==l\r>s7埭/뿦*FlD}^ͽ;7|yCgÝOl$X`xctЬcٕW̩6U!;OB5@;?5xnc1 e (}]ŗ I^`<7ף]ځ({g@|"fPQ2*[@o G'1)h %K@j1EMHa ;I,W(_ Ŋm~l0u@~]oEB9& a*b%nV7%gxTAH.CS{cDɬDD>3P)4rD^;bj݈C0b~nU HsyT1 $<?==[@J>)ș abmt%Y"tN \gw%B$D^3f\bݍLt>r/%{58-0*)Hnc\VyRYO*i'tؒLd|--9_z T@XyUj^“ypXsbGPAw~X5`AҧJ>j/[ɜ2QLt'DYD#5ky([Cr W͕d"mJIMsD_,n= c1(k 8hKGErA`yjfCİ<= p @s3Xʰ4ڻĮ! )9"hDJY=JKDN\k eCV| @A1Mfe;i ,2YR׫73e5$(P.w=HXV׬?C?H<~U꾕%6=acU윹_+|m69c@8htΟ|Hx^Hp.B !zHa2n{\%|"Jz4'](c.F͟mEtE~ނKD ӝ3(mw^T- cYK#sʿs!l2TggB%&^ײ/S۔#wVd ."_~RƃZ=lf<%|Iw7[~hҬ w*iPl^Vy"6:,وRӁQ&$HJ7wuU짷Ԉض~ֵt.RQN6\g S g@p&Oj[X_]hn}E8;agHiG.1xno2I4qKd4ֽ<&.WꈎQ7LʓODZJhCtgdI6,!. he9j+5.Oa}J#Ɠ"&Uk'37qۿ 4~Y*R:lGV4UMdpy TKqbOGX'cKSRrWR `xbDErsA+z,I%D4څuV‹}!};1Ei"PxK?Ӟ/̹Vǜʮ|:أ? ہV6޷}5&(`Z!cdIDtz=!+cJuy=ٔ|z5?tK`3axD[ ~RBvC[Lq Cř3߬r~1VNo{ Fu/BjURv LGQ~5y=i+-/őXhfJ@젩F_MURHv*T#k=Z,a Ux6$DV)pl.Y2ȹw%69Ioڧ^߬@RtB~T_N ͠٨Iim97=G1<4.Nʉ{5\Nsq/{b 9~A gs+NN?,+ʆn?GEg#U=}Ld/> 0~)3GYGDMʋ5],{59Yc5BW:{dcEp$荂x4s>eYuѓG?*Y.~k"(a ~9{Q0ǒpV^sn} ȶH &ccȼBN/jTj[tD@j bX5P|n}?Xe9(i/{5 mj/%cz ѱPe02ibO㪄Weu5N*T?q+wIfbº2JeAJoT|M4u͇`so#OS+,7|+*lGΡ3/݀VK|&U#]\;ELqHFsOY i^MZjwd搽ZQU>ҡ ڦNR\79ލ ؊>B*tb VI{ܣ?",!#ͱtwں[΂?1lWlNG3v0>FWDܠF-Eldii?hJ^=ztQAK&xSkucBաUH$=/6aՆº%i5<(8R7(S1ig8R$CKJڱ;UYVC9~m_Lg\3)v71 aRauw[Z2S-\l0| )2CI쭆+R[ĶS?.h%R"+Y{]=SP$b”q zyD<2K\Fc* iLk0zpL*tTnC2=Knb۝2Ԓdgs_jm@;5aMnJH:R2<2 >g5g*s3nhqd?3a~)nfj#7+zYK@ODgD>hI/6:ϕunڜ+FZLs%"$߻j[ ?'vcy2sJש~ʈ1&1*M)/1Vjp_VܠĻ!9N\" )r~5#fnĠrn@y/K+p]Wg\SHĥx c6s@MGp`u?uz!Dߐ De/j\^uu֭{I~6𔎬 W[e~i)"6`6D4'Cry PUKq7dj:tłHI< :um|j*wKMs#l@ٳ>LlJe}qԓj 5s"ۅf'*Gbx]ĵ\[”瘇vJ#=;QinJgtt R|+"i)3⓵ΨP BZ a@/؟PA,w赉dй%D];sM_o*i 0}21q?@SΜ0 Q,֤ۦ8?Bp(uAz&N;䫶M&pj56>ހ9Tw !=-iٖ,-T(s"5"T'Z TrI'5 i`v#K(b lseu֏͊8r׊iuIT ]3We2d{=շRb㼨f @(Cc;"xd8bC;vM (?X!LDV%˗cʘ\ SΣ O RvtE,^ ƂK纆G1y_VETS>fC[>EjF-=[2)V%2yug2asT̤Rw_eo#o}tG Lg|DrI V"ozQFA>^w8f37Y#W$<AeAPeߎN1>xiSb:XS 4U;pM{zU [%9ui3U%PisL?xU="eGM^1:Yۣ@)P 6v3 /-geaLOe4 nx (nDu5E$XnB9 t+^0;ٺ?0.@$]L{CReRAU6!x% -QSԮvHu(|/]]Ŋd3QS-/^x8;=jW,-ߞ)\`P<_lWcx^f%NTsC{ [)hKL[ᚔ4:Wc6 i ,_CLƫ+:3|XF'fCzW#055v:}-Gǡ$G:!3l&]G%i$cu"W!u|Z~9}nΕg4XxWLѠ-{  D%d7j+xԔOuR'QE/ L&)"eg8)xM4ԾS.ΒX\NtzIƿ 5HYؠ)Ё6:|su*t3_2L=.n7 u~42օ bbB含Qͬ/u n5Ks~ @ J*EfSEH3ń*@9WMkhku?FU[5-Пq܏MNz&>2Ke+;HAʀ Kq/eG$Ψ)d] y-ԗDEh)Rڐ" # \ۺћ!a43 sx[ĤD$wN`eAtdZJ⿆aK\az1s@=6sjٲCUvFC `~`Ry [>;2klYI 7}~Е(mwhr֟ﰳW_]ٖF-QvKz).P 㕏ZrWTitzߴGFs{ xGN^GZҋ&Ǡ u@h4N5 rʡ#/9[eM d+=0̂ p"$^h@h2 B/aNsN)B g&x~wrJl:7>d4jV*`G4nIkbWfyc sZ1%5"L{NbŁrnkރ73,\p:Hm0y5*>N;?8صf !SI{ 7Vfi%5's]_,O~fh=}uGY{hZpV8NH:l7%İ;AԜCcY`lR"8)N$wmso.-whuTԤ"U]Ęa  v{$4 6<>c/H+ڂy#! 诛@D9oW{d<5 ENh+,ǫk>;IUf^i3'3$Δ˾:ftcNjS*,Dl1l#RDP)Yz5((]’kH3K?wuGx?b-||ρd)J9lSg$궶e8A\$sB bpO7AI]O_irww7Q/,!&==J$ dOj,ݣ ڶMbX1$40Tӿ0I%Qs/XXM7Xv!,&._plS…Xka(o@ۃznڐﶅ26 hy8 WL+#g/M8vCZ=B{$rav ' Vf$oJkR4H< Ԣ=]UG~%er}}\Iv?1!8FUeFa/eN0Y`7AJ$!$ZNL긙ɳ&uŲF-d)*$'%'(@SpJ(+@}l5>;S%* uqząl~6kӺaƐZl?Bfe RAʃ%:*V !\GZO(Q+8m4O>qGuWmoz豖M\tv7R#h͕ INFD!ih ,9w%TE+@KE{Ckiia;xyFwÂE▦=C gj1xI ͧwK<\^ $^Kr(H3ހ2Cf!CʡUK'<;d,i7n 0n> c=t"E!,TCw繩w:Ul-v<{ n(msdDIIGuGHFt%XiWʣdo\0}lcmZԕګg}HM rb4f),!.{tb=iД&S O3W÷lLkZ "]hԤnItq){Es (w~FFw/cġj8<6Vr6e$_D誢S[Dnl240VO{i=-LO Q\eO]U877`9f/X _׍K) VVW[M))=pm߃ʾ sx;*J <'x^sj#(RԮuS^] X /^|3DQOq.n>!o\+i[5(w{2CӍ`ψ;vusWIPv~{·:n'e*]jJ`)n'kPLݚ )YB ;J'|tuIFx f =zG77$A$Ubc IC䇦gdT ma] Zv,^ɛXwiނWUZAOnݗNg>A[fzed1ȁz?x"?#->SxrK[z,TXx9Mǭ=\mրwҡ+-| f`v]R b`9H̘ z^F<oBWD I 6C!ˌߑYd"goZ^ܠI`=yoRMn$5Q 1rL~x:Zxcbt@ݟ1fz~Q^0A) T9 ^i)T30>`7Hn͖~Nk Lc;ky J&-ݶr,'{L]*cR4>-p57~eb7q4,12(7xLp_kmwhF2rV+$ 'Jh,Dפl<`,.,2r͓?t\ 礐T-j+.Y٘Ya0=xAh30lX&=&.pC6^'<+YDG{$^b:֝ \L[@yh%ۙqU1ٽ\d!vt!/S0Zv'e2(zYސ s^BSIHjTݐJUyu :@)6Z [TL}W{SJ6kURX3oc)ڢe ]j%Э,ZD3 + Ӈ?Y5l\t"gk|WvH:1$~rW6]v^Mt  'Pq.3]ah-Hb _]=!: Yzi8;UOW#ʻD ^iwTwEE x+~oғ5HaRg,ULPBZE &[_x.p5W`=eL#jS}4He^f)os>rMКC M)@6Xrrt@U ]6Ǔ-3@mbf72[ f;>7뫚WNs"(KȨdwUWoE)P˳ui[im'ЮI*[ eaD)#=w*# $tYzt6otk7nӬDd釺(휟{k]JZ7>Bq zEMxaLLV/1?2}f *t'^##N&-MIO {Bb܄8I0ݏi2>]/j3ϔW8́0_J-Ы7؅@x tT+1)8ƚ2lN9~S${08.yh-ƍ4}N\ϨQ %(iGـɘZI٧%wѓCM:ˇ|~aτnMjk`,opuVb,❞kl3Svvjf~I#.*> WvޛJ݌tߕaZ^?{,MEyP5oIָ&} 3V2٩cz-ww߄nE;/ ! fKO.P 0yz=؞LRW5_ЙQ!Um-bC?NPH !6= J9H@zp1j&RA8O$~r$H)9y/Cwޣ_思8ܧ'kV~;_4vFۣG^M*c˱F:N7MT%QbMuQM뛇^k_͹%tk%ue(:i[z`?8U yLZ`D: #cV" ,ɮZ{U603 2}gl7B?07@gT3uU9_ #Iq&f*).9_i>ȱyz0ZN+=sVȹf>:[r*$LNG%؛fe'[»I8y6x6) D$2EbPt6`4Nik5 vwj`a0(O?rגHr/X>$ nP 7#+Txט =Y>nTE"ϯݖ/A#R^[s]M5Y|nc7 g*dV^AmGCt4_FQToHk0tzmPTEصF4؜v%~_- N{k w ©.&1r:؍1e-hӐ ^Xj_2\'!TPd%BY^88'W:Q{{WE?l0֡!m\/m!zfHb!sHYP&YmpS]//Amkmtд0˨qR(wզyU=(Uué&>en+ė0qdT.#LɧȓeB5R3]?N43P*3[y7Ĺ PcHm5=*3< ,NHXT}06wx52f̴dm/ZbX _8Wdy&Zܨ!a (Swg!m jjVNle\s3gxCWVGhsLU 3LOt4E i,z0g+;QjÍ!pq]؇3gr,N}]~E|P(lX݄Kr}8 ^9WyxXݳvwVƷ{1ݔ=%XQf5L> |B&:n(c:!v=ׇxy\=\˕I:e;ƅAcM,a4Uc8(_캥ա, z ]lzqXٸ6ޣ@P$Bx1ǠU{J2fh fNN*g%!_’O'2#m99ѥ7&bU<'iߏIfGn6Zxxn$n ^>n^2)RI OĄzUݵBV{Ac] VO18*GT5<й ׍'u/XMY}h[~[QZ 3?9`m)ڥ,>Nk";2ƹ2OI t?4\f@أa ;gL·n`Es0_!7q&bSvyx&P .xyӯ7w nXO`cwC5 wjE0s=tGAI %R4G 0 c~Y0oq@1FrJ~9%isj q pBHrӤ.YuR 7䷳3QCsp04 [f<4r.Yce])/0o~ 9֪-R1Qә]=XO97}͜D=w%=eczs+JT X!y,A nY.yts&&-,o`%`1t|`ޮ3yg 8TeT::9c6 9gVgkK+o-r6"ÎXYS޻oPt DQQo44mIk Eɥ1}b+Yӻy-}w1wnũ'%n}͑h0[Ta%nQͪf{LzV,+˖M>(uHc|oB~ $l0q!xT4ZTeW`B(Ϛo<;3gY{iW%`rʹ"u۳)}CU.o0ەd14gLKzF]bv#eiUg4 cUʆWˏ<26AK|v0p= Vnv:d/:` GfZ( ߤ33)c6Vؿ,j@7mSXAs(5bOo3jˆmrz/SRdz=Ŀ42E0r 0kU#29J:UxTiَ'/WsځXk|8i k1,p~+E* q]ʏqW|T);b.N ׬,[#ַeY4C# JRrEz~rz?eT ^LLLձ3-6ԼHohXzۓ"G8!*W'R5{] gm@DX YEdU|e pbt8ube'Q*<2rưlW-nmwGko5ׄJ \oNNؒޔw~:PBȚqӶ^.UHu7}ajUK us3dWƻ΀4ԓjDSjN&^AɎ>:@i"`*q yGF@FReH ĺq}Ɨ<{U'()dF?ݠPD[bGBmYBcN6h-ފ߬y 7m0151#ʫ;ZǽO")X4VWj '}<޿+e..rn'm͢7;D1<2a#.;|mX ͎Z>7%ƌDžq- iMZ HIy,g>?o½ؠI_LvMɠFi3F#LEXqtx\'(Dݕ!QFGcNT.LMFQEYvf}2OH4ȻE}n.͜NòGsP-;n ]Ԓ|G/L6:ءY.GYe(WfHqM:~lvY+SH irH+[0TA]jD3J1UD8])zXAgHws:i3RJSKU=$E~aVMdch9EM Bc@s" ֯i%?+N 9_ܰ c0MFԮRS22>OJ2Q9mRc @% ImaZe2OKIO4M`R~4Ѳ8c䊚&(N!7|z2 y-UXn7k[H\Ub`7?rPTygv]ٖ\^G]CNW-<ػY.! `T8!2mL{~V6]"T]&qlaL%>b^R;Vb _pu쳁BB笕5TN؞Xh8N+k$ 3㱙YuљVI@>`Y qTD=N=ۑfZzpZ5on>mɳ]QӫNƆO(Gc |~ò"͘Ng&)44?:9(,v__OG =x>J0^;]'C%,%uGYBv_?o0PM%!QvEA/F9͸ĺQp$\xؾaP[Ԯu2OsGKa8A0Tn_g r[U3Jc蛀)Ezu@=6Xx3KY|ZDlS0]k[󳈂)/'eIZf52eVu>#ϨH >3АrfEL;E[ЅST5֝2W;[SːL=vrջ8#q{`߉*i?^(#SjS+Q;"!(XRm@~W6c.|m: Z+ hR{ PRV]$cN.F>x]ScLMqF!G6 !qI4?5'N xAE,7z~OTT?',o- /-GVƀ|C|'E%śQKm`]쫙4s/80ђv! vq XK)'?P礛a47>d&xo Ň.&0>rLA9LTե<-_њL^c^Ƿ_SGdٟi[ͨL{,tG$5N~ƌ:ŵN_IV"8H92ABŶ CјErwHBaZb7p#q?4n/+sf 9qmw K;iABі&kT̘vT-) Ĭ9HJng kX3QνJ/)lJ%FNx^+z?v)ޯm&x$utnBT[3ȜHa͟1cx(u΢_^ כnUŭ(kBڍQuTuB!T|bvу'.▫)BQ <fFAmX4~Ş`TuTpv˱>:J{ơHX?ߋ9le RĮz-&eWHfyȄ{}K4>zn 2*$.hTK DZؑh|i,nn]e \\¡Ʋ):z Yǧ9zGҲp# F K5)@: z$PT8(hI.9EW3W) hޣ^\kґl5;- =,GZ q.wQq=|Ч6Mp Ӹ-Y̞w,N,3VY& a=sxƝ;Hv y.nvr)jqkgá7x~_",%mmkCCNWrנ׆L$-`_Z>^;{v~U:цgXs{}>I}pCntDgi2u0+'7, zOzD:|# )ฆr2#,gTeRtٻ$źtB'>sADp`r2ΐϮofM(nGeYQ| a~k w]#/btw!V&\dgQ_G?H9m$NCn{a*Q??yӡ:ve3 +OLn{ł-:i{^hk'\1)e-}Ϋ `$e6 l1XOx8e>)9*l!:lCۣouNl([_>Zfa5aޤiYfT!(A~"j.Cc+|xRWMO[J_tzqsbOh IIHũ㓹!y .Fcm.8 lQ.&?썰uӐE'ԚDcK *mM&Mc9x_!՗6ʴLNA!I%ZW6k9;73ㄲx2ޝ; lofEo~h@Nw@4<33SuAB);-qAoռ]+^iT#G\L*MNDS>Lڶ`Dl% s)tfE glJ WEWiXmƔh 19jL[~@`8uʯuP&rc] iWf2ƹ/\HLSWTI {oqd0^fgwnruk`, UdBd#e'=FI* Cz75 ){lC :HEung ]DWi@n/Y{rWkqh>M} µ]v[S/6>T݈xG0h%X59[X`&OB7눦NrRֱczQ}$ EwMJOC[!PzD}dS߬egޮF&i5SDj]q@G~ 4 : u;% =\Pĕߪ\ m.%„q"#G%B:">>v: &1DcnD#2q WB8t6>6fchrf\# ,TZaU1DC4W⧆tS4:VTx}f1J:\TϿ݂ :?u[_ B@-j\\5} H)S%#rI%7}:jlRcU "IfO\USgemҚ,o6 .DrdIՕc4Jz$.Bp8v~b[27|cZK|1cVlF윧1G"No܃;ꫪ}pz]4@y càŌx~IMUJRaee iְ\{rR+O!Zg{Aau#@`* 756o{K )9i2e?𽓡_3y]F~} Bg)qlQỾNy۠>M v+h0l{ʟ71g4LzgYl2z ޹O3^a͉c깔Lw 6}7$.%y &3nU(kmWػO{N^E?Ao@sX_9U> Pp}Pr8=V-=w5"$8Z&y+)Ck.ⵅYXd)ݙ{J0DOLcCl<;R됉gFsS 4!$v>-ol+wRuo$+ٗ Z)@o\rpfCVp4Xr=k}hm߆r o9.-tܿEd(AJxޗ*{b!j"D8AU5k nM8Mu׫&ŷFfgͥ{b5\Q^AsŔ*qp,O pНT[wkC/J>VOGC ;-L,+e;g.=FhXMtqXU-q^:.lyK vUqi0 Vmu X#uRbO\8V bBv ]>m#J.;+{3p :It|1y<[i:[.-hk?'3:4Rs/|_Y®tPn_dN!3{Z. ~򫧃^vxr^ajp-.i R–hتn}i>R;,l<d]5INl T詳+}߉tZ)=!/ZJ0#RHY9j泾߭Jq4l>gݴ ~lGӀ)V|hf"0P%=vImJR$ zb cgP?OhYyF@\Dq+Qz{9pud`Jmop)A:-r~Ͱ/~ lhRP$?jU fh9/'-#Zlnv3L48?XA7/z3}X.*Gaȣ dn0.^OJP[ +B|Y)^C/[HrmRFJW0p\x|:Fz0"S`333E;z%Y$#3̮\*HQ.cG# z9Ds_W.0[ɕeB*m‡}DS9 _R\%2%PU>"U*kJ7+UW8#wQo#vlj2-P{Z!$^3Po+U`X@qCS',*GF15J^N*YSuP-t68x.:/7> ޙ|/)P*n8vj?ٔ/-¿bDAmI+RN*eLFM@1Tik`> cwtG1ps[JiI08ց46I4)@pcAuۻHJg?'vY0jMf"MT\o$tau~ 8z0u;~mj\mQ r KXNKA6ZKBg[ޔ´b JIHW؋9$Sv$C*CkiDtߏ(H!Nb qBe$AH({PI|B͉s )_,}gV_Fb=o㏓skZu)[MK38rȈQ3n?x_ .;qB/Jݰ6"h_;i@`iÃFJϦ5ڷ@ IC0ͳpL)~z:@%tk9girS; ,Xa,q&*/vj8c0RѸ[V[-\H)݁zw(lu3"K[15<u p%dL-9ْ2]0ׅf-9و6ܯ2GΨA%`Бv|A|Y[gגQBBXcaC |a"ny!;ִ^"Z % 2G8ցDVcpII;Dz)eئ95E dL<+:F 8x_goU˞@])TtHlwհx89ζxJDzRE|V  Q[yMrSI< Wu_W<RfJExL]٪젷SS3M?V `:_,{X&r5{! M2J8{|\ʵܾ$Z4̰!.>o:(@`s]g^l/#I?le?Tש|֒8{K3$cgw!JWY,d2nUU/vsDR`ؖ#1yyygu/"Gtv`jK\NQG`i ̀1مOW!rϙ|ptX`pX?XN7Inq^[XRu1N}R8ﰰHC!ii}4-YUr'C|p-R3$lבO@>Ph\&pu /Hb/T&6]O=?ԋR}ViGJ 2}Pf"C'1Z&.5dez5.(C~We8,њD?d&]!ZGR?W{sw0`33~]Q<7(U5Pྚ}HsIƊ YEtUnUS൦: Gz uBg[*KiA/kHXdQz[OlK#42_{4(2rcFꆒa,/Iqmy!~ 4B VIјȝQ\/+RKR\LRHO}kJ"O"ީiG5NT l]}Cqv𯺘l1|oKUǠa;H9홛1VS> `u_2>>(D-YF,rOlN{Li@6kmYTܽHB2F?c7[&s;HDY sm#yegb\ـ8I+j=m@Ʒ N1<*)k_촣m- FsQ]ekW ?>)75fzŌ_ns~ ߃vgɭuAUmM3Y4m!mLɯjsYOaCBĽ%3.e#6IC*I rmk'%Gl3і,.^XAՍh* ]_,> `R>)2w' U/rOihArS,');)0At tR﯇|$Uur;Wu2X/񂮬FwpEf*qfKHnlmx&|vyf2ݢ/k'Kp"wq *!Jې0gsuJ߈LR:&2p@(mb4N(ڙ6QdEnWzhϺb}`!J*\Wzj":g]la-FdPt$~&(D0^cSt'`h&ض?;v+u'I]AT-B.j|_dbXMs\HjkK5cBElAr芁:1\z'DRmY R"= { 8h?5GMdޥRhՃ' Nt$8a=u&!?σReLtx@$yV֎)3։9DwA浦h=+ا;g{[7bo }mpׁgJjY_JC'B6[N ><{ėS@.Ǫ%8jX^xVu&h6 x9efOwP\|\aYȠlw'gA/\G/*|w;(2ݓTI6G{uxZ=^{Y9hwc}LiqqW'_0VY<'Fdb w5_$D}.d1R*xt+PWufɊX{xYe`oϦo&2@J1Ӭ;?ǀrWVV#QpJ՗[S˶3/n{W; !{C\]#+\:v%~yv紀M>{˛&ΨW+%_ F3 c@Mq6*7}&H7Om JHk5_貄vFTjz$Q'ZdP2{3b֡nn@ 6y5 A%rzy[Ӏr cbkwJ,Ph͆e/!{zq]R1LWn{Ε_EcR}/ JϣܚFU fuSűIIt>hW#{?EA4 v3=rn"3qsLZ+tEB{GEs1'E9Ư6kf7hw 5Zt^1/˰ۿdMyR{-9c, DD k{yӎܝx/䑒Bq* 3̌btJ4 AeoEvȶa̳[ #OPv%ɋػ{_Х:4Cy;Agb`L! }eLD/yρݮ=9:'.?1;z#HV].d;J> u6 cuTmҰ^##D4llofw(?Q'Tۨ^bK -]|ɸ(m"h,CE _Cj=qV(gAqo_kQmNۯm[E Ȭ/hV^+J ;Ȼ>M2{ܒڳo.NQ ̣ 5y$+g;C*GnlNQSpQ~3*#CIѲi򌖢v.t~rU|%H*1%t-h=s;"ZW9XO-]ejn؜pؗ hl[0Pg5q9[[Ո}K~B{+GFMl-B[g&!]L ?=o.ћu+-FT{ȫҴb5XsAw[hJEIԍjFoh$MSwX&fbu#-F=~?!61YRLzVxKacwe\D(*o mvV1ouM҅ C&ZioaObSH{\oxl:ILwЇvGnPU%8<7%SyE+=vpzu1ÌPO`C@8Y7hv]p^CÌ&YSu~7˖;rUظfew3WUAԉd/"4-%^n7V=u5uGadcCQ]CNo6F֩47 EJdN%/GU/I >)g;g]<9:,,k}rW5~0ƣ ߇HpB޽OmQ.+p{A;^XdKJ;Syd:vn W,v! ]}%ʼ+#ұ;f.,b `E?`#3Y>/cCn1HDiJ-r#ة(L1c[p4؂&AU"ksTSYU Zd<|T_2vg&oOuS?Jy2TwG3l[Uz^{5 ټ87?dinMhpJ% ` *JhnFѼ侀iq؄ BFYpzJ򚝌zF*nmX jyեQUY_x.t N (.rL☌CO# @Ͻ4/er<) Nv9bV<Rx7^ge"G,AT*_ T&dC0tcNcSW r\ ꩞Ců.{W 9ERuWIգCL{I jTsD¯ÏV{O-%ޟT[;1#J2Ǧ/Y(qȔ|0cgT nɈHG§?Z-3*#tL+-HrW?PJ9ft\aﵗo/*lKBQ:5<1l)\5dNe-4)`5jvJ{Z|Is%^;8)9%8rw?ᱎOATotX=ȗ^ Ao[L n=ذZIz]1mkΏHfS*<Ɩ_^4'̢?~5V.& OϨywS5+ H*2N`\h~.pL.h&Jk^JTBukt WllZ XJm;8B'սY),ƃ"%뚓̻9REI 9a?۹| 31 hT\uMheßZE8!ᾼD+5#cz[}S @w;~ k?h,5e)KeyiN_qSF-ؠv{Eg\^^sm;[:6ꈪ͐3\gMNPQ3k/r+\/tY2z~Tckgs}/AC&1-pmkBCgFI3?UGO`D-tB?3̣xv63qvu@?(έ=qHflo$cvdѣ8λ1X( ]5ֆ?0r { $9NG!09Myg @J'3ጢ_u 0]S=5J=P3K;<λB9(@"^b]lbf^,urئOcZw }tMx|_"(vO(Un#xm /e|33H幺!4G !GzPΨka"ST^PZQ2u`<"trur9x],/Yk+ٯ*i2o \h# zaDQQ?]/Qu#ބXB/v47WG>h!0݌n{"@ ш(&TS떳v"͝Sp2Yvukc2^ՂhCi8&7֐88" $:\g.h (tc$Xy|CnByM9}HI yv=9^ 5t  6}l=_@;M6&OHLRy -Ldq3Tvi]tΧ'zh;1~1O~&LS(lZhRp}11>`ThupzX-I0  {'uY+30'>9AwI\ EdSYB{B4<Ƶx.鉄~H_be倁e{~ukhjmElc$gijTW>&6BXN)[ѿNǎ6ߧy*qᯋ]@uJbY…*:7r ,e[~{ת-Nk^ !m93J --|TOچ$f+6ъvLrLx)M#TX"P]WH*>Sp-FZnשMPee~/I *jAp|*EREsY9w~/X<m+sۭ.*rP/7 ]3V6] [YГUKguD.2^q^!5/FUnђy(t.Kouz$À{cw3z+;'}-{ )Ϭw+!ɹ~B>z-iOLu] "7\ӼqKJEJKj1㉻֊w_Tt0#8 c;lbY.Ui{ecb|,A%;.:B޳jͰVtS]&/;D،=P۬ ٔ!qt1dVD[BMw&~/fL-ۓQlq2 HH˱ ߑ$㸈o==CQCzf~mC{/{7QNZ Q;/w{tA"q=>I0݂S%0u&Ȟ=(=ė.ɔ2b\ܘNOv~g75r1!h^Dڍ!Exy*9=)>1`Y8J7}UP\~Y>C[zI) 8vi{MG`\ /e,y8ե!.tNxCR}TX@G5`L0aa=tD )P xy۹3sW+~6's^_y^_u_[ÏW7D=#T%5 y.:-Abe1*OD(BqD9nuh}\ Ϩ]> j~$s'q( &sd A_(WR"G$H@<22צ' ~+,kRثXpb;7o̬aUL&G8lvԁI_Q!㩶ha:pݓm"|;?`?fԖ\W}skz-,d`/yzTM;|D4y0 ajHMK?e(X UISu,"2k:cop7No3d:fMZ"(Nng%6 Ɠߟ:Ĕ ]-̍!5X"z7a>h&lXFZB)b;^cF_K? WICf$ #?Cm\}~(cdoD得`Lo}dosH<(v,nw_W9c%H U;51 +M~wH{i9z{puTFiP^ە|0SNޮ/حz٭w  Og$Cr/3^/\RDF>`^ҵVg0PҮ`&?".0,gR7*jJqxu$a@8VȇWʯ cX^Ȕ.UN /2p 6E#vlx!ݽ͞?2o^Xؑ ląLy+ZfkxVl++61Ir(r@m#{={#Ua?,{pr_ܕ<߭oBRv?Cƍ٩as斊 kq"h&vc&`$8稔1]z%B2A2 }0n FDZޛ43!:ҋS5pyqwW}`zཐGp4 cX3G{J[ON|puW'gW g5B2xl YDN2T܋-V }'`(/i%ՅӲiUFUBNm\Ό-#e[EC1`k$\֟ b  ud}/ť޸]Cwd %H$ [ "\.cSJk|?6\m hXyѴG9xR=*4sښP= v*n%EFqٴ-->>ܖ*yhyԗ"NPAc<ʘ08u) sW7ͦ@ڱ !R S&fq f8_6sބImU^3M: ėAP`NǞ)зo,Uț>_/.~bNĵizyM,\f^<=j&iTsR+]:>?oȟ(P 0)=SR% -KOkbHCՏ^88m69h还N2emux7nUNWwxӃf7K"p"/[8SF:ЙvT"]?$*Q^^TsT{' H 9Kib@-C;nV;Cԧ%)lUm0ti#Bv@&㽱N[b0-H{W˜gܩ9[$*ԾLpF!lS4A+Is/`/wB*n+E^S9j2)qb:%C B?)9 Qje( )Mhuyfi% ;S".l9*zC tB% v=\:G -"mzMYgPu7UXbA+_ u*ƎTu=Ҩm͎sbd9w Y*%UEKw<λ;>*6B?s4MTy֑ٚ`Oi[5&6Z!龼yH[yAi|Vcu`2)1M\xh{D@a:m\:EܑO;6exܭ/f D fՙ GTJ(IA'5 O~f@ b^\LhaE!Uv{.ٓ4AO.s"%k`?mƊ= .9qL8'|V"61:W'&3fc!$s1!6qS yiH3J(D7y_/okYqXqѾ}{Mܲ \ڣTTMr xYH ^J#֊B*YT3 Ԋ5cƷ]yI:[c4 鞉op,5+Azhw[E1jcS4GN^i!/(ꉩ)7+ML 3Is-\8_!!itE:݋SĥҶ>ٔ)bzGu3UՐhoHn%)]d\B+_%+^e'{Ph v+%4]M&LBP&sxؾ*1|KδB~泘 2:xAzpǾI,!Mv9G~9GcoZ~ĵF$6g >NR ̦DIsB ` $nHT.ӳV†71Gӕ> D@ }x<|<ˀ]v+0bƱ"i)gFk"wG8#~6,޴bnUHM"oY(p1ncq(Ҿ` U!Wd~@{J,w%,B4 gRU)wf=@Ѫ}aSw8Kpx>pTdQ&3p2Њ雺Dpg{}FVo֒V1|PeBSPIxbOzm`z=1RH7?:,LȘy:r/^K_ύEŬḬ){u=x#Ib~:*IbˏQgػ~G3K): b_f@.bP;4m Ҫ;mGl yMW߼ DB3`ăiܭBԌqxʆi?Mw빮leea/)ZN!xW(`D|XEs[rC7zu~m(+݄;6+9ޟc@g>ՕiT9d AK j\NY00mbx mꃅ_bMe/0ޔ'ܽ"kj;ش[wΙ$ 'qT-|*_\ԥ`l_1X hE> t㍎C(Bnkغ "`pޯQF{Ij`^&c.)\4DIN 9_8]v GGp'bPJzZXb+||P٭"ӳsD0ߘXSOZ296`GƾտKꬕ.ޑ:zBl4xGy;q.n#9=w+d[.ʜ)ѳö'?A<|MؚޖcNBUk5rq_Jу87hV$szoYelf%gP 7h [q15sISڱ%4j؃HFT5 B^Ь'Mnu/}{n1Gp\<5m'S`XV>!=X(a8͘{m %LAANʛgS8JR+#Ѣ{Q=4S n$\ľvH-z쎀Gr>GMˍ W%f&mx5 ̍%5l>rUxCp WG7TS4rXxG7'X32z=hz/pܝ$ҵt pc;hl z ,NO@~ EZ)] NA3??m3kNvE$ nPFR(rd9_zw: ̥YU+)>a5K }lFI1kEi8-aErڎ v)iZ L[^YUxx _Z94Ewl zg-^ [/SŒ ʦ/>:Z,])}aU*kut zxդ*c1WC,Ӣڲwڭ]|/|~W^JDwo2Vj"hoצz)#)_.(va} XJI\ivt2!" Xk#MBdZƙ6ءI Q_ה%l8NQ4\_܁~r$AH | RV-ӸVx ܅S{Zr_HE zZގKqWq*f] b(,|L%S4hx pa<b=$?'p 6wSp5 ܭZVeK8az ˛vKr:65PK4aȟ3bY73̤zvKj?-ǃwXl̕lmй1UnJ3{9q%)Vw.d?ߩPP :#ҴFlML"0#5-cl4l XR94Ey^k.|EȻz% ʳkglM&18/g`)#"uvx(\z3={Gp;CG?@2KS؊R[7x iQty~D3$|6d |Ʌuu ԥo_&#d G^Rfu)0<ԣvh\9h>뢼Ԯx6Z| h̓ 7;ExM+B#<3ǤgIwr-D7Дq5B:CwTh*#3&}@U0 gulZo' 1Y7Q+ k*[ukoqC'lĬ0`n;ezA1I%Zr]Yf\Ռ]vuXYdӇ VdQ n+Qp"2!r4cU tX {X9fi HL+3)1L`ي<9}Uos%XmM4W# >2#RcUvEgNB.۽2ezf`e>ׂ_ mJR>$@xŅ 5^Gt˙vjNl>@loP:|}V]CYa"z%B5)+>>#h7לʧaPA Fmm5tGify"<#ьJwoLk%#2W/79̨r3Ӹ;D8Fc3D+$f&@gnl7쎂6Ek߯Ni÷ *U`fF8Q`U\lU^',9/o90U(_hZr!W !"cE%}]46_#y== s9Cw95k>U\^-Me]៦#7rQ54L!I~.SWm S&WSGi1\jU`Ȏ8L`ژLg|/u<$j:o9 +m5852༳{K.Mb+kxOtmzbRn+kx[Sk{xyJe]\7("ojԠ̠̈3&׾ixiDO"M89hDo2\´:_7EWx ]nވP``@Z u.- lFy{qczgu|AR9E7O_ P_goպ2I}aaVs*UEj_NzebtU{U[acf|*dx>wY\{9Vq!DyJu[.Wt2jAP^x+kF fTm#rI\c0`=?ҟ7ί!E;[{AC%B=&GBw3vW&Ў~ZZKvb`wny28&U2[TbVRdRݤJZ t=nL؍0fe` d47)j/0ܚdC4Zqk?"eκq(=Q)Iy͟;W,T_ R[{r/h#|\|Ue5"q 'joҿ%ZoTk4SDctjF3Wc#k !:dqs")X5blTBeE&T`@U7o/whn>Lr+H QGk)R*g{ː5r*7nT<~\*Eos(֡u2q._壂SO`W^G;i؃( *?$__ rR7SQ;QHSv@,W.BzQd1ڕEdH#VLߞdFPYJ|#50Ir$x AoWp~\ŌsR5*sQ  bģ\tS'AUL@#H~"ϋP+_?@>E}ZWbnzs R}> (aJ.pu{<`uJ ~AWݨ\91 C䕉 Q*i݋ZR&$NJ,WFASX˷ uAG\'=ō[+'kFypRfC<&rSМ[s}ͿX|-V].>؆8]+ ŘȞ|` A:mq?=(.k,>^PJ`i$2d"c d4)5ҬZ;{$}45kd>`[/@-3`!N@ӫa05I4D1cNN͌_YIݛ*H{ ZRBBT3{J.xopxhcTMңMϒv*&+ 74?x ?,%rRjt۫vǎCk +l4B*fTS9I9D(ܫ@6L+ܳJ1m45dm|j}һj:P֧p M'liVߠKtwOMے}k0S 0/NS-9z PdkZ+Wd|v%Gb첛ظr q~tDcƇ#)!+anYcAD SO4#sAr C[g){P!oQr ^@[xln˝U=H{eچF sj1]U2#|RNŇJ#uk^ o[>FPxY) No4q K|tl3W͠ Rbñ{=ǖrFu)B'+vܿ٣Phs* $o5ތha6xF%qYς}N~MԞ`g7Ayi1Z.)BD^` z *N%.&Pdxa NԞR#8˘ ~R15v&5D^6c(%g3CLlffvn6Bvn|,(neme3R,`;q+Lo8,GdfQHGZs Ol*oImI3԰G^jIk13⊘Xi?@DJ!`kvzh˗Pa(eaϨ4?5#܋'u48W*yX_neKdJF$ӣV^b6w oWp e+ 6zx'oe,[oײRL7{ۆ.iPR:Bw# ,KwGњp\dk0N}C,1B z h$0F$WT(PH-$$\_Av_?7 CEM35٨3;Ц BqJWm*ܙmoWeꓜd`UOqFuw,_\wĶB eͫ8̈́TJ&u <~ A"P/sH//GCԲRt9LrWB]YCZ] !Key!$=\3C, ~>CB_K-s-X,OToqdvlǺf}^O9)ȸ BalZ vv*Z@(CJUŬTJ4xIlA 3>}-BEn* lwɔK$Z-VQ1C3"XqXrMm[\DUVonRuf2I"ml,Z/2i&wΙ!.fu-1^|m^ur?땮$?CCKA9nrk^'FsO"}rNYvB f'9p6,`jy/2YP]Y̠2!re.ևir:H/-dӌIE!2 Ť Sz8 Lx>~"dЩc95EwLc~qĒ镕H?=$c"&fe )*bX"8"C4>FK9҆s] :c.\*5=]ʍ)C8޿"!Q]7W_'ٜ\(eL2P z't꫘4̛AG,J_It; 8}/-'/FĎuld-hC0jN`Ţ=hdu M}npOͪ(:fޯ{6ۄ4XB;p˽<V/GC甴 X4Z[1G,aûZ)z(wzk_2skp8GbD|4sj;"3yV2N8y=]y!7aP78?E!NŒQ󤣟3WX7fwN̘2`8k'"1kl;}GrBN9¨H j\q;Xh"]PpLU&7NP1vtp{Y@MzwUHG '@愽O*#XB 5P[TiInSQ Hufq]Dfɽ.1fqQ:ku~˚4]%U yOj" *~ ˟164\=mEMCLz}4D2 ]}=j<^@gKgR +jM?p =c"1g,2HR~]2xѤ2* &n`') Y jAZ>Bx9, I&{ΞhSN$M\;::-:CbWAfq;]M zR{B {H14e j1-Hg{嶀j   ΍3ǒRd{j/c)TwY&A+zˆg z+{QmM9{uX_&@oQU$/^$_qv0&bZjQAhF\sr:2pdH }#ۈAO|Dc벐/Jr\J/&8_!2:F~sΌPy*H|`1K#NPV;0Κ?OYHELg^a:ڥ؛a;AjlޗOjeI/FN[Ih`lAX0mK BJtNGMpτ ?IFdy٧2Mv_fbmgW@CZ}$Łߝ2鱵sFo`tկk\nph0-VL8t1 smw0p @d"a]S֩^%Q Gbcc-I!pHGKwDsZ@a W7Ku,g6VWGAјe:)3Y?92H!C<w9ځᖼe@F֘`k”ăOh^:.[ BE3wCcb/CP`&bLLJ~E6(?K%/xx4yV#p %S~-b38fR1A iټq5pĊS k-7@JoTQ>zu\#@΁9@-jmuqDC1,)K^vW;<)j%FO+d6Rvkb,a e_%ZccZ؅A\wjJ@l6'6*hye~62J \E"jna$Djfd•.vJ\CU.}s62m8דdlmΏ5r'4$ 뇊 1߅6 cMCm5Hzs*аx&HvO5NHiazS#[չ;Zp|)v)RX*ҋB9~ܙ'jF]cҪJOE,ߢ~*;'o)$T`cuJ9ř75#XiU2dKm_WF⨕,#pj4cTT ?fYtKemiIqI"w]eRU3QG%KxH {S6 v"\8F+ۙ ]i)hL{2! X?] ̄g;N+u}3'%sUmRbgUtDU݃ቮod%Yh}}mO_iv^,#}ƃWm;0UBu;z8j0 &F>Ȑ"z΁9Jvu3'0Oh}o_E.a7P7i^aͰEmrkqY>>N}[6iۣ# ˨E/͊A5} џH,S|oJ[h~ 9םw'B5ʀ>)c Ps}~Op8nL4J8kVGbïMC|E! |F@Yf &luHv|[! b:l˗IVW 3 Hw{H>;bTf 8;Ǐ] >rD#7DvXR z|d(VGRoVKR1t&]/b>92^a,MŃ-;LT g;)@aTXq*:6~^L4}^Z̀6Y8FzX4{>y\ u܎_/^\SN煺xI@$(͘I}krqFCj_Q>ul]) VH)QT0?0UF9N&或7nğ)1 y4fUCYSX8'(_9CA\ji?eOc)}͠L:ӻLfzgҘ .7m0i{~pp~h< } +pd4`}Wvw>N&\aٖBHx؁|$`mbu8-NnFxca9 LgrtPQVa"oT6KEm]tKwEn&5y>P5Y/qIyX|VOҳ`4h x,c6c0Aci>}O;H<`pm5S b[<&/@lX3䲀x圾lnx.3e@c{==K̋U}y*˃ Fs;⟂#ʎPJpMgic#-;l<4ywL ^>p_xe-Y=t4 ރ}Ԙf{/iDJމG " j% n=fdfi3A,FCnkږ=Y~^!8%Cf@cRدD[ni$f vt걚[Z_, 5F !~7"vG B(ƀ5 +|S”PjW?u>EA[7PZajrz )4d]7ceOѷ+h!u(DlAб5J<`nF.*b _a< ѝ(j+/.3 mIPd#P3) IϾxV * X <15yS*r⇏L4`ҕĖ[JMdY*Gb x,jiPMN֮hE*(0(0SZZa 7]yGra;TP7('*2 TC¹#uAhO*f@(iKK~uo\i%Z*uLc= 1d@eוnVokx+S$ވ8N7BYG<դ#; Ҡ˭/تHxnֺۓ蜘m (m+ݔ6!Lh#+ d ٢+DA>?4}`#*ygM,L) G否w9X#8ѬmUk\^) -/rp$krXv[I5] @.yfqdXݔ+?߲g">@hkR<2 kp$}=,&Ek$Έbfkj;܇¹W5hr"-s]q#.+J)rgs>xGSFQB<3p`O WM܇^Y}aͺKa_؆ka2]:*W6М/kĸ ]y 7z1G*zm63@]Y4NȼZSxtHtKtO m fذokؕ&}ˍǍχkLY׫󙭡]=ilUߜpw`v g%-$p;'G'$<(ڠmb3J!,7[)oO$8c৷eqPvnsGȵ59Z$dc{ZC/4U!E\ZTj"z$2'Fhpb@@Qơ+Q_Q?lF~P/۔@7zWj(V=f$:ѴԼE0&%X >0h+â}KD:#X NrVBЕTTsD~aw=`: b?lr.1;xqd(m03XȪl^\F 46l\?~bP.S SW'xƟ瓪çĮ@rzdwKluiB"Lԯ)m(1E3C) xW6jV!}2%HܧH+ 笂E%}h1t"b̲!VGkyA&׃{w1,j#hkppȾ uU6Zv=eD;Eб<,dk|(EzO4]GLPKQhMFpz_(O'皩tMOG|܂MXzl1И\;aΦxs_dD4[HP*n9bSR*hvӱiH5-*=&DIv]0YNCOQUj6kBK`m֎,D85yΈo^/|(: ,)X^+&.uHM>'sb/zr3p"s3e t8u/ ctnYdYg,FH̓!Y mF`GA4=f4: no W7v|>sEo\jt)KBθ;}ag*;آE;/x[:\\]t^1QtM,0Ʋ3:-] j"4Vt vT^teSXk |,%TEQD.ǺIe2@?y\X 0sC-M%r*P]VGўQl2Ҋ@WwW]=BP ؋nE@;-!sa$}?i{$:aH MI}g qs0MٌWIFl+O 3%]ibI-vj񤔖Vy{bx_5xC~ę&e>AsY'5~]V4wn:Ow-$qAn4Ft ^D>T}%R$K?"_KIlPߺJLtg4yp :8~u5ZQd̠E}egxǧ|tI{~` -p\GcXҊ2l\3 pi"''L .٤@LoutϹ8a6sh5w:*[w>!(35A)|VR}cprƼzYհS-ŬI!vn zPGՙHZTA.9߼]dic J0e`OV̝&9Oe棯~c[U3S3CֲwEHaKම.Xxox2P Ny_aY+84!%~q= *\ }˺) v Zd 5;2&)dRx7SJc|gYnݼ1S?.Wτ F+wls`w v#O"کMGqϼ-̉.bPN ɴ)`c,5pz Mt}ֺ3Y5&ծ%aM0\\2LPjw?eT.>Q[ipƾ!"?!IRUU #H1R8~=)w^؝~ϨMŋϴ'Sxo (Gd>ޝӢ8xO!|me,\gcUeN`fqD WCb +wU79}C}vCg"`ތwUg Oo0/&9Dpt=`w yᄍlLI- o.)z{"JkO*- ) Yᕠnr~o'#\`[*Vowxl_:? r{ ejxDhfq? '}ܙ7!A4|Y~$wKzPu_{]Vwa1J*Pm_osXzڊ:M1ѝUd -M(}Nn|X54jA$p7zf_p?U%3@aY$ \uB(:%1HrQGy=ř('%|D'!La_U􈗩5IJm? vFЁ#Tġgb*'.E3WhpWL@'ёsMqhnB |^QOOꉫl.ىQOdmivܚ)LFc'PJ.a7^g] OHJD>{^p8R4e:#`Wz\EP* 䉑k݀_ʂ ]Y+5;+ٿh q ϦRI^U''`2N߁ cE#n%8I3֍()Q`Mb yF3 8T`1e,`dH6FZv`+HMS_Xqr#B܀QR7>@AC c#7wl؂yd{ҍq~d :z0x䦎z.%sO@TꝐ &Fvu ͧ~c(Eq~( ܂De( xˡ 4x:[y)'$dHS[g]ưEZ %1I q/zI4At3L:1ѐk%q5Ckw7_)5gʂV{OkU I\FA{ζ 5ß_oT|VnSDM$Fádpr&F@89Iխ"3$|kyg:Cuf ˬlM|2`س'̌r_{5õd_LUař~԰Y?Lɧqj"E.U~(:XA; m 7mCB$Nc[ٻg8]UXN9Ady*OY TfNR6GNcit⑕7@ٽYzs >_S+Gzi\0|ebi*"/ZpF9-`拢AD]bw˄ZGx518y8$,O3*MU sE Yii&/Sj0NWaw8D+ (%8p.yO)Q.k! i5ed2=݇ήJ WIS_c" 6 }LxCH;gCW89<\ XB}xƒr}УP^5A /˾=~Ŷ3Dg&3iZUcq |\q4wŽ@ /@_@"A/ӓZ( rd I6Jci*{sVAZ({ԨVPv9"usRቐ"cdgqK68"|vED|,}9]m rt%PZx&=ϳc{bٟ>u ͛9j"%1yJ6pgv =M̹?#eo>ꌷSN?- >wP<^E.ʘ)cq7EM X-³TJa\eB܏'^ g`PFHSnjI!pC4]k?u*ubc]`egg3^:BYJ#iexU<5R"~چz<'4 w/aC)U-iI[$stgJȂd`+-c5m5ga;-wy a]Iv1"Mh 4ڽG`U)#<*h=eCgUǹ{C3Y 7Gdgu놌)7-QN^(6`S#4Rm2 <;cq!hb?ړێ(I%; .]-ks<@2xyh.난=MA m(&sf$#Yf ,mP4  .BpªobIhGlfǽD) }^_v$Z'AZSN%1J=أB1? BGs;8tLkϋ< 9˜h,F^?ZZro__q=f)4c?S|d[%ë@cVX߂7;j'6VN(5 YH=!(*d1<Vh%&^K!<:esٲ"gGv@{+X~_MF;?6Q j-> & 9q3\It"+CQ| tviRs#g@ŀ<+\& ?s`US2/[Lt՗_\UMNofI4y? 4eW[?ViSEQ[m^|Dn@ 1+<}bL֞k8''Po dJ+ќ.Y/͉0("rJ:cm8d_ }D|xި`eePcKD. >j'3nr/hir&D["BLĀ ^2g6(vt#A%M!7]hlM^@ ޚdNbV|53+g}^%Wu1@%Q޶˴lԆVB>\ǂp AMj3ݸ$nΜ(il jJL|<3V;`])[a7Lsguu`5'PAfj]}%OXsMxcl"mS;_ܷ`D%`?lR&;M!bt$([.=4k`\mޔ␍=˜WOwYWJֺxIzVKLNA|ZLe7]gv [uDlĹXC̍NtU;-`0:l錷OW&v |OxGȏ?Qu !Ur; ԫc-Ni[5ͥ^l.1Qa有 si+9魭' \yQfg9b}a8^- %IC'Tf13s״[ea|:"0hͯ&;ElȟJf;df~}.,ބb%PvX@½6Gy*a+Zؙ{fVRįs[noH{K ~u 3-* ]=gġ!I⏧/JͳW֌ę/;v._ gf{ 9" F@F8-j(S>zb6z>Ĥ2JIxNjW83f<\V,]Ι)p}8=XJ J zWMm%5eK3n3V<:Am"߇BbJ@h\E{rV0wQ?T3'B <` N5?XH25OȦ|}t6:J6`;|ׄo@l/>|;ҪɦSiiU,^8CB<1CҒngY\4KPBB(-f-)Ạ`TOR<0}"i-jHro O/Fwv-ՙFo*T-mڤW+jƙ{\&xWsG86Xb,'0cY#㽉QƯ]XY$W0@9x[=} U||\ŏR+0^<\'dgvXdto(ω-C{s6R>.5#Ktpƶ-b}>ލ=JE(,d=tɍr憐ıblU/_:VC>4FO:h$cb" 'r4{~My "T5$JI2#:ׂ*lj28ñ\d Z']1EZ{/TRkE}SCAfZ< <7%O~TDue~f}m'I/AY)Ӡ\R:G>2VB%6d=7IoԼ1먹 ^#2]ħbms֮K[,>H] (@wZіu@lovG}0˱ i5H"sρk,VW-v241Yb~v܅2T izP7>v!F|MMp ta:oNi܃5@,*wj(u۴\@LzTkJZ&TpdYW^$ w[K* 󥨐  ,$w1w@?z%?} M,^ZGj܇=F$#B{Gq׌^oͭ^{ݻ޴IPXw kԅYս$?xXZ<ܕ grf{8?"2׮))m^I癩ʰ Z籘(>By&U]EW#e9P(O"ﶒz+Lxvqwm,s0c~E,U]54L`R&p\ByGx.QDgNLK8 !;|G%3'*%c̀ ޼%:*OI r8-!̇⍝A4GP gKCyn >vts@:`̾h .rw}>Z xeNEA}oRIwG&Gڝ:=Xh`da#fIhj5 #ij).w{~Ӥd.?w^GV,5оʷ{yvCsw@J^.E{,c.= Qia%p*J@̓/߆2MaB##s5'I 1cگū ;JS0=;΂ϚH mgw_fRF/ڤUffY+Q9L)3aOkKr9O%Ŀ[5bfva ܷj l8yr.\_u8mC^^GSCየ$'t{SXSS._Mshg I-!x G=- MWF L'$@ UϝdSI]G9쏐=P)aI=AZW8?JuFbVŮsUQ+3rMcV|2o+UYEwj0^N k0[!A_iNJ ѷcw;rB?ʖHI[@?U 鋟ȹⴟ)Ue>+LzgfϸeRF7`LD!} MhтI]s;K&8I.-Yr JB;ZX9c`qڌd"|ukEA&6Sof= ;!Χ^dvZ|2wx ڜ r^̽`cCvTs<`ܩwu *=}QNVHgKAc7X={_zmI*TE8 U   O*Hl+2+˕ ajLg'nY^/k'"##Kf 6{n >NFCswֈzXdJz^d'@F++9>?2%I;ϥ6CÒ7>.cp;0 ^F`,4Z{8ߟdy,7$}`=eWsZ)}2w,ӗ X{nVZ ^ ^/:5'E %*95n~N[t}.K9>3 5KK_-PRܪ;]t`LYηV?ʑ+n9_˵̧:=g|#*l\pSȲ͒79o%199-N :zu"!#0A\`v`N_d:R+r5@% ǒAMڰxVV+Vês~3ϵ/t5Kxf5kk?Ik! Mq>=h?YnHDnG=%Ubxޥ%maBE ̪ J5l{vJRߺVi5٬mZgs \/J̎; 걬"!y@!'*86MO1 YUB*Gm.r޷?ڇ bэx~\p :mNZ1ZӲPZؗj. @\ :vt<٬U}NV/x޶]׵i#W~b@ux7-:Ke 5Tǃڈm1+,@=9I10iFbW29=]me3;Yk=O^'$Tzy( fw{)#gA-4Mۻ >RDb&@F߃}jjQ3`r-K.hM|^qᴨr boF-0ld]? nvDHz.Uѱ+Y>U1f1|0ܥ}8 \YNemHx -:1ʼ^vp1N?8k6bu8_x$L|e X/[8ǪsWMGUb5BvB1dT$c2;%&?~$܋@-na8}Mʛמ`)׻7< (7!+M6.+d=LSl;*Ozӧ<J V't9IPYέd{ (3lt n >1}Azwz{틢 iIS c6cihRӍĵYhM0.Q{ϜYe%Z=eI98|wŵsӉ\f2=.3vBǡփD+Ϩfs5?MD/7(!,p9~Za ąZzh:<&LZ-P&'SPץIGa[l=Zէa 5 а]9-\%ΕAz!?3}.EUX0C/="M0u XUtbeM.㽘`N];v"Io*4.IROQq~ U]JO(C|Ǚw2tvUMLdb'Wo/O9|-13}\:DayI嵴B$Vu|(ܙ. 蛮o-='V-B }/UۣJz$}k C搋:ho!U+:YT([)ZݺC|7,P@bL3wH*`1*nPx'hd+(Ep_!Fn+zĦ1Ni~.nn TNY^?CVl9lAS4@:[%t1[NS}C* Rxb[=q7oĕmr^:_t;.8g`KTil$6&H/@#TΡ4v &wq`j[q٥3>>sq6B:*9*)Q?MH<=τqف|]0[o1Ԁgq̇,ZZ׀kG>E8v0W.N9bvzw`Ui<q<)*l=Z, QȤcS=oHXvqv[xZD0(tD O88ﳱÓ\x|hf6UNMY.h6T#i4~_pcɇcmrVPŷj5W+ԓW%'8Hڻ]&d}r?0C!"(6\0tb4}V4),<(lQ (Aj8"誜#0By4,S0H'~NQ,^ ;Dˇ(Kqo(<@#sGco܂>ߧsaKH1=[# >\} cOm>8}މ¦C=521IȞ;EycBLI|/Qo@QD1^?{7+1 638AZdi -> cH[9%8ҷV69u*$cr\%]۝7B4!OIoLH3hY#~c *Ъ7 引mwӇjl<]-oM_#.'DZSC :*ze9Sw$=|EH(剝jd%l6 iX<ِo 1păoOWElvF%fU'ڹƳ歹0 `j'.VNv%-o)]/U١U4ˤTPP sٌ/jZc ыX [bSBKoZkY` 4./Bc+8`Vw`<#KYԔoER,HpNݸp)d +]WѢVꚒ:j !YJmWZg^#WجjM3ކ}ӹ30Y\c[-*` w:6aJ2ؖ37B,.Q56Lzb`s1"TiQr;^;i 2*p͒ǒ+^*P{d}g/5|ezpJXVlqjpJ]9H Ks#9mJ$&_+TQG!Xm|ڸ&I9H(C(Un-kz;=_ŷ (ڕ:Uh EQʍC8*G:.NxhqQYa1;AoB-3!䲱-R&$*7y ٧zGИV6/HƳFLe? Ƥ"omYʛ~ -I0~R Z$t;WNpr%+Tޖ] jd.ۘ8urƟ8S 9-ӓ:7&v}"t}2ilJ&t%'h sRU"!Yr"0 KJSsz5Imธv$L_@͋E&i_v|nI/,} _uv$烅>[y4,I,ૃսQZf7b+)1t:'y\5pqA$ϚV:qγ޸ô&<6'( LaFU(%%,h:k,^qؙ2JR}Ƚ n>P#F!n? eW$0P$$UuOGo>QDz-nrz$eF0 W`c19%\+/V"`Ԣ]4 Q3@hoH AU=~N\^h3]iZR,my,lJlQPF8=3 E*Y[XU_. 5 (˥\ Y^uY3ƭU=ӊ4#Y{mv1)@:Qr&1}țne秀=>wܪyD8z4&\iR@u<~*r[R*j܉D ` 8^B$kĤv5B1t򪕺stɆ6!m{40zgm0^݃3IeEV@RS=k\h{3,wtVVO }Bs|oᔍc.}a7L =DqbXP{-Qf;QRPGU¸lif$nSɐm֥ez'fh#a|BIBf$ %a-0v%)Re9Hʣh9bA@txy!t:[ݣC}rZvRE~' .i/0nPIVe[DSxm~,h'F ܔ}! D~UȔ3 &vL_qOiyȔ:IEcsHIH<[͐ ʣ#)er1I5g) (AJ.^.,˽[{ *k)jr%Ơ+yD5P] L1 n^(̽ QmW$=uw U$F)Z/E8J^}+!sD'3.gB H6Wk*|}aZ[|47洱~A.X~񤜥f]]ttHWk NI?4XItꏼ3}5iJNJp2 $׎Tl+Ѷ"(@s[c]{i!}3^(oDžݿPcp&?S1vjO"UsGԸ'6}06|h>. 8͔ ?rc,5@DɃÓLQƞU~Z?O t%>ʻ{@Jr(ύkNe'G׷/k?E' Nu0n;얰 =Au XHZ}'-\8 &#+۹u յw9RS0\2.$n\u(r?E8T_aTE[a6+~!]kr3W1<7T&4Es:.P-Vq3;m'a|5t[݈֯&[~ESاͨ jwͪj*Tk\`_5*KKEhw rV΂i7UrMNΥq#K#̍ dm_oR4>4p/n볎tEEΥkFےx+dڐ*1{WNS~R]?ީ^';O!1f pKqS\N^:%Em蟠eW<`FQG>>mz.e4 |ؙӀ\6USiydB.8AwD" %# 9~7x"t9$ǧ#x}p4FmlQ3ݟXčD6,sYj,84?K-YJWT::;D Ȟcs}lAR9z̛.s#CyC8#1m%'M=>߸{ڿ>ٴxP`mL(»ZlN&hE\Alp̻GKWԌ$f2%$<7<9"yG0FҢz{ md J|o VXgkrC41fy}Jw`{Zֱ D.NOcqK"lS> 0"%#g.- z_ӽXh%D P~n=î~Yv(c/CȕƦ/`)dvq}.|O8']}q69l%O|x#M81u9D|zqT%nڞ 9 *Y :|'XAy$Wu{r.ܚBDyIG 5exKWVZʜ]Rood*)"5PvUm\=XpQfZ-cT;8 :.M 08-m(HZ(38=?)IǺwd![|kտUO?C 89 ã#I7 D(Y T<褠0ųUIFeTeeƥB=?:g,>0yqH ˘L8k赽tQ'SaJ);ZK~{LABM8 -W^R=)@G~0| ҅j+kĜƿ O#L9\8 EQdށ9$pQ=:!bsaf94guJ-6!2|d഻kA$:ҡH .xCݖWGc}^z+|5[{h bp7qؿwB ] L2de9-o`@A!3ׂbfǯجm+:f~ {9}%EL{]Nt~Ɯ2\{ HLC 8*?GɊ_P`B 060^9E9RRwİB͞8?WW~h#47 ?Ec$ϋȀ>"ڰŎFxx/Q7}dⱲ UCKa(߮z57?ϝ1IJecy!i!JgW ֯ctL%\/I7@RF[߷3\6tRU µyT{Y!UK6LvYvwOc+Bwv&'5f8Wb3A[n獅Fk cCtȏ?t4:-Tk ƫ {]Kd c 3{-{E: $Ӥ.CNx2DФ)0IЎ[m vg5!e]/2!@mbB<Ϗa}.RB.rwV_{h"n Cp^_e d-4tڢ(PKq)[V A2K:)޺)CIrHo7K#;`\@q/owS=w``hCxNC%x&O x6{B٠^1)ܤj?c2*+,/4+ I{4qX& Ht*/*#.=TB$6_=jw/.#+c%i^<[ik%o{3T7* 2Y?2`M4#e+.F+6PHt2_ѐPZ H?OkXǩ1\۔oп;eRG H\Ǫ_@X o/]uQM0n.\vdfHF:I5V#  yvފ%sq{P؎En8 L[K`By@֬SbHZ,M{!|u{ssgx"ztNsIUAr8#`0H6lV&*r]B W5i0b-2I`#<49]oWQ."S)yG FcJǚTDO]~F3G8i\q@a^Rrpzu~cp5chJ&:|J4!KHvɁq#I/umz@|ɣڕ7t2ydžNgYWμ |$}T:@RWZtl k~NfIfLUԅvUnʷ 猾(pugUV{ɛ}plUIV 8yzzހ}y 'o[*cWt?ϱ g$xd ~ tn[5^ _m35O~ GuBǗKCIfS> 60EX]nPtp0/>–[͎j0>* ex91SVwZ(Pl5ߵr'#5:Y.Wg=^"LB. y?OLYqH4dg5"~  qv80r6ٹD+1tRrbڋ+8"?8ov9}U"a#ښm {/۱1D^ #1T_BP5/b/mZ@uM{q//ڨ.&o#9ݪ:q iuυ͠Wɓ/{?9Mlz.LxRQ1-XN@uD37qg#Oآ趚3o,jC1@(!1x0-X;ySO P; u漦/pqD(6BLV>Z?Q3kHMn4uq;EvwmWzh&uh:.w]e XH>/ th<88ſW@aZ̯%-vZmc/Sn֑E-΀ٙDoCGVȘ YQ4ܯ7RH!`D[ujo,"GxP.k(uʝ!ʕq:^)7bZ!]eYCDDv&p$KWˮS*SZ%ѫ8wbY%[Cmiaքo>["zEr uQm6hrxEp/0/ä`h%ݔ9d"I5b10RW|NO1 $=w.s7-̒ƟҺV1kdlʙe^ׂI\6ƅjߤRՒuNX)+4B6y)}{v ..RR^haJt|d*;W]q~^L嶦 4pGDb{TW\ze5\_ZVUNw|".&j)aODaa;pgZLZϟ p"3{2[sjœy]wN>.]H ls19JEU`dQg}3n&kRғZR@6zߗa@j5lGi@B0J;_n ͰIKf=x^#Xj~@42RnJx>w^55rѠ X߱T\xw;j1g$O9!KG"6.&+zoISďƜc~$>)9nǎO>[r- zߋ8`g cE㍯t޼"5U" &Xl!W6Xvt`͂-zHrƳ3}ѥ!zƌ.u4)vgIl?OzDԽA]q H7c܋vqO!zl{a4y=b;뎖chq==ԱiDG"ވi $qpz'!Ӏ@iWظs""Ѡғŷ,3w8eB3b[Eu ij/!z 9{`!+K/UHa!F!@4ү)u šc`6l+ZDB)r~0U.bvj9AVTbwaSnv :+qN%>w܍]jRֆ*gE3L7B0\Hmm;4 $53T9v(4Y۷V&sa/{TP\ q[%⻛b959 >UEHt(YV da9A 10ގˋHvwJZ~zVţ_NUЈukMps1[D \ ,x[9MlMMS] Ѭ#呻(iPcYtꌷ#w'Vί,2F3"Kr=xM 85s@ $g 1ꗆn"JksCd`@8 Vw /f 3V7_3Eu@.lKB>L؃ki@YׄOxiVB] ]EaX^֙3j Q'm H*ť׆nLF(xT\`ٕj.6U{h&w..߸vPkTr@KD +X7uBB?_H1y̓]fK 5[keﶷO% iJG[Nȟ 7k9jKb E~)nFjushq &_'̃)8Go!Z'_#}^鈠dI| 9oi,`sDμ%cbokI-/<XZ5Sv^#Xre=r+V'N w_ H**OXQLՉKs+#}<\r(&{b5]KXc7z%^̸˓;wzM>$7]`PV">#] ZqIV l@D?RqT ̔ !$`NS <0kdMg6+=#RhD͙qPz`d` 걆7e & PQj)8],/ &HMuO2H )>KT:ʗFzŗz<t7^Gl])Ua01J>ey jwv,I(ɦgz >~QR~F _@c7&!'`6fe>s[5oxPu"<6Ii;9FO_D Ҡ@\0 E P z&ll`lhnA8}*8SLDf_qk+'}>*γ3!gj+T2{qbqRbC/d{((Єru?=`߻88SlCX`mC؁zi88 ;RәzJ0ɬM`d4iKǻu^.Խ&H/EO|b KX5¿%22dX[\BPmooyp]T8pYIiU[$z22Xl;)߸9LPQgyi^dZrЃFB ^,~THs¤V {>Gҍg$sN?;g~,X3~,>{ſ/(68/ݻ x6%wOl2Nd.)r텘rw+[>`Ǿ4kr<&E @Xvܬ:Վ*3'ŁX1Jx?ѧD2rJ=OY Py&#DȗQ+nW,kܫ` !7k?א#C 0EN$<N-cw=3zcE:8.iYIWv`uj,*0p (Č㄰Xo{.Mǚ+,^e@=pn"D2ТolÈS3 s1[i>͂G3 'pF6DlXl} `:H,DRͯ M4g%£ځeJ;TcG~B$dqs 1_VTPeD\u7"TX s~J{VG15{\UC5-h~2P}YkO('r_OWZ30% +Q^"A-GqsK0yW& '[o T ënլ4[יܹ^ɇ6ٜ` M#n|+D쁆d*CTSC[N OI/C'Ќ3 @y3ͣk%̐[J(;%P['qp2j:-2DU[4bf¢蹧4ѿ|4E,/ @xWwe z5qJhzN-inqh?M?urDu(TB @i%LJOȊrz ?vcTSB9-aKPIMB6^) e rٛG08$\Rʍ _Mvo+@[h`/ _^\ۃ7^ؼQv4_kq/S4 ֱL,u\0ځde w,?\X:!oԺHAkHLl\P=(fNg)e=7<ދ͙ |m~n$Z:_Rؿӿǜh 5=<@P+rv$VVKGS߄3{ml^{idZ[zïQ|H5ӈz>:~ I+Kl/X&udjj_͛8dci䩐$ovͪQna؄o9e'+Ҫ:lLZq* +[S EQcɰ@a 7*1CvRQ2-r>NFI&WzmBnhaPV̸"Di[ޝzI28,Y=LI03KDAM\B"}9\8G@ JC/)~6y!Jd0=r㍖`UE-5QDn4谧C{{BKʗ5;YJP M^daۈBQ"o|y^>TmÎGŃt5r+'H^yL?[֔?=r^%}:k"h&;ҽ4ZY ?Qg#$k 'G|] ,0tuiF%E6B}(ҿV®xxC[I!{@yڃ؎Y7w~OK[j"ù\p[,UfM wږyHu'Tw6nIFƴ s#ﮋ,De5ɻW;ЖiE5O rXqa օg\1.I"[ @\s1mIRHAdcf*['G멿,ٖ(|m$|hڄ5/z tX;AnC-.$5¿m}꫑̡fjdث6la|9lz;9?&Ԡz,Ҵ79E ͳ)hWuV{_27BD?}%80,.krnddS96 ؾad6 :l)tPlM 3w=uU,BD~ fUhY B UK_px[HvӀ F@42X4@ZsV|_5zlʌ^|Q=#Vp{ꆖ(tSBK2[F gkBm<5 1꒍fo>ND` Z1>vDDXtXɗѪI)48" j﹍m_*(wI$@A#@sNb~8g,}~mf\p3YʼnckDPި*}Nh=);|2J;!UjŘEH\X sc jARiopG`h*iYieW" d*0{ ^uW©׎GO;*F$ǒ,%?%8.3Fo6:\||I[77ÇQ%w8Isr.IJz3T{ zKzA9Fz31!Qw5]y,ez^-*)\>v@3 j*޿E .ᖌ.bz!p}5 ƴm+ˠ %9Fjl^d,d3r((X4 .5#l%\K az oe_-i0EߚҺ爌 4SlA`}Oۀms\sg|2}-;p5VϧѱՔe)pq}d@h}#rCtvƊ^0C>KT iM?N^zHZga,|GLFn4▁ !v hqbjtB<UӹAT#5.X Xl,&8dtV5w#EGu- w@YL,t=q6vS^}/KBpb=84Fo/&}s ޲;_u^d]+e~d?a2 .Wo[RoĽ9#!RK(QK;mW2 YMMҰ/ocd}6U~Fo79v)R0*5Lw[@ȟ߸2Wgz7&p +;V vB:Qc݈$`aŐ]D|{͉+arnZ^Zۛ(F~8t@[_8xf<=`4G-OR"i6VjDe4O*EgL'j,:' )Cظ%j\L.$#^qgX֥F;M<48ż`G8(cW:)Q Ax~8j *< br i)ĘhM(Or1GQ(X.9~!n;2m$sY*nPhN_#HP kl,$ӄ Meʆ!C.prLHɀA˛hw\Q ُ%\\|^QtN#Rhv`ʞ&-Ů9}KQJZp g) 4rcՏF5?gU6dS) y\]zU;,Iҝ҃bwTG{ɒcVdS܊DΩ%1hXW,˴#g*v+s)_wHMuy  bʪ~Z{L*x۝EdQ)R_WHsF5)'%:)X*WdN'%QV:\&/k5$.iKWѡ3Үbo4m&IAQ,2ty};Q@,Gv,xb.ܥaQþs_O}S:r7Ba# ډ UH'IWF%=B 9-d5v6~%R3"wJ'j]I k (%x,hF\eK3p!1&;]f?L={*kdGw;>rjLF:lB5Ih鬉qfb2k|+rܠ%%08!7[c^Wv CJ/=W1K=6 d7.x.gu0 ոayݳ=yrC㐇h@4^ zUІ)y_ A\ʨ c[}e?.fY2;[Q tf`Me1#!#!RZ1^dU@u_@z= N,^R5;"Wx"aUGVcp{ǖRk੯!5MÚ.7,Bܤ W7%uۜ,l0͢Y}H;"a,X &vmv\g䉃9=8䌹8nY'RV_g<H|dUR >璯CþjN6[W߆ںcFC;G+5bŌu$"/B? WFqϝݶ_*VE0ґٖ7151\69OiC"9=c@HCx_x+S^@1b! «|dbdfbZWBEP?3 %07\\T&|*Np-gt@xY:k#TP˦GlJ/c x nbnحMٰZ"Kfx4zta _wU a3Նf,I7ۜ#V-;݀fdKx,b6n W)Y6M^dt ,ɭ*\Ŧ*o9,Hx R(_cbZ4-˘\At>|g*V;>cG_͡\ZK-ESfJhq%bkZjUE~ y~PԸTL: wo+ln CZ+Jܰd,1i z,,N%}V4LEij4U/G i_:vx 1^"%!>. cFNnnCmv@މ΃!6ȠceV Kf۹2gae}EFJJղwV}w |&& 6H}2\Vl+{kOvA`@s Oes<[akϑ n+z´ !e@1ϡОBE_t?e#k, k_歴wH4=ڦ_jqlF2u3D pAKf.p3_LHaXPS`cIװ}͕dCuxȳBTe/$*;nz5AƘAH[f-U%9(x.e ̧SP:7;$͵2`(D%Z8GQAx=71.lys#4S3ّs'R~DOVRf\z鮍bS Ӻl9~]9 */$y&Tߝ"B?81Zsgi DEdBky3ZI *8Zs.ۑ[d.{ Ta'b>h@=b֫T `W6kL^–M|=3j1 U02N4(q;FmP{Ї$RhŻ2w%mZ7@>(lUFN q.kao)3zWRBEn6fRB+<En 7FRUglCt3vs5oi=:'p.!pMG+VʣEAf"[&@=CІ%ZC#9lFri;jݞlFj5!p:%ғbC—0(a6mP0} e$,z'ND\'e&ETP0SִޙNRMUF><ȏ\GoVk<7#hw"Gk_>#0GyLHf/^WaK-llgkN[/ALW#H9 t[2%UGğkԹB8xp 5V}i3{ނYMy*dgQ V6Hy^_ W/ojr(0@&+WG?diLܯ<{6m\sw2Mк^te !{YɁgXM'YS6s7?EnKsLQz| ܌t4+ES Qgj"4@ I b#Q;ˇJc~H~F'IJѿj'tQgJ%j7d([1*W@:W̶b R$Ӏ_ٕ9 P B  v^B q$Lrme*S/^rX[ǺKvϾ&w{T_4C]%b2=%px &ʶ3z;<%DIF2Oo^&zS31;תq#/_4.6 }j;JE$gRu;Mcc r\ɠ[U}o׳V01T>ε eχ>X+y|kG10 2% FV?ޔa|[cxu>܁ǔAT5 )W0"( B]k2H(9ouRmޤ &U6:OqnJ^t GaKl $+3Nj"U\'}@yiP3.{.tL| LnݖChr"A Ohltu#:pTtZptBQļ4>qp9;ī>',2)aLd IL?# 1^p\)x=g+p8p-gl䋲3 %W|Y@윛"u6M%Dvɛ:pki;xb"͡4K jEJx39ˍ٘ mD<:`-]]G &Z^li 95V^K7Q9ˀ.h>N0]e>`%&*x ޘhXciRi9qoٰTgsfpY&eJE2q7/|X#xiEvgU5 ІȈj ܤN'1@Ůz.eK1b߾:HݞvrL-L7^i)4-j'L+)qvy̓`DkKV ߕգnt6=iq 4%$8N)Gj[hP)E_kY", RB3aP_ 4<{t 7h3m] Lwh:Ԗ]Iq+wө=ޚpj+JjJ.2}vDa%$r0ܶuZ/JakJDRx$:d;q斴Xebӫ4UzPQ{ !g8 RmBH *2IxoW/^z{W/sw 1f5&5uq 5t?FeSgT-Jd4BeҴALB>r+pE=cq)Ǿ&\%)tHʸ~U&0> U[xKB-(`S-ib Oj:ƟN'-5}?c Mw}" NP cp2t NL5<“,D-B!㑡0<ej̊}oPrZ,hm͟N5g1BG !sb-d\+IVtͣ'}9SR͜ќûǧ_ ,<%]$E$ *>eQzTQnf"fwJTuS_|KԍóU @*O-v$v3NK{̙S*v@K $4zgmi7>q |\| -ߘ>_08`xɱYT#r'8LAD]QN|ג!q$a`ifUű3'_* W#(/z66:4?[W^ŭ(A^Mx: S $qxA)veۑGmϻJ&B8}]e6F3J'L($e\[m4, O* Z+F 7ϋHSy@!_]ao3ˆ{p+ 0lIgu xWe ]tΪ~2lF-Y}!+)D ӁјD^Sơލ`yQsG|J=)[,cu1q0@Yv!Ѕ U  RĀ+JǶ5౫_ҕ?&wc9lNd}&MUG0-=*yrCCt#-?ysXnMgJïN|;`n%6]LapҒyXפܳb',եI,w0X{ `*{9 +e)jts1"tgAGNgX^'Yhy11%V?"05k(㻉dxFb{3c-JIm'|}uVT;:*G X jW&UX-4yTu d;B(%uE~ mPE3|rP 2pyNdgby}[93vƩPDOtZRRwpB]Mw>t ׃n20Ac垤fı;YtXhEHehBwٛ3se>@ 2Oꅄ /1L컭IbJajBhy;T7k'Weo[06*3r bxz6**\3w% :KA!~*DiZ1ߥ_,z^ΈGUcu.}.Py:x#~޷ $E2cqx|s3 tySRyn 䪊=_/25eڷb.ӛY{$ iC)酳Hmr@E:~7rV1-->@@|Pᇽ/Fc_ܜs ǹUSh$Z}k%=2nf25Aâ3#%2(;̫y7Jvs;qIwΐQl6>bwC`;c,[,^4錧oS>IԶY! 44ȉ!ݾťe?F` SH:v|溉 ; X-]+蘧?[8H Z_ۍEj3G>tbuE!gՔ!ufNײ em,/ci$IGzA]3_3q $G;7` *  xTXE.:Pm&RAfl*c3,k!2#(兣;dLty(Oګdp BXXM4'lx:?e/ TX" yXp LĶA\US3ͻʲ4m_hOoO~?khq}NgG$'z3JInݶ`䇩7/ioTK5V޶C~jd; Kb|Ք:xjB8Q6^Kr rq2Z,6}IW3X/5LQ%%XWdb׸30$sa.v-F5F -߉#1!,e~956 Dp)L;ekF8P"UuI|9VHYG9&+a$4qKA`(Dګ;btx8Q1yF) E1,k':Z`'0^O?y8t_p E4Cj]oʇA7Wn^Uhj]A5x#ϕe'}ѭg8P nb3":"^ԱEFh"Kxe\Q~?@O5Dc'470pb%ok!uXI D4vkYϰQ0vNENJ3سwRlrΩD̖RG4* %;  1l1i8-Bz0aR*3G=SwN"ك1OLeGyan{GnqcOn?Bm3Yө?m^ٕͫGE)\/h9;@yP UrKnv1Yt),1EhrFECT( L~ n1 =|b9gIp86K=*Wgt%>;qKahЧǜH[R1((_5|j^@xyK^-f;N֒mjIf J2\C籺8;NS"QsKC*XY#9K0܌GZj;c7Nte5ƌ0rIm>i(7.LT x lѪvRzNFbvWX! ߼Dw@,]}Gٷr&|}c1k4ҩj.Ą?0|!Nע:sՀϢ5I1`6Uz1YsF4?F u8F4S9 /8/wRhE]KF|.xFgW84ʑdW84ᦊ ΅&]~8 a[DKSiv#ƶA"\p@[8j |̷!R=yH*CYU|:'<_ Ǻ%Q/ Xlj {^Uh4[lٷ2r97us87BF@40r~,&JgIY/1Z ە3?]9S.jO 6jdbzfh+nfb{ޘ*F'CeH$6kƏ|B7JpѠ\D{Zfȷ2?y})acHPఓ0e.iX;2ϋ{鐡n#E3s5@nQ~" d>,]?Q vKU#fΘpցxW?dFY@L!rHNVfE3[<-Qn@*Pp[ecH92w%)}+R%I}[rĞEbZ; ~$J/E'LN+Ut|΃ MjS`7o?nGa>kV8nsߏbp0r^QW]T5Hȭ,˅U^ol0pz >+/g ҉K#̶,K|I Nm/)#'%0 Q 3O,EJhŕ`aALEynVd~!ԱRshFf8lo9jw).K캾Gc'X@ _PLLǜ .ίݓ? AxFVtKn3ѱx/Z^ bڛ<$[kk9wHIz4Uk| h-V][%$QU}I<` v z ҶLmu!9@*ArK]>ڧ7AgON_g|u;7}H&wv@{:P$[Ð\]7Hb i~_yt:{Q)C{{hoP]YDEV (Ic'2蜷ۍ9WxV % .u|gm!#d%X뽃_/+Opm~D Fl"i^(g/]i_/k@S1ӏ%@'jtsE^<ne7=Svօ}b U/p/&o(qaؽZ,k\?h]I yAa5 G;b竗իL,YOprBk_#ڱ wi0>U'+D"4殖3;uT%<k`I7r };p z.)FG!l#j=xjR9B울{Os>?<:"euSP)zrff~+h5pTa(!5wVdήsFE, mg!P1S ~dviz)%18MO{qpOKTS;SZk$  ne0]va9Z|,7[$:Uʐ=Cn5V\a?ӷz()j N?-6hq0NׂP_O3fKh 4aj17wˢV#=$4o>a^sC3hC!o`v+%c\V7jwNBZQ+I,.3k WkgV"U9n&$x(^wQ^IB#fk:+/R35pwq Cp|-rN_-#pq+nG2O*-=6k Ro Cɔi":Ck3?e2?upS}{*s!eZzҐEAoYYJr]F!>(dCt@*"yQ!H3l-]1 h‡#jtQ,zDm'L`HZ񦼓e]46t<Gt?+ON7a&໥+Im#XeA?3EkGO"cA?-JeE<]{9rQ%/Vm1d_;?ױU'n S|sO 8* GDl)J&l5u*-Hy~D^QE7Kw-u/# ~Hۇ.Z_#8X;ruh2%Ki˖BV>[цOf a5*C7>PeTtsQ5*Cks58eւ8?OktvaBf UhV2<胎h=붋5B )R rܰlHڃG 1BR22N˺_FJ= 5wiTlβ~SeTR#!6E;6c#cxLRN~ZZ<꾏|N7!=tB2 R:e!6H)2 >>5z( 5PK3.WcQFL5Cݪgd^CčM`S1yK 6- O4$"Ueaӝh ډ@ZF+4'{kHG} YAgr< D,D./7xd~[bQYdՐg)j \HoYd* M\ "vYiDV4PqP+\4K#M#$h U]@ ?EP 1GȘo;{Aok0&.ZK#ɳޤ en>QiU1/)*+#ë5X2ǭDr\@OC}L!p/WG׼gCh$ MG܇̺T_JX3Gܦ-C9(pw/2ݛ(ȝr}s uQ7bmbHmSWV~vx*\sr4Gμljn?Ʒ^VX񃵉XY"l:s?PxT:De< A+Ȯ`['3ksঔ{1YJ]\꜒«$HNg)T.zwfr,Y(hrpsתYt'%ф@3?Sn1UHܓ'3xde9c*j#3:@fK;akgE]uM~\/?1%.R4(.}i@uo80V @L9oj)p#= pn)-.n vD`&w1urԽ}l0CtcaQOC DQ$pj)t1T'<Ɗ~A>*_J9LRzֺ$n+vo*=dܵ&v&9?q߽[R'7kYEG19cR@Y d "yciD.9M(ԸR1rmEpV~%"31<}h~dg")m 37*@yvZ+?&E ߝJ/"%+zQik`5,瞃R̿ DO:ի|j4gKmg' 4,ճIdcS]~a,+]:ZƦ,4&W{@q H !zE<٦3Clm27ANCKn8 `'Shjюu3I/+>l;I2l/#$oF|*!#pM\]iע{ dHS{r؇?H*:Ǧ yV*gs N_7 `d"OdE#cowmE;2%ҍ#mO$x];bMTnX9DjT0-9e0kuIfכl4'(х%hI] 3"ҡZ '(N×ShjEXWΓZfq ;+H6oD51&$%B.|(/dB,Lwk]'$&˃U>PI2ms.4ƕ^ފWŭk-H޿6(u q/%M4u+XȘ3. + ]X t\FY„[Io (K8K"*ɴ (ϿÒctDlJ@KbbqNJFpIYҋ V+d"<>aA±#ۊBmQ?qۚCyA ,E7ay5v4ݫf 68UU@y-J>[}/!xW+5-[$7{ejA3>g>Kᤇ9 HP5a{cSRwZ)pINW[g2FHjIVwT4MB6f1ثL;6͇2U/0cf6«v-DLBBM.RnA;wzmL)9aQ^ ݳ@gr-2Đj $ư'vI1%Am 'aqԜG<鼉 ඏhbVjUqD8|mFV" 8UqsP^3ԲPC0x[̩3jgt:$|⽒AT$ͣMN>x#eOwDHQҥ+J}!B؃S)I&59/X<;TS凜zK] (cYe(+Gɬ79𞠈@n]x!Zֈy!)x~^TGΉk>bZw1]Tp]H˝/7j3VV ũ9 #'_QeB1SArq1Y:G#)Ąz)bý~f6X5$Y_>뼳ةt gQ 煼>*L9CTs"vKڦβ9s) ֵ_V=6E7@{\F3Cv9C  *J UA7Owdrj럹0gq?G HM=i]im^^nhT7$)F(4зX ߛLuY O,PˬSW)? F/DW^H;>E}.`ZcSJliȷw|"4^.>/Bx(T=/K/l $EhKzslv>#}Ic r%Q]Ջ_;0p]Ye溥7Y\{Ro# j`&"[ b* VDhIRDwvIraYQ>7MH~ܦ^:4C5N3)TZ@[މ cFZtbA؆;?)R)ю8bV΍K$טYk1ˮ.<S@moe$;?S [Q?[~NYe4b5MD`hBUiL(&Irl+Hߊ-Ɛ?y 3$(j2!xW8xF4|X 8|@lp⒰s=#:&e ~9`$tD- n@5>)R2Ҋ_GrBAٹ6`$ 3cX<#x 4#0ꈗf ~OC 1clawpsjge);E#w/dX}0ǡ@l&87zbՕ;@ c4gHi4*˧,lT=-K™0@\nIiSy:r}wt*f +o]ȟxBc볽[dK3}~{W/D }y bӱⶑ¦UL9uBob%C*w\?P’ F& N<ϻ6ű!qv8I4t$J'>vJP~yC Q|;FrȨbkbFs^tf֗lekil#mEI.*hW>ƜHXD*xRn5Q%y1٨ DO,yйɋJ i ko@3!ĸ_\Ҏ.05p9Çtg3|г=OKt=¥J ,ҸmHrnW>,ոxc|`g?e@3-d-NZ잀<=9]E\f1uBf7xHlW xƮq*'{|\~O=(l"dR"1׾4x&t/ FM'*kv5%)7Plvi`Lʉ/v跔dfHĐ)b .N'ٵT^ Ev ?}e*IZnn~Fn4SrA ohsd >3OF]vFTU4 eq,C8Y1 L>by@1C b4;<γwx;ELJ%zu9.Jd(fC/;NYҹo"7ډ)RGs5>M_M*{Kx+i?CHu'vDVzi*Dq00kl_chSkb}8hʠ*[g.k Y| y@$(&1x`P 5+P7$_.6]Jkp)x3b25˫#A ِq]՞wjH349XBi )?O7>79*G&Wl-haR (S`ضE~ )G*pq;h ?¢-llPnyZ(膑oN^+$c0 ͔.69>e# GL3}%i"NQ hm#X*+R_.|-ӧ@_{Z5}2uq ^;$H|3t2Ͼ"R{%'Y<Hgwsf~d&"k(= ,1{T@^fFWJ>Ӛ&[ѐ kZ!Jo5VXHLUܐG\&8؃__5Wv1[=wKI <֞pd$pL//q4M[J5[竧[|j% U.ed7^Xt`҂IP${\1{H =Ho=t%mEwCh՜cex JBDS-)4uZ io,%\\)j hP"wF3Ab 1~~ڋ:QаMb 0^9$ AQ .IP8Cu]fOC "qgm7e!dRS Q;\*j˯;h؜l`vڬq Xsfv'LhO[6Q8U5k@TXuG[Wh̳m{_<9[7Rut\9>e`X`]#0;a 2#]cnxm͌HdʾDWPuT2(Av} " TU=|YcytӮ׸m_r)vmĒuVH\5L,7vJURB$(MHc\뷕Ft\85>ud/0&0 OVz0M ~(p1Ӎ5ܱ:m(=!1)ʎii%6''zɫ DzΨ+W-⭍߸Jl8XԦoi?%&4E Z5e%OekTm|ÅwItj==-"2W 7ߒgv'Tg(YQ-^[26~R0vnG )1RL'f6 αd]]YmxYTspo)DDYBTI{}ЗM_Kuۂ2=oҊIzpI;YCork8nƨa*~0+Huf/rT3i7T݀5}uV@4)ǮiPRB}l08+6޹eh9H?QMmժOqfK -#‰r@Df}t;p,[_~R,LQ, @?艸 [bx"cbft N 0ۈ4KʱttHX;v5T*T-CbCS^52{5E7^`Fﵝ$Ak㔳[aEd8;:*,5(:b;oaeܱfE߬ٲ؝MCKHɇQ#į6Lr]CZAqn$ 5݋줴׎R?sJIN<W,0pۛ:؃$x@Wl)83?MkT;= ^yBJPEb^珋isMLOqJ^Ky-P PDKͬݕbw_:<2p.i]-6Do_‘wiRT:R\ΨreQ6G7W_J$T={h(EuΝUi([ iCxxQ7PPlӬWmsNG7*$> 06U$Ș,p;S)+ ;')%5x7UcDA[ʘW9N4J)-F &lI;,G] 03D((Fq<턎3`bIp}4ޛv|Wy >cQv8  TC$䗔v=|K{ij)4esD$ H^D1y,Y81צD-hYjahS922HxQ;B*(n}ZK?X学:g-Kx(alțA FBwڠ 7)'\zk8 Y1;NeiN$ў1# qv\hb?&C,d3}$K9Ja Y/pb(xN©j&j.s9- T+ ƵL-v("jWiѪD o礡j9aFVwhb*ʙ>yPIu')g_: l$'3u 8uNI,dz4H#al J$a,/mb)YF xB.IKڻ1.M(&w(VNA0>Nn$'Yʷny:h$D6H5U)8]@ȷY''И~XHń )eɊ"ԉޞl%icQAKV,X/sw U|<Ɍw0/{ZNqK63YH`ٟ Do7 yvGl:} f0e8v:yLw~'ol3Ҝ]g<^zsRr (CZ'k۷f<NJ^x*MeT 2`9PRͩgHR.>rx0W4Yw`SrO#ߨ2HȄT%@ yQ2pO% CjҘL~].2e4r;ȩT:ɿ~g \ƉXb{9kfF4qlYmTzgUB" aǧ˺w@ק)R( ʞ~ . A;[S-`jz` ۼj"GoP7[{(` -bgD/bOh"H\,qf<=1pÀJCRIwqcGtMjnlʂ82`7)1R(;(n(md!j6.+zzB6'J?K6_&nc`j)v:)$nNVPm7kQ}?YE;O`ծ}R\Z2?iiŦ1[ #} bKVGi S>a{r oMyRȏYa[g]"WUNvho]ShQ'FjdwR%X=I nNB_"@#0gM)є 2w n;OhH" ZZ2NeWy9S/xk;k*HHc~f/ 7 7 }RPs߸QRU ç/NxL\yst PۑΑWW/?|hL.#eW!;qkgXƴۏDOB,`0 +%2#GZ֞p ߽X41ʯ.+lМW!̷UstU,]"t У FU1DrM6+I>84%ħׇ.Cf1NsF8;r,O7'(cdҾWsBd,a%·'!ejj[bRsq:'؄ݏ7AN{i.83IoTt%FldُzZ'N?3<^;%!{JW"v΄ZD'c׌``KPǔ!!Y;aý\X]9[ʧ5bCug2TCLb YHy7/a՗Gq@7Coþ5P' CDBcE?Z{':'}k4ޯ&3ouXf'\D|˶m&UԂf-9ٹWa&yҚ| |cwU1C. [KW/:gzw%^EPc|En_|lq̬Qg0ΧZwyENRäZMrFJNCl$3]zeJ~{nX>i2d ?7>xsU-!Y)Z3AC]Sَ|je`tx.*-H0߼M"})t 8Z޿OD ({pG\ )=pd}}F* K,{RNC߅56 "%h $yQE?y!+CK:`IWr]0WEo __LS&S yq*XTHQpyVNy ߎu+w *{DR͡NN=VˡR9,}dk: [g~_<b,9}]L佰d[i_׽"}MõEHjlЁi0ݑ_袝 XqhF @5wqlт!eL +;ܦ5d 쓞vsŹ2ӌpыSPq? HpzYq"X IphP iH1CcϺ%; 4nqVQ{C$+(oP3#wmt6CB}e*B >no#`~uGϧ0e)WUnuvlWk; N[z$E[,g?\O9i1udM`7#質`kpӨGN{ }mHO;x%@Bg$> e38:? poSCbȝn%C~B3ɧ = )`dz-HF]^jEl['|kRj,y|9|e-7QFp'yDH45C+,1tț5e@]*wV_Xm !T F q9Q,fHNyF,%Ut/A$'W)%P(݊^E,0NM]j2"L=+ݢbٙ{s Vw?lͺXׄ%,h\?AKNLׂ I@΢^OB+5-R)&8Jr)̢>?Ђ4av_ 9k#>2vX4Q.l?LY_1N-Äm:Lnsϵ<2Gcz>7CAt$q(yd,4PfӴQ2K!aD& Ѡ~Y!pK?mƵFM g,bH4P{E"yweVݠa(0 ,5gy&~D)l#W ̲ O-W'oO1zXg$~?ŷlzbGnXזXF-[cm?T$P I6OJ 8I|nO>']P"N#eOY =: ^R)|i}Kc0L7/|4UP$jy)-pv}[9}ߖEk"Xb˖wUue,D%Rl,/t $v^^ L@"Ùe.dKwI9t0>tHib09ZfRWHȈԽEZW%O*v. "5M ݪd_|D*M V%+R+^w'V-Sd7v1hܚqrb2 5,݈ZGOc!=XaYf{Nۧˎ!B5$tGX:V!9S@L&1-MaCIqD?E,cҞ3ǚ]5w>6_')g*f>% ҫLKǝNjuW9M.pB~AKUk>Vg3^{(*@^N)( Oc /u36%7ܕ2)u)#&ƽV7OAcRQKWg|.)ΓWSB)fM;y褵-"+sQ`ԪT`(fJ$"#d_C0>WF\hM?s ӄ`Z04-LLFJ*Ixh =Q|%4,U檰"GvLd4i{ĻBp T3@?-1`X }p%F4V:9EUpOf3:s8Yҩ'kihcy"aD3 c.~\n{*ȧAcBP0MZ0 =piP^w'j@&73"f35sR)9jv*֍!1ͼ)CO-AO Bk0A*Ff3{<צh#z=ӈݲé ӻ"ĝ{N%~WƼ0J섧@MtiG}iu!;z''-Iָ'~T%mRn ې2XÒj%QК6}nK%L"6`_x=[T^ PHX,ǁ Tנhۙ~Țc6d%pڕ;^jWgѽ!:Ow^m˿k^89y Q1o1AR:'oT~0j/+vu8||_h2M mu.rƁvρk42&ժDfTN%O,% X.(מvЬV ;\L2=!Bwgc%8/=*qt _❝S?[Pe}bunk*[HrMC养޺~|hMJӐ ,jPRm7ʜ(ꉚ~ BKHlw1'KG1?0tV~_"L5 dY\ʧûxJ"oSm\**KiطWzbRDws]_T:ŝKE$8oK{&:+3\ 8F`-I3"D<ĉcny{GAi8xCMUP5OGl[o.=O Q!p6oQM:K\GjJ9? )-yd@l`5bހ,fM/K=;%93W_ƃ:}P9Vl="an{E׉YPo Ja:{@: ~Q0XA:ٶ]l]Cw?z,h%=lY V4cӗWact>D,{TS{D]}r%LҌ(L췿8$T$vU~DNH=__ f.V;,)%삹}~+.!J缷(7.Em4-A&?.yHpߊRڣ8,9K\@jr9O PU yAip])P#"@[oki2Wt7c4JlL]4DZK/Vph⫘ 0wP~ON1ĕr(z/ !B5axDMkN܀yg|<C0J2\RnHb'ϖOhyW qY=|gVVc;Y,PF Buir?[$ƽ(E^6 @`pi,P7cgol hEwKL;wM*1nl a䲞[a9׊=MxS~Pꗎ'. GAd+#Rlni$s' LpEso8l.wrn9 vo☽[ȱ#uTna}q)8Ua2-[;RV߁6P:5$ȵ偫b`bA}kf _><}Z;jdŢ+B~&Zrs[ LhKb]ta\gQ j4bL7G[e!SfZf\'a9Z俶*h&p[E2V <7>e{o#KU !V0pAЊe`YI32ƒ[f3 uUwϔ˞7sJkU%[uo-?Ʀ' # wm6$1Х/J(xjV^ҩ3"ųLyu2M=Cko=ԈtL' }p,l5ؖrR;ޟs\4D!N$dLll^QdQ9b !h%"ҢUY.^NDND$9Uyn@^ |E*$ReuTid2叅ݦ>Uya4~ʊdQny0r놠!k )G}XTF %>H)LPfP>EX|Ss3 W1jcnL,%/qjr%*=/4M @kcQc0^@ m { l;ai*쟝;°L;Ggi05I縉(iK\߆GW1Į{ $@ۢ AV uPǏhsH96tvJ&}Fd DWҎ-+-"Yr#!-/9pwFVhCDnZKfvm\f8*5x/x$QGV&@#ώs<vݖWvqx](NM#t<”(e5]o˅0yӌE7]7NVYӏgHo+G!%KkI>QRO0a0RdGB=̤Cڌ)u[mgfRW|á`J/8PtIG{D3cW$AU:>OdGM%e'C]blNKj=_yA2PlA@ѣу%!>kXv?Xol?aSkbAp+PI׉p44 0re@iէl7j`ۖ8[ղ61KH"\bhz">`=@"<_?`\7paA-0Y@aޗ,^Zhx %5*ijξ`s^qόr.:]uF2|n\pƊiCD-YP1YZ U=js]6~z RNU#hѦY-N$'/^BP6?A{eZ xyrp.\\_-nXvdrxuP޽=J0mBr|Y

mH݄aٸ#5ri6G4(`'fg$s\]=>@D "Gs|$-/5sW,؊bYUvAZe _;: JZ~5A~rW*d{0dtvn/I,~зO43L##NrAя ~7z1:p=Momx=n N"D4$1h):ִ{\$MWމ_ҽEu4mj1:`L.=V[B&[PwJ`JREhY>jeΜjSulE>@Ni`σ1^YmLhmPp$u`RP\8uro@ӿRkY<b#p뗇d$_!N0?\P5rޟ(0܃'xjuýVԐĎe]a'R#b OF́ݙXeeZGsRW0qe>G )I%7=9ܦKXdV [h;eNNgszIgߕ76>3:E5;D.0/^v n+$@J09}Q!?-}ocOyNܾeKN~}S^^o9=.혀MRѱ0G]h}U{f| =]iy:"7\h3#-ɜrG; z) 䗟\)sSs+#sU[P 1~CN-sbޛvTVAG(jh]ώ4̳Z޾(p╉(]Pn=]>c3X/; ] F ^.ڢSiO/ CA'zƃoe+?|P@D)^5b΅#:k* x= NcxhZ"҉ 4 q <=mZuzbQXi:K3f-OXoETBDr OB(Z%=Սy6Ut$ơ#sªcECX$@sDBV[;FGmf߯ } RF Qc}U 0pfaڻQ-`Hi֟qqdw۳-^?ʷRvȼb;ȐU}s$2wE 0;Cmի tLIU jXCGuFZ7Pdj3a #yR~F}ɪFg[d~ ݳ8uKr" 8iǗcjB0Q̒!jVj[, V0fu}`b1bJlj`jHEҔrF ւ#/Ys5 YR98k{ ƥ ^Bao3Z|b4?U[~=rPIͩ6q;կd1 cp5s^ ]sh ZHBrQ8=y 2&E&g6Y|5-At`QtKh<}X%Nj}YS*G'j! 3Xc>UdHZ`(%rskIoXE 5RDx3uQ0ٸ\@Q0_& R-l8dd\(_LOHo* OGRb Ǫ0j#^5$LҀQYn3 30T.eQU MW}bl^"*z:XI/ѭƊ& >b*vkC}'g 3W!($#^ 8WA]߾LDڼdi4v* GX q4SFPLKjaas@鯌evZcaI@/(9` PSKO+7Y~DEkZ<| 3R{*J 1ʟ|x '! Ki҇ѰR"uͼOKw)F;_uwDAR~()C8 ыlZ=lo9M^%gctj3}?sHOǷvo?i}kp.﹨ BxCGC-N$WoL0,qs^͆걲rqYe~b)9Oe xs6TF'SQ!vֻLj^L0 e37]W =i-/rO \BήFSBi4}(ܺ(8FmIa)Ќ;{E>dpI9cQ9Zt' Z\7@ͱ{$)،ބ⎯á}V 9qBM^aA j݊6sI'e(IA .(%IZGp7[:cJ.qzo5Er$# S I9X$VE ZFZ$cPAklc[M77.[F~%Pq6I xfy zآn9C.9⃣PhEv*y$a7>z7e=*ukԭ[@|yF(`C^RK,2. VI}@GP' FjK*65g_R&m(UU=3KM=1wٍkC9 mtЊ1Zwm V r"~ څ^N<#ӳ߫XD ޽U$S1o#WQ{I Hp߄\HK `z@޷^vv12M.Acr!/IHTʀz^=\UTVnr8wzKEW%932C =5"ZLp;uP+=mjKڶ)YZױ:\V"sT-eHmlD9mfn.|lf$[tq<'Tz~ȳw{J#!i*TrA'hzu)#㽻׃Npccue`ActF )6uL3l㰵c&.caaA~6IE[бe 5 ) 2wXj z3 B'TJTqo{fj5U@֫S-6{zz^:l[E\@qW6ĶJRBtŽW?{-+p0w!9 PAob4(P[Q'`akkRn-WqI ̎tܺ3X-79 1v'ys2q;::21^;ٽ&@m@XE3^S{$m+Ue7碭b1[bRXtxx1*0´LtwRLd$a9Q[sPWCTԍAd[U`l0O%%GFf7%LEv 1pY2&v >-)?&l1GįN 8Ir;'b:pw"y9xVm{@UVCK[s_Xix~M%E=X2U+99g*"L*.Xל+ MD2#K(fu*7DD cm8S ii-qB\6PVqO|da,Cs V6@> (۱-GlFeYR\_(.ܐ4V|̥䗣* <[h&NKRfRoo]rm==l}MCu?)'LbANO݌&h'83po2y)Xt]9<݄%iL/+dOUܒD3TmzA#Ay!i!Ā}ޖ*i+_i gw+͇bx2rjsiP2CLizhM1lK{0#+튘3]&_W?hC-E6c`^QR!Y6X ! jry u V:"4㚨 go*.42.}ھ=8.1﷪`JΔZo0mfI!ۀsKs̽^$bM u R@M6\ ,]ٕ.QS"ʁC315;{iԀљ$?OnFWJ> R5 ?M}ɺpa ܮ* 46N!h4/ac>fPNP4UPU| ^._}6؈gyqnE^쿣nYe" |fǞ=$dZRN5[SdYzb(9;Ca!P   ӉQU^@an9P[!]ϥ@evJ'7D@[Zӥ _i0\O΍/>#K;6\y"\h4x8DqN՟tl1;S[H_ib&p+q$J[? {>z:VOXTa$_Ta50J/@ᫎt1l!; ؅+Pw"ah}gˑ΅")nQafo1&юG2>d4k㰬 פqްSr}{[6b@&FƠޏ͒o?,UE 6Uj(0Bg#t0?]X'i|m9iL9U#҄Bg.p h=jX:lTHя6Uh%W@Q&vM#z\jgf4\z&Ql]k :'U=Y W4Rf$ 6Z-/o0%-Uڈ&E@߽(WDq{q#-ߑj}y Pi*E;.+TE~QLf-JڂlrP.jObr!Cޅ_J¸@j4CzaRYmo|Rrǰ ~VA>58/F3ͨ\My_؉K$&ʥ pw06ޘJRlCi8(?h);!Pu๜}[S `NQS8pK:5K^ؕ1NO ;OaP |1۶tC y獌oUӘk Ƈo,M"P5ܽg)G!ڴ6./sވB׈̜{ WI7OPWܮ\`]XȺ69\q<(OigNϙf]=֛c>닳1P^k.D vN 2קV!uo+_3Neׁj%ls9tƊGKebM{eNd;B]9O Օ"6nۣ6T?K,bĭNV*gAS"/BZEuqI0R. (m'NbECKA笃)] qgtfg"KKe"h$"DNC|=84Ϗ˜ms 2p&>u fqnV+ p0mo Ta`hACיb(35x 5K.]vѫq8 eohCL;V6*P55,#172F)ury㺓n,y(?1MZM DZS$f{GX{jV=%\dJ:.j*k/@>(G/o!&nqrGe(.5xw4 UGs:4ҁLr-4S%qgrk+ y0cT1a6ټ_EM#Qft0tJ_'[,+`hLY- nూԦ:P:>\V&`B.&ekG<gĔeA~)}haIzḿ= 0 YViX( 6]Asf u|AmĒ|9?MPbJ=Mil?IfuMRˇ(?kNV U=lpO_UgNWB]n[N[j -&fWFٍb6 4e)u/0*%^'#cP;xzQ &LԭMl3,3kڕqNI@@D#Қ=zl~b~g(P<ޒ$TCE]Mh>攌 ͢&}x~-^c` K ػL̤{sF9Ϡ>a%u L(տogfA#+{\jdI]P` -x54kԩ`2C&zF'0SH5QISݠ HfKC-=\Q>䌥QM/]XQズ-}ޯSNo cwT5Ldf5ԳS~ky r@hɮ?Dg-9,}(Ɵ# D{&i LXxB`ў *Mř_># sf㎓;WĴ娶Vԁj}:{e%cTfp K^Ct$_=V0=mkPkxxɅ&2UƌrВGzoun ¿Hd6G e|FЙ;ZN\'(f=~Yۢ/G󖣿K:~E1rGf"cLUgY':DѬZ 'ڸ Ʌs7,|MR@;r,yZ9( z$UQ=fC\9b IY04\-vVDOza?[y?,8T&{"͹ӕ"ZQvt*FW>.FQ<< E  23f*ZlʀOj~T!B^2jF¥д/ub6AD]6^'{LYpFVmDc'6t1-aZD*h>78A0TD]+^woᠿQlvloyE>T{Oq?5%@n?4,1)f^ZZ(/<_i'8ᚕYh/ˤ^6eعRygV>0{- Nr&Rvwӓv/#[͵܏u/N 0b5йPM©4hiWu%;WF+zT 7g?EԹYPgb"]9ӕ/Nw’L39N~MQHu6* 5վ.Dbfw&/Urn=MNPގjSR7Gf\;K|@M&18ĖA7_'4Aj1:耰2O'g$wRy'# 2(%HR]ki^Y9wM7NИCĪ~z/E|uy{ rw8+7WNü^ bs 󴓍+R2" va[Ej#4kfDߖ ]!Ζrtn) Ft^xSgRWK, f pcvEaoϴh5P2B8 ohR}g)9f`> glxu-j:dzB)R)M6fEOx:*SQ~ ,;ASBxȡ͡%Zò㤍CE=W^g} 8lQ8zv1F+X5 m3b0eule(+hj `UBKӱZbbkNXP0vq!Iœh*=㬯En ,ryJr Z('fxT jwF3J]VK :%=1}dAS6Pau29bpjs]ڂXpe$$r Y:54ovHfS*\f+G2FaݕI΅A:A'$Ӗ&)Q9C\4m;B )6~*XvtŒ >\:/LhLf$߂vǑx,o( Ng# SQB7tepփO3rBk@a7j(O)QE,9i x#/fn2InKwq}k@-YAGAd4Zb"³#\h %z@ J$`c | gU$ Lў>XwwnwNqqĬy +ݥϺHw= kM^L+˄?;V342YnH 1v^&OGٶTƘ?Q)w\ܤaH3H } _ t[XI~@Ӱ.,pm {a#l劳SQK:+¶k/+ U1(LiT1O}F$ Z37NB/;aWʸ?Ti_>jEˋxrNc1;N?Wf`b1eLA0J0X)Sٯ<*vL?v \yD ŤXPi{2E%䌼3ay BQJǡ}Kwd ߤ3Cj2 AV̡dPF!}-_ 6#͞2 q)3XdȆEYfjIԄ,J]$G$%TS@?z`hŕϬ)ZtgNF.eZj &Ǚz. 7xE+d2HArkWQb> SPYmԉŷY#IlTr\2^xYJ L5 ;oֱ] F}=K8/e,T~Իe#0Y~}iYյ0 #sZJ\}B?zX>=Vnt x؛|sjWdinnLv~{F۠ bMGY O眦NEƕk޾q֖`ͻ}6~ Wz(sPQ-'hN8ç'{>5jFM*,(1EfF%hYvVsCj\8|w֊5dokB|hqo%b1wP" )=~PfCQN(US(]rE:Gz}mK@lvd[ub SWx.‘jDYyo ?Tk}moX1sx,:S{\=@9Ưe]7ZNǚɫq6.{VH֘l :y3PP, s$T{& Dx^pb2^2:BEEDD.Qj/sGn@[RGAq˯J1F?㘭C(K9k3r#)iEP$"7ܪ{ӧuຐHRBѠ|(-C@5UsW FUպ^G:'JiHZjM+lPDhp[0d >0 dpOóh@?Er|#+"urR9>i4͟H(psf2F>LH}*kyiu{{o_$L~.5]u[L?1UkT hȤb:>hʹv0ϱ~pSjڴ=: >w2\t_j^Jhx7͵H%B2ھ)Bt4S a> #9Bq:MKPo&0[oitVgm/b颍`Fn\ l|d!ͺgaubB^Ox3G_SRjjA2WJ YOc,;8حFɚ-pې}[䤰HLR=XVG(]Pv8n"I0Cd;s ԣ1䌅|T bW-A\b!r6J`YMDjGV.kGШVhPC>WXAP }m![hXPKzZLrѤ K<wGuUx#K8QB݉z @eCGfGB=rjφD\`xۋ\#My^ j6?6?P% nL&ZR3yqT4&@@I*?ppè]QZXݗ*`zڑ'BP̐wSI^lGRnyq35K efZSeʖ`&x[Ӥr`r^)vR}z.o"YuM&& &Snp[%u6]LA&>E,S {4o'ukj'v {퓕Xt(s2~'~7GřCB=ot*PѮo|ۭ^;K}54ְE^'AĈIRppLfjhpV)ti/ҙG-n+\k>#Sdp8yX/H |`鋩 g>~*ڄ$c*\_'PAļƉ4_s1ucIfP<+:I8)r0: Ğ|K9UL+ ~q6F5._lPیiQJmk܉ =\*H=-%V7쿓v.A ^`۝}!vx zv}ZCj*n"|Yd"2mg O2a^]%UAG䋦f^EdpMZ߬8McTyPmJ[M֪\opg^1&,2ps-%G igtbv`ŸDZiM*9W oN8 (}Xpư6ZbݐEŵ6ZܢAMz(MlcӨW5c0M%oӞ5$#iS wJgXs`@Arxobo7UA+7ƌxA`hH}=}(G!6Jt. L!^C:>`]Q~l &]! vv3H<^$P!fK9@m ;.|kF^&O},p\~f'5??ja0cq2 'M6VnFWlyښSvv]pĊ58Ĩ*lP%8Au qbu :yO;v"#D$kCm!=(=g^)VWϙƊZ.Xz5Þ=@S=Ja倹ez0(ܬ^jvO᪴z +ĦǏ`IZHfS 9R蓱 a@K8FځJUp )X-|7 Wي~L[rꄮ-9bx9?vt8E%Œ<|Ŭeh=Ӝ?cc)&w~y滹>}/> Fsjf=S5{~K7 V1|rO'pt6~ `as+Im`2ײ67;ݾsw)Y87LnizRjS]Zl 4J!iקl[b|(tԯodlS\B\aCIi%t 9C5`WԞvL͛ccf\uuDy 5k:[a#ifÊ&_셨1)VKДw) ?2{3XQÐ|>/|wl"@g k=ɀL0T>Mej-bfiV :/{6&x+MrNfQ-8 T!)b [ex#uJsGtۃ?wJc#Gkv&ws>Zg_n=tDVkMo<ڕt"5S 'w࿵|o! ětr/ZއURQb,ߴWс/kZhP?eg8n2]m2b=Db _!619!lJ&Ͼՙ*-x߽Hok[0ulf]1tHH Wq?پ6,#4yX h+?1Ѯs$. POi\AH8 \+*['LX>}B@S+Q1sT=%Pul;HqYdR(ll禪{LX򘚪RD%pXO`x8!1zן%WLHzAgAznax&YŜ iZa8uCeܘgl?8] sP&/]6\'Y ªPmZMK ń'U.|GJ rN7^vOPa$d u]ekr#ۺ^͖cf\Nc+f9uOt4ց3%/8}ioxp/a8ܮ:4_F9qPqqe}N:jbd“ ܭ9 gZH 0L$' u?15>E:2R3`3T3X<hM/إ,q4 ^E׋eDZ u iM^*cFНF FQ ~|ုC-ZTm7ߐE ސc>: Kl0etB C>E((vﻷZH=e oO8 LvJ76a-.Pz1L*`4.7'\D+mlřH*N^nz9bYXy$cr˞4^t&i޸M.Ikc֮tC'B՘DNr|9EE^AU9F@M%G!RO58D=J<ŋy YhClz:T."ƥMn-|vj@Bo0 /( 6KZ;WUUӾ<_ &9_g[= h |#bz!ԝVK`F=v+QC%dBh0?S-R|g̅[5f~`O_J+rM\pJMOl#,+L zb.!Wuuʝ@ CBầ!d@oqɵƏD`38"x4P87Ű虼wN/0a.Cv)MVt1"M^S6n)4͘qqW| pT-*jur0rl1gcxًmeKZx.?++kQgZB .7 \ g. itÁ4U4ڸ_AF<4(t}ݺW}7#'d9`p7S(+Bkh$xdu-j3YH|3r(6؈_ueLei |Ђ88e.=[Cͱ_E)tX$"tS|Їfޙ> `Y.$;@D0܊,h2,E] uvt'F͌r2uDιYv^Ћ(!. f)[f_q-?Q,!?gY>.FܘXa'q؊i]Yr6\jvcV_Ӓ'9ыsvW"4j" $brRg]i e1'Ԟ0\ SVe_ʴ6C=*n\a)5-w4Hm_ܳ&AU+{&˥:I *I0GXwyچA?P+ iz}^);_8%<˗R,j7Ҭ'=Au.LzeBE)>UBL0&k2{:K)\e"!/V]pIsxeoBmx46/I2&͘=e?z^0M'zQJU.9[JT(̆E~åq}Bus^U]UaX+iI?jm1"~6FPiM5ýO͸3Z&4Z!BvE Cm"NO_kUtlBw4rA%gzfhY,MmTub$hGgj;< .4u^I@Kl3hخ";iUMAE H ~ `1izִ0ev,oiK^uƁXeNV꼂jN,#Ann}9Vqo~5Tj"CQ?\O7@sfJ} ~r!* 7(h6KXĒ~!fW_ %|O'3v_M&j}bmG#fAk]pd*]k/0u(6}%y~/ސ{V#i I3DVwlQ ɁRmwVl5k[o|zXvQ <.C^swEy<op+wwԟ zaWR鄔5tOXe{WIعxkK'Ȉ~;V}k ۸lyLlĐ 5-vEF"3_c\0>dbʱ7!kK7T\T7~3y6} B/Nyh;x^"BY%KY=^BK>Ñg?|M6]]3ȱ"LxoE藉ֶ$  s| p!_|PcޏKJTĶw*warwPv$h{nDJ+V_V07tЯdg<{ˉ'3ep55  3-WLT`ni+ S#U֋DQk-Ŭm[H`HT֩f=>+3U)Zp-.v6<s:-S7b<֔Zwk(g=Fo߮j؆?FLonׅ1Mb$'mTaG@P1HZƨBp6T!7=4 "X(5Ͼѧ4@Eѭt">UA˺Jk+03,./Q"/8l=8҅^$YD!wDY)YNUfCk3zxS:~-3̺*4l\sd@ķj\?ePg FZ ]%}z%p @mYmx`/y۬+Xf}׬ڢ ѹ#ĩ! [s'Lkήյ?Xe4`6De@ r^HOU!⤖|ߺN*h<[n:־~zMeUU(M@yA y#ݷDCL1[Κ!n^u̮f9;x2ӃD07qIBw1WfezP|s6C>u7vW<FӅCF54cR q[`s/8ĸ4E. HPt_rP B|0DS`1\Ƥd tL 0lḁPg҅ؿBz"/_IPfMσ4UavYS,p™9/eSˋO8A,X1^>X5T54n[wS%:j/  'y92޲Ȇ^@LI";WE r!"irU;iV w6d_"iw+5y3ކ ,4ifzB|,ӫ K2"|jqhK`s\/-UF@59 m,gp|@gjtZڿodn{3627W9<=qPH`,oƯ&۶ FQoT·fw;dya7jYW͹=Px_bETZ8Q~d攮>\b]c/kqF~x L⟄ d:Gb"O?3AmxGuO X{6HO|NdCvAyXꮹɨM)6"fMb+Zi34 Sl]S{$AxĄgl$fy5GJ%[+J~oŨ("vn(mPߋYİ0O A,Kl-&"F2˳K/ K-#fhi!x zz]& e *B` b1&` Db<(PV-ڧVDβ#W2اA!)48|X櫙HV^ bq%IiJ8OLdu|sB}5~V !'m]RH!Pt-fmJ6H35@S1luSӄ*q?b{$TejŃIXehA7 Iz7^49Œ,BTGOHB%(mh7iC=zlwǗhRCܧKsiqb,7 lX /aηp,<9}/JK hѺSKV7锑&YyRfX< @z6#zKuw+4vj 3bl[ AW"3U1n̮š>t.+VlՕ 7:nK% UVy sBK*m3PԼyD9BT><-{4ݶwSMHJ"w8dn52B ,8Y `׵MVc_/e'6mpc$ bV=-'a"dfܘ۪9ٻ_]hEukB+x;4ӗ,T@.ʲ?;6{1Xb IsƇ[F}ʹxz.}~FkVt,."tFv`'WM?NCPeŒ r-H?;`@t'6穙9P*y?% %(jXHcdStZ8dfgxIYfYM*2R^<1'ˮ;y8k:8)9D8G8fI]&˶ъrmMjN;_b R tDc 2Н Nty4#39waZpD^iȮt9g8E|AIGCe9"IL\:w}!KƑu5hlV*|aizzvT]Ҽ7\'~&05ZlGf@7@NT;qbh 6(x%.`ƎwRBH剨rl@GBSa%v/e؂d 4 g^]xO>m^54a]oS szjٻhn43梗J{ Θwk1:v| b`?5 >\+vKaa9(uMg`~3V7dh輪r.w9RdVWFj${[]0}H w׵0ꂽF0Q;}ֳ*j~E?W],ؖ fH#MT;vcw`ģ_i#|ݓ䨌#"~ XyX?$HSRh$|te>6Of4?k+|lxeha>9+%T>aPS6xp[4RMF?@ pwY :W=aY#nP8D }˥\u"k;ԫKlgJLg*J,Ge[9ޡX3EPX mV" ΐ{ݫs&to$pd+D,9D2։qۙ[=nNxLm D &:UUS{2xχS*og4]pQ$hkH]9V7?JgwmSEGbs,w6ё]ҊUt7,;G+ڨ'yo6 @?ln*Oj3@SVE 9BfF9}.rzD\E8OCue{2nu;忝1Xwt ۩ '.sGği`T, [UyĖ*"+@UG7lh/1KfuU4gqZO(r: |z[vVv_MQ6SgǩiCo+K ,8# U\AT;-ʛ,Xѣ݄rRTO)@糱uqם9Ӈ7 GעPVq }W)Vwsj}G_VaMxz~ RuVw-}! ROYa!K> m #Rų,cڙ">|Zq7\xy!@&L}_qQ(^ Ogwӫ^FnDe7AV6b^=a:ETY)B5@Σ,gLrڥBmsx1L(қfHŦ3xLY%ՃЫQ;Qrk 7?j: ZF#3ڬ%Ipi! ԑTgK0=-h[xεiP0V$6mrARRD`z㉵|dL -8/GĮJ5b=uZd|87M_H*P殶\ =0Ҡ5l=%vpbSRX.I^&~guGΟS!9fu;-K铖C&=-NZDbt "'`w8;e b"3|{NRFמKR(d*Vބ/teUw~ @&@{s- \9&Y> KVj%3N"j =m=s^vaم <799daZ8JJD/y27:%:fI%>y 6÷,Or24itέjQc BvIy%1سj[V }ZQb4|gQC8oV:JM)/u1>'WSQh>K:jj#.!UN!!Ht6T7Oaߓ2 i&m8;l 6.(ac1 oh.m?TQ)?oBk0Cau=|IgbsƹD=\J%z[oMR 'z#.R%HLZXlܳh$3S HƑϡ}8-E>=7åUHUYij2rL3Φ!L冷B}v_]=|1a-~? s\X1A#Wp(U8'Z1EA" &,~Š Jo/Gl릠QLwSLVl}&\JZc)'$)KryQd+Gv-҅;͇$ѮG -ԑ=f8VB:ǕVx&6nB# kM=seƜfFeq&}4l`yʏz˜N@an?ҋ1Q8:6)B@@\/P$0dj1ua,`q[Û-)euRF3'gUQ' 唝jp%ψ8G64r[͓^DFVRGo!nzek$ދC`XVn ds\e!buSlw(H)9K%U]Iju b@ vczDT">fipЧ͕Z!&T^R(Dn(nM{$H';NUO%Zv7vQ=Be\`K̀&GzDQ֞lĤdP-e -ρFtVv"TtK5;EcXG_!J0c4n2QVDKTv9z[+ fG]R9ϕO. XbGhG9Ɵr ?%B٪[mPyxoh |g&~S /P $I|BPTK+ D;"Ͽ3n_wc*}Ocu¼@R)FpBi_˥D <;>$._B?^u4 <uwA"67f1^+íV!kIZc7@X OFkI2"ݕtT郸VowVFBrjʋg`C+N\U o=T>tމ${DH`D<ܫ– lp٠HxӐUǥ/3R&DFiU@j:bmD秅|-,J{1{+zCgV-4t G>~ ~TDpIBEY m kOsŔ Irp7/[h+Hð~'mRin \gpFu]iVB71`خZͽ$ک'1IY+[$6ңB:.zow&rU5J]_ߋ)+,ʪwݩ ϬZ;Cf_,xSB,ҘY m ujesh8_sdj*At$*9Nd&`׃t,|ȢV\Њ [g^v*D$lݶrJRфRȮ+ 5sYíqON tq0\aK~1RJvJ`NKvAZ:]M>°tLiMB^cSkgGl%1&NR<⫷R}ep/dl_o]1|hhu8>PqӯAyGɨC9>JX/% -ә;N[4W6k5wVGrΌIă 0)?^ACebmo@vB]~ n̥|>V*K^`Zl(WN:{¼@7rhAC {{qCL^Mie2GJ`G& 2]-x>DqA\2~V\Sl\5G'Ӱ+V4:1c59'l!A(U'fp~[)[o9'l^7qrFq5=Cl!œVPQomL~XfWIπphKXJA:=ylhV) $zD D4~14RtAtGẓ}S c{~b{#g 3΁wAWF36WM9&jr@0'~)"ZDaBs K_i^LjgDF6NoRY@BSd)蟀EӖP98C(%<ҲWB?H ΀A|d<%&jO>V RJ*ԓ4r+}./zwRndqDNv 4B`<iҘ U^gG[K\wzr$)(p:^`'!aK3XNA6 +c·lF3(($^Br ¥H]r^>UιS~albξ.UqSj^%ȗKk6;Y K|Or=78֛۠Bf,j(̂͵AM/Xr`q}j j<]Ոb4^",5E k ֮i Y[Q`&C.5c9W=Esy̻A%f 5JԠt2>A(M"; "TN&X};@wЉy6 ?Zl% ٢|=}L RY M^wܽ(VglVF_|$gɣ('Ylׯ!1R,/{ Kken=;+ -D`:-ў3e"}N="HG٣o-Yf=v]l+ lIg bIiU9]HYv/gp[TiMD~,8M@ύ2nxI6.<ᑝz@7ZdhsȌ+Q{5q*~L ٪CʽJYpB?4,&Sxz$$9 ~J/o Td~ +8% e.& ORD_+,PĄaܳK.v`ltWUFA}{&DXG^k{t 2O#~lEf(9HKͷ ROn.rL&6~Q^UWɡ3Q Zz:]%q-۵{zn 1iЙ(,ܨBR7[̯\Lkzs=gO;0h8;7~8!Z5 i1gd }'ë0CUtD#&_|"` y佸G+jJ? a7ʡJDIfh^, (|:ݎtqAQ:,ϡ߲>:ذmzN 凾=msg"':Iz̽ծlu(ggu %iX0-܉,=FSZ F;݌@#83='leC[]2 ﰽĭsH'VB<+@@*>tocDjXH忌k BfGKPS{Ii (zAjta]d+xӸ)|5`o"\4xA" ea~_ھG\ۜ3V[ ;ss7 RgWP,':4( ji&mv5l}jL (=5W)SEY P 6罾MihtS@~zS]QTy*RgN|Y.aH2Pd[ %STHc/Y^I+Mp&k F/:ڵ&bFiQdELk>gwWxNz0ɏm9~B/ yDex[S,3oSOOOQq=h/ [0 ]s3b!l;Ε=cy*=1d_mṰug2r'~ʽ0;{x\~p-JQ4ILIC}RXqWEVRBGppzlӒ(0<GZz g!92ԑh92βh 6`,h+\^ϛrbfMf-d?F޶5<67_ŅH^n-9mߟ6K{&kx 3"_g )TH8l/ M|m{9g #m'OOζŢph{+ڞN;¾4ȃ|= =Zj4uT tkfG؎!J:Wo1:f4ݲژyQ!<Z4iSCffBTڟ{䇈nܭ-:R!5iV[O#ש7_g1M+%B:…&"7}#j%i3K_@2b> gFfS| 8fd_Ҫ7߶oo#7aʈ-xr?ԖQ$š#K,[; (} c̃t"U]^vLȧ/^-s:̵Kֱ|(~ȩmo<``XؐCX?N`nPi#u|V Oe)DɦfEW>s =@:FQôS`as|HWcaoZ7T6H1gƣOg >E)W3OsVGB2 XwE.enY%XE.UM.%`H@čFv6c]g[&#t2,+ۦP%f"DՃ|ƘGg>?S^CH]\_{_xƾCaq_Ӝ?0z5@uJ4e>#Pe,W(R<)[%^ϩŚLqP%)GnưI$, rh$t"d(E0e, %F#uϮ, 1}ʖ|pwxMߠ-}ѕ1(WHIھAAO_HFSp Z:wJ7'0Z8Yv?_rA-,p+:`&bPJqҥÍ)r:t5bʇi}|&Yρ'DנQ(ZO'9"FQAuF BUp|60T^.b.SiX<9ixf+ԓ6iݻg3|JwEhy029UkP9|  @o^VJ#϶k@A !ǺwRux<<S|  )I-@2acխ&b#gU0gB99.DqWg`-j*?/NR<0,V Nܸk|XȬ*bCmFuے򙑤PEg{)y( *hoCeO/{[tL8x"$^qAy V}J.Q1)&`zЇvxaFKzFZOzwX CMV Ls$*ּ0&NEYC>?Q38L.26iq禺]VhM^UZⶼPH͵gV͝r2/Lq]) s4$7on?~ RO6-c|E1A\`}) ;!hƉUσs Ô'$jq]CU2T bW?Ea#*P?0"T[K,a}qDSA9o&b2יk1 ai&sVɢ]vpW3Oa7ЍjӴ6VNf=:qJ,ో , z3SFY^R_&e;uD6R/ yS xPp :(0c|C2&Z 0S~Gtt4u4&]IVG⹔DG! + -S;ğS >>axIsQMSo~t?eW/tjQ˲x>zv.ٟOad3!io.A7=MeFN *,葏BQ)¨{kEò;{] %2 NB=ľW_)qC'z_ٯC㉨j&ye5Јg TO:FPNS1 =`keQ H &%kl)ȘyMMj-! aqw"L !2cಐ;f%Z" -FITgW@,Gy44yrwƘv_O,%9sV5tA ]zՄ?C^JUT-5tnץaԱb7؁mtSbܦt{_޿~XGg̖:/S*۶ t¹/0'0# miAN_ E-w+MVhN>䱘5F?KY{Ï,=g_OZ ^x?C1Შ kJUa+qt2-Oْ:=$R rfuA='[Sj;shi3t S5!Z]u#gNQᙑh:Z{Ug3Ggkˡ.8 p7ń.'T^IGH|%ÿkIμydRL{]K-Ɏae l?3xƚ%d=}[F\-\tYS˔3fC+I)>ȹ ,Q+6OIKk}wrajj:w%[&M,-u-xaٷL,# 8﬛$!3z] H[ ϻ` {ri,-n2h*D\*:F0k}_|6_ÉdoԳNKIr3(2Ѐ5"\o p`R_ 2((! Wq_Q8Ujn`vo%I.^v:3 Pe/\*c}RAH9$>0`A '=kU[4lަMJ\ p7T67-iaJeŸhw%-:3(Yxմ{qgCXtXgcHXC2$c]CQ`k)/u:`4a0N?/XXgٹ  ^BەRq﫨K :IR2Syc~4<gK|6=QT>S\gYٳ淒@66&u$펂͔d[_}u hB+}EFޫjrE^ U $Fobk>(rɠ=V4a3:0?~|t%cRhAs`>~SN߇ΰ@ĦSFjCq$"E#z?)F,ū(lhدrBZ _8ݚN)Vdc~8<4t|{.~Sg#78_0TrSAZΦr4 VBRTR.mm|ś ;SR:j6(O+;蹧b`C8N7Ԝ(Y.ybn+3ا?F]sշ(9McX2j# m:?1v$:ifL[J*:MgGÞ̅ ѼY W;lx U)+Kp|+g0J>$+8Qo0_#SURzWv4j&xAzP, D`|dP{?Jv+ڱoRuI"rX%ySɎ3_4lv+ñh 1zk*ܑ#wIc}^n;N+Tu3gş"g\VDnOt\{giCEטnXb:>QT>Fg3mNJzfieGaZz-UQ)Dl.KVT/\x0[\S w)IHO} -@uGʹW\dVw¬d'-P@XG뿷1BtLĉ3x8gQKb"HmhBejHdKN~沥}-I4â7~}c#2s2[U<׏px,b oA<9pT44`RN]Q^UŸ+>>GܜBmQ[܈C3x/(4ă |skY?/]fx[ p.Y9M˚K:į3۠S2L%l\ u%S*Dݦ* p;}9,rr.`(q¿.$rmUŋ햘^Bһ3 6%핐IJrsQ仴CC.`21-} tINTkv*#h^qv[V-IL2Haqo'ofaJpFt T!WlqxGݶ^^˻}L1$jirHگi ebñwf {~eE{-EbX<X^-rK<0,t),am_x*y~,X3m8 a03=tJ|WAd菥S%'3h:{@w< |X242 nwHV8h ռ4PVSfJ'/`p-o%QRpv^? I۠frdO*e聃 7[PV)$r E\@іu {$#3>[βu8iYb,ri㚫hu3h R5DlrKtb ِc@tۇ綃\PNYLQ+Pdc!g"wh|($Ŭ z?"y[9״^'o.P~bBIUߘ҄Z@ W%\flA?K([eY~E#~u.&"Bbk/7#e>bU⍆Eot`]%[_T&9,YjV&BR+`ҍɷEk W J TWac䶤!8[pMMxj@ݾ{\az;>Я.#ΡP\ZV现"^yRGucQ04c 7B@eeSϝpyZ.÷5,? 7WO0F.BJn9eπdd+vBQj5?Wx CK7eMխ5 IQ%y/Xp=PAc~uJAIϑ^dmf:EDnt|,=[, 1\ UJ 1*$~2h)&EgB5(1<Cˡ[}7`$v Y9Em!2Rue򊐾 3xjd{<DHqSVaޢ2TDq!=YU[rX7EbK KÁԱYwq|pOlxYϰZ$;U"`O' &MţA900!o-Y/ro(w@5^FIW"ϰϺ[diˎQ\ȶr8C'GpD9| B^̖I匮V!Iy8[ĦߤqQWˢW9&^.|׳ゐr-+01}Gc_1[8WS%".CL=zJr!~'\ĮR.D ZQR+}h8)pza i>L/t26b}v۷BaijkwFI8f?pC(]Zb2*{|-,sLׅXWj0~*UPIJby_&Dz PtC@( ٕ#6CMEBdԉK iC|KT|1i}>} ̱U@è60tٓݲ؊SX/)9XLYӆ;h4XX,~a &ŎĞ,þOu6*{)V?q:lUc +Ӿ3R{T):cD/X6-}ҿ~ :}c@ty+M}ƑUN۳_ m& ?p*{F4tH @2Wy3fXFS\~3>#E熋@,ʩd+xtD }>4D z(T~)S7-ڽ,U>8T 9hG#> љb֓lNg$2ugEhy]/K}gܤ;e%TDJs[]<]c egvfR;UGǯsɶl{^gqLˍwE,a y7_PFVO X):V.&pv;~)b.Y}C)V+E[Eu`+<+]s:ȥ9xw{Zq;epӀE4_wD8;~5(@'yW'VnVbU(S;FX!~h۰rW1)J2&.ɡfO_6hN4z <EYL";M,q hj }4BqWvIWw`PVuU4 8u"OrLb1MFrJf1#ls_#aB21{c2p_NMLѕfScJΠ%vr.lQ"STzhZ⇟xhÜd>Lc`QW$9I}9#.BL8.XU-ƛ龄}t63̹ZԹ#BYG®9-`w'0]5Z;(ڽbD| RI>bZA=k?rwr8o{(<ۖJ` ̐r[:c\:?K_J.$`7%;^x`bݳ;ZXc2_$*(lu1F3EM*)ګ6ѬĚ7À`Wyߟ$\88=,=Vbvd8WqhO܁dXF|ك̵(FU 4s͂(t& ްIY *g}o^L91(;#͆ZZohUrUiқGU;DBFlm/]\s-9ǢN[Um%40aϠE}2dz5:揄LП7$e54;'Y,1:MKHL-T-(V.)T?ЎG?G1݄=B52S]%~gc0Ѥ_+?Q_, ueH| ~P>ƈAF)mQkc].hIdxaiX i2 nBUmVU%o~AjvktpeE!kfŝM~LBpp)R-BDX{{*/:33u#6{G&3a 0ԺPn<$^à/OX UYihf$G$e\߰0{O1}S\s|($6L[\kht/u}8xgYe bc(CԋB҇OR; Q+Mf)NOͬ KAwɽ~#]B#2C?C!x lv;j`+RgtbPjlp[pDN^j fDlPdm8v흶nu;+5+/q 3$$Чvԛ-ߵ4"]ҽ5$mpBxa/kH m,x_*Ρ 90ʋ@9%\N׊[t!däX3RcJE]'4pvN ğ`C;|}p,21 SjrDƦC UI2w?"х@FAqOnYN` uFs??Xfϒ"h @J^*g5 }cC``P+I4u.hܩ t&pŽ܃[@P~͇+|*PKy\]%cۡhccjb1[c&/씛,͗Vjng:T-=x+28p+Qwoo5TB3͚yo"欜2fOA𨵛PZ. U߆W ?9S&zƀ`/n'Y lfmOUnern >U辿3&e_׃[ CUckHH3*Z:`7J*Jr='Kv3Ϋ><ţ32~3윉%5zaRPGLc6nvm}YġN83!B+m=*^ \ [{Qm;4 bi3V?YHVnn3/SnP\LY̞ ѧ}Omh!y4=(e;^%dSFQ/ b}ЩmP?\b zPhu!m~Pb:jZ"h G8!| oq'2>A+nE_a$T+`Y K4NKd6AszX>gF%n=H׃1ثvk+qbP9]}A"x*שu($@*ȿޫ9oy,'X ?5 ;C, "1IՌ@ΡjTG͋w@nsn~Wejrmsk9z3MzR/9\,k|XQdyu@ lRauRNgHR[jUbU>E\4&O2+S9݉6]/U?m %_9Tpܶn` 3uquvHpZ><^ Q4jb 4<ɰ'ko$ (~e!6VpSkSG #W1 䨳 F^)<"]R7gZm>Y!_dKePmY:p.SV,t[mk $g0֙fhY* ~8^֫4F}̄qXSz/Bɏ>cA-h-^DI%Q`;G^ HxlTJYT,y ~u'+T*~:|eo)֨r~`sDtv);K ]Qr{{fHDIt Rg^ Q6$m7v$zT6L~ܮ:iP0 Sa5P{>di+V)M$,xȯwliVw:M?jl;-Dj1xE)Ӌ2*G)V6$?Λe8\y}C+ -}cl)9;'8?9u?z_J|Si;2RFَT& alڑKUm\h ڻwbofP?D/3#]r/+ڻR+3O(iIy\VRᛛ.{ fDSv ;@F_kwB宙$ A"dpW>XZAr +%JbSuP fZFESX^*qžxbZWQUDM×m$ZCordR_*3`fXBt™Ffr]q" `0׾Gٿ¬} ڗ?Es?^_Pr8Aap~üRJphb_ld)n(!,6C&'j2n]"k\YY>;1+C M.1%y?wCP/[Zm̀;|b-H#ċNuk̑xIQ"gAOöʒ@΢!CESV;,0Op1O$dHGm_ϓko#u 4(/GJXJ°kѸYzkcs>X/Na] &m Vl]*31q[v?X}Cuc{42SZfx$䅔 m "7G49wbVnul/Ң+w wwG,n{-+GUPA-3rjyo]q)NQg@erAciotl9E!N4Sִ,@"ci[o"-&+,A|.LEmW[fY62I6dW>Z'lKi3&‚f#b"BDdM#BJQ\^Uyuw|G`!C^dl)K"Hhtu4u*!+S[u#W˜G߯oLVb!GAY"w̜ŧ*zA{v8(P^.ڦz_&5wd?Hl"]7̚=pm;*R¸jх1z 󟪭'W e!($oc_T=_zXI#,:"M4MZæ6hS" Q,(Ǖz GvWgd2"!#9#.$2,ȠXfB 1“Pߗ)&d51SdYqTW#oʳӤnG_1/pD<!-? ~#)u6<^ҋu"0p6l!Ŝ(obkD!vtP+򥛔!k_ %l~jPݼ` j7!#U 1*C@`Y١ĩIwV𐱃{TěG.2C!H.eGJ>B(~ )g98h{ :'w$[/満>J\fQ+ `S~OK8H7{1ByZp͑-l YК]R ̞<D(V>'4 Qɢl0 (^fycaS9 "eK4H#iz'H`׿*b͆$qgS{qyIaLR7R Y+]j-@$yN#`{xOAJJ񐅀fsk#oĚ%k}P lh+)@"F<^@iDG$}̺wD7U'Lr/0Y LH2-{{9-#e2S6*:_jOAmpIf6ceDdh\6KڇJ-s4IjCX$ՍM[5hJԀo]fUb;ЫW28]/N&ð h.iXPMB23["CD@u,?\E\K Dˋ)i8|<&fA*lcFMIrц|h9M5y S^;N"" >a{jNPۖY3]ianj;GoՌ.&$1ZgxuNh_W%UePXשɇ!`JeVSI,_;({` J,Oqö~O>5`_ډV2S /n&oWzAŇfÎj{~ٱ ]ձQ$*ҽ+~2 8 ,z9>VRHbUg-VI%+NoM- ޤTeBrNfD@%sY1`/ מ1ظϩ*"zO`$Q^|}Ü"wZ3gW/0T:e~8*wztcDf#)E)& ش' ~|E{;S>-ˤC'ovS #햧{nyYϚūl5I|uCz/)in$_CGyXT!aXlIin[h/J)+VE`[Lgv()bsGx^1:Knu쨾ʮgy%4oqgg/8kKLböw3MK>a*9Nk-0{"p%+D%69Aa2ݭ/[8Z=1؈ࣤA8{:䡋#DA +0[o{n~Lb1o,(&INzĈ.og7 ېI;{ r^DP5&}YTsWk_ b(jlTB8-diAo 6VWb-Xi KeAwEI0NkM?QN];s+W;ڧp~@~5n˫"ٔ[9X/ Eڵlw3) 19G@]7x]!rdk"-d i5 NYdv0K|vNSB TM8#eKHfRv(HcUaFG*?F/܍-2mtZEU ~Gao?P%)|R ۲g b s1+FME@ekWN`nXR_~PyPDY}pQĥR 4X쉾T./{ 헣w,c:k0go3z9a̢hREKlMPqJ 2_uHifO+[,.$4nE_muuRπ='QQbpm]ugI֍ Mdvu>y6+ UcDĨp@m=pԟ-p%8B7̑,}ٞ|G&w>ىh6FR*z*.}Xvva#_{1T=zqB<? <1d .&GfLĘ%@e+,AQtt-hA:^R 1]Z%V48el~9-&ݩKۥ犬Wř` 9aʹ3t:>k%hBpex_">N Wl\/cF|r:+Oe.q7Uj}FN& n D\Bų,\V XqTRwsAA:9>z݆ %jۏWkP1O,(O(#IFwB3cݮr<¹R|Ӈ;]u#Ϳ o,T5w̼8iL.Ԅ|9W8 dG@X0<#O*h1ӖfS CEkK;w#"񌈨~O݌#&q`'dzd QiDX i6M߸4ɝ!K B;fCBOA0r2q@ɒVܴݎ] Ɋͨ G|ʈI~h1T(+!ZkmL\h[Si J]B#Ћ#ǢWveߋƛoxc>B|d(fZ&/",2"&l>VrʞJN}k4%/'%V(4OfrP7B"Mgx/d0pwÂ^{E.0X[֎a|brSɓCmڞq~߈Ţkw㾷KOZab%OFyYZP!~2fdIJ-ݰz>4 Ȭk +B>J`GB"Cr;+y1(k/*O."l㥹DV9p?~# 7hK!7 eyJ"9V vMۢ֒>ٌ[ N;d7[1JDpǛgQm1< O6jkw[BԖHf}YԩhFGq R,l7&Eʤ2enR.a Ya)$\GdߘS-О۹u]@S%j)i@!HZۯ^paB/i`Jn6Q|]B,ӽ2?8 $3٫D^FmyӇ’S-Aݸ`2 *̈46 tKIIH]xzrOhFRP{i 'BTtYkLneˏ^lkq5K3I1!+ GpPqK/<ہB_oѦLj?q1kw(iLOQݟjmdO--3uBmFl?&?>8vc1*~ ͲXA]Nؾvokʻ,`tpmn⡷}w.)ŝRݤ_Xk w,.*43i4&綁z吻wTr"?~>sG+ >;w3$B,I_2|-$R3uN @n `hPE44- &U=QuJLrN 'ME˛}?ޚ"+J'̵raecG@K*IT{Ut 7HD{hc.`rZ`{&Ɠ*~^'L0FQNX%@Ut9U_,sBSbipZ8uq'pn0`IBBdKSnY+&)K5{^_;Sm#Q1U2\/k 'I<=o_*lFbQR*٭\0 R^d<~Aa RdQc&CWܙK bf/D)8ex듆nE`0v+ {sS&b(bOXUő2f4:r9TI?x[\^J5ˢ5v>ŮZ4Ggjgb+`-D@C;0E~ OX2I[Y#CgãmClrS5%aB!Ge?w9ۖ@ؒkޣɘ^<ҪýU & bF<xf^[ RF b[|nC$J6+Qc,Q7/nB bV7.@X$Nڐ=N[ >#!XJKi޻ rqKG 6oA.I)w1^e}ٿ);͝~;#)ԧsCJo ~œ~֦~0BxƳ컱=k2o֣ BFje)^hk7< =n.kW,|'xAa c*=hn(LXL{:r3WEw +m4qxA틖d@,/8 Fi s{JR_'@F>^:/61QګHKQDқ> Z ve`w s"̐Fo/ O~ndN S?{:1Vh4 GVAyT}QyUNU]lS^Ad y8WbXy`^kIK8\Dx:RHnBi.)=I>(/+u JozC?j}Oڷ5ݥtHxPcV1BRd2/Jbo)2y)D~ w9*nK:19b?4;bR 9G0:@AYlfF?#Gͮe5lRf7BE E?dPezbFJRPp|N7L]T M.>껍}B@-r'`298W֪xk-i:8}$'HaE-âS40v8TP}-^i<}"\)LBnLՓ_a4>|ywx58tcR"s0_E%\N2vλO eX膍)0:r?/"9=F;+mw,yZ*Y]+L;aZZ2l *O$*mx h;E"&9;@E Gryy - q'l^cJ lP} ~O&=Q= `*i"{I≼>10ܯ@ky|@>xZF31iչ >!CWŖ%ime^sY=nCjZXDR &)ܡ{Є]2 ZTE"3!fO[[GWcD?5 Xut[oFdgٱ&}|K\j6b=Q{#_Wt;PMU e44t( Pf5@GLXE7]!`x t׿W!D%&PsyߓIﱉfsʸ5-ȝ`#N.Xͥf0*azBefT>u׺cw,}fX[GtN n9W!2%$y`]ȯW%#t(#FuɣʹqXO%d8㣪!b`WntIp#W g VdyO tJ~kXM3fAk#d_\NIm:\z؋6o@XaOZ/x.s'rP5dtoUuD5 H|YiZ5C>s- TY6*> yeW{Aq`>kSȘ .7[%O0f)qcD 12XZjհ:&I"[`42 {-4a`  t8k, $a2Cؾ_>D԰- ~Q=co Y68n6cucqW4^{-ƝRN.#3% [t?P'cPA8P.~a/&w0R.}$ؘ=Ңi$9'ٗuCBM5z# G񸼯ܟϸP9YsV҃@2Ȧ3iC9q }h.MHq4=M }~תL J_|X`vv6'Ht"³@9!1 \T/D|jzNz/k󪀈jvV-TQC5}2`OJT(pkQBg;=0$> ztťBN|\F Y ׾KrS-R nZԋ"!}7Ԩ[ GSsuTW|aDu/*C0 fM}NX[^m~HGW_aU ~Yl񇝙3pisВpźf/G d)BSxtˌ;=(t52SE VxGw!)i;Kt$%&/+}o!w!xpg*'c_EtP,!Q8&waJ+D#S%~,vֆBmQ|vS 'pGf9-Z#k ע.kw}޹uJևi'uV.|e xg m@bo_X'Da@ Uwt/o< Tt[! +<'o`kn=H':F"!ѬElhդrt)^rG-xGwAPaFדe<^aENx}qyyx՟&xjUlE#YALs}WṊU1mP=/Mb.J_X!T{O^H7DM xlVRH࿪|1!4a&![,;{t[YVCa=Z? gIȥѭTezREA]-7GMm(:adv}r 1U"<_tKm:͗>[i}Hnt]z؈ }bkS&xb5iwZE3ź5wm .pkuGPScmJ.9ZR\C΄)WƘ@$tKzڳrWi[PAoZʀNvOb^3'FgɤgMD#ՔXs#17DӭK]BzAeIf"k&E>9=f*f@WaxJs#QB~3rGHl5sxQ"E>i21 qF-_Z,; Fc_`9D)VQ-H $,O֧fB-1`äY~b4/Vmul}S[=#5+مQ|{7n8ڒ(8GIeڳc?4XZB"Wx}/#+y5Tjhdx}gBTCMaR3^ZmB djmt'#x}tк^뤽L5Sg0؍]3t"}2UIgpm\Xے؂ 6"@s*i7kI.4S9-rE~;#kZ rK(|pT;ndKö!,TNCU$-B1)<7?v%+MÁO~GW'A:u~>11;ͅ=^m9FO/Eqxcr\?Y3pq0n:zp OT62awvA?ՑRK397~S*!h?250.׋<%ѭNE-Nm^ 9en^'I 3-C~D2 P37?r\h{ G&'[ems⟫Zrx72o=u-$c3(r)%0UzzL{~~9UvioIu_~  `dҥEC ,z%/ۅcCoK|FdfId(Q!q,/2z_M/.9S R7s.2DY08^`Ro5Vםӱc_~ AibaO(:0Y,,zE_(H0-1E@bNGu"դm(QV1Z4ۊdoKh 10?p%nh}x>jX 8r(;ރِx76@O~{ΟauR6J[+D\Nt`I87Ac/'vC] B#QSbll4-+g .61-f)!j.!Z? /u$7 YD1呈yGe ǜK80V̓"F<£7 1/齏]Jy-xi$|ԂM07h ))nY}!Morx8K8TO|3&Sƻg`oٱLjM7JsPF׭GL f/""v~`8wCp:E[wG0[NZ6 f4k-j1n~d?Sf"|q CV{b^[olf$ݖiL8??KpKuNbFE#8|V[B+ P9jL_R=jġbAj⿤%A=J (e&K/Uiҽ5:CqAJ.!HBQ:$= -ݗ>fDz}0|[݅<(X)N On'efBH@KK}|(9= -ƺp"G&h.WXM;G}86 \#.p|M##) NH"{zes[h,m߷Z FjuMS]9@=MiBT _d2}RvUSECfC`.Eკż E[Ak]wm$A7!\5 0chB3Dpt_ sgMk#'$&OcFVlP<WA ={P?~pkYʇ1FǧU%pi~uDOѝ;IGouRxXG6 @0 w^2yK\&Dݟ%0DwtvmCB 2\A<3%GhhTe`d YT`SY8PI$~55K l=R6cǙ_8릉LˍLj" uddČo pm,B ܥh(#C=X?f-21|%[qӋ֚͜XM(}rNwRRZ[+ԥRڣmx$z ec1 >6Ï(l"/qv(׼5T]~R]%N1X2a](:W-[4hg/a?`od[J{>B/ {LTS+ H 46}@.<܄ ąT8ˁzk՜M1dIMz"j9UpcBW.j.|+>>Ь3*.rcxZG$kpL* 8_#f{~5K,Y`pzBnxqmS͐l*Axq56.UQLm#D=fv@)}.;w@ ?ZʖbsyNТ͔r=^d؂v粛k AGTrR&\510i쬃^I\`n§IގYf0BhzFD3{ uXYT'db*L 4 fw G1Nq83G21 pT-Qq40#ғW Br6 rm< 1BUxf]A>+n)?nkԓ/3H$`%EҞ59O:룔-erobݑ 9qnV2vk Hg?[ifN hN:ؖtoTWѬ/4paae;'euTlKYr;}gN[֣J֊`XgcK;e6 2E&xQWc9- H"ϗ r?5Ho qA^:5 _jOe6yf*ScqҔ~i?hd*#H2$\8fuK^aѼZDtIm,6P[Z_fe/tt\9vʫVѨEQzK/c@oC\^܄?ZhnG5,KrJE@"Q!4h5ssEH qĵ( | v1 =ih/QGwlL/OXW4 6gW4K dMN\'F]@TaV*2rx{=P-M;>ӘQ*؝xs-Zqy\9Gd >(^% )*/z$#+iOs~3U'k-P6{Afaʜ [+ FUY?jӅPP[+CvVW6q{DZh\ ZT)\n>\M}ʶE@㝱 c*B[ -tشľ?˒g#-c[6%W"jt燀KGFHqzl3x:%hʤ{/[hB(6Mofu?D3[#Ϊj+Uʟ ^l{rst{аk QT8s62VIU2iY0tanЪ T-Z7}x2aZ7 g@?*r txTl5i#z'ݣC1Q#8o n40S:>1.X!*v1|r {V¦ZJ׋Rsq|/m("_6a*T(h:Y _۠Ow溔Eqأ:gL+6ƒ=č| ^q\pLr /]V(:b'3Yr#m5,Fnw*K5iaRkVM"LpQlvo;-O~psp!(<Òz1DrXɡ`;( [=i7dO2 !XW6s]g,u}6f]jC@S{py?}Wݕ)6~]RpiFҖMOr6<ӽolaygr1HG4V_|D苯dud{ыE 'END[ڝ}ZCe$YjϱVB~c*Ph}jFKHʷbfl5mtB~#t&B٩.i_ ǔK`!٫Oāhj H[]f]q;.'Ј4va왑Ez6lMnc6~OykRe5ʹc>8yj)yј"3dx/}S9rf1tnLAu^ϱArMsR:" fA]j"z5%y=uXZUnX|HXeEq>/X%2<,),]^2MByvT }~/Ycر$X4TVy~2tBݺOrCskƓPlxf9_DLM12NB8̈5$ޅܻ䠃3ۋYͪdXVT,r8diet]+Q.jŋ jc9L~0s8#x3D3zdrָJ GF_\d09a(HHn)wXDpn4Q?lzyR&R-6KGweeZI+C$_W:7qiLp]48**5~'Ea/f 6,*o<ѧ3d8 qc.rP}GpeI$C |(uB%5Ih%M80sYᆿ̶Dmojc}bO)FnpUU.,o) g` JcK}iv@qz .6[qu0<0)V *<…VTͻr׃HV̏d41%S̲Skx wly^.uՏ, f?%9Tӱ|ZJaQ!|sn E7t\#=jb2g (Hp$ʁhtf^.$r{Odۈ?6-!?sM<)fL%q*EٕVv+6SrO򁺂]w$"]iITlS~CjR37,;7B0L|3͐ f3fmT f#_ ?'-[7 ZVi8j LWvN1̓h^(S/Pqf8 Dr~p Ys^zbJ۶(XCQ^h K 7e!Щ0fG 2,8|9 _jy\ R)P" HMkr=e ^r'0OrkVP#vlzBOq)*֨#R;6Zwhх,Ao'q`8>ͷЉۯVϐX(i\{? j'OO q=<=Ok՛J轱^`rEBB]}=2)[wWk],ǟuq91-g;o6m韃T_l-x %se=Ү5WcdehӢp$ːL+^gcS;m[Q}?5dsؖg#X'D^'Wzn; ahs6Sgٛno tuRUC}mH^dBc_!i|#T.(X\i }8a(C޸A3+@ş6u,F_4 /Dyw8տWmշIzgv;U28QvOjz+妓[L'7]V Yp Gu-bwGfQٛY ۃQy&RX$a{~-c!\q3 #diU r"v}/>NQ&O?yP \Mh;˶+i/odB y%@d!n*{yE؀&GQtO5ⶱr'q)AvrTUZND3K%IOkuܦrdu}Xe1ö1k' ր: Ȗa;CWWo$μ@4tϝh1̾IX\GFVb#1t=]52m^ɧZm.㥫9o]tKf}&fOXw =E'ح\%. %Wre&]LCZDҲ 7]Y>p*PǑQÚ=T)Ndo@J3t?$݉AJKQo_P<= %rH@d;+;A Rj|='iU:BE]ցb(F9yKv~[¨J~o+n Usq;q\5OÚ eY)#& 8tj/ ̜pmyT."|ϛHyUU(8E?`Xf\+GD2wO?l5z#Vyڂh0(ۥF m]մg|˼T YxLyݣak-;|PE钍O/(%bu⒗ݛE#=>VnNb!RWr-T.yGORQ{ZD9LǞ8FghMd 1Ye0pg`d Y$:ʧ7IRZQ57~=nmQ#M'1~) lw? _k[&I-Lrhipe鞀?>\=2ig,D@̴r{=qZ_ФaW,6( QJR-w]!0(FҐI1Hӈf/J.tJXC:uޞ)7u3N]V5?ؐ6WZ`Yk ;5slb"[6 01$kx - U(׬\;-%|~y]o#jm0ܘVC;C ܚq%0J^LŮ@UDSږʩH `n1V[N/jj6Ńˆ]=E"}ӌ;u-a,`,avWץ2fU\h~lgY13Fю )g=5:K"{$qd"ݖҨEOؾ(UUƹqC+m9yVEʩUfpTNТaN܆gCKcXPKV/CkBJd.dXi'cb^>aQN oA4 }nw:K#Тo|akT&Q:2o[oqI*?gBG+g}db"4zz1AinzО(2ڕwnZp7RU.FRU.:ٞ ^L+@rYbMC{SKE-·d::8`Vr3n:Ay=/V.CoLtЊm$`fu{t)O<s\Yy|qgm C1\;,>g6)ۢRId'#Q> ۵Ѿք',tE%?y=|1b#꯷l@w%" 4eyhv1P[t()( q$f 4S8B 3*hfm$d%b iN9m )p1L`+ٓo\_I'gְ #yӋ睪VJj!@x^ƪH$ݎXd.;u'5]H^lZϩ4o#lHJʰV&/q{_ތ]D9δ v>51 Bqwi0Q!gYe8D}现 {@d^ֽK=U]%5={FO:8=*Kw=,y4Q)OqA%c*f74ϊg 8ta<}Pb˞# C|ɑ26/*^i.솯4oZp&g^m\9-ƻP{xN8ʕ䋵'!eMJEfGهf5lz&~@[T eQ6! mxsOw7}ۏ#iFtjHi">2.rLc~] mT;j~ e T#UfHګ ?A #fkRq: S}r=߃E/5Y<ѬCGGF43L[:)B0U$Ɵgarb59M}G,BKv HCވ \ [d`*ZukMptީ& ;b aF yB#73W^%5rHCNM{ Ӛµv4ǃi؀ Gۆ/` q8 6Q0Kؽ:K1S?Dصn;J-U' rG/&Bi>]8gf`R0G{Ͳ^3En)2Z!$GbBRJ^Qlc5p |~q^݁ iѤ# 9fT׏ozLQ&R("*\?Is_JCmL H_b`aEH؈<1es ߪIwdڃr3{ѣ6<2i rIp CA\ORǘfn5O݄G'Nћ5]SJ[ :~^El jMjհUY) R>{\@(Ep.-DxP%K!m d{G( N?gBG e%,q1!slA3!Đ=l4+kASov%o ݙ ěPtY le&2Or T$ 앗KPh72R]zB1#D_h_2R)r tRTAhK2LZQR" T<+}u-5t봞t6 A̦J3ь ݹen'=a$}X,{ zTҬ3K+\i&6m˦>,9,)jݵ W+y5( uCnHdɻ`XYe/AXMx8cT1ˎֆ&E)d*4+tQ]u/xKn>ѥw5b3)%9>'Ź(LhԌ7VJ2>ԓbE1GF#& SzqC̟]fR\0kOqiMN[&޵ ni.gݵȱ~/c5D[hGiy@(xEn̥~4)A7^ʈE4Ti9Ǥ}I]e`&YgLZz~v6v ^RD~(ZaD"0/|)H>͸F1]<0NrV)f\ bx隗Z b=Z~Ĺ(**62΍rS2yo=`0j>y4G5C3X՞ZW FMY]E(S5Ьu|?#&̃X|DvW(@!Aє_x\yAq?;3)DӰƑn$JØj;?/P(0J~2%Kaks44Fwd)w-LBT_7{]r1b 6of DPg,!!I9V8§JbѩVAUg.n2]^ЂZ+3ni߹Zbdʱ$.➕.rj)W=|AU 8UZaFďi K*$;|bK*qL3Ii&ALҷHJl/tcŗJ_SMy-yC:!Xz" 6]]$޷ow܍vSaôx#Oئ(-NQsQcF*㘈Tmgl1R2"RrK^ A0rFh his ̴iVG!8=PxJ7W*Iղj/P#5>MO:wMƒTyDR" &r}vltT\zջ(PA'%qmP@WUX|)oooΛ"$g:扆)Nng݊ aŘ]Op`76$ٞ"}&1hJ:ۍ5//Ms!i~\DKLǜVRи/XsÒHCloD"$\vv,O@?Q٨݋pV7%yEYr^Ja1}'9>ϗhVSxX T`zK6PmntAh:|y[)oP.GcYI;zdH3C[ee@Bz(ZHi$: 6X'Vl0!͏z>ߣ+g$e#{Sb?N#*ozϺJyYYB9k7E h OP-y=D=c.հnځIJOJ7! zPxƸּ s;]$xy?q,M?8j SC]}9YI!ݡ;eXrGw"NI;Q-킸µo_kk.t\]C" : hxUdM<-CAxv,bUKreƓٍi^}[k*Sl/i |H.7} y5xA}|1AVUz/l\ z43wY XYI(ZkQ'EtT.=&mbeu[ 8i!8{Ԁ!Cک33g]w2(?uBΝGK5=mӇöZ֢A~]|Hp|G3$7u':tׄQiyDMze4|@Q+ڶZ }t̄nx~Vv#VFg fhl7`梶XwjE'zY,izɀhpTQK&NpX"rR4!vGJ㲂:lJ5Fa⫷O<{YW1gP*f^w! WkMٿ{3. Jy2 D>ce/v~QH-x^ŰC]:硛İ9[&xHGzt UugI܈}QM@h7H߮k$=-|IDDTw}<6RcfD ~i#YF{/iPCS]6 hNmiw_nMۂܐayMEO4W̥~dQ]#"* $}ݓ[nW 0,4`ί[E*& NkNV0&ҝ{)}S VU;Hm&jL[y_٢bd$UQY^(9ˣx[!RH;]ܤΡẃْi!ެ%Zզ\9ᦷН~U߱t2S~=NΟBUZㆴ`Vh1OLP1p܉%̫.b0S9肋񞰅F#ҥkժ?:Ѡ!K#Z'Q$l"$"/]A܃ `,e6i8 kBu:?.k(쌫beSbskhh!F`{x ;삌$º-T?tk RCj.;5ۊ;$&ԕ"ɭ؄⁡ hCG;.KQ6E9b77<-S[Q 鼏L, ݻ rhlڽ?g=YʼZ u&]Ĕ!EKIY+ܔ̋ O{Rw %.ZT>jyr /d/)` y;5Xm/Kk<@I زq} {P t l!KvIr =G-'r NŒzG%{}9Z{-F/,x|Nd%aQ9Ex{ʊod3)Ux5t$b̺SbΜaO`5Zo~P$4sOH4]iCFuPPn_H7؝_Kih2?JX CJ`0LM9htW?.ō* <ګ%X U⭲C~@:)6%u@(G&tir# &[&%&4 CG)YQ+i_b7$|HFsk`Xi>-[*;T $*0W qd]&:3_7%@. $EiFUr?`YYkgg7F5ط%C> Q]dәP՟nɦbs]?}un3,e:$q4Hk?"P )}7So5zT̆b?%{޷i״ϛ ǕngxܟxV{>_{FÜDn_LbοV|i_]WTom#[n zFh;{mZDBfV2(X֢V@ Q`gg 8?PS!"T>' G_)kroxSq!nHf weW}8vl߄yޡdn[(H4!|1Zl:dk9[qrqx!TЂAoC, |v2 nYsc(\_+W6: ccŝ' zT_H8q|^@ ԄalJ?:[€p)Tٹ|``_Z$Cc8@UR8@?ρhɊqA9xiždi/neY)zV{u1:B7)yNM7\a?I4 #:)?@I)ۘg0G<$9? +4i9QW&Ig"2_ h<,%]J*_<Rfѿ`| 3xCi5tV*<WJ4 05CDNe`aA^LNHb,M 1.ww)4 LQh{nw B5ۖDiMz9? &7u}߸Dφ9ͷ)ٺdPgazmDf>-.ҩ{3p4s 2شb,M0όW {`vaͅA8!GU;묫OB zuQ6+.0'ٵ-qgVs0H1L^1c,Sе?!mIHxcqWX7wHwN0|FɣNCr5bI= EwTk&O$Jgӫ?H/KT>j+**`0Zm`Qx@Ra}WКdg+4IVRWi8ss'_*4"rXt#3FUJD_ffӝvJJx==AgbF6=n|zKa "G,0N$ˠH W'.{ s*>1p*0J(Gr`x}[p3]|El^ wGFZ"B\AB&G0Yx?} )DqCDlDrCClߦ/ Y3s39J΁@`!D;@-:.ru,笎;-Klb/ 1v3n!._chf p),-KExv! 8#9;(*B(Эy~"||prooh~ Մ;sD_ׁ (a;9 UCy"A_QW:!w𵞈c0~6)bq})+| nJW9BXgAt 牊7vʑsD!V(w<1iXgw<9ꏄ>w]Y'aƞq`֣"NN~ˋc$g2I &N=]aFɁ9zÿtH}MoĜ'}\ֆ],r$.ؕa=D=w6ӅR,>6n?ϤPEG:_{q ر/$ń`8cq_M2>Ejfaկ w1}kKSB\)08rC1k` xr;h5F p}״k[NӠ͗ \bH ?We;3V%1OSI7 ̾ ~Qdd]›64l5M R!i~۵Uc\B;:V[HK2ec5q[C6m`J NF9jz.Y풚TJ%)]e-3D%Fa~꨷ւRq y\&k-a_0;vW+nwJ_< bt4Vu~S5p:v1NO|Z#*Gfl#94H[S+hӬZ˝˕jqrۗt"r9ői@j/%#$k7 \<3Ȣ%2X@  w&:1 KvnvVwȂ Ӗ~.+{LJ)%=S <6񏗋wGR}lc_oNԛe1uoQŷ}jk8O%GuqΡ} i߂7_+ok4C.#G_9S1ƴT_X as, p@U/a&^*,CHEw1!Y-!>Ȧ"Q hS3UiBi%&Bby`) I6B0;ሲP*5yZk/#G`NVb6#Y#m%d׼.{ Gy o?`&"R&|WN?So?.sMHQӖ,i1{ y8ӎ\~`9h̪+d= W*{`<ȼKGlN¨y8l=Hkj(mX 7L.1^!Dd+HjLtZ\]'fcZL"ϟOLPDCK2QH9Jf,⣟Xȕj[Ҷg6-BP%":8殨͋$MM2C]QKlYv#zDci#"|uO 7\VGGiE(d~u;3$ ?xQvȊVZD7*_5dk6_qXlC:VS=r8SOg$/V( !3_(~\%F6trEK`CjBcFԟ例4:1!G  T}Ht)T p5{ J5KNR8eVHۛW}n2N7O8NgeOF'xBy?Tx?kY9 ፊI0h8- "%WsKzJ@3 WPy7AtX}NX$eK1nMwZáoysn?= v G>2dG+Qg PWt{7>;{vn E" oXk@(V h7*`8e l"mSaW;z\ 9Ybξ.Uã^ 5KK:i]i7}s.ZrmDRDc!@woYʜy,|67'S?WSTQ#]ΐDmyIk7$Ӫɡh,Y*^1;YᓜS d~j4BCt\U_D]v`9c8 W͎"C%ʾ#KJQ=9 wLP BO^aDhT))q@*$D| 7 Sujp%})UKӘFj.&CVC)}M|@?BgNUñE._0a'wȫ^!] GrQ(fh\pW^#kX*#KЧxtwHӗG}͜kmZkײmjMSru>rrVмE?>݉~cJfSqﱪ@J cb;%ge^gpByZ4*{)=UIyʮ\ZW;ll-FaGIF`uwi DR_DK2-?WxHWI h -97|נC/%}h~'09ѫeiL iA=_DVe| VMcaJalO>xvCXCY:E |qM g_#>fW˺BYN; Sm*Ҵ jNU^kEk)r̫]ߜ2A{"HgQM q;_PjMԤ¼2}G.E.e2 +d8\4ؖ=, o+IO*fUEH?Ưj0#) vwq⥠]]M Lט[Ɍ G.,1qc!0TBb?j .}w.@ >3ŁY˜[9Oe~odH"ʱXOԅirq]WFPR Fs"&͓iQG>k־A9OP80*Ov*LYFBnٕ/K ^? /Q(Tׯ619I)[ IՇ_ Y;fl`oͭzάq[i<ۛL.|it >:jPtIu:^*Gk8ge#_)M1 #9iwg5C̒!'pKO dF]yn%Zk?WU>X4qR ~S0K>{M KOvkwt\.$`mJjfw@@JGp)Ñq#<Լ(#IC6b}tj BHηrHyTjϨ숭捏;S"}hg^!T$kv WFs/P SOB&/ l̵BM K"}[s!z) _hԏd دx䐽8|0")w%-ICү[Xdy%74zp*b$9YNm/BJcbc3Q&2ORXdv!wٳg]UumԎRe+ef+R^G4G\hQ[]]$N)ӁJP%` R֒7L:4L/=3D*'ĭ Ft\Y)VӆXp[`5}]Flحۑ7sSvgl9KRdR)f7 3TЮE'9N~)ʫ\YfmWQHmzkBJ¼3鸑55SwtRħHd4V<)`ҽ2KE5b䀿0_HrXgScWy?.63ԑDH/?tq (16Q7 | ˠ&>RUGg%Pqn yN#[]{m ~6IG(<vOyr#U q+=a{)&^ۓ#g?l?.F{XR0*A) j!ɳk<ۀk\\/{"M xEA<_ lПA!"ts5Q[,͸4uAxj\Ur6 >iC>IT"‚a*؜W:Dy mu.p|4@ǽ`?T`bΤ`P)C^xVGlr#;VMD,r^nLwd̨Wboe]J[xz(HR8{?|gi 9)T2;6Ne+7,r+iKfuuVư/#IZH. }˨!P/>L7@CY{|3tiyd%oH~B(kQUO#fBhd-k֓+u/e`;u4U)-FhWpJDɓWP4y2P^$̱rI?!dw|iѭVoANFԳ_[CӮ+@,f"\NG)o)y1`"``G+2jݸ ayN.x0‰sÉŷoq7/IsO5I.,U_ }@Y _lMӋCDxu)STfPwپI%يB{(.|0 l/UKV ÁqfX2EQX,SɆUQ~I{)XdR:K(bR"\esO;wQnx¹L. 4U0XaJ谁wx|l%bܪB>r#^[h>V+񶎪u`@Hӷc_ǃ㴈*j\WG8rvcf̙#r|NLG9=$kv?Mz`l{<ն]I<<~w$^g:*llbGNrY=-TgaϞ"4c4%Ԯِ1#b1{~G 6O"? 5W,A{6'|vEyU}oVHSHܱ`ʞ~˓Bw <Tl~TP˟#f-sU +M<$9{Gi* /90`̱w2e Wq0KqKv+38pWxWc:$<11nJ7/(i5fÜe]SAxEIQ`ne}AD< 4X8%J;#"ۯd&[-_s!)M]Ka.d=ѵ$oQz`-LJ], DS8K\n%vW ORgT䶜)Yr6XJ5)e=YRD+)D;uaaKl;MިdPǶta }15Cw$)i" .C تA>*Ǿ9P19o%*XE1GYyX*Dž*A9L%'؈ |nһ:?^5JF?r"x?Ʒ1cb6eF}z;e Zynht {MG1O H@ao#t [_plL}zXW3}mNF!w}}"V u&Y(#=YqnЇ ֤e1DžM?@'֢N*bϻyrLwEQ*&]_D[6;$>mBy3sgl=p4rNVNڼdꈗ(M$ \]m3㘢KD\U.oDb12U|umh%+1ANm4ejY^fSldl@й^F=Z/W_Y̔c,p￐_j(,x)7P(/=)S֐WuwKA/0!5EI*ӚQeUwq% @SM!scK(p<8ӚK+%|fG=[yζ`Cupr|̚/%8iڇC˗u6y äpmk  fJToPl9!H~M¬"@g~3gW`97\#CrP4b\u`Ec<;퓓X)O3.*L3E՗[Bx T)S9Y*nX.s p4ʸcpC pf=O%,>A\eߩUnSA3 5Ar5ĥP+<sEq{P&Yh8\ JPcsƜ2o3kz7:+{8{bbZp{72}a}bxJ/*դc `S${~{(@Os#"3&A9Qrݽ73ӟgnķ&j60W[ǒpE N8f0z |bM!!G k}=3X\X%,ϕ{V6G.Wyn"ovucuC^ywɀΊYRū?D @ήh[ #u+ 얀S@م8/; h2\˄H X^_9[; E-YJ =)N `u,dfkZ- L+ys@  Z ߋ.ҿ<-ֈDh'&u piZ~\LNP!L1'`U,kALC$)yH&.= c9ht?|-Wr&Wf+?O͹q]9<ﬡ--"Dy W@XxZRzCPO/%G8Z Sˑ>!dSC7‹(%"D6+5p(lbSU O(Sw ;CmlJqǗ8,{Nz>DD~jn{TԜϟKH=䨜:ȶ?~UӤLCalLJX|"3aUϷ^ɍ`ξyٽwv $  v,91}7b}QX`d5{ 7BcfN0[aHª.Hq+j3`/t&t)lS9tA @R:^ƈ\Ĕe--cjFDКKkNɚǯ,»Rf؎jڄpt1Áaw 8KNhSۈ'1.G;í gsjpRsD6yc5o^v:o`hޟ6yF %p hʿGK>TY[nV: W#gJytbdk7hE6y aen԰uףᏆK_ؘo /K҆RVPq$@%2 xE#()Ūt>ZՄ`$`̻^jGMMj}d%,ێ PXY;RtN 1_{csb44ufU;t$L|mk@.W^|N{KHYâYW=M,{_#P )c)&O1λ&y,76֑se1kFH-  fXFՂ+ְvD:50Ef&Ym-ʸ\[p{ ؟9h!1Ou νJ&Jug ΧSJNK9ݝX)>%$Xbjx JWR*^%a@L ͈#Ar6=)="C]<*7w tҽ sT'GEg n<48fkZ~b0[5}iyץO{/r9;l8߶B Wd&dA -Ŝ"8d\gұJ.;]xt9١Y¸]*uaplW􋜌Ei2[S"Y?P,;c0MG9?B}o}4u3gˍ%?eԣa0b6$mVr8M#^ bsA!*m8WPhDWm.W*g^ A=ҁjH I! 9 Nq8'?~\&||DrN :/:i'Whk\h%D}(:.$ևWp w+) }zV_ujm2=}ެ$F 2ښUQњ%ui}O]Q}[&A|\zxa.Ž6~ iW˗iy_`M!·)Dk } %u,Feu"O!_"ZH6Sff9(f~ڼ#5'ZoN.͓uY"fɃxiHMGZ@&VyoVSfn2XԢ2UX]ask~n>T5 {t0l8מK)33vs?H LE'ɍ>00i O&j/Fzܱbp>A&, Z{RB-Eʃ_j 3DsuÃN.}6(+E쏇b /' t5lɽ ,eu9 S|;'-@9gйNׁfTTa/^ 1YyƇTd" iti5ksbu ;fjU `6lh5 .{ ?;7%[N>ظ9H %"f&U#XwŌWksWi] 6j f 3.2zy-DXF\[m(˭*r puEr!q9+P |$3R#T61AA>tz|ChՑP.K.Vd|N$x zVC(A<'BDcVJ-To1COmSNςo[Hvj1i,F.ݖ} &Ma46dj=b3ŸWī.FIT"]uCf`P֢Fy }!?UR[RfϸT U Aơ$Nهf$WV5~JE䛣A}e|SBM⌑IKyK&P;EI(MQ%?.؋@LzɍPቤ0N$TPZSl؆-J@UȾ0KjoB.{F=q#|.'EgnK.*5EPL*0$g0'MmgZz9j;U"v{}Mk* @y?QG]M21K!,n`dMuXi'I^3W- FV B`3_*Hv'rO-q=jc# HNDJpz((`gF*XAyM&u̓c+bW҂N2FPH)V?}ol8O@.|@:yY`wcS2C0u F UnSEi\z{ ZͻD-âFøm15(m~k\Cәz!P&U>wxl 'SCw48B T!5'Vɖ܅Jn"gvl1(>aïSc.߻jO1TjUVUZ?ڻ`1H8+zqWn&h ## bpR`GZ?%F;̦*&.vF+8r⸹r)k])v= ٟ\rYԳh)6G6*ﴸ+tL7Z {4$Qfq0; kX5<ǵqC[4[z~sbxNa~0׭9Q=oQBl4L,G^`|XR} 0&݌P嘝KG pF*S}d@F.p=Dn썄^5=5fi'CB'{ӬUoHrI*I@¾jQ Ā#L]PI{Kg9*]Ȼ8 v,޿_ey d[Ҩ `b: : *2ٖ}|nFDq }VN˴"~\]P vU} a(T\p%Znƭ#jIe,럂yE&2 &Krɵ0bM"}׭se_JzlroVƮ&|kg$5#6.foPur9ָ)ENV;R3bŞdC/'}0(.Bvb9&WHeIR/ %":g"*+Fpɓ2eIi-9vFVcob*]W:MuWy D`KMMo1QCÓw8 8%Mc!zRA;G286U?΅GJgWѝuJuM0{T̨Ep'ys :;5B: N3&)ĚO|޿b#}@`87DT,/wgA(rc]ä5;~uqK3HQ_lzY|Ƨ=Y6J @_Bt :&/l X t^\Ja1S5!\|3lQey1gb*i5͕כtX@Q9΅;n:C>dkF*n al8V;ݗGkI'q1tC˦d%=wͮdN_~]~]i+ZfJNnB7OHW!CG<;TiD+ly'\0oJr Iss^rI]  d>#7dg2r;:šӪw-ӝL, TN|P7Ђ7`&um݃.37!s[1ACvD<xeп!$c[ٯ!by)@9e5)׷^0ZLuXq]2ٙ & @s/yN;Os<֣/aI,^ FR!i+n:ɅN6q{${HT@PsW6*MjA2ɮӺ#L'O 4Bk fl؋8V8@OQbpUm IfEKl0H6v"8p ]Փc@l54|A!ֵVenoGNޝͬE@J>HQqL )1I4(R! _uZFz#|dGD|AB=pi>d`s Aw}?OxP_g{vtv(*0(*#|Qŗ%8,(L$_v0l3?hP ppѐ܉US0%e, kl\~NBVU`,5 7f֓K |[Q/ x&(?;N:d9|s<}xQ\wl A z@\I^]CtŻ5W$9sE<3Msh XS&ly9q;*w+>"JLW)sF,3dJ&h|ucgN;RlFbXv#3:Մy8̣6]0ge=.nap(Y#R;Zl&jhAT2'\2K#K*F E~Oh2m0o[u\D՝҃'EQ2h^ dm:pTi#C5߇MndU@ S$F8+yg/q[ %SJ$Ow*pF]<ÀSԝg/PqF6/GCjnxnƥ':" #jfE'C]5;A-գS73$LrO_QDt o B\=ݘĩ 님ՕoV$OVސ hBAxtGrHc^ȟhJByXzs8:zPZ^xaxtX?yL@VdShW:Y9ORᛔ x-z$A1T:R5b*4kprn}=Of6g9SIbek5S+澩3ݙ=+pn24vwl@<€\797㐎do"d `5C/'&%F8O/O?`d'jIv#5J`U熚v.ǔh%_ؽS,2"&Z7t;=_\@9a@:C8V=,nI1dRTd<&8= eҍ#O_EJpP*oCnxۇr(vㄵ սF[s(1 %oqdPc5gGpR;ve>Em;'D ^I살:hfG)ldJx[DRnȀD~g>c7H:!1]>:២P9BYL%%$0p͙ܵCQ&WTІzoŇϳ.-~6EUiwEѢo$`ק^, 9i hT1*B uª WB(J IoU']nȝG7şJY" $Ըѱ (ѫ037(<~=tݖ*?"lʝ7GAD@*^g4cݐ8% N>iizcRF S⣥\9Py[KA24Y$ 47 oGPM$Ԩlܧ$~[9LeJ1fO= Af5c%sʻ{]$ O0 =ŐUmt Ȫg${G?kusZYۺk>NO %A4DGYn.?\ڔ\BPw?XpZ}Ɉƀ(\\_޿,/_ej>C~RA+SZ9/'&@AVx*Jqwjqo=VΚ ODXEN~ڤHљg/?hR Sᰶ{L}KmBg3`@hܿ |7ypAR;I8pmm7v/ tHQ_o`[,"Fx[nso薙00 m?1}`/65[[e}Τ/X ‘mt/|[2 =J8seHܠ1qP]ɽE#޷퓤15!ӛLc㡒҃6:h0x4M HWݭ6u{.Vs\lt]9}]Vl^vzV¶;30h|g˝P'c;Qil4w4xWozj|8s>}(ts"K;C&Om2^5P$:ɗ*|. ËĬD0kb'|P>VU!K3^p5 O CGM3hOSݙ$lՄlPVMHw0?j1Oa.K9?fQu67F"r Ϩ^{x]u F?kY'BBϩψu|:"%m?`}sZ`Jlt y<+x@{ BԠeEfz }[TrK4,R0VVoSɝj)=쪸]`4g"X*܈H } 4H$xXKCnctC*7Qoůge~E,s和aVȕ(7v-qO~S$?-cZ#.pW$ &Hw}9 YG.ʉ``؋ŏ"lG[2fH(SIA9Cia+Yu1nv<5/|!l)  " ZqJ4Dl_wq%^HZ(':eVr~0lu31JжR<Èl~k 0c .#b+NяԅQ; 7eLBs B[lBsܪ[\GoB\z1cL¡=-@[lԥ.^|_Ļ2_μoЃ+l¬?5u rg ֚UDAKQ~ g>x$Ld|o\X] ѿя$ͫA{С{\߹ xAʼn.’pGpQ{_8<(CQvWvtKM=lQ&d$WlQVi欜9|ֿ&ѠC{Vu6T1见3cc]h\֍ ڴu2v}vF`Ȯ*8CG2˗Y]}F5tu$ n'H M¾jDeGT%VّqEr!vĝkf MX+|YC;T-hmkBK$o cz6Et&siF"dKlfA*ϺIa@ҝ` {y (yLוaG- 7f>U.k}㊣_k)sX#;&F\4N I"cq=QP_&b/LNx7։ٽ1Ya_4[Z&:U.kviXjB ϊɳ_pV&? ,[*ןg߱P8bw!Or $" ;bg<+q@f6֝XN60{9=,Nש6s+I^gl6/+_O+V5~ġ܅_Lտ\Oo]po$㎋3;z%ŗxyF5-sHb X}o39YN!$7Dm/Y:26y[JnBmy·zan:;ZL2P001W &*%"&8+Md Qxڈ~:(0,c&9PW{ςU0ͱ6'nk߇$L|y{cKm \!@d1K'kf}Nn+7R]^rxn "Cٯ4WQ@BN {W; ߱Og7g3;ZF#c[Kdso?6ՙSe_jiN=_.t܄TRkZR26[2猑%4d)nۗy ;'MtA5W|%(ՓH&$6;w ֺSr ǔ#=*~)ǐa&, 1ߩT-AޙFI4˕\Ҵӂ%~VDNR捨XZBlC, ^/s]IYOX&S|H:n*- |oMz&S$m2ΰf|fIΝ6AuaJ[09|I?#]pr [wVu[Ygb†x;3Sb',AҚ_gX!=[ + ^Lq:צmC3 2-H 469CUod  __5GDh$; ]b^ Mp1"HOL֌6Μ> d/~!W${Vn<++N;9cGv!dK#Yzl';P&&1ydwB+98"x4Ę&TR0NYi'3 b :O-(T#g07D˜yϢ]fSF [nNVyld7h*>ݜwp[:ɋ˕F-K ɕZGfhΞ бuh M^ n)XJ4}w]1كÀģ=@n 6|Ħ?sʏjH*/Y-̳KLdXnw(1S!둕IR*Q?R;3KjV(L츁 Gs v{^ n]Ie&_s/#yܙ(&`EnvaZo?+zMk?y0fyW X7)6[YM7TFT;7J?a(\QPn Z|/HI/ymLHL Y_}:;(Q|73;_g+Ȳj Q&qpX Uj >ؿhӢ~i/M CdRTV}EtDw \l $m)g@.?=0+/^GN;GՁ_j,ca41P)zһsmD1FP"#%rOGhɼ,@ dtvnC.F_?53$sz.'+_[=JQ̍@?Q*p"QKj^0[T7 NɎ~s̃mD_Mx")& ja;0{Oͣxw-;?6yߺ*(%e! ~Ƅ)g8, fO?W%*T ua1b|2#!U gnmB#Pmz;ef4RFfk@H  ڬaj_e \~,]ÅQj(js@?#j F{@i5tyyp,F2+#7/k4q)~kGάe)+AVGjƇc6\HO"''"o#?^x?I6˖j$Ʈ,`v#MXJ<]l#!ضwTg\*tݶBD>ۥؑ/h n)OI|DŠud5 AZ6xjՑm( '5nAQ5Zv"8t0ypTZ7~X07_O+d{ X!oZtO8NMQ7Ţ 㥒r*Gϡ[VMDU'~Ng^Z,wa7J*hХWuy! AY9~8x5R:&Uee'o9rK[jo~+CջS'm iiە,,87җRͨ1dxYW!AaK+A[c VHu<[ͳuoьɨ}_2QFoK^u[1AEKn]hQ[KZaTGL VUH{ oBg2Ju'@Pa" 9?}ށ ^YN@Ʈk.'QϳP]sܮs л~LB@Sf@ʽîx|*F=+SQY0嫲#1])qf39ێvfBڷe(3,OߑW)`GSa :ˈgm(qtS@NZmE-]/HG۫uCHoo (}7tZIQsy^Ur!-\ka3V3-3|K&cd9q1Ҋi ڛMpsQCطD {d";?n(Ky@*w8iTT+3Bit7\4m0@爫=?Zgūm Q}5̙D4#;ld?'ڃ^|,e`÷~ME4&Yo\߃/J8@SOBq_񭬇> H)Pb1B_ vÜ'\FYmr'l$͍oђ a8X CTrrkPRqaȴ}6ڤ9y`k1Zq]wn9GDP.祹캃c10SH$q?Ё|tی`s< H@ Xh8֕ȓ81WA YR~eC"d^ )a ;!zGg5d'o*0 (؋*l $'?G/t4{,F(n5|sY`Wm 5t\?ϝ`RS_(0`\g( Ɩ${jn]1XE_uoSߐ|ŕf+hFKs%AHcrZVn>.ʔF'Xw&˨)!7zAAu!{ǖo 2Ϡ֨7PM1~EpOl\얳r@=io p3S>]TKMԚhqfs4/CO ryD3T%+R鷶w&xtcSn=%* ̳w9wr HLvIDY$ؒW6"[Xbn#'.dr&^RqJ{vt?-[յ2&U<ڿÌLYz[/qs Hax*v}UDV'W 鎌RO<)0dX!X,.J ,>2k ,.#!g)'%f% 16;!ͱFÇ\EbBp5.hB92a慊[|@WLF Bo$2>SsUf=i5d_q\@x5B3!EZEQKG+SNXTAGztZFFHB1i6K̪b1|.3RBQ X ,p/1P#CVqٸTFp׎n "M|_H4LC(˭9]}L|W>|$?͙i>A@r\c'ZnKsKS/;u{Uv#5Og K/:4VC12"xg'MdXOdɓ  @!SWqZ5Z#׼`3! ݲ~_ &zS>T'TVEqמ󷧿 AMacgc*SsT`!!ƅvɣ2Ұyd(Z9HE [ @/Hu0 92yb \ GֽPPr!NHⶀ9s'tznfkn5 m?; .P#ԧֲ#Рn ܏qYBYz3T8fKՒcO2xp0Al7o :[Ӝ.EW˅]m.cu^C}d@IN iV[W.c0w#5wElCBa ^?nW-=-Y"f9~A7Rxt8idAZZ"d}i_nMfk+2WpLpVz,[~L]ΜaVM!=4 +g5'"jpGG*kgy05Z!'?-/U*\ZIu88iN\H%/\e|$S'wh؄\1Z5 614Hq!S UU-@Ң ne63+3 K`}a{~p,B m2 Ӆ\K20F]D0F$FvlU5~| {`p~3ыQ zXs-*!bT`y賟LKmԋhgxX~cZ1Q 4˷6/Aq>D.d'VC7EG7hJ4 ܭț4纝n(~lK\M8ӆy*Uj6o>2rW6LB_ʬ7^qޭpWY F&6UgP0Fj B$DSE3:Ju\6؟|q0>RES^()$=f}™ 'j(O%ya͵.SEX $1 FJ2ֆ9HF9KQڧsA]EӚ{1 %Զue6U- Ce !-V&8JK)t8 hmkfѷOaƷ']M/|RWVO%MJD WV5O8Z$`mJA 5mZkTЛ5Hﮏ^Mz8©{ 4[s?nWJ5H)`F dK4d 攝=Bqߗ7FWeΦiOܸZNpgE5uu10QܵTZ0v )"~Y׷֥8='7v/몀y(7fT]1@C bc#nERKm4).$`p u9=gx7m+9A0]8By7|,&;^k5 V ,XkʹVO0*EPqPZa޼˙sv;Gyk[XkAmYƝj1n8cސ*VE^+0+@PhJS_9LR8yRc z'x'>~J< _9u5k%7 "QkMA}^B}-.XO1Ȇn $TI1 {A@S05{ |lٳ$L˙lrDȼ_ګ oDem:Apc4(RNg):z՗NI]7 Jێ2Vե }^ͨ/ .J NJe̍eOڱl(4p,t׆\Dѝ/ѸBKun;X@XA0W*+WƘN\fͿl},'[+qkN7%*!mԎQƍF?hX /_:[ȌiX_^Ń&ЙaFWhCUr9`-"TI+eo^=f{~SlВTFcdW_GKՍ4\>BK:l= RsSशwŇ37{&}y?#[^Š:erw.i6Oz;9d%LL2W+ 56hs _E??KP_Bc(î_~{}`E䎄E\;KM'd ھӵIj\oawF!%-BRxb|O73uX,Tm=qJ4G;,v@"rf5?^Ä_K$e3~ W{?a7+D&ZQ>ͲNƐJ:9֫="P L>kit⏒2b!/HDNZHlFfdF.#!{/h);Fy%*yI,CYJ~l ٠'8mѸsݥ{uѽnf[G]0^|qv#Rg_[s Ru;CW^C_%l$Cs)QuNtT\MqIJG ?hQs_{Τ/J=]F'IU *'K.t)ҖO L$e([U6TH_q@L^@sϝL>( &H(Li t׆ET[$4,%Zsϡl=Pf?pngl"MdH=k2VqmO;q[= /,Lww%wMX3X/D?NͼX0Rc $#율#:I Gޔɚ{ҥR]0OVnO1S~Sp;aux\ۄw EmdqAz[?05VBՊ-9;F`Z9k5kt!lӢAݲ[(|L;tIηg\ K$StPǖ'υWW+VAŴ]6xm-ŷtᅕb ` .Q⢼ϳHs%vm2!H#&tFÆ{ЪC1f{lXԱkoZCɟ M;e?G Vp ]m+YDe8D,&w+w-Ov̈`YjSm yLLver6"KH>TÆhL9d ' 9Jw89Cc%-ȹl' N0C*t*VxyuNqr^ M _D n^#~0bLe!p?Sz,l>dM܇2at%sf V&FúXA4&OV#Oe}B|yޥl]Y2U/v0jȣ+4:c!PBK iP~z;G%cipXX*i>9+? f)yH^P+ 0bnEm>.eoEt TSE HQأSG3٫J;e$s\#j2F w>@y]o:ZtIO*lr*{0h{H0q<]5d D϶= ?>с ~*g_fs^ՙ! ;AC(iֵk ׫sϮ"Ÿ0s[$:ݔր=7Yʮ|Ɏ ExE|% zFʙO*?Gw ʦvjb3A#`8$xY ͅٮKb0䋃)d 7*7&_*ىqz|MA'A ~[Ce>g2`"#3@h\rnA r )5O'D!VZ3:PUx?ڨx8p' :&Zm5onR}ػ9Yx*ܾ:mjxY|QDUNOźo(yDKZxKz#X]dܥPC֭7! }[ռ@%Wfh. Hd!Vp}v~JRfF Un}/Ql pYZ80* i7ۚɃк@3T,&҉q ፾'F^>hj^Y0wz%֏_kڀ& -),]W}V]A/88ݮ-mr7]oe?\﹒é!ZUzF&xq'mk]j Roر6%-ix )-I=Z.G.>AY|Y7Wg09LTn,3@^Irq>}Cix?$`tAFky_g GN_&xbsN|voԠ5-;Gm*''BlÏw֫e7DfkV'ʏ[dSzr=^cvod]XJ( TJiy|Vj-Տ|饡xH}c8|vj},{;}tw]@qz Ւ06jq# Q)؝# dQSQzi 6^NR[ħ(液gU3"yjIT^'5sxX$ŎE@RƆ* a+sV->DP0<c#6GǘCaɐ.Ϩv[LVO,e; \)#e$iGRKylt:3:m(v\*h[8 Y8Ҽ),CT̓@׌ JDp.Y19 8O|R_?Womf$NP.˛$Z[H_l0B9r)_U L!×Vu'(MFGT̯r*x@ > }Exx;rӾI+KrH*cМ.pErMԲ LQܨu2ųUD0?nys[* GrڟseY39HOu b) R#=+ֽ0Η]}f:58- %4eD/r<|єA+[Xs"cW<ᆩ r]'@tQtE 2q/f}M֝$H>f:G4/u=bo8s\TkK]P09N7M!5 ף\EX=I-HX?>6;6h0w) mum c1aJGEГ:~$QyPW" {*/XɄ{^)d׉(z+. D.0USLC}w_ z^vB3Nڣc`YwTz M o &v>}-{bk6<^NggPUgn$hm!_B#ٹIB@ ޛ[ױ/SMLS k,gk̟t^6j*7q**);ui)BMncAhUی3K'eCF':d %%+L>,46;U0UF/EЇ\^Ӧ\ӂX9Ƞ3>B{f8P,x_"T_ .xN,2dc)_$e})Ʀ`-E^˸R*x=EA~Y8s~(ڷQS_ +}LV0jotP =9BoǭE>=؎|Sq0 SڏGBdQK3iƢ3ҹҁ<2&D{A|i3_y#'WT!50jvBg{8)kP6QfG 4۫Q;Ǣ>cKޞ%[E]9sوhB(jhW @h6Ť']me8^@~c$ \n/J~2m͚!_WL@Cҍ@=XhZɶ+9&(ⲻbW?"Na#uY]i|S ZK-ԭj?*3' ٪00RhP=+|cw9+2שڑJ '%v-b R&G#I4gm QsV$V2@:2S0DJp[96.,Y6/I@%WчZ895x D U[@^A XmĨ&x/GKe}) !y;a鹡1wiB>ПW)#򄶔soB_O:/U7.)w$< X])f+Ⴆh,UFU(VNqx~$fVjDJZV`G]|̚s}"]j=3/5hӒ+6֍*k {޴0P;ƍ [࿩:q@7c>'ą|ْY~Q V:QwȇIj!"]Z؂ڣV֕Nӓ5)6h:^_AV*uЅ9(o% NW} 4"݆_hhljx>[̋L$X+B6E>b^,/"KeԎeOAmu֜H*,lIpzN,}\sHn*Nè0+juq<WB/hmW`0s䢰"HUsԚv,KMLS_LDGunW,C,LM ~ <61Vh:TʑXN+n `*\+`zT_|yDh' BܕIY3boY~xγa l|qɗ~sRXga3dE;e{4z8yaSORlR9 oo)OuH ?,*C4LYZJ1RVܐ/O!X9t?Ax{X1;,6woKfQ 9uqup{iUε"Y35[5c~ 24_DD: [O,~)U dy}ulNH8'.7O^Ko!(+SwdsGqPހNt[Gs#yXFyY(JNjgvհ`-ga9(г&x 5s[$1 Fƌ=4-|b$S|pFm/+Nu/ 0n-%s@ϕr(r.ɕܘ%r]r1iWf,& uOCz^-^wo,ɏڤ6$` TѲdM0#O[xkqp9/L(gj5ܕy#[tKSeWDׇ.XrKxu.W^ND!}Qpϫ {OOsEr*K cC: 8<-!9f]S[`.G'q'0ĢoKM)Q/%D!2aQ&g1$;Y_ k@b*VrO,&p!L5 ֭2"XE<<? RgZی AA"vk'w{(6lmݧ>@6i+uF}PkǝIi%<Аሄ>v'f+O7nO|S?~%VM+50)j%lXCxJ-Wp;hT/=n bkmnͩ/I:'R zJ2g rYf[Ħ>G9" y7h<۷XMɜxlb&}%)R]=/\[DpVJ5pvWJ'hDu`,"P+MBR(\m>'9Ǧ`Wl\f#JGUgDw^|fkĹo7ZJK c:]-?vN#]AFgUm!Vk6 YL0AaR"T˕n;?AAXmoHASlhQ@ְC 6Ng5;Y&T+aKQ58 : s4\8?% ϳ"oj>@)^&/(tUdY\psڻTt΋ZQPg=_ $!ztIpUZ+(ǚeRXn'NeEg~^ 'L}ƌ_M\;\66wQ)\*DBcK<"d[ko]Qbv*+( H^z \R;е4םt˟_)fQ"F$/o87}Eb&t1̏PfᲦ(Z4e ]\ˑ+ג30LG BbItoT-`/b0EDesPlPzIGT|e?Wp OF+ұH Nb|t6.vqhw[bxҤNUIY)Ͳy pJھWHe ݮ5}D Qy?7 Ծw|MYOr@S##E L6=Q4p$#A#ub YJD#RI^7cGLb|'<䂷7paEQ~yl䏩p`x*ӎذYn)PI) `Ҙ\1ϰ~z~Pvɓ!S9e`j GNO=_%;|!WױRZR B7nçѵ(m&WIbW|~uD{DWC}$¬hMvGGM`E 5Ydu#Z8Gs6,2E·vءg&BR}N " ZTWӓ\\zYhW0P*g(<2apû+Ws<h @Iح#4*Ӻ0ߧT!wo]H\x"f;Ҳj: AUy)(^Bcy# ֔bl ڥlAaFq08dt"|Zgn "gd#(rwөFJ&~]iy*z~6OymXgY3lX[{x?eڛ Oo4@ L~e nguZĂJ i  &cU" ֧+Ǵ U#)U4mL(Ȱoi9+yν7D)P4eMqۛء[W&R![()K6z*s3z{s'LtTB#T/(ٺix{a0e3561Z 睲ec~^q$P{K^4- dX`h9Ɍ_fmhůlH%gVww.u z:ƵFW$x1j+w3?ԛj DL x ߣgH2sB!hOdD0QSu&gJɔ&5 "&L#I[N2$6Ŕ3T%ðړXV>^gbilcVo6j"5exõME<,^a>HT @t;uW|?0-w쎋G[Sdx}>EϚcDYMGϑ]g#11D2Hu1.MwBZ?ez+VObeh1˴;"}Pun$=[zT[ic"o)ф; ,B5As: w jp׺BT%eQIF$_,8B2"E#.Ay-HMsL)gWU<0ݠݜ콪澧.w RJ\dOsx]#hٓX)j2l+{2N(%b˻ۨ'Wfo/ÆUcq`#[f0>b~krZc1+k7< d}$B5F^!74r+; a)c`pg9OA8ɨXGHo){d`eꋽMA84Bة]?&M9V$t00.±| R8d$R\uڙS-A m CYRR k|0)QKޢX_oD< @0Omy/ҐV$?#< 4 ԓL )tpk<s^45iT)su7'eΖ;%қ]ŧ'AKwL>kZ7S`O8)Zg_tX@arѬ=܆1ܙp@ǰpF ;YB7ʆ2MCk8OXpgޒƐI66oIr ֶ{?g(Dʣj!y“(zc"V,<ʙ#/'ʊ"NzNOIREd㺘l'/,g U@pu uP]@srMflg|ai8I AXRh{hPKw>4-!B1µcg5/N3,5z,%ff͞DދF@EW Nt49~Y ܵ[xZ_LkӱMp8>:v.vG9EW{/M~e.\ './&tWMS] }9BՐ&Btl3S ʿPXz*= c*%{]ֵi4r,s s.I`*̑ ٷZt:55MrN^qU~j]J"KTD"޾ERXwU/ =WUͤWn;?IX[<b5Cuj{ e$d,Oϵ8/ܵ40-a%Q&:\ ϛXe_}h;б^~; #qE=r} ,rp;s>IZwU- *ի[A 8I8|\$y].aޔAعK_ϡJTϩ+zJaBaK]PȔ.]gnB \Byr OCR9> a0r;bô@vזny-7#z6ki@&@=0If6 Iu tl\ii9``bb=a@1Dy t-F V3"20N4}xH-R+:r& 7mNwv6ÜzB(zބ.ʼe,fiϽă= 5p]`À[[ l_O>Oa" zҷܚz]Y|'Ҏst 'D` MZz{MwDnBrTk`z֮۲vD Ȳiz-#| TM>4ԆUq=aEU,Jg汄~"cw'M|5&SFKu(n_SI7czVwVRSG <&ꇋUʢQP/5y:mڡ MrNۗ^Ϋy̙(cI ]lڂ`d Q`mdE+*2AChEz':&_luD'D,>3舟_6l5Y$}H)i뼀Q((‘ہ-EZ]-& U@2JxWq\@`ߛG=q]%ڔtj7P&ے)>O$H `Y{P;>vIoL$m_Zb D~j_xLyA)VgELc* &ƁՋ9,ԒqHЖxaOEs,7JM0B$e~8?%qMԁZJ}чC_PsXnێv-E? h92Wu5KS4.7jq7P/s:rv\OE?AysVi@&kMWМUr =}ՅQ\{z~=\)1 [Ro=Lm5+RSNsd Bh'a-4 "k5K߾`OZe]~FLzEL4 4C埉_u0K=ߝxL0Fg,KK,[k@gXzͰ7aWj X"$IRؐ+btC-1葃,VPf#|6`Ȇ77V ]A x~\IJU')W8]i|{j, l1`Y5}6uP`LL?z<`Ot\ȚGYueJ "JM-H z*0xiiQ1d2;ېi-xCOfo}dm "&` vf[3%w14RAy.&0ȖQƽV' c[ϿVN.Qhz}\~ {oSCLBQNh~ǐV;Y>φƫ[DZ!XkH҆iUa7jsUZBpWd84UYEAs1f70\|cj4[n<@_"sCP_ -U. ❸X-*8@HT/dU)ayܩkIsCw"kF$Ä9 z DnxԘplqIc*aHDfa(f%^H6 ͅhnM4!Gj\֍KՃ:3~~ftlk( (ճ9㨮%^ /3X0+,SƸ vrYYA&r*=TNy>ы˩x67@A|zBB7\&M^M Qz $y5er7(I8&DG)F=y8Mk_拘^QQ ִh`u+s4Ij}Л {RWU C[)ToP7<У9APnk< <[% uuRAK"Dv8Ojzk%W'= [cϋM.,xa7Pl n S.S/u m0s̀)TAx|Q3jg@cfVY.@@wҵ,?%es<pW3\NCՄꄅ ()Lz_~Ew%ǹk5 5*`\6 RdDx?A; q`j6 ֝ꈻ,ӿMIeMf&-?k׿YgyXIԆNQԦk)D訓(mn/4~|r]׆'re'0d'f׬WictXa-\qwu4|%}C<c[F0PƳDy2ٜ\FlC2r_D9*}Ÿ8εijJRb2RBgC+pL!i~kT[!W1_NT9-ҽ<oạ[uiku?R_TXs%@#|ڠD~ P 4d\2K.gk;~ dW֙oބ=qhl.S1RuՁiЎ9SB[>9_ Zf{* wqop0Q*G5`7 \ok`0"..# ;8VJ+`3GPأ:дeٸfVd ǟfqm6>v~*d c&{(-Of Y=!hv<&\+KZxKC-킌`L@W]73k/tD -IP@πk 5H3'B|!}fLӳ4z+҈ŰN!Mdyd#X(v9P.,;=>O1M qI=ջ>_|8w "4Uvd)翅׾UO+Ğ/=w$<6M-6b (LG{[!Hin$Eus[nh"n{ƨ*;mi[S2TOiXS+%Kb/d+ R>i48돓`hpH0)|x J)~y{D h^BHWFU@#hҊ7{ :s14[OVYCFXrXo^}^"ܓN:3eH4 2Umʼ(W:o;h})$H gU7ρYh_>DP0 J-Q4sɵVcnh"Xm\}\#hMnA܀ts-rjFC8ĴRU']'[:ɾ)s1c`kQ iM3AwKS.qZj ?]-0ne MQ3bwHw-'̱Em@?$ ̓6`3޺ɚ Fh ?\$O/44Zxr*a [,%^r OfF Sv Nc)Lbƀ\T5;7#$8Ի=MD`\K'C^Z J"~a/&~ nLϟQ/5v$ɋ-Z]RF4Ym 2a%f'2Q3~3޾cl=r'Q VGN}~z+#^dWT'2m1q /Wo 6ާ%ޤ踅`~4eA;2ܦZᓛo(ElK pO߬ c} .xܘ m0D}nTAkAe ?p9cW8 o#M$/4nbآ7;>BٳEVh{S"9S೹/c6GH}q@Af#Ui:snc0qFl>5 F^Hx i#/!n?N4 a6졟0^ڳzgr=Y.}JVWh9> P}E6/[@,7?x =r[m|I?᣻yҢ2 V=Km>%ZxfR)D4P$vrR:JeNZuɻĮV@YuJD"і]ܗ  )&-Jlk9ՄqO-/`arqeƢ)XakZ߆3.uϡ{o M#rY@m%U )"IefX$#7lb HH!H" X*tgbL-)"lXlFXp9̈́ ̶ޡtc{6ԧvfKbZhWHEWr!*B}x{9fhGa2 IߥgDH7[c64U^/)r5 ErnfReN0(Z  XfɄa'% ܁7'L[]K-Tj6c0ӐMY'-O{`q~/H+w<v}2cma#J C}X6KѠzVK.ÜuBn3QߨJ"gmh4``?eo:X殢)~ @bQm|{;1hY- 7Ko{I=&UcD_Lߙ9.օ5v}4_lH/]Jٮ 5m:MYUzg6C0~)[.6؇ ^1>űwN8L ︛+\h1ZdϞU+ ķaoLUHW_d^!=.h'fܾ1qiΐJq~F aE. z eŴC-{#,+ M\ohfh$@!h'Ti qU?wE #"cZAO 1=]sGCn`@V?G4C!o9Yx͉وu)h^SgYf_dGi0tJ].Ԁ=A_DXvݚIWyRU)58l!!vsG}8Hv9%HA:nsCcM^J <$ [o!8cLr̗ .TJ/W,X&)\"Sy v7-ƒ%.ru &€lc*-#r ̙ʸn3s('+1M*! 39ot6;aaߊC bAP6PF1YG;[!9.Z9t% 1gh}{Wo B.Yɴ\ ցPUx"SLsm 4ߞ}薭$b:<A_l!1dRkR$OUA5A/ZsBj*Y:@?'*=)]w<뤓$WM8hJ߿fir}.8ٓԇ9]+cgƬ.V@6,ݶ)Ԍ=`\Xp[DfRYNWIl(F:)cW3 M73+3K\A-)&}hP1vqFAc!~I+tŌl٦e6^SPeO*4±id)iAoPM J#>/Y碜[/:1no]=( gHO."4};N. dU=ݡM] ?uSh}$zvY\< c4=$_:2po<_)=}&Wfo+PˎdƊs4XT T2[iOCnu鍽K~ ;Lj%~mcaUF {ӊZfã:6V R;L暣Inw+|`w$)nSQ窷A(iP}_D/6%rHcMhC=Nu}W횮G%J;c?tp,N뙂'Abڈ-M:  R3P#Di|!t!Ϗoq^gDMG(J_W#A߃GfQz }n}D*\v8u,+:5Dcb$r4/KV]bZL/xSu3>(Ii՟vl'cDqF+mGjNzi~&Df ez$CYaU$^CEQm^SiǨb?,n<;ԓ5R6S/W7h-zX=4<]ZZ e̸鯀.Y|uRb 2.TIk֔ߞ;ܫxvd<|=Z²i#i>BVQO]'JpdTeⵔ%+{]kl#wvR^MrZh7Hm p zWe*Y=T _vɱYبF !`M){ Syͳ3 >za C,6{cB85" "")L(b MBB2L) 01mkߣE$ݠQGVkGuVt'Vɻc&`қghfHl ڭGCB7RadIP&~DZ925mC<&/~xurΰhE^ mI ؅*U#WkUi[ϑ*c %1]t_!;[jfu<HKm.4h>}?.U,ö%]hJo֫ʼn;:ɻdUXo3`-G3P2CJ3໒'UTT.ʛcq[O ׶}nsZVF7Ju ߭_R7%aLxHHx>{} jnHf=㡄P4JqjV!1iqH&FWbX9 7$[*i5.xFCPdd.fo63ҡ89Q=$ ,*uŠ~b/TŕP$zz\,j[+5B?Õbpc@WynYb?Vgo!YyX%Yn+߸Eh()xN324WQk(y[85Ҭr9.HA)][/ V nƬg[?tX ¥eH5M>:]oFK=,,N7 Ŕ\%p 70Cٗ՟\e~eM|;t. ' \iT9EYi+<.$sϳ+?j,ݔ_?dml(!ƒq+E;zOJ0'Џ5U`7cĖw3 F!][$Ӻf_,dǟ`r= yEEض ؀(:89IzAC1 h~=nBf%Mڡ|sӴ~'4nQh|Hդ-U8E4r>IHS",ʐ|&(qtkbewRceoRE~c =x'\`o+3gڽ 2y ,9G%z-%E>lnC=\,%W'7+eZPCo/Ey>NJ-K'dQ8ƯOװ8Z쬰jZ>ohd=G:s]C&E%9о]}rQF@gߛ-](1(UzWx$jȿ(ۊ =5%{SR_Dbс}EF1|(搴䒴Sc/(5aZXgfw54n5MdsV9*T TBu-x}0{nHOb{. O,`kK֫IbR3 !~SF7eA5 {Ԝ@I곏Rs:/QX|Ua{=h*kv,`#e$ e\uvM()4@b)׎TNg#H'3Ȼ<%AxxR< r0ٟ^Z}/TD{0g[Z\ `ItK׃Fܒ7ճy7mE;U U{t>/y^.BY ᅉu85A46:61HSt n8uL~?'C lB(MpTB# N} -,]r`݌d `S BJIѪ'Q:Q9CVE!D4%3POvBRG,YRG@Ƿ?UKn&: Lk)haO(fpdn-9XgENjjƄʷ'.|g,Ȝ0-''''T1FR}=Գs4Q::/ c w6;])9HkwrI|6idPPϪ;QWB ]76ۉ;^,ڝ1+ea*>CS4Gl, 5:VmLRuxC١ ʃ.3%| iA([ύ F3wykz/&qHL͈g8h1 Wa+R2k Y">qy'ܲ!3D9lrַ@Mu |׊)P˱ NmoLhr1^ww?S!i.X89VbtuP_p#.Zwػ]IyJ.^[37\=ؚbBjV, eU|\֖ጃ 'e:E#kwi}q&WՍ[j7b)01bQVNhyO y_gAT&)f%5^'nUI>/pυ~AzBE5rScGLTݐ,Hg<=$HH9U-Jht)9yE*N=O$0 I` E4n~C"߭WhL5]Wm-/ pv &z +4!hVԡǵ^/1*s~/WEj=jҋ R%:l@=+TQAiN/UwtGDeKlf׹{Ć HD&ˤ/T{hgGSpYnuZ%{VoDe-la^ &|tm4Ol}&W}LBzz0\j_oO&<;U5wPԚԛ K}:nUx㽢Ї8oD.'?z*p % Q@),_I%>s,éI;JmHjz*{p8"{_& r1PM/-sWqfXd㔪R1& Hvm3Lg020';< P*哓Vo{UʇQؤ!Byޔq̲.ʱ`Ny:'˟nM4e}k!@|,m|)^?oŪSTh2pPgդ#K|?qOxwZ.Ȣ{8 tEc@Ajb>_l3Z Ի V(I`?HF2 KE^ٰ,COR4.:)!)&}oiN{њ״aBtFE#0`s&$.f"}$2܁nEL$L T[Q7 1Ѧ vΝHS @;@yfRU*3P k ]:Ncaḯ{YJ3kPJ:}[ўNkh0TLX!H*5}!\N0a!1845/E)dիmOiѼ9y>fP$R91vH mҒtaU\=K(q\dSZHq,R3NI>_k&~IGrh1Vr#b}cb)Arsa]2>H'Y"juʮޚGULP& ^ N gq2 KLR'3a]$39uiaDZBP2H8b v9{-gݝh&#=>ȯST(RCX2a[{@h3"0ɏ-8- y,IK2k߼+7ScMCjVR\{O 7^ εeϷE<fNJT|د"|L/\® ~ 20G\q;=֓3(i|$j7ͳ/N &˱9)YzFSLs/.%b0i'jA``!۵lhزaD`&{ oWgTADJH?4bI~*ƃF6 HS1{}+:t@2[eM3uJ,Y^qwXTc,+G7LB_+'QehI ~̕ C?:90 jտ@P݄ j@VP4ZàȞ>UD${.nVGO?ujSFi[BAq<"Yˠ(a }Z0/b͟JGAfZGCJy^#=E+X?%ŊeIM!ͤxߚRu8T8g{e33-ЕN&uABqR/.0aJQ ث$!4~Zf "JئW&lON)W~;Lj,,a; S Yk׸J̣k߀a.톼[;KR'.\,Wlg0 ٔPTiǵh#m0%9&avjw" &2U I%Bn |b#&dB&ĬS:B9a'!kKC` &#W7r|H]4G?{6V`$xվ&wx}8ȃCS^~즃ȧ}{3t@77 H$DEZ *e_ǡsndxzɶzy&?=-t\0D۽8^>c((?>݂b@?[P&h4KV[ݶG83t`X)o̳Xd,$u%G F{$ԪS<1^T:vjeuEéF?6u6q),M_GeZ6ۑHY!e?{ M&v%=(ת7mM7q.pN? $b.߇Ohs 챧F٘žlkP`H*;FnQB襔Sc,5`d(or3|τ!kڹţ坘>R-kw&Dd927ˣtW9UijLwu#,K@8$9$Q#H`:7|PaJxeL>W+2mjC6Hx2vrOBj+xh'!5:2yŗUk`` hau<>hTt2fW'lMf|ڧBoxqXp1B5^ _idžڊ1;oI7oRӜwHDIՅ@>]vw/ǟh(JPxy0 ?PPs~&4-k5u?CuUJRpzWRW0jP -.k#roia=V.zT_v8#T)g86.']w؅ܣ=@\FdAoI qluS:.X|(Z"7'}KD? }ihg(g's,Hi<6Sx*{R7T=/Q58xtPe[͈owi(0蠣X.A4s888FGX|Hhm:En, qBHAQFu?:;<{"[ʱìoW*w}6Ll]k]$wm3et9;ލY#v)SJ&9@b/v,Y:=wdx ٘)؊Q|Șٛ—LuPK-ׅaG\ebۃlP=]&2PDyz6v]Úha9th>aݍÝcWMA(g>K˘yI_uԞrFLJl>Ԩf^::A҉S"+ƑE/2]w)G#&ey``E,V'j.ijq̓oh6FP:w[5Flty%FE6th_^Oz|U ܼAXqW5g5lH9 -.sҹ@f!mnElyVLxJFGf(ɱܣH<|3jwqO̫S[@c+gۋT]*OP"S]YBB-X~[m_)E&bLZLQ,IɵLzlKgF%+`or8vCw:=HQzt*)xeEQX2s>n ;17fjԕ*3!qM=- d!d&Z:V0`#Us Ghp< W4%;.HM]#`RlI!  ;$\PW<["eu_@+˷3b{?aww03?C~W}ًWi(D"_ϣMH .YyL2% E?FYXVJs36h`m(ɒ+(! HGV95a#gY*#<>gLMa f(EĀFXoFf*,P=(<9K4Υ kvH)bS^)$";a!-m9E-IhePVok Y"KttWN;jyfZjv\kaZn=Pˎ׃<ӄ$L݌NB+,#lV?8/vsT0H p R; F*Va"BY0Nќds5%B.> 3g9)HR?'qQcFX"XܑӺR?$%^/LQMdLg"ßlh&!+3%HN'f0J Bm^)բVʫ8t2KrWnN ҎeͫQբPWUMPސĢs=ZN)PQ%&~OFֽV-ɉr8%dl^t`KI`\w6Nق8p!g#,2Vo(]jc9z5,E>جa0.GۏbJC+gԉS۬@B/hإw?ۍ A[9XznX!_+)Ϭs^&p.f?pMϣ=WuB,E -rOQ巳¬rd.k 0;C9:qp\ 1hu Nzߝi| \Jk{)'$G7b P+ey7ge$Q/ʉ?SFy \>Du^FY¯v3߿F 0#$L+_o ?%s\ٴeo7` >\^r>XuTc*8M-T*1b I2dkV )(i TZUꑷedկVBD ~s/KtJ$&NX=>37_ф| $:18a?%FR3"w3pA0ż0测&UulG7i"nڋUnJqr1.Fߧ7(U`q(3Xm?))GZޜQCcTm V#G+J+&i N3h@2ګ@&+hFMOPC1kvso‘iD:3mg’"QFԙPWz`e s)r\n24+TfIz8qBmkRFhSnbxEB_5 .KGl wWdZ[㶝!Wb`~j+GiHKE38*ֻa}_!pt &chsŪU. \bR4>VHV 8ƑF8:WZsuQw(E&[ʗ>ant;?Sg}JVT[ p^LO1p&`xȠ:A(JE~K%P38 ,繸Oq*Th_sZd̯ .r(sɫc3Pm9i4d_XI5ؕ&n/|t>=qum!sƨ(!Y•8qez-AD7_4K*fܓYwjVܥAH &ѯ/ mXP,~R8F`͑KRtdU@4{=Wv 03E{YC27 5Dϋ˛o>9`y}} Gސv_%)}sL)ve"0CyQbv!v{xOOK2gEc i)c)~:9"`8k,Sr] !S3TxWd0Oj_Dʨz2 v?lwvo#H7@aAT6G \oӨIK ;*Lv8Oa3%P4ꊚ셄-5! |]B'CPΒNGa7Qg¶MVlz}ϲh@/nt..<Rި8 t=.CpazU (G|#eM[aZDA3&W*i@x蟡GJ&$'ʁ]qHApm% F]uY>N(S6ON']oa..clYvȆ+HBk37n5&xv4\}D9J Z߭_!5!>\Mљ-|SàܗH&$ʻs3L!x}BzLUy(v^,t}Ʋ|Hʖ1u9}1i5/޴cmje.!w7zrb3#U,P8 (KHq:r`K''XR\G2*9;J{# b#AF9@+7`.Ua3("Yqd n(ԐwD8\GKmߧ׳A녶ɴJ_m(i$RV] +9vI,PV 3H^ tQX!K* \+ wR@#pр%nm(B=ObvQ{AoX~*ېciV>te q~R9fx:WۼP4ƽ9:o<s 毐\w(mr}W:s4(aWM cETRP´ Ly@Ud+1b@sK|j9*hk!/C-cB}i`P**q{IhBOmL[OIQQ/ #MFpb8idG1mloއZn6~T|vQ1T>ƕ#Ud`+p"C&.2l=q'Q J3-2ma6=3qaQ8tmZI^℃YӺ!Ar#Z߮u坨E)¯ Jl+'vx!ݐ#Ve6B417Х_uϦqK!˸yfp&]Jh>agM([iWuVnƊaAŻJu8;\+0]̣',7qv]a-ܿV[: F(9aT6~sn+F;z ˗[4S6϶*I]-XYdr3Ձ~+ 58bN2'UВY۩l;ِ%M (cR,@C"zN9SRV`JmĒPTQx;B^rGP0\^-IL)؆x2L_6Pjqh#Oqu@g=\[IDRﷴއ`WQ֟ɯh C'tSNi?ٻ/󎯪UP"FpZU?f cLr2>ݢsr%[{Yd^o;PK2.z;}@EabՎ!POU*Y/hmĥ!FkiXiY/239q.h߮=6Ù_[%d@u '褦js$ CH\|xKɲ@"@0i=#{P-$&Nm=0gzSs[/b#ŏAs Z#jrF%k#9]1AvN&5.D*8k7,Y3ZE&ls/%ʛ۪Ez 퉨HCغJכѵdk88gwU8%J 8e*r 㰬X;DFj`Ht-'%GuT+4D*iAƮkU4tY|c6`-urt}ň n\nߦPXJ.l9Z@EuQr.c\MP&Q S}q'G8'L6k";]D?}X;&U8C Bud08a݀^ƟȂķ@n(VQy0:ՐeYrȱxPo"ȧf: *'`蕣/s);$Mm:]ʿFݧVq)C,VWȷs>qo 9^"/#MaNT"QicM5_+r2𘠧x'9-c 鶬b ;=(,Krpp5r8Irh_!2Ze I7`a̓.xC5' Ӥ)N?ZomDSPK%Ȋ,XK9T\صΐ1-w#]SB5dd   &31~M6]ry ˤwjc*al ^y-)7iS؟X+4Q@J߂>;[tQ3b ձK(]M?eCz匛+-ȣGLТc5, ugYdD/)^4[46SeL4^W jqV/?3AlM5xir|P_gE顢Gl02p5-Ume{ՙGfOvVmLM :3Sq'8#DkN̈Koäg?cBյDfփ \jkZYѐ.$cg}{E9VO9h5jNGycY)toh-n{Q/C9J R̀L,Hb X L9@D@M)}] BsK,i H|4A jVB$pEн9bвl6eEAlMJ\frm3M̍ Ò57#mۄHcMW_FUEUsbu0{+ScMW <ppdcJ"i^E39Z;e Gf5!)z׭ V_/j;!$NDA8!~@)V׏0Pbt;?OZNl<zcFn'хM,7C& :N ʎ=UK[쳚P*W3na {oH~:H|o"so}y!'B|J0굚=.n2 LMus\`_j8zp?딧!Hb0tx?_|"ֵ@1Y+$ecmqXA^-z3$9T8g]CgXl _E\r YDC6QK6]8W=b)?8m}1E ,QRoޛl.:3}w)Μ*0jx`+@8_"~N]|;8j.,"ΏF!QׁWnO_^D5:T^ٌc$bfODJ'fX9{{3}‘' K [bp*5qh,‡%]TYe%{D}7yg"樸B/~}ex:a gFc+T/:HqNs;Drہr_Yܳzy@+"2xS #zlfƽ|Glro-n\Rп&,h&5>I6TM_AJ]Ā Ǎ޹t.)̊u<~)4q*t4+)=av9߅s;g!{?Au:cs|.ḋWC6 1Z#8:RKrFb;">Z(bm`U[]t:6-i)7y':v޾]K5oKA=#G$p (V}tSwB頰w6H3YokbpVNʃo{P.FrĮX vIG+[ɩu*'r)sIn\ z{Re~bԿ %uw|"п?~Ru6%YwlO׬V׌/#7JחgA#|fN&de N{28`:"U8ê|E qjuN ɏh _f"ZקYɢOdJ3>Ը@p`f4Bݧ |:$ڈ %U3MղRi(UQԡ= ɚ;8V./7yhpXiL" Ö܁ XւogPgwK;9u֋;!0R% ?+ )Vj&0=8L(w(9۟XbȎFߐJU$ɜ&k+|ɕv}^EW7`#mrO H|?E ?/I~_1Z`վI2gZԫUˍDVFvr ݇5佱h/)N)G2է<1`@.v&Tw ";èQ~K;KDQ+%ƬJ */Dk4^k0QeYc{!  ?᎔|^;]X6BAus7;!;̘QğGBJJ޷ 6 Ыjk&}C%0hEki5q#U.fJ0]UxpS=G5q'BD\db.ֽ`x(uZPDj:4`$iؑx :HPppFǷN5By9ԓE+E9z`p%|MKewQ]PڥUJ1np {HOrقD%.K}_gӧ8xGaH˾ysІ1)i6}(nu93WC (]gj6"]QfuX罸3^bڬIIK<oҾ?&$1pB84$䶚9QV(IA]Fp6 Ie[YnX'_s<:_҅}W1S8ӹ dZTť_kNLBu3dَS-Cy7^}M"HF&Ǣ|kb^JL(&u[gU4jlgWfMԉ}cgzGBJy{SFm2#'i B)t2VZc3:+K륲V_P~ 2QM\#a=;dfƊȞi:$V|h|3-k}V}ڨyԿ w_y}Q+y3 R/Ο4_7Ξ>/*z{2'0[ԙ[8tӪǻ(>A'GfvqEBĚF{S TLښ=,:Ob3d]ά|@lTq됨(힍["Ve|Ӏ\?VZm:cAS/ tUӥ2|^fו,_w hIHnFRB!XdgbĂ!j:2f%a\?$FT= ya*p9ŬjA;)pYߍV((|k߃8||_6۷ȹ-c^E`'93{*72}(fM,%,x'EFfne9ՂW·d:Fl S0^`s各-TVýYB(l18v2E U~:QE=uٗNQX-JMnKY5xr8 #l/o%ivߣju+Ds𫷴+i>5D-gѼuH C>lTUh Rszx-Zzehe貿}oVQVߖWs_N#俠k`rެ)LOx P# l;yi01L[#$&3NVB/^i9LFŠBI 07ހLԠ&mȆꉔa @ 3WC kj3NZ>RT&wA4YWxI ML̅32G]X~/W@xFK 3,1;sʿI!h + \4轸;#ג! L gb %(©({u6=# 0LL%r@f~z- ZVuсD)wGiuA Av ޘq}J@3Z*j+#dƋ)亐xF9-:`W]dl!:BۘFTO8˓®? Óח9ZWgE [ ߞ1/*m0e>,Hj5/Bڐv3fs݀Wʟ0e ƵhT;g0 a4"-p%s>0Ɓ"Azc1kQrNs\K6z(_D hCq]kpق 1vé!ZFX?@ym(!QX'nsy'UvSxE{՘`,{cnʯP}9^_dJ_cDz?"iGdCɆlK K!`̹`lEnSo?Ӂ]=adh? NgXW#8?H a{1c3ST8=nዡ, _1Xc&2.ok=!('<Μ )Ev쿉jBZ/3:ȞQX$MvP<om˕5C^N-\uyUd&h@$n4UBi)(b(WyѥPg^0[-黩 ` ܹ+Hւ{żn 㵠< !fi'9 \04d dM.J-azۯ@]]` ohqV 6@=7M(, 1P{y@6{ctޥЕ9-)OW,G2-} 6r#c lTLC hSTl:l}у5b65%}uUt|7u*3|&jXVz^ԯ5 ~o7DeL%9o!][6d\LַX[H:m"LI}7scCSnBfa`V:d bj_(T㱟;f,LWbZ>M)ćA='TߧAm@9M}A^,dA9;YIE A$>:52i/}h_p2aG$NyfJN{9IA+^N:`*XD1WȴdxZV;KCe vue[JNק@2ޔ=I-5t^B`i-ՓtTK'P"vcEh~9Fow.Ny@Sc _w!T " ]t#<_L"B[hK$`݇*᧸ e%'ra:pHO'ސu$qT~p,ns|ut!POgꥬ4P <]j0 F#8n~eaWZ+'cf_h̊foUCE١]-hw]U=3<K˫"E = 퐶ꤲ \ н6O N&{63t?D帣ʰ{\w^pewo]&Ps:#nguMk6D)՞>+ߘ)gn(,i|M;wHkSLp~$$ݿpMR7};~Xj_ 6*]z 0C2Wte!Zlj1I28Iѥf\IKz(Jaқ 9>њ+j"k 磃wK e -O-?5?2˅*m8v>v43( ^+Iovݞyl5m@pI/kמ[~: k∻˴K& fVW0ci yM+u$FMkaRaddۚ4*4n#4q:/Sm|QhcMPsNMc65 5^f-_p ~'C/GRGId'נ2%CJ3Odp1ϥQyANҬsrxelA=6!G-qAF?O·F7$ Str 5r@Wњ:J˘x|L_9#4)g* KaջB?m\A=%8wi߈a)za }9Bԋ *quBmػP/a<[ZY=% k|6=!P||`I&!,}|E  k,2)xӞ?} -KF3٪ m*TJ/8@. MDK֞) _p"5)\;P06󻳃4K*"8* YXVyxoU}"!s(,odn5{Q_\gl wjsIƙbdyƅu$Ӱk"[_( f&L>^W 40QeT,5[6-M5"` L[l])2mu$uoCuX-9S{V -!FFv'/Ӑqv InX)>0]T&orz9+(Ųgԣs7EEDxƓ1Tk5N,U̕Ⲩ8 `/?`|5@I`Z> U4B\ڒ2;?|N47b})G`.iƯf2LKx he9vH$D kS\$jn\q3O츏w5)Yb*2=w<07m%PF@aFsaQ5h/[@3d3>w 7jtO 0"9ɓe R6|k¯1mC i ΰS j`n:}ۋ-{=5XahgjP숉AKɝ+N @"qlͼ& _Ζ+5bgU\#FgҪg eUk"w گK֌3@D ,K%J۵"#gcIe}`D[X>f>J5`|Xĉt@Y싓ZPK`p-P٠]/w dE;^GOAEzms0ypQ$;$!ߑg?A)sl.N86̒o&paem3^FoB~xDQbNP eXܴT659!$^IRJT/Λ9#gC9Ä,{8dpAZ&soمM[>X>*ާ '|9J mY>SeX$B nT0V"]jP"TI;1GLX/ZkfoHIPXՓxz9%|yBTMi\cuLq*=SKM:?OG8z0qk D.A)Q#'Fl Ѩ$m(L2HjGƷkf5kL2O(/ݏ=ibS sހ'//oQYSKBHgK()dx@)y[mk}Ng~b~Sut9Y0x),#6]+ ╿zjb_EB. V~vA 7f re{|X̰BMa~ȃ9f{Gdrwj)xg0^`̀ȡI&8jV֪?mS~[N- J%0vWÈ@]Bo5l'@j$#mz2c ǿZi >\)pE RI<o4kq/M'x-܅:o@#1Tq9:-%=usz{n0~R6W&ږo,*w[O LtYMv,$O[8ТXqZd~Ru3i冀=B8sH,\.2 gusҼgŠŷ++#Ok29q GBGSZwqNL\HGJ/F{h5] w" (D9!I3בL9A~QIhJ@W 7ݻwT!"IK@vs |r8rh"e֮*M։O%n[/] HOyZɛżmV2r[DUɝuJW_GjQ;4loCPNSmq$, &х3,Ы=] zW1 Cەwc?+a+29B=̞6EfP6elf홵~n ~pBeq_-nxy%S/WbU;~,4U`SxDL->jd0毊˨p@GWzE&7ZoH8| jvi<flUzd3)"0nXN^ hUEZ!c–N8r\3Q> aa5QC렊T=3UޘORO< 巙[9Y #hOICOHa3"TP_3"LV~Gԕ+ SZ3-oJ6 F1z\iH+)"7D}9P6j ZaXjwtlJ>`jQez9׬:#v,ѻܹAe繛aZg>uvJi@>laٖF=EhR&@L4k|;G^D%3u~ {< ^fT٥~'*V*?~j•y=5 ;z#< lϭZp7 `mp*љ` .[Ik"Gt:CH&MR4iI$^/^şNBWɁD;hko8>6*U߫SO#%ZGԌp0G=M]+g@XyZ: U/H-^]Zڛ"6| i5 /ɘ'퐆;TCQAg+_ C8Dphv?˙8oejpHX~%Y9~*d:u׊3ԩHb4;$2(zAh"tN8wAXMT)W'pL$ dDz e׽ O45ii}Ǫ+>rŗ/U>5s q58G8 c5((Ri;'*Ѥe4E# 㻞#x GvAo># #Br%)- t @H_q<ЋFNѱ({7MmbX7̊eUvlw/|+WhEW˔d,C9m9zUObhv截5=_wf6w) Bcx̃ , sT6BkJ]>Z'Y):8j1U{7aV:  p 2XX2zc=~, \QkU)N|چ gP}s%Cjq΀cg׺ % &8,ow;Z_!ƘSe}"WC2Twv."iوSkC79M-F#XF@I BHJ=zx%YB$hJ߫E2X|> va"?vQv&AhW {Tfb|dPw8I9$v܅azUXqݷMeWz&ПhCshr|J=]?[L%(Ri &9ec(oARyA%pW/8IV'TL 3&u%_9vIASj v`TZiD4< Df+} {LY#ZC\A~^YMkӇ|]CX@1AP (P(*qlutĝYgҏ*iTngr6>' Y޲k?sMĩQqhBu#h83+"E7ar \6,j^]+fIad>d SꟺtPq4^Ϧ{=]H=pmdq*['t}/ٌωЈƫpAz%K5S$ϟrׯjlcؽ=aaƟS#ߏk@OY;2 "\:5x2&Fc䶚rְءt)e-<_n(*-ڬ-%+F4i37'+:qQÔ5!>B|;}>1_,Ϛw"J~"<¦mE XoE a^g|KѤm|7:Kd?0D @B5X]MRyI,F33$ OA8_j͔E3Pd+|[}u,gNm+ڦc6:wcU~awG:|V'[M\'ȟ^5(%7 !Ĕ4sڲ.Ze!u)A.=**AC »QS[Ѝ>1 vn{8I4 s.=GG}U稿R?!;zA_<;z6|jx"bo롥59%N ݋P`)s[*ݕ6H+\NkAX'Ɉ 2fI˅%{2}& ;˕khO g'vns 9$~ʹbR-`p7턂®R@tPF9LrYgNh( > dMPfZ.j^wc)$KY]F=8NhhxU8 ][_c&NGH L%{'MF \SBn(,\`N-{A߫_ a(-S@-~yc1pޑ%S % pCe $(-pՏY\Jnb/g!oqg"(-*Tybt`5֦JZkvbzxڌd]&WDV¨-pKvab\/[af5z I:E.]wsbLO$WgReO`LQ p)׉Udʽn*j 4LHKc@^LdSBd ,qi۔ʊvS9'`w"h۠IPSQT*Yȩ5{ۮj} ?U:IZW3DrHߙZRLF3ܑx.1<7QBG}/gOU?Rd& -+PHO[ nfUTMT^u^>)][aU6XTyIO`]gҠ.Z(Iӂz^ rmD]^+`|xB (W3-\Hx Jk(SRc:| J@G-jRʝK`M=oѳPL/EY+8Qh<|X(. pşvӥҎA݂b7U0} Ԁ\HujBb!BI%޷-[_AXP{pݢק ?Ahyj 1 w FtEKd4+P95iiR ނ^ߣbINY|h!w&[C%25`?M0g;[KC;mA[-YC[ERk*OU^RўnxϓN|!dOƼ(zy_xkDi9]G}ɧE-u݋8?J"~)Ŗ2wQnwY;=N5[.k -v8$1{{MgTc?"g7S\\ϤO 2>(i$~2+PU+xo!c֐Q78spx2˄2].wݛ4yzqU렔ldD(1jBj<:(S-I.!Ya2_ sN|P(\(o$]f9z|8ag;6 jxxd]hгoNI"k۠Bwf5˔/nZx~ Tqi[cy_|vyFQ hh'$Ӟ>66)hfJ'MT-LKI6T%Ӏ`]BTIj?ocJuGa@* + 49s ;- Uf^+^hd1(ʰο|Zm)+y ֠;`qA<3=䍌.gj'fڼsR<) yي5asFm[[0 ";ь#&6:cyu7o.YE| A C/SY#kJՌw3EGGxU\p$*qMQ#fQ$Tv~r֨t̸Bm6smJ]0UsYku i8X t?32iA[s`;7!|\󗇉!@ٜׄkbX, Ţ2WB\֡ v$^1ݡm*5@ u_t;{e6/;ᔈsp{((&w~F"W^w<~Zn.Q$2 S>>*b}.V|!Ԓ5ɏh!6X8%,:E'z>p^_*Vpt2;"0diS9V8 ,؟14pL ;n^tP Hx(}MX|])q2 `xٚE3ka~d.wM*cp?,aķiyOL Ϲ8o1vU@;#'*ȧR{RnXG 1 &g,:X[ mt b!Ca@z[Xyf&ǂܰ C Kǎ>poT !^ )y~Fߚbh cȇⵦy? ADpzajk?~rc+'zc3̊lҧa:o꞉qu !F~~JnJˏ&F'7Frxm7k/нHmK[?%gjVy%^|ߤ!l(OAjC-׍@Z/n=T58r8^d >\7A``Vg::EuS1@ J^qDny% Vh8RCVb﹉ʨ63Z,F[EslAEdn6r,g).v5EBm\}!>hs!6Ii-yg-5n,h^ Lm0Dxռ6)9§sƒ@OrJ7DMi'6|\iEJ}0X7$!бqKsO*;gBZ. N9HBHQ01 gG^ss).)!B +f0BCgN V,QVJ4R}Ji0 Ie2,m\Ux!ҽ׷(9Y1 =S8b(@ˏRΈiߧ-Ipe݅!p, q+ -/mpY|uA#S55 ]QdF/N(yOތ&P6zui+q&NEzӇk3KX*u1D}vE*"jiK%KidDDŽ2CyEد(ܫ]FWj/!ݾ^!J2oΜɴm"frވrcb& g焚O„ӵNVyxu֔;Q{lޮ AHkb*Z/Ԛ-R*%%w]|Ǡ$@ۄEfo*h99ۅ (ӣ{s A֗lsP4L`o+S^Fw:үUJOr'Һq5 D2TzET)]u5=H1$ȍ,B n([CI1CH=}4x?y6>]X4ҤH7==yM<&c)yQ 4\_֨n^ x;[٥dl+dFݢ!twF6#ԱSK?m.ɕGIfE 0?]J%HN^KQsQt(. B6T .{S㊂r@Nx\-;~8ux́?r~4!&v~?37|>m4AE.MR&ƪ̤ɉzdr?x$;O#@GJ\EA1_V:c= +<Uóm9_!qR4¸Ծ߳g)mwgP&DxV.x,a#_+Dc`@ !a>S'+0b)EJ~Q&4s> a=8 IEt5=PԒy1@%s8h.n 4+Hi"g^G^s@vsX goz sSCyV@=RB𡬀2ۤ; vx"ʙ\}l珂{w9}ocjz[C=|Kbx()ܚnrx\Tkbpv૭?a;>|$'x_/LzQd >|a*}1PJ00v궗ٶ}{I7Tqo? qpN 90ZY~Q:YJxf0;J Q WaUm.N, ՄoUg(.* NfҪWL$\WyF@J@]-מ|RDl̬ؓ|-g)OQ F$$UeL?FXfaA[y>r8ML\R0Q=p|;T"W/l m`>Hm<:;k Cl,g+ z-8"ɂV `)+X@oDL% WO6"u2/+ކAJmEi=RZ ׻ {ѠAOWj& leHHl.}g&.?i.S 9=_4]8v쒕fQloE[KR=xAb%LV#ej+h`RnQg%y3є|]! hʨ\z/sx!S $H 鲂60-i?Om8:[) ֐LɵW9GO /by1Tva׿aV>hLGWG$+b Ƕ.Bz*xE\ LƕSIAqR<؍!Y X\ Xein j}lx}ټA_pT!a.ǐZȏmgI"QE![4Bu rĭt_9Es:! O١-*84k?}q@ɸ{IĘ̙N7WklEzW됡yпU &^ 9qr}[R 44F|=<ׇk|= ./p.mq5Jo_,uf}um;s_BRք}˭9z%ѯ>uRcu&Cjy(3YdJAwxR9梚w) z?]EmܫZM~^!D}RXv\ #Yf G'T@6Hwݑ&KHzѓOʞQ6^+8_1ur2Ds_)֞#il;l!9W(TC7L3h/ۺL8,3f˴$j?j0G2Bi\4.h&J[;ʿnkD`J7A{FKOPw$9[HkNGυM],P[a;SyQts"1Ak'UϨjG<ȑS[獇>XLE~);~ J{ kyv4Ě\J>0{=T^j#f 5½ӫ-Es$N`줴aP!y"(|He@OoWamK ߭X F%?oE(u4rE&-.KoXܲ_d@0Qv2]WmxPveTS254_VCz |oMlS:*CM:j>'dRv~Y|=%7B} \. 8wo)5U1s<1<.Buy ;#d@6\$Cl9ک X{.rr$ o:cX,L1Vic̏sa_ ?\-m|kHP~14Fg=ت"_sq'Scv&;bv+0(TLpZHj6:ӭFˆFu/4#f})4%k-[RU16]X9`t_EAR1uI3+ƞΗeT1Dmd4ƢIUNEcSٛ -pJciW Kєmf|MP[ q 7ӬBasnKLmr1Zɑg7NJE/:LdS* hqpm8J)%0>ˬtPp<~12!'$Z89 ,8 VVX60Xvff[,De)Xw +we]$פ|NrjUkj.⼥,뤆>94eCmGRy [zAO԰"i4=*JRم齴ǍE~&5+S, sU_`82``| {]րE[׈v5{_>h*JQ0mއi3Py\;YnA2NROT)g\ٹ)vX_VY8gUl!V:92'`}hdiS:G@甾z򼌩sیWqjb=yw4YDڞ@ ;v}pi}E铔*glQ4S͑[EA_ sx+~{&+[KC_V%`7=Cj#bFOmxWYJbQ;ifSo3(  _ԅrKr024B'\xva;73j#| '5Y6.+.Yz3oCDIΝ(o[sl^joV-llM {L7e0GcdYkM<b#^C<]7#j-,dڧ>EY/ 5P]7;n3<]D]:Vt??/OnT1GaVjTސڱ -$,)ݘttew{3Q2lK}Քy mY~fanYI? 7J^t97~d#Z͵Daٖٶ'~^o!$!5FUM6K(iX9|*h7{K}*dpY!N`#Q}ӕ#ӝhc) ͰQLpj-Ea]*S@σضϵ癕h}Yt)[C, 9~yg: gppg{sMd#c5k̈4YM#f +.gUl# T_'/xJ=0ׄV8uحΏ(R>`nhg Hq"cBt3yӜ P.ãVJ8aK$ubS%WAYW Svz`EVNj>/2N)8'DhTueMl L5B O?dM׿&z 3i+VH=Y'/KH7I7r5}'IX|[E~O=[qr[Ѫ7-Oƞ3$1:Z'5F&eR hjljbU/&h1H8FJ6-s_T뾲.cz.+ritج#pB:}C_ӨybuzDg>%X{D0Hj{ ZPgs6zn Yy})jb@vLlf{1b+!CpbB7oQԫy ;}.~ߠSNBxJ(C4gnHOs1溞!-ֳzF4Ю7HW]Jzt ݴ˜)rʋiH "w~\wiஂKӗGD'7neT(K p1P ]'ktWfB6 ^S.ܗC ?SSB^[<' I}&* )ѕE\*3xF#GsVLV?d/7NixKԹ!xu 2=f)3P%^R''s}AMAAe{ 5kEYF6p+Hq &!T%-R~F{HVE.Tſ2010<|~{){XVT@,,G(Dby'ɫ/w"HQDnP\Wlc l\hxe%ØKAd:ǭNsN3`~#^ Fcb,ld'h?` SU#TՈ/*M̵'8?kzIxYr3i]^` Gf=77= pXhs D*vGw9[d6ZӍk[|U&,[oK$V YVDk"utf6!Ef'徙} P;ic)="f\5 Qi `S0J1-`Hc!JilDܶaV[YyƯ ۂDٙ!g\ئ!^񋖔X&ow{q W[75)#+ 50;X!v#*)Cirxꋒ%C( `gZ5M?+CB.IN2^6Cl.Dt))jd-ysύL$5i]$~?{ ,Ղu (W%ÃzAA뀦opSKΏȀ^>`NPhŢulIS\CKw>Xɉ*nN`@<*KkV̫&)qtlpm=T,r$wg n"@m?GD[X`%-7J ދ~ucuh6~i+7PC:+L#jguh &!.O*Vyğ.W8aؽm&xsD :J_wJ]ճIGAg&)ɭڨMՔ,UGص_ nC  /UJyܰ'C+ig9|i҉(2zZC|bNM|I=i$V{Q3+zB sSN +TEǖjWteW*\wˤ~G)xM{ePEJףK[Dryq.R(R̭d߁P]_`/uI, ޼*ɬ=6glNSE)tFQIӵюW8Nsi \wƹWy Z&:\0م$a')#qO,tilqX&>M|UrG:snˉYYpI(4q&H7rPMPS# >6c0w|B?t .T|PxA"Vؿ ڎ*ܕhw 1+h \lG6caS`EB[?Z,$fo>V<#G4A^n4L"ϕ&ipm 4F[6F:nӍY1O݃P[%@`/ dAɱ1 ǽYPF+oEu[pAw:vVU2iM(+= `m\i;]$CJ4GH]XE.0 i5[0IP֎"N0< Nn@^3q!6fFXZjx "a>@H9f;P=c"j߁'2K<*Fɟ]ytdL }+oUY4l o9r7Pଗ_{(&o~h΄2 ,ii+0nhϵX"C6st.{B@:j+֫K$FWݝWr>+ۥ]=Y|^>nZlo0n&$򭒡 SRo*vGw/tI :#sQM2.1c"ꍟ}ԩs; ϷHK)>q“I͜ꠗ=fquJsӉh tPFvu:h*,(j]EZ+},7UcJU)iHUA6k:x" 6>hj%0'3V^ϵmn ;x} 6}"Y;# AQH.xM/mr[dc̊~]\jT!L tnJM4ɏ /x_ 5(8xQr^íϚ_)d n=e[^lNa=;: N S2j[y])'9، 9R2 @ڻGH7/Qbn 2?̨9_ x4Cqu38q3|Hʏ Dr䑸XԚ-6 ̄Ww_%EPsC qy{7l\i\R#ReKf DDai\g;Ԁ9BCvfᆖX7 {I_GiC['LWt/-*9t$}FȱКʻNpga|Eyڵ:0 د{|֢f'A| vxLgXuaܗ=v3-7x;ea&B6`'Ve0s$ Q0K >u<Zj~ URn}2^(cV h}~H PΜ!|h3 1R8o@?`>y3ćuHn<r(O_?u/Q-:0CAܹ@Fp >[B&R~dg)gu $Tos.pPsA&G"(6;@PP]m_u,4F JTWi2oZ>-v.#ȕ_!''be|W1TKCUq93. keRc %y |8&Q~0{TAt#2Ro,<$ߗz.Vڇ'JW Sn=j;V> 2%h\o7=-] 2đqx?޽gBjoU|򪪖N"IXH(s (FXXMbv[;F>ptuwyb)Afe6?󒿹pIf[4WIH9CJ?n#qVo2VHeܱ@Xּ=ŅJKsǩd9d~jnib8lKɦFoI!M5~T\ڥ;B~%*C3V'ڽQ]e5?ax*kS >I52Fb qTml-.Dm-bԷkc5 A|~IJ܌<(\F`BO.yFE.Gd=sksms?pMWIk ʇQ8!:a#d`;/PKA':wqJfǽd.FW)5VؓJsNH5H!udP $6?f-COѹ:m3|K}_"ufܧl:v-:ChS/@+\%8e,5+e[r`\S3,gi)1L9r_ $b|C1&n@DPuqkm;OWNrE=YaV;)YyRņS>71kz/6.@*D ƿX4oORub@ȪCȣox1;vF&D ҔT!~g@3׊:Zu5^}V sz?#Og'cp6YhSV.T-M1mӕW j)H赁\ !uٲ'^Qȸ+;<;c9%p yUQ[|𳨶 4ra:s] HVtX +ץiv(ܕu1 7Ab;^C-<tV!g͗n;Ta2fjIBȗkb%h`+D26_7NˆͿ15+/H&Z^{TI<ѡ"P*Bj'L%`\-79GE9XOqga$mzRxMsXҊJ.Kyi܃|ZXW)#N ev4(&)E3;֞@fS- t[RnZAcq_݌9CjKV`5]yK ybJ<}X_H" bЖ9@n5{ƌ᛺\B:lM$Ls\'-ꟛJhS~&ywknJkCJ/O"&Ҧ9 Fܽ;O@+Q ݿ +`?J+ǂ҅ݻtgMUt@\ym=ȁ С+;^?XPlFSiK/&sl0cN{l6 rYgِ:Iw`AMCJ ,P_<Dˑ.iuH#~ D'ʸ( M{P3KдI܅"8rd"ni-v?oH)GfW@#_aRaLU6 hf5kd aQ8~OMHBP&_cA C2(S'pGi^Ŋgp%d#eجh&Fm_@Jwz,nsvki|1KH qqNЀ-hޔCtQϋF6}M9ptZvԡet*KQM}"yN!6-4N*(uF^-àBGh+ >o{tOZ=xϧ,,fPb2`kKNZg#<ޘ MY.;k߾ï%s/ #h[JNnH7h%)D|yOdʐ@adkU"wE;_NM.{ rh);˟Nfii<&by1("3pEdDe#]Y\%!+9VbfR1L2x߹; }R| ^zrε'sJma6 ")/\ՑW/ ѣ;ҀˬfDٹDzb|Ig:Oa>D^ c8oRP"(Cn!8O(7Փ]䌵m@Lt&c/;01zOoo!>:&5G/ `%zG;Xsm/JjfZm|ZޠsVwlM@.2.в[J4܉Ɵ>|&Z0g&[z奚2- #Pg:ռ2.I,0pILWWArD0 1(VSԴ_Q-kuמvYi75J5n5wm&3Õ&ɤm*awHZx~3'9^IF&շׄo(H#@!Wj;MAorn4i(vm)ɰmkUnj>s^Ockܦ+Y3l*1S8s[bBG|[ *[rlwi1]w \z-9PV2=->}uc/943ً+#جtp<~yϴXZ9aGa[2o<ϊA掴EH[d$>?bp]q=ҸDh-T%  _.AŇR w;WJ7h;|AO'kVS-v+@V5x^꤮|DƦbMoD5vBK>}iPBM*^e&e~OV:XnIcDZ\\@׼}"Ilz񹏙T7r֓wd(v}'P)A ID-"a z-filzʒU6|v6m\oUE$+Rh٪o 꺺6YVb =75Άe>#ಃɹ\" vDXAOi1zw观-y*1#Lՠܟcw'JϜ8Y̦6@%q +uҽP$?=>xAi %|ZY\>oy 1P01*և4"0t 2/Yf-^&56f8B _lhYO7_p~)vUU Rrc(,xBWc56ʻk5\)/Q+şE+f6V"(ظfm*cM0n ?X'[JuQ:>gp{T,X }qCt h;e_PR$6}n "l&K;Ju:KZ$asVT,P~b@RÒlBg[* aw_hA=.9'o Z@cCs5m`@HJG1|Q+!#g/cG«uZd ~?ꍦdm7 iLi4(mUz\-kAɖ+nM%U0hۂ \HQ:8vdX`?1.*^_WoNx{ &PuO# +`R[2%4o\=Ci}VCvWgN6Wt.;#;oĞ`YhRhTᐎ,)3\e5,,]ynxMU ?Dvv㢁znYH]4Rl,QbR#F-J6TJƧ`,5 X 1ܙOAha{w?ly&Faє|{蠖>SD4̝b3RO3"!-hRƹI;U^I_0hMT7 HK!%}2X*F%ToΉkVj Z~<[-4>n̲jay"pljf#2Ģy#-a==QX<}CpbRz&/uxʃx͉sc ̓4*}rp9Џ$Nyee,É<,ByVPspݧL))f$a.^Ē)0`̭ i&`PK:?JцO< yK6M c6Dr2ofa02שTԤR)qDkqBkw@+JC0N 'Yrƾs 6Ihh|̯RNFNjJB"s[}e uP|@& Wɭ2^6}h8tXLDU GמiMHR4[bej5*Nq؝2S_(Zĥ_m6)fy^sӼ,|!zځIz >N>ɼ'7?VfNd”9^ k'Z[IM?Xa"[+mv,YGjen |̊0֪)!f$UWu8鍪[}ISP=NTwcx*3g_|w3mR+6-bG={fX92ՅK[A]~Ⱥ xOȫ^|xL5H)~QT5".!; "C5T;G^&HɷyI+lK{R#l5uC3!v{g+&v)@@~Ck)b="g|)PSчX Ϲ妀15d0kB #_CPi24.|&*5[6~6o\|%c??A@.6(GEi7}}$+zL`vTͧ jn;@QGqZ²E@Fi9ĴH.eq~'lhưM FD0{ hXS"T&DQ9gS:1>y@{\5K*xkt:&JWKМdqh C8ƪ)?!i7}pgwǒ:;XvFy z1:oHhuwj\ly)[w!3U ޖmc1̟d|@d%x B&tGJ`-MoJ䫛~zư:Kc;eDoUS$>%87A+<ѐgpں@?9C8"dWp)B[,]#+ט 0\ӆuY YR9 '8B) sNt( BZP~."p7+`l}$P~EULȬ!]̆BHPז^*D,6/'oQܵ<HGzsCQxӮNl JeiXs8C/5PVzD-MѓyEU-y%cҊ?C71[ؐa{Ft$e:tyEc5ur#yj>_,inIN~I t!t1I g"-Qrh-*ipOX,ࠈ($_di}ʭ!PvTe]&Dv :]$Yĭˆ1Q[2[HWHsőTD-T Ic9zҿ&2 g?Cgկ`5džw _Gr\I놳 lG=Ng~'4?Hh9;J劰Q$"_#]OȸzxRXj Nj8w/@H^x3KcTP"%E$5p73Ŕi&)TS|"s6|[::Zq lq1 bs a򔉗ŠiZ6&!"(D5Ѷ&`e;эUK< s*^)`NCQ}s -Ŭwf p" [[XfHԁob}.7R娹sqjx|| Q=\`m9˶a<:h-l6$8pt7q*ߧ]l34KڜPgAW{[DjDѢ}B^\S5n̰.]'fJ)y8чG/Eq58BJb?ץݿxt58&ͥ!vbf\CJ]c9n^opr _{z]Gcfd2wB/RؐC7߆FŠ41# )b {X;#gtZ#hȓ?Q3T+/So}Rc, QSYf&]] 8U}%AJƾ_CAD\[=jTwםRƣ ^m]Tc,WAQN}h;FA"Kjm zҠFEEC2έAbW5l .s"gJֶ@Gӧ!~ᒡK =pu@u-o7$T|\f\"ϟp#F g mv,5)ds͢$o`u>J{!EA3ƺ%OHl oq_x9uYg \Ө5xl]٤J^ʂ>D]$Pu/eT*wrP WjN)v5eYnQ?@Jm"6XwnsIm,gϯaV㺱IudrwޞٹW/gԞ@f8i|S?= 2u:(.l\eKZ]JWAC>}OSp+h%;{i"vYA3z|aGqշY gHe65OM84(0)؉?LVy,,lNzT$cD4)fFj̤@0Z{C2CL[Xw7$*F|w9vG?Zㄵaލ<ôF0df,1p]DEdK{׍4JQ4lB2;4CbAaTbZ/yC34l lT:D]]TXeN3:!dJmLprbʵ)8J;WeSX[0Qmcz.pȱa :C~L=.ܞ&>7XjEP*< kdn WD&ǥ+޿JTg6-gNd`pa( {kF̯ UգkʄTt-sZEd8"C 5O\W6qu97٫zsu:JX_40o=#=eAfZ_9bH*w "H2): Ѐm IٯRu7'Lӻ^;l-*DXxώ櫆fAsF*B6"fR^moɐ! 1_F}!? :Ty@Q̛>>5  Udm12}Y2(O{dO$ 2g ^[ހ Kؿ"!@}gHߵ,yM 0h\6SIxPDc:ͅ敦 'uDBtn*.;PrÈ yߺF!݀CaA3x6o0&;rF'%%Gbȇb]\OLte`Rqbv4(i6&K\E-onxji1+O0^ՍڪobC/D6Z7M;*,!V1&<PTLɗOFb\T,ߠXdM-`c#<4H/[g:2:wt&()gD4=X;0]7>>(Rùn NK}%ɘ]k>1x_-J%l(5\A~i %cBiG2- )+sD3O &Xq)ۘ3(:9/;"驾1)(IZ;2QKT)/ uM8ͪ!1k=6-Ib *Ag![v n 1Φ9/NB+4i"D:EbbmO7|Y47ޓ l#[ZX?G*ͭW+ԍynn7Xfu*@JUe7R_w5`v9MYx5AYRڄF Urq[QݕF0Y'MNs!^CXubNSX `AKwmorF8T}xH]%5q҆M"%qN>wEY70Y)0B?lv}Eb6p#g9e/^qwSPh~AcSF`a; 'P "B]d޵VJ3MLs3ԗB%\Y*bTXf(و^2 6V_?X^zWbpIu2JE۾,r",6AwPP͆yFǧ٭}htz?jV>r#U8`q˔BDfú6>#nOz2S3/>ӌh9Esz`P,_Ewԝ.\4dt>* S%LY9@E?8klR'3:$R-ce9{RooR'n ,p\GK\p/@3֙@e*ǟVud~s J~rYugCԾSP>NŚ?a{xZp 4g7ڸDk`/*b—19 /s7L›h Ⲝ9tL3آZnL=MZ8k+x+ е{Ca+Y3Xz~ Eu~ﺮȻzUe7ԧ%5'cٙx9" JĠhYMk22}.OkZ}"Ӻq:Y yn$u˨픍뾚. T/e;X1^x߮8Wx3; J7MP'Չ'ڊb1Z+yRWHyIcRŧp6Azire0Ku|;I>l"!w$1(GYb=yNb[iѵCgӶ>ֵvg(ShT `i$U%I`W[ [ޮ, 'Fw?:F -;w" YC1&6ذ1[ Vt cFƬ_U81{f^Z.]M>N=am)uZ_/k1.i" }y䧢NFl`J >S*Q~U b!8tvCMͣBXh~w! d8>2"M!7zڒߙQ6m&SP~!U R)>9o-ݘ#*ܳr9^;?GK Wԛz m}'A@~h&A'N[i2 "'71g㩀gaЌR'[O[wXm=@0.xWxJ]='#!$>QK1EIηd'%إW%q>plYXgb۴CPpdٗj\D_TmAU'[PoiCdU-ߗ+&f(L~zzg0YH9p}vq|yRW0=$spZo/(MrcԀrz}j1)' (eH,7g\5mK˽\vѪڡ#< DC> :8I4|_ٱEyCm UTM'PtN9x%q- sU CW('&d_A(<ҝJbx/˻t[i^C8 sF/I)FN.nS@Ұyo/Z?mӔnEsRzܱlO'F QC1󩚩1SQ8"ĉ} tWLL Τ3EC2 d+6_Ncf.q\E݋4[4?eh'd|NuyQ+ˎw_\+!K SS@?+wH]雰Rr2Q %L6~"t,ҭV"m#L +dcb+ Q0ڬ7#%9j0N'ܒmw#tOGzftjTi_+?f~QM|$Pj~ѳx?7fA-P_gWI$=8e ,{P\ɻԚĂe'''+S$Q5w`-LW@C}8O4suPVp[ݰ/tzpuA"5 ,;)e/<5Z,_g!v!i30 E]lu>Uv+8핊]jy#__ʞ__Ve`s}+V0Zx9 FYߣ MRE}J#9$l%~+L8Q%݋n-HkʼD-7i$v@DaKӹtF!6C6v=ۜ%Ǚ?k2&ELoZi t"UVƥUtLx!]7{`/:sBƹ̈́K"SJ _emQ U~ 5H x"._V z +&S͇xL8[ ڊ`a Z+3b %ߜ_WnlxL 樭LE!qQ!-8]5ݠV_&jo] ֠" I[̆|aI/ȿMql`J}Uy <٣rUk6'?3߁w]XDZ0[ۓΐ*|.@P|eF뫎HX/Cqk}IH"[ ĴtN*0#/Q^m D:i4D@ba.ZB~xSsڼ Ow#P]_zed_h 7G8M g:u6W?d#"؛tC>Es|Ȼ+8]GTAs*>$ Md{Ofi"7> ^oxȨ пpOR֏!e16 -j#?ΦRktJz^b*.LS z(~4#݋SDx12IK,4jrzj dx QAqU*LM/6R7til۟EsNr?5% *>Vt"RE:Փ4P{1؂W9hIOY Ք*KuI c7FPࢴ y9@Lx>|8X$TWCwP:iL\Q<=d`ڙESU@xzZ& m/B-Kϱ'v/!0C6B:u=3 dOged$IViapd\d= <>PѬx6 -{/O~ʃDM慂:յQW#@s\yqu7M t*xL*c۬]ܨ" A}P#~ػ&ZJ3P-d@Տ&aϡqv}Ow8"Li7blO,:n.tr`Ma~|s2NHl[ROLY覥JBSīU$a:N_PȜdMO$_Q q:ͤhZ<49m_TBl/3* (:G5X ,32귻- RL:d$??'d@BhIR$ϋO zR7NZi$Q V6t2xI8$KywJd6pE!R5GOcÁs bѲYS~Xg3;93i}SF xO 7f{AlByɢf+ֹF_8\"Hڂpksn{!5B볦˃x "1hm0SxAZtX_}vuZју @ 1v^hã&UM]et?TmF\H. ОqNx^ 2j_$~9ė#OF%曗@VWaG4V pVL. T rLb~9\^̎MXy<珘16&f1V5)tOk[ |d}N7/W0,:6T H]:Q.\.Ô܎8ڕ^dÂbE)?v\v$0: ,Lȭfr!D"^|~Wz_RXlsATC+ 6k#HlTA1/]H%Yayۄ=ؐto>wQSdExbbvab+Hwkv=I{2{d |:*ňʅe=Gl?VAMSϦ50'r̲ϜtvA;$5L眦u vMqlo+QYxcTUIϜ- U/ĻbH甋l"><+# MeC1\7. ?;@u}YvЖ13c>ř$oKS_o(X'`ă$298(h} V9ex\S28SLW47͈^&,i6o:)X0]A P(Q"@:$qrR "Fؒ,8fi,o-Er_78I ,P.k7Sjkv)!_Sa;F;,kDNv4oo "B~*'6Q3Πank8TLUZ~kh<9 -Zk0hbf8?QBZF!4b׫<+ytSc &K6`.[a=hiم#wzTNH閭qɧS^M2w;J0"hϿJd{XB(zyrc&Gw0Ra?{WȵYj JNlcp['$<;{||t9Siu=Hɗ[ps;c$q_kߍF$QN*h[ MQ.]46/cd9A^&xz0&cO3O9?I"gl:̮@X`Rq~[t7~5-Jwȳ|>[YAgSQYKr͏E[a[C8U )og4ʅ;=mzC"Ugr49_o-}b.3 XP35pJE!㷎@sǘ٪`bڅDx.uV T&} ֆ(ЯG):x;Ƞ˽Wb?6H  r!n`Bi i|[QQO5rX3b$ Iۭkw-Ujf^#{2 Eld[]f۸3" nwQ|yH Wc4,MMsC8Js4.Ʌ=9[ 4'b JUa !@{ةbՅ =$SsM B6Feنwkep`N~).}svЇxƥ <>wq_4"?h|нT_QCCDWx"+{Z?U9#f_:ܝ9NzQ]XguYka }7Ws=K̵pjno\?"MuTzoh K eb*a*dSWamt )ՏգW̌ۿg N N$xZm͙jl萬CRTUx-U7Y_r.{)=7`Z!TggnX6š499J4ʌLuEAnV֙ lF>rh#mNu vI`@Euf bQ_ג ?PMP<$#ɜ$ ,~ lwr]2S<‴,-nrV `^ҥ~02h8ak&3 Mvh}yzD5ozO ώț36nX&dCY(LKk@~={Q=A9B Dr\)N,kB1O{a9:I3gb8D,3-Hv17 .I}IףȨКf32K7%^t LFAh)yZmUcuk+?4pH*_;Բ:eWJUUƬp !mu!'"Z;, %m>>' U &% 94z_ADdʹ =HUZ0cboUW' VL<؁).:q?!;;i|6{Ί*F{"_l5Xg-dvfO #ޗOXdYL*K2-2%YݦS4NK^j6<%?[|l :,HaNUhϩ@yg,'(RX+D(vgYq^BjhTN1q]V&UKb'{=q%l8AeV3*Rнpp̂0jV()ksQeOqY͒4T@Mb4"'% $ÛjIĆ5b]{[&,F5#{%PfƢe,RR @ܺ: -C"t` feJasWefԹa*D7!KJEİHLB]F1 "K:FEP=_ֳ]kŀb/|q9,'cޠ\eCb%`/L 'El;p{)s|jf1c @-k&ek{ʅ$:JY%(LTk'bC&'Mب۬<oQ:[~+ t\j@fQm r3dzGVM[B$c!|ʹtN@zҖ̳D6y\^OӋ#SkXrl{f;u#^A$zڶ֓K ]k-Ыme6 >?/l5@)Zn󲇕`hD 8]ކIQKu)d{Ljg}GvM Ne^!sfYoA Rj7wBEa%>CUF؅ Vmx/ʺBcj@C J[L6c7ܒ'_b9ba HMO6"V,_~0R:;^%Nm;Lǵ(Nm.WY2~EOv2Jfj>b<6BI$ óU E9{md- 4Љq$(:5%mQm!9,@>laf ycb Wvt[-[ˆ}Yr2m^ Us~`_V|`;6T|#tCih~M_ˍnQx/X{|ZC.9҅Le_+w-˓8+\v@7C3x=Lepr8}>ⱷH.lp@C`/,}͙~{#ZFCq:r '$&* ͭX/8,  e[EX%wda%dT2崽lm: U #s K7 QRZzlazjr>2A r{JiV* @\ ="|}^ȪdsPyfiUJG^׌errzGlf&^~OPWbC[;& ~c{ۼr)yj],l~r=k인K8ض~XVG8&^4+ FUq2;7 4j#9\IdRmNeI.! ι,(0yH_z* H*Iu=s 6,_|*,VQ!} G%LuʠQ+z##u<٘̿CQ<լ$X&a$k\tVҁD*A~E֓DGUo';fYf %d(jnPʠȔ߰#%>(66N9Hp|N+Jj8:f%ܻn$ԚnW4cmaoxRnrds.|R=436oUp l&hbo Vl)tC`s72SeEzU2߹/HP,|&_:]rzd,V=A)V (/nU@x,;_KCi6W=e~.23H~S6mebF޳.>lDʈa/ YMs?vߡKEOY3K&uQ0j?A,| 3OCr%#!;ϗBLW:jl\ -wNj} ߥX?|XY) r]PN88%$}gL5잢P̰Fr*gd/w* M\ߑalI<sgKVè.ahfcw1pQ|`@ڵR;( {X%w4*\לF9 /)%#k8Hwup&^nUdiezӆx-q$q6 .JUHVhé]IśàĵiM}u8 g;[ZJ{7b xA|yvGy9V̟gdN!J{ZhjDjsN>8ˀr .s&d+(}(JĻc"_,m63 tk6G0ˠЛVGnӹZޛpTyMYmNUms?X e6сFP D7XKhWs*4[.n}{̽.:ɉտ[[  j@ D9 HO8h j=xOUȀFHWdw2i%?rT+Oi!zfs_o܉V_xs1 Ng 7WRMM㶥9.`#(τP_i,+US[7L]{I^_4F|ȩp°{]͕_˱bA00r_;yAZȞG%Kb)W A)=(N/l<*쓆.8|r=c?m>K,r m7kI21cBΖAR;S#򸟀47N O^zLN{̚⺠OULQ8ҫQSR5 zT}ԍaY px4xG`Yʛwcx (!#(Ms0NVG'(b+BN'34L˞ @@UEYCJL"$͐4dF"S|넄stى(Yn}<BH{y$~OsZYF3_X{6>Y@]xJTO?cTz@޵6$"=oImg%#b{-U)5V+n š3Ee 93$M>F됄&9u:$r1a0LSȤ&| 9)kFU?4yW@sNx[ ݙdNZwFʴY)Ȁkd:ƒx+1pVzY" %AKlK+ cMNwc-"#؊> lCPɪ9kR5.BJ$F 4袛o.MGLc d_xKe;^.利OR{(atӱpz1(*zl8C8tW !g6inuN=5\slA:2YX%ܗl0mM$ Tq'MD<\ij, -$0&'ݪՇՋ46J9H؃!x3m, c^ 炁V v Su 9OTilLo\.NRqg}yTe0+>|^WfiJ=i(Y|GXma7$]0T:OA-ڬ7et47dNO2'0|~پW@xYSCv>RV'QB\}_Wqo#zMH (6hv T9Q;r풧gׁU|,`<s݅nHY14sۧ:|}z 7 pŮtwAM931;/Tqoذ"0O:zUmne]BɎB'g._! 4ս-7 0t?kB)߬bԳh$|>@~A{QWxP#}?rsܜz!cdɎY9Y~C&I^ ׼J76ԕ r Zq_;N`>6){%\D ^z Iނd<<*qfku`U) mxw^ڢ.MY9| N.7XP`3lBg]P3'j3&9U+J͖K3#gݜhV$o<>1yL\FD[*qhj'7AZT@"ŏ1UD?eۚx!A}z =j'jOv͐3_6V躏t>1?!o_j‹ÇwN56*{um$y*r!n-F :[B[Cmx({o?FU\p:]-@ vu30tEۘ9QٝČABkМ mJ\z"D%Yt<DWYiƊlEljzA(u=ڟjn3L.*+Gx HLӁV"d~sUӌA37{sŖZNN,d־%tovaD{- g;qy԰eH~ r4I3U+`Ψ~)kCS۩>?=Tʠ]ofٛ>%@Fm&9}X£pGVџB+KWIl&2yHP2ȴ$_ԃjgl0ˣpTdW#ѱdla!9Iҕ c!~ ^Ϻ([R`BDPʣ._%LV6HLɏDcQC*F[/#n[c|°fDէ'=;[ 2jG=6̬g["@f0ܹ V2X,p+r8xU\i?'$ϟw[בq_ 9 ~/a* Q=@$Ub^krAN&4"vZ54oWB}ŝv 8k4Zz +?&f屃@:R断=DD ޵兘oF >@*mdyc>MaD%E9ryvsee!bY]0M5)Abeoe7}2ZSbXhдR nGDl+/* j6{v|tSjgtx fK8 fW Em;Wzo >3xT/V HE*O3Z'Gk6|QBJ;5m^mUP$AJ NS\eE*¤/ʖjƁ ӥ*prj&:_xg EN>G{z'xplYꀖmؤp+Xr%|ɐ ^u@˭y!L5[ rbP>29S䲽*(3ph!2?t D2/]`0s5tj98 A1Js.DEÕP}+ F# ̾+M`h7;LNZc\+dS|7Bwa%W _ _[H) )mB]k C&Cy ߊ3uv;7gvaǯfb~5H Tzn4[wwIJ>mҞ &̰t}:fVˋRѢJV*'ʬ*|m٧2 D/2 9 I @ihON)E-(myr-li>a2 àvBnW!G.F)F/?D5#jpmfFUC%"nLVvB"X0,IJI9!MU ,CҞC8kWc 3]d`Q /RfMp;2yD;Zu(%n\)+LE8nPFuΪFDņ.urB!8:Ӊh4y.yb*M 4ŭl4-x|%7=p>UlW} ͦlKNw:}*߾~\^B0UW*h̲,E=KW\1lŕh2'yl] K g?m.C۠ }E$]7#{P.Ѳ)_߸m;$,҂ WtAGzx\[}^˯"bwv7G^sU5<,)+F-ILᩖ[jlq&1"w]LKe^j%F(Ai"#9JY+t@DA8NnQ@T0,ۦF>#ΓC)>YpBN2̏V[)٧ѱͶ(%679<)E A+ӈ37M/9nfdmɴaHִbF+&*&Vv9yXA a} #`b[Pl_lQԷ{U , ~+xɁvxPQC)3#K^kEܟF#?A”$7>o@˕'a:ξ/o/[O`u49଱uɆup·E#GK)tٽ6 O`8vRDv!0<%buG?(=dN{$;X)]YYW݊v}{H%5Piž_n3d Cڈ!!ĢW[%*$=$PRs>1dӔ?["TK6KK!zE"RQ4YٴM`W: qH쁞x#n_-=!4+v43bW_+Ƿom-$Q-+4th6Ljg%kX4༙m2R󓂰v{X k= ~' Rﴟvv_16e(/iZF`-l)Yx#wxuL[UGtQ7-:OTTs_pBm+zAu= Ll釉MkqrAWA5 'Б5v"瘿VU'ƕmGau3U,Cy[͡G>sM+ La\8o6~T퀋͖;)gV ⾣%uOu2ZȭR!dH ew#g)!(QE ymM雮bFhrd <&uJ18v\Xa_faWK? i qQ'ܓK`S:ΜdY#Ќ!@ilձ#!{¾B]o$ȓ<p-rPPE_4|EW1nIGb-)Б+jI!ƕKT@^^nc De#I?~NW }搨2$/RND*4s#ʭXJz`V7qWXv9轈~W/^a/Cj9̗v*ѴM⛯= ~P[N}Oe5;#kminV(]YsEc6t& H&02hۂ m>]`çt=Gܓb ^XQ9V [P;~iPif Q(M(v Tj6/)V}$mx_*WZ#J!*<Ƙol.NY[gďm ɈYZ*EZR ^ ⍳ )4@  P LH{Cifo'esDo&p?g|%5gn/,F /w_8s&=F#}U.bCzCӒyoSZ%gM []07$՝y=tXvS ?0OwϷzP|H S )$,F 7TʕwTjfVdONED BS_T;}:sVToz]]9yAL+ BU*;Bۻ ' ɽ nf_FbeW-0!ddq<N[. Xvo]'&X0 $P=bprP NCb聮JfVojZdPD"u-G`C=Ce4 "h,m1?Om lf>e3977䄽Η/[,G/R9{[.2'&ơ3c̘x8=Kk]YxR7آUVz%i<ФnHC^V߶B-(Yt/Ș|),[L~$4x+@U8+0' pykF!j,oxYf-'MKOj.f9uHK/Kh,t^NWJ S"p&=;;ԜTLD"jQe:T *Wfa)ytnuӺ5W>;L#x,3=M,}`2pC5mGm- om;o1gMD 1:Jb@ MCJG!h)+_IsGpY>]!?|"0oSXΤ7'jl& 0bC` M$ 4 ꉢ_mSP $wzq)gM3_@3bS0e[RvYV&Ftfpr[PK+33'ZA¡"?Fu4[9Հ9 YD2 ;kk{Bwtq{!ݻ?رN)_ua>$T7Q8n)G,e^y^RNeӐҚfo?`A^fݓ#0@-iltk"YFɇ&eiXꪶJ_wfi.YjT,fu!b,'7bRA-kxإ`{ а&2$ZRm@xa euwp=[fhXpu`q %N;c/UZ(8 F +Xv7_#}6Ȁ6t9A"# RFF`a ek4SA~"$Ce )'k^\ȋ%Qf6Jz/(z7;&Iur]/!6{KhIC4 ӟ.șmJ31(oN3)T/":ײ K aB#i|#PfZRkh%DdS2^av?gRl(}x|Ϫ/zc87))2y5emo4YntP&cs{k1xti62zx{X7iBmIT(wa-* J7\[hAF2 rI." L&kb~!m$FjD=oWc&8PcFu{DPVˎbŻ 컼,{;cWWu(IAJ:E=aސ5yXczWқC%Xk ,ZIJ3h'"x1efA.7\ҮAe/2]-J-hL5gj/,bX;ZzEmэH5RMw=z<^PV2{G1_R7Jje|g9!E멫p|=-7#^ʲF VWڭNy7z$@ }R(& E]_"A-ׇ=s2O3SZ^n˾Ó(b cpx+]\ߡ'y`dG]jlʲ*3eqE~tsvqxb5lbgKnS K|zwf JuPhB [쇛}Y01D 4бqZ8Y46T'nPh[Ыg5k:6"FTί|K>p=󢙞3FB z{ >E9}BzZFdW _83&v2zOqS@z%ZBXw[K$ay(::ݏ?[_z(&7.CFq̄?ZYbmcjHq}txNJ&KVA5s bKCG ~iO y\r~fȜ Z@'M"{H 2j}%rt.m%0u{3֌1tKp0)K9\ABR}4MkjGhE wgv͐m mt5J1]5 vBSkṈe Ҧ 5~s/u6SR{\)+P_O8T32L0/q a8Խ]((C',p?yG=F^w]oKc ovσOzC6JGW/8/I<؉WP,<#qh`:߻]O[XuHS dPz`z:wsj`$2v,7t3&cHˬO-1Y! t}G#%s Hqĩe>lKИ l&HrSB,8"gSxlJڐc}Ex3l<eoޯ cn5O`gAN\pBqN$//sԶgC9(~+](m|OSc?ؾɿT?0'%27ٲ,L {XUr/@s\gZ$vIm-ap/'whۜL-IthFNBPj'\zΎY>a}J.~"9/}]NUsI#Ѯ}1[kt\ط@ǰ]W*5BQE;\e]tr}n˹,ڱ7'0Q|9cc&MOGjd\Z ^/u0K"yDgoBmV܉HJxv7OWyM[V> (Ӄ1vw |ڠ7|d#ll{pGZ#O46 h7J+𢃢~P9ZnC@=NZ;G@mOo3 8+${fgs8jS_o۲I܏/r=Cꂣ:9:bܮ4ܙmv6v v[gG*6z@4ۓT8nDq|uu3$+F\p r)/Tg>萢'{%dQ C}{_yko)tJxFў2=MÜ$m8&\@3+S1݄w2' ;6?}ul ,A6,憾|)Z:bEl% M.D 5ʕ!.x1lG[gO۫ߓ6%85FndJ$zJMEK. Y?}O>s 0AD[}Y.uOf Jr$ӽͲ(W't\dϤ桸#3zִpi_ 1@m0=-v4d Aޛšr[!<Ik < fdxөcVեdC~`ֱggV3jPyGfy0HxnD f"VT&L٩0k4bD"e>r&i #8Hr˿5'd1Tةq9#AOxSͨsh&&iUoW>z|lxzt!Oe em/C^ כ=$(lXP8Ն}Bty /w3_Eܵ86h*f6`3~&H0k*K~*~@:|/+Us_}Y/[K(1^ r!jiEh㱩瀌X(|TQRfWԣ : gf7<] W\{Ge]B67>X]v/㍦$!O'XDh<8Y_w.f션]<:[o`#pEFB{ )hJ`WRK/EGVG+o1w}*Qo}@W37/פyRq,ؑc"XzoC0n6nħ:|Y'OA3gv[%-({b((( xp5{IRs&Bǀlkx;]kG\KYT֕vY(jIGbį{; z8:m[@0{; #x~w"/p=HCX)ZU@v-zQ&8R2N{0@AڱBf Hǧ?VCKBgJcYn;E3{`ÒWK85BP\5G_U?N x%/`Et;Ks7`wu'˄\_] U%Vr Qe#gv:Po{PωI R>'vJQ/jU #91,Pq_Ȝf<.>q ,CϦofr T*!3L)ԁ}J_M"0a..Pnk>ӕtRGq0Xip=lM,CoӲCcv~mQ\˹]bbykG'M]fk='&3 1c;tg(5ȒjN8keNe!Rܔ-d;̱iՌ 'v %Jf_a6n<Ý78$%na-,'Iq?= %q)ȃifҐJjwǎ@9 Y.!B׀1Z;w*:N/Ђ;D6ftr$ =m+ۨ,p/Ĺ1/sf\cIO"ṕX&4<k/y|ra5ޔð=-]W&yK]}&֟4-\{mtiA K$N$^qia03"1Xht\tq[9dAHt9B<۟gn*; 6o{{muZK=Kh?Z lGjND{![g)B8~V&'Z.-AѨ Rg>4aE![\'C'~i@Dq]5YR["1&0.@tl2d-4ѻ"نA$_v_Z(kpim@ɉ\Ɓ;k|L|( ͨӿXo8KF"RT]&پ~im&8&!MqǢ3)'F; SJnSAxʝ]@U~o 4lU&ټ%2YEq,&.1 >=4xG3DSpj.0)/sC !I-c7-LaQx1f&+k\mz}Y'GA(b~97p@vw ahϹ\;u]~`)"7Y@m"A9WW+~f4YIFP6H$a3Ov LE+nOMTOxM"܈~v( AXZ(^|&Dɍ[ԑ+Bž:-3L8p#q,e_JAu NFIrCKYL*C/sĊea]4-=n\Y2/5G͞3f *` K7X ܨD zL^~q<@)mF( ;,^4 z9Fz*ż\f8haˍKkc|uKf#ƺUqm)Vm/+|>?W " ;ez;yl$fʙ˧x oY1?A^I,5جLY)~*EO/t@ajoʭi3/U_u1.B1|>ja E O[_Fg=]AweQJ>-SO;އA,,E<3@ښՄ}9^1p:v\ UslvAkWtyo k0B`\#j;ɦW‘g&{ "M3FizwRXā=% ]EmvzenbmJ.2?}㟫]oz]Sԟ_v/EPIa_' xfٹ~A9{@e#U7_|ϕJƍ\b#Nl:vzmCRV s]F Q"%ƵȻF2bqGE6c/v.3Wv3 >5S&ӎHFBi^T`Ff4*֊Qh]T@rZg)!4ze:rؽc`w8@Uq?;RtˑNe*y#"nRץtE⬹ zu$+cW_rKq7 Yݣ^b_v*ث0P# keP?'iM1DlT>caZ6fTP%wMڕ*n>Xi% A,&g~F"6(`vRηQs:baE/4#Z8C_K% {ɖ=M݁泜9 kiӀ!3̙\GL-n2 ķh=A-C#\WLc`j՝TNɜkOŝ>GhT7g<C %h+_*R|iihR+àiP;T*YlI%"ڤ*P72ٕ7xz,̫)ךR77_6UzGu,9dKc'[+̅  {VŰIJ XQ IAQ\fCmvV+ GvЗ!S|B` s 9"_V/WCakp֓#s}U[mR=Jn:% h?lܑ*6<3G^TY᷌_+SDyU"D[-r -%.ov,ӄzV4)ƙ'Jst:yŎ9Ҩfut98*KtDeLoٴI#DA`OKayhQu$63ձ)M30KS+*1)s%|ഠ#\ӯ*o_ j osR{<"0,L- '0s(|^f k m0GkB5gKlq뎾k=ʭ¤ û\Ό  = $5ڗ!yq{T#bDY'9m)=5wV lEDLw DRu7{/*¡(VEH8~˜db8w $*<ъq:;; #i __=ʓk2Σmnڀ֤A{6-Ŕ: ܨk4j꽥2MGNZajc[gfmgL?Fijxmh?BpAN-\L mob\jXv / @i--K-f(z魫n_)vp ?ؖ1xJ RBBFk3*?Nr˰8+οRGY4 Bj;ىVh(^8|ov)#:Qn䈍I'TY߃QZ d\YR'WYBZgmlFvMb%Fw:b(eBIWB c+@7QmZr3-Jٻ:gΒXx _QS鋚i6@\{ 51q~A/nZ14BлG*Ķ!b@!lu~MfOaz8ժ:tvFWc6Is?LȋQ P{=ZA%C*z֋G+mG}>[ )|۽>^#or%r]><?T  8,;Xo61`jzd\sK3*KK.in-}=zܑԧr撄 Σu(:9wY}6i+byLF8|M")&Qk y,eլ ?h5YI}1,{ #uIzqu2{8:jg)sZfز%\BXRBjndu> c:w%991;]]\Lݞ U~3d S: c(V#ɦھo9;]E ASbC+ 3X#'Xv.+ބ| +Pn%vWsK%LH6|4ɔwP1A%e3l[=ڭq3UO5p*N0I >+vש,gb}]is?"@f&ky)@.κ$68lZu&qAB<ц+K%|'!h\s@춟X<˰"RO;@M`#,VkE,c/+n=YեE0'~IPa[wލljl scm }Rֈ-3Yqw>ZυZl4M! 5zD> YAj 0vɄvIxҡ H&5#䰉.٦vvP6L/1::(5KWeL!o,+mu~MOfϋ, IKGGC|ؒ[i@2°k-^@ut! x,Qo YK 7kB:|"!SR_m\ƚtq;{L64դ4Z JDF3t 3B@nP`@I#/nGiB _RqL,%U.X1ʈBL l' zb5b^_1)1x숛;k¶|^[FtL7~cE .fvx֋ڍf\٥G,x}QJX7\{<#FJqYF_63ls$-ceb&|oL )}MOoϓسG``+Rz@+pm2CMN:UM&;P+!tI$56֞r2F/rX* &7X=KB NAӘ؊urgH p6SF-x*~ҟ@w\ Fcr1:aokUDދŵx I6I2(.U=]gڱP|gIqB_ :/BА4;$җ\m q*R,B"]o9[+rbZmwiWOÒǨ| .WTx?2;^ǒw^ie)Kw5 |Uy? mH_ \{xk|"";c7`+%*LഛyFV:9DzAsxZ JXrkW>Lp'8]_2ڎ(UwfmwRbp}դ_c PH.gRR Kmh*G3A*)q-Z,l%bf?ߐ33blřF5wBݵyBV{5 gVe[VHm*bȇ9냛B\sLG)fh 5+tSt\<{KĖ78mJvȅ9495y䒚-qu O::M|:ƪ"e{#]8Osí[MjgZ?cwܠ 1808e^{ Cʡum; ƙp?s3+lx'Wqla lj wRf,(=_Q+Th2!ުQi׍v3jDž 4 /!bUfViVl5, ye-\$5I&*4{ Os$\ ^u[!y04b{#㿷qA55W7 Hj:GZQ&)F; wfq[s՚]n =+o]u[#9w;@Dǻ-J0gAWP z?'HaI *p̿33e]u'$h*)Zl06CI m ul}Mؿ?6*-{lP\+R,ࣂSkIGY.<'vX0c dRJFDjB|r}\20+ ƊNPGZg⌉kz&d/LJ4IB>HL陛1{S _HN饿W$'9Oaܞg(\fsN#V;xRCkc.9$%R`T<=#ӿLo2:Ŀ'͟^xBWqw[NlBb4; B4=?*))\Es =\<&1&^nMyo>@>AISj\݊DOW ရ|iPx1 y zj hO\%O3%7']Bi3֟;-&ǘ!C/4XpRWx"\3 ʤ6Kēq/> ?x%!r[O*$Fxtd`U5|Rn@-@CX$3/2ƐD[?Cn+Vr0J.Wu}ZӖ_ȍP,m2Fb^hTu.61oAP˚޵OE;锑.B99 v\A똷ZEwm(LVI g;=m bd0(K?XoVKeVl&29Wp5N^?4 <g߽Cp; ( w3C?i&,V;=$vTv>rBȧCav; _1¹utV`5e7H$r$ ي銪v4U=" Ӡ(7;N@ZF #3G%2YdgFu-V MF_*YI%^xCvJi *[5Ԣ2#V%{H[T//;+Z,#S(6c=ƲáAw_BS^/ n°$.JyYiM-Tbs$S @rͩ lzpӿ])lyυ*~}{'_wi4܀w"j7z;棲B}~)L}랆 IJ=+p(iXKCVOލiVOHaJ>`_\şh)JжKͷ `* 9CfHQ?OMo7Q>Ldfa4p &quzL҉.y o%CoA."qlwOʡͪb Q~^F5cȭK1=z>+0<%zreF}KB #GŊҦ:‘Es٭BuXЙ485qĝ3$J Zh.1lq*tv&sӣT'sf)9A1$QFrtcu^Gs L[u(}sa6KK^ڧZ=Wn.'aSDIyjݛvs nLa1zM J jø~7?9lCb B6/3,E&ب8_>rsJZD^¢0@w ۑnK9?uMi u2m y2Gw+ W0m8[?5% geDrPi 6lX%=gR)j hFy$af@lnߨ {cYQqe,vuf@\4m dW>T6ub _:&5;*KQXnf5G{{wi{< ƤΊόCǑu07yre#Fc wb bW>6,{ƕڈ F4w~rP@#@cJ Mc,n]QF/V^:Y|>\sn9-pcrP+|53+ BѸ x&Xq=fΓE=Z}l#I)(VSt\S2EvBCsX"QWs?jD0 j{.&OS>udNa~f#apF!36\v ĸ6p~ĂW;Q- Ų iR+po]MYn ®1d<%I?&LSڏ 7fJOg8cTKhs._Kvch+Y(DF%u0k+}锯w<kkF MDںSUAuh[*Nl.-=WDeb[~?paunMGwi?@RK=,JnOY8&܇~['Bc=IҤX ^j>:\D:{!f.Z@ xh5)IT Z/,g A? JAO`5ój4YBiQGz'v֢ГW-i {:n) 6 Z[B=DJ]0a뙫OuM\QMI *]g{44Z>I3v"QJ_t+>i p'gr`\agJE>N\~Zq2b%ٷSVzprxv7~vNH:c`WA=>+etE,E. ZaE* G>im@#:`_6.h>K;)Hmb4eVST^0O(mgc&ScҜ MKliw9RdTftiz E7(Q,ؐz d_>62Q9F} +L!92Zw$xpiL֡W@2Z G%a*2de`@z5H2˔h&i?dE|wp`^{cXr$=e%rRN#*a{>10W X|+n(“ RL%!$4#/ܧAj|(bHfBH_>I 瘯5Z,{5r~Qprqf/f^OP>BKRui.WBTP`۝(?:sڵ`2Z߈ӹv.HzЍD)ݽ=k$h,\,)H* f2m% ܮezfP@XOn0;HL]c[M/MͤKqsPlG4|WN7A Ũs#ZA 9ޜ$8$2m-2rrn,8bmmofh)R1=+ ٫/O\ Bԭs:!sR^+**k5Y,R+⪑?^gmY59oϲ_\?2#j Hdm:ӵ $fd{DvmnZ1k3N:i)Y%㎸'l0 W`篤%j^H){x8b&ȶn?vtϵi0{ ~'JVI!vTOU:|Y ۑs҈=ϕx.ޅ# %,ta*RHi( 1%ѾI\Q s )+Η-H72M E}'fi$Wjl6K}B6s2ߡXPD̴>%mb;DGrn?ž*07xiZPK{7U]tpymq*8u%0-FLZfD2tWnBY1%xJrXK.5ĂD ~=Ṣ s:?W,X,A'xR)EG9^N g .~Im7tRlMbS U/(@mL)Q8"ǜ!>4D|".hj9i?im}Alǟ>SzzeA>{VVU`[aQL)>Ff,ܡ{nu&"eÁ# 8k܊Z2 ~l6zk-̎45(!d Z- W{uTyh3E ' |aFюjmNR=Yi冀~ʋbn tAt [wy||f;Rbb.e?lK$Z9~me\Vj⩢bqNpL"XhmMzT6Mc+!,y^K!rՠfOf")4b.Cۀ:)3R/0H}N'BՐBLCbUuJm.L״۠K{M]&wo_8b SMY`r^t@1[f}2y !d["1{E8 襛U߹l KPveR]XR˟c7MA<"y=5rr/LDx6>`:6@Jd_BE֊.w <ͯqB@µ(ܔ\ =HplXAJ@aa]5=BEǔJIݻa-fP2!SO'WO4xn1c3wXѦ*T 嘻bwnCn) `WIAD+ j߻ZGBn3&Iv[92U;a`Fv n?Nz UGYɏwM<glj,_lM_I، stMOff-j&Jp5^knve_HRz]^" }߇E2$=8͒-VIwUc`Jnɡyj` / CN`by&;8c"wmLw7,.>}MeGbY:lkS*uP&Pvb{,Nd<ʂ|)m,WzM m8k}*vD=;V)n~-ᤔIe0$o0Fn:г]&Tv'L=VlJSV!&!DVE/א$D+m`sIp3( 0 %#h|Ò4,Y{RUCR>+!^Ä&] :6(幇-u0Feеp#HaM+\SQ.XڇBIR\ nufRK ]4;6wƱQ7T e S,z<\9uTv/-LBIC-y9ftZs Dg,$,YOCuIs!ނV(섭* lS5R$ XњeXfnomVYD(1e@ť5@ÍU-EIܝbSѕM>t- ^/[ŬQgzN]{_3d Cg -O2cz\h#4+b+UrJ&]{#OHxV,u6e!=/1.lɌ?InY֥˟ $|U&-L?P!< 2y  u%jA(8_I gwwjc*́f#. Sjޙ2ͅ15~(S`J&#dk*P> 0oKX! ѥL)d`%%aE@UB[#5,hYX@ĩ 4Ӡ&k1榤1tF*όg8 鯱bQR6O5:ǩ&Poל_ЊnUeC|8uf6wsLS-+*-7.:x85du7u>ImU]~[ܕFhUT߈h n/|QN6p n~#3Tg{c3K[W3ЈgtιË:3"pߚP cYѱWtP1?ਇԝ?qf3%"m+7(awՍJHpl==gWQ?/<@޼=gƂm!J7jB/w\#i#^0fpl>'A ==qk t1%`D?2(2҄z`<-酿oR,s>G GL(j[3[>? +3y\gm.J"L &h!!sYΊeՍ\[;]:H}Oh>H ML흔C4o -w7Ic7#SEXЙUu5OCF;-C ԃ(^Rfm3u N\>Pѹ2$RrSc"MߺB%`Ip Cn`-l'D2CYfHVqzNόdنq<*~g(\7PXtGL.*}QfAZRmrv O_[4PM0:%I&z^`Ccp#Շmƀi s(2e]2^a3JI_AAHЦlft-xxZǦSoȗL݈Gt'2º_W_+5irຨ]M2NXdWvp,KÈ\*3@7>ힱEQھI c(s~IZ4a~ dD9_##fcǧX6@fK3:PHpo${@SʧX+4rrznVTXTm.%b3#ךKtpWCuy+7G෤v _<;8Ow7 .2 ˯嶇koOx0F.E\ agtNM5S$b7opL |mf=v֑Up;tG@Z}ם7\5f]PyZ-/Gڦ٢.4$y0qjA4 p֒8C*@Q`g6-H_G<_Š/8cW!ewH^1 Z ] y^{|~݂U4BR 6eg!dqHduhXJgal۹kc̈́߷t>2}7-F֮ _3DO:Da{ágTw )`W/Qe*Cy@9VPCFBZ\$nq1 .ok;La!@J 3BIJ}6Av5v]?z{ōͲ6SխbXezl}aC -:(*0lXl&HF 7H[+Nawh;G 5@g&lVs=}J PqDǎ(rhE?nv~GsEgdc4me'#Rr;̼pT2_ARH CGpl8NX(XƝZ*d3ᵶ3 .1`R:9sWa U݃=)ѿ6ʇOzb{ "tU &ŤJŮ.B#X|dIt۬yLmJh꿍`ԒJ E.aؙ`vh4@0ճOC˦k gd[kPN_;فzjP,AKY? ao^OXL\ޅO!Ϫ"˞9ގhI k3. 8D% ^G *Kag{U߆=R<$Ʋ^(}ځdbfʒ gX矼n1ePaakMC ;#$pOAԁߦ?w+y 7%k'&˕E6btf׿њR:(.' DQR>\n4rfqGpmidX/MC(kGv)j91-9"z`?5/u]P\pJz$4?7H~^{w*`[ћpW/&?n/m)%T+Nq_&h^w ,&/#lҨڂHCigmRںSzg̎T1LJb=ʳ*dsXHw&p1C@6jSAF A='iB oprQ#/>ogt*T[nɵÂכ7;4~ b{]g#1)e*gKx%#O3S.13GMj]iCp Bku5A& ($$@hysNVSL>C2-S̈v[ОxO$-pn.LD7ME@GyVi&I|}[iei'y~%^pJvM6=H>hN{e'aX]jUt~ðkau Qe|.dYe׮Eeqń^ϒgjL ]BU mCF3gϙoaJۄ!"w0΍k+de> ݠ& NXT^c5-[ EQȘW-3S pk>qe] 6 /J{Cɘ=eItsbQלOEr *Ip$lnHQge~# o ~ bCU{E>v c` ۡ/m`6~XEJMzB#r*v5k(|BWi3 Gdsv&8UuԄ<ڢ^ z/Ûؓ(C` F7O'Xa̒M[;d#-ܣl{,`A[`g7Ҥ\O+Ը?uƪIv>O%$NN|$tr0wI F7 V|eB Lz.8p4St>wS[ 82 fvL`PŊ* *讗v%mZgsGW Qh1R=LC5<}C%5e9XXGBJ#l!z]gCٺw_v51/Ŋ1isՂLL~_rO(dzh49"vvFl(+ MǬjZ WS"? )-:5_ Iv&mV^v[#E 7|/]= k̒O:T [1h.uk53ܺvZ8 byG'7UOB"7,gNCTى[\^)>>ZDq6ջ]H%6aGJZWDBXPGn[LC4 kn~uoe=㣜r_~ -8SD]r$sZgHc+؞5HatOۍ%4^' V[t5W]) HbEfZDq^'{ q}r4]TIדB3 cjO;Ar_P]h'zgߕ)@_C<-}ofVj[.[>k(M ɏ:-&lIEj܏;V6& m إ)}ѓvY/ϠhL?ŸGg?U&gSp3pd7 km}C8h v ֟f#@:z>VP<)"&JӶC\4E20/ XcB ;`r+pifcnG4K1KglzW^`+xqdx eQ|b=W8ac?(nlH=t19On!U`6FVx  ->du^3/D2ԯ-W*{л|x C{?T9Id"c[&JG^p7NG"i\US;qlB쨄TM<'hu7>z̛aSܯ3B.uauUm?oYs4T.fh^Ƹt~ A+6"# o5WQ,ؘf!`Ƙ"ȓ6G\4ucU]/cwXQo}!fN0ujzNW:f o '膌bSqtTqmb tJK8cf A(L0_ݱHRf >^ܻize>OׯNW +Jn&)E%v -)TG+ i΄SYHYKzA@ѐwldԘܞT+w4)z(5[ۘbh37wŦp}v~[{8 H-(\QM20+XL hΨgy4PĶ̓4°!#. `S^C{[jz!uv4yOFK=IL3~G&JNAXyQ٫̬&]&eqc  ?,D9 \ݞSÃb{4ot14ڡӔ ݪ LٮELw=ݫDOJ(!Փֱ*bujȋ$n'5OPU|@ _˴t}c؟JQ}ECK5\ Y\r(n<؟qG5:w7>iJnLC Тk-O|jǼk٩^|%e-:*.mہ7J[hk$Q';F3gSA7(YNX">T|9IfZ KwMjgWݦ~H8ۀŒ1C:#ܫUmy{ K?QqkVA4 ov4έt$:ج`21h>/PzܨT<P:F? jz1zLl(WX6q/8/?u< 0`.,{ <wݒ?Oz(fE6Bɫ th=کIH*z+U iz2s"U^egN $ͤ&hA H}P)w  A-[?sotNr!RȹO-{2b)C2 6&J/YwCI,!*qPPW,Y6+1SR(Ngs4 a?l­ 6tSً4}pL@ڻ'# F,O?3HaJAFΟg<%A (1#{(fձ$$`0`Qix%B5ԓZu ntOp)ŻMko#LvbAE~ .Nz>[]K$ ʠt;Z'@RZh6 B5{` 9v3*ABL̸hUS <1nRh"[&凌I @'M4, dRy7lG|6 F2lބG_r4۷G4X-R*ۡXfmkje2N e@jg#xȺPDq3K7G>WD5&؄+~$3Շ-IJ}Ǻ ÓFZz'wb;fؖ#+ekWP`g}ݐOMԨ0bL6,zx !Ԫ\5ЌV[{ zmt4bC#MkݞT&BHPuJ}`@%}hלUڬgqRG=VT䋜G4?NUnvc03J^aF[Ʊff<Nuh}LeݨiCTkH G, Rx0X}7S_29ML*!upH~{iHV^l5PyeżD9^IHX(ŸNd&u/aT0v3no j[sߕIac ow6\q|$d_wrv;6+G%eSDJ߸r_o#9d&O;о]:4V]a_6qaVbǷ3^?X3ه׎.:)FL:p:1'ޠ6/V1.JtLzvE!`gQP{NHTiog!0 UAu 5(-7کIJWBiל$Gim>tbӻ iO1]Oۋ͹ Ʃ($k0둕3VI`„9N껵&lp0/ͤFxvHv2;7wMضʯ26^iEq8:--s, i/.,:Y>XB[N aq쪓EDBN287%?4 " @=p6 9nFj$*'{υ(T(U78l.Ĵwz8.w[ }B[D<qgZOy<ǫY\.mpHZӀ-o.-<y;h4k  jMk_8kK6;{Sy LSYgK/tAk?.TP<IH)LN'ٻ<~4aʈ%J Ķ^ka|5G8%4#|qu*Ε!daAίu>/>h2/2@޲gfMmr˵Z<{1yvOT>Q{Kiy611Ԫthi 0/iJ!=H]F쫘}!熘P, " ^G08:6oXC?ȟ(OE[7YJ'VELN)= MeR}?%k+q$5e$QCT703rRS'z7AxZv/.B*/r~ Ox<]ŭ ެ[XY@8[>_Wҁ]myKdRh1` <껲O!m#yv }S+!ͳ=) ӣ!ʂq0_o:K,T$pE 8!ϟKv}߾gfXa·X#USCl(s>9%.9S~A{sM4nKO`=~~9z|1[5Rh4rU5Iа#ҝŏuu1寭׸O{1),i"rfn+8?`F_P|rKx-"3&?iPq-ՏS)υOfc [aQ_zvRzXz. &{@ێGm~X-w`Pu+ko WrW:c6gyHbP%U\e)"z5RL@mV{q!pg*T4}l1ż͙X)LrT(ZΔ `~o}$.TdFua`#a]>,hxD"d@PQK:6VՄ=HM1?'6Ҝ"8_VRQz+}uuxUX+pv!3U.VNY[Ch2#8wc-玝^AF ^6pYK{Of;,h,GfKdr79|4ƗP~ Gt%<ÀO3ti5[:Ric!#EuL~9z6de+S* ,|^%8O[V GqXm :dh̝?CGMxNC uC~Dt )37#b2 # эr C"wGox2#Zk]9$ˍq$R]@tna!kw0DZi3OtK<\:\釻 k)#>:ۣ#ڡщ@׳ ':\dxe18pktIo7ińCG^<' 8Ta5o s=T{K,Qo1jh9Q!{cnxi3x}}HmW#%Zev ]~==J՛DŜl_!Xzv)vcXUUo0vf,T[rCMy/~X0^փKkȿtk~'1_J"8X#T>qgV n9¹~3 f@v&S]QPG(:c ;S9$Ir.M@Waz&:ĶQ8f[?@#Lm *\;J7r;И$"o MףGp錑<_ue|5[2ʍ_7ֲ 7 SƝuk\th-lYї"ݺֲWvyTd3txr&Nl [>u=gP!nÎq$6|&+ϑpbyeJߩ)S.j{/OTZ2Y h/ÞD ؁-HzdݨC 9 UM\YD&:TxܢpW$}nSjfHI+Yg=f-<͜L>j`M>H!^CF?@ խ5~Uk)=h]9}2ɘëk`h 7ܧ"~ ngGۼ~Ti032…ԁl+~sU"tu6<,=It"rknuº'^ bTd<7lOV̇wճ lpi-fvީC(D;Np53Q3TVmtDl.34MNIeSw(5#':E6G4U5 x 97 A5ID/j Uk"Y@3IZUx'ߩpX|+ppy_JGiuK+13h7*62$zIC~Mҵwg6bEpȄ[=<N>j;gx5 dL#>w4mtEŃqwQasЂҾp.A&tľZMtL%ɲ!9<2+HU8y4#)c'mwVf$fdR)tۢB#X7]fek_̖4i5б vPn!j1*6;r%.{i} k i29bot2 j?BX"oXcMywě:(74N/(ey L: Kׁ0đWG?P}/Gs(QؽHBz; '-t)'#Prj-z*!ވZ@Bwά+NH©QTjVtd|鱁wZyFbÆ_T!([|!4ruGyjtfG|ta]L15\?]U ֱFQo I!' /$ #ENj'FNr)ꬹNYem > E:5aRrB OXdu%iN-09D(j)"[!V-}8 H"4E'vm^IlTX:"О0x* 0YV/c+h8 ȤQ`7Jg7j^w7jIsKեZPߕHo#P˕7#qa΋!ݺ 3ydO Z6ڨC'@lt?**T *%E=sC4}钔ɚIH,}+k44hvm؞ Iښ#9B*4H㇡kSDи0K$԰rѪ? ڐk,XB bK8ꙑ<j`&X)#b03R`1L|p[V8z5L[Hb*  p&bum%4У - _m&8 2O߈7>Vt}X(8T`x?|lQ5p+;-8C2 MB.~Z\# ܨ)/hS#9)pl4A rvZ i2 Swb"~JgI$<΅Qtj?vGͩK30Sdr\RRYډ *6kbTKv΢]ϐtA5[n @ wT 4~+յ w6Ȭ̪_ڰPռdQ,ꛙ A}-6\P 늗bJϮE#fiI{-:B峸]M0*ض62+~pQ7iZYTZc%^wE7do,{@67 fO`wO D@])\ܩ}~ ^:[L@5ڣp_HI>\~bLS|V྇J<_o3 gcsg-12O6`h&B/_Rx~!TIjg9=B1Q#Sie菕@FfKW8HBn 1 ![%I\#>$џ4u?NSZH*}U 3Fj4xך t NB|r2q〄< +yt5Sb5,-KHָb0R8QA"q,O: D} H0:RZ_)T{.Wz'[.oiasoZ[/fR!gJ hNgo{}p-@0/,#zBSU>83|PI1 p̝ 7WK_Ehe!i'VLibC JE<#fnAjl =32 |hc=ٴ--_(Nyθz A(~o4׍rdTfU&Ebű|1N!+7 K${GΉ恪J ?^-.hN3 A>|]J0*)d(E:SG~KsaMfй@'fO=H^%XK=pz:M=V@ %JJ|nE>gۄ%ր'g @Qڄ+ t^[᱀g-iQqnj]BM#Q }z/ cbkZ!ڳE4\8ЊubÏ]E7AdɁ`lHQ)&qr]gp"=r{TLbWΖwU :s|@rBѺ >c:/p>K;wdw7銛 eXr`u%zͳ׃Gey@+0ʛ7X,U@~s҉SHYC1uW#x⚙ ?/4^s;#҂G?mwxw mj9ۇ˾k17ނC{RWRUh~e@;דcv%[4)Ϲȑ̭EЯMBj/7 !cTbBßSą|D,Z9Z!K7,[?U׳X JpndD"4Y]b$eUEe: FR&̤bP~,-^#Su'{7IJ^.4#DJMJ`R}!6EكxD Ze~.XluŒNL>̦myx>]^;=[i'M0&q6g /AɪJI>x qqVv8͢ӝ+Vc0? mS@iS+'~༏ѫ"uЍ#&E[PَfY2ffDrJ3SiΨ-V\aXR{NM=场lK]f~̈U"0l3G\? ZWT|?2>ߝ5̲x_jĖ39Q%< Îޘ z)0;ow=xOL?`&B kY EP$U譵 iASK!OOؿHl[,y1qH<&.O6'Ю5)X22 :3E'!ˎ8 [t2wblwU"¥Vf0s7 ،TbuPm{X$A7&.Bsx@k %f=ɁcZl'| #|26W^!P&' @VG5گ_AfsAX~?Zz䖬jt@JA حHrҾѩ4hk3R9mx6@ΰFtC2g33&}`u8mi {3w0.ou1%z cwUTJj'v">UŲkESFB&h1-M _"yDc-Bl>dW-ekC&Tcrd %9h.Fʘ=^ZcqN4HL\*i]LTQ)[aDxʛAp6Y圱/4|6qt5!6()'ZZd4B+D kZM:mT a%0WE7h7r>cRDl'6=sȼionUޡymbqwV;30=mWĺURRC}`#"2>;73^m(Z& Yr+/DNj>rcu|)&`"~}aسUP0Qy€)>%bZ P]rŅϢP 4&mYhY[%-0Ts3za,PfxٿYJ??gQPy0D=X'p1C5z^!i KA*EYԐ6̇\ 'pi1\ުdX;|Q& ՒƙuQsFo1Y%ŚtsWkv6ek|лԂ0~I2#Ǯd=Cx{caMP@9<lD nB{=m aTNj?р-XF^g݇` u8珇/ OND/6GE4]n9r>Øl A烷G` i~h:rZ,Crj&䗄p!uR*$-ViFCaSyNeZ g 2ЋLL/Y=nfto3L/ V]bqQ2w?S.GVD7e?ej.\Z0G4S#MU S$uDVcpH{ht}JE,+O $&:9kU~aͯkS r㋑L]?PoT+@ 7YPEג5V-B"p۳lrXZT aԓ"6=R,;F'ޟS$@ƌk iT8A_ ;L{NȦ^QL ?`uU{PƉ{6WJ}ZhQoOaHTf&1_=A<>o/Iayk>sshB7aza5PaPmy < 9' [ބ2dqv3ëꃸ~aF7/Fb؎]w6/:Kv6Tkxb bAil fYyK77;>ij;q|e-ݐcJ#%_sJC=lLٗ蟂"`.IgtPܶ< (CȯR輔p_&RZrМjM >+rgm-"]S~ ~ƥ&cBwLUTʉgV;~-NDL!D[$̀E_PbURzp6O+E\?-n=MakN WMoc+LH ,`"oj>PQ,uh2NQ1zÂ6E.TQ_9hzz1NE8r`Ekͤe_*Əcd"XVySH_Rk_`KYZXP_hPbeŹ> bh4'Oy%S1ڴMfaZy(nWU1¼3ɹ7^·yxrBZCq$>Y@bZ526w 㧝Ar  ^);͙Op,TFfİToOg>d0< O=9f-OE ƕKYjrsčjلXU"UɞZ`8pfxǦŹrG~Zn#<V&aX26<0ѹer1#Ծo }SR4[M#|O`s:`GtFn[tgI7g-}jM5 5j Utzsd2/ztK4SyC 7u+Rzz@4s狚(h}`$w)TәvIDfU,Y }nIFTNGJrtt7fJ rsᓦT{nhV-pb\+k(UopE&?,|L.:!wiE'HGα(B#cDQ?d PO# Y>wG8,E[ΰyLOUa?& ڨbx5p9mڀ;0vj06?RҟlNsr5c/퐁H?qI>ԄLDŽhZ4Wվ6饐VR&-Ёd?8-ܣ.VPę

w@Ccp`]T"DRqD)Vlft3)9SH(k,:zY6˙M~r2 B&WO#f#~\KeI0sɝ %dh7JGeh ba5" j݊]0XKq:FdX ->Yy %(q bfU&!@SHuRQHۗOh~_zB8Bx/,w5)\ԞlX{1R=hBꗇ*IAik"@Ii2DZF7Z6nHk ьA/?mKs Ⱦ ^l_yJ=`gb%FK}yzj[]%^!~Ҟ Y|n]0, Vڋ60rt*ח x7>MR3d`Ba%~,?vޤ?UCz+ɓTt…|B|f221Spp%ьa_dDxs%-QwoOڿVKG)[pεe|Zf^::44c]=PABQvINw4ԡFQ tWhm۰qAU tO`jC3~2N53HMQfX9Xh:S$yQ f1dɗx6I/^mj:b7#=~ŘoOeUDtdۭ TR0lG$7ECd`AvZ6Up|F!TkrͿmMԬޫ0(>UݜN׵ZN<]|4og! i?~B\2M{:%DKw~Ѱr0:4[]F%cŚRt`v3qde#|hQYְ8_,A'4^.9=2I} a<-"sKw{Ps*@0O!6g{+!m4E̽6i:5`~+M.՗0V^cVOL\ ^ nE{ ݯA b{Zކ.;d3h+^շq+O]bZf rƳϦ;'ur 4b|S:[~LZ[.QsZ).s憙^韯/1PTYDS{7 olg^͡C(mWȈWHakGL)6C4gJxamq;7U)Vrۄ^W@Qٽ^׮Y}l%Ô?;S9(k9~xl78l"<* 'Řhoӈ.9 H^oZvCsԲdt'uHʲM|if5#5Iw쏧*퉥0܈tXu/cwS:Han}z{]c>} h b6nQ:-( :bøA94 ]\Ҡ n3q$gw}L1شjYu,"kz CWMkBXH!yZ8}lVKD.Q2_j4~p:}>s۫vG*fy3b-)G([6Rj2s7!0 7?LWKID_.FԲm3@AkKwΤ9M΍}s1DܗCsX$R|ތVN(f&Q,~5X/a}o zz}*CA,D@hp-l ćA,2X2>֫LK~`;O? Qlι\ΠV] g2A/X81`RixEnf/j$;k%Y5fSCS+v\DƐQաaa PCB Lf^Ʒ<>>$s*$hJwS.maL2SvQ5LE̯lYzhAfytu-qOSWum$߳K&Ԕ \~?9\a<6޿qExGmJw~?7Rصv>0T_xhaBDY"L:]>OȠHʆz_CR*-@*lh g&ju 54$SeWɬ]:2IP7â;noĪ\皪:GCFhaz.(l]`[Jzhsc4Z_8xKT̓!rKP<Ɔ.-̦e^ 0}+-~'@&J؍TH,pG$6tkdR1pϲCt۬Y!Ф󐂾("7$"kQ>?"nm;ĉffG(܃s0H&&((fX5ytR>&sNxI T$_㌞Dɯ]`<.,/g6c&gbk"r|y Y X9؅{ۓ 쫲h=V lgA T%0267X׾z?Js#ܸT&e>V~[*#r>u!,N3)D$"fz ]?;`4@<8`jR9=P[Gu(@doa^ˡ<~r%dX'>s=^|SKRVS+Aޱ  C2/gF4^7I[|3]88ń?>2nTwWl` w W.WyT,gr~B}5]6h,=I)՘P'dcbhߥ-K0>zC-+ \s;FG'p+jGC8Ce4m>V!&nآ"j2YԒoI juvb"H -l7/Vnݒ*y0 Ηk^ $!5݃RyupbBe!p]^h!C;)1U{D Sʱm !RIONWEƥu_}:+i=0 ԁ#G-hrkL יNe,/-"rtuҗ\U|Ճ%Q`ֶ#zƈq”8IbD WI 3C"fEE&%ު$O\d'I"49M*axN כnHd%~-<Ք:&.8FK C 9ل6mR Cd޺ }pZ,]}0iD7b`#鬩_⥪⫊͏ZX 0cB'4.Lz{)=VMv<`̚iifr~,tJ/Cڇ?cKM/jNc E' gJ)S'op,5{iWz43EZha C 1Vͭlf# Xm }N\[4mxy){r{[-iFrf-N! S@{g#$@}0= g1|y ID[)jpEn95LIn\Fdx̍1Ts@л,b^vМ1~^p6rnZn/g(/eJ`#P$YGFhchSu|u+|rtk,?(SSTTC>$$VB.j:ūP'j_łc*MHEg$=wo.ԿM3E[=ANU老n!Nޕ{n%0  6"io޴#VX70fB\ҳxZVcfdo2D|&D/AlWIp|=F<Ag(+'̫+ڔe*%Svlig~Oyޗ1к̍ȃ}y$RX rSxZ! ~xy4b!&0!zS#X>p9:8Up]df{yxH+'B%6'p)hBUD?IFd޽$].دO1E1XypãA-&%H٠)M5^8$-LoWglBTsDL*!l߀K:JHL#RG8W:X]ƖF!%(mSjP{)7kYL݌kxZ;!~&у,?_wR' ѯ;Tw8f C<[)SU?kR2b>Ҏ+ !VHݡ]: /=vɃ;4֥ 'l~3gCuw8{F[\?CQ'۝ x$L@;a_f ,l[MCBZǃ<9mE=Lulp&ԒK)r12ţ['Q<I\(7Gv%XωIK[]K*?pW|w#\\fBW!2ú溛}] mDζ* FM>&4/79? 77w2v®ueڱL7O"ةߛLE3 jKJ!a\ET2Lu_ުjSCIQ#ek@k2c=\P;.{)e 㳀W] 3@XM,ߚ{'",QXH"S 80p"l$>X+2nZ}@sew/Q#'όOʚ$ɉ '7K:nVszpXV2tz/_3%Ge]?c,|1%1=z--2m ڡ-}f!Y'98)cD9k^qMNrp0f GZ^-Vul)O5d8/Z7)ѾFx0}1KʨI5GE*+}a$gʟHߢI\˨w;Wɜ&:F1<>o]2;t<8q#|%R_ f3@;^~/K#-|I$@ōbAlPF5'Yq.pw5~R፮&wJ; Z?bS2ioc~ $$C:yNyʓ[ܥF=mu& cΩQ"AJbx'{ƏΕJ3ǭ=lB\YyAmf>R dٞ SPP (b>>OIvp:H$r!lChL2Q[<.*C!x !W[ _vFi*:*6>6T\U$΂FDgemFI{-0]($d<EANܸj0yado6|.x_0?u:Xz'fD&<5rnll|lBC5&~}CHFl!d|Nl΀9G 79= ,D.찛s&eS)BD HF[5MsQ.y"֔E@O*'K -uC#JQȁpqr Ufwh*=uAkZJJ0f#l T%pb~[C0gq2|u#9t4Wg2R:5D`jF{%5Ƒ\МpQ0Hw׺+8@"xR+U G'9! D\l4YCܩqbwh pv7ӬcTog5,=n \Xc=Դwzuc^m''r+|83i$aP>si& m gY>! H r}"G(Jp0eAmC6>?bhQ "Н(,EݧPA3 ,k]n1`͋4~A%نSq#Q6]~&'B1< c~e^m={Z]{]~Á5{ ͯTwd9ĤMېM1/t7O&W'\j^jI ]M`E0DF'yP\t3n|NRֵN :$咋?,02e=|iEp"_C{I\ʸ\q\i#IuvP] Kz5|Q&Y׾:Oƽs=2V'J43. Z"1 $_}.ˣO@9lyTRF%ݸcpL8^PQct -0y~9# ц@ZJ"+,Gu8a.D_(6Q<lr?9TSg , ]=wDe=r[9 qa;=!D;WܒhD\W71PqmiӮ.YۉI\J~R/Ccoa0OT$J*룮OʙIoՂ|;/i䅠{ݠȸR8MRV[kJN^-ʇ:Ab,Q8pUkAm [ZI=JP.5CRnoS3N6PP3-Bs~SB)並f7$ +@F.y8nM&e+VdZ<K#MOc|'e!fnr85U"3HԌaͮHȞ@7SņtdXRp;ū@+՟sK\^ʝDjὅ6 WnPD>fj$elW;{˦x'ZqnTPm$ w/0<*x#4$ ܼ-r/?@~$2k7Z<&/ äIaY KcqOb|V_z}yĵԠsQܕ.$#rpJZ&ֵ谚; ( 90c?0 O>:HEFsbl≽r\J̼',gHw o-:)Ayt"& ±&$*~옛#Zsg(AfЄ-yppovWS6ү>#8X2t\aSy̼ҍ ޫdx88歏iB5@؏H𿃋Kxw;þ+mz6eye9R?BB!I¡t4Nl"/Y{~mGC]oR Qx77^(9tJ,Bε1IW-JC?b$~"<`j[sl_w9Ne˶0mJ|Hҍ 'QD(wXuZ5sb<Cb`,{]R *1,Oaِf|M$13!`~i2FfCw^pޑxM9q7PXр7j/o>ZhA5rMyfߝ@_H( iƆW9ŸcD{ taBi/ Mt2hĒ؅pf<3K} |vcVY@9A&/ElwqNU[o*#;^@)QʼמWob%.=0Y 7nm19mRwPI/0nnt3 r#AUY%`2Qi~[5@x2l y 1A&ryPub䈍L]3CBInAo͏No]3N5]Ր z9xAo:*Q^"y#*SIHӟw)zT ͟ٹ nq0N*ב|K@2:]j9,?QH9rZ󰭪"ٜä Q쇨6Z*i  ziroxҭmWU1F7WMQ(,c7rl2xդ?Ws>*j?!r%OΒt@h5{тl'dWg"LCr2MC8H3A(~hw\[!.lq2(͌т✍bt7nuX/۔b0Ą_@;vaꪅ0Ѐ4ѷ)e[/ЉxjvQB-F0.Qh/h妕rkwcUgb4\ #8Jhjx˛prtIDN]# UV;_o9|[ցgHIt:v^?vESn%7ux}K7:i.qK򫿌ڀ2eT\:k݋ \Q~ZgTDH}2J u [ݠ?X>/'F҅;yʊӒ&OV˶K(Z+ă0ݶ|mOU)U.pϞnΟ|2K;(%-fEUA+S/z(q/4@d uFߵp }&O?RR+d->eHa:7NLΚK9 qnB=rSsӷA._T\:1+Eև<Eէ5MD!X_wTo0,b/!:LTewXP32o'cK35c5}ZZ I9llS+1h#9WVK(H-䎴޶Gdd@طV;Es-ƖX,l6%<W՟4ꑗpgoBY37 bjBFCH珀 WhQA,cJ#U4Ȑmh Zv{I>͜hۦ/7oE]Am/{jAq+em 4EċPA`'~vumP4EF { z넠3"}\Q``lQr؟VO6ij%q`KǤ1-Ƣ1Wˬ0̊Bm)BoeڣlsZZse.Gjzs~^q0ɾ8yl!YU`5`l^f^-&cYS0e $=@3Rq**gʸAZ,e:DzN Q4u/;>32?3.175&ڙN]܉k(oMX I0Ĥ1P2{&>ݬY+@c rStGZ9aƨ 7B{QUEAD;M8'CV6"M K;PF3L1Y޺{H-V.hHU,굆=nᘚ3͘tAɈ|ڲXMVt<; k!m_dBz;tmlХ%`0˥kx/yT T/"n-by56V$a-}E< _@(8|Y\-XyHRD3T9d|s?9R+C==YѬV.3e>KZs4U}7*}Fiah\<ѿZAٓLrzR +-@GBA  ,g̏a8Prt @Oe{=.gNVnͬy-_Ed [X+x N> sRs K E[jHb}'r19*AE!֬;bb8dd ̡7.M>9nz)¿,#a+IHL~:RH  ;$p2E.ѯ}5\R->=f Lȋ[۔+qzk#P eVg΀5UvR E h~'&0 Y^jp c SB mP$|.DPCp8?&`I  ͵H1O0C7%S p~BF\6{ ɊTp"eg 6!ڧoJ~ۿFHԲc%,^"IeZOӲw4d>X[@X,QtawЄقl\uίnh --q(5T.>и>߀!h!A}/c%7 ?Yb3iwʂ* 5X7Y/EMi X O*<2(2Jƿ&sw $w37ٞWh$b H}Y7+\c翇?hKӯ6 ᎑~E+!D^-FFF *T5*f FDV '0ٴ s_j7eK\>մSz=Ӛ<{:Xv쳉x:W GPΝ](A`=fb( $Sp9ohWGEƚaETq0a`nro눏d hxZ>|:k&o(ۺ+Zݹ*'~8@m&d蕆laGNm DZ!BV"IP]6ٻL^[a@4U0O7"ʙJr~1UȾ|xQU5FƵ(|MJm)7bŗT2 nߠvERv1=MInv*N7h,)itT|r^i5P)QVfQ^ NS6nb.Q&tN[lL%=iE-5cֲޛ+5w1ָxw˸gFr{;=Z'Yy7Bprt)J]4E"P|gyFa Aex ](XJSmj$y7<[̳.CgBIrDN  O0?ItZ5'&UbkC3$zrvҎFrr5_6{EB~HLrI {=bZxMrJe}OJżfC5,Y)(H^OI,#{vMbq"2b)O\62nPW2BYkْ߭{ t 밹KsdҶIW4گE~6'dޓ,$b9NmKScLT>DPʦL;0d-6Y` 5qfуVF%gR`p*CSDYv~n JW/ Zf]tp*ƅWf&oӕC-+gv? HaT4U5y FB^k'Z[yޭy{[U@f?K*W+dsAIل+2]A ΖHfpJ4<꿍/?]VوtDQXlt,G'~tf y}%rD<{P@J;k)Zɠ`&j<*[>)^jQ-.n(){Rcjb=h\=.ސq4鸨mXI%9qu_R3%42O܁Ȅ<| Z~p2Q93Ie٬]cAx$yX.A>fc4c9T:hbX.!;OlMX/z%gA9*)5e/#(üp|!\As&-Qf=UHjCYjˮ{TH8&u4e,u A!21mRA| 9t4.Esmȟw(͐Mw|8|_@8HHE&+-RM:p]ͅ3i?bjU^ƤpeO׽N*._:*<lcѕs,|t:/"ul;_dØ;::\g /H!=F1_3h}L55h>YF :!tT8A /q' J扠{3ĝO% (*p`y4G8lqկ&Mosn[n&!"@pfa7&hk@;]ɼńPss26oL!ɈRU"Lٌ2`3ei?F-@6/R%/9¹rpeo To|׳\ӆ)mb|;%XDr7VkԊGgO|nOjjц΄uD`}OA%6Uzid]TQKA~)tnwPʇ]$n2Ky9e'?߬ɺiR7ິzYp9GbyHvE`lEKN:q z,1s2{6pzGm9`z]y]uDƦAҌr__3&;? >*&]Ukpk{ݼp`cNhsSs DBT@횈 ?C/ ^n*Cb ̫Qب(/|jezê[FRTV3>N b8]wԎo?T(0|26|- 33QۍEkuK_ꪮWQ3poW%FL}0Ŀ:RWɄ deگ@.iVUSF:Þ ۯ6΅zަ&lHt\jO֛@EVN_ 1Z CD5$5a< UU1uv ??3ΑowBu Ae?Е*^e, ,)29W͢L L7uDt= m8r a-8;_\ ~/ G]!RG5:@~jBTX$䋔D:X_|S#0FRdrnbkϜ"4(HKfx'xIjdQA$gQcJUoǴ"LuRڄ >>)0{mغ[ng)z`eC߳{@Œ1,<\vscshn\'e-}s/"d_޾e!sq va8/ND|J!;Cn.enWn]|idQyC0p4`PyY+2 /L~RBb-#\ ^*\[zYĖ^&6EL$`JV];R3{'\~תLP6,Y]Dvh iszw:kKK~&@ҟu?c$4UWJRQ˪z}s:boP'6A-%/ˏo`=+ 1O]J4&=x1K$~d @E>cc \k=&>#eәЇgu|-dz.o< K>ا0qA=kTL*Q)/ {bYwaoudXz{&GUꥵ_6IhJP[A0:>J,dbheJYZ&_MmoA |6n5a%;7&Sf Xn+hJHKӼ~s?M^nbY1FSćGvqbrWfZM< ti8yD_Uo5h<9Huea˞0DQempn[Ƹw-H4 IM=i]UDxxbWAL1{^*{1R4EC cl*M׳@ު҂&D,IʆE&9IE*vkcF2oP]V KwTAjauJM ZjΓ A:_!9B=d>:TYspw\``9! X6k 80T晴G$Ś>iEadF4F|d>6(^F i7BuzIھʨhc4?hKW-m,^3 Y,)(VN^WK3QQa z!&_-E=7&koϖP f {N/:+<(D$ ؅ 77q㞟#>V*El* ِ"|S;{:#?q? d6Z*2W<#MΎV4!-0Ai+2y E3:[{(?JYˣJ5w`/(JT}%d)WB,q;fNOu]nn!aid5 ۙM w> -V{ՐԞ{{`)f,h2Oaz*au]MBJo I!}ת[ e,zizhxQjxUN.9aT=z SW?6&ŵg%NE0ўGeb fvM첓RJkm`R/b0W.&OE?el=9£yTTBj1dp7Opd\sŮ)I=,@:~ WK۽<w}rѩMpt]gqhP9~yJe6P3&: Rߋ͋BbǢy9'>xԄ-<;\xg/t8*(? pgnOiaqY!plR[г\5:\{DiW&定g8k#UjLoӫtősed"8C^@ 钖KW6̔sWR/f:s'_VR%A4]t/74x &)N!3z4 ͬNs鵸iIZ>Da(G6js/FL6_p7\aқ x9WnsrΥQRhZ nb:˞sbS*s;I8~fc܌O{KU3,MZe h8X p0(27;i Eh. uYg7 D3Bx01M²Ad˟9EF s&$o6Il[¯ oV\n5A!q>*00qRƵW.]{4Aϑn\_y1M9~}b@,bKRN9Y[1_dĒm3.$UMP?V_uDb1ḡo`G J`鋣Xp0B_GDi-S SO3 dw=z+;h\qd3R!pj*5[H"mʤ}!RvKQI.GΌE N1w1 6C@LQ`;{fAޭN T^OnL4,hET>U`Mj8OV~CvvZuB]j28?HπHT|;F69Α-Xǟ^zo[lʨfrgb@ƻ2CݾVL.Ⱦ)܆&OWZ.$G0g[n\YN:T^2/Hj ^傅Z+U Ⱥ>pw^e(U\SS DmdWbiuɹ'H1[V \oi @ Vn,{= 툗Oq5ϾuK2Sl v>E>+ћD]pNhk\9$J_/;}9/?$޹]Zol@˼ػTbCOT?Ca%}%6̻qti?Xlb!6X`FU(4)G^.]ZSnVѪf.pg:PPRd/V# Kګn$_ɏ#ʈR.Zv_zDC%~ԲPd13|=ߟtCg#ڳ)sr&Tr6-Ng )맴̬f,"DKvmㅕ#[VG(ϟnRFy ytnБBr8@ְð(㎳Osk;Pz^}~g;!{"L(v%^v @q{3~σ4D p @W:BhpvH~hxUdb@DB>\"3JIz\?PC Z\/h:RusP1P+&umyyVHp=f/܏+36ʠO '_Χß퐖!Zm@<'-~}߇x]oѪ$Aa -Jd) G$fhgCjAMN槹S.9Gm'⍞'i=3!ҷiXtzbW3hbOj5u xmR8SL%i:tmW|6 y`n L\EPjtncbjm@X$Η]".[SHܘv;'5x dgVenA{T Fɉ,yR΍'(ѻͿm{>!/]m#<. 4JZ]X{PoWJ#|Lau$BOFK:b4mDp Wk<BQH:d/ݿ胉k{v1< !oנn|jJVVpZy;~+DDjix%d$<_[2\/4se-\.ߞ<ژ߬bdkTVqd{Hg:9]grn Lfzw=iP^]bgi g󏊚lVNZoo3*V FNj D>c<+5~O %o(WNW"ŗuVp(~ N4J 9dhK.Cmj]‰P:t&Ck ]7iA̋~jymV 90n~bx-+zٟ(9fkئ!&;Wo__\Ҫ=9kd<ҳ0HN㗢8em[5!jUg*l,K`Y>^"VH?P ьf賅4DMǥ|$)lh4ehQMq(o]"ûj' 薘Im59q[ wμ/lWMK dAeA&3M. aU."$+_R&/=h<a֒Y.݄oܲ u-d<'cl({xhqD&e9-77GI)jN8{ߙiX KM_Dٻ;Fg1 ݵ޽o]Cݘve C0q܀((6M㹢ٱ֫P̙K }ﯙsG0ۗՐ7Ii!׽X Xf~At^.Qd嚸tϗsVhjﳬG0,n`Ro"[@R $M\6)+X%NQ'ݢhٛ9'kzv{:1'@7' @9n>/'/4{>b/Ģ}3_ׯ (>v +{0NЀe:1Lդ*<ܺ4|Pa oUt'xkj˶P<C> <ѻdQۯS:}8Q|c*iķ; \lW_ƒCiב?9S\Ok¥m-מl5za ]:u>\9 \b"!e%C( u}MVwsk&yli Uai'lyS!k<TApHO3xK MϊTh%w-a-7B`ZIuԌ0b-NAQ|X2=JrR౬caIbGY#)+:,wa7#X騚ta//( ^n5L vW`) gHJƹ1=78ZAjڕe{o rȓ%U1<: L'M+1i`gUhZ1^u6; <米 9_-ݯט @ZI&t"~w i."穡 ¾׭+w6;jҖȳ u>0F.^x xrVdqLW.dr]Hr1-Yӵ3 ;ٕC1h/ 4~l>Y?g]…FUIb,UHӲ>ʪ9_T(xȟ.3"`'b]L;^;.ډAc!Pq,ش:E3 7.A)'99|.CmN3]W)mCa\ Oθ|5t2auEFc>zU;Xc ;Gفc!IO{BjOk#tx #; vd[cԞQLnʲvdeo8IxE:\@jqaVy\ Nio(ّQ t,UH.ot´:TuNJjw Bs:2H>?f-u1g>ؿc$7GS-j;{G5p:3y;znKRrZ&a*7ސW(mW)}n Ho_L*7r {O s9ŒClj%8LVDB-!N=]0YѼB?O^%նtY,b8od (QӁݼS={'X! P<}C'uzrUDJJn@lrR\&C$Tڂtv&>4(%JC?$`S^29 Lɂ@^t44I9ݠ/41 e)9%k7y&+'xG wƑ̬HV9+B.b1 [!RWbC"p0Sp (CqOz2!#g3/bwХk=(TϕxE۴>90ِV1Q0PJWe?mN[9Wz# o#`^kLVS9c#aמhBWU 'Izr b_NO8+KRbenoplm$۸ь *R2,҈zc*/c2b`6sE@SwDpN"ysr"gýl0!)cv2xQ(&~(oebAs_̾זV tArJb\7 `>!yNP|7bKK-p3:yb{d(4smhjp&#?xv= t&=|oZdWQ㎙8%͝2ӥ6٥pqdfuœY$LyK,i\[;""+5ykNP%G ˪859>=x[Rh6[y7c2P|*6%% s4o,s[O^]ǽ7q#= ZQmZKB'c3*ȎiQ1 󑠄&ormqba'v;{lcS 5TR KynCv{wFlb;VA?g.F機l_d>~3سOKc⪺RPE08|mUcF+Jcbs}\}<(h{_31kɈ'8JshBr[r= CzV N"AݤsTv!+7Ȝy<'<&%RSc׮˶*JWఈ̯#ӕƟ1~ƆM&4K9$&7&wKe* R2ub02>b~}:χFE,Βwq9.J8 U?m 0t)!7ea6!9C9nUɮWIޕ<>fe@^g!rK2U/|W~@7:ﯸ1FuWtZGB&|Q\WXY%Y-Dۍnޭh5ާ^?_fv#8}*>6'%mE>w; mbS>xSZE$@ 1!,=$ܙ1U:0݇]cnNvlcAF Rj,ŖѡـOf詐Qmx,b4S?8-8f9zF *B&c13R9$@AABh@@iHv 3~ =q0{]nJG uSSn{BTNLqF_KcUt%90(iX`#Mν(C|j ;mr$fpu26\kH dg2@6Q.s1x0c_VK=;Dߤ?9$g~bhwc#L)&wa A, $* Ő:Rl/ԋ7wg(0]ϑ{e".y$}Bia0NvmU]n}# V9Pe{Ե@S1}ϔFlWHw> 'LBO2{Ի2@.9mWvwbPAEb+#6 KrCJ[?T |VpyLXUlN`C#f߂%QmZڱ3M-7z$= o XDdxN f!#kuQWD7&^eˁ1lZL&^&Hwbaw=bo;:,Uk Ʀ0ҿ'B uzzqg3 0>lg{(E,;PuOgOԔ$E5#ԀԊKbP*b0-v&0[jM7yn"XHjK$2z9X؇6ޱq?z*ed '>͠"l/DN<"zFn6`0M÷?_] %0ef]nqT+'zᒏA 4cBpꄓ2MR $#o rNM&cQ`S"+05Ηwu %>`^ hH`_+n6]; 4y#MI`T3AWdC] k>S2rQxj 1.cRgi`u04% 6^?G($3lKk=Z"&3 ֟ңudŻqN%rxÍ1-eWXa=>sNd@zߞxBm@ lqp\yI!h*`j:i TEG%zO/ۀ%ϞPI*0 :}px#X~Z tֈu.ٟ&Eh [,΢}#ڽ5rߓ ^I*;y{| 1dV(r.R+|~8h& r@b$03j[-ױ4`PGȚ[+MMy@F'*s> eRS U!V񍇼 ~BR8D8p&v{D}dO=c),-rC8ųȁO/TeP$L,\AyGura?èTXr=%6/2Tgܵ-ض7U,ro(ff[% p4FoOQmš\S8H1e"t>5!MM*L H4/ܞBp>ǃx!nZp \+ClaL3?:FdHR `c9Z^1?'MFSYt╒~i3ExrÇ tR>aBnNnV4ŽOO{Ô;HE9/ՠ;ʽ00!]Uˮ Sv gŃTyO4j :kfGN*ryUzn2<'bESREqou'4 <5鉚07yANe3n"?Ӵ8獹Ū2c=^!G?&nRZ <># 4L{3% 1u2Sf!~eXxfC-htpih)'Ԃ5nkuMzZ9qmfJsB$.f>`d*i{<4WLIBͣuReS&,b*/T{Ҥ,/YoAlvU= q0;5k G.or*1y}_63Jq{B{zPLćήu= y;}65k>sͥ?}Sq]h24mz#/[+ߌs[ HN%\Ms 6ﺍOj,ݫa@|Ba|^\?\u zy :^5|ZAᧁF@n~So)#*ss[|uۃsGGvf*TgSD0kdW Ҷ #swx}tF< b-Y>y4` >U#Zw1(6P"f I(2!Ƥy?Li]RyyQ]]cΧt AICЌ 3F[JSຏm3z\{U^P-C^!jʛ(ؤ|gheDJU4;FIvl(jJR g/—Uպv_0:_VG&uOaTnJ/zGxޫdZVy&b@]D'`rJO@`c@xqs"6՟/7.D:63 yʴW=P9isLs 07@?ٚ&EkK5HSH<1g{ [N fxꆈU ekUjlxUbeoMD\at}^u<PĖ 4q QlH'bYf)<=ӶMxbvZ^sadrb%80{qh߾CEz8{jHsdv=4F[3j'oLJ|DʀH $pLO-Ghs gX;W=P1[ Khs54u*!’yV%UP z[9 zV'8ɘ Y 5+k(_LŸT?ۀlv]^+8;!~lטNd{#0Ӛ $ǖχghasMD~S/3 T}mX(+Gԭ?&B> xl"~s9P 1/N\;5 @2v #VtT>uR*߮?= bXۄRX #JC)􅼃I*΄{V8b,$/A3y9O8D,@/WVl3Ïib?do%f41yt< &G xai1>Dh‡h[RqϿp~&H={GT Cvc$C=^$i¹wrSk~EGtNXe\,>ALަ]":PMp*?KGMY|dƋf:W)G"Mڀ[_Y@zo [n ͰoA0\?b4B+ѡ)Ql :2 c@xSELOڔ> *Ɛ%3>9|{ ._/+@}?Q4G|*sÆ79N2@48?0͓K-x> SXuf 2+ƯX6ab }E]  !ΆS>:ӋG !f/:bJ{\R*ZM8"kf7+CXr@lp,MNMZҎ3*/hAa}'wxsWx۲\1xѩVFS錧:bk#L2`dit|g)pq`AL :,͞FBqɃY8H0۔C>(,J/CZ<Wݶ`y,+tvKiNC:0ش!}4-I1P OyPru|RJ;dVrn3/p1kuvW%e۽9lT}M?WүMwr[uh.<\j 5#Mg\5OI~mdf>qj$a;*l&t=m56_]|RbPijb"2g\!i v#]xZtckÅNwb,l[ ʑĝzlCR;' cAhoX[2 W1?2VVc\"f=7*BecXYeBPGB1Q| SM-:ڦ|2 ȿDD$&3Z6оn76I5tm8i7rBuVY,W k͗V7M# ×،sFi(t[ ~\0yjݳr( %tl?V3pb-lNHHŹ!SPcS 14 Vg#!`Y@o{)]Xf0ڳit$uak2`AoBk%S bkPnf qAȎ&s}rPq1}޸{iѓJtn;>"vPG J9% N<3VC"<9uÏ_~F+ڨͼq l62¸ u϶&5D7 uBsv4m>LTf{XWH_A(- 4e9srJol;G!^pu'w^vyK bSGJy}թrqt`TL6" QGAHa$7Wt1 wLßz8CHPsKN0v# tuzOor'.1y< Aߗ##?%`%y'u4ß9^ʴVDZ4(eyBvKKX(t k?L}R*E͎|>%wxPʃ`atƄeJX >_bB A{{"pE.=vXzٞ46: C*:;o::ϪIb% Q'X\,ݐ12ܘaFblzn8vWm?uY],{nz<`c+!JdecimbpQQ"lh9L LPwÎDS0u[EZ\9G:<`IE/ToMWcq Yt'|.Z  &1.o'?E;ϯonkO{RBBZ'\Q[*YERsq|j Q]??<:v]"-u|50B$E_,RySKRF!DߨΦg jr"jym\f@9ΨN}'tOQ fGpn?ߣY5ȃ#Nk Z6~,p{i2.#m\$|1e ý§ʏkd&/pr@N[?l~Gp?ߞ tפ$ƴ\w[+rǫ-2 1~@kօGikĴ -B`ӟ `NpgQge&K #ux1/]*~%6Ӡm\ Db9B^N?S/Czsʱ8{.@;wiBC O[zFL|)h.&~X9KAs h x5DQV[߲*/H,xi F>6xf?[f@} nzҰG J> a9raUAixj@5-OdHǻZV!i IzȖ=Gg76 8_?S&3!ĀF,Xy|iB̨Lɦ`ܿi:i&»HƺBlˣhh P~ie}#}ofcnj߭7 X !: Rb`\-QGFUZY*NZYĨZAX *ל5!;SEU{vcZ3J{bT3NQ@ꡖhË7ócCeX_9Ea}0jbBhD'3U|^sUn+嘆vsOpmj ީ=^x.mJ$x'l>ZY4Qs6z^-N)"&#f< ELD{3gE$u7Ԩxj$pVb$쎦c _d*Z/a!Cz;Wdžw *لv^흙DR'6v]^e$ ό/#ِ}gWqA$5˥`>#17Yǐ\ZU2)l{2I㙡.7/ xiȋgH.NkYw@g.qp,ًi-$ɯّ= 19"Cyfdz4rVonE姇sm}eU\ohB`Y,Y}@{U[ , HmV79+ej*$O$:W}{¾y4A;ǛrPqjbFLmOc'/hr':nf4i"Q.b./2]O}%/?)!F{Y%9ȪCYqDx?F2Sw'wɈDR0<$z캟+389eݭku DF] d{zu՞Y-~u {1|خ7_D!I?YtbTrgcәF"qLC)gSjcbӍ0LD{(*ԦYo^Ą`.O3wEBRXg'{Wc X44I ݲe;>^P m v=bP⎉̄ S$`-ܤK1iChkCzv>p%a?hKv? $].+ʭl)SJS NO]Wv~;nN]6 Lu Q#>&RBՎ \G`;JT~a ס:z"sk! $uwQ'M28P`I@8QZʙ0ĝųdX$Z6"lw=:ڟ` 22=<I*!Z9j* E.4p$aњ"n.C-4P>.w54%S4z7Obkh)2 Td bϿ=J7;#,aTKYεό{ysJP#@yK+g1Ⱥ|սS զE+tzY%@pP;gGTA_ck?8p ޟWT۠j7'*(zD87FBH gW#T)67k:OnsqM*`Ҵ)Uz{C3 1M"ڼ`l0Pf~kxE8`giSY%Z~IUeq5eRlzJ`8Ct5%qt/-.Tt~>3Y< V+!9C-94OXGL|&lcIziwHc%@~$*8_)t67/b\.|h>F,Tk' vSA0ޏA* 0l$.Gܱ쒬pj5C oU(eP{@LU&(r{hxP0ks0Wz[>XNioyTHّ 9ZǾ 1GzdjwVXJ#P%pd>+#ӏ04F XČF˷뚱 Ebôv>#{Gu{f|{2̾P)0A+5߯H+錱s嵢,;5wF!K~HnN{O'JQMc"BOJ~[a216?%V (t%=u$>|a FF;!Y(o;1aX$A͵喎K)bFYaoAd^Wli1WA|Ϧ00 = [Z TJ+ȯMTr.7aUiAsc74M5 RN2ȵVl >-=; qR RޕP'e1alB$%>Υ]h={9{r+DX޻a>"ł7qF:XZm4g$psV 0ϾcQi uQ~Sgk]FM#!><:zma  XWd %v%^ k%O_!,\wIK#gKU̒t!p774]e +QOxȲwh0`ʍxWgTQL1mJvdQi:V \?AL0Xl"b:BX8EYTأa)C\x>E=s/qX{=rgl LpI]Uaܶ?|] Bq7F2]mCK~t܅1Y;ԻVN8TL8 d%mff~EQRH]A*f7 ڣJ%oyB0rN3^xh*)g DWNN L[h# _p_M8L0urvw;:7GAp 퐦 5 'W3aft/FF'9*D8Ȱc/>(37&jz0NwSFں\4h4q|=v &xg@1ZFtI7d-קҚKܿF@BRMF)j_%9VFo.a);^pݟa6gm9Δ7e9F$:o&'l:}a\lv>2۱0rX)cxwҌF%DZqZq /J u $XH'eb=vN .[, )ailAzoUGXq%#?&r֋=Ge ah˟R Wi.=g) ~$̦3K*$6drgczb@iRC, ,9@2c! !Mb.!abeOt,ol@Vp!|&8-r?'kV鯝V*6 Vc 'l3^vE%mUV+d"]]joo\$2nG6hCuXI#\m8sOJ@3DchjrI[YpquE =o.+}]qZ +̜{H{H"26QN ,(Ԃ5}Y\w 5ƥa̔ !:RM(HO)sՐOS:8pQ]^kf8W*WHQHC?(O!#{,"9I!xAggɭ%YC^˞c3,T̛]3uJ^ZMAG 8Ƚ֞0Vы'#ef-_(_ń%(lg؊'p ]hHJӗ&0 b k_&!V6[sS&>)ޥimsOb8gU{}_ܷCJI i60 PNbc@ӻȼM:m5t'}|H@N6̏>Ti1o0pTpTBJV4"3u8?xAlzҎv`<2b(I$QwyJeF_.l>סq+_)ejGG`n2?=K0^lUܰ**3Cmg(N= qOkwIbm;1Q` A.HR[kǿ4>RG' N2z4$҅)]R ŠSy֎Zyi6e.M(ZX +u絈<Cn !㲖jkN8gC1\_,Kܷ|δɓ7PxC"yxdoIZKq`D̟Ɛ?A0\"h! ktR MeSJguH՛˦K6Y{q(<ח\bnٔsw?_z}p+MZج;j ކi̤è;8/p#uHx8(ZЪh= )z!ΙnqBؠF= } Gh-{[1$PpV29)PO35 *fu2 o 1YH2@};%-7T"òv>Άdu$ ~^D;(uvOTNVxl6uaVCXMd 2L/#غvqFDVrH _=Q$Q֖0V(l"WrtE?YHQ{#  *$.nu8)g*.3((L-}m .DJڈ-r q[>#J;RW:XIlߝbɷe*;oD}߽oTR19, gx~{y.Rѝ<+)t@y~P;λv ɵlBprATCݽ?_wҾ'ƈL|)z?9 6 ޒ&QH$^~[?lASDCB@e%Wٸz&sm/N3WkGWnu۩ZD\%O6Tz<[fӵ'0(uLp%"ǩUhoAH9󬄇}A3W6A BIVʭ_cC5:q%C˭/뎌_Å,?~(iDчɫ[V}$IRLjibM{IʽN|LfI1IW|U2.d[3 \ waޣilMy80yiߪ`-p: n{v 㵚Ԡ&젱ӜWUKǔb#d1/ޥdDMap˾7f]W 13st6JshKB 7 *s>F=}Z9eutVĿ:@]@-!U"fJr"80u B6ju]]N9 |H efICVR,dD7TNPuiw#Êb/l'vQ7ѨHp׆txOc W*0;A&\ `>)" bX$;0 z&9WH+r\'B6+QKOI^00 DŽ hpO[v5Q'~)? .cِUe(b\lCo"9F3:7Mlj!V[3I/0sЈ UXHibbUsԯ_ KfJs*CԆYt^d/ ;ﱩy!1FTa4D~3˵_< l s%aQh#$G^Lk`jstFWD.{YFWXM")0Hں蓽dFQRϤz#rrzs S'%f%B%ȹwĘBR"L7Z22f?\`%qT춼{$.UHׅPYtMvtR[`(Wsr̜L2k3ExM-( GaI%USh|Z9f S'8_Ibt2| /`oj*[)p,;4{A$ ܙdq4FEU3̃np}2?3]΄Yܱ` ff}#L;Uzl-R ;x1:~x6>v;t #ul;eudq)LCDkٜo6ȰyH]3Mt.좧j5嗎L$$ ?*\Dj,YS*X CPm@ ~ %H[b!bWǹk}=H5yX (=9Lw'--'wdO $ E`l5A87[ATy4/2jP7B/e]cPf/% XI}%_ P lMM`I%ksƾtxFa<~>a;f|gz`T()mD4S+2q6<$ iR|R 3 u44k6YAnUaK}4Uy'6%T I{OX#؎lTcx:Auk=ݲB;o E0wNux~qR+NV G ٣BZe:[&#%jIr{0"տG3~VW yK%JWZ;#?\Ȩ9?r"&qJ>u]0w!iuo SZP1'P8MH4ނI΀ώĎmôzB/>]54Y}uK@^%sxuzXFA1VҞr#o0Zc-Q-Oo=\?7g,x/?£仨1Y_0R+^"1 kU4ΰ!?/ b2[G |KaTrALnmMDP:uS;BB2X2𧞴8Ruoѐ/B9} : :&5!Z"8<K?P2><u8V9+Q YY{l=C:vN҄ @ϓf6czF.g(wG^Q+ ~(ե/8^N@ST%\mm L\bZKR'*:-8IC;wH+[pTжtqos2(.*a~x2,<U3s՘aU Ⱦdܺ|YpbK<.,G@8Uk#ƒuRסU-$٨'ȻC.xs.f1ܣ&( aN0> ]OiMDro="|YQKau&rC+d"4rH  WBH {3qlОn؆vgkTZ?QyNb; КMZ[mw1BPz ~lCFr(P MѦK.u1%v€&r/i&{7=U:{%O˘>3b#T\,/D1(hOȺQL%jqn+l25ٜ9f5%YE:R2&*>}rr,@dL鯦jsBv˯0 e^Bvqhḡ2 $P:anudz P1ی* ekt ]x$IǼk沥w \$QfDz4q\HibZsNtV ]7ܥ02ףc:j*U-68YPŢJ{O ZPa}I{^f{:Rܑtxp swyRti$Pw~1?c!wQ_z'"?qNM1aCMO pD>_p=4V;c83Aӥ`wkmV+1J8S.01SGInMIthAS_{\||_#'GN|k#Ͷ_,@.q^́%?P@mDL//|*PLyU (C6]LH+za[.y@ޒ-<$ r6n&F40T$w>anmYea3W3,]^kT,&c@C./R h8j/eJoG8a,1v  2R≮p wo)>,ƩD/=s36Maưaj6T0VdeJcv3cN>6~ %~jq(1!7ퟋo (?k^[|8S=~Ƕks D iO.[Q["NuwV\&^צQȝeA؍&x1;4ld]F;+aci ̣s´8+Hɣ`p]<[)ss-lM]3妤t{5UP/aoKYثʺ85DFΑǤ_ Q\(Dddtdž~̾˿}k[/e0Z=]gYJCӮAT4|Z!iFKhՖ- 7KR!Dɢ1;1 8]Op9IZUu~4{6-6R/^[vJ|G%P.d;QU ;kpi+W+n^oՉVM-R#ٰzI1*jjn/g`vз_OIDQ7F &KaM@lgrʏ~ " 0$3iTb(6Mއd@?}3jDJ76m=2QM~ 0WyU~9qpr <1薘zj6ˑ[މQ/1XgeBO|*T{ ;؉݋™e]QHX+|P9O_S3Y..Bq|{ r8r bt߰qȬdH( (S@;G$uڻޓsʻd(h,: _?v[B4)^W}z&/%DbMlk  cS4dԯ҈Vh QʭMH@xHZ3 }s -;SRQ;Fں;i R/&xR28#윚U*9syYa@@ 战[fȕ/k5V(=dʶHVROGy^Q{[]Y'fٕ Rgۺ>Q7-<8,#tV1&k旰ƃ3nE>jE0Zo>$7NPw'QF =t0jD$O8k QKBьx9|j%+D脧k}MT bUc<}ޖYI˘ [x[K/¨Cxd|͖[&׊brK{WZ5dhG }`)7|SmX4$)uBkrAklÑboo:P$Oq7϶ڭ_}Si4$-M:p$xrma~5[ @F ̦kvKv&9< m}%@[_=/UaI N>4-bz,W.~# ɷөhjno~t1=~]@9cVpzEN9-vR,D>* [ב(hcq(]\@g ğŎwF͓35YE7A g"f;l\u<=?&>x]b?sy_.FE1yy q+y^S3KJ>=G/*ץ#6KWLQ`42!fKtoWB$U{x,9®_2(y13_! V~ވԻGGJQZȮ.ż\e0 gj0k0%2aNSs# 2@[b]`'[0 kuYw[ؖ *J I[\fڢxʼq[(GrLUU I1F 5e [G((.OwdsPI<3QM+4|YymŞ_}oLbgXLf:OLT6jDiLj+ɤr9A))0@AvI?7BCp: Fb =6`cyi۴Ds*7]6ojNGAHq}z`Д"w[L}b% c u,?GC' ֵѮIlc ^;ӱ>J;SH6 Z)-r.va%rh G7FJFFb?X &+hq^ JLVwIf]$j,++{&%vf]vTOUdžz瓩l>D_ݡӟ ZM'yYỦ/՞\cyCqjt$mG)Lp' OLJ&Y!%|9p֊S[@+d^'iV]QANHgRj>>3E1.ҩ@"Z8բ/blgJ_IpTĶDL3w폯OY)B>: (Ȟ_"Btj[l&}՜CF"G);Z}=b8Wm ~ zvP="4u24#q :+6E|'uZڕz6LDqPvG=YB;I&EgNEN%7Y#B?NY>EMta}X`kA;wS,lmE*u`DRcn\~Qt˹0$d稄wfB׬V`hG@L7&bmao!ω$-WяF7q~ ?_-;cA/z BjN%| U|X&tuȗ]rTR0G^>ír '%0 mu'X'xGFIU%%U2Gdc3*$q%Fc;v~2'Љ}yk2\` JsM{>nt[ Y_~WI)+i(ͫGBuG: -Elc5:wU>NשiMlq=Ma/)s3SIg*o i_Zu;y_xߧ,(N\nkqEdG A8֐ ;qȸO*0@d gT:[eW 'o>QG"ȕք¢XoyӨZGUxGYyߦL!㛐 ̏arK_\lNw#E|bij-dbΧ(;7leqJ!Fݍx]^󶊯)#-}+tFBwY0_2 5)- 4@73ZcvvoX+erV5lbuGPsp|p~P9l<#6xޚ?ݛKF7aTrl &Os%|Tx Ƽ T5_n6-xAl^ϥdy,$"C|N KUم COߵ>X+ͯo+P0)@\B1n65BGV?uJM{^6}|jg5t,[CjN:E V]q2\[pd$[ʙzPw`^@=VJզvvSewr.q,Jr7 T" ܌dM:5_\ĝ"}'/f-,/q ݻ=4vXWPC UǶV<EdW٘y΅֏0M–yTHm洍v?D80u/I#ocO?gGkXS _΃C¯wT:. X^utvy2U@}TH`]/,NJcyըAS`qyn4UQ9pyשl)A="/B ,9"eNE&}pzi{9o,ߔD)Lwκw{gf#oM9@XV;B4bEFHNpeYv Zզ/88Tdi$bʊbf.~Tq97B.=PSէ)Ȏo#/9$O'A9%/wǙ==  7\he2O]F.Ayz" d:oQ1A b xe X+ Ltϱalo_h4B?t|єs5:Oc NZ030w@ BO5FVC{AjeOf j>,\7vPnout5sJ#4Q+R?ݢj9sCy dw&:%]3L!؋ZB^Cy`j\^EmoEMdX 3X/>bҵ%ѪKG1jcLe #&S@ǚk Tct׍hF .'{,әedVs<yy6I8FG.J)r%Ap0rV.QFs'@JbG]?V(>$ &M Ω<E%Q5~g_ud? C tXX'D<@^D&M7R]?8/[E #Io_1IE l"Aw=Y>̝T0_`?fXS^M w 䧋OHׄf59S;kWē=vFC.Ɠx֒ ݥ7DJ3b̭bs"vKY4_yΐ2M&|-.h=#VC/*񈊡)Q%B11r ן|;tH ~JhgCOo$9hxm"hTv_d8Hz2!NV YOr;pzk#75{:)pC1G0/{fcxrW\|'AUYUF~ʄZ^b~W-^3F3x|Su3STsLD]4/Y:+$_Kmx+CX~{vA"DSYG_I+VA/8u +肠6qdqšgsZꌨ#3Us[2\KTl#ŖPW6mλFڊ0Ș $LV˽u14ѭ3^韶%nw?=ŸaVzz' Կij breŅR\ jIIǿC4Ժ[PLbSϣϡ`[n<>U;]4BLzy$3QV,P빱@kE:`yY씀E^ҰkK U f!Ր9zEbCRqsmcҕ-I988[E4ypѲ-@Gg!EhL񂗉5"W1yn|go֯'[ sc엖ç9)b`sFPS*Np>`j~@1~T[b3>zƉU|^< i ,|!d!v,'[D&Wme[^ "giLlH)u" AOcmCe~<' ~>WL3۳m+O~RPy*Q}6v" w[\) X MY;+FP1@w\$eV\1g{ })kL\4?5<˶i{_1s*UWKN L)?X[ gi'0qW)7[{GCWFeh|L ʹ?rS Dlʸ)kѓF עҹ ׼G Q\ DE#Џ?Z x@|f #(n`Uؔx 1WL*2qˆ: w"`_ݟa^\/޵NqPd+D_u7BM,A ,z\>@~Z*e94*3[tGw562~6DЉC/>xx( VHR@ZNGյ8ne_n2-(4olփ5 % BvcRBSCxeO/mĜoE g2\VxU uhك^ob8;4! ut9B&8:q-;_D71r򐛿 Y=5bH~NeYgތ2ifĮ)r%534aҾ:J #ɞ4aywH8wƯEJQiaP8LKKg98)4;߃}/NnCs :G)xWG><0ѽ D1JR*bSU?N}k n}~%n*L+E6=\^Om$Z%ܰ`_ҭ,W w*Iu#<'Q''5}#7D>woHn]Ӈ#cKV4c=[2!y-U~~)?MB  G~]dJ 6E`rD~b$*'mQG"HV{ pc*fZ}"g=CBMqlOgN+AFZi3^UsxYᛯ!>]׿.ϢkK~@k e iqUPͫА\aC}NМ[ GUvn9IF~fq0nGv0H%D/ ߔbb֎yN&tRkqH+GH\] O;U-2jOxKŃ猠vQuc}OSUMGҊiVȓYD  C1{o mίcP5 :(+ŶZ)sBѾf¡!hDsp>7d)5#(FA) ppArL]QҐ}!6[hRh?EMEtNTUMF;D4FE}"+K/mA]*R|tpvN{3(8kF.;6U'FN;)rIvo Bۻ{ȡ|#bF2?iO|;:kW&Lb:{锯ljI\uh+aU*}'De,yb"h?a atQg P7T=| Ur%~TfT)U3.u*˕ EJ?;f=S$7")L@_0 y!Z+۶l?^I pם@B  ?NQtn3Ͱp`@ qԡcVm)ĢZ Fg\RU)ӅN߂oл*= f5a2,E^gXgMPzG<(Ҡ1Wpqg(혨kh{4hZ~zlX7mOFz.o_`σ1 Ĵb)< &0fHi'R%?5fiLvEWUBID̤Խ?znS {>>_ULc+",TN9?]K $OZkr%m<Ȑh5M0&d; ]T"ᰘj(+H{Z߷3k ~1R\ʓ‹񢏦"`&VGc( $wNnG|2{<aĜĴ+\%(lg=ZN2nmA:WJ( H" 9 e%*m u\hp)op<#Gv9 QJأ^wZe}#\(E#>>~vN>_iNGv@WEQ IA3j3:`NAў۱QeRpBx" lʫVrR㴰kMw(-A?U.3#&gOq(5;QaP-V='c_;"I)-úfӍ۲o-ٷu!oD\֢xb] ȐqVk 5#k+Gٙ'"P6$(uqB#C"Yrr;4 L ~8!,jJB& [C\ Vל$(.]\Fiʂ cG{~{C -kCmq&y΂Ī c4VE@\ wC'30K I,h"[ d> s 1m(*aeRHq 3vڀےS\B[Ht1; cbM:٥L'!,EoMہg7v{hoA= C`A? ,W&-Anސ9N\>p2f~ys&c11XxUr6Ϙo'_6R:Շ59gRjuT@^3-9{ڒE|-tLH[nJCiH[ojoQ%d6q |zٱ+*-(>9MȟiS(ȠakӔ|wqe(*YM$Cf"j~DYnH|!,SAZ`>$Rb鉹bvLZ8 `3G%uk +p 牞2wKD߼Q~#X!"& R)<~@rOwOf/a-bH\GqO,j/%40㦲?Քm5g2/soyd!2ЬГ~"EW}i7LcJnZOq y+p'+l+o~YʓU:}Ѱ|aig~xseoA\9o-}Yȇ(ڬzvrKPlTPﰳ#@>w iBB 2pF fWQyã1|ToYuT'jU `vںowipMS\}1btqez6ֳWa!"E9 4Do(iCwVIaJ eY@;8c6Y]6öz99FmܙBЭ Q/*JDOL:q\ g)ǦYޚWՄFOdZY/1&QVR퍞U YXukX㉅w:]-̾Li 2ha!/TU2RuGōpk-Uy.]x3SSb\W*4% 荷1̬P$m|;">ȇ uKΠ!^+D1V Dɚ+m+RsM [~DM2w‘6Akѣ ќ0Ee6 J2|$QhMŜH] Hi\\z*dN?ƕ>v}r%*"n0'x)3Q+;8wK)P D4la[jt{S:rA |~j$h iU"=BeIJ`W%NAӛhe8))U0j_lB>^ߕa5> ĖfM($ 0o{`S2+@ Ѵ-vUOnˈF"!b\4j\Y^!49kܔy_e vZi?A8H%6I<QB5@ P67xƹf R sz%KqHs//i{{[afΕLd Na# ݉!6T_2Ɓ}ڦCO M;lʰaŷ ٽRYFCP'(򊤛8 " \ 00l wkfxe_@ 08ZS2@Wέa;(j2JtD؆bX}x UN2QnVx@,/ %j fy6C8/thD>ߤ&e菮 -qdZ QUsہX豮\)[`%XhJ%[|ּ |}7]k[-Ylz6|m%Pjlm66/#^*m==EdD22&ձlE8S*ε^530"u~Y9DҨ(AY<6a>ޖƈK1DmͶ' 4UrQTÔrpI Ӭ 9v2.OmVO&DkRT}POSBfbRk>,V"#)+'EIqCtȔY(ྭ$&[x5>=Bbz@ٝOW  J踂 ad,sBn?,E>!ud{+Hn1 ϑ%,W8qnNC}ؼY'Ln#W$}G*lkpD-uU];s:N]7N偪I^0xIPGrs5Ep 1qT>4aY:G:[Uv\c}hٙ1#ZH'wMe,rOBϊSRxT@g6'XdǥH@ PDh6~,X AXM|uUZ\'Ӹ G D=:O#2u%J`{8(nE 9Ä91Um"ʪp Os#CP},X7Vfm_AFz/&ĪQÛEĮғ(^SQ^'=5;Hs4O B={%;Xy,߷ R[6>Ygm-? uƋWgu2 B @ ̛ڀ$.V1 @ytw.:yt f&a|Gm50|)Z{veHx~GrA}g+tW`-3~l}#t)ϭI:IُP!BB,"甘iki|*. uAE+BuQ <]6f\ Mze jJ,\h_LFMD`^ f|κ>mw4n/vAլl:qg̰4\4R2;>hO^~F \>,eSI+wǢ5FOF<^ϔ} ! =2P\?Inm>34"a 5?S>C l@:< % !MGA>ѱ+DIcyѡɰ=ˆA\BcLaNI\`A?`#Sj?4~94xT/K&,isXx{"v*=Ɛd|L;/$:1M}wJ6 Qn!x&pt"C?+xA1GW~zZ/:k&oÝj[*-j[;ӀGvC.ޗaf;(X'7/ "B5F j⸁i{ ;)ʊٵ(ќcA AYcL0{lWa^$5>}%ͣ1Ϙ*@z _^^# σs>"-xQZ97:ccZzRvuAk q-<>;*KVs)M2!"]ګx lBH,&)K 0p0)\llYҞl:M`bK,] 5^H H1fC\VOZVŢU${ *~Gw4k+uH!I`%J(֩'¬$P.56<7DY%©2L!NjG"/i]ql10qwWvCiνD)-otҺ6+jIV%~32JKW׏j,n6J2Ywy|$V nkNgaM'Vpv.i(پ`~};$nj%`qj>i,t,8OA9jwFi|AYoP-c&<+Z6,lg#ھT/Q bT_KSI$7M5 rZU"3U?}.4C#&yinvOz:\ZdGw05 Wd`BڐkaߩcGvuZvVNgiZ0Q.*C[߃Bq2_MK>~;d_㗆Q3 $Z0X.;=y\`(8M9ʀA}5nlwkPmnY/29S#Osmh87Eo)9V:RVƚ䤐ZV*n/>`'ǒ !\S]]6nrOnkn` 3AYI -Sy2ܳ5)0ϝso~3Ihyx+[Ȯ1 p =}YLx>UZ޵G`57H KRlC.N;.[i&1@F, Ow4Mu-{<^E+p7(BhoteMW'H 4p#9;$URIJA(t)B8aY.ЁO__ŇP6M$g5íwC}LʣuU9kRd1Dpz'؈Mkf kGUE?W+T. V%,,NP)aoSG{xc*9?J*%ymor cDqan_r:JfMY.hؖ23$tH"*Kݣe!ԍ6./Lovan)p_*,Y.|;HDun{$&N-o*  r 8a"]r?M@QkX.fd-XM RԍVOgb2~M kE~f=dI۟p,q%뿶P+З<7mZ&=n$tbЁ[e迗XT_MnCߨHgؔVƅ+_\nB};$19ȬsНʾDlC]ûK H %^iF aIص"Cq o*"=˱鹼Ipq'oP3H<@wAӦ3CpC"''P \?{ͳP6:bl0ʶ]{*>.Γ>v-p؇NNhOiT;_dLT½On?(flƼ?n|R)ڋjT3.c.d%wCB_RpApj19g C!sx&(k߽swk˵94Ww8 )33u2O$0-gA뫍{Z] q`;z$^ 8SCդa8.U fPͽ7qo.0@x`{ܿ3s?qY#Pnbѽ`s>OiNOढ़daȔx(ƍ6Ҙ *{"* ;pR<&fOU39edFw: NIRvi.$ahG+=0׏@zwamtlUAFgMPC5>Ϣ`ecȇ95 zZ^;̹}V[evmg=.e(.M_CVĈ wZ>ŵ$kxM^-N,ZS\GS&)T+(|vekjbOѭ,SYV|g 35]Iw-pK 'br'T6@Njܺ!\bCU\8ږxDIa%9Eqe!vx)d !9ݩ>=zЬmP5/4UK ]I`ΐImRՆX#{vu> U;ʥ?L)(R^`+rM^|9]0SN3rŨw-@XZxWcm\Lg18\EJbu߸Ծ&Q3rVAzFWխ]tn0 5ެ sWP~:?.fS|'.ܷAoIdOxwZ1aGOP&GSНu?/sab;RJoU5~gCVp֎Aw$WW;cE?fH2<3TE'rYL$pD-[`(M6lm* Io]Rۘh^]bԩ PQ ?tÛa /GCzGTɿ 3SMUOKabu<]\rhdojb~Su?|)ߧTd]Ez!}T[Ŭ5YY98on+66,ul7_ ')ᶈWf$q磔6?BVt3FWH%Xep wR}[#K'eSP J\ HR#ԡv޼𙴫y,_wp;95ŀT&V38K}KXq 0[*գ@-dsFg=?N Z1JCfGNJYE6WM΋_c K#Lbdnj6IЊvc\fu:?(: 9B~ΝBDbdY2-JJX<=[T/\K G?b=GNUir r(&v?O,!Z|(J7~kwÐys4\!Ɂ[<5X7D̂n܁jgB9jJ_0*ɭDɑTM`i -İ^d 1!v;1o$֒Ӳ\X:IvGhcv c=I펆#6!0_쩅B& Ҙ:͉i.l_N}+OYadxp~JilkÚUۇ򱲰ſywÙaHteG1G{1Z3e)= {$ȷ'sT955lDڿ%{/ʍ4=9A丿f ͷJH|c#I3\=ϰ$]>S79%'ڇoFG7 ڿCejaaCc 8`ci#1fނ"sn1旉@htpTLlIkA:yqP@BQhltUF  =_Bhѥs tMm%#D5kT>I /G7՗u@)H=TrJ{T t6P[|bJ?w'5o.;#"C 7jpjhcr2~_-[ur0QsM-anPk9v-p?F92}.Wd~+Gd|لvT`Y?(p.ޅec@QI>Ņ 8 az i3 M_&h[g37Qg:5gXQ! Ń3b9.T7LqA,!o(њ|Y]Zډ0Y6\1Ŀ ,h*_9Bb}rY=_'r\3<5 &6,l;p+߯KR#f9td=Ss7Bޞ;pKp/Į Zt_W&1*(:tFM7+LZo"Pu6L?R~5K[8&|^ZW2AiR*L8EݑrGG4LG f9w:kp!GY2xgm]Om,913ZV>R4 e囹;G@Atf\)[~\,4]67l* DqPa)cp<W$ Vu6XW;u׬H);-LW 6@1S^ JOdHp)@D-[eۘ\59FsN6`bkD/><gwvc,DvDɿ%X~z@aTzmT [z 瀳LzyGhH6*]n ؅o~!5Tep d ` !xekKCZaUI$n7P.3unF xzXF'c ]Y1M[~ƜJoJ42=dghB;;XC4ey2B,!*\3k:O:f#VZB%8兘>h[+4Łt[JD`M#0LIywHԧSq4ۣT`SĬɈ:LMIz'FšExK yp`M&?L}[ oZ|ތ* |6X/F0V {iKX DĢBNYvgl8(,?#;ǔ*"Gdo?vW> ~)D.&\͉%57 peCUלtO}"K&ٙdꌼTxݞ{?ǙZ [4lb9)|d^gqkX?[jZ=ku,x6HUfL0L9ZNRJ!FQV&_{&?%q˄غZQK;ʸ|ʻaY'p1)Q}4PpBt!&`NJ+"% ȫ Mj |ވҀXr$DÎ3/] ->|:z@U&xg5@8>H=>GK9UQ|W|+S֗/MdVf Ɵo WBԵ/G-/0wbF hE<;W[5fZXhv[Ex`Y+T7vqug\<`D `cj^r*P¹ϴ;k^~zg7qSE +T) 'K@qt'b>GG=*`x~y]`p3z-a^QNm@I!H/%{˵dQ֒Ans[[ Qzuh;JfBW 蚀kH.Ioj3준4F+T[ɄɯC> \DU!&$51\c|#O8\6MhDt+:vwjQwIݝ*6ᗴ͎2o aW&Gը[YFno|G`J03T?&(tBmfS+{ 4 H=B"J0B˷Zd6WJr١ ==*R;xbnjR^T4>!+8yh~qTj.K9:&ٟ7jnܠn{Ы#4u ie` 5,C Jߞ6!6sGu,x5 #z3}Ԁ_XaLMnZ^ \W̝ KCBrF@T3\^.M`Q qpؚSC@#z4l{lǩLhc-xh1omdJd8_9j}!0.c4lm]oՆ4BSAg X_DU::mnZcG4[S:;'^|Hp"w0$LL!/(wXlk5Fo\ AH#?bj$'[gX)/0MW.F6{",*z\䷑3Rbuڑ,jGX73PHWy 2fgRU ;* >;ED'}ުȵn}?&:6@D$;{Z _i咎RjH:fHkTyl~|r;⒜+,K SY[ Bp!Ee9])v[g|π#Nm^N=c\ia0hF¨H[ހͦyY;9uʿᝑ[_>â|һ5Jq% iy AlJ@nY hc*wSYm*S7MoW9\Xi76f{@Vژ IxT axr钐w^$ H_bڟ@=fz,JMGmFͻ]Ua puqKAPaM}+_a&(i_HBaymTV{|]"'e?d+ keJ#Fy~jIضjF (iY;.B!}{ۤ9k=V]FmfU+ԣJhieBMl F"qN2lDL V\>B ɚ~es7^5SJlAG?9uJWJy*ߕZaIZ@zZ6J8/Ӷ$L}y8}dM7ضV+h-VSNF/hv і0y~GR9I j(HSxQ>caMGr'jG:nXqq^ uj.'M('Vjs#h8J먢 SD p{lMwGC1<+ݶwG`zg8W)X4/Jm òd0D%9q=3™E vzpZ삄+6E:WTH斮xAR<63uց!*m!NHsT6ϯՋyaR.܇,;_Yߣ[_+,㴇6ʅվ*B2ΩaY1IiutJwgTߡ=r9Q<ȭ,;v:*m*ٕ?@$1# xK>Ѩ]DO@5}s/SɲuPͪeE%5 jmն GBevSԮI" }>9YT0KWTq,3}hyH @]tmu`fѿO!y@|+72 n*5^~rXa :YRg~WG#A&aCjUWD@>V1wh&vw/g g1!)"do `T0aZڞ~CrQ2{MpOY W#ukbX #n=O2ώ.)cU7NZL.P&h 4VA;;*abZ:e *\),ncßѩ%<dl诳LlȬ1KW *QDM=kZtZ'S5f\w5/ҷpSi󻎐G)" yqb&:)ò?2{4H>hKeBW2ռzg(A@%M.uR-3kz:=H)1>}P#hWm `5@Y4w}*W`*Sl6@W*Up˸d=0g&ΐ.d 5f?Yf|_?Hw8j 7٣-B4&&]!2O 9V8i1 i4>4{*x<WVggz6nG~%EpH۔?HݟmW'eA;PE䜱Cj (?P2#b>8|ڑ;\𧸔esBctMAM#S2Lz!P a݈hqƕ37ԓ5u9梈˺&fݚ~t3F3ɥ,kekJno {}idϱns.o")bN%K#“F,$21Uc&G (LFl H6h=Zgr.~BF ơW"Y"ecT'Vx6Dᰯ?GyPrdgO-l%퇍*U.~'Pu(WL(wmkQ]Z5&K?Խ QJ$)"mbkM*oxBI'GHgz[B ($g V\l-/rYZJwg1iP>v^Si< )C vhLi(0}~F#>TJo0t .ۧGf7 Sr e?x]";5#>!<͉ZzKm1 Bkj3$+H/Lώƨr}p0xhIUZ߷8΋FjWV)v졇hpѳ/CϚ^;iq]}unA Wﰳc% ly|ޗeݴLVöսmB&0ծ(e_q_dJt tfB1*Jpxٟm)Pqu\Ƣ.m lgc6,:rݚS6u -F̗J-nx{3?=6sC9kGĎ3I*Rn(({o5fb&PyJJy9x?ns5ZL>罷d駗!i=췯.utj J{) ďR=/z"[[,[}_iNbpR؜Xzx_H}sr1a6j 6ݒJ2eY hHyD6v2+VOBj(#Ju"MAb.ܪK|m#VZCNJ,t}n#0AxɆD1Z/ڊ ޤT]/36\b`?1UTՂDkvx|gQྱ,;w?d(Dzyu]kyQAvg"7@y7(RA/cN޸uX @z"*ݫApo=SAx1Ɨ<,ྫྷ|LoO vZS og"eC &mk=RqL ៯\O1>fAw!7Ƚx|,I6`FufY=ךZU+ky~L`n٬%1R$^^Н{UwR!F$>_!o%7LKUfʌ@ o!I:\ɅN{{h2#XiċAMszq?%!O3FCTMY9)r Qs ̇cG޺j*ꗹstQ蝙 w 8Z !a3PЏM)R|?A#e{,"o~q֚ŧ97@m[ >kqm1Y[]fKũi_ KFӘ˴8Vv$4\eidNt]ػ}cO& QOg=1rwuNE k \tl&VD ߞjD#uhFk]\On1;CC3{J3/ίyt 'GV}-!I-N yˆ'ء#w]t7")z\e)L{Jǰ$17hf(wRxps.tQZO ᫄.wW\!~::Y^nQ}R>+Enx+Su}̥^H.3x`9_9h!L?՘@0 ^z_UmYkꪡ=Wh#b*d'e8Vh ^녍_nsۘ{g6CQ2@u`p]L R-ލ!1Be[Ыd.!BXm[_f*Gu-Ņa!qJ'`aլ[!IsSyMl(<$'@`ը~}=.+b!)#&hYߤv2Uw@sːV!/V#.feh4@V:$&zeLXxusѦiKɭc5ˬ.ܪ`ˌokܟc6S;Z5w{91R&mP=*='T wF`u̜90\~x@J#"Yc./ϠD1"yH٠ p A׵?IG)P Č*s;c0]ؠ*#C"EF1} f` HqI#1C۫j4L'3 G8W,8/Ay_WcG`k/@ Jm]3U Qz# d@➟b(Ni6QT tTnb$4vn@MXNێ{ۂ&;[ =藘˴ m,!IFXXAdG 3"[5qq52xc5:gjx x戠Cq;!hng` YV*%< RvK>w.n|#֧ "b[z-,CVsӍPf15B2R&D.4rC}%ca\lA ЍV"> iӳ &xY=Dzc_p(~=d%ASC woK{,w[?Ҿz\!`B΋eYbMߤLh7 E ъ?6}0RrtHiX1 ȋ^ 2խIPUuhe}iJ\khyzj~$-N?;&x KePnʡU }J|gz |5̌'vR-Y~܂W]N%l%lw2%XQᘨh`hK(jyLDuV=o<^-'at3U0G,.iG.ЪAC}Aˉwv#o_1z M٤mo1_qz h8pS:AxJ*xE k$O^9{~8󯺘YVBRrv 4AZ UNQ aSU:w'M7V0*v5~ʧiq;-h[bh.ƙ 1LoPw [# 6(DŽɇ{pMVeY=J?QXu H  4MkNxu'^WG@7 "(H $(-x9ݡ*D~)B{a,h]]?ޞn)[hsf榥uϜ(5+=,HwtTg5٩JBs:S"9JS:V}ˆO)8YTMy^'*A,PȼJ -"Pv޿-f ?\IHS=n󛅄v7?OF=R¹s$gyzHey"!2HN`'|$HeZvC |s9qL')yp#i)7@o,LV[䙼ent>Cc^0ttY-ET#bۙ)5=X%DUIĘ_(g0jU!Ϊ.'H#DWIYh^b7%ԾAB5]KJʠ$tC={wunQP0w e-lq*8PœiR(*cf4L7`~j3]|~I \vL`>h}s6)Q@" <D) iÇ$2@ ׉vYy*=' U)W9">m|FKPq߶H֣VM|VY:PDּ Cɘ?]? kYO0ŀ]3[%yTX1gW VNwp'AވuYo|{N=%!7|9nl/5z; d0Y\Pٔ 䱲S,;윙,ՂJGϠS2Ò ɘ)=p]_A  x)"%,Q3t0nzVER/oM]r ̊{!oo;_~"G5OgZ32ۤ:`#С}[<e,o8bޟwsP$)u8hꦬԻnkLm\EatSMHp+emFcA2Fbܒ_ 2pvv"Co`j|(*8Wp$ a< $Ú]ցu`toܔHbW%&!P;T-Ȏangkџ_8ݏYq) ], Glc6UF2ky`YQg, sd`\2r&.u!a-oLg޻BUaR){L0c?`"BLfbC*w#R%0oITBvV1M黨2$nP$F枸J=d$a?ΡeoJL ]H 2?t ,4ż]!.ƀ/Blzّ˅|]$:3RJ,Iiɪ=3[DZJ W:xgDžT:[KyW%W/+ΆĩBڛsZ̟ Hʋպi8%ń0 ?+h,HWi2), zJD:h'/\O˦o2yX VcYYžI_ux3ƭԗoP1oNG9U'aI8m"lz[jqdD[1idkϐuAvUE1lpĻ|ŒL[.. XqƱ6PᏕȯCD{ 1ȫ5*r?r=*&!(|$ V,2(e:K`+%حtMHıs7e%dP ^5 *9zU+yK0_q{x̔ӷu8H%`t+RR }֬)(\dv:igz#'A' ϔwd?b6j\|;KI !(Wc@3=(Aw-B'M!?1E.L b rs`_ ,6\Q|eixZ^ȝN|hQL\;kn^u"X<4Cskpʭx<ǼȧruRqE聤Nd/xHZjTiEq"&D"-i' ɍDŽFwDD&'m/=q -3wjN6[VL/hYwt||?zn'p -kmrTưP*e;/WT@U.,fČY5^!o⤫ăl0/6;jsGD<}'a3WɎT t$q5(bo;قD,x@y\YL2;0}6M`X^] 78 -%X/dBѼ%۪'E@DbS=e n Rw_S#}%=yA_ MQ\%”ia'b6sB:ԑҝ :#IÐҾ<#DbjGNk89{]q&fw;(_vXMV#Gs0g0'-{KNN::X[{>@D./<NJnk+Wi(ܽ<$ndiG*alw5N(흷9`S$,Xr"8 (ږ{RawOދĖ(M\lAvwfZPʇPg!"LY^׆=tu8Ev7gDmRzϊ,kܘ/Zͮ('*ٳ]*R0} &fŦ \뗏̴5%x4qzy77 !@`%5[>&h+xŀ~o /se[2Bh^%"*ml YLZ촩%fƉZL.}0!McU2Kd!M9"'I`ht}6|DљG(TVOv"t&0aVBqI=9W!ђhf}TFJnn#`!x;Vz_*aA2!EvF,b\r6^V^8Xx1:OV} C?hdo7)@H^ClʔwPBd )L3Ҁu+bFAHDzζiS\"PZ(nK yQޑmU͊HSH/:D؎'S,P=9P/yܩTleeE|q$Cw+̀^suz&͢&f/S&-l޲RhzTon{O3թjDDm?d7-$N$L&ҝͳqC0Mw2_j}{ԼcPm?9}]B0t<h((= ɳ ./q: q'Ш.Ο9yPSy % d1>փYt0n n wj5xw@M-dSMW+:S9'L[9n=€f)ӏf))d~U&F6Ay;(oPqQ7$˶^+ygs{т_ ܊Xʣs(!!ٿHXh 1(k[?>[7`3Ʌzy2v,s;OAǚxO \ Wӊƕ*VCim &wi֐,&mԙMJXhE@JCy`̫?780У cPo FIz(5XcK n&g,}vj7[B=apr_WV*%C1st\")"LD)-A!+g/2 4QfL;o ]4!HjGm>5.j{~1S9X`}'i4NMU%A;'{qRBiwxRw͕3w+wd i?fJ?S) buL(O/]Ak^MBR>m}nb }_S\̾>Z̚*2Q"W:22l͙h;Uڥ=qp =LI =ԥ=@X3HޯHr`#8 Va{°=z֋z߮VEn1RRLNc!Xn0; 3Ǿ[3iMUJZ|IA!>4w*(e sS%(f|=̀OȵS|@m=4z|LSH[0iʼnpRcōc׳wcnvPCV慘ikԗj@MApI^|4t,0]2y^[Kц Ëo(h1{moBAgbXMv'͉Nur]`j<8Xu\cqBH%ymR9NBbӜ>ǺOIMc2e^d$lS; &?7~ B47BAf(WD% )On3&tR%% <ctHJ1]6 d72:&:mE*7s`߭).}?/H8i%1e>xV6̬!Mץe"$O* k7jY)=;Dߌtc_c)\o_U6-~M=ox@s0ՔģvawP d 3&@u]*Fzc"2ku͇aC{8K3ܥVu_optK}xMn9=lƗN~j`ZulxDX/~0 Wq':vTv:2 {wthSQ5ޠ;A$?'7xճ %>x#z>G%izh7[QPe&RVyz5-K'&ksW+iy4gnuIV)ӁC 'h*{zax0' $vA ^Bϱw o%!%1FV.3`|Q=bujz]:Ei4gqJ yHJB0y>tHT;Rv)g䑌ofTLn;,&8"; RJ% NDEM3G1caB4gm=vVֽ F;Z3:ʟ߇wXpRQ^C YݵY,׈BahaQkU "hо揠»]&Nj2--lJM:|)Dzł#u |&slk}XWnJxj:gJZ렅B[m@ZbʂM:4ݧ^~W^tdE9!V#ރ0rp`4s 6t zZJ4x`:t`B03g;Ci0)jI?f)/FYi]4N\ ,:[ 捙pGmDp:GR ~?5ڔF]ư)!ᑄA-Yלҡ_K ޥO_KK2ޓʢg7L'yxur8":z ; Rr@yCS_I":/*hlVT !38^GVy#KJ!* \ j$R=ڋo(W<PY v~H8! 05z$z ], m27lo6 nqGqYMD`=V*같UUU3Qk@V/{;~No_elev | [aE#:*Y Ӓ KҊHOZxP ob_ܲI?t[A1L-l0eŸ: ymL #V wK e֛)Ͳ9!S01ayMcwYL85q?F'ưxiz> ^M Udb 9uI<^h^^ZHM~~~Qn/N5b <, 89YJ$p]$rl:a8m]ҩdPoGMB/k@m?Szw?>]!oT' nm; YF>-teQĥtu9gseoIuȌ :h[Cxd >¯Y3%m>4+4-ӌ͑xG#UMbԈB6o*XqaԦ ɸ}["y՞ȐH7}PްN <К)ndŔspnX +:GZIpUiL!}nO#F"P[da Ƙ)u:fa6hfn5B^KPL(V].o2"{&{<.oA~i̺X[ک2: p$$ɞȴrÅ{{vxS>͛hg7 oX:*EC”'A#>0€YĬ>oʟ&NjzYn1FbFYEUoЀVQ}Yqܬݯ"6qJ!Qv@s8mHUlX~JZئe" h6Zio&+Kȍ[loQ16"zbòoeZ8M71Lyb$JVk~ !+QN2<S2]'N.)LH 3>8i<"Ь,4\?=(&KJo/[Y Db f6ڭE,5OSV 8bi` 鎓I&=TzQi}SWk/ke9C ĥBQ <-4\l(Mm73Ͽ/yҡvF&j̅;5n -~o)pp}%pd}k됟|NKLd+2y7Gt[ꞿOY 9)`ĩ3š 5\P{8+p0oZAF[WJHihg0ή㝽)X!KCFQͮD %jl>l eXTۆJ}F: FV 9ArWR( Z_loo a/\@7:h@S f} _0̀@ˠ:uL\F1ðfTy%Cqpp\y2a2A)S1|" MUR`nqʖҐƹu+>77kjs3sMq}o*COF>6D\T,wNENaMe%BeRF =:}vA^^3X֡|ߊ%u+SϫpL PЇ|8-J/qIzW >"2.CAH/X*0:ġtP* .hՅW KBz) Q{炭6*&ea +*hSyiB>L.3z:QP/RLz^noFepl_?.t,qPLܖlsb{LdzЂb8_.aU%]˾Rpd H6RW]͇ 5Elk *vFqb%{8oU|@2$J cK5'n`'k;: ܖuPK7Wv栌C fHC૜`uA/|%?*M 3#B+.B4 tXqa"Z | iJ}aS* ᆬ O;P"R?tTI?)a,*|;pav4.@<^0G[/*Zc >MHZOXFAbdzgYj0ȑJm8GR q \h7Fx0> 6ôK}2lsj_+); ~|DjOIt*&+<|5*{k(3 =go$Y.lEQr7=6DECZ'g0Yؼ|ۭ[z[-Rl hXvUԀJ4ʮ{YsipxuX ]+21FAY62Ez6Լ!HaklL/;y!cA_'7C9oHr܁K<\Q֮,=kԉ-ڵ g2 kC"\˙m3Y4Cz@+j;9.M^9#jz>T,e"D(93vZP̲ݻيJј°MZτGɞ`k׸` oo2[͋_^kԔ =ܜK:HS|)>zdh5hubk{ݢ- 1xL?}RtLgbbMXSiS`U0:k9hVDDf{WHZK,% vXIrDΏ3F(< 3W>0PGEv|\zmtiCBfgԔs<au 88S[I>#?h;O&x2 @~T""?1REl ضe1ݸDӫ"n)^3Q;R XE*]蟲~ r[$8uWkq8Ty%N8O=.lbm{C^mՄQaV߻A69^"'8HQj~DSњu ;F#YjYVHr)bӽ [֛F6 0s( Rg'iy?ʖ"g#uÌSd7PhQ4f.-&gDhkˀjN;^ ,ۥqX&la YUA|̤dc,FCZnE<3aa4;=$b-#FJ+^z Oמ9"Ƚq{Pcsy@^#x32B@\Ӡ^- /wy.7>i.4d\kin;Y}@PjӸoGvq2ޫ~K"nӋXRх):Z&&_:&xДb!rЦ ^VϺ%'PfZ=gC~c88ajMΖ%<*38eM ɡ 闕tP[QVI_c2:Oӧ|\ 4U>zHĊJ(rzB:s `"iF\+M.yQ8pB _ 8S2ٍE!+\An*r6bACB)zi4\jGvDդ;]r;(w#UT".=A: ."Rpu庉&xK1ߌpX4Ti@)2L=iS˥/ץd=3P4휞\I/[-ǀesr3]'IqvP(Hlb}Bs&!RSH2-QS`lq(e h C /:$u;gNE]iV|ʹ"00l\IrvcQ<8V`D#fg &$g3ذi pfJcRw3 ,RQ|nbp\ 8q_N٦eMo;`͂MܐY…陋v:q+_?X,7':b^Nxl%Kòfncoȉtp."iE _ 涗6'dn'`6 utW|:+IR@{44_l%Rl6j>6#2O5~Jm8Y)񷉦I u ^eS@;ˡ:Ed]6BƏ>* Q_xs{;M,]2lH$׏ZbR.V3UX6c7r-ây {_Za]4ڂ\m6^'j=!z(,9Fc 2 'GT'Nӽ!#qӅ>6pT?toJŝMieez\1l@V/1wGzzQ˟ pҊ[tʧm^|UT=͂eb8În>-b,:֢,{)`犊'[42re$-F2b6~pB2f9Dq&*Cd{.Uo')?b<L&m$3\&t:"$8Y~sVu^6ifV/Z/<B9&['nv1I|3 vŸ$BZHP7jJ22Iytt&t>}o埂{(#N OЊ5 5l;̕9|95,9aL)׀I=2CV|ߚ2}Ȁ/nvXRy;QOP1@QԄ$ҤX1^XJLx\dO#J42PG/'$"EqEU30e8'Ⱥv$_+ xׁNDTsylƬ~)ܵƪo&yIN^3r^D,2VO:Gxzؒ3l *fB0x@;,s0~ mSAtr.|Z\vX.Y,(;VF!< q(z*/7WlvkZ[ ELa+˥:YF"0vǸ -[xlCrһhF{ÓK 2pG6ԏI悪(QxOV8Ň{OU 4 _.;ބqݛ8oYw,Y dדH^ۓ gwj7 `r)]e:NS>C h-ݗ 1ePKǤn]b"=BKaNN[ mK,ϒ,ޔ"4%e?{\3,'nҐϲ)դW (}Ȣye,t<~DZq㋚XMl]b_bSgIi?"FAo+:z,?`%x,)F5,f҇˽K9 X8n23ʌҺC˔ŗQRB'WyumzD7tb1ےTy1/ VĆ lK$H=U qD^AD#%ZhϜ5G,fE@oݴ O ^7H[2DEWhhW8&_;˲5֡ +OP[ȗAG KS!k*$APZv{Kd2طf<:m- QD(yl5~MmTXn\u@)5N,QIgH$-xU$shOvr(. b. g+Kfe QrnD6roK0?G9geMy;pNhkvX-Shilh+%~ǘO,m["ib4ɗϟ#.u##2Jjw92Vhzw|K*RAFxcݭ0F EX㯔m9u}ztR :*8{3ur?ANTxTn?d1q:؉FeE;;̊tcB"#n`ܹ^4#m2`%/psRASSF]Irt'ް?4FjtG敁L4佢AAs׶gtwn4_)~k{OSD\;X/%O_\nSei$;Y%dG_Pj?&֝5ҋѿ:reƶOj:ώ-?qF3V/ K/S! y%&;G >4BghFLB@7Ke9@:,RkP7Yv[(g ¶JSafCj+nr_L$ڍ]W "iz`%2Hn!j8NsaubgrZ4QK-M%܊ >fp|W5ǽKԝwl \g֣;0!`[MJLY#o>|9tBMWe:DDl98J應G]'尯!mv8xܑ||[#$NU5 %)e$W`u_iYFdi_FHM&I 9vot+"r< ֛h.8s< "`FkiH=`osPq;-݉n& Ο,c#RJͲCޭH V'KbFh v PhH|YE%<ĉ]Ya8:@Zg D8,<e*vlB!mVҁQr9ߞQ]Va*(roWUfsՊ+3| ^0l/n;QEc)S"l j5\Ds|4 zdkIY5UV͈24o d o}Sj"v!Lo$xc:V?rNS\PtA{P֩Ƴ~ yJ<7K)6Gmh!mKY9eI&9/J?,CY<[sUvnAJ{^Y:c-T4 1.Ŏ.goR@CpхN‰sJp;7dZ P~Ew|` O\yvu*xSDrG, qE+$cvN-LQPE)b0PNWVt5M̖+Fu\AsbsGk6[dA7f$BYk@`8$ձ#"<ua}B?lgtH CRl/?E^GJzd~%'C'-y<QҼu oNRuҗSd'|qD5J ʬ- '=ɵ Ky1: 4QLZ/cA/ޥ' "\֕SUYpo-CFx/صYzᯠXtw3ᔂv:wlnYDgبg({Jj:^z )*Akڿ [KbHhэ@}(+q\5E4$ dz;DTk\@LV?Qi#$)Jfn=dys4Oϑ-ۭ8~}ME HI҉vcGa yad;`!s6D\rê9G .-$@)rJǦKXҔ`PDs$k,qzwrRKO=95 |cф3:kDhoV|y >|(X5PhJRgbF ]icp+ vJⳠT*&ۉ/gh8֬a*d[5"G,#TBCfU)L6 xoO}}=F)c bC}B o>y-=Dʟy|FPP,32D]+smã'\*A>3&m)S~)$TqIPB*=VP-x$6pcC~JA%,uHDR)xL}C8JZ*.q6}ho<=1WF^%~ n$9=/ xmc/I/ŐkJ>b嬾Gݺ3CPˀ+{?"9/{Buܔc5}u_ONR YIP)RdAGh=[ݞ揑|dt5%KLuCSjo`bҎlHft*zv[(S%H[%ڲY>ܐr ?D7PR4aiWSyl,!c \:ɰ& B܆fs}mފW?d7ToXڹ~ئ֓ӚN%)lp, I-mڲV~f&{{o<64+ Ϧ6-$`=ti3@ysVg//ޏHZju^nN9 dBI_&w qsά.u"tcRN3}36weO|ne FzAghLeq=|5| Yz) T2X+Dxͷl6{bѺ'EwWk'!Rv0(w&^"%*P$oN߼wcЏ ȾkGh oBfmJ$oWȘ.T984]O8GFf' >m|\.yqEeC:b//k^@@biFi{=L0_M2p/2IQ,FH^[u)?J6+4܀nǘ3+_޾F=0򪤡օG?A%N+5JBXU ߋWF %ydu?k)`~W'>]kÜ]v{\.Ϗɷˁ!#+Hdty&B%1mϮ'% ϹM6w>vTܝׁ؅V(iAx$Y_ q \HiXv&/3 *_0 NǶlJ::>3whvἮBW[MYЧt:T@s\+̕잖~8x qRs- {Az+`:=z{\`px%݉bBbzyøR~P[ᒱx z:@R`nLapdr9ANJc-aá~|ՠR&6)޽oKClV6OV40$DZ@] _C-Kzq{'?s"؇UL|@-4xEXHet7+k><1*)ΦUg"}Dq;WfVM~,͠Lֻ;ImyLcs,Ӽ2J_d7s!7` T _Qx'%kv;g$ @w(FL3PO/*"6M3['CnQW).س )폛hQ$UV`79??=[x4i_PZj$}]\U]|Cqe؏ 1'AیZ0Fς6X(w| ;b~9̜ ;9'b+`Lb̖ɕRoVǶWo؝nvSVjVt(LIw;*e1CP^g-D`ncA,3g,?oe6n%#֌=v<*w'GV&pO ϱxF=u*.a< ^9eNICҧZܚ8{eN~}6 DNS{!#9äQ@v^!mbU,RԖ|] 8=c]9Z 8ص8ޣ圇i-[lw5٬jAd_}RQgB>MdTWAl6 MvBoMC\Pg;u%ms{נYc0K!2SnfHy{~L0rx^JvK2޻1ρZrx.3ˆo;1,I-R˿lvŮScLd ې z_X>Ѿ! T& 7aΓ@x,RnvF;PM4wc0|aʚc0Ux,-lr8ߢ ?{r2|R 2+Ss'Q7%]zS|۰FPRPX?ؼLOX>ۼ:jf~1NM=Ivj4JMC%dp̢i^"Gx{>QH^LO2'p8Kמq##RpȥXсxϪ"[;Qw<˜kg6|sZcXdy;CF*E֋v6zWNQf?]Ⱦ1Ȃg9ӿK롂ڷ^4E@<;n:M);-)G >si{Ws3C,&|cY0  #1'SC#b2J?pN-]O wwq.&8 = 11]b2ۙ(YQ5>R@Bp:hZ\EyJ$s6AC`_{DuPDߋ"9Ծ^nJptyQJsvEG$]lN XL@J{a%p01%?A~S»٪%E)}G@+Z\,L@+3Nı~|`*$9HpʵR }0U飊Gwc`Kƿc8|1I4ZYTm޷ օ}+$FP{n N37|~/4{pu4TԼF9t=[ h7^dХmA\zB>RqljhDA9CA2KCc_,58 Ԏ,5,ÿ’Unr=b _"݊꥜,ݤ?|e^b6ȆiUt1(.U< "iB0+%؟'`GrKSkGOm#K{d-?7d Ȝ#|);}3iR-;9,L9 Tg!`2}gd3vJ [C"hhVAj(]-R|D+\Gˮ l8<9)=*BBk଱ŷ^J5FgE,[52$9 B4~|0݊◥\0^bN!Mo8l^1 $);Jflx.Q3aupt$kڰ8rNm٤ SIk}$au9N?FDb'IhKyNpP0֬~#>c;0п{ӾwaĠ}7 e1d0kq-wD;L$c>4MV[ REy4jz7M6OP[{AK%FRr|&x &/O~hz$ -7]:~.H[!8}fns愃Z2\a-F*3>9{oִbPGV3 R/(usPݏ!yf|rewnzC6 *V oඃG% j滭-ulRGR8Rs+ 1 x: 6ZٸfX@Vs,]tBi>SG$Rvߠlh>ZH45PI! ONPpMmK3`Fƭ!y~cj!LjyA `RW(.j rt^kt ZuO{:M^Vsz߹#.lüǫbZ9mvJXΜ\4 V:U!eyHݖgFs ƨ߱X3Xس"0& mGt 5.dxc$羓WsSF}1  [FA+be%#&fQ_Y&4l0AOq|퀽 k+I0FY+I!JV0VGOh: b?Xam V/~wSbI :*Ť7 hBY.SĒU&mCX-msɩw$Hj`j9ʂ@Ϊ`ͅ?C%$ b*j J,0zVϵk4#/[X8*PP0r0'2xT p1"svA_cBJ (k7)q!7=XK>zA?5hy}>duQ`IziQd6vʇgES:A%jDَdul3'-A`.*=js452|m3ݡ)23觳G,݀x֡`ıZ.pO$2YC(2^vOpi,B$xMg HFcm`E"8z}!Ʈ`p@K5˨ V~It|$r9ƙ\  ͷP:Z ?M|}(ۡ[wdpA2v_b2+$dsWM3-ˠgtլZ=KVjըuXU&/Ub@;Dfo}^vy)|d! 1{xU,G~4yLn}CƫUaH{ e9 if[[l vy}vo*F/x !RI$Su9vtϵyoG\jMFzi& 1d{&^Vdv sH aбEyuL>B$lL*σ ]a>ݟ^,WtC"%Xt:' 'V-_~ yjHhT%3%A%^OT#I[I7\尬z-YK@^W8vP\qB_ZёL%G-8m$e6Z\{ +S,'j5.͏Q:8.=iI4#r mH~ܕ"$u fntȄs~6|"ܙ$M*ƀDJ7b/w Q)n@=??[a͒&\c̓ ilÓe-40'$64=nJfZ"* ,A& P:}rj[Ȣ=K<'50Vu!5Itr|~p^S3 z']Z)ᰫt2dN/S)r<7^l=YtQ& 9Y|QX?֟㙳,xq")kB >kiDSOvbBȗBHs.fNG 眠(JDf|1RsY;卓+k?ޒ% ;%#pEEK@eܗƳn$S kvE{Bv.Ud pq{KAvѼ#r-ØAh?Bn?ϋ2r8a [TKٝk/奻;(%EOZ`MްeV}ИG/&1G k?h ꅨ#,uϗȣ."}0yWIл֜,AqK8&^iUQ0QmR6l>CZk.Ǐv}(P:wEbPy'ƙ) kN,>{(nSIq]yr5IhSkЁ2nz1a5a8! +?9xA8YMqE(MʯW1LqKZsH|9MJ5Pw)N^lD1 uj,ش +G_@Ghx0۵AcS:Λ`(ҮkhlXl pHA~?2u\XIۄ]iyզJg&҇>FU"qS!׌@:@?nY˫Js$*8:idXVW4c($"FE%up,2Q#6i%u86)!s)6{1T0Y'/pT,6tO^)i-3՟%Λ'hPjlzh)J)~%dm?* Kcc<ےY=?p,Yh:ySa 'T֘ =ȖԎ[| ^8"̸mI,i{XB6Ŷ s>`H7SĨls?ƻqsu-WSykk[JnBJOꭝD}Tvܻ6 Ю?7„oCYweZ:tBl$CQ [e V&M?g<_}vW鄥nbc= Cd'_uW! FH!Ӑ}YD`$qFd-BI]yϳ<ºmq (`(Myoj]9sO G)ېsdzVmW5WhϠî +b‹媗^$Hi0Ł9r`./'$N}r ԗ:H,,p?hh~De6ɟpFI g]Q{Ir9bNIg~E˶PG5yhvT@ŜBPArŅOԋ[UkE*;Ětb@:f2G`̠y0˓oդ^YQ "}zL&jhu#bgIĈhV~q?;Wʷ떪8jn&慇1" \2p!x hop`Yɠ=BJ̭;frc008ȼ|@;k*{R79yl%cpeq|pRVŤwFA--l#2 ޲ )$s(/~0Q7ǘwL +91a71268:J}ѿa}x=}1&s0MXzAgE#tx{+Q|'4vW&<&f{~+-TKR:Q,-fIҶU`~ZK5'e}$I  iV޶\2:s5 C=9rldĹ.SXz%^?sc`V'=G3&0t`%Zf s`̋ǀjoU"O0nAl -ۭ6ty)ntM8#ș 1oQ<&${%@]P\ +F@TTe-JHfK^QK6|ˉݛ$N*0KgǾrE hπ]]xD`J3-Dt +fZ-<2,7Ɖ3XPsѱV.Q'\Ah#MpAM UM>8ʀ@Sv~)rz`:lBIdquL_8w,1?+—͵b-LHJ T-/~Xl^[Wagr3l˞ˮr#E ▊V;Dj 3R@O[vluDARS"R-MN89dΧ4 ^a!ֆH-Fg/-CDQhrݷa˹d{&ǖDvdҷOR oYCnMuf@FuJcMEbU1qxviZ(ǫ&Ȅ8Iz% ^m !l?'?tGW<9骑#@-fjfK~?rk#KsߋPծ4>J,W`ԩOj50i?-X[XҹQH 4pK̰ P}r)6lE=/ЃT|-[,'9imL7^uo *[k'"u,/C< dubRZ߆6ƚG;_: 4f/gܜt}ّ`p'u,R ?.Ks%I*.3!Qy5=mޣx fٌY`ײc/J$Mr Yz3c՜!r.GUB EQKV(9ؐ`?{'C]ҠM-HS8+ vL?Vs1}|̱͚PJ KօO>K Ts;=U-SNl-z8;Fi2y;;5jg^Ȏ]Xȩ&'(z8ߜ)F ȷb/lH#Ac؛D}Y\7j>x(Z ̜ph,t⻧h 7qAȱYB{qBx4JsC4v.Ym' ޘ0 n uZtIʶ_О ;q:F*u8)Y:FwN4khک9Jׁk#'0?I/=!8 dN{Q0z}u(u|LkQ8&afYPf\lzM2cQ8-Ĩօ; *y;^ 9i $-m @o-) Diy[FvD.{H>qZFI $qgHCC$NW GЉlѵ.Vt^XL  tWNbZgBB$4*?6'f^K̬[א-ØBJ\#xМ1+ 9'%jow4TFћ1 M{biF-8ِ^o~ĨF>bBqdT"͡K(A0##;x;yM{қoS1[^hGNhEkN񼙐aP"ܤcF`Dv.Աl3y*kWr(_KiczH!GOK#X J8>dwFK'E ; Mg`|K'.uIsdHN 3*t(#3D6RFt/n-$^+t'QۑV>ko=QkqյIJfUۣ3i ?ٴb7,B 52VNJؖxQ CծTOϾ-O+p90[ʞG9u~Sjxxpݰ"'@馀4稍J N M8cw71l/S't%ji?L5OTZ:g3OMq(%"FI V&O椻EĮ \nFVb\ @I#ᥣ Z16cw.wY!h}㆙k0&)q"y{^*\#h_>uѮVo6kBn6c8 1sUX\ZZȱ{"w 5iFc鏭/Z۵ɏ<^" 7%|w,)زivI,9e4Let4Z@ؽI-:#V3,Zo tFa?pn.ڻ8~R qA%tv / Kw,#, 5߳ k'iv_-ד 2͈g:u4g6{y @{";i:c񋽘?'"mf4Apܦ<醗 vI=w(@|/R J>|lQ&À\IY 0G*!bRC,^ʬ:.BU%hԩFJ$wyk^꯴n "$nA&+#`kO} 8bWYRƜX'f@Az; 0iV$F;X@IlWtTa>8ҲFAq1Vۍʆ9u&uTƝ-bZQNSh3O> ӚX/sg_c3HQ^AB^; kR#8+/䉭OZ=7yDMݎP`}?24 .wNMjD2_{\n2opeCNkqUAzJ+&H![E*sI:^Տ,Cer*=:t A@.+Q|ċ`3O,Pfs%~]&n߈pUʈq@a@\'Ӊm}j Z/kk4 Qoe)ć]E;蟗g4V;/rddZl3Cw(ften2SȈJfM pKnӬ؍8CU5n_ ,cDdR452>)m$c l!Y|J8N5k649f%RN0bHr^hD}P@2 zu~bK zˤ+bEecΣXMs}MYF\'C읛 j .5!鵗n}?NgQ:|&ebjb @,GL6o,X߄ &&WbYvQ˕G`Y5x#D>N[$NI{PvTqhξx`'m >l_ ҅zU>,uΏiPgG1 ^4 H&1ڸGB(Fxe!coq@ljwGvI(34E[տK-QtƝtTۀ LԉQ*ZcῧEE&)bn_] ""+9ŗjW[UѨW%kt̀] E[˚6گI(CHٽ۶0,] ˷q),N0 iOT4]sj/%0|֥.8L0.QmY/"cv*hh7f^?8e]&F08QB+_MIIărT  F/e ζo516KF=8!5}me@? 9}˒'֎.)\'VGt%1Y CA䪴W)?)5tSK?$NA}}H'U}F(Zk& ֽgd=iEfIM&#%{󹶓O̪B%0>BZJ,4a.FF>L)ܔt:wt"ghp1&ۙ)bЬ7w 8~CJ~87@)څv=fAP8(1 2O4jNNb @B#xQPmm|jVMΣ*a:?7"hS d[߰}#N* $Pb3$20v 5q%l ]mY S2rm@A6dЌRR(%;j-eRXx)}܆ {^ƕЕcd|lwS$0$KnNBUD4)zD\Ufɡer}/['{Eh*vaqP ܫRx 6<ov)LPy׸S"v]$*(a. bM3c.;ҍSLyZm _U_/p;a4Gq]ljW4t )\ns9| ̭鱰 RY\wbCdsTqL{H$ūQg\[|a]ȱw!BJg0yǫvJ 9^3<KC=,[ JU"ӡc*ՉJݘ~?"?ϓ8vtA :R#p[m%S 3tC8Z{g,` ذ٨4/^ki.W0Jko(WuO=&l["&3ɶƆ͚o[ɝ+VQ $S: c&}8|iܥQ_S75 J <Ǐh"sAHr /Nn|W6z\d5CY(54f%˔[Fd0~YAp^YM',ɺN:TNW,E_ s\(,{<!Z[V=T+@cĽVDFWҦÛF9VYsMun-i5D4^!P&M*W/e6kz*4*F;ེeNr9 n1zɫ;V(M kH)[ΐcef3L}[@xUZi V`c[|k g߮3P[;w8z89KHd rmMDxtI>O =]XTh7<^MuYޟ.Pm -/a9qQyG|H<=02Ԧr(mJL*KZnjh"r'M>C J9x:+buYceB qz q_2VU*] _'F(M0 ӝ}>\bT~[> n"j ̊^NnQoH>BHgfRc~~lP`/w[׷2v7$M}I/ᕜ}["ʭ.S#~-ZY4 1NzNiem6)^,>A-=4p$攫U!PQ\9}\}˼| s=3TyHA]@Xu[8) 0?/jR;ץI>e@ z 'V̰DŽ^h&GopGppǔa؏ 'D)4vA (R%:PQ7hRF3sdͮ Su :DB2z+~ܙR?4qS3(a_uQB8E.f4Y. 07%{ńP'b{ޥń8ZIYu:0mפHlr`cٌh+!rBHO͜nn1GąoY|6w@~jm$X՗Ԃ =5sBߌ茂^Ns].)mt. "†u޳ Csu?1XQr.eS L#4gY37KO(oaX,˂V˝[zRDW'|O.,kwH;$\tHW쑚)'ݫ(j }-JD–cO#rCO9:SѮ"{PH ҍO ͧ*K' tTT U~Hɯ[43wV-͗?(-!Őf386SJ͘=reQxRGTK'.f%_7 )Hk49o jB3 PJ(#X 5tA@ +y |zTWM?3\qot *Yd=#[ 7nHJ8 QGZ◑W "+??ulJVY53Gǣ~>vC웾 yB!66 xfK0][|37WVIZeE&hZ+#OT/`cy(8,jq\s[uPkyʦNj{JZ1LD*ԿU'bFʲx;_.9n˽Z]3531JM,~06͖2"-]"`R$Syw\I"'s {T|gꔍb3Yy3܂ )gbU]j2[hCpI؅4ݯy[t1t l&*[QF)`'10F󄀜to~E|Uu0s4=q㓳\|qslInfSmp]:T,eɉD}>sosp^$U%\umS<<^ki! 4{FQ25AHC#@0''&yhӖDRPl5.G5ȇ(\>˒$.R> ֜։v3ȷOi;5Z:LG޸ (sN|ǐNgGY_RdG61YFd` g%CHU\-їy}X1"RWϻ9ˎͱ%OFг )ꩶ ko oCMzS wi__,5OTa}x4ݓ m{|8 ݡc:πpm:ry8NK*}$Ɔtj88s.Q]GX=4k$4ͪޡtY{d[BOt뿺*dRtl(' >d u%R’ $MN|ύqAxfFk Mts*ԏ>-(%וX[\WEPmN`zb"f9?^˼Hx,!f/b)ˆ-MwJZUAHoTftb݆Xj{P"c.xmpLҏ+.mƎ49A*AX 6Dvd ܖʞIN̿H?NT\|!~TAH}9\؂؎U YECI#?80qڹ g@/>-I٫;~jWS7Ҿˊ?A ep1Ҫxק)k#FvE^.G} V[&37gsj%~+Z jx,Pȳdi|q3 F' JW^?Yr'rm@,jA%sJ;O|Ӕr>%G\RB/[ V'Փµ)‚_lXq Fkk Oߎl[Vq7.@#&1s'qچcYe7]"7N46W2Ihj^ЦFR.uv6 F%JQ=^qO6Ĕ<*egE9,jLaF}v ! +u<3:(\>]EG47ӣ/jk8bJ3ww^dr{]gw,"IcDs+G <2Cj,1@# NBUm&2-ӦՆ_{tXtd.n^L;סx0aZ"Wk|^L_ w5tyC'ueKuB1Ufa:u5,tFe  ~>X#ljXLJll:񗧲,?*ם <|ΥEx <fz[ʉj!y_5c$v!OD[T$# {ߥ^.tzp$"topHe˾Sǀ N52 x*ubǗ?|i\жgrT/|l9*@E<ŀP&=϶QP^rϠHL,dFf18"UcE$W @e o.P!i+=S:fX3BTיKT(tiLX?T+FlG FpqQ<(X>yRR" Z2?0#\;'eCc10G!j l Ө&[S(UD􀗽in]YEP 7q  drQoJbZu2q/"sef!%BWNVtE-&Δsna*qU 7U1i۩t\+'d_G =J5g ~9!`yn~Lj&#<~?dSJ P@X@xS|IARV{ q?t*`q6xv~E&A).y`\/{LP[kK IIeCq0>Ѷm +>$-Q_x]4ɱC5k{CD%RY2:adÁe v'\BʎlŘ *$\ߟ8O6ɎxO01TЌd !uz([Yx]*Op2t-7SV+mFm^u_Q כXqljRGq8cd+$;\'Aij-;l|tA&@Danpdτ y4~Wtn >7[}XǕi [C+b8Bmʪڦ^ S+7Bz:&c[i;5J dsd0o35 Oq ڼC ;̴ZrnS,WZ`MKn;Oϐ]:AKqxAunx B.FdZ腢33`f/(1W+ۣ$3:pF^o` K+ƹdԪV|L2"s?9MG{ M^xI2(}gKC KPU`~-UⳈ#K/KeCJ2]0E$+yZR4THPa\m7X'VɗNӥ񢶽Γ-a*d(NdwnUʖUd 3b*'DmVn}W:+Qיƕƌ ~ F{q?x"/c:|`E#l*U =)l7ecWw]u7JlN%wivBh wX*TϫubԊ?NDt3<KFH X;*Φhɋ%Po|"Vp@n[ZCOPB2g:7 qXmrY\ mSrt |?3Pe>ЭW-6y]s6nU 2))@ Si*6eO`ЕX<S v%h'5qשR$g#3Ο ʵO%e1aNl+LͬQCx y}`'k9Հ%wGo) Doy a5eB6_1 JV7\Y);&F+QL狥s+}NP&VFG:e|*!Fܫ# W BgZСN'Ŀxj\7vs7WxbEce/ hOYT2v=6<3R>'c8&z (h4m'ҥ 98Bxӑ@ Eأv 3 ^K@V7S*=/}DiR 0#Q[-fj:gֺO}݇d8y֬b8Q/\_HR_E쎡)o;=L94."mb1QDQͤN,Sσ!zU@bT-Wڇ<ϽR֯MKe̷j 81kuO´ٜ mea*(Io |yߩ<ۍG+af˱cw̶"rD&צ}ů/GQQSC)a@&K`̝ċ!8ɄY -]K1="nð$F?nգo|g@@72" ۂ|X ]>+Q~_˞mֈvlR8x`'Z 1٪u{\x"?X E6ON]8O|ڮ ŵWjo8fCiW8vNd+1XݻRO!(֥\,$)8BE%]lri*32N@/[0{>|7MZ./:.~.}GMqȊg~o膯C~'~D~a_C2N }To ;E4?(-[ mYZ[MF@e;]z-Wih_w6tA.4DfTHqPF SJ-YM~Q;54u=?P#]{&,+ASMKe0 v.5bx*JXњ}D=v/Eiʆ%H 1ֹ)c'vi#emK Z!;)DŽAߍsdS2vrƖwJwEޢ5G}F'F ++hS,F2TB$=)v7W X;"UZ,̲s^2L!Ɨ@J 4A'eN;g$΅d{GK %]K OvV P0B!-ZwA{\- K`9OӋgl[6HUfI 딅ۭ{H"*h\9]ӕS‹¾ ɓײn23^dpr-f8>rY¡< 7{%K4 )$o.,΄JU3ٞNo)fc 2)xdžCpUTulN C2={mZ[4_>kY<3iS&#W~s9L~V( g 6u5k̎_|h[~#߾B\(eoaXnrρM: ѯ@['L7ufsV_(&%HcXnfe~M1**d[^@w?x>Z( ɶR!y7HRgqFnEin%$ <''b\D)%7dA#TB8YYMl@٭QVjb+C,~ oud5;=,xsp "%1*tQGl_b3S_XS([I-<lƒG!η~:wqU   &zP*4_ o^&cZ029}7 j_sfX gXP0h pTgs3;H~a$`'"I\x䃛7e9&{-l=|xFGΐCqbkݶqڔV "`mceHI!Sw83SLЯ# [ЕRQχv0p-~óp\? P=~m̕ QMz& Rq$׵if } #exM )^Fk [Hv4Q;3?ˏLS޷ ('m!ı/T`dl)e?yLS6P<3aw_ ?ioE ¾T'Yũ\v5&ngy\tIJ1SzLײ܀\;@$Z%}cNi vv$ _b|^;%9wpwc ~ TA3M>rQ1Lm:O_ L@Lz;'{ q(y==NW$CW@]'O_VN Q]{QoBtFeRc\sm 0 E[$K[y&Xb \j`U X6DtW*3w~, Q dKoxӉ4DX6*с[a4IT Њsu:Iql $&ñEe]ճ;}VzrsGvcL+=$ȊqC6*sFZzz xQn)D #bLΔōkg"RZ܄pK'q̐Nެzn!A[v&x[̂V`vCIpzqu?4=wpzJ+FM2 = N9IaE8a!kkG%,TaفbGDMlH1t-Uv_]q6`OSwHUB^ ZR5%a*bnd(C -s,JO+"3g W2{o*r*]csx^LSwc'أ4הQ\2dK)#^A;!jb\]Vp"_A旜G“Q#`ނyeIwp#< Y u* <'mϭ)$[|^f_emYsf{.՜Aӱ>dl5w ®AƠS33Ѧ(r\a~j2nnehd S<ι68QPA!\E,RIua-bfrBr.nWX2|ɺT맕^63r/ ^8Nl0z!wWldB*hh↵27]ك/6a(N*?Eeqi/d |~u$wFtWee])n?%fНE2c<4s(~G=&;Af]&>E#)[ UnV !Q%L"}e@$%{Ap}ژu}"IրGL\,d]{)|WN"ĩ5?$T# %& RbMRQu>=2$uDPi' ‚L/AD$D!_9Ϗ{&lAڠ6~D.PYE#ѽסCѕ< ] "̽U|65eݩ;4U]D7To'l>n̜jD4+MfkJg#jОcV'V{fgΣd{'0!;^eOL2%z(KkeWzNzYB|FRꝳm.-JSh0xJ>!M'ϝno>@U>pC.ӹ{bB==å&'!UD}`:=P{1D; 5a*;*R/1{3/$21"R}Wz򳕔,FfkWLM]ٻ⹷Owܦ+dCOQ~Z^y˳Kp8v0Dx[(셈RW*(ݚS}}/s4M}u)v&-|t|;Lp<:ޱcJyɊo3F U1f Ygv3C?/,y .x< w|∸ySaCX0j! UeM+BѬ{߉g29cbnL9k@?[52Bn5臸:X;Z?kbw\9|z"KE+ߟx8ILu.Lw"8~/b9 (w(S{?E'e>3ԓXr'|?MJB]@%={/Ȯ1vְƝZ—?salBA sZ {7o;*e(,>M*i9hnFSBK, 1/7Vzz}Imů|A!rÒ)`OgοqHP[0rlYp:f?s=OR9!tmHvP͑ q\J\q3"cX?t7rJ %HA| W]~ܟwaPQwU~,.>fEAUrIptx'9B `.*KA]J~{u Ԏ}[}7K1B;aQFɛ}z{1D6ԝ[ <>Յsy[` 7qHh 3LyvJ5 ~¡E?*j qe)ʠzf\ٯ_?n4_E w\q4&E[mpsmU^1}2/R:VCg9*]swn2W4n5}a~i}zsx=DH%v+>wlNE7`&e^+j8 ERσGQRI{rᒙǽSeE)nG stӖ-4YXܛ_Y-:.CosR os*j}uQ& JCaۆzm;fqg  ~-xrc.jv%j @~IrQ")6@qEesYas\w~IdL\  eʋfj@ ;cA%sg>䟜~*3 溱_%2lj_i>1u13k5L[j $7ߋޞkl1DO=K Z1+ńפ>`vOs_DHsvO}9N#e0Q0gv (3k*2ic;t3mḂC9" w>+#Y'R}|Hۡbx҉-B'zgղБ´X pcA-5r$DY##奷#d S@KEk3(o?)YC7xk0@d|җ\s"~1tO&uӚ@rԏ5Vdg`vg3yDztMvseU8³iG=aaP*D[xYؖw~N2:0<،!ն^3 @ZNtϿKќ'Y.P'nqJ=o[POG"GG * a.%~9^ )N05 R.@:2M41gC9>d!㗸7[N݆̙*aS,<9E8% (ښ C_#-|*r? ~Cr iX%FSV{ +x qū?̇ؾ'=N$뇀oɢ3&+|M>5mFWbь*n'aw}bHubP&vtU( xוPup ZfE H:(pKκjZl|-S?Ǯ[/T;_x0NVz/w1' f袙b$hyQ?-7 #2gܞs+T:1$auz>kdOH7k=ڐ*?)|L>ny|Ӷ-=*P9ZgQ\"ܫLl?ZwX&atcC|L_Kpru#KDB"lrhWsyp"6[X')gm.7G,\BNo(HV?r=׈t Hu>&Xx]G?w :yƑȃ=WRSi ! F  kqHV˦MР0Ν&3lk˝Uq#&T$k%7SK}8_I(tеB|kF#_sݣ&Є+fDЫ|ia'PB@Z˻d8-+.pq@LF R~؈EܵaG&L WWU)> *Y ~ԥJδl=\DyBߑ>!/ϩ@VP4Vio@-~Vsy3.a 9*+3VE]dJTQtkxZ8wOt}%6a\fUqH=`"s!&ܞ]T΅%t5QW}O|TPLͽ0~R+9 8lJG=!>%w#!UL\Prz<c,!,s%,h kc >GC Gi> DQNNz:}WHሞs/b:*̣yNh̏B|i%_rnF=`aT泦ֈfn>%%1c`SeMP;n׀!(yz0B-2c~~#Sfv#l@-sn7)YB)Ck$O1Q7G'8!\p+9 ڪ؂:j'p(auY@J_Ywnu@QpwqA:Ych$>d7gA+eU)16.\Mr~uXsC7\xiPych: Q>QQ(ѸYkltp4m)QgP빿FܤҪ03 LSJXPeğT-]%(D"F*c@)U!Ȫ5k?B6h$"mYZ28}VA&rtF,jo`E~Gv-u[\l-A&ʧs}hdfD^|dxBBϭ PpMN ®D/|'6#?[֒nxOr֝Bf\/lu.dxeC[gL.Nm(! q(,>a1уHȱ]p7P~ vTX=C"!g"ő]i͜$M9q$z_ͣV3<ΗYS!cɰ7a^N}(RSZP}XhazfvMx.jyG7E#ujQO ?Qa aa sI~WpyUI")^0_l\HmOt1HG-Nd&@l {+i6ɱ?i-%ʉmq(qes֏[E#sSܴd_ϸk BDMUBO;_3硆> VTkRYԱpIk̤ٶADs9B7J?x!uIDiw ^䡥_B/JqvզVGq ip#rc4ޗϴrJ]3K443CTg.1hDscRl\PTC!p0/,_xraLs *CK5%=e$M pٮ50+iڕ[O;tå8.`R uJ"S $bYdǷC \9GwZFSy<ovF(2%*24X>ɉJD~h2V 咱S;՞9eR\0={^^ΘX#7yMC=敝 yǬRK:Щw7 :hꞥ0yC}6 uw0*7-/<@#$9g?MbJO+qcUw K=D`Y,?G(|RiqV@E Sf\H CZ';HH{EߖtB.qH#pW$hM[bP&`}fw)RL~4à2 }b*3Yh_XEy󩜤bih#B!g>C Yo@(6D#ͮ`> .RڗiSrM(G Y<&y_⏱nUCWi 4~ ±-Nz,5]9e/PA.+< 5)hƩML͈X(T|UT}KqA@TM@gv]dV ̯`gpF Kd-y~eon݄W&FMGmCY/4*Xu@`GZ2csOY[/ U=3"˗^ .+g4Kn"~ь,VBY8ܥ957bLm.E ⺢B3~,DEgS\zk]U`]õ0(yj_ڬ-o&Q۝Զ=5 O2ƹDI3ԆK׮w\lODj*to\g;Բܳ<ɥaTicVߜUzuC7e`O9vSg|"AVyk|erfOHF@񿚁 dyHx=e\6RzYd6vyw9)@Z{?>PW dj$' D]+IzGBߡ1!. Y0$#%$3eZPQ@};;/`fS]'Ό'9 k5eC)?<]~Cwc%1<*?wb2ij<_ {Go%k{ 2SKwrhoOh- H'mVBىt۶5Uv|wڃZXjeRJ̀]GW|WևZ &n_z>6aP'zezR% (_1T_$cwkoCI<lִ>4Y4&|~kǤj\Uw~iULsyjIy'*״U8&-QdJ3g+ cUSSg]] 4ex{Ԋۄ,Wz[Ҷg}' j7PR}b1sH|1 U 4@|ШiЎk5 gx\fd=Z&{-؜څ?ADov&ـ!=X$wĹ~f*/?*;R9 h\yy' g-0@\%O7]+[lIA_ݚWLT=s_ۡdpUb;tɴz@Ŝ %.m\)4uIK.~#ےD!rizXh.[0׾rl9Rm`xS>Nt!OqtU 6!Z2"JwW- SJ}riT&!xCtkecLJvVjPf2@B<ׁ~H,Dù~i8) (Up,4e'-ݠa 8Dlk(+w[$5c05"ynsʇhұ9ޥ\TPJXn9U 9 }A(ihHS~P9\&UR=~<21aK+) V5W0>b)W<3*q+uEz坧MF*ş>&׋ hĩnM_ʣ@>0*33xcLZjh]g^R.|B,D ŽfkD/km h?*plY@Q@}+w`'3.بP_>ŕs.*F cG%uwIY7>^ XQn#:h=zV+6pu<(IE)wPBJL8jQpҰ*~[@̔> bd>B^܍ -<=^횄a1 ?Q3:`aIk V o+39g(roV@)%gqR+ZT^ +b JԳVsrc^?F{/.S+8/+ע'ΰ}n#0A\-/X`"w"73esMa:u߰ѓ]Ҵ_ų֝ϚaB0Û"nh,*zTe:ԁX kh?Pk^#8`;o.t9>$gL mRu}p燋)[ N4g.1>t0{Brɕi 4.K! ?6ɲ s~P 8 !ь Uhм`Oe,T 7ӬgL]ULƜ 9Sǯ Hb(tU΁`#%Dk: X]/\#^ʗ)uQkc``f_G!( 鏆M;Oht^Hdnೀ=q7'x|$ |h|uHVڋ|!+V͚8aT⟪a_I2M8J,BekJ{s6J6 MF B=v}勞1iEҋL̐,0OQk\7RΞ,q{xKEo'B TN3;'* Y5ةdxA'퍙W9ڱ郓#2`4J9_Ar+^(B P@_*uݘ5]S;#,溒"ˈBiԌFwRòDk)E~LP@>2t=o:C{&iB Hm&ޖq! $_pp7\ <[dG4f_'5rvI;%Hُa_˼_ڿu{S#YVSɟq}aU݆P׈[5vd0:~4R#>p|QI L00vsFbZ&kmXѧjT_X; gPb3F'ߤ)Q Tn?_ Bc,P)VGqVj 7-lYQ59z?~˲>hVn)?>qۓ@0X= ?DD $oV?GE0K+c J ҙjp$hA[g+?:yi-]oB,wH?{P=0۫%x d Rg-8xC ~|< ZZc;Y@7#au3tόqͿ-7*cҠQ[4XZ,w$zδ{~ul^L/xgB< 37ܟOU!6'ʙ =#zݒv#\l\"AfECK󩞽r@91ֻ9Q S~)V+JSgJWn_WV1/\|vԋc^j%y21!S]|]ǾC| "yt2hBT7ˆis$XHfbCjnD/W>1Qhe" e1:"@>I7$0eQ(J``Px#Ox+8!Rk_Mle,H_Om4LフEܤ<84z0VCq~(쓟BkŃe%ɲ(Aصp)$OmBؼ"Sd,eo܅ؓ"CO1m" k+Æa'xOlƎjJXC\Ur1$P5dm{sQh'tӏֈ6cUVu!\fp- MHzqث犏"arqPG !ߤ?y(yEC9e*ɰ6cj &"j "K#VW=FH6E*P;|O^Wǭ`v],$k”;VU =23҄)A _b5J*D(W/،1{!`(vxwnIP%rBAh{IZD`u3[#vqez8"}¸+@S,ٖR.k!*a 94TF=T Ru J̗n(q`R٦$T:Ӧ˯/1bqC1}޳G_)IOh;HXtb.i!$#4.`͊Ba兑çA gĴE`4H[ th*f.8֎Pâz~R6RMIMW³p[x-|ύ]B)=z>\=#;U[ebNwGw*BhT/1e }-lB?_2So-`H1Z |2ezp"1C\WMv1c|78ڨzWWmlN 0'[Ӎ94@zx}Ћ*R@t,N9v̇ޗGCjzzĸh/{qcz9JU85۱ծk\/N\mkRWE^wJh}}(\zJ{H##D'6Cq$}( Q0ei 7 8/O;/jR-JS,@p1v}@.g+~Cdi;6 t.#`o4Q1`N0|ɂ 7917VQQ,b5) qt| JazYj|<:USڬyl'q'?e݆$IRbyA]2]+rS4StM›me,BFzƌ6LS.`:J1=nl!Sa~.)$,خ]x%^RF4oP͐Bŋ,ȋ?}0cmrF+?ZOb e60 a]y+D,b~0i154x°Fg,MkAWPA~\X^wuJլfT>@C'o0o <]NZJXc^ۮx aܾ* HfIqkU!v6;5=j.xֽ='l)dT S`iy9THHB6acExA?$E/Lc*HiDG~ؠ)zRkլMΘ<ɺL/"q~$3n)q=-ivoڒgIp&X;4VƘ,g4cL`!!=շ;%@pYJ#XH򳩧)IL z;WNҖa@ӚUv Y?r7mz,.͍!N4gՇ6{K- ̓pRo4hXFx"șK#py75FN{U[g8qV34=r ?8w'j(^Bx_*5i.l^IL]QNIT⏛-7J%61  2zy.#p%t`7Re]AݨH;u8o1,*4`iw`'C@6=)Nm V #bH}qȻ8(CekKp#p;7)bq ޭVvCLڬk⅐ {a:.4 LFm{KRzWoN4궀qT>Q5^c{~N!pj؎Y',$$8U1yOgx?cVap)AɅ48"[7,X{G65cxlil…ĥ.4}ƈf$,qx:[#L 4€&Rե$$C;Rdyi: hI}=K&,~FpBj"s̹n:%6y|-M=ϭSҵ X;3 I~5v"jasz7xlaz cDϳ\w܆L|e0 '4i2íasHR}A2p3E2ߪ܌mF"oP"n5\w &wnjoF[ۏOύ>Y)1Jq~J'aS| 8{2Y,V"W7r*:{S no>>g|#0j6Zv{(Vۏ\4޸/[綗jCϰuHm\9Yd`"X)R{gGyykbؗ*Cx"ᓶ,p,>2.$M3HϾP!K;~<׫T:l%sp}2%ӭu:<bFe$ &7tfov̠\<(:i@Me/sT7LS-_4JD&HMrex]v)Qs9}ei*2+QZH=#Sik꤀(Ѻ9`#lZ0ç9ed;&v#_ idmXCN_Ԡ6ppϖ/n{op"C7LieOH :;T ZdW<(궇_|eϥĚW6~yS0`ж&Zu*`)\u{,j:NH/Uh fA&)XQMԾ+*llB.tZq$&&Mں0/4Hz4, MdfA8 Kz␊ MZcVVxzZy:C UW%p/cfdR+ Kmku 4&1Xp]b7e}qY\`T̂l郯@VqL@sulj8ޥ3[sC䂙X30>e>d~"?C\t1CDž &lɓ/km+6 ܸ1(4d: 7*vɧhcI[k\O>ѷ3 RB`L"n3䖩;C?SϒꤑL1e<<)oδ LITpby҂k$=FEp2~+fDm^J2uZw]~O^a|NU8-bxAQFg`41(IH5?>{Oqɾmv2 -aeJANl0@f=_ %ġ%43ijex\Q"A]xa!ptIʜ43jqA=%xj?IͫQdHݣi^ƃ :죁čy'<.8F*z={kHWU X\&CuP(H &,\2:~kdbշ]^xk0KVKN?N)^_ ^MYK {E߅ǏjGF`%0q* Y5cJbJ *O5mVb^B?]7}=QW{j&Ԧ~y(ΥWN:#_݂-GU۶DS1'Mhn q棝. EUt_bޥ&x.g<д.1 ~18$u#:1ᬮf2dLak '³Ȝ^ޙ?&9Tʠ]L"> ,Q/%R?MyŅڥnQ2$٦X$-?5e>Pc_}I%qIdo 2WbfQÉ*TET<]W@͂Qȶ&']aZ n\G)ۧ&c"[| .SnWMEU08ǡw4Iʑ㴣M[7BOmʘWv.j QQ~[@g'XOw4z,4=n1 y4`SғYәHla ;AV#HGjElwʷH0LnC '"YsRdI32 i ޽ \^Yo{ ~䖬1 Wbekč]GV?aR#0R'@rx)9D1hi%J>w.nT3amJO[軷 th5v ۆW%M`6q&I.fi>==j1#5<]wvW#i!RWd6k?#PBm7m;{uvTh%,%Ұ(DC~da>"܄L#,Fө: 'X`}p^Bqǀ,4qt+fZ4Qf3D'O,R<'ˮV\6M/қp2UbL,֟swc`}t5RL8] 4<~8U{e}MrLϯ=IS3Sl*s>V})F<@㥻yh9=j1gxghYe'2F5NȨ!72pI8xn3\#\5OO>Ay3-@'Գ&;tE"ױ})C=FxruRlؚ:/z(0=DLbcٴ!{:j^ҥ?k!YjȲ33ˠul1lyߔ|)~#ԍgAܳ^~+Q陻sj{j'ov3":Spla+EG쥬g*aTig/BmkdpF9ɾ# e/ x 4]wݣ}FTyѾ$Q"D2m57i!9~P턎ap;,pW7_EX4 !:#E3ĵ}ŨIOfG6~f.7J=,4k\XptBf 90A锆$| [(uz13E'xx(oajK5%ٱI#Y]Dʨ|eS#U}l45uJiLO9IVx1*`r~ת7/coK[gyA4Fm:-][]V9GdPLJ<$Wol爺}g~:(;]v%1[ .#U]OoN4}s2%!mdPdŨXEr }QUk:p~rX]WGc @GVnO1 0le^j*_G܂5B[\$/dwAǙ#tmڞvaA ܎trTgV6F(X Ӷ7M Kݮy҆gA; > $OO1 jޙC3.fţ.`*HK C,K: yJY5)A-'LV(ˁ„,,%b+cBsD6So"^O*PQ3T(]Lꦖ~~=Qa-\^#e$ XaBaFFZ&AxDK@EQe YZWP=^AI80;#Z=l=(d;ϱ?ݜ5Wb;ֹ mes:$X$ zy ɋ:O>O! &v+eꆝk;'%F#0gz,ayP+?j/\ys{-9Vզl|mu>b*(Htssi_<%|i/0`m)KZ60-ޣ?}gMܑ5 8$*6OH4bhQ%uP5a1Ix0/xXeװcFߴ.d-}ygl]g>8D,$W!9w'Z|=;C_[c|a~~Jꫵz #N $cMlƬ"2QcJrufHXP.{AOX"V$tv&QmA]hie5wk< /Ki 46Uצ.RH1=Wⵓr(& yJdzpJTYSsKυŐOÑ}}?8>L|Gz/N . i,]XE?;Es,rqY qpKs}y;|"HJ|81$~/TdK' ՗ل{OvPq.U f_9/w\%!Mƙ1}Zbd 4n"Pҍ3pjxi 0۴AˈBZK9[(jHϙktqZaӥ Ԓ>(midwˌBed4|{jPITi'TLU°j7$m ΅Hta\kIcV~fN3 e*ZyB[_5x[J=S+*j|ڜ n]Yd eOq oWY'*AIVA~~Ϛzt=dD4>bGk`rjmէ8Ӯ@9r ;:rNdKuՒR"(ܶ̀j]2tح3W]5L6W/%QQn\#U`b<֑Pp{|XeIW 4=0TtE:mn)h寗_uP7(.Z*d{*mn&_n<1xh;9x $~R%ts{m$[+Ta8KGP^Lvv͍<ρ\\Ӈ"TFTv^-.٨hc{vbѯAjYs4yG!lYiNmj!*BpZ ꂊ8-|r5Zl-Yĵ¯ ^seF$Q C0MN|>2Rǡ>w2"PNau:37!3oXm6mw ×$GL el+(RD扗BA*,8\П-ߺ ^&fe˜ ӇFo Qf0 jC QZE+bHBښ oJ@%sÃI@^_I**fu̾;_|Tvw: '0FZzFAmH5R~lvn>"?_̆kla~dL؜?]Ve+iZG;iWJ"xwsϖ[QZV?MC$leYɡ :bL\UXzJ""XEAէ<*0|mLZI#Џ^x(' vW8RqJQ' flp_-elk0G0wZZ*o]7+$u+:)W5[RV];6{iW-br˷ZQS҂_!s@C&&=hBeVhӡբ =1EvːL@ZA*Hxx{nGHذ._QU1tU>2/ M&MI]GzF*5cV`_l+ՎeHF%xDE8Hh;M{oǗK) m=Ӱ ^Ĵo ePD wsaЊ䄝%fG5<2vӵF["&p{Mέ0s|EO'ert 层8avXc{/y5'~bypPf+vԴ~XKuMumǗ0s (Kl(t-,2]:a![,,mvkd6 yZ>9HdH!2Y'@K>ʞCm6`G03rJ Xz|2-Lm1]>N@"B{}y^ƴ `BDT EmθbQ(.rD4QC#qBQ/ͯ٭jrvFnAm]1Z!aFdu g =x}Y}/\sm !Y\`2HI KkgKv5~W 1ēU ML(.YQqa.N~\"V5d8) Ob"2__4m]ՖN?,VI=T8uǴyi|哗%&E:X3y'ڼryshޝrPFm>ϬC6CF!J7Ίc@_(RmN2 SjR,/l؍:j\p5Uª O Oh9 ӱeXiF~d~'eM|($OcXp .gt +.ձ>.T T7t-,:if'[QҐb@ ns+5 ׸YZ$p6V͒q4s r?ca=Bc"T4gy(ʰIpL5JjZI%lN2 A HgVjgVȣðIF^E_xB_Y:T/~ai9{aO>ji|l6I3]@#THRpthS +iӤ!))3R%4RdSm- K*ڜ6j .KaΗ/oz(a@y?{dx'2[W8S&z;nPp| -bYFd69[rԼ\Q]8q cpL)DeL4jഷɜBV U.cB~mPlǏVxz;0.|ݨCYYC;:O| [ksnt)vU@:)8=+=oxݫH=Ny=pW; f>p2S  Hkv.\,C'CP!;fr4ܩy Rd9Yk28~ҿw}oe 1GC-7g%IauƘxnP;"W?_<9\MGQi$Tu`]5҉Wղpqp.6a~vO7\ !dc7-I94:VXw--~w+nOla\Thifx"y1t/it|H #+HԼZĶM-:1 cKE Ct;]O`&{WF7h B0&i c$kŐHCnޛ{ll.PJpEGMLz9cKӥPb󙮆'JkN0z {a3KoŬM㘍ش/@\a[.HrB>dL@/E$]8⵸pD%X8o9?9kf,_L6~ie9 b!UTV fJk3( /#-V⋭Nn>3O9E%Se`5VK|va-By}(${mbaw#3jD 8.?JDAY'RI@5 QLKD*A"OirPvxOhAe~ a&yA uwЧdm1)TP~>?5EȊQ)\!"fr[+<"psc~խ74t6CطvV E"$21TXݴ6l$ٗ#PJ;lhۀ EEoCO^' 48R9SVaٯsFCd)bGSB,-Ԗ5F!Mݢ߇1_p(5Y3T_a!/"QBܥ1kgׁ/ .5tv ,l͜k*)wrETR>SȹNRO^fh-7}f0meRGbfNyjRԨKw:6pgf}q ,KKs\C,HFڝ o˕u~jOC X_'d?ٴ# 62^srmFw_'%J+:W; \*5?a+ h<s@ΣWް/r4 Cv{T=4 l;>G%2Z1H+&Sn|L yRDzzuctұγ\Z:<*x+YĶ!pRBO⋽/ϩRq grX_ QTe'|)u@A^F$qƆBiWtdl~d j#BMꬫk}-V j-B\uKGܡ>T|aÎP8t-GF/!k`!)}s^; ¶L{kB nXTU5Ъ{k"4'X}nBe:?.U!<̈́ Hbmo*! h bUH}ˍb!NDq W!^VjAR'+إx4oc*"#fEڷ!9A>ߛ\&*Nuتd4v)!(1ELʵy$Ɲ~Ihk ƨ/3#p^v9fzShǃTUfa۾QHCEK("ZACxZVh~"CӴI=wcńyoFГ)* D#mRWm Pv!vmWڬ[9vQ^^c`=h.#8y? LF𦎰F7%Ӛ)Qbތ Waq̞7{'a12>]>F,H܊z:.ТjYŧ#V=u;M,@ $(5ɇu)wӭ#=K%ubSKw.ow&1U omL6w$jē q;c8aؾa0xPe^*QtgGuR[0e,jغE}di§(1܃G|pРڭ4 00zӾyatIF7 O#3?&=PˌKt=iG4 1H Wa48|:i`bɜHs7*wTIhT{5v+!EJϮZ~ uA٬umz -fa_:A[uxbU:*|@lRN_cwTb,:܉0r=FiܭU,Ul&X*Rw#D*i^U8GXLMk']<'`ʡ}ɭ|0PyEF~SbF{ %xQ8jkE7>prz({[1Dm K]Bl^ MSוgIFCbRSA@ ,e{hL&cXrܗq* vyq׹a)M9N܅QqT*xȢIf_vcEF8VARڀãu([_om,%3Z>Sl"wR)?\d/ eOfՁlL[bu6Z6CtkկBe\7wpC\QL[_$(HYՔ\f4INĶ8v. Jj1-?FuSU?V`[>¦S|q.q枝-{iI,rҸX(VO(r~%Y0_Sr'Lk3IYmT,yD'MrXXkmɻ8+NŖBD)LV OcMݥ]q[A$SJ!rN: S,[$xwgId)#ho,R/4=9t)YuoNq#)"T\N"H^aܡyc)S;t)`J]P[Mcr6Vd>a0Qb47&av[@e]JvF WRXshdAIAqCFL3e;2"( ]ovG$WxF&*g.pF x4dNOZ1DƤv?$ <ae]@ om"BO756n,`l(g c?OO%]gZo,sX|D#`4,~ã+|be:) HԪ,.9( D?"T-)YF9\!x.,,J02^)W(C ]#a3UFxM^eɈE 𴀨 TUΌC:Zq; PH6\fZfTZMz 3lWUVi%l&rq)D9"F$] zA4)?edP\am4sK睨Dǣ޵ȟ*9!g5y9PnҍMOeL~tHY ܰR7Ixlwo#Fz͸"Q:ЮZKj`_BB$JTuIe$-g2W>cZ^ُb4Vcqfa,l\OTX#z+5 #AVFV^.EZf6LnvT3!7 Lr k A5ZΘA6ONc=B 朠7Xo +yzg \'l̩xFTo^(T^~OlO9cآ9 :\ds"8ԟnHm-Z!|֓A6nԗB HSLXHNh2pj!wIRՁImcmk){x56Mh}\]%fPrG-NHImI'mDe(7К^oQO4dT1~1gjr\-p‰peaAD%Ax膏!̩F#6 Q*7ޅ |7 A{[Y ƻ,N5yNŘY^ւ>IeD4zcrOkv?O|'wX՟܃" k[Ҵ&@Ib $GU`‹ߧL#D&E!O\+tl o֩㛍I=h5a?.W3X eQPEd̵Đ_r&K *ԏ<. ~)G5!ssc_=*6%_58Bvvr}-6<"s?ymOJ^SEĩc8R9n4-~+XnA@=: !ij${T{Ci'92 ,%3Oh0qoYJ DiFh+vN$M#>Ы|0X Z(sјd G PG|T2vEٍK/͚#w~_`p Lugiؚmɠ4V m6(++= %\ < A̽"(Gt "I}=}5k>FKr#ٴRnKp WU!v\M,6AkO_\۷ BG,j=3 7_;{n"^09h<&M3v>1*_}#2*!p?\8֔DP,\zXOOTzp9'rA'(Eܮ5:ǦBSΟ%Bs@dZ7\yuQ7 |wdrIJy, ̘]&QjwUHHǥ,GC?;8`鳪ջ_;Ft.{v_w@DwqH4l+i_ C tr]Oۛ+f8ǵ L&fhGVa8ϪAL@6U,A2&*lmpva=%-΁#z#? ]YG"'CJ1ሯK]v2b|˫B>4Tke&Jʝm2AF:T<eh/aiߒ^Bc KݘR$3BAzX7C)\)qFSv-MPA}\ &BhylZގȵk /M41'ݜd/[Mi$P{{}pD~b/O`@F9ؙmz" rrFhG[;C鴕*5w|Ĭj5 e-ↆ B(u&v gӹ:'ð}_l|⃎7TurPl3*NK rY !qAp "ØU =m И[t/Fyn%1s8hc4Жٌ ",;Mվ)0`kT0'iV潷PὒPL;2h=crU E:{?+R94+[AIA{Chda.d#y 8 ~"bX2`j+wޘע5 ޷DsQLJX#ahG7O,pҋfbbkAN+XA+2xQipAED/e,Eu7kfmAծs^[ruXWn؞_kq9"m&C|puҶD~@H=6پãi= Va+x4;__ͱZ5nv %ʋӦz[- DAAJd;۹NS B>Ixf nOgșdvpl>C@wZ- nT H)v|71Y\J3Hʟ&a]#cv-zal҂xigAzrlO&!+ +%Kg0Iy=ko0tȆL?gje^@9Vu#{[/: P[Nw{,@' +)rNEnSw$ۓEstOCiFSK3TWU21@`#[kQhzUM|$$ ~G ܂ F]h1nkXu~voUP4)xZK *R-Jy\_De,/:u?O[9-D%)?' G{…C3QW$}4L5|U6&6p&^?ɾMfuU&lvHͬT]"5T~;ɵ|1u 7-@fDI"mtse 0y[u"Aw9u)CLuhoNp[wCVO~?S123'HY- 8rtޯU܍CkvNDHőĚ}!& u>i!ȠJ"CΟjG}]iXDzDR)^Y+MlM3{#09׉گXpn6 O^51HL6=^4zv&|H9P&-uՍ֞$9G=˛t*1sk6F~*>@'Dj%?yRFFhfބ$t|z[[  NqY"#[+ے΋4GS$S>Rӯ%BžԌ@$Ԗ'k>Z24%X/@0x7!as LR^:iC@r$ -_ /r>&.BɟX6ZͶpm"\aqhΞ%jr KE8!(A0SLOQoPxz뎞& Z4qZTqpF)N@8l\y%M!Nq#U%oP?8XLhVA2쭔Hw,_doL{ pAO,u24Z@:ģZOz f*,#aΌ,yD]( GGytO~?va>pn5'OoIc%h@Wh Dސ|$]"8+]xn$|noS8R#Q'WD':?W| #dkV(M tT]}}=,ÒE^xX%!*e5SG:U$TND%LuYE6?yv(9hג(KOUS9;WG`~ 'b L5xbUs4{A()QR2cUТ=Σ(T:p/\ny8uZnSgb؞0~B7|PqiB#._!' BOCIFj.XSmΦqd!JǠ̝bPc2[pJts<㍴1AhylMCz|lZMO(LMm9zɅ3,D<-:Wi8.OHp6  jHRJL~-J;M'Aǔ3-6Tz WXF}t9*#2c>iD;KwP &e)C,jh bJ:Q,ҔOݾeEj),Hi9vs&b/ںڥCHX5GRЄL$~ZwbvPQr89#…уS?4A'9I,9 'n.- ck Ixw֣[_!5|o34O s(TR "w#e1y6J&G> >,/qW,z219  [`-_89 N=iw霠ccsۇ/s/DIg]QACOՖIMMeT]\п<'N5 _s*利mIFdi t/Anyi4eg؝"5콐wPڼ4J sC+ >,啪O v&Ir&3 ^_e|FۙW{xwW4z+ֽf.#f3ǡp@fv`T_̵fМÊ0h$r;ɇ} kNґьq1/)LSw+tar0!H/{,c1ϰFǝr֣[ alr U5 NG1S g`VDBX<谹'MmUY| o?\ח &tUhL, ' Ùsl&/ UŅR_Y#_XћMWF*SS у!F?cVok+2}$ \[}@ 7ᲖE̓߭bеDHQJ bB) RHe)ؒ;ݦ k޴I|I/PsA+}.#s)X|ds\wVVyV4F_%*d5$ K<5Y搎Ky~l0%ƻneاi[%~EnuhX vީ34wݨG4&ڮn}eרb8 ,!_e:)r_Cmi ؝ zuر2M39R|r?Li{c%hyLIт3_oz$'Nq_y,bjYр5upD3La@J!n,U^1|H%Cʴ^hs ؝*>ҷD4oI"_—|T-n~Ѷ?3=xNrҌ{K?v;TCFAL|?wн!V89Zvd dh*C߆ENd>wݣwwM\@Qma3MI6TJw +Hcϱ0F֏?$@8?磝gS S|#+; +H >z^`ܨ@>E] ܺc$rҸ#m<'ĿdpIDA D](wH*O<'R8#S"e3ꓘn-pjvHmɮoDAұf3&IEfS WwI[g /GHxr%Ҷl`1փ„dDG1 I-2ai}0}jhU\êU"ݶ7Rx &^L34'Д~Us^}LyRݟ3Y߬? ~Y@uZ]P,j&ފ]EsY{ٜm^|A[)LE:tS5^0yeκέbX|ծxO74fe=oG.ө\pQ!]W[}:w ^)eU -D+ɮ nn@CЄMSnR`'U~, $1׃Mָ'3X)"mbidV0*%%|r0E hPQb'yL?U42ȭά*ÞqDw*gRO&z PT څmNtUfpr.ݛ_]6${$#jfΒW*iΚ;" FfتM A܉KDΦ`*J:i NDuO]΅} Iz}?9z ;׍?c+Dl}"UBŒ0bgЉ(χX}vqa>rfXi/ O6@OQՇtPJCoR X4y,߂E 4}k`!ձBoxc!ҳyy,?zN'kXe5L"FOlu5Lg*j= !/sMX'-T }rdȤqT9/sF%W9*xҩ)_;WVː[3RBi ŗl :6cl2:B72#@ޏJ߇18P'\P?"T]V":,uU^fǞmDJ8$v4`^DfJxG/vW&6qi ӛ$:rI]m`"Ol~̂GVtvM0 А !"){VQyX59נ|}A ձ@6:CvÅ]wB-k'~~*!>>[:ʾ;m6nizlpQ= vj:]dD<3ݮwn&c.=pO,vP>b7nPfO;y\KOXl"pMxەeX.RIƃKm T>\}X5^mD1ӾlVB$=_#vv:\hvVbYJ ;X*Y%,@)}i:k%.K1RaS[ʭL8!!(&T<$HQt~Qp' +Vv($s2z+ X!OMt<ǰ.a8<@&rXȦmzM6hG]B3>XjLO%ÑEZrc;tݶwxeՅRC^ORYi,l$}Uv?%`<ɡjCa0 ca^+T02y d(61 D8Z she,(E.Ha{l+R]ƉjEszR˔ .񙽋 @"Tno~XmuH-c₺0BZX ^Oi kz=ŌC"/Hx5ʋma[|F_!4$)WW b&vϏwiԽךwoE#SءYgJghcYj59RltPֻt,c*@$ncam=AJ%xǃC'F0/{OaH8@Ou_!/jnA(=K18 /b MZѠ=p.$=CSN9 ,zz 9" Sad:OV K{l'5أe U5喵}612f!0)1PIT % ]ncĬ{g&i%J-6a/WT zسj)w-[4QV >}:@ t/~:(a\͆$$ĥdBL4C4dJKUrr"osANG\z,j.)[Ət!SR)R7A) 3 lRטڵ-R\GCT$$[qj˶"U[RtA7B6.OPmq-e6Dp;^y F-́"iqɠH}pv j`Mlm(B2;ğg:ɚB}R!3gIsխүF~<9ޟ?r1>np㉶I!Δ?뙺Gu"R ^^o0⟋3Z[4Hn~޴T++Ђ4bӂ;Lqj'8-*i((Xⴿ{.Q _ԣÙ>WDwi$c: {z(2fK<25:Yk\u(slXwvr<ͭ}*=%޸#sUc ߹= iLzq>_7|\(BKwXvKvba(P' s &ˊcA>ŠU[ % 7`ia"O>zm;{5=!,Zq4:~ZBK>9l7dGCHjn!ͷ9JvnGCrD]8)C2~?e׷cD"s7*Eo_ܣ!gbhQr_{UK:n)7lXty8+dsBoº0 7׵y)e!ʈ5bVɹK!@N2p"RGo#vFQ u'J׳Alsv?IN}w -r;Q-oeUF̜:]#(.4IrWf<{ RYP: Y/_" dkqkHBg4%<^QYN~qwywD -]7P~)BW5m;( -bͅdGr(&4Aqsࡱ9yG?,NJˑ0IU Ae 夽â)YW`3ڎߣ5_|ǃf ix<B+;0לX|pV_֫ށr2?%?RL[ MpwY ]鴡vRb9/-i˙u; -\)yS:CA2E~fF-eTai-0JEbU+YyPZ9 [!6rOESA%tF?\g:}mz uv8{VPZ>6212L Ԝvdч73L]cc+b'(@ad: #Tœ#w2hㄷ#@Hbko`^qbHB'E:TKloq/+=;s5^?x{s[^yY VDl1KAxYX-,Om!C.J*s U8&uM>_Ty@~@唆DgƳ3ۓbG~rOKkd;i1p &xڬԟ=`o |ΘeEKzoXG} 'Guc'ϩtᦥү!dݲw83tWUZdZG Rם>`[H1\.0"o_o Z&nYK Z^2Bk&I ,h$Z*Oy~5)NoBh~Jmc3 Xn["ux@Hm ~x)Pk$3v;\|l|I tH pTNlv+qz7;?&Jû2l Yڱ!Irh1XWs $*P%k=#Ks ەf2LY:X GU=^ FK d]ŵI(!s\.O ~6}~;ªF j4TL/Rwa[0C.ڔ2>[,Cۦ* ~!˲9Jz HEBݒK8YsĄwM\$B0QfJUdޭ\ۨk#/e(B}kbVJ#D;og? .sXph~sZN`)PT0A>δ4+r>*Mm~y-$diG!H.l o9oJ XRhs%$sYᅨL}ƴ>c4ٚ] xa̵h_āK㘠S\T-` 2=K<۞X 97o.|WwYeݴ@p1d9Oj b-[mRqZuu1EFe b}3{n9i2@1ʀsR쾃+<;wL-3*YёVS98Τg >S4AXQ<Cu4AE+ O,/q4Su[-]aj64ԇKrcJ5}6Uf3 4s)!FK G-&Aޫn9^+#gA"| Ck0X:>~rb23! z8 oz'vj^HvvKаF6|=xYL$<~;x׽stCjcC(|P_myóNȣ ƙZp'E&}" s$鮮ڻ`^` r_b5cTK/چj 3nܩ"wu;13K@R8tR׸j{Z= ;u,}q˩xkUTӚ߹Q ;ϓH@ $*@+RIft Q<~+JwW'Dįk/)^SI'/ ӪaKw솁# ]:q<*L9m*be+?LHH.Weufν}^w C]83;~< '?}׊>w4Q9~}74DڏY&A~h؋&'HW'FUF>Nxج7ahq"G ]W#{%$~RaVʂ3*?yTrQvvŹzsyQΪ>kh;u W+W *=Qi#) hpEiA=07E7tyl-KӔя*"h>Ay,K9U>#}[B8OOxxtgE ]Z|2 iy5K v j2/f"zzlzo㘳uN#QFLRp9Rg9!*oeKki_-Ӂ@HUgv*Qi J;GYkF៸/|J'!;Qر!e[TuNۼP~孻[ԌvʡKih;t~fdMRJ|r^"q_z3duJ{4_Rf먚Rd70F/bv38w9g0/YEA١Mskér7-,q♁)S*Gwӓ2OϿ$07+ eYc[:$ߝ&zbjX^/Cmț0Э{|#faGfZ)E@Wщ_S;t"̇t/ۛLۍ-belGë`\ A^ tyX!6ܝ|\%\Ydv+xȭ5Hhvq'aއT؃MKMA""$)@ &#q*8A bDk+;NS6b"GKl|јPKX,}xƂ]~#RD(6O&1DN wH~iI(d6TTwG]=+ ZJ/6>Eay@{#|\lhv+ڑ:L\V2V`HP -,ݢC&aINkMK]{^4 }!\B]ԩg_%$(y8VsxLYi~kHd* DtJJ0B v(C R D'sSWww;:ڰU ]dgDt9)0z5p]gzj71ELyF8!Yf(x\1R~P:cgx 6jc{lI"zm3&p2cJ6[ᕅP&{fp$P+BpFbB8%[* 0%p+qe-D )"c|YH{. ~ ,e71^̽ެ- "|xEiZ>|يݴݧƦ_YoRt#dk9_g6ݴZZ8U<0=RFd.>5Ɛ:hj'08W&^7g0jA}jJ4d6Zb<`K/*/)ykW`y@n$a zAI.Hްj˽[u>(3q /xD"^$6SFr'f DcNj+2L} qt욋)* m0Qf$P". OfKQ8*,c01V5sJKdu@PR5Nؙ.T/#tY)LDxsnդZjTl9Z#_YrL.U溏F&1D(f։, s"WvIRpfК\.w8d\Goq/9 }t&pDr*$[Uu %2X]V?=jζNTQ٨_c-Opid3 -򤈕1VN7]`~i~Np-sѻ琔v诽W`iʒ\R#l8-aN4yl(@I0R3 fxuT\ )VbdM *)h{!':s8Bk pV6,*C;|aFdA8f:32&a6%J a8y,vI 5i@X\ o" K2ApbT#Trx߱T9"?^m7k$j[ޒ6PHdpYAOhdzyQqfi9K > +h-%ntX¸F ޘP̠fMU@ʝoԏ~n iK{ڒ$.ZSWy`l0ٕU<ɹ~ג82b( ꂍ mʂUl, ^|ci/o"v/ dzgkm ,򍱍o>_B{w 3q}?W[E[6'wKFmALPΤgڬ톾 1bggo~ XJb1KՕD8S:9!NF2螃`T\r7Ӎ z߳.ٵL_/qfH"Qܹ.}QijƘ67$נM Y/x(PJs3FbePWJ$@p Dc]Wu&^z2Gi@=Y\o%a@J:[\ʣ<øivcL2R(PSnwT N6sD`wlgLwfl7I@;B-DT{ iE XwҊ!8\ՏkYcpdsPHyoؖ2ř%ݘ/:GUщܪg~&J< l(U8IWdd|sm{|H4 еb/ d@@fdۧP F]‹@ҴR?_y.cgnF꫖qv>B,ӔoF}xK bGJKj%סOlD6!Ys-?x@١$#fyb%;̿FBΊ i]k˔sb{tԤ@%]N G%ߝEh;6jU y`wǪ @8e^W7 %;ns*P7v5LZOE^S ̰]sfbROMw7CrF.j9^ USFSN Xxʬ[g"{R! =h3BcR٪jͼXSX¬\4Cۖ7ܙ3tnL QT>0Ls]V1 U<z>O*1}vQH/@8RPQ&{žQMx:@>U q,FXOPJURzCвҐVJ2ZD- %= Y Ay"ZQ`C1[<}~fee [`?t 4k4\;qr o1I פ"xMJF8L5*$;>u\K~N0cw Qh1ui8.|]}V% 4.o+t#3]eM)E8C C3x?lqxZfĆ̷cn `y9c}Q'n@'սԱ&~&uoƵR~f e&1EhoшoehzӚY3->h\dz-76a3~:ˀG$ܤݟ/YV51ͩ4ǒ+UoLvdZԍQ/$Uη9D4qpM[H 0AOudJn:̀Ajn w\ 5IvL[g@KQv̯Xrg~T0: 鬸-.ȐZr=w Pgp ms}} 0l ;u~"HjcULo]^NPc 0÷yrdTkbf!x>Z''xmYhSLcB] ù.@CQhzK:tdZՎG8cxÐ'F"J>sb|~ GYLf|}=~@l"0ܹ9 ,a@{Hky4}ӤϩQ(6IEO\*ʙpަ1w9J,X$;+ Ywل][F!xu _ei+Y."Ԫ8*VѼ'1j!GMH2wr[Fw-LYh S_LʊNSf5 F(9'rwCh٭tמkGmZi8 VOp|!U?l]}6JZK"£2k+[+0g&;b%[Eqvlk>7}o#4ex`v~__6G"o-JV}$8a]⁙cxbD& K(73BRSS}dӆZy6`J:u+Q.Fl%7!1:AA)y1|>\vӅRKJOY |PbeIix%th(m(nQ}.p!}+jœ[>Xaۧ+c9D [l3=v}==A*&J=YH[f<@"f %R)μ;iX5Jw#u!uC+YLEM1fbyy ƒnnLњe iY|[&yQOY I|}ti z1 ήAz2azc H ]?/fRx%؞ڜ c-Ha*1!ߣ_"_B6u 㑐 $ylxmC&ۿ-Ÿ)痂9Z"B' 1Fc<܋)sR 1;nB9 zXȼᩖ9'-Q7qM]Ui#MVÕ.'4={vhc΀ɚ&L"l#A* OCa[&Ӟ#*|~xI`ȉJ}$6bx)x-llPػ@j;J5Hb5K_7[˂=1Q{[(q)d;VH l>;uEf6XNwnly6u˅ 0NmGR W HFvKKq1߆}p+S D״C͋,؉{ѳ_^`0[=}%io_ DCФUSdH@!M9O?(mt:ocIG'6z_'x 3o+u9U^7l-v<߬a _>`ЭpGJ䔨ňmc$miࠛn8c3(j<3U]nåqJgB*v W&{.)S^2k6 gi3qH5|dN)%Hicm=D:&BnQCKE\\9d ,,Q65 O5j+V8# >kY"6=6K{Rq2VNH@@"1Th4G#l@2B:jY26/U >pS@W@,`FS梘˔}dCҊRT ZNʩ VK~>uՂLI9_()nMEvǯ]Ya\QB^gth5lw̷Tp6/7Bz@ܨv D*Vo̹=j!Ӯ!:jnR !Zh(/>"ՈdA/eYƲ32>X㣒)ʅЀBg. У&RbwE ·y!SqOQ=~g"H 6vOv%'&TEs*z-0ssfÜaԢ!o;_`o {גt\7>u~~ly2yUOǠxt9_?v%G&֥sWG[oO2HV`]3"s_?K"xG`Qh;'gL8ˢJJSKyN#x| $X 9s };Rzom \Sh,^ .B6ELj?dz -K2mqY)ng10UdvQJ7K*ߛ6FʆzkHAAy%﫣qM֫y [U;u^F`R3WQ_eӠta%ވrTxscV?`L Ʃ2śts 8p4k͓fu_Wj>"_M)tRnBWإLzbgCv9K8WTsJI5Bt ~IflZ[//ӳ꩙J Qbn498]MNPуa-lBA쳜&<@Dɋ|Tɦ®zS\Sk׫$'A<6ۯ=p&Ǩ XQUdև9cmև5\to5 D}a.xQHo#J6GJw-Մ'ZV s8/c~>zUD_[]6QRddp9o- iG$SKhBZ4Fy8<*S5'8*~fwG }ctC_ܵZӮ-}gLEť-j# Խ܌oSchzQ C^Y顒 m̀B5B4Y+J\<ڶ#Vjw1$;2Tre6xjNkyA?4Żx iG^>5 UV[7o#Hr #=6 gu&1ts%NV}!d6fN. &U]q oՆ4Pˬ\H lCM4`+?E!n`A19"|SUE2G' ! wbs5ӗ*G>ȟOaiSM;1 <.ms~tJ;WMt+{ީXca҆zl"ƴFєƤE6XYzYO,+ ދ1Q. NѝTO{ Ws2vt}CY"VuV6#;jzryMn ( P, rkL:Er3;G#cKWV{m?,a<QV~hwlc6G,=Peë*G[{Ǽ=Ʈ*J~mMh+b`xV{%na@IngQN/\#g){/٨Uzabs?e#ua<1_K}F\X394:/z*j%{OChv:{5_V@򏘨Ch0b>!@mt 7|#$uy|HDaSV4˫,$;+biHΕI/5T*U|_67"}XE_"&4A Bg4DXߐ yN *_1\G[t % ,N1/;5-k6|yz2vn|xRĆ#cԿj?i$0l^3ɨ%50;Jx_7:B h`1mqY)sB32 4"++T|;+2q9pO%+O<> +\Q#35˖>U6|"FO΄ն7Vk_Ά:Hs%Fd(:{*TuF!%11".u=|9lGh*0x=A>^=Cv6C(uxfS `=)ې<槱X$eʃu E_j!8(^ g%shiƵ0耴_EʨT@?m\9S-ޱ2H,҃b1ұCh \]Ydz.4:րLDXD]caJ002sET'?~-:UmCL1*|R (.4x2@{ ŷ`E݂1G#~k2ؠ&V7h(̽w^I۲a)RQ87ˤkP[@ow`4f4V*&aˍ#'_qzY:" Tyn 8랣. c-" 1Z,q/b "y#̓C٪`8&QJ19dz[6L,?hV)a)HL'|wf˴7ȩ:KA)/b[.yM6z{ bd^(l%>e+aly^^7wR)c [k'/)";czB{b']0 sψErqRwhA,L](]y , gpFwl~H؎8;Ω !ર - UǔYVp%:F.3wFFm+*6wp|'鐅#S^Wt&_0w C1o/4zq4I2H|4Eyð5 78ipr t+Tt$v KG*6lg&"=a$3iuЇ/$aHDڇw}eBTȖ}9_eMs#wU:B]D]K\kS &EQ^tRgl J%NR5T#rKj=[ %g3\ez-ޑY$:cր?ߘ}*5UÈ\elr哪R_GH%Ov.Οu I܆\V?]a riFzC[54 DҰ9n_:QVkҸaKe*$RK|/@nm瞃='6j h8̛fjWjE ybP Mp&ީXdn ɱ;J ,s-}׹uB˘Jnl7/ϳcf%ϥlөM2D{ !W+dULs6>қR1R¢ߢsxN 18}Ώr.,RSe&"Ywp i. Z%WNpꇛ L0aO>"$AVOAYI>h:w4dyz>MfS #!zAl,p\Xv4ZQ&/bDc96_ @?BveױtHF$ "K '!oL43.I [8i]kJTVd@7L^A`/V\` yf"wǶM-C`Cv>֑{$* 0ۃqTND$Uv=,,v"kbȌ0gvS0vhB\T$M=2E6@^MLap%FVeDY6& \FnfR!UFJwp \iE#R2DgY|[U1RM=J9yj}׾fu垡xEs?Eli.׀x j= bi[S20ӕڮٜ1ĀyB|j,3ypdwe2"Ѩ/9  :[GD+(ľՋww`K?.)QӇMؽ=#s\C0[PrNOx,W:Y|i1tV? B]Yh[%T%^xdTIYXg7N-4m#mEHbX&M̳$^WR?5?Ճ^?yO) +~>j+` i]ŲЪW]-Vw +j5Tp|כfƨ-/fCv}劬D'NM]*,gYaIb /,r3 0{W ,{7IU 5v[VbOp GYHϻ4U/&L1uΦ 0p==(&V2{L٬D.WYvc&baH- J?Ҡ~ح =*~,6%yb{%Fj n,SL12OR&@gHI{~ "z^.'eۀ[&١\=)s8@eA p~;#RZ?ssGb=!o<)Ϭ^6`qop8C:t_ɼy{9RHEC[8%&,k3R \f|jqwXlp;KYYS8SވGPJ*.qCrjHIؙfd)Ab4F_;HdU:)BvTC@qy3wXoZJ¡*&RHIUGH^ϯ ua#6wũXՅaW^62p'gK&8XE,SdM ω hż+M&2Q $l 0I+xQuQjo _akM.fɥ KVЀvq[bKt4H>jjQKk&CxQr1kr0bc!DGY1 ϖ޾9E'>)x)MH> (%5d~+{ 6)Yr$PVp;ޖ!rIXp(3oK .wBEO gBϘm& AFRCfc^|IZ.ft%4ץ$tPQ٩1;egm 3[WMǡ#&pz<-8%DvDy%ڭUxPsw,hDqZ-.|>ynZ5p-m`db6dpj$6e}26T+_[xP/sI@շKREo'Bbgi\;n.;TOaTэ}cDe*\}B j4vqlyXCT L+HrO&cKOQf|W +}#wdZ['*]yZy~(FCp99 ^O-_q(gql\̩3,%G/-^<* &aа# 8;zf쾀=,klܩPM3GtEĝ8N ?bDe`DՆjg_?u>GG4DX+U} 86Nj6. %-}m&0rgP:,YTW̮'0mf[AR_9~?cxh_୤2kl$MwTK)Y9E(E֛AB1*JƐd|wC҇Ѱ"ʌ#/#V7_*ҍߦ8b4Gc9+RK7yDndiIbcC?[: R%(En˱7l(Ƞ\4b0=Z¦imX@ڼw?&8&;u=x C}e~]Fh˗g~M>PGʋH|" )G;tcŎv -$Q23r` "E:T?f`ݽC\Wv&<@Q03 o-om)uгĜÏ} Ty<f ۦ_y88"}y84J(E| O':ΦXKS- т4ށBVڽPLBRLn4b[ZⅇН6B' HZO``HY![pnlXn_3~$4[v\ {1~,z}iT دԪ2Ȃ@`[nБΣ gK{oddVs0_FƢѦS\k-t4ADi@pqg`\v}.MV>ԕM }llvylsц\iz=uSz\פhPNnaUBݾ?Gټl=S 9q FntM0Oln(6^Xnx#o_d ^TL4dKBذÇ>. [Wʼ{ʔ#Ӗ8zSلe鹸c>xΑuE~9{Βy^|&Eg̡c2}P٫ޫ˼mPaQ:S-I[H{ϷJ'@ ;_gӜ ߇T8TM:~׍&(/XCO]hTf«}+>1OHu9goFtn6-t֙1' b8"b;#g_LKf4ql! V8j|܁={V6FfG??ݵifdGb!'U2hDk?wtt4TmOݢq+#8M.|!lք hvV4$&OR^GIWlr!ܴ>{әws>:%W1FniO͸*3MĀbm8 HyB]6 8LԳCp'KLcɊ5w5wpTEo5瀩c(=NmY]#1fW~ {R4c`ځYaOJN}KdcORUYQ)J$IN/#^t5ݸmvKTO 7Wiܺ%G%߱t=/pΗ!Ov6&O*Adܬ6+=urIFDa5̕g3hý!8ЌL0͹ -k#PȠ7[U^ĽDgH><N`,nSFOblv"xj"*&jkc_U\W"zˎ[TU -ZXU=jNo`"!)w߾[fm 5~ T,o`}ZfEMjj틈6 qo{M@IFh*zZ_D[y$RE@UϘ6^mX2){aUjGڂ(5F@b܈zP-ğtK(sZjmAV>Ha^)Pɓd6W3o9j r_sji}<lE]wܨL&n$6wnvc: })mcCh|!嶴D3JT˿4'Oy7HhaHx$&JF iDJɑSY}(ЕVc0$,;БRWDiA!'0?0I(XpAbO vJ,HaNVҋU +6զzyi'<yYF;]2Zp  B@gM 7깂]c5ΛcTj\ D&OIkV`nN$$`P5!5I_qyAQ,z aּ\Q"9 ݨQpn=XBfWO^1єfF,, =t.AED!ٹ"#ѷմ^`mTx[O~[?QRf6:;)HTB# ^@u`L9Y θRzw*7GL֚$\a9Nk Chd??oWg5+PZ #e|4E}^oVF~nص3_tgclt%I;x.|oeՊaۡWN6oӯWS`x1F}ٕwv1YKʏ(ԼW჻%6T~ 1Yș|s4+и mm] vrj]?TPϣѼ+ r lyKU9/$C[橯BL Ouc_UKpCdM9ߍuxo%HG J+sn1jK"zx9/щ}f{7)`ӁA|>sgP d }EtBf,8F,nݵ/tD,ʎvQ } ka#{}y p+e\V;lTH%Y?RSM`/j 핃%ݗ{^?T?ҽZ ۟mcc sDk"p5 \|+EE*gmAF̧ppROfW sdk9>̤^ , }#7B@wPReu'*eǼ cvATq4b+I[Eҏ.#hP\}i>|\R_J_W ᚬsy2ɣfnGMiS]DɫxnܘflÄ#@w=ǖ*KVg^TTKlgO42mXۑ7 m*54k_T ?l>>p^ ^,#\f@)c*L֎Tc;W&V'$+trTGJwho;]MP͒qx0~րyWW>ÝRF̓U9s<{6LiΌZql jy2 UG&1(]CמAaBۏy_ ZFotɳ;,່\=B.(+>rE kcbPˠrx܊ .FDHm1 =4DbN}0:-1x"&YnC.#$@6;;ݏf]s }$ Z?98t\GD-$tK}DN0̗3;Y#i8BCo.oIb7k]24NBwYf?LbE|4"/{CM ( J'hK(Eɹ3D+be8j5cbR+=GYWRZv'RVJ;n!BK$R@JYP-*3~qv-?܀}%h!W;ћb`A@p4ut2DsA^gvBq*\zCACkV)vNu W z&04%&Rg=e,G!;|K?h+Qmj! 95|1vɿ!e=u=V<_|%]Qzy(y o _lVG5;);PWGIA5[g]`kQ+y|8RӘ xqt;- 'ZpaޜXڈT =„$% Q^E,v{|S"`o־fy?̏sQs oJWJ[D><(PjOr$pt\nh CjY4[wq3ΌmǮت5{|(%yWE#-Rĭ06?~cE_y[AZ?ƺͯOA>8 ZaɋI8!ݶύuܭGk b 嶫i5j㕀MSrFN^(w9-KOunYG"TN@K4@hc| A;X۽oEtifQt4.+GzR%qg4^ɉJ$P_Z)T,fFny{8V qG*"{w91ȕ]xU\S*8 'cf*|{b"%D ^-M\l?&: k?܀L9u~#\ f֋N-we"S5D(՞N;OBT*6SwL'w3 2ン ]x4;uŽGEFڀuީ%pkX`Bfr07Ns9"ް&fv#nǃ(@IyaRwo6Ib8,2ܜCY>AVRjNs=kiak"|-!~35Ke3re%10m$4G`6'Bᳪ?dǸ(D@5ffaAf]Haxf)͝/a %0@6-eY*3朰w}+m, 9H" Ln/h[^豞ơdT7YSH:q "1wT@fOX=!;ćdU[ukxރ^q9g?ws#4j&4^ r-QhObt('Y,9UV8+Q|c]h):Mæׅ&\CT> &% 뻃 DdZY[M2wk);^#aJ75 Moj~p1 ₥^xBcx mIpVw*2Od߱7eT7^y{y;&uo' _ ^U^̗.^31}\'CH ܨ򻼓E2Ș:>7rZ,KK坯fj>(.LK6W0NeQsD:rjq;V'/3Y f__q0050 Dt%8&$ rpz{oL:Nd!{m[c~K4(I۝Zh*%hF%+U{b 2@s,Mw8_ͪM}iBYIeJ!_OϷ#<:]樸/Ӛ/)7+ ~nز:y7O 媠cPP 9prw8AE/1W3eC"-Ƌi)ʏ2^]J{#DyU=pSEy%yixOpy<{x 5Q$}Y9ZS_=q/N^2T>S@c<6k͟D3V;1(I697`_#!a$ nP+6YXTJ >ucK%nzk^εԔ 5ڭOZ q+>KhS uvK2qоgE4Dz* i Rb_Kr-0a&č5z8呬e`a&*x{ fi:- =R3,ó/B?3a@]?8uiV)L2}}N$|˒Sokdz=doq;I?XgHPVΓ |$'Ct aN:%/}UxYٿ|>:!񾸁z}zCeLM VCu5L]39\_luϞGtUV #[[Oxb #w<[2c/Zo@ Q+ͮnwRқnűԇ|wz2_)DZ&Cؾ˱nNsbPKOgf6}Õ-89I/ r'X{p#ǟ֣;3]N UB>>Tn\0z j# r-8ڣKƹ?Ѭ}v~f1!mEnnQXY^'bck IpͦeL琚APwTSF>doE>mG3ds#ZSn{Sl0X!hcr̂[B> Ɋ @E "YDߗ)n xWƔpǵj73bM$RAy*tꕜ_G~s#&R8hd@o6+UͲnP&q'J&K3H&hrJo~t>u*=:}NSяIJr%qBLg^" *]i2(j6)8 +_ZI@^w0q[jWKn], @a/]᭕*6 e#$xc^bY7; -hrr? KLi㒟`gUbЅG(<9ykDAHikOg%trvZq<5z+EruʍH+>.+a}{9r^l"ٗc(FTkmU֌ѤGy MuSh>b݀lY+>oDy٩j3J)!sϳ{giE{mؘ={ֿۖ;.*-myŢ,9plCS$/Hsl2nwƄJͫVS!h-ގ;a_}v[L[n8)0%IZE';/Uqc'✓i箩˫oS "'ٱjAP Ѳr)e~ՆSo0fe*ȢC*4T\R_Xߒ"Om@m-ͩxCȗڢxoV"{\eHm/ Ddx@O wgR F;e tjofn=1_*T"1M*z|ongpU;FگD|w&i05VX^2Z_,t涙h ?sB['*wBdIEit&oW2U-/  ׸7a+s gCw z~kد"tC i:%DNά Kgǃ>ޔ!+3[NP%|40;d뛳ʳ6Ƣe =Qwvޒ[;K̐w](Qjƽƪ '` d1Uohx{KMMzdJhYX?LZHAdsc)y_S4SVJEa.g*,d'J9`Ao W^9[p.rx@?phi<{XkʮQ87[U@\0_ 59?xFH9v)PByn|!Z1ZJTb!a)̊n?4޴/O`O^(v#=!}w }nͨ*ܙݱwv]{Q|/ֽ2\֘ŐBX@HG ("ʱEA8x]`}a`W7I HG vp0Y߁LqOVԊXw=<6,&V=7a\/*}o]Jd! óX#!|0'ÈXrDWчGݎ/=2 R-*2<oUˍr9d5 U5fBzSideMk%^~,i-@ QA,V{ : v4ȃ8u/ 7IҴKq:m_(/9Hܞ4`qmʏnTUP@Gf}dB&x]K8`X $n;`]P7*J$d4Z0"ZnC.R=$\K%8;cMTfMQnI`}>Ӽw(]8Cz9/jK gP7% ^u"Eb܏/D9)0D$ J劮gܠ%,x1hRlCYBwav S8!i끿Ó0-/B@t%|CDh(Ҭ ߵsErRo|- ʗW MMq؀a^"G 4 UfΩ4;^6)rqD`!C|`2B sh;Kb@{i]Er/XtDRsk!6=/=(E H.-0iujŀ*|%;XCfZׄ0ntF&;?yr JMǤ: wpV$ˠ؇N-y:xu#*YE5K}U\ˎMT +ӯ!1p^p mR}C/`UK)9G9i/+ M+DiJ|ƞV֬ƶA1HTa9'*]L(#.`B-N%fU ']Zo@IKYR߰vR_ub?/af#;1&ASN@r"mK\S{"=$7[_pQ6 {|>uGy57Q#'[N7; nAod^bZM?ằVG#.3K$L&# ICCͫң6'cٵgYY+H4ḏ? T (L+$%-65‹uIpAG;m*)*-,8I)rڰE-)!e=7 eB (|.mAE9 Cg&$PYEO {;"D~<sHzNs31TU܇!å`bYk= A@}x{ Pja$J#K6"l>mls3C?e٭ϳҙ_huLnǂ-h ѕ*X7>I?LkbUI̳ S7Q^I!GS|F /W<\N:e "( B28|0yɋFelܷkpSE\I?G.Uf~n#󺜞ik+mnkYIT>[{껮攋3rAvq= zyDi& x>f.YPt#y/E*N,_t EDq,`'?EKtĂ0`^V+:P;RBvJH3CFJH`-i&oZhי ({~K=˪aOaߣK:gV:V)s8ф qsTpY.9"h$sB6/v_R\\qk?x\ 6y5젾Oصܵ8/.HL@?PC}iqht䠍0[qIhT[[Q8"6{`Xĸ8~<آ&=6ת8=Ŕ Z A27釤1J1*`etȵ<즢hxV@!F'Sqb,Ctjf?c t!=\vr%e/ĥ):+䕐!S~m%#6vLq͜Mi[==bhiML$z>LWM"\K];^\oxD[ 1nҞNdrB'\ve AVwJ {|:`K|s3iOoD ~ 0PL__5,[jmJVGBR#5/WL4nEZ0@kΕD<Mtobq2%;k~Aa!$5o할7&ܱv3lc/gХ"M+c9sμs#(T% lp]W ,^ULqYĐ$H@ {Y͙$] %ʀHWsW(d/ tӈxQϋԤFl`M7qHAk4tW6JЖ:w[.p`Q@uf!i(D:PD t h)rIoJ_cכe)\n2R 8òDZϱ-6'Q<;I=V yu_ޠP rz`xH* I"Fj.kkZA F@^X;>W]LDy)3+p x6.dԊ#vJbDS3qLA#yO[|~抒㥰E&Hx2~I"ٛVɲV꣤JW|~3v좵9sdkhsHASN($ SUa>̜+z[ǀIsf_1H|//uذzO?[Ur]<8⑀o3ljذf#a FBn^PztU{2;#cumy65;VЦkw[r]RZpGVM@]ku&~[Z"_D900{6Q;&;4c_<}wBu"t 9JĖ|!i{]_"/yfP&UqHc$ e3I?afA 5Ca7AoOIo3mdîK¶_^+44w{DDS~ R3J?MǙ 5DE: lO+v?A/T~] s\qmvn}^J9A("ݓCnFf8g]14V;)Uͥy״s/ѯeHۮD|vCD_/0'<<0p$gr#FY9_HRJ0UmR0|!A640J6`PGZ'iX`,Dcy}XR햑AΙg (Vlu^Âb_N[}U0ˢ^+l: P2+7EA$M@z;ZȔ{VL vM蔡zʿ%gTq)Ÿ_t6[M|!1_mZ{@{$ʧyu /sI*pi4QRU[36̀T<ʁٵn_w̌hSRſH$K D.RnF4p$VJԎSW-PuJM΋EU`lsӓћh:.D'͉ xxol\-$⽊fRѫu eS~|{EkE2+)qEhCGmGZ\;_nz%!.1C5PP҇F~<2XP9?.iL\B,/Mf /RZyS{Ymrzoi']7X`82DZ,oG4徾:@"d+6zW+llM9xsr( Wsotp-U_lǥ:ZJg΅|* ~GXOoq1!h冺' rHC|)mzLTJEpp9WE 6?$[KoSzPhB״Ʀ؛&f[M@; :a{sS6svUD?T5cB G1i*DrLAhbE|CT')A^2~OjAĶrb%p"7~^ сP*O0]e(bf?[ Fnap@.+j ws(66(Q%~$~c\Ѯ;XD`hOmWy U? Jp!a2W|PGAbk|"~{c#vK "ZKHc+7^Z=sb+R8@dqg;#y$`/*]:Y<iFJqo:'M̬ڂGO7n ZJ?l_7U,yrqZޑԋP0xDP},/oՅ4)BOwcu|/{UǷ^}#Abu8@s!xo?ڮ 7 K}93N?;vH ~/nAٽI֦Dft_s+;fMk/`ȱ2<聻!hh͕G[jnz׳,(%s.ʇn٥K1We-3ww#e8MPFqHS _KA<)33 z!P_ɮ"F$ua1r~JBhs5ͧͭPcp2%Evr[> ױHH ?G>ۥZINzǬU$ ˱_S[p4g=ZDM0xɝG>uo¿L.;OkeM ڊ@3*%dÏA݆4s$^2 tk \ۀd}jhzk$3ȿ|S'ٞC>5[$C!3쉽xgo'? Qy&s8ʶ 1ըQZsZЗ1)gюv|Ozo[3,1nGλ;`ȩ>G}8Z o"GoސP*Y>v ?{ C B[!YBx:٧)`/Z4 `_p ~sМGO/E L0`H`^@휕EAYU**F^a VKVMi5yl2\M/̟ŨU?$aRjv.^s,,}\Sm'v˚͒cƍ'B'AFj<Ӱ)[@S'ŋ4u Nh':ΐ(܀y_YtTpP rXu1R/fE} 2|֘rs|x4h>;F s<##!$W)b7^$2삣VYb0zIRk#y*p]AO`sv燞I[w)"j<_NOFD#5oe9xB3tp) k7Ur hnJF#FK =OH7p<4^{\`>f VGhq?k4Cߩ8dXzK&~ |'-Mߒ-3$Pb% u^x3 ga8DZqqKN{\&.žɶg,߈y,}$_ON ~蔅ІRBsۗN71Tn١=І촇*)ZW\-غOÝ>߽ai" J yယH)q kIV?)4H-> -Z.v~`Nz ak5r^ |{+Q^$GeZX܈SylP-쾶Ur&7ˊcX,yy@Rg) btvda\ץb#^{s Vh`jvx֋,D|:`t\ ޶ƣ"≧;eoc-3qkn3jNrŷÇ)a_>F" \LTGniAiPI'嗑ڕMCފnFR!czQXЯSk%iOnuNšਿ鯬U"E|1GhUQXP$IJ]: C[Ÿ3X8LߩSۉ2rS}E=c(q;t"c&Y3}TfBqt؂`!-hS{M6R8S'Eܛl}fVu,&ћr9L[@UiۓĀiʑ˻'w@L ƜHK7i1"J ׬ TW!r#:+1ª=K"$)w{~YtefKT0B<MhS n ."{e ފm=v,]&䤮>ccc!WG\#dW_6Nd;acȠ,r^yT`dc:mQY;>=p'à{yr6crӭwGmHtsBbsxI+NAGyq/[__3GDvMbqiO{b,FcTV..I9S٥Sum~g7ﺭΏ) =`IH뿖z%HǥTZu.o)yOG\s Qח/]*'"#m5r_'B?ۄtwΙ{|ypXwgm?W[nOؼR,N.Tnۼ1Ij}|Hn+/V/wgwt<03'} b\p|,%?P*R5Lo9n`E=~+-:'mJ0ЇLFkO[}w\^wf"X]N@ 5&mKxaK]T6jjp34,*҂lrާD5%QWrUW-ވC"vޕRe[9nUsLo m჎T3;fzĢ!dVVOLW*^6^b/ Osc%ju%߬BH@g3'~EhX׃Y8z^T5<sz*Uʦp.O i—>8 W5~4%ߢv*HϹ' $F]tJK{.^o<͋?Cɠ`,@@4X)2(%B)ī54D -_ dky;=,莮 !>|-~¡C=]A? 'X3a-v.FgbN… +#P-{I*|X Fam?d5L}2(O5P-.X|p^ʠ")yR`\P[ R<kp5s*˝ư~Ko3H:_;# m~vjf*.V~A`ŃO3$f(I keZ"FwQte1Mh[y+uU1dݹ]9rmҔbP78񱰅[yt;Bǹ{5m 2|+4 ЫB O]AoVص5]nI5 8\F &7OJY;AkPnV Վ3kmas84-|MI"x7FE$1Vr(,^1N+L2I='.~;_M :Ų3.f҂q@. \hG~RjGyۊ2.Yг ~0^C'i2x;Z=G[_#HJL4x*57<7@IQ|` eKāf-kl G_މڎ. 頊v}(b)闼xBW^c`\VŹQo/!޷2q_Tg[62$Why+/,sEV e(Y R~O4wV=qO8!>,&H^j>J:/5gBzLWfwxG".DfH<1fݓ#x ݂,?YA5#rĸ64f @Àg4WFGSj|ue2:NI}lnܑ]+.xBwn|_S//j]>T@aF!r>| s6M^6O+5Mα[4 SfOF fsD(iZqZN +[J5Y5j*3iY; ,rV~ h}Y/q.aUVLE5Y<2jŶ *I95eL;)mq8B PϟQDu~MqOVAEWOJx#^P>9з V@S3Έ] 8xC{Z/P am$YmK 3fؔ :rXfFL@K8qj,m)T"6U!uGV',-މ# j0di!x;y2FXDg%}3՚؁,-yǫǰm~mrP"c=pK]7ЕP~Ǔ7\CE}nbg{rZøGHSr`uyFQH $9$}B+Mhezr4p& lVw6 e$>"sB@^{8ZD'.cD/vd~RwN34*)tZ,"7ZҲE“\jrnHqJ ୴YMb(e܃7F~:6Y,<zFް1iQ& Wk{&OFY: 8;*A \*".TeE\Q(]z?FhCV #N@BAcs._kc=G2b™31VB:NlsUI.<ଯ./;pΟz˩yarqɗ//s*ZFC#_Tr\M79(]H#y zI>L}|Gm/1V'ưB4e XڜJb'J!i tD-q[{de~3 nW0\.܌jg&v3ᙼl9|GD{.ei40_v yi>0pvvA2 }vr\w>`)+1JlAj x ƗK11BGAOĦ|U-Z ,܀j_PXyHaFI;!I;7rW9kusfUaK'HRt9} 6̗7\}t)m&P?_Ȕ!{oU/|3 [Qrp.I%5#H:s:Ő꒿)/]jꌛ~r ωnC"޶hSA55a;2'U>3$OA=;'_"ց۠X3->>ĂFU*&5D/R8*dERV<)du >/~N[Q#oQaHLg*ӑ8pÚ!$5tzv8֭T9q^'Uc|p_t EǗ+^D"vd$V23=c1S}(q Rkȵ w}'5R ;W1 'b%>sá^i{}Kui) OOv4\ @Cy=IJĬ # ^"iSC8ƮF*3}4MO?Uuje|qSN-WGً_ Ƙ$B0޸]W78p9 |8.sJTۆu R8vo&bRo#=x}7YE8_Ĵ7Y9JP&(ƜNIb9?xXf1/3"hf \e Ťa=}1+׉j5c<̮wH i,,}}LTuaB~Q~o$,,HrQҟV苨uIOs5[*K+̎Ψ}M2Ev/JQJShxF2>ֱF\*vܤvfplըD~A@Nf;i:kVpǞVŨɀ"i؞m\?JGHؼ̙շފUOǵcaJ?Tu7fSP 95Ŧ &Nˌ(9z;≠3c,PAM螽vhHe7bAѯN7Vs ZP4ψ.Dhl2wrH΄H[4hT$&^^Xգt3vUʼQ1au~+$e(FP=KZ7  3v m$WዡE*(NΩNk4ǧPDe"֍Gh*Dpi_0GBinaSsLA6ׇGc􁏜TS0?ɭ'vI9!gG眑Wxh% :4%wlpw(:eSǏuKtY16Wl;*pw;}˴f,uv4G8(KgFG/N2l&ب7+jhա, h/ɚ@569*BLv!&nRx!sA@6Y)Bަ8"}P"9m?'X6Lq_ʆn_3B@I-䅾{3 p hǮX X%|XJADqkzt!gY˲)9^ʒ< H>˩vR_KN]Gr\]3Pw"*\"T"FO`[ZM9"?aJh߆Q(W?3V \e&Q`'5MKD"EgH1%f&a3m=L ]3*J XO?ۺ_s֏^z*a_V QivC 0yzjag]lB*2k$?2;̳ZޒӺ]qDzr}RvDQF>#?z=-tu:Pi_7Ogn`674pDghǕ> cӱs1t."҉mD=,mjEB0]+YOtI;m Ǭya sі.賦5sa)0 B*z\S%Z]hf&T mlp zUw0,e@x]5iR|Ou@5I~՘0L)ypKK x7`kYf_8dW5qc9|ey[VbFnfIE&Ul踊MbU)/:DİH71֏(5JYf#k5R8,f(YHJ.h%FmM\IH8kU]3k]l`PU~Vn…SYiӷ۞.cj#&0zk^m%)4tH$)kXhM~?kDs:W(FUY7SRggo?}1 _ o5,vttvSȤ5E6SlWlrZ мPJTsS^Zf7Kkᬆ.EKcSP-gN~wԮRӷKi)PRCRva"I`AXbk5I BV6xzkbu3$zUlՉ?LW j$޼EJCAז"F0l[P(wHѵ}I?QxNYPRK"gẎk*I1Th܄bbʬceo44ฃ)߿87w܇ksWP'ܛ/3 p` %wHMjG< ǩ,-!@4%혠*VtʎФv,͗:aKUGJ}ouz@4SSrKA2xKӖbcAxش'uH.nk=*p"N"FM # ieFSV=\S\Dh}M.yl~udi H#]iBl,cI84wn~}:ѐQ )F5JBۃ_-1eaH-+-.+#vȽ?CoI0(D.7[{k*{)t%* q5I;ot99qwvkJ'Wzzs/ -ľluD#YOexgI.Nķ9iOMJ]U#H+JvJVbv8azGA F_ z^zAz%mL9N22 G`i`]ןV?q/Cl35OL`4-Àl*T6:YQSHLq=˾dDOqr49HH\SqhvҺ)b{fxRERqEg&a":kz^ťB=ٿj(̾IJYV>|ʵ-,1^_1.l^?Ls&&Kз[$ƻn YDx.U7GHWޭ_@u6QM8j!=H',bXV EYΓ4!_P sĹ6f;t 9cmT4w"99tVӀtËǖq\VS(]JGL` a Sw^wᛃ0 JtIT|}G$w93V}fN1dcwNDF,MivD_{8/}i, Th(K{vhEh)̕iKQqW"I!N4OSʜK8vtvA6rQ,ɤkb+46FK!l!S2ci6m;g:}Br|۽*J[ !ƮY7nDhBDD6G^ED9԰W/H|NYVOiD!ET,kdQ]T #(bցdpxtIwWkfV"v汇JXHpʷKl)jMHk/$@XԇocdgiNyzz`o@ >Vo 4 sN4*Y"q34H<{|FNQ[G'}MOd)n[}#g-/Kkj8bXPaKREHn.ԟ\:gZ0vmPK䱘E⺗flcmV;w+.kP`!3NEޟb/l2 $Uoz~mI!fCZwy {ZL6vھ*E cثӥЄ D|-y."`ʃ ?yOZE[-Q<95H-J=!B漡4u~l sk 4gl. )YmY74YDc]w{R Ӓ Sdwe}95&bWN"*QQ,qfm8 3e8glzz~V2ϼEwU؋:<\I nQ+g)sB"hFYSXOd(ֈ㓭'ŷh <#DX^Au&REfr})ZUc[We">'tqVPC=&6ȹfv?ӆn"+y_CkĔ9];6`(i8.2F2fe DUR(?W?uZv%㞾-R\K@D>]{] 4KȂ^U_</CQ!sqJN$*3eF&5OW@HUPdor:\ܯ?6r@F9=pRS]0'u 72Eg^L2q ˈAO6Jˁv r 9`-J]S{vr;_b;n>6,EFrGFJHz+>}@]@m28l+ҎH< RgjRw(CF6pxzSf>;Um֞v2n[fIV_Qoďf'7+}-* ??>b!i8}c(g1O揩`8<M_s> zap`Nd >h hv-Z}R=%/7L_f&o#=*(ūaHո0GmF'*6X Wqr$E4&I/RF8ӦzΑVs?+/,{@{0앯Gx?jSqBk*G?l*bt~6x+SnZzZR%^VjhrO~o^u:؊sm&sFFG3e?/)1sY'SK|*7.-#ͼ!oH =wiRLuF4Jp%c~8 mha6$a6DA2i 9eXN"+ QUJ)0T@r1vbWcf*`cx/e+  c_ L7"ˆC_)aXU%WyǬXYKO)|k];e6 9dQ'vZ49E1WC/*3̈́M\Ѳ1z ֋q2PmŁȡb0Ϭƻ2'vLvLᾺ7{:F ol:;a.{hjڒFFF煡:T*`hMzA~f-2. ̝6I>ǨDЂZVl߳Pd[ /j5+QiN-v4Zc3}V zP&L72 U2N3Im୛r|Eԁ]aZ b9hNjJO(~hkNP6tLFxMMwS.FO=>K n"*{r4I=߳-F9pꐗk^2Ã=-&vSG?*,Xspw-芭N/E+(I{HgVBҔ[KVz9+w;q-J+iȝ0}IPh,i-r,U/t ^nq}^۳_@eSuo-&_aXe)PqJXq=ʌB(@k7gZoe7'yl4G+*0@`9F#pjCq/qTe1l ^c)5%^| Zi^Zx9dlݖw2Q4Xص4ɔK%fPU 2ժg=chm9 c?SKv_ٔi:a@ xvxu2UHQ3~kv=uJ,ۋռ'5&yQGÎMp[E{/t,#?dCy'eH @@%3v`<ojm_@`; Һ"c|l>/)Ձy߹`;PYZ^iɵ8@$K:vkC2|[ry\D6o=LFY쉾7ՖDDA>lf5ڵ"&*ޓ֍ëu@V.,mFD+KolÏO[r|FcTu{*ө/^,CYdj~JAe0=6:ן^DDn,T̯p$s [AS80R޲mV2f-WOg_Il֯-G)毖;*g9A_,i,CXqz47P3Uy9c'̨hF^^gkkkΫ Nm̰P%RqϯeOJiL@uj%g}Ӱ-ۜ=MQrgy(?U`!ЯE0N*pAF|Xf a)RHH))"7zu$6H8c9m:XDŗ %5o_?v2(,-7vc8 T7|٭ӟxҎ5Fa=Q]u3@.R_pptE FqV*gcckV!neTHgQ 1h6$ a-yEqz,k>_-6a8) 45 G t+!b,.&d s`7]xɝw# \"qg=2HW]ڈJo3l*D>z m ~`?( y|IW^UT)82;.&^Kxfz~gDrnJuޏէ:-fs3{aa"@Ȗ[DP&[o hG9%tl+헝/|NE!jh}:vPP6LFLxn{3 _c=ʡM]r?'l Ǒ,0D"h}$QT=E=A$soog"Xa z^hb(lBլ*9㹬{ A% Zl\o3Ii 縨N{BG1_fٛv32 \q.M:FmD=WSC\Bn!3 ؝'/Pc*94(.I&4Oc_)~CPVR3[]jTiGSZ5Crȡoh"zyfǰ6%2Y)Ǩ9M(][Oj0uBwRcJ,Aݡ\pІIEpۇr"1XWB؉"u.ԝ2ݡ_JSذAn'B͘AgBŗ!k4J, _ۋP4 jM:QEAJZ] NT1Û+j,;=N`ڈQK?2/kf%F28d$̪3, G 1XŜC_Lr )JRPHzǸf!G%fz /aܺRp e*IQWFM<96*8*zOo@.=<΁(+ V5< \R~Py#,bT2,_`8k$O1rL`DP-"Wp.AQ2] Ue"\&cƧܐ`:R(Eݠ$$!F+Vی񨚱jǩ~&-2{(l¿/ܷPVZnKC̑ZR=1gJMxb8Q0y0|e'ٻ^mxH l]4}TmEbO&LJZ{ Z-£dvnRZ24a pSiwFXʌ]=f v0` B/jc|g28E𿥆 i!<* C@CMb/<)EAS;hR6X##1&e+H8?sr%=U&n>e, kekxUgjDY1#c]I17{1f8 Y؉`?#xωa(bdFfBޞ&K'>s?':71D3(.b.Q.3[֏f*<1{5c&Ҋ?1ɫN^r>JDe:2dXqVG:~┧u *n)Jb#lW}KkYP$56ac pM0ds1-ٜxE* ~&jѯngRj:7?Q;)~F Yx+T$M/ĮGa7JOH *df J$iZ6\= O'6A"0e"گn"Lo|3qF;lX( t46\?)̵nV̦܌#;|0Hvw%Y;cWyB y$`hIy$Bgd%O^Mkphs$„` %6fIq!\ 't%IbhbCWk%hHN>n=iH)2,;M6 NqE]]t駘"/T.9\1)KWi=ﴁzDRȧb^rüAVM{ lGy0n8=tsܺ>.ꓧ0};@ M;J6 esBW \2k(DY/.1:ؒ39,!_AåZU%@LߜА[6 )eY cچPi0l}"Dc O<;X{P}B(sh, r81>6=B\T:^`ׂ~v>hE=Ҽ WW@^~[Hq>Ռȉu\m+e3w3*~ɱ['0?p]z4l`"A(ܒ+><Ԅ @Wqz[F 0D*9뗟U -VnqJ>SD''WĽ-E%8Z䣾^Vߊ=1+#^,O[UJu,'KB mZwmq(3G$A%蓔0zVR? e=D[BRW4-2D}ccz y T$Ϯo%fNA5\h0DdOu5.X}%RV9 T#HB Е{D6HK[Xicl$JF.ڙ#3Q`lvS{42F ą`W;L●='K]YV!TW8f9&IR D3Α; kL6ɋ TY"{&Y=q/Kf])i^ NOAFF*k}}5#^1Bf:*: ?nHv\ށU' BxDbDNx"N VYW,{fe93GoMb$>:кhMRx?<9)T.Hj*BAW ~ )|%&˜~v"*^Lu (/;ܬnV*=JƫLؖ,&8ZlR!%/vG)|skQW^vf!F 矶h5`2_ uKi=A!Ic[.s x4ǁ ##W ŧyֶ 49 OM^U?`͎[t1Y,1w!Q[g{ J`Ƀ?VfC XdɱG+zC/%Xuss_EEA_@` *8COanr%u'j A,)夬< Z]G3-F;v!D}^aĴ\t7C=l쟫^rIA}أ?Ti A m+tdm հ"k[BfI#cAJZ LLN.݊t6u"h 63D5?8bm,f-sZOXBwļ#h"gJϋVц Bh{\ a|vnfP!^QoԑժmJN_VR'?}.;}fJBCXJg8J MٽD^Dll=дϩ F!A[YBYS29@bKk +@K#e0~a3@{]Xpqz$l|x<07ze37_3B,^]IސPH33(ZgŢÏ&Y({ꖜe}ȉ8 ^Q^HRKhri"uX`VýpMP0R@fLvʒJboШT '8'֢?UC7: ۊ-r50MU)2|!\xlǤt1M=GJC:=%BwwYĥoK~0M>W¨G-  obPq<D;Lr#( iD"ai~|iv2)q;S%,:S#A{-SY")@rvqUߓ)3mhI0S9ЫEm;}ץKOk_Qn *= N܋|_ vvH%O!N%2;PX^xJmB-HW<(| Ž5zj!S\_X iJe#PDS=Ϸ>wW-;IsԻ}6p*#h ͣf4- lpJ(ϛf EQ.^*ԇ-eCm5X K 98v5IkB/JIj1 4:#\G{fQgMz$r|ަ=GziDV*$,0||㐹S RBe]|&8w(6,RPٮ-tfa 0$\SI%FXȾ}?Ao!vՀ#v&Xxo:VǦiuZ&z0u ӛϋ\QToT55&?[m 8u5BDw=^n߂lM*]= eMΦ/Wxy^fwqO'۩`L9>&(%LV1m'V~$ pw0eM6 7[.H\ihWgwD\I0\F <PǪYlrGb!9Wd$A0kzt ʈBMzB.c!?K`)8V39Y;)P߼Zogb|[.n\[\ì֚N%8-@q!٢)MQ(giWxNDМ, ;.o5gkDu&Pв|+Ʋ^]!Ơ>dKZhBV!"XTs{Y/r +affw( jn;b$ t}i)A󨣴<%~VEY3G@Cszv0N: JΞ5twCF92K2m# 6\ښYMH)"5a,FBQ$& \_pvrxpS H<& T驤1`n7h9HʃU h㌁ E^5V}츛/'1hÖfzF{{dۨ7*mA$@EOqf܌3F^!Ѹi/CqA8F4!/x ښVà2k}0Bq.ѿ3)~ Jⲵ/#e))I"{ͨƈK=7bcz*Pg$) ZiSBw9hAKd0-dZP|̐+OMѸ K D/6c($49.@Nj-mPZDr˜H;cd\!&.Տb7ƷS".GgOAl,R2'[MӀjOppG2dAuy% bS<`HZx}#Dk!~%,KY{S=6BsnRxmu=*uu-爹dw]/L4ϊpVMzN@MSkYȨZu8ixcpdnwZлbvVR K/+][楧:rݝ2`|(c%V[ZF%8)kp V1Lg蠞pņ5)IuChECS0`~}HqԩĒ "l1YI~2@!H;PFY33zFzMv͝$c<9~C8pM5m !z+UzF`2Q uҮ p4ڄKytk^Y[.SJjǟ2@x|ȫs Y7r\G7]p/%V'wQQ>Z=ȘV֮y᤯yN͑[k2|~ДL)Fl6S)K&_`yV3.ꔘ5/{%꜀%J \ hfTŃnap_6_с%@3\>Ծ\VnGT}G"`PqMf6@d)Fp>:9 > b IV')cWSVx=*Zイqn!'WS.&EFi)z%B>H Fq{HH"/Х,G(~/F6U0<O.@ rA*EyڝtIRV/{!IZ#5~Nl !J+WT5sANDixhL>OkJUqȥ"8l?OG*ڂgq(% c""@ 2H(h i#woBGM7û>IJ1w$t;=;paPyl*oVJܪ-/o0y8"udQWWPIgz"Cٸ!" 9ipgPibʲZ$>SE*%Β!BA0t^X+\Mw&AKVD[f"}ƺW 1u,$ P\lsvGk%a|υ; pG0t ȽAAqGK]tWw9D'^TAo'XSU]Z͆= $82r_BTJe]Բ:6PD%ԓɋD=y0YSTs>h%\W눀j)xK-q,oIXY t&Pq<;߆28JPD&OƩUk&*3Th 9w  ]=?ӟ$ dQe1Wzi2vHWXJ# |G#* >9;>&dA<$Dd=jYӑe]VO݆iv^%z`Y Tcq0J=D>hv,1 5Q 9ni fk\OʳgCΦ1W6'>I Ժ,>̿ԎpGHn0R Pߠ  wGi}bR9vKa1]R9KX}iN6yMnQIm*H5nS~dS}~_x#)&^XG2w|mC,Ǩ%.X"m~$J.?{a:#*=t LۃߚDM=S'2 R=jp^ilۅߞFp׬yͨ_ $s~Һ0 @)6KfձyiHKTTn6"Lۚ̑WtV?wPI[ˈe'3s2IL/9gJ|lgutXU]F<,C(3!+W۰a] !fΤsO jEGWXO{fI*@)>zNv5[|gKD \~$6Ԏ._?VnQriu5j{0e#>k7[Q07(RpbJD|2*F-X_F- I=İ,5U_0}w| ^wbzMrZ2)hކhk+).>W&?xfʺ3-{{_j&t %)6Vb\EŠk$eN$0%&Y%@I83@P\jY\<;rgE`T(_ ){!V_Twɮtkw>Ge&QHmyؾsKRI.2"G|(E L:&e$@‘ǛNu[lƞl4y-ql U$%BE`TkqE]h&Bx;ev[^No@R⩅Fj '0uFmK FVB@{wa{YO%*([n. ۦOK< zl0x*𒢾S)6WfI( ŊtG&(֐ 7X'͵j yQ2PF;N*xj05l=Ҹ cG;ҌsHK핉9H2%0 %^BSLD)%]z 1uw ѫ&;H!|j}$ SgitbgYsƀj M/YP뢮ز,ӲiBXhJ&FJA ]>Ҋkdb<9+u(wڒ~\,[% ͦO/뎢XRKz:\5C.N^Fp3@63 #h߮k w&Jض9=G$H$v1ҌLw޼ 6<)[4c9[ V^Q[O_B}0LO^M0_3V\`{B^>m~ʹ[_)CƤ׾'<%=PY$%P+F#ZlW@H-gACW#2s\\Q|2ylua3#؆9],roB,0ZsD*RI7! *axjc p,q"c(lO:+ &jJW0EE*&50eiuߛr٣U6 wݤlJ:%rC!(5yV{zHnsREbe\w;Jrt-=/1͟?'>ɛѱ1Ne ӱKWI`yZoB oNi-)ƋrpDW0)R<vJHtih&{_w#pb~ $kDk'sR-xRJCa'hC t '/>ѡcaG  l2M/v\E wԲݼaOʏmYvz4d^0iڽ]irmIDq KF{#wqo}YULRߗgEࠏk3ɦZWQu4?"Xd%ɱ^B~o4`@l ^]F\b#ep%_̬j8(C&t H|ׇ9<]On%56M%lV*i"9VkcpAz&Jp{;1 @=, l*ㆰ?ߵ$Eaw ]&?"Gi\y~Uz8gO(6bQi;/KOh /z[j &ÌMT!@- T W5Uwye\ɶ*r%~&'QT:\Nzy Q2ombxUSIx"R*IxO׊kOӷ->Ph[g; XO]u~YriZM1)Xy`{:Ku4V-r=aDcpνթNJ+{,aQjM PlvP8*(K 5+E <fTU,-7Ì]ƅ6PBo2}x'yC&5>3zT 1ud][$i3Ovޘz&93 r"lI ~0蟕FnCWuo1cAt& ,e]Q`yOgk+cO3AY@}&կh,3ۈ.*uBLlaJ;E* t'mwD{[ O8kތ"qJPئ^y20nWP bo4;)3g+/|lC>ޑ\liA| YbEGj+`٩'HbSA ^IKj`pHTT0W u@g\IC8a6uC.Enm:{4Z)* $J/N bgl6Qejrg{[wry=jH`zųC"^0gk*hr\!s*G <^=鯣.~(Q9?EF'TC15@M,cj lI(3 &X[u(] 8[Z&UMJ]7st8Io.0GL/梴 %g! d'Jxzn],XPVp;1R ZELȣ)Y7j]%CO7滳Q6Fs7EyX;`W)gZи0woKFf !PK n=m#O:'b0m#1ղuvȿ6dS^L-l19)Tpzw4aM#ك 8W%%$z٠@:\Y%ᚎ%gy ײ$]?mwv:X@e C7*f, rYzg2۹>  ZG tg5&er|[&3+_waUBB2j[ߪXz;anA=An aT ,QvNL)‡-Xx~cYzBTvb Iќhىdk,ȠT~׳C@:-Q~WĮ?eGb'vm=g",nǜ'YsA2~>RdPҪjS|b?DuJ67cDI9sHDWC{-E/1gF1/T˝J$cT:=vDϖ8G\mv氵Juo'l.b8jEc$AUgO84ʞGįTj8"d~vq,Xb5 QNm#j,jpf3OTiFNd@|yx٪]d!X|`T$ ݂ڦhY˟)=7E,xL׫ FoU|lNv*+JQ2q˰ANcBdt&0FU"8g@3y]!/D8\,=km ֯M8뜌8;S˿HI*:(>dAТ@ZM4L߷WG>4찬1E"ih?"BgZD߉f)Akj.XEk[^@UzIy=D)J3Ai a2"+'NY1ko*쾗!fv{-ύ3տ_)Qq;.E8Ϩtx7d!ρ+2mء u@qޭ..)}4W(!۵~0oX6ne[0}bLt]]^WbT"X8RׁQx}KK`@4  ]JgiIK}|uɩCQ@oq{H&i[ت+c;<sj}t{?ku3>Y+I(ild[1 \&5ۉN4}@X6c"f6YAjH$ܦu luTHzu ߛ \!i)_~ZC]9|_c#\%_Х,M +m=Nx7H 4M'%&H=-0'F/R{ow7 vaFE p>LdeDj8S`-yZ`&^08 |wlΈĤ%Bb3ez}D7';E![z9"E&D!`U5WcnbKJ+'0 dݿ۪Wp򎱨 1ɵ*=E^:'vDnypS;`ݔwpf1^"*mĐ<~`hOX ]Z3}g\=ndLe(;Nsx-a3Ғ\8lʴȱPK5P|2ehLhTdt(j7[QzrH0fbA_/T`;cr~ ltX M붱@+K/6u_W*\uIy鬮ϓTʂP%.%&6DFq kNrᯎP1t| KCb@N5U_8yf+,.8Ӛ'/*9&\+tUZwoxUǑt\b RqMS =5Ov>PGuML~'#M~L%ԁOLvdI$‹3lž h_PSAɼW<%W|6tex >YB_ 0pR TˬEt,J N)3M 1$2sm;o w]>n0&@q;΀зD\N=}|LGXG4x<2֝tF)?O0zP$|DUdiToҜHL_\^/Kt*T^eF7ba=-F}{u*?uQ gT޾}sX, q!U@y=8{׮te9P7ghC0}ͨ5*Jw Nqx~Yj"'$|!rm4\oĽj޼;Xֆ A©lWfoZ`a5IK5 ȶ>m&4kVioR_'a]IP*:Ka iBNRQ8'j$::riX5#3FLi!Q&[`A - ~>Ȑy\ˍ[ V^// $~DQb͚{;. NZvx2]cIIs~dukgqNHQRcȧIbq57:ٚyJXT d<ϱ^?0!h\D|rYBW^JxsXF9hiGR=+iǩΗrIx!5)WдN+ r&h?ԄxRF&ŝVدZ Y=MJQDP%yesjv[7I frz hFG*H~lDQpjQO*t^.-C]52 -UhvFz k3NT웒ԗ_E <Z(k׬Բ]!+wH#ʇTE-*xPJrסxD%Μ;*1'Q;%Y4b:>@6깽^K3q;:'HCҋ1kuMaPv_on@ u?]\  eLz&' obRQ07k{6H;ZW;#,B dZ˾Jr߷Ÿp;f CׂRThZXzoz2T2[3-偼*xyEiaIh>2@rn=5wVgRr.͜*[8qg13XTbO̶~ϔj+!ޝл8BeS)?.`= 5J7i֦r?ѩUE8?Ab_ zǤүU~Y/^CdptpZzPqQ!R9 x!iad-eυIJ=BM{8c#*A?(bY?jRzM'fWBA~P$0ohW&qč\A ktu8Za.}bnwz$~nlv )=]]y8?&{ӆaM>VI, ݼ%^{Ey!6Ӗ ;)h0k|d. x@3nh; 1wRpV|MJÒf~~~巌d*cevKFPx#U1w@lI/<޾R 2]{ɁFlr4"'Ő4 *5"<GAL 7|$\]Y%Ҝ=nAXۺZN~%&pͥOAQc6r_"3򂯹 -ٌA!+nPKh!'aIAMHZ_ͺ?,Ό!(x3F'Xǥi{ 7fO}\?Y4ش(D4E"dJҜ4<&Љ~Y<߹K_:D4*f#rlv3g- 4]*jϙN5Q؃N^y^!.ɴ+FxU^]M㴘lũ"gxH?[8~Ƀ Udj5c<Ԩ$sgljl5hI)Hyj4ҡ8e:GpBsXiY|5Օ[A,#g@0+`%{}@!vf8299&A6BݗxsLSPpTw(/2) ~ 7|A7LiAȏ8>U)n&TRfJ-%EOEOQZh^)eVMDGNd V3p '՞2MdMdǜOz5Z;,]F@Ų;m\a=׸?/DZI՗pi{"ʱ,6|z &,Җ )w3=MTS1# _A$ *vjV-RI2'Z.}b#'z|^GҨ7x٥ķɖͱw6].Y&koϷBcԅ[_8<(JV?Q$dI˭=s n"ܔohH|NHʙfFe]Ńr>[-[s).&$)xOTX(Qw=y븝@|6',u=̌+Phި=;-;dٌwƌa<Ι 5+x}H@wOrf*ϡ765Kc"x]Z&r!XvFo u[t`_+~4\oEd52C?fEm(iOY}g3E5٫3y l yeYbMZܢ^҄6gWD vŦ=A} ; EBk,iF95;ߒݰ>x2Z$Y(Xx>8㋭&EaKV=D~nf015Oإ<ĉPֳ_pHZ59) :)y PQYR-+jGZ,7Gȇu0.'O 0qikiQ~c@{:t(^;.?4lj-T칷:ƃl'C@ss;MUH@b~c|||qAiYQ7)aZJrt! t|ZyA}Yu  ~یۋi_U0=1{kG$ 4\v>غvz79_#-+No Rފnu_b(#%mԀ2|iҏ&M.j@UHu_g>GEY4zטX%h{"Nc&RPr/cO8 :08}pF9IeKX^NQˡ8%V̅]*8 01I+6NdCjrEϰ_̒,#_8'X:@nDX2\=TKJoK(^1P%p+:ƠߑXS¿w4N%>.!NLmܴ2Rrm ;E0kiՏ\}D Ns=GlZx1bC(][6DEfu4tUn2%,V'95b^Ydv}BB~Xp4ڲ9 'z6V&F;1c{KCz>H2A`zeA` {spVoBOs.㙴 & (y4 h8\8ȲKNM .oRHQk̼!>jzZ/Ԛ뗊~_!y=Bg%Kz!\c&D wZE''xfBuYcqd GπZޛ373&jz~B6Z0iz{bV{͈hqՖθ纓D ! *+ݯ-K܊X&~EI3%KNIO+%S)Gx' ?pDavX__pqi{S7$3pW wfӽ/HAG/4FrhvĆTd7`´t1+u4#\E _U~]5<+J ERzߩ.rs=1meA$t%}Z}_/ht{HjR]jwdĬ&/Zvm7?A3Ƣw19 qG(p!0Bzm̮!3PwJopIr `F(܃CZe,p Ih_*#Tb:d\slX-0hγ S!>ݹz&Yȿ)=ca4e@U~=7Xb.8?|t 2Lm,2)Clt'Nbϛ }JB;PBg` (ڔǞfE MjFF誕kd-Tr)Duvm" 5=e`%VU9Ig3&.& |iS&jnCf9CkMaJ :xzj$#z*FZb"~#Rr=[PjhSW,AWj=J'ïݭx/->w3q08Ers@%tm{ Ӧl{,D2h:Bkɣ!ę %7L96Z9< v+ٱIr  }ɳ4(mƒɯi&Og&BpvrnÌB[;QwULlcY E6Of%uضV?*M 3HRGC6 isBSD/Ds6}Uo>mRD0YV6&8 ʟ9{5G{rІ@^oXj0P6ByM r.hSb,M"s-!6{j紋8Gl] YUR_meEg0zv( ) ZPcUR7̿>~:K—DAdq@w'b]KiVhTIod#?" |[ W@i׿ICBLّJ_'ծ'_)Q?-v=JF$8`ފ ( CҩAS{BҲQ@'HpDv' ߀o 8AshNc|>E 1.~28 ^n]z *큲hg=#>/Tp%PAՌ+|Z]sӵڙS62]F>6LXJ\ UEj>6n`Q;HDCI;ԩ= lu,rEt?+2;3)"F}Ow-RL% YVؑj:U9/o@ɚxWB3%םb]! = OG$VTvvW~8a6/ppf>NL9ڿբ*b[`$PQƉ+hlyeWQ^{ {V$2JnSIEA.󷗄-uzMn3KRc 6J}`o /Z 7LAEmfmqj\CC<`וwI6)@]e 0,I%>3F!vLI,=1tד8[&T>!2O=qKE5yЈUTIՈ#Lqy'kFyo8sIݨ6jxj > iM ^XIr^z$pE` eA |B<+wyJXeK^&%cjhswmC ԐS]Ɍ|ZT`̶^k͒$fγIC|\0r8g~=DyRM}:3a` F=RRP/`)vKbFߩ`KY!6@jM1A;!$%Y} X/( G2ScU_fy S#2M:\gIJkqv= ۯ]M{"NIQI~dIc;6UsT\\)[Ħ͆mC0tؕ؛g!=&|7n [:`qk9=栿 54gSC Ml~=3r6oOp^&6]Wp-o%7yt%i-LU cc=Ɵb|TRp@"2xya%gɲo9}f$H1a\l&M^ qQd"8ך8*{TnTd5@eBuQ} *KkZ~h8jd{goW)Τ ~b+yAjj|͌~#"Ȧ=nuyd7J!תhIJz]on2q5g vx'l?PW`2>y-XPE E;7zF]s\}7@ ?$&e8TJڰtƫZ5H#ipFx&+O=ƬX7@}bID`ʾ nU ~eLi/%H[kWAhl~>rYF:Va[mq`*.|_ `D̒Ӈ^^-vޏ_t~n)k X|/T{&^m*QA ;;jab]ZcfEÈ}/I7mF*dˏ]v(YZ_>4jh &l1&]ȶgnI\VJSL ij>E[KejXn (.m`_ex??Bs>qDwA).JlR,~lj.]j]k;EEY~s]z[0lUZ4bNk\dހ+2ϱ{x e8,牳hݎ>%"\!4[B80t8 P9Zo_k苖S`aBQiòG@@6-yнLGcv'ӟjJk޲<++/)D6T A⢃CprAz& FD@鑎Vucz4fq+ )ZP3!tዚq  :ȉ|zrv{%tЗ# W_]JZ<)u'`B3Z肹MU1~).qTDSҸ'AāA (4JqklnK sdM";޶+073 y޼,RgʮcIYg-~~( /苰w[˿J}KRas:; &N@qbzL T.15?-]9]0upc@Y?c>Ro }~0'{LX4l v?yeb5=0)Ejپky7ɲEPsK\9!$eU|ed]1|X!|9/V/g?$}y4t/pzie]Lc.^3dּ&FoqkA??&EXi>{7]v߇-p E|RA#0ٍ߽j,'B×w)Y3BsL2#!W86+ޱ߱h4 ̶ʐ Knq'#{z:pwtSLMy[q-㐌ͿdJeco[l}φ¯aUng!i#źm z0J|ߨ~Y/˜ c/Ӡŋi7PtF^g'e&+^DwL< G/`{MseKPZՂECMo `Ifb8;" Lŭ6w4N|{Bsfr^CGBBeN3sKDX Ivt0y߁{p]l\2._鱑(#FMK'=FrMJ ҐDh2%o]bIeSZfU|ڣ;mo3T5ĕM>''KOd́g#%ʯ#XεTVuhbXH6D*'@Q|>7փ!,hC7V}[Ozam$5AWP>m XM 徸!wX5fи޴#8.1>3[uI^5u ?zq(!w!1?g*`SK`#1PRDd?VaBDw4=>U3 KHj)"nveSt;/fC[J۫bt2SٺwazJIg#KۏA263(ÐcQX<=^ v+"2D*.!C[\q}$CZ YU<]Ҝ S !"XnG0ve>t`xKd+yk^z`J fܫ.ﲂ+ iXg -';b(|: Εf`ݗ: VΎrILϪ^9PUu|6ȱd.l* )^ HQ1`CP/=XhVw&Rd` W> u) Rt%c$L@gXť؝kS5hz;PQOAN.AVx{Zzۍ}kXUclIKǃigd >W%cpujF(6Jc C3ٙ)0I?ӏBCA|2vLY28Dp)e@o!+=Vd6rJ1ހ븗hF1)'$ʵjщv00%t(~wjogI|$ zDEBBBEnvQF@7 +^>w@^Y-#;i7EP~I׻||Yw<!yU Y`K z796bC !8"Ч ܸ{ w>I= IBqѢ=AGܔR?O!گyذՕTw4([ݦ[BYwycXAm\;$Hx `m: a@F8ޏjQ\M;o-uyA[)1qlg'UAlgd \֟_[юaJU!a+61xg5 <5R&j1K14yP?Bf'$lU5xR%B)fz{SjϳD kA3#TDo"$Pč1~@vd4V{.EOgT%\wn @2DB̓C ׵yҸm-3ikdPFKDlt7[ʠv_nӾ n.mtSLuV&~`"c-@0grfc(ʓw R~ )Φn1+  ,g<$mq.'H ϐp`R^2");`V2 LW^URi}YD&U`H #hcUU+zuJl*@UFY%c6>m *Yg+?XASvd̰h'nr3 #ޜ58q0wa1-DӵYAGݪi鋂LJ%CMyG '|'rxYYX{"-`F,YZ͒zpmm8r͗K=rNxd+m zh<8>1W0`Mc+re6PκD{3m7g=/|P=<#ldNkJZxսvW@*#9s7=#To!1/reWFD ̣FeTwsPk8)_k*rMFH81̧Cl7DD5_[ [D& cT"#ʷUV6/o5U.Җ4@굄 wF!.ۂ1킶D;@(D( .fڮ%<#evdջ샛zT (deB ?\0AN]J]>ˇk&|Q6w"sppNhs_YVxUiK3Bb9£\-z  ls+K&$coq>>Pf"E+ N^ml.,x]` #0'}Uh8j`5V̞ۗ<]?-@ۜjB#'bJ'SD-,}b?x\RQa ..Xbx薖/GmƬDf7jPm( ĕgMy \ɳ*Ci ˎں]R+ct+ R>٥;?AKJJTY<]M#Ǵc UjNYXY)rIكΐ)Lea&NQQOk0r8%<⸙h5*@{I Lպ> v_Y #;OBS>VɴܨZV wtQ}] d5(c5oQd2AL_Rca_w*5]L3B]&pV^gU=fg&҇x/11_uA?IxXw(̶PnKtDž3~`Wv7g*9ħH~-'x^ O us KbuHh)VT,5TD1 ht؁~k~3EwA&*pwv[x8&k X a2H=cjInא5?#z!0vˊOGE/ds9=mV%h!>#E| `} @0c6u1z{7)2w xE[0'1/, =_@*NcS*v0K6f).f4"`]OtJ:nyV`|èw%V ) N#J-Zrm.ƓQWvp/lP25Bm~k0ΆY=<@D~U*QL1j-@_L,g6xIGsژH )o]g^AQՇp>/WN͍14Psg_Ji`WmB8|v wkBQ-' ~ï*Y-dG5gAI/I0VfO3^Qqg[TAR=TG߅ҞιsVBHQ؈;@s+rQ܅5Ӆ`ר/OM6+>O5vUX;@%Ijnzv3#}""v[!ܓUW:Qj!}*{x}5d~Yp1ld~jL%\k7~d ?q.$↬4XNB.}=ATc4K-6#-qs&k%#0uP^`|&ZPl  bJ.x/!&;6K P5,W|$V^ش^6ϭy7ϼɪ}\*/ gI60׊{R!Ȫݗ{m]PXH~S9Գ7s@f꽑;&d"VUVq1G$WjH.%ם3>G(=`/)[dw~H?=>|{, $ٓE5{ 2"[%/[;ڊ)Y,Hזu#Es2'Qؑʥ$ F-^g̞̿' {5ATɅԬ Y(3ɡAri3zLqsdNلՌaz˙nELb74#Ip)$ '8ITwJ>Wti&lDXCPXö֕V8V(bOhaW?A HbrV՗+]%i H'j=uz:oQcODNM7(ִ},]ْ apcVG& `j19~C}ojȎM2d@Dg |P1Ag6C6՛ɮN-nɗJJM0 7B]z~P$Jriネ/9ah}Ri,r`}Sl-!#ƲP݈H:F;_8TS]pj PnE0K2;+*2PŁ9I3mg%hdi\P$To~Zٞ8 q&cGd&݁5%.d2OlINk]zY3Ow _+Bg2Ƃ#lzV(Re dtp K~_x-\(m~MJRˬ6ޗv`Fm":cdjnFnt&;Ӟq "zQ=vD}SkGF^uۀ,J0}zL4DK?VV^tC L \I\\KX޶r2H'F{Z@\M:uz<_ݚ} wiV=|[̓xUqtDLRWf-5ūN25$6p Y[Hq8qœ/v-HռhP+@] j;^_U =-y>{ 9dN?9w9< A:L%T+᭼.fzB.w9:IE6)mu_+0wc${FՆ4ޟD%M%&lH}/|9Mq锧ٿMl$mld7/O;Z"%B~A5[aļYӾ5QA} & c=pĎH R=3#b _ع-GLt ۣ5\")yfLcBv|ANvZ/龸sDⷭ-EBikNFR^lUc '!j>K]<_];_/ƶ]kD'\y+f*2߁"T|Qϔ+vŹ w*R0d7kG <(Nb p u0),D`^>D4Y5ƴp9w5Tclre GxnxD 0}H!JP&*~"W^4;$ Z/Z^xSi AL}KmFePbi#iNt0eаU Xh<3aُufj +t}Lax u$|*Я,ͳGǃNRvas֕ Gg.G,a%.$BiŦKhݖ5;EuT8OaŒ5*,Mxg":ȰThqW{wmHi^d'L,3:? t\C $C,'9bsn#cIDq'B%8UX26ӕm7NA@KeT٢Ď< Мr(h\4LJ"wFcoږ:UZ2'4a z };,Qс4`KH4>!B0ZY=]mnb0I],# VS^w )]zUBOۙKn<+NzㇾLI7W;&EmTYL(N#_;{(zeoib&27puKz1> ?|ᯎ0fGq< r䢭_'XEg:v)yP<߅nSx v38 ZN$ \=&l';Gy9.-Ƈظ1CN ѥ#2a_ghu1M4^ƴ~. ͡TT28=I*@~ux3;8 &5b i^Ҷ`R鵄$&,w;\Ig^R" x1+[̖BmCV|d%8UbRu)hdV̅?|ʛR>bYա"PY6]2fqv)ȹ')$$Y\tQ'}1BzÚ;CKތ7 ;(_ͽ1?F Ra~q}w5?[?n}+[݌}niT@Nߡ+K܍qqT!Rx^H հUoqJ TZ5DW$%荮I6T)$2r'JX_]T{y>#R %ޮ* />go+35ԉ GC ɈgJȏ1k|n|L$nX0SvWKmIEy.VE`.uQ\(hDB QRӃ~ ;%)$_\Yn7"J'=p -Y)؉b.d*p׽G&6>s)$E_ ZߣpV~"OM6(CGf>.[ =]p2PT!0ak֤G` YDFv#^iqRM eNؾ^m|5>A֢)2٤EwtirDԠi NN?o{dQPfaR`=/t:<'NYHo!_LblǙ64;6\u6u_2#14c i5f: xNt~> V,EFe̔4D-b>9:U.y3襦-?Wߍ%YM_e,UnjZd/#|% Wqϩӥd-5 [Tل). %B\j$^ Nl]/N0Շdkdr@%瓛F6n3r-4頟wШ`\KdZ/ $eL'?  e{V"rA,7ArIM|ͱ(! > ɽR0*`=\m[fI?EuMƛLl%wËEZ}z$s¾f&uY8纹65Sfq{ČXAu8i* NM.3Y[O xE% R& wLw!$\FC14IZ^-Sžx1gg md݃ލ?"|g RKf#^&Y(H+ \JCd_X.+6t8W jڈJ^Sh)) :I76Իp󡣀Ỷ05J0ҒKMPks@W|RfFA Zh@$=XUq_RtFseG`&7]cl3hApi^8[_:Hǀ bpzۮXDbBj 'h8Vļ'A:=1RIdk$ր`q̩s}^cVW|N1P[ &*G|6@P"U C~W=) )Ԑm%z}/;L!] mՠ'N?qI5)]ji̞Z-7{Rk9ٮ/S,#5zX`$AVPpՏavL:INNm0_}ΗI:!6;4$r`V}zK%Z?a,*jx(P7sa1ESC(BF6?r<fë4`b(=^R+C#7!؜!h k&8YzoR!+%D,S!펿tV</2XGsbI4 U<;HB[F?%$ty'y/|TD\-wQ[bm dF?F叩gXd~WorTM5@lR!UI?L(Dd8c;D N W [`>IۀjT =LeA#C JLVk2aFi" :/C4l2zڊ=Z =ֿ=]4i[+)T`0g$:y]i1yR]]{+{jS")CzQ:|Oo 1PMzG]6 $I]˦4“_nU<~;q큡`\ "mEmk#% 3=N'T_{Oeԋvǎ;QMm9ףhz* `(ϚD$|NjJ,u(X -maOHx-̍WO$1T) 1 jt!!"8'*;V?0N`A!gA^,I_C|Û? |iQT|7OɊX@; b7`kLI%,#gP^"T 8zHï*h#ЗY黹 K`1f)Xc)[` x:`zԷ_wRLkj uz"唬|䈠q$<֗( :H~$aS(z&aO?HKA2bEՏl ]!VJ5rPO6o2;@\d cݘnOd#K%<0}Y{[%Fݗܜݓo4N{W9un8OV#.7})x\/^k饙uY帀lҢl8ͺrm57gv Em?Vy軛˧%84Etd(ﰂ^b %e^J{42aSz`_T+\xdg1]U?-t AVs[7w(𶨖l޽M42TFpuT4Vc}t+m%?˼eH sBVty ,-[mLe)5ÛeQ>)sdEEDYx\+ IJ0aE};&/.|<p_ Ld5<8M$J%@vzd{è^<찦ЕIu$9iN˛%;`6?x1TaE dz3wp__JX#Fpf 1 Ȁ g;*+T=8^*JS榁1S^:vNk!B~UfKOD)CVptD9+.YW|Qu碃cO09G %%ݚ8S\7\W' +%j 땓 pɼӉ>v4Bz/9kUǰI+['w;Q ^ߖ;\0ep^1xͶ̑T5э bLD ־x>{iY,ӮcM^ "<)(ڕ}^ OCqi,8y&e +*33)3S{b>.V{ڛڛ=Nj|k;Ȝȓcb6rܨh)eN!Oџ@4FZd9}HEU#@g;*69f[].f`F9? ˳+MĖBdsԅ||ōxǟzr93^IptuWeIyU<@ . -Ҽ6y5źM"ӠP4n6g&Mgǻ4Ey̮Xbwɩv &HLe?[uEMCWBH.51hUg&O;ˊv )RΝw>t=ԁCFX#ܾ-҇Yl}yk$1CXC$ze~@ %MҥgOqX8fpH"*-ͤ&|(,Nc ;[~x?.E@tTpB0)BzO5j4l($mܭޣmGuް_Ӟ۝Zb I6xM2 B])+] Ė*2rߡpd0䦜:# ',ɛϓ}ZQ\f/0CTEj 4A3'iƛR*c':F7h9GdJ+Bjv7A\ܗ1TM&lР訩=e*OmNӉn* #*QUoUƺO8:sGUvH ̮rk_lZlB|{,;~/ 58*LYpc ;bkXTV=3A]/TiqrGo9Ah"&@!X^lj<4m6( eαP,#'2՟2tп:d܁N8:1[-ﺐWPO.ř_tVѷ%ʤp{os:D7u)|jB;@AȂAT%p#eL4Q$Dkkny%xptnI+M1YgsTy&bɓgIpԟlP= s@P9kD1]zPxa<[F} $t)GL*l8/y}QEy;Si*cL={E)Ss1s0BׅfRT41l61P (0ODť}{ p)<-SA=õ; Hk =Z=]V@N*Tj_6bO_,-;Iu=I e5⛖..InCoz ڼQeCvwЩ&?Ag< >'`ģ {Wmf ^7V-Iq۶|,_\I El X+ުOF可RqMUB^F%G*kWD-4.EueC򏥭2/Nk(Pka| 씠fzGvgDFCXn9SŅg7 qیf{ʿ kr"u5Ѳz_h!*Hu%GB{H8yoW8k(m6}g5Sk?H!Z: + nB2@i f*v2Y~oTr.V@2$睤q-}e )1VB!61L5YmBa|U1!%EuVRlI3J2P?`ZCh5bW[IsfR='H6hbӸ ]Q%.V*PdJy4".%3a~cSK?QoeAOh]&z< E7~o;/D0¾ʖCl叠խO^nO3Sg)|$~ zvar&QAe( d|'loQlMnKwbn(]_jY*> nպd>mcPi:XAP{?=7.#z*K|@= ˫0TJ(r eT K:'(5&Y@HBٌr{M' !51f8unϝ9vhmtHdgԲ:Z ^V}钘e|d_ͅ."gsAbz>;}8!5Y]jSb={jRRqڤ"j$[@a\  fM E;F'[Hp<mh2K-ĺ[#SK%k 0JSGxM]MN^k1ϹdAnא=ЏF7:+rܱh Gٍa3KNkiSAnd\̥i^c.sbHsoWŴ߇BydNoHs:6 uu^}ȶqQHe (GIz>z)sWkjq R5Υzf?V8 %4 弭c$^9oO?_%sYE4_D Lbrv 6+5[0E +_Pd bRxY nkn gpU-KHϼEe,;qeݣ9% |_g$0B$1kFB?>@GNۦrmkЮDNP|UzAA` hý8o/\Э cj73~TkP3]Iȶ血;OL)x01B;USYȜӥq!`| bU~i(j'{B&T{co.yYTV$#!\˶ހS?/.>+E#SgV %6~e m٧j_੹6qxO}+%`S$qiDnU<=Ў3/o%1ygꑼyEz! KBv*q媳77% )t*#Ÿ{ޅ:)\ܐqDpGxGF4\o:ݫ`֫!GB]^>X7֕-"ֹ*CreUs*^(kbVJrv2|~0Ă@wlo=}FR$'s*Y<߮?DH'f֥N%A% u/,e\20ԛ]ZJ|D{m4RS=PH>4~T8T#7H0`W $Hf,bn.Ա];*F#;s̼Ug^v^$N<=zAD~愊kM]2 ws8͉TrV!)8|yT |eiL4 L)uh; l:_A͹x>q;#{k* t,2l.-ؖ 9r'xڬ hlCsWM}}{ᰯD.U#qZCs7oKQ'2eEkY!:([>t1o*ITkHS]B7"50m"iۯ4Xm!hVE8x?suYL\lǻWKfg6iDD#ꤟϱIAu!/z =ۛ}[~Ftt=H,!&ymR1 S\|-؏#azBT^YDYqkBR;ڢ:d+"FA>S^kvj.^ǞbOΜ,Rh=,ƚڗLt^49Y^BrP־cf#g_a2u4@m^ҋ{"S&~Vڑ~"m|bך0xڊ,ѹ#Ԏ¿خ!΀Ԇa4uXS>[-2\ 3J)mW(j U㷹{; #kq= -Ru Q) ˬ} JAYT~/βvi RlбlCEX&8pj `5,A&܁&bB~wQCoMO\L,@c Ƌs@Ge}m$!I{tuBhn$id!󝿶 !=yׁ϶3z!PbX,mX &0mFk#TO'Tw4Bw2[ѣn:M~ 34kW5knV޲D" |d')u$ w8j6xEf,U(kaݩ]ӭ'8 6mMoțu:5㓄ĞL[9aJVHh~֬ݤJՉ̾dI>øR1| d@!&V9#!X,2.4 %P A[#5<. TIXp˞zaAyڥ(URHI0Bٵ7z+Yklu(x]PmH’XS*U`o6Gΰ*':*Lf!73("Zu p9#F>Xx=_v-||D Rs#{ꪩW{sz[~{h"GWOl Q)ݜm{쵸<|K׀I'=G;ik'N[ZKTW$NS0&zSb2n>%d 9h7q&JSPZq8TRDiQl_^'x\`ٗˑ@FZ)众ڤ=SI_̶,. 7ݯa+11a6ɫ&T^,OI>u,̝WGodoZN'6RXgJC+3ދo2 tucΈ]Jt"Z"aO1k=ߎsbg"#bz_RW_rN,"02-"Jm"~3=_= 0%Y/s V6,\)ڇ#LC T\Iz +cxlV"- `lX )v,-ۆLԵdIQf iMƾX-Di"߂J/8pwJ=Y$`RlEO$@ʎ 9L09G2@H KFi!G!bLZE{`5y'+ ~[vi;rt/\6O |Ug24DoҊoF>-iQzGmO' 3`s.SBin2\4M~g &~ QR:L?+ӬT gf\P*cO%{fڰA :uc:C> Y}al<, 77GgvDݵz5_~3E T*럂4F'fxZY QO \qEzq'Bsףo}K_ES;7{DHcBG[; 0GPO,* O;ր1_>HwG>z i=WE yLn4[DțJx ZpB7(z)6yddzr>cHoy#SCсz9&OsɈ%"\kx /n # >}'rI/ @_ )$/U7 dmѓ{24=ν}F٣}8C0TdG~gEN,KB;?jطQ<5 ɟ&fOSYΩh~#Aj{,0O.f:tzOH&'&"B} s7|X]n2?c=R{4ßGdg?Av`'2";lB)Q>9U sW/LCQgAc #%!^@q# b ryGFj)sYEvM1&Vp]w^:n\J&ӽ(~_?̩hZWRVʔp5#0a=݃ܙJX 8ގW~oq@ FSTrU(qhvxIC,[90޾%Rۛw  ꥗ ؿ1T_=z}}C `.2{K-b­XyvGUsHZ? xbD2&q) ߂c=xpAW&3^lwOzUy[ꏑ;԰?61]#Mc$a/%L@ٺH ް {Jz.vQ#BM.RUiZ$'gW Zf -mu{d[6J?S6(0b-&yLDD=CLQ?#~q^~->FIeƤvul~ДKcE@TyX*<, 3wV TC~Ӵ*ɴ|܄ +QB:?:Yu:L#TΨw%KUYA0>6sܽ8#2βnbް&MAدpSndGK1< .mLŕ`| e8W1H5bPT n Gx7twrxi%8(& +2ǯ~jTR>Ȳ#G` h (gg3nx,On df-f%t%xEc-/_%Մ<}!7;Sm00m7uthU~OؾJNCKU,!̰#C{ThX *DWlh*>5&:փ{, z?U/$ @נ!8YEw* 'ڃh0E&Ś6MTdxAa7>ٹ~f3jX*͑2U- xU T3q u0W˷OrsUvj|+"rc˨@_UϲjO9k ;pNe-y1$#*nW]z+$>\nݒ=$ڃB3]xs?wÍ0 llfd !h&h9)Bj0`zm#jugv8<QL)t188Ί [`Z%0-M%sl:;\̋ :tWE)F$DbaasYog Vbgl|=j wVޤl[)>#|UvK E"eb0av 0g?C)/ 0v';Z0ZMkҧ*E$ *wr+`(  Z?y[= ng#~O{;<>{(n?qIn92> <}A)(;w7q/{ovcοm"ln ^X ~-i%h5dA猉ȴhO\WvPeÞP^hI08mfH#^DB:0%DDx ) yHV€wi7ɯVQkk^^✂I< I0q(lf&nbB[Q~srmNo Q R |E;nZGqؖi%+4t0}-(C׷eOPȂ_ZL`W~8*t@gz>wMe{([/8&:/6F:~Ǹq_8g>K?N\d\zS15 up({$&cQ!"vƎ@1;Z 5'1q ?vuaE 5 @ʚE`()I:*7:!Rl$5k#h K-=r+ĈBoS_<}vkoUdfnJWʚӠT4*G uyѕOқAR& KMsY6B#h\;Clq+b@`E' )L:tЖhe.\hr,1[h|`b*s(oȬvEoh~_Ԅh]MaAWe߬.B a _Xfœae\) W16y-<|/e5NQx3$%<}@>rztFɭ$R=Pnh?'@71& T=)@K5kƯx bݠ*={w*A*S{9xnlVfrj^#/^8![x}g k(g v3NcZT*ey)!8*i#B!^&z-4)ܝSEҕk(ժE%c}rWHKJ; .˫9Q=P/56,YuA&3c7"zuGuT?Cq FvGaߧ0SCvݴf|G&_U~$-ѳ.Syhxw3t@+J~dOCSX}ulO<8Ι d%ՇSxXW-xxhf{U-O$%9s ;XhOn 23}"'0/Yy-aP$Yku kӐ\]BJ$q-(~D].j2%nV@ka3?SGB $񢥶YNݶa- :Dn5* KZI fO63T񍻪%Z<$bHGgCr}?vt{ӱғZ 沩+2 &`M(ʭD<JmwҊ2FF{O0F'b F7>Ta.k Ln{|mdRBˉ"wRwZɴ 17@zeĥ8\[}H6Bȕ!duKh"{~kкQ)궞ʲNf4*0|UⰟtnfXތiJoTq_e^Bv՛g ^6W2U?>!2 ȼ|m6qr H]-|g%͚>>/,S׹{@ ~ ~8)@FmK.P < `/fؑ/dz''d`jxHغWg&N7i9ĝHyjcQ频b\+T񞇔 $i+Fb <2şSe]PA0;5aǜlS\Qa3ơg&#2xcL}6A .yf)ȟcSH^}'# b~q79Rge{~ڽ<@e FI jilcWpGWc,l;ΩFkտE >휚mw`^^5ںV3b} 'i&;G^-ͅ} @f@)ιQ׻I)/c=a2W>+m׎D`BccaN+ qf2{$q͐\o803S!Ba爗'nu7_|h]`UU dMד'z_^; ; Dez!_ "hǖ^N*j6IH]h+I\{!x\7SkgPxԓ0>}?h ٲr n8}G%-؀?2@lKfTzQ]\,,!b<۔{9Fp7C閗Nkty"qs5~bD1=2o-42^(oFk0ITs]!R3NRG(9%taL;)k7EZ jg?j="0D@"{5"(E-yM34o;y9kΨ5ՕwN7ͪܡGCy+H_DQx{GvT,JUm: p\aU߻>AՐXIw6Aqeg] }+{ӭGN0bw"$-4qxc2>E|/Taؒ]6@ w#6pD3]W9l߃W ?sMnufȏ=5mPҕCȹK vAc~$Nm}Eè\zU&fS(ַ9^_ej-~Pz$CrC/]ol@6v2ΞSA?a.1gIcEjBgzG+D̙Ĥo[ )3GȎ%=P-b,,y T ɋ#?=ׂ~p%q$3՗P,l5))\FXFS%3 vLPv&MtKTƬpvW Yf1ķ蠣ףSfs:IBr;1[vZVX2ia '[N0 btx؇j@T6ݙM^q@iR? ie? «$>yv\e5 !'1._]\Ǵ ;zKrZ$Qŗ:dGJO?al|X7 }0*5T%OK15J2FCߏH} 3oyi hK7,D[W.j_ʖD,p8)qYKRʘa֬E-3ΘǏ;g30b,@!+UiO^Is'2EmUkL`ʰJV҄I 8fgŧ,[~)'su2H?Wiw% {lfxZŘui 2ꈺaa\-'Up43b:GWhNm3z6.&45RD1=lFW(r#qKiǚsw*CRtdSBq+m LdG۠.qz.\kU CN_^e/ |ECOUjfBPL`|ڏ]Kn}[8T Z8?r-0 i{l l؄Ikk j5 >HvI`:ʘ*I:ot snՂC'~l9RnGOG77JjΘSt\BڣlwJ7LnbqS}\Yr ( MA[edDZ.xbMϡQC&>c$k)sSJ#kIr7u(L1d 2>@"oV`.g['[ަ4YZ %lO[eh:RgoćăWXwan(``&;:ʠ Xqy*~Qv;[!.힦 Z ˬYqhה댏vTM_k5KG& YuxSxu97o@ ,yI06^ l7r5IAC\<& X 1Y$Fϝ %o!ܣAl%B{p_92RxɴnF*DfU< 쫘 l |{!PP2z  kxF ,c#@%dr&/R! }wOc"N.^{#`唇@>5U~J;\-ï~ 3Z -w)Pzu4>5y؈ӆӫ5Azfm&n LӾ&1 fH dePCeOH8cЀ8\8>n" lVL|$xezBfH eh<_9d`.oT%8e߸39oG2CPPa8Esl#JG wRF'lr0FhFV\ 17<;|9 ݿ2.IM%Fv'特.`u,V0̽ZPRiiK#ӣm^j{ULZ*o߼ YnWNd ME.lto&&pŸ0x:<%RђvOR5LjpsnRykV7s[ ?έXl^!fkeDοXISH`I'x޵bE%D'FED0@w`y<=t)$= \jᡵ.Ƌ3G4ͽ1^^!Fp;hYlWt!{]`:N6-']/Fցd@=A;2lDUƷO?䠰8Cy7 0QPZa_/p&kgt M}krzu0P7\=H00G WFD:iTkMj*Cs#%:iGUbS)rpe7ʒykKDGbCtfʴW#޽e5 *TUu8H=\-Ȑ_a|G.Qaնu./|?zBjxScurZܸ]8/V1|u*$;iL.9(\{ b}Ƹ"QvrDr$WP Rz{* LW-f r#Ѕ|lTy Zf>$t5mh'ȿ$GBŒ֤҅8\37#/DwN[В( ç83ٽmg)g]*fV P@ly>!Q(gY\ Pi3%Vn/7|0%C $PO%䞂ɲq9f\>v)Xh>؟߯FpֱWv-hwvP8aD7u#x?nOhTwgg.)ֹªNktg3hMR wVEj쇓RkWuD_ d mYsyT:>p6=̓ 3Q[de R`wJ*RRT^{*þTf=yF Ŧ{3C(!jޠr&K~mo8<(Ơsw(~w I/Qs7 ?"Nl" 2wW:ìbc4F/ B+vR#bKvNE=߃*,40+c%o,\mB%̥Q fKѧ j{[gbkѧbDQ/1wՓsr%d\9Rn6fҗXw(5JZeE$ g3<icъFhaډl [*)(,5F'JݬVK3Ya koR,CYX|Tq,uhC+8]#= Es {ԺNY: :*vn!"'|^cfqr4 6{a {HrN᪛ʞ\ݓ## upv/fa~픊 _Q_϶6e-x"4$w$ f$Dga@6̈́P~@х~ m2e@ݔIMJkiK~+ܰ5%/*d+|֕Q$@yd q \LD )څe(k/LԅLOK;BI5RW!Ha(1<HڨM&{a#Cry.~wXK.)6ERjxuR2ώꈎUh|[/}v4voQΣHhazȵoLH*Jt$/4an9< aO{1@'ze}d7쭅 dL}BlК+@n88vw*" GFiC{(ՀcF?enս:Ikq g91CRJ#bϘQRcJTk|_Ws A"ҰM#!~R)5# ?%e zk:lKn/%`KtdxKD>Y0W;I|u't}SsЍ>md6DbBʨ|첩~E߿9ZgX27%*B1Kx8ƴVhMrK$jy%ɩQS}kS.݆&'b m! (c\b\g|>;xeU;]kyv r"/9(ঝVsx9S=EY^!u=2,ʻ 5qYMDKI^—yrmfscqӊyY:[raX G6{dM{ύ?\_W:| XWnҒ+DW_9pLWoIt]>-lŰaUdUV9 -qҨMj zAp'u<+<>(g.i5w]nla*=v]bЮRzbcR;u2FWhɚ,&g82d "e$[ddn l%^4l@xʔɩ=Ƨ B"J\HbMtP3 |>')Tb}k)W6 ,5m,g#a{e@$LM\@k01 qU;dD[c/9=N+ K)? ,@ޭ D$N3rpΧjg %fW,( Rj'̣/&Ϩ7͈vQ8=<(s0,Xc'b2EPqjI貢/Pĺ987 ):ta348}$hw-=ڙv>@#؜gА0p VUm^m4LRJ7Vԭt>v9/ma%ƒ' և+b1IJU*qc0K3,5`FRu^P}e ׉`X$^:pbi0b蒔 7C.OcBuHOzE*4үMT '9 ݯ#i@?eT[4YU_PCt,"6fuUH2C"o.aP`J-+Go{VĀ]N aAtlk흩Q]4 >X~텓'ضwhq O*-Z$6ʎNKS<!/Ňː_Ҿ(V/޼ìp3=G1T@m2JgCA81I < ō#}Ǝue K:}mPLLu( 0f?Ue[8HNqdaJIۯY]Hb/4:0Cu (fA~ o ʧ"ѿN{'VΜw3?U 2_C#4Ƃ>w~īZ{e]pQo/" !)}Otn<}RT$[!vVě5 zdDtft؏Ɉ9 I sǀ!&u:܃֚N>bƪߠ(ؙYY!^o]5.@. e̯^Rv A$-֪56G z+〞\Gۉ+͙jC˞Y,e5~U7(4;x!l_aD\lyhe ?>Ӄﯪ߮]?K ,."nBX`CRݏU%>`( F=sƼhxHrܧlx$~bKr Znuk}6`0-h|Lni$Bq8\T\`Xv`g:P5pH5Z=:=,4ܴ7^߄kd?bre&;6SkOK {N83byI*_~ T=&xkGұ-wZ7$U >d~fݰW.`+foz rWyvҎin՛j*,}MD̰F? PYv6Kà&kh m6162y$ܗ =KOd2JwJuT.ҡ [S>rZV?Nň7G˲x)/)' 8r^v&/j DB5 $ɘ^f٨8pkRD8gnW7o4-[ŧ,ߧq=UM JEB ` +wpC2Ϣ'۩g> 4df:]{4U. JxG֜6M]̹D"ԇ!\HqΓ-tFwsѕDqx`iU{KP!p,='$Io<8c\9QZ!a2 U'9n"5{$sY2OdH>tJ3MK*Ty?\rA^Azy aPB9' ?٦w(4Rm…w\lkOf|r9Ck+wckgpk炽ZVe/3i#xh30L~an5''VQ%~AvoP,AtD?tC-Kc ^g3Tٸ`Ѱ 3K"3]:pT8ڨm` ^`=YXFIčqns&2FrGgwp(%X#Ksd ށP|u8119a:Na7EZ*9vz@ilcNiS C݂f^7#(JO {/ڻMJ_j)#rE8u7=?ÙvFr[,*9GdAj`A~sJϚLg~hlJtQ:Ɂ,Tt5M(iF}>[,D q܃an?E ׼%((J@^Qb0<h0Sֿvqh.!$E!_^ _)G6ϢpL2 .$-.v1`ˆYq;|Q6 E"i n'<^7$Sɶ]U]I/ڊn5zq 4(3\bUpEäJS T co|Ħz{.pQOg/Y& 9t3?laj$xDWj7"6^q Bۜ3Exz!/&,4H3Ucf7OB>q"I$tUŪGʊDYmGLcȘ?2"cV]5 @1t"ܾPu{O:jIEPld/"_ {R3OVjP=(0ӞiԘZsL'i-fA4/ ^X-go>jlZX00v.+:w8 Y_^ATD ˓a̓T<}1m_0 ?C+OstLҥ$TrZV"BK* ]3&Ϝ卦QW v@,uFH&Qy @szMvV3IKe ©ʂ%_8r^BBO|!Wѐ_:Գ/<7f3:oεa\[Ɣc_9mƯj{=n}0ETWlE*:Q77kO>@,\c$'H],5N5M:}JA+,<,$b̄/>5 yy|0Ly_; =9Rh bw!V٠$)q]`=: n/S8Lٻ1Eȕ0Re*0-^$4[@5ikIڹF4=oRجU}CW~يP@u&=g+O.E!^؀V-El}vacY%ߎʔ+t {hր!$e$лJlPDc֨ ~KZDUIThZ3?-:zJ^ 2[FRYeT܀A% ƉE>=0t "3=Ꮛ/<&ઽ"|`Rթ]m]0ǜ~E{&8udYS߶gnl1BTTk[;=3*1 &|!Vx}~H@BIu>b=ȃ;I #7Â/Yt*wPL4:@\z̢[wr4߫59Viá+]{(Dq  K X,M?^J`6; U}=k7Z.*;SOsp3GP@͵_ N\.D&U>QnYlMsu Kw v\}}B׵xB)ˠ\ j qI(XTHU图"C 0қƙɀJz~|řyɅz$Yuz=l)aH@;9桹Έ{Vz E29lo 1?~"сOe ON;=C& nʅ}CF'ots!3(^&(XkC%eVuRYf'> y!v`VЧ8:V zPU8"U{ h2VpF3ռ?Avکit̡eʍ]}[ziÞh+_2Jy@³^TZܘRL<H3A8_ep ؜pW{I@ :f.}һ:7EhJ] OG6& *Ft麵pxFJüJTO"Zf鑸Arһ1['o-ۛtMM ^ήme"2BgUvߧ fB)bf{(EgWbJG6*RPQgej2#uqm_9ZgSgDPRO(Sǝ@n}KaLj.Pq_'zY=W* 4>BپBl Ҧߚ}CZT _SGQ $4l5adCA+fY;k|Lu`̯&6;MB \BN " I tf9xuH݂QT f3(UFR-ӕzOD <#/ 2q~.N n2 Y>gUd0,*N"JteP53#UDZdN7p#t@ 0A/IcqrEm-]%p$t#󭄦1w`{F-U#@/ ;:g͋Ct"U.3 d| 3TY52H]Ik&n^|d.%yfa]G|ܛ!O2za2 ~?h"{Vm>7r<.JEVY'*& 9!G4=sԬp4Wx;u~&>Fb|*=L`\׼oΪH|X@ͺBg2OW\)h9U[= rfpb7Lˁn{zr^ϫ "3:B|h;!D,.0y>6ᒳ7U'>q"`X(YOmfaj_j5cS0|̆1F tp1m[iL4|`e&_Лφ5iCe@rTL咚ey{r&!$mvKry!fuY1K?, C_1/qMtpx >U< ٫6QDmY.&״<[pƵa =3+.\ʼnQ,% 0ȑeAE@M_3m:܂[ ˮqH ̅Yo^dDG=nbB"(1P6{Wҝ3g|0?6 u7Rhv]Cq8{LuAtPt|"PRv'1\ qVO9ƕ=e̐꯳xȤ+ɞ "+He(r%Z|yK} d5BCgB|REslǎDun5Lҭ`%r#Q 7$n0%- G A-toW{8.'іSk@Ҹ1&~'U0dno{ NŀZ*F7zJ-ʏl&nr]ݙb2PJv5DE|*d Z#V iqu("Ǩ_ $}EK۩Э4[ ݂!}Sm2N@ejژ$MucFƶ hbdKإt;c9ݺm$_(Voh6bx+BYyFf_WŘ]x(貖K>_Q_[JJQP |8V9+g~s\vDEg577&V6:uq 2>JzLCRs#We0 sDgl"usMδm6/J7 #':1w&,;:$>*,٧zh+k 'Q*ΨV[;KeMpHf\Dx:yQ;c۳ўNpP6-q=]L 2 _̠#>r/E 8 Z3F".vɖ5v5<;@a?=B oJ4=m{=Pp.+υ$B HkD)2hu22>rzlER}H6@lIdx2c,KB3PQ#pE {,ЏKI'9_TW顈5Y -"ʎr8} ݦ[x5^<ͦYxg&4sgfŀas~3VIJe)DA 5䔜8c4B5lH]7bXw0OfRFY7)hXS=!2<]R5w+ʡY /Rc#Oŕ̵$vzsqDR`ӥ(C< +!(drYS]ĉ>X $l*&s(X(  za RFuWϩkUUb|ۂz[39Fyľd_| *]gsUz/nl!v+R;N@V؁f0gmOmd8 %XN <=ŽBzvTĦX*Aau6U~M4H\&Q&/\ޑuz$az#yS{Ecwrs3K0y@&y1Mphur+< N;]nd| \^+ #ISz,9|t-oj١˝0iЅ#~_"@=،vG L)«Ȧ$Nt5|I2l/7.'FFgoS/UNUzias\iz@DngUE h=SeN_=܊@-xgX󔀩"&>P9O0.\L@"Ad-rEm7 &EF<, TE%ub#H,M0:Hf˭[ c nfr7 HVߟ\9t,v$jD[]Uά븈dKВ=߲D74XKhD9(Q;V2 ϧ=S9kljVFmAC<m=RM;&cx1Sc,\A S=&HD+9gl > J\RD9:D}G$GΝErkTTK'D 8IsfKAuǷryߣ3K4Jke[QRIqv+ciFҫ[=ű{^Ż񛝅giu(mbb䡈Di2 ߘIkj.TRxڗJ-AiߠU;H/":Fw0\ =s"d,?aLEtS>2pP ?r2ثE?qd%yj6JrR<|gʬHqgZ:1A<\8?ݓpY`v($~(8n\="#TcJ{t6N+V"')wMgh"Yh_\E{p[?xޯ_5hf0.Yr_ǍU̅U6.9"v^K#r`9Bm[obw_Xu6G^B{i~yrtw +`ۂkspz4\|o#x1~Xm{(M:ҨwY'.mwc7qbO4Y0i&''fR =ԋԘ88bӍ.[~dsѶmݱ98RQfTbxqy4L#{η2o~+^&d{CixQ}~(cHtٱh$(O\lAY y^&-pPxDʬ ?IУtY9h7 VU$Lf_ B4e\˓K2 KnCd(K\̶bD &58}h A aD=jRi4h`7X{Jς[ɜ>]Yp3.ͧugqR,;`v 7ND=-r+Z\0 |mN4JU`L¥-Nmنi 9SH~!u-]Č/R!?@j\v}bP݆;}{!@jJ$"0]{w 5jE~*z 3}]Q!ۢ.ȫ2A;/(qiq;AOP38ȃ7znE]L.-$TRAoJh%6Q˵=U QnQTTGtANS8AqyR#es96؃=^z0vA!WI7DbzKh!ѥ[y7PHV\tL= rlS5on ܔZ9Sr_$,PX7fl7֯7j7ͰGp|><-eiVK /C _*l=lBJ;n/*!>Jgmp){1fn/ەɶx{kV\=cDvTЌ ̦0gؒ:Zzcv~f/(F|D2@P:.d M֬6Jg#?>)% R\okZm:mbëipWVQݣNLl&*IZ`xv _/r=ZeSǟWdŶcL.nqGV;14?g Q: gkwBe<| =\C?h dq K8S!>lIFCݒ2BEPJ;m/ vRbχ~@XVKWm?V'r([PPu@7n:lY 1K>i^b}~K.$k5w,~/3քb/D*SOaQ:kw.^B«-ȫ[D`؂sQ+I'0H\x<flAE>Utlμȋy&d&M>nK]DVP#q޳/Fġql6)7 Lݽ֐Dj$7¼4 ^Eoysd1sa9ӹ4=ϜМ-/C`8Sv޻ bDgyg~[p1q;!4VrQW5рk B*gU~QF{k$aڭ>cQ3V{yI+a-W"zFWAFp= S|J 𑙯\Ebt$ȚP^TX):Mf%~& 𵓁,\G 'MA60v+ltKt,{#teC_3KRm59mSRG;})L`x:ǜ3p{$f:8 hV}H(#֦q$ɟG٧3qp[31ECL;&mn3rբ@E.*Uϰ}i' rЍ ¨qgy8{yIٯ截5a543Xr#Gt Aպ0R:4AFqv9[co mׇR.Cs4,*!;՜7tGhQ`,>:?A^oUUnt'R 'gZJEBz*ʼ%w`\.jN}|cH=^bLGs15WCX ` I/"8{)Khh%@3hkZy]B$z(ˆ]ֽ %Z^|b>(Fۏyh|3\ zss ~Iq75uUPa%]^~giߝq9|F8Yr(7`^uIkM/oK$7mݫva6 q-xS-퓋b@?(v gwi$u  ? B@zl ~H=Tb3@ޱtcpżQp܄]K(E@Ti1$v`Doamæ fB6)|jrB~ ͥߊDA/Xe4en| JZ>߭*b#u"9HfӦ,I#BXG-}}j X U[R #Je f_'_[urPid(ںh&|6Vf*W)U;2@ü],:PAO%nG}x>cRC%S+;Q@%_7T :dNDᏩ$ovąve} ?t jcu;lq5sAR Yܩ+퓚%@X@2z-(aWn6|&1r2=OxBnl+mͳLtwGy]]I_Lda5[2t:G 8JmY:>׎Q*9Y 5ƴeFw]c{翹cxZ 9^xd}OOk摰7̅l>0&%$P!yCp/U k`ٺa55d/WUHS;( vj|p^vOܲcX?jr_ ؇q䯌,wR !ʻɍ۬X`z0ŴZ )A6K>~ˢjIߨ Dt#'A2gm*LiFڅЯIF,qw+f$'7>Y䴺|=]jw^^fXbcL2i9l|L IVo+sLxqˑƩ:DQq-6l( 4DgiyJᇊ6F?yAZ@+b{7NDvCkM#IEE/1@W29r"`#~wx5 [-[un5 .(lPEuP) R)O4 "(/Ti OmM4s ج= &h2REUt$.V@tɖe?BE[LX2//I蘒3;"ߝJ^tQoӦEw(BYqX{b;M9cfyU{p$q%z_}pFfvRpdizKtf3<5M/6 '1J/ݟ^7iWc^=&XsCFpјN;wcD{]iU1Jy{T~)欬 7hc#m42e=^#i"[{U}5D!9q:GjL;^4[iL\[v}1y]@'|s-ap :%-5,v/QUVDibDnWBFq&xQ .oἯثm$i~Cނ*Y0ȡȝ\dBxXAL~T g[׋mUv<~蒅tfzeH(L$3@@2:Usihp@]h_[_̽x(i+4y#Q "S;om5|>_ i[ؘDAIlIx44 B>dEUluj<]]m+3…YSnpA mȦa;"rY F+TDZ S;'&29An)I,:\̶H·D0[~H;s'$s,Y>D;sp k?LqzCxXZخ܉MTqLs#M@ d2glwf2ӫ%GɮG5ʝCQ8A> ["2qu GT>?IϪby e,-o Ʋv4<(,,X/IH!s@Dd`.SM`Õhu>|y+mBn.rIcdQzqTn?^{w~`sg5$q>sVBK'@Ѐ~BrsrQfBhKo܁ :?omY9(k4̹k _DP|@3pl'`_]?ex^{4jƚ0=ò刟\qf9+EEl;CfCO ,>9(A:_nj+ .av_ <\!GunͿr$fGNaꉿ^w0ha2~frhY-i|FcJlhfAxHVuMݬ ^ș:xqbnu.;yerilɒgtmAʘm0F4cZ7 uگw3 1jkZ:t_3AkڣY fy<ӿA0 yƎ-Q8/eCYFתmuUԳ:FbeԠq6QmazjMءb uMc| ϳSزBf1,|+fx?ዋ9|iYI]xXUǏKA䙐e4;dMJ3MX0 2 5qhyBҾ&=Np0eZ,u.~mAc3?`8…i{ǖ9$ǝ]g7NEt Kۤ ǧ?­N_qM!eǓILo '( _G!38!Aakp/_a38w3[>#$Av8[jU@D.fthVqT|/pݸt5ZzL¨ͥ0l[9-A?(.fq^Vֱ>uC~yoP`{Y?.a!2_1x?qjB[JBL^`vS܉6eXEٛ`۝iO䔘2O+fV{a[4iZMXvc?.FfF0} 'Ĺׅ:<Ðhwݭ _!TS;D ?IXgZL v:v_zx_DkPU йCٙkLj0Fd85Z앖*py/G{-#`w} ׼jy)~I `gP!b:#9zi(04:kX]JӐOhʊ3 &V9_A`tWOwQBg hUXXd8Z+(]ANHf`n!ڧމek5b*$-0)s,D8 Okej/D}"/O qn!n Ev -Gwv!hc}ջ݋7@aiDv(yH!?-mm`ouw>T} u1(Fq2ۉh'/пNtVxZ'Y54B# PN5/Mj3 m}o}*?9c <9(Mpz1mJ2KHkY< *6 UB/[_8<󄹥GcP33ᢵ2w`)[ ՓMnőf~uuܤSgQcsZc蹠ʓ˞/i bUN%Rc~SCc#eM~C9>8}0Q[ё}׶?JMHȿ!ۏ"FSyTDpqZ?t$Gzۋb?0_?.Vo8^XoǪh}]lDr #zÇ(Ѝ:f( ܌D\|p-[ ; A"XῚ?f]a1_|Z-sWk xT:å:?0?U q7^?WNRy[9JhE1h#3 CE:I]}Z$/V,s#9?1|J#˴JKlexR8Me-XhPIV"OR!Tv9[`KLtS8m>xt-@ڹ.ۯU}P*sAo@Ig$$*TPeR}#ͻ@輸rƏK܆aS!% 6Ƚ}#:-abV/>`Är[GՍ猧Ņа!ĵqɜ^3[~4G.mdhlG,u)#FG0g{Կ04X+tӃ>+89.@}hu|% HNnB ~tmFT,M"w+^5[b0hKک/"l{g"аV@,Jܴ!(Zf Y2ED>@7*!=fvc GT7kiۅPڠx"#HdreǙ:,R.k5gDcp =ܢ$`%; xsd o[Y ̨y|X ʁ^Hc<ͅ2M Q)I=8-\W̬ZkFȶ[3 q$Ƹ0`I$l 8W~'W@` }m{1Dޏ]q6̻ PB_b_&gIqc|Trp\/KaϮ]է!%uĪ2yݵ94 gԥvChfCwO 1Xs+֞Q64]>: ?}]~Nw?ʻ}SiReJ@V#:&_e73 a@eŚ7u“M:dxM{ 5ޗWG~*6Z0I/AkpeBúl=x}gVkb.x{p \Px6՛zi u?eŞ~賳Jc".T 1 y_$) uwA8 Rg%+ߧWuaԸ H{y., 8OEfoR]2ȣ`1PX4ԡT|dͼ+gwQY+1ȑ|:Qa6UBhkBe:Sb'=j&$R(L<Ii<[-~)Zj(He#sΚ9t$,'Njj>.Nԍ ]YHXuG=W֓:Ji(t~٭ڎ/+ԕ#H 63 T݆{ 6b%ob`;0E|ǩX4p Up8y32*LXW4sj)<Ӎ]G8vB5.QVQ3ﷻʼn%6_5Ei׽mq_EѥqBK}=9k]gK?Bݭ/WQg3̺4 V:h}&ϒ;mWD >#SUxZG-=)㝵?E[q7iEʛA)4KJhT}[dqϺ!\A?|y[a!c#O_$^P]atfbXCrɠL&\r(o ^O"g`RF"#HƄ詻 DO{+;AM!LtŸ5cr3ESiQHʸ?e]x #:kx/,>h(m |mb!Nl{a E;lO觀כ"\ѥ,S,T wFQVE?G bxVɐw9mͱ/99Y-pð uhAR<ep0jY̸? P &ti\ v%o\=HT7:)_ݟCΜ[3#okݱG5,^G/}H~Qw)pHo=%/XLe<ۦ8:z窪f2*nYKϬ:no˸`Eq }"qxNUg86BF3<]hP."ݳ12to!wG[0k O7m;a~dG *$$4]+հ"!]hR4_)C(Ӈ͜AOkdWW3.ӭ;4X CpYq8k8{ l O)~sN D_R]JW7v~Ð^ fU܏I3[ q*W C%+MjaqOa~;K*JX9a]eN,j_?pl@(4I7NQB"f^B:q]ǡ8+5 l[Zpi%S@1) AZY;VYY|?_nKɚ)/z@Eb$|hxU} ^p??_> kEr41:$.w97y1H:Ln{pU irueBzIXnNq7*_A`{pL:m?7ȏy$&ȵI>ϗ`^|C8I<˕`D@om"c"vWPvF4z]>aEi6`hր 3i(xtө3l>|wPEhe7Y?ɇYN^ϹkT{뎞K %(x)i+n~0$KQcFUx;tI{>2R>T8ӾW=ۯDU "Nj'hEniҀ;o0EQa(roΉM҈D2l(ޠbkYu&E}&GD1UN+7?n[n"3I Bo0< 7aG/ OKgfʚVNRʜъ8i~WvX3ڌV?/(O/.IAz I #>v/MG&"> _F4(ܡGJ7F%unQ}vGڼ)#OYW @z:TtDѝYhn:CeFnu79o7ZV:{300=|'NX!0ҝeR&\]pi`)H =;'9k%U }uKyhGkal1ɳ|ѼqZ.ۡ7w[.' 3 ayJ9cm_kA@-Sa,繻KQPvM$~E #ΆEkzisN'8eqpkB6uWVN'v|| OL'3bFއ%; w#Q3ml t6bw (FD"rd;=tgIn_AߋJ8gpdU%'A`V*;Wo3]T4uJ̛9ʴg J6"gS۝rhĴ;:\򢒷:Ya^ÿ(_%Rt~sK8Gw9G/sKWU0̻q{$4/4;a-Z_^U*{NK^ۧD(ꢨ7/ue8@o\zq >Ǹ,nRE2%L3aFf5}%ܦ\hB ~^].R,qNQ~<{Y$O]Im6#̖űN dkd6؁må?prddQQ<.# j_gZ\}epɼ;5vQvAnqm+n 9nٺ7KyeMLfY橽[鶄gchJ 6[7?XZ˜1^ߎ>-Cumɟ~""C\8RSeA1M|5 F\~ċ4_v .`[:g&^?FPk ­ymr/]U=GgMz]ODA $ӶʜQ.4PvK IoFZ}2 EG"Ԯ_ )n @F䦅rH|Lt`~b]'Hk<|Uwh Uc\iueH'5<^WXH:{ 8_" -cpR(ł~}t2#n0l}B3zw,W4.3  w:}$qEQaX_S8۾]ӪJ>>z~;>AОV[jϸK3[Xcʗ/'5&^ qsl(Re|G1@'Y}'yWSW)%J7nVJq2 oR__uH5S{q>YMN5VOĶbd`J{lLchQ`ė# DF J& %]E;pQҐ _|jhzbLtJ˱H-5rdUڞ5cBc,=*j=1e]E whywR/ALR[(}:QZg=|DhDW3xJO:! `ƒ?hԗH a2zqhx6". ֓!I!X\(tKg |ؤa-IYD\|MJk+s]qQȌC)6#jc@R:G*ɝ5{12"9wQDϾٍ&sgA4̞>ܞEfPMI!>qN!#&-\3K;T;/Ɂ^~}ݤ-?c=w![&_h4 FTޙ6K!m>'lq8s՚$RD#2׼CAW ө"ơN[{k}sgܘgwZ%luN}%~[֟`%z|Zd9793ѝ!$$R}{>LZzP{&?S/;603`@SNpEi:%指ewqOuڶf6.fCUiqt*WE\֯15vR!.%]eaMC=U-uMסT_ ݲ\ 7y;{qŮ&_ xxJ$ʦWBHMg vf0 pK:t&nϕ)I[>Xݢrʍ k؈rvVv[Mm=q2/#`usˑʢ(xj?ذ`TZYqR~`P6I[X'TG':~q"XLx@ q`wQ18Hc6?p R~7wU;s)ٯz+nzf%Qbɔ2 D7N+-ސ?aP̥9(f9D!uO$\=YГMrOw[6SoZ0!k߆(a0{ &4ioB2>m;5a! CĺdILk¬{U,F:/J P궋EÊO> E4<WF1(b I(.W-~vԔBGF_Zn})i/E]^ &(Wi1(t3{3<nq,_{R)紶7LnW Q YFNq 0kY|و4дšHfT= -C^/s/|&3T*ɧQH_,𳸞x;2Jht~խ W3Nl) ov(} ๷b#- jXnfł%]:eb:seu 'VeID=)$JSnr{Cω:)Qś )80IVqdFU[Q}qpRB[.lm&W҆G zbչPl׊j   $G0Aˁ#!zS>!HŠu2p̏N&s"JIa VsপHj%+@ ͪчdVx`oS W ld 4i)!>GG5uHƱ!ܡq7șc(dg9ɭ[?`4/2m&75 6}{{nYX :tĀ7`7)1 'U${չ)) [͞(,t?JC_G@mw+:uf*] ;X|[/^.dԞjiɂ+  }V˞9.IT˿q>5_GT,U,wd_:bcε OR[R,VgQr;"qGYV2bY[yBQú a*d[/vYp/r'41q->5^V] (%5s(M|^Ukܕ 􍊸[BLKO2d Ѝ E;ؑRoOb9-=o%(W}_Ye!*XFhYqMFķpv:{r!cy7"f.D2QZoVxvvQ=x:Ҥ௣^i6Ҿ{dSVZ]K+#|SO΢t,D$^sAы?g9XՕ=P+KeU$#ŏn/H  w&Pqo|WGi)2hU_L9&cW~tPR>ZqŠ{E<<ه>{Ud%+ҧ3|QRD]-CzңEОd؟HxxkL\ 5G9R) ^c4> @zjTCulH5$Y", QJ3-?-0ٜԞIǃ{/+}~Y?`v q+A{@,"ʇw5/}tC[vMJC5 6u"NV̨ypsR"Ηwm*TLAvs\g=sMbgjj)Lo#ʏ?!yWG;`o 껹1nh1A 2pB'XYFmk?{衯dNHX1: dl `I!3B3R@,G=ưx&x_zu`B) sw$J0UԂcy3fE3.gR>A'o&ؚ@ҧ霶y9uo9$]犈__cAzCW,0ܯP)%$Q{ލ׳x =Yj[|W wu>{0MC i74TKSz.OmT]Id*ڛhb"5 7?=TڏiO lR!S ¹x,pfkL~L k)ۡq(_g`-$ g~Y3ܔ 3p]Hu&"du%"u{gA"iN>@V\FhPfk PGϒs4 tI~4" Ys\>[*oQ܄9J"j-Ng# O8y?X1'|LvXuUo(uS1`OVs]΀k?Nhs+H&.'b&szU <k2.J"nyFdj% x/ɹ:RfJM$4]mr #$v0ZM\gM*HpA% 5,66MiHh7!Hf:  XOM]"v%7W3[d<_8t9+~DR%y/+։EYHq^LڼȩwC*4UInJsZhSez5sp|-n3T]]u_CHhQ@V‚`dHNɴU+?(m`k 5!Umvpk7[ *8ftA4<7RW ̲l$7tk*x5oslc3{QR^To7O fp-\5rod:2+cE̳%K&SHAj`>pBGC&;dtj;v'}/ˣn} i@zME@ {&JSA{b*ڈK&(BN8ѭnURFI{N().|,Ō!ߨf.t 2P[m_hX"QY]Mk^@0@pq_|B+g*Һz/ehq*"ߧazC1TfN+ s{3CEclњ4uf @ {ԻS슅Zord*\J!ـzftvu=9@<3FhÆC$]g(54^E$JR,)3FɠQy y > xN͛"%cRm6c)B.,hHiit}EX>S+}q rS$=L*Mmm ŖÏΒ=b[Ù{ZL鉏>st!-S_l DW?88fgSTQj#>[.a@*/rXA(UeQ²1F"nA%1csӝ v>ڲmRY.MPdEocs$o7Lë?cTAJH2>`&2->MM3elέ+G.A=ĕ ԝ;\f4У ao;@$\NTFmظZw۬hb_,w`ϋo2:Kb N` zH_2 ߁X-|DDՆɟ*XK %4Llށ*AvURuJ;0Jh].pbERwp|xi&]_P2Fw@cmA.-::| so£H'+_Ƶqߎ)ـJp.6BÔ;)م#JwD: fR@Al[ir_8 (ëbw򬏄91tl>nMdf CPx0Bϛ+Ztb"x&0 e +Om( Gm7g&z=Y.v0o>*l6 ynXFSz |0BԜ a 9oFtv-N\(̓gؕdka cyΌdSF/5l|r^XOccaɚ2wsAa֪J}'R LZ_r."(rc2Bf4Yg*Vmlׅ;BWr52Yc mu`/_bXUYXyKy"$0#嶊ONsG;MUFuH"#B?t7D֏hz?}5Wy와԰gA7"+62o2mm/’Pڲ̏i 3ڡ)ף3888*| `qEFz/Gsʽ>{9wY-=)jT?tGbW؃ BPj4(*>/0xi_K:-~o[6Ub!^#k8KeuCnh+U3\ |Ӆ3_O,9 $4؆ ߍa`liF{ttBhL&`uGNY31hwEr$B½u2GqQ}[~4܋LBn W.Cϯv;E.\*pEVrBЋ27eQm`F dw12̍Aĭ;_; =6M&wrƗ'Øt tJRo `{gf9` 2y  ƣ{24{#T:K{I7bE}J'vr;yY + ڹrGæ!SkHXRaI!d5Z+O%J$ATک"j<:c l{PA |uGr(Z !ud_MYD( <C cƯg})&nk 3 uc!Dr28{ ?9vg Zhkbq'\թC@MW,0橡b=NSK5FT8I6yEBl|쏞%[!UvLI%з5f;Ν#M\qeʴZ$=1t1Qvva[o&' $-no%KCcI1i3f;:!5&D YD[hW%~zHښL bbiSA&|@?΁qv*([]b-x0N9rf0pE{ \U q-k;T:#Bߊ/C|3S2&0ef kܲ-cnUvW c#iwV,yrvo>$L Py6%Mu0{h)sE0AGڤiƶEA]kMzszVdG dL2pqҎDd6SdZuE#-@-E?//7SČ|;r8g8I u#g]{9GU/EZh#|ϴ-nnOd ũՓG CtHe<Ƿ5rF~+߆V{4+KELaKgv<{Q.No,H-ƳdeջUԊS"ޖŘo 4`F퀠~XCҿhJZv)N ƚAbRu8K϶Y|i RQF`=oPZi)U%=BHVEuVZ*FǑ,B540lq,9U,BX)T޼r}FЇB ,QSlcoR|u!q߾v4"'o[6ŰKl\jc {@,0e{2xq3`l'H5/-H+gr -a_?|ۘA-!@?z!Dj͋OSѣ0]iqA&@=H 'Wa' pHo9K0dveȣ^&}=dz8 >~C@TgT3z$ ut6~= {:\z9FKAHK<mSyp.'WNKW_Y+ Lgi/R9S% 4m'eF@qlBvi5YsA=vԖdgxoBܑNӂdr u uNo';*ZW$՚4X LI֬P9b΅vq;cp%'8[!qb/O ʋq<^״M)T\IHg"1ӚhXGl,ȷ-cK? !ITt٘t2tS|f*~¹(.D2M-d |Ph7)8~M} w9t<h]drs释*C vt?jE `X̱4c8 ֦D+op^2?`H40 hK(;yY'qBԽmH>kz%TNKKsvYkdNR mFp7xvݞqLʋ/1cz.Pl\Jô<"W48./[&U+<`-#@~ayi*%p{AYZuלqY,&J*+;MCbrZza+b7^XmAIK7FHӤ(9HJ+G]4AN:FyEҋPix?>4˷MϿ912y{!}Sd?g=uh mOC7KAEp)RGb T-Ƈ G0?*)S2/Ѱ1!jtw 9%dp~{׍8*)iU\u.G~-0⾢\Qblꋩ6>`ǀΊDJ,2h<֎gblaהym!.TAIM\2" wJxχOOseOr>Z#&sS8Juަ/*q# Cu/W2-nt!Аp4DگVWRW&IHw6e+XG&c;dY Eb.Y KUAG罞ٯm_#c|az$,LQ]Ӫl;gZ-&n/?O<7לbi'LXY /)tɨ9D.t~h ML>`щ6jƒUC|<*%N%\a^vx,) /z/]uW\EQ&e93ZGvnw*x7Ma6bSjOd#Ot݄ZPr c[%Rl~-8&tq1^s3J~b!4 SQNjr`^CU2Y|49xs,3;GHS2L+bkࢍ˭K)\, ӡJ<*lCn8'I/otm73G*,OXEA xM; ЬlPe"5}r2^JgJt-@FZ b;ث0_8rOonmLjrW:'I 9Op3}g&zК5"}Zӌ8oȞGEgAm7{?<  'yq 8@s/@KŔw{rmII fdPny7c ~y8O$Jak '9lMZُ% 䖃zJ¸moKԃb0uNQƈQ- xB_F@YXW1ϧį_P0`p1t9Xǵ|S_ZzGMx-v=vG+Ѩׂ7|(yFA#f>zcҹSMCeȤܹ1{!pcȐ c Zm%$,`YPͦkK`(kAFZ4"vN8 }0N"w<Y" M0sj Z.(8DfK&-ɱAcn_]l+%)< ˀ]4lB}y@29CY7_FF!pF=:[(x6@`OSMuCDq_pf_$|"l'ޚ-=ׅ0LWLMN}<3=n$ Q}/m) -qO:$b#_?+2-=SC moAܓ 5 sr|qy'^99!q(w:HG[x!ښ*i+<.F3v[zsNm!#& cs5ZH9?SE<XVd{S2gL\dL\fSð/HMJW V-y[T^D0L6E*eFy-tfj2GBC>V[gC*-X$%'[Gt'o2UAytpuX`{QPح|K ZMk'(1թXVu*j9_m=d0̨Qm&5=6Z˻4f睺d!Oz\J`H6sDuE Py'M'pE%|!gf= pL[)ARi/}ah8Д7b?kE2gVMISq׊))v[ \|"v>v1%y0ݙ!*;˺wrw6,.5O@og; 7A(^@bes]Ӿ/3tHUwe %YLӸC8yœl:!4̕n73Ё۹CW W-ojfz@8CfuivMX0>)/"f44y38FIy~ݧ:b{{`gYPNlbẗ́"@Lg7'J#7X݋  fH VhFޤg/ td*#t,OVD9fjKΟv5Ʉ')fg!4(r=}!SXn<@z/X{-[(筡k2 ^#2\cЧߣdS~Zn"rSwcSj$%4ط.S1W?}TP^V W;&|RF1=f˛j˯ؑ`t./0Zs'3|%&N")˚rfZ ԸPOX`wLʹ@w/md1,prb(Zy=-/fȸE)GZ߿V(%p]u(W҆Y C͓zK`޹; }gԲ ~'xpdi,KW$x ~ @ ]"dM1f!!3,' #Qz e;>LK]{ߜh˾==@' >bЮ´"K| hVx!P{={P|2/T[0a4M"b sV@m$I?hۈДN H1w^BܩK0yfYo8o ;SÅ4$jʦ~T%p(b-0!#v$˰.\St vb >R-M=q0Mq^_Y߳ZmKV 8n5hUrq}ŵN\S'-a|sWT˼3$r Z]9Ȇ>XB]~[ B!Ul|V SJ,5IE? ! V4 `4p/:查ccQ'9@0orR 4 G27`QG/=waoM[ ׷IS`Q(%u~t^o :c;|]՞uC= +G,1btcȇ4-adz}ˢma9O Dљ!Ć$h-Z&h4'n7ֶ{I%5wnu+Ӫ罫f/}dw畈8 h [=Y[>]_+k'+TN((vQX2lp]!x{QӦƤdʩTF|Бvpt gӅE[8Qє^^^@]I`㦉OG3Xi_2 {j 9^onB B%f`f->[Ơ)[6)7=oh#(0?jӹ#3JpCIū1ЛO=ùɉ L67Y aR[jvuʭXLm86}s :dxBкPǔJۆ\c!G=%'qTzEzg $+BK ]@ɨ0~6po(:|2Ȁmށda:c`5u]$jXFq*CU!r0+)**}Z InVl. pטl(^{ c}ng`=҉!!)Tr5ϹX)4md^&aY#'\+ B9ۡr) qbr O£%}u)/_;ijTi0ΏRYK%`{wIQ(,‹oB xPx&OlA}_ iȸJzDPW1;cAI $">N^7?Q /ZVA0s݉kX%>) b>dG1Ě_!05OkKiXvDfpQ5$ƅ% *q~w,{m.l{BN_|tھ)l+vGKiCwT^P.󌥩H.eq|%K(bjHtg&#l֋꺿Vf=HX ek0cp;?B 7T,czH$6ƀYoxfLK ݨ~T*iePBOGj$Mdl&A S4h][DON`@jU>뙁COx"RKt!'0獀Κc:@ )H􎂍4[hQ<\C6oe[_J0.YeC0&erO< ._pD_pJ-|t2C8ZddvP%{fe(Ts?"nMa5,XAPWP}¦8,Y"ar`FU.pxVo hqrPSnBUBVNS.N3(   ݰyƕt= ibWt7Q Ap}⵽q qυ:Q|DB&9t` pዯ=ϒR!:/*} ]T3ZD3"ٷu˸5Z,sTs:W6|U,ve{SDyKڙ=t>/;>|/a8xT5@C,{IrŋAZq408/ZBPv' 1`f~bIuq'K{wW:'ʀ#G+"uLF맩/ERw0ɖ qy5G_2FfoNu.&pFRJsMns+=L6>UP]+ܤxWfLHBW^V5(R"Z\7OJ(8SH ads0e*=[h]󚛤rj PmJ,in`N 0^SPr<[r"Ie_JD=]J7Jc##pQ~U:{DΥFTOY;yM0?7-L?ՠﴕj aHÇn1=vyAbca+}K 5npHɒ[V͢.vB_Bo!O:"ܩՌo/]VJ.REWOT74A)bkƍqD:-[ -<ZBO5Y`u!P|QZ²Cɂ'I:T5ZylgF1gZzhN􄟵|!M^x1؀EHso_ףIvt)e1135RF0ꮠ0,N$f"<;1lgdw oqGEf׼45X~c "'ˏv~|=z(-n玑t`PMWynI 0{G;-~z`%CR& :;좁{ eH/q<5Fs 39 s}tE~Hq)7 @QkT h17:|FG~c`ouڄSTzXbAz°o 7 䛮ٌ 6xno+W{6qoAnNAh&콽|E_}$"xi'/^ ܦdgrhwRH글a!:ab(D*B!GX_ȗa =2f2DLGH*+wJkɞT@.ߑdT?aK⃊q}wx0N: |uG= 4DɰU^U4c0CPq' (0Ѓ[v,m "_``$[}*#*L smBOR (XBw ֦2G!*HYzLnXN}uZҊp%V_@8|yy: mx8}^G=F]`-wKU˛S/W)o2W \DoWvlK ]v(caGrB A|)0k &,H,uz%jHw_$3l"p8AMMC8n!'esYB}ڝawӝ D]Ppi]C1E]pVC?Iס!Wp~#pjtrnd+ ;u3ETQCO%wqddrS71pV<-?vۀR*ǚq7Yo:=Z$!F^2SF,Pf? ɡcpVWRap ~lFU{wkVCyÔX+vUz"iv~_*5Ty[xMedusrn8ك%Sʀf&X}=-8QJ[е1rzZBЈ@R'P3̕pMhlӆ@qnYD,-5[M r+cGDx)"Xub2ASM #:&rJ|S)ܚwCV?pǛ{W~>hދךՏFdc ]:CY'UΪ!- 7ھJV鍾4і"4SPWfCZg|efRʮӯT44鋙sS[fAx蹄hh $rᭌ˲QMzN<t9:pj{^ Q,#k.hG7RZ՝޷uu@](T7|E -6;}.{ Cjlx(_ʪ>~+݌ .F; r?cf/emfr34@uܐ./RSkeQ~%ARc&ʑX%x&|XV0N!qdBVCMr@ $mcR=E=@H}dtˡЂ [0yM釷&ׂ}Ov**ϑsj0)Y.NdB !$G?3^lP} uAeC/gĿ6Ar%(aNѬPXwdJ3 {o/!Cg3g3q}?(#];)r`e cp&gdYZ"攠)<%a4^:c8Q5 H0>.B=|]]PcX>F#ED#;. JF)!Ź@v- 깩}}]y2 -g!Dw+[0M9*&hs6tlܡ&#>X0n V0EvQn4ʎPHB!VOb,tӶy֋lMoa܃@I;hC1+>H?]?bV{T3xmX鮝0 IZӕl":_i U)$dR:HANKV# |Fg05&D$(IRqTr$XgVQ}kmy?D;-!JP[ɌSZånl ¡UI` .aF~F1 7L<qc2"b'[^\iu!ܧG37f4?jP!v7%*g,3C)n~g "m2n|CW|R.- fWE_$Q}!sy |@rl.,~ bc[މ<=L3I$'#\_5zHdiӊ BxZ{8H?}NI3DmF^m؇WCՉAfi6wl/n5uw nbaBʈcAG[daZgw-bx(ѓKx4A#a.'hU(*U nPiL\7쵣LbӘF]Ŷ2q0vLD!iUod:F*F  Q41Ȩc(-]$X~NBŸEOՖ&hj5F40nyW1%b &x:Ag^Da+4yU޿:z(~5蒒P~L$.f6`F4tO%Ng2{71}/n ҽ.il ؂M 9([(rܿG;GdBtLS~֍ >>RY{[ۊ5eVk238E5)49ڲbDATP*G6L1Fg|raެ,0lyN%n5c&kHKZ¬&}Y),Q:r3zdQl8%nM]6Sy@v>5MRV̄4P2iR+i$XNDjQr|ܔVƦҿEg:cU<8mʓ߿K6?C;,P}T ra2FJ)c<H1?Hl޺WQBZh Vj:ąI[q M?ߦa1\>v-E6Dc&=ԽG^1gR΋N~.KZS08mM| Q>Fٮ.d4@]m8J~>xTG#9O[JENf A<Wh2|.Gtubg265ikKV!R4,@dJ)l{Mg:IQ=y&:)FA}~SD}?dhc Y)- Y| K&ilPNTFaAOy4QDw; c>8bмv6}EL?p\{"0M[h2 d*J= #0FwXݔ93_qQs'AVX&oJH馗Ӭ*jwv4!g]gfqް[]G^)cHYgGJF!m݃ݷB=&L9"-ȭ0ur ƿ`k|#'yp0,/8X@10iD 2% D޴]ulq#~4)ȁ^e PN'{}:ij I6E\gR-=1F@qCDb4O^SBwIL፡"ql-{⾞Xt˜E>ʙfnd1wOrI=‰!dH rG?i9mBX*Awv#4ҡp;8fw;;ִA:[VAGnF'ŗӻ r-R8vu{ k:oL4[>!9Do>$ݠw =xi\o^Ш}2~nI&)r=`n~AyWٵ|ȔIn &RG~EUy?XbWmtONo^HbBE3!B-0"]g>RDiOvHHy62ŃӍ&X-UdpIj~pS`K*t"ʌ f)ଣo ^lr(w"`Éug@"OKuq?P-Blj@`O09.8c"sݎWid|_9!6tO? V3jJwI &Eba4Sʄ: YlEaBtqJ<bSxEa,AJYZ?peN91T&LG I"0:ZiG[~d4 zݟ`5@IA$qņ U+eqIT6mʹL0 t HGFVUH )rqB&#`µS5b&Pjj @1U=eP䨜e͊uTx8E!=:ى//< CИV) ~9xgjԏ>MsUTi^= r@49eB 31( X8v9,u [%YU )ixV;rVvI!j6TA^@{EMKRʚZ V~#yT%Zm$=.UDؼj}V.8Za3qG@d#C{6^Mfz@un \m?mtt%ɴni<?J~$U]3]ިuL:W 2$"q${+ |2޸VU'7EjCbi\ ͏;\Pu14 l$jLE\+%C^^ cCI.sJu<7lӹ:8Rw eCw-{ ؅ *f,#9Igϱ 0]<{.Պ4P5N JJgVԔa'Ժ-",eH/vp+댢y^DY[D@;m)%j/^Fy eV{[ nגl@{D[x Sj 7~̥N}1&ǦY$JlDU]}n5*ֻDdGB[$~ψ;B4 ٯfxp&- ""`tLo 5hWa40*54\ /0%(TLيSi rۮF( gmxT~Oལ}.2¤Uqlu>}n{߆RD.G{+S7Ylzx .@}Τ" P>ՆIk -9{8"D?gihY묅dVWP&ؕԆl#$XRyu:\QLI14ͭWh(nG˭Lqʦ9Uzo RWD .;~D 5ZhVtAEp~Z]+=0nW20kH(+|"i˶3ŌABޣnsKMق5l~34=9qX“{>55!?R 9y0Zp$z@In׀nA17e;tKUlxRBc#/1ެ{,n5 K8=CideW"הp>jP˭ zڣ;TOÌtϸDAm6ĿgՖqOV \0 |EUP<^]A!J\Ϟ?`E7gU}SV{,X*̢ A:Lz`9-' Q8͓KA]rqw)[wqL%e}5ADZ4`6cV3 u?nud$ Bai]A uW  YH%Mlrt 2jSk$.weTFL(ߔM;%*7~V`/Qi݊-)LA[Կ0N_0qM_ V6:xK1Wqx_PEl_Ac朢lpbOEm7_Ȓ<]Yr(4䡃nz8 fAXIe$-܈|?m*,0N<ȲxGk;IUy_l=lӷ0bZ` s1!QZ8>.&"_5u.'S /G_f!tu`W+ t$G6ro|-hoS8gI8wJ٢`_A ?{4@Ho&bc O1꧸!pÒw)v./J[p;g)3.o4T(*ۖuB'szq߸OsƮ 'FNl1-0ͣoi^5pP \HSN@ᆃSF`}t==B3|T)7q=6$FGئW~l 0CJP=?HQV5n ^MH<ҿ9Y]6lySQ.~!񠻲y" 08ø(ڱ^ECXگř&YŢ==K< ^[E?p讪A&UMه5*O9 K㋏m+ Z*/5$bgbl^yu(EyTz>{ޖ=9p AëL"tݠEfFЏX%Q%)^W;VH"2~a6cKaº/MKaL:x[à+a " XF{E%3xx٦&cr/aBdcI$Hk[XXi]Ն(1ՐN hq-` ,m :I׿^va34cZcDv$S>nSF7j4dLx"nَrB䅿ˣF:k<9OÏ>7^ Lymoj1Řzn3m/EhFQnJыj6»ZWxYm.Ћ X{oL G9\U7܍ 89 h$aI[\QhteQj7˧Je 5d _>'GH c$3%|n%;ج~ HV^Fpm/{)xLWCvc[k@+pl PL 7Bޛ@4b$AUʅʦliOn!PSa:fJu ߷RuIz_!!9_L{d#c_G˘H9*ΧoL)XyZ `p%n,')WIp'4kr6dC1S4OINx}aްQr7KT(5p!/YST*Kr+?dPwyEO9wO xCF(/T7q0h=ÅP$1E{t/X DvTo Jo;O0*vD<0hQV)ƒ6:faM^e9'1v^瘞3 !2=a_%'!Cx%}A[139 deec_݅l9{'U[8TMO1r<?˪t)Pp} 酸`==ih{7!dSc1Z6;T},Ѱ5[]k &J1HCIClF$ !ƪ8 /$l&X l>$̯ਤ$Rv/1&9JjUʯd'& .֞aMoF.m00)԰(qsN_xe%йs/'-TNӟzӔ$+x r1'[{J $cU)KZm=)c 6 5T hl7K\ 2'z1þEX)C+O.IVl݀"N;g,܂& y]{|'R/sï6 AQ38󅰙 J)ԋ e&: Ewk7Lk=HM,sعG0$a,YH(go"'Y1r$ JО;bk] I⌾3 ;eNp8k}]W?UNgHa!j@ ݏBvbcY*s&p(ApmPwVAV-O4+?je>3ٲݣgt@"RNTbX='/PEgoG&ܼVƂg">=B <#Rr`ӗ.1$k YIFY̓Zi4;"ʛ2;c!.UJ3 u [}*)q'90ۮ/9İ>wo=E[;==d*ev Lj*og(w9fk2+4а՝c'\D+w,H|tDI <45){X lwѸ x-e; rAC!ecZql*z-An̫\= ч~6pَۥ>XVg ߐ:&mvWM5 & rl]iҊjFi;["#(J.&(I+p~va*^\L;FuH4p&Wg*a@ב%}nj~_眕ڊ(Ks|==0Ȼ p+巩r0e5jw/_Iɟ΋!r zM pܫI.zGS ꛖ3Bħo_q>wK0FȘFQc\\ds_RFMUR44fބ뭀+%'xCe~eKŅ~7e 4F>̪R)c)e?8Wۺqյ%YSkOgT',m;6} HN:󾗁lrYwXI+HEMS CCKDv4Ǧ CcXxbEm!?M5$旗h ˍzt) [£o`9>O72CsGi6 n19PEj$#LV[\$* ÉJ{!,t49߻f1R/ylgʡтeV9 G#S0"Gya4k"_<>b~fgP:xk8%Ǯ\g8惕6"~THqmZ9ԇs`r lSv{{"޽xiuzuz2bDH0*NI8#g2Fx?W}j?VtҳVt3m_38kXwӍE4iA[t};`e+4mF I_WJ˶U܁|3G y% 0+GF<0Է@ͬ)r ~^Y(-HwTgL<1튫9ilzIًdM#hXT;ct><׸V7dfq S^귨.4o, pǐm-v!⾈[1@Yaa^e*#N.{-Dה8€:#LHyxjK[ln&"ITƧގr{JaND?ˋ dJ+ ?:~QD&.2 Km~eiiQ]+Is<\Oj<\)| 9[ ي쮓K0VN~Cw}=?T:Bv?.lY”.uPn}(Sm~uM=PiwY ă>&A2 5+ 죎ZMnA:[_ˏ{~bY~xީ<hHKGC Zx[8bNΦ93Y)OE'\s:qX%𿖀{-,EG磉Aƀn^D$|eN/)&B(+$Yˎ`;?R_4ZڱWq7,xS=U3~ ߢo@)@Xp I!7-W Q'J]۾J1A!sФ1O3KzҌU\yCEa',4Ik׌ \%=9I/xPNr\(|0mE˄u0<5gLk/ADqi?R{8)+L!bm>MXH+Dj ߯OǎG,灢"ס57QwC||XL\+^X|DB^|IPqwP Dy&UT\Oa򸌈P,>d&E ͎Cbju6Aliu$5S`U^ĘT>߀y}oOzÈZ/ʼn"Bz:f*/=>uh .rBYTdpl(Lf1\ӦXAw(U8ꚷ1[݈8_\ NDA\`1(/#TidTETCeyݩuk+0%F|V..hE#-Ȕt/3U]w7,u9-<&_$TlomL9iJ*ϛJ3ԛc!>p,Swyr(we,lyV=21d2iYQ ?KCC˼xV;W)>eUl$pXz?4;7YqmNi龽.:o ͪb>Bsj8+Rn"yJRh&DZN1LT‹l_/]X󋐆sFOOH;h )uOu~wd$YZ8L:vW8'`eBϋ—5iMҶ"7Q 9p(NĐ i=qr]4)v{4e,y) +}%Z;ʏVSXtbd}&ro#ұI[1%Fмu E`e5vsNx6!SM* T/u+e"xw,? w0ai>Mf! `}c(ࡳ0ٌ@pA$B \|Ԕ򽪛!l,-3(@ʆn_x>6^dz٬l #].FiM`C|;& K1bGJ!EX|q56[:}\Ze8Bf Q,TR^oÚ$ud5?Q!Wu5C(PY~źPpG@yN 7NN#-a7Aؼv'mD'8,_.6}FewcF$`UO%G,Hna'`|Lsu~Ŵ~Cu<=07DȦTTfWt.o)u ٛ߮@/&pQoJvɇ˦N\HgRgT^}"h0D Qf\VE\鮿5q|۽h}mjwN}᠁z :8&<F\_` `/S$`^'1 ][+S?UY|?YbJGJW1HL#3آj4m{PD!k٤"M{jM7?9?q'Ĉ }`Pi5  "#_:05x39 +}|1jޤI^s)s]ٽ@+Gy.!TKIk,8%U>°ˉs{X2+m@^pj$F?<Ν ;o/|Kq6,֊؏% Q18s?s8wJF93h6e޷s5K\c9TXJyU& zgùLT7 ^sL :F)e$!9@7 v[immrўn/p (5{gdWxhrJvL0pfFn/X.nUToRH?gEުaa2=*,uۺexL)US褅T`ޢRS-a܃ B>]٣d[7W-jH976t|2<o[uFިw?H>xk%H?ɄqT{Wu@w+;Pq֐ ni Q% w . 3 7g;-f؝ v @~7.9?prta'#ẖTls Žpe xwrTG zF+AgG SiD2[2]Bw2﹙BexU>fuGQLJ{`F2å:`p,(TTLG 5RGXK=s_NL x E9k,z˜K^l "-0n-aERAĝK{̶CȐ'Mb_ъ81_!z{CRP趤cg$&QA|{EG&t䔝 72_=ZlֽHgQ&ڭ*JFz7ҀDw1$e9?H{fi&oKmHK@CBe.ڧ B˹4>Ed41'%0 W\Pb0t3Pa>0 z'8 LjWQJXq (Qwcq[,6 k7.  rf="q:#MSO%Gc*i(!Z.^;'J@U%7<I:H4N1>!sGx7d)'蹼1>':!Fm?eb#]!*(_X^G 6P'glֵbH۵cm<RYzL9t&*aR) !E&瞷x#g*]r4G`bM8p@Q!ͺ?F$L(4s,uUO=q!J{' ,ބC^-\\9Ay|.(~Z `wvbAo Յf1x|j,O]1av~| L'R(Eb6jmR?WjOp5e)Wi׌"9}W*٣SCh\P/PU!01{)'BOHtVMp|F;-e?""&b83>" t1()fw)~ ]qy),gB#M8 4pe it'zo1 mt^TYŦ>XV|[L#pbGj卶XvҨ]2:o94%kƸUG/-WGu`w{ \RT:l[FC+h]7F1K/w4:Mt]T/?!@k%[,܍ǧ!F".#f=m_nY!uqђ2<@sqmK&֥eʋ`z$}ketߪ~]&BfWye[-]Jў-Q1ۣ|&K^NcB<_}Lswp'ZǷ<$\!.@HyRYQ@) *+kh#4>j"aYжϟ-OK N0U^4P:y2JJ_u7e0J7?++6hgV̬*3TSzqFC=娧*^[(Ddph|]ܼ[+E3kÍf{^!ڪ@K.+cs.#e݇/M_ }є7Q7VKn/v՘!LŎض bGa K j-t;=lLl`*]qTZmT07A[r{ii=@Ώè,F_aWrj'7Up1Q,Nyŀ-7U"y+GQDJC {_}ClpK.vD$,Sͽpx*Nn ǪD—F@94j|+/ܧ3du&O4ogJO&S{lR[8ӡ^c!{g ܎ ~ZvN>n00+^_#:Gg R%KL:G9,ëE02| =.KHL2h/ z.(!l =8I@.ž5:f[ }Zb@j硻 L4Rz:!*V!.g+zGhCDi"hxE4s۠ 7~\tU' &{̇RX62<'!/ԋyG514`Ү8!~&* NqZYx~?ab3gy$=_KvAC5KN ODnWfSD5?Iu1䴫ZUR| ;~f؉ ޮ9"eOm4MX)8G迒)͆F`?/}}YA8 זC -F_uw*5ۜ٥o\L[켭My0{`UP#tʳv)O@WP+Q:  d"=|2l/Py;WfCM#aiJ>y{k?if/,l]JY㾙D^I9 Ξ`ĔaB\fbh,~|<9,yODuB:ZCqio 3h"F=J.%_Y\4v/| Yi+ONfV"1:@N}0$l NGo8po 18 %pj𳩄{=Db\\P}`x 9qыO NZSmsʣb!Fy(Fe3\#] iE:64j.]sѱ$m HS( (7b;^ƞu%h`x(f&@FFՈ3'_N #On$ +#a鋧S_?}Va@Run+̸:M^Ye c`GWÝ* 6f+sA6{^@ ..1VQ̕\TN8HMXȆVZhpYJ gd/ob]*~5%?Vjj!TvG dB1"QwO~8K> y?nAc7mM;ƀ ؑD򫕢̤ L<+;I{1 ).GtrPuoUX.PSY Vv.R4HkQQfZ_rSJgNBނqB "LS~c?po6ҹ!| G@Ec6 ֌?ΐȝ3Y_޴et/Y:~*!U^Պ3&/igixBKXZ~d/#r>,?cp*4#X @}{aop@, q/$©fw!ml3ԫ,D>tB*T#J̊Coc+-NY/SEsrIeDBtagWtq2i(z&Rg'/'~omD'7ERha`:5Gi*TvGF\pbZv*\CLh|vacҵf8?Xr@E~B߮Ķ+VNr '%pFoi+'^[zT)Yiu~MDAfDXmJ!qUpn15|.4~t<|v d@XRa8u3:{d3Ug_I z/F)F"cQ%rd[]cAi/rZ<=,V%)>IUX~,_Xtp}eNJ@w %r$T5lU/Tm )18=`e>3p]sż aثc@=Ga!ܩ1h@đ#^ Obtpz"ljA D$Ǻ䑣RwFIymtUc6o&psLމ&D9OJ᧮cɮ|Dd&J \遝+)fϜBJjy MD*re?ycгm7⤹Vat3^v mI*@F29Hq$ÌM9VuG4^Q{;c+fߓ q;I-#/iN3Ȋv tD޻{)vM0H' n7bjz]1靰򽓆@P[qX"\1= PnQj;/zٽZNɏq a6XL\F ·rtDDie\0g ܷЫ{*={^^>~15v5 &(6aL!VEuY߭e>-t9_fg^\  J UN!RI̎E'a^ @ /,IovB9^jC$@noweRz1yw/S馡\E"&6°L1&ԟmP5hH٨毴#aLZYNMɝ㼁U'W%`fcWܟaG^0V ]7HUG V?).@7{7tPH:6QjZPVITh36& aIז8 4 <5IGf췴RvMϧD{ZcY5%.EIؕ lYnNw a۩WzR&Jbi/#P3|a35ױ#zdJCiRBǣ#0M˱ GY185pPGPֿ7} A5s5]D4y[244>g,xϣ:%z]  L) qoq,n/rH% 99@TQnq/Ƚ-LG Y G5a N2kO][\sht$+'o]^',G”鳝z^0hZzq59 n@!}LAhĐwTtՖ>Vz;@ \ӕa<20z>]xZ!` * t<jȐefeIߒշOQj㟨Ե028Eԑ<s=<[CFpqxRS9y37$FU2 x_͈"cou:6mMET7 P]" vDϸ\0_fS{\R:y,V݄cuk 7Q.c8FZs<9.yWb_ʻк#8zԵ{0- xSkSizگCa\E4{!k5O{B[p>md# 9R[҈klry5ha}<{\`̲6.åkWO!W}>eN"EV@ȥvmAeV4|gkc8eKx RPU6G G +P2:oD%B^qY:6n巌9R\`,_^ KKFPxЗeiDmUez#a[veDF7EQ+PgJjۡUc!cZ/XEϯ'܃S[x9FΫ1|Pv_AgKόU4M+Aώ"譌(M"ҵ(D!f=!J ٗ)%#ѫ6@Sz*d9$%uTƳBo^koAq/;B 1_0ͥ&pL' p7eYjZHLڹ"8h4oNw åMOU( omN{G!u0#(*SOrS$) ?>zF}\nUD6s>Dp~tD 2VGo#;Au]{.~:!ţc'L4.ޫ"r{ A0U43?^ $dl+WK 2 # MQv6[aÔS يKk*l?}]5>|aBxuܹ/ nb(U,.<&1Iz*$>R=⿽DxP{M6(쯅mVv]|NBLjǓ{yE W} W:ME]|VqĬFT؜7`Rd:6Z'[pf|лR1f$qɻ9KAO 5J'3ڟrҖӈ;Ix^$bv ?'Y2v'ezǤS]s]NЖ_0n(L,TG[uB'mnR 0*:-`dY_v/cGITC[2o>@־Y qշ(<:Hf!-󪅏"_+ʤ=,lHЅ{jDʖƈ=s`<]%rʡz/69:x4|\3(ޥ授$+cՔek_h⓿fRxՎ [akfW a,7_#onRMX +s 80:rw!:Zp>TLAO.ܶ|eδInh)m8J&$pGuݤ뮮nŶѺۅٺoާN!I)}X@ c6 uɁ*1]WKP΋ֆPMSLEڤP_(<$\A 9 ~#&[l°9)"|ʋv; Euq##0)Wq`nZI)7F]]8 jW1lgIƙ9OHm9o]XۏFZlKx/[9/ΈӒAW$G!KY^G:5qӪI8pkAcDa9 TDO@@,f͔|NJh&gw+'9dZͅ*/lNK< 3 .06Z73<.Q~&pA/V~L}څ` ^47RǙ =p:W6B~H>T<>Jt;k6!Iv+.BW3rגIA^ޕÉhzr6 Xӡ<[4DI?6l@M-~ gAr]dܮw"N?&##ƱQv;F[mʇG^kx2KxR($ TBW_mMsZ|~PaGZ<@w| 4;M?X }r Upr!\YfoCu HLأb׌~c48ov-`'fP^A]RgBʗ)]`i3 Dp38nEԧR9pA:$ ƞ,6G6di Ec9n oEt0`-HF+7D ؜KC:'O sc}7AyVV8Ƥj73ʔc=66GP&i3S4 2tBUҼ3ʚjq2@WYYuQ`0>gYsɼ Ж0.nqfHዔ͆us"C$)k? 0{D g@6Rp5s)@dy U`~F@[`Dŗʣ[&(%dj;d,j7@lAX)MQ5T!=uLE awZ}vE8Z^vB VsC-NTv庙ƺmVhۦ)A IjJ9@4me3ɮ<+wz>ͻ 0NЙ {UpخlDp71~{qY}ԈUKQb˜VuO[l${H^ J3ơɦt KrwLd=Z@ˈ!Y|=3*INd)َ*Xcwb7U(0\i.w}'u8Hj!2~zOH+F97~}ѻ$e|VuDb=!Nmn3=Yk0Zﰕ D9;V93aetѻ&F {[ U;97gt٠\5y5DX%-knMJ}aހO`DU% ?A՝^mc{~[ǡRnzcW8Ub4ӑ*ݒӧmG\0N;oS,ѴոÊ>={tByXxEr/4jaeziO}}ߡzP[$!F)Y";c' ǡO ιoWG<'[?ϰ NŲ,|̜+J7WPogGQyB>U|K ,d;wvB3L{Ŭ2+t ۃ,r.{\1cuwRQєЃśV[myr7z,HNT9 {#гYW큥20T(] e8g<8W8ؿ y)}epOQjuIt{P@֑V C S Aّ؟Nr+ᣇaKi :{GZL x,}+ɵԓ_4EɅ Ł*x+50%_#iԢ#Hܩp]'e ^j¶!Q٦㩬ӘZ˓-P %q&He/fڛZʶл”k' q{ ZUCE7kh_ qKG mTUMD0"e A*3`ݠ[V~~x63;Ʉ3LTHf`*FAT]%޺WS3d^=ѱV|Ϟ *~3"RشBͬZĒU"*xFJ4E1-'%HGNkv,2lZ{THQIR?J5Vs8󦌱=EfF}$u^/n:7v/F^dżiId=gDT2%a'RuآAGܪEqo~;sE^tĚ 5CYRJאڦ% 9#`%i:<$r*zU5E]q;+`fx72i_Y5?T ִlnB_? P};-?nf+? "tgt7PDo S'zB ae,-)/ [0>A y ½64Լ:G P.{ G?^/ԣRIauOtWBK{Qf;f88b%oj/OԩOIjYFT>"&&1pa<̃Ng cd|"k~{˶ ܦsIEMMDe;m78^ϼdf*-3$[ȁwFKPȽ^^n*,j6SYr{;s&mg~+(lwbs|ѿMH̓Oc|ѹAժI ሻ) !mt#AȘji$}F,SbC32y%s1H@5~Ld:FL- H}}!M)kAN==Ϛ=}kpQ8yW 1Tl$I#\[dTY:#':q*b_v ;c'(II?N,Y\O>3&#҉sv@|g(&cE Q^FҤȹ3%bHI\K6 ~H6nuA#Y6)V|,al{lHz1UhVTi=QvaluO};diG.BgиԐ-yX5WUGi+DwOR13zsMB+:pes ˑkt+M9>u-7< \lWW' Үfϩ7( \[xãF>\}4F@zv yeIE2~Qq]rpD߿ܑmۋ;j, JZLƀ Bv3WPU:^sM2y{] H*Scڮus XA _9ܱnLfH ֮rEn"m+C4&S_Fɢۑ`WL}Y0y5Qc;NFNYFv6T]˦v8c젩x\`VATϚ%` 5 EI,|ѳ%dJwJu/&,MQ-AF&IdW rhߠSeac5a8uzť/=ԡuy4b'韷$J,دmaSg T62ϰ<'5 Nv:Cߠ%Ufj&&*$M5:vs.c3|KJ: U]lB $5ۜ)PUQ~YD1Ѩpy<8Bti|h4ir$Jdn۟-d<51@[Ӓ^ۃj{ !oz.gXb۝?܃x s+YK ,qLmFM|5XXwt pNI3tzL;UuH1unĨ $+ۗ]=Bj1He^Y +sOaF>zO-b- sY]K&EH` m9T7/5}`6`P8"\~v E7Cw?!MGPQe6Rp3"J};䠛%$G87eN`jǂ~ nMuU\r(>i&dvXpe9תCs3xƾ>}{`wM9n-ūcyhVS&ʞN.ۋ%LǢnR&Y'7E׸lx gй!3ڏ^ K)"iRP (JmCqsb dSL^)QoI[`?_<%^/eeש]R";Zuɐ,E}j>KQ̏YbQI`Bc^ߤНLH6s@6:dJD#Ն`[hTpM3E8U3mE<1@xS8?ц*Q(!SaDOZ56AjBn N UWAlJ ͵=uD4aSH:^Ё_ eK y/sGʀd+Af@6@֢iZ6>(O)Dɽ4kZ!b1S(Nc]hNzjAY>WT,EJ Xn]NNYd}S}S=uL="-opLO 8j12Dy4^C4=Nc/i 0]!17|닮 }ffRyQn2a/uѺc{>ƴc/2 .ix?J*;(:zV^L3N31{7ѽT\(cG"mh*]3oC")%~nc+Jlq3f1/Q1}.!I=H~Tͧ%{Ȣ#'AQRRYbq glhƣɁpX{Ξl_a PܛK=j7qB^Z<&nf!V9m+k0g@Im1@|v5 Y*~ˬjB:E+Ct#=Q <6N-*>` %g߂닸a?͆/1h.ېrGhy͉DȴZ=9ezW%` ^ӫI&:t7oȡڿnƤk6XhBޠHv}Q\<ڔV./ȼk=-?ؓ0`[J&uzA-V$"$e.`"l8l23 ܗGA/gD_{'M^c`;OQte5s {.a0~tfXNǞ)-+}CӔT4J1|9Iw e9t C@KT&0~tpTS@WI>0mVmEt(e@MJ7*XòWv#9-4jASq5lA-&g]Wn{+o%{sBv+-\=~sƝg+%t<4rԒ֙hQ%KMͦ p[9nH>H+fqSlmGQiYR`J0ehÇoX[*!a$>-)G Xgw 麧sJlD)>/;x{IX(%٤#y KP;  OUW~}Rjʅhb򍏻>4ڨ0cuN"OqY߉CMLRZU6O+sx,:з\nDtL=H0߸Pɶ;v⊄O^hq'd n_Ϩ4gmOy= (GW/۹u.[0OJ7ht ݆<;[co~&j%,J]j%pJu9XK+llBO:pql?$\Rwt *<ъ[.3Y4]V.AT8khXݾk)K=7K|4~QWuGPS?(E颐FA w]68/v_|**\A'9%"#{m񪄷IΉ`a-er o>>P#|ڋ,j%ʝfr;+!McAg6k؍#%?J6מ) ~[]JQ&X#,733JVv(+(775ؑ ]i h tRHzN2N9ؑj9ߜ-^ȍ*>AYQ!m* F#5}`9PAvm3T,*8F:R^إa 4?"R38"jmTWں9/Yk#ײeZZoڛ +raRkP+>~>4gEXPDtpQDcmJ/䷨KbE zZͣJ Y~6jD^W&~8Uc3yBz},L)'bb,8NpVKl;ٝ޸ᑎVڰRS4kB0i+ 0jTk vуvcNTnUw<–Ov4 wVg&t!`_WЎҽ8h) =ZS?ᄱF]?~Pa iQֵu2 ,`jA ";w82~8Z;\]+];Z?Ќ\mꔈ l $ S6$EZB>tmF[Ix;d$+kvE>j)bWbYi A 6[7@yEQÙ̀E躎h!zǩ]$nnX/v dH^ITd oE^q=d$l ZNNs0"C`\d7j0i1,ڞ" j ׻ zՄ> B٩viϾ) I(O8ފ!J8'j0!k) X[bv<Su?_r"`]j| W2ǟe*D@ hW _X 1*,{p+ErW +z谎!c"O ^=gM'`8ˡ&4V$Ѵ¼9|Y֕{H-,v=qU7 l;'2D l]ޯ̲[ 1j.0{Cl)eu{!U*:etb F5[@Yo#α{+@o$[kx48O7>qL@?En*{h}/$WCn3L2d-+f.nj.k6n51C m2y> []$*ooŰr?6kI3]?doq) b!)h>/8" q:><{_¼0fR2Ñ@ K{>;8}<.ǏHF m;i5w1/>FߢOBho,՞U+PQ6'jNHC1w zRWl*z er-DW?pa{ei6>Dr|CXW:\] {;u3kh.KU1OjqUnHl#\8O:3쵞BH[HL[ź'u=A)\X_pv3ZNA6/h1E9X~ טq$mfNdϵ4/ [eUαMF$9FK#\0o{輲5g p Pb| 1%ŒٙW۹q]@Q&,u6`OkM&G퍝TGsjh, rqְFxuS3f[5!u:kڙC" {ŻtE0K۷ua@^[xJ"3}(4"I滤a.(sCl'\8M}*G3uNg% O)%?aN e>Q4^W'A-&#lfv둛nY1K`ò)uȥ4v7wĸuƎ9':p_aOk;nH:fc؟޷e8fV%mx=Y$ ')d!BC0!juG?bo*'qms䮅RaS a GkM/2S$VOG tW!^0)Dhl#ٍ%9xa!*LZزP)~`ۂQ[iāqQJe1}h xq+ }q|{Q(x^`j Xt($(KkG<ld x4 <ܩ> iM5?8L8.\i>Ѳ=s`[yɸڒb~w:R=jA{}$?VQn0{nVLbIzߊ&T8096`n:Cfz|[ T[QMRFe]Zwc49!o@Ge#2%XT.VPpq[T]opsܮj$vW ? (˩7)]5X4LK(uW0O|+1 ?\+WW"S*axFgA\+/BCfTsZW"VmAKg22Yl2@ ?roO\+7<8"(jkp+2n3}_*zE&~G3+4v<|(5szlj ׃.ap-w˯IkADzr,항V2 vdbn:I|uעtH;%OtJ˃jH@~k0VFXR̓ALȍaOwRj| }t[a/ij:o\]6g/̳`kK:%s/, hB d]o qŪF{_Xԡ+{n s[t4hvyg]db:Cv0~O+kg=bU#Nvp3ַS^Oc 6EA̭0zJ7NNc3Y6=2 }=V\39<jp X8.=^y/>X}XɀlOs$"Vӄ)mr=)X8;鐉^Y ZZS΂a~ɛoQp \w2Q;8?v"Ol l(+\D!T/e-0Ֆ9(oBZs+Yڌ(Ξ"M9vnbO3@]<CDMMsp!CPA-oRn'}z5dc}8hRÓ+K.~9v (.6U| 29@6N?7G*5 xr^ޣZ $c !t@uGOaT"nvlvC> tD.[ TK4rzK4 $M%A^aBQ/(a/A 8D~wQ3 j"awH@2:X& Z8L<^&l`iVűގ3ʶ'߰~=#K!۔!l:7~D99`6V lD=9Ԛ ^gF5O[/L˷sMhT=yܺhjמ}i@E~Q*%~ciT]G{)Wj~LT 2 4;S?L l=ohLN0*ʴ^2f##Œ#bx{2uk}2\T\oL fƼ,e$@#n_/<ŗPA!y:jM"ͺm#)ҝMٓOڶZFFؔxѾ=lV5m,oa1(J&@|,-|UJץ(#]Ǝe#-_tmRf8,0]w)kk=ɲReLoƀ`U'+`3$-ws#Ó`39񍖑 GcR6@`ǜ>&/xMסyE!nWrygm$eA^}E QPP_qEߑdaE.{-xOЇ%7]vBn©()5hN/ȉrn"bY.Tyx&o紓>!g*/w 82'0,^`CL[;CS|kYmܓ/QڱKͯalBܓkOfTϨ$ޖy'pm aZKY3Tޞ Zi( hdp{>-pC b4qK;1 OFoG F$xWjmp{0M$ȗ1Zp\3#~BوG..W, yV IKڽ⾰JB3B?g-ڈdxf@IY ~_9Wgɔ%# p#$DEd{u5 $6QX(epfx=Ϫߒ tߊe??$v@e(+Ny:"/؏8zQ{"n64gpX:'VX`c'sYV<^<^vo](p.'|NjmM(?z7j:C6^ as!YѹNQ;/. gy*i{N]}bj :en _]:sR1 6ŗ,5w1pDWd5 9]nG:1v_W1 FKI,x -Cç7N5#ƮCf]D-VUjۦŸmЅ#e-ƒ}\h%bx6ٍE!N[?jc3ԝ LzF\jyS,(#VAhzf+~VgPvj,p$mVQvQ2؟d.uTS€<Ҹ2mL VF, NXBHCO)Q{"cFM˖V2a[^< ,Nnb!.?S$7Y잫)ԇK=  09#ɘv,R2JIC3f!/J#jE(: {8fOj%n~Ytf夊R.R=(JR\|4T6l\FeU(:Z8ojS)k0+ ɡU%cx LEoTf g_Y|6ALxv&of @!0"vJ>g[ !4Կm|7eM~}N ;s-dR{ŀq둊j ju֍c*A\&/Eޝs:TYXUAy9ɥ?ΥvSbOQrM0&)kL?ۏ}P4[ҪHLrZ!R7RbiB0?d1ҥ I{6MD_ .lxׯ_RO٥dLB[VM̛_$Sq"~YūYL 'S| ~<Ӄb׶eJozI.XK a N~Eٙy(;on4O5 rQf"ڏ7e#A-Dأ HE<ƒ+v/!k#_h4d 6x̓Xl[NbHf7ZBaxg;ŠW:3X[4I&SӒ#*zF ~JsVFەg;0:f퍇J <͂tWԫ BwO-WP*(v.(̦mnDP[9Wuwybe˸M5ԳM댳g8@USpKRojN-f?Mv6O a.4N%7zKgk *J:Y]kM׃~蟓Swq|GoD:ejmqZ\$q`5?ޡ(e&ބ8vE~EU>g(۲* ,ϋLcdgY ui(W cd^VNje%Gf@#jsjը}CQ%W[|#1ue] }0jI@b QԚ}X7[NX>rTK9rrmQ"7/w:@G?Nd4{&NXi[_$@Z`tov`]c03H#:vH SO C|p3kpPpڄfFvgFeB)a+ J 9Bͺ{ePP T𮳽?B}I8x3 1zOR6rjཐSBz#g}nX^ᗫQ~uj5/uy.--}+*yZJLq u^G=3d٣LG4"P]GN2!DM3Z$)0 cVq60Mm4m(! ]4ggђ$-^1~<3s հĆ"k1]g@1.7*V 8~l`="=4VP3@<ϙ=2;PRw4 F0~}n,ũL .EqMIAUM~t:o8?0ccVAMLɛ+%f2>raJ[їIxQqC0aXl)rm'Tcbk^-ŗH"1&&-K2V%A.RpzcInn9uC n+sv,Fy=i #R l2,-j/D](KN, O!ȿ<XFYS)[#]LKV3~jCsd<*氿Uc` Z+R La(1ks$Xe_i_"1e$X" NI jTWNV1p{ã݆womWr瓏gٚG]\dI`>t'}ѧjiQniig>V&Aw|UDvt_ LЖ=b|3p:ze! *%z+?BZBˎnRoˉ,[] .)- ܎fh0$/uzP+%a)}k. 4x9F8ShM:L$ܖ8e oHiKFܩB;_ v}& p_ 1VS;9'qo(t%`.zr-}NeGBN/[JH:ވcST Yz GxA_01W5a ϺN0#k3DwKbW]n a ƸyvKr`&}܃D3 .!H#qPͲ"PKɦ8 TXNhU96ZнSb i̶q%PjZ؂nqMxYG~ޟOuX1WULhGIt jyjEښN'|-!~[x$(G,D,*ڔG[)HhĠ.rRqpA|8DX_:k?.7Je7+vj ka5>&KFz} UnܑU]jajԲ2nRIrA9 ~Q Z:ۜcY9jS4B'M@ըuz_ODA:"=p*J:Jy-EZtw&hYf4fZ% zpbÓ>Ħ9-uz S^hv-NRqS@!\hGtT7@ yjZx'UK&s ߽Vhտ I]FsxB.tqAgڲ7/ 2&ˊq#=y+W3 =q 9YE&] ]?OVHHoiq;=Y=E-X:4yX0Mn6!>+:Jr5;v<@KܱGJc&/:ͻҥLAXaWRQ1b7W忚B]AXPJc0HD@Ox3\?d'ٚ汗0;;<rGSJN`u Lgj odk"s.cof3]]*cO'O BQsL4dR>ל uڪZA{| HA7|zɫgxCQ7%iZN6 &"[rvpĹHw'|m~PţTy,bD[Q~1[*^|Ror%& >D6U96-aJJDo^kP)35o6SOD_]ʂ - £]mHhx >j^9i1P=ge ΩumVİ_w[6Wۖ)6ĥ*_CR=qh[)&Mi/H}w!$'.ȗQ_IOæ1cwU5όz 3 .Є`6`! Zz˶q3X%J맷ܪ4V 0'WI2w" *U,[AE\'<-!U(s7Ɵiu܁b{J[tvSY=34JZ5Oy߇Iаϛ?iyHDg:.[ud ;jԯN )Y E`ToxykiJ SyT8}.\?&19/#/}1=eG9o*ص=#{ل'>V"/҂\))10[3&..&!\`hc9@W DU=73aGJxI1 mnH,7ӧIhk TYGy>G2>\d9Eu-[)Bp<i 4| )|q|j= q" "TZPNEjCrn ϯ4!=s%(: .`&)Yh8|[rI9\sVȵN6ZYLp9QOX2n ؇lo6Vfrn|B\{LJ՛ FPʺ3*)XjPlnyZc Z1tt]r*^T@ TX D,}CY=vr`NkeY.A+vډ5Fg߈[JaZ̦U 2HtNRԵZӽ E!S!ΊgfkSVρ<]p$?h`8@ȍËk Mf> py A3:)B}UU7 #k*̖-Ko$lqozz oB/~>|~7u jvTtWyh F%f#t،լp!uSS돳C#U=ooY6 ybX۾5ON#m_T.?ZS7R: tƢL0@zfᢥ~E\ad·=!O GcN6O,g>B^ᇘ2Ǖ`5uLȜväeӱus~W VpxMKr9fݿuJ}]muK[doR\QZa >H.諦$쑩y  Plڠ؎>GEGY߉ wIפBrT(cL$~Za fFj_}!76Coͧ`un2sa [K0Ssi1tޫ}4 &jUSV=,{b*i~%=2a^R_ =ǁK7+9iZ%9K#\xЀMMPz.":5€K4-mu qjOT|B+^cù pmPM~_+\%J3z{J¶VMt5>'lYB 6<\%#.}a3Γ2CqՉcgp]uٔv3CS_bQrq\q41`w `b496$1Ź鶴C%yw աdžM:V(q&l$YY tvWY6 y@4  X!& 屛y,w0"`އ_'[< Z {M@q1QkR6KjmؔeJQ\^fu6,7i`LY3~H諴*(*FYf=2nJGO5Ǻ xCvٙ^sцFGeI3J3J&zE"m G+ܽ=#IUtzSS>_1#Aø$mڨ |dWdbA>\sg"0CgڀԆ|)t 0h_SdR.^N02Nn04eTqϳCb<2 3-Z !)%3QYoe;IyM P-^L6k,ڤi*l첉KwK@F,mx>}bg-@-0表>3!QeU?a~n)/ ꑽx ٽ&ȋelú"}K<2l/`3*JB\KсuJ5TGk]h1w 0_^ٍpSf\GK%8W_Ao c+){ׂӝLCi6 IKަ\˽dA4 =G'.Z=D"vxWq6=shXh~q+餹t->ayqX`} :ɬ w8>f#woKJlF1LRjYEL vsKGw%՟0 #$«C;e֣JwЂ.) dg|ŊLuo] Hl穳A/aF] O0D;=X'ݫf^  %59i9v>~}b08ϲI̞`5, `U ^8Y P1-4sQA7<ʞ2Rwa(Pi?qpT1Oal4[w)fZO8J돲Gw"01߶MizޢS>}NIK#?( 959P | L07=,R*R8k(;iGmzB]g5+]5L-;< Ec#3o{զg7֨TK.?㭈\cxw2b]*D6iq[:]Ӡ0c\I醙<ƕ1) c4OO;No,3[vrsI|lc #6t0LySyO%/Xv2rڿ ШCN[;]5]A*0<^ A ~u)ra^= 6AOUey= RiEek A j>`JC쥦=z_iADqHo['\> 0۲FYTGC(2 ĿibH9s4 9Ks_(?i!睾5݂]FEm'AYeF@M_&.pg8*;X%oAFl ԈkUٯEKKA}h ?ypH %L^dǻѩi7PqOnuČ+7##W$)V-ZI33,^*qUPvK#" G2nΩ6w ==|DW7%/ׅi: $G!X'W&?T &:ŠKdh <) rq@ACMTJ1nW ړ_b*Yň%oaݶ-fM*vAbܽ㟧rNٍ+V?EKG8 dӴHNY~ *ڲ&|X/v(@c\8oV?qiFFc7^zNkSp,&dh&KL j` 3oM!e1C zyPk5 PBVmu9eo7CAp(8<,yŲ,mVuXш4'C[4#i"ŠoŨytHز8O~ufJ?dV_G*$r(Mx*g1{|F._?|Ud,PIy `0 )o!L k y\99E[Ti1~JJ(\^v/^fg( .d S`M>/ВuX:"*abrmGĽ+"͞6C Qۻd^XACI0.U?Lj¨eM?E()8gDdz-]ʃ.e=)~ҿx,$ѮѥɟY9JZqe?uKMt6y7$=ϗgĹ/7ω :@Xpq<[zUC6V'4x8i$Kv3 k{Z#1Y=%A]Up䊾 ZV| /bzed-&XZ`IY5L`Vf Mq=n0+y9gG#MAcpVgL;K? <]pQe;\'txxT~Bǜk$)/<*xUauxgsM441RK˂QI'BقEz13JbٹBj Za|Bdz}r]R0¤ap00o4⃅NG. ?yh:7FO6|:`o3\X"<,uo&C-+%J2s ߴHXM'}ۍ| WՔw?vtB60_V\-M06蓙EJּX em"PQTwExnq0b}v~pczH.tXHپG -I\/4zZHYbdKgQD4;4j0A2;7C\[ʕ$Ii%A (Hh-x(q˰lr1RtFn>$| y_ÀC 4̢ysrĄ7V!'cdr%NMT=$ MuZezwF*<-3].; X'rww)N!VPrY`:& !$|tJHv&!/A [10I-ԜpI]19CQY~r=NjD'F??U5YH5`8>c;[)%@Wk0jku]_guq!GԦR)Z9奶$1Լ؀/K,~f!,g^lpMS J =(+P` cٯL k;(=sLګ[HcDN/wC>^U+4d@؋3ޮa󮗞ze6&MGHS#ΒkuyQo(h] ױUb%LrO/AoKC m `,wœb#(u 侀:j7!ĪƴWnP? #G`XJ'/>њ+p>hHMI5X xݧxڋwHد&!84iT YL Jfuדk L/Sƙ1ݬ4jtӮpXHXh8q:wF5e*HO [ ]57ؙAr=톮h:%U"4+a}{\zU7 r8}6b9/^<ܖ_Y=BK5·mss+ zt _mKP4z7ZpXQ]HmS*G cWnGS!aIMtoar[3[ikSm=AWkAlvgN>V03KPYa˂5zc؎G' 3 _;HPsc0"-_%c2L]<#*E|wE8>.IP![fMJۻŠ (LG>b:Pbb0E?EΧ4eDi[<[痖ɠ)]@Pl_k.=Q!sD "*.Gp$ц oP y&޾sziPKdfաF0]yE]5p.i6Q5JWkRNo]ՎWJc؂{K 2~6qHQyI@BR'BSU ~XU.1B"Tmb 'TOFwROw5 l&j;Ix!勵CMSt|QuIsZr|1ٸ]k}Z[uCD7Ί 1 ;!&h-|t m p3wgp Q5IgIZv0.|zd + uŚfЄOml=K3K2K~N{CMx}%Å(B%u„v.œhn5w%7,0(hJaْ#bfgɶ`]]3 <\д=! wTjbyE"8`֝KW /Dϫ5nNݸ續[= Df^ٯ% J[gXrk3+"4YEKj:9QLzܱV$r!*A JmO[xOY1<'dyt٣Un0]#I`槅!MH\;>"gWF%Zi"d &{o%zdВ0Av=/y|E a=c}m~ 7='6>D3>?]`-;M2֏EM!LqKC`UOSM}[t/YL'k#uinHE-ʶ4{O<ޖD)$zy3HF-w ;k\yDd r3&'{ݜ H-muڏr1 =|ZaA"5<3=_L_8uMYfe K-T{ &s? Wǰmɮ+ 86ܹAByI^tja.KnRc?a10_Q>44ҷ|]zYZ"`GUM\a@i׍%RWWorPc"B" .*>+2M6@oB2}jR׉sFf:y|ֹ94w [aj%r.Mpp;wdA}|/"1(mG0cC?$fNnPO' t6u&R98ko.hWN=CFϺN*IGK< )9 Ium43 $UzV{vOШFBp5-n5q/R 4̦B]0FR}MW`͹D3n3>m> M[OHqWelL5n8B-Z PAԨ~Oܑ8B) . u*ZPB q\$M5f[B8-tG*0޺ϹKب;ɞ%~Z~T\Fӳa9Ceof@̳6LTL]g4iu␐Y\-pIF%fDMy1cS4( H dʟtMQ.nk(vs$:MjE#VvڋQuˑfuI >N?{:a_Ӛ`6tt=SͥDOpA :@WGZ vChfR0Z}P0YX9/jbpTC$$MUM]ucy}jMI>RYnQ>ai:tJ\r?)lNSP %<δ=:*7}%t8xG_JT] &^)E8%F䚸wBX$3q >|'h ` T0n[ w!琅7t;GR ~<G6{gA GC ey3ZڄD%f9XS!Z<&p7f@:鑚~c4"c 䔕=aU7cM(sgZ"d~@։>U "q0۽wؔ⏹&fW֠ nKzzWñ7$LWq 2tw? a|")v+\V6`1ifX=[0beqQwbjc.9$C1|ÍO`ۚ*-~2ߠ̴{y&tD.VВf\vݵyVLu<[Ea\>!{/yXT){E8qePT6nQXD*'49JKӹu\Kڱ ;SdYm?jSRo2nSJd\ GzU4i\2c%IFTKy /{ ^j21e:+(3RjJxo} -/Q+a^0E;F, /k;-5d^ o55JW#$`@ GFn棺Xʀ?耕0"7 ul= !{q3L+*Uc? i;'t `ew@yjRj@wUI=GXv/:9~.})S?,?{!׹OE)8tq\qPcG:I&[~O^eŃ&nȭKU.F9x$cOЏ_ъ-H y{w iqϯiyHL; u)Ϊ]L"P,5 ֵ+ tΈ>o׆'wv@([#54 o(~ro/cX ̬{_Iv(d2rB x8wCQ? Osr B GB1> PC݆|\(5,un@,]xmf9M,1,P%$>A>ps~<7 RA@ ɯ+,<5|dÛGS1\H~RUq*N7JeQMW :Н3=2&2rVFLU/KHo*^UBKW 'lWv-|G\vߟFaK؇̯Eg̫fO%JgzCH>ot7\8 *&KB*U.}R-@y a`TxTj;S9`YB & gMe1=sjϋ>yECEr҄#ڽ=7 <Kae WGQFuMM=thߓ% t~CR '먽 8>lbvhpkW?km /(]Bl %L8qԴgMw4;WX><I?,>ElOB]cƅϲ~R\k_f,{/8}.Xѳ@0H%1n<#[%EB.xi|Љ:V%نV :4~2h% 'C+VjX7"/,aR?$>Jifasy":u"qS>(Nݱ\O`W3ye6& HQ-wM jqR;u/7I_~o:fØ?绁ǔs}Ȼ]c5?7!=qW9nb&Yd~3SAZI# V~xdRgԽ93~N&E4-|#6Ih+5%|SYʍXN)LTbzKXWlwq%݄̔fYp HX|ߖxqk/XqZj\L{;th- '>L|._8sF}>b! шkoP Η alUSi+cs+du/%hKE12U,h`]zW?LBoBF.4]DwH_*4?rlð3oZ?qMZnD$H4`IY8S ]fb/&nخs SWEFGqUBVh.„s./V!!AЭ:*2~d2MS[8׍1ogZgF~JMf忡Hy9V{eظLQк٦S9Ía23qp=:rvgSN"6[6mK![U ,јc*XMe3.? 6 IW'QX3Wq#sŌʥ1>-ޑ؇{/GOGM|?(G+BV{mZz)]3%o 'NЊ$ W}&n~X.drMQ'uU da.HP"u^9p'VoN{h%SCz7-,ζ23M/s !V[Km%b*/)xʖ1Ve)~e:0?T\,0&wlkn,\}cŢcD.&ka=wӯKJ< Gɨ#uh-hU2G"hs}4b4#$3vkR>Cb7.Oʹ!2d֞, {Nʙܷ0u`Jh' %L빭zC6]yb;LG?L~d8uNI}JI+6$q`1 b.6uN =Y^֛&]{ ,# pe혞/!Mc OqǭZr;E!d0T?@a8P%:]lFATx%W0T)Y9z[DlQ!Ww!.h'˳e.*dzqȖ3]c`f8oPLZLӨ3sWGn&cH`L?lc S"絆-h'W$0 |Az.2 N6. U2K  xV %O+Oü' Hum+Q,YW+YgKn(OG.>=Y]ҭ:jc䑩 vFKy]د8/bh@yz(J>y<=*d[Y}c^麹-cJ"!m1a~FT톯V4S>e:Rl)Dп2䦓k Xyu7  -z%Wc%g;}.ORˬqV7v_]N_K |D-]LU"p5Q3r&䱕 >9، '= /'8sr2Q@'I)+cjTϪ{ZyOGģ?uz#PG̵Q)MM`[1/5ٳBP;q!e{}:g?+9#sY=$QM-D)J\=tvVf{?C^ GT_%KfqXv7U!0I`4D)+?:cpW'Uz㽬6,iazF -YU&թ:01}O2ZLZIKޖkfKFuBWdQTē*4/s2 ZN6j{y+vĕ<鎖 k"؂0 !6Kߴ7bmۯcvj%xW*pJ|:otF4 u4S瘜hM(r e H|T"׺(K۳֓ebUDOɨ[nԪԡX45&uY&!S70,nN)8~[_f{TO\Gͧ{vE ׉5фXa{;N҃C?Joffua Ƹo8( a*Ks)JHgӆXYSi_r=ŷo19޸gDc0d3qI.h|8JE˨ lgrE}:,;d0PcDw=C k*fr yNmdoÚo$yfCp &Jn2k!gtq~#NK1it݃ )ÙfGX@C6n*L7ޗ0#*!m~2AؗqzԤ}4xf]aD=6jq's4M!OW\o5}2lFM5;w8A{C^N@!}>pS'`4o&D/ŝf#trfbrz1=rkac:Z!sи@g:w"GXƔ'h_V}+],͌,0n3m<{M;bӡ:x+E4ѧG?KRơ5˾0L:d~SdfkW'%o,r >PXa; C=*9\0x҆ێqр|C^H(#l{Gv}'Mcֿм<W/W"(|0QYDaVPIrVum15Ks/FgZu\V_DVrQ^\gVxL7X\scSl@i"}LMǔK>Cް`2 k èv)D56V ֌(f Gw%' ~Ж=rL<4@~"jB[r3B‚8@ʥWӆS92e֘U,_Th2;CYCD_S`62wS2 14aeU=ۅ~XrBM 4Ej&AL+l=9m؅ۭS !"R ma Pҕ{r=\w;p>X[Σt0>H؎kR86},0% q^ \-|(rL~0l0s.eM^MU!D{D .|ChJ$D顿.fxv^ mT^!BWdU4,rSi%zpxvqʞ ѫf^3qYWGmrKLHY =~e]y l#e01 -ٱ#b<)? E8RݾH8HiB"3X%b&I8dSgA<.9*>tsvBUi!P '*|hCȲЏD?,:(&/8 kLO*T2iJ J|ƵEl~ ѯ_j<|b6R+U Tf:PA.L- #ٝwlO .rC$%KēSV/J粞Pt'@}\Cޭ .PB>W7j>ݲ}j3P2 _\D9%pWDhqSMaC\h:& nM> ^7:yEF!\6zpSdA(kЎ? #!uڟiYH|D6kkݢhL#>xwRgVFv"4?%-J,OE̅M7xs҅0lknTFg/`E&, 1epQDb9,pMX$x &ףkS{tmӌ֩ܠ͝q\ft  :|FQx |Wc53_/@x.$dJ8 ܟO~4;7[*;ݑ$C ̆Tp/mȳ٭S &.ЄUvYuH{o6Q&{_A̡ېǰu/3LzSW <-F}٘d vTp݈YGd([WE`']Y=9,>JyYYD\fIDeMu3QT"A#("=}2m<]>ɠpbX'ΧHU/8t.bNPFnm.XLWpЈe VbȦyrUm,{HcGbWƐtkH{pZǚwR8YJc*txX|[[qRr<.KmxC&Laۑl򃨶5nE3wq}rMfl+n>#2k="; JX>ŝ㥨>(i7O))E;诘 +3įfr< xVO0l'lYtV^%Gtߦ͊Sm/76*G%7I A{xqɿD-A q-_1kЦ,\ldNߦtl$ɩA34*9Ic0Rv;4a1ȚoZBl>>ӿJ5i-:l9e]`>) 3=˺FBW7PTqp1iJ&aUJ]ȓ``0 N>v!.:e4$s\Cߨ٥hЎ?ᨛ>*RSI @J1ʯ.kHqNB9c'Ye8Txc[&OsyzO$Heu3\m&:<1ɤ5c˼\vx.*`b)HO<*zDŽzZ='e6WSݐs"g0"t6u[tD'['+xh%)pvۣQKz ݼ'SIջ[ǤJh G!*c ,DF\s'<}e]*}[H`@xQBvQJFm+ Ӛf3r:IΊO}%*Qd( j|V&=izyr $"AT .\uɔ: ~J$蝬1;%oL;sڙ >aGoS< }W*QHp}17*b?Th3s('#ܥrM{pn%Gkōi} Pj󞅈f$)c#d7dWh,15l;ؖ^cXwӎlO`C*3~;x -p~є|1䌛˔!e_N5Z. krsb-Z8 Ux`FC.KOrjTU>={OO=oFj'Ώ:^ն+ !φD2AMamM^j/RoƷ3U+:t{o|XFyj{6뵥ąT= #%p5W>.Q (#L1"kMso)GrCGӟϿXJ-Srw .p|3۠wtI"ERu:͢ofegToǔܤZ8> ,a2*ǂ̴#6uV0 mjR!P9,{M$W9JrŲr)PM pnBKT  L2XR7,chƯy (~/34Ch}yַn>I6r|ھe(-G0|P;{Z#aSĆ a!?-CLd3@"Ӧjm` 蝃&Zxܾ-~|ul6Jņp^:oe#jfțgQ1r%r2}–KtJ8QG2PLMh$Ϯ&7"ݗ3E('l4]ޑb̃=Ljt;1MS/u=3,. 6Bad5dvLMclp#|3pYlb(z7Tb:Ac[?F\HL[M(bϷKROF#oSG7~ ĢI HybE!\-ߙ+ %Op~!N1HnYu2P DEO+X.#~PKÚ;5v;4r.-~ >Tp812D\oxnд_4}.w^dGՖK~q(d6|_ uM.nݭt`՟5Hv+݆իby!*2*K٪Ytַ7*/x.)#Өlgk1;s~ﴽyu;"IeR(_l(^3FM<׫8~qDcQ$Vs=v^)˸P"-댫?=TJ:CuO$G Go$L(1j ^zNٻn$Ǡ;k7wFp a˷hG]gr͚ 'ӻ$ߤ^Q+)b>i8n# bc9-'"Oj`ζF5]b}EkУ`fH*>ҜFUu.gD%٧­5?3y pkD1_-"M6#b$w];Z+ FᶫT s} 3G&-ס_p'@;|ga0|v0w!rVnfV}.䖚UFG~I A -- <:E1(*Oz.A050>zu$yDpT ‚XN`9z$+lfd.K:qDjԷy&R-|K/~a~nAA+k.ǥz6TyEƪ6 ۷g 1 s埈mz=P/\1fRZT$oB#XӑB~ % Lky73fxI8l \٤PoW90W }OW10 {,.yfPfO(d^q u"Pٺ`W@\5|z! PߴyZgz^3DoBt6%B:+ΫbzJs?WhF<3qt5 # .xͥw;"崏1+L|jضSݏc8e;%+ۚաt֦Y]]0j!h|?\ɵuFc[8n"N1=!fWe5){2ņqR3t)őt~ʱuts;$;j$]A :,K+ n(B3-;}V9f[ %wHu1NSU""_ȓE(5:Dsox75b0R,&3S[;KkZˤcEcWNŐ~OM u*|2|Qkx>Yg1 LtzfaX8r%\ӹGjlNe>kDA PqǚNҨS;) v37nQ¯IYTvs~VX >6Pmby~vtɺY0rż U6egns#f>YD0wy=OeC341tƐ0vjK7MKi ;fFbA=< !U%-irIGF*i%Yab=&69MmfFs`rc7d.!J\L)aI/˩WoYϓed%佳9}+!{{C;]nEX3L!2T`R4-M%O@^5xj2j')oЋ!E\qGrI O8}go:9AT W|,RxWc]@W.`UTG41]0B.WJ[㗡l j*d "R%!l/KeUq#85omU3 -"eL~Xf ޑ2ԋJn.?]l6{_e*ʷ'W'poү/vl|hGdhv WeY!" h KtZ>u,7. ΒK"2oTU[w]6i1U>$=?Bc5R$t\az}E_9]2aȅθ=Rê oZ&4_n"13m]*zjµ|n]НLGgiAW'Y^đӠw7<=v6\Bayv⧕n3hJ @We33D0Tʛ?GaѕUcnC?!O99g_P(iihL6A"8 ҭTb-Xu휶B:HssYBgXG;efllfq(ρM, %jL+FIh}fmS5;jKWf8zHNs@7;"ŮJTǖhi7R AkXh1oۋja gM3l k-1_Ym9#oYݩfYGMm@mb>L©iMzOIș"Y_BYC}O-ų0a6PE7:l1$g?܄ɚM[[?'\j%WP^`uy5>.Q !7QY vOUщ>"vp1 QG|%63B` Qr-]g1PJ/UuU>tD6i2%P7O+*Bϸ֢Ƅ|VtɑF, IXBO?(yn?Q2.攑cI+<9Qq\K=e11*.krfdZKڐhQKd0I\:H:M!yioq'x1:K}f5WZ$ˮPw,+m¶D \bJݷ\äD-f U/?_io`#׀7bvY%<X=a9H_\A aP*|F_rCI~'4_6Gz טԷSeOA__Frgԯ#, Z,n5wCz.,uR.l/)0 ӿ@y97jTP&&0ws۷]0; ~ACaqW2g~:.c\@Ww`¯΂## r8EƋ2&<$'KH*DC+[Bi̜D-`LF.Uwj96Cn|`̻ɬˇʋ2Buד]~J{I, 1V qH(ĤD:%I5[ -j(:CTg@pwo,2?$#F d\+ ` "P*dD T3Q9'8oax*@TUsQ01U טZBF9&[|O0RێuY;WD夳%rrWy̕>(p/JWҞzQ٢"h\fn4GOuePAY snG̬| FO`(unb|>M)qzPAV]]*U3[%%[kxyi~2K}M_ cB#ACTő2݁q3F*?[6mO9ٳ.V1ɿq,]tR~ZѿMzj}hAYGR_ߧS=!dq0"X.(w{o핔s͚vkمj 1 7Λ5?-Hд/?KwaO"De83O?Un7A;F 5RS8yca7(f~P9&yq,2K%h-X/Aw]'.RiFhR yZ7yHt.gvO>{w2CvFz")ZswiEL@dXgK yMÿTsk2? R.ʹ F<" #Dpu.8F<켐 h+~c,*q@uWϫ:21ܸFwűi$9YǨagj^Nt^s+*?R,/|hWE@+*,t $H >|̫<߻AWTJlFmp@mBT2"\N.uS@p%>`1>l bnm.OÜ/a>ϑsxYC*s;)W+˵>9zV3 qMϒi^VsK }='5eT%`1fG뜳1@iVީ [9s%=JXOKH08w/ 0 Oy ;'W'@C)ZbM -=<^heo/:`ܞVʝ}1 xu NZU:|⥕g!(mafp3:YJ(yF~PIׂhowPxxmj틐i*ª\vƣ\xmiABJ# nndwv8B{I6[K.rnt^;p=+Z3$;h̘1fFIǕ/m$Gz{x9;#I,g0r6:FmsbE.!XZIdbLvp~9 Xyj g!g ǖ6y|h:ɳר(U΋vma@?`%iC6 E(JyS1Adb0‚=XnIH%o )KPt[$2gZe),mը?HPC]ޝ! K'u@_ƌ'iu>c PxI T*A4^8Ģ)oZJ3O^I8L$lΠQcXZno/yvFm>c3<'nK,Zi=ex{uRݕ/R djًAHJt.PWsv Zx+r`*)p(޾&3"g dgĵnB;4in41|5Yp hKn_)BˤH%َ#,iIݰxvͫoGb;m= #ۻ\dg>GRNńe8Ue;oeb*G[e{ipjRn ʔF r8Ko28O[JY|dSř\ʼn֪m'1\)OS]u4mB`վZ Cƨm|e:ɅsvjS"%rc6U31[*1׈"HEE_f8E"'mUL(fzv=y׷ >r(Nq⺱dlڤ(K*]cyPx</I aK^T꠰T,~Q1Nw;3*s;ŴE?rɗ7c>z2lyІ/$  $ ݞ%O QVӠ,**2*BM 9̸N{'/a[( gËf߹=,g,=H&sNg#QB^jC䝌b 4w0NhɊ#D G[!&&ҮIxu~ߓ34[L`c)̰ KBF3J8@3[TSLߪd],FY9C'X2wнǒ[)BT!Y0d-KYLZIObQ薮DФ~9i :\#ӣdl4sO>}oe %Ҩ2mu1+bw&Pv* {<P.D;q,<\y$Uw;6BW^zReiOas0QlU@*9qP6?c2 h?y" HҞ67P rsW55+Ѕ#gcc(9R]~`H)!}><{mL RqZ:q TZŽ8 CǛCyS.]T^kZy4BQ1 LZભhAָZBH S"1q w-=1*bNt\V~&\qBHYL*yš_Xe$RH׸NI %2mN% ]83݈6@~Ts"a[`mƪq5، ycٻY/JPJ"s1KeʛXm6^ Η޸N냦b](=^I{:mPh%ݏ.uu[T1X'c$bWxJakVK*Maeat!V\r∟ l\S5hg$[5aL?wkuԫͭぬrz=-WqGGnUAn)Wx%!x<iGxR(dPH3qGR>, 5GWB,TVD`Q"졃'-ݶ B˭纮v O$ҍX|TLL<㾿قhǡǚ5֒53NT<t?,zZ{bNK;E,QO)[I V%]n?F? T0ca\YW /RR Cgv%Տ F"eRF<܈/DL@[!JJpb&Cz.y"TkrqVM Ѯ .bW)a cm0)L]692o -jkDCTHpuE:3(89qL:c}pb'/KbM#N lBRv'Z&BT%lz-nMZϴeⷬ@M.Ik[ PکyLK6 YO~/ʠ߻FahybDtL-Vh_H,?{]'3{y Aa bF kN[4Eӣt `|Kn|: Nɟwl(NL.?RȎ'O\pj8BRI+SgUl'I eO\ ">Zh-g֩NqQLO)/g4 LޫΗnsCyP=fvV=(#m~yI!V67 e&RO3h׿-+*`$-[WK(I:`~KeoVC`avc.MeZ g817(m4{[Q:V7׵32K Ym("AJ<%+9p %RPG~ΖsDy#D/L<*롧 ՓFAt9?$f^AZF5\p k[i7,i&c,}-*i00<%DZ ҅'g[A$+¼{: {I/BxD}uY1LnIЎ#.%UFi(bOu ZI<7vp;$eTp :Hv %C%NO_ JL-~̢zkĵ鼮-Tۂ@mh h+JӚF|S\X ^Jyn[!{#5Һ˃H gn-h2]8CGG#Xn:Rsğʤ9WʩD qYR/-B~ec|:ԕq+J$C4nt<W[99r MQtӴnDJrxeFŒsɈf\,,5.?Pr8ΚY\\FKwY:^YҡǾutiߥT*^ʮ)yWhdqJB X,S%Y$toͩojb3KS6vhiPth-%Ra^8ٜ*U&\O3%Ȓ EZ66@PP DƟu9A{|JrƦdQ+fQ^0HEZ̏A'#ia*[DrjX]Xh}t: {BUc0*[Lڀ^aKF ]RwrW@gH@4yO#׎Q.P)azA/<{(& m'wuS39%=}v3V ߦ?^L=67U 4^+ {0mqom ;*[{Q72,]ȁ`mU?DhpWVW3q} `84vۏ5#.\{+<,+:7ܔYrn9q$ ?.{PPqlbozC/ƒe9c'Ot:2H9T Ƞ]C%8 ?"B1 -7cu 5_+eO7Bvړ؄x:Cl` !MF(LMh#vt;D\? $ 1I{P Zܿ WyR`i >o8Sx-Qv=>]\锻G̃cu)fEeng֣[g㋅a٘IY|jGߏ8/gU o¯Oiʗ7ģy #끬*ztNA"{BGb$H0KԚUs zOYa=< fT(xD"%m577)MCs$QLӯ+ (i8lHᾗYf@oX("Orŗ=Iћ?K΅Hԗ!_\!̤WHQɎlA0;ZfߑBץ3Yv!3=;8)j6<%O!PurSs'8.k8-?[&z怼gƳy=dkJ/x,m3B,<`>f+^ #&賒RX*>?",RxtNȎ0<Β6%Qn,P|{ZZ yBg ;nm)2pCoauٳ>RfoD/4\dL)m.VppqcyME ًk}ySa1=YDBZyb9baRv (|:$P A Bd/u<6hnֵV]{U-3}KqDܗ[zsb})bI3JEB=YzrQP\C0\'xNqZao= /8I̟Äjp#U9Zт /P*C^ȹ~-I]}7Tz;|ν]gޒOadK":2KՔX7|:شЩBu m? q*6B K14 WЈ (\?7uGeJzk >A@[%Y>lOՊn2?DVRMsp#g#U[K'3͟=_!Nם8KA^ehM| \iME}k|o(>s&{I]oA'ƽiW.^!\+p|>9EKu7>E(}<|Kggif%|݂۞g=ftX 6f)s^-$g$װ׾U:wޭB15#\W#èJmျ8eN+˽lBX~+\~h?*wlòi> v  +W I,Ym;n6 Aʒ[+$^I(̢V'82Ui/KlCHjAr2Eq_ʈF0>8Z Ǭhٔ͢P0G֍K5j}PHԜ|'@I'j5"=8EA=~oB2P(EȒK:;Ap[0}g. ^ާ49=,Ns5{o8V2nBM?|j*>" V22 5 -=nRYIzٺmH>s`q ՙT*/Ϛ*Ѽ[ PML&|dK!k|a^rDb [f]Ȉ(4CgV/s+Y^-Sq4rLi8E4FA_dCoG;@(Cnczڃ9Ǚ1 -"jSt҂ mY֨{vsDFZIV[a@bG3KG(U)@WJ S vG-[1 |t1G&gRxT/B}) \3uZUWe= YRS R#G]CM6hK]T@PZsh08tp$Z6 |A/ta;e@'ǥE[pNJLU_ Cf~$o'0e0k(~23xR6f'fP+Ї? %{7'.qf `M&$V@]E+IrIჺUPe31z{ZA3,{&(km` Y`7B]HN32(ccCe.'Ta-LtwV,'ZjwDRIj`IL\`/A|Ȝ,Xq+;Y8zӯϤlUgy<(Z?BiLy`/濦{ uFg /Q1&5KHWȺ*J1錼'r"uD# ;, +?}" SSӁ%Pv/D;eq6UBV`{GlwiF.o.l<%@JٹGOgLI}-;# w(RCYW7Bh~-n,/` ؋} ND&D)~j߫@@NWμR(IE\nrQGp1oH~,ZR32CjDArX/xaC- u@&ʓ|mLskm<#v3Xc %x=ʍq>xְM|<@ ЀzE,5fQS}Fԫ<03 6'LR9X۸圔"jZs<-0vӒ۴$p96`[ʙt>& _I¦_s]f`"O}Dru5/{?I )wVhuMq'j6pR*w_y{cs8groY$N/oa].AL]Kg*$Qz9$хaA/:KoYGzK]p]& MN_ .Xd{ܿn*:U=fvB$4k%EiVO_?_1P@JVϊmH^*sC`h49Z6*ԎCEfig6{\'Q^.``\s5 2yqt|A+tb'sxESlm< c*# XWK#й93GO o* u#Syb׺I#4&M]wلLj7,?ƑFh/q(^ȿh[}><ũB_ʙmGtj'C!=Á}MA]Co[Nf77kc5Vfꠈ`^:e,3 I<1\tJAA?&.dΛ%Tn ݝ%w,5I7騚Q-`Ic{b\y*,;2 6ِJcS! հ+˙L ނa7KٌsuģsNJe3Tq4EOvQήrbɃr+Ʉ.mMg+0jy \O%1Һ2~ \ }vd@L bp]K܄F ojkǬx_P[Ō֪iSd9o QW9@? թʢO((glZ{~ Rqm e@:CBhDAX9к/a$+9qb=:yިB?1ްy6n;v$d!u18|v@f&Ojܻ=L]S h@ļ=TAt ȋ`Ɩy фbkbPxp@0yHebvt{32fwT;pc+$/ sH11H WK6I&1JisKx2HхcJ O]0N.dْЙS^kUuߵԫ>ZjZAQ7f$]h~ B}k҂޹c`m188Hq^q2'%ex$ǀbXM{!:&)<$Pnmaê #?KnHyY7_#w<œRh<7Gh>8;g7n`eT{P`lq3CmO z-\#?xI e9n|tpd٤ ?Yl`ًbՔċT-0ަamlCH_a۱! |6hs%`Werιs'^^;}mHdQ@5ph_J&>MEsߜO_t1Az>?x*_M`7z;))R:wXPP) x.Rw5#fg02\Ѝ씂zcU^o5apX=rȨ:D8[o:]7QR!=C[ΐƈ)95{@9e#r- &\. O0kI(D CGW-L@\&NՈ9:}sm'듿-ir)HI4>,SС(OYpȭg23ߞeʴIY:GE큻aa:w ycJ8@+|D_:4ia`( ے%Ӽ!Fmi>([ܰUi9np ueC.vǬ- 6T {||9Hvt&eK/&aL̙,YSṉ h*jKN:ĉckhFY=N .VۥeEpTZswjnH[;̓L֕-g Ai5oqxWʭ4pI[yo<#jsvGۅ"w|:а}))u<6޸B0$*N E <:ʀ&`m(ÿp^KyD+WfVٌ,Mywd(YBFA}i@ g'pa,YZIOD+yN]y iHpQ7P"8Vu3P%߅ګfR:v> a9" iI>\C/:˼ǐ= Uljdꋬ㟦2!Ck/?7 ~6|OgȢ_MsKE^OdIPÓ,n{E-%"ͮ~ք=ǴhA &HXmdK~9~p v9UB/l m:-R58 虣7Vc)7 +[":r<5T\f8ugQz4PzC `cq\5Ĵb{jMv߶3ik6;t6cXɖ(`GxystYV ƝP.xs ./>Op۳?4mq2z!@Mz0p[ɻ !8]cWß)/Kds Xxy*  \w~V+w Ҽfc-:gV4qK̕JUJ2=5]hɄ( ZAHV' D$~.WcmJYh'0\Z2,npUB0HHkބKBZ>TnP C"ykiB?IFfl}y 6ReY o f>"5hy)ge0Ϳp-ܨʜ&f8Z5'f5&Z*_ӘZ~C-3KBgogM\$i^ܢT0[HQ?я ɴS:ݺrH'~%. (GDXb V՞9ɱ{ ^UVrħU9N즞?y;q0D 2y#~i73"e<:-ϣT#s`̽\( ˔eIa,g>?>Ğ=0 hʁO#Np]Yz,_"K~bX̵XՇN(nV\ܒ[ JsyK NZ49&ޢ-EsBՅj9qͼ:1]A͍tR|(FG!R#(<kE^ұY:{ hӃR2åjأT ^ސP9ڲj'E˝8wK_$ְ{CRǥ: ${ͪAs-]~u XJ,dةOUGA>?Q2B dF=COMdꯥuDR5suq d" rБ]հHo}ݹPe7&;D* W;ήcVavv@@I$=ݚݻ>0S*Gm}bQc*}טxaYoطϯ:re.O-Zc]d[jg7 XEֶy1 I R&CMq #@=~uCɳ_l: I%^d&>rNF8Xhsz I" ố֬9N9!Yo/4'UPYyta ͙UJr s6HNrU|zL? IV8stlԑ`8HІ9";=Aă7DQvFH^Baڏ bܚ?SP:ǍvX!\s5Zخc#jm5Uo~M&fUl=ae'7[d!oF)e(a@lGe?~@ޡ@C1 >a!1_b ǥـwLnOv6h̒D?B+3*CHm__7/JUQ!/wi|=,4^4B Kdu#*de={¸EPA_8[Y{K+r O`&26Ot9Ƒ5;#D_z,lො䞇S%$`)QYwm; &D8q9 $qex(q5C!3)q~1y%YpbxߙdRWS/rm`qN!$^M(&0)]/j8/UFF8r\=枍(%ÆCWh<,=)f|3}g-)I<xz}zʖfQm~R)гQN<2,< *^tk|-#!ArFd&z)`2B_\⃃F-EuxFd).FlIEgdkOZ7|w6xg;qيWv+߉fX ڔ!o']n4 B1AbyG<{5W8)DW,vW##!&"`EQ~<>4?$=0%j'xl.{ ds)biʼnw4~AJZ٦({LhdQ`˹ﴫ9*lE s>{xv@ \eĥj7}\Fl6wz^d69}f}3 23]C8[NX@ Up[W}#!.^[u,q L&'ߦ~@*(fkqBc,bQ 3\Sj]X& $ɇDr=5zЧDXH IƐ'iOǢal[q`q7lȶ8Y(r/|0dn[Fi2@{0C1t$T }ߐ3X/M´ h<բ I5D+O=ۓgХ;ސ6#NoBbf+>υ]ɦYc7-Z;]qTP=feoO=!ۭV=w f}.Xn?Q,&'IvUnLaXDԻ}%bءl8COaW?VfJg@qw뼎Ӝx?WLXD,<Ԃ>R(6EaE >52Ląw"@X,O.ʷpMR ]ȭ"4o.Mnxm,uĮ+1 ϰBG3!ќj~|ܺ3WJfw},:} /c8 a}wBdAM(7$B\͜ӨM9H{Ө`?4Ş_z Uw{MzDY#C az<2¶'?b`d޺+$x=ߤ\4Cit늺M~( 7!~Layha?>zaH':Z̉XuQI!d=H H%5KT ,0ؠkO> 聡egd 4VH muzTKiHFGc=Q+o@',}A\nwD͗jASj$25YA8)m-tG0h5w53aYc_:$ 4^]gftn.(W0 0--1 _`,(xu$hVj#Q4=cuSbc]KCϴ7K5D7Eq`̮+ZWmc}k{t&|G\Rr=hKY`miň"b>kH{8,˚g4-+1ҘM1Ҏ5ZщZ]}m%S" YG#v'Ģȕ\T!wI)-a`AO ZxĺyDUpCf|v? ҨTfP#~#ɮhF*[zVJ/~N0K *fr9a'<%Yy 눯gs=m P5|3ZXNr":SMǣz *uDN>-)i_Ւ!ۃU#%ޣT 艴]'ߢs]k:l..7}iljcц 7.G%*I~T,; s.?ā PR$Crsc}ap(K !!N=xr[(uf|Z8`#i)ٶ}=١`a)i4hF[5vS Gq~FoI5Xa;a#.U=3qVWT=(B?sDCݿ%dg{Nr BìB>7'fK"Uw@Q+,hk4$fF0؉I?EUtn(Y+wMPSfB/)vߩ-kdZ5EMKE ϜkTiK?avk}ۓ ,qv%zw 9/6L o1 W 7saU2yqoz0r(*]|!P{ïm_Bw!["HY_Q^mz.-&'BE> V(EƄMrwY_n{h}H <@ k.*A`f<4 ٍ$q_Rht ЌpY<s33U)fR ~SKjgpǾ\e$+ y geuHR"! ! F.I%%`!2+ P!xTQfgi* $;-]> <15jց,S3iS y@W(9d&,i6c4dHi~v4 5n#相ZDbL +*]cj5%!0e}@H[s°}?+K@$n|5tFOIk"OIp=ԓ@$_hgjӫe[H5DQ=O ߮6(t2!P-xE**rتӵ'wn4׾lgD3`^eiAFfi|diK Tt`*0 iZmKw z̽-:g1^cY4ŀ' DQqf=VXR< ArS(]NBmA#ʓD4S62R~րaWq/gZ=Y }QZyDz-qx!/1WQIؚ-ΜT78f6<$v8Nm_ࣴ.dϊ+nxYs.[ksi^j8~2B߀GL*ca1aR#՗~(pJEo"8&utkSѢ&oNY1?buWԍjL r4њOVcDv džkKH8q cklgG|DZ]EءBg&Blf |"|;>OUhJF_񌠴}A_Hsi)h Ix՘H!Mo2%\gZcnAc Q6’  >Bg߈;2AIM#N]aO."QM J$Dk*K휆a FrjMX45jӮHVTnMI PLY]4chtBWb$1K\l@$ yZk1T机В[v9|` RnM2dv"!@\ zHo.Hx7_%X<OKk6 hLIebrc>t0 ZWa!ƿp22&JU81z #]7ܳ/Dg2ل1âRVKu|1z{X[?%l'|.5ȩlTӹO>ӸmN-&n伍-$&tp .K:2jLIuiT%z+3Xw8e 3+NK-hEL{[7C \3vڻab!,A!U HhVe x2T?K (.b^9X\sXEr)`gYTC] P{-Ϋs꺆gʱ|NbxkzȚ7Xs뢦??aYz7ieq]աCg6*Zt5=Bk65<>..(7D9#K5\-J٥M5I#ڎKsƾGG7w4MΌ{yڀLAߪq1Qė 8$ݷ_ ֨}64("pW*3zk$7ǠQ"aE e \ T7v)ijB'cFzTpQx'0&v2R |(!;W#ͫn9J._ keWyT AĄXX%3سBXz@?|a列NbmB=0X{P̃Mmfb*}jL^Oێ٪¸y@}Pq䷻&Y4gnV.v(j$]ym>B}YHJ Ýk("= p g7KgƶF]|a ׷Y!=OuXf-1T?U2O)Zׂq(<i<6F4NT`xT׳psl߅A;Էr(7\g? z5=^ol%=_IvL'Ϲ!x(kP#7fo6D]wtDt3~%De ӈ03>KYᇓŮz w35F*^\#|Pgh]Hd&D>^GޤS׌o-"XdcSA6"@H kHy} ߓ}t.CKŧЫlI#*&3UdCpn"Ere,~e=!7~M~E 3c\!QOM+9vncG8j )#IAnD'Gl)v2(^l}c@͗2Fk<+%| cmpOq՜8v CR:퐍ʗ6p܊%L5 r4r| 3%|c8M`ُQ|r_bt~s@W;Ç5kC<WJ}ŏVqyZn5)␗}<@%ڝls3iCtD(6@-CTT1yQӠȾ\ZjvdtTDi{33|pXhL >>9I_{ XI O6Dzɋӟ-) /D z[#GQ)Gv{NGE9l \̬ 7Z$RTk]0RtzY~qaU0+A&;8ᨮzO°[rďԺx)=Iq~/ 5i@A^!UN' Kw|| 3STY18tD C.e~= ޫW + Kôw0 ˛O~glSNASsR:Ȗ^h*!>9-Gڸ@v✶27SH2~F3!w|I!H2E"#tǚ迂B`i)ՋvciB<$rҸzSR>PT3\nu͗G٠HPI~,hg-3D-Cca^ǩf΄eblƇoj8[c/0+ 쭳$lOROG1e~$>\~`,toܩ#R&Y W:nn8gD"]avVqfQL_/AlzsKclU!߽}lXxLoȳ)2Yrvh &为6Lׄ#W;0@@)}bZg"j[+}0>ylQCnacfoؑp~d ڛiʼniHNx @UݿdP0e.cv'\C#-e~mJ:]fy2e*Fhj v޴ۻB;+kp)ڀfHoŋ] &bS+AiF~gp$8ThS d. Y "lS WߥeC|!dgfqK7#35d =-˴rz?\gPI.bkۭki!393yZI|9FJ1)UQe"d /FzXa3]FΩ謞)m:R26pAVTU"TMxQ :ŀF:3̩VbcKiµV;teFך]vl S:/vTUp5xD6X<2u3* &&6יvS\"op杳"*D$f4;C@g]qyS/hdsV[,--5PmM,_DgT,`:@wdsbceO8.cP|Z &}\zP()ͱe,XᜦW })&6:ԥ$5շBZqw>U|' a aJdpgcT)|$˿?MXU!<$ ,Q݊ގuA-: [<[]Б c>=0*譄(e}-jDIRj B;sreX'j)&ޑ{~#Gt5nl{5,b7 `o>+yצM|ێsOlK8S 8Ί> ^+ <anfgw X<,ǃ=`qWcʧpVJ+?P x<bF7Ŗ ã!@w|YhjA@cAGY+]i4J`xrJ7N1BiGR񾃨vX5K͒uKM$|o5U$^IW~/DN~XC'M$1hE-BH49h#M{C]a')+dy)҄2B Y.FGtYײ&x?*S1gÍyA(<]L|XGVU֍IةZ=,{Cҟ.U8 ` 98{[aX{VrX+퀮]M˳kge:?PZ*yyV^_"~F*6x7;OU\dP3:DbdJ%rhN͎J`Cph`0*H ޔ Chw11*ʜ%z&Ei(2&I 1xQ pkf;leOn&H&mE9ĩAϨ -F[ o/jrl0~K+=ֲY9:mw PUuu떋G :>‚-8CKh;NZۀZqys|; /IHDGK\%*E~!Ucod7ɽ|\ozM㧸>zvܶ֠0qZ}1 P3 (aJ[_μJJM E-^ɐ)ErH):p16} [22B`B)휒޹o,RB$M$|0 o|"~Znh=z66\T+t1dE{n/7wݰ ^/mY.`TbvW&c%ltiWK?&@sj.&dM(ߝbZ?_454KT;Wc({e>QpqWpMS5xv&}1C+MyrSԼZga;1Wĺ3.9% Q ܶu̢Lx>=bIRG!n藍{vYvkhBYu*` -j m߯uś *! Rvv:F uEj ~RQ8*K }(0xQmwj<[::(֧ GI vǐw;Y$\F3WϯOd^"ZBZ)EBn/>`vY.Rp905 rl*M Bizg&bi 嫿}`Bm^I)Ca(:`>` Q֚48=۝ 7݈ E޻xSo,)iT-*x!Mo %|p'դogKd/KE7ƥLe(D&C^1qSf?A0e#ԺZzr1ap80Վ@QXE'޷mp2pWc^X\؃Ǘ0@!wUM|@I)cS/?|]8:`yVNBmV(#vuP˯Eu"Ol_@ÄQY來00!ҡɍϮG#U5*]PϿ`ZT.#Һ.laa14E9wWi˾n`ggVIFX"B7X!J35h uvVX?D4J)=[,8`!JN\kI[.0(;" yoۍ8.Q+Q4Kj ,ޣX3,Jp`mn##UĚKo,* V:zOEM+$kCӫKE8)8Qcy@W}׷*nJd+ŵm߳aQ\Ԣjr,"_;4}M:SL!,N8[w٠ȻPZdFv^ol4"Z9Dz@BZnH~`*vwJsϴz }h0óc@kMx$kΌO8OP/2ü$fP-u;I4~%$yI hw"\F,-E)'pե]/`7t^ǢiA/@VZ/ɻ'T6uYrBw[CbnIOQզɌ/?G'8}6XtMmsƥyǕ4ԐsTS5mhD8 y瓟MկRZnG91UJL~lHGG2 &$unDyE<u"ܞz) iVaT?qo7k缭p,Qʈ5ch )y@oͲ|4$V>UŊfrC66I ˸gp Z I4ͅA8iF/H"xW7 GXF3l|^?3 v8.8XY/tGGFJ[tD6VZ[GY^_(th֞ـ97z( p=\7}E `PBleh_Kg@}ӑjh"Rqy.BLF[f41 F+ Ss;YzҹQ?e6g9ReV[ݦH 㙐N0HM)RҾ gh䚊aੀ W=1a 7jRvbu3ζ@`Ch+v}s&͵je[uiVzAIqh>˹d%la=ʺ`,OT"4TC /<{*^2 p(ĮU$D;j%ǥL?v+1%;o++ &9E7``n-.xAXOCpU$_7q">HTW`޾y@boÍ(Ltɚ#~U ҍGSz+`V F@رj2 }WSߩ r  yM Ԣkk=+>SH8MiJ^zG~J_u9, %;Yⴲb$>]BUxٮ4ӗe]/KT8 Wq>{a %'IADKSňX h oIcAǒp33dc)ԏ<-ŵgUG&MLB:}d~O'dD#l E0B_ffc(z(t* } :LhaO&3]S66B-/Uv:G t_ZXzA3-am㳄6,W/ݩڔg@BfU}5_[ 7EO~Fd+ " TpZRܰ"_yr8 9-/89B9齫Dך@DqzAq`%T'} KɏHoibuabsf;rpٶQX3L@ =!8_ ". Mơq"0Mqw:zAh<470]tW\;7bnf1??X0?"}!LF{vb%.^6pmΘeLCp 6(;D"We_&JRRGRt{&r1/hvN4bw˔`αd1S7\@"c7'CFI1Ck#Ng'qaתa3 gu.|G@vf}V" E]wlѷ^_8LATNNJϴUzOsf[ٶa^V<<3X/[vb2SöpFxr{)9 AI>'G2ՙQhh; ]jE7t+&~-QW rkZܿ5Y*~*xfJIɀ- 8 z'~?W17,Ϣo0ܣJaIep|똌8]} sWj'M65|4n=Qz1牅<}/U?bM-d"tCgLpT^螬8A0 D+ukd8odp]gը:UfC)][eP0_o~r7μ#фzd'4?vvo8,K||_o ?KyLژpD]v09N9ġ+\2@0$YH63ܧ)b_UŮGxNj35#J6[c{vYQ%E]xCj]};]<dNAXn;nk0*K!4;\BPX-|.D=$br#H*)$MMb !5G$UC2~_^ П2hQ2y 'ڈ@٫vƶY"x]pN<]?2R\ U1[`X+ oZx͊Jj6^z+9'#T)-7ģ8mUXѻ۞aa*A=uP~jqcSOy,qцdwoҫ2p [+|7 ľi=?iM5dqb2= f)hcpЗ{CzY(Zs0 y(4"^M]oºXMŔ+ؖ3͖[|ɶ f#O8K, 3@jn.#H#KD/=FRUDN"`^N>ؽ@4R$MfD L%o#>rա֣RIO%ޞk!XYgz uNwnvJMm(})}fJ͡bXڃZ<Q)h^5jInF6!u ,ӯZ毰؀- |sW,<)LsևI~pW ƪ(7k%h&JD'Ƿ%2I#mXyl(;ʤn?縸vnquq REz6܏x6ب1-J eՑ^Vi?_ ʱ^5v_)O9V|n%%TbZe-D+}^8~Vlȳx8>s9W`5N5U _{v)DZp椟W&ڀwY+#?bJl9-ѧnKYSD%&{~BML v]ޖ#A-㒉S1bɚdRyaW/?a%!cM\יdwZS E Y;!]pX#;uI&G?lt<{I4u5x\K+,ǐ$9U*[$<*%3-ZPO;hXŹeo#HlL~V=,y_׈}B%d\5@`Dg܂OK ;n/3hCIͲs⊗ҁ r|'[ BIXoC(^!j`㞑jO˻R ٗt-z/!Ic'em*WmT ·^] C*$;@* 9:Z@^g\? ]$sr+/mJ !i,Lu/|^+U+O ' t('W}Qh(c8>x:Z-ݍP]-F)̋ 99JYC5&P䭳g9K$zRQPa`92ʒ6׹]r#fű޴;i>'SRM(;NهCqpȍ0W;D "9SEUƺmRo6Ip ;LV/FJJn8 <*oK7!:X ,_0Ztc"晃5MV&$6?H);'樦m(0qQ /&b,Ms2h (3){;,{6)O'~Z)ݠo띾EX/!ZAqщp:sTbj6/gZAbAy.OVo  E%x|唧)⎤1ۚ!/sZ_K; ( ӈTaqM›{'N.XHyQ] W 76KqEzW1[,e{IO@Ms3@9`ezza0} E ڗCj+;{{r ndp$mrlbF*^}puSa ].+U\A&v { I硐sU`:-YP"x03==O@.4pq@rv2֣޺sV,;9liIG_Rօ su]~YV^0N]mN3?S&͠QUɲ0^P˅(KGZ!yWs<=t|oh4^)B+B,S:vdXtecJn>N"=bCw2q)Evjr-|z;0 4`ńC QnΠ\Fּzv\N$i& ʤy +xB`ޞ@xl6X/BneV@ũk, (!'-1d-)ه }P&*}rZ\c^IEґ%`n89Cf^q5SGUnAȳlm+Q&e'21щ*{CNWFT%D9/]9gSL ¥nj? Cv/eX\k%ŅVKuK3UCs:NJBR{EՄa".UDałUȒ!v6-;6M#/hx4$&u'k"1Tu[@!|'\%&ixߩLy@"$#t A)B蜝Tm1Q`q,D%TF:κ*it8.نv|Ɋy bnⓣj! Vz3BLd^/Oa Qcv p>A;w>i9l0m +0}{Y,Պlr Aeu_q/P+eAGR3Va(:_\ -ސ?ݣѩ}PSq3= _FՇX뛜YKb D}JQm5;~ezڣ. h33 ,~.N.bm!T6?B";eKaޓ٩#bf:_,(Bw7'DzKm(FΕ ='Hx ]Xo^Xn2t+=l9,AԐ}/4gJWjѣd[D<,ދ\XlՇSXzFfWviƃBe'>JGЇ}rRRv3 |h s?q/\q'ǟ8(<>&5vmF.,:v*1\$K| fO@4ګCn8v4~>}jҞMpjtpLNi|ۭ'#:>" J6~afI^no%N֫tF$6otxSP8ۨlt u>ΛH&7ũhxT̂[!akJ!}RGM~B|mGZkOaHޫ"5 3 .-IrmD:z-z}d: a_m`mNFXkxCpѕ:n?N{?b3\;lj2:9\\~-r]wɧ^WVk!ӛo2ߜ ?yPr 'jWq.M_T}KuΛQِb~Cd3aM:(92?1wv A® +)_[c"%%"~Y!f4 E*Wޝc¿@I0_w:H*5ZB 2H}ևK猥{殕1d_H'X- r|BӔq6|&65MIB˿>,G=E `)w>3JQ([ =pĹڜe5ē{Ҏ^1 |_*CUV`eQwޒU2U!j>w.GIqv(x}JN /ݥʺQ:rs꽔MևWU{ 66'O;TO5Sͼ[ۯ’Q8$rܬ~.&h6IQovP뇧b%eت,X~j<Q^+s=ϱ$XRƫw2I8u"ՓkU/s &pMv3UHaN?Dm.C߂yN6L-9A{BқL9Gc/ mj>:./g,&sqަ!E`-uF?ImLC1ttx'5*NwN7|F yj8:;UR )N(_FV?"V0\LέΉ| oK1HX@Pu_h@f]~RgKq3A /g?so+RO]3qVBZ5./{,!;pE?ag*Ã>`|C e|.+}O1gL1I[tǙY4wp#E4@ɝ}dx\ܜ @VpkP 8,|ȻS?Y 72͑$߬nF굂H^,;잩0h<~oҔNŠP>1_QF OgA(P@ P?J)z&Pw $/!Q (~-bre*~y,0T(~gYg"1Vƞ#O'lFV|ȩ17LrL\  'pߪl>gP350$z 8%Os^}2 rR #FVO+/6$ ;ԴZeo2KYK}Wsج>1A]) (WbxIĚRm{6BpRSvZ} ;'7%7ǮRQ6ӈ YsaAvHT‚2)vǒդtd |E%59?NbΒY]v^ɬV6 .yk՞d ;G{<.].@gy1m4IؾwYz1KI~BsotJ{%Vcm3u闖G[GȠn3FDV$H9]ZRj4ݎԅDuL-.u@8Ut轑i2,It<( Jz&)!S *'.Mɠ6d:%_e|R׀7`ZϏ J2CõxCÀrgd:_+ '=s\B+ML o ~8p}pBWuZ>e}ZGqnm @8]NM]Cd gV mh|N^ꚣSSJϠl ԈDHJG^p!b L ע 4{㔝PLTS#"B:lDзQS :ؔ5t$zx<98rwZ7L;^vc3X\&ZhEyC#:t3Jݹb4T\;ylpԚfN%'k3r] xHx}F\^W#NO4+*~[~Xіtam7H"НS cw7{#}qWΕ6Nl`+=^27]ipҫKx<42OG^~ XR-k4 @b0CN#5V4sp8j s"G6UtwRX|qݺ{`7FވB4>am~#ݹb+)4^nN4o+4XHqvyh&f.\^l"{:!Mj{kHý,- ?7a]:/\8,>Yf0 Q ,/++󹚢a*@k0DF]Ƣg G`fphA\}IׇA[ \ dUzfcV,H1(䔂O+OOD󭱲+qWŸzjiIQ>0V!~Q5%>wqkiV 'U7,li`Sag)[y8ԇӬe1"N=T_i%JyK|joJpʵ| Wwm& cO&]W8mNXvC`R\c^So;QAZD\6B1cW|E5iW2ŶRmߕQ{*Ӵ2Qq.̌t/shH@~ >}nQKt ݻSKI4kqnCܩm!zˈOYPL牜WؓRSF@ɦFhgI );~8۷T T|TS`0YNĵs^e[?!nW )&-L;v|QZDzP ǵ$LT[LqeLy$hS3D#l wT~ۧ'{rR ]_jJwvdOs*Co$~j\1Z'fK%|eO(ְ# a+Ъz7:锺S7v_Е#") 6czQ=B]IwBQgC%e zLYE @e%ψ׹q`M ;{5߼T3⨜gJBȲp.eOp5AHpJK/U5 yBcd)?<-.\FFu=io0ғNwWm|:+I(LF)v5Å☶.,y[%0O͜ ]fXSWX9 -G_WFi$E`.>}2Xd 0d;RVb(RUS~N.OZ5TR 6i8\Sec#,@1㔂:P~{j5ՋE>a)XHru{Σ%tKQ[VF"ܨ9 (;YȂ5Ř(z *b ڞߌV,c\º:doS166=û[ˬ׻z;yvGi;l5z9[nX+[B#AqT"#:Lw}rVMv[̷P,nq3TƎzFJdBNI&0ԣ(8VcU8$͍oC'+h;CܚGy*yc߷0t5&wH{3΁5:Mo_f@zl;/%"AR̍,P Ǟ(-eYUW"-ANN0,y>6=Z]$lcnD!Ar3߾cCͶy?q ! eT"I j0Ri9+rR^L䋱Gn2죇_+2@e*n"΍&&P-z~) K+$ٺ'&DI-.9f/F cz|DZVզDVW˞: U}MQte)&! }WVrjd ˀ eyKAX͒V|[{gY_m7v^$22ٵ,umodC@RǕ(he?ڽs%Ѓw87l=TZXF櫙`%Y_ M974VS\W'Ԛn݈l}"rSQ玂x.~1bukt:NQ k㤳G $ $WlĚtq,x:{sτ!ИZ[-, <(lu&jRgƍ\yk}nF)]u&"WY\~{H<,%ѪR*] $fjbFAPUgPTzfdL, uI 2(^RS^"󈞰B0?AH|?؀Ia:P% Bו_uRHUB2d,i(HnAB~mL_"lα=9xolfm_u$N &WؖY k.bxc8 i{(ž8OQ+ÌN$&5XT`ָko:2+56<`Y# L 0D~EXD Xux!3UfP#VAOUWJA -=#q6 zTGIyUdjW,?جMȲwuhhN.]o!.,%'`, ĥ$y&< ݇q3u6;(1UPZQ "D ;nPYH hYLdH e V`ʮaXf2]#0+Hk㐋q]l'͔ mll|VNv1o=l52 $EʦF #uP?WPyV%%'%5x'7%Nj$|_҂HeQڢ)Α;7rS\2d)hAӟ-Y.U).ThN]3?HiK$ .x̭qɐT)5=z,T~j qۃ#d~.`~] "o)>r3H#S{.Q-6)у#j;5Y~!N^CyE HvE\mee!1o :H5t~FBKDrv.L[9Fuff_zkta A6F&L^Od[fvԃ&n_j%~ቪ02 mⓛZ(I>r>&9N>K٨SI,%+'lhd H4za9,:Y1ådž&l5Q#Rrĺb ١vL !nyf]:vOթJZu_1z*;;(g:"@uX]Qdj$Y@am"!Kj`v,>}MGak>vCxTe83:7z՗>[} \*ĝv _Qà`!`bgSngQ.'X"Z>ڎhWPzQ|k$JJm1bt;ȿGA0wmỶ,%im U4J60PNQ} jX磻&nA&}4v;Ls )\Vv!C8Pd8K 7!ŵAF{lVPmk<a*,Mn ]Mװ.xWvTHe6b{YzцLO|@;MM)8DZu0U]hcf {cMが@k]o}ќ#()n b<G{-AĆlsA`YfPcq>kK~2w?#idݙ%TPT['& )n4"l~_bjG*#yGB_sOho:3|t8r$4W"Zc;EV5'K;(=ҟ ׼h=$3)c#! $)4k kINcIĦ0@~'g\"r`[Y5vsȢ@!sg'7])汏>(./Icνn7pAk5@"d)RCP _廃us=H)E'{ouY^C$1SZl5^tX#vn2eZ(|='4kYRE{8GnnYݻU|LvT;p$E!2QYo`).y\=SJꇯ( jOYVR\"u@/i!Kusy;+`9ȝ:~Q-'ŒQ@%a6T*0kˢIүTpj8' ,ܗ! \s|2B6,YP&^zR\K3+//O5'4!RW Ŗ]B{N:Ys?եX+fF- cB]h}|.BYoʓ}%_-6+'bE؝94<޲kgzꔲhJ'ke *2|BVߠӦW8MZLR]ޱ-VhQe @ 1}Qg'c Ks%`O7sn-j& ~k}J"@#Z$f k78qC2+//!xsfvReDU|JjDiC0O]W:zðrn/C^XsͱKb=[{S[ NQ6V-w 7]ӰkN% ; _+j>T_ٽ?$c q*#r X3\?6?"nY1ـ$eqʊ`͹rȹsUX`ײHn0|&VNqٺ+|F)7΁[FH]ud|1ʟI*~WPSCYsV; L'45`]l9+h3AS1d7p Z=p[6XhlqXտ =*-k$ l3_;swRi mD,BlpXkw/?ˊAHw[8S8bGs/dߢ#O|`u4_h1*!eY@ p`ul"N8UUkPWewoW%vEi}pP ?#w;ORN"EVZ&6ALk YPpz~bH%pT-l"XxJQ`uȇd6c&!&2c/ VC2 toFP]bɀfc`Я${3$!}"O~#zuw! )c&9m4 l 8ZmrR/4)g?g̐nXMU|tj ͉/<=)Y |:&0O)a1*` > ףܗ9SDW!ՙ% !4{ \*vř4X)c'Wwlt»sÛgu2E _ aqBkt:˷zSޑ0֋vkE .& dS[ U5/f(,v]^lVZ#;wLIu ) NFa7[LhOoy2P=? })7D0X~t;jDt~may;"" HқԾd &vH8/}s%]g(vǧPQ)P[bfgnH22sԋcxt7JʔjL^3y}]ظΒ봷-;. B{U5CҿL[JFu.o~HdԮoxgK` 5!?w$Gw#ExiE0~_<<xL"{ zpEa+Q($d68xO4}r.^ 0Q!_%Rbθ[8 QQҍOyOTPT?[bH,h"KJ)^He:4^WZD/(YUs.m6^Ɛ" F͹%w^J f9ED-K~qtAiɽ6;NC =vٽKWOkf7pȲ S #{^ocX&c$kKcMTwo⥺l9ٖ1z Oޠp.,2p2TL_*#â&nr%d~~"igǿmx}p5]py45OD,,etPQ~w] :AG|E58͓2[}=޸ ۿ1/.-DW,eJFP(xYp8hѓɄeЭ(sE攌x2 ǎ U2qMF_RD3~T*gV>W~h;z5HŹ¤7lqWDq8jy~f{n= ]u-~aXRA|=MyY>v5肬7wEv*ީR喓ZI\6}px ĜxJA ffīDs  rd!"ɻHL>!Uډ|a̲߅'bѮHDE=h-0{+:HGQڵ֢>) qK>sZ0Un;Oze&)A+Q`^;?60[@ӚiҨ MkEx1c7Un@o &;*S Zbv)պ)43K^.@Ǡc -#AcAƻ|xT_oȶfB0&VtsJ3ZP1;*g#3P\?4_D骽_E"LR#B,Xv|mnPuιXWv&x']FN:%H4R<*4 \-?g'rkNCv0JbMP+lKQzt0r`SAp7+ 9(u%*V`sȃfj_9N?$A)0̹Wg*bjğ2rZ KV -áܩzwa.[@ λ ܃yViE2QژӚ[ѽT^ XYmN2͛jlhzI[9a3vQ:þ 1H+ᐭrOծ_awEO)7|j*b˗bdҾ膤cAdy wPp@{Q<q" xy4o&9/ @#b,;&(٧fbix''&N%D{h4H73 xz츾z#n}>D^`7hOZ !w&l.g7:b^gT-1vO:uo@bAaCj4HK/ ?wX쯸Bu{20sYV"f}XfayhWGutG2ļQkf}y4A.:8]bȷg{>' `)rZu-.@I~J|:+\7nސ.<ϞGhYzDyh'iŪ&=3i]7h=e&/ݤ-??TԤʐ I4B3?5ZU5Y8^%qVu Ǭv҈vuU,×NJeb =8W*]g6ָZWa:VRKp MݤhD8ItLySNdS8Pf$fpsfT-8Ajs smg Q_5/U_& 7H3Xd8It5V@弱,W̑ް@tE; %F?,lzw{lR i%Iy̲N@P^"j#9K\J;_t&ѴzΩ,XFsYTSy aV`&Zg(1 =kmtneiP%t0 ׏rϕoF6)%A24 G66+X~uA+ȓǶ#珺",O2ziPZ<ú"UCbݔ{UEqKOaݎʽl{1 ,ʹ-~,iHX\)9_-YT7c'B:+հ+ka u>QqA\z qtGcs"JN,N}+|/~/ŨZ՜Y?'@q$.*6m7QQsřVsƵ9}f1o~+> ~I}>i %kGb_r\TYMhxY}FCXۆ/'I4L O[ڞ-^@uEml8WvtT=ٰ6+8BU%t(%3NU{|KHb S/.|8pqY w.w XƢ>&JԘ)WCvծ~+$#ŪK{9oVBn/E(`2DĠ;'{Y-6}Je];Sn.u iQHhĠh|rwKuޖLbj,d\}Y/{O-=g HQe7Vp[+y%EǼ/Ы$Vi9K-$7l<yDs=I _+AN3"urwh uC$VAC{畮_Q‹_C'IZt4[nƈbFyx?ΓIjI5l3i%IVm_]y˓I+ Q+ 'n>eT(_gVsx"8VaLz5/uKqfUlx :(si\ 5:&g5 Q&տTU?hudt1U]E^Tv5MgxSިJ-a)rmMƾI P,2'roiij{jif*@(F1nc`>@ZzYg%-]r[Oeѡ\itB> <2\ckov)v$YOjq8R0dn !u|8}[GzMo[Bfp{LI'kf-^ 3TÊ ć~X%7n["cCEQh$VIC/<zpzrwlcj@3D/@ 7*-(DIo7pxsH3oL @цPrxi, `S*m=Y?-]yPNa5 _ M85g?lѿGn$s8-i5z}dVkiI@n*[5DGDjBܛ؉Də iu)Wǯ*ed0lO-xP. -g!ktg/XE/^h*>$vE{x&鷫\] G::z UQl-4J l4/b ۝l`R2hSCсۧ\j\)z?'K" WzD~Q9"fה~}.:aѠ8Y3ě)%(upˈ9Tk116 xŷlJ^ ~)<\81aj[o.m@+)p_}י.u:$_s. [Y7&!/B<&4yw1w s2tǒܢF c$QlT`(é.=q6W5fqҫᱺ|~){b{l.2ZWŇ6_?_6l+YaYr7JRkۼSV4Wđ\*\[zQ(qᇦ7:W X4;{]25&B9&XË.:?GNFbf<|a+Cl&`!qYT*LD}!FifP˚5r}$@$>2$qS,"BMC'}caRwK5hBطr59b_}H3`b8|($֦w.sBIkǦ,Ґ: R19YX ;>JrAz.el̹Fe2UaQ%ɥƭ s]YiR;]P&/KDhXr$Р'#b_jm?dY\Vr\ҟ;d󬱷k&S_ &n߀-4hq oe+ɸGOۃLtrI I2NT(_bzŦw\DRڦ骢C5>yf_ۣ⌽π"ؤZ bK<1C5a"_w}ۅH(4Ï;EWY.% (iH "M; 7l|(c@ސEt֜ QBΓK'tl6`GVm]j L^mϏ>1a;xP+>X3g HZ[<Avù"W~ޮo|Kj\k 1b5dXtlvMI U%I1i~d~2PC;=BKX@k);PE<hRޭ^@wYiI\FcBuW7jKpYo!2B'+K)JZt!]Zˍ<(čoUX!i!ÿ>]7 e v׽iOp D6T.bYb_0ھ6|!V1-VqL*uwj:L1$buߟUc(o}Umy4 ۿg 8qmoKBuV423Ǐs&C38xP??3aB ޖVJ'6Z$5_A"4KT *L`+BW$: E+m"bZD 1H4Iq opMQobl[Xx }Da'B\rBkj?|-T`x ]4!M L4i K5`*KҎTjk47? o0=@Fm+"Ilc?p?{TTZQSi"n{ 5͍T3cv0QmJCkUR bQ|<΂C^>vB%xTBP{vm .~y 2{*Lhaۄ` &["efL|2[KKe?UY1 k3P!BcE-]>6tbc90m4Y|#cl?W ] >m>8=g:? &#_9.wԁaA4Y M;oO4q8L&)iD%:H*# Vy,RlOYś-q3 PǰMQ,hI-EA|"n8-f:qv$HTgp䩂;"d5I>q rS2C/zڗ3[`ZsNqfƞ~$EBoy UR)jU7R õ!5;fV_`O٧pm6/C[8`|+dp GlO)-gV1AL)%f 6x\ʣFP$K b&޶^1=pN"5%wa {Q.װ2,xuH}-.8X4k,HOe\K12+bq4).b'=1HSm3s޴!G= ,76+ k1s܋(gJ4l`Ş Тu:]j߫/M !i +!}bd265iLGYw_0 PcK}P+uPexonv /ip5y;b0"$ - uS[/PV`w/..Grmis?KJo & F7sM$A c r SM[: k%OHlfbGqre^g ԊTm\Eɚ x4Xa,av)QNd_܃ > pΛXm5Y;oSrV3NpO(w 02-#|Sd@ztHMBoM$*VpRohɳr]VBOv$/CQ,Pl Rje6@d}k{23Y[oi^ޱ$͡rÄT@!q!JWӱ^)BJ1n+alwF-^0B&cp!"^^=\xܛ#_wdGf(ʶzWD=e^ ^c{5 U5̺"p(m2Y  lD/`oM[=,մn]jB! flٝſ~sA ãwĕmy-~9ⱪ!㵬6EԾȲSBXs>Ij}CJ"/r2;oUCh&wҦ4߂ +E)Q%'zխTcИO\'t 7]=A| Un;L:)\I<ݫIc0X2ّ7 O ˶ȣU]T93lcqhɓO-SAlPA ͔-:yv2K!E9i]\ U j_G ye&%|>/[素$B',#a\ T*T3nj3=ydVozv?p|8d;~YAa')Grz~# B4GHlWbiHFcXQD+POksu/aNSD)ipueΘn *A /EQJSo3N}8؀sψ5,@}>њj}^zo/SQ"6$YPUoqaD%A\q KkGsჍ%4Ss A8\R+m-c"wNpBr^g?b.&NW\e@Fh;c|TpE4ڣi{&(ž-#d$t;? 'Q8X2:{!@~HϜi:EjZ 8r _Q?!:ĖpI.zY݌7DeS7RI {_Vc6"'v;gkhfsb 8jFBvǖ LܝlErGF2"opd*d: #%SR ~Ȉಾ7JcaJ), ~ jW(tid8<{WҩkU-P9OK_ 4-ݗ?G `0.h@K-*3*G,'MGSd^@?=\3r5UʅFU 5md= +:c`ńuʓùYMLbK6_`qU?*\ԌSr|ȹ(@ߟEP+ QMk||hw£¾SFct KU&,d b hz25 A0@\})GՍJ/q{(*ڙqUcG:j@d*?Ke"n/eZ9_b6G'5RXv/fAfh߻^*"!:ŝD.#1ޛpW=#Lg:nCP[+oaŊ!3WO SZ:++9:4*2(#7^| ޲ƛ&638輛0}W*gF(N11c^@~RQ`PUm&R7G7 44u8OXNH ;8ZkJi6\g #'NϬSSQRP†mu /hpIj`DH;S( 2=xo(f*-Dy[֣bFɏ:`/ǩ)%|{:&_ux3ȱ"~ GyԿjF<~Z* NHBu@*LnD[\0EYt|>El<_h>ݏ3Yc-,Uۈ.?"ԅKvP/b {ښh|mM/dMT},BC,/5 ԚsE O\6?,7cof>|w(u 4q/ zM@J-E"wE65 c1 gJ:`.us]5ܚgdqA4!Fo96oZiMA~E7]G+`#0\\ խ9u #a3k5W-ꠝ1bZB1qt+y;nӏ7)zO'U$Půcpm.өo_(_1Ȱ< $ZOP~1ڄ9B:"n;xrDA̶瘛y,0̉+,x\q^V۽$Jċ\3TbCW? $AIsAOƥR?n{ HW*U>E|ﭮnZo^4ɥSFu7P]h#eő\P ўoQ^>Q%(0Z2>Ô&8@kOʃ? (dx@ C@O3`h;jƜ'lGһ۵ձiW ,|iUsR)ANpcyCr]B 26 g9@FYy՗ N\4m> paoF|ɘⷔg_اTҩ/wIw!+91:RIPr5ܳsAh܅+e*G-y0 6I]NY tETrsrb]j5 9Sj{-oLEq DI1C9[X=[$G%ς`s\vg {ysmd੊J ۍ=wT9l1mKyC-̩DsXI+HyC|/\-WHB׫<zhe.:$oGuBitsI`RȒ!+Nrs\]u̟.3JAQև|մg1YY$S J q2}YzqtRϰ~v"mbr\d*KMrtDcWGPagW O[I⢂p\5TF~G|(m~[18 @YWh DzT7h0.JvWRJß?3"GeCijo7Acks{+7X4;H?no&DfG0֐/Q| )XHqS8t #; !3ˬr2O'w@u(3=rD a)H!5V\0a@G |AW~T{,ɭG6vC5;t3S(DUI *ёm<)NVa1; n|{lE~MwU97y gtX{l)OORqS#vh>8Pִt Q˭qsص|IlڅpGR4^" dYMD# &W蔶BegF(݉aFIۢ(.u&-*\|լ]%8YvKN(T~k^zTfB\^09XGH'}v~UMz`݂?+fߐ @vv$cHtf|m{FaBmhaIsVageYP(tIG7&*pt[K|L=C粴6}(FEf8՝gؽ P,I*.DOXeA}ߗ?{+0Uleb\q?#;;*P&"R~樘vKt~ET[]xR>,s!Tpط(vdLV/DL6>2p%υe16 ސÞeT\s9gYBJҳy2?9*F4Jz i?KlѼho6W3T=8`k:qg'99-2Q07U@8;ҵ:0ٯDU\)x2noc|mąj8^ZF<-E#6zvj1ƐYS<־Vcl-]nLөϝs&MlfO'm]dNuOmj)HW%[HՎ侀cL4^1Q/cTdq{9#:>{Xݣط!{a.Dipƥ5BL~8ۖ`!'ra_[򼍝/>XQvB9ad9flGp+_V4[n)tB3^7<*r1̸5H[v薞#bL8`:>-}YJmDfɌS(lmr];4M"˚6dEе翝X<17M;~/Tй7S/-n(-"{n =ʥNdK\BMlL'[I"CAo[N\ yA@tm[t$Nla;AL}5ȋ`A_f2ꆮ<;E!G+|,6R@S2Vr:E !:cf3z.cng# xb[ww`,=ܾDF)#.J2hٔ] BN\\Jc -l98!IJó 4/+D㇔$44e w7H7/EY8+iU`d?K>PYŷ۰VԐse;|&E|4NoJ\P-t4yl?j*KԖkƨ G1=AZ&ſ$EVz -cSvكge~o4Fo;lglMH43 7<;rGL$5IGUB[&+k5%u.,M?@iM;@gB"ɑXO ,`Dnتp!> )1 _зƽws_~k{"*2ф(UO=a\!;ފ e6"D=B؛͍ 1 YdZhNS/@cޣ1 ^ao龡'ӐfJ#.nDE8:r|ky(QC:@/@O:ve:4Zԯs=Fzy6 mK.BG@`J)?Py&8fRS,x]B<*a6Z(''VPb&3U%`OQ *欠 x o>WڅGuoTKa_O[8ܴqFF''_Ǫh&ռbe:7: !.iK8~+[^cr-%.ռPobB_-4\7ų6^ bxqyp+q"(d}!mi/`F?יf7Gj\ &.|B‘KU d!&S<˓wEj Qщ5 ,g\Ā*{߇>[ߤw| lR<6 ,9#`6\z '9ꐾcWg “cJTU^}*Lo rh: 9W7@=N گ.,evJ2O炆ZCWEٮMj46?f1p4i}X v(\-'K5c_f%Fli7Wf/ݒU^nD ϸkT{GgEo(=aUs7w3x^2Zt=ՠ2# m1B.v5Wʫ%\a$K*>kR_@.: 37ZKDజ-LO=8 K;OL6$g9>Ԝr.(q%ǩߌR9͞1fFk[5rPDrAo,e3hPw~۸*QI0?Ãmn(uvCZ۞|$4sT}q?$24&T0؍Jx[Lg h2uD3?nK<6$<ے%2tm<$}Q6UR{\Uᅈ9HX`oP>(hpr7;ڰp¤:W +&W`@ 3ouVagC$h +gm?؊_==G-FC+q&iqV $ܬ1VriQB:JP G %sk܁GGA$A5OzӠأrGKL݅о:>V!Rኁ$3}ߥ˒!298ŗl8OPvBT4wQgEѩZ 6{w|O{1}UM˧vB#Ć*%S)舰>о'^:%bBԪ!J j)up͋RORHejVhB>Ϊ]JJH2)Vg\t^V&Jɛ1}lۊWK+"%B\vDPEb0خeIBq4U5yr+ }ozʱڧERIq(5b-`[u#pݲ =bʳSNWd.Rr!+6 7|oBe&RΞnmeȚL?H+P)* >184w盉9]Ad}1fwIɘȘ\c}E/Ii|26AXպAfD ؐ K%yP*ց]݃ Uգ{sFCV,S]OR䥬+ΟEҰbwK:OJ.ʚ1~տ$"X/=_bVvD*.YNP'_pgK_1N-)6c1tWfEŴ,[y&VUO2HE wuQP&hձmF#nb5Gkv53OL 1.U f +q&f\UdGhv~ ɺ ^ٕ-S0y,ܐĘƈ|(“m'x*8qif–כSB W&e;.$dnP^?g.(c7L-GVY,⢥>797Af1d?B; K W:ـ+YNc˽9o4'Ͳ"sz)Jtn}Gᒓ>\ZB1m r IpnV-ܦ,.v 2.0"mJE[c}!ya=۠\J"daJ?4|-& ;#n!Z?"7pj+x]af\h_1xk/FPbbYg7 "&fJ!*CIqd'6^'^3lI YՠNKuJ\^ v1|-OP.mcqFiD'cFJ}AAx!̡-B/)%EF`9cNY3l"+*E,D4=$ I:,>gX5_cuΖ5ËC$"h L9+󣦣4?J D E#w-KϘ&ۗXIr7G/(Uz8ݵ^křk 3Z[@I~Yt3]\%K 8C h߳1v} &&q*g7f:l\ zFA=DҕlGe* ӔmKնHMJA@v~+ n62 qrn;ˏ0D/# Nv^ Z/զBvIn#gyȳ +?J(JdU1Hn"xf1'\ +q4"bń)&ղĭ IvNy^U6Z>FЙ%_$W!%^Ogʅy ܘ)Ƴ3CG=wR%̽A6C^[."6 ԑsHlQǟ7#94JzJ:YLzpFᦪ۟0|{0xѫ!!(#QH9hJm#ƉB.eyӀ-!Q?r-hksh ㆿ5Snl !aSo|.F?HG9Dޟ[Ѻ 2 N]V䩎v\A_ݶ.SUǧҞ8d;?XPD)p.$sZחtk\ϊ2qXQsհ.?udeX=FV`#s"aҎ\͌b"?B?l]3~7m;" f+z0SY)E(L,۪EG7,3|ϐd!̜p="b;#\YXwk5:8GcPT/-po|#gtxZ"Xye>&/5$.Ǚ(2[i!G_ށ*EVqL~3R4>/ 8'7Qq]3s:0s˜(R>?+^y UJ]׎w3dϔbЛOMtXkp慗H#h:nM'^)8ijcc YhA#WKJ듀*}8^~ wSyF;1MWy`|Q8Rx% "ӗ?,XRj}^8$5V¨Wu8듶3^pOţy*7Aw G^!Vޱ,"`&eh [mđAΔoG ?>ܮn{e|+b)!5KN=l=MfRF,:+Z6kբMXFZᆁfDeCA d猙x&&A25$I~u56e ؓ/܈2Y>[K5^J.|k,֌<+.LV5/y+φ6Y&/Ԃ4m`/j",8\U4=چg)TwKC7I#vmjnE}U^Pc~=u{?? @믂.W$L|c9 i?t\;Yf)Sl::%UTvΉ(6Ҕ/1w K GVȅy%'?`=!];Wf.i6:ADkKaԺzl`4D@CM{.цK_^[SmA[tK~k5m*Vb)TM@Ţ|<~,rUbqA(Jd:BT"7aBeSD[@hyABIj.Ma0ebbc κ.&euD:6iPs_ҖxFt*_13md⣆z@c󰬈*ުۧk#v v0"kO荛dAu|MyObYSi䝒tT ӵ\ ,y;,y ΍8o΋y':a+z B4F:o ɗr%'_+f "HL|LKV|l8 cɅqڤ"bkJry ~t/:B'[7bCJ.l/7IJn%N}c敛%*Zf_;4n݅5CKix=%/Gæ HcSvZw/il nKO%B !-T"Aa{wwORϢrPSuV,RN?* B0`1H4oFi;c ' gP] Fm@ޠ4GݹG7i ˃]⨏O. gQ%lsnTu*hT.{du|s3=ҠF?CE ԍ!Xn4ZN5 Q?@jn*v֌{o e0yYK)#AC_Vjhn_yzۚL wT"6097#..SrMJ09s[LJeHe9g {r2ې4Sv^Z3 lzjV`„GGDzfi[# ~HPfҌ9(Y~Tgs[B)#/cd}5a2 ?H>Bt?K8 >+N6u"X4ؿ-mѓ,79IC-UVmM"O Pׯ+QF7p5CMʮe2Ӝʲ610?i))l]k8[MC?gM)^Bzԉ3IU׏&1R2 s & iCi$ŗ[w& рSbVH V|**&@UꇭUue+y<{?gqo[&´k5L,WN 5#cVG[Z<)Ã#+>C,0Ȑ*~Uq,u뤽)0b0oW资G',^ ҸZR{]Ĭ B>R7([dS<]/SoM36y MY)B]mvU x*1XWI*y/T7Pr(Fb ?>ק5R$">f=IRerђie :o0`}X2nKv5#jڂܜ0\x1׉"Sa23|&9''$8"wiLu 9U2{+>5)Hb@/K,[^ty˔7-~_cgfbVBuэ>+CI~J٩~"{J932$$2Nrj:rH? wJIiI߻jR׵;56cĞ_ⱛnI"Yceiyo"4^&hcz,hLzlNSOSWb܋0|7vl5~Cqهۑ|F%,“H7رR-|q4WpjYev @yY~y{ ID&USme)8eD> ?WtO ֳnmQPekt`"Uy{#h |ẂdfV b2>6BPC1q#W$XoKz$'ncfS&/ܿ\!+rx1X;Ee(޴C:ϭ<-b߉ aA_XP}U.Mx'XYV1CVJ6ρ͎bqAV;H}a'|]^MTLk"_}X#Bp`;4\h,bkOA , ,]]`n 1Ss d9pIrZ%CZQ2[Δ,zx6 8zN-e9حv%߯4> K^u_mUϞ$ZP"C9qH43anUd!_i(HO$VLX }Hr: kTW÷V<ҩ_YXP>B*wKTf+e47aԶlP/9ﳟE|:kIwJTGk{.ڲi׳lWK Fu)nxL=qB"Kp໹DE#O|qL  Ԍb4]]kXb5D{dc+ B* 9cYR[v{@bZUNi8P;׉4\η%~Ԯ[,IA  cBY8.RF1bR46Øoux+EܻFrY}NS7=3|l=VGפz@`T pIO+aP~YwFue|C5S}b, s҅gdPz.9g2mp3م>a:0(UR_Bgƽ\7E#lcRG6wX@JI]"{`?'\h诞α̇ZUU]XĒ(7Py.[/6 cyZZ2AJk<$m0~Mpk\k: Г\7plW+4]ì;MnZD%lHi>fdRk"$`qXik#4&1q Oh& C̑};sZWǢԥC9V9{D/I"9TYOMhru6׊.5a '9g9xN9)an*w:;h"Л6 68w}Ҳxʵ\Dk_ v`5dE6*J:pK9C`7Oj";{w>rs)f۰~a8„im\tHkSP|956cjV+3ߩVS( *0c!뜕=iӔYnh1?ʯPudp=tK?3FԚW*5;'^XX Cq(DYB,ϵ48RFga?q|.&-ڝĜUeCݏ >-͊bW^yfb9׃w]"jk&MT1g(R*:֑ n`EMxŎSAP|u&'GHr[USp$n::AI{(& ﹌>ڜ_-S>ƬfV[bdy3D6H2LQq̪-Frz6=dx"|AFE:ZSiy\5\QUTEQ#'k93C, EUEzcrUǗōO̷X$w( q83Ǔtj'G QS,F1Ƙs{GX~%\L !?(gZ $bc%imMvHGTvjaЀ1k}̍'C$NMVxZo=4‰|˅P"BUbb/ &CB꾟_u81xyA]ޑ̈́(~;+<7o^֟4%<ŵ.`%MQj?cKzv gN6G@a%"P'-{}IkQt'E4is֌I'/ Xu ȒLȤJ0_vNlr2lm$J[: 0,MS'ŭ,GO<0pP8Ȥ6(^|}!/cTvFh`et?`<#yTM +a2NҤX2Ac )_ܸN#=*S;PtUؽcMV2+4odjOI}V9K)Ftma r, k`QdkZ(@WmVlW/8's<{)K xY2i%P+|(+܁P( ke}=`MO@ BlP~L@ dLy\/<|KLU=CN8X A9L!hK{o!ќ܈6󲣵[QIVe|isp_N@jÐ $Feb\KR[8KoȺ\F\aW\ s`r=cK@F`RsfM%R,AXb}bP )&<6Im8y;'2q6 "Lt-9G5}[Al9%Xjz=|}.j8yCKoaSh*8D~X^wgj&d+ `yaސFqT06j/Krk}NZ%7naD?mSK˵l{.HmorK\~A)̦/`9Grhx܅േ)xI@qLPӂ=F%鉥w:{3Vn; kM$gokYe8:r6=i.A7 9J0 roq/d%ݻZ|!o-=Mm`.2Ty@;S2 t} 25QWM %Wŧ! 4AMڥĢ&՚@4 "S1i6a/HJɀ-_A1T(y.ginSkdG-s^4c@륄+Gү63{Fhz eE ӞrPITDN|okCSOE ps Hr-Բ czbDٖ$KtkxB 1<=k9̟GzQq_]1_7if:+B{͈2/dkz p'Fzf3\ eNIryCdZ6lbY]<3q>Pzs5X;Зu4TpID_LE3݂7wE~Cmx4LsN4HH| VvLm9ۇz HiFXt(ݴ?W2Ufy GS;= ebuXw6hLSm;vȡmݎ?$Yj>_uVܤv|W#P_J%҅ D:1gvAۂi}gH gENeSu.J?*R9b_ h= -v4\(Q`];n#5yw@ >m:MV%}D4BbF$qǗvu8?(_WCBCV^j\VT_FE(f#$:Si`ȗ%0cMVmY47fIO!~4$sivh򲆭yI?zQFkN$t;$JW|,N%ޡud@ryei-brjn, ")ob|۱l1[>}")>uQ=*zJb|!PZDJ X%.ie9֍iq('Xv3'7J[%KH#,js4w+0̙׺T7DmpU5F[iS22k=^}Lf3r~WptԴIN\S S۲/4-´2[~Rpьѭ`0KB/Z U@H,[BPz [JRgCr>1  6hgܪvBb۟9Xs8C~ ?崢v{ŢNu3dl y,_y6ӳݎb_Y'F7n,a*R>ndPȉgelJVhW~q/#\Gi\N\ZPP}ٌVdw+t5{5q|O018$3 _ߏ6m}g:G1'CtG)ae=j⢋-'ͼin%JAU貔nr v3*(ԎeBT[L ?Rk_@: ,KF{O>߲E@WAN=mzNw+qk(u%py@@?ōmp$KZp7fXv|v(AYqsN?$ʟ*.m;[2vG(%@􈿨l6L '7:u7e.+|=giM/+a)Bk&C9KݩR+x䛰 {Nxr6^,m_r!Odw9nR4fCR `:'c69㥅,f#=؇>'$5ê)=%|QMi^PGk1)2EIu MLWvC[;G~1HIH[KX\p2(7BCdg>͸8jas"66$7OqgԪM?8+Wb>i*?eiU " V>$0s8(hN@W)ic] ܟ(E.A",jgJ-Đ!XI0* YBRSSg 1Ӥzog{"CvKm<5n]rI!'TM&%ʦ'k蕈c6pΑ u 9ޚvV` HP&']soXH1[) y\i"3 *S7RLI/jD͵Z<}#c>q[yk<̀FDmDh2uad PgʹsBJ.k:kR7"HR5zȪs֖}qw_-0ozO:<9VW*=!` ^ 9[J.BLD~D_A+ _ ø#NgM :1<$j)u88!a EhЄk +Es^ZzXN l@ŶI]upy [ɃH@R~p3gX.Hf,w%\2n $d"Yt#SKغ/Im51ğbc3)cF-/${2~NDNK\WP&$L&_AE1s%ỀFt? `K\Z,5՞97Նugp9,YVjoiTFIRTJo_h'd]ptȠJP66lHS(%# =6it8~^ gcSJsUG_b1C0j9uAB:afh)|1β*HDVcAm-Yܬߜᎌ.ƚHץ=rŗAK\1S*C\6sVAh{zG5m!Yi~ ћzzh]4%4tjbL# vC]D{ YR(`) yCq8V)8ɾ/Nsw8u1o]Л8OjkwBi֫v6mANۑ#`UDW+^* CYΉ\kJqΒ=ĥT?ʞ5d;\h}s$^^+/]iߨ"nPZ3KS)#$D(Qu+Z@4էԉ**Dkd2pn x~}ϒ5#LcGUDXVm>>-7ݞfЉ#~@nwrx]#"7G!JD44P ͇ ċj?Qj "9&,PRWΗfH{ٱ6Bs?5ʭH%%t`)6Zo pqmY=74no_a" fLJ -KZrȨo_+X#4+P!B=[Kg"A9)f3f&rfgn*]BӸ]uuViYL')Śs*2pD΁4W ;3uHKYd +~9gvX 2^n*&@B2[TO \G@j^EPv(S*@S|z 4&- %i|8Xa,b_p`Qh8x0ߞo|+bIU8nMʴh2.7A~l2Z˰sJ7@&aË[6 6 7@ˑ  QM%-8OQBJwUhe~|郯 t(d]nRvTb0v)_6g6gՃhfA˒}6E60P. )兪}NM.}Gk0HbFVլ>+v:jɰ:)I5k 0B*ډ2Ta'W1=ֲ?nb߀^ZL4cg +^ ஸGJU0b#s|NSq6"Y2!M<坽#^`لHUXC7欝=ikN^<>;&0bqx!]>q8;zHe"ba`6TŔZ# ׂ<aϬ~ۮb?Hd{,8W![N4QIzlő|y4EZR %nG,w곒LS3`∅?m8}eƆcApV'{&xRAPp" &74d#ulA5F.c:긩G!.ǽf2B[]Xsv~ 4K廫Bcb@Z([)xsf]<(7[Y0m p=Ύx@eaM'sqivrq0gK%¾SE= (f:: a!o,"\p\qQ>ג ZQ~WnBY@~sxO`ޡMfh yơ%)jf/DIVƁJ?Bqlʼ[/m7H9M1BK 1 i{>ڛzВDδ[±g}UL:zHLoøS,Y8l/Z{% _@ ::F8i].[S{>SIa*dR1Re ` )HQ9@!݁mg^] ;!dSlKkX==Tý-C,wJDA l "X5EfqHL {u*1&dBWy'éTpxRC=[F%>f="̢8l6/VɣȢ:uѕt33lq IH"΢ł.tN^rkG2E 6^PFQNH+VS}̚o]_4^|}Fv~-nV[O+Q^GsS͈E+OδtoU$9 i`5Yl0Bj=wSKBsv ,z5!o7@:2N 2^xsn'PK1?C]|n952dS2HepSƄs! "{Gv$ϞךζSXlH]K.lC[$+Lg L<7?PKn6J ^K:#i7ݕhS ;}@5SCҾr l<"~6'}N5J,ⓛɃyJzZb`|KciXn,<Ƥ>j@YTp{\0BЕ:z"jxth,,w@_DﷇH"\oYξÜ8P񢛨vm Oh;Iz]kQJ$H!~t@@K ztנ& !̣Өy <6hG+N(;6眓dAt 𔨜F ~uwpOx*ӊc?q~5;M41M:pU!:to'{V"*xordW k>qPk(4˵mѠ`0yӅʚY* jO4K`Ecl~mi6QPuiZ~ EMmX@rCU謄qmEk/ܻg !S0Q(o 5gPnVOSiϒ.mJc9ӀPCdhk>SAhKtx4#ͱ}J /+#*^ȁ:7T/ϜxHKO@{^QJm)qbb$e(i{'XE z;FO_"_8F2@ V m \ ɡIM;S܄2 F3F]zJ@b㶛?f&i@S j,`[I2ঈ4%nWjҚݎ:5i 9aGXL؞2qIOm| v1ndL(0͘=CeV0C:BzEAҧ"%j>~va BeӲ$g\U3`@Q"Z%Q{ncP0&۽%} w: ᛩ (~-[ o4;# 2#9=Ax.e{b<{ޒ#rЁuzx./XBFCZ$xRZ8kβG?L"]p:Ti'pv5Qw pqe .C r @d=3kreۀ;d$I' z[.jwWʽRC8'ow2b|+e +eG9zmX;qA(d8KĜ4{n]#pǫj}!B)(lYz#QQՙ.mi x$ #GǑYoUX=',fgTS,Hi^h7z·sz;pT#ow&TSBxV2}׶%[z&4 #fq1x*]wCͼ?Zts@9#`V>gC`KA!4&ݟ'`Jމ@u~& ԉ?8eJΥf7PeO<,:d|K Ob 2 ԻQpXIFF%Ygn)>`oGpWe~ݨ#Q@bt:x2~ 2?z+_OhGT={fIjZU0D0wiI&uPwlJhܺ`- K B$16";Yr;|,m4%ep ,`DMP9:Ά5&dv'vspfE++$Q6L A@c^2fEk'3⿈9n)RX]=8DV~(o煘1߬``J]fT"t4 W/_UBQ9l֓sPO0kӕL8Fք0FP*Tj 0 rQ+w7C#Z//o+qXvV| a+%9KK־[*|mzmhHI<[z7A֒]ݩFv!mKjua D[̮ !+k2t=MK'KR0 ~I6\YϋQ[IѕWjRv/v{O,YG~t/Y!"oϪ{"WwZ< lLX;Ԣoh'Z_;'n¶oPGXgAm4b\uӚ2= &Z5% u[fGC76#%zv1}*-p%uX%Ob!TWf|PIq0z,uґȆԚwkB\10~GxT^u"d^,|dF&VEP)$+=+gE [L~jjp]-RNJ Sy*Ɉ,Pm; b5Ysv֤" ; g>0>Yc/2zEjJ"tש,Z0I{6~jƷ[MݣFGbn/DaGbȎeO|bNo%6@E<Ix> ?av!V^q.VD %Wmgek/K9Ÿ82s4 ³"̛0FoEm^86f)> ){At7c;#m%y[04W=cuUFO;ObSGw:dkov3UqȬ)GhѶ>[:Ɯvcv:+/c r5ׯȤz>%ouҕ,.}lW/+Px.,Ʀaj!Z`Pư#Ue&G˛*3ŕ{K4{ Bava(9㰟!d? RNA.S6l,Epi@k ) M@Fn*N% hUe4ܐ;LӁp -ȃ.VUQ tN2h:$`OST&uPT9b{|IBD|{m$,kI(=D :o`]\ #*2&%uuUߚ 6/[ibGѪKJN-1m&T#mu6=ۈ+D.d"̆D]~*b\!SƯgҶIA zG9 YּF_IJ/lK$"˛X;;LҶ`W}R2, GBX9y4h!a-nBDQi2l p$z"{B[k@,G zX+ܴ!,Fǻ<_@ޓHNړhPr_QAGb̢3SnF쯾!li_:3xL8dWy hgրFrI{{#3zUP*f!phB> @7g)6o_ #h*O9P,ʹw7d$A{c` 2`k92/ˎuQ _wNjۇ&.TK [:!_fWe؇H%g4զƒ֓ÐΑX!)寷;,Bʊaڟ?H[VXJp)w>07qXI.:7 h/'pſZ:`m0#BmCjq BVj'>A.U*M3Kf1եp #E@bD.Rɠ㤐8=TcΚar'fvYUygg1,A't$`Lw ?jTXѻܷJgxv|md ѶuL5 'i__JjcEq@)hiۊhZ.;tR|DЌ{ӛ#K'Sz7Tv&V@Em:V{wSA{A#{2sBw71C@djMa咅|p$[ lԮTk?~T5/)L?7̟e.nN$LY3_Yv 5u*g΂Qǔ^ .@f'iu%uQ'1.>*W%(ƅ}/i^ "yV'FT5*=p;pO첸}&!ڠ7I.;&p>; PUGxO+ a'1a픾@ W u4Ywv88pX(ClO!o_t:ʋΑ;ҒYpqݽ|'@؎MEJOZzwtOU>lC]A"3Pjܮ߯Ф9Qx)%_\W]aH.2 Qochڶj=I l*Va}Dy#seP>yYog |A?mk(eaRzFW6a$.U8ެ8*pC: ‹K nbHns G`B-_Ť=Bz 9V94՟Q. 輛 SNh2G(h%[_&)?J.ࠢ?"Fpuja,:4YLPxB0\ ;3X9i.c ^c&4"[Rz B(hG4R;Zc:|Mo`})2Y>s A`nQPPpÇ8̾c b:~D/jZrYA/z :R t<۵4$>?hȿEfѠpu'ޞ5-H{\zy.͢siY)R%_9Q+w{6?h|"I`E^@ݹN%>;ڿY=ЁZ1%e8Pts~Bܞo+[&\f.IM`A<o?bF@_]Eg˱'ޟn ZQџ\IWLPzku͸y^aWɱ2yAJm=Ftاa#gӃnmA7o<:.L[$-ytH(TwzE PEt(v22KX$4=yH@Q[[a 8Z51͢ -։| 4nBu+>AQȼlmI 1~ ,D'{xϳߢ]K냗#SLhלpE5>_>25Hta]+KE.=Q>xrddH4@uFB1=fԳYUzs}ywzJd V]|,6@*6ՔME}?fH^#8oF֖K$`Jځj!%i =WD%?(Rb\D GbjEM|lx,}ʻUPZPyW"_*>q|8X\3W'/#af.2Lir!ZT,1;V8+D+Ai^ʦbx0^{3!Ӏ:tV,rM_χaoX<M}c_-.J,t;/s/C LM*fONb@ubMz穠MkQK~t Y u/lcP~hJ C)نsVvժz?'Re9P|Ҷɫ ɖJۡq ;)B bJN#5%6#z[Bްg,>6Ú+t -@tl0l;SOxg c<9=9d\sQJR}7bXSn Նs[i&?4*b{"pqy/ f a~GL#&uC)Tuhљ;"+#J-~)r0^%R;7?ztaI'hjNaDlŻ%4`a6O3# gǪ65?%pB/nDO'vХ]8g8iϹZ%C{8ԃ6xWgūσ, e1x\ dI\ ٛQkP+0F(Ȟ'u%) r@ D(!G-@wIrY^F PB́CH0rBIʐ ܡrT8jqU@t)s0jJ7=ڽRط>\NY3ume5Iz\ǓeQ{'n#oE3E~.e{LϢ]q yj  T#xh1afP۬ګiswĮÆ[v/"ݜzgmMUNBo\輸Go;7?4ݛ] 6Z~ [%@T4nE:爨Q#D?"=Vp ̓S[$r {ROvsP*/I7h~ Z]EWxYz"Ρ؇%)wN\)U ybpI5aNy+#n#+8ܨ6ZR"qwVWM{]Dkݠ#7atQhc> xw</__29,C= sbo`6p>% Iqt %<4ezC* ЉkF4(V=vPˆ(UO[8lA+]C.z]^Kn'ٹ5lе>O2#:d$B " rcEAw ~f(yun2*J}s>tW% Cw'^2i%?Z4fqR\JeoeZ}Vc$'-LXfPʒIX-ֺ `)n3 5y&]?^殞kai#{!Ӯq*28]nXv~ozG.v 8(s (oZl6M@;u=2\Mzn$!靾yrxa`|BynJNn䰪ch|yMt:+ۈANP.k0|gvvhg*{\qh![JH'F!qyUh{:6y^G{s.uS࣮\fzxm$w@ j`A߫%WAM\G65>a6`A^$/69{oSQc8Ձ쿚3&#VL3DHWb%O԰YW $a:<N@KL$F=˗d wS' f3sDpEU^2.XYVL4;cUF޺?o1xx΅đ<]kii7SP#E[mAd"Dxvw-`sqY)#s UQ2cbt!E5aH!3v,E`⚚klu75DE>Fk%|8L*|VlꇑLx gP.J&:m8xF[=\>*<̡z$ҋy)raXh>"MDkh!Qv~pW#idfc\. 25!R1# ո!X)CN{AG=y5Iq:]/e0Cu08L1@t)(T1Β }Tpe}ĝvO}sL~-Bf;Ԥ,hq]Ao`O{ĝ{[<" aw%XMl{yIbr@; _7^G Hs $?MC(11H}]m-ĜZeWXH*)|b͏oMv!?>S**mM_4X/~} 8f;mw.Ic!bm֬V))S%`"k;3341^NQ ηKGDn 8 Q_3 X'Z(Oszݱ4j|B1{JN+ <\sx[8iDhoF?{\UTqQ2,6AE>^\k R6) +dt +å|~Y{ISX4Dīzز7&=d0r\1+vOMk i=v5ǜfwV9tĐx^7OjpjMm㯋Y: 0D ']U zbo@1ߖоarWd}d/}߁ ZL&.f |ܵD |V=X{Y# %3:L W~̜9IşyTq\ßhȒUaHWA ^ڪGL|+[Թ;"˺6|P=u5.`q9kϾkAxKQ/UFwa/#IGYk,@E33P9J7ا0xZB ^z-9v.u[ &tvŐ o߸v7J2XQ[Y[LBQ,ɗ9ԥ%*\Ho" ]K"/[ō%$e+*YO[#b1^e%YO nѺsYewtMeSC^V{]Um$ 2ab)a3r:pY0jQg%ݙ#,8e&qq_i*w!䃀;o7PۆAϒ5ynn(}X} r0t9*{]مui~n\30|I' PE)F\uMtZ6%J՚Snk.wC8cH~QaG,S3%`H8[:FU\3)^ujE}_VV[չHt0 %'S @>dOu`H:9XN\ 틯ل[4mNf;V}hGIl4 [ܳVkg:IhBxz@ uN8ϧ{q*df&ۢStY!/ lk%BHڬ' ~y]BEޛSPùEP)i=7~r'GumE *V1H-ɢΣAr.2qNӍncTQ=|Լq :` i{jkG20/q-*ߵ{3',-S_-#PD*D iRIo-;-YQ -q?>]$zt\!]*@W ;}L+Pp̟Y;uvi(lkg|:jN86@8FS5WM&5JO a=Ő6LF=HB-}5ȹTwGfgO%z/bv}\#.߅ƿ(\zX#z [qH:o?r6.%/qD3H*RX:#hj@qO0S {t 3DD,zg8F"xA,6Pr/( 엟JKθڑu&P)d|_J+T {yY'dϰC1EAqu3 \3Ni{owUbc"kvtpKu~ [da+;Ŷ:Є˄xcL K 9R @}©bs4 UծA/F y<.e"ҫsnv5.FFc_(28~5L2*~ w;H 蒥`mh챟x<wf RN2hU O~!ٔ!A I@__zf<PUY`wܜeuam(ڦ+q>`t,o|UA ԐNDG.nh<-JuL;)[u v/ 9S*r٧@l9,@'<0qzBP=sN_Tp$T ؅i[嚖< ͛υGÔ"{.D!yCINn0*|`ζsl$\-$$s$3`k]o`*(Pc}\WXwMo㹽))P?R1" ޷? \+U53)|^;?-Lm RbH'%YMaTB Gx5imm%N >@x uϽ@5Bv޹H%AI^^.Rs쎏`}*';j9966e/1ͩSC[̄DzFp]ϛދcbFnyfgXPMl-p0D8 p_ɤ~/:[~ D.VK QDŽ? ݶTsNaP_1PG?~Ekkh&r2Fw8 SљC6cKMvz @(i×58$#YjQrMJ}ήY3]hkf+qa< fV@LXhz}` JaARe.} c)t-?JeCI-$|Cg8_2?ZӭS~Z Q ɖΚxe~r O$uLLJ8gq6L8&.^Ekl %rj ׂgELpV(i愢oFa5N+B["&Hf2񷠎$qطMm{E]Bkvm\é .@[BH gh\ ?Ǘ.å?rj.Z_r<1= ?wUwsb-#<wK,O[Hp2ӾOcSSXPu]P) swPNGHH}8@5[ɚMIe0- JǐĐ ]-LmG۠A|tx Ck u Cxh>UOe<:U"(yB f̈kщ|2'OV=%O9o;d(x}DDFgv# \f=АZ_n-:]vR%^'=$.p)S_3٩s7"FV(i(>z. U/b=$M]$mLҽy-h*P98ykܫ5$+r`&7[ӑƅ3* T܈&@_J=m]i4Q6#sݵGb%fGd{#ofD;Clk+vS43%8CU'53h~4iScs)H.bo9c"qoGG=2ZHZT6D)ȗDמn%E&!g6Q D#q3|cO9(;yЋcmWlrL6;G՝*ra;yTCf_j5,YuӬBc{i mL/) @)4C$0;hi}=H8Me4Ev`@@@eɖtL_("mE\ ?RC~zdrIG\W+2FI78@Kдxak0p̃lٗh`Q~l>_lxا bWkhmճY9ęРp?AG xABC^R[x8VlW]!?RZf!& D~G1!s(=K0%BPvkxŕ Aܬ椼%Qo>BVd_6vG3$Vpay?il3goյ轣y2i/l30d 3tqͫY(2;U[QGnR=\C;`(On_Uy3 Yhp"}qBUsC9Jc@6A}k6aOȉ?(˘U'0/X:Dd*RLQo}Aa`q_N@2DH+I\xѧ@i+qS; 7{p7Ѷxi* Gú~PDU7vua4 j?Zia a&̇H+ I󗢨s,rPE -R3jO6$wOWצh5ѡBZX f@cY![Kr@X)wූɛ"41Az p[~J"D5(N愪Q%U_^t29̙8Jz>+8+ X9]RrvVe~6g4Tj.#ǮWo= Mnд4ڙ0'Bi~L*|8k nG6cQ̓Ӛ("VGagI]/ upK4A- n :͟]r hHNQ"fA q{JbUSg+A !#5m>{J4 h&`"̸*WuF+F >*Z=4 c7#8] 6#WQtkǫ6+.7ӗHS|z(%lR{_pA?lQ;PUU}A8i+p bBŌy?bbsMYMp+8fJs*A*dua$XS(h5g7NF '6;*r>6n(Tk' en9c ҇AmTJE?>=Sŷk 8{ |:H$ h&J;%竻]憐Bg~*wS$RGmYbt; ?AÍS/-׼oŮ46~ۮHn (:@Ni0#< md'sz_$A'wʄ fX:Tuu=0S̺}J%0/9 H掑!_ayכOq_04|d>K\-15gbmLy|`j i%nq[ףLǸؔS&/b[߉ wܷͷ9})Rk'tM 3a(>zHτ@VXdz^@)~ԓRḎI 8zYݟjrAyʣf@!3D/Yi9- )-%؉f$ 45h?Ӆm(PH=ʘ/'E [QKodu57 ]RRmCO2H8g)OBu]ʼ{6,&1t=k%1؅%f([R ]DźT!/~d}ZYxaIQ3ޥ4&[e|k,146E(o\вƔ1W1ΘkEMtD*ҵ\ Z4Byԑw EN$I Er=qeC& <~Sa㝍B< _5:߭u+?BLSD!|g|CqypoN8ʼnl>! ԫT䃗܉ + +%zB.׾~ا<[3qQ51 !G*\$lqAhf3O:yl[_Vm-EF( L k(P]"B} V>uGEΧVpj=.;Yp4PNb+׮>(> DC>s6YrVIE읳W>U7#=;RvRH*M0:V)gby?Ćgbwl[$=6X|ۼAgO&;g5X?JYؑ)U+i}ƪ\%qp&3jߙBd';K^l.à!c>7(tG)nt1x_ ,̰Z~FELS̱ $JcuiO|=Lvx>&hʥ TkUYLН(Z0(i r|oS@K/R\1Ӂ}-, t5]ПRH o:d)@ũ%n>ErlsMe}P5FΧ`DּLpJ'~w`(Rw7k70ZuBAB(߈Ey䴡oaۋf@xels1*( X0bo"xNAD}1HY&t*(N:Xh50gsmO|GsEnՅzVlT mW:'&\`C=ps{NFBɶ)jEID Dm寮zX6DX1*"S5vC|wiV{ZP#1DZ9`|*# ,˽b1QӜW ÙAT{ryB JN HxE.7=参VssFkpC(| ]B+Z:\{qVU齤j n A8~A'$o4Z,-tb&ł,3 yN/0%;F;$ɼtK/~ 3_y_xD\UlNIbr` oJh{1\@ܟ.UF7s)_.wrΛ +XN|nT[`U$.@89W7+G߽ zSWT_s\;.#qOC60&)-nYն?pZ!|1@|VLߑ=I-]7 _-29d-Ǻ"˽}5قhkX,6Kں"5` =a5 JeX4Ɗ9l5@)h?#M$%Ey@I}n$0NlKuǀ? jl73ҦnF툦fĩ _2"Yt3YD:,2/WqމrHo.#OI2K~0G`H2 ?(N4W.L)!qߴm8[&OxO(_UDc|nzϊ"Ϊ ХMAZ%{)|j"=Y6*)ܱO 3o $ %)"I;YMg/F6z ~P{*^P?@T<#X\"N\<1G5.W}L_9"+ RQKj}\y~䧂#XFNH朣z} 6$'WVc҆]JX*d8ζF mѩ.EoF&,9rsKJni ϓK>Jޱm4rՊK<7ww1>) }<@:8R6q km: K tWџjp 1UkI+}amnqA9hDzc<qltA W0}2qsq$`)ŊEJsaݗl]&gr[AdS ӌzHT-Saa?F(6JB'ޱoޏ{qԟxEߊl2t=\z> (gcY? qJJw㤩0&><څOW% | նǬԁ6~VK??[W.eI˒o`BRwWrpTh) ta9cX=kjhP%oM?53pBRP&^ *f/g1B~ rK5h"OSxV*NЭĸ!␛v=m9_ln7ԣg{["]:g75yTG5 TD$Ej'JD:*\3Fe1 /y h1VSzOUȼ)GU{); EրّWֵ-afq3g$?pe-*TzQY$!]]%f#6UcܭgNS[V1*3dHMye6}A˔ے2&cOJ>a.!x-/܂?J.p';)!#݅;k= B_yϻT^Hid^p AiHNEbꅖ }S5x{h$FvPyˑZRpXQk8xX6O?D]AkmOz[MPiJ`?m3;;ei`t JfN?hNƼpRzWBxpx`ThjB5c5&BGPJx ') SUllfr8̐($ٽ;k9Gg?ʮM@8p[LFnõ wN8:#vU}}WW^LEwUD<%'^ ߢnQItfpɍi_.=utwMZLMz&iύ5a 'tpyʏ#cL`L Vx|I#Jمy?` jmBM\[%EAAwpy{RuHXwb̨/181ꟊG{y`׋Y*گDKg "2sKE9m>F15GFUPa0GZvY1IgXFBSn:r}/eNkhC|P?<IއiEWbQ9&RYK sfn^튲]}J5UUa7?o4 v4Uτp9BU]P_@Ʌ7F3DQxH((N|6CyT'4"L];V'lR  As~/7| sz=k:O{(M* CJeg/)y{ b9%2ӆ|@ǻjS96(? 3vU}?mV6~D;eOs"V+x6Uߒ deSJ *h >>qFC>d=)vЅ\ȡbiM45$mg$أ)'^5!!6J۞6G^o,]zO_)(GѼW F3}~\Y8WjΛlإT94ӱE537s@Y51yƣlL`l@-@ w4+H9~.Z HFIs.H*˅ O?}#Ar]㤾hVɨBCn|bT!fi_5E!. nI|JKAu̶ꯏ!pxG}>P>XM[q]P# _g0[6LD^oHai$ݪbQ{˜c4=O&4lEdȮ QS.MQpV\G; /jfkgKZh&3֖O .Bc ]Ͷ/3_UNm $=ҠOÞq.hr 3K1]8#BBpIҥ{7!~K1!v /|a9̅o/&Fr)Z3= U&ʷ_i80ngB\0=ߖ͑?Lr.Y_ջ~AӼʼĥNt=O_^c'}T]ᣇ7h&Nsn*NCA4GfHO1 DXVK Acebs)Mx`$|1_&k^&N\2Q8 vR2%,ו'"&Lp)~ ) P_I)dnΠ:QS ) ^7/aEx'G}DhB cQJxX 41$=ȧ4$Iysa+o01](\q&"C` kDz\&:>^ 4zKN@ٞWpM <  8%c;\$D8-;[hK Zo߄J/(CВ}ɳ2 `{ϗ=sǜH=وʘ!RzKم@7~FSVD~o9cL+mNkRb;`Lf1SeO :> ?Yzڬ'=~JwjVhw4RHxgqMK`~x&`F8?DDŬU9Q!F$-m s.=᭦ }2?s!֞v}$4TDRI qB[wPEyED*ó|~-&f!P[CЎ]>u1MfA;6_$ d&+XUZgGSiⲇXdy<ʩ cG n܍kD ntM5MDz7 )8+ˊJǞ:T ,> XLGVy_cwN`sv~l*L6?9#6ܓsQ=Hw$q0c:"kLHG&}I/Pz 0!K|֒aιXɧtߥ-[j}\)Gl^%~ML\wPf, Oy#Tk!  Ixw bbeKUWR*ƙsw'@荼٬Z̢wtk`!󟥿KU)O*yNm[@p]c!$uQv_mEBIVOpW0C{1 w]_{}R&ݳׁ Hŏ /Hz=Y \a9mҿ?@G̜䫌QW6tl 6HlF i2e'P;}_)N;u('D[l_oCu| 132eNUE?*h̛+X '.˵OP6*Zסn1֯Y÷&UтcG8 x3,g?3zm 4Z!@/ وvdmܽ`$EۋʃZφEu _͂t/ʖ W鶏<+i7mSGxxQf 5hAҗnwy=LוzGn[6gE #N%Z#:-XU "),ܮ- ZVјs8D@ ').cin&>G5)z~_GF/&|C^WV@R~N+ίtE<ޫM\"F2bo9ec]ܤ]#7n IuKR+B~?Vo|`/; p# xtY3pq}ѻݗȱ15$vXkU*!7Gú r|v̌6|}vcjgoOu@`o ;NBୡEٺѾ]st0Ү־B~KVd^k*;L": 0>B 3LFwHMAYĦM%hڀB].ﮍvڇ1YUon{ 0F~S0aA]3D#<႔:N B2' \hfS!^  H2h$ܶ ܷ'#Y:K@DѺ#2@`@a%ӭ?( ;嘼T~}nHOy(݄9Mf4$o;T33e`u] 5B5'Pn)^OHF>)8#l!'JI`KO^k*wz yj2?שq$[s{r4X\~mp9{8.(Gh{ui}TaQJ5 uy.gZeiTw}_џ~f!ua~u0+Ww },plD`É0trכsA[?a+袍y)w@-B»9VP\ĖB 3 a]&i`@Ծ5'u~9fk*i LORjj2 ,Mk tFIo;pi$Yf=q-!G`~cPm=lŪ{\z}@2A鷿[6WWY@0 V:Wƾ~hBþ'j0l[ ʆn#{W^ep"[/֓'wvæu%DUE4F&/#޹'0OX(0ʘwr`wV|ouT(A3,/B; *cGE"puɨh-x>'ѷ7C2]b 4|I]|=¬8/'IR|4ҵ";ܯ)u"w&j$|~OB:e1noo7X0Q&YXKMP- =g5bֶ,F!({]^mjT?dru`z&B? LJ(eX~QgCF,H5welÝ2{Uٯ6u|EsGYDϯ{[tkgTIq͋m]nx0_try7`_#g.a3G*x,5̄Qs.r[ uċ&!m6+[x;84lR]pXvⓑﹺÐ?[X \ҁƭ (>͔&^4Sw7>~.\P?p˲$鏹DkKBYTL[u;BiNr ?q;zdvq–MoM Φ|[OÛԏ."Q>RK3Zja%qݬctjv'D;DHBp"d wJM ^N^Bs'^QE lB#\(+ .BŪ+)ҎśR^'#2 rzf#U/AtMגC-"s'O"!pGQ"Mn&Ct70/1\ulNŹ Mһ:*DhbGtuf6݀BB_kiG}WVSߕ}y9rnoDƗ8֐=9)_z X+ȥbП3BgT4c0Y>d.J$lQ>F5N,78 Yx=% k\Z7vU_숽W[ĸ#@@/cyI*@h_A:\PqFx,!VAHuҥtâv<ُ}m?T`(Z¬SmmS7&E!S"x NJd=J_c S8~WC w g޲"g Z)7zM]A@EC|ìUjNp^YxAA,]&>I' ;"]n8ܒakrEZuroM*zZݯ( r.0u0ow `b›+q1%P!@:_YW;%{(ȟAqkЩ_U9ґ $ӒD^`+(rzi̡+f? d*fq=}j;z筕V*#Ixj ᰲqe$V}Ҫ!Bo,2nqyi!oANlzUci4P۽!hK6@I6Ddgo.~_ |ٲ@{Ygp?O=7Rb }Sw V3v%T#g6HQ[6L^4MDјYTDiI_5WT"r8Lg /Ȕ_J/v$^MUUV]"1UɮMLg>nb7s }&`E1=qlp^6h̸-?͏/AFwԆ~ r!0l7`9HCm ;G ߬2"d %N93YfpN Qo%KMuG17 BJ%?ŧѦNGY0=|ql}AUSF?ۜ( &O4lOqXR܇\3 *$Ss֙b~Y?X-!ϐA3 a *iWN/z]Ttы/&  c/$a =oG5W23C$Z)y?ox"i&\WWAelzINr뭓ddcyKf]1uHBwuD 5Q٢yZQ5z k\uTqxIJ?;@ q}m˭RHA|ǨS|@a4[v:ڂ[CK"i`O &N] .!2+dc]KJx% ijJZ(F6H lb-%-P~mցMp? =} H CDJȞ bO)lH/'?$Ȏé߅s)`djˢ{ϴ1#GkA!ut !n,/ִZTbFMnD ~`U ]Ʊg㡈>6-~N}S~_;<'ݾn|봑r,cvsh$p^$ H=K!g"h.˵%Ǯp2g|p)k Eak@)N1pOִI["Hz՟\T,H#TkԨf"UvHР}+]%5"j !d8$9If /11gT/zc-Ĭ'ZhAOZ x߹kչ8SƘK6]h0;'2wz [FΕu ot+G 'k6a[9.yDV::섍ʇwam9.><V&'ӀUq~/T Qf VܴNۉ)2:crY L3])ƕkUIy.Rl! Ō>d|vR˙ٞp*iuZiNP"6f:n6=lǟ8Wⶣ^95 ATEK| Z]Qi+|*-G1S/,`]gJwy& vH'rb"U'$~P?!NR燶+9?,)= Thϧ|D%lSx~Ԓ%.EDGoݚkp*6 ;n)y '&9,H =,THKF D[__2;-vi_Ԇl  >cQ^K`ea78R(~! }(KPKK;YGDh">UuلkVOzXO{wb+ܞ2ʍsl[PPt\<Xwr0&ȕ=V5ΒI_+̟~񔗲q_$7a~! f䁂-ދVQ2&>DB[x.DXeCT}l쳩F@RIA$!#=| % b]UƣG7H%ďxB)ɯm1_QBqa(Lýкpȗ@5w v9`Řj]̪ VFGȎ[dBwW{5 ByN,nJ AGS B}@% ({2VkZ!xBNC>%"cphGu5u23CPsCQEE)O 0/1]M!H*Hɔ%M G袖_u-TkNx0k i`n^cOp.230OXBT#_~r.kA kNxuvL]B͢4#K:fIuԱ^'{УH{@]ݓ~!$6s}4W036i!N/{0y᯽tgҫ@`ÑbesTEE \#(W>Fo4l57|t- .:g7DsC-t爦]>z4㝅95gCG )5fïdWΉFWGu (qK"W[$|aP=_r1. SyF *8-]ȕ؍X%I6`z9 i įXK؇5~ybn*Ơ%T)iu,c87#daxk^#W48>Kh"U"U-11`N _\R@2aiNx~&w(_O{-_cl<[ }Cm,0t`udd?i )Ϳ9w.-٧=Zbh7u8 r-bNQ[! I]? D`_0멤Aₖ1Q[Vaow]':v߁EgPY8"ߣY(Vڴp 4*~ZAg /{:Α;ÿH1 /.4뭼 m˧Yj)ͪ9G Sd! HP|( >ܴ-h ptg(-R;E@%Nwݴ:fpT@;w+'X0Ԉsg(-=[P3KU<3z}' Gr]{/Hx mv;p_MRX8jtm8T1pnoM:ZFpLtxZ—xSt^Cyʓ1 LizOHֲ~n*2) ХZ7%(ޒO$5p>W0m!ICq/I:7@ [fNi#O3gݕUԱ1sDœn|}2HD &ʹ?2 j(j6lHʗ׺;HLv@|w@^bݟR2\1sd/K#pʚajw-Ε׮=@ʫђ@@e 4ϺOX?^<#mKkz V_=<acvTdz'$%;-Q@âM޲՘B},-bqlIO mxy[%y"Uib>}qXpc UY< CMFI6="\{w,!w(*A0; -T(r$5-66qpXWoEpѿʉЈ&#ށ,@|_e<:jjKK:0ǀd⍢4xBŰ;t ӊF{%5K?t*~: *I8noM_\%st5\)s$U032<tIڮ;uduF%FWTeY1u)CVmBW;/deZ(V6k7oPb+9 w;ŁJs)4վK[[*g;D$ F(gۙgGR4\=q|_cp1wz􄁋,r3]%Kgc׻`$ yf.(ᨧ^(S>sp:+-Wy`ib{[pXJBAT5a^')Y8Hͫ8OEs}̩YRdŠU>vIp(,pAb\@>G"Elq.ePLMXwȞ8%>ܶv)޽ؙ2"R҂tۥFT .J 8m֪YػUS fDs#gDW1Pb:I\_*,PwV+ON`-H+1o0c7Q)@^2W!3G8E6X1CvXl7$p?h3( phrm` 7 9MosGv^s,>!f , ]7z.1FO!e;ފ``Dɻ׺x@&lNϪ% % _8'&UzƩ3ǎ"ɔHIeD^Yp3> bSfD p:A}Yr4RXTWLΫ?,͉t.:k?I$؂ 2C2 #Zg:Jpr7gvK}w j@&5:BMc+}c &*bm'q(wx*aZj!XCGtd`qrI[ eYN|hm;/7 ϐdۆ+`av9A^QTeMh^ű#"F]qut#ݪWBc̜^K$ ]Wr駇͟+6jm*HK82b#8uhu-:.umt!C//{.|+ {fZ}MHYWR=00Y/Րk4;9d*dWDGk)x#Q-J$?eegB\!{C~em(>/ geoc^8<쇄Z'3'$\z"c|#d Bskj"v0$Wf`Ս8b /9N(G>1Xa!/9"pSѲ}9KWgpfZR8JF`]Eٻk'#5:{7 4b(`g>bm '[&S[BRˉF"^r#pxtg:Y\L[7 R}H}GT[; k94*9U~И=@Aez/4Y>F9C-,<'JNOVۈMG4tytRQr!lx`|GL+r!0d*M#1h| ]]0iE‰>QvsP*Ѧ/P!$ [O~|-[u 4yN+tbfE~'`G%qBS1I*(K}J2ase-ş4F8g20T8|#.BbQq?j7^QQGF@qg:# 6A+L73Y$ߋG2*EF-~`Ga5Љt4.hbҙ 5ۢgڵvv_UeTV+eGgdܜ} m " ֎Una['a\\YʂBdf4\c]^ 4Y>%bM5-= Vy\˒PӰRz{ ȮZ&[nmYh&!0K*.$3~SM ܫ2y+7*)&%һ`?80yH9ߗIm%X1AŰ{r?"_7`8EE0O DXWY?_N'$[cou ,>M4 43R* \'-rL=h5ow=HYà(=RM bx ])paCB0,wsHQ] [6tcI8".`n< tE!IyM'_8eѯY5ͦJ.o ڿ*dV׍46^TyV} bLlV#\\?T p!EgM$";.* ; ^(?fE㺘<|=o)mK\/u$Bٿߧ; ** -vđ}f렵m9.bh%9"PԅL؛6V^¥vȁښ.VR[0ADio#ˇׅ\ .d/+TO. nx{Wv*T"10:Q7LDw©? !ZIC>׮x\6b^@/Hj:k}Ӎ5maNis4O$FQfd"f ~R8 ԵxaDxjF>FKaHs[~RK`O WIxMd 1o4R%` ]uq1>.n`fː9qMy$b^JA;+7J)xI?x2L1SSmRf1b\4ST3K@N(<߻oT=WL !l[*z+м 0t|qG W"秋))O!xVBV3_cLT__1-a[R_!+P&m8ronƸ2[-LN.Đ^JOO uZqSᩬ{:Zb}ƍc#`\v )s*xJr3%@G'HwLH.+@~l@dEHjVG]/n4; .@8v1qA$(Fg愵~&$:? #wb3F!9(:,@ St ژB5xbYxTG3?ާKaɰUݏ9n$:'m))5s>x1a}rddPfgm/X_*3M*qޛh\hxfc=$;cl#Nȯ}$P R&AQ宿i"~%Jp[9jp cp$鎍ŕy"kQ}$o:k ӺZy< k{S 8i)(Cσb=ɐ(U#1 `)Z见Ksq ~x딃xi4P-9_6y3pHQQɞa̠dWkA#7Ż V1{ga[}yp: Q@ze+eezk+K pҼ UZ zya k~5۾En0}Na.{5Ďr6XfRtބ4l l^S3Pfv$w'B:{΅- $(ٸ]x 0VxpQcxMp{,XW,{>&Z <٧C@A/Z|& ˺ 8ĆoL)JG=T\a!|YKj;cfSޗcZXVgnmJe. O5͜|73qn*Q;'X:lzo>dݐONBVpZdxdBQq*;Y *2r7g{eUM:1mAۗ9G3c-]]7٧ Ƃʇ ekc9Yd#۝(>&:]=-ͭ{ܬe%D6}sRAco+Cl*yd}<#L#CFntM k2MA)$SZeDZl~(t8CYIQ;agG/Y% :[#o(]l,Sr6t(XjuҚ!!V/fۆm(ok|C]YۡC'Vg*P7$Uqi֤y@tn,̹%SSHsӊ,ypcKdcxl1Reߢ0\7B%]{)"/Sfi$&$Ɓ:ZuxcoʎL|U/QY#S$,u@;FhI񼺽;R:QF(9ħp Tdd;y3K~Дv 5>/vO^n5S"/Oz1 : ظrp z`R*#0(ӝ>XYRBN3[4p-?dP!MQIE!j/qI7=JpgE3lqpY f?ёN?׾}N\)js%rORE&'"iE ,[45zTaYΉ*5 R~ %_0r V" +@zn7X=)CɂkXuɌ#@$L.Ri*~7l,џIEةa~qg~PtKSHNq p (OmhD}5K}uqmVZ ak?l R #k@"{> -^i ljt긺cogePX{`S[ IyJ܎˱[9FgP \Yk2}I/f%0{qR5\grtu^=#wvf ;%9s1c+<˔|byu+)y2K@ɋJO0Wy3yg!GG V'ʨmh30ۻLo;ajށX$>M{5{q|sw _3d^#(+O@ JIrhH֩ pŽNwOzT.z 5)١mhsMokєzp& ,);&^6D`^AD.3uK,ȱ,{q'j:/TtVcnATQZ7N"]ª$L*ӞɑRdq.|V!M̸ kbVܞ}}dMOD\Yz:l4PiE4}qJ)Y{XZ&a!{p.Pdӟ|O rq 4Vt#Fj=wΦugF0֋m~GU{//RhGaABBS #w L2c-Y]G(D9Gn~.PN,,ڔ,%`voY.:he@erL0#Pq LeUX=Ʈ2HP ,С;#kw\Nw}yT@w#,OsIa 94iK.H rs'6C=G ߵX_,nøH[:zfm.e YG_?x)kVPFY驱06b% 鸗mZ}Q|Gyx))/Nc.As׿A]ZthM껟ƒW3AHȨ_ĐPx Zc 8(D)=7Mkiᣖ:LB8d9f4kwѢs8OSseI?&VF?arTmI]@`용#{RΞa:$t[=M+5C(zeA?1uūpNFf1VD%>#N.1=crFmLPi5qz?YI'add2dB¯p~Ϟr9R> ` 3y֩>]iӱ<[7T':% %úy2aÿHY5 c͞v'p v˰:<~.S]M{wErc< kΡ .F|7H4QiBԺ&b@zx>?cǞY֞I9Z' I>nY7x/2dsidbY- C'W^uʚ =Mvuw4:9p-ֶ7\Cⶔgv2O$|ݺI &FTLÞU\+_PGm +/+ hK+4~?;f%ͽE;TsظmE1AǨ]ڣfp~e)cbb0H$JbA}b :/bcqW%r!h,MG7lf[[7k; HzKq}66ezK4;j5\9UOeJ]|`Qa`s >}R{RAŮP[&<*.Ĺ)sI>\@;!//\#펚Xy\؟S #'G87ih7 eɢy1Ƶo&_ff 9Q?аf  28vJ,l=#fVU(`/d`d8ۛ>nceDeלAg~m]J bU2]wJhV) yK3m~ y^ $$дw_rxї;I5T R/ՋЃߓ.PFw +]υvٺ}ǹ` 24ӱY`4g<Y yo$yƷk[O3i_5T'-JyӼ8AUJLD)hSu ɧdAn`@=or\ŧFMծ:w17ZUu$hKӦ/?k23b>Z,] |YՂD{X%d.qgaq쒈{q#6 v3Дge̱B!r4~^qkfC׹OmBHWC}(Ul"YnچU{&M-6,#h6δ,q -Ȗ9\rtBt$bHH8T*., 1uni+ׄj=NS~ʻonD}  @;"vU!Uao,>1QڠFty\A2'?YfǛH{& v5OֿM܇(˝{v|)D̏Ņm`;#TlR ]Ik;]vf}Z O;_}"T_ahryc9O_;c=ܴ!M ϠO [vig'X @ϑ'㴸 S=W 0 D~_Һ8ﶬ:LM̪h.XFty ~av֞j )[yMȷBZnР Eڶ -PT(,;`!ʀv0s #P:?/S9{ Û'$rv15@1oUDGSy71ʩ* $˛GQv̓jb%\2~tOڿ]W4;2AGB҂Kjۀ21Dzu³E;üV\ڒm. *Tmn2_|"} U itL eo?gPDBa[vWYz:b(nLsiΣ r}{=-c Z1Rpnb op ng>|ݹqNvD@a{iHyYmOXjiYCHmdzd!·o+SX;6_+dɢZY7*+|79̫4A`ڊW|NшJ:o""5:8 J0oY4Rr@R > rs$+gdt,=!l!MY(c.w'WWE#ր))S+%/'njA;kz,KCv"{D@@Dr7l' sNG{J}P#_z6u\EЋ"AmݏfNr0 —Kٕ$ssw;h" X@ha"ZmT\l$MAk n܉'i/l&l16{\9M򼊸^ob % D1cqNjsx)8pBi#y@zvMZ~* 5˵)[|Se9~F\?$[S*~W|}|UЃo$A|Tut{C^L;43UcKEjX6 4OXٗc-!z9܋9Zԥ!I\dm)r=p})Q|), 9#N?1# 9 h[kŠx+^cBx@|#/$LYrgqVS4w e}p^_hcd2[T ᚛`Nb[?Oыr$>^=L|Px_aRP)dY씖f/Oc/PKđuX&|HUx ig!Zz3DQXfziMs=(ӥXrճK1ʞjp|8"t rW5. "8($0)y&9u}PP2 T A>9;8Nwc^mN؟;&lX7tg>뇵}%m~'"_ gQq49}vw"б V> {ƋyC{Z!YQ^fh~7iP16e/< wu=MRZ /nX96d 7vB"b;y=kCl ?s[|E[T< q~@B3<Rg :gƂYzo6 6bjQg!=FWXHƿUs9˔`x]YeڷyOT6|!J"Z/WqQs6!Ğ?*sPhH0!8F„pz dcRx: %BnL~?Y0DdaUW꒜EŒS^MZQezM&, }긍qeu`} tXM% 8R x'`,1_30ڑƞ})N- d۞3D*n<*TήkʂRoJgStH^y*!&U+YA]k<8B'_6 -mS/+j.Epq݅{.|Q4.j'HVZNTc I / ڳOg;>%j0kQul _(TE \o+M);`94%sKj'ngY9ԖsB^̖ :g%2virN4(1> j ?[}T1~C UٚΊJ]pD4X%U -ZeɊW)7HU+fӽ%sdi ʫUu(]F N׬|;&LA4 VɁKzݢ/@ ho զ s[%!xH꥝RPJ V?I$ME,ZvN[{+)ۇR]6:mbi^ˑ Jlx_{;..~-+?/0~UzVM;m[yG- \/7&6{ڮ8#pux[&=X]!A&;B҄ʪcNb`&1j'qv[@wd-'1>GAfUGP*V~nlA1gzg5.X Z@=K9gf_7h7 aK@b<ҹ<xz݈#Di ?H9-ܯVݥ;11 TWGɤpK $, OC@y 6j9!JRn)Js&l SoaYwÞcA i~b R+!a=sL,xkV?ތ찇q+-ɹn3;>'ts0`By4 fa3ʟW@v2Mwj >]62g黊V"$@)+xݾG^2iekiЂoۥ l?IP$y6w9Ɖg QǴRz_I ȭ]ofQk95t:V;i?nGvϓ;aXM9>GdN7 5f}/Cd?t e})'/y-`>+锭yñĸ;^7\l܉"(tLlcjJCdKu ֬5VZ,3ј"K:-/uLPXbjprZ(l[DH^Sǿ8/# Ytkr6²e!Ҧi]-bsݼe Ok665gU_kr\b`IK'NjfZn0c:A6ZsA.mHN٧ {EBZ~줐2w+rwusp=a3EUA% +W!>GB BXHdvxчz@Oւ*T:A xȋzqW__~d?ՕfN!gUK<ěJ^#gopawĺP Q3oVx:6r訜4.uRt^0 P#M6K(E&2 !ZQ+c?MnنX^9#D$+Qh nl]>`|S &<׋QJ/bFRicn0Ls@&:P}ew@Rg = uwrsI:'*;;$0(;I8eznIAܫo )Gi;Y;!\"T[pl!n W 0x{0%H*"4`Ẃ4;x<ЫLf$(8FFa p,,R̃pTۈ.fc YuuGwO `yp'BtC/AzJg-vK*&i6!u:kL'b8{Y~l&Es)2t`Wg=QH B"_ D&ٸf/;^rg<0ьk;L%&(lddn"|ޯR}bzwIdLZ6+Jw`P4\HtI=\]SWj5Jv^Cof?܉ F[}.E:F-?%W"DoNك+V`G]si(|J-rN~y"F9BU #z 7Fiuu^ۗͦ7r"kF4Ȼ5]ғ)W$K;š{.̣rY28s &e\ <6#`2mַR 1#8EUy !fHãQL::`˜¤q= Mv3L팫ngcTtYDX}R-+݀QM2(u; JVL6^ܳ璤_۬GPؔcebg2!j7t̕LƟr<У™R7?|iڽ-FQ=aQ֬$7E\w6`@3L@g$DZN\Sի["2aU$obBS;J~.MW뗯V v>;J.p7xaD?5D{XaG_%_mSMQ[Yq߭k\ z rͶ$C#{H3Zjr690@zj>̊gRCaq^wЫ\J Q#vslxO<1ݐa9SV['B)P?\HE^IDyH/5e4W _ ΃8^|2\~,]1 vi +GR}z=|9 | xV+=`-Yge̮ZG5A^ 笋Р31|%Pu}(-](=%.(}P,i(1+L[m)C@n+[)PS+PEb3UFY\&| ufx j7KKyu^%cs1z>2JcoB]#};pJ5+?Ig F})à5Eɢr1dT"`'`*v @{D[|P gQČ(@ yzj*:"6&w677" p3Sn>4g[Wwt$gfJ`GI{g,' 2ib}ďz# zjucn\HK$ػ[y\[n,@Fъ}| f Û=첇0dMW a4H)T1CbfVL)&{}a *XbTm&ئ`iW1>t:LB2u )]>^أ!%daHX Yd4_͗M,7k[Ay+Ysro'e!\4V|` F*a0˒[܃[' ġyΈ懳g \v?zl3ua ,Y/\"|zy p5|r8C At4S HqcšM,L:ZQKJoLk7Og˦I=NZ (aV} S}4GFwGURI\Q;xΰ+N}KEӁdev݂9oS 2'÷Ԗ3 I$Ƚ"NKưVy4Q0zRN&ėUW<,kegM 7Os2|vY ytU^-=sX ~8u6FZDVeur}<^df-g%9|aǒ{UD#.xƉH`RX9EYsn0U8"DNim,f0/CDf Ri 0ȗ:+h4{ɑz޵9ka&ʮnW$ *-4fAuk7.j%o#*Q5JcϙةOOEЎCڗs m_ gɰlJf'HJ_46Z && cT7 !mf2pNK)} (L_N )ÚpI0@I9 e GP&,np^*MLDZYak|\:'l($#0y( O~w؟`ˆg73ie ~dZLiC_9>!]~w}>'['F]lv jB-H;'`Gņ'g%rN};E^`2J^5tm Stc ]5eؕ'Po?xriNXaje?xҟW~yLtrXZtroVGpWr  BHTnzZGṃꙬ7D`Iu痬@[w0cWBvbjW,ulu!&$s ü*ѠxU;r3ˋ+F-rHZV9 ן" xqq$LE'+kz0ިy+Rٕꅱ'#KO߈#ħpOz _si0i'~Å1R]:s Dy+uhSOŖScAVˉM m1h2jܻP\7|-pfrd> g~s#uґhdf ]65Oo|¥:#S6 v|VjJdk6 hw}׵TM(FRm#yO2l{2h=΁)q< $?Ɉg̰BN*v*u.=u\'nKB[NdQ۳ yҚ^ |"6#Ip{؏oUJ {x[CFo~n2LIǛ7♯#~3gl| KQtА&|1l*/{l(J PF^<%L3 CuE"zt:lŁb?.h*J롍PQ/;(MN6S;ovle1ň]?{r_<a24X8_*7exϝbsf1vIM'ԁU +fx~U܆Ιxg[ͬuە[2!RVLﰤbQ(e&v>Y@ 7'R#>o%Ӯ >>a.Ss0_5良/k >r +PSr*< lo4<{/g n W"ٽti{ҷRwYm$ FK8UKT (ދ}7 9"J/m[k?-bk4Lh_uUN:¸eʤ(D,$\Y+#OTR}#,zzWΒ %AS("n*pddZ ,Rt#d/ ;*|mv\xnCp`b`Y՞Ju`zl낸KqG{1)TWGͭKQ EjWQޏxOJT=t',֞8iXJpEp/4M ū a6p2ܬrOzlS/%#,$>Rrsj::6G7X>wI@W IwjCyMxv_0[W!xO}HDŽ>%ǼGvn ,4s Ͻbld`SCI!S;@=򟐺iiXIhI F}J?L]s(lq-GXCt<8i0RXjVvq*&p H`2Czhb:z(e*׽ۏڜ`*ʇr"0\ֳ0c(1rHxzNicڬ3?}r<7}z2϶z.Z0KFuf bjbp^񲮩+nBbzh 9\uEd4= M!DŽU& iY˔gߐ;\\bF7kEh>ƁD!#mN<7+ɈS%cDDjYcqEv?u{rTȈݤD>kǘpm-be"x l[mљX.&}v Khg)4ym@!`w}LX54&_NO1^_DI>5UW]JLf;*t`Օ=wNWH'9nB*Z O֙s@ i&߻ JWvܦE|QU_2jQ+wylod+׌'~PSj؟ a_Uj:tV*߽Ǭyd/0OuiT031"eU,az2Wawܟ!-E{*.ƮŸnǀM!nDzbIe~ Дe+%%F2xl*,vO2 PEGa瞏$Ϙ,ѣGVzK[{Tz#^ҵRj aL^g}⿵E|=FmNc|M7P9nJH X>:[15?BkLp͇4h/oHq$%Ou>^f՚XdzIVB{_m7zY\im2R~>}lp@2whvz B@{j'S޻hz// , J*>A<}` \t#l08D|y0+"M"Zj/eJpgȘ[A9ۼkyZojW~xYxTl qdc/" - *GT.vbUpNU,px 6YHbiKM[$gVœj@\.Vݖ.Ru1ыT#o^-mb̶s@ٔWDcɣU_)w57FԲ#ѐ[E+r4d!BWGmL~T[1A}Pq5-Ʌא(yᦍt5,f>|m\NMTʏSd~C'0*,5BE3r/.@u1hiϛ;QQC,Pm6E3lKfkN?3D(t"bVFB! [GnqW_[{YH6ٝ4UOb{@kY -ǬԣoԂ=Ŝْ8Za<ppi{)jӠVFG}fXݷp֑6 'uS1#|B $}W**HVy-{ٽJJ<9qy&`% q|\e*?;LE+"c4!ؖƥhO|o׈SiL< Ub ^ d K #/$!m;ܛm;$9״Nl<{zGPF5An +d q /Xpx}\M>TE6a2y>Ҫw ɣs[N맱n"(6oB0 ?Գ;'2v;z@h:G'gW"@HGñTtt;Ϲۈ9b ZɤiUGtGߓHljbG%@ $3}-^i"۱"~u5lJ/FPIDMK" eS 8 \sdsc,_&)q~9ғX(^]t:!#`>I\JûD | n-j 6s%Ψt(Ϯ F /dw>bFl7wQ1!:W< q[VVd|ruܫࢍW7[LPUb(ft,ho3/ke^<4 &xydxN=*.װ˥ x )mXt%DŽ3yVjh ފZ?ϲ)ʡΙ$x6LG&Hb|Ob`!(0U kKzy/ 㲑믹M w}Dՠϳu-Lx*>. ,}qRj|м)j o/˞tH!p/Q؅Ld[<Ҡ\oi(NP3vɨ ‡z9+,:g9f9-bUĺH׎Ĺx":vY=‚-z'mdrn=dXUE@icL(Y #'x1'A|R_iXBPT9}0@|vgE!'Q$Dul.IbR?X\@B"'[>(}P9KU+›Fl$f9іj5,'B%kNG!=劚+a* 5yoo3liOMH;:?ג? GNEBLjfGn)טѾR"tUsu}d&ҧ |%nU(Fv `42X:E( hO ⹿)p2EOv}BoTDm ,6IfNEo ;p1xR 6uCq%oaqҙ͢/YIX`ȿk;',v ӂ]C|MHY: _q&ϜA6 䲬{iG ڼ8I*Jm\2iQ@ H'8 h_[ݻ# * fiZB~QktTEďTΈ!00Cs7Чt>40\ %ﲔMa a4feS,.,xzH_mO}|5-x= SSv7#`XLf?'uNb0kgo+Rj|O^ BȋPaK]R C&z[2SAjfvcϤb\K^-Z5KS2Äy/e)E)bS*08QxOڗpTȯ,=tE/N6Em&[b7~o="AƝjv _y5[p ؟=xGA6e IZ4XJ{2qG Rћ1 SXHU Dx^j{>hX/|;ǍNϹ d7TEK$̀.c4,`f#̥jjD5-IVk OvMUP=YpȬ]K 8Æp~ ʏe#͜X !R碥wO-(gcFI:?AL`4UXkf=$=$O q['w eb ՗w )X i xCFmmL~ H2[Ҩs>`|y}DF<+ 5.vz(9KNvuڲv/piVlH( ]!匏FڣӀ*`\cSP:-_#C۽n(ߞ}upKP*Mͭhș;ACfyQNB%thY\ӌ 8[Do̍Ox|.e2d?$ NV'JgqvebZ6ea:<~ff- < ~*RrJ1ӮPA&%Pz%j 3ToG %FJݻFf#-\T|#y%jt+LKIZZ e%$A"TZqqL}T9.*oQ2K!/ߋ=4Y=X|"%] й'nY̘ZuЕ[[bv`2OzTpsVڱVZepʈ n ՆJqőHϖyZM1oŴ2ecbj^Ul홀w9!Ɏ&a񝮦M`Z4LEanWzȽ.t7&~z3L6\K1a\5n͡ڋ_`{|wIfB>ݽRbX"oԦ_4zzr<|eMA3XoYuS408z=2=F N dRY, Gxl` ͊ ?3nI8{缅,-YdM"& j@?OeI @i=KP cC6+S#Fq7ng!ʺ?E|^c0PLir桂TBXJXPp;ջA" +\cQǛҸt.VӲ=4-HFLZaC1 (sAZׅ M8ħWv` +5+K21)@6Aey(E=Q˵l~Fr A! v7s]%9yt,y1!&Ʀ?U0Ñy]wSs EK3cIw-0DDA0>25({rR;D tJОlQ5Рf"懭ѹK?.̘11ё@ Ik[מAQ#" \wLo)AbI%[سBy/_SJnjEFϺVz%4m󭴚dʽ8:$="_xHKQv~LLQ12L1~Nvah5=9<Q$_qlPmζ| (-v؃|aN#>0QdYKN\ѳuc6Fm`՗["~G{_|}gK ;1?Lpr{N.#:Bj{}~03 |EԸx6'RR]@h:VNeK"GKX,օʉ؟EHn/nKbԽ$pjÉvN/t"P<{$ Z\?֧ |w叐[9;a4c3Hhs*x*A9wW<z2E*8NjnT*]qj^joA!"OnOz"$8וSa$0ުh],p^k5SRu N<81rOYF\0&Gg 5}8ʔ`!x Mvc ^w1ГI~2Eąw]aO5˃Mq Fap%j{QWs^=̴ҽܧ?%/jI làpeH;[gvMYH5 :IBF Â:BgF&⟍Kk'|m(|@B7}Nf)b;w+k A*@pYp'4me)T/CEЩ3S>TdB3ArY3*"Zu͓/qǺp[(Q֕^#u7^_K}Mx@ V}b7m#N NW!bF@Fλoe *ZW ߳8"&l~t{nvX«B'WӋʷomwz7\`N^+Vjl4;C@7/-3iYLLRGC,wO>Ǹ#Z[~{6 ZR" XE S!*7]~#|pPm`]уCODK [k6ou HW)"Gr3` Uc QotC1sY  jCZH6ܓ\# A<{|{zX%ߕw1]VY?|=@nw\`LpjWBoK8oYHz*̭ƇFfL;yq#IiqҪqҪn܅V8ڦ4g%2Xp9>MXCilZjIF^jYY֍YK j[gkpk68Y4WK㢢V}6c)皷Bջ 44+(k!I~cr:FV(OYouOC Y˓`~|7^J#Kj w{[1gp*P`Hl5GBh*cokoOv2n5i7>~KfGJDzHS14H!l2Cޑ`C)|M2˟- ,dtd'e7^DLaB{JsSdq<E]I=`&'6bYgyEkrp2i+f h>AW7!‚ {Q~̓x{+&?#5Le{31m޼8n~y*Q=gRrij*@D9U)N능.KsX #iaSJ };<7#3\&o|o_q{?mVTT.Θ~cx f޹lrYB338]HJrpx0:@h:ڏ l~po&+: $~izoO?:N:׫7DD. ?}5ƺ1}DVzĀ*ץWIij 08 ]<Ll JOA"ʆo@]ce .V:m]tPՉ9s | / cbI)wğts)E``vJ;!B)prA`$muۂy*gU~^8G ɠ)"擢?%݃>r"X)!QCg`%^ܧS%jh><~Y](@Nޮ׼b}\[1a^Ѕ)TPoFljҬНY*_ xGP|%vXU/](y-H'TKo73p[|:97< E+TMg,khr].I?}l.~_rEv~Ƈݒ{ݐ\{Iyja*yQϟS-NS-M0#H:G%aK>a=EWȧ'*hѵPV 4-}@2ч@GFt`34njdbIN|cj0G `extO+N6R( j wDy.l7}JY@s8yվ̿|0`Nu*y롆0c5w# I͎bj /V~e]Z#2D7joħZ$q j$< Foy$3&zsQ|"^J\ī}K+f)K0N`Xvtaxhөtrw&:A6Зq05m&Ud/2Q}ׅ?~i D ݥWcn%t::QoGbt0\EA@шuh!$ t9z.GVW0:9=^'oK7 Ǘc@M #1wJӊe`_x&NNg<0%b;EFe+Ƌ\ 5r*tYs_Ɔʐ/#1K0%xFBȴՃKNegx&G"\jo[]AWZ4% kveaM_9{h\ŅzHhx ?wn *{[(xHPݔ'REWz!36 `($OTѨ#:_Y6q6Kl1E`v:D+<@Fks?Orh}n^]c WY8Wݶل{ˑޅ|o31mKsJR !\Coy >g7l675@"/Ԩ^;n!ܭY2:xNGoOC2 ʨH-~UwC4"YQj\"{[i-:c# ݖmͯ#F8/$^xv TsLC2t'/]ym^G Ǫ\%g` +Ő>JU ޅFb@l2ÚA<{* Y~s*b?[ {=1  %0hS(ͽfjBSv ه]C'ِvX'- 4c$QJ^e}mp<j C&YpfUzϫ纔o7jdʼ3=/ӝ:JlO=lذ V\$aq:?k77n]*#g̉j+FSW]iLxUe,d dF-I#WùQ~&ۈ͚PHT댔M? *Xs+N(kԇI Bяrq%աuv>qǣ9ψܣw ;O'.u&CKhQ)W}+@ c#/)YjOL8 g Zx MI^f_CgQm[XA jnlFkpaP\+asOb0?5;a*8_c3qj7/=Ert`>lD1R1AH*hKʲ]Q#|Tv ^>g|!-"]RsVJnDA(v丘]|؞l,l=!N*Jh ȕ8Aσ2A}p "l!!7pf9fZv:y)Z $vpryA֊l 3 +mDm Эzqhu(*/gkP5"SҖn)X%9l1<6/C{dޟˡQO f8,iy۟kYX?oh!_Se{b:T^$'hGJA$fV@F\(|Iy~W(XX_~v~}I a R!,TK~ANц)*Y5rAe3N)83yw9J;䔫c|gbӚ4`!.#_EFs4/1hI3|QS¼6EfW1#(L0sI?K\3q߀6I]5(i֞x{ ;U]@O ظ Y2fk@l\ʭEJR.7<.iޢ㲼Ƞ0+z6C?dV8ycB-L D0߃9W+;񟸉}{ xtEΎ46GAyM֓_ 3w;fBђ]Q4VZ. 3tn<.WXby ܋i=ʕ_mϼJ-˕aH&@n$kMupdP$x'B`7Yg;B˱(BIȽ{k(|[UZԘJ)v|!>ᅈY,4FѯEI ʫJ)T}%U6c&<0tv!),U;)17(CAf.`sL.Pl6ÏEWG>y.Q,:iel=U ] b ݩC .0*ڲ[^/<R]뱀SXGwU7ξcvg,pd~'¹S;14]e 6 iޱ\^4iEڒu⽟:0ϙLħUũ#~Կ,y\W1yﺌEa),=ZF$qj:RQa⿒gP&6F-TXra0Lz=|b`^SBJG*[ds_h=[ș6|-iۀC*s\Ap@C3_TYd`Ƨf.qn@˔ޛxD>.kkQ؄S8RY[NBly UKR ep kOt ՗J|4Tfkmen!| 7t@4)2E//}!m-wiAY^kdb9;v<l3MT^7u jh%됕nx7)D` y>y?vV>S vMn$2q_%$k=vzaϟylEX%nRj*k[d8Ǥ`SbLOXN=̛m2Aaʄ: cG0pI~w. %,#ͺv#E^#.q\뉭W}ja)TO6n5l,^ˮHc  a%]Lr-Z9Hk+PVEwa HJ~_LX\ KXuC) +`nYjO̥ǰ$/L/{DXWPFFPw [ N{F 0r]܆gQ1%h(M.z'-dه]tKYkQXzr_|0uW * f`ʉxޖt0 7m3E9&oLs9ϕ?лpM'UG zj5 lƅ) {6KìXMJQӣ UƦ{$ et{ۀ(y +K;TI/,E⬖ ^T>3V±av3 1pφfbFnEnvǜNvDuU)'] ŋST$h܇Y&]]Wr'[kS$UEߒޜic8 R+?)}p:Ndm-+e̽ߏUjk"wp>!hJ(fI坂Zem2Vb<>ɦ>t.|#Ui6e}ۂ؄w°$+8c\GaH.UFUO+[A]"Pzg B>̃HN.f )r'ǘ3[!ΚD04`7|M%E&j:%$/l'YPCPpP?k_-e- P~5|l^ rAEH#'3gno"ֺ#W9@\?l1≬"jj `:5Q.xa{; 66Ci4Kmj"7,ESmk޷|2K!c }ʲuq4;ObUe =DKkg)Uvk3kΗfX½|}tDfT,BXi;' .m3|Uvn/Diش'iMغg(-r~wLڧeZb( 1=֧XX"ihǯ +nK.zs{m*%=!1q/ӣRnQ5Ta]>k|AF)?SHYӱ4?hwB`>5C ñ2%[vb囦Lˏ B1/kNj@3D'`c.N*.ӊ0! m2Ycѩ$Roq.KhaXɒQKW3q2J-blD+ sU^ ptURM:.[_Pȗo޶cmsju_(VQ1sQ0VO@j=Ѧ{qqg)J%)sUeDn2C*pb`'[8))@2$ F26+ȳ h_,{A(lz$Ø9JIA|hjKLSi I1|lrV u_q#=Jdҙލ!`kfqنTj8⯘ *jl#'GF7{MA0pjD5ޙ0Ee ly{\ AJ> fy:.oƹwrOL hp 7՟Mئ`#] zY]5 T0f H@]8 eWޣ(%,/Ns|Sݴ!'D}̶}|ag_kP)N}\G`& [ c㣍SZXa_lQ4JW,VYH GW}wv+q*tjE⋾g]+7=ٿMiSA1&Hى\QJHv ? ȵDn7g__ԫK=]h[ζX "yN#J+#MYDxǨgx0L7)3DN\g:i( YFW&nf4 )3S'Wv#+Q5*h^>{uÝao<2a-CV)wܐa >j{m_Vls8CKdvoܣ4֫6;U>M,+r*% zjڣŋlgzj[waמ^59o4HY]r4AIvLQ]?x!c7+Z̠큳 C ls>f7WFY"Oz/ݜ֚j gʷZh2ur #[}ml-N?"ai*TS=C9LvX#ƬyxMѶXPu0\<0nM^b`)z Fto"s0 Wo{(.9Ml%G[5؛c2>)$H"12:Z7JyiH@:uvLA3X,F)< fn;K}Ǜ+ܚy ulU+iЛ;H.d2=cG2O|Ϗ*F>dL85 /P@??nYp2phK.^4rb M8|C:*CmSZ{[UvM8i0 T"Cy9FI g|Ԭ2W5Z3T^jGi^ڨŀAW ^.[:o̷} q\.D%^Ѽ@i4y\=킭q{ᒢwș!^W9^(+k"F/l?88Q\0{ K#9:mϘu@ $"+zpb?peMf>|&"JqnIF^J 2pGBD_g#!y8N=,TLdrGG.T%'BEA8._F@I^mmEbo]2&Sj)IM/yb{dS5ƾMPi C&̷AzR#)k,G]7JcerIMF8­74E5 Cy$$l]lʵmY3 N͏AmƎD&NCoJh¶*w}YE#'26=b,C! Ͽ/BѡX)v[aT1ʄn52¨#\uh7-e~̆\@b9ٗS߼F (m.J9bq-zn{2XR:6X\`/" jjej$f &]9@H^@| ac<|VY1ȑѯ6>IRk4^ǣ`S|=#6+ 8l륌aL̼Y׎UqĹzg݇Ho%ŬcBx@*%M6^k׀TN" ) 1XC˽)ZH?uC(݈l` Ǎ%%MOi_G]7!RpkBh:şz87b%%WLm.>(\|ɗ)Im_2@ǃ4Y)n]L@ԬAUdں%`I{3Zz "SϤ0} K ;AVoڐy ,:"3[5 V23IcT~-2f͸7-+G&!WH@ FJ5TTj/I^' 2;ƄļP3` Z,(0/6 YEERM]LYm5s X&&BAjA , +zmXu0;r[}@? z};r!ʘi3$yHeFVl#AY?cw| 'z,Z4H$`참1$ɢMx#;u#8LH8~kM3NOBb%2]jN z Bg@ ifQ f83w8OWܺё(r(Ƌb4GlZEy/w`43W28gD'Xo2wt/5?= ֙@%#fηᔥ|Kt{rU9ʓ)Ȏ2`x#c6qi:ݞ?AX>$}rz$bؗ|u˴52'9]|&#|q0}RrTmi"= .NqÒ6 tAY`_amrMtBC}Ʃl,9D;H&PXwOH"1;vᔄ6:w3#pff!U`=(a"A?o2AP\4]@U_i$crn4ؚCig,&+ѿ-%8up[KŽl~M)8 %#:ށ :Wj>ρ {)d8Uڻdcoy8 jpAܡJNec|/o#<=1M=kk̖3[->"j,O)α&kzi^I/{X,vbj\=9ZeDSᚴB~BzW&52=:jE.ݻ<:y3?*3_ԸZy\(j,ΠbDpn,w7;U/&b]N\9O^27X+FA0@4ioouڶrT̞p$3Khq-`DX͢7`r m&@9-6art}PUD@$;2m"=J5 0ȯkˊrշWƉfI*G>r{u .83a:k|vEx1``b0BնUM|lF YxV|*]!a)^eVp@o~LL;[d2,&xS-xF mt taN2BO q"|.#oҫ 5hؐD"ߩ9Oդ UJ1*dM.>h=*|2p+H~~% Mݱ(XK]ȴb|Hy\5#B 4qx!e9Q[21Nv`܃:'4U]uM9>¬ɸ"_ i GڼӰp <mAqye UuZ8un?d|Ǡ?V+Q6^׆bkŇ^xkeHq܄-0dg0ܡ{j.A?EA@ea.x}Љ[LW3tGgivDw؁~mjnMԵ}dJs }LTfUa?]""I젅Me@i&jpb ?7#P ak: ,߿C'qAj72^9$OٳOɌ0kիyX{B 3r*FR<տ*O`ÄHn%WXS)SiU; Yf[A.`8rQXo5`f-k [ofS Qj׃}ٮBJ aa{{)r=&L%XJوWy^h[ؔGF lFS^B;,&oYܩ`m@E΀aC?ZZT su T:84\93\uH#!f^شJfB)y;*Oty2䮛?}ՇS-dͳoT0O$AXk$ו\};x͜D; w<<4!eX+-֗ ]lv{Cժ4\E9̮7G'PPʬ0wn/dHyCRƆ\9f/5w Li+#kjARyz Si%+%*aJ[X 73qpWl{Omg:mIBR2|)%Xȿ6#2rx(1] ɳI^Uʭq(/!QO"\Mptwt4u|s J|5]]`00 ;P9("5VVkAacO|vL h˯v{`%}o;#h{.nLѽ_hЪkbyůzJfMjٴ(bjQ ~L X[p{}ͽ*;<.=U!,:%LkT-~.d.k]TJD`?>ڢbwk, _Hǰw_Vӄ}wdc|o9GGTESm_tT[WN3 ^G\CNDVDM<`s-$gBrZ2y![ W#F l lnRmUG^p1c A N|- mVz΍WI}Qe""]fm=iq7 _!=AyCA )_Zİ^`f+B1{ k1캎99E~1Aqsv!#C+iHFQ@o5@=Q;`}LؼI/. w~KIlWG)t.`:[WD6Y+fKQ,MdѸ00 \sE/WF g.35 xZO"5u<)2'~]\.ɴç>5$¼i0_Y\\AIbE)"Z.TC<ſhuf"{=~&ɀիqߡzc'R@Yѡ*Tk- qp7Qcb8_PZ"y |]. wtB{5NqZrnǪB)m}WRTw> ?EY(p4X,@}6@7 ZGgA"Y3*Q5+&A q=k2̂ ne]n}|rP y6}2[d $?"C,w]C`0 yYK8+5-~PYfzK$L u`uƠ&^f{{k>ʈ~`*O0:G~| NpR.aϳ o1+Bþ^x1%ik| nA~p,?@$ 2 '{Ӝc_~;ַA[BKǞ f4hQfkuZXus;$o:a[_5?iBnGl,ÛCf8CedfSAb DE 6ȒK 2՛ ͳ0A?W~bƥCCpaJQݓ{>#]3H<{cHw\Y~|N4C ؛ J4X!78Wbb3K5> ǑH (Iż{@fm",Cd5zwE)"ǍDpy@L/"IU,;h/.@ih8\^rШ;ɒ^#_,̊|q(@4%DfHЫ3m[oi44e Z@Ϣ._B tx!_<[ 訦O0{h[ -R: ?ڋSs$m}>KYyHqWM![nz?Ct!w0Q]E%tfV~Rkqf0lYb3t~[vGUVӇcxa ]4Ky7A+K [ѺZAHQNY\8Oz+Saoˬ]t,1U+mW?"w,:xjx26#rk}#m*G#csy60YװPw}鬁qR&@]j*̰Jq13.C/8QV&}uPĦx/KISw,׹́dz"/oq &Coj6ˮrO^ӺܮF^oLo:_&Xޔnv&iByc퓣Ws ' p]؟Z{d) /L,+0^OÇהڞi˱Sg@91˙;+= 2 w1g?"$LNmBWOiP5u`\>?>[w} Z48RO wqj͌FJv SIBq!l~"*{C T% ky̯^qƭʭ4o\nXV-t[ljfܓiUT2;SnkgێC?EƪX8:t{ 5DW i~baD!vWqǾᲺ&RI#e.LҠBQ5(֒eҢK;aLڀ7*Pmc2L3pbjڔ z&QgvB5tsbOpR\g8FTDC:cEZIPA'A1W|'{- UnDCw'b$0WIa5CGL ˎl1*"5#%D/ĸ[kݬfǿ|Bsur_ 9'?N V!7HY#p5=$YV(qcde[T?Tb]ĸԲ! `DO"SU}ui@4]#by$5M``ʝr:f)#^>G6 ~!vzDĊC| [߸ݬT!SD (G=ѥ'>T?ƸZ23{ %;5FeS볶ڥk}SG۝!,۶H{\'̀VRJ.I[ڑ!*ht&Nte`0C714k"ei9:z>F(̯pjA_[.&!(/Sw:kyw~.rY-3UM^ DV5IΟq&9+88/|WwN-!^ASvqD:^܂y]˶.CRQFLjIS7ʂ%9qZWov'Z_ġ#XCu)R}]%oa!dc|e^ā놼+ڏ=b;B$;Ue!eg`VV4 C()X䭒@:nHËa+aѹz{y1{VWVZiƤ>JU<}BYҠ&J$|S Q84Ý};2cp{!)eo_=T5ڣm,gCq ۢyZ>`~UO8ؐ`g乲/5|ȠR$G|Hcpqi7 | )vL}*4!1(OgXn~yi LFtX ĎJeč}11 Y 2R3nCx  6jB0Wm!&[Ԯ9]1R[̦|hQڬc =+``TJ3:^97u趁~jG]k(PRV˓{|嬵rΔcel=@$Η>޵H KP-ŏjH ?]-MɺOw\) &n̛-#< !Fw}RMe h-:QAhqvZ`_%ROY0oi ynfؒCAy=t&2i B"T?|wyT9VOswF0*< ? 2kdu}a7uyGwa=,Iq+1 36F[_6 aE_zKs\jflxa0J & /(! ́ K{ζ9=nECMd2/*O4kWRx8r eEV+7|HYfˢ0l("Bɵ:cʏ8 UW*^Oy>{-`<4]j1yRXe0רNѦ3,jcgHi7Q*W'!*K9;s dUE 쪆B݈[ zH<GǁՀ$Zic]ox&3{!G( MLZ y*߭q}Æ|ӉCӀ_%EFElnޑKC2^t(bꏯCUOm!tkJthMW[@׬}{>Unt`r(kDשh;zkC*.4+VVjvDcZ\ma_Ӥ/csl%9XtpY1!1P03n~>X[s3Aq)kTlUq(@17`M{#X0L5Eq 'SHIy@EN.Y/ܛ_ܶ!5+z$yK"S`P;7ʕUN-\q5xArS 7PX_;b|P$K@QJ~Rb< ōT1c'Ix~-tm4T?y5)[rj$R^us1wZTFm{06nP=%2qOm_+âl(cI% fGU@QnH$Pq&ee!~m[hEU{p !(1W'Mk(,xvDZIWCغQ4oVx6@Ľȯ"9SF.s@bC'Kb I1"jWrDFgͮiHOɺ8$0пC謴y' ^?Z%Ax8&͜xM،_!|nE{iʬheʊtj./&Oίxvݲe(Pn~s^J]D Ě&H-UVkHr(0y-2Y ǩy:ڐ^Hp5Y m88LͷwtyX<'\($z>,G"LA)4A8{#HkOl%ͨNQѧW;!৏< 0{+^tg@&RE^SAx,$kZR"!vBA (z)P ~13(E.dǫh=g1/1ibXQ$۵}5p96b|@M|}Zo[í_K!xԳCN~H7qوIO9evDP=*>kY\)Уn:HFT({N5f[R|q=e L=ؘvZvy(eeZ[s0h۾X܆8/ėj;WIةC|]it[a5AEU{ KG,>ݔRTAHgRufOy-e~ 2_,0".}}5h"Rby>]9Tt ;;`'Ak@Aveމp ojJǰ7n91mEAU}u ECŚ͖!.v!JjƊoV圲9~I+Nf/ h0;`(`&ԮkMp/&2ui(`x\ x?b bڮ%OaSin#Yv#̾sM}+N]U@jfO3{9LUQ`0:wBiޛ"YIEd.3Y~ ZCv)? Mlꌶk4sS3*(Ѭ/Ln}\ 㠨r}d5.zXX&$x1?9Át7B-;u ~6M"\kSU/<%/Zu]}a_": isJ(I_ͥɟm9:uVvZk `⪚qF]gbĬ&OõQ GŸD,.j8I1Zq?{0#=_nTY;ȱ̺C[hC3OsviLgpvΥ}Wr37V])<3ye@{j$jze2IɎ裵%ZoZi]Dm1dVnV2I6ȤKy4=M9[&*yhk=xTzO74aiMo2џ۳CX?[j̿e CzwPuL5U@f*h|Z"hJ(71D׸9n+b@;orZ 08.7$HͰIM:ZG(w`~H>xX>.A 5;*X_j$;ea݃.ѷZc!|s1/oO#?]UHQ'vDJi>ay26ÈG3~.TțU,SwEp,mI+q,ǵ˙fI2vXK\jDmk?A-j4$u=K$B@0i[U {4s| Fڠy!*vsxm̔,lBbQچ:U`uPG#{ 6J[u>akap՟4᯲ʶ1縄xgs<#ٹX?jGpˤ^B({0"儓Ln GņSx ZxEʏr n5LM>"0*˦6r3B@b%MZ;Ļ:,xg~7 L CLZlDvt|bH֔o;~H$XPfX0O" adUK-BբDIM\F!䫲+Vv%+`mSV ps%[DnLbw;;%<&7V)oȷk R7deQ6;[aLw>Rqi )I80;?2/||ێ>x쮈U=O'Z!c2CrCxZd;9FQAEfoH)gp /{3gFEpbD`Tأ+'PXёdwGy'P4$hj9噒ښċ=#ǽ/owa36mxCb׬ߺf{s;˘ec}ǪE8fD }ڋNո֐ wLufʼor^ LQU 6S+Hڜp@]`O>/_o %+O5 X :QfX"-Nek%(r):Zv@<"jrmKk$ WyE.;zUTF 1-qr5XhͻcV`IϊC W3mQ\hH9dCU>Kׇpx)ћ+'nhM>JCyP#vp s(-J/>tր!*ydGЧ:vaL!H q#_ sw\He_~4s >`83v6>ē}VBcIL? 4'b~ Z:hT{G W\MbA#Dz~ @ذڤuReBH Rq ;|^izpI*޿TʎW!O.p4Cy{5y8k+M~qt32mF\a\j*ueLtwʃӜ:4^`/˹Ym$]PX/,5',;W(0 h}I*^WlM"۠^B4-:u8!bVHjj:ޗ`|٫+9G'oQ HҚ1/ . m7]Au멚3S|1Z"yT'_mF"Ͷ逮,&%GcN[5ƏfnFY2HçOWϽQ.[n] @ fǹtUfia. svu,1FkK}^tPMd|ĀK]橰Vx]袛V#3>oz1n۰1u/C_VݮMfi* n10|"+Qv"L)ԝQjϋ}ȋmlilFMB* e&끺M[@_U?LLb=9p~ҡO厦)>[1|W:=K@7ŷ>,<'5 pIy$kk4}_EŨ0ZB`pXcAzMUߨZaUAqVq|_~4l<;{4M` WM9\TTdO˙.1bN% -E;*w,i)hOf,UH"$xb;V6bdaU֒Cî$Tf=ttdX*CX2ۆ>_}`7HXe*i6Buaq/&zcBQ!KUތG ÒpwQa/SZh2R<ץְ+-kdP ݼHixp cWyihXX4Q)͑Vg>Q-5&±$'nj6Zkt굏%-vR=FNB9Bµg.'v&(S2㍍P>.Sm29 }K ꏾeGڠÆeIvTme袹3}T智 &C-x<2#[/; MHqdbM3~Yih^pshઢO4&`x ܦۜecx҉mN':s3B'Dafk)v(wI%JU/whgwՠ&3sz/x$ = ,PSյ fc{~zCr~nx4S,{M iqCWyXuH,ELєE> ϑǶX$j}69 "" NcngěB7n΂ۭ1x0"wlh!Wa @v#1M5b uxfq,V}9<+B_QC{(ԪD?~}tFd,ȗ\C+UD'7aB!-+mj(jF8˟(5uI+9h,<ܞ]t%iǰ<r+;,K#15t ?!TC𮌱!C.T76^ČÚ+ihpp]ѭcEtߢ@!9Z[.E(@?RE(o$+.(=J*^!f,AC9;f)qPе}ƆuRpϯu#p`OΥx9iYQ?3aj;4KZ4oBn}y,D= dpxy<]M&[:,IXp/Ȱ}ypxyH#;3;ry-|+F'ziQ=<_6wU&ϟ@dOCw.ws=bVT8_ &uǤ8>\sdri/Zɸ^=w衋h4>v7@L? s~ggxRO>zmdGkMg~ Y~:U;/p[A<86J=36pcЃ\FSzn4}O/vw]&Kxt Xyisp Hݸq3J§a TڈYlo@2ϮoѴ6Iv$  q!/P ʝ,K"*-xQը{y`_'ã;ݱhE:3orAVt>3oPD|yn\nvWn%zk7}RfZR>nAsf$m}1#mX%L%S5d5̒>׵ Fلfض 7kAMkɋJo m_6I- 369p3}+||l&fJ=x&?Yƚ9d#HYc.F F_Afp0KeYw% ?{dnc9Cmago 58-t;h(O%I0u7JWCĩg"4f y0dW .bF pjKRxku22$-oxlU"pya~4!|; Iܙ$0!里Nl;D{ _ע/?sMt'M>RE6u%nV#{;1[+DLjސI[>qRUV*Z}'%Ԁ#-kS$+~lWY L;PYŌԟDA*܌d?_PU(:  ׶3[ x«{ʿ5B]OZ̨IXq-@BFڑ3KCmm8 Vt@=!F7vfQcʱw(l_`7#]ؕ{~9xWb~[ڮz,}t8A{OR'HL꒠A ,֚*01P[k M8%WI'rQB#wCG־QJ6Fn#HZ7N7Do!#pT_]XX FOpְQ+mw۳צnN;JE} ~\b҄}]jN*87V }bZX2rXOIWOn㧲U"]{qh:ÿc%jWh0WY| Y4c7uMP[|P8$h xL?? 2vlk{>5>z+E; +g\H%:ʪWe!QÑ,QENL jյPwsh?&gj ~"#]]A\*#ڶ&.4yZD؎AyfpaT8:ZՒgϱ zQ5T;B/TLxh6za 3sdCNxǍ [A'bh 8e~#'Uo2b͙E6O eDiRu"8`2䤾߬N{/Pr,O՟emp/"^$&_YS9O̬_"row<51-kZq#'rR2%(Y9qyFF{aH= W@)oM15O$ZBM}{wdЀ8#eSAv:م$#6LފgՋ"v,IuMtgS2-vpp w{c@M+?BK}A&.DytN%IkROco꤃ZE9& SZMB + 7R07DmJ5=J2>DVPi,&tJ9sS1Y.Evɋ~uC {ݙ6quDdpb}J܏TkI~CX!܍07>񷯃pl ώBT}].?`ycߔKۡzDz(هVW߷a`PKu?T01x*sgui2'HqMT5sf%NC,e%oo:{V"g?+"#l )eȫ:~=2|kCMcL=@%29n[ł.pm zA}ǡ1~M0ǧg6T&=KE$. ,%Rw <߆۞hu"y. K!e"XS9OyĝR*,t4y/G*F`ބOրuǣH*טAYܼ2%]-_~w7B.!E dVMNVp^_̕ wcc@KXb, h% a,$vUH.NVad\4?tkp,-t|!LI|Xs-9MvLP0";"km=1(}MtSqۨ#wbydF V13آw͍z_KJcg%/D![ *)%/֘  ŌIE&D N3?>"1U/&;X cϚh;nɷՠ7}e4J -)cILMlxpMiNP\@e}DN g$bS\ z,`]T ǖyiE9ORmpFN ,K>Mow|_' ػ ВSCp|@~ޞf%Ր0 CaBG,'O{D/Tajk+j.͹3΋зO|J*$< =gea~#1{`EA}?9;awTQ7'lz*JC-9i?2(X@H V.CEp`vE $09RR@J^gIc4PAXzJ[}E$R`y/U3d.qva2+ 0@C\&زQ`\aA@WxHsRP-"gq[ĚF@dg\كūv/\jv%mDyC4a: ٶ@*@ Z΄-8b s<#d.Cp$2EۥbyU\|g~㈿=a}7bt䠋yv8ZaIGj'đ,uG)Z{mJOgށyH^tZLpws % A@¨2YLjG1(@Q3"YC2`/R8»!\4hlV\fLbsd %{%ʾ0<;MIcg#y6L]Y8H'em>$zzK0W  Ԣ[žZ7o! X2I"7qB{AP΍39t1A+xW.fmRñz\?$4x=7%5(@ o#'~)+`&"sTA |, [!`G9øFR@xte]]plR8%WB:m(ʃ8̛?yIӜm!S_)*6Ve,**I{1-8ſ<[ ?Y0ԥF{񈬴] eM(Ш Y3>;hl}lWHp$yl2!HAQq ^-u$O-Jc2k˰Aq$hFȔy'U;H _5 -l@QCň;qV\`6᫷jJ g-y@_]PQH86 *!.ǝӎ.| V%JWwӉA1sբͩOe5Z| 7HnOkEP܊o̢~˰ds{ɣ֩&u_cmhK@V"!|7x@m _`sw~.m0f&]DjLѰ)mFau濔YA 'L"_p %+1E#13]^$) e&[9ݵfu%4`2 ې8\+ŗnգL7JZʵ),6QI'8ENkȤߜܵoPlix? %FEiq"ʫC2 A 7ڼb.?x=:Ö'k'd^xP~RNnt7,x0YF-}&#m}j/+z.1gІAwn >|~8ʐA P ꡄ9Ov/^>D^6uV;^#hI}V>G~m~xjJƜ!M+O~i&:$g)mQpw9-M{]qMeK-,Ѥe +&cM!mXDДugүiֿsN_!%ԃtVJycV6Zk90HK/խz.] +bPVypV`5A -͕JJ qLl&qH[qU%V\zzJB%IQ=nnգg+խ^SI*쵂{GA8t_ N/Ud4W y.7PrC!QDQ3ݪ郗|6V5hhaB'3xݤv[R/vqA*ߏNm쒚B)X`q%87@c!hҎv)N7?] `ivy+qd&UPG { m$sԪ>:ԯMQVL@z6lAލ6L8v42\&-c$ 0S4SkbUaȣ0 4}ã64d6x%YN6 swd G\D!=^t7u`I4!w'kvghJeXxe7Gm,uny2AN^z7<UGQxW_ =՛P;AFm'y7]|9 xi6bM-d")Ks@Vu1Zp]>SvZ r0b($&;jZ0ыb7K=6`nHq(3Ri4j Dނ 7soJ>VQ1a(3# @vh5 $u"T?ki姓 &(*qeM%a #mB9c~BƏQ3Hm ɲ_n1ҪګmEC^qQf Hy` JG;k"WWq7[BЏ\!4R5͕a%Yl2LկV B 6ߞex\jIDPv.uH&-jrH8y"}oiؽ)i\Z`+4j> K7H<]5X%3J7E勨lVH8~îiG~QwDTfyilY ]ne@ k7݂"}AbD: 7}P΍-y+ yrqLԘݖb f>is5;q %]xri TZ'o`iDd|//ϻn茽d 4ŐJz6WYG ̷򢉎rE:ؚHrx:UL4֧ɐ"̥ b/ H@9% VD'+ce  kHI |m~sNu{9+5|I(`4~4K?[\$C"Tt*7"_F" +@|Jk6,NHgliRQuXLhQ84ܓV4]dWl 2, M*B [)o/ >@%Rn==&0?~3թfFP2'&~7-ˁvlpfME4;"* Ba{e˰WgBHs_1dA,iRr`[L2P3ݹs%jAЮ 4B~0I`9ODUH#{3eG Q5π׾=slBd+%:UY8&#N/k{8 nԆ 0ꆦ؃wbD 0 %n%8Q! БfˏQ)(_JNE/!_ 5ʷpqHl"Eܒ1{;tZj>Ңo <^Z.k&(K|h`4y(%Zb$",A:q!%桂{%JA[6z1oth&dڧi02s7/'yN+RO^~2Z_OKVo5'0d@Iqp Q82y\͏pgJ;rn^ 0`;Uȑi\-`#rf;v8T{-B3hQzf&s3ò R[ v=?  é[t1 u;UeF0/'ǜSFԋ3xN:J^SJK~H'9axߦv0hNٜ acWNj(d7t7#Į~7&ZzTFuP"Yc7нxR q&Bd֬xvHO alզݗ{aA5VQ"[p=ܴu1>bW9AJnt9fsKͿ5nUez~BGz6xQuPQ ۊʭu07&BZ"`sr!\wΞѡҗ[qvF"AAH҆~-ܯ'u]셭pͲ''e2аpNg#ffDw~B7;Ҷwl+Vu!y7y6S̑Kh~$$=+ukDޚA긹jp.4,,u:oՔ Z߲cY5NG!D%X-UyebNgjD?.Z^eL'95x,0C@a X: S}i;7sL6">Bs,-slyek:A,PvŴh! KR]bf pMap<9L%#XNoܹ=' *e _`S8ﲪv'#Qubw?a{es U#)`SuEPg,{>l١y3d GJg\lÌ|eL"FtҲxy?Q]{^l+)*ӌǧyB|ټpj&mcd73[H7ʻ0n|vMr̈@LHVy|$4WzkۥT=F:"oSE:Jt+т,gWX-J$Wa bR e[Nd-CplbtE crդKGPsf]tO-HdlUe Z&4FPxTh zm~<=ߢcuy(Ty߸ pg!ه, (x@HIfp$q׀DG`'fe9RQ.z\c SCLGn^q#Y?_ L'U2FJ2.%1=e"P+dSZ/%eiNkTn@s)fk ґdZ;fx42$q)k wɻ` s^dȗLkҧcnHxh3G \._(I=X_6Ty[_yϊ:}AD*i6kjRVM(ᜂ^e5;4lQܶ5*];<1(s!zJ>Bb`qx JSC]X9|ħ b+3z-]s, %qOig^u&+uEfMpdޓq+<=.Li-cmpRZQ,ÖXޗg W"_y{S+bf/o.>m~61ێqFBjf2S:+L^to( Ca^sƃpKT\ɺaXϼ1w=]FU|zs%|+qM>>2ƜXu1m _ l\i {I Lc.N!Auym6&1@ja$U۴LĒ4T쌍Mqo%31#:hzG(pp !\ŧ;f ~XxUȕPXdE|Jm8< *z irtgs:AMP>2ϴ 3)xc,v˹w C2pLRz_ C~gD k*-i☩hM 2dBRSJdTB9jqHW|}|XYq+;(&pB ,&| @`gVqu/eZ*5mAܲy>Ͻ|>.аL C~E;}eoۣ _%9:YWao]q,[y'8cv)Es@]YfÙ$Io/O%Mp9=TYBhHBЭE_-O\VӊbƬ꣊(oqS e"DqoF[v+aF+c+[ot#'"x,\ta(%`ȨB`)Ʒ=nr8X%:l}Vې" |jz `goӍp@F6uN(DmazzX\.f=9 :wpȶny?| c_M>8԰V\]Hyq\3p`j R3Wҗ%f& kW8OYFaωmlX #D@c]<O΄p1 ػPI%$2jV^0P~2~˨P@PQ@Xu0W rU߫:wRx3&ris㞌篱!ݴ+\\ >Xmhn÷|fYdc S_\}Skۛ#XŬ7$|F6dT8| Eo<<@ݞ_+!{>؛'nCS td+VM4bv = iLrQ‰9"L` {D a #P8 ]\eK TGHl)^ y<4#80D7%麡סok9+.]3U_U0{ɕ^TN~Nl8Σp0RptH/}"|ҁ}B!q|10LPb4J%˅izaen9jpx(ď޹C%M mJ֐ _7Lq(XtH.YyVVuHTOs4oq @%d-1âEhUBPM:iԮ -[?[5QʚtaZ?ĝPDӨp|,h^ɣt1VsY&lSݒpǚpoDz=sAš/ PwenڧGB.33C"-bCBM ^x)&^eSl yD9Kƻt͑ s!x +M`g |@ /X ь/]Z Al]9XKsߋ#t~uU0Ḵ$MNq6)uFy6/&J, ?yڬze?%}ZM9~p J]o-S "8kNf٫gXy9A5Hb؂$vNs8^p_]>3TOa&q[C-K{,ԡzMȲ`"9.m" WkLkoVB fN n'֛N7)TBixރa*(inUZ֊!hsυOPAҮ Dभӯ(zĸ%JҗR$4]Ma }wD\Mʣ-zDŒ'VWglEN zde˷otf|pқbvӔC_¹[MۣIɫm<;NuI6JXJׇ6\WwŊ: VѢA>i 82FAFoxaMzl+Z==Zq 2:Ep<yEr'<{h}25V'&opp@{ lm8KKX*W;TUnf~?"߇FD"R]@5.^,y4v:';'ײ0\dL M tQwĉT qyP =ǿ%UFq u,ICZ5YKjD#N]ajӒcl8MkfMGwhkɠn_Lve>*p븵ҩ N$hh:<@b58gnټCyLH;JK?~4:s4wYOFE=æ>PQ 3~O$98?P!̂F'4;X=WlۓD+2V235@ .FF0BW9F[~-P0P,[ԈliY>L<mg{YS[TWN-X": 2DC2-p}VLw:Ab"SmaIr ؖ`K3>.](O f۬3IS:9х%b(4o}H--]{[Z|E-~uOj0|!>,( ~q7w"VeŃ3Bd`.A\VX2ţn$ G1Gj# |m|@Q-*qO;90 xp5kcyFXX83Yy`d7RutcB#Vy;ʾ哑C ?R}Y{k ! Z~D,iU#_YN׹G3WIƍ% hmyy#>$Tyý3'-~P9^g B%cz$iczȓE]a׺L* he>/(';dx0H9栴 jMۿs/O<%Gc֙!3bye0[6wC+v7H%9.X~’r'fJ-LUOYxiWr ԝko&@!+%q37ng+^]ǣnMk"񲶔b e(h`dQzς; ;yg4GM4AMʨDbזmLy_nU)M;gSҜ*{\ (ܾ翎=A>,ڂ Fqz0@ylμIe$Cf-mIFܩbDhz,WeN?=fjXD.)0T0Th'H2 mB5KAMx^:/A%m)< ČH;ZBءS< ZW?_C:!p%mJP5e;Q/LKhp\6/ O0?{x9lQ_Ы@|L6.!1^0AC<#I@2 |3O޴<[4(LDo.S A>xzqꑈqP"FNRΧm0}E p͇y/cUaD jF1壕* TDr9eiE2x_oZp f!~6NL[x؉F~VUB(u]Z\PKS?lXu.knLʬ~=%#Qixu!szj'J;w%_0 OqXzq (̂t4I1/b"}0 Ho2BIZ*uo ]|KG3zE{ls ŸE$kf@F<2;;iSzH|]s[,C!t |8h:(j>y@$QSahC\ —"xOMV?<' "(zCPK{GKD撐U+M?|"o%}POO8u~z/r7`NV o`T=RKq6䭐4!+R?4M 展L1XfCayM\eAnҏ / b6W]KK3H-3pZB{0đ8tWWPߡaچ[oP0{2/.0W'͆vIcwm0{s)Om%"OJT/QnG1h֟כ`żx'Fglj$-Y\g [kE PYC5k-K}Ir/_}D|["7x`V?"#GXYhpp됮퉢$X"&D LH9mA15h^ܜFWt!*[Zfk~,8;,Unb&[r. 6 XR/1Ȓc .2$Z+aW˗Ge 1]f]+58?DT_/q}u v'PN~hf9qYBs kyy%-sAQ(q ˭g v o;54BAٜ ̋ 5⊄O|!Csx~r~/Ql_՟}%@*ߓI&zBB#fQ)uO!U`Q[" !>*p:Mܩ"/[2]A:OWaJ}s#+3T31߯Kj,<9EI[Z~o/C6;`診or_.G;/D0qEt璅W|VږJ ȥYD_)Y؂;jbZt#kH39辷J~: <L$&FyV.gW奺,^l؎o34'6*IkQұijh|Ā: ߮J |C] O=Li3>uO:10,*yG*%Tq{YBS~Oz2k;y_fRQckK}di_ǩPw&뚷h:22ddÄSY!shbQuRUcڵO.#Xd&Οl"n_Q%YC$!:NO|-hh8٪)NtPUnC)sɓ6LP*)wZ9vApMG +#WcLYnV,Lhmg,,XMANWK4p c 9$`bƲ4H۴#C.zx ""؇R)OUlu<[KoBw`v3#u墏}5e;}j |˝ !Ԯ@JwN"COnrZ{26a6_cd}P(s VjAr~LFњY"$jXL,KR4aNl̹UGۤ. .>pA'\14.<j'XRC[aQ N9¬y诡7tEt0 SMG8 /%&MgwDϙΟK{'h s:]07*ؼu?|FIKO0 Dդij\% %[of؁L"3BGg+bXvP*GI#1al:A5J8jTFk%M49 Y)/2aV>  ? 3Cm#*"WG{+yfUؚ,.Yɸl.x5wt_$sQG{@.kX-B(| NB\$`( Q78~;bB*=*ٵʸÀ/{|$bLP>_K?Ž,5-&ϻ^xhPF !No}n9%$OXG(O@& &e>,}%[zj=݈e!_i `rxE1ތ!fluYJ: Gm5a,t:N9\$uK DiOxP xM/~:qp00*mxH!bQOB^?`w,"B.d籕Iwb$,:|s"AoOL>|G1)wpPO e k҂7~fsn 2ul8^C$qi빮a_HM^v#b)Z!dEFQn nةze8IZ>DƂXdͪЖ "ߣ"2zPQۋ(, ٮ,ܡ ǹzfZEu[a&KMYꀝ0鎲VyPmJ?g)ѶiA;^7(.|Q}6xGVZb:N,e4dS Ne8fF$@dʮ |1B>O՝c'H4s 4_cqTQqe;Ǫ_slӨaV#a<$vh"3\mݵ}ʢm<_ ?gqԿ+\ Tn+;Œi|pւ$ oy#dűMO EJk &;Z{lem/7gSdbSDdY#FGid!mQKr_ʧX4BL ?,:!Tfe"/ y1F#+y*h" )ISšigPѿ(Wjy'y\VT"jƢw5YT%q2x,JE?Q1.l>) Ktƕv1MjWRpV,PPr(ht@*$=+I:A s9y׈ej#w 5"|6TqɦX&*b܍$ז?xLdshPJOz*Yֺ M M51 kUs 9C)Ķ)$5]K>%bj:̲M0Dq 0l\m~ՙ/;t1)`@*"K3D;*n`d~[0d7K ySvyhiٷW4Vy+Nގs'ճD%9eza]y7 C==RP%@p޼uGvP $P L盘w5߹t0- u^-e36g@*xG"hm\1V7Bc^\JeBߝabf{ܛd[Ws CLa?MC8cOi# ּcMUgŌ^ȋ|> |s;i-oi'*p4׻fn2D҆+98Alfd^+٫r`%a6V3d0EŸzFjc=0wwm=j&]'%GJ8 xܑ}r4Pq#c$ B6WE֓ɑ)LxY ?4R@CLR13C)ڂS̞jlf*%0m><wy7]QRESU{5'R-h>lƘMļvjˀX03إP6򘧝?Wc[kwIaY$2AyiyNaw$HOkAJC9n(lVfp9a|j=RMRal%g3oܨ *I3%R[5rBϙzbuUf٠F匋"vsQsyǔ Dw*whO:"xUa1& ߣhwMGgp>}֫^vx!nMs^-)^)ja ;r.( '򄂴iG}y -9꺢_bDܿ;CtH]Ô"gr= 4lk`Dɥ"=xyaA'ௗo 06~ކ㒟='$ԾjxTJ]#IZn rUNz]y&ۅLY=4Fi ; ,s:0t%=ߘ(UyC}!_ %,gs1]?!gCӴƣST-"pwG@*\uVTn`?uKq , lbCJ͘<~!0+W = Eo0 3rޤ6=Fa"T |oG/TMlK~# pbü 8"3H0pQ5{nF/K-ư|K@̉{E`/tkDLB <94 ?Q**L4ݙ9S4Kt1%:)6l'~n`>؀Zd@4 JbFuݾD],Z<ijz"^6ՊyanΡѕ\ gQ;@H s*5)!: hRܼl /m,|(~=3oi){xZAw1z:8?3Q#65Q3d8X/pkkf+|D̹ p*Ӣ|_ړެ(,_  > RGg+Otjd&XBcI;Cm_V{~.+l^I5SW8;31KwhM)K~FVȽ\_d2O^JeSgk$V> w<{.`ge:i<IoO\SP+i{SO_>boSՅQdYdQ;z学G,G**vG*lr%{!2 ?_2=Z|W?]1mqe'?&66KRv+[A{NXfGKi~gh]jy՟k> eIjƛq ,h wx@$IMJ~<LZf5F``rHhT,$27mChnX 3ԡ (+w>BgYP.V4܈Ae`x/Ž;̅Ʃ=5pNyvYPd:;}l.`ׇ}#x%/NI\MsM\@Ԯ <˝IV]WMQ:GP?=car,TLqZ jˆȀx["狮N}|lGsWϰE"вnQ!ێ_OjPy 䔥#a мKT(AiQbQw8T[ {+RA_vP6fFVZr*=EXq5~"נ}q0+N^gtFdbT.^h=6$ W"R{¶tR[RwAhpg){~$C%ƌdO*%jm;Eiŕ Jah< K޴{"3u^.Ҏ V)5jol,ڙ ᲄD"%Q$%_j3n.tbhG6tR,^Wr2vbJg'j9eۘ 7xw$1c qSA}]ˍzQ?fN28ҖB>gcy"mo$vЭPP̗C^k!q;gŃͽw.L C=10۸Ej6z4}~*~ <.J);tk9eysVL.<{@u,QA+DP'S#U?(,EErJ{Y˅-ٻ`nW"GCKo07Ѹ`~ƴg={EGbeCc,tC߱$bZv˚j(V핧FH]DQG&|$Ϙ` y:y=ÿt`}ֿ6U! [QLa 0ڦH'3Co\9cji>Sr n#x$KAԅ% Ĺwrɏ\MP=Hʿ? L8ʯlx1WJiNЕ vd֭q+KOGMm%eh |:tŔ;['8+.}JN#TT6saXZEFAQ>\@4JZC5gO[eG^blcCiOphaGkݧX(WnvRgTd _MlS/=^Zeum~^`X9ۯDkXY$]ڊQ8/c<(tiS@N#;c·Mr]MCs>t xF92g9957A}9Ëapgt~̠E/`p(6yq!>՝ e,gu,cV2 ޏ2م3_$IԘ`o<ʰyT' GcKe\+b=EpRqo5 / gg4{{LuBb<%}DP8)L{y=#J oc~{}oFL4?ޏw6eC}}|v:AGWHM6P%L0+NcABU}S7QrD@>j-6*$[R ]J{/<7ĞqiV-o>o@W LPy`#U)( c,OUڴzԍ@ͧ'mgAo:f z}@d+{0ʽpzi"Sjza@N1⋬@I;+5aThGrSMxMJ*EN hqKk8כʔUI.OZG"dni 5٤Ki }h#4/l z*ȿ-Q=M kӴ\Rſ$dأM^.$\p+擹B a@qx$9 5oIa?n!IÓsjVu8rz3Jf1~}/- z103v@0[ِW}> l`b}vCL u:ՑF]f;2+{V|uokg%hP[¡O'(b wtG:cdDtv :gBvmB CLn 'QpoKAj fUC=|:Q >iZ1ç?0+6Yoyp!@̗H%[r}DGC=[&b$oűb,Tm:y?ƵlgrxhVrXcq)yU=  F1Eys[B"6L qBѽ̮BUqܱ_J6|O41jq̆X1+Ӌ&̳%X<NvY@Ӑ3YVqU.ÁpzrJل'{.DUpuc2?U\.\/۹Jo Q1>kG㬵n[?hr %4nSܱqX0&WqA@HxW܌AIwTt;gI6q5Hnk27y)3VZ$?lx GJ!Zq#Dȃ5ڴ4>$XT(>ԅ/Tn`$i6ׇqN) @M 4EM\n};ނ"mU,!_ |a]9Mrk@+#K,$7 1cP˷5hO5k]3p[Tp M*oT[NW w,t\Oj/sRWn9UQwـ),ҌG5ʊp-('v2>`G8Tpp3.w%DCUf5.a~J$.EUpHyGq+ (}{L>%C ykNR { N0Wp@ fL=S ڏ$BY<,T_1^}jON=N qqm= ~S !D)annM7}o0 p79Ok-,_i\BOyZhMw<ݭ(1p()6zhq oQŏm3KaZp,T%W}.~8a}n|_33Y;Tڈ5B}CoWiqlۭj2М9* n4#'mXLkkrwf. zO|)j81l!nDdhb&1:'b[#pA38^fekRA_#uXd)uK|{rj{0_g\3 t;EE%оP,6{%ɤw0?&ˆB50H+Rɑb顗 CwCHyR ؠt\)GT@cmQv*-mٹVz~gD >wʮ;/+;lDsmߒlԑ70 ٠Gx[P=z [XEEj䟘2Yŧ"enh :"XCfVZJkKL,F^P.M8ѿsKЄFO곊M 8/^J7l_(a7Np1ۣ z}^ [t5ZwНUC(luz)o!d m,z+^9Ey oX(z9@Rޓ#ʼhhH၄cC9늋}~[Ei&uC"wm}6|楷 6K!ay] wi|"6ҩ=_wzH @3W;gkb B9&ΑboWGphzd-$j4#C˰..00?j>tHGT2.o<<V?܎ yϖ]tY=1F$bxS{}sؙV7鹟I(-2B6Z3FG%P=$LIzP^l| tW~?Yd͠D8i`B8{e'aL[Ú37G#a 4VEᛂ 5$F\HtË Tby҂(iL wZ[UeQA@쮩&Zb\×Be*h6R/G߻9>̙edUh5pS2J?B<{ kɑ/=L|YXP_譚(.&҆# "5LBr߻y_ Sq|=7jܵE"[ڹfJ9#ySƒZfSZ&,~-eP-{ v(UVxHK,AK|#hH Q%_m:'ɝ:{C%ڠ= %5]2|=IX3v Rdީˬzx%P$V :R@䴄b҅>cUeDSл qOQ3m/G9X͵[$C-4 CNhB@p=>;W{ZCi;Uj1Dԏup֯,,\12lQSl!/ȫ>fa>II4vږC ᷠ):<;txrPG9Y 7#jyšzf䣾^ S5:gmH:czj=!xD$r^`w¥;8Mdz)țбuef{ _y[XnMߨN7HSUJ?+WSt=9γ)+VDk:)I F`ek %WR8yѻdBOU/߁nx!R=0aT*"niou)iW>K Q:i"Ha?8ZiS^ݜϴ ;Ԉ i9&{G/Gu;Pi[y%D kq^8OX7(Q"B 1om$-( XbB2=`6Num5+94|ӆ@T&eJz5KWo-j|&ԟy )YKF^&F*)MD.{6H-fDpa-"-Ocm;. QKZwY(;"tRT ?^P+k %е)(RϸDdP&uŚ=f:]6 d->H Ԑ̖qi svݫV Op mgS5ZOy!H|cG G\kpDM{\ܿvl 94HEb= Me ͈P<(^<ӄ ЙxCn0pA隚#jزd{6V;ݸJSd<ÛW:|X-`&pwF!Z5$ ~i vWu+gtPIyqu<a)!-nEbjF2\ÓTH=ӰdՉ&kY<2߷Z¸|NzyrE`3dR RQGyfL1$hs,^.6"D+b`c@>dC*yf4q-iL6̮fGCO"b,@C!N t.T.@J]t7Hz.?i*v/, 5p 8 k)ը.`sXRmq4de ŽX~i2 iXS˩Dp""P Sk:7+ CW*]k]r2׉8' !f !`wV!NEXq={m 9(Wa䙪c\d^ŪB/>덊}D= ,8i1V)6EDZh>='LIJd' OߺmVPRj*:XڴTN ?W|icFϺo k\| jt욅J^,Rj oi\͙ćG'9-)Cd*:R^t \P@5%(Hyj]qwSڣeVqZR,cO1LCؓ~?h\u4٧qa@sCOdiញG{DI6>:˟cy WAcﳬ>b"X< ^I"l]P{@# [jz}|rB9PO k+IU:D܃E#I>[޽RKe:߷-­.>hOFyVG*1c @!?e"Ƭ<ä~ٛ]LEXNzmуP7U!Q/3/XŞLe8Ηkɑ4ON"e5Ę&U6RHބk w-:uIjtc65 .Gɷ$-&/=JlK!z֤+iiIK ɀmVtr4XO>e{iFW61iò?Fgad|>6C^{kҩMΡ 9⯮͸0ʒvQzw_gSP0e9 KdX+<@N'2!->O* LQ­Sݙ[:-_ԯFz~d3_>NWtnhrɡb?J*Q)S-Rt'.[VAڪ.j W'޻;OFs*%4$jXEbVGq)$doXngl֛L,;뤵]cJS4[ :-yMu"pȤGnjlʽxP ^됍m$ m`|%d`UiDvfz}EkÉ2ψnjh#BcЕPMMО-,VlWg`A(~1NQ:.6TeO*nٍXʔsh*)J$Ik&8@Y[:I܁GZ%aq;JH#GEi6tuo]Lk7[ӵ+}$K~KMQ=}Ph|#mq/ a_'D,|q޶2ڠ4,g8%W\0=\o ]-1b'yimd߲߹IJԡWQ>iPxi$Ї=,69 Ae~%\z_`_{V':sLtk] Y Tj_hfa4s8/&ӵ~9H 싣@}{6gzf}-H.u5'j)W"cz;ԫ.X B$*mUghAA< #d[ . hXjUK3xPwSv%v'꯬=YRd]oi3v33ytH Z7f5k3[?.bA3vǔڼ)>bDsY1^s9~lC[ى1Jb}%d1_f6)fC|AjEo][R\X" 0JUNȰ0ɼ-gs-f2q [?km*v : iO=B>ĩPHVRQfBe<ȓ8( }fʺ_(Bw *ůJ]>-3Е"VI?ZC|zmoE8e˨_'x2ŏ|ݝ2]ǡ1W/HiMH QN6^\2ʊ;]&hT֘كښAWaG;や+5u Pµ>p4j6:*biFF?qeSay ?$ë7K۩4~j,a8ނz5E",p$Iju1ϻ H\8hnrFpIK>spXiYD&j#{oz&ตEwe2'~='7J{ {w5i*C[_Ahm ,AuddJnu_od{:݅xn-)Mʤ[Vk{(LҔnA7n(qaݷ z,(K>;)ƶwAw=8[+ۖnL;As]W"@$ k R͑Z'PDQ'@[~ם~s\;e`} B$_)z0*o|>R*#Q_U r*5sJk17)}ĹdzlB`Щ3^n9`m3ٗy/ס[ 5tKjʓNROevy6. 6yg:`w8t|+ m>a@GE7iFya"~ o行B~/# I"#512p+ B\[cw+و[cy-S*zs9m0*; 4%OJK{{^g8M_(0V,SyIi1JXhҟΡ{k,,rKvFK!9sWձɌ%*]=- ct,K5q warBD9 ⋔-h*Ӆ%L?fcWlS$YoE{oiΗxy*}뽡VEWYkC]^RXMMg|t `Tudp#WQl'AYGޏխza(ZcBR̸=>":Wfjl'p\q ݚDizh@vV[c5j*{GD}IIDE_KP.(=0.l Uµmp WDnE#v;Ж6t?,z=7hW%JoH_/@xxtx̰E#:y$b1),@ZilpxЪ1FE&p<-їJM^>u 37k>P<N[3XUtm/jlEnL}'C5A}W:? rjc -1 zoSW쓨64)@RXJcvɨߗ$4׻Y=B&;Ykڭ~y\W&:qx I.JfgI>_2 ꉝYӠr[Y1}'dkOj+moA5ޒQ{j3LMYeb81&~OBNq;f)D'lyv=:\˃ w \DkC5mfM`VPuOnwNOI0(J$n/(\"jL ځ/C; 6єzdX#*5އ[sQ6@6/,_)rLz#o[0wӭ)K4e~g_Ձ#Dvh^agY B/JLv%́|*V[u-=hvY1C75GTF`Ox,`AE&gr5ZF#bZ+")A,p!?KL};4%ơdHi[QB\@hʞxmM[œ*C{M~U+K"MӨܩ`;'I#nu!%n%!hϢCRJ8=2FѠ9Q +#]!G5|w"5o(8#O ~UZIky <8J(Uђ9q S&TMDÞ5qi>4DbҰno #d\?0Il)OƠ/ITYڕNev]GšrowUSNf)ƨq;&X6֫dEb9^V4Ŧ)GH` ڷnJ]qS?$r!8ܧ@$*t4P+5k!Ns.5P0jȺv!pزOHZJ]& p_uˬ:̇vd Ljpj:ͳj|aM1 Jy_F `lHUV6h5Z}ù,dp]23IY ˷E%1am3eJM -;L4$f /"Cٴp*$l\{޸V ɴD"V•BRCN* Oc_%%tn!'!x>`A]egJh2VDl4WnLxăVs _v-gs7AM^"0l;fu"76mZP}7[ nW<-(z׈$e;OD PPqC.2]lfm)^cX[o(7f iz^@8SACĥ4F CCJ}vvZIlN 'm׌yԯf4% e<-jw7؂<˙xqO墱 B<8S}qC7;}DՒ ЍͿn0Qު_[>|F#nȹn t EɂRD0Z $t_,+ ՗aVPݻULa%W\쭞sٛo4?V&< y"ǎPI'y1VCQ-5g$CS}6%<)Jn.rI Eڌ;%7_8P t} Eiq;-P 0ȤRn&j8_)4 /1}TIp@ "w&X74Lr#&:@͉~%pacWfV62:j(dϠPN"27 ]H|3-{Qݴ"VA||/n)Wim#!F6Rs, ,ϋT^:`=U[D~(pY-V:Ɠz{c\fڥ" gX;pU"]ՊL(? O}DEkAڨXjXfX#X=L_klSSaðYDAVm|c@$\%BW$n⩿ٰteo]>#pt{]><\ޕIGr0(NO8BܵytYx,ٶfs*=q}`GԐFB1AH}{A54%J VoV \S $QU덃sg c;rSz21f*]7=P%~o= ]'ml0.2\R4Apq!CEa*?֒碊-oq[lݟP FaK1)D^JS1) pSnfӭn5uCS<{6K' ѝ6~vH) !^_~C'˩Rpm0@vB}*:($Fӊ/Lj>5FExuڻ$ a(!^"C>G' _}xl_l"!K' C3RPT$ g8AȐqYҺ-IRalG1ʀ(lU1vrP$I[0GPZ-緰Ә}Z|[ G 'v cą>8=A,ݱ]E 6h4 ilD&X]>꫱TLqcvcFݹ IȁN;eϕqH8E`^wV[P(VތttK2ָJT>*m9UZb 6IX0r3x} 1NM 8w9=K`-bRND!76{if?UDV ŕ+'W塚,;O}Sʷl5=eiI{.@dJTe.2P:jVj~ vХi+?AZ€4Xvd9Cb!Tnzv5/2!gղJSR=X߄X~..Mb7CMQaPom/nT;MeΓRa*<3ԓeOLmf ({k'2;GSl$Z^ KsLz _,; Ev+=nN0jռ~{jWLV/Aҁ[90QW5JmvbӅA'^% {h L툯SC;j.Lau)هlMA.yzpEI!<—kz%vqne@ I 4qqB**$yHNCo-To9[&m_b8@7 :WCՅ̔CH8K%5qnMS% 6-TFA+<Y|߳ZFLa ;ӹ܊kIa ЧU=yj=n8ziEx,\_8~L_ǠgU4gS~1q 7 ^d25EA( +f&T.b "4ذܒ6N +b>>,&2;Z%ǨNN>t s_sz #޾~Er @8% UG?uYљRKv_+&N|촨Oul tRDVX3+[/U&i(Y{np vR̘>D\huY"ɣ4 (t7FG6Y"ɤ7My?c?ded^*[xBZ_{evO9dn"A'8gv|2= 5,"Sa@`)c)In@*QU׉+Ҧ[EE\{, PjӨBz8xjO%AJ)s ȉ. ;'DY^h}Nn9_.cGQ,7#O"I/C7WZ#9 (A=쇴SйJҧUAƜ1g~faE/s _NcTC,)tа_>~N68uA}΀$;:6ɜSy Rak@ޠ ̺/5pY]Ux&j8χdo.sz%>)qFlYuސJhM> {jPy?{Ne?\rNx&z'T{qثT]!G {|#uaAћ lbx@$㼸x~ :nO7+,"^SRS|ٓxq7#]}SI@dG 36d}7e%2tpL^W1epԥɺpcfC M% VCvCnKn&82oթ3UCpWC*o)v h>q+cu lYNLS5,&@9b5Ix4&P7^YaM>1\ -H<ޣslL{`<*Jܑ3BHU4v$rD d&R`x>j$ 4^tpGEwAT>:sjgsB') ,C> k!Q04$0؀&iED{aV&k)"R9ޓΞ N|.V. j /Q#t(}ͬfb%#MEFW^z;ucǤ1Ms*-i"B +[vbʼn'&B\S'hvq-ߵ ie*MJ"Aek_CPgXB_rQƫg)UBuB$ED \)`_3RTnS[&AM~dr~ce OXB C]A>&R N{qr`Y?QXV/~Hظ~4S20ֵPV0qzAïXbl;/vD4GOQ:Ky]n;x.r  T(G@~ձyWmF$EkR;plS[)͡Z~PwߤՆ G Zu李X]9[dО:`Y6!:muTs\,A=kƚir),lq>Vl>@ŔPunSf"&V:'YBmw$9S]m~1K}8F=kҢPmJ f@-_!(yp*L|8[$rV߅p @לHN : &!ʹb~Vf [1`U>:f} NnZ;Z^p]?ģHb:JF{ppA+s#R!ɠw䌟Dy}rGtm6>U,P M*^~2_10B-މ!adéhV7`4ƂMa+ƨ%Y;0M<},^²(ǁ5 _25mC/.PM`u+/5Od" BEh ̤pq-@NUn-F,T<\/JqvA4rGxxc^vHhF< G‚fv@&Z~]ݞbUHa-ۥmWR@[02牜G E hKþq) 癒>,/W ЄW9e2`[)#Wal #%XK~=s~J"0S`o  ĭS `Ĥ=[g'0PQ{9̰TCz>hߪHiU=sZBIOX&YEmgb E! Q\ \ΪǴOMŌ}jx)'ru^*KBdwH%k3[_*mhb̾kfEw'וe8#xڒ{[W n,tR֐)I%˶NLGSX )^h+?9-Ry Ou8\ɝ{s+1BD=Wp1An.^DcaNoY@#?z2VH#so{"O)-{Kr=?H82B<#t gYk~9; )l-VYڣ 7eJ:XT/թ;*~F0e)OdY$YkM lVVPC&ّA>k~~wMF\K_rsf\öaTlϣg?& )Ϧxy3 MmZuŁp/PӥJu)~}{B_kgVmBIGT@O XZi蝹1d?꣍Up8] w'^8cAMӿD|V!Z'2vD 5i6XoM: [ h- BTTw-:5Mu<(CJ4,< SS&cP~0j&E HܖaHVP' 7O?/&q(/K';saC7vId:@:<՘\ygu#2sER>z`“]a$YN${^5i3Tu'9%8?G!)Td'J ۊe=|!6(]ˉ̻Y|v0Y&9%08h?mɼ(!W)> 3XMdz=U *Z8[rC thD%'GaILx4D60XI&dn=ÏCS5ԊNc` [tgiBy(Rŕ6XS;87vT{o҂uqH)*{Jtލ@T*F tZ֓ 8b/@( :vJURP1B% &&\F޿wL 0JX K0tW4Y2v uF{xET7' MݏqH:,y|Øئ^%/|!Zё؀(25c_!;s <,cZPhJ/v@"IZ0ɭ2 dGܯDqxuHs`9d"lkZð?lXY?T/{ 8U$2FCWN)cHYh7wf~DB$=3/ Ɗ,jV {`+aTεG=JwW/]7iEVZ4V ÐQ*_YS^jg{4AȾSh@*yR gr.Z&!1V"4DƾLrі~j<d٘ry۔ ʌa- ۷yˉ왓HW0,gu HTT%=?:~=J̞gqgut hkPU6y_S(mB+]7[}/ZPS•oVqB_7w0j zdյQ4!M 6VRfv^28Q8<¶әYV1G /"7'df*XLXoƒ]}[Ŝm P 8d2Ng6DlŐv-Q, ar@;, 5$.Ʈ@`bP'.o?dQ^Y9<5 b-<OM$ܒJ! 5K/pXwL K8> L3^Ѿv rw i=WJbՎLNT ؗED݂ssNͣį7^s &k;HsP ӣm|~T?4J%Q^r馚OL)39 ?{힮U 12~W\SȏM*^+J)rzOuA.]Bc3ٖz8*\aBv 9)E"7㶩KǍJI~lpSJ2!m/l+-Q^]}ٴ>~>uѕC䘪Tz p|J6=O7 o0 "{pZ nfSXPF!*G6V5jOU~6k'ggܴ6)I  _Ew0u$Lr;CO-yF!Dk jc$^'B)$5>*Ydtn`I7PK?~͋؏AIQtqޫ(~?Xk;>R6KtWp VvX/.q<.xqFa1"zUߞw*M0hXg>Bpz>NYtcr#cXF7tc7l~AQ]a{(iAa{W_1GN, ͭlr؏- 3ܖ\ܓϭWfȵA$*J|4Faǖjm_/CB펗]A)7Oh!0)M bCRz2Dp;]ZHp @n}i&Pkhl89O/}Yz[I ̨=__Z-ބ͚2YQVJ֥39KP6"@P B1a)ɿJ F}| [Ⱔ\k+ayTn(Dk_lcZ.1Q27}\. kL`8pjkWu$i!.ypm iV~M4AFpO)x\/mATp{YMVP^ LnSod%Eas?okA>BEǀ\y K`5'®[#h.7bdI0Hڅ q6Dq(v k#Q.Rb%stmXh\7{3|xen_oS8Ÿ *{LM8-qo5T=@Σ%| exь;"}Uݪnz6s&f%ɩ(Xjc.'o"d8ɣcPh7 W~ s9✚ۓMF5ZKw&wڰ "w4uS^>p/pݫJD-~X_5#嘻4ֆz5`~omυLr&Pb!{ b ? WhB$I$sV"vgӬ?GZˋQyv{h9ڝ_6tEhZ8og|:KiT11yv"aȌOkRL'ybEF@zK;H:«ZF+ bRV=?}~hy7©Y~P#P!.C9kSma-['@3M:F:`=ǿ"8Sh+vF"8qn$kgN.5D:r=ئAho)05zI 2sq )+#j)O4d1Yk=뵈(y~X#a8pQjh\ТS<1b n$Á64? g۰ŇKA;OU=|⮜* ϲuwU *<ĉK-O;$A 29<0,f|7Qe;L SiC3)*_C Y$SE5%`qqJۊ6.ŏ-[Z arlUk@}D'DDV+Xӈ37R}O_0>ך1-Y^zVtDc1hj"c]w5I/*OٱJYA7z7#S-[8#6﮿bfǐ= ae7>wA iɢ/ gȈ?e+"5b_n>dĶf CB`챴yT_{+ i0ێ"Ye|XvHN^QMb8X$m, ݌O \2퇧 =ȗ}>]q"4e4o )ʫ땼բ>@ifʊP pKڅǴc"&1RZ Kj}d^JNjL(c[~F6DmomHDf‹h:xQ"S:\Gg)zd<¬> v&2n[w*Ds,vb(kϖ:Ii!1N:IPn]*Sww4W\nif`Ctdy]HCM%wyc2%$G#<MKqw; G!IE0ؐȈz\欬n]l & )ih(WzW/"vNGaLGvck"QAc eb*Fg]4| [UEsS%3@I}t 22lg|PޤZ e{Z%B5>vz>, d9EdQ cHD9'(N]Cװ M)/)RoYuA?GD9梛 ?GJtugtw"q{xօ :(gZӋT؋&K`(^ JSِ=)`.FGNb<d@apg*4OL[W8 RNWSL zBxɭ{[N4pDc!G5? ToW"y_E1++>=jIcІgc9x☲?A&q 웼t qs}?3(=jrzt%*W#͹ne'@@m7pӰc?6:ᖫlpL6DOaN5w7CgmX&i`q)8FS_u-\)&m:m٧!D 7J*BmbN? ,6r)lמ(ɮb\:^qes(8B5ș'7.v(6hVSfNϾ:l D2 ]<7=* ^PƫGQdkS3 I*#~:!s,GMVK}cݒ]=͒_ᶸW>&Xsd@ex 56q<kHx̥qjT1܌;PPІY.>ea| ?TSwa8vy[AwB+|B\x.͟'[I~jJBiY/3rUq h|8z`Ƙ Й=TRyטLʧ!y|8o  r ]5W`gAn(e۷]ߨh,ee]o]|]e&1Oijo ;##_2]4n~ 43A<4m v˭!y_,}HA͍ iۏ0^ 1bK\غ>{{.f쎯@j1+ :i^]ux֢F  S2`6q`\uU,Rz!0Zr9'Buh4tX; # SyQW`[#:4"uN6\#εvc!Rf+LY:y.4MV4 QwIlVJ>p淾 qk*a23|8Es 't+7fF/ ~F-ժDWCsQ}T~fZ!;l 0Aec4ReMF.RQni%id\Lci c7/8Gt>dKHi.K@etp(zZ;ļv|Ir%poseqH)J(a1/=iw#vcy/#iΧtF =萧H=Qᄛ.7JjF4@m@0&CXqoȩ-p%: #YL#?>KgD$59{fUw`2} r"ttLj\̌UňnuCq:BK|$хmTD_Y/Wý ,tLA҇HQqQ5 S!w֒B*l B嚤-5,=kRO_ C&^ۣIAMmp&Dc) 9zh !]&zbNndMtȎXJ0NZ"᧔_iRviN[HTeyppLMߪ0qE[h~uYu.\[$B_J'/kU 'CS3:SI'$1/xN/<}T]0U6!!%^PMur񓓨4u`Ƴg'(D*y-:"'KCV1/G^WTM%*<5:?exzgoeD s3_R3r@)#]Lm\-MlI xyЁD뎸c]v! gw޿p3+>A?J@_rf!TKN~<"xùHJIzkcQNe -Ok((ACKɚQohLV,%Ңo[А8ۃRQ\q[d9p[Bvs?4zxCr\s)t ;Td&t^:Ng㆖W=X P .?g.qʑy9niz[_`nKՂm=EE4b8D"vyI}Ȣg<}||w9`3a}J4Pn\zBY">x-HFDL4Gz) G3+YYn݅+&1q;ȸ  MDMRb]*}kaGw$aS;ڝ۪5E/5cDrIރpW7׵kv۸EVj-(p͏:\^8.L0|ڸlGPG'2ão^n߼24ݳM ܝs2zbWaM+ ;5WxT+uX$ + Ƿ WEMݣ5eUY HO lyjoR}^)ܦeNEq HȰ4m={"ΌxeOM>Id@]-5_hWD%Z T6 % ^HIK.F=MsT~}Ȑ,g̡,Ճ h5%)<TP|NGwJPI.6Kgagse0 h9aɥtIo䛤B@_(Ce}#  KR Wk{ij`ZE} BJO`?X Lhpw$pҚ&fgz\WI/?mo21pw'iCR*( TnkIvͱ2pg@?5ϟ&)ڳA>᷉ ³J3BN\g it ,{}†%p9Vr*m@fj UZG}$q!s҂R*gHa:"3ڙϊtgʣ}7>6:xƊl e媧)$b;d"Nl70Ѻb|!4H?5Ct2SQ+Vzq/q5tp|zPI4)~tUQU#! L'ZX2&h!\7U=%h$4`uFO%3HܭNɚ_@nw*N>J^`r%#P,l І"L< _L vFFmN&̪umN"T)g~1Fb w W7-~bo^c ρmT &)av0`t]SD5eҢq閮b޳3b߄Pֶ:ygV;+h(zѰe|bh}VV?x[K]S$Dpt@̇;r ALGCz9M?Ӗ6ғ\.QЩ]GϕUV$JϬjr 'j"?V"aդyLog7 H7D$Z@7Y#01;tZY-ϘM7ի4.P*#vt Ai_mPYȄ573ZA2[r, S*5A1?L5fyʜXS&}z%+cZK,h? 8L*|;e;M9Eb9agD $G&`b iߨ+@BOh tApeɌ+!ԇRhOGߛ*%䟯BK41ꗑ6حiXLVcyv%q xQ_UFuոI$/;;uBK jGpтY鳴3l/6.m56d}l#~ ✩8:{uZN՜Ey?`5 X-)cogmJKb%/SYIw #<ˌ9f-6ㄐ}0еU";Zh.IN$rԈ~<` cO;?4ֺ,ITZ證:#L7$ ާiE8a5,ϭU?; Tz:&'Mc@I"?X1=0U&~ړMuwJˌ{=`Mv`˕_~uͱ4~%,5AAG]|jOܱv [9vG?,;x=ݻ1|xA[,ы< &xh}sG/Ә67Ybp]G]fP^-$doeМÎD| M$ /lK0|WvۼӀÎM)b`Nign \D,>p76%.q- ܌۟`{si1ye4|d*ĝoOE$!:35˙eVjL%>%SMS|ú*b\mm,7zqu^qj!Sa_Qw'H|wL(3iDZI:p8jd*}q%j ^(x /ì[k_k#PIjD$)W`ŭ>n*WXT[WN$)o&U-y,o72yD '۱N;|Jk6mhA`%7Ff1_sO߅BN:gf 2Zءi}Fd^X7(8~TBuEACԶ҆b@jUĶ*ڮսj3 v%ۥgN!+IiAFY6ŘEBi4%虒K\DXp?X<֟K+ fYbXnosy5RKv&gb@q !Ķ= -Q\;iO6hcYPYYo;oVK Ŷ`I1eo"rzqߧmMZ+Rv1l8zecG2!8ǻM;j %m^vPqp*>[xG~6y~.1+<姤zQ'j!kF|=}>D s;O*m/CP꒷"ohN_k{e'u@ K@Q*t͸0DzEW%,Li Q%Hz)'Ka2\{{l 37۠>&k fASOzR9W]jDRrJZ uy w@c])ih褯>0hc %]!PɦUx8j. I͚w:Ј>i-Xy/ߖ&fT(ʌ!#0 9*!#"gErݍ)n?+[q`guE]+ \$ 'D>+bIs|lԏf01_GG5c!Aa< E@fi/⽋3gx3bKŹÊB3E~Ɏ^U8~Qڥ SJCБ?FDEM"TՁ |n4u " /6F2\Ʒj%kfcf2':l $֜Grv 0+nVY :[Haگ]x?9o7<*h̹s\[J+}\^onctXpdyNMBt$CbJ\I@IJf\Y.Wp?"fʼnb f?Y]1c#Mڜ7 XS=d+Llq-+,6lb%`uѠ#.`hoy ,}ʗ5hN@v*)a<|usO,"#ٺZ# )[ +z$UĜȀ4ev$5Ql Nф3!a =³CsI ` ՉTLn-M~oV?Jafc(3?1lSh8[Hwb '< !vlmႥJ!kex|euFl;f]$6I[(vJ_cE!c\a`wL;> lxYS+EM|K.%ݶM-0?m?%pv'dgl)OPT9Z| =u 1xm.V$09{sSoJ\G+/#nyЁ#XP Ji_33[_xNlㇵaD[o=$@ᇦ ח]q РK~ #O =p <8toڽmru[+% umH/hU\?&l5uXy.甕U\/ BP&J9Zpĥ,*W1;7wJ;N̠ 3rѮ0!'V6ҘhBXdj tɒr`#3i80wq*۬(XHo1 F0iuI:`xBIleSs5Hu5N"Ȱw_|kh2Jf]+V::n__~.b5q~ )9WF3u2=G}Z5 $%8 bbl3vSz&c SgS^!גV*s!񷼞FHFj.Er舔Ukhy`h=78uU@L蠄GcY7([j|fMf$A xZ4&}ejdũܟ1I骩C*Thy p5fyQ8~~#z3Ƅz>w} *pnri^5qc>hso,>cP9H)kWΔ= a`yռ?zz_(Œ5S\Sm}Isn،]ȇ z+v׽+2%3oג^&XOII\8嚺l G^;*O$6)iWX4̎aKt!O#Sw+ |}ޑkHv7~یw~!7?a|0Йz CJmuB yo 4U5{UmF+S|v ND[//S7C;*a-Est1},sN:be;qLF,ϡ>˩\Я0Di*|#qS3 2}OuUwi ݖpzuw˫ +]]5Χc`~NވȲzX䏑0]dGQ04Cp蹬<Ưڳ|uc<8PJJ؁6wf8wpij2Dc 7BrgS7L! ^[kOKiR[sedpqq7 YH\҅r&HX-aoSrsJz2ZMq}j_00Մ&X {jJlH6hb4Ԓ* Y#ARoDGi1۩ fz4^ ggs{O05=DIJ={D" V ZnnFWJ!5ᦅ*=<ѱ!<=ﳽ+e)4{ek3qB%; Od]MyM6"DSqu9ZaTBEgzvJ[~gY'Td4{qf ށm)cD"b<lFu,M6TGV,{{3m"b麗M&)cZV"K*-HkI^^O9ì8c9iD`RLz.wTewvKLKnbjr'̙C$i-o&Z،9>{G?#ЙPX .GA[&2aBtS^pTpSD^@8?tOcvQۑ@BTB֪oI.A-U "(UGp!?)jk+j.Ǹii%xn芩ZGDkdžZ .ZʪͩRu|qdZ%V#ۙKaҁ*)V;p"HXk0W;!{/Gw}/l度]AP#S6}kL_4GʣZxVQ/!:Z,҈5; $Z>1)o;*3'_z1i̵nx&\K>Ԫ/ٛz |U< !-+|6Se/M[ѯ5h?I@ ;8Yԅ/S~SJЏ9(E@i}!SbǂNDSrօOg D-;0t?W)0ֲfdye$sic1E5;rq }ج!*)!,' _OVFZ/~_T hR@rh6(siEK 2;fW=^N^Hƍ!J4}ɻ<M1^g#E&m bT 0:]t ܚ;uV @7_:'/SK%Fb_5k-05,]W5am0Hޖ4;m1b_]G1D }F_KڧYo7'ۤ 1uE5zxsh^X}efLyP[r"[TvOhPESYc)7B2 $co⳯{Oz (QmkdF3?Vp y>d=DnznweZ[CL80Oj$?Y3 9n@/HIȕ`]y)s #700_W5#[&@Ə4ՁE*A`3N 1Fv`7 P tV"p_3;׸PX w%X'Yh$SND捙/BNiC#ݭ%9Bͽti #%z8b37/?&U 9Enh{cO|V{9 %;J|T3Btz܉h-d*uDa.CW|b6Nw)pbD::KPzҥLHڜQ#+es>:THlw <9 =)z,QFtDdgv1]}2iˡJ0 U7\w1 k! lZN2oCM_"葭. 쐉D<_9?)P)6ލAze-0)>jZfc ch".e\^]3cO1 \Ĩ,r) y=l! ԆY"5Q5(g˿" Xk!G ׃&U`P{;lnW^D /Ȳ8T$EHQn*@_H/(\HIR;ݞ8DZi~:iNJVG!;6\7MzHBPL|M^3&+O-n 4sfa z!-|S8wM=f8oX G1&{c7r.a" Y=0>.U}vU2GJ ETU: fFOeo4G]\󿦗k̀əD)+0_̯*+ -ŋzB8:bYۧnB්uN(1Wm3苆eGS#6;V~•OafBv4kuޗ3fbxmgH ^Sǐ?(4!:o彙3]|ܬi}AZ! Td/+'nCȸڞKȢQ9Y*IT*K!C?9_8Pʺ!'rfE[uP>Nj%OUb93DZiU5|Mw_J$}"&8Ꮡ2 @]~_[o3rn 0g 4x֏<2 )Or0 e|n6 4ɴ=`KwwGs &mQ0X!5`1D[Lr;.^sH3 @}qJ*Rs(-k2dWĂxs^.;BJ#DqM:k'KYڇ:d`Vwt?>mR8A  ɯ&t$}Nk %l`K/8}z00q6A7ѡm v\Nʶd$2Ԑ-WS] JZFŅU{&SpT#_Ag[~։z37L.` ?f=aHHb{d dn!+1 ^cXͤsYj-!H-P¯l'-F/I Dgz2q) d#$m %ߓNq{6{*Ÿoqڥ?Y'FV1!a{oZ9C=k/lH E sTfhP0!_h |)Gےaz~7hH\axBy R!٥ bRj 3GWyQ Tf;}\g`ɩOLWWV!^MZ cW"9$dn{`m1짲Eȓ&ke] BR:HY|v"^V_brbǝȢYt_wKMiͷz};9xT UpT;0-`h5~\#C5cuIb)5~tPL*5jk)}7Ya(%_0r9x$k cG)*t(4~ğ!7^E4}^ -΂ȮpEH4qI|j\ynaUBzj`ނQ2&%1-p/0 n;2Xi~QhݾmEHc7T= R܆2PoU'yYU/)sqN 9kdx'Cl4"a[(?C`ҭ,]>#~Ps.`^~PaFQ@ `hdV"H c<7͉M|z3ۮ5#Æg+Cn_DX *f1)3i5^FP_`g9LtD+ds8 ;iל`(XTtm /h!pB㞯j5Ĩˋ<:Ɖ먵 Fԑ8Oj_x(2bY nX|~R1jZ=!TIXj|׆.#)=_6<32=0t_%Tz?kkN(x0tFƍO"P)6P6WL%m#{QoԟDB)ZIDH3!uY9ҔC6תpTTP=HkQٓ5k8 ء CpP] N/d Pp *_pJë Y@cD&9&nSЇjP}He x+VTYA4,t-gzQra'HLjyNwB H4?&љ'{2&5Qr>F P6("f(MW~۝ K@`BPb.u&|O]vɆӵ\)Va!"3KH2 l@Jz[O~nCس0"78m^R">I~QC gP?\2qP雓&h*Sc{2cZ!,n*;36(tIVgf|Uʈs.v&h'xC+,\ 2?*҂ێ?qV54SVzH 0 Z+<8t7 ֮ }Bȩ@^i!b%dy^%I7Xc \ -1h4 oك]5Col-,696_yh5 G _|64Vjv@gY*1)N \Α-~:g PĢz%ZsNi6/ w@70yK@ԑOJcDQ<.+9$!e[c<@t&qH׽uo"[``..N+cpU4@Ps7~𵼶@#C"C E-`r;5WkT#REwGm+6{*W-lg "(+ _f@Ʀt-̺4X*ws>QZγnͽCA(^f+:e9_}T^C5ܩ#SXEcbzc+M먭:##Zk˩b`oѿMH {\ۡppOd5_] bRq(]lDgL,RW8 @K ݃ k i3vҗc=*`E[nRtSrnd~+&W=$^Ās-&=%ڽcrM޻a#5] "Lǻ̴,3.*AuIWjI:8-;J6{~)0JCF ߆Ջu]h"f}te2]Dk_Ce>Zpw%HZ {%N ED@:%U"Ir羙f3'QB!ZR Q lf}/Rd=_.VKEb17+ɿ>lY.7":bR;oʀ&Gq׹zSf#YLfݳ~G^1r|W3^>1n[P + H"rMt4F<@"d oVܩ&> 1X;6c5Kt.39w.ŧ˒(c+PSo)RČ+6Dfi(30XP}*ǽ FHn7-8v1OWN*5[:ڰ|UFm !p< jPhbV".c"M 4|ꇷjr <&ea)g|L̖@[MtږPiIt<m|~1H?oq*2" ƭ~ Ey}GPE;&xuQ5=ƬTfDLɾfojقEVy Kher5_ʖ7GHԼмg?cvL\2|z_kf06Fp*׷&,Jw^fq!l&m˒թf?dq] ??'':ͫBV=_' g HƴD&,ݼd ua-'Z$BS_r&HAht1ך*҄;AK!|ṟC{] %[Q*>ۤcf&Ћ5I`5.?۲yh0IcT([""C_Ht{?bP'c!.(a=HΫ g;C]I>%w1T{Z{m/? 25n6OFhV"Xᘮ98oIq}O<ΖzQPo籞tk,Z_mb^3\J''XEm0]{h;A#QnT A ɸ>/"*rUt 4Bý ?88nzqF] ^B{WHh/EJ'p&}07Acǝ.)2E8.'^}KjFJ)Ȳ5OSUk/Kwd[+Zd)rwxfm9r6rj.Ʒ8~ uܽRL]5&s\nѮؙ!t'weffdM%p,eTqW|4oS |T jcbn 8_;<`1~gLQZf. +dmꨯ;޸?g.%,#?G+ H[uټzRHNQG}ZlCJOiAG+~[u|\e6aTwKɾ`]vKecoRs?5i8l,cS"a*k7d%5e}G kt$`ian_ =_ Hm[j‶D 1Fbq"i}!&v;h03΍@24dJ#, y12R1A12@RǾV3:ی;zNxi"'D,`(T|hT% /9Nn@$ ?"wu"n0 Wwea\3Ρ=u=jWR e1qzC㜀d4Ӳ`RA05gxRЅwl]utΨp7RV|}b_gt iYqpd$9ٺ,v! i5RaŅ'xŒbFcLw]7_0Cⴋ\aC)5ָښFqQ &zeT/MD Xo\ʆ"R2EB)P|O_<HR`Ob7{6dŖH*77"ۢ$BtjJ Z+Iu[k7H4 [Re'Ȁ9gE|a!BY *rYQ?U#|њ(ѧBncAF+7(kNu0N^!E$׌&2! -fOkE^ͽC=\kH%. "(#P]Ûw~繿SL]kτbq2WUrD&&ģdQr$h^od缥m>,t9e4.X\oUEĮu1q1k J&UP0Sޛ)rM5XXH$ ŵ xn! c7^G&HBjk~~XZEweTb @-Z4$\ 孛Bz- }@[ߪ>*b_ɯOf;G5?aC2<)7k3=5kl@??_}G{jIAl|<7(]=A.6r24tl"P*4S|WBefRv~ER Dɭ 3 K@/&x.+8eCGCF& ހ Ӓ!Ve0Y]&NH[kYhjRg?T^YbtL{A6}ٕ+鼺Muc5#N{@z`_ձ6`=]rWf"p\ϧ){f̾Xs[іulPkHyx 1ڪ@]VO92*G -;_Oۇ%hs gLw]sÜM݅V_wDmv8+j)n9+gEY_ \`븀Yhk]˃5p]4?T||rh1bZZ|F0vtN8xdGi#p¦!ɓ:h?;Qw ߦ%`%g2!e<0zE<gb_XeR6= 7V+wX~sAΟ ]'bSfyDI, IΉ?Թ q p4{C)eS'P{<nl|^T۠τD*5-a;ċaVֹd.P: hcցFrlJDa69YQ|H YG`3~ Z.:oĠ)4ONUuⱮ /383ZvޗOA+N=į&å; ^GMO@U ~$u2%[w z,B%%~D#WeX)oHSOcZ~Z%7lt(P=fCJ 51IL]h]'B-z ;XbP&֊eڭ"b4Dh#5"qZ}|tz^1E?x{ 祂y֬b5R}.WPAM(\Çh}dah(AJcY>2YA]}9$~?@|RKm Q3΋gX-UsB_5gC}z_d/.Զ/DV>0=/ #yNpz!T' ·]>ijңT YMJSO cha#2l*Zp jM/ǃkYC88=‹nXwdMHkb=,*Ƕx[%/iQDji,J saE>%I/xbUB ,hI.v><AVΔ{c`0[rJ;̿x;%z^+CYǓBKˬ66;* fv'6W ՠ᦭g16k-_κVܑ9q廣n6,~.1kJ8[R t^wwq𞶩>糉"&vRԙ1˪"|`77([UܠFqÞFs9 sO #u ey"gvGǴW^UB76Syr i'8),_i{cH{ݷ߀!S }Aӟ6аRHlW$]SWDOIu`Qf;@BM4'R󪉭.ӟq.3=<}/rm\at ݡu#\>uO3JT"Qo/) qT~bYm8Bm 'Be=r`3 aw&2бXYqS+i_xa+ 㵟lTTh%wǪl'2-?>+:*oU,u=ҵ/QSb*W9y$f;="J4'a mgIEMi㽅@qdv9R:?"Eo:nh2" QNjVCo)zi`Zz'NU(ok&!u-X*=bPR1.-B ִs:brF$@KwseyuiK<]4{j)^M B+r$M5 \ߚPԆF֎3HX|$/j+2:fY#kZ1@ǁj/"1AtM++RL7 N\fJ}$lS"lsߨq=T;Tۉ UثxM'(Gyr2)+rRw, P^F6(jbSMiBleBƚA)RVZ<P+8^jn|e^ao;͍OqS:fh<;NFJs_٫93 s?t< qmj?Ќ}3^DnBɖn.-~*RJ?w,[䈱MABb$g_Y@g=F^2\8*UѥIh'`X[Һ82YjfcRϊ袢RVkҨ$J:ƶhؠ5ΌjbzF] JM6gAe3^N#^ #D#+}Fm>9ک'.97 %\n]ʎc2PfW ESzqڎ'$z)C,PWh{F*:q|"["e)o49_Sdp:?x  >jV;\yE@VT p[Ƚ}oiZcF|=﯒iɜ\ n7&t`fDe \Iȑ•È*96X?.6IRSs!Qkzr $S“7v}:KPKx†b75t*Cl`w ^yP}P^C:J~5xXkvO"<,b~: 3&׺?+;Ip?a񿭊^BSNKW^M ڣxNTS+Cr6.Z$|&t,4~bT_ ̬ pׂ;t"Iy3}EG*'~"PcKX1{?<yVcLЁ/ $VoIT6k }M8;Wއ%HKY谳'({CvnFP0Thǿ.}!(?ː X+kd5,l"{}Mk,.ک&ŮO;Q]Wig[ĄnCX":e v3yr, [ D -3gIf:tPo֣c !5ڿhTxvrZC Ժ"(,07]ʦ:c4Ɓ}@A157vYš Yɳ4+O{.oq嘊ttnj'}ffY[(uU0KƍI=)$~!xN'lG%&BZQݳAX /p’ w9qzi 7,ޅl=@biL CW5l|ߐTgpY)scE(B&V"&a6cՌbr0,K#2-JV`JBLr[Kɬr<&hۜ`!{S.s^wpsw԰adҙjiؒJ|9] 7"K^p{x3g|-f86+ro&ߺ4n>^3iNf@F PV/_LQ2? Z 'oS灿u=߭L.NW^?%^v] ܸy+)B`oځ&r,Vpaitc{#dЩp8:pz]ob 2Y8k9|= O۔i|9@L:w@>#FQǙ4V~mCCM{S0Nn};1/m;  6|Cb \ +~k9OLR^bcZ6G8;1`IoI\;'<^XK]FW*dg#o:>&ƖLRrY!bn8^4ڦIY@[ XhF"pq|Ґ}L tJde7L(GԽiPo>8^*l:ٶpjl2PS&}I]SPzp I/6TZTmƩ@$i908?Щ4BCzBRuK-:$bv]ظؑ!aש r}ɍ5-h=jzO1áV~)|,Z+ODMT >D6›>vKwdpt%ʅHR*UN+(EݓކE4m[3߿x.Iy.>^`#B@ `1L%!j]f  &h5W=F,8U.HwvH)0tQB!ʽdyWR"SF0@T8.;\y<"eҔ C_4銃ߠFxQ$b,)u+RƸ >cŘX+ L%j.6l eX!AefN;1GݼtQIߛ.FY Qiěɘ4}!Nb_'[M.8soA %[DmLa$g2p&sȏ0K%Ix|:Je B\R ڏa􀑹9`V.JV/oV!+E;qhoU^ݍ߫h-숁{9x8 ;&0h}Ԇ4׻ n3h X,JTP-9,28X^*@!CX`NJTV"7Z]ʷ'M&H@ՊG`aXŕ 3u\'4Bɲvj`L9"JZ~dҪjSNIt]eW#$=\!}d!^4,O*;twX$w1!r?K7t'}s,('U" KAԔ>h:hsȵbȹy!=m-b2H-M Y|~{vթ'BH^oϺ|%PRJ_޽PYD:î/|"hS|xO:n;"A5dTl`6;m,x  ٰb@VR4!Шdt+_D[Q:Ff-(_ ېۺFSX1 ŭ!zʭӮy%{vi<ȫi;wG#ۈqg*GLs1)}8KeyYˆ \|m}_[[HsgD%ts gkwcAoK/ˑZ%K;-k/0(` g<ۖr ԋүv›(1l?vfj3脠Uz\~I{:a#Z׼\ʛ<TH#}Ľ:0썞RTsν)y&̄T,WQx8XH]b9(A$^^0V.䨯ܷg}*d|p͘AwulC+dfȦzǡt@tTs]8K3K;uB6Q\F!ka^^#(k3(׉?PM|dt5uTD5$>Uc"il0Ъ7Z+L K[CŅb?P)3y*p){̣Q?>:7S[Sl1@r2VԱ] Y;l|#~∢TDkJ cb*l /*_ 2qώ1w HԲL OaIըeʩ%]08a5sr=]st&iƋm뭪^+ﰐڟZ dnaD ,0 6zY/Uakނd$QKȂ|\i"ABB/^ZQ9B߃wk|p)CJ2 Op; է^}7#+z_>g yRϥ-촐՞ܓRHpF 0LfL rRZ]e<^1i[1̠"M:PZ^- [bǝl(ӇcMұxr$vThVT,8¨)ڻPz\:D*ϙ)Unps}\0uwH<9P"cD'ԣ 0az_rCmOe HŻAΉpd]r& kPmw-ZL[j!ƚt|yQ! ؂5V2ty?.=H k[+jZ!Y()/N.q([8:ۼP4̴@B;ɖf$vAz $%z<]%h`y7`zxmr)pIҬV0s̒ZX¥r쵐jFPկXb˪).i,:Se8'MW+(V/wesf@ rT)4wZ<`eX+ݔH 1DA$4n1ؐXw+@w{ÁCȇ(Jz͍y[h%}$"$stٟ wJͪ壌l`B?==^42.!3?F$ 9B`5H8gso35˱Y] (43 $Gۋe`=bvz5pbE󃷅8 3eܟm=77tq=8zf2A #P]֗<9DmjV=ƄF ,s+R,w$/Q0Uq@ E*#;D/=O3$Q,ЁF<8_=}YHF Bw+wWD"l9lD?ݾI(@4i6и,v<ҋ7lAN u<NJ[Z4u쎞]7HKvVfVvE.ы)Ȅ`-b i6!l l" :j |.iEש uyA/Mռ ~ iW<8Oˬ8{(î!H_ j$5n^-?t⵽S\\''{v*DOV_HyntYtxHBK ̰1%T祮udQ6[Lid@6>t@c܊ۚ1):x27 EWIPKt!<@:аKs MnMpl ,E'. g@]*5b jᐆv5/a\t#>"jl ˜ژx#OÚ{ MsWBQt̍h-B4:J> #*{oq`;k/s$cU7< Su:7c,2h*{bW44_?/1! ?"l\CQV~{ArAĘF^q2>u:aqБ(v`vҢyr/K  R_ Z(u3ɄU YUX= joHVݼA.>%;)7Q$|I'5({8%Fԁ f0 ٔ,~q7f‰^ t>O @k@nOך-][`@y_ނT  0ۂ)p"2bCJ1U \GpL}uњk/rq}PqW41 O3P"q|LZPƻn.R ")7u9LE^CFE%_yv@7CdAjP:W3o#D'Ȋ!NuCWMԻQP Q%ҡTaX[O2)f4+By["eB0e 7¶ng^?5m ?|Nlw ~H-8|gbo7Hfq<أ7ka~fnD!fGz ܨtv0 JK4~g u`Ue+iY|qs*XxUtQjb\N;1i/x :z}ũq+5f^0#]L;UQ֍!]4Ɋkk5׋hfkDqbZ7;?.0WlD}ރh?iRCd02=@ f0^SxPrֽY02 . 0"Gam_ԺMc/0W;-1z^7e˴pyZwY%'PRvV6>9 Sm!T)tV(8vC4̥ڋâψ,Zw!TMٗEc4t>MMuWA =2ϔs1lWv2SwW.&I7sp˃fuRV 'p$Pp<D` <݋(ő׸:K`V&Cp(,Zq*?uPk#u|m svt?d攦7 %Hb]Tn7&RIх*bK?hN! ts[P`|ޯ^͎UG-+1W P+ $ A :yr&c%5 -F=}fl V%EdA= zPଊ 5ID.RyKeS՝F&Jsۗ&<\ j3Zo0S]"quTKJkHfEp)GCXQBmBo|.5@IoBe+΍qC#/pBcGq }8x`@зA0S~Q=P|X"5 !%.'wo.rcZv.)Z"1$DS)nZ/6sK; G8ZUy9I=BMl H,̾& Dcbx6rNݱm.YzuBglf&rvha J|P Kҟm]?tÂe C^?OuZ7C(죎|/ X OFk"cv' r)ƚȓ"ۯNn1D!%P*}_RQLlѓS kq ;z fIsq<JCE>kl7t s_;YL% X85G .ŭlU!&f n.\!I@ŷKE,DpZ.Bt/^z[?@F,-MqzH"LDI.уO+"ZҤ  P ~YA*U@@]0ԽI?f֍S8N~-+>ªG>jhɳ>1Y_78Y#]G٣9Bi2lOd-hQ\ cFtQ֋ 0]LPYD#T^A|^()۲c5ޝɣ ʥ8FISޱVVz l%NGm%baA/t|bҜ,OEOLGU%^b2t!(3'CHb_NU{/1ZBƠkvk_H\R Vܭa<-mæ8{4 /Y4& SOAgu)oR ZnsH=o(Kl6!T\7C\m/#ޤcB[đ}S"#6JcUVł@u#Z vYтLoFN$Y>Wrzctz9O wog礶;MJwxfb+$1"U' b3G_5LD0Bx=qfNAkWsSStŭa[9#"_UrЊ)WI!)L3>da"QNy4A?۬})cۼ^=\W5QޜҎ)$q:ЮkSuhоD&b Q#mzr]S0"Z`X\}sl~œ}99rsd,$@&eYsងXChu RQEU#Z!8t+ڬ!-1KvnF Ա[&6Wh$i`7bXx6\&lcPoS-kݺlnzRHPj,u ejrA$/1'MbCݨ fTDZېlT]7H݂2ld)^X <cmblZcm*'pvrV!:oTEhˤ':ݴti}Mkar"],$NWBo쾁,bAMfQUULYpXm&Ӭ7`}BzLk ]W# `O֢DH$I-њGf#7Ŗ4yH1tbvzKAlľq`7,Q.Yk>Van3u6cF,u)jT?K9y_3r{AݦE*ҞȃhFeU!cr]꺢ʀLtQ ?!6F){٭PS,xPß+@[p|lcrVa "!Ժ^c> t 2iϮC<ߖ2+xSG9:,çz8S0DHS8}3Ihs"{"JHҴHvG},|N?=ēțx OHKgEW_HJ_9 oqlsΓ}VnJĠTLv#qDQs]ǭm5˕b]s 9nο`% ب鳣,~z4 Ip :/5C;e叕bޮ1717>qc=.ʠ$ڸƮS/)/~`0/'i{K7WcR. 'sImo`#wh&GJ-ZקzQ'QM5Q5듦 .?_ ZѿJLKhͻ^!Il0Ze<ĝh-=?"^\t"Kh~uk赊X _vM p32ܘ1l#p,"S q e| m18uY ?uMCr2{}6^3r=Y)hύa]#77Nƶ K[ jWB0 C-X7?pcNdEQ).NҢyg#/ˁ{%+G,rݝoʾA,UÖsSk{{ʣqbL5 }D^N J˝5 .H209oػsuCHMNxJd>*\^ 92t~yA ա rZݠcsx͵ŊWQZUƭo*cqFWP2Z񆇺MbzeYMJaw1 ~hqH"EeMP:@Cz jKL>΍+*Mjt hsy=,֜2l16 C'zi RZfSo6eߥױ`PPl;9&E'#Hl 4ౕ#c>=:8$I$˿ХA| r+R٨Ki2 [(U@0K~ڠߟ5To9L=)"T5)t`!>P4=}@Z">P􄓿A?X<|JHC# UR?$7fŚGF#6 m)3sNh#~78xK+Lyś҇4%SŇKЌDy=;L/`)GCZɭ@Ӫh>"&2w+Gbڞ9#ب9 WrQe핬Do..{Vb*(\r{|HTC"L=.G`@ 2ys_}I,MK'Gcw\Lx#S' a9]8۫uꥆ3CBS%t[a1+)?,읇[c4 ڧab98kRfGHGH-mˑ77@q=xY>f!FBճ*w0V<|IԽ%9\,IF=t&UtƲb# x'ʩˣh<#LJ̼Ot+CmFc30 0hȔ-2w@Mut}ہee\*b8/\$L;1?1U]ǯN( 81um LYmܡO}WC@u6 H!.}9ͦw/Uݵqj3CVa/opdASgbI%3LĠfXIOZ$+ @PI Gj3C{Gu$y薆%c7YSh_3/%'V!e 1$bYIGNNHy^>j1~شEVWaZM.SA~ر??*"_YV:,YT3dP@~ڕP/ g 5B¦*2vf$&(w{Hx=Oe{.ZͣuGۛ}SHsK#L| 4[/"*vgkAM Uv+Ռ WuL|TqYX|6\;YGiz> k[^Blǚd[+j@(8IK\ZS ~A$&%JJ8 b  38#`=_ #F̂Pai);n9*V+KٖɸمE猪!t^ٴ_(e IM)լm[R<_܄s<Oܪ-y///] wZ>eU@mf0^忷x{c|wln 0=<vN6qVB 20Hމn x}f*iGh%.8 ^`F.Y$O:jGF,=7<W0\B$wP8=Q%Yw|-MEA%t 4Lcs}ϲ|mKj! |Iw627`"U'ԁnʃ%O<tf;MDk+&jKB;64VU>̃ݒ(@zYƅɄи,xX«X+[+LO2GJoJ;J NE2ҐrG}k O؞:\nR3-KGhs||\nznHv`[z#[PYx`W$uopixyDoiYtbYlwш&Rs5IkSJs]*kiN nauIbH*36`!_nYiX/5'9]5 9ǚ-2"!Y1vbꈄY4d`x%94QMYYZxsN\ex '5lE[ %$p J>*tEڜf#v8e#bӾAy^ǜ Mi/I4$w\μO^ESHWB/^-Qba~nF+ y=Ȁ)pC ׍!D]Ix- i2vi#*K<gH0L|w ` vbU4c,BvvgS 0GBW1Q`4,b%}>WD@\jX,"j?8qGI(Ria>`p ~x4}be&`r?ᢹ>5Us(g5Hz}J?$R( үM`՚m'%Ѱn,Tnf&?ݍG! n nՐʔϝX}{YlYJ%6aޭ E<ѧg3³-F"-e(Ȱ磟>h4$} L(~65H{w%D_` 0P>2}a/(3^$[ѭ1ƪ.0,rT RkSR  5g RM,|/3|!;E.6r)bry'I؄NQtAv)C>C|ӳ#mEuT&Zf@\k1; k^_wU+V~eБɾN#n`[! j߃Ґ(k3\EC*bQ,L4f,3;*ȕ6pY!ҷny-]C |dDJ5KLID%3P&4Ӕ? z l}lЅlGRsl*ds)Y= z]\=ځcBM6k铘gH2}e#,k/οFV67`SJ#l@)KϞTuWĥ ?␜b&{)2ocQc =@D伖kra)ѻp"] Bӣχ)0}t#x)JH1>H.U F#^w֯wKIԥN2%Ll5Xؕ!@"K, k FVMÖw,Ľ/wIZxz*[V<9݇8"$'OxuT뙋\&N jЪЬ)kPh͊!u?R&!k?WS D:rz\^r~od$UjWt"cQ&_Ѳ5>ȞmCg5 G߁lQ1J6C2Q=5P;qg'dLX`Kiuqa("?#_ {}_eHgh~ y@*4S5ktꨐWW2d= ItϋޢetgL\Vi6_N&ʼnۣ*+UM-&bZ &i%~`$Sl#my70 |ЯI*nR 9hT (Ǎ0 DSG.&{9;;TMׇ~bq/Q>8V\(OSoA6~JYn%b3;{D.N'~ 6n "g8[|J \ svh&\v 6$wwHqش? BURhPZiϬ8Ad'LXՊvvX_|4:izf30輹m@evE 7cۯ̻ͅfs R>GUY+.C.XfƏCue="?;QL51Bn"H _"uo# ˒=t DTKa+ e2+>P}̙8W'[ܙNfԄ7'"}eir,jDYWBK"`f8.C eP 9yEM_ DChsR;P֭er{֏$hc1r>69Z 'l O>?sÈPX'̫J &~Qbs!;$Օ[~svRʖ`plRpgչ,FOeH39l@[׭+Þ|A~RgPD T׭=::PTXRo32 Y4m8)=EiRIs7p{@ sa_~#>G4Vھ&-@>SA6Ըe@ll!'8f_)(dBJŞhysYQ=,r9xHMў{Ɲy . `h*jycNb?W@j>rb9d %ilt~t-b!՝MtnOacgEppJqdl/vc?îLm_S'xF X kqymlS`=1[e=L8>2{l2:fpFIՑ xZK˜-dXw k:ʎۺw"}KZs~8M |Ԍ<GJ\@̠;N mZrA- ORR;hl/$َ|c8*64-@\D+G'-59$6ju}36K55$60DQ/G8El} W ˉχ7slGOq( hŶ*8b'fb05ſ Iy:,ՁGuY | 1c{wVQ<憕^O%U W1> [ F@lΩ:) #Lv9 Ҵk X*BAg7k.zOmӬgDeR!>G4}9k^o<)-N=KLHA!K(ျ4/€=Q *Ѭ!r '~=p$̲6ͺwɰ CW]I29P WwQL,By֡a㞹JÔ])'73+W 0.9!:N\{NwB1XIѥL ?ǿOgRiPX Ñ0MK߰MhcTu]p g;1쏇,>)4^ۄf{G$x%čnv}[6l*k!+p ^+oZT9=lgWj8{`cS L.暬x =T6KV|ќV6uVjB+x:aqu= AHNxjPC9:6/>#>*Ή z:vK?m%jySfD#"A w: +.ҘiN){]$CuYSHR䶙u uscPTlˌ U7y5hOv"huLM}VDu_ ⃜&[OUL _ ~UNC*وd4<i,26rVZ u߶k$C M9&%xГrZu_$.?}޿Z v re)c%VS1]Q/zcyc0pO{i'%5 9mBQM%b+L][ġ"-G#Qp^4Yh. >50ҁ9:O+ױ3{Ϟ NnI3K~1w68*wm;#,M=`LckW0'QdJHZqp9)ךn:|;޾Za0c pyպhhk3}V̯~pŏ[@@ZK>E><83P R[-W@-F8/2DEwfe)Wˁ( tO b"ouj t- 4 ')jF^ŜpgƎc5$2r&71&>Sv\ 쳖*Έz^]_<C@T퀘u͎`-w-b҉G+.YU,K&HC^csDxzs$CCΖЖg%5P7];L]EPg ]%̗t\jܬ'3)9\&cH 9ƞ+AE84'j^yi*b+c~Z9#xpFH8z7P rkŹ|Omt\a/?]~GI"]xޥg15N:cpPϴGQ|%GLNXS+H5P&h!h}B'%s͵U@':]AP! p%0=B=z[Δ<1\wmo2ڧ  #))QkٻJQڨN4Bib|-/Č*ơQfc6Az v wg- \Mi9V!l!|pm cO{d aʬRZ)FEAhuЋU.+# NH@)qRb z_ 5 PolbN3R%w4*@Sy¹j92/3H>-]ϏPD !כz7+/:ԻRCb|gnr$Yٛn1!CAs ]肾xiLe(jNqӗmL; ]?Wov半LvTc^f^p`Ur;m\99Oflib:[; PکX eGcҷ llY WvWQ<{hJb\+PmB^uNXO>ͻ> 2zJ#B~{IJ}'b둤HU-fcѿ0m 1C3jS `P%Wy 1cDE!q<ޜBFN/]^ Jd@+nS l<4rfxR_{>SҺxTj{' 2 af%2:kf9HUe[HucbH4Y£,CB46gWt% 8M:A`Eh:MY~w 1e7] $O-.R[Nn]mDE ol%le qcͺ?#qYE T; Dr>Ai ONR54GZ)\禨LIIwΜl =vM45 ʝk*2(cGWF`:4TY\7 NuOZ֚1n`#`M٤ҟiZқSb5Ue$Dž0x_o60=d<;\fzX*~&ǝq*·u) GFffq1x玡rViE׃폠 ›:\&RH>&Vr P`T1n6sr Kzt # h8J]B*Lǭ2*,"bk F+Gi22 x `mal9słt2 H 7.|jD}߲(RI(bPdE^O(^h/qJ-l-;DۡpU/ `9ф2cg拃-[+3&SQMK9p|_^{1N@X3S/>n/x @K&^hLTbL'VeuEڀlï3^~Em"Tm?']CO?zRLo:feS/T>6 K2Bp}psuEg5Oł.?tܸ^+n'%)2ɗfԾ+2\&唓4 DE/Eg|纂*LfI6ͯ1%I{T?[<{GQ"ǣMKjJ!1Fܳwf0t5m(?U$bOmP,)l#xG,wv*h\ ?ff C\vAӥ1!_P^uK/#K$(;v㭬(KMam+ pb_KNtڱrIPYkE/.r<!*&>VR 9Svbpd!r{lĤ\׽p6C"+ 55F)d}Țlt7)ka1` [ >cQSl1I)|eWW/y^cfɅf_(-VKB(XQueҐH '_GsyB)f;H|u%2Jh{D#x$=cDŽȚ>%$=*pHfHjn7_(Dl.k5d-|9`'FyÁݎ2/ %ig~hFx>;Coey OIz:fa*-F8PӾ΋ 1V)R#~Pdg۰{3~țt`V.+6Bh"[~XZ/&I"xy+b ँPRiܔGeFVJerA D%b9ЈJHoC18i~/œeg/ϩ$=Ĉd'#n1R?eBt=/2I}s0\ <ֺkR 0#v6n>ֹ#;BڹLhr'8dV23Xzeq!T a74_~Ù9 -ȼVp=f ùE_b '@UQ+dX˶PƪG}qOyVri߂# r}Zten7UY;aOA_Jhif,N)%y3nՀtWdc&۽8D>8i$+,std4x^p^1$H̼G8V,VZiɜ}[֪Mt_q*b@%?(+g]^Bav`ڄxfda? TW@Kvi bsRBibweubmCHr<Ț;h'=>0VY-˭"Рnf(05+xZ-iMv95l;<{}v]CLЕT{`Ds{vʁՖCOyidTΛEJmOoiDLݱoS aɿy CS]i.-EAA X*]i$1 ˕{h1PϼD m-zxlFIFxaؓlR/|ow6Z]e W8!fH-aV!c3̓? `zgpD.N<4mRdJcN 5+qE=Ɋ*\T 4|6e8% Ҳ@nfzdA@—L*mԝGܝ;70/ Ƴ)^Q1V|l4g9Gy U)|4 ]!4^BXhOP&>t!WhmۄBEbS MR! @~V<ΐآnb 4Y*q~Y͙_ +gۉ*lEj9W{ ܺY2e/ET6^S#!<!!Rj; jt[* >P"`~*CմMl-6t` \ OʀcT@\kN44G&zO<}zzkwoa+qug0TmA1aҰub\*,ϡ2]9gq 'ex9?\n n~^_pOh#>oX؇*I5fQ`+.skhN뇥 BC vy&`VyʩXW 9|ZW eY8OwGi9Çۓ+߅0;U.3x`K N^$!YeK #׮Y C8)y|C޾5*#jPh5Q;‹ tg~HB i>I<$ǐ#ȴ`mNTzhJŠ{9.ZS#d%$ H |+\7P uXd\%^ BRRo*$~9x*-u?ˆtR،e{ǟ / ~9\GHվx*J"sM`ޡ꼩֣6; ovȩmn:<" GKFnߡL! e0DLAI@Gi˟ŗ"F5Gj<ƒ,edzNʹoZ 3~岋9 3tVE^EAF1ڐ#\rx_} hB[?S0*T^2eCIx[x3O[G>d=WO3EyNR ~Ŋ+OQ 8l=ܭ">!`,I\*&th%>E dfs4Pn¡0 Htk՚GIP.Id@Bz6W?N-+)48޾B^.B;Xᛖ)axy?POo{&3aGϼbI!`,!,zŖi_#z|^)-1T4o~C \eU5z{%:@1XsIR)@y;q`3yeH=ѝϏP.)1) kmƬeh_QlS}NmΖżZrھ4B١hJ-Hk0埮gM5^YBJf3N0T"&˻ٖ/d7!¹vY;D+sW\N+ws=I5iR(Y0;g51PZc| KAL+ibc1ʻߊrb'şƄ0Sٽ|֙0!7\ƥWQRG{l;!1If @"Il*on!I0۹Y$,<s<"xCnr7=z+^~_ gcŰڠŸ́/8ٓ]^6w5PL+_3Xfx$&2*hmdc`T#n$ЭeJQCӑ~[0Jst1wꃼ8N\z. Kb[#dqdN7JG[|=cYTE/bD̞Ǎ+E ٩i$OJ/= rpťM4bƳɹw1_4C+!2?9hۥ.f#[D&LP>@.PڳsTa2QT-vzY YI[dP*!Lz6#yEt+I&zp5趸!RzQwg1۾"tSލO|R-"z%עVj%Ri3Hq?u"SDl~ۆhAw!z^g-*L\q2 0"Qf+D3{܌մn7 쀿f&V3֎&~⭭:ʰDU0Nezj4HazL ^\5u^Z!h_Zȯ|9fi74^ōyaL?\3n~تKD#]@O/VQm8 Ƣʲik ܵ+:p>NϙªVP茕ǿ! -ocԖOS߶4"1q u^3 ؃ubt>ʷ@Wkcy} $T]subn*XϠ>!Хvd?jѣ,(@yN'D-(FQ٭ zW<AauƦiSI^NvSh sn}sn&Ag5ضõD9I#[X)e/PJOtj`:f,W m5f['^!,+CELh߶1o7ݙ))1^JPaZk :S+529L䠛Ų͹zFup! on"oE}!q!p#te? AiƧ뙠}q; +bJ] KfQ76Vs!s D:p;:I/aJy+e[Z6LތOnęz)ҳpb~3P qG]ZPF*R0B0Pj8Q▄ [myud VKTsB djqew9Fg7[!낢sGηt{Vr3s||B^MI@#ҡ8 {aA)~vOL%FI(ӄgn@&Jpp |M#OFCxtTJP=mex\'?Xj!¡8p>2T G0p.+>bd)([dߧxbFyG$T|R~;ԛ̮ߟ|ii y`6++tj\Ojz_lZJi^ Ñ, 7e!\ĮUBEo͢>8beۑRIЬoT֦jhb0L]Xno[00z-ohapRmzk|x(6Vud:Jzj2R}PuyRlE= 憪eQx"i?[~ V_7*lt+Ԋʪй-`Ņ|ǝ K[!4&pHPi`̖j} d,IJ(}4* :ѽdUPX\ڵ"?rΌץ1[%t@Z1؞a!r0 E0ax<* ʷnGKnU?&5UpO" .CASpn"8)P'8ՈcݹI |9HDy5-}}pҐ<"$"S'loV긛:iTlAvr.hZil:,{^Ru@o{>Rt7o9URr^~ 1$Q#M:2JxXl,%TVƟ5TgjVc49:^E\k̄/A6#O >}qU`&VjFU?ܬbW? g8=\l 8Y0cD,jT&bu.6؜e \;) z>!e؀W˸ARHNiv7[5"] }2{TwL,]BsIva7}\*b2B"s(]f g'0MLvGڃŸa}cB߾{?kk;3Q% ,T;u  " j0h}CZlSw\q۠}ԑ.ݯ *aۣU+dtLJA3ފoUˋʋ yVݣJp:(tߩ.9=T ߰ٵVGӍmwHXS߂|bܯDWrb0[9ܺls䬎ERyȪ ߞ]wq{9JFji@ˆu,ŕ) D-Q3S|Z 5 S3l+%(GPʧHu/[(M?a pDX8b+4| *;Qp2'}īZE<\kȶr_ׯO|fgP3gi-JлE\_d$[z=}}ON @{3[F/L5TH@dG!`עt "p/Gs/qak9+&\i6^!]O[QWk ; zz-Z 7!`'׳5<3+]Va_7*6a:\y}$=cjYrR_QÃ넯6I3a; 7ĢWqAO5m40j7SJU}7 uLK )~rwT P s4X1;@n?F뤡wlb. ]zר  \ L`o2(A*K@.IBғ)ucV`g6Aiޮdcra7[(tF/Eܺ* S*ܝ|Khd!Q!L_et>l` = t洗_G]m*mf/^؄byK56F;EwlcՄp?u[NgV6 {$8`Un)Rv#:ģb8ѣNSO ft5 q^R<[+Lc&8ALq~~[^u;our'`?}N.iXğ_S4'!DA]*W<*>|9o>OC=BQ <06c?+hi#cY,Wk5ݎuX3X;yLv1Җҟ&.{gru)P38y򘷸6@ysOG kQϊP՘H =|࡞U ܱN&Ta.LrcV.i'#C| *+*Zڄb+I+NYL^58KnWXPn]Ǐ*0-d!q`Gck6bMǥ=[O@3;͵>> 1]݌09)Ύ-օA6A@ x=^JN"(*G9{; =Y싣vz`pۆRCqd 0=5W%J!U\~)76ŻVgS\3S5&J sYkNU.CtcxZzSӶYY3P+×{Ӿg/; 8̨}9 kސPl|1vX2łE.l֒(tE??6v;hYdn!"`vm 0$C(/ yJ3>)(#녴I\v:?ԍdn2n_ s3mXP n ˜SbmFy7^0!k ;z@֝+|9LG~BgOpyIhIE; }i,DPrt_) fLO)yUVkUw*y%ozUG A8PjH35ͪ _5):(&eڶ%;"P'n-5.6;7 <oxI4_=@ 9EjYEutD^Uf%5BceR/.i7ħ͘ZL7;h|:ZhU"%gI:B / chj%' lE6 ؘ[7N@Qgom9< ~~_oȫWfIv{Vg}FmV{YNI[~$>߶PBWxF|.\|qquEvsk[Ij?`&~>W}jx䔪qrKWތ#3TvDhZ8x]>-̚3AjEtOkwoA &bn{$ꢉ B:=kl7( G?cޭ iЦ7Ra%,)S7-82gSʭ`}CedwΩuJj>A G̅r}gѽ2w^18h.~0SH=FBER7bïhQ&5EѦfj`= lloڭVsٚnOX$4[8ιNŶ M|=dMj@^K\>1 7f>@t>'b4ޔ^Soɦ&I" noVTXc"0b"0`f($Vr'! 5s<^Uy<wF(gn I-̊41O\=5Yo5 [L/ da(N B鴄2 [gY^H7hY23sR8/> a_! I#.aEecn|J+ 0-FoTjD, |.]#84 Z\H jK'Wml*N1ꚻ0PgcD$eN=;ntf}a֍X[C{$OXUAKnK* 7j\BI^8oCA$]j8G#ʆ@3ɿg 5M/+#≮Ҽ-u.l/=z)M5vYH5_$իs-=u.CH<:܊#MzŊFzԳO/)ңFF4xnTtf19JÆ彳9NN:^&L-_M+'y΃0An#C`JTp1Hx'C{DɺG7Y;Rd*aR U=o"-p~kBG2U00G_s$̛A-שь t`qVXMd[55qԎ D"])8hٷNeokv-+G)Ly/%vZKdWэ9M4&]mnHju Dk_ХZOϨ,N,|nAɫ)cUf/Ÿ7D)0N2 x/y&_Rw'WO@?aj%7vh%)%%D}T\1G 00 ;Ƈ^xF2K%:T2>y-\6{P#,b]Pm,<JEejۮ-YxYrq\eRI3x?o #. ;2ZM=>ց)RLDI6+@u/^ Uڙ2x6:DME X1P/zM0E `l3seJ_5g ^XlqMU G_ݯ(Z'#b_kAt|<:ñ`l9ye'2EEO8K]G׈330Bo.-67VվD}Xca4л yG[([.#{eYܨa"]T~nԶ} 5jE՗xN&HYW{u-UZ_h{2X']7Bˤ,"!j;̒;U:52!mvCNP=o :3 g~cm`to~ h{[B2Qנ'{#A{@W>3$ گ}7X#.upd+ĉ #ғS7.ICp5;+d qgVpB-.ܛ ˃kNAtjCJŒg>7bƻc-3Go/L[7[i ľӛX皓lAָ`^o4*^._ 0B&ڱ_|pЪ_Az)pԔyҤ**>Obp~Qސy&.-":`vUI[%{dY15a) ?yzɂPwm oÐ%vQMX q\N xOlDly-%QI_nhxs!}䃟${'"_pτ@ymLn޼&"c>cus@;z$ e=F=w!&'k,LŖ ġțFU.zy@e]s ذ2jyP`8v`;r8R#leX? !$}OcxDDA\]('87yy8IkmY/Sfk⮾tf'o֢z'mb1W76n SgLteuP#pXa0Я-.Dclzq>09 '^1򎅩mȥ6x='7#3(,ȄMӴfQXϚs-1!Bi) |9*TCTuΫs†82SIU7TMNmXM t,CpxR6 UKVѥ*aij۳XB뛽YJ{e Bwqzd\[ɆW2H_Ȏb0\~xmD Tch!#؄BFP}jw IwlfT v 91Al=< rDҭ`P>sxV,w!:7@jX\ X\Br|}H8[&#i^;l̮8=nzÂ]LƏ6=SCT$ "s1bg71I!77&7RoգfL AggރsNSS6g "KZ=/I o/0kK6`s^`lC +GښJ/K7ww[ &d/0 #_Xmnս_ykȄB!/B+Ou)f2 Z ~c\Fo^- kZ c kpSIqp1"@.5OR5>4~p{0ḣXlOވvS4(ME<^2 2.¾ WeF)^rB9{Xi=wv<ϰzfUV#4Dx u槢?U:9UGnTt%MmZ>Wks\e;jqT“ʡ6ƙܧ/Am4[}G4,'CVUⱩ֯Ȧd7 L*yW6f^K؋$xCit-4N|K"h|M ZezCmǽ٭S{ &s(=e=nԖZghEZqqg+DA.W@~U6"nu3LH./#tʆ/µ/J!ķ{iɇ0ǣ09Q*B{Xm2: %uDSgyjOL܂mJyRFLOJm&9I5Yn}T2~&mT۹9ؼ%c:s&|sx,4 MIy]Qw_mG~T̡ش"ۢ/wx^nÚ֧RI_WD&|ç{4iNNo٘Ly:r^ al_*⮵,wތh}L`^ 3g4}p8'ɽʚCI KGAu/"b,䵠.)PtAp0dZC*xx/x#E 9)mep ?t7lkX_?m 'r_G(`^cPe/5XYϚ7 ':;^)e]UߊTVQ;*Zˡn.sI5 Sɞ IQ&aD*%yJ(0mez Nz?,Ne*MfnXg> =HA8ఀ[azB4MJ  (3F}=ysx8 R0c1A3^v0v9*Zή&rWpP}G A;qX@-N h_(=Ujz\'ylp̰@ѱ` /!͌"pnKnͨ ]RV >IΆ2>п0zRRTcVWWtsjl<(4B_rU?ҩt C.aVҶS&Lkd ),X6nBڳ&Φ+ un YŸ~K=\X:ï{p{2SrL8_LA݆ݳ[*6pՀ-i.ͦ?WyE/Yh8A?w 9yjo*8=4.FPA")Ft lj(ͅVk1`I#'s0 Q*WV HNX)C8~,`ʬLk:Nf"88)B}ۮ?s ;>;YhJx/2 ¡P[s'XFȁ_8E4ԣa9ΆX'vg5i/yQ Cå@TR*<̑?nkÈ1SNW'=I:JdRBXF ֵ@Z5iuG}_9ⅽ39;> @2 i.?y>V5 zg^TT}bh]85fNd[3Kbf%\ "g/ml\݁=J01v SY ~0jqP "΄PvE _ۏϲBKpk5_H&LZ\5ih B@A!eHq\i,,; Y"Ll$%G"0EcyQʎyun"Y^dꜰ~ͪE ?\,qk4O<۞4jxGZSޫ+fpJ/yVJX%?ҷ:t9w$ IO#,RAu[s/ -??̑vU&X=fbcx".F-9zwf{@1A /0T=N68iK*8Xj$pUzF&Sr|N#(ƻĮaXlbZ ]+LP2ѵK\ݮjڥ,ݴo/e{'#nllN{h#9-]\3&^76[=R_bKksl;͛3#O 2++H^X\tX7hTkznPVud X>NR3ߨW9шvyN#TxXt/';/2krF'Zx,re$,73h![]f%de%,=>t] aiT5+-NmTT#CKo `wKĠA1J# #skrFCiSu2y'W5㳏|*F>5U_ OI\ j&.ewBՎ cͳ3"?f+E"w4Кy _@*d7C H"tW.i&V9C:+~,2qO,*:17/ )ZAT$Z4;+1>eݎiɜi# aS=]@o G^& QokY! ˆc51s7qfHvv+8[ Zk0-5+5B# Xn=A6*#pQ"OF[H$ .(0a5F#tqNƓ%%m{uŕDv{úbjtuNiSN$-޾ֻ&xYE 7' ZEΈ?6DyJT=c1"fYm/?LؽGHE»]ɝQȜǝxr)(6/_{[ˇT5dkS6ENг 8ww]E4[<u^~k?-*MU>JN6`uX\҄B^՛hm*K;Ǟ'H,⡓1}f08Q6'P)T앷ӎ5pXʅUpx(k Wx;'V*cJU'''ߐ3OO Fh[p؎ܨc9M!@\K~q,!b㱏Tspk̒uc@ W5,d'=V|ΰ} JOw=ed (sK}컸|XiJ@I3VsپK=kjDɦBXĪ*NÒU.KnIb)C*$ZnppeVӊw^5͏^ɬN_>|D?Y:x2* xLjxtt,+'-osll$7h;K͋dlqr VPG9z6ɽz[cD@jhg}=Ѵx'8D R1ro{+1$'c'$:>yWz}|[mNuI2턭uJRl&EM,Foo~jcXwVje_ɨ'.'GfJ6tnǏ,Gq-k"5'Axj_gU7P?'.9S) љ I#yV^op3đǺ2(0͈i6,E=lg!gɜn$8 bpll!? fP]voXcMb&&o:]=~,ӬH'2V志nI}DHN@h>#95LfQ^B KW`37"HW*JMbUjgK^WF,a0heo >}*sb,G ãPɇ,!̼XJ+r%aޘ rgҮ@~PsC ˲xB먊JJnRźȭLp!v&DE9<|:4Qف֕u#[IR\ܽx?毫';/r4\F #Ӛ6>="j{ŝ: 6|þB4iOXGIK lS{3 NXep@jhKJqE8oPD9s9Q$긃)WT02̨Bk҅0gѥpYV 9G:e@r10Z?bg j,hB;3zA놘W+ 32I&pDӅh9q2JKy ^gZ,}ōc6!S V~ 0}mWJm>Дf؎na7i%uѶzVċ`,c8PuU@j ׁy]0/ܟb:yx }h@$ i=pn `HHabN^d߼blOn軜ӘE>97##0w7㭇=\|Grg'WQ ]#Sz V6Q|S> DC7(N>~c9;4x1xkѳ,^SEl]3!4gZȅ)Ag- ~Sv޷ڢUwX'{ ~[.*zl7$8h >1; -͢u 7x~x]fU s)+[*3f'wvstJ.SN aohÉUc+8lȵ/-FV"A?~UNÑV~~dE}Oԕqv`2~,?O5;\Wԓ +C#DŽ}cHAqA] %P)y2pS7^wΙ׳;!sDt&v !}1ùZٖ;4[0.)|2AbS͵ obms7|繹]Iޜ FMD>ua ָnXīa$! ?K2=PhCkE!;/BY,%~~th8 qoV𰍻T~r#jѳ*b]T3&\}>h.0'%)4FfLWB73I0 Űa߱ib5PuU7t ~3w؟͛AdxI*\V2*MW˟IS_s}G 2]:ީB^D%{..SK =Qp,oMx@HvR ,֭qfB_9W9x=Pۼ[E[9%F֝o(iFkCJܜ+Ɣc3sa[ŷ E#_DӾ|+M:'[ww zmN+X[ @w=DVh.DqYj:zp .ۏV6\23uŇt0e @d3g""B&ߍ &Im֣O,e㘢,.Ԡ/XAumTr!>.ܕWZ!z$[eT&E~OvL 3q,ͩ~Nv Hp)U:s!I#O~.i.q4הrǟ@KBeFϹPSf:\X],Dd| 6TH7ҔHTq1+4j 3ig7pXx3^ -G0lDMqi;<"A<7$$Ok5>vuaᯇW$!NXΗkKG؀Rf?ԐZ-W̴@ڎY,**"|\8-4F3b1N*& NnGsט:h=SpE ?=v9]4Be pvY^,'-\}c|lG0f :"2%S1 L۠T` nCa6}$?$v+>"V6,"ј .i ,eHej!)3MNb&+匎f汀\+9<m{aJi2;'M-JL=ڢ&Y C0@SN&8CòEkNFx N:@ @6Mդ{^u^g9w1ILr83bf~,ѵĄ1 ꩶߊ ?G;[U=R L/TmA:R ZӚq[uޥcQBs80 ue .u;<iCCiV٘&0l#HGx9B c[yH2=ELr"J ,/gtDaY`N/+$T , ⴥIOvKp 3~{՟-2 vFK3r<lHO˷B?j.جQ ?@G:d @TN@0p||WEw,v@@OgvR3ga2O  *U7P1K#'}No}KPnJKylH"jo]"\mG(1%䙨'suNZSQU$BNZ40Q j"bo9~ /h2iyl3N4SdHg|1~ntSPaV0Ew E\(ƻ͂DB~ƈ3K3< (.0hxY `pًs{߮B l-Qd_Ȁ-tM{>íQk8a{X8*ɖ`AF6)!OTxC [;^Q~VWikUJEdů-|AвAWT-T M (AHU)ĮD9S ߑe%M+7)LLW۰JH?0BuxXпW߁6dFjU&??K,,6빐633yB3ϒ^)LKVp8-:ʸ|b 6bFƵ1&4๗Ֆ99Am.S HbEL$KɖPCp!*W B$C 9.\}%߲>#GTc9;bhk\!aуX @}Yfevyi_<;I}8[|Q5Dm艧1zc)I`N$H>H`N"@3OgDDZ{ !:±04-j0 KCa2HFY8!1ðŜϔcDAl_ )E z [Y&&9=X."vᶚmZ/(&2Vʚ=/ z!/pd,TUN7V-=N8z,,N<݄ۺ^.Ճx9grA+:T&9gA~#aXc?;jQ~bib%U6crqʎ乪 2Xݳ]tZul k+{D(nE\%Kc(oyU202e$ѵcSpv߶mS#ڥ3R"@\6av(꜏`wd)/rg!~޲$~poT؟|D2Zaaڇ *#zs.q4XF!4 yeA }(b'bŒ f?)MʗӔhFYUЋQb[]p9,MLa$>w[`ݍVtUtJ/ibhV:2u#=%Q?&h:ܬ"2o{'[?^?,E(&.r>Ozi 8Xi#״_ xXE61w.` Wfv#Ձ`sbtĺ9*=?@~|ڜ*f]BpzcxT|zQvw/(!v&/c@3YTG)ɟ?vp$C w'VP(8wYr!0C@82n'XuzJr9I.8\U%klZ_ _Y!< P-1c|Q-;9xғ+1 p%Z0aUAumt&XX0C<'n@_xe پpɀWmuxϱ;js~_}gVR >C Y baer(ҞNqSj,Xg'B#ORTH^]boz&@$|kmSù*YĎF0SYL*c)s2'W=;hd U~˼wCa;6zmQ#0$W xwX&!lZL3ᮾ%|&XE3U`EZ2E܅ ؖ&)P+M@( Xj碫J[$5Ku}r7@Ezֈ=q?DT%*_ȋŒ7'fq]A^e 1&v+rI8E\\|-oSܤXo&~ӭ~UaK%P;gF/-ᯣ"@g9ʆCa'xz"UK"~] }M}.*ŠHҼquRœOb#S|$ft^{^< aeH]\O/@ǾY:N'$>\]%~3b=~o,u!~k4Q.T δr0  %ȃ[.bU䯜 <)Q czyT;nEP>f(1[6q$,I +{RZ(΃U05;ea/H.*b@rc8ݬ|Bk(%,ݳ*9V?GVO)9Z{zGԅe.v5fkRd,>yr)= bpAv6Ϳ5m)f=T0W>(5f2 2ZNPJ7\w(@J1\=k/{?ـAm#"u& _ &`U̒;2ٵgs'߾I6)_Su(9$DD|`v]Cfɮ}P62cfb~_oj@x@)ERg'YةV:u@5e7߃UO5;7~[z& ">;GYew/Ĵ 4B*+j7ȦpI$Qh] $FMu`rGrװ }F@uգ|w;by~Tf[}++Al,)уXFʦ4ϣzcr9M ^VG[̭@z URJ $b>'U{`h]s V1 iS>oz̺;.,埨q6K1OM6tU鑦 i IM+皹H_s.Ǒ"[r ؐҊ]q~d}~4$ Q[aϬ 7:BŖnɏX JؑBl846m ?*zF($h"C,n`qS\m^0U'TEx |8vQ.-ѱk3:s\%c ]"%?o5_{$% Q=?={zİQ&36"7!ukו=8mJLuśd4 9#LR+;r"d8,k݆iJMt}p !}SLdr}*9˶q:r[*%α&^u.MF6xv:>$Ym~9 A7[I; T%?1" =jD] ҃=OYSiNPQZn͡H%QBYX~н m1>Vei lZsmTD_7b jI0unf )pZ5j}O<Ryq'!]εzXI$0$U(8 3:!áu)wh;͚bc(WGWMs4wI= !*: 88 e|WBf ~<*#jFQʖ[kVNszǑrTت`, {濆_DOugZ%Ϭ*-< glo_%wN`&^oy H렴NL|lJ=XSC;$,mUPw餜BR%.8:uW J㼶&z4_J\!n$2a F0ȳ9h+km9Knǻfi6dt(1)P'C8: nж1A=Po1\HQV:FuBÞ$g5P~TDzH-Hl](]zĐx)~nݝ%r44\YD${?y5IrZsLH0y~j 2$&z$@/$2ِޞgjיD4<%أ/䠫6ԷXoJb]?/[ W [f@HͮY-b V9!J~<v8wqg~+柒z>TI:wSV-T.>}zQI8[;7MAAa 9xL7``=Un+#Nq׍777T6Bf://J\Q hccgIB C>[tR*LF/#sZZckxZe}LJA[Z䏸>lnW96Aȸ 8Mp`M=9PZ҆ ض(ΆaLd8xV701E$2eY>*¼PұjQ}&rrp-0:_O 4 QFdnM|5BF|dp }Ks;l}y#_BݺHGH崦TKSixD?bns%(Ϝkp l~l pID ߟQ=@5lP]'7CQ=^s~5q ߣ6N.@ϯ@O]v"&-L6u">+ <݃Aϕo|YbvML끗Suh dMHt{(<]UoL kJD$@4_ϾP_FOTVqs)Vp(y#,ubf$#&Krim?Y҅֒?AM4w6!5MUW M]o~heRTTxkpȜ8v_QPif?#7Q ⶨWJzsF̵wuѦx۲7/N%ZE6jm#awxxyZy_ȋʹ݄' ,"qI{5\>} ijXrFqMNƇƠ!gy.e>c8 vInI]$6A*X\6SAF^<%l _v8o'<Wj"Sdc\-B#ʊ2,y}cS}Rk'wqDεStq v]طb@CA%D}J!A%9>Snm9jbx/ Çfvjl" ?;_apk-qgGMW 2y)Srx7V$³NgGF834svMFTt̙3"TÆf`)@rD%4<W0:Sh W70ObP7^E6 ns_UsWRLcPzm)Yy P_N@~T,|O)0vB b;+M8"'-/mgD{nf-g..藹%t[MEE-h˯"ޑ,O6vSMu.UU@߇TlM`ݘ^_O:A>XCvÀ _$! &ϕ{-f[M{E)g˵`JNPuw30}=r[ځbtL;i Oο:jYVs^'m7/aNnO"ҌE<)kv  5zqQp6yԴxG%t37Dzp*,yrﭱ0x8 vM+hmpĂSOI!嗣'$JoTa bMU5 Z, twV{ Uzew,Wa-%Ң؄1#7m@6T g- eoO%D8J} o: *E +`7›sW-ó;j5% ?oQSXD{R$tŒߡ~ DDu.IH&WUxpl_qV<ӭW2S/n/j:@JzCɷyvͪԟ*YtN ;ltB::O2 !+oߦZ'E1g\82MSE VR׃XYNT̟[>'4DLdJ&ql3l1[Ξ躞̒Bay%)i8<qGUQ=9+YiJ}tY]#f\)_!Kט>d>ˋ/u? Vy9cģ#?,aCtuUfb 1-b~~.8V~Hr\`sAj^jZ_@((jp-WC*kwP]eӺHj'F @&qT0y"O4\'׬gZ vCGɟ{[B+r![& [R h`) 5?3h&QzB(?9+ zZ:8&.R nPGirhE0X{`4Ubk<ѯ[r0 XLCL\- c5 f#|TlYt(qfjNFB%zm9w?ędl,/}a rH,)2Ls`_Nq-njΐ~INbu$9#uՈk[U/* Bo|Ա-\My./hj9WQV%\н'I͓y7ՠyOЌ(>72ؿCZrnmHP : Hlɞ=br<3A!dظ#?fMZn ܚ۽%xp8X6]<>C^F@U72Ga&Aː5.^-pNPC#7 !y' 9O仡Wwqܗ-Zx1;򪩂PwE>X'vGT2 .Ji*9%r bdǻәS/mm . ÁWXx h<rB `k1ǘULgf?uPWGW2C _DS.U 5V8 `Gnٹ_:[oءYhHveI>5)kah!惋`$#SϢGo;-\Gk3C.A)%ɐɝpۛkqlǰɣ%3dٓk@Sp\7Ǵ4f3Fo_%IByuRXGB28Ǝ9f-#p.)JBtGfC1<㪦 hq3m\4R㹰&+a|QEG4tů;Ο%G<,ty߇.x@Xzy5.ѪMtI6ljaMUڬhP@5m"DkK06,=#T6 LZi3MDk $ dBNkD.y1cYm 7bɩ#/[(v>k"Sn'+ 1/h);VߡhUΒߖzuNLz׆d~<ǻN>1$Ơn!6d3b#^КDWB,A@voYN.rk_{K訸fab {+ :b1",˳X x+Xriihs Jbj~h.,M_~rMqa$I"Lj7CoijD}.b~k,T6b4rKntV5ې #bbsV! ~V:ˍne.6\/ X 1!FCtP8*DQ,"v@ $LJ ߝf׹ώ;T$.@Z}GݻF>nsg$SR߬jpOF\37/âx/ORDemE4<†b2P?*I?Nn΍(6H`]scP:,t]s>xԙ*"}<6Kdq-DŒلۄl&nn9ku->x670ϐ\d8+T tzN' {,-iA3 +g68U[vEN[?$?w?M<^mH! VX<y%|uSq 6& [pp!fȡ?ANt+t~3ƹ:~LTI-}}R6ؾauqwSQYd>δ؛;$[ eRLY_#Oj}oeu&; ""A}L: Sr%)pɻ-"hd]>MP/('xu\4_%a&Szp9q}S4 yKT@tC{LSDZO71 h:pl,~//rH$O5~1PCJ,#Dž׬Kex<=ΰ^`̃tjՒ2:}::BUfRs'2Ç8gyD ]aXC"$[g@B-u8vƖ nbܮ/ ^m~.;$ɷ Ótlmv>t ՈUP4_%~%V+lLq ~?GK)ʵuone (A~&?汼8R.=M hJeC =@2?yNb^NK|cGLYlgD^TB=vmYz]\ڵxV3gor v<6 x'r„dz {m^4@q9ac%֦EbϩRİQiTH ubMy-,g, mcM8h5$o^̼j8iM5*oBQF7)*ʼnXzd&0[)U&a;B{Q=!@)a?ztuV&uώP*e=<7v服[e67Z#7TƠsa@0t׮ϐ=¼2]+/< ,Ǻ!ؤJas׀2S>\AD?J5?6Q:XۛPs:byTᐾnoј zpY)9/*lNrP giͨ ly4QeЉqKbv7ɴ8P!ʡ~HBIC4ɹQFʸ*|ߋet:;b4}GjV}Kmjn⸬AmژڶdW@UKDEZЙ'Luaehuu#9jCZJʧLX )q$Af@7OLP}" DAn ]Jj4Qhi#Y"h6D_qt#^.7V Dm U@]\3;|7cB?o/?.܍Zs͍:d@h (DΧ4|Hׯnq9'k) -uެB[EDX7YUx+>ǷpA'ܻ}7ض_G?I`Ylǯb-x #;kr~Y DPlv>;En \*rk-9尶XR!Qa5%A8\__.m1Kjb*H/oyHP{|T,!*,=ΦdO-׮):1cӔ`"w$@&)ynEj?>'ek\e5lP6<>cn>rf$`S<󎩱;وg>mĎnk.j~'ϰYvn{oo =ף%鮚>H$c`Sj=':V3ʬ>~ ifi@Y|q/[@%AR oI*ZS#`kLIz׶%FZiOirdW2̬]%W˽EQq*@yRLtIA)(Zܷ(`  tm%RG: ,zIěS)gNt/z8GUi_l >=`U;?"=>$v0}h;V.g KRdo ;K׀&IswXLIϕ7 M8-d>X-F8uG䈴o0~S>m_`mlcc#qZSq1Ġ' 6ˠ I($3<&_*I0`'x?ll&c{':_ݤm=\o?zClsq'Y4Q K0b sj"GJ}([B!b3_c5eP;(BQn~Y}yƆe;u'+_Xw@k TV(PT5q#J0.4֓}96jNr>3{ᵷ 3E"_K_}Fi6EP]gr`Afdc-`D.?lyf 6ŌN&<18"f4* Rp_1_[zz銔/kXWXӄtՓE!xi!tZBn.@lPz*ģfE Ca;O&j-n>jɫ.ˎɠoy kɔ%b)ď)O8WRAS^#5Y#P5)fe|QfȔ@?nR(㭹c3ajCy>x!XzgMpax ol/G#+i vu?89pKz7 e)^ȶf)SbDCI%=>+!.l:vqL_`4|]N7,`;_Mò1spTJt@OSuƊŒր"̑6}[,Z嵹(G*9V vgk:[$-YHCEl_ο+OHDWZ `K[' ѽ}K;==t< emjgǐx3uQYs$ѻiVv|=(?6Wlp@w9S>ൗi͹V rY=hњSwbմ ިR1[cY(K` lR@|` qPGjf ) .%aѳ?2s16%_y` 9lN): mCQT>@T"[ru P /Wfe q405-G!62SGXnGh̘qLt2TEr 84r+*!͸EK\fX#S%;T5a!RڙmXW e‡)3X\¿֖ ͪ 0 }72f!PgMpc9T}}Ke,Y]n8 ^w:a-fmBKx EOJ=*i(&ƚi;.I.>!o#J=UqRk/%{3ǣl.FAj!, s t"?&9eIp}C /Sg+eo熶_ PT[ız:P_ ;%y.$StԞs$= h7F @ c;˒[BŵHA9tx9@FaU~ ҘKUR3m[[}-GnuݡO?h] Hw/33{U,ģ[aΙ~pž~gJ5t.|^#nluV rd`6b* ybygP{5ڨ9C) ~nؖT.{}:w¢S䗡0Ka{/i['V1"W98N,adrA5䊟BBHuhk5SRTP]ogP4 8+ҿkfLSc(fLUYJړ14 M@i?~\Rpڽ|L8g49! ̇yktnJD }JV!XiGiU.SB d0ZJ͌ñp^n4.O5ʰIYI x"_lL^ckW1ؚhV%@Eit:_%X.ѼoQf(kn3-!znWG̶sI^9~C$1GzނK;,CvP,c5_?z-kPhSRQHKꋄ >ĘѺ9,͟?%\ckT t|m±5WSjwgb6jY[k:d-B rAO'jruVXӸ-RSJ|$H`u2ShYkw$Y@\|_OBQhP_6}9 m3e+m{Y3?Mԑ 3\vo>Vv{zC7WJ O?X! :A8Q ZMS&k 7zx-#3/2 4tUd TQzj_ѻC RUxaJ}kȝM jB'cJ5iy NJRjmJFN+#TVRSbTP:~4BM k j02hxoevj˓Hw2BW\`?[I;H?f2'P؝(QO[|َH%*ADSվoPbu퓠M'\ ^5刔thh$ /Hs iM?sdƈLP_ѿ uDy9->' Gw$%@?~BuMM2ŒJ5bK0۠?҉2J0qeTC9%dT Z`Ƃx ~.ŸVN}1wZxXՠUĹ`Ru% @M(2c 6)w|WGEh1>K{%/CaU2A/´zκ8ٙ~lf]R(Ơ}EU$Ͽj|.9h4¨JD vV޶=;D Ip&]`p}i-Ž4ȁ cЉ_?q-xF߯zs<*=zxUV2![7 O S'd[O/*;1i:K*}ӄE;&\w^!$az9"m*ezSaVP-u- ΜywHgg/vHT+ĨY*  cV9(aN7˹M)|UJ]aQ6@yǶI䢖 Zz,Tk]<j4C.(ƣR9_!a%`)' *qS{*K9];mT>l:9h“e Q] ȡPJY|X q2X>̶֗/>‹1Vb+F\k;a_4~0,qkڪ>H<4)=$afpEd&[xgՄ(s1E;Sf#Շ)k bdd?V"7UǷjx;v{}(HޯWC Ejlyě:}0S~=G*RRt)v%ZNPS[l߶Y239n -aNvì: 22lv^{[?Gq@jp:5x_)VLeQv9)Н~kk>jڢ>':ۓEcF?Dvf5UAENU aayF-t9DP\;Trfk2H!7WTTn_agKw4 d 7g*6Y;KJݲpuvNuQ!=hU<|\ WMe 6+:½Yu{3"E3i` ,}'h !Ҋ quVvb/q0u RjfT75'$Z4*A27$Y;:ޯǰ {ڶ<;kB"NfcaxX;z{`tg)kU9%maeNT - )Q $;rF@x wH[~+3^$~$y;Nl5@ч{Qvi#HJ*xЛe]&!zweb'izXD[1!{8KX(lkPColO)VEFsRDKU2Y@ }%J mƶMݰ3r7 ;tP\Q;m]D4m~hl-چw-˭VhJoGP/2M&ˇa%1R0ÛƏ,1!͝㌈IH8?Z, WrdG.f &[C9?~Gr)y..e 4]ZTIx8] (!~ q>eP],4U ~0'ABMP*)s$&}ŖA:w]>jAU}_u2BrH r=3GE&ok0gc%I Ǩ`IH)u5x8ȭ4s "G7U*&Tbb28qsq Y]Tl4!Ɍsr|y˙qmUTAegQ50.g 5:BD&Lq0K}q10>{גA*IFMIӳXR6ZMUBllU*IP|9 IdGZ{-gu0( eh| H9X6=ZAM-!^v-/M;8J2.! Z0ihic o{)WOfpI.0`i_y!*-5 ֡ J2s- %^p1-"\L!ؔEj7{t_{BjN[-0aJIđ,'YuM Jz8c u˙sY hѡlX7c6nBlP^4u{s8HRan@>*r&5mfr:$yƏKS=o`ڔaZ$&lLD~iJqmXPsg~)u`Aȟ)^ ]~S1ӏZɩ`ԁ=j a@^.Á$KM|>0@=6u]fz !9#d[@n}Uep}OgcsX[(DF_[woEf(/`$pfHVײ<+.NShxWSlSY&\h㮳͏~St)%0L2R!NVp֫?yT@iٶM DقKi^(]"ZT 6Ɨ>S''gl$yJK~,/=[HSP.^^"pb&= rDs4U$}396l6$ E"> 2cG~ĺۥDr6 JtΈ/sUzW_,"4\oɛ /w$ѯ q:/jkQXo1s»s$zGnV  @>Ϳ8|ch'WbP P  z-Iڇer1WCeg3_Vi_;,?aW5n,| (wH?k*aLp]RZ`9jSI.ڤQ+ {6$.\mg~VvE t$=q &PvК@s-!W s WEkpzwCNMK{tFdn!;,IU-)QLIT8 O(-71 @`Ȩ(cs! \ň^jr jO'U!*c Kbfd VW\B,+؀8ıWڏ a˛Ҙ+F 7/e{p%!cl։Y9^{v 8h QA,P"QlW.78?[LԻ1$n",;@aHD{Vu{X,Y!(Jy6V_ 1\_(;|X>[K}{tU;'(XgCFFLOJ{@]x$zzѦ/Kj㑣 22T"ןPS)3 cZ";[xo4.fa^լqYu'C딗!Vb' ij EpNTE$B,VŎ$^Ҙ/|2c޵(w]<vK0?r^ݳe6QsN4^PO07Dt|/݄A.umW˃!C@azvC7z /W{Qˀ/ xmX]kufM;}8. p߰#$^< ?3X2$=ųuo䑜)%(,ax YqޔO(H*XT ~(&,&Vp0wCEp3O#O!ٮ+da)ƿ&K|.,f"aኴ:Iڽ_)>BHؒV1`[b`/$tU)L@>vˣ_]߈`uYf9HyĽ]TxeR_(6B9196"T9$b֮;CO8&=45琴qY3s =L߁'N1trkGV$1Xf&CUM}NtYQ̯.Ï ,_9Fs zWNv~"Gw&^^\},ԪF q¤#Z0w1(MINInxb/o4Tт}iV($\Whwv xELPU3ADHEb;/:0%]&CEaS 9_2ui-oM zp5b}BGea}CgϹVEKM+bvpxUzk蝦W 6 ?E kܗBUM~Qe*uft$.U-[hMKLZl5P4vVl-)Ɗׂ:um<%}i@S9IuGL޳Ӿ AO`LCϥ<JK||Ͱ9e$kG4w ys6 AKdUrҮ_@ވhM@hb5=ŘT"EVV/sO׹bD[4]&&1F l3T'p^dKdmBe}/]2i!%0`^TaRbQ 8eLWz˜E,t*&[ ˜]Ŝ&{@q sc}j"bKk~7n+ԏ04 ɨ.>"N,ȝ)BqDܖ*ӳ!d)cl- PEB%-qWnI kK\IhsE[}u5vRX|@^UÌ%0vb+*62YK\P>M[޿ߡ`̌VyJ= 9T#`H"L13߫ .M4W9,t}=F oAf < y4V` rUMYy ?)"OT R?q<"mlȊ8[&p^f&ȀSq_7֮ǠG΁~;2܈)3kgJUXjٽiNnktSߚ{-<GId@=, ]1?#b 塋=N6mLʳ=B!¤z/_aX[Hj=-lKhi~co OtlJ~xs̔QZ3S!rC^Gj;uh`si^ۣBn!Tc>xnaFz5 [.9KFt6Q2Ply8+#,Bc}P4m퀍^L 5mZs9FOu=b]w!DFp,u K$(%mC.$$ )] Wk\(ǼDbTuu+f}[2,iolflq.f,PHҠ<<~|΋dsδ!1}N!-Yi=,K>|=A}{;yX-Z18 16A>Z|_8Яܸm?nlJyHv~K'ۗf瞅O Az 5wρ>2 6E Z$9UQD8  XEQ\5Y|y;m٬31I hf*:WŠl^N,u$>}) n+̿7;p;Ņ']1H@$8W"57+t->uv!Q|3BcR6u`S&2מ+o*mGgN13jSc5WG!X3vPqtҷ"3^pc#sQb0T鎐PmD.3PSjҙSD uO|cZ;u4žH˾'ZB$슐41w;v\^+15{\Ȕz,"+ߖ|kEFFO#X9vF9G6KjEiPُ<\켬 Yn^';HqSd p۹.Ytq6&I+`-Л~Ɍtl(*y6NjXX-?fyaD&z$mnTWVulIkiLښ|7  P5{vS%#LqFLӓ?;@UJQ!)4epq=c$P1f!,XIVAp6 Utinf4vߙ+jop bLK<>"|V+ڧ"/eT:\^Үڍ)݇ϓLtJo(\^d@jXV(:xej5T؁aaBVh,ZRY]P,`YFaqͥVQw\LW|،p %J^@sr0zsꛣ՘/'bhˬyuv;EuP*Uҏ8y520m:B,:PУ!- PSM6Ѩ7ҥ[_gkCyL1 h [ud!"&fǿ٤O3* 1%3spwq2V)ox4ܷ0D: HD?"͕r 2 >L )0 /}t<]}kǽίT0؆IҷJڠبOd@ ˯ze-9=>ҳe{V0t4,*u8f LjCSUr 1ؽ0E4"8=Q{UdPgz2CpMp ;-;V譁.-%7NZ whP\8P(D|+2$%RvU*?HȢgA<t@ SLMr1\93.0cH= ΐЙggȔ-*po߸[ß fMjpp_ͧ VRxFu^+[uIz䊤C㎼6aajT&Z$~rҐ\v4q5qzmdn)"i, qoH7ǔ%fm|ךޕs<ȉ>y9"Y[t9 c|ݟmF9 ,8DÁՃ1ųFᣞH`MP)Nshhp{>D8iHr#_x3fǑ#Sӫ vQH.3rL:(+ rL"ӍtmO¨V*{iS*`-3وFncw ur$zު'xck %ھ"J~l$DܶIbo <%FJgRԢG=A@8QùB-J5scdQ7 w_jJ$Qt1j|E?𲪤 L-[rEU?nU'À{#逽4ZD.)\+3v6 WahIڭ(`::&s9BDʛ@Tݭ*Gn*`p;;2-L3A'z8] F027>͔1ɣZ'zbLDI8nێVި5ihlm|]qN|.'qSNCwTPƼ3§spKgu-"%?Z!K HAaco[lKqZnt`G\{?`fS|f]1K ѰpˉɫhvtXy3@0 ]!.U^h8ZJE\.sm͕V? 7ĒYmH2bl3iR g_мrPvMPdH66Ӿ'wڄVWV}Ͷn֨Um#om$}!V`2V|=EmRIM-sc}߀\!LDk|10ڄv m[a^ WR[B9j9ܑ7Ow&\Nڅ2}+uiǂ/_3 NC, 0{?Unj i7 L2Ӭ`+RBbe%[k,ކ?DaZ6hWL$367A2^vnL<?=91X\I%!0]> 9"ѣ>bQ"!w)>m4T8 g G-˘H]Kz Z 6 \poř oN$xoq:HxՊ,{AEm0o[U<\L$׭/_ s&e<G=GP[럫 V[/;WVgv*[GVN~m<43*ΜoaD?ɯ`z^#ufEE%I^e>]uf`ֈW-Yڿr`[O;0/dGV <Ң7&ձ28vƟg.!מ@&A>GQb3kUĆ14QeRo-F2i.w&y6EPƧ"I~x<^v$}緯~?QV%Æ gŭ@LӷveAh~)Sېerj,) "dSYNɈC1z35MB];us7^y;W'K_=j-ʅqJdEAUIwkV[#As$R]X/Πj1^尧Aq!eNYQ4+ y.Ϻ%tBi%SwՍ:;1C#>"{V$YJq|!P3ğùM\oH|N0!%A>w2^54K𬵜N,XԪvgqU Et(fg 7"-SbT~CAW/[oD t ]>uD d2Bd7? IZ❂씺).sVi?A60(pLPv~ D1pp_@b\_G[A.j!4)ʏus(@(O_GDQsx|4FH݄3r..ien$J7)wK!c{hI0UHUf+0VBq_lr&UQ _ez.)w_eAȯ^JFz_?T[]fE|2`} dxw~ z=iQD|YCN'OSe~{%*څQ" @޿>_ڷTq̑0 $MqY^Op $t~y&CDzMQ^ gvbL ׅd$?2<JIv9킵"(fx-ZݪsAMLQgPJH pO0+oW7qO_<?{Eh:9@B+d]PWV[m=ڿ^kY:s,)r#._@>1:v J***J0Ve֯Scdg47[únQ /r|Uj+;{_nkA?g\H"AZ8RJ`v~yzT8.zomݜȐl*'\/?qUΓZF@ȎU^_|< ӿdĝBJpIM:l@*_Mhږ[\:I»XU_3ahf.e*@d*7ۻ NL h=jZɌbS5Ju\e FzlrqN߱n6_WzaK&l6 '&.[n3P0V$ u޾4}rëykYFS@é'Ȟ]:)tA7:}owFI"6#@S=@p#gg{kngr3!Rӊ.WgA_j֤lnc84{XITS%,eo}u]\a}o íʏevygNgEa`Uj `ɕ2͢g|8qyS C ύE.vp?؎ڪqZl>9O=nztaMgc5LhyI٣mBv1c:GѺy˄ rtda3? nNz/%#e4EWMBlY& J7pMI ?iO@(M=%P Ħ~Y I.(#1~Y֫{EI]yE<͉xRec@p7:vqGccɜg1 ²Kh.!nEױ=t|dzMf& PTપ &zFK~5}E=++L*BLs,7[J+s:#ԣ훝ewL\ $4v!`~O| 6?/|c)v[P *BEd%ᓶo[u$,IfVRv@3"hR8<~OosU0"k%~{4G R~H_p˗Ʌ')EC~hɇ45$ZBld^VzJ:G ifw"G8g /PTDBW/1 D焕"8Gpv ٜh@q,͂sEs# PRS`'4A\;7) Kd6^u[6@$7="TY ~J W7MLKh5 F-.4ȉ|˕3$peκ>S:Q'5r}A[:`wTދm*L PS4ζDD2 J&\R(_v3WeE6goXAEZ`УbE04/V$IjPI .@"GFhg! M m1.w-)߀ 8F$x I hɻzX=cz&s.\q\i'n$q (H6*βCHƩTA!`˞^mW@)PIp^]1AAѿ2 a<:u0~- 0nQWd7bD?߬k} ,"1FI7"UZ>lc:dFa Z%ۣ@.v(]OݧՍJ|rXO+M*-%c8zy XI yQUg:}uߕ s *_4PyAMT*\7,$Zu'ݻx"1>G$S}7:O\C9TR~tNeH.[M`$EFS%f{t,B|ErgiۨIy+ ~iguT0VٲEn/k"\喉Wmtu"vC~~5ޚt,92scKaeB2uX!Go%v`n+%i5*$J+Y 4J I8on%gs;1f񻜈wfL]lO˘6!wMw6\\E?[ PA^fM"dQ#$1TZvahq)|:VvaU5NBn@+n[0L9r0VIn]ߗmWip=qRm!9o661JBQ[ X$x67{!"ᝡ%Tb']&ʝad5{ EO<9QщXd8_ ^!QV$Oz}GolM^~?妋 ^;X)(P]D_ .m2xvI:;#TԦ-#l qJfm ח<%Cz-5`QtO񯿄fž[6h5ʤ25qcR`p<.%+xI$X_C_Es Lu-Ku{r1h Obzr%aM7}䚵7en?$z>Ob('hm+USB?;NN\IFaFǃ4{>9?|:؈{={1~pp!)\zӟgnaV]$ |D-N7R@@xFk7qs# 3) ESgnʱ~K,jECJI}ww{v?Y< KH`=B (I2.U ?m1 _Ep9Ck}üHTNi#<9>PA66A->KGZ=TlbЩu xv`#/sGߑqZq=;ކ2 B6/CHQy9pĦ¤ &v>0M OѣF=Vj9%0p}v}2)xb"Mc{Sxۖ<+})Gm;ЕAIHa#d;a΍ƀ'tIsb@ 5uIS 2F9ͣO3ٚT2o!og,8H߸l|iбJzHcEC腌-!%w` hI)DوPo/T ~:c_?pwFT"I`x;$c~ 47XT&`[i7O  /+Vꙗ0bϤDŽ"!0RZ&p㉝┩ XB!`'n6CV^*Ǚ_z&QA"<+VFg6B\?zkX%Yv}pz_g X4E+-VgXhH%fq.cV8lB30+xgKw'91i-/CԉԚV;h Kg{:B_i *HQ~H뗐8ײQ?.`q I_f=8 !a >xSuBB+('53T[mq66=%p.gb֙ y?!ǓJ<(v9dQ]EmTzlvi9 )oFxOQdwIM*:َ"`԰G^Q/kO7l*O)uUb;{6uO0T!wϗm?Woleà Cs|=L2MxevENKsFA*MYJgǡTI<ߟ`?sH1Iz>]B%.4@X(q FớznYWhmtR͜b\% sV \FEH^_"5L=Ry,D|7wݕheUM'-9$wsvhSYe![G 7%w~RG9=SƃV&SDD6Kiٴ!uy|fy-*h ٱw'%o<[\mE^wqOO]l;Wsx=x(O}-%.K,j].ɀ]5 n\3&?g\'V$C0r~N'xKpp65-tL5q`V3K nl@I=IW [=R;=7&#ڿB,C2quE@3툿9UTΥ`>w<#\c2K[22_mBo>p{rϲ˝HB 5s&,b<a͟,(VpȐk7iXE}_^n5W0PJ>1a{5P f(H|jIni=܊wSNڶ5n+{IǪA[i}cjGlz1EH#\:j#ڒW=DQ+a-A;zHkW牨b})fE(sIdxr3L$WoDu-*A 5.Z6i S'ћ}]*~fG?OXjI( @AP/@AMP{^4x]p <hVdrAX'I( dU'Rr}``~Ȥ./I;Qل~;Pؗ ꊕ\ҹ72[h¶6dKg-m${WTcQEfU4?bnJ\}9]<9t}&$ (1@lgA)~k)iܸ‡5 \ FD|cV}>Rwcx=l30M) MrFp`YBo- o|R\=s`d+"N7Fr1G{7!8ڇQ P<&Ko֊&v?sRs覜3hTM&_!bW@:%)b-aЙ_V=BC&=B8nGztM}\umӑ2vef~P o=+ѧ%5?k.r _M𬞱~"A0X뉵k_WDǠϔػѢ'.VrWb/%*jc#CI0&Px0O?SSMHE_?l^ SQS5] P/;SReű$NI'ZA wĝbۡ+_fSua76;!4]VXS-,mbٺ@WW(F52fFbfߘK̖B<d~XzCFT:u9rha?3"H"3z2BGAT"|MZ0pjyhjx/KtON7@}f*4y΋؞qE4i`67!?Քw ]z8 ?.?XBw ;y^g1҈rOo(D?JQtF^6!buQIIAIS` 9'(,RlW:!"D /=Owx +YI2f3$M J w*y,qBe ܘ9נa|YחA0ih<T9.5tԘ8jEXg?U!.MBQ1{(2`f ]UvR=s d+p)M sv kQ2/$k<fTs>i+kY܁nEv")U_v:߱U1!n nbtcx98Q$p5r]+I5]K21 !AӪ#\-y1N*cmjvk.Y_u\oC# ~c>*V6nD$zʊ*G>shGG(|) ⠡(b`&n$1ohPuZA^ DqǠfnt2m|&veȎ.􁈫ڪg_ 'pEC"muإQ-m4!* 5K 0V(Tx@бXRDZO Y-oDG,%MVz _QՐkpyIgJ77[2'*%3>Z1WL~X8ќF؊1"f)Dq X4C$pxjVo$}_i49GgͥulZ -w}/=bLxłzC 뻟#mڕcaPDԓBw*qs.ŨdrsNvYu[֔ab+VG!E #k~"! u~r>6$HtD&%z˟߽8eb' +^?FS͠UfjݽP(0¶+0 k#@#7T!~ P}ibue.F[bKH&]h`]~,1PU+ (bMўy_xmB%cz' [<\in裲oٰuoɮvU2*O;#U%-k;OBX˅1h5\Con)Ӗ#]ƒЫ[vZ$<:Xr6p|awࣃK!e9!Ndvf﨡 wL$Q!|Z$'6ԉ8jZ`CqJ)dZBt'_"St̲:}V b MAyRGnc{q4>ʖ O8X>^MG[)K2}D >VB+ĭ>(hy  yOl馬g\j%*<= G\˯1!tKEnL U! s__f}!p[ ("CTY=djj}Dƪ>bS]u1n𞻀Z|nZS]mi s)jhZAr\ HYeQ(0=f:[ޝdCR2]Mꌝq߯Ì2p;9sji\0nq #h_u45Ȼ[voSwvzd!ΰzG.`}7J<ػ~XZo Dhv,-‡7**^JAa^cp #gsfNnӄ8D: 0|p"?{ ڂY߭c\.>afb)VKenm%{YeֈT_QUuH$||'9ɞs'>p"m%|];(o mW"2Q#F52*6M4Y~Q~aBobz HGi2 *D ƀR~4?C>%I^^@Ł)JLPyUbqmK 1L9Çʎ>;B֜b[\j~(Bd\.]5DU{Z}oF,^5MB WV2M}#-c`o? }0ic'$ 00ܙ-L$ g${1ڀ%k$xe"%$tFEG˿}^ OD(yGEEv&jVyIF2Þm+{ bkWX17Oo$S*E(g3vyx8յ{s ~|T&3dpuy3,B |eX^zYoWW+>Up_EnN^2&i`tSUu45aSD'ԥ% jN2="Fxz(جr`ia}pbU6=,Mˈz$3 noK{n 0G]: cyҶoF͎xO2zYY|b^6ܧ;Y2ZA;E$ddPj in`dex!Yl]mǯX[,/%a[;JZ!-Mg"1hWJMkLEZ!"a4g&z,oҶ&VY3۴L:< ,dRwCS-,r/i<KHX9=Pc㟂\>ң$φjlh_R>POa`DzؐJE;(B*"ṢS͘Hф;qvJ[ ݨ@+Bb'߫yr.ٗKUb =;s\^d~:'d4 ݛW\-XA*3lހEM~"5L(\1mS` 7as=.b uU_JReц^ujƭ#ٓAud1;}A EzuNJIw*}掯~˖\F8ZDLSbE״9'jBB+ljrCL<"sj81U~aq{."d,m+Qƃ_DMz$a ̀: g.C'neգ}M3,҄hy6L p5oMeNQ6[ᰗ NJNjp{BXG ,Tzqa+Smߴp!5d o81b<|O]u ?,$[zdtc#Eei~H&Q! $5ҹATh?P*I<3Ţ N2YFhOPDsCe+! A#뮳fLp?n<٨ Zѵc_%/GbF'/NzSԬ09s ŃL`H/p?R';~?14`*/wS3((GO^|]y|j^$ DsGѮme0˹_$ yR5\I"Cqlos?1#ލۄW#˼7[JD W࿲jrkG6ޏp5ՌgdC@^`2TZ"E'j)/V+ # T6?=_޹>q4g$?}qxM0ϵ|v7 /JZ._Q\˥{znvoo#DÎg3fzr!?^Ww' f|PKp_TnfN^-|~t!Wc/kކΦKQ3l& íz9W4#ۜdoj1g+VzVo~S!8H(]re` ٞQo+=] ~.~TN,^#ecM‚ݜHh~X [v d+ F2늕b&)5TuFP'Vw p,G/&mɢ YcI􋂞>I@ 7ޯբPkidgܼIRyc g\^*RWe$xٙGߠ$Y>f.}Z#jRvԝqıeY< ޓ#V= `F uVnM/#ceϞpa ԗzvJWVȒ_SQz;OR%c @~7,{ uFH/ TkXJ'O(.~C1:UZQ ?";֖h+@P[L/ enRuִ4~΃\$=}o+OnYИX埡t]$|yq)ve$2;J3s0λw*>*wL[N;?N7 ;5CbV$"Dڛ>W/g/>ݳ-|Я4Nj+|=2f?ZKy!1r343g6 W* < ď\fX\ Vj N8}Q+v N^dqW;h}p;tPHKTZ{M 5ropKO;I+ 3WV4*<%Q3RfOfW՜d,H0pl4\y3<̎,]ONOޅs8||-ȞRХ:?p2j GcHF"ZQ38 F7 \BHL3kqN~Օ歩kT\ZOw kX[D=U`_jأ;dsNޔ <8|4&ٱwSlgMRaвnf}%L Sq t%{IW vC{ h}sBio"*S1qm aȻ{™MQ0987'*}@GLb?}Y*v+p\D\5J~G@T7[Uzbhsq؛^iWZoWxe i~lDMV?\ ڝIU}꽞?S"iJd"cVI O#ZÓZB~tg{Uq ,DOAW4soMX)H,J)&  IvpǻXMpm;|OsRvJsWkijcj2[~l䮣j.O7Z*gtVF <ߴ> 1vrQy1<.!#RN ﭳ垥§qަ,/ݠh>AN>a L2W:lfuw@k |ڝu`ġX˔R-"`G]5}eV uTѰbYV #”6i !aiI0hx@! n}ѵU*K@ͱ^&xC{%RYq6LtD-~@H+QֿrcFh4uRaDM>;aBO/Ր Έ!*?ShvZm csȝ@|7i#8gl\r.vg2 CDۦF_Eg0W:;k?Hxw=\XzyX)qB{Hl,(- u.1?z|{ZSl&Q>=V`;|X dztyTDM.v%dU]N^pdg׃|]OSI} ͉n: GZ[M )1ϸ-FU@`yd]A4$_1í2㪸$du >c,S_m%+iNi׵ʍv  FZ dNyXp{Ǚ?dހW#۰e3įk٘KҤrivEw+*G$%\ 8-%̇@KuYr=OMJ<p@!+od_hoLw] U`ŚD<(AdKoUTj^PoXSh)/YD̈^k׷w]EzP,D,DauZVEWAA{ɿDlwsiE2}21JC2n݊&.',ćwcVQ fŵ r$ƼvNlEsMΒ7N93  y:G5K'Ƞ O܂;2`m9\BsBY r*v|N&[$36vzm(Q:lװlSQd.Y=>FIx?q1!$H6&]d|_.)uυ5}%U5i!Ò?"мXG7V_˥;|`11}Hy}~醎ϓjR@GzDM M޻+KD= Fc? օ.GNÝ0mTpBYF ) +mHPd|Z"Iqmi:g(ǁד?o߂:6SJE]B7!YJ@#|@(n,X'xcڷv-aDuv,u"qVXny̳&Od ~aDP ˲NRӿsA.다wsNmCVCf8o!Htf:֋O\?[&t%`\ܻF:NyHoW NIrT.9=GF;-t{0mXX0o曤˪ᘘ^Tq鲚B]ex#Y7Ga۰e^89SN'U ĞZVщjhߞP'xr.ReCbaK)8 =~amW8F}tTud#XDNr+!|O6ߒ~UDZa'G1m%;U _uǝ <5&CY4#ÎkBN@n}w*?IpJR~EDȍb6eAB2h@:zD[˷3,tg݆fE !#OqhKZE!Y`o1h0v1\s;'Dd~{8K39a!s!Z% JbEXWu`ˢ R'gȠR(]pE u&۳61,N3%trŐROlf-'kr>C{?B/d*#p̯}* aaU Z~Q 9Q.LwDWZFBQTuZ '}%e,Sp^t,FS`Du9νKIfY!(tEXl!򝘭८b(?Y#pմs?e?1EJʻ+ MM`elnBjTNNL{kzB7cIOե52>z6Nфվ p׭C'\g pu헇9I{Y 4d25Fll/Dt8uvG}A%bc9uދC31Igh m|Qn"drA;JqR6=Kfu/V \3>>>;|ѫ.gE-UojAt¸Wz $]B۹e^VT-3plU<|+x|,޲s_uek~N]9W(\~uIf)AjX{l,QP76*UJNM(wM fvwJicaı;\mT7clC&(3 ELg<.ExGZ)Jn ̓<XG_1h2@StMS$J碕qLvn\ܬml%XU;ba4*RV fz+!\*i^A9[ӷN`0 .%xANp_tH+c~wn1zlEk3Uy5WֶiN2rۙMb8h)j*$VR= \V)uW%-ʬ3^rϡ$ ZC_ 2 }Fj_~|&"M.#y $ㄯ0S6j)J{+Fv=h [+S^Z㊧סzGa/tQ#A}3ur9FK4Ḿx# lz$uϋq Ju.cPNMHEњKu4nwH*~Frzނ#9zNjR; y|\l|AUgCwGfG=}M!' OVkÞ=G[t^aBc؎7Ts왨فoPHDNp}@S21 ƬCmLƚaʮ]'sWOzsv%%{c$BEzo"U%MSـ~UL)uy[jA_osIKjc@}:nO-#='=dֲeřcJ(~P ( lL;xUkEƂQN99E'oKqy0# Ø,u-ӌ^5pyQICZA[I쁤i1(.Ы}_6Ff q/̝[xKӯ #;|y5kIv@'+E44!tl/!B[ $VFu;V <~Bޙply*G;Eb,e3b5-)QguQo&ָ`"_-|2?^GyA(T$0Em5j],?i nAR&a,3@PϪ%hs-Q^p$9I0=-Zᕬ4 [=6$b=ݫb"sҝuZD 5GkT$iVb7/j_8[/_pfgbo$#ۙO  '2IJ>Xu k [ԭ1k4#(',jQ=sKe)YF62aXӰE}F}L rOl1lz87v>\AԚ#W\W@p9/ͫ}(\}X1! ce?u{FYj6! A'`췘7t #@M&r"`2I@*s(Z/c.rCk4g)p<W{&AizǴǖOjȈX1 ׬ط]ez8}xgr(rD$Nd@&4^7-=Œ00)X%u2"FSIaq<тhtPX)@\-iRTbl9K+C~bE[w?ȹ91lf5%2>`XHU3VXvEo{qC*oK»pC1qa;ϥzٰ%#Y`q FtzE<*gMV 9bqdPUX3@a,{'ut/ё9a?**{Pw~^:rHBr5 r.V,}$$I<=/xF$\W21R FJmsX ,~t!0)q yKT"[@fSe#SU32O+]>f.p}NXF~Rg${?WA$˯uhA)#t=P43ڜٙZio%s%4gzz6N٩؂K}:`AsP'큲CrTd^ ُK 4^1X縩w+_ oEso& % .lg,SKBL'T,"(A}"}1;j^Oxa{+s-y@Q'U*JR!E!#NKu&`cұv#@#5>*S?W x Vg31]9hspU;1L)8cL+š&eV4 k4v煸fB;;~zڝ{A:QکyBsy,Bk& ?(Vhte9qmdY2 6 ]+c.I>m9NҢ䴲wXzH(؄w_D0emo裊ˋ';;U |ssqyMS 7s苤[.)[߽ G{,/CNX@~:śe޻wRBv̿JBh~mXso`iuF6-5bBK7NJGvwYI_^tŇ JM3gX&:z|wųtyfmAk$ !ڢE]$ ;{+73e94J{ ɪj1"ge,%~u& rlOUe#|?:7=Ï&S ^&>:1?I:Q>?ءaүT? Vhm+|e]Ï7VrC3 &eR٬SR_~kC KOAMU!M$ r[d{B+"={s| o`d(Y"^^1U>13M"0R.V`dT-US ЕF5;@L^{?أc˹y3d? uaHQ87E_ [0>La鹒)B j8vF!rfigv꛺Y#EVq} a;gLXـ,gL++082FcCFw $֋lT^;Qσr9GXo85HT2րlZ6@I"gtD0)ԥ bg:ħ!ǔDL eeh(LZA3 {:ӷr eM Z1_-AK+5 esv@'!$m".M򴻍'F/'P‘".b?3W ѡ6cjƾ;h4[^ciW5h IQ<]v량#\g+&vEa?Zzlt?xOk|)@3Mͦth6JƸ~.i"J r.ΗS;scEHv@R0R`F@WuəFC%cLIƨ6OY9Z^{oj*Bm2%cg@:Agch8iQJj/_{Ҫq$ ܳRQJZ(ĦO+&Oqd @i$:o1Q6#1-B/9-wfh5?*YA5 a|v~5|Qi,dDa\T1hZ/v#0P<‹z VHsG_JJ$b޵+f?]D0;~2q5aF%1Xϙgݬ f9jJhu.ɁR$1< wr8tq[-` [B ӆvAzc 0d%!!n.7C80>o!  Eix؅ȝ҅O hg4K>SV( D^ ^iB֖Fu{vk!(^~ӄ<7;,鼤\ (HM*7Uuܸ"^x%?X>l<#-+,J&}#OܮK$&ykkjU(0窙MGIXf|>jV $KVF#10xGVD.i{*9Ouŝ7M~$*nQ3 ˸6yŖ挪&m+fg~?濶= ѳ5^L{~ubR[I^ \3oc]LpvoeB$AI%"4=dZ6S BѣTF7?Gz2ݷrY|'o?Btp{0PVc& ,A" 1 cBzyCPrTv`t&uP%"pPRˢʕBQɟЧmYFJxE,Z.h@ϣFe"Q[ - erŏbe#aZ6 8\M,اEG14ykSQ,E*CS5õ)y?`u6rvMysEM;h0-N1}M?iaȁw*P7q11Yo H24q01dǏbxg+BJoCUZх٤ە]3)ŚP\Dpea1I < ñM=;T*n< O#aK#U9°ƌ f&2F8V)tX.fբd# $91a|-lC.8p(p>!>lY]p'bwj"3+~{YYxb~'.jekgɎн~Ϙ7ԌGn|p.0ʾެE6ߠ~vr/#DA/y]VLrE'gt0󫩌凯ҍpTkȒELK=BPq8J[98oE†4 2;Q?T|/BQ C O0-Gt&A[]idvc=<|R*ֽ:ESc.?^wL2_ 2 4  s Y1$(w\lf@O!BqR:Y~}Dp-M6n:20eˤGAgUGnz2ڶ5zF\En~XqʷFsu![j랃=A|ow_S VfùFzAsWuě_| 〮h &-+{k`bV00tlc:6am(>SbY-8/݋rEFtEpNM^P< @$GȍcCvo춡 >w9ŌcΠBP]&VvA|YuV z=bn`Ƚ~)f< MXyu#_-pH";>a~bi 9T![4!":g6-HG{ `ӳ&HD$|$Sʼ~V`' oQs8l@Rkӡ(҂Xĉb_xWHnjg!Hgyf׌a='4m1+p3RP!p hVTtxzDKfJhgkEYS""rޚ E;0K71Ij U@UjN%*}/rK(Rp"@y5#}hp5Qk":Yi,u'-% &7u¤CQYK?zY՛1BT` ߗ3کٜ3&AQa6Dߧo%y'sy4}tkX5kDh!Y @ 7x@诇{JX2{e3W71eQłLlsAgRxg0=5VM;/H]*4:\CWO31k2 ӎFQ8<6*^:EE^w,6xڑU3n,jx&)ON ,4)YwΝ\~%_ա zh@ZxAR#>#9lIaԖ?+Z޽HۥCٝ3_>褪HVJg1l풂]{`]};~(_co|WhnV%xRUg-mo Oy;RǺ1KGɋ5DjF_ݻTv0C!d1^oy;XzMޱӡ6LK;&<_![ܩyvck(4e|:?"LoPsVu!xYA|oyr8cYU=Ǝ( _я5+QLbR5@#̳ur'2uVOFz;.Lgoݰjb~;fRɝB9?P w_eOϬh\#dg)j߹kmLU^0K<8]r>tyvlv@8 -vi({'7m2fJ$uaJ>U9 IHq=eBl)Q\Mr^ZƟBfJT+Vq`}qb>fY sw . eIXWǁ S7c] .7UXKdBgB}eB2 vb?GM;A x_P7.19zVsn[qϫrwsD43}L5&8+}U6d/F띘T>+#@5zKY0Ԧ"EdUU k!H!Z 7xpsJ_ֶ2`+^[4adg[L7"e+U2 &;MlO$H+U\Ѡ*QE86 $J8 !NҒs/M\ٷv !L͸GVdP_oRCv+>}NjjȸE(3Mmc ,5o`Z{ vLJFeQ%!_e{d3Muޅ_&OUX=EQC&\zHv^@EB6agIlǼZp7iw=8uA18.# @evų)Jܥ$:a1 s)azUaplջDWu8>Ňz4kVk<4h۹Y7/-ӞK9,}<{Hɬ\lqS~O`"IYCogds(I4X*TLu?,=qDȹB+pƃWU2bwu-4)'dWu] ]\3&}Q WP\)a =oˉ-&r~MjG.ӊ^Z(Կ$ޗoӌ9CįWmysq5O)`#"n]᠂) j+}2aJ7@ T5|~E[j8:Y A!e:Tc ;i6Ε|I^,oh#pM(O0>U|_aX@m]KU榳^_}&/5){HsYs)ϣ@N'~cB BQzu1ꪕ7׍hHMc2,2ˑ tU%p8h5@eI0 }1aCmֹdNjp[Ŏ?Ar Bs \i>E͘bvB(-d!p=?|Ghh7" C9)RS8W3FL?6mm΁e _Q9 8yV - OW7; A6XAT5T㛭9OhM D7RO:*Ͱm32 Ľjp*3CV\r6ne _,4q?7iP8q"ԛkq_IIm^J\Q+/" >rG9 Hm ];E\C,8R|jQgfԴH[4r+1:sH c+܌/W\H2R+a\+FզRycu:7fv~+0Hf)ң?n4G4Q4tK[뿑jb`ZBIa{nE5ʦu8gcaQg[l u,  r +=!=+>@NWH  ŮfFiSf=Wd%73Z2bfD#0hes83ڢ:}2ZZ @,}BEpá2|gW0"kV09ICΐbc 8&_kҒT;:$57fG\䉡J]=TMa[@"2w(YV}idiI~ P^K 1݌C);7̽ƞu6 ggC|;؊0*Z p*0?zu֎Iq9Y,{l? xJƅ̉.ʊASҴ>EzTpG\L*L¡#K;CEK}ZRi(b}W?C_0W']sd-}]w(vz晋5ZŗA VVA8IyKo}hB]:$R^<(i:U| ]:jy&f !l#]b%qǽ'ht%ouobQtܗviOB@Ԛ[$Yo]D,~GdSOy_OKї[J<i3HRawb jschHCSqF#ۣ3<"1a!8z`uRi 8G [ >fC$2#4lvS1eJ]}W6 Q4V u7=0+cӻ_bcr(/] w?z*p4Aup=+Ҹn,A hݽXNIW[D)ċp`¶rLok5v+0TQL^`ƻB9ckhű1ܓ 7#C|dAMb5q\M[Zp}fa.jhlL/N$oEr&fsЁK\F ]L;:Zȶ I`bY]](1lHZ>>kX.c`X\.1p-x,hohp4E򇋎{Х> C#e)BGUP: :"o Ȳ#k/ .N55# GP6CMDL%wSC%vR"HMCJӆxx˗2$gRmw>e;VY~,F_sۖլjB-+4鯢)$Oֻ!R3 bSbg&۪E$4\g*}؃,"Ivl>Ɵ8G ֭t0Mt'͖ͮâ}9M 4q5Q(\u3dw?`b9G)mJK]Ytr1FYz +f#֪iwY_E`c*(3SpIAQSR.1UFBNj 3v^EN4Cg볧QYY#Ykg:4j\K{-o6;?ǹU> #IoAO6"QlTyP x.@|(|yȉ`:O5 =/i!5U쭻lc85Ц[uqP>@Y c?|1Yk43ƴk.5Pe0dx B6:`/Sz UrSnZ'j67?LjdFZ6Ҿ y4ߟL,lVǧCbkrZ,OcT525VI 66d mm*_hjDF`wKϠ]4H---\9٪H7agC/Njuou7A)$ox,Q^zHlɅvDR!G4=]M*td;8 FCzV| X&`1-N%j5[[L_|ݑ Ob줢8Iye 7IGЮ<ށ KBH)A=,{谊V7ըeCHh@v2ˈXek61k-LS*@#(ӯ\k5[ƧɤDEEm3+!?MJm`ߝץ'&fw7Rցg4$)@H 2Ow%{.!djq{j',~ {t F3U{rA'XzrtJ0P5heiSU&2op/ҳnT%E;MTUI+^b^r]b@agvFa` z$z50ߖ]4A Å5 %r=CLoVc93(SƦ}7fƱ۩D%nUv?Hńˠ }""B&Е0'2Yi!zz*2EhB) oeL5NUC;_aR9*5 9.EcXxxP U SyAҋ$yӓ; *C?1|>X&I.|3lGЁ\YbOf6dإ[Ն;[{sV[Qѣ8G  ;n -EfU'HY ]+V׿ ؕwyaP`YmPvSk[ nZZ`ȁlYvdҼ=pv1J7YH]6Z{~Gor26O%6w=\P5*ˈ95 \sQZx2: @4{^9fCP#Fj`$k/}#ҁQFN O\e&rpX:1~/0D\;Eܽc@ր@N≘u)zAqu\ IR,Ml9L=yJxn9xo+"eD5OKaU{/?%#nژ5U%#iYVwa>hW+ANX[[z-fuZY-=+$okQE6?=6xUOԘHī^%+|S92\^ Rulݬ;6AӶ"ޖ F%Dk^lMsA>xJ%(˚^DUHH{,OKjab"iSW60XƯ͸ Lw?st ~W\5I$j"aOgM^}pVrTþ,抢0V2\Tj$o*|kLϡogf*\~_c^ݪL!a%.%{._1tB:tm t:C:3 0:캞9}JZ * %y!e46\"[ICGǶ/*@hШ&bZSVyd+T WG졒J: h}ubW OW 2ޱ/f~ìrM|QD TN>*-WME<#=xexx|+ 멦Y`]ħ *-ݴâD.3Ja a2Sw1^%J+qhbemMy~I B7ڵ8ENpM >bȺ]^7߃qjS)kj,%_kk**-fdY:,;.:@9%alfk5dNX45)URz *~.h,%& 5̮w?|6>e9&AKF(Qn/]8#!t{):&ok:J処r _nD:y$A%or|dE) o B<v1DeF."Hú'M桶O - sh(+ͳ> e,Īi}>hגEep>@\ pv&5ߓ ~ Ս`/:w"VBsgb#L6T)M 3U": wf"^>E]H-ri.]]-߂Pn(B_iz7~aH2wK?T; %39F-Q:B +Z/_E5gEҲjxְwsi8u WYpSCGn!gkAiY_S G꧂{G@8R䘠d?d A ;7xѡWT!HڛH+8`B䷵P,)D{3ܤpSp/FĹYf;ꖦx(( ,$)#RtKyר,fd f8 +E2ՄbƶŘ#2ǜ!JΕ$um_B ˛-B[^"69 > {m5~sWR)_x<5x3BuA0t#g^n  ">hx@U܃M> gx" m\>i THֻe> f/CZ+&>\pOSy@62VN*HdSAiVrJܴe.ڊqapo+0&" ~CRAe(|Oil&G(]\>=e&$cǎ=囨6 h./}4߾Ix^ K.$V*s ;de0j; e幀>S5iSWd#(_Ō 1&bHΞ:[- ga4&L4q,_C02co^]dzOS7/As[L?X֍J1pٯ>7HVA*ramc: -X: pO N.%26]Xfsuo t96<6 nnE#[[X2;?R]5]x+\p}eTRjS }U-~ ZӜMQfF ۫-l,_5p%ֻcCV.\K:_À.1EwˮiZOUI{W̧QϽ`e0ܲ*6vˮmZtq~o]%BBVraiQc ZSoDe=졘raE1h}>$rJφʇT"d.3R6#f(`Q_ BDzO]S~+SuukB')gpj|-7[D@gr͵ 5Xxs]π2nu@gYkRDܔ.JIxz&骙+CgćhvއCdKEBgb8sH[}uz9lΌY}J1WaLF7_}i}/_>6uehk|(;|"vgH6PY٘s%d>HK$g|U2Vz̉ULL c"9{9W!ȾkFSlZ(.8< ;Ī3tEoV/hsP@>J3M먚u&\_R>k8:&/9ekp~n .(ZcND*a'=d&;ħ% `ӕ EM.yq'T! ##\ @Um(kc' - !"4o,y^tYz|,c"| b^hsk2&P7if˿@$/]Q=H:HFiD!]jNDDO7p1Ѐt!#ޭvrb'~IE<v?o0"_ :$ 5 =,=iډmqxQ(jMVAʋ{ƴOrh]>H+iYa`dl{rяwe bjԝj(5 %Sjz X1O=Gb%QoǤ˙~?{mlin ?>&BzNC4c vo'zo>FT|K2UC)@: y@_h5R:)z*ʂ!^+ )l-(Q${g~Pcƾ쒉a b1lؽfZ %a4;zm uAY7ŗɭTL\)AIA θ5;~GYwfzeqlyڎx6U&WG[5܀z0 ǚWلL+(72e]o5^@p%hzX?d./u}Ye]_4*o o;%ŏ:TslIy pCKQ2T9nO$ . %--x6ggVWJR9#6RQ!9 Y}[hӧwXcO4#.-WF("hclnņm>f_맱 HX-[dBjM ê8M|i+2jI9VgobdFL ~P7w:m x'lEwnO6r-@%gȇLS5ׁ~W ^AZ(UeQMyOLL g PG֕U a /Z؜n2]P)*fxa<)Gcf'X%]Zjk"6boB, E0.'FQ##/Ϳra^/`rLO& zA6(#{BaB *lRo@^PܙFxQ^Փ-@yW^zLEPXM KiC9h9ԍt?JP<|צEGz@nDuOiNMN^٨9z7蠯âȕE(p-Lx @Hˋ)R!;꜁>J?()yў/ʋ9=+t`Y+LZ_U8 ԭ&X?a,zd~XR= ^+ZhYꙆܑYPSNm!h67<f4jɳE-`|o3:;䷃ddɑYTYHW( (-U7CBۭ4׎֚qsYvI &spg vB/LY'K_uaDъ Rtz,q.EM$JDMw Eu.%-J あKo2%_C1)%gLg"=<( &CPj}CTZi>)Z*5i:w= Gº¤Rpb.s"j4 2dW48,:۩"}*z/I\|s,xDj@w;#J*|̵ Jhw~0J33"WS9JLoVqb1T76 jdƬm2Z36"hݰ׃@ 5V^t`4s=C=)Eq!?#`)l,1qU׉콂*18dty5:LnBȴꝦotS%H/әbUa=c "52muBG6R)_JKUѦ͜zxBv~ܛ5*gc N=L$DǦl{1g; 2oTB<vg.[B9K* 4OuHNd%HU 8L`/`O-M9ku~OQIj07s鍧LHgLIHs7IWݛUSGvI y R8VOrƁ: cm鼗/O-DCXE+ȂErٜ}K>UB4'ӝѭa NrN^ yڿ9 ׄ67/s.,uq |s?7vCy0BGޒ8kID{e~?rvhLPjP1zŵ-o/Cj{>-L Ҷ68ih,*$>ޣڽjH@s1= mɋ\6<).Ljkuf D`9A28 s7 jÐ6zwJWD/iϫAF8\Ύ4Λ ss-Uc7q:h࠳. /Utbˋɰ>1eb~*n8B6F~-xu #Z=6m6W d88 K8kE*+wư&9S"<ut{S&m/0gMW} ˤѽD7Ļ*I p`>~<.+u\zLp1 o $"Oehx!`dUŏ8vBu"AC+V<הz '!ѽ%WQr@DLE@CĴ#wUpm>g<4x!gppr?VGvzc* udGddj[e+(t4ey` zFRsMpPUt0]-M< ˨F"؊o|=N ҟ~fw370orlhTymDSiG"mPnrDkxQ,!ü:Ցb}R3w\x{AtY"杮'_n Qݙ3%UbsEj<7_B:X#:Zn|roXPd&jff8 G ɚ ,%I'򤖢OLEītq lzW碭w!z! w>PxѭPku4qou(6- &p4c,}S}ެ%0 $%_TQ'm{BZB)\Ze(v3 iZ"J p" :M9:mJ>۩EHmt>:9(sDLZW*Uȝc-F:{ff ^@+| 6"ս?M]N+кȟJ1ua7Jwd(Ea* iVJ:2gM @±C?rx0MT+4G8۱wBB]IP}ôwi<8 `xа6|hb dẊP1HlXZ' Yٴ)v].{W@^Mg%tql% 71UKH) Sjtc`.M=YF;Q}֮sΏc=Ǘ畁lϢwa">]!:%L(G).5WULٍjYa]2>~E1۶r .ikTkzZꅄ.5\JF<.S;G 03ԗ\~k׻ 5?.xSjE[ӱ=ӪX7J)כkX%ya~'̔=S:X㞔aPy RDT}_[ !`d@6@Sk86:O1޼.t* +ѥB,Z rhdu)mǙ9@UZbCd1k0̅Ÿ2}\H/77;}b-/k$>'r}\v>C5F0JőĽN4rwE%b(;mo|sc|x^›1d̙8'mfA6,(Z?>q#Fe֏(^SMmӍf~50ʹ>J_]݈A n+I}6=ŠE,hR!39#82_ 'σ:䯇=0FKL44*M٬J'ۧQ _o=wyZ)䘁}LwzH8ȰruJbgسej~3%a[ +b3[v0Hz53ݾlQSEnA> yySW N?@'(T{By]kȟkXwmz.Ju#@`kPnDd @H4ɚaySGEhǾW $2/ ~VDZ|i/+ǍtH't_.(]##qrP>0\ g25'J|PAr$jkP bݵ`Up<ٵA'f';bx5PյGv# z]N2TuqCR8c |b4Pʓ ȋmF I3OME^]#*ӼUqF#@'t $-^~Z~:8Z+h?[C|(~ty|<8jH?Aa EZ&7( :}kWۗdli{.o[uHMHUxJn_4,WzFL;HOpk ndg\rԆ#d;7'řc״-Ür>kRO0LIEz?Z닧;[ `aCRpОOHaӃMR*oQ iɘ@88}cƚڝqY\γxP<?]|^ y&U^\)#7^6%ٱo%k5\]ŧ48USXx6,J>=I-rdvGƇn_BnA h8w_qEB:3(>'3 WP~e oi:{0'\!vE _T~VMZ_ A!2kSX,[mɊ*]]7G_OP"-aZY&&{ۢݮ0=kK0iԒI?(eET["//ºhєÏHs]>J}mwȩUezZ4V֤;k bEVK{iO*U:@ srݼ-l.~nu~EHgQX^'M cߗvu W˵bV/evG>uf!;dt owb앉-sUxˁ'09+./(4vh2D A|ApQj䏝9w/.i7T%w@u>m [jf/sS ?l*>!XiH&LVCPbUFV Wr]4kyr*QNJCO 0NHBUvK"UPL=}׼i v"Tb xtTBԆ?"}%# +?8jc/*R':^g%<򉛥"x=B/:79[ -C AX]Nao`(3bD{c*l4gq 1mغc մ:OeC8)B ,_2=RmZ*_cE݌\PmbTeC3πe^6fAG-?{r{(y)[;0!YAt-YbH5r&/~g>RY{kݟ[$;^kN>& ![R\,$|?[Whul=htl}] 2yڴ rLsŨC3ġS0_K:xQaf3bk"AhEs-і-иќ9Bk;s4?qdZI"&lya 8VtdAcnxy=Lg[X*o;~625ֺ΢iXdQ^A dg4둭w׹b))c?V^H܎7m0 JV>aM|L&}hW!?eo8GD3'T#Po \j ͰhZ`Rt/~4C#I#u\'WEd%< M#yDQXEa2ԊCc)_,NvN؊@O-m<$0DlS$Xep]:'f{zwT' Ho*FҐ OA8l^s1eY%Vy@Ԃ|Ĵ/'=Vctg̣"h(/nyr };9KHHWc 0TH<ʅ \AxqjOk AwGpvY=O?j8wM\ pk `m*Kh] (#Qѝ 4Rт lmy46Rdtܢ>,%b޷[7}q7ra!_:^N7t*"2v䳙ºҲ̈"KlZn_qT1rmRc8%iIY"' ZEF&AB" \+~\I ڎ&/v#F7+l559rAhz4:*7e L|N7Psd 䕲 iLy.jASV(qhE^K 륇 #rp`*+4jW"ܣ՗J0rl4b_p,Q+$3HrcЙ3X '١a19n"< UpH9*G&a0'8fuf2PDfͣDMm_w%_ʱڏ~{69'L! o:G#sAl#o'_!K\B2/Ȉ.00݆|*.J1pvLL^m'MT2)X?PZ ]Į= -.yElLimkHl:M8#7OU.gywn#-Jo^cRޡÇm_Q2zy[7!YKp 4>BT!UDa~Zv'|eQx%0S dY% IKTX˳g:vؘin|n DiJnexȺVξm'ș*f"2 ҥ躵S@ډYp3]H?~1ӺӦe=*Hiཇ@J3YŷVq@%qN!T˾R:.uLʽr7tg4HJ"a}{{WBПۣ4ĉ:æwc+cH{^$iH0SrCq-F*G>%0V݂o r}Y^в-><(tf1b{~@H%8xi\Eil A/׫ba13G<݆aTKVʷO3DBLF7+cI>t[h|٭6g/yi)$8w0GR 2S Ym2d{jt%Bؚ޸W-4*Q/¶2p_e%ȣnP7b,8lbN/P}sРz9m8`d]U9;Gs o$&gB *E[]q@dbX$G#" 5E<ş{hi-4FNRg=,gs"ҳO$S ǛP=7%Ұa޼B"1n@)Ç&ZQ"A408ѯ*è\w J M]E}V/_aCVmu6qNH'fؒ_< . Q!/]۽psڄ `O~5KV_7U%[Csn!N)I=)]k5oQfQŜs8 .|ZFe萆q#PQfVҽNֻD g޺n׉o6y3+Vtb[.%9bH! #e8-|JErt&o+P1aY`qRo `v@' ]˦<&Ā3ylO\FYkr%6^GREBG˖WY^ .&YG \,zVâFvƩxהIs׬l@iٺ̝OI4g ڡ&|2=U, N̦n]{Cc\Q;Ye 4QbB7+L!Qt0AO\:;͢|g9$p|6iCe ~W &&x>FJ›[@Ed ZD5-Amu!4j$4~eF 86sE#C2xa%ȨTU-w OyzpiTXL9yp{J% ^LJ)m87Q.#2pMż~ ߮N][:.%\Lڭdk njK2p$i,Cfˣ\ؘ浙9!"6b>(7iwt1+# * Zv^fs:P%O/fE&&zLg1b1j0yLX 6Rjȭ=\3JrW'WвpGd,&j|͟ ?;e&m޿ Ci3*4 \14Xm vS qxuLxH w<193.\Jk({#rP:dmhCQ[Гv:~W 9P Yx?H`,Q'pDk5y50d/iXB3̪i}_`t(SCܓsm;⌼SlBT&Gi ITd"}EO r[B4tyY (bxuH,.=?:>hT;c;l0KjV'hæL+ Eڟ16>w_Gab@FO/Yy2*W^ĖwYS5_K8ؓz"r#qr9HDgI 9(dZʇelɋ`o$5 QTj{jfKǴ8Kv%f|2(~tꕂ)]yrp_vEL=7J쥘UAJiS'x+ Er)q VEޱOsiBB4r*?H&~%;#$\zzCp`]\)+Y>tpm'V`>o1AA @Rsz]Psy*HqIHq/w zWݷ|n0\vs1an增d>sY -j:O(mcIuլYN\vm@=ZOPGP$l$k]Q ٚ|!5%$]P<$Βi@άt a轀zFI.:U(jn>W2Kmisrsl1k67jud1Rkdѓ,dr %4o 篴طhgMMdk=0mTQ.!bU<{}QVB(Ȟj=엡c)4ӭ"YAtYRmX;ɒYWk޷s褗㶴S6ߖrD^Dg-{zG7]h=X ]~ka,5ǵVz7}Gr+Z%dz] 7!V(gޠ)%i7sGl_׳k8VF: ,, 4 +dQ^i#r䇎BxZ~wCEClQViӜM:`B @c"s'ݗ&+<6S٧Hs(pۮ{p)tr-lROjYgIUq2$TH8FC޲R7sI, Z\m˞X\^d=6rڠ_XzߴLBnjjkw.3F@j_n~֥dF|vh*D:x8%=nِ0~%4~cﰦtoAk thGuOM˴+9 ѪiGV)6S\ݥ2XTVM ؉f(*!@g3([>,DD6+ˉ@C QI,4r| =gRm ]d 8H:wF ;*0qE; m\=1t9K_$OINzI=vn[ls ©S:;-`Wj2TѼ7cč=n 2,c9g=U+%c)>?Z 6kYa224y7@:NY J#5>M⨮8GA*cNwϐd- R+w0><:k)۶u(#C %1Xݯ9*1.|!O7v]b|{?pʼn.d)=@5@~kգ< Kro%`ۏs;L9J6a A΢|FыWe( K} 厱 궕<eCz0,kŠ G4@+J2Siq+pSXnɞ bTԵY?cװj꘵*Nͨc B!V3ڭơ#Ny)&`\mxA%eaz7uoC2zW1 _VPk^;[S#VѻLKV ohܬԲtp X{ly+дf"F# :Q?3"Bg롰T#[ؿ>D\v߂I "lYfdk潑"UrU#e,K*j< IJ-+Ggޠg]9s?e#v(,K v>RA% oԪx'2iͽPgA&%tCDa18{=3PϷTC`nk%EzpcQ-mL+Gd+-b1yrn뛞: B]cMD/ PC^ڇw{MfdojuӗQHOyC/3tXwBA2 1hwO !Vfʱ.Q0y:GMA@S:\:j܌QcҬt*qwڋ?9=VCh%nJWƢ2<@?[K7,cN~PE GƓ|`!:+"43`%xو/ SBjN׆蓨XCOc7%h LYJXR; MO yD3 4eCͱH_)NjE"}fGr(x5^x"7^yIrV=H5rʩ~@.w(4b*F8&bbؕ\w'mJ^%93+פ@a/'ԕ4{G6ΒYՆ)oH,3DSYuE0RN1"KPUZyhx$JwTCoݜ7jf ~.Lo9rnJxY { U9`x콗wobJ5zTSYh{  ߟWpq>PWS#9`)`̈́15O|NmkِgBL{+TʫvrptXHhF9 qVGtʣ3i< ݪzmӶ}Kc`h`yeE窱5;&-̮WLJJ]-i@ً~ *f=h;4J9N;L  wA4CiQ7#xK1k'Cwo\:$mTC8O8C)NL^[#80z7qf^iݭ6_8F͊MoxGoDRoK;T]2Wkͽ+ȊvWFh)J)j(.OAɇ=ׅ)pRUV 6y_[wWvk7gA˱9^3\̜|O`#'[5 x̍҃=b;PLHuQ2ok >Sew Ҏ*#&GqTY>Ae]>ޫmQ]Tmےu}"]<+~k,P8R])ZRԎ`3SN JJ zyzhFWhMQya U Ao~,izނU5W:'Pss3'CX#-yO.n{ W[pɃuN,5 J9 \h1a»m!=y4jD#Gn"~/: ,,I?APB%tE"ᥥ k.5̿8=fGdX>Ē27f3a.l3HMck[BjW>JSbʰ&,7nf&~}$+JvAZe{ep^ |=X@ٽvFOB4 %M^6u#b D3 ߖGJt0zKCBABE^b Lu.t178τT^I/l3Po'P@p{K8:j%<a՜b&^*fS]!X_ iDð|v^|{Q.Otif?K75&3tv=(.rX#K/wqaL⻴(rCʁk"my^c?!3&PX/x-mHrjj%'\Cnj.QK+ZT:$& 3] fճRq47{AcA}Zx%*~ǽa fl{ѕD^_(=٧*3Tʡ@`<_%0z.5'pR}q։[$ <>k"N6Ȣ6`wvIvBZ1f҈> hh1~5In0֚$ jgU5f(!p~LLށ^]gsHmŠmh\֜+_O|٬n 2W|LwٳeA{]x&\B鶉v*4`QGB>dי[qUd8^C}dcЮ3׵2HbCw!vB, DOq&+E壼$rSm-9gm4DgM4gzg?cEvOփ A 2܌aD8=vN*,,To t[PC*i^m~p6;a V.i~G1@6sLˈ[ͬY%NU/ZPE]r5ؤ@^J~jEݦ0jA!4혓_N)8/:*鲃L0q z‰yMtřUot/|q/0M>ә_pL?U_pYDASzP}y;]ԃ#-xc)|x/q- .VwI F OuFhH=VrQM$Y 0$bJ# @LBj69/c"WjOmQȼ!jeDI]9pb_;88@|CTɕ]t9_0 -awd]syE LJxY\5?h8:PqW JGQ|a5M\C"`΋Q>QCYaKefI`&2Xnkp69p9ݑ2)5 qB6uwLg&'07EXbu5p?g'TKC]&|d0".‡; iv99CmU|NZH%{!jd.%%yvcD[`? {Y8KqD׍~Mz2EsHx(FUv6{~F=vǦd,"'?W *_}Qbw*5B+PͿZf*tq ~DD3UVIUU ywRWo4B] g D[7yiS ٪Jy2Ga v'X;,Zaji>B'iW_zB)XσnGjNЀsO_PDDp\1{GN\hnw:s73$7^EAXޜeJ&h23>n8ϼkUpvCt$^Im If;mi@IJWJ}ιgG\%~C {7y/EXQg>& K@71<gK"p#v=!՟K֔Ő_V}bᅴ1'=XPޥHf/Y" 6n|f}Ťv(O{;|;YZޛS{L$zD*gt5y˄+s٣YwƁfDӮۉ yQ^oʰF"䙣{Eq,o(y}Hkc8?|)Dc\46Ɉ̶6 6gs0Z񾜥~sF(Swjμ"w% D;KաLڟ VBT ?0Xf#bBm?o@AaP1ua9}Wp-\puƥ5!,f-O*tjO7p,0ŏQ $P4OE60=̙GtwJ*2 -qN Fz~AJrXSJ. %o^ P.reC!ȺmNBn[Q}L l2t\_j@pY56OQF^!36&~ɕ`;)bJ䁟hC(T/kVqSQ҉N6a}Cd𖽜ʛć!;6$>X 40ϗ:hŪxYZ%SHg:|?yJL 6e|b4KS *Iǿ o&sb|"QR7~ iw#]rt̒$Ӝl5Q ^Ro_*N^pN<,(~`*QF*b`0c{M/ޱOK; 7{_Dx~ i6^ v#"MZTfm:I1kn$RDa% K=Kxn="hsj<]+sǑ! v % A)lVљVw6}WSIHIEPr7F=9p}B$9 OH11ބI!fBWݿzB3Y=*KH7y'6h؅tJW /3 K9,q_-mMT֨7c 7OmF"G'"`A[K-{ݽtwHRSQԕǫe݂w{q-#=_C|}~T-dξ QO%^lMt꨷@>:gp7P&ah!P͹n-c%Sꭟui%'4,x"U."tHH M1-;_my6c=,uC~ј) <:}Plg9Çz )"v5.`c $cfhoAsc).5T||mşh9j"1=v+M !3A8* &c~jPVk[!J|8|ߓ?׷|HHҢ\24& 'ڇTUاe+},HʠŸPkhRůwKne-]R6"N'܇Irޤ4dfuv&ʗQbȤ#3D?&_oOzT5B5F>O\CT3CP3#I+(,%,ZO2?beiÙ2t 4=^/bt'vyUWþά-QluBN_l #qhLFrge.R<Y)V/bِHcR1 uOL$wG,3|n%,E}ٗKd8!9"T=ڵy&w qGBSL3Rτ;@gΡ5*jS|Xl!'!cHq9[BIdIeOx5є#K8ɩ*"#m^?׎H.SE*{EQ2% Xq5>i ^ =G+! #X}1;zJwTxKLG,N?*VC5iϹ+C]ǎYӵV$ kҩp'WPAg22} Zנʄfꁀir38BٔQM}JB$NcP.998Ű.ZSa!i!oO<\45eMc;#ͭ~CW\!4G_o$HT~gPlj^H+19#*ڳC}sl/fpY}\`yǬ5$;u6O6HUׁpK뎡}{ ONUG1}MцbϹ)2Vm21A޼=+R!“eؐcJ=6a 2InHijPV|L@1!4ܕJV^|fRd gM63e@9qcCS`r#)~|0ӆoo1Ѭۺ[@3@ɍ8f5 M܏RJA!`Q Dײ ZfkPFMo_ ! >G)+eD{6RDž6B\87Hn 4(0P(.vEHCe]cx KP*&G)q)\Of`.@\&s](X3M-mH72u'0&a諤BfPQ!D 4qIAUg{aS:0):t17AގMNHcI4Y] rvEECs*Y4#'VZAս@m5GXYɥ ?4|*j".)\ Iî &h,!qӝHpٜcEć@G0.ӆחZxqPPN_թ Ŗ*'4ػy+ظ1?~m]q}Sp$$t@#b{q(']#>_¾t.ٗS1a?cחf$ dµmZ_);g2M]KfYoKzQ- 2>;IL8ܙ\M⓿ɠbwS34}{-@ުka\P`ߥ܇n#eE5o|xŶ|R!Mg囿 ?Ds:~ya <ip0y Jh0n@IhyݸPWEh 1cbwv}BW|O񔚰pRҬO.dd˝Nq|rIZxChwzkl,$]K0NhaEz!-nT"!4g-*tFo?.HyZi&L8[EГ&zNi?*x+| zs{[+[V _8Ə'<_A֚sJXʱ~6 ݪ"ڦ,+fL!-(J䂞(BN5Y.-Tl}ĉK)\*O v]:,*,wت ,j QE.{y$9,CGH8[iV4{6Rn$R {W}u0Vj[*ۣ:C\"|Uخr '?_OI:Zn1=5<1OԽc^R9tw{ iefN5!qSmNߎ$YDrGG_m!@Ŵ[b< m)4@dF[qW40SLÓ&q"50zܪ55) hto(hGmphHGBld)GKxND¡ᒗҐ30ؖxA']UaL @Rv"!LJ=Ǐg#9y@XY38?p K uLAmn:@Ϗ"ώ{I yyU ߦ4_Z߸q]Gt wN HMdjfyB tAU.ZQ'^x,v,1>_iJi,[(n*P3i.}T'@44~ C:LD4XѷdYk(t}ZĘͬ}7ꩄiGhqbIZ% _[ͶOăe<4N]Ӄu'N{uF]3D48 c"Kh# +.?:Hս,Lhr*(ȓᔍJJ_"#tns21h 䤸smtN`kӕhKY9fW;^bo o$M*;MC 3z-0f"Z((m4:L2f"Qa'NvyQ{)ՍqҼn%Z!bKHI]{ [`Ow4: dGՕƝZw_\H4:@XI vN\OpⓅj=<!"_&SRei_7u%{IBMtUӟUu,F 7î+8h^ 4iǘ|߬MlAo_a,0y/Yz+UKO=5ģ G&n4<&vآ"c~I*% RSgM`a?kz*!Ħ󹞷.8}-_](:c̀oMSPŏCc`1}x=RWǦh4-ֹӨ)&~wO a#6RWSI[`r}rx09+ײ,UNeგ$6cHC>MTyP p+ꋐ^4SqhuaA|.#7<]:Ęt}v= 7 zј[a4,h2PGuq[@)A-H~ +V4%n^"RrbDjwqC~uQX6ڡN|t;/(<Rݎ8PmIi%C/ӪA*#kʨo@k~jZzDe-F^bP."@ 'u?Ek'D!q~T#o*ZUhH\ˀ$ifk3+bCo}_w$ӄJ rm#Er%)y!m3]Ż%mFlq<[. yܹfG0* iBp9TW)']V_=8˝2JT?1I . ֊zep4jJ*&?[}&s?ș]7?H &Q[TSJƷ"e{ +QǤZWP3E zGk0j|,$ Mb _CEh90˖H"xjK&~m:*,nepd.:.`,jR9j#YBnBBXu[]E[Ԛlݝ@F5!LM4vRNgѹQ9+3JHNqJ힃V(QJ##[CPS8qsDꭡPLOzͧ;|xo缋EQ0@_FPŻ{g;2`15 o޽ǚ>"fc6WH5n#=yƥ :jWiA0A;zYcs{r3 ͖{ )iMQ/7B5#vas~ro~uM4zպ${7Q jT@0)0oNԀ(*UW'N8 >xpI8/;=z~!.-p㚋YÏRDao8/a`J}  CX@qʰU^krn9'2<> bN)tۮw NnS!ء|rt> ij74JXe(MܝdrwEj#?y^F]/좩cLd1-{h2]VJrl:ZŽ+J3 05F xm l5:nT? k?QRbuȘ=U%\3hTsP}OMD>%يKΔD>;G5~pFPfbاخ^E_L~̅1yى؃9Vx7v)Y0|XCϬx t-^W\iHh~sTcFZu?LO@DR\X"66:PbpҎo!ymhRӆVVS83pdCQ:mX͔d\KXޫ)0-`&JqM=m=Ttc67;r\KAZ1 0{Qhs-\Z liBkPџR`;x2wAUq^f@qc f"g 4tn M}:h&= +.NXĴP; G}̌k/\GD`/fWwۜe):$h;Rcjh>QRƎSTЪC\̵J0BR̛*z"i?Ð|͔q.#F+ @޿{([Oe(4M#Ƣ&^7}d$-m&MeV co'FD`LssylHe2Đ޼w3:$"u>0]܁v2B|oĖ@ΈsOOl!9MoJ:7FRs2X-Љ\:zj|ZZ[gZ *ĘT WPJ^dQ;WI(hg?Pl{bBtc|ZA[j% }25{8P()OI 蜨髈:l]S!b*fJK>l^o(WDE5XQ @'39שkXjpTEv x8jRqO48Khq{Ǖ igAܙ2N"^hP`R3-Yʳkb'aL;KP;¯ryfE8okz*53^YUP(LWSG1ex C|P@Ǔ7y-V/vl[Uc>,8cY@хo~Pt`Hh{4m(ޠ+!6ո@֢0T$^@YyE>VXp"+C̪ĿoUsRؼ$'`Z-пpd}v&JذZY&*KUx2e)] TӴVrЖEda^#!WCc-6SF ꒝X@L6,50xԱ;C,DEyЅ9jLfa )U"Ճ|I˜]rA2ԩgDКE*h6;=jtJbGmfTU融%~DnnfIVHdr,WI3g_U rqhK,iGP/:i/пT>0XuLieSuFNS+bkJ-eD:C}8:swAkBn޵L&ڙ6;AENvPK wbOTp`Kz |F ~.vVzwv_v ;iDӁP|O zߡR*x >@$^h{ b@Uȱeߒ3 WXB¥ILǼ Ɍq>= _ya`E$뤢#S.m3Lٌ (Z z̦NB4l4:R[;U IE ;%ḟa%M@B^+"0"kk'wbQG-?8cX1:ĴUyuLVY>FCN3;iѦ`^x~/Iz0yHÓ*~Ȍy0%[z:bN/.Lw|^bl5ܛV69U"̪IyT+vQU_f;iͳy\m5)hl^Ϯ(ՍBނYbx)s9\xhx>Y¦UWM8U{2$CW&iwMM[9'FJRanekb AХ ]2Uя@-͝Xg6o<"8,;Z5ŗ+#7͆N@7(\x2ۺ,.B {^&:Ϲ}TO9 ʿ7-4|-Ba{%j8~-s;SEy(ccaIxAg96΋+bӐI%Jza!1P& Yj=+(.ʾm?wav3-l_6όyÊ wDt%vGYDŽ K,ByO;Sh`ocMzihXRTA /@}ѧa; %\>//ij/'4Q/#y96$Jp?>ʓ~V@ЗP<2(P0V,Ä5~ӪD{\8G57$Lq:Ö^34&~*Q8h`hc#+%1of,^?UR>梤QH^$W4D{tG?h?72Y(=GYß , b-]W dxF5-G.<. y1ȕO⻞cJ@#ϜBv ^(˿8zNbWKt4Y-R er)]p=c 6jIl$v3eCHufЎ'gfct7m۴먼*es52/+KF/ZZ_jz7bjE! h'k,yQIyeX7EzRlV"$ :yn2"D[uwcHRR J+뀊Ij&,m4b8ghM7Y4)DD -PbdŔܿ HT}ѧ9D(96Q+v+;N3TY+%GoQ}>˴9KUx9\@r=̈ Z$M4RRtFW>y~9ì}Q$"כX}{c"GRg#E(eCesW 2#ל6gEeh],*6@c!͢DUMϡ 4tvS%;eA;wTR܈'-ݽC xeAo>>N)=}"1᏿\Qx`D̝ 憑\DV/D2ӑ:yM9z xJfPL>Llߝ_#əiJO& ) Ǹng' rfT"TJ}4Srl:s9J@| %H|8Umf2ov7=Kǔ($Е\M򥎵3ǘj: )~A䌱qTM )x/.ZޛVW/r,'E"@J[ؽ 9L[`FG?" _2VӶ mHY6|*24TsTKu8 \M8v:_RЩ7xbFتG{Oʽ7wGKI7%v/ a&LGKM@1a)1p">0̥7cqH3iwcʨ8._0i&T`6h6Q#YBv)j:al*' GrmpzKl,@z]~ͣXÛAxCQmԆ |"}_TS Br7,pɞ( vt@Ŭ\tTOXPXSqScQZ^G(M"QYal8nw"$ hsM1i{V)8t!TS>j}Rh:? W8tOJ<#v'ǣ|!!( HCyiccK 2T=x"";zFwIZhT ׂ0Gy (B2 E31I(+7.> {a GPػ59u'ގU[f R+`z$]*'E^S!t\Oe6iP5m(|!'ssxbƒS8ꫩ:Km8~P"x|K~1lwjD@.p4'vZ[is[Uf;2kgC/nk;}w " OPK2!G Rv&"9YlM/kHj70F9 M_4ֈJ[H1VWUUc:T$^. )V(>~/1iZr+S ^WGRУ,"m{]Lm GkIg]f0H{gcl^ѻ9 3 b6ّO읶THLDY|zѾ!õpjQHլMhoʇpO0+ؓNI3e'g?K$Z!M}0 o=[NC&Ͻ߭rb ΓXTR 0m4ֿnWw*X9$)H\X5.,|bTG`rs}=.X,!IB[b20v~Y+DG[K7yO ?R^ჰ]{8'Ftl{c닳 mcoqwliր#(N{aK!NM*EE#2-8w]FĔ{!a>T4 [߱trA-#(\/eʞV56VjJKEi- s|M*ס쵯x[t,Mgrz+}lX l"·~`nSUZgzE{:Mvgqv50-FҽMx!VhG%),H@Ŕ94n_ lew9 7#/.!XLWLP[QGµпH<%o%Occ\ 4&<8 AR-eyIRfWRC6zY麲 kJRN*d,`>e@L38\tOghM:S3 vc^>ޠIN/K,=>%(N̰fUjsR=Y/MN]Vn~*KH Q8+9wBr9Qb0z {EɫégdLy=!7Lr80 !C{ &4<&`$.SlEٲY@ ڤ9߰O1JՅDRtU`Cy۫FO"î I'$R)`BH1 -@et2f0gY2)\=Vʬ yP;3)Ns]/=˙MnQ\kڭ u d X*2eWl Z'L&uiou&(ڹP}=DG8UQ|\H@^BQI H3/ILL.]w=v(-60;(uO 7o[߿&66DӯZSx>٪;H3rvfH"8*y M);'TZM&g>@cf&wOP"ΓQswHIs0…ꅲ,^{%P|ωݖn{.B5$' z+28&D81jǗRVҗ$##R>/Oj`^%_+FAv#DtWnܖ"AM%)YaNqJAra˂'sMOeLްf ;89LbYuD>ЊRб]*9ʝ# .-XGӀZZ22gsXF⽞iw伃T4kUBC\V$'N/z'gj[*qIWI@4x(>)Mc*5U1$Z& ~lTKu䡪8{&E=:!]M@{MVZ` ͙!a@Q|Xw&@ ]$<9/%fǨE[MOܲD+M! +MZ:;8sD  360czQ h-Sc֯t>g;~]8;C"A!BRPu?V_!D-2 MIM23h"/# Ŷ#獼?EOuTxMk@$g1ػ&z:^:oz*_=趚_;&|"#Oᑕ d/2-iѐPh0_%Fy Zi@"{&"{r{pPdK!G:99D){pK6Djf TĂܱRcW汤rY`Q>ړ Xv (>*z2UMVx9e3Zo'YIKK@#5BDž3G[F69-?$\ 7$zW7 v~8TGF5qDoJ:%7Jի杀)FFWG׳7e~=6d^#jplo?`ֱH8} $\6v!C: uZTG{Q8nF/ {tcZJx\Q;z!_~n43ux}& ưA6 o6d3 W~Jouf4 y8+Jڈş YEȍ"p9r͒1͕@pϴ<2 w jeд(3x~eryMp?6Z{zQFSb?<{ h~"xb`LG~z3Iœ.x_xZdPL0# G#k ! M_mLG^D;3FiG߸NN}J:XwrƯ #2O37WTT|r =_)Λi_12o`G sZ]a F?`3E&qsL5{RtGE;\sQIzC 5ɣjWw:+ZN nN@f b$nRxVfX^;XJ A{К+9ە&3j _+ag: p3pڴ?ۊ^2{~6KpX5m;`IC[ު '@]ġG1ʂLMpQ7IQ9,]>h+=L%N>WQ?D987ޯ@&K)e^3NWp"EC:2?B0 1O%vb´!q /ߥ~D ;VZE)pV3?2P_5PhUyM"T>hky3mm..uSXj&ot*-|?Bݯ1 )KKᢽʄ/Q-rתbjgVM;um,#`:ˆE@U/ `Vl*vSou7 ^POp4_@:WnNY^j"u;܎vg{KR.ږ: i )ÕE$ VDςq4N0 QSBM=3M{ZwuI  ߡi~H~_,aWV .Y_g$* O#P6K 뙅3lprA[OIE*G6j 88" x8Y1!H&ɗʬ6m(]D)Kόp9lD)?Mpˀvk¾5(TU"C37L\9TۂT#Q]LpK'ND mnRnXe{}y9}6oV 5bt]  "$0- Eyb'l:ZRwj+KAK(pZ(Fv-{:\$en"[ʕO,v4rA5B $Qu=T{MQ dNkN\CnLa@U?ȞDl+0P`F6aRgl0w譢fJo+@I$/*uM_F"N=Mr ?E?x8Ҥ: !I\B(9>LqXC`b 'msäk=>l6Kkw҃g4V$ru~wޓE@TLHJ iʮpA?2}>դB+t*o_GjzY zu۔VdtaH]]P`e8PCQ*JC8#A-IB= 0b3ԳTrilQq4W\c֨T *j&LY2.&Lu=9l"8|13K 栗ۛ1awR$ҒgYT6B pB3Q / TSEUjͣTߤuGnke j Oxiӏ3t,5czL`Gn ;Q(44ѧUx~jD)T֝wFP 4mn"|y GKѮ-`Ӄa$^uE }ݯ84SH:n\ǽLf}w@U*e7;hIΠu$ˎ9jsTYp5 'Sdp3|_;PĄ䟯ƾU Q0nsj⦧ɔk@0{a%S :4 D>P/q#9сʹC^Z`O* QJ5aYV6,|cvy|pJVĊr~ Դ)&ޞ0Ӡ]es']. !"ّy2U^蔇фM8RNyѲ(u]",әnsG Jޙq .kJEq_t">H$Dt\gklMj%u$U5s.m:Y{E<*;GvCsp"+fhE Oe#ֆ.jnwX6njlTC'}Pj녊#C[OYAYV -~/x=,I48G `(D\ZBy CloA->P ] f`;Re]&].W,53Xb_%//ib7féHhh~歗M5'!J6< 62<;Q3cBj8 -l7]V:1FnʑԹnG܀fQ\K5 t jfmD>Y9hdeRpj2>qǰyE棶 @ߑ.e\eFi:濖پMXT˿042'Αӻ]#Xm._nof[~4E5aRq[IJLEuK稤b9iHk*h)ouTYfE?qc(;3ܷ-@y0B~>cx~N-]=wwBM%aSF$7 ec=_'ٮ5Å367(d}H|gD"p_;Ekɽ UY!: iX(GT o͏T3>^ٌQ+w<Æ5밍Ni"gGw ؠ79#ye͘DbuIK171Yg~WWnbAa͘ (AwgNK⤭6@4N^bO1=g=MԋzN{0b} XXŦIYcM Ͻڇ聯GKM_ ΚrAAEeQ{3O@E,5V .&l dW:Qe*Key$+w6 ;}Bw4҄˖Kw"vrn6)W`!&Jۖ):)DI`%RE:B}^9$/?UK"s)kWY["v@:b]-+cG2Wer3JΫ2t1Bpgqi)swqޛ#(հ!L&O%م(t? ܜCDz 4óE /Up khЍbg h. #־]{td3V;R>aW]vEbZKpGrVgơuY=hlju 7F/*&i:MVW0VJ͜Y1Z*U$Uv߯|h X+>6j$dΐZfoEr{\(E7+ +Reʩt&Z\;хBMu>mu`s߁_>eGz`uGk#V(Y^v};|N32:߼m]Wi]gmVAb0ΒwBF}-> Lw޲@D$HIlƋbe5!F/?lRɋS =WWR ="!Fa/zutQKS|r ynI4qGfĐ H} naL5t6=ɘb)Fgx]5ˮ6z5!sC3 w\ fuY ٭kB7 tA#OSGYRF*Ma т<,Ⓝi4į1ȴ8L]qUX=Hә6}BLs~oZc⧖ؗ-kfvdczߑ0U:2_Jں9-7lp?jc0GM3z(|WqaY"wʫE?htNCGjjeBT)t@m+#685cfxܐ㛸qb~"QaD4W@0cVpV}I9]W6N@1Dz lo1)!SC@c }P8(V/\R~f=X}t;-TƌyHJmQ%r'?CI^IuRnW:'bۘI DŽQj YʓnITJ2YNW߉Di lIo]oni#e1z8> G씛 Pyy1 5@}O7X-y!sLԔ/\q,GoT|h7l"R"`%N&fȚ5σZiR%P3?<-Q(7rt @2o|=ty<qN8kN50O3+ژ2bZ|mS6Fz_G};#)+ʹ9y*ܬ5 rqqv϶,UJ KuClP\55noYg' S3ᙱQOXcؽ I.jظ&FoeV`8B 7Pdd0@jتp>h;-B˷y?m7/ 񙺤`?%ẽWqZfhm)9BƓ~vbB`PhMa8*{{eraO񸃍]V9+ ={2Փ>5 %s,%\PtΖL/o%Uu?&+i{  0'\Gsǣ~LR RiX8kArz0?ŇڜM+<1(:/0^CFU)R( Ag-ñۑ9O{`yC3&ъ|1^a2Rfv*9^Rz QͮHdž+䬕`DAaulfb:K wOB' rn΂Wϟ BeGRb҈[GdYZrx3!b̍+g$DZ`IaIϦv>()%4-fmjgݖֻA-`  R4:n_iP=E`(J ng+;ĺtrdŊ HZH0C).l9B2juqNu 7E/ aeZܿ9}od|S*L%8/^0*e~dxx tQxveWw0- Xڅ@"`+Ɛ/s]'͉H6E4yVW9+,J0doB [7ǻLBYu&`XDDLo-K0w Jb*k}xZ:_+PfMזzR3j3nE'-KOŏ3;LHu|hF9|lzoۄ[YɩJmg^9,Nvn*uH|Epl@1,TopD2`| ?r>Wʦpnŭ=mLWW|KˆE7 GF^X?ޥi$ l@;``5uOJ\Hۖb.[w1]jm-㿒&&2Ǫ}Ek6:Ǚ=Jg& @ه x ʠύyŭt͇u1ջ05P3ؑٓ}Ges]dr鵷ΦmpnKL0Nْ5)Q鋜N+\[6Y =U +nn~C]%ؐЬJDavY%ʟiWOz4ZUvdb!j>lz |!ZvX/BBk H~܀|;0Վ{܀am O:gFϩb@pfÏ 2t/"H-;I;+î*-yϕ؏iu;&Ǧq($5D:Bp6R)+Dlx!z⌾hk+"gNC Dnov5;Hn7E <6=y*}C\Tf#}.)D0Y"L:UEdUAA0^ۀE\m( gDDnJǑUCiG^fsC  p\}J;4P:ܷяUhKNޏOb.9,!lϻ$68٪u Rxdkz"w&OY&DM+ĭ',֢۪~(D_YZB>:!AuThĞ]E΃JHmPr[8EbpZkwhM ͌'.2hI˖?lgn.bPrt"I t&- Rei'e4s)SKΛ,G@w#anq~lUS BJk .…)WPY=廃ʹyO| 801{g尶WŒOMj%8X:/5W;p1]fC%-IcaKxe~ɀN ,Ӟ;rnk:c4w8@g gzܙ\u6FEZh5H0W/_bI7VBL|=C?هw".vT7:/[aE˄BiWM,;f_tozCj]E5-cvZ):iIkﺏZ"e+ )aZroQ#Y EȎ 4 OJJ4Ds 2 /By d>ݝUKZOU "*u 8{NJ?!Un]șjUjwyO,t}W[.F*od> P-!sjNZ\L.5N#:>@ϬB b+C-E]^Fqz̃nwjꈛ\J Iߩ8Ĺ>_jC>I9"s,GU=Oj)?)GrQD05FĬRyƬ8*f_Zﱅ:t;o a]pH\L3JС+kbxAݳqDaeHŐ9Mi&[7z;l~)nWǓV7+y>F6T3UZd,LWﵖִab~6CSn<P;fO=jS\VHfv z51@4yTOs[ )y\ؼ2S#k g8Z!RiE[zR2L{tSmS,=j}w]F}?a7'qhȕP{-e0 NtJ|}Lva1fh ҦǝF,J.VbB%qt|2@]D (L՞!tUչ-cł塀)<)Ut&38МtF+IE`Tܤ׍3u)_G/6()+|Ǟ6{l*Uj'}vO`l16dAiD"[%緗B&璖0渔MuR(7f}(TJ1 ծZzᴆfR&q,b>1͓EC CmٞHk /v$ne2z#\'UUWvLR!~ {_0ЭF!mŒdǫ+xG2ZwwOe?*BJwNM&,ă& [d Pl1zZKVE7.0=;ZE}tkՍnr]iqU2z|C*o#_2z/0cX4N7FSS"*۴^?E5ΰ͔gfQuci< be5Z͕kHni ֹ.8/puXM!_Zaf<{B5}i)  J ;oP8Lv &cwO^j$/?|om_,[IhH!Z$]yY>TNhZG `ځ^(s(L9Zʵ@ e9!B\fz&!e*kX ~q{𹨃~J/C\\=(f!-V%a?SJYZB3a># T3O2}:^5( źFvrIO]#זٿ=r7LaHDbI#oU =]VZɨsj yv\+Dnma<3[`u8 ;d^]!e B 8Kw3w=߽wԉ╍);q#H eE&Cc~ -):&gFiw.)s(ֈô67R&GU@4v~z׵pӬq:$8O4!R>)t<>*u$NPaح`'owaS<`[>D69x @?͙'=ϡ@M[C&O.@H^@S6{Bb$p'=b {-,pҽY؞xSp ˈyM>'Norw*^ rq(adʐ`y_&8۲icxV'\j&W$b7E4\ A497<: a*FZ;g76$@JDt4R)dN^і˼փ5H,?E 6ypUAWhs(k5"MdQ$V2fqa~7I`HKxa?nnJHЧlbڽja^ChA\\,U@ VmlS\m,MP.m^C= {-YV&`]zik[u!+T(Й?}`?@!K؁4VkE1ʀNV750>ڔ*֚>&7NH % iL"oQt]EynYҜc1- ؒò=er۔Q2O( urzЂk\Z8 [5@Hдߐz7_.w&G8@l$/]JǭX+C F7f jRU?seHjPmEϯ`2*}YQ4"s- HRȖ}tBV<5Kx?%|πfǨg[\"*DVQM qKAz,# 7eTZ#)0ө~ e&fSŎ3RF*|f;6%gk> Z[V!rd98yfi}ӈ|)+M^Td}=ԃ$x}9udA^6uS:[70KtVoS.QO*'[(u(tOsꛌI'GK>ȱQ#ųpUSe_G a{ErHv!]!o3Ct?y-%YCx0mHZf]}CՓ`s_!<Ckm?bGJ)`yV؆$fI:nxQ^GBa55;6..Mw#-L0&6RĎ&㻹r!G>~>`>0'GVY9iyuEĶ/4XݱM|M*w91gGBmly߽ QG#QNǢ$׾PF0ͺ}H~k#X_U7")FoVQp!Q{@3{B|#`O#O4"w HbJt[R3*&IS!1k.`,R}f I7,|Kɇ ^:ZP{c*yƣ}Зz0m c~ !𾝐!:X U" &^b1{]ڥ}K9pP%\F>;KPiU> hB>%{'/ّG aH`5|1Y鵾}aPco# .{I$7pqRf>+G(dA+#bxgU"r^D$QO,#A$tC2z"狍4wɌVe[Q6x0*TuF4E(ո{#`pJps[' ѿøaCȺ$ >G샽tXأ$7\ðG`7I\Qj+Qsгɬ?$Ȅ/8Q:#R,\a.@t܊3v+7*7&Dղ4sҳqOѥPG^ygi]XvhFۻ9]=AFPc گ^ D4BmтՕǨA;.82EavUS`^q>EHSfo+F=?aFWx6֢4,' M^T<®rxﭐ)8Vn258ԭo*?iˏDghV0qdZnh֥FFc>qL^jA?sq& …P?#|ն?[9_LOaZ?Ы_:ßYFxUî ̟gqHIθiT2N{Dr(rZj=eH anT髼(*7,ݬ֞8H8+p/EhG}#]f qŰf˷!j}xzT.|݋job8NkB/7>N=B7۞@`3{AmW㎃8rʹ~GzDX nIGƯ> &(_%`hǟMxyQ܋3FSf6Aaw$)b-Xc5 {Tn/> U@_hMŹV0+&RTzkb Q~'jϯwcGӞQ-kG)$Q?`S:qٜICC=L7xGO xYzYKU"dlfWӪu, 峛M1g<.?nҐ(sY %̓DWg ߚr/vzDMX/[acTE"j\= ^/Z2Z씅å@.KpDXF.ΰ$u7l~lݣ+#ן̮ sj14:X~=ldd RQfDqRot,(ݨ$J D\`_> ~ã ;G^;A3S5Hi`c/PMC " i G^J4kir*aT߲7*?B 4EZAz΋1ڬPŞKHʼETr];UE«r;xxz6~gir"[(zi)99,i)hjn+d~/8niIkN 0[WY6%օq"u} zk/S%l A]UjÈѾrsFR@VvɧɿЙE'ݧlW ٥ʯy y鸽LW"kSTzA{^JZc"*Nӷ8x8kq_ %]~rV| f)a`4/ՂRߛx{ %:T \Hdsyoi_`fd=9zE:A`NIy #g_ЬS`&kP8U! ۊj&+z[Rl3' 1x*ritlLj_rL5Fhj(5VeacN0y KR)d?ҾId̴DKՎD^>_(!U3d+}!.sȣX>whƶռo G|1OU8L46ʼ &GFdD}De檪- &q(_(:XdxGt)+kӽ^ZW1 n?lr^j]eB«4&kmWY*F-.m%gt681ΙwNA]ދ]^!T:U'@ }.`y'xon 'DN;xOE?d\V>[u }3Q3LLm5L狰\ -ȍ7> 1^o5ϟ͘p&C3D0y5oDq m *C&=dE HAi'tdF8Z&dwVQR,">r #^w+z>lCt1PfI!1[ uhΎ7a]Ϯlf 88U-@{ pt%@LǸ. 6+A&:RsMx3U1Z!8qQPbGYQR%½z I؂tT?vOM6^B՜n!,uJ@cTY4Hr2+A15̦ƥU~EW}@353"]5XjQlxCױ.-l$?9̾OR=A٧l-|Mh%ҧOr~O_BrTβ"gRyt®*oSM(uMRta! DÞxx;drib ۤWxB=yfx#7$qU5#a,"hbÞꋑi#w[VYu8c{tH*%K1yڋ/fJE%P/8bJ_ϩAɡ:;&d9!2BN"IYH3Vzh V pxO|BL#^t OE}NFg:?l dIq]Y5|@m` Aio9AӿAS -^3';FUy23V z:1 )P=紊+ {PW=(;BwQָ. %?VUF, 3$"+yN ٚa/KϘ԰?8*~X .Zx}|%6Gh-5hڝl_xEHyJ8KM,[|ji{$O!EݏQ]Kb'aUB, Yn#Ib-ct f_Y!/%dv]qPAX֌7oFF;,y v~;=~1/xZc"z$D&꣧9Jy `SU ?|S'C ._ ͠7[t&AڊJ&:{yA'i }05?=АMgg7/cJ1!J_+[aD|;P)iv0FZ: -N=3fq~h;h_璮񥯱!߯㉖LJ3^T?B8)2M/sVah&u

a+w_Ԩ͡VI:*h呭ĽI .;W LOX8?UXȣq4B!,9f˫q]Gp8ܙ& ΋l 8Y+:hSQGqZTi3%{^WA~Im-M1 Ӷ'+bQ7\Iyfr;.)z;O\)WoDیX7dg|ώ&idzu`G6ǐoC#/J WK[>y;E!~( gC &ۘPhEty%-tj=|Rn/ &jqXѩ&GlJSG!wpVUG9"fVC̊`#)d`Y-"[–Қ,n‘c}|JdQ:y&V $KWr 6XGKR;WMy1`- g@Φb*3I#߸1)aŻ`l'}Fz֝ Ii oQ(Hu{_CΆDrFG)6W=:Ӌp Ь? AlTԗ4"4d"f,l/}G;krDHE\[*15HWC3j5IFYb\;d3ٕ^/EӢ_z\>y&t99"nT==l`ҳQ 9&NhimD;9i8%YK8;!i7Ew)< F,X=*INRncSEW$3@@V95DQ Q>&GHO Ib9^>L_tCLqyѺ2E? A3tID%paJ ㇾKTq,j Vm XMA' nE.uqD jH@6y]ÑCol@jP"1[O&19S0v =hnQw2Jo:=X|F*AFL9u) rQ= P 8b/ 楓W~$R3X`C%@= &K5#ƖϢ\%ZRp BFPUVpӊ CVnQ YodZq&vŒuM*MݓbfBPigPxi*rS"WCl[c~W12*![^p9 Ï+*yo>$(tٰ{b(_ߍexǯb(wR:Ke!i$ΰqYJ lzNTJCNYO4!Ze;o1+m0tz<9P"mﺣ[\ƙ;Gʷ 3 vEc(ްXhҶ;!j9K!e8UznZV"JZ[R,^sOsEm^֡e!D-G|+5\P[PQ=80E`7gVB031PjeXo>9!pBߪ54PI4sFb,4V Āgc>O'Utxa]ro{aO?H J<65b=*"K=}vu1jfa f"1]58[+`jzl]!a7HH0L$h?Lx'b[yB,M+†ygexZĶ8?PvEĨt,PƒT <3~a( '<^ 䑗K%VtG |/(R5h~ =- |Js(IN^C6 :oir2v:<)# @Z5^Xl-u(?0~408 mGrdr ?6 BM'0IЦGƔ[%@_zW5rcUJZEXcl8,?qH}()@&G_XvM8P ݊_ C@Eܖ^sǾn䨕Q21.'?;CwCʩS(N("]XB"dQs{p'< %[ks);knԍ h쌢NMB>bF H$`jQ!qAuoooÇ \MͅN@/Pvo*Vt)8GyxoEIat!9& HxmIEmH1*.)͗3TOu"ipR8]?5/,'-R`Iޮ|X}kmJ%ȳ͍K'ݡxddw2᝹n8knfč{pg:>CF r6ɣ/7wt+Q j>kKɕ33wHK//UAi/` Zm:"nޯu9[ʣ/${ȫeGF&C$wLYyft2B/ζ]K#c#;fk~|CS!ZK;\ I$t7̥*^ U>H #[eȭlTMB"MgPm"EKf*|T {x%9.|zn?"u-mtqQ,ܴ [UT uVX ԉ?K]!0ǜ7m>?zi[>Ф,K6^ՁV \~$t/ߴ쎉i=CWa&rzt^i2u(kȝvdh,Rj)|X7~El7> qRIC7Sx 5. d =. D6tM¬pY]>3Wt͔a2XXb?CoBcki^g;O:7hol|R5訖bLK y/'"H P.#QC7[aZĵSQC ȄoLӀsзc/1pqK6կb@F c\MYF*A0a(}vmFɫ4esk"C8й^a el Xbh+'i^(*rhE/AͅOq]c 'ր.UאIiѿ by#KSTAn Vy. m ueeŠj,\&W5;&"H/#0/(!A,H@}7$dmSxz g} -Lw(cD,W?RFnڜKHM\eh Hxٝ ;Uҭ?×~VǸypO5s5KMP&fSAoNvevs$~p8\~J3xDo%Xщv5}c0 bnatZ1U'y#sWC "'lMᕌ /sI[m•9%R %6 Ϣet?R5R8 Ws[ڍ3sԭ 2f" a2f<jv6vAK rmxV`/7Ul UFzNƜiB|A co)s= hvUAC ++ݿZ O/XXa X(M ~C(\_6N 냒$^1ėF"q>\'AD-vm#!wYhm5&Fv+i=QZl@rs-=} ~Yc19QѶ;jZ#J:&n% $:cWZvnVKMCaPuO,0>Gi2CH{Y07<.S a_9倦JG7]-J(Wp)*zښ2B57j _Mo8'v\{=FL"ڲidAG+Jt$ZvrٰLW"},"Of:Y܉s;e?2PE$d g v9H :`[f fIF &x;AlŬGKfh9r]Hy}]#U-^%}jOP Ðz;1u5vVT%jb4y"hOS ?`?I(moEV"1hJM8:#MQ)و7P kU2ݗXCf2^MGlEۊʗe(Jj^._Ŵ=Ԫk&{?ґs|# Fo(_zf̍^#d aFmp.냻0>շew5 B?jI"z) ErO 18࿉p"l23~u!"WO_7[Gf,j̺3A{erŀvK( `d]1N|#1Sz) E׌  B dxDB)kfOgtкjx $V)nx.枪G*&2>o)ȹ%Gڧ Uho e.50ұc&t_6:S0ZD"-95fmm<&ao8!vfԓW;)MR]"~\B +2sv?ӳ 49ۯǝe|s4rt4fÂSuP;٫)/+gBJiؔ"Uy(l9rr*}!S Y'~suNjϢo y(b GYSQ.6eDIG}L.$/N&v{ rO)7+^pt뉗 8*_2u'!y!Yp5>M|au 3ZiWP 7ͱLchϊT80FF,k|gEA$MO 0+ѱ+ech<򐃶$57XE܇(sw}U-qP!S?f& ! 8cSx{j7)$X[p130 $j=M.1&QpM,XSDul \󃡹82bEHmW3l}xU^f91~ˬk0-YoPN+ === 2ܖ:1 4i>fSz3+]:Kdq)S?+{P(q̓ yS+Vͤ&#Hhrs& Y2;\sU]cl*9c 96FmO]D)M01I!_VRXw?tןPzfXJc)bpkF+W"X'KxviZ!PqN+X_;\*( 0}J{`+MjbhJP{9sA; uvu^U"9Z`zGD[EO#6הCsElCQJT)V-2&$r) G8u +xhQ!7luUwG²{o_G*%J/+ GbLJl(,ݏ!M؟v3ʂ;9oH~+-SLp2{D&:b)B L|ɇV3ĭ ݋~fez#܋Ѕ08& $QS~㭜}1$?炖p`3.?weakѹ~o(Cқlnļ;1igMO%k)$@(h.tᕁzXp#MInWAfk7/KYKtиJ~? 閃駃ڇ* y.vaS~E9.;oG0yhgg\DF@.4Yvn]AAo&zH6 I?S쎌N*!C$daj F2UhokS|N=upђ+RzV)2:G3WN[+,^ioW0q2Љf{f1(L*2y}id[?=r:-^ACcyLQ5OM0ǣޮ@QTLM`f`3a,O4O3t !V䔠6%2xpi7nS5rka2A9byT~t @Rg n)Z 7{XЀAÔ^b zKR/93/̏Г.Q!0xŦǁ$[t5>p؏9|G㚕ob'WhmP]1Wyi h$]&2N =vqMV wx-ֶ&B{(LO)-Y? "F8!P'. &Rh a VwGKH2 mMS!#Ԓ\Q'FjȤ5^Z=ͳhrKg:Nklk;MΔ =Y.!Ʌ(B&-]kRh"1=y@ dtFH֏ w UΓ4;ТSF66ZdBH VbYrbx"%Jxȉ" =t t !7/;Ms«R22 @q+Gl6^Uׄ^z$f"2ڀC9 )DZeI }-\㑁z+C}lRs{gj[}H;NifT<,nM */xT8iX1}pzِy%.l;Z{CQf};0i-  [p/%vMYA:fGu)fBUe +Rڙ6.ocMffI,;Eefգ2vTLM!I%!_f/OzYPd)Nwz)T𳈍rs|`u*f9-EPBl$`>E QYx f0HXh~Ulwywh^s-Dj?@̫Rqըj":89(OV/aY+ROQLnٵwc*ݽ+,fg\#9jj#A7H,ɸX߈Pࡢzi;}wRo,7uH q2iٰf.DMm3ŵ NIOA_^յ7/ %RdTQRh);wQ?}a̦A_K6DC w¿҆P*;J+q})}{ q-+4{o'8vK CLOWOЪCF,EMbE#xOդČwbLN΅ ,rMR>PD. I%°ٸ9`o苌Zhh3Z XoJ`sfA4wZ>%ٜ .ې&ɲ&/ݗ T;Ҡj!.6b4u!#shd%pbi$:Qs:9l\%P$poe@?ޕ7tyDêSč嬒ꆿ !t_B.1,)KdLYڽ$h.W[Ɠ}G)_Rgv{_!T훈.j&g.}zST"= rG#HZ]K~MY/LM?8f\\V8 1c9Փ57!4)Gh"N6CU u` ~Gj^֤(Jf]ŋ(2| &2K4S*ҒI blI6/ZSoP tU!fH0bLgoP 1dh}('݄x957-MRRW}C f"LX`,E_yaDBڂ{q ^ayJyxv@,cRۺqqwA8yj]$( tDWM+MUEq4CV@ꠟ{ : 6Q`'q^4[ka@ϓ|aŅQ:"&> Oa}V +4|&b}z^:!i^O4CD~Pő iGk&d+?`>0w̜ alpŲh{'tfA@{:`Җkb2NW@ڍT85u|RuWȔ|^i[5g'0Nx( "hvsDtDf ;.+VjIJ0GXF]'Y8 @DGS:0ua 7ʑ彁1N,R:#6}{9͂|7@[A J,q|'m*T!QN+h}~)qPdb"_|.o̾ߞ&X3V 3d2QXwٷRҚ5TN{8-S ᗲ!RLe iY@JlhIItw䕵ˉs(0-+K!\-/$? ~OgU}G/TTֵ`oi2lrA7M>1$_kC 1r#Ĵ!/[4ݴAE5[\SWZ=QT:[e<( QW|(62 +N~NɺWEpk!Yk ݢy6Fϫ] a %ǬD*gM̖2pOD}p}froWJet 9oӉ-ud1?[%i R:kw{XlǢ(Of+@@M^6>'QY-sYQaS+.@XXυ2~X "#&рgw㥖>=DKvphBv`s"EnN>lUl4l然UGy~]RK3s3$$ J4F`]:HT{g+{$$@%g]@aZ<c> $(xmbgV $˽P0IVw y%MR.>p ]21Sϝ7z ~58D^**~tnRx_Qм? }Z7wx!MP?pZݎ(%OUDUr ~76-jH~8JclIGu!LSI!4pmjL͠E*&`wZ7@g:$.Eadˀ+89d ЍbO%IN^y>˝Y utKpx<=s¹U'6>Xknm$o')2,Yic#a ?@qةOʿ3pX%]{}pKU:4+jMn."W/.gsTS'N-{⇭ ĝ7un&0z^X}h J#UF /ޱmd6IQ t (Elh$2ğӰkIB7~4{U,B2U+8ۈ5'X _6B` 9.c,gW͋DL aypWP3keYpa°<؞-@ɡc´HY0ᇗ:>ښ\;[)0SZY TC=wC[GM")dϚ,RtBhqi2ܿSEStsVAaE`igQ|+׬/<);$u#dN mU=81H 3=)Vh'>,0 FogSG~ Kˑqt`X8q( lHb<ArWkG7}0nm9I_T<'zQ?H~)mWލBZ{f5 v&P@{j_^mӒzD3ݠ 5):fA+̦1Tr[i]o1Ji_l/JJQpQ`EmР c.w=59U8BC.\د|BsnJ\;HלsN-'!2XPNޛ?qAepҿUy<&yЌ`CF ;I)ģj""(D41l^0a{!AQ2O%5kЉSb<cz ϔs.k:Q@Y L{[EA=uH Kj!ªƃ• z >5.#0krj_][N.F" !w3Th*.S0XGR3qKXWPU)B1hҲ(ò>ĵu ;8Zg0Qw[xch,`5#jl{wQыw8L)sa)H?of'=L, t#;yv`s?H+ -Lw)Pk(R_~%|Y?R;pۯ ymak`mfsԼ Rbm?4b{ 1<#{-j|c BA4pih&~M#A;b҃ښp>^6j^u!'VBJ$Fl!VRWLw~Ԩ :<|(q'/.料ι3V/2 {,DŽA 6|$g¨RdWK7pbct];!.ajSyR+|35Jgv sjӏ؄&.;(<1CUg8Sj\/+ 2_n W݊E6Fy}gݧ(<h7!<2vY}F<RNf7#4kk$6\; "wbLzNekŴB:xMMBV]4DA\S ;; h1yc~!_8&[ ᗜI/gT>vʔ7p 1I/(Xn+A5/p*a5O,@J"^O>.]|iRD Pm@I[YS}_Jj{Ѧ9U5\Rñ\ݥƶ[G d/w'媸:毁jam˥5ƫ0$u J#Й-a‡"0@I%iF"@8\($kի}1XpͣEc^Z軴t Aalw\QL ,= P^M!2xݢ&^o /$gWT|?iUCR}bL+q2ˢZC?|`#zˆ,mo=qdײ Rq*= _ &"rz3u)%kKϱoyw'Δiӱg7S_KqjKiyAjTX\"lHmUkӸ,AYUiui ` !e` !Js.fV+osC~_9[aElLswԥ5k1` ^zն(#fKh2s]ZwbH/hOm~@Y)Ѐ _jaB#QP/GYP+ 2쨂,Yf@~A|# MUfo9e(:C"Jm%&Zm<Nc/^z/ p30I_ka[AVD~L-n!haxMR} ;,|xrǔ @һZʭ1̀I?}K2qO1X#q((lqX_U,hh1tE_!RkWc,VIgpMBF3A^ \N63а[/E{k"ekfb6ck]zc tp#z=MQzNm@wBZKgL^IRM;M}ĝcHj08f+c @J( ➶vZ!H/2CPUv>[98nf]GCzfcs[SƔA?95V8ݥ057 -D)QtHnϚj^0^v%\9]HW.]5[Blږt=-HBm&VHUC0Kפʆ}VgH*}6epQ4ق3AG#zHH] ߉$  EYtj-C ,hv4_>r/[퀛0 9VOyZMA} aP& aj=-:mG>Y"E8lmf6-Izz@|7Ժ<F03qp~< q)DK- M7s=\W>u@2!<*ɷ:;*`nh Ri%̿Vr=߶!.mJB#LJ?v1h t\5 /UE;k3xH'@dfnΘTNeSQ+ @fN%fbF2 [b`:(;\)2NE߬M}J^ZS^R`,f5t~\xSSyPݥ̗ͻe BNJƁOH4Ȑ,A)|U A hu!{DJ!Owri E%gc*?RcS{B١&^9J m+S\ل>p hT˷6XO4*6f=Y.N"΃c"P5C -r q"gPҽʔ=m0,ptt|Qo̕ra`z pN{8OIUm%6#ZD/@`,7%"@@7YTU<ɚaoCzUlmSCm3]LI!nzEXU+1ػq>x?J_s0)W>nǵ킇<2e-=;`Tqk{|!.!,dphp|J+rLn}L> ,Fb^ _ ң8 Ex۝tvcWWI4@rXAm"41ʎeJْ7QҥSIuT->FnѵRkӚ5YYXjI׏ъT—^E\ypi kR\b??ڔg 4_0x K)iޡM_We)!‹֡WqC%y+< "tJ2< ?a$k_b(PS']LsIVOa.+Q~%3$U -d܇ßOwT]wr6]U92zM?* |KɹV{K$bD-,vF${sU9j^0 dɮfuW6t;k9:BVnzR.=jU#vFNB;) uZvX^ >}cj1MVX`։XV ~4 $:^cii("  3/OBpf> S& a\iUI$zjA3„`tآ\Ζ_S^:vJ~elX-~lm<SDP}#kk`N⋻TZr-<^K2Bm z8Tuy$eME =K.|M%-`\k8p7?@k0>{JOV \mL-bŷ{ 3:>Q-z.e%)(Vٺj58]jk<^pҷ[gԡ7l]㵿z#7uw{اѹ ="Bs:㚎Md_ua^R^a_+ ВqՀ)`.SeD&7hݤC7L8Okdg)I7Ѯ꫘Vޭ㼯0 ]T5 "^<ۆklUOP;Ù˼2˱d|.φ~|e\"dhNF]E{Dn#U|w'BD H\T^rKuviZFIoqx4>2N.h|qHQ7mވZY| %-+X#6_C&0FWQ.X6X?IJUkd3 nϜvW1(FT0pG_cӁtIG:r !yj$HSS},hg{ۇ%+͔D0BVA 3NQN -1.p4P sPD0qWz.62?*6fAcr욃lj?5ڻ%[ўz>𨲔Ea\mJF(<_A) -{j'őwͼMO$|<-)3DB䕓w9X<"L朳J07\M0n$ :4$hk̢T85fFFBy_֨)?D3}rae Ӕ x~m̿ؗmȶ'R{10455ؔ8A1YaacY~Ec󮡏9{fh@iT!d{(b57 S^*j*wɑijlo3/ qN(pU栢ںf cѿ`(ױ@Rꑃ;Y"bj %(19X%\G[lA>g6^P;g:<'ľͨ s`fX )_=#li G:'h?,&)I=-Myұ;4/(,pDÒEH{:'EQ-ڽ4@/Gb#.==}rY&;yS ՙʾMV<}s%d<|D n3J/2ai}}V `Y#N ;33 y79XgɜI>VQ'Ñ͝-N~ G!;:Ϗrm"% J^{(VJ/?-}sLDU 33PeB`;R! qT\1)΂VVj>s>4vY"k!i -$_CkGCNdxՄwH5x%0"qe }+9B$X^9) BKb|y:sXzL˪dHgH+%`n<1̺(dž ap!Rʻ0O%ZDW q" 2{u}a$s":dp1Ï+6:'|9D;T,.D *"dpg!IΑ[LQ?3"hʏĘr_v @);yD">?qPr?K J\z;֘9}TU8[8n[ F$j%բS"8ax!70y%BMr s ilꯞxf$:$p6-& 7&ba@Y ʝqBU,yM8`GUм8 _#Cn}]3!Jtj9>N1?] :2}ԓ,CnMO:syZ=!`Е5Dab~gGxΙEj9aD݃Kd@GO mw&5Ga*„Ӂ`h\n{4qʾjpXrP6fGd$#겑ĵO12n&]+QFoTVhafCŅ YdZj(N{A]N]XC!u9:AY>!#dX> {UWՇ*&C!5فWՌuQdGM˰0P+M Ҩͩ`1ᑞVBۣao8dYC N z+fFMs-4@~7Wۍ9[gP)4,}FK&d^Qs|Mӽ{$<067U(ȑ$;oQA )H9yVhf#iǓrբnׁKaIk4?3.Ŷ b8J* Y`X;R*"RfzߙP= | Fž%3+,HJyy#PJEG nҿd1ƍYA%J;Sޟ߹&n}ZT4.[#nSb~Ny1m{raȃ:f.2[<'%pXecU^qp<%-8{QF8#$ge y9CAh>ՌG:]bNDaB[cYί{1Hkh6@xcUV&q2@_*VGPQS<*%㲁})x\yNrj\T=w%p>{5FOb p;ٝk YCAKPx԰xHBTFAƇV ANY5?}\U$/߅{#]ê%YTO)):EV螶TOZ.1 P ?_N7}_$EA`Nc[пhtd:X1VaEYE>k$beޫYdD$w9wgMZ>3QIOr2ǀfr,YzӵLjTWo@Ncc`" r]IR3+NF[}T9`޶_$hwH1?=h`S>בѳcp| F4BuNBEY<<]q8q/32!-%iyZDW橿}|+Z0,vd!Suc>+-_1{8[ђ!ZVӛƟY\2 =i]Cԓm@?  ݹ{i}"Nqpnx 9F!.= <3ŔP9S,h[fR9 !; n HAý׎ɀ-ܼ\KC/];&MLdW"z%)I.J\P3''˳"*I֎u9t|вH?GMM}ىi|xZ)5W2*^gFsѽif]ޘwoI,r#QK Qqo K[;M));lu\\p60"{%-(2gm)k.0-b q%?v@:XhW/aO!d2_e~NgYhCڀw;sE/-\Vz#=HvzAU[ C! otO;Opi`)+\uzZUѮ(61F&<4SIͧI1\J}m>X ZiUV]G')5 ƖQg~A aL7Tc "SL&կ sԐZ<)rDlR /0bGԷ\ HgRu] .Z[ 'C}2gq~t[Dfi+i6$(&wY}r #*pr !عΧ:(u&ͩ FYՀ EQZъ\ogm+/MvpE[  W@H,$r2klĘtdzBυ~|fF#:0-}Ay.3{7#|{%DkW lg[ -`=cv"~$3 iB a<(jP/_.diu~7b3fO!J6e81z- m{o u2"wxuq~ا?u2l5VY0, 7$Ut:x 8uEA M۳؇qJXC '.VY֜=:+!R~W&*ܮbd-rf\R=/s ʶMsgZDS#&E:H+.)$j/Ry{ԟV{ xt`-zœʚ܍70C]x5*wU#KEdrqJV^'|M-Fh H*&.%^K<~cfObF5jz ͌MQ>]y;}V"}UTA7u %X{QB> &t&$jW fspFmWȉQ$*fpb7Qe؂4ZWd.qr9GPRQOF-2Q]YUP)WyV"Mvx a5ga,2w#׊drqiJYׄsZQ+(0JǼðvj1"PeEI>s>{)TY *KfxO06h4:_0ԷRs4;b$=GIDI|3x3j-k-%59v) N@AӋ /©k5m2H_IPPs*e6f'19H1N2U>[EV+Nx rl?k˳tPR[ ڗD˩>fY_85n}2ٛa'(eҖF5ֻo?Em`3+_/X)xs:Ue#vz&!DuQbY4R`?AUCa"!(ndF>4am_CB*D'KfM-sRoⅬ+f袇#tXqO}8>/ͿBECgAy.ǎgCB;G .u׷Cّ[%)TOmb$4q=Q^x" T~95 =<0Ӂ=3HR} as$ٙOG% AWݐg,*d, C>Z0 -M:.`7+L= C%X_,@ ҈ٗ5ΦL/OCͲ,ϭ@Y](]%{%W66H?gZ?^ąlԅ3S \)FWk+[ε{F8REXG5mi,wnhӤ5*՛:Wa R+s*kܹWZt3m”5}ue>gw,RIC~lrb@Sq:,4&4$?Ƽ+Pn OB&G'=Zo_ϧ9E&wH-l~EW (["BӜV^鷢/ˍM µغn4y> #ώB;.Gn::9EAv kec7K0F!?KCp=24,+n[Ũ,til[U{ʿo~OOJppqF&niNmiKcO5ktz$fGn(L!yT i߃OLCS?0ڡKo~-4k$fhT_g*|X}kʌޏCm,XD%FdսGFe,*'0uΐB8Q+I0h(l $iJW㒒AIă5xI IhS GGTYoYFHH/\`5}u ͳk1,/'rwFp ӱv(>?64ioڔps|<~J VNR7(B}Y0"lj+k3 R~%0ZdN͔m7ytfG+Bk/pJk aAżޤfX V7(9iLfU+DPJ=Ƥ<03"r8^KxQ(8^)s.PZΥy@J)U|ܦ5y3ms )\Eo/xϤjҿZ2>YWf!!}Cf7:=!f3rlt]P [oBC[C8)<`,OniS7RKٔF*LU,|Os~d)9ep‰cNٺ#ԴHNY}KxWzÙ2@x}HR)Eg@}'4>{K{~r´n5j,SH4}F/#j6~j)V) SdPY KݪLszߠ?zX/Pn M00mo-QƎߘn Q m.HqW߼ b`y/0Q?4_2:{H1e‹|E>;]n\ V@^|)d\N(RaOLr.h#DG0@nf!@+Pvz 2*3D:2m whR'=#*js'W~sJ?M`Uǥ0ޜOpO6(0G#@ԦVz`&&(Gl p%o*Be.YY8,o GDҩoSm,BLɬ-:-eSBat+O9H0Pe?V`jW5ͅOљNպ+FI d mN#;I joG8?nJvH:-y:(h+zHAyEoyj`Ҹv"Eϖh&Ymީ$W~AKHp7&hEX՛ U*O.i %lB㟛hH-W( $C䄸beYL!>~a 'fkey Y K䏢tJ"L$]U`QQ]oQr]q_}y}>V.e-w=(-A0::,~l"67R03H\ ÉO׾WK U svE['Z̈́cUT0^N|zF~M$L BCO "X >ljTz?##={ǽ4)PslHL'ԙRԣߩV% <#rryFdV&;&t}ޘA{)OZ|B4F+'v!X{4g/r8xpC u4;~C2'hz)XH'y} t3*d>. #P[;qGݽIydlPklTRSkZ;B[OUT3s4%:z&]g 3Q垠Ojw6Õ|4QfdxPZ34?P>y7Tg2H+Fesl,:/rB!x[Z| D^ 24NzFiwj~=SɊTRwHXʞx|!/Kd4ƤϧW ~Hza_ѪM}sՈ{GiY$udt] a4zJl_2 0'akZkmCbUy0&PCYrQn avZ_3\F >A#"庤,N8[\ eϑ!Qi ( "8:xӹy4x,Wzc"\i=[jC]4Ш%Ÿ>8L!?$rr_ J|/1] 7)wMpz Y|;_#IyVy̏*kY':wF+]&ӕ{ Rn OBI@Y+YO||/t0*K`WpQ6 x! o\Ik M=@JǪg~w$Ao6h޷ "^ab. EZ϶гּY{y ;e`m7HѲ9̻*wύ7ޯ*l^K&i[laIwrK V[bd(},\韉=Kyt>/lޑvH%PnLjY`r>/:0ѵǡ@C6Y|49#7"i= >֜ZZE;tσT `["6Aͱ~/+&Ӧ3w㗢4PjWasN¬_/+pbww9*}4\V)~W{12l(r+o|A(?euD[U3_s+y=%O !.ihYpFp\rY'>q܏Wacuqg`)cT6<yo$Ǖ> NcjK9c'<tU${ZPt;sEk\E]\[H3 GҎ],j3C0 K`C|JU S@B5ۡjq!!m;[N&hviA?q=* \ !2PBfR,LhߤjM8:>&' *AJERNgϟP@;#H ĘU0%#HvaIm?-Jr|,D&rQZdm(Wf'bL”[L(PTdM\gT`fuB;:l>Vz3eW~_4YYP^On%#-#`K?S] 7ݲA$`b4Xz58C8:McW3ʓ;Q'i<&HS=|f_`o ~bl- -BI=焾p "G< 0Jty-CfmJ!۴Շ[._'#,*g/*[pA3P;aP 1geAቁ 4:&J92W\^?^oE*(p*y/"]G x p{iT1.tMєYl%1 $޷[ oy'󽳇l4A_XٻCd"P`Ut :2-E04lUw֎3 prf2uGN@ܲ P3 #i (RQ, 5UKVi#v7K7?p;PsWHDVXۈtB9 ) ^ɬpzL@MZ=Bg.hR62#&y[_Op?dnqI_oze;DCg"^|\(uTmzl1M< -x;ְFtNQRA֮wLP=/9Fv<ꂳn4H % j'>\f$2K qٯ]6}k3HPKe[4fe'ܔ]U-"H;5ڠQd%E\žSL饱R7"{SyU>#g^ Hڕ0G}o=Ey <ݼV,~~CRO9?5F5b"}:EXaӾV]Ly"a>n6@.x>.KH8I7!QxF iIfˌkೖɜӝb+yO:,jՂ>]cw᤭B5C.b@+ˤ+݁ iMp@ߓ#e5^_#Ovv _=C:OTg!(rL9)Y}aSF-IgMޗ+p*Lteo)-ޱU cq#9XR]Pg!ch!#ywEq'aJG8"?4FTlLMn"8  HgD6cX%QC\W ÛfWcUBK48 K-~Fk}FJӀPc;7vlZe2|VKq?L/íD۰ Z7Ĝ}:N>] kmk3トc.RqHL0G<=4 ySNv/ T|)TōhSGve  .Z\ӷm&%uϥFcOY3TSD?ά+r'ɿwX'8 |7j-p"{0aMOjwI !L. OtpȯD㸑0qECE'+4ij;fL p1*72QݘpcxJO |3pRzƓsc!i. 5S$0y|AN\[LXEiy زw;6=| - ")n˛AEhqniv@$~?gd zΫVE.F*/. J+Ëz^/UZCø:_m~L`+THyHpZpVgOO C"k~㫁pGP[3R*6p3;tcp=vg[Jauj"խX̘Rr4R)izmvu!vvf z֊F&| g) WፋQ s6QPjm `|thevF[htP8[ր=0x`.~)Moϭkq/ ϵu7x]fzBd߷=Kfm;І_L_/+j,a QTJ'e*JaX03{@"jqOF&z꾶_,Jwx\9hIyQC龶\5C,Q|b,[oCy.crjjb10ڪԒqai*Z@oHR-ۑh"G_RqHRy$K^>rUUƤI!/S )]ʥWN ugsq:\i-zÁFۆ2xPBOM/I?Ukٮ GI.ۚ~\zj *s Ǟ،/$9 qZ\UPI3I9@xGȥcoI5֖/~t=m$u' srUۙ(wN`<#kw%lJ > a[T9;'e66Z J'VypIO8Z;sDkEBCAkWK3P3>Vt  lAVh@R}4@MF6ChWlz *1r0A{[X$~~AOf/~e1oT Ҹ62œQ; ,g:-d!8f 0zEDA܀sg^ Vl _8e3%'vYmP{I#9I2V΢qKIv4_9̬QtaaF^Bidvdǝ1Jٙ'tS.yt镉 pVE[<ҥrY]^'̙+Tx6ua8#ϛCU6UHkeiZ!̀0-~fA`o$x:aheԬ6<eӝh""$vPDzX DZ@mxqR*G S(=1-䷮G#lTfekB,LZ5{{ʯ~HѴ9Z @!p#G*x jȶ Fcb܁["<-}f KIS|mWߤS{`NQ@f C ?W)??c3ryZʂ!&bc hQl/ 9~ZK8HFNWlٟج=T;o |[;X|"=J+FUwysY&-z -5Mس ^~Dx<@\~q6ٌj"0ڠ? j"(Zhwýp B YzHn㵈CIIӆdLF%([qHsV,},.ҏޯaV[ Yv9y2dސ+XWLը;׼ mis""e}/(e(| v D .ox8 >&u^^bCh}D8u4iA!ixwԪ1K9 ԹP9Q-[О`ώBl /05dy8 X+V|Ed sP+br$ oLЂ?Fo*'33z~+ŸCόFAR=@_$L޴ :d՛?,y܁; bsAlަ QWǼF }U{CW@o Z#JW;@]1;#.Sں&K6ΣCC%IoLB^%YP\YE:褪fGVe+RFv= 1 dȹmHT0P:x'"[imE3X0?W>x{Ħy1*aWqtv)JLPaՎ߳_~YxoPY廑I.;? ˿\z@ KhZC;H: f#mdžߤq @3X|<LefՂ[֤Âp[_k܈ڒfpb'[̮z ݐԫ7S 7S2TYxɜ` ih=1>vO*mLJ"SNz{# "!ɣ@Z_-qsj+CCi(S!$[[,}ݠFKhOM `2OmvsTQGGO%vk:pIfe= N+wp$tK|'ֻr y?)^[BbIwÐ~)Ȫ EUvd~١%mmEjD~URwr|Aޑ&͓4e_.|ߤ 5+I㲇X%n!ڟ<Πh] M>Il ] 'PDnTc 2 ?0IaM@QT1x ȣYͫ&Hy]?{,2⪆LYlxBU3\ЭšݔoOS .Ro‰[,=%1LMf[4ֶ& du?rpM%吧SQ0@68i_A ;F *pөo ׾ٷϰO{cz]QsV.@Tgxn17t0'%Lkry)Y9c/M8ŰU,_:{=ԗ!Yn\]N! 3BK~mqzhdZ"%zAn :[#Da@tc@]{|`TOPpܮvy?U*@5eK@꾚c5ڍʭZx$ޔUփ3UQJ޵L(F{}0z;ꜷ_Wo.DO`>*|)UWX^~#e`^.Ÿzɥ1,QevN:8נ B'!-Ǻnz6NUjWakʈt^(JPR_[L*yaMNJ[ct'瞲AÎW:Lٌ0Fd_~)sSq0ZOԝ}OjaRpW>T S⚨ [s#*n. öuBK][ݏЩy#F N|,S6€\"4>&=4l(TrNކy2ѳV?Hl ڸ1߃Q""@ݷқr K;\\޲ ?(-Տ-sOv{XޜeMw4zb>&$KNug+tZ|Լͮ^.4'-)7mm>Q} =qNR}FTIޖ;]ՖX{|lj9(9:L]  Z7L-i;Aŏ*C@L6`ICa@|GmخjCJ;s4:9,NgNI(r Pt(35YSmL}g͝ E^qTqqecѮ$*V=dx:N1rQY3pqP^# {/:ڔPLrhx c0v4#:1;t@bqɱ[;pVRۦ sRtҗQ#4S)8nBLSixGebZy&-kBuuJSr/ϾZkb9ցҝ&7?K%\EdClOY<*ϤSZpkA j(kUmt6&ENʞmo&Sa\l+X:mv< 8i;esv6U.ʂ}CUj#r2}~Э"Mr ̅Ɓ~c?-[(4Pޔ}檐 eI r%$$:g,D4 ?hUŐ7/բW!)߅Sg;2@Tslxx?J#;d;w9Y}kle<&Z8tŮ}iiPQMqBUi: Nx^t#6z^ r_ؔ{$E:j(gu I;܂r tO5J= !: &hWe;#pN,fP`I࣏VI:N5+ړ52Cq!dmGfN" ,B2+7˄w4Dv$&47z9 G˵i,GYGd[!4UwN*p]"hG ϊ*z@R:H~אrS0St.XΝ[;xg2O bB2MV,@`AU <Sl0:fݠS@[N`=*Sab8M&IܐyNi~#-mJ*"@'1DT."Թ ٌ]A'5%7Pb6aXw!c2ϕ0es;f.Uox/1E+;n͌}*` ݆2Wb6$i$1M:5O9c9GxLFC:IXhLL4 ]Լ%lQDD=AE&XNf-aoc-~L!Տ}@SJ$?7ݎ.'ٜ|S2)*Seb(yxҀP{0mRJEOir@jF Wfi~)nr_9{cG+lwfD;t%]Tp]|+.ȄUեpbJ|&0uD4:6u_%r*Ը? YlQ#<=y` 0+-ޞ8ݧ#$%?B>_A;wyܬQM4 ,MAIN-h\؃54n-/qb/CسE~' <%0ٝ.|/vX0Lj f_V`M'*qNxRKGA^y-s`ѫA?9ew$W+j^%W~N4ߌ,LC.k#8q.mQVR[Ckrwӂ~1_ثMFٟ~"mӊW䮗㲥e-0Ͱ:§1>Nh v5sm0XI. iyPMG])hж= _mx/v1BccJάKTm*86I>ZUs$ 75R !h/, ҅G|3o 3Xy0z~S$H:> 5_|utb^?Fs} Du͊RQxώaՋ4J*U?l!E^`6 d4*Ci:V!pNl,4xu6w2@ պjX -Ľq%Tҗƽ5n @_Q_]X{)*9/:gkI J͐!ڨC qPIJCs9ۆX~TuHXiGGDT-)cGd =Kiaj i<3Ua @({_ߥ3c"^$G!fsk( w&)A֬p|tw+/ȢH)4mP4" }Um^؄i&s@/XgDeR?o*6C~#i.M#L$!8Ci MZm>*;ߥXe=Z;Hh7;~ic@Akt5vT9o܍^ښi>?ጦ灠p*ǡxc@9effTk(]| t^2#SJY!z&d5>>$?my}*3>–mi5v 0*@.OPkj`PZڮbsYw"iۇDپwNc'r8qArO=dzzPa#P"^nNp[w&F'p3P ]3ЇDphs:2DY1gP_dnqp?WzdNIzn7q5+@ǚf*hqXu-ZڐH)!h&guߵKAë9" ќI\-3l6[w.B!ᯕU5A/lYT{E ~j'LNb*=AX!Nemx|@Jp]:JMǕZXn#p kelRTHi*ęYg8ՁI UVJWϙ^Fr4ԗ{=]Bdw;V~ wPځ1hИdp,;/v[9ڔ]'eo3ܽpKӓսӘnXg@gP=KvvP`7h&P6@A:wvӎ^03_@M X Ǚ69vk[p?+^"O[; L]nv]DCƭR` +K +Dt/-d\#)XAթQZ Ꮾt *d[p4pO[cwus)VLYh|qv=nBdnou /A3Nw+#KmjȁT]lXJuuYS>utD%"$ J+<-S|I& LӍjno֮lPːlJn0wi@.MVl l\4Y7m]*wcnVO$2xfSPK}u.wLy>(4dӞFI%g/rɐAtAq&P1T Y~KBd᪺jk,c.^/Ftƨz^ +W/7see~g_1yaڪ S<+m ZmNYttr4<+kHo\+ׄZ ƪǦ-WzpBQp@;,@oLDȞ2qa)@xg#9GgAѸN-W8TT =b;Onxh)*weT`.H 2̽^AW_lqKz$kL&G٥R%w<Txr[dÂ/ųDۥ„aԂ^l :^߅BtĦb]yuhTG.r7NdEٽIc`WY Pg@TR FF1uH>Ljr/q79 e!)ԓ)};]yѿ[aϋ8 {( گmE΄tύP<5ϴi3MPo\gc֮av3=zt%>ʸ,~K Ais FMnt" s3];;%T)(z-{tlO! hugXyW% =P*;@*6MH%|?ߛw_ ̻J5!/z=ElA9 4!V{;uzMR4 ²;{_"܆܀ Zfmi(62ăLVSUj kikuoj'Es7J\ÒmA]8gNtLZ5KL\FcW57ȇ|R7YL̤U+;V4",X㈇Q3;Z2!\Gd#(~1H%L(W033%GN6% [ٲQKjHY,ITxk:oa1֒:XdQȄ$1nˈ0I"X஫ƥD[P6zХ|ܲtI*m蝂=<RCUbaurFvs_&vզ>H -dyaCI )I&N4ڑMrl&H |6 v,.)S89^g[J; C: 1Y; 2z"c=wD_$i?Vs4 d<}Eq y`7m6\Q&Y/&fvG]fC)Ѿ9_^xYپ/ nc} SĂу ĒPLR{JQ+v݉JRmwb}R+x@ֺ^fLmHv4&AٗМbST!֘'\q:G)Gor1`!VgT;` IuLLeˉj浗HiF,{J#ߚgCVv(X+hw+iA4V? c }!.e:"sd9W{n̒%)W?KB,u64GDXfߚj]qݧ8҃Vm(`3 Uˑ@ؚUO%2dEQN}贐$p+R.9pu:O0f j75 _ţ)n~ @S[M|{!1no YH+xiÆg }b7k{ha *)̂ٚWVFC% $|i'g?<,bI*_MFʠDRT3GQa(c }+:DjFE_"ۀZ3{!w|N1=d!)_RM]'VˆjNÜV=ƤD4( 9҈Ig3}oN+[0e䐺˓ゞnfdI;+mm%BQ[FE|:,$k޵1,ŨJ7}0HMfD ~%%20x@v| ?6Yy c06.QlSCx>"3 L@8ŔяZS8|8GSQ'}҂YG=o ״DsI3! *j$sM*wlK5p񌹬˛JuH)SuIONZ)ٌ ͸z:Hud$/jse^,'Iߩu9)Cʌ؅)Hi3;AD)a}k,_(?$oƒ_I'bvhٍ4/5nz2IM)&Kѭg R47&MZq f'Zf:ofsV۟w'a%z*T XǒOU,5es ;,1 b: $F)ZĬPTvCЏ/FC34b@̵gr؝sP :a)O+dzeb_@k ?㞆bZ6&R|^¢x ID#T̗;]0-<_P^Yǵm|FsO>;}/`>n=svSp#˄ȅ\AkI.+D*n5Q~ElZffd8]x݆FIdź\z&*39o7|tֹ  …'MݹQ-;qx8NJ.a<X9ܺݾa#6̦MgV|kk{&00lHK=cd@c9CD= MrNW )ő4{tO_xc/aPVBd\GNPk䲢';L\X (pEd"u|w區S*q=G@ӽV0d"q[H#L"ϟ<8qKpW2Vcrds^ QxA.QY Tb/B9Ճӗ˂wO6xړL钖sQ4u$UOӖ1oDCUp ڀ<ݐ+_Um|CWg5<0S-QNQY9WLl(b14"L؃gUi%0Ѯ5hTm𻝞zP{O[3nT.|q1%mhn\<pM] sjj3@y\yd)ڀ͡w75Cl5puhΔ<1GTVBz ;OGѲzO*$Onihc3QvdS_'r`/τl̼'d#YM?-F\<'AB^e;_ܦ $sm`?(Z0i OReo`X;M /f#p1H:՝jSpw2ǤuWZw^qn7Ib9_-IQکF y񑌲7Oux=0<."a1:+TexĦrIոr`*%K}?G˥\acQ!a_2O榛 {ЈAKSXtgԚ2Y;A9ur1bCٲr<^X/PO:_ gԎwe78mH0gMrW`" lAaXH跶$S|:p9K_+߂(qGgfvh}u}?Ug7C"{${Gґ:պJs |?X0vm@O=1CGiX,u! ɌKr҂gAúb"Zk^fI5@1kكol/XeZersGT-..jA` f9iCz1H01a-cDPI # VZ]})M1їj x;*"chzo~2:TT.;)\W7$Iq iݱJl\F8nhtE #0(gZy/v lW$a4>5͆ ŶY׍_Ma\"۴ЕPuً٪CB̀NxCWYH'MzFllFLI0GC[DffTHHp@;_[vJ7ᑅkF*Da bL3y?6&Bְ~+{pC$bLM UѡM։M+{Ȁ7(ih ihVtwe]+q;.EX/?z *.8!/fVo@*}p7&`)99m2uEPcp*ࡉ '4&Ǎc&=YTF\᧥,SjvqG`+1A5~f(5)쟛<:J&8;AqXo蜱>}G9%[z5(U-)!{*;j+􏛽Ï($|1RŶG2&`uf]!?xST,|GiBȲ%Ịue!p~.Þ`mCgrX,QAk#oJȰOU54aU'G+$(jZ}H5o*=.Z!Qd櫐Zkr*HкM\lB43l D+;EBә9DL9@ T^ <9S\Meh?+cLC#ە"-@R!K"T{eT*$\NY; >1]feA{N 6N)PaqnL:&|l Y.a*TDRKk 2qցft =Oso2P4?}DJ% 30Lh.OηVIfSN`>4vsi&W$Ęį(% t 4§* $ރ@ ӷyȔ}E˲#na|.Qkή #@TA6u rs2_ nwVȴ0'vFO&FQ,a!Ɖ˧A0'`. aFYL0cݼl"@d~nw' X Dԓy!\ P}[pO۶e)3ľő?ˊɈnj+ Eg.9p~"6gkɁWΣ],}CZ^P&s] ]ŻR֎x|{0wlUl/9]2>k:.iWl?RA(]hD$k_s ngkT6IvaQz }}?*OF?q!,܏yBcju@5`~$6lړOrO'H%+憌oGbAApf3VGbHB3Ol-?58I`"mau c ] Ŝ»d5Ӂ|lնs$܆6S-Y e!|>/'=,Ksh[R8H9j48 a6;ckY8N飐RI6UaDŽGdgB@ꤗu'DÎo.1Ν7ŸrHpNV)Gok5z5G5eog2PmTPPT?CxB+}|J8S2H|&=feFChhi}6644P0tOʆp~0 _OJ`CO8ǁeNg iOYm_4 ?3Eͻ4iWMؑ{JoUn#3/ao>PBUa,7A pod뇉*b;H '1 ^RlndVsQ3j$Ts`0 D,"u6SJD[+H?|Vbz{nO%ؾzf;\Ƣ+sG%n5bF&kDPXHFvM6DI=9د$4T.Z5"6}sR ;/(?ZcL 6Qneq!1;ȃ#t^BOuzbq HUIZ^ IL~֊vyJy4$5jUqO8]d}O,2;xV"A6 (zT5[ӭQJC5kJ_~ehko!7ս^13AS Lȋ#%so*#7ߓe1~ԩZB˶N_su\b.W>: EBb? $;AH4 iE<^n_,ַE`>4]@T買B얀7gm6mxZ e^mezެ t7f>/M\ g$^?g|Gm̨4b5% W6YwД{F7(lݪ،vBSZ7> Tu #}ǪN։GqF>@ fy057hU!Rk ~[mkBz+/A|_½n z|o_!5Ia0xaQ..#Wn,fPQ ۦ>2wB[-|@OȇAC,Z&Ws4w;%7H '.J"ӓNBuHp>z J?%#ޙdZFv@jk_kpЩk(f$j7 u?w]S!,-}t ʭlII2ƹSvRDky lS52b <'٨抬KǸ+~+˫>(_>Ԫ-xbHL[~miZoCBg*hTPcK+1Dh[,ſL _cG5K)^P~#u/, >.`x&4iݏvf¹AUvv!kՃk+yg>hO'8~?k (r@Lc{2QR݊nA´͘N2UUO^mŅY;#%ܒf{ najFk"g9p{8B-ٟ>eUF7غ~6eU⑎./ |{=Gr NEe$Kz^_d2b .}9~Xf-K6'!6 ;b<:VN(@V7 ӞpEAPqq{]R;$P7Q% P0}V̴cCM/<[#?yonYJ0sgu.75$=on(p, x5S2v32>Nn$"Jr"wS6o'VK?^H@L EZt3}V4 Ap0.2mJ>Om) Tg{&8~bv*$Zx;01G\;;e:@}\F^I%0 `絛DY\J<9u(2϶ _}05 C#qGDPeH (MuNe$hPY==I,aD+AXOI /gⲉ>xr/ m^\]Ы"1ލ{n>.k:=M d3n4Yb9(--jsՊ!+dwA'YF {,`O)kOR~MspƪH<]8bRkZN|(hjn!}/~rFAJ<(܌aჶ]ΰYd}0.;rK4-WM)*BIΐzA|9VWDB=X}lj\VNQ\/MTXA7b֩ j_ {7-G(#_S /rSmN~#e<yw K/RP(CҰn[% zƩL.2G0|{NArS;iZASy(r ^Qq2IιkjU+\k`!0R3o"ʯO$\ :m_0lȿ·Tռnz&T^|I%STI99̮Gq}"?2u[/tWKO'h*7d ؆eR@+ޠCžI-ɝ b$\{z*Ie:回D&CofEi=I"ܓ=xϭ{Dxx^ƓnO++ˤsN|BѰ}Aö|5D ٕͬf̴/ \uuM3K N?EtͰIB}>E(5i\!/$=?Pn3|UPL;HMc4+$!fK'|kXS EP..NU7`(a- i6!+w6\Ś A~PK  Ai|ip'@ixZE21 ͂2 hr1l5xYYryz 䮝+ .2aY7ȏbNódl,CK$xAV-jw/$HW{.,Qxdnq8׮~lŨ,޽BtK')s+|MQi#\mܝTb }F/+sϿ9Pm9GϹɆhP0׍ӌP[$ {l*xѷ_. xלHPnHPNlR{e \'VsE}}g2% /}z3wRQa $N (g9pTU3.5jZVs қd%#m87K]ȵy*DK\Ceq;z\DŕSsJi0kd-ݜMWuzM.V?7NupY{ %ȝXIV([eѣ%MBJ2_G{D;uʣX:kMygH4Ue|~VD]j:U fʾHˆ2A?`[Jk"s׎b+JmM4]-f9{INYsbGOȎtKđg}ǂ6cvhdf5דӝD  ='Oqv@ ib3H} F姲]HOߨw9dl~ݛ&\)bC /UYiղ`V3HƬ\GD5+.g"/(7 gTx0mlM֣,yKZN :Tܬ\7MaR=HԦ bٌke'Ɩ2ό4z2=s-h!ԁnFk@?*EIc) ~'Pʤ{I1脽Əgin{ᨳ}·5]!h #4 ;y~ u?S5ٵfEQ;\Slڇvp9E>boJ3d$diQ'u5pMH?՝ 1cy?ok̽Ɇ=)%s1;ڋ'H, vg)tWu=NHB98wh~4-ŠE >|0mɆv@|f- 8ݼ C8&Њ7j{K9&JʼO[,`T4f(/]aHyNjHfدocT qIJ"E_0SO0nTI?Œ/'?U[M?vb()e?1۟ [&ԏhe _ CH8mb" ~4WJvÕrƍwBTk`t\Z g*UQKRH_b=Q j/ИlͱO!*:@: *VUCj~+k9OՒ* B+^koW&=V풞5t| , oS24rz9:D۷.:lڶEC[4 2U h?έڙYvt~9nj6D^|"ԯ'L o'`pQW&Ӷw5@EICn%ὪASp TQCZ8&TQd3*?(C[ pB) y8H<`f 7+brx5i%pEW&6 aunz+B% 62 |ORly`f?xssߕs$l)sT5Nc<١`a"d!.4A2Wh˽SbQ,7:8؄$a:6601Z7_B%<Rt`fM6?S>p=}ho|2$[3F8iq|i(r.At=ovB,ЯP,Pۇ$Yĺ.ic$""M?Yk>=[|Nl29k#`"]FpQ(WF#LJmD|{`QjL- .1F`Pb5-}N} (~ a,19y!vxoڷI 6oCD+UZR|Yݱ4 g]< f<4Ox.E(^IɝuRx9%_6ՅRM`A$w(W; a/u@b"ݎE`_J;?Ҋ,XR$Lj1wo_KbGkUN󅢩9Fڵ(c.ŷ]?*2J$Ýhĕcӟ^k{-BegEaK!o(/Q\뫈[3/AnĜD柃 #]nWCH Z=,jGվ_.?2ț9в ڹU0*U#rwՔĢ%rnޭfTA+jUotF-F܊T==MP']_פ(!jsgY@OpzIy^dJ ʶtDNiS0Q\N܊=2Ϋp:6O@R)EP咘$}kX&pUY|'Hqz-:?&Ui|xJ=a*!G~CXU|9oՀNDRl53@ l ՄxQz ůG! mzeި.SkW;۽~̴h.DPUs,!׵;ATVzqqĞ֪%;XݸN5{ X? €WFY(uXfp A[Yԭ( 0+ CDm]< w'i)lQv%T@ cQK|`'7 K璷JN-=z%a.qگ/b ׫D$*w_Qi7$F3mVTl)zh=$BoꙠ'bqY(>P]&}50SO z4 ˞.bI,,yTL9Hěz,ƲWɵ4Wwτ{ }S0_E斢seI_D4oE xs.,f3. :a4{(GD]rIAta `<٪+ƃZ&N 6r?e\o>uzͩAJP 6ΔN).N )*,':vJKʿɋ#$m hwmuǍ!| CBQLf 3ix5ĪDPcխ;u~) Anͫ0Z _:32TF+2dQUKߺ -X֓f@V|d,~U}TNn)C\:4f(TKbOu@bSo(b\/߷|SDGPI7YoTU{TGϧw"L؊cC`p|%ZJjX21*Vw;իWoO*ds9U3%# ҌkyPK un"5: S=C8\ UT)oF%σʋ~.BX.5֕Ve{U VpUg}^JM32ec\ =TΔ2_ErƄ$BgN@Mj< H w/ӏFGP21Z51?cowfgU?0>FFGޯSb6ST"Tdr]_́[7/%d:Ӵ tEщKir2ʝ.[F^0]ljF(DU3^^ҊVgó37/?퇀7fԅ"RK>E{9_p{mFJ b!TeסTQkqg1'=֣DMxOqbE\Av:bR{Yy!.%4'!z/E2NEx{5or.Ip7I[l2 3=,Ό ͻUu~ E$JB>i`WU)1yn.0vQ cv.?B? +ƿ\Hkx~Eiy6v^5Cz'oWpll ݗ1uܬ+k؞x<5"0݋SkGbDX6s+eE'.`w$tڹ*c@sr(,hvUTHUU`+1|kE:KJAnj^\'i_}87B? bJܑzC+WZ^sJmW%@1KYDu钸cUB`+^on"ofZwRc%C}97wC6cM @e8r&!tݲ~cO/ͫqց=:r15zb3:k/w!A 5й(%- )32[P`d=8iT'+*4=R5EPnr _ "jd. ̡CTz=)!7tCADž_k!U6 47 d>sܛ_L^VC]i2O(G/X Q)807_`vjlD/J+7P%\ݮ.3Y'bH/_JpJx[G >40KΛ;]H!͗&G[;z`݃p%TDٺjiPʟj1:? cWU^(h/I[mH Sj=^޸Q35u dqs3=Vݰq]{…dq`(cxƱuyYDu).~1ֲXݨlhDAAg4w(8dY%˝Eo4qd5 MV&Kepo;7둔5)QgN~f^Cj(P!`a[:ۡfC# KEtf@\:S}-dC?j<3ʳ7ܭCχjQ C ".k_U͝R&{f’LVn-茓UTy}0(|yṔn Ǟ|TN%UeϷ%ϯJʚ!~΍ӻi_Ϲʱ*K7,-8~DnNXM˜ xTc.Et_Yc j0I0I͹7X~ke+kv+@ 0]5}t2QRG& Mә`YbDYvhDֲ0љk1Z 6c .TOXM|4qmSCQa=jb]q7GY"Wf-q{֛?P #zucJ 'b~&Dp}g j>%u}uۥZ 4[o~ ZGvF j`ww ڭE}d㛊?‚$A \3l;?o"e#ì$>/aR~XTrT^ .M(a;vI[~R[[? zN`Pg 0$S+9icu+?Uu]HPRoLKtиZzCVcsJ" #/y-\%%0 U0A"2`Wqɷ$qMk' E7E aJ:-$dIPbOkK9\ "Z: |7JތY^!Z>4Voz^$IO 2 Ԅ=cq5ZVjV.  `I&#e`rHVz}fC'pU+!o;ؽ CIĉuk˞leyF6cNbp0Y"weD (>itJpyӣi@wX}jSK0 ]#svx;s'y͗ TM͝ uIGŽa[5@geq|U! )߬Xmm Mg)ziDr~N5~K6R x.;c' aj@Qܾyy20R2Ꝣ 'Gx}^_,W}0}J}汕&{,-yHBIfz2oLm"LƔ@Odg~K(#gof,7t=[؝åTⴍd>Bd=19El:œ;9(4 ݑ7G(wa眰JthRzXn?%وlwk2$F@ '쫩-Sz\Li bhP@gCʋw;F6GzQLRq;&Zːd9Z:ҲI"y5mQkXJLP\HnCWH 'tsDВ8KOಶJt˜L$R=ukd3%"˦_Rp^A{yub(?:F&DE'7lSCdtC0"AM[>FJ~J}U !d UF Lo[UDQL+]rOuw{FoǏ>LBhu;4)oeW`D ܍*R1x8yi X> 7y] #"r 뾊P/eJlvOxcJVQ}Wvf:0/|7ha}4BT),<^sF:ʳ86ߚj|/ }`LLÿՈ.8QR,-wT)=Z3 j`b+.g$fD.pƓfU Wl&WJ^%x`{0ѫPFO&m0`+T4l "~cnؾ{zb Rml޾9xw+h.Z*2 )=1EYz4N'͍I]2ڴ;6NT(]r_f2RԃCD<8<{'M$+,>w4$yg %=9. jNeKݏNyVSugWu"x}|F{~QwZ| d<;S%CKr3Bo^~Sd.S`\3f&?Uowޭ|]dȃ<o70A+ӫ/򵨲O7 cRbEE 0Hob:addB`XܱZN"Lr>5ϟLO%BZ,%b𜠟%JW%(@RʃMR"AhƭԖsL/ ?-shr(樗wm]%Qo<;mGhȘ0MM؏RWqν#QXi0ĕ2 fA9b eV" %Bpe 2 `Q_R6ɖG$ÙQ3sYtG"gPLB `\zl ({Bqb&t-:O|hnE [3+D=,dsGLb z Bv'.bm{ ms&$﯈v!qqj09kfzz d-SV15Nz{?d6r[rjѸG6j0*bk(j(tpl͇Vn]9g,ZD 4cZ}EBuhPxP:6k7F_\=6ZNp?`5{s$3:B}몇 @ @xG;Ov.;?^)YQ*/L azȁ+`qav9 ?7f%\0qyyK~: ) RoBoFcB'e o{:,ȽKPG;3 q(؊+QXAM`qޑX/(1^ۏGPb8-\^C9p ]0qO٥hLTprhF34>ZPpGĹjð)Ⱥ}Z[(Cϳ؇O Y6~1ݖd82".,aU8z, YE@ w0|.y`XW ǷL0@Zj)7o',I{nB|3sÜJgr/wvd1MO X -DWOuylv̤yM''qbH{܉mtgJbP{kV\:f򉥚]kO+Jv ="?vk9?'Tԓʮ`L|Q)7t&{6yjjO>lÆ `1ة #7 A q7"|j;9>{xe2 Zc$qI2 zR+CuA<󻨭a7++\RțXA߈EdK@ˈ>X@1ʕel 4f{S>[Fiı`P +\G{pc+6C)V࣑aA(*BheKD@c>UuB#:J*HgIz4T\xKM;1t>&I"lIn|xtR5 `K.rX&9cL< ;A"cdXStŊQj6T1H.={X `bdc}-VSFqYy;ԞW4SZ)IpY\.#WoV21t'H&Y'﹁Vr/!H ڭx]TM̀!'2WLQ d6͙mUnHrލ8 *gW#R&GJbNF>%'F,g8StP#̤ &sL^Y/Js4?Ki(a7gҌ;高au_#@XvWy,nXu2'!Bԍ[K P1iE`B*K2%cMn81ׂt(tm6==yYJk: ks~{W4k`*1W2}hp#S^(,zXm%ZOA @[`1,\U>ٞK !s7d8+:L!48ˈi  ҍD98%c{P1vB(pؑ} imfCKKP[T\ V}E+ Im7 #iZDnI=/#(*1"*/b!Vb0Th\ ~ʸ -򏁂>-h7;:ēŃ3yָЫ38 XŐ?Zc 4$oy44 o+[63k򐆄!T@jƈ_>Կz3Lx"ډw=gsPL(bnukީpۅhkqnF9T./EQɹMG?J 璒U aha+TYbJkb3ez U:dP/RḼƛi5زŨ ݐDD[MWG")wiCt jɖ`ScSUVBZ[*ai,Xq~Ό$ :;~)ia؏Niƛ#xk,Ar;;KS}`?\ R bм(o X0(K!>xDuڸA| b\Hn}VȄ`7ރ ߰~kNgsŁzڶ[w.*m@JIN >cۚ[uH!O^ۥ=RlV=m1cN%ݪ. ܢ˖"͏/]9YϘ6U={1PͿlwagoh\^lw}1U,|s7U1Ƃ!G&FAt*^eFB3RhlJcoҙݟ Ē}s~y@e"NA%~S20U,ʹ|P:u7fɱ׺҇k 3tLo[:Xj#l8O mdkݏFKr[G(lڪ^u6ezZ.d?"邔9c8Iֱvj"MA+%ByIhۻ̩v*AwLOS^ & #|E cB2`$jS@)_B``CDZ c"luN5ЁzV]]'B3*\/@d)pS)EYO5hzZ IE}WՆkxm,|7i[z"֒ j;RsLKqDw6<{T b 1XN¥'n_I)W]wKmqJ n !PُYp̈tA4_݋;gvRq[ZDxoKԃE(r efXSz;0xX ~xDPևw?c*Yy:?Ôu@>(yuFYp .{5jp&!T=hA`o(,蔑ٛg`ZLQT63f;͌0ALpNNmU|&/'/ OY该 i@ L`ރs tl]'Tqr Mŭ3cb߁Phh,UW2:?^)$UT۹dn5HM0 9w:.oGvȱK}臃կTaiS۶jL TwhvMS'"F0Lw,OxXN4 M!ʇ[;{ dͺם nCGj={ψ7$rlR.$0awBJp@'$9]a s.a;J0\n_\e~プ `16#%ZNn"^'Lc c>Vq4 S^fcčyx'~Xi-J(8k(0E~yfrd /,l}3xXɂHș4%^R!Z}`K׸/Dǁ:[ ܯϬy賸P89*"ۖXpΞILCZٌtXo][UgϺtƔ"[x(Z- $"(.kw+XF{9wDalL+΢3C$(w5{^(GSs}-oH8GcJGPxB[&dkdSL7`uV6\&%AE& ;~"X)oq1ڄ=y 06g lLGpآ6Oj1I??5r28oZvZj NR"<]lM[K3z~`@źː;wsmniC"iq %^Հ{[sx!~\ᚃFlT!?s4VS n'FO_EHkꎃmp_jJzf3I^ӊF<ȗ=vt\& .kgţU%:lU#w3-^#_b[ԿĴlS7IʼTdI KD"nPvʠKbt{Fcv& ݟq'XtE҅~ZpO)H׆{BaFl衦tי`j,_wxs +º|Aڻ'7a;y{)YA~݂4W "{uRԎ620dJ1Op_LaCQ A[iR-ĈGZ_B:;XW 9ϴrN-PKgs yWK9&D2́ݟxRkaψ[q_{QgAV 4ANYfcT31!"bDLeBپbj]TO2vWc ){@cA5 v/:^#)cY>6Y%k@Ǎ qp0tW`1" 0.#94֌.Qd V Db}}8t CCC-Xc7$%<#g^8RlD"b%ԱC⼲/^(AGBU@vUeCkf2t%/VVInϷͲhd=gYu=Y 5˜ ;*w;WrAcdxCY"Q@-*3|;!ń ՇREhpK?^yFd cLX=~[>n3SKV"5:wŁy]0@hglyjs,zmZbk@p):-loIЦ@4C*bkX8\ړNALQ>ûN `MO,zXQZKDxfG8c. )kӒ9u(Muzn||n$JYm-gzi󤏬=imhb}ɭ -)X7wS"S)/ \Z4T176^)LG|Ep ].#*νr3W݂zFIދ'2_(*y}ƾH V,w<;Jla<C μ-|Nы0`}!yzWKxS f<*c:!NzIqA qpROX`d1ba6=zSPk1f٘Q?ƹޙ">S r(qin&^ f'S?CpE/yd6laSf %zK hM s!)\Dc?YMA>!Z|G3©XrYD1O)c7j'V\rC}ȆX&}X|(cTFhC-I) `FDd[JYj^]zmIݒ9O7Vkp{qV_$+@ b^Y46+`\ɜ۴j>a,gd(-syZ ጲJc̯Rjd@ǜpmG6a64{єI0P8)Dn4Uq:LkM]+v~]#ߐq2=r A$ ujOpww/pw75ygHұ`K-H _VϊƕAE+FDF>\$#j/Myun32*4VC5SЅ(?"%O+5aWݸ}wr6PtR>"窺1.hŜ3XOai4AӾ' X#+1*n?UJLTJ=]6^I3RG&9u+|8*tm?$u ǘPpuN[&Tܾl,h(K NĴV,ouͼrE+ ??/kհc!\:9(TtV3 }ȣa \Y3F b&ˮ|hxeқ#襹6^I> HRLj~2/ (;O~FdFClGJ{B0/S1V{MF:U(塞9 Ks=u^w3;R-tj{BS)_8jJ&`FbZH7ٕ-mΦ2+|2F0ߒZ Y%wԗ\!Ɔ\[${gC=#<9gQ9> @cxr l,n`w7wjPƌ!lz8V;K$}HZ2X2HWq\WAc3@ AM7aE ՝;Htz{wN9aC>/CċBI kW\K;{Wj5AB^bwq}`\^B~ ޸'²0?F!(@kļAAzT0`kF{Xtå4+@x#71ZSۂ W=T=PH7 [@g66eu8!rW{S-'Dq ù|iDe-i|* ow[W* q"G {ݫ~3\PCF;=VšFhe93 coSlG/vʕqwhi' m"]'"+F2M:ṵL'Zx$&D8轅! 0R 34Zkl(x /mw pcKe1qTXtF UPGl f3 R)gBcEwLC-ُ.1g{ YMd|5w7-N~i^(tpZ`2%wJq?sRHp5x]$4w| fNS:bv_xz uy{XƁ.hWlOlCO@9V6aQ쵱p޹sy%N=+SVwVbbюx6[ɰ{Nka{HlR@#htj&qhqߙbG+PkyHu^K| 9Ia$ql{Ã]aHi>0"Gt>9O61TئWh>hc ΃:4K)-͚ tB,vzZ` J|| p4 "PؕG(q5[;e;ǥ'M(J~߈]aH5z|!SmߍlU0υqvR)L{XLd_f&OD\tJ9t3m7=tSˤPu~X׬$\QU|7"=#hxWIb"_1ի>ڡ ϥz2lݾf-=% lPH3PX%2-Tax0CĻqqS@ ]GSRʙE)d@ t;a)/>=bt_xjdF`,f}}TWтQrJF)A/ ct=<$Gu,h@: {bѰ=Ih:ԯmm'dž&c>Gci~}ź6'V813& JZxrq}ѩůǭRgIaU瞗* G@˓ȥ rE:ҳq)<>1ܑŶXr YJYčȴ%0Q`<0?h+) 3Wy|:&! &X̼ ;>i){eK5ѡ{~ ס,j[ [y !z}&%a\ЂBЎyoi &I[5v"yTr9yIjWM%vi['hF߀'oJi+w7he[sQҔى՝PBb`<%bxA{dRbe!c=SZ١+ ȯμ]T&^7oA[$y s,ebjyX.3;Ԭ)ظU+qcO,G F;/*,~CiC!5`)B7ޜ]Iidbٞ˩wi^qe4}wf~ZDm H[@vRi}%j{ZVÞI5UBX>G&~}d7$8h1vkS)"Q\Ƅg<>Qc2*zwI@ q@] JbrAU>`-]G<(l37eEuM%*²ԟy-o G´%,  juA-BNa˦{r]xKD4_K-tM\8 ᣖׇ$r IH{}he/ƙ (繴M`MLUC,u ir<D@Md-*VL a_mg+Q'LR9}=FZom`@xlKvEjLt^??Zhoو dʲnglKI&K@l?n V@tQ#e?{cS\kmg9|T W>Ka#Ác\<&[ޚ5%[Y\Dሠ󁔍B4dmaa**s3ԏI;pyk%ںN S'զq߳chFd,JXu@1jtݬ߼kҵt?me5Cg=ϵϼ_C'FxIPXHU ?Ҫ٧Aa{Y?Vz孒w֥$;xaGg OE7*7C>i+ OyCRcIP- n*4<5י( iv f, Rd FW. '{e 㧷Rd%j_sXI3/u9& *X{%sC8V?\ /m6xs›aNy ϛ >(:! *hš=^u4α e}JhUOQMxE']эpm ZLMaQQ,+G5;(e,)b]7!aʹjng'7| 8GDy03UBOoc2ZTyx˪HVl ;yƒ`^YDfV$sa&{ΗhY9-V\8n T| 9SZm&lFn[,@+s??M;z#l9e0BG|XkNf ./{4gBA>JX~Scel8 eҍm!](}݅K=?!o:]pM q✃{'~;&0bfr}R[mʔ0b+=kK.thK۹mH>.)P@pgXG7inл.1貔E,"ք o`Ң<)"xߔɦ$=?!NECMowb`C$×Dq?dPv)n>VV[CEOEj~wcQ̏LTi @)9Rv;v4^^W7t5v_U'sLfR#|ƭԚ}L'N2O2˸lW7ɍ,Y'ETIa}.6'C}.MC˝'s'naH!'pS(0ƪmW <c51%:WaCM>g+ t2y`_KK^})FUf,@u]S&,DG֭y:25pXJP.ۃ4/(_s #!%.fHe .^b3< !s?XC$|ϰf鱳?OUad4[Sqd3<>,3#z񢷆nc\6T4>/t?NwU@螺ƴ[Qlc!8 C>UO =25t*'~L&ML8b?iZ3']c##hհ|N^ z_oICtiQ2֒HGLõjSĉG:qKcЮwߟx.&ns.pI~?H^{^' ]='~Gg3տT_)03{18ۗPfbAC ph@#sD&5 oQDI@dߙ;i\UAx#Ge:^Kh0=VD+^\iwe*H#?F".^eљ*RfA{/ح"ʇ4~M+z 04 u.F8\<~7lk6 uTnh݆<k+v/lܷf-}7##;4wrI zt~5PZMՎ e|$f.ѹlQfz$ $՗Ep@lkZ_)]V"bk46U N:2oK%+x X49:|Kg.і#`ӌaFjJd}>޸ ]`kp h{['xP (*0 p8)E5 /|QƔ>)]3["==uR`:ea~9@.}CX[vZPSNQ 1IS1u3Л%ݐ@îgNi=?I6۾ra.H\G@jE W˝s]qsopg!'G'Q>g8A;]e~*6WkþDNTg5xS仱>]7GEA4H pl78-qTi¦g—k+ܴ RQʜgeg<ᒪԭ'pfSK 50O\7^{ ǂ{>Sp8#) `KW:KQD֧<{HB`)i!r ?X"^˙R7|4iR*)UR,2C7I: zC%_z 4!7o<&‘tcc_Tȟiwk{kiRZToD`\ "on;[eh|SeNoq P ei~RtJ㬻is Xzџ\EsR*iG&QՃAMt+ A 5?~4:|I0HI881H%%섅9-͍e9cn3/e4&{9^I$Q4\2#[J*xZK:iHȉ(p@hCӒrxI|@?mXj>2S '}7~۱sX߸ (1sC-ͤHx$`2Cȯ*25 Uߓrs;~/ `.|ۥOżk&eBK(P/u}v_8sOd"%6uZo`;: 6*!׉w*Ɵ?VubwGf Ewj :hQe1hF޻i+Vr !iâg?_y !'9hc9' ekguF8,Qw]T*<;AZ׈m27oBAU;࿥!Heya09ыKL׬'sx̖:;q"ȻFU1JxԦ`Ж HgZG\פcEb\ ekr&q e;/G7k-"mOnLvB:2qp1$w[/~}΢qTu,k# `26=j&I9΅z<~lJ8:t#@ˮߍ /C uե])R>ernkNCDxa'sbLj/N6rP엌nҥLNzqF~(Z౦/QCHA'nzمYINWMjÛKukK&{#0oᥕ,qp8I~K|nX2CPaRr+$<9 ֊7OJ\0{)?t QE5j$sҍ '/$,/]D?,Or=Vڙ{3 _ 1YAWۊxILC{y+3Z6 P#ߴNCW^Jo6e̼p#LB%xdoc?2+_զFUWm_853,oR1?eɕ#̥!+]ܗ3iOp[Vuml߱2㏾0`uvM\'?$2-XlmO0;' Y=!5tmv/{Tzp:cv8t*G}Da]x}?0M"EYg`߸ (~0ǡ/um',!ol#ܨL1T$#kL?*)=Y[&o62W&ܙdA.2+z΄.Nٴ N]GG2sBNO뻢o3ź[3?֭ 2ëJ(.0Z 5+RS1]ŰL32v89vH_ܐ\`K{4jJNT6)T`9Mك,9x+uČ܎ i1;&}A-};B:ɥHꪁ|1q)^FhcImbG}f%ƦFA^3WX+NZ#2[uitFR8aJFb^:,v.sy"C p~P@Yˆ=O]  8ZM${"b=n S2x,Mzm\KF(n۔T:%љmGB] &^ze*XvZ0 1s̸ħʶv/AK}N}v֋2ToKÕCF 26%w{K~ Nm˭荨TufPS7 фolC 5r$5O.8B/73NnZgOݷeR3x! 5ɼHfr \m nP@#<҂.X缝xG_C~wy ѝmM߇-[C w+)~%X/M=.Ce 'NXI(l??HQOjjK?8.eZ/m:?bsMr%CNW|WljΤJҎӯ֧%wB~m̿YX(a[-NmQV2R] Q{֨<,R-e} p @{,nI1WVQ̤e?Smxh \J Or@_ԲrD7˂&bA蓨X1TS|iͬ5U78! /bvD"RIJJF@fEltLw#ΎkW[LNk[|!Ax^\j^ ;^T l4֒N쏩*>?%oM֋)q)t3Qc9jxrٜ}tq9EťR[ki ,pI_ Q 3,Z#Qȟ9I<)K ƠAbLb,S!ԵEOhJ9:$DdbB\pi{SEAn;a|D2ס8(7WQ8..H&B| J+OEۣ(l]Fh {!?I*{r ݺ8VO*yi{`y;ZAŋ:{FYq˞)OEۄtdm? vaWڈRO8yLC!^8p6&-A Tz M@$YH]nuq&)KZFj*9 ec!rbMPwQ<5Ɂ`xGyk?VƮur3+~%Q >ƢS* |+ ەQ3b)ʈѷJHd\qôY>`pQ! m~ݽ_ku?aA!%7XKjizXYd`]ATJ6e5@䍡/^]=@XѾy;sKwj[==t>[j*tripMٵEi? |du҉YpO3Mt ٤I8 Tʵ&O@VƄ%nUDvC_.mo]ɴVŖGW5G/#J;]p;;__P30!9yWu|do  Z%>$"b0OljLR}\@LJ^ M Z 17w{}T  uUQR\ ݏM.,6TFT;mӧI=ސL# b\d1ѿxgB-Qqʞhx(>G,UqyC t=޳ 7= NsN/p?pB$8L\Xneqmq0#חB_Ox,kᮅjbӊv2dFzڃ3 bٶD*)ژz+C亙Bhct,Rt({zPlM:ReFdPsqBOĚzo bYUگӒz,U@@<T=6GT՚%"r-۲Eq8!Y׾C#Qd8]Zq8 DD0b129N{vw =@hnoƛJn4@ Ѳkn@$ ȑ }yЙg?osL^_%:̓X"謏+<ځqsJEʥz'7_Ct)Tw* e- ,^8.vdp8`HoKSy"|o,KtL,/DI_,FAT$΅ɗ ##Y.ۮ5VFLJsN8yv@wҶiьѫj*s>dF z#OibV3]i9y(2ZvX@G=XeAt뢰qk'W7/Kb#Ҥb |ahGC4} }H5 E74p:ϫ6V_YJFW"^>3B:x3{9/!kkiICVXvLQ d PJ4K qj|楄u9=x~ecG7 ^ґV.=3g㋺~n\v?dia03,%n>nĹj>oMn¡$GӂBΎ>faL]aʛZ [a/}n)M겧biEϿd7/yT\<}T+U{ry6^pH qGŒ+b A2 e~o+NO!FCSl_YD0bL5rܝCjv&W>N:lf"n,'ET%1W.< g0`ȼt?Pc&/J)?z)7uQ>SG6&BrOQ&"C[a ٺX_Yn}pY{$Bm@~8f 3( ,6RA'~Crt1݌ BMFZ R>MTޒ'\ CpMz[-bT{CY9\0>ݒkA AR50Y00st'AcO4؍{ ]VSenw?%=d  ^g6;pxjLO ldN 4$vQa)ܱDfJAݳ͑1j.;jrDhPG#ޥIֳ^6ǂd#(dZ^@/BT#߅\>"#~,ނmt~`jT&m>h>l,b縙oͽ2.J!Jv<4aފgn~<`W6"b`HAr9鼣]QhJ)B2`VoB>$Ն#,Uǝ8p_]5[1R>euTfd}T+\8d #I\  J|cIsmIضj& #U&C,Kѣ%1wd¸=Hy+i4\dKQyݜ<5B8}'gظYT^iS/ץ TdhN[ @Cg$`\љvqĒܯqhe!6nҩ&70W"^!1ץI -P$&xXTP9=59f-9?Lܒ-tn''y b CUN xٕ}t)0ډL5L'̴tg}z(uML/f38XFM9 |]>D1Q -6ZWdqtMNk 9l+X3 Ac}]y,-֥/ob*$)[@T>K#Ety"0W  ["[X?Vp51/1n7o*+;x)[,i)@g푚nHtVGݎkT)1>J<=V g}蓬k)&%R ,xԞQ #1@94(4(uJfيC DSiߥs2OeJlz<iEj@Ǧ?Gʀl\P01T(nuJpصp$oϾCԗ6 '} 0̈!vs*R'GNckJd!ъ<4[1]j$mz_X-"oȏҨ&[[F QR@HgbZn v(1ޯ_wz2VRFI;a7XB"Ki JZ}u0Squ㕜<YBC ehuYZ(O3>[+NR+xrf(ǐ\-gKT؆`d; LmحH! ^`+x2+h6*ވx)t0wJh{O,/uc]* ͥ,7`DS=D}G(#MYkM> [_R/q&bTaI;jN舏f[Z1kWALz|U~d0ydhUu-|oTkgmAZxFElyGU|Y徸`匁[t4W@Z)|o$ ?!#wtDa4JչN"&:-Eҗ"ӡ`޺+M|k6% 2kBʶBPޢd"{@V%g%荸6x5& :͊6݊ި JdkVc w=W+3c)m7Sm* ,^u*2?5h?Dbeq]W PU8q{"CA?E>|=(^mr ߰%H*"[zNr *rsέ, L5-N6u/$8$ Ц@Ķ/+NO( 6)ј<8sHHW 6#?5dsNҜ^\eO4T6pyLl5K:I8Q鉜e&ù{Rj{?>R]کwF tW5bҷUkv'%L[JnbEZ/vDy <+S˭%Uz쪀["_&X5-0km&ԟ8JI_pQq86$i El&Io7}2qs lY!gK~ؔ2N'M=`5z5=r*]B$Gб^X<2rc3LlLg 1} 0meܱk:aɢ0%jB.q%'c6~Qf+Ya9:5EuYn7a&YXVK1Sm E#lLh8='߁׭ڛi.wls좱_;-3^KыҦ8 ;ޅ G`!q;;e3u"QqPh'-ӯDAM[X~4mj< P/O,zoFyc"8}OZ VnC}l^(6ѩbV-5Qo i0">dQ>"SW2?3O 2LɼiC?4,zK *N3u仟,n UpXjsHRN YhҞRb誧cπћܐjň "Mp+ OS7S n/u|e~FrLETBxñl%[c?hYdiAU4"&bXKnL?Ҏ.֒at8X82r0SfLg0qp#zT}ְR/SC*|gߎSfE-+׊,o)&gچ`,U 'Єz/;p݀GLwoW|2ڼ=|:6c:U+1">xpsJ{恵m)#T Um *ۦX.3q{nIC}V:pcd l>c^!=+i ?% jW&BXM\wEKh8Xb: Ȓ4 :,Ήњ:l *ypKG %@`pSd^^YohMV QUy $o(&_` G⃸BB"q}MP_@pI7v^041!:JTOmէӉ`L$,hjQ o1qq}(mQ`ɾbySHeT[2pN5dA#,8!+'+Z!7}^\m逤b8̒ꬁӚ-])ΕB+{zN`xP0}T6c}(UTbh't3ꛭ h0rrKTI|pR[@|Q2a d.^iUt1i >c߼> >ʿ" ֥h ٧L% `h;=#&\d#URA6/U3^q0Ni\IKك)"'#5lr4`Zr 3GC?XDTz Snxɧh&wmJӕ ֜P['ٔ׻c Lj5qQ݀Hv>,%}#iF_90}ąbN2o/Ѵp͞abCZeG 'eh Aud~͔ۉN`qvX:#30%ޤݾ-D6`|\:p" ~?rjE`<텾{O81<&M8;,*/,4_7gk jcC60p\ZaX,lBW&P" 1WG7@aD#.Ccu0\ocH<e#A#}U]m64{odѢ&ЄbJ[E(LXA*A41qj29l&qb.>HpYʹppe$ qp wdٺ ߧB0E R=Ü}q9<s>;|2^nt9. 7oyZ5,VJwi,bx!]zhSӐ )xIU ޴ۜ[ѧ\R#K^0$\yD ,_@%WuRE{8{xa9  Tص!y~V1rGd ~A+DI`ӷ__&0i"RTw踝 Dwj" _56/g"/*k"`_'$b 4A2|#h"76is<c'r醴dNxݜlUrbihu .@lY:$<>eU.n " ṿ6s.H8հ[(Fo>~ӷ^z.`aCmWx6g F0Ԏ ryA"4M%S@+[ʱ8܌JXL$kHnK.]gN *QDS "WIj?C *ЃW.9󸕬͖;0Zl:]Vλ* u +>K Wn?VRfXW>K`,Z;&aH e)i`A$DBB;ة'׮%jEjm=Ր 7ĕ)n肧͈@#`?;4"R_IEL$I';#*V征6Ed2݅э'Gf34APbҴgl8w-@ןv+aCj 2I:Vzn o=+O), ;Ls_|~2_'@& Zq!}IO]0xLHҡdWX1t X澧vTÙSaGMc {bu1D&ۏrf7!kB6 #Y sNynfչ7L_H' ~c|ԓs\f%ȻPTiπ%V} [e_$|y@)Q +2Zf֣Z&b?GRV10b-`w~@s4ATQ~*a5yÙ"FG*P5i\F[^LZZ.1&82uL},i AS"iyL_K+w\_'%Xd;/6#1du41B#oޒdeY t]t5v6CNAE&*nK@ dA]ɿ,dԥ;|fZJYb?ͯB:lKjݣEQD]SZ^&C[)Ghl@>BbI xAc~Ɗ }R< Wg[8Ъkᐎ?RV'E˗M#nkvBZzmv13~rF>;Gwk^xp-΢q.pAIH`["Tnjġݕ4^gqo[9g!+kk(Ҝ{]p01֊7qJKq "^nU`I8Q)p6{N+  heï{# ;Ͼ¹]1~99zrZ&ү}{6)ߧ;\8# ⚮WYQBlY:^d'u|P8MPH~&MǹoDK0m5}De-Q~fzGR}irg/r"?qMI p5!]zt)nڇt 8 m !P1 6Z-ilnjn .J|et!5 ,AI{SӤ\ijcrE|wKNo/cKv|p0;} { E*"\H..ތ:y:xji?R] !Rn"<YE:^"{ѓub)jL ۦDްZ74YL[8kYܻQ"1qSZUX swl(ՠ|&S[C=CwY[;xyZ3V}͌;j7C3 ȇ`n7] GU59_iLcTZܛ֟lStW Q``o~PѪr'y|U*d*HZo"ܐyxYjW -PK6쪦t<lūL~!b͉-bZշdr}8۶QQMT b>f֐zt: [0LW{R8=x)M' iNaDx8& Ü#y@-TG:U%B{5L\˽0vmrlgM;?m@w̻Fqc=˙νV8{? y'ʄ3XYCڝ=w1:#QM1e5al֟4Ay[\Wdy [XGшd0v4!p^~{COگlʥjYLJ3~MM]Q͍ O``K4>Ay:cj+<DŽ,#ۃi؁,c3dS7\BdQT~du\Nm0GhǷmәbD3IT3μy7hjc'tepk{`!6%-1{{;T6!);pJrW6y.lO j0vPoUSC}CPIJԥ=(;Xx!pƵd}zC@(`p旍׬IiI>WW-,{q (÷+jhSPA۵]G׮.6 ˢ+B,!P^RKg>G`C 9_cbzpnKK#u'qz.֫C-C7>Yhxg"/EOG.''jF>4a\h]Y?oU5b2}p^^ Y.uˑaWѤɂS‹ํNۃ搗(2^չ=uq 3W97 )6#]dR"r2 +$!,#sT~$5g6IW{-ƞ'#(!չP[T@ v~({8>\tEЂSLI|w>yyqlUsV J!\^wh>%ahPJ C [C?QRɺ@.9X;P18oFq%CFM'n(`n )D`_J!eBPpKK p SV ~{`OsrҷH^M LdF\@HBQQIM[:o5Wr8ƻ%_ɳSNDh$?ѠZʖAb7?η~7_=gl{+_ºWUKE~T1ɄKd1סԖ8]@d&Q5R :0P1r5Aq!FˁGhp83y_`5NPm,"@%jM \0 yzAch JtcͪtlZ\6Cyy`Պ*m@i!u!^߉?/ ǹ@ߤ@f9మDO2`cgkzE2Ӟ/+9UpOV$c[P*!,0|o<?f|d 93 NN53Ð3 % iXǎb*Bu1KMg*EG7}*{܄CpK"d4N֥^A,`=\0Cmfbn&:-U떾 SYuj dޜ~A uXn(ZQ$G|[٪+.IA_d9Y(vZ:37*bX{Fkڄ.YCSݰT`ĬPӫ5}э `u&tG0A~C֩nPXn{{ÒKƶW|LW-=# If褳'1x}-4}׌ɓ0v/Хf$5DAWwG2${m^ i< ?pbԽ'+Qg:/%C#@EYn3膇%SC%O y/M5O/ a̶/:!uj|VS:i ŷ4 4r}6~p0- ZûD=%d;YcEњʛqӻ[FI>!& /XȞљXt V@qSb@b1>(|Z^ߡ-yo\k%sYcXLjuS:{_!FI`OX~ kYVy*b5eԐ6Ts8W8s-bV-Mݳ֘ +Ё_M8,2x\ܰnwߧϕ{?UZD41eW9ܚZ>(rcSm1_6w=2J: pVx2|(4P ;, ѾjT{ZbwW@Er~ %^4.fy\. i)_c#KNCՏA=Ga\M((oL.\[ C#&aq#mx!{jPhFMkCX| v.cr#>O~MFL3̷KA3y7pGĊg`"h7$cA_uF}2Ng rHx}yw~Иe9:9I 0ZRTe`m{S J#:_fņfz蝻OSK1vO B)(w^BȥYщİu3CPd5x9~"D+b腴x$< H6Y@6X~04Lȝ\Ȟ=T$XwEw`6SqFDS-HYyYhEtt|ޠJ1vwlJd$lkJmŽ:K?5f[y)lFj*H7]mIQ9c=Зal]Z)2C Z!Hrm7S{r`LREM|1K ʖsՊ m@KͪI\+;|mB4uG°&@OLpAν#oCUicwcdx:廋yrDZFW?/[.VoJC?.GO)bz21Gz72@#NHzLip6!%F` BG>Z&eEs|=fZcCy[$çۑK\aRцk]ř7~H|4vICA)шg~e&`I*ڂꍖ5i8BfQnEUFȌz\rtqn1ZCJ8 npaYx8يg5cZ|2PYn&yyV5@[Ƿ'H/H^SxHcFLroY`hhVIV `OF=wko^ 7ul@[;;_D?-Ӷ IOy1ckkl#Z7ffx6C$ _qVB}<ʴڍaV?w m[ؽ*K_\ ?UW>I ɷP |5Pg,aڕ|tD 2dJ*jb#D7HtIO&m*U)ٷ?;zz9+S$̻:楜ɭR>}DQ&^Pƻ5@8^r`wm0ߺqJ?0&&dލ($Idp (PbJ97n_Lz+٩i[W4paC-)=6)1s3آZ>toބ2^+C9FbzLly<)IэaC1KPyLfdOZU|: Nm*%IgvyysAX30҃[L'=F)o<9u,$bŚ$#UM+%j >ﯣ/ɟ4؏OCLrn<(aOTNol Nv)d2!)eoЀ=',HhûP;sr||hyGkl&:H5:q]l^ 0G@"q2@]8)L|h:}dD=٥]]C 7AXS3A0FM[j1nЊZ2!8ظW.[,ptL`IX[XRxRdQV?N?eK Ӗ{҄Hy\c'/MbK2 $T|Xak~Dy߲K{֯ 2ٱL|Ne4tKbaO=vE)v+bV-&;ژQ;!xX:c@94e|86eOP0Vءj=4f̶kBvGN@ǹ<"N@[;K-lj$͙GЌ=B }﬉i RV,S(X~˓-enά3MRWD@ FgCQݍ%Wy)gN7aZ)!m<_!MlN[| \(;fQ9JY^>zMB\AnaMAy)u-`΀7IuÃںgxbJՌc@@d\K#4ZdʠF!wH#V2s_īzؤ]#pS]`eĒn,Jtר3qp091`e3P>޼(Qnqui~x@ o{Q?ڶob*80!P47ҟ lAS躅~ʊ' 38⹻'vz)9HPy &Ldw.lZuHIQZP繃|xڵ|Å_`tnrR@RP^.g|´]1.lH&K[>%D .d0WzIK뒖*0R.^fMm¤Ht_7V%Vg8L,8]6('8dz=cxwO̥2[B(y jS;Ws`'l34⡯29MFi;gg|pFYԂDRIدf-^VdةƉ FO)JHKy ʼ;e LZg1Ϸ`:[[3١hBI .rU}Ќo g(W~mEڛ 󣂽44?E,]J*h>=SB5Gcc:&P &.@Ǒ9+bb:^toQ/Rֽ;-t-?9q_FV$?$(SŒy~InyA rt R-]!!m#dMEJE&r>m{ZĒHu A ޅQ+Z@awp PɄdr'4|䉖?v;6ߺehJ]⽠ӫ2Fh:M@~v{07e۪O`<ߧSW`պ.EPVROTzh*  s#}@=jdh0dLЁW+s5XzLnU`Va2>yujG9?ipeQMt<+>R/L?Znc{-nVjd01k`O$aQ/_V k'ӌ@^zS^9o[#Cx!~m0NaNoвN -945Ums_u치)I)f Srk-/eyR[/ʀ-~Trl$?00<b+ bMNci1)\1Cz@B7j;HeR; a3#.޵Gt'}s?HRL庼d-GS\e1qLQGM9|E-WnY=i7ucDJmqL;kf_Ij+C@8i]2uF9,JI98@@NS^Vl`  !96J\11sq[k]-j֖teRv3(/I$3_{gxj*prHJؽw3 C»wy kԫhg^/eeN|lU8:"s%Q%djw1B,eJO ܼ,NlG\&ZD]Tţ~rt檢@ܽbR|{SlV%sM;XВhrT&|u0gpⵠx*kE8gW]N ̀$A $n9: WEJk*mL<+mԀBFN| w>S`o38O6SOcX)_H">dH&HG`&^Rc䘷2_x J)~u\'r jشaNj](H9<'c?SA@[ *Bo1kMJ,ˮBP(fvx_sM7%O d8ѝM1&I!2]Q@=dfZ< BXdf$$STK_ ]'ukV@Kr7Fܫ15lԨ#,+wƒ +#CKkb3"mjO-ts0/FL;b(y|kFGZ/BsvZHRl2wr(A]'.ʡGY)^$t?ʱ\Pv `q@Sx}pSJ'0NYREr@{6 ,% ՝qiY^fXuKڑX-~ &]F0અAI߽iF.nx@Ti"G1B*IK~3E,tΠ^#($rNW@*_tG{q['0Ή3`w{9Lvɓle.M轝v '5'J#lhhAr]y'< ;ʴ|jn51pE[gs,9YEhq(ion_~NfduEʴx35c2i7ﭫW$٣>v+1cv<5 F浴"Wsf% 5e]Qg(ݐ(xjhlNd禌I@una&"p!0ku#],)_^UnjI6KcBЃELGE:Yyl26>' 2\߁Hh?_7pMr%U٧_,mur7 ySjo1O݌>@ӇsXAUq 2ze*[̬Ɖnxwp-?_Dz^ [\_@p[/o\6T k!5@Z9vkUl!73h@YXPg?uuAx4M({*N7˹Ⱦ5S%Ae&76q4aɫmEӎ+%06I!3_媁GBtI]Pi}]}%)-^/ Xylo3ŏlH+o-V^=7{Zk^*B/aLbZN}g 5Ħӕc6<|xz}Aަe|AW?UgYg+sX:6̓5{لsi??w{O@0?r2H<o0 5U^!wߔvx!lgXvObmjGhOOC *.QKQ79 gVك<L/6R|!7(i씴E6֤e fb@P)\y?f߸|pMJ>!y|]NM]TD-Thb25taA*Zx|627kB .hOZ7MWG`Owʱ^8ګt@ˏcA) 10 Mr2<@+N ;^%>L I qZWWr OpjӚ]u DG5i/]e/1h\$JBm "$jPD`Bm3wpy},h!H~@UGҩPߍc vհ{{T<[u IbY=KS0nܒQz^#r :pPԹJ|tʁc/5FPSw?+r_R1|rp/u S֟:֍_ŧK (oΑ>y]XRgUկHW 1<1@RHLCcH>cU&D <i\vݙ̀Felt#cp]o*80KM F'%+ؽLIWu} ۾\z3ElIϥ#4lnēC0sPg͛%Pⷠ1o"kju/ŝ7]L.,Xx7Ojb|yG8@t#+F+tAqo"g4x>3:⨌JT@絣,c߈-sP^bNB"L;7*dNXˠD;<ѣ4wQ5yOq9p7ֻ· sspZVnis~T%9%Ѱ[i_.0;sPwe -ܘcZ1klXm]^7[y}2-:5#E\t h Eޠj7d¸ yFMhNmET" b^<ړUy^qbH!5tpz[=g^:,J?+^/!T9:ɸ|2эhTv^%}JL+X /\wW%^Oۈt6V\T\U/}1@,&b.O%.?1-Cz|l7\8Ac6JDuf˦n ĭ(PW'މ%=b#zfxD&IжL0l(9nC3Vv(D<-;nw\= jS(w((bORR=HyrCtFխڂ});f峡v,0 D -Q+ڟ!:`M yڠ .qX$Ae  uÁ"ݷ! kZZ(w5OCz{m|"ZѕHF>`EYL_]OoA1%(H~ɜFp P5q16$&G8M6eAXa_ ~O-v6E|;)g+3׾;ΠINe8fiz LS]wlT:ۏFS#ob-}9"Wk}DtIA8C aF5%y W0!<ȁ;2L/o- ,^+hVH(f5b= P1Qbchgr{ )Ys+9h3kzٯU xͫ'Bj9lݭa7K;^ĢOj²,Sc1*ňM`,@QZ'>nUN@]aLM!('g-haZZQYURJIf*`ȓX݀l>A64vR$aU4FZyV;e*ݿZˌ]ozϾifͣ+@2S!E;O ۤ8#AS+f4T QZ@O+2H>claT{c )Jߥ]HUH/{/p,OKµʟ!uTSg<'V1ů7s@fl /uy#e8a,fud+xv<٣MD.f `7 +ߠ<#cڣj eUXzאN%q`c=@m@V~9 -i[8L*J *{(DcC={~(*JR_q IWbQLD-ZcH}q#ڈݻ,%a Iޓe~c 'LU| 9rǪs 7_j l L#o.U8HyLq6UdR;JDF"S&I1A䗜IMU6 ;Z zQ8Is `@Ǖv{9 i|1wP.)}3~Xt{q=LIB7g ؜je0-ԝ'^xˌ` S5M$lqCJ*-LFP _URc@JHy.׎7Dfq,i V<љzVoēsiUμz]aa4އ. õuuΙͳH ]u?T8$$%6q1)ݹlZ!,%,),8UMOO >{0d} l_:P]ƣWf&hZߴ2m!8 2U z9vCG 7ȷR-r !nV`eOTfpZɯwomt?.݀!>"׶ounc륈U5טrI,TY2$BLKCv ٤]^S|DɜA^P%5OK+$Y賤#CW[)Y~櫕 Gb!X:Q DXW$O֥`3r.l&i5 .kNH%@@u5_43u$uW6 &N&[͸ f&/-J֙t ) ԱU'X.54qءD$Inl1PJǦ\RL@x*"1%|A >Ůs?n#s4LAJQke~-+"6/nЅT5u;Ww5S^PR?M'#g4r/6T4Sڂ&WG | kvlU-.˯L`s4l`?]0+)6i\jW ֆ[M}"v8ܟ{_g/`}GGjʐlR״5p>Z_=On~"·*4O/)^MҬv4KZ\aPJ6 m(UXn$AͥxQ=|:WL3{!I̧}'Vؽ|A&tW䶤mJ }Q'^Cr;S'|m*Y`Z-IϵCo[pUBd705ͧlٛG„?1%^9 m="rJ/!:a1SDv֠#E{7M_L6pX6\/Omk<5i-AP?L%] <vA[ⷅ8 ;FeO6KBISvF{|t>'`e6Ј*H4Yz@] ]eaNq#L *.^vgHMvTWx'm5\+(V&D#  ck`q ෌t9 ƪ֤%/ٺ߃"g'nw>T6b3RZLD*(yn -3AC=gP{fԊ  i< Xd.EA=(#(Lev6~t!1F,O0yWͬukZQAVo"F4)vW2XfifWǬk^{2%r8V m}"Q]tKz57.ӛ2,6:?KbR[ K9o(͂e~j)Lދk .7󓅫'R4DUnK1sR RWt|-,x!#$?\T5h5\sjMlhT 0GL=4lN`I]vT|]Amip;u.m-}扬i0iVQZ3y˭ϑ|Cvriy(qz8E``L$C%FNwF3EkzՑB$Ҽ3&EOB XŜ?rN6Ebn3U>ic L7|0R "34Ȓ^[\KX;&ƅ=/@tӢ Fb@g@u攆azBis;zl 3P9E:Z@5 tN@1ao$q2:(2N?+:,`}O|0Z/`}]k4y` /ÊIr6Y!c0 KJdL W}!07 Zf%bt?‹TϨ_/t(]#VeRn4I 菡%-s {JO NmU@^afQtBvY9Zspoj4#Y!hfKAZޠZ-şQ!&e0.BrcjqB2l<9(HU?W+7||1 _HymUftVtukfHVO'!Y ʊ.Jxfh1۠^?~^&||d&?OIqCEvScM(~&Fsiw;6zC֔ *Gg&[3J=VU e1ssfd8TR|GqQklK_ZeЕDtuZt?6`T0u-ˡ{5`9H2FhWۡUGx?]XAM`gqL$[ ͊,v{g#H`+TxB5<3 6&`Q.ٸn#%rse¿,3:@S)Vce[C6A]"PTLxt'-LKZ fksSd3~Nt=WZ9{$l apAuc 3}g'041OJw(x[$[JAr+B*_RŹLq)!׳NVwM+ujHZNpޅ5I"9@>w(sL J0V{f\.B=Iy~aE\ܟ)0[cr+O͆ku*t.e. 0둾&f"RS 6.ֱ*cTKl DGF zvҺ{B9٦u |rM=\CvD}ju#cFo(2;;,YrQTش 7>8+xt7G{aQh i#uZ|*!kLD@m񚐧y O֘a5jq\Qe` s> ?r}\ TT'eڸd AFvVMu+Q.Xjp 7O߂pDVLk;>f-=l _][Ї,] 7ه.?Ynqثy L4M@M,K4F/lȕ^ вB83I^;L#E&h2ͫ šGKi?Ez+D8qILqdzI! QUҘ2h% Ь#O^FEz3i~1QB9.guJuRg83YWFC%;KcWFz,p ЊͼWG,^b!TFL2fm_Wvb2bԧrzRr?͟&oS&5H KJw?#]zsdbAN*3zyDNؽLmR9NWj+FoF HJFU~֟K|(D\U]g9kkZy2yE Pp4;E ~8j*/] qW.PhNO`;K-S4FNӧh\+*->FxǛg@}Zy~qƥ`us }/ Q @Fh H W+ڢ@vt2JxNǬYS#Cz9Dc=3bDX%㋇C Qx,1HE(ŸҨpI3$SΘMYD u5It۬lGOZhN: uxp LQ5ܑdJi ^[I'CO"TtK^!8>qIP*Sblօ9 "X`l_G< :Urn:/̶$nS\L1u9 Fw;<ҥ *ogWAy6+&FgDi*HxA;eWy|T{,bޓ,`3D-7365$0 L:gRL_?DZjg}'g Nuƙ;G8T,.8H"!n.&L*nD*#$c{M[]me"CkuJo"W/үҟ;ڬp>t|x9F`%Tm|dv:-̽#xxEbLq19o_a5Y-/'zjyvh^9.xކ8-@%wcXYjdEG@L1X/_+&?ߜieNiai:)?j7"jߝ iX iyμaeCb C1QYݚ8[ RO 5 yޡU /Ks|)Xd<#QS!{yʍTkfy-׳ .r:5D4B|ݞ#%$e]OQOl >0<_K6e TIƬx>D]v_~$gzhJ^վ*vvSk"5chS̔X7$%UW2hfPWH&dVΩgь.ݱ-kĮt+ۈu lWj6r쌗-<_B^(aD[E¿az7LeF刾,Y}I?Mc'W\}`.աdK͔@^̄QxMOUj3H5oda$ q^ouO4ZI a0o{=PL[ *阗9~]m&z.Wqܸ  ^ڴ&iwߓt^^⾑hQ|:4>~T*V}I+>uJQ?iy(t B׵Xu'YYUgu D͢ g"2`{[B0Q:(q~c0v,Ye| -.If(']x{IHEw7dޏIo@%)`Jon|?\(7쳛؃]v0>ӁhW3jј.1ĻA##:CKܝe/weI!;F_ޘ6զ̀!ӏpyI ܶp ] ǭsb@Xş䚁.>C#_%B+(f$8@|Lhsh\C{:LaFwզ v$/>+x>@^!xB,", (EFq}} N_o[Pz4q.*%4orz@WULu>! d{Pu/(KF.,ץ"3b&~N0טF0d"`qpe^@eWaŃgHWp8D7 …d Pl{͸?ӥ:2 (Oظl|W:\n{˓ $&pv0QPj/"pR-ٓn~UEDpR#6Zn+ /?/5=mz;h\ZNx (!ʭtONkw)sK᭝+6bQ,'}mձ_^p!^69,Sf| 1mpf@8E)qٓʸO2p|U{)II%i)c@kשOU=0pM>f"ռ< Җ^JP8(-s򰄪+f"N3Yq1Kh36C}E@XF?*2Bװ;C }+62ʖw8Y|\"l4g~|:g.?/(5ն@Ǒpj롧K zPM8 $EzuTm^~"%e5vNy'r8P/Q !xxk|jM9krp kRdKK|8cBN׬m#b(Gu t(=ʖ .z+wwv5 X7zikDJ*}xPWI :){(ȕrhV?cj2B L/xmԡD-3~G=Q |oI&հY^x==@.kȼ|$+ܤjO2Qxvmڭ#JЮ39 mOLψ[XƏ*,X !^]OQF7c1P®pAUwyDNU=#lvGOۤZM.a FJq5>'8N,hf^|x7?)96^ m 3"م.+P1ZMx ׈ +fKS!mszy꟨>[} M}[E! ą8Bz*"ōM=(wymLb_^% >K(=& 0=(['zSR@U7|q'o$jƿ+i ~bsМsb ;~aB֞PˑYyn({g9ҀY:ЋU6h `՘H nÂWv~`?vkwIÂWBb3"$TO ;`Tt'yNoط+vs}'@Oe; pm8 AHu]Xؼcds[>u@SlOfv|h~%Nsts/;5+r)MӂH.x^S&e3_y~$@"@*[N7Zo8i[ %ViY^"+ |}8p,G~A;`PPXe 8ϓ.as;ʔ̶=r3Q nkP΍VVBqcp[@~~vP`xCf80r]e>Ua9=pn G3Uf+(Mm{fUB}C(]'X' dn 1IJL37wkkC̴{,sm(8 USH5*7 4U)Y`Jh yx15T4&*U׽M~N 𯕪V̴gH,k,{_bc- "7Dފn($V%"#e'Y_4n-68qzՑ8aR;~nYzSyG8l{8AUUFa3[D/X砣A<<HgK|GC6T=,= d!R8Kj[Vh(~a=ǧ ǽ j.>?rkZM6uzs 2L#YvyNLQ&-q(7 T*"UBi&y+0sZz3 Hf,Q~ÉZxÇǫT-:L,iR`ѹr}b'P>RJ2_M^@j]:f@ mFʺ=&Ul?Qj8nJRi׬t`ʅm}l^։Xs=F)FyLӟ3{LCգkxi ^v x@ZY9]1RQ mHkW;h}war,. 0s.E;Miw \9-4EGYgpAXIJxȃ1@!.D6Z5RA]dWԞ@W*M*?-|h jm9Cyҵ1j3W]dg7qVfJ?rI#xVpI_G&dJ3eZP=K#(ꋀ~oAs̾*atwݒnH-a LyO;>mJp;? Fij*䐧M8|MPѪjoW S ן̲k&42_Lit}]ӱ/L鞷‘${ Wcʻw3 }eKu83>//fH {hzNhq X~e$яp X9㕷./z(Cϯ !LuT0NўklRu}(`u>Fv8ER uf?Z]s#B}NtM7cFĤT۳R+ (I }T3kiwܾ@U3 d`w*Kۜʧf,Es)t%Xf&ϼ.~"~ wϬCQ6:@/.Wa%hvjEٵ>6a:H}qlzC:; gֹƉV= #_(I. ,Z!ޯ=#¨]2Tֈ.4^j:_8ֵvzД'Uw5 UapY- +8b6BTjQ!vȔSqCifGY>&Kt ˕Scq9,op IbIGŭ_ Dhcj- `&$'!gf9>:1*4M^ZzFG%WSdz.rtoJ ɲ,YMr`ϺWl3(LJOQL|R uBM?.˄<{N (-ctR5.^ݢJB{l &'D5\?nl\қ/ 0!UĊ9w# FHD\p3Y2dyzy#62cnҴܥ*<fAcΥEW|cѷZ.V&= ϲqC]۝IS =u> ؗvd67>v9Ae[gf4gkI}(0T:3惶T4E1x׫p9"Dc'wk$OAOK7r09n+ On`@Қ xۢ>1>n%m.6{=`GozޢCF%"nb`iw[jם:WntLK~gVy$6vHۯP<09s_Lxy[1T!"ufEJdž IjzU?t٪P5\ֺ{Ǝ3P/ޜC7mv4(-xI8i~3vqTzR?(`A%V7*,s`(n4t?"i"A@cufN -9=ƺbڑT;݄k' s 5ΧW]n 7ToNî)KP2ohݽ'A 4AFc&_$NORgR;|8ZcV{aeȅˏy ʶG2]&R.Ljd3)7 K$L蜳3>1T=̋xj}zUEJUזe6oK 8ԗ% ; *q6'<` !Bk$ Fq<{&j# `;S?tU{ 4OQ:hU"y{)2*5"nV}2{P줨3[FrX"6Bif(!ſp:le`nNC`ϲGƗ 3d:4An.0=*s$Ӌ%!B8XBUJ 7Yfsd/ڳ0ngW=dblE\l ;񶌺 ȍ1bjve{POTGUc -l Dv} 92X o3ѻ2YC>a:,OF(8Ͽ*YNW kO&%5Y|7XS6 Asj`'°-~&I[$ ., F,"Iĥ`~"0Uh7M\l?TYoBraD h GeĪ ոvoW 6".54kg MӞ- Rf*Op1# >PWi4}~;C,*.mCPNeN bIúTG`P@oe8CU9J=MZW / S4U{C&FYy Dqj+'aMZKakڦO;=RKͧab|@"56_I6h?zuoJiiIZ,y(>_>pw!YGƮT|{Xn[;U,o;9c9+= O']b1pIYG̷7$"[7UXؕG|G)("b/k^Vd_)P>n`J f-V`zެ}^E # ; ;sPeU ~rtl 8(9 EZ1Y(H6x[eRgj0BnÕXT(t5FMwr0ͿkHjC'Iql}wnl_4v@VUā?$mw`LgYSߟ  Y ntF A5Cb˯1O!2 I@q)nlX5[%ꄬ"ͩ\A(UÒ p 霤WPZG 5=Εg\ ,}W p3e(`_Fźc!f5W14ee5vns*p/0VvP|wcoךN_S^ʼn>جS;E?Ұm@fmҭw]"yǣo?(_OH" T/*JA E~"O8IsV_0LO5}ݲ[o>Cx| =KƎ4 eDw DJAi 4B5M brI|:5Mj:D.~vu k?nM9M3 %E|-okq":o*!j3閲Gi\}<_wxnMTʴ##Dc_6 IJZ\pp mn)ݥe`w97vx[h)6ȵP8벤kLHי,6wCKRTQ/$q4R}.e: 36H{U)IN3JGUnrtMtJfd {:{qhGG=@˿%vIiy=GBC8%)V!z6-ϊҠsN]nΘX`!&Կg51j]6RwqAl+]6t opDƸ=RݍҘRb# 4 -1$6kSُڇbW vJOݶZ,RB6e6_wiBUڄ7+ԇ"fJa O\%-zH_~)0"ְW&2x?Ukv?f0ݲ= 9w N`[ (R<`,7HD"4em8^<,jZfZ/sK/4,ҮC{("ň?CQm[WbZE}: Dh-6XaN>2j;RNấ`#Qe@1*_ aB8S Z*j= nO]IVZqSHT+h*O=і6E+Wܰ=KR瘃UR؟=֨fJNq l9nr-. aчEdU uk)IOڑ}G= RX(wdz\vbp/gdE {IL(W#aeWSV&4\b4.Yu2i aciѱ]@p(r˸nODg,;ٵ^7l1I8yKWO4F‰hx3{Gfj]@&oI^I.K`m~Vd@a"˂+18]`H';>L2V* !qQQW: .P }HIF3VVpwևPg()x,]+ASt{ǩ܈lzl7bͪ.@ YjtwC Z=ƒ5 mvlF{e8TLp4K"inv޾b*Ҹ!m'#קX(g$Cm%CwyQz}Hw0cJ?Mm|s ^i1X'3j׮j9kI0(|JRsV{rh%H #mJ<{Z{aZ$ Oj84YLP0~zJb▽Noxn΀$gO9׈ɺ;j1(eS8P`d vXW~_0?A?`N@lAڿ%?}hH( >hΌ9+K.pUh`ZFUTSrbzk؊M[|cV@:!RmI]Yu͒-K>әb^>@`v_0y㴞we~( ISIFa}~֦A:p!>:J/< r+ϩ~ H1/ua$D)k>{NhLb_<g&uQMPa@8M O,>%wdM?2"NEp sIȃ# !m^9h/@5%GeQ? 2).3Zi5~[_8m/769cd@F`; h˚ S(^M2䷍MO-氮X#CLM;RʼҾ,l4~((~1حKȯnۖپFǢ|# mD'3)"v-ᯚc!fXx(sH$b}uI4U]!⾞&A ğ]on#5tkcjoхn9'[r˰Xy|ݕCZX:]kǂUB]sd/|Sty @ko׸ٍY~:23@ncV/ٰ$ tp+0gyCU@ ukP][r/4]:ls=pfM-=gANfus%1eJb_s߼88E{9,}}= *M'2EIM@o-󡉯ƠESGr|/\AHZA Knn]AjGRSqlL=%hVQ,ʃ&S;})ihR\Vwʞ"/<=3( E|4 dQpűH,p[ϱi Ev 8eu^a҇Ƭ=FA?PuK x|o_*z$ZVI*=*I1z<{e{Pq ,^hJHb6,d .w<ժ^鍰 ii1 {[YO=~0^:8I9 .WiOxss&iavCaWV^Ffw\;xkdw}rgA>jF 'uRۡYa/U{ڥɍ_[w*,^gDY,(DY ozG?5Ԉoh!p5Z̚g=_R݇4%sn+^ஜџ40=kCNFk1A݀:վȧM=X)&F|0pwy&&!TՖa՘k-2  <ʱRrD֧i*Gx?flr%em ۰Pϸ3{ZJVMUB8e!Z: YQОkb &(o%cKl/`DHH>FCWE}OH3ZyvڗM[dtrJ{tJK>8H4>tǀg*:"e]ReFfn"aQA;5e*Y ²k62&hy_i?Nw" /ԃ2βN6~7Ma4qI;In# vfQ:y O4%b]<v5_( ) 'wLR<{9E"9A ${+e_X b U ]F xI ekN\JBw[LkIpw3@V5N4ɩPguyX!d-9}^끱d/3|}lRZYx pU >sXN˿uf$]Sh\P8uZ]AFq[xC/h$>:-bf{Eh"l %b8He &?JuID͢77:cC3 o&aP5/R xV;pU(HF!=p0f'XŠ>+x*sӚ>i n'1ZgWqE_YE&i4*󪘛SQlI$ L8TIx3ɴawN5T>[Y 7 NxXMh^*6#ڟTc"'" lHu&CU^T&`b^;hF^mf7*B&YhnauL ς Lv$+/!_ mDsE%~,6$bNw6;R;DOY5O`$3&̌,ďj{.}@$vBhoak/z©S&G.;N[2xboZrS3",TvJHFܰE Ψ,%IQwS Gz8FosCwl b)x~o*Uqbߵ@331"E(rZ>5!GۙD5\G/x i& lUKҲiqzˊm`H6E>#ux }gB>QBEpO؅xtmР0s=3Vz  W*[5W]c4.b\(7 [K0|/IѩJ5@,նa'S{ WBkTd\2~f5bp F.wM7ps@{se;ŰТ'&(GsUx(yӐyo jWbvFV"*HHq (0i">@L?Z@B)=}Blؘ/OuXquܸeK1 ?d~j08ec+ /2"ǩCŶd7ڗ%BJFavq y53)sڳ 6=*c#oQ}5{[Z”o:SX{|-~-'j3pHjpDeuORnąⶊ܌$3U{5uCeپ*l dMRbMS\)kQ6`ha'2K޳,G]Vt"a޷X2f0S*Ug)iCYARXF{l<6(fe7HˢVPmG ]QvӾ_dFrOLߋ<L=ir ̻ѮڝJ}YPCOүs;ǔ^9>9Ja#3Kk2#~bkf[,7}?Q?~&$9Q#"). Q(3p;tIwuZ)#d-]0@ Dl'~ȢįR`uȞ"3Y,y0U16"f< r!&;(~z=h!P|C,jt=C)e3~B*UsYU7.U3"ȍ⟬ ҊG;ٯ|F =`RO9ӲQ1SPlTv*~!42kE@w_CMe4%-@1N2g8%5zfR3f'fӱ s Pw3S(Ta=II3=f k!}EplYaA\4+<}E /q?T͵JK/v$qY`AnCn+HJQJD2E߯%d}Kvv+Vg&%,K3~-_\Ȩ禇}{ g[ sd9܁5+kA@wD5Nʒ`!f7%IGwSm䙫[pnvOD;lv=jݐJfV)6 $jQN򲤽ᡳABHѲc}}q=+7VOd7ø]>e1ile- aŽm 9RU_ Ga4ՍΊ*7pe7`z4YZtG3T.B:{Ļxt_JMn˼5y2?9a7sh'K tP>TUv N %[5+TcCbCKY2@sk үw՚ M/ce4Q͹7V Iؾ~43B3]`]\7'Bj?TU&4O$H_; v̑mbe/53 3yQHN/a5XU{7 14i1 3PVHfB-@Yv+R]זsKϳ1!p96?`}]N4dL $^WңpX asp;vN_ Z7DZYLƿ2Zy@OrH3@8*].ǟ-,Z BO=tm.3 `Z,𽀰9fi =/7Ctzs:?2N|!q_;cPhGȵb܉W{TG q|f\Df O0rݜQ*($#ţ-zs52CudƷv4]moNݒ=um,XuA䶮921"hj AU9f5=X4+㾿b>ȷhCku )ܠoLф4\æzڬ!ēR]Na-S:NV*&IƮn!?2v.tjVQ#9.FC D{"N){PTwCd:, 4s?z ]Aw,,p"sO?6?яT;)7ۮ]qX7+dZ>?fSǮ-WT"#Gtơ@~4-v(,O(s| ~6S۩i:q݉)k;c4u rGAW?hZQIy_3ˉ2q <2g-CwvME^" [q"bX츛*MjPҫ$CNXڔ$A?e~-= S[{k#,hyn|/MrN[6Y Z}$5Q~ X2#*&MQd1>"]D]OPL;]h /)캞TOYd}% ]ߺ8<&(SWV' 2_0Qܵ$IE[ٰ|̍d0KE:Y *z}g2 к^'ozR_/yC.6ֽ2[t4{uH~̽pNJƓ X+-O :p ={5zbLÒEkw jE/8yvr]jmӠ|Lng#9Bn=ܟ[cpY? 2I:@Vx}ngfvڦJ]m\k M^sv4 F >6TLW㼡t]w f%(zE_.RKZvٙEP54?&D 762”t4/tۊJxKڱhh6ؼ0׋yEhc^0O]ˢ ;A? `^ tUUXAO{]z ^eG:up{Ls ՘Fӫd>:3: r nA7#Qq_\Y߇OYE 5\h4C+"he щ,vvA GaY]*hu3ҫdGø6sI]Oe֓X( jL)H]J"v:jJ4rG}v%P$rW#sVvOp1`! {X'k/ OWZO Qrv myEΠ-4^lM0;}ߵްcˍNxh2Ÿ6q)Ӧ9k)YI|IăHbXu'2n8^ .;e,bQw5!T{t׺ ၚ$k!QC@ bDg^IP~V .snU@/|ZC GDsX'0\R1Tt/̮h6+^1ĻPb 㾪 \;k (v9d<Ol̀-lCh$p0h5FW2TE80K|Y]ո>QIT \I"*9}]gZ=5U'Z>eW8 )O(p7}v[4 N !4Kq϶ 52$6@ݨ!kᵯ㸀.PAO~{%8h VD=. p.1οL(_B*sr ٔyCf3b[/WTdDlg&)e Row(4+s>fN-D4. (t:C%p) }׈I."ua%B3dţ:ΛV ͟>e \#FP)8EFE 32[DC'~J8[ h7Iٞvplo ۠

OVHZ6GJM]RI{h>GzbaOZ:ld >G^{6)\!K[1ܑ.223RVERVLs%lrO_H(^5Y,=t[WOut>k0MRI",&${HOͨ7s  v[ePZnR:FŕL'i2#BCN.mY}O5t]p`y$-NlU̳~ϣfBN %+[-gT&jD0k6[УL bvC8P(<|o}Ɗ\o11?6 C\TMH*mRa;{oFq眹t:r*-5!3|_L3p\mꠜB/c@~D)P^*;yR%?nU|S~(#bIzz K7_3OxA#;H:[S_H9/w y1/y`B);*-:be?I{'11猸4?f>U{!rSk Iܷ[,6sEZ:H} UY:/|y;3fܘmg|FM)=c0 ;+QS M2^vI""۪g)Xd{i "oH>LG$iڢOc]NROIGqφ5tː X*ђ]඼<; bv(_8뼕o.>s[?\k0P;wGJBb*2JhW10 !~н; Wbm/B/jy5_>*!(xP +CHroL` M]aGY)n3a'yj+#-X%xDҠxQoSEWmHS:o&sn>|ͮ蔬~AOnqacOBFǸ5]T&H#{;>ӭltoXQ˸X BsVBۊ~e`(H3HD0;Bf#{x`=CiY'W:y88`y;}$\ [[xAt|kfҰR"xc;^Y$IC94EVQz .Yz IJU83 6k aB&;l7H1/p0pHy,t!B5[oЪ 4Io(R& l,46B늉+Xm}2"]'buu{+|Ϭ8g?T_  Lғ64QU|-av9۷eC CL(OCN'_YyYL?*# R8Q{>"'Yc7ď}nQ|Ѓ7zJ_>c\{`V&h2ѦRȃw;v)7cQ44^&?hy <POc+W#Gf^;n}+SQآ JK"P\NA`7Yr&vV@(\ i1!3VQ],fR:SQ@Nu,f|`!%ZA/?8FOH;4$⮐  T|b5j4 !s{t\&xo&hۥcW|E0t XM/C,ΘF•"O9PhuXsoU2׏iBs} opkh][ NHh -Nv=KqԕE|FU TG,dPhpY(1V_NZ ^?NѻT,'d`OExo3?cEVPfա&|d<7s;#V@T0{&-įRhZ!1Ô>$hC9Z7zBj@;Ǣ;J 'f %_W%8(̽c?i2 YG)pW7 3g'(dM\s-P0tuI_(cŕiZ/iZ*4:n]J$o66X6v~C/5(X\N8 ^8{o2*`+Oi ab) v \?T0v?Ժ+ȼ_J6wi/]Η,E%.|,Emw=T47pOϤZf7t~Oԧo"|}{V*G m\#1/  KkzLMO|],DP̞߲630x׾`hfqhdx[9.3Q{1h3` .L UszXZO}Cz^o_K_#Z%=ͷlY3UJ D\6c[A9[ x֍@W/xAXک.FkBE~Z(Q!hd'+1-x$sJN5 iq%N4QXQ*HZ[Zc^%,OO Byp=l>_ IjP 8ij)i(,4\zIWwC?1|>/̐` I%|EMg8c@Xp߉I.wrr9HEJ`µhM% I8Rw̄,ATc9BWn+AMd dU ,#;U!]${}6ƅűg}um^úasmƵBi1^)0|yPRBKғ\@Aw%gObu>t&Bm&H+MM槆J+8.Ţ4z r8h\aE278oh^a*w3M@YYת(*<@E' 9p ;ۚ:g; 'e(\>VՑ ))n|Mz6F:ò^Kw02a9z!rmpX@f_MsZpgɥ7%dsެbTkNmĠ?T:/H-n5 e݈=&Km"el(e+e@e3+-W},ߖhjv1D#G>ԝ#-}]n<`GcKa/Jy%{?i^81 E׫w77!'4FӿD I/HEA+m+mcPS-*rekwie*NAG&zYUt|]QNxX|paK;]({F'A,\ᠻn g|zc_X1'֔g$舻NtίܔoĶkҝD{1UFwڪJ *D^^>yϳ%5(#HqkK)b 7d(o?!+E*qb3VoL92 _16 2m  _'7!X1Ѕ 2-w" }eSNO6ۃ٩<Ҵ)!腤hdZM9\'.3{*|,[&bKkYa╁9aQXȔB*}w`vL WT='0MN_HJ>8u:zP, "_y#¥շi J@n+q2Crn+.gCjnW"+ }pE>Tgjnq4)i̱2B 1TKcm Hs|J". Q?y X8ITh'A>sJd^^ 3\ ⫹+knW)6xJ)ϋz͡N?o] =ZlၥPU @h^{vWXE謁nCN%S8N㰥Mw3ZI_2%&A8)  )za 20;'074dCꞀp)';8^{R! 'h1'8IN)G|D{%c`!؄kg,`$ 5~=K:@ƿ C Rqz.6QEza|@vIO4y8PMiNK)ElYZZt3mղbvbj_-B6.q=PL|X`v8aOj.Y)~WtC)WH'xWS!8L=iC>O1C'}Dn7 %-#7?ux]5{c-2Ç803yQb~MȩJ.[8{{ҝvd_y9I4nnc!Q!HN4&Uܶ/(J>.hyI/Yy ϶R1Suk)I*Ƈi:.c;m"K;z_zY´e-ZzPm5+RLT} W6e,:W3 ՝HTN*;qK@A.XZ~]BU q)Ox݈CRE֖է]|e#YA=zQ)הT"@FLFlT^fuKw,ۢC&1Mcµ3Q*=Z5} /~PoHGbg;%f 3\s:ʒ3]F&]]xHf^u6P ךإ{Xy9&'ülM0%Kg) {N혱KsyRN0b[>z0% 셅'bqv]5"oѼpީbڼ؝=@;^v5:ۙAMUT]Fqq/^^h+]juggmE솼h mM s h6g'؞;I`Kx\)ںXiX&?Ϊ8 1/àʜٙ sAf޳>vkVmȠrDG>6IϊQP%njW"L|r(>%#/k5F74YzG09Ù{/eVA>-g ^$pz߷E^E-Z?猫7hjr'5h9Y~x'9f̷QQWKy?'$ۊ9*z (6iCqA03撘)HU~\D̚E5#ԓhYt(VQ{% w(Ɏ˺wv^dY/fm\X+0X$7$FM8*~_zfdkgKHOC4 y8֏c)w>%|94!CSKcj 2vI[P،Ws+Aa̍4vϕׄ9s}kj !m;#g>"?CL/:!=Ѽt)׳ 'N罰b%Y} d՚gX8#ԒՒJHrxoPZCB t(շ(XB[D]wtK㑜z=(jn^RH.EݟfL)pCIҟ^x$1n+> 1[<7|b`֌85|$2:2Qm4ansܕIohU\7V8wQvbE3CuVS&l!ڝgI~Z+攕+'b?z#ou=&_S[( +%69ߘ'D0 bIJjKq[a.A1kQz:aY : p7ӾBtQvN~e! 㥩@=$0L.g5/S@*l'_ER+Y!g #wB0 qƕ%5 sTFΑ|\!Rk&1d\sʪT~X=E<&OTCxɶḥHsTVva)&ET➄2ƟPRbp!YW7>LfU5g VUz)J,;hjmesOU +,X;Dq l@r6fs;s.d?gIf`1}t9-Vr(@quk@#,s#n9‹0@Aυ)׷fؗ%uy(D(z?\KěO!*İFu?1ԁ)/vFAJ[&D"?-6}nsfoۻF@ʦt\ ''Bb}e7ߑchlt q7R@ ^cdХa Rpg\-M¼U&]F+2ҝ:č0=2HZ*3o\ ɈPY_x}Ghj>˫Mlu=@ٷHj͋B@q>kdv_7Ӝq%DfřF+#9~-jw#,2\nx]2ginF>3P>5S۝G xfg=1b=L/!50(D`p[1DFB@ߗj&%̓m sy$Njs+'{ThEc8C[1tA?߂ୱG#YGU?cIe xwr%Ӥӑ,R`6Yb0o&E21^1?x(8z OG%ik6FcJ{w@\R}Y~ 5"НX/jN#cWE?!"l2\6s삏@*T;Z]ղ94i O߇6`wʛ֡-L1DL3eFk"Ϣ9)o$g3,L*\ iJ`Vo$E1]]|~(m]%tT6h"J-K\#Ah}W]7|FNI Y%XVyK@8r#PDjp oJ(%=>6cQ=&j]]H1 @1W$&Γ9)6xYBu2hmK}+b9\OK^Sۖ$|FIVhe,C Η Z0½ξŌ0`pm\IN\|!r.ޓ@zS5N_ZFf g(%_[C'@gY{zPM^6$԰8|dTd-X8*a&&O R~h^_ X;($KJ&Z%$[k\eʂ@}LΆa:ps' ۤ.xmY3Z<3+\ )rHM[8  f?[2Ϗ?|Wf< YTӤ$c"ϼ:5j|ݻͬzpoؘ7ݰ-/  KhNQ[MB%^]ˮdO(* {@S&ɘ1UV{N,cN۾mv$6S{hl $nllYМT0/2|i\ZaR;IǸ!UAhۋ%.VaWaJ5Tc3x I9eE;fc`%Ԅ  ёuDwJd(w_Jsa#V>(u€UR")jh 9;zFr=^M3]=)h`w&ڶfsO>4 ]~|{BN,DjZtplJr'σu=:mrJĈ=iԄ9L?"Ƽ>:cFٞ7ݤIQAiL=rY.d-}zcAv_}s ٵ{x*/qu߸R͛P&+M)'5ZjT rRfF^,W#_+m?a B .$>)`s(xbNk*aUd3M4N~N7(=@vLRYmt ޒә^cC*Qe5|7YSU'Eڰs_ފğs8C?ow9K,tG|tj^$Rtk7BmMrѻM;NV*dmȺæs}70Vll ]{Q;{R׊qħAvXiFg]lRqJo-tTvDhx7VAx(`)Ƚ%p+|3tC%hϙguǷspLmL X6&;JoɍP>VN,壐I{>Z'o&j灟{h ك2v[pLͯ>6-:NStu%WI4l`d6-x:FHH_,oL bnPٗ88Y͌yiy?·P+irz8AoYPV#`zVu0Lv)Q4v}Lo &qr:Dջ%KG źtF} Xr>jQAN ěs)gRVr$yss:)\3y8$[OHCxM<F ns9e;͸9ҧʹ3θ ^\SC&Eewۊ$ǞhXpWy|jxi &ߍ]ɂ!:SG4~̰|c025lӧZ;,?b$JQ:hdTn-fDM!p<IFp1x8{Oq42KUgeN@;eϨm5y\ˣ6MyS`ۑ1@H O->bUZwnŠ~((HaR iCۆ 62gKPeڷJ l& (+vqH.ZFp#zm A~AV(8m$"Kc"ffL3AUUOUW^ڠ{9MM0rf"ۃߠq};{h>#@ 0Nk!s_xUcA ~H6ɧCޏ1Q˾*Ro/pDmƋO{ʦxlK,;EWMQV'9AtB2i@MKL?TD iVWe$Cd_?e'p}INRڒy &r̙7n8IzysV T1ABxi 4p'h NndĔ3鴒\Xhp!d@?rY$f匇X1*AI'>K#͊*E'3BoըLL#ÑVF1: j qJu\Ey>Ց̡ WuhXCUI7k9rvid{: DT?A@V%}$vR&^S YSc$}i%ɢ6|tn|_PV!Af(A'i8AzaIJkg`EWMcLYD%S.:Z#jVj ' r-=CzT_Պ`zZIא4m Mpv^+CKnk7W4ꮕ 6w"YHV\b:dX}-@d䠥u$w|A+bI\r.h /l3\(yиX;¤^SzD}Br1 ,Eǧ쁘FzـdAyP^UTJbvTn4 RņD7Nmp݀DGFcU\YIw,[}0u<8Zw_&*l'q7%sۛfS!xsѱNjG{(|-~F9lރn5Ѓ3/;a}wZEBh_S6!ģ*Ⱥ>Aӊ#zL^Sf~o73)mT/!vz(Dgl\ǚjgYKq tݰw((5q+h9Sf@og UBՋH}m&*f$?[jWcwgE/D/}I?]A%M pgsRI .oh< խۆh_Ϸ4lMSdi\Fꮆi qeӓ>!,Kk:x49lۘX]>ׂ`\\İUw8,H:~;s 7O-lv>;dUdqj~9H0 @:*@ tFM''DHA?=nFڳg /QM[luZ [X{;[!q'([) f>\vE\@ o}Xd3;5tFxew9T=H0g+Z@ vam>on/9]i'kdd/ 钂P='sV=`h-zG"uvA)[C"zrP+@Pij}uڅV0U(]n%b zr78ʈ,5[AԎd!DX٨&F / dtJZ ʪ&&}Z*a=LrYi`u{x"(GV)3h >OHf`1o,'$E2ؚ, y*PJ?:d[N~M \N@yYe5EX;>k_"'3s\r@!=1hj-Sh f*If %#BR)MkY{QRDa'ЀWwpi!A{bP1֤ʑ )u'ysU/~ NR[aybuI bߝ-Zϐǽ}*çQʹ?!\1=r>fD&*B1XPy 4񜐖kqskzJ@We?՜H 0+:F.# 6ӭ idQmD{Rwq0[x ]? / 84^HK{f YIKU\s^GÂ"ׯ`9gN-6+%. Z^%MWÙBFng}p0꾞̅-ik8PVBy~T*^C7^yPG(?ۙq3L{`#_?$2wu1(9Wy ФRF ĶG@!]܋. xYgU}97(_Yͦ([c?/ΦM™ҽ7 K.[9_{IoX#2}h@m1R: |" aS&)EwA\k 9 Ӡ +vk:ߦj]E!U,1;ѿm0OS7{E+17g9&'~;)q6< ~k9H[kw'F.} Fz#̋t Tտo&OJ@@&~&n L!;]UpY_y!mBklPaޯe$Uれ39IBͰ/C YA߉&Uq,V'%fmI!li@s4)q"BF6_򕫩[N J3+avf(埾O>ѳGb._}`cxW2o%_y,%b1锢R360+,hX/Q 2rVr- F y=q// y(OF*a1:&mĄa;yQ =0kZ ^<@9U#Xi7҄cv=FO3 9.3L&"` žIp6Z&xfd۴]7?[ZDz؂ ݡ Xwn86Eҁ^PC#f mڲAH>~dPYZ`]co Z|i)C9n{7rB{s%0QJBv.5 #.=t-ֹ&/7 ^8#O[SXBՓ|efkB-qj#Z`Z=܀=)Yk)L`dL= 㔴CWB񵸣d/&Vڙ"EUIX+}UNx~gs@]QH9KEKl;y\;C!ڷt6Cf4jІ f\cݴ | R Z]m+]Fߦ9v*wsOHb,E>?ʢ’y e-f@0g'ܮ>x6ڏZb#+bo<>Lfg#U+rvf?pBpe~}´~k-9B5.5K鮪n.MuBm*\S/>6߼Q .s<(EE.19v3Br]no N`F ]oKfŬd';- b]\H*N84sh˨: +ѥ6zQ-x(fz"wg4q CRS[@MkQuk] * _YI63ˈB~WےW/5e^¢{uKqLDzb /5[OmP)  - =3[!`$\J סmxdEWe SԟL`JKEzna)ͅrBjW˰SU r])ԢP} EGHI8?)=ȟ1[N+0YQiԼRG\D/*<=lrӢ&J( (&ݮ'oZ nH=2S jjįAβR1TTIf_sEprV܄GUKh"="tu7<=5f˱0νCm9.o5qDS^E0{8eu3[J'].'BǶ@UH';=RV%J?d53[FҮF^&౛07yP5~bG"~&ڡEgBa\Q (Yؐ$`z#}t{,OhJ`S@iMtx}f# S}@b0D{# A, A37efu8~U* 5$K<p ] |x]E}:0a%0du:tEPb1BmJN(D> G")6"OuЖ|6n# 8O.`<-A[UMzfgbIwsUoe j:Hf6]ԇmjʊV(-EfU9ͥ͘²MҙU챥 Qs7$rM.Q ,y)H +cm s%U7tSDN]di{YK-ΑOQSK]5Bm$TaB)SNNV-kk(l&꧴;bWvM@J`Q.| 3dӡ&}ؔ"J7_-rA_ =U!fBp({H͓ QߴBF0mE4- /94h 5Z[GBmg >/FBS2oRzN;<6Ǩu ,#k@Q}<8 yѓiޯtUuDʜU$"וʻg-o=.y pbO IذԲK+v9'nc%F@nee.~ =¨5;$z֧dǴHۈ\Jga{ֹЙ; Uz'hRnz X=_? 2L8a<&3JS5R*G+3^J3lq+ϒGQm}N;mOks)W9H.,DW/m8R<dk`X,Hy ܧ% 3{MCcJuZy Y[὏Mn؊x7 r'^K\,p XzVGͫJn nQp^3XU u!B&xDjB qES(;0@y>4?MT[ 0IQ3lqm>Fi|L1(5JAzJ )e6SHq{4}9~VP*&0̓x\!f^$;]O*z,afWhLE^\ mpI3Q,Xf;t|sc`żyHO)<ߘphدRZA6VE}k[}AG!܂j43Wr$[/q ytNR\".0SI'!x><84`ӦS,C(+;ζ. 'ڀ0  eǜ-ug@iN)Qv #NfٮoP.O|WY=EC?_J4Ŧew.Sdꛄl0ʀC09b/T=mdp?rpfH% ,20q χvϸKRQ$w[~'\b ~z 7sGHny+=H&2j:e)\F\ yS,AbFlRIl=wG夞7iC( (nivbGWxRG- 5W "̣[q&=7;u+jBvT(4y!e+VdGe]ϲC/Oo ^mRu*&ۚpݨ5[L2$[c_P?Ft4~dPyZ~ ^{QrS0W= 7Y6;b8M)>[ۣHoՏgLȀ{k Gm/\ [gdLy|WFyP {fahbY 1kX?ӻ.!UNa48I{ d+ #!XT ռ4LֶrvQ|yK567ϸ&r3dt9Br2TI)K',qTJnC|;ދkE _B$fF 9 Oڟ]}KĦ2EH¡"CV!ш><@c#+W=PBU*O XDs;JVofB8A3!e$SC@7/a@PJ*JB H4  Z^!ѐ9'1* hmomy& ԅePH+xwg׬k~a1 DI} ^$ Jv'Zj6#g']"e.'`ڣ0R%+e{o!  Q{%ngΞ}rqeE}ǩň8?>@L;M;UƧa\~g>鳧%p4#`/z`)#;"wpB&9d_[OW=&J%Wٻ,dG+oy #+Z>p#-(3*CktSQM00`gȹ{Kjjo"u4]NQ&*.=`O{/WwF [\x$U.{}[q/ż#p;SO2W0˰ۂu){B۲7XD#843Ry"&n K(xʴi_#1\Ѕ 9~Ӈ53l O+DXC{EZj| cQ cW%$Hbb DeXeuw0!,߶n7 ֙XRS|Wx6 p8IGwݵ0ˌd#5 <[:=I#A*Q>\o7iޠm*l= G25-N5^-[_gdTޯ7@N*C@Ǒ{IDWGyE:Ǒ/5;s5c9YFA]tK*Ѱ9+yի^g{>aQP|QMߟ=%]KPa<؆~_fۨ~J},ef? C.qq 2^Yj7ZnW\,d~oDibS.z9nǗ z :| %Ĕ6wO{4]DHL, ߼V-&kl/b9(r $H_oHtG>I2=چ㥄xIhf\l9[#q?ެw&jrWE-o?ȧ/sʎOv'HjY.A1L&F)HK<@7st +$3Uv9웼HW%5aUxqw%Pc\yslҊH 49lG%EE0R [^y-T k`gZΫNoЉpFB#BcpxgcYIlyV#@&!F6a2% aO1=8^] p+e I_?u3`ocX(qs @Tl{K@Hq#$y;%AFF7qJwp/&w3D[e5GvP۽j`)T狘v>L!=dU vIqw=t(*(%eV(H~bzu0_DPa.Ye}*#LJP-ұMV>ۤT:@\CV@_VD-FMlNIϮ;A.fD&98u+6 oY󘥗y[Snםo֕?La_ qtf~|\WS)fCܞƹL~v82/vI:V}LcӉ[c/ȧ&UC-nuiןn5)i7[+7Z~YSaAU fqQ*jk5HȿPy5ڐ̐2P\+$${lgBa,)`` ; )voʵ|Yd"e!bDwI^ U6B1,7*/+E*Tq+KP+ ȧ`Gץ擸͕{¹𣉸Y-f{Qui0rQkWf%3lDvqC!wqJ)!_1٦}`Ċ8z8UM]q|GqQq'_2"6R9Š5rLL Xa6ς\L6e-JdTbyiFD'Bß- SJKv9o37RM)4>T%I%?Wl6PL$IņVdQ:dzz 36 WfO 0 DTz=>;6AW=9*R\9Ez-I~K|m԰bR/ YBr@Ո;Qtb *JpsFni9MywP]1h[&GJH?A.%[8^X]ݒix]`20EpljQK.^,O 9wǮcMN=I=uMJ?=*k3;I;8 KZϱD*(} 4 (Vbۨ4c)llfM%J9ncJk^MՉ_[8#o%}xH~/OXɈLhJPLEQN"ƼU FȌ)f?Z9Ѩ[@ l,)S*qa )Cʍz v.m?P(3Xŵ Nj:pYk6;^eLFJa$bK~70O:DR2Iǽ*y -gUTJV׸ uEepJi8:%Ot"CJqng|x/:h5&?- CqΑ%Bǽ|רpиB𪷈%T.f_P†u 6Yp]2ۜc9}##=V2D rTޡ 8?!&}߅ (c~c` BP@{lO5*AyN;Of\gqrwV3ɘW Fyɂ0co_0ߞ#ge>RuLvQӱ1[ N)f]2b-V-)>U\|ǵ^w *Pz658l\%'=ֈ0 @m} H3>jʳa / WnfCu~_^ 13rd(GDʙi$DŽ^On4~gL*iS04`)t4iD"!M l5ʣ\ttlʷ%JdoVQ$X46gȷUPSQ[N'h 8KĆ9xlO0N67Aa2_9JH~0zlϹiaOyg߭ SE@@xPj {Q| aoxn_9kq&" .b.)tL IAWJPg&8v:YAi=\je[,^Ѽ-Qm7C 믟]EP)-GrGl~C4´ bx^J:R=#ttL1ݢ澘(}?.c-}QɎH`񄏠6cƸK*h,';Zmt&_cWǮm)))zi(` rȎE@ۦCc&S¡҅P;LSiˁQ)POyn@F8;qطmJh\&etiҝ͢q iL P>f]d *IZݓXi %aS;XpNlWV{M/P`z 0ΠNy1w BF691BHIΡ%!aڡ/QvIbxumb}~xÊAWz +WUٸf6ڃeU֘˶lbzbn`az ){[gYV4ƽ@:r2 0J2%+d'lqHN_芯{b ty簣^`/ˀd?6gp'x+r%b#8-iƱ/1JqGj[]M!a,+<"6]Ncn)B,I2xGջu\$F%^#Cf*&P&Au.3XUȴ*%WU&aI\9աu-S3t P8`j6H ZO`7wk I{ Ѵ'>bU tǐ؝~(t}iD,ZT# +:ùuf8KMkBXLY^PD_ 7檗cun`<_?a8Hy*WotƢ,ts˹ZH }b{N4B,#VamxbwOP7 ܂ Q~etTtHGj4VaZoW@0Ākto}GY 1k|l.#o{jp+4m":q`c ޑa1 `T?~:}qeC0_I(7Ob9!"qpd Z#\9`/↳bl:QctP]OWi+Ly$) EȚ!Jji0 "=̦ }0|bwEyc)2K0W? v`v mhbgT}(Y.y06SCEp0Ƈ'pHl&$咽$>}&"QZb+@ "Eϒsd"GVBAá }&?CхEh>\HdЧRK\_Qo=?RPKytZv8g-M BF/phW24q_8uh.{>ٮK[g`8ګ$}>jHQ |WʱkGHo*,ODHA_0sW[Cϸ12s5h4{q6ZVD &cku{;'IEl"MYhš +Ӷ%} GO_9)K|ǂ; zKS+*Fd7/ݼC:oWXeN%cDC w[1BtڦD!`vcGe?NgEvj6y ĎrndڟԔHu5J~opEύSL,_DA6dD{zm9/ NQϽFLPoh+TXYo;e+sM[scsAs0(g $FeFkͮ\1h$VWidvK dffQPqy6W{ep vޤdx9ZQQefW U)fCBi{ ăchMmy܄5ϋ@-$uwR $k_91X-}x|󓆥oOI8O.jοo~ASQ@H7G& 4voJ|Fe.\-/dVN',Pa95Y؉uǬ\Mͻ~utˌ缤:hsz0pIB=F~SޗMÏsX\.jS՜0gBMVQsYQ8p͑p!vb>g{7uB@6uRSxԉ14W:V;}:/"7i+B[V&#UCt`yc݆"~2CFrģ-γ%e RD=pwyb)KE{WA|Q<4ct3m'ߕO)S܊@re ODrį"* ,vJ:/Dcm:cCsnL bFgͩFwR:Q^2>Ək&6.<4VgQ7޲J^'vRjE*Z&P#-J>&Tq1-l^HL9N+\1]!PI5uiB-Dmѯ^;}"( )çF+=15~i5 ,)rλ3l7R(V2 iPY8l%deDRR|q pr!W 8l5i[UD>ܐ:'P䀆?3ܝ6Kwplf{ׇ@fLhlYoU3uYq2xo{ѡZPj䦪J+I \ ^ bqa-ɛ \m2S+x6v:J7m?0=sL"ۗ$IeT*K]6w)y=`s!Tl@5/9"iv"RZ;e e$OOiwC "1oђ\ @Htyp!L 6+Q9 m?4$}n\2\lK$C,֟H0dysKy@u'4|bmѮPoM$&an9uy/ʋ2p+Y*O1z# =0?'Ysx *2;s5% ƍs 5g/Z] 肾 Ю6tqF>aXz Yr:1wҖ +m1{?uul7Ju3/vlǷLQj+\ۘDּGb0?0\c#ٚJK1>݄Z \b*{EbśUhaܬF{.PgďQV@x㔘s'!Ο'4y@8XExЖ,,u[Rok8*lf,toc~T >sj(վSA-wEbc.Aĵ-ٿ֋ X3Ѐ|O PQNUPЃVR(,g-Ɛ7jI܂)'pX1ɱcs=?Vn+K 'lm,h^0yJIߘu<ғ|OoJR2@Us/[kDJa"(a4Pm$8Bɍ:Drō@gj!Sm1򙚮ID}T v~KHG,#*9)(g5X8̂Kxt&#V=Gm 3E: 6c]I1]ZE2E*yi>(] O[MhiSjW""A5NFL~KΥ?Eӫr#`8FDh[KOq$?\p܏CrCy_)%l[QaK[1*x*bQ _Q3Dgdz>or~])|CE4L 2}Qe[>d1q:fK~ %{&8yHeh; Rށ+\.Tgcθ~;tsԷaaު\)|d~wI0P9H۫ sijGеhXޭQHkZYoiklcH,kT-{:Rtmq~$$K^_.GhKg/dȠӃZȸX306 [ :=$@x!W~![dpǨwlk}"+̓{*;Vkʂ%N5n(@q.ҳ s%3L65QKԽ(#Ќz\)JfX˅.EŌ:fDTk'-pߩ4\DT)4mAWX'(X>"rfŠ +hA HDhm{=,fAԽROSwB JT"I+GUdm"ɢ6zYޤnK.ЅLb*} K/v,._w>'(a&&,Ai$~fd@U|tj!%v3<n;j!=Cga18"} axB*IivJ*ސ8U,wgL^]fx}Ӡ%vWb xtrɛv+ʸ"'KQR&ᎁC/OKUw[ Ѭ$)t"RV۞6Ѳ,r8!G2g.z杮O~\( ;g` +as9r16bA 4̗ooծ%XZo0unobGUx+I sngZ}_z1'"R``xЙ1변/Yel~a /%]| RHƎRv/J]Ozdkf =7B+O:R;И /VA.D"2W$waH@1#>>, t/J٦o[WWs-RHM19N1J4Piɂboyctz"3NɊ$רvcL5xɺ7(A9)_C] 5tAaaZLf.A:GLZcF% Jq48j8Ѷ'9}1wHżvKC[Nm4&د0O,規ᅣ-gO.ivx 9"SSk UI(Y8o}7Vm;4cX(b/np7d>E_ /5rHY;b$F ]1U9QXB񻼙uUy )G9#-"F֠>Y`FD:( Z:U&CjK#+ b(j4{%ZmCl;I=MlvϾZßwE-3F8\ !14#%֓z(}\-xG*gU؉+ 8lX \|=Gm' .8;gcZ_Mʟͨq<5.W2a-of N{UI[ϱ)6̥r)vI~a@Ü*XB4TĵvTKzh\^6Ad3ju!XBD#= .|ztt4=96EHrNoa/o~픛 sv,u7m%Zد<(cQ:$K](PeAg= d -Iԡ[u[K! wVRRGyoVY45n ]5ʖ?B4$GY \)xm/xY.MTetnA'3|E/=,u2D&XBcG-#"`0,.c#>٤]82<'tAyfY095"T%mgԘ"[BѹKTAkз w5t6lǺc͇,,x]N;)w/Q"oKPx_WW;u ΂^Q7~RDFꏹr+>RT,fI#B +{(w zv9 (-[,_ @8j76' a8,.(RH%0T1?PcJ6ڧʅA?VrLXK 9ΛK!"˵T*S2_o?.❳t9_{CփR$ʷݞL@;bѬ'þд>uK]}UgP j%]M<#gclxü2f01U,7 c%C{@Nt03=< $G()F~É\,naq ;m( nL֕r/,LL?sjyWCZ$PN%_< ғ6R cdi=0_΁Uٮy a< zsbGd#O?c' ^@ 5\Q ˱x@;<5 ]c%ﴣ߅ UbQٵu !gmdl :ƞp%l\ S| 6GRRlLx<<1nS0:1YIF eLdKʺCxICdv&.O\^jf'3wF}Y%Llgh:)1Q2Zc> gP1C^IYGL[OY 3}[k*"e-c - ޝ@e{dQ !ԓHh yn2Jmw fT6J6XB@ZJ^+5< Z d'SLF5]{&t/9L4;Ġ.q5+_sKVa~Z6BMnJA#v|*9+1[gpzmEu&sQ5:TU~WK,4d:KstWΐmA ć{>C^b'}KNJ)& (i!32s9N|b|$Y9 UR4`i;ŘwP"i4$H S7DHw@ 2cļI! ͔|_yeQ>ȩ[ n:n ݤTmt-!3AVNNBdUIEZPG]-,!4!SyIr܂16R~UtÂz7ݛ%%fQ30nC=NHEGiB>sƳ N}%fAWo2qF!Pݡ?֥Vjk.o*qKhK <E@~Bo0nn[X_N8rkRy( `㰸! /쿻hq; 5b8Ryˎ0P ֝IZ (Y*\tP,ZN)kUZ'P3(Ѱݑ+[԰DA @ŲlC]ߴEh.o6MWF,FYTGۨzA}_{J 0(!ż p H_@w?9:s]n-&V-;S2`;J,|Oll 7%FQ<{Ps_ MP6!3ίڨU:֓YXIa۞ ?92spCzM'nXg>Mp(a 'e*Xq]NE|.4v=œ o>A&!1:#ƫ(Уӽ. B)l=_M׵EbSoȬѯ[QG0s.wp6|>˪Etr4x@yK7Saؼ'ܥ\5*oӯ'%FU[+ƘQ{Sh3[mS>mvf͍lAloL.lf[q`m}I*ygzlfOpev2)2 *cIn] %h6I/ѫ{5w ^O{ VѐUҔ`n $S4Y/J"ݿF~qc:h# Uʢ2VM\}lRaE[(a /`4q#4t/yΙMJѫ, SfhjmB8EtpJk.\˗RYs28,u=Ի],-pbAKm_,c3E"02+KvC%FnĎd3h2!gX 㥂CI OjEO;Fq!5O, ҇xσ'gO9rfFzUcMAL#ô6SY'Ke61S۶cdO[9)lȆm.BodmLhZ1<=6.&'QVtZbKASpmpьd8 טY |<ճǫ1 uۈqki܍yqXk+]Ӊ\| *HP&'W-M:p}~\`*2Kn20,lM N3)< 0q~7 }6~*>M`þu) y`^cyIW9U`Je^?&JfS:kE;- y! /><~nZ8:ql"+YrqOV:y .WCE '352X:n}rg&0 "FLano#IZ3^+̯W>% : c5L$Z?8Be_Y3?g߁5|[ 5IVX 5j?YPE7 4yUD"K9U^Lן4ég)5v _죧쌳@ ni1ml4 mZl|-”ִuyu4nxb, i(=Q"։IWļݵ:@q _K2x\'Ky$V^)^K8J}Jy w殒62.)+j,SqUW+:X =S3E#%E&NV?ILqEuf B`E'{v1p q1 Wj ˽z%f4TGU@PN~g,$JGξϟBd_fwO&>(Y$ O+/J1iu.AѲ{O) vFkBb\̬]=צ5#. [u?&z'`_ ]pV SC{=z cr<(: Fbݢ2+F[.[>p!rz\zwvPiw5` JBIu 4iA*45u4ف泵0-]qߧ~سye '(5MJ2{&dkˡsGKl*|3jxFǪ̏[-mjm7Oӹ]@N"d.T?@ׁEJ7g1bwae>'XFtmC7T).D :fYLGit,r`~11J^b"!y- %UMb9("Av`hvG t[N Z5bF9ToA=r7YVgj12^, K!`&Dm8fZϺZ0J{oUs^Rn,sAN5Qe9`4nφ(Fϯ7KSa^Ҭf1Y|I@gaӹ˔l|>DcS@mlfe6q:A^@.Mr&q[p`q$ Yhqyx0Dk6?߄C Lds? )xĽtiwؕ@ cI0Drv@^{=!rTcmw-èbsa9ט+ܱ Ǡ]I=vG㾢 kbr[QK";L2CVPe)5ACPLZe*w#Pt)cb/zGEHVRhOd rdmi+wvןjΤX1PDJ޹sK*DSSIк,ZONxb X]2N0}ز8c랲{r=Mn->v[;D{ ]ܩ5]W !i[!DawXG}є@njo5DjᙓT.Lq8F]ڍkcVad)rm b2!;.Iw%I{*~B#*eŮW#v: f'>xFNbP\P(̱iK$pzRЗ4z`,sVҽʛfǟ1"3;ruiGfG/._DwxFHࠠl>'篔2Dڹ띓) ={su<'Y(1`GX| pcYЬԩE%IR4q{ZoleI}\ ǰn8vm@)j a_LD}y`.-+4`".Sy Ʉy*WV ҆E<9H _s y(\Y3&Ӿf|<; 8vCgɔ_ntmtb0P>ZޫkEp*{Q@ϳ|3 ?~DGH?S9{kԏ@\jqf؄~qYU @hjCfН!bg߭2Q* 92S(V%$m!{#[?ǶԐM&4/ 1 Jƨ۪! H@)߻[55s|>1M7ڀ *>;?q"PH>"ʅ,}<.F譇DS'mc>|VMyJfC-j5lIkfsL3e_K7͛ȥLT?G,i`R`Þ)M9,C[E6ʂJnddSb$w|a]u!~¼lxCᬶ0::tʩX]J,.X0NneM:HU_II!隫@4Jf.-#og\(?/Sy j)eLbH$H^h; .,m-4"2!| - j3ů ЋsH{7UdWHxm3`XzEn>v gMA IR3M*VT,6N h&Is: ms+##,$)45EeGx(% E5I ]ʲ_z_)sXl5kjm]̋iڌ9)(nM5"5ۘZoX'BܩL6#&(|ζ4c} u$7fQ=^ E IENɜlK{dW@gxje2Л,twnOMM}-v$4~6"5dC$o » x{]"qB3T<ט"C 6uX5qzdxհ6FdT';]Oc$7~b ,6NZ $w^#X<<=-U`enB` :9o;56tBD,+HZ`ZzR %:RM2 &|jJe|>`nf4V_+2H`@$ע:f/*yZ Njg&F?bR< ,!i@O `0C`\5LNY'M>0Lؕ0qX#rN`` rr\se|LZ (y/iҝAeGCTN f {е;XZѕT6o$wFy]]XCLcxnS+2 6uyZMo; g0qHK]h>'ն%I/Tg@`,B *GίnQ D|&;W MYЦC=qV5#R&#k¨HlTȕ! ;8˭ttۮz!}ۋ@ڢ;. dwOC2$J! 5lT@&/ͺ礴o-J=zu9Xd&"ФsDR*F3h~KS SOtE2-Bv{5֝ ]3BYc)sv&e?ьb睽fg:yEN7&@sԇ25Vu)9?Dų7VQ r[h|+ҬhN %at;LE5[ AZuTHH^i?_u!1,SQoa+aٔ7)eHR5ex^ Ӂsn4Zߚa~^5t̖,y0I$p?;(aBFBGlRAiChblKXyn =s{FO'ٶJ8>E5EQ-L@˃T~_JS*]fQяNb@dNNMUz>W--3ߞy\fWN,9Gzd9(r$Fn;'x[)Y :Z:E!BgSh; }. F&\˪ n쥰)ƾЇMnOow3xX&jLf"j1AŶJ]QGeft8vd,ɖڝ`\ Lw@ʦ nn J& v5oa~* :52ٛ^ kO'9oe -#jɴ2PTm,!'vN@?UhϜ#nAD]}J?!C"5Nȩiok7@s}@fFxOD BWd[cvvb:Q~C6N/д a)&$2?* qRj#S{!431lOa q,.YGMM X~'lA~]C@Oc2.b|}neN 9d EVcZ 2@~ԣM٣Ė&s)W#ĺ 8{k&%tG|<pz&/!\IcGO0W;ΣƎ&22 wZȦ!F-Kqyj P#vZEA"O]oQ'i!N@C=i,W[*&tb^_c+@Z/>8B*F kv\ GL Kh'6c=YX,gC"Sv&VY~?]CWz_s[I?N\#Ɍת<9bPw%  MxJdɴh"oZb Rfk`\w2_:I>\{OC4X&x'-&wC,lW+IcS+pr *8z5UWſyoR=2> cSУ0@c2"_x'q4'L2Sj*d\RdjX6#<uQoa,s5KVV;;o5sU @= -k!71ψ.żp.5U&$⺗u#FJ' 7j J O@da} WvF0ZVY^×8&Ec[Mq}g?A'q.Y>m $+ӊjĦLRnrFkkH%\69i+ m^8&/T?E 1.83*+. i\-:Y{r%u`aC)?lXPrd`\ *YGaPV!,-n⃥vRE˪Ռ\薀Hk؋{ 9(a?V;òc٘m23=K\^.SNwd毮hsgqFeBSn# /ja'M!&DK,!h%R7{'ӽtXrm[ fԠm>3. (,Z-->vay_>L(y= \fJBZasչ9ta5 Ή.+{<`Qu*pfڲUyS('d֩zxEEsa |t/o!b~n(/Af&@?hS@1B%[ U1s05z#p~ȴ{4:zZrx{^kAP0p-u 5OA^8=;̄axdM0 8ՁCѺ+!{FfqLKLQaK1ꮰXr/B6;qh~m8ZN>Ab0~[\ǏYuc|P/YW#Y)_umPX}DokŜ}kB;rSʥDlb*q29oG:W80rizvIq˓3w!%ݰbm1Z,;IT# cKs.sZ}; ,T}N"RitYb5 DZC~NK8=`)w?7HP%~uу;F>!1,c.TiŠ+`>Wyz^nL`)Y6 KrU(CEA`ۇyyj-g%tsSiu Jj\*<4C)~gW@ XkApYoq9̡WLYCFiV6}u3O⇫,5L ?AءJ~H&P,DG0k]8#ZQ*ZAvHMdÝuIٱ/υ6!M!\xV*䗠i~LSbw-]~zlzb` a9K= N|Ho8>!miCwPo׿}ݎrDg\U+*-ס?(ɜx'($ڒ #*&ϋ *ۼ7w. +kőza.Ś ˚~Xe6Nצ97tvj ЙZЖ:53l(ND j6G2A7"_Wn]trW;T*B@xݜ nFuυN1O?ұN+3ό‡4U\ur̞kKHc1=P pj+T:%`-"⍤֐Džn=d-}XYMnkG<+08@]\HWI:cӪ*lܺxTupf2qC"j ~nUp'+jD/8ºy]oҦرےU"E#c}q@"]R@t G΃f~t@ GtH56V^,ϼ$ CZ>`)D3kyzSX8d26 5m+% 0x9C@uMFāGrna~3v4]TFDTr*pD< (ۏJid7wŭ%-8`s{u !Zf@FƷʕjmb\/UqxseE>T ~xR3 a9CN$ʬnΏ<<ݭfw1n];Ml=W*X=XC uD2>'$6(GIР7? q@ (p}x)fK(!!'x,gL uRQ+¨c)M^ض&Y7#ps$Jhs=q2o6y88J;=)≭{IY[o"N\EE,})-[޸6p~ILzCw4pBp萨Кת\f$\>$ A'oJ\ }SP<&ir /Veqzp)20k~vT| lWTVR=U3%>z*$/|PՏce3rl$a0o7s#h֜q/τJyQru~:3.N\ o!ⰕM_8f#Up[VMpzi_7/w0L0p(t{!LCH3$XPt4X? Iy+V~F#m5{=B#uI-Mm;G{ q6Ζ.?zl_ӉM>A$DAvB(D+Yws'<7U@Ћs.b/a ˭qj$_ *m*@+O'ǝ '@:N Q5$ى=_/R8-G}X>i)FUR U)11"gNNi|0y{'HD{]hwhb8Gh*zD _vJ;(t n453+GC%ʘEOb0jk_ye)ղo4ex&dq̱R]ΌqV}[XLyp2&{VLyүսE"% @!kVlS!5h79 n 5 y42M0nG"l= b:$04zȢ246!\OPN+3 '}8>]mM9`mdOGo&Ɠ#h\O>i;X\NWt)pg@_ r~bC"(,ȵu;3HfEqw6%vn " {nj;=5L%ꎑKOgTj.dC8ey_딞Ehh%nCۇ`~9Mt`Uܒٖr)'(&BڙdZCZYTNWmf t8US/&\Jt| ȎnMo+ Uܟ"E-_?f? ᄓCJ2ʂ췔GuIf*{YY*C`ieGf21":pIS4M6_Bv (+\6,&1!7"K/gT[UWpyYԶq;S}*zz=ٓzQ gN_?^s9EXq}}?w@+ voGqUlt:Lz@GI^6ǒj;C>=po(#ZހGUhgy9LGuɆŸ{ ni"lGX/ӾER"D}{[ ԣr/fU3i8)>WWj%*oez0OԎiJ;3zyOӵ\,%mj&-6./3ҸZhd?,ou|փ~BV|ni+(|ṿDdPgX_g'Z#y}pZ)i,7MyG~.2U1--E TRm70 db>[ +hx#8v-=Er)OyXOy2^sˎq˵P/K`#Xh60uCFJ <UׅJ;_ab)ѐ3{> F'.C -X͸:v:8 *6W׆r jUW}X#EY~O`IQ w*z1{(q~s p8_`rCQ!?0ݴcb;ׂ)\te#2͈~dMMj"~}4N.+ '_|k& lCF%(IR0\ef+ B™(MWv Ģнq$=CFj` -z?~F|D=HF6}W~G9;WvV%rLez_ 5n<^:9Hqd"An|: !{Tği XZ\=Y}3Ęyg\G97=*z 2EpqgrV4PlYT'Pb9_ чoeΰ[V%mC]s>$:]ۓC4mS-ܡLuklEoK׿A334w& ~xsM:M[rO7 % Ȫè>F8!%_92vyDo XxA[^D]τz0uRnz)R=W3wڧE<dfs_ԂLpLr>$Z *zCʦ*MLO+d4ց֓$;x"Jͱ/Ztϕ#[zI{E+"JJo\D>\C?^ɨMWz`B=p4Έ^>QTٻE4h'=_$`4&`-1VU 4ܷ'B ;ʒM< *O.V _s Eݭ;=*Ie? ,AlgMy- x-8nJ !f'Wd%[T(:u{g ) ` ~=u06]/# w2zW0hfKن.W۩Cȫo!3]nvKGOu> 1&B:7՝Oadx.Mˢ8NsHd+^Z h́hst=f[b"UY]Ce  V^Z1Y3bp1e; dt4cHA@ ddOB O:'Ln5Dt7F7珺y0(1B6{OgƻZPؠLJ}뽦Ym!wMFx Z^@W$]+g]__]8U*&аR<GzE%4șDa/s I:6RUY ГWfhܘY Ͱ>@PSZ1}vl'F&:GB^7.4@ 1S tOʂf{v6D5(qmተpvRW}dLCA `x.2-)hgh6 iϡZaAAU l6)07Ԣ QSka6jnЎnK+NċKDK=L'mwNS]>&im źt3&ǥ G%r.懡hgu*QjckQ=5<3kN5@G,:'"5pg^+1]`s1w7j )b,<L% 󤣠3!$u8tj䢐RM̸kLҍrW3< f vXl+qV,5jkhlrYa;EZwAV1upB6_a`)IG !EIG !.uQU;r#ȺJrR)I0cNɾ|XdE~s %CI?}{M񳬥(53"RWVq] fSӬ`oގs<ǚJ"LulLI:aZç1M yXqɾroy]\}cdYw<ū9%ߚtxآiKCIMd`(oAt/Ȓ妋s@4s둦4Iûy# .Z k1!D*90Oe+7[||_y(1P.î{{*-TL^(T?ڠ 1qMWN ;튯o[{R l{i{E%s;~/&' 9,n~e}ckꥵr y;{Qv3~q=l3n ] I)T/$ > 6,@ Nh9`z-JK1,hW<ҴW^96OCg4nBN򚊄]W.KІnքӔ5m\u|}d3Txr5OM_ѾrP:P@*sm9q d!}*#kg&:&F8:fzN4k٣Mܩ']GVMOmy,h2OXud.ѐ_: r[-΅sDG?+$Z(+q"H,Tߠl{_=g*M^ zNYe YLz"֗PgL%VT| BkS»ѷ))\tM+Gd8:hd\NvCwلGq\1$V(c0mg@T [*@1U$OI7\l!6 J,im}䏵#xĹЊ%% bK ~ On˖Ap9i,h'X9y=? 7ґU+ y#)9$ӣ?9Zb6j"\7O00.W0wULr.zTFEXkQpТ<ۥ+)RrS(] kӔ 2 _蒥S 9.!Z5(Qv||>$ri@2sgҼ'I oGmи0UGx! R7+kd=e.L΁9|_,йT,PHSo kPeLi ,uli!R`meŎXJ[](MgS4*4vPIpV5 Ku5\'9\4 ē6g/iZ,7:=m4$ۚ]\ .A` ! R#([Pݝ`G\HIr,9]u˗VKa%ӧ'&oiݸ=cO)%q͏`Fn\$?2xڭO]6=N`ꛣR0L54…e`G}i3 ,$rɚzk}BQۂ%655@zϯoch:tK0௹̿*,<͕w>f[.6@'-q#bPP2xJe6@V)n{|\aI{i&z MWy0W1\ T2~rRVcMׇ~¦;}v.S|c}d"*_=}9qN; kh" rC]6#JA@lI7DAVsefw4^%6|FMظg"Y(dARHzu^vW n,<2͂ϹL]sDPǮgbm (-Il(m5oa7Sc fToX/VBB("ਨg_+=6yYN}: .G Ѿ;0=\tՇO`?(ŒKN 9vOvu^[76Inb]̡ F_ozWg1 d~3g4>9 1_uh{ s"]EUMko\1p7HcdcBV &a+-(䟊Z_IyS%ߕiXE II3lGv_Ma: Zw^`.ZEq[Aѷ41 ƻßKW\g_iv ekƭe9 }ۍ)^/D 9юP{LIJ-Zo\#L_jσM #СHK2L; .aS?Zp?P\$.b;|[#HyPz$HNݵ2YfǠF_b1 Q؅Ly^5-mwj{$\UX֒*F%A2w8W`[4;5ςt@Ͼ7Y /' 8â35E楔¯wŞ˅EOVM9P+lk?'En]p˚%EgLsq Os1RQC:!˟m,xSc " M0{:6&P : dvRxڽT@pAlGd=q5}*>&/ɾ9Œa`=>q^G tqU 1zz*6Pi {%;a DeRLHGѡW?p+ujƦ6$"{c7tX$|TKPHRVM C?\Q<,:|)+Zf1IZ7FJmEW!MB\ FKQS[5WmOM&%MOIVӫn+s18r}M oWzPi]GS(N0lp:鰶den`\Z .5;uˇ`Wy@6K^4Bfu@n_kxr(9lD6h5=Y';FO2:1Fj:NA&Ü Dͳ2r0 v@râ  ~Ao vӳS>/h;TTȾ )܉ Xł opBPwO4Sm"`j{̚Z؇FHe-pz }SaXcrC.20 @ھ@.qAKԂ^+t*s *-nLX Zso3 iyS|$Ba]*͑W?1PK5 9sIľhtob#|6&)SEK$oisڒ&wڂA!wSK䂄DhFLU^U)ׁ40}Te(@8-啎y!Ӕ,?nI2tS*~2AAb?h'uADenYthxrRʡ_^A<5gj:uMFC 86M_~?ӨK1a%JjYVl "12-7C!vMS_ڧ mYԗb_uZ?!]j@׾Lsmf\1Q1FGɻJ9m âE( ǫ"R?n>l)Jmyy{|}L@dё=2}k wTȏY[$B8g\Y ]A r.x2u_آs>U} )Q۽;aR/툄˞'R[n1Lg"붻"ʎ`>otz0^-iKorsmF[{^~´7֪ {!UKXC2NA5i❆\ގC[:p:#+O+e {'׾jg= w/!41c}b#!P %%{ը ш_srwOLr='s^M8Ff=مF#w=EBw!G+Ry5ksB/VB=`2)iXcj>sI\AY;Tk{>=?, +ߘ1mzfӽt׵XD9dU'N(# eT#9x( iqA,j5[7P#ePD#ԡ{"J\a/WIoiCRgWʒOU2':vCAS%ԝfA&,;M=?ߋS'`6QuGSKp &l!ƧZhz9d-5M3al m=;{XZtU\@sMu;#dÈVz1l*\/=.Ft㱲BFb=.#<hN,O{\l,`/Q6;'d[#R}{ir-ȦFQ @0oFQ3 Yi,ɰcŞVCsYX'.5fRlOI:O>7yMfƽ@Q S)'/xpB[fvN .fj^Z/ϓ.<m} r`~k#=`@ԑ`z{p'Hƶx^h$a[;Of?qgFoP ϼ{È5Kխ3Uɀ 8h래fS鲁$"ŭQ%Kɭ'=gI>h+ևaRi94lo[{.BmêcP ~XṃauԮOzRbV]X4 W^ԯSҗK_jnwr$ 3M: *&!wC sdal,*Bl5t"rv2+ HGtC<47aōn6>_y jIN_*%9]JE.|a(KK8Vh3Fw{o(0IӐ@27f(ƙCM!j^?D!xiv؅/c l3ĪCه4/*)1]nAyQۢ*lЁxպQ} *[6O A{qҽ*=q!S|:@r4(u)I t,s#`Yc҂>;_Mc9 z  7fNEb;23Y$ӨwK"+B(%1IR"- Ts[ujU?7[<}C#,P \id ۷%ƒV3"d)kqkh iex%Zr"̲̇3d?הC-A1ΫjҢ9O' 4c>n[t.٣xD)}ފt"[{c4]ǰ O_GvNE+N|2-i+_A* p\Bn6[ M GZ9BܫoR 1zNrcɻ[{^:Mq^l;=qr=9%6)r%űi @ŝ4dG7pu v94skqq4|]?9yE@qn SgMOx}^lv{c",P Dgx>V\a 5X4]7I}kj/N/4Cp-)ކY6cbj؄õU^4<03rTh@s?Ƌr!Gc/;8 X'_%0'čIȯ@*+mK΅wO)=>N\kel٢> вt8ZM[x=u^4Մx38,$,\J&~zdʠ;Ì|,4Ɖ}z AJaBncL:&:?7^H(Ոg=F2$S>V2N[m IGgb#9t"h f._YqElZ{P(?tI E9%xngk<^ )9_h'Ah|l?Z{Dt]:YpmLכk) t2ׇjʹӻҤT^Xv׶a%LP` y9cx>Iu0OQ!kxoVeoTAL$UuB4eNi_d_ ) .6Ɵ EtF$p54Vf^WlQULYZye%l&>;([%,go?׊ݞOwWe`W&5v[j}7wU5nf߫&if"FF='d~pcٔ|ep9,~'<0.%XR EX Rnq1-@5C;;-,RH  NUn*I.dğ׺ulnټOFHiaŚ޽$":¬B)gE3K\- 78,d> (rFj>Ydj1]+j o P< IC<E)wPJ@n'POXZLxg4!vC7#*f*L &X‰}lV2"oq2QپqMwBq`-l#L3}{0Gy:+YfA45x ͳ(VP(9".[){xo%Q +X/?0'J H/NmT̹]#80DYM!Mǽ.=fla rp'Z˾i,%SǨTv`#C籤ӏ ɆXy?'P<XPde:{GO}}cx{oizD %4j`JYnTϧuW^PAQԹҁehyWOZ?6۶g9쇠jg"&oޥI2 GM=|¹)ɬRYt^ l0ߪ18ycӘ G~էP5S .YT3<P`M,Q]t1F\C)42u\/u|HSO.7Ga"m1וًE p@6-Mtb#e9Jf^ 3uQ圳[{ʂRk̉9 i^sb#>_w0#Yİ,Qx0e4p@3tb6ѣ@F^SaST;r}ii-X\KO<.V7@M"ƃtt`cs]~PZJ]yӜ|XS0S2[Z+tl6xݣpQP_nGS6WYWEy&DPVV.;TnLv 8nco"Znuw|>*unf28,9C3"{+) !«7\ooF} *sw20v*' ւUBwtF aP‚ Ρ:jaS5NO[wK:@)EzY>g>Tx˿SzNg :;Ζ)*ygD  )^UjP5}$wjz(x8*Lkj >P;)G!O|L@̬0d*ۧR?r%x--ް. sjX؈Ӡ=t}ݶ|'RZ ?l@VlBf.DLBxt-| Q%}oO~Op>GψD}R? zC4?_r͙/}aSԚҌimNgjmlkf&Ub tx8oi<A),t8EEZMSqn^ו=qbYE^{,XUF~45Zx%\ Wtӧ걪mGz>"x#+.# J9SI6eah%s OT?%" bм&CBPTMqz.p=pœ<>gD诸LJ5r%Yy5Oͫ碭\; {Q丱(e1m"a3 d8dpԖ|1s> e_K>x50\QU4TW$ ?Ό0h|_7{ä ;RY3eQTWɾ<4Ys t[ATSBg"G~svWwcQpn!/9=PlNqA6Wb7qXȈ KZ8@gJp"q"(,C//;Q5{%p 4>1t&=U+׎tvU,9CEo Ϯ EndzU9444d3:Ɣ/}NESluȥY8`8c:2#R~ DVeAMTEwgPNhɑC%Wk D)J%|NFx9pYhD 6|ŁIC/C1)\"̜J&4h?a67,l^mٳ=̃2̂)Vৱ6<"4T4(~TjXL ȦPy69W :ΑJMNu'lfENS;l8V#=qe Qc:֑?.1,174YJށ)M?G@j7 |Tu7jxÓC`a(eb #=cuz9#V H {,)?! jF4~w;6)YFgha"\хv[y&X=\7?PH~n, ~P 4=0+aR4"7)MV-Tp@O~)2IsLWs÷[JQ ` W?QmUGVGFQ0K\V`8rrD́^lV4d-xy=*kSAY-AAgȐI1dcBO-p(֑/VK%HjiTV7U06/Uf5Q[ t]HJw'^ZO/L(jrh:IPh=ΈB$Gf8aXɕ^ʥtnz=V@X^A&b~WM$SoCvr7W۳aȂb!p3EjQ EBhVyhu96TGѕAȻޢ潒e#\o23?}jl\ (G^=-GcȤʔdHdK?ϼs}kk)A$ĵlmٮdK(h4kXzc2bv.c̮ft{4nOys?nkb_pS rNsZSϡ֬WO$Է%!7CVKxWƏ >x,t(9l= pg_bU8WvEw(}TDW@X;<4ImX'_M-.[Al:ViNƂD-)fp1OPi:pJс?;:N7Z 烰!M7Yش2U[}d ')0^bjcR<欘nسI7˵8r=Mב1[D_T7>߶[ k7WmO5(kGh-@꾁 сLX zWIH}G( _ ̒W-YĨ!z0nWF&)WZޡk,M"y{緹'cA|X@hsk"Kw7R1r v8 T0Xݮ*V`J2 ~V[B/N@y0AF]+ -+lK>q^qm5ND}&#D&Fյ%)"͎4nn0APxey9m:UdVkki1 ىEkQi#O&2'Dd rS \}Atu7=,͟t1:vJRH03tNw#k&dQpSh]oX!hH[P3XocrN9{g?kAn6{' tXpLXm /^)tu)#:(Ps hYGD$CSKӲ=#vJ?a"  Y訏7Hfdg)"2Pd{S[<`rob۫& fFV{M^ heX$"r,~;w^f7blꕳ^ZH9)W _p'hzEJ/@i@3[d=a#$L2& FbSx8>fٶZ9hb. ]g*3FגAٷ) x ̄sٓFNliTIRr1B._®MܾL) :Wv \=3$Wݯ|!hNz_,F߇ :O+9_O}(,=}ef"FHBD=2Vi7]EƉ}:=3Qc> (ȸ0Dױ s7ox_]鎇},kmE-oOXЉ%_k;6OmtyKk ̻<;!?a0LJכ"GM ZQ,}tfUC/;ʱV=N݊D/`ӰEπ|$tc>5:sfE ?Ubμ[ݴ'g{#]#}5exgdC27Mغ|i[ruOi02_CHgg+@.b oX5;GGSr\u_P*<U|oaCˬTC$#g>]ߧ[aRE?Lne{~-C%qɠ<%I;rS5v$i4?2Tg50GK#RR}ٶ #dSֿKJ·=OC~, )~, iZzd|t~% )J#H]')/<~*c]`;\n|NQF׭IQD_ qpG,Je)-\~:5I 4iRթf:JZxQjj7\ӿSh,U{#U]2f3yrBt>WMJ)]`]2kĈ Q?jh)y!.꧲(TUHe5"hf  L4v'*UV 1Ho۰k=ǡ0Z|6>2 ai/'~^r'Oߜj{dfQ$aZ̸ )9ֶſlyz=lQO _FZŲ呐O{Xg+""N$IA "π[Xϕ[qDZ3Zʿ+:(y"m3|iq)W딣޿g[1௓Րj* ]g9G68bF֭8=^r054Y˶Ie`bMC鬌(uػI|(\Ii Ґ}\%%ǺSaI7j{4P;jA8pōnN`'˿sk<5/00#Ua)iԐ Ӏm3y$0v!>`৔\eA]K @C ra}ekr0栽v!Fӵ<޸712a06;Z\Ε1Uʣ>%-BXڛ.YpO!U7WJ:ahf-alm"[櫵t.nmf҉VjK˴VR[w!⅒zsRT[H$}nV2i ~f~PKSQMeo/]}mq9` W"a9UdީD=ZBƧx۹RKˬ .K8TNtl)m=T(2lSj+Mqj\Q*h 00۲7}5ܛOB+N 秤 m>M/b?PлazKy4zӴflWZw7V7 NoW[ߔtU+OyT4z>xzSEC] 7KQ{|}=A#| 9<ϵ{^QM098і)=n"kVG4T8Qx~3 C/e?E\@B%3r,D;)Sk";fzXɦ@ZڑQ[_f2-~f4i* d^Dqx:Ty}eZ?Ek7&e~6dTI('?^gSx\@GZQ72(jf̄/&{u,;xꢦ }l{5GkXZs&K]) gQQ>c\FL pTWhB e/l#rַ|~PrOk>l?j%O%ș2+wKt_(<1-u mbk2h/䠆bη`YSBsq"J:DP;nƹޓNu&ޏ۰m&>e+m#r4"\#/ Jo Zp%[ ƿZbn #XDN~ڠ*ȨzYiJE0`_}pӝ",@N;6R:6ѳE^pn,yLjy7^o-(6#RsDN%JRWkcuzukI4Mֵ}4 1~`Z d% 1ZMW#He ||Vi`C8/g7\60|abΖȃx  RTi]LSo YOC2={ms^:݌@3H,4cf@+Cm¬:71X03KA4#AaC!Xx_"}>-"_Qpde1]Hbi% *pV#CtЏx&Ӎ#8K?kMĈ4(F;P(tނU u:z"1Ԑط"hHkh1Qc5V0 yOڿo/k N#Q 3qG晙5;ZKi;f1 18c?JZ1Թq]pJr7ty<&HN׹ٷ#,JAnb[9?@Q6:N %O_~7=FX>6q$Τ<75|eT9j^!b O6d<|CR *SXM~(DDMb,{]lp8e\hS?l7Mlh~aTD ̖ i6#@5P`.[1h-o[ͫ'i}*H}gгUACCN{2^݂vPku8Q  a/Z"C$9rE_k6U40(bg QX_p&Q"|y5^?ZGlp/*.@wwOڞjkO7R*)y4P"_~5Me+PڬR>N4n8{ ab%]Jhd.8T̉YLBMW\]}t}{ahXyz+3?no1\~ˑw[pj;5ʈZ?ˊK,Ϩ/{wOlloMu0ðê8bV85ғ@Xl`F\#0%ܸi5gn3.I<|0v _Pqh5Y.s~_s3r ]KO1Xu Ȋ1'j|B9o$JW 9H xCP&i끄Gcbv8הzkB=92@cG\`2EcɫA,6SMwsCj_&qt[?D9y/٧9 e?aldž7r՚'3N=l^\w:lurJWeJet{]hUFUjyxчr6# ,P/}1^6]Q *ͤVâPYgstȪ^mmPszn5D.7]ix?mD|2o;Չ.3DBO1+HBRI# 5fqx`QSm }N"r;%/2#6[eE D9?%@CC>?'> Y OASŎ_tZZ UVap'fp(G+ c$$KF)J5D1>phj\O>AxEd.bͲƫo.~='s6\+[Z@ޛ`DtpG3?FxGwH;;4z&q_%)wCp\\W7ԜoM';ȹ¨ WM /4*E (@Xt/EZ5汎C-w,>I ؽM&Ş4E I*e:o^A3A`^YBDŸf,}TvB Sn`Qahd\ /b)k BeOb>^/2ƢQoG3 cЃ~D4Ko9B]d4-y^>fe׷oZP9$5]UxǶ_Xv'hLU(5Gx⮼M?g@4ۄ r)Gi$D"3,VUT;62Y/+Хے [y%{H WxjФ[F#t95g )9e@ JTUytDҨCj P5 ⹁He:Ar!-KBeokdѯ̾rMoI8+|G"G2l !Ql%I]&#v:i傺y2ME)I9d6JvRG*Y>yDj)nCYiޮW5RQ^ YTmv62s9 Iq<Ğ8&D{_'=;' a92Jp&Y>9؋  |9pxif'F'\P."5YYfBEm̬ٕOER>_ vHj,'"g$B\=ĭ{GBlsR:3'o 9 ht]h*.3_TpAe.#˚܁wF)r3|>^{-GtI|x)T8?㚾51j]3 CdTifN+˫.բP'MCU,IwDmpϪIB#ث^1"0x ڶ0S4kcr2pp! U646IVFNnvӌ!(mJ<9dZ/[w)#3a<kVv%!@Ƕ6QgejI퓣b:-[UFlhb]Hs[d28`#*6Kѧĕ,9" lVʲ3Jo1gpYo=Sb!LHlm`Sod ?(ג ׾^gZLMo NO(!V-.G6XG}BJ" gEr O]vŎ|(pχ辟%ĕ/7SAʛ!s`0"bI1C=Nw܂]Ԥ8QG8~גsyWI.hMĊMxrc掀l<Gp 0{n|y)<%Y^>nPHX/1xF,G?]˾9ziբ£$Ȑ"Z68NZZ~6`Ka.Z9*{▰ĥW!έ> ^U\K\ 3nH-/5jj!aia@IwH%8sf a+NKNGnմvsX$Hl[_.&Rwqތ?]ZxoE\S1L RL. 붹 GƄ) coXP8u-ˈk+d 8Nj& rBeNnl15WbN7ߧG4bq7Ҍb%ˁoT]QhoERU{ifXTז03,,up6T>Noq8UP#^?nVVJZ|hڷRv0[܍/g T]{qg-urmոo)nh kK2B &[ 汗Zwqkޙѓ"%aMΥS_z''5T2|Mp,ƦYsoa0#/4rmo􄄘R7.ma&Rymߙy+ alp⠋#G2'½RrgVzK\f/Kx$P,U8a;IN50N )Y$Rx~c(;%(4iu]6;`;bG<(tMlHm=?  5p:M҂H: ,(uqG&s1" Q:$l# E}5!h&wѿ_2*ƏaG:TG}ִB$b§;l ۨQzjS'Ҳל2q"GO5x~$e1Uvӹ$?B7ڸI|E  Ul9@-D3:^n8A5sK"1m&*t}E>} FIHG/jDv0qvQ_}^]Ko&1QfW=ϝψm,j2tHVh-&2cӒq4NHUݨ=>`0t/C%0yL7ew *Sʦ>qfgnWl>J_ nD^@zs>4IuBtxXFdjPр?l궵:k˵M_||%p6PgEdPeaz5&Z3tUP2KDHf_tc1n au7)5Qu{ed</EWZD(pSߔ"Z#IH@Hg[`nȚ*nCceLYJ`lAv#{vqI|%Njx.VC "3,6Lf/x2 <]EY<3D0ɮ "{b P֢ ]cI6ב E6md$ahY"`a *C9vH<95@.LGVfڅl6y0egGJa[`y< *ZgS E)5Z-/V ll-/T&2ArSϯM6tA}PܭGW`s;iJ+9N:3-1_ʃ;C:J^ ZNCVdgdpZI `@5tp|)MRD> `FwO_Z[TٟeC#ҬShT:nPvl3HP-SZSi. 3-(<RgN fqIjuLqu@ye'rn@ $[Xb.ZxQř)q=nC5g*6Oa @,BĵSeuHFaj阥 Cm& "?y-^Jԉ8N -5JA@,? i$5Ṡu^"qamՄ:K>J$Sig΃Cc]㥳E.caU'k]`U({UJbç^Y|dkcD_oI?+"E0!~dDiS*iX&LK U%o&C'ދCv0B;LiXD29A҈!yIdlsc( e+ŔNZ]ag3ps 09{JaU4aW9L˯ǯ$k7ڝWJV2q9(#}Jb+& }燣uz"jnܗxJݵ n0{)U; !j\_\2gVzl4u1'!w jU?[5q¯*ٳF'+VJ|jSbuWI+ڤyy@䰓6rB}QlWɣTzsUZgzʂׅ.7Z҇+JHn* QDf@{Z^(a܊K,Ȗ܌LF3 |S3CXz̋u,nlY%ZdtZ @}pWȹe=lJJm3 -j-m428H"RBxz2SvX%C'GiDcrIgLgs]/ƌVrOY.MJ R 0@֦׎RcBr.LAVퟔsD(t͟t Y@=`kcSoc}DğYRyha|Q #΅;X=6 i$!w!%SW. aml \qS/>!JD vAeim"87IN"A &pnjyKWg`z mFB68<_,dF\>+N:ZUp:xC2Q- 3w7N``_kA/2lRʏC~wR`Jx3{!3(Sxqϭ)N,&B^eCCB]֥|Gz XKCz:\?XOZZGHGr8a/($}XZ7/]5ﱇp[%QrVæu ҩ 0TJu$}3ل{%j(:#B uӬWAV618<> V\qANY_G&i0) 4_OO6hL\#,zL=Ԑ>|Ir^UӪ*d=?W[sKʣOܟu,Sy=rB FOƳb,$.(ݤ&OvCl,5X]-G 荾s}0rB+}'lv:zU4ͪ%~}#hQx;-smTl[9 (N+EA>U=P ]yq93\էƤ]H&朡EԈIs$/]Uoe mń J)ns4J;53 P^0rP1nzfƲ I2af?+mWfؿf}CH d2mߒ@ ӱjXO[m e^|Z^b|Z69U >Bs9>INQAWR2'X7}f'#3 Q5ǂ&.->(Lj0TٜyV3C\*ԩP&6Cb5Y' 4I@-_%ڛM_ʋMUf^ER#7{"RyϚ5U"[k;rC-ubV؉l.`b,ǑtC5 8EB*&N,+)Dt(%=D{ht>uz/I^-a :l@h*{ S( YV'/ Zfϖ!^B2zO+9hQ_>Y0r|*9ʎUk_`I[aUy=tk]?"<@B^x*[¶^VcR4r9p+ͨVQ9,\&X +Ri_9 <9#,5nE{faAi1rDn9B^&wf ja о޳9Ϝ>Xa@R^AxT&s~w0,u{f)hNsuГ ZHmк[?zV¥y^%VQ `xq~SEL 5`x2#.! s¬U]rcP Mc[6_p@Xa.Ͻ7%%$z)*8s}΅p1CX@L9nOKrQC|E-WG(Eݨ d ;LAjVj:tk(vi`uV}8 ɲt\w&cfM+95,-~O<]P"n,oeUR P/E|wWBÐU&WįKR_< -FZ;$^RP&g!UTSAV_?[:˔5Z}Bst$! u&jg٬a7On4{ ECk'n9jrEqٕjm*6)b'+2IR֊cGm*&rlӿ֓3fTD3NY|!2B4v<) /tR9p5rYZ^bHԁul5~x* #N n#:_X Fxqz9s鍨zP[p895,|6ǥeSCUMXUmJK|ioηL3P?ZQ_Bj}ѠwBQ 麃xz*.ǔ͡nL#4WIWkw}DlbH3 0x.#^C@mk[w$o;D]]μ,~dAdw5z$ɍzpQr ?a땢ǜ> i2zצmu(6L\e"!yӽP-3 ݱ0Bcy.wR(;i3Fi2<-SkLK 3R@ܭY,ysڑ>*kwuxu'٘Iyfʊefҙ4\0$moRVpT{=|%uIk|#4RlهL2ޕLՖ7Qw"3I/CR֡_qm3>c[y$XN?iq-۝j;t!?,hn(WOtdLGwOx8I]Q27LjiC &<0w2mv [BC=Hn:`|i`dQ9S~xqV{*^D>IbA{B3  ף6V xӟА~@H H޷@ #J&7Ws#bw?pLDȧwhLChN"YD%Znn~QbI5JJ]~LED֎JH9Zd,n.qolkbq醭z?n`655jN[^~[u:sl0 { u]{9xo~L-{O7X/AAʱp_`SJtޞ&Trӭwî'STD@Ht&VQ! gf2"[?;oQhVDwT`ۃ+mvqF߬B4hBg7xe(1%[ ]jJ{u# L4/\e:0YqcZ[\I ~%*rUGY2 C$OD 7@TEsX_7aA[j'e.ϸ[^gH\=8R'xbEIIӺuY nUӒv_c[fDjV[DQ_! PD{~BK^*X_# C$ TEkSQPz [cUO8K\׊5f#P|v5ҿrwغTVMHWJ53!_[M١/n%89_U-_?}AvA^2lюGVj:jI\X~ؾ7:6x)܃OVOmtD&\DgݜI-A^s][b.DPp ^ !#{e0-=tmgrQKp^syOC8'ŶM( /yPkn{~L/a`C`okFa0?f!?Nɬ'\jnc3[K(G[0=p[o;;y-ܫQ$DtRԘ;0PC0*Z2D@U&7p!dxT[{X0 -1ՄMU-0Q»=CVؔ;&(]ڭ_; p C}߻ d.(/IYjw]&kSRFnʛ9Xy#t\y`hNMٞ.^"DjGP.`" 7ҲPo9fOjʙKnU&<nIb^cϾߨ$ jXx'gLܴhd7=XLXW%s_?xq쬲cdB *\H#7nrW~{xobiFz (;JnxU?ngNM❽_2puSbg"W*rA¿'pPJ ml6 Blf ew}4z1h806 *o8u7zTi1evz,6DОOlp234G_xmpWm_h y5K&><(r=}G<y6](FC5u00/c PIBQIV[#<LSvi!lx9a"e]g8C#xFKn-眒}qȈ35r" $kİV>,k'0ht^դ!qT^.e'/K #cAچ&dBM)yH#Κ5=3 GwW3(],q/8s, -#f'JjeL6݁-إΧ7큂`GDA,悙seAtMg2'Nؒ2搢 knfE&/ȝJ'YZe_Gx929}[b4ȏlц҃f'L2foz2YS'O Zݍ֩Бu wz^J݇LV&agbN)/OD9o8GOh>յ؇%ΓZۘ[i{fh K퇦ޣoXh08b]~D-ymVe3UJfGul움A"nAX\m1qF~K7,%t.+Km[gT:^6BJ^3885G=@^G4ks[jeY˘KZ[laR*Ͱ+@vV-yY;"٘;ld,m 'eDJ цԡLb50E WC/ D{F%Np߯ վV~Ȣ]MW]IKo2% :\u7=gO%D:)=/lcTlUz̀νf;a`ٙ#|^(Z ,sN4?QUeb9 PÙz Tjx:=+yʜA̠g͞uP*\?Kt4c"}?(o\:F}"vs'/ȬA\T9\x3=2VÍbx"T%yO@M&^\lj$+![y1ajhnꏰPTAE!,FΉЛеn8IYjsbngPcVI弭%EQk ֋p_l᠉ԭ\2kdb0q&нHd[CbG@<11펛ǢL0g+j LxfŠzbc1]c=B"n׭K3ͼ:;@YE6d)K_=L}~xr,mD2E1Tq.ⵂN-H4N%Amqю]GPlͮw9UyϿ|@y!gl*P6?:y # *j74+B;DUWQ `yRQL=P01V`7d`wK>h1Z?1cESbǨ证xAX71ÛJ]aUES8K8͈ QXc L̟?TAzlҴ1#Zzj)ʅwP+֞ͺHd[Z2EZO)ld-P:3A*y,[sBE|w BMo@p4@9@L~+ 8*t[Sue|Ck"ߜ|o7F:Ž][8r okT =Qԡprį}]˜@2@mR _9 C2|?M ZE!\T@3wc-}%9ߝhUsLL?lT<'X*IIZTPx[!hϩڙ-L4vzS7$vsY:}6%ʮ*J僚~1ӗI+-"[)b[۠,KCE nEn fHyOzW!jxְv4ccXi3Z^䴧DMtN/jem!]WZ[[.C3ngG :}m/tnCzv\l~l𗣭]lϡ-ĜpIu`·yc4<5QY7S=rNR)ꐀx "y>_ٮp&+6ǖҾ!jpeARUH+$k͐y_j{ی~ cb/ j2 ~+.]j <|F f ay}StqE _!݈}d;3LU)Tg K'/V~9bz=͕XJvD\{!ʗd[^֩ŘtlǛ3bfrk3cqhI^oi'ь["_$j5eU,9:E(|p;,Ṁ J+Ov? orV$hς-tQetC$W ?xˮ%NҤGni+eFBx#5 S5:#gcˣ,FO#%V6I՝3ժSn|nSa$g=WϞglՁWk">cu=Ӛְ1; ̱<zv7)e*쫬@"qVFCemh}PI!4 Ѽ~ \F(UҬ!!tg`:cgY5NXjܺMm؅ my5_uR$7YEULݪ L #܃y,kէd Tw-5-q)Coџ+PpE^HrKRzw(s|8/3̏&=cC;异Xho>djCz JGn $2&-L2׻6ag+ڵ`xg/2ò4^I)w =.7&!D29Y4OJ:!2b@<O.TPgpKEQO~[YW^ChεJ_Gޞw]RB-/7wa њAk!CTn߱'_d4tiN"R^epNnNZ?}̪fuX3e7=@h֦#ϩ: `s$I8dk 3KfeC )fvdyOw{+PhퟫAudfIZc>7Vܤ]ly> 4Nt!#h~ڼDG#̫Gu_ {ʍsHzlEk=Z HhviB\xSYD ;+G_LV#y\#?55G!W&*s0#~Ĩ#]jvI f52%JEpU>m ӕ/#DZcHYiHDx:F =ZZT.W9la$rieHKC-OXs=>1y1 f"ut<3/dw$Hq4Vb}k n {-Z i9ip DjqdHxQ?(c!/ZݙӋZ%xá*Ei9,ο ~ GHQخ67vIs}M0vxrfH\АGoNQai*K-)Xc57MC'371޲D-1ݴS򀫽tL*] $ΜΘs3vX0LLg& rBPAx0uEgx P ^l}C`FQ#@̓\^/Z{k@} H>^K(k=)yմg~X !p ԻV*Ѳ?e^ [-~}T& ]&zLTBs 9s{jc,DOtb:kt@!O4"TJpKFM!?gvRIVf}:9Datl)<bg 7 q!:$!oYW{%GU9sDzGWLJBw/k!-=Mr/Sq[vx1TR ^1o|jZ| Ʃ4᭬ABJӹt/ݪw4b3JQGgqv]"n{m`<=-^62N萀P|ViF*hKNoؘ'w¶Ġ//G {q1^f}"l H]W2R pC(X/XPD_pVeݽ{vij\KC*{gjzX;Ѿeb>rxI ɭ!2Һs6KVx? &ƀa n6om%qWgLV~=՜5ӃWP=!$"_Zg`:0µ%GLv*-&Be>Y#CrT:I$.JϨE^9U6S,o>J-_x[^1 &#%5#uJ,rALR ɰN kU4NHtBe幖l -o0S!LCG aQ~Z`8wgi^UUg_~{+olp3|ť#lfs<*Y$-׊5`?F PX~Ԧ;WOBڧ4 $Q;=̥荠3\'fښDr xBr.,Gξ҆uWljU(4"SL)];gf>_}Ȧ~CWN]AǔSJh~WτO:D++j& $SAV6nKˍP`CC"bG6D0b QBFՠTDl_ఆe(+U檞UdyU-:,!HtD"@5J>Jz!xe˓LQyqY(@ ,:uj{Wc7c b…d>]%qTzK`/xRy:6 Ռҥ'`Wg6+ak<ؙG#Iv ,ʞZX@f` 9nt 묮CQ, RX/|=3BdI#1@M49X;C&mӻ7m* )@rɱ`4uĿs>vr𜒒U(;+JG-f~3!m=Fe.<0\*kΛ_bMJl͐Zbq-ι!kjT޽WTL=b1n&/M[v '(SCCi‰H+š9nK)ufBD5=;BgDR虷ʳdpAN*WIXf/MӴ 1K ;f *.qKb=p/Xh >R[ J@D059u |H |'/eZ  0Rq?Ulh߃`CKO`hHLB5ߧj×`͡ɮ~/q&o%ANL]4F=-v؃aVG~v 'v1g$%4T2 4Dh\h8a>fyL*ޔf|aS~b`|cHǁ(E|B8oa1M%'Dl(H㈰ЋCަimY]xc;9xn[RA !lT~Qa"_CYs%>x9Μmwղs%*EN쇖$}>+{2P6/Ĉ>K߭XY7P&Zւʺ:vW1=וS&8Z'yl@ ԅ%YI N:DXV\% CbH9Yԛ2ΰáͧYUK/ϬSt9r\r8 [#Kohq-l> :~-o%0J (wGhjN:c +y@G N^ix\e%qb2Mo m})˹g]j)-0N%ȌKgֽfq.kqEToˊ%͘.@0K.ѵ~O'4Ā3֖8Ю@{:t/7qcvA@0 Uon\t^)/ P.ok!G!P~Ëy=.ηu*R]F:HBTW$7'{W[ɪm=eDBoa?ޞnNs4 0^OwN24p8k)ҥ,TGaÈDZЦvZJ{\ySeۻXWKeÎ>$/r(A+TBEMPFu j 98;F["ҎW=P #TcP;OAN UگT:ʦq>+zdވnL!r욶C ` zѸ#WnO)xQFJeƟr#JAQf6µ?F"y$Y5l6gfBRG h-!eFޕ".eۇ=qRi֖\b)O\_4m95n0@W.hvquO V 6 ASz)d %v<ɴ #`l_R+(Y}m'(uX%kqF}!"{xnOHK62^E{3=)R>;xVK]1ٍEZ ;s}ǤW[0,$ZLL4+oA5}Lu8%>15 qOș'a^X=qU-{VtF"ʙѮ:5u5$ue}ݺ)&ksg=8Vlز#[cEQdMU4F1O9+{h$A&?D`tvo {=BB$::I\rfQwzۅuDiM*$`'p4) t"/jV Ub{_Bk *[|c0UꏲBH@bL풷u :;!bn38=L?!9UB5ȗ>6~yyn}Ap!Mla[T<3fh?&>jJCf8o "sNv(ϝo=㪬Ht-.Mo(nMR!8,P¡&jLQn%͍MHaǛ! {;kgV)O`**Yu}p3@dNro_xOT%uFU=+` "Y2|è,ʋn"H#^J`ON|F0WK?\pW՜iWByMPΈPA^u6si KXQ+o=)uc vqw3$yA Ϙ>MnP?w+x͌M>QP 6ԯ)b,)`C0;V=5%" }v~PJJf3 '/,4g&-2,0N1yv`I+<ƭ+aSY5i,)֞J3,: Oqш@cf EJ!sg!yn;3/*;QqM#rCݟtvRaM9]GZ%@j~!ۈ}sD>NHfCzcw 0pw4|`h>Je j1ͩ?5E\ *}*ǁI !KB5 Ed_d>Q;os㟸I+jER6P$ dQ4(hǃZL(f)w̉ȗ-!' N-;' rw` 9`9s8bf%>u;p=Q=4bH#OQ{UHK{-iϒuGs5! 1d~XbZ#9N~$Q.ALDW7#7b!_Zti['}ȋ:zئ"F='UjDoAf#$>iiGI _ N6Ȟuǘ_Р$[ux%bU` lyo&ؖ؂wGWPMI!LB|)bA*JiOεW=)ZBg 9\̝v1!&e^ŗo?Q}6G$|-w̡5ٞOP)gyp-[j%VyB,LȚ"=, Iɷ}Ն>yNug#` K9A < nSͥt^*̍,gʰ$ H B{wޙUW\$4x73ÜJюG.85Q (貊(jc%&6]aǮȟ^N) `%FҮDbV]!;TaS5<8yPi]ZWr<"{ٜ߲=O9#E(Y@N_5.rYMX`n gwĠu아\J c1`GyE]`_6O2D%\,mp)rM0zKsO-6IqOO6*! VXjζFyH>*u;U$n HAJ RМoȽ/ڂFjud#€ɃBNfhq>Uj+yrA!U8hN׆AW]P.B* nc9::hmЭ:[MF eݶ?uD'|p>y=;h1L_L·rH2ΓK wtYZ w@<]dCDx3no6׮BBɊ^=U_V[5$KP>ݰj\4=뤨+=MT,fpae<_f.]LIC>&R~f u*>q%UHHH}Kti@iγy sDZx-[0c3DT&i cE؈!E~tY.(*'z2 PU_o /=& K,poQaL ?!O02L 7,2kcs1RG\k:)N1~5plh@/G'-OE~c7LSzQUĶqZ_uxX8fUJkyrgHI"ƒak Z.JQRP/RCCe˦*ʭCD4D"Gb2 Sr52tad;dE?EEkF^5H$1%ß3Llڢ(@#֗8q3Lr:)I͸ah8V< /~o4ƛ\gDмPC0ߔZsLr 3 &!@iqZ7 tʼWM fo?zHFp{Ժ)q9pA 畏@ܫ<1zWF+7ݝ :0dl@="H5VZt71l@g*%#]c~H \ hHq]KZ;QDk$X3Pc5^KR@ kc K~)4w@U:z h >4X+^ZN:(L+P^ 3+"g0_dcʼysDc]g!٥呜h]Ykl^M]0s~$0 b\:b\Ί&ĥO A?WBxC(@PXjGד"8`qax C[u6~}S0*巘Gov%G'Tn 8K0igWfݣaBп/KC%v>=T_6%8j'8 U =J2Bҫ1bHo媄"Ӥ2U:ǫr?ٳ A#oֱW(dQ|zᢽByђ>ضW] =WCqL5Cg؋Lx=1?o?bVe@!0u!3jF>8cEfԂnw~,k'yn@mƭT݀we>7^T`ˀ7¨K|T/ Yl7Tə" 9?SDjszCKY$ۢ8~Z6X4郢Cϥ ޝM/="%YHyk=g; ;oru`6)gUlFzҦ9n;^}k1B B=-ۃt^{Rqʧ\!kivt³Ք>z΁帗@F(Qd^uVZ3M2\fZrA̡E*M^ &E&n2P^h dZ&,2"5_ZY+{h8z*FL2jh?1,˼U\ﱳx͑$m|6s!0\&dD Ͱ_oNhɮdhnKA`Hnߪz/hyhD?ѠkEXѰoާť 32D!P&|.÷Upwa1t4qZrO{zIK+:=a'm[@S3f_F:8>Y9$Ѯ06ۯ6de[ŐLupfM6W?Dmc⑧?JF

xmnis4c'8/}IF2$x ;AI{:_ko_cnVrUAtPӤn!jvpTrlk/F b17/7kV>PX Ao;G۵-[>2V-pMsU `1?fR&hh}ܟv?\~B.b8nؗh[)o0}twâmYBP\02Bd)@#mVf`Sjϵ*] D]bHt2/Gr%D!Ksz;FUB|X,1qSNJ>CBA΅G-+A{rh2"]g+ $Zw^sCuPdޖOfZDG@; [ȸ_%+tDOep¡7Dꄽl_pni(l|C-;I[Y_.8]?v3-U5il4ltFBC̛SCeS m} Yh +DOhukr[#eEn2@!55? M5cXXKgr7 ϊl㔐j DeC|桧Rw ?\Iε| [Cv xmro)m #U֢:qDl8n b^;|{rwѿNQ 9)"yS%iX]D!{}!K-Xq$X|(d;_~j99X}luX_6'qI0r`t^d_VDm!8Br|-KoYF zB.hc JQvo^goJ\9? xMՍۇ }zVL6Ջb4N!cnﳬ <<1FL-/_&!V+98/^/*"`/Q>wx̆|˛36)!t˞~Fp*Mo: rOOۋsIZZ|J$ .cp&#C P.VO5fe8Vh*+ rfƿ4N j DO-,.̼5gIZ S|Ob(]t+|,OHXdSXd/K IUkhI+sHH.2ruN`t'1e#*Ae~; _rj\ݹ#  5+jpԚsVn.w *@uƔc|תwEAg!q-.Ɂ8}jHaҔ`<ؑ'}j! SNzkpįsq@,ܣߠn||K+c`Y!œc GAjx;1u,y(d{}]5p^jbNE*S {_1g'`D!כ4nD&/ryX` #*z.8O̪KˣFpғl:y jIzi=wLճ*Njjk5I3xjY"!ѽB |c)NBvA-.JHZ.&zVmIlRky3ƒL[fkgmF˱mδUr!Df Ixm(*|Ch/h6n%}D̨ߗZIi-ZIG`#׵y:AzE5Ff[C&8Dbxu1"07ߖ N)Od3A87^=`Unf77m=;_Ԡwr/гV rМpsBn #Y[6X Ltuvoa6qXC[vpޝ*8nJjJo@jb.݋&ݰU _i,㺼&;5Os8M)$8!t -h"}8s Y\|鬽v+0u7 6У+OtFB/\q_r#tLnC ULىL7oJuxHFlXO!nI QE gƕIf+VvmqƊtsL]06L[;θbչcs͞'TA7yF{Echf(6cWY[w}lyeyP@:۴Rr߃Q@+JzGC=ZCYo-2Ta:O =xRq7ip7f6>S@dHeDnexmX@Ø- 6#GkiqEI7%Ǒdp&,lk(-s); %&ĄKdG;&nE@;YQ1vځ~*-&L6D@D~A|(~Vm\,iꚲ(>T.*Ua_$f{™{ݮw[sF!gyQQ"ꚅv5rm(I{gXbfk͔x1MaDߴ ͜Ǿ/$ܟ?0"ioiA>L3:Et~,$+֤̔@3/VK.Ruk6Jm\Xj7fiL^lPϘS+K(mIG}J|ZWb=HoڰrpM_"k^CZ:MBylT A$p^gY9gJ-v樊AȚK'Z_4$p/%H&n}cX; ڃ[wQorSvCڦy{]1-6}MZ.5f'4 ?"'80 4ieGsck&5RDf.4?wpиs#ܦQky?K{JjJ4tԣ,((!EL|;}'?K4RZosj2NuL9yb|:& U==ҨgX_7+)wZXWX`%jZ!9"ⵅUK6 ˊC>}Y!BW5$Q [֥"H^RgrkN5${Xghv"'0FgdݳݳCv5~,-7D@hPrė":0!:2KOU C}}*ܐI,jOVMrzz@ zB ϮWc*1JDPp[AuXQbr-`a\م8s/c;t(doKr]]~5z?:P윒@VCaGiU%9K ?B m4S_.|hmeFTaũ 5S>3ןs7Q*5 Pyޖ>N{F>sƽ*j7?GQ88V$ b|[T9p"ϟ_)TI)D-܇2h#z BۤJJ H}o%J3_wZ9C8 Ik*؞>pXܗ*T-94Zz{9O])8li(?0v# zWߚY:1r+> ,`y5H[`u´'faWfjQՇRzҳh)J' h *=c3s>68X]wW@2xJ%Sxq5(]ZT?RGw (ڏE%+vmհI.~}+_#Er,y2lׄ sp!ūRr@+*34X*IN&܊Q a5~G6i*5kYn houoʂp4M,;Ǘ6>dd7pN؁SC^ ٮ7h2dg<jN$@.!aݦzIQUUư˭Cގ*,t?(h7{yUxKMtc{bq🢊q`m1v5lrlA>AU=yB8@wKi&b4tRQv?tKE"fUԀpݩ6Q+\2c)Zʈw$#XA,mt<0.2)FA/gZ#3ѪЩ+w_D;YU[RʩY3)Y%-G #g0Э8/U*]LMbV%I2ePN 'ې} yZ|~詽XsjO$T8KyX l!?R\kg"Ġcw*ȠNye٤ԷۅdU-g0e&=Pu !["#|ea#]o<:FֻӕppIk$me3{⋮c0 ՚5s^:ʲ\uw&6`zaYktM!1߳v`PV=6R;hfLx/@f`[ΦQY։]zx=dUkM|>5;֣ K-|LdD1YɕSd.|#_b(/x'קՒ"z/BAh!(5n݃'UFŠ([{9LHEY#mS HP.m<;0YS4fճeq:{9Cm)eZ H$xn#$WNTGg "ZnD[YMӓ.mx[PGEcɧc>-#i),XRel[ݽ(e¬Z Ӭ"i8,S]/*h =ȢE2gOi-t=P"A|c8M_n^zsf ^#-o&Aȓ}yEhإ7b] ? #o颇 ~JijGq-Am.ClE-nO͉2J|ܰ!+GYX%_9ITCV8GQ1xeڲO`1sKDY=Ԣjg_ȴ~v2o%ڶ\cF扬b)1tRifdHw߿_xZc&-voK L9ka'4Kgˍ-M4껾g߈JFpvH\m![l{'q猦w~hgzjeI; &rn"3IUZUtplJ)=3,z":]Ipg93D ayu4K- >;g!ުՂf{zul Of`Y5u;7 37a+[L o7m XL:;4#3OErr8{92F4$A'jM%4&"'7dM-# Q}C={o 9d Ce, )s *C>Qg:}Ɖst_WsR?| o['E -e~ã b|8Exm9RvWg=7ɈvW>1NDj^Rmc~L->l*5T4Nl᝝8TJl X u&12`\ rѡyceޤ]&O)ǩ[E,vg%o :Xu \H f{ X o//~mx\)h+n^d!m&uF<;DqTjJdh/C$NY $nz>y_=&)%N(c!0@V+ DA5'>xGLu;ws~b$[+⬸fgýAiHA "D4iVQ `<ZΑ 60BikD+ٙ퍱-gyFIGo__^&'Ӏsu,ҎhN 3N,PL7ӼTCbNC*K+F7p]4kIi4IRc7hjU5}4nߺ$VD7' ͨV]NE#W,/`g%3lԸ"с!ΰ$mYVe?Dp8,{-rnھcjoI0<_tqOxJFe+Fr8_)9;jw]^7lk45f/m٨L zo~{ety8,S~LzFa#D5px718_D1Yrޤ *E]wnC='RRZVatLd{-;vs%jZt09ɏw/`e*(c&jGNJ7 NsYR"t:^c^Z ^́A9cknʌ -4-PV!>R L G?lw6灶d^%|(n@rCyAÂ0 l4~^¯*;{ٟW\J`o3AZ$'TeO81ETNpkv9(o/^ddV{1D!D0xh䯔b:/Xj",E6g3QT, 1St9ljЖvbnW 0D% SqT*S` 'MPDBڟYNa>QuzSh8r!z|72n퐳iHk>qkW] {#,bMPC-5 5+g#N!q/d,?-tbQ j[^lT-n##㛅- eNɉE2$طnx0ޥvXc+FH%v37Qm8Izs鹮!@(?(%c -īŗz(MZ LX@&yJi ;mrk+mX[':CFPJlrIUo(C($y`2p]&^vAieYwvgH}u.ה/JԊE~F{#晷j\eT QO&%)xu¼wK;ĞyrDPl7%Rm:i!>yKHzy,;u<w#<{T?ڭ P $zĕn)"1\;AM"Q1Ő|/W.m8ixS 85MjO6KxZ O9%J2zFNtBk>  X(͖irf 0p}&8.tg"+Nt:k-k5t*og ߎ4?++k`>KLX H8\?w~Zr4V8)H? 5c;uݹ"4U8*yΏLzAVCPNwYr謸q_2 xBOqqqE岋Ow7i@a!bgKe,^QWc7 F V+q 9P=rm٘CLaL.Q;4Ob03f2νd\@Nsqm I Y݅~jG眦y kE14n_)krAxL)KkjSkŌUTr٩g:yd9~}WYOLZQNI/Vw?p:< W([D٤ dVUP=c$f? 1e5HJ? wMxA v 8("\IԸ#8ڔAs p# +$*@DB.P j /KBa>hɪtZ1qd˹]}I|/j\E_G7 E$ofF gITm3[8,-w~QŖMuX>T`ú*u&`_9X;[t#YF&G']8?%(p`g1r߳Ry|:*Cna4s:}3< )֎ X_k7(?%5.Fr cPmh/\>fN\-A#YxyE5w"=QeAGTui$[) ٙJ`g8Oٸd%rq DZU:h@"RvzEc`q u2v>!rQύ1aZkDžD\hNV?j-K$vVi~^AUB%)gnL1܅mxpv%WQNӚf0+uc } rm1r8+տŖ,ˊP^h*7=IZmq|MwTrx>b;ypf:m|+*k"M$.$:Z68 Mmx@o}.[>X&5Ow\hn=G2N%|FJyM߰DY҉Dv[lU$bUP䍝2fA2SzzpKC %qD?8FYS9퓱%ܪx{be;ovTPx+Q}Dl/8LB~-V[Μ)(d(2¦*/Ň!kd\͵TW35{T5xl=nKɎź3xB6 ѧPOˆ`N6hGXey`b& dHv)F 2ANSHw`  Z֦dgcjNoq|et~Np]<S'x$Й+zѓlZd D^3o_&AЀeDO؁HLQj釚}aAzV#BGÀW3pAnDZlm:uI4Ie%W J[:BQ!͇M..?sK 2ll<@*H5.y^ 8,6U |x62FgA92O,JZ:SvxF|Ji͗!GJH-in҂7KVU0_?#:l/c(* ?'\a; 簌qv\#"dnDuT'+"hMHcI>NPhi2/X%7LB#jPowv t׊}C}|=腖#2{g C2{qNj92g <_.À=nYy6Xa=RwNx*i}Gc_{ϓClZ]J`Pxѽ(\VYJ HHNT;$V|A8N䃻y=7efʀ!l/ 4po]Glj5A!j؜hqPFXf`/Qx$>2yUREe]&-=F fVU̵9 8[P54ʈ*'?dbÀtp;֧8ryv=6۝eszHLTۯ,>!h_*'{%gxC>>m1]!9[GǪ)woo2U'ӠZ_|ӊMjgJI⻁&2F̅@n: fn|T'tY_Z 4!9]TJ1lG4Q9P*a4ėzJq;+kp/L 0( bvYqL/JiAUjNAѓDie\e2mՀ7L'^(Y+} yp.Rp %#b bĜklVEY qYQ1L80b[؟Xx_?~O4a"E\S΋+8j> ]PA qDQb_Fzv> ́g%tc?_ #"dkWkB4ӓbR줪ԤX yX?ν:0 4O`3:pu%rO8Z)7oN8=;M"Nˣf6Щ9R%@W)4mYvȴ֦1B\.+M8p"IK>}"JBgl{J|df,To`v[j9sK#1U/y(=)3n[y*d㜘V"wtdKLhёnx`(F !&8! "Ί(LV5sje(4 paK=&hn{Q|Tg^0* O]t\oEKw.`#oj=~Wp$v0Q?H!{!pgSoB}d4 ܺEqNa=]^rM:]Jm`_F!%3q ^[N-;04Qm&ݩ&9(BI"Չ(jy<Tl F?H妅 E+d*F`TlY?j)zUWnhbofWnq*Mͱ_`n>g Z{ܛ&C_P^!kBMfm\oTLAudUYR.LZvYϧ>=m2$1vݸ"y҆Lϵ1m45Kr1֝wϒ3fng84W<\=F]y=A-0By !$f ًNm[-: /a1o ߳db;ԥ9Gzv%y+ب%D;e vK!-m 4H`L?Gl0ϼfD{mqaV &^DҞ eLnĆ 2y8a?+eT:|/qY%0Sj`,t.^\5YөCtM]Qc =fut= [ 6$al#P=?;xcB=G8Z'2UE_AG=3(u=ʴXs{)w,Ҍa}vP9ة8wmn6r5Q^.*Ol}bǑ$-Xm*{N^\jGB"9n-̶k>]Ӝ$Y+\|u:Dͦuish\n2A(Xg,*E(D'?|iϟ܃._Wۜ˂'Q\~s/Z3;9` nd2upyЎϜﻻ*Ɗzx S>"YPqb D*X|\{Y{Sx/Th"Ƥh ڞ@1uy`׼qOLP>8 AAfz6K#\qMj,C^_ڶld='rz$ɘrΑ 93{!A&q$km3Q4]nH#dLi:\L=T}TCZ*[K)ЅCCoH&|l{B ϛH6U;gYD\>C]x[Nŵe|p*ukiED-a,RKAc@S>CG!Azd9zTP%h0H7vbT/i) rF.g*oG!߅ ^*eK}LF:A( %<#G uMh`ț(rorJcO+? l'Hغiyw.j}Nˡep g_ZY@+LjpAby3U3N ]I-! 1С$Lf3NЅtw<3ï6eSFr8E@ns.|8j'(Lns.,jdpPA >A5ĺq4"yEQe~M*QzP8% 9Ib"a]azg_-x)̶Ǜޞ~FϢFo ȩh|5/% 1PFѯ7 lՃrHu ~c+uLS=nƿsDY/p'ݼs'FƏ%!9\Fg%-Go&~d6(SalQ <&BF -ZeX$\yJhtZ>@!;?؜ݼ 5 nZ"HLiCa3{&l(Px^}!bT_wr] /^R 1f?h\CcNjOZzհe䔫Ҋk|w&9BLB$pCQ %Tܔ)#j޵k4wpAyvSqYԋi0k%Ӟ)U`h\/D2 nm@TU-GbџX p[n]tmsu"!9gv_iڛsSIQgVX-?^<XVܵIj}"ІMSƯ6qK 'ߙk o~AOA8`5}-|;n( Tp&U5q!rj'o!K,\D!s72#~,Nbu  MjK 83⭰)$09%MޯQD_*{~"xe&X? ޤ*chx5t"lKՆꀼC\z'QXVm>1g/<R'QI peEM{prE EpO #GџxȤ_*󼑖_0'38qOClDHd~Z23\3f\٬Dߜa{K>CE #M2!۵h^KQ GKn4]Lvg\fC,?ܤte([6˯L\S#f 5?TH^#aj;Yb3E‘wbzAa_d('qXټ?VNhG q?,f_x'Wp:W=H%]OFy?E K[5N~b$+jӋvcʺ1DՔPGO<P(UՎg^w-ޙOGS8cf<+y'%:WL={u.7ݵo8}B*c6l@l!w =tOOI&gE 7h+UhS`p6*x~z}јRekML:nxeRѨCEg.֟Ť5]P-gp0ҖWœQRzɗq攳*-OKv?q=W^_JXwPg p-Ά౸VpW\P{Bz* Ba>pUD@al^Dt":)jw* GMG]457Jö i%ofTӂ_ QWzjHʃcbwƚ `4l&)t;'෹? Lc(dhB( 3 -2EOhrOPZL$3,Zwnޏ[7_[|ԨsuJ 5.+,`2nXI&bZ)DNc^I#u QN-h,A+p][(2KMv<GUEYSۯ4Ka$Ų;Ee5D:e+CRY8i3(YNew#8歡`?fO(CV Y$F{ׁ!jjFZ⮫K屬4-ސ RIkxڵojrĖjKz~/ aXbJYt. 50 Sv5#M']k6{tVSS;> s )~Bai_]hR$6'өdB{[:ҺeNLhDF 1ڟ"V?YQׂ$Zq'4'޲"s BOuTcS*Sx60xY+n*|aHWg;";@9=ipe[紾m${ėzmФœjxʇC܏Qՠڷ 9>uߓ v ݑ ̨Q :O|r3_Q}gf!W$+_R"x'jjy TEī {0N:R߷bv|@~zR=uaR3cĀe!>7hGH8ҜXX_Gr@+LFDiM/ES8ݿcBdMh?%VCr+z3~l6Also$la{& dic4LD^>f&Un~^+Y4C?(LW6w~ϩtK,ȡLƁf @gxUfQc`ܑ+ \7< йBqCRSt/k=v玴 |_1֊`krUU`-IK]@,X  FxOPb4\r'/KBqmJֶVݿfW4IX/?'sa]븥e')=_ Tr 9|Q۞Y;(]9r.m0 \ˌre鎪ty& !z4> V ռE.<h\cs _}z#) !"oXzBE9n3SV6;8 5|:t}X(W&Dɼw+‘q ?YFW^[)nH`G7hr;o%*zf+ʧLMN-7}p Kek܈y ld?G$2d:l|6S_wnAo)j: Ķ峱ӥC=SJ" I3N"dQ֦qH 86Z*N~iCϡIQ|vfEm_<@o{y"? xSQ#BYwi$p,W{r:݉OO(X擀bRbY>־FY7?YΎ[7P/n\-dǐZOuEiR8Sͨ&INx)Uxq8"ƃeFfе:O [zfQZq- VE=8 ڟ*hyJ;M -BD/D̤&S@\62dHA֮({4P~CeM/LhLD1?N)@\ex]_fWFhLupf:;}!26:M=,Xb|H~&,&eQ$%YQ2\FW&j) 6a~m/pC؅s˗8)sHn9#)$>־ p '*R|`XkQY.CqokW ؽD'J}|80v3[K\ mg#Gt/nh+X@cLfK&D u']d,]ͥ.+xb!Y;}2"iQkkc'z<[c*DXK"H" BL 7n (LUkb Xonntd9CqTMt G5vI9uc߄yMdOdh~Vҫ=Xi &z/0EI0է1l-ec5IJ3 apKϷ7d>C9)c -B;+k íhղC@}Kٵaiś8+?«*H@,>^$4.k2R,vhlYZq2z{^Gr D,B~@sM& ~J8c<0ԼMt˔fWnΏ$ 3ar`( +S\w<к?+$rf#NC;lx_Iy_"cc;Eʡ+@LCG4H2%[E[nّWbwS◂)/-9~x9 _Jho=-9oIϵ iY^e w m{aomKWVo8'C8[n.G)- G5y^V{ڋoȶt[ã[c֓6}FtT[Y~ncv6Bނ+}X\߿m`-ة ݽWuNn>Q{u"MSr*F $q>{CtHfK#s52ؕ s2W̺b'l`"8wvtYCB`nlͩ8a2h0}>t:9IDۆ-dVcksו ; 90ܔBrc~&`J1VQKL:Li".q]>$.h_^8 ΫMZN7^Z8RM[Qo%y_Vmh7hɖ;@ 4؝*4y,b Q˟z7 B_D ^9_a!7k .w BIqQGVGZ7EfB(!ạf7#>wsV"E_~毺 VB5QyNKJNiKVlsl,W0sv`a]NY i=OR[ֆkqS9=:DjA]HΘ5 [5@3 ^jǼ =v}7#krbт Ęظ dSi, ^'Du 0!bCfOX)':MI0b&v!YH:>ۺ, x SVc>5w D5%sQ!wIK(U e%O5NnC]uo$B4A%Y,K-ރKiGJk5F^ 35L]2RE=uh[@Ea d +Z{ʀ3"Qz ]nCO" J6gFp}X©++J@kuคhD _K /֭޿?H[]2"A>2)'C}'sb]8'Wl% )1a+^PQ[|՘ԶB9hxSO G|Siӧ]"!obN?ICex{D5T ';XA=Cq;ZPtPT1sԝ?. {S:X C(C?;0zINe4Q~fTY7QMW$pq6]7藏W[3r1lj}< Ɖ(ַ1cV۟0 q1[|:EoeDخ ^%l!-[]>ݛ 4~Hr B@cA,iZ.8WN'{A U&aN#H*k`;Oޖ7X\Ik @nҭ>GYL'], n}?R zXPxо%s. Y,H~'<{B9wOzZaai|N-IBڅ91FM:>pqBߒ?Zތ*] BjZwFB%D9ɫuv9֟**RƝ GI *nKC%Da+ 7fM9Q3Mx|\)&¥Ҫ"Yn;${A z/Z]op8xE2sÍm6'Y'NT3hѲ׫ۚhb:9f\Ԁf-p$Ma3 Upf`y77]>7睿DWdwYIJhں{nWOl }zڬ6b*ˠ7U 'FA~oRz1WfjMA9TMI gB4xGsBe~Qk#Ħ*@*\dRi?3#"o߇f_qal2tT; )i?$ǙCΉDCr匀Qi*d Vq[_tp- y 7 w`5nSxj>Zg ^MM-XjFo3 NY/ǍYdudӂU^vS'7|({YX2J"#k<}owQ;qI$4b9 ._+cI,eҤf-rR$:;'p{ A>P '{M(.4qfpSKI+ )y:pei pfbroPoUjѸ?ps g-gXXYrrNL {mRsY9L"zZS#W ,˲9"9<(FQ6}Di˨,;dyJТXwjБ.Bμ,ghm:5Uy)J07ׂ3Z69*KN o>ex(qR 7;]k+T_AEiip7-hq}:WY_qRbsC -,݊IfFWA׫͘𤜼AIYi|"*'@\nwLiםC+}ˏt\Q,!HΖH1P:r@eՒSva@SrϾ(It\w )@5Yp?IDgA8[,FԠfցnA|,_eq6ЂXgO7sji? uGTKj/,M 6vS*JE&A\~g|㊮lrG0_dı [272 YUg=cՊ;#)+cʱuV6p_^F%TKfR17pqؾ왿$V'3ޣF %%WOڸw~C]OEbkwR Qu3ջqoɵ,*jXN#>*Amڅ2. Đ)rA9\:?Jb7tTq@4Yn9V)U;=;6xY1B6`E+vZc޲ɯ{n/l! n,.Ygݛ/Ӂ h>nW兲d׮HfYɬr—rؒ;+qGpq͐4i59i"e ELd~bne:R)o; iS+qXoܜC͘ϵ~~eSQ_ߘPQ_ȦϊNO,Y|{f`*'E+ ?2T/+Ӷ듛KD2/AY%mqUdQAyD4N҅/o6!RD?!]p.?S@@=24b_grLr#t+o/űXqX,%(|zQ U1g !"ka?' ;R6Uިp09֊MWT^b}Σk.҅dNsffk!TLsC}`-@XmQxKehq.m[ǧk8UkvHIߍriKǑ>'tL?:? L[h$7p $,5}!gVeP7]q4jSQ|]gb 0{uhHѐh+/:7m|Ν?GG=v*/o:j[,p8GH 5sBYr[UQ]$!j˺=a-s'Q5+k$<sC"cb4*tmh[b`_ xIڣ(#,$>&7'8!t&ma|m3g .{pi!@aY@L c@e_~A,{|1ɨ+m8QyO_a6=O< tg+.5z# sXatKvP7;Cca>qJNEULr_=P&Xޤ=ԶcX˲Qhj8UDyzXU+ٿWa#Vgm)"Hp4yD?ZBrawyUF(Dg;fC?98d~?I;&7|vP^^KUN P)ZCK`GZ@,*Ȉ&+tDDUM^2m jV oTS;LIٷ)(͑/vW<ҤQt^ǚ^QN!7Ng5-f%(o4XAoT3=ʏ$ Ϯ0bY[6fUsب/f#l?31yߞiy i:oIM ezb#Z'g4>`xIʜ׀6eŕ^N! Ԁ1-x( خpC>'d1h&Ei<&4\(q[YobN7Gg34킀UMΆBՊm!Uȝ{; PZJ6/n}_DAfM rf68Vu$Hv|aK ;ݿ-qKMo4!adoT3Y-ʢ>IrXq8Bcj~M %hӶz8~BA%? ƥ!쪆JM dlGߺFdTkR0MZ-]3C莛 \+2Y/= "i *o|L(?iPGd!oS&&%3TA#@d A/H㇑b%dS#4nY0BQR"]dV;Xnx7&){u^ <@fGfe} QЊc.\-eL=}C6$4Z5D*9;qT, EpToٺ[waucO]*+!C1Ir٥9Txnc\tNf o Egr+{=糿|.`ϋ4gRD.<^|\^N,7a2>è]þX|rΗ/^$R,^6ސ QE6HOp-*CX7&$F\z9A[I;FР+Fd6FeIP)g+2/1cvj ݎw]Du|#4wEEZ^T<Γa{C&O 1y"o> OaROfΘ?R2]VU-OVܥ% +k)٫1am0qI!Xf>3˷aYTN_ofEo'G9E{Qm8q SDRch. ecQj{M}tV#icDm!m<.ߘSs_1Rg*7)j|ܩ> #b^!-?[*4[8Ss:]V<]IZ(AzPMî(T/O &+:},v/}oy:XA'] 5a@F0حVby+oC\4. pTsŲ-%5AۏnϽn#_&oԨ1Uʆ_L4\@wqlaV"ΎBAtÿ쥠f i# śV\fCړ /Go~`-D*LTi㺿3vc^ЍgGVY] Xlml=H!0kՏ{A'hkRf7f +a/e>31KcL{e|ErV4 ^3}8JF{J/͢MCH;SMN(J͊`gJɢ Ι}ȓ0`6U^׻Nq3wS *ΊWbE;;&@(Kp"5T0$Dj<%C)'Ap5Ao^Q7j H4E j.&oM(hcҟ<`:'br62 D+3DFkDR ?l}@fMv6'bK*\qgQdm@A*ھ:wsb/S^/;C.W,>?upu$ݕljCFpTu_'8T%gȃLRzgOr.G))g V4~N$Rdzu3w+L0];kw2 p+Y YaPo!T(j{+ p10st+uqp[p-GgGh=c , nwpFY˱]pD.'u 6+@w' sBf@:-qނP3$k@*c>6I/,y!uGo)kuoxʌ~XFgNR0,G XVo߬oԲZ[j`X+Jv]U>;`=)2 Ui&4_r>} ~Y^{RJGXʥ):R^خMȝ 9|ҝ窝YoV 8#*u;uDx]jAB=?> Qlt2HOBQOxnF,tjn& .WL$OlEWpO/ AII,]pk-Ǚlm@m|u'9] .^2NIrtBk\{~ FJ.F3h^tG ׮n(<} T(:| H jwJ[;aRvoat)M>doqA+APw;eƨ[#x绌X Fqh!P=uʀ㨡CZQ*Us;|y7/ KN3A)5Dt㋐#Xx*lt!!hb-h@%ʘ.c^[$iWOᓠ9v}WTJUXq(T(Sp;aqx͑8?*>bxHbK*RTI"' ״\C}rƞcm Gݻi~% qI~u uUR9pUms}MDCIoB//U'G)Qpe"60ZFϠsE.@aK/`LR3IY(Rń Fh1>ra@t+ uZ~/mM4;ӯ<N y)4Bpg^Y-蜣r:{ ?rvN/{a~c?*x\d חvũ*Y؋?ݢF$D:eޮ7dF}ӦaݣWR􉡍FL |%kL'ζq8o9w(p,FLDoiF>N|;&J/1Bz552nd mk=6O$?}-KKi-_jtE8Pm裮 xp"e37;欼6eGʺdL%+]J?HS ?</yH6E`-ũəuPc;کGbtdzKfuHd1t e`G=~q[{M]ڋ;QSU7͘bG,u >GŴ2y80+X%<=tU6? Aj]Fζ&6\%bNGͩމR8,33ZjFWj:R;'M$F_)./ý #jMn2M09cƪRu1kYq("O5W$ϥ~ 1&nq_sÌL]uH9lﶹ[1EXj:r=d*&:Y@51ucڅpVn(|_mM@??0+BU|ZgK`u05JP)UԾ5G) @페1JM?p9F7)s%6ЗA?XMN}Qgdt%Sۼ@7־hm;^41-$K^{[k7plL4MQ1f53du~+yt EΚ:k_ep )gN+nFf?uM9U`C$͊ʲE_"ܿimѷ%zа^,Џ ҠeDYl?2Ūg .` PkX k[:a‚,t{ooɢcV_zxO,NJ4)7$q+}8}B{ȃLւMszQZ pl~و/Kk=rk)GR=ՙ7QJf4mNcFwIzg횏5`QEқ]>ˆ;'(x4۔ܐH?$fʋ!|T%4u_Oc񈂝RoZ#8uc6g3Rd26)oLjPp4cVOloҞ؆}07z }m;O*(w׬*JЯk|>Z'o뭾Ps )x eoS{Wn!\ )ݗ@=_GeGnL@WDR@#/I=:KJ~_!x!gqUT"Y4N T}@+7B;MZDWGuLo]1޶~o /yRx zwHMm;Y}Y E4D}hU5hqFMguC|ȫ,wŌV 0i.#;g5B<UJ36hRKgyl kOljѰck6Z_Gah YA밂e}["f Aڀ-_C~ZeV{c~~tP\2U&Po _>$}P..JG<֔qCxOlCvX5} "$ƅlja% +6GOeU=#1z#l :ph4/W4¹r(3JJR**~=V o n)2Xbt-SN,W)K,< 7+Q9N0Bb`ݥRv 5q0PBj_4^Y;r%!ꡚ33M@ҭKl_;oLm^d O/r(d]HԔD?UӲ(S}\aO,g8DsuL-C;V0av܍ޯI0;}2`⠯:[WˍEv1IvMh '( i$x"&O@ +痋3HA7 7 U+$1lٱ 6 UQX+\Z7 ~_ _lۧ[uoġ>HLKq,&0#s-dFYEO=D=u J$"Y߷o/ .fN_0$UAJ/Jڙz\yv G@BR忁 sCR\͏cvVckJ-@.锼r7YT>ݙ>TSmeB73*,BCCvEeE'Z3Af6\صDc\R MoX9scZO*jk;1 uB OPn}N [ ~29q ʂ^;W1jK},$(|Ӭ% @u *TydLnú'}P' ! pk3/Oa>sŌA}p5FiAw页Sx_셏l%U*8$?i$1 ͖xA%׬|\QҠj;[!ԹjPDR]*.JXg]#'ۘ%躅#zv+^5<)髊1 &VEZ}1b{oٗم5ꗶ0+IJmn, +0/VٌiwZf tA5hOM< cx p)X!| rMxN}1C|/%+Xɏ ʽ WhfN6J7W]jD?x=o=  wrc#>RI]hY UB&VZ#9M;ol=a&VB-/ovYC֮#,FNblԠ›Y?UYr,k<$TҖ#eN,'xq4s?TI .Uvy`李O*ۀK6dD }G [ۖcd{<(Uy0!JVnoli Zr~ b[Yo?dڻcϭO .TUCrE4)ciQ*BZt _ӉY  Qʭq.ڱ}0I<T| '}Z򭿮py9g[nL}(f 2Z0m ðTaPw1]gPQC§-@FQF=m'> }',V+7Jp 6ڲo)U2)egJ9?OiyN,ׯM쎘ZBMKl6<+xY/hbHmA9aep)ZY5V`#8:hQ3DпnyϏ6r~+v=՜~[C#,~sHah_Ej43{0Jj?t:6AQ_|f\Bֺg]x~=&1mFmd9R>g5i<PKٴywGxes֦\ cVoqɶ(xOZ}B62Y4ΗMإsRΩx h2u<9\P**~k?^.ބ戴)?+n'dM%lK + = r~Y8r8lG"gzi?Gk1^ťRFg)o3}i@Mr1SRύ'A'FHj"QeS}C&+N̽q%j(]l2+%h0@L'*e$#wu%A%rKfptĤ+tB2(< ~}΃K27mWTJz7l;x=Pn*|?O6%pik\"Zr -rZ[TWuTUK6+T•rFنŚ-bnG sٳ6)vGV75~dpgi8nRNjj&xA"dB2}8>rӞjjT(܇H 'AXN?O{yzR\yӽ(g'R՟(T2ڎ?p s4&I5qt] tjسsx,!lR֢(kڑO4fj^q:0}hMֿVv c5s_ kC= ~}.%&$8+e: :0K%k¦U+e C5uJ_jQ>,ѐS>Kn,tyԅIi_jڦu(=tW:<OrKhȥ;`Г}py4Ԧjb>l:}Xܒ̒^",I6Wz 5α<4zff1Vˮvfi%͗hs#{;dqYRs՜4aNSY(\;B <.T*VJ,I}cIsq&3!J&Hk|3'|HQӴLAZ>UCgd>\53X7fu/y[ġ {AeFߣ/7E2ՐTY3_`M n5vtk 3fo[ښ7;eJ:BYxmt 9F΋e"ARܛJĦK8,U?*i4gu;N0gY=̎BTE/OmwdBc]2c󖬇 )Hr1Pl^.HW$KX.:I4t 6<ٜ#_/ /dĪU{ـ}j9dکU|N~߱vkK./Xʹ/>47?3TbX*CɖI"a؏eXr6)&+铹g q>ULyUGw))CqB`cnёA ,nC9 `F=f=Y"^\֫~['SH*GrJ '!=΂-d ^T,lde1V }%僳\ 9;;{YyfBμM~bMZ*?,FL7.~g?լA)`tiSbȤ7pJ>h]n=}T'?nv1ɵYL~n4P pbxn!*XnI1Z\ *YŶӠ=^C^%c8]2eQļ8W$nI;S`F$܎v Jm7!]."TXfA1WAhF EcQSv=$oŢfBJv5h-ξM9H2':q15Kl]b%S!ӤL V{~H@t)Z5=(a;HSտ1Yu$G?M!V3| _@>Үљ0,}TSsx| p@`:LU_+-„ksmKcYԔ*]XlWG^$t{^2)LPAsw5 #rLsA@ bf\Yc6nbB]E&Ox"RD!ozwd [}hWu[E]ZD1t ` aO:CD4"Y9EU bCLzXBc"݇eg~I+/' QBeDh5/ U\.}hjVz6,G;b9yhXb>ȋt3^<J.Kq4wr߭n6zъa`? } dj6Ί[Jͣ\GEPRh{A{js /E^X;-Edg @X7qI!xC>ӈ !,1_{I52@|T4, v_z>2 "()TJ}; v"]Z6 $)J^ُ'4%#B?\5^PKF@ BtV-(|/ Lgz`En Yn# Gߒ 0+gu.@(ʸyOOЖSbuhd (S33 w05G#zx(X,'8E C5'Kɺ!"p Ggir4#(%" [RDMT[tЫvlcTlϔ^`06vjc@6ө7V-Lu#o@>CǠ&!tWA{vn~Ui.4qiWO sy|9dS Pm0-vגBnj s\̴Hv;MdM 30>y֓ڋ@Di:q!29.I3B yn?3zYxtEp l@nā=/pbzC*K<Dܮ pď~OzV3zv5۳)}QB`eM-/) ܪ~Ē5]w/<7)ԒBV4%1>gFYZ qʟHxìkˌ@I=?YL_6*HP+ 礶pogFU̝i3<5tP F` YnQh_쎀J{ǝE2W&KwK/,ų{vm޸uV̴Og%^q=>RGnq߉A32pO9c,䋵#/fd01);pB̊87ܽNd1Ҙָ #,}5mDѝhF(遧߾D|YUs{qLUijL l8+F; v/W:fΠVπTBcw7:0`LF6D]|3 ȝpM\\veu<[Av~ 0&W§iu<]gw+.VIV׳q$'~OrQuIG9>djFѦRs7EEx¿VZR(0Τ2D%V?YBEMˬ FMd D_FTnÊ<=Mra@y*!W]ґa3Cp7ވ (>F ];˭3d ^id GGW9T:;^T ݥ5@/0X# j8;~ p6oլo'L>={MK|I.OJ#+67|Gd!gY8 ˏX 6|?iP= WqŎ2L8BT>@÷]>x3>Ibr* y۩~=lQ)fhuss@6 _VQe{xw.^%H::zK~_BEb"{,=s3,fK+·"iΘ;џ |mj ,r|+n{%Q;Ɉ6w-M\Il7ktVIq{[Z;J:M%F‡iBoG7ҼoM?s۪GPVBZ`Xzu1&ZWޥ#n2J:ɕ7[Ok0$rkl+a[*-?A˥zMO›W0}[p<>R3'3*dÉQ$pQ=iBZ?ʶ^MW:c.Dvh+,gS5n*Qō}%- ٰ kt_)Pf풖&R@tqvcsv W1U] jn<:̄Qb̮Hp_u{ۆ@#ˡ.YdYE+iWT0G2S[@DkFƷ{[Ȟ2'Dd\0 0Lٜp`8LfLKeU 2=ͩފۆ8eNMb`J,Rw p=pvpZh]Ywb.Q:tSA*!Z{klAl@Em; y< ;䴣;vR܈g2Cd"Q LR@]ߧck96o:tIZdȪ".̺ @> ^0ޫ=‡@,ã0T("MT42JmY)PY:W0ʎR<6'sje+f8k@֕l䛉Y9bO!'ݔi=_{G0wh#RG١游J*;ҿ. A@ S~ic('9s+SId,c; Ťhp㝌@b6l~{Lt]6WjpժdO3#ZKeTcq/+4|gHB%* 'p 0Pc>0=!)54=μvAw Z hCw3-ճ%UqlưIg|ɬ`Qф7|Uuw"_I%@ ԫ*-_Cia{i-(WN J5@QPqf&@ ԷW@s9";9o0:*쀥듽my},l!C/ȐF}Ě'qҌUHIs-yX/8څ_dVwfGOe}3,!>ߥsOZy+4}RbSҽDI ]iW+`jZc|0PJp`._SHE8&1wDŏෂ2z+I)1@cb.0u˜$Ə p%̸:_ل$+s6twRN2M  *YnI,.+>Fvlc*WE#_LωC")m.ƪREAҿwJ 1@XU[UByi_SnO)Fn.>S/WvmSJя/yFܞl?t;lZ*i 0?=Z:Z,u'l{3A*wYWamYI|DIT;towF JL|VRQ$oW7.&!Zd5ZkBɌ#|\pܜQ@)?q&Q8hSCWG5ILR[uTdL]Q@o y07G1^(8̿'ub½LB% .={Cg t.zz޵Q e˥JX>ooyJn)=z&glӲ}FdPt@zDe3Z. wm Y{ExV;zAib.|>k;s^܆ҙv5vޣߣU(9;lΖg~фLSW9T$1Jtot6 G]ټI $R}rrl<^oglmg1>.'#+My1Lڹ>pIG1Vր{&s?=oP_8r-^`ؿޡ_ʖpw9ًP7eS7Ű[nÜEz, W'9,CZ'\:`9n*x)d QoA}'"P>R6O&b4:72WTvPM⪋kR["k[)9RĒ ^NC>F~[]Z񐨄(qƑCoПq4TAʵ]@3?噔X@~πL(P(EӬ8TO4EǾ\}~ӽgef?7,*G'AEoX\dV[MP*а=p&l^J("Vӟ5bz1iiM}}( sR"^]934/+{py5Z^d"k0sֶУD^ Ȼ7 ?14Pq~ls[/0[H͇\>#6=U< swnK(!TKB G]E!B$]xa' y3LS*GQۋ ?sPpoOv'Rt)x?ȊK`}% IHY?/KDiRń'(h'b@:4o8qcxGW) 1MJt@3جqL~3 (@#f]42,+KL^tȤ치<@h".ޓڣA /{ ~rz7d&D x!Np]vox{/ɩ֌ܝe7>ݤmiͷ xՐ$[g|#)twzwRx5`i-SOQWeIj /[ҹj9pڼAؽhvY`#,i}rt3ӂ*ǒ>tYtjԣ!mĹؕ3P%aH+ggc%6LKmg4,I* ;(0`0tNYZhutKv^\p}KIOLX u70T4 {} D+fVA}LeǷ]OgsT A?9ϖXuzԃnlE:Kz W t14MƮm\Ņ>Y<$v!?o2>آޚ(PR-G<7CWj? 5;MF"^SJ6!Cmѝut ["hŋkT$y7ozkYvGҷ,J 3/ɝ:/J ص ÎVkACI`Bn|wCDRRe$] 5Mc|,0P[JG$>`2iyh+hog VFOzfpÆ .T Ȧ/ϦW244e|7ґ=a ^^!sv,}):)XY﮳uз΁4K)|\!_ 9r'7d>+QAzxwBMS"1 ă~-z.MA 3z^B3HII] mzT_’S6TTvH ~ h\w7 `e*ZfV ʂK[flA"jLf0xVQ'n@OjfQR-2l. ?+M')z>yK hE*fRy љJ22 8)Ɖ3;[NUVv>',|CxKwnHg&hOSFNlʐ蕼ɪ:{GSq\.l:6 `Е8욅I(Fbz g3 )q~`w Orsh%n.5oޅ{&8%VSzzkbʅ٨#>|\WT.SUR=q 1tH֖xOfΏz<&DE:8{rcZqB0ƞU-xv,wDx_wӆlkIծi:Ʈ"a\MU$SqM44*]͗w  60`dEh {N.m,c_/YƲUȒ'4 |zXVkWmL E ups`%&\}Ri*cjÂD߄Q\L#R˼ul*g36a1eN<`o\ #T!s.\W5+C۲+fXG3-5l`?\/ƋH _}gK$ - U:&bsiE@nU0/#nLd[RϩRS*@6+#/{ #q,TDʓO +|* OrMNmvY%sw# L#4{oȘˍ7

p8 =h@KkJνA.Op2,eQ&^ 4TÿQBztܳL*Ga{Ag*vH6@&2?q.)>+l?3W'Wi#dHS|>G2\IfRX X4/%ܚU-(w.1I"j+b>rO~Eo!#=Q61+Uq".!!ZʽxG8Aϼ8^S]_Xzl[*l\#*OĥR5rq쮶QFV2CłN!JdYp@x#'L ;]Xj$GyϹ4pzS@/8S (g lƎ'n]qU-3hg|l/bo'2H?# J?Ȁ,^EN2hR('[ȞU!tD ,͒nؙq\3?8U>eu ̫}ieyY4rl< jKrW`, 4iT(;=ZC'-W{΍nǶ5jǞ;pחJ+f >Q JMVxm BLC&v htL}4 hϣ31sA.Dq3d獨p6tFp}  'A*js XHp4fUFrlkE;xr% W6>as1Ml"g{]_/ںA,?`i(AM,a2|02jFhiʭʹ2+s2{d߽O^zI!? ƝEM%/ǣu ξ )f #eaA*K?#~?ɻ`3.b IBe/*"DM'̷opE9>4(jE9rFϷOByu\G kt&eFFt1MEbsN3s\J/ĒmdW׿ۣg1_rm 9=-u swN/$3i+'QIgPӭYSgPZ3񢈂۾Rz^U_>hK6A4-{UN' O[ywn%eK]e [ղ44t5ܞߋ#md: 8qոz9rcXQߧ]2 R}F5S~ω.3^Ns-SZ>KĿ(iԖQ2lqc:*+@/B1(Ufifd k 0hR({Ϛ 1^J w+6t!2+V;-A3!7 0+@ht=mY!{O;AyɛDO<]Hî )pf$Q/_AFh)c"zI>㇫ c6oE]rѯ,7}NScvQ1 ׂo {Z8w㻝*_*4-))B$/ mˮA}|MaXCQnN̝E2+_A lq{^$8 ~Q$A 5]'Ջ ":[XAèZ_oV$WW7Ӗ? ss 7睯_,IaWUS !+b 6n@@Taj(%;}dω2k *v)CYLe9{ckBEj >7wN,;3::$u{6I(Qڂ/Kh ?0vѫÑ:x[` \ݨ+Fr_wb>8$0ݦpei$=h:4`vѴԬHx"k8MH%r/W_KFSjY>TځlaS.E/lOқܩ6Ý랎fb CA'd`#CӮE p]{8xdW%hh~:4(A3ܨKVMod2a {QPhE䘍~QS`zvQ&S&?`4T.˱/x_-8c낇?,ܲ%\x!=d,r kN2Ø]mt?8 E1][9Q`Ǜ֍_I vJIW;#ν1 9?C2[(+R[aL ޢKBg(UW˱F;Hkk)9c]̼H0_K{`@9]ea ix^_*G\*{t%uNͿl˪Y "O;TcM Q^.&t6?dn/{!+Ww+*0)Uz070ԏgsLY=#==c>oHnh~ʓd&7.,P9s)ӸrACv#X{U7X9|3 ,.qgarF=2)̱RtZ-sv,o`Nȱh zyx +\ 4E*ל!՛WE\u#;o"3`DC=m9=k]E-:ty^=VLFK," ܫJ`DݝUQ5|/OlPumDŴ"լPCvh£*'d!U3"B0s[m!%w뉾^]!:72*aA$_%yr< \ruI9>!$~TvWko'y04ܜjAW3{*R!SBrh ՍO1Z,f|UՁ+ hu\Dwy[@دiЪPpZ&hp6n­-ں?<hބ*&j) 9C}(e_"w_beIJ%}#hĞwkG-R]= W';^]"q<~4ӌi1&CGMYp|MdA4Z72f`N)KhO^<C}Cyx: !b \z|2j,zlںVL/,b`DgRҵ m]/uI3mޔAHw]٣,Y1'W[hA^3qA7׌CbO4Ԏ&w?y՘.\/$G+1&gV'C,d$ ÂqvMLeF RJ|$TE35T{j_$=q FwBl;]\NS;Pu|+Q3pn{5 ik^%)f-ٯP&ⵛk<<$f KCy*L:wD/&wf (AtEĬ&8\7O%q@C0y22-* / vt(@8[kW-9|wx3}4Q![-{Qiո -|Ό9U-Lڎ6ѵw~WyKF5s:g&Y1-x:U@)2T#@nmP⢼FV;{S4gRDFZF+Vkġ\\͹ 9PPRHB BJZrA?+Xw4RRpb6uv)GvI ~Ue㹹$ Iά,FM *A 6jeGE2/y%NߝASmeses(}JʜR&k8=.쐯|p*$3͛ĂtA&671\!HqD 'ji_;3gMa@_]B"Ȗ_ C;@HD$WHrTϯvПz(`]̎1wQL"y-b?K_ ΍gU! ԣum%6;escUvH yR/ii4 hGW$ ΰYExjbE LYZddK95v-]lGCZ\)rqv5H51tn$-eciTϷ6j D]NqĊsQ g{e)l.]$(aQM'b`ܟjm4HVoV2'^ڋf2#*쫈YB[aG킰\VIDi >IGBlU~ cDdvJ//Yݺnٝ-2Q=JS07]b[gT!fc{Ψ;bBc9.xbB8{/^@C>I6@_tсBReڻH,uUF!3:8ֹrybU'LeؓV1>+s _:w HS2Yϴ4 ju~ 0W~Nؖ|݊qnOka EGvXS3. A| "CQl5( -ϲVS""G/"Fht/0d%n X}|JwMc(i(Y4*Z qȢ<%xN\*+J?=0V/U N NIЖ5E!src]Pk bJDІV6Y6;G Y oQT9($)(f]1HftVuB5@z^6ٵR//'Z^D KWMrsR dL6F XarGDŽhV77&=Y9Uo$w躕ck"?;W:/iM[*>I(NAxgY:" kJ@g0¢zaT]̪9 #kxWJ V#83wLӷ<22;Ba6^jgIV;"y)ZH?EMH%_x @8gJQD_/li(~zz{YlIN"[H&00AR|l9晸#@ (S%+%ch-ZoLN#+m|~JIF.M89 Ḧf :7"sKs׏)^qVD|\ڇǸ]zVXhmJIǗ)|C/`(7F%ixZ;hJ^6/Wqɂyv9uf%(9OKXp}x+AŇ9@]zܸdMU+ c7괲 J_ɵ׭4D,]Z`&aV0w0pV,e3NvPţTCbEh,0mOE'xnu]84XNȻyUSg=aD3Z-tv!& >+-ϹБ,i: YeQr,}ȺBh`Omo:~gt+fÝ#Xu~u+4'8uͩg&g(x!D!qc1X#^?J+:gb"݁1[kwyb'm"\ED:g1}5a 7_X'*gaxb)fp #78s a5fR蚴j}sy[xYMZZ&c)"\}ha 9pX"BÓ}Méu <yT^_![m9qvKc-pK wq;xrvq_lLn w6 /(˱DIETut)cg^ ḡ4eHO"}Vg~b]p;Go^ GGz|3zq B?'p &BUzޭؾ(eDM&6Hٓ hOsk 6YЖ]פ*;X>БdJa:7s%ԥkNu4 `~=3j\N~fN-5Lܓ""^w9趞&2pw >RP+%zL OsH]za>+m*5o#:9~a Hs'i[5aQgcB+hC6 %'*!exدkB^}TngU uv kŧMky5i_U@Bm1K:wBս%{ίvVLEXSQ<,A:Iccz`NdVZK+S2P srD.3f"6SҶt`ɏyO۸o4 Dkz &V`b(Hs#Rl6/X:/wћW'c_z63ay0E{ !M*ga9FI^&Jq.E9:]쯻$?3'҅i@vtߜ-57 Y^M>[ hwMoUsmx,J; :  7amBGeJ D~@5F+һȚ͊o3'Un]Ö^%yIw@5|9n gV,NHdq'#{d'x|}fq/X2,.혙 qrMtDdu9^bgkI/+ [ =DK B3*KZvyPm@,;BiG%z<*lX낥MP ,E[)@q _v U+bZz׎Jǁ{GF1*mHܴg˚ ` 9FV'bRLL qg3Fb~cp@A럅 +gԬ`9DZf . v: !LK3]4THQ(ß!e<=m{ !$.?TVQJBnɨbe, Gqb})3[굌u:U`X"St Fs'E ΠFG!u+B;U#L}:DwGTB9)fi5RWbmX_}lM(fv%Sn9k9&(5xE}L8ζwٵ  fW!2TP²+W)~'P SK3hcc7f]1bbzg[@/OjXۀdxe5Ϭf^X4M{Ɗcl =bcx-Yzy p'/*U-ƸKƿܤ?!헾P uMZ +[iIF޾ˆ9H=HVTg{R!>(-`hrw)IV Ib(8dx\GoN/<. t;BuWW,jn .UР &2< 1ɻwu0^.y+{&E[@%5tr7XWLQ3p#w$,@۾t5lqYQ}EH2+/1e ShPV W}l'brkjؼrnw:&jMX%zC;J:-w99!i,ȯIu=;6uۑ+I,f}RkM8,a wѥ ,ʽC)OkgxP䝘{`m)"|AXk̂we=b Vlxj!ho_0=%˚3qG 6W 'mcJKvw-h)ObSrdj#nXaZ rK~@kޒ8'wY0I߲I@:`A}ЭyNHEBچ!lH|>%WcFw2bQ $?kHwd1vr(",,S [iN`._ ~5~f> Nw©bHJZT~K` 0ɟ^KAӸ _fK.5g i\}P-92ɕ۠Grtkr{Fٯ\Szj+ù8wqv3-<" դrh埩uRr2~VyʂFWK0ky̟&wv!Q0Y\ [3LLsEc皾BV&rܿ#SGSkm+kX[k71+vk+-X#&ض% ,gd۝kfŲ NUP Zzo \ѽiP nݺʬ+OYtHp=H")߳]ii)RifiGUV6YK5+Dv_(Dɤ&wy:߈RPu%[]hUquRQǫI+yÓȤF/ez@}NsF?_Jr|9x։EIe}bx7N}"I#ݠ4zHTe+K0,aƏ}R)G˷U {Y\ W9r+. Qgw3 'FW0mS3^Lѻ[ NtgetQs^aO'K_vi<ץXwJsXf*k&Wfh y li1H@SekB"R6_2ۑ\t|Uj%uZ@n,ُ*hHDb;KB<8|n˾BMqUUttTi~ ͥ z=18b$fhp$`LUL^c#Y gɑgTizgVX|7 iF,pvq.i%c?vWqd:dDGCzCD?k~ ۿ `sgAOʔ4,4J$zab]@Gb<޽Ɩg -/%nY;W+^s40ӛw Xkd[zuʇTm8#?ilLvE0,Im|=ﲁ$XuK[8`UY*mogJ(U  T 2nUDi2%il_UZֿ >co4.y g~k :LpH uHZu3⻭|tGqMBn$醄[vѽ]-0׍8Ӏ;kVXG};1֫n\J4|ؖ1 :^ qmxȵ42^!]ҤaD+ZA!r*V3h珷a4!yucy_L<y,&].q<2s\a*l#}R Lnb,ݏy{_360jؕ۫ Pz1wISF%({2A}Ԣ۩FPM4#'w{m $u4/rṖSy١l `6[,q9!̥7B#V7x`{ okA1wwfr2ioDfQRNі%j[3'Bzo6H~Sc>*t 2|.+)8=1I8 P.#kBTC ш0_ /Cei 7gcy ˄0ÚUΡzÅGW9^*[ M\iʹ ]yw/t۹0"hsJ~vi@1bq`y)i2F[W^e@gxwׯ!3 ^zI汩'X?;X[U\ҪX{s\g%bހFҡPEyMp6.3ILNAYy|ZIy_gX,p@L YIg"O5fsEu _?/k{7 )( xzeW/W8]Co G:^:77_wjJ~5X]4&8S\ߟ=-%:k25E<`,%{m'd쎆!2ujRSBHmةj~YWG~D4&|3Bm 35wqjJZ9=_7K Tjx`OH EzM.!p4z!hz譙?} A`Tou(s&B6@fJ;j!-ס?&o'!̻'aYYAPZ+8Hll8g ĥV]5bn714)RGQReiY`-č>Hhcz&jU"_w|!Y`۲휇? 8^9d|mV28jَg7$Ŭ 0U^~5 9’;hk^a[&u'E?%u~JVav'UEZrzd#r !ɁPY7q.O;lsuޤM/s9UpF_#<盾݀pl|‚d2\ƒWhNz R2naQ_/]QAV &=),io:5*^EǁJ"J.yCXvN>a͸ 3O=)FSE6]QB5H}ڕuG;$gp@Zu#uݸ E3j"KGHҫ XblU#@h3t=jhU_>_MǯG/T?ˆa򖯫Ḻ}H J-2 K0}7ӯpD)$C^;~-B? e]>p˔(<5Wpג:Ohb2g$Gakx9V$Oz[; f='F*Y5{<{Nm6LN1J`FOH&M_9K6Ktu-Ŭ =7H)HP ɂ H wa(ސPh 6#=%ppbu)qVm5h $IHgYz8|YQC25G&ӵuMGas? gaSCbW?.\aQdA+ߗ*dU( ][Ohsg9Zz]:W|론!Kv,S=IĚ jeh9OwNZilVD8 3f^\@gk"Q˯U8[g2*̬1!ԿлŜLB-,Fu$aR4=D.߉nBޡaT.t d, ~(kGy{L(jLµ)пϴ*{y/BSj? R8d´qfϾb cj0sexB$CވfIy ǔ:Y]9Rd[?'Ű4LMu`8u{k[ VCzq{Adl\jK %iY{HЂW)s#x jC|d!< Z=̹CHdqڌ cUm!]wA-<?qsRb #w4l¶F˾_hXez8dz(-^ 5),=˧cm^أH鄓+D)?CB-͔~k';SH(|H6,lhԪ+I=.^ Yѩ_ْ+d[EmKglJ?֊P+\d3V<y0 .(lY %=r_} Dة\RBonx5[V.6K}ags@I5(+m+ª0 C#֠t%[a$/NݲKiFǓXz(w v9XMK ;:'2jPXd;@7udqw#U3@Ljٺt4: ?t9d]96۪)&( & (ėĄ'p+kŅB5QЅ ebWJt^nѸ!#V* kaB*=?Fx!.OLX .^ 4F.۵IQM*0]$ũjrD9t6A <ɝ@锒5;Ja3Njc0 |V|>p爲( M[F<ݤ {iXұ2jmE Vg*"A͐k*Rϛvk/q9skmҒC81@mP¨(2BV{rNܦ{# ,vIpR{8N@Yb+tHѬ(Ay4?Lq0ix2L [*ӵqzmG@~^& |oFa!WqUgS!!ȹ1)W@&{b8fPWw]`rlf pFb X9ɥ[I#`Vtg1' Sgh?]1zϬ'<҈*)`2%\mVzOUK#5B0;1}!`< oiw+GH/DS=<=`[,ƄLqi~08&jtjJGč'< "E-Jy(TTyg}Ae./cr%Oѿ+]^/RwV6ᯤEc 'd0 y-I>hqѭx1E=~kG'ko>Dwݙi O1_Ξ D3mN~/)<=XS&k}mlc_FOꁑuy ,2 + 1I'?U? (u.t_(xw/ij!>wvnTD ? ݛzfՓePd A\]xÆy=m~eA9ETng"s4AqGrXDN39sண`;+1>㐠2r{_%Z,.ib2w̱1͆bH 8͆7mB{E;~`q!mʊnщ7Ex*;xiMaf"՝N̒ɠ$Ѣp`UP^FޠJI{|ۧ̚-.~zs R~K͙`'2$93\S.TCfIJvOJ<\('?:W,Mi3jfQem\aX o0dK_X ex԰m=BzgnQ%ZDvWۋP-\A=Tڼ .gQtܓ2}pb@&J 'A«p_-q0]hVZJ0T<$긏Ltd̂ bd0Wb1DٺHEy4Fzf?RC>}IUSSWR'YiD3}b,hFz_%2 ƩUXU`e͏v"ĴcF ) -/^<ð^yHtACFd_L-emO i<wq&%\vpLYOo  % OyT؝G{d"۽ Ὤ**sZgQajúįػ] xbR=o}o&@%i.&rz儴m,952KlAU/a?_i~? J6BF<́?+uEᲑ>qU; KiT#q >aoR?xn$BIjՄX3M2.QUUnY b P ~'pSA\I>yUL@Caooe$>tzNZg񱌁b_1kz7K >ݳp?#́vÕZ1O (dqȣs1 I= NC(|{ɔ1qa~P5H}Wg̕{?[>ѢL1P{iں ;O 3}Qӡ 'Ȥ軃II( JF']ۜzQ'ڽnߪ!1)pQ ⓖĎtTh!xƧ.~jQFX/"ėVLd`b3j,$a&goh{ՓvŎtO甐Gpz:.|5]8&PhlioR|g^țe 3gĽ|#O+Ѥ+fB{ӽP' X߿!d[1h ^3#bif27D#p(x^iuv%~07))uhOI 54\l0a!siG{ӻ(RUg [)GҮ䯄HQTw2GZeLm9q s%LmMG"vh #;恘`U8'~NEq JJ2 ҹ_/5g `ȅ5!5~RIrwD~߰CFrAUMĎxҷ~}28ˤH:LSTr@Ӵ"F*$k{ؠ%J"u?(vWk^ |fvh LbjJGs_k\!*{U٣NyѰBGy u+XήxbgE͐u]FTŌp)E,7vWyfL:1qo'6#tv,;j1%?XX"܅Pec{F [hx5ջލAfLQxo|b(O%̤ca[ھ~sާ:|5r$6ůD\":`:Qx ..}Pd9_\[?:f#E)uKHH/}]QpMeQ&B1>潡nN\2|gfOHor*=T-<-s 8?L5Cюud#*Nh'E 9H.)`.YMJ;f]+=8cnA>Z0{_0Et& By{c_W+C q-~kvxC݄%m+N=B-kOZe3(DvMWͣM:y;@ 9Rt~7Lݜ}׾tZG sϐ@I6Vnӫl&降iʠ:lBU(ڄȱX~H"NƎΩ 5ɀ4,`J2q1ܓA)3IAe!#|HP,n0>"\CgZuܽZ]Vc}aGe}ZQoEKӽF}Ak-;JC>1EuM2 )XYF2bK o݄t,ˊ\- +A2v o6ڶ+p49OZ(v~f7<4&o战>2Ͱ1>M-(? ;H{bLIik=K&!8t+}mIwv\]2,zO_sMM|^ո}~*8k1TX*:ץd-F2eͿ^j,ڵR̜!\ ߗBiPo!DCr"]ŝOO)hl8Q\Ӏd/Mt" 07'VaYN u;#A&meآ=tHbVEV)CuxI7v-w,%ZW%ȓ4d & 7M_# .6DX%ONg&YS::%W3gd=X Q̃Z,-IyQrblak[qS\Eg+~26K5CR5Z 9{9DmFetJ_< VBοc// Ń^| LV{%NuKܮ:\ds+8"?|yK[JƦrS5Gf){5jg ίT:Hi5vz+i@vkxG|fIȻO}qE_ÅE4v2K8!B^+]s}Rn.SmÕv_YQ"v ̈e<3^k-܈LJUrE0t {E7NG*u͛"ߺ.XFt[*f_g Z[\&m|mc.m8- |}(~>b WБ#_0xK|sSVBB.[ջEY6'vJ*a 5*g#,^\sa b. yVZI D@KeR`Ɵ\#QHx':IH X0m~o#'2181' fS2!ѝk=E]وVb?ʽ!1 C3_>m{2@ǨO5%5pg{ !Ҟ~Yy<h|myZ".x\P,AmRIjWIYī`~R/zd Nj  vT:(@hdf5߰Iu_[jR QډB_` Dr/zmD[1=ZY4/.⼚sj)=yvjFy-AeA'ekg M*1ꩾ":3žN7{k@2W7䒋E {Xϳt a]a}MaD8^B 7MD[|2m[ eBkmM:<*vm鎤O]XuygY@%MٔT(^k}jU M1S;6Lx0_QASxp&4nz>h5BPwdfǓ4vURcoϋeκ=ƣ˳6_7)$gV h-vVF.qbi 7;iĢ2DY{E184ThʛOι/&W5д@me^.-,ꚬ,ӈ`DLS1ɺ)eKo%P!QTUWGM>{ aTn+f3ԦWQ Ԋ"$D"jP-XwJ×Im) KGHz2JZuU:٣y6@^n 4ZPij48pa$CgoA)k1FMH>x@\kV4a8*UnJL=wr! ԕ]6qOflqb¥VLsWbJ*}9yZ{7?8# ir rɝNG n<AźK-}[T+j-!AcXUrVGq{?3Ɂ4|lNIev3ZytMhRL@/JBCRM?ƌ>xY)%1reB֯@k<'៟:zIz7@X"܄^~#US[YJd '%m˳ns3HV@mPAPOib3p:B^ܧLcept؛SIPNK%Xr/Jw,3pϦ9V5S(\3inwB1l01wBOH" ݙ@zT,^CpCq&cO6 Q RZ-g.t$ҢajgZ^u[̛he~bO[w)0n;)Q"cةQi96[l8kz_IP4hT }_99ND_R p XVCy.`uVb-sqYFOaEguٍYw o taX T!BGO*hiM)YYr"xdZlOVt8FD=%Xf!2 |4&=j秩.8ƃ6Nxj}kuQ37\ t'wZ (A5=s{. - WT)õW-J0%5q5bU-2]¬7 0ӫs;QK-۱Sϩ!hXIԐC_.tԜ1/ek[Wh!6ee rQ} [A[ܛ̔{3,&Q3,I7wū^s;tYeQe=`Hi-%ԫNFAؗS|#AO r!Xr4,`fbqA4eFXnѪ Z޹VּD&8ؑ}w)iNu_<=[ hs20Y~D~]x!X} q5Ib630*G0Xа*kEjz;rMeXYL?tMuMٲ\ R,V޼*;Y,,a07|T85W@N  e-ҡO71= @_-Sf TxyB:z5w+Φ4S&.ݞ;c=sej.ֈ12`{p"trkMPE{)T;R:nuv>KY4Jhpt8=O^& -ʎއ/$YF)?J̥u>]*a?A*a ہ1Cc|S(GjO*90X6Qyi&)?@ wYE}~K7 #-8bce>b5;Vek0Zsf%A>qŮDIa?U\A9!%I{NM1Oru d5?ƍN3ؤ(F^\P5L6\oxu(d Фj {\P<|ͶrMoK๽ꉷ,t@ Ԃ4ArMu쬎e%?ܼeu7rhʆ6-˾ωIJ.Yn@kcӰ㼜/i=Sm}IEۇ(YתzWse™4rbKNRç"YwGSY%@?JW" ⻗.߆P2 8-vǛ v~IۘI Q!{"h5&Jxc[" ̌m("zga ~i2Zj1 ѽ#(0L另Wd/mwu? h/taI+!{Sry/z|S^JOY"ڜ?s>V3Y@3UYGuOa& SD?Jrٸx&9Aa u B >ʗx%SBE[5}LϨg ) YVk?? JƐQ#Q`$ȵ$WCZS=Cuˆ^ɉPb )r0y|4ZwF#7ʾ-2E"gcvv\LǒVw }[|I@!ڪ3'kySL>qUF1^VoQUԆ昪lU#>\L9K,2=%KC; ߱S{ E:58lHs*IАlj.JU fDT}C2k|NqEk9ҠCG&k2NUL$6+xE~§Ob|J?,&A'>Jy e|xKrl1-R&]4J ?W)BL ` 錇c4ˢ6/q }mI\"fiS/ 6H^B"TUq֋ͧ eRU_Y- v5~UNiڲx@0\7`ϸ?3װW*_Xoʨ ?,3D@E2|0ri]8- g~MȿH ?A X{ `)bgn"x"hDɉ9|@%7Б);@~Y֡%;Ѧb<UFq#"~ c cdT6f3ZReps *r6>1N hXh/h-&P} ,}Xى'v GwkTUcyOg rv+.{'!m1i&^>AFLtPW@k쾚PnZ~p攨E u?U0P02Q !A'(A]-bW[C+:63E%:v+獟"qOF uXz=x[~TtЯ+_$=f솩- h WEjWî+:05^̐:DC%4I3KU2g?M9O ^k7ဥꀺuTriņ2W ?UB7zt2MHP qhn=Ivt5hV,Mupc+dXb#f^F.h L veCſ',*awt3&Xo%Xy.:lT9zKtrzoU^o5(sH\Ӡbg+m>: Yz0')VJΚm5g;An& ?-fc^_|ZoX!U@) b7-Ӓ:/`7r#r+ lDLGL,3~X2@;@I0״/Y)wc{u kȳ*Y㮤PDi}wv F@ٻUzs^=|FS]#kO;y1Zi?dG#'߻.&ƈ[xXblZ]͵~5`[)RQF%-dP6CapQSrDZ]_p3ѩG;zĮuwX.Dlp@>y<sKס*<2TR2u\+-3C:tZ"zޜ7&.z }kK{8Í{7 ;+U"& Q!rkvFQb ѿ0,㸆gsDe1(e}vnwSE ˈړ|kkNOO&]N]½L@Mgj a&"wY_bZTcٕ`5،Oj:-Y$#AT>-7NA-MWI>wAe IrXZ)UORXrDV; jApoB*p2"u&V'\_2 F;9A  S{[tx٭;ؗ9s@!kkɬM7,}YXi zLp@S_-ݔ>W{(QAb5gcAΨCM  *Ez¨vK.)5:4N:")^S*+Mkޞ|i mIxQc 0tY[^ӭco v .yUjgrߍ(K~ 4auƘ:* cUL[_R iAOS-(v3BҕЩT3R@&fvJEoK{˸1rۧ'g 8lFŗZqgN|tYs6fe%3XYz6aWrԣV?ZPT#й.G躐S>y,|16dP| _+O.+f՟edaT2kWv` sG߇p|%ׁ>$aNєiMD4U ` apr^'@xWJk\8Lqa =omTb|~%XB8|4O4ll-^6ձ.IBkc BN |c1]+dOKd*@ _"*U$KOHY>m>"W ihEٞTpŒ.o/+y518]|6K̴{e2vn|kWIY+ߣgB2䵓ƉJw.ƌr80˙,d.g$_ρub[VYSj`uT,7aBM3vn%`WWJH=1D#<qVKT* {*6n0rI5QOdf)ipϒUs(RNs|7G7^v>oc~cѽd` -a]0˘lE+OpTUuS-=K֪t!u::iP]7YިR&c˸ʓ(C{;0*Tli" |)cg_<)89o$fhp/w a1dƑ =m6h`aAMz1ނ "*s+}B}&|ԩ dTxCY/%-e?t J?iJ:Ȫ8Lf?B=fd%l:Tݸi rr* f邯(bN5v陡ORv5n!qM` `f]L%gTƬ "8L$`xy# ҍ9 r8K q< Aq A-e}QB.7+0ou-t69B|G@'Lݨ5]N3w -RUlV.1c~C:[uh*Љ/=x0쳱g+ڎ "ܝ*SioӨ5k d ZWβmz7[tD[."2FElLGo 5+6w} |>xuR.{?Un !=#m\g~GK#kl@J48T@ZiB~`Ȣ,W&U@D%㢂GC e6V^A[>:.l@DD|G]t&モ~8Gɠd!W%8肠1f 7G^sA-ioX\9:jI`X74g;/(y 1cG 1v;,@/>@_V ۍy:7-T̛J9RfVXolEzyN ~#0$nİ幋}`(\6޵@T}7xjfΚ0mS@ɨ7sem<ֲ ʻf!4Ŕ% Czu)+Z !K51h7h-6r+8`PҾIy ;BȇMC-Y?~94'΂CFF?t[yJӃ:&HwaWq1-|10Z͢6!HtFÜnhw^x~֣|ٍ0+6.`oYV4V?q,[DND;HٽhbK:Ɣo.-AΑD}aJ{J{Dq( dhGm'2Y L| l-rtVɹ:zy#u}"p/B H$bS.ZYA ?]`G MJpܿaB%I$9Wqa16Fd2ғ֌ǩSxw5 ajd-߳B AUJb%h$U#hY/^DSyJ?"au@Dηg=3o6Cv8Y* j dv?0DRE,P DY]J|Y~S tfH6WS`*SP}jRʅt/lmX /xɒwpi`2IT IqhÅ9YAj\TY͜+uSFx ΂k,0ū%"uO.uc)LC7oYS /'$RnY`M^?3cCyMS M$ xkόpRcb?nhm 10<}6Y\b>a{'qdѿ6-6ɞQxtoݫIevu1uJgM&^*i+% 2[8MWFw6g#׻tQ~|ݡ}<0yPU,Pao7\tmo9"@3~aіEf(l1 6Lݪa'1?ñnRg SES 2GoOȟ9Px.*S]ܦ#ϲ;eEX9e㍳62O;x.*L 伾y66$MXwu}3wf"aP7 #rwE߽/Kj5Oӫ-5 ˴U  F ٔ+s<N~'֓)Kݳg߃9ZuƬdL6X-,"<%'np 5>R"5*F'$ ޖ:2\CF-~Ry5rO0Bi@ЧH_@*8: G˴oyDYA:A hdX/%T c9Ɠ!Vu4N̍K܉5QObFo i 3RX;|طFWjXR+XO0` Yb~ed%ȣD,?d#+yFMTG>TP[NNnڳX%7xvO&z&']-) P{T6KY.=a~O]rqk9XD]1!쵭-/s۝û܀oo]_c?Ő4^m/桪#,%W)>q*{Q7`Sr5`RnUQgwfU(z}nVsF@&>zWC6WE4PiTeQb_tG6%X@\[XֺArP-|\:{G?։aP+97X戃Lv o?4o"͜qQȻnA:ТX3e7A0:*$J-}i;ֈ2xʄb߈K@QQxip*A==rw"u N8G Gd'vTqj2Z&kŠ}띑nTNTt1nDeBsē`64M#mr1 ]EʗFtQ' i88ϼ[Fh FE7,㖓f+=:?4#4xzS_D]q)G(3Q1bQb0i,\T.V| uKҮ u^OxZS%ZQ)”g2'!qvC1ER7 U],kİ ͵Q5 ^ɊԩHZn? _mZ~.P*RK)ƣ% m{!.OsE]C M,@9IDEJ9B sT9\vYсuֳLl;vxh9vr$ ̈́r1~z\FB=n#O {Ad1 T[*/*aF)H@ X ߸ LPXi5FgvpLjpr6ґAqgOVJwBx9*H?TpQ;V5u䭣sJ ; +0Hr<'H]Z1UzXC*.<ΐE 4Iu\%^8a;-Q!Rjɲ2DkWް2W:8Duѳ)_TCS0^ \A'oO原&?qBӒ(׎ Yg^|ɉSZ8y^co8]5, Qzڿ" K3iu:ç ꧔L[r0ޚDX5ܣA{mR#k4/K-o Zy ceYPg@_$vxݪըsa!$2Z <^a:6ބިL\jB.2x(5qx_XTaB|oX _fIuBь!_%6;:R> Zm`Jo&/ Uң^%'ĜI1齭K.:v7EWLף#q}6Ov\1ϗOEa"`uu_>YJ"bs.!3*x8\|73ɗEZ($yK,P[C%1(a:>'ɯeYˤ/;_0pيW aXN:) /9]yI:e}-nYQ?m@F5h: clEI=K̶,Cgw)ic[G D )eNK$2=uo gnܩHҺ+dn}|@[= OKeq1MjTJ6Iik z I2A% s;\vT۪+q[xc;p ?'qONԄ0hXKP+_G1D$l+`E yML{5V;c/FKC4eGr*Qh)P-fE?xX tIJB7@O#|jKV;HLgXcDg甅Y,| ϊ4gêV\Og99 0h-ňp7M8X%e5Ҫy!evU[>C7'6<.ׄ٬]R] !/ɢݞrFøhH&al'hL]+K%@U->ā>rV_uhXul:_eZ6DNV\C}̷1>ieOIbiOL( &/F54fh& Q, L'W9sz_Wr)̊|zq8nJΧgoo42X3;ZQl] ]n\xT܋A{Fi4!-N]#6]FjO.~ܥˊԘk?9xgw3j1DZ3CW,֤I1.w 0LYc69fDGS5/(H;m3i'%Ac3P3솏&D/~"w)Tn8ἃ$G=u[iO4Gvzѻfl`I/c1$RM..2Q`N7r&IɕxԆxsHOz(4,*J.^"%MS@nLc#M~l[U0U[Fn'ڜf?5;(BP< Ja> Xd;e\ףg䮯o~}WJ5|%Xw)$xJRp֊bN9H+1N˖|>+bOѲs6p}K.ЏiTtXCDX/]o] sm\Kms]XH|e9:Սے ;(KxW&%"/"*M3 _0 ԠGX,,mK49:H{M <쵇9Z궲a2.#6r KcO@1  v6}mô [dМ"!w-)[v+&NR_;RGUg p cw̵Y5Hհ[ ooy(4X91_+4ą0UE4H%"k #izu u7|o9 [~t>(*wt}oށ9]@y=߮8s̸3#m팬S! I@iX2xo,y~a wC!|pV7|;с!轳:n(zmJ8$l]w$:|~a0ES$&x|%Anh IlP_Fq -. hthn3+fů{A+ gy?HٯK7O%QN0@L.x!@3n=}1F?Zh 33X4}6w6xP/! ITE=MΩk^|oKO.Jm^PҴ}iGZ=6'8'z,tRr^GQ.2zo[FZZlղ.W- 1оY >"yh[Y$W*/f"w,}/¡N"cr"?: @z<3{[~ F $CfWpfɜQy̘ "^eT5@]nӯ6!C,EaYy-p9elI*)g=Y-.# N}FA֛W>YQ4bqӣ'+տF6r\?\6RDo6!!_C}I/dXɗ{NKIqu<[yq70Zօ[G}pV`B;4߫ 0"O|GOE%7=EK_S3r[r|i9IωS̹+Uv*,:2`ɸ۴5?&:b ANavш~pj" bj 5Ïb"0x \--7.jF9!Š*z0uAyhFM#=C#;AFp߿n;0B Э^?IY xh Q,; ?>b* ~;XmAxʗ44>k.cWD@.YYϿŐ~*251HmG>$wuVe;q(RNUa]Dwxgj B:_@j*Lt&s( ۿpXA~#e_i~c?;7m f4VRXטNwjqOK"^ypq[RCҺd M%kJfSگ|q.3q"0+8M% c#n=E%KN o %Wsr O6yrj R{ޜKq+ +iOI$:^%`dXP@1dR88AĒi{q,,GdzR}īf:]}36`nwď\XϢ,iܲ~T~D‘ǪfXe%w_φmO#-#܊) 0j"Reu|՜K h&2}s!zG4=&~>j}9 ^ٺϚ39вjsHKOѸieqp]F 1 tZ?ilq&i|%&Q|șMZ ZyL26yՈHT}{3E͘u (YȆQ{ʩ:ro6f,:܀|퀖Fԡ!c8Yym nlu3]%p>L8E\Is (;,9 Ǜ x4I&1߻7Yĕq" ( : :֢:AgZQNqt~Uj ^ŢvUKwltk?)]GRTMk_"tTowLz"7plw*iZCD _4Ŏƚ-/a 3XcT*]r|:\\z~K690Qfz&JGLAr9Ole|b"?/V'iwHƻP WNBU;(Y C=[ݦU$a?#G%׮Vˉhό5 u扒]1l3.f\-fM N9ұzƷQD ]$?=􅼆UfVn[|*a"+ܶz_FU| hoKz ^5X'VPW|QN(?Uj;{Inj.z'ϴlI?"|ɳ Q@;$?N+ӗɪcn,`lŔVK! BZiMI.Tvc0qj\=7V0qP7?qx~iZ<É Ûs-.š4i2Zn"0[#mq8TR?IqV}Xyܽ'vGt7+g3Bj*_%B2HG}}2 [Qߘ@c%lOS?nsF 0uW7Dq!}&I:ހ6~l*R˩P7DXAKnzÅ}cW~P.N0i!M"LJ,dF>9>*=୪jpx 扩wrP\mŹ ɹ6r%cB@{:^})w˲{^cJ U/N]bgij鳀-F2H[gbպ/]`pj L˒[kYK Kq7yg[8d}0q3Ü8T8Ym./^{$0'zlYUdѓ@T@H/W^ {ݰ`1tKltY  ӠaY:mgjf*`LMoHFL(ܲ7/TE! EV9߫9+80C+40Ӯ/a BbFbˉ?@7} p;{Iuɛ֌h;PˣVHDzq$/S4=˚p엣,hkŋx{$!gc$m]|_ke-D{D(TD~c36M:?2_gO%,Jt4dc%S'` ^:g:ʌ,(gB ٢)-VK GF}ͷN6ia0BMYpKx J$1I`8*6e-~A)+mU# @%NKq S$!ANܤ`6@?uYJukP ^1G$޴Y4:B"h\41D`[' N pq,N $}%u['R+=x2*oRo3ܙ:xe{ |7btғfe\̽Pxx7 1–C,wg'(jB&ZI+ 85S?mD{ (yƸ{'XXYzvL #"Z<φ R,vCWF,U0+ن ʦag^в%CyzTsC^`eܻhf+jCV7 ê)DD^3+.W]f`jp$mzx@jTbJ 0Y;+m߶o1,~B ;|{`bSftY, ɮP߉ݜc`n@ֽs֡7EcTqc3X1(ײ/[?@R5E%ݭl3[!FUر` ň #3?6QKL G>ז3O6SMpN hx -5U>&&3h d'd^S̼_@p pƞ5 ˘S4,cXB2 ׸2oA[@t;^yQ;i7NJѤmnp)\אq4ZKRFnap޶ySElM"zf5p=e_VrQop?VEl5B>V{ ?Mi ǺF2mb/<#_T΁UI SPG&&:4vmR *VvuFb5lv mךi!So&LZ`%Y&=AJdeO/!Jxzm&V{,]\O]{d=5-UUMdY'z6/LZ}ևqNVj΁qZX2GpE2)yhjVzw}_VD[4 %xw ui]8饀U叽o |SS1+Ȉg aX/y!ZVd*s{6?!RJlY8NDWJk]a㣩9ρ~_|Ғ:1>d@JcLoz܆N۹ys^a!} h|Ǐ8* 캚oH-cfXl<"L ױUQ>xz`m%ۗڦu]@F9NXŦGᤷӘ|#^_N$I)?F7VYl־'HKqگwQmt+l~e {2}GJ۶Y$k`V`apm ƈ*À\X]utH_GO-2>ijy.*l]βjNVTbbf>=C:|Þ51*KȝythQdO ;3 ؚU[&f;zXH{GB$NC8wTI$ȳD\iPx$9-m&TTiWc[Fhyব_;JPJuӷu2?KF`U@7L1 ׇͯUF2wnl9 ^8"Q# ;+HЇHW;kLE%l3lkG-j} KTk̄*m_oɐT\Vn;߾ ?Ũ"48g~GHVʺͶ #R] !rѸJ[g&= HNKJm ~˸K@Wp.!!051[=y:qd;"0MưaFFcRƤsYD/A1&` ݫ5xD֤P~J|=xԗl H܍o,ԿQb4 UZVj,^БM"!cULoc"_dҒ@[?G;RU=Xo*"SьX YBNR%q 7O s,h5T Vn-s(zhPD Jc[&1!YO2\*Y΅.p |y9u:2L-,' Z 8䩬AFEN-q9dR.Q{xJ< uhn0/4jZ=nCҍ;ZvHKI ) {3i.uym8ՙ|O2K`x (W]t! /f@ϱ_[XKNkɄG89](L6>P|Ns-%@lXc6S,I+APm@{E9)]vP9cF剖@uV/_LyBnyzY:BT1qVne)\RSV1R Hf}lP){^4E`_tћ1 \ Džqh bkV<@i+{?`W|+)vm6˽=n(^ڒC9~p MЦ\aO/glI%e^)ώ3Nx^y_W'%%j],ai7 K1vb eE|HjZE2 7U: ےpxJa>UzF쇖 u$K+]=V9&/*z=Fb6 `hƃ(r;n'=Q] <񖱋;ES0s?"\  tybQ@/W#Qk}yFG8)&8VT)_欟5 jJ0]lU\ o[aʫ„Jcݨ#r}z=[Id߬Pw 3MmKeF0{ $EH?8Ƚ2Ӕ#AKM,Q|?7LlJ^B&[9e!qsQTrz^LݑYPv.@j\\D10>Á,cmێ=Υ?zKّ|!sP_ʇ, w.Qu O@3.-hW\ gB>,L QO[Bi48V 1WJeg}N6ttP1\} Ϣ&5k9$D 7N@7Lx-c?mx*?3%I(#YB?p ~s c"29[(htdGA".eG:RXBvoSޟ  =1zr#7K8gʸUrY>ݫL+1iG?y܅8.h!ݵ#&KN.tW ::#ow5N@U~Ł[2@fk9aмj;$gOVTE[Cqio*ҞEc8XԘWWWb )U'](nI6UOϽ (Z1j(3KJƁ9 S1Ğ0W8k+:I ۫(EK<؞*U+vZU`o=17b_-|*,fV)6D)P>IXldPbY+!*y)756T1a.ݪz֕$htyS. 6j`1@B00VsicG8UE!R}{ֳ4>ɞ[. t8kkhooO߾M+7W/ h`NdWfsĐ=Mq w5]S+D5M!plj{Rlk6US"Sv]C.O*v\5% |/LS^*7Ori'n6몱ǟ~8G%ƳJޖ\ Q.WGāmHQrKbՅiJ(흉_7Cx~6*f" >@DEmIz+D]|}es77 $ۈj Ml [-:橘V'o{aґJX٣VAh c1l4(ciO&hD:G}b YY­ >]B#u9 loMRa^-)JdM*9oY4cϓ GveتҲ44rGSnCw!B (:7on 5^4 y 3$)~ǂrj?bf.睶1Cm;@Zc(3 PA/HL}yKj}oP?.ozVk&3Z6Ȱb鈲aUCeTw n6rH|d+C=W`66Z 軝:FJ,Аᬘyhzp5z(XO[d+ꕓ sƮaW2Hwfǜ至> bӨ!L-(\?,Z| g rXw_eBc,Q3Ղ9n;AmX \ Z ^嶈 XJ'ucxfW5ѨfmµHYiXdS[!;֛ns 08{,!/8w @u&@} "ͤk[ I_*.BzE i7jH U!/O5E\HtOR-eQ .Lr=Yq@Wse1 sbBi9A25^w"]Q,h(nEGYC1YУ'85zouϳ = 9h%.ER{p8f1P#ĬMI&HN/dT._C![Zͣϡl5k6Q KGZR(pU@8, ![[(]s‚Z@:sV@gbֽJLKIb$xw*, 0=Q(&Qr便Lx 9?KX~P(fe#g׽+yѥ:*~wjB=ʹ"V!DYʗ_K䗫7W.Y~ܦuTcT- /)i[L}ץ!6+}t !c˒ls3[9V }~夭#/3),+GmEVKP=HmM#|k҂pkn#kg2]'G1D[-ONd%sj CJDOe'K\=?kX7_C H/a<˟Zg5>UJܵI´&.{IE!>"͖( IfjHmc]oV<y.|ouVs9Ғs* )WؼΆ!; "S)&-10bœ|IoޫQ5:K MA|X9${ `G>7i}N=1)9?k5%!=FEe~ՋKӦë|!sޤL 9\􋫪v THG)=,H9;9C!#XՃJyDP&Ɠz/Ks퓹>|'[%#0UjO~s;^p7Ѯ_j+q Z*[EJ1CFm%7<gCK8/Jv)qkϾİ %gRP]H"l:YMӜtD0g < B1o JS1$+HNHჽ&0(uK<8JlgdD \I/ )ld6F``u Nq׬o2|WqvYtenK`)&0*+kaۿ'AF;=ӟ%QDY ҫ-AtiO N˿zd!.޴}#5!x f(،ÓA2BOcxI#q]6*yDBQH])nܑF0r i?i7D^l#nUORAc) lM v&va ?§i yϒ)]ּwxpK+MbOx^r"M2Dv.&{dX,t٣=5<}Gt"68S53~M*\'^IAiv@Ը4z2$+I+}r&D5>y@{ 'ؾ.Yo}IE-Fhy1I &nex7G%5ShN{??7@\_mUȊBǩ: 4&[*m<Ҝ|m? Vq;Wu댲/* WuPљ &÷ñ=KPch>țe#ȅE7x K%I7͍dʃb#<-hwjT<_.6e,gݐxMIE"\\6J(afDͿrvh2q1g}c]"|ZY> {yC!9 åPA!6g獱fih7f7Hyr$|C~0܄B(Av 0uP!xϜ5k6\[8 xd-J"9`4xݓ)&"m"-^:"w<ڀ2mnu!^ *9e iMH35QSFbNH*uZ^hSs2$ga?++!1;-=78(rrH 1MI^<[Q& ^b2oP0~ {@"[ e䐉=%BIt56˿0|W\(`~g%WrsHkeVy\Mc4-#hNX 66nD{0ar3c(4}k  %YP1c.Zq㉶J""\քdƣhԣݙ#|5)sr,gGDQ  19}~ٴ/uއO[5ydvO/^MD-`Wk&_[R'Q7j{4Һ[!Q|i'Lb^ @(w!p^ù1~QAdǨ,9 6z:|djLN'3;;}s h֋,+kZ& B(F9J@cLBquR?F? FCd/ >-[M.$KWv+#`b'o]U Ĵ+dҧ?R;qCDe:tj_[=p_&t Nٴԍs\z¶vYose[|ݩv6Oen1L9m_ 4_Ar>!(<"rlu;&cF[tzy%W>+6`iڦEYk-wQmxT՛P'A"ŔlTIw^(rzoזK+QV<5&0{)hv;bӇtQIϬLHTLA(p55kHVR/oRx =R6LOO3HY7y S#R*|FWD.煭k-|tQV0CJ={f&+6Hu@Qs?maku6k;59؂supaY_rɀOM~vb9⻻]f 06]+`NjYK+׋sٝ$cD{.-p.{)@E)+xFPُAO=e!vTGkS| ӧ 2.A&tI̖rv֙#iiK¯m~4f ˢ@*6jh+,9hp3ͼf&hٚM igQ&~ЍUzt0xr.6İ;̊d+K5ЊH$;5.(K12P+*!$EJ*`6>Q,#TT8[#T.3RK; ]Ól:x!0)(xbɴ/ PH'q2 ɡ9eۀ?u1Л:lI8"%8Jo(2Rp b>7'{(p%jrb5- / 6zJf0q Jb3hh?;byo{!8W8cBnnFPdJ+p{x(A)YK.z}؁t[І1,YGSq,+AĽ'/ۄ;bľڤ K„Xs}P?đF%q(<*z8in]7EGPu:ŦԪlϏs'.]4 Xh9bx}3ƨd"IZޔ&~m3tGRΛ_ќ FnOWU;fڽAȓc?BCunH%eo*Jz `.xUjv同RؿbSi7iHV)"O{.qe6N9l' wM;8@(| Tԟ=㳙RY=X$0 #c;-?W<3daBs ݥNKȧ9o,XQ<ٸ] @3o nU!o/8kA2g[iuCձ_HJף"<נ)IgZwv"!q7i \c1NPpr\K݃""$”-&q#z;KƢM6uC}Ȟ61K*cY?z BxΚm6'~)m\]RY{,)Tx0Ba,Y@s4E?9'V ;4^{Ldr\^ `z*il[yӆv^ʓ;=DF?dςsgCY2Zuc<WW + EcS f-põ`AVs|vf8JJע1$'.jŃųo mDa׎@d{O۬3{!@y~^I:61|2:”ʳ=s>~ih|L)I܌i{=CDŽUR'~czpyHLD+ܙbcTv=@F0 -k|L,sůM%h倭H~FkJW5|Pq`ܛ`GBQQ3Wzw8PeͭpM0bҪG5U+2PE@>uO-vSh4N$_H{I~l#Q;UPXeidf53xdq[νFFaxZٱڡp]^@(7\,~+@W7!˪ӊEl* /ᬾ;YkT"X ]wb̼Eš583%f*66̳ dױ!Cܱc?K$;5  ! ߰{D9^g(Hj5|0Pǁ@MDo,_*+KmɗWTBi'fJh pa 8ZKzHoscd#YC7@o)7G[ln|!2/5d4܌Dl8S_rVdܦܩ Au8tmkcZcܚ6|;pEȜ&p1aDKхǂd:üG*n\ ,-ϹjUeYֹ~x`Gե"uCy5zNN"j H P~픉Xb:42M1W#%wfc޴.k1QpH5"y (2)ך UOY%xjK!6?YK :A kDE0otL4]^}+g=,אw [W]e{SV+-D*0KFGadjn lVȟX7w׼g\R$71br YMO[8eپtIְ XYRYK-!K ul]G{${rfjh X7aup;(?{0ϥI%AcˋQA OU"gR]yNjFp0u@&"&<=y`(g!זEYXrL4˫fؕ=#f('w Q>Xbم'|:21KMS^MQ[BNl*O/F#eL57 W,'vb?S>B4;[dns8 #[{{v|ű̮b,@[X§Xg ӗU/'{ YvA˾YR8}DFU*|mt1;@a>>({Sttݪ0HHV) Rf nV,. e Ϟ.;S-Bau5?3a5ASo&v4!Xo],8PY,=Y%Y ~6op\\1EN!윥.z^ˋ/J%UMde>Z#ƀ >A.cIxOx{-P8,syow:EWHBqAVq8w LkZ֟dPI局֓26:Oa|r 6nQJ~}mZ(< gc`ڳ3tFO]>*lĜfu$!vN|Y^#É pܣU/gN|['W An4c֖*tcMpR59u\p8!dHoHa=YT# ΌiTewsbFNoW(Q\Q!_F޸&{1Xdlf + 6q۶[S.G=TS/X-ZG5gE}wQ2Ƥ}]RjIL02} C|ht0>zR wk=Xx,=oZ_~/Hԗ 1R7=" $B[Nώ]\*EkSW%5U]&@^wz3/sv5%w(`.Sh*ʏzDU&aFA. E-fAo˰jX#KD)3cgR_ Y2,PTN]i$,Dnv *>^mW̹=CζS*_Z"*pO?px7 vVZ7Q|T~_SS1Kry`ȫsވmֲ djTl35g0r(/c0e&V$*g q,8ƋNL^9 '/g"?ON|ǽow(gϗ-j಻^X2~5(^e`ϓbܼۑֈi))%^ ́nj?jxɨ}Imn8Z ?iR nS(@NG/r95Y|}ZGD%%֋ApIUESuDާ,3/w‹WzzDbtyJcЦ >{w!W2dپS9T_y>k0s-,ʦ (u˹?;:xl}}TTj# pө\o݈ayaGpJ]:vY[lܪX9N+BT#~,\ZU|6c3߷ u^M!?xǜЁ%2[HMƋzKYjC l\CHX:*ass 4P'=GwAo?;KhJM&&uTo-G!:O@upA#͓j%^Q][A6I"ʞq7 ~@;EW{VlhZ&N5sd7|zrg! ߽4՞=qrn M]{67Ʋ`ч0l =&}~Y$;9C_mK҆0KXOQJ[Gǭ=#},\ -MOiE\OBǁm: *>@ѦS['T2 qrHT+"5-o^׫ꋓrNXoc4Sy\;T uZ$jiI}GMx@J8~H4reٽE/$#:2uIYFWe߂ 4 .R.P#%Raid'"^Lo.^'>;p7<VN|׳8n=e!qZ#%f*9k Fq>O#L_)95 6p fD㇪)%b1ʌ3=+3Hʥ/7γ"Ւ@fq|4[WX» voGHV(@yN' :`Q{Ś~qE R(7p 18 A뤡W_j;;Lp `ЖR#^ٵR;e Qe+JOFTQ|G4='ndE{K-_=T g:驾GELn0 gʒ K9{L;~--9}K;ʜ4~ 6)e"uKkv,e=}05[ C?lRmjٓ Wz*P{*q+frBK1ؗn OFqOv7j2⭝$k'w$Yaո$Jd~ 3%B[1ߝDgD9ܨ1u#Vb4"\gY[Y>GEdLzd8z]<}LʾIP5BWT3kxs(:P` 7c5/0A/J܉-bP\RȜxS\hZ@v3қExhaqaxqQ[aqŤqŢ'P:Bc^+{ RҐCs^#.f=9[1yS3&OA*V8/_@Mh rƙra \=bl0xuLTð*2puts>^ 6;{,^J%(Ie eYyv uh;suڅG;=.ב?bZ]Pi MαS‚}Iu&gR2 ɡ_$ʖ̡quhlэIܤ\.A~N}+}˸!k!TZ?,t z+lU8ɜ S;63"Z\|*ca.9yV.n}I%&jg- K|6=ܻ8#5ea$1"]3Z @ۀhF\.g> pH\XcCE;?irmr /mou?$Q?IcA\K sV?BF:5#onzK>x]'YBCW_=+|ۓVĕPmU)ja}A1ˊ4Q !Wۢ2: _҉X0oB96tk$o{P\*WY,xH @@k[E$<FUID3L.skR:sT"Kf=3w%O*:n)apIt Ǝ+FX`[e^$ bG.⠀>Y`p:_ &2үdL t_U\x#t8qgH}Ml'7 7B9|cl9xL \lj R vWj|ƤyĨ>pO2$6JGdjmT#HQ \gٞ=Cj$'~ T`RL*&ShKuҲLQ؊2;c(ůp"*vUoi3AJ크h 5yܦdg2s_q7ޖNM$[`{chLbV7 au#  1lɏDL%;}2Fp 龋pPbU@RC M6 )cbAKi@N1[͔7GҧQ. !3+9y2a` aL+fB!<<J MQ2Nzֆ/ '35`}6TBHf#%r<3f 7Sk4Snlɇ0 lJ(f=ҥVUufod :Ui!]rt&#+ ]ijw4++~[Tb@,Ku A( 鳖h,5&ʀ{?+@| Iqha $6#lcJ淧\޾;nǕIJMX D}:y/y4,xB!47DP`}nyI2=@NGYB!PjE=^RZT<5jv!n˜35\zoUW^XA 'Fwi`,?tdȪJ)v y̋L*ԁ]7sq-/߭2݅?qٮl:o܆ΏQ ?\=w|G=LK-?8ճ &?}~:I/P1\| gwz GQ 0d|z=.! %TC uAkedKR Ns 8: c#$mt5x=i`r_2ʞ^0x^0[NMP^~ n& 7_C1O BFƳ4XAe;g1$[ϰ8eƱӑ d\ 0V'6 9 !BjU˜5} jaaA(s}%|nə~07qd]o 0IgmpYw^^kė/7t#*M;Lú]DOk./fQs0x|KHLz߿|evv1^ژ>Ib%f=/9T:b GhY ،]E *;蚏n ǭ7=N9q5jZE=URELwqUG+DO tRU7, Ry6f-90Z1@b`Ν*gysVexj ׀_*Z#nԽbU_=pv{&swנg5$FǼ5~{a$37%T¦i/'6] .)c"IU0&3N#޼[Y Q9WXQ=2 Ҍܵ99_O+XfgaϑՍ7z&u?1kYJ&~ٙ8fKNVf̛N\g4kJJsẻ>LpL9Z^jb}&[gwlse">()3R>wM.̃UA t /8F<{dVx ȁPjˀUnSo@?[)%z{7F9ʬDx|; SQS ; \°mvD$-Qa ZLwA-{ѻ'6,u*5dh寮:\QT?ݕIJNi=sٱEA9TL oS/B*!i`F_Q.'ZG9r~ {4W\gDy Q~e-_VMu1S^ek;9CSniojO{mv'lôh_Gf…7:߬Ṟ&``z3|X&.!_SQAB#@ Ǎ y2_Fw;(LhfkF!xesNA5/\8LT6,  lHoȹҤPZDӘqN@T=O_FrL("rC[ G:>e@{yx?B?E#2㋶ۥ#Bk)y:(3)jV|3yMGAi/O"b*@qt.(.kP£V7\4Hᑐ3Vj6mw\Y^ /96pT?&7勇x ~*@ӏ#Y(z-fۡkpkGrEry]o-`ψ֯d`?3bE1'uGQOZ;^-Cfʻ@&U BTches"s {\cg7 |hN|ob(pG(x; al EPu-@݁ߣ,uʽ@'LS6 \}88f^>a/M/u4؈J8 w9gH[MO.ϋ?~Lu#.4/m:ۻ`\qa}ͫ:+^Fl#mr 38\erk.mno!"BR0=hbʣ-Y~Mg ;^#sRuPRcH~؀\U6L ,4 k}$uV{x#SlwyGR]sBFB7|xz>HxQ]b++ YT AE#U-hF]qq3,)Vf٧b-) V ,=|JЪ1ul奒6kcXyiz oÊ6r| ]8Վ6APIe n zƅARI7$*Ycm-߀OzTT,a}9<%Kpy\IT0\DXSY`BB{MV%Bz+gLJvB)iy@eU3#YD+HX/ܶ=Fw7h0~B s_[) uD.tZX3`0_/ZMZz٫҇s![ `7#,1)z p DmP˶b@LjBnHQ㫢 9ϻIO/N*_QT'nq/p>@=V  rO U弟v^ۆaC Wl$\D;NBl+)\c|'.v-v3\yFذm4sjkJO2Z+{X4g1P~y\}J9 ﴊ<3G \f=7ΨJqt2W $$&dzX"\E /"1s+%<؉i̐tf /g&AQeø!}Ix;m6d]===@ y.Kp=%{8S1C?"yƮA1{sbJpud I e㖼G&[ߵglx(zg~O s DK'ǺEM2UhN Cf񇉅` jD/+uQZ_41 +4{=n] `lTNBY [(vp"(I=R15gJxz.Ba1=jOn */s^O۳9sd];#l6 l/_E Ɲ zg~HG&TAdsDڷ҇|0+ UI?YX6_fΨ2m oje6x& j{3.*ޣ=H"Mm+pchJNy[|`CC5"35_r9 ODUiqjk8"ưLF@ As-d\'RG̋=ۢVq mvj|;ZxU<((ΧThoEr^F8[2@[ ފ`dȀ8!Zmk?:# 'tI HQ*}+I/j/։}154W㳧Y58xO kL='R=ג'WJ.G>ɞ[֚RNJV/g4lޮӢ#j6@8nbfx$ }j>Ub2K ҋ$x 8fK\~,NQB/Q >ZʋKWsKˍ3(D6R (f$+oٞtQgDUʢ\OD)tUzUۄ~l\9Vv/FaCcokN{"RTo]^?Dd:K}΢+"^ףoM (hfQߨ0m|Zh9?ˁL;  5SԄ9<{%ְTR>orLqdgP3Zn 0Oچ[IʼnHj73ǵQܸ3 |ĥ~gOoNY)|Mܳs$1E(kTVWJ("YLM1*I7)҈ d6ő )-Z)Һ!ʀf@d*RiUrZZcCizDOZ4aXvTVk,Y|VSDm-9yjY@K??37uT68e mvd}H55s)6Zl g/aqM+o@<*AajfaAC E}k 4wi漷CO1+yHzď>u^78vɀܸBA#{cT'YQ(%Φb(Ohi'eC$\LqmIox* fMҿ&օ}4پUl( k2Gw[ BMtZVz尡/_ m{ *nݮqۆ)RJuAPMMFL#C{&>lF Ԡ(فEp.#d2c\9(g~O֢_p!2d(PIK񏓻zl&pVpeET4ҚEQ1k|)AymO7s^wVMP<*Βl ]I4ou&mrɎBF3xצA! ݎ)p:sօ [AooUNZBHx -1V~{cp$Q@7`l7x[qRo-fƍwବs bJ`z{j̍nɊ3/=#:CŸȍ_o/2܅߱O_-ԗk%G@C{OǪi$MJϊHT4Vn:oFGݙovC6u65}Ys) j;dM4&N)brR-Μ%trzcP/ M(Kw OcٽO}~^llwQnCW- eOx8 ?HT O _ 4i}6-c Wt2KBEMxvBy2gm1@H/~N#0QcD,MXG'$<7 w¶ZeXۭ1?Ps*_(+學;%˚^j >G]eF7Gw d@xP{I!ǓrlY#%tƂY7 k;3x`Pm^k* cȮŸ767?2Ō9kwwӭ +}ZN¹0rՒ<'nw{ޒCH㩷]_I nRɐcJU QgrAzLVLP?VA(tbet2xv4Jr$Z`Y^! |!E/DŮwYISC#O Ck!c(VMrϞ5W yȥy"x!_KՋ3?Zt 딞:#~ b2}yǔ`x4~~k|I圳AUkב}}uNFxً?ݗBB4(s|-pGdnv؏ljZ2^-6MTx2֕Go{#@"Qv-ÉrydNF tԡ"~R&@ns9q:FY ^Ar0۱MI̫b'2/.VԧIM2xP1*Yʌh 0Qo%8j VAqz݉uyPQ'̅clABñ2J ף7`FXҒ*`Q zm!wݚGozE{UB4:Ojřk~KgzB)=RK?A7 $N/[K;ZK. |H; tU6ψWvK ;k\$z{o`}[6r>+?z:a _Tn ebMn3g`N7>\x҅(#ZuYsp",;1 25F`.(15 DfϬ1kXmLZf ,VyF;V!* 8QMm.`s8ī@\{1c. -%=w$c$C.}}Ȍ<(m'hq9ʪ|ٜH;^}` 8T6gV7`>&z:K_X"C83Yī Eox@P׉Ͽl#~8[}j\H}\z>1Ƌq^-l^g)#Fjv̿[GY復F~JL^a}m:9]kvYzS`R>jjOv@O `cV,WwG?%j*f-MMW$ N&}݅!&"dw zU |syI.DZo0u"܏РՠY@YJ_kdwo4U%(AP^Q`K܂Z+q`ket2V[˃j_9Gzd̉(^A[sKE\c_"I 2q2]]ߠDN dy*o))jd?S-_=zcaT@swf+< 8l[2[I{GˤPy9'~gibAP(oǮNUx`c N;oh{Rk\+ '$!P}!/GI?Bs/vZ-F\!qR˦L#H1PvM)tCi'\*t,..]BDS%1,51.vN;ATf׾۷ӫ㮉nÌqi+MbN:;T%þ(¯ӆ9b9Ic|mq#ē~BDg!'ճsSZCdv`SހXJ9EP̹E81F%1|U$|10Ng9/e߆qF*e~L>X1SEGDNJB|8[8C^ۼ͊^ժ0̓nutUr;4DomEZD gɞ5ie^Ïr.<axOr˔Lc !D*1DD0Z_V`kx_Bi\dZ1Q@<g" _X(h/u8ʗBuTOX &ر9GwFC)~jr/.Nx(5R4i3]*%M]݁̈́$t{N.[L2c[ڴ,R7$( m ;|_Z޷HpuKi׽H'\ !29~c8 j?rFq穎lol (*(mv)& %XeNԅW.VϿYR)/6S,RNG;X3Q\lϫEi`4Ĝsoe:$ﺹcv4m$F>Qa/$L(#b^e0qn,~\N=I0`Uz*$* ">J&7)ӗd.).TQ| @Kʃ?{uےt|0Y$yՅԽRW-L4oi9,IGȀQ1E||VZ/ϯoCKJT V!I y9%Э0_^99(#S&Ȧs/Gr( ڢkk<")̄Qs 7]Gx4qֱNyYoN;cSjvj`G/I G. `& )7LLHdХo䑪c"nBgxO`JRz"ĵՏ+ 1S!r}Zal6K?Iv˅ɓT~Cx>lkL ͱ$08C9Qn*6jq}9Y6 :E똗A$p`"84F!BsA y|e1,FUC.-DAݜVnmY*i!Fozƃn]WE`SצڔH"dfcp:/nnL{GYfG mgw,2NОJGCS-ZG&=, 0\ޛ+kڅ\#^* "!\ne)]6}k*]a\dz$+ƜwK-t[dPMH]@8CDGJ ٢8]34d+l;D_9ٓX!8Ys~Lq`K&-<%}A<|.ʠ+3Sq-K9`rji?JYgFrT̝H,flT[`%~gwEke2.Ugo尗M .{*nMȚ"qɋȗ>9 y$hO´d>p9hy ޮLRMުZJ̒ ^ *A K8QIH+JssLxs82M @l'}/9Es⍕}_ǔ ҍ_=FAPњW ➧fdX G5mY4{~ (Jᒋ~*ޣWly>G7iS$,vB^SOn~vw0* Df^m,aOӥZ#b\׊aoI!a+Df_=s2;,\2{OL@oJUi`7ZP~iޯ7Zsa)ގ3>JdB|Ӏ%צXI."O5,]D.%$-@j{Nƾ=vc&DtFCoKVo|}}-'_fnHmW|gOdW|3me|{喞AX,"LX@GbOPԮW;Pg1㑑D'iQ 9kEw2zri۟K>ؕN rb0:8wf<{|$!=T*Ն4 v* us2wΌhuI]d{p 2v L)Z{Qjl;TV}e v]d. V[#TZL&* 7 C@q&Ul0Υ3\Ikቄq ;KέB,/RB ݷɌytOv¥x}k޷p9}PE"l2/F-#smϾXxEOu/1>fkhAmvT"grF>'*_I?%'UY/Kqx`O' C g"jr[!FBW5׀7g]B%;L"ZgN! BOY_D;pPtHL'WAȄ03_t|M[zB[ ~H [e~$؁& mwaDmS)Cg$XYs/ WEd4T@܈_+ o6q ("y PJJA2\jG_Jk}n|Hs+Ζ!Yů=%g7eM?E,_˯=m.XzY#׏^|>t; ?P2 sZ#gρ/8A`jqNy=8>;BљpCpo4Q={h9%憘,C+Y`q+b5o]e'zq" `9k}ju Ֆ ֤q?DwA-?0vG2}u>ͤyQ'el7QQ%#0"v)^@<, Hy)HFҳ;>Kpjy!k+#2+2H%PD_b!޹W3i_I?y.^4҅'R8) NBl}]v=?!$ڌx=߳~ɹL+<&PΞP\|uvE Y)gOt|pH=aVIs6CC~Pf8 8q!uuWy7dw̿4pkD ^Oo,Z^ l|cU"/+#39OGZGd'>O~2U"(j6O,p/`|ȝE2~3q35v^CfiﲪƵ[BMS.uWeHU! N{#_] 3};>eF,P"| ; 6T()RBCJB dnszd]S^?WaW0m8QL:~\ %o[Sm2D5u9k"H)X{a1q-QʛغDBFR 7,9- )#/9vFhEA5U Ki#pH̎6eqv!yЎ_x~wGdj%SVQGW_ ! ^AϜ0Qf'> gHdu{ m!Fdoр k5UY^otg؃vw_odNH\$ѧ [.R;q{ҷr;`S%깿y\kS%qPP 6v Ż}26T~ ,~Nl'<~Ѩnu^;S<0w`B*lݕ zJai d"kջwP,JmbcesRnI%Qʞb'R A)$#|@h,xIlm8$21n)Ҕ1hojHExS$m2V\+_a[6 o??C;`γ԰\ ڌ,Iv0נVH_+| L0.9eY.l4T/Ӹ*}RڵZw|{plAKGZ) jJ0m|;SV4Ps@Y^bu@aGc*$_<&Hf_s+]SE acMskH;#e#FH׸m1m-'^((I/_ALs'V*b蔿[yD@%Djb)^}_?J4X~KMgԾ BӘ5Y<"u&B**2QvUWIjOm($Jo5yBT}јՑՒ@6Vמ;kIqq37G,U׺!Fb+ܖ Sy>d?"ukD'Ɯ8]uvLM`W=V-nF||i9z"Vju@݅ L5Tk/+ OֱtVhþOsaRD!aFI~ho} ╀@UU%c #,csʹs`P%eKM2darwabZfAb&ܮZJm[a*[K=Po.Dwp~S20钽\uX{t3줘U~ Jт$3U\?O5]Q \nuEӯ^m?grc{h?i=pGXT@ P[乣XE\sE!"uB=<ƬW֭Owu B#gJ=-.m| dZ=gH<) MA' M|4XW4 ln<*^.1}R{53mǽ!3md=,N7_X{cخL)OW8lNlFcjE1@e"0HzwOwtC!}ԅsVڈHS>o74CPt5?^Nc( bKOx4X{ X-!k]¶Oo1N#47w rv* `zk^iHxzZgv )¬xaxlyzV ?7npq̈́wM"b|s,[J24r=iFŬ!+& @Nf>RR y”K_(W*b1u/qQ&a~ou h Q@STClm;X~ecAǥS⺝%O>Q>2ltƼܯ}jgVT_#N CFaVt-K|;t򽠽_zcţMW:WX>K9%/Vʚ|A37/ٚ5Vf`<~,pݾoPOpy]XTzw1q͛rݩP>1BSW %V/bLG'm25 h|E6) ji\5dRsSx|tPuyfj9+o5+8Ӭ! b7|e.&ioyVO ` C,C))>Uu`/OQ̑r0͙wA4ah'zCfsg/ =e4 eWMv^]8 &'-~ i(?\~w{nQVbc|{-3<6.o9_@xK#OB`DV4e+ g5Q̖xv`+%+/z)Ceq_]vW_< -Wn-o|_9G:4jܬleP/2{Tx%~:Wk%8mJaG-AO&&O%s}g8T/&J߿dZftZcaۿpnq"O]58HW&2hg A'y5Ho,sџQGYww\hD*?-x?8$OK+dF dD*L2to "iƖ۹|.WqB?l<1]SsG#/fD=[-<0z17LkEe>wn%ʼ] ᖦ5/E^ֵn4\NrݢN`4/_Ybb%Ձ(* z}Z@]~nʬSFr=,}8mY޽:kNg0ߙUTAx[ 6 {6eUk }9 ۮ)n5l%*kce:0麄Q ,`RZ%; /XwU8ϛLͣ/85 B,F'9=“?V:|QLm0LIokD D.$ꇦKߎ^eH-e6 󸼎0;}!SAjF8@ ".W{Ha,-Y!ӜhYe__ &G2WZhΨs!>gHԏ9yr>,_2܃e .nI,"g5JW's 쀗9 Qyhf,G֤ 9_ʌ&qw%Fg6lmz2k>+r*k{ u6EG\/,ToRU4%}O:ܥ_.vw'aSLl|L엺s*K)Z;c\2^;*7} i)|i`M*s .K+Y08ַ;5P)g$I!ģ0+%`eXKZ"Gkt@! ,t.,l&^3PUҫ H3+wY8 X1+K=^(ȮtٜQ aݹ NFZ K.NCg f% i;(O̐2{ k$9G6(5N>lV y FM$޳lnb(;VEޑ8XzuocOV BbK Ǻ-Y&O&s%e g">]}w3SiQd`F/#UQ%ᛄ AN&&q aB  K#`?T=?e\%7r umyPt;SG w鋏OjگG~ě cO{tL`Z|;=:yp7ee|JD][, kR4u;Y%ى,ebq=})GAHpէR(VG<(E>`.q2iUy> /ЌN'TVlDFCVrVef9R)2S_Ra05J,rؒ{+~;gZЄ\,X(ǺJS-殨v+ Ȟ4h]F2l_;[҆KGRnsznD ,ftD{Mt-|"qZYcv U?kq4`k:dSp)JANЃ]\Wƿ.%ynQ=N-s_#橌_Z9bVr :@j[Ql=P EWkߊr{KVA"˭=t^N2\T ]5{z,K.gi<~ vsGM ^ f|Qtqi( +7'K msʵ?Ջ(*=qfgڎa!60:Sq!wz ώFe)*)^pYOSS)y&`$gpgka"λ6pXW !d5ƫ)e&+0K,2٫NEL,[!I_DoCC#$0*woeZ]*󪞶`ټ塒.P*%i;\OeKWAp;J*wHFs(U9y0ؖ0ֽ_vB8o&Rww4n¦F^bM̔Ȓh#! pp9 KzhXd:,WmmDx`=]k0A ޖ9>a7@&l=>,;AحERqs\k̝a)jaݯb.7nŁtp :v8M$N{~<{Ҟ{J:iLޭUM]UɋJB_$-]B$]*5y $c6/6%\u.7@SRQp/Q$_FGO{|v;+ɁO mO?su 11^) K5^?5˙M%j{{w㫉6xUX&W7ߎ{jlPAV$^uv"IlRWs'$IY9^aS B.h";vť2 rtwsA|qCŜlB@:0D-v _`[}< Y8+èZۯC _s‘mR*xI{B$PCD>R4lS{7_\.%\؂4A.Jl&BYz0(mPμX;K R!δB6P6 =. sHoR Wpd\*Wy:BNXc`Vm855@܃Sܣ/RYe+ιw< W$Kv ѹoq2Rzw3a@=G(\ Qx`Y\h|1-IxDm6]ªYx/9$Tkz]w( ͋oV>:fb9֠ xΑhOe #-yBRh ]5/q(#E+ _L5wqlmn^5<ч8[ {*sت:JKe$Æx_$" yА`us?\e>PsFp =r?rMZ}e}4^Uu"Ơ\]t&l*8'2:`Heԙ% 1KC؊#7q61e2GfaKK4_MSH Dɇ)cOZTa 7[>f+$Z=<6n b}eTW%\rs&&GH!)1@ZڪXQ#]2egBĸwr*`7۞42g*L} 3A˺?p)*W3Q$-ڙB*S ((ak- 8]bNBa|I렎`bib/Y /\sA ]>o)Byi015ho,!eKs u3^\ ؊{Zo fhGb|ZTg//)}]s$ˬ"Ղ#H6-p/Չ'Q?{Mnɘ(0+`[݈ܣx [:+͑~bY-' A0Kn Gu*%.{,9Cֲw"f.[}G'TOmIt8̅'m  .Tqq=zu6 ю{V>-KR2|/(4܂. " 9 2^$:o?}y*]g%szyP!p Ⱥ]7b4e1C N4<4sMl-X\m GڊlV xKjG:Q㫣!~cƖĎ1c_8.J]Gέ`Ã7&{W6m0uu>ABRk9,$ 9eZzOhT,sH~O;tY3Z}wI$ж rޛ"7q/Uu &٥H+κe&0tFe|rEm86F%8mţpgmX8}|ް$rUp&,VBTfXg %8P^BSًx$7U%Yi>τ{QOT":sW, h9PUoVq%7f l4bNae[N{iTR(S܇hidPpw:ga+/ų6iQY'`7)3f ݚ q fM3!~k!Sˤ+!ītI~Z/n sqgaێS_%i?0UC/C&u\M=i]ݻUt9a|T `\C:EU]HG&\߽Wxa襅];#c:O;E]3SwSmC:rƴAn#*> V9W$-9ir^h ~h92%P&~2.IZN͌ZX|D{c/(^R6^",̑{z{qJMHKd+h.ʲ*k5 X^L^&K)Ufi~}geLlvZ:dZˉ$g*h"8 v 8-o놌H#oMwRT:נ5YC%^rƲQ.zL6m )*m.PAlmd8`-_ %iΛ~2%&4e*2$'V-?M8%p-yloxYwZ;Shˆ4mܰn05RVUH+/L]@>H5. a"&IugwXdn>i&]^36=S& ~G 9'+/p2&DǮw&I Ƌzt oOH%٨˫j\[Bh$hIChۊ)@'L,*^֤rRu&\xK(BЊ8>rm'XyGi>Ci~@~sv<{)0(}-N1K qG[_P0<{{+l 04%Jn Аɫ6ԫlcF]kebΉBv)<0IAGhyQbGd,BSs #Q) E'5ytBN?e֌'4u#-b?O>HJ1QhDcѵZpUHlu5#KmPc i",yhIP fg\wAQzHpβB6te0X4TFl9cy5M(v1k}`Ez^B2&(,@؈`,..l !w^:0zZ*o>Ng 7Dlc_pS @S*VZakߛ#5=`пžl~ nmV'Q 9E3æCS+PQ7 _)m&#bFo52~ #S) =L*  |KTPcd?#]-WA`B Qx*  W}~} \ 7>KƜ8p['Lg4cB8r4tcmu) g&}j6iH2% 𢟧Yz˜EzZ ⹭ta-AXAŌ kI G ,GK*@ i\14ĀYUDtmpLQ'yy"dXEmzl4]!_sV~$eK["r F}d69#TPsV*B"PS|ȸ;ad#?o)msEƐ}*~*(P.|VH~dlPNoE nHj|f_Yyx5 :<6ztd9s_FK`߈jwa^rG|:GC y }NY/ r"ˡhX;MAꖪ'mRtsApzaQ15lHo4?KDޗԉOC:٨@].ÍB ijS}Dɼ!Qfʴg&՞:0=:h緔k#+8c,1o^1KpcTS+ԩ8zl$Зw@K>Qd&bdtJى`=`\F)G-"aF~Hdne)y7ڦ>Keoq5X9k= `-J(pAtF}hL@e6鷞 (q95hoRNtFtVK~4 aMeJ8;;DυZK}2T?ԕ)mQV| 9aԤ^wD$׆T\ÑMNvb5^ڪ.A0a&ٻ0&$C/n f_]$ukD;L{s )d'̇'Xxze03.:ޡ~*ʍ/ԫ)^NnzaoQQ1r~P7E{*v ʼn~Y,ܰmዀn @4o0 m=";11#ۮ{Ҩ{T^EUMh`~ø`S ɲcCUQ9fM@^<)pa%ʿX nwAcOO=${MG%ojm쳦v@T\1Kc}R4rg?\GF}ydD]_s7/b`ju_t]k 9 J39GU6:+UcrIn`(=5'BainY)< +d:`{<|ܗpeBcWPI#8y'H*KUS3r` $7wW VP^(em圏'c Xr]Y#.襒21ǫXck 'h^nݣ8d@S9>So"7Id0%a8~ģF "a8@'KI9"mt*&$@9u${"T$\N)_B)ŸWPZ'! :ۥ٥ZLzL;KV;iwL9#rU5٠.#6vBD~ÓPp k\4BM$eJMXA|V.8i0Uf$ZTw79YwkiDz^`ý<:$:q!y3|-P!5.*go|C;Q(T4.ԝT<1D{!,0!fSR!1Xz2LC`tugb͊}2&mr)(Oeb5=MZT/`r#E$zt6@u`]}0ؒ9=M81ޫߘݘN3ִZt7@4YEzHW+TZ(Z>N:N$YupvPm2 ck\FGS3/8ʝCf 3*T2͇/JG=IPjh2;j=Jg0Q{8p:C):L/ߨإQKEiN*D.?O5A,e8$SV`&;0_TӦ4_L#WvaKk\kR%3x{r`sBYtmR9ʩ_>Ȗ*( ٍFm-2,]֯/? Shr /cWOF."ܚbRǫ(@YeVN64:xPem(/r常D=@ _L%Y>pNU^=7EU+qlzĚ:7HF!tX` 81&B6hyF,jyR%>%'@`-a* 9OM SacOCS+H2ǜHjs2'j)K !> 28'%~Ŋ b1{/k+tPk¬)> , 8hh(p(Pn7CC8caXDox~HkK⍚PQ(^$ [ϽuB .T}_ [Sm&SoOc+\2 Dџp|jn3"o.=1 ۺ*:ĒJ)Xhq"y !; sSdhj,IwP1iJc%hp#e^:Tjػ۫]=|_Nb=ɺt~hq#OЬ' iuSFҸpY=rB2/U`ȅ3q@'á5}Ö;)fA٬ϒOS}|~mIpfDـqr7Ty8"{ q3 !)e[gk1U&3IlTQ@`(G'9_j . (f.StBp+O$ #=ԘYjF؋p5Mɘ!b q[m4CJtj eJ̝R1[eˏ4 [g? RIHiɍ(Dc𒇌aƃI'Y:kNkPmB:i؟C7IaT|g zsgi29(VG'8PULpwOwr+RW_ X|d "ËU/G{|gt mQh6ī޳al%b4@t$#^,Q1C7K-\ɦ%x1)C;G]~zBpHȃ wZ1utC6L}@rzcAS(qL<Խf0l#JJ}oNDa g꟞_|MQ1F;.uکon;yKfQmH"q}< IS>\*0 U/? VS'4܃f4mo~|}}҅,}[R/(<`x*/P?0 D>2VXVYcs^eQQ }ez'|ʩ=)3 i_ְCZVB>WM:<Bv@Oq&@BbQj(/.Ge_[KJGx=Dئ1p:5ڶwYNӈ塍{v Gt更/ ߿XON 6%Q*harp C߇]iCj!i1YH]W>! |0KyM@v2Хaj;i[]V  S@} l4[5_9 р|X.u#+5H"T9D! OEAUk(?pn;\P B U5N7Ki(pzXMuy$42EG"Qs䟟okǑَ#2awpQ:5 _? Kwd "!ԯ2J/71R4M]A=Xԕf8/w /2ef\ޅ*q e!,2̊(ΡEy]7֪ JI&+4wG\$*I d//.5n*7@q-9P/J@X4a /Ft>]jt_NdT 9U١cnyeo?$YUӌ58úP9ܙ .FЇ)nγ+ɡyac[edsR`~{ ܫqd[ԒQ~Ӻ}iSڧefNdߌU[ gcǨ To ^Y4%D3a1V ,@0q ;o7 Zy*lQ2lP5?J|j\lzytq*EJ')(V>W^]5\(N}+ 6Ȥ'j= /cpB|;wuBY$t 1y!Hg8#96GdNQ:$NH#AGLzq(2gt0FCNkǴ |ccZtv,q:`;Wr_9.x|Phy5X̟dz3Q&r[/BUQMiGhrn_Iٔ;MA&$*tdUr:Qdu/7ݸ#6>yMtVc2F6S@vGt wxszPWW %!̥qX3LP~ |p8z.NJVSU@f5ד=QmfygG#x|`Ʀx2 ?b6OUՠ{/6Lam j0Ux8'~<;0wpΝaCy}$}k?~ ');6pB WEboD</h6IV=9s=!/qBkMZO9F-$wУj@Th.@BQauP5{|IKf6I],t`LtAS⍑s.jŝKfłM 2_f(z)9 &'J&3#ưpv^M \]Ϭ}a"\Ǽh|ޅʙ,)1N~h6_A'b|>FZX" _3o9mH5S΄ U6 ,|)iYR-YDo'抍1ދեR?PbIղ4ZG~^wnC߶}9 {K7:ˁ.Q :81lDWFU{}u]5> ?K ߇a\ CYD6! !Ae냌4-w̵EN K]Ndja8 V{>SER.Y)ikwW#>-.Yy}nϷ5D8׹m@6S,NXaF_]*%E w)nC"n9K J|#V#ܣ|SWT`;,Eonj4!O>$+#0QSdQ"t*:ư' Te Tة!@;'c m`;~t`;qƠVJvI3gibn#@7&}MV+I'>ik >lX.ڲ($ӎ !L@/J3yf[ʻD$1]3knM\9HeesY{ƵKDcEmU7s ~x7]}wzÙ?E܊/Qʼn7C8]Iv<huOd rYZ9_ʸ,(+S[R_V`3֜'ea#V/mW nsTX"mGȫ5@apͿ}:0I2(d r/11AP.pd-^R  F}g`K?1jBfRvc݈l,@SJڭIi|TlYsU0C=u7tHx)i)R^VZ~>Q'%8q.|R:dܭ_-O$#:AJ~5;O]2/lʲ\߃B <24^'D]M.7˖RXvڢIl~#p`"^fe 4틌\<%j;RG(36>//7-sazoHF)@xj c= d M-PHhscx:ήډ%{O /@:W߹h,yh{PVRQ6P zt=EtOzԎ,xhږWuCG9 ~}#FpkbrLp')c| &2CzL'jI YCwA55O숍hxC6=eL>%ƸEn$K`XqK2j| o)*S P(_Pe@9t:@9l) ҫqS2a$˾Ul7DEp##ZMBR TbC- 3oC9?jl#޶I9{blf9^}[T0#h>zT-ad WwC|ԡB c;PDc5gy2*Wh/D°8Chs|%"~צ:59ί80 'w R;6Z6h2”0˗h^:]?h$V Y+9.kϨWfӐ@]ՌieӃ>\RJt qh,˯75q{ͮr/G"9F~Uқ`GY>7!!*ȥ3 ޯ?5].M:$G4R쉣cCRi(v,8}$8XZ9PҦoKdE˛#q [B)/;1W;|T:1H-$=W~>[,=0<ӡLLqo `7Ǣ3mc0-<kHo) +/)jO[Sb/Ϊrvp >cحH@}PTOV UVo2Fw`5jVYI h-(b=bƋlT_衺a3ccvگ5VJqo5:c Jad:6UzؑbKz*󠊴@z"UTLA%wEY.}[_z ߭m1N5~, W;AL@paZ+w`eԣsX MAzaƘnah-Xk+ǧL ]f1S\_yRtFďGnƩ9sH&jh]V=On>uz7\f'EG]D=3-Ӯ@gqCߋ}z?Sw w;/uʯ`UoÊo:(=wog X[oi瑍ٺE؄WMmLڛ\\c,=HPWx^v|^ӫG(6&}1l0w{ `']sA&Gׯ=/ a_?VxN۴ |As}fh^Ju!B猀c~!p=a~|{4t7ѐ'[O> UT RY㭒M y-^x$JB]e^$*Tb~oUUT d+-3Ge-n37E.$\;73gp\ Pj_Er2k9 T`Љ͗rTqZ'gM87O2i#UlƩu rftzo'`9ʡK`dV`^71BŌ"101J>'.5NʺmP5 Nej!(`A9eZ/ʗϊ \ѶgGqV^?~B V-/GYm(G3ևdxLTR3xb^ ){uKKDb <ֲO*n% ù苇 ?O I.xDWi QOJKpmbc?OoC' _vhk$Z1 Mω Gjq k(EVN$yqU6paAPG$;/Qw7B5x4,b~"\,Ns0p]ߪٳ8cSXTzPW fLUL/M@OF[ޗzV+/76K2ؿk>*p/*\]mVӢ}{HhnbK~JIs88#"MKߌrndfCM-CڄgPgecp35י>0H۫tuH.7DCyGivߎZc^^qEs0H~Ѳzh ,x%Yuz&6n+Lo'0- E*[tiz2+ܸ, Y Euq S``Z5ѹ`L[7ءhQ'щݖ<%%$9i.)KN!*zT0.B{@'D ۨDm.a~ˆmѿTo+ mWZϣაVjb2ݤSFԨ('Q,fx}sWHhlqp7,.I={ՙy-j򲉇t-8 Hjʴ?^zK@vESY3~#53}ybĴuLf[`*gQJl4ql7 (&f r"/F:XS/t\+6Y)YV_y/xF?Lf<`JK>^ETk)>J[mfaϒ_o&*HI\]0!yn9f82тnQEjc ] cqٟ򮼊U) 8ܿX&]/\GE5ڎDq7rĪՋ auj'`C-貅E&3W* \$~CO`Dc{5LM!Csl1g"Eꣳa; o+~3(pG 'SHDu9V9*b3YN[a""H"M"c$0sJ5Xɛ7A:‰@x/"[Y:v<;r[V×DqJbzc=)W B/c].w_kaP/f9X#JG Jյ|\7EKͻeOQ$>5C&Ib,Lb-J)Ț6en }#ËZy[dK%Ok7 {g4B~9\mjőDŽ9Z_dMfƀ1`RouV? ][ j M:l.j$? l_h'{ϟSXEO b-dV]uW7s/^aT> e5&$&k@,SGpBkC(;S}?f|HfxɏE3Gfhn.f]z6 v Wa >k!*Ocd7HIGk`0[㦠b05tIL^*3-l.JO U,2uiQ&‰u-Q"`o.A75P>wc%L>u,gֈp p]c`C鿹S eexR}K=3o5d[J@)#QWk $Ԕ|!fwBo>"wj_|{q(ǻMr*!-A09z9Q77ѿzLzs8;Jٌ"^pN>\9J {GU~Qu^ >i qZna6=/~5n'(oDg>T}YdZk71`::ݔQXR\r\袤HUrYu_6X~PQ"_nUJʷxgٌ*ZNDj! j6QƂ9A_8gp[Lʼn_{|x=_8^GoXLڇ};xCR"?Qa?D$"\WfCA2[=\ӜШ)%/ ʏOeOe/3Iɫo0\ 54ƌ0~f0SԓZۄ4YJ # oTٻ"!3vL<ku`uOp%&+~=1(,[2?Mt ryQ5 O޵[ZWbi1ٝraU/5b9Z(E?ν|3F܃AZB#iXgR3EgMS,u ޿e.e 21EF"jc'I? OM>ІlHq+^ -IH Fo}ZXBZt Rȧ3/3 Zq.S;{FϞ5hv[ZsN`9 eLK56.N ?>#rXV9$uVʰ)|XϮ$oA/Ymٖr.8al]15kv. 5dnkJ\mOU7e+g1M;,|MZ}`$mdIeA |?I C(O Z [o.=g< ԛѢR1XgHv|gcdj ckԕٳEu\W&;PuyxxF,tJ|F;M34z:tXn!^]L5m.b^VoyT51pS.\C' h bTikw7PX(?DwcC%8dhWS ~V%$lm)?'qF:cv 2Ѫז;ㅔ^j}.# 瀚~ .u-ȇ֤b1;N^FDjlMm<֋ wr|g%h˵ PZ< hQn<1f l~8`c?ɚH ]>Nw]"ۚ C$andΪQiS_\.O~Tq̸̅Z U 1N3U~}Պ2 Ϋ=4!?N:~Tw$'ׁxR"c^<(o_4[@۟nUN&)k,$P0έ͍] n/CQ?]19Zŷ3ttg`HA2jg%`li`_>&Мa{KHbzՐ{dO*ʊ|Bnџ}wjUQف_03|at54KXPI07G$"۾#;yw✝r?9`XQt`S_}"rMn7ۭiv#{=ZZ'* 6d]V(O8s<vX!74e5q2PL3{hh M.Z^6}-Fs/7>L1jcIbVIzaP#*h vb#TT肿4 w9L-g4f92ӭ)1uA=+d?CS&Xݜlү1U.xUMu]lYBuesryd3]8EVw`:U30^ME1iE)|QˑIG h/f6撷… [ހ1,mˍ*z(ZŇG~Yӓ6Hcm 2Cc1汸 nPur Nsi36'ov\.L?5` X@xZai¹I$u呴d1܄,+-Q!*{E|Fq[xO 4{݁_nLoӈ]q/EA A\Iٵ>9}CZ}nA7V>s ue|;bU@8GȹXd+J |-2vPb̈́ Eѹm采~jzڽ*LAoZLqubιw1v+!* %-,?qf',[uԔ \W5k.ZPw)n<빏sTF"{s-n 0ng$t12KIAqŹv IٍF a6f<ڇ"HEfh6 PqE0t}[ y-ʧlU"֚^ >4 }I)y\M2{C JBȴ;͡ĹƱс\}KqU7mWfFe.x4>-qҤ^Xm<κnx]mVN' |B,XuD5iطٯ2ӳBU`PEq+o-^cM4QיuJ`4Blc҈9yw\fJ1*HIWأ>Ye-~YGc~Ϫ䮧  'Qy&{!θbߐ5'Y_HIy9;W%MMh8OǶRxk>6'FD "&q0;[]#fUB $I[SLL8.cV'ܲDLZ97)>u_s2*AfKCq/0pكEQ8XLJ jd"rb#6QL{UMRta䓢 %7hQ%~m!d# [cRlF3gj1%tS׬ ?g0Qΐɛy-БT;à0=kA[B|T.L )\VI7Ox% IL!kY&pjnp)6!0DOB c%* |kq&\o UG@ I#P|uގSYTSye1 ZH`G7US)> }~deM .saM{|rR= Qi `7,{E@J;v(i_-d7nfDb>.j8ZzbS47vyo9 TYP^rRr3GN,!Kf7o'QuY"a}OLRV0m\Jr"݊T`@ FpI.ظWޡyqW$ĵ()~;YM^)XO0E!Y𣻑sAK-|Iq{ Kf( Ӈ[-8#'+U!A!y屨 0/5|]5S5Ңy]^tj=ƳA!f>Ī#yfS]Ό1|֢0B!.Ups=m -   ɂS /}vp ' 9܄N@ϧɍֻ꜏3?o[uG MG1¡%4%* Y",[`"J$ g$]Cb$Wk={dO*y  EB6dygZIyȽg{cBBuG1L'tLֿDV]o!}NKcc!X#vxBZ_`/+.L1X-~׀wa^x 74c+%A \P{ U ,gd"Z:7юBwa_-)lMޗxXrm"zmvdlv?!?H2sr;v̈́LvIG,>#bL1HTISƳ(*,2>yCV&[y1 azJwʼn VJV_-V{*ɑ{0lήc~u/cTקǍ>I&,+[-Q銋:pJ[r@Bl =.ʷpyyݦ}Iw 0C3>X\`zko}@/{t1iqK#= hBƌR -3C_Tn)K?*4wvW .#& *;?#fKd3\ y >ӽU&Mn5dRE?D"#\Ao'\,Ž+ >\wt*jd GSXANzYv.P|!2mr@?'mT3GlAX62.ciP 뎙9DHhϔ=ᰇcxh4UZ3A3zHuJvHٷQ9Upㅖ#4%ϼ!dOrA(Kj%,]/SDaG%BT&@D0F(AtdC'{{C9ר9  2YJ Kq'U^17K0 #vDM0(p֨cH2f>o2~촂ώ 3HYt HcQdx4m7F6>jOΥXz[0S|H$[=fu%/@.]* ;>ژ J ?ܮ}ͧtgQ!C~QF#oKC>NJ O/p77f{CV$œ4qTUTٌ:K_ ya~o7_tlS"or׌-=(? ;ΎFOA/7eM3!Ì#:Ash]ԤiR l!@#; nw"RMd\¸Ej䬧%|N oOXY0E6^r69N3b(H9҆*ؤL3'v% @Yg//@mKs`dw GkARTE)%z'KSOHx(c7UwUJZ+Si% ҳQ Rيr:)/ƂtaWv)+ϋ3F;2ІD)k :zא$ j\z+0h׹\( Zў-H/(WtRxD?bէ(68X ./!3Έ7`I6EcvJXn[2eLA8 PGYH%nt1gyOn+dۣDnU~PՃ Ώ.gK˶ps3O^MfJ1!Fv8 j4&*iC9L5CEg'Xmfdd6<_tkBo 1! Ohtrbd=Y('>chZ<T>e6 ^T>= kwatBEРT>-+s)M̔j ؑe{By/N58{r,i $ !u^H5d4v4c?I_/ Ϝn~'׃e:@`LyT|mmH,%©N=ખ{?1Mb[p5w axG5}@G| 1pALd$3${ƪ #2{/v )^;@Ϳb{׶dӷ0{2n3wQڌʟ)LQKJ@v݄R?+;߶+`I}guIѶAGf/P< T/끾Pѕ,0~ !1;ĝ7Лސݼ붌h@[N&{S>&^PpC~SŸ#$Ma%qW~PәJT*^LKogV1ZL!M = W n-5 F9&2XXNC1wa"cvfg¿2"Z֐NuzQ$b0Hl*ZH )&jCS J.׆=Pi7/M:BÃfP*]$/,ESaHnmQ w;J&E?.݊ sйOfMzp@@Pw|I }ysoӶR^ܝ$skƭ ŦK MՕ=c٧ (MV m\Ұ @aP0dLsb^MՐ߇sVUpY1;NۜU4!2dDf؀sa>R.dB.HS=Hul$:Larɸ1N[ۚʮgxn\G͸ųI03\XWTVraI@_ՃmoVy /ɹ{0t'>8 =4:NGYE(JLG*!tEz z$2]l֍(f]f\l06U85ƫcߨEkwZ_O4pdqh6fz^q܂ ؙ4PE?4- d?QYW.y*(lԯ>&?{A.kԌ_0 iʿ*:`JmZ䵋u$6v2 iN\g3rdE5Dt`ݺL|)j%Z? ש%(-Z08 JB .]M &)s*`zWKO`ȕ-\^`2 F 0},QwL@-n0R>nVŃBQ6i>HسBDTպ_ {йyڧP&,%]AR+ADܰY"^ck{r0*ꪩcdͦZz0cڽ`l^/AX/WY_೟Fi =bF$[YK/amy!9 ((sr\6ǧB4G0i:ƪ&MTg/sU_G%8IbmǸ2,4 \ ׫'h^ \͊,Ap_#e('i u.\ ̚7ET%3 ,?T2&n+340'&ZܴJ̄*PyCi*RV;Uc{~KHkި`O6:~F^0^5?=I-Yp(4"C4!X]n-4y@Co"]%CK%2(G-kK?CP$AI9FkI ΝOk2Vo6NINta`%Ur:Cz1Ԗq{eSg(?m@h߼e~th_|VG9goI]zc~Zõ6~MGY&n-.hp{L})<]`$$qr{ʶ!4#K` r3\¥'j%%$q,vD:J_7KD Az>s#SdbI$$$0V$KۚC0 l(z.GUxD} t_Qӕ .E-t('p%-_S"&8R`tVR74"38] $7./?{ &)Ov6h1貁?R^Y ߆߸@N" G4RtAT^гh{Hl")Y?Y%DToZ&]9 ӒWy ̣RPa d38 3,gFDH>Kf{UeBG\6Ok|2zn4ϧ4kل @3t_s4oa?>7&<[05!`NB՛ X7IҢ6 )vj"!K#ZY+40~lEjTvpPG9_M-KDQŲ:[;bEÊmܩ @&ĄNMM`܀b6qmOvѧF'}K`=.(R ,@noS)1.; +(сw14`{ePZnf:;#q ҙpc!'a;Q^T5U4U ;5{NKw, A۾-Ħ :L[S#"~ Z*>pS>=_"5!? ٻL5 lj7s4ق:.jhȅOW;:-wS8]U [1a7T# ) _ N$e`U'l.6h׃ u9>̔9Y?YR/F֡AƑ8yH-կb[.obYN:I@XM4Xx3>1`%qŬř>gSv(VZF9;Ha-^>.k$p_d{UQ[LN[dp3&) C .bW1̜N54~lSne4PF$Ct"hGӏSAS=qRg;MgȝBO:7AfZ79B5_ b 8IkDPˠ îe6v4Z Wx1J<:DŬ Q'eY-4ܡod!x%>2Ymtm!]8p5 c̖s%VHeªT>cW+QqjGו`6Wɽ׾gǹ}V|/Noŕ\B/_c-0'SmS @hFh f^m|AՐdf5*Q7^znϏ;u0.F1)`T:)˰61e]MV$~C UqnUX܅1pW\.e\z hM|zDco3}@h5UGƼmVBk^ܡ V/0a5oeʄ^׽yOb590'd&a3GR &8sq,}|#L3899٩(47 𧑤?L%OR1־fp8UO<4{tF:lV ̼O*zZV@[У zΕO-fg`ecDe!U囶79ZrR43+y)nγ lS#~p"zRGq^BSijp8ztW -6$9;*&}U9Njsṉq"M& :/ DH({DLƈberSTѳDdMTieIdաSrt_av##4Xvy8*- ΋#[m2 ʭuJ+JWi6f3Tz+Rkt;i* TzYj8˛ѣ޽(?0 bikp [w㻶}qerTrr z\{>Dȕ wn~$p-4ag(u(AE] u8EȁqgIfddЋp+txFeL [R}iTfFCWb9l#GQhK}/gQ뛣ЈF;)uݣDetEWv{̴veO;kׁ_].K ;^q ǒJRclh82Ab6œ"JA34x{Xq5:f @m;4~uDB4TR=k he7R.) Wv *J8bϛ g Tt'O„6l'<).bZ/Y_}R`yxX z(_w&ε>f|HP^RQSRk|W*ռYtyW WT_Q]ȳ'/"[295zWzn0;Hg53ٝR {wP$#kpqdŸI'zuCojJt|RVJt`ޥ|pQzx*r@MOILcx >q1}Qޞ8?K3+oAqNThc^j^]BY:uM /DYc^(jAnABaN`;SlN=^E䞞[8|P"W8C1j=z SxuC~aёRTd5lr)|RG@N2KٹN&wY@d1fu$tͲ&Bzʋ0#~(ar.Q20] HWbڑ/sOd:F*эMim:YqPy?By [>GA#)D@~'@5!+0mDMQ-r*RQU=S ſ")Yޠ#цR9 <]M>-YGw/^|k@7t]5@֤Ce* vL?NieiT;MLF-d .ɠ#dS&"\zK.C܎kHn5p'v?b6)@:U5$Rm3ڨ0~).)Puc\sTbd Z3Zy TgG0Q(($N4)ի& >RGC|_=+xB|iqըGO^vGKUNVѝoXkaԥbؐ[@"'؆<,K\& p{Ւ=3NIөdtaN5iCW$4uf85sޞVy Z|DXh1%01Bʺ&}3, qW3aQ(; ?DiF\zt5ؗӦyheKkh4>jeaUo !*뎆Gە,^4b(1 Ж䚱$Vӂ"-V @fG{1XRlԝ`ݲט͝7?7K-jFO#Ո%3`GݙFcAGnyn(LxrqnSfN+(Ǵ%(yyuhsW_8 i\wes3M qJ7{m -J F2t@NdKѦ~]t':3,Xd I.vgj6*VJísWcxʭ<:meg&9H<41Trˮ+=m"D'Ry2d)70,Nb[Ljh0loI5Lt E/5F$+5 ,17 YCAq ӰlWL*ъX򴰋śdt9]NabLԔoP u<<6Ht8@q;W)odWV~ BcdYV>Ѳa':h-)=5p 3%V:CKA(Pc@Ow4K+ ԓGR'tЗK\G*pF_5_n6sZ}VM:]KWg /Uڳd.o2F5"GQZMK$.U9*`!6e#އw柨oIGdկaS[<# flZ ?|CȘi*$*}sY?0[0(J -I. xZ&Vg?KwZVeR pTe"6-1:dD++;>F==CbѺ2n{ &6- OĈ MaX[>px{A3CW˽ڼV]ORzE0I%x[ 3\}FW$QV}¿a#JLvge fVxT#Y6dOp>~,3;Xz7%0x7yj١'FK5e&v+ؒ8P14#o ifhgu V?+]/sa0uX(5EB߂pt hׇ53FEhHK!G)Ww$0{[m˸9#hn7(dSJaKtD"Տ%F,:~qսj\^X\LnzHQ6PIΘ_ JFQ,$}* }e1`7,n#ޝHwwqo9Vp5}l5jHhn;,JL  D>0(;j^i b9>8L{j'KOh'ks8ϞtϙS>Qrag+f,+59+NNo! =Fg;t+o6'_sePP J@+URmÓr+ :4D*>5\/,(</-y.nyZg>MMn;H玾}gb!6i=I:#|KZ~M88uܖM\FV&IdԬ6 7+;"'Yt҂lPIG"2Y$O),l_N7A@q±}]hYZSX }@ψ>Y3]MT?0(PcUF1 'Or Hta 9WGѿ  q{CڦZ1ie;9adzNֲ!s=011WX\:\`R}`# w Lٍ+V8Bu߂8[Ԝ :Mɚ0-K+3qTOp5s\}*b%k,s,ݛE8hԳc6{"䝜#vTck1Q7B j#ژ>zkɽ%,}ŋԵﴁ h+l7yB}E-"UN搞^P#`X]%9 ȵG\ `%0d'͒>js.O3eu_𨌓^od|s։'%F@,σ{k1o^EڝV*[U y{*Z$^߀Qȶl&n!Yrwt.*>ĄS|J'U h~:Q! k-Fl~,UZ`tM)q*x٘PԮ,l7]5Wg. %$f)z _I&xRSS[R팵ϱ?]_Z{URR]StaxfWۈ ̖19+ezKVdLr2MU--bfP8˼wf)T!y?փ~$LŸmu"~v]'{0RGxˢps\7^le~|LtGuXPX(l~08>>MI˘֤Ҥ#W%NUc}Pc\k'Lشɇ(Nns5Nۣߕ~d,gi %ϰE.r@[cBGDiq"!#)WrNo`<C*&#ҘNou>$Lʢ=T{>RCBgǪ z[P%>GQaá=EI?3cr+? =Pe|zPH?h֜UIȢ#:Jk)ʌ7o PfREoXH"{w)4DEI%܋u \j;_,Å45n3JlKT7} JsH.&Fv^.#\sص'!Eŋi.tnbU1ďus_m/{xe!CVZ LhȨֿP!"xg]dD?F5!TptōVnϰ"YZ JҜD89$x!K >/4QڑV;;zE([uSc۞T M\B1DZΛvP1F$ݳ*?*bO|͑Ph$hg&TLv pa<(չKl`dqkh%tyIJd r<7`;5~[ĕ.u2h}vј'T87S%'QHY-H?|6 Z.Wӡ!~[S8CFk0cw te c5قEu٢lkҳ"2~ _KΠGt$tSѨ)_tF$`la\~Z`m]ZQuw"X0;6hm5٫^{u|{-9Rh݄x E e(qzםVUr)j؆ah)OPy DYߵ)h^0Iަ++}C{sK$iW˷_A(⃪}k(N~_F\{Dvz/ U+XbNÆ&,T6`2C]Ԟ5Rs*cV%4 ;*kz*S,2kI q"Y&Ƿ IwK 5Wiy@>X%Rx% EXio!"Qz-ƻKh@uڨSMZ f_Kݹ`;"PpU.u1wO.@!?gEM l{|0+Zi?܃R]\_eg _D#S2sL>ѽՔ#΀-^/`OwO2A n&=<%7ZOd/=HmT)oLxf>`t ZP Dk[1ЈGHo꾊ݣʧ>kAe:[3R0b+_y#jrXZ'+ߥ[u#}ufEo&)~INq 6M@A;Ӏ(4Y*\;\n5ʼnUmYH0`Y#,AyőGA\5ߕHРL޳ @U(YthK (ӈXroJ  ܒ%ܧ!бm7ȩVk~<Sy/>,&D; 22xz`dVFakɨ ""<.܇hQI_evf.馩YGa$wۈ7)Qz-_m9^%- R(BJ27~ȉHRWHTC=R;XTy}Po4not=N1|km^곓͢[,g+4˕PCtT~vY:%@JPz 6'YaxTg Db" ono}ݪS,'b#~ 1}G")gBsQ AtAQZ P=Y[&L ԻGcnVWi11uYR xѷ`a c.JH,лI:#st.D)nrL*$ "4(/>SczrJH*^&߲'mDV}i')z9$7 ҄;Rۉ%HGF{2gX:n7wUZeDjsu{3yȬw]gNFĊ(p2*] uG4<}^S5B@(x,uJU9K;]+t- Tè mO,ף%bA[?Bb2IVG"$j~뚤,BO0%~mAQ1+xYvɀ)vvHr@H7E)֟rө%4lmٳM'7zI7up -G0ucGB^0(ksθ=qW:#xt& r:94BUeP5g@O{UoCbùp\]BiB{(m$k\0t^,*M҃o/(f4y]}5("A4^sD.8 I\yѯ󤽳{zmhďPTn0fv!i;y~'?w3 q9#y bDH ʯG!_*TExqh@y{+<;Lr"cP\Qvv 0*DsN:^eݳ>?_`B,*(PO ؍lIhe;]!Pc9.=y9uP:] k`+9%fIucb7Mz_.{n9&?a=]0{I DJgU% 0ͰV,^>4C@)Qu}c%s 㥫G9?v=%]:"Y$w4;!Vч#H" X sHHxfY`*ONz5MRB8oeu 8>-j2h/P]θ {zEP;Q %<+ܗǬeֿx^uECzݑU]/$I2'Y] t wu&fA!}d=Z:SR9<4hQZL.c=׾77\ج.ɘm%Hԍķ=߿,G;G90"'mQ%= %uY!CShNx൴̗| q|oP`n%Gie;[ ,Ա\Ex)@3! X!6z*- x$V@6*"K)SJ{*\'jܑ^h]w<47jZ&}K 8a9cI.,"6Q ,봂([SCl؎P?%в-RՅ FP<>Cg5c]vſ-Z@s6 ⌽Nfy5omv4@aȠ8tA`-_?cָ`ChvQ !N{C?0XO:NPYSܬ-ɐ-wW'` :X\7r`x[fkS4\XӺ(/ F V!檉tL .p#6~5i-iÝ &^h]LoE4АKPIj7mP|mD/G0s;kyUa#~_R43⚶x2JپWbjÍ 3ߊyF MXQg&*lε-S!8"ÍyO2C@KcS%UMs_x:CwR,w/8fK}VIk}0j4}ν5J|͝fڛitd?Ԣ: D4,%)tᵏUsۿ27`1X%U{.rVW.R4}Ȏ63՗ 'QfӉTϊ:߰(z"Krf e56]I1Fb )ƻ.˓8sdrR0[(&A$kc/K[ 2t>;^B)b߽Pi T>`ֆ|>D'Hcّy}pI#ҭ"KJmTcTc] A4C(i8ϙmrlQ!4α RWV.  ;F 0٪64({~?~B[B(AI8}JQ]:Z1ga\̙+(K#~rG<Uy3>,aEt ?C2ӿ*;KY+1t޲^>n;y,y; 3Aq!LJBI;S`?DoJ ,ѸE7#08E@"9Z؇faI:~Hg=Xs"012B ՎP+W9%Q X d E|p{'l5%3YyU0AM7e} \+#Lcl~>|.PC" BUYvhBdٸ$vFX096SKy71^iu+R16Dq|QDYu>BW[}Buw m~[|Z-U*)zxyr*57UXAT|'4GG7ɡT_%Lx+9δ}mLsm#h裓mӸ.FAbUFf, '<h(FWl{@BȻJy54K}&]254n(yzU/"{T:Web#?w_`MM9t&mkW nIɵ]zj90 Xӄsu,($ %^k "-j!:N0UCv#x\BT\S&tMv鐱gKlY6(DmR.]ldeipы ~5HVsde Gi~Q06 mf3$7ƻĨ_$K%.ʱ4~EʨD_ׁ1T uPa>`QP$=n%i%Vgp{s2+4LjZQ,Wc 9;Sl1 HD\?ԗG}έa!dbnQ=!byдBi4h3fAʛƼ9[<4P`Һ1GR$E+tR'NbˆF#wjA,PBG`+TE! )@\Ka竒S,us/ETzԂnY®6(4< PM=2ז*]4.Bsqq=15%Hrft{I#2Fdr'\Oc lhGSA<݄s<ๅԨh"<'~D0XZًy_OMm2n*&׽p# SLK|!c7u;x|!iUի Z6p8;z84RoqDQZv | `lƻZ?[ ^(apncRIfP?:wX 9A֘AփXuU6>oڦxН b`jlڇY"=I4CscLd[%<1 G `*(l<8*$ndBzȽqXi0&&3#B8d9 g& %jnBp.w?ZP)8=Qމ:J8u:xb>kwR|Y&δ8?`?!XQ&|C(1S5 U{ͯ?`POcj ΄*ZavTo4Ii镬B 4!PxUmȹޱ74]_ Zuܳ-oAՅ;Os_5o`/t|FێfYT;y~ ʩ8ơv^/ Afoq2P|^"gb5<^_(M3"r!LVXF̖ ŏJhׂo8gt1'/x51}'I;%(.eTvxԞ3.B7W~QƆbyY_.H/ H 1+8ˣ~+ {lj0˿*gT$UAk8:׍Z-Z) ie:F;u$qm[ %ulHnjX?[Fq%eh8Rh{ld:@n,ā?d\8a9#zA0 p7 {+xЦz{~vmaysW/[CJH vMcҵLxAiγZe]^Id ,ٔTxh%9Fk|Q鼣rѶ@<[ M֐) Yd;$]31Ylcn@y&CGP\~wcʺ`AU)-[`e'{57 ČA2+Do6wFVu{Zt8 y\ɖy_4b9+ Ш+< 4z De"iJ׷{;ZZth99ŝ&ujO H#0!tG6W.,N7xxAWz<֪BP”@?\ zJqbϋ<[;ۨEӰTY<6W'5tYU#㡸G]ιZ?+ix;KwHnt0$\Q!$;Eϛ/"~KR,: 5\ GLc} N\r.ƕV`Nu8ץald ٥?-ھ]$a0<[m@%i}PM){ɟѳۣZ1-ĤZ>gr?7Â:ڦ*in8P4odqsk0enc " tȵ\LbBYXv&z)*PU*.,<⯡Ic"SO!Fڎ# 10~j |iHDnbr Id&Jedb -4꼼GeLPC`M5rsY $c"Y'3<0 QJ{]g&agүx.d2DM>$@J$P䦂|>?% K۝ʈNDw]E0? ~`*xS+ 0A9 Ut5襢lʼn ^Lʤ_ T35#t|̡ig<1_xI(GPӠͩ d(ƶL|$iUSw(T6{WO=φ3}uI/{&N ? YA.'oT=E K =4 =.unfd:7FyZF'=?2tѱ8͂t>qF^ȠlV(OT5x%$ W!|ҍF?i0M~5 i [q8{"ndZ&3@!J30wOK]eb,R,$3 dY .|z9|>(, <'lfYC-_ai/$@F58 Qt8.{ OWuUY)LX7f&*?ۯ=C=K 0C,KxwW]#sH+І߲<5^tɚ[GK[av{j (lښSj$`e4)]H:爥u RsXbCN gS+~܌ZF"Cغ(^8Q|ćvb_J,wϊk++ErKa0|VPs5;;w꠽M鿶yhq\fUBW`N>?TPj+s(CnY|!prɈAwNIey(Z8S<)Z؋eS YeI5&*3ĵDM`h,!aDl̵PAU>ӣ2[.O`n ~0|EO?mqU8ڎ5첓(lW*ҽ N`Ttk3sv <'ᩂu@-Xrj ⅄")5g+,裦@/GD[ݽXgWx6U12FgTƻB^ALF!bVt&{;R>?؇浑gT9˹TX'9_nTPχ<{l;4¢ %_ ~N5vz 7&cAQugmc`p])'rvB=u%=vc(1 Zd0wh!.0T *iX( ^[gۄNAH@ M6:$I"x+WS"}B|.؝ҟ=ZCbBچgiq2_#Q900FD-_pemRoCknl8MV |a?'1>!⒌Ģ< ufϡ[^yf2YY9 0 &e:QΆ++*s%¬n )$^1u7)#6X]&m+o+Y|\V4x+ &OL@{Nu kS3͔KMp#a3svB|GFi1}NiXhgYHoE_ifX5Bvj" :;gH=Fq;_׾KLP &Q6ʶ,a?ߛƫqT6 ~|hZvopJMH益+Wd|R8=!LzQ(8r%XʒDt(Χ3[7w`?93Ӂ8A\$pL7:%h<7n~<3kZܛKw5+&JÆycSQ~@WE!0&G֋ښCxǻWbd zySw/^v8lSl LU@ˀB5AEEYݙ. 73pэݍZ(peq,ϳ!Ϭ%#̒'Lc…aPK}épQ\Dal1"٪8Qa'@)A5%!4X [|e$Sw gz[@ejWt/.!bG?~zf~Bo.%di(،[\lmMΧ}*u̦X+=uKAy&)ט mV5QL, ,Yx0 UUL'&~yswBS}Ȋ6)ֆ@/n0P3:fd)Nfs8ewwwp` wpdp)e`}5 KH/IrCTYҰzA-j)2=$,l]AubGOU3aX7VA%򉷯MȔt(oУ ?&/7(`xi'ձ?6_F#a)Ǭ/ǎa{yQw%kAzus֩AjtҦ+::xP5Ri}  g]8S}9Jz0|4'ïZU ~bV!J7{bo~\mO(L,g6iE14StO1o-Ll3K(LtQN*H"Y7FHؑӄ@@ūq(qaRd} ׬x"s[.B:3$^g4ͦNc7Wqy Jx~Q3WT0l*x dbf\Da#B+aM{w %ˮOIY?4;OM}zOgfXq`W J{zC F }L#պ,Uցqޠ__StV t&D ج?)dXUlsԦZ֍uDGJ!Is]Y>|f5wTkkՓ*YhÞt_Jђ wPuyE?ib1$1DMW"5Jr`!4!7'v#ㄲy༉=}b(I!Q2u”g zeTe6io|씯, Űo0Q-)$/C r&CǾզ 9`Xs01Ȧ|wg#g^M)Jw5܊OU$$z.pwˋ;u-lÝ> # ڋP}.g J12=4 YtW"OnjOo*=M_M'PX]K8 "RaD4ss/X˴]Ȳ8<ϸ6ꇜͪ,xQ3^[.۵ɋAKd*c$S,X{}A:b1?D;7w0ճA_93rګ @:U}¸O F߃JI@  Չpds]MB-e5i$*.gֺH)GxU$&adˤZ0c"ڇ!A49Dֳfj%CoqY}tHH!_.Py.12-ԧv"ɠnrJu!΀4 o'V|@(K"ߋ(P4tKh o,K vLc#W-)1G*_x Ok&7|[}1Tgj7MwW[ˡ>pp;oH{m'w'BbyQ CBX<[B ʡhpF":f[Eg(-A]r zeVMi:[g3X )|^UMq/̺!ufx%'EUMFGqA7k^[*]ވDq`5XWq'P%09M3ޞF }AQD <9HbFr R?+cPF ࢃ%xarjpF]i<\R,Ehq7Z& ZUm %__H!mEr[tX'fM|C7_OxZ,LVptÞl vBca2` KH

.D$SFK1]{P 0I=~`w }Ԗ||P q_Euθ>cToXxS-~Ye ֣(R/FX #m97/RIlS+洘߮*._Nz~lx(5;2mwxzľ w幯r'p џVb Y.j_r$$"b!۳wcY)ҫPn)זWP m.K/ws3De{ȲΓeGO 1m,w- 7J|@ b֘K}z p;1$\ ~,6R}0 sX4p_>*;?}]K&3Zl}U6ċd3*`vhIZdPPc+naڑyE|H LD()ELk[4j3TLWGʊ MIu3y z(%%ޏ2XshLbӉOOff33$* "ily٣^+E.f_é"+ 8d<A?1J 62$\>4Krw٬ |D.IdL_pϒ&"zK*$#m5Ч󵲉"} V ƹ߱hmC({ \Mk9|wb=#͂v=6 Iͽ4'H(j0ܝ*|sRNo;?Ru6):1QVN>Vi$WM|cFG,_M|Bx76[aiRn}wTOmU۾oѣsG DՁ 8>btjL%#id6ڻ__Y M/#s$cWy!.KxsF'GFG姃ceԃsO 'MHѧn$Gj9r40ɳ(Ҋ褆v ͹ܒ J2FA3 ͑[d*s(ilsw*k* ?#AO똇R_"k =:3%_z/5E@De15RFI9hԧf:m(i!9  fO жŠ_Uqk#͙*Y)}Kۨ8ObmT \ !GLH&0e޹9Y{xe(2 ut̋[ϋf؃YIȤA|DŦpGe+WŗjK_h(e4j(ozt'c]`scaml9s*rNT)&{|8i} kjbϜ'K@&POl&\@c&NrE,!\mLJN6͇|bn{L9̤RʀARѠIDA-,y ąLJQ0c^a <ܔ0°]c4F7j{ֆǃр=d"zvsM #j HH/E4v}&Խt=w x<9:E|+k8;d*3tyFKW{{`xA][7$tB%Ayb 26ӾPs'Җ[7B@g)2]\ WY K s^}'[c 8Xo]jNv`lD>fO?gG?1;ؖ@~аU0*̨/ )ݞC Uŕm⿸Nk8lhn nM<.|uS|πoE܊s~Y>]^`3>zdm7{PEUUHduO!Y%ƵD2XGe蜠ʳ;I-Ew%F]S i5E7C8V:(gGQc]a%Qe Y!082JP:/NM] -F_1~(/3h'LmM/fqFl.O"%ʷ%c|VkHRn-xǧoltC0yu#R/3D\@ iV!zRRqd6ddfG/fA>Д'm҂ !_!%);I+<7^J>Ljct†ui+CId)rvD%7L̲Q5#I5}X{~+ rtڶMκi9DIKr ^m fWuf6Ԕ&it9Ζw %3t`/V $5X>_ ڗ]&>/:3?]S( ӉULFuEy<:VHŐ7h? ㋰ џNؚ]1:˭J Alj9@xHNڂl!aƉ[F L?pXZ?%ȍU, !$u{Is 6?&; JLi+K`ĖlsF>\ogp|d=f1] .#!A-d=Ҭ[yǡ6D_aAuo=5AoJ8w0r]c/6l/Lk6)H\GOz6I]0~ -"%k'+лR{n6(r:rBxF0V35 e/Y׵6Me!,TzrK%?t7?ؓ'Gݍ>qP3 ɧ-$/P`C#Ub<$X/nAkoXyo,k<44Twϴ|Xi͓,y8qej ռί I~=?5TF(yX"߯~#q@w3Zw:%"*# lPn8 "Fj"]iCޝ"spˋAʁBJZ} n?S0tn+&m?Cgjjm%aˠ`Yo=la%*) ?l<0 WQ`*R+{c++Sq1=WR #kݦ߷4xW6|!IOKD:`j8 T-kI?G-X9KGxu:Dm(&+k{JZ yg;@A_ENY })} Zؕ=K[*ԭɹհΐWKG}jɞusʭg)nM9GD {IE~Z*`q_4Kwc~fpSż{]O]*1~em[I큟Gxǹ^c\y9Md)X+ F-BAV/Ns!Ύek-.*cΝ:ZI7\N Tf-apGzyj <<4jvr+TWa.h1MSja(n?+& <S@z1; R8ruA~ŭi>U6Z^1(XशL.Kr4ۇjmt]mNc!OJ< piHWvT"rȆ s?Q6^/[T6x1Vl eo0'[Gv._HQwk&oHr|GZH _u"T"|7u9Xh.Cr2â,~@ZSMrٗ#Ii <59j(9\^P CA 3w~#gFbt06 c$CqW)~lYɎdG82#{/vHE3Wz*I`4e+9 yY_&\.<0)̵ tȚfFneԋ7nXؼoy@L5٩v["gq΃R{iX=ԥx}hSCBz{D?vYY$h ڐEĻWur'õŹaMꙟƦ`_x?kGd P }6̞MHx4h`DC|"PCRk;2O M$P(("H瀓Hq4RC#B77Ew~s\p3 ȗ JeN5(D:MMTT$Vm32dQGJ7)=FigF*%\iOM҇)mW voQY4Apdj[–ޯE2ύ %IjZ֒DRNDcâS^,)sעZMbm~S:OY P Q-<k8eб > D%eTu;{+8_ Y=ݘ0ֹ Abu%L8%ri >7rr=+K ;Pt_mǻ7;CUO)miR1q3);Q5#UA3tQ>(.T827;a Z/W7`h)^@L[_>eX|"ɠ Vqr M$rHK ʰ~a{"5MĎǔȌר0댬<9iL;{н.^K>>-e0*c_ڡxj ɕIo1Πy|Q㮺JS@7HfOBxNX>81͓Ν?!q2,y<Z<67No:WlD׽sxe,`6e]]̤``$iMI&~^tl_axzPyƭ<.tBRB" ~hwJl|zR(3(z632$ mgt7~}Jq79j{7$CF``3BXbWXP0,.!t`v̵ЙmnXc,d_@pJDBj;~Eut dJW['2 a/]tgm]l; BD ]$F>_me` QX"-*V=uhh$/zEqVoBn@iqjT{O~/= @Y ~i_fr؆2צzqqEk(S AᄿEo{|/z]f㷊#ARf&@ kM4k~TZQNsqST Z$)۔k&WH^W [X+i#V-3Y> _,ܯ>Rnk'1(> %#dVw^Ej,ǧ:HdOqiw1[55 *|[9_L#\hV qU㡌P쾏U0Cz9ӀI6枝qӨ:qu@+sĚW T2u3!,kYygkִj+\fpD.#= K])6+>i+ 9hwjAek6iˮ"L1uR%0.tڝ\kơչɌL;#J,FrU*Y!1"^6K7h-Y`WYtVtm=)|j{3ARDx;%K"wg!COhia ׂf-[ ބݳ;u+;`W^ ܕI%K:E0g\U|օG {3ZA=(uo4c*]\ײmuI C/jViQOкEJ$8qOD7r;uwV`BJy`^WgMYC@0~a˨%i]=UmjƮTn=Yfc8Ƅ-;{M^ KFbt{ y/]F6烪_H󙩒H A3M>;4h=Ys-+ۖاg~"Hިcrm pUI#uI?g=*e¤ܤ+Zw:z j09"~*elR!EڣʆJ cOl] IcVPe@R@ɅcC(Hϐ0ehn?]VZ*x_#vM` eM ՕJ9pPCP}Nz'C֙ ir1xQa fS)x[O1ƒL_w{7\Vi}g-e']D7(2HJT?0M1={Ƈ˯dABFE*)ߦh!ULBFªTֱ(ՑL!H]0Sw+~GRkש+~(\}r@o!9cW LL 'Q~JO}1aKV *wlI:Z6|`1 PC /jz؊ hڌI > bv)ی <0U0':qb= R Jm~oy4LCY%#ET$X!كz["Ym ǣJ6=DwE3-_ d̦UJ}9MOJdu%14M\%D{WpHR( +[U R$ngb.1LlI:kL[dB=H#%I6f;Ы ~r W=~ymrD :*8ȼeKlr1CjnO~ 'ZSn0}7w\~2|ey!-d\Cɢ%KpŜ?P]$Qv=OoU⚆DSx:^WӍHGcqHskܬ(sdqĂ>W)𩇼)q,9'.84F*-*?,R4&;Rǯ=πCzrR$6KyXJ37Jc|} Zi}) xb .\Yd,IXP64gT=L!?kKbQnkt}_ ɧP5զY c$r~rY:=΍(yxXjz߻ކv%%݄=LTc3NXO`?1CQzJ }SVě٩\ԓ`!łB.3RBP6[ś oS'HY>R"Dd6cP!+j6GoL@PbՅ1hLw:W֔l`Ge!S,Gm#Ld̳VϼXCɚx+t.q_y*D>q[ĻI$TP: F*.ٔJn{ ?Q/֫tZxPgP8_cII_d9'蘋p)Sydme.?^S~R<ݙP@ 7M@Q Nr-3]{@es&L.Mw5I'Bg Xx?Ϗ*n o0o-ͣLaXYu`q]~)YVL$5A+߲YA]o%>^ vSڳZq&8wԐWP0Hܥ1='|x5[, ~, w~(lױ[2(9-#%g鵨twlC(f$=!,`}S r:ooݽYExxB+}S#Գ^Oz+UvTY*#WiͰuEzCQ|P_)hύ'Ⱥbqg@YuHksvnQ ?Ț"ġK>EFcұ[ 3@`>N"vkk`:/"٫]Xݾ;{e߉.%_T$%vzLBp^cZ ; Dy8O!Bd Af۶$glhѕP/-˚, bRLd~ei@->8jK~6R-XdT\=b 19!vLeDȼ~ (;ݰQ~ޛTA#ܨdK3niYc r d,i1-zL땒^f 0U -ogGe8'P `65{YgYs_IgF;)6n5 wEM%Mn5wn4fUPڧ^ ѶK{#RzɘY6dp~K goν:{Wf*jxVJbF߶dCJ)'x7.;yt2wR BH)+Upȹu\?XH2͒J3L"}wiU;NX'ͳa"Ԟr_xz>iW.sWKm R{T\"Vz @W̴y^4OpR9IM/T(C)I![t֣D﫯gg& "V){i i;ɐz;]uAD*lHXO<>yD{>y3bY}. .4X^n@gd-JsĞgK (rqc{ TM<6: ӕ"̹zJ;tԓm$ Uƺ =HsE;ruEرJ<-mShnj1:`}4b6jݧLmR!}й5\ݦm(\ћ& =Ϊ|wetv t: ?c4ꖕ2[՗ k]ݍ ,c}ȏuAM1cRtRܩR\Aոv:s`rpWCx>*3Ei{F8S{z P56 yF={){lzFWfyI߾6dYj"TMAk`d Hd ,5@"ZtC/3>_&SWUAX&N4E*4`M&s{CveQ8' ab!P%Gk^EkEi DX ՛@5`{Ϡ@CZ:WMYaܾ?DG2`-qc` gfdT17E5UG->!K%;KƌC eT& [@uHi^6~"Cحzc($>̖Vbx/bx :!1n/v w B=}0@v-]hQʑfQt{Q :Ӳ{,J \WGj?l# 7;Y#>S Wrw|,2_]kxu~D %Gyq"3sJ,H9!%zi-GM ơբ1Go?| wHha z 2hrs %KfD w `Pl_3=GV @Rtk]|P:H&&mbG᪛jRV.D}cj0OM|5%r\/j}IwNMdҖ|K ?cш^ޡVJ,e"q! Tұ!>o2o,Wu/K_zub}8<_`2IA#>Ds$K;gm;7eDKyb,RzFP7gsȴsu,ɒ#Ѕs.NbR| n\<2m;3m{N=ؙє%q 7Pr`/:uQr>ͻ)CRP*:;$&92+BɪC:kG4KRJ<5U#!xE[OUKՓq2BiOL8\#e?f/Hۑ9 ! d1"ġ{\yTsTY yEoE5I$;Tx|e~X6\DYS$X5k' I+^Њk5t2+'N` tG% EeҪx. <9I9F}oq`''q\\dweJՌQC/ʱјbZLjy6ցLW7<9o# _*UU5 V`J]֚ (oc+ gѲyKPNA6h4 S\[05_/ZG)7&#OO8B&,3sTqO0tMޭK nBEvٴoy_e?0 #P1A]%ԋ))"~ՎREyr@{W< 0,!4'.#B%PT>)cz@0at*pihJU9Kx18F^ SȨDlr_TT`DB@zb#k%iidDA}(&mNz1.*UvitvX9ͿUnc&6+ p7$ (R68y̔|Z ^Dmn0*Ljn_8T)RaPCȹ|ix|_H^~< |8GlFh*en#<mwE3Ȇ j]D'Ç+i3$:W^GO*;*^7w6ad"zP"2[P e"pa85 #J4 =[-+پ?T?,|TC[WpZQW i5nh%`#ۤu[~)?LR&kXg.1IyCaʊc w]@4bn) =v^xR?fl+ !^z!w$2:q.@*9\u[㋾ͦ] G8CkyMX,ʳpD6dq gB'I„¢" ʐIHrMQc1 𰯢*_H? GEHzOJYOjHysY7FOG,c56z\b&"n p &Wv_ۤ& p!;ëD3i\G~[ ^7 U)H2DݵSrYUݭdR! <}unӈh^FlAUb \tZG>< G2ە.q'-TY<(Cz>#0?TD.ePվ8<:Μrt[@a]Ȅ@ >?gn+fG+d̸K c7:9&)2cgezmE޹ Q<-?NBODVp U3x|2K`4? 3Ks@J_\݂Dwx"le;3l\ { .kzd5"=@y Wʥ{3jic&?|ƥsfB~ ȽiFvUdAqi+}]k==xizDcGT,`Wx4am&CyȔl7y}'d_U _!ov 19.nW"X-ya-2:!cȒ$c H{zxcMԶ9)#/-|·[حXs :39zH?ug(: 暰ݗs`g#n|ڔ?q{[4e2\'Jh[op=8w5Y9|P w IW ZxMfl/h@:M.:Aľ>41~z\>#~g:[n>YAΥxA6;ʍr:Ԯ2F/`y )i͙ϋ-# 6℁IL>/al}rG4@`Ң5Hwmz=0iibvD{k%.^2{]MBW9g׶ / yIFphhLfPQ"K>4Si5ҭ{,HIm 9=719ppID*Ǯg"] gc9!H>LI5^3l/ hҨEu1$Mѐ Ҷ*Oi)R0L}̈́꜈ϭ㩕̄OaG^G#AOGlEn nmi5N4XP{O #0BpBXIW[6F2AFBfһrEKCcmx H\Ȕ6XvSI϶[T\wĮ8 1- ͢$*n1gprJIMیv6Y,mSlos}$a WVmfM1|zQ8]8EcZO#w̧cFy@'0I||Mz ‘%H. E^SX^FUv1Љ_~^psl/d:O'c27󌵁DI(ӘB!lZG7H[Iw#{P^4,U1*f.s;qE!b iN}ٵh@]WbTe/ bbH1R}N$еywJWjh8^o*#ġ P#Q[XV,.WV?^x'ѬB0& B+-P_+KC]+eeC>"u5T t{W+UcA_~5zj_2e w 6B/tp+FɕQ 4_Vza7*l~ׅol.=1^ ,Dܬr0Xi9P'igt6qqaMv׾y[,(iIX7GW[ydU몙t:x̅iC_[cЈn/>6OGLxe5Ob1C{?UJdul0l,̖>;HmFȴ ~rX3jG&:^--Ca? {Dz]Vj誛>;`+"ލEj T = 󺏼4݈QR)On+r(6a`Gd*67RP8>GČhʐoz`hAJv@oH'HtO 1]U$Ƃ%4qCc[ОIo`0{OL%cb!}t&Sxչ.5W'IIk&ê}$ (AهF =TA͒eis`~(#NAlHVR>ؤ1+62G"/s?~fI R| Ca4 ޸6&%CWn )*AFo:r=D0>B%jĥ2xIXRoLyNRz,wVr< V:!VE GbuiNr>6mZN֯fW"~!UT [.G0$Qo|Yve+\1N263ik"%GCv>' ćH<Zv5f*q\̻D-_dxz]LƏ93⭙iW(xo7+uvdo6Ӝvт-qIo2f{ DL1ˢ٦MV7'nZY-1,#R͊B"'[lz;XPqnQ*f`mbR`w=HE i7&'OT 2vѢ',7%(ET;2wj+ ʽk⏲X,gvf:e$!/Zhɲg!*@RrNw"bYa5hU}z eW u6a ;N{cXr= # _"h|[|wtlDlKl$͖&H ˜Ⱦ/QQ ž} fne\]ܯ=F}YEpvGOYw}5]3% ܖ]h2o8友R*UtRWmεʡQցsEnE;D)#fӻrB {2#'M{S;HGX;1 IA$F醙C$1Hsr4`O.PPK Sp5秛 Of"Ǖyl؅AxvR7ܴK^Wn`/r*ʵX%tJNn7G+5Ovpz &*e)TLY^ 7Mۗn66&̫z,R(7{Up楹a;= ?ʶ#>ʐS,s3;V{S ": w8SuYt(YNFZ;̜Vo]I!9zd@T2)H؋Vcuc7[^v" v#e$tT޳KV.zԵ81$½= P^91uR=UԛLqoMw!F8_ Bn(A6-\7ey{A$ 3q5P+PWǑH6g.<':v|V:fXUɿjOLSQ}-Zg380 46`8k9]7Ѡ^͌ oAW@5w0$Y2/7_gBmf..-kY^;kE" :bׇm$Dm,ӷIP wa Xqշl"ekذxI}0D]edeGl)0#t68G>ݪ1(|1G\\ rc3¾( Xtd)).щjOyy(_sfaq ?<S\pΌ.`7CaٻO+Ex_ l k_я#4ڮ.F+A?BA"TnwLډڪ:,eժ6^{a5M9ӢPC*D :41 "eٖh _D>"2+% ՠ$rL@O\Gw ݇C魛i%ɂW҆+2G\ 8PhS'=CrXzp])?]W+aO,p((P*9ԴN)!^fN[vH( iGN֛ݘLZ~׏nEu*m*[_ c %Qn."(9yOGǓgmYQN`[0p} @M]9.&IcTGBRwXvf;IJ P^rff`$D0"Ta}Fhh *%3k$jwGDsqĞկyx/TV`ޛHo<{#2t֒qmIҼSsS`%KS>įjP3#?!:WO2<+J%/gUcn:.Gy <%wMkp sҠHr6 gp'*L kxmC26Ύr޽H0+$Q^,Ί3Q o= U'̨LK=fq 0l))qFuHP (֥fL@+RO>ljw2=%mW8l<ɚ)bByX%:Lm/KnMjǃsQl!4&3ڏ@,7HR]ɁN:ą'K;nDoGr/C!:) t0U;uꡂZy E\#"jC߯8Ptv63 O`}g"J+K8 -ή(ѠNMH<2Y*P@0߾Y(Ӵۈ ;ڌ7ʈQAXyIT)[-`mŻ^\)WC|>#9%Z:yB S@yVVI$8B#4 KO~t1==P7kMC>n^uA]e7DUwIOZzUo {}ps.fA0X"Oj 0zB^:GDP6)l֜#gԔ^9}ا-Q64 vTؼqՙ``Kv*f{~xgl^.$)}|\Qej rHL}8LB=K(vM[h1Ό K(Bm&y_',/$p{4r.9M9hO\4sۥf 5CM=;;qؽzsElKKj 9Kk7({*j/cNBk~tXr*C܎Z^nʢG<Ϥ/tWƟ5MyakqQm.kRҴaXCh5)WTINOJ SG9EU!4vHjԠ+7,4' IId/GPsipL.fusDYiD$i&Z~8],匬Cɯ>"7AGI3λ-VU3+aّpv 2Y)Xm`*̵Z^(i퀅;<ӫO &nXHK=1HXZ&i9ߣt=Loƽis=rNS9.Vy˚ʿX2 E1;4wW+4P`]3kM3q (V7y)#+ؘdɶ}`y^L.B4QU-L|r]h˦w&LN %!`d wVԤ"}T=UM gG͹!q{G~#sA F hm`u*$AY!7JB3o4O,zUcBHIp  iӿnayQ5}* a vva)Q3kX/%Fw'ҍ`4͆#FUJ+9n=R򘿴<: tq#YDN?ڶQP J⍶ROW9tVDZPaA$ f?XsnBĆ4| '+=za}8_HiR D25j+73:$i;H PQ8˩U R)y ˠ<`J> ܯ*Ɗ$) DQ|1N nH1'C~Sw{ɠR-3U]/#G_*hΪĖHD$%bo FlBͱ 6lTHeIM< -80f=&Q͞_Лr$G@<, 'Ӯ XKu!Vt er:DjrahYzoXOs0^}dr,mpØ.P݇qgJ\Y&+rݭƕ6J͵f3=HD~8MP 0Bsbvş%o">**=ђ8,-垔 Ls;mo.\ #d^l:[<1 D&7C%R/bKet9;ձF1Z@\$]oD97-ܡf L)~4 sYk@VlN"WBfY`[2a/ltiPQW]CS%ۥA 2ض-_o~f +9( smIy3_nQ,X2x/MyWe7Ce\sE=G2bNB- K"a:Y}eh!&ޭ1h> -yJ6#]KXD,U\m6^D9/'I!̌yɤ1Il}%HoXUA>fG:A_J?$yjLxګDWAkFnQ#N;Xdli|侞m ʤ Ebb4X\TW ‹}Q_${zhEg+hH4uy)|HC| 9t|h? @a&$w,5&u4IGHS5_~<*Kv{ifqfLؠת˹V;\1"u\W s3|'C<88C"I*1_E꼍7?)zP4,0=Sy4q@\X6kR̡nF"%5߽v:>phNX2Sgn)Bx 1Z3^7[]F2-ߊD]+-F-uS]fO!ZI*5UMa|qIDUzbOS|gSy\$Aj{]$v|]zzCʗ¦{5*Fg©uP[9><6~ތaO74 &)F!oU9:.I <8R3G:He͎`?czAN:ew'z'+a` xħU 약1t0 |]f,QH(z_oYRq*@g`5xmDYѱ6b=GE߿ FH3wyKJPAG2N4D y*qǞ ƌaCSXAٹ|]^,ٰhٝK;N' @z @)ȇ@X3&| ,9{KL&ˍ%Cd K7.|;DրW;}Ҧ =0Ք H5I26F?!u [=2xI[,L5(\ئyj8TLFMPH\c?S 9z(vI5{`Sj@NT(`.⢤BkM;68@:rSy4.Rv\;Vێ/evRtȋܯ}^gZli:N< Ww"_ #6$η͵d ϥ%ެѮhp]{[&2gJ%Òݘh仓<1^SFȡ) 1Iӎ0X#mt{| FEdjX~`뗟Ԓe^﷓7 KϽfAۈRu.<Hryජ\2e;X1RL &b+b ߖz$`mә 4Q)gȕ5nU&Db5[x~tJԾ2ZGm6nr8ǟLf9)qS`xX{Je5ƭIpl(Ir,B%wG>Slf;?rjq,91[wܙ| Pqq,&YC:m"~y ˆF %lf sQ@S0mJ#ĽzVg ɉɯys- n龗DΏϛ( z qJٍ>I{}'E]ҐmVc\@md|:ylԨDL}>fij0M_ 10(0==nkzXq:4QH4DWF}o[Kwi8 WA,CήH.%d{m hh7I_C&<{|ua0WLw]L. EjJ#\ (.^g"-7C!ٹ|L+ebdRb]ĝ֢u-WAW7F*.;'mľ6N }t2Meb.tW&-K,&@bgUʬك }guՁ+oP˿pgF on4eOpR "wypf1OϺ7mA5P^X݋htW2;6E"X%C3֓G܉)3gn"bĢ dyctjs[M=_7MSmy`lΥ4kDsEjmOxIoT}Cu0 tقk夨 ̿}N*Ue;)x!@K(f޿4,&>M3 `qz+#Qtp ;?5Ns_ͬ|jҷ#x ^Cg0_w1^7mZvt:`28 " Z*Ro;h;& __7b_!&˪`$ʙ|șNW;7GE?k[N:Rs_:CF#,ɱBZ +->qEk>!]Wvy~v#g}\:a{&z]e9Ϋ)6HDBk/ڀ'ˎY*絼˚F˨ ft%*TMpqQYf+r˾Bz ñ*U]$t6Q&}iz%I"htyM\]I* ͊pOVEl-}!xR&91VRB5hSN-9Nox̥.L]A]Jꓩ~8rDB ģGq Ӎ 6gPfRle}B/IAh;.h7[3U wZmrMؓ[RϚP,]y ‹Aא\4wyq0bEA;:{[o3)J$ku Ө9Q3t>uy Zegk((wȂBH*>nF8]yF/+1:U0drɿAC w.<ǝP|a.ju0R=(7D#K[N?˨C譶mEl.(QJķmTĥU]v >{ lIZz՗֌ҍﲷ]f+1\l{VXfc؆r 7F.Z_,oc y& ,sJКf 1xL6BdZK=]B2 _!aQ;~ώ iSmZNL FŃ%m"j4 ',]_BĔ_Tי(60\JwsRZ:)N$l| e]SpQJQpMcfy [iixt1) }0U;I.\{B%+Б"TY.t)Q?ej,)fӋޮ{QA7>(.U}g |)j(YJ•?Vcc{˱0zmB0bHfAt/&k9}'!.0jV'*T3tEk WN2~T4!i=τ6CP@9{-XwhmW/kq0.c"ʮ _ vC_[֮8bSG"2 kԭ$xt _ޔ" (S\)L"+diЉS[s+ FtЂ\tyr{=)fU,KgZjdR^jɥu4MsP|-+B)p,/ ])&ր7™;&X>hǟd~YtCicO;OK;R0@` ƟG{+h3E 7Q%F3g)!$3f`~q JdAFzY'rtr<1l֦XPxJtftzv[5m`ʝ0e`T3NMc#}k:UdUev\ ԇ$NrO Z7^_#'o%,`q\ #O ԧ9( +޻/#ه^iBu`<&n~˲Z>0QqWuG!)e}a݆ VSޮ~=TۀD[/X$)\nMST L#C"ݠ@YK;{kHJ -vOk)CƷ$**3pr|B_lpMrUmJ΅ony? W+lɬ+@7؇>'TWߏ=ȮW6ݞf^^akڇgr|Z!I.sHN5"z)8E\4,/TgqY8 Yj2[*I~?do |-1 F/pHgC()XQ&ʕ.w'T!h-8l{BTFBDN([2 D ́h@fZbp*u֨kkv=U˜hPFxiE+uHzm-?B+xw4U >Oǜ9f`aWbQ-'"i䶴v1|dG A|#GAby S-@E.b==>Q iEZTr{x=SK䪫@IDa} '?F %^GsS\k}5S%Υ|3+}Wl6"%5/Ǣg< C*kR9KMx( pPƑn_.W !R8M}42Q^h=^ .=kv/K@hF?C#K"vs'4´O9d _iZfyײ"`:rAn-)ԷLdD$DF6!YØr|zC+~ 63%'L68%qHS(#,}brJ%Qrq(LM&-:M"^̷&T| k @=zmԹ× ꪖd!*&o1GʈK!q݀KVGuRd,HBWsFqsڀ`t:ng7ژ1q0!i0o0gb^v)RLbmA\&SMc.n"< WT=׃U}|#mɩK(2m)A?SFM{!כ;)љ+WDJ:I+:#+ܠp%&ݖ@?㑳+T K`l8foqQ+@E K'ߦUz&_ ݠOwDC(#-B-"N2Bn2w8 tfz¯tt'58VD_OYPYE Tg-ɂ4&6@>[kX gF)xCV³/7xҬOB7QьxM,B{{V ?݆8yDY]aȘRX%Xm%1bqu+ 1ç}xU~d&Ih8jUKD Oy$Gcisy5"*Oi0k^eͮrW')\EMT=b,MP"iͮI\M5yTˆ: cjtWmBSpte@2d5>-_/IaҒ'Rqj?tTTD6DŦL&3֧хtEKRΩCҢizaIKn6r3RU0{MP[N_9PѨÓsYњ8[b|j&9tHʭ٨ƛl|ezs8{? ]ۣ&L9nO쎴nQ䆷}sV6 ߎڅiʴhGTsM:7}Vن|+U-0R-x{b# kϽ"cR\ſʢچ(g2ZJCN ,4X+ B 8w{ 6tÞlJ

yobREڭ=v뤩LH!] qc &~&'ܺ: U ams)Eߤ\!c 3ǩʬqH_-%i{/ٸ[&p[+5A.NR'+nxU̡*j#EZ%%m9qˁTG <_Y_Y #7|o/eupAHdxAVF$Ī=0rrUz/>{gi{:Gk`ttWek9Ȱ6A-m{^c1C3ٷH'$coYqU?|vAy@gݻ5ƞnwF6C©,}I)!+He~9+KhKddvq]LomN Y,>ufqs ^bCbtX6 1YIˀ/q.MphemXz`d+*;(P]3L_DqHRf߾~zzCL_b1&w;}-򦄬ܕ>_yApx(߳MFwz;o\l1mWW[=Hwڢ(W4fs¤{9"- ~"]On$Cof6ڣi>Ŭg6]8h"g(F4MLXyMQO )<)~ 5sssݴfd'ZYumό#FA􅼉O,u&aJ0adx&vVO2TA&_sDp#\;zAܞiqi%f`6~դi4X)!JBiL&;Bfk(s[G "\ A$3K7Y8q/8P+^$wM(fe>T|Ӝz|qU)`Q|Xҽ:`XЊxyMR=r-R sO/ -3 2ZߧÆaR9$aDJ!Eue[b%[SM&fR>OQfAcxǓ]3m46j|7MF:[6SwY{k/U+ClKǭu,̝SRP||`%U$K4kAb6FY]:K` @d (F#e| ,/%FEn (պ:yT+gJ`%2 >BUzǠlLI[n٢IM"zqFiyX1l8UiY@i>W@,jR'{WnuɏZ kx(ģ XGbs7D6:Xmp&|zAxz/<) sd]"x7nc*"?\$B9d[sYe Hf9JNB:XUv>2G7NJYq"BUry[ ºa0Z+h= ލ=>X};>>'%y9G$$zؗL2wnFUYfnUD$ ynP'ׅ]}d"۱X&IYF/JbmȽV -ky3ՒP(uXͥc?!k}?|#V;tYgrOQ>< ZPmLWہt}qg?MM+% ZHNP$j.z %9=ݥI,xT!^(yfVΚkq, ^^PԤ 9!͵ot4|&DKe|凸6g|@iD$_3JPϪbO\Q{-FƐD](n5U NǃXAtCT2@ãv=bH/N /W$èW ̳9,q%$ DK=.5[ ,LO}u}آURژ-E,>/ܛި&Hb=|@mjG1+BɄ37!fǯSljeX*gɇZ5Qpd-GH5vT#yÏ˙S"O^aSנ?{V&Xu*ӧ5-&D͉0H1@֞Jp4kM7p7*k$P=>w=0a]?vcyVFW*@y\^?oo[!^vp]-Dv2'mhJnW |B~mӎhz*)S/{{zж<6vΫ7iTN)K(X6: vI41y@t_>謾rIbk?㪗} r^{L$#vewd}Pr1閣PK)엿b/N~ۿ0o#Z&$k.!^&~et״Jq}!!(B^WRx h8ʩv,R-Ƴ`k$"7 B #$h~ @͸xOnSj [)'9* :4P1? q!Ϟ9=@M} PzkT-B1[F-3i! Ca55#Į!}2M`:ySųXN0=v4Nenl2"%!s#e ;ג(LoRO'%.d t[CC/-&numjKD$ Y-) 8% SےOqժQD4w(3SmJx:ΨAeښ5cwH=؆vRC(y70mfVRLs:1R9V(%QO O:]yd.r*g3[oS/\lSQ,* `WI^<TaB֍..1x`C%3d2+1Йߕd ,RD\yr9cY;s)߾+ Vm#`fsXxQ؁e*PudǤ.d+"-vJlz3;lİP>p=zXe?zKh[}! %R Jek06k=`+id- WODRpg{&ۭu^^_0X#8WF?Ӥ >\\$Tr뀋iY*{C~R*U>\GMo bh5m0I EQFZSe4HQ5:qXB8> J,sd})a"?ѺY&[_ ɜ@X%GATbKb(mNO'hp'q!-9am> ͯf&P楊u ܦ9jWH] - Ö`r_ď;zB$=l2s|H 1f+h-Gxq <6gbƼT>1QF׿PF8jT82xJuQ\gA>3Աy&`Rd(#F5Vv}aJρҧ#9bY9&Mn~LgDܕ5iEPו" +$9$E< c#P]hmSy[ˤ(I2+]47^ÖEfrnQϹVء+ [- jx 3qE pFbz EnD|_Ҥs X=3i9Lp*.ausHI޻u\ILz/CG  nsR[ JCX K;p&6ڀG*j6mB1VߒPc@HD607}aL(JSCR ֎6`K u ϼχC9:IOpHNmpOúX1zSUr-Ç|Wd9V fh$osqb#[)[F߈%#i\M@ -R }<2aʔQJv+~F*1:rAf򨀤\3R@9 rۭz:kV3 '- nGj3\?fJ4ݠJ37(7~J U/P\^_"dQEJY6&JYok28P /pHFLtZudL}rZCМӛ\=?1:(.ٽ"P;i;P ׽ffFÊEa`nEڴYoŎ>49/M!@$J$9*=x_@A(7M6Ĕ碢o1ukH7ІONXtrKQޢz? ‰J3/-Du.cTsᒱOIur&,Z;z 63k@m_?`XڅL S3|nr Wyk]e gfgy8){QZIוN*^ IOR# 9WOV_?^ܜE{|^N60Vhok eˆTZp}@`WYxi p?'Ӕk1\FZfMS~r2FDEdQux<y/ a;[w#Ť"XmT2o_s6M+*# N`t쌘*)=/Jbx :n+ ӱHY; Ή8M |+hyOP)i^Is?1޸:'rl%X<>I\w1a8`2uKN3>:~r$%lO&䫠< G2M3H% bΗ{Zo- \ ӛb$cǗFEM)wVGuӐhǦAZSڭnGx#>1=f@ORvoG/3cňȃx4e4D}AR)CE?JD58lÜ3>t 1XbK ]RtP 3sŊL]Fe-O|&~-V/6)DNsr:sPƔP1n yWʹLfbr$ տ8u rӆB)M)rA@>}9>yӮYI#>THH P>?~M@%eh{ g}yA8>42DmЊuӿt&CLb+W?73݈r.~)#U#eTtOrIb i.V^aka}8\[Pz{s}/oM/n nlCg6E$vb2wST_$Qwm^B2.'ɛxȽ<9EWl14Nnz4s%܁9Ey뫤& q޼|T:S?nA6ay}?olyO& . NH̖:WǏ-||e,v "].8qV'7o)g}޲zY*;qxHOGR7M]wGyx6a4ۏL& VE1}49I+Â~Qx h]4K7 % sǢ<΀^'G@~p,뤍(rUף|;/>*K0vM5OIT`YXyoM 2ih][gWY^,5L`uώfnh{1$qkL[ )7@п;5\I>^>m7Di#A|_25q > r402o8]2b<ߒXR0+FYS":XP ~6ʝwZT:j+bO'' =lI4=i"K%0ᶻ1uY~$ Lšr {cuQG^ZY=2A&tr z o& z"$F D7X 3KW6&5/R 4C$p뽢|a'=8Mm"V#.YnmݣWYTP̴@s& ?~1jgl:Ycڜ(UY=KW`2bSaP]FpI ,<&m|bj$b;iE#xF;Wx`Ej*=\B|E͉./Cwʹ7~XNzINukEޖY#_p_7OJznOp#8͘y|@!fFr}llj7(7FLi|ޙ;@^PʳmKpfnqPNepK:0WmݸBbp~PBF&uԳ/w_=?׸Ͷ 5G ߆,[s(]7ZHDc&.vU\%ךeTV2s|#pbI36rw9ah5ލHF&r5&Dt)* N%1ٗ.(kHUʦ0$yosǰV"˨@M)L`?!bby㻨w޳i`+Ӭq;EBU^jkyPxzO: XZ@ϦUT+e/oc-j["i .2$gF NR;({P DT-yJ 3V^tIsu @ Sc %Q%it)9ಓQ3d`hgU5dJ\N1ݒXl cP`gs/I܉%ۯ$#'^j bD~ !J;˾AEO5+:LC {5Cʣ37J, ¿7He}.ߠ~{X@[XQ~$$Hyo!ޤ5P0Doj:?MXߩ򀯅{buT9T*}6:L鵛Gba_/[Z ab6 ]; 0}{ >* 9,hj҄8MۺVa a?E$ P9})`f';ЀrLLxCa] *)ivU,׾[NvKa④+kOQu 7! ޖש)6BgZÛ|CͺqK M8g[!83/\pAIStBD 0"ew-s[" Ǒw(]L6TT`O;$ C;[tyV2hV82q gC;DTM(gQQ;E-zH vG!{9L0iZŀSXV NuU!>agrr P rl]?$d 0pe}JvIg(ʦN}umt0[to| ^ˎ*`?.^N_[T9&D~&Z˸9Zk:=IS=ȤvxQiۧuk? :g$\f7G!GQ5Ю0W.2h:Hs3eW㬤/r`BwH Aj0Dڥ%V1BSw b(#X/`ksUpw%5@&4>+} Zl]+ͷx{_k X^ Vg ϕ`_!"aGY8Qy’ ogx-ctO]oч{C`AK-RS+H!GKfO,FfLRޔGݨc>ΩʾX+`&KG>oЮNo "aEAZDLvl*)l*dU@SyLR.qU(LXrӶմ[Fy02.򡋛n+ET\dr_^Y,<+/d"6mu=%V }v [~DޣϫPhC0/,ܱ>EeK@ 8U!qA!LP4jr\0``U@mLGʮO'/Bz: 0>Al ? 9Z7aξ?[rgSX8Z"<5MhZkŋ~irP\7Ubڝė'LZ'߱7fe4*{[#,fyh?IKi Q^9Oa+;,Al,l?]-q(,e|TE}+֊>yѧfX87&_uv5j&FnbqǺܰ&3aI`^Z  *;)ini>1>X/0s)l=7^KS&C*_%APujOor ஍Ȣȹ;`2~`]r'OR5+y,c@Yk9ˎ"@iEoL9JgRGYIB!@g_NMݍmN.0!7nc}0O|wpA1f~+F4)ӎgV&X2hD^ĬrCD; Ooam+%-[Ǣ.z-wUDxt X00w <106y$Vg Z^'|'EG')?x;[[[OWo?N6 u/s4P@*5#/-AfhH-b=;{gXJ"p8vT SjehOfŏ)åĻjK >b;uU9ribG(P^Nm $Ž*$/-AXmV†'LkBXJ2b \f?0\>&# 2OZ)7D: cΊ$uJBea9lJr]*e>#ĔBhQٚON J,LL vD3_D.3= -N])k1eB4>Q"+ȅU'\ocd7ƴ+"~2xfIBM:2תZ27\zĨTAgRFOr[}SWWc!ȆrqvM ~HbnBRrn a <w)Ӽ9؏Z3Dy mw*,ۅ׃Sre^,2ZŌ豜˦hH'JŤJ7!R˃&_!72?exi?E%{)>{?JUW>Ơz@ :w>J~wm)hCs AaP2)Oo\Ixa8{rup\r#ĊiQ +50:nC~]hۗ_KK F@P]>:4f"-(͙qHADKmؗ[7u8{z:%1!GRS{8C:C}̚e T4JFiTyBd: \+1Q{5ڎ-mԱCA,}."dq43c%OvQ@ cHB-錚9ĩaN!XRxrЇ1Y7.xE{Aobfcp))tlD)`xjoiYij}w PP=6 +c-(=;(&o5A/m%yϒ)wV1k(ݖ}`Γ#trӋw9ńګ>v aAZN8K\Ha˭G* &X9FqC: 2W$=u1aۃDeD ‘sx?%2hڪ>cM!ײc=s(^KD67ؗ%s ,?oܪ4`1l~a9 BI C?3{(Z2g .4El60jzKo SѷJqUgiՓWӀ_l Hdr~ު9o*~j@?X-g}g,?)q8 o}o.3kYӠ0b=;tJ-wm`,;8-sGg oiuBf*|mȨć{F 3K =uY%C?Vu*ӏ|bSռCq R:qQE.$Z̑}ӛT:F8T{r,:rsI5G4吐m~-fd/4ȭ8=jZ?\L=QͷT&O?5t!TX4J>)56hM˜ " .n-O7r'"r Q0cJsNcdZ*oڐᖯQr7]^aVKC" MGRd׽( =w"-mQRJ xEBmֆ1jO[Xfw"D0kz1i .:!d?7I"@L`T^ "C(#CEgw"݊$V,́ a]w+>©0xÚ3#c #\'uEl~} EúC-DSBxfE@euLC L0y>YMUWx* Դbw_@C5q\ٲmĔކZcxATIRlHjT0f,=CE|n8ሒq\ o2S$3kWnvzǘ'H8ϵy-dǑ6B0e^}M"Q#<뤇Y0O)N1÷)( (N֫*LCkTI?D{ Pa4~ [!`3vZ9V}z! /|z_eg2V]3$ ESCu^2> ܥpH\4>6J: }"&'!lO̱e@Lԑ)sp {ݦBpPCSP[8 䂦D\/ǹ54:>āwGj#m( VzO(6~3 Tx]dj5rZ$dʩ~j2E-'y?sotd+jDO6X|4 +ZVP!A8mO ` يƶiR0ܞah0ndJx朣^;G.tQsk,W!%.XVYp TEBّ\u40 (ջ7KڻBk c *pK*L%@ν&UwSsrĢ7G6]Ab!o*ps;1#W0No7ߍ˚=Rl!wO!;'.\r<iw^MkУƵVEZ_){/BPP%)VM&'p< H'Wb Me~D29V(,f {JXs[#%O3Xy(2өMVk*3ks+Y{!ͩ ˟/"KRd}Ԛ(RBj<4 E۩:'MA`$:^IN}O+dR-L$W~%'?VZ(̛N3߁)[ѰMF'_= ,tdG;I*`v5l/JyQ5p;tkX"`򚣞rbe[{A$~ct+ˍ $TZ}Hw,Ze,͇s@!5pi&XԲ r#v5bj/kѨ`QPo®Wd `e.ç>:DEs r X-c\_X=YxX=ޢ\W+gz%8W>:'@~ zaV ZJ{>ZUƷ8;Rp[ɀ(d;u5~z}?K,*HQ-7{ֺ a#=)*4Nbh-<5{.$cD/tonai4ʢ "ZCgiZuq1cR:.N?sX ..c7'}bK~g>I>Hg:ygۯ) 귑z HI/&ӂPk)\hOn5u HRyү&B`+k/n|| +iw? "KNwPib .o.7l$j3)V$j֨.=*&XO[>a7Eӻ Dy{V3[6)&xH})w>`GU:G'/*+7@'RRiՁ^8t1.>SP;n-HC>oew_`i݈@BA'2}Vlq@k;% VjvmujTqvߦ6W6dƣ^Lt+nKN[05hؙæ?b~dGK>w>u}[㋠*393O}rFM^ǣdmFa =4o=3KdWg,VNw8[&<ɳHܦ!xVH$W9[dW'C{r[$&aQX$lWԢxMcRk㦵cH.WE9ee2\:/˳?љa#ZۯI܆;o)MaxJ3?W>c Qm `K %t&Qda`KQi1!Wz1hT.CLd? }qƈ:<`zcF*܂krϮ3%T%c)8 B\KIF`!4ldZ XwKe utَH05p/Bn߄nB{Aa# +/⟨IbYfja W?Q,qfD2Aea%c_|$_HoDe%!N"0f~6&zrycr[(i ژNի|Eol!;bSAYd%:벽;\E$T]?T]ŶثS&I]:MM$4G YK^*X.@kjil$Kfwɴ6ӏ,7'1DN!*DpQprB pƛ@PSj$ )%Vʔ)O} o27DIb}"cGyEbscJ ^W;ӊ;$^em*(v5U=Ka.qtpa?H=b YFN]iplolUf2Z J,TVm{T68Ά1/~?.+ ǗKHoU7TݧB/H⫥@K}A|6~55< ȼGo"ЩE = fI(Q+LnMrS=%#EF3ѧDp)}` ]k=ʮ(l3˞fѪ-d$* &ፅXj&tV 35ڳ3T֑W+҅'[`$H;= i["qƬ ps0vlv{\Q}Pkszv0 6(@TIsOEL{wb5`=}bC=OɳJǘ`n[&V^y'#y?[9Za{`N[lsmz$G;ع8D=x=6}?ѽ ex<mWVB$Hu-" !ig0e wԌߍ/8mːvU7)TJ"*qm֪[b7jƑ9uwD@]P2[o89.H!XGo~_z"$t/R2'}B>VxӉZQEWs (ǖ6rX@t-d 7`MuVy& jnzvzhvRd;9#V]v⎛3e jyĪ֗gyz1 h滻1_mn]#npt#;Jď1h7&vE oeY+a\.~yD;}d=ejyb;2ڦT`78aRUq*d3DHPMP,Z\`{s*_Pך ᩌj3EʡVKBm$w:wbXOnX;w" ݐ"yvɤTG2ӏH8/מ5Y`A9pQ_df] ~ɨȏ̗7+5!^3>w;ȲEK]tBَu76>XBꈩ < dJcd]f.섘BlRI\|"mOhrTYqbFۂ2@VJ4^ȇ͔ _ʸΈ~@R@QݙT] +amuZwD:R5WTi{K[-aZeX D6:up3YfoG 'JKYĬ2D`h.KXnY姄ZIsh\@759nG2CUGJ_&b=vlki᫏7afD|"H[.j5(׿n#L\.SR">dI|8<|C(iJ`kw/voB` 3OmO=$\1T\nӺa j#_oŗ&0 6G^^y'EBƏ0(K C~'y2lltA0,dV= %ENy6岨L0U8,RTqrhQ.ޤ Е~0~_![I "S^FIbEBv?ѐ5VYCcⴖZNkb2 H2[ gȸ |%ʙ-fëVɝG,SEw<7X֍nRe*SߦT,mjkMI"DRA$CZX@A G60L6 m 硎p|aqn"OJr 3}h_k#AdV@M$5FU'p+SV&i4N%!4M}#v=CbE HT! EVӟO#\YSҕ|( }jn4ǂaupf캣m}v8)3it;R0⧤ŸyJyI_w3y:hL0?ͧgUnݒ Y aC"QZ\#Cvj@lve>NzkSq"Ait7,O!r i $VN$}i7܀7;\PgzRCaP1e2i]֦y*?%(9j)̼@}\M2N鄅NU ϣ1\>f "RW\4PuԀG·DCÙȀ:C} ʚ5W tjG)kX:bVhKs8EÀĖp.:0`jlB3`r MwJ&m:wAqkn!;j)٫Ae`[F`Z¥sEb‰_?u1K0.xW_]",̈́XL>>~ؤUw諹˫n(pJDL[n1x8J7m{˟a~yIl(=τ|F Nȝ0jK mՎ²wɋѮ*mHOU8 w'=}uѧ<Y)u\uIɀ{~yZ?y| ܇d1s1扻m%h@3j<3M|H{Yl#tag49 í@ÎIo4+MW=Ͼvu똤tpgпXeUDGhr"_$i .2\e /Wg,c@ېa tI "_$36vލP>Snӱ\Wgk_4}_eg7q=yfȉbCc2@Lr~Hcd_|v}&F o0K8v [~&͚Ks ==?(OD_5BX? $&lѱV`"Eq5:q&,mУ#q `,a^Tw܌U0o` iC+fJ U ظ o;DBWMmX/݈_dxQQ,*[ғly#˔8 }Q3RI; o@(Z2TLULE)U)zGkPhB(|tJ Z@jAYswiJG){,nH̸:52~Q|-ƓGw e}g b׏vFPa:w=-Y6Nz`KFoޞ{yn!ؾ%'{x.\8KnOu_].5:8Zt RN\E'|y֫͢#*:&/w6찰Pbh"co-U f]# t/Am0Jhgp12k:@7ز4Z+B"W+A*!" +p;qq$F:;D/(Pɳ*u;ۍn-nko"d b0|TNXAL|Kbo]Xu05C֜*OUPb>Gjo~&HpYZ xW5Y)qʮ3(+vk'5'~ tUVF,Af '!!Vܔj迭EX$.ka _|`Gizy>40#^Ͽsƫ $5QG"%$r~ eC@rT?/8HΛG.u."J[*Sj&`@DB?tbQKVǕ0|:OT<FLWҪ"{C{>}] jVjU_~~L)7 *|_lx?zCgZQx5پ .vƓj ~7*2u5  mɈcLc~~© VXU] 0xR7M}D]ϦN s͘Z} En%&N (HsƘ6sn;kWHj3[-M,UM\ѥ?0%vtF=?|wA`X}wvN|,<OmaDP+!=)]ƍ|XhfH~Q,pHD adbA )B"2J **0xUZԇg 4'kx7|CJ=,lu~*A;%=GgA418ؔݴYU yK/_> 촁Eve~^G'ͫ/(@Euēe}IZ,?G'+5+M,@t2IdZ]fgtL~4w4e=a4IX1p{ I<`(4&9]K842xsa֤ϦsJ{Ĉ=94.J_3mpvFiw_;"qS(B궖tI$i]łRVwå(GA)^X3.4 PX؊pw 8^T"hIUT-:e::$ۭYP~5D8~1E R $i>&hޡ'HPvӺn<ӉVqpRp }Lj[R9o͆-.1ӉQ_w|cuxlň'">gnGg 'GgLޜHZN9m{D6@^g ²'5YW;eP.Ze{ΦŨxf`4Fكo0 6@⬥+y":gKoH< ᠆ܵ>`,d_6$Єk Kϝ]l1$0g0XY/M8 'D.;m5N$7B]'٤C}+oI:6tõ#E[5Uˬkv->r!>oU[)K W+<=݄t|9d(-&)N(/M\kFD_a3 8WBN ϞTg@A<DL譩ʲ5sĻU]~nf@CW]tX'˼|ߎW%3lWO&6Aʍa5B1b+iBmpR`E9"ʶz яú |Gb 2_y6/Q=HW?NSBt|x.X 0/ '{_ "K= eSAj 53~Y^hrUz|ߞY鷱tJ;+g$RLHt Sz̏ 7yqw!s f1a'XޮtACۆI*zϿEUCPKmJ{Z1tJ%X_;uG<ǯKo 5UcDž vL[S(.6T)vԬF.\e"t$R?Ik`Z'>fe d30`j}&t0{Qo-Hp,DuZ6[R>)@:;W,8XYR&aoķIf|\ 5D&:iD.`RMQ5hZnY7:"L4v׸tߎujZg{W+2i\5RdoT=!CՄ[LCXB\DsJŐ8w@"]Czdd# 6,46"Zk@]g6b)%H Չ7 @"u|~>O@-95&b7*^3*k5e$>N f<uikQX<^&4@cMS z$CFGwi 1وZvbx4%g QyL\lճGoӯ@*B<]MmF:j[l:Ͽ'伳 `[HT$S\.U2󢝭+U!5-+v P7΋ h#2}rGkS(RD̞ٓDʶ;_[]^ Kxy-V)Qz1/i-2ʌkVx!W? ş›\ȹR|{*7g{b!yHO64{V+Pd߃I[%/+Gľ + _-WkK&zpza]%s+eMvq>dWMH@|tndMUL~]VX *z@_%ӷoeF4$EI?z?#hMѭt'h -^>(cCJa ~ ӭa fa[w;y20@ k|],Gר  o2|2TǛm\1[7Oq[֣80թH9hյ[vB5XߘVt܃5FLtjV?9IH߻ɶ7lbl]9ʿ-:F"9.)U: k~%IW匁T !x R¼cmhݗm/=b-^OZo~/$mv]:2՝!߇=Ϳ>_^{v//Um# E^WwGpS! +T1]|>hp5b'Q9ZkUCnm.TbF0) /DAE5 NݞiI$f-~Q&Ž1*: :wW%,זpiFM73"ʉ]N7.4s\d2 "Ru~ #R}vLp<Jmxf爌'}Vֳ#$@ \a bZsh&)xUt4tBZл\1Ļi CAogjsߑlܪOGZܙAcH V!qv\W;j+uk"E(MTrҚΥlh˶W7Dǃ}js*7_2c`\WP!JrHҧaHlǩD9_"%8u 6SE 13 ne-Hl&5_e\U?ng"[bٟQxbynR9EYAmSQPϵ8lAn:󦿌 ~C1`UG4*wJUq(Ek,sw-s_o|JvtF_AuՋq̧nrmdҋQ (D>սh69>';l:#ccsM'vSk DQ c+FW=+'헠 A @h#R'pѠ.YNc3Eխ_jCsC͊Z0=VN3+ BѳxGz(P~$n佽 8EB[TBrqxς)}'g# })!~Sbb[达8&{c.[޸/;essZSLJI uZE1?lSBT"4x1`eďh|,6$ JKf ht(ٞ~ lnu-󵰷挂gֶ57}ex.NKNxoY>=,/ʮ n<#rgX[84t3.:MSdх# P=Z_@ޗZz}{v߳ XWX Rkgj=t¯JPUCbz`:6r ܫɭ\6ݝۄ].33,=߹q N} "\qg(Mn5Li)2ҙ6U 81D1@7[1m"ʞ-6=!}VMGiiJ9I'sP l4i\]e 㿯[ AThdVR~ytW.jվE>|4,Q^5׉ r3w+50nWtE6 Z_E$!|]{N>h@(g, fR`RvکL(;U2E7扒/~y!xK7ol/Qa DWhbTJ.F/;ʪX8b{W|.,̢ mΨ/S@KN5}扫%7RW.x沫!>۟;EwnXGV~*~5Btlml=,/+"|y' `GӷEBȪ}? Սd2qI6)=IXΌo6NVc]Dn8/%enXB,9m7e/*G{+`(l8X+y\@<;Ug#T?6\89_6nV?j]'%v\b) )@]&q+zy?8ik.f֊k^{ 1fiݸ7ʞ+<+]J:h} ;wI6q>wph͸u>эʠ047+;@ zm/J:-l H~k8F_gepuB?fڍlR~լ RB%n+NR0GQ~c2^euz7Cʅj2[*-ٟ`LOF((>a<b;,5@%Kf8-8iKcSEA~bTXmf4Ģ ّϼ|1^vqB,#`W-.hk_.1ĔsTal5n3n[I/6g`y\sZnGNY,Hz+![3\qa3r|8QN%M)G):%CX9:CN8gt{zl쵵 1me1%gO,LcJzwO3°~aˍz*?O1gtL=9hw~_o"(z4znA?:_ڷ6A$*88R9Ţŏy|{}ձ >4 ]yr:}z͏ZhypxGj[(<$ris3jL)\Pk$q2bpr6MJ)vдy:€xԘrI^I{6=#ntVxo2DQcέP^$uY P wKd?xc^ӧ|?xS_zbM4π c5.c#eﭏfWcol*VtAMM>4"Ngi8wZ)rDǏrZ]:k&!n 'Ězp!Fh{V<[PwFqtuia#ܛ p"V)mOmRXk&jG X@[*|r]QqBRoܝ8nHz_)B3B7j2 J/Gs4s{Uuiװj+P ~k<<^_R(YN"Cpd5UX4=&%5Tz0k"T 'Mǀ z-OLX $XbՅ{ X~La 4[Tjr:R6?#EX?U4q2P;bWݐ5"!f}Ј ј?DU벎 E*(2~F) Z*hj鎅o Bw[a#È { LHJ)9ol||mɆzE<.F"w rN\=P?AH5\II +,9cgTY.17N,Pȗ_o`#]οxt6!I%BzYGh3SC#aÓ{F >G$p:Y"HO\+{M'JCN=)'Ey@an1Yɑut+l.f,Ra`WG9i$7`rhʁr~xf񸖒: mձ\ ZXB<7'&$1TgBGÝHm84HRGHwkܤ`8},g Zvƥ82s܊O Ğ,pq&PIҥ41DK&%`2?\`x$ӭ=FQWP-ҤfʌЩ),dJ9p#ȼ\[~dAE0+0I.B=T$|g%ѢmHD=HSTq"GG x܍A-3_֝dJ4DDZtlL4MlDN%xaaI8ĪZ:Yњ =|mD!ZVk>p:ﱘHJޥ&$,Ɨy |H)G]gT^*1ΆweF8"#f8U];1:"֢s^u{*N$\4ʼSԡXLh|^%]=B7ѽk ŸP*݂R'2q2+.wwE/me0ELs"n`Y{1;2(axT2Rq#8#$a0 ;7S'mW bzw>W͛s^ A KF0_ͦFc}5qA" RdeBQfaV􇞱6Uy^of#=LC*6/?UIcYK-p]5.)O)oze=ސT2/iaa[28b b.49yhg7^N,ş_ZvZ^bv-8F'7cϰ(6NHQ\{*'4?IVaK\9tg{^}|o`پk& `\rx3-f w~-t.xyObgk/ `~R[Bū6p`g3iF#|p xX -J$r2XٲH< 3z,_fJ/Kr^~drMXb11%ׇ)4\ùhqg;<c)LGfh1k;q=̉`,%n\`;7)YqM8H=|~daLڗ^ |h :DS !F/lDRNq Lv'˦F=ߘd:8C~5.UIR, >aV /SNr0 8=O)]WR(MAihrr1ˬ΍蕣x4 q[ƊBqG׬x|:=Ka#M)-bmY#7/ŌvЏ.~2)4/Ľ8q-n/_$]ZxA滠ou #URjD'1 b ЕL#LR פAJhO{2rWr yGXKbplŶBY ^L_%BХXqrtʛSZ2 F- :ǎk4l1Zor,Nq6 RUr>\l\3X։ 'NՑo`Iv,eއkpnx)W.AM@&|{% hpJO>Y˥ YDȢJ*ЄG}bRJ,] Mb-tU_;dkʫ,1hJC> !SmZՒTC\2O88BsWxF8H鹈~́u:EARp77k! fEeƣUPd)K\L9${ ty^$0~Iď0DຏvWoDvտ =?P~-*IoE% /av"|Hs ;c*ج}_WȫH!Q0o/Bߋ~?:(ϭM`jQŃ0KK$ <15k{ wO)B"i,uͽ~ͥ!Nі?(F /lhBбYf1EU;aUe?ô0X:lOm٦66n%.m_Ax{h8t:7y}HঅBA23AMGuj?3czk*VG8M]0{p^]$vP.0\>PNRAZmN?W RFЉn[o3RO!"&KX%e~d%ׁ!24QIҤѫw->G kB@T,/ݟls2R$}z |13 /XBޭرDo ,Y0[$UE?O͇-Kes{6xyrČz' FV4I~ŀ{KpWlM|9$:+lٚd$x1"YFo_f̵XP'a 8|sNї,UHs=+<-D5hQi>| aw\!AnING v~$8#a&LHS& ]79ޚ;)aލk֠J/UFDS+[2xXDc^A,i֚#2 kV#@ŰVjt]t|SCcBWX='a t*sQ(x5v ̀]^\$V",'g^~uQQVXܙ"k"W6K6<&w|wV o?ǁjbVk!ӈuYGf^aYO Βcf_E0\vЁ 3mdmjs@rב{ =+x]P'd ?˵[ּ_>K[ 2th wĐ ö?^˽ i1ţnbӒYG.GkDaDݙ=*mRv'= U'\2J^e77Upnj5M_TP5BT!X|lQ+)R[vш~χC/<[7$ndL&qVa|"xCEEt ɻS ؏)_<\s+_A*JJoUSQWxvP4lTWNE' )QP9l]y`V!No"rR]mz]fSh4z +QXbb<u8 4bG@ mxLoRC;Brw:S|E{ mÂ7(wRԷܗ$HCg0&ITZa7}}@S8T:ul p;.y0H1Wfv6iMG} '3>\W}cth֞vEvzsRV6Lp6BgR-qx2uH5"HjeMk~$.FT+=[>CMy?<8, .Cv[a\qlH CJ(d%岼cQoԣD%lv/p9N`1dd )mHZأex*_NSFb pD33@p_jClO:J}y0 /Z 3u`g?b=`ueZy8R("O lQ(fWvIrT2XwwPw8XWNG < zt|mB W .gxl)6yHⶶoZ8<-m C|.;5Hޒxח7;"pcdQj}H=Ox@s \ė PM7 Af&T:ME8,+̕G*ނ h:954?a2Wv5FFPa&{ǫn۷ a,7's+[MK ٺD& r pVv:vۚR%5 Y[JT2}>r_Ρ2+fQm.VuΪZ G>)D|*~;\4b6]$=/z?q΃D1X8b+;Jy|$~i&Ho湎ӵ45[ո6\W F0Zw >87Du$S|P[ge2`ai2\xt 2iޗLi;<ZMǻFD3G<<5BB[潾Q"빃m>6+3@TbtunTdL+"GesCd2,/)T˔Zu&0̈́6ƄRd%3K8f׎P묾bI|2(DNJf MwYKvWJ?c1?tA CZ`FDm\deߘLcj3pt ńD?(LV)Y 2Ţd'$@cfuh,s|/ UB|G]IH,8av5j)>єGvyj%E Wz΀n_.x J/_ȯ ]7p UEZjf\~vHg *hfZE ~"~ԟ3bFVq %r- #,Hr<F% ;9CC˱$7 GW& HZ9R|쪧HӴƳBjrO4go4-d2̴'Nh>[2 Rs>ېmzld&H4/0ѓ/6Љbe4 :W 0QQ/sT})TsէW&r " o F!@hor(kP@]`5RdO *&0v$GP"NڟQہ^M ? ۶X'3ϮUerQyQVSUz^0,Z %]ItH=8v /C Zn]4W +w.5gE ~l ڦL9ህ@sEXKF(9* (Y/-˪,eJ邏&=PfD*ɶ_ڂ!{[<&2oAZ'țY٨ >{̚PȽ;sY\LfhNc-+~:@׆?еD X1bbDΏ%:)Ne)YP!0٧ >y ǃ;|HR99A`dzIO3 F|iH-JQ9T^:Tkwe7]ZoɪP>vc8$9jU @qtƷ|quV>>wڟGſ ÕkqXxŶ5wx$ɚGa\KiUZ/v3 dq7nX [*\ ̉ l7fF֩Ɋ lkmf:Y _FW^._5{ ib4xs(M^%h`C=9uN'rEs52VOvUԢ/jxD+'[ރa8^Hq5tq)6\:`2_Ä;(T?#kIlf Ѓľ;vL[ FY*?JIr]"@/kYmLI3ز7rht Y5TqGjEtܓK!{~t;4! y hIzLfXZƫ|ָ 8s(O< ywh N[+oƮZcPMY]t= DZbTǯ{3V>AIj_{Ad'71^-vLz} Nj  Ft(HWbOmI~+Lxi +x0d7o&Ǧ~ e: =<ٶ9 rFخq"#$I7ք.2D9UcuQrAB]?k gow9}Z*"o夥 nq8ϿͿ .˴Ƽ[Eba'遛؄5[&Hb`>:ۃW٘S{=fd,aKD~.9GHhwD ˥OfJ~RIu&L`C$(UN9g΢~At¢O*Jy[F6\USUiJ"/#8teDb 8^'%jĪ =q]SS@zEXvU-_Ͳ): hm daJwl A@:0kz">մ v%J,']HQe]䇨E ͔[᫡C"N>MMu%Pњ P+E&(EqGikS4:"l:)?KΝM)n.UPN{P͚wWC'X^a?]Zu7^j6'Ic^朠1Kn_ ª@vT3B(e[}»!]Ez. /\c{3o| ҺbXC- !*Pd{G?K:8;<4ۥEjC\CAez׹m` OբVfpK}1l2wk@(&7 u}y[q#Fu^s;IX=5 -`fDA=m\n׮'eGGU^LGfXW_^lwv"|6(tq 4Iw0k-`.ׁg1nb ]eԪSi iA'nm ē! ˨{$"0x8·8=ڵ@2&T'RM2 YoxQ1'CQ|XE5499ݭ|, E^d'?v\QM/;xZlIt@|[cNp|z LY)sMq%;*sϫ_ClPOۅ=f|L EbFЍ1 5V}?.cwqf<@x0hhxğ_C~pFaK ɀ\+u ^gMq6^'P!#ߍnqWƶݡ>M` @(qT3}& HQ_2{&@b|p@ ǎSEgWW< GŠ%] x?*&G_x֞P^$}d9l!lMqIJYf_H0B_LV_$֫=DdYr0V"Էɣu~aC Ѩ-gK}\.8DOmck?uJ>=ăN/;kQ(^AD5fcnsCDR 1Eh"Ŧ[\kGMvBKqs7"t4r֍dcG v^Lx?Jq6yBBFWK4抺5܅^;J\by6 R_t-i0(Gv>\{m7FP$}sOsh5WyEVu'3wuTxPZGUwotMVaQ%ňּؚ2`FR)ʾx"cSE+XG=ֿPBu뫨~E؈~Dcgmf6 OYqGOw{nقEYCǬcך gX߄Z{` 2"Ċs'iU T,EI {hQ~23 )@g!s7cX"lA9۰2dd;<$''9MrR qvucU1ɕwT\A@oL7dS@YTj2ml)ȗ~ >4[qt;COB@zI~1/d;_e)]>Agf#-Fp|kيnJ9i+cD^ o%i'дcMxa;C.ެā(Cٵ:u/K;j5-~䰞ʓEUOO"h{ c~N"Ng00x^~xτv'ƗR`~-7 *"$BəǏU<:7ywEw݋J0*v+i,4KȦi"}sMM>V:X>U{92~֎%bd==3޳ cI@R&ѵF;b9^2A6W-ҏJm|~-JŨdZ]Mby~D?1ݱUhMܥGP @?NyPX ;/le/V1oTAj{\wf>CJ fen{i9el]M f5/^6Sf&PVvlaX42KCynQL'&iD.1N:L<>` N+^Ԁ+1 DiP0HM* xjE|YPk/?E$NcNLYy&O~S2\xqUIfsnAypp1Q-a|n|*t+E${CYų:P7}̇Hl as^ר${vFB7:əM".C a}ML~gdVX;6dXqo6/G #1*KBZЯ. ՒxA.!D.mmNIMO<;cːe' WrE{czlϢ, <tMVשFO"QCM>`,p3f poKUBY+<+sfKKg>ަl<[u2fhLx+ \ZwTO5ysM3`X;~WY ,쉓>Eg,bi jVh 녜P7NwyEG_jn% UKz9|2|[R5ߵ%Wń8<5 znx^.L~U{-~!:YD칤7{zW[!R:ש>w9v F{?)b̴?Ugs0۞JA`YZ']f^G݌$ )'ul\X\Ev8?ͥJZ,UR ` -ۍރsu#)"Gs4'jy4eTHK!J2jC/2}*͒BK'NKӦoM֤s֛cЪ(zvD9mZ\#mm g8d&6 vM<`0ᜀ.͏iTʊ CߒsMl&JMLW񒵕8-pq _feǦe03QĖUkqaw{1sE}Ջ[oͭE$q 2۲{ωl@2ƈ_W.ssܟ<^[x@bvHWjJ&߄TُfPH=rtog8i_{8jQ @uFz^,% O/G;Ӟ*̇*yu}*ALdJ# iV;$76ߢt &eM<,m02yD` |'&H H4gV 'SpQ1PDQW(Ey` PT_g!m>'u4_9DaYziJt7I @*.|VN񔦣pz^]m3/VMmx]vE9IEZ~уɊLdE?u"S4zHkIN͊ƿi(<^VAŽ3$,VPDUP|Em9Yw(cGa43}չa_yYܛ2thCej-zz*/LѼS\WX0#r9Ӥ?ѥ+%u&2׭Nm@ϝ5z) =NB-~7,,+ץ=Iq_eݿ,hC gp促 ࠔrN 2:cAm2%~SL -=\u5$\KGS*Abj}m͂<I.av(&]Lp% Xq1)ܑXqk$LB?oF\Z}6%c AZvyis"ƒOcuH;8b}s쓒yD)R+B(?@O*LS.5,uMPGe7X/#uС3jeްT<9@RuVQ)M(vbDmwJİȀNdH-:.cI&^B.Ee9旌yZUy7/G^guy#EД2A5'GfnE[ok{c!ec2cHae<WD<'HUl=g6 ]I1L0M}F DO#.fc~{\)X`z:.O>^s(žKL_16`v>'mk>N[S>]T`c@ cy-Kr3?К{{ՔPuk`k8 8O:`t@1S;$ "s+FKWx g ;tX ri׶k srgp;5II?W5"r #lWF2EPMhr aj&V)sΫ052@ 2\^KM)86LM6M9]S%5;YKLEN~I xQƒ</`~R㍦"\`@vI "|Ȱ_6$JkN?oo+ #Sl1dp3K[|*2+Щ plte0swJ&a/׌>4fL{nlG. ٠.˶gM=hq&ӅM5 Zm0^`W!1@5eհgX(:nT ,WwfGXYUL{Y\rn ˓]j{~~E> ƶxfw5#]]ynebO¡ oƫ \ #{S=|KәrD-c/,:IH` xMxrFp<]DiELh;gEnTvifˣFiHj _9Lxa/bTfA`dT#[<0hK㮌w_Oxo #}!&i1-) ķ3kGG}ۘuVQvvf6S>=6.&4ňEKEֽl(>ABgIW%Hof!Ԛtwَ"=N .ҿRzGԝoVd$ntQ0QqqmvOc4^O Y &B`s_ȬI+\<6~gv˜yhB<WvA/ӇC3^0{#ǚ沮 )F(4U=Wvvvo=I GGÅ>!BUv˘{hE6: E3C+a'xx^^[)NK0s:}kz %tj\B >5Q|V vLa"jQh;DWF H3HIRgiNBR?\w:ZĎk]<-2XP%Z5jt:0PŪӀL}#ƞ^w>.w>QWmwӢ^LKx"unxr"fğ_ v\aX2{|!z] - ~9lkj?̙'pQ~;Z"[P_NM K)$t@||-nwsPr&W)x6[!-Ȍn{ط>Z@-SiiĸTݤ[Y_ieu-OJ.E(=/K)@A䒜Ef#RzSI^E心)8RcB8"c?Ǵ!hr4s="=o~&3VrBm7i95p\MQC/~z ^~lf+"fAsԡLrVO6򰵪a^41XcpQz (;^^h:ha \Wȟ^y)p.b?:vD0׹SJYWlT[Cyް{J;MG+ Ш'1o\|8U)~ +{Kmq}+./}5skz̼ړ ڝ''{M=[Lyv<_,bm:8LAwGyʍ9( Uyz|LҲe=]AzN!a:) ,fT5d7+2G7^;  xi҂7FKr@أw屢#ݛ}le\X`Kq [Ot ] .o"՜B8՝Nei"p"k}V "w~/|ѪX]',Jઇâ.)^ E1k*(y{i(`!ZE҂׀bU\}pwe*'etU\<;Bb*MRzN@Oc!BmB_KyW^~1vkNX 8$=1b/izR?O}\y+p2n[*>Ng-Ke$;2n/%]^vT2":K@LR15l)a]Z@EAGϒ@}"d ͤI7myV/q(dW 3{t)$MݖbRFʛ+ȗk]'~]V(s:b:/ed򜑥-Z+(mQeIeHur&'Jc ľCGP\T 4:֩|n1e8_Ad v+̵~ܔQ5_a N7p|bUu3nWt;YbʍX|ܽ_%KPP=Jwb[^>8ռ3n^](1*<*];m-LE.^2QJaPVFfu %˃ȖU9M]֒|TKRcEU$hQ=EB_(*M"O  Cӌ?7T+𞉙LfPz‘ĵK J8DF!`9r0*)V<:Dg:Þ{Qe:iN1><܋-pȰs`OJÎJ/?B`#rsۅg3}7|<} d~wdћiWl}+eHքz"\NׄN  jOA~|?vlM-,hlO|ť&rOK7ShXGbbhZN+Xg`?ZNJU6Ι?[45Ej&Z);ugڨo{:06X=7Q /Vvy A'Xf6{Bh2t+/q?ZoΡH:?.9tT2(pBVLEI zlǛwFς|89yo&\)z[j~H흳A6sސ ޕp]V?Ċzk"7)r) Ī1QnbacFj+ 5a:RcX :"p*U$(&і%Mn}\#A#Qk_7k 7ؠ_ {~7 `A+t/6\vp:6yMN: }>0IX՜A8j+~:5!`~ֹ mn.Q.0HKty?hg~NDS]{QqWVJM_'3O_`ˠ ĤZxUDb AZgV'q_Wqn(E6!yBAV9w_ܨiGyGZ(2xB6/󨈘>!F?ah,n롪ekb8m儓z&cW*ubz/6JͽG襦EIњW"`߹x4Hwzj$ !K0 Gg: {mVd1>T,}ԟpYMCCwW|ZfB}#Z;c0@ϩ?~u!'v"Cj2#;61 (sO0.WKƧ@Gָ;s*l qxHTV : -6iΆ)Fňt ˍJm& K: d_SzfHX@!_:lXW2?~ =RkίLy?W*uD 5֠cL=_/I ^%qw;:~$ WWƃS"6_ ׬lJy"_їFϳP珎%3Ӱ:c,*oퟫU K/J .ˋVeAH,UE.M씘w:JP/8ZTCot_-C }ꮈsE_t8䬦ɮ?{۠ex'AB+}Z*lMz;G:$C|nt)wѧ75҈tu_8ޓ`({Ŏg:4TX1.x wcPԗ #Y献 rvRT:sSũ.8C;xyFg'RXҿv=#c NQE)c]\%ݲ6Q_^ 5D4qM4<`4$UۨJzS]bRތkB/ʤGf`4I znvOu&z7SY6 pL䴬LAB8ݫ ѡLCks]N?߮95q]5HZ fۗipOW'{gx}Z).9\_mH g#U'H[: N Ƴ){a~Y S^L _때TLd2ghce'6>k`fv>9>EϴOC"l$~evVə4d+G;=h lc0SWRipF.y:MX0oRfhERfkj],!Xfr7PଏúMzE t b=-+'t(% J43w6yKMCI}SwG9Ame<eYL{hD- '_L,ѭ?pjE-0. aީbYtlQvK5EǘggomʨY@t]5?b{=,@(I(r}ϓ6m^ppbRs0HNT$ך&` 8n+NгOCد r'i[88 z@=ٯC%Ko:<2+4[D P$oJ[5gݔ?:i-8\'b ǻ߰]S J:yt#s}1b%ݠ g>+~^{+}r[E~ju> 6gF_xPB2>2bGRage2n圱& n"9P~n\$Єp.hV]w; r/}f ӥT~+7i'][B5/,A]c>ĝzX :z$C%Xj5a5𠕫(yO3scJ{9"%P{on-U qAy9ڢ@|

hR˱@!u8(E{$O~\NLe&ZJ;OBbM~^``w 3b`+u1SUKAL}F``H^j~*8^ÏI"P~q'%MWbG8?Dz5s.N=+ lQh GDTbkJm~ jlD2-12qтTȟ6Np kڡPQDZr? >'Ծpě@6Sq^Ve@(o4_WgpDm@;ygH9 |(?(EYQ/ sʂf I93YofkY`q;^Riz^D`#8%c5N u]ij6F"ad2<17i"mߐjDZPQZ-5Z̬EsETkXU2V>=8Sls-{w~h3kh^&9}Yt/D BU=Iy.wA@KsxjHz_dC6WS~/!}lwɾo_Q.42f䉋[Q OH5-#(tzt.Zc"栔.b)ıг|u^W_џAߺ)]!I&=2ب3⒳92b*g`2 A.}6ڦICjl&ݴAB "-II+ 5\5Sn흑cCӷP#G@>F,|,YJ}u>B>) L)0Txnq 6QIg`@p}T|HB?PI6Zw3}{ a8}2?oߏXY?@ѯ Q3ihjq&e_0D] i=gf(x6=U8@#c]XMIb+&呟Vq4.z*1/X eb/t UWI䓣 $μɝʕӵ&~5?_a| 2ՔW,0{"\B󀢳Cvo:Z}Ƕٶ@n97<݋' -2q,P0Ƃ- ~G8.7 ѓGEQt }u kqMR 1l @s/1QN'p(bʄ4B<~Wr窐 %C1R+]fL:6R M![rd<$Lh7h;z. xN݂h2:6C42I+IOK%o};578M2tt͔ q5T@=l_~a#!u:7j \bA'U@U>/rfIᜏmYq<@F-+VN/acd`Qk|8V<=;VLI4JH$44 ٤~!0OggW՜Iv)z1>=h# ]½%ZX!̈́%zWYAD}G2[e#Z=$J:G;\;a r|Oe2$|`Qs2,SL(UK5 r]H^t10}\Wt 5$,wre?wRz&1z/ d9ӪH"MRɱgB9i}­{Džȗ^ؼ FeU~DSS(pDϛ_*E4ͤcujʕ|۷~ïo$݃]M%'}Աӿ ,ZtZ)em 1 "V Cl6"3! b"Ϛ%D˃ Sh@g$yG@>hAsÑ 31@6F]E7'@6ubb8cv i?^f1n>\ )q.S|F*6vM3 N3o'OBX)27^K@t5Q : zfț4`$eFK5', H[`SD_*S_>U>Zi뜖Grm"jl~IM9^6J9?Bڵ8OdW C#f[J1JN4`CORKg󼙟|aȣIe #ءK-I2t 3JVD&(GաEw/@rPJ'Ğ]bȯaI$ 7gqeRb=ߠb?m7{<4&}_T2oH jV31bLh5ve5L"2Iw9eV?//+ZdufvVcsRzAC${}05#i6 56"R /KόSy Kcyeַ1D4x,Rꃭ%A);u}K P#r'8z,Ea7l$%Lf%]DvjGО>{% p:Qnb+~F*@mڒ=<8M7u?e1A243' Pl#&q2*jV/!ރe_/{@75@iTpx+*5:%2Պ])W Sv1:_4*0 n!F )gtF!i v HƦcʃa]yo џN.gC <rm i|@,-MzJGVl3ZSc'~Ԕ97Zk4P.jgWw$'T0{# ~ؒ>#}S^YS DojrDF67FK*]{V|"e ꃍBAzMRr=.,uq_#HJT+F\N_C4_8>kׁs.q91k KW\_rEi5ZLJ<@m첅0&\#_L`y|XmU0t_),טR{ɘv|rP_/)p$lVm|;I&vz$a2pIa7 Bn7ԳE` JNK&i2yZO͐^:iM]W'ZIul^XOݘ@_ .?J>{^4]ߑfX/p?\/?m~NM^`I WomT4;V: Yh~ kfB-8H14ʻ'P4{KMӴd~.FEƓ.lť܀e!Xsxѣf*uڷO.oj, !;sHMw$AIA6_t#<+|"h_SZRQa;WuP@_CIwR 5 `먉&ˊaPt9XUÃHs'VGl|?%ݎ-:N+Nf8I2>_Z2"%@i-_*ZHD$.VSپPcY>a (G(vu"%y3vg`ILizgFmwcR2eLnOħ.al.`) ~)*)pzAmʲUlĆwȃ Jzwiہ?..^SYU *F~x"}ўhњ6 L1ٸ@'H  -,ZuX/Px-Pp3+ .l&mLzI,GS{ oMjn;c9&J9kGii.$3=?f F>kS"gv@&qMEII4Df頭YF% 1-+=+Jn'|aW&NU>C]p#=|NqpgC?X }B5X4]qfmG1ib̎ƏVˣ'%NOf4G>ڟBԌ3nzˤnjw_2gT4Xϻxfe zMړ3Qrw*KAMVdwb]M7Цoh+W w?A)B~vxdƱ>.4D5IĿ. ^[}]71Rвn-c"YKd?qOOn_ vU(V8xuAyAKw詄3FLGPQoRV$XiJ#^"wD"|rm$٘5D@: PY}peQ8X' H3y>) wy?zRx&9I2 S2sӂiTP{uF逾艢m=5+tٿ8K#>kmY֕^cKXˡLPx lvg thޑ ~aMgu 9WAIWv\OQ"Cd Mk!J)?ӨZ@}Q|Tۻ …X59 U?+KUx@@Z4skԌ_c_w۹rPջ!]Yt ,^禮M=A!%Y1'^2I{X`@?گszJ hC~nptb_M{#X4^@~3kp6#vi:MoQT]'tt9=Ν5!`luҞ,q%&=FkH;d 4L'DjJ,7o;Q^gDI@-!ßD\غ.+ĶEx (?I- okeIABJ9&~@k Zȕʹ9 r0YX%:P;qJjHEcTR 2wJw>O%‰z_4Jw"zX̔D p_Xœnd`K1]Z}e&aei9'.`neo&r\6,o;/K@!nU2⌂*V\1ۚ/Ξ e7VH,*y׽z$ASܢĸkͅ<&y7rq K]U;KW 6rNDy%>%Jw5[o7Տ໅d%ciRl6r(Dj{[C .xv ܍}Dq3ΫFp{]? p V & Ap` γ0qN]6{2W.eE-v D]dT6Cf![FcdZqҸ&Z>⡜j{L$ 7>?Տք|l捒VnKe!IC26GoRfj.$ f.rvL qÇPkSO N{[⣹`3g6],0Ы<{Ʒu:܍[|zyi>&"g2x+MqOR3؇HXʃ#y?_S|ΫdCEͭL—d7X2-ic)O;^=DxqZ`C~IXd&Dt˩s7 Su240--W#Z C nYvJˠKnb3n撒龄M1m1BLb0d, Z?z>4n~X xh">+2:bxn庠%|HQRTei->;)ZWOrNR XV8߆֗[:Xp Øp-#?n; `_e!lx !]̅K3S Êl!%WlvUoТKq DRk[nt=pt‰"|lwdq0F!"Y$/~S´4 B7֭+Tvcf-O5106IÔP;$ /S|D2do}zR~]0;^`7 VEgZc wfΊlsXk>;lʪz/ͽ;%kuK5Yr |Bbw%0E5%*a4Pt*#d7il _rP._Emēa?~GEw6"Hp3M-4.O3MLZތIT{,ζQȖ~o<=*Zb) hjLD:6EKɪܲzFyItH/+ vmޖ\`қפͻc qԥʷW#~_gx]zL^Ys5;|T8wx^=aqp*!]8` ڨ/NxEF|fEw2*ɑI2G`xPVLQ(h֢saQ)02J︹'5%Z؁?ڏE#YE8x2n@Y|F/29)'Egm"0<c t(5~sn:^H[!}]Θ{A] 2xG Q}~K?ib47(:/pKΊ3o/e+>*&)r\|G5Z.87b&^P#!ݶD@, Yi}Ǭ/\ј鋃chv׵{ ĺ{b² @K c^Idƪ Xx( ;d~e_XS'T:½yr|27g[]Y4'C6xKM‡m=,|a..3({<2M*yzb~ -:%otR~ST s]lXZu5('=/•'OŖoÔ~LAen@ eoӬ]q U2E0R/\H5b/©2(WJhI9gsOUW&L3"2P;CMvgq&|ZO8rn^hAdl'b,*6U,;tdE|Up2!f}kFS1,;;B&=xAt3VHL,"aK}9TƧ3$}\^gmozp7 ][ J$9kh@i9ܜpLU9ɸ72G*bzZ'cy ~B%*m5'DЌVT'9$ӕ+#WYyx.Heaሲ*Eݝ&6bťKzާTb+O X.CIm}t@5Pi țaS35; +z 5hQm ~x-2`cx7۩y˔@Mh;GK:߿%2>pO&.k2 3v,3#/X{@WfH+)) Vy@3I+N?n֌ 호?Z{9kBۘnuS|tgl8`D'{BT71V OsZzw@BQ,U s7f,)s6&pL*jAt`>ʨ[: SC (;Gs-@L6.,ѬtUs 4Bg쳠et,;ʁhz GXu}_F}:G@&=#{҄nrz*wt=kJ?|uUo%2_om X⧱3p磹 *Y"41AEJKF|aWI%`LHrŌ̃YjSHLGZν$"Ql{?޸Z_l:~1#^z%#Y.#T٠DE[Fm,ţx|nϦz~w՛^甲qӾ}[cUUmj0 n|yja]h3ZgKby }6$Kxo&? {sd20+z~5U濾ںeƃ_N}rLmiz*!6U0M蒗M5㦏tAIP#_f$ \~' =Jz$ g2J@ q,)/"eeھ+ϋV7|v]yvHsǣ(q=֑F<>]o̰x.#le 0ᩈH(wH zِ?K~ΆF\ _ΪE$91Ei|Ru*?Fh¡u*R`7W-hdޟ3Ȏ*?FUH(s<&TzFE7nj[&"0fFט^oyu /:Bm$nD뻘,a/٘hڇdf1#L3J!IBXV t\M,\ )l=rigv.a=Bx:;R@c~gچUzV OFbgeQ WJ+|Pi4tS;2dH," ++)h4zwhè@!^OZĎG[-a>p܈ AI.0ujc\"FuaTQUzhʪz _xPoY<1Ӳrr辩qh%izҨ6 S=5.f}dgSrEPh޵jNXݠSTi& wqw'W2.R॓GRp|.5\I.=RY3O](E64]V6w ,'v#L! }f*;MK@ؐಌ}F\@i(+ɦAFOʽ]3hNP#qW3@Q%f6V>Q`AyzͻZ_;^*|i=xi;$M{\K9I0. Œ +xFb=y AcA \OTj]yvT!Oy`CU- w妾udupǵ0vnx2^[_Ze+a ߑhʰS#);y/rO{ KyRh,V0fU').pR/|cEШ" / |ա#KZаpkIV0MO;l9XƪoYklYz]o+ݵj6df@˯۔zlHe jRe`Pqyl}Mx!h>ڱbvWrO%[\bz<&U5v -(Ņz)ɓe:xB 0`3^efSDkbmͣ 0jK>Jmnp>_+9MbAimreTo[ ]J!l$:q/ sc.TrF}\">$ެY@@$YV%Q:Ƹ 2%x:rrľlONU/iF_/)8SJ"0iqssbS ؝*ZXmxtA4duL BW\im齛 Qӓ~.T[d\~gyQ)J}Ն 2Z%.#jo!2slyQswK0)G=Ċ8D ֧{kBMg`(~_56꺨Gf.ˣ~)0mPAV 7}T_!2z?3"1PjӁ66QNL}:b#[Ru]ȉp1ԏK.^:m [jgk?qJUs6Y\b<}W8iAmvߴAȮ E¯L +I[˅WP.a-L/Y[^1×JBA4*΂xBRO( 5lke:6zJ%3^_vubOfTӛBԷ?u}X1a` 9dB Lb_ϙ\Ą^v W/'=/ J %։`ensiNRAؑaY-T[VmQN'1/cO <4[H) > 呆n +=Qrq%e1W\6K:F9_t\7R?,Z-2<qtH؞w[oԁ{=}&Q!:[#O5Zz)wOMcl7L"r3ut+nHH*o*c 5RBCx!?q6YxN/kI.@x~ ·NA;t`Y䅶V[?gR7)Vl1b]СLgUԓ]_2g5T7OD#(v<ۅ@ ckCx%LOu8!\^:o["Pe. sװэ0P2lj'N/=+(arOp/O9i L ^.(8<<367!a7C3j< IA#ɺ=LlB:ڥxR+0 ΌzOVQ]߬mU7я,}Lhz,|}] fSNJzL7ߠ%IZ ,$n7?{J^I*W#m *_$1`;Hc4 5ԆY=^ -RjVfF_DkqhJ!КTχ{3Y,UoʷxJ#L|I4N,@`'vɥ3xlšwNJ<֬o=/;7V&, 0wIj༝Mkb7ednF[wVuTc20{扪?%fB )D0%)hܛBtLbH*"[j+)BZbC ?'&>tϞJ<#eKW(1~E5_[lUֶ}tL3QǁǥdB@.kn@1N;t}f=誏wU7++뷺 !O&&c{8P46ĀR_vk,W~$52t \l{жC&ykb/TPXNawh#>zQ-vJ;x|A18Claa1SPxS$FNtct SdևHou6jx2Չ:~Qe\f5к#^E\syp?*c n;QE['WzJ8uO1L@8.de-l.82:UnNa9UhdB~ǔ.zg=aKv漢dӼ۽qK. f]2߼xrmvLS}?tbEQa7ed' i=X%Wxɟ%:`4BCcgV( |Kg K[:Ƣ_vlir98O Jpx}ͤ_V7E]" I¦(9yzp.:V|G4;yK.|X“<+|QY)/ &kwf8-j  >ͬd2\El˥du` R~t&>O4!O+W?FpX^)NPͼ]Re&{k9iR vj;`Q>YGQy@f^J8XO p4M!J00M[O`HbMiڻ8Z KO\CyDQiZ5GmxNA|﹅PRbzĒF-BsygTᇈ] 3>*Z9UdǙ&A FaUpHpYO6<;K W!c]\yai1WF[$ 9GYac{oY):,k>и_b[GW#ڐD = |,7ESK%R#q Q'_'q%@DDxAC')}ga)e΂tP9GϮȁC򰗺QCVK/wH 4ALhF҂G(PJ-Vi0Aom}WLLXb2 Wˆׂp:)A-k_r < `' >:RTzn/fMHq%1H4ImSgov2Ƞ2ưp} KXLgxH޺x 虒#^ROb+*w")LKGØfL{vۑOᴧ~`>Ŏ4zdt4^sɾcXˆfQ bBhV?.! 6LZ aMXLS"]G(y\hѩxLktF`5k_U^֧=}H`!Ŷ9Qp-:xCi\9Aϰ"\I%51DyVM ?pTXu%]L/L~%b,@GnrW{lR~*fI'K뉅S p>AavƗ͝ M{=qu)~ m?;DCΰfy Nݧ$*d|{YdgpO;1yِzzN P0@06jA 5_n*FbTtsƻ2킅/d޼ͣ RS㥱eh>!"!\k={9FZsK%'At&)ϰ+'vh>u0 =it6ܦ6GR!"r|-{Xwj=E{úNl 43:2]g:N>P`4[uZKgO6]Q a֝c|Gi%:!ۋGU@k ^5# q8B>#zu 2Хx#:قJ"UӅ@U6Kr4qc=#? |,MFY(tTG\IdN<'Phy 1isۘLT1?gӋv4Dᵽv <h6pZɑ&^qkx*J)D+^Gi bLًIAީVo" wVn4ߚ\A\ɳ v\,,J'ωgj?u'O;K;'ODUf] <jNY_j>5mE&|E< Wi#a鋽|gޖ٪4/~ .A#e%ز\ |pWu28cb9 Ӓ:TqGǝ}Bj %KRs7=MNQsȱgdʶ[/i~nW˓DI0Owc2#l!l{3W^4]Y r/ԁNZ:Em]Kb[ G;uW~>Ni̓=s$@ʝ@֨- UN˰_|+f"!Ѷ<tEhKA[>ekpXX6a%lI~LQTOzU0{}f3\r> T(&I33UDGޮii[+ PM؁Bu~UG:D nJx>IUf`=MAh 7Z 0M|[D<*D2|3,&9QC/D4dx*wϢV 'q#].N,lY.3yvߎt x~ʤ ޠu\~Bl,L&Efb;:,L씒m#]x҆*̡#範~[yݙYW10Q,m-@EKBGYqՍ.ܢY)gJPm~̀^K`!X{g#N &`NMS`FWs_35ƃU r@N-:8}Z^Xݣ՗go*bzJ5rG-czm2U𿵨2wiZ9Gh@ OZ.tt5oю)PDJRC@g8 登o.idUש˘.ՅU": = C2ڍ&~j3V\oNn /zCR2ڒLBVtZl_르s›R2*/['ݞ 0\J?%IqYWmK`N@<(Y 7=H%X2W4TE19s<]e!CrfG}LFJ#{实()&|8NmmkB]O|@nMGۣt_G/+tJVҊtG,N35V,JbO:bäxPAX"iT;r6^G`F|Kqk >j}~.8ƠOid<׫Ee4P9Fk(/:G3Žп8y?֝FCB2bLXgF_<@ /ybsǏ|0?:ۿ^|OMoˊ_x6zu⍒Pt7aΐڎyه_dצ^яf$<*7]x1k^="nMmI)hISYI*S"`XvY)&J\W*hOh;K6(B^>qy$czzl'ܼJ0^@d`v0'2iĕOas)6=F:|cL"-?vTB֊AE3`B`[o.l\8SJ֎ȸ*%Ix `CbJ OjAZ6 ba/qb`5nxs5{8)XhT_Bcg>fQa=Q!$6b֪͸z&֞WO_oIۗ ܘe K븗lmym<鬯ϱ%%k4::LG =G=n%n:pu녳I8L b|{&ԝH(11Yd󭗤>Q0)!~z$xDRB$߉+N@\9q ,2iR ꄓV^wXԝg(V9drmd=W]B2T{ڧ"HC'B/&9茈kN%FZ: cAY\|1[@K+ :uKyΙAk/61 0o?$;,)T:Pxib=Vߞ*Gs$Qǻ׃A-|3+Y`&\ٗo$LȓRO`FTݞ{D1PpѡL05OxV>̭Ar,HT@hnT5 #睁EM`q"Otq/1 uDe)|;8}X`X"{^`2zr&H6If aگʀ^%rP=k6n C_U4 `2C|{]hNyfud#K<77H Wazo^Un]{ZΏ(Ot#1;po!c.9f1Yܩǖ%<$Ry5;.^7~";Nhŏq;(%B2=i*JP)l p@ÙY#M ACR a-Zbia+nC;Fa0o`$m_!AxmyڳƦ(?oT>-;FSf|F8mdq WHj*DQ=|A1/%g)6D{l1LꜛJw oB?KNOa bkH&Ӽq udo?7 M ҄{RZi'Ob; uwW |D&>K$Ot #mضŕ8\nusEǎquI f!w,_njۉNhOKSwqV02 *꯳'+.on*ؙӥy((yvr6"qզ!iV#X)S00[%Sex0%Id qT#\3GJ0|$6Z@7S5#5 ib E$-NIn rma{$Yٗ#tBX6 %0Z6tϧ %;ϣ[jYx~"GFOtmsB?;)ay3tPorK*pP聊 Ç5K%v@+ԭ{ D+ >((DSM``Ϟ _Eg Gܷ(!2Nݏ|o{42?o%uj&28>L)#"PDwC~* ͑P@JD=sEmU~&W[B/}/BLUj8m WHU!d&PI@x%ruT'V{ʨT#̲.(g\V\y$m,[ ?gDQ,)=:<0] 0stj^>, 1McUN8Y6[ݿ }ѡU!*vÎƧVmq aLO2.TlNb;O'qލ] ieݭ2Ndq֮ղ +kBIi:zKre>xSe)Lvͪ?*v%uD_PsScnK ={G~T^gJgY 7Dhl(s7P3O E`3,/]m-^1ݙp!RZie^og@Q2?Ac4hѮv uƔ֛GZ/Ml⊫2bWc^*oE7e:"Pགྷ w7Z%feiҟ{$ -_;բ.y'pMDjĀV>'hۃ^jW(7ֵߕO VwcMeŲǷF}P] V Bw:쑻s%ngp$Z{h s`_)<pEz+w3)V㬺~C2_ ^%{DNZ!x?sJ&xfôx  dKQNB {>B"vl*]{]_擦ql:4KrL".dμʻ& -WF4$䧽R&0\: 0ו >SmWٜ7#F^,?Rqmo*=i -bQe*[{CdΡRLgIoæ·0-WW7Ƶ\; e\a2+_8.]TaHk;b[n }7bhUJ`Ev羕dشjF乃Ç2 $w ֬kK  \l d7kE5Cpè kt*\Í4]|[;(] @ zpsBڍ`xf4>~Eyxg֑=:Bb ǚ|Ƃt2.IPh;kwwNGFMW|K,B| ߰*QmVS9R[C4[jK԰י|_V `XƒMI @D\=F/G&ޔnո /C\G}x[ 85Sē;">(ÓTݙ#D .]e^GXdP i1ꦖZKWY+0)ȭ|T%N̆"#Vف1}{./D2ahuWöBtR"v>m񷅆#5<6`㮈Sy 7\c׳5+!xyUgN6B3U0`d)@h fo:d,zvA׏"%EcVfghr7ߏ>jٴyM"6є-ϭW{~`S45 5?<ޥC46nIS&᭰Ѓ5,r`b 5{I2B>|p}O_9k4D !}Xg߀ @cu'Qt#n;G怜/!R=x\#G fvojHꖗ5OMwj& ܖy^951aK#^k)^K\o6/Z؞=8]eM46}_DCmLkǻp;"U-2C̳pgitI"GUqҊ3JH;//m `W OXෳ5q4Aٳfyl^ 1~yIPfc!=2wpdJz| ::CZ t UFmkn 㻘Z7-15/Ew <~Lq_ߦٌ2E3bߑwGMy6uȺ~ZҬL7^VL-NI;BvA _ v2`-ٟk[CF$v,ۤr4ű0N;)qll | W̩3cT}Q&薅Rw2\[cnM`ڵ΅p<ݜMHbfߜv˩xnI36c;kS v@z:V&7+d0Qeb{OeBNL린  N]sU㦐.ws&DFF>~"YYc`u9\Nu@7dz4n>pUoկ͕ŏ8XW񹐏P{ܪ|0+d )5*G&yt3q{Z4[MKv>3VQVӫr34Cw֔ġU2Ckm&C@8 )Ŋ&&l:ʼnNL&LHrc:T1Du@q5%RM"L@ 1.NՀj>ԜnQD@dС=5k&Z~%mtY^&u+9Wh]u^V}/ĒCxs >=3[~ 3P.6ހYcq_( qGK|6k]MG0[a^1}b ҡz9sdo~V(G<ԗ#=8?"?3rbm3~QϿK1i Ūj v]g['B3FB V0B9vymk!{/{I'"ZƁM'4q@>?yU{*1:E 'm}]YD­my؟/Hvnؔi\LU%=ӪMZ\ukɏEx['lOV[03 &!6=) XWLD,W'MT#a"sWD,~4g܉/27aVrvHXe[RNJg67$.|˃$P _P8)\wHybSF_n.J_cBM!^qT9ƒ{Jx.FAR,H~, a;I~lav|?eukYv+}>BAt*pHF_, @(ur*oBܡT?RƚLfU8- 7(g*EVmWj2NUo#cp{IjV @ZDXu -]4< 3QŐpv(q!Ueao词vFg ]x+87cb=bhSȇF'UeY#+1th7Sd)s;ah^njHTrlݐ$q 9N0e4YS 0gK!-⢾ˢGnS[gSnN%k >OV$X 3fv0iha5=(@>rٙ` XT]v=Ⱥ9Tfv+-|`}$Iap>nJ~!!#PRyV9ٻl)b!g~j"\ÄR^}Daq߬C}Ѹӧ9.dmV(bJ$渻˨PYG\ /g &k  )<]-O+RsC#u]`Z߫1ޅrl7nS554+D思WxtuS t4TWOK  W,S 38ڼ<%̟o!x:AL"*D);c Z/Yf5Ld Pjӗ'.p.0`Aٟ~ R:x,X'?bͱdљwN4;dq+Sa( 1_t嵢G A LEDa[LZS::\nEy zvfPmDr_cpbD ~DҾ083Xkԯ߳}Da臇3zϩt9MmCA#H8YTշ57$[0 xYoh)HNDol>7BqbLm=PHL(!i?!rfl/M,>3+ Dr>cw|{I^^81Adۼd$6"~IڧtnNw?I8CcI5ju붮q `!۬ʜP%QBb*0t]rLΏd/t UGAу^DaW΍<= St'%GH /lGe/|}y$"! y7A=QzӴJ?tI[M_fDוU* tVfzޠ%:G[ӧ)(oSe"OR{k,pf+֫`--"چjW=4FB/*pZ/A5;8y`PQl8i{SzK61N7zОT=MBޓ`Z"Z(3eS |ݚ8nv› Ux@zW,Àt|RALb:(<%.I)>@vD( c=&ԊVP3/_v;D>'NዠEm=qhs(q&$2x$ʞ5r(o$&b;0?{֭dzW.PVM  O'j"OP-ߡz$!u: Aq^ h֙u*keL|_R7#CH^My[K\,@1 s;BTԱsXUMۢ8ܦɹnWm#^1.Idxak5o~WvaX~6GWvؐw-%FrmNР4 ^oauSozlb|LV0RAD`h}ms}YӘyBe>`8ŀS,=NY(Gp"]iGg`^1H 42_5g~eH 0[ŝBp>0w0zF'WXex ]0?,s52 ;G\ EU1J |)"Qvw@f|L ?UZEf)i :n340u)x#y|^|mlp6f>[=9* ˥qٛF^cuŷ0lL x'r)5W壼[bT$zy`e}r9Wxj>䇎sv0WA$i71H*\Zh ' #V0 zBaf/?b6Cb_e#TCQ"@m. G 7{ɣ|I_D(p{@Lj2Q%"'`86AR/KA쭴h;Q#u!nqZA=<6j0h95ȉBS`pljg2"-ٚފې h3D>ߍK-陁Z<SP"E}|U9L2I`00xZ{iB*mCs~[~ EDR +i=m+nؽ;g՝Uh35& y[C ٫8)|͞15Q=Ot 8!cQ^[0˩^|asA +r>x b 7"J" x V_$7Oc0rb=PTNtl[DҠ[c`ZoB [1=(Qb[&PHRw}VN^ͩ"M`Vhs|0lo)SX%n+Lm22!`B>xQģEGg(Ғ):_n&kYR!nse/q/!_s^,SSMF:]MJ(w{ sdc,<#(ʴ鴌Nf]8j4fQ7 ^f՚d>Qs2o->E^JJ2Bdpݑsi!5 OyC,Qۺ2(laimȏHj_ Ԝ*ʂN=fd3Hxt@o)]c NWu.ҥ[ҌʹC$qGgRz6) /WWk-zXk'&hlHoJ{EVytLW(G?+C T3?]ЧƚI"w+X9!:P͂gsvjf^ Myܶ-.ch ʿAB9Ϙğ|2a3^&_2PDX]W_/g4/B2|S+YIX^uw`FZQ7bZ݄.uVcWl{/VRG<ƉŸϭjSTJaW o3ZT;׏Jg\vwgdxkr;TIB6}('_j) /uoq¹/pNA!ϡeg|2f5d*UAmO_-A)XeQ(`:p4O7g}<=@NaW{G&ʭn׮?>V-reAx]r;%dRS7%)5[)L،aB%}{0#B0[+5C]Phe G!DbJnŷ? Pdp.806eךxka*o<^+Ec|;:,J],j13|Nꮑk84h׌\gn3Sk/&l굊BY+ѢHxɛj[Oh DDURgXM77Hǿ>BQŒZ ==vԾRhAg(?}oiB %ԊE/|vM|n$9)SF,%k1f[|iʧĂL5ʥdf!_`< T 2SuNzqg⠳;]{kTh#$Md[9ccyJP%E|M]Y5 P: ';t{1Dx:/ ӫ"qOf$n.Zݿ- @Ҥ) /PIqU~}5ݾmR ɱ|ߍ/+С)`ZUi~Zv^iW(qt;/0!}2iTidQ^%}m:+W;b8^/W?93;֯U%ea$ -mu!%RFlqM0aBRH_g|(Uw^0JC,8BaPY ՞uNPP!xZdte15EfѢ[ATOP[M -!zB qD$6ȩAb/lbߡd&v ݛ҇H+4X\ k8[ SٷO0QԕE 1bf>s& smk6"pR@c&Fw !vrm=j$a%GB9<%#+^Gb1 }!\캐f5e vΧƶ:ZֲA}@c /lShCǥh/'ރtj]Ç&0~5Y7Ł )!G- S)L ّY- v g';m%4cUM(uf=*?2OF:di>i>PW{ښSj~*y[O|l˜^MQX-|/ l;&7ٴZȢԕXPf;rm}5d2YFmؤ/Fw>~lyk(TOCƓe"śYOk A,`Ul"{ X-|V jt~c|Θ-^PDKm|dXri}HЧ7Mѩ)8r@zy_Ry~0y=5Wdx* vx=ۀJ?2Xsfjo,ư@Jh;("[uc }Q<4 vi:|.c0ezhg+" `nFSPnvf<}JyDv3M!JRSpd&nD& XC v5"=be]AV<4d&7F`7y9K?QP@uGP¢ȢǶH?렗Y7vDk)aq]xj6%}.6SGvQ萡5DaȬmYjgY̓hO =n̩1-0z蘶&H&nꎟ곌"k69 򳚀1֍:%63_;(NVl^"B$eprSw-FB[@\&uX@j<+G0'A(}C`gi:DK <"t<,6J+;ϧ|:*ONֆ#wΝ78<{ S? To IWpm OzXZ!xN&Ԩ֚؇SB=5s4M@U1AF](f8%k!BD_)j5&09p$PBּGmh*A/&bِIu-xYa ѲУ#$!𱴻 N<BAc@;јrk3ldJ]DzHa!S-J4gvjJ}|/OK'qZԅקhOl0׫$,W 3FϺf ڕg,ab^gFg7]V΄|ՋԱX>+m[[)6;gMH~\hTy۲ޏYbupQ!w(I6 ?pZmg7R1o7S q1)RD+fI43`k7dvfE7o y06QDFZvNY'L'BN$Y玉"" H*7b]gIDz ,&N^<3YcѺ~ Mּ%We`R{)^Ǐ.KWupofziv'^ώ>jQhi % StJ\T)u= 6hÒqG5)죰3hIODbWo]qV&NH;8u (]ɢ|3r+3Z%|rScpP~UNN\-I⑔ꂩa{-9+aYqv !§|P%EaY=36'JTuanqGIoyIt]Nu)!*mљ8`EϻaJ,] N[pvoН(1B{faW9i Y<ᣄ xF|-Rm|I VqYnN qEXmp0["{im9ʈ">7\J`ၽR~]GѢRdaɖ A~и܏LMgXDVHTUzвg]-3rW^.Dn}BL}Y(XZO\tBE_sF{Xfe}="/9J]$H39"dQ`M4g͞^F'|VOѮ '< +h/m%FOMzsܓOxsh-M [pl_=pxPRvVΊO{̯Y#)""9 P9PzE3yWVfO O񒚺SkjNd*-"0@Wx@%/ӏ `Q}㎑]˃S,'ώCT$ndqA=a0&{Cid `ǏezA봷ɑ")F.0y총[U?n%OJN<]ĺ+@Hë`Ob.܀Dprx-1*9VU<- uKU ک5$!@]Bђ+]?uYBM!=mѺ戗as!||?em@K3EERPwq,_iϝtNnɾ\z𳶢lo Xաw-Cl$WQU+ Nd]V }T@9<8q|̮ GS_驣0S%. B"e<[C9OZ\2OJ$<ͼf+eSya7%?0SO'>G@M|NޢB0GaFRzrAmE\baynzy8p2Sb?, %iAQM_)d{N2&=>hLt.37d11JSoOj!udoi ˘/* p0-nw;_F?ֽuTy5۞sLw)WrFFnu\6)@E %9.A ycиὼGutRrJ 6N2<[6f_^M^Aͣp؁=`v'uY~x!vi==Sxm=2 ]m4&ϹMVQV3IM `Xf 6$1?u.S8Ɛ  A'?Z3Q0ƨ7SIPR`I"~R$\3=JՃ_* x3oԛTqUjbYz>vSQLqRB`*` mOb H>QTuiUV%LWE& %~qI:cI 3J 6 k2W_ǀz0ͣgQ3dq^7nݱ>N%2WA'X%[W8% v5[tӰ$lP2ǟ6aџ9ǓPYMEGq57F,M .⃓!nc!,;U[޵R4֪3{P/S)i>lZLk+ji+UX?I"[rM͗=a\E3>qja5TА)W^=&NOad(Fx,ݫBaϨ xX~~1-[&6 lM{Q/F5Ƀ48icn=r9WgxOȷߔHҷk5Ґ Wj>{P5ڒ9R1ԞvO<DxDh@; F%cBp Ygc2G5DR&w@Eqe_mO0lΚbo728OMI31tZ8;Y6AZ.$Jo:(Ocm%wZ< ۥ\>1FprV>\f3GfY!}ƍIps tY[쨶a^$ 96,?cMܥE{e8 J3]:s@}}43:ܤÒD K*ɬ\A ~hSX[.!"cтI(^Nly Clۚ7ə'"23N4O7# _%EwN&oDtV؊,4q\?f͖LH Hx[HT%dÊA6S3hRZ苚KUq>qed;V|4`,ݍȋEvsNC ܀ge[l(isB'WkgeKFI|8P4l-A[!|1)܍k|9v6C8?\(/^jzE4:VYS1 ,忤և,Gzzp !:,Hg%Ko">$xR4W\;R08xrdIq9PϬ% *@KWT3TW" QeR)42ɓ㥔A;YL)q !/ܡ.3dMTa9d>LvZ>W 1U!Odu6 7}/gIrҳ+O鏕>#A'㬈YvNE BIg4βLVN{M1 pFN#{˷&tӤ)Z%~Q7B_b.BCzKa >mLGx `xXb"@\w )b.ec1W5MYoѫ(Y\$6[vPSl @eK69eڍHΨ2pcGFFPD7'f@3&^w_$GPK1_bU|eg8\࢏x dg216X ];7.#R<`&e챗t3*fݔ*ف F҈$XoI<s&lۉ6Nu2(Z mhW)S H2q,3 X&O0'iMp>l\۳^R"200ooۯutr6Df񮰸˴-ytpb{Vx Nm;xZ\gwAY O-X|P;>qv zw[ÈFW,!.ATq}b`T)*r>oYc#1sj v\jދVvD)Ӭb2$ԕ1zpRe^'4 h\V@ n/^ 7.CwtΟsg\QMPą#{hG{O5  7l{mDֆ 2݊~E9V>QW*~șE飧^hldZzǨL;>zӥQIM1d*#14{=tF"Io coz~$+U7d(;;2 Kz)i\y+ ̀{No..J {CwsƟ3oi*B,&Ï$p!b){| Bh#֩[=xe~Xf(ꂾ#V֧kv_8'gF\>,O۳u;tFrL ψRAXLQ+h1.vmTd u <}<5=nw KO8"kA EH`tr"K:P ˃ԃd3jTޒY-1:}|tՆ0! 1EŤғ3!&UZ%T)46ĈH$ pCظevqcA^~vK$ӝ-iOdk1<)ZX# 3q@"[˨RM >pE/NErz]O5$.zXz.  v !dzn|j֬ú&Ȓ,P%D *8oUG%?76d&{l3k&?Cj%QŜ]K0P [ƫ6μEdКנ !s`}ne^pAtGp&TsN:zF$]q $WB+'P-.ѧƪ, P }x_K'ب5.u.Tc*\${KZ.pjX{@Lu) Ϭ$ A~Z3"ttkW\]`st~`>9q;EX$Ff:5%[EoFkM{ h&G`s1yJ NyȜxSb~鿶> @84,~], oJtchsfX2&k=MϋoKVxOXYrJF}5Ҿާp 'u\$(0uuiaAt.yWS0Bt:蝩6T(ٰ CSb,"1Ѿ?"5+R|GQKJZtOXݒg3nh_W%^>`Z$(*{e4? !BﭤFc ;_h}ef t_$ ]| 0zdC9hmo~[ ph{ v)z_hBZ Bo{ g^K}~Cu6E |_vצs7&\I*pZ2 B,De/<x>A`X-vq0r>[:яc/]Gm0/~f+̺:3T6v]B2:~^'UU_o5QKX0gIA Bz" WVQI+' Xi'~i.P)Ebo"lʞh~ݸ n* 7.Z>acŚ׸8 ֧0Hw-wJHI 7;SJ>V }YHLMN}Ew/dgi! /_؀uF7и?uݖY][^{msM;CF&/;oiR Xfp$Z;ܕ!_~ N=6:@~`Xbd* aZ&IR@3$&v;.D);x6 ؘ% !fӌv*tzO*c7>)eCaIl\MUP^*~N%F69g{w Q0q]RP0*N{Qe]^wy +IT$F*eXn*z3bz7*2T%ܲ'K tp7?ش 0 y4츤ݬecV# 1WņId8C#0b8Fntd82ɝ&7' S9zYELG " Ή}+^ CLYj ճAxD:gH? cZ܇,"%AL Cğ.oCO2EmCnGKۻOTlj}qAp# #v@A 0>Ϸ٧?1NS0 7ηuHfd[`%ÇM)S$;;)c))7̔RϚ%"dOySְ#g8 i[%1GLҚB3f5{twrmNKE0pxlax Pƾa;y`J+/u(l+ΐu$.\hp\T0a965{igv= SsN)wufF6 wu qd9I௩GYiLEAĢ99 u[IfηlQ"[7xE *LҽpؖEyF}O񱐈R:Uᅲ5+"z~EhJ4tG,K2rFiW-y+҂bfWDFǡއ(^"~`ML%Rn)Z!r悱S #KEk233 ~) 5CCgU{v[uaT5VM,H׷v@9S"l(~j9ZzX:b΀IrNn%B2j7}Qmev ^eF҆v$Pwq$1-cn5{?=uO'Qs˂MºCՉIv)1W pցΐ]2خ8Jb"]E鿍mKm#ub:^.pZ ։KCTc}-zdbK¿ Θ8(fIV+aCb ӷ׍10Q;Yd7ı[Xf4 :P]P|)bՀMℎŤoG F ?+v%UVh̸R~V.%,a~d&hA\v`quKYX<1.yھo;y3-t*f%`QODHDhKV*GP ɸZK\b1Lֲj7zs<&UwXN n;ka"-A9s ]MUGacUto;} Vnb{#-|yxǞOiS$+FRc)Fೋj坴VlGS7iHc6y όlaX〨 PJu? H Ξ9\-60ۤ2ڂ×NbRm W7V~ h+ui-6Q1v\:Lא+لtl|2|Q0mEtx::e0d·&.kYޙD@5Cu  * )ǶҎ5Haŵi (?=]4D9# h~^B?. }+?}(/?+urTC4aL 5/zTxBzw"H!M,TjbkAp?d*CP@f.87 Dw B<6Eu []}J.M aW­=:/gp ]⸩hq\+ 1 V`)rJ2̰_,9JMcGM{0$/2pAiÌwORH#IHt@`7:*o&\Z}Yf$(r-6Sasü7 Pn=*EO.2 M'ӀnsisAxMRֱLFJɄie3!I o٬V?U<ẳt^MzJт?`dX۞: #^fa RAq&ﭼt 0w( Em&M PGO┨ڣ2r(r&#& F JsG!mi^*Oފ,~$~Ң>pwAJj*oq)#_ Là$ѱmɸb t.>t6)akp4IV{::aͮJsǥ3A\SV6xeaEj؜ՐpL^0piJSf[g'O9,ֈSe5Վ*<0,Uh5o$'WPk/׊?P7PEhÐbjo<ͫT* ŭ^r ]%⍳ {]qcBܳw(nvr4FIj7YSy{R+EhKdWI:' i!sj}fIB6A=؀t r n;4^Sf= wgzJm,F X,K!OKDD=S2R:\PBVDũw=mTRj#m2&{_γb)Ȩ=l݌T^5J]yUDn`pւ‰֢ 8(,W W ΋fySQu#2j8e+7_q%$\?xkõZ/$WDM#T,y9n&ٵEtYFy|:MzOBaGG_3첝d`r:HdN5B4d,~ HN} 3'hWm",}|fedoA:r:?<[U,ffj5Z<~x+̬zGJ_W7\hF^(oE6g@ߑǷMF:_(B* ]f[ {絖{ܖi?}H쩙3(2K gE,Glo_bs`U4, '`r2TnŘ<|>2\?+fdEdTPp Z ̌ H)M{ uNHV$gwJpYgb/qvlDiׇ#>"4u8}l }_5Ѱ_q`zt/Y`e2"eJlk$K)حhnvwc|gۺ.:NՖYHJ^h` &!yWPuv/Gi?ma&j܉euW,W BaJ~)~X?7x0:3Br7+a̹ P51>d-oXڳv<~9)Bxm+Zo.AlioKԪn92D+ h𛁸6]kH\ǡ]\9E cMIDN"͆R7H<'̱#J.h*8"OfP۳;8`]uji y~/?Ϧxt0 #FdUǮ%ύR*'[$5MOA?kVNۆ8 !O6tvI%^z0h^e{@ҵZNd33ѨujkQ.RyHd}=Bdx|ϙ^ ~P`hˡX+"[[fe BVDy j;!2+/Md*bo3K,[?XT0'd՝>ņ|AH :naG$ x C>914ƕ?79c``벦PЁI\G+}"zL'i[M;*m='/"a_\%@h*z=B!Gmm`4i|`WL68TH\~ި# 3h^ yxb2w~rq._t@*h?d2@k>yå10ӏ?Gpo<5@f^sqUmpu!XĎVdl%˃nSZB{7oL}U/s4/k- g8P^[}ԥ7K1thU$„ޔl^|M &QC!ݟ*ӷA|$hP 7ZѷmšHm\'/cؗ=چ7)īXf6ÓUچDt;ef*NG0&|OovZ<Uͽb>Ln>T"ϔ&w/EFӜ8ŏT:'uiyItώd Xu}+x*ȬH1 NםΰfDl"4Sbw',yJ Yl/!S{_2f?OB@D!J`m"(RīՖ 0Sݽ/?vF@OSJ<-rAJ'$k0X9o`Zi[\A"ݤjIõkDIO%pv oo20A9)p&$„C/VZmIQ*9w4R!p=Ie.CmiD 2}ڡ zԏ <)!Ej OʣoT\BZlTQG7|iY];vERQp; "ޔuF ^~n>9AB}VÓ|ᝀ!sפ,-ISt=Ѹ*>b/ci5rFbH˷MnL{KGfNJP/aw$F;) UtNk!SF2 fj?>eҟwj関w0;< '/ MYEm5fQQb#S7 w9)}>o=e > ]@N=|% a^S';[;Ǖy/cl̗Y-=Em0u᱖hmGL9k<.03Bx+1+fTV|< t ? E@%Y xg=*ٶdLLP29f!^2BE],(FSRQIwQr̀qQeL3ʢ?p\ f/,[Et6KUeʀ C ok;Q/vj'5 `_ [=q[l k ۉ8:<[vN8D;ƀ{b >p[&p;D{ްC.9t6jr"9K~NJPDB`S)?~9Ÿ/.d55P T(ȼ<Vع?C1jJEa6,]}Ui5]_[߰cA;U¡o*=/F|a3ec?H"xIT#ծ˒mVF*Gҟ [COlj8= oΘ.I0nQ~Bmؓ58T9:=L:Z;c;vU07v -tq2ɵɄ^0yb+[Ee]`-O׈QE3՘\-)}Uo,zD'{WIEM5 .I~3͚7HwѨҙ92wD.8#f}?Pd"h]$QMeQp;H0{~;E /  Cy͟"sx`TlkWGOK)ŷm a͌C:?InSk1WGƺ)-9 &Dv\pmWFlEHEѷ81p14|;m0MRՖe,=6Tap"|@;F\7!6ndhMu!?9 ܄W-q;vEbM3Q.9 n~7 d)'դ);E3,Τܞ} {IJZ j`Rtf陵r0]2]YY[n Vtٌ+<׆ufV~8'w09.0CW'#G+/R1raƝ/+*Y_ߣCՉ\#=2Oۿ}[5z5Eie3hO䉎ӹ^^,c ǫ'y'?sH];Q6 4efu/ҥ]r˻נ7} MX -ifNaTT0N~,jKBɊ43$pm_$2585͞ 32 RPC #6{2f&'dk`>c`9#mlWUp*zV|WC g%e D\(+%wPڧ36Pѝaevl]a#%@%zI)+{26f^}{l eR84¬E0碃8a2.ڜ=SVs ='#V2En: ͖[AkUkUH8շ":,jT4NXϥߑh?cRzP"0Kb^D {lխ1?=eԭMYpͅR`"& - 5Vژ{%{t ~m^q]ap.&(%:n|on֟k|{+!mf-0)k\GsA .0 JԿ9Gr/$<ymV^wF~UC_ɢ0Yր3iaIVSg) mo-8Flg 8^krE[˒',^L~(_? *-:*7v ~gc|렞 g'#jwq,vmәRUJB jڽ}PFwN<@ۋ?{NSgwFl ]YE37B a7n3.Ymoc̃gL=g~M@ЏJt{{̝"µ0kWcA[B2ı?p ¼beMbStD1+4bX[# ͋`sNM k̵;*'2{x ;w+< T,jyTŒ(Whlv葯Hejk-Y!5_F<s2fQ֣= 5:dM9 2 $s@ٿsFvB Aƨr4xxO }6lY XWt9.փ NU1pGu=a)%jXa*a$f{[)t*YD*!X RyMs!q :WɢUmШE+zbvؗ3^'8i߻DUdCjOX˼-xJqJ&Vnt |ֹ@\zx1t`~.jV-\lMOW/kI쟼-e^4 tXM/vV|$'j|{+ [m@>G,*j k8efP`[ڸiphs8G;M&h<նІ[.\wp|`Z&iH`2*\?ئȼu* 6F:.GW/$_W(eЖC0L#YJX]ɈM!U{i+G R_x# RI3jEZAR1 Wו<; iw+""B ?@Dd3yF,$\ySU{ &GMCHD{J:EEtՆ`.& a5$3te0ϔBG.8E'6YK!_)!+aǢ"@d @Bn!Zt o,r?~0_* =,ަbL1q2 ,%i}cYv6T/fG>j-E7~ue2='+ѥ=l]TG[9"y|DZ {3P;?<5(R:+sIDI "qnL ȫˬռ ҹX?bx8-Bzx"'d[:ՁWXztv>h,z 5|]M*gKf93.$Eo,-)=5*ţUZLN@LoP2 |%;(608!UcFJ2Dr|s;4[Hp'*Xޓ(83%y8!C0,(G.F7+npQQ;컯O0ʣh~ngH*n)ɞ'Ѱ)^NrYդSHЮ@qܒ,ϽY)=UT^re s[ Unwqd=tz^%4ʡ98m Et@~Y{Q#rV~ې'Ugw=V=tĕ%Lv{lHWKK%-~O՟6fuey; ~ Z:CF_~q#RPE O93}-l+fZA VCY2!sD>[T?p\#S9EF6UnH[NGX+4̷+@l^lWSK| 2(ooƍ!əyc%$^~W kT1'URx (4S97z@0w.ա1  iƼI1y [=FZu xh;sD%9r`Yy+܎] wۏvڙ3xvNr;وњtqYo@T7. P+,{\gY:.~0ܘWbGpAy> . =Z4YG7ɧ2'"ZYjЦ#^`M?GHcQ!%(бxCHƤ#'"^`_lY*E@%bGðpN;Vzz3};}XGԁnȶ-*[mS !o{p`L-(qlM:j:]40-FQ'F۽+SZe1 gL=GH㙾\bdU|FLL.~l p^MK&[q\}FuQFrG%#K]mv.`q<&BB{b'b8d؜ 68o\ Ě:P+L_مy>ۑqŴ9NH' BGIDziGZ\L><}/B_0N6sV4^l vOa Iwd~r Pɴ5N{?nJ!U8oGFq 켗xDR?l5uAupYi'VcM-F؛dX,'p6ÃI&wIT7x]: *$Ύ7LDsBaqAUIe|#y{]߮w5IGIky-9aiSTWېYO 92kW3Y[;Lc"&&=J:1H(kf]: |w'm?td]؁d-jc^x~zҎ=i/o}w׍bA"ҡ&'D}kV WHtnLQkD[}؝fl/T³3o_,pvc`_s[HBw3si\]ލ\$5,`zfaؓoKF/ jFmj(]|כ%K[90!QixU'i1-%h YjZd R1&ҕ>]}ȑؿ4Y5[.vBSLv@F8K1\] >G2rk!-!MR^{ ۅ eR(K+=^;Vi1Ž ӳ_?I[1b__D-ČTqNx7mtX?|sD)wJ)z W?D<ސ QI4TtCHo94qvYPQ[.N'7-:f6a~f[!/#ѡ'U˦aӝȫoLD~Q-6FR˺OcPcj*E;*J.hJ)O)OD'4yZ,rL ꇓJSOl'cM4'cq!# PDDadeĨբ>[CBBqk> 7^dc⋷rcI+/THKV) sQ̀Oc7FUj'M±0KG.w1QNyNyJ2aXxD YsG#Wb bXjEe)'Et(cwgqSw9je.27iĤjN)a&z j=bu$ON55F@Btgԥeቬcb.@I*#wq3N065)a2&ix 2HkNC]Ehl[9Uot];W@ 5sT&*7rE9b5v-SX"/2# 2<dqDeS?XsM䇷 qf*ilZ!׊ .9P>'(܏kx[ah@-EXEߖ{s:l n4H%Rz~ UG^77,٪PUec>8wDSl|wiڨT_A9Gj$Wz6}*C6ebi08!2`ټ$b❔տ/u:#@ ,LJ6{i i[W { bRd>@+iR 1Dxf !OYHd&)mze '0 b N"Vty~Zĺ)a'Xŷ bkǡPUB{= IX,g͌!}zU)a2E| ~ ɿ|>ӈ}4Tv~ ڶ "ۛ)Nr]/'dE)Y91\SC/IP.v8|&t x5N*W"]ThFPŀ3n!{\d2u֒G oGVߤO 0w62vP4OkI}Vm^܊suƑׅE?YiH 1 Mܪ-O S[D5&H+^Gnǧ.ך? @߰C4+U_&0^k6%Shaٍfq p3ϻXҤQZw! V6yMAa i2:HXcm[8Yc&{2̾C EkC cQ^Lg'8Dy|2{XV|:Td2XͲ"]XzAi7YG (/pa1h<}@ro!?aCNݱPIȘ)NI2nDbFk9:_?}G aPH:z sN de %z&l xbrCԴ19U<_ͩ*LgG$ `8KX]$>g ָ T"ؙ$H&2bBc D Cwn9'qpХKMNѲ~Ibu2W!cj1}hV',{wRsv-tT,%r 0`o&'>}i{M|fSl[>O3,Aȓ>d*Y̳20~j j~(qd}Fyq'IO~bZeR4T'nX'l[dEjˑ; zVO8Nc +qASY|>2=͐%@LK|G5P#q ȣ0 Y=|ǝcJ\hR-2fpю"n;WhtTc;*څ->/V@ZZE)à~hlp?d29wC):+P6<1U:=gvwBixLVEHxpXTKm4BLz5꾷儐-Hzqsٕ-o!NyqD32uvꮒ4R e!nk[JJgyU˴oM!t " `'N`L.c$n5MT'#]1B׫n0V(H"ȣDuQ*7kzFciޥQyf7Jh0֏Z3?J,J!1'z$)M}'II@mFCYtק=/]cW9ں8)[4iށx>5+]I7}Txq<}$m@e#it!eUT7-!ۼ"E|>σ? =2CqW(>A$ BI8 "]6R>9۬#3'b"$8F,0GHZкH7ߺ;hWOſ6W!h2P`9P=G`ߕAWG~ZKqDžI6.<qYT>Ψ}+6^J\? i#B/=:ٟV4 _W˰mSE&?-"ټXZD[Z#1F@yw`+ꞯrqe&7UEҠn?gkK`>)[r`4ܛ]% ,mRZ%I/ ޿ D7W^SղR($Z caoKA(91 b̩]-ON_qI쯟-NegwcӓʴJ./Q"]c gE(vOdD|?7$`Q [ĕP!c B,U}+oD"U )!?.)oϴ$E}ktlzBӉk1HS9_Hu) UhBv6Si~; |xP:K}!S]6 Ql*ҥ7lcY4u$N&(|uBRv 5%}~>vRQ.S>@uHbZ2J f~Lߵna/@1JIߥ#GMȖ#\w+R\]NRVWZXJCf5Pfsf f\]C{L4p3?ը[ 2N "q?jHleV1A֬ݪ0N ﷲ@Wi,< iE!乔t˼͞XDp*S@7jlB+i9izPV~I֘a_ZU\Ԉ\ ,)Ir2!1YR-zQi%b;eE'yM!LqO+bYL\bz,R0O` am}geeAJ 8>] YsphrWGL5>7G|`E!:p8TؔZ@Q_ǀ֨MhYQ!ݍ׫y)mzEH v:fp,@g4 F PfP|oo@bu.q',gM^N"q~E35lQcZM:bh0Zg-x@9[ܦpUa:Bk&zOGiqI8,[Q#^,-dW2ÂiuwUڦ!5rrY{++Ñ)mJjd$)*;SK+t{_=*>&ObgiWˇ1L\,>^ нHV X0z_%! Z>d8*e+_' |![//չPi eme&bZC/cXk.>l"x ('9жCBƔR_S&ؗ25y%[qND9R#]FFE-0 W5\S.̉ޕV%-yI_z\a,@+~ف{FPQ&Hq(d ι~0f`h:g}l~u;xHUpY%m9Iz&Ҭtf)j3hNaaEۦݿ)"*mWS$#fAJN9\bYwIqBȞ8-P=GOƔ+x{6phAL77Ix+BL5]v' :O&A,e 4FrO6^G %R GBR zzH.幖"oQx#Ǣ0d %_ut.D9 mWf'T|s O2e@OLd/hq`k75Ӡ 7-/F2詭&y$`{p?O/F:b;m%YڹĖ4lN9nW1?)r"X29&b5mg?7#][ֻ# *RA[xMs HG#Es Hl%*~7֥:7q=A-p>t˰ njNhݓ +Cx,"G# d{qqlL+ZX㱐E@CUiw Q^[Gev겂բgnQ UX~b<,թ0{_@%>_` ݈7FO4P\3FCm@^ԭ/#$$TH:af5ƒB5Y@(؞L٭7/ͯ$l% ogQ`MξEUk:s$L猻] ʨ3$| o84p$^vE\6q~:cìk\); Q,jMʧjI˅QP0H_LB-6ϒ*b|U2Tp*Xܛ#‹)ߠ0m, 5l*#K,[w@Iք!Qlˌ"d/*IVDEa}l Zd4WZgtk ϐ4ѩ&klRwOR=;H[ᕠ^4!j(= M[wqZvHixQ1+3YZvjY P57Q{.Q_ťXQ] t1تw׌O|_2.ZgvIZlyE<&YGu/I;w@mዑʬ'ZV k혺]h /)k-)i ||pۤ7+37Dr@I@)*# 1ZgnwT6u2{crv3Y6z]H@ AL_i_hRI?|-Zw:W]XA6˫"1N \ UMiDMS }ZX'ǻ=9?N-(UpP5-b֟zxJo|&Ҏkx9$.{tሮxiD6MP#8Fq.jOOA_wdIP*}aJ1T0lbeisj e7-rUX?)M# 8-*8j%8}RckG {RvAd- V'9u=d F-%|eO*T͞b, nSsga(~=KE.MvphEBiܧͶ!-/ojjgwӈoX $>'O;M.M ?5ZO{vT&n{,̙BIӋ * پv,;o͔@@/"/SWEC_Z)*u8gTѷƗv>QGD0 yBEF^p}dkU,T7cԠ:^ވ-k:XȣApw?\ ˪/bHb׉ r!G2Ԓ$gHZ4Y79H'knM$m`Qu:7 j@Զ2~ÙaH_UIA=m9GV)pY/`"E>vN;Yф.~,X&rUs3?rmEkUr"@"*eevf#V9yMI{9^W0435RMʖ4:8%Tg$C{n.(.:Ǜ?Mr,7NRU5%Hɨ-)ϑlдނTl/ - u)h*<ΉJ97)+ 2:MBљ؁5HZ4RF%<W[ AGIɮu<&s2g@k05rR @t&8zwg"wA:٘7~UGRn߈/}xvEb y هC6p\xf}=Qh86y;7c"ҨVDfI(>!Mߠ-Z Yib&L&8~VG=I~s&iL q%SCyMfkd[oh"ȷ7W M !V>'_  ӖI 3n? t N=`U5&0T^A,czБm-E蜰 w'2kmDq}$-蚑? #?g޺#)]#&sQœ顎ճ LNZW4-8LĂm/Kg? g86c 6?WV`Q^Z2u֞k ~pPɖcc)B΅ir!aqE"(=d ꠫X11^4lsߵI;wyL]-ƷށP;~6p8Nѷ8[H}W_Sh”She?6I29x/o69Ոn$iyiMv'g" Ah95hщjo)p\bӐ5lQ5B/YdQS>XgT!aحCy0֯ztUH&=/Ex}wHg8>0mm@C JnpҮczwޔ`ӮqҦ&9t075?ZRsZ趁8mP?˩Cgtp䣅R~X=(\ P&[ V?Z_Nj1I@d.L:%qu [ ݝAghajɴQM`%$^D6@}%w߻W:Ge})`;S˳:ϛ܌V T q\\ꏽGŞ / lӂ3P,zKAJnXHH(tq?3pBoQf?r6yi`ɨ w7"?{M M<7 $I aq`$OЂlOUY`k2z$%{L2rhO^UzGs<ض#>' &ygz7o02u6ʸ>FN_#OɎ:I'NMi/-_M[E,: + p?0 R+c#wOI"^l; kթtrTȆ8. 0w:w C$q60?l{Mgs8aV}>wٓs,V*ή(f]}n#GK!=N-񘯖(a&I2dKʩKc5k=ן{kR24>|U>vfGeF^ӝ .6jU3_#~-قAǭ7O?fpT@7iU:~IDxD? n.M~3ɪ3@ŧ!KhŔO,Oۓ@dn`̘ \h+\\eZ-!`B/hks1Dr6&>{|D1ǚZx5 68dQ94՛z*x%2],n? ٳIг=?K鞅fqPoE!&)@"˳3~VSeRTC9%߀cؑ܌W9zq >~RV+M,Ke5{$g0ģe hvVR jBZ1К$kz+yqʏdEqiؘs\ MT(y_b/?FM`G?ڼѸU-_~0hz ^Qy`e <̴P3# >&"7< MԌc u]0Ot>ߥ˜6_jp[t2Z,X֏30vE^H>DEg 䓞V,c|.Jҙ y?k!ham ~;C&,Jӏ_'ȃwSR@|)eyALKH>}cŎKj96dW ``siE[4=jXzC2E q|U.cYS$d+ұ裂#1g=e~NG ho/9ږȄGb\,,rO {}uQ< 4.3vރ|i@ʁ>+|0pwe'N(޻_J P;ԒF'*tΑ; bԬ;aWlغ:lhdzTntd̙A&m3F_HJ&빂먫6=Ճs,1ȃzxR.j vIr [1kkdP}6oqEǚP.s>fq X|%jJe21$T爳U"(P/ <$n8s^X){d߽#2}_Վ?#^xW=8>fiS{8$ ɒBeIXՔkvRmO-jHQPIB-]W?5gī /*GI#gK\f ķ> ,r~eUxLTn5P[vphuLRjf7)-vRܱNqsxŇ%5PXY(<(ܐ{ H{耢Mo /ȒDM(u6BP]n8J$hYq7+U jƧ:Tw,9(}Th?;S om +[r 9<->iHy145AC]Ț]kR D(xM8E.k^ /r=x \QOX4\!NkA ŁON?J{hIN{U %$J"H,(U"x{)r([ۨsp6y˘yWccjP ռ}H)v񠢽JSL*1 ҿP#ET?{vixNx #Ғ3hBb*ˁ5j?G{^P/! i1}‹y ?y殑kCBGғ pcä<]Pd_'ƹuJǕp?n +P ;{2S(ou;i B89SىVCSk,+9Q%pI65 )(ִS;Ouuqkzy6|T;/9ض~)5%8:4I.gޠxL(?|L+E.4|,X1ԉHlIŗ{R[=WdFvhesd/LZV_[CL"H`oFv!>.?Ȓ}>{?VɊxhp!#\%nHT=oPcCm(u*IBE SWιDNUw`<{=lf|^=߰>-JJe6l,op $":l#$%,( N+~LZ6(эTq ͺc2]Ҹ~"ʻXEi9]KyorwKZ7 VrOh#g93tP NW{7 bU7qOmatRzLiCnj@lc$:qe a Ǯ%Kggi *DN?yYͼBEJR? G@"L]@-37Vp"6)vN;^h G{?ywz遐'MdN4n?R:.\EqBh7Dh5zxl쮷ϛNw1Lni2OW<{ <̹7M&?6Ciqd /:mlt &}lS.M֫qK< Cl_h;;y$Z_vE*nP"q,rb 6K(,cW&aў>b}I}(QlD}b/gv!yOu#4+!._f˗{eHïAb5 dy,$5c ק]?-W@$q/-\E&Mz5» 9},0lmbgY7e*DwRƜ2~Ԙ~-_)p{N\X¾vX|1Pmر 1PXiǁLh{V"M31gtNǹj2 ~߆J~qXEgycL>55,ų6BpT Mj,>)h&eL!/oD:bF@96O.F"t9rVr($Zetu_1Z ;#(+ sc\9QM4i A 2|J? T,p*:^W*Z5䀶PͲ!@ӰIúhAڤ&K֌EƲH6V6)Qu7+a3/Do ds987Rk]]4^Gvd*"L?uXx':Ҵ׊˄$,]m%B}⋦ؘ³ + Г%&B4~>%\E},ٿT6.wpOOYbI*OX3Z6n[m>J>wׇ :uDބoivz vD@4H,,<ܦ8 ׸7WTyT:XGCssj 3pĻ/g>RSFXD3Rp SAKA5&5٧Ɨ@ͳjB e"6tX8끎nH|kͷ=|7!@;}pL`.i>>A{>croAwX_C M#|7 zXS9W@ֲ>URmؙ(DX3-wF$U> ζ κ'p-1Hc]R| 'aUjaUA#]UOOKM5t)$K׳# %~#~ew=u(Uk$MC X2ʣoc7B`xxUϫAaڠH npV O{Ђx.rW>3j@ PO$[o5.} Mwmrx P.x]Te2.b {1O"$eu5Y:f ; "WR\sTv*$S걅",1ʅ } {MVʁ7'͡9YZFfsai Q+ę eQ;;€^x: ޵Xj|>όz[??z%Yv/T4EʧC/>TN9swPV>0(BsΤl(FE5ꬃܰ\GϠG ywԇiZsOG:oQeBAasuAXX!QqZ_QFS[#G i^kG'G `~tTµlܺv|۸N$Iv#J)uIWSBJiWˣı: 6=sateaەE#<ڟ~}eOt.U-ܛ*h9FZG3.%DWV_W}(D臒YH σisqCLqǗѝ 1/_ /P\p;4GtpsEt2Uj @}R>9wF^K&K\3}Q`.""&~]dn0wn|l-2" D< !s48#@QFU G3f2G? ruiPN4KxBl,*;8qBͷ@*(fe[?q귬_(zIP_dhu,6 {&,:L#5vl͘#n-R!3Z6\ʀkC d9æ pЈr`񑭙#HC R(P/YHb]KܖhokBiS<+ _Alỏ?:dv37[Kht4!v lC{evj"zyMk^l6'hVmۚ?i~-tݨDViۚγ4]t? .XFts(o_V>b F%>emG.#; Y=nÂu^WzWƥ.-IT@FAˌƂV ;;L0!REB{ڻj:wgMѭXʧqSxnVh ŤV籫.>̨ ǑXR8BX1GT>{XgTv{t@NuzF}. ضjF Ip%tsh"5\ܢx=2ft}'^˙cD=ts3Nhh#؟bg><]R*!vK97Ёmʒω^AѕQ0I[. =x0C;i4L EMe@T5_.I.depf PZK. |2~pEcZHa' e6t#]G-9?%\h,B{ZUp&/ ۶ffB[(~ZrK h`G-!aE1Ʌ1YjۀfA;_yȝ- "a&Te̘u[ܴ0)W"M#-KaSӸ.ИV[Da}'3\f3BĔx|II':3I_)= '~BfE<9 [S/[-.ڂʪ qCWC{ ׼b<xϓG͝-b>~Tp̷F3t Zxdy}TZfbZO;cʷw"c#˰/?/AI=Wļ*&Z!#i {R4ec{>d}NQhډ:zs wu؁mDm7a@ʽZPɊXWMlR\w7ċ׵2׳Ѵ#j0pK~F:yIn9`]Tf9##@$ PsEӣc3M5xG@Ĵܡ('ʢt>gs幯rfV* oIg 5כ:cp{ 66'JY\a`s]ǥ\/_yʗ{͒-QʇRV[5e^O+TrvF?\*! Z}tiAQ$GcLuC0XżMCa=5 !=>N#&Q4of1?ƿE h,Y}¬K(QB =}V7t^h?3@,?| "H#a%Ln%r-*t` Mri_ɂ{ϕ,;t40&W/o O\5Íp|N\0d}D.hͤ DŽMV22 S1'ҩ<7)Ķnی`,ou[,a ]}(Wv L)U-}^}ϭPYoH UiG@S/)+ŵd|QBoK~Y`&No ^ eCREl=A3)3pXJt%tXr1sի(ũ[ F^ZE3{5v!f2C=ƹT죠uLxNQ ESsuQ^L-On ^G-ηU\nGa* f:fPwD]~9%aͽo~QF~pLJ^:nɒrCHW eFNݰq '!ùx;qrc@xz\2iux6JGʼ^ΉZ?$}]%m |Q9}6n \zN)x=꠴s8#v j7c e>t4x] 1lz=:UYD'Q@M2c~V/S7Oz PjĖ/_\iҭ`b;H9n`qxbو(I~WIkQ2^sns2 +īD6体 !D3^7GB)(Hˁ)V UHWi/]J#vKHSUw JM jάjnHkp҅j쒩F++J EJǞshd_+iIF2 xqS"pжc=A_cIw\W\y\QpXmdVIaI=wYPxw`񢩘HQ--B;Įm=5fS*M0[샞CA+PqU `$;zL1lK]ښEgߥO*7ُǧME^ G19z~ cGf ʻ!`|WosHR*ӻ9 -D$oUd"Y,8˨Brj1z(ҳc[AWNFtvނ1徴q lپPO+LGzR^w4[5]T5*'ژܛ|L }dΧfֈCw#)tnq/B#G{b;% J>Ue9-^\pr>(h`F/ٻߤXv 7ڵ' `#" {q2-(n;pU%6Չ@LuIҼI <ѪEDMV8==";>x~dK #ke$D2O OW%8UmǷ;9[?d“+7=(^`K@Q:fL~= c݆1Ǵ ^Xlˮbe(>t̟\򦽸#8>n6C=IUp |٪%wwΕ蟻&ـ6y;Q hfDabOxA4@j&C:C=rqΒxX\# j+6"ȘrI--Τ%L߫ ,̕ e>'@lȏSп5)r]C 6kh[~#I.<"6'To lgל͟?׍A*vkC}W;O }Y 9Xf-ze}둧ruї5G.>3|-|ҝz+FzD:];[r*p\\7[x~OF8o,0M61|;vP8)]&(4>{Ҳ*^ҩV' ;GKdPhxGkP\ FUvjP_y%hjeشz+Zpй7ԧhZus-M {cJ?q5^"{c(O1s-cČѪ nKˏ},yypo_4w@I>&U 3S4[js.A4{O\CυtFw67(~^јҾhW:=NjG5G)mT_iI2JjBUh_=zOJ p} /uxj>R Up}(*}`{HS ꆽQ v.+_\֟+ڷ\V5HL #Pºӕ*p:tY:l&~3,޵]>/ 2*Lcʕm7`z<./c|Qa!p (Uލj XӰEm7DO;NDvy`~u\껩1+q2ՇMyd~bidӰks +]+i Y}_݅ V]^"^CĮCҌ|G,1Ջ&zk{K띑O& zR(DC+d5%n #N YJ ]|o18~cw<.u|?6j~o 1*[X6& 0LЛGϖ;{ƽf0hPeFSvR+Vfw5G )h-Rl~]b$^)Y#IZ\qJc G.F"nX0` s $Zn_e}ZWi'cmUn%}K3'=N+εKœ<=2f>jO .]q)oۻ3H_Tp\hђ- 3yTCB\UTaZiOL@+${vVoJtRjX &fMiB:LY6DA0:H=k8Yq,ѾVN ޱ9S=lpkģ|#2HK(~F6;=l۸wAlXhReEG~UONhh<6 l`B)+T)XLrPL4u dIP10M6ǒ~X㎅_- ZQq -f!BKSOVn o]J)+}=xݼscli5%^Hiⱞ&~ ]zXB38Jv^U2 4I' YDf?1h垠cNcJʇ3^kDwԂoNbs݇^DUaխФvįZP&M+{uL)Gwtkcuz'Mʌ [x4 J+ 9o$].P\Qk?l]qG;0 X+^Q_8gWMeJFȞ#"wI mxm4q1^?4~-W`*.V)_3h$Wxa_; ]gX#/4JG]+jLSzC'f+l2LXY2N(+Hwc^?k[Ὣ_i'A[2ה > H؏@bRΗN]M=?Xo6+0@S Y6,Edjy`բ~~v%HO#?規GJKu$KNM2ahTz ʄV7}2DˏU/QpM\ uv[̅Z|Am*Z1㸍h<vf#jK۽qX+2%PGLXs\! RfG[ o6JbА Wcq`ROIO ۛjF+єngʯ*ЪW}LRѰCF,`'NwPIu<[sMD;6zn&8ⷿHcu]Mnd"߬'=odMB<3 Cёma> Xb ]t"F v/ \J߲~lJ zƗ(1؊5R(,]7:!Otٛ#R[e W EOG­˟kJW#5@a-'{> 6֟LTy7qZo^;q옊XFN #dxa\ }.87BZPRtN|#*Ā{rL=Q~_dO@o ѩ3SV"`\7cc {u5/nh es:}XY*?BI$W,C}NtoS?|ͷ1d4<SyRĄ@@0.S!jR{_ }{-@ǀ~t"뵭*|I%USb!6-G, %?]_ uR 8CNP1^#QϗH^Fak8{lOX<6 9=wC`Y*wr?`ۡcչ-U+:=2#C؄.I#Ps[,`);Zb=7+c+<-m2!T<݂1T*rfmXѰл}/(X^sN%W3ap32oP˶*wI9kf 57M~`*@=0М %* O77Q'BNU\v/E4z{;sN*~?u.N *p, g=I=wtʶ{뵕w)Wz"2<h7K52=π|j E=VA(qѕ[aJ"ѹ U*핰ֺioC(?K$eF`+E^,od_J}䧨PumŕGE5T}pڀR;uyB.mT#%VLNTEMakްҘ`voO,IW (F|zfJh*r34ں^yO+C@JLYw>1`*juw۵9C?فɭ{έ& L"Scd } m(@ Gړta:դYܼ|U?/NqT ͒2Nֹ!Uۀɤ>W?t1V âWNINױmp.n&wjK%Iv{nO[s(P(ԼD59-g> ێ e;!0tH}֏R{DDݕѲu@k3F&O'M+ w!6WsUrНO:<@,|֮"3'e+^)*ϡar5WM{@Ca-0R|Eι.$0p%IiўGιVA )a,FW8j+Ɔu) Eؙm{ϏBД]mGH( z|CO~ &e_D#d6~Xra]~|ˀ'52m $%dtdp8LZ/apHlMڐ*_Y~-2#5eRuNڔ[ֲl!Q{1U'{\Gd~dXw/[ejr%-> &!vhKoq>y=/<7E.Aվz=rXlýKb`ʦq<z?au SKkB<ѕ+cMEKtTj֦?wVbf%0YjϒEP'P 6"U%2G]! @4hp(qTZl2#Um* ql >ݡ mb;Y(U~s"cZ뚋KfbIRBĤFa)E=VĬ%|$#p"\Jܬ0X{lbp;8Y(f t`e)cTpFnCrE  >\1;GOI\1if4Hd!J/r .:*@w}< t[}W'jE %5nPSpFLC} @6Bx[8#{> z]d/OKKj\p9ON_u0蛜(gN#e XRʌN _5{oňhIrÿ<3ߧs:#n$Ɇ;BD}>XmHw9Rx'ЋW4+ ͓[])Ef|l 3>v'E B_bבuTǖXnc|5P/_vP&8蝑vsQ;|c~fqdXb?j)$%rU>JU%Ak=jw*Ͽ.Uso}ELZ$$BԷ.jtN뗼0EWAo=.dkʛ=#0& "' M~Q6U  @o- AbX@`T1 WMlܕ)zmc珮A~Ky L^,!7 -%؍A uIdGO8!SѕUQiS@Y^8bXGGbe0u}s)A 3?G-Y,>9ثRU,[,@+o 9`DWSIA@U(jY,h ghP!gc6=ۃø}YnU.C*7jP5VtPjN5q~Ue't a  79!Fkt j%MՊ~8f1z*ΰثblשov,U.ǂexjpMuzcz8k /W"a*)H;-rkK]9ⓡ2ڽn g]6OQ/@%3=҄[M )_ͼm|/>[QQ0-PM>Jt0h|ފp# )>9Q/X8tO% ;-2MZDYON7~$I7 SCer3@w}[c"c{v$.x1Q.*?e&%Ź"oczɵc Fz rvIEe8J[|d;0ܷعqa#o lgZ֌>}%!'ojƥq[:!eU*RfWTXu giYz/xbzG۲r:m~b]_}Gi*Cj֭ ms(8*ځ FUWŸw}a7~;24]*L| \~$74%YDv8f멈W-2U{sW,w*hB/FwkQ{s980W"AyOnj[]BO%АM٩Lc`rw[#Xh;m:q|Lsm?iv]!Ρ-Y#5Χ 3R6ɰY+b4 ]^FC ܁7S20oJy{3cT7@han^ :Q$G~;<@/ KC1 *J_6,$'Ԟb+y$#P{CLtM?AYVNS"0<4])r@2 S˱+.?%N0,68u$Q {t#0bIek;}@#Np%fa'-4 T _PQ1c[E-(G^5txa~m$]ˬ3b¤@E}@Z<{gk$N\X@.qzg&8EWxWiHy쨂5$:hʂj儩.b+zͩ=4j()Ƿ=xZV# \o ^Ȕp i&d .I,_n;9BNxL)dJX&ͩj&8OjhnKd,y0k 8/ 8K[Qe8qs r;(]H$k[tfcWyѿLq:=Mqjxq`]/1[k(=k jzhp {8qe>+TћK;`BVL{Zo緹_l"x kSpx8 -CZ6>7ɗ ZTkڔ?C>9Xv?Sk[@ufc: '*b x^rk^~rc-`@gEx~[| tUOKRR#C:R GC'y%{%)L$ŋW],,EQfm*zA}F/Ԛe3E~2U{%'?}[4;oQ1ZxSۥrj 4Gd?r#E-+( wx}7GEU{CĴjvz4S7D'\^U¢C7iHˍrL-n8VN\ |&c-m|3|+x3)ܽXIT5ZߜEwWOVUλ7n%j]Ͱ1!5™ø[q]S@mWI#c$LZLIX⦻.lbvC"Z>Pq$FLc$Tl\4Oy.uAz ZE%i8~3۶u Us 6 p^C`mɭfmW{ʂCl9q7^,YYr<?5c5TY ߯btPe ;pк)\qbsșt"e?<`-c2GFN%DQ19BXR?T^$ XTdngt˽[=}2ov >0z#~5K}i@KO_jFBV j]Gy ;SZF7ǧfaq)W}F  #A=Fp3B'&yP&-Qu%$_4ȼҀx^W [+c BjgS8O raL./V2+ M(ig 7Qmt6i^҅2BcR 1HQBcIAg7vbX% zx^cduف7ΰf7AuRvY3oetv:CFQC ߀ul0}~'^}f3X\;攁wj|X7KUqq"Q!Hu/!G 7iMeNR ?#N>F! mn`f+ ?6|ճ1u E-T8+dıX mB(GѪI>%p.JȪC1=0+•\ED+XOeت9gWGb4r9 yo91BKv')}Ӕӿ,~nӂ%!Wt(yO^ջ8{fU_iYnxy>0=πu4Fh/o-&'%R*#`}NE!,{biuo_L%𝫚w9+A&2H0^ *Kj<2d@bIoQQO)Hޢ|7Y#~Ы3^YDbI#jTTWUbں)9&4O~b|״]SOR:Jpd̰)o,Ҋvi On6c$!PG-[dސʋF^gī:Fq5 |m+PP&sᆶa%O<'[ڠIbW'>]fC&#B؊>G2Vb5ȱ-ɖQ8栗5'>T' "vy  |Rd)j m*(͇5:5N5Sh(޺~$(iP)3rZ9tf7`IڶwtN"zMD< 6C{Cir(?VLH zQڋ&f(1߲vouꮢ۴wh/:18Ε[R\&;H^* E"Cxj?FLiA@ڲM бA@N58#B hꅼ,?Q;8"it gmg©GH VeZ Dd1*^YsIއ'rZ;u*ג" [meEoqm5=f|bf5α(x&g^lO&gr"ɮ)lC"Ɂp4:H"6Bs'h!ưzSsLQaL3.%ʗZUT.=߮\fu%) %⹛>}'lܣ:Dw{P~Le7 3B&߳{bP䠥 b1V?_}̝,9l,BUrn&^ SLHh"nu  c}d 1&UHOWRuKGV/H+=Xn ),(}8aROQAfF} aMEIoW#p&<7{^b>>%X;CxY3׀O^Φ@*D[ pY\pq_05xgza#D04\9z}'gK рn]X8mI>`Rj`ue %K(` !5i6AEhଘ?I剈k*8E6 qɡ oQsb6S/t!IvDi݌4fT,1]^w_"ΫWY<l>Z-fjn)K2yFߎB博9Bxӱ&ŸTfzY1SPx>262ya`lZ~L4BÕcpc0=5i!YЀRS,y%6>=dIhI+zH(Oj(KҹG]:nXKG3=pd*ױeꇸM/ ǍEANք k:zo?k !;˛ ˄ rh)Ӈ^)yQ^,`jTnE-k54;+?u825mDή/u]RWh‡m`[=6qKУ4Ts3v##i!R=`cZ1^ LQȻ'4UlžNN|}z7.0_e.%Ϧxڿڵ,fqy6yxbn+%3FZQµ^R iP3>|+?U4Z' _C$~cLKk+Zɩ`8RB78cë>OX,)z3+Au\bzyeiءvL1ܚ,Ñ)9-24[9ԨSSҐHQU@DT<57fBN G9]/A聽lq{핹>N{ݓ*Qhp)Pp.1]ewL4$,5V=C³?vUP@_(✵ _c!RXDqu' sSyH7B5e2!nᡉ)hygS<%Y+x*4pW=?,|1bi]ͩup[a,JTXP|f)nn&Bx z%GJFkޕo-э3_ G{x~&W} qе4JL)^qCnͬʝP J/МkIe7-\( njb̠4^Vvu $'c6MH9^-dJ8a5z߀Lp3~ԈżM"{=" \hlϠE‰;xe8sڦsfyaΔ!"QVX^X0^75py"-%XrtAg Y Y-[| f\啣cb[fFێ*{E:S {GIT0-' O_/zpe\މ~k{s. 1M!eBݣ^[re/8򔽯ʾ䳟ަ (xR0I8߈E 1@D^G:r =@,m 8qg7P/rɐQ5R41K7=Gu"fXpt<\c‰p@Dq1m삺 6'@ç>@Xђ&o:lȁe vbw@X| OI}ca;r~2rvɦ)cSv6,J:iKݭ N`BaК>'L]w#lXZ޷Ũ{bn(ٕa>ѿhV)wvŽu\Rvݚ#1mnHM2%#v-Ŭ/TG5fcsOKq̎VӢiL\Nyɬp % (9v]k-l4^])3km-Bϕ,#dAۄzܚj/XbڽmcJ͒*D2kO*Sl f""M3$(>M&Xx&;QncVJ}?wwnvJj.\uFKɂC~/n^ D^ T뢨I/2a#AԬUEbEKzn0wT*-.B'MuA7/ܫ?] Rh;9kr)bx,)1^(VY,uVM\)X\ݠƧX)L GU=w ~EpiZ`l^Q"LJqݣg@ޫ1@(C30- Jޡ?F!J^-<8`b35Xp+H@ _}׹N;)$e}䄦4pp7BjA:pG z+BD3+ }/5LRx6:w@b)5U~,9x_iQ}7WȪtϼx6XI9*AI*F[]{h+_0˔58TVLH$MVH,o*OϜV; ;)G hX\؆-˾_,48`eBH_q#VG႙F2$IQ v}$ҍN.Rى|Tڮ|$O@@]r.{ ?V6ȍ}c?dfm0x1$~ke﹒njpQdNO϶j 5kV_Y"'&ה*KhL{ x`ۥ Nd&' vUӛ{ b]i_ӧ@A{=~[C/\(*5G۾t-pNyʷ5%y?i{і(X%h{}n]EPxp_ A"yxR4GSծ<~Z#4".9F;];|Iqa_lzePIU& W5[ڕl#!3Cײ$W|d3}j㉶c9}&efŲjEi*|~{BAYSb9|J*`6oVHpޢzIHځ_vB(Zjq9"i`=IQuiq1(y_^"ENQǬXj~@2 9ټv*  7-'7ѳG,OwΑڃq‘޾MQKn͚3D 9E^ll$cҀE2G-@enjDx8.8elt;C_u@/!u'ISlKlV-Bt&vGěruRdFKfA+RX96Es6.sr9>L14Qܝ>PӒfI:)-z$3w+N 25WudR5 0Nȇ_ ZN{*KQKMq:m%4 [NNaĕVT#CrMQ=#0y' @_u$CD8Hmkx̽BLo}$Թem8(B'EKR%708[ CaیcX'gC_SZ n }F$ǻt<;iM>6exhA>D[ D~?tU fcm,hxϦ7Cn [FhX1;y:v.1ZPBcQzR0=)t˗Y;|o|؀d*/}Š֫ 'X1nD J?óC|Hhl7/mKZ#>/naΣ2O#N1#A^u!rpqJж2{BID ㉝.hu0bJ7[УۻQG $CBTczb&Q9$ :*n/x#'i__zb$GD8? Į0(JF.$Жv샽eB5]ЖjԚ/#i'l,̰ ᷽MynijEiss9 Mи1Թ}V|5KfRT ]Ji1XcѯȟqSԻXEX5=!DעqiC uMJ҈6VFF\^*%̢ @;pJ!f<m;0`dXV^-Tђ`?Q8 qR@CNGkG m$$Nc=4%wVֳ>Shϒb?hC0.P\Ċ(Lt#!ߺ۽?z"1Oi3֞eӡ }fx- Cb<>0z; sk} B_@f}-!tm!^!lcpᵣIA{~mc}Y@GeFoAОc`CR(& Xa38ϐt2t!7ۛo]C}Z[Dφe%&2#-/nWy9JUi2stAM"KGU"Q2Cl/GKv|"6UE=vߟPiՏe<Im z9Q%C~* ˯;lelV so=-NRpˬϘv9JG%׵,?dNk0Mb2'qb:Vl`*i 4KМ6I'1K oEB&EZUt;gmr^52c0Gg@vR/tƶ3*Qt {L8}*ŁuQ~H 5ഀ`̶tF> n#HvEtDሖ7Նߡޝ\QԆKD4EIuz%l{s uon*^tR 53̠u"(í=3ئ6OQ|Π_|]_ #pAXY emXY,/춞/(D+ء"woLC},~wkx'@$36C;JmS.=-7/5]QOf}[|E%o+09 9جZ2ߦ"pS\fM3.Ut׾=d22G*ɦ:6(p#AE (0_ݬk >дY1JKxLK9k0f] RDoQ8Zh;3ߪ<-x@_%hUAO+0ehrlO=Q̗|n1=TQ`:]p,NF]?;#gi.*ec)%vvbB #X(;ΫXJ²,F kY&Y&2P ;RIR \l{.a.A.uYy!v>$W Oz':yL\(k|N(pup ׼ 0 [)t9䎆2&t<8Cٮd5K,9uz6 uKdN@xz'{(g^D?'^Ž,+QJѥTs!{^sR27:EU ub`*~qM.t. F2/߭Xҷ:d7TaPhӳ(X00k{92kzq+H^Vx^^nŬGڄIWQ=3iY/[?),kɴ27ɘKb!fS]U߷SD}\unRAjE&8zZAa7=,V(R95F}iT [i+J26,?)JY.`#T0ʚ >rUj>e0~9O\Cx!igAX&n W紂5|:xɔz\)rr2VOiVF`5 n$j6E[ η!s͞(\Qy-ht+xu[md۱/CeR^I&O;b;N6˩BY GޛY0tiIt-iFq0RNӖ7 Cϧ-|04im:^__HBǧrPؙGk)?A1g8`AQs-`1sF(q~ӲOS\*+f N)%+^\P`۵- بGHce񃯡0.JEYN|d,:v^.;) (wEa.fhp]+=4>Dg-/;&vlƈn%^ &>t̕5rKJqiu/95@RZH邚.ZQ sf5&nIL'Qs#hIGG^m<߿/ڍeM!fW/߀#ޯ@^px|=Fq{ dti f&Ze[T\&OGqtD6};.N[L^`ުg)2[gy˺@n41*u]*ݨFQ&[ ~V,:<BZeZz#)M-=$`來\ƒHr=g96[ iB Ig+'y.$>ǡqkX^]WM4wtߴyxK'59fk|hE̟Iα2fwqFvtg83p_h{^k\(jOYI | ߣg,`u{:˻BN6s¡p-*~vaL8px ֬g)U+ ׶4m#uO`F{|7KƧ d K?*D-v{I%r۾i@Nz4, &Xi ;)mis6Z@w<\~4lbbQ\xf*JVa%sě 7IdUJ7 '@_]IOSZ C~T݉.n1A+)O4imnFђ5wDZ8#Gz*tmQvtrw#@zzyPӪmx RUuFi~MJ[.+*)x7Tp ]RK2; L]r= hR۱׭95?9V6JL$ΟE B|5}Q0J<:y^( t]l ;mްk?X!Гɴk6u }~c+sOs1O6.2x>Q{IΔO[C3KZ} koODVcp Iߔ [;SzQ^m-OZ1֢rn霧g+а"p )jUC{zvyDC~ݐќ)Km}Lշ&o?E ~pQV@LëM?؍۳$nͿgVs8~>NDv^D!d&WQQ /hO^dS]8 {!p`'@ERY5RRC9*ax dW}N۵f ÿtj'xQ'[q:7dKZOd_ŠsB"@6p;2f:M1stKd@ ~w!m+&Smd6C:N w;]Z QVPW߉|;jmڑ(Se!ͨ_0Ƕs4-KaK_m ;kv"zN$gCq7!dw ‰`|JW{kSa!5>lK$@R kp{3K49e SdCĮe 7a(_<ȋK ?3h\Eid]1{gԂƇ?b*Tݽ~|z6[5wHt< (qiݏ?{X9R"dS=|gӜluݩ&"^*WmXpӂIDFfW2ÊB xU+Ӽh kTaWuSa8یnOp C1:uם69clG !S U*:VLJN3ڰ8zzR_e?_xr8òA到QxVy;[J^43FN!FX '2N\/:DAz(paн"3o.y"Դo rxF]T )2c5O49Hs +"2N5ͺe5DuA? í.(Qq?6 8G \R6{9hbi_]uFΛI] "A7vkD$]5r v-y$#^zcs zG#V܏R( $DO(Š^ KrXKU8>1DF,|qPz4b+'|3) نJ_y97UzK} E3u/c [#ldAvf\Qe)?Hg{jJlΌe<= #i"‘H2"d,yYS^%fdgq6^'h .$ tMePi3|^<'hZޛXzn4OŔLCb?3o1ӾL[E>Z]}йKʁ3zVYY8}Xк>CGa6N?jw]r8OԓWȕ˯ c-UWΰa V<</k8ǰޚpc`s yrDFQ:NlC_em >b4E,92$+Q{ ( oX؝3SDR{v:42Ł|.;@\#q 2&StkPF;׹~/6>k>"<:wDhe.a %Cj[Ûd+kjn~oZr]CBtrSOcςL;=kUWbx75ap&Y-'L d_y&OcmX8ykk :i_n4e><m0-_]?A&jƆqq:Cl539R /-d3q+ӛN-nHhA4$S3urLv/A9\ERf'YķꐯHšgZZR~WG4 ǐus;1gU.͵Gi '[G }[.^Km!LoF%9}$Jj&ss)߰pp @Nڊ==6B1vȖadツJ| 1{ÖsuK;,OT':m7CS 1aF뱸'2>4R,v<H?Z89hU$wl*咜 ƃ6E"Y'Z+p/9˳l&&ȫim#z0֌DMD@<ߍJG li#D "t8]9ac. $Kfog٤܊%K BEQɰ2`NKE~(|39ÙC2; ց|`V %irD~im"x8$%,y[i`5) OG B0 OnV W=~e!._!&#X1 tgt| "0i&XwV:Wq<S4GdY%0*pndPdZ1ﮘ1Gm[YU 5XC@.@VܺbdxO8ɜL[ +s9o_M*ziBغ X`x=&HVԵq GE|h'87ua`N]E}x76 :(OcF$ g)sk0 K2ڵ@P"_6Go\=m1#d"4EJl51\\e{ۃSg\["Ԕz1ᦺpnSɳ'yv2[X sqIWOk޼}ue7u;<&~DFxW۾M7>sR?*1x 4)T(4f1_Mr1<92G*L񩵗* ւc0wb\3e1_nlҹ"jH-aM8R Pr 8iKjY#X:ƋA{9Y 9O8^dGSt\EZ`8#Ǯčg4ʹvW&sX ;ݬ p}ãaWoh*uK/҉^ٝhp+ Hoqw_y$FeRE&GwF(;!I7Ez*.KG"pHZHʿkreagWz6it])B֒XgnN[ı<´b( 8^v/폜G4kQ[HM/,tDRӾG4׽I? !}E#`LX.S[L*i{|r3S2̰iFpɧ9 9tp( 67:``UB#IyoG4FҥaKըd'nD>L<ۋ:h`q@ہCt+ZZjMYb3L9 YԿ^$xr@:!Xo޽g^RY*-N_KFْXuX66_iDϝc_ց}9nK ]! ͎>c"aЉkBpYAVATY4;p}K9a3uO)< ޶'d5[G]-&kpVl1]4F^w9P';Bev#[iszBᙫߗK8x|j1 ne6Pȹ/û4Z0ɗws8֧Ziͯ"L$όlߑf]:&*n,8YMCѷ̬ѿ7wsN~'WQO}Mpa~.P?4Fjo&q0<":qу=ܩY#!Ĉl;S-t>Ϛ}Z3 sE+i y'5FuAUwS6flR%fV@o EYx[i[)V%gk?m᧺'۴"+KĚڊ6pՄߑtB^,a>Ua:' s[ѾM#In<ҡ~dnЀO" T W0Mx$tMu˥M{nj>h/0W/csRTjHS+#k)&$" ~UU~ܸgW_59TվO+ӢȌ|C@ܳx&Kw|kjnJR|r ~!_p16@ Gڎ1@TRoؼ_ |>O-V;]u%Pӈo_7^] )^`X O^xeI$vfStjNtsИաq'GtY ]p<?Ô 7GrxG3+qYmE -!M P]@UB )KF& "rʂ?">WW^DMxFG#8i{ep1y% _?"O4|jx{N{ZwG Վh1} tD_G:?dٝizbP3 =Xٹ GO(XL> NE&~|,^++" KdS?#UlZR"Z?2"ZtǙ+q2Nt?N{VKGju'JlC)MΑ:+ݤcwiwUcЧ.ڶV/)ejѧM[dG'DJKy$L mgSK|D&(CH] Dř{bnms[Cncy&&pqMڧ6bT]~%gKS-M4T Ls2ո 6ʫKOPWJH̢DzI8'" u3/69N}Nn`~ߜ:q'`?wutLrY9!K:t:kOrQRFRA\Ce@y [զQnjfuUp^F EļM |xN–تU,gXo`;=w6|hNu0 n.=Hi`0.Qe8j\`k3d6%Xq#&-'>/}E*qKA']x pMמEǹd0P/ IpX5J)7_R4.h/0\wfL٦v O ZuM"ntxĴ-Ko+~a_]h8[I_l_8eBΒ–\و>@~ee8af½ƼndM=N!*>v]_b K?*~3;8"ʬemaWAZ K,nvw)A"HtI,wۤn'^;$N`ͅosyJ{jh> D#HSN)U ?ȯ{_M6*G7,ڄz\b҆(k[9!@ ճ3A8}HK;R)&P҈~`ZY >aGݛHR8f|0ج w+ jd+7@9S61 %Q3!3fW5-jv\T}lbHSva"%,H|ƛEG,>Ts&w LTwjOT RQM7p0aPElpm.5 ܬ➪s`6bd̀b}8oL`mrjTk`^zYFp~U@K&3>:.g_PqŽe3t)PjPaWQRq?%_뢃]xFSYNaMW{!R.\'j;f#2 eor1uڑ PwFPAjH4pF,tSh-K-, t&~n֝L|AQYf GV29`5J$ FVK.f4<17R]syޢ@GCe@4 9:i4O<^zTFN(soQY2dܞ d{Ɋ )r'R2|J."Y)]ZL0[)GZ3Hvm ½{6exq& Xup]}yj4+AI$#̡;y##DWEW$(rr'W?DU{W$=L&ri)ۘk8\sQz}ܗƃ?^@fZcc_s..mRN4 I;6Kgz]QĚ&Y[֨ ~lI`!7X [!x37L{`7`,&lf}F2[\7&+9 RpW-lѓUu''!=y/) ݰnK^e:+6~5C^xؐ Y&c`8FZN[ x1[5[Kq(h3inPH Z<ǨYx\kd ;K4 ÿZ3cUǪ&mdRCu-J/Z CbіF¶$uaYn߅s0ਉĔ`< tUUNdrS3#>nWԒ-^8i=3;Q7fF}^mV%(EO:։S8HdpP_ڤY琲EizΜea)<oY^m.zN?ʨ&C2Bd,]8|;N_m͜D("r,(zjV00z¼+" HΎS-%[|8FM4~ސUm!Xۙ@S]} 3#Gd A[?JʢSH4`r:lOѹdKbAzk.sjKPe$ۂ'SJ 8!GGtɁDF^}NA{wk%w<ɓ3IOդD\-Ajߍ";q=֯RXm.f좐p\D%a c v=Ung1dCABEFiD/Fj9],TXīSev- .)x' ~ /JND%]E'J=0Ѱ1wy7kri=>6xoA'S0)|e& C_̙XԊD1jrUa?6m`Ung:w㱧"E㈦ 4h8^ T"ߨTLc:̓IteZAMc(sƙDi2ٮjp7hh^Pޖvݐ@ 6R5^&])Ե$0G:Se _/'sEB|%$j`m@Ÿrn,r*gg -T7i,e=d},4G= 7Kp_ֺFwdM^Nda-0bܝ@2kFJ (HJFKHdžh;raNGϚ?" ѹ0R #:)Fo0 4&[r6&l§ nD&M[ Ff*ӲizWZ_b|\JD=GplG97p"zbMw^Z`m?&sk,{Gh3x(om~ ƃT>O}Ť;>>PY Gʔ+i8GCp{8RcU2gxW/>#[4Ҏh.P*U?D80d6 E9gSD߫ ]б7bɞ07zPX@`ĥȰvn9fTQJ"j5S_/'Qҷ"r|C~4 AtLJ1͹ӃǬ5x4)wvGP94F]I>&ReDe~}X'VTjă',%3:|(Tv3+|Iߡ5m̶D)^x|8p,WbQPtҞQl;NojGs']4ښZI Yq&Vl{(—F{`G2zm+b)C)aD+ & 4{P {P=Λ c*._ 6JmyxFT熭b3xT|/ԂmՆNqHYz#"DԌjJ>QCβ˴RoFQY?.z0.G&aw<~xqJIsoW[^krIEK}R )c?HUur&@ \fn\ MdJ5cNQu3knzixw 7m?M[J}o;|r6U+NZaqƻ^1`t(q҂wZe+ME BJF*l^ ~*.>74`Hcmlf3p u)Rg1QbBUAz!Hu1 |jĆJ?)dE3BXP($c *%.T(%A=VshU%l, &~{k u㗷Ardd^O$l^/${xxvϯe.&C^eVqC py\,VW ;2z56Рx_A.9.qG>u5dgӸiLzKz !"EgٗQM#UVQ<=6Xge픢7U)Y85Yeyl-oA{!>Ծ{egOJ]_&+%=אNkF橃}MwHlC0G \ޱU@E,nBEwL(ɂ#lv ;+L>Y ns2vP'|izJ UlV ^SwleUX6MkY~8G]v{m9L/iА}$XOrωj(}d=ͱPbqqT2{j|2P`c}qJWg/Sza}6y 7B|sվl"3{ q]4iZٍ, ysogThA6 |R'*9G$U<$m9g?<;ρbz3\yoP/9sQMf(s<޿{U$Q|nC= < *KL@#U2A *MS JCsdƿFlG"Lڱ/3zif2˭QXUM m{sYBOW !7WU+TF'a%i$rK{.͓ƒ<# (dZ 3bgW]IM*m/ׄ[wEULc ,1#oVkO!8ChÉ=hċ;ɩ펖4(l] OE~sGSs 5JCTBj⧰kpkց-0@oёN%I~ۦ0c*Wա`( #dcokOcV{h{+TL0lGJV3OEXX Y8y2~k aE=8pd(""'ZH6BqlSU(j{5%%F~Eh2ר4?Ǿ0A%*ikn%ppqiH;ýP@vK 독#u /X g iC&_}H,Ŋv gىr_ŝDnQ1DHyRo'2lOLիeEzzfusqדBZiT2g]ؿ@f_sF<iA_yDl7 = {9 `e>A!o> pWq 2n.3tuhOET}yId)z)%NR` HGXt"8)Υo|]`6q4P'a{.ջaK FdXR>U7Y\kU`ApQۜ1WzI<Ǎxu'y;r:Z-؛簒x*,T܍BV柜G9/彛vK25㡣!apڧ-KH@S)%M95<fm̼[yo & ݿi <8sT4gMmтv.ԄD+Zg;Z+3)$H>+Ct>k3Zr V 9Z1ƻKflj"W$oǎyTujѵz_q0ݪb=;vv0Y]6 H7}+9P:FWNſo|;fKmk{w7v&X`4Ajteu[V}'Sݬ+bևHi3- U7 ^_4*rJEN!9+1[IؤO,ƃ>"*J+i*WΉ8S;}8GN}ZT ȚCͪ8V+z=XO8§mMTCEYVV9%5D慣 '&GIuUm"+k/8fZ[K FzEBՙgKѼ[_LVwo8n6o-X)++ĹqBavn@톇iDZJ,e^ry7SrN^|l(9j:!)O$Z-Zw`@#3Q= .+ݳ+S"ۡ'L>;odt||{}Y{D8WH괍kԈ^mSaK9$)05ܙ .dĠ@S#p,L}C [fApHNۓf5BWƒRq츁0.oqX\lYMjZ)tGx>GNۧ t,HʡΤCx m›kbu_w(jF2D(Rv4x#z2!7ܮ%73XV%,νd+́}3s_VU[Ěe:4A@s9K^U|^Q.EEm¯޶iS*[bvZHlyU0cZ;;kb 6$d\hOXTbFFj8O{SEM8W/\s/f+3q}F#41yA9&in:rTEoEevJ3胚 ~3fN!- mH"eeU̢\4{.2tn@b<c9xߵGrJiGrM)nN"OC•h/0k/_/+ePqPOUjbi }[bLƻ;T[sۘBfaߘdej$/euȫœM-}F?윏nz+?d%IU~F&S:[x7*  ]F.UM0cH_'f fPqȨ0zCa8EnΞw]f~xD6®<fO5Op[en|ren\ _cE{z98%B ^P| =SKAawv=ߗPWj8,\PBtw,q淕2틀]3k\39rx^۲6 7_ Kgiަг3YzH/{O4L,[FT99ׯ]m)+f2wfG33Ċ-(;=Fx[Z])Dƚy"c` /+gqJw陷.F8Y&Æ 6MjPA+ qs\sf}kUS98 D\KR5 x[Ii^UYuLB^.UnyVlU$;oT+`\ Ga ]s[_?D`^4Çg>Ϟ'i,OPXg{v\BClv&Q Wlp4mH"Un~H.,Ql2GQ?[\n^ lgj^FQs2#<4xli3a!7EiijN ؃޶Ȑ #& p\*>QlW}0 9ZMlZV.1H]ƁUd.>ɞ]BX)AZO'jETF_R~W ހ؝pczo/PNB$m!L#xt<7exҧY{K/c%XG*0["j #x:76) nN;dDK?JGi;Zp03h:$.?*:6#8%{|̺H-y}_vP GAĩl!?VLu6`Tiaz[C6ۺS2P2ڧw*e6U g u?jt؜"uw2 !&$+!h`C`,[hLRny̢/[pƍgޫQ}b>ZRVnGF)Vx L.uH wś^mgժ:$(v^)_fƧ@2t[s =P g3<r3x4 !8Uho4'Z(!LC8sp[X^/V\ ?ֲo[;jp\Qw#x{eծ[QGVk3#a[[(~LE5XK.Ȱ Ka@לM[V|ٷL\u,pp׿v;c IBV8 "Q_}d` _^;@/|jz9BH?JvW.&OS!=;Xǿ(YJ<92yGٳ"ݮ%3&\Ew[=qI&\_P1glUת\X}OˊI$d 5C*X$@0 0(fx<}vdGw#8f߬.c(T8 )jH<1 lHȺ})799Ȧ_{d,ʼnQo?D̸Ѽ߮֞-Q٩cS&tlt2ؑR F4QtYgK),k%3l>w8=#m0qū:c)F8!6zKVJpo- s81k #4\пPD=_&O!O7~558똥(ehO[E%$^T( ΉY"R]2D}ڀ^1]fK@ţW#!ӂS&HE=Bf䘠]oHDJH:_#>WEaKke6 )iScQi0g }K9f|!Y-F #9l·6;`%N\h rP˖';IȽ4^g.>/Th6 ("k(ok$j,0Yˮ"NSUAF{Tvd ȭMc/lT;jITmnjNmiBe<+(6D$)4ɃJ[B%kRy3TuCAZr+=̠)ɐE6Vp09IS9-|<PWjº6-]T|2CWa@.#!E푆 RDlr? $Y}F +V9TV )0ɟ:bES$l;f$!ik,K)Y6TGл, %B#XhRAfďI}!7+miMʣ<$j{UeR)Uv`VћG Н=B7A&"rAs%Mv+Oq6Kۗ~# cKh-U9ϲL)+Qb MwE|P]GBmuE- :O)tspC^,>eƧݩiRQ|~ J,ú3x msnLa<*+?0 ;/mw4 wzwcpV;nIMUQ`rК;gGjKw.빓S%僇On=]bS0;"? pb@EuH \$FBJ- 7A&@r[swސCTa& /0+_*+GiLZf)KIm@!k&h*ee5yr?$Okߚ%5/Ǭ'rZv %Փ5&*0#äRZvbқlji3?^txP>\RMUbP># BOH@~/dXjtnAl?,]-%EUѦQGB xB{6 /h\0heVUwT$+;?4䄕8ksL]u#6#w߭UL:2fdHڤ('Yw̆Jyj $~М*&\GҞ?KLi!dQB}cɟ)2VBMe~fk#%EմZN=L V*dHq? Z1Sϭ|n~ZX& ߴ%TڬPݝRq6hT4gkvrg[wnR?l!9 i;PyզUW$CI>-8ty*'7H +)wj"]PH1P@۫^m* ގA@AZ TZ9ݺ^)< F{ݙ g[UXlLXəEWv9|H"h1`1)00O#aEUcK2pB,a[x]nP?Ww>&4[_1ZqU] WDRTxZNXj*=)a|aNXL{y 34)c:6H n_gZIχ8ilt_tSH/<D:DRй/is<̜ao<*C&x)"r&QpKC)f(-J8EN@v8:qQax0|̳ǜq;_0Iue Zk gDj5 $Cl53E^୍ˇ TG2cX{n߱ci͞nZ%o97 u.u8"c6ӞQkPH~\Ǣbadǟ j2?[51ŤuQH/@f`B~[cU-lN[nSvͤ(6s 釬jm(wO9 MO덆q:4@Z`PV(d#7 qx%OݖX]v`+Dقٮ*c\(5;C5wdJ9i˯˔#a1z d߳.@g`e u=ԗFxʙ2>*b#ưw1>c<N6/M`6~!ūq2w YSΊ'CLDhd?W,DNvt A+x}ӣW,z]5G)0@"&ɰZDr#y;3۸6 pkun .Sic 4he0d] 6.mw\@':LOq)H[ +qާW1"k#Ǔ KlI%9!C[~4X`G 2'xt ?ʓukVŞLӺuw_׵T&ȶ}Q w[ʎ栌Ҽ׶ˆD8u} xC;,t5m8[!*y,CJB'^J#"ƊbH,Ihd{ՋxQ1DV/?::X/Y6; A-alz"` r~١@kh9 ӖXTDץUb#(&{<D#`oγ & )W(8]4@L߃'Vi,T"k3Y">X(˅@s =)uy7;1{b!'(=>S&ʓ> 2̧%)&8xRz7T1yLnV(Uzp8eP?46s"[W<;+x?!$Joz  >%ݿ*N%wi>F% |P?x~XAƌ:+J =r5;}^юpX J[N @4t;4j*&U%v6߯ tX])$&zdۡXt:ows( ʯfF8;)a=~Mkez!5H1z{^>)-.7SOQk*Z 55fhđ"o`A;ǼDy0/>?~ݦ{\nq#t;ݳXO2T<4@2{3I>,gQؓʇ:&C?.#Op D>%ח`g(][Ѡ%6޻SDz%ϥ1*7#NXjv.)G%"8ŢF/i$&'Rی2= [!ꉚ$ySAXغl\}^ȅt׀ڌֳKOWH@sa oTd(XQ_bU2 KD^ϋ%5 Z %K,AÛw(! x\I>1(-QSNfhiUof}|ߧThʔ kvUtb [erWYSGV*FOn~g]wX-Ĩ3_F8A7tc Ϡ(vU)I(&>nY̝N5帏>Ts&N$|)@ggyn#XB>? uTǔ+S]4liM v(}9؍Y$rk-6AYDE4*^ߐt9FԊcɗ8=#Օ6˷/\:53 M$Bdh,ˏ4w+!+yÑZ|!bGnw ^Ilt]Ĭ12@TIEgfc -Oj{~sYC `/ q5!K m[ #2)߀0"!Ub u ssݗ ed+&rpp8D*s)ҝh$Fݙfۤ1cU&S h7j6LXϕ,B%T)!aHr93u/R[ V c.G')] gp. b3^jqsO1Gvu5" ck6Q.YܷRG]hI(n*oiҝt/a7M hH B!j0cю%R((X>u37]+Y6Vz( ˙̧5+R4|ہd퇤~瘛J orm*.׏ʽBvu2fR_P6"@ λdJ|ܽ3n atfUza^l|o*z"YAI 2~Ùn +-LC1!SXaF`܏ C:fgǻ#rC0#L5Y=3?,hoj,hYͱ5[] ~VpL:Q~+yl6n ,/X |?0+yw 3_^ 䚩M+>׃Pospx Zޡ|t5Kx=}." $=ߊTa{nk\7J _IJzLm` %CDgR5socUWK\DJ3uD*' LF )bn=Na? !,M;ͺ,ysIT^d o4Ʊ׉"2ōJ[%.hиS1+z'퐫*Eo)-y>k);T$`q.vǴbh$9^n2WR#zQUR*d% ٧,y@`E%C)(iE@`)PwJQ WzT2㧁6E)u1*/ib7' %Og[U$Yc6wR4~!zy#dܞ]_}MWR%mjO9)ںZ=LP>ZJC52)йG \Un#D-Ϙ(h>?, ShPK}xŭ~Gwo$_;Jܻ[ԪS!IjӜ)*s$xYEZx Apxw@hBѧ:?wvl'[n.^rr:3ms[NaH>kb"Qp̭w.:b_}ɒv)\9R#,QӒ0ykKaA.1_H )!b>~ C<|4Zؒcɯ!E-W19Īkߵaof(%JZS>4ht΄E=68{[祖Cn=6[ZҔrv=S," :0?1/OtL 1*ʋГ@Lz7ȗ.e<,L7MYkoFy_dYm? 1|V5Q}c"dg{^ƅTs w<:7Ijږ\[?Sr~[~D#@sD>U 12|b)3;W ". (DJxAiM- q9Ev83TxmG"c/&Jt/w[)6k'h?и8#Xx%ԘvASV\1|\s yH_ыN<ݣ,s*^qy{ < gF NqՑs;F V /2d8IK(=$"nsIx]&>gRb9'`H+6^E=`FX<ŷ-EpF֢ޠQ~S} [S#";k%"?J~ڟAE#`R w2笋RS+t ]֭9_g4:`cгyvӤ!>,_OsRǠ/xw6eiRy;7hz ʀӾ,(GmKX|-emO7Y~Rh_ paSxo_24] ezUYCo:!fFb#DI->4L7,0@:% Lupu l!<o*{ DAjƉJ&ӮrI3Ë:G(<ڼ71/|}~|5ɠy03_ddpOTJ[[?5R S&ȯϞy:qqN>N/7Ewظ:|wX9$u M~n o1x"-U<{q f(JP`{ 6휦QPÊPyQJL=]L0>{p +<%yxͣ('|MxO?h,CbF6V@kR^DS֟ }4GXGfD{{{o?>S#ly( : 1 m2K6LP +t',C^ ֚CA_Cx@MU; _NAht-cR~g-TCa֑j܇v"VKj$`)ǐs'AP*<[jGϢbܷ1AY"B}TO^Ur.DCKgH'30ER%QLQ=CMF5Z!%#Ҹ#{8a8n9Ԣ_H U_9lqEM R插j&+ jGA# s42{1hù|AvÄ!%"_MQ?6*N/"hJE0@*{Kl=.j!KղWΚZ>1\3r< \+}f`#3ºFv>v uQCC/&@0 rC\Vp"MI*r 72cnQx1#uBi"~+bejċ%Sb Dt1ҙ@qt5P>g]N2P>ᑑX50dB8 |&VRg=LjZ6:VZ1>XAo-GA ~^hYU 59T`Z̽.\iC˅ᯞY;+?C{ T50/ЊL*KYG1({0ABv42@mwa cCgQFocITh V :bEnm\ :p~J?Eu,-8g{T)JerD$rcKV%’u ァ{vkʄupb'\ySc<,O4+\frwC|]!ٿx>)mZ֟nWزU?Eja I02Қr_`@hɮif%li5 ,%h=24ͨf)QC[ a.rKR$g}[-ZZwXJ)(؇͇nVVؙrv]Xc*@@Ca vs8^ߪ>4i3I yRB_U0Q7$XZ==zz-^11]|'CܼSRq2Q"!ɓVŎ %Xj6D+*)YzTvŁŤ!J=;qξ/Y!~_ ɚb |g`2Jؗ4hDQ8$nK.sk @&}oěQ]M`V ִ1W%٩S 0`D,١N;%ͥj+=vVX*v*׮5흞o}o!= Rfh?Xۤ!d4@٘$. 'W.Yriv*j<.8(e73Vԯ,m_ !<ɸ{(y b^PޒݴN{ AijCMXns)!5AoLةXeu g ?B3w?;ip(!,MT2^hŖ?*_)Zk ob=;<!Wpq~'w%Mj6Q(QۛKn$5ʁ@XL +`KWՃYr,H|N}iڹ=/ZL&TQԩ|Uz-$R oݑD+a7mk)NvhM}W06!V!MLVEZId)C~r ! cv矁Op(:^X~MrOlĹ\S*4Ae~r²6hTaVsZ5C,OA]}GXHƙƪaġ.Ne/,M3nҊWM_~gK!FiܨhAuE]Sz^O&x%x :J@MD?7Lݸlb535+k` cJұ iX2_3p7SD@FuN2%)\ աq)$';%aNIA*2~I(=0g-( D1y8lGe ދ^/lyO֙-‰ E*!BwM˥H'3g>c6B@i-5G&7V6€ԡkͮf䦝;0kQ'5a- mj 'g̴v.* ȽJ|\U44@SjGN^/|t\5J*o3$y4UIL'hq8X [qv72̐, ي6"zP<ʼn>ȃcq08sF;(,cRC@)J^ \1pO1ȥ#]2$ր9CL_fmñarNm pz/ی/Bduv1R.=M g/FEj-*MgyᢞzB~=󎃶pMED[!~$JK{v[5)پfrc׆{I5@*2qe}:Cu4EKiJЅ#wH`F"Qu?ZHS ):}zdv+sNW*>pf:_BZ^IѬaPE1OytQϞ>mGTl*IxH=*M^*.* ~H`q >R`^Fq0AGEnIﬖ^OV;('[]r\(F3󪾻^bctVvl(},*R~Ѽȸ8 Kau89 ?LkP 4wki9fɵQv9HLœg=(kh6\Z84NJzh㫫a 8- X S3'}`I$Ȧ GsH-'K1V@ o2م'agPAō6̴Uh3͹$t)7Wm#tp7W8no}")#BBA6Sq4eKpFe7HQ>Cgh<0}_q )IV՟3=' ~c4i"-Mt#+)G;am۬ۂ׭~-?eYIje.ĩ,_B\Zh }8q2!tSJҹ+QkܿB50YwªhF)=z C_iNs^\5/( L -gKbkȻ=ՂA,7PyˍPpľvo1zj 2s:և0"x1,R5͛ ` 4" H_ABNc\ 9[i$O >ԹڗlWH󘷄N$:%sbhT`c90 ի!61gqsv&'- .'Y}7J 'w1D1o*Ӗ<y: L_9׷'@+M w@rHƚ3T%>@*`nW.~)mEAژ`.i冨dȗiQϭv=c v;ƲM1"?[oK)mK~CLs +(͙`}Q|`.!' ms,C 8Rz8B\A?`wrQ@5Jn aQ sI!uGƁAj<Ξ*E.\$L 1)RYRak'=u"xM%/ <BrZ9)ӥ 7oR?ov߯qMЋi.R{J} 2 ԼU8 B+ښ9Y@l+]H]<< s52<'6BpNlK$tW2_/s< FvGirxbp`lE܊XV3h1zKMA؊;\ĚroX T{F-uZyv–DnKRtgUr!E|+j/6 |Z4#!Ȇ*JciD!G^JaO D?/D'+uѬJժn<%5piUxY`bWI;$OMtX]Ε םh~!Fw꟱5wJ5h"=:rX><1Ac6tYw}ak+ƭfjdX/jPc.$ghHD1i^Xh{)LR >c酝mdGt0LcK3 &zڛLnJ,,z{N X|+l!Y󕇢RlU=)#N#Lzb1PsĔЯE>YB.3V޼<<Q!ZHD^&{DqC6k.¾E_d)"ll\hE)>"9m=sjF( R> "FpE-艮II O-tJ1?Z5[aKM{u{yX|dO,E)әô8j^!R2(7O1GzdA%jSc;hB {U;ܫ:OB=ʼӄu۠𐱖&{{-)`LPp; .Z:J&0YSə8Rb;|KQz꛼TZ _yJxȆR"r'@i͹ G؞X|"їD>&`Cـ~C bi4 VXTOl5Xs+֩J.w'1[iP>`2,HЎ%0[ Ž@26BǨAΒya Am_4q>2ǧ_+w{**Y+mK{6n(I:SYTȯ LE!ս`]6[Bm MQS V&eȗF7q68̛Z+х=#T) =&\NR!eXax$1{(Um`jN 7?681(t: Te˝@y8Z״FwkЛVKy^U-(Ɛed;`em &׼.:pkO[diSf~QkYiK_*zG{WPx_iH7 g&jE#+—h&݅r4 rgW`FA f- v”5<]v;Y~1=awӵp"5∄a۶&x ƑB"H:ȼv"ςɤ:--I+yW}m.A)d|Z*&gB:ݧ0ȥoK _DDEl~eX ߰j}h!,jcxaT?ʩ@[BV<+@<wyE& ^Ѯq"2ĝE.UcE+c2l/m`-UMfq_:t3Y\$57YPEy.܄9SIe OQL0UO",Iz1?%e'5vs{ky}&;vn{1)&_H[9۷M3/M;qT~#aIA+PCH h/ "8{O#ݝDfE0̾=~\"f&5_9-/_i8oxl 2sr ج^X\}\k}# n_Q')){dC3ij,^sٶëqDh_Ć P\:ݙ+ V.h| d:9 ~bY>O$p;5(z'oexS%_J(t;5Q:##[Ot5(͗^6}ְٶՂ[f~y)3 ㋩(pQ3(m '?jɊ.[&;(:m )-8ITƢkK.8<ö_K~%p_ T 6']Y^1+@f+7 u4P9Or@g 5HЛ[ǰC,I -̡K!ؖ ZDJ}c{E>×+7IH:9U|?[@jJ:T:]}΀UUK`~nb#_-y~D2Q<2aWNn$Z4u,lr_6%w^GoeT%YgwxDsǽ%\/h7}ʜ~QУN$EwYI gz>nՀ05xw!]5aC-k.mB;=1CU~q}{))7Ij'>̣3a](6&xָt :~L=)r8ërvB[m2 eD }@PҺ8 7w%aZ℟oRˊ_ʪ,@GIHp\9;7@DhNUvpnn1n7^($9y=DAyqѝx %IH d4n) ܙl;Ku[[CL~"A HEqUƔɺтtİQo3͛)M;`G' lY}D6gPSJdgSD.8b{*_" 1I5}B4e)qكK"c&&:,GZOUdNMWtNYS2&&^[Iޭ Q."-"~퇌-+ @| GR X\x@N+o89}wN<.m*JNx\K{H6+|K76k7 qzs5 ˕SK  97uGv23YBsncLS iz (uv1]DDw3sPHq`lު_4%ПgM|Z;6'i#mKJ?_BKSW\k7 Pd 9zx.s4;-BP(\ kf|Tr3 MĻ<`;펆_L"J?q"qFJeX,~$:+@ۚ5 I%-{fVD]/IO篯XVݝ'r/:u!X׻?nc*׽z{6*yIBc&?Qnn$~bLgFw;a=>UNYŗhkŰ+ -*X.8 9 ^yAZr|w쩬sCU@OeV;}$u8'J[_ׄ3CQ9`z)k4&ӭj>gLR@kD=?s_`'cu σD8M& -}j ,⌗쵙qMՅxCSBE]F"QP|Ἂ)7 O8J gq0͋Y,>pS'COvDAdo# Ws{ #$LZӨa_*o>W2y ybЮ-19=bbYRGc47Mx! ͘\P*3y剭f}6C y:~reT.Ia4K'UiwGu./$f0Cf-G12H+UQF1OBS饓SUlHP9 RY $5THcffU8 g`}kVLty _D}zD'un$vI5vEBVY ݕ"ˀ`8-=iR{, 8շՂ1Cq"zTVм"=^$T_N4iqHUu՞@|eYtyr&S)AS\oZ9Bt>WSZJS6z45ȗ;!1GC,2 >er=-l:39_u?X &YFL <['{.US26r v+>+bP/c4%p%Df[ Pc\F}zvAR'gdZJm@*3N?rCIɈÌՖȂ^VLvpR%7 ] xy!+gןhp&{HzssR~1_T'I0\9&ӵZ6AE?B[S 3qɪ]Q H-=!>;cf*Hxpnbh<<WaF0%JL9vsHɿh-X!7٢yl^ʂ5<y%XN67BPY\ CA}F[mHk]h4}tI%ٜ˄Z bOZ&Zv;VݶVgo%fVc'Cz$xݢ؅ x^FRqa#[$D}49<㼥RA'q1Y֨O]fPs)b[ Ipj#Э2nF fm3N[ks$maWF8ˁyėm*!`";Cd6y\)|={LKNZ4% : ޱEDԶ|}3 y:[T]K9k1OÊ~o17{;_QsڦIkaܘ.Juk ž\$U#0>2w̃,Q*~ -- $2h2vz-GlѦTLHR3.3-"nmS㪖Kbz-[dВMM6 Q!|)wIRJNh,pyFfKtJim"Z-ḷ{2t} жf5Zivw qF@F(x221ЍӴ.SM](P'"s'PP\Im ,\v )C<^9|4J U)ge2$$ӂ 8"eߓa$}˃"mxzlѿ_,Zb}nM9B̪k%>KQЮ*EYQGKο@左DMAR;:^P%pxB3|^-.H ]䓛Y$ !~:}PJ*%;vwErA2553TOt^]۞dFTwɚ2nb2RYWq(3ud璋:sߌ)[=?"jl+$S͟XWh O}@42#tVt' T#N䴈~xL%#`/K>{yI#R@SCK du0m#pDp E 6^)Zn=.Ttejv&q].<@ntF8wo=2B%JH -D?ME)anK8u=HHE>?~J028LZlyHD54r H͸'ZUOT4|.-2UPӧZ &όg vȌ: h 2~ںV,Fʓ|U7{ix,o5&{E^#'RQW[֕bCDr{ >Fxf`>)il7A1J!1}48#xԈT|xę 2sdI|gS*˥]&rWF1Q,JƕE:E7Ziq%fv!-, (LtV"ةb4hd Y[OP nobnE~ AG 2w%wCJXq0-ZƟך 5{ZxfDvO(*e81q+(VCC4kmfE nLKޱ F?(i=J:=~evn% %͉[~٫Dahhv3]M4ͳTrW)7"1BGzI&"&|ʴOD?V)J*!QvG"HzhF.J06zB n7q>C;36sX!BA~"g I4JFـ+H w%| E @wi++=iϰ_x|pU]@rD: 슌31cuLg,j}UR?jXYJtz`N":ʏ+TˑB7[*7i^Yw[݌b$hdQ!)W Tvb[K^˩&]۹@Jκhu蚕!qTWkV|M@P~*gy(ճ jzF#a6bX xK*p22#~m  R3Жh'jfSaѥ@}H 0Vh4xrՖ L7\6?(3YvٕP,)$%BVs$j#K} o=_.>OzudJ@kxe 20Ӱ,jfPtì-~ST |=(TaaP%a.9[x &MʬV,@MB/"L"d㥫x$=˝'Vcm@wK.g`^j:4ۙm"x;fDG2!:Th-CB0S׿I^G0Z >e (k}eM[SF$ sg.fgU],yu`f6\!-) Z7MޚYe: x 6!Ec=u[dWz9dOD}  \EĶjr_ V4vh~y Cj٘ޱ򤒳druI'D]to;dꏉ5вX0b(ց9Iz5WL|/U2ˁgPbE\R9{#`b*0Gf~|KiUK琴Нo Cf ~(,qz͓cޑI^" #yL܎ ^E!{? f|tFؔ&[KvS[ Jaq$^\uGGa$Z4sajpq{Wvd T|0&e ~} }he8O46䅕D<-!Hݼ}2b4*sm;W(C,@gf_5žx,/h03e;_{fTx?1W~gvuш!\#u PG޻*Sz&>k4$92d! 3q {,6ɅD2yiA=c! @ɈALA@D7c ?Y 8|V%&ev^l (YWg. VSRPLKuYi'I4\ &(cy-ĔX}Hbh=b$ZUT'oܗ+meYfj.Oe)|xƛԝ)&VshD TX)-&) #&8n;*-dԠ]{>͋nlq1ҏ PTCY3MB"e=K}Qͼ3^mm:? L cb1^{(vq* _7s!CK;J4*KIC`LJD @&6Z1tZ> Gf32tTvOy3fƐ2.ɾ_ xa=: B?cm{̈UHu$l 5O(8J'%V kD|:MtY ; fce#;ZDx @/$wsG\]H֣8n+b.JN<x/QSҰ%:pHԽeSHBvN)?ic `eʬ̀U0Ős}% $A ~ M"k:ĚE$EҬyqtze@2V[-@YcxpsKq@ئdˏhhy03HWn}ΗCּ$>7ki_8aQUㄓ;bLN݉0?f5d1b2ੵbI֛ أQE2?@B2w[(tX)'az$bϙ_YpS| ջ>V\ cX29PV"VЊV.|(}'݊R' DkwK>;=M$D"\x14xOw 8~eF+OA\+Geu{6giƮ y6l@AH.t݌LHnHk'e9 6ۖ.֟`/.E+6u8DLWJ-xf5p+(@xkS8S:5KwJPɐ?̼ Ҫ&X@ҒpjCx>sE#1W1^dUiK)@9u :.m YkY2& vێgw9!5K-bO>tnkz˩ ax9{9w2r "%B r Z!LT09嚨L'ckyw2-V'm#DrDSY1z[TIc,(`@fƱ|B 9쇝J9{O3J'Q#ͤEOѤtA!yº!?HnYߐS}p *͌g!/, WOt0_.NdL; )|i Llo{gۜ;6]0fWsdV8Yb Lշa?_,R3`Sn<|Ԃ ;0%}rrbZի-¨`7ҬrEE [IG9hU40EDǕv+wȷ[/q]aQWVs*  Jo++\0qM\Ƒ(( G Q]$9zZFJ1[ Z- }=He],`2(= rĈᩨ/aLj7("0٠Oe֗݀DA=uHM!5UeOz2! S|euNXaV9kIl$9 W "rĔ@GEPd`fDBjUGUi|(w~ÙV݅0Q\3ǵ=]'M 0"7ʣxcWH+ s'=M[ 7bfu~`Y8ZK\$OZl6I-J| N`Ɣу'_fG4_pQ}[FeU _qw*B0$wiih&xHQyC}%!1 ^AOG,Uj5$whbe:#C4l?Nz*u~wptb6h|W?ϸ ˶V>z2y؉c >?݆[gD9>-N$Y ;8|\z/uC>^`.:Bخ}[$v;*y椯KxQ¹2'9ps3$)E ,C*鄌5wmt4󶦮A(B09D ݵϪqDCEgERRod6~#79ج*a^) l/^%7&* ad1MEp_Nr˘v˪Y6Gǖ"Di4z3yE6oߥ :\9z+YOXh_ 8FYK8v(rL5د1 ~3\/h3IvN)z_okiD)le`'퍄E43+6\@H.9&29rA8<mP+W=I?@ip4fi{ΝjΫ=jW0~a_-n Jr[9'#Ǯ|0rdeu±?hA_kd"Ѯ ='LAkʀL]Y|Xt+(xf?ߐϧ@K8 ~ cqM%u˺sߌ7ǖ[?t"As&MGq*~υ)봂\ >n1FWӅt5u&N} _(` #g]^Ykz5q $g4Z DP+;wt4Wa(I&1kBGeP2Į/y:*x4חMaIg~dEܑL@\_&:gxpR>> d;dXG{d1n6cԯE/(Ÿ3`:^{k `Nлnl%W:i% 1~tӋ Ӣ5 tmPy oOo48]ƗVNXl(W#~8E¥έeV;!LʬCT#E`x'5MAL[T(ߒ鼄T5gy'~k 2E8e} ;ٵ:E lBZL2$Y3;tdEw$yF6T[]* W`g:RV@< ʞ ]SK( pҮpe;+] 0EBr^tQ#qEn[amYn볊4+fDsMWːg[I쉄.1d+*.X-R-pS*& >".%c ήHm z.D:D|cO XG׿xSuWbfo9g, yOs;,&Agh ’E^CljtSaʜڰl%Q\ϙ~k.m1Y4*` sŘRsY2m5h zֆ%l^34LxL/i=Uz+UǒxLXZTqo'G}kḌ#ty ߽ (Ѥeߢv7~!' W=_*_36 ̂ IEQcD [dEbMOs:yZ,: fED}r/)y$w!&xRE tZ9yC8{B`V1Ju9G..C([(q ?0jC_AGO(n@_ H\_ mEϗ<=?HѶ>jQ}Ȱ>Fߚ*$94#,!xR;ޙbrFA6۵q ^sCC &7@ZyKy yV)RߟzS+-BjI_e|O?K7Xry{ֵ,X n*~T{T6U9 5_6`#uQSOyac夺H(u1* +KGTAf]=>Y9=0c>E=vA ՆTQnO\$*<~V~ ڨ5\쫅䪿#OO|3fYДOÅ|m % +y~˜i]UYG,=/Ph;5ObF+ !ڰDL2:{+ϔ {qq o׷ȅz;\|jW ''ga\ hGjL WrX6^`;K}89àݐMD6S| ^T<Ak xmۤt# |TP3`UBrwhT(8[gJd=&/iq|D3" 4lz !D<( )b{ u>.5]oK7V'Heok<"iTirFٯ ] 1P#^M?&..y\kEyLcK[ECc$hj[uVi(5 ɛ #V;\o+@N*X I_=~sPFNBIٳ30NBp9)^3T*t/\JDh@SBXox&g+:t*U3?.a:Y'$Y  "REחtG'gw_P@:V◴#bUm`)Z %iC <7ezGgK _OD 筁s <\&a=Xvd%cE+ڻWa7^s$Soؘ-ˏJlxSJkcy٘RTW޸(]h"le[j}\&KK^jI6&5/yo:c{g'?dPFⵕV#N}s&`GWNWzSRlYe7_C[Pƙց4ck|;&UQ7{mE\)9:XrKoxl쯴$8fD+z~@,YdBב켙$dJb..{x+X8煶I ype5wW4ɯ!>w#PZlVW^T%:RU?׀6R7 0$=/=6m C) IDr #&d+u3f%mx hڬy>M6f05" BnmꪫBѽ6S"M0qPO|"` 㓱p^mu64NGo &5==fu܊8QPf7m52_&ɥ8 NC[zHn &׶y/e9KlcsA X8Iŝ8p:U'Eݕ˖ ڪH5΂7h/ZkfFgJz)!ڇW>'P= +,SYYy7cf cyS" JSO$g;IP' .BRs0-JyaZ4F]#9O!&L[AhƂ  ^ e Hv\ǯzK)ך9suկ7p8OcJ,r/d9-Y&FZ zŸjՐ~_g}|:@/ β@t3X?1ARpvHߍڋ$$)= !iG!4 כ @ು8jAalmxNNe5F:MY;-%9")~`V~t 3OѮڿ,P=ׯN|_=)8ӦLUSIY\e4=:UӾ{R\CjZ]MS9Fh9͛A̒'QcY nJy11@R]=:_BD9)_)OXں ͦ\kd?D5̲xdlAM?OpX:,\}(į$/:]늚)S'Ӽ%*3":V'mZPa'(DY`ѴalZDz/uDB` 5Y$ԁzȖa co;E?EG}W~8h~*Br!b;HU1yuvtYAŠmM3I6#׊~UMEOpiGk_z1[V!/FوycP=A]ي.ʁr5{oQbEwn hhjR]J= Nw2lesJFc'sd*O=8>`n!:Z I6\ϤFҵޫutʧva"mKËIO|8 `BC5@RC^q*pه[ ^h8se^afj̋\옆At"QE6H֜.wEn%]&f$)u7Fz>f]*Z@ k4ЌVל]* Ԫ++7x6\Ql&fGF S#*~/joӴQ̩xrɿ{W}2a!Cuj 7h6c&%ImzI *<{!t[o35(f8ΏLsז^pQ?C B/+T8|3iYԽ=h&M57 ~ |zOu8m@\/Y"X32Hvn)pXز͡ji:g8ݻ% %Q1V&Wmѿۺ,)2cGmyXż܊ye)ZOfK,;'vl|>W]Z 0%U,Z?Iw0$Nbgfv$10 7;f>YNB q-kn[oo:>n˞WH*;s >q^QG(04C8$'J9>jօZ:,8)v/H!:9 UO{|ȳk &q=TjVg3e {S423 lG3m`RSA E%(Cfo?dƆxhuCJ=` E0!D8aۙgYZԀ#&B[ڋa 4FgVMz!K8/pɺV1V/0(. 2/."[8r'Q\ZYh3׫lp¾^Mb4[W _8n# Ӟ<x#}_bДn!@hIIzC՘XpvIZVR4{Gz, ?Agk<kzͫ@ #IZKOH o}EP J2jlK#6( IipQ`݋}9Sx?kryl*c⭂]qawt l0T9%3Lx1BI65(-j^Rϵ#Æ27(ZW)(|%qڂP ۜ.ڵU~NEO-΢ߪͻ(zytƘф|a9jԷiMK- o!.c? Bc?]^)Su |w{/YYt)#ҳϼanZ=JI(I~*2Rv܊2?m;svc[!@kRyn \blq{a}AH`vZZ=v5jUӍ>ۧgmH">sNvP=P'-P[A,n3`^d:imZ|b/yglUec@Tnhk?F*!SQV2. uL&f7;ߔEyVD̐V 8ʢ=hKSI_ bҤ[3FZ2%#)1z%K_~چR#GLkf )ZxÈ19}Tk:oD߰\#^ȪjeHCruJGͬBܤ; )of;)$]iӜ6+# -A""UroKn۲3}8췢pfw9dP?# fG[2ν6]_]+PngO*xAOBS$zKEFOg6-cK*<Ҍh!jP"o^ y! }I&k EQi CZDC>}tGNoǧPƮ95+4ԕDzNɓC|5e`-qX$Rh6TfTV.0˴03S1l2ɕ,dm:tLGf.o\g^m'{Z Z4=7C$d'{\/L搼[h+Ǣ>c߁0hy3;sԕ+" 8/Cn=BkSqlvX46,=BY@ Į܂~B3V%mrmz~d7]Btнw2葐Vopyrd/ &!I$@O&fȥL@]d#kp knGnp#Ur2:w N n̤ >BYR`co፭\bLVX2Dp6fЭ]#IM:e>q гh> hyLs*HÔJT/D9™ hsU}LdXHd `E|w  rB==^d8ɏVaQ#XxFMInsdpl 8tuifε֙2bE#~Ot <_nSBZY.Q{IM}5gOA#iénfޮ>ҽEXɌ_Ubs=b=˻Kj(̰NO[ˋJmѹz\pH{%YT %_\gR8$UM^3Zvr%\IQ"riCG!,Z׋sC^D8S2+jjV\a}xw/ #,H~1J Uğta2Q")\/{tk5P"JBEs1>!t нJZO9t];kn辱SI IC vklTDB?s/ \ H`t: Y19ۅBκdդ+^/<@("m+畴<y71Ż(Q*%2BO?W̏~Dpu٭q4v R? }b&&~Ss?sˎAZ0^lנ{JIi(dc d#UJ)M,'ʤ}܌*}o{iOwmY3 _8|&F{8RU-/yeG;l@_P wCP fnE_f߽A_4ۦ55,1ĢVqfbd P콿PD%>/M#.oÕfsaججKk<`>жiB ZP=z}QX*AMcUGx a+DP)uift59 ݅PM;1j %+1O@ >}A{vZ[޼6ʫB%Yz7yE}E3ڌqhc%Ӽw:6>н->uݱZ@\ˋp$; #huX'u9Ǔ"T/I&~k _ۂXJs|h%w"stsb F;Cw0Pe~-ǟ StAFw 4I:]51835@>x%ORAOQ{~(pu:ȀwLV ~H:h4,"ʪ3>&uhBʁd5h"CPp/^ sXD^=Uu}ܿzc俴5qё Õ$!D k*y´tu`5Qj&3;^S(s3wIs{ jrqP^u;ӽ[YxU9uHB['\~F k;`7n>F)ó%$c̀K+`}Z6q_b$7A4ĒOTL0kb&?i?l ܉\#E]jͫXwM,%M ϰ!1&=6!nIovtNv{FQSrO'hK=|+]FɿPmܜt.Ԡ> )vdrj'B%_gugMۃZLvAYmݧh{ժ='׳lWֽ%[o;Kr'ϾZU]Td_X1d0q.a{]$udGQ m{s ||BޤCic2ڐ쪝vZpnu ѿ|a RPZ+ILe 1 :"WfOQY78.]$ʋA@Y8>oḌԨ?31 Hdz0r˃#jl9U`W[3RHR ĭف.|=0ۯ` rU3 GrC6٢P%bЏ7kEu$L-'j Ex{ޑ獰8"x WM)A)%Tu?=^П$e+̎qB:u̝uC1'B8)(vъ |!V ĥ*x^|N#sd(8Cg~LYȮuU^2!vr~ڽRlRUQJg7 t3yX& [eGilHxoVIz^sT-~YG_W?:*oiEEmp/vS\Uv_f S/C=&'kwXCíZqOj<30j#n'->xzTdR7ʎ8a̋4E(q$"4FʼnGOKvǕz%[!eȶޡG.G4æL-) Yrg]kxDrV:Pbmb;zrф~*BQPy3l0vu eҡ>*NpekB懷`]E :(ixޏ5xeCk(OX,b1ŅJ'"-Q u(9Kyg+ȳHBt6}ϧ/IzW71V8y{ؒYŢnT*nPi&~ 3`#a`8=))z{04?Jy)#m: {D@o@bT^QpAjgq SS876L[U{uvTԘ֙Y᠖ē3QaJgKL~&棞F 0%^Y);3:d0}r $ ޟ|4h9V+u`зm8ؾ1%أjJ6˰U>&s ?Ves:c2sA xH=D6@K.(eh-` MGނx2$mD]q~3SCj֧HAy \}?GyӖZڒQyY%5~w:3;.+O|wk2vY #m8Bٷ,[;N.>˲y|w$Uf:[fȳ >cр^D3<3rVI!1ʔ:>"*'筐}oVbɀ-v$o'0yB,_WsLmڹ5IGM-)3 a3S&%wjLA{|. ^9e iGlO>#֚޿DzlG<KrZZ"-%Z` 3^XcCK37s&'r8vxh3;-f]R"єSRT7b3+xXӊF}u BH=֭<|nHǷ&P0z 83v5s@1DJpvC̝,/KVY^V Cϙoy&K>p8=%qwE[.A!W.C8q^h(.haG-REd*L& 9g "T/&9[zDTheC35 H$qH`O$OR{y<-ΛkIPTyoM0 1wEp5¸.!.#o.=GU.k|vgbKM?<%NJNcLMF 9I l~c)ޭ1jFBƧRʵ;87Py}(1CBZx}_>s-T >cDb(ػT`4yL bHyvo0 |P+23%L.jU h!M)ЉuJAlJ۫4C/Fk f&<n#"eJh @ouRN.;D0nO++: mҫWt ;hT(? U$^D\^n Eʆe@Ymę_%; -FmOTfp^#6fT5u1ߢޏ ܑ(@Οzk7rۗ+[ʹ!`nmQ(?W{Ńd~;gLH /Xblǿ[gք@1c0n - Q4U2!r帩xZr#H#&ziue6N>ikC+cD1ia_SgO r,j8#X+`vT%6>r&HQG'E؎,ϩYl8C w >boUw:Qރ~dW?=;s3N2zjP4 e2,?Np,ED+{Y E-Nl2;&xɡIN}ɟ1@*Ti6򓎒!8>Y%+F H]TJiԧn$RM0;LG"a/D,Oi850d@vzWhO kεX )?,h@Y:*_Km@1jFad,ZoJdva@~<YQɷF@:i [p<:n/bZ hyviЩ1#%FUʎy|U`;353\xP\Fkg+4zAb'Cݩ2ŜDu=>˩Q޺kY1b=k;<whBV$قO[vɼ:~]8$ 5cyw)ALr+ .3 H}׃ 1oj [y+ݬIm7]!W,V%ӵCL~  `VÏﱇ;ß0x7=mfJ=UN}?K%}f*N?cY@DيMC载wncI(qX;:=?tz[_0cO0ay.ha+\v 炞Le!c+ɺ fKr $,ֈBS^Sݚ!^;6DՋh d6'd+,Qrw IY+pF0-&:J G;Xo1fMf(+nwYōNFB,_a`3E_VzW) #(UwADIdS{+vH|}u_9pj!CDmy-U_k^> 1Z XpP%ֶ/QO|Ց:³fSv6!ԮGe* ^/{k*dR؋/VACV5W׵& y9D Z{D~EVy-ʄ q.*a4e3R`)Xc?v?NnRLꒌ*i5[ذی 4u-1fXv .h*k9^nS6T8ʑsNiCrGƀ9Vl˼(%-n]WNbZ}K_c幯9\~W.%J.\8'ہ"RNaNmFj#&2AAI>~դ>6Uĸ҉ Vfuň _?P8I~ _Why/5[޵Q6&ۼp4=b6 vֳBAhո 𼭊 XYY¦U̬7V:?ehgmc\ym#Vki@?㬲5&~!iuR0RibM$$<4ԃVکE $XO*5 `F&:B[7k0B(]}{Sm2كlϧu? .%r=9 c>TsVB3ja?xORUu:ՀۚdtCwcΎљ0.47nȂ-;2;+۔xztW2(OQ`O,lN~Շ-C|G?v<>Z6}W@]o&Y1 vv'.9lNd8?~& Z13H;I 2}?\R"w:?X0Mc,܋-9ؐ73PsEKbَ;OVܱ(gЂde$@_k x.o[21'&Doq㤲6r\hsj^6%2 M֡c&hwA?PpEH&Xg_fV̵V.#9eշV,sWo)xSmk< lm1' v"*t<&ӪZ IY$5PB+ג >#?{`Ӈ}񻼈>G#7@MF|zcqbt1Fn>kF;dWH$W(/g<Oec+_P^*:AJV ,1m/+T\eZ'VVNMlZ}hٰd.gcZ-%3Ҹ^ߗqJ{~jaҲov&xy%M+kX%O o)Wq:qO Z*vM_'_ǩOf%b"6xi(Ŧ6F"9~ k3 H vⰟUcEu)閽ATG=1ݩ{)+e&9\SN0?z(p>=t"kUNGӊf z T,|3wM۹YrEǢqSr|\R7gUEDoQ*uF5A-HI70GqyɲOԼ/01g) M=̜g{z &+|q^hEhI -$G##$6QHabn<#xgu³Tsʏh)rX>B/~ӷU˙0ɴrպ~&̥Fpxc4 (W|-t=V82w\?=%u9$)?{1ͻ*?/ڎ rbt_lm@pg`}3OX hw6{+{\ dnZ%C :CvLoW_Yav>vH퀅ҋ)Xjq(Z|߀pc< ߖԇrN@4/hD-ȚoT(a;#Eս'sP {J6ge?6% :0Bner.W9?N2,rh-Op>v>]Çegɓ,~)Ei9>(/1uГL@1гر $PiLWi f!gȋ0A/ :{4ۢťkH;R4 k'0A] i5D5C'3@EߝnLl ~BᯏaK妱(%p N]}Ump 0Ip}"EN^BP-hw]?׫&;/0MՀl* 8t>RĜ:lUzrI~>^"lZ+ѷ.QNo *X }AM1C4""0; r_Dհ(H 뇹J?S--'qZLkv3e(#bK }隿'°~^n+aCY5k`?(]\;nG^6vB@xJӅzՄ6[Uբ6e˗ (=<ִ1oKq!Í*">s=Lūz~D*2&D2@[750 MNLiԯ褞/h5MaT"gbo$}oX$z:.SDۤB\X$V6j]U{v^_jmi>Ӌr IA;\>>Kn7WP J VXv@lv^u[@j/h:B`iMN@vPzHpexNHDMI|}4vdڰ/}!o7oGx״,@!U*dOUk`R vC 2$,$+>P4VTHfCOTozѝc@YX4GHjVGJN0-B"Ȭu x c}s%ڨ/qi":FBNӠ_\F@kRkw6rwT2E*ޅ-;/ SFR 4O\Dh"wA vA@]ӓL'&!ƺ>? aTZaPc3@0qjD+<7`/L\̟#WNqVs|5zX;/hcsڕSG ]Pr4UgkO]@fXRӇחQ= lYϤBPbf>s.8] =O!TDw59Td`PW!_;۸Pif-EMeG}n((:/'΋Art'|$ck+%<)*#Ҡ^ȔSc\iSNmjTٲN^a%;)vW +HD sɔ)㏥H&ɍHp0m6m+#0|iYSHwWLq'gZ?@*BUwP0&IwTchLJbgn27n9az)9ۍ@3aӱ6[cOPBu,V>,m1B3VUAޛ]dƞRo))9TM/Rt>{u/Rf[^n1? ϕ3HDyJgq@ԗhиAe`17Zcul3& BxAGU:F*oCY;Xe ['*TMFJV /:rsV _9B`TVE$A uL5%UzOK'.yC"̈Q]#y. ¶N224΃ g{nޖc(*=ƫ*-Pwyy =1R𵁹jUŷvAIB\m9譴wmpb[4/yᘔN0g/fYI2! ]6{&{r( B08+/sFzy7WvYCt89.?s҉7(l8<&SK\}t:-J޻=L싶Oj.g4BzJ3u2lUa[8(+;>7ۍźO\$iҊc"^sbgxKw{ ΐ ӂC jPqkN{pPG[']}Q4:whq?H՘=dMEj0'R)ae tP)eU]6؛) X DaËӆn\'?_A~3RY2WlPsȔԗ7StO^L7?^t LX}Umg[M>`%-Z'gxX;Xn̼[!\9Jc =נ;JIR .;8q'#o$p3\p^JF#!ѓVJP鷊h]Hrp Q:ӱR7, xhm5FZe=Ѳ昫qSwvXoDT3:S`JqsN|rnxtE5J{;͒ڍﬠd__plܟ /DqBDߕ‚`DB(">m: }&\A^ zcm C!=%ϧ0ȡ2IEDY*+}} Mw+ nW}0r8r__LVSHPsMҋ_nyk\cq>9.G8Z.bC jAӋ;\p`ieTa /9񘞑D`[BDbOZɨs8D󈋓r$~qcWo\t*1R lCKi}э W@ldnn 6Ad>vC*Ϥo.~=lDFxR!iFͰox9÷  ?K*Fu[) ( @8~~124誆ij |y-Ou}Gq"iIobr<^o~ HwA$6+ &T#QY2X0ho*2)\~dU$m̭MxL6mHNV L`_ǩ5wegD`^sm 'p..d*E(frFTiF~gм(#xU9đTxaF"śɹf[a(l` ûd4T`Z+D+}F9_Q"ۇ"BWQ87.!تJ ߲2 JEp-bK,3*ViwɹIyf۳{;cf:.v+V hbsi*6[FxzزdFL9=r- kzVo׭c[8>Iރ~LFi!Ĵx7CoRhag7˲LKh|:1 EWH2*g9gT:PO,[9m.<]OT=b{n!R/MQl 9+Rw5ajޯUu↢MV5gs,n(s1[Չ¿hQ 4|< 8# 9*7"t5_.BC5It`l%n_Ϛ)7eA \0c/3KN.o]|#>V9 Xщa܁QSc.5VDH߾z2^x^7N~I ®saWIp qvCl/qkIA|#(Uu ‡Zm;;yMγ V]ϫt(7GyͳHmolX V7/,[r7wqS7.|I=:IMTx~I `4S^9صY|Dk{ie2A| eCEyϵ^h<&DnPh?=#!'83s>=Fr y^3fӾqMUG'y:: /] 5bRO"Ϗ%#5`IaC:'@9^dJp\jƽi*$ym 6U480"Zv̑HL2܎֜;b9 2ū%vq4:$3hđ2#0Ԩ"/["T^(~({4Fbo.ީmg?SL~Paoފd?҃\ȿֵ,7u^ t[k#C+6Sc *ID@@xR̨n%u&FW$nB4#gƷTD]O)}c2abt<Iϓ)V>ټd1zJDj-a8Do>V[vb48G)JLH>^`ĭ u01t_Fc =C\F;Enc H?iczIĨ2{m*2?yl=w'Lڠ;LLuwϬ ხH]*]2-/~3jp\IV<=YϨ_nl~v-ۼȊ5sfhNà#q5sŠTTLc+Ŀ.D; M;̎ ʣ)@]<*{nͼx)vrg%zh>/F ~ pV|Yx-8T`T;5a6 _Z u׭L![| }y 庶C"-$/gGCmƟ. + -5:+rá yxBI82l%ro" "?F n9^p\!dU >y7Hfn5,nRxbnKOєdo=:6L3x tvJwV@s5x|Z> DcZ IRSֽ+G?şZn wbbЊ@Zohd<I jeOkvϮs]DE/Tf~2Mk.I_1fN~%koyێ;y24Rr^O`հ'J=;~ ZJ7lx%UeҔyQ|HM&q(髙6[l|e7T̜"D7Dd !:'OqG'>s/`DˢCKA3.{ ų\w3;icHId]ɽ<]'S*4s![ 6 RCj;fL,?-"oU"I?/6@ {_ͤ C/EKoUq4[St%&II:?|ɍꚬ=}[EKm˳/_h"p#Hj/x+f`Ueݹ٪7qj0Ia.7 !dKA1!(wfdoi-z]5ZUtAlm{=4٤2U3őɝL2_+ˆFϿz9^#;+ћùwׇ:i _H?|s?vuS 3oȔJ9?*JYKm 0wP`"q{9)ۅ<^mTlsnZ((t及IT]:07x a;R3U ~Noc1)iy#Ofz^`e 6"T+G l>&BLB. f T+IP(FTWjediR 9Pʧ8ă(ؤ*Nte+eպޏb 5|}U.#ۤ˨u,x|P%\+r>&^9ؾBk!"pj~詗svuYm&Qc`uSBzx oZE'$0|BP'D}vH: dbmw~W"ey6HKBׅ|[ABi=`?Eۃ ۗ̚gӝQ4׭Ǎ1^8d*RާgP\0SʢY{ &U+Ȭ~OB+)$֧ZBJ/X䂺1,k)$HZE +cXғb?9*{FӤ}g$GC-H etynͪCWo[T xLϨncխC%JX<2*֕Fzk];ZR]g0twx|H1Ɉ|*X4g.W6vBLPKt==Z LY߫LRl.t=yWIo?e_C| e{88's˝:d-EhwOE M?4MvϑÔQ(M\&tGknk%%WQ2`Ŋħc{t q!5)Jr@A/\*XeQb=E~6 ?GZiz"3{ Y3]&D^ D-}.`ӝn۲2^D+qrܺFD-ۇjks&m slHqd)^0tȭ>W־"$pg$挎vMĪb!ēF*inMjFPF;Q (dfU׼HN$W#^?e 4@rx c2 oBM8XU& \ 32aw;G)WX -X3d|U ")![C IC@3\9r6 5JTe` BuKGG,+zs/ A{V tʡihQ9w2-Dz4ԏNM`at8hFdOL:ΐ f+B %xi tY դG S1UJ@v4g8UlH݊;ZQ 62$(GۢS@E m1݄fE;B'¦ysaeW'9eOp(q%AuqwN<飽Z?L|/AtGT֧m>37z>l E1;a #Bb`JaB(8l[bz+S)9;^>CmihEKFȈx:~_ &%\F!YN ;iB#q{:wf2O<kXggotJJx8:ќ&}\Fqd(ޝ\Ody{Jظd,\P.t!UGTFawE d?4$lDr1oVSgwZ5$Yi8wFaIh򊻆M8'ͫ2Z.\9T̈qrP Zn2Sč5%\Q/(Ka2?CdddဈVGx*wL``~oٵD3f(]HG+mr>ehÝ' ٪`WQ@'A Bol^5 t8ia =xˬoDƢ!`eb@z5iB#`?}?n)UKd3ZFcX"E9Q.5J/Q^cm Ƭl( ?t٢oM7~.NfNf(pg8N#՜ԖlK<^vu"i>e>h6XHn+ŌR(&5l>|DtO@PҜ:C pJ=ɞ+ɺ?&G=7mpy3 q"`gE|5R3%-ҕI) bH茫(jVjcAeA݈O k<-'K)#Koܛ}S-L4sE2FH~`/D2gLiK "hJx\%00x$Z6w`;"rjiru8P\זGqfi7; 0*e#Ν]ˎy@aG)|?25~ Յ,zťYD?Z94q8Rq&Rh,Ynp/zڥy6Fp"# :?Cz' ;)Rk3n:B2 %Sugiϵ08QA8iljC^wM063aP?3i06ƺH;夺x%0Ģ>g.nAFsw3[1MLPرy3RXnJ N>kAx%Xfu/R^7J 3jE8{TS, J)J=.&sFkhxجl SsUsfI8ZzDyl!g#Xu׆ރGB0^'xoi)ڀk [ң{"T̿sf#~\L"j< ȔjoK E~=10C&xW6CzJo)jX.l߈ V6n)BZfcot<`CF<㛹(ROnl=?ޏwc"Gɦt %3;sxReƣzyqw9?;b`LxzPiloZIWѼ'7̧i/xI[_Xwro_Pe`!A!ZH]#̚}2| VVbY{E^-)ND]K>\ȥ-/}]votȸHъ:N{grᵧōK.G՗D|N"|*(<<ڢ^-b#5mWV-w p.zbr&(PlCyڙdbbf Kj.. IKdS$lГrЕa 6|?Rđ M'e56rgV{a {]wB^J>߸ORJ6!3j1 WqR]gW'yk6u d* IEj7\osB^)>J`+<li (ԍ#-jU.ي՝ 﫻a ?PCO㪫ՐY1 9w Xk%7(R7ϥSJȯ܃ʚt߲!Ȏ)0Iph|Ĝ$, 5/5ΌUe3qbГB{R4} 뾋kgej9aA")f:e;Bt>qYW?vİ<=bǠ= N1W~jO< x#FߗQZ Fr}!&ku$Qٌ{Zd`JEv6;CEgl㡗3<Ոkw^/F`Y ƪR?K`]OG|-i#faB| &;~15c}1. SB0U ă+c yiP4_C ~'cą = jG +lQN=*Q!,n&*&sHT;:GqML@`PT`Gvc?ֵٷQkG:ۢl?yK! mYB)Q.{h}e|ŮlOjo3V)!iRnɉ䯖WROb0:ՐF%gc%oF@W)u'JIc2[pK =B nJfiͲ`?w?tug- H-lÉYN[6'<>!XoFAԯbCr@"H}FpݩUJYFU 4jhpm">w9ZpfۯCsG7:ϕJ02>=,jP[+$j!'>o'M4B LGFUUOs5A]wB6U %uIEdًh1#88?{:"3*ޥ|Cvim^D7h䑓|D҈±FpFP6&Jhhǚj_%o]Q!6 Hnna'biYet\m]`z> iZ 7_''|*Y|7]:quϙ*]de!GmɼcڅfZ4gcv/nl\6VGoqxk[gP.bzԜV. 5.x *>`}7H] \Uɲ?>aYB^ۦPĴ,p~KS҇Hi$`o-ݛe2iæ"Io ds%ñZ5<Q[O$Vl`EiB?md+$)ep>3<"츞qU:?;u{h!aE#vVBN/4;v7e8jGD (gyLUB,bm19F^I mn,qBoQR:4/>jٖ7pBmAk+,̨p-E`f@RZJCJOBE U'$98_کJz$ʸ<+ % uQ@""p*&ow~yK&:u4EZjKb]FNCYB6 CܜRO1Y_wN-hd^EJ#K""t!l •H34!\$bj\ɋJ>+0HijS Vr" "xd/ݷ], H΃YE>[uJ`C=$џw;d8lK'!__U xQV/FQR}V?ʂ-{4Q9 mx&.9XfJ}ڜ*)|4+4@ (Ax| Uz! خK@RԚ,́i(c1E7L ]3y~Zq*2I%4Idk]=8KBf& 8wnLxWc}[Ҫ3qBoA:qL?pJHNӀR2iG~ H#esS_wr~W%O; $=[a %i˰Naؒjy>hJhOo^RJRR{n/WP ͞ 7ۋQ5L@4=&<44d b'8(n4(n@ۏ1_k#XnX$]KISouȽ*.Z|:q!$옹e乞F1mEraBC\(3vsRȈ=ް wtE[[&؂+.*A$F= L2Zthx3G{]iPyEG|D$)qj"9T*޼Fu.xbf ҐI-Ùe,oSRPIS8jfMۭy{FtSmV=4 Hf{ܧ485gS e&Fr-fbUOI$̀aeTRߝXܰ/SB/""\,ˊ-R<%I<{*ǧ\/ZɐSwh5%x f%Ѡe=nbSYPe^S#9nƸ/!}@4\창ci=NdO}`#0'ۜ]Dj9rZTٝ2veb;SݽFtmRaYQbc]g`EW-ynXx@ibWLOռ̫{`YZ?QN(F8- PAlYolWf2 L -c;yFcu%J>]bzH!Fa>IIUN MzY\ȄWja<5 B _{.-uڳ= )4 8Ob.OaIlt!O@:(_jOk!%ө%vsU>gϻ'rt #E/5 Z(<|cj#FT'5/,xnKd42F{JC&,AV K!6.+N.R\yHUv#iH7><Ȁͅ;Xܡ}CA0*aa`A;Ty46ޏ50omܖQu+tE^Fye;ZR:1@ܢ+BY1 h< ys\ihfQ mDDʓ=m}GB䣈yK87#0t!r'C4+<&]`E-sRǾXٶU_ZS+\k*km)s?(SJ lg>Lާمqu-1`gbha8d̠2' %*)  T%s d%HU\DnÙ]Dc|]3b~z"aGN<$l_nBdi1ffͦV_,TG6:z uW1įZҔ–;Dc;}[6r1nD@njt i>o#d,8c1~#U=zM'6Q_စ+b-D yiZI[`W])K oD.&pe";٨fu΀dGh+%sHABY>zUaq`<]Y1/BѢ6G.zgdEoo6@{tW墲7Ճ}"mY$bA&Q\ZLg{ް%zI޴ c"W/%Ԕ١R{ٷP<8QL}4=FqX(l?N:M_ RN$~=<ʡ|uJࣇy //8^--pknW' 6Ewz4Gp/BU6akřAEᾷXgq^[BbQTmWIӏ#JeϚ 75iJg{ﷺ}6yV_7v)b'm9nMQI] t!ws$eO4\V-0H`ǃ|wCGpA{ 2X9kN5쳪<-ĪkS+!6Kȉ&(PBoDJx+MٲbFl9ܚ"?V*02k0]>Kb6ښWE@P1:SMj<ߩmԯX5d 3"]}ʄLوsozVhL,8ґm~/&G_ FyiXA0nYفuATيd87'i)٘ `^?گ;JdmDrOseo"rGa痡`@fߞs|́р,ddWHrI¦3D S50Д>Zhv8 Dr?nl5)}!oP[0;pp̷`FC{Qh^7ʊy1[dz0?n+q7By01Lw9&'ԃ6h#`.W]xcVI6΄LpȈy/FZN:%fTN6JdM~86fd؜Y䟣p89϶W,߹ڴW$[*"oE5*Ўf: e09D(xXtXvl/I$uSm+RF%YΗ=a|Bnے]%h籂l^8ANQ]5 v3Jci[]vHr b\Qq *13>Tt !ᐊѠNd>|4pNEOѠNP} VnG|F!$@+LD>q^٬b$˵A>U] ڿްk#Sz0{E7[1 %YӬ(tdO  ? l_Έ Sjb)_QFbCL1QY"A}^{<ܴ8TyOAxޔJb? pҴn1B1OhO ;)G)|$#җ{LH..K:<xCqwuo@cqt.K5{FjɦbErm{ғB}?KKJ!i\R0t0#WgG\ rF`DyVd/xO|K\(wYg]⢘M]aj}z挘"X &%wFܤ؝nV(Y!Ky?B}ح{I]fva:AQ*)mX*RKl*B 'X/!m;(Rtb0ԇci ,!ne|ZZ 9=A=ZVAdMIbت̗ujZ-DZJ?%{( YxB.U`14$[cW$3JڹSPכ[@ǭ3ky0u&}z|3M(T1թN  m3\P<&>B!@3ꞄŜk:*Ӑ 8}kQ ,.%suA9'iîݱ%)6f/|<1Oqq8W}mXpG{V,DBcx*c21'xG寬F_(윒z-S^2X!GU>)@0%l;pkș{cMeӉ[S0:\J&F<"6_2"giVS% -\!oX ݒZ(wMWndf8=Nml3M{/Ϻ.Ğj/x D,}wO A)z4-y[;Y)l1 {l*K5&{ޭvvNSm ^L]E,!YtJCٸr^d8D|bE 9R|2~ OJUz*1Ra!˂!2U`r?p @QggX[n  *pfkRJ@| aMx0<[3Gf _ p>Y'l"'ƅ#R<&cL܊ (R4f̡G\vQ!DZ|[q!r([̈́6`2ǙS xo Si$CO +7]NE!Лa;!=En9W YULl| 2[_gD0]՛DoVIoVT 졍qg@RɘiZsMi6@<9uYX姥N(_jxv Y14aCLK\v&CəDFn}X 7IE&hfRaosF M JIc*|k[s_[d.{ШH!x= sp2 &3xWKꡂ*UcKZ~ƞ/LJco@L`MUt**0mPH Jg{3(H,4hFujҭ)ytn|&jMC:Iȩ6D22ɘE+ %@Gk^^uVY'=#QJ<E;cq=_jyo#z+>zu.a"̶syWT@7}F1rb.}oWDY{|9?ǽZ Kf@g>\raMaHe:g %5&@YuOc=9*-%G>b86{XA~eb#n~#\eLVhlȻ4L̏I&d;0O<7o*r6ʮ[3FlrX:nVFZK+1hJsP9^ַ?ofӁb<EPy7C'^t A^ y=fT]Ms[{\Ӛ-G_ 5uo$x ţhQN(88!lI/kGMFD@cO^ lԅo[;ݒ\T".闖 WLigXzX17N ꔡuK]?.g$VY" 0D)@$1nDd_,̈́64ق~Y 4au>c5'Ma FvE hfŐfIڄ戋k+4MkHسmKMwT o"3| 3 M1߾ ]V2n #D' Z:\j]A9tW)k^o|WB,Vauv/7Rq:aBGymq7=ʾr"A2XHS G^jnE&wTgx12/' TX޵t¯OK<{m,:qPy3 Cx}G2ajQk_B*4W 1M"Hz")[Ow? g<iJ$DI5)=z9#-hÈq*92O0.l2hjǛ f)#g!*,NR-}\>&C8?;Q4/-`{E_Zoc @s2gNQ[EйmOvK5ax$bF3 ~W`tƹdW w`net QT SθɉxEf^f߿!G q fFC,܉AZj|5'ۓ8 K\;-6Di~ Ef/O0=@e#ݒ=5qhL- P ,4_^Zvպ[06}UĠSP8:d(,u~p.pu?eZ/oW )͹)aUJ щzmMX "3 YtiwphoQCp_jz ew*9kGFv@z~}5iOI!#-j_~%&QbXk1j= [#ѕ\sT^ꜣmvc|[s+Z굞\B5AvOh>*n3x'Dk3+ W|&a Bf!z>EpgRAy|O^oP+Qŗ6OmC0KyÐHb]tdq{? OU>U8K/B]iߙL90)Ak\u*#FP$YDosDyCU rN-| ܣHS](h% AJ 'dEw$(>g]Qt+nY~N7+K*45 ]~ 7t[oA63J !<<93)D/K˂"OM d[f;03+l)5 ty^Hxj`;u@mPMzZfy5d{N-~1664䉺s<ɏu bh yE/f ϣWS]̵o:Tb];mu=N?E|t!(w#稇p4܃ ō8zу,p8mpin4*sKL 8}Ԯs}A^ܺM5W_9mPf_hTqƱ Z ]˸Fz/W_O hA 45Q?PcgxE0gjo0O靲*=ݜmx]Q,̄I;lXπQ]uj!WpULT1 a &0^ r+Dީﳈ(,u^vK "HXrO 河9+ms{x*lIai;eK0(<}\-#H5G>+7pWcA$qo>'?i{0q$B'*sk[\&-$[|K[Uo.]1hx`;zg#57w2rF[2;mPpH]b@qKsE O?T`Js O=`H 8rɱcnЋ7b1李]/sW35u7+i܆k>싢0߇x|;/OA1@$6 GVXk.Éhv`Y#T'%Y)hy?/ u2"_M~5 ae:q}*1MylK!onhT6&U&Ch*/;-C}ܰ@hP`IH{X1yƈ eL"M>QvߒU˄Ug'z'ʷujlAʬ5_VXۙ?M7{ ˢΠ쾑*>U1'{z?gX'AϹo>Y=P ю)/:_*@${ذkM<Yh*jCAgk[!3B 4Wk9Y5Q΀qmimMⴢ-聅 k pU^}O#e"6mM{A?HUX~AZ`c9жS -_ez'nDA?쭈xw{=ۈNBsC7f >uyVFPJc+*\|k|HWT;xLiT'/G%~U%d*bdut#fb2qdl#ri*hbK%moR#oD/q΀%B?_F\t>ݼh*ʺDTsyQ#kNv1T"xR@'C \9H[n4ԊۉoLG+3L>gc#_p+hE)J93l*m[hmO ~r(2|}P8wqlt6>Oɨ^O=_v8G6H_ܓn&n+vGôVbO~g˧ yj$ހE4)k{Q HvQst{vaE1UD.3aH؝RZL|9r:9"ZoѵP, 㭏{q q@UeiٗU%-iVlv2#Toz Ote:\ךK>uHNDKG^b:(?>Vt.h8Ԗ-Ha #4%$~K "=bվIz/  ㄷ'K{ Yi1w`ibY8"QQ$Ⱥ 0=IŦ'je6cF /U,£qu'EDGguʒW.vW6rVDŽp0#97ԋP\ `H@Iyb SI%IaROtZ]vpz``}AQ"W_p; :KSC.h?}0MO sZNgH]@Ydvs [E JT&|)IК+ @<5'{9/Rt8nK`zW3Qo4"3RDoػ8Kӧޑ:\eyjF했<ܾ`!HvÆ6>-5.IΏ#[Śyskw{~H%wGI)/`Iܮ1/7OegVԧT~@ 'N2rw~DɅXЪRD>'ӣh?xiF;r~ T9%dh.#VǙ ﺤhF +m2̞ {A AE9p3493U4̨ym+ V6v"ܒ\]Vx=HSnV;/F&y(yZtpUPn:F$''-dt^|,o}}Gbtl{SS4 -kAjCS=$#E\Zih8̢6im,_Y[O|.<3` ҍpFgmjGLwJZ|,B#){7/8pI:r6K גUIAwQhT<3dg=$Ž&UaB݊DTx긣%}߾~m<:Ni0&eD9Ѵz8 ?ԉJPXpD4+-ň45њSgg,')54դ{l;EeLK޿|sb~b#eoŘt==;apʞ8 ;IJF*:a֡Be|ڑ2VP~qdyk!kk'f?T6rDVYI[43pmo)Bd>b!M)5- rضr/'Gb: 됃o~!aX|X'r'rۀTP@O5'd{@Vc0zgςvko K{6b#?XhuޝRʻ8k$U'ͼ*}J!gbJbk4.#8N;Epn<[jM ]ط4 x~(rG~>5\(U޴:̚q\ DwsBAsbYe7.r%cA%'uSwzx$ Cd;=K>ʹDtXn)C#`ު8L3v%@8>q/O_Ĺ= J6bhFc%K Y\IpdES> j݇9K[ܱ(T!sCf]7 f yFԣU_rTpь<:*8@>>CuHܼp-x7 Հu:u,GkMKt͡W@8zܗC{1pSm3%K0`rq2]J \ nk/&x Ve^P#𒀘ql7eCtC%nBA`jyÝE(% c(?xf0]KRy'm;iMα48jW4ncAm+&`]@NY {ca8-i_3b~n ]k-ukm-1EY_Yx,F.>?c7ƅvFmGC.ڱg@#rC{Fe W9 sA}]kY?Jz;Fkiպ 'Zfj8`Fy{Jq. ?<Ÿ.?[j2%=_j\\mzL4'(^AC'rlX%fMH~Bvd/@;gj G@tvo"TNwҒi:Radڑ=YCmʮoe0ܰoЇ+((VX.*3X(f Z\Au시Xk!y^GGz n+Uޮczo. 8#(٢HnywE1ENV%.=Ѡ./W:wseA=w콍Z PT&VYU ͌vhisٵn`.bE磌wjB\¬_c~"fi^x2DLog߆>]9zđi.OHܜqAx(< k>.F}&^]QR7X^*𻕵[,Ԃ8`uNW(p˥ͫ.Rf4kͽ9nsz,&Yu;т8<d@ܓȀDݤo=3#*D:O?ZEGU[l +4Vf xUXuj9?rDVλ*esݏIhl˱^ 8o2UÌ6p= !8h*#pPʑD1N.zO\}Nm%J:1.;]2r$uVԖeg+&VwciA‡¼d~N'f;XڵӜw+7DS%,u<ڜh7+'jivOY fV|Bjpߌ/rO@8Ws. Ƹv kC@+x!, Ot5snAET=f=Jcg1_Ι5BKK ;bC+ lS/F, xxK%4y@cb@Wu 3њq2(j rFxZ%sVn vS`_\HƙF\t_y?[ۼhwǚ"U|~7~N(@~nXƱ'td6|nJnO0r2x t9CDa)_'Gf =hv?CFFH+d+$",h@?v#%kmΤH:YG^:E,NpBE/G,1pW<;VF[1/T4%\`@VO13Z܆?{@}e'Ęª AXY{AE!hȐ`R3w\ulE5|JްaP'S|+%)Gcwi|\*Qnj C}>~; :Õ)~m5qy]"pPYc"Lwqp+ĄՍDe@(Oa5!u03`)l dʷqܿ Ԙ{y,bmg'MJ4Í-v{' Z<EoJ1]:u!؎'Hݬ 'ছL.`:Xw&H-YC>N\a&G-op sLhD\2AMY+c6{lhY>vcse&"n"iPܭ2F}D9 zG@<{TIXlW^JA,g`lܛ}wVz[i*ږ>r6-&ͱ=4浇%H= |RH<:(9Ht{E3n`kegL&&SmMcf1H3O߀w3gb~Zu ,c[fY\O:맽BIWO0XQMלD^W BұHP+#fJ4|$vZx|m/-9oY* =e"1R bNB)Tdh4k2,6OV|<+ɕ,Nbm/}]Y)}?N-ܷ鉜{F]Zf :%vzARK@3Σ+x'5Q;S7y-~:Ds+$G;pډ#Va-Ztg_BPDS| % j |򔗬kvk48 &/ NTfMr{2U/vDeJG6@X܃z6;hS_O$NjҕJng8qVBInfؓpcXK29H>ReƆbJb-0)`/ 6)4FxP1]FȲt5ğ RG P i> /MP3BtrI:_/ץbabt*Yƒ:Or2Xb PPGP*' Q-V7A(BY"T(?P),9b}In ؈~VI'VHaY600Z;*0; O4MXL$`?N2 1VɤA,؎Qk0~}T8+0 m JwDf4jc)EV"(fƔGh#LV!z"Ԥ^ʯG1ٸ֚.%~WAѿ9R"r\ >9+V 3O~p"jAV2f율HZC'fʆ au-%Aws9 ]Sf" b~=@ظAXuL읕42MeLTM_P??Y@JOGɎ$ߗ9QUuiS'\21K֪fv«/` a|LGE_lkxux"0q#jBHIeE]{M|m.1B߾-N~L`-Zϲn'K(1@DUQ@pOaܧkX I:Wr-nlֽG=o Ew?qG|W&tqtՙe*3Wɾkވi *LطV)6+lk'4Vvdc\'VNqmq/p\KH΀tbKIy@-o̊~Ãy!fk"J̨e([`U HD0 IUtC>gEGe61ێ̫6 $])]aR/ De7$[ϒ;ʧ 7cyOSpe jgcWkCgcw6cy[췴e`T)KPSζ{ǓE3:<.2JLb?Pg̹ *Q#&@T=#YU+RQWVd ew RR|M놔C/ b)K:s3eniDjm b-|yBK/كI~٥ x{O OTkGʋn:"ǧ nl1D:)Vſ{k־0{ _CD}JqX:*YM n~^0F1gx@+pW֖I_}LVSTGSBOL\G xZaN%WN֒f:c<5]ѻ򁣱Cć'1 %3ՎGB& `r( Qf[^Fh[ tA(3:Q{ #ߛ(Yr :tPdE[#6YDzw,ө/gnTn] j;jQ1& f*H8^ ses)1 "f׶"F:\N[N"%kµcR}cU36> w: [koMvNBUR*H}Ӣ&!:5'rm{6yhw\L8.[ B⸡Xe8fY9GU&>jF&scw17eJ6%m*&f,lp9-u~uWqޯ#3ҡLiį1Q|G}]pmP V ^ c=lЌvcaFfO ψFHj;@_23ְ1Hk?Q<י̍_'S^Zeӱ0yQb+uhC9fQ H;b|tbdގɑ?(Bl+M/:/Lن(N/+)"*Ǽ4oNtqo8t٤i},'8pl0i1aHUF+-ljyN@W147_3B $=8lKʘ]4bLDs>J`M$f=PZP $YX#?2+V/k0|bzeI;qw/uv []@㣏b8d RNw_qVaWי1n=y͞fljfԦ%2i(!!j{i6^nGL}l|"%W ?]4 eWR7+3̟d-+m})R_p9&xAgNdvw ~ 6s4n[H[s;b$J8P8uv}֩/~/.FéB(䌷.h$dwvFF,Ȕ|FE :buH$v%FNen2\}&sO)d7d;w69I<Z^;$=uSVˆ6mv!{2W1zwNTRהd={ү!D\Ga |0gH*jópԄRz> T yk鐮xC!y(-ݓ/ye$؃D0v),|=cURd1]0v\[ma]]@9YD*wY/.F0Euԋ O^rMPp`K(IUP1aA{֫fxUAbيsXQ󑂀  d'g+'R 1E$_Ȋ/8Aq.jRjN+ #ci)pYX "5)}Q(fGAì|W 6)$Ų`k@~ ( G*7 # p'EH$}pǒQP[7xA28/"yPD5³ w|vƖ_"_JƞB%wLZC:J g2v.ANl%dGeGX˴Sp,D\Vf>0"S ؒm&B Q y h4DSPvKdM`O n .^c|tT\{3N\XHB%CpX=b}_Y/djnsk kBuJ#u?]ֻ@ JdCnU#an+Dcsi}4wL/?]TI_F?1H`{(z#:M–|[4@SMÆٗ˔kɜzm*M׃L.Qn'[fΨimi~Jw6$fG!c,q1xptlNpe< 30bB#t:[E9xF8!2]Ko *I@u=!Z.J +!ئCp/vy(h6 QF5E~E߮ 1ϴG =R]d$6K-=阋P  u~H[E{y[ Rg%0Ef .2.Ut.:hx+mH#VJsp?S{\KZ"dykѸN/6 O ,BYcw+"jd+>}M)Syy=@VVEIy2J݁1{L$PC8w'sZgFwg='aB*=`)IT*uvzjR@RድOBT`$i[nC;Zn7 RGtGe}TF)3(X柑 ߡ"D:( 4ܔ^RT\<2Vx9s^U?0S646suUYMJ\d!\!lJ1U̟z$_BE+gÏZHoo+?8]8ZNd#5Su#.{Sc)uQ.bp_\&VԒ/K/чo-si@}p!xkSrg7o䓴c9L/C 77Ky.ƓНӴh {ܒ}9#NF<ک%X 021tj-EDjY_maNdF\Y1o`6H;R>+&u%ҵ۟;t\JTEє&d9ܠz t,uWGO~ئU}g&s֩pz*\\02K -^~>OKZd;0y@ͷ%tԩ:!%zf|7!:YTՌ_eqLfIRI@yYE3(dc FD[X(ߓR]y$Oyt[3b;N9?÷n'W&ZΧGFx8`b$ V0FOo:c 4NCWׯwe:V5o1u U!Qk=m Ǟ<}3bJkZK+S:wExIP'`m4&qCFʆ'9(ЮwpL׫XK|OVQZlPB$@}8BkhȺfj}Y A,Yx1a Q݊>ͣa,<QI%-7Z8})<̦3Zvt /EQzL0'G$&OB-HOg]vNjb GC"0d`;8wE4sǻe!Ud]r6YsEsDe}7׏<+z{L4ΈIB!(s$7_P^D?!eYr1jeVļrT rI/1|1k@ %pt$*}z`{7I䋓>(&Ʈ[CM#+$u.=#֒.<ב3j7s l8Z8 F8#W˦<e@>&JZ+bjj/oi;gVqkQ,1$9.+ 3V]wD}NYhYuX!e{{S0Hv5MRXA20]Y!snƈW+t0k=՜ޛۺi3\N[ sAd\Z)Ǩ $XT{R Fpx.Zܛϲi5O5=.^E'AŠ? bP%n/[{v9vXK,>g?H-ga8\DD܄umԻvR;(PZ|$f#pESz _B2\Ap} W}sORUqBB2U rǍ3?9GfcU_KH=7gS͗iZPkΖsVSXy#oɟ)d~/Fӄ-~MOGaؿ}deNLtl_־L𕵧Hg\M][f(+w'0o@e%#s䈎|%*?PV XMgSJ˕>DoRͿ'yMNN㯼n0XgOG3f֪HFR Q@("R!%c6 <f>lf&%߽DdhulP߼{cBBW[ɤFB|:6%*+)M!@bs@sܦqNLW=S2{|\IWh>Cvb0D%WC7']Xt@(\eєĺhb[jY8`ަj7Zϵy~N 0Z{jyYey*ɧbY`huri(UU+xO=I![N@]=E-!)B m/(Uķ77VBJޑ2ћ^bn%ܧxŮ~}Sz䍘{[ipH<|5*AtkkuxZdq_bm)X1<9MLFhLJ>J(hDjWf(l{{P@LHd Aʡs0B:HqHQo0g"8Wf/̜[lU*L=1Qb$r{Em:򄘧I]Z:hqi8a0/cf+ƕ69Uxa`ĺ[Ԝh_RYƢn`|y/"Y?}r 0cf"{q?vE%ZakF!a.Pc3Fysq[Y_>&OIe#1lRi GEiA4suxnOk T<צч}^@3LS5+X';U')ReDN| &4>fn hS|M%#3]-6HbГ#hF^})L|Yԇl(ؠZct8|K>kr? wLѡAo5)>L4:@H 3J+ zCXAǎ,Sx>xz{D1j](t9z+,Z[#v[nC 5W4Mb[ڕ330rn%kܑA :9's?6s!a qn~C٢}>#xiס-b֙7h ;fܸjO9 &x&&9=@pYDԥp3cm g z q{|PpPM. U@$ 12Wfg0ڥ},>L7 }v:22B[Bgj%s3!!TyTlw%}}vԋAa5e%r԰ݘgo ]ƒd2YO<:7x0qxܚ ܬʚX$&!W~YeJ2NlQ 6f$Ԥ8M%tRUjs\Ajf@X!:gS(|K*KǟUm~6*h+y(ߝ"6f'jޓLfzAV`&U=~~8~IW[$~OM;Q"걒a#1EiG(N֛6}'fbsZo 쐒)MYe<L xDN9٬& 9ݨ_DGѢ7[o!+³tX;#;e.vattilR[|JzǎҰ#&T!s(VHZKݳ/8QF% ߃A݌Iy\{ 0#UIIu&&eTөɾw,_2~CNVP&TErwRDm؈랫98dm&=r54vhjJN#f7C(_x+ϊPhWFY_0c:؋#bƗSե}+?cZ>[ʟaY z%]Ubfr._u;X7*mSQX3Q+SK8lYAOm{8GӔk=kXıNaEi zb_aC#akpn?+VH`Q0 9rG(*dVՌ0Xk!.ɎmP$+ifWMBp@`entdzޭ:7~zȪvg$W蠸3i& iNde{J*oDN},2l#,{_7=8Wx=ɏOFJ@r5Oa;s>@CHMޠUvrM\9*;ģ$m2y=u1Kosb^;g–HvO ezM2:T 4&6>޶s;|zqqЋﭏo8q&f!Ծ{$\n8RUqpH`6Z2.i^ kW9hUO }"*sY[,@C1ej訞ؙ-9K_jRB<$sMColrMNL<Y>AJJ x1 pgdE_u&wI8NpmΒǀ3C [Aagnz{% Z/PoLx@ŕy0b |Hy+cXB讚ھ]a\<.NҳNALR;9ŅSsǔdiww.W͉Y:#?Xrҕ2gx 2׶2߀Fnʓ cUo&MxNM'v"\IBF .V#ŏK%<T[l 0*/8Ԅ_=L\)]-2g >;rpҿ~箋n]s{ÊK)%u#KI@=crѝJo 气E+^u˽V=n1%Yz>I>RBcQ<١qZU8<ჇK;%oJXu+Rtp%\P-Tb Ks)e#m (L0)7<^8hDt wZ ٷHB@@4t.nF ͎ck,v? mZ XCm7wKM-CIɄSW"lS*slXzn7 MSN2KUi?rbqw8Z~@trza7t /; Y@: T&\]sfީUW4{2g'_u6_-e(zp/ó YM|9b.Y=5 Z4xkolJp]b@7j)|i5V?5d#; x?:uQ:~DmzKq{Nny#tCZEv+c.JnCTGUy7S# O/n8n5=\' 8$XZ,!j |47rtX7cgK1ɎfQ*T!HQ !em:i8o B _c- bjVAIL1G$pUf9t&kHniRZ Mgp7 DR#jQ}<|X-yNݟJNP~v_z* 8Rh2Ž>0K L 39w+բg\|tE͑<! Tyn9nU,fS KuG*"Xf,,vBzO2E6>_ aNTmØY/G2-L˚/T7^r~^ͽ4N xP_UC?ba3XfHZzEB 5AwW2BA]GcgJOMTmdfPzl6V-Q} hDcecմbZ^'3~XKLtb2m&]c[aq 7uɲ`f2ry{)E!:{kT1JkOP-[F!A0)_^=6_˚Kiv,wb*:3Q{3i5OBvXpn5~UKY* <Ј~WKxjѥ}M$#FW ?ºixwBfA /Nu\5 Bu=QR[Ah$omNZB2)QdZkex 3+~% I֝\"j`k0ݡ>KR|k IUhF6`DB# 8jm8zar(&sxX;[ 7 M h}t&3Ch i4+s0XvUQ3pgZwP(a;H;R7zI>W - 7Bc&nYx86Hp?nCϞsn8 $9BBfeސU:;0('G`hK0{)f7[H Va] ?ிj,G,0:R 5mIvg!ZR]ix uN̥6 V,>'L#9(xa<_qRf8# a)p-gg;`]nR ow$:zg v Ƽ\YOmLokZ!4bs P_JĉYw[5`nYtNW`ʑ~)ac?-Ac [p*\0ꁦ.VceGSu_9'B++ |Na!26YЭ/ÉD휏&K8臺)r}U_lsPI:r7WEB ߽̃MJhm>R?RbPܾn<9wjFϷSPNv{kf3JlZ{yyqO lrd?^)Ahh Q`CKmr"R eC+}I m3/St1 qOS{oa$vF/{@VR轮AʽAHu */-rp`Z'UTMx37fa=6P\ y+V _ \M>s~ v†Eae萄ju +ØͱvvLPOM^R- >/Px#ςԮ8XphuCO`}w7L1ݘ^ fa,2~ct>!_A4RkWYO+ iDi&x8ܞٝ)W)-e'2L@pO[0pž\Mv=*XuOa+fs=Mžz7&]hG!pgc,p?n0FḞS"Q0I3KȽTGkRc`o i <KDa>y٣d:x k@Ы ٍuGBF.;ZlG6\x7`rZsS9 4uid^RRh|n1tӍSϬ>zAW/sGvF.p%|wd?@uy/}"ܐ Uc'P 9FqMH051.DtY˚@vbAܳ?=K 3 JS]x)nt#xZNb<4=8ukMJ^|. 8[h4N'nkίmG[fM堚 rLg9MbcߜQEr޿ FWW v~l3ojjv{$~?+D=y6 I9u}cey NZa DsoZ#+͈PZy2Wa"ٳuK o Y}!jw=۷ti&Zfl3?l^h9E~?󅾺kY,gǵT۽yq: Q\cRzJy"$`ns LRjuxylSب3ΚBv[ܳf;f)7=ݏFk^Iɵ* ЪKyn_H5r&}%pZO_bӂW«i扇 ~H7aБ6E"ZjRPH7N ΅ePSGg%%ݤ$M{ A #T5u* ` XcQ[E7֒gtibj|y;BJ0.TU q^e2b *;A}Gk3%':B$\r$ŏAxMN~lqK,[@?eZB|<( œ̫<:l0y:l."`-卑E+`^3H'nFxhwqYAS$`T_d[!E]1/ -c 5ի|L  ~,$%g6'_"e>O{J8%VIAb{A|R,\t py&dΓ]Rr_h0wF7Hf;sQ)1cMeHb8Zzlh%Ku)]jnqP;'x3xz~_;MNI:?&⛭!, fl[LarBj|˯g%ӳ{IM#jlq1:JDÑs.ObiiO*=]{~+D?'5P` C[O'LŭφBNJx1y'(':j%QğO.b%a+0104B$>!a`فnJ0N=XB;d<5M ]X񐯈BA/ك.C+NWU( ۔M;8 q upCN@<᳄C#VDrfMvLcP -d౟Xo/ԜkyiVɓ9CٳRvS5{9.I꺀r:˩QMM5wrߚRTʙr9m: (Io:H+K1L,\@p U*MUP:ԂxK[[Z1=a"2Co(UZni _Bfw|%Xaĸ VRn/(CRoϵ# ^ز_O΋ٙ29̔/*WtVe[g"u a"|LtWjYeoj/5%$8M e&cB_ua(\;s̺%_B!V>= ے%{Swwtѕs6.ӥ)xBhQhq#N)(M\L%Aj5WFc D{m.9EDT(FdKɿ*%pdcVݮoCN~ g7jhiϔ⊣9Թ0V4 {[0ӝvʬ1Pi>R>1H #]N=m[pYkI÷{d QD[2?/>R>Ayir[lѝY?$(1mbjZN-97)Cucu2.}lhw,5 ͛l.3d-[),$F#=wgY'O ɟ#h'BћK~'2LA?Ub_6Q,hﮯۅ ډ4 42#Sv{jM"w~ɨVSi_dG5)ӧo&tPǎ]4A{VI;(%A|!8h(Mˁ*dQq gJ۟հ!'oC25n1Of'PX{J31J#+$[r-O#u9 UqܦUi&d=>ѽD<( [(=fG8ꍜ֖S ] [Hbҥ- (0MnN8jYfa>4/^Ɯ!uSo:S䫫!Lb8ևw'J#CyE`!,H+BŮRgR2~QBOa;㤹x2tK?ڮIm9냢*x qzӅprQ]3Wϊ H?-|fHމYqEvwgxC0lfjÿW6 Zt1XE}ضG[~8/!o_hg&'M7G3 wN@ᱦYSO2@vBgw~Π\>ŕRBe/;,A4y.ŽgDL: \LOkUJ $TK8 ѓK'Na\JzB_(F/QQy'M܂V LT!LaGIɅ(x4~ߨZuNUScVYkoĒiDzmWnR(2.`KRnx8\ xAꇰ&ȹv-u\HץQN=ֱI[*c]h韗q`] 2svERg@iշ% Rس3v_j26Cy_+inwKФ!ۼtEnI5:/ú?,ٞiVn͇eN nOsJ;2?TВM-9ݺRbLXMDKi%VיZ_I%h5 jcrO?Z{ ;1A 3w_ YFAiZqdV2f$E1oL|Bħ B3BX%(Ú_U}RMZCܴp|@CSU#w!v^"'cs_ow_8+ү ~xLJs "X[$z.MY7~E ʝ `t X< R({ӐTQY K!)]e4,-!ƕ_\(Ӗ;W fi^`pjW[Ԑ?n^̎E7L,QȐ/V9pP TAXf?ra̸e(ΥYPHmJ}x,r ف)t)F&\uEgcyzK$sj/ibq! '"/4HkA9Q1Jqn[bh #+2:5XTI,|8I(lym6r"Cx"]&|X]Epﻲ!Y0Djwfae*i֟>JTfɩ;3-EڱSj ;JҐ[$nA ]3;U,h;6vҤ4 覬Ü{lgElFSXx%Mf6`pCWLȖ:依KG\ Ž]Mk>,0MK@Yx55 #_z@l!藊hDï9\> h3 azeRmzq_.EBaY&|0H "0Pd@Ac0}; UҦ@oԐ(KDK(KHC.ܙ8PRSe E mPl6H򡽈HP?SWh$b^ْ18>]MA$ޡ.S*O>فs{̽c ,'!%IFq5-Ҋ0{ ?f68氪_ϑTjBttq9E_Fbe"5?ݯ6 ){-XpU- 6w1 DG;9sT 2dfn LVb.(֎9v_ #,Y)WV)CH&PTi"Zo݉{&o{ژ\+&5o }Y>l(T^[b%S gPH Ԏ./HHtG˳kM  |ND^s*aJZ~M3c[tw; p mavnbSCqf E܃Λ+[h~AX=ןXlL6WZ  ȌD^NDeT(ĭ03X9hLjZ4WW/* s CpұcƸB"*;x;<>MBy!yg`SGD\{(9gJ˰ \ו>>̲wr2zwR2$K$RRcAphXFTLlCXQvq73,D<{ŔKm^=$l)ũX-#>%$Wbk`jAS,v,(-Ayv";o| $|>嵏(x1AO(T]th7 UON!eNFQץP)P_f Vm, THU'k |TeBCY=we5$q xpsKU$g72#wg9V@ +UvPwL1d+hċ,\kɥQN@d0~{z2`d#ՓD94SmեN j$IA70o&4h <י A @E^;Q}_X_P[W="Xg>4; x埠.ިj`_m6,Ȳ(Du]iҢNŚeܶdW*Iw;0)lcr3'FZ 8!S귡M<&Zv2zlVa3iy'h ^~ȷ% ^Fg+c$$[+]Vpvi`'u;x38AdQxƬ8jfnF2iIU8/;T{ ZYu!e)-m~r/V֬J'jgslįƤDxZEkݫ#tQm-%9bxC8Y0ѮבRM˶5Tj#ۡBL}g [y ]J=Â,k@M@Cro0B1 yc y1;`l+sP͕,iTzy⠶jH<ÌK`?J2hY@Qӻjo&0]%"g\L ;;4`0 /9ԭH?E !p Dq-t9&}PKGuʛP-fjMr7 )@4ݖƗtdZe;4z;- b7v -h@z OLKX̒e,뫛㱷UJCD%=d(4P73`0&bv@3E?:]n*E 6+tq CLmV2C${DF8eQ]ܬx(VypG Քh=% kv=yLN^Xg~g#{A_`E@al֡lHdJʹJFQ@O1qIdIgw^oަ|t9)Sf]VƉS'臹Hۦ|IFU;2M"ʏ $՘} 3ٚ v;)? v-x@@\ٝTHpèO00Y7@b'S֩8M$t;a#t|gt+"fNdˑA@D,GDomT3o8{Bp'ഄ[r٢O$J \#gP^kER\ȌP'gGo64j@`}G8|7Pvu`GIR3-hb+6zة&2[kuP8YVbobr% o?ޣbiniw A6V8Ж M 4Q 񍙐L+5/GV Х8Vߺ BI @6.Zjx\04if+2} *N­(H-_ +m1t5g"`BL{˔J/']$`}OaF~8qOò(}&|s1S {̽N]{.#~KIS7ȉV@#![ow. 5T NJrU#ͥb](6Ɛ|߼jpѽ}uD@# W8PuSʴ9ɀOBr7M螃Wwج\Sls58v& #AB.D.~F@ǁhqly^n Xwj/fP'O3AKN\Or~4N4H6OeKlͮOay҅2,gl1.x}%t.k:BMxAfƴeђ6 G=0.aCn({CcCG%ԉOhayZQez.U*x ?vy)Ā"5.ּ;7ݱS=.}#I[3A)[.wk2ӴM|z@`sx[AlL&M@1U_vb:ޢKch 9syԯ>y OU?=VHx#7 ,tS>gC%]wC(%VtmŽ"SWH9JLJչqU*+V5^vI蟹mfA~TK*חgRQKqCN,y Ń}CA&2 eH=iK<C&KU pÙ/Η`x:(R7sFmz[,Xce$], [4<--֓8!a>+&Xp76_OVP89c^!su*=M:bxd ЫH`7x=zN$n O{T%f9#qL}vKs8:Ec}pWs`;܃% 1a/~&}۹mtc 66ʃN/[ۑ"LP -˞'(BpB֬ @:P,~=@S:Cq<9琭Ox>y&`ץ!fԓ(YFc&P0 ,S=lbҧ+a\)H3[ :EGd);vl،8PZ+SIMvv|mʲ涘r(OK3YpB qݶz"eFM.`j{b1Bɭ1$@ISb*#ZگDH&_̯A _=o(GؕeLb/M:#xo{fz5WsPq$UȊd#?(39T[ j Eio5Zt+Bw D`uHhTcYz1[ća\h(rՀb}?ljryڄż-vuScq!.nHq G#Ǎ.9i{"ynCr+% :ou#fpF{SV|dX[x{'%YhEo2+;L߸ ξ?Ko+m'.Q//c C| Q_)CJJb|(HApFpT, ZZ\Cc /+c6Dlt^V_ 7FkbB܅[{+J/Dnݚ=B$ di [9Y`Ns=ѹ\t#'PKJHs`U5` Z 0Y}Z-\:< ?ݪ|]=u"mȓD#CohO6 E+f̊9#/0s FMMM+9~FUid58udUKh6Tz'tk-`n v ,.]Zi{tkA衟 d\ K 9Ё: g֘6SgGniD"T^|s\hpew(yGuؤ7~VEt9NJd%@ Fv`loǓ9Mgw\}i+MIDPe3Bh&B߱DA8Uq9'͖SUxxu dens Ȝʻs/v];YH)A: nr 'mɓ[(7mœF'/͉or7hmա&e9's{^QτݿBHָVOgzxnq@} Զ!8:e]v{*;xc鳅\t _4{Qѯ*;K^ &^6ԘR|y0k wos,Pyiخs<2 :˾k8@ }&ƛM ilKpUKص}-(+_[D9]26P.Wgz@=6jL{",wcׇ͝))TT,RvSO>wۯ`:ܰU+.kB1.&m'7z- HWM@:Hy߹&hhd9f݌k=*Eg\(g{ͥlW_k]&$.J@FX qfz47M~qth%x[?]k&O]ncuuv&AxO Ie-ĵh!ڭf&l@ѧz\d5"Wf6q(\˼bNn=}#[ʱj|p)F > k3.(Ys.f$`ѯsQv:-.{1XꐬY ɬʥ,dA͍7 5O-HJ9]Ele%<[|=y6څJ9E,h^sҍ_oA#`kxX| ˹M>t9]e{t(Xh4`LIݝbHȴ3v0;0:pj3$c<:(Ufχ)VkLډ L.GD,f]Azb(w\$.@b*4s$E<OQ/ /գ-!7XGClW%-[c+8tyddĿ(s92NYWnsCF@)7V:|w9'Ƒ Nԃel>x0;2ǵ4am\^XƼ'ڏMH[2Vf@iܥ)+vyT^x [ 3n[pP&N'@XIvc9&&Ho FY8I=俞 z=۫JP|W|vJLIqe֋7=[: =cU޺A4H:Q3}ي7xQr*_wB!;_ˮ=懦5ik `[aCKRAX~7Z]nfՊ9IXUȆڸt{^F栤%AB#I9Ees21}ߑkG8:d(l<@c"bޡ3h̦M ~L%\UDZ*-R|QmDܐ&#!KWڌUQVPx;z<Gsk7Iڝy8ģ[h 2̓.nd5ʿa#H-\;.GHI1Vť$?tʲɄ%@d* yRpkSe%I ojݪhdSAr;$ bw8YDz0`]4' ыGZ':ٯxM)4((;kU0\N5kAhmV14&IY;fM;wwTOg6lP&7^)XHvf*+77zK2;>݁OJT`ցͮhkPBPG_d&f-$aQ:oj[E⫁!;Wނ~Dž`DZWv&TDgV~s&Ur H3Xng#}1u \2/QkI.̥iW]uyGU,jH(;ٝ5`Ѯc+QToI1<9>u-ic*06EgKk[-]YoS#Kf}V}*43G(iRbEufwޣosMݦ}l;} %;7PwGB펼О8(Ga>Rxeİ1ծ)(-?2k grTM}Gt;hE$> TGr6.02$7vFJWC86:%Ӧ^[pЮC_Fs4?5A$^VbvEF)[!p?,,n60!l8tU.?CcHñ&;I)F%_2:+6'ǘFAUq#:|)7,<9Y?͸iB$sCA-N@<_ U_/XuNwɮހ9(’%|nsdD?-kHExN<ITj0{&@?4EDJoș 1?0.b @ !SkbV Gb<N={JK϶$ȵr/IU͡ʮ.Ɨ-»eac|qyŶvK,O5;6~yq|7EA ڝ;}?ʭݔ^|0DMRSL%= y_HniTz>}C}gh#2Kl B§ (?b4UIuL9=yԫ9g?7Sw[TK-؝Ar(t^$qh'PDg"7F:2 !*[l,-? .f]F\=2&5WxJS^ DdH%u]m炶s@iU6m3ܜ /AY5H>lC`慼޺LVdsdg+@֘ýk%a.s6vEehmUC* !gG\'Xca3%fY:H-[%' *Q΍ؕXBuFM_9KQ\ %n7:ۥU(xhhb#+UO < %0H׍ u̾$/Ɇ4&X;59yDZ?@i}T|2ojU3V5= J 3U`kޅ3{?cTM@#>S;Fi<ޏvݕVO@m8oH>T~ԍ? fŌHvph6ҽyfOx`+>ZUe[­>SGc:\[~yk8\Q^L|fh_ 9Z+ͱB5嵇Ctpm˴y\UY0٥]/rŒn(l Jq7o=w DjŬi݊thIXTE7; L,jG:W(89+pp@/FPO޵9,oQqTn7}=к._5AkTt%2r~4wI4oh־[F{MF?\; `vs޷$ș!&%DFTx*$`=f7!d%). b &89[Cmʀe~\7H&rR,̟a&Jw%S~pߗneɞ#Z,z=|N0Iw ]l=XՑ-߃{' Gt`UUfї&A9A"!*|?-;~%(A9PƐۧOK2\t=jҚ/EdeE\ɩj(8TnabW3 K#=t%rC{}դ0\Gi A+H4ڻ̕уB۷\~f/DCSA$ w\.Q{RwgN=9ANź}jNm$ /{zlGKNn"cv o+:Z@> &#O, &'|}lU艩F!lwk8 ?⡲%;hS B 8< T^X7'9@%iRQ #%^iۢXyfBS(@(|4LȮGux.צe~{_u"柤@LZ?3jQ+DJl4!Ehm=Ԭj:@jF@DmWC"7׍]K奙n7Y ѥ𵕗<]xaQ8YD2J?׵m[4O5 Ϻm `QhB`,ªt M ր,%F\&m: 3(}f B=vB& (\A]6]T].ڷ{ UKYxw΂ðߪ; J0 +k/$,n〽0} nq=ޅ*e5̔7~\m {ٝOo"N 粜.?Q,.dY|T)PR3׀dਥۉVF R

D Dͷ(TOz.J_j&QwM?Nw@Y |Ù"m ݗ罧ҙ= :U.Ȁr=[JY6U64CeQ/zWw8Gz| DW $A:HkDn1 t@߼SGߛIkb ~1lWȾH:܉ˈd%Mp|j_;Biw:i-ƟVT*>ԣhE Oͫ?+0+ If6EhK[0xCH̴ G"2౩ʁ`WgǯJ$l#lI!ODAI&l&/2a5HN5P\ی1b:[wCtghJ;a8}|iޛQ;kVʓCH <[8E;gIpK/kSw!fs\^~wvSolD/ ǿ^IMvߎ̼1qHk&'3٫D.^8\MZǛK0v(PܱFj L# }Q ^% 7dT8ThR*8}x Qf}3.!3A~3&hK \JmKd[Hw)Xf#vr|ؘw!Fe!9g&JGubZߟ1ؠ?}5G,{N̗T18#ª ZΛ$'vמKB#X:dsԕfFbfWXV0'4z_qC&]Q^T3Zbs(S,ns;aFԯ]kHR÷I_=QCD)QNWYDm/Hc:T:'m.{9ͭRoLGB9ʁ)&;DM-U 6EW8c`A"\be @#@U)X i%C?[4dͲ\eU%w(6\f;2 XR6l/h6C*l +JksfӯEo=*kD  tϻ>0]uQu#\w2g. %gy')M }4q% ;$F=n+lj '^eFm(l Yz$Ssk®aU|\MҬD 2 2"YB;:#7B H)O6O7X2+?g!¶Ie7 5vgʾDw^i!-hCC]52^N.CʯCt" DѣO~}`;Q}V}bVB?uDHⱘ_$gU̸wgt'A;fyJFqe'[5\'(hkVeo(1=tмfc".uwGl3DXV!#v/æ[ز[P3EYM4Þl}5~mPr;=L@VqݡW`h7 Aig.}Y- \ypd2"ۼ G2YF_p=*]c4MuQM!GÙPwFBI*d,e\gm7)/P1h֙iJ}, 6Pr}h3LUF)#.c떄g'Rya0oPI} zvXt%\ As1"`I;-Apƍ=",TUzv.`(v09Js Sp;eۮHY.+y?t &r38l^:M h@Ty "7 t"`xzA2IjÄw c 0E>gxgS_fI/ |#^Jb6nvzTݢɃvЩ^WqDfQ<u1=%R4<}%<&jB;kY-,iA! @\4ǩW8LY[ه+"͖m!W떁~,,@?XIwF } l'M[@*g נQƓ&Ց?Kgxv  W }n S(uGva9l_PxGV~P*D rrEG<ږШ0YL!e4rcOD'!0}vgm_[sU; d+ sA;-u)dݟ"-e>s1r[lK雗=֦HUsU0sV[Ƥ"S6;m%8vAb,x91zLԗާs4a5,SQ>sB[mJG,H^<jtjc|FjT>|e~Xv#=H܆II:/~$%M2P 4N&ĤTNso[ortIlKVNv@pIʥ7V8.aFv6>t/cCbHq<_۠O !HZAx`jF%9!-Ywa>хQk*-#~e"BvKK# Ҋd96m杺 #y!GO9/g6Nhfc#>G ZHGItڤ  V;B #:t3QROXZJ{ {`$fw2]@LሜهD7$R8˥DΣKtF~BI>*"h[AGvTRoRViD-o{Ii@Wަ2`(:7AW}e%VԴn\_aw}H)@;?3ak}hT6% 74|%մMoZ_`4z`{ShV+Lf3b gW4o*ah9!3ˣ@dNG7$0a[ff(Yޏ qwR[7@-qt]p=bK`3mSZV;B( \AQnS,d* $WҮQ!S?Bt#[7bH<]c,u,PR* #/nf^X.^M솬u HNq"ض@TEGEDL{5?QHun;fOd#_B,!IOqE7G…iD h x}.EN.KN0YIݨ1#[0A&B751$+LJ9Or޴;}I}Et*Y8lYZ 16 bm ͺ]ц|= ZbL{WcB-;]g64]XoUiHptanlU 6:}DQ-h's} d? =4t]殸ܐ-Z`UZ~%u¥_O8Y(WMuNeve'[T]z"c\sBsNxmjߧJwY2@:ӣ[_ҡ)͢[͸'DAq}8@NQƪ}-!se˕)lpU r/7hΫ}78Λ % VX痐u"VS\Z$? ED$Ba9A3W2xLMF`ְ+waeC&JhK!/0 MQN=Ξtt#2F} ֮Ms!c֔~j} H.eUB` k󁥫mS[/ou '0zq,BDZGq^?2&v_C恑T5lë Q+?׵j ]Zalqrvs (زPΎ37hc^IR&8tTHGD8;p)Tj|q sڅ5|]ܸA 5 c:5}QXqBmh:rٿog/8ealVpG9 ŜV6 U?= $>RFU2I(_st&oatpr/ƌ]1 }Xnˉ-HPU1o)q+_DIӱ#@4/A]8.||=̓ *p5`1y`&AA7B4A |jOcܮZ(q06'L0᭏?%@|ҪKVk̸RZyƱ$ _bdƴ2}QWqtOov܋yVW pcĕnT^r[\Ik:6L&$)}cuCoERyQF~n.v uV{+2P5:O1co]tY 9$fwL|P怞%tiE5`%h") uAz@$jp;ҕ-ԚWxMC(z%%16.8ۄ dJ!`?}'ؘ,GE>$hM4GOԉw9|&gƳ)Y2lBi$<6nӆ [i?y;h8gh >`JП tFj*9 |y4i( nV* NN1tmLL@踫 d;L)sb(^ׯ>r:N߁MHZJPu  q8ziscKAQwul<ԽA]r-B15^#'S4+$֮p$(?Tm 1"5#F?w?=Ma}t3 &ONL1t͝q uEUa;J4xzFHgGQpx=~,!iuW'7rB*e:(|ABL2.$S=ZxȃnM+βB⭸G`ho L lrD8QIB~#췒>B-k&zssN $ %I>c?hQ l˱z1pڟ̥ffk\ϡ=7`Q-ۧ0GHȘW2T5Y̰\,Gh  ;z>cvL$AъyАw봥ֶتn$:L4yq X]mmH[@ѨBD>ȧe+RB֨畄qs3֙(L2۬L(ts2Fk?)aqS )NٜG'( O> vjڋ>MK>6Z9)"1q} a't!܅病PګMRRUףغ;LY;n{lޚ!8w'(}eH`ߍCԏ}KFʾjxWK EK`ƯFRX.&5\7`*xAy?)냒$Nz8u;F69 9DA%A2)'Pj7/gp1uRX^KO+} Y\ٔ{13 ZW=ɴM8=B"=+8(F Ba߅uZb J/EZ9/UvXtt,*=a*oe.sD| _/k,tE~ )oA@= C.Wyrs?[ Y$!)Eo>!w);_L5#'ظjѰC YʈJ}HsŨ-F MF/&$+q$T Q8 viFD}jQ=nYJUIQ4 2fo7^0ƒ e4ĻLA~FpDZ2kx8LDy[S[̑QY/?>HSn zЎl:, W;('ҙWEQmpŅ{+kb922A1ƁB=-]nS Dlpda%cD8}֓;KYe#JSMNOH&㙢2r}4~/+" ,%akeq0{NLv~J:! 6Jz9wVؓG݅w2 K&}腐#&#LTr)5Y byCܷ~(@/( (52{ ..)&u5NN> ջMqEbZl[!xG V(kC ƞIo1>:kFn7vꅂur@Aq Q:.}=rE%(sȱ(~&i@WnkgW|<LF YnnpwR@{ 4"Ӟ#ˡ+ sB`X#IZ$w/^ބ iwBBdi歷[E0UZŝĘ+GmYbZU6(bq xsq4 YmH/-X^x}Yyo b@5npjFu28 ЌR$`Y59Yk:M 'Jku`nSE^Vim%-*GM}tO,"t͏\5ABCK[]S)/އS<VEHheJdڑFVؘ e(m߅yz}o"(K'8/݃qST$oV WNWW;*e*UHڪh>nz8^+Úѫ̴`nEѷ:RZj/ Btk$OcLY+SAF*ъluZ: 9'u3]W-=O H?n= m >_eo_iZX XE?<ߘhZM &G >71-}>-FF(<;=U ;2[wF &bzfNkWwn+w` QC5R1Կf \qշ*`م1qM\x_X!qC vitdDD?Ą)KepdO> w%'@V>kLj5OQTp\{hbdvZ~+ 6L5VaCx.6@G*TyEHwsu z, FR?rz\ET Yj-I~ozka.fLPQm性N{fGXZu>\REх;ٴf<~p$ )l& l[}j(]A! m\̀qxV;Ӂ1*TQ[}ShuI-k5F5[ĵ:%sZxa}"H ̔yoxh$ 3 ^a.e|:`SL_8.YjKқF%REy mniVB#R [J/q4=|Kڶ2ďr5 2b7\4-P=)dsuqzR'},>\7J)c,>_A! bAIWNĪ+h*8|_w{I۟v~k6'vر]q7:菊#IT*ϒfV HYCfŻL 2%:ׂ1&+nb)J?21FUR{H&m-tQ-Ȅƴ b:> S0Iӝ;ؐH gy&)ؑmK f{#ͲJʞ[AڹE)\ԶxOzfuK=4ɹ+X2iR+J1BW# +J\qrsՔ'WXǀ?,h'۝ `eodaԑF,W"M5B+R[j& U訐2/wXe4N /`/ԓ=@1r7/ Zwx>v*$qpc5Ήe0Ce̿Qs*hO/P 3b^yoKH~.S:ا*b k$Ob;QvHC4dhjE%U ek;b8Q2 q `AݟAQL{' :Z+OוIJCM&эA*VY^q $,Fo71(S\O+墮;#=A=m[KtH@F:2Q  pW]CWVD3#jɾ9Dd *ŋvtAFKf?y<ha0g']Ly1Tp:tccfzn9Z!h /WȬ&-2Lf6;W<+hKSO.֜`VXo W !#ujyT/E#EHnn>ۿ4gP!lK҂HfWlFŎ ,ϨiVo`d15 : VpL#U|OCn E6T+ʬ".MU|UpgRZsrLf.1.U ;azSm7X,څ 6!wK ykX>2*(/`dŽ{i1AY0SLN XP<5e+l (=@,ЌHoYu5v>IHv]f'%w5} ww$$!lr um:7y%'xCS[I4Rt>qyd?KA'\P]5Wny |M:# ; *7%N79 i}8Rbjܔ7˄8-x9aW\R,Ii?En<1Ad^ O~㸉a0yL+@^?9#X KJtwHYi)h~0ӏw m=8"YAwaA#Cq]l5L>>!LLډxr޿>fC[ejY&.FJUgE/1 dS r܅|eňP ZNP}O}=7˧K@x߼׭y+Y͹0]SNpi$zARA%i'Kjb(OsK4*_Yoژ|EG5P ]d,k\*O5@ݑ{դ^vwpnBڕ#&ezpeYdw3+* &,Ấ@)lyiRbH?Ȣ^>Y)Dm$/@A)vv&QܱnSخŏ@3Uiݿs"ԢN/z; ~5R ݾr t\Q,@ڢ,s cn?=l%@pl o4k!y(߿qjV_grnMRDmJĬT$[RM{"K>q$Eaa(\sֆEa 7īT_ǐ빋[1vgx~xP>&c{8N:P'z8apcPr9#c2fJaK1f0&?WhE* nW1ҟVXQ1~ V^-zLT^APWU/SK%|guRp\`rpV>mˣH>i HV}tA^H}O0}r.N+!.ulpt>u-CxzJP:oFuywc'A21ßzj!LE}#MoM+D75 dCo;(9nna[VN[;DX%D ԓQDgx ibUt`]]Ѥ:aqB3kU1T3ڤ=|c-_XRFm_Fs=鮟xҎÍ\Y3S3?}S(VNq);u]t%y܁wEJI{^y$φ<*ɣ&").kYǑiW5Ne;=`k)lXP~:5`ʍ7Ԛ#X۟6(`#r vbH&w_R(,:TvAj$.=&ֈ(R־ǺkY ISp ?{oD?A0E]96_dY,iXAU9粀ÓLj)?4S!sp^ϸְ8Z*uQT4]veaӊ/Vwu}6oX&]RZ?s3D=!0idv-KV7vжtT.u} B$oU+Ҩ\hg]d2ȭ* KQC3_ H1xpy'8,9:rHjnGglJlESύJ.9|tt(-<jA$taғf:BIS L)Ahco1Ń]1QUD!84Jn9A6j*AKoY1cAcYe+R1\2}^QvuoeMl>p4W:@C;JrcYR7v危Õ8n1)IF_z9O`ƔOdU{22L2x/%d )b #z'26bussnTrޡ{ g_:z:δSe>oUÕdFne(8@s|vL DJ[Wվp( (=9dT7>͝lPZ+RܕC(xH5BbrufǵUep>42rXt3Z+#I;H{'Xp>`V_~9ނ nLu܀ͣTp4`N(BLe8v9 M +ie1s5C',T$b:*gz>N)3!~O Z8i]Q}i/(;yU ;rxp5BN~DעgYoH/"^nGb`l~4 ;,0 d* 5g@3ӑjMV2VT$qR oIœ+_- *@щ&]~d'qbHT*,¡]!x֯RWV΄p&C('WF 2T˒]̧H ߈+͞:A@Thۥ2 ]A>{IfjpAznDU^f6vdGSW a{ԞeC dq<,S?Bq ^Kը71@ ź6C"23K+oq+LБQ\sʒf,J%TgBimQ BO8}BU_ >yylܮ0~gZk.)|Rbl-u`|<lGF>;"6Cg#/sv|pmRxQK߿%"9H[C@J$]*c[Iޘi^}Jr7-WlfvUZcz [*S6h URǺ :Q&$ɔPʶl"pQ W00hne?EgwYӄeXp?Tf(7!\=*^'6%xby׶CfuSАhvTKmxD_% =r Ro?=2<:/+[s-H\E85(< wN [X+wk~eEc =:EEwܩ 3yެk1f2gAAEH:ѵÇ~rؠYȌ2QxL#72O! s&;0A @V_M>Sϑԏw#vjݝ3H,Uwpq$Y+xj_?| z<")ܜDO+w˜S(>gJD(5)e_8nS$У%'kY'~h4ZL{R}PB5B\&:䍾w#VMOUfb'Q/ȔzȡOW{2GI"%9B/gw0]u뗆et9t_ųQ^Vщ whɋ2r+sꖃ_-$Ui`sm[Mve2TfjU[91]!5390 #v}>l[\A3,B7в\EK`ꥪA&;\E$1 uk\-ER0y1QW}%vi|@Fn"0tʕEABL5"%s^|DǬ V[Zr\P( GLLb0a=Iq||;@8#'AWRUd -F+;5Ks&/+_NcOC$<(2VP+c(%wٗJ2%J鋀[,ϜzmΝkx .aš, oTnN=O+,G_H6%y/̓;$ \G_vIGPeϩ"z?P;UeP+{*NMt*u`yX+s Wڜ8= =&@Z,jlE6|* 9$L>.laSؿsE Bseh=*hj82ڲ5;[I/>| `Njo:%)5NTԐ]O>/gmZ+߰whU@'o>*3F1e?~ ?lE="ZtJqo1q{෷H8v cO5bB4CO3D%u5,4XHZcIϡKܣRAUqo<(9ԈSx9wb8lj&g킷QT91^*5ce)))=vsHn䂸8۟*NXiڰ@GmrOQ Ar6D"(43ql>XZ)G^3xu 'K ؽ?(G~5!'9^ىAꋶeC(J izfnejYdVh B74LԎV'VʎmK}=KU.@廨NU{Υ9\ ia9붢7JdM#gx+rq aWCv6jj%ixS( /G*E;(~i!jDAA`#; e#ߠK95N XP=1K29iS Ǯy'7D~k_~$y _EyɚrF(&0F[J$'cJD¨J낞ƴfEbs]OKS2FKo١΍ BلT?6f) S{V$!h'{drՖpqM`O1n#[ k >" t܌OyS@EDI2dYWx $"6B:ÁXIg2Ңp -y6&ic¶gWLzCvSpviQcӏ) /sI@Vk'k_Rˊ؛i"Kρf-˹6fqeK^5ΊOU= 6ʹ }@iTlۘ59,h<_$LBzqh53ɀP\ QSB(BΜ9X&bπ4KL^w1 ϲny0 KPrYltbH\j$X 'þ wkYC6~qpd<&X_W(Y)$<wrtjoE~ÖfE䏊mOqgb005ž6=03~,7pƂuhK඙tvW6'*O3d*}%M'.ŮWWA4ya29AۀN;αۏRPI5&<BDg);eFd6)a(XT`R؜ͭxJTft߱x`Ҩ7Q(uՙʹK!"vB@aWZ >@D|ONx"א|bUSq2F3\Ϥz]풰"AT}Yn_XlB:ӔSb6 g5,ݭԱ]>_9׈7 '8D G[3'׾Į~_rSL%~^+)qNr$q~Y1fi>j cK40a&b|jk,[-;͟#IEYf7 dq[myi :ufVWyl,Q{%˞lH޲Q'rK2VKIåW^1g @jVp.5I<"h:8ާ}:BS\L⿋F8J7{gbٰia=*q 8ʜ:#̑8W𙜙 06A]FE&6-WײQĻdջK&KzdvjiN*\$&" }/S]j, ; |vr7?hK[׳4؈/s BNNn0يP-I@,u(}g6ӧOfV;9;5 hކg̓p({Z,9/Q٥3e|ڃ qrAUR v'i{Jʊma˷vaqW:s{.P0y`K &Q?/ ɥ,LS~\Ϛ1!"B׼!D&^"H *{*E[@$h2ٲ1׻ai% 據`(sgL(3jUS` l\Obap W壥 T˧]3nK^K_l3%!FR`}qzŨ(JIJ21HE*X;'AؤV9`ŖCy9a:%9#A3_up.WN ޜZQo'.?λŐ{'uHt8]A7 Ιuz6H3굗I^E,#]$R^MQI~>L!l7 Toxd`EȯX*Ȼ'>j@zD)GK ʁ('JV˔Tefw}@_+?Cx*k6@QϓՄH;&t?rgGz&d79f'*TRwCs}JO=sh,p]=z3Cxd}롨!e%-R-6:̍wIB,|Hh_۽u>$·gS&*M\꘎5Js]SF{M]4Y|\v5&-*Ϥ]؝4_ roxRr*)T8fhAK )&QS,qgpza&OXFiTsP%\4Nk BywGGVŶ O lTft^;#\'miD vgN D`F%[B VaFҀ{{CyNGnAje3Jm*Ħqƒmft^FI֭}0PtYDmID|{5ȷi[XgltDKM8+b{A 15CA}5jʋ!5߬)X8cS:E|C5Bn!Ҏl;Tl=uN xׁG}9zz|'"PJq}fzدxdDzu ¾XXD[_hi% ,t?(TL (fZv*`Bp@T$ojt~JQt?i_D0H tp:E :{jo!Y\8H.mNo8A4nc,m 4Ȍ~&BT(ɲB#5l9V:V8V"YFڄs7<3=҆הD=TjPiv ;hP `= ^nFmQ:JF"]_'HZ 정G$A=M~3!Ytve¡LɋC,B{~]ʰҟޗ%0.ɶkjD`-x8\P2p}-, `Uxo > >m1`WPgiL G5΂~RvVaiɢ~ 5cY;Ccpc<Zth?v\PG vcف=?*C'"+X$O&׭t.聲NT bH3 27zZq*G SLn/Ew`!ut 6qW? ZMlyE| |M ߠ.z{HYhݮ18m8|i|ٚiR^1tpQZ%ڏsL|g:POZ$_ef}Jh@&pϋZp0*{Wt}Kwx秂$}{}*]h+8Z/;dZHba'jb9O`0o^w#A\l:d@*󴦊5>qUK["LV8T EcKϑ ZmW`/vݛE[Aw=#o6pSBD)z@TQY6U>K.*Q0>VU *2mo%wt"L>Mͅz"d2nyjC͖iLQc n?Rd]])X* EY'}.ɴ b=Nj^?~ϳiD:M_4!T1J #6|"y\\uYd~0ڤJx=86Qlz;툤_Aka[]H }Vo[ yx7F,%nXm,~>o\\Sr$ *Lc4(ZHܫ@3 ՐY :%ul\+hL\&IZ6Ի.0f>3X<"MXsPhOSuYkHuu!Q ˜z^ů^&ib 'تpI\!ŠggIhݦg䙸QJlCHR3=0]],ts}:9Ժx҄9.w'5${MN)a+AF[&=Ey񆚃dk>wO]y A Owe1(bbTn{flyćSoU*wPkvN)!z]yBr1WǥY$@~R1fiߧڎ&gx#xK[jaZU>H>ߨL+H xx(LJP2 ^i\s`? fR{.ުn߉<2  BaaogSqVޘlfw?_zfE41$s S@AWBH{q&kIց / `d R/fxizlHB,Ϗ'9:+G'/~/͙.\2! DlU.4\wj#T3;9P73Fe_$UY#ņ9E# CW3?;*kmIJtca(zaƻƒB_DRM #k?Ħ m'7Ef0aݔ|eVfDR'ΦqkjhNw=]/np)ɝb/zno >>}FuԦ /+pUpŜf\pMTbI↢H#DA0c9G kR@HΤTExI)6/M*,5m_\,{w'8]l<]rW)ޞ'zʬB*s v& 9*>ҧ9 :ϢtoSYޱcFCߙIOɬhT<@jԐ<% o1o6u4NJVR-z]"խ/io TI񌢀NSU D"^%a\3-f- *B̿4K<0YY1C)n@loD\>;BN |[7|=E/bNGϻ.Z/e, (obn,dq *jR+5yMlBpQ˚.G|Z Ѡ'|+F*m'5Yn٫P8;ol3`lB/,vs9&G`Se!~j@tr8um8ﯿ2:}dx:,fT*7FE`r| zo|O#N" Tp!%ŪX?VhŹFTWZFUЦO;dKH2J1ї'>b(`,Q΋$cN0,?}~71N<뇪j&~Q岈[.r A֤5XYQgTzcL~OLv:}"as\u#Zx`p5hcnz GVn~d,;1.'){l"94M@,mCxeHX{SHo@H#M62sX9*"\KMN :jf`3(l}#cXE/w 8 cnuQ<F?JR *#1"NȌ\o@~VM)W W)# Ye$ Obm:AH`ubui-3fnvʸ>Qd) $ Mz֢~2ʢٝ.43ZC-4OS0aV|E$n;IEx@F8Gl]G5{ Xd9~ >v b簬(95d+3[n=j3#׏6,5(RWKy4YnT0W`,`Bˮ))."6VPk Z|=@20|`to7u҇{aU  5МJ?ܛcOٵԱ/46>@9P$MC uwnX3KUOϻ kiѱ: Bj$wV 1g$0@΃ϫDB4FA˒$HCC[VӞETthk=J#axhj:-` XTsB;z_׺fܦjxWzԟ Lvs#.u\,f̤ Vmgt.)(=Iބa茿l$Vq3EL]%NlӃ=/(-@q]'?lE[z{)P\@q.Kܖ[3nx8nFa#%XEdŏAܑK>/f5  4YPC毾L3kbppG[Ǒ{Oa_D#\"C1 SmUM[?PT9&g&6,ȹ {oFP/o/4>"K}\>6iȾlzht{-.;HRs=>), @W9..ҡ`$F9ؙ,U{K_b$B븓CkQd?r `*tt[;$8`Q$ɬ7A$.[0Ej>NN^ "ʡ-󄈹vKoAzk#"HоJE b ^B*d(wϙXN t+& ٛdBN(Օ%*t|Ŀ"0yjɏt%l̖lZo2+؁bhn9EH=HAًug2/"5i |@8UNɌ^VP>HV$@^|\H{%,,+IX撎V㧋?*U2[.fXkv>w'0B\>wko&̸$^`3hm¿掁4LZ\] ߾vg 3]Đn׎JGtz u1vjn-|z<K oC(>BKy }W(kB^!6JJ*stNg|3Ip-2@:zzyݹgI; H(% V{wqiB6tigA⿦z1naD-س,"$=QR?0 \ި|I$)5 iR9= 񔶋l}[]MdҮ5, $n&d4 zD6J tMbhXB"Jky#n ޡ2猒tٲys*",/x3?WCWlQd1?',Ά2NYH%{;$+دgCb3Sr@J >20܁5W K8 kbӯJ^Xt\*8k#H<TXIr[eMسGG _V63 /X5!:|B3ֳXH="|VvVri YeR+Mj&Ӂrk(F}P$-)%fh%<״({NP=80˙Q&*C+Kf/\\K.W܈lmmۊg@Ĭ' viO5dVKs^r?jz}҃I %7yl[FŇ'̰V{N!؝/o?Kc(#HZF`ՙڶe2V'aYMs溔?ZT&Z-p#Pe\JS^,/s˜X pq' [iKpJ5r!8Z y_6F֌U~h0%E#lK 8VFm1f?U GUSw|lqw4c?Ke ~O+Aoi8܅ ,Ty0 ;ڋp%xmHHۤ^k\1:~jb\#VEZG SN1On(w>V]6q3 R|Tl9L@0]-ѓ *{6aî9IQNt R,rW͟kY"D3S5IAeA@_zK84y%8* .N A z{NN#_N*uPJ5WgwYi8e(Pe nN//.E{P -փ~3i pt[n'*b[W%xL TI!cZ_@]'ϽTW#9R)Ue^=ŧLz&ЯaP4:؎nC׸'^I 7k&`r-Q9UV݄*Ө~[MdN=#pX}|Yh)~X=)Ph؛*# iWt܇r፬ Z=SrZT-)l_5A(8|d_ug"ilgHGHBo{=d*j9?n~zx^~ ᢉ!Un ;/|(e 6p.'#Lrb55scov!B=ȋoƽ1Zqƭ_tTk\!Vgp*+^湽$Y1H#/?PxC/k^[1z>El xͷkN"LN(XM{vSL!ǹfIgSC1:t: 7r ,^ bxձkh/Ib-6E^#,N!E՟vPrS ݃9 &:ۤ+iuV~7 yd)Rji*9i~Չ0~/%GO ;)(=ͦd9d2k_ZXBbze=+kߌLa%pR[׮@Y?ho:kBV6fxsa•rS$ANiU#&uh& )`Pgg SEFݎ\:{"r?B#0&%}Ii:qtƙEyqU.+w EtKV}@pE1XAwUUu!D7ޘ{plO bo8wMpvy,orr/x:g'$S6ǘ7Q$wNB>5Ax`gYyh5#ƌK|simun!,ǠIU #qƇµ8(d|)` }]&?FW5,BH{t_rb/iͮG̙KX D aYQOz ̹MUkoo.U!`,>W=4ȈeH!.$S7NC w`Lnqd}5&pjmM0P!3{IK\(0!51x\e Y}ՇTK4ƞٯ BloߍqK@5|%yi _ķB<ځK)VL9BPk\@tL{^gKې7Gl?!j 0q1Դ7#uϪ!cB"™xCScrq,3ھR)4RM7mR!,=OQUrJ84MhbIW20926gr+Ä9B0.cUӞ`wf2OQ4<uMK? mѦ{- iU?RDsN.t8(O@N ʖ_"x&iLB"CA7|e4pysё8I 5~4TGc1Z ёRM) T*& T/ġ_+At12T'I(EtDA3uXcҭL֚*pO] &>D $!_h!5Kv(a`C@0H$ J\A+gƪvDBIxIu:ZfvY(yÃ%ǼAAw<&p{Kf̓7`jOӡn6Q茨+|:bFRtWL˙NMCA[Ta,rG$rݿ & 1' W2/S|bC.IMZ= E=$ĕkPKy{Vzx`&3yr/{t`LNdfz(hW378')SjPp$-F7YeեKftc]s:3u,U'leA,!׿k0Qv5jA:3XrHq Zt1OANWsSOIvh*N T&αs*QOKE)&ѵ)vC#:~{'t+ RqPR[:KdSc  B ,JŔzۻ0Wc} k)JT yaS|'ݪv6>ċq ^y qj+@%"̢Sw>ljhYęPzb0 *%vQ ~CnBTbAr0p*ں3>tdş(pG՘@KF>$S7qʬe9뿢ISQ CvAt`p>Vidwkq'x{H] 8(/\Ɔ?.pZdt16H܄*&?pdR2IOs"+Ȉ̿J]qޒ&聾h }?„fѷGaNf\߈cgP^"cw8ol/>d7<*'{xu*]$\bÆ-D/.exv :ltI+ӵ{/= ?:U"ء$>,6dW_rɠƺqR~E[ne% m-+]b+>C;o QC$ SWB~ɗh7/p95(GRf<qP) р)ͯYTzq%ž˭y8wٝ` {u4˹AT3dh-uhwfFR\2Rncl[TJ~X!gi=\07,e7{s:~8˼)3MhWB2D!nם#-U1z}r.Au=lɌ}k޾""d<틵2A*rof:KRfڅi*9I 7 5ki_sMW1զL=[ori#w9uK8rHa15H(׺YH)F(ur=RvǵRf**zdz$wP㾛>IȁLMy `?*ˎ/Hbs\O?Nu~X-hWϵ$45Ya*C€`Z^~dZ_"{Ez+[^iLYP .p\**nN 51?@|Ɗfkňy+h lJ%vHG5 vhU֪D5(0aZ:_j@esNɣY-4U_G/Bкʀ*B!zϘ9/ |-_~,#D{衰UJ.҅RLa /H+s1L( k9*8FX7$!Y2[ {Na1?5[˼ސiw \Zb:y^.rŗP.]z qM3):x зkX`xj־T:xo\w;Av3ü%Fkz6rpCBMaYFSYqd:ՃИim;}AaxH.Zjbg;8#{ dMKRp; _N.EuNnNdSsJ^`ٜ9W]!܈+E`iU# C]>Mؽ%o=R%<fٿ :t.,1;=*d UWbdTycl zqMe-0S4^ g{(#o~VnLA03Xkgay_S̺2sSև,; yƀ}:wfK~'Ux)98\ CF " -^i>@וa4o8H- }Eޒ,Q609;,HƐ%&nAJct!1s Y\O$Ͻ^x|9H wmNĪMǛG 4٤4LݘLjcu3Vw b1.oo<gWآUyN Kp,JD(ۧ7bޟ;.{kR#SIL$:˯m$QJQU<=FU$Q^!P2Wa?|5G hjNy-g]ːMP)LĊ|[D&Zً鲁dHRZ0З>WMe\]|#POY&`chom:ڿOaq\_ lv'Oj$&B,&2eǙ0eֱ:89]夂[a|U&VԆzZG5{!vdڥCi~ZZ2QU~>}[0N*;_d9 RFgTn iNBګ^x{ }zk+v.mU жnha._3Z> rTYlHv#\@T{\2zY7Bw8R@Z@ ?yB] {Z\9yN,2ˡ.r8*tԧ:<[0Ҷy҈&*|LOLtA5?"Ie^ߦtSf |WN0j{ȡ2Pw,ٌFa4Kb@mT0!4WKLePe:毶eq/L؀rX(V TnE_TDoOЎ]!?Ð0檃Gغ$Puv %^.T0411D)nLw7ݮ܏U:tҪ`EN^IbwHtV%A ^0S.|)9 %8a xd[uFAВ Hy~_ҙf!u*BL:&X#vVu>#o.=NW/*#%8li&apqMQ[$Kv IaceohTVf1Ӱ,wMNJES(ɤMҠ*пdZ9R8tď( 4պ.]sgRt7@5/Խʺu&5%ه ᔯX.cڴ+-~a(tKei+ʁ:Mt:39[نzIZ#1+]DKL\T?lcӲ(%=`zQwԣQUCiN$DrC\ `fe۫ur@ қt^uAP\}kCgm/.-nqf6Swg=oif270 lASNkC̫3g44&>#3yRCKSJ9qN ^7 jV]@٠mwK7 79JyG4BUaYi FJ,nj{<-NQ&7 f6i3M2`' ZO ]P :ui|Yͷ:?Y+k5oEڀfO(rj|:t7g0Q&@i"5 ?Jgr^8?).rX*0#u܄rnNV/o8U!oD/d6;Iz G$2GPWd=;"rpmbń Tmƕ|w: s^>zn_*Mֲy% d5<5Fy%M-%/1|)UiQ{>W}ݣ&C|h_1 $#G,y;5 )~,hr?c%@>CiH,Y5׋v0.lYАEĪQoYy>Q@?`fgaݫ.Wzcew &'ӄ6rIJ*KP~&F^z_k%6)~lYlvc\as>wfD2l=#%EH}q6zh0?wDÈum)#t:!p݁qFޛݿ>phNʢ">JgT"9uV(F:U0ǚ7F>c2B1EV&fLˠق딛$LaAQq_^F/u̮o&j㭨$ZhHظpЅV OFu44cLߖ OPb3&I2CUru.~u'wweru(,JSN@A@goI8saٖZTR݂]/sl*}f'=SHE>]ȃ^+8 /w@"6O{ pRVjWz)M5 xy4ܔ}|O~Tђ].S%LLT"1gjl%ƅdz_g>;&~cz R>SyZ+!4כt&%E& kWluSyB!v>hu]ݿ`J܆L7piO/jήQX q6KjS!fs5hso@;$Ϛ:&TqqzL5<Z<477.)nKMHqVq*oDPJo;q{p!'ŬM4u1lŏ|Y!Mqе^sRH'Y{Y4KZAc_iyW;s:eJ`wZ ]ޔ㢆n~ :4"-A\k4lcj연ԝAು9qIE!J8ںѤzdݍbG)GY E-صqzS~^rt$#-/]Cѫ8F>Ib \g^x$1hExjUsFG"2n)-PS7MYX< &̃zkTf}W2VW;d WD'Hj EJ(ġrgNѐo%AxAޗuw/xl '7a6x- .h(͊sKܲ4}PTG`fbij8Px-7}`hw;'a\\!&J78cY9ۜ9VX^˹8DWY3[OVҘN3d: d=.wCֹKsAn8v6M' πQc!s8t䡱X¢㓲MW8|vlK 9ahcYMQQ:(B1[[(Jz>kgfr&*C܏Ih7 8{'DK: YXo{~piM9$i?%&4D EG%œ^0\F6H4b1Jݳ ϬնWOz@[rڝޕXO3P:ut"RL +$GSL%@ODit,z[&wR q/#&c >~:I@0hXCC|uqt1jɜqz'AKbQ;H#!eYy(2''e9p?}h>ZQ; ZZze>&A:WO<}zeZ1σ$,gFznvjzb_\l1H(g)8 /)"Ūt*OR,0a5^a| /hyop YQ|z8ڽk︓AtݨOpRH ǻ򧲿\C تYoMXW:L";H&nOL2O#ҠZtfNw7辗RԶэMn@0rM: ȡZ0l?A3ݠKjtUNDi0 $|04;6 Fu<^[GqK~B&`Lu`h=SWHv&i=֬H}~amCPJ-ZYH&˕q1 MS<ݸǯn0+\<zs)?%J_#bSRNUݾv [;2n x!HxVƦ &DM4+"kyFQckS=#AZvU6Rd8VJt,z^?<\ Ezwʌg.tY?+*RaSêVRث"|EwBy=L+oXU3' qgEe]CnEtpWU|8A!~ldmNM@.=V.,m0 v{|[0}nN1(nNpuwz_a#Gvt@;&@M \P@,淐)so| }Wl _[ V$$Ń^̘TBpx# >l@KW ۴OIpz72khl;B16/)W"b@'.@of݇Ai@90褋K^;o_}%2igQ8TжVg-s}] s&.$TWDC14<G'oɚTSx@ ̮]Fd!* 4>MK %4,Cvˆl Fk 7-⒪~P@iVx?Tjfg^mBjkq۶a`R]GŮ7*O5kZ/I( @$$Қh@i gqDDҔ=8痂 KaRr8=p AR|d&jUnWuî1R~Q MY%Qq}[$E}rIQjLذ94=Fdj[;aɫ%EM%Rl5Crٰ{>pL#cSe:I5މs H|8A^u3.d xJr8SSc f5#=c*-uqm+hJ^ ^i-7" < >M$Jnz]Tc,| 聒:DVP}40JhjBMp8:(PrEw->l Kbxdd~;^֣'1e =[Ywscw)Gԫ>e(<KAb0^ia ^naV4jЦJx5>HHf*wqM;hKu0'3*,1ŭR0Hj%O5 'a*Mu'W0_%U'@ G`p) >y;ÁKa~;3>_Јhd S~0\e=v`z5znS"B\ЭyVRyP'mҘ]"pd^g"X rP\ sK:+vľ+`Ύ= 7,=D^WՔl#Sb VNo~a5J~m9%_:fcèrs (2|piCr9IE2q*DNhYG3sR*_mBd.䅿У2ٚQri 'NS~0A.HϪN5gO5DPDD}Gf& G$8N,HGt'-dd'K#15ǜ>Cv73!1%63fQGɖIP$cOѭx"c :hLS ps$.㹞VōziNӤvs@#Ru!*k'~<~o} 6_V&?Fqبjlû1-= G[YGbNΓcvnIp\'uiJB/==QigAJo/8 +a( wy1Tu2Ѹ98[kճ?qD2XkQ!vw+?x .f$Z4ds!ZuTmr?:`~;GZh@%ns II-`-XhׄXO=c1cP;p9ߕ1*a`*Վ+DQB46(郣1usJ%Hc~Ë+X#m4 =Uk7WOH0p! `o*@ZDZgGYWVLn i 6T7Zۜ^N_n+@(DRldמ"iIb{ӓSC.ǭ5Qubp<~m]ʣ2U{=cuXRpZf & Lg?r':ERqGRkiBu BB?7.KKy_~zє0Lq1 w,p,{׳9ƽ~푣o838֪>|Qoޒ^/w5eC)lzC"\U2Ez |CT垶Zs+3מb!r3l9]-r}[!n^fTxbr G+` wLznL3( ~|-*À͢*~v)q.XAiɬC>!"\'.*y`>Fi*ȅ(WG $ylrR`vag ~}'qhW/N'^PDr9=9! wcJv'HOܚ"1\v3K2KꅋK񅢋b gEj>RhJ"lghlfܯ,+#GOB'OsdCG QXwV,+wܹE&pwa'5\̳q<*FןuȺRl 1=YWПF_Aۅ-<@l̼fؔ&5d3DD5( I(sOk w1Ít *j3SDy dF@pƓf2h3;fnuH|,91 'kM$c1R8#lsXv*!Ӱsk9}p2c {٘jQwW>c)qrQԑ!|]Os ^6G&}Z61n/>4DoX?tVH bC\ Ȏq$%~xI d3l(vBWkcקIMexenwaK&d\d=L(7Zw%NQᏑOA`sK?m2DsTGKOV٠5! p Eg;řuJ޲ȯ&8ώR$䅯MW5s Ի4g>65w5q:Nœ(B96ƿ]YeX֐@t,\XQC\/sшE͸mN|:ixB~1OsvP~= KCAXQ53K/cZ_16l#Z0ݺ\U+޸!@梖zY(K$Xk#6ƾ}L[HKtϼ҈^A2 OR˗j/shz]oˤ{."5{k(j܈6d`^#Wu-,jSI2>5ƿ^b$A{5}9PyF<% =hmeQ fX6Kn+kz| hUH*=b,?Hz.ny_,w $>xc}Hm٫H~(LL 3čyzO'W:7LLi!P,zr0v RH7m [ O_B^Bo j̻ MAݤLU†wLH=a3UzYqS۱sA(5覭8UL:6TyY 2@.QmX7_k~bw*09 $Ndʡq@4G X穾B O"˟ N;, {BmkzN/aPY#7l,C}KsߚY@CRs"/]Cл)z>za;M(Ѻ)y˼KE<*jY\֟2غ_UveX$ ]l˨IX6+@7* ;ѭlnkq [1NO XuP!J#+/ dB6~@nak*?.>^L,{YϕX0֞}Dϗ ufjC[ sx@^?oV7:ӝp*yuKw}?vI\&Z喍2M wO~Wt:V`;u'ȇYm y%L%T5(NcPU7JI>Ĝ2V죭g7N;UPuZPl5VTg{x=5CS%?\ׁ3v8+U 8b$-Q, cQN4%a>}צ=' UE7=1RP@Y,q<ᤸpy@yrp^QSGj4J85Q㢍+ӕ$SP1CWϛvmBls#JXV&Gɼv~NxD X3>+[!myv A-{1Ӆ@O$p*r]n.&ܣjAMR*'=O`X*4[/ؼ}  YғѰi㤚nJH llGgF!:.@+1 aNSxw^]!ǦV:\W{|X>8o #j#9Ia)ޖ _ FaZ^k֎̆} ^e@rdvݜ^#?=S⬝DK_rhL(&˥7$ 09bq DA$-<}4ϬC-va/I]l[  LqƔl)|jnNVCE7nx/ys+s0PO"Roɸb)PW5I}j$8cjMPJɱ*^o<` @#?nmSGrd "u݈4z‘>g)(֪E儾 2lJ aB i{j4 x-B(500݈P0zYWQ.&?żvK.#~YFcWp L &k'|Fb梶&rwP4)^+@}IX0יC˾mYԧtɢ3\ "pxO. zA}'Eh >6FT8C/*]kwv"4aK)(QVe%b.{>"+J2PpX?XSǏ,TDYNh Q!R"XHP;dW"Ҁ[i",(1 3cC˪%5qe)gxmZk[5a 'U`#XW/+ز?]}ݕDn_ e:T ]Qx3U~Vdml79d9 |4k8<&L&Å5wC&R^E:]{6E5Xwu5Q}o,V d8YOuXb !m$ 7XkExWch玗0 d|"K6H(/n9*ó//l7/9F Eo B@{9ZZ"!F@n-+X.a Uo/[c^I֑TUUiY*j-;q|Q~T-nkH0ЂܑfѤ4EKw4x.e9Bgc`3}bUi0ǵT6hBMFdNQ"0uw5uwqx='T F#s  $ƥApӽ4JL 61MÎo!uA yx.,E4ܥ2<h쌑[H[QK_{L@cR+S ;W2>%r=jTy6cX;x Α ՀHfJ7tinL0HFx(x̄SoWbŞԴw7?)K[X&¸FhrR nI+J*?x0%fe#} Ѭ0ײ&?Q/ɪ M א`"]Xt4kU`.aI9VBKÈe3 n-e$YFY-,F 6ŸDZBr'ĭcQ/Bc-P˼+yehTw x{Տ6Bp,w'tOBv Pڮ xXIVU ܻUMzq8%DgF(ԤR۲:e.VEC+Dָ7)`zÇ[V2uhX[PwIjOE&2a{N1#4HEmNo;(9 Q'ȨPʈds1Ɍ>%Z_^ФxcF[ȍgQHRIuffUVT-B +.dD;̍n4_yZWEPhyKn zH!l ,1W%[8?gQ.d]ɽV(\pV嶅@n ݑ}$[b#O72֮#Kdvj߬AB\{ѣ`q ҩ!9ah4& uȽZsĩu++,>Eh}>#Jpncan],^CʑK2Bj$2 3Mg'lY9_Cf,Ȣ,BTu0! #ǚEF.w 81Mѣġ\VFK ei]jxYrzت?:̥@w%9۟Ew+{ QB詢LU =ʷYٲCMr{:aL/ÁZ0X9 [FGdgzԳ5DeJ~`W{qo~q BqLW; ]ftI5y]C׹ӝ4p*b,Y 04;"RZ`X  yMʦo6-+~c֔#K@-Q(eqIY|#Ӓ5@֮2591c#>гWv5H3ϣ˼ nk2Ⱐb&A}@]cp)#|A9 iCvPX#.d4azAgLB"LAl[ Oy9o(!aR٦9a5H!m?v"`uF,'ąȝmhoMFRbq]d#FGUB'I?)u>thHd@pt9ERs9, ^|SR_±iBc)&~BПs7UXD Gxk|QOR=q @lQ.\h$9X43ӥjߙ8u^ qOQE̫: K^w ]^ϢU̮`,CmI RopsQ70 kv >m+:],ݗG"*Ҟɖysvϟ 0d {SuSr b([IW0 :_x$R۳܂t笣pSj ߚ++ 52V4Yy}q0V4~J-)=,Koj07J S"tZzJ\؜H]4g1(Bagi1]݋yɿ57ݕ .OW"w%!GTEv QU j/i~nay r/:>K&Ș2xK^%|h]G:q2llgDnT6b~e! y;5瀬 ]`K  -^}NB2=.KjW:(3*ȡPvZbe6zDɼì_ $| 1㗢^ V7R3&z\#JN%Mfbv^[M9H Kӷ 4?nv-)$c'Y7Hk-7 k4dVH5VGx ;a`0vzV73h)} hxJAS4c emγ+r0a*$A>>pw߬%u?;[;hDgF:B>HNG+szYzT j-o8wW7ؗ@[R2 (*8&m*p.q];i{@Jux)+iC4{M O[9嗉UN>;5 LP_/R9l.,v;KTO8R;6V)Ԫ:ͦ[bᑠ-Kzeߢ=-[[4ٰ`/Mu ;1%?MG`Wr|ٴYmgF](To]2G`.*ȬsHk v(译}pbr3lK71Jԍ.qPCOGRW$ڰqBVv+csBGh!VA Xt.S׀o1%%k0jfQxcp d;f*UnБJT[ՃK95SZYjMMTuZNEuI?Hy0 tNM2NSK#6z wZU25Be֓ԑ;J >:a Ү# u)% =n +cF.=dUUFV0W^]ml,?lPfj'g!? (NP+ `:-Y$c }i "X/ø9JLjR]g 8xCGM]q JNU_${` (ˉP.Mhv’! C0Л64rO vT_f5E, =w8hg&TjP<\>l&ĸMv7j} 1 tp{0o\߷Y:׆c({݄BR{ܸ0vUnWH/색K/!2nTq"Pfr,.r*7MHhs?G+.bil UmΥLqZob z?juް uJwGoY`Ǒ b1g(|u m^YCOO'\}fni Sz4r@bJX 5ufY樫X % g'-C($.Wʒ/mok )$/,84oɒɏ؄} ;M?ngkIvVxgr빪˶?vڷ6:Ovb N.v!%}=e2σOs;~[ʸY]9R8U}H#ZI{dS*x+< }!e[f;o/ n,&:%W ;{S盙ylE~-А2?{ƯVj:T |_͑UH hM.0~0Iۺ>$Xw8*jH7P/F^27 ъL`0*5Q4k<μ{+26mhAPpt.zLpI)tvSytšFLwzB`ˠ5Mj[Ĵ*οfr:B)uwvHWejq9fnj\!>q vB&Cdr4tlI[(At)>!brzuՄ/m©nsGTH{=haIC‹X .#tbxzFU(>Num3e?l${:= OPF$m.dߺVx{DS6-+5Ýئ7*7UQjCFϐ-uMk3x$YSHJЖsG DȝkzwC,r^xVM˿38D}$Qy[OXbѹa9yOO" ,^,`Zp|㧍#s;m8*O5Cǖ< r =__'`h HԖ[ wvf^=žoB/Wgb׹Sڗ*-[}U{ LO{AFfk!O|[[@T}}q/ѯ*HkXǑF̼s )/hЩ}"/K;,4/ i\yAcJ1R`5)8_3lA-Jhиƴ܊\猨ᐫKg9GIKM-5 2fm|!tr:=;. U5V`:/S1&Ȱr@n|fup &9gD7y'mX3ț8f<܅<, JLtm::9 dG ہc0(/kND5Ɍ]qeXRQQ>Zw"5.*QLm]:DIi"]Pg[t8(uu )a߿7?{vR`%J3u.X<}="Z}6Rn|*8`_[Ǽ+]:RiCTl8z4n赆I|v |1`1sv_N44C+#3AV23团:6^nX0X7>IiZ.Ȉ~cuj!j%omca" Gݰ̼k3 ^.^ovTMAϻ4*ɭ-{l|Z^+QJJ~bj]CuX^F2 9 \&)4kX2yzqUx{bۀZo]BҟFH>Ca D)tenKpr-lӂZIh#Dڙ$hR/V̎Foz]g;~MA> 5]dg Wzo ꮴ~b\zw}$ sZWN"OQЩس uGciD+}4UL# #0kLOeRߪ-~3xLp{j ]dpl&i NIvWlT^f95A$,|"Mͅ!Bx(1L܄!-j9V*R |h<Xp{}8<ugpuӶvn_k": @ dd %@soJ6WWP=çouo?*rsA([sURCU*RlQ3W/6J8R,0cqscN4HH}l.ZтH/̳wZ[r$rNT}Oك暴E 7AT55BQp0Ea.MD};Y M<ᅸ:1e*Z%^rYdV eZ }!{ VhlE^@z\R8SǞ^74fE$e޼2u&[ բE%aALG=ϟc nY!F]W1N2_0CfR Hqp۪{:Ϥ꓆~k5>1E3&\`qK,k| ^ 䲋A%2<[9G- 삃-?aq@2s=k;5.͔rCW<A^ WCY9?ZիMЗv;m@Q@=6%=s95TudGȹEULO7/%G|T ۚ~txJBL փGHĥ/D4wPL邻'_C+S'J%p%]-0bUh;I'AB#p]b(߈ | R9>Y""2ep:-P5\HArSnjWelփƚR eg eȜ !(Ţ˝W1EX )ɬ}{)_th<9-)xx:}C80/L[uՑMF2%@$uMRVt,G4:Cލ@"@uS]79mC1fTsUmdf:Mհ:C}5 ߽;k6Ai'K`9MUӲ T/@P9] NeM9<:)`~BFu;8)o(,ȟ}KF)P M,x Ig f`1')_ZfӰ{BRHϗ?`uV!L+jZ-GExZN_@ bXCȎSBsPJVL +jSRgZ.آ9ZSUQ@<5pSoA7MC#wZ-WP9|jχgk QzچE1|#ZC?ԣs 7˴o/\i6U%ڇی4w#*޷jv|x.bSgy'Cb%5ˀsQM0:Ǯم8ES"(֏fIg1".H)44c v̯9 Q>3~A}R,OqO`]:Y'vWGHOdRm2QDVbuxU q¡5;aOBuU^tm>!܂ֲR7ɲEq LnSyQSƞ aOɻTIj48/?V l,ce"`Bq]\[ Gp]xo.hnorwok?`ObKg|GR4s'ZGk?5D,0_ttoLKcX:ݘɲbm?>d&rJ-ٗ٫[Dy SF;R Zp2B[Nζx$Ͳ_;B@d)o1)OlN'|8z <.%\Aq _Z !\+Xq[- );m^I;,:CN0$:v9HLpwFWnwt*%E+2wd~W¦G(6:}[95tGHgi 1tMڰT!ܔp?K:̂EK'D4X(p^ [g1RSgk&UDcg%[y} 9UGC͔dp#zSﲺiwtzc)"(ema92]z18(7yZnLsîA6*Z.KL >uҚpp͈q@gx`m}^ Kikе. cȁcs-0'wPSbaZ *L{+& Z`!xgUv(!`bU }g(SkxÑv'¥]8:Sr^j$u-ĔiHi8o ϱH,0>D%XDʠvBYp ?*%-/uK/zM^'F}d:?eF^iW,߽VyߘS@^#qۦkc԰R%ȠY. +Ȥp!d׀qwëvtM®W$W_+!Fp+:yD3*JhhFMN;LjwΣ(-&HE?\6{ܑO0[&li'P+'K;s$ۍJN8KE2$6u|% XPwJ~A7Ԩ ,3-%bi.MR+rWnKnt:DzRyP[}+fNUtWtcwi@H@ݕ=^ zap:mS-n]E1wVI|CPe܇j5yJ;\֝A7uEU֖ H!}Cͣ I:|4OE}hx%spfjysW]r"I #<87>c  :mL6UE9 4+Rk^é2r^wմ[E+Tc="ӑ_ \ 1$.ޜTkJVOW/BT9:}[(u6.G^@4V׏OycY}˨nFDbVksHMb]*M5{+X3z?'G{] \S8(QL>˽WF$p`2A@tڍVSGГa4Ͽ2!(֜vRG8JMb+C# &h/?HC[Y.՗qn_Ɩ^e/v;3ٗ@\޷HgE7*y|MCeg K&W…)E䞗U_=Zuێ.'Ym#WCW b<uK4U][~ѵW/Qր 2Ю%Mee66CΪUvybAa{4VL"Xs1 _GgJdR2vd` |D?bk З`C=Ed.4+"PU~E*]4iYAk3՟- W%enNds j"y &$xEv緈oX}4ӁB ^e` Q6P+}{NM.pacy6bֿٲbzQjJqg&H2er`YD)#s.܅]9h/ "- wka`{s)L SB~Ws}|G3쬁Fh`ڞZ%g)D@B/dI/R6Z'jldzy( k[`}zM"JwI4ᐸ2e&8LA#^,gO)t Um~#<[AE&fXAvM;xc`+ Vz-Ogz=%`RNKV7G}-֯z8+.NH зȲkґ>Dbϱ\: V%xt8hH<}I]'ޙҤ&*3[lGH\]A񔿣0G“1Tr8V}"\6+!8e+Cg9dR!'|- e֟ {`Ռ~ TП?Uj6om} X?xxL{ ;VPMfpܾvKb3haDu%8hx|Ge2r`b3Nb9)8MDZgӱ]fY/{̩L aFo^bèA)|2")>%3;{⫖>SqJi2#v-tbՒc-spķK tvr*9p-t6]֋ZHCJp\w~b2B=Tϋ34oh!tĵDYF R  tVEzMzAyWЀg4uPA؋d:0iJ흄ap-ځ!ipc !1[UTlFe%B!1oY0qG[黪2;7Idov{"^VcEN| HEZ=5~uJ7ʌpefTqa؎ZTZjJj Av ?f+VYX 3`[␴zPNȿq%k0t:LS=. h(:ފa(:nsZjvIy]>т!>uJd7e ΥԾg:_eUx;w5@|6`v}v+dft"l% w¬amʷ@I2A;qSݍ=lGjB{LT1&}ypo-';՞8MbD߿Qa[z41bPg6jzF29gK`%2pB:Mg2RXXtڒ'nPUQpȝis@?»+Q"夝Yoc>]$LRg"=ʑ05.6lbAKi2xm ;G9'6 "Y!R\`b=W1 tI1r?܈}V,@x }J3jzP%5W;! *g8yq׊";m I4Φ&;iG#, dE]JAQy,d&Tحx""~D`sS)'czΒ?9ՔJ̋6/YJm:{YEos`Q"ݯ26›(j_ǫuׄo v8fPRivNۂh/R79a fe0 #:Hl)3AKFY%s6>YFK`ɋUFZ6ܸ{oùUW]ِ`KЀ˗vn8tr&/"p8r }e */_ۉVP"V-(h L9+ 4-lDiK\Oq,s}h] xs+%A2&ݚbK4ţjs6g)o!RLa"45\+q0: _K+hOs2$N֍F Ce/R)˸7`La!Q(ߗzᣒY,A9Y?&w 6司cj]yJUgX1Ď? DEovNNގ$%AHt2Ho!]_*9{a¸syicJ-p̨%V$BG%3e䶀*$4N+{Wo> ׯp}k$T,mNNh|0C آ@7G@n(S.,Dy⭋9ģ߄= z>|!*x4Bx}gx| '[2a"W/<\@+4~E,e;͍NN"cBH2P=4J]w蘪Þ5 _nBN+h:->vCTU;b&IrlC \{T'4pgóqٔ jtkDu,h>?0wyK*9\0};6[MNszQQpn}tgd3|vXdPeMDL֒70{U>MZ4)VTAcJwQF bTg [C: $* ބ9 p3T e`ZfO?X,Ind2h.5?raQ4ׅBlx8QJ&ݡ-'c=oznluNaEiz[^x}Y(n:j{Q,7+)"B홴-F+L+K-V'1CNq[-qa8#QMQآR.)g<Ҭ5wrd#h[m=t BsɽqM=ij}"7Ġb? 95iy 9*$eIw a Ewaۍч0ۤZd G^F QJHz\D:ҭ?ܙ`мo<z.ݢ!G {V78_I| ;>F-i];^.iҌ\4d5[΄.*@:.5Qa"Z7J,[Id|:{'*9$4&LůuG(3oC@IC*sHL {TG=OJ&ԃu/:R sCeqmDNC&fL@ WbYiGzqֲ 2:z 7u2IirvXp/*Ĝ?+(Z0YRR]'~uVIؕ(Ҫ $S tXpQ4H P!kT3duuwS>w(._"]ϫfĸ0भ=*~rD(3?6$ke]fhÖ'b M:&gQb5& "OwіGRX{ʯPzg"RM.JB07@g+msTޛfsN(8*AC DP'DS7{ݗhc[v:,\hÏYxD*&(Eijh)uS`Wh\-*Bm3$E7k\mse W%R׾Y5Yeb=z?IaT˾X.>'kOiy9Bַ]骍} =+slY') Q .fR)%mG(,זl2༞TD1}S_ \&m2'xIdXf(KmE3RZs5w杣x2[J0 0}KpNF$Zx!h& V29ckKNh%9UAk&&,UEO/j%jsBWGwr7x&]\ b!66{DY Xt/Z!d<_ |ٚv~p]+??gU7HfYAH6NbDiۮ[PlLtGL'R QbuS#)ͣv;ě'~t)/#;y@{z4>'·zDml?2e "-dVcer$1!u@dtV-DK^BY'`oX`Yja?cr-}zb2`3EwA`z"D0O8S[ y}=AG#K)KdvZL|M= M:'X ׾MrdQ:~ھA.{7b&d 0 $ ȦbRLFM_+kp<KtZ R*j`QrxLzX]LBbF1"|tBsNqJf CyQR<3"M)tDTUxQd͢Ĕh1BVb g)&Yɿz*Wst~Raލ's(Tn,}Hy6f@tHׄ>1'@Uwj]IN1a ;^AܾXaֱۘ*UdO5"'dspҨymbk]ghe@fh]ލ"IHٺtCk<6ᅐ2L24YmŘoX Z ~E8z0BNߎjd.XKΠtld(0&UT$U V|<qNhfOc)ev':`^N3N&0)*ܯ/]!@qfeRk^6|N=+lƺ[H ^`!cjv][C=+J{Y ` Dף:vw;v>taܫ8;C2ȕƮO~NmN-kn`[-)FTjg;P.02IY\IU䊞|jPU;ye2RqԚdBq!<EN0'\U&(2tMwdZP Lzwsˣh_՜ʙk#uQ VN8g31GQ!պO\S{v>T\x}V*# ЍL8Uuw0>ǡ"Ngtp \ gE)Ŕa%a8LԲjmOki.ex$xulWd%Bz{QƙL(1[Lu̚JDZv`{D*q wauqhOGx ٥ ˳}Sdޛ" Z ; d9G@uѺPUu!N< zoƐWs02Z-pt1wiqԣS$`o2ݜʷFp}K(e]B{,,xC}Ow7e ODtĖ-o/s[Q _dUkFɫlL/gnHAnQDX4~5U]>uD"[^.o9t؍:8kqh_Wh 5נ<\~ں͝篕" 9isQ1rcjgg`*̷')֭ 6vvK4*_`UXvu? :\8 lW0]>~-\_r&$Y_vDLَ, t`.X"J6v{&E#&r7jNA߫f,!fe.۝U\QnPdZNIh-b+GRپO}fC[<{2vr"`H=vW> *ZWg֮ZO_+7~kߩ {OV"r/u^f1=5'n)Qi|979ܩjK"2vua)I 5k]X{~kl 'RM/ *XǛ)uK[h^-XYB Ja⥰>+-U i|_IFzEmkx#|梀xMon]t\2T_vϳkXI>0)-eiڰ$'I u.Hp6R#KXm QƮMG#Aw YQ\hzgl<&bNFƧ "줒$95BwǬ!-<:yMN~>xt Ոil0XTH=lRˁd\>5mg!Jh΂ωDkdq/ې .sNǽĕj+4A>3)Tgؠyip7q+`n+ШLn8lX;RzG*t*qێz_ftiTrZCGwEDI!g_cډݹV%O_X&6 ?"fqK",&~1- #oӒC >6 4a0$w=;Eց~t61.|[ρ~?`3 =4wXHXWd85na!n|*6ܔ4a,Dt,{$W`j mQaA5 {o{1.mRr~ӤG5Pf׉OPF&_0b1{}Tf?3+F/72KCMӶG{6`kT—1+yNES𛧎̥(1c˖8mcg h"&xzu'.zy,_"%YWKjS(݅~܌Ad[Ҽ*:Xf-.\V|O"ce%L=ʀ!#]&./rȂ9kk'K> )%"gQ%},p̠4K9p G=TF|#6,,8&kk C$Jj]hD*9q 6ӰdH><5̷U<[1= 0zB|rd^TLa'2r6a! =B@tO Q^RD~V,2,0~ jsX-M/-~nì^aRJ Vr;63򾬛^eDL2cy,Ǧ[ [!Ie]LkAm@#."Nvזbv~f1cR $>=MY!BIų`c羁bn&91fJ_Ip;uTG- 1Zlgߠ64񬍐b]+ vtLH_Osم:(LԤv*ZB>-C6X?LfKZ6Ȣ`GW3=L7Էu9Jl]j1q`E7I"WqE>N!doyvS`<(m4T=ex`n8YaM3ŵa\BI ebDPy>٥|K/~R$f@9t|m]gK,I&*_rx0t7TC} "!8O }TeDzχT4Kl% jjsvSΜabft@m<f90wA6о:J Qb B1Ropޤg#'JHwL;bF:i8bS `*ىqR -qÜ!6 G^DC6/5ի楲 |e)&wUh3a\rw;}htvP-۞Hg ɽ&b]'X4m$Zg UxiӚ LfKI>E ``sm o>~ ݨeӟ#Sbx&ܭ>Ce#+ԅk+ȷK &tx56AzExhO>pӽ,UJ+7NS@ yZu$[kHk6s3;F4_6ny~ғ{c[o1vQ2|#H is&K_ >VG6}Q4EO I ^54%l~,s{Cmѧ)C#mye"׻ d^he7,ﱬ?!*e.>I@Yh$@Zg{"9q=<)8Hn鱿&g^JU>۽ ԟm/r"&OwOdc82.Y`sрv Q;xuA%7yo_Cqo7=糉@޳asӞ̰Y=OO_0A[sLlıkߚkMO 97ޘ.;~Z, ?|}~Pv KwZ}rr^1u~BG3{7"\ND%FLoy4$~;<-e+V)U r;~$ķkc t Ua>ˏ07Rs? m] Pl#s;Sk z ) x]"t-Nqy1q|;,a82s.=\>Si<qۏ%H/9 v4&}pT'9'?gx¬7k! %L]N71Q /dlż4+JrZ5nO* `.s'j}վ\ I]@شE(`2D.t@%(報|V3_ Y"-Eފ*;F3u{a;"6,5ҮwqmPP1 W_ 5oZ$4T ,> Kv%#U|a h,H ѻ\Jhʚ_X?Gs.^ri@}tqwZj|c&^)G)àk)_<M[Z#genZ])^CUo"ӌlu\Hl1Ivb4 0ŹTJš\.k r~wt0ӝ-4וCE ^EvsjfTW3^$ Kd/zc܎Zܭ}hV9$Z [1,2L`$7v@p;~,}iyv qpv$BT[|'G!w~Qx5kW"@M&qrBBSD> Kp 6uj9[9'#ƳO:ВvSzo k[b!HgTnc8kCul R/8tʶw>f/= dP\2'zg7OmT&ٯm*229f;}tM+ 4N}l[ySr?P~Oy̿&1X"()8ؾ cvКМ謲 Va3Dj2MoUx80,Q 3'VE/P1=u:O9ؚ:/(B0e@jzFa)ƍ4/!RFizX \:e4}?-_yƤ`W~n-1_ZE{gAb D呖h\P#`G ѳexbA? ;?GG2.V@-c+s,,Bu)鋫895x&]6. :x 6uDFw*8* pl2Bm }d|';([;j8JtҞΊzI`+BQ4 "W,пu.wuj2hp}lU˪6uĺZoQJWqՑ&oI) \} 0I{ra(%thZ4ī5~?YGȚQie $p5\~Umʋ=]p/a~f">IPs4屎fi;7*9Z5vt!QR/x1;(TjYw{76t `Eez7%%B3*bo4fXK`aE A 1UVh>Ԥʢƴf28wڎzc̭'>۾upE*E/uJjqK-YkLu=^)#4[gWS;4MiY^<>jȲ4JL=z*#|^eG`YMmIG@*oˢF/K.wY N8cECuF:( 3K2Hj$K@0ŋ]y EO1t[zM3N8%v[ L8+ ^6dV/36L.x5h}2&;x{G7zC^E0w|Y) ޾f3\c/,<}s"@BX.$=9C{k|SGDc3Z܊!EmI,ؠ5gNiLf1Hv{vJڔ[LKszZR9"mkp9`-阐…r]oυʝ hs9YBj Qm{c=#K3cyoˀas&6w@SNl#Q)6Cփ?;@0Pi욻bPӐ0=a圯{bBoڬKXdOA}s.z(̘^aU?]3(ɇB3i1=Q%UՋN#]CA.Ar3jp H~jh:RE- [bI6fIg0Dc;=F4€6(KM7bmp 3VH9÷01pH_)JY<@L[Ao9x.=6R#++?7k:Ybuiiªc`-áOEҜs^U VozyVR)Xf7UFa5C|jm}gއpT.J[Fvis0#2gX!1`9 [wR[lN:|k ='jT¡?'Ɍϳ\Ք #@yTRtB\XܧJ9\4-ԌO"'ʿ:%әk#vtHH]RU>1;FM)h``u)S uhؕ(*ңk.?P(Jk$ ZhkiOB\:ҧQ!:d]sEnSXAAfoL2?'Su~q:}jdMN;*GQ&YǴa;:u욒lF(ۗfK}J3·}GD =& I@!]@w_UC!މRUS"I*N[>==Sbi2jrȕ4*jhl9U9߰|w89Ow,Dz}"@.871cd^FwʅE},D(9& "Bx 7eŨdIOk*hݨ)m;EĮ;2qzC QLX,#}Mnt~ۍzfԱX<U KcWO^z'0qo ʠ] %}ZRXJW^z? ,@LO1Gk|m+P'Ȇ D.%)t'˷by+ [|QE"c| 5*ogKZ yCC٦"IY`|%~K`Y g؋O >C 2a'ʦ~MS&%Q~xP4Se!#u ]Ҵ:^f邑FFuYGcN}>u(IԀTYoezm92Лg֖[iNR^xWZV|P-S{x10KTX謱ushn8chFqF 2jjSy!0ő3 +ACe{Ii$+xQVR9m\>LWLhɷy)'+iAF{.XjR%0 jɨhPҾ܈ > GaT4dnd gyH<)zR#C `"<~VZzW8R&*hȷ~WA6&?1JG>`87si?8g),nxք.w 7M{aO2H!E.ȓS]_)޳|l)j"1Zޒ֯Z;ye'_ v3iΨR )W߲潍@B^T(4]6؝ cQ5ع d3#6pjX~,e=tJQ]L|{ 0A(Sنg-}Љ{#B}N+A Gh{;[@!biX8㧤DT 6fB M}g;z_2L/Ɋ0_@f4%Ek<'-YiK"f+qI'#v$qDo+d[vi|[0wn >7g!TԬ"6ar yw԰$1SEe F/m"tZFovp1x>pNG E j9gxJ!. ::'ΝIo6yuu#c$ lyeTl뎥 awgzIt#,!0` v]ʫW \1|e,MR4$F2>fd[JI/Wi P/0_@lV*n 0o>̥zt_t5 -_/LIYƟ䨗ǜaV.Lŧ.c;VLSToA*|^soSKwkQoNjoT.cn6'5Se@v7[\J-PeG#PjfI-FXUV3 +i:K\Կ|l|զv{PỊYWE)=V-lqpTKnNqUФ!BHβ]0~M1%Ϸw[y[MN&olrTE VH8/7x53״SS.q^[s(?ʔ2##@_ m=UV%9Oĝ9h'G;<Нd=adIHm(9 gbRI\̔L; ^.rA@xCת&5Jx0PO)S^=]"ILw;rdw *%r?}?$Xj 2#YE׀tL:ʷ;ťw~ʥ(!Ӻ-jLP7)d2Ch DS|] hy wsb=Qno2ԟ?D0CZYXXfB|9:5e01#Q沐{)s-Kٮp3x,ؾ]Pdi)*4B~4mYb>@;6NIXCx~ fy\ ʼm:E^=Ο *Jnc ]o~6Tk7@3jL2H^jeP_LِG}/?z8FI&-?aAͣeB}ЕNN1M;R؅[G1%L=dER=xVԏ#7Zkv߻0m tG0Xplj8c h&9%l-j":?^^dm&*֭՗NQ#a4N5KN(q{Tf[>ȁ^; (/m,N)װmoWef9qnhgltF-=qsR9\b)]InV,[Vq EWF`zljK\XgbzWsal@Qff26״NkZ:E-e=*$"s |Q2b2TDP}NE_뼌|(Ҽ0>4i+bYU62:!^?+f/Vz1u t+]Zum^d#5d.S5#`+ ?u} 1^:DV89|O";\͟9Fzd嵏-RB=,B_?'wO Qޖ^ϱrJǍ =vClv5fŌ(EK?Єuܸh:,\Iad4T!\=@/72iQoG 2{:@jg_'?Yh0Qxf&f!k8fx>~pC#Ɓ33[)}_]xsNMXΖn2J )vV6 E9K fLg>IOKy)$^Z ohd m_4eg;=җ}ZJx"yZ^iqFt9|<8/e]w\V_{b^7 v"Uu=:zOr.ob _ss _ω4A"`f&y?G/F=V$??^~es/^^x/JuegpfܿO0a.[1*mFMhg4ub39*cT|eG <}= b_PrRHڣgdJQ,l (ޙ?;lΞ. P(`QX|cv_̣Uh ,,("xRlOV}+#<#ID}0۹_ܑ7D`m?Z2#GtJTA3Ȕ]B-U TŶ@ziPA|맏?[rI`A'D,RkUb?FSmɌu> &F@}=L NXRA38 ۱Q4Dz$sb|;^mKW8i8 iҴYρ be_S\nŝX:d Zwlt ȏtJ|))LZ0F$XItҼ{M\m;lTjbb/ Fx ȦZ4.ˑL}\`SqJ!0ݹʈoLڐoڸI?9@d5kn;DJ5ݬ~(>g&'&Zڧ4#TZx_+\9K5uHꔜjM|I\@k0=#Q<8*[9>dD59,|j\KoOC?| FFzHN$ajwe?_YB'M1볫Oo[N׶#, wTľ0}@^f+ZCoV L}D?ȌҌ8/lI\GURjq?h'tI ;0%?肛+[+T|05ʝcF5 ΂Dph=F5Lc9c_x:ً1Y%B!7/m-1 p^?~'7As4%q)YȶJYLlf:6f{MD* o{:6 2 RYon[UW̻گj ?K%(lױ $G_@tGJ-.9\\$.cP(ig( 8.&4aQc4@Ҟ:ֹ$0,'3γ gDR_%$`n'-WÝ]_;JeWR&ɿ*d lEGd.үIιng87xF/i=؜̔= ܎_)ϯN!FM1 5 u>eUǕgs*cLԬ'%i&c\qv$> a,yO@bh;,=׽کmbHT -& k`z,O1P$ Qz*+MJ-0a'+u|BR :yI9Fs_C/d?U}aϻ4l>PbF=KS<@Xw|<Ј5P7yz#~s$64VtB?|@OT%$Toً=~Hzs`sU+KtZ oU'*)gRDIDwAp)4> d!\#f |>X~݅tWEE:Bl\j\D( #*@G۱<֕wywz-EZpX_e ~  u5P 0YIlAO\&!1mƱUjk_zcZv q؝',Of F\z|׆W D eJ>,G5_W`(JC@&OyMRҀM{ڟkd zҲoOf`FSU}L/[T8Y]vq$'Nŷo$ˤ8t ą:eWSk׋!UogEjny40V:#lh2"1Q~85ZtNfPjoF+{ݴm d0U !q`^zIS -jF9W2JZ6|YAZKmmٲ6l_%5T/sk6 y덒{x!*.P'a&;ܛrqIͰ(qZʧ=ӮֽR-M :׆m v- ^1?c:oYe3< |'; `y+Z>Q[`w݇wzN!1 e*&s9/]A_SecHsڬx?UxRnO'YoY=YT>UNvRlR#7{LRWk4dbݽJ+Ky>Y3жB`=SWaaMçt ?IXu=B3ط7Lް~3N' ~  %UGi\ ȗC7Q1kyobiw`8 BVL'=6Pu=4WUOw Ga^goo~k_Wy)8YܠI B-lߔ((D͙ܗtϒH(C! cȕǀXMzzPQI$}f j KⓌOď ӯ\ :|,mK"ݜY- tH:4ψgHFQ&-quM‹%1T`FMXk,;9L4pY!2|Z&\}ˁukGˀ]x"ДEFV? tYÏL勒UsHAH'_ܧ9A {Ɔ#A-DOQ\AF>!I{m\A"@LY&|@g0췳U([_]_j@v2CE`$Xz#~*'$@N{QDL7PnQ8_*ѠX:|3P}^+zh HWN.c b!Z(k -ͺm?|>/ۦnQA Rޤl!Z {{"h͝NJS'WPpƕF`}ҷ`siy]UiU:m@aPc%0yePߤ(Ț o-w⨂pBzAw̋1ڐeD-F_Q~O?'uqNPQښKJtEJ5 .h;lʛ0ص՟7chT !ۨD$6_YPdgi ,'V gc+Qh}û'Sy8h4 LꚐ?5JHdy=|4oh1if**&CZkEn{ק"#¯̃ViY*߀}80~_iqb`$g#~v~О+"c7pzԕ|nZ|- 䵽}3\8e1+-= Rm7Y< q,I /P鯏)%䝓κugm#sYٙ-`Khk\CD.ZGQb jH}Iey#Z=z"Xx71w&4gk*)RUa|{T- 9r9MH-S8Huzd!8hI PҗsF Q Ώ>И'S0ՄǼGwE =td/Z#wMqˁK+xBX53XK>Uiϥ񧁃t:]DTZkP#LO#Xd}]L|vE@ Nչa* ~Vš֛ѯg½Vͦ H}?F _/d)dw8pPtۑh߭Tfc 6_ONE;)ľzgi׋MܙZڊ/q ٣8Yr_g[HqJˀux|mQm> q,"[X%Twv1ҥ/ë降ڰCI |n!{"z<IG \ "9%GE S%o)!So>8^82#[8cG/RSL&$*Ps0pŬ 81nrN QOn9юQS7UB]7ku D 1*6%?)oZFҞ/S-|W| q ^B\vQou:0tsPHd YI$9"W/ ;?xzGh ۝-}o1JzʕZWkHθ3{=Ǎ)#Lm~Ev2X63e,%-$=E\ T"};M)201(shm-䰎@x>%~/"o5_Ǥ|68iz̰B4W8-Œ!ݶuH::<8HiLND?xEi]݆HdE@},Ev\^Xu?57C&{Á3f_Oy|KhTPD4G5s5a'㲌 ٰ=az &. Wk'Ch +rx+r,[nB_BT4at80'Weffxt1AV2Q䣤$S%f3f'@ Mm߁S/,iKbXY0 @ƩC t ݂U_upiLyQ1jz1I e4J)?ӠO\iJNIژwrӞ2~A (Vƒ.e`>/RB/7G=Xf3< 漥vҙ{b)s+;~?> }Qvfyʬ݆bbHg3aEpMU-9_cf8zsl8 j6 VTqh/FB}܊o*E5N.RLm).FvNq 6st=/`瘷.kqvg靾(`9eφӽoǀ޲OS{vAu:~M JڲemK%9h1J;48y]=wm0YZ;dM7Jr0YZ[ #$q.Rg(T1mox(3'n˨2$0ٯPO:9GnYDaثZeMwYzYbJO`]QW),߲Rm,˫=P/0j\;Jaʍ%ZrO. +r0mFohu=0UY2Rć_ktZL1nIi*ޮIr[^z ]+#UWT>"t]Z ., owi4-:&vGso6>!D?gU}Pfa]fKna8;z;t/ߔ3H@x*!6hmX k{we͝(h4H{Ivu‚gS R'T.JX1vЙZ9噮͚Zns H#PZf/֐ 2K vaE Q-%աǽ{L2]xp5ᛥdY}>x0ʛEvv: 8jV,R;y@ MNtFGH_0צljSw%%̸lޘ*EG1AYK+~']B^vaY<-w^4dj'̌(yF7[5HcP8溛rc\rsZb,;$u eėUSm8Lg9/ԯt2|.b1}ji U\ϫq&'H:ƌ0C"g`}Bѭ2ǥC!nQ7McuXQ:mW9HL!7e4em0d Bk?,vAH3βU_'Œ6G0GM ԓC+@*~SGL L(y䂹5ef?sݘ.h u(f 3R-fbP<Ӯe/0ouT3:*S+nȽ6o2Y)q 懡3,BJZK_zuKqv<. w\037 ,p vk@ .M 6\e&:ͧ,pp~֩YHްMTӽ_x {sH8B}4SguGh=Lͩ>妖j Q&$2 1i?5 Ɗo6'%2%FџCH Ӂv% QPď[a'Hʼ#xn/V""1Q@p4[8IŔD9'saa_mM3HY*w"4 Tg0KN.T˾4 !2Alni8L-7X>> A?X(u;(**eSwyFCV 珨mre-CpJXUCnoΒ,pp++ ޺s dխ6b#Zu$0ĔB,5ރ $O2&]tPLO84z/,c @sX>T98|}~e:nU~w韁| UDR-~YPwF FO`抸'51@gxa Cuͭ)~)%AuJԾ9ܢ}+ݓr99m'#<=0 ne0X9WܢA6#9c?/,JF_jnjkgݘ:~fpu^m2iʄץB}G}'M/kU~qM]>W UvV++=9nQ(?^)! `> 2wMUj2BqFT~_̿u>Xr=]~ f<1T`fgbsymoUjr~ϋN`@vCyn2_#?Vn-[ WRAڅ:׳@ϝH#"߬q h;?HZBMAm4qf H`ЈT.O #F_W>Z1_w_Qq`j7. ?*iN۲sgO ǘ@xep2W״J8;I;.}{Z-%}%K 04ݬXgy;oܱ%_nPyM, D̼rEDH*zwtIz )By7-/s):8rN[:׵ߝ廊S 5 0/J&CxɀJaL}'`G }/1Nk5t+9.{X Ժ'TҜ˲5*J9l4pdc.,K g5Os v@Ǫ-;3F ;s,7-Ig]G wVu D:\{t(0' _[|D cЊ|H PXZ-duu7=UI5ێ!C!Qjx[w9uh9kǽVR6,7Lɥ)yYHg^(9v$;hڒIS˅瓲r^碆=IZQ\~>b=$ʥFvj1k5'reh +3n#A,;1F_.)a_Չ$՝.޶ȠDRmA@%p| l ]VYB4pm&?L8H}rk Z̑sf~NubttP>;qȌcY2C\LԺilLFGʗؖRԒlgQ&Bڏ"н,PCO0i[aW9 xk)zq6Kn @zk X/tV`mLh$1E~xȲX)c:CK,H\84I{om)rlQ'2VA !%gJg\ k u3!+F<CrTFSq6@tjR85 wɟUqo{KQ|Tkѳh?M{V03ٖs71yb}zuʢs*,5)]` u?"~FA#^ޞqC.~3GIu\M }u tI֐{/➙0?zX:ZBqp 'tdOPu W#jj6rА&"^#L}LS}>CN$+RW<8-rZԹ~;tU Ms).()<[]/B gy} XrJs{SR"4] zV{l6XR.yj^)xAћ3|"G\0 -LUVj϶SSAtFƌ8Febp+4 Y#rѬǸF}P)R@DP9"W~dO![O&ĭD¶TG=i`Q"ۨ (o9mE s%3sJO$3+UUtKrZa*#EĵKjk' X|^r Νc*NOv2WZ+T95 u5` hÚ.R#讷?@0J"{j cS\zz/Ys}0 r A^$@UB;2c8#GQU&ot?5ڵޮͶ$q:WmrBL,3b[0mtѺGxſig¦$c3PZG0Z~csλ8.ǗpݡNntbiv$$ 鲒(}(p]ooWNtbFy xM[X,A=\i(=ڰwqwM|C > fN ɼKW=skخz`6S^K L' U\R‹Jrzc>2}%*T4(E0 s94Xy#3SCQ`G',KM<)<,Tz2.dbᄼdhZ_oy+L3XSW} +x٪M4 ?\"th{cjOFj #n]4/9br֏t* B+CM,tdN*a RkVE}C7Uʎe;EWPIYJqJ);euRO&PHWWe1IX|?!yWDMi?[2{2MEt&B2UXX'> D'8İ:ٮOkVhy}pw4B\ҿ—_ r1w E3lΉ1$OI ="Ѣ5}+k$  i dѬ~Nh *GuY"D?/xk~w:CitӽXdd2%5Hiҍ:dlǽ~69rɯ89T?fdTDjcJڷb3dv T|e GnY2|(uRO ̎D wޙ`Gj֧\[g? b?,7]o,',;ze ☪8x\Lj|-}*!_+&m)hBKh!P&2ydb{X<+ /H\XHCO[QPj/ ?̎(^qkYr,o(k$ԧƂT.{1HKxXxO%snۺFX#^onc0XTO#>'nM*an {U$!eOJͽ,VA3^WPR}[mqvcM6+Ia3rk?(\[UnMTx>s $MJAMH_aBfI⌳" ׂ*e>@fcH'|$}e7'&!y|(/&*PBP -eȰHu:ORCXuE bǥ&88ո _J]tдCBpIeyxtKߡ+V gdzުO8\h|+0w۔`0 ޭ?]`^IUta.lRms'9[g._|aLT[5W"@_ P+f:ng&?P_7^*VjL-nPMu!)^VATpkHWXj"_hjnlOYz# 9a֞wlex1BE.TDt(իP+&Թژ初6vY`WPQ ̾#tLͮG:Jb#-L,d"͚in`r0`0ԍ]t2IƀI.bG^Z2 ;;="@Y-[Lo qj@ ,9mz1zmZ#Rh|XѼ |pL򘦪T YF)}\ycw[bܙS3:knL«7L|L2$WjW}df U5l;:'RJJ Ah efB]̉k]1nֺNL*}wvq7yU:'/zS_(k !:1WV8K4WѸ`.Cr%5Zvh>& 3ۖd%Bw[uUgB1a.et߯gIAs *gVm`C"Verˏ(+zy"UzSgH}HA\׵qH?POj,h02YUPO**$*k@SX!?@yG`@7cho^R;$,pg Ȩ]Lì6 >+S mrmc@ޟ$e(nk"sFt֬[ BkW~wxnzIc9rq=ͼݮwuօ r*z.ZYF˹J?h8,Ĩ 9vdd1@;ezv.؛l۶lkJrڳ~`{Q;+@rmPϧ^m$bAWAECr 1X$)oƾ蜩|O;˻"&r w߃|[Ԍaa oAj=x*HO'] u *q8wl+݉U IBhv!}7y,8V&2l4TIP3ZռPn cKvU QL)SGue{T}N+~ 9n:ֻvL߳.<"ۓ3Yk$ Z20!. ͂JQ~Y^4~f"Q3g!͟aR8JC};NpgTM/"qnP; -{bhhA={uK; OsHq9>C' sUfJSV欜o tbx>FBh};d[Q\;){bN\$39aƠ*?5[;Y>gM G4 slmgRԿX f rHHg'qDL>AsfGruO~..ޡW6p-dMQp񂺰>; "oCsR0L׊OIG-Z6.LME6,N ?\%7z&v ^Y]7HP4V-s*!{HY\<#fm%u*Qz_Vn~(uC?}I^ eV+5 BEf9Qpt"rЧU Lׅ- tZRIu+K&=E:crào@paqtY;~3f|0"yi߿|Ή͌ QDʤh7 'P"@JΧa%.`Cax-+t᪆l,ѷsdB=g/;|ԄfoTbcMdLm-8ٟX "c6×5NUfAwv{\מ"c5\%@r0Z8D``xqᷘW[(.[ab{.GkG?' Ƶ%gWg a.@63!a`K_R/*߻n_LaZ&UC\ȿT4YEz٬ !; aner_dj~uzr5sTVfj{dBe nEr_As ”42+b<2eO ~T$ncRϢO:{ 0tP@,vJW I#նJc@jq[4+ ^bISMo/`pt7`bd `_-utun#bN#Y[DE} $N04-ZK290Z;X6T~HW2,`Nԍpt/CYiV WɌ.XaB; 0oir_-$LuK)"^Q{bkZ$-݉TS0U ,mziOlbe!|]:EފD,KxMc!+"$uQ'ĞҊAc T 8!s}?@hj/JGAtYzK*J%ǯ;(WOf0IRnKZ \y3ssxYŎǷrqޟ_RRڿp *r, (Ks/ Rj Y4yeH5 crK0ϰZi`0խ3>4_3.FUŸ5TƩ ?ʦv;hwѝ՘0T]̗alڭZ(3@B$CGCxWC`K![I}G|,$|VЎ=^e>`5E kv&X($eN hFiLR`wˢ~ DZw' D"9|o+CEkoWj"JlfhPT7A0$ztqA>sĖUr6nilrVWq(Ϳ7,-SKKĺ[2 CX􄻉 Pg/L\ mSx1 Qpe9;䣂`o{q713X.6fY{;jM+Ew={@ 1ISrNH}OT׹#6mcB'5EO@(ۦhmQ[K0Y"2c,D& |Mtt*V{|UDcv cp7w$kw$F*kEB1w _-"H/1hyW2s#_Rx}V3ͩ-m:/Vn^9 a@ I}V-](- 1$|(, G`oI1̥͇z l`Ё Bt_((+z^6 J_:4)U@0p Cgt) ޙ_tmy#}J@a!7Iv+ŇLܷ61&S!`Y[(*+6h{!@ؙm{D~Yo8n,ʋd&FDv3N- 2C8QXm;UXWtBxQ(ʴ6]n~uX«"wC`Dj R3t!qf5)2t{?қ,F}W",cj+Lضu Y w@(aeT͛npBz'.# QFDӈJwkpmUj_ݛѣ+b&'WЗÄAn"ERUIbgO> ܆~.۞~]QN_:=ͯi5hi'79uKH;/fiuSA#t #x1F'_0x͒r2>Hd1׸ >R~O2 .x඗5B5C᳧Tf>$ s e5Z-FzʁOQruߒ,HodOke0X8 Jݞ_}dO?c:˂Dd밥ݶF=`jZmhd]6⛅:-B<~Gk^ʖ >Ȧf&2'$gEm?\9ct˸㚆G_`Raϟ*I"kVZ6q3fyp\shŗߢ-.ĉ dIbW9H\r v^SLlXeFBV!官à!=~س`C C+B?1,' +}쁺3oLV4O|;h߮s\` 8qل=c"!td}ު_?>֗^fў 2-^j[ J58ah掮 jXbtPWGJVՖ4{z 4>`bkmN+s`QF-u#Bk Tˇ5'~ hz`Bm|\F~as7/G}- mh^)@yhƜdTox 7mJ! J_;D_ry+wK=0.opdD"O'_v״De4TmRX(9^/R-5%94ίԡ,{w8O⾆AvߕdXtaHϽ%afI?B=%x^KAQf濭]ԻJ`1v:j3翩h*$=0d"+;o?5x:'.ڴ$?':гu 6r%Cq}Dw{_ߊ(*u?üU \=g}\og}w:^vʬ |JsM7éI|"1L [y@*MYo%|PaugGaF1+ScfHrEal0}lWhr>WQOEiw-^o5Rd^JEyŌՐv]#yhvT) 6ekll3䘈nE)zAVr9Xb`\BC v ]n:~@N'E ?5[m?~aPrA( W;! ̀ڃFJ3X}7WzZ`^M&.IoT31y-.Y{Gf4희9>T+K9Q:ZZL ЃW 1c_&SÎMyQѶ.aIA~=0B-ZzLG~q*8&ve>r=eXc3ru(AeȦyg2J_|>6G7C; ë4uOWEY_v}şǓ]P4C'`L?ŝ oWEO*|2UaQz$T2z0"L]cڟ@'u=܊m]σ=Į+9 Y;/RyFf W'=ڃg;x d|7¸ԔWSx7TqZq茲@dC#P3(KHz>r[SYDRU_8̨Q+iݐ&c2>:) &Si 1e3;n{[|| 3{ SaҌK؇ nj*9HS?u z|ʁةiiͰ[M.C~o 0wx\{*: DʰL'h(̛ߛ C?#_J@uxW୑9ER{bTIPNӵ}܁/ qiڢBNj:Z\޴e );͐Htgfw< d O=ֳT`(<6`KfSU޽5L 5p Y+dM4\_5/SKpyhE4.54B!OG=9:@Ik-CbAU¯:j|^i(A6l85+<uiͮb\]-lIQ- 'lVIiSW?4S(꒸-Jԙ8ȸ-+BwVN&H; v ~ D5,v|Mմѹ÷c7غ+EU`\!0g_yvkyHP0Rr\xMv`Ľm{ eSnUZ+A'_اoI@T;OfX {n24b" 4+Xk֕fEnBg%)= 94VeP:B1F\+tF~i>(#oN)FDI>wwޢlS`* e>G+m .P*PU3$8.yiaKǃg8M|$KWΙ;\<?8=Kŏ84| !㜫¥-T/j>d.*^o@ \"#h?W3'UV[W^Zr@4#N&5d-eH p;I(ֶrV!܅lMOLCR *r=p_!蜶ҋj~l9:di= 4kwnҧKw5ctC]ָ0fѲnjF?"O ;`eK>9&fcc^AךVw>@x|Ѽ)уtDbO`wW{T7Io;Z̕ˌп~b0F ZnwIBLw "+ c&VnX:?ZaDwtm P+6#t7 3 PfԪvK GXM.ph$mTX(_WbV3 Bs$KA1 # 3˙ n:F[$Ka_@.#'$%69B݁Q|($h 1J2c=Rs4gkڭ oe3݊T`>|NV}GыcdmI;m-C*JO\z6-$Z(PM6UU>8oEE2495y,M}H_Ѥ%Np$Yh3x≠տ%# N DJjOSg&6,0|´5 ˊwe88tiƟTց[>TuE8L BK!Tk(*E R6LurMx4W+j CƔEd5FE0fA'iNVq9B]d Q8p$}qo('9ͶKˣKWGv|l򞎖C˩?[)EwfvM\eJe^F֝D\&zxpn@ȺRT.3UC-a ЬHSҚ=+2aUa`]zVvB\5 MB8ۿ7!=wV{qiH:*fSp!sJ{jR<0GNat~J!C.8ҤROyG+>b dMQmw b(MUӞvP("L=ԩPspDLiϕ_5>RHϙ55Xgwd؜(D S[ ?m+6?Z]"@n@nB\MBWQʘ/B]#Ԓ b"DBVF;AG;Q2k\h$@uwGJ47|eZ qF&wnG#T֓<O<0>h{ M3 s[)Ԑ22Ǔ3"% 4l8#O]JmdO´*|_Z)Ach]$NkwkMڕֳeH]3'ŝP(srNI&',]og:3YrT@='uww ~|3u~pmEU|=k 8nnIb*f*b|{ܛ8LC-xWi9M5)VٷCK2ZcR` ]&̫ ex5Ω?IA/a+ъnR Eo :'CހM"!̜u|>WveP, :Sj);/s D!v d:z͂x *f@7cJٲ o|;Q~GS/D6 3]p*6BYp &M5RWLDsѱlvgQaje cy8F25S14JxQ 0 < DO2g;W0smpq>QtSD$Օ)iA`Ͷ =8˸/F>uo6z&*P;1D/3CC`iotyCz`A;rPBLJ}"ҁzw6Es1~>{STЋr]K#~>'!D_y i01M9K3f&k"m,9f^|׻h2#;nu3`ѝLb~NX]sKA_8hрmK35Pt*msUD.:'_$٤GtXK]%[Qk`\2- \&;er7ǰ1L)>i@ md|B n[  sA c `uh@2qiARЎ!;ѽ7&&ʷҞMWe bܡh H/- vz0 Nt**+TRoւFC 79c(>G߹uG/=N lۦN@86d\ ȇL];lMyE?m|@G@P\9ֳ|shq٩mGM?;Ѧu c_Gs3<~倥5HQ ?k~ p߲[e [+7zF`Z gw2lF).B[a'x=_t FUVGV?p8^D V\`V ›j=A|4 Y`J<4*ay50*0&th ݝ%Xߧ00tvcy36oSma c 9 pO>XQ:@5+n<.]A[f_w+}:+@8<,:Y>x<ঘN]x\,D)Ŵ`UuZJǜ3w` afvKD@pD?WיSŃuLrW@"`Z2`RR,PћrDЬ݅@: 9OL*g"ۉ7" o,Wn7lʴ`ʭkZh"xjWFF0iF0aD9[r}hnu.ݬN;d7yđu T͇9mhv6A 6)Y>Wܣ*Rf3!y.bj+d"vd0ε@C~g$3VL iY ֨V+=&}W],j5UR\DR2`S6{ǩ\%wzbݲz/uz\͌yZ>1O|?.ɸ WK sL%@Zœ 켧 Y^3 TpE4\/},p{.'N.xzܹG%WC ,H]H.{H'~"{y7II"~|&yUȄRMuy HD gv{hZ\+~%Y-掁#7::p/T _Hlq5 3ж$|í#|Oc~P~lj%鼌> WvgZWI8a˾ʣl OdC& <9AH AKkY^7Wizlp80 ֏Iކ[+b0 =#bZbUi';D~b_rQq c?Fc DQ*:{χ'?:ݨBF5@YxR󒃼!\iPEj7jˎ[U^Q+Z'@"8ү h+‹KJюp |Ix-]}aW%<㆙F 4064S=)fiiR;ŖL_{K~ݏ}SU;>Nsd4U/f șONwq 4ā:#䙘d:p[M.\fD,A/to>2wuR›j`8 ߮ V4Ƴ}}Mx=L`&ʬ??NflN`j0e=2n AF=X$RD\!-ߒdaʌd+yhrcaτ+fF Th&Mʑ4jG8蚛* (-$5-琥2dObMBwӲs.Jʟ;C[Lac}skÆ\0dE#O"B ,@F"MckNR10˕î D1 %4#"5 '-~4c(偖'W@q}˰Wa<[}+9b8ܧC % 3Qb仵jaS[!CbX 4[oi0YOsRSO 1Cm߰yJؤ gr'ZAgU\Z֠ 畲X]O*M:E|KS&Ɋ{x,R:-OЋFC\dݾE[6{#Qs(ԧHg շi#dW>9l:Gm]w+~X彪1 CAsGve^f|+%?Pd1m3t6v:$y #_@ܻt /$2n[Φ^u.nƟZ<퉁!_qMScjc9w `Pp IY-"&5,'j(`2[ls3e |Gu4tՁn1E#f0b53WNw {Zxfu2!zϑ݊p:GArR·65R{lCA$^pȆ¹A/J H0phowĝpxٲj›l 8<̈/[J&m; * }*0^-Զ>1.}ژAa &8G7vvIJe xk-%ըhK|\?(ۈCtAkVqb 803q!MYY)8j|^->CZ :5D%h ڹ6CHN)KUYMj(> a2WƵNRܩMiz g?Lڤ*y}HpQ jv;C,*.PVԐuPz+R̹ƄRؼ-rXRg)*DnD!/ ~֭gy Qo*]% 3<hˑ8?lOnMs4v? UBJӭ i U@L7-] @}Ɔiu׻%2萅&FTߤQy3Bum~,.igӏ4@jT)G0!chCt&P.בzgI )g|,GBQ{v G_Frz?j_F8&PkZ -IRpd|:ֳ.m{7h6,q6hTw:(='PaŇp[H6 WƔ$'CEhmn?IInLj05#\XnpWpFBz}6lu.Exg#͞:$akD ʘUlUB!0CF[iGq9M_ƻyGa"o{kt&uxD?Es)$/ONz9=˽6׸ t]@:WM<ņ$[OQj2jτ]w*SE **{u"}NT[.:wv'X%޸4h]/3= uSq'dVk [\r|!X n/dzp\Kz~x,钾٭ 5"+׆m1zioF8?B+_b1ű8K+)i!2U1_U%n nCl3&bJG^#ކ͠M?.71;ڙpοvF*2`z 3K䪓]F\ ~˪3/Z`,"+x >` wCa1oKjCjiz3 U՜lV?iF'꽈 ԥ•\6,͞/mpFZϩ4mHFDLۓG<(bXp"!ГxP}TkУp@y66b[lz .!'+u\J:.Hp< 9np]L9o-ZB#?ԙpxk!űb:}9QP +w A=.dn)LMX[^!Gj8W'A{Tx5||1[t|!f bh 6e`1m_̶HOc|g0kT]ϯ1_|1-ܭw ƫ8IA!Ɗ ӏblD7tT!{DjD.wV=j?^ChiNlb]>'-x~4>՗="q40L (| w&(OZyx91; rBpR[7ۊ8Ef`JRctq߱FK/D/]/,>Z(o=[}w/ɵ /KT[ߗ43S@uJG r %Y"gH`(X!‹UF|v}kYnd5yxޭ?LYSY ܱeRpBtXBgEjtO@AW!!Lv筩~e4Lf})1r"J{ % o1#2RYs6*pGe-'x]=b?.Wq]\<Mk'hm7ڟ,`3ƵCmk߭kw/鮈W:矯ȃFgzB?Ď@+W)'U6ytZ씦Ϡw) `Ei0%ڎ\ŹkVP|ϭstbGϬ+u?º .b :i@@^[\kA.05ySpQ)YGODC 6yP_B(Z;6ږAQNA[[{cTO$(QU_Fpitw0o[ot8hg"eUP XDGcZ4Ba9zZsFgmqJB PY23A_=n -9V>6$8jy<";Af|d gTjhZ1 )%:oLsĉ޴<#Orewm*t CHZ"8@W N]>}JjpN渄:b.khy\D S{CۏFd9*a-ySA( $U gH]/RqM& r0C;?uП[Shl-]L/y cjP4B(;5;g$a!=Y o-;Ӵٺhfj ͋J] qiN+S.J-Ybƕyu`ɀs"ґݜ&=#LS-Fs 0җ@ǨNpb:5YK?;[,JgC [+$ӿpxn> /\t]rr&PeU=`÷vhD;?5rM2 w iLhnjl ww'ؑa90xطh% $ms,ߢT'H g+RY' Ý@LY-^e.ʫEyW*e{P"9]b:zY94=jÊl 0[1dY!>Bg1GXW`x~3#‰ ;]P&d8}OZO̹F-ʁ(s+x۰95r^8lNc".L"ў^D3.Vt:_(;S.< #=ZoXy9&'=Vwtv碊KMs|xHvn떋Bi 횧fKb8T[ jPۣU[_OrD]xZn\Zia@`v3IU1P9!l`{<*c?c~5xo> |{ 4Cj <]!@_j2UwQ+}rR( e4`8462dPzG^֮4  ڒj&;q&q>wmҪ6¼:IR`P%h9Sf*Xa-VS%9 ekAS˅Gc.OAE<ňS k}IزXugZ/B)r|&]=;HC Y">&Cb/7;Qr.b'4xO`r]L|#&"- /#,u"/a ./45[ڿ>KS}&+2o.9 h.J"?2:NjA8^v uu6n^MJ>eZt~@E:Rvr5:]*_D&~rx#:l=*bB[uN'@M#OQC]!pAָ͛s/lYr(Buj\|#!(!z E`&5 9߱}!=.f9Y%ԦpU(\w(hgoVyt˹ øW;>lbS; ,hGj/N;WϨ@I}mFEzX.# ʧ m\(CSAK2IuuŒJ$2TIFZ9FR"x+9R:L@GȚt]d:): >$K*]:WW.ڌրd&d6ԋ|QntFϨPr;'J7M4m ~q6:"f.yfW`0*y/ӳ¹a0T@5WrDƯQ"`oJr~!{dG_SX nN Aՙ|,:-Bn'ϼ! 囑E>S<B +nx1%U^rV\diڻKT7-j/zȶ#1$7A"ِm^؛w}UF|,INCt[(=B'O^"]{<޲,$ &1T?@2Ft 'YQ+ bc{YL 0;xp ,:bk"Vӵ&n(I60t )b?6٥Sꏛ'XƱdBlvxyj[ )N!Աͩq, '*6 Aΰmk戭Z84k"guaBb8nێ{4w|iߐPF!<&%_ #0g'kΖ#ˣ^' VX}[wZ',io΃i~舻{jƱ .P/LxbךCObǙd ͊eiJhbߵe)t<ݰj ᡝ0C;U%d[EZ͝QH;~K csaM:'n('kP7NΆF8JnT|e~5TF3 xgPPԾ ޔlÞTժRhi +  uZJǃ͎ h4v,e=nK9wCfp+ HZƳRDKD@AA~$܃?hW ++V>x -'Z)̈a"46!TY˪B *[:y(?t>Kŷj4S'DWwqLSFu>)ms'=^ty2A'#>F!83 j P 5`^eYnaUd,agP?nc1&Lїl Gp vv5`_G5 ެ<Ѻ&!kiUCZͩfgCDX}O`hO頋8N-%f^x=䬂Ea2t6ѱp ۥf'J?]9 l%.lV5VW˰XqܯЯO>DӀ5q9t!TMvl/ ǘY(l"dXXZk&EzӣhcZ*Ă16MyRpMțdSdԾrp^TR {LazsQ7$Q˜4rwY?'U4~/rJSPD8 vK;*=QWbrXY.ȼ:lQ`oH0s~(Χtz$I+ى+WY T\Tv_19.1EYIiAXg==GD)33W`Z' jI"^7iL>T({ƕ r&(Ld(G]p{')b=p]KHq OK%qf)%ijRWSZ2ϮN]cN͓qi[~Z%Eu1ISvh_H9.TVթz+g p@dr>wR- [Ѩ FKÈݢCV# %{X/5:ˉ̞JHnLK}N#Ud 1\Jè8E𝿱5 U]Е4s}U7%؉5Нkvmk9Lh#6amU|~ETZ>m0uBoa؁LF,u5]K1lƽNốJ.w4gqS4|A^HgJ9űNYU «)*|:h[O[:m6JvPC*2LDmfyk:?6 }NֹUx"{$)ΎχEվ;8 $i8{0UԢ4(E"Pˢuk4 *5zD,rE8{ؙj?(B(#< ;WlV![ (W:Ur}9=?6i[xOh 7#fKev*xiL~FjiII!Mɨ`!bzѡBvCQ@a ԐC?B?)/aZ-"+(vR^e* zQvC"m֟U{{DZյa46Lϛ+FDqj,+Z0 *UٕRkœ[[5U'J urT@ H\!3zXO_b毧紱nI Yu"%dRCC OL]`3Wh72255e._8Մ cnds8Ƃu5¸ ˼S8pXq-$V0ʼnqfaBB\F'*zڎS k@jIsvO'O0/jR;XPZ(ʊ^w_x8m VzjĞed-Ny_BA1N:b* ^vVy}wUؗu{R4Bד@4PCD8W59 NK;m]p Ey'')<rZՊ#<3C,SySf{NEsB .;ϝiX:$(W*EK-ƽ>XS'HU$1+ᗴn"y[<].|@)ȑ}j7כ^'.^?XaVvddӍHW)Q,6;0ZGEE|Z_}uB;w&#(ŕp|w&fQi: ^L aP]trZ ,oi?`J'ײjaW/%G")r/}֌=_2ҏ^yAx-ܠLfP>J-|=?ؒb7+~r6њ8eRUjM@` ɲf$-KݶJ(StA3Ϣnސi_9_Zׇpn=ɕK qYȴO R%[B p}:D76CFRjqOhW389F<R zӯZ_Ψum줛AMzxaM\V{Р/'q'DJ浝oUǥfT$o Re_3Z3_(J_[B7F Z ]`7 |h5h3e.L-jDI<$}UXIY#K&ߒs;p?h+KN6H3E{B0*)N$YSX_}y= i:eAXk%NL0 $)~͆ZlL7;|epUnNXJBHj}傉Ƅ %jM5d+&}{߄}+䁚M}0?o;єuृx?f+Mh[j=YiFdtJAjecJ1}zëXfsEHb\ >VÐ5tϜUޑ\EͰT,f!֪smzG%4b6}MմT3"qR&)B\4 鷥v*GNdp,5OԬZeRPZ^xαi;f@lrv3J_伅BS$ԃqRk.鴒` a{LhV',p0gDcF:O{SA DϏ9F*jK`4sS!17'=/v27#@ȱQR dXsR5Mz6(qyJO(tbamY@Ώyfqh f5@ĬX3 b_ PB}Ҭ8yItO#0=W`AL:؅kyn{5ZYMGml-E^/Zh Z ,(,ҽ?# PF'iqY*]u-bd'KT 9*`cIePF:+s"l?|ܢ{G~PؖDO>R? S,(nm#NL P'Pc kI[rovdQ{_|V{.PmA+ /jd<ݯ\zmd0IDpuJK_҉Cb X\8F\_=TBpa; -);Rh۷cGڧW_C~8ҵ* %./4p ړ/<i:X[1P#CQ71^aZ=D-r5២P*1`}>w@Li1=W4y\~a-UytM?F"T>93~ D0$Z#stGd:hz{ZIS\5Z(tas[qo' 8DOdTān3L6%9bzjUPL{Gv YPRv|l.h^442&2Y'D b22$o 窟BaOhVgڌaug>vaՒMifnE6&k8tĘ-+Cx ^ۢ4댏,ϡ&2RwF4Ծ;nmCfR-b,Mng<(kaD6TmKbEl}u`*)(X#.B~ï?k* >E4D-UK%8J&O8|UζK;ID 'P,f=%'8 2iHk@o\xo@D@YK<۞Jz.tZ6~7Ӕ'ܝFH4 H \?ŝ6 cZ6"^BTz(6+"J}:\ ig\u?v5&^ߞc2F ~]ƂD9,&٤x eN%YIo@>VNi3H|w`J/d($=E27ǖ?l.6h2!j"`6o/0iFگY~)CdD@:R!PG~4}PL\լV+@]Z&} C߇]R:2#5G+P [,M#LHfݔL3ϥzv\E#1{z7Ȭ^{V? G}j/h|661Oyjkv^+>y/շƫS"S3,qȾsPxގL@a6^HMKk0BP"&1h18E:O(}Tq]5KI^̗ qLN<ӹ؈z.;2t-_.sdҵõ{YFk-a.Q?trvo5?N#JH( @(_1oHzf#qxo}oRm*Lejr5]+/P9]&%K_ږ0/r1HJkd nhNu-_N#_fn,7* z 4F4'P&/:nÜn!ӉK-2.2e<mĥ};П0 g/m@Ցy*:k~Yef՟Voc*eK_Yvǵ1TN~yI_r_׃rʟ5`XJ0z;\%wEENs|;1'ۿ6w/ 4 s"Cݳ k^tuOO?0Dizi^xqpgYU{4Yac/̯O^-^6dB|j\E꼺РknaLSn{B~CbZw\ρEyt;u-/.?yVrLP{9υiys J>oz,d-L<`X b P qK`Arm3߿k2[1ĴKp5Hr?y>m[5C0؛ ~ׂW5Z5muD/0}`<拾QUowRq GPccы͢כ bBs^8d" [rn8TUꦌr K ٬ٞr|Xuf̞"}2-EY}ۛ^Q8"עGVjǔpYKtSBR]]⥫B(,_- GPK֯\ !Mb8S̴޿5L1M+8GW#DAhWw5 }zLYUG4ZV;Vֹ1)O-eYX)I8y H32q)Pj[띶n-ʯs@b(S(3 ~@B/$̲]5 IRd`(|^+hӀ/G}2ۙ˕}0k ^; R\do@qCZki5qqkupN-AN@YL43~d|_g a&MdN_f|6@MtdǛc6b諅h%q-Tf7l%4=$%lZ m7 DE/ wX%#/˧YlMcnBꬓ?ۥD,FI'[躯!E+UA&Hf QOZjY@_t05:"\" z*􄕝,=j y0|9Oi&-;Q6+/ښM7X־+pX{Lp,Mri!Gz{ 2CʻC-zdW{Ad&Wru*^P}u32if@{m~u"`Za95#K32_G0TGElv&ƣ32Sp?3slߌ'%=Z%'.r_NΠ \4:s1똨7M/G!Tcrli(箖~퓅]gبv^@F..ѴMXaaGzMgs=Ffz! ۔OcneMr8Pk\CEzuiF]Y33r3kxhӗ.G?Ԓbhᙈϟ[#xA tw *oF9uȝf'8~LGJfg+a4n:D3dx9H$[(\ݍg(@جI"l`~ UCTt}?\]O0+l?\aw|R y$!m]R1oעvNPBrΥwjʨT7܀ihw}8FJ/ȷfDFeBmeKU{GJmjXna^ݦ sixV3-~DoĞ+>wYcXMu]1brfWڍԆ;'`1z[aU}BI}Q,q5вT0fWĥW{ `%^AA6vu;1\)] 0VY I2뇜ɝ^,!8+9-Bq{W.̲SRo*%Blk_vSHQg\:?My-2߲[ghdq.2e)л--%C.y}Iz^d}@.mݦD(JpAgf@ĺНIk?4K`- g_[;L& ]mT?}_inVRAOFb2,(!84)>dT3I=^5Dup''6Ƭ]K-^=2w IgL!.B@|?L:ߥѢ-_*ЫF , ʘT>XG]e_5'62ؿ4FD ^[@Ǯ Rg @q}BRe#eyv`}Gl7|>E@Bc_'?[׋U0|*w' I~jKrmy4hKr3g$Jj2Wrtk6QAՆ>٫O@lGL+Tn ڥ@'X%X5ί̏[. Sn2u.ʟ4bY"dDp~Q`XAϣ4f9_w_GjcX5 #Dw=?:4.Ś@&7Zh}yrՆ\݃UIK;fLĕ/iy{4P ;5PZ#vxP\RyK1UlyEL쒃Ye7-s}I#0i8$PqTUG e!@!Л ;{iB2wIت?yՎ c{V<5*6>1+dH/YO|] uvNX;U]c]4njtaH7)VD'ǭǼ+nekL޳H|3e|k ha~ izzĞ,!=ƔP*)̻ΩڄM9"IoDGyC)Hpj0s~5ͫv7O)'VB5 +m1>K}R1ub1'&! }a9'{(q,?jAs> #ŒW~}t# G Ǚolk>._ 4BiCvZda롄MŤVfB$ҋ+@[{>d&/4^w 3~ qMT(ڈvV1`1RfGJlԟlswksaa7#Uˀ>y{QFrB~u)Am|7EBYOL#{w-CTɢ@1EY0sS|Z _%N{>p.mh}S;*'Ri~oE8|qq[tn8 N⍽09U!-I-Y9\>bY_WQ0VC W~M!Mo MVbߗ7˖KFFH'=NmS Q'k bṌ&7OA~M'MU)хQi4_}&apDz#="O ,_d{ Фhd/* u_R7urK-Gi# *|ar!)cXGg6*#-qq`)gGZYqƀG&զ=stȒ*vLn)!dJ ̥~xH2AHJ U3-|<̩/-c/˳[aDZ_#hC"抄Xt+DFZ2leG[t7ę 4LE70i||ؤ TRdBxG7&+e }xq'g 5㯟V|GYLhrxTd\ybuIXHI L܌q"஻4GP;Zϊ)=@C-b2|=ԌQ^C?jW,7 `,F13n/"FTCqm}<2@(%d6u?;7gsm u(9A TT Gm~6 _3e0Zۂp>D~!xS+Q4BpPǒauBFJ@ܮ礈w©O_1-I%Ƙa%?OK>U000qC=D8;7\T&bxɧ=t'PV[z} Ie4$tXtӶvc`+k{ O%a+^^OX@2M['!q:l q STQ/zZ5t\gl.DӺ575C ⱲNL␻˘̹#l~H0-F {KJs0fHfo|k4PJn@\%@7 F>Iq8 ->ve?&œ^Z^y!Rn,/u2)G*]A'Nt? K%LZB18Qcd/T40jQElN]! N fc< NLHjU&b : -(gq ޲3xUt}~GZi٨iX'N=!P:*1d!JMjͻHXEhz͢H[ՓQWdf!j=р',L\R+OEv83QVݦ )y/ϡl/P _ٟBy$)pO1*EB:.PҐBmma@4mh&`AX_w +䴠m]tz{3PX}c Fe1`2?1 #n֖ fNGF|ŮrLfxzxWttW(`hھsJ6R]>U p4jȨi-j ΊC2YR#T;_}EQTLZ%1izkABjz”cx=|.#V4GA ~&!MP\@M*ԟ֏-h=a|Pcjx; qN &]%8QcԈ>LS$|y>៫ 0]]vvwϩ޼ IÁzV^ xoKȆx_8Js.%h1D#vW5kwE*SHz /^lL|e<; SՑA2v0 l5zOmo Y.BE]xXrDpqY_raCyke!G 9gKeS`R 9t78] 6Ͻ!.g#=6vХSSYoCյX>_#ԉf3Y{ӆ7# l }~uj-|ЀeN5L~w/;0o򠎗#JJSgHEVPPؐj0 rj¯kDRiKuB *g}G)ZTjڽRtwWjAp.vL~<3h _1T=qKF'=E!/y$JLt?8lPeSxRk `m !,Px؉B<Os%hLi3)}3*PP'KoUDVo¶1uH NDR Y{i'O%䂦"EjƸBƋG[fm̀;j߿웞\EMJbQٞ>kcgf&lsBJ\o\H0JExT(3f'8m~KWq5;2SOjgʌ&+`N@_ h`{A &/,s[0't#]Ak8w6A]\,'ZDŽy `ee:q>|4NhTŹT@-G(0CsݝP;҉-c'V}_\t:x'S/QLݛ̋ѫo< MĤV6}XRXpv~ǵK /AK$k4AxL T0l'n嶴uűS;A0}^ Uq`_e'n.jBiSa{6D<`j̙1y2gqt24+VaL~nr7{&a2l: NQ=tQJ̧_M%Ulw˝΀6+?('@^~i$^cfvK{m l^Lv=geP. X,"y+S 4ИU?ccYʚ$Jx'XFƵ*[nN("|3{v<5nz]Ф$HA_PA[Q3XzH8W3jAHc ̪/Bw"k&ZM}[JO`E5k?h $7݀]u8\}f`@Y=ǸJ'PwiT7u`'Vfq3'3TqF4? '&TaZx7U|>2 F\bL8 })!Z?gw8fjNH2!?5_PF:h$+3??p3%E l cZQ;&ȿiCMu%:YndKTY93!+>U7 غ1.@4 g0 X*$|?F0;1Tb;'ex @{،WTÿVDq9|m2-7tq%po!U Y2h[gg~DFU(6˟֦k^m̋.k%`F^TLJ"ٔCm}+?Yi[WW 69j-bK8㑫b(E7>!$]9~^1mto \͞nXaC;Cؘv1*F[/]u]݂5ʎ% g?"^'@[Tb؛m"JS$~2ehxxuDN$J{<}r,Dr$oH@3;Pq:ʣ)#RwK(Y.+KPK5SK[5U@B`? H1l|{$J⯐"O=^I/\U}):p{_1x }•uאWW; >rC0_!=EM=3 zZE+!ZS06/`G9ZYqT%P9>E4EK`r*0 . dEgxR/0GZ4e;)At #Sx َbikX&5MM7Z2WWp? Zܲ[G6I^"婠кjqݑky=g/V8;6%WAʯ4 pZx#yY\-?($]&7pxGǨ3P{3urBmCB-sL&ptΒ̢%6~2RhR|r'@y ȭ0IwZi,l_5OBG1M,kK+ SF+옼?'/NPm(Ù@(H >̬d(HljG6geO叻n~w. ӻs%O9i<~ +E4nE9Y#{%IG<B/F!5,[ ;Y b]7/EWt' -3L$^&zQ]#/lI ;(PNwd%&آv 8e8gO ٖj9kɂva=5A짚q?an~ aYbUUFfwgtDW3EdtJ(>IQ0` NLAb}t3_9 @)2~i9 Ł]K&燖{ v"`Z-<,3 ϛm2c= TbTo`Uy#11nMӦ^o3SO)|4Ӭ u"N.ɀmAsR:O03fλL`i{DzUˈ->?ˁ>&5VZڹXkޯ!O7Kt}=QUeSiY >YTAoC*ȞdwbPqp.N[G&Q%C^`nZGč5SJCq4\>_6![pjI3,ÒBpS *e2Z(N-5UL#20<4Rf@ /?Y~X.ņp&EnWև"ې C 5eq}S0#aoj6L #WP $kMQH;5ƙ2Ʌ%mE}?_˷ aYsfɊ ̧Bn=fSp^ǗJxyr{q9 z=%@9ґBc&;3='P·mꎋ`p,|CW(|ؘh"!gpՈl(׈PE#2 [jgk/fBDۍ!$;ej+7Z.Ɔe1u ;}ڠa۪cNVr&G"UTbr[֐%{p_Y[6[>fVq/ "Aϕv]<קZG* Rե9WM`@*x #+= hc0]t2{|0axM1HהA ;Bj.p3 Q${sm;() lD]nzЁwg7|8okT.t˟eau04 QWC ).{f*}*8tq/Ax-/0{ 4vf Q&gpfcz1"`cQv@kKvv*5Epb`@7֏+@udJVtgUYWm_MTXJ~~prP-1Nԉ|fR^_:7 1@EЊix0vLܨ =D ) skD!e}R.0ԝ:sm/ov*)V?M] c^&7ܚ.XJ#Râh~#6g+Lbl =wjOC!+vHoc{D%j$poجi6Qh]);z2U04C/Q 6R$+r`S>̨f&%M9-[w㨩 søK__K(s"̵l'FA0wxH4A-)4 %( }76;)o+Npo7D*RYGk/S4/ק1mlҰCrnVLtLօN>"=f PD%]MւYVfͤ}hP/zStZ/Ѣu'~c:s c_l ] ؝ 3!c RDּ#KFT*M?ʱ'Jؓ 6Q'o7!ykc&F]c!36)yy ?h@2U=3Aj"<Ps ;gߓa쾡.'-AG-&1?W !vp$gyc\ *Oz:#5mu2ߋc9Yi`_s<[ )Q\iIrKС6_ӟ#~\qxtpXb{ / 6T.k-+i2"G6ߢ#e:xKڵ#XzG\st3[ DٴhK 2 W}F*۫;N3وoڼcU6oI =vK^jzgqя ^F~X"`r#. c!U jЈfoVki%[]<߇*dWL{<-mɿ9|YէΞQ8T7(Xv;WϞ͢55Ēre'xlіm4aju6 >r|GaOCvDXX(#qi , 9->ebR+L,DG'>pV/m~h18m(}!iyU38'* Gz%7319faLJ|k.1}ON&e|-LMy4w x$ -1q^(4! 1Tp9亝X߁? `T'wSe ``ڏ*:5+>*a_WxƗ[}=mb!ފE;~sdgPU߈MU Rء: Pb-W9G[SPY8_Ԝk~r?>SCݐ撅{6.ukTʪND";m7W+/*Z!lJHsp2vm- -?ǛQ]7ʺty9b3CmiZ`p0;B(>pNN'"_/f|P*a2= ֪; Ok;,0Bbَ!NjΈh0 3 +`q$*9xۙ.bM 3EQV?;CC .Z7ظ; c8ٸJ h}ӕ*=델ŗ 0LZV}  P ]sn\ޏReq>%MFKUgM'`1RN—i$[ 3ïTmP]c,8h;090i#'t% DDKmUCFFeXV6&EGZaUJ:h:Dwu _&F>'8̼z<7\,%b^̴ !^ghl0z2KTЇsw1i+#8xb m yq ;8>IE/Hm&r\:Z6\0Af=IUY[iaN۝׋ru$,{F9ъ.$xi%ahW=Ȓ=iGB`yYU8?QFqވ5d³ߢ;%fǨк1%A߅42X n&I͈nܘ#..+D @<^{]&`_%UceDǮߎ2vE.̖(;kӟv;#?ha,߭8Tކ͈{zCpq1{Q剹Vu:1xìp?8S6JaPf$dn pX&!O#H_js*h Vӹ=@W&>tslAYqd rQo0`]Ekc1v1*}aWk85~iRh`O vɢ!x!V_B>Tb(N3 :?HPˇm.Ե>x+_x;ʼ0f8H+0 vV!@Mbㅐ ^\KvN:=qwPnU4FKiMcQ 8 7L7zbrbpAiaU:h*Yv Jd!4ji?tJcG2_&2HY}zCByX&tJG;d_LH$4H)2+_!ި5uI'=LcZ|؇0&LJJ{l=ݧɅ@+iLt%U5k]b#ϟZbݎ#`-yZuEKa Ok2![V2]C(3ڽНA|cRoF|Q-*HT) ۉ{WTm+LZ_xUx1 3ZB5nHl2b]T(Jo_EL/֒pl1/(XdڤmطVGE  Leʎ^Ay*"sNz$Z2y sDыYl 67@VjyǠ,!}4;`dPr^ebb{Z/<(l{]\l_`9JٿD6-C.>H]@jnjgvJk Pt+Q8ZEI,yvJNj]i=w:%vvnVf&m'M]+SM+[Z'&w,o<~6d#r1 | $}mf6.ahxw8Yp?{G`2;hz[?- 4٘R H,bOC`\VU *Cz_?t~!huOYVZ8Fz͈raǹ-A}(|= mi_ }~)TZ.{#J2$.F~欹` '?@skL2R_P.0oe |pCO9-܍U'"vyře0eo-[&#Jo]_k`;ǩq=xɅvl&ih"V|rqnu1^ߢ>Ď#P+I2{q̧` YӨB?܌ y! IU[>nBG'%$f"V\RydDoDjBb{E?0XS 7Jst_6Znf \=_P05>^CSkkG,rDկ%Y۞,hexpݮy)` XQ2Km%Nh]D}>S@ɂ#5ǘŃ_O:@ALFXocT$IQ5D3C}Pdcwz>ch"i¢x3ES3G+}oVrsYANkb:'@DNC䵚T 7roۑC%ϮS_ay,+NӲcF=O7-?v"_~j0#>u~9 ݓ eY΋m&N1wXzQL "Dq@O!C?[N{>zCk';dߋ[IE1K5ه|ps+h9j+^iSnry@w 6zZ9u.Gϧh^% $T?̈zGZcpnc$ ~ga^z)İ݊Zl%>hd*-d qn‘UP,Wv7/c ^0ԧ <g(23tFڵƙʜƐQԴ^3cedXc 贚TYb5B|}Qݘ QP:1"y!ǣU֩r_pFkB 5llo / TRr`5lQ C8E A\FgT"v]Ժԫj ̳D #ۻsEe(YvpYjkElCr&H4 ve p1ZypEkѼH/GCoEBK˧ECAeŒ. l:ЁXWVe=.gRfdEG78 ͢D6mЙ>U.1c6= ;q5:+ ; =}~8'$Lb(!.^W!#$fu~ǯ6/T;l.ދ|*nj 3>CkǙ[mSz-olay cvzjt̕%8gkĘ\)"'1ɘZӀKWc,:|Q 4WB~;2Q.$xF`+>umPܫiN)Iߍ ӿJ1t sȎ{.+%(]iY ݳfwad#82hLG$m ,bǓv*B \P!ϣ_`Z!gMkh~Β̶G7zH+#L٢Sh!S#a:JbYcS./(!y8#+:'tOr؞"ULJ]ќ:e-tEN \Ժ|s9U>yL) rL_Bs䶧?Y-Sxc2:cXYjI!z3G0o׶ l텨k*@%Hhrݖ.&ipA@..[֌`uzvlF,snBo&D] n=m 9mQϱ/ ͵w;e{ =0azP9  \h]"dD".@|鉟 n u*^pQk4O!nͽ_ՌCE䩏' O\K3viLsn1KMtuĹ8Pk{1/' VL 1ϻRHp.#23z@T}'5ҿj1"_&{2WmJjʊ!Y25& bw5>`#Q_4!T#$9" /~R l?y9TRU e3R7Ųr^&KJϒݩm݂`40vo"Ъ2w/%0,9wW٨?SO_ݶ=Z!Smx'8\ rkCS*d4Lsitxi~ p"no%ҤhdMby )&9CEKiUՀR sX EK{/8ѳ#\> ލ0 p?N į-*e6Oh,,k┖0'Z"s /&)uG؂9M82D>{Z `3 o5Ɨ'WQ~"-+W3J|W1|ۗ^D:yj@* P 6AWgL9( # Sι(kbU"$NZtW֊S9s hvUŠ5 `] ilmf{Kn@3pϟ[.LҒ@"Q"ǒ`|ׁ\]El\mm*FNy=kGllk ꄅgq^dJ\rj|ך^dȡPv&<^M+EJk#Dy8*$0ﭑpcYywx,%Åӹl޴Ԡ4 "G*kRFwꗍesv[KׅUj2!0Cڛqo8} hEҸyl!rC@.d[F>H,J%bSa2Iz+_m g .4_wrwg~QPYn4l+>cҧ'SH2^-y𹘢Ml_$sΒ' ͠'=]?%/nj; sСNg~1Z[R OvC5j"P./9'q4rj+kp+xx~"?6 J+i7C[ zηHee?ql\UE:Mt(ppHd*HJB I,ݟdA5jGQdSsYեa|ԀՁX<1 > ϰEJ./$#)E!Wݱ u oLH qʙcyn^ʫ%nh;(W9]hz&Ș:NȄ¤NjNOXeBHY$YXn >,>0Utr/NAfZboƮ].ˏ(=g)c:_QQ2Q~K]51r4J'jCiѺ[zSڬ[kUo!;oRg#)ov>2-\tq: /0MzUs=^?ң(os֩+_Ig 46_n)2t5YO6p"e` 6 $O"2 d4<RN rTY6 {Äg3iiDycYN•8 72f bt|WagY7G-}h~ gZ_^2"J:z {X HYs0M8!Ѫ>lȹrrtށ}y3ni;`$~pinyBG!cص|V$9[s ¤P$z4v7 "m/@.]0) F "L~2ԝr,89~ߎr3u L!1u?tR690l14n9Wtܢ,yh  kX.pK\yA`g"az)oX[ E9I)RyMً)7|ֱqPU[/f~ V$(̓n5Jψ&5tVQ5@mDEL_L-$(%G9YhJ0!Y0e1"$uj,]q*EH@捕tDzBd>|&*Sl{=’ U22l hnA Bt\I!$QP2,η\]`n Cav(=׳lnU@K!Vbق[v=}Gf^8$񺣬gq~E WE%[EgНeAkl< wP΀:ތ %$Ad11PWUWrRBU.eo'.;Rf$ k0w98d&./] n&vNZq㦴V05)"܉5k/#;jN#Fd._*\򧮽L!QInp?s$;1:6 n9|NKF%IDkVՋ?%EE}7x \I7IMTw,WmoƁ?h3 £Y䔡44/4el},]w;snP{6t=n?>^>O%n\fj(InD *0͓M 3=2Y b!{֢ͰNS@@a]ЏTu~3 9!f\as|#羚~8`gt%cRJ\9`l'hSkf$ěD&+P5qU!†ѧopg=rY<4O8 8G 3WM4':N`,n'o:VAD OVe%M8̭!Om%/uMqm6@,e d MЂaOЍVHyv u&N|^f3d^/JWQXv3(X 7pVt0;bzM as䒂]>>F9mޏZ%^ӰF`Gzo:?QmyIl@*j7QZw,62) I?ȋ*ED?R阻{s7*ey:+}RB3,[k$3lՓ:qP5R'g x) bRtDnY{sU VZ芡 {윉iPRemLJn5?yI0h㘶Z{˯ϲ&6hg }w͆ I+G9Nr@h3gMa狔IXL\'X*QC1)V]̅R!3NA2c`1RoSxIdR3k$Vw)Dا͗כ-Eb@G̨΋p0JS d9y1e-C(ty(`݊+jf40\aUv&S<~='`Eٺ(q|CpfCfr]A)g;[`tTOCl QHg'<9ylo,©A=TD_ъߏ_`dQc57|]5>c9P-KOym%Q+XXW|;>$E>lRq]I?ٛ*5עҌ~6wAfr-xP_A3+0QX+h"Hm )9,8 U=(E쏾xxlW9~֨InXp՗t?=2D<6`;hPVE(uSx4 ٻ'R7̇!ى:i=[SU;Ax#>Q~2` X c^_@:{\(J PVowW/swXĔ ͇f$fW#/V}:ҷu'>YU儻?hSgҕo9Y%"ux$0$T,{tk%0j|CPn}HeV$#C|xTgUA/z*E6y*V0VRF?o3-ogF}n՜ݺx8"+p${Be>dDJ/g%7p4K>uFjLl.n=2`{_̾(MI\E%觸}~"ow95=]$#l_%=,`>9g<z1vxj ֱ|B$ o>]x'іw="\Lw\EPN0%y*A@#wm̰z4^cI~LaZ 0b?ТFIOU.Z&`gYY1iCH"(i,y%Ԧ_Z]Cnq^{~H 9-VJoc,F”.Cwfo 0p q0nMHKK^F9[a\1%fԟ31/cWd5- l9VʈI3 Sk;^}K) 4d C1M9>E$,1EprPmGFER֐͔6솨lQwzm>&vT=}e5 u@hQd4RbI7t8$L:[ P띡jƔ hcBJ;i~N_ґB}Z:dίì>$$bņ?(yo L}(Xy^ mZ;:qImѐHX"*@ / kn)"a*xxsO9AApjq0aߐ?qk¦ɗmzZz.`DAu^1j%GmsH^ofnt祹@\e(Mjyf`}qJ0-D+n~H!Cb0H ]-^bسU:[=oUk:H7+rq?ɺhs{P>gpkq>}͖9",n=.obF+1`4ggmhpء<+ҩ*zrs?!G1TdiSat \"v^ػ1Gt1g~aDF%j+5Or=i,BS838ԀmMy}ئD50m9-եD4*qYߡ4ܹsVPLΚa`CtL rr7˘Bm\_/~:?+|{s/&a$O3Kf 8t<HA;%SbsPq:}DEGS="4bAQVŘ`a[) Zֿ`ͅ^쁋>&IĎV ,Гf <ȃw|YdD]3Vጂ 3F9GC0f7`ĝSIsX~qԤȦ ݢXXX*! :q` F.pM#kGY!~9΋敮Ls2tF;sYLK †+KZ7rEZw$ߤ3W0MoE5I'-:c#> K=P/2eyGJƿéz(PxWa!ΑD  ̸<,+0mG 2![k3\CM*[\FY W}nF$慥`D^;Euӫ([]‰ֻ,YRAπ /վZTIpgU@*uĻ!;d,BS.q3l:(6Z,Iv[ԫx ~Ϲ,Jim2"MeCmӋ_sin<qA`DZښmʞu:jY ՘Bui1nFQa^in>No&t+/m&QDJ}T˽L̻2ɇ!&DK.O 9@95BP[ &Fe} moFtw?-o.Lq  K{ Y(BɵK&0]_TByǺ/HrHP"ͲDLUJ1-H MQzAD6GUӭuQ\P6 2Jn{ ޢ$T_ۄ0KyzWV6Y+gڿy=A_aQ8fmR me=Йnz񻾶U=B~ܖhb^@ۊCWѿVd̥8L]>*,G cAcF舡!Ie9zhP@%И5*8'Uk Pdm)faT:X-IDK=$P a̪GB9 ;Vg|Nwr1/}!Fr* [IϗT*y$'bILhN5*z5~/\zNpn+ʔ} r\z湛ѧ#S^yCLYWvFtAzBwc707XOőIdQ!Uʂ==B{'JM.,_+~jeybBL=BY"fߐ'<FD͇8}jG()$Þ`_Wm):+DE}A= E2:;JǴL&e"lȋ<)h:mITZuzQY-3h9/l{K`;h _\Pn؝: #M28!x頉֝#H:8IA1- #-wˁ}8h7 7iu#%@ys(& ^p jgp$hzwRj5<}X h,!` y]"07_x,Dh5)BM_kW'F3wB2=ꨀ`8 ENapFMsh{p]HDk\GC%4g-ĺ`ya9T?,ÚUIYf Z tre&:zV U̳ܿ[$:\mgRyW@R:r<9eoT7Y=,ǨD_1e%Cka{4R}ӯYNb9wrxDTDSb^ч͋Ȏm2:l2_z XwC7^X#92eʇ֘: o6Sπ̌gTBBm$4M6-bZyז,*y0Aoⷦꦽ!yAxԨc0Ls1$Us3j'j1u[¤ tU&YD/4ŖmE0)E H \_1!9ޚ^'~=۷ >OaȄGV7!B%XoȞp|.K(. P;u=5TA>"a߃NrW*0E3y gc4 Dm~~ԟgvBW~E= Z I<4`gToGGW̆C%7zLs,.SZK1b=J̪[ҽێ$:-Fw`Wmw\,W4o!8 h] Q1ѻir L{Ja|RS~fx%CFC^\ʢFwå7 T$|Nn!Z@:h f6ʉQ}UdDIǒ&`I/G$>*ԪPsq'N%4JI,Uux >C ~ߙV ѭ&yߒK=xv\ɕf^Âfßڍїl>JD7O~Ͼ>0X$xG]ކq!lzʼBÅQ勀yaAkCm?12]y[[6M1Zxu:@rN[J?4T:xM=$y "@Tj]Po1"GMN#41GZ^AvX9^ܱ"7x!1*)!aȌ͖$[{VN @*5]9%[k.#i6GOFQ]K0c_FJ`v]ܐ 3Κpt1!/Ω ,(+$Ɲ)Q,e`rغ)|4;YYfrJ3W9c i'\ Qfq:ib=bWAǘ{^uV}{zE|E9 li".}5`KҦQB Z 4OG0/RzLFo]q$Lvk#3V<'5)s=o6rBI`R3Rއ12H}l 5%^y'”VXXt'm 5?(98dTju &a|QH6J~o)ܕiF?Z@NgMr_^2 w!O|k7HtHbj#J^@ *m"u^jCEհPk9 #ȿ|_F4Qq}}SKSup Da!ֹ`͆,=^ */ZZS!dL0sRzrz e,{9LS9l $#WF[\!FI{v ؖp?@ JDV<oH:D$jxɨ, W>0{ + Wwhi8z8U Pw[X,.TbpC)^P\7[%55X6\F)I0*>.*?e=vLHwPXJH,-\}_|5Pe8B[T OuLuP9Z2Z. <O7Ks,0MBDboaSmcrG6f~%׀j]_aT"@:qe8/ = 괓5!_u 6t|Oq:4"و]d|ucQ ݄;,&4C*6Bw=g`G,yn*~ة=ܨpk 4j_zS E~-4= ONǖoI?[|aV3&i\m#a uN 0y[SOGx\z,l| kW/NsWf̤m3HMzef€(R̪VS-m$F&0O,UVy2Ym ⩼o芖{nY1@E o@٭`bkP/RPKԚߴs=k~]vXmuaڪz[f[0&iIGwH+2[ Ѽ;Q6TAAkH:LPj7TTrӲmN/n gr oqo+hPdz4`: wzG>OlW3~;>&"MXJk>2ymt el53A(-l n/(?hg/1عBnƈꅎD:~ L@xj>晴hy˫M TPi8T>Q/ODS+nzx>cQ=p@K7U/fb :Uji_Clc3x%[8ك݉k.Օ{hT Ag.qBc߽K Y}{'62a1אkߣ(l6:'P [? k1V`/Y1TYei l~ȓ؞%6W|x,>toS,,8Q[1?azID&3U2(hh'ǬRT L ;`'I?m;ݻVyAX~~^&OH224\=aotc,'(Ua@D #X% Πd=MzdCl"!ۭmѦRb"KsG!gJ_"1= s3^=ڰw:nPDS4V#5#Qj3q EԱUhU@R$7F2\) UZx l!NszJ;n76.ҙm #V쓸(TH#zCκ{*6g;l1# N^nF؍^L#plG=~Hq,|)ߒ2!K#m[:OGyB.n]PS w[jX2 Yv߇*}u{Do ! a]7oFOheV)4[qQMq|ٷᲉc5H6B6V\ve$/3LTzӗ:cB`|"ƕO^èk ) fJ QȵSwGH{!|T/@ 2F1RXF%/N;Q-&Z<ԟgݝ/5yJ}E9Z~\jp̈́H,/cuw&R{cg>s6dU}ǭ%>MJr .$1嶠}SsYgXls4W˲VP' K)-*$ڶmfE9])}D 51ޔU!Ĭ-WrЁE 4)iO-S]5טǬK6|sqޜ8SJ{80Q{a9P@՘ҕ2C”)f v`r {s ?%w mFB5{vCҩG=9nix8-95kzut~ E:|z hиwbk}d #e"DX"ϢbyծR"̽Π%P0Ĕ)a \(m!j$$$avP!aKC ޶1l#鸳57gVd!3%!·W|/*G,lQ8ۢ6NfKMua&Uh$I~Ͽ n3?kou LߚJS5[($5~O'|KAȰﰹOfhÄUrō1}Zy4!"6hg-pEAڠMHȿK֜ x ߍD;cW^0R?wL u7M,Of #v)O5m#D>ĂP-@Hw1yB7t8?8i^(T |W}ЭV;] @Yn{7^Ud:zW(~I=טRR* jPWPFܜ?F-ŭO \e^]ib;JۆB/4`tzyn+y«%mhݱ|.څJ4{v"MCecygb h)"UU 6oTPd_~XM^h9̨s`?hEgă;I6:bC%H>l1IW'ެ=+@9չws$@u?{u<8/v}$d8z2;wq:Xц^~CQ¼UDg k1&6T51V/M^ˬwPʄN?.KQh7>V(dl+/1G `'u8DB7e"рyBbDHIcAx|=Zn/ԥ_^ڃ3Y:HgծC\lȝeUQl/33`ى3~Of$L9!W] BePYET#VW;G8ue ?ɴLż(0QR#VxE9+;԰SM"g <VzMT~ϸD8zvp,8n4lm_EB! aPd`ZeMEGBq)Ra/eM֩1%{l[ Ol7n{>s6rB)]3v$asuԦ\weWձh@.)T"* ~NݗZTjӈ]}W1FIjc`n,I+6zie%`1Q@o~\[4lF-v bG_tl{o3Q*JP6ڭc4N;]}5<aՈPʓIRH <|taNr-iʣuѫ]> X٫Qg1y}@0e%GHE$ѿIhmckc Oq/%XufX\blѭq-z$6 /c+ /IoegP+!O=$>s\uNtJS؍&鹾hb(;A=^mNeȐC cm-s@8Fx dߨ=)޶4 %r5<C6r|VΕ l:c[k8&4 &$*p@4> 0륊GiqJ v{?58d*<% ʹ9D4ۉTYU#+0·z>iHg?Qǣ;¨ز&$lu27vNslFYp=FAxiTZFYC51jk=1HYݎ+#"/OIbd[2˧6wJD^ω))}ź/Pe񪃑sTА6CN.FHP4Is_nCpIf-_ľYC%0gAZg< `1goA v"4we >l)S[d)Y(&}`ܹ,9|YfIuWH1M :ȑaL=dY.=빾GSPt­C;\=\,`qUF9𐡅]FxsDЍ82`6I R@W z~I+AXiUU $jK/G506eRp7MlgzC>P%Lطb|U15 V8N*Ř rmԍmRV&᡼`9☵Dt\_lqfTI7+<'Ba Kz*z 4}\Z-+73ٌ 1p(t5^d: m|ZBG`~ 'oE1+Y2FV.&ۆξ+ ZBAVTX-=p) jIhT ԃI  s$$u6mwy)V0)f>jbㆵ*AB[;?<3mD Ȝ d<\G,I"La9N; qdQPbx]*1U͑3vaCY+-C(_2Etq2JNV!!Dۛ'VAȝsd"iȻbN"*1sr[rbQRd7n#/3VUPg)2F*x,'/ָ4^0KHt>5B\Ձ-4&âv tKb {=aFôዀyM(ѲCjSjVĿ׶quձ'C!VXHYoѺ;D'vJo H Hg!\E\ <fSXճKK;$}*]sG 6%28A|x$Jb@ps<<˦h0c <)#C~;ʔ>m }A!9Gph }TߋAay|!xBBe虧f"<;DHL[\9O>maN5zգ_(պ2Xk]LKmT;#E[sS`a嚴wyWyPgDޠ,9M*-Ϸ9:(ݘd/htA(EB`@-Ȥa).У oQ%#‰%ZUe$+dy}\-D]Q %`y'xH #R@kcыfhSSԉP("=Og&{Z,2%.wf]t2Vb-'l"_7%b_a83Y끰K^L<+NI_#Hl7 Z,AlxބZNs?w_$/QҨ%䠔.qL Ä,Cv~xT9^H 6Bp~,9lm]?>wI)R#˟Biؕppnzԓnُn-rcEBWADQQZ0C&d"VAZ'oh֫Qܸ -h޳;2 }&}H85e_:E[; 0a"nOB{$l.nTl@=F^#@Џ`Wj,cliUSsfn>dGsD_5} IH~ocr{H92νWy0vפ)2d⿣A|X#ڃ3B&7K ڎs'"v=- 9ӖрO1עZ- ^SWeّ.P 9dbL\ ,ȂLֲ'4 (5-ƪL!4]~MvH8KBz6r#}0v D6^'1`)K\ZhMCp`@DGvqin 7Zū0᦭ vkq'T{ ~21Dm8wDX[jybf8Fj).+ sY`^Rx\X;5#Kb]sysDA2CF'0$ɂ<.S>cǴ>2p0t(<\{D?<#4mf>yAY]՛5xǑf/t%iUD2Ad6`|ZC Ͷ}#~]p2+^YuX`(С^^q޸5?J}$p-L_o4GpWKG?ZHJbxPS5 N~r-`psy=qG KR~ZdCF]ےPei$Y~U}pf"IJiP<>#y$:G'Xzi?,٬!ݽ.p|k[-:s|KZMw|C qMMC7VOiⅶJUA+p^9ڣnM<\j%\]shiDd96T ؼ0sc09T| =^ -(tDgQ; "]% `;SoW9iV>][R mK뇭6m1NܦECn\AUhpB\<bU%CZ st=;%"SyL8rSAl~m̗?5KKI+v@Z\tZq Âk@c&Y0 TCq>V.C'`q}=mekfӛe;Jlf.qj72ܗfC7Ik cB!ڹ?F@؏r\M4]_gXmJG˽`j.1c69&EECt="q{>3}v )@YHAYJ֩p?ٖ5MNvEk?&&<9tUsp-CMؑ1gWv-RrX߇n` ub A沍1L YJJlS GQ) Mζ_`~?*^bZ"UȆ$n.E4J /w~!%i֦F5y>Ffu&3hr 6e[^󬧆b$/q 60BC\|vÙ8K"9!,9)~$[)VQUU^4ڍc([V4HQRR*ch4Ǐ(M]ֲ[Hz9 [7NP_ԗ9VkUԿ@9Y5s! GU4T~yrcçэߊ g s!$ oҰXY}[q.ckN<[!PMOZ2#1Z#NG+E͎Nh7HgP<ވkY(o4 ҡr `*& bED4|W]gklW} %M}԰x_8( gDnL/ >։L.fYpdmpėr&]]>˺I rE^Q05ȳD|47Tylv-Wvꥯ2ŨHmN$_ܟck7Ne@["`}rJ`8F+ׁg h prq!?X|޶<v6V Qç1|`qEoTj q/5 ?zXTG|#C"βTLjTFӨJvJzKϷ:uI.w|aBz K 5g #<6p!K>SOģ0|^~Q'< 9=L~ma?zewLnMA Lhvm+,u3hoЇ⦚To9K;L2O6mZ{%s.\nwB@HLc?#'3H"a $S,5YnqO nvrŴ ^.Ws4l_O*A_5ƴY1p@ceE|/2p]ajBp!;--_=|V'dF} 9=r;S,ʹӪO6I3'bYN5Vryc yݢ(7DBCB*+33#7 3c-M"aN8T> ň< j(4>n()*Y7յosX#O2le~G Z3mPh Q%ƱĤ+dD.\g߯pa៭ԇhaqN|3SuV!Ʃ2eZҢ%ohakfSVWn՚W;Rw7ssF0s*-pQ2)KL@ynKlܒ}X9H>o6~yP5YͥNlUw\urZQyxnɦv"~UT$ŻJJIZHwEEk ~ ䷒z4rE!6ݥg:wgpMgHoEcLEĺI rZ$jSDha[kB1^48u{cT"$7uD%g]I|hdJ X|˄BMq;@mO7m_tLP쟁J֮Ʀ{ko6z$qPg @)*/2N:t>4Y]ob[.wp% ˋP%Ua' y>@73]lgao~րޱ]f8edmG6$do$æL_,KM٨LX [~+'wnt@J6]i"*Q]Hg,j۔wV3Vq L--XDBȳ{Jl.R#|cDoþ$a*[=1qy|-2>paa:_,vhPSe?ˆmQpjȩ s]HIϲqo%sl&4v"[ȑm\!>1MEŷ qMKE\4 r}l9b`x 5tr!g0%-ˢ`bwX~M\}O*^"&8AnRo5Vxmb+#V(h?剜F19Rk-&&Y)Rh; o v [2 z z ‹idhu%{'k=jh', k0&+4Nۭb;.Am|9 I;| l^zV`/s$_MEڍ-]Q8EZ[V %dvAK$'Y m~2Q=#O',DD n\ ڊ0q0SslY STy>IruOFW(^ͽlR㐽FrLj%oF$ y^U5+鳡:aI]Tcʶo;#nT_ U{y|݌`1Uf805^6-+X:iR/"nL:N(Esi` r,jk_SCTuh]̈<] ryEB= rJM޹pIy"QD9Ta!1vii3zKRu%=RwY(]IȯbVY4;/΃B$H b<-oȎ"2'q ӗ`~@+s{w%C*i•= I6ޓyf_ +ygsWkYcW%kbb1flUG#:)x\$w(Hx Ph]T0վ} qm9]iXT@1êEd>ifHA #d̏ZbFȴn%wHtXgur`3@:;'Zu?kQۖ=c~2#/.; v}HRV{Y5Ws.Rm_(>[@r5D:tR7i9: w9)X)eRᝏp]"$=nB^G~2u3a:O rتjq҇wȖ4EهqK3!2d8X:Fa-BRVrqyXO`EF/ӴMP˯AbUS,1uv̄oԦ}GbJmZ_:\JWΉД52$1"rw4܆`[W> >B3=;>%]aKQޅTgjUKş`"!V4(g(S .?2[is-sE&a\43]^u?a.>*&&?/?D?xy2kk_?Q8>4eש~=2XbE?EnGy"G9!-GYhQ,9ӉJYkK`^ zfrwf $lEުa UI|I:R$y؎3-B١JPk+HRESz+`/:߃>%ͰQlzx*:` 2O&7Gߎ[+Cmr']᳻bRDfb5k'qF4F\C½NW7 H1gp:"K; b;6j-|MwhAL+˧A_ }?lSŸ0u9'@1> Fmz|Oˡ`IIW'y8A6\ U^xŻ ז8=a;G4/HPK246{k؄-G֑K<Z?h{A&W)fdžW-..X8ho$9/P2%Hŀd+a9vVFe!k5'}6FQ6"T|nI ހȞ}~1p0o^(bun6pڼXQ p:JVI Nq\pe|cw&=e-YR?iG[`qw8\1?6G4u%C1.|}*wO'PU _[V3C/Sk'#5Iv~d\;zn^53= uRU`'P)|cgU5$l^&s{.<j)MJ[E|{[>`w F&U+0Pom$ݻN)!+|NkۢWxIpAWu<*2AcN?$œQjO;Y)Bw\0QYG5ʜ˩5_:eo|AI*%[fKnlOQRmֿ|`_8.KPHo:Za5P\w HѳT}`B$|h$G?c$_Du2@V5 2~fCՊI׼TR;sM]rps/НfK&7;ǿAj8D5n]`*>/_ PE%mAČ uq/3eu/hO,ydD`5q7o"ݤ)O -,Sdĝ z햅 % C$?b1?a*5@`3& Cj+ETA}m[ ּ=v_1-|;`Ӹ,mN # Ոd+Y[Or#piPV]du S$A<W-7~NL06N %%W@jGDp\O|%EaRhfu׏n=0SE2tMIV `@Ɖ;Xɢ&}dL7V&@D]@S%9yilAP& -e9,Az_t- 7əyw/'vϞ30H9y)^I߹[T/2CI̞N?vGU(ϯ-]_վ'ML'`ҕC0*}3g.[£pBCȔnvtd U+S:mi3:΀ZBci~_RU"RY S:Cī İw!שhd$6(^&l&Dn[*-)S_oֲ :mƪEȌK\C!hDH gbh2UE-F4W^e3.빡'evI\nYF^a)x++IrSU-".-}sQR;fd8𣚾dց_EM=LU| &geIb JAZy>+TEK͋(<Z񰑴B]yAߪE=2a$F]Mj7<Tt LU@#u<Ʀxr9SUSrʚt"Ű2RxjCǞ:e)V>@Fņ|2a` 1.MWzq/6ѢGI6)h^=]/&xxq*|Ŋͩl" ".azFR0 =S~ Jw|@#%cwX |.LlDFQ<DgXhLe2 =K%/T$Bv̯3h'Ke fgJ]@Bzzy>^6(5? c)0H3'VW&^GSvD8hllvXw XU.BD+<ƒ43[K"+-;55-1[$@Bka?mRb{/äOv.fQ)5𡉮dI˄Kd9Kah$ f~:nEܽ27ӛ'i2̊-f *Ϸsn":?+ܲu(kOz`tcEFӻ׭3~6}YJe?FaLf݋[ꙝ RrPܣu0c+(CyUH7e)505 |mJ⃢eG62[C:Fƈ"1+]'xoV|Q=iy?T=nç{L bCE)jč6u)tȵB@6 x `80TAc4 ^xX&OpAnd_A"'N"L)QYvJ[lTroHo,JgLB;ۍOd̷@1hݍY7MYV3 П5%bUmF4&b4c6p*7UrHM2e,fWݺ͸\A!,SSg.p6lJMO5˽L;I+B;lJ6[ET7"JHg`<xj< &T曞/=č,Hˎ] ~\r>-.I*Z5oiV`'C&6FL/[ -<@Ceݣm`Κ" igB?m (18w׀G9F?;0$clPX@̜%d22Eod'oXRct|dcɋT3T뻢h_Vٿ(aW35RRqC+Tq/;qߞ3v[} sbz<9~mgvJ^ȳi; >yԱy)ztWVd-kRW)jdv1Yˉ#vrtл<HnQk_Q;?@:`N^i%0).? jiWkփ@V}.OG-П5E<QRB tc3ҠA* pkjS; 0{ʃ'mQEp{,o_M{~%%jjlZ G d^nu8>^uN+A&/%XWI^VBHL}fWV0(8z7u}ޕUwPs2!-Xv(dTF'X@C0Z>wɗ+GƢZuWjoiM5WTuw+3woq Шhr)kz o+FuZVB',Eb)Gb`R{qӀRYz^䏓0yD*USO3O%<@Wc(=iX;`~'|0yCp ^꣍@@]W'>Gi+CB(5~F3Ȼo?:ԃ)}ay=xh.RP{Yn*A\:$j'ݥ,*Ƞ#b09luO3N{DIS#C0? 3F]U(} cJLQB*}ޠxdQ^\%a87T WuP~a,zI]ykQYle)RH⠿ʪWΔw^+lQv J0Yٙҕ Ғ}̖*PAAu*~rحw|?W TtfS}Hg쌣XH9:=+"X?5cֽ/edSO@P+Eyy93bl鲂0V\UT "k}WN#s\D Ҁ(\vL4BDTa9T"uZW1:Jpt ‡{Ft R@RUC?N^i[ 2*<}Xԝuvh'݇fN\p g66yU>'1"e>!Z"oc?KN~lBQoB1}C+6#B?D[Y뉫*rYmaf l<<8JsJ|UPtT/sʄvf L( ^NIwzh/V|F(kZjS8OKQ0 TPl0sᵟapgLTP}G-h|t:6ǙrShOcMشS!@_ry)L7$m9hv{*6si@PW3V>,Kll+e{UV|*"j& @x (8۶n[Q1m7`lS`=Cl󋑠)GUu+()\A)6"jJG>"ũbqZiֵDT HVbnӁ5 |tS #E"n$e H2&M3eSa;PۋͤC bZɸ&1OWPOԐPy̳R8mH2h(XE5G@BE׎o!^|;|R`jbVk JB! 7J$+C]Z!:kY>B 7XlU jҏGh72"F&7= ⣃۟?r'/NJW2c,;2(!IL^x qdvæ<3lXJ s M)sS` <}(`#m\";f4Or!-ywb~?wA"p}uq$b酖w9nnR  閾?,L㗹 S[zd9`Ur ci_l^{ S$m~nBzK05t'<}!z9k]'2X: JMJJ*KӜ{Mexh)dV+g&[VB^`72G$+.rСv@}7Zv" nt< vx_FDɿ??s~\;S8ul)0eHu]tydsj+j#9'Ólp^9:u WUrDlgWsK2R;̂vfYTfPP4dbqq?3 (00 eJqݠ~&$"JnZ/P!!yQ"*3GzG?קps߄MŦ3I\x+T`H6Xj:} |kCF!;S\EOCzֶ%)Sj05J n#zX lF$ i1.ml=K`B+[RA}A{ɬn `F aKy59DV/Nm^Hsxm+Eu6Hj'mOJ MBr#cqLiOV ]W2̶ <S鬊 nSzHdӎBe]Ď^ .l{_~,`!?l]5뮮 VDTm/ Hi!l0o+Q /qql+бVDkc UՀ\k =?AF[E,Kh UgȝtVƔWꡜ?ރ tM|Ax>鷇zW*j!ԞoDéy vy_8Z0V4i4bMvL`R8IS{ݴvRgTZ7z>㕰lK}YPHMMf2{sOA$]* iC_)<ϵ6SØMAծWԹ+|29"Q(͋cI%3[~6z^l؋OB4v/m0ұs˪Jj$BH}P{ln]Jn/c/b=Yr4qTY:jezxn +M[05:wl𝿿",l>Vmk4OÅ鏟qfbn턀)(·3@Vw.1)Ejͱƈߌ ]Y۲ٖo"r P V5p7 _t„~" N ),'!Rdt[!w hDSōHZ]X$KeJQ0A\!VM41KRIk { ?I"GzVg߆w DO(v)0(ș(ZP@~x*LXH69{F7O<˼İcq_q9<м6Ύ@?PRxRK])PNR Z=1I 5dzo}^U{z- ~azX-A82Ñ}'hikv+՜ ާe { <.V؊$|RR 6cAD]4lB>bUK^Lӛ1Js_]s<@arkf'}KN.0e'7Ar9U8F4ImbȽ ?'a*ryi9' dVDfͥ kel[FI*܌a}%|0Op\mr9+,E_>aP6Iڑ>+znР>y))5@}Ba5*vò}QЃ{/ogcNglqW†U:b8rfOr+6L\GŒ=G*1H>=N MP1P9a\W{,}wlƠ7V?0%!l|o9&+{߲sͮ?֑ItQ("T)د@/|i\fv<G:]e˦|3B7#j1+:_yzGQ(ǴȭIȂeTGAyJO%N+AeRh6޻&v_q(>d n4LyݑMm,Z67*yTu.z%BX Pi./}ZVzQWYKgרB RV@wdza,Ѕ[3s 2ZbMK堬I@nFhtѺ,%(:ٝkT p9QOi/B83ӟRs>= / z|\[ͥW'hA-הxNJ'l*1mTۯ1qٹw/`)gΘ\Tˇ҈Vk\4MV/vௌhDԜ"-$xC+Ee: v:!#615M4±S6t= 뉉'dZܳM=3o ) |\ȜZG4;;;o@qArkκT1U}.]/TVUnPb=[/J)DR܇?VwrN4%'JʿtZɤPyfO!P)  zJ*) ՘Us1/Dcy/j{*M*|]IUI'ݙoݱH(tQ\Gt`Hы-Jn6QuVUM#Sfd2_[6^H1ݙt醌|%׏2Ћ0oi30WVAR$;r" H&3**s(i,]ch|*qoqmiu4SM': 1IVAËu/]'kY=Ve}#%>cD,]ڵ% @p8n(puM5a J"N@g\UE)~l=W6 18c zb Dm\EXr: kt }B06dgaD*8_8|g0( m sC+!4R srRd]dP$4͐`+n!q^zLho蟩X8$ZED󦋚Ks-3ϩ:Qm{7#[xl"z ~^O8Kw fXLx{qW;̹M֎uB7BY᭞P-Rxl6Mb*L0eN's08~n_g|q0DG(wjH󧇃$|Oy* 6Hd^u`> z|C gR>w|uqoS0!ae( ^3׺A_<8ԥ xmq(44ʺm_vHI,Kr)>:FiR[񥮵6c@D#ǾwiӋ Q&v3 ϭi#[1CT[lI6; cfߴyl]#h6ۨӫhidNtP Zt#b5ecxk^K8,hlJ[$VHyIaٌ]dʾVC%f~`1l-QH"P@{bJIY\ M"ٔFk&q' =ecٕ5| xuK *]SIR+%9_fي`u| 47ubhu2>`Hxtp* ߃Қg93k7ۚ=eO{`9nV !6*,<=X^M@-;]/k;UhC ߖ6x:лgD&PCMR[gj\/!u>7924qNN]!0p!Y<̕t"IYez%(Y]%sտԜi :R 4q>۟I_\e5[!@MǍCa/YdgJyo!'s~f)ײئn ݼ ːp}hMn_"6"1* Sب[C(ׇSIMًmA gCnBFjB?tJ AOr眱쒨a,ʘ@arqݢ6C@rQ7MajÈ%nXC"ȍb}(g<(s6^=jJSfH̦:jS0C]lޔ8-RXOLgl#R8}\>yCPWi:z(۝u]N9SR*-:>m))&8LBBWU{R2>_Wk7p|]&k !ĽS(m?o?(]j6ҩ0H%[~b]!^q)Nvh ,:5 NEh%b1fCKy%JqW4e,poRҧ\8b>5UwaiEtqܱ`gCXдKΎZrþSJVe~>`P"]4zmVR#įܧ$P׆X6%Wd,goj-3{ " u> rx<ˌ#p UuƉP٥Xs;ZiR1h(Hx.ēz YcW)|`cZUAJPek1& ؚ/}Mo)R?` 颥)r\6O-3^\p˖! -kF[T4NOȬLJDVz2:&"Ɩ߰if)o G`<ǜҋzt}xq,jb CϟJi vո̖{Foh洽JLO$;Fk%Hpl [cY'ǩ̞X]7X!<2X8Ԗ.Hc曲\>L8nd&y6Fz(5ar<Úns*!3\iGڣkJP/{;8޹DF65CR[NA|HYz]B;DD]=#}\ Z'>a#[ڒ}Y#4> >߮F%n?!U!.vS?=4!;lG`ՙq԰ƍ8f?}rku7 ` \![H0pyxAU\->j~bQR-*ܖ\BђO*d-a4q-3=d> ƭ@(>&,=*?/y9Ϥ) -|'LJEGHb7%-%^MZU`"bCBwCnLE . TYJ}þV%3NP=Ңy`E2rF$hFيR-(G@n^%],eAJ VZyJ)i 8;z'5I(tkӊV׮e^@<3΢9 ߹t. l5TwՖnjL8ھJƠ!\+JJ8ͦH}=ruҞu2x1X"QX SJJn,ti-zqbH j~SW9FQnv[vˊ/ 6ۿ0ꬪ$S2>^ ͬ%[s: ᄖt z2&sz9:)6m?[{FЭ<Ŕ9E0 /U؟12w'rzbOSYg y~`Dw ]lx4֞k?\CCwPb$@]{h|E?aF/ D UxpjſA Cfl@apw5&rToAp99i5^z{yg$ յ:t@J\oRW⵳D|YU0*{D  lqyq 44DKGe:Ii[i/2AO嫨 J<ٍ a9ht'-!go;.47Dp!:Yf!"IIPj#(qmj|7HKןY=nAAۂ8Y»#nc&uLcJcd,URg|#A\R!ӘAʿTbWɧ%н=) B ('b>h M+ 9%?|뎒j1Nf~ɈmVQڠg-FD%(*a5dBߋ'jO f"5YDCQK 5/L^cΚ&p! >J?tU2?ZyDh!j.aH8t7okҟ6KUkEׅ2 $ ͳ/AZkH&r¦t̚8_~y "rH1fфJ DwVǰ?Ќgew_Yn!E.C{"5sDyqC"+ɛAS`UX:k5ÝwⱫX .`6g5i Hgu5O+"ՠ|(Mv:'HV+X5_Q.mRm8 ( $)ܜ~'/}ƺh笒!#{EB|:7Lm:\zҭ#49~s kIDu/)@dѲ'AWل3P sR%jl )۫y\@_eJxW)Sހ`ttPZא9WfGph^5q-&7Reib\ xS)`6"?ѿH# Rަ:n 酯$Yx,;XըR"\ڍ˔2fC ÌΘ)6_ 'A6z@I)MR $!^%Apsmc1+js$aZF~D^U ffҟt u/8{C}ͫh#BŒ9~ʤ D[2oFzuHy0\Ztg~ yQ,M^XV5˱V=Ue}QӊM\f%@f6;ԟ ?h @( ")1YKds`&Cu&NTzYl)uͨD7`.rG&K0Ξ%&EXg@8@kWjY0VeqeII^0NX=[֟S5Ƅg}Fu|_WS1w WʳlwMS/C݉%1 KEqDz Òn }\y^XW _s#A>ó $ &(39'kQ>ւKQtSRm/o沥Oc][QoݨXm?>M>4]elw 6hKE"^bz)-z#yʷ9@W9Ae\1Y\XqԇAn/Ȋ $3l1/~mjE*5/ndc\̿ 9Q3`E9M "d*qh hf"x_@1w*t OFetfsV8?[1_fazH("9gWT Jv.Qn*[?͑#4~?yBZ3; y0:Gze}#9ۥToRVj"TI>W^XD$2Ví׏D#C͡bv2<1/mzįB%HDε@1墏bbY)g`{>MZZ>e|H-G%5Ng]d.{(3n$C x6C*DcWϑC&5$<4(@E CV0 {U-1@i/Y5I[7x28JL$j?>p4s=E. ٍ_^!JRj]{J7SJԒ]jP{J~[HH"xa>r =%7䵛.~a%(;['Lzmټuhy,'suݏLjm8Yn3V1!w_| b_;}((HX|R_׭5X{ KCr99>׻'?n䈅 |EEZaq,;jGm=xirɿO}ltLWhJ2Aa X6)MuT4 RK|bɮ5w՟% ̖ĠH۪w++˳J.n1Nx6ӕMc x& z ߈s#6&ΐgJ<%2vPa"9G:/!@G|cβGeru Fb8xQVimT0NQ_-XfU`P DM0AwI&j88mi+O8C緮‘eL#)9KS%@E)m[jw]@kH+Dv&m%y2 jwXu\S@Ţ$ Ѥ`N:A Xbd.%*7y7xb Ҧ^cιwؙ Ick#' =Ad=WF.D(XmTœy_66 a>⭌9Bvї.\k$5 23Z:5S¤y\5P%VSJay_T:HK IߢD5W J4ÇfKmkYK͢214~RPcZ=0Gs.kJ~2eZ.>-dV`9B8t4t(d{Jޞc4 [h%N:1OW*-wɗ-0#d CdXQHJ,zU݃ ZF;و: `оYf;=aaklXviM@#]YD,y\}h!D&, NЛȠXeRwYF7ZhUl8m+ooȠj%(_v&#ң%2-+ӣYrشas(y\g{D̶>iQTX5Ztfem yE-G!֜&!8W}3g+)>K|=lS,G_v=L2^P@ E@T/=!Io@~s>9xӪ^VZ a>m%3R:qdl <_ !BvVxZPo%>':.cB:{!"Yjn' TNDPDuB4-60?h{s6g ,%QFA҇Q*\ Hx!efcQF|VJ 7^Vs+u #DF:Mjʆ#>>ۘ'T>Ԛg&'<]LU{y5aytꫥ? S~^Z"MAZ$\laHsH.6ߊp):][ʤ֑G'{kSuN9,qs$Z_#cjkty.΢w(`!떢o<9 w?gxnȎщs_ޭ#.)wfcW]!j8!rL` :aJJh-p[/WTb$"L,],v7GㄡOk*Fiwq>bO֊p{%jǝ8ūVu;LuK F\:G%PP#dngA@Qx_{.[pWjBDVeQrx`ǂQH^p8uzC1= evDYN-55X5 SZҸ0ٔԆȪL=' ZX,r"̜n1ClH82\ϱbX@҈NRFkRKVݐ<ijJ]zzښM9 ]  A q<oqV;u5m#&FGVUFC. d>`6nk/Ld8}؞ @="|QY<9g)#Ҵ qN*rØTGJg8`_ $]AȬ|/MRBj[Eܸͥ({јx~q- ʓ-ݛ`a P2Q2F^ Ba&FID'w'&]_Ӽ귪_bOɾLDOe(^#wu[Q(M:O^T/Js2n~֗c]R8j xM/H x8˂fB|2':4o-.db.j%lu]`~RyIbM*O.W% b2bD$LỸ5_2e'zm? x(jcVfIqedp-®#ZDPwL%4'odD5h &3 ۀ~ Ai3c /lyZcNLg x6HEPP^c9$ 3d{8,.BZ>JcNjoFOS`Vx5Mf/ ] eՈߜ +c.V\GŠ(%OVGaޠNVEs1]qU`JYv"+GW폼z@iV ]]""|^l.=ԣNO%//>/p` |Eu֎V3rDFX-Sdn'6=86lܻ跠CB JMoiԛǍ/^\0+>ieUJˠ#@{ e5A1DPn ָi]=8e=n%CbJ5gg T׋I?6?(n[pTq4(oV5zj8fjz(iin[kuq"Y1bfV5&^؈4piFehpmsAA`@^L&&>k$xiB,;GNDmB%p;p.y<:qXM~%4,VznRO`Z3PXQ+7#eK;u`;IUxd5k!=-g0[ u6pQe淑i"n2~wq5 I] s m絗) eYEZrL4#uzZ<$< N2SL{W֯ǐ,Sݮ6mD(CH_'D 3898lkއ흒+^ɩ$#کc>ܩv@hufu.X@+\7e#P'4!UOHfG8?)f̖E_$2B!1uU7)B! "M "(4o?5gZ/hl"|}t}C6d|~|PK߳'[QzBv 'g5ƢսN~-KT GMuכ2z!C?O MRs:L$PPUKVIհ攔, p~/!o7(r\sO/I⡕dj5 z+VѶz[Fc6>pszv:hc4HhB%mIk L7)iο9L&qJvf2Z%t(hNdA;2Lʂ%H 5(2rZs"ж>s\aMG,o0fL 6:K=:Bܾ VW]哜VZ%@xePasmi Qcc>ͿWv+Aa2JD_ iSlpV%b&%/װnB֔pQQ,<#yVr.:ra+u"i(w[9fa3= qe<$)"s*h#ƈ8ۚK maj8{> BEF2JjEgWųn KQdT|ͪ-r43 >Pt6+荰 Kﲕ8Yb:$$1Ƭ߻ۃ=Y~.8g@o3@V+xb}ڌ`cK!_)係s?r"gź\8͈[pXvc/808%<'[s=GjiTru?ae$ ʴMVj.SB\+3~ 4V|4wr= :P yj!PKͼ 32ͫY$35ob@$qR^6t*&Քy4K3wV@;N,yw.;zm7g>| zY˛#n9)ѯd`ۧxGL,)顦GY$u9k9>J/yd05Na"(^@˸!CCy90%!*l\hI$11}Bj_9 m]ɏ(l Bc!ֽr6P"{J'w z+mt;f|N9#e=9"QsqfBY Tl)0%ϘlwkX,ؓ!{IlxܵLKceC^k/wɤ/V͇N^MkFDVU?5=c7m+A7:?Ta6ם W D=eG WݬK" ق8Ql *9$!X3*RI@p%mLrI2fi&kNrݎfaI̺aT7AMEsɞ䉋 Ef1&43GvH [4}"~$qRV)5^Zɡ׻RWseI{ !35{BKo+Q^q_qzrV)]yzŽY{$ #$֟_j*4Sˈ#s;53^+~d["5Ohf?`)~qc!S!2S FԷzʬ9jO /P{< !lCf)wkB5 eD}V> \&ucͽ}^ah.u1"!')~:Y|1P>ʋw76cA)=x-wA1ki`=l ?衯} =;<1& n%Vp mF䰏b!*ʼn.Ǯnſ}9tڃ0oYo6pM7IK=GQW2穁+*F_Ja7ԓE\ўH}݅6k5J7PR P cɺIzL 8MsLi3p?vub)McF% ~TN.kӟzXz/Lx7fwI_^'KvSѮ!HNnw{EmD u7!Vo6?G{&]t)35 2;$qͫ|&Q\n 4nR(&7_ Hpcb܄eۿV,o,F- m@6=^](} lga/B4h `@] %\hCKw71Lxx:9(i"p#Y7*Qs0am6h߇`!JkT/'Nm^YξHKa`K)3ҋ,TteGX}X}'h306 6>vUu(v= Zfޭ8lQS.Lx`3Ù̏MT'4㸜9B nv%dsk$uqz밑\e29-gSTk: TRd1{Bv5Bp+^^X`5sOm\Ws lֿ UX$l5[(I _.4Y|zacj꫚uvdK& F\"P| r`06U$۩w1t}02a؎$H|uOG[#$A-x}dU\Lgyqw")Aj."9Z 98#pj:|ޟM*kecw; C 8c_v3nRqjwuBH`ev<ׇs3#)yul$)yǚ:*>f%UQj&n3/?@6g?sٿET3{?: ͠IDǐ~|WElh^*Vɥ8wOSuJL)lX$CxՂԍްB@H]c8JbND*;HQ!ػdHU\'H[kvbڪ㵦g`uc~3=4Ҡ3C(R,0B%19 _zU6qtʐTGGՏ틂0>/W|j:7~saS 3 Iב{\lE׽f޷&W*h!sxlR:SnB0!$,فúlY6ʘݡЋ'rKqq9lĬ)bk˒";; fSph_E@w!iZn)Fo8%|(SIOl]QX8)&.Uy$!4]dTqvU}vdSۛEmVLPsNHlvb%4Y|M7Bot*<c90e)t U1Z-Zʆ/O;\FIq9Sc`:;EDfTzvʄ{iwFy. cL k5ߔ>?rDy|.-ܨUM+T|$әKk[tDJvA~jbѽRȊۉh{,Vt9wi\hͳ6 LxYԭVrs' ߡHS;7 '.0Հ1XsTgMy x,L"##MTe9'BZJ{LF,VS 3l]'̕Ш7F+\xlb$OhT&n/KVM}{GD]wzRt͙%G czN ^mIs rzO۸Gy)Xڏb{ }(1(1CL0c*j^LB/v"׊Q.g  qw *4GYVPG5)9kI|$exQ{XH@W9u…8a 袮\1{ڳ#Xˡu{#21DE@{W|yMw¼N9< \?|8)%0X86rYQp0@SHx&a'$f. 4a4u[J1ox r7?Ra;+hfЪW8.\xZ]88I blDZ蟑x-x[hkgC<)RUDAD%XBq^1p:<*2 aqși+R[Srւ#ox# ezoSIj}vѧ~qBS`:]壟ZbB?2}; T3Zװr0-ϚlYewVAjɼVcFK֝ (gbi24 Dɡ\U+g+,f])Y?o˞[OŌWOAɱhrf^b1`Ev8Zo4"^'Cjڭ܅fɌ8?^B+kB棌ƈ% &W0lΣDZGՉӬ2˂MSJ΂_-?߮и|.i_?3;kWL XT~}gLĥ;sZM/d3\p~;ң?/Py:J9 5\$F%Ʊ$jR'-ĸS^WyAvNt rk&=s2F9`(q'݊]GҨ_wb-?݆L{J$E&LlpD8dRY;ff.r*<5 Aqsi&ͼ5YhӃ ^V] a'^'vq⪰U*]ܿ~+0l(/1#`>YɅ(~$Ij1O|B*̱w S苠dg:d ^N=c>\YE"{kɄIb'[OfnvH˗}\lMCWTnstꄠBw+RDŽC (Hss!]Dl0OsEV*9tS=[}(S#6Hɨ rCԆ{斉""H:@i~8v5V2uj:MLfN֤ ٻV3rr",usyY>(MSI dȏYbClRU>U.܎IE^CA_2E<Sq='ݤ@73DW7si&΄*M~椻n@cPְRCYO(Ǔ,H){{m?M]glUPPOpgozU|,M)b1 CmS;vpؗ8}l9F; E;=*KGhTsj { 5lk%qGcMpI{DCvDlLIg| ׸zf+]\Hf 6OBhRB`ARE;% @Lޭj W)l ߊ$.t=K$EB'FWay1҄duglQ{)KY 5sti#Ve~/}ZlPN+x*D0tdH*~)F1,1#Y62`4@4Etyi*tcIrrNOF&!bU# (zgdnRLmʗV{ƞ~ʫ Ȁ׿xK1!<Բ"='[q" jY.FG۞=xfA cnߵH0H> g\(7 wxi_j?SA+Oү(tYPHR[S"5w[z]Z<,_fV)uB`SڀA Rb+6 Td@xȈbDyHtW/P_:^::jX S #nh~K YNTfMOG)|F^5};vg_'5:oT4#VH]@aС<4'ImBjn87ao-z<*AyX\Z/A\S7R3"3W6ˆ(]+R/6%3xOIlj 0 seņ'T7ԲB+`@fe&+Q%11 (%*΅YlUmy@D%C׽ؘz+Cyu?<`F =j̸ K550{ \HsY}Qƒˇ]0bfomNϡz?p*ô*ejDKH;P*dԱ6A-2Rccᵭ{-IzG in게[IOH| *#h'OF6B$}Oʰ`_ŦY^ &ߗoJFtr>>K,~K{BxBO|x2 0N%n(M-ē{a.OĚoog:6]UHK2( OCTg߇P% ~a;ס,MT3n'dFT cLf:tU`4'q mZ`cE$CXaI0t;a2Iګ! f*:G["քLAp\YIw9T J|PՕUgDgIznC JW=)4HVT;Jcia[viq Ԧe l_ k+5hR<-Rġ//$f bGG1q0 TJ UE,}C IOuQ(fDD~kR&cuAݾ 6k׺ Ԥ(}3{4;1f%\c)^BVUz7('"s}DȔ_{+N uuҢ2ѹJ"!mj[T?̿"ȊEUOO;Z<I: QfLp._K%JixjZ)xQԋŖʈˋp}Z)I~j{ Sw^ ePk6-]e\٤6kN{/ wwF~L(:ɫ)n{R[R\Ws{̀1pJ_p5v9wöq.K)WOhpU+ ߡa(΍\Q0YCJ[^ WmDR?I>u+<ˉڠyi2Y@j!ɔLK?qnۣbۖMōRcHW|[1^pdgjBquڌpAEf3-ʤeoR֓㥃 d[w-uꎩt6Oˆd^Ĕ£7n.$R ,Lqh~CIwc HR[{3kK(a͛GMrNYl6-=曶!NcI1V;t;5zIE6P#y\94s06;9n) Qm#:jG]E'5cϖ/i|q[p17ⲁZF`$Eӷ@^wua#rc|eM@Ԙv^$Ҋ vnq} x1,~iT8OjХܬZOeM6JuM*@@'xAhڜ")Yui֤Mw*}mHkP˜1;47AYIrD0ƴȽ;x N POUdZQS '50*onY)4L{읦T-,/z3g sDl/Og P]]`!#Q'eƉF!D Kj20/;4hNXta|t ;|ٯH0O xot%Ydguq\2.̾SD@>;%8di^ֵ$P r8ȹ[uOTh94hrO, z/cEvqlg;$8%ۑQ43_GQqK??cӋfiDm(*F[ZZ wGaP)^ITGHɊU#œ[ۘS[j ۱<ZZQf"b *%9'o6m{h#?^h&a9zxPHg|OQt[/=,^mO;[gR$žhB5'qO81i_z̑?g]]>{b4V*SvP4,M\{RkZ0}ԲHגMJXIoVG0,ͬDy̒V€4;KY',6J'44:,H {ipQܤJw0ȥb*Í ])zYOb 0uLi w."ٱуV1!~zZ"|Knb*"ķ725{<*H+vZWG7@U.o1 {-2n #7ٟ.˓*JIJ0&` a0skz zQt4CzU깚*Ƨ |)N\K7 ] 'Q]N5s%OH!\7!EA|zB3J<GRf%^gaD`c1EGJ!oQG,j%h/.c|7kUG``tZ#lg~e(A/ADlJ~>joI8*18]=7x<+ff/Ax U80k$FBr9O$5tT}PSgٝjUMR P2 BE>oZ\+ix`C}q h1g/q# +uX/KW Q\Q]x&-޷94Ouo >0Qcx킐6q-^WjvjmSY H'E·XUpc:%6F&Nf~_dd3Q'YUdVo4Bvv7zzq>T4bn$TiLPm|~̾ R_XRUQ VB3;e_ՂRhQ+xr SWL V#uϒ"̒?Hbj@jE=.^D7".x4V[voЩVJOU}f?d[w")c<KfLY77S*Uznߙ9f4]lKMͯY5}#&^9oGRO)wp>5hEʊUP.4;Zz7*iuG4qڣ+ "-c&ռbb~^b! VNz#b޲.{ܒp{ P6E'ȸGxp |@['Eh3ySG_{x8Pd~hMCnz3eȤhɽ[[CDlNSwmÝ8/Bww"?YxD/J")ln\ T o\Tӕ 0ˣ^=]M䒤zw'ske8OxOT6mRV˃Gg*ѫb ۬rRooeMOt]176pI;qaeߐ}N? ue[9뀷F $-p:X^Q[,V2ꩢ33F3_0 Y 3up%%|)dj"]1{! SU iI]5 19 h_hhϿvO17Yš$9XZ9vob8Zְs8pQO?+y`;6>2dFjd9a13j- BW=Bng)Z 7f漈 -ԻGX +O>TIm{/6>>Qʨ?)Gw%:Jj}vbHCDGҩ "I6'NWn΅ژE=kꘔm&GВ-1@|Tn!"h7m$ D /~aOpY/5vvqZ .EUVvSTexp6jn=эF*҈r. ?2]$T$P?qքvrA9 a FISڐLdD1^eWk lVEXkDG`w[/&B![i'_n\ES#!u_nJV}`j\δr9r\olZ p!e[\J)N3Ə!Z'r"= ەZo JyY ]m`{j ĠǗ7HRnMlq>>i\YWEn}5z7DQn~X F ݽye?/~W_0DNf,jRGMK(>MΝ]ЈvjˇP|7;l8= ($menHwX&Wg3*wh)Q٘4ThS<z(ymhy&U\ Ƥa%7ZUg(=ƪ`2]; +U1Cu>ѓ &£ Gڂ%Z@8:V4`B ɺ|BO5A M,w,Be ,M#6N<"V_c1 d['>q#/1{ih`YrQ`{uDNjp(F-Fa':`)G\JjRRjl<0{ h~ɗ@>F U/FYH.OĮ&j.}2ꭍGNI(Tp*M G"^ѹ֠h@CWa`5 qdCN}"D{ɺ%)jv$Ǐg eA5|^G+pg3η\k֘^o ߫36&Z]H%H쒨Ly^S1Ppy(Ǭ>sޔt8V **(A{G-̔Bca,]ihy.j.a?I#Ӌ=(d-L8/e=jn$/}>=N囶"6IT{vvpy %åFYV-LpG Ƭ/F׉>8sg&\~([%x&qCF˚X?秊S_ܢ(G^%*LO '|4Ό#%8<'N~5N^x%p% )ޏ37kI$W8=KІ$9w)d>u=)FϚ)2\kBB4ELvg0;8g>As3;m=-a"w5F\G#7Zo*>x\J(7AHPp.8)S2D4N 8[4DNUҰ1ƃ3j j3a̓p3s( ٙ("?dbTKdo!@9'@f٪`8ZjܣFcC|NB!ss#HY #g~I l={fPR DCCr)P0B |܀#^&a_痯x e*e(t2trR"usK*pJp) ka7%y\"PKsٟRIOM^ Ps_-C0Et:x~#745Ti#o2,s. X^;`AOPåR K/r2X!/"^|Tɪ?07V 4TDC\MO 0ZZjGEHVK6iA9! ƱFՔ8 ˨qg]my] V0/u֚k=Ӄb1-=(:㴲~y"`g#+}0_NO@Tnڍz,N gq "R>'<ܲsedž%|6mQ\ {uRޗwY3i&/3_я쥫*Dq.a pQ s!o4zѕ"MR% v|EQJw1TAz=Nj`& d>Q3$Mܬ'@MUAq:iW*,-^#o-%^ޅ6Jt4`j|B* t-p_kGV:Ђ% ȨYiEm졷ufKޠeuў3 rt{ɊHFa yI={O@dG~tz&l.(,ga^򝀘^hpۼ,CŹyid{A')szCL߈VT\ܜ'ngON5NvΤ2@;?̀r]s1l\Xyx/6|47i{3+"+Շ;LjšR?Y>[ꢎ*rΈ_X^iAl0劗:SZ]t{AgL kЀTBƼfrj͜&ѹ0G('+=mE@7>l҅O8n`脂goV0o(~`tgN01m*/0“[bd[$J=j8\׶}o܎Bup!_ t^xvܔMkЍ"ȱǏԶ"O}K0 Xg#tywЩpM_j <'ÐMY }R2@7e˽mE =qL*Me⑥S˦px٪A]Xə)si=}2E?D869p W_D,fPph D)m N]?p$d6qˌq$gsUobowS\l 8OŠߣ&s kiSZJ"kjC}4}^;l4 \X7oD`$a4࣐ 1\UJxM_!)t,h Z[+ov|M7-cbXs@IKlb1@ STħ[~<"e/ł]Z~M?8GY5:1*5; ~q Ji`db#1=v8Lmq;,Li]fUp"`m9cdݶ(=YPd.d`)2.KܞdXZ/*Jehd H͸ ӽOX ]l]l|oPrT}# |ψ覗&u _f3^%TWTrh{"Īnb.tդdϹl\~ey4_' klwsZcwdBe)/2im뻲]Xt3yZi[Λ%';/8H_]>3:5]ofO5?8I5CC*I[?'4|av*nyBE)l4lz0]ũnY3 <Yi/I3=o4#-BqU&^ Y[6nX4F/d*OC/>%NdKDkn'%lvs.yA1+^B7T+l_op.#ȯGuf v3jM~zU5 { {Wo'@; qS5%ˡIIљu!U1t8Y{9!cwPbP [Z̕\q˧+3o "}=SZT:PgMI|JptVosGj;{ fh_h P %`RϪlzwtQ}{7}i}&ЂjG\Ҍ6¹e(}"2!KsW,-Z1 uΟ$&ъ%(^V9ItTꬨ` K`Z 9k0!R Jr$D}gՆ@_" %$ &u:2t $wEUi:11~2tCc2@fe Zś?[1GH@٤-84/ΙH7t2sL _Nras]Tw ?.87TڋOYViO19i爋Iׇ5?QAa b=,IR-H\k~sphՠj}7?,/`ƓWnӻܫO}Jt GP-,1Wzgk>fMn^%pdGwb@SJC)l}UF ߂Sba%g\FS- hrS7=A@=#YTYHwߕaU;7tWzWc 5ƖKǶE.pYp}2AZůjfM~[{k~Nq=i&+Gs Q7=MTf~/L%K`_ CxL2^;Vu8_yi$o|Vy܃:Ylu51ۀ)fֺ%ْr2ׁ𨪜['c|@ Znn>[Wzw9»nrk_#k1>/Nf$KWyPCbKJaﵵÜ;&,D1Phb ߖTajb}{ǚi0v-})>2\ьe"%~XMO"?,|pgmG7=l\.q5)k%Gtc܌슠m|͞ ݩqVݫr6~858pigMyQ× xJgD\칞kfdtDuaHZN bınBb?W˪W/T冣vxQj^WtR!*fb\˪y}3G{5dfc-IĴ&5Bcf F퉀!Yk"Z}}Xx-:3_/4٩ku?UE܀r;e=JPUϟSiNӇ'XXkʹno]_"%AV8!XO2*Gf &)AMbq~gxmյgagP$쓑Ֆ晪IlsG诹 q: Cqk2Sƙv\9K5=^%kigVH/Ipbcw:Ñ 9ARs![t˪}ՅGǸ͟X _YKQ/2 *?9j ? &PRb7OrUs 02;ֹzy9H"7@ 0FfD%:/b`WyAgָ2{"en }@ztWfWk߃@ X9,kp6,ۅ/( u5Y)WGHu[P ap6[>_fY]4Q[ jf |'BcJ>U-J8Wth"1:w-ehx.T~-$*G6h d/鮢q.g@P}7 Z FU \ҲÄ >EŻ +rӘqVsAl\ڝS>!$5՞S@]izR9@IJOzevb(cde$ѧ]>SwqZAF^X|azhgjrn[>:Jsx a{SIL@v$~ؙ=67rZ-zǘaQW ;Sř9m(:54IP.߈ OݻجjH1@[6YK: pd/F ^Ëq6HB] T AMRNK26 `׸,=ec5Y_!(ĞFB>Y?TWJuS.o ׌~ѷ'\_ߏ'͏ecH.}9&0 q4O+a\Uzԡgu+ηN$u`KW:`r9dae3W$g];abO '9T?8PU96UKeGnWtV&Lc ~ԗuG .-T5#eUTk6ab#:ฝ%ݟEU՚\M߮XN4G29V a^G x_LQ 7 B^92DJj<v|ix]+f#sj4UhԴ ꕉ)$ 0$odgp_SXu)CT]>Up;N^T*xA)姓wў@ n-^1tb\%qkS=2f v:Cu(+Ld5퐒ka?''ry@\B(ݢpq -#7,qnA>dC)tĕ?>(nxF `13LrBrzJ8e2q1ǜzQ_-{ A sp߮k/ Le^p_ѹAOږK^$R_xA Ee$…ڭ1dBY:d&DR>=NsA'_ %N|}uSVIo27> 7D-FkQ)0w#$9";F94dLFse3SoqPL>,/{aL㦂7C?`[yM $.?7yI R8(\?Q(Y'<VBKqRI& .&,~6F/ ~SmųsFi[!P6耥;q 5O-PpgOo#I3_=UMv8c\)fcƿe~SJ`#J\> `d7NGoa]!by\N_t^ndȱrH@ķ'UJބLhpM_B왕+$)dW]~SLQP* \ѹgc] E_Ic\& C2^N,s?ޓ]{ ͳOu&RmR(mfjKr-UR粩Oh#Zw0E @!IUɘxO b}!H0rq_+CHW6 X\+8y1ȨtWhp&wf ӏ XBA{ӠOIxN U.*#{OtV89e3dصv/r;n)g$tqG\ƪ5φsϸatW|ez `VnHU'c52R*7\rDSM,\6l{ɬe:K חC{$న˳kQ}= bG,uC7qQ-f܆cvV-j# P98-{FLn#HvbH^9o$e__bvLU'/jwmgE}d+/BA/T5*ޡOG.K&^ _`mY5n.ˈ^Z$^$F7: [/(ٲEm.SHӱ>*e%b(1|[nMf^Ŋ; 'Isb[ EXkR.[)9h3{Q{v͒yf|)Ԧ 1nUժ<Ȓ{nlTfK1 q9HO `#Klvag&ia9Po˸;$}Ck Q^u>gZU0OK"wp3%=(E*lc` h^7RNW VZteYed$-f= 6`|7/VH+rdQ,NLzh'x R#<UW߯+2zB@y7nz:05q;/hRtIڝ´]lI{y `% +YQwR84S[RC%{=N c6cf<)pBƌHuo V>u3)ϴZeUa *.*A I9/RX3ndVNAOϲce_{,b =&$0F_*u%f|)7 禌AL)E g#la&Se_aHwM"ZO &X÷t_4n6Ȝf$fԜ풜:!seyFgO9#D{"wє{نv(?gFÚOoK^S8xh  6p&l-!itˌY?qyo,T'0q-{(  +' , 1by"?434k!u}D xe!ߑ8hYP:~%|W=\N*0&~ZqU1UpT;&IP:R-KziQc?+`c-vq$zdx<6ڤm#'= 1EK̎ 4Rҷ^f5Ď"hvRbaƊ {\a^B2Ӳ?D8Hx ޺`~ǼC2=H!*dAY W:E]5GOQw:L*b_QSi68#Ql=.O7L:Z9DeIt|^ԑi!.oXu:^?&F)s?HN:oJ)ec4c v.vpty%O1{>3{ K/PXGxr 6iq) .|x uѣ~ߦmS826, ha d{'d~î`j:N $S*u^ * . 5Ԭ![)d?62z삵R? Z,N  :~N5̿Nk0_\F/A<%?we w AA_V֡}=H?Zc҄۷ #@m?zL*n$8ͱ_# ddeQz;oa0쭶d46y=>Y?çsA`&"؋_Ў XT.dRC*bz?ekvD״Yogk[F% $*T3VN:voѺLTu{w#͞PIp3 e=S-L̋@+T:\MJYݾ>Q|2CȊ+7b{pע禃%|^:!ȇQYN0Orz|+cյ0oPw6A>bݿ[t+lZ䁘426ֿ181u)͍NYZF$VX?bj܆la]V_EAR}жj8{0,$'*Rd֒fTتvYV. oX2U&u[k;(>l! 嗀&٧p\>͜Fe6mn,sIa&փ/sE)ⰻQ6# ImO/Zk6&]2wpTEvswόXU5llm*t"W"+TQXZ7;!6T-vG{ GGb^,/rHk>wDiPmd D~Li"}ee^ = .+)۷V93Ŝu0W,͈bVMtB,n(*ׄ8y/^4:O?2F0GHZzEѳ%2\| lK‹oS@?0.I|'+b(jhXz $fgخgνt`CC  QJq<0$ 3F~=Fe};7U+c1S&#s#MF}}O&E‡yx)/EE!Dx Wpu(ʣoBK"kE`5^N:ޭ /zݝN:jTBɷƴ_RFJrVnx.wr*e 2efo#xb1sg(v?9&gɴ(:z81̳W(8`ѥ ~@ ,̏;R/?R.64d`)4Hs vX |B'S -9E {y,CRDXi#)n#69[ 5t!L05 Zro/2%KY\A#n2LkXy/g {"i3B`si<7,v|fyyshU)L,pĹ#s',n,- lݞa9"JA\ `f񐂚ێpop^jBe7Z%bқ]%A\fPu'tæo7$KoɹTgz1Eo'!hZ B#708"HlͷW/߿1o;oja3#F S׆wiH :Gzzzndܾ[g4o݈<)qy}{- ,{yDU%ܙheipߪA3ΓIQ>o $rUhqNm "aX_'_ Vj,vHI5$kw0~w<wdSUG+yo8q_ge/,g|v/;4HcۢLKEFA6zz'jr,;W@U_ɷ so-Vk |#H&E:~/g^N>Va.Z"85b8+N?- E44<:BW*zoXޘl\.XW)mpDx[Cڥ<&A 7kjjK 0[{ cU- .eL1&t!PW0%c:G%-ʟ=[DI.DS9c<+$Y}x{/.<ۊPnv}tUD͞d1DmpԱNvGure'8ț^' c7nm*oJ}UHmZuJx w VQX~-ew ɋL͓ze38؜:Gba;3裩@<#42oÆ  j"jKAn3jx񅆴+!֓UK9&,=RX׉14}ށԘA@,U?Q04w׌%c_:;8KZBZOF9tJeBV#5\T 鐝ͼɹ+YNGq獵r LOK΀Dz, /9t=TEˑMJ%yqF" $> ``LTDmBr'`(\y$M1H!Pl1A?Q~7[:RAQ}U-F3n  졌P=}dp4}cTB&FeG V;԰}8?oʯ0 PT#H4CQPh ]JP1$x˖ZJئrmoS /ah]:j_7.](8X ($CMy!nrS&Y|KgÉ@]Қ.[fK)+@O$]924B)q6;<ŵOm魰c"MmD; B=J oUG\W=z;Z.y/HYxRh2lLZAug<*sԄ6z\DzWZGrĨ$&Q1!b+//Gxɞ#ʓH.kZ#[/P0mIi \=TEVh0epI^@?0GɵyVDj]PD}(wR}1cEȐw浧NjwUwt3o~a& P.MO')hzzP3k8}DGں\q@ W;2\4ɬ!bwn{'xQE>BxC(ۉuĆ&U+H|Y1=E)A|O4P8^WE\eH)Kب; -QH~%>.ٸ8 LMbzt0t R_r\q !%zW|LdGCA@5cJ /p.26 XK9qei%UKT*9pC'CM`J;tI#R8R&~MԃiMuGAYM Bðٯ 0wIoC6vL4t*e9w';]D4j' YjGO<ybG`JOa:]XJm>Jߣ.%mȰGС qV뫑8ƯlN\ rl{"lC-p&ҫmiw3Hֹx|!Hð'(1֔5FDŽf|vë3- %"gPrϥ u-I/*xQᓽp῝ڜ/⦩۴pMoec4Xٚ[6 S=24HkVD&2ҏX/٣ڠQCא+Hx1ash E*a(:SHK7̳ T hSΨSG`1A.YuUr9In03^a1 jE];.xk @r Z 7 FdɍaǙ샲u*G,&a2rB{\24&l5S0pj vBN% M3j\Q],fۜ5Vν@ A+4#=wsAeDoi\Fb& |oHc|fS$;1m$[mEk^`Gyj'jaiW3Ő:QhgZd}L(=ܳV+b$E{#/\_N.#;zwh1~fEHfc-p",IHNOpIL2ϦY+P8\TIXQ p07j(LX::FA\X.*@ ˉQJ&w(4Jѵ{eM'|~Cn!N> Gӛ?1io9a:/$ Y<*R cF6⿃cj?juo,vU[S_:7r՚h֯8ɒz(>#Y;E->0AtB x}˔ =шDvn pKl@0d1t_ӓ{c!g"lch^WێhH% |om9Ds+ 2ųj#Ȟ^e.ʥwաBؔp3?* h˱b D>D=" <1"TA :DRZ4?41{~5)/!@5E+xΆ[EϳƢjF|8R7mU7Li5L^(RLV8kSf (5_p7^IQx` ujwwWnHyo Y}]၉O4Y>"x0kV;0ΦgY`<[67"zmT(nb%P1 ޘyѰX4%FhQH*&b6N' ;R}Cln\0` %y]bE,JshI: /%y_g$d}C, :ߑe5XbDEaxiO6cK`5XไOFc27e ~!%FSd1Akq ze?H(I[b&bħtw{ԛF)H $Zʟiky$z)|'~Oф= 'k{/CZaS%xq6V*ʤpXk/ \po8f\Jt=e@MߥyF&/R=E') _ڟ(% Sp{kd#Qo#Jo)R7>pCJ7Pl+_z/0MQ0eSj74J@;Uh.oJ.]Ɂ T>';> >$?í5w, g+k1rU8w!vL/0"@Fbu]2F}v˽,G#&`HS1?ՎAFEK>ɀsw[9 7|y}c.i?s`x?Q9PLjOd.Di_&W:D&{UEn5HLV&5a#![āEzB3QZϨm2wh5:e[!rcS(|PS>E8'Rd./.vj3=#?n}f-ުt^_QF w#rt^p)uF9Ȼ ?IRmbESI jo'g&!QL.Q|U-O 8Z^0B?w'E0..bV4gO ej>L lp\UdeB 톙/vz[@4"l߆m6(D ZŮ D>[)\c^.Ӹԑ^=ysxp)jR CA=!$9+FV 5~&)AGQG4O=u؟ӯJG:+/NNDӯ*$? ۭq2ҳ{0JwgR,nKܣ|XHƸnbU_VSR{O}Dz|\{Ntͤ],ȗV DTlҋ!FnUܼ^k:qp{(őټk`"AGt XV1=`iADU~C5APEun - (H]uio\.k9 Pߨ"_ne R) M[ݱG08wEڋ)D?o`/+BWEdif}!TY]h!_'3(E8rK̘NU|̥޿W9+ `;[ŒPeaP_*4?b#7ڂNd Y-o.:^EṔ;l2Cj&jwh&`{FGMZ rڦ\<F jnGXC/|f}]Qi=m@˕?LTh| U܇Ob;ep#V EC๶-_)jcb⻢莍߱^հV!8+4'~QRB _F3]7oQi>v/J2]=Fw*(/Z4r(h57ƻ:Zо>?Šy1{N !,b"FXf ''oj1V}OSҥK(#bLh$dR_fsMʑlOJϫ\@B@bXlB־A}W;T@rU]N 6[p.sE[4fo(ּ]#f@'h=ԃHom3yr$w.{7~XS.R6MC`&igblZH@>=)CDY6ao4[Pbw 4hZS@J=ly 4u{ ^ (&uKf ͼV9fb93N}5S-'LuL׊B(9fj;8#@pAC+6렖Fq6r_) @xsd)(2T^/͛7|ljS[!X S9ۃCUaU uNĉ%M@ڸ:eusy#%B^bN/,G5@ꌏS\mE)nmvt`d8RTze$MH>.ogKePdヒ|M&(귀ӞX5 C圯 hJ.r4N0t g{NzǎYGA|Δ)IuJ_J Lm"Ӡ/ɥ m *}S9ѵΈߗ^Qiz)/1CX(G/buH*](j3sq)GyIj}@mRuHe2 I>:E- uC6a4(`aN4Mp;0S$QH(lu)p"NPxe蕺šI  \r7)(eqհm~,4@a)h/C2FiŚ]{Ɏ¿yJHp,[}z*t!l//W93&/ؗ[: ?(=B%oJqZ~u#l [ @IQb\<,WpʂKB S=brc^%`4I(֫tSBy=nʪ9+T%TF2?@F`G!E:ɧTZbQq )?}rݫym9k{L# >FS[Lc WONXW;-n(@\%AAs.(nTM2A8k88|i\俨)w_$,3- "j 5F[˟M+4ΰԩ `rAt=|PvmYYf d&b*-o /M#JO8T):0?@Dua:o.7)$AS%)ss?刑 F8 @b0n &B+QM k77d |ũbNbV-G?,nZ3 1`  iM-S>Z"'2BFшwwތ=e+p([$SρA05V 29gݎ[+NYTT\l<@prhkd}<#{|!&0Ji+U1\582UtTUÄo{qTIy4wFv4*sF٘m:#ѾuxK?X8t|&+]' w{> 3^&^&7Nl] 6Q,5) G!x\`ŝgdĹtM4$(0ӴJ}Tt҅_1\t:g2ܼc:`{Wn 3N)샰qUNj5K!!'zRPӇ G(K9P:7MOG,B+޼R^}T+ ChŤ5XOLY?ץ4]hV[U #з/"]mP2u/d?Rpx&΍\κ,l/ .YW4r WhUe]!Sț9Tu%9.:BKnZI*'\p~-;\'Ea ̷(_zY.y];mh?hk>\W|[bE-} h~NۅS^8z'h#\sZ;b^3夘jUǶ?>w'12|+J&IC4#=V;6Т󯣋iӏ8`˧>L+2]TN=6)#XcD$h0JNd)2 @De2c˂h͓|7?MUO.-tL!vR_6a (xϸ䯴"5vhDnDd b4.upJ (ry&V*߳uNZc[| hfx@P}dl[G#.Bu_y~oU{Ѳl.' X(dT##i)TGӠŵaU;&iYt0e_H,,oMR!DJ CB#oUgϑv3[ЭчC4aEN\dģxl+:G3X2d;f2U)CL 76Rw|تa5V(b6HJ\|ҥK.RTϙ"jiA0w7USKwI 9DHBU_qC ҆# nmZ=Mߌx# I4W ޭŶ~c@ ɂ-(תn] RGb;leBď(Q{NafO$8X*l9T N'6#)uY Щ3P bMhYz}'>j 0L5. 賡tG m]}[4%cH$ vׯC)G/l,k.=0MD_wS }_˃ޒ7jq2pzf9P$-ܿցb&۰`nIs{oB MCPLuh_,4<S/"A92ɓumw?;~px]`/{% Jp@RD/Ybx)kJS{/2Ż:oԩB-Am=yp؟mHYZWaJQtJڽ,ã-4>lt0tZVb.;o"0,4Ʉ.ӆF# N 8Os xsP$9XQϾY:AAÞZ/@7 LbS=ؐ8 jWgjeM!P <:GuMSffL=zP;vQ=5xE]< j [:n ˘RAgn熷0rP,b٠7Xn*q|*Pzsɭ[W^ T:6 TMM(qmd0[1 : C"ҜfHp.u}tp,)&:i~e6kVV>'9)'ݔRd=jy_i9P| riz,GըؽX@"Yt2[{lbPۯA?L@8΁W#x,NٻQgNuxqȞk3ױNڟ^⯰;.5k{G?]€Dw_;tV`yBcsakU۴oi|߫&H HD!J5G7 M͈9v)8lm5@~E9JVײ琎 l,g 8mC2R*Avvżs+#0Z({aUPS2PnIR go!T!U?@"a,7uX:`q?":Oyg聵z'ؽOx՜uķ̼}bsR6(dLdp~u;0DZXt_16?*dM}Iۣus|V&V0:Fy],ӼY*̹h1"'NCKҳrsy/IKÂ27*+5jh{#HiV$TknP/RJ/bvtCL4`u݀ 4. 8: bJ{!nJjCp8{lao>^JW%.Æ'm"gɉ(r׍t`-YH4af|d7|?ZI#"|LE 8sfp{|s. 3o3KYIѾ öv>+տ@:Mt^k80.U dž|R\͡:kȼ~jqj8!`%|00K 1 IR}u-0py/;P<6\ﯡ=Yz{/ FB/ucB.\Jχ[$.Ia->0(2pkȩP2?+AN =?%!˦_KȫЃ. FQ`((얗*l0~$e[<]lif |m[M4%ϫВ^vwR_0pAeC 3‘ʝ'{'G%hKUeW5`_ O0דuG?uKu#48]GʁN"g^܇zXz8bfy=\Tf^8gԊ0/n6ksF'lKn3 9 ێ CQ՗v`m5]C"yw+fd1>l&'|2 n/mw"GKSWP,E:44 Zb(Ҧ}-V@X2sd~f%zE;>!ݔJr. ˓B@${<|:<,=Ke[͓I"أ:t{>92|JR[ (|[|#íլO|5p@9C7EX`W# }]Hv54L4?%`:!M!_X('pxna/[8@ r6.m@6{BnB1Ẅ4vnPJXM\uqQBc͗Q_I4=|?Uxw5"L AVi[j6+콱Q_𰹳+2=]g8;6,mm]7ٺ&r0_goak0吏3:8MTtFv[C|_[F QP̍d'u$ 2LSw'h޽#ëZp${z[m(SVUڭGg8t'2e-Hw0vpv\8$mB̨nlI X~YJehK0-=q %?mVȟ5tFH]h=`ce>\aD3/,&LRU;ִtoŐGe@Ve |uTfPd":,c` ɌQ`4!%v z ê+9pV5H=Liqt-xPz3<1 "+|L5aHr$>} Т_τF+ۓTT-ڳ~ƏnA/:ÆۊX$~FgSJk|e(w|1)sCoC0(վ4n!_0 .?GmKCs$)2rkيTw51I~.ߌAolICSr:JY=4~~$ۦn\4et3z-6$n^ |h-eYcn@,T3hepڲCyUK^uzVj7łdCzEY_UB Se T\N=RZ6.♕ggLAy~ѻ<|S+mLn~Sm@~v|wRvm0 3B-wR4hSN<oA{!A,kB^8q HD?L).tUVX΄D(p AիS AsN@9G7eF󽂒]-=P †v*R444f9K@W'-LG/z~%kӤVP52D8o.~V6?mi_ ޢӇ:]} b$xN8^dykCyO2ًUo@i^2&IA˭")悆h50#L}X*_UכިpjX츿 PcwY:Z,V@9ǝClN?{i0d9I4UЬm ^%f#k]lCVyv$hD39E1?g;eG+)k5݅/G0Qr9"S1&Gvuy~`-ˢdPpUox([b=.="̕$Jk ֣xN0.zDͮbH ,@VwQqqZ4 ȋ여Tz#6niQK3eD _XKpp׫cymܠ/kZҖ{?8hV!N5 k%x'}<wb' ?;dqN,hC WLi?E~*.<_X__Lg[ 'e6jl \]2Pr2ƀt(E5$)kW캴t19y>3.-vbgz) ~lCEovtIH<%-y"C1Q*f=&;\32PQyuQH0~_SD.aqz %I϶О{1,jm/їZI R9fҸY7lmk6ғo;fή[P^*}XC>!2{j?kzaHkl_wYsfEnVզ~FBaqxZ8t.`ЃSנ8{~5$_a<ֲ dle=o]»+Eft. /NSq2_Vss^ZBއ@mh0j6{QiSM8 L Db䯏J6J| &.^ܓ)5+n[SG ,wudLow0q.L796KMjq&H]prUK}тƾ#A_4Q R.Zz8 (ؤ+Se2}ʔHnYhѩkX#^/그١mS~CQڈH*d-9n޲:Oo!)i!z$Aܛ%*ReyxV51ɚ➝eƓQC1_%ٝe5=1/ZJ]冇Ь~gkdx9]p7E [ۺ6F+*h6T¾p !qѦ S߳x{]V>< =.YT R$]xzH:o9i]TDCg\!/^#.t-a@> T|Gse\hRt4TpC'Q/`75!,(axIܭ\Ҡ|XѝZ¶xV˓([g<گxUf,qN 벢mVq`rQu%cQ'_8MX_bwdC?!KqCSAB-F5,jC/a4YzNuN AL*0]HR>jcߘM<l[wj#3A l)WJX.Qv36M< 5DZL?h 3rOAކ8Z"0zjlΪĜݙ;I^y8෯ɪQ>-g$(y;i M_fpkΆœh}8ohväcOUM7t,ڂzL4F,~6MՂ%T[B\,37Aq.*iOrk::":{xqJ~Rj8+ +@* $ 08ZJO%Qd&)p 0"|B?GaQ@ y?[ĪuOyN:|h(_GM'P"exG~ VT՚wp oִT!|z6[ cX㗼W'P}m %VLx$l xcG?74a:D?NX" "0qo-{]^tM8 '2!%-Kqop8SL6}!rpVCRO?ӲT`&t]%9IR`}y qD z;V;:䁌z &W{6PJE=,OZa}|P{v2yEg\rZ΅bKW?P0K~I_YL9町X>1H-P#A@zgQt}~K|f]L#-uω T ]O MJKzӉكRg_}.[&+]F*pRY1"F-B=n'W!%IM;%ui0u_y¢Y]5ǒFI(i{c!xu 0*gU0*U&>qJA?Z|ZˎI;Y <"A;ÃT"(ݙU~ j3n@JlIR"UsuOb^zQisM& 1)FS }{D>X6ÕҾECJ`nyvk3bzu_75kiΥ;ϚlAwv$pClN4z=mo_佞W9c\ 3JHĹaha;4 eظɓ+HFF2ԭ8" 6c' K_i՛Y|UKrBGz<!!cM\ȝRVa@|CH΍X(#ԴKlJ7p[cݩ&dj!a9a )_HFkGE]U8 iH>ݝTU?*O8BC 8>r$:}$KyNi@~>D4l'ɟs .Y݄ǻ4F4~@"^HZ!VK_xF)VvvIӕ0닸G[>__%*IG믯> ہ-:joB1/߀Fm,JTL?tI#b#Z /;߂%+&~%k&w͙;%;HPLSRΩɂyDԋZ?;v q15RÂ|3c=fvEdĿ"Zt 2R0T6MkMcwfZXa4<(-~K3Qz ӱŵN:E =)ȜYQJ( rqbx>%lYgҚH%г,kRWƗ{&){׏>|`&뷧!v GS]>A.|7sZi/D Wa$z$^P A:nW1!IjecOϾ^@ol>OHlM23&z,Rf30omv/),c4$g q /"UD=K [͆ʔWLFCĻ #pPSjƒD)#!} ębiIߞ.rj^`AKˍ3P9h6v摻io8n_@^D?c4wGYCRSҁB`^wɻi ԣuܐ#s,q/2$uaM08fD[lJ*!Kn*D4NjD(V LC{|=%0\O͵ߵ1}5tlmȑ z(f}=lk'6횳T^ʗio^%xO(`%ty.T 9ստҵvcqD a;M;Cat){ccd[Z>gi ^'9?{ ϝ6D'Ot"udR|c6w$X 2"z]}  66"5V{@ hvi! njqb+.LLh]@77>~w/i|y(D!?#ZL.~g8)RQ53>ֿ]=R (Bbb,[Y5ޢ%mH9q05 cYU^簔3 Č}"kI= 8|ğz%TUM;αdb8HVdfB,ͶWtc|X~(1^zFKށg$A-"#UtCxC5)/Ysj@T!}ut )H r8mu/kȾ]jd>M~19T/m1 $RICʍFw)8޷G) gr@_ar`Q:Ve;cyKB/λ/g׏Ysf'L-(rIԦS`` R5 R`ljIz9Z5c{VwmpmAboAPKm^)Ob6ĢO(u#`i'O20e4*\^ԴV11S$|*ȬUgQB?+@=:к$AeNpxhem$s+{3g Kf(Nrשumhӧ: 禹%eV͠IψLLj}AWqĊaXLsW`KV(G>LiK ; 3 ˏި^w끩yci@ϲXRlk98r/}>D7UTX^q ;&қ$d?/?pZCțOj6hґ&5.t߆:'WN) wFޠZh(L4ȜBTKsDoG% Y+GD2)]#!8WOpӬ<ճD]JD[ovrMU[q!_Z)fƪA3dcV!vj/Di?ԪHGoAI<+. zV0ӂw@tlX[GA /pq[ʼnķQKeT =휠0J"索~tܨL+Btr6="-?'762B|] e9 ذ#<§9ڐd *rCH@ðR|8Iz:Vk0@ӺW1bt.=i(p-65i"z&` Ҥ 07vPPѿ9*`hjLadrRp9l*#g9 Rwa0VqB.ٕ`׷HUPWUj[x#A 4ю@cmPR݀ӸZlg¡(odR!գ^O 'IW7UڝK- |odR961fc%CIvhz 0bnϲPCT;Tp^[6՘)_P;k%ya0t.zi>"|:&=1!!!~~dϬp)zHGDԔ[zD6Q+:j d<;5jmFcC#9ôخS8.oEaeWРEJ"&"LX gd tp~m*4bNMjcZt! 0#tE񃦿^}^5d#5b6[_lX$?Aڿ^]cA#[3p$-Iך"& I ^<Z}3%Mחl$B-Ft ?*(m e*$=j w)4iaнY4%BSO HiEUݘ:L I!asN[{Z DňILF)_]]/H/j6]a{:t9  y .J=&wC+4t.bY}0.gqY5´T_D+?Q_SzB8!e0W+IEۑ3b*Y!zK{B@qyeYlXˬ `)oA"Q=:ß0qse(7ѳ~/?u]WX\Рo3pa gQP!J'~@P)k&KGz٤ꛣxx@zZ `2mhG~Zo5"&KPd|Hkj0D -WߺamC@:*m?6e ^p_ %,ܡ> 9l[`Jp/T~5G=>۔ϗˮ@:-Fsom#cX4k螲 Z>K66+.Ic"tisTH48zwRy!vzc'UBFߣZAe?>$J0Ņ%ΘJS=ufԲX01>Fy)f8+ K[.9ǐUF#A0KQ觴*Bwz1չxIxe9#'y hAlj-nBZۨ$+d#Hz76vot|\Gc#lRxQzABi ;~Kȗ#5{ɾ?r $m#*ku0EK9n6oq@_*I{8!.Qb^ ˃^: T:Lv qq rgC؍Kh"F>Ү73uv>y2*Zؼ_OMz apǠ &"=읳_>9ߍIʪHO/ݥ[ְ 0B f,v)6^CT}F2T ]7(n E`h:|/Fʡ^X`nRjgS7&zf0ꃈfV?~Vm)DICbމaS^pPl@[2R s˓tq '2'x;MKADbv kUYnmW❅SP$?۰gH1VTi).=&$ŸːH>԰`ӧd*kʙͪw'X=i*!5'[䤺fdo:Hd4'o|2} ,B %_W[b0(u[,NAE]!aSĝ\Nv9ӡ[\- !%+h\`P+?&6xIL- ML?`4 "{BDDEwLwD_Fs&Dn୧W#;&ͶŤAvmpKa4N"uq$ڠS*.tw_O(cIqmŃS1H3j2H*ý{S1vxaq*^jOչk9վ7)nwdrzEGSl3ȵ(u&3T{S&6=ƤLi˻;Z5j܈\[tU@!D8IptK)Q ('_v4GsetEC|R[W#~5&N./V\рgZA6n7@?O&tmƻDƀV%Q [e#" '\P"6ͣ?3Um_Qdsk0@wȉynzJ–n^f;[0u1cAǃ$lj](~ђ:7Vj!Q01a1;P1p%,^51׈m7˯7T蛻P[t @Dba}༎2dǡqbxZ48Gŭt|&t5&O;޽oUde=O(,ܳ:?HҌi~PW-ب8 , Ӫ2'*B?3 Zf\w K&j t,D*7lh*ŀp\"!g7<ʴ1uRp`KrbI4 .FqX^ >z fWci8&5e`W5j{;2|| 4f6b>Q1}s0B($A6%] /0,90_8?H $AtkpCGE;#xI2#zeǾ$.-B?f)>`7Yaϙ$*r<;F GǍ/k A-v" Z}e`:bnݰ ón\଄&hL`5+dD||z;BZ|WKGKL^̶RfJ pq00=΂kzϽ&Ha3DT4X2K-򝀂.~%{3tZNʢゝn.)߼Yg"XZ)^COe @͕x W[82iY27ưH+I =3dâ)7PT*f;nҟ 7TꑍvIGNKLL,|8-O ܉Feڨv,`Eu5ϲ+XwPҔQ+l27:UJZW_d/CЌV7JY`Z㝹`-`K4O!K½e+iV5m}=SYeio,m9݈ʧ#iEPbq/+6Y,9L$E)Z a0Ӊˌb <"FRO!Eŵ/s66'V7=#y6G/ZF$r/E;uxQBg]7!2ցDTRmSm**84(l."B#vNv \u8r>ЩQe8ڊ PbTmg)F̬\6)F fr`bf_z ݥ93P@54&_ {js.zv :7?BJ޻ؘ Rxi/ý|;pg=HiL?] w!i>ew.[,Ԍx#$1a_m^#h.9Dx![[ka ՆLth*d룰= AV|f.Κz$Zub(`sLЋ%.s?;ғ "TSe&BW1qְ`Ƞ {{|a6 1 [#Y? M1'6[8F'ʐL7/&iZ]pX>OM`8Px~|ۇ<@m޵ TkS%I]hevhDW<)3AQ'%ɤ8E!š z)J VӾj ڍ_fQTuԗ>凘E[.eJ\VQ!nS|@i<"% 4 .nUtkȓԵİø=)H:joP (/_d5~ƀrM%xg UZMuoCXl!҂g Z(0F5 ے6z, ST (*]/dS;_XݍJ##%գ͉t#&-bq魛./m]|q{$^d:fϰKGנD|D 9Pcv8P54 (խe/uSUq mPA8!^-,h tc0Dn.p/Hol}o:(X

׫J~uD>~FOHɞeg;ZA̡ g"SYY|ӅbКz9\fK5 @N`:>2Zv9~ҤFDia6%-4yQᛪ}9xeq.cq :Pf3'`@L(S,`EU?zI2_qp.؝R= p8Ia5kv s"sCTþuD"_ D~{x:[~ =ԏflEF2^ t jx ZO#]-鐘oxq-M:H Q֏^5{* {⟁9-d:VUź1T iS5&.BC-Egaϓȱ2pi}(7M-kVl^ 4г>2fY2Hܪ3HFv6bj;)wʼn V'K Ҩ*ݱ }4. F!g2vq`qa+_Z̋z0s$wMtҨ):lC|"68'K_ rm#]=Rx;Nzg)a˭-X{Ɩ%Vn>35QL>νK5qFùtWF99;.Ĥ "}@;c'YqEG \AyT޹P T%~#Qw's=b,S9yתV́bx"Ԥ yShjUu~=]m0ܐhQѾbPNjH VLlˉG /^S$%:%2yqSMDomwYaA(Ŵڵxh1kHr-$|nj_ MՕy㿰~#F {23ߗIr~>0E+8'Rܠ!.^9oa*hUQ7%4Ԩ".4EOs:5l21>Y[A/_2JҚz^j~0jZ) Eix=>ދo,-bCtqⰗ^rR!h;%7`)*ژz dN>:l G*,f,W1{$rt*=и4Zd/R 5c R:eP Mh/ h9i8KpW,Ό tB2>|߀Zfcb;B;&=EdS=JJOKF.Zw?!&El^=ZU^k(zgq}>b m˃9k +omf8K@3L Ն)*{HoyCuV+HVui'l/f?.|l#:?h!VbRrYoW-f[MNU6|,dI~k}n6I]e ܪ&E7L7-K2p Y ?(@J,c-]+iG_*eaj'2ZnJFA$qc,J%d1T1q6)W#kXƲԩ>hau @Bx:%߁8掏Br~q85y|U^3#EJ*١t#0F\G69s`3Qa=)^n@.޼4`Z#%ch!pLyjGƸJ03WT~ԯd/YM+o}wfb;]̽J.gqi/ڀH u=繾'NrNF] vq:=%ۍC~X/<tt#61uW(5"b0fw~& t\(7f9Y+c]?JhMc@2Q309)n' [8KCN\ƫh|x9**. ~=-QmQǭErb}@  Խx R 1sbfn'柭Hgzgvn0t;b69N~̉x>u;X9f]_nSc_o{^ ,u *NGoAmaqmUKwz1aElJSuU^pFTO"DTKQDy5܃wvKBIw^|_kB{KA BT?O&p15u_ф[q=E̢OQT?oGj9JHye&𾌨N' 4l6z?X:_>MC_υ_"@0 /ܼURa醙Scؔs]ĶKH&%"gӥh*ylo1dG=K6f_<ܘ{[Hiv*O.8y[r\in>C2$_jHG!KZ574v9k yJ>]UŁcVj('x!OXi8mʍvX@]'5: *gA %0:^6Z Jݙ@ľlJ)M0p/njmv29ƗLy2I #^o:rƕ}WqG"/Rw"^:+>u6?K@A;}r$~6bXuUҫθl?h^ʦ1I3Zkm0<~͈wrGS? ύ`4MVbHq]n, Ֆ |_R{tJ4vYI1>(LO2'C=0AϮ( AYe˂t4zp߮gkVo-yZn`CZXI̕<Ix/p+#i+8 W73kPSy`v! _mJyKKj0u8Jr+FDw&>5cuL2El*ƿn*5ݿ"Q 6Cz ԀcOLB>X_:=6jѩwBDK`Sg`y4YHVcRczv,saU0$0v3 #{w9DOuO)țD,&4d^)PY\>CmP/\&uRSp¯$h#U Tm!Ifҿdv1:peYs?0/ڦ]RBl](f F]ETVXMROU(Ɛ%`bsN1{p룷uL{5]G $'길§wguzVe:{+G9eagL a;]4vL?I1Hq_s1إ+3y6/t*&x~qIMM)m|SWH2uO--f2di p,rפX;P=aH*[,Ěq g7Xj٪;x:xcg<j32 o=?_^k4W/!:V?x @6'Swx:NƔk`( 9}`2Wf ͇Jk&z׀&H Z;oɛƪF\ Bt*$HirKRzП>=b)&oGѠ}`8\=1yDb ;`G?`bݜ`d( IG$Yus,T*J ѧ}e Jvhzs`\o'zjƪiIJ> *sLj\}қ P_#LBOf٘)}/i)M2fpC_]e>ν"0}H tT8Q۶&Է`.vdܽ_uz;]ţY4zF (\A u, ^5;ۊ%nΜ r7'/BN Uqth1 _ @.V4 #z=h =ū&:SjΒ$脤vBQ=:,W,G!J^a/~a i tkW5ΥBOu'nϿet=l%%?seH+4.vLW =*Qd*&[ ~ ߕ:p9K- S=Iysc@YA.[x';drqAAvd6mX"3woi1ĬlC+㉈w?_V"Nx2p8J +cKW\:9>ElxLk1g- Nv)3.y垅a㶓#̱͈[w t,0v&=wWgsW?/S| %\W{+R=Gi]'}aB(a~+mdp詜5)Ko^gvD&P̹›m4  o1-4whEPz%/l`1I+uD(,7{Uto _%8&W qD!ՙaj?5$DA$^MmQr Ob,? :ϟ;;oR. nLx83m F +g?+v{ k[Fg6W/#jrʺuc4ۋ= XtU*3I IJflӥG9k# ^yLNªR _k?ä:CA *)'sh|=|y-76`WP00og4l":GǣZ)^ݲ+LhXiaJXq 0KW؎[B{7+gp6c K_E>;UK P]&nFJC4\e ù<ʥ%Af]x?uqKCd/[{F>b7pt'L0O%;;#G''bpmB"Tn~hP[V{0˞;D5ӳ?Tax5/͇{QSffUR-zW "+-hx#t#8CwDOvT)}~)g s( ՛TʑDǙNʋSn,v%j~w"\ \֤pN-vJIb4-އem`(Yr{0VԜڃ dlUÎp哱#T rKUQI:Ք^50NW1pAV@I_ 2?Vt_N_]K0J9__ ?4}ug<u$ Pfuf:QZs(?~,L=mWFuq{;#A['X8\4sXԒpނ!ؿ-1 TyZf*5KΦ+,PHXc -S7I(zt½R.خL#a0al1:uA lfᑣ˴{=0sYr]K-1D3᎟GMYH.>vT7xP*cK4~ȿN VQ1(./OICwQ١1`.RT*ui?Wס H23U^^`*jm(9s$ Wq=!WP\1(Әgu3QekbHH@'"^1yrJq]:ao}Ķy?CδKߘ{R`hՒݺ{}ts|;שAi#H¨`G?J5"#-XQL|$$gUS?:UX Ml=d?wѼ6nQ\N9~|3~usw  eEmU{,{79?m3z|7dP^UuyӋh׺arDQi+*7oz{J\ [afq7CHU=}r4=Hxn(Z&Vi42m YuU:*?IWmix td8ISk6 lSVݟmr~o,m*5ѫRط8f>#jeY6>_ot+tjo$_Ed_=-:(mVɫK6V0д3E~-Vݣ[&AHSRblo:EvNI@CAĺ#j.S3Sޢ.Gڃd:EN|8f:BU3Zd Mw+fםM;pC \dF7IǓ X:A:CqW/ŊF`خ!x:MQgxaD䀨>xl>r v_F񐦇WkpJuK  ; IUCӖZޟ:a)iSgt+\J4E^Rx3D^Ѽפ^A]K̛SK4vQo}hke>Ӟz O:ka=PL3t~4e-ԛ$dkhRd3y(ߵH7S k2iAQEy#+%Q܉x}^ŽOSHkvԵU!EV:ˌ@2u67ߘp>=A<r,VM ɝi ^W&%XaO!Z@j~ϵM 7mbJYU$JwtfkUNi)jpÙR>Avf"e oӠ.sZ=D'}q5[7kf? 97="F3wDSKEq+CuI>7Q-t;x'NhkhVR ?XqbVZ 'oHbF+\>lK%c;f8cݖZd@`~M/$P8'V@prQl!*R5Z[æ 6ϋ\U S/1}螫=m99%4yr4$ m~)'NGjmBXܨD[b=Tpa Y?4)3a"Xe'I1(r$}1k`68 [6(ٻ5$`x$ fÞmЎg{I.2C[UKak%"!-C;|εԔ K[-i3q{ B.u5Ytv>OwQp9@~,]n22zɉ+d^Ⱥ W;opwҦ2|z4 U  a 68B@5ORAH ;N+ѫ=CY]6xZӊVx䊋}DW+>A̽<)p 8~+kG#ypeHBb8;?b.8 {i2[YrJؿ.*k`dz \3Xo\ҏcM2wT&7 <溽r?|`. 8FqQn3ih쏕^A"-JH͉GAJaoIF<(߱J@uvvNU`< /Ysw̟B $y7C|AruKm<,#߯ZQ;ˍth1=)EӞTMMɹ1ƹr7~OmN@^-D@)\]ާRP߀qnbP9^QŊA0r@eq|Kpp=U'-h|֧)H_L5c8JcwBw^xq=;='/P_RE̋4Xf\o9m`RoZ=Wskgz3pe +sŏ8}щK?)DP&"*%)Uz ѹ{$ 1`p+t`(U \,q?@2SQAr$fkp}To˵z 7`7vjE 1g,t\6WøI Kn$I_y .G-_3[bu'3u!ᚷSSa*2P6VB*=#1 O`yG%"9Rl~1D]Gs ΀>|V3HTj&m9{H=?ĶcfZ?|U4`?pnFQHGFF[>֘9LHᇓhWQN~::D!$M響Z7D`FŜw&["ZKh7 $DTHȓSJh g\&x=Ÿ,$-['&>6GO q%ke%5z|48*cOzf~ WVcti$šH%KlNp^ 3w+flPþL#ˍ|V q7"DסkBAa2 L cP:1 MtQ >Ɍ8ξ'˫>(YiF;_-!fxcB:jRX] }ìs`wi4DMʟ=2bq+ݯS%R88 )cziZ5} H/U2KZ~Px7{&Yص4ڹ[}󉴙6LZ V9 ڙjCS}U/<__1miے$Ajw0Gw?bڒ`7=&Y$H8NP! eb̆7&FW1*S/y*r\Q_-Zd@¥K[Oةt/MfRX<Ȇ qށ||CT~Àk(>K'-fL_jux>og#)&^k0xݏur!202_Խh`FpU@A +]S7+/2QiK@* IKsbC:79*߻=*ӼL@]L[l{|X#_9{ ]-$|0RB#;[R{e7_"2}ܻ{o?-P·Iyÿo$JHI$\ †Z%f7n ѐ 1US?GPxSˤJ_ PCds?5 .4N*ɗ-Pgn[D,hVڝюDD؛xGmHvhu Ix>}~-%Y f ԰!vg˒N "CNgE&R+gv!HDtkkzVq7D8P+]3@Q6{}cS\Ftട\}1zD~`)Ah>CP}(|8aLа0Z~^ 'ֹC>󢙱MԅL xMˋAi'Q,콘O)qǗ/·"s,7“V=j$ÈRb|=8R+mv N8%6ѐl̾>0%) T &. sB_5E؟|y 1$4-^.$6V%q3qsec۔;du<\i>rdu lW%ex,ttL.$W<{V͊>P }r(Ӌ&WD|˿NC/ +Y$tuy>'Xt&f vS\^ߦgtqUY6ODO'NMXJuI=2A%oކ\` u/<)Vػ21"Is:%]?@XCk 3&/k5iIoKu]ՠ;=R "923G!@δ[w7Y iXh $bXyo 3Ne.#%v2D/ssɮy)hG7t, [5?ܘ,z%oCD#K̽8 ZrP*0}!;-ֿz) dQQ2 Cz 4h[h^ ^*-7ddf?ʛߝM ֛csŁ5mk1wɭ]nѾ7Ie-[?6嬲k #AzFoP^oU:N?% +_K%C ytOSɜ4Uk1(`/ L%vnG|jf~m dHx؅c@ũk=i'_ PA\-)>^,t4 /kXؗFl*W$K řxÝ[=ùyU([t0))Y <+'-%h3I!ԥGl,N]H妠ZS.wU{D[Q0OE=kAc8z D~] 36)`y]b H<1|:FUG T`|vwsy|Z4f9E+XfH)._afrD8܅nf [N4mF>4 -]]p&z.Ze_IrK.UK/PI7vjj!-@)G0?%lŕc 7Nk7 06$)akcqi\ha HS_тOFXy:LCcOO?.I@!׊ܛTlW2)(zB*L$Jhh9|X0$΂oW'k?~i26mk+eϰw"e(mTQBEAd3wP( wX02[:<={׳13@S/ @eHP3ѠHM yN_lDtӧ`%f0;w{H/~ib+Yf1Y+ɮ'{8R@GEѲP3U{R>㼦 LU=rLG͎Vϩ77#ђ\ cGQ3{R ̤riI x L9K-;&MoEG߂2Ĝ]g!^[|B$Žx>-C3k3>4kv= UXnV#TI> 8~!>٠c+w16(١}DGwM-d\0 LǝJP*B۱~T2,E0,5uC:D2\6p7sOLdfP|#x,58WhDȧ9vgЅ8)zjhѷX|W`YZǰV44&;Țy+umxSU S CBt)<[Z `Θ]J )&RH:epupߡ/JYc]^8A}!,7cX X0D'ЂpU^S a9^P8Lr%5vdk,c^(=,D;hCb ]١P&L*SG ծ%6Y~.Qs-UVqQ3M`=U rc꽧iQvZpZ_ uhjE70-\UgX%0= IYQq4vm.U 2ndo礋ntϱVaY|hLIh)>֞ vصŃCݐ6IgaT~WoIׁ˜ /"7x[[0/c |S>>ذH-ZouHvق&Bg.qاo,|^G3v0?JMtr]$b;:hBf2 cdDvY8֒Jď5KI$1GQ&x" 2RJ1XrI^ܕq ߍvÈahDkgu"tׁ$ic ]Ty[OU( 3Zygfl}Պﱴ(@ =u<*~`a\US49ّHO$0O .إkSt¬-.Q,P|(smI(|H<+o,cwM3BLߋ̍ mZZ&#+Ȋ ۨ,b}o%h,DF ;G{_ݫ[0aUYC RY]>H8}n$@w;/ߩBӤl]ۯ,idŶ@&I; kVڝ^;]^ -BJ0=n&RDzSUL~2 hb6ƿIpB/̱oplGNj -Vu۫òYlmI >:uƫWoʆ2)d&A Ӗ^"C̍oS7hK))D+,4P"NV; uuEyAO`m7u5 e*rKkYKosC/Q2(ѲIj֟8d+RLA_ˮa-Ʊu+'?C2E ]5_& 폃%ϫ!C:Fd,؎VqECѮdap ~)#__172ZK{H+W[';Z1`'?1II)6%)RݖY, Ư[Y`B.h_x?9NX s T_# t2uZ^-qfD;иdVrlBtēL~XꓤІWkg*-PiIuo H06R-v?o${DaF@0X_(O;Q1hTG h4E0;`N|#S"xCa+'pUi:*?Rn#}R pLi*&gjBq* yV#D]urw$OvxKu>xx Wں|'o:V!/u~㤓d|?ѧ&l\U4 gp -@r(*"W5]T|an섰]> y=P!XrP+vJ5c:+`.Hp٪% Oin-Z[H^Ҁ% ƫŧPy8B_? b [ݦw׃rid"Sw=y%lc[Տ&eF_x})"A3ph1aAhEII,PU^#{8 i뗁K~*(@p c0ǂCK؎QT8ok'J'"(<8FC@jO+A6jXѬruPᣜcld *yWAzMG7ԊC/ _eb-Gh5B)) (!^ˎh8̧f@}M2dB߭ һ Qs<`J s{\keN­ayFK曵HB]/dpr1\McN }Źi9>tFO/"Gۆ՛9L`x2/g94h!ۛ@F LZ/"ws RҜ`e sM1X,I #v%;^F-J]L@٫rHMj㗟2u"^2n>;rzPK Α0hdLCG<]Gr$?;SWgλI4LB^`q)A-6jg9?tZ4"1uݤkG,9?1?]> I˭K ߉y/q3C?Wqi?,WT@̱Xk'd}Hw CRe'':e9 "ݔZ$kBj=+%W a@h8SRB;0xpҹT<ēR -,%QP0o ^zdm+$/]Noɾ" l)R;aN(t:,9(xp!ZAb)*oMo1 R%* 0zht1;|ުS}qm=Z_ Uz˛-˼JէY>.Z&@ uImp9 qY( V9\S޲qڡAMX"6MNW/vRaol4գ^ $Og;&JLLtVLcZJ L--;w{NGN,$R%Πх˰D*VvÂ_)-v܋+ҩ%6!R!2 RʱŽ1K!5_K/apOz^zh"\N[ݐ+c^ xVF;C̪`h4fvgZG۫o;^j(I5{$R!_ x=`Qϭ!49A"^]s*UL2f${BO)Oy[W\^6'@O "ጣcaQ{[hI1Rbʺ#ih6dy;2҉3U(1Ҵ2@=Ϲ)ύlg4< 9i.D9e(,W[pr=)Ff5CѦ)Ew++tK(TV}a2{>2y7=b   d7Nvyih ͊'I'[O&J a@> W<2f']p2<ĥ2td2X3 0fGWt {1T|!t l`<~Lw`9 ̈́4k.: ~" {هJ; i+[^]:Bt|xsJ,=&0#>Blnϛy۳8WϠ ǯ3wEG gnzvPPbO4F}{TM@MLG {Vc59rJ.v\\8 ם=.)Ϸ'X@u UjaBj1eNdy{ ]&UOh4fj#S=X[`*IRw54$?Ζr݊R9(ExUdWP9"541x5y(Pzcm"k=EjUF!S#Ճ'dmGDN{#?`~;E(]v,#/M3K5L&ȣ{k~2IK^nI䞱%$&wH2c*G2Xw|&Oy*HV,$5}to\'[3i)apņ}p/^[]BX'x"tb9gN{õNe9_]3}cK[楉lIτ#s<|ֵkM$3{/lJ԰i[34-;)NГ޾G릺<7%?WHbwEthn،`og,sֶ~}~tHUit{h)6n9mw=1"%[Ʝ . \sƌ׉g1yWm Iu{CӶ-Uh)YH8!۳܄& mϞAEؾCds?RoI[*{ùN+4hNMe[˗Jn:h>u?D~_n }-&(gj+xyHIypT\ܚd)eUVِf!nt<;ɃXbZc=@KU ѵ JjgD(!;1]eRSr@ a]RW-2(HxjFJf]+UӐ#HM+I-|(҈[VwĦ?sG'UjJCb]k v%,Bx/7 cfq-^1زsVP)၁Sz1Ls^=TE}617~f~ovKRoŸI.ƀ;MWE"/IS@vsDf ٹTwl|څ *b}e_nfƍih_޺aQ%WD~hiZ8-@p_AEta a?}د:aJ2 5[:P6hi'qFwoLag8a[DƇw0([@rdøtbuVц` />񊀂[׉M;α9> S7{Sۺf}qu?"*Yﺮ0M􏓉2 ҈e8M]Pa\WD@]"[sErǦ{.n`֓Iu ezٔέUIW7[)pS9.s]&c=4 w5v2P&C)_Hfe>.q CN k âw8\'BU3uUL3$qLg=vWatT]u 5~)kMs 7 H߁;n*nzᙨ]h*rrQQqVvrheZiѳ z!aGjiXNj%Y.鶈S]=+DR36u198͋51)pӬsR+~ d^2B,nkt9뺤c}$?*~NWpT5 "Mh<ѾrB`215͹+a}mUHXr k?#Hí:M1 2GA [+}S^^8>Xph_'ܴR8s%:#QB;w7~pʽ>BeW! aLӉ2<hki,6 om8ʧXSHg>O-2H /^dm}yaD<=K"8!!;'^,bA8(Vew &7[). & -{rJҖ%۷R=Z<(ƴ$9yYŐL9X*5Y~34 FbQƣHIpՌ'K)9%/64d{qNj uYc€ج[ٝtm>8ul**_ōѮ!J4 "џ;ާea %0оqi4\ph'YǁeF2$͗FB J=ƌ82vFѶBPq z؇o%K#B*Ts6j+1p3N57A̻Fb=h`CBvf ᗜ 98Iui8]y]ٹKB;\ MjfH ѬфK $V_o,QSVTI-U>*4p 3k岖"STnMhAcB5=BQaEW ڪ;.Ez{oh̾XM?v^ᚦE|p_)AyL [GzFH0 =kƃiH8*)ƍcE7+PXzTW$3,7;GZ^;dFy&a7CQyMo&WJIϞL?ww.uZdB =.7SCVm/]cXaBѱ5 j.?] 1૔q+VYAK~DPh n-6fʢVVk\)La,!{N(6uAA/r]&%U5-J.`.NTҮbvm m瞇DC=obGRo<&B-A@kQpŁȌDjXFw9`g'ێS"4ߴy^өO.1 P3O b&G㮭FѲjTI]3i}2y_8~%QMlGkܲ^j!?P+ZwK|Ǫ1元լ@4=g3;߁7$Ƨs'PܭH/> 'UHƒ1ӁH]2c_ْɛ`Px– 1AZ3~1Cݰi ;Yjte:hŨD %]D#>!@k߂S8?!&Mb]dZ[U]?#J#3̡.K},+ D 6S'.1T;7o '8(x#$m=JH{Kh]6iEJU*%"׺dM@Kv$y(Z  ¢CRcڰ)컡=C7m_=c$/%Ǘ50 1[UL]}{|V\7p P`pINCju |ʅq;yL4$120v M{l7QVCh 2+k;d*{wto^RiBWA*T/. N-cEGv \L\"iʀ' LM8 Ɍm])3YOZfE_n( `ճ1!AĂ+_)A<(6Y S?B|t;q2,0?҇!G0OauƵuER*zorY$YiBG[]`6z >O]+FwG<{};3-U d-] */T+[$*jHt^&rbN_n'@>LR< Y OQ 8C+ p*kѡ WdrBxw#R-8Jx٘ńrAԬ-_/h8m왟1pFq`kIvq̿7,6aO#]u4 |M6KU+$GM~vIx,5 |͵(Bq#}`'5vpmf6N[˛l.+*y,X^1[I?ib2Ť)ϟ 7O.~̤0~)d>Vx<`˫A3u8u=&xtkip'Zppٜo&5yn-OY%(xJ 7WhkgaGYQ)#W툅CX1jb%:=T#ll!$?-0Je6Pق=6\zGo >T]~սȊcS]utAƈTiYA ( JIf[pm$zrdjΎ/^;\pEv~a +( S_#ioxs&|+1IQR1bc8adb^ס uwtI8O8@Y@|EyK$j}.ܦGޗ=6/ pq";AyK->5]9N!HTaW~jF`x}MܠW*l== 0olp[l ]0z:i[Tv03ԗ:ޔx: $/_hU*d* 9D%d1!vӶ|زPy$4ҙ`\܃2:OE]-Եjo]FA֤]۹.%=4j@rc>3؇aG+S(JD%c0B#t9%%\X^{h@%#$!UThk7lQx8#0z_hn1j|v< }Yf:ڶˆ,Xi^"xwlV/za#+eo*ש-xlXMpoU%[k .aØ"߳.}75T},mDԀqɴ\A {^ ,J\`( o)#6nLm&J:&(vu(0/"*Nmj{ȸ'QV J pV-9^=ԩ&MsAFMQJ%ZM} hЃQ; $b!`"gznE zR+] 7gvyCF9ykZaGĢNa!VAC35s*!׆4g`\vĜ+UcуG;zYq1{PXzn94+ǻLB&1\l" 3yʒ͞2z#6X+avڄ?QђFNҠGSv4x-,;[ݍV![B X6Q"$;Yݛzq)m-<㣍;]jmj“P[l]ڈFYzF l)4VWh#U *3T uIMU:P "KQgJЎ5 h6PfL?/4恍t\)SiNuXm׷H}tuijljT¢ftG^oR5+W? >s&_,}U 9Zp9h\q삒Jl7:YEaC25w?Pü334W7GJS DkbyVG-Dz7=Wn{JZY\k :E$SwV;rf% )w|ǃwm9sQCg{xbe1 &{rWb\~ (Hݲ54~Am6@:UT)gQ' +n5H|}n0TG9uԫ]N뱕]'r5}B_l !q+y%/[JH2;ӝD ?hK9kyMIT9XD#"Eo|&ϑBaUݾ ß[,Te;iڮysϖy[ Pzqouo*6T;OQZ[u-$UV߹#kJ'oZ@9Z^|6Q/%*>>2$?O"k}7*' l}S}RQ"߶sOk!:K* +qS.֨sXxY;7vK& X/Ymɫ/؃==rد5X>P=ǯ(2(PʟGe.Ⲻ`Yq$wy%wҬ!)LjbyHEW*5?kX3Oѧ!{'=${[O 7ڹ;yI! +JߩΛ"Xæ}&65H>!jVv#Po2,ն4W(̾R'kj-nwE CtSVVXdathu][sY8~\f#7!H,/Eun<Ϋ ڹ}4)z4mݷfp mfN}~úWfGM΂o9^k2@ON&~ƀ`dV0iɎƳ3}u8z&cQoS`ugm-e晷d]ۊb8 ں1]]O=bwy݂_M.{dN CeL۽kW% ~.)J-䷧$3Uˏ,xŐI<#Ѧn6.gFϜ7`W\콄:F^2[uMX#s.|Zπ?Md1S6\ OhFētm~K_|Q' _DXӹ*Ȧe-gy#*p<{>,(+-(e99;?nH,tHN+e{p|8+Z~Əw} k1Eׁ^H>@)1KQ N)c qr"c g,/ ^> ]$֕IM%ՊM☏hbݔZ<c#D)-W0 !(z2Hϲ4%!GcGv`QZ\T5/b*/˗'[Ԏ&Y ]gLg ;QhsCcnzWGfkQF]&U<vQ<2C!!'#;r4^FzyWSL6`=e#J=CyɸlcH40Zob5ݕYR ]SrIQ CZt\1@MIUCQf*,r(>HEsؼZ+d1|cC 2{DGHy<{l %td:4xXe1뀨̬d"Zm!j+%m'W"!e=}3b_Ff5=gDAe/ېSvnUjdvY%dQ G|XV$@ػkEr7P.7C.HiӠ edTi;Bx~ʼn P3f ә/QZ*CPjr0PLԜ^^VfaG<; M0m}f}ao=F?>=cim /C={b樿uE {F]aGJW)c~%J8.? "}G {D$#~:mSSޡ{+rA:ɞF䚩S)HFP*nA MQ} ն$9o|CqN PزAܿi''Lf ZVPc9#7PTýKטEa> ,$P?-@!9YH;)gM{SBUpw'(%K"TyeuzqVH:aYj+ɮɅٳQ#mKnSyЃ98v*QNz53XҷK)!Ĥ&%*) >Bc%SYG+RdBwV= xi61ߏ!iݰɹ^LIӐ*424- f8ɕӴ }%+|BcI3 u Bmh[>-BS! Y!,x_bxv!ıd)`vb#2Yl@$@̳=ezUbAdЕފ d¬.+d#^%$.*KIgVY4Ѯ|Xei&A[ ]\ϒ]}sxql(c(5ȟ\O%Hвt`/gHւDmsgB"w+A x˳oP"w+ɹ!G45߸L\-A(ęҍzEo$VE4ͣl/J(sso]Gŗq$N,P9Cq.Gܾ^:_YVQw*'t.4ι,hZ>+C5UQ<ry4K8 yCJ ¤`f|L'-9p0Hb;5'NK/8n>v@}OUuSe/5(}*i p%X,]ڵp*CZR'<0{Iԯ`kEn%`g zϘ,Հ:STG8:hwհ5v9U= Iu68|y@~3kgZJ co'QdCÕm[kC[Y)kQZ^W\+ғpq"7NNMc3jfetQR 3 dߎoh҃|"捨)m3 r6\ULOE$"g#eʃǒ03`2f9Y3M?u&B9l4T*iZ)݈iM71 WEv: S99}R}ojGiN=XclMHzwvl1`*T̞U f悹 ]n/N6?┣Gx#RZ`}sI!Pm}֬o>*8fp |:ޣ>0t~\Nz)~0]Ksc½/(j=E4qL˲)(M`Gl)J&MFW.-V?/_ /p1K\Յ6Vc)qCu}NQ]zs 4IL$N!Ȳkrré2c!Yz_~*GM >wU92-`Cíu&?MQls2"on^RRT>1])5C (QWy &UfܓD ڎ*co2m.CҴ*/icT%7vlOrcfTЏKCB([ksrE:Vz#ؤM)9}86q 4PSyxI/@45H`'Ul&0㹆S@iy'Mԁ4HVy/f~_8@k?KZBh\0|{!QW$،VIHӴi í.%6OL'c8ѷ=r'/ܓD3PVV# &`/MWHLD-Z6sZ{"!Z6-" heE9q9pWWV|p'S%^$]s[&ˋթNjյ:Ŕu=q!k<<- c]9 ܴ/ڗ6IJ@I3Gfh+6o^[dQR8 TaEkĽ '}d\욯޲om2],ٚK띄jWOo#C[Itؘ\,K'>@SbrX.}j8>=֢c\m83_#G'2Y$~6=CY,B3qΎzm rH?j\PfoC~C$35&+~xC  6Xu($gS{ow?%3+j}zZhm—l^]^n'1zsz"oba( TGY·'v[xI4/Z6_{4 eZjX]5֜_).o.9eiD>I4BE:dA>^/#إG+4Q/m;cV/F:ؑFrTs^~0R<ةE>v''5. .K.*xt6#؛7Heߜ| ԪdK{ǐohu&g?+sT9h ŧ? l[Ryr n^gc{q8|S(Ӕ.1[2-9JϗSƐxJt,1+U fխ6 X_~>%,ËF4+ uKeyEsONE83rZt1F=JŁnkl'x_M-} K*Z ŗ|ܤ)FVN ±-OA8ۙ$7 Uԗk2) > cs",mIZ O |}%ʊj}ϣkq"f',seW^C`y<8!<&baؾ ! `zw7-ǯ'&}Jv/Mʩs `4PP*N}6)&}4 {P@UHτ{k2!,_ ^8h̒\'4WPkf@4ed$]. |C8MO?~?ƒ 1rLͅ g{vm"i˖Vokf #[P>%ůU*e4њ,ՊSyh/NV^B_;+Oi->Āk]9:gR!VN #ÇG0y(ƨqx~+Y8n=ˀ;͕:_&ubHZw0n/SM~;h9X{)c&i+7߉ <Խ]օe@꓀:޿~BW2)_(|s ̖-/FI)x\^(1L*JQTaV.IHR6TKb2.@0pC6EA&rKr'mxD}>5wIRlmGպ6ײdKS!O!7wi~;6&eJ ى+bЬ4zl/_'X5F^LoLX՝9x "ЯVq22v钿тS*pimqwuo0#2\J0BWy`UC.Cl@9ńhb!IEuًk[?!#E˺ 5|-'=+QHbfHg w;> ,&-V|sVK>c-(:ΌY`DpvDtbs,Gq2d1>sj+]RndSv[D(M{Zǂ6hV}zwva.]3piZ O[(ʚE=Sn+ifL6PHmpYz[|]Fq0j:DNrlNV| 71 ÚSZ`!VHEf>geK!(Q-OsIgbƧ(:ΫFB=ebpI?-"<Se(`͹}r(/°AZṆQBrMU8 G׽ T3j.D;ꋷVe̽߈^T\ 94= /D.No>t7:qʡ3nBuz0g Fb;rBH!ɻuo/(p,'uьy@M2L9Z]i]rϛS)}6UXsdB$,O'5;iC+[bAn2vh G^@kh^nbe}-}=J0.OnYI"YEק5B)//r;+\k_w!ϣH+],;T?'2*zUicOY.;4#{VS5iNi 4썯'J80#SmYQ /}h݇5:/)ġjif@F U珱' XOrT !u31ޞ&5X7L>BWA=To{j*7kGk$uC~ѯjCI5N׃%[pI w=3 vHlj؁5y%(˒-}kVV5Za r&z[ &0`y0D8 xc ||paڶVv5 UIAjCbhr@h̬⽧WqC~O&3픭.ЗF&g⺷Lz'mO"EA)[Xތrj4y42%Lհjbxjڄδ9h= V sOeX溶)a`חna@F[bݮںzo\feBh x6ܠ1enfpAUOKNЃ>>҆-xR#M`$ qI-1=V᚞ _2&m0j+K}zVke&frʄh3nl, b7N7ɥffK`-&` 13'Q%i܆>>PEuQf¦v; ]]e#FA^E2c*&Hy,aNz (|9G#%q\rGnղo@cux}I+tDxFTb9q9uD"(td,FwXg1ҽXLB ߋh_8 TmSUt$*XEDj-A-J67OօxcQ'|Pl whs~͏\hna DKza:ag4rfoRZi^fk?O;\g{hXJVlTiލ'`œ ؟uR*mh́4ˋЎe67h, / E> :H FĽd .I۱t|@o5h:N/d[RZ@%K7ໍN}Zmt2ԋyyO*!{Ijɞ'6i>E@VxT"ia?%2p|?u.7u7rkvMwD(τUI݀܃$eUP*^## 7iB)pLyLҜ)Gݚ;Q$?BK`zCq1LD S,beC7Kp}ů%8ާ"T4 SXc+ a.AhߚKR||{9BpV,[T=P`eHńר3EOY!Em("=t* U`8Qgj 69CP^d5n~O p ZŴ72!'Ǣ.u K HhSy#/MTkvAo%^8kWI&n?="wrF(nw憞uq/'=*5@z2k7ČܫX9ԐY[ oB[296/[gq*`JPԭ^!c#[݌nҙE` o!r))&C,hWr{)muġI m|,Wn֮UmN<}[R#;|kzY aҞ:6kڐT,}o6#fL_@fƬnyU;tө,rX+Ӣ<4ɠ!> 33'vվ㗬>I1Q^kO Kp5MF5 -P/bH^hm >;R;+G'&rе IP9,h>X;K;Ӕw [_m3H8ܵ}+6-[Ӏ|n (MB0q!3mxwk"foXظSAxA(vSx>'b ~3CzL7fpfRuBׅ*%qB>SM+,Vp id[zTOޕþK#/s 7ljdpp=f0{3Sψ~.̼I95p[YֺX&[ZĬ\oI?_ 1 e|DWԇ?@7`YLE&je]7eIT;x&P6wYE}}_ޛ y6'T RxI2#(#$_'+E^;TGh$K>XEyu0'F ( JIZ-Z FfTBH$u1#7;~yF%sfS}>:n?ϡ ,|ٯ6LDfxnL)N Ky'K_kLts'ʰ: [+%JР<3s>jH?Am57IZLH5Pك5. 0-_ hXd\qSNfJԉ EzeOG2L5"¦F͍ILPΞۭ[ }+"|:ڎ]6Wm6D1Է>z+T:Dk >؀Y?ZqdNi mI,u} :r~%X3+tՃ\{H%+.;qH-Yنt(MIo8$F^ gglHP8Pz)1Ҫ(:)"]atbD ㅦB$m7) H̚0O)~KĐǝbHhJ,#h .0҉ sN=GvznFjO;#|~5&Aˮ bXo՛%^ENa 'HGE( 5X_R2gqo~;EwH{"T#֓ѱ Xcj_b #I$lM7.0d6&f88g[XLS=mxUg7V<6|B-YH;6QId#>z~sl|$$|?*#PDO@B/:*q%!}6euN<"A2ehK^qH_!yoXC&:qW>EN+OT6FD֝\sǙکυ(OI.ʺI$ӛl5 y"r +"a[j$'12|#/WXS:2|c s8>F687 $؈pìH&7׎^jGabF#-IJ7FѱHmxv,ۅ&Uv|Cғm5Ȧφt3#s]xc[d+2W𢠓?r vF+z&{Z$Ė &'=>Ҭp? ߜX8I3=Ա0Rxl8 \2g*9h }c?},a)HGHڋ Hxd +G_`p*x3){$ w f@[1 [Y#y:nHn W;$S*}}T/vHZjzW'?:؞a8i`j4I })ZG\̓rmn\OEct\ v`D@C4x9oT\@mpt ~] (EQa(_, e͎>mr:X&YˈGy$S<Ϛ./A]c22R:ic' yLAmdp}?O"b*F4@52r->9 ca pQb@k76\Jovj1{aN1zޙ0iC߭mۑ@]T%,'v>=dMn{-jyG*lkE_ojM'[$8kcPV~l;=:]>r8eO 1(ۺԣ{s&qrjpn8%:—M+$DUԳ<7J4RjN~hC')+x:BbAo5ўu'D,/x>?GZTp J EJB8Nyw=88?JK9Q%}qW %CĂ džO.uEa'TݛV=c/+Ke7P܈ؤOxṷgƗxM~dk2p} 5a؈`)H>$${IytOUz*A2kH#f#Q̜~oKK Ȕ{JGESفѫc^W`B1چ%.A[m؛{Q h|hn.` XBWtd+;_>is^ۤEEo5`Ѩ.>3|Z.Rx< "ϪQ8úghxn:&|lwgOEvR@'z~:CnТe"?0TS"]7tuTYq-aHLZZv1+43A &cP 0L)dxK#mkM>eoA88ŞN(ȝ0؍ӷ@95X󮮺4-0rLgkTo}a%1C_VHլKmLlX΄ҷ&45 N@2[8͎Y;a'/~_]Ow)qG_&<57 r:HPu8fJyfr ~$rٜZBwMKT`Q~(n6ho/!˼kUW~-X|Zq,N+)J2u& ŻP.Z-Nj02Yc|sYc&z| o*&gHMx)V { /EؖŌjv_o'qGe k(jڋ]hxmdNy]f3CNj>m2 ~.vNn,iBSJ{(NH!1eviioyW7fֈWd֋TNZ *J4znA\4DHiG- -\wE~3I`1VrAؤV@7^yŨƴ,f_''˃aR!ٚ,m֌ b&Vw_(FY*X A\!]xWkҧUԼ}y;Cmqy!g C `u -&*趬R K\np<GS EڸIiIf$Ro8j&ؼ<7z/yDddBiSsߊ"=I }r#r dLƇ8:u8 C6Nۍx<5%_cUN }!V/N2pgjJ=I;i1$ A7⢤&.L}fUQ4U3Ca+U{#/ bKD*.35w  q+=*Bq|uYvv%6rK =m~-G8:DjM˘!I7$DQz`Q\1ݡ|$*ɤc;捛yC|Ѫ^`KS9Gi#Cm{;{('{+md6]-j_jZp }v_}$AEo/==qQ:p{5Gi:|MpK#5ؘG}^mև`$ daWMEcaR|R }E>j7JoMlc[r 9DCx~GXBeWuQІD}$(]d`g=\ uЁܣQRoTӼzKn5Y?匽˵+9ĝQl:NLx/`R,"O"tz)$iB"&F52&E}-ϾiOmI,FFMs|U.c6J2M``oq'ƵKS$S`ㅓ8:BJ͎$T> >&n//g(KfQ>UZ%FߙCx~]j Y^[D݄4Fҏ$/dHk2e G;] ŕ"ZK{Y`ChMT6"qhؖ\ͽ#Ρd8d4\Jů4I|l[KJe¦[\mqiL cvr@`iG3'9ziޕdbn3KgLG\8lQhh~̊9~x?-P eut]-qBJg%hHn J$8)QMmн<Y!wCLrDY]#*r\$'׬7s1!bEG#@`H$ DL;5Hz"~Pigm}|w8^DB&a?,ۥ CL?b\Fc, J䯢QZePP&&i Z\ 0/' iyP4L+d[R2]ڗYW; NUpt`DƲySpMӱEeSM i@7n"RE,<ɥoO6rW6"Ep79"(pݭ8ߨ8(!z2懛.!嶶xlɄ&U8cKIbrq-nfh-/ID]SUa%6r]B4l!OYg@ՓkEe,߲Ϋ>X|\ďEq?-'#^r3 XPQ!gIs4?(3o{::;B_][tR)a6{S]jeu73,UT3t"a ؃3s)} zx&x^"FYW/1V\ir ;&w` hOP}AիD$==Y/xҿ}YOgH+ v#1&XC{y* .FDߎAY  Pr}Svh!#$}A4Ѯp?tYҾUנθF  ;iR`f4ڋ'Dɿ SupU#%am_͑2gVٵN.d338^go4Uz'J,kD}s]{4& Dg WV LJ^6.VH6[ k#94茇4d |#odhtY p<->JE.<˰Z:g˅j ¨pn tmyUq6nɠyhyͰ+"8=jo.#|g,jp2Iue7NU|ɭ}.s]JƐhƏqw~<$^>3cNDډ4*ģ^$'4h aaS?/* 0  **GH4:<] tenGX؝B|>v6v![^Co>qpHn&@GxPݽc!Di∔~]OLڅ%5Lb4 _IQqA'ITcɌ[vAd5D@fnIh~`c3~Hy*R4BV߭㯜?%*;05]zW,u0kh WfuJƚstn|r)f1.??&> [99؃~%IN&A^njֿȌ_xu$Q[qF$uP)/{͞FU~jdr>#b9(,F?&~\ۖD\ ϓ m0 +xi|z[U' ";C+l Z@q␯.E'm**zb5)X_suP2c*l'U([{U<$dV8::{&kP q8Q.EػV[E>[)%/x6*~KkFq Rk. oݶ-g?gC=6==QSЀGM !`+E_q =?eLiCA˝YKNʝ?rMx:uF<c}aC&˿-I\7IhkYÜg`Bm>z+r4^WN\=_V O&TSSUe׵fVX~2ݓu Y]ic]6/d4#,7E`@(܆}\Og/R-$O\}9,z5yJ|N㰰jq7Im w&D؄Hzo/NFt+aGLϪ\.A±I-~ewcyyZ{y]G&9M'SG2xG {.P*WxCEX"FlI891EWpIaj+olA?Seg=wlͲAawB2'icTk蚳VW ob:B~POuiDt 2} q>_L"#¼ ӎeI~+;FU_"#U{UStٶ< vbD?[n/jSh-ެtkvH556-o@g66)$ȱ4ݖhzƛǦG* A>nj.3ʔlgzCnh-=A/A3+}9F7Ie@ vw| Pdtl7RƥBҔI~+~@5Xȷ WlM!wؑ]*=;A\8\CqX`h|\T]0`uL˶{x3Eh8v dc8<3CdZN$o3ˌEBf@gPt7tg.cc#q9xtT_dB&%7!QIz K2ȶ;auvxlqF<2d4X :)@ %)QV[$O1{d''֢;r8A0`p'7WS׬ޥB._=4ce恼3 'Y`aSpTxGIRq/ 3})wXa}6s ~!Sa<3딸 L[\!A L_н|P]Tx߆dJZd(<+i_ʮ¨K`>ɚVn rmu0io7 [j}y~E7k׏[UXn H?R9kYOKwת31G_q nu'?oi+7r\(&r})/ _Ow4Q }PKG52%Unѳa4ě \BBa?i⸕}\JĀ⮫vrH3tD_C0Un xldqjp`x&C88#;^Eވ1GR=ymna Y"C`8bj]l˵^S_.{pb=2e_ikl+[Esa?]e@dIiWZaLtY9NjJu bF!;!Wê|8VׂG̟BN*U1:.̬_B(3 VZ~"MV(&QH9TMZVښgp|w]:yD=[ Q^~#wAu[Q;eBaX89±[}^%J<Ͽ9"ҝ䠉 *y@;QM@ ?*MSνSL/84{Xal*,}H!{r;tɖجB͹3"r݁඄2{4hb,g!L6%Hh!2LܿaduːX8sƪjUE-8v EˢC{JpLa40ᑕZNYS5yZGA4Hy> Q0Pݡj4 %}9`?kwֵ-e-J}s`#N4>kd1ѴPe 3YHZC=-gi] 4rPLq.2R,1Uષ`{Q^7 y6U0eSHKcEu JrY72rFw[^b ? eRn>9k4%y ӱK-4K2|+ aEؑ(1lbLPެ(P nnbei&JWNZ}=R9se]*4࿊o+ѝF3@s0)}T=z'5auFM!ٓmG_EW.j&4ͬ/qbԙS@j [( #ZgMQ%ncosO!}d>s Gf='_LjCbdO@A-ռ@rq69qz Q~rĢ$Q.A?B3h!QY>7>0qMn?]3,V~c&ȯH .ڐIDJ"sVZJ6\ZG5hP%{B:Qj`ԋw Iklጒ3x DVmfK#LPؗׄU=p!A,ǵA+Fɏ}&"%q#\&U BlȟEw?ȜK'Q+7IF ˖<ɒP;ZS80lQ7YUt|":;ZsKFG=5i|ʻR@Ёb0坲=(-ϿmL1fZyʜk*@ϭԌNqK(qcQ9TA/U셙-zSoqg.P$"N}P`cAa7eՙ PhϯjK@o:FKL ; v _";_זp;䗴F_:+ŋte\Ξ+ _.(āDHdF#T0@eB]54H=_Gv~Maq:j@9G/]h<=HLH&Y&R  '1R$"] `,ڝܛSC\78pc531lI *zj٩f/Iu@!C3 ,bc-Krv q lmᾗ?gRT~Cd=8tF@(ŧfD뫒h>ɦ$V3éW[J`_"xbWqM2> :9/Tu&k6ѲM)>6)-Ǵ05]wDoz DnUʾa-6/y(gjM{g:\r7:3h\yzVKlFhz/6sPr"ٴ[$]\CB%/q]&ͪSSfC1ʼ`VOXɂ8Oyxo?Q2oIMCywgB?]&Ue!{A3̕nK6_9“x;Nq,G0@fՆf4Q^UG% \ ݻ . 1`#PXS} 69CXs m\|6]< )>`<ܱ!9:Á<҇lq`޶@M25c8p]n`cܙL:^zNNDiؙsjHLx"s?ZdwIO:!+P#lN{j`.F]"mJ7ܮO}؉~>{s7H 'g6ԣ|~FgCnUx<'zUb#]-9߿rR!؟+<)$Cl~ ^er++Y59ĺTJ _CI߰2S$5AJ#d@/ Pr\&q+9 *dRjHd>HTrSQJʹ[ ha-V.Yų4i\ER 1zATI >Ƴ)ϼCE Wz1VkcJe7RRKzZTeynn罳 /\uFO ȬvFEƭ8(+v :0 gQ՟tl]d3rTـ/ktFq2fU?toٿ ՔMٰ߰ŮrрgHzVx92o5"eM}3<ѻnw1^tGn͍5AF}b7}]ʱ8G]R͛833CK+Z&:&tJ1p.et{pOU q+,#jL= N%H VwNB|z2URT6U$^,-iL0|4:2z<0z[ux.ZֱJ_h EOu6l_VuT0~/ffg.| ~wmhpdnzmxR]@+ʥ03:&_Zs?=};TF >o 9ifrm{ª^e5}y r@= E˸mڝ[\9qGYQo_RiVGbE5,XjϠ[p-vݜ9, -e넩q;x˅麑Hvܐu8(p՛=Koiwodj6YGj:LKqԀ&,qxqIAn#<Z5RCqBgا=usZ'E`|pe􂖖t}Ƭ. p, O|ZO1+!T}T<#P~9{.1mw=3İlhhYaj@@*>~`3Ї7 šT\X#hYN:,x3kvp[HaT: ۛQ#yyH?5ݭsQ!)rkJ0pN%liȟ6sUw!\?݂)2Xș{/Kjbku}Dҵz\Y0t\YQI9#PMP6Ћ%`Ay M՝85-T5Ʀ| Yz<Š*h-FÎQQ|*/̾{mE XT;z=z@I nEz nw$D\J1f 8bHMqH"7"(44Sf\$Me?8u1@?J.PUꥈ Y0Sΰl|c|0cPei㨫bFΎ>舁P7Ք[+jJX+4gcP39ᛂuwc= ak*8pN.%X DP<νPa&d1E=d3=wbzRfm$=&~u鷭WYgX\+M)D$p"G8 ,͔UQy h(,Uk+vNbBt!3i@@kǴ8jRQܶ>$œx(iQFFt-^t]A,ߙER~u  ɩ: Ju],y0*ښ%D^.MV˒URUX ŨY%WR$Պω5 M J$aJ(+ʗ5l MzEZMLp9guvywLg/+DzxHh~$3OڬWrjo+Ǽxl˰PNYò۞P ߾ h!/щ{3юA0P -C8,l9glB?cyW}m"^8@_MMߴ FZ QWY#ȹ ,ք׼j‡iylii| \鮎/R,'FYMKP 2u<CO0?{2vN3K̝)*Q[^rWKw(as@#cvhe(+i'z1ۘ \9L00p1"w-p[Yb Ѧ",8.)ʅ8-+PI1b7={=-)<ʮI+MD x"'.+@X#Dr=4Ä"jZ1L,4wׯ2 1若 †s<˳SE ԤswxS1Z ч1PC0v*`DU|$(C 'Ѥ,w10ax6Z濛Xˇ)`ze+ u^}lH![E{aC %O:V#5&09uLUN,b4 4,\Ufy)quUqenG,(>2sq:o 3sL.qN~Ӊy+ba`MR].VN+ddG$q+*]THf8#ҡgatEӖKrʪ4ȢD`+xˋSgHh qV`NMvAEz =!k "Zz: j!ٲ&%0 #5ze 9`Gq+JY(e"-UhG;Q$ϲx&Uj_H}wI9v"doaBamx)TRʒ4 dT>@ svJ'm/s =l<|BnT2^-Bܡ([o05U-C/TKeZgàht hZqYj%oܟ'Pw6iS rdŇqeX8誧LoFxf&Ĩۄy9LakLǣJ8yE& vxLqweMn£\YeXk޲%u[.ʫlWBu3CD8qboX V!Q+F}ͩgD!ÀC1?-srEkw'߂$Z]N:bs6|a؀tPT-zGs,qT& [kX,aw54`. 6>)\[j~aB&NL*~DqޒW85kLFL!%nk#] b#"b^Zic3mM3WZ:V mOwNx5A*rbr TJ^KەdFIN/'7QZt`bl;~ېo_%6G Uli3A#@$O.Q)''{JטfƾX?~ J7#24trY P4؟I_{}=c8'|t Q*?BWg17#8!;AW(?N/K;#vF8 GsQ6#*FoUFa!M gxbV(vD()Y^ە[ý‘POc4ԙOgzE`Fg,XwN>ky]$- iFô6cL2îV><t2隠R]Q"+vɶA3nWކ 6šY#Ģ,e=#18S&X2`0.ŵklײ5spp%|&>K1=Y-;qlT=._17v?4.g89k-ämD?ꖿ {E6]C[uSӟ`0pڗ@^aE[#pt`6&謿Y$\['FC߼ƴ!;5p˘@Ք.`3ooo$.uw~7t꒻~@y2QEq=8_(kUJnIZʌ!F5> % RɮJ|Y(Ӹc8Ɛek]#p vrvd{U.(Xj̉ \Mk:!rD<ư\%)J0N@ 3' t{##cS7kR+qTm/o\No DLs >}8yfckFg*iv+RWy[tHiY틄̖<MRYKe؀/ή yC>Y8#^dt|r^˱bn)iUP_"0Z7ܑ?+c]ȴ?"BCYZ[:D]́}}c-&-($*.Kv֬l?XKȪ9xHWS>@ : 5 '\C:ɠK8I(۟MU5q4(9 ` r}kʹi^j]hP%~mrƆII=Nj' J>*1eG<U'7Igf }^ީ-FT JbbA_[0B{2N=(,5@ XP?'&ROOJ2dPbTg: %29wd*J{cG2o{!ܚM#cYu2ўg=R)L \\N|2nP}=1/Bq"Ut)e[Rx,-]"FEP&h_ޥkp=rmCQ%]t/LO$.$O@:I^jӤ Bsfu>&dܺ*Fr46?:a]Szȿ᥈p H'EkTv z:Xc-/m^BY&[] '4y_UR<)oև6r\yf8CՉ<`e)na}R͕U^Yb (UO<<: K({+}K ӻ}v8l!BLh(RZ̬gvF+~U7^+2]r'>d2߳ʩCB³6&h~5?nip(L0c?cOgݝV)fLpr=+>r)dW`9}&3Bm?oiKk"dP8L_NYoaGDܴOutXQYf#3軁R Xv~ÒB?61KS9hmY}yi@-Hr8gn,:5`V*09zm c|>D)~Jxʍ"=|bel& MB~\wkzN"Sb_N\+KQ9sCw fYN6u(,*7'{#hODǹW#8*_&-B3aF/e|4}%т 5 gJ_q)$X~\kG//?PՄ.y4ٲekBұQ=KQfC$~rR87G%0gKż}kDWsmV\wD{21H!cE YL_6ш.Vֆ̀zY n2 S?i<#ڇ_t^Z?yBPC=VLh xɲ:E*snjv_62ɳVS *iFG ; 5Ľ\3{jDK}%ޫ(e\jFrg6l0̊lBY/׸>io΃m;Sr`k"0 qqke0!g2dEO[@jW/Hƴ)v*4ڴXlP+'P!秞^Jc+\Sj| L/ FيEF*9'U8.i'Z|%S#P4R6=Iԇ; ctLA|(qgo aMwR|1Iɾ2˝vVo;,AeF?Dg׿8YޘZ+003WtyL5y+]$ٹv 5ƿ6(06ͼ!-v*oR(_Sc=Lu7)[|'50x{"+{z踬nTbU󫖟z2Ñ[i;&N`.7؀-g~.9-ccFY23`j, GDhEJ6tI=C=4Rm(PKs9$ \,П3ѷ"%F ?zS+zT(7n x,ww_.F!˶fƚuJO.mg(Y; M:M)R ZNd Hcu;-I"ٺ%\[T:ٽ&?;W{jݫȦQ;֊LH=.,\g?mUE.Q-3#֚pS 8=ؖS$jLf]}u;hq^8<.'5:Ҳq1=},t |\۩?ʨebക7 yy=KT U+.ֲ8 Èz0,A ɢMg8Cύ.ls?6E?ߩ!`FЍ{pJKfс)U!d~޷ 9]puH5n4>RrhŮ9YFIB7H#!柧8GnҞ6Z[\ؘc_Kew#/utWBj4K[_c1-¥J.:yP{dDQQ D4 {֍LaQ&jzx#_ ~^22` 88fe#R%tjaS"r; /y#$ zP/RvF\N7'ͅ}Ab3>)>jmtW&Bwi9 ͊2|Z17 jIRaQd~u(S}- UsH͂VjԳpt?>|?/#_7 DpǦ4t Yrjn\UAaUVT Y ˆhr1_tc*"fxO7qabDT1vĂ8_ yKJm57*4%x7m Ḝ_Wusl@bY4e!T|Qcw&ss(s>Z:^kL;.t.{e }+MHycR˭!abhxu`>M5eDY/<2(\w4 \OĖΦLJ7&?D_NIgYu} Wu,nϪ2 C?h}=fC=P׹/6'Йfvy0.6LqG'B; XBH`kPA?AFĸTڕt<'eoy&fGU'?|‡I*! \5KwG86ŏ8Ɉ"E(KPfvшC~y14TRsZ&!賷'6)wr4:"h8RN#Li1dbsU{'JLOZTe;!&y#!&) Tn} Ա螖WXݨdX:l7%E< I$10d<:BI`vk!Do=>UtB ]WFټwwf.u{3VB=A%HgWeU޸,"Lh]hKvJ6nmЄ?k 4GJ47 ~(" Tt]hCa}> bs؅`nq, ߌ}Zj]FHj2!N|6[ʾ>.zEnA%䢎qdcR[j=!N~ f+3Lw 2![ [Q{LI̐|tawjdro:-DQ"@#-NV*| m3YhC( i¨ƒ|U@buP>'z-N\΍!gҋ݃4CI3.#o[TUX3D8=i2& \ 8#.v~~NuDљOY[p],)9eJ*w_d.i>&@ ȍI T6`g|7 ,Z+i`RGNf-HCJ(VpJ5VDG%οY:0t'kR5BC+)@dKb$MXo\\ݮs"ZuRd3ͬ:Wr 0D%' pѯ"33tqǵQ7| 2#c vIhU0.6&$lJd,]šxᘷ%%eQ#_|JL ~Y@.r"nܛ% }>n4:"qk5[NA9ʠ 6c7۶4gMĿ*"pyK/8[y.lMIkM3IvH:7A}A}t#^lyR6{kQd^\n_ܧA׎*xk͠!XuSy -[S] uUHaiq[N! Y,_{%U+3p-'o>܈+O NjġЖ!mLAiaҒ6S*tBciЮfb: p|mw $ _emx nDK!Ơ'$Jȫ;?A,MkKE%NYzѫ|\%66q@29)̐A{ΨX2+2-nN>@C83 {eMbv{J e|O\s;#XOYů8=rۅoEc{b/Y22kACX}\2O2̥ i9vȿM򍙦-#H۷Ssk(#I^pO2=q,P 4"䙝-p !%m4yp 0;SVLS7 fO MxqoukbM<-S+&A )_׽ 56s2*Ay6 Tǧ`E.tG˫vryAFTM][{:N obS[7A(P.z3pٝ-M_ W?<oDRx`_XoxNH+4F1VmJqu Q[c|4Qdl8O~I  :UnS2,o-".52T29l}["a` *琹7Zaͽuh̐ aW =n @Kڅ 7_ N6ߐSb1V˩_r4K/Y:iʑv )"gVyHyC<=4LE\&Cz"{PaxmP@ x3 mő=E5j}#⢽C:'iBpc6.t] 9$ە:rH/HFxrk=5Zw;ㄕlƯwYsqH:5FykԽn]W~iLG!d92NI BnT 5RgIMp*RNRafPJY+19Ef']Y& qOlB[)˧z.0OT }3{;V`]pY< @]݃]͒\ai{Qp Wr@_< ;-0^纛QY3ėF΂ݡ9/H:iQaĊzF4=nпE1ܪjTcXs*1Ç#AhjH0utiV 6uT9@FK|K`Y oLOoIgBDRC -jqx/UN6j4hܾjGJPO% jkJiOHm: Em\#PUF |޾˜NtύϬJeG + 4砖les5st/IwoxRxc@[)s ~߿z.q)Ɣ{4`FÆ?C%w fHTD7)}hqN Wsnqj΋A*+0;7cMMH% Oԣc1dG֞(>LW -QC9_G޾+;iju[Ǽ6@g[&6L@ĿZ~L2@fjaF`ƋgGIb[CA> mn,{(PDoο/8f_7vHpYGBH2ɖ̑qlkPNt %MڙaJM ٷloOiGKHkhj1`8nb{zamx;Ɖ,LUU*g6}Oy6d%,,H]&f[uh[Ѡ{,|ywl1"&_ޫ^gg{_Xʛ<]T W6.$S(=i,QszF@)8 Ľݐ\-JNruOTzE T~JBG%|* ,§,jnUS Т-jZ;}1=̌g`vzja-8X^70Yj$sBC> :hd٥6*^F5qʋ70[ `ƂR NC:2:B'|qu?1|T,&nEݽ6tf̂D)'I6`? A7!ORR0WA5o%ba ^Rg G UwQE"r9 {FVFUӨ]33ߙԀs{G$Aj> /v 762Uؘsh1(`(N=:m8l;(RĊir6q8 #ބ]ld5(,lұaCU>kX\O8v;Q Rr( qZqx wvY68: b9<(O\ZtO}aRIӌn!_#/x[P_P}n(/f#w_X:8jgd`8`K=/M5B y3qHmL5Y둱Wck s[PF{Ь7dfl,|]֔"surm5ꋃ٢xDCĀ}Ԛ6iP0ѮUHg=W9D {bQgQX+lIiTjMmk@wJ,ýC\ m S3OvZh%ԩݙsE+X575PAv#!ڿi 8:&-XUCӬDnH}LdLb`Tv40Sū%7a%/=5SPeS1ja ^@tsVj2l ][Ֆ={AM> 8Kչc!Z,VVky҇4\5%PLHnC PGr?դ2E ~܌$bʿb}[mPMS*YFv0BKMw ߀S;x ԡ3juОymW{O.2Gl0]Xq)9` \-smuRZ7ʚnBU"Z K:;?Qٲ֯ i2 e" jD>ayYxzFTݕMF{Wh_ }lܲ }6zL=^<$n 7';`DH#vCH`oRV"!P- NhfovćSQbu&Vz[zz*gn"l= kFVMJ_ 7:M<(9*bd9@_?WvQWUi7J*L4؆!#I$;.\Cۋdnq?%[=Z̳H,JC;='DI!7#%nD*U'7e4I«ҟ&Y" kI2m7rڏH7$ZZcGN $fR32oE4X'}zucuS/ {*ڀek˙@o SN{c4, 9,ѼαoN);NfMA!bk tVﻛ9LڹMɋYifm,ڏ0,Wn @Y=8 ,]W=n~5/=geF6JUS܇}[A54|]~i%DD9I!o];BK}E'lg-NYyZ.H4f{_Zl3,b-Ҍ(syFvʚ=KurcpV9V)yT*E)␔3evF"4$(ݛ42g>&^8ጆS{$d\猆=58G%PbRu˨VȐ4'J&+E$(*`ىAY]/nugfa z aY"6ͫ"svi3咂~P馦5.Nq|Ӏv-O*+,y]Aity  Zp:=) }٪ 2= e!f t`Fj&ɺ0t15wߜA])-m\ﳑAẋ$m@!,R4(DjZ4` ;.rI38afJqUo d5rU #j0Sܚ+w 2ߠp^)n M79^iyZg^=i9efԠq47IϻL,*%rJ~?7 cgm;[ qbMXJl>DY;m][ilwAVT6,, $d?㤻nˆ4qP"BN$$_ $5Dea LMxIw"s,p`Ir6tn`m]&SH"8KYkʻ.j|jr)i`N| Y?`d}N&0l9ȨDfzž Ї3`z9?#iTPjeJ-N&s6q*܀QQP+lm< CST;Ə}Vv84 ٥@eQ%3T­&ȟL\=~fMEMnz (1%2WUkԠdEO1&^YEY/!jbMW*$?z% j $[iSȊWz=(0[M[ &ů=ŀĘȻfð.tM#Cs1[ZСLGB\k~4SmB䪣o\BCr/ۧ!?7Drb8LMYbV,^;/쎧9bld`hR Tu&%HXVJ3 JyV"tv~Y,|7v-  :v5V8y- ¿UghW6aQ-zP.%]Q?O.*m?-rie}膘 I2JaĞ{?l{JI%/GMZKXj!ىitU6.$K"j *&ML_Z61{ soDn3j AEٶ44qE48R}~ g:F@"FJ!eD,wN+t(N$sCEɦm j >`fFHINtUئ|&qp rKnLLixG?[㾜^Nj(Vvceu)lƳwc)a^˥L_hUL˿ B #U-WL*{_?6hPt L /‘"pl>}j薺踵,Ṝb}K _g,Fқ^A!*eNyя^;a* t)~Ib&023*2z{[39nW0 X2e~Dž0-C@KDazH擅[i ~#1#B^{t34%*H'nސa!n I[r s6>oHX ^x 1憍qPz7?{MIʃ 4-RF9 0O;?Lk13mӛ4s/T ;ؗZiߢkc{\ve%&eHUN&ġS>J& z0Ͻ-Q!2 Ul6571 \jQ ORFLRV=(bc8.Al<}lqEt Pg3ɎP֙+zuzLQda>ר}ʸMOPJ]!˛ + _X,6V1ܥV(Tye$ɠ8]T>qIu!)^0N6kzаtX=? W,_Oz&u^uxM7aKJJuR+Q$}KŀXR|S+jD~1l̋$]|46qKLQ,.Qv%S@V`Av[5)_Y1Fh->mƅW=23j)HSG}M-|yc0{dʯykޝ&by~̫x?Ev2kIK.G gA{`?t"N *tR>TEyL=IXfQX-ҭ5E a!/s6LZt^u?[/3f$B{S+ ɰgCqinmB"-N=T2f:u$ɯ^vKwzѠ{3q^sL.}yqeW$1vNDI1j֕gDWI9h8)6  .) )f7aQWoBQt*%I',WF@v6PCs}X씸0 Γ5[2J k^3deGEcH]GިZ%},c܀ph(c,^PgJ l\ؾ {="]z/]Jr `3}mž\bQS3gv\ǶB<w?'Mo .F&v,8N^4m7[ScSR;-; be٠TRAv(R7\l"J$vU^5_!JKl_2wt!50&H;d `5hwucjᠯx[Xzs܌qz>\2I`('aѵ|&\3u1RQFM @|DdR6U{^nIo$mGMv[ADOw'J}'!DlC%,;g(e%bȚ> vxxyYH(")5MAJ4б(:ѸYQb{ E^HlzO`nf á=j197wrFt|±5f2jIØ_\"ٺ }Gmw~~˶) ؋j:F2h7( (Jw0 ‘z(gM&PV.U D:mgܐ4`j<>dQ>Kv/g"-)vnmE\<wVoislԅc(qɉ}QJwYd2 CT7x=TtAH55p17Qajg# =flW?ҷu [ݫc[>A3Н3I?ObAZC24J^vs$!ե%g;~dI|ŒۮؗAH"H":.b;50KBK_h ;UM(Q1~rd-fZ!j+R$53y7ź-H5g`ئi2@proK)V,{ĚG)`0荧42&̠/[}{ZZѡہm]?RiDzGU9={Cf0ùo{,'8e,H姚hRa1[c-Ht:py;V*Lbxy4mL`om2*/CAQ[_4 T./ץ2{Θ>%Ji@܄W{ ~~^$\zE(%2 pDH ^a}7ˤ;EP^0vx۔9TIz!Rd@rf/x=ז8%` ,9ݽ\#_(*f?mPٱ'r0}yQ3P[7KТd7XSh:տ1bǂ필sg …eSSw)՗,$ 5?`\r_ڨ*Ke` U &Pf'ǫ>JJsS*-ld+g-]775a ҒQj@9W\ϤAyZ޵HHltE3_$8\7s4Ej\KNT@xNc^ź `d))g` 4' ?(6bpQ̓P"jBV5^rӆÛ {ƘZÉ3+Лa[ OK3$}) @>'%Y"?&4U9[)tW[iP?@hlXԣ)ۋf+jNsU7T/YqWB'qNrQ&9T|jN8:E]2\Hk- Esg=<=b#MŢ!FAwW0*G+$.~lA&cMhdFwYG|Sэ`hXX hq:y`wzZ6̭32'^3 䪴VEXHJEml`,Vl`N]Z0JuT(h8N^F&-̨7bVs%)RWՓ&lkkŬ8:tvgJݴ 4ĵ|r Hս$6@ҢдģbG!4pk֜q?e`ey㚆rH!ݸƮ|1\99R}(7)7%jT=FN֠ey#ck֠xfoɗR#/O=Iec8ghj^D˅kqr"z}W4qt~w]T *3 Nq+b퀮*)C[%ThFx$=g+;TE 3Ӯja;?ˬ?{M;.m,` 1L4= =OmF|nN84(m{YE: xD+\)Eo[{A=a`Qv,Fhܚ3Ӧ1(\Ms4JX{D83ˍý}d̎ .3(,ƦWs5Os[,jN{yb+W/u;7?:"ol<`#}S X0 3RVQgqh~~)ɮuEp55QRn|"wDې:py4I^@̈́޻~ 7'}IG^;;Njlsp<~{8S&V+bgg!|p'b>)m.iĚ4$"7ؓ"a_7 ;=\Y,k B>S}l&wsUJrm~Zn$ךUl %G g۲T3T;қ08G-Cox2jW ]資V'ɰ.*]ۥuʩFu;x!)WV+ 5 )izf |0N,,>m'J衵)4F 1z _>MD:r\l6QY}a<==aOT%jgTm&FO;U,(X49F̦LhĢ eV]wj,h9xy_~l^ľ( 7$ 3ik_z$k7}EJ/JdAgv!JT+YHKZ6#GB#Z0ÓGdqAWV߿91XZn r,〸#QOp'\T8"|_gQYtlFJgD¶^ӧ$;]3 ʠ7qW:q~ƸZE᜖4N-Jkwx7 r%wqZ\r=gf͉6e:sadDʫȡZ)l_MI0bqp$pr:.B2unx3Pyޡ |p֊=Ĉ W;y//.h'M̖zخQs7^3E&/]rW"|tLXSD2)7gGgQxbZBڂ%rCR+Aiz6cr2:!6|U@%ۀ d̬i)ghD$H\8bp xubvH򸣡MpsѤL]D(Y4YHgO7 VbuƳ Z_F3 őԴƈE79惌̏ܵM%ӵ>d@GjZ76sHK;V^d{Ӎ@,)4]$6(%bp?*M|Vq)kBqHXc6s%O>.G(t+! A4Jv0:,5^_ivJaal%0~0!#*FcNp!t\Y(t C5 BE5X7$ORN556cRAUō  4XϬ#o($xn+4+[;;_R2)vW\-oWZix}P&2}xP3! 6.Ȉ^9BO=-22/ЂŸ(5HH48=DDL~Kr=J#Zv$D+6!yGEFe<Ir޾JBնPWB Jru'g%;Fso|YJ nڇ9o֓?>A?aA-ȳ=0HD%74/=o(ڷ+pSyEt$sиЕ %`mlQowrC@Ql^yȔ2+Gygܐݷ 4Gba.ZnT`!Rܱق.0;t4 S*Y?4<94:>_p $~㈾ˀȣ$M_:q Am\:(1;ٙk%V>mHS?$rz֋LxKNZ2[`d} ~; EӢ, eWeB5 "kHKS$>!7 s-ZIPDpu3]H?K8.RЂWi'Wq>b?֔#[0Hhm~r !Քf؈3'4*NE4䁪 a=DE`1:1v {et8o\w_K7V3LdOO NNuqM}G_AZ '? D_ub< Hm>R4of;=iә[;\ϓI}aƲ yKSScj$әzL-{t΀Ll.fyŘV?,;V(3Ru! IH6L&̳!Y@"3pZ? rAna܈Ĝ%4%).QGAm5[Sx&"ˆHZ"ΖMӖ~?aG^bOz " |rJdeal0CR(ROWa֣0Ķ k<5ބA,ۗ A`),|mGScI ͼ#VfW%2; utX4H\Q*<ӡ#-|Zn<ǶaDByW-Դ0:τīnPrOc=WlB-R59 Gڵ>NAX<.{A'oLWTh $E'/h ^~h֤]ǾnKEIgyqgkfG5cLdc8i48 ΆY&$M]8l;9ec4!cKRiwMQggs=ik{g:*I>5 ֳ+.K DUչ~DrXf闇ԳaZ8`& P;(`ie֥{ӡYrY$,f2ChQOBzU|~{- A3vZ3`lp] ~@a!>ψ]oo_:)': Mlg>ֿ7KNrx=g΄J%ƒh5 .ZZHimH+;h̊u^a;Bt0 sƜen-*^5$ %gC[H-~O%r亵؋ZXh4[\` uҹNx'&?ZRZ$L ǜbK2Xa Z7)G\G_ +ݜq'4|)}׾ocbUew)7=~9bK;͝0,'-QpVde?7u-ӑe  Byev`ܨa*勆ј*> s*"&YzŏP# Ore I L +bd\5*!e %%cDCH%C$./.V8~Mvļ2B;|% yP@ta{u>Ā3~ϧدL,/%*N_Y .O"gyLRZ'"r(kh3xa@wKKrs9 _jBGlR[}đoiSOD*~d6?y7ۣ{i5 z \iJs3TK+2x[QBIS.@I]M;L`d Ͳy-#+BfH`5  g䷜ۘ;-[x3Wy],v>B e7`ӏ\AUȤ :;0ԚtDb_Y>^!V}j _xVaHR݊4@Dg>ܹZAhI!~4b db,ük&~U,>!2 E/T3W:9⨼i5#<muօ0B&_W_nCVDTф& r\U3Ad[sXh@H^k/l%|7hl~ΕQ*(JC@݆>DzSOgw "VoIY/0 &:`N8 _$C Ŵg{6(ÈۍGQ评lQ"dNRQKMր\jx1\f"~JPd4߈^-JmW UZ<)yn@P+nΫ[ך{/NGal_2L0:fE lG$-uʮ[ͬ'JgpKR~YsLcϊ676U 8YC!h̳Ҵ-*n *zQ7ө 9)A=Œ|bJђ6f3|P=-ر6,JPq߉ˈl Y)&ԱQ|a11`  f?' #ZXBŭ+6ڏ sReܘGoR<^uhG{{5!p2:$|k,7/X_,uuC+ ]3|B|V+YFP4 \L/Lb^})\oG}О1/vew†Im*Ywˋnxg|p&v`4^g|w$baOMoorfpPm|lWqu8{(אc0?c;=.>>Zˮ?EѥVn^c!>RqC7@y]GDRczSB^˰JޮKWt4TK rςG&>= wKad;{LHcj r0kD*#{NxЃ{h'_&4W岱Q,#0!|gfF*ȒxqˮIQ3ߍ.5غ"Uk 72QPNS[Qȅ;JZC܍~_S}"Wy{Yn4#IA b й@*SEg\ƒ~PXJ~Je&|J~9ν ajS5+$Ql hLoǰ|O%ŨF,Ϳ@sf ^yr?)Be8N Db\ =BmUPf')ΠzP;=4X`iTՙ-̤Jo\u ᠹ.EBpD8"ȩ0^Q 䢉owľz80[rLZѐ3%: DŽ f:Ql v I,@w;oTӒih9{3f n=a6(=4cVv頪]oq@AOյC79y$õ"Jvߣ(,>{Dɔ])x. Hv״4Ck2;TtY k:xKG\2G>ԔUoiA adH`Gpe^".RHសs|$k~6Ĝ4`1m,^sj \#"Z&&.D؋7$no/up9~GviܾQ)|EH$uW5$/$tk)|n8sQ_I8˶obsbIp|b룤~%6 H K(<\f"5IVҦ^Xe lqw)<_14~e: bL 턏KhƼaS%W U8xp-.B|C!!z:BD*Љ*/FO'c6Zo~os/πU :jF]ҰNA=UM+!RE8኎魏X;W:| ʈN R ޗ>nB?3ybѕM!" 5۱$`@VK.q"s'IHoGxY.!| ~W ܸ{q'M2`920lLe d3qj<$/OkkL.FUx G.k 1 x q<wkj@ƕ_ǧ"K0XtgM;QQi4ز&W;\uFs Jދ[ \J1n XXl *P3PD#P ^gadJ*;gX:T ѤoZcN'&c5Uv/u"%,+1Z ۻZW ab?XyEW7-aNs2sIݎ`qW O7`p?8ZHT"u .S'1H9;[# "SHê\9{4WEM+Ua:v`%/eқ N>q(wU'Tjxi߰}}0c$5\bq[;i"FkHq/;ƛgs(LnvƬ$N[ފfppcvƽ8)pBI^|uX(U{azDMP.OMfSX= Nbj9xŸ]c3&9WKr>Zhxݫ@¼WcSo뙣a>uH#.B&ݑ~:DΔ1ծZORbCmg/%Ne?*Az1ELm{j )Uwhēw3 D\daJ#dAD"ڮGZ!}!9+a-Ln%ce8ڵ?~37$?Z<B -X h 7_,`V S)K4;$%@ Du8 xB7a^pnt*=PM'(#~^ï2-0GDlCy|QClUg 瓐{D҈(EAu)՞7_WNX #&O&ݽU6¯7e @ p?ЎՖg:녛wYgW|rɫkx*Qe}*}3Sб bEq3Eh+|{VS|]RZh=ӂ'X8ڦ7?;71?,_eYjӤ|Zo[c5Q d9?:E!5rålu!tRUx e]Q?w >WԹsݜԗ]Zu;7D̽GrpG"Ә3L3I*ʿY2qg0/0C kdD=G3CI5&g긬}u}a!RX/}ZשyZ-,bIԤCoyU uZJSqKL%VD_D 8/fdvy`fOzHz̀k\Sv  ]#mHo9+$ r8bZ!P0>d X4-)eoySvća bcFP[%a~T̤Go@1'j6K VDI81Kwm~I9/oaX'滐 NÓ ͜Bu]b"ԫm{W0dQGt,gu$+'`{UFx;bCO!0ϕ Oaі7^ 1dX)1@I"Q?9XA%h@/JE-Q%Yc AN +oj9ByiMZ1xazB_; 9Ry,/h>ʵ-7h ,Ot@袠mG(3d7llD^qSg_QlsUĦ?47ǪHrNΓp7Bf0\y_1n*>c4zBPF M!p,4սqjW×bM29[J7>.~}PD(sy9"98@`nKC;wgLz[d Ίf%Bpd_!vN:Ҷ=!'u}?wTsQt@ [x}NHi9Dm @=/6t Q.f@Iiu]:9|Շ@Bvw$w=䚄OLխ2@axm6 xF63C8*Æh 8T:KR:S7:;Yo661D6λԇ2[D/VZ0ʄQ3[.3,4*_DFgƚu| 6sw#g:t `jL]ퟆ\USVzsKZ}r!^l:d雖$;EM [~ufѫY Џ vq ::st&6W"zAvh2do#>lUHe[)_4&?턴mdT瓸_"u$-`JF=wg^`ܙt|n >G C""H[7a(3VsV)0j7cd&?/?>_#s)ZX|K"Ry$]` |y?aG&2~Ea^%EH̏ܯU 疦J@+|S ðM۩g/@ ѪNZ؁z%#-#^3tKȒ/<0(y8NCLXW@e T\ YZ4Wg)ݒzh!`E\nq1yTKF:K%(?瀇M6]ƫK o\+~mYJmO8R -=!zUw8_tPRc4V6g~iO2I]5<1عvV -!gԀa:fš {&]RN E ½Fc•]Fܤ~n6-]GDH b g3_ z$xo"ZBLĪv"I ]Wkc ЍbwyKIT(k1GD(0'({z`s_ [I&2t}J-^`63 JX YMc*%Xx%-FJ]~uPVR?_91Ɉ^)IR:Œ_zh-VXzbx|m2@]ɕ%h݈O,] u#ߑ!ﱱV,xN{R@B.wr)RNl^٪i>UXI + I#r rnqf U}?Nez/ĸ^QE?j.;e~*bcցe/4O,L7a;zK1DZ@; r$È:[aݟb8}j&fxW3#33HW_g 7$;;vwW#s[Ϩr ؒ-j FL_ w;2&R^f|Wo?eWwQرr/Sz mB~S% 2666dNNyf=Ǧze5%/|&=WO;TW ;UπxSZZԗ w/[ڻy0Cg8ݒ@Ҏ@:FG-Oy(۪mȏt.KAF繎G:c#1njB}|L:`b 0/%~;܄W[ĭXGp"F9F Ǫ$4Sګ }/4T,› ,MPͲZN뀙Η쥡.B=}VۻmYy~[NNivmiQ?A@m239[@"I3l:G#ymIlńpv"A^lS$U1nGqOd 97_,zF޳ȝ/D=ddtWߍiwj-˨hKڂ|qG(͓IWn **gd[畆]Au. goufOxFhŘffv7X\I#UC'dРrS$U|DW`Y466p;ǩƆfydaZJ)0пyaR &IDi@OK8\V:ƌKIU c~R `*Nճ\=y^J߫T.ôGӏIĿA.C%tnR6C@0&D= p ^pvH.~YGFm˸u >ѭU RX~<O15 ɦB[ ݸh.WiC9j=.ѭ~u$ @fCY/}A'g8$\FD4^;:Wshҝ5tS&0ht83isC8$4eڊfO?=~uvh2G*] LBaW^Imm5mxWh>gPna'YzԂJF1dDьDRU11'\ʻ&{xn}L2 de,% ü<· zpeg3X`\a$cHm / Dy΍q\8EǴ =FT50׃kGX0:o h؟_ɤj$!*ʀdKP8zyt1kx_1wU9M^<@bO=#X<un;)!-cKcrSkW]U& 28BF>K^-vƈ%`} 4Wy-K.yO7z%):*?)/P YV UXg*Q7~1ߊ}-`P6fwئO(A8RyR_|铰 e~#5nuZ0{yUix?q4=!C.ȨXO$ܚ}P`ۺ3N q. # mi o'KkPhźN]dR'1gd@;vnOKJw+FQ yL~3Vd=EUHh^)!NXoep56yV=CsA1DUz['2澛m |[O%㇗8P}C  Yȋix=gJy c!+7cb|bzIkG+fov.&mKuD鍈)fQ =lT~GO?s+ ŭ[K.6/h鄗㨝߳)8؜]xqY˓k@ހY#j#?Nm&WJgB<Ђ+uxR)+,"vrH:麟cheJ\$~mUqĻssBug&6:͛걜ܓ5s@b"OMW6`*%TrnKsCw1.^:`,V$iD*p%z9. C:,T?@fSum`THG3U9ō,(SSR_ i-yX+[@?@ H ܷ/GD+9,ɕdA`$kPvrumOZ%f0c.Wa8D g˖*g'nc{ZfeE_۠5"y.-Q2Xvtĝ]z" ,\`PaŕeN* w}'%Bb?Q)h{cMꆮwOځ>Q hgȚފeF8h\ qx51͸ITpEbKT5ew!w4L^R<Ʒ_W9cv wO'vlb3EHI}٬k3Mc8)KHmeeRӼzÆ߳БyB0"'+3gU玳goQD;<8IG(Tn\Y !z4Տ^וV~RBَ|ʭX0xRl4_vy,!IE\ڼodPW„$2#$w ɢkڮ(÷Qk*1=oL{oVX_ֶJuI̝#S)+Yw gYn95IJNQ0A4չZv1k"CZ%Ew(E5+-rXe뗠t8a9dIu9B5 Wn97³{:hIRU bIg/CNuBCH  g5MYp'ה4]w%[r?qNRi~ ~Neo~{/l$RT7&Qg&02%'w1g/V/6߃(,ܑWfnbؕ3O|5F`F4&џD o68'D (\8 )B{Y=4y@$3CsLI*IsFVwcf+r3Mn;qGsV*=ncq )0RL=R QDGF!yw0*j ^Klogm|9m7)& S6AOYwn1P?@28=t /,9,sܪhLy=j'z*_ǒ:޲FI:,d',ATF̈`J:jy8T'O+Y.1tk`.=DP ߉a)/8iM('R=9V]F>Ћ:@)Il华{@u t3<ǼLY]#[܃Z;9[xi\L{hF TIx!{!~(1=a5|jiFrp0ojILչ́{:VuW|;6i%=f$xe Bl$$N;=?Nz $NNe=GqOiBE5[b Չ) 4H:鳤T3zL8^+FG&-bn\⦀w ?'<׈nʆЎ5c&%">]_p+y#Lǝ؋κgQat QtLV]ݻky2U'i=E$#Z`O~?ЩeJe¨ZKXI?@865H.(ZD/Xw4\?eF˕e-_W>u<$ |Xrw!愌41l_9WY(!M-Kzl Ĺ9MfF,6#S,im ^ˆTOmY4>G` , 43$ ݕ`>~e> 9PZK .T H&Pn3wŤ ;Á ׮AuWH S9`?q=BMV爔OeQ2= l?{+ϋ^4=ۿ%ID LAc_Ae}o3 ^` -*B|?P+z E&H6!j[앲=.y$D_׷]+g7_8;!]haj^ٕؒHh[ܤ{IߕN [%#$rebJ+#h !p!/a\QSUy7I7 +]A~a\Ps`mXSL nӖ+tgXOK^ օYQT߾i"$g;mPI`&誣SqHV'\G]4\6Rz%`$f3.u[p̴$}!6'17Wќaxi"F52(@LdoِlDd=άN> V8vMe/koϊtc/@(VkX%wuK a?'MM9S8OV*d,ҍGkAi;FTc-ៜHMN-)`,3JhT5AG, gl ,?v؜a)xB/LAID->B0B(6qR;FiQv0Ԧai$Œ7bL%b0~pæ$\#NTQ4,H;dF&(Ң2a mbT\׋M׻cEW#6MCb)EYI|ĀA-<;!pBfפ='H6S{kn<&*"P_̔_Md?1qTzLJh̝o|='х>X#f jbY֠:$YqdR,gl!{> #uFSA ot" gnm?wΟ~ĥ&Gk۷E1AiP=1!Oăʕ1kL^- " \E{B!=6'Vc(>%ħMxU0F]l-ۮL&d# Ÿ67mV+,'A%BG%'>03ឱKdaԻ#뷯UK_8q3ov.mSzn9[LLw ï4%T;{đfS<:8Soj6k86ܹ_ VU "#u%)lpر5 |4r "0g!7ƕ>v,@S[mvQ=Kǜϑ'w鿎, ^kZC %h$ƏhQ92`zų]u4Lc,|߈ CiD P>St|;l.V=@x@-"19;k4 $^ y~)@TLX :=bNc!0i+dR8X-Uq|^9O̟ $, rNj_*-g:2}& !9{H Q샤B3M`+mUUp/'a|ji˒VK`؆l_ ʀ8?vկ]IW;yMbf" Qiy[}rw&0>=XަWݒQ2P pe.%Ts[6g[ VGk>t+6`s̬wмɾ *j"g 6zaBWDȀ -8Y>7&Cl=[+1J^ UY r9c۴#% !rTr?əGfv4Z#T%/ /OQ!nPF-}gV BP_d]D6,㺃<5z9w7DC[feٱ=Ijq ,Gr'_yR)?+;"qt)Uf^[<}PB\4&Z x||yksRr-uU9>J}GR`9zA [gr,eM'V!k}Gf=M}SߺZSV*7THDPQglF_&{₶ޠ1Vz)ۜSCE7LХ׿mlF",wdM&v_! QU9MOu,⇬ +mi8Zr|Zk#^~ì5bl@ Jr,cHKy[YpDsΔO<[fb[)LtM;;o3Ғ=!:c-=YT.F Npf<ܝ ʅ!GquV]N[C )ɾ.(Uy_QOAFat(+< Mk~$O,RX쭳Snp%6yW %wL`?>V Sӹ+ 0kn)F#챸R `Ӥ%Gj_ i nQI}vW,qJ&CikjU زj`c R7+9w XB /3ovF 3ʤEjcEXʼ_ăcoюztdh z`.t1jKvB*\.x.}Qm}=+=#X9 B] ,In+Uih|yoAwHxhU:W WUm3iSkDL6A@tmOU~*ZYA!էU8M8JĮҕߌi¿y㠕ga)[Q۳R:^$ѼDK"ѐ\CF\!F-}`K0fC/;o_ .$pz)Sd;fûAVب2''rZ׽VHdLmli:S&$MV.x;v*\aMxUu/h!jS0D࠺16֏tQoTSÂd6+,q GvVSBOpy.VuCT)%O37~II_eYn>%MOlĎ)o, ctg&CXG1Zϖ<Dž)O52%7xtE?%Ɖ0.gߐj`ϗ<8H N?u==6W0A.w;o0 b\wtW܉k 5s X&~;,{wȐk^А]Y늁]q*Ĝ:vwEK(H]a`r eFmF=$ mWpq*37 ÔCzQk`ߍºXH4NbJludb˞(Eu1ѿ+ӡx]etj!rUS#kd܎Q@QP) A 0qCBeڰ1ER%!9F=^t43 )m8$|% dK3BL'& %PV 9R ̆Õ(Rw$K25 >lͧ2x1֫<9bjjC GMu^&1[y4F9+II&w/7]C,18s<3޵f%"K_ڹG$!)].hgoJU+: )-Y_! [=rǰG% vj))h: {<'G_w/,NU^Y®~+riF6QZ]Fտ eIH Oq/mUnAs3 mu3PL ax#K_?3@lL$YhnF Wx_DK<쯵;>J- ǚخҚ`>f63JtUkrxhvG'N^AXq0|[;vE֢IG|Z[a;%\QIJމ>72nYQRHFӔ'Pk VP1ux76%LaƜ;4(]UW@1W_u=*Yi8xBDǤn -RQC~VD~szp զۖmF0@Ƀ;on|o ?vbNo>1x#j7hZdu-c.RʼiBERڷy}).m U Z 1<=hz3? f"S|8? m^91q'E$kxH׆(]Bj<+m c>ZӊTāGSI 2qhჼRtuDO3REV]KmkEf<̑ptor0?i=2#ydu3ˣf:߉GIjȏrlՑ`"50ַ X:p˺8@{sNoh|GyϠx|MypXYu&D?ԑ^9];I> l4QmxtI5?!ɧ )4>R8C& Fyh 1%! .:i jf+¨+ r/ks{t3"'c{s81#J/d׽M}:y1kj2-uЁG3Ps=Wwטx}1go[vUm(+3U(JEFꄯwFF8#/cX@W;@4ƸY4h3N ML쮧9%ti*bT:Đa(c%%htQ&rIo,+KQk:TWl ?`>"$܀[SY_ziEJ#>p\N|cQXkr-wJk9b!8_y{/!|3 q [Z2cxUQJ]|ѭ"q~F"mb0˦d^"%g>DoF@14T_xj=lPXtcF䑇Uʘ"p*$J-X&NU%}eSSE= /Yn?ʳ>7 RauJ][L-©LU'+ubJ5֑%_Ti?Crw>O18U04QEl5B߀\8ȅ;Wa̾x7ħ͂q_LQoHaɩFӲ=08f.EZ̯bx\b)wcoi>i܁+D1u} -@%u2Z~D4y*&ݻݼxhSi RuR15}9o  ~ep>*LK S׸ℊg?8xĎ9$mQR{mLzKR: {POwC4o!,+ y^kh3b#˅ZIi-k 2Q9tJmR~ zl#CP6֯-"hhhxS% /Ύ@(|iTTg#Ib=#5!\ H,8GV0[$v=#r Nn^եt0ٜKLQ>3Ʋ(os Fu,S(D`p?5}O|3/±}G>1w\o3Oq\H~؜'9=&Ĭq'_?yr\l9P_̄Mo$e}\ V@暴C))xBz^גbC!=+tq\ܣ Hxa ܾ5EpHZ5ն ;ΜE4<6E|6M5F$r|0Ty&VaFxTCrJ]B@i(Rg Nxi)vFD2X{jDxD:\&*DIZeܮg붬|7b>yvvy*tCw>z&o-T9 ]V۹vl ưrȶ6ФDVl#މx"),JL[<BYsq|۾o c(E\ts\VƲ_:{T K9YhA{2h}6lX<<@/`X f .cDD l Ցf ٭TY`0IaA8b ,U6|wQDiN:~1G(=`A' sAv6'3e/b} ,uGi~c'\fUֽ@O OC=y}@+H#[ S%7U< GB啙7lLMemTQ[n5XyKCCyޞC\U벚-/`Ll⑀)w슐Eh DQ\L>HM[ ߊ2nj(8gWhq3z.4*Kx77 ͆E&iz[`3&?BWȤZW{Tri^ ˙>3*9z=d ó&VE1,x j|8hڡP29%ӍKL6(2kV%3@ | |ւ {ac @b7N.#(P&#TT8ώDNojzQ*tAfc)%hwMiu?/u?AKߚB9GF,}tTw(ETSS(ivz'.tE-N dO XƯeK6Nf$O77#92H(]bo01FPlh)g)xA^YǞ̽JMtl7G'$f~\e C_f0'kSM׹lE.B-B, I;FU%bPo'v~d5 bTivj xC[4L. 6:FvJ~ z8 ?}!;>^~<_M)z ;wշF$2wbD QLwF`sU= `yNdگj %Uy)qdkXnZzub܍o&v FEbzVO]T>;@= weuO翞8"[$7}uѼ PHW2ftFԚ0NQ(b|S˟jnͷޚUj; woP_XWx_ tÀ=jk+Cʄ'eQt{`SZ ̧>ȸpxcPp%يYoUR33J܄y^D"ňS>e+E?OP@5Tjp @ is9岰#yᳮ ۦ)myEx OS)ҼLj;ʽfnc M-;c£TrK-&[J) [ r%3R'5K*q!xW# }ksn7n`$hlN\HKEf$hgFɌEȦ ɨu Bk‘dB1|,+M_ʴ#Qנ{0=1ӫVoK(=X׷1WXi>x Skms94GK#;89CZ;AN2Q^eDnӤVhtsٻX%|(@iKەO\9S9aVN ~EJQIv<ӁrɚtlzO |Ki6EzP-Gՙ+5J?(Jіtx"ĄE@4trg'0‚l_9g> CN%>s9dxJd rXgx1-%J4H'1]oV18?k\q+~zOa50pT+Њ?|2EKu(FLs 2Lu)SH*8' 04-NRfɿ!&ua1wSeT'pBedVlt?ݩۥ}R9+ERM%w t,h`qx2ztKIF :ėr(vpE$&_1Y $zX抮 ch\yw񛑎'N36)ja)l$;r Ѳ0N|PWk]O-7@G@ x#b0ZnȘ8_;KNv咶#5iJ|"W-p[-˖,Iި] $6kS7XwČ6zH'IavGN'q6lQuE&yNT>@a|6 C&&zÇ5Ծez7",.uaL8jHYuhѕ,mΌB,8.ȭf| ,65# ]^],gv]$*3X)𯅍x\)K*9SyZw?|(Cq1kg4WT}[O)w;its_- ذ~MHw=xP-m5?$iX5S)ZkW[yƢ=Itv&BN Z &BU^FPkau TZxCv.:}8!agp%M 1%8 O?K9D.QT&n) H_zS#vEvgY l`߉ȨT (" ^ (`@8b>8TFI`8i\w $g%~mm6T NޙX=跞cB)_BowȞPphV3@-_][k|Y zsVk:͇.>ʃvUmIn5kpY `Uf `!䒴ux&ȝKTPbʈ.،$ &r5|'dhKf#:H d\W+:B:9"3)+Obݙ$쇖#l@N7uL2ʁJ.H'tQe&RԦvU;W~|ߋxY(G˫Q}VM![ܤyCel 8HaptK=UjU,c-ƻn~: W[E2i%( H)\zt7N Y'Sئ6كl9) 󊆶` ٝثn Q"OU@}F49 gzB|:[ذ.@{QnXJ!؉6Bs!H_i#/r,wc#5\okfO`2D$ C:*,unDP%q*is'LڧC4A3rCL1ĞZqOy.TaǓ8_n J͘'0Mj&BP59z+=&u !r#ĕA@lc 壶X'"Dz}%6=]lJOx:n! ćO O{kͰ AYv4@cY~io]:x&R8Hf9`t[H'`gw5]*\n7O^obTno9ᚈl#2AsV\~`RXϼL~Ucޖ@ M6\ǐ/SIc'&{uli"~әKuX&VR =zq |CoX}A}ck.{%sr`]2;I|cWAA01[Qgn`3oG;nq ٿ Wm/Q vb@"ֿs[DQ#O7K$M~Sir?f79^@.iV#Tc|Ҧ0yQ&S֗t›$$h1u|oB#9 r/涃l/pyv%G:g8*D5[;q &^B)_H[dډ})=o.6`~V'`.ָBrNvx$s[5J|ǣ\H,AS1{K"f},ݫkq?aZ^x545M9#ץq<#:Xp6C3Sl9.09HosO̧) LnoUVa吠>OBIIȆI$%FMpF@頛'-EWţ}P\ѢQ`XO@LwR-/&@GL2C,c;C~. pPNP'l(_E*j8&^WR2D4=ymX8'_)=FW×c]lPo  ' qX]di|wӂgz]rhV,hr,=;`iluA&61vtX-`˳y,N  x[lPG1?%xJ|\T#E ߴ`PvvxԺRF{·6ښE4y%z)1xz]]CWpfKa'L(YyhՔ ܁.HS6PtW s] ˵@2dXhV^eNnB#`7-w1:aj+„UQ}-K&zw9%8Mܝ*XCRϯ"v;pvqgU!vTQOnki4dxx(i9s]w'&JTzBxڢ{PZ4+K B=@!^LXA }U,d1\G\u&63?*'!ǢR / $xZ4 ϸy̕\_$?^vCfk/xj~3ҫ BL -H5_kqǭ[RqUWY)tI^8ҋD-S+Ut8:*fcθoJp ;DQ;С&GI|B:U GRsBy<:<-`fF*gm5RBw)"2ulAbԾo&#݇.э Z{9+]] xLw9ůuΥSi[*X]/ _/ZLjBXgzyZ f5YweUǢ>SR)7  ~' Hve%l佉y$0 ~^'V+e"]N@˽o1_ 4 &!|^z$ ]-zmB?שnG4܅$Z*ŷ a 53P/k&9))?H`]HD Ӷ5%ag"U/Sx+AcIT@}ex/>jEx\;lHUx\vG˦*EV[\ƉNjv8x{2]^dNP [vێ_>O~b zUe xTWc[ w RevD@ kFR ƩJ*&hNk3\y=x; ̿!7~'&Q%F\ .)֍k*5/B {R30:gMTܢHJ53e@ :l TE? lE=P!'P.f1/͠ʺSn4WMB6ɸޗ#<6^. <ʖ] z߾*K^Ks?WBk`jۍ3|oTt ` ](VQth,_gXƮ<ʹod-ރq%ЄnCl[ ~!ħF䰺uyOIIjd1-VɮR4KT@k\ӈ:k8΄,:R*+JkOYxjW(2J95޼فFDBΣn&ctS#:gOl*Gxg5zbGe"1b"?Y 8Xvp/{#SK:oٔp˖P֜1F)i&g&Y1U\μlKZ۲pm;Qa@Hk*#3 &U&_i_"3?3vTJ9lDN PpZ987^X ?)jz8L~Z9eSkc¯=-̞o}Zj0͉=M?T"7D̽-cHcҔj%*@Y]mZmC#O/jG.d70NqxG<+Ԧhk8G֫\*Q><FhT-'_@`^kN=Ҿ#g!wtq-k*]E^51{AOwZ tiڤxWPD[:儯Ga2 U ܚ["|\6lkm;&%>2jcDH24y{hAӡ;F*  N}"!Dkkޗ#ڎ?3әP-ΩVuk!9̩Pgiv%og|xĪDdX`aG-ri<-ѯ2_#6/=cgZF0T(zfb ?{:۸$8Jgt9-/(M BHMϣZ_"en:;=,T.v; *1^ hGdxuK>I='{UKW |έ~EƠaMͯ֊1ӨkW2~-<^L6s=YgajsZg:?JNofs*65˼t m6IKp&7GX D C ܓ?ôښuv4)euqZIEt"CK8V%lDSBf34 JX A)Po8^۳ee."lΜ灏N[%Y-sT,/ZB|bpyJG,qlK`ΔQdL ܜF(~$^(P'hM^*E~4\vylp]'+ Eye9mtӫAO0zrG 0Fgz^]̇+v/:jEexS4Gt¯t7$H! X@zD|К1ُnvN Ƚ|ݿ\}N܎9a&5R| LǍ -AϺ2 ro2b-fD =W e~uc嬕EXm]L?Ce/90WIf׋3qob4!Yڷ_@0 ?1nqj88=,+?9-U{7PJoS^!IRl2x,xǚB ۬bbZY!|'CBhnaxkx]M2jx"Wb(,-z:}ء=TڌiKP qq)%Dv [V4< M;͌y>qYhFrWyU0Z|:Σ.*~f_7[WPm(|]hı%>Nn;0x*9on Ө,feF5iz諧+mЪ"ם(Zq^H%8؝/9g[L !ШjdS(rdZ,C7urFg~\=s:&-G{tߨj| 5AZU!z,־ě\IPMKJzErEnj 0d~bshk@5&\]ťS-Rs6CLw=3i+#Mb} uƙW:!Wj2Gw宦R߮3;%(u]v![A::R(U=[M[)Ц9ȃ%Zw)X}[$ `LɍbkY\8B&nih7Q̯|O1z.7b7XH 'w| 7&lݘ*tAl,VPAjE|6Ib߂dLP;UEw&n2>5?1EWv$4 lx5HG-wRMqe+;,f ֵek&gj~.jeChzץ 66Pݔ$.^djB.4U7^XОc{F$FXS6\̷dcXu`@sA^.Q62u|m1*:~f3N|DV򃍅DǢ/ȿs6ڣD*2q&HOSW²pfZZ9ۅg;5Bo'h=֙BB<hgYPAr%/`B1)C*vtH2hzWez$ei5.f[ZUE Ahi@ w,Կ_C\:݌OD /S8E[Q}4藙(٨x$w7>y-AY=xx:eJ$bR5nGe}BFd^9Ze @GLJhyL4H #þ?B,HU˦:`Bx9[XK66JO.ʩ"mE YOk_)⤂cP<"j~eAS yq;hsɢ*ijt=0'VRo*GҘBW< |cgz|I'E~(%ORު(_c]s9sH3h8 ׅ$g7 abXeQ52(Rޫa!g8kcJv/aq8UıLTՅ} ; *6ADL=ŸD lfm#b]@I0UK֧g/ S r=q(\h5Hpl \4onA'Yy*_ĎΟd6$42 6WN*0_dA ! \ȯ .ٹ-b{!)gKmkix{jEJ:/̸~om-&^ـ'zDAFBEͫ⯑Y(qh ݠ*Wj{bםT;#yV._0-JmWўO3ll`"-MSe"$= m`eboze7I94jo|n/a)#DJ< [mSeuϰ}:IjvR:RDm5M IHUtBթQDA:/eYq4rg?0mri&/4x:F,ڟU $q ]:2;I.b]:1A4CG$5~LFA*CvLS"2/)ēGq/F;s$6ौEФ!W0`?<|(miFf-g,[V]?M5DYF)c?Y9(WߑK蛓fUؤ &鶸:xu^8Gߝdϵt1Кp}1@QZbsʲwlQWu~)Gz{c%7ث02tx ɣf93k6dSi(94 %dҾ4RYZ؝v[@yV|a3'';D!iɹ` wBJ, p\,{1&eN8F۴utԨڻmv5%ދ#$`,3 54d )`_|WgBT;£+WS/BMkdȼ2Gr^ַږJcaLbhHfBS=jCVigi: !jtnĿvq$>]ߦ*o603 !pW\Z=˔ZgDDU0 \k\| Ŭw,G%0\RESMf4$*;|Hª_Alɧ["lzA3#ݶ݋웪vF޼6BQ^\࠿m 8EIFdRq@ɽCC[:ÒkŕM"(vNo'9C"Ӥ|B$~!)0j:N~*!h 2}rƸ_䩧jYHֻgZXlv c^~09L}}on]:Z^{)X$-ߣdRޙ f蘯.fJ{є#kyC} aZ 1>Hl gx ʹ*5dE McXKג~rNCջi6e/E վ-й-1O8F&˚䌾+# d?IٝE<#^c#;̥ImsTU&fl2;hgKpz3{ 6WF|u ꢈ|n"ٽlV&~($FIgۈ6zp]0931PNP ]<kwI]N+--d6TߒvgL_ bjVYK e&1~~JD;+٬VOo ;|B?<s_l3k/0& Mmh.E?ީkb-V%VFzWXI0 mw 3n4Q'[McE- o0bi_-hܕHP@^Ǭ:Z|]Sy/ kE;"w;qai5ؐ/QLL%sdg9Qέ~%8 sVeOa1V_dJAc/ӖAA,!]=4JdaaDP0O uu4RZsɵ=T\N-h8>u4}~õTOò>ٕWt7:~71f,c<֬-R&V@aMu:>K5A ge,#`F2xy1E[eK;HWiϟejrp.o@$c.,r^9h:n u8"r=27p}T[s-%Y'Ǹ0Q-i>DP0S!$9Fܼ}hq+Wlř y,иOhjjPIv;|n&՚^A'M"4!+n1nJ'gFIi6n uOF%h5|6w&7J ɧ .Ocմa~k-zEZ$;@B"y _?}Z*?pVb!wiT8`%mۆju5c[ޑ!ޭ;l]͜ [s3$FD(l|[,=QsخTDru $ ]*uOo-wAWmzu?mⴴ(1K9EW zxϊeQX@DiU)}}o rVsL~8$_ 3]"&khE|+U;} ;D@},ia(%"G5\"\2cJ &腼+ǣ̹!BƖ⿎+zB fYsoM~4,* i|+ͲX!5I2P<7DwB uuUQ6yvZU*>M9#ZK+*5Q0,Qrjr!]o /=o+6=1n6- R-T~1,][UU7hߤD'+52ֱl'XjkS?K nKU|g4|1O4!ğLwtK*)A-Mn\zsAJF`w,kF,ePZZ>uH8,o(.e+ڀc;޴kܕt/jH~Ƹ3mgg|!d r=MA7fLݬyFT{ى-[J^^v|j9!8ǀ8 ;+q:\h_bHmR2xsbc ml|_YfgSEj'G^0]J~q!jep`]k4G[>/y3R1VYS@,H_Q"R⏋Q?uU.,CqVL%,JKsu]l ?ar*4kڀih'+ `m\7Gu1s&$jdqQqlD}Td5j,g_9`~DppY!.|oub&Zl8=P a6ϓl# L 1Wf0lCXf9s ("Ss{Gqo^&dt苘"}a%?o_ m-1gb2/Xhijduڸ}"%9 2TW,K|D]᫜uO*eKzXp[d_),ZZTdcE]e U&?H\i{ݔ̵pl2>Г-T% _%H3D [NͼT_ [rǪMF qp%Y/wDŽh)\z)wl ?JgX3  |"Z$GS5=TVwIL+==!-+@+۳mh9,ӷ߾ ZnXD3ےܮC')g-ZQ@'p`{Ӊ"{Oa"( pVBg?6Hp?Һǹ甼*vo[!t"C CB>uzMۉSX·T5*SeY匃~<#.-U gjtthߔerUʆ)d?['z.v $W/r?T}n ޲BEq1pKy=|kLF*^ Ahjp˖oWY:xzIh-*caN 7ue6 t98G.h /!uJBr6S4V^ (`Ů"w}8Yt#\6 g)I#^j g+׆c{ݪκviP+=K8֊LuJIǏA7&7$k%NV=|E d*ql^fvd3*cY"(*<߷u%٦>ӊ\59￧>Q,Τʽ<=`GSE 'GmG\ً?yD,uL nueEHl 52M1[xh di4WyGÈs0`HthwE9y`;rqjGzL=02[`. H,vD9h?x#eEi?Cq(_ [n(~hѹp#bo 4p9%ra)-!ոǰ04 $iݵ6fvKƘ! XLv/ZZ0GfԪ!cwXve,>2J[*@N(d@BW[ /WjϪ鎴5@- t(; uNA'2O8}w^gd:J_2NP:{@m_ L ƨ&4kPW|o,cv(m@qcxUZAP<:OCED_9}s-g>VO7bUIu`koeGh7 1밐X͇ɯ/\(vsYNN^B4"x谅7 TGFqO 4T0'{,ػd!1^h{4'G!JbxEVdzlQD? ,8W5wŀ3'Iu/úMֶhFW.~ݙJv4F\mlElA'O6{}7)4$mc Ik܍y~Ϥ}ߧ䎺AY5~#mm Jз`ˠAςwbU#uȶp!wq]VaS IӒ6TKXt2Gv 2OφҺ-L]=g]G{,`;P]ʂop{MF|B5O-5 Gv,28jV+mfO5SO{V_ǾE{SLսR I4%8P,d"oߜBm^NRsgEǗ[NR- Ɛ~ߗd?16LiMJȐo Mx׻gFm³VPK݌ vUѸ:9 2"uv:Ɩ P\{~TZw^Dwx&)1x♿WyZ;=$ ]e _0.. v6E=7i :9-vѐ 1 -g>BLuAzߧ9Z7!Hk dCgoH68g語lQk"_" WwR4 dsj冡g[S:Y~Uo-Y}% *JPvSO"KΏ][K"?z_LqyW#`RQ-CÎnz[FIS>郩} 4;{ b@"*JYۃ?aa0Lw~( toXJʱ-Eq3_GX! q/](|D!Ǜ Wiɇ`k C<;D"׬;-EU ]xWIgwpacD٬zX#FAJ߄+ˆm_=~cA~p JwKER[g.ƪl{Xϭ6MM4c%4\GEO'2}qp#K45LZFQAKgU8N&(wfzE*8}8B y [\'|\B`z99ąXv磎!4!|_d)d3K IJ}릜Mϐ:x*ߞf}MW fLX7."e]x3my SSQ'G0?K`Nq{zѼ^EzɴC As!ZpRpWat;ۂR!n#*~S.uWp4`&oL`yg!-Px.GǪOl@i;K;f~i|;.I촜ôߗI|e:8" L0q}W7[3S3ډv+!'JYD4#ơ`J9wI3Gk!tԈRGlK2]('URL.j qUڷV[g1ԴL5SXJO^7̅_}5 z1dl@[d"ݍ:.: \sϗ}h 0)梻fDXV@qGvZCyOrySֳW'DK&Q읗h:24S?Fr;C6/%7ѩwG ר`A*()aZԲ?#Y}1XVlږwov}O״oOt$=x}dYOlh *jNlsG\Mf@}3Nŧ1ӶI Q1-φq韝پkS2%"Ϛ'ƙ 0p2$yJ~X}2^KSU+J,SZC78}sJ[UTa{6r}R[]:(i*yvj1 <?917zR>'ADM,T,se$դ`0(֖%[0z`#Uxt*d27a {.L';ƭ(n;wɐla2byʉtr|IY;gYVi qyVG_ 3rA݉i*+|Ƚ`)u&&W;)dkꐶst%x2^='De:*WKRd6z1_ZV&#z顅 %FCb5&YMF6MF\)tY+n#mrvՈ*:hA`5a~lcW1*&2߭ܲfMC hv D 4[!|  9W# ʴ](abo7dkg1y c^(gX"f("c2[I?m a7 ᑓiE®W zz8-Lb,_~)?1J(`s mBMgt?%V76Ո[:|یy*TP D7C2w?B]+}4;~@s'|ufkfBd?ZM9C0Di #O"f)`M~cEABunA5',;<Ƒby"AHқ\ D%׾tHnq~`cEܧײ<q6>0|Mkت~졁9M!C6{dNJ@Ϯ:JI1[R1z_"`ݟuRL A^lO72OٴA l|SƊ%(d1hS#Qsj$8z ="Y9Y١ pϘ4]dA?'Mlw #/4E3fEyʒ8C5u(=8ge k$%5hs$ם 9݌8.ל~)Iǣ>h5H5 .ZgV~YT"ggVHl>`k~t<ʧS;}(we>F-0QCf uE}ڂA2: 5w!+4H}5-iNM{[Rd*?{h6x+^jV MTzW2A@.7 GbJ6Ǭrl! Zy}Iù^dnv9E>d#K_q3ص]g˶4neHoҚHģ]~ION~ʽcn644ɋ@CjH1uG1!V[uSߏ:Lx% TR%N?>r%]zTz@`>U C/ܵ8@ڜJSVǗ3ZQ}F_#j%}jG߼\jH+c=I0hpc%;Y[Q )xy f M%0G6 oscNEMyWe52~;x-ً7_Hfpf|* 'je]b qzylQ(<)+UC*KΖ">6 0=$@Vǀ0>/S稙.n恖$a?0Ǔ&/`PQ+ `5,C|pyC ^EBش ?B~NGqiS~N73Ye!)&Ǝvu;@;/瘯UYY"q(DzrƔC(i̓t# 00Q u ʭ/s t هxp"˜Et hSm:z6o6{3y1Myod47gǗCI*Eu 8j)m4E& @v:u^LM [S G8lKjhb>^dnYcZDe@ezDaf>=0wN T~3'e.SWQ9o."wGӷ63w/S8DlFv_݋1G bV5†xD" Pߐ׸q; }.not碛.&o;ReG$9@f{{n@WgRY-Lt^ yb Dŭ\6T3i`?E:my(66J[{{e ArSXR&M9?3+=Ov8]k Q"s2U SIa-lYP0`'—W=ߚoE`[1_"15 ~Īʳ oʫVT$n}6aD[c)Π})Lk# _;{|k m`?hs]Wf;x(y9K-t]*Xj__%y"(@vɢ <}lYh_ &V*-5FQ0s'LnpWFj͖B$\SPN 9J P mhվ(wlY" Sg$ e+;>fJ`"% h'1^kh JA͜P(r3"q|arBDf>K֭  Fbr1D tܽc#).L6yqe3m@ I }=ʤrwsL!>&^Jm]T-z&~ {b7_Gp1a{?:nܛ7wXiI <݈Ƥ$:]Th.3U44R \m+:\^"sքi$+ۘAzn獏b \dbx?܎0 Ev/ ؃_tCK,.;qau,"+oYȏ-2jb4F׼f Bn)ia_[yGneB>ćm?IF]nN0"*)hPToO,KrrAH^ꓑiZfvlS+4@)܂}ЏL>a@WI9&K | +{z1E;R_ߧ--go`05MgW8T|L1z)pfR{a'u8>RQ]=}WҫePw:N[5t[`? ht~cUN:q~] H C1bf b~EA$w*a2 ) 9$;|#gg>~2ozGR 2_BN8kLeg4*Zǫ6=ӽ)? )m~ u.w[j.+Nats~{3uE.d't_ ]{JXUD^8Y =(Gtn\׫f~Y?R7e;*=?siop/2CI5F 2M`Rxp_ᾆNpX1O|pQZ3M/u9{oeW xnb6 ILns_rxpe1=;܁5b#N<9h ^Fw*$D] yP.=g\+ճpkr[07Jeh|2eNT7,$);"tPO(fVƅd'9.XyK#F>z<+"eb@LUδlh` ~PwUdj.X~4U'6K2>\SiVW )u &hFHQ}f/gqAGH^x9lcb`օxyM07cGg?mtFb}CQdscni @GbY~৤8hK(V܊-q+`Yk]mi;92uY[ee_3I5<4{gF~T}O+NĎ 'I ~`؊!K#tcrmBCw r" aj(={.b `lMcAJFQ\|]&0QБ{暰&pVmBKY+k*h dȑ~]wJ;Gr:Vm=w|0v"EZ)Q<釕8rGp矕o,ڪNcGf19$$yW_acoh)x-4xg]uFHHkLsZQͥ4VKXDK쥵]@Dp V:U)7lvc~)23gjVɝ@0&{[A@D}`pMD{a9lI,y7L\0GH&6 's159x_8.'FXLXKAa^M?LuY44A;M0{%BRH Ϋ/#G<:pˤO&ʠZ]tzkh1濫.bUV @fMIuqVF$}QvR£zOVzzQwưm M'lGh[A1A'`i%9J暆[h|54ا=wJm#uOTr}hD pM^;F2 |U*IB0*TʻcBi]N>9gwThU|o AC4_wdrG!lqEyxc u@ClD,VRoY,zBGdIpFƆLbG;TnSPठ;Cn n 5{`U^ +&;M{@!ro jJxe9ޯ "!hӬ7&+w269Dw:zīyz_px}#6UQâ:B޴'cȋaE_;rKx9oa-\\`y(oRoxjDx*꧑k! ҝ>;MiWsbqX޳($M>H+0w5t.@V*5)*to PCE͟6҅v'mJ[c{ H[0v4pAA9Q D>8 WzAAgl64%+lS'hF(jeQA (p?2,[6?hk?4ݰlNxQp Qޤ ,!A/@RkbGP^Zkm85&~s7.onG.GGπĶ kd(Q,P˚dAf΂`ˮ9r \x&)>?SOY5j &@jDq6Z!Mo`iտ={ rXք 1_?`}JSp ( H=X2Rc3:?#Er!ѮX׃ta, -39pV, #M ~EalE7}55׻1G 1 b̩e`lE|@,0vKukƒ./4z4HYFӚQę.LUQQ_d Kn  0'Qږ{;4\LU;vpYB0a0HB/sLKvҷU!ET[BfN:^HFlQ`էX|CAb*WUIVhc!ө: SHt \sFkn? ^e 7-Ӄ%n>h]o4j!Y ԳԸ }& DÚ&Q#Mo؁QH!uhADv>rJ;$f1Īd7Njb~S10TCP3jjJݣ7hYJN,DsV2j?FmGF TKrfԹnnbk jgK\c;XqmSBŮۓ<҈2Ŕe/+S0vHWzs_@&GO$!;"}2PBڞTXnLu lPjCAEe[t7Zu8M׆o YOJ"[lĺ>$eg?ᵒ|W׫G$ĝEܢfף3TqA}GLha0덩"44)Ϙ,ˍ1ugB9VCHO C t r4e?pr/%^ٲ\RXEx1/~74j1Jj_{Šb*eȪ~siON=xEL4-X91pWR %ml%)r6^-qT69_Řc\Op@CTHn:V$-r㢋M4fƇ۱;7mK?zo8 A/97w> U5(Ya|>qX0{@4S9}|5K֟xL2cҊyљhNH٘f+?Z3 7^Sx,U B{iKhe?'b+ ;]I  e2Fׇg& M j WD b0'Gj$[_Rh ^@\vjEn:m^&F~CGk !6x( B{4mŦs,eXWk$>*$ݩ 6mkLjVxu2Xʟ)pr~4FOoar@J_JwWdhρVjglպMiL %ZpTNCjZ F9FտCxC];8`:_.NGbRi.G2IFKG$ Vj &7K"wdJ{_M#ƣ?X ֮"gmʮ>!(H%0+-^EСo_+Fy7>(N뎪'-6/6Ci'K[E;x>6 A}5N hX;cTQ'[HRQژ#S$8p}jub4HfǐS8-DX&v{dP: J $CfQvt O`!C;M@,ᆲQ5ΰ:HmluZFn]I}1j^P-i&!ދ cjJK#@GDӜ"Jv c{tgdW>3͗9~KzIec1M:0d)}i^tvN0bKU@kg{%Q}['LWOgm(NTQw _tCܳPZ|r WnKm꫸QJ¡{WYcohδ݌.aH>.$6 c=8hZø%~GǜP+O5,l=uguȡf'4[*V' jLT=49e wd=y|3 r 4Zv}L9v@t5}@+T& 1q^t2p@(73Kiaf% v'ךQDo ܟYsH[cuKY57N[;a2I QCmUgt-߭bDk͘ߌٮ'KWCf$x3 Ptn:]], y0 XkF[-MI";i\(V3/kUٜaf0'[!^҃<˺PnO(ݝ;F(ś5>1*j?GQTzu^e-EωF %ĉnx }sIg$7.r1=א`IV2eHb[gKF6߈XSYzZ`gUq7eSG_X-R,s[F}FiRݽ&vݭg*_SmPv{*յPUol]L;m@Lp+YDC|J \ 4_Yh!*=F*N;AKWq]*q@9IiQ($*Ƀ@704/ݫ@s&4|TңxkzkL6sۑ٩]+E]\˜Yح"AȹT@^P+/#lojfn4LHO;1x鴍3Oy?odb51`~ 2һc wgsT3R%#ӍtB N@j5n9{`n1ܥI7 &-9e>ZwWoXzqOS7@5t gE‘,!kXloZSqumu-,%udu]g; q3s;⒞5{}l ]@M1n8+̞$54YPAIH=ִ%kQXs"Peh@<}N آ6Mx LPv sT6X0 &ۧW5AheSf g LJjG+3%>f.@S},l5{0nom]0bMRoX #T:3R?<=* dYq"0 Z8fsA"+jkԸR٣? 16Q1!S-`Sj>iL"9J1bBf=G+*+N n ooڍد\:;AFX,[Q]uC@<}oY4+OcA>fr9O t R>Vgi)0iSlle k?K]bV O<6Lz2>"م7;5b7&35A+ay{ndGrP2?zj9 $8&[:z?G&S둛%QeqzIǶ6wlBUL İcҵP|%pDLӉk m{34*a5a!1%y6*@IO~nH~}/bوZ)`3ٸ5F@,KccN2s #S!JhKdgtd48ׄzH+3`tLϷQV摎%S>?*8_ؠ |W+x!vq,ҕ 0f hf8';07?+F4Đ8=THҍ 9fttKWȠdo`E6حxP5:x/X(f@* H(|hD.֪,{\k',4sg^G,FKU+WA(+|wWgpEPLa}F6($^cˎGy/f9 78R`YH@F2# *;a(NC:B?BP\V m{d1D=i,M ѥ})C0i!Yם JڙI$R}g*V4ffqE2@Biư%8u-k柔PPKwOlUMC 7 .-~.#cR_VFjQhA(,^L.+:#Łtgyu"sq GNK69VnQPuSYD1Uo6'1M6yVpkmq]^\:`8L= .W\GB-coE<o4 ^5onwe+`a\fN5ZП/G%1i-%a AVDXgװڞOXdpk"36G-DxFnYV&nBuzk:Tz/_K/.W5Pcd#a;/41w{ M? &V2yyRQD(0nL #ɿ);|$K2 &'Xi-$R-eN=׳Wx+>F?AZ8dUN΢;1UU]\l\R;ѝnby@ ,n=4(M \ QCEpvrd|##k;5=W+ִb8I|i}%o݆Dew{@g6R$KOPĜg45lӯ^%ٲv'WtY9?Хp5]YrzK'<6|&ܤI )EsT[Š JS"k" V = 8F!—q6ȵȵJ%ʣP740KA G -%pW$ l&~'~ lCbreiIOg pcȥtPB A<,n% 2P.~60`''dXVO^)obx$d*+)k:}]*?,~KGYS{mcX: TXnZh |ϯLE&Ps|Zcȃ)=Xn g4m´x(_ 2X xhE3ڷg:+QkDdϚ1s^&kx1%B1:KOfZI55l UfRKIJp.,xS}KՄ FbꖉĶpZ"BH>#\9E0Oߞp2H yza%%tv&-&lšA} DLᛁ6$4]OͯU]Fjo9u+<0 "ܩeULQ8c:/u&^8f4&Vr67N!yB8S*s]+kµ8NoA/Ό[1Dx]D0̧ʙKfBr\Jrk]P7$Ɇ̋OD8yvbQUN:]6T0y?!bXhq| I9/o\?q1kwj;~Fu3TCSugb9'%-}9Qq}ߚ5\Zs ަʌ WiS$],bC)) K6)R3DZ 2k_Gp]0["a9ov_:a0O(ćzC,ޜhr7N47%DﱟL&y?>"~"X~4><SB䳻vW?vn."Pk֔,;BcfZiMtcw6iNp ́G|\٠p#&M_ <uyI]=kUóaSkZuGK؍Fk3pHi5>fEPHX.FnU 9xot'kl Գ;Tdؤ,6LJ-K j0 y=iE:|hH-Y;be0y^WXn#pr+{cHukNlSO)վmL[`A4ajg LE(o/*S,Z <>BްN5يJ{~0+>uh.n!rc-nE %}=~1+2Y~9\.d4NueQB6FCƯUj.:r:A3сKLJ^O x6_s;` zm v^[; OnU`>h'cp4;Z\ p:&2%5{q ῧ`7a$#݌]h4Kt]: )`걁2:p Bah1uY E& iwT/ +I/pq[ABH7(r3<`xHa 03BAyl\*mc4&dXo>`zVNUKw#Q6:q10*i#dϥUzڣ*lmaHƉS(T*%;'sͤNLN:g{}4,!ЯQ/< y=G"ѻj`AJq޳Ie W/h|*9{;(+S%rBGF0Es;a埛$>cFK֜+ærY.@vk1px "'Y8֗bK ̍r( lwTLATg]Fj ^$KQo4 sREx<)ROq(:5&؜KR6%6z˛EbԴzRE֐{o?5I #eh]4&»fO^g/@˅R* w3 ^X@,{ǏMOQԍ0ĠƦ;2b5@O2-Z/$S#7&p_*&д@ TYM* [q9M/P~6S^눾pIt7V:;ؓU\jiϤ0ea}Od=%OPaB$zT8t5/ 3lt:1m;@(EGK^KoNHA{ׂx3||1Q$ДZY xݫCXAiūLn:b mLKCL lo.D8ys/u6XNH*q_ˌp;(Am+|PJrW$(0' fLX`?T,d4,yb0a㊬vXpuut6&~]rcf*5$2دqG,X\""bOA6j~(w18E(˙,4ݵVѹ"=0K("KYۋ?5!_GvC\RTl8Ӡ?R;##y1+L0v+e[6eyL݁)JxΫ}NI3h'2b[8\W~Y֚ A0p@rw|VӤwڗyrL+9GΆE2sZhrKq8Sc,Ȁ+;tk~4._LVx.z8C8!v1%[֨ Qvۍ[U 9p 2b%c(^ّ ]Sͫ70}.P<1B4Iro ka?٧`R|Aáw>lt4en!b̖IVCtlxnc!㝏2KcE *][js{WJk0T&E0eQR(6aq:a +a;Q}s+Aeш |c<|'OTҹSiec7p(l%' 0E|;Ct\Հ{{;^`-܃MUJJ?*r'–  JQS.x&B 3YfScƣrPTu2yCs?ւrot򘮫W\Muj>Wt.h_MXտ'Y]W^NnJuP͑ўytKd?Oe[G0#f`~V) J\{z\&ȅg-jCy+LL9e*󢧘@edZ=ނjǖ볪?p:H8Ÿ mh3x`@)" /_"^v p~Ӓ48.aP. ɎkN;q  dcqwO\;"II$fk|eܧ;zW2csq>95ϻ`JL\ aS ppEJm 6̛(>YXD%/T͡JM_zJ C%5Vc#-|c~AG$NUTN~B>Yw [.-RM0[Ll0*I(gYd]9-=0`lܟ"YՆu1C]b衺~5ήAG PNeuᯥiʕ4ogGKX٘ _XLǷE 0s [+j@^40Xf-Mz,aa@;vVl#,'?Р'Ad>ImJղ]-'JTz%ri23y6yc[>vI]ΙwԆA4&*#CIfifߨ&E9ݳa Y5lܗk asI|3 E>Oɾ_S ;7j[wQ  U6FCsLt73ǹ)"ƗB;3Dv= MT&}d$XNPZ3LcX*UxMłE#1! B8 &U^itӋ}W.iJrձ#KjV^Z!TT u244 f}iݝ""SK;0j}Oœ[%ɐ7[qb M=;H埽*c3N>>G7N}**0N&Jlqñs@0h*u|>]A˄sGDbB)eNL^rt&b`[fdGWZw%hjӛ _΁L<XSt 5(X(~P XST;6Rbb'@Ab U/"t" 9Ы`liX g$W5csb\r :~ǷW.Z ++)KJlFO*ȝj66IwoV=֋R>M Sq:v|OQ SVE8=L*Vsh뫠9M`.ڹ{\ M0ԗ%p(p)AU r$p 6XJ=6tW2Ͳ_1 + #=8$.L 8E9(nXZ r?t6 ۱vqǻղi1 $)[ؽ-%_ ?R L:Q&4='AgPA Q ݅r CFJt_?Mm@)%|ҤD9-^h|ezx$m&ӈ1f|{|yzݣN"C5\yUHʍ\ Chgm)cl/e>P|ԋ`%Gniئ0%j51 RUCeZ90z~Za[o! `lmbNxGT2H-A p*B`,oG4T6{.cu5~Lѱ@Qu)H\3o tW1LT[ePӸ57tRxK<%^,![ ڄ/F4G7̃xXfM)q׶9G0\WT+USbƯDXj_HDȫ3ڽe<_?Q_Ɗfޭ*w[~whI,xBwju&8wk P)LAϺ&PqI_)YY'%喧kAw'[F. ̓Mؖ1}y@1@/p; A4\V]?9j;, b\|Y)c%#43 AsgNrʈͮF&lѩ]ytByix ,Uh'`JZ|jW10/9A@$zc5v"h(0%2q Qwd#$!4J:<{9iBs86˱+5a2FzH IO`ǥe+ldqV/qoy3^1\P$ Mx|4W_?؉'AM:eJa$2*MCa2SGGGlu[&~߈Tn,ƴ7 *X1MWWK>ڄ&s(?!qk"Gj^4h*ݞ6y2czw]al)\٬왋?+2όߥapxfD獵M(W< \UwБ{`'oW6"ܧGM `yp.w:Yr˙t-Up+O%TޢNp҅.Wxcw&ھM{Su,uG2}D>7/x^#lt,6 iɟ?ؽ)sec6UGG1'dCh6W g^q4yat"N:Q{ڭl|E4H~i16"Ư$!V6C>|pzClK s 4SE2UüOV_Ab+$WR?wͻ–x} ث1s54D~GSn$N̞ x@rȫלv^.D(6^x'oB8]i4^I06~JũN"]Bw[fw[w%yR3s0N"xSN >hP3D9Kk J[ƒ"œ!jZCId~%_f7,uc::9Tdx`4ӭN]N#*|]rrp8mo|31J85 jo;Ѐvý3(]=0Qe_FjuުszVd$/3h&5ؽ m'̇h4@(c6Vmĉ~O,1[ u%ϋb,35XDhMAgTn j[/ԇ%nGqomJ%i5)c(.2 ʑ+Êmo,5MIqB=m[~G"ȥ:L$0Rv=K~&zx!B; lCЖlgodܺ |m_2|UqnaE;ﯜna|P0jcIs t'L&y\W6!vBl#0!2})4Ȝ|0ZOTޏwB sKYH#Ykh_0wZxGX|Jzi4;ϝG8J<8wcP7JΕ3<8:@ٿ2O)5 8\Kaɟ4gsWG;It6bgAfD"%d&eHH^Vhjj. /}z pnZP.}SBzp!ᴹPRÃ`37LUl 0%\Mڙz`I<vE1g`ZSƥAhr"gӊ"1? ijǮMÓAHkKQdj_A_ĞS8 t(+W54g m cpGCʶ^E>սn;!sfop%d\-R3b-{ LX5x܏7F`A@7ZQa$[-UV8#Q+ޚ&G.adr5̯_#rX[)ʽ=x"% m^v%`aaV=/ ,/dP֌14Lhu?o@G1"x&(b=f=2-Wz/7\`-4wV:. gr/Z)>A:Yd.rSC5x0,̷b>~9 ͘8L&@E9uǗ 6߹{(ouQrq:Po*G~;w B,%}[!ob:l8QCqT}Ü;FePZSKoi~yMdl:]e}*-y?t0;[(!(ϧGrL&ҝ Kg%[wqKWN'v A 9N,`\Lb+K S09*}"!x &oI'h-jFcnrKG4xT4S9bZ=#&κ)zS?ڢXg:to>C E˵1hy +- MpL^7.'H!h^~~= U= `܂ݢTo  Cpw"k_6Xr6mȝ4ژ/j`Y'ߊYp5hI]L'm(}5Ҙ&_,jSTPդ6-cL I+30Jx@:覵66e Xz#+X$ɗXaUO 'u'ĤUvL"ւ>=cF%#"+G(l93 FRJOr$ihKnil$2o빂 Czg2.PB?&V8Qa!ɹ0N=~: -q#uA Κn7eX{ oFWORpՒ\M. ,$ /Jޣ_Gh]bǎa٭GL4k9";"Mн \w8V\o  vN ScNm`L-O01T 7&2IW}/]_b@= !90J,;U"+!Ć#-l˹^Rd;2,ſxLť$PIɣw#V/b+24}x=,%&'K}`՜gk=/ ИIekzH7|nTMsqQtq !41gӖo0ևX^ZׁJN:. ?5Hx[Ͽhb#ETd}_T[x1KMZ*;drL ˀ͋L0 V z,`p[4+/o" <}vaU\]7qfGQ*an,8}.H@0H4ꥵ}h .LvZ<>~΂-\%EPQ?Ԥ=.^%9ٷC$Db=D͟ܐlf!HM8geQZm$j2lf[pL]"wrPOm&}/ICmUo$Q1@EZ$H4 U*~v϶MvMQoY1B|8Y?=KwHZ@x~s1% ZF/ɹD$,_5uV  A6A6{7|ǣC6'L>V"i3C>w׻z1➂Ξ*LryC\WL{J̢$cBzbvhDM D쩮eِECabRU'{ޙ,DZ:ܲnm?uLN׃ j;iMSDUȢ*E] 񊺺GfP6R:P0uHPk9,?6'Fy8ǑT8JQfvh?pQhXJۤFn0: 7<vO7҂WwYO}czmwP):ׁG{j-9Y'@y|sm_EZIpMM ^E861fu)pՄzQiB,%lV_WTѤ.*"7Q[Pkq¨#^Z:EvyLpYԮz ۗV/=ONk 8 4|p#'CZ)=Xly_{EMp  ^*T+kkeS(FQ=Ag6O!mrkAy@Ce ×XtnpXl>g5뚽t%'H0{ ڮ#0f%8iYYOTӧa2Z?<0o\Rs9Imd-A횡8 ,r%^H[2l0K2{25Do*g0mBTWW:~A8hiVKH-o`b0~SUHTIN{}Y>xՙ;76 <0%of'lfGK0dzh3U_C«;mw㒆7? G\x,z<3_ $OrK/I 8OwS̲d@a3:vo¶4|u ӻ "$NQNthPkXK! 0#\{lL4rL.r^<$6|Gc?B+J%`x4qBZqߜ}&xxioX &b]3~\|| .׷M$R%a+^~eo#H1:e_p928Wg2%ӏF_9`=hWP2"v1 \XI|Ehj׾9xF42#ćH|h)ھre_*; a6yEd_J4'hwE.Sby5=y=,P2VKg1$E~[-ecG@ ˤ6%.LrxMǿh;$0*Ieԟ&qDja_Ül41a;Go$=3 ]> MsFfe-'cӹՑr n>σ \y("r8} Hplt9qևXHԸ .α &jcJf,&]bVv{ni 8jö<+O:׫Ac $PD) (Ӿ o1&u.y~kaV,R[@B'LHXM!݀n¼i1P~lK#!.dž^DN{tcCˆS遺hP:U7wKQn3x'pQKw(, lҰi@;7'=\E{ g$؍|5*(mƜ/i%_BjpzE ۂ>|ܲR2U.`Ck=j]S?`2ě8ʙM"b–seAa Vi8g[: A\z/nQ ̧ ?:D܃GP橍.'9bI[eRXy#8|@g /C~GN9Ǧ)[߱Gԙ±=25 i~J) ×=6mMW8F[}"~ƞGmpB`@ݮ `YiL.I+}R]w}#nY/A~P?kk<ñQ΋,ORt©,=sgq{c'H6Y OLC9|?#>A0{R)C\η+K!+uTrxߜ]P>U\A;%Z^LDFm=ðYY}%3(4a.Ej3z ފADV<[Z$B~~c?UI@eʖiR! v됹S´0]d=re 1[ǘ楍ѬItlflh ă𖙔Q=`VRt Z%&x}emyI5l0}*JݱuIW^p$~}&_(OI0䌿t~K)oVID /FYaObDV/)v31uB;q7,0͔)74ErN|G 2go oRs)yWDSnaK<HͽMK>]qKYQ>%T)HTeA{ #ʷ1rQDO-+׻:*^sMzW~Ϫs~GO2w8YTƻBa"SR E.l]b$<㿡pĘQ6xVяt4M[[t yTAww+u-)ՎWK=SM/s Z9(UtfƝ0l.e:4k!|h/!<2g &ޒ|vċRT,pKރ|v40}i1X n*t]HJWJ K_m9a_vvG]4`;Em1&w+e9H7(P"-[Gb؈QxV ?LJ.!޽ O{)=>g0xf6fb=yq/CLYf(8obȺfLxS>Dާ -$No@L[l m:wn߃>"ݢ,&wꐆql"' GcU<̴ITȉC`1L($}qfK^AJV03Ϥ[[vŅi5^4m U~m~i2w&/ĘiW2 - F1/7ɒb[<` tl͇Q]',^=@)D1JnS}Xqx^Ve`7 A^r -8/P]j7Π8ZP^ * %2R`a 4$XY,}A%q|u5:[ƇL>3$Ef)z *8#$3 0!a҄!P5@׃f}A(ΐ?=*r{@fu0%>)X*إHy!ˎQ7!RY`}\92@dܽG,:,LUAT\jZNx䔂G-pH͛4ĚQ4/R#|l <ɾQ[D)͐9CKhU7b 1a%۔PхG-2󼑯QpnZ@>pR31ARYnz]!;ٍ.h m'nx>N5eann1@j!Y_Cr'_Wغ^JIQn[RS}<yx>OA]g WB| d@bI_X߈1"duiI$q_|m:%xjkp3FKzPW@ 6 O+!g u2}C Hڔ#8y:`0 2r(ݴL<1Bn]/yְ[m]Q :[WvИ~!ipSuC0j>%WـR',=o&Oٜ+,[9& Yps 2($;x$ d'QH[7,]Qj!s3ap^T2v/[k G7C?`W&Kn~86pr{5Mj< 8mHTA-+Jor*>u&p@HJ{Ng55˯]3hbfC$OĬ.Mֱ;֮ ,sCP/&׷Im|bp? TO9LMKE 5jHN%QWz>|/ٻ:)^!>d 21)T؉1G˂߂mN wT+ =$O{ϬUfk|}u*mc: o@S@+l\48ڋϚG,1aXEؾ$;}PA. f>Ыk 6ޕb7;eX~zJ6Իs x biʃViohlܪCBa-W)?~%_G3wv>z phKBE@7If5ȸ^j>N??;9=6WO½p;x;v|2OKg&7Y;K>¡#T(;\Ʋ T/1:ʲ>嶻2C9 ꗏoD9$^ ՏP9g*I.S%OX0A]-hUi:=OTQFH] P 1u D=bU)Q /B e LDfuՃN$sX6Jy)W肪3J9 oϹ?_MEH\ɾ&fX=] x^ l߃OdU4.i Z dâs;S.]]8UPLl1 Eg~g.#yQVub~|y F7b:YpȡDaoDG Q;;W&՘T{*h]zEz},Kra/܁WYh3%mD߃e:La-sE[wy'܏YÚ`Coܝ-0USY :eZ%/b3z\$cҟb[q5Ye0@,)Fbk:FШGs] K1kP4(<ЯWԉv}UJ o}ҽ8Ů*HނIrcMǪi.%Y NUsI@7hʌ΅w*k&Vzn'; ~[:qע3%t^^ؖ o=#y9"GQ6EQKRKŻ}yv۵H$qNMQT'fL8 gUcG*=DBKe prK^ 5Fz1&h5k H(*naieQj¾Ck1-ca8הL*hQ{Z6s>ܲ:6|N3(%V@'ϓUtSvyzuU05Q:ޚE!Mƅל!zH;ƣ/-0.3@&Mlv9ǥ#FK[v]yv\{R!.9gkr/6OvC̨ϧn"|s=)-}ńJ{l6LjfxHvʅ's5)<~ ;6 +h yK Ӌ"3e;Z(N~+]s"9͔ʧJKiq>' ۉú$G,tTdn:Gc%̃U+vX ġdk{3Hu|& iaw RvM2jgpb<y9 }QML5JG2„ʶk}8 tk)yHÒRkav mMXq(>kK8H%֨na^c S0#jSZ cy{N?^fY!WuVלwE[ B,~д#ͯ1/ |{GtS0jADX2ϵ}&:z<{΁K]j2WƑop,r be(DȲ5ȟk7r&Q7r^b|ZtGSp b"S Z_ ?M~rC{ϱt: _h}qq}6w|wCJߝd屆L?aQcC@CƊb:95u@Yk&[tʔAUQ!՛C* 5gbgAHn/N<[PO}P_Xf[Hrc` 8o#} ܉}^ý{`{q9?HY | kxB~l4_+|v*}v&VحsƐl§y|G*jw ;ߜݶ*N$ؔW߼phBklD4zbS(R|'*扚9%.w߶sIa 5Z].&:ю3I,$`>$5kځϷ*DXMfsGD^?8gn?J>f$.#B|ٝH[QϨ0ɵKO)Ș \֙ڙ>XlLQBi,5 AYE=%2 m Qn.DY4[r\UJ .ZGb$5bl.\skK/I#jEۺ$UFzټi~_"pI~;?22 *.J8'1[#is!xZc^т.JJrZ|"{oth=˔ԑhQqVx ZUnuY.ѽ k|ƬA3Zv͗ ˭j@F9bX/ Թ9>M⎪Y/W*swO5?c- ]C6/Tq{sr"|b:P,)${%6u Q=a뮁(wp'KPC΄ifeGƉI-ׅ )};RNNY|0F.>EcY)ִŧg89`}Q;)'z7?Q)ƆEY$nkЮi5sEp(#zb*Mc8aOc>+Un2AEr͸c 4FϤI<^i(1 NR(yUrt5)XԮ%x$B{9Ÿ?Aޔs@-{: #LGu=Ԙmc,>qiSN=럙n2Flv%2Ob(P%ii#d2bލY~nƞdC0px djKoGyײ )]ŒO/6aE;Cюy僶q^XBjUy?J:HMrA}-)SM5I ?w4!18 \$v+]`JW]CQ8WRu,}.o9)!uOk0=JQ:Q6znr'F>$5X7_GZ*+1rvVyk'_TNR}TF1vȺьB=->"QM: +.1F`lT"j8`xƄ?,@cA' >qH5A@~ɕbFK\y)= X&eIsv|ive4o7[rW!\]PUa- [x<|wvX] :%00 J %~TvT9Q":.6.,plr.ήY,>3q.8 1Z,N<OI? gp:Q7-FY›\_BlL<S. n~`b8'T("do6uK+B=5di8Fۡ2!xv\( {l8o{43 ()(NTOZISjeґd˳e{#ux-9hmv=*i֒ p=Fc@wai0Hm9''6CuEJvbag- m+."g=26KE a[ CJR.< }9`U9M0;e)dR,ĵ RX#hPv#HOPdZr7JhX%죺ɇ+hĹ(Nz^v|Tu/?gCu[GۡiCN*[>YB3^:$w !Wy.-6wl=#}L:4uoˑ@q*(\ \Xw K5e' !pzt=x_YQͮ/0S#a |AW>Y=זU M+'9E֨^mו_ >fYcBډ1= e NV37B~}5d' / .tAZHU&mvrAPiƅPZ7oK1 oruՑנvG]ll/eX2I"]+CRo9]7v필a\Gݐ;;*(\nLd+QND5Fԁh#v,7j|oZnU CڸTtl@%.Mr{`Z>:v%{$pr],95hTPE҂Z$bHK6cz`u(i*Ƈ)8fMBGSwNnTuf`5K R^Q+΁v|_E2|S![јHMxi43^,{t7P'!qri&gZjQ5XTji v*sjߒ؅`(R$v :]-p`Ż02oJ)ݰR|a^Y 9=$L+ EnCL[UWb`éKˎO F6dRAREe/2D=A e:CG`alS%, 440蹵8N*H>mڕt5c~EFL`r^0a4tjUŽY[X76A1gR7\G%bx|*^cÙ/2_yPJm8cr#Ьb(Ӎ x5h^<*E?[E>zs*by˞3k7\v smbrim:p9oE`$Jnn?od%va_ϻBhG%p2{hQRib=,pRûh ^0Vgaz0zI2 ۟FN8ƃw *_Y1|-%`7zt,kuHOihA)S9jA2CQN?rg;6}SyԆoGT)35YU.Bg.͍_qn}m?3V؀W2aҬQoկ0{eDNh E-2;$ymmօfQ:-IJE6+69xc(ү.x泒LJ=,z,2nR4c9Gs/͎{tgEΗ%لsLtȼ bOwO&MA2>En-c?^CkQ GTNN|Jgs qgKJ/jykIFaޘ(͸yc@EkzA"p];zv "" 9;ܖxvSկC̉WΩycfbv ,Moc1@C >:D $~b>0j?8wȈG8 KsF{8~Z$j]&E1-¦Q~=B kvE)8;Pt~%"zV\>pHS6= TL.z6xhMOs+Mw]뜳}=a6p*^⫐t?_ syܐMz?A s ͈jS~UN %y/* V0?`5\NKV6Hn˂B-.1}C%ݿo%#UAJ(n0@T=ղ$2[=j "?ryܻ9zmo FG?N+,(Jj%3=J[RיT_ oT3 ɛ)&tH`ʶ!և`mzˏ")m[<#3GƛM`] z='^~Ux`NW9[z6.-!=Lے:1r -P~֖~UH3FJɺbZВvc6qr$-AaZ.5tBicum) -QGQYe8Vεtl; *)M'TPpo@){6ҭg/$ B"xKj׮ T_č6;TN&|zlIӦ MFp)kѦ3N`7UQaܘovw,F+YDKZ$m.F,aV_K!K&ozYX FӈP~%Q߹)e]s_|ЗKVRyJ=^ߑBH}<âHs N:kګ1>ÆLҎfEO2QmQ<ՠs{}X1\0`x(&TA655@\0M%( uHc"08|!6yYvlXw~.o5ޮM޲؋5UmɓjBŚV>XQCsXVϑ#\ ZyTݚxY $Ʉ]Yz7֔4djBQG ¬^늙Q|,5V$MI$b8]BmENA-vX shE7D͐CP]=.y/IlX.ކNŀz(JC1%_p;{wOO|϶$fJHF. 8 IͪǕQ_y0tG`~ؠ`/GɰT .#%G?P>0zσv@Vz;?L spQRC:`PKt+4ba ƵO[w%1.^`#/[M3Ua@_wAğtP0$e /~[lAw~*/ 2H#W۰B4[Fc ŇeG_K O4,ickT_T\í6.e~B_w9a3oU:~D@B,!uz@B-xP23 'g]Cp2\.Qh9֒׹7Y8?yA (_voF~{5"vu?Gי#3$vFd D߃_ZN":~>DxߝB:d]ʑ* uT\[\J>a{K >K11f;LB7r3V^u?S,űZNg+?qP JgJoi$8_QOGWFc L!:-k{*nA~q q+ԣ7=uص#dT5YKlIJ_0T >Bè!# c ߲%yxotO`V|c:FиtF^k7n&CEED٪U~*JOfM´Xgn~ćRLR!6!8C ή7]:>Gm_?AQ^LZ\Yju /TIg`N骬1J*#Q;=Qj=JE~q@\PIuԻzo  g\_28>#vy;Geh'L_z*{r, 5c\fa6Wh'̙}} 0ju+)#҆K$xEx~gj1'OLxSgK;Q684C6WgH_xbZlB&=,?Z[-B sTW5kmɬ(ދ'a Bpl6 #Q{*=^FZP( edSgk6zsP J*?<;-K-*]XuHVo.7|.~}Wn>m a 0j%o"rTf3?Ank#u[-C @ &}l) u(4\Tcǫ24(yZ[XE|U[;>!jJ7K6gl}_)Ol59L"]g I۩lwȇ(g|ct榀#3' ĎٲVqL(Cۨ;];A|u2VovP<6j\-=- xCL2xreTB$-gtdYٻ]]k <3x6Xz%>a&u^.|p <7c^!z.ⶸS!$t,lp,%v$Q+PCST"B1YMS R*<Z0TB sB'9.$E!'=^cnXO*9xYфDo^LuΟ# 9&,|,\uܾͮTo,! { ?*aQ~ =!H3rI^O+#* @ a`Ve8P[X w`<8 >Av;T† z (A^!lv(6p(-N"xƦʓGʩzha E [M&˅7IKP_;@#]c~X(FrGO15+j~0Xy00ЮzBG36Xh2YfVdP$E)E[OR]Ӡr.ܵqX*2_N8aԈT.uc8)+[g+_XiN<غa4OibTzҴPP~.悶joi2J&k cOr䌩 L\p5WUoHtGdKW_#PT#D@X49u31~۠&)ˈX.42[; GU\ nB-%/ّ4lV-8}2VkOM!J@ֹgWJ0WH υY 䤬kXQ8{5)j^\_%i35 ؋4%e&(J" 80`+BMo~ R$FE" 9Adш?tSK-09uVƔ=|ɿ,o.tPI['Ќ܋~u꾮-@]#3Ez~hGW?6 R+RE x_zW EȘ$M>m6TmLiuWw$Rv}Ў\_, nUuQyLz T+ 5[cN͵p^6pRB^T;XU%P;&1u7cd+aJ:VHXR}K'Vg<DY;+ޓGmʛƥI첤G,+Fȱ2 u^z*hxLwث寯_ѭ"]HĬk[o/IJ`k{'zf 8H$UaPw0z`j]cؒcf0$kjjkEqn1T94daLz4)(+d[.{Z,9 /j#'/Dli]n"LU[xљk켞v& GX7Vα7Ϋ*Es]*k3f}SJ E$T!^DؤJ)k縮50qNkc&JWgtͭ˫zy"_q/o:w:ch&j]p?v@x5=kˆc4$V##j=CrJTypE4 Dzsꨒ/LjXP`R])u #MuldNeBd۲+D˔+/4wTjcY]d/ ʓ)%eGOYFUlZFg9HM-]7~[crG&f>b::DCI9$jeo V[;f l_6J!YnyVԵ}V.b FLs=.JTN.o*\7FlgqE9Hy AfbZCTam燅±J͌VR6UX@M̺`٬'%f~ށT;.cf$' Q?:yZ?jز^8!HyH;hę$:Nц[3hĪ0fEC#ցE *_s@Qr sg]f=b|pK<0 XGfx^zi8;Ab^`eևEXgl~%WBay;}[0.~Y_BEyōSʱuYhb?Mj痸jI%X{Ȉ*G ZGe" sd%C@6z>9zv~Z{vfUKcZΉ<}hV B|,IܕvmPI/Yp;%[?8ɥdىC˸92H{WپT+ U=YJl&M6'`51eZCf:UɞL$ˉWP2㘔In΋> ?O؎Ҫ.^Q@Ώ`3O>wnMșK ̟akk=;l !X >u<1R]dD涄DJs$|M\מ݊9~4,N 30̈<(^,U3ᦕtff=ÑM  b3_m {^xmm[59鄮x#F Y̕\6{ qGpȐ`漯iu|pjq"nP<%FoT>u눏zmoP[ny3궍Qn*8hwJ$gP^|/K%2F\5+m,et"bh/jŏ+Cf)Oīƒb+m5 =[O[#vl^~p]~6b` eW'>OH׵֜?Y BM;SLt>$=% ZHjY) ղh(8bB7ў¥5wŝ=qkcRyՂG1d`O~$|hU{PFngL-_?یlQa$ /xF\Q+I?@EX} f,9NFyl  a00n ~Hjw %4s= 4PFP4d+ho~R*\wv_ƿ EY[{oҚ .׻ SՎJ 摮l|(e}0ocd ph FKe qlS"4:m~]q21ءTRAY.FB/Ug TsJ};n5PN5z_Xp`Y> Z?\F_i4#n ۉ"څބ ,@@f۴SohVTO[7%?SC==Jݰg`|P"Ȯ~l3҆^6徔qۂU JzZyOao݇"|K- ~1 P D!|r8I(A`+,lT&] IJ} n몼3E5 !͜wNBGő3QAXDл/4)ɼmY>q3TB[T5[cQ\7Q8&MT= B3_]6 Ņg8*95kRuCEAd [T`IV /b z6mڷ \F7?=wՇ&& jFtͮNώVz|EKR9jZ/xS#|5=(bٕ'\ 4 v\!x4E$m4=pDƘi;qV`åSO~^"V4 RU71n>DmWXlK6߭˼DXc=*̭'u-{Oʶ'.56 "Xb z]\wXdIƿb$}QAiNsZ5UpH;t(-(mK \G‹yaBAKv]("hդT5LGH'L5rnJ2l]I@Ngu_$K tG}㗙 au=NQ bZ0f#ZBW#o}n m]nlM,t{/K0 \h Lܐ3p uk+~?#N2/&5lg7.HJs5]S3i|NTUx)=/V x C9572,-P]"`*#JiV(qa1bRl1CLY]W+;h@"v)3{ŗ#J[Vn&l5Ea_JNvC2>̌Bxe=7rEkP:}grD3jБq'n`$O.`6u/_Q!Gxj?914oaYxJu_>UD= py'.q1 2|M$'^ ƨUl9Ƌe<}:n=Xk{bی;E$iqyL?}2]y A HPJI #03 ",@lr)?ǒ¹``ުm%Y6@`]=]!4C=E3 sTV^f6r`8()|ɝ_:4|`jTO9ţjkТE`%t|=~`~$ׁ:M˧NoOF K+:1X;!$GdRsԯY>L邜xsUJ3]δ2C gP99%l Cי6Ul.-/+-7@\sXic_[ޯGDX/k:cߙ z=}7ز,4Ma~սaU©1~NwBuR-TWQ3H >jwލOtT ԭUi"vXNC-j|J-q1 i6ن YS^3n{rh4s"{:ңPiO@F4#`T.V%!$!lnwxPH 7gJ:Lۆխ^jɗEpʃQvUѧvQݺT2s9 N?>MJ 456c^bT-npް$ۆ1(|Kw+ ç P=vG"!՘Ol'DPp 0W7HM3P`uVo n}IGͥa+t'lSKYln$# =6|e94Mib`ҪBL<^S2У˺ĤfݏoRVE[EQJoWҺc ̚U79ʗgM2\U{oRoHFF%8\SPӄdyH!͋/RS;D dH=p:N@{ELW\d]P*2(:y\E45?(BNܕ5׼m fFsf ff?}eoq<4źpޅ-: ^j."k'x| 99ub< ]4J؉:1f&>!R6{.PzN {feVlY7tм;0E_ز7C grWۇ#'`Ҡ>0(:Zxeƃ0T̜elCJ? ?ɾ'Klc1 0K=~#xK^8KM@pa I\ĝ'8%בph:Cw1Z6>Q߃B9]z!xu2/`H(šfUyQay (DZ8'mmIf~ᬏ'^^4[Owoռ2Ț ^Fybfg+` Z敟!(]{ZV;!OݕeBjwKU_br 1ݛU~{ ~+a ;~HBFD8~5_ z,`{؃'r`{,?TK زQ/A/9L<"?/W.E(%۫dH@1f͌eWRbmVKC~IJ^u!(F)UULRYɄ>V;[ ΀w =Mbi`FleXfǾ4BB&IGԄzCHs!\<5;`}^_ltÎzvy/wTݨ6?8նa0KBDվJ3F[o@\O7s3Muj@u&ȻZ8`kv),R ,*}8=M=:pC^`A65Z(oϛM sϰa5hnx#ߕlOϹZG:`ǩW n'2KCS v$d -~T]*25pZxol'Q{<8LC_nȲSDz´m% c(ء @TT?4Kl ' o"3, koQ;CvDT>6ծ*iFvѪOkvd.s]oT˛%jt]:".14܊X >3 WiQ#Cu$ :BR:}c5fs|-L#ynEZE7џ{ QrvS'aM\DUɍpi ZT'tA0M!EtN{i݂#miU\Qﺕ&̙  CɆ/k1(ֆoSW {o\h++&K.s]5ś q 4b.-iYư͍#\AДf=֮CP e ,36'QOpRԺw6,zӆK5b#vAݦ B= 28ٻ2 0O4@om7'׵dQ$}- %cSnI&qf_/jhfK ߝ BVk/,(&hF¤gS"ͩkDj=L+uJQc"֏uMӂ!NC|ەyeBn"s k4+-;exUڅ%#gÞ5 mQBZ7~<Snju{5K@W wa ?@,.#PXKK/3i׺\b4J S qw{JQxDWľYM `Wa9z>gSGKttAO#* *.s6Z UdɒCN2 :8|CgN)`G,kU>x^.r2#?NiifdήfbkF0 Eܥ^C} BA=v";NR-3wtܪ3K&nJHH+YݧRn@땘_DƧ)wZ1iyZ t]>7tvIɄf`<D1*2+{I~9.T:HTnLe|B V |wfRa#,pEc&tO n)O2d9sAf979<'^69uCX>qCLkoMGWY)UyIHػ\ (  "C:'fZ%aE_\\NMz^0[)#=?0/j'8q"N$} Bff`>)SH n(ZlAav[*HWqzJL"deST5r{}pZ Zf`ݹJTqrmɋy&vtGEH"`'?\5l:p!rsђ ޾BCPź hQԔ)*6!ź0!~`*Ѻ[N%hge] l"? x+VftIN.T=}_ #>"+yNs9T(vwQ|gI"fV8Z=Wo?{qtW/=EZWoգ(,H xl'>s.#9s2ɜLDf B2߲5,Rƚ]2Ǜ?DUF: ۮxjh3T SyGw_Q{ȩpD5,,"%' fȁs]wyhzYAIqcV)'@63Cͺ '=E g6z:" S65n |qFloTwcrSg|Ʌ! 0Ɲ.+!X?D>pBkriN'X黕CYp%GT-wKʄ[.2FB_ \0ʎk *&9ܤЕK+O @&R^R [H53* EQS)|&yGdY ;uYnSáS Lg>C!$&[Ueuל38Z?cʳbNEX6=aEVC+H4} WS2Z;ˤ@YUR tO2DUtFنiHG> 3ƁVU5+򟈸7\0uF!s( or9@*l$ij]HNǰ+Ac[Z]MzG,` <^Z}s M?Tv &Pݵl|WcCNtlQ>ĕ2z#(ٳf2iKm8lPF>xţ#lxk[inxUS jJyL Ig5e !{-I.a_`R-w]$/:BJ܀@ MvcB0|s,t~1ܒHEs>pTrth"Y(WOlUjK>L)}+3;M 33Ic I Ty㆕#֐u2߰4e`U?}tr dD/TuH-.`i5daYD0WV]nyv 7u5OWEUu!XȶgW%__[cI׈,#;I7aюeՎivc}`\dՁtᨉlBmMNqU-4 ;kVA'7ãI6d u6%,rs{R{rrJ}f0 0pH1 e+^T pw" 8,RwT}Bژ&x4 ц+w-­x*\1!)rCL<wEk[SkʎܚO +3&xv5v cXVmID+f&huh("PوBz4Xiq/Wttxp{#2) Hba2RS>,!ypQ(GNA&6fX["}ZUؿTX7=gbfϨhZh£`t!?j@Q#w&p:N&(EicM] /e J+2Z.0L)}xEH+XVp4n^ZNl<4⫈ 03,YF VYl[ @~i~pZD\k-DouAk 8pt,rѯH'x='sZ,]ޚt*^Lh-{}0P.Sƛ:nem'%Ԣ-)K"ڕES:p?( M$ЇT1Q9P'deVdke"ړq9̦`T1tԥwhѺ'Y˕Dr~!H*p|qw.@m@H)Ul1ئ0m;W 3HHȑuꧠ7cVͲSuK_n! ѽ6.Ȼޱ_S6>ZΡTW9LR8MpATQA#׷!8(*@b׬pi1ٸd/x8Z#*2M}JW7\;䎸9U|4\(fomzaF)罆]_ i)0 S}?I׷g;Ù>~_ llm)(%bq|h΃Laƒ-5Wm˸>1 UTʣg}pcK^0R+>oZ,7S\I-bּ X8B»vLlfEy-KzqUȁ4`G>ă)'PDW\R| v tzu}WU=ع}=}˽ r1,\?ƷH( ,Qz݇V0m1]:&7t. '>N;x$ec] {%CU MrO2gHΠ@MI1i}D¯G1$8{1W'keFpEt-t:RVWs&7ǧ'8 GV! /fԮR[eAR~^ }Bqt/2`p~9OأR lr#tԑIz_I0 3 צFVEc>!h1vq07IYqa~9M4PFMOPW+impi:3X4;VRgSͻ:A#/"i7E/zQ;ÅOWBxW- w_IXT6@z1E@mSHDs=oHzWާ2>S(O Kt'=p/dM2+b{$gbkJ<6e2(m]OJ{q=')a\@i^ӑ;aIJKfs6Zyw*ҧ2X`@(%WMϧn<^YvR] 3XBOb0fm0lѱ m/`Y.lᰳ@xfld􍈠p&YIa]ISǗ]^էr aIfUjvd`(8 ;UsQ)3%XH{Rr)ZIPب{E֮\|=d.3wW>aa~17,d# RIL4eQ֘h>0q^|M Q.6Rp-!sH6HLȕ8ȲBJoNLd`y?_F L*L3lz'm C2-&.u;;&zCSO+AwٷrK?ɲ-ZpMUkWg1JȝCSDy x8 UpmBL13 %dFr=3NZc3`. ?Pà8Q݌I%¿{-( .y4m 8h*<kf +Ř_vծ`;YNݚx |-NnLޞʉÚl1uwLlʚт;. Whz@]&~pEP}BGE?CTy&IjWlzPmrn?|u0ժŽj{CBFCoI.Qe ÊgXeK@;O|>zr3H ԚKmJቻKV1YQ^BQCPys.-" K ~F{ܸ- v˳!}]s?ցltVRUlo*d`pE ggO^ 3*E9_qPs׺>BZ,X6'@~%,H}+gfJK "G/+!8waY57T{#N<#pp2OK4Rn3pGI'VX؉!3p*g/iݘ;~2,&&u`3` :|nIXĝgǿ\w 2EXA< ]O1J8\D)]Zd@e5׍ߘ7.w!@kr܁ ꒾/81@DhYާI~]LzzYN0v9_WA2;$SwOfI Zy 23XLZHoੰIoXn<Ȭ 3K!qR}^1pn짐<#TKֽhKgE=n[7_,$˿w޺m>gh!;5!nDI%M.#%YRp|Jx]v4R/T0rraFp#Ny/2OL_m#3-5? ŭ5o0wIZ"%c|\@I nSzٯB~@zz n_Nu1*@y_hكfs ~v24cN Kpb\@h\/? 3v10C KD̓ 8܁u\,<]VѲg.Ie䕖r74 qh'>8͝ίMZix΍<2ryI'h?Flg^!ċM7攓K"qǏ(]os{DPp3aHIN pE<3+]4"'3άzƏ#Q"y+)Ն0J7} S򹀬0J8GU:.9:xW"h0][U9qIfS8Պpjgp}aسk/2I:H/8B:KEëꤴ 豝w4 otyu6z&.{֕7o}9 T*$;1ֽSϿ1 ؅GEKVGDkEY@6 ?FnMg8YK~__@@#W'l7{#Jg>R`臈uC7PNBV/5䩣b3Y<20Ax25! n xck\ڟxqri 'Pz5bmBF7twLgɬ5h/pCh?ՀOLh+Bɥs52"\:md\#ٳeMik X\Sk;g;/05]-ƞay5'8}eX t^*ʚ:5%T>bH92U@"P *d}P$fS/P^oBjר4?j;Tr+ ĵ\+&O:pm.=R\fp E~x,򂾷sMQΚD/jVjEF_}ir&r7]~x'~|ɡz"袪tGztcVQ!K>#_y[ث{/'Ere $,O &]?dyzi18rF쎜0a{ zBH顱ţ=X \"6%H8G!Oœ{]Jkݾjt椑rRy-7c .*1QMdw!3=w@MSML'&{r,Pg{ؚeKne$aXF)hEΣFz%`RMl$._qܵ3;С DFLH*mv)Ok5Jn KjM\ҐEQ:e^EtfJ iRD86־btSUnfh=]ӗn؎)4:u{:P,3gs @ˌK^t SaFYt)릑k9p % $ t#E|}fɧB?4PY 6Fb-v_%IWt꾅33dǧ:fVC\dQn 2 2>v D0HQ;f}*CV_ snŞR<hY{RIMƞ~+vIĪѢn&p|k':0N"=)ǔ/bː}CA %$/ >P"Dߐ/̺J{n\5 to72-TQt<@\¹^R9G  uRثa6ӝT]k5yj!~M{] 1n*$ +} o}c!;䃒u-ÝDܠdQfS񉙊n׺Xc. 9RJ?i`4 Ѧ乍lP f!m>e݇a05l\n!)좦$90v=li,6ȅBZ;xzY^~n@WQe94uy#+UPU -.Hlt=-8 ) dH aa\,iĝUWbߩS2"z {;fp7[>TyXnipk ,x"›@k fXk5.>}o?T;"gMQ( Ubd +[ ώMM BMK$;5;{cćcg!l}`&4f}P w濰IYŁDP`Hh*,hޫ}tpr1;H|o ui^g55 "l8ՖtY{+,i*c>XmQe7:Xȕ#C3GGFѤ A@crDžwnd d?ƥ`(E.疗S dwgG~޿'(P X$s%my3 .h-P/ݯW |J ,vGcyLxCNunQhZ$9 Pr^># Kդg@7vd@1)[TPZQLC( u{AؗlY> 4DnU7o(j0J!҈ƅ *y)K֕7`/Ms.q]ݝGQP"-L!^ҹS" m\fP)>U۩v)ÓHrꀝ_F{ GBN;DH)fz+$7a Lh׼ۊ;4'W^d<~r6w wX 4I.}mjƌ}NlЭ°0 ߃I8FYm`UlTJ!2t(RdT0*Tv;xܤܴG8VcKicވ!QC$vgӻWHA%"\0Ep#VćיAi Y8;M8 lֆsM1s1"sL6%^ 3-106QinVCK;1UKf:YuՂAֶ )njpEU஽"/%F@rE6^R T4jy}.4Kj@`Äs62=`k nKAX=ȚHيzG%+ 1"aљʡMy!p>kt/^t1f++jtŧ}'wme'9qrQm⢱m#771ՈƋ $Xs2{P5pN[F L"S+"Z8S|I:|؞+ď\ vTo{yN-`A;=3NŖ F 2H/{=]#lnb3 hZ̘5T*w֒aW-\ ܣmc1j+pn0Q N?$kt~+'ሃ"#VԇVε1K>tIևri>r8~DfInTSyg05~[+.E:-\i`* ս(8qv-]픇,,RM 鰨Pe\)T\w)WSXPi QdI]o;gSAJ6( j5 -5`S;VAhR<\.zjVsikϭ{O^.qfs:b:xLLѳ*hcjKUXJZJ]TZb 8M;uC]!_o}R!N"CV@87K/&N Äc-[РgRT;/ 쨠u$N@]AGKp! [rftҰȞ ť #$E>LG.S͜7I1W@(IKkkk+Õ%}T@[wV40kp{e/"[FNI[*1&WWMBMdzQ/9Dv@szTh0t{'=r b1FN%Kͺ6I`ѳ9 "GTh|ƻH|-a4~B'P&{TkX-#9u lnLKGW]MU퇌e:g86 w͇:uR reEU Xaq?' us za_tZ>>K=YyNMA_]̌ܵE$fDn ; z<52θеnwՖuskjTE 0\xo*Q#݋Si['I QRTX:\ݙw2s`@)A$Fh?lcIrw }6Ѫ: CZN_CN, ٢&՞j M Lfp, ahk=DA7ҍyE P6;׾w+j#ڡ,򫗃 UXƖ*utឭJKNg v]5I(dIDe R~:Lj8*[FDuTd0&U3m L@]^l-fX[tIuM\Ռӑ?fdgΒ1يrw~V,x Sߎ]Ծ'& ]pWZױqҍMrrExUj/1O(sel9z#foCB]@UDᅼnRN~1A1f6)Όj#€߁\z^$ZKZؒxoЕZcV@V0ZUOfBc??}fDx%Ds ɝՐ(~E̳/k mB,jP+b:u>yd"O12`q!Bh]vHܸ-t0 |HHL@ U(j*y08"hK/Qy:PI;vsXb|,`竻#C3}=bؒ$_e*Tp 7%RL vE_Wf9/jYFΓ~s>kς@\Eç2GA:9n[ esuɔ},.8 $z+-0Aq͗ Zl5LmzƽN\^,1SxB%6ܗ󫴯%5tRk "IԸl(E\0m¤rEcđW,pd}R!tѶ ՘ke󮟒-xz|؜hqYl8W8*EjFXK"hCFV 5"zB_=[ #&D^lqթwA۫HEN"_b<>_VxY:n a\$\5.M4 u:Ndc +uKL^*i tmU |Ʃ"j"Π.ɵm [9̃͟2Ѥ);s3UMػ37S=d1C#SH:4L̕*FɁxflKBY.| pD _6Ջ cF%AP>K\$jF]˕_*'-;chFh\x i̗ YHb qs~Aq*G$1_'zz=b_i#E%P?dJ2L( r`5W"Cg` 8R bqg0|]lM2bZ&}wxxFB$R1AVQDYn]^=Lb{C}05$"Q5-"L.Ù}\h^e;cwH|D8O8BTRΎ 0?[=b!X">n<^^%?Jf[VsuϨ8gadv+hm` %^V[Otf՗?c#;ٔ?m͹ 5hz+cEY41c个Ww6_),Rk[Ѧ z<,UIEjZNNv'|Fa[\KALo:Vu(uuG Is$.6;x8Oپ*Ep[<gX̜1"K{s+m lk~NHMz:[=T4۔En&+#m&1-e홋4"}Dp9 8zX!gdwUmQ։,yc }J;EkH[!sRwiOhiBϛ:޺;Hӂh~^#s/7 uy.@Ym$VӀ1^q!|G@CD$,w ?GGSٝ4w)+UB%r]l ]&󈞛M7*o{N6F!c7iyD1c*l]®d8<t^V Ef&C312+0 [%,g3VhF$ms*e>ad!uh;S*. ݚWdr+Ch ~6ȏ `Øu-'i{]4p4鴛i f.Wl/x '6߈C/jE>K%%-J\`LBs)sF_*n,z*/tr= ihӨ[ ˑnP6KOÔ+,ˀI?KS*3xLd(k?zKlMݣv6f+wkES'>"mA73B#< VH (I0L)tL!5V=׆c$0k+:_䞭!'jZ8L.07'YK} _"cjJ<;:DGT-/ࢿq'j*/JA&.p2W5= |Q']גcN|2nojXĂ F:DN9`QUUv?' \r"?) 6{Y^ ȯMV֘G51Q˿7U‘U TF<,E7];"8iy0_Ri>r 4@ s`1Z$/Bń[MB -ϒBJ~Z"u+~MNډ)\b_9M1o;v4sEftKF?* Č+2Q#]|^ȉ'Gw\ G?[dHqNn {!jLD0*\u aOtCP3 B%iO>+wN_5ikC9}W@92@mB/De p^T *#AM4u1%ƵMG.MC[8oXP֣9~flqGfk/_Md%]7ZPCmGѧfNn]˧uDzMQ Lb0qP6M.b h ;5`qWSWͲb͂@ʽ)X 󟨕i-?OCc@ͩlߟ 5C􃐪–X|_pE~Q%zfl&ϚS[M2r^g?ϑXp/ N9܎٠s[@ni2z0@4 qANW#DV5}K rg*y6 bG%ˎ%n(VRLb79\PyJy$2 P=@5bp =;3R8HQ>y$S=/+x(p?*7w"+g5q.~t; 9eBD T6LƝ`-%w|+^D@mXcԅnƙu@Ui(j")2m[9v즤pb̔'rn.NR k9X.ӛY[A$>.$[:0Dm XW,6!*k\ժ@BZdlh!aFCdR f"m巐-o Bu,u4~ӳ$&Q5zA{)8aܺr&$qԈT\ΰa5ޠ!7u Wn?ٮBt޶5h$ȮBNoKwzhtqSwQ ܙ{cdkĽ{G|1ye8|]!7/$:`I%֤z&p}K O曬 ڒ)}ij8b{$4[IckWrs!gK*VJJ6f}1{e֭$$BywEM:sw j0- &_",4;/%0L\aiȁdrNXi(wH,]VǞTb,gibj\Z s6}qj*Ģ]E%'f ~ ; /X'éḐx7BVP@Cĩ{ 6i#FfY=kC}J!pWm6yK}c%uL*-r M{;X$S&hx/5EP1U0D=v8?xުƄ+Ûk$7lme\i=RRuÛ6Jf@ԍZ fI~_qieH"95q `>6-tyEp7yb <}9eX_pv^ZNp u^E],#^GSvD@L]_LoPUmhECN~:1,WVK$mPY^r_$Sj5^(BC%UguFIځ{v!0<|KPeQj|Fz@RP;s&)HT0 r"pgIgΤ;~/̵>"QtD4"I^zimc^x5h-#z0@WjE)1.46~V[gNixm۔WvYw dou|G)Eh!?٨zv42<Բ"ƥW7sg|l$Mk0HhwRWPr>c006#;eA}ެ]QF%?bnR٫b q5~ʸi:%jetjIiڢ$!:cQX}nM^PJPv:0 3Ѫ;QC ^s&.GG>޲70fHZqʉo"*irZ_m&qf5U dY$_v=JZ%Q0器상t컖@ZE0+W/Ǹ݊LmK`{(ob! g>qslodP85ÓUdNBsң 24?K1a_-v1vX"{IEkTDt~͋:N1!r#KջW9BbɥDhcRHKdz&r_gD>]cz#h}j^i# ҕCk$D(>0>$O6Ep݉ѿ=' n "\mCe=Kw8POŨE$ڱv7I9a Inutꝷ aq9Ag&"W6?ޒSB~0N+4b!~C;BE#rִ%(([r|?!SV>sorYg8d\Morsq6UOhE [ I]em4MbUI =韘څ3c-E]9t̠Hߩ nCڼkZ"jC@f؈ Ŵz,c䴅%WF&;%PX`rpy2L{qY dtf;(hfO@ sbtWs) NxSU<+L/ 3mG01b:Z=7 UgqB@h7X%!dM? (>"GkRY&|;ߦ[T?fWVHf n9#JxeL=Xu7}y׎m˯$I{jКul{b Ek9XKk.#NN3#&C[8X)I0Bw8Ϡ(g;Kl8^6_>A7XPٛunw%j@ 2.}>D> > }E lւW:4Msӫ֛s ==7{h@0a`2ni)`'<\ %Iw)~%[3=< ^;]iLzLÇq-4k5VkD20~dKjuԧX9-B6S>נ,@H`+.~aoۋ(r07L Cb@GL3;Nwvc !Ő.NbZEG#GIܔ7uqQۡ  +vKǘdi~GLEP 9qcVꗢ bgy55_>t]tpK!|~q6qXͶ_ػSR۸hI Y )+_~-=uJsPg3jNhyJw8F<5yj/R?_%ȡt eE:"9W-Y^ OwCQHylyM4x²dֈ8p\p]N@ :$6VG /.Q<\};&f F/;z`Ohh`(HyX|K9%<w+5'CQ!=\Rz㕿G $F \VZ!jAm*Dy?#"HV2_Kn٘pJ"Ƥ$ AWo#';1${Piq.c[Cir(4J 8W9!S=2bTsXrOQLQHc!_bWcEւt8dƖM$*v5)MBƼSxޕAO|jossZDž YszmXNZm1)AM=Cfՠ aB'UN[RR)Q|U7Ȥ[\,9Q qã:AӄblAM佴S d}H=6i;1w~oHc_EvЮYylj% bauj}7BG93Wh82TmE3Pk2zIWRi5w!*ҔP̨&)\pBZW>1YVq0Jyr 872-`ڠء62ei͓AV\@Ue$* 8]oj󚴈$`ohQSN_׃X/?4z,H0WKQ76>d%/7IJjO(^@$u'?av5վl=_)Oztǖ1sf>-XtZxkj5T-@/:T~%IFNZ/BRXR=~s%AwªNW=$'| @RƅrGIjh FJrȢ@64)05s!ߞ =~|52K9>W,Vsu%%n? sŵW Y!EK6M~&?,}2T+ HFÌe~%OO aK , &y=ֱ̲|U* |Ԉ3ږNmŬ5݁')L"'R *iq#p_p ֲ54LtɣmpIC݊F荇 Lo7kW ۗfˈ%BBt+{* wmOsd( *4ٮC"MZoC0K5<ȃͩ'%zfId E`:ZoT_@(\G67 b4\G|Ziw鈓n d -Hǻ{C·>25+þ K&shJ8=bes,Qqd/As)Ov9G*Ct/> sӥu 4S;8xf}LJu*&\5Q$iӺNrܑ6#=f틞㣏!JɁSk\/{r1_uHf]31p6nx꿥r84mj7(f|Q~x[’"6"o \Eew5>K+B[-p fb4$kRӚ /#Exxd&?2=P۵FbFޢ%gY'y&+J ɣѯEh^d }xP;bS zC0-4wowgZbŴ(.8`n7IyʉgmEP[d̂$;vF bΛl2/ lBnLB|1im]  o܈,᪄c_Zhx 1r\<+5@-Y`zOUmL oPlR<HNfնPo;a|[Mi$T.w tݭTI< ~${ʝ,baK#o3gG>FצpINpvY٧k"؞?k Q>w\cYJbOEMo*X7flҔ?5Ӫyz}mEV2<΃ [J^MǤLIM3'!x%cI.T 5Dil@j=25_0UX rw$aän/@cd< F[<]U⭠_wj?> ;8WRYL*RAgvXhzځ*ES$2Fa[="hhJG8S r $^9WJKf'warf 0?Phb0"% D`dTo6#5Joë~e-'eGo[.&2ӹLi6a$h_}HKs6; K]F ᎑B5צ9KCi;}39ٻ#7t:,sAk\=cb)C?l:u?`K ]&ى8ݗk`*cM&U`.G5Xp%<'ND//iT`7C3c[ N`,X 0};ը=zR^ T~fZ9 ,:xZG?NڻYnDŽDYN2ŠLe:&6>!LvKQ__I=g:q>5G}#HB<eʼ߱Jdzn >Y;)jC^ob8w-hżFj7ܫcEIi oO&JDsF0qcM- C'mE}W*+-nJHƳݪ>~4u*esku>QmaNcrR4/-X܅Gwdv[RI-$Cl,-"i 6 k_:n.:)G@5g#&]0yF_m A*^>a5z;)hbjJbwp& նYmtj-|D a Y-a B\҄8* a6ߝLL0nZ`!joU&09i<9w^Ա>Xp\cЇ1vG{N(RD ,HWZ# -DNI,:ڊs ]A)327Z!U2;bA]2@uρ3OσRn,!_N_uLar<(m:ac|މ݂37 Z9D#+qF:&?Ma(PC|88r?٪\ĵDiNK.%jUq:+XOB'@&O `kYN[Z$uXyGpo;E?^]3:3r;HUj9U]~W`hͥ t>8rP]llEgsp +E{{lM¦[3\e3wԅetOl#j~E8pW2ݴS::pE+#9Cߢw+xH+vUC)x͛I#:RWk Ǫ1XśYq uzNb9k"246JIFz:I7Fo_g]FH7ȇ BSQO%K vH' *4Jf}4n$qP+ J`3M|,?gOnAAv?VtaMgӿ,JCp;TBlIRHn8djӇ$O,v͎.nLk-s)WA' >ǭ3U:BY/a$w"=?I[*n i\=vVpj5nBO 8x]8Lw GqYRQ܇HuRF aٿX5'n(UA݁#*AZH  e@XE؎[ǟ YohN]ԬϚm^#)Qɶ&8!ṷY cXtUk*D4PVLQЙ}7~j{.q6ӰbdȌc#[89|n\S{,``}2[ߗqQ9De.Cb䁴ve#!V)4_ }QH-=2/4Y` mBPj.7Ѥ5;8]ұqlSbƳAYOV1Q_mItZsTj~{'إ̉ǻQOg~70@ RS‰%;E?ӽz! =\?!L~ "$ 숹EJs g1[Qq5wRH*`$цpl"l2V Ұۆ27b9~͎a"̞`bEtl™ kMvް~ :tFݩu هľX&J|͌ ~Mm@LO9CL">mЦ<(#`Tn;ɡbk?Ly9>~}8DCz8(&X x&^a*bٲiຼo&5&a 9r_<A!irzV Axbnj24OD-;&u7wV7srD}UB8IB5\oHSL0_Cܒ-Ne(0q腳.?{!}iܜ|B#v>ۏGS22C̏1$P:Q WsJW,n$6 mNLo@~v-Ī+B8gEqpJ4UOޡGZD¿#_;IzDYЛy_Z2X/h ڦbkE<+oV y]$ӎBWڥZ%{3#|bO :2r]$R"عTJR;tL19B?nI)6t-rP9;ؠ}9A0RX\AZ7@*R*"5>ch/"j5&e26WB CQ?ѶAVexwyx䅢.ȏjT$m=$@ h3PRwWER{96)%M g'J?zV IegWjA]MVڷ~&\Ui[kqEPD\0,3h=ZE}Rʮ @m6`#miR2/x}w3,Vٳb CԗzlI檸v$C>Ţ]E8)b*E ezB q-Ț\l DtbE;\>5^K.;鉼iFC*`2w$6qj]-$aSfdS;aBmBPz~[Wy|<= >i$Xy5F&#9!ys9SS?gbI]fگ$n w`B_Nr䮁MBƉJa7 j=өF"RH8bJW-\?lMҤ:ز ŕBdYX2-ΰѧ\ټ9`Cȉ-lGug/v"%eJ W(~  -,׈=\s_we?a4Ib1 ՑT]q4}{ae~ַp"7L c{ WV[$鎀{k*Z^՜^)n!Fo~Ҧ8xB|)U+ Z$oWRI%4–uiX=_/W|[8m$-R(pct-^މqg-F`7c~,.Gj @N+fa Wf`K?;׼ɗL^<" J)yTJ<*dj)(u㈸ <ȸl1V $ƖUP]84Ip tpJ/ͩ3xǠ/PX"*Rhܳµ/ QH J/P#39?V7> .Og[rjQ/֫0kP<- uu–EhwsJK?Pb鸎ROd7cT+q8"V\/:uIggT"Mk:DWPwya~>w#zǁ4#phnZ哐L<yۯpqtc||:@F?9e\jaB r'"_ۭf%LS491zIԽ*]ZIɊ_ ^ɢoVn} 8d_Z r 8Xy[qGJُ9lknGlL':u'$x+GEv;y"/W>ӯL;'5h _X{`l1HN! nmkn6 DD/p@IV;1FBz- e' է6/HeOGhr猉Ψ 3w=}β1[D~ցU rEt\{o<5S6/ξtaxT ?'YyztA#,4q C(x.,h\^c'L1:9U]z]C]~\?\5nctoq0#p|zu'ɐ$v/BȞXOU@2_Z_| 4abr|K<8kbJ}/>.O*#P,1ڰXRq1}ϻMK3Ax Qhy#HgfŎ`XckI-(Ph?SǑzrz4={tgk+򒛻4$R2&cc/nHA:#uO]HrRʽ䈊j] Qrm#1p ۲3HP]?t( UISt@&uDDuEAQdNRihXK^q݉Zp<|@ @3V; a1ܘmG2rBjx3'a48?AJ-DRӊJMpn`StRNq*7j^ #QaVք(2l9.i$|˦V/LTP=0T+@xV7O/Ok;D;{T7_$ݖ xhDvNf 98;⛈B ]s_Oc,A+#4IAjQrʱ𘘎5%fk3, c[\u%t'Lk .9B;T#"^#(_,jL@B'kezy傌,;Ki`O7؇Z2eT9e\O4$vW=2pUD% &txK+C~œjzAQlZWě9A"ߍ]%H.%{X:=ם>44&~UYNr,:2E>3-rlN{@7D9P D͘KMbGVy5R0şx0=#Q\tzG:TU ,iٛPa{K =$:nV7 k6b|6GeɲjpH:+EZq6`8XBk2Pd`{b . 65[ѿiPUH Ʀ\ržvُN!q݈􅸳4H\ڕ<(O|jf"~ŗ3Wn`@1flGU 0bbsn^@=T[ %"SܵCI6$E&mmEZ}#MjhlJt؇푝: 6|tY]iųts JPq.Uֈٛ6TNUhw $8iMMߋ;n7ȒhNl%v;10,㜇KⷍP*fqo#;{ S[ܶUn,2y)xO-dZMnFx~K' )QuꉠNQ"#fm7v#2{h±IȗmIbRKp5T$F>v 櫋Eېb!eb'GqJ`]5hOQr8%•Mˏ/(#|~j'B)wF)mÚt\ RKg)gey^^ʗIH1e{%vWZq 1CNkk"º,-ܿ,e.>.Uhh4 UȼP73ͻ pdN׬ZbB]=7"6|0_oҡi8Le rkJ]d5ٞ_ˆ BuW{ ^r4%T:A14@i fțq-A noZ#ğѶ| .KVhx2}\̔A+T a|xVVU] J,#_FXFvirŪ  :s@2si7,[1t$t9) ;AVv8"*= ʣ34\V>p *e]Du ¯!d#"It#*scr;cxia.7S)i`Jz F=D'XzZ]rl#S^؉O\$o-'i,8k?qNv)q h u`>4X7L]"&@-ݵ+G~`oS@5D^}k+x.6]e:J/b>1Bvt Ĭ;Uo쫍w~:[\W젶A6Ѝ'bytlMԭh!b8yȃ+DLSg ?j1bOmpZh9{FqSf‚W% \\s*c`3,eD)yHYgsݔkjq}C TBj擲39 Q4 ffId%O|lz YZ OX&koHA~Z ~ mR>8/ҫե螳$KRG|((#qLaL+X} WӅ12-nrBӞ^wc5 ,'idIm=]7z?/?Ca :YBc^1˦ ͓񬠦!TPeA{TV:0Dwz6 9d X#S-\XQ:E?8!SijhO-.ӘWNlѵ&>nE[8٩$ ٳ =WTߛs %9nDHt6ڗ࿪' lPGy ?af#v)uatG>p0< AU8-+h{Qo勖9 HѼHK[+y72nnv{ٓ5)-}782k`2' Gk^+ גb,0~Sr8NGշ8"1G4^KvT9>5_hF7664bcd4*iżZX5\15=:5+Uc-)*mbHDyR ѸPUY06 vE$+u9,N*'b# b=ct jҵh[|UN0и}$/iB(@ёVgߪ:Z _0>B i`4v4ÚՋtF7-_vķnke َ!'FkoĤhF1w先;/śQe- fԼc^#&y! Gz4 @U-(H~@cEt >?erh f!r9geaG~uvr$qlHg܃XchJ}|x(gx#k(t̽ѱL.*XB{?F@_0Q͞ˬ= of Y11tm}N@v]$328NJDWdQ}-(mar>GZPҸU^'nW2'^᡺Jql{ç$sdoTc JuHªC{,}Ȅ`(ڔo-LІ"'W8CpN;rlG9 o].W*3) _S f6R_jZ&RA\n+ 4/l֊_ǡ۠?I)yf`A:wc~^841$"q OkC10"[ ՠ@9tX羝͆ϰPPL%a% wUu9x(] p{[w&s s:IwX|i2g @J\XS2\+Ѩo'-7 ;NUj~pzè[:wūKxcLt((B,n<;͖uxTT_2"D[$̄wJ24 NCg.OHS! 6'1K$8R=sWUPgDXB! V &xOn~wdUe8xTt"G# 2#]åEoԱ3Շ~"C -Op[aἫ$>HFʏ"4tD߿I R3GYv.xR%0$ͱtmmͳO{~Tx5IU|l6a粩~^8?*B )e!|l9l\ȳ#7YM/}!¬[mTF ThV͠fAF Dsde+ׁ |@z7x%prqbkAUc: S=* xxYPM.܇]noɘK)u;wWza3㸩 welvp@`fpk~Am>qY~$! C"w՛۰n%vBq*CwCXWGw ,jG.;MLL`YL{ݟ/gPPNnaߦMV&ҲZf:5`w{22;<}iyAnh[ xIXKn6Җ{n oUͦ2ZBPs UD: E\* $Ţy!klz]UEI?z^‚Y<fjb 6m<5iB,!HX,ma/5jetIa.Kң=ZAsp@!Mʭjaf+\v 9E<_ j̼yYVr.xN;NdUr-aBT[9|ͳQ b2`zBaH. ؒJ!K I8z˳wE\ƓLt&Aܼr44o+oVf OPcRjvT?x}Bk2+hQ ?Nf8Rz2C(:b[6v@or9G=>D'@8*ݝjiIcU;1 Bo#h:NDT>ht"ozs6rSN7CgBH%!(Ƶ*@pf e@xd~4ޣ~,:ݩQ;.jIH2AH }PtGph/k^ a##q'i0 J?Ps?y+("" 3n'[*<w(zJmltI/(ɁNT 4჆=W-wY/2n}Cf<+ʾ$|T\t|i6PǵST"2/30dXFx{Bk}܌8ǾXoX,%1[fv0" =2΋8 6, > p!GݯG9nr k< t 5.YDPDq?5o>]pZ@bz1NKm r Ӌ@ F6԰*ax8GCPEv_hx. <ѢOδK,jJ2;NCWmEI"}y&;jB}M:뷏 wsb\xDNd*Sx-fØP*l0Gad]K d6]2r buZ{}~A8ByG<򼐎.B,P#0;9Sw9 dp'y¦\wr` hӀ; YƑiu]O:#mQ.r=aX:Rtһ} ΩQ}>4e0<_d*Lݯ#.oK%}[߶FAҝ80[ҩO\ յ6}t\kw0?1KqE4m 5` 34}t {w\a tjPNWҪ )=F I\JQͮBkͿ{V).QqtqQ+- `Qd! <\Yy#Pʣ 6c&Oݑo +W#3]Oᡜ0: T`$k F:فT~|nwN#&+;j囂@<'͚L"|ŰCVJ,xBHeِFjY!C歛%p-eN=ق,DNYvp͏]BYo+a- VVs~M=ȣgrTdiN($2BBWO_m\&fEs MnvaZ>t) gc$L-n[~v~m0̹S܉nێx5EV7Ci*A^|NOu ~0-xxhp(J'?چjF&A oshGY=PQnpgnJ/_ИE"|V/M֜ۼPVgE8 H88Nb8|l #t!v*& JQe=DX|ة0؆5X/O> ]/p^jΟf\ݟ`W \$ၱbE] ^^s"6Xgwζд+h)o:a˃(!ΗtND|sb`Ga$36X( J%3"T^d$)i mR|WdSE;63- 9_zL%H8hWWXᶎGW )1DHڎ.X$[{p^l)V@?8XJo2x`ጏ=Wxڕßlz}8sԀ0 > /WS{OB8vwEljcun҅~>tf70n*&n0(c`K6Uƅes;VHe-;1$]{YꜱI=a(oF˄1kE'\̰la]'eux|{,Rt ǽ~+~`bֺ%f yNh~ɩ˹$37 %,HyzF,ߟi"6syz*{NծSv" v`K2TB/֙~:K *0D v|&/BFR^:7D.T y"3{J>/߼K/HI[*Z䐳hTۛ*zRee칖)8EGscN>Gun0)+!ӝʶCڧ)`~K#).GGZ6oL, \-. 7gʻPrgAd4G9ZũL6A®=R3kGH0*[FN}Sr0-awV d W$GFP;r3s Uj*`˕@̷gI@4EDZ#'ڛbye$W6]T}n";, C QlҀtV|$<2}!jJ=ɬLL<Tq03^-q"8ϓk-bTe{f0[|'^%_B~'Q$p-+c2**{20G9& kΟf/ء}fwh\ KO%%IoZdF߳žĸ̱.SB6LeY;7S _ J@!ķ{]50p:Ag<7!5R~+\p&MW[A|^ª|oxWZk*I|,&Ozq(U`RX\ˮiA11D!XGIVFK%`rҋiM?r)ӽnAwzhlY/LJsHbS5 *xvNg։]6sbHncAߕsY5Kj@$:H)#_ص²dHo2瞹3,\ԅqhSZg1=BEl[>yG\}wWzծ'M3W'@Y+RDPGz$wdJQ@GԺ|z,,w$+ݻPMAȻxbb0 -+疳25߬Q]R^8!ǩ 1weuB,R}g vRhܔ8XEVNiU|F9{٥BMg\RKm~orq{ x\]30jP2ʣtpkmFt*k9S1d@  ~/VQio;3)rg%QAxa`_E_T,-?z\)|=p<K$ηڅ >7mI3p>'r u^h4/:g?0RٞzЈ_.FPڔ$V)Y>Ǻ鶎c pt&ϙ嘈:TaUEIܥB>*Ӭ~+>k\Kt]}Sy>89gpƧ۱]ϧUllʉpkyȎLwJMUțHGmDd}ŇJ.43 bcԷl0YA~P$w bP^R #6=c@4q*8C5>\ t zj*ug F"?ɃpD |r,u{RgZ  FX<ĵE|qM`ջ@6*psJx2XM+m\8peǓP@_l$z6{f Gڞzw!{۹X⡓9L~YVu,nޛӱQ mRiJV~^dR˱DIe;cG7\~v.K0)q`ĺ˒~?x+lVBГd#OGB`ވ]Py wA<@u_ipޔ 7FB~ux0&8/\~ɮl9Iש!x|C4ԩWmx[0yMi]D0.&?Ǻ3?l?Ht;Y%*y|2iׁYڸcY,/@bv62"ӥ>40JRƺc.^,F>}1"'c-X(#o'43@){yBNjr=Ds^+j+he9l+t]:˵mj՛=Sv&̙yA$Au+J\ڌqK<.be$wG.QlD-$͔X U;ϥaqO|i[r6π1'd+ -x(pEt/fm]%Kp`GS2xS"S|nVmb[[-)1}w) }&x`_PB}4-2ou":&P+Ȕ8 OYo!Q R>fa`/h,{!Z&} Kl-[G?cZ FirT>\.gs=W+H+i3):W(u1qnYRۧލ\ 9ksıla@=N|_Яo*X.j]Pʭ`U"U;дG}@b!>) 81rnAby%1Gn!WH >+ BRVy/@iF~~Go$ŭ;!b;qB9 xQA$GV)pt|{ ? :O7x9J#G$5M1  <5LR.[ i©fF^ӣc]k"MW QZў!V5l306KȓW*ޫm~<stE΂M.Uګ6S>n)G^W)m|=+T.,A1U7Ԋ>t,-d :Y(5s3MOho $PoR_ gmňm"!'BY_T>^f _' =3qeyQ |o=NNLщuXă0Ν|N>pVk6H@Qx+ ƒE8Zx~`N$?~Ia),a ђ=?{G$qJq:8Q_ܖ i'$n(Qgvz# _0#@1Krf*<՞ {~[ҵ;(tY G!Pɠ.\\LJ:'L߷|<٬ҫi%.G )ۊ-NTwғBMS@{2LpQQj%eD]H&Y8~ Sy(@{3cPHU]'ѵ碕;c Y1z`PP{ ݀_Œ^\]kdAԂYhW GO|e~Ę9^ /]x'0j-N`xnm%scS6Yx[m?Qx8!= ˤ6 3vh/7{@P2"8s+l n x XJFͿǪ[r>]oK1xYuRZ]Tõt~o\(~HEO`[׿643vv5x| Rāx:rPW˂>#pÐZ:JGc1_r bݓYhxP&x6`Ȃ3YkKO j56jr<qmPWcEGx5[ #IƢ$ҐdqM}|j6h{dr3X6J5Xhޔ\`N!/mF2ZI<z&칼o\ؕ"^[TUEby`ݡ":T?$"^VFJgZH #ٱ2'2F*C K[Y27gYD=MpPDjK7 :e_+>"Ev0%J,Iz\/j@Ze1dysl6 2tC6&TxDuA#zid)^)ľ  RS?C3}2 ýr_AMT 䍉уTW?AoV9`g9Ўmug s bpktHq{ ׄ5o%=b_=ܢLbȎ@Vę7C͠DLr1meSk-9H WgTR#=DnVy pPg L n7L0C4I!RG0ő#}/H,iT,?yG$Fe)LOs8u@RIYx `MZ$S..1lVXvpbY-@kU75 _N4`ejkwx GLo1ԢĈDtafWi2~ü0ӝ{QbjE\2ދv<!W2(@.ǣ" @aNL%W&7Ʃb͓il%9MPw T%E_>)q_ CZJ3L]]>u=9w5hy,LBu$(1cvW4йoZzYXظ '){K5^O(tb = Cfv V IƘ`<~4noIǜV7RQ dY+H&j_"(.K$QL=7lf@XJԄ䢔xt"S,$u!<, %GHW"UQ`WBcJ P=X,}0od!~U9gn^|dHyU+[םz3!gU,붟{=M,w % c8GCx-aZL^),3k+ s軘PzJD?{Uc,P]V@n˴YaٞJ*,@Z7z)~R*Gh/RE7HݙrQΏ)1NxZ7,-z2ixdiƚ1ZEyq\ӭEM`[8V{&B՜4v-'gtnbm4̍;)h߭#QKWOdž{_{NlHm/- Z:5ܦKܙޭ!pksAF;Wh8î

  • H=2`ȲΏ负KZN˽{W['CogØ`[ Lb?w 7Y?`PҒ/ zbH̝G+xBZ  Φ6KHKw2k~ T{YFMs#%~}3q\ѽ%!S-kAbl  ŌVB>Tia,ЩdwUo}wStƿ)ǔq@]"-OV!cc:WCcʭ~XV51c?4*x O^߅X6Yy>^2UR]F_A( 7昝gZ0; Tv#5H\ #KXadb63Y9kXO#oe ꙎbÐA}05#@ƇPE0M#>>᫱uy$ɈWBYBn6hJi5:8>V7J iȭZȢ5G4h2G%q}e^nf\ zdlݡ0^ ,^P4 *] MzY%>bۢU Pci0 _0\D?E&hրZ_ݥ4eR.aσ3B&O`#]-!'I"ەrDg{D%J k_IFek_&:늽2)9EWSUuX,ƟSxw 8ݐbS ﳘmKv!Vx>;on~3/ѩr2Q>`R HF~ܖiels,j@ )A|gb1(=4:Ŝl5Ak\>`.'@,4.y6[}lw|gP6J3Vos# HF(I͸8j2.yh4]*UXDu 5c4S0PEظS[soBDnk"WnWN$@VYH8ynH\uhU% (<%*W =8]]g>&Ų_|= IWr4WƘ2+g|KvŤTq8@ H,>Y_p|Lq#4ċle/:(qS'6]0lZ mdⓏ#t A^&WWKaI2e- Z?. eCl}խ)K:+ &hq~wZ.uO -.ɥN^.u.|igM}-Xi[߈3[)]֬L!lАTg6% C].> >r೗U1Xеynԇ^ᬯtj1ݪ0c),t|6BӁ_ؿO[Wcϕv%oi Zm5ڲǦ8=jB@y/LF ,8˗!jh6Ц?Xm_jP$ep%>.AڛJ 5:9yKqR8<x6"\h=9"}gb~(w2Þ98U&+)A]I#=#{!-  |o,H|Qğ&'pٗo4|3:u"y͙caK!5*No-dh~WR$PbɌ68h=/nݣ(O=9`#Iu A4cUMh\+Xg)2>}enκUSǫ/T|;vzJhL4zuU&^:ȷ0`*p00KZ1U+;,JDc5Ce{bkYa`[QeBl$Vnlw2օ[!>\eT W`\=1䮜ЩI*CkQ,!x M(I#>EQnsLҹ^Zdꙑ8u\ ZDKxB>/fgrcArOF}*my!ӄI j]#uR-ˢW_p:W6»"+7:o_mfFE D0LEDBn0-2$kr{$L6Hj< >x:q{_=y4q9%-&H4F'#q̧4,uH4H'į;i3붯ukG@I} f>nY}n>Ycm U:*z~_Z]eQO6zӈ;v|tGSkj .\NSkJ6:nZ#eqt-l eR7p,N|;*jZ:R%ۃ!E!lz4rt~W;l pFߚUڃ68#(-f^ $-S(D}*۵ll*XvZ.q5 |#q#NTE'j)/lkEGQW|NѼ:N c(Z "W'("ۣ>$?vu ڌdÑ^"6† Q%(&D{"嬳B ڬ"=*#ZR՚fRGbyARuىJ'G&qR.G$%.g]Ih_z u[JCUځH٘k\vDpPl^3(TS4Sng긮Ϫx@doEig3BϘQS NmġS%@ 78Kb񏴆)B=ʐX[$?R2 f^-!@󪕪WVwD6b <N7Y!Uk첈4\J)^n:MN*p;(L"5N[7b+8q[ɃH6_hGO +V͝o; > 55Fra797b~=IM y L܄KFmWeAm ]1CmO&)+bUؕ2*s JSX"@b}+LύV;""|TiqiihLf! 6E-C "|~oEX1jn\-rnuAh``AZv[;M$R7Neti9uK)kGlg>)+_?O~.4DKZYHRe$(S=rodxYlXOM{bnG`+M &lO@WOo˜>ϳyu%i7cZYZ-2?IhHK:e !קӝwcx])2RbMɂyDiξr&-ѿ{Y!}xL 8Q;M}Ah_9gk2"_%=ה(|I5nj!\{eݝV>jd?@& RbJi\_t\u1"&<+f8J-XM3Rne\y̅ gaB;4sL 9th,xLajIɕ9YCemKHqL3Ng%MS8['cxװvk<.pLz+{'Ե㞰7|ǫ q_Jey ̰Zj8iږBa%'_e`9=_"t!mD5͆:grq5OgАߙtas l2tN纻0ރJ_B Vowclh4%/GB:I^7(%]y*9Ba#Zh).;yF>=}=X!Ę,{|G@);Btk#[E6<MB/4Y{;QԄJ*W|LpUzyvQ/b9kt7+XDR]ASB5Y}<#V&=~)RNsAc`L,D,$ĦN?ĿFCMP:m:GPvn M6 g""dk^ ;%(ZacN P!ƞ a{LRLyū[,'-Yc=OFvͷ^^C(&=%FWֶW1⩪:xÌj|ۯMei$A-7256a ْQ##D+NzUۏt|P O?^a"PŸX;-JSG([MV}P(XkG.>]“L#lx|›(J @K1pL&ke)U^= gaC,-HjnO'1êNt i 3BTH\mX2/dqD+,ߖ:s*epx .կ耍DoAs:kt/<\ !]:Z(qUNGY ]=p,qR}H=OK]< ~^2`zrp]nwg\7~HO)C?ņF7oђ neGNK|:G|{Ɋ:9"ӽAjfLC'94#v멹dG(0s3U!V->ɫ/x|B,S.5E30ӯy\!E1 g>%nDzƯ+m;e͆F2η#>W`ƈ[2@d'#&15u>jƋ8r:4s`>"kVSE1YR#K42s7b okZCe^aN)Qu|U!=H7#UGBn GgNퟓ! [–̫UB FwI) G/cեcy7ةpryC#/ x)!.'(<)e'=8Qȩ0srv9LOfT[lU j^$&n ]Ab-;cŻ H#u!ALX~eLf~ۘYzDVZKCثH?ɤernSn`˘O!/W6 LC).ӺA } D_H4Vuǯe=ЌƔl 3Wt$Vf/b'?܅i M1t1넌r|#EAgt0mYh{&%]Е-ʬWT}˖͘f(GMȉ`la-y&"K"@98EZm;ԓ6 @*r1I%yfA襰 1X)sD2F :;NZ3FuGK($aȆPſRс&Ugg|y;j ,GK/s,Y /ͯ-&z3t9P*n\4,\u4<2 pQC/Tx[P>N֧9UA x=)+% !&sɰ3Af3]̨mЌΜ B 34%Mׅ{,HP$W?t+v^}![|]f~Ͽ֩n%ZZ(]k1[hgc6+(~Nljxs Y*2ÇT+|W13;wu:aۮx],B44pY02YkX߮DeFxZ?L [XZ>Fzq ՃamjDҧoĸ,jTP_!Ci!hԴZO>fF(XsP}y7Dĩ1clw,DEN6HσvW%\|Ґc^vKZƯ=O Jb )-F .;; %#y;LjaIƟoF$5xv!@e-!io3dB܏EDQL8(@Y Ts`H^l6څzV/ə̴At~$M,*q'5~Q8]m 5c15;i{K~rur]ڂKIP:(vAFxNm*Hv.\Ujd^;pPC 呬5]igyU՞llmsn#2hu!'e)u.;@Mw8ܜYÑ趇1Tk-46ynoU R#L*ڼW T)"WVߨ9l+1x$b3*Ʃ(^]QCJTD3kJr єKIzֿ{{EU"'jdUphGa{d )KI#}\V}!y{fOѿD@rԉٸ-8M0ZI6 7W3Dg2aY|uֽ≴8)~e"1cVA.Zk?/=K0  h~OPP͍8Dl"@.xK 4 ܑ4"Oj3񹡩2] .Lwm9';8 GP~dGPqK!r4wՀ.mO|X{ r/'B7W\9|:f\n^^+cNX`P"̂n'/8"?),e#[(lUjb] uׯ>oμ44PJ(>}[ pMa WSwg̖e?`hATًG ld6kwDr=0 8em~wgE #Wk''c^M R nSBn!4}Eۤ134;XQ2+O홥nnrz1Q\bli)jֿ(b :"}#Nks֭{j#!o=܋>W;,֜t ʦB$sܹ20WM4fey9y˖l uJon 0i>a7E4\3QiMjjnHM-tkDI59C\pIeN_.B츍W!q¡y1=1W,|֠yPQ3#ش>Ȭz5>z'koV'Q?jrVBi Y#y k|lQe?ԦC{YOlqb4_SPC *  f^hntyXEaN1Cs3gIb1|xe"JU6\ܖM@LV).qc}mTqY( ͍[6A}QV[)ilAF8?N*h W^X2IƈJMN)o}&xx㶜7]p/iO> \gˬ;bR^Bc8Lcjޛ#ANOAb=+NqYo=#Ja N°1u2$_ަ$6\+&"w6A7X]#Ue+ -a~vQɔCXu.؁J{0SzYlBViA }sb6Ř*Dn=*}dØP U |n4X_-!m_"om" a*1(hd,rY*gC?+2k+՘85nY!$"ĎwtQwM[RDvO%$LfjcX}'XUsktkȥiM q^Px5A׽+!kx׼5/P:%ag܀y5$dV o1.ު1oVHcwp蚈Y7r ݛϲ嚋gh2q(>%^!"bʿD6oϺg:[yy3wGkWRS!i`J㞽tVxWPMVz "[S{\'Ё]`sOV0;א8#MޤPVjI8Ÿ7DTix9\ ju-r&R`f?ea~? \)4ΖtJWIFк nBMo.PhJ:U;{>CvM()m3jFWX_p-jvn'+ e6g )#i¹:zcNT`FY*s*=YNOBH˝6rG ǶwNB `nӎ7R0빃Vu]f Vg.ĉJ3คJ4Vi:iUF@@c. OAzD]fVVu2S4+ |&~&7뵍5J* (9Bv _4]|!XKӳI襷E%EEk a=/l-8')Ht[7侅̹W4"Dɏ2.i>㩟BQne_tR{/@_8?,L| 18noݨlmh&dT@'~f쎫Q$_{7 M AtAIvHUQRźkr =DhVXu>:͗: ?u۱G\)-1VQB ޾w9|;6:4f~BŴtm6Q1>(۲h/6ܚ`h9}WWv 9z_:0̨E1\,%nȎXv2|Z} _!OkݪY{`3ogÍzH7R֦mdf˖wD5%c%!2Ӳqei Ydsט rdA8< 6FHnoޑր vɗk?M?WPg!j^ L}8: U9~D倢~o}p)fhk(HUS[_Hx!y%o-E5?ix -F<,xֲSyd?`BgadP<䪶3*F kzeWm)ߖxg^ ,l@WRZuoޝ$`3 WgFOql8rk@'rNqg[/!=x-a`;)f<j\|?TSLO6OR:ޯieRoVr(8eL?k&'"|S/w(ABQ ҏLf/PU34V6`F[JXRU*?PfoΨHQ$. `0v}/,epgóP\R35?Uq̝^!&{dԊsBU O؉#,(LZP&%xaD(Ah_ Ȳ4oL?Md Kb:p"a6K#q/ŭ\>b"{F,oYmχNXMFz:+Dۊۢ?g0* \Ecفv{VTT8ٰg68Hpln Xq3.Tbϼ һLe!ߎ T#vՈnEQdjj113#e.,/{(p'4*,cO& ucAN}[MObqNx  NH( 2EFd8 ).~# P7V7^O:o+R@4"n}s[p% sz:~ߧ]b)F'UU \ڏmtAX6BwЕ4NE㧋_-”ɿcrxE3f4 9ƳsJ&jG*}g cЭ樻c S3i/]']9^:,)zf2tn ^ZEw֠gTL x*/4>`7C=XӖ\|kf[hݍF"D V`,=nĄ W/e "r~T. WK.tSKq]ֳu+iAE11zP[~ $I( }2՟gȩ%:M~x*j[auAu$n ~Zw`\*cMB W̋L}:cVtG6vUpRDS \=Qv]Ѿ)B-+r*PEDOH",j`)꟎+ hl (U'X7Uɓ2`6|ܭxʺV|&tJu&N=`^H?,sIT<ҵZufB1d`9QuɒL'.OŒ݂Sd|/s5J7RNؠPSuo3rеEh讑kSem(W^ A g]p} ~] 62F5kTSʝJf>Vosuq,cȋQfT3.U3r%'u?\F5/TXΝ RkpCt$n-+Q&k8|LjVcAN {JTݳ(۔P.x6=QvKqN-<ےa4~ yΛsEob|aW5*Y1<|fj:1u(A fKHAሥjvC=z`qakgxJ2f1%ƶ/5/>o'GwXFڳIA~ 2\y[$=<--8Pk"7>ScӰZ8Ϗ˼oxT}`B#u%+y-7umCg){,|zrcӱ+!Yγ:T]PjP(V11{֑XlZZ#OxAL{և70}2@LYw4%( BHEU j+ChhjX{:\8sL4ig9T$2K 4DܞG9߈j:l4t*.xݑdzGKtP4Gj,$gXU NwM+1W aS=gY EoZ`)ǹuhԱ''| A< ]_? [0^T 𯟇7Rϯ6Ť],l s=;?H,)>˱f?쌎=Me,j.߈Y+]-sxy:*9J boТmqK Ldӵ8kDX.hc Z9OfQH7]A"暼*S AqcLz]mئnX犃F^0+n&"=u>O8~f!U )V4Uz%7mژDw苧pPɯ[PPdU DNf75'/߄k׌MP J#+kŐg+ ӏTLkh]ibӨ/Ϛvs>ya7xGlHy5jl ^*+A0Edts uцh u^AV"}RT!}_[™2FxAe"'ӝz7}4ĺ'0`_|nܖhЀ9Ɛ0m\X&':IkHBc(Cߒ;gg Bzt3M2S͕zSZk>j ţMPΩaWl8wQl̯H 1m̾e&=K9>ڳ"t4=JYrҿH񐄗5s/wɧm1/H9nLftvAMAj0wHU6R#T(ovpҍzOmcy_i^@1Rϻvɽ>چ#'aYsnej1.ԕ&i2ۖ "(*CH;cnΠV R!GB$udԨ * o3a2"5 L'f4!:x¦'L^݅l6W,EWNEg럣߀R5dh-&t;{L؁[_owkcL2}-=KI.WYX4E^F7Q// j]J4F9)3"~|2vWL`gu-q_<#_hƦ(Tt v _+Nѿ|Z~Kξ_?0;M%FφMX5GsK>>%1@O"5H̱7&-a4"kх |;ū5_"gp WvIH| / I? ehYEOQm^IUg&NQ0b(L`NY]XUC|'v6֍I_&˧9q%lǿ!kԿ{c!F[!KQyBX ׉i"l2%/H2=nNyyuiK;Q9F@uL o.j׉'1ٚ[HT_#ofTo~3x#c*+L)X(4z(׀/iT鉱̰ы200?ަ=R>cbB-P-DR.3e9M 4VbINYcb'A;u|t09aKo:)ye: 9F*0" GGidv!%Fy|N5{a'\=,RT2K8`ÉϒX&8<$h(i6L<B\7?[q& 蹯8rVOFu>Oe )UM@qd#ꅒy9mC;}@d16b_w%7M)@K']ָ ;}&j'*Zp4s.qq߸4bfm葫rtlVW)›̢6(u jA l꯯-&J`~]$\} WDh,׎Pƅ'7z12}>Au4ݻs+#0$ۚjwm Y#)YMiӅ;LD5?k EGK=+#5hep-@Ȁ,^#Y\Y3H!iY{G9''J,o qE|˾0FE?ijrv)"ڎR0ĒGk1SJ j/zK*K>% j[ɒړ`8.E#w܅)U99.+h—Sk*Czk<`>.~ԚRSy\6lKLgwcl#w,͊4.)s궗Fl܂MeGMsd2%Ͷor D@v='UāO$ X7ڈ&;)dm?=9KҨ? :ĩ]Zĉ%pкKrO>ha(Jc"&HlW1^ ,hc 7U [@@^:&~W2m}N2CsQ=o[akE׋&صQCrܱ1o/] !|K#"G1%I*0;mݎ͋pIRނYB.)mR1;lڨᔹ Zm@VMcoYyKL%  ?Gn얢i6+NEϟt1+HhUXci\okg bh<^0+'0sSht'֒v4m1:9(X,T6=EL;0/MQw˛f0qpzdP,5,`~lݣT]ވ񅨭q>)P]x0Dɞ F{&M`N iITKQ97 |)wm d4,ׇ!pQmWCoڕ?6Tk-]> (mfIX ilF G`=Q[RC)0긛{jō7qط32pqē*#hM&Eo>V Ai *i+P?fi'kYt'cb ˬ.8DȱeYVXń+o\p3j׹-WjٖKɁL ѽbDá!%.&m+;BY܍{ !^"8m#9Gs,70k+Z? K YMLWsH.5SY&rB,iož4HP}Zp2$v_ƔrX&tfet4V$_/B]r`^ 5ـQsCnUZ>J@ǡDU2SUs/F:ʐ [vbIUYPF8WClUd_qxW]5]PM mOJXyb\ ƥ"b!Tf=U?SӴ|l迏idoH6~`ROv(XA0# Lfn8U?ɿ'! lذ{y0L~] OٿDڶ|o6|vZDߞ4Le bEKf`5v\*F}AAi3Z~hj8OnoyO@u,zSmTs(w:ѷKA8cHۤ"N,D }4zdkCR!#QRn2>x[PzaиȒ h'xl*)6`PQ\CH(=5Rm([E|U$%m s(_MĪz w7I2P4o4-'7;rպ d MBt?/'Od湂\g)cw2 r)ڢ~pQ9+0E|P.Bk¬Hc~]5V,V#,TXmZԳ:Yh : ߃s v%SNm]LW;ԳrOPRo:"TCP'@rxenv]; wN0@8ڭ|vobr?L~6c UL ^>tfQ۫N fC#xUe}K@yh2G<ʋyr`mI(#MÍ[>~FS5; $\~W^jEbxؐxmPŅ4%,Ah:,e:TS#U9:*P Z0JHk!:kȀg15jWO,m9} #D}A)N wk[TY}g#vtLg6%Do U}\!Y]atσf5SjڝcƖ_g˨df (]nuB ^'!Kbegl/)5]zϩq37o2 ,|HHHI$)Ʒ{S<4Lѻ}z򌔂UdH኉K0tnG؜ƞ% #ucCf))3IHJG!(e:Tַ>FJUnX~Ml."odRU2"NSL\qI:5$EE1Z#HFqߨRϾ0. .ip⯧@?Z#W_ Gfz7m +ix뗀F"#<{n!VH;?y-wɥ=ƞŞVm;ǟQi.'_h 2 *K53xqI[ㄔk_ f|X L`+kC"ʈM=10o#Yp֭3OY(6|S ulf2 ௼&p Bx{R1uŽEw˥l bu=&jbi:%mntT:96@5 &܀iT6c*h|kPVw8V9V+/b?/MJ:S^*Xܓh=Lsz(#>9Bbs5SV6icEWNʿA t9 )EG Q1ZR`|n1nHs;lPr1 \FP($z·č֨y պ_wbI 'A;~YRW`Gv@~j"(hcJ8)53% 廓?$\?%G,?7MBac̹>p5L<k^BguQp_R 綦982z_ {4jlغgM3`DBz!<+Xy,(,Bq{ lI tFX8܁j AXvR7dq.ܷ@NF"ZEJ3d?.N!{n~a/kb#:_RQabj[saԙ tGh5;/)(җ}E\L3Y43@& A܈֩`س|5lZv}k'km.)qt9s'pMل1 ] rF$tFZ OrIsa0/Ĭp:Vz[eYƟ; k9zWCዯ ef6kbB* XTM[!Z U* H-J 5hI`fp뾎B+MԅE/o<󱬼9_0Ўdžvm) 09.d!L94"c`ˌãv7 R{AE7K']s9!#G kvg ڠ#'ɪn me>6-n_}8PnWXL;sz`i=_&$2$趎 r~?Jg;hd>zRF_f6)֕⮪Ә)'?:l0` Uth0=6װ 'LDm3#"k`]|tՔ/\=|aNy RA%M]/8k#ܰTgJc7W4b^F79 C}%۝Z6Jm*O>]淬2ѽ5.P0Ţ|0-_Zq* k)w_43nd5nOSķ4:ƀs~itKu?wsdD(q.a-g7-D7W!ma35;8쏥LjTł;!Ů ͓5AS]T-ob騵ط?tJR7Ø` "(VovPiyS]q .%R( ¬Ÿ:K\Kp_%Ѡ)S|KIRM$T7W3=\q8 Ķ|D'DkW:r~ ~/В*Mn|Z|A4`ܥ^K!w;k5Q>ыiRX}#JulWf5(_VmnQlA C#ױ^bGaDܻ Oî"k V8tg[3vq-F i+Ĵ1s,I,r8D{)M6丗 K/XPhM ˪Ufo Nŝ{&'TLXiݏ֊gY-Ǻ*F#O+q@ \1(Ow:.'Tǵw0S,55̷p+W@W_շ@c .bჍ$vFww 8拣oGWɨo\O~q0Ho]Daӡ Sn^xކof/۫4#+x&PJ{{Qo [)r y˒>*0AU(,As Z~̍ w[xh8^f@n1uf.K (ƮXܩ.X }XRċb 1gw$:@ ="$o)0;Ng= tBP{هwS5-tx63 _QvriҺ=~Xgs@wzz€/3/|ݛe3ڛ ,0g{c# tt;23v*_8lT ?$ מ̦XR+-Hg# f=b%҃1yjvE( Es_C~l_.AQ#nWZ^fhnI.xPjޙ$K T;} vZ։# ?W.n&g{Q\ ?qR=]c_ź᠁<j(!OŽhA@9muM1)0a+;![DH'8H:aГ-FXvfQ7?Q U)r}h -t!eqh}f4 w4Ͳvn_9Hi/oneD&V͆aO!-Db p*x]-z[\!y%5qa(M~>,?=Rc%=F'K3a>;g,Ι̗_~Ka $TGo]"`@篇E^-HlC@M=SAtRڰ|R=?B+K6'eLz6w r ѽU?ڊ>ȖcPuOʡ<_o|`F4a-0m&IQ$&P$z3v.:Fg2gFXlPJo^ؼEW| a0R>2yL0(Ӗ^n1oU?[="q|Y"&fG?3Q@R̮#9D@hƄ;m*;m$-̓7Q4F۔Ź٪4BrXdhY*@=jE>nrr|5'a]@|p=P=5v͝ә''(W?) 9,LWU ^Tufj2&1ʧ#e fm^`r[FN&fFroR+ODM/\`9 }xGƽS3 Mp@_ǖBnpXH̝\{+ p. M1yhUEY;+k_77P l.RZd3+VLpۗm3R/&r9D2̦J8{:T L4lW\LVʒB G?2llpө{8K߲iTMڍBt4mXWPYMD y)P?%'wZCs?imClyW1cpFwtcvvU:N"mV=&ڣ*QӀ_C3o6/Y:n{NH3xԐX#t''lw7ĈB3(!G p7uAHsu ޺6pfIW0[f U\vE=(cu(K } 4"/SI8߇f(i5C32P4OC5{BOԓ;9ڨm# .7OB{/%sw j4TGЃaPAeϏ4]#>x??(BuZpO뿭TDh1km tCCʷT+kVfbyjD$Rt5P|eKKln0է%nJx QcTWjcTY+XRhu=m^4>`=j;S3➔L´2FENK{9ya-Z.]_FM5}ԆTع_w+lX64(_,`{*Ĺ;[dF)O3 pl.Z MRF^JS>0Q%<-\u#0h~/)= ꨳ 0V,U{Bk$/8 >; O[zA[Vd V-n 0^g@#D;z@@xu6b(Ց0/B|,_E-EM=ź}<+-~U/E y^>֮SSFbJП/:;#f !lL?J& ښt 9 Ekb'닋!E:&i٩rJw4EO Ȑs1]| nɉuc^TMNg kWW3K?6, G7Q0zHwS7NGVse[fgUEKsBRFwY D|gUn&mΑ"jVmAFagcic D? >&:[bϭavJriS Upq#<}ŗ@ ^ۆ(ܭ-s6D-ch/npo`L8H8 $?uw&7dB2R-f KkϤZv/j53_] 0?܆8ё9:7ԡMuyk'\S/p/C ;s$'S"\&9kP7F? p-!Pb覴~/CTNx4"q0QZ Rx)=@ڮk7aͻN6%pfO›o=vdЬkqwNbJ^r2quybs5.? rԡkG`u8`" /H }]b2)B db>=L8ZZ!E]j}LJe/M|# ǯsBILɷBݥhovv[o.&\-x+gU6ikAr7$13ƵNZH8F_Ee\S1+M,d#-D?xlKΞ5oa0mW٩4Bb "0oE.d߷ӥk- 򥈬m}0;VߋV@mLM*erC41xjrr7 ui[oePo`G2$A%'yʔ'N:\dp(;ʁbW,~[=A]T j'^&1&Sye0b\6,j~T aE^@Bl3C?*Ov1QNڏw}HQFm`{ /2[`9ܗGMrMjoX .fH -Y´0q=dMB}/LC<[MvHun~'jIDdW%:m,?_cٓ~ mv9xNW ~}тG.-^->AwgDE-GCQ;l45U D8I/"Z=ʩ7>8dk\jø wA5zWta[ sbwXUEq$NXP]aW0HB"בjgaRiȍA|o- qdCr1,ź j3 ys gD~(QS"MiYOTHVGq:q_Y2rx1kAx \fϋ5,w~+ϳQ XFa P+\"Z$dިu`Ya m1Mʲl x8h!O|q|"hu=K΢QKNa9%5@u:їNhT56e=Zg?8,Z֍!n'rP/Fd?S (hnv  G 1=ܗ@QN{sR/lY™(pei,e"e- I(\y K0caT `}~&S*Nv<>]Jsh^}ԙW] P&|FK_@B,]Egh,kΓq.ϳk,dM忛zyPg0 /XvR7CjVAhZ&X49YxMAz0PFr&;t51#O'cK"TY\vi/ lo'-">aAQP I. Isr(….Uke&=tɸ=j>s BEx X獟X2ep&T nMwD[XO=(r-|J?V+b W5N'پϖR:>ᜧ 2-,Iʴ;&@-jHN}:Š\RȌŀd&fla=EDTO3\D 90$fRۂ!S5j] P3v߸1 -H>my7V19Sah/ۄ_\ۀ ]RJ(R)5feW?Hb0D!:ً'@ا>WFUhiRF4F2m9 ;; X&w<s yRw[%|N>uidskw h=@F>[6fIPsv;[FySn2n(kP:e߻1mn;*L߅!f EegLm) ߮ZP'MJC]̒"QƃKQ>3)|SP邫-U~GAQTT15,; f^ΐ = a#hF{n@u#V8cNOs[‰N?nٹ-%[sD7˫h+e+r?^v.Pg \'41z+e;Ҷe%|;'#H_nD ĮhP QF=1'>z: ە,x+%J\ty? չsEczp,O-\|`o_<ҵ\-&7D[|]*@OБZ@9j_2pkL۾<6Vd)G 4SzMY)<:(ylaL:y`uI#J}V-xa|>MH{M'A,P]c?(#Ah[d@?$#kZӹxmSElXd 8S67(jR\GS, ^ y摲lp˔ve`+[ZPseI>t_G(cv!.:$5+[ZT]wJN$GƧat:o!T(N ~Ѓ۰yM]Iq3&A<<ݵJ"Ky܋xlĵigᾜƖxG'rtc Q5 /R_<@?"$kڪs/c <4hW$ϙ69`yy3p Z(޼"9ޜgmXV|cRՐS"#_,^Gu :%9{P0('We 2JhZvns@?S8ɤeY~w;sCeD~/#(8QnAomCbӄ~s]7{O!6~E~eb89bNŴwܽ7ꤢ@fgpԙ`)&+p2QugWyo/WhɀC :1zʣྕr f#IKP4[CBp\81 jr˂?K_+ils?Sޗy!w70"jw du3KU´K53JI麙@ERNe2 D-[SAPl[{}둯DsP 5=o5;{k_Jao@@9VxC vGY @]r둅[v :Qv`CkŮ! ְ+4 -k+ǻ1B er | mY3ڜ/iٯ/yܗj^eš(vf" j(cCf7ų+t4D}N\#6 |y1 nT\_ɬļyTӢSk4){ֹIQ;SHnsy 3l,$[߀dpq7 թGwUhk[5b}1l G<ī=PKYHU[7wa-ׁӏR_[޲s}ڜI"d N+,~w(ePha9WQ(zF̿ :GsYH bw;=#Fl9Dh%e\ ms ZNs(v'ݫ5ϺաI椙w+^߳f>®?W' Hಲe$-s>a YOu  oLBA8z.YJ]5 9ͷLuC{c*jkšg4vsPP=8)UOɐLipf+É(sx aYz@T'OÛ9+1Lq?kw oJWxA >+& 7@ia9Dzjd:|1邝ώ4zfѰ:rfMa~Ws|YSIqP$఑,7> 6+gN98 ēITOk(Z/Ƕ g`U滯.ww;qNuG>5ZG#^3Eo(v⪦w ,T#A+ 78$="VHY廒֬u :8?p;J9ud)b4rЎ0k>m'[YrZ7;zǫ(Y-R^e"L.넝DjsT>%X͐w~1)VaRLb1IyjsϣvEJy?Fl}ԺU. Bv / a+cɈ ҲLڍvI|,FzI *1_m1ͫ"헪] # pZh $+]pZA)STiӽL{f՛CkMx=-|!K<]&XRN2ntN uq,x=\W*WZf[&jݍpoF&V%=6F:e>.dv@nAKBQ2Ns|.0tA9PG>}ߣ@gᓄJF4uـ'z/ĸ26 _v .:wܘLem8}0a52{OX2]/b*3.lATu]ua~`zAM&ۯpnCL`s"]q x %dJQօxԘXA)םN*xK/Xo3:61w^NXDQDPRka4Ʌ{yEvP\.n9cC*!b0&'CQM"r>eؤgKwa  A4dy2DxeDHInsc#{Yo0Fw.Լ* GNKrV6@A )YݩnDįKk,[j$MA6ۣ Cj֚Еq]3⯏T]Pem[ v/iY`c'w0'pKO2,)$bUP=m~1K/YQ X]p4[/SdӜ5uAhQY'0 /Sܒ{if*n~Vo2IfRF}tL3pjY_ZT#qnG BDQb.HۏDtANV>bc۞LTLY.[G^Q`"'Ŧ-LBzλholΧͺs Akvؙ: r rgA!tmF?)3 NDF2u~F։J=ʹ0<=(Ndm99˜6/K❉hgT% kEwMéY11*,@T060p jT/p_ele54B0]WC H<6Z>tVn.#mYz9ZS|~OwG e6iPz%R<;X8_5RX`"uJήkZ%2#ʱ9p>-Ķ2塁XS/|ueEH1QJz ՝_Pީd >HBUp/p:d0um(<⶙T"ėRM(`%_a)Bݦ_E^nRT۠oסcg:4ͥ.{I w^饽/+樂*yt_7|T݉S,)?V Q_{Y Hwaпꔟي/%0Fw/f_lHW6r+nbmp>[Bk3äv.th-&Bx;k0z.ձzXEw޼㎑GxRK8922MCNhbpFq.Xn$E6ܣ;K>4=ciĬIJ"d?|bnD㲼ÿy),Eoܔ5jnp# >uR!}4 l)A6QQ*  -y /(jU Ln B,@O7IuBK*IՏz[U_XJ_]D)@cYП! Dſ}{,W I5s岻ŗD1c4Nr$W*œR?~*9(I^&:{`82ځ9mFk s2w(&mFSfK*9vqEo2U} ӯ ~TIz}T;gdRx 7lȄ!"o[Od3E #~vn^-!àZk[B2Y#L?5uMQ8u ].hLrX2 8,2Dք`Ƒv" $ș }듃(~a a2l)orR6݊9+'0cڮ۾.MvMrTX{~,}r=}Ob293iA}RQFo,bv)7L + \(*P أIϫuDІ1b~-Ļ]MIwpO,@El}u[e,=A~1somUD`@lks뒐 j47`=OWK(}1 AŌ__iL)fQg\ iLgg^e]t}I:8F+ymi߂pBcTxT0x771f/BpMB/0hlŅ&UDͬKfD` Uϯ:D,lRM(\E4!,eim9 0ӗ# 4"p%LC&U?ix [\4f i!Y3ޚs` wEg'W)X777PO%"zP\? #j%NfkTH%"JWs$F:4^33ywGw0 [m "P};ǩޕ_cc&QN v܌بp%$xO7Jq(#*HV2ԟ:L*2Nu@s+Q+@{EiԽ l⩶wkЃNπZ(d,v9wu{^Q]ɡRk=Sک"<0\%;ʎ7#/uiPt9T:«D:jX&Na_v*wrѽ{6IL,ca)C"|6A_lҏ_ Kx"WӉHk›tBC͆TL?6˶.zH{aIȯ(Oby@e jN2ߥмU;`!h9:O\k@I^CJ˸$KȨzMŦS ƂP1[RjBiRC+ݒW5[.cAik'< nsB@ڐe~)d??},Gp5˚OEA[ (aK1Y@I*z%WRÙ kaz]AbYa3[X<٫a(8¿ zE0y1:o3B{&C*{[.>7DKƕvK@z`%ư m5rƞFFԅԎ@vPv]{:^sưҹHm ŏ2d U6aO0ȶ!RE:jm3&m5Ѧ |A[3v$Zo--Nt*/ef[(1!ͯDiV UK9x8Q"Ɗm-7ά?ě]v wj-'pE oEu娰 i\<,%zd/.%G34s%#j}OCՉ6k0UK^^x6uo۰gЪU'#zGikݤR7\%I%VzSȎg:ҝNLd=i=D 1[f\] u5Y* ^@[{疜bnwEMV*ecGu(d<Dyi3.en~"ҪL`^e+4c$ami G14Vxuz-vOuthsU< #֩@E=`:D'hGBw!ͯޓm{ɪfxpג\?eʛi>$ Yc,*2:e r/wc@~$N _~{io؉nGN)1Id=֔O/*1|T84TR̫+;O壎#XJ]RiRAՎ fF HP4}F-inQ8K|7Mt=t1f+hoX7'q7OX8.ٜDQQNVLʴ83FQrx6R} i%'\o+ eݹP Dč\x6XSԩ5$52bjyx>'C G.x ʮ؜\3`vԼmA# Zxь({ٲXzDO Gg9';(%W#fǯh4԰Ȱ0X+5B8<IEo~Y/i=_xޅvG+dKUڒ.k=teکH;u0wU~]ʵf\Cݬr0 )|Fu;!8N2([\o//_ gG'n!tkd>2 H; ޟO; U1:MnQW׿J Kw΢N\exu')V.q /Xq Rìش']+zlSjP(4!5~E5ƏTQ,<_i'*flȢ!rV˾>ԃIb9 y*zH>e;aawHxe-eχ}#Y#TNV"m~}sEWGH1FY'1|"%G>|LT3ѕZL5{;`شsG.k-2?2m!ة1+GVNCћ|ͽ*E4 e|$ 4((e2|3weo/[#ȕ} hBknC,]&F0G:KK"OQg>%+1g-w*.$aZK|AZB'QBfP' 2ʖO )720d0nR]d1MĽʯEF|F]DO&\'OT[iV"c::|1'MKM2rK*\M'=G_jrySнC`=fC0"󥇱Gs m-QiT69-1=ի2QȿvloENaf'TT~Hıs)xضikMu^ {ē Ş)Foax1o5S'.^<1.DJ[,&/Ufk XX =ٮ P_m<**/Dɱ}b!P줮,͸|RƫjB_0'併i/Li5?I>sVjsbgk?iP6ԾFhH?J˻2p'+-"Јtm&Eds&Gsi2KM7%LFY-j8oоꊛHH9\G #=W ֋IeϚK`Mv(x > WԺy(>[z&e0 t e0 qӊ;e-IFN*'oIXt{ǒl0 ƋXGw_o^9XMCٖv/_ʺɲ.UJ0yv(N\ևK# P`DFtB+Rz [ZqmU#'*Dpvb>%KU-BqȰ{ ~xU`V눓P4td[ u%~\GD}Eƽ5J(|r|VlϹal>r#·ZˁA7 +TP;:?mTzPeם^=nZl0$%XPIt8vRuʔ{FW?K\+EOA^2c%q}aۤFReqӣI%l򋴐!/jIjOXϕnKDv),l0 MkӐi`bRۑΓg ]g/1[h`#^^R'&^[Cwk@))QNyw${<D,o72=l}6Vaů^RP@lnSەT6H}NpCl{ܢ| _OytH1` //}MlNwqh,Bmp .uB1ݤ>>ea-9)TSH]gM7r28i dX*5d^Ť D|Pm[pb:TG8[8>韺| RDTZU%K?-M#-3ne-L!^ L^ Y7VMy ^;' 0|tjJtk[~K±O|JKfd+/gKąmyL0Va:RAYֱ .Sy搈?j?`|̆XAy1XO)axwB[.:R+g4n> ҡY >o( Pdx' cW1aMF$9(pn2\0w6sxA8:N.\iBh?\ ir2.ql/Z ?\dX`M?r6½ނʨThuhcbeHDdJjlq>ߩ!ĩvtr P" )<Mr&ά)Q[h2h*Qx.{ᑩGbW "Vs;vԿEV ė?>GP;Z2sATAy#rPḬu _zXn2 F^%QVϺPܱ?@ElNophϨ W'CytklCkJ-egTfSNw޵ybՊbvjU)ek's=j0+"qiӉC‚Xfj94/2렮$,(;q~vrS7Y/H9Tw%~M]Hx 2nY`cȳv)!\{RP ޶04uj nAPZƅktT ĪÛ'XT\sϫ%غoՎn`~΍7(lw s(†i>I\ӷ) VL ^N|ouRn͆pPڱɍ:ӜG+kU eج) "eYorZe°h^VCutR*L.72qIR]w%и=5$XۙH1Ƴ1J/rZ‚FHeN7/=ZI3k]l-i}K /^6@r~Hج]|Rv|\D=! vѿ>![xbEg=Z9Oܭ>W"k-VAO{4T62?b]XlMգPu0(ON~#4bP: w%36ݻIltc#SzjvC֮z w5,+YM+.N$-),@+9- =.C#:({gzF#Yl.1S*F14eS{ӓp\NT7ڈg"h]0}ppzY NN/crpD]FRt؜C]|ƽsj"d|F;nNk9H]۳w3L|* WDN  +;%(ya M˜rqj<dv~VRр ȝ#D)['/DU]x 0bcyO|c*ͅafٔ}g(Qf|/z^ V%8OPxô8*”\hM)u$ :T$d/R_dՠ;r/-Rڳz2o/wsI[XLPi#/T+;~biҩdlvgZphE:eUFdn'tl?={ѧڴ@v|4z3AtlxLM~0ok,2De xD%^b9-2NkWWh-/0b)c@Z*$64 wXG\AP邔?ZE4 [L]qsH ,|t9W6!X=^VZA 5SV#9cWO7.:R.#j`yHǥ]:cģlq#tr9"1pZ7L\ˌ%&tP6:Vq#NQ\ T16G Sl{KI+rp z`/٩;ٱFOb BjPfi @}Sʥ%,5@)I Bs >3,w&-+P Ŗ ɷ)<I&䗌8m4rr߿3fDY!hK{hAp4(^%yE(T{x0u=iQ !?r0JN\asKa\KTOѰDII@k@C2НwԗKkke44H5p=γ _$ ,2qR_1DJgF w߯z4!I#r45Jy/kyxcSZBvtoEZglP+'r !9:_By'@%ʻwM& `l9orZk >*ŪlRreE*9Ԇy*П|f댅p0Sz⁾@r*Ey\_{%K.b~$|8ӹ/`22YXO@\a7ӾS)j7+îv)+p+vB{ 9~+~6GrgK<'&9B9"6U6 (rr.cgrH[W̏񾐷ˬ?E2AO$Pov<V9?r_gEX,#BVɏÝ%+AjohKNnKJg읢 Ǩ|и1寒uzǕbowLG9*~RLe]/j/qWAҨR(ؒskU5rH3xH1CT0s(N\$@Qa|S fqZ@-j+Gp>17ys-.ff< t뺝Po9d.\{ N"$Wc".#,r8X4odr%R9u7aJ;:]$r['ő8m4btRHk\4 nSIsi[ 1Wab{ġemfsP ̕!) +< 18 xg4%+ $ir6t?,BdG<"mվ᣾?@^-t6UfѲNF:4'ҽaH3tci9RnCsW06p!頹X(.hywӦB nb5*]CuX*[ :\*Ncv FYKj2塓OtF7SO.߶h~5|Dž+,)s& 3h=K )}Kqqaw4F1ZLe\@6V?;;ZYRw8މuꔹfh@V VV,l~#.ֹukzTA]=* y 5&g+/ՔRo`+˱gѪvwж-zwbCj I7u#(/Y=J D|1V?ls F}4XtZ|Tu]"ta lV}"oVx]q þJ),hfUCAY#pza{`o:gퟖ#^ {?R؄&eEC#cHH >^}.Ւ_z,/14k{}&Q;vD]Pb ZW_=ގN&,ř>J;C*m úf>w6݁y7ETD{lALt9;mc="һy 'lY?$/-]bZ^hgASUhN@;V*Y#0h =C]U@c'MIO?YDIOA1l(CIʀRnQϰzT}Vr̴v2mgswM~w4.m=U..$jl#Ǐ䪿0Ne KjNע^=PDuu<wc=jlZϛ5~?xY E5E3{|}g;?1a po'Za")8dUw/&h&(g7k'>5C])Aff۴A=Nohom:d'?}]1)oT7`ACj_ ̯LX&m@bAzD}O|9;`VI 49D2K4#Gv#'U)sljS[߆M yiyZE`yj2[Ed2f"z؞&b;(\X=ĥT*2*BIk,ҥôPg,I6,Ρ ʵ~}۷^0CHr7K, 5e^q~d(V`@'zQQdc nd꘭^Ĕzp\-nylHff/^~F/1 PH 4KK p\bCIJ}UAqSxk (؈ڕr[HG;AXRKSf7QXth/G+)1Vqc}bF2YZ-gsL/#)6yA TU$E%jhqLPKf$R†Ҟ FWIL v"/,L3%(Z(^۞ 5e(ȯ=/ =/ؿl8!1 6Y|ַE@n@2oj0:)S=^d# CbWT ^(L(b0{+]yϩȻ.v>-WG@Ǿ|8{{+럈ݰ* }T[!M\\Fp,D|86`A:U kc~8(ٸưioX)@WU~H嫢+ۑB-ؔZJzyҲWHܪﭐhpV'3L\r ٽiNR9?n קJSݦj} ꣸Y3jknCӜYVGG ʠW°.ư*N! ǴS ъޕB~/*Dݽ'cWouTE!#GH.1AMcv}N |_yUWx9?B=t!SP27 |>b5x4Ɲv^H Qfx w$4$.!It󡪷]S~1CG5^bŝ%V<NJr6NBK1kKe[-t8h7vif iƣI"Mwtc1N6r-]N0_(Én?> zQvp2m{9·< JW}nāϿdڼ3(N;;\J~R WIkRA=DsۜCU':0wHT%tmDE1~w-'XAQ"LN -] _? W*B{!(6Xha9T+ q/fr+|YY.?uTv_-Mu4CcN[$j&cM>yHh?#\x^FD%y-QAbԉAoЈgxqqK)|/pqsn8)C :[D=yDn?RqoMG[/Q,SI>r+ |~KSq ep(gw 7`.L(_C'BUcIMDl*-y̹ЈoKNx4;kh$ɐf}3,&ZՃÇ:P-U3|(]Գ׍k܁HȡSkQ`/ EP/ xb?zl5fҗ%e7ig4ht.w"f>1I@vOs"(hXr\JD {;H۴BrZt3Llr޸!w^` 0XTkȕ.&*shƭC) rA  mmɴ ~ʏ]&lH f)Ù^ w oF6=4TX~5W[聫(a_H:ڒnC~oȁ\_XjLTcLI~7Ttz)$v#x`=iDޥۭ;pbLB(ffqƪEIaP=EAY /%V >=|eSJxPdؠ΂:scP |ID-1 \?- ޹+xّܙ\~@/5hǻcwRK#3~`bG4vVC' $r,Z]=A0Q(F֗:-,&2{ECgvD ,2c7J*&9zgtD, />[X?I_uIRKvjL TU) xճPm>Sf6J4'e_ ,0HQ}|EAnWG :/]XEt@gRS^y kHu,6qe2J_c-p2ORL#a}>E-?ޞ! d y"aRŬS`uPU/-8AlY!`DkC ²Ol50@^D`Io" wmX9.SZVjVi:xvi]G^'p [JJ,e&Y>V>򲘍C;Q4E5qgkp݁.q!z}mĉ6Wmqzש蜃LXb ,yl pLxw%=ށ*Fi- _;-W m۽;nH%d&unvOK/''H nXw q'w-Lis{dl.J')*V @#X䢵^_bcqu &!L 0V=+:L[HhsUrƙM:-2 VN=+Ln*rfJ|<|kʨ>JIAp@ -E1{e6=YW 8?J>?3;ʼn8Q$_? m 5`O#Eyh4.ۦ+-LZw[6)t/jsbHZ1^lؓ-䆅^{]6ugح Ǫ 1[츀7V陼pB.gzF^eBr; LC"5v]zϿ<` >[Զ|UÕ΍Of؁o{W6^Vmc}d3Tšœ{ܗEA<ps5PW`>X<8ndL4%~㵇 ÜlW)+8LP~jY{hJZ }~"ulZ' na))9Jonr> ݳU+|ǜVԹe0<()ݳO6u O$z"bi7]g ܔz8c2n$fVm[VT Ыkcl =ʦwpd $n/Id)a~6! &AjoG_-]aBQo(M(TԌW @KO,e'6kv<BQFVa\ nNz jX69 (ƶȧuyom@tCQGe?vARb/QV"U$ ;w!{i.Wx,s+Y-wrzV"E.`- lODvsOi!|IsAں?ێ1 !ߙSY~ՀnH{ 6s= \(ۜXwKbt@t(t/DM;A9#k^}ܺv#}X )YwxVډ*W+"?!yK?gz[TDWɑ4o*=1M; sC0K'ªv]^cG],Ǡhē\.z vѩ3͊I](Չ pb6IxNּ>F}Sj+Kx 5Gkja9.js+ޚ{24Gp:hv!0𐏤y6^ kZZPTm":d';QڒxGn=,0M%uHHEI{ 3c: b.E<ϗccs,0nPAu/$z[b%g,}7rQ{U 4O ҙ`(ԜF.a LC)F#G ˆͯw3[ynKK H@}W͔j>M\+ toYۭȱ?8yV^sj]Jiɖ f %ze 4?7@k"Y>7ʦ"!s WG=N v=w9Z%65?"սzsm(Zk3ڡە{<4 ˲KA~wҰ+"^PTQW~ :QDרK)kX\-0`k$p7Q(w|T9̝BSn R;J&BŹplc;<~s񖹐xg^Q8(8׿D{2u;mj;pw=/L(sY=q:\yWB{*P.f_n-:\mxnٌsO$^ !E=MfXt?DFaf" b]cV Tc1dXwqdA-4yڗfq?Xq(]ـL7R r;kD17BO_T[AU3v9'{ϟ9jT BXrO׮g̴ejpThwPCR3%cJ}iM/zl Gyng폗7mL/"=*TiJTqvדQe5FT* Etcmu3CS7D(N; tK4\"pj% )֊X\ *='jWU@oj_|v4,CgMםn&h(<䅭nk۠81'^ +uELSݢ?aj&6D'DiČ)f (ikHSX6wfĹ\b}4BG?]h4&*_߹59#gP< zlD5GMRY#XU%Gˎ픠 O2}]}pe?#_"7cBVn,\[$H\R vL<v"0;ՍieŃ`ߋOs77q+Lu{>]!ID+`^=mH^gʣocD)pc.^V&lClŋI)[2C'>^;CwUh+` ύmQ(,=ƕPgV`#mׇAƜр ϤS1l2+`5k\ *5X;8?;F,UA`K,sv\IAQ!7b3 a cMsèB&|lQO^8*zE(u#W3n>[؃(uใҒ 16G7V䔦C{C]/& T"T$J )ҡ*`uE^$sMm2{kZ6vq#EKEOꬒV`vw&]6! :͑3Wg*%RSl}zg3̗?`5tA1 lK>9P P/Ԅ~ PQX*)ʵoa6)W(Lwǯk+b+)3> ]?z8O\TfrDoH`ˤP)&fns( k_ էN}n6x$6tT/L ^c7p:1{ZCD1",! l}u,j^3{mm&Ŝ Z5sV;d#bo)k~b JNM>-X)w#lMᑊ\; Sg Nr!,?|DQ f7;!10$!%`2.C/=v/`eꄣBzoMHRSȺ>?~5Rk{EtFLvu% :7b)rqo -N}0 la;G3ǭX :4t`+͐3߮A'V lYliYSV@+S=Ofd&nO.!n·y-N2Q  +AVO<냟Tԕeaǻ gF!3Ƅ=s/;Gs@c9 f*IT9{6~kk֎IԞf4SRY1>%>8cH&|n_sbQ_o ('$Pᄵ"VṂ-'51rϕ('Zr4?y#zeOma=Ey֗شgbH.xo8-TɌ^%KW1ۿ#UjDh9S%}zޜL0"MJVX&H݇Fи.hACo0,f&o7JtO8 tq.r]o^جL0j5%v딩KqarFV\BɿgJq/tvϿp6ꤖ]-]Vҥ@s9TxV=ȏL@H3C\'\,I{g א!ߛu;54;7!{[0]+^Kpa'/K.quU`˖EBymM'S$KTdW+A)%~: 桋(Xoc;l2'aU}Z #B4{,-+ԳWܶ"Z{e3'lљ-̤07| dqK̰tQ-A0*УFzX^ ߣя<&!BZuox,*P˧m:-<1drP}:EF{e :)*Hh$q{aDĶGxy8K&BhTJJRŷ +OxL)R5R^u4/k%Vڔ/ t蚜S]n'P_/7ɵt8kl\$1t DŽi ϗ{[sea^&kHgZ;t3.G2,6O.,a1pQpG>^*=MV`!쐷 E^dhJߓޜV2bRR| <1M+,*t)r/6 8U9K{:8ҪR)S]hb̀?dP7&=&8CNq ,ɡZ01V(0Psc~HdskqϗsŗU58bA:v ԣp<ǟx'9nʳ;PT :$~%Av+vxRd3vP۳׆[TІ&!ZH 3QDaR 56IN3K_mr Ž0H[0R-Ȓ\Hxbchn bY9Z8k|;j*z)f:umWb#v[IsMk[)}N[m6N1G(:聘)I[Q{)y#&mr?}a٥J*P -#GȠ>P{ `,{Q#Mb~EW R"9AWTp8G͓ըx `艊t.g=ڶA?0c zջF=Dq=cdR3tAqYΠw󦏭F8ZU(NJqP~R§:۝pjt]3wRiN$IF^inO-C"8*40!U\'g9Ykmid>Ԅh{v\6\i:~CW"fzn0&ŒYgbOAꗄ}$\R +U-Y5,AoD.fT)l `ի"z$XVnP<,iN@{iǽ`<߯Tt@uzpg+d2c.j#دB3.d>mhy +ry~PD]D6BayABZyOMm7{7I#Э)QExMh 3V@ ߋ3+ӞzIox;b|ww.8;o\3,2 W3 AYE-6`T⼈}_z}\EE;|2hTPikHyRtŪ['.BqEQ+<@`8[ ޷bʓ !d[zb{Eyce Tm>rC^sVU= On(#wuiv?P] -`O::Ul7,jTQwHDb dS=ǡ\SЏڒe$}a< VȂ‡̞˧=mA-fxQʳe VUun,Yj JV6*D)x}S3Weߕ!2]S֕YoՐ'Đ6g6a lی0 -Y.%5v=S4u9 :Q=,"fY(ZM~h&׈}J{Mi5ژT6W1io\7B]g& xЙ~wg՜ 1o8J/ΑN=YZ¬D;i#B/?D<ʬi`J.[2*Äh O9Nc*rBKLѻ-IvE]ݟAEJ\Wq(ex ,IׄGrmztӿ,AIO$6/T}^Yi7}픲S&S̬2QakKY>_g #EV1gӑH߹e[x +&? '5|%x"$ 7>k^V2GekN^JC5ĜՈ%&h9[|hsa;¸.p_f0[i8'7z7[vYH>l(ds簗9`=&"DST )xfeC K>aNӝ?Kux ]*hGl?HB^gO]5lcC&e' s#.*E:\bh҉>F Wcϒkc2 YCM~i4=^kq@Y,,_3@6})#nV'슭BYA3}hY,dl7.,.%'=Z9ࢨ"FɑXʼn  zM/LJI?= ]2h&KVٽT4yщ8$D[=<:mҝ5a?)H;8i:} $ [_$@n<}JG$Пp)b~{g$,2!}{!4kNi1)Z: D| >zAkZk"!UaCA3q:˹12:JZM,DKf?].SVxF9=ihbTW~3[^4Q6UI{Z\3GΧP WƜ~Ɖ ;Jߋ쉰ɝFn R ?~jj`ħF4 r!lU/s8,fh?JGw8jt3 ;C7:v'n,7mP!4wAh}&пENpձ}M״ hB{ƀ x q $gVWD ?ΛOj܍؃5.o[+o.VJW׿O7'OjI7):::= %T& Uuo܀۴LJ+Y;C7"(_M$®wP"lHrbD|\$Us8@v7yrts  p=`%,Mk;mNɖ릍ر2*Z Y8]"z]U6Mm̝ ٨K8P8݂U;ZZ_KR_fG$No1#3G[ =a,ed ڕ"n337 FZVVWT?C,6&GdEoNt2`\$` @9q+Лloz:#PzC(6* ㊆TƊ`}ѽ4X5@:-`գl㑻O;8RoiR>6X{vBY.:a(S楩\ƠGH{J:!`˟{yާloGF)_V11NrDp0 FPd%ecTҪdRrCLXk֛G+'Z&CœeOAC`uk\bӰqLźE-婿 "N@|}b \IJ[\e󸬬& u]|gTyY҉GߞuxT)|گBǫVR⛚/Tw-HT? 6TTؔt|T7&jV[DNGPޞUZ, =*ۖN+Vvh]p-?RDTLظ,<DZC;Oh]B6&[כ(Hk'AS0(eDP+[R=^5F2=6mP(mD jZTa'QDG+}|T͜O-n)FHkRkWp*p4Ņwzqwn_£ma $wigV08&ƿMw~ߎRxjK rHmӯ±#͛16߰n߃2T> |<'cOXMG?ĊEĈ5||kK ҆'Dϻ1/Kq\̫$^dA,#rzb rmRuMJnNRjI3z #Cύ1.&q II1L H` 4Y3(ěy:X # Gm7?6!_>zć"A #û"yHO%~J c^ݚ9^[|)"Hd/bt {{%xtqUdq[,3IHN7ov c/ YH[ .KԲr嵮{ts·/PW%y  [x ^).A9GG`~SG/lj^ڿ 얆*L46-ĵBNّ҄GyhT!m=!WZKC.\+lM*Wj5+`[bŻ  jg߾|LߎLXcIZ:=,l#8IM*FRAen}h^qEMJS5쌸)]J;'T-5X i::.5Ob8D|=ԅKj ٬W~\>bB Z,ikKg$kFhR藭"PtR4J2IhcYZ09dH>@)-jRŤϻB <5EKp`!KZV_zs~F*W;;|W nUAQ1'H9|_ g&*HrnbŜJ!u`Gt>Av /YH&Ra j+3?X$mBlg.MI4gH~ct̻m};ZSx2Xte% 3;5vx|&/D{B ,F:c4rqp]owDA>ÂizSSp1;qëyJe=lWu98zKHRvN ?1Q)R+e'Lk)ǑU sڄW> ڕI9%(.-t'8BXW~6e^{ơf"pդ3ųe5LF_ ;b̒Xa- VB pɧ&n+e)$Ѻ:DutUgFF~)HtuG:YiQz¯\raCn! FoZIJXv Ûy@i/EktC.@j #D.I0WS0%C~ rܙ6<JLއ|yW]!~G7+4_-^JE4ֱ16a!+=rABJA>-1K+J>,#*e;e[/C!f!w~P[qN9@ lQb3sV,YD zR›tI\%YȦ0|wvI.6SP!E| f f( /X0wD.Jn[}+ڵ].I Hu ob}t&i7[F縬l.=r:ΎNjPDjo3e<G!׈>$+="y&M E5|³ a$aXO\B#ꞯ[[C $tn }&fw>1+4Lر˰<-BB(W$eżҘ~oa_9L^g*Mw~GY09CdJsh YNF c ,Dn5 E7nO"!^g_%xOMoaEUנ ݳk2x;f7҆RE]o!_/~($]@Mco ANs_5RG~[q\vz6\ϏE#/* Th(AGE %Ï_YrwOG|p ǘ6 &Bg0] x1y kE|B;/hJ7skT GD+wiN߻hfP]" Yo(y]BL:B2 DNS~H49T*|n2"VS}$>D>;4 ޟ6N P<tOD~DiN֩0)dAEybeoU!'ayBO:(.TA]__Huڙq Saz>M8HƄt ePS:Y+徇a9\Z&k?yg?PumF_C'|(wn>'wY#܂x/8<,@>L|yD$b=d:Yj*S6 !lxJ1ҧ杲~?1Z‰vTMm212/ɝ^ce]RD^R OZ=K4s֝S:`) mq}T\J4a_PlHR.)ozi 6l}aP/(JV:fp[$(="e@E%E`%3X~'AiHم`K`d!uY.`gfw4\ E瞏3U3 ͞WbW{AtkbK>g.&hqD8"Hf3oF9^(xsi'קB8!?Rrڂ`v#ŵ^1STɊ\Z¼NJJ9~hQuR$4f O%@^Wd&yORV ;T1|4 +q!1nҡ&r'YAXsݵNC,ޤU)8o״N^tE#8BlSXdxmBGryUv*i?1b1@39k)Q% aoIF1vǛe$졡NUƐLn+ Ȼ](':yt>5"߂>쭛Z(j5m*GlJBv&5 MCCq`_KFهWs:̘dAsF%Q۫28`Iqtwi+|@DZWW ey㬛%e?Ew.V?&>F2 X[RJ9V*/0Zjp"pɬy7傝&SP|-{S/!U'`7og[ʔ=hm]2ʬ7\5\0w{uQLu _)HBq$ғ*/ubp;f~hEɏ:5bEJ7=}W%иSDȎ_{}E )Obga. j#] 2x7JO63QXgYYK<_;D6^\^V6DĖR5zΡiNJNAJtzɌޖ,u!I \o=OREF"g0iy­:j8ݯ;f4aVmiCgHѕktGi"_.]w^nqʱAptmI͒Cӑt|@4tȅJ64j'qYJQ"\s`,zv{mlaG2o*ڛ{7<CaGTaL6XJ L0{n#,gWa0/tAu 1j1WGmcKZO@i8NI'F=܊/ bV. C*caJEa%<++R ',X:nڇu|JGf6XA`(&7M|1(>,;xӂs!‰һAʕlj>_Vuw:Gνx}O8G/҆eYł=ryv̘>*Y( #gu,F8DB !K}[Q\3iC!2vߪ|HNT~HiV8eSjPZVݻu yC/&(H^h%4hHQ=v?|%rbg2V-1@E}E8bI\qG/1$!%=&MjHIr$Aɝ :ײ"ސ:.R@aB~R0a)Z{m*Ot󓐒Eqt !DtkF &:2 _ScټܟτX>Nl[':*FobN`~ CmhN&MW3\ʗWtu|B)hMǀMijP19EB/։H K;,H %,!L y ƾ IDuN"Ds|Td_$:&Drax)kk?BBK^{]:KZSui`^oG# @UEq:`?n^?@[hcUUX\6TY?7$=3.:b.P?!--j]$55MI-ۢ?kN W 4[\Xނa4 h%//b ?5Ӎ~ϑw#ӈJ]:JsU8\T7(a`NZsY&ܸbJm12W1 7 ht%gc@#Ĥ`"JN~iZ I<[4^(b3UQ0W|ZXg!' `J6'*x"Ly}V9+бoSFI|p2T(V|PL-ǚQ/t|wni{WFh`|He%VH\a>/įIHuTegת%;X725bo**҉|<茫Ԁ5sKS׺YlR+-ļ'[ 1$g"~,`Ӡ <;|EckV)}xɩW{B?MWo\+/Cьx=47N6UbejZ`=Hwm! &2Wku I2X8mO[acdE$yFƶPESHVfz ;?0B|< plek(F4$(\fb4J)6%Ԏ[Fij`kzVdHIb |=8 *yêUBvfo}q5 @~\Fӛ-Tw i&"ʥ9^?Ls2 MI4.n˅=W[0}'8~βF "ίE2n^ePQ?Ή\b"ᏻ)''[*\~CJQ>hC{bIUFŽQqFL$b,AO.7W_'8>'8]Qsv*ogPZOA-Lqfy=Gbׂc\,4M$gP^{I4  -K앀jhu3mS7UeAouSĩ,qw!k* b%I^H->nsNJ;&]5q"JHC Hz%)gqz֞R?kL=gpsxנ Slgr-:RcQTd৙Wc1'?;cW9R&TD|px ڟ66y6)5%wp6)6B߳iCEr3zxe/XL]p:cfa$ (fpȽ\b齯a 7H,Gtaph]X恤ʈT )ؓLr"ME#J 3yK]=gDFE=M$ Ou)ΣuTH #[!tڃ#'D-<3pJ}пN#0^(NB[0edQmCO{*XT'cZaF,'hu44,f@rY r0w%DkLt4ۥq4q$tw2BaQb:[H=p|XEqp QF"D~=T$(#vxb +3TkPzWniȓN~ܒfegFp`;?Fmاf9~Sui1lXۂh,l"ؕm?) 3m]8Q%Xn`|tIx7|2oG&IPd q+x~wƼjb2׆A2c|9"6(K$s pA2)GF(@V0!FoV1jL z99zFENV]E_%80$_> =,#b.0pdF4- 0C`!26C7x-R FUK`EC°4|9C%/egb-$% "N"q@Eز'f ltg#_:=]ydw59G"GȆYهEg9#鞄Ϯ:Jˎf!_4JN{E'gnq;<@| "gpZ,ׯ`u$ue@ȣ 0`7  W/L^ dQq"4{"vƴÁ ;8 Mt}I ]5*Cɍ3 wx;nX|YI¨kuAQ/I*!DsL\w~pc6}ymjFkUxll7-砒}M>F$8-k4'٭ |3غԒLq¶GR3%Ms範ד1ǤVB_1&SobS kuee-#86VGRLx˞Υ9`HxZ jQ8!:evUaV̳dR6=v.v2~İ *%Y.ov-iiVoD))nG2T|[GkMX>pOk-jXE=~L$OȀSzfWrukwșsVm6l-=Rz.iL扰 i,FKJ{@[sS)囫4'D%5n F;4I,yP3cRpĄڝ4o`ni%yD}sjtZqq_Pr:X "V } oS/{ O F"/Hm:vTkOiA;yUCY.]gSG"oO~6'x&3pE(:&~k6uCRmep,.eJHt C)TKV# ӌp*3(N_.7^NЪh ڂ'KL>Hgf#s3sY1cjh(CaY*0VGg=WcKB佤Q+>^{ȔT|e[0^`d>uۄy0Q|C{ܿد[L"Dr>V`Cm\qHV0 0%=5GzOfeV: L!G>a23B㌕N}&<ۄž:y`?&Z1(q.su:홣9ڌ<7#O"jI!je1b3 NZ8k63U}ovTzS>,gcvògBxûhve+*7 nH}(NiI?Dw&TOf.O).G43C]U,Du<]RmY6)OyW1]v>r֥DB NO % Ȋ_˪wm^X6,Xu6Pzqمc6j1|l!Xβ.O:ݢ@ה$ | uIlҹ"򸕩;rkw;+2m:{ bw[ʤIDm'`JK Ξ~wzP xز ?mkKf]mHIwQ~ E}̮;@qs2IjÜq e=~w '楄r}fƠVp5n^لP H@|x}@ r'bZtl{:UŌh1',W&,O`f/m0r\q;qF3>5e |c9L)2hXk 'AΫwg Nv%*( n#!\7qʑ'[ъJ⫔Fi.vْi/` S%^3)MD֜9Pl _o8['y,`NӶ"*/?U=(Q{yavS@. bl0rD)IѶӲK'附y[8n~d6AR.3*tTa.!H[ǣ-UWDn&0fe͑kG+}+ 25 mݝɗ8BH ULfqߋmӰcA8g524qLAMDD,z$.73GOP`0/=CT5np=/ 2bcn(U4 >h j(ܝ UhjI'?(UlOB (ܤ{;3elg;q~+[ٚzиLh2Fr8W $$TR2:b>Uw*Iy4ڻ2\q{hǝD fP- R!Y8j2xx}:* Jb cp7n=zhgWeB8P?OHe?Q uXdA06jtD+O>0:u!fkyk7YeJ ؖZ`Bp?AϋMšiY:\`;_e_'R[x|-}/Wܲ>e0^h{2}!Ղc9v e9DR oU"3ȓb4<0 mf겖bs$J8Fb:fFb`C1*q5[fSTP9 AB{$B;<}`0W=L[T(ᆤQFa^%g3R |re*+7?I2vܠdo~(,T0x*Э>Rt1S#.!1((H֔\ZQ%Trʞ%rdzXLuw\=JQX])%ʒGmUd֟c\x$D ${Ln4 h`S=ŃGOe;?#\UcjW[3]([B=>$ ̹LQcf)0t|DuYtT?6{xhvpDw{dЮ&5=} &C8ۖ~EY'vyTr&$)QYЖ' ve^gDƘD1"TNU M0"*W^LO-"TIl]QagYg,3>)%HÄb x6i1y1}3o= )')A" ma.rزD/Ъĕm3eI̫Dqa -;## AIɏr祧Cb@3)P<*{q1#QD9͸s tX@i睇L{x{J[ z2m4I{vSƃ#?<]ˋA'^00R]mȝ"C oŕOW aV?@{OџVJNm+z>أHURi@YÒ ۆxR߃ `8%FE7ܨ-(bϩ^OzSnA,VջKa#LMOԍ*7><_iA5@sl5n|=2X P(: &X}otx#?.DvmTDF}[d ˁ.7NvhmK.@W_ ;DQUl%Yڪe=K[cUHrDlY*&i% <+-/q^O=yz  >n++k,=#FkU7Uy.$oLf1@nn23!UZ/q` Qju04, #{qN(D! #WKY;};6o^ py85  ^s/U6yySI{~NQ徟#Iی#S~7zymBQ ?>:;Mao,hL7,W/x5man7w3QJly?Ј;DC#Oyb LC5 k 'V=Fٞ^ac`ܘHG@s}_7{ks;hQRYjMۂ# o'<,Y֌]_<]6r 9Ie2<%/:0íbm5qN1OEFA, {ӂOE{ )#͙;l52SεFpdi G7BiF>Dth -7 _2Ӣ!T!y]MCGhZGJd fa:eD7N}%99CCcSkՔ_ رcU{TCBزD<52E+sbU<(p=7ۤ ϔaT0=<[QópYI5D$]22C(!%,4&% OȰѶZ=V7}* =/VBb?Մ90-!j!'߆c<Lnbɳ:wx<隷D! {;utw?ʧ"B !!iS/VP7.U˰jfUzl.WP #[p!R@եa1|Z|)ߌ a%kC+S}ײƅσn[j?\ |eJk15\&ɡ4-Ih}ٕ^/f<+0Q mYHAҮR/}YW;9f޼I1\uʽ4ػūto;0*_8g|?H 3eACT DԬ7h=*Vʠ>ri*>xI > KmҜ.IiPI+V,1WMJ|YuCRv(5W2ྌÏ鮟zdMY Y?(2|A65omk9ImWѹ0q`=t.]H5yF}R LF*;"ϕNrFT&n*z&O 1O4K✫na,m9lp9[4z<Ǔ$oR{wHER7 L]HdrI52vE jdM(L6z_"6ΐ^OahhOOV>me9Y?`=qک`˗޾y|9y 5^24̀re\__5df 訆?w80Cko{&!.15^W`Oٽa3+/? u>pW5Z?c&䫉b4ǏalZ3R %{u#:"jpʑ0w ~uzpȲńջVpm%qc 7}RZ\ /!kȎ5 ұFx RҊc,l3ZH4[icuQVu'?T^(-Y&'yMT},׷RQpQ} lT@wqO֦X)ќ*PWG0I 8GRW%_%C0eiU"OM܆>x$v1{DH#UO9߷F~tӏÔ̺r:ȐRڅ#GTL}f PoE1A2=>.ׇwWy dqpHYrPRLK–ܓ%j?9W7bdbVuj2@xcj@xՀBVx̄jfa+=Rn"R5HWPF?t"/y+C،KsT'Ţ /o|P'sv's3y;Z y]܉`.ODj ՕE6?x#,iįXVzCr~2x<@t!`sOpi{̈́.PA0hFd {Ү}oШ?~(Za"Z+Ul06bxL}jW[U _Oh;,Uf5;69=0yCfQ?ضd 9]tnZ `wmI?Z I޺o{\2pAPtd*aKi(^E<5WRyKj8Kinbu I[>AtW`k Dy=9I싒'h,ʸA,m\ | %Dp.Ů?@Y1t4.hSJ<0t|'4Q#B{oڲ>~C%kGڃ{S]m{25HQJK0+qu}sR r@֞֬:pM0wKRzsZ-hVjWc' Z{Ie   )}Ͽpbjwg ^8LZsH;3¾|-сC<-=_}mE[#_q~ 퉙Z00'e/&.m7Ə}fıHuT"*MsN 9@̈́;vݦxެo4ւۏ d}aJv3"(xLsG0#.aS"\?Gҋ"+|$j)-b߮Â*wɪ=w -\p %:p{t=->!0[ȫ;si4օ%2|m%49+wW5auڴҙu4A(! .˜}P(mbKMp~7CߠcNIw X<g~[R{S/&wOGo_A#!=wt &x1I">:<!$wjo9DQtxce|M̴2IsT'ױz; ;վi$= ڪNjVG~X7mw %2Q1M~j|lਧT]O9?vXH==~Hܠ&!Ֆ݄W˩4k+M%pD^gN w'\fHs8z%)?=+p:ʤ,KOs>0‡+Fx1*@te=`DR[9oZ4",ekZl@)mU0[oAōLI[0ĮOO0)HZ0*;[=f, AJ+*no(;^2RqFd䔚49k~i~سE8t=@<T|| B._ȥc^GItT*? baIL\>[tv_Ow8ܭ 3+A RhñOed-:ܔT3 5ҡsN9"&pgP]IcѱI4>PqFѻOm1}%~_3d H[7eNrY}wg#['(,(Z92|*{&v9:nJYv0}1.ڹ R)j[8 q_ Go7<  >;?pc;*^w S 3z}+xqr4OlacĝuF"8$m4IQA: ;y[Gko` F+ZeƍZy ԟg_pگA&=k96Ef1K. 'wDq(pS(tQwfrBǵoP&',V0!F"c(0]H|0Ҕ|mKAHCHt %6]"\@8bZNQ&p^B3*$;j6SO:iz08 Q$-9*1/ѥ0T"ϵraPY$aۣ^+Dلat+y[3WnbMn9t*)BƿK3v.Z:]#f૽~U0ZF3E7 0w(~_,2= !Ҫ7FR0T#-@ >{+ 3cdw|lofyOaUT}0>%UL_j aKYC8!%fzUpM' D5!H~#16㍫ xO<%_V&.;~^>Yv"aɹ,h S}h=@8<6Z':1>>5c0ƛrAmbA%kO\VL%"Mm|S5lgGm}gѸŊ3u.sUnqxFfIvfyn?ԅ[HBLMp;^V>(C+~pXYg6[^bXJyp3b$N gpܝHX{*= Lüis3*l )Ia)OG!xEIy ?bPXS>f0 HÆq)7|[x*{ `W_$)ֶŊ7 k?g,Zm/,tKta~C1U-@WP x_c{d4vu$/$#4AfcYSlɚ  0~T6U|u>X BiEK=ԩ{@U797t wq@'w͚T_w]C(YگQ?B ,OxfJze"Q\. Ld]8C+}CZ+Ŧ|\{ )eLBx+$vM>q-SoGn7Qi9]3]1bϾ3ס\eM$}bM!:R\ןb?~<&;>QX`njz^xsV9\%E#e5,Wcx F^F/KQIR>Z?*J6^H K4^r˔;!h31QIׂT/ ?7ywپ{WN2 H/A@ll#aA+ɇf+%oSA&+a/;Y YeX^䰕D˛/L1n_Ck{~t4ߕn]{}LҐjUDM;~y6 :^b)i!@$V7I"rG4h$"Z= Xgma> R]GK!.ўzv^&c> f͡Vl8cma^ yr_iz 1T7J YdDG/WyoQViJ., 2,f|s/mrsDhIvیa2-b$~kҔ/9#^\Fu <]5d`iH\/S.VUn +Z NU*L<3/b,-Rz2} ?B+$3`Pџ0/Q@`޼|5O55 i2u ƎL9jͳiZ>RQɾdBsEXQ>ԩ^Qr-%T2l&@ $u`a\'7&}^] ލQP͓OΚ.cU-PzW| {V~?i9;.승̛vF<6bdzpm;YXC__exh87e-̬H&(Z!|El?);ځ[9SF2`dia yJ]cI}j6MXI:"z͇Ur8$t T2k} Rڶ㶵$PO!]lߊB_jVUDy`i5!gN\3WNȏ0epN@K|dNx(0su4E)o mAiخD/ T~L<˔K:J8$Ɔ$AzClMPڻh.4$ө>i5!JeEPGfߎ_m9ДӜ/d'MTtlY3#lߘszt )!֨_B5:p-gzTŲOW_/XRmIVY}4?^:!A3D |%+XjNiեQl{3(qcN B~Vn>dJGB:E7#-r4<@%TXygL֕GZ5;Ch^vu ']ź5WKcOd^BqT)EMH9/W"8X/D8uxTf%GXgAn6,`?\hb̛䵾=37H^[78X.9FYwB GmxGV8a]ϸ!M'gOʾ5~߬1僴Er@[S(F.i</}fb (`Zʣ5+j3Y7/:{'k?aO +g 1 &;;% j` f ںgZW'eђH.?ݭ>ԏ?fp" ]!;4!m=ىۿ6 ME X`,ئ[m=ǘ N.ܰ~bڪ7[,LX8B!ŎD3z5ny"Ω5NsB -;ïvG6@߅ Ǿ~Xb]z`N'<>--N5+L oYgTp$>AWFzPg ũJdks ?iF XQbyaBRAo슦f^ZR=ߠS 谶vf5, .6Ƽ Sۭ’%-R9"C݃DNà!Z{ ]Q1o=MӘIE`S}#=M֛`/Ic{_HMF1h Z󸬜.-zN^l8U5ik8DztssBbZo l< 0k۩'3bNa?%PT QpuUEF.&#thjLU$7w7:zE)Oa^wVQwSSֵ4‰5۟4j/{'@&32!mq47HvCs`Έ I5U:!A67ux#*X+^lL-G &MupApml)*.Rq}=IG (>BRz@?e-a7A *~v=햎F-!84"`{v7<^n4^KTЩf?N gwYJ ~TЭͰRX3]>+rCf8Mtp ۆoi7viSodr-R)dKTijfgK9x>o`Q`;i߳Rҵh^X Ef"2y"D<\ &#NLŧȥP8َ7 LW#X5Cl܁pKa Ė_TM{M In_¢p2$i"r-ya(v鴩v5oXe2ƋO~C$sN/ΉML4FPyؾZ2N@(do kzH+++~Co d$ q Bey1Ց~ s.~$ࡉxJp4W%-riI|('n>T:V#Ɠ@KG!C;ҋ&jHzU*+A(|"A6@ᗸ=B/(Y58LN&F߫&0N笺 y2xG&qp&bڠRE_iw#uC4P"EAK *MoEJRG(h g1_ u|M0+vJ tG7⤌%{H|:)݄Pp+zj({gLU(iíOTl$&sWlF5J;0gY0؝y\ZiY G]?QmZx$VMl,C\BܜY}>gY@aOPUi׫m =%HAb,%!]dp Ax tNS( 1(]k(|QT$KÜ\ -C$o;z.4-̀~nxP7NYb)1Pv2Fa& ?M<ޛLr~EˀU_m UnHF*e$ 8YEgEppX u'NX)0IVҨ-Ke;g,RWWR]Pe m^k~F-W[#}h΃yIЄ"]QJEfiCpř=l8% !ƌ؋‡k-.84g0޿@*57h\U)os`1t^q)$#'k0\Av$1=/Xu6DЋbմ6àGHJWga$$'m;Wt"w:yT#-GQS{oPilwDOLGf{ZA]70bM_Oo͛?@oε)xGѠZ|V|UFx<8񣯾֦/?8(Ɏ_QA_Jp9;3fZW[oj[š XZ+CW=&-$ϓUAGBRЧv5!;))a'w<~P WnA5ׅ1uA^^`- C[W)VlI{=} u%(>n< ڑM@!a3~w_A0lK $^3_AmMIM{Ubr2V}~5`B%A~)DŽs!M,ݤZ@Fw'DVip+gWIa$s$5#Sāj6| #SFpū #(L_Ώ{M$o9naX,;-;xL҇pc, R6w4ɒR aw\pt%+_BTL"! QK,tUͣSC L*{eū{ZMag2͸t&a,km|Wy]V(ov&`|M6kA[Xˈ1a՟ YcA0_4O4 UYu!4R>=\lהc:%E^F44A>v{ WXwuUup40+N <3L>l1g9c$'XASK_J䑲yrUZ2[\.ZxcOUfX&z$D``$]#D_k֔鑾gk55Ԛ{b K-9(#('$FP#YYc_y(5eBܤȾrjKfl2?j|E,2[|mǞZbOsv1ÒIp'Hc)鈥]m6wIK{zR䷸Y?_zTvVCՕh~=H*d`(ԋ_$صU9T.*'okPy8@ @""m+~+\V4?pZ4LZ8AQ:ca $ïs @qSAEtR3"aQ7'SnZHtāi8ܔPJ|^I2)eczؑ5=Ɛ( EgnxS*+ϮK(qDJ;Ͼğ_?I-\n5#v) w#1E ⬛'=NvvSy{X?HvJ bв$Yht~o%-I7:o!4+&a<6a埫wHh_3v;< /ڎ]yqc` |UZjFާiuvLZ cSºy߆Q2XR?aʃ%+3pL̩1N&H7z/e\{Y9-_MwgZ.*uT-FH- O24wxx)2'[ co}p/j,߽ V0]Ifu1~6{P#+g*o.fgm/lV.V7" VBBq$G*#l_0=<:/bn}k#$Űl;Z%cu!Ȫ{@brb;$5+ PF?pHI>ど꽞g>,_=@|!v Jo{[o5c$ ,BEu>Q\ 6ey'qXo(y_z1=$M>7$Ev"~}1&e2J{P$N!VJmf(L3KYhe;nN.aZ-`_ں͒O7K J•|q=fȭ(\O֙Yvؐ .ӗ[(&x]VeW4EB Rc3Agoz]gwUi[6Nb7'457x/rhپj?fG\+`vS\8,d@Ô@ U:xA*'᭎ǏA[B'@4fxVupH\TWd=p)x  :m H~ڥiB9mYlO6);urR:kOYEקr{IyE;]E-D)lTqB>~b& ~7BMѶ!cڬ߁I +:`x^õ }º0E jJDcl.] fޘ<F4OrBB_ygmAwc%NR5і\9ctRL}4'ƘVVa]NǏMvxh!0 kH&mƂ Y|o*bX^j( lpl[`n5 iTέ_. #*# I=v#a݆Qeˊ E1ƫprQ)TB&8Ꮂ;#WJC0#)wcHoy7[ES׾ů"Ͱ _ zZhY51Cqh4hX|Wio"b2#6vb{NT0 /64,.Z/2kHXETb 4 6:T;ܤN:(=/܍.,+3!Ov9G"nU_(4Ӄx#DCsCrMnYܮLF\b~X1\T3a\k8e;I'*d{ÊrIXi"! ̷qcf].m]3쓮ҧQs1k\d_N2pЫVM$'A"uۼuЗkd 'ɲfzs&͕-t!뢩*݂7uȿ6\ \kS7($4:NJb!n HS{^]C^jB^7]rRw^@nb՟` jn^a׼B ;NQI=\l>9jJ;^]r. Ş)/|:[:[|;9=-k~`Z.eX_S lLrC*J?~dT!WlskZ4&Fl);>z IY4sHj^oV5" TDd/t]gL7y~nUGWl9ﯕ>Zoߧ%ڃXP0Ģ&O!z^ ov O~d|3Ȅbʰ /ő̈́>VY,Ez'z.IWmrUH `M{1e3 ܋ڮ$8h0ɆxLΕY6MRJ+Meu{!ļ!%pa6@;=K6sW2ktW&2~J#J{몭Ei#јpڋI5,@6{.~|nμa9v)£99EzRϼ{ü\kIuZN&yGڇ|YgGE^}6YYd39'7TqD .eBeԑ E+L= y'EP-B9~Aey^@&(y(mJ\{kf͹WMaN]?.eify<ڌJbݟ/bbg~!r1;_L^-%^J+k%q+gEԦ^킱U(WJFIDنJw$!2>+fFv uOGEYBRVnr/.jHA wtH 5bphAŘ);!bhwb<(}Pqos2$QV4cen>pO*d7H6 ^T/'&t@ -v["]ת2 5:3z\F٩kvxPHI=(Uk>>65Gr^Š8r8캵Zkؤ6y/]G=qyX2.6f=#6gŐi亝YˆWeuO?y(|-[ŕan^L)ÔW8Wl^'lEђH嬧Z̳Ս5hG,q`X/k4y;n`Z]7M1qe8Eµ.rZ@c{OGoxsȟ6\qDMF'$yrQ4p1:ɍhApy[ "۲`*"}x=XU|66E?s3ϪA߭E@3>0Ĵ3=LF5Dޜjpef[W읷cL[HjeM._ej~p26qTxT)[^k@ėV!{<䬽Px߈:V? r;?A>תf|y\&"SǬ)S_CU4B2v #ƑFR<'lݼw2TLkݐa$A ׀C#G@PJQˎ+k ^mL4+~1.Z,zQa7i\Һ h<$ց(Q/]nN. ML bg{ftUZ)fe RO )^? ( 2@VWw?eܺ48 7~ut2&\EVSAc 5tXR(ma]\Mr/f>x|S܌8&ƈ;Q ~nBzӣvD *O>%0TڑDn.g)gYp7"l=fc#j˺![go{w)A=Gk YK}w{a׏ B yK`̄-a]) iYV XƳ~ iV=X@@(Lhs#|dD.1<+w,pH.QUT&0xN|{CP427޿a#zbƔSನkG %LbvV<[2O;|/uDU LJ=?whֆw/М$@ YONFJ 5藲WB[=7 Azɠ}/ɈHm^m^wzZJzG8("sCG:?$%5P 1anf gr5LE=Ԃؗ)XkFX[HTvG"S;5X-wqSeʁղ?sťEc_`Nƶ;q4xzg+9s3j7#}"OgnRC W_gb_,omXv۷|ȇXE\PDAU`蓻0*ۊ5lcF:.,ϤA1^\Q٣8 C!#cwOS3cV/ԁH@"LtVN~;&Q.GăfZn ů/gqݻOz|'"=QNgw"b\X[W$ tG_b5vE 4c׸~N<@\إPvdUhej\__78F<ՐYL9(:BL{ &I:i6(XCs6J/ J*Ju4 ;L˼GscE!;7i%_$EqkL(r2#)GCk#[!YcXpjD> ͛*8MhJ$'`W7Yɏ>Y"r\'rcg\Tj踡@_[v۵f0fiA{;yIYI X}KRf2!-LVL7y.9%WmIoMuܞm@IT6jƾ{o6S{"]7$7u\z`nJ9}v"rԂWabP\n;%9dʭ#ߴkM`);9ybW84Q~UR,2Nբo]DY@[H'ŔȫFUd0>sG h^ 4 ]xR9В[=MF[Tu!X#tԋ{"rAr"l Z+ Z]^1Z8 Ғ0a[s:: i09F֑]ƱrkY}%wN|Ge}r:rqG[%Hl=wrWZPGY$6I\XV>[Q Un >GKo%זm0BdYifŲi7jհj/V 6 =>@hhU%o ~.]sS O(3 H8M-fXgb ?O&-pp)#ŜN oJ#mX?g +%%ϟ?@lGy[£ ,vR tIܰlشH`r3M8mj yt/payUߙfԭs~!]P˔˿׿ ˬ125*H?l? f]kL'`f"@ ^ݯt?Y1ˎ|Pg߀\E;vvnXVm` /ySȱu3*,/cӎ䳥D%RX^»$t1.dzPA\^ 7abrbBViάLïbS5n|BeYGޅi93cƾr a6|s9Ƣ'AYE|W59\c}?gI.QdY;Jr0ߊRʟimk5QV^WZekGM]8{clWŊxqwWg-hw0ִur6uGFӄB8sy({TL8<w*3AIE$Oyq0Ob-B:g0$R'W qSX6ȇVDn Y N9[hq `VYH]}G뀰v@ EEeOBirnzH8c]+x./rTvP(=3.-C*Jm$ \8-<ܒEڤ^_uО:ñ^R[zPbWG[ve{, ~bLY Y;hJw yZFFLdU]]y4MBMXOq" ]g⃮B9\ U}H*~CDVӞaO~"Vf具Xnypִwׄ بX hi؄\ښ¦[ͥavKLWyv&8YRQ.B驘m K9ncr2"sFkda X$i[`:)'&qMo} 8̵2'>b.ԧΏdkPd7!͗i -|c]<#CУEڮU#{Rې:5elVQ?&tɝۍTmXz[y_u9 H<1g~XbpfͶ. ۿYW,DE3ƤggS8kpKQR)~hH!>6  r}ַF@=!k8KWd5bLSoR*\MEwFI 奘fp"g6{hia#"kjgZ&Kk%'}ipIٛId%NIRp!~5յAMx+8 yZ&qu,yM9h-.oX?Ȓ&q\=ɫͨWԶ W18 Hiɋy 3M{25c\Snx?ˆ[7*9;_5`51kO!0!XT&uW\K0اx3W`Ӭq±_ſ:~b,nD-|V(8D~ @^]:QF I5dQUjsQ7m3[\f1?8'P˳#'}pM@!>H>2e=/zTSv@'[JCI_A) ihW\DlYhy|rQ7?ΛpAN^IWh9 -k ?)h%X&k#( sM'st|~50&sqFb5 !mVQz6ڠ, u# *b'3/+лڡ*U-x$P ;H>=C[fꧠ7PʔYUDAi eD NOlNj4xƈބwHtnk(>/~#1Sjfxn$xc{f˺8D[T|X!z~H q\@9EE}C$3ph<^L\\'k.\ewa8'PJeY8HY&]\l&EȲ|v1Sw]!!ɔ hu٠bw`Zne@=YόH͍PX'T_lrtnJd٨Hm6kx'>H7Ym4;5$n%#N,vXF\Ppsԯ$J6)cДq8r,r7 aZ.[LĿx!Sϴ.G lM9kP$M{]3RA `+(7exn˧ 2Pi.{4\ca@/jhg@Ȥ#:rxdqCx>n1!jmr,TAN1 pLinB暲0mO{o@^l\[+6k5=7Dq$CIpDž[p-)2.MfJZ,@T:?3Gj Hu*<-esݫBwǐmͼ__E^l/Sہ߃9v=7(_5$(Ϊp%Qadw/\} gVBf^ٲy+Z7=ElkHbܝcu_CT)8NI58b?U2U S FcJѢP_,%lQowAhAiZ 5DQ4 ;tU^#F9qc; P?\L0>oExd.Rzq$%eM|@`J!oIe/"^iK/s4_Ħ& ʡgn5.\Ixw`D~W tJa%BJ~Vv1Kiϒ7ԳX1h/p47X{X6Y|CBd 8ܩ׫Rc0#顲eDI”srt꺏ڸ0#DM&aq{"YƇ-o=`1A}s{a͔da|R=:"wL`Ro|ܚ-OʙcvANapFժ'0SpqG0Jk2a{(W bp̥M!ovNuFgX@Cuȑ~B$L]HVA_dd:+}v/fm#5y$[sL 1_\KV n'+PMmI8浣(*`B zK&%1aBf )΍=NU90zKʖ$PSgb Z[rxH{YI2ψV' BlǏeąI SU.Qp׼wLA!`IGQGJSn^CMoғlϩM孼h$6IC)A\π4l!=Vt;G~l"_s˓6vit`b޼atb3sfއ&sح[!/òs9J*F] |~tW~YYq!D`N3A|5mH2?kC)v1cAM u#hUfvekiQkͺ w޻¸pr)@ imE0)aQe # :((,']y 8k/w>4}4_`0/C&l|vt(T`(>׼}X#=ԶXz~vּ NsTZ7%aE j?zy鎾Y"Go?X1!t^ "D`eH}(BКjЁlB^r\N*(vuih=hO0Β\S8 T6LB'sE:CtȰIĠQp < @ݦ^,[$=MU*S0 YnQUE=|yZi[iC|}8^,XT#TB lH_|> Uh XRG:aey9(X瞔d!ȦiGP]NqXp2 e?{ybPfvzl@-':D*|~8;{qC#yeI:[ӸͲ¿kƯNWSxFu|\ |OƓMITCv&؛;s} v_ ,oZ ^($s 70Qy.#8|:1v(\QR25y!&_d D"ZF?d~P|wJ?YI̥Ym$UP5etU2݅19"(E_ UlC:enhU>3F7_dƸ ]vñfVSFټV5 c2-F)3U; >& 7ԮF=67nrx\TWGE;őADv)O|r* 9kr2A8kˢ']IYSa>%8|ZJh1Un.kU0ꢄ$ H͚̭l*/5&QmΣ֩JE!usFA4]NA¸Ⱦziʹ&h!UcρtlUGks'7=, .zW-]Š\ןghftMelޤaj1 k -=^BBPx _^*(& P*sZY-Zo>\m"G$l^: K5*6i!F.3+8,')7_*xkm1Xԛ2, ] H+ ʗΫvpꎵ]CCs^uLxוW~ ӵ6)`'8yͯd7T|CO[?c3z"QX?(1)wIimP7V6ĬJ\aJAakh{{zuL5ׇd{VȂMY:JM+nػ|(-BPʞ㹒\7jAAo1_G7`!D돏1"Ļ+"~~KlQ*8oW525tr^C,W#Ҟx\*6F݀Bs su]L6=e&֙}TbR>ߺZ8q|o-PpQͥUHo@܌sm-Dl&|hM榨JI):wWKCX+hSi% tMU|/J.q߂0ǁ#K* `tObYU>Fr]*./%kګߴ>ǣ|eOt|j7?@nMP"Fge~F>fb|wa'w3׫ݴJZbx4 hȏ>rt=f4[NgPAk]`=COɻO2r6fձK&ZzoW',k~9m=`Qܢ~NrivEy^֏wSK%:;2i6)S9+ *Ÿ5+|}C҉~xHo_bzrij׽i~EaEEq4rHU6p6%B])T"9X|u#Y3qB,V>e)fӾSh/y<1NO#l[!TiAvl>Rc]Eaׂ~͗k}y*[fD;&;56%~U<Ħ7klל9hYh[n;zq ]$4JVfn$@;›Kc?-$.EԤW/"497x*Trssl4a :{Yf\!86Ϻyq_dBoM^Xh-kh+wA%lYI)W`hQ(?SsPE@LPTv:bjP< -KZԪQjpž߄FSyǮ=A/Nm,vCuGj.d3j(#=Z]\>Q#bLexعֶ̖6rjF`u BWF ws'"E\Yd2HE ;]f̚ηl6;©6eB7<֌i醐{TWMmBM.9t۸Xˎy;ۋaX`j\'ٯt]5cCtKMò`y!v{%;E֒Vl'۴tG.f"7'TW#C$ȝdy NOE 'L(vMڥ:&=|?!Qi?GÍe(KX\O4_LB4!2M0h<&M-QmAϙ OV@w cU/+rp;s!KtYیyņ$\Ǧ$ OXJZ yc@A5d}.YFLfp ٞJ:O\ C;7-YjWo4lQqӿ*zH*sH ;%J#]h\(Oݾ }FFԨ/+5vJ|mϻ׋У$ P~Ce?Ï'²-ۏoߊiL2ӕ65P Gdb(a\혨;D*RN8d"`ETz2B PIv37Eꬍ-$i5fE+JoK^i:He % $  ZkO|_c͊T6#4&4W~̫Oq5%0.[ȽԖdB/N $v;h%g` KOuÅ閨EUn #S< aTVA# `~;2 )>V x&8BziT}l421AH zy|_V_@Aa-wt/NVMC.Z=#?q _E,%U U.L",IznfW|原X(%irg*`NWD_qt)89Үwv̢,tX@? 6Ts;0q;CJL.*[0(C \J&UV姘]n7)?nW[@2ޗʊ6>GrW~ݣO/xSCr7]뭸πn1"(>yH38+a.xPA8"DZ=ad@8N#ES'CC3D%ܬEE7ro^߫ KHS, cYxC]>ܣ vExVv{ҙt56 y6z/[othM.+Cʇc ZHٞGӛ4W`O8'YLQY\K!Yp-(C* $=0UZkFϸ sjoYV(c YSUF캅3S&]<, ɳL#呵d>U?lO5Χx8A0)KGN(~?ί`Cj_V pWcHu־R;ludxfqSo Zt Ɓ?rȡڅ~):CK`oТ9S4pM'Y3SZb/y;TAڣ갿0N6c\0ɉfD>(KsS|~B9~z} VڲhRT9Wmc?l =BoۭMHe,PfZOB1nP'L'D&6tu _~zt[.x#LL̈́깖3m7}ul{ʓWWFj\bb9L +eu"$] O4B~tFkk6TcJ1S$z@-oufU?SB=HsQJQ )6v)z+|2tij`G~wzxMQQP@0V\0gb1;*B_l9S:=@+,?LdIEcޱ,\Z뉱zvPVxX&|_ot]p-9홧6݄Ꮉi@jM/1/h&`Msܒ3A="e˸(Z` #ܑ4>e 2/5d9 cW,kGC^GkdrxeBw*q F :'|L8,&~\;B),^7@CaVs/r+ 603X)!־|g1‚Y}\25VE]5~&;%5|*<ߤ_M ~}_47aoׁMJb_W( ġ U E} UG v}RVu~Y/x)*(ط:N^?X:520 y7j +r-UG@ᖄGEV`T{iCM 2F9Q1W<?Sx":2*7c6(%.'Z% y_&n2PسiX6*cs.{\h>: >rA#hR-224+RtYJ|;_jV~ t:T0kboa?ƍ̟SKGӥ'W,5BWo`6Lj@fڣZE.qo_%ϔ;?h&Չ#g 6:]򣃯-fԭ}BS#_FyԶi'p;)- 붔Ώ 118] x0)kg'qjEc;#S {9K;lpUIB7 qMF%md;ybߨ^+cwaKt#QXQzgYH*M dmRayfVG6ֻVk ,Ls"V=8ռ5 I˅*Yw7QN!7:S &;$8>oJO!Rqs}?"4黌v dEKo6*O9`DG~o80׹ jMꛫjzprCgB/)PEVplʯ(<̖vuѕvLfv o}$UQ*=]Z$ޭҐ /KS迂ԝ5՞:`{vMr沆_wbYUc>6/np l4}1D; )uP;9 E8 .[՚X5_W| n5wbE8ZMH0q!<\<\jѭbdRub)3.l6vS`$ͣ8Bot+ BaF\X=S\|&fw!q 7"!,F&7 L))#IzyEDT*/?Hcڔq%k跖Il(!J*qcʌQxG|B>>y.k~QD=ֿ< 4 l8f5ZuP?9@W@渆M9ʦǠzh_PEhF"j-҄yPnN3ߺ1wrxlVgr*?ݤxdx8tvKyRO*X3لpbX9 w}Rn%Q8D #U3+˺.Swq`jzM WUEح7Ix0^ a D$]rc?sc 8.e$c%* /FB,3$r(igr-3O\guQP;UR s[R%~+ƒh\ i;,ƪH*M?3ޯa-@;c\3MS0P"0IuGgr.%qcyL_ڗKMb&cѫLCRP2wiK|Etr.a3-#N(7$g#y Mhh7t] 3)f<6hN'F=rU[!~EZXf%PO~aF~BLdR^9f Uڍ= s_+QMmu/y3a@5P)ș}ӓ@mYxxԋ@ !w$ [9w5p_ʚPos:h!FvnZnܽ׋b_]As!-!WhK` l)WGNO\XOj8rdpLQ/b&[P,@7u¦d*J+s>vxEQ5zz' 253|z򜨰&% X?vsqLOO c5 #+f O,w]_IbrvZ{=G+ٜV`4,R?x?RљZGwFB'{9v9c:t>}nDQVsn#!c:/"VsQlj/ǂ!)PoS8P Xs)y=! בvx/,OHwePT5鐣/6Pٵ`W }pxd0 SߖC):@,G[j,%>_mJ?կxB& 0Oxxɝ^12g)W+(zH2R jʍܿ[)G4$tu Ƴȹ}V\b70T?Ntϲ[RSؔ/Vt?[8HSɻFLYMМmX[寮 y"%d9u Nm7'>3*;r#ICFuriLl}@6iJP[ԚmEqM)nT{JPw3S˪呆u#Xэ9n>=w%BBY; w_P@JA% ~[{+n/ƥ}R"C~Sgw>?Yި:&ИΘ}6ss;{?%4]nkvdLE>}N*㹎-H$leȜ&la#oHgnMRذFɫ$$B37C^yMfCG b_V9E! (͟ttvy)JN>ݠЀ[qvMAv8LX^kEBIǀ&ҹJ1?[ $_ԍ_"'PEt8Y2`sV^^!$"ZgŸZTSn2/1VQ fYҞۇ $ԜKEVq8'4@@5)PUcCp8~tm[w>"G"3FDcmS~3k4(^ojM2v}46WD@N3 ;8b!B8 M=nK4ofuhJZ[| +!.<o* PU(4j' \D #YOR;M~JOK*C뫫G,o;vW͞L?K@7+͇ v *%to}mw%\qkqlؿE#קh56rzj42im6$yVs, |?jI? [9o.,Yt?zhj#K(p^ - |PFV 9~mȉ;_}s]d7.I()%3S%iqJ&D7T:,!0NRuqO9oUiREL竓x+%zOҝ`TvdmqV×ObšFh(O~@i#T;Fק p>]v"q朾WHN sy),ZHM*YJTҤRuq$NL:8Bkzщ G<̑)z irXUg͹Il_ }Ĝg5 |lFA.b9B {9J =;1JQA܌.\~[4@;{-l_"@C$--X)2.`5eW789b $دU2q-aR c.S)&TsVfâs H?1ܼkKGF`ۛ";Iܮ4Vq]8ZJd]p'W ڼ.6n=+plj.2$l碜CT9@dW )N}Io;wGSb:Kߜ͕XXN=~\`m3)"UvRp| HD)K(\ !RF1IE&hsC+E9~k_^h=E|YDgX|9f?̲qyXЏz u jg`SSFeF"O[S ^_q9fϠ( W(Koh{3vjv";S̏Mu^S["WC$IAv?I6Eqx5衳3{k#ķ->$ oUWJK'7C#F*Wli2i%arL#d]/f˂E)|u,F̽)GZMnRz0λxeV*}ҝVЌrgԠsSW {DrDQb@9_mELw٣W"7ipĢ'zHSSHƢH~ڤ?fRcĉs9A- ?>g05՜lFk6PSfq]{v?ևABƇJԬֆ#N?FBG[h/g<ZMcН,#ֳ8i *6o.}*27X#\fcޝaO+T i T8/bwW-< WO$wbt>>IʹNw+?] Q*Bg-CYB,%H%pM]i4 42GA C$^w9uZ ¤jdrW6,6|9Aonڧn֘-bO&hAt2U= !g +[zh2GN3# lw @B罿ltb꺸2JpeaXntj{ `uU䟏qj?%<윍$XhRyR(8nlH]:cD4*wO޷.oƟ"R0_Ed|84.k( rm~77\)z` (o])D`a z8C'"A֖︽dcҺ@rlC4xp<k[t-O42\t.VkDp;Oզٽɏ@eRqQ緈 [ Mg7T>m c$] /9eoeY5ziݸ*=|5%ʠ[TEm]la|(VkYIqm ը~#*xFX,^ R֓k8c3 JEFĢw xQ۹ŵIG['SJ6˸fOrߕ5Oob 2B~u\u݆X0 5BU6hzO-u>%gг'ej+ 3 P4ESI ]䕎 t# #:?uiʩ5ucz| rsSɮ&| px!{PԽpy wpO'q|,n/v` O]dg, t5"$u; h0)+w"u߇~ԙƋװO >JZ^6;eN1ssyF^%=bI$٦3v؀ a<û'1 7_AJ{@X+w2GC.͔X?~ u,<%U!0:Xl.7XL>m-20uGHCg>B'_r]?S-CB‡uBTA0~48fΦ&Mj`1 qbLzďnp"v2\S>8KP#xQiVˡCL,n _u4 !YeD1gE>$PxƒS} H ã5`!րQ8=jMAPMdY">iiΙ) Dpz]{NзjCYqB\ ZO>ZU2LIf lλo1`0y#5$n ̝ux.P/iɌo ZD@U0N.nf8M9a@y-v5}~e?o&%hDhY.d$e2lm/U 鿖X'}:dӃg>H;S>~(' e#H/ECb9#$ABUQSgM3CE!Lxh`E:h<3DNc<Ǘv'1|(0Mxy[>ٷ߻u[O)q8he-S\8sLGs}Ug9A0WIIckT\lpInބ7B{1KÔe98Bm]MJeM"Tb42)yUZ7=d- 7xl?uJ%{ ]! Ζf$Ք{z61k? v";{}[@ݣRH@ nrvkzk32ʔjB':ZI)8'=N낕 (zJHZ<#NvjMu.랆[zI1Q6҃z|~yuf2ཡ,VU%petG~]Gc1{R9tֆN!{nzJ>zOn< ~b2N<*"t0," K=l z8clCKFqP9=I R:k Ҫ@r;` 1d`:_i;r}|[PS3Ze&X HFAJE[DB &Rd5<٤[?Llx%E ?+k~gj3Ƴ/.ͱ|dFrT`z~T;ʉYGӁ 9徼نm;D ' f˶dPܻu_ oQ8xઐ ]{j!S-T24|jܒ[B'1[UG녓4^؄ m  h ]樵Va劄zܹ_o '0qnC85q6m kBF#c*-gk‚E`gB>Â%7a-Ad܁ĶIY1>KxM_LOw:E/<ݜ᭕_X"}K qaeף~ \@J3&_s7_ܱr{lLԫ @N\0jW])-%hňRyQ}x͈iDR ת.TGn-QP_gfʦHk匊_/+U><ȅlxM4P17Mj>[N޳@,@}k g L!47F0(^=aG&6ξy\W3q?@rap5th9&Nmm b5oiI+kuà@jVd??f m6\4?C`peCJ!@.%{ M O̥~GA.k6c'q.ˏP0 ]P @/ou^~6J9 #ϧp 8|7<`]I^|赽V5~dp~k@{6Axgyi B{b{Gn0Ƅ//dO`t2ganDs2ݔ[Uabj /6L[d 3[MI9 W١l/Υ4dek[5[ m乌P|v$ bE E[bS6J[ZV?>켣VSM}tӺ"J{Y~uW<>mLQtɞF8fpfz$קmWǹsK9g]`fC*-~eh1=`LM-7<@HԷIYO]6m;L ٿ5-{>1'Q=+<Z  8`YC5wT&o(5-VV=eGcDE*{Ȝxќ0M>?16oFr ə#o),Ap]xCYoWFy3.=4_pߗ/Qt[R8ֶr%2.wCO O 52wd^B5M_IgfYv.Qq ?(˫*Z3R *UQ"`xp)h.ϔ`J+sÃyzG3O ]. % v7p?@YMת1xZrlܐWCOGv8?cC 6eFT G>07U3@_aQ52ߡLK˛`)P!ߵ/C)I@3U8)@~pO+piL`$yo^E#K9ΆHDw34 ̛1)sqie(NURZ=- G3yxTL.HϧsL>oWa (g0l$ax/3L_DzΦYuNELeh;dzC*Li9Za]7 AK1~ Yy\WD8[LX J'Xu -/Kt =GOKN7R7k {[Ѯ J.Ljlk|^>҆4OZcB}HD|j_GhC\4Cge&R-hg\B  2ShvԈG*Yt"/y.K!D:$lMW{,0oS zP:.֛P`-=o*{*<4V0A5_$›?U",jNcNa;_͎.aƴ^ 4PkZ 3OeQȰӽj?k/<hA+{eHu:ѣzGQC/ `ڗHT04,NCHɀQbr?Xk VK#)HS-eE/hUq٩#U^KH1?W0|B%U~Ll/=|v{2YJ'eX)I30DRH1;~!z/h9=jP/1tق"?'*Zy3y,'4}@{݄I}~e9OjѢ3#t`Al)4/a޶|&w/͕aDTt" lP.ט}.N8KA=\KЖRw|5 ܖVs!M I߀틥9 H [v(/K)8s~"Hh/I:oP+b-:wBJYՐcX})\pZ7IC1?OOEf?\~xZ'o)Irݞh#^ gl. N45Yؚ1ܺ4 4Z3piĴ5}d+Xo3M(tҁ摨38Lꚗ]Oq^&1%"e}nXu l&qмN6xUn^|'t2 `{`n"vXآR.1osD&_1~+aeUW(';7rEs`=3 4"p$ӯTԻ ;a6q9Xhu a$jy nT1}]q#[(8-/U𮾶4s>+*ԪgEp3tSw$SwqJt:!<#1)o]n'eb||)FQ1k7͌q:@e8Ĺ'G\j5"ޒ/*K+~rx >Pb>-N!ӂKڴޅ f!W7$Q3{J:=*|3ZD@/+lrk *|T]e[,6d k9 nNGDɰbrze(dW T>-l+~Gp4" Kd 2^ݣOF(؟;f}̸ f(o*b5Žn0"M/{!Q!ۯ \N#EPJ=*Čshhڝ`19A+שC^M` aC\\=?0؍?vi{&lncWkghH!ܸ\9]ff\7[i{c H6qD>p#b| >f u79ȁV˙1K}Ep$}|ʑg'&[oGB[3P$qus!B5 ;˨ ]"t6]mgkBԭd~/O1jiwIǞU,3_PL6o`鑿!*$DGRV);dx2oٔ`?`F>rNEvoH@lB6MN+*GJك*+m TЍkN, d Hoa= iJhW;UcHUVNCuKɚ/SU132*Lߴߍvx)mhz>+)U2v[Ùk,"6{4" v4\W%GNUNKz$Qh@f:w"Fw J=Jܮ߶AR q@ gM\ѩʄBo45Uh,TwaiHzY l>|Ɨ+!.M%f6dŘ},2L*?kɜ?d=Uy>t!ǛEr=&#k?' Q[8F*ƀd׭ abj=[Ѳsz(ɲC=˽E`; cRu 3FC|ֺ:o[0c>=[لﰞ`Q$}flgs$B1F^AIފ- >-EONozԐW9F,VJ@ ﰓ9ڶ k#2,!2OA>cÙiQA k0TvU׻w2zє[Ocp۶*iŭ^ajBOp`ڋt*0yɧvYFeѥYďvV=rE 0EnD%jv)TN5I6~{)r h[uZ 5յ߂I"Ny"{k%~Mt.Ėc4 *' 8kwEP&6~p'l1P{V(X/j3L)А/*53'v#4xdTtoQkj^ҜKh8yoҠ} ̺k|49yn4zvQtc-}'HqT>"͝bcY'`?byo-Я,+ Ì3h] ,/ Q} ԅ*TZp}o4Е %#1|*|GKF@U &5]%QggkbwӰWa:Λ"X c 1):hm^Nx;p΃\9]sgϟ-_ RJVYL` F=LD)4Tzst!9۳sU`vgpf0%NS7P'v@%Am~ wjyxIg`keW;*~3Wb,t۽s"a;/[Eњu^=Ġ&z%u3'eh8Qȍf<(hdKgP倃Ⱥ^c v,@ T_  q(7& .|b|0eAp,OeN&:H|rh$Ҽp h!8]@;{8\ .pYT#;WV1G˼[73&/Nw ύoBziG1<=~fgeHԝXd%an19 !a)^?It?gf ?v V{ ~$h@&3|58!F)3Co-Ue ݣZ23Vހ8F 7zb~ՀQ)  XhŇO Ӆ;~Rǎ PaŚBZC{m6yrZ&7F͇{“>Nv=_ȟ}R+TpgҔgЬ_|35W-w1a=UV%2~;^x,X}2ඇ@pQyMrzzh w\=iy} u&ܚK4.2RGW$+21иӈHq;_=IbJ;bVu{] INf#ݛ%t@z$ك&^eq6vc_+:I5 ڬ|pugǼbch=mճ~ dcCk|G>v,K[(._/)X1V`0l_(G+_;<-.>@18z噷 Dwص—ºtBX`\Năw*(}RMizʐy}bUr%Zҽxgkxե%)tvÀ2<,cT6oQŪ*v'a)y t9=__~kcr}ׅ^ U41_2M;D7ܫ9'3Cmi *{K#ptj&ހkH >eLA/t!5 j^@tըCoB9v8@3IɁ+ [O236DA>}Nu=\*#S@(68& =-Դ2Ţ_gN#NgX{nVR?,.k3=9[R2gsewМ%7T٭z]U]:@Ln/d@\k9jQWӏp|.KrhQE6ma qS= wMotY6tM}1L_pC'B)%d#>neW5AVW]Vm2ؔbwDA).Eps;4d Zj~$ {s K>\)Aq#}(|>ߡǪX6G[C-!udQrkA|>D{I>|mtxr0`(P _r o6OE0㎷U=Z$[iDBo \~-yy_t녨%,J]SX\Ap紸by\XE51̚'M'R_j;QBxzǍ;zϩ.'.oA+#282;<!l 4@_qBOX[ba-6X"#xfA\$Clԉ074m!Y]~[J$yl nGzsS[d57}* =9=%*#Ė!aKX+4\ٺ7OFA깲Cv83ϸQqh2 Zżڌ+{{2tBv?sZ '`*JO!tj$1\Ш s짛NJD^g-k]B B{p g %o5GќtY(c#9iʨj7Eր.Bp VH>0hrejꜚO ]Z3Tb8Xh_?ݫ '~zeM=".yAr Bb#Vꂝ >[`Yo$S8r-(D~o3=e5uQ́r5Yә z8hygT@?eUPhsٚWb(0#+iK__ꀅ?":7+ yI0=n qQpȘjGi~;cG F3G{neh*dXц{!l45!:n{G?;Ƞ\(0;To HQ=Gm u_tvXyt;bi A X*BvK1|Ab*msa/7MBTg = >|jAmU G?sn&aB|@m |?.Ǚ,We}E2,TsdR.}c(h$,i&QL }LnY9_n2;^!!?j{7`<&@`㛊uzbCqռ7F(R;|+ښ[P̛VSIaw,aM釯U >E:;G*&=(R|#Dt.{:AI-pS2#gMHL z9W婭,.8`Zkxhb8;v>p B^A_dSF2HmV;A3wV`FOvtuO#J6Gϫxal{U>xc`S@Cz^[TϦb]B*zy:PX+F12z^ _ؼoFܿf)"/V3ImJul_5 d3 كNk'pRG-^o+}&0`i _@Q 1nr7j$aS+;WQ)xW%ےBM-BF!p¹p>Vܐ]MKy،.vE(z6/ ^oh+s[-{b'd)opZ8GbZTXoawZdq'e,qz ͘)fm# /P y8R'lrhGmg3UHcG4E \ßj<[4ۉj8];ho!ÊpAog seo]h=3M55*/8ĶT\B]#Z QCme%c!שּF_WR7`ű62܀FIn'NbEAw cRB}0srrsy>gJ9W:ۮKO-K-RG߀j9p 2 -4D ބiՏ m&^JJsx:PKm\T2Pnǟ05,.9؉Z@Ľs~~+C1DtɎ}ܩơ G&*6݃_:$Tz'e# 來sSx)tU6HJ@TD$It/3JSfHׯW@Mi[_[[0̰gCvGŽC7DZQI7 (50d1P_:r~26C?sIv@K:s!Lr}b@{Âޚrrٌb Tm/k{]A8ё>md7˸f#J+GTr6Va:PV5ލf:3fz"H69'+y᷅RT'ì䦿HP$Pm zV #u};LIsWtˡkn#jau?!5iuOM\}o0nNJ|4S4/*.34 (gK,ꡭN(`lXTqԮi !bm'PTn6!q25 D_ ;`\X1Uv5+ɗE>FaC9]ƁU]=puT[3EuTK8e/h9^zl?8@; <:zTkHu0g/'%z*I_.€3cȦ#lk љLOzN@' [$jƃGI?v Dv Jv˫XپWa [K!Wy쩈ۃ|'ԩXLܘȮ @ sb[5簩aFdA(m_"O꯺ hށ5` gQs|i 7(ظoi||@ d#@NV:H"_5}O!h!Sp?MW1!jLbqkfQI 7%,0kG 챍tBYlp;cWcĶQ8u(:P,4} P 9 \TedءSڑ5SX6vE M,5)77"WhLx=^v&`Q<ً6\nXՍ l1/1b9P3i}f%l_M%ɯ vAW4sfm͜y׬LgJo}ªsMLO"J9@AGJCefQz~LɧjwRxn\wl˱1'NsλŮz(F>WCt"DJ4˅?z>5!<"|e>zԴA-G;{M2g&Ĩu?cȲ>턕IT5Jq |ɋ$|KmJWl?nEnQ~;汗E%։M5C־O1BJf5};oxڜP %>_"joĭSZ筙'v.:L{b'Q;'.h)XOȠ:ISH#^9{8HyKjRۄ!4]߷ P2X%ӥNg~t)ߺXu{V/qbڸS;~][NiQp3r. $prDfd&R9&V}&aU&ٚHq^3L{Uy"{[0c͡Q=`,)yh}̀2׿]hA  ^a:”˾Vj*J9$J{e:e]Wm. ޛ%y.oO$# P_?My`ʂv[{\dz^zolmw$k$H.wm}!v8ŋg: mEKxLY'2ycV5xOK.GJj΀IeDh ,IzNU;9B-5K\ja"ElIGDޜĹJj?:HDv_K OUYR4B0K}vП>yM֤Wu,ucDM$1i 8ri+#~{;p_|{)S4q[6(){S}  r$>` ԕvm{;S? y OZ?y|g1< 7򑭯A=@e}hoV}?1Zwfa}|دᩁyq*S}<|ОjLjeFĺkbلI$"QvЬPArw5SL4}h8pۊxd$ -L|R8FTnU`\(RyjOӗĂgz\êFM`+fnqi—-o礊$. ƚVJ?95ܗc" +٘ wIoy.hp "æCG)ͼv/Bxm _Stk2`N_=M^տ]" V8"{ѥnM<+Kc|Ԉhx6o2fd@dhx 0Wb~ӨyPiFG+V1Xh5qB?SLz ;@Pݸ|XqrR$_#my0T\>u-~f> ^M;2%m~hv_l|? J5O!c eNY8Kt\<)0!(d 䝚/LnjQ|2?dPk3uц4Fͳa%PaȐvg{W+(gA& {$څzJ>d1.¼ Z|5=& s|@;74AZaZhl!|`mo2qs/=Iˡמ-bUŧAmߞ;G鈽nO ;BB¡mB8v &L6ծmU8bCcw6 \ρ18 YU;{cQN6yE|'֘ai*87I9 cW =pIi4vWT#LEP^,3FN1>0jc`MK]t o뽽Z}R㰣ݚlj"=[T4_Дi&8f +J$7j*̅?0iSNwz$ApIdދ G cO=38kOz,dp=+|*XXU$ 4 վQ.6GR ֣Éw7vM[~* !\D :A{wޞC ˭u\u>3˶K #G4T,e`'GDr୫,JKWF/9c $Yvoºz_mJ>{UC|EHa]d4ZQI<Fѩ?0YPcUa ?N Mo/S hLiAJHa '2 h[SZ@p>W2f%e~4+cCpI;祃=S^Ob]vF@q$i[eem,qHs)lVFELõj (O Z`Ԁrdz gtPbPyܝYأ׎BU6@Dd+B2*_3vXʎ#o医[cЙѬDޔ,¬f QGviV[tP]q"4X؃<9ُg~*/P;[Fbv ok0WGaĐ=̚WKIK *B!ǫ\G _ZssbYC\NWŀ{FSry+ ÿ8""l>-skm5ߍ#196npmxL=(pJ69)}FcBB]l9ELŗ$[v-g%4X}zozt&=D^z43wCCM!I C/!Ftq:E#"s fԾ ?fX,*fYHh1I<ۘk-aZ0N⇊u3{$qKgП/`1D~|t+6$*s9'sހ"3xVJ tM(Xpp֬} +an^ d& %p|ŧbC,0d{] 38kl-v CJQNtQ;l^p ٧c߮P~OfЮ@wث,Ԩ) } >@= Gow#2+6KiA T D͓f{hl{,Hbơ9Hc%`0_2ѿs#]E~/G DeH} U$T 12w pZ);{./Jp ) ݞxAvM 6ji]D%)S>eU*O;0ŠVm9d5 +p(J<`'6a\P*25+|mF ^ۙ=Z~U^ȞNİaGKf6 r&܃H.gZ/ᕄt-eo|Ɂҟ$r/:2hyi3 #՟JG;AᏯk;O=\D3Vh > 듙5/%!rk.)J wK&vc\P\e57<"H?[K*~p7ރ:qhl+ Nz#gV6a G OBq"Vu+ʁi/!10]$$FR6kBŷ[:C/>JY;/K\|yTI9jwQs챹 N$Hť}wp ꊉ_c5QceMO} +%Js2d zmJpvp h8&M1 %h@; (yC}t4Z:cY|w~m[fQ̋zS̬W B!˦"}vیC] $;$vFWè i0̉%mL58/{嬧^GwaaʐgvJ!dBh*y'\4 W}6jMFE6WLj ͡>`bzdb.(s J- &dtXÞN\_|) ټ`j7nrk#Ug OC0N,_V)_=:ADHV*&MM;fm#: 15P_k{ 7oEprCtpqiz^hzGjnfӄx}ڲ4`b{wS[lhEx'[rRW-K?spBoTRGRK}Ô-ʒ'DSg~SvGCt"U~d:o _}rr1%WP+ДQacbK6U ?zTS;3E]zk9q?&T]:7'I9XeVYRJQ˩HkK֮cbaboQ(ۘxy@ ZEx#.{Tj%vf'EC{+3"!nT`xd:M!QS|CW dd 7c0E>t;|2%I{Cqd=LDыF$v)MQұXzaiOE@זqt xjg'wbl<=ck}ya/ 1 67kw ,2SwZe4K"I&;4摔Z 1'!_"6Ȭ zf i+&}Cl*ts"q>&Pg٘ fثY(Hu؟N]¼KEZ}xvHM-YhWts Zb8>&NQ Dvnr?XWTQ @pA:u˛ F`Ա:օ4y |m҇?}vylDcE,5bŧ/G,. a*8c[ϑ1_>9K;UkG+\ww><@L?͜adVUG |`*Q"4pj Lnn*3xG>p4 J Y@)MJVـhm@8W/{ >G-;]֘UG'G> Wz4d`-ʘcJr&N:Ԅ8\FEç;I8eS̾^Y :92cdц4 X,qId7 -?(&2 WE)`M=(dha] yTfi$S;gxLJ>T&paGƎS›'2YnΛZ@O`Y :o]m fu9Xj72FX32A/K/V|rl) |Fo>oO}r#=@/#=V&u?10|jLQaJӺLr[/ 7CI/KV>~Uc ߣ}+O3#9 I$ =kzHcYHN\pDDVpA(65w9s&hʕ҂ֻ"b-0:3.Eƈ9^4H賠O<5!Vd *ea~suLBU\8OWDj-=^M-~4hGрRH7 iAxG8 f]X鷎CfֶVjKGf|ZdKi0("0,D As兖^Š+1e<%jHSC< KNIߦu+OC}ǵR]!grKXEzԏ&hǰ8Ԁ iDa=Y,3~8x+՗S$Ҁ`d9u#bc'}[-Yӓ3p:F9ۣWY{&Wvn[e/ 1;jXV0|]nOި%@݇mY# 'YGjj9d8 0nd#isO$%fK74#i`nv3N~pE<2"]U ϏZf}>Bx29$"g IA&[=ĥq)n?R wID쫛k${7$wC(z.BD^ulx SyH gRz{wњ%z!?L`Q_".y'N_'Gd)ㆪĸ~pP3B.]/wx$Br4h^8щ GlFL l*Mr0|_=-v:yA!gT+&5 6Jo>' WF?/ghcB,30^^Sg>lM@_}=6J#[qYn筚|?Q2r(3 W]eX3P/ل/Eù!jp}!VdzV{sg y} bIf#eJ'iMh`s|0 {ZT Fg'U:bddkR}|]cP$HA5Q_9qfOM}&2v TԒuPm5G>%Ojmh:2=t= {j○.b#/-EB)Wş`Yf(G~<#F"s ش*KY7RTl{*}`Gb1h+FQ˝7ZI[m >wZ^+c7ۊޖCu"ulK4® ׭7k9 C6B)%h 66=TD nN.w1ao;7Vl, fM A͜F+_SfpBhJd- 7H,4} +КgqD1zQJ3|b0k_$1vkdӥc?"eK8+Y>RxkwE4o79@GІz3om=E,;X!ATm"g𿨸[@T+ }s D\#Obۀs;JlF@ ) Ҭm6c#LE=@WN (}[aFeK,'rkE`"BBhq$%}{ET_jkj4SR3 bXM%޵ 5~$/1ح qk;`>,6-Gbh:;jr~/쨪[<'@b+@"C/Ր9zӮR5h4Xub 6]oLn2] N+#z#&ؓJOC.!9@ iDD|:P*V:5ėtq $qxvu 1Υ5B“z1w"+.D811ڣ 5_{~d'L-}VjqS*'c#9[eZyd(Lk1f富`wvͻ$#ֆ4g MtZ{x!y[ !.a3l< jJ; e%;޳ۓ"9f^Q;IQWdk2Ʌo b*]NPB'I 7퓺"[ YJ7'*>ĺYF)Q foբ|ԙСj]xh1h/K6yͧ$ Lr(]qicN++,A"]{^^|1,sKES,HSzh`8wt ?cÜnx^ @3П8ZVwX-Ǻ=qFF7 YrG'~_GsH3V!2|”3bT.> [u D'\~h!fmSdZ{5y",LwV㓅.%i5/,!JI&̧v[y|ٞ^Pifiu h/ WJc=䒨Uy Rv(i/m . b= B-XݹF[z| PFѷ" VYV2m G{őiiy7P6 `}Ưy:kxa)?U*&/ur-Ц)% tHJmϸakVC%ڿ6ti k~SY_+ïޓ?6rmS!Vo0"Fbr\gǛР ,C'F*;#x}zojj=pƞ:QW$5HQGhhǘkUل OҌ` 1ūSkٵ J=Y7 @KޡiT)t'{>s(Ǵ$!oUK#C1 ~bF4R6s`!Sj2ke'0Y+f[iBxϜ[K*b, hJxR0f7 C!D[ӥkGYfگ\s#|IGN5_ݧYIWg6MQAa: -n (PwmEM!ւa֐̆iu6-Fy%ƙ/; I2-.|0νӻ <l*3k qOWW"QӽE8:ez K7(}S*%TSv`yO =u9Pdg2Fa*O=4gqB`$7>(Z2A]'1\- YOUD[T|S,GAjsǓ`=a"(֋RuUZЁ)4J (8?d*EVz( C0ھ9yp3a-H.9Y- +Pu 4&U{Y#P{LZd&𠼀 􀰍^e~r7)6MG-3$.;e~xZp*nݗtQ*$>֙\:ܗCːhM%dҢuI dk~b8% y V/2Vrp>z_{AyΞ€mN>*pZMA VO@m)^>Mq9$\ĻMcOg5Йm{>Ze`Y餋ŎUAal ^z$PcHRњ"jZc %3@J=&x(9鰬"dBAv],*#ʋHw|{}"K)\ *H܈sHcW9#DݏReX|;sԟFsp -&Y/N5)#H xzgh6>2]BUnrk0ELSqB"Mګv"\,Lji7i.An\kh9w2Z# 湔7Ι{YHڽ @ 8anr jΥzcCH/V2dχߗDD^ʃX0?2tbv2&ӟ@e]ܹ4qq5z>Y> ![$@ZħDgc5F,O^~#WT Hhs ˬ ܷ 0} Iߕ$@:#l=U)|x,J( OarѠT#+[%}3G]J-wHUwܓ]A2$|:x{~<ݺ$K}e `&A+>1V+_sCAѦezog@XKl"xW;Ͻ+qIN*B!+8ӷ?*Fs(ijweI`jCpp%PDrr^\~/~]+PGT*dڐV#c)lev FqJYpA}hgjªЗF/`ry4U|C^ M)fp󕢻dz^Ї 2IJjuB0HS:H a 2.rPôFHUW$%"1*~*:ò7_LNE`Y5^Z⁥dV9U:HMFţMwv]gR]׺Xx=:.%o!CoaN,Isvy)x 3 ՇxGPBvV!A ՖzƟ>ם[e]V|8c~T6 lX`mYh:k^#jWQGnktjHd T]7vkni-Dv G NM̙ ЊCde3DtAe&Cv{=2t\[ T_씋e=Llr \OF\& ޹?V߼g<(>ϣo3 e \XT,ic 6ZJ;`xR. A ^N+A]99.Lφ<2@*H!Z#I"UMRoR P^5݅ϊ5=9&1PanaxtNM+lU>fiNQxzǗcL5UQtI~l-!hc-'}(](*?-(8`\~`sud5ԵBDDYv C/?(d%M;onr@ɾQ@Ҡ%?eX&pwVac*<-r j`-Q-2< )V8d<fbbgܹ)]ud|5oh}HqeM?|=5BPQX(0/vQT;K원m-~7>RЪϛk%*¢_A녕5\)G.x2(M.ޕq'ڶ^n)ouKXtFCs[åD= Qȶu)ݯɒsa|9Z'ۢQB EךP\էLE>ヵ:0H;Wk(:qbtR.X1TN="7=BP+jגvP66g.0I_ߓi鐄ߺ ڸ72d:̮d [RpBM. &B%)w^XS.KkWI:iz£dd)0y~]kqMXVٛk>dY$Hbk[3a0$OD  N9Q!š Zia0fK[D6+Kދ.mba'lkijf"KqBI527uϨݿ8v"ж @bײф?7l Ђ:68^ӐzJ?VĎdւfXRED ~yDJi,)QA @;%^VЂ; ] w419I_ Wd<ׁ -\Yl Ep2*b^WWK<瀞m;wvýX仯QQaӽ'2L{1}3yh+]rrܨ+gM]\v&AChqk`g y`hX"Zꐬ%dلbb}!]=E*t E:7ٿ?̎ 1q  ܿz8sJbJ)'`o  M7ҙ(ݖŸ!Zg3Ҿea_Mw:x3kn's,%n`/:)cTW=gwC܇Ы$Is+k'n[U3U+ ,#oAyl,WXkȡB}}\JekRkF4ୢ9=xb Lp@;{1oH8~5t̞ϕepWQʽ򆬦skm4k0$-5fit鵍ǒ};UT]EsT$ ULҍx{(uM̸bcدKwOmn ?Х&8(:): GEGbU |]mjŹo餕 (nޘ2q&^_iLKZ0k;i1u˄37=1_"K$dsj/,Nuz`93 ā -HaO F ؀OH(GcwjS4(} K\ff/p2S-)&?jv:J J҄'j+F*V?X]j0FQW)Gś)| _Mqs ѱ6&1HycZKVogUv`Y&_ziu^ d'E1 BP} !RAfK"tf"茰21  4h@ &|Z΃BN/oZ+X$ w#& cz8H9lR/[8VNvb0)uNwb71|QY]X]9vCQ:/<&PT/GUgԫ S=0$ӏq&0!<;N9E]vqr5[Y)G"bV)e$Y yZyXMbe͆:7L:1G2atu`ho RcU'}(2Ōm14"qE9l`ח$ٛ ZZ9w5FYղe9w1\L| 11W4uRiՠH5zV-ݏFXIf&:ND[M s3~3ɱMiqcv>kCr~nH<@8͍ EP* J!LN xPhM)f>96T_bi TCd Fn" 0l&Y(j/%?I|VNo&(ȅWswĩB-uK[$fJ(nZW.{ѣ%3C>/vb|Ys|~Ӟ4[]&;s>g@rC7KDZBN3Ś)^y}+'.U&#s65=KV9qRnu(Q&lGpUx=*ʆ\Kf2YP>oTT▚0VMI܍RHA*PmXH^RA :F#9 OAzɉֈ8,!?5{m`0oIpTAf/fFOko|(DO旭brᗞۊcݺl_[:T YXzۚ2{2 /.W1P vg7jP )˵C:vF댺o AWJk⼅Tu')Z1S-nUI+h̓nqSy8at|aGTӍcY ? B`G:,͹F5&k dߦ!ef= HRSͩ7@1aTuyss=6N;Kk)@RCiUp6qL|co躶vш5\#Cf[J M,XaENM + C]}KD?B_3[6|dP5./xBQBYFU%]62)saEU1$&*]f您㪣@IC'GE6WQ$9BQ 'hz-aV`P9 ¦@y}%]zbޒqæGT+>,z d5<V2$ETK}7 ICK+PC\rcLބih~ċHiϒ*Gۭ5 ű.Jd>,L\EtdIBKrbY,B[5ZS/̌>74"ϱo Q<[hf^3s3ofBF;܀Zl+"=C`?&b-&o@4QȻbhԗXk,} 1%:,l܉"ger%8.#fdy@rdj6"σjHɩ Ղ0ܢ^MagY^oD)溏lDPc|}a]!c~ݤ`hCG {CMY_XS,h|ЁYy`_a{l;g U=aLvYv̗8;R~B`UT- L/Z ]G-:7 Sm÷F`H*nyskFw}O#X@˨/Mk5>Ui-.8QU z[ƬT5f̠_]L0:xe|G.yEt%q2|'VĖX_ԷU"Eժ"x%q#Cb9ڴ= (h&{"ڱ_w&Пbq,:ܟ759+܄\̯٘1d?7"swY0NqH|N ׵wQ wvoŜXI6f0CɧKc靈v<3丙Lpl,aǖ cx;T@7A/*بaa2F[grގ`B$,D;y0r~5&D~+RX _ul_8%?'Պ˘к ih zC찴tdՄ#35W)Q^%QQ=wMwDpс7Wo&ca]Wez8(K\]?7p1P܊# M:oc<Nd͟+K~a=|=+=== $\Ve0{jfR%udƕ)罥8$%uAs:iONJK+oNG#7'+`L7,Y'"(uOU\*(A1zo @6IX杓i[ۇ 4Vٲ>YU9>Mc|EGcnRޣĎʨfiIh0<(@T RC'|SH#F\E2,DlglLOZs/U%kf w=H#keCP+ u+u M*" c2\"H*L n;.g/vg%w=L06T)7UUT rf2+ D:c\ T/"\ܳN:rnq(F'MTbغAxUөNW̱q }gj?N_Sf[bllm@H;匂pPgo]O[\1sn鿛Sk˸Km)b!~r'y哶,2o Hգ}jsi T`'vʙxfO([ n-[:}G^!#}&Qo,SvM@{u$ݓK-S}. MFLLE7G5%hnq5W/ַȅwSu8h&5"<+9ٶSWJ/) lw ـ,ýhcE~20O'o-}^gu-JbR{A\rRFiV\t9:aOB9dsݰ}_xʷrjH0;y ba{o2g^R=~j5"`#5ia+꺁d2Z LPLĘp)Q`׾/]9A1KOחx$P zyuSMQڞ[6C7}A5|,iYgVt Нmy[mI:}p* |u@,"FG%)|-kDjezFSk?U'"Fl+S _3fg/3VV8Vb-@'aXi>tH^kPlOC0ڂKDLI~!CWBuZow:Q(maNd:hi)[@\Q<ç vl"A+[uh%h41~8>Nj9G83D$e]/:W_0eܴ:d?TbxO[ |ᣲ~u{㚁 ͚b9HMp@^ ~O MTJ迕q&j:UYк'2iW 4#rCD/R6jWI1+ 88& t8ip+)|.9 Re @=.3a7NjR` ͑5Ąn<"ҽ,?/{TIR,]BIYqJeH~7@:{;h1h7Nlf'xz]Lia#VRۈr430g.ݦ`C9H֖0b0ܾ$~$rl ѿN>+l‹h8 n@%;Tt+X  Z qI ,IaHYH6^ۈ^[yEcfe2A) ~2d-.nHR#؋cB v(f,QѴVQ쵝3 5ΓK^S%Sxq4=Z79VqH>Yyb8` y.Kt hGΖJ[F$`'HG.(`?\yGcVy}"#ѨeUJPMאb #u)/8 '%9W/J;L8.kT=뢣t9FZdz#q+ߔU?kuf,.m^a`q>rAbV"f&zĖ!,;" g7U.Lmiq X` KPqnrgQ]r:gƂ0 ZYAmwyl όPT)xX3${MĽ}ftToAUǝ܁eܵ10VS hY@Zr~&u(nZs$u_^@5]gj*prO(fC1\1 ^Jψi]؍U4Hfrnu ߥh|Uv {IZ"Tt D,QqJyI^RϏJ@d Ò->7N,ﷹS*a_1a!`cd9K{ԉ> } Ti6vp"8؂:nzvVZ=~9;֟6ZVQ}z~tdy9(h!}!VQTdyͧfŃ3!d"KoǥŊo7)W̺# . k(oŻ,R:/=*%b%UQ=5)v>O~h#QI^\4m*,p0:e`1A.I(1,#GxB"(X `#s1"}ՔxbvzVo"#_=pw]\ØmYb㬰zlrRls _[db;8&-l#Pw>#yrl<[6zp=Pu$cp{*bn[df˿cцїf/tiD(d rpM/)ce{E+?Qق--yTI1ǽ {%r\@x܁8 b'Wt[K)CQ.KMDىݱ|>u[v?:*>:3jqACtn֟;Ug;n>pNIR`TiY@+Ձwwod)b:qAS baNe ~>U; B\4^iyH Lc0u1NfY 1JEDfY.% DP0@~4+ ͻdG7Se LjA>$A =ȫ+c/B[Eo54Bs<Q ̯8WBLzɮ~1N4ho~02: <.%]#{67[;FuV?gi4x} \ 3Mzl p41 oݿ~ۼn6p(:mS0W PV- ,70dV:6݁4?r$8Ab$X Y30nHwͲ`%{n } ,΀S"I)Lf%@f&-j:y=ͯBJW #>N{e'V=pCW]Ġt6ЏfUU֪xӱ:5 YJ^So(W2T, )?G#r`}Qu{rJ~,IFni0'-d  Ԣgmr}ܰi,sh<50U޲UO5y U"=XSWI@y(P'0` B4gcT\Wc tq=/-!`ꡘºMY|@gYr߈"ٻ,BRaƖRy Sއ-y*ύܒ<К`T)G'h֕Mep4T G)/)>JxV[A6IPRo! FUBN< 1e$R9)Rbiq(t [nK+ ƗDؑ-j-HKm8l'@L6-<`*ρrn1Վn_fYldև.^#qyR75:Z7qHj8h6q"ڧjC1/gt7F:'z9S*{pnlƃh6rvUlҦ&!(W4F7TJ4>K*=ZhtVȖvߢ3C_⸃4K Qӣ$tQw jkH헜㏟;!"$`DԦԮ=|_5ݹMuŧ5|REhsD1X; an~-ȁt9.Wρ= ڟ IBI皺:ɩbOR IGV"՞̭gڳ[Xc^vFsJ~jQ%d6S!TJ?}\WqwPS)Ʊ -mjIEtUq׽~䮼uU\6 ul{3E'ׇ '8oDA$@Tx Y-׷^TMpߩx歡o|Ȱ,h}zqDPa8Ĥpn%"(T\:<*BTf!jvřN.ų\5`b݁O=q32yn}?:&,ۤd5= \tp?b ZB?t?MADd#(B:\Qn@zF6cUQ ۏ]x6.T;e%2)%/5A;{(5csPRw^\ݍ8$87^k=3EW)RyY!2f6|A,&ؘ=tKbLqNWPʡ&|| hM1 ?R vMW]:(֯kcXm2,(a&(_85 46p7 ٝPM,2#S@'F晤5@  ;@KrGx >HG ݆Ar@owU!H5d LU 0vUIs*^ `,߹ <:`ΰj!۬, Ɏߺ}/u^ѣcUep(F鍰TP%X4vGu(b i Qpa S'+ȯۇ21dqpPuhMp)^,v0Z{!yٕE/fsKY-X@s|>xދFp=*ڨ-7 ћ& }[ Iuunצ/&dt{znؿ]̉V]}yi>xúIYn8]^0 bW."yވ'* jTLʘX֘p 3%4t}}R唳GCUɱvbZWwDB1r"P*Wa>rNMcG[$rUEz*[| =58_4ܛrX*vDjE4P=C5Mxu i]E|u$rѺ{ҍvr?QSLA l Q@pd/~@w?X:\a2PgdkkXVINŝtn `p%U lt5L #ѐ-oʲOր"H]y0EDۥTsƥ`zR/\4fH)#ǁeRI sQ jD vÁ$OaR,c.M#D̔c{r {qw$a. aJ-U-Pe,%]ܗyvʇ-UxF|.c0+7/̫.TN~K%Ѻ=5og^yOH]}4 lCL?!%D MjM;og+&<d`Jx Gl.NK@K[\)a&c"Z,cS {;*Dn?8}wu!(F^F7VjjH*t)ugEaOeju~0,W3);Mk LJ=BߩfunJŻ 일n"4++BXi~bg=Wۃ\|7r:h}8Y3=0w*Af;Cndog:$QuGmF(Pt*F]|]gps]|f"DxE=hM' ^C29uǃZN.dwaó30:;Z-pX*mWv3CNLmNV|6#`XD$!mӐѶ/qiP7Bѵ 3{^?WrwN)-9i)}: _:J]>a>ZBxeǀ@aʎ E]Ih*W{[/sVP f8:K9ʅ=|dT/lL.EB H7,AQ֝e5'٫䔔d fPb m*5l61</BH"Jm{k !-EufS/!Rƞ3'.&0@\aBz?3?'` fv /GEGO6()/X^'] G @ f7ϞNk_TIe '~JW-_W63D5&dO4XF4Ge%Gy #6JmCᛟU&_H/U-[o1rMd'N 1h:Lp`=F}&]n̙$W_yڥ-o=OrJ%JnLJ"|[HzC6!C)$ X VGTݧ?)8u6yw§ZpD7>ڽ,UشuUKE&Ҹ #pv,U]}Kb*.CX&w箧 ^~ @g6owMI^Gqcfl/ŷt߄ mxQmI+v\1$c6d2+q~mJV0&uۦ^4߭ uS+[*Y\['*<;9hA9HM9,]eMɣ\r @݈"eDe0f#B[kWf~R7le V(;G(G05vSgI!=]qZ#FPZ۹ &jv/-w1?L8!%u6,9(!S t=?8w> I\'>n/Nչ~QA3vP?^v;ɐ8OOLz̿iYqx[ Up^PQe_Q`˥Ib,DcP$Xs0[ާE.YWZjo"l8%Z"HgNTKv0҈01%qr8Jj\\ 8/]QFbTp庙\Us ,?oErSPz/H%x Q1߶ԬHRbם6$ִσ1БQuMH?HnjH$nH5tS'i/ 3 9S9e%U*YSG7ktqZWR%uPUNj>8j8鋇D\EBs% ;T 3L7zB wdZ&VdlV.wn kZX&UW,iX/~`&/w_ޏʑg 8ID5dIGבa=zBÕw~`D/ܪHH}C)>9qLQy#(rN./葌^@b/KSoAM筀F8Z2^axbjI%..Ϯʧa~C9>+C7Z+c]A=8~)?qqO `d?/g6_$JkMd-V 3o iכwЖn|IE&{/9sDAyxg#J/фGw/y`)Юr$It{Tl&&{Nꮏ|k+yBOG-XXi,dy357gt%OJ^8sz*}3U; %bב3!F6Y7P̓- g!^euƺ!59ksheOuPu%?=|w3{0f6oP.`G`E9]Ng;Nڃ'g<";OnOf;--N/T_f}nπ:XheYBz^pV778Ś<5қk-j nK -Xl-A~Ϻ(MWT;etJC_zG!_egEY"9yfT.AvVG4sXp@LEu:\H5/s'Ff)N95ԛYv[HDTrzeI`K-^?@|yk쁝:"E8Wǥرac_&ۀpMՈ#N:RsݗhihM1sxx]ICaA4]]ÇmU"++'"v sRŞm#T,܉@ť(;m/z|8઻c:H]Ga*q]50'ʾfƣYx݁q,D* '扯ܝL= 7 AfԘZw0c Ck^Lm_qg_mE9 ݸ&h܋xb"d.U|&"? #2B%;؎h=7{6bzx/Gk.ţD/K.:kۈo&#ISLng~qmZJEk?]i "YD߆wnJܭMNzѥNK1 (=tVX`L2Pvj} 3NI-? d )ɩQofS j9g#(![0*_"2_`'!t,N*<Y:ؙ+ܗZ{U*SD6Lv$s+K/"xa/d/oLl˚:%sbBҞKI*] ov!װ_!9ʃR?E/躆\pͿR/<f,\f:ލ a1}WBU=1j*⶗drӒ3P32G8Owv\~-T/̺,nfo.uh6×/[ m 8efF0o_A$@#&=kqi1ҙb;I{1}fV_!`׏Xh_OEYTv(lX.{T+cֽJmj7MJ ]̥f4\0<8`;2$b*O敳EB\(/|Φ=wW7(g a_rL5܀RӔ/g.I9|[F ?qΤ'Zt~zشϗYT2F혳h~q a,Hw _sWR*)!YG铔7(i0Jΰ\EwX_<ӹ8*ZJ"[Q&хיHȥJ6E~f ߤs"D]UZ6WDѬBGwqG2",L*E=],1@ K'Nʰ \,GC,0Ÿ,0:款AJ'*UDvЎC\F%vsHFVi})趷x320. ?%v| V y~?gÒ -$tv L&hrϩZ(XsCAk7) J <[ "}32|W5j'w*0 cgYaBRK DS箺*|tbD1>>g.GhjAǕ5,n<$|6u*!ڈ:F?yy5(>ZaarCyJ[  I[b敷wb Կ(@s x`jnV%Yy[{4,$:ѷ׹ o6~2Qbg7LyG|aꝋPs Dշ}ZGBqdrd3s#u,f~h'dH=bπ.:ꊞ! jhG7IRd*k6p(^ s @H-\!C 3j^¹o繀spObҰg nTg.MuAw%J/R9Td~ApDyìF$pJlw)6#L3XYvԕT jQNj1.ӝTaO&װ%NȻHGDHX@!+ՁzU2bPgSW$oGt4ޅ =ËȨ2tɍxW'H'_?D8Qn]JD-|Ǐ,lukRLO>Up^2%jͫ2-.=bE auhiuZT5T3|7:)mAaT)8lHI^LC}mv:{fuÐSN0< ?tUuzhy'76iY̼7x\|P6)&,f!@D*1qZ`r'865D̘ūקf6U$"oJJ(5yݸ&)1-vR/b^ )&B#nU^<(cPjcj/ [|ybxcpטw^'-'{Yk"l| tgރv3=Ϳ]P4cQPe{(); U8-H@̡G |< ua6ߨ#Khࣨ1 LQU\WM)X~.M(@}֔TPt!U 0W-Ȧ~L9}3/X˹[ODr'g6zzU  g61mύkd}y Ȳ sS^,Ooi *&I{Mج3*>t<%7 ~@iOI.î^[:_İ=m UhW遟h'ܛ&d|1qŒ}%I[:+zÛ;55hfX*Ow"Eݩ3 !$[> (ȭHoHC`G?QNuk57FᜦM6VÖ61!ڪb_it0<ϯĶ;! {&<*^}#lR֯ ~~׌%[n:NP^o1w#{ lwN,Xc-:V򭗃VpH>޶p.4۟fWď$Ϭ7[ vU6Y卟A^aa(j@׉m#37 ?Zyf?LZ4S蜅Pd/e9*z%1'5]|>q ~hz.] ʫ\fx0PMQj; ? __>f^5ܳ{y4a00D&gk4ƥE5b6]οX3YlR.v#'Qܶ)~7CuEN4Hn;6kD3 rYk#A׿q@O^':#' h椴Q]4AIB#wJ"*LLF1Eq/uЁ;M,)x'7K֨ ) 5m%>nz^T]gDVփL2ҡ٬N+/3 VE g" 9.VF6?29ƥ(rJ۾읈/vM+p)Z.<7ܫaqb%|Ё4fMr=[ aZ9%oGC9܆/k|(}91-j"yG&**Y)SUQ?\dmJg9InRGk=٬(پ*̇'5He/QqݐsN:iVB#-0iU|%-q X :FR3lu˱]|YIe&4l][y*x&Cs=8dNdToW ZÒ'$3':4VXΡ}q9"*]ӂ ؽq"'Z|z=ӘqCCP}C%wĴ$|i`]^ذzx(ʹx- kg74V`òg?D;45LǗf) @וL9 m|B9v,B৘x$aHSI,?*ӞѪ2$%N~^;GΌ᰹X!|M Ps cɔKﺽOyJt\Q+>zmPبle"('o 4UE-HTi|㴧v%**ƒ/@ctcj{HlO~NVA vսAc"H,2 Z胇\vw_1p=ASgϤ.M6OB$C l^4d1etٯؼEJ]+<vۂ`qKȚ Iؤܿfr"d! E]S!n.Q/f2ˏvF]3ʡHW)̒6Y#uYdD# a -) ),1%ΐz$9DVŇn|Qv؝l ~c&#_«{ Yr7)7ybW~_ɚڬٿՌ߾L+7= ye#c> ?R{=+|e;y.fvFbim?b&Е:1DVlPTƐvtHPzÒ_&o#΢Kn Շ9q^>#N ֶ++O LMycF: ɢV,ZHF`Kaink8:{t}lr'nB}0*lc T=GJE]wږ ݤ(n*i/1Is}u+&RF^ ibc8T M]]Qa 9QhuD.iss+OIiwͥ=Eu 0{`-k:og#[4:gxm;&T`pr!=C@\Ϳ=EjW֕h= 8W``^f/`>Cghæ!Pg7C͜}HUb&W}X$Ά8x{>8lݺ?26fK EVOɄDBub kj4B&q?" %"-)!;[Fr L7nJ0S6G?`Ɋǖl`vgəCS8׬.Qf6T$Zh2Cw@׮N L5@a]B=Jl64Hmr!q'e 希g;%F}h߿@Wɴq/IK_ã́C~CZ^9i,OF~I"ZA%־@+tXgO&_ڈpvw,ҳXz>jqȦ"%w#旤ocTUKl>JCJl\Htڟc,.xaS$|IL%+$({Lh|?I&^xM /An omNV]K ʓ]Zk")l_w,N-{v%sgS*ot`AbP1RՊ$8?-H?ӋÌQ0Lb Csß<{s5嫊)B_Y4& #lWpc>.:u* %(A4 3T5J& 7Z&"-*v#~ w)zU~\ã;)@ˆow{";*$֒j󆭼A-a9-&GPm`0io"p˹{Jy0Fxz0T< ŵuΦJق;iLQ?BJ_YP"2|ʱY0̄~HT==!vGقbNR'~.3Y<3^'2òYӭqoܠHHiÀAmr3֨}Y^EhFķT]g^5P^j~G×V#`Ʉ\-L\QjK u*P52h?Tү5uЌh\m([| ]]Iۻ^,q"i&LD s_>PŧQ$*GV 8׍XWx,e~yhaI 8{nԂp21ord64窼07В`quk^sby|ddQ?8e GTA4= 5R97{}$pW[.v%ĩf,͖Hpׂ]Zt|e\7n'A\r ~*ref>%VnOOAܯlx9#:H-]g99o\Nu)4PN.~ƦP%`ڟ!@:bh(fcx?{u7xNt4oI cQXjG  5o]EC~XZzSM D:raę8΋L '(bD^XϚ18+VU2bء]~+RXJ]t"FC3Ԯy oc~,I9IgSX!p㒠q&!N"b@-momեԹÂg-TBx}f z))WCiK*|ЁE=tH;TmU!k&Vudҩe;~v#LN$μyK?(j3TMC*O@2o/{kIz)"p=rݳp6.^kX=+Ude52֬V6InZɵ/(q2k♗( [*F_*)(:YMX ;?d*HSecӯGk0N͋yjl_Ujڸnt?i R ͵T#9–v Z"FDb'2*'hr9m,"%;noY|-i"BwLBAa.ŧ!L˦v,~AX pWHL(P{'4k v+E}P-KU r=93ݣ,x#-w;p*M-!>pupr4fvc޸Xk7Vx2BjP.z m0pxRm.oˏތȹjub\ ;nfEPS8v xj 9#bbBx|f,zJm& b. A7jć5t)uaS$n dg)ͲtjWLY:We8sitdżO(koi q7!bt //2^v3ɈXHE⇺Nufp9|cx JbSAGY[D{?;mgQ s/e3HO{Jc5¬HDˍVO6*^iإnpdd K@(d.ntM )uUW<'=Qlj9&4k'j)(EFџcilӀJFw9jkܤÝE97\'fcZߙ*( cx dDgZŢ٘ 9烢9DӶkmVCխ- 9vر@⟎h‰WUlE4V[i*XmgT`ScN7O[4%A[gm7gI6YslqBoԣnhYH?P8Z=Q!>d;?4F {_n83ڠdN]5D_x#5\z>6=TEYj z>\1lj< вW -ێpJvp?ϱ/|#."Hn(݄K[qNG=Kl? T0xcf763nTt*f^*Iay(Pt?&eJ5Ie-HJq"/?ė-4"dmrc\!.y3e A|/qykWyfENXhWpfJڔϭ}-7܄1Q7VSz&у2HQWnj:@ kd 1ҥ5oRQr3@ bXkOU_kD@pK\-@d&2߽8!\b22 ίk @b6[Lid['[Cr݋9Y޴,;El 7s,y &u`(,.NFQ-b- mMQmb p)(9KK 5b'!,OO AfE3ys`#c?eL='9sL"^ᾒQ)ްg@r:\lN!}T\PRx$F&;\Dk':"q#,38'!Ӡ`"*RA2+Y:'!mRu|U.51uq·S?+AB%"´|g2HJ 8pz"FF ~- l %V8S_#=wRlЉKU, 7Bd+.8GAY{ڱCgxLw` 3cCO !Av kg:X&z]"izM ˭QۙQp I6~$VO!K0!P0SopLm]ξ$(f1 u?wD8TJIjGP?_{]S gBcĭbE5Butr";kT fu%xFpf$ʰw@^h*'<4۝aS.)ieGXXf;Ȍz\K#exuj&݄4R4&!nBb'x ' JT[;,PGx 5[WqʕĬS -`ħn 5XUgSq&cXv!RM訹Ő03{oC!CՐ˝̣a* }+=U78vق#(m[l7@ F{GPLL-I4)͐X"XtQAmI!Y\ 5g+}~jݻ~a:B`7-feP7"L{R”-PDjeA^,cW7FiTV.$^ߥ .i$4>pOxφDfXP–\k#|<#]Ju¢OݍtZW%W1XYg>Nv^E3*D\IHhU־m)b` yF.=kzvY* ¤I0bb4˩Bȧr? Y[i{=4(تǒM7O)eô0f.ŒF]=6y=9Q_{&P)3d= 4RP3&rI(&*L_{.7b /h h;RǯkCH"?:#NWC>az.I&1p9vVS" vB7)hOwBar@ [ _*)%I;?8ӅA@z;lD{[I a]O`JSG`Isb#kK&!Hp5bg3%+Y;"+>G( dK`eSQL+Oiग ,H # c '|+:"o2(i_=֋ׅFے91 Y{Yy7 *_DRt$R6~קu(w_KLg=)f+!^e7 i_6Fg $aCp#aS)^Dʮ5icK1{[$(*2]63Q`-#/ 4:O3)R<0I̚qbCmk36l!ҥq %B!q-,'VH\d9+򝸅nZm;\%?ų{,c 3JT16,$3嗵{W./w;oLZ]yn$ZJv4wX oHÿq-vIJl*E@3O:'/?OoۥUq\P1cP;x:L?V 3aM}ov'ӿ|EPwүNaeIdPZEstyk>FڪV*hCPAI=CL 5]j_uބn. q~VIܔ‰Cc0v޿ <<`$JTGOd9A`gVCLL> Lt%)bAӧ^m[.o焄Vy&N0+揠 _hJ_h#'Ij)3S,AQuI q Y3)< C̚tuDH3I4p'f.@GJ>]Qф`Rp;#+zsw&iHo `VAE嘞؉0ʄrb_f]Zm^8Irޜk3 v}t#-;_ "}xm[ÒtWgw'-z lsX]0)nzQ9z^8&RMwPmQW"$"iBk&HhDEES?_h$]7LUWu8,+I|% >*HMj}C h,Ꟃe3Q%+٭٥,jŎѳP`-EvB~Ξ߭E>Ii-%S=g!m_lZo>Ml: rXkzdƺ6{4p%M+Xvx^@Dm0<7}kn<˙нrNo0 A8BWD}.kd^$mLrfQf erVa^AnI`mL}S=[y~k_Fg8;.)pwk-f4zn?3/p]` qAYԵ>)`q/#JsB=Lv/0U1Ȕ04`xhƖvs)G2hAtF/TPMXd˾xu$.c;Яص`^"mʮp l"UY[C%ՑIqlk,~3nvWWh `}ɰU?xsa 0nh6c+dXA=4]*=LמV [UuF?r0`Vf׶9:^yIBnGz_dAu$v˳B ڦ˫^j&\Nk%6p_"4 ZL\.,v-gU4R/kfiVY~=/4kl`; 5x$X(X4dqT#1 bimZi# WT}V:D& ~zcCp:XּqP}裻\:zdG#0h@& _c!pyGwW f އ]$TLHEk:m?~NM7r>gR,t+edPh4s3SB"0J!7: ˆ" d 910,e 5Lj3oЀFAqьYϓHl Xݬp=ܾ<PY\=hzϿ-6޶9$hm dtۧ,02jHڷtc@ dreRDXi1_(y]tGt;Kl Nlprc0,) Ϊ&u5.btfTlrܼp *ҿi̪E#tѸ6:n ǻ- qE&P6xِc0ixXi/LRo AzFN}HOUb[0!QMM*FOJ?{B!'xMp.[ȳЗ;Z>(`3 լE`D׻M؀o%Pʗ\=tqbϵs6)-~A$'\5fX[CٜԻt;) *b4QĕYڠ;aQuyu鸞-r]IkcQ9P f©s()4G xqڼC7@_X>9ԨŃT xfrC,w3ckp.[Q eO ׬:BmY6ѐjCLG]p6rt3ҊV )w0<4RY9um7Q3^sdj9P B8E^:E'ZwҤ~:d-[%Ou\3Y>J #fT$Ne)׹mE;sOo?OФ7"Xs0A3?\|/=Pmwqtq9X.D,ҹۀ6<ۏ:4|+("$6 JZd|5o=|d_ <&vJZ8;O'#8]!Τ0{2 L+1jΡV[%ļF G1ܲu{vwM.Q.+\9!P~ iR@*?hT-k9hB\\ӥߣ=vUZ^z׳| ԛrq[k?v T' N"@"F8NM 4=VK .gf#.x-asv'E/C+̂AWO0e& DX~~T_@6F{vFZbr|tR˃w]eMD6yWŘ @$ᥥb)S R] GM)lυ%聆%0}oc=+X)ڱ6j`!өIR^H>a9At"t] eO֔P"~KTȂL_k!.,)&i.85ٜ~Gq$MBk+6Cp-kgZ 2yήH^6ʽBwU5z5 \m16lPnF}0S_Eܺ4j\l2 oIVLEu9n9}셋W*յmk MDLΥhʟ,>-4{۶pNJyDqP-y| q9Y9WN%ghʿ2da\!CᱷȘ -8/Y[;` IZνT)ԸRir몠SSeLw{v1 q`3tH?z_Jc;^|Rp;L#S1GЇܷ ҍ<ָ|tY/,.a_ECuJMo~O8D׽|BKKɮ̇(ėYMS:tP *BE9m^&gGYa,جN |S#vRv @ӝ+<;%t]nTI=2iVw4uRF]"3o[h-g KIwqBF(@3t$wSI;]ؽV I5!:B{\658KL1C%F?qu0, W"b $|gIGg3ン' ɬn PaIq1)S2 zO t`V$x0^[Pڻqf.?*8-Yyژc!u +hQA&z-f=jWk%Ozn}'T7o'`1|6O{*".U#`;;#UTHW4ڸEwzEC%yCCJ+P?(ה`Jv.PY'&PuOʬ˽~I.?bL ,%j TDY#wm ] 甧?AQG+X5|Quq]Da,p/NCX?e1V̈ުX0$=W$ތ{%4#K9 @QE/ѓkVN tkO@խGztzN0DFfN6j+;պҸlPjFYmLn=, GnJ%6nKDК|5qUr_ IwMH&#Hyiز`ڸА*L*|W]TT!n`I 0(ܫ6_nWqexҷB pfsQeqM (jVoqRX .ǣѳ=:xwGvO 0/|x#pГSfKѢ9Xŝ!9J@hySFӚAt… QW( *Q&%{)iKތ7Bܦ4S2TSͨt* S%#?In=i0"vIօ#:t_&Hےbe4g40Ws(1%b.!λM; Rhf2+Xخ5AjsU!Dklmtmq]L̡y۝TnpT ;lmM;H ;(`O,䅚-qNOO*hE/Aӓ )z^e6^̟{5El]Lr|&Zr;& *nqW] Ѝ ʠ"htX+ 1fnk'i}>?΃WM>ͪ8w^Nؼ<6`^x5룻WFk+cMh~PLs\$7CK_-,2`A(%妛ERm-~dZE&qӊJ#3/;\a**s'!8AAwk9{ 3CJ._x[31^UݑY65thݞ&7T95=:q۴ӱ%$ifiDz]"A+jt-1:@097;Dp+99AG2MG:oK-pڎPH%q%$3wW밗)bs ƀ/ >h=\jcjp XJ+bxyPugn&Z,CHhyY73vQ{^7(kޕ(y[1nXӟA*ɧda`E攭ZFo#I2(L/ $1#0]()!>m2BA.r3 : xϧ'=CmhȝcbBDpϥю-/6*0|jDqbN=,ŬvN ɵC)6Jb|dC_u?Y4ҜK'8:'pfG 4J^gWZ#;<C]p(0LXAưD]HJ2=/?R@G/ylaK%$2`' gS#q7Z m0HEZ_.4$P@歯L [V( +ƥS\ܽdq2] ۵8(ZU0-&fTі?5EGfJ^ "PuE" ddCdlRJ%$sF?`^Mpժ|^`PlMgdUU uJ]Tv9^DGu!!DoSdF|׋)R&(5)ASH/`=I?!j0uNzp k ls]z=5)畸˝:H@~0hc(4#sp Ŗn{cVHbβc }S^"6A~X/.mWy=%Eai!} 1]M-u+ . ?,c|y8)](&gk>otfak q=l^.7IqnjcabOnx|yF|)ظ"2w+P2;i7iC͗I *XFQƱ t HwI4鬱!3d 0:V֤nVGӠ.+OK|Ni 5p4qKF: ~NXB-dk U]Q+ni3^j8+JRn-OK,h zM$ ӛjg# O!bl6Z4(2I r~Zk@F?p`R}D8UhyrΑ볉NYD\~<=cc/ΓS)CxO7?f ߒDtz[][ ubU6Nx<k{>>m/t!Myɂ WNaF*jfuSQDjH:9F@!~00Hі39+O4G\b-[IHҲa1j4_9'3ǃ} `nr2$èGLš%EB!l< D)p;gzG>0 L̗f]*\\姜fm-%*& Dk#νPE}-[kȗކ:d\[J}5\ftA ZXmmk);] jC 1nђCHeQ¨XghLjX.]@[1iNm݉(G[ X~Ǫf< [; w[TZT讇) -\B!{,jlzXa]X3G=y,[bPÚri90AaV$?Uӧ,a"J+pPQ{z(3~ mՂt:"!58 Ns#twy(|91oWY;ѷԴ4 "N5"HPCq*+8tz=`"8Ѭ}0+KSPCSA#Ukڔt+^5f{+ Fx[s@ 4<&m~́DuN,O0!]dPcĤdǔW@y{|P*Xc ,ZsKq$0!ms23DEhbu(V@-/4= >MY$iخwy1:1S}T2;վ{ΟuoI@o3u ?/!J  ;}M J` (v }5Fqmr (jZ~UWpy";Rio<_ꢔz%(_ Xv`(-ikL`3b@CjO;\ECL򰀕,-5{4X`kEHǎ)27f`Oz_y{4&|鵃h2qhñ[1֓&`+/,WսLW>*Bף˷j ~cJ]>Lou.}Sche>f?4Fި?;*Sм#jf59:,xK$>FG?5Le c ̣xQ\Q `r84;aDM|v؄:YA;C/xm]M\U80)K4yQcN}{ @ȥT2~/I< ;(dM0)%yˏ!F {c ƇUO6Q-{;KM35¸d@ 4JKAސp6&x[/@BkEj`@1wSm EeW6s_ |xݨ]="z~,8'!:;>USU6Q]G`>BM #BsOׂ4Z.ǘ6&͕izp9({TscKbF ꌽ'=.q,Bh9qer9+"h7"/W˰+ua`cd_~{:] N#\Gۭ|&Ms#= FlfF:0t\{4Q@:] l?ӫfꑮ=f^"NRVG*o *l,,PO;-!!y[ϼ1]`Ut߮5@ݪYS@+o\^F_>&!e#np+ \ؕiZjGUe ;@}JәEb}9) l ƛdr^š/?p6x l 9ůc=Z[VYwsb7[ x +k8_ \L KAEQ ]N ܽ4i %[֠JF"-ۍjT8Kf;˜ }}2YA7}4hUQ3%'3Hm"n]ESKZGx{ृS/[W:4lK?n ͌m>fIT!P%_BX"ʥjeދ;T?N$qJ'#03 N jRB٫FѸ.)|`B|Bv^PaW-xdǩk>lCrIrZ=8<`c(60!*^&:`9xzWO^f;o \"̭f2[NSsuZٵs&\M$ML!ssA{7i{5`u[<.EE1ZZ>!d9 l)y8;OLbzGb*_=cbkD_zAe[8#T4d2{!Ü٫,Ns׀,Tx•x{N41+(֢ ̆0jS9m҇BI:f*UZ1- Kjn_d#M8Ilg <.-!Un&7A3O$>΁4{Sf5k>֪JV?cGfAr29k)\bvY4T[60sψ6 4\Ig1\8/*E!9s l`EFk8ʿV#w'j{ J(6ݺ(Ou nUZ@dzeN@} U0tEu.lwi5o7mSӳ .b[*-=#ZVbh= {qj4褴6&89\!&!mT&4S]ur20Vkfw͊eZqiXP7\+,Ġ k\ D4(+~..F*p-!St<0x>gHc#\V8 ]cTZ{̼E#i2?O !iTe7owd76nFԋX$WFc;>{ m3l3?Ƭy5j G 6_NL) "q_U4bs:\'šաڂtO O4)_[! x k.ע8 Xϼ9BL/MŖ-=``;ugYM%NYw?۹B^1Hcn!G\Ri~"#m.ZL0o:kj}Z:*BҰc^ܱLFѫ˛>^{lբ}Px^"x@v1E `'<z rB÷]a32 41K=Ky)>= I81"f}t,`[6,F{+iK~a_(K;nTOdEC4N /曗I9F1=j|ubg85WNc^sӒUL3P,YG7@hoיKOzɆI6_׸ j\hHq pJZMH/i2k8 ֟цfu, 2{% q b(h}kuvȞwi}vԸu+ J\,!Qx:3MiH2TJ.AH84Ub;<;9,3N#M8 D'F2.k|ƞ:zj_R\Ҝ!.S){:KH"⋝ P9 徭]HːSJL 4i%i 詫]|ф7b8QK,[1^ҪSg[ŗL;dșq"ަ碬l 3-$n(]lyLJr %XSVMO9zQC7n6E vd.1غU*C1ldP*hP- i.ܽ0  ӌ Oo$&O [[Cne>x{C-.w% K'˴|hD渁:'ڀoq;=BcHAJ>OwS5~ϳĂ\3TIiDHg@t[r M#{!668NvU :ؘ5JU1o 9dnq UGBܧg%lIvƩYH=#]ૂH ;!NPsPzbX(!L{|)rBF<1rm?6Qn/)ܳg{Itl?bw'R/4UFT-&$ODSfz d}9~g?JF\KܥP4vۏJHIK슲 ]!>@<WfvBǹYe_OI>V:uWN)_|Ͽ`޼'V&.O>鰄To˩F9B8;^th *hۻuG}U빔ъo -I&jKdڌ}N ,ldX_f^إ?[3nل" bV!YJci4XULB둑ru-`3~PDWǤeH0Lz7Iu&_N,l,:gQ=] P]E!^3Hc"Q~az]zo<<ǃ6F4ʥ o.Ԙf{5A":GZE?: 3(.ީ^O$7…R*o)6xZ@&@Z`6$f#L:9Z&+%s.Vk/yb~ ~&>Vb^>Vh@yoK#}Yͥa좋Qtx/bF)D"ac㾮"@o㹘q1*'ibSo>bmⲾ+o)p2%+qz]?.eSaNrgy1?Q?2X+l_* _[|c'~-EEԝ23uzirr^\?}L^=#d9@g1Ф`=8AdfoB-) Lس"*W4HXVGg1`svQ_-/$/HĄDu7gaC >A<[~eƝqW?_4din @+tv0xOVaY!D=hsn>eóI;E.v [9yŃׅZɥgRZDSvc#Ng -L"r#`m@Ǎ"QR;TneݎMN+HnRLtS~In[};+p5S4d%QxyJR*rbk+˜ `8|D+k'"B:%:Y:4Lgf".c0LT奞lk35Lkʠ[{1 yt!"Rr 7sƐ,0]#I9VXB@kOâIeU&hCޡx Mh)_'ޔLS"/-qscsJP^XNO1xVCI+;_iMt`qӥ^2,Qi!.Wݐ lTw-\ێ;7Ɉ苖Gx-1k^O5rߋu^+ef թ=tY^ا7+$^lwTJi&*{xfL %ʎ]-ڄeII tNL.1kW|A.rM,ݎJ1% gjH@j$cBh\_.0 DKx%-b\@zK6Q_Ͽ2Kb8 "W)mcsH<JX A/OA蝲`wn},Nk)f! e :F,G e| Hc@D7y5f.n1Ḫ}Ws_Π8p@zqךv+泌lEcKcU0ZJ5Uқrq[[t~tHtG;ƶLwf-̑KӪ}_lYrt'3c ̭}꿯z:ߜ5!Yy7G7l,"K#.4'v+8HF=h ݨ·7񍷩G=5+l^ר\J׼9rbPsC*uJ_J_1 d5Qj"CCh_<" ỈܴxHi #v"| ٷ! ,ŒÏ9wvB:#DQzN6ܡQs8O$>h__n!-LKyqq.EJ첨J6K@QĬKi[)pD`7LzgAIER ldDe .%JhOD^=:kcZʹ PֆǷfw;)&Scd1&f&38G]%EčK𮇾vyn5Mv5bNp|_X|o ai1!- Ϭ+? z dAGdLJ.O?XAo2^=v>} < 8V9t_o nM-xSxhԻ>OzP7nn:n+-]McOWʳRK$10AvT'BF\n`,xɣ+|Wy\都$ClKZƗ; Ŝ\s]Zk$ 72|?1q..~s>6wVu1AHΟ-/'2j )1SXEX~Ed_I[?`V߰p;&T*z IԪ򘽲< $| OSHCC";vk*zaIo0kIF;#<`[j4MXt޼*#anDl n/!B\> 'n7|@[8N uaSBH&k:ƗC34P- &0&&$tʯ`ˤ>[f-='(Ɍn񯗚sPU CdފF Ew\Mp,묨e=_J3n  ]jV[X@܂5<}/BVlX8=9FxsDܟWc2|(Ph\iM{\agڭvzM"I|-J|">qrLoIF+z1+lQ-1u g 8ӌh:# `WaEhz_b1OGLǼTiHАuZIj_|G7.Zu ޶90D)%*`-BJqZPZ\u!&iFdK0 Rg$DGgO|V[gԱ0o ,FUlsP=ڍ22:h`x;geXӂYTYD7on{˶4qӺ%}!L|S1wǐ,A^`]pbJ@1&$qd8q M`HeA5tC 4_ iZd`OsQE~L/-;E~E*1^[d\.'pceLgrE2#pEQ}VAb XJ`P Ә9I96k8yΊg I-DUISO[Axt9YA.ڝ%Y31/ JVVJ|9sz87 4<'[\9M-a<:`Trn*j|}y/f2nf#'pHe)=tE Yd[MegůP8ldngop(3F^Z~Kk)Zu/#gA(506u*J:<kpaU$H_iP$W)oA`߁}+9ÈP&$O< v άC’I4E`2Pz%  $Dw(GQLe=xKXtuޠz\%IZflK|e3čC d'yBQ<6J&lM+etzu̘"Δ6V*fwhWDZuˆQ8t$eb-úY;g?kMn^bi%(Չw},'!ۖydW0bg:EUaǎsvdIZHdlnjd#أJ`Ҵ!V_n^W^ߦЃxe x*,>.g ^AT^qKOqYv(C6{*Ygu)6\+ݳÝI ' b tp춽]g~Z7-r4&d|"/5|Jd}vxL(ړd @~ /sPaHݙ* 5 WfTLpN{HGvh=|E^jp4~C}V=IC 鼇#K4Gԫ "l0[z;`IDR Ś^I(ϥ_@n{4]y4y5䑙lS&\uBL-aǞs(fݱYy{ ݘ2 mC&dT";Y5 #]k𤍗E)Vpjv_ ;C9aCy/q-`޷r&ƧDz8It]ڔ~D*~B0s5=zq=Q5 "řZdLh^P7}y=N{Q{Tw3I+3J^hH_cd.$-'^{%0vDt*߯{nYR8[;l9ǂԽCf3|0=wM"V4c I OIP4!TS|h|x]Iy(ehJrp7J"s["i0 fzKXנ 'cDqb}7DٽW*UѢ:#G9(":m1}8LnJsb!&jB>ID46\[RIIo9$ǫv '!$㜒]DŽ_A:|f R@s[k)JM^}veŹ?V\Hݍ eFt`JWt?drxt\w S&{67>lىR2sb enMK@B hׄ`,B/z1EDz~v72pIZ02VGԢFZE)"#ΠCń lRXvMd_"}l5SAےX4gi"O{W~nu^MGn K_]n%kĘ |ݿbBƼ.?1pd2O&g욅*' aaUi2.qtsV;`!Ɂ+vIv_>*iGp,}lDLv9y{|GR f%u\]҉X]waP9R3}!6̒ "^ϯqp *|[Z쁰.ޜ6Sx z>sF';alk c$~梘.&BMpFW!Ʀ=[@-(XBe;5*J@HӜCj^7AŜk} ^C?fQv|׾WГBLOF_d7WxHc.Y>fajEde*G4?&)vKC[+:;N)\SfIO[-xn1S~EzFm<߆M2"Q3o{14^ܢCl$H}*/dO!|BgˮxͲj{l:Bx@KOg߀3 SWnHK}JXVbAZ>p֛@ jmK/sDUBkN LNPezHRY<9{.5NCsi̠'cD3oX&‘0(][qԾ.eL(WBݎeҎXn"cGU+ PP01}0bϮOIK8d:2R$dzK0]ZOL¤|'Ew:ke`& #6Bh7 kL~vlvi*4wDb'>_7|nkeT='>: 0Z:~Ƈ|!),R08^,+-T;~-Zk $.졢!ù7HQI>sk1ˡ3C$J ԂN*A:^B~ yp$A.5yɀ}shܢtf[? h_NB0=ߵV0uBD˼f(edE4]OK9M}h:Go\X8}8g|vbɮտM;Νl@Mq`R~ڧ5ߵPd%ӝʇ !rpa,[wz'/}^\F]1U!1g5Fx5)IF.fU@k?u|wzn3KlL',+}[M,o#ej3V!#ĵċҤL}V>U<}hzbzB#24urDͱfM;&t{t:iJ(9Y"@^,ѢhYXwg?ʋYhm+d8fX_CƈF\V~E"85}Ro@1 [C\)](F=7&!pիH0\JVw.<6O5 K^?e'ʨy]0ڠVb)G=a1ˑԱO%RU8us^Rt? (K횅Ì>ߊ[#sJ> )c}bs,+̀@A(D==>d-ᘊ0pOD0_{i Ah3aޏ$W9l!#f1 Lkh_;&4$A3PHPıM7];ɫ"b#'%0+7l ]ڧJ-D25AM^զy6^Y's~\9[r`oлd nKT./,/~}'&#PnPʖlaj61kImj>$1աJtkH@{n@Cwv x\,p%he|`$Ƨ$O$@;u& m?P6xL@6Poʗmc=A0ۓ>Kmtr{E(+< kfs6PM,AqJO.H<<_Hty% ৶& Sޥn3 M#rx>n-E#MWXmlwk)lc'R6 c2ܿtg+n~f5T /`@bRm0?%}pյ}='}T$ \.!jRC 17MV9+ބ+5ejm^Z >T _K Z#f%,@ܽYzY8ɤ\iE/^*=4tk1O5-~Q^Zg.Kk}znh`ʣv4+Z\}] ֩p?W٬ 5]P'cZʛ&'qiSaoeʷ^ #5EaI #?Vk{CU2W}_3V\%`h~~>s87mIV$:#LLZdjWz~Y ZdZN]G5S(|PYfIA~ ]-8S+L~R0w1j1X`kDxn3_zmaqq& LC( jʋB7$MS0,/X=tGBp}̒ȇѐu*1Ds%1T,: *VE/D%܁*~KᙃclH+mhsSZ5Tf"RKHQbģub/d?x]Ƞ3'JߛMw^h֮N;]%ȹ+9XD‡Rn H!p>}P>MILv'?/qL$X߼J#"0 ϋi|3D2ZYkn( gâQ"'z*Ά+{&/ L#zC6 M3\5'=Jnjㄎ仙b;_V33-D1Np k oㅂގkhN5ԠգqRߑ;io~LoK*afʠBH9() | RIqpԻ">O /7qcɏr">F@"mieWJ^RMlV0Nؠvdi %pdMD<K=ν? t\3Z2.][M(|cL}Vx]i |hhN%y7Yq(LR@W 6^ҺlTfHZ)Qc!JkԲMI偍omPihW ӯp/Fv/eZkn5A=x ʪ).M Cts%`w=!ԗDܿrCDmrڎN/q*d`*=-]oCQN@3IÛfm/IYvh 4|h ͎J ^ 8,o."Z(]&:u\{\lrP׮Z_ip+X9M0UkJ`U\vwÌ^ČX2g:=6_HXw)PS ("0Ի9NPk#k>ua9Vt-6KK/Imzs L$60(,f t'QL@63$ȰHD+c '~o_* Jl%dwOQ1=dp]~XlfkـiWZ@2{\y A xG.N{5V/>: =-z}n{W{o([ >;gVɽ<~3}IZ`^EyЏ8=dPxV3 zUxRm&kaݜ&5s4%Ti|>.Gk/(3kĕ!kjVPaAeDCirbzgC l?ڙÔ%){*vuHtPF}fr_>L#%̗Lxz+l޳OU8Asþ 308JXaܿ=5U#L&߲i`8NMU87/ m,K2>M͒6[wt@{C&rtaV/:PF+r |mI"( xDP~߿wf sEB<`݃9Lӛ!ckגC ͔d9R1 ;!xw\2UK2e!5޼7ʢws08 qHvfu"m!>+)f2P gUQkpiB0_\nR.OOmph.ݝ(n+'ɽx{)QM]bA]Xbg/jʺ;cTms=":Р??w)1Oz3a|coH#]8KsTЍ's 4l(ۜ.Q^2dɧTX槶,HٻTN~OP(ؙ.i1R lA#dMj%VuS$Evf/ WqE9`꒩Wڗ8ſnӜqyل/ Kr[TVl$OF eN uJx ָcb?{g&́?rIY.Y~B ƱKyU<Qm?PeR.j"]GҾ]޽cbcii_ \o,7)5 Ђk4* kr܅T9/8S߷m<([ٚT rEuDSB|vnw&OD Sn0mvTU~EBe/&~"2&Ҕ_U Ia0?,5~cұڷʀTџ?on1a+\2Q!;[v0 -;3E#^CbCshĻ3u%/$B+e{WIIį%`_ҧ u{JbP5Ga纗#grUw<|Gj6U.s+8henN!osh &ч>23`axk4E&.]kB67Y!ćZ*ΤmjBhWCInFw^'=Eyb&ZUi>EaKBT+O[Lx۲U(c3>Õf? Ü7<5v,j8G"<+ZOH@o _&rcCTCaۮRVn1ykp$i9\ 4+ )[ C4ʶ*4ո-*}|*p [y-#R ]'{6=LY ~D'{@mMhǥ0섰M'].\N\i߇@7 /pvaó&NWFlpUaFo?8-B{~sРo !ZY5|K;@LaTU:_k|_H?⦗ ߳%k[ZE ujӎlIUX_sk{K5(Rvc=؍l' c &Hm\u-0_qf0y5^hd;Yhr gq) R1֪D2DfM! X|zsEc@9*XsO9ε,ZRj8]&Uj@9z% fuX&t Be  qB hxo`^BPce02TW/5qf3$I0Iq–|Y5+~eM'vhr4zrăgc*GvUX}?}iYʱ1tt%NŚ4h}&_Ѽ7\+V?pB7I:OT4pG~LEܴ fu0l<8?y{?SE>c?~4= V"k@H\0Oci/ҁI,*1[zS|s1n_)4]#DCyN1lFN19NzQM;#T1G/M ^Cu8E:Δ\>@[:`8Wg|KNR !]QF{EW;޼,S xuܫ1Ҁj"{iEq5Zml@wBYmJfQ Ԓ+7\\]S^Uf}Ja5n }[>}z߯%7Ki(1ֆAKx*oʽLz%Q̸U,6FR~qa ۗd4.YaY C8E68t=M'%¢{/Wad=i a`bM_CJ[)!T}o<׹"IrA8Hj)B.K]6x9GȔ67Ӥ,ޡM>"ƭcY`-P\Q$Yp珼fϪt#^κmJt1, 7qŝv!l-I{ӽ:*[V~h2^jܭ;%όmkQbJN˷,3B{gpN`!aAYUn ܋6` k'5/zډ:*r%9 3Phrjg_xbH*FS2zBMnU2E 8/lX JCPq2}(K= , \Yngc}omOb2Ln\`%Qc^|hG{eC!mzò rVȍ",Fo֣ S݆'X"'n-.gBrwf%犡펬d ~ u{\fWn)Q`BQx[qS#Fӎ" Aΰȡ+3\o@G) J/BVppىo"nGK41G}{6 Ou"=\-r>_ϩ\q69[oYa{gRza1q.O&$XAkWO}C [3qTx'=?>%AO~(LVY п{*.NVKkۇ'EXD7p-fBچ׸ǚOX1y2#̃-^EGb~|!nw D 5|ҪtvM mDX=rjZ5zwfrXڙ-ZYhZ@OY~G?ɈTfQ-+MΒ6a\B38? 7wc~MȾ|?DM\lge՚!H|*v |m>?'^H)no $kIwأ+1V^=9,&7SꤾV8i(Әsq +Kȱ6R&13j4|cv) lfb7Tk9'aS*g:!环]>f= 'ncN#@"E^ -Á KCnya1ZjHXfKAIg (sެ+ !`A%yzt!<կ{`xIKP, WmjR{- ޲_n@s(W(5l 8j@iXmbZC#|OG/Rs?06IN8Tνa/9_KU*"L~LA }Nxf iղ*8+oւ BǧXwu+O%b8\^#Be:WYe^a礹 HZw;|.*qm׾ vRsaMC`y`P]W=GkUS߮*5c[QLT mQ8l&3Iϊ^";I_KS:,zN#FC]E:ѡݣ^+|f*&"WK…!DQ53[]؅<b޷) @d-/%6'ȚcsGî&Yu[gLfvl|С|L὎WMoS UPtP?8\;<*n>Bpvм)сIL loڱ7 my@蒧*!XMé ,ی#Z\;buw(=tm;T0NPuYMH[~jU$c6@ۃ)@5DƦj|fg*WtW*TW")H Tx |¸d{ع~| N\'G_:P)Uf`XdܢIdH*;x" Z~Lіge-/YuT/J~*\m=(eHޝYz)F#ڗPn`i.J_\2I6:s$-dEDI".t\y^%LVC;îy!ŧLSnۦ4 ^ ,1P@\08CJo!0=/K‹5"ou$w]6˺pI&L ^;@ǩe I˪}6?dTn_:Mc|q)QXC.nU3uTphI<=GCo ~Dt4/2N&&[@.],^N-#hzfH0SΡp' !.x34ޥ'r֏ȺL\#b `d?Dx69Z$$ lHyL#s#cepa#'Ht5`-xx򯂮B@y~H#Z>Axȣ/#?JX1}萊}>E}@*٤j~CZOٌ^LixO频5NrՏ*h%؜Dye}pgeSI_/5S] jː[6 %z޸6S*C2߹%YoEK]7R)@ۑ 9 |a;d 2ߦXYa*Ќke/Xw!A*'; $pq>}.AaW%ZMjbF"Ck`],ڨ&4CHۣ~]c_yzWsdqҷne*aM;x \q,4W f+V Hj~em#AubB2sj 7TWPZ/T~9badùCA@w =f/ŇD](mEh^2{kRr)] J.ڿ Ɠf8EIm@9-S运™Z"4qШXCddTk$xr_;XVK9TrQj V+O+E,&D'`k_爨5 erƒ^ b;3 ˄hc%B3g &%bJ#i%}G3ͫ kA2Y*",mTu~i|*qvrDhSk^;cXAR /6[Ml2SHu pf#n\Æaeޜd"d=y*dL_gulު0ޗG31;ZL.?Av:M;V,/AX+`3#E B 9pZd=\ڣm` _I &̇Wɍ>^J4$n4h<33 ҂ CnucGq(jo'@+>>7LK[it6} qǿ7oif` i662g$}|.l'ŷ]_1ؘ}'JeJ[I.LSPH,,".z{UW A'r$TS 6@)PS=z1'ц=T<:z~5Xu/vU[{=} fmt#& ؘ@wPUGA>=τMb}ljs{D$?>\ط:"H \r.Q}QҫȆI \[wD")մ_W.A-܍_,o_ߍǣɫ{v$sJ W ڈq꬇!& 79S4VhEYg{qhVə:L\V" <בz)\t |u,YY=HzB,px͛P HR WCS ˨r"ȏL͙T긏dI$_9ws+OKڒa_=I'cN׈k[nT/}@dts^@fKY!~$K;%]+&_ n| w"C{V0_\ΏWI q30Z}! xbvp:,Z&?=)veL2f߳!:sј^b*'?ӞцEຝjo2ñsAY-$ r>XWid*;c&W'3N1fR& j~"4][6-YZ*N v#P7 g3cɻdN{NJ˘buN\/'G4݈w6}Z~:UZ9KT_jgoSkKtSߕ-y8j56ػ٩Oп}~}a-+)97ⶡk+P! ۵L`x\w-0rpuɧFG^I=ѰI&mVijq{8{jJ~uTbȬ@m@5n/S,H $ciZ]my昈DĿ@q!Txe5{u.~)o96sl.BO~('rA ЫL8L} `B0XO6)pg ֚Ǩ7H:~(c%nPԦZABp.0Yw6[rT^n0t#5o7sO Ԣ(孉Sk0 L!]Js):QjIaq #%㡎mwMj˾v#: qsof%mll?Oz5"?+FlSȁҨҔ#g8dΈIJ q. vPvZܛh&;H[յ+LBk"Xr-w||ePM>1#v9 *|pEG葳ʸ>+Pj8晗;sԭ!v;lA* {O&$5[{fxMrRMI^7ۆ_Gk+!+0-q<"L|ݢC%oG2 tò<1-cmAe;pl`.*> xr9ua<#z,b +aiZ=J/=2EBjRSt8I`#z^ӡ;z Kq.HjwLg(2?,uG]~gBX+Т4E)3f88Ao,4WOc$$Mc|PO /& BY y#`/!W1'I?4GIޜqE%rc}76 PZ4/aum(:d Y*J;{;:gǥ?X^刄B(̢1%`ehNgRat-:@ͪuUA94GP< bCأr9$AC!q^§bfU"Ѫl_ *q|H~o}aה#˝6Q㹹l0$]ѼgǑŗRO׬Dt뽨e!SX#|&I{X@a#(A b`2[6Jzx/B-(I;i%-W&W,4<(W#<ȱ/TP {ͺZ<e0B" ](-r<3o;mC|,Q }I'XhܝOl{H[9cr bRO 1n"4J /wH2lɟa% RK>ZpOF234^Au)S &7H. @N@pTX{- 30 f6ay)Av؋Ζ)ڸ``sHMЛzv!յ'h8Ҋ4|X(sc:KU2xpoa 29c ,3DUebIFʤIohAyUr5#c `gSov0dk>kXvh>2uE+[3Fd+ cNc!ʺd ,ڙ-Nk=1Jм?N _lxɼF9o$!}e12lڱPr0X6Ā OyDkj *2f9HKIP(g9'S .(%f˦D]׏l3osF a%'\lu 74U$ד=gꜯ$js6PlvX6.<#\=洖X[MЈ`0(yn9ToOg6a0A iѰlZκcSI9: +{BtV嶞KPirzVjfU>ǼWVwN2]gi\Q:ꆙҲfĸvyb [ߓ`{s`0L-{cfg}H-+BxdhfTw*1zrrϠ"|k }RI,ϡ3 eHA/ aRaەOE0;|YMҜKD!!ǽk8fgL[tV qxDrRk-181tcN$ac3a:5%tQ9dWRKh)~I2s"$:s}"I"c./ Z@!r>Ey@LѢ/g-!% ҍ?RK;nuspߞ$X7Hh5஝OA=O\d}@".F|"1 E@(~RfLO BfJg7ZBVb%H:[(KhkP#,R Eο |N8hۅJDZ+%i#-SF|͏UdR1$Ɛmv<-[YR H#mhncG; ;ܖAq]eqt|_S>] :2+7?ǼܱJ 7xޏ{tgwMj6UftmD WX5+C*aJIW77Pk38b2TڎA_i6wgThv&BduJO/M*Cʦt<S)b\T.d7I$,_u}w\tkCe ccRi䔎dxHsŅM+0#&Z%F% "qfκwO$QgW`Md;ϫZPhƥiW}dYPt{`*R7NjǂQE_ QpPbHZ$jy'.nZ?K bj;dm^]5z\,*$멓 pW1X5`6ڣB%42EQpQ˕I^%sޢ00nd8SP8|B7u׈hAkO4Ǯ5=Yuv=֣#W]ѷ]Zqt}pa[a@Jf6 PWE;ijp!)"7QW6(CYGmIj-[3{To*ڦYTo =e ;Š)qӖ{Yh&1Rw:63 ; S9G0?<1ھ4@m>{s1d; ٫s'ui ƺ(j+rE`#i-Ymj1/0U&fi{w p.8h̀nGn7 lr,ճ@Ӳc8_|Hr)HmҰM @,`4&GHʮ@sf+`>.$( ʹflE-Gݘl:,^*#MYZ]ttEN{|lXrn;Ld&Lb[}ѓh),@:DCW!)ǯb/b AV4QGe9ͨzwÚMD?Fܵq 쓫d;š&=/~35/ nQ2@gP܊bZ@?FW&|v#߫%FZJZ RȲxRcDži6'L@g*A*{W%AuzFcÒjy4I.,oHӌKr&B:#4DRlW*KCFHP )Jjkn̽5)b6] `ȯk1b|%Z!%| 1pi]Z9|*z@jyTJ}׉}X`0sW *.-jEБ)*6Q!mxQs=AdZ'=%&T8 kyttQPR[WY=\/=/:.jHL 7WOdXz F?(gPMx-d%9.ѥb[1 c(XbvGwjд6{ve(D1Zrg41ڛLP˰p-;DvZʇi#Rd`捅Dvع2 B ^?2got*l=1|[Ќb6)S&ly c"iBF[4^?bM$s<{RwyڌMEprdܻaX/?fLȐ !s^io㥭\Ct5vOz6D<k}a+gf%E$dE|Saq[>l*mj ͙$OQ75MuV^sSsv+`+ 'HyWh ~A3^jxa'YB1퍒 @fm UXY-U>G ߔ9Ŷճ u{ 0Mx|rS}S݇׭XD\)Yv4[=YG<\$\h=QX\z^#.mWPbOc[.5LjXcwhL\O&nt `◈5HCJ3VDsjA[6R&]Ѵ<_SIsѱM*%~ /Ϯ!UO<^cl~* I(/x135uDћBsdanuŎW &0l{kZ|G=0|u7/f3k ]D#i0@p^s`~)&-7kЀaڞ.=3*ɕEǣ7.Z-26$Ә[B|tKI0yi.S0 3@2 ߊP@ۺ^b=qz,#ѴWM;VN'ی1dQJ[i<%wy|.Vlq~3aUؗjqad:AV'u"u! yB*` ]59cƑTPHWqcq\Ą|TX^.RL/U Lf!]8:bn|]ӑUJh,~.p;b93\G0oiمz+oh%01'lֽ ի.3-rQTA>ow5!EbfԌlktBzg<7.2_ݩ"⥅jPSu7{>=6&s6z sF!uh9Fiuv.:I7I0Dcw?VFP%F9WԵ\5i0bK1gC:;cA@Tv:J~C'PElRK3%X%UuݜiO'RZKUosp_Yu-MDel۴'u!c\k[ 8`h쁀Dq6ӕ*V8[x&ۊy9|9 Թ+p7YA"fcdd%Z@M}^<*PgBB:Z4)WdJϷ>UƋ"Z*^^!C+iWnsTJ1hoz+fKŴEvqϺq8 `'{pyB\1CsD`MeC Z `VsDb\)9ٍx8YFh}QZy@]aj6I|hX>> Oڽ&4}R:jIu6xj]U>s˫kT׼/$Po)OӎvӞZIVޡ J债}w \.B+#4/ t^HYaJa %B$eo[ichq-NyPKW I+&G6)z#KybԿ 0}1Mp5;DF`BOxի+T`| 60qMlhcBY_dA b1cg ܸ &?vi!>_6Zyf`71$.<9hKna_;|hc p3xr;5tћ}+0+Ve"^/qr 3Zаl jAG /ҥA[ Qky˨0HX2w3K/Mh}8Zo_$GKN RinGSo%$ Rq@ǩ?3j,k F;wٟMp~wTp[Z^-ndʦL4Fǔ'K: {tԁ2K_$3[ J~T}8 M*p PPc#ڇ  $*fQ0l~fIEB͠Z(h~N Nup#M{qPo&`!hI`"f}y0|s/g`3njC ~iό2! R\Qo*uL~cXe.;P&hԻˌ?!0V6Sjhh6ABPq/経I:OsL.botk;lj{=f9>&ǿ3&jx !f #@x_ω&A Z 7K"Bxc- ?M7@DrARSWj,TqʶK.S;]>AM$E8N\wIM8cLq1Z)!pR_S,d Qj cہ۰փSV C7MŸPx}kz=_7_IA_y؉e n<aM{ 5!riE-:\1ȱ+\n% S #pP)=TLe IҖ/cm?`: ;e sǯZ3)A)쭫aG!b zGQ>ө+{?Zc!s$o_;| 0PT@4)ƴU Xp)J;%iFR^n&e9KbV״Fx#zn[oF;;1/u+'l<yiLǞlڝl*kR/&40a`,@k^ka&E{z3Gc]-e'_k44Y Q[Y>QIR Bey^+dvm[MKdPBn}J67+5D! ?I?e툁*kʗ5<2^ǥ•xis Pob B_Dgl!'Өșϋ&KM^}M#4{a*eDU? *Χ 'w'77SRB@Y <vQ,83ʼn- RbVzwkc,k2s$FTH/#;^%Җ5*{ʾa^#_6QԭTE0LVe#xn=a?:umƔ+ex{sYm>.׏ 镵^U. @?azZ/a@<[[x]ؽ)%&bF…Yxp-,sbT)ɒaG`,#%RH=iw4Qm[B]nu L6<ɢDLEB3^9.\&fw<nA\ŋq-kUE3+ֵ],5t=$ws'r(_b:"ZP=wRqa{633dnT''>=Vэ[v(?Mߏ$eu3{Ө E8v3l; lz{]>5ExޮПk !5&0Z/RΣ"$<0l'V엘:YE)랏Р>$+P#myi&__Oԧ~EJu/K_<.Ŭ.#Sc A1F'cF煶f2K;I"_/5c{X%Yt39=T.ilM*E" >&oRuM) 3-pщ%A޵Xql#Wpup YCqΡġj Q' Qq󛉸)@wH3^ cY6 o8r^N8]ynd@Cǘ xD@TMozGΔll,}*;6p_ב\~E{5g r~;msMӺGiDAܦ׿4%-3'wBp1[Jؿ Mizn]ffZG& Q?%wٜwIFސ'#-bzIU8))E_ԽBB>rq/ODG!=Јcri\4Zg!=G;l-c%"ձ  [%kM-ȓ A o ԪP[" C86B+wFz w,+秳%%vD'G' \uIVv ģ, l[=aaلu^~fmu%0@ OI?vs&-b84H dz|ңoq3<<Ӷ2m'rT)cdE#U"/R.m) d![_ӛ;za˜oc.=m,UtYhZF/Oܛ(ёՆ4h燑w, $ovt)ًpX'R&{L1#{P#Ao 7erR۵o(M%EE? ٗY~8â4bpPyyH=s&EJw]0`.ރZ i`Pgn7Yb}I֛l^.k2Y yqub l~-jb>DᯂHCkI:%} I" i)΀@2)Aƣ%2LuIk WF^~sEX:R]VJ JHXfNro^Y_*F'joӼI$W:P ^ E`>~0PsGMJ(/D0ASey,RDJy(PE%pxB`1_{>,uZHVm /щQ]l `zn5)i8y%Mք, YxE@ZIAkB@zH6Sg6zz=f0xx%[;zB \C4#"CrVY~ ۫d] 7rCKPρqU|l^UROLoN7$-~<`#2pRP{%6$w|*albM5^̖XJk}D蒆?Ee3eT0fS(LEiŴ`Կ3O :׾Рٽk6z0[%,ܼO^\A'va9G%PD( ݍϘ)%zȬծnb9feU3QQU}ysd2(c½sX{IINqf$y9[ aڎ!QWHxz{CV];nE8;玥j?p^7VҬBbfpfxâ<('d@ c2p3~8c[_ DMj[Tb'Bm\T΋XEAI}pm;hxp83yj& 6P 򌀬F(<5y˕!^BBaH8Qfx?MJ}5qhb'sb1zYJh;x-4SK~yw\m굢BK 2"='v,ـK4orQ7T,9Ȅ]F+.[-IjkQ1:cf ȞRֵ;B9LOt]f؅EI;촛5&5?O@DA*k|1-o%*R 4׻)X]٤D<+^X˃W/lߤ=#IG3p:Pu'\B~ul\EwS Z|$6g:S > K~f42b_+Uz5»i/<`[]lu&_|K'=(>;T`'pRWT"9Q/ú&s꼺gZ/LP=jH3NGv~,l,#pTLY$LV37`ׯ_ KL"zI E\%vꍿ<]T<m͓nt2!])R?DndbPB)PQM/oLG=h=#`CCJ5nP9kPY1Ln/q^ %ڗm$ )n_1poYk{$.)%K ԂiJ";LqO;̦"QpJvQ!!8BCٞ;pҜVԪ\'JD7`'/mVrP-01#*T1k4А_y$mT'#o0Q>-^d&zDlV Ҫ.8ө0"*#(p;55!}qVpjVZo2ciP5O l7{6.e $zj{=10\As3ſu>#O Y*VQ+7FKcIWėЅ(BZ$_ߟw^>w[C_ɡ'gQƴ˒+[dRx4N^ԽQq-81*5%m+ƶld(+kMa83r,*hX<ˊ3d#@$tXq o@VvpIvෞvBaS`;؋`rwq1o# ]L@C j(`DȠJ&Z+ "GI&m^\<8..dP0SMbf1!s!uHCeIDµnl~K"W;,~Ui_;3gaȃȺ6\m/upzߒG_ z9OiKo.otNaޜh[A3ӧ 19S])qd ;hUf $a>⥱֖" kXHH0gGYUWIT4t c} (~wu:RoH v򐭮Zr 1Tj*?+}W+) . l7V}܈"D,ͳz/x3da k:/_cgߴ4>qC?P~%&[)i^l*bSBshV c=Aɕu͕-,PmL,Ep>k}\-Oc+N!ppKAغ,U`@>Y͜s0bAQ JisYdt{A =/sH82Y,i  # X`Kt_X([˙hD)0ѝ:j=/~ɝd Ѩ ҂es+0pTMR{9N,A%8z Vi{/}jZhTUSD\TQzPύ6W3P}eNRKRƿR&T&Itay  U]Og3[*n' i.'/lNZ]l4GvZsUr!dd ^m /[FyCh)"C0s, ]y^麚tI͇!^P6hi`M>%?v['l h*% ⇿a@LW^d$ck/6j~cğzLпD0`JldiJ^!t@|pv? ExB&YiNk<jur95քǤ|LX./2r޼on!@=mlA|rIpoAv `K4[)D)DdW0!wO wXM?L`9Tҳ (164]c\frMiH95n{{Я#'B3yc@_1kFǹ=1PitBU ,hc3kt^TIT㥷tO" LǤq֨#XصQ5ɫK(uBsu:by^x8=HGFRΞqQɫ"Vcwp๻}*c {PJ<.v(., 3B|-8&@C`ts[^_4ޯeƛD~}`'h\.u_YI,N[x5ķ17^Ղv۬23әa46O遃[]PnU7;#;TykZUO}^$asT\`DԐ~Ա* j2)m[NN &$UCJ9mo}[ם/XӚ=h^cjhEDLaUΫ:&FualǓx:b3ԋqrOn|=Ö#KeCu+ K`aeb/2_4#Uȃo;^A #W24LˬhG˪Vb)KóJĒ9&*L( Xvu8r^i:lꇾBczp2,{Go\zL ^KUsz51sbzMf6)4lp-1i,~tS@B݋),sǵӝTa"|A偳{Cy0pr˔j@ 7Hzr37rn  sKrKvM!֨acO%qr{a'mn*"Ci9sV=1 gЛ+6Yp1~O:kf0v#,&Sh`J\搭,3& e#唸d\V$rw3^ !3|>Ȯ1z}_2e\mFbvthe;(-hjn-[꺮jRtoQ` Q*¨7e[B{rco]!;Rѝ51{v\.aEHOo!ݝwcEU{RjB UwA-2|$\hh#_tx5)b*\>{,̚b gRd;ߏ {MEm3 K ;GxzۚA#=GLnyP'Ɩm@:?:.Dh<G'lH7jxI6&EιC) pR3gc{#ۜSY3'nNht=7fHMK-˙ޝ;PvDD.>㴽Re^30r`Cmyϼ *o%Ϗ2;'Os]HE!=Oc`?yGւ(Q>D8+_{-t# ,ID/ jt7Uf~1I!$Av0J=QphCt$>edmSۆk!Y" ~T!= @QYQ6}@FNzc4Ӑ}K[&>ܚ#9co@ ,yHN_9ЁpSc-xn'z;LiPKj{®2nXCg꾱ԡC,^[u]on~t\ W7ulٗ#Ryjn$R2$l"|TLj-_ΐ%Yh2Rm넁J H$H3 9łOPQ򞊀)*%=}D˃&!@JۯJzx;3lPeo{v_*9.ҹ+-X)v#݊;>'wǕ*]r̈qakt(Z7 i L#%SbzY3).ɗ׀[+#JgMKBn޳5Vptu(8 Hv0!& 1Xq"$~ *KPȘ% VT5mvUL~wd1|io ԁtڄpeqB`*z NSX;7eѰsY!۬n j&ڸψQ?{qe X%mYpraDƔIohjh[e"Gෝ\N(Q퐝""34fCV#K#w:*(/BjсGvLLR{7}*@%>r˲a,Vd;;N!Ztzrk%e&Mh57/^<ŀf]LIңt)'bbٱrMaOz1 Ԑ撋LIGPomVwB#9Х@aÇ  A;gey@b&_@ݷ/8s5 ZdnSp;uk 4(,NV,:+PcR5Ƽ l45Їd%%7Lv q4AlH <[:IL@jg5c=w@fm+yd\ Zm8cZXrxD>L\DJS䡡;A3GXQvY˂qp;**nOB ! .Ǥa_] -S |1T6HLbDghDy[Mᎇ\(#19/"/Ta'G/)_J<22țEKΈ'5f2g}# 20{'՛=L޷RS h͔:צsI*~l.x)ESE"][O8_h  3 ϝݜf0]Ŗh6;gɆ[$R~̖4ݾԂQKwWSD,K/qfkSgDq(8*PU`c%0KNLtZ4 5z&oO ,"j1}OF, tL×׌6oI*BmᄦM=|!ܳ}2)ЩKحuԻ, yS5/?}p>UĖ!.f}  A%Ҩ?TiAFwմ@QP;=.T-_5g S1Op9J\G6j= PA2C- /"uTc~v1;C(<&رia Tym }ep䟲ŏ6y{ {Dzmَ7O(6C68@U2Ah dUWf*C<5fŐ䧬CtF-oܽe{878$"8ҭvj/Ȩvfɏ&$tС`]-`u壋?X7 ~?<!fY2 V0앶`L i^C\S=%S2t}P(l^B!s?~>= ans YiLӣZMBu;?p.W!@n[y8=u4~^*E.GaNjh>8!zsvNA<@(^?^zwzfz b pQ̔ruE6XOU#X_ j8RBuͧy“"c7~{C]cۅ4mlZ?><3F|kWqJ.|Kaɐo^;Ih_9~m*I.'HҷܠGPk󊂷7c3W"J%| up׼K& n{1/i:-0[`ɒUs>{?!B7ټ2#rWA(L38i!NV> !JXǯX`OIK߉aC=p9<9i:wˋbJae"ޣ3CN|+HFk h0ɼ-EQZ)6ZN[M gT +ӡ70vipM4L1+H'ҟJzcBt *?,Tkep8" FR{ivێTY]>lu{LKje = ]KI |]mSLr<'+^gePQ!e 7qcܔ(^ nl O_ sV6[G=h H"hKS?R4{`$t:M;H_7D~۪<#:.yX`ކrGۚ% DqȽk#ǍԍZ0I4b@ܻǐ(&ۡirL{q4}YGZH %~PR8l58 qe0 l@(_5NZBɑKs pb0|>';yJ̼k"N x .']5 `q EJbqf,[ß2[SW:w8qgdU4k>FL!4nnm19FP ޟ:c %UU'`%dḺMK_v<X`Ә!ARy/,,f+V~KQ8T)3/kEǜ1)J/jP8ޖ$3+sd{ ĥlуȕΨT$(dIlfr&!I;Kжi07w{}b#V$ - el-⁸={:T鱢k fNv~z ゾ|#jk1s-"2ɬY[쇄3ҩѰO6 Qu\!2X) mc'FԶBu[܏xP>c {t9j\k/mc Z㣮,g:}R".N5%{cY'vёj |Tƽb?\οY:KI$i ^*{!D&L 2"]iL^ EZHm3ҤyYbhG׵_e(R3KmNw:iMdz\,ʶoF¶^7;+6Yz3 Sϛ(~mĭX)ygkLFY]; :!+kؔ6tH9z0`fZZZ#'$ B*~!G*晶|?Kq Zguh)3y*w;mNˣ !h.GR˺WGM,6GsyFQ =y+3Z 9d }C難GǦY0}02lH Zy=hډAFT#6Si2[5Q9t_ *juXwWgI `:K j-K~ T\? ZvZ_.BґئTF 7(MMPR+pdA<ۚY 6H..V8Il ;YYEQx(LDS<^X GGM2 Zo赾h77b8qt.L尃t$'n*&#L|a8?J~> tu@ǑFem%ބ;*.]K,Z;`j pfbHQ2뭽smq@Ifn1BH@;9oGLnēT'pF7l `?؈E3>mb6" L|lE^3F yyq&>4gPΖSLQR)o\b*='cV4fZ/uS-uDPܝJ^eu# >jRg}ʬc೫ %nN~swxcV篴 t ݭϑL>N 26^8:r@ P'ڨtLwM mߊfHub@E':쑖yLcy% ) ",k·3=#(zpc眡_?A5Z j|K1k+1 c:ꈏъMy1C*f9K>I]TQ/ZďOyXͯjtS{ J5"]7"Mq*HP'V3w#W&cuVuo:ȧVI~MVQj5EV,5$RLC)pF b7U_D%Mt+7\mj~bMw&a  SMOebHy h$.u*3yeH(i'}o*s~=Ӗ [$j|i휞#``]h",?{&,"R26f#b[U3Q!S07d0lf52R~FZ<ޤCTcDMذNn_#RԱS CqQvPPKic疉J%ޜgV`[t+'J>\N4ݦLH,b.1TaNڌ\>W7ԡs%V@eWDfGIQvzibKм-]]?qDӭ9 ?*hĎ_X->+~9Adbf'nFfwفiFZYeH,qx3bKU<^ܑ̑n`ur[b ihd_V- /ڸm]yab]tas32aT(μ} M?|:7IOe,$"S:2 SFRcߙs? ϠsmP@r? I&S5NH Y:Ь.ɜUjs"ULn ʕu K[ujt,h6j( FYBZs"H*hT!ﲮuOƙ?LJ/Il|ا)~*IέVj+u j ^A_FUښ0VUnO A1|N|h鶉Pr~`V?=#T[lBe @g`5\q^#}yHIy&;{ hրa2J-U9'ǪCQ!Bxu9edAh.-,Qe!NȥT-OĺFF_)Bڶqo ҉0*v_ofv`#V *"@[wl$O2]K47Z_\N|f|u,V 10 ImFo@]x7:~ 'L?jg$wTVB tG%OfiDA IkN9 p`udqc [I@ňs.rlN5q ͹'I]2mڂ7 eo1_™;va9|i$]/ܲ3iLDT.Pwʵs׫퍝M%b}AK;"c=?elQ~1#:^k/ M˞Y ZQ{gs $"؉/7e!A"KFL}$G4:ZJ Rx:{l{PGT8 j_K䟛X6CsΧ0_}.d֢.B?^<yÜ];/8RHMlyxuy߈I}]n.%库B@o诂þ` ,)}@eDFHle.W_߁@AK5}}@'vsŧ'Սijw{f88FL/&ԡn%I pPUXIC~f1D5Dyr#2=-0Ց 5/8qd4G',%7{'[MkF<aZf}CJnۉMf!pVϺ`7pn25ݬkd@ej ?٩1(RHD"=JzWW Aw? f2rOYtz5 [^Z( &vx򇫕'ќ03e,bPʐyxַ5=6L%{x*0";eѢfW=[Q̂dt(= Q7%[P"T*4;bv>10 >JMQdc_Hⓜ ׶k"fBNA(㌍cͯ*r[)\/#M.Iب'r~>Ʀcz}$vCvh|eӱ@J̔7.AXUhGilyvx˒[eܔP1fl#RKGK)l>EY"!# o[@|‡6k]ecCY`HO&1?zG|ANa= [)hOjE)ΛMJmSyNIY6EY' dWlE%Dv; }(('Otk$m_XEݕ(6Ot5rPSYP$d$+48 %oVS_ٱY7bbJKRQ_&h'0:ߞm<tS9Mڋtzҍ'&<$@)n8蜸 .ú"mƶ=gΦ6fNJDÊʫCw"[9nqeSvXSXݔeћ7 @v"| 0լu^>=&n[7H,\OsF[qaI<< @7 LLamcVd5neѪREGƕ=1j.隋Nv s;VdDq~TwNj[5CaHUWP yDlf()?dmcW}eOl4כͽ.#D7Dc/L*+qS8{6Q?ۂĬK*Y%1,.+4BbqYH-8%GAaHUq5&ܫҽ2#Nёa٢(vJ{'qgp~FI4!' CW>M/5!Dk vyn]ɖzo[4R%5zQ9#` IZoEpgLTBQ<6..#`>#{v5; tZP1LJ;Im{:"R_jx",_hS^ԬIͤ6OeA ؇`%wB!@V$!ԇԏLQK"{{p] \9p)HhX iT r>ۦ>0QHO۷$:/弅esejFIL]{ "CS}11GQ:e?n m/[t^i\#|HLSf<Ϻ["h2~#a<^}0Xoetݓ2:Vz * wK}l(ڢs]N)yk>J-;ndOzT6mIMVr+ ‰;?wD {Spʒ~J!PBn EC&m$ 㚚Ul5Ҋm]#ŵǪ!3lw|BiFq)I4&ټ2Wʿa8mzLɂ"++yPꈳ4lVI|܃;ZUGik f!3_pjJFeQa.irg潁֫5^v=>ϔL[Q])aj> y@ZPzfz>"* ArP'\!RߵҜSb ox3PұHjK"(׻ Efys_,y@|,kCc=Bfǿ|tý QzfD]WAA? ]F  }ӲE }'bfV{t90.=|dCw0 +ux؈s OPc1cmysZcD6$"XR@ {D? utZϙ H:2 GPGx@B$AW~9;Qs(L2~uXu"f#C `r p^uGYhq󬼘)_jeT,dS<Fћ;tUջ Wi ~8؍XĆj}.EE~vODEŻ04(<#][n&>➶= }>R6k XB?2ف _X.OnN."Ujc|e$_)2;>(ܑI:AJ_g1ҏDj%2.-!^7ԐQYuk(#V!4gI4;I(vBۢ9T!1do£-+e¹s I Yd7DUA%Cu#/#s;(5(ʢ .U29 [p&!x~Xbp\UGd5jRAYQb qT/Nj >F;>߷^v)=?8zLqVQ]lQ׏fk.I4߄%RDZ, <kaU` j]}q"*įv@148ېv=h:zrl5Ąm j}5'ԿYM##ʼH|>9fd B$#z>R^Stw3w#N>?i` , ︞:צ%Dzt![CS}ô|%h{3=JOQ0|v 9$wxz){hn{fxMXKP~{ OPX'l{lCKKn% (az u2<*cYWx֯}͞%coXy;)ԗr{H|J؅"XG_y]Qe6-g/g)Pl8؈ZA5 :2`AjIsċ R~s}M^UPH7A͢E*wRHtBKc&М7{;è+JRz%>t 4z7B/[lT`M|՜#xlOlG!Uj hڝRf_|Y2*9!UQjQO聜<@U}OJ|F #HԄJu;r!V[Ivr\":S38jl$pO. _sùXU[ ,=h:b~b\_!؅vM#T Rz:`oО0LE$N0h03N~ScNϣ{&}Oy(IQ}(p=Nb.)'X#(5lw=*b bi?r"I%mR6f>G+aiBaolh=q:o9̲Eذ55XI_M(;Е|ώqLE_y5%GP? ٍEΜ\'2{dsZ:H,>zޯ@2Ŝqu6Is)7?\P/ )A8W:SX`3 9o2?xRKWB?يN3;~6V"T8}ssV0Ͻܤ tOL[ Þ+u$n3>/[{b׶)D6gGJؐou*Pd!rf[OFUbLevyVDK{lTc]L˂όq@jir #wCj`X/*pq2X,{ b8~Nd>D4P)Had̰Mc ~Ǟ9SZ7?ǣj/|hB[Ex(N'( G&> ~P'Qൎ+A%as5)h\AV fSYJҞXct{0%jx@~XP\"-M]A>bLA o9 E(zydu8ܕ3Jeœ+gR$PՂ!1\*$~[w״s)%csDZUUzvvzfMcv|o5DHK^[O"}@ΗȚm6lZ}L ֬bCXx/v_i-Jľ3(RĉH ( ri\2ꉐak08ʊ]2عN-l; ٚ1FBC>IT_uJ?VHt݆g}^B . B!yGނ!xۣv'`lH)*I?ʰ&j0thG|ЁN\Z*?fWCZFfס9֛=JJ!,4ʍMɤD4Vq8<_2;:|b I˅gDDJ>us4k A=!*iA!Q . am`ҴwīUH&MCH/f`s)]uQן~s%yAI&7b]ވ4]X˕;TB=X@n0Cz?{AX N_v!gWh;Ď 뾼 SN]˵mb7dVd!4u; MiMt=Ȕ '; P# %KϞ ip -h7d_>GV|rVY+/D@0n+y7O!Ǵ5yC#aۻd/Œ=-t~Qc ;V%O K,h+$cw)Z{S<Qs!faҲ ].j\ePCӒ3 {R0\{~ cĹ~XZeb!- -sN! VMh6vOxpG/e$MvKR{rDZƛr,$ֶi}ዊf);$IcNͤ*n0hږt͔ܻJ؂)B0M&6bv/Uk^[EOXƻ'%% ]j.sB}*0yolW3H@v_J11H2QqU =K3Q/ uzh֜ |lkxxZ EBPHs ՐoҢcQpU}xdQ_At0*0|~jtqC66e㜟1%jY!r5 =رEsHI?_j1^^/Lū]YÙESzIYBCk-5;6/:%'V|;V?FGCu4 @#Gy 1Y0P;#פ.{KX,)#x?R^3+3eXE!﹥8h\ S}oy&S4Tl2 r^fu*Ub_T/G DI(|YԙDcrKh8e[SfhȓD;RH?B)liޜm\C> ga'rE<9y^Z%cLwyi{$"< mf~\Dfײ ǕzFPC(c H"57Ю F݊PXg@.vrn s)4 !}).}wt"NΞRh(S$Q.'H#JYznwb+(}S#nꦘU]*3wQ`oM.4hg=",c;/ð+\>Ii}דɕSFW1~WV2FTksg㞕1ڿ;dqvc.f8$QC^BT2 d %"\A$#v]ms]%X+UJT j_}T V7Ҝ4](9GeF:%JQ kN `=ʔ"`kwĥ+ȷ+J1ֹp+*a`S\k]sƝ*bc ߪ28(I->g9uEJ.5ԄfU򅪝!W8\֛iX|H?ÙFXB7 ^!I|z+BdQ*oM0@} C; ?uPT8q[cL&n};WWs}AʐQH$#.zF;ݠ D"O߳)XphIS5MԖOs-qX[xϬ O~PumCDɓ@;xD]|Lk}Jc(ܣjfuS`6W`m.K_~WpYSKq!L["rwL¸S(#Soi.%ࡡcÔS-UNJ=q\lCb[(Mꡟ}>-#qsoDZz:fӥv~ݨ1V,.=RKM~C`J,{[~33W$4<{JnT1Œt (<2S^m-@&?)ɗ7P('x"FxS+-IIj&9qqCM1\ҲcR|gHsɼ ʫ C zL7xKzz08S?."o2Tmx d7-ų"rBۣn&>^˞{濊;Fg5Y_TeQ '#Ebޟ'y} 4 '1Po}RsBӫʁEw -%b#AbQ*F[gz'z9߰˦ۥeKuu* qM ڟI{_4J8dpi%L:p .Q_FS͆]vjw20=ZP"9x$zoa& یYd4oa$AJ̜S'.4;z&os']1"ZP6 Ǿ QM=Y ƮkR\ҚkUceh]}%(Q w~$\x'Pk,Pr[դM12͍yDNf,iZI5iKEۊ&$Kl:(hȰiJH[ޒY~+^KYˌaF,0_RW@oӯ@r3{g=[Mg;a`,oSl(c(0_sgE4Oy#pm֎X0ck6)CJwa BdH !QzJq[V/Ψ큱A=,q/f9Ϲ-a22R"^ɓՙO};^=E*SVN$1ݒ򋝛FaB^>]7N0Lo["  c9ĶNH:n%N;F 7,Iآcv^ , =܉* KC6_+iN;N1 J|B`2h쬻4K-O= @iVetG%SUfŖvS w0\ཫ/bU(DV8UNG?m-DEc} hT$h'?-%R(5"hD}P8Ꚑq܋qk#K6"J'ΨO6}~k|1|ivBCK' MّaL R?f/  ~nڔ=H(>dcɚ*oW:XPD0/ ԝ`Dxz*v><"{ jYk"3-Wy'٣ Q_(~5YLj>.@0 ~"# $ AѰO-e*dAFi͍f[gp1ʽy@s"r2,PM/_(G aXp̝:/N#:ɺPN|KNje9(K#TFpscdd=cgPZL?tEk[|9s4&RNH3Yj!?,YáޕLع{n\ais)]J:\Kl'T{+|h BIbY}m<%ѳ#H@$oCeSԧhE͕w;/dUB YتVNx5Ş,"$,]`McO!_#|M4N+vW 0?c_ $yh̅WD qڦ㎜2=ѷ~P+Gy!,(L ryK{+)58mB̕KҴ ?eJgL(%ਁ+<3 NLjjW|OGp^z-_6i!I}ԟT4ωzPSR Hy/)LNz.$ gpzQVs`(WZb9Ns-Pɶ♪B}[A޹#H]}lV߸ rGnrUOSW v"8``%!sQ]I Jh ee?'fajYY"2NfœX!ނW+NGFd/NJ8Sz/*Q$k): X`_ |,k:KxGm`T@їJ$VǢSEHLUѻɐ3q:%$[ʚwE)Zi,ߪPOrSOo IVmtgn0\Q4mf=.x l:%CPuxY}dxb9m!J`~Aڟe$JZ:, ~TW]{hR[SS[pn>?3λ!Zqi#4.GV^v( pthVEZk>hFöazvvaZ Z;]AlLO*I,KJq-iV\ L9rA 10Мftc@(Č1=e ΃b:Mg=~q={#\<./;\F(Jz}?RT_n!kDZN^^@sÇpg!N *~F4a`FEQga Q%:ّ]iA6c-4}nl5p`$e>DB"M[Ù$+'[;kD@AI9sɰbw,1?f c򧅝Mc̵t]7 A7kS.iI;0 DyTvC+G +,c\jRFRV!sYYvywq=? _#0t0!F x..ޙ4ZظxwLg)h:]㈌9ёI$7mo2o{# dtW_Q#d46AVU47 Ym~ w,[$5)/etق ŒH-!c>&X#w-ΧN }mDM%U#ffB5lOM-UAU?L{ )) 8:jMKax5b~IAWUŐ<%w3ZxI1dA/0@5JSj$ 5`\\GxE=җ!v_E yٷ &zI'ʈ,CBJFy(eģKS_ujd2~\ϙP _յ4Dg8W>ifa{8}*#IVE.72@l;/[VaC<)MSJJQ/w,c˱~Tkxepp,>6R̴=jOUapTaR;M@(sxbp){%_"L3 T-9 o.F1iigHwO8i+x;5!n8Nk`n)؎_,b)+?!':}b4RfۡOH3~PjɄQFL)&,rgtq D;= q)Wi+$ii*kV(uK@=4|`k\@PD8=c<>8`l{,O5 lBK_VQ,'fJv!K.ojo@8E$B]jnL+wΛhwX?LɍKV7T meTV.I9.5VvEz7h;ǡ;(@fE^ O>eր8}g O;z>F&JO|Fui ߣS@O`28`֝ѣP NGH'*͒_H\}V2ML2*9|hN$!TY- `1ӪMMNC$ʆcs i73Ukn?+*RfeTtDžLT2|KzBE[,VKj֩1pJwͫ'VL=!%v_SU^ItHwbp##cpx˯Kѐ@+&U\A`dhJx` ݲ-v`=8FQxk:O]5kB|P <Ͳptb,aMP SvAs噪{u; ^Qz IOnxn[F'1a*d$0SLQuջ9ZAZbf aT;YzK1,W8#>ݠF m]NNEMLo{ rAvln^9 vL9V`h̬Ԕ!eIFEXr ez48`kMƙ19.ՑTxs`8Syʲ)v4oIZ^ۤiD9f|z}ΙH` ekY,N.2Oc^)ײtJ6ɬ۷iAY4yL,c!@S\/597vWc[.6}н'R=(`~AˢNx#fk`h8u"Hv&woGۛ11Mw#]?*)N !&4P!IܨL)B$QbI /&թ8CDw5һʒ(ܲqå_)?]9LUHJ7]4TʸaW [GpޟiҏZI x@l  +̥ gF÷1u[s>3GJx)\n\!XӡI0nM'v4'+CϾaO!{QCsH;4JVOI9q0ByW);u3cֈ4\<Ѽ PcwFucq-p (Ѽז ?D } .]\|l-X a$`Q'h%* #~")=7Z 䭆BUkqb ~?Xg-ʢRt]䕃O [s]p1,"acoo CIoEJ٨S+YF*4Ŵ緒Ԁ@(8_y._NWяKq!oHsUd+Gx P>Ęu$+1MePG_>/~BSӏMCȰ/\OMt S¥c^Luibksr1ɑ[r ZE#K/%Ov*pO">'^UzQNr/OXT K}n.^%E%sJlmjh#sz\k(tI#qHsf]ktw!tQ`À䔾.֢oi| GӌI*k(oiޒA0Lݷf< ٔ֊J9 K!8QRT7 X*CuBɉ Va"eK0Fvbuַ dk7 ߯tY̿OZ"9nǦ}h&>#UPd⨗Ҕx$9!e@`7H`^*Cь{m%e{}6xiqW{]dJ7SՋ,z%Y ٨TbFуD Z$*Ǟ/m `|rIQ`] lN]+], Fr 銜yzj( f5(tie^vڑ)ġy*LFNsQ\ anh͉ؗx)0AHJ5Ycua3 v6+}x v?q)#Nu qnJaeNxXg|ݛ52;sZSf._|q6g_Uùd4ִK+iY% v!IDUHeQn_ tC:^T/]JhDzDö;*s+ dtR逝>;mﻎC7Tfz HW$<19~[Y f1 ˏ޶~y1\H /aEGy@3z XgKSV#*7/'!(Vj{:AKC='eVρ&Z/ZJ!զ:}|9h&_%ċKGl*"ەn݊nN_g)%/IA&+(TeZyR=@ fTa+!޸h<$ug5zTVx8c8XW JNzhطyODGo/󔖦cf5?'& U epٵ\#jR ޶"ZxsUC?#:3Oʋ]D7{N|}6y\VAaY?2G0p[o@d yDȾ2ёճ%T̊,Pvuw"qbg"'~ou:MB4T~)$yUo|iΛαRQk WpyfnJf9Ǣ ʸ06&4FI-흜S>i+Cw^N73AU:cDiCaCun~ Qfo .@ƽ(c~,ʃ =W޵ :d wH*#hѱ2]hQk ě ttm/MʛCwؼ/6s<-HE(U{d8>S)9cH7;ܓMҸ3OqK{ky\iDRpr%[jm-&lDexL{ ? DSKĸ`% j@}`O'=a )Sf5bB|il3;)Sn\BָxE6z.eݍ4)ŦIm)_-!湇/d__Z4AЂor…0nOBM6bMKOBq8F2Y%T ̄ KC۶kk>Ο"~=i=j޸g"8/S324Q_ng별;^s>=#CH43G o<;1?' 9KG6?lݙnø3b=8|872*ѻk:$+Շ8bʠ;_)l2]gcgaCs.'w2Iȃ2 {9o9Kq_NdyR?Xa|u4W*7!D4U#97M Cb 9e 1:jm)ǯ,V3ˁL jшlɸWh(Jz##8`(`ƎHIOw@,P-2Q/v_#~J.*0qX/7̠$־ LE9M.B#l)ԃD'4z*{QF|rrPS\▽nb[ugn$MQ ܎W-.ݍ,PaɬiڋW|/V1[_g,K=Vud8pGo۷Q SX o>ڛ5Xr8Λ#oW.]iKԔ-ۘ7fY-P9miYx=jnӧ@ǍĨ| !#y^p<HXs{hvnmlo?1Y<(-$I l :zǏ{BeBQ Y> c3ѣx("˟,(9Ĝ[ Th+6ʻm<_fy;)rվaOMj G̛=T\6Ebo=4^uƏI:x 0ul 6Gy/6&sUH R4}b0%"sRx*%/^@Aˡ\MOԱQg Ak]L1B)ΕP ruuhϯϤR)AaW=4wZzrgǶ@'IΪJBj¤_woCEPq;~L~ FHd{̢Q W,ė!n* & 4|r?L*颉Uq- 94XBJ&H7J̧Aۧߝਫn"凜_}*sR AEEpړHu)HØߚ|;>B*UKc2BHB [PhpkFDO$_ZN gq~aXLJ2,73< 16a֮~1( n*谖ɛzK, em-*HX[ilWo +:'DsBEL Al,ܞ;gd}GPNt$C28(ns{ /nR]ժTP+*%$vu.m×2@3,s y8:=L#k8K^Q3brz&VHF:DW(^ 晎=Ucndp/dUj$R9FVNa'WҖ)Ν줳/_4󅚮ݹe4|t:%"U7Bg_x6gЗeA3@= bDkNlBp/{S OM f˼ޞT]Nq`H= }<{{L9:0xSO:E 8μYR<ުB,ޒF]ӱԑ"wF֕%#JdWz5 h5ax)YN& XIt*Bv88CEλ֤4&E]`vЕo?T"$_]#_-X2~؇2ht3hH;g%Ğec8NcSRcbna_}&V!8#A=Womo cV {ahvN ,tvNрC!\e@s3YjMumbreX*֊Uy䵋ĺkE m"e"I :q\5I*$V{3{D[@vDq- SzIP ] |'˝D!gG[1m -̇{7e0_O5H-xwG8C:&S"kefbDFOjI#8[ ;:Uei`y>x-t?hM>o~-/'azMj ^n=i&]a KSC{`5tt!5P^(5MCj#Nz\Ch$y?0) ,1\=6R u5,$oH+̃3YVx43.v(q]aݸ>hF+t-M;+pDM Q5O-Rk@bk@UW&y&qB7LS}bL6BόŠm{)8孏&>XUO4ΟU[{G[E4ՁGJa# q(]Irja?B!Qr"F!ͨO72"l֩ S;N OU751>s{$Fꀰ^Puw<+^>gwǘDuhqLZIUUaHO &33tNH 4G*$m.mqm&0? r&knnP;1ƾl(Z pq^Gck3|i 6*!2J0Ȯb)Q>RF!Iה<3,5fwP D QZS'*\Q?r)3ݾ@]%2rHc2fZV@(jb{ hw5ھA) ),] 1iވ}; 2 S7ևZ;,/0 +8H9&-md fi!P~k=a$7,Bf/TSukCqjcQ`oENQcdOO'|L&:zɤLyaSČ\`Rc"cR5֑׉a[z٩ǐУ4 cǫKoAk&.&jXreXX|*sYor}'k|_wT_iRuu E"rMvr&/f)[DOʰTֲm%9@!2MWP}w?DQ맭yy )XE$Uhȳ[(Kgu˝vϫKߒD@~Tf|hqXQ{.` |DnlD R]׎;͟Gl"jhvձ$7FK VS -|x\XOH̐JGp9tcR%y@R6 .DF/NqA=dFñK>waDa'}&Zw6wgpCopQ#,D"D#晜}*:L /+d 9iէ'i||p 'Um cz6 >có<&BlYyِ1Kl6bX0x:uJkpT[yjҎ (*%\b[j|BrY'J3'MWiu8 }:j!A Q Pӿ̱_sR-.b[dO76zbK#Wp-?epKtwJ9p#otۺ~4Xh2; 8`{~n:,"vXdjʧ-Hw]xz+zgE /T(ߟ3!}oP3u o uᅳEמ2}y1q8f-BVGrs&~r%6u5dR3Mƴ7U[&Wco\Gދp]jU&oȕs@# IæF5ɞ$Ό%)Nj&2Mbz:/d.쒈HjǨ v; r̡Fȱ$F+=d~7Uѳ p4ūhc,k}U2a7RP3jYkK0&) fSZ@&5I p#/`v}V?Qj/|/z Pś ,unT4yǐE+_ծzJ =Y'uP93ݭdn,j8Xb܌gQ;ɣ kE(7 0,YBtWʒ[TF!L㕏@4B G-:(RbZ*X vkRr@-VVeR LER&r(^PDUN=W1CN8elo! %댭B7ͭ,B;Ը5K͋G@NO>j-ar!aw(vq"M<n Fe)2ԃ98ByLRƏ>ˬ(!0mJVVr8E"r .Uvx\x-6WܹZV=y I6c`>963a6";NZDI3fK'b/U5ߨPB8z{.<2T$kc%U"[m0D2 rqW8ɡ?|V6 'N6=o4%}}V3_݄e;YFƒd7Mc x#vʱ<> VTJ /F$6yaor{м- clV_vd8XlTH ҡgibw!e`!2{Smԟ ,q4e(. [. "Uˁ +,%:hrڵO0\ tNX:g*cMr:woN T?R[՛?fqw ưA[7jwEo܉]Gmd)Fi+o]焿~P-&ݎJ'VbLMǝA$Q3W^ёq}ÊhK lGͼt>NDh|@ %qk*(RB#\J2d>hsM){8kt SmkxCC`FL^xIp)}H]$sF<hd%2e|$$K&UdK׍"GU{+WֆQ!_8;З؛bs(,u&M[Ͽf;9LMgg?Iw3Ka\A'vy9,+@j 2|Cۃ* ]%YH>Wd`- -9Vo ]0;yC8󽑟Fp "ƜpۇSTЁm:ՎlB0 f~l(g-h 8R>ݺ*Ԉo(u @R КTl0MWBL$v⾵W7<<б%g_It6crj{?>^-2XqSTznPP񖲁Yi뺃bk~&:ڊ(ky3#Nb 6Qӑ)#Z ?tSgi+ WNu"JSMo˸ETeoIlH/t JxAIXh3LOϻWvBnU")ρ)IAceQ9t$ubFjٜߔ]VM+q߬e҅w:2EkS*R)Zh~, sufnbc ?J5,uԌ [z]Lh6$ث%vu%2sA<-UAiFhIdԝGB}=`vrz(+p q>7ft YT ]aFڶtO!t]Y«:&Ywi5jxm~/3w)$}ǃ+~Ďvp)fׯ:sΧs7ֈ/,*1.1DE2C /gz|ޱav[GDFa]Jfs0Z'<;qyϿ쳩^8>s/\,8#(Y PлtwB5NYju)2b't{<[,ucQ!jcOj1.S u,](\Ԙ0xԛ ng) G O9X !q(EXV\|.7&-Y:S nXl_m|2~?Bm#kt=PzGF\@H)bD(D,}``tyx:ϕ҈k>|Bn&i>m|3ê6(|ۈj[{)[Bj|4(o %N/nCUJ>U(e آefFL -3uw"Tͮth<}!ޅ:}FoumթYgFv[97%×Dhb:T{O RѪyhK|ed|WA[o' o&!r{-!x<gGP?)ΈrZۧgt p&uY}~jqꒂe\2epn\44pX(T-MQǭ4![YmV7(%AvJJSPHG *K|2@ kfLTڷaLN O6yhK3KOinr@GFœcd$hq(.{P7HKT<İic  Ɲ(($D<MN@Fʷqӽ|.ACX> JR샧O˥rlN촹=2sԑqf_0i@Œ`r*m Y~n"LD\g%n q#NƵP$feUEoV4L|SYoD5x_7z4⸙:TݵyΩyL.=ۋE3kfIà=7 Y+'Hi(‡ > 3k}oGklhZD/l@ Ioޤe;K75G`ekh<ޓ\veuШ@$mqNvⱤ,ӌ+ҥl|ώz"8Yp96UաJnK,j1$eIqXpԗÌ\D\qSK |S"2ղ4iןM&E&؞fCς(Xzʩ&t%kιvU|zoch3tF60JG]?f|\ҔȺ {^ :d6N&sYƠ5>/^!YF%TPqbHq 7?iGAo&I^'rPuc1P$v6N!QWpµ&"5KSy(S 8>r[+Lbר.T356q& LSⒹ({1ƹQET}?B#Of3/P&A'篞GV;vb5#Lm%ٟo}G3%j h%Ի0Vre+˲Msd WzDlSY 93iaI`{3YTK} 0K\Z("W[!{cl 4 0z1E:IwBMbEg$/EȘ9r9*9'i~*2P_Q.[Vvգb.Qtm.S'/g3";To̅^ĂF+,?d,&;nTȫ+A]kfc=_t W}] =-M23\SMsdtӃлvw1E,ڍ $Ktn\R%J꣼~ny~ÿlmL }*tO?3Y}qyY9`1-,:S)KLqy$tG빢WWm =kE®i(oc}&qD严 bj -eM&B| nF,^҆HX|lVŸݙlTj5 _zPh0ߜSn b, 'J!s}B\F # S34 KDp5S8 tk[U.6'EF_ |yU6*U`@x(3sޢB"kCϲnE⒮:l%;Պ"9*M{VSdu~Ck4spI2D !5F& DDhPCѳc:RZ̳,*!lE;]'&J['(}cW:U{'XBhr`G0[]"N~evMTs=v#~#rIqoH+Fhf:qdm 1=T!Wp.5es/L?ItԱ2do~ĤFCB@}BەKYf9DZ =5Ѿ*;qY>0^hO3ٺ聗 n.iqeP47qX`]?-HUr9e' CE!>~MĘ5NҺ_-J*Q0ǯ]^U9hb}[Gk?Y"[k:-`v/e5ݳKeZ7!ieKs#n[LEAD5FH@UjTrDxe9u_ҏdX~3 =n )fMMv<Km@m&YK0WCąK~'4~0$T44.las6$^.璖E%)]$9Ye'͊[OL c _Upn p"Ofd!R?v@p5b?]J^OӤ[GUV@ #yc)!!&QCx/D+ME$ORXd+מ )üOƠȸh%bf$t?IIP4uۃ^(&Q9x&9/nNmO\lCfw y-i0_\Ϣy]SAU1leՄs^zU-ΉѾ{E@^Y"D}ߗb+;Z!̅57jE;TO^c3+ysH*?FgdQ'ϣ ȭnu9gûy%7'iV.H]O*g: 5FHrX1EdaTpo3N}4ϟ{<BCg^ "|&,TˆE}YXeh>o:%%!\ R&5b;W4ۛ56_sYax偾67fSLR'fsaY4~ j'Di68 3z1!ඣ-Q7SJ)77lI  x=!JKQx`2\A. d􈫮|0c#$36_}Q$|yM Arb4I Iv :+a4MܥUϷ w';3}}F I7p`1aCcXIYG 4AKA*/k1J\%Q(sP =X9 CE&ݜq&f70TZJY?\%gȡ+\vOL).^.#H\wqU<$FiJW qtj*s1JHD#6lt B$gw#C $6 8؄u-a8t4MAkCDc'@8km9n!tl@ Uxx>K*B+T5ݦ*1 u]$9`ˋr8B&Ҧ,HQ|BVQ`jtP(R Z{1O J%ICRC+wt/EhBo,.Khk.q-]A1ơ4-;$@SZ|SB/˻ AqL>NK .h퓤ᮬ0{JVw#qpHH%tB4sRB?+1 5-NULn!@ZZa/An=ӥ ێui3݁YǭLG5 }Vo_grqE?|l=2Ğ7 Bn3[lvt(F^yR.d Be 碖J0 .T/TOdyYƶpOrJ\?!Q\SPC7=-`eս'pw;LRKYCb: R±]O]S.I~LX)1؛d EPˏ /BwPqyK5 O  Nm=Ey L ~v/R]^3=F}B9|*RB}h l Ve&LYP1O YpY"ݜ'W#=͌\ 8M.6?Qn(#S'xZ/xGb3Y5UrxZ\ RdM"QpskrYM EB}0TiZl7VC@"E@OGJm",vz%nhnM~4Os|S}c`)嘱kEaߕ9I.f@y+Nh W=ƯkAw9甎܋<Քe?d ڮ׽? ˽\d)=F<(lӅe|Cs Ts~jOQ-Q+ӗw_rl bV{b~]35 ^Gz+߳Io|Y SZjufy`2?X=ݑ*.$ E<G2~Est41WhGbN,GjXmS\]!b* 49ÉY4#x>,EZ9IE1MbbŹ#<*?l~m- c“c-Lӷst/ES.א!;F+T~UW诀'y7o]RB,\RxK1OODxD͞!`p 4B`ؖzA7@nru[ڱ( l*^9n 9~|:G& )>B56=*xL1TYr׻$,xJĸ4UW!ry8^ S<;HY Z<<3»ُ#o(/>[6",-&qVsͤ<\|9"*P:bWy{BJ_un]tl}Si0\j74glP6빘1φJy _Z-(uc{rn_iF90h{mXDf߆)W^4#&La1$1GLB3_ 0>Zb{ ڎ'O/`{u\U;]?y AG f& p >ƽߋa<&˄;_7t@ϲ#|Ӝ=Vgt킔z1Oh_daDM=}|DobJ1/v(0L8w6 !pv^oDLE~{B4 \C,lJAet=Mz3穈,[==Y#D489.K4{`PP I ^g](}:\Qy["($)ڈ,Su"5q`جXj&Ɩu3Y_A$\aG< b qND3,K57q-v~`-;iɧMY'eEtmHq-bJ^;Jip~u,I+5(rLWw4N"RZCֺ͈Ta,x=jj&c6I2b _&D!q(c<.ǃ>9F؛WbCN@*kmY8,g_y8jq^npZG9DB*^HE:l]OŌ'4bWVJh&" E9 ?߬QiQ|OmHPUG~;VKi..Q.jssX\ P|]JtAop1+B?`Qg<ݜ}s2#;3GY4E5r̕(\BF;=3| iQXӜ#ZlJ&ˉ-0 lYԕ[# BE+棎 ]g&H>YI!& 8:;5)胋)"ЩޗL ̷rU%gj}x= ȣqYcj7s^0G}$[= 7[z3L?;3kkG9Ϝ v *0]I3 ,SZ]!SM9$m &2Y[/w3w@ #?O"/_`10^VetGL{M&22i&2.0k[ȶdP\qhS61x@K5ol5tւ@~R.u9]bl0?߶.s1FɍyЂͱ@Nlu73f"B_hRRg+EK 32'N7lCv7&Wݱ۲aY K/>&`t_fyrba]@JX$TAn~ᖢL"&暞x[Ifɕ `#hTRJI1OՙongDriSǁۥʳ;nwYRīy+w!mϦ׍6)9ӵSN꽅ߊF')nL j&WJ_DV"k*秡S }]W3@iȔ-S2hٳQ9֋EL xaܦINC_Y}}_^V Ҳl 2|XabbƧF%`||^$+/%s@q6f1jnqijؚX{Q0{u0*4=?I”rGu<'*"; FByU-(!$'ށM'Mk`qǧy_ [;@sGߛ]dMJ/s[[fP[O.Nv'd&)dK,ʧxbd]^6a+NȎ4D@Jw9Ze9nR(˶hh| 9f e D¡S70Uё/~cÅ{: {9rR C(Z$_%*Ol-^#dFDq kE{dPعx:˽q{Go ]BD!UmQp9#^X#;1`Ը[h/wԭJ ϸ$Ê,V8jll d々@VJ֙Ա.8:4ughѿ#\LWg\;cN@m*q.| y&'k:sƹ)wn99 ʘuUgkT&,pcXh-ecB6{FMjJ+c< Xod*9~~xR j>%穹vd Eֶ:}h:M;nV"Q/m nLlMxq&8֏ZHJe/[ Q:j9p_Fubp.awM+!Es2@m,70G*/]S1)`np-mEƘ2@,\R<3Ɯݠ}O@ܱٞ[[%QX)<6ϙ8 1;=c>fz/= (%Q@ l:)7<\{Ex+-[ML+k#ii%K79VJ@,m\qrYD@J# ,e25'WVn %I \RA$:yq*Җ!7"IOO`tD9uoϥŪĖrw{].4zqȖ_bR{PJPʦAXSڱ9˿0N4Ꮂg k[CT>c#J$Q+ZŚCɃmD5;2o+wv)JTVf |ʞiSœZph 0Y3n*1.kyqWȽ P{_Grn7wٞE AԠ1F5]S lrjCN35)KmGbɄ'l!G3 E?X U$m}::uJs>#8[$ͭD4*og*β M5 K XR}L 8coiR>R;h]:'7n. {,sέ'&vȀR)'6e ]8ǼD\/Tgrx/pa#K}:KjЫ(JX~ 03dxW(?caȖ ,,7 bzZDvAL*# D^^lXŌR/WMH@^W`Z|y"N!H} d Hjו (0V4)3F]}֦ iz(W˟3iRp#w BtAO.)315u'44Gࣴ Gh}dwjAWSywu\[jJ n`S4}5{5:C[s,}*E.#r#&A?X 3Ƀ(fGE`5v\n7NIUVBm\#.6~DS7ζ]G,8oUV2PJu >6[=W\4$_뵅-ޠ Qv݉Τ?ue x yoOAHզ[ϻFho| TUL+b}]-TWt߸\!+K]iF4 NBXa?A;NEDN_Tژ$dx޳E]kuֲ-SCù*$uj  MyL}L ~4GEQQzxt1Bq\_VkӚY8̈́ Ʊr_hU(FmKl۩Ma0UFpr!yvSrPgE=u~Ԙ[g)ct-ڂ׸^Q%u{ô[UqP~|ډ˘r4,=J^8 lxr@#'@@5HF@Ya@t2""M_Ta5f&TJ;) " -ۿ$T b6H#mh> XxF7,e/َv95prWy5s$ab4?ރ,VNe˄Ġ&>tM?Pqɝi~ZW;URr6'8Dy%㦦/@SfL۷6$ QiŸ/`_&KAWզ{iy@;qCmP]&;"̝{G/J뫬ݼ.<{S)o 0fJ :1qjܔc <٫bFg\06>ڶrDyVL :N:㓯*V1":AJ?xmDxX&a!Q^0"R 6i!%˃#҆CqB~ODSvUIcm q) 9vdFq~3!M#u<%L^Zno𓥅]t3_T+RӾvD']֌$%%K4WILij.ߚ:4x]#wlhm?Ĭ0 J%ո5i;\Yt /u?8 q;=6Κz' ZN${)z[բh "<Ҁ f<T,c$/ж!b1~吋QyX ~ an/?י s+KIef =D1E98XFCKy72!LZzUcЈ f:% \9 GٶQJeYpuuZ$|d+, 6mK|,EY^B1eBѾLV~[ %f7M&WU=FS``?kLL DPIh-0_I?ak!q7~tºL^R&9)u\zO&eik4ӧO0$ɇ{{,h(AT~3 _}L$ s&{)qnВֺK D$ Ү^.O^?82GݏӀ3]Nig2U )z_iZEΟkuSa{3}YT蟕h2Ss>oٍ3& G ,ر 21g I`o .D ̝Ŵ8RF; ɥ~ɶon<B75E1Q}ceP w.%+Y}[zVin&­n%T39] O3K(+T U\@-Tifpvw/M3K,ΡL@yd'_o1 bXTb awMԥ]Ge 2N^Q/PzTϰls$ňn9ٿ\ު(ێ\C1j.~A.yCn=ghjO#iŧXJ6{߇-Q>42eR#Ȁl5ԋ.+=EЩ=yCaK_ʦzP"\T%藉ZeT] /DQ:#p՗J LxG_=?:Phs\djbp LtE>*TdYntUXny +􀼳wvGxi0`bd }pvw8za4j܆Նa" FӘDEGo2Ih'ݘh+u‹A;P'9LtR($a_ tܰ8 [R}k͌9upJpn?['Iv>(<4RU5kLDk:_)pF J d ŝlk` qQ ѵIQmM8wssGh<\PkFT41"MX[O D,pf: PQv(z~汧~@ 5aXT13o,`/xs489%1jawEsϙXhW2FIː\}<:1f+$.5:#Ly`nnL᱂~Eh9CE[^áHH EJI!>״"@d$6c $A|؟fEt5U*; lɡ| (б5'Mv|$8?^ZiO ~ \ۘStMMݏgX|55ʙ<%9Эi#"X\3PX<3daE$ٖ&S<̙`nҚ7< GY0/;W] 9,d'{.҅mt92Fe)[9e[&$@f`}u.F'_kJОqԅ326EPjڟv%(5!;bIXXN6(cgguWX&O9G#LU}_;yهĢ"*XfloU; X4 K>m M0(Bdp.A&o{Hq1:eNu:]Q'>moj (킃̦{F 9l}ʔcUܤ)ڏٍnqa(+^9>ڸnh &ߨ 7*p7 ZX /R 7vԷL| z3Er [*e/iM+pL&^vڲp [8kvQOEhHrc&<,,?dܚ m>Y8ʜ<&EbAEy3lOЪ^ &آb梜!ʇ K=`-78ڃZ$.皺]Tr؏Z#9&@fª<\h?,Ϙ~d& ŏZj4W/ڔI4K)zYDC?w:J=81p۽AVEmShx_~yߧZ9*[A֏bRC8*.KD=)-4oI1(ExBa[ J( [ 9Z;~#YLhOJ&%x.}6!F;4ќl-[N0}L Xb}j5b"+9;^h|y,`AD!yn2 .uz&Ӈ _0xkf;DA^C=Sk6!wXUeCd3E!Z2 T݈UʳLSWk^_QB ۘ$+rShN;  _2E0W[m-->dIZ>sseʱBK**Ƣ ۴d|p`[Wԕ@ { MÔ7龮O ݾicd8jw>p6O+;aآ[+ xh@{Hfۂ0^hA(^\Lˇ/\objkiT`:Y=iםoBh 1L -cb885cܰ)J&`qiDJ,V绤q0gdA1L(b HnK4: |JgPinPIעMhki_ˍCX&k~fϋ# L5,"IN ?+rM_i.i~lC!8QH4j0ktk%{# Y~Gmg LC"1/j,=ci>S41w6p;Hf-\|5 WovxMoE цdiXrۃ)|>uqׅKg8*s=,tLlh2Q}/{D'JYpncPExܑv\D{Uzl!= _Ėa$ԣXEZV7]t[}T]lW)ɘbXNt]ǖ_ =-VQ|9^;PK%J|~ ~̥dvHEfnK+44dS9iG>vK%41Za l_âpO!w-Nݵx!-*Z3R9*4L`f5Eda6!к炡PmRtgg׼{PU\3<9B|!pKW=ܫ7d󰠪 R}aj<< z!"`w*SXME>)_[VϾ[ďA IsSFSzHO (B|t,r3t{+X;AaKaG+G^}$*jN0>wF/b o kC3[Vu[j vDjHE[p<.LW?y&]l]Mv=t 5&lhC{DjRWe%bQcsߥ.;eCLt9޷m$~4e[J'aZ7Ai !wl9w'fUA琪I)eJXu ~ޖ͘釁rDͩZR?K>jZncd7}3jqZlW.}3'da&ӡYvZjd$;(eː&n5;$Z5kl!5xɣ'C6 ?^~wdƟ`Axr~~V>{qoRYgԑ8&#(ˆr6 /JYТ*VKG /WD@;{gC3#T( ?@y@| 3 wv_M 9lr5hfGu2x 9~}{$#~w! (kZȄ}Sm0+;MLS=7 ͅhOk.Gm?;z%߶f<ɡ=87߃'NW}Rf] cۼnYF!x9=z09(B0<{oɌjcGlJ2o&tMiS epL瓳GUG׾Y{Q[?")?obѭBcmtNn,T*-\8bn&2sׄ+7- (R> HB#ɽ'ury~- m,&V .o6iL^(z2lݮn5]nsj TJ{{ȪP\S\ rzX?RJDqF^C#MgyN(!ckj{'uDv0V3fsA] O2HnˑG~ +7_A7VJ&pBuEy#ѕͺګ(B`q [ݴVKTgA_,ߕ k-`^)Ar:Eci1ia]w s(C5]Cδu\:Z$B֬˂nzWB=ERO!uLp!X16&^s[)ae I5;P cIn&b-xuW9Prk(J6 Ťx`"7c^┕1.v._UeeX)vtل83($*vJIJ[Ť>N*:=Y /5 [Z?Ew鴣Nh3E;Z`]r8~t3kLw?WBvc.FH#A{ F§|.=u`€ 0 r(Y,ZujI(oU[|j_A*WUQFR'|]`IPj KNEvvx^B? oAeOTtW=S kuꁐS vG#:[8C^s`D_Fy7 C-ɯHi&r FoQNM|n[jŽk`&g$;gb{{멚 j~X|¼&H|'zT0Yt4<52#/lЮF_2iޥ!"kƒe^&"38s.DV`LO X& yTzKMkϡ*Z"7YA%1PkT7g*[@B}Zlt5c[ . 嵹aR fsU4)3Y~i0  y6i.fwFC&!lF )E"nC x%&OupzzFjWJfO]MS]$/xh*t]m81BciV]po4S>v, ,y9?i|lTMMpkq0hng袷r^VAK׎7v/®!1.DS`s"RХZ@ta edd6n'H$χ[%G}r=\_.0σ?{BX˞,> 49p'IXV֦u,.ߧRKw!f >^cKq%>/ImW3TǼFFΊk}Jʄd;e_TGEvJ 2nv6 F\~d[ %r$F%2KO`_&BЖx^NtVSz@Ҏ(W.ߥhz/haFx5K욓Rk_@'l_|ąVhurD -Dѣ!eKm,VSa*l x+N[vѷtF)m.!O+HWmcO޿EH沢1F(9|-M^Ic%VrQr4: .kk(C՘r Iy}x.mUsrhI#a+˟)R`NhA2|?/rJxtfoՠ#7ۘ0 {N*p懩q/(9mAid|]CòpJq^g HEM$W UL) O-8iNPZ3YuX&Ѣ4^Zȅc6kK \k2b-μQ-O[@>i̊S5IJdݾlnRBdX${`Ʀ)걮$(Yw E[GN:oo|Z;07>(D}54흇]'*mqn17MeߤG?ZWM%*MO%D)mRv3_Mxk'luvNrrۃnԡ9il,O"ompqX}neSyQ%l}8v7 v$''*eF#/ 0Dqe\f»xu%$;Qse&jhYVG8_4+z i%3s0GT7޶e w mɣgc+N0!ؑ*\^esCַ[gwGIy׺nVᙉ̍HKj > @'su^>C* cTi 6Dy#LΦ䑼G:Y 7zJv{;g9|W&)x_D`djFfjdD]䍈˽ߖ<+x5Mil(qgz%KZBz vn,q~XIQe|祋xck0t?^zxseE}gިxWi%e X%2|&܂E̯`y3qV`TuQc ڞAv!@JZ#.V KD>TYSI9zE+;b~3XHq}5p:<:>&lV- fpw%)'eph SʴfD2agrQ,_ drUYzJFʛl zblaKMF; G6/#ӑX鯫!ȑb24v d8!N|b:?4o]'%&U|wv6r'ty#:sAK鸁6My0ʄOo`l5as^Q r;g«W|jw:`kS]qp,)Zf3_I9&<բq(j=nС! PL#B9C(1' 1>(鸁v}7ح,N r937~瓤x Sͨ ŇFǭ/x .˒O$r:"*#R4n:e/m -#fkM"Gv*! j`oI+s꓾z,4y6+py.ES!hq^{%a G/$wL7|J? YGU"i8n'O+# ؋IaAS`*#> :bWX 礆>^U}+?Ќd bh@mľ(RʚV Nʷ DX m.Ic?j.[ V!ݲ+(J4L,ݏJHt#;Sc gc/tP{4 kh+֑߯X-OS1%jlSÍ% 9?;_\2ua/} RfyQ&I=+;AɖSflGϩoskQ* Jc49Kn#09̺G>%n U{\ݥ= 'T@jGN%"N(N2=z޷̢ P>:"S.$v8~(I?PH] fЅ?X҉%!#CUEV)6Xcu ijlD;fSvh3E/=yhPl+1:^wϡg3-/.)"$di;gq Q4*C271[K|"Od怀u# %˓oP29zs6c+KLUQaZW9,7jHyLP$f*h~xEl 8Ő]|nڣa*JK%v'01I+,H hxg5i$9ŜZ=zkGg,,%g[4ݵw XUi$kGkܵ(  n2`t}*Nw_#sF/(EwA2tP_Y\;4Me$`͏92Y"Պ-Ѽ~z[ =IN$1S6 s3/:̳  S3i/(9ʣE0hkr;SI,1@/A$ױPbk\r]=l[i UzWMW4[t|f6^je!Op6_;S4a~ZK#3/$ dn3xbw1l.4ZϠ%LNogNG 0ɃiV3節BFEo!ћwV\lc IIo ;U N*VgnߺƐYsd ^ZqE:o :9:0(pwdGU X6 ^{;sɬ @x}2k kpdW?>KԾƮWf?9 fZ؍UU&ڨ V:A' B(&,&4O&,!Pr6q \.L[A?S޵59`H;S =5ZBh$ׯu.[bw ;7" IP/IFFKw7=%]0 -;iQP{O'Rob/ Oh \:<6'ͦ"0福A`K)kr2z-ZrohK:WqE_EZIMiPIٔ*}Kv*Brܾ /N:"x:[P\@0{UABiˋWٺje#lcq;Ђn4˸>JZ9: rXXdN%ttuCXXG۸C-.[8C,j3,4Vj ;N0hǞҎNYw_c`s!Rx@ bug3.˷7&)-&4V H~u=9ݦI5SfA *Ĺ*ֱ@P,'r!`Cån퀣)k~Oz;u%;8N"q4՞tHKI85`>; [ƾpbñhy׺]Z'ԩK} > W+igrȄvJc,ɫ+*:ĻrzRE{(F.kP $MwCղbNY ;9V`D"<$1QxWʽ.K-c.SliZ֓#w ;k`v}Q$F߮& =-֦ "@e8\0]#(g\cxE=&76b#ҁL%۬bEVwDobKآSokQ6 !aXNa59oaI S3{r)wD3/B~DbYbbat¬DBhj:Z#\sxSտK,,q󅒕$e|LGU$vN=(u´V]z>@CXܽA?ʢVe;Z M8Y#dm;9&V,RC4q%.I:{PP}PFŸDAփiJ(^GMK@rRW(834~ъ_ů&nm6)yRn޻$,TWD6rG{ ?BϠRL--ѯސygNh~s l G0_?~E2nCI^Z>)Q6`&>6K;DwMUvq ̳p~J~R6L2E3A</ї==.?$$"Zb_s'DZۄ[S',p ǍK•9ʵjP|ːI"#_'OjBbǙ/yn[I,;,hu肁Ð:hGkghDSdD2 AһhOb E&~AEuSr'D$ǥ=bK$VUҊR/s/'JM1%wTv*Y]A!\V:컌a9kU$b Nd"bUDvq&LFT  1ӴHh=L]Gx QSGA2T6Ab&mSN+U7t1F bJ prf i]n(i#IpI餤Z ?T˱`l60 ~{DYnAT4^*YR q*v(i!|ƒ0PNYbױftSN ܅Wqd%+KeH-hVk"5t(8~^Tٽb(y@]φWKɪY #2S/j^B-Ai5v^mmߵbr*,xyT**|]iڱ "+t?X9EY9)/V c`%48Zr zCf$BQR 2X] W9Cw6.#pe7~Z!;OlUŶڇHu DxNpVAsp8,& fdqE*,qnM6=MuɈ+-u`.gƒS"(d<|!|Zp-(zQHt*/Q}< -Z,\ߴSJqo#AN59)a\ݻgu0k9ߐpѰ^;VLhE.yqA#'%{S@,pJ* CWV ז''!ᛃݽ׈'ZTX|r:*һI6>:1o1#f'A]5;>.?5d."7㒮i2)K@#AXFQμ̃奿"=8> ڮ~G"}+PޣՏ7#e;o_e~ g9"qkj(X HlE)ʻ!%^P`N"~ӺL* ^ΧÇ(y_:f{ _U>5l" 1u@,O(%fbi6;T,/w7Wefj㣽8ϩ%cgD\ë:a4V|r)Iu@FYMex-0HUVZn*Dk7J `r5O*U"{/'8AoLKNVoab׻1'Q-3/G< 5>nݑt.,Hop/ }Jblfi¨g uAU(}|д)v7tRzԞQ*6NƙRLWFTW%2ѼChh<#FotDl()R콜O2f 76oRBFM.7SP8xsS ?^05 W}+ʑbEA&Д[Pi]\y{,*å2;<ް cMycXT`hNgW}&ճl;ƣ?S'1vVJP>##QPsXmVQHjXs>ä́&LtR<#bRiC/6) =D6Q0 d&wiMD0p5k%Gabb]Me RFSo' G̑t:xc]K`˶śp#aG\wv>4^#Gc o:"rW3BTǘ"IM xٛ;2QywKAp≵7ݝnU&_+J}څ'}FR܇q$G&X&^I%eJ.WGPH׫Pxzꍎ9ԾCckfc注  \&"\K7t\ʟ25jћ\N)˫ttTiݸJA{8+U;ھFXR-ēAEvb\瘺O,Y), zP#yDZaG]-ZR:Xtؐ`]>jqx( R镋Ps`$4XN֦}#],flv-4$:$mh8ׅժ́}=Sw K)jra[1%]`n:iǼv񰬝YOfUB/G))jUGNQ6BwM:/5z*[[ pjSo/3|p(O=qtZ01`m 6K\Y4}HhJMˡٻz-~!m;+;1> =aͬN[\VΞ&rShFS]-6nEaN(<+YWWk4 jLd5=q0i~gaVTCyB,b\]8Ixjä jɜ Jd]k^<)4'|YmZe퓬'QDIC$s2@=9}Yc??$ 0E]!qRFw4s׶OO?˂wF3=x3Nl'\ژAb ,q#eϑ ''|_FYbC)wY0Q5  g&tUjB->%BNR?SʥgcGth`LY A{XKȂSjKN,;g~~>̇.5j ?&0 R0&qM;/<7&QT/Y(P7[x#u.r| TV)R ̶Bs JJԹ})9 *kk ~Zz80 I;^oPeMl|Do6h2z_u(ڪGhWvv6DY)ں C[8%tͧxJ)鎱`zKaH#g$!^k,}?[O,{ 8JZhj}H)ž 1!n pf.7Rȯ:)zt^2}C-lA0XBLUiT-'ɷ__D)6l SYw:!?I7Q圲%ѯT Szn0ضQ&~yFS!ٖf7P>1BM\v *HT .La3?A@ygt&bkZqR3A,82C 1A~׊lC+К4|^= }^:-"5/z4AjEST!ޓ@sg-hu+SZمz$-x2U[J:A5]?+:/W}@H4>Ԛ[pkSĢ"bhŪc Gj{ SR~Y*饹efvr=U׿eb+]yv^[x-Yfa/ǑINM|߶UӤ, rmk,^5NR&|7*{4`tZYM+0`)y135(1^McըOrWe\(֒sg y\Kv 8r0ԐI#ULC`rFUul^@ 4p»VrA M4A'_82\2X_ nϳ :3ci-I,;|,,ϭlIpz{߄o֦ &MBG"3QpCY_nL!-eh=AY&TջyV:"U1)H܅=.a;=LYY|'jrW#wI0WئHwd!ɕ4QY&zHM儇K?s,Q,0#ăUPEw!(n&`)ƛ 1<*<hS$5%|dw8)T h/'|"GipF%G(%C.Zb#l-c/zIM*fH#iWeg ;V`F̷I=Blg,6A uŠʋ Ӽám&"l/iTZӈ _Bv]d`"f/3AphwBs|gԡa"'rDb< .]{>'cv":P֓{S*דb~T4S"^z ~I!.g!hS@Dpp3̯H`o\P)l>įeU"Բ5}UTٟŊaI0RK[Og9$j0%e%>*)Ѱ \6KoqTk%U<`= (*Dv{ojbsӼ W wh\#`Um@qKOZF7VIa6|)(4L35D̡,AkEJ׵Ӫ"qNQղk6#ɀ,&IqX:KVו.I{$XV`H(xxNe?pBJ 0@N܍.gʥ-U>[UatOL21l^_+VbB $&T1 D-ph~-p \NCw@WhJCBAp@ENLzgS|y2h@` J(BX~t Lu4ɻa%4έx55\VFB7.Ĉ.A* tD*K,<YJζIuƑ6ZvH_,Uy Z;8%!?߫&}/YLy =e#Rc34Sǝ<^P'8DwP.hV \My,s0Qa-[}y|h ( ^ >qf~gH#W6ɚzP:ҳL$<ƌG HDk?4yy̴.\)}   cjp _B4<&Dp\F43H#*8\0,/؂YoSm_^' b"k(7D,BL;Ųt9TOq_ʺkɌG/eIG|E%<)nG*҃9%@MF{TrdPP;EnŔ`6w. C8z*`ەj*gG_ÌrO<쁶 Wp'MV 2^9,\qtFq}~ۦY XNf~+3rr-9@ ld>&L$"8Emz/ȩXr ]瀗 VeX&$#0bO*n6$ VW[ gkC}@WtTiuL#[ܭBWrm3oO3GLPЯtBkt&es GUpY$qTu 5*?R5Ӕ( )%*E.>Et-f4\+ 򭛼Z¨J=Z"q*]oozq55,* "te&BZ~Ϛ)p#v@I%un YŠU0/R]()p3:TŖ Z ==+ȒG!viafO@HKB`K(S2?]8VG:H2WH{2K(4XmE??Ād*nVf`&5k1{OU)e'"ߧ# 4z&w)k ݎyRd HL2wv7%˽3W~aw'`}(N PFqj=}{aơˀ.̅W Q"НޑWvWE=||^qX9☓A/ .a8 }_6~Ly=! cQiCfT^7>i18+2m~3JA)9y %ҩ}[*ֽP*{?FsdK:v|>Rg fH!*]J:{2_ nӳݠ+OAiv[yUҜ*{gp$;;Aoϣ6dw9%Vc˪AJ=>UTMW5}H;)]* 9G(v9\""=!a-ŴkE?;q$6 Mإ2)iiNp%s½PK픡_|O<ޥNJNޒ\ W#(qKqEdDhA%{E/N'ӓRJES' W =[*f>/CX4#bW"U:%iJ3~HDf+5}-)ns[HFAhSẄ́I5 x7VlnaZ OUP(HP.aBÌo}!I23h-|Ӡ^s~Ä45]n.SS_6Ψ@IoAqBwBEiiD9 = Pʔ`L]L>grpnG¥օ*<ρ5WtY)V *FDo109V'hO/(NW1_ZI (YZIS&0TZqt#-pHոpK!}dUTKiB=IȒ3zw꒛,{AG'EFᘄ:շYs _`?{`״Q2^.!CZSL\.󪄇9<=^Qt~2a0Gsv~;N66|[z,8Dj:%Lx WX?`@FN_\ Y2'TEgޚJR,ׇ11"ꁁ`n-^PKk$#S+EP> W]5RQ- -QSz^tCUhvDQ? l kӽl pٖ%!yŞH"G츋]}=L<=p*EM@b3L>gg&擁⍝׋D=ӫ]KY(mJr#fV?Nx^\(9E1֨Q. > #ƴ"e됭 ABg48h\9 }xKT$!{0d鹒eO5MޘO5݉3$׾ `{b?('`7[7N;wյ̀)ssL3_)_T8v|y ^L̹ ƬMj:\H t8wU3SO#14ZgXju![=iU-5=+9t7Ą|y5PrZӂ'1N})r~`z9-*kӞl뚧zTSN4y^0pTW=t׬Kֱ^;5U͋rXT\dd'2ܻl dfWq޾I?MABD*TRY I}P&[;UAe7k  EpI81[N r(f5Ez|)"M& |7>M3jw.%o`vƂ~ax8E-? {VB."k.4ÉA{@.TBAO;Utqж5%Y]Taf Y33EIN-?L#Н"flŠְ:ĞsQ`Y;H{1<Wb{\,a>3An>;g5t DhAcwleErl>|i dk{J}Ixԝ1?WS;W^@ 7ԚH h&6p{Mb|hctu](u=RL>˞ҍ MEMsO XXvm;qrIjЫM)Γ&T-#rnTk!ms.ﶽBuz2E䡢x.~cqBk(7c D:)cd 6t [iz yyc ̶MTiC]1~#y z`2Ns>`/HnZu8O4Iux 2݌hm=.ar<\|!<#AGGΕ}~X[)07! PGC<7ig^WfR%6G k*R[8x')B Dm<. P=~~%gľ?S ^^C8qp׈+$TsN +Fݑihvpč3)2xԐ^o Qs$#wLpw;wpi+C%ȫuu+EVIV'*1:f!"^,0$r2X3򊿄|k1lSZݍ5v>Ws7aLh:5>ڡ-/\q>!+Ё((ÕȾ!(#|.ӱE3Kj6rYP;v0R`fNa#[<~狶AgEE '=8NO33ւ+,V8WUsҦ{Q}qe'Je^ta T!M0xϷkqe/d1YW!8'=kZO]TtQ%)eZ@⫋viF"ў6L[2&WC!k3=x`?v,1 oY8H#I.h} ]tGu-X\vCmMI;\UL7E\so2wa|_T=cXk92f43˛'PV}ca 7{ݖpo\ۘZmO)t5e2WfP=E2]Щ.-=gcr z?,&؀&zv1<6ךȹ~QZۋzfW5g|R܂yԨ.AZ|~] ) lٺb-sB/+&f+:`%+aX]>3}F^4؛{n]Y*7՜w uvZ$=njmEQUl<\ bE+F0'"gOq-''s&DQ͉u Ab6TJh!\ @Q`nȡJ%jdfU̠bP5X^Fa@zK7oП}cwt{9$cp=2M7hP[oƆi"NKliЪs&&zyM=,bZk֋62fn g[il0V'^OJ|EwYhGd/.a%zQDr[dg5؞jdS 9ާ͐vbI5mǀ{Фf11+~f<.H\9b2[O^*uGؘfbV\%}9gmNQw.N eqꍜUv@ wTk/c8Qg=_I(dzpƫ>fyRC3KI$eigrs_PPD͟] Ǵ{e[Wf֙+r)qUE4r}᚛4'tuU(+U WxpB[{ϋou~ |䯷At:U-WNjW':ܕ&rIH3i+ Eag/UW^Ѹ٬a[vȸX{3u*e6[TU<2Kq)fيp&K3ͩҐ:B Y2ȓ+/2FR-ʿȲߦhJJYT ^&+׀ˣ6 ƛ'}Mo&< M6!$av?`#1& _`%Kb詑z7Vl* 4fZp yE*4S/d~%^,3UT?2)!J9(z Y2b >GsC:$Lv0*FWz#{ ܞABBA,_Py[L1?֯XR%Wz0QQ"ZHV)vX8P22qqC0#U'N*ʌa/(nLd6曵4z4lGZS7^X:Vf%s M82)Z.z׌H߆s"M11kg >i^@or0DZ9(U>!$Ifs\)@l!@vTq\82l?O k n1k67!YP=^{e'e)\<ŎV ,Œȏ{;}}timKMݣ\JxMn"%Z2̉s!0:pfP}{!&gU;SԷ7-ú'N#J^ށ?qa ='T29cxWdM΍h.]C'`C'_Oh^b3.>lصas}+7P7cC(#in^4,fJb &YlNG,*z#hÍv'VdxVDƷ|گ6he8m\M^{V]P't%_a˳U>H;(9V(mB|C,YqQQ 9Ɓa1LrDAp`{ފOL Wͱi_5\ᣟ*ɸ3Y3 äY Mgb~+#(!FўaovgaEx?F/+fl}1@K^NȉEz5P\0 R6ֆ8%:V͋bq`Y8t:̳QLg EY 婮׌& ja?g)ÍcMmP#BjT^AbibM#YtyI]Vfێo iiV8v>5д1Y5+ װє́@I)DIg z${$ O?*.y\KEP8H׊S7ӑo4!RZ{Ȟ'3ҫĹg{yD"4"o0CFH.Y3 c+Y `(LxƜ0l P.u7D0\38_\ȩ?ۣ~ P:Cy.=XI&T6Y7W0!wZ!ڷP:XMo˗G\<Z9Ps}Qu2rfm܁Um@pwU&TtoJUW%j5`B%8"3iϗ`rKIF$yyMSywU)8w%|(uMBs @'V{pe9\ GY1¹qQgH#Ki;Om)EM6a)/c ^ ݻEm\Tl0tHhxbG<@CS0.WGnҔA\*e }L~$it00TvIKr~]a߽ f6V6 "Î]Z(~Ŋ lv/'[c[}4MDdvu^0$$0>Y=ZzY :σG4cd׊vZ}uWV$łl"_3,o> ,hʨtП2PLFjԄ/t-2Oinґg,46vߛ8Bha츌  3"#Zp׆sʋNs1:H{\8VTy\”Lh[AQ|} Q*J]"keTY[ `@}]wp N sZ;?Ew< Y騝`^ fQX[`<8fts\v/(3ܿ'ъ%J w4n D!i=R濣|7ɬ<mП>P ׅR Vc{\ʲy!2 [U>rbG/h3uq+&\MoO6$ ",T-%m%eq/Vu_T֣=|rP/#)5^k13 xf8 0L[Df` l{"YpnVq0'3g(C pK篲QjGAٝg%e0+N17@_L޽cQ37 Kd§R 7^.a?ܒ `|0@Xzٓr[5jL0) 56. eʸ "ٷԇ9gvavzS$Em7^6h!5i`'m* ~k=W%:C- o9#p֕cAY/Fh K.u*>|rX Smg4xCB1B%CWl2o-WmӴs o6r<`v{_c ~#,OښQ+%Ucgjytˉg2.JW3t+dA0iLT>+ܫ"{D"YۨJa;,y8P^95ec* rz-x)Gt*SC*(Y'}=LޯqGW0L.sQC ɍ#UGu \}Z gli&pܬa&7}oE+㢅71XZkaB$s&RFVcF7oⲖ&ҍ\P `wE/S:3 e|^vK ~WoyM='LEVZ産=O媊Ós(V#EDXR7MeuUijcTVihAAtA5]*Bxs'.>DG\[dy`HdhTLʘT#ۻp.NpG4rQ:S,^ gLj曄d%h'vf1js rf/5w >]=+h%oK#ݡ Wb.{aHٗ^wX5a D;zD8Ĝ,<|p8ն-xŠpP KePZߠlkn;5Di8Mǯ؂*!dW{5Z̀uCU9_Q)^f`4[7պ\u+]z"#ȣ]X:V+r&Jװ2 k|s2`oңz%f9pH3ulG8v̼@SL>$.>2eE\&シ1rdilz?H êe|cVvP "TE sf8!Genv&#!DbIg?.cZ9[iӔ}Ab t:vBs)6m2U0x'\_`ƀa&qhVqCBHUkв)JI,kM RdFӣIF| 9I\<ps臙^4o~~U6v@.rd$Guyxvfڔ* vWuO%p N&ks~LP V+j;p}ʯ=}9^I~c .JQq"Cl 0p\n xgAH9DŽ't2De+_ˉEWׄ %z3AT>o,^Yy^Mc{ {FL }"or@ }܃l _j8}2}> R66prh0E_5BZ> F7Ȱa;ҞHBŢGWa1*mz@:,6߇qōBʾ=g xJ+PVf>Ճdљ*[f& RX ; h-7QH5q &-r{<#GW͜S k!_/ؾc3̬T" ï(`,;s0ȩ0g8cUNVwêx31Bo ,(; U1T5*qD&}tm&N3L3@=g,òpQ<+W_Vr\e'uE~(5-  JB!{6"Ug3&+~F*3+ᛸ5z=Q[:+^#H<|)ؼ5PycYbK_I5Y6ꚢ2IeN5#w:*N&[y 3XpTJD'D~vo/(yNgsN1x7BuR\banŠh遥Qk1DX8F$9 egc@ɿ$33Lm$e&>J3A = 6lU&, 6ϕJ[wȟ{VuREZsx =Vؐ0,F07p- }F?(Z$R1iه@Z~<Ǚ6=ː,څ9R0b]e"u@]G%[B[6P+ l~{+k_[%g/\oGaЮ5t~, `iIE;{p)?Z kg/<_o, tY!9 U`chM#q s%WqBayb}M*6]k Pyj@%Cj:c707y*|Fd53YڍN3 ?iǶ1fr={;TRjQ\!,.PZG&u|yqTVI3Gi)%(amx KF@m5>PI?}9J":Dݞ$J|#!л [W~B#:_\ d: oPKOp7]l78M2Mӱ/l18  $s%=%}IxDP mMRTrQ4P]A*iJ!6}2" XlᥢeFS:ND\1GC%q f-3dRalGQ3x6iA#N1Y0%MĦIba`;f[0pdz~f;{h ںS;qWg3J^gzP"֊F{Q=I =FF3l$HϼZ#iUg׍㉆XDs5uYSٟWWi:UidշC7vDDACZT]קϩQf'ӎwAWL kL7NPtRmG"ok1Q oO:d|5'=: ¥f g")ViM4RjY @FLZѢBPe7j0Ҁ,em%RWh:zB7a Z x@GLYS$0'~f(kK5^\ |3ZuE ϰxv'#~~R|Ivŭ4pQ?N?59VPc*YٸtŤώ jS{P2R fl0ymF{<|&b-zZXnWh+oMґe+o!Vvp"x6z,Prb1_L4iEq(/0n%TFdAlTEB[ϣ3L38S6XǞBE_S4T^0E^+^st ZS*d}ȡ2;p~Zѥ0MhV'5fec4GuNSĺwӮXmNmp#+~ۯn++j㎛>NށP9x]MM8.e&;K,QʉBY#_!#80l>ҳi It&tx$+4#3@Mc6DE8]-s Ix ==~ZT"riA_?λ,s kx0dĬe7'&%ϵ20PZu EsX-1/v{CP2jGT8ٝlKou3^䋴G+1pw. ? /3t0U| ejhs߹aSKܿD O G S"c Z@ؒHEῩNSi>W9&RNa EW:3_E"'/I m ]DM^GpT-yXx IC禚B&F%}A8 vU\(m*LS-a*[v{NS\PO6)Ft OiXx1,Em{bE1͔$f}#61#h% Co`39id_*suµM8g_OEĬb99SxF9~i*p\V^(] wBO!"h//'z\Gڼ0m7=?+"?%rڐ6.eo}t%#֚UQ{nԻnzip[)jLv:zF{.+T{GprPb˅f(J22_k [TT,gd.,W@ڮ IBIX ^;SL9@x>? E Ft VIq|:ͬt&׷G.jܘ*$`!@n|@h7Sqd'ɫ'HM4;ѿًw]-(𠼤hopq/?E'.ٛB2 'Ѭ{Hu=-#dC8(b{,.+`L0!~:RowSSGҌx^qVEkgq՘쥳X!)ƊY1ƭAK-VPy`=~st (7" VHXvAMdRqw,[ҧc=kFfZ>$ڪgN8BDCkJQ/h {I0F!hh!ФDK{baV己?3GˑH8/ʉJ}rw^:1<Д6j2uCsZmQܻjN)0`}6[$]ͬfV~Aࣔzg o Dr?VS]~ʔd+ [SN&xv3?<#x6DK%¹qX˫N@{/NȫI5Eߣ":5>2~-/ya#>CO5nY2o!1שmv&EW)JYd㲅SRv`eM)b N?˥^ 7^|Us!&au-v/j B9+]6Y0ud*yVHy >68]rr+ (g)#9*1,FYoG;8Yl HC0*p&}Yix2/ hQ;MN 1UIq>Պ>c_1#)*C!ǔ[2QT4` !])S.)[{IۗIs{cFh!əfsvF9逞@/9y|I̟)N+žZ,bRvꅞ=uq1>d~ĢRCK"D B% ,nטK͢.W@>.5vݿ2*׳ BX[ 6i(~˹[eYn&69yvO6}WTԅ@)c'%jc"ZdU]E[ۢxf6Ot@1 .gZ#B" )-d]qܣũ bx2q4GH7'=E}XO^X 7EAc>KOܰȩK\N=۫#(|ds'MpC~.PV /l;ڵ(1{&sSp^j ;W_ /:K|3LQ+ϫx~ N$,Ev c-a A{؊$s|#'mᡙ+kGVI)&}Kgg))F$m2hjYuʖ oA[h" A}Av. @n"Ȩ4 -@5+a Hv-Y"@3H ^0S>w϶Q=5ށB=frJ꣯}#PivgȖK"jSׇ4-w3m^qH!th=yn8֡޾9].kE?:xQ =H9UDAf=ͭˏSnO|^t݈dYruH8cm(᫨Q?1@kvifc@12 5iB!̂W{zCQv66N&צcEߓ@/pǷͧŰϧFӊ&ݲ {(#xDw~+Z95.ٌ'`B8R/n!U )$XY ﺦuYIo ]NLVrLjrqf)*AvU)dpPTUV:_gqDmqoab [b;V"f2˯]Ǟ tP*JY"M42j@I`㵞0,|%߉`f=E[8'ѸtFa^]6!#<4ejͬ-|$('Sdͬ-:lN70xot$oE4FR() 8 PƟ]ڰ6J?ֿ.;ulC~6 ۷ԏ}[ȲW d7:/҉0bPSnFi9m$,f"&ZEt3 ?$n1fìHNn FL=;s2fv"E7S+iLbB?'ȉr-jsjJ4 MGN{ۥ]ȣ=gqVXp͐XOzvcGp#>j6l9a`Td3Ϙ$Z򶎴8jsC=`oI5_)BNG&B1[L($CYh(P#~EwV&}qomR רEYCWk'E_!BE?G5U=a6 0koNg!W lK}aS3,(wJ "5ۈ4u#>7N3#2Hp>ٷ|'_b6 *Q/0Xz>^V۝54M5tg(2; ޘ&Xf޿nv8^\uc[*^ F֑Y2wZ2{"s\&o(Qne􅻐=8(aebqDVSBڊr|Iac4ڬ)A˙ )Ke܆崟Vk@BZ1->X4/~:c܇v9/o ^!;d7q^`;|$'276Æx|.` zVIMN6ZЊnт1+8th+堅 4_zY/r%P|gfo Bd54@麳VQOD;S]HFG PAʯe)Gt #g1G_NڣXrI*TJ+wM zcFyxiW 7mT:gæśg?tjSLƹ~=y\_qetjQ=A'GoLWg.iiCQ=KF@h1Fx+%4v'Til¹аgEoxf0Ԣ/20-aPy{`,eQo|Eux5Zk\SlcHAU q:~mqv}3P 4F \)wǧa:)f}!kUIIg]Fe2l0![3`jԳ980yqvwAďυw2THV}eq0[s]GFZ$MYɏ?Wgxh,G_ D:h E,klC #hj>vs_ f (7P*4a~B%muy6{~hr1DU$x Ol4&R7Qg] 76%JkpUeeգ2)Bd6򜛃3?yܶB!F]0z_6|뼚r悡?tfgzrIdse[jVO|-~]S?;*N=CT^\cg!.W9#5I$n)EР]þ/{ziR"^󔤝L]pݻOƉY3ӿH] s*՚ZC{S;7"v[wnL.͗3tS A*=΍ E7M8UyCWK0CrHMU8!2^iV" Ti,kEr*Uɜߑ qWuӱ8ay hZkIn_= ,t:$*'o PhX' Af(y0O+ymNt^mȚ٬_/dJm{O C7Oа~طL cr߲ZEl ^˭$ᬍOEoeqhk$%kc/9Ej#D0lG+)&0K"5qRu-(g!LFL72.O=b5GgB:sݛu^r3gMc)ϒܱAgijú-§̜/+;.8OF px%ԴWQnV00icbk0M"pt S\>:^N%56}j9wהa@U\$z_.=8҂a=g?!ˣ i8յ,RR%%KLj=\Nu7hevZzЏY )ASnlέ¶~ HE~U|;f39UXP\(ʧu#ٜo믴龜7~+BT9Qt9+`? 0׿ }@ȈIo>:}xG®KO};n2H+;G܎@f Np};뮏Mk\I﬋Z@3SmWY] d!gM(WQF`qɼv.E~q GLjkPڤ*RW@X}(p)P @8K9"+= ۡ ʔhѵWCGR*rj"a9k*91o&q4M*aCCYB98j*)Q~yDƕ닝]o͗4p;SgB倫*% ЦEP ~Plb$<"n bMD-uv/c[PީitYf+ &TCw᳢%u>#Ba4!b.Tɤ@. "\)_ }2vEgy8=!S\jcr/&F'?]6ǽ'E<FN@!ۏOk)@,_1.'sK=hžN(1:G@WkVuD.Lz ŏE3 ryM-;1kDD'#Yj`׿*ytj>pPK^|ͲjnDpQNi*7E i[yCDaVyޭtVw9Ph'" /l@[< tH:c(E]=r%#+)=7%زëh 9ʏ3 | 41>ݡ=Ąx<Q_T[_Xӈ"hT]#! ybKbaC#JnhrO4u)Z/K|i@S#ߦ 'f fc=1n,5p}}ky$mHA.1`YjF6Ծ ?I+U`8=71ښcCSpKsPd|M;.o"hHlV{HO^pȕ.>eďN (Qv EBxĦ+,|IE,K^q>isS*qb:oN?t/%fiQ Իy01ZͩTAJXGhKJPMjup$ :LYOSok$*8`? CW"H$̫^- (Bj$s6|Ǩ'a*DDI]ޔ^Y/s4g(x&0.A FVr싹yP)9 iőr wa1wZ>[/ |!kM662̹8U "z:0wCo(jvƧa^z-}$xX}# iE䊜L-l:'Ju<0$N#ITqCw{=`6Բ]V4,Bx)_·Z[] ql3jhk2ϸ" M/4)>F'2ꇨO% _#zlZq靓C:I۝r&J)l7e%hD v۷԰$5Jz率+ħ:c9|Ə~;IH*$ɀOB`8eє? DUo1{M.״ݠe-ћ$ oS$$'%?v9U변_f' LatWv$N|@,UtGgw{*ә.IQz,mu$/% M9eaLi.W) *oW"{׎􋩢2ɖlcyg³_zTW(,n3Zj "uݜ_7H QPUqY-NZ XmX Tg,ĥlC9q"p'lC&QKwQKQmi 5 U&Tv `5f%k}d]?X<pNkef-jJc5I=FbW3::iuaoJ~&zE|ڌܩL3YPl*EʟC'ȟ Fg6|LuՈ B$ԥ 61m.%FCBCҐw{BpK/M+bNGP]a.ӛ_3U)FrhH mN{;J]~n\)BMsRNTLIN`؏U :ƨ+%.I1U^=.h0fYА6;PQr^8aE!No mn'jFplG|cRt:>csP-f(Tgl,}m_:0k$軱&cf ͋\'̘:@-JD튘&X/2 -T9LjCLrƆXA\c?Egp8m0@2P"tB_}"ޤ*_-L63Mc"=0'yX R̍`3Vu̷VSD[#tt$ri,&G?E?"!|n9C<@ !gpŎ732y 3%}Q_̳/=HڢƸƿldƙw;O'\ cv+a݆GcL$P8_bgh|V J'U߱ڢ f2!Ң54WGPg Rfk.kL{$ Э2~m;xg;ֶQ b. j߯3\ t]m;tFt)aVxMvb1LBčFQ& Kfϯ3jK ¼ ;{8Mjzg,K^. ΖIE:i ܐjI!j[̶)ԟuc ѭ 7}8](z{"#Noګ' :o+G%y? Qahp_T5- @Vy]11װn/CG9J 5k qʤs$'[\جu<ކ!8mpskQVΙ_,ܪ۩ ^̎QhUM~e: <(`#m2&%'HJ`*_RON4.p\4O6[}EGe -? /3%:DŽdӶk":ƭDh|ٽb ZI{f4bpwcX|qk'4Dbwb9S(>^PXmzH7Iac2'_^PN1?:." 68u 1lQ4}6ތ}+xj@j[naBfzQ= N;-Pe2-FzkFc_&I%}D1a*00 M+%l]L2tArŽ4* _9lMhNXa0hrv z} q/:7t)CU`ܿ>>.;@b5PY/\y Hj4wDKiIr3S"Ts杤~QMq0.P˖r?hUc&D\,KT`qX,}lT24Q”E@#vZsP(o `b2OR6r}RxqG3{忨/iH((Z&Jڡb;wCA%I9y /f˵|$iGGÓ1~z@~[dzd9Knec5:rV:фgeɱw<:$:O}~3s:p F(Э?Xr11 UN'X8? y >_ @cHV+ON-\FVçƫ\q{mY;;\,WzX&O;Aw%n;wUeK{*X]i8] $UvvXT_앭7??H56qYSj(v؜oBV9⨒!}ljX8"0ol+A8瞴 r@% SPRv;; $J= %uTzT99߬Zfd͞rLy^v&Q-^b{#ͣx,vQ,Uև5FrK!$.LN?/4ҩ'@~:ldl S\+˗C.6LUQ}(=QFވ=yd65(Jή::0$"c?Vd18WbťVL<(ŝiSZY,)of1\Fi2Z@'''vnLvrREQa|ۋuʗM zh`1rQWj.} [RUt X4RUWei`MOfsY}z\Ć{3ɨCz.G ]5ޡk{S%kKp3Q.\r 8ݮpNeGZbE%.qp%QuB8JN q.oE<'q.cȈTX0VgYyu4r)&*^@:]G{)<1q2ii =ah$"*7yLr¬ݝHS6>^L{vyq,W>pZX>g8ݐp5nDz0dH`+8!Kj&rjڅ{ 5u*D-]#ƹ8U`7*TԸQw0ȋՅPxlfnPבla%ۭ $^d9)ӏl9E0$VRMW ek ]@M[%Ϻ5PFCq03p;jq$n,NCDޔkXfp^b-ji2HpBaSIn]u-AiwTKZE|l,RGjGҗkر)dXyD"Rɰa&" ;y% >7Jj% :xo [0bՐ#ZG0 r,= 0=fsص{4h T7˄^JT)7{-B\ +WC\0q6qS\ͩL\`<2| V`sn+(le'IOe*wo\evmV/ƣOρWI-DuF5?il' S{;,Rjv!Y4y j$ ŭe²m.SwT\H5mm;Nn|=QXIV>/B -B0(h ⫈E庽۸Iczj)h^%eGG}$ʀ뉨Q:OW5GoS)T)HzX>L ѺoJh|g殽agmy {) 7 C8+E956@P .<^:,>AZ=n: JwÃt J<;WҬỖ7H3[/Cg[9/ErF%Z\Oul.pl!6C•`y9 Z q5=4AإqO(e@b!>s6р PxM $Iu?k=pc'Yь~ិ#jQ3յfܑoG}]E wl:SP@)ZߢeDaΠrū8a-|:{3#ܽ]Ϫ.mNJXy/UhK#v|>fӛ[fj}yH^SuiWE2-_4χKU .T%W4&45%fy9j!Ig0r;J!0K*ѱ^xLREzfR!"I2G8 w}+NiZ:\/dAꬂ6fbT#ܬ&nʘ/ D %E(ke O,h"`iu$òRד*Im'&&)\l+pϛw&Hc/ޙvu^ƯC8ekOmaK0e&[7C:uzftB2L?>^y#o^rI>.[;Te0d8kFF 4\mPsļ%QJ@̚׏x<#%s+5DBo]NA,,<BU`&f֕ t'zOFEf) NXc4곶q׭: X:~zJh[ET',IԀ0~$3N.]xv.4-{,OvmExǩ6M=I;"eڇ/gd]VThwЁgɤ-c4&2@JOȯsNʏY7DyoRw>d UH [aZw$/"z_egPF?-&jE Ɍ99G9(yye[Pcoj.ڙ3=j쬖P0T6Z, (S2ܭ \8ÑWC@]_t/=G -Y`/1;cHE[էrq/MZm>\6unץ}sYpYHir]J"lW>F}V*sL#eqxoZ29gòZTߑ50$ȷy^zLY4*81.-8HR%l FFz(^[MS.Mz@H5vT~si7`*aՙ\,(^31M?͐↶z岂 LoOR3LJdi9 F;YCZxs͟w. G:^Z);6OvY5 ~>wtEݲ"0+׌D:]kfLÑsO-{ii X4G}!L4['  }8]@v*PZNvl4,'f yqX]sڼ[?ސ[%ݳNN]Eդxn¤^e}bŦwP> 8D7RE8K8D+e|aow$N"a]Wĕ>='_Ezd-¢ V.+`:Fcm1Dܼe5F;W2#ZlqrBW >&Od RU94ԭy(^peD&z3RgD2 ?|qJjMҰQŝwqXrWpML2@Dx ׾"/%'X^ 4o!)-;'30=ʳMzUo}Ú~idƓ6GÑq*qdAHfץljνa̋F!o{b@i_$ o#$uX.'€+6%c79)1Z^WU^͊֜zwpY\SWdpjN<$+`𼸕 `Fdg")U;jFѷoDPWFmjϚ~>zGA_,_+]?'=i,qmݩ1#aq_? uf[эL18p&mJdxsvHQ!tIwZZcJ=.X&۩j bt ޯD؆,tcLcCO"7]%%VLoꑚ;硡u&xo)J\w  6!7&gJ@=eUMa¢z|tL>gR=amaNە"-|] Md FV5m;8gw"bH/g.qCA7NJnb[Ω-TR-bIYO2FvHlh,{-3.UDWi FĴނZ<io%,p-i_oۗRN,UPCbpf0 HVJPe\En]@dO֚ĈUGGATdq=UH=rt'd5 L-g)%J6Ν9&""Whd3 q'`BM-[@-(?dlrynb2 ( QB̙6g֪ F'9#"} /[tڪ#N,ZI\zÝ COD(CWu gm[_oLWZ`~^WP J) j4UI眒nn3~sb eCm EnMImhA(^ cP@QΟzR`q3$UP0N\K]tِq nQ9 ^XP0Z/b׾_Zrzz&<ە9D~"(C?7Mʼ#:R@#md6~"\EzKP6?/_ h{?vJeWLqTјAgmA!y0~qG_(9DMn4(]XQWuB_J!j;}i$T4o]9"`lK3r 1uX_JDewXΠOcbŔL/Ң9XTIQ`Gq`U=B"|clD_O5?_@Ugl,^i[yp|'-f-?UG@`,HH.9l <1Uk07Á<)|>>ވxばP*!2!m9Ɇľ֛pz\ǽ:oXFqȴd<*4ZU*}*|oC |"'͵6_rpC&18\]IB&Eͷ̌=W?~n!Gd[<7D[z99ڤ?\r0cUiC/c0#DBOg"K o$W=z YJNYCM^,B2T5gi? i˴x/Ƀ-;G56xP3* 9}L %'5)F,>ZMھFv"_P0JyœpУf? ݯ-lBsFbyDmFYzVFD~B(e^koI]J a[,7 ڕ|U* eG13z 5oX4V}VȿT9X:5CxA6Fv\ R@QW'ܿ)yw_)_RI70_ i|mIC n'iXpp&r=9}h?W|S:4́rT}߉l BIE^kl(oXUA7&v;K5,+oBTَ-q5VLϟnPP/]qoxAU15bEtm8_ *ȃA(|47SNNj/F%Dl%V^ R#\>oɩBdj#.HR?˵Ě6K[ ,澤x94/>YڷIcj{,l :Rn 옚 $Rèt>ga}cBxa$U{R8,-h:@A#JYaM|pjhiMΧTź-E&y.I:ȓcWgf3Csp-яwrEm6lQΫC5`J^@*iK@ΌK =@qq֐(vDD14b/9+di;r$/2(9qR]WZtq!qU1#?pT?<2sf9?&ZE~;<]JC :hPZ6誧Ϭ=z,wW=‡ngq&:r"4b-2foʤp|eD"\T.qx7SvJ/_CP39~Y_`)Z< i`뜡wƑ,W~9;Xyc}TM45⾴s= B k`Gz)W!CMa Xv83 DHxAi 1RdIBKX0QuY,Ïd2Oʙl(KT|kҋim))S x hRϿR`حyBBU mǸa&Lw< 9ߞ IW! qmHq11MLi$bROJHF 1OWVq>{th{+Rl☕϶uV#Teïʓж7B@PIdNSWehcTzsJ$C~c?JOSȍW*vkeT^C3lU%hv[ CE_(N3bK6VwsC";&\UJ_eU>=8;r"jfC^u`4{l< n" ɛyLh+y^J%Tݟoo<"&+LEJpȧqd>V )4|V[ݟG ~SDÕvuyCQϥJ>1&R=]E7K&a(ȲvWP d >rTV(I\\\Xwš˚/vf<8-[%fڡ5bٲX Cݡ17O?gCϸ>z&-$(ml`E9 Lcqa=ƏUvC7$S' j{+ʛٱ0Cix\!l+D&dA$7.p q4!tS k,ҞD'_Qn!_(^çTnxG1T$vjq sֲWN-gLl2#2r\rsnL>}TS? wy?]SeqlIV| @ ׊TH?ُ֑_,Y5TNc)6MA:ӄ}X ~,c(cE>l[.E!]|'.oZ2x/8n]H0[A 2@"0:k.wl_+i%/X e'#ț/\9p:q .D!ne^vSR̎Q!h!xjH m7 +; @l7'Miה7E-X|ką2!iBY U6iŏY %Il{ gQEngPKp[S1_WU͍b}Ãu@caoQAG=.35adqȵ#)%_QҌLD.y4-y醇!OY4Nt@zRĤnP,;?86 BYL#/FF@b?UhWYs9Ƅ.,:~=h^j9eE/QN(w2Vl+ݯPһ;\{ǁP\|b%T$u |31#SXJ>~z9X`1z~{?=P^gOyסp)-f_Qn; Z,`Z3b\A G`j!bN˭K|C[­c%#&#qo5E=;l=r6) F3Ei=v%v@!W̆ XJ GwɔDs%rOPQM|r )6%27MuG J=rFR5S) .4B YW:ٟM>'2+-Ϥ!mf=<$pw, V3'A‹2sroYdLnrȞ b@F,1\_{: Yg酶-Aŭim"]<^b6}F?S(Y>!!6eXlEMYp-HI4iØk"~qjE H1/}QqKa2kL2-*J 3r.ʤᳮn~PR DmM[~tRQj( ϲ4(XBXlixa/ )5B_.qV? bkҿ?($*Lh\꠬8TE3?7#21 %枀3B,׮&>0ɞT 0-ȠUxa%OJi+ ߂f 򊄣!X*?;]#bc r~8H62neY丳hFļ ͳ$ I.:12<(t&zCm@OjKk'I?MI*_ UN(EX"?3ÿDy+EhN $"oN=K%"6y4g􄤗j$%B{dw~xbׂOs{~ h\|_]À ]'ܗ4\9N"3 ww!@v43.{ԒDPI"IoCn-!+%kk,`(ϗpz2=$;n-n_8zr:6¿ E cQ_W"6k&"{bp˟bn mwkXһtBͱN jgrͽfu+ܧD%V\Zb&u*ї?/kR.3׶ƞŎ9TH3C;0bMAVfP[>q@$x`8H::P#1rܖfF6fh}9nf4grҖ6El٩x[# _tD@L0˓ e!l@\CDwCs8k2ֵk}{l)jR$ZG2贈Pjޭ8TC0|s>,OtS.tw]n*/(ɼXp`ǣ/ؕ5.c^d+"$ f7O|uʫQ f Re76d9'W]ϒypxHc#s뽆m"1ax1Nz{1"L` WI,#%!eHWt3Q.`o'!Cj[#ve=?Kl)}B,jnm.{_a C\[`˔v?+*5+jMBw:٘AGc H~lehdSP/M`-ӣU8y(|8bGsjg | H9ގ\GQX_>~C8Qo{4Lcފ}ps`Uه`5g3dڗhd;.NUoVoR!xT~S QWBbG!t s$IO n=!f^MCgA(Xb[~ koS4"!חasZX_.<2ܫ=ћu45c(ZX#7C{m\po@iKI (pu+u2{4qS~IT^C#rCTup/|r#B`h8EGE6ۮl~ްna(^FSM6Yǁتq;K.pv)UMi!姉E4.(Hnƿ!;5uvY bUrRq\&zyCYCZ7*>q@b_~ 3++'jP,aa#pOcC-f Qxs[{gtޫ PTIk2qR(|dUK[L~ wnm~D1(&亭vp_N9fDݐq `&79A-"\o%L>4^)bJ%. Ċ"C`>EDGkMHamM_[Q,r*2NXw~̂~!dWe0GbO)0wy+t[.4)#NI$gw}_KrT^>Q-8#%$[Z`-bG؊\B?b b*y WN%f| %wrkݑ.]!3v$Tgk3;3)xw5m1>e$ITL~3b)|n}%#ݑi}4duAnf򭮫Dޞ~0pyopPMw)c]]q sg/eמq niz}ԝ>'Z`2,7JcۤY uuL14-͏2?b bZ 355c.?5O]l4_m,S\~2q7R9(SXH90xL^wPZ)&N.ԫn\d}a8UIsEU(TIKúx:˚&QWiӾZ`_48()RBA11٦eWSR|'P+WCZ (~Af}T؋oG,Voc03>IQ:\QG7flT ̱?fd>%Ǜmw ~7fX\GAh6'GDdjsR!֫_4Kz !yvѶTqpҶX MeyojJ{`FZГޡ>mA ÀW[)S9킔8zV-7W?'Ct$4`͎,ϬkCơPʒ}CPG(EQƶ= qGM@i@JYʱomFKVͪ:*ۋV 𼺞$^IPIzz>7^d6 KueO3l£*Yd~%ƵHEOqP1/ l(%OwT' Q/3)mm%(q'(`iSNպ. iجM[ _Z)8 HljǸ;p R\疐armP &z$)R/TXNd=jCyC JBԈK *}0Eq1AC*[@GQH62(18}!ڪPooNZ:JMs5 {g"kq_tO^Wa dEVPj! CrmI|zǰ}}\Yv$P'vuhnD^$PC=FlIfjQOX~5>J'(a3'Wݿڵ_uĔ$;vqTۭY@\|*4ME{k b joH͋Ua > F1ǩ?4:5<q}. g݅K1U>.9K Hi2-97ǧITKѪ0r"l 7(^GPc7TDb.6zLdW,@7C29= "X ~!^NbfFך0!0C@PVsmU;5CT* cYZIUԎlBYy60 j e_'+Zε3C OpxhTP2[ڲ4`?=T)up%5ljSN]xĿ|3*2  ;(%bEjW,C E_$)Y\MnBCqb‘3OH@Yu+ UR:x qi%Íw%Ov"oQy#1<}Lyo+[u&\蹄ځZ _#;DڐaBYA|,E)ZyAC?>yG_;ì w}ȳp,aI5 6yGe{{Ȱ:'#rT{S_aۚ Fn?2;M%F-BWѝCT^G~z-͔u;VחK? Oa- S<@,2( TyVg'tQha pxEvȴ[EC&7oG>Hˀ|:S\ߌw,ELoޑEjA9K" =e=!2nl@g&{p$i%cϺAG }l-qz*u̹R]`Ӡ[Rz[qpmT7PI[I袐quh}^ K8뚊"vE5]GtFnh`ة#m%rXFXd4Yj{DyA+`/-]m.RfFHoRd %d+ OAF)ò}oѷl\ 3փ vpZ"pZ1xxKRWw:І\1w ~dDP-_M)ԭ:nbו4N$kpgvky3a׏V)2dnl6A=+N#ӧLw=JmFW 7mm,Y^gVR0d΍WG5{~<8X]Kr2emuf^&lE)E\?wwAQ¤3%ݑwq\MDD#vcx+MNɡr 5#U F(=^&#ҮMd?B sncglmew4SDksI[zE *@ +-\3*u#4qlʍ % ۊ(AMIA <'ZR+0h1\ Ck"m"y( هx}~[Mc~ A~k/Oo*Д֫ʁԠ![ t‰GUo}?m6N7z%p,Mψ7C`=$g 4=ft TqNFf+q %pO%<822.# |,9 ~2+qd J5d6 NGq>ҢL5ɮ-3U uԞ1W$l8Qoe_X34vZ=?`,Zؚo싄6kHm9Ĵt&:df"IiS͟Ϙ-S):JTX#PX0kV\#waR`p%ʆ6J 08-^DBZ^a+lo@Ik{Xh.d}X#Ư&5Ľ$BT4| +NU\e KŒ!f|\eL.2r2Yb~9 gr<8CZ-f M?ɟ0uv{ Kf`gJ[#6 W6Z}p;TI+ƥWT dviyĒV֩Ha#`N#9hRޤ[IJlr uF=#_٘Ι)a=,gAſtacuR5bQrzP+_'$+ SsAJ. wxη,*ucpt2Nm0z0fMxrDcDF=e#>iYyMcSa,07D H2kKa?]IZTMzq|mK.5,Mʥ\2 7OϛhZ V5rp¿xb-vA./3r[<ō)qُn-XJKh9;0QT|t5;AZie5`)^T>vB`tb I3=upg+ ~ wHU[V7;Մ.Bd($עR _t Eqv=P~[yiNcSG`HEU>:ufQ]4W{zw-;:ylWM(?PթoxE}V.a6?>zhm})jsTBt=4Z/=#؆6Vo'h Sh!L=UwXؾqR4)2Ҳ# }&9b-xJ9\#,$8,jBZ5e8[h3֯n^C@Ȱ T3w~ .R"{ Ă5`3u0źI>[mɟAOr v oON(q0M x{7Ԟ' Y /Tg+^C ܸ>FA;P}ZNWֳzK"--ူM+H&ffֺlhǕ(ȝ8, LP~]4YLmC[ L *Y-.މIvO, H΋g(N4H="Ze5O>&`|yZ(kڟ@BXJ> oN>?z(|'d4tFpNEDϱ="j˯a"s)x^}fm."hΏ@,󥳋z0I&04|әȽ^eY}`Op.J,x4Ŧ;3j; z:ĐܳM TS1OstQA/~M6gk@b{4Pl#B~K_T/ ;yW_Ά@ujJ=ƞm؛!-N&.ssLi-7";-"”=9q F`y@N8mt ҐyG6D^x&j q*lQ2m%O zB[6N0[g%o0S!ٺ/2ޱ~q)t5N3" 4Ulcgym*,>2G~qWZ{ps (h,2 &ĀJ8`f43pJ&25SFe)`FqqZ:mqjJB*5=&VtKD^f]9y zn>WÉz~ΰyψ/@P~=I{1jmVDbA<o)1>xT֙ IZ)}?Q{N]Hp*%Ǎ+tƇ';gu(yx c̥'D?QIyz .u&gċ*&ߔhQyhdnD;]K5F≼y?5QR~p fUBI{:ZC # tQ/n^@77%((> f! B[R|@lp4T 冽䘖=VB/1|3"r9Vڢl( -Ӿm3Kqhj黅zY\H0TɓZ|#V  ϥTXV3D[-WJZ3 ܚ0p<2!}(+߼EJF k6? )V131Uq8kcC5=yhzU.'6Z.;DmV7vflHK ņVሡYo<[sw]E]H1X.‹\2y/_%+E*!~?I$V_ \]1ăGÌɵ)*wy><㏉JqCKZRHa0hۓl޾vv"%avc}@#Ro}_5W5` b|zY|4~c&(WsL\ƻo^#%7ɶ^)+Ʃ τ/>qT y3'L"YPK1 G Esl 󃮁-[`/"[f7•yt#H7]) EG݀ 8p`W1zV!MO"(j2 `˽T!2^R*>m%`,e <(GTpogDe<ޱiB?lTS~WןںPt0w6LZD7P.s]U@/1=oq9rzJߟ8\3&FkÒZc,tB\.7섺6.}T^>4Y*&ПV Xl),N5*k)^3c3ºqWN]IxS1BaXB8",] b0H#jJ +wه0҂ OS&CP 2VY#n8uS5i4]ahsӹuӀV;e'UIIx<Z\PBrZԔY^1h+ܸ|KLZ76hrZ,aJsA^WA{09Q+zHT*)ձi%GI/iq)!ɗ|Ƭ+S?6[҉:~idŜC&xh85bbN#ܳe" #[6b'4y__da"xRxX.HE['<-Su†3.kY/~D#p28GPK'k$ȭIB_$-GU@2aSuT6:/QSEFR- )$xȥg(`zBќ)?uVd: 82 ?m*lN_MQl]d51kz2U6N'|N7cP+$llCQBg8MjÃU8" ._[$cL5*F"~T{}(%:b]S,WPv`aDc )㍱uP(#)Vిߪ{gY(jp6Mqgg#o]n =ځaW nGAT9}/5;8ܹf f lܖnX[j:Xé8̳7J$g&q` |(-@8iPM^-q}?388)o/@,W>+lɲ( 4%Dx;@+R^wGӻphdI Hc;]#?Gђ2lz5ur`5*NlDFV٫~h#W7 gs 4j&xqV~ BQ|0`Q8S&asX ޚiYߦ= 6ʮ!V9=H/N iM^7psU9J@X.P]YT]Rt00R}4j.JfKXߵڠڇQfZ1/^a;3agr #~2Faz! fb:#ӁI͟ [k=p\pܝhcy7 2S(p0[24#0-pN?K垼D̿G?FCbz7 Xeo5Vݣc\3U`l6ܿ /sM`wKrg:ص)aOyxAy_W'#s*h3yR +}] "(iavHioGgVsr6]FR%PvMt(mͨu9Uzdu%!*`1 ȕK8 885FsP35<8 pozZ;j}֚v~ʴTMat!corj4 vqSIG#Bd=)`/l>rꥢLJ"|!-I:tNr4 ֘FZz-HnBwG'Hl*g&]kCnsݗ׃,iw5ómgʇC^>KD#(:NP)8Kb:9h ΌUΊJdkPlSӨn?$Ə!鷃9zє{yb;f ɻs$.Q=I#LPM1H/5!m6s0gYNM3>nѕe.]i'%ܓm*&]ɁBOuYZ ʼ,:ixB*V jnapA̯eWQa7F?8l&s 2k-LU>s3="[ w2,nuaS&YB RO#}K*:z<[/Q_hw]5Nu!{31;-woOLuSuC-v'tW'&㊚a4xݦsr{o3l%!X7.E)f$tBL *vs$))GYfdIl2 J>N/zՄfU.4 tH5XbZNV@Rk6vfc"]ҧMZ7A%g'FdNk$}P$Pݴ^պe%gݑtf׉H3|DKVt(m5BSA"~.8{N6 ALtNsg}̫ʅ7 :s*z{,N-SPA +FQ5[O{^`A" A x5dy<|YSKeB)i.nm.P&xvKtDyzu|WY@ sv 8uQߛí85=lFox:Ytt@'g_?qJj!8 qcB(@Ӹ^X8'ԑ&1~ 8/z|.3juX+6a@ʴXڤNH8-{Iy΀ s#|n2}wc4_=@zGqy|vg WI5cя[<":2.? H!D!(z3,#Rz~U _IU(ؕT1 X5OY@^ag'ѻ|cH>^rxSy_4 C~x rC<#:P:E4(Z){Dw6ݴi'G %B|ep( zvGP_ aECFBޒlr}E=j@FUfs>2#⑝Fw`UL :fmDg Ďkh]rL]hJ˼"Cݾ&0PҺ]@ʤLf᥺i5u=b Y)sX}~lҸ`|`wcܶ^ )ݽdk`&p{<4 Dᎍ酹*4i 5@DPŕŏ7}q3Sh-{<\tHC^<#>s&ˆ&A:0rMRe.9t/rS&x'ԟ;}6t?n}+[a.~%E('w8rP;Gtg7?{Rt,P 0d c0rEj8mdJ :wCA W!["݋8^DW983n]sT \sf[e'hAи0 &(b;Wz+pgI߮r#㴐÷x#OTc+~2#lWX>cZ#*';OeK"譬48 ebpז4[IVݹ*[6YP8-}+ZOD.Mcl9S[(:lo +|e%:_hF+8uQ^Pn3)-vU5A8O>f|^'&4I$J ^\l Ζ= )a&uN%PU% |5TU 9m_q݇LS3@=ޣ Į Ž$ e.Fqbӻk}&H][HȩdIXBwTum bV/޼ԙP3k~,hYm-ArzZ>FGXK*\Ft8+Z>CCǝmll4}~pH$&UJ> zQӫݔ=KR?_{6"D^Fjrw"~2G 'Y ųwF\H5]Du $7\֒X:|PZ}&.7 HUnDACz2DYT '^;gbl Nh2F˖w4Ɇn`ҏ| u獋^ZY3g!c@~v<-]CHBk1oѰ[II20֬Lq#3*(aw<)jHwiap%"tV6S{2WϦv.SR!ˢC?8ց4sf≁o =y +~ooPH51ź0E5olaÔ)N!}wkjkƹ'V>..7Ó<8 c J֑D{U)> vF2DEE)B(/Rcll^.uqx7%B2.٥޶_x# Ⱥ+(RX_vNrT}}ӛ(Z8i:3[(@2c1nFNz 6Cp{PKev^a󠍭ΐ}ngCP&7y}ΕW~*NNs @TrZv7q B_%GK=̙?HvEWR5vDw 4cXT$6*@7 2*$xI9W'3_0v=1>c7W R>@~OZhEncC9U.5`X7 Ĉ7Uε}c O䓕h.߭⪇A=+DTOL3Q7Hd5;A5ɱMGծ)IM1ୟtI x֭zܪmK $ۆMୣq{ۋ"MO'X>sW}\#+8ceޅ|B9L\yf*ޫ @8gj8PR&áPMCS!"$s5 S(х9.1Ș@?k,Z 3T & Un([ޏ\j ?&4|b/mt پ7:/-6{F3q'$V*Oa\5o0\40̰kp!g;0p>mmR_ 吺saD &u J Ѣę1 [`-5 ҾA֘x%5_G!hdM4%C; Xgl݋sD͈R?s)/r~-z+%o8:٩:, mo9CH\1M)?bML(R&Y\幽zEq'Bk:2 "dxS^E]"2:nA!̮R~HL34B۰RcNj6:Qa1ø T eZ9s,A6 HAGer,a7I XǞlmFUO ljOF"v?!܋(@!ϡdҀꔕ}7icr17Q( }zmk2&9TqPnaU Pu4rV43)9C 󢋉]U.4H]WA/[% Ş;>0ɣYS%)eb6nD>)E]U )%0E |svujgT\fQ8vp=98g&8+"}g'/d`\gꢅf$g+=GO5mF5* L!B~LQ-gUbs1.NǬ__[I(RƣK͙@yAU:!s`kOC{Ρ_ T_ܵ]׵QA|o2륤ЧpH&gNc,qqS:$IX5i&x?ղV*[Ρ;TUmؗWUs|S6{ҹٺp 6]qܔӑݿD$WϿE"S#WaF+RS^~  4;#BXdzvfkXjݥ0h~\Lo Bx{aTKN(ISQ/x4h'8DXϵ&X]|:5[ ge?Ӕ7h9'IU)?g[nRJ*%2#˥Rx3ɤRdޭ{of(!oy)_SᲝf1#L 1ȴoJL,O|r|ߗ]\jm7j*GCHTOBh:XnNEgf@%(CC@J")F? ;.T=qKJ@cfC2ObQ8ɓSl+"M{VqePYDc^|8$Uѱɼ1zx?ӝ}NT9G%TMoG ~x)IQJ߇_l,f+j@um7OIIqaHeC:Vt҅ w)S|'^RCӿNQ /N9+„f))t׳ %A 'e+ƫ|Ežd*ls/.izXi%,2^Ƚ^Ӓ˭[Ñ4+g8?2klKk>ɉZ1F>O1풑s`OJRӌV*/d fmn6w 5v|sdJ?uwnwGG8ZC&d2R%FcuVy u}=zo9GA`B4-vJ! LR9*1KzToc9dMé=:jhc?f/W;oD INPPn_6kDR ko;cK4|靥0fYC_缾wMOfk!kY1[8b ۦq?f?7jwTa,ԓ,]ä-ZbWvz ( jjW+W/\Ge/먌kJ]- H)G ^3Y.κ1щHQy#.yw߲P\6gG=ߙ{9ɟeq}&3xDr9W@c;,ڵh.Gl|X7TFWNLEԝȜEi~//يbu}dlj,q i˫AFk Csfo'r]C?OMEU2FíOL~S97"8&<$yPs+/?FJ%;!%DK Tj5j;a[{: b=\\2ϴ&$uה!*i0zܽ 'l~ AEBe`L2N7` mH2[[ -=G}*},E"fOA!0|j~72񩕂Z- VZ;E1%kgjtUvu(+d  KL#9 q##& !HVi"38zXEڔoC΂VtI2я *VZӔ; OBw B\6+h)B:}Ύ9_R|O`N4ɵ^ϠAbXe)˧^CB7.w8=/s)Y3j*[l 3غkܗHJ!*b?qf#ψ{YILh*15T+"S!$RQ H B3VZ]fLfc aAGޅ礞dRa j٨"al:Z2"7FYM[R`Oօ즻 IG9s\' NQ<`6L4hr$ŵ Mm' jrUPY 'e-I4 ;U~y|CEK}P*xZ(/oP@2JU@ we` N%G@IzV.N#/j0 <4bP&sd[ å&ߩA|ICUc-("7=H;i8:)&ǭ4Hɰamj>qi:<,Ѿ%3^p,eKxnF1%Aٴ-#|ϖf:yGueغtMS pd$Ψv4\zo.kI!SJ}KRN\\w[OkDz%HQؙfp^Wp _㧳Md.3wxgsgQlpa͘Ӥr,Vwc#[՛k&Jƛ]tTeK]m)m$ʊXWg]J[J3](f=D5d@(TlKtgl DDP%WHe\<s7;ĉ.SxqgHDq;U!BFHT(Z;Gw2v$HdlY)djc[!ljin) {ڸ4FW*+"~PۍmcS@C+ch^Sf~8PVWfs] !v`.UkI2fu 3 9T_<v=LDv0M 3 A a\+BvrKFSjFU?qvhEi%Nn w(24Baq*]uh¯Adj*y pbec:z2[ m8xt, Ux~-&W/oB/}U?ni 4TcE8x->6̮`hb^R\6N=5N[P3DーR֐,8jhyA\y+vx%l?o>Yza*׫%o<&cU5-l G/GǴpoV0 ;8,b  cָzG:$ѯA2gɔC=c6I vIFotR{eR*!X`0V8tQf;qH&imWv0 J1=%!y1L|45`Bz 4~(YZ5Ag N/~Df{^qzF%k,B.HK94ur7*KsU#!˰_ c*X x :)Hib R IIڢ}t"Pu*eI5Qy\;30$@Fmm)M[H[JrY*bgj p< ،4Bס7 1Fkꃲ.>jYx2IX@FYf>@BjV?Iatb.NcHR.a'|gkUs^ 5"XtMYUu,)ӏg ,N.s.>< ;į2Hi=B˚qbc<&9bqetOukbJH!`xm~ģDˉp#WeDaa=?=oC<ŕ;(,[v墠o'*ǤhǣOH"u$j%GmKx 9. mEp5*=}@O8*.sg l`a;RJ" "p7/7y~e{dKs t#C6趴'qexV&'f)).ܭbCDq!Ve@8jcXt(gпݯHW$v"QaͬsͭD{G`V!wY-Of9ҩ_`t3H403ۀ!9 u .9־% ptC%N5Ah0Iy i%/d=ƙwƫEOȃz^>n3џNߩfɣ˞ @h׿RFeɜVZm!-d< PꢊEn>V*枃:+{P@!5he!?1 G`V"jn U)mJ$in7 sh*b:܂A<`8jIdgF/ĒYNX S&2K9Xs-Y vd@ʙ854xdŏJ,!=KڛAU:pT݅" ռQֻ廲ѕd^Dgc2ܺc(9)݌'63*tt:iEtls"moG9As f5w*inVTs|ܩj~w9UpN*ݗh=u|1fT4":zʊL+u W1~1Q8uW^ӭ]֠ZArv3Ӷ(/@Ⱌ0L;-5zcy_|1.RKK!9 ٤͝#gGξߏIְQjHC"u/Z'CRgVsF9M㒞gQ]@̱G_EN]VHZEm15#@ %Lbb$yufE9W3FHϮ){Izc/Vj>7pY=6p@U|+h{>76A<"sIW$iHpЦúQ!{3RSsx>$X@-}8/+D4,Z"=F0ʓ^gc{kB r[s?YkTtKP9hRmcy(SK;FjD@0'a3'%tv ៑R%O;x%SDOq1_'7 ~U ʚ!n| |-ͽ*t{ldmrfix0{)v ɋxLlNQ bCS?;/rFRVgМ 0Ysg jwk}2Wi2@J~AQ>zxcClHxӗ4KwerSY#GXCaJAD5iHfM\5(˚ּIJrad:7Ou J8zF'JSҌH&G[ bv/EUͭ+t.lB'gDx- k#=9Um9uŪF~sSn#@ݗb&W= aiS!xUa{i5B@ w<p`f$~d僐tġtd.浦1]] Qr՞uٸ9rCCda)h5ĚbŶڰ_G'$}V\:>q a 0I@>E|ã `u|Ǫ*r .RC`)]`koTE +vx6/j$q쌙?W{k ϴJGh|e(haaf#OgTa683TiMz9reV;ql't0c!H2ArhOYB`13Upo252u[!nR ^tܝ=1ȉd큔IRXDx·"oocML`&;DX񧻖{(6Ôy8D 0oQ7K;BXH("s|[Vpl5uqU$@7n={Bb SmgW *\mǹkcC|x=*| ~:<(n^8s.iW"ɥ LNު܊Gyd^4' 6Gsa" 8|&I_cdNmttO Zݭ?ȣҐN5zŒeU3U*Iua:Z 2I,riw_ߪήoVYtjǗCn%J@K!oXv2 dۜ؆fY18ym(I+*}2 ì@ v*.+_s/k0ãk -,$Yyϥ@J/,Fڑ}I*/*D/f8 xLȓ.=#\1 $T4`) dh)BdvѶxά7w&HpU3JU\rs:镖/OB<؆^B*Xo.)ȲT+ \ :u5\BV \\o{}&+18&T!$l?JVsVlA^[=o ')1neWk<:"*Y_04@U@no:N?P5 6ru+=mNbVDGgh2/xSAL…TxZ )o &p|g?hdmXдb Pf~T]H2evIڨڦ{ 3i["><:*g_ZSPs:1a#`!g`fB~$^)CŒ EWʐIPbiӉخ.KGR۸1֠C׍aoap QAf0CG !7c2J$y}G4E)<KXvyZx/}6΀W+? AxSmy %:<ֹӐ\Xl-\1K7.4L69Ѵ)#ۇ lԷьfڋ(b$חFIn(cl8ceX~qd Cd4mSؔg2]KN͐-Ik0c ە\U~X؍Ykcc5KCk`Sck1?7z[Ae rCC@3ZD@rmѭ[ٷ&b'uĕ\v;`||ջ&ɢR&c GA/7#C#joƠ1O8B-4(5) /۱f?={}NV!90/(ӱ1U咛NY@HՕZڝ Sk@cbΤ'!#bdtxp U(jRv ܅ ĊLj>*͑$?@pƪaf9dXU̟}U[|:A=(Y%m9} ?lؠIkm-:)}n,sГڽ|DY$y.6*Im5 9+<^XDY*tETȅN!H6g+ƫ-A,DCx vqQ(@2%>걿C> /;{26pcɰaseTON, fxr߫>MOvp,J<(⾱r1s z5Hc7>  ;``'2L9BF]a,SXMܫ1\+S?Fky:= 3sJ;am$}WpTڤs|jEŌ^aSTkvdNDiVMg& G<' +SRVzl4ISXFé1=+Q)@ 4C QβZF'w.DXw#<5$:1s.T ewKxi9.= O3Z>d>k'9.5G'Hn&N\~l*IPviR^\Ldq6KنT:ֈt;0IoWUvۣA"ѤO1*p-vu1Yd_ BpR>olgjq|[l8t|rp%혝.:P.h¯E#w)`~|INkv:KRsh7FS_dָ%1cK YzJT)#ܗqiQJ~D.Z&r$$vN-;WYK>om^B#m^b6aB`2zr)];5tn?;ͰV\㗐ռch6JL惲K/ q|C P/֥@'*7)CJI ET?95 QWH0׿d(CŁ>C wvJ9S5QJSrv-|yY܌+@зɂbZq_V[5X HrrLK+@;Padyq7E.-2G.Eʹˎ2G03LmeMzIifKW=,PKqj)#ӅؒqL2c@AP895#F),0Sy^q@QW\P^mP(b|i5&p=q޹ZWwy)7QBua@Sf+:a(z&T\?$A&M[Ҵ !g &{ oE3JΏC̙u`x1KdP3,$ nD5R1//IVfMAy\ܚGnWnYP=u}ܕ QKMt9 H߱>3,pנS@iX"x茺{n!^K(w=:q7[Q~ߢ,+(k:rqT^iy61!:+DV[kNbAS[T uҙO)Q&-$K O|65خr&+f4~8/vj2{%@V$v],Pٿ0ԏ0l yeKЀ:~لv6$ϢbDCeýC*Se ,m ~}jj!(GamLINhȀu::aaY{P 1rƐEʿ0L9q'zfۛz>ٹ(3˶{PCVzӫs;%ДnφӺ'aۋ U$%K'O]"axϮg BGU)Ǐ$Ҵ9NH&*YLoOz?߉'J&s9)}{F4A8x-?VTT~ax%P_jioA۾$<7NJʆhqc9S}گ3WgAסw#|EFݷzZ"ܔ}^<,Ҟ!d|O3xQhfmԫHeѽ{< ry;$#{|&޴H#75Ý@^Rh_9&EB0(yGFОq_6Tʏg4$2@;l&j↤H܆zS*T3Łx[N*jTtuG~jS*zUe"ߴT^YW.WY1!?yxGyaF'Z)zvU (}w ]a0{ uNW ZG pq2#S`SjRj#qnt>F}O'z5rͧԏTN@ͰLl`@ )Xd#*[+DO3+no e>,6@kT=u1nRO23yv#d"3P3}"'DݑґCBbFX,hq\q`:Òuk\kˉJJT`2>!ɫ^anJ ؚyL,>$[x[?܃|q]M<’.X ,~ DCPs/$sbhA6jKIIY(u}8JbV5r=R>S @5 $+S/0%)Ȏ(ڢdwBos0:6|ݾ5U|5D\#s!wYǥ+ڸʂ乻,"Ia4=J-l`1L$i/2^k n;.Jv}S'9T#UmrEH_t)W58D^f|6n Q{s$R6 tE&BJH2k ֔"4 u|I~f1Kn#DP2]i:? k = b/-ҨBTőd 3x~]xװ]ŒӘD⁳~jD>bRh.n+5w3侑хoX 3G)!p,qf&LH}\,%tbĕ}3Sz lX)ie0[(HbIgۜ%AisCT+eQѫ{7 a}T{1=" 1mkG%+9k9qѴ$[Ae504QIM=׮&1I> Q۰+v'YIvo87s:J be*% g`fE9=1SW)zgKZ&CA=2;da3sLIh}^Ge74Eh'iNu <"IxZt{ky9й|[ҨY>SU4t DY*57Di`R% $&{i as7 ^=gne7`/>3L¸i ZFd_mӼ,5KΉJ͇ W0`X5v q.voeAbˋ*?"lӧEFBȎ SHpKm'&I&%i_)`c>XUT[,n+14k:3~$GeZ"EJi!Uvm˾}: l^[yֺc` ,0ؿ]\&8Dd~s(^-uHEnf&cuJ8̮>%X@k{T_a#fR[K=>XUw&:mvK\2nShL! `ڋ:sKd9Cg+b *#wؓ/.cU$;?uH]$o_\ XKwg r%K%!Un/óJ'7dkV3Ia|, )mjh`5nfs 9934j^Ǘ&B8e!rjQH]:VG1bq̆ aCw/R[Fj.fޥOeoy`10U%BQ,Uv>UJ| %lk܊PlSxz#r|EW*;aN&g+UL(Ǽ2p,W 8+sO+Ĵk-41HO0WԆƉOܦ%,,kY~,y wO)8* !y<:H$ o>q5z?wMCKȹu¹Wǻ?%'k ,9gӇhc˙{k½{)ƹ`}Wj=vJ6ZXbw@ m%Rl|9k]#+@ %Kؗҝh긇9aWօTIJߑx &6K NVxychϾ&.2G V6 9_=z47xE j&3T U7Ur\9<84WH'̿rz|]G<6ZEL4ٲ~Smp܈6n?ͶkB;9Xu9'o֟5iP T 굏tiA`oq~;ɺiȤ$ vVuɿv5͐[Ƕ21*46͙a2HDpFr ~Lg%X̽Kha?T4yS2kyX (;dfǍ'x8?|=]1=+7WQGW.YfĦ&lqL!agxRZ Bć3#0ufܕq2ڐFO$ _& ّQ; 3*)Jw &c~e(0B\[{<Zڼ"A$)O( fh{ۼEN&~ȐmJ@"U?i$wv[Ԫ=AGߜ%vSS P "{[\Mqj]{]7~c/.ZC -Y?usVqdTG7Tax] h!gmI9eW8L(-jMt{8]b*ږ.h3wI< j$ #FOSb=#UgBnfŖF^8J?72;8kojԏJo"g޷wLg6ӑf$@@R|3mzDCV,ik 3܋3WU"d$C*o# 0`3N3Eı!_N1z>D:9cw0zU8{Y0DՉ5DpRBV֧ͤcߕJe.n\M uh'Go- @37I3JÖƲ$zJq_~ZOVO Vq[Q,(LR(;Ň6^d \D+5Fi3($՚'=쥰R2'RI[ s٭ ΞT aj]<߿ FN=H?&`۩"zA4O5^nSb2'`9Um2ܤ!F@j<}plZfe+ Hgͻ-y`C `FTwAfמ"t{㶓u 8Ge\7 $v$Po|DQ \,އ_)4:\imG/`Q]V XUe43]Ay`2=.R9i[g2:rOn%-ȁ}MJvӺNر4(!9=-,p{-ai*q@ (MH,3F+-WSe0D%KHg %}Mbdowv=cR0pA=8LM2M@0H-; &".#zy<{ac@ ۃNtfMz:Q L[|]'#l#D7#4psa? =9GcEM%ssg]kU3a:"7}YRVm &* "OߥRq4vMzډ ϑ_d;a$zѷ1IlfuWPIvQ׊wk%?1_w`ٶNσQF2U0dڂ,eT/b 8¿wop"37IW``_y T$\ގEh!LXN^ZP ,_daN>dثA! h"#zSIR$f ,xY-kL~s_, S#~8PbecR6sct1|9O#_J~a?W8.Bf p%M3=pt)43rK ̘+z@޽%EڸT6kX˄, 4DwTnYd J .śݾ055l")' bbnU@9󧐌L_Sdl M7$AD nӥlgIV*s3z;a͉13ST5Ƀ=peƖ Qjb%F9gN~opNX/GۈZq)x퀦xqEw".+OP;YJuruqlCJ*aR[\v5TͦM khos0ޙE{Su17_t+ӭ-KqsyOMz$΀]5Iun|+~g!d$~V`І=+K$iy,y* {h raqkdvfC[뼽lLgZ;4!<ԟ$u$:oQf؝^50>d7_:!3!ϗͶ},½"Ҋ*iJ I$lk5R-V^%/g@- Hi+|ذ.x[Svk Ufz3pmG]\]V]wRLsŪ5l>G9TU5 3=&su \駊6õ~([zH@+?D"ٝhȃY,(JQ+O; 5OT10E\XS#|:^7àzb?ӽAxC edhz%Jo/ f_ ;^];H8B6\̈!_䷆pqan4ySSr+xhsx R(-67I3R:4sxE];Ip9Z>@:ۏ3|;Uݜ6|1iM!ؘ}~0#@ေ>RHy?iՠi j:H8z˔LlTvf̊?.$?O^>y,_&̳\l]:_%^w`Lm;C)jk`X}Fyګi΄Σ¶mƩg!7ۣ"eF(*ipVD/XR ͇JV(`d +fGŊ@b|褑y)ꐒs.:BT8x,ތdW͗>]plX k;/5.ON2@vdn`Ü<'Aa])Sޡ(]M-WW) afԧy~~֙p(a`"GƜ@- 8ݤs0/<@TXBSK.`%ˆx{ҩy|FNݢn28ir<p`, Wa1F-)8$P:33[:; #l :wлÇtAsd*h "4D(y {l`=8ygzbD^8 r1Q -hOxZ.>u0)H0pocQ`&S84T k鮴%LN[P:_cV;-q[ eXヘ\Nv{""]*ݻH kؚ9)s!]ED$'mB ;]oK]%l"Icqe+!g4g=%d"qpU )z|KV)&GS+jO1zS-7C/Vݛ*Z{3)mDTvkd0 UiFHIZ&Pᙹ m $ʤ NU3wnH~K ~8Ŝ Ʊ9"[F>gAn@A mGC1tt!Q&hff(HL*<B+c#pVdjd bѲu'sra՝,p Z[i51nC줱ٻ X0Ёn7^BD\"Baz,(&y۽0;"I+$m4-_7 i2 W1s]%é\$b['*f/EWGzZhyQ'Ih&l[5K+sTu]̺PbCW$TZF0/DJllTSYst ]/| +:5qV>9eDʼq_hXBHło|/ϊЪ%겶?C['F$ ?7Aix繧b43?g[oH Pw+|aU @8zfpC}!FqJ?iqtY30 :(شެ@$a|1 A T{̢Cq-u3+/RNn88Gb_}Irq]4t(lx}vsK":7gJn%'=]Gf -<.]IaQaAE\59 qO֒`-ߨR{Iƒ}hHTJcHc hObFbs"W >7:cD@$vrG׊kF~DR%j:z p+=nH`eχ)!dڱ\mUKSa0]_gybF1W5Dni&ܾdLH l_d)LL&?`-}`ǐe,> Qu# b&+J[L:$AA/ }ʡP]j%xआԃy>ٓA[\z64 j Go }ӢTw`myI HY:׌V|GԝSu@;p{K9LGh~t8/5bvf!]p9-2=?feƴp%HK8ky%G5m1%o }q!&7C G\7PEcZ '*>.V/gOm\CO)xpMO4gF Ľ;ϛG[ܳ@8o8iA6$vBHV}&`Qh%a+>f{.)bD5;!m 1*0,0*gb cmL3~qG4h%c@"}퇙Ų̈́/{|>p+ X4Xn|ZGSuef%8ib`rߩϟHNi{''Eqlw#D=G+gՒa-B3Ko_8"{66rfՋHF=x' hLL ЁDmm?( 1<2/Ny# *0g<-lmR!}&+NimvS[λ0#5@U=8[l{o"yAU[1b2efС(Y0 vހ&vz; Yoϸr"'mMjh rNY*'5&SjC:ߐ|rUXR%>%IX.sJe%hU|U9FRXb k:-z;lXpٿ5XΑYJ XR&5e Ў4u RvVmg]#ubb"~3OiVPl"hn!QFv__UrBPe ],l Qpe,YUK~KU՚f.O|&ܵ9D `vy=QEY&3/yfc+1z eaG$ZO|?l#i,=.l%dܫ Xt^a̜]/_hb1bf7~Gݙͣ $B_$O(D0ww&<\ɼr媌,r1δn -ԐeaʚR, wmFܱm4x\`2^@4%5Yp<ȃ_ ҈[]\[xFNR@VS8H#MYWadm3UspHI4ωw8qGVl91Ds ~r'&ً-݁O$ t8|gQכfyq;]-wWd2p<\S5uG(s)NeͲI:_r`/7oC 6'o~TruCz#F@yE9+ ]M>QMնbG[AM?5٤W#{Z|`/[ _pE~]Uo62EwhS/:}HE&jFy(s$ VXaqjSo!MKPR7IyLL9.R[0OjBr?38˩6,0GBiz/(s> Ak~ N BjN/=the%^<7>n_rc2/+4'2:) f8j6lӫ#OV/~wϘ^x1uI!w}> ;O}R `|מRP\ѣZA qE3Q %G7W$LGE׿BoF>uHێO7!S9Cc#Rm{W9z[*l2b"^pꗧ90,+b*wpwA;OiIĞ_([|C :dypAPuO/PLwf߭D|fGlA=P5ZB JC5u`@aY$޵;Ҧ. ف nǍl/T6.֑t#Ji0A^&={hig8XZ^[@Lƃ Jj[/ HV(r(ĴDnc AhPX߭a _w-U (a>7*ڪӯs䑻,⑼% &dȶM7R݊ʱG7۩q~@zn{hL9`+!pZUo4vD,(} 7 kecCR]fB5J.cm%Q0"z\L /SOQ75&Ư>hz[A jWaIit?~@ 8;%`qE8=Q4Rz9 3RA^۞BB\4V95RCK##쵭 gq{ 5W/r{ˣ!ҽ snJHouxÏ1jQ]Yu@.Y{$!)U gS=qrKcchqwF Mz˜A繁^B]/T[o=F^d6ǴӨ//)w/E"eT!pp(y SP֍ \[ fokyR!79iE 4˫4G3#a[B#z?T;],UnL.PvsXnHx ~)'A2W*DP:6+ m{j F~CaKETJf@̰0cVR{⳯k7"04%chwIߕp$QD>Mn6-_G9 O3q\'XMrxr A^xaH ½,߈;z7}b.@R _1.ǁI8u[$9ŐC z&-8[-~bDr['ͥ*bS/urse Y~E }6CV s:~^٧ĕfKHx*رSi0Se]Ec:42thVo<7X1j_L'Ǹ}ﰢ$v`FH+\ȥzr@Br6[8 $:S#$eԫ1KE7J5v[*tg|XFH$7UU A(gmR^A¡[_8R뢱2`/Eل'SDJ{Y EB1OzDK1_q;%5rm; v~BcZTf҄.,Bʇ\;XT^b alH1R@cib&|g$YNZғ+GDgp $QH$f˚ _<:~%0 fby]jҧOBCc58D.>* mU.&/jsSiQmo81H5:(_K~sKW̜NHUW?&= l)פˎk:G'0K,CL'qIہ mBH&"uEa,rE58 ?H@ؙBIKC0M cY[3iK3 Hp'ʋpO{̡I4Śj W\_gc~1?bf'y7(6?A _UagkljߍU;͚JcNafUYSڇe>D(Fi>یX @$Խ+ᓐ]W*@&0dܼB3>B_ZVb\d{.:Cf@4&,rqGoiLEek>X/m:p>wc,;bĘA?\&>.Vt6h%NKi' PKd2z@x@й?Zm6PYU Zai9t60I1'ib 7wpxH>޻vq.,Mq?Ρ& ACva  Vx,["RI` M1p `.I@Ι+HxYbMpz#Z+`pT [DZBMckvE5D*P~2.ac2$'CEhƪq8U?0{"wX."Gy'N,RhۢJ&~iVDM ÄK/Ч'+.W0kO4,7iѳeß,9s~S=mҞs-Tf Cxu) E|-u>*9z,f`ĺTr+`̾~Ϲ6<{5Hܵ //WGF~k2^zzG@;ylV~E?LM9yTl4X8`-ȭERgl ~Qd>MC]u VG!vO* R1N S߳ s+G(9}5xt=E@IG()&Ȱ63b@'83C. ;G^VJ|dm*K.g> 6*#dncVԎ [z44HC?Q*ʮnrʭ;xp~<[Z%'oYt4s72#҄%:Ө 47ͨ )QXm"de*;##WZؕ=ѡS{a_|6Mn5.WjdU~ívo"%):qY;ڛHw%rTE8XoZ6էqQ,Q*C{gXt\T@ں @"MHN)ݪ!tSƣ9mz?F$_xkROKҎk1a|y=A> ~#+/-C)>nCTBm% 3sR _NdژnO]S!,ɁyWWb@Kl8[j˨!c^!$2]YzB׬>V\RpO>JKxS;O1m!Cf}PI!Vay}K/LoqBHڪbW|iFT1G@,LDDbfH7A;t2yU:%"\:5LY!L#m!cHC%Klp}d ,~ea$p"''İ<YFX?rcEzV8~,_PcH 94}tKEɯD_1*]Z2cYyOQ@b)s4Ha1i60Mp psLOFL^' 噉qT88!2D3ڂ`>0+8O0E)I S} i]2Q*9Yݰ?xԵSGdƫR2%|Q@B UK s}|5o.CFJ j}Z}S7o4E;":-01[h\ve=fgEimS+qڢ݊*47PȨі#EGJ*̖}ɢ T8Bj~~GgPi( ){-Lq#>"U3"IS>CzE8|i vGs+odo0QHĸ`?ò6c¿V2F ǣ|t: DD$ݠ/$fc/bJ5/WAšޭld@i!3'@]*5Je/xWԁ 44|/jJ p,t#~*q .+xsꛟ@ҠW4ZZ\*O Ci! ;,Ɖݰŀ\z)kAz4@ '}smp9 0bN!dm K&rZ_V`.C?eU Pvu`QeŘ\Y\Ѯ%2Ncr&8~9e75(zdfvpc*|bjpɽ[v٩ YYU/e_q El,svd=?~Z$2&-xBkcU༫(rť)%w ;{ ̷Eѕ&' >Ryg1-5Nc1E VfGS,W+# ^yPDػ>׫PVcltY3YƮt!ϼߥ>}u]r4 08˘kgUd%ߎmXQ`m_ 0 Th.c*@Q7/( |]^”$t/PA3L+eGxυzAp^YI5%DmV0+2h/6 N}:,9̯rkԹw#fOMm 9//s:cCOG[yyf!o1MB‘tȁN2?UʉH]WL/1OM_?Li^$071d's' 7Vfza8U[BP|AݦU P\o? X*` ٹ`\qozwy(9tӯY%Z{9? 9|EeH~ǣ @_("D+8f2]]?Q]ʉ+UX8tC~]&6x\* =QKJ ȏeXl t6=NO1IOEB&s嶮 8]6֌ij+ڠ0B#ԬF(3eYA0ks {% J[e(jkQww4X,,iԛTͯ+`ǹvT#{ʋa_U&ApW$4H!B>DyU aJo.P'/Qz2_"fou sbH? V;A0O< mIB&[B|3 _ZCE.xE:(~vKsCA#vеٱWq= (.] ʗCmsӒ-}YaF TUy>x86Rq5; Q;S+$+h0RC;ɏuXܼhɐH#=^܂͕7㸯*f%dsz"ʬlAm#$T$S2U.~rNrʹ`PmbYQ z_NX~'pj ,9jWQRyXb,ԇiA$R!Y۹vOQ@5E5ani7DN32iRaz*!+ӻZ/Т2ZJ{;CZ--PY{HU8pí'|B=;}m<gp9~WN$暹I<"83y1<_1a_77heʕ%qyQ$pI="EL*Nqd8nIO?_'TkNNHIRɅӵ-|uG F wr?'y ڪV?md(F%&4+[%|>Xׯ\orܑN% @rAZ.io>q0_x9|# Kmb)<砫V%;=p6uP!ߔ=OGvoe@-Se1Qu(XK?$Щmg|nAԉ(ntϖF70Pdf6lg Eݥ׹#^iFr+Ώ Ib00,Ab8$4hdfE\njxDOE:lW]}KvǀiE _iuÂ#= oUb-< gg a\SBx!Վ _MIyŁ{\h<SDEO&1+<ahmcb<yНYg HxLP@.$g4\wYYݹsKJ R~X/db@| ů&TgW30}Z)`iZ$oQN4}\h 6gVF/1 r"L;;kHxXW#+t6R8Ca͇3=A_;A5oU/[KŮ'C]Ʒ4/ ?`˽{J8_ݏKtWiLT&e^Vc_T6$'l^>Q]z29pFw]2‡Փ-O$'UZau38,g!%2"H+Z%|vCN`PE"<_,2n˰q|FʼQA*ki  Qk*UھA1pmM }Q.@W@?2k-$ ݃B]7qEMhtV_{qAK JiEJ =NgUWjT{%I.%N .HO@ rЗӱFgDm&^Qvb+:@c8rS/'HOIF|7l4zzQ.3~*qS9WA1ioĽ)z[SmU1D~'WA3h QN"Y[&UiI~ũ/Jy2tVj_v{|Oz)r!״|oQvt[3ݢtw 7v/uҰw#̡jh S# Oo54P$ {3U,*ʩq mwʻ 0r`"lȈP `bII>pT{׹lavjr4] _6|RW>@'H榣?ou@и#hJkc,I)'邋34OTcNƏgn^RbK`ߍdJ\ оϔHa`0ZYJ93QW?{=y ˇO֦xwGcB ui8=+' j ( 6MbG;,ȅtrNAЁLT=y:"O z/6Xv*J$^}Ok]0*ab&M"XgX,IxH KAtb e$}oe)]| &} c`ub;iWURw-~M/son ouD[j4 6!T,WsWr5B~Uu^ #jj(*r%U23Ezjذz=$Zw~ZḒ&y=udΟj kjؠ}?(gQwLo5<=28Cb'^` >qsmDsbx.!j}~5w"bk$(!#'I&d݁LqL^RN+R@2EՃ'2{bkit6HA8ip ~?ʟ%9ssH&n ZyJR\ ǵ 漱%W.k^1\$kO|mx6CN4F+S{]e0‡uK` 1{9T39ק(W[Duw$ q0ƓB-W,/t@t/j }7;GrByX9blc~-Cz[x4X$vX!卝R.(5~QƪVkQ}#һpk5Lԕsm+PN\%JMd 6Q'!RB Sp^M}TN<9Ċ |2u ?Mől1)e%E\ZZc6EjJb6ODmA#.S|tn҄Px䄭=0}vmwntf*vB+xBb MĊEǙ銌>VoyPNS] E(UۯwW꒩/ .a%n5σ bq vS>+$x#ߝ_ܵ~J!:y}}KϙTlhVT&:.Ų~^~x92jb-I(QT [b [0EQ|]K 2٦ *^sF xs}(㰺*OQ=#q">9w9-T]% ]+)H?$l"A+fybi< *֢ٟ^,j|겶D`Ų}d!43B붢(2} 8Oo)gkmHXftu@LݜWʏ19Vގx]B~& v#u*3J,`E+ K"l!ުMi1N !,ܼ;h[Kۙ%nttI:!x.Q61BQ[`F_(n L!v_pH(b@'[;u3ƣ ٴ/LAMS>y~u\+TB6{lB"Sg1}͕o.m>8136(NIƧ/H#;\m[+3n'#/n{v oY"QAB@uo6`3Nf+Z|㉪ XOi+. }CJ89DZOz`^@,={ndوHpSdg03sȅ*/.ՉǢ~jI4=%]G~hUf:wBe6 ~z] ټyq0A x Rvn옔Bȋw?]vkFe6γcy3"(z 2n:Xi \͠sLJc\ͣJI(pH=D`)\[X$~~i'\[^+@ 3MtRkZ'&zDKʈ$R3%eʙ']]vT|{E0=֫0%63W4݁n;j\wy[iK#ĺD҃+})N9qҕf`*ڱtfuȏq*گ_@Ӗ "`薣k"k(BL/=8 =\5>P$/.fYȢj^T 赌 LHB~#VmryM_0oMǓF2҈{F9fݦ7wdY`|TGox'z񷠖RX m@Gv:AM;ZaTJlڣ9PPm+Cd 3z.Qxro=I= E7M=ÂX6O}\F]Zp|n0^mNiWu:IۖJܔ7kP|lIJ ہ*!| oCCx0NLGh$k$kn] *;oeѽ5nu%l?Utq $$I`f;˝ 6ىFGG> {5PK|G]5[Hͧ}/D[O5r\wA n7L(NIJ {!QMiX쳻6\gh5f'Fy r1o7 x3@!"to`O)YQM\ -8D`?zy6T.ƿbFBX;I"2m7) LN` x{MMŷ3i.7|6sϑVz J,6 S鈁F&{.!\T э'[{=S$^U}MHrN;L ;ɖIU=M*yROӒn+ɂw^ ز=i JY0Ha D?xR(~]d(-%%ZhI]ɕ%&F\*U@d*/i4#ftjm7][J֛Ar?TW~~h4&)b`'%drKlT]_<"Κ#<[sF2{@0yur,m_IΓt9+rܢ2w6C@L;@C٧L)yֆzhg>M$ VR=<ǫa|nrjb Ꝃ@/!?-X49PIyڊEF>? {3-5,b]q9L@!R@eC-_Q`M{cjmƛxF*zdY rҋhC$|L(~?& [ze6^EѪcߍKĢuUDQ >[d nGsQ u>]Jcfp#jԏ*JG|1AS$VC;Dț}}p^o+)%7|TSAI;b Cs*׹ޭ*#.?4=?/YJ~l:O(&z#t:Z_&-z O%bA(4os.ޕ:.ZA ZCA=Aײ-;Baπ~>B)KO++R <``?Ú%lxҌrrx2. K[&av}se:I%s]_|N ~|rS{!p<9~s +,g\`7B''&,4^YYjy (D)̤olcS<} (PGuOM,j*{s,:YpБK[%č@B3Ehd<*YP*Ǣa>c G@19,![ }g&TH?ևhXcO,?lϥ[ _y96a!0dĆ32!YS  SѰYD2VPt!Z`ᴪ1_B$8$[PCvR ٦B<ڍ["m3y߭I`1KMo]Ybʤ1Xb.aI|V)J_Ez΀_U7R|A~ t^΢"|1g,c.ietH<>ؚ (TY )98m M^^<%F|ɂ$^3%0hAKۘFEF:,(Wcᑕ4 3oHUnPվZ7@m/-*aw>2u2A EnƷV!>a} @A".ҝۻ}$腒fచfWH#_.a˯5$]5 hI}t@q9FI꒳6..uՉ Jm@Atjg$Z}\ k #T^I5ݠ zS]@41Dx%y1>B9jFc *tt;4MpG:0e=mC1> *a{ )UD2daݱMUiTc Y1^7LKo4ޝtϞ ?)w\P0Z+3C F˧#͠"oO5/ a+<7jޤ}& h >"P/5Ʈ*5d)6KP1c=GsMgm!t@yV -Q\R9{HdBt'j뫱?\NXUdD: +a$ʎN WZq׷-llL#YSm5 (w_KWXB˳~t\'6l=pcY n\ZtECCyȕ$ *zz]2'T-: 7NdPH䅾 |2Kf>3ۮM_/&ɷ\+m0dKff!89DdHWn%XL{ ˜Z-&{A*7ds՟pOcuRXşvyۖCxҞssGV]ce$6CFPTjm} ʛl1w6&IL|ɸ)M S ]kDPQ;]4PwI?F[tq* 3GEu,SRj77gom%6S]@ ǡCT43=Xx1fC(Y7YMNc#0%a^E\fAM:Mѷ1e}RFyiqm[cv~Fc36[4!$p =݆nQb0WM]*ήhVqZQBdu4wNeu+3s/hO;}<+9*/$N ,sR~ސ *r CtZy^MmDžGT- RIXهBs|8w%U e| *^])9G) e-N3ow~? 0e'* HT@V@WW:ڈDevq%K sQdd{$4T_=0=DvEBv"bӈZx-AKy%IzS*[Ws+\ +k^%[^o6S 5TsN(\E5LΏ2^RQvCx\m)o zhp}iq߿{M%dᓨl.~c* -R[f9\Rw0r} ںr%lqMQq԰qVH#rNMP~3(pkߦvЇA](C˒^-f~t[M3r|!)[ 3} LKiۇȧ<=uix fP.'&sԗ[?5[h@{߃,)%+dV dnu 8X'Px iL\Q’M߸ٽg3~ UMwok{N}^/Ox {̯%֠D_:TԅPZ?SP^W?Z{+t##Y=rC'pMEBh7'cV uThAFVfVsKhѯ fN,+J ?˿ #qL Nqg>/ Lu=$lXy9J[qWI1ǻ,>w?vF3f F;7CEP&WGL:=1,'Hߢ{Y> A\C)|XC"`Au=dk~[L&* pt{D] J" ~{FndIe){v~ c%VjB8yl tX3[4>"x½eK[64K&β>žo\4滨YoemP+[LS*9!I.aXudzӠaϕU/W̾anٽfȋ6b r[_L!M7T҅g @zqm̭w@*0kwk>R3[>g(R)ހ`YɗDB`U&%/oܘYnӶ"ԑx 2(0L,Z11*tqW׬_Icfz|(N,[.N*}M&6<MPP}yh&Gj:{B+@lJcl?JVqހܝS҆%n+5b#n(7Sj$Pf'}!:fh/e}&8I$Fz_/rBIi!ȖPx4r~֙&+E `ڧl^YzYRu $:1 I1^d=Vt;1$rqlll*О5{؀gYQ<.  n4<>!myQV;-I\b@];:|fJKVDbn72ƻm8W>{rO lw v'p#s0\˭[pΦ6tX|sZ(Ev Aŝtׇ2|XG҈2CCZ@d-)BeE}aqp%}애o{y\4QBM~fh3>1'aHt sWPO]-<$q4P@#N8!jgrDvА+ #8.|&%z" 4=r'\{w gcr%7hy턅25`xMBjIҀϓS Պ&X:(,}cׂ#ixZ's! Q#Ӽ,X J$ū֔jApt^AgW S[mO(RvN:JěǨi CG\v#IpDqִQ's VV^6럞 g3-S]>)BBGH3 ߯B*;b }SG{Y4dzŷ<@iƧmֵM}032j/rm9/w+t@[b1Lbp!Y֚|}53/IDZHn ;,2b b~ |"Phf}HBۃWp_lBD}IhW*x >Vu}ZZwW<E5v;ǟ.PVn 8⎉݇jd2+*\ h`ַjhx͙ꯉ8)+{|v6#`.cߔ! Re3xNd+Ywg@8tGo#zWIod}MLXchv2ȊE6g3,6[}r| ǁW0uF$w??ܿ[|UcMWjdh ڎcIW3:K @QbLv!^) A}DۭO>iz}U,#q+EsS& wS>WV]WIxFC"Ԑ76ʊPtx>q`u%~KdIOրN̳k=Qyq/dh#yynةi-4hH01lHsu2Lj7DzWv7Hj`|DSz*h:ETҮ_󴽷Z׳R/p d}0ݔIqMx!NcZFZ:5$_׻O9Ҹ׊S'ͯ|fܗ`TD0EHlMIk*SiCt82N -GTw?iM;ʠAc'``n4 3*J4-gX K<-#z(oF% G Q~B_㮥KZ 숮ohxnrG\[Q͟C1,{?mB c]~Ijph` ^Ndƌv @{bkgD+CIB@Rw@?ֈ)#S@q79=aB dy4)%5uآw=te" Yq&{u< ^ϹhQk0riM>6ù8}hpB |}(i@l0BAS!;GY숽3uCQ֠&F"9UScT~)k\>9d@Bd>ER71?K=q-{>`- -LTk@+G2[7Iv@HRg0Pgpk%}U7c}~Gf_ƹgjrI| klow\CЋ`<I^*2a/iz}{$/lE}ӧ2Z/ӝ?k|/BY, xy%SkvY뗚{IEPu1aW5q@qśU|7jCKkn. >,'2eV{=Er\v'* RJWXc_` k{Ǿu,ls~PXL"ZPlL?8~J(?> NjlLQB?^D K+o'R3#Uj`X߲u<"YγtlaCV³cSͪ|$Sp){2ǯUa!|A~[r`sERB sLɑiذ zI6H9VEv:+[ꢠ^ԶrVU E@_mO]X ,nxrq艊ogYn/&mMMEB5rp9,X4dJ3Av|3]xW#rt ֮eD|9Ek5s~uZ0x݊#կ2{_1@Ú*,=z3+⢊gY'H\%137l.ZN/C}z3L`ܥ'& 0ew~Ult0U>Tb'\RO/ J[Xi2/{?/%C+eoQcwLHorW^nEV*m;R[%uhAP͙~|Z=RlJlV qY[A6=p2IWN`#nbe87@8gc%K,DKm1/](hQ8L+oj 1Y9t+QTA`\qHli?{qWU'yLE임L1G\DĜ')EkTgH\]bI^wz_ NM7A6ndXsIK _W4z \ptwwyՖDt1<\y!/2M!`=\9ٌ|1?_踻 a2WpbN͕^icݸax:x?2m%Qw7!Z{oWG?xMg&Hf8AAG;v͓ $ZV+0*ɉ\SgZfPhЌkt(5 u,ymgPMSCKZ儒K'D%|?^8C1/Ѵ;QW{@I~D3SqnIw-͑>I-2)]#VDEˉR bUeme?~Y}&ZСB7'KcZfn5 *y @=kث}1HK{RᴇJXSu5m{!j~{ T%?=tMLR'S+3Ԅ{΃*?q Iy!mʲ'?B s0']<$ s}<j963VMR?aKOR9` R|һŞ#Xo]u* @÷DXs/65A `aR< BSeMԸr\dFI -r\T)Éqդ@zߞ{b8zb(b?ehIO`HjO5PpdoNK 5o7bj/2F4rGϵfAKFZ#xa',DfH6 3b7c]_˻& LQpG_ĄVS4d\E˧t人kv;owq.Xj`q ${<z8q^uW}JV=}hڍi"|pAGE_Hن[Xׅ+#XgiW}}jq-VJsO4q=~5B"vlGw V] Z'fD) V5L/ \JK 33y9;~=J+,wMK0B c֋j2FD_&ۃ|I26yv _[˷rjb.`/f_IN g 2 9Q(02M^v#5nRZ&>1˫.A}k+3jO=˸ìa% Ԅɲ&C$ʈa1y 3ewǯ=:/orcc/!|y:W8\@ڵQA<8&>ٶ23SǺ-ݑlK~K+ Ep3\|Gҭ+C^1OUcfnDşV/tv"U~Xqг4C­VLB[OX}TuIތ zj=cZQ -eF`-A@[-[0zwLXE }1dPڇaNFœ< ܂<6H0Vi$窭Dz+,S*4fwnGSAz!س QSq5?c+*~;k蕾o`xqICK=Xw.2An U{g ZHTy&X8EARt?]&0Wc)`Z T0%8n*?/F0X'\ũYRL6 -xe* Tό؞\G{D'!c!ZY2gs⮣JHei$J#0n&/-Shuέ Ia|NSbPU qh6Zգ;}&Y9ui2rG2C 8j4@e k$#e5ܗx =KHJ3ΪЖ21PzI_qR àW|0Gy6xgK{&d3Atr# x7*y5 UgL{YMum0lB!%zn!#&2CŴؔ}s,!!}ߘ/Le@c@->8r\%BԢX 4I4]?DuW"iJ2i1^őXpÌ dm{:p/_HTY])RՎ 껝1%C[VkʏkwL^MiX@|7̌xD dN`ZS00arхMٙHQOT S:/8/&ߘ^l<(\)ZdGCf8fO2⡺8& ש4:ʇJ+7_|&H *"CYήP%ϕTe`k oMNtPMD\UiK[ wS UGt nJ'Ч4pA`n3 Ah\K53PX]h2KrYWˑc6:E)X3+ B4Z_.w7)'Qg&ONI>G»iAmk(} AB> Î}kmm=pD ƎċlxoCsvd4]y+XuqhN4TH=C/g!z1Q᷼ B;f: ^ݱ J6y% }^=޴!+f臲F&3m_݂vaWJTwL%4ĬM:6Kc rߍdzrq`U?JaG. V(YZ ÌpZɚ%m;L~蜉/%IC?70pl8`6EBX]݁sC0 BP( x/7YzFVƐae χm:;h!uh TnJ͊rF!rsh>'q"7ZSْ͒"HOMB- ڷgqUS8m:(f//`hO@*LfI𬣑ҼLHj]i #o8|6@l YӖzB:!w"9\47\YPxb keޝz;^:H}#GC&`҆$)tY1؋Ze?B4IKl8K|S`/Cz6rڍ6=a[׋K\:{W=St*GrtaG*p[zuzٿ9F#đs< Yp~(4r|5",z-C!Pʟc%bvp^X҆SZjlNe`_*| & L=͉Cz' elp:Ljt|4MА1.{=ag+x*5?ӐVN`\Of eV+#[[B< Tj!8dR VW9$4<@zʓql)L$:iz^*7Mo<}4R᧛ɗ7R#v28L菦v_#ĀF0 < oҶ*#Ѷkݧzgh{6w.|cȉ4?Lt70Q#"nY7S&"PܞBP.7>:+t:+&wā1jޑoD#Vr/r%Tjtjm?YwQz*-d1= rZoɮq*ў75[2j1{`]n|`)#\@y]D}~TGh'%*MzG!cHR*NU c_w4u *3LGg| )QSŹeA]-G8k6>'m R&xXaR5B'ǯk!`J?%}y)Ǟ H^vGG3&P:[rTwBD~u#e0fv5 yǡ&Y?!H`D4Qɫg%H笱[@o)Õ8y#Cw>HC%9'#-b6T. |<^Z ƾB )<2!z?m\iX-K15 |IF gEJe;HVZ`rmġLa m!-[ߛg sҔ'a-oބܴATE1>!A$DpRu`U9bdN AQ <L35c8CiH)1jY+>9, k i6.anV5zzX ODŽ8œ?Fgh6S+0;ٌ$~8pn"YK/Cnwá&g1u e)|4a>YV$CV tDPmc{RТxDOwò̉}}A:W/Zh A`ys" |S.1__V1ևʺjl^f;hfS{&.O/3l z?9C&lBy ľ Ie%r r,wC*kԌ0B cM^kإ4KC^)+Ti}NnYoj^Uh+ Etp*_B`ˁ.\/e<%±׃8jp1l4ΏpD7WڵtdQTCڤV`xdE+^4RV+ E86s&py 6ɺ2+#Z}b{a'J36%Y0,ոA|Oet61/qj۳j`x*pZ›FMA0_k`V"2ܐNNjݭ-tb%R3qX `w,/gR eVZAW}"Msm6˯XDs 2o87^+6%}?M 1:YMY:H"RUOj꾀P6 tXp8{6p`]g: ^-$McZbpGdc:DQ؋l_f5^(MȾ"g=BD8!~k3`Gũ1SFZZtӧaXޓI֖^Nŵ髳2gsN:_.uG@w"_O틥OvEJ1 ] c1徵̑![M6eY=F׷y%q yv+ڶ̍ӵ֣+y^.m5!w}Y@֙E(`fF7A 8,XE9mou_b! XF&6r˧3J蛢Z.i~5Gr@D Fn%,pgLւ#Vs\n$_u }~Ȗ%MyC3FVPJ*_ypJa'`Wɰa2g;g2$ yΖ6#r| [gj> GxxطϸW.vJ/0Qߘq~5]"ĝEy,:>DcBʟ-Q0ړ*mzwRJO[%G$yC6cyK "X%Bā)I;h Oؕt^5ͷۦSkV-RczXjjEtp,JuCѰ M=&d=)T1\0@G)J q}.]-+̯%@<éâc eEj^Bz %=N|Ry#VI&s2D7CF`v2J*TW@i`X4]vsji a&| Klg}Qwۻ}!4[\:=~JB0`wŠw(πT#*F.">a֮@(#K{,oHHygi\BKw, xS.Mt]԰mUVYΞ7Sp~eDN}ltg  ._(B)ܬCvzl}|R2uHӣVd8Ѳ;CX{NY+P1O/ `>cH =,yV ?%t?n D u ,DenYⰘ̿?)cxQ@εeރeek'2,gJ|3#!eehFDnK YYO[Y$%0 q$՛!pv5Fa>ND?ƦsQμHT  )R >zb,F. qCJ6F",P_hzS}b\ JN`*&?[txBp0L a/ -'̓"2Z r)VdHݽǐrީKbgW~!zJKs i (\L}..k0&OH&߳c~p^z]mFKW+pgA j"4:5N'@u =4+fg=y礡TQ[朞Z ,+Y3Yޕ߷ʙѠzs-+#,VO8@:pRPZG:ED?Y/VZTS䀎x+ۻXY×WՄA3 GhJeDTr]zYop틛_<`(%D/6{I rh4VIWAˢwDZyДnʰџ:V#|י@IF[N4&;G[ϚRffNnh'w㖴Hd͛;3 O6Y05?VɀDhDj,[fFY_yxB6:P>AYX=`7=7qu#XhD*pCjT@S>-1_ k8fi9!扺iWyUbv0P.@6oe4=!>WO~F.CIaoؒi(X!"UQCRwĎLjm?"֗ё/r2]贴)Dq$I_40nn0k;p?&Zת dTOlM]hk˙GkH 5$2d Vs"JR0j]=UwEm<oC_sګ|ݻ5ػzVD3xfuܣùvŽMܧf-O)Op3i?m!X7se+2&N&[ɶOQFMHVHXiOA ێGt`Zx `S(y-ٌUuLONH@Ԙ݃$Զڷ(g`W፹_Ƀwt/(31R=gU Cnh4EW!Qr[Źs?Q@?C0 q jd5}`Lkz8t-r>t&,vjh*071UQ "%eܓsid託Ƽ~&H.[0]s}>h^m:T Aohg噃D L]>"-KQ^j~oM d>va3.˿cif;$|G,qԮ j?[@ "^$TdqԐ ,G!?ƒ0,/!pE+yvhµTGehR§C/b\Q |m5pfbԡCeʀ;wgamN'5s2鬜x *j`ВfGѩ:! !ǤOir-MX/K2@if#~Wҧ/hs9i;Ivr{pji/M`֯8Q])P/J/ϥDr+ mEjTN 6;pB(LMDUr]Ja hp(}X5H`si0Yёr!c1fCrRc7,e!$lbL_yW?9OZX$]nSh۸IuDğ7|ģw2U\]L]J {S[k7rB2E4<$#^,Շo "O.C@{܆?>Z^tϮYU3)}աIB=\^N$oΈ32{MyDO`rw<]Ƥ;VU[4|5 Pkl2˴q_MtIG},R^: va>#6^:JK+%gFI sϷO O4ϟbxFm fcӳٿKeundH"u$2n 䅦cE?0߿_ѻr+I'Veױa0Hx<4 4#*)k N)4s`?.!7'Gq ƔB#[>>ٓNOYW|EepO\Ui,O0DЉӮ3&Q?#'D_YX+p(;﫧|JPK= @컆~9$?*XGt`H1j'VMȷT9B$Eڌ]ε6s^6|_#-K%|Q6X|q:PO;NλSѷmPU,Wtow.6G}"?\tZz8f0nF[Q>>'~GQ5Y I0?Yl[>H‚DZ3K[;3Njܕ"6 ^PW-!XG@1*tC!}){5HssO'zpR~B1_N,[}&|ԮWڗtN뉏燀υ !cS ujjIDS!Iߧ`&?ܩuJQ=Av ,9hSS^h/[bϖCdb:\Vz!᠋ʇ9bQ?z5 j^XnP;P`#$Ç[6!/MXyro#Gw5MlA&ZTN' 8֗"G!)3#~xGHݷ"= $ݢJwP{2HEƛK Ё,xoe:d+Z+Fr5' }vY2)޵yt$ 육EʹrimَR' dD?B/uETgLޏ/pͺ'ʃ%e6BPMQzF-^ 2 0i<_>qWyʭHh=\1P[u^BMq ЇMg361soy[X8xS kЈا>w$轕b{X#1#k cL/ |Л;~>.$*ٵ@D;CK_掊G`ʑu܏ aiP^5=l ,{ȇ ٧ccm||oYZs D g:_+LiX1A3{[˥'R ˈً%c-`lOŀ!)V"D@2ҥ)0 X^,l*Z\R;)c!-ʧ= 3ͱ d3SAqI΄X'_p{x/ qJcOX8bDT\vJAYD $U?.(~ת^gO"BJ7 ZK(,ٞ,Ewpɠ}ts<93krh^}x6-$!D9Mœ A !?B~C_ʵYG}a0F>oՓBac#q. ;za"{OexaWom؝SbqL-j^Թ!$vYW$c2԰{-QKk=l 9%-Nsȋ5Íǁ҂0׶ Op BFa18Mrxe_OkaL ΃zdah_,>uXA(Fl46#}jvaSX 30Gq!YP}> [K*ukO4C:clPv6! AA'`=hf? E۫d92B]lho$ЀYLԠ3ۥ|O`(Zĵ\BzHxjLE@~vn ^vfn#kWy8rݧ\F3Qۖ:DK#p=bӳ Ix"%^AjG¶;|OaLG-p"utXIy<d(> 6LK 'aaFA1va䇹r=)gn&/NJiě7Jd+bo g4P>]DλŨ̃BxIRD!b #]!KxDv434P*"1+>\,ڃ^D5o5;eeEP}=GP^Ϳk2GuFOzQJ$Eh򄒳;QKsGhTU3MǻVff %OXl}8|re@eq7[WiiNDO[LM۱-W[0_'v{%*^1Q$)%[n4΋Ĺ֛Ueᰇ߫6ZM&ZY17RHsX,J{9c yRb2HSar4t^0<alqJҷ0͹D0` yV@ 0S QpOazWیxQ(npy"\[~VGҎVv|TBsTͻj=jdvf(*ğ,aWo #v}|Cbf:6샜KD,ETBGnE2mY̬uh^Bl4JH^Ȥ#:xO#lq zĵemxP=)2&1}aDs{5Y~pZU1\)G3UJ; "!>9ݝֵ㐗IDr@P`<f ceQvt6ӯC{o4V&Xo /g nC}N}i!Ks2"-2?|&- ?]KnI)δM`[<[!v-wRb4ÁG×NV ,-B$&/4V^8GEXj~'v^ -ux^gHH#R#S?Z#gnML&;OZ鳮L_aS~ ?yHkn-fb,)-Az$+H~u(Kaε5fBf 5Ti2lsbI"JuΗ[$ qEd'.y1.sQz>c)’2Ş)Ҡp"&$VC`𙲸2$榤wcALq bػ fA1p6n`d*pe6h, 1?aug/5%*u{H3)ֽ?OX6'f9֠c+J d}ٜY\j'f;ӭalfY>,u3/wkDzx~y8o0dJV%nK$ +*hp}HUjHTWZhiw<:oK7.5 ,75GZ:b܊쇊.s}$S_)a.#^;֬y^$/G>qXȍpPbEhoLY{@r$2o/;i5+tg{I D)z{䲀:1rGjS/#r\&!x xQ*Nd9֌ezT`M5 lTQ}VA)WoI cQ27m6,0 ŮŶFHhyտItB710.qߕ[On*>(n"}t/{F*WTag"-w:B5obBR>IKC._%H$m2l. [4鯰xT!*JufQAV9LlWL]un}P ğXJ߾|t2CmO\K:Fvl&i ռ\".^$',‹&jOK _4=x-Ey8̪Ơ!RNiWYoa"蜍@ e*SE cHQjŽ y`(VmM´H6˽(i(" 4i%2>ްSn FeVVx7$u熩[OO%ie"(ݽ/ɧVh9Ƚ1Guz{h'J,%4eVR@"ETjSG3IO`\IB] f8(gs`%"*Z?sg%Y[5sݬ IhCz;G^ D'*J[~!YXMkfofJ%K.24;* z>Qi@ړ"cO9;^LS+`&G\G% e\z,Qμʀ;H RG~lbCqYS2ᬒ uP gkMn^vvFX<fy%dHӝHeY M3.,O~٥< R>t0"}Z|{,fmpuʯHDƲk끜Ҧ+)r4ag:N<\8w`6#q!-(Yi4R246uJ-s>ش8-Ͽ&sAKN(^%˓,rxD*Bpx!3zAOU8nX) ͬ 5m"O`z.&KqF>^FN0]'vЯk}ZM[T̳d<;ofd``AG@YB Uco-2A׭Xݱ/J[n- :47y~d멈1ZYlBTXYtce<]ڎ- rj*ËVT?9C' EȈj\r=&\6\vjXȬK0G|h4P #{,-tI=C,<_/nڤrM-f𶸶ڛ$y1wOc]XޤD܊n\CJS/_>6*/ZtY'DIuبSr4;RtnRZgRi=®rǟ :tOhF-0ܕ"EV(8Nw F]hoSv-Gv$9?(aW1yL hh%뱳ޮ^?ŵha(-E߅[c$\bq6EAkFEQts/ꐠ{1Q&UqJB_ő2{&qa(o/\F3kN{ " Zo #"{t-qtrH]5glP&~uqǰTxgQc-$RZwڱk,cl]j,7u%alS)H^0fN O!܍ &R"x%d ˤЇq(_ SMTd{ž PN! >оx:gI:yAG#a+. xѝoMDrs!8!pu?2.? e,Y7a`{\BwQGS2zm(:UllCcV@/?|ٛ R uLE0w3^fB[4!DPC؜Fl]Hj1V#d<ůUiD<y ۔ʧ{qEީd9]&׶"RGzm]eyZ+C QՂ uϾ0tcMj`\p yޜUׂp}XO@Sz&iI9TVn9l+R5lMW?gkBHCh0뫙}TRRpK[嫄DIauH);{9܅Sr)^ Y6*G[ {kpAy'Tw2&,u%lVη}=Hɵ*{)B8_1毟9SW\6"ZdJ\N|kqP-,/Lg΋mq /GkNeg_m͛wo'm?٤’s=\^/'z%RyY}p+|Ubat7NI8߇1?s;@  a &ņbT|W%~gDDc͌q+XFTIvMN#K>5}Ո] ӛ!5k Cuegn[Hԁ݆]#[#܃aC)4G;T{YxGE^sW  JC_{0jW&Z!1ZX`V%؁Kڼslk؍/ndWLITlKDY6YFO%N8D݋ӞfK5f3r^VIZ:QdG1LryVodQma k*`C0HS'q d0^O0o]o,$!I!Y#@EGeԠ2b@ lL2EKܿ-rIٽZTΠf9ƞc8ʢ /B]^&esvOBhɹ1#v_MR)h>5sS?& XT:<:VdETdWP?||@2!ŕ/b!e(Dgx!^2^:/]oՄeTRȈ珤c Ί~Or]pOF"#ǪX 7ӃЅNz.dn XC8O>h759!z;Wgy/ _lhI:(V)Zp*fABޖkq }"d]*iPX;::oy$(V%sd 0)fgWIH AF9vbYu|!V^7t@##h "Ƿrj8LxTuK_)ᕇN2f?96H(<"qHX B @Ɠy}b yj_]CEvQ9t!Ma%-X١M _e9[{s ư4э>d QP|9qK#lrnZw!xpl(n^c1Nf/VςmB6dn/~ ;Z2??0IV~a?GٿЉX GМMM{&> k1 62Ed~?]+}u67@"o_,z(t.=SE[t\^GL3xZ ̮H n_o >\Z:F_jZǡZMbj(wV!.-^60{iSefmLtHX-zRv1^cP4wJ#1{rXl )>pQD/oELl&L4~ʷ\gr 2h lj S멬"tbf?Nuڐm7F3| FAyQ6R8|CGi5@6fT'@KְImQ }-Mvה˞>LBAYHQx{|M(Mz$KWpԡ{hUD;",ezoȏ[E:bT(LMyBQ6W5~;a2ғ/lZ L&ZK{5ĩ2uyg/0H1@ y Qu:. KhI*֎6QBVFzSG۬V1l=띵VvK,{saA{7$_̯nKfA8It?)8aJ쎽s.PHc2 ۘ@ ,Xk=~J'K(k:u#%_2O$R"FֳWY0Zܷ^YK&S o񝬔Yk1z J %<`G[)އT$$@@zڮHee g|Ѓtv7W! TA9;.Vkl~=|钼VRf*bw-_^P7G9VqOfIuo4;AG;krx8Q1r-Mq76bV>D#%tg&ShI",?gͷ9LmAcu[J2[sg+t\g$ Ⱦps^Ӧs=~TVA 6;2Kx3i!7{ tp783lvAG. 3ceOԜ8HԸ5ِnf3r-#tBb|jQ%EʟK3ܥk}k6e^ wX0f9??#NA^@ҋ/"Yf (S_FzOkk2&`6 *Wc ZzW~j<4ZG)f4gC9Fn•ȿX'ygqR":b.Z6 P ^뎠Xyp/6lsl7%< %h_yxX1^VZv\ʕ mBɀ5Ɇm0i }Q]ic>;IE-:zX=#LiviTGض&wG惓UEFNCCi]N3%Usèw`r%~ڣG1Q鵥ahA\NP@8Ⓧd>sn,)\Ё<+z%Bq"E2y&@D4V_At^ L;T~$ҫ Ӵ>=Tc69Kz,8l=n6,@)8wu})iˎע?CDIA,ITO/9rBq*8s)Btaw:/^ "EVi8h8HTSCIHCb65IDasAELfZZěAڡ5(v}` l6C סբS`##0a웜ޯy,C W9u(oZݤ~!)q0*2]37d Xy ߒמ<;/[H5_ tw qOacx@oEDhjO-&1=E2p{فԵfH%mg7@]NGPD?7;o-Vi:gr.qE,IIzv̿^i 1{==/hz ADŬ(&@ Pp8It5NSUbޱO}/Jf(5ɝ>;Tu0n& Kw+Z  %4M_k8 EiM"viت| ~:f(1ojh B3 QC"X+I HS޴Oa luyX 2VjZaHS=B/UeMsTփ؈ʃzՏL!yzR{VbolLAJ-+S6oڿRȥ s|f F|z(sL/sBQVYίOLPh\6OZ{P/(!;ԮZIdͦ|W "a4I!BGfJ=vX4<\U þH}΋sypN(˙ u s)[rpMG&t-WcC5D613IaA(;Bh m&'0Ru2oC*2-,Ыz9"t ̸"?1(D1Ϗ6Lwmܽ T# 3= ڊ$}J <MN_FR?L١|:@[H `q?L^3divX c{`:p@ˣCXh6}cOMF3Q?j%n:hS'IaRV塁H\Tx&Bl ϻ@i1:?FwT:Y}DVO;,  nFk%nS"ZMߚtr=WlM*{[^_Y%f!"!fѝ#)e8nLHKy]ՄݏMqĿi N`r͇DQ F3zn}mHz= .T<~bQ~f'D`/Ŧg9m CSJJ,@)(+Wx~hn}@}}F80t=q^CO*bxhUL rV2SH4_cEyu7@LTTu[(Yy m%XgLc+mnt>Zfy~.&67%bvy!/Z$_,t C;CCuՅWj#2QeO)4t2咄mDz GhVW #m,P"_0 Rr_.ZDžwa'I7R) c9F<6ԿD^HPi.kz`Rl)7yOiEJ"Cb-!2(e[Ҋ}W/)`vZjW, 1l+h@T듨ǵ c0i8RGuJ0[h+X'$n2$<5C>29wseهm3dܻZclkx*v%$Ǘļ1˾Ru,ȅ&ُ$n 0MH5ldmf1WjCFe8%7ݞ@`)ݎR7.($.aD?*$ s E`w39%zKԟ.=LvJK\B:[>y[d]z }jZ:uʜ тu"}][^ FbYd`3I ү9:ƥ|~j)Bcd{ZWZ(RKjpؔSi+!0xɁS6UOIEc3zVoQzԋ|c~e^K^+Vdo NFJ+I0ER3ވ֑b$КlkW'N4~D́`E6-:u7'!%n(P9z 9J:10B#͹[HGMTgdu_3 জ?7:_S%q`+iy(R(jgEsp({rKgF;|l~LHf6{aIPU>Ѵ?)7;'`c.WvbZD Ld`E zH(^״]CJv[N#~TgvJ1U%j_F*F{VˤOQ|ND4(&mr 9ڜ /PosQm$>*2^C- (fTJI%p~6Qp>ro6c PW@j3{Jac̶l/A꣧6w@wgN=/ltCr'?;Ӟ i%<%2B8wUoP*oE4+d&m:UYw7^4sHە!ùhxvO=7R.#,i bqq50v/?> "}Q2|r3<Rc_wDZfN6]vGa{עF`|(Մc2cZ\Dm`ȶIY7"ݿo8TS9xi,u5N2(;~~҇^2Zs@swv@8/dcO)Y'J@a=eQE~a8v&FjSo]  0bΫ(r=CKWE!]:_!&D$a˚4[;(Qk5De,e,:׾oT^~&qٙbL*?6 D["[okU"Yj!psGHsmxyemaSZ-֠7o46a]W=)쬰!7@^ iyǩ!kW/qa/'‘&I7.}O {d)HY"3!o#JeWrteυl,#fp\X S8Q0 Ե]~j0u9/"h5RCgIKb[L,T^*a ZJ!ֲ1<;ٞf!VoS!ZRg0:sDAJ~ăHp(*Ɵ\N)['| cqu+}Dԑ3p naS]<~Ȋȑٶ3H))7րݼ2i6eW뛖!撵\bYrϳ#UN9*B(pJN<#|bY_v&4#.w7KOncB3Y!|)|,">ၠ0(t`<{P9=oOq/%"4*|GuprGрjݼRP_ܑcL,[?ܴ+[;cg lO'w;jlys3]eݙ.dj'f X%VQ?MzGcC::6Ӽ"F U<ɼ/[16z;OVvoxBSڒ } ܽ wA({y{m"r< YA=BMA7+I"̘ޟٰ0yL?KLהz2l'@ 5xx?Xgr #lS\_m^)z'"9= ?H t^^pP/ߏ 88aY`N/-Urb5gAzzv< akw.n<}Z~F%*/J)jR£wTKZ0jyAz~Mޜ'Fzu*%ąn7Q u3aMI[j~A? 7AC[[erFҗ>gSԪqB;yNb ,؍rq*i aok'|mE VOlsrvG4UJ5`bFT~`-Z}c(+כ g$ʃ!GI/L`qGNy/X\H*Fu۱=tUE[&# 0Nȏk?&r׿ ?[AtA굺W%VZ;CmPXM=GjexlT  O}GvwWɒL_9//Hm Vb](سj_eNX0krkE?QO^(s{S؎.If5 iV6I UϲP|22:t"NKd(8)kR>u RDM[gh^ >7c"++B{H9RMm'8T`M(%0eJׁ}A:~S*GV?+u;Jk~j_xTs2O>C vD@{8jy(;7.{$U {f(sdVOn)2l:t&a// ۙ5C^+(w[>vDuy£`Xꬨz.gܢЈM(lzY6ZGW$ߞB2ߩ"D;)A,.ȥ4KSjV vnk3&#OkC1/F2ίCM{' C7vT d_['EJM6/_4'Z}w* jDuss&2U㈰ d R$4jbֶ[^\7\'6)a3v\ar"`w&elpXXS*y*98|ѐƟR/ Y.&(tUs7V%,(:dv1:`r8v.&ux`]`s+o&a\J, $qDƤ$ϴwG*V5|%gyCc:Q9>mbu7qwz@a{SZ5=+l/@'Zl]s7ޘ;Py+sȷ"PZ]En#9fh7' 5[C\8?./ަ'>ͺk>rclR1[BtӮmrvk0q}K0Q`y!3#b?`Rg-\Q䈎n ]gd ]t#yx-ׇZrsv|h>ٹ|汐)zUe;x@7gA. a U1qDvg0̠bU\}]˜B"?ɪ+=0>~lL4jާ|2`jA·n]@Oqd7եdY]^qdubΛkh& l1s1պeDy@/)BgOTIA%evY%Jf4'%tav"[_n:OPv[ JiH,u5/:% Ɵ?_Nڭ t=Jeh\j"!C翠iо1}MLpR+!uIQWd+{'7Mc E ºNu7Co%wgbְ!eBg(2s3O*KQN]i)/q6}ך!&){0i(ԷdH'T|k1gO?^;i.Eh :Ke>:ǝh6]sr:7ލ?;d˗7nZj-Sݰ##'1,ese6SЕH~j:vv1oz[˪]W*񡘪q`WL;4O[x#jM|N}c9w{h-.RF_3#66Z% @b,5(ok%p^ -YAxՍI|8\k0TJZ#`u*݂י.ysρ÷$ء43qAApBP~T#(_NHL-}1+Kd'~!$-=c م ts >H;Zu+K5pPy'v9` RiG٤Oe\ Y~6)4(1I FNvӺ&e xrW|\X=E/@[bx.{C4Tg!(:g"UCPO)ʂ~ű|1q1 crȯpKvƕR#$#,g)ds@Sy/]y!RPBDJklŨ`Ll+9-?9 :V1`Z)'.(z?2hx2OB w.>MftgTn{#S9.ypDN)E}cqV 7i;2IZ9&k&~G3 ertNᯔAh [fO4OS 50K*\h-tA/K慝ť'f(";otCv7V}wt-}%Gro.{bK~"ף(lA[=oYtğ!'[sD N!^N[mjQf u١:i8gOI M \DpaS !P?w] åmux7DVkTSQFӔrt9Q.xe ѧp3a|[qCi WN/!Vspn(z&/FZw+Yܐ ^*Ar>u.*Tߴ܃sΆT-+PM9;`6c\٩'ont@1,>g>GDv6 (( +6#~|N;hȈw s냳r?)U+\%#G$Ҧ?EE o/LG%hMd~@]*h #65@!Z5a/7xD C9=NmW<,C~<-7ݤqlZ)>.{͞{@+YmƛB$={Ɗ{ c7 td\EVLʒY ]_^Gėĥd]WtY mh^oqQ),swoE߽Y$p<P4hOKb0򍞿(Rq$($ 4c|CK_KU76hCeo.AI= %X*- <~_/cbEt6n| f\ d=;z˯IWRDDu߇_dujDKq 6(Ɔ5Yx:ˊԴ%[6\YtZ c}Ҍ 4 TY2B-cO}P+TM,wgeɘ{"|P5~/Ym)G;iY.bPh@ #&uݎÏԵ nuE#+/kBpn_ MVWOs4.zé\Agq;D-Qzp7*Ͳ>’"CH}Ǻ|\{y_o'}M*Ki1-ymTyGOQ᤹HRz\s@; QA<F3ȑtpPyM2aUJrm}K|AI"JveHY6#ߊs5a2QKT@31kQ>_Sx !ė['Q0hwQ/Wܜ"R7*Z}otNhM'hF1$;.ru܁U3)?c`Exp*٩|JE=N0<p ޘg~yE@Zɺ,?mE`;8C ?-f޸.` Θsh3Q/lR{ эȴ=S}KxΝwbAҰ*@gY^V`DUUx`>j*!Rjȓ쐡}nĭ #fP[(U cV\ja4s?A%փ(服:h\e0Ts)HGɪݑ \=ȞN #oE֕DNBķ-T 9!cEU{I]B 9j8 G]X#wa?? AUg_Ϝ˳b3ܸ,쐭{WI@=y/7lwL1onQ}?9G)4bqUw^ 96?:w ik;Ҿ-7e:[WH$>).#p[EU IUq?LC[mdp[O(0<))ƈkte$d& wʈjI gz_vrpPu&` O|ԇ_"5,I"Xd|gQ$Ek1g_(&B}VtBV/zD+O_`8n-6%'BE`֝-*p7})tX68sxC9AN:.,ircN/5hm)t]24Ɇ4Qt+$aor1OI iiY~t1CbK5\kzޫty!xu W(Zk,HN~Rݵ? {&Zl2Q1m]QMɁXheF#L4{{ ]zoP9g _^WKM{6lj4 X%%GOҋ4S|tw.ٸRHDy@B0G T7DBs`ɋÍ CChuO\3z~uCONjG;¡ ![71`a8'] 8!ɩ`S&˩ܹ:s{ n jȄ!@Z3kVWYCbҠuJJ* }q䏌~J޸XnSM! on2RJ\YrE Qp]#9k2KPi0 Y׬ii)Qj*[vbmDZȼcE%i6 5Q-}}?[*V&ZKr/"\.ZP17?J1zh-"F *Q$߫9%TAT(JbBAqN  FE*7X-WrצOoqlm2`ޞ}@Ÿ>O-*) G~=^J"0`e-D-.'`Awg+XbΈYX\-TuwB\ @7k\LmGwnj];`j +VQqB`#8;q!}X̚H4?*I*پB麃 ‘FV;hMi1| cI`PQ8uDt3>s?=I]f)U' ]~@I9BJh§, /+,s6lh>B(޼Ⱥ{ߪgQ, a۶xAZ| ]l_fNs67oq\SVź4@U%RHh鷥G]:oHfv +R}[rFb2Z०?x le9*3S}mfذԕIŬkȳEg[1̑C7>/p]|qÈ|fЃ]H6> imK& L! oi,g$,OΒBV?/w TA+}Ǔ {~j/]gXz&W[%Z+wbP]: J z< ssl&#uj .ܮlMT^(Q) JUW gsmw"I56|"&Dž6ި/,٭7ESMݴic MV)X\6 q3] (烼Kq DɥbɪbR>._!`;W3ʿ41W\' N 86 1L@1L!,n e91wF%9D 0V0,2ĤxsxFF x8!dT G<ۍRfU!_|TK\7i1ۀ{29}BIU ,}L$Ô:THsGҕO. >C1BuE>p=?|=fkz{n`%'EkV81JT7oWFQ)vUo!lWf0 /5Э 5h@>[ Y'1 8wicXtY9(n% z:ݼ"!>qQ MO |6} UOƇ1칽E<d=T ;;%n(/.NO]bzpЖ IENbV E> W u^h(E/u )oťB֯!B_PBݧ@$kH||֗7tT\HtP?EjtS uNGw>bnûĵlڟj*b^q3:̭@ KZ*e0Nආuo29-2&S taz62v.'Td55p`e_Ya -EG"fjI kBuUx71yRAyQEӀ޶lH5}mC{۞J̼5JrQ,X/r_dPI2rsI%j!.1o¯<ZUT/!\ 85!F)m'V)yx.&KdeEN|?B7j-` aęON£C$֬3O۷ĖAl-ే [+~A˷ꋔn֠c+Dj3!uCXzojS yיhlB)ǃ f&:޽psA8j XcMgg'DA,gx`sHpS'.fx2k85et~Ä {-*Dԥ zD~3^M3Jގj.{Xy M' +k 1+UtqԈ{ƞޡJ5]ToSfEthl gkQ_O:F8uxpU0 y 8ikƻ0aک1TQ>=SXC޺ESdnY0_Gm2ibҗ2\\L;Ŗ:K([dܧ;g pnB>*ͳ ^D`] 8T3ZLS`O dŋKv¿ ݙAb΅PvSt)Bw /EmԥOQ%_/I`l幍P$_J[[!7@X'!!x|&|"WaZg&Ӗ2ڐV/psa1\UH{@,5Xp펐ଡ଼0I=#TqX|MmVKFac-X3{>jiJY Pdy) I,2we @9l_I(/ ᚋ^tִ̤K.HYʺ|MBw|`$}( ~hI득fT|ⷻ$3}I<&c{IUrKU#+Q͹%]qƨboHݰV85w%ٿS{4.wo$*/*R Ddmn|r?g%3Obn,tM$E!-%u}6F'ڦZ~@7LkPE1E' b bWp z繜I푱;㩂:2UzOr$&&*orkȳU|ÃK2@-ΈלV,`c~)H3Ȝ;<瞱RީLO(s?SQ*bѕLx-RvM轚a1u~? =PӖ}.e^ Dtu׫=0t B .ɻ:7<rɸe , gEO;Hoe 9m ]RKܓHnz_vg'R]`58ȅF`f{j'8u6{yFhu*MXytX<甸@1ZnEU_Qt4*irplPO ;5Οl`庖h"UΠ_xM~az9q[HȄ9 pxj5KUL|eS=,2X̜\eJݴ\XDgj"XmG11{:/ؕKoR8rs |8,>WAͽhpYd5Nrҿl;=ZO. +#7T\ ,NؚNJpLF- q/+ס6 "up~%y͸gnjGfRv jh&T?;3hI|⪥`Bf gYKR*+Ai 7C ~~i@ _jzAN9n?w_$0N0C@t$q}4k;VCg9.V+BL+K ^'4,g<k!!wF*!Y`k*d[b~KFg%>4 ]ne QG8_I(8%.¸ J@uS!C ^>~+.sU: O_1W8d\( N4rP 2[/673b@;`B)ҍAoic,6ޚ;uli2m Unb <}Ʀp-?_ imȆ]`ps&).-)s*~ۅ{ě3 NtIXdzkiq:ٸs-u7&nTWk 36`Y1'BO69:^욠]e/n;v]zA-?sE?1 ?JfBbI+R)?( L% Jk 6cp`'?Qg.ACnE/B%#JMjCVJAaM"&%'{5R(OEnN48{*Q[~?p0a,lZ|jUĩ  !LHV^h)/$jڨaTMFo[ {L`Ϸ~UD9ͯDC݆_/(H A.l6aj̛kc5\1 Q.cҠ(?h,nb3'-Ѣk:;gr,z h^m|8tO8_ғ=K}AgRwHMb4~F,&x3D{Ekh[c.Jc`āt(,+|;lF+F;qVRRt .8%𫫉W;OU1y`G4LpI. mF_Ұ!#Gvcż ǧ?hmpWLCy0qd T#ɍAm_g|^'#~bQ=wC[0bZ1)gk!0d~õj@ڡEOu%Ac1 Τy}3n!&7@o;Y0NV&a+G{I> K6Z=\;J0 ɟ6_j6}v$?6$w3#&ym 9 p!FWa)xO異T= HvY+W'u|33eν̅TOkjNdp Nd*dRyePY2B-BA6oXzAd?a  2bV/v&V,եA;ۆ%h owy2qɶwOB.]H/⒞3?: 5w^]4<}TSWŸuu{Īww-^"! W]Aj 2N ';)+ )ƿK xBf ~5 e͸WY5:nY  [9i4bZ> ]&PwX/X^n)/ͱ0'9^::O KOy|87+Yƭr'JVOߊ>:|"TB%YD.pqջRA^V'krLd=B|Q@iJwzBD$"VB{x;h`h=qcJgմ'`+?tFaSpUL$"X2p.ڒrT2Ѵ,2Yv2-)*bo$Q_`F(3r0Y@!_d3i"p+ Uhմu 8HX(UqcH"[nZl5HeFoT8i3]z߈p^P& Я\\N1 EhΝA !z?ѓ*dt\hluQ˳-mݩ,ʦՠY$id$ 8cm§\fĝf"QNXiaݿ̫l`7elkOwcs?r:ב3Ľlҗ I2f єi+N6ELJxQ o"πsdȮT m&GqnV]o>.ؚ Ȕ"qvfE V^p-pl0(&G]lcG&PU^$PJHub!)a)}10gMTG\O?/ SRg ggHL4EQcD TOg3^ٯy9S.Ěj|BUe<͠"p4\jei"-|"Y`r07 bz [vX6XYN t3}: mt/Y3݋5Ii#G_Yz$J qd oVT(#ݡKR˒ae"y!K^ \gΜC+su_~-ȲD]1f͞=hS Z/IΞZoj$ ѥ{F`>s۠A㲵M_I48 %ZROνA|;]/!E=iaMJo+elnϿ4ڽ;e`HT7$>{l6kvr$j PxQFVISWquc3M8!9bVVУ>g \X2㣪© Ȑy?*ہ AP<($O1"*vVަMQGSBX,K2v] c|bI_^+xF=V8.'c#92d,& N? I7^R1q1L@[5! ۚc!g25$%']ظ佪wGDX5+UD߻`<"Ƀ=@[d H)w""Ts/iݨsզ*]ǻ8LF3"i3sȓff^\41n?' X}.TԸ (C3\t>n4"FsewA& +]]8Jaxp˥DhQSm|pfn vά-|k<(ta D^Ӛ>3|%rQKJX.HrfX-pi~UY *' gFQ*K#^('VD;yxpCm FZZ|QsQ׹aKPtR +gˁ (4ZMjQBJc}\MW8+٥w3 A Dp3D(ӥݽqBVWlvi#/,j @;0xޑD*̷H#LW@Gۺ9S]+aF/rM>hכU=^վuK1.Nl~M&AG]'ON :d<' o:H0pjnmrȼijsӆs?h6'Kp*<ŷz֞i0`9Ȉ1Q|| ++shT 0$kP1Yqok[w,jo1Ñ8dQNrCA?C={w3s1Jx%fR2!M,`͍$jd &=q0w;9;zEjSWg-ID{K}1K 0<3uB@w_W`E9C$>]|'L@mGMxF]6?f KokMy`br!@ ;0.<؍\/q@3!GXz0t(@]Fԗy^ }K堜pCra~M2\" .!.k:j @Smj]kԎ2XJ(UٴC522EY/ S 9TIv*#r"15kz]+ďBWIrr#^݇H{4x>zle9=Z<"NbGDv2@e oo&5h 8e 0xn8ԕӊ0J9&xhV  tCh"؟=wk"=F#5>"$\KC38EDw.{@:G$S-^[u{NJM}ZAj~#iCev1c3 :% G͍,Irs qVsgR=ٽ8gh7<t2 O Pd|$g(OciR{/W%NyHG8ڽCWƲp*'vZ{t\$;Ϗ{W*Ƈq89|7#OwyhmFEpZg*7$i'hv"6\l5ϹI{UH>rr+S?]K8ʌK3hȆ/ꙮڬ.fWp';^A?R+3q~ST"E%Uh/)LΥ3YDwB,<9id|*Q',]CJ $}$R]xcIChrPk-3PHe|<%Jҫ̲[XRY^H =6(U{V?':/3aei~!!ޞX@fIxW 6;- ǰ)xz/] P\H˖PtJ뱂-v[alN!1kǗj9UJ c^$b2WJ?_]ӘVbߓj-yp7%洲 }rq~" >")W#{Eo$fK6 zeJ(*#n^f%=7j6lc@bl@[kT=uZ7x"^8yKT̤^bK0%@mxo;\G=vT;TTUH0{7Gs}#3y 9?%D<֘O݈DїTQ{Bd h%MP(ֆ!Z/{@g BN^!}l9ߕ JD\YLz*P_A" Q=IM1;Cz1wCQ&|Kl31rBOYDnbVwݯMB8e(^ڽ)*==^fN>B sQ5(PS)c[=u8?^Tb8ړDZw9 R+p3KU߻8rDI]=߮:5m͚fk]̴jSv p12qNRZ2_6&qV{DmJ:V KE((jd6~t+F,NCi@Or=k &)0vS($m-eOeɧ|;/aR1!C  N|ҀIT`|I{pnJfe[J\^kBT4N{:94z<ӝx> S,A`/56b/Y_ݑkJQ_)(3~ibJa=jh$֥G+ 7aӞ!iH=s546KR$8V e?Æ6hk-3/3Z/aF $c=? Aa;ZbpE ])s}y4jzBKtv;38=,Nl 0tQe/ jN`*/攇U .p7I&Bii:#``,2;HZtdRv>7-<2'E Bʎm{i.PW@n&3,N4\m!i¼Jk&@jt,ԓ^ 7.u_PbI״^ +̩XK^q<FQvUE>}ޙK:hSILD0)aP\>P;B d--eAX@g`6ѽ/[to i~Al5;JW>zN5$JFGm# x !,@'G(l".<+!;?,4*0x-.uvnu7l/765a)۱=Xr0s951RP,Zknj8ZQ (sbu4W5E\|xіCE-f+FM -N-?6]6̦Elf 74 (*Dٱ$?rʓtf;OܺAwiXl*0,z%",{*P2v+FES`2J+C buiK*ylk"h&vBmQА>A{ëe_;$-> &WzɬՅ BMm ttb5ͲKw HDZDGɜT#̬] IEga:þ5FE=XwVK,4qZ-$a 7;0A6dUcgײ#j(D<(Y׵SDFL#kE/1Vc255! 1+ y??6xna$*g/U1@ئUF 2xr@٢}F*~nĺ4BˁH^XZobЯ~M/kٌoQIP?`JK8p7񖣙 snؾb S:E_ihqfKE GR]f6e"@XK2 jx^g⬊ oZtbHR DNe *ǪM :+6dLgUx[s҈4X!zzrij/ۯZMg{ [^VBJv=蝵87̟@_YfPg9djZ_y1ALny?<6~ K!GfV4~#Œ h!a0;9sh00q;=p:f)<5#KXr;ͨl/UGoN~ !1s~3qU[J]GvL%mx7iܛByovƿͷ|DQ`ȹ "=#(*^ml։hc"٢bASܔ /'ꁷY/iZ.i8peѩ*h;̃@wHS238cU/s ,y[o+ !HemET}).qIE+m ]JfhUS#Wş!󊻚[go&k씫bN§2^fYD7ofA3t=qQ͞gמ=U2/0YsqI] exOY+C4 "CdStuSsY $L%+5_F }zsHF,/EbgTMYÁ=5+Ovj<ՑmTٿ]}w4uYh7˘ p>n}os'.yXk6ӜfI\Z&`|>Ž&v W8x ªMkX!{#KSlgC"I&"#2<}X\iT3emӂKh}ޜu9as Ws 9>yF ]PdԶ.pG ߩ `rwCe[y퀹Ȥ%GDh5O)gBmf9umzx^^/bKNJA3fwm 2 ^%7 cȠ8IFV9H@=:~ώƜk B4Xi~Z1tf_lQ)g7%iEEENv}.sv)#jv#4 `$7 m)Y>B b xmǟK5Db<>pAۗtFӲ+"g{YxBZ(Yvr"Ő{fS1jo\3=~E\3!nO`lQhӭt*gIPDJ6uƻY]L!GD>O XsZluH|;+ݽ5\ a.xZNJ h8p d ӇIIީ6mDl ^0v(|tpLNDFC>϶=ŹGX|Vdiv2Tb,\o$teqbc1NY}=IVdcX@ZP:"JD%ԾcFiA8+(CVz!^^ah3 h\@+˱c 3J-;^T^_?cgUNxjz`v*^jD#ىA.͝z42k|6#[7tu22^Bs[ErJq8T5{ޯZ%yxp Gkp8QrH@uG1o JU;ވ@?3Rچ{Q' B.d}Ö9.< 2y 4SKp|}߸oJ%Ų\o#1c0_YZF㔠 C. ;H|NR>\5-8'{@ڐTŴᆖ)? p9xt9݈l]Z.&oSRbȠ ĐˬxS*%vZzOBcaH r:އo% =h<5hohN$O XF67+M&~g/T9 ؿgKkm?6[\AxEڮ|"@dUjr^#~O1,Kx!gXY0?)V2=CbqrcĪ.޾+ mx; Hurd:E~'Ab2 r\Bo֨.TJu"l$`Qݮ=ggnUrwxN! 0+TX}*-(A4"<4H<c;+F#gP=F:zA0mվSH(r|ٻ~%bϕ >}`!A/6G+t@pI+E1Q"#ڼ؏ j:%lck(ME5)[#7SKRIy Nv*[Wʱם]/瀴DeJۮCJə&}p@LӅf#c0"_V3x;&uZb'?+cP*GhLEvZGT-`04eMT]n-ꋢ'oZZgRźP4.'AGZydY,Pz"< Jpܩ-O1x*הּZX6nh=ixǏb1# &!mJl~RT4/Kn6VK\!01t15Ͱ-5!TR%1L茮yK%MUz7끴Hrn0OȑhT1BBF4-_O[L~DSĔ #c [=8n+sYNVߚ~n*L[ޝaӃLmV'Rַ|dt}iC !/tr#&Z2G]Y'p m,E-d%T. $&`d+ 8@b`=epj`ݾub_{2+U;u JbB1n&|#QWKEPjQtcY2 *2g_Y9":@gk*P/vb j&} xE02Jz·TF`}aBxf!!XS=QS{%v7lhQވB|H#.@5 @ϝ2$@;2tasf,|F_`z9^N6o`YH:<;O`YiEVb5gn1ĬQr-̴w̩򞈓?m`Ա5Qlo)aּ: "z-u|ȆIS8uٺ% hzC{\RA I%T3 *1ON_H6`)}ԓ [З~/S)ЛzF,@>%3Ow¶;͠H%?AR[ -nن< 4wJk$5WL{V">qh CƇl~}}d-^ nJ)?)LaVR`?!`eO/2<ȩTvO{Զ`j coiʕ5=Ml.>9Sva(J\Ir$|Bj;LP nOdɶZcDqr,O߄} ߨlEIk.TcBq#PUh'ݚl[[;3/NNKG Z!lg/)hTz%7sk7D\ CFA"3"P/T{[)RxW,2Y לjM|2E+ $+P_v$́fBQr^^J!iJS8͙ɗp&Gf4`aC^&Y'I\:4lo2-[Z@"&3iVh5;fN. cǬ.^){0R?Po?37zK *h"Ĕ-B1C5RPŋ2K т5(?{kektn \juOi^ݩAgmG8u-Owx͍ hwoSsQ8Ց\JQ p/>J5Iq^Id:ѽZSBHK>;B‹*,>~]Gl-Ck>0efq ۯ_vKJԊ g4w ÿ*n*:Qg'ձWٻ/ %qb*d'5kE'SA_ a I7r#JJ %vUF/4.r?T41sT3:֚mwI߿HaLcX6\]͓fci03C"ԍSi7hTDDg<䂥4 “&rH8srW!K QOd$OY@Q@~j7 RY%=Jabi )(vTEfб5o)Gc@#Z!D,`1&Qs~m :tfWLq :lcI˶:4~^L#o=d'R$iר Fn&LJbU.r^=@s(2I97T#X_bH{pg{bDM%ɠCb{ i /_d/>vR}&3b  gLpU`v>['d.׺W1&47~/=<.G2y})Zkk-9١ Jј.֔4Zv[}%\|p-!\Y@L*0$+DH*dOЂ0Ws`0 ~ЬFD*w5{5 hޞ,hN[H~ǣ>ٖPfJQSK>Xwu\Vr<8i~/@$g$VDIvB90ZGi!i"t'%yFةI2l˸0b@u3@emNk; [}~ ^Vi{0Eep=>*?ȯ)= 5$w*0 }~d~ )/ iM:8IU[\X$+G=>Im H_ F;1=] 8Wd9ʍs.?%_.A~bez@j).M^UrnvOH%BIJ Rbak7EeJ~QԁFHkheO[)%aI8,B<^< 9 <̚izt7{Ie`R޻`Gz n.w(@1KfS0'x֒G1hqVX(iYFF:s_k&kfy{:fc_&V y{Lفz,X F[Bp j)]]D1H{r\~*5.AHl^Qqy|OGε:erbQ˄(Ta/>vPʗy09-YhukoJIRԊࡋVB\VM 2d FxRl_~VڈE+q@t盠tozDRao> `՝ImP8niԶhB}煘`=?D9\lc_8=|L:q8!u< ,JK 6ZIE9s!AműEO[ob{-z>`qƊ}9Ѕ+4OFb/ߙugذ&5pV'츮SfH"f*Sр5lA sԘS4d18.yNPQh0FBFJ~k}̆xu%5dJDK۔[|Sjs=\ɴIT;qY$U:> Ԙ7"TƛuGXr&Ѐ=Baה>ⅥUVP,28[@ ,GG-UXW Йj̵w}ШU6 ޑu^@Ll8fGr*`9 Ԓb.6<010yDDSe92^Dh2Q|PR y.B۔F!<Ⱥ"fܲ4ʦ]$=$(DH0;#r~lԻZ{mXTݜ\|r\dZY/d:k$j?x2~U]d!v̬3,;" v-;LŒTaU_t:;У)c[8%,7GEj|꼚:-usw ;Χqw3+%`d_C"} ?֙ _҆#[ ۶ I5  Wo*'D7@8#Q^^1L5e{&b9TTXg66(Q[oϝ2m^ـADIR9 Šlmi!6m$30ěZ'}<$ܴN|,"+R_LD9{5+uU*B ߚ$Hu$~*+xgE ;"ۘ>rg,4d,VVŐ&`MUSp6@O7^p ϝIS9Wr#ÆZǎ}UZIqO>wۉ0ns*t!\^6s͞?[SFoLE-?u^"#ff,`;HYl4uĸ& Qٟ(*aBl آ?T6Y}+-(lZV66Bp GIJ2 kqG;jDuG ["w*ΗIfn#Ot Xp:sAJOOٱI_N#_9Ol K̈́P"b w r^`\ HG`idD ppg?؟C?o(OdOgf]$KS`=Z߹ٱ8/Z_@MRf{98FJx82R!J>h/.өBA ɀG1.E]/ATa*ZK,C4 !zŽ ?$Tӫ뮒y(T⋔B9nZ;ᦏ uV LQoU%5;W^!$B%ޱXVú:!}sPJN5؊g8ub!^we(S2ۏ?jcW4"Op:<kS`I4?:\CX BK,j}`u@ a<v. w ~obȕ6 YĽMNۉO@(h&FioϬ]@K I,lĿnl#MDThs4e@] ~AB Oo1Bg[l$cpYU ny{8ch55۞aflD,MW*+~ ppX !Y# k<_ьYb||ǿ)AR q6MŹglQB/isyQm*9@ zd ͡ZE$ʳe8]5w@MŧNC|G{Xr ^4ʟXFtcAY?lN]t}ŮnOq9 k(b}810RdPdtdoBY"HOyZdZ^>ތFI58x 3u2 Ȱ,U(}ڦ i3Nj1fvZ5!٥hM /t#/C7וapčNGCeECpi(.js[P{gyǾN0 )H$2`B7?E iݍe#Ú޸RfcVJg*˳cZ#c]ަ}6(|FH$: anfU\lMF9Mޤh,t\'\ws ^a^b_.x{"1iitcTH`'vT MlxR'9GW!X|*%ք1a\^ $Nҧb}I0Tc)N{ nZmn(- 4+BޙZ{ݡ lKw\ph-py˷>e(B9NpW{ʺ(AT9.g۷¾|Z_jt]*A6nG-xOFgKHm_ I\mo(X<@LoC}P6/9Ts)ȋ40|Y7(cks^ Dc/`6CǩV̶#Qu]:]N]\<QȆX/ydI3K mK2ʄػy4 { /2n/ ԭ&zgmX[ 4,81(KS0Z!4ȁ3M\x+sn@2Eew:`^ /IA8c(de[HfUOϐI"5E_@.RZ̋-ܠb)CS)Z?po3(p8޴c6"nqdz۞W? 54~Kի8Ԏa-S_;a%xZ<-X{ N}9Kj{?6;Gޡ}C ʡ,9z]kQDqo@;R6maG9$`ZD[&6e]4J' VjúRg7Sć>eIG $I3(ڭnhym*-:ev}^NԺ C }JR8O1;0 UjH{#<$h wg&(%^޿HBOfbW5!4Lyg? 4]~.x*-UZeACTF],p_xsH8Dt'Sc >hmYA6eh M l2FtOC*m 51W'S`nΕ0zy٦HGADwmIՊ;cI`EUr2a׍](H-uUAeҰ$cgz,3#Q\l!,dTeFm#, `)J Z980$AN~ZV#BF@l=C,$/9F 3#V;x)/ta1E'ؐ*|t-Q$DП Z x^} ZbH\}Aq@[B2șd77\gMIdIAlu~rcL`"*1M=TZqcpL%b9ǯHkwzt[*D_L^\}Z XVYLli^0nF!Cl0Nesod7"uB$r6,-n* TvJ wzYd'@#jL2|Vq`lx{;ʖO/bmr"FƳg!hLKHz |fc7_1cB.S:aS^L~2[V{iR΋[,n.7  ׈vV6&)΃n,k{Aڲ)j봼@?nZny9>5HZASS=_T cC Th: =cáz/1N޲25s9.$]i N](S1md\@F7r_K{QÆFT'̯H za) ui 9=UyCi} ˂G^P#jP7)-O(XS 8;T&~0E9G 7 > 6m->C L&Q5` ٛr(x,-_&4 )Չ <c9Wxn\G]AfufX ݠ(.ye4v݁XߜXsK{? X ڦ^ȥqͶ7vS3 q-a& ~UMV %=]JyK}j=uX 6>5fF#ə3i╍3k,*G'`ŷ$Kt<δ`+hD СHY:GxB6qBG v˦hɣl@߾bQ,wfX W6)_qB`iC\3()G(ڂk40@ !@1v+3qY@US HG0@+:tD-@6VCL"19)mWDSJH(y ٰҥ(ޞ[ΗLJcS M,D>BZ\zvDǰ!dL9TMoJ[YLw<ѴڐRb[ȟ3o$_pEԬeի_fOsyW%? aWqڿZ&9*c,tگ95ai5{}2𛅏,v=|M.n*6d{G\qB5JN(A Q AĀ`ĮL ~$SrNYNPZz}\X)MHWy h-ߥzfrkvJ1:q *vSԼBfQ@3*Ȅ@¸-J+h~{i4Y/yv7!Xv@g|#.30rj`{.9JB"WղID d?٤-|v ..♦@ԭOSdmL㣭̦7MJH:F@8򽧰E϶tSurHmTtV!guEJۖѱu;cV5;P^^Qw4{Db"89nA,Avs #Ug644lQsBܮ";dHp~v!Oӣ ZuD!*H3b(G ? lGmBrM9h Sxqd|6wK' 3< ӆIcyC 8FOxndMdͼI!|, :? cLp!Rq1eY@qM1WY)y\ꪠnX,O 9vk $-:˜fUi4z*!sI}x\^9Q9[SvzPgIqO=+"}_ ӭB8PeΖxHq}"o"./d=ѽ- !TNwhn 7#:<L& 'o/3r0 ms7Cn%ht؋Srw^*S4Ss]`3췶(NB5Ff+Uf]Q!*^]ZZu&z <*rZ(f(4@@ m:-',y󴨰n5Kf [?9 .t7ݫiɍWikI -`1Jп| r9$lq9zb3}v* ؋펉4`k䂒x({'dMY`b4(CC$g5Q_#_)"yuRjB?A­<(nq{%4C%s{9e"bNǽ$5p&4"vd$[w.Տ-h!XK>_nah5r-{swU \z?ϣ!dcYѾwɁ=] -dFz@z(ݢG%qwK,O4׏⇯tF|ɦ7xu)"v(~oX6teiKIfGDdu"(mbi[cV1=J@VVguUjk\s ݄rI/݂6*?07R׬.&G $Ϯ@4'}J^fcgU#17*7YcmHLaVDg^p=`ڰw ՄMfx>-@D0jk(*2Ҝˇv (J۫R! [)Xؚ\R-@$n~?B<ߌSYemՔO[&' hb2N]Ӌ2>Pf]vB*䙊zǂN5pr\Z81aulqz~# OzԹ \@.?g\,tִydTF3t鮔L3K< a| @tAAV)#)bKt3KA/;bz=Q v@AwM y+$b ]W9$HDu%v͒v ~͙4@K(>?8..h^=[}ԁVVCrƖ؜h^@nX5jh"[ٹF8= )J t :VN]wcV6Q֍U9awF; 12R\Qd;A">ןgW u ܚ{ܞTn?ݛq˟Ns[Dg,βcŋ͑gdaΉ2fϯGKlk0jS6_L>kphB18j'~8C 8hGUvx)εP+R7eQycm+NX2@ ?IFv~(Ҙ8{-X1`" dgcጷ(t\CR"?oxi]SX9J]p{l·1-Z'~?|V[?&fx ed>@W2?w>툎-U]1l27z@"2ӫ^7­w[o~ƙVUk 7,b Mahr9]IdM?F$f5ْiU 9Cvk]EVnpC?OňFhZPmẌ́:g]dm{'Q(̾bD^qo'W`ȵ3DkK!Ə#gz2[YTEWQIСc+Vu`zM SoE0KV-=ceF |݊{\[Ƽ3ԣ@vr3=J! 1+^3'@7TP%F=yؗdc/  P'tť0]-w+"5 B[K"S\+ ֜V \Z蓂`_&"l/\#U@!pG"wZ{qIPhjG약13c˰CiԺѐ !p{o!CdIӠIө %5SbaQX`CxAGAьUؖLH "_ek6{Pӈ/w [r3UNԇ^w%DI|Rh`2>/iZL%-3Ai Jw3qX)yhш%@ƫh0Vf."o9&ɮ"C*=q$r90ˑ&OS*=jIxE 0LpY3_@?mX~DTnɍ[4\+[gVb +I3&s%;/\ns0`g_ -wZӴIgռ*s~"r\Z7Ap;X5[8$s^/Xn"R&nח @?(ZT8'7IShr%}({fQR2(8| /I?NO rJr/?PRmQ}LĊxfL_ca >%aE; 6 mMMR#! Y8a2 /[adi&[:INB&duPY b5?al!y/t/9< P>Y_?7HHV5!Km9* 4OrWt4,PH]Fj͵QiB~K#:?륈,UHt'lIM36U`etEgR87 U LL?[3'A0oL,%1H?`DP@KfѶR6UεRRdguǐ ZEG 2 u +V&!@0ϮGj;{sqp8m Q,JS?zֽT@Lyi;% 9; T_c/Z3Qc albfx bgz]y;$(it Jp4y䨽AzEs;(e&D?\MꯣQl\zVMUd2P"2BnС_l.o[%6l0P w4_pWɓq!k:BDU&8>m.91Vs1P R״DBy;S|2jw`^o;ґѬ]2Gǜ,;)/ۉ/2vG&n"iqHCk?Dzȵ! vY);rh@//"zxNQe{adF)Y0m:tgӓ/|>R"I,kؠ˼J|K^.س3kic3|Q+>_ VNZu.B]]_wLo=g lGG.<=Kօf`puTׂhFZw죺z`P4ZxIJR35xz vGzMQȒa p|;ؤDζ@x8w3J [|LGtr*Y> P&AN[gIچK%_|q mq}ш~p@PL-Կ[S:[c(0{'m}g'cX~#n\:05!&a9NwHhi*#2rl'"9P8@[ ]̉O%;3-f8hf1q;rҮHZ|}%$ Pux jsE8CV1PhlvlHtL=vX ƺJŅ`,Q,>!y1po R j S0Q/9asl/(|nhNnfj?pe.ϹF1RxՔu-޽@Ov6N'Y>xNGLD*>`6᷇r? O`I5igru2q Pk cJ}u#sĕ3:UF54\v9@+ bX&ћv6. i8bmcq?DE21i;Jf|u[GI,6S1~-`Eс zѵ1W\vd0k'TC l=E} Qs^*IxNQC|92iY\X_obx_L)^Ad{g-PC}zɊaJ+!EوAoD)g冥PXgRm&.y.p Em baՓ 0[b 3wFJWVRD.*K)܋KiL˂>rj)@.~<$3K=7%4Շ1bP"K|~.Jg#ƇLLsv6fO>V~T!dJ3XR.ꇎ۷%rc)JoNX5"x_ķU^P:|A;ݳwO|Ka/e'azF5;0rcЂdHFq7=?.@jӅOzVhW[*rWe0dl"~3ޭ"|K^L60ձP=/5\3Z21V2!JQkFrK9 L'QeTM͕/vC7BAνW!JP#+Z3H@\AfBX~Qʘlj?K8 `8܋߭A4"}Έ8 =obs5 8>)`B=ݬ$ah =t x97;T˚EZ @@L&S^!jyjAԮ~Uab_6D .fMJ])9t?F#hYF34 2ӊcx&z`  ! 4 . ۂ}^R1%pBL_ ,9aآe孑^d>{tU1/'蕪 >N4EfC)tŏ{r~ftؓkH~$Cgȭ:ΈI47|ނH#kc/e>$m4`F )+<7IV΂p'Z̕%hGQ<NL|X [8'#׀* ɿD!0}z%aPgnϮ pƕ!= hMo-s5,,;k+Ǎ &iC~▘6C׫H>0o2g|;>D2E):Y:46OLOIKvAF"H֫'P0C{)ns`2dArp;`? 7n~LwZ+ u%Gp͒>hޝwDmyn&[؄T7ɫG$EDw0iV5Iʼnfϱ3sHi'j:FZYRz}GK{ADTUre NouˇӪpU[ ((k z8Cpon{yL|{lcky;&(SrN;^cA<)J+aTueb~!2AS[9^\."a:omz9.@=;\(u x:TMH*^Al Wx{{RPtr/H Jv)_~^$iܸ\Tnu_}v`(>_O_/?]k{ҰiGexS*Jd}õ7c{R΀-?!]Z`hثkw2TQaO]A%J 5trK۟DW\ \`SOVR^>? ;YmUo5w-Rzo㽮QsJ_*&3,\H2cޑЖ=4Y+NOSLXgSĻ泭Zluom=uA|N$H}/o~Vܵ&ۤY ۸ƴ :9_ώ1Oh^u@`d7-4ib>p]"f"ɇ1#E\0K5{h~]<o⛌뫴Fb~X~n:o&,AQ}Oy,37^Q߮j#PGi 0/iTBgnz*_~1X:p׻δ1dLɡu ]E䣻&Q5ޘ\Uᆫm_{ $y.U'hHxrW3^;x"q{kK7la>"֝   +S?7g(£Ӭ<)8}N󷱈'%'&ob_OO,p-f/=$0+1ͻE"Xٲh bhmQ8ȇ؀!8ˑB4 ϙ+0Z_@""$Iꥭ$)uH4'{/lR9ł҅t -ҷRת./y~ Ȅ0 ,piч})Xఋ2ܯÜ`;uV5y* " z}hy g?6Ng0ZF{MA8T<=ĶFπno}jRs{-nbD{ I Pq6J !,khg:8B EWI,b?H[JC=vQ0S`Kp@А2o~JBx|wbQ2<\S|47v Q^R,`Z&T깍>ԄHJYx"x|*M90)Gp_wWcLS3} 㫆T{Aދ=S#i+:뉵4G^Jt;P<+Q$O{jn'ܨ|5Qu֑zhz^b2 E9gCb5)0IƸ,s?z@|\'I?'6ߩS\S96ng/d&mj/[M4l|mDU~STѧ`\0K]~s_<9PxMַ/MZ;FySi^%U\Skn;9:WÅڕ7Qx_v7,iB[_s4%[|*خy@|٧{*n[E*zuA|PC 0sV*mc v(z-@7 7tzar<7$c/0#WȥY]ugS,I W~U0ls0[.lLRtĵ3P RZ]5X"{hoțlqMc%Z9j34dĦ\2  yE ➒DFw[vU[GR((o;#vt -tT42(qf#%E]#^w,l^YNs"?irC/\/ӓO}Q9BX9s?\PFaQK{#ag G BX]a|k0ji#y\1E0a0dSWvݶ=ZJRUv[Kݞ6rM' SGY09)kXw'ciQj_dB.9ӵG b;mpD+|Yb !nZSh0,}x| =o-Ih;rRwu{\3}EfW?۴GOڊۑf#E*f7HGY(NVr|ظKoWzze #aaص³+"62.KiםMOeEz$M1R5 ݎ7\rqe2DEYIiTh*o=<1LmH:$c YgDBf5}T;$"-b'2'EuD~MR&4SnjՔabghصצ|}>bzu~-JfHVC(tܿZ4P`[ssņ&l ) <]8=%|iKro"ȼ>)t -G%Xj2Q;Paxl[u,w#.vKRmV Z24F`+#%DwN=FjXIJg2ɶi0ER[HYp+DSWH0t~ؿ0mNI5_?^ G)u:`)$!ɫ1_`yb3Z!hshہ/'/q[V1ێ(.Yg#S֩Ŭf{ v7%-!w7h|-ZUXΐMM2so3F&!9w6`IH*`t _dвQ_FbI2:e=̰È*ѹQf@b,Fu]*7wǺ[X0+ ~ĘDh߮Rϸ(-i$?5᳹A ~9,7ҧuW;moz-vr\7/fKVK0~-^1; _CmظٿAnR,lIƜxHw3\Q3^C.qV7,Y ^yKZ1idk=?0o{r)5\'W X o_lNEe?ɷJLqc.Tw֌pEv9t:pLV!L7as5INOWk`M$v/mn)~IXZ9>g{v"E=ƀфfa1i)ğ@MGnK:Dž3't ǫ ]_w`DzROzU1_;2m/hCs+rSb X@",K|A_5&YҬcC nڰTd痒EH&Y+; Ef3` zRHGU /wtE& %b#"/fQ朠Gw,lWp6:s@f%˻ˋ_tĚݝNB [;*rP;r()hA#[$wk0+aFŪFbm&b)9,S s2Xe^2/8ֱZ 0" #&24p:Z$46y.dzwZO? Q^T~!\,}x+ac r}S8Y dk{2W Y Q+9^֞VV\ ԹC0| n^A8ࠀh^AS q-ha&k/*DGDT^8pd.Vb$Da>R߾,O{=&FJ9f]fh>RM;wyT4~X|-{?ߝ|ܰ#i~*H c=?g٫j- rl b<e[y$/Pi,#wH:g%q BbD;ytE;IxC "0x)’-[-neCvX~ /" 6=ptařHVp 4#ѤtE|Xzw/ uQXM/,Umj\GM|'! &.<1n4(VMϤ|ؗNB,(0G#Մ$bMچ=t_mT A=$:dA 35^0'j7 0VAt >q~ҘVgx\R< $F >MS  p=|?gAg҉Xfs+cEvů387q!>It#{z^+XbD4)ھd-2 bͱhw4 U8 ZbuccjD>im: SGYc!_1eKo37s_165,n撮Tp{kt^}XK϶Q&44PE.D(~[ LtV1;\ ݅_YH7 R,zƵk 6>/ŊjlGoe_]*J'K&C˽ v%j5nRm@].]E^ &m=vMG{Y"ˣo3A9J兂S%w/`1F3G('2'EML1Òol:ÀHzP11!zevU*6+B&t"mH_ٶ^8Ĵx =}fB޳hUZ$E:jnrr-M1wT?KUd#vm̾H/R?I YhPD{/!}3=LHl&t~ @^91~H%6? l\O~8?igX![;yԳrq`PxM,yl!]c#a; D Dhz@:fiLe79: @i.LQw OR+׳V0is:fmߕ[@iT ⑿u:')^$uWɡRx[N%oXp.^QwPBC^wvwIw<ౢG?ڀϺtG'j#?Hъup\(W}$`q#INM=;{Tf ö2ml%v`Jh_Y5g/Ĵ4`pzaª ¼YbFޙ >mHsA!F0V6u4#@w#E?퉅HZG+׌k]w%qup)-A;UJdhbLPelu?2#*VyXyHX#`z* Z*2e]z ,d5NtF]3!Qi'h>>ނ xl,{@+zZHm5h"`ͰNt*ѷ܅MGi &K;#`r9ڼ}g'4b~Cnվ(]2}\*s261顬(L1 9⧒l-`ZN5)m >'8 Bh:[f1&v=\#w[NSLBB`£$B5>3&^,}|Wx 4$b-ej;; oxO┽t;QW\s¶n=uX0?Pq<cn2H޲RߧZSRf5@)ZPe;vґTީ.aiohs)@?Mƫܷо֝@$0uڹ ou֡|/U,-w w}P68u^4.ŕڲs%d. Qw3?Ӄ_kh ه+Be0P4K f+-֕O 3wQw}{FFt\6evl,`a}GZB# \&`c$Vu'v^F5WtWxt,>rB #Z!UM}\AO(c0ZmٟmB+*+H6=obsSfs:4i/ioWJیSQy𿪩 5PCzݴkǵXDyÅ-HN81Ųkdfd=uR'+Z,-V܎Q$VNgr$JipR/%aSw;$@WYCP!F#5:7 0~ؕ'(F!e[6Ahc*ZSN/ʼn2  Rs-q/gk>$JhBBi0 W&U9qG2r?+sݭ?2O7`tL0ncou|K3fPF*;"Be@tGx9qhP8ӭa"@70- 2lPG[L,&F=޷A\ub/;_ H+V6<[ me"0ZPvv;1y߇qZ GQL)PC&~Yg&P˾Hɯ6xid(6ļ;sAB_ߤiuarqe9dl%s0c3vd_5E73=4,MGsL]0ʯnǣ3stb ú;#q:v|/9OcM~$y਎&^H>|V75|34^qm{Fv&8 Y^Q^GôWlΘ, (cdO(2|K&(m`;]utoU]hL}BvȁIOqJM8;=#"+ b{6G"-n˦SԣeHdɥNTnEJW '0+ Gapgi[2c}?h2U&c]/#)os :}/\*&|=R_'םI6jj4:no~LO$*8~'nO~ 䵽J_4ogֻP>]qq>h6Yyj{bk\7`@)aW [R%'.[{Vqu握a7S4M9k4$|jޗ̴vņ<*tWWX'^R%UmfzKmXTfdH:jbGٶ~$CƄeCm~ѹ uOMv B0 Dh!\Ӷo= u3r&_w*(U܃r9yb|ߌԓ$;" r$Ol>}rr 왝r@O7j$-t{)^34=E~Q7b .LlY8+|soR_ztQ@2i_aP\=,׵~:E=;F1拦YDu5Og^91 qR#&Q<*rӔM> AW~O.ު51S-pXIٟs#m@RPU~+^m>{JcD)MZ6|o|Vr6 %s%H{CoO&;\Fƛ#u|?(w UR`ai6x&[Aau,|xN+uUP@ 넁ZW35 `1k(Auks!n'i[ ґj?沆yN_8(1׶F2vh욵2qg~ IcGwuhq5^l|b5CFfvxpsS9i".|`qÌl9;b!KcۧiQ&M䬺ZxUzUgߑ/vMM`)J3SPY)Ҿֱ:*s\ؒVp߹Odvs[=&?m@Q!V,C$zt=t@[cN7DuFrdfFN5Eg` 82hLD+=,9ʿOSD&~H78P^]':k*B?xFC=B:tF}w ͳB0p|c?2ͼN zHp1Ǎt${8"x`dXep3F9:ۘ Y)Ȯ 5a%HHKz/9"6/ oӈJ -F+&XIt9zDw S1UI{e/W؛Aa~SBud8~.5۔84,fc9(JÚv7tNw'FTru.\-TX!ٯ#(C}7XG7]bM P7ѭ2{3ŇED/n yR洚wTm LU\Mɂ2 %gZq(}0)//q7دӸp<-&4, P`jL~ixcبsQVj];aX@Nרh2&7/Lg\e:pF|(>|>}7E(`Ԇl1otVIPF/_~"q훵X' K>w]xpG䧅LJ86nT[dD ܁&n?hΏF\!hӆL$.4U~ֶf=̑ͣ ~GNb~s=U|*F -W%vu}6Բh\4$`+Zk•~BƱ'Z9ƀMC;-oӻкUͩz sM{6)Θ6~Dz o0z|X\]kШ(RX8ϮGlY?,P U)I8 {FF^yN!E `[0UwS:֡x 3=[_)'6֒)5z!G!\gC-+=J$hă&w[|5Q7 m|g<Ѓ$t +~i`-P>x تv]1-!uEfuH>5HxdإrX| {h*Q~2v.D7 /9obSmYk(/O N6JM fF_'\.s &4];_]3VnƖ/}|2XG Y{ۘ.NzZ a( (|"pbD}X3:և %DA5[ gBmg\}&&ΛC\:@gWla*_1;}eZMpcH:HsGh((Q4I'p4bcGkF/vW [qîte JAfNBBK*q* RĖGA7fPII1EH ;HG/x:n!5XRBJW]Њ%bxmf-֪o˟IWk6[4*N|pɥ+s`h,R 9bu|}:XA.~8N j6u}3vmW4%JR?+[< Seyd0APr!r*x@ }0wXbe`L~x2MV&׾ TՖ{X5+{.ɴ}Z,Dc}ZOcjD;j^+yDpT9p$f*btX*GxSzvQ9Sb|i*n-ݎ"pqg |z1ڇ>gVK f*ma: 2 ݶyX'`O EЁ=i+^r3ł `%lpkl$h{,+'ӯ_)Lu$lQ2,' ӿfN! Y]I`610#XuYP I ss5bEz,|fHR|y{Z{Hv Bk@q<GIg~bb" 8`,d}"%߅-,Y;T/<~q8Ű@ kODF0n3oCsCn_hcП`rUSO}otfvqb:I@LG9O(2Cmg B)tljF-5Qa ̄p63$Ԇ[O5?\h=0̍36HXbMEϖ GfobW'2Hdի,^e/zg pǣWz:YĦ[5@MA_~}n4,zZ/9iTCIx $Smz+`z'BC鉛Uh@;T !sQs0Iŀ;ډM 퀘MInt stX^MXǒO/A+upI]6.)4s8T9OV2Njwd,4<)Ō:'SaBJڄȵ*6M~3bT%$Jlrmo82 7 ;MW_8Xqa'ZIG^* <% FT6 /S:PJE8 Cl- 9G)esz)`_;# `9wB0ƴ;EXy;1nX}Ov#[|}#ˏUwƃ0||b-Np!'۠آIs7VK6u0΅ U#oiAqJ"it&No| QAi,b@Wsģg~(a9 ~;onW2&(EHt{% T].Tt$8C1\O٢X#A8md:dю;!_-!uBzeW:B l: {j & 4q!=,]A Ҟ#ԩҠhw&VA- }}I :FDxw R2|Qd\e=C촎\քE 1jU0>:XVawZag}7B !QulyB!hp'v킑vc3=3_31W٤ =>,w݂_z ;{dN''PԈt) o?1 @h2*@{.b }#@ϲ=,-xzl#2|+B/Db/.[YI@w MF8So<9dԘYlnV)&i uX u(? acvhRK9f@ڒt"f1$cE^J *)?'v`կ1VsMTCiァ b11~d}j`-&-r;LD1oeCiU'!#N%hͣ&lW+9zKW<EڗԞ8kh+yY SSм= he$EDD /XLu&yI0ݗR|\q5J xr=Q&$mC1=StQgza6LΈcfuƵ*n:13oGS%N~GL\]CĔJ u9UR+2M%[Fl9釋/h i*4sXT76np 7NxMy$՗ܗye[d[rDx\b>Oxr{wNlE{ |/֚WJ8/L%TYH2KU>;=^7j%C^:G~y4D>ԝj;g oJ+c ڝ|ThyatEt'/PA늊Λm~X:N1xIBY錜qݳ-M]7<Ȉשx`W>!`r.,JBb%H8QrTk؍~W}|oG-R^g49gAGBPŀ+X~6$f 2v|ٖ8_ӿu'֣{sXRUn:^I`_[ipA܄i2XzoZm :)yL%3#G>.Ha& UԐҔpUB:ϖ?Pb? k+v&>9Z$p.9RwV6E *cFogz86b8k=ާRV\xȹl?K?)csdu8\P@G6r]tk0>>4Fι!Ru``&rNL4hou!;#bEHnoK%~ӻdm"Ÿ`>Zv7C !>b|KD2o|pX5e*P@[EՇdN7޶с"hzxp.sNpx<fDPU8SvjBUQeT%:6O_UY >Oɓ;M&I4<}'&N&ǹe"nL 5hGBOǠSפ\%:LZ#RuރY#wݢyRzC7`鲌]NJNBݖa3+%T+,Н[!e>5MeT6Yz2>zT鋪\94j4}SJZ#ݡKRk̨}/06ԗu][јٟ;<ʰ ]5kXzLa`בdzg:NLHbJquD&NV0duhPnٳP1;ˊY{PߎfSeCro7GNEg{<Ͷ(9T|oMM"JX^V$Q%UOS:9TZ 6xgUu ?(cN=,OgйGVA_?1&AyvUbLfIIuylC4 :N@(5mѢe+NI( `YbX.&bIȓg4e`vߜA qbkmଅssUh9^导; hÅ]򸻤zV Rad "enw cNU6J1 \A)*s2׶s7E<Pѥe yd;6+^U4(@?{EĄ<|BDͥդXۻB8ȚF] Ym'߽y'gVeD.Burj ?>W{0:+@q/}(hTg@JKJݵ0fV 硭PA+o$|."V ftD -S(R 6YjS #q 5$wpn⭼Ak=$8`Tr;[GאOmoD,HnYFc{rj}'ky\ 'ExЉacXHژW?X3Bv(5+{DzC`2f\Lxqp ٖc:і|b%lW}/WST|>Ln*#d_UV0V9LW"IDhA{6eZ4ti74j0)SԒ}:nP4I{wyfÈ=i;f)g2BHg޶|O@I0AvRGEw$ FBHǽ<ؕ f/݈nE@\SIE0>V}̑6,8t!A A F) 2kaD$K)ܜZ,3oޑBxӒ\F;MqwͭXv_ayxJ=^9AHtKQ>N^R˖:ChoBH$N 8 xjC7j6vGaM!:IXPfek53짏dgPnP%~֊x߰uO]ghW;D$"rT0ɧqCœ3Gq&])kdEW wnéV^tCШT7#,Bq192V-ޯ*P,=e5^QQ1^ ʼQ6fٛ;HJ&f ZҮFMP|jzzv]D% U oސ %鴍ΏB-{a.ҥ,` AD ZyiV%|9F?<%1#A@79c#0-V1%nu]Pw5>7ǚh<z\iEB2vfXtuߧǦPmT_oڿCgiMڔXdGc pDNM$?.3eЏͶV-G>k_)cTB5&OfRA9 \!*P|D0t0if,7ǼuӖaWY ݱ|$Grգg[!I7 8ɅHky? L/&зۡL??oIT>ajj^Τ'1A(KIuԼK)0y:İ.sU.xɉ-dպOc+ ҙ^}|<`%GJgC|bj>E{HSY6ݪD$z!Zx%)`.bR[;"MC^,af/ňfݕfj1m\a=~9s ON PˎS^uыll!ΓE=_vMac~a?Wd.6`^ogʄ։ecz(e"22DW7F~/QI46 1:*e7x0)Ha&wrs65| D33%Aʕ+JEf Q:a=w"b\ņpVMq LI5 gҭ?6(啊a~$AQtCFQ, }`UͻCKSA = M R8ċx䈔:IA+ abV32f"עl_V:YwSmŽwMB(K7\o `v% sIwncԠ.O:%@P-zRwQU/. ]`_d<ˢN<򼖋gT Nߦ?sO#y'ub&%-}?I6Iڕ|;p7+5L'k,! _dQp,mKvaA!0dsOP//`\>S-JgYO",u"8ꊑwhWEkH9{ $0xGĉw&:pNҌ . _ŴoA.&#;Cpț1v/v Ԕh )!E۳Kݬ,\j:cKgѴM$4ngs"FfzxKf!sU%1.E'LC g`7 gkk!&cY5TpY3aWPӺ|wSNL7-?z5耊+\Q!U1p{ƴy$G"kl wӂgNƃޛ{ywxCO0 1 e<`":[OJl7jG;.I:RLQ d3(߀])X9źᶨ~b~h]"˿MrQ-8GaLτdGe;0n p.o<b,kEgbJ;t&P.am msȬ_H ,9W9A*27y%?B+Pҝ,p['7Wkn~kYaKf31;cQ<RD4I .̂>)s]Q9@4,KwZT>֛(.r*`$("#4Jl良5b5^#BcH/@|0ъjY,W*ޥ7vL/%5{$u|ai~ψUrA7J)}5*0@C-;Bu6࡙Jȼ;rB50(>?)»wipz-MR#H֔x$E uR7T~"9 ^ >'3"ď!j:`8̒ 71ȥs.4FHF\=jG%Ws;F[ǎ2(חəY H]K>ޓڜz ꍉ7 [;nvhIHNr(̶ؒ9xb6ct*<8Z&}!pqhUH'Xjh|.Hhy(fMaU]p8/ߔPV!輏!!ʆQL%!I)zZp""g0Oǃ$B}ʇX&!&Al#dP׃H{{7+mJ֔Rxb'Stv)hHp񠻭=~АnVbxϓTbUb+1 0\D,olyADbz`Ԝ#~b?8ޚOAg2 n o(2BLEl y6YޝH/r׍+[=qJh9^g9e SCըeUǙհlTen$ /_ T[kΊt֏'&Fǘ<-گ pxJfOdwzрǶSB$Ϭ5|IO*k6+ Wbxӽ)3(Fg!Q @IvEETH%sMrVc`:&h;b$5nPQcI6ڈfyJxD=\^7/4d!cy-(kX䭻7ߺTGyV>iN4mA<2[c##Y97KǵPs! o$(‰eC (ݔ"27tİ:͊nR؂?ި(]j Q]qdt;jhl묌q]JV:xx/S+3*V[mIWf!q">FHjq՘V/3\+%3iZ}J?3ICEg)5c5d?yhհz)';EFv0o,''9ƣw0WFmnDM*1 i62?D|DU0l;p⇎!"f6Oɘ]2u>n UqR}נpx]sU\ +*JLٷDZ"{W @F@C^?OWլXǩTы {Sg6ZtELh>'w,=>eq;8ʖ'ڒd+)2R1bUS6Ta*w+_V9?c 7Oy=wXFͪx ߺmZj9mkow+䀨q64mB? ,<2 7 ph9^9AIז%6<=D`\l\Vh#?-t& [U oH j|7mKB:U,NaǽSC~e&l8_AyѡC?4YEف0YSIdQC:NWQIː¢\ ?]0gS!IMw!) _*\{r}F5K[2]ʶhU\ N;b/~aSbQ*L[O3=)ݰ1$g*\qRV_tG&M6гvo}"Z&k}]zY6p=̴Vq hqX|>neB::chǸ3άL"+eeנ2@,zH`+",}:W>ݯ9Qf_48`S)Tlʔ,. J,i~@L]%UyJ[F:%ɡaSU1#Q=?Ap|cۀn3?N^)}:v&M@v)6I^䬍2dբ9,kbA']O2uJZ^0L FS{z 4M̊ԎP.3SM+W [!rǙEkݜaa'2@lmsbO0=8F;0I2#|,/D _?Pѹ! `t_a#(ҁdW-}@qܖ11L[0g`J|m8i-ݡc-V"+*Bo>g!N/5P׺@'Buex|6wQLxiXWyIq2we| )+{s3W_q8وL<ܕ)~Mr0C>*Iޥͭfݪ MZH9L2+HAVF tB^lj{%HVwRd.hq/Ha~ʒ5Ya(ՓܬB,_d 8Pn#s۪tS3Gpm;%4{Yl}n ~Nr%rݏx.?Y8kO'ۻ+, Eq4|_cYusM%CDo]/#=شA bu?d7K*B*y}MS¶ 8"S#/.ubsif^+e+DLAğ5XW,zK2m6<2s}afșѹ/ٿB&`+q]$`YX%7kIXG XP#rSA,o!_g.9L#P;hm:~bmYn&2Z}#\bE$hV7OiLe=Dں" H:^s5Da>^S05;X_֋sXrYv%DO7F<O6#l#%!͎^ْ׎?j^djV?O|)aT_ϻ%Ldb7&ARuꎧĶjv r ֛C zvv;k&h'lU|3{+zՅRe-+ OqƼmxp[yGVVC.|D+p@p_#Bp"%_*Le\0 ;h&7BYb,vq-c]ґ+^ lMHr{+]:կ*Ci-¼N"5=~T~WX|%vXNrJy}PƔev"=?#q Qx+25;`~nN߫[v|q˥K_d\>Q)7t2{`y&w(rb*yPkR_ +%*WN=)G7>Ӆυ~ӚN ^'jW!`MJG^SjO-r1>,g{& x!cձOz6&=`@PsON3&M$`'(͋;_qȘBd^(6Q 퀥F덹2CMJ抗ubЄ'dp CG`;[ԝH_h&y y\TB.$]gseVsNEB_!kL|8__~фqD<Bzu 6ۧ aáK$-I 2Y򳈦PvgU M]Y %PӫE hAqS7~R{}oJ,+}2.M+xot|vK+]>Q$ v'2"q` y@ms.Al6AX]hIx֝`UA!>WS Ku8}Y Xgu@: ʲيDW Y)4|tu">ά$E.e 8D8Ekq =ѻ|2ӎVIM-GJW^вK>k{:jБ%" nH,Gc+ůA8W3e8AS#m&؈ex*[_f' I# T&_A۽r]'8F9s$a'"pa'9)`Xb/ݟDSs|Wz)`' N x},boEn!Fӷb -6H$T@FnJ]U%w#V}l)X?@auhOz14ΐ7@KdfxސsP(&~?9e<>RBxwu%n&jT%ZѬU 6.P~39}/*~*=xޘ^AýmR$ E"iZ!3C`|=ȱv9wo,bIx/1xzTlb ,3>'6nXXoL6 @v%"ęy~I+cP<͉d-4U"c (-ڇFpiRoL]IE1d{({=Wrqx [ cٹV3!9#UqDy\gUSƨJG'Q|C#g S90q[&QYVfjcJ0Qbٙ.{lp_T֤uT a.>^yRZ_v4(RsNг<}c\9^{HӘ:/]R_\]C'㣚N$wD)%0e4w1O'jHg9f!fR5ҫ@taX)#˼.ADkÌe݃#vV$v ѝ N]Ȧg!u}e#ro6-@&0.g_mR i&UTk ]"X;#; G1W: >>d .-$s_tZ.E}q4vksdk53/X8wA󝓺mtI*kF|zDROo6dw8 )d~$I:ITc#W.eԞ a] {J&$t_~@A-Zrm`lt#~U>-&@dSřvo'ϼ;poW/]-@[1̴?n-T(i 2,f;E|K1p!tL1x\ٓAȬL+Tq__$qrF $/]b}JL\A^)V՛"ipIyr}Av| Q_9f([ۋ2 +尒80KI%IFB35_Ll> [ ь7/5\eSϤ A5d ݂JG:C~[Dɮ9`;cV839$8xK@] UM% .a8UAC}U?HY1YJK ?BC kBAء3Y&QWJ.T0^`~9y\$Cw$ efwZ"/|U;n J,$Ĭ_)Si|mM+^ڤX.{Gq\/C9 ȹI_eERXCμy݋unT&̢iW"Cr`\>ڈ ŠR,ۮ+],~b+Uچ8}khj K ]HiiIχeq0xHcp)Js;$\A:i_ájwiej)*,$VDBVHKR-M8M6uʢ6NLHnH|zi఺E4NXN7@ζѰLƙ4sj4.n+D)ybDuj$0EW<;A/QHlW }4uA$Bɹ /^.6!p`HƐ!wDKXp0E ډv0j!ďQ1> ߔJ. #KhӮP1 H:2ɇ Q* 1(+״e׾G @oJI5.jPNP aKv8K2/K4gR".Ts0{Õ/M[ss'ft/Jg})`)WhЙ;Z֏i ׬ɐpwZnIHjAs%UloWo,v"#v=fasL Xm虀Q JfN,@4u'{v7Yڗb<{O_)OcV*\=@\ 1Ɂ2S*ZZS6ᕳV΂A #UP 2υ7Wf< 5s^K!*|ηM Ko(OdD|4$x Qֻ .x{hVmL霊b.t/=n6T -߮:F#.+I}Q+6ȏFUsުHlk[cN $o8tR?}Fۼ,,t%'SkEdiG-M:2+e r:p~c1lf}U)BqSؙb0:"-XmU#&nGjj WoH`fρ#fPqtkys_Ė:oGyڄSx`=˭Vp8(-* !O#Nm -oWdنS"E)UT[Ecϫ@kTB ,9?rC Pa%FOf/U.j <02GCnbC;y1- wMACLPMĘr](оS<߮6_&3c4CePVt6 Au]/0`@f(ĴTnL^H<+g{j5nk`GaQݪ#p'.4%Ѳ|#,xb]AތM`r~no[}6=toS bٴ}vVeM6N7 \$AX0_1}1QWN M@?(Uݲ62J:!O3G]B/DUxNyT ᮁl}]NtC63f ̓! ("Req8cvh/kdfs Q2].NhdAJMRP؀ @OO|gл="Q(Աn!]03,Z/z.Bխ.ArbPYq>Dz9TBGvkOOYf|ZY~oGnm n"?[Jaay{øFLnNG=K bpʸl!fЯ@J(!GqZ"$|I` ˸hl嶪 GePv}*Iu&:IĊQ%R9'".CK l'ˢA1 Sx4qc-nkJb%mJނAdBD{vyм螀JrxcG6d΀5 Хf k ҙ8qkoWτb'/5Ϙbq遢ЇvVRǫg^ňڒ?jJ&o[;n!^;J^8[eN8~Ca9ofWϷH_]1"b2^X1+ɇ,g$y;:fUj:T MoxtM}AB#bR!XiW 㓷]84cT5]6o/pӣ<4]RCq(Ġ#c,feNNx_F^ ]jz[Ҍ[Lx?4g=@J";jDslCFXIv,<׎*MBȷ§/JgȚ W`[Ooၡh'MpQhWM}̈"|i")[VʳA> Lh x\bTᅖE% b}JQj{ /UQM0tf(pBЪr~@o,h4Ļ A׺Bg]5 E @x :_adg䮏^njsTRZMv6?x^W^ްb>ؗeF\BnëC óPN}+]h2@*X⁆hP ](wN:E׹*p HE+:ɂxPt-Fg`$dpcTfv^JzH ehr9"|Ո%G6UD-Ia 6}2pG6;:L ##?Cs<l&hrwF$lS\[Ґ`r 䡃564 )&v%RR"J ]BY˽2&]UNL?`ML9a$N.w2t$f؄qN9s-=z5h|WKDYV={-yv!!T*/ӛ%NV=އ˄[ unbZkiύF(N\Ox?JF*Ęoũ^s쐽 7 d?*\xsࠞ[0ӠEwzA*$O:!L4g0 gt8%aRY/ 'i}  $HjRߚxOt-@\1.LDǜiN"E6 eV̒$~hr6f$o=CCeh4QvNp$\!>?F%b9rN*7USfϟEE8HK{6EN7|pze}\h 1Oxbsf3XLJqgt]ZzGZ"zz d)P'`Ն:埕qks5fNji=>Tg(ЅRn$rVwuP )5|nM=-1jiT[$g {hb}V++;m\iXA˰KFS4n#1+[ߢbr`Kj4?E$iH/H+H7͍ @ŀL&RA"x]=S!; e.V~=P]N9DŽ NA9s_,Yb8 çVGb3V_UDDmm>L݆6j,eZ쨂/P?W f, Σpq]B6wXEbp%,J04|ZDuVYXv:k >ȑ' `VFD>YֿdI\A#gUM[m|g4 qfe ȯd#0zw=tTS<2Lnu@: 9CL*h%K4I1)Ws+!u0pP_rk$%'rp ŵ!jæVς]˫R͍q{r՘l ĮU1&L*nM,o(uq>.XNܳ@b&"VF+ }m|B9MkVx,Pc.J. I@ͣiseVx嬋D Z2UvcPKg$7G_^jD7}OŇb1*nh++ UlVFdVI8feןhxq?ZIԶT8'U !^Jˆ sY$xh@AC;D).ѫ^Uۼc>{]q# wя=4H0UMp90PXOIegP @1ء(YuA9^WTl=:IS6 (`9ƧB@J XMHv{vQA,X-N^ ?B0.k`h0<rհ 5$;\w+Y=TU7BΓb-#$sA u(tpx<TlG=vQf9խӁay׿U51P:l`ig2C9=k +h^oY;˜BiS.Wgҩ@DBO'4~J#6QC%.E0UH+ lћMKr՘cw zH7N&*Kiጞ 1R z}}^5ʊbݕ?`(v7/ w]Ze y u/D(`qI6X-Ogtꔤ`س?~Iyy镇5պS@V\NLP~z5F8j0 w{2}`qIR J,0 |OZaUusjK})7PڄmPn0tv *n\ύ١.$߅8ru! ^~SИ8v: $Z(=y)x"I =X$Jܽ1p(5.^ 1oDj =wގ^&{V'/Ot%&Zq&O<@k#RmMXj+꿱D؍$=0L O&+T9Uy 9Trg p|{2 g"FI eFḧ6cggOGT]S+/(vG^y{[rVϼ.XDkX5βV{1}!Q ޼?*=i:*)<5;gyI3Y/iX.^>L'\Led0q*C%wCa1#:UNy\@# eg&[ Ϥ75W pNcpfJ+,I640 #>` A?xV.0Xw|*7"ZwBY;HxSPz,[{MsR5v/6o2yrg cKs{>e4Xg际t3mj%7";iEX5a|jޱzɄӦg2"D1[?.Pp|]~k7Ae8 @k5 VNi\**d,r$}fog/ㅮFmmt.kU$a7ftWH,-⳶X{ ? ϲE03e! KW\,l֤nHTŏsHL`!Eb[ubj9d6bA?> GFu&;3lDX+ :K۞vI5FT)T䄧^ņCsVUW3B;ÊiLkOiS 'S1c*:A$iӴ{L;9popSO=NY?hս2@HBμSM!6~2) JQ9Bi| 0b7HS8Z{8MeA~6/(%]$xooEς%Eh=aw$>,sDWEID! >RxK}A-$--ljZ~a-4-ކMH'w b}Ϥ`a#1mXHVڟ#\yvHbSF-@q/cx?mkN9"*y7 GˆwAӖ0`slWjm X%-G%)3Lb>?v~Ydˌ2#](/;&[f"{>Bƶ[~IAeDmD؞϶l.gS)~du!%kNq]'yyL&xFLȾ|a1rbjqU1ʡ' %DzNc dnYY-! m3֓"N6x@$#ƶW˴GgɅ&Bs%WNT&]a /'g:,.QׂyTf!0^E,"V(H Ć:[f@C0o8b:507岯j%TdF >M8 uӌ v'mWڴvQE"6m.U5ΚKv [[*',kK 쭥sCyZ`DxFʍ}%lօ>e#csx )̵6iyI?jnC9ھ5X/cs"%H'X@-#5qIY3wVĭ.u:g~h#2B~Ž0YЉ2nJ` *t7rvK 7#՚a0b {_!j ghU0/LCtJЧU~ ^8mR;}-3iսO'h'uòmG5;syZT^ tj,.rh ն;ot8haBQ-{kJ"kBi!.cc绊zaI?.?fxk]h/ͨ3Q'Gr+2pԡh4k@ܧҿ.0oh'N42ީ8h !"^r$3QZݍ[^;$l^&NDٗ=1䞴8w'=tTb 5I$ !ec{Myp Yb ! 6+>APԨ[~m }{}=C*?4{8D<8}كl1 ^n5tMKV s'!d>{F4#/Ok5%wq^pAK``(p>B"fMƪ-^ '&Y萤s+Q=*&4ke;DV g{Zk[,b'| )^N==xzl8Jj_0ނr35I΄use;46; H*dFcoD\~i)eb*֫LT6elϠ56x?P( u99d(YKyrͫ8"DE,#IlN~tۖ өt9Tۦ*l$ Z߳1|iā=$5:[SyW!kuO3z¹wY {Hq9ëD"EbH}R fz&>f"n﯌% .|nQg#fٙ+aB}BYǙ,4ʠB^OF?K(KE_ȵ‘g _meh ^P+'0SLfqi*jV;6 &kz$ToPx3܃l ]Lz̚w͢X*'yzŖF8hJϵȑI6(GdT$e~@_vݠlɾnj$KJ,. ,=j+ousOp!m ̀z cBZ|;J V76Xco!ZH-O#xOv H]N0*,;N[P?@t&}Z*:du|/ZS]^5m/um'rEJp^&^q⚣h&=3XţV[әc!B>XG|QL':zl1&KS?\!G Uf?/]p T՛7óDWbMYݩpk,ۓ<^6.Ԡи#OCxr W iȄP6wMg')[ i4ܜx:%cޫ ѿFBBb2?Vt!FƎfrgE[s~bsF8yc8/>xQ,,XMc.f0|ǁAulģsʳYBڔGl8\[D rPϑQ2DD-Bh:M$s oERgK Y!-h4AP@rbS 9"ɗ~&;_ ݉p9*b/3udN77{Gf~5;ӭ ܮdfg*j 9ylf +al:FӼ 2[ ޸&ߙ_Ț%Yzs^~hE<3QTT^ Ӹq pj=g{)]%@P8C¸Y4>Yyxs{W iꟴ@]?3א`jnZf}apw(.ߩ։d2FU VBf,k?}Hcd1U7LHBoL/FY5pm[Q}U$[Z}_tnnW^eM7!m;،$8JS؏K.LNgIZ9sٜ-+d7d^Y'yCqEc8'2c䊍^ dD︂&AƐ͖ڇGA8؞lTr[7! Z'qt(x@}4Sǘ"15@OP fNqj>J"}dd# wA~75ޮţdgi=Im*)Z^\lFIbSA*@k+ cwuFH6.rP[r@r jLhW<8#4乤B7SN eߚ֐ +?թhzz;_wM-٠o3JG

    NcʫR}[|Ŝ9JHѶ֓HH'<߲ lvɁ54͐sPLD56#'1.2X#|D\֢4~:4! @v ؖX5 xukӪ*KJ'*rň Ŭbn6n_'*eD?uo`[Z; "k>mEh!̔ᐞL0\7h۳xF~Ak-ɹ=݋ĵ}c%Y)CޣWdtt47a'T]Vd -B}&4DA D^Hg^߁=q RYF;NMYcMx+<ĪP!eՑW[ wgw&+鏪^]jIX<;: 2n]joS}O;hō'LlB .Z[$Aqw6*E=1szmZɚYa?*"xF pLyr]B2@ișLXj1Zy7zā7*y/vb ´#vI,!-ᾆFhOȗ6*kN!)~c5mϔ0(_w)(u*U`._2w|@$6$1,V6tmp$_˨C!4XnAшw6ͷp&f&`;=VqLVWZF[Bx4ڼ@_\NR fdiˡU 58ݝ7`"DUM&OjA9 ?h13;IE9 эx6Up@Dž"8`r37H|6Dp(zjvZ+vWy@k1Cf8'зMŊ-ipݾ ַ1mHu[iZ (TGU)Y1jx`l@Vq(rɔLk#\VV^pp(˯gm2~fگ otxlʛSCJ6*%@='2DXGqc7ȹ佳]u(grp71e PV.L|[ w#q&n&6Ei'sOUp)]շK.8I899ѷd.<%K\f#>۸$r5gLԒ>B|9%9JVvb+?s5C¢>!|r؊6w_O3g$ؠOCˬjH"hTWgn&DD~w..AZXk-:7f; uF|kmn٥'m6 bO-]s""ΛQ6u\50$oqMYsտ3|ʷLsfOBzcHUzb=}@'uƕM5x;tʠ3d]/ıOp Z ӗܺ6:u<5È9q _wjc@=Ԫ}kWrDc9~8e^Ks#1ַghf̲h1HF>j|!WwfHhoԆ&P~y*XEEt|^3Mszlճuڷy *51E'ՆBfE3 TڱX)5}D?y9: _h>LivT'۹ayp* ŤjXO?\FJ냷?x3[ d܉4Zswt 0/$[y DqO=^B z:-ھo9[Z9' ʮ_$ݗ ltNYb^+rxڣ ۤI$:N㙔 WW© )7e*e1m%tI/gN⨩%=E7N,s2v0-ƃ6a289\:I%!N1.}4 zJQg}h=`C|"+WAEJ'M♯[c+yS+d1VخyC(U7s/6h7kE&݅pBItj5&HM?\~iƂ ȗ(Ġ(yfxq~lKvdG;]O G1/^9z5pbU%Ku𐣔 ž1>Hgwi[G>ifGn\hO .뮁c2VQE5JI1)-ZʴQ[o\"/l꫐X||$eT]AMƀ; Yw"R0,=e¦9EC3{\1- F틃~flO"_G%>*S cq5 lj=ЌzyCƟNnBؗ:"1xsrP |o({I :u & h>ļi6,m`N!ȴ9b-W= ++\ <*O#0JO;v.Vș dWE-GJh tF>S5mۃ$ơ+! 7ɔ4CmW%3Dƛ_Hge$iIBS2$KQSY3ԐM\Xp%UC~y.;2hh^t/xA;Y,]Z* :A+[*@5e%0=:Ő5ⳛmǵĤɞZC ῚW~rWGX]Ho-I3jj kSVDSd.a-~0bMlJ>+%a]Z;UqERS[yHD2S_Ph66$r{0{=[ 5jao{ kR<*G\!=fb{Vn0riRmS Ihr)£Tk#𕭌-2ͼ;g?{&,%Arc{] E'{;up 5M=4MnӁx.cmqX]،U H~Sp8 \Ih PKEV{mD g5K{xhDZ?:qfx'.SN8#3*yÖ|_hͣe_81;fCJ +Q-e66|W4`KxwQOt{bN@7j/\Q_pqv$l|3Uzw/I>X%91˵?ؐ.lؙ=Ͳ!OeAՕNnW4P;Ses6(qv wo"$Xq;͘HK="v^fO4=6_* #`re17w3||nn3¤~Hn5Lw7E,D)ԙ3 _Bz2h/o%91z E7i>;P:Xwh=v:)a9 |Z\gɖ[T@ `NA -,.nqCIm8 \06jXLYNqI$#Z3^,rIAE9Q d:㰊 8'J#d}yu&_T`"jL">wgg6Cd"UJ a8CL>$ϜS7WIp69 :TU9{åi(܄ p8`R.@9y/ICH-2;TBP} M-9 #Aesh.>$A\戴:i M/en"kiٞФ;'|vwaVEHa 5x{:@tnrmMcti&a-DG$.$!!޲k[*jĕg+jI+gN-9]5\̓՜%0j!Jolxտxۆd%?aH#Rڑ21ˑT_Uq\60u`CV?숏ga .EXnO#ǃL!KTu?"nI5cQQ4~ Xf쾬RZA@ހ6ubSM>^.fό]؎`F?ZbxY&W#mX4۵()!l%\d)N{U/&x_hLUZfn;P2IyQ`PG}^_>K-\A DSbFu_ݧe&@ŋp]6-BC}`ت<߾8v)^);8.F;EGp1ۘ  Q8j_2A277z=<͙ ڥ(-)N>PE-#oBwuiolO{>3kɚ/ P1i,wbT?Q#ThQ GH # +kwNjsHl\ 1j+1L1 뭰]@41"0=~ڵ.ɞ&62Óq@,jO9g'yL) |:(ԹMVh< K$땘i)獋fhNE@cFA'|l1\XUДcS,?X Sr @4NJOl1v}模nj ߀Gaoyg\X{cŸ.9{{%W0yx(X&teJYU"3 ʞMˋ F#c}Erւi dɉi W^w8# \iaz\z_+ l{_ڧnIXqus߀EsP}sE%dװ /tϏI¬3nYru%EoB۩2Äc ^ַqb2mzzH(dJwaTTR LR,F_͐VFB ˣXam 58PC1k\K{M!: 704_#_\=ÄkKueg|AsFb@=]**pهPkc4Bsێ>sJiPI0qtp'|9#Wues>ΉPS5ožWigjH:+gd_}xٯE񛉃XNcx٢ܾݔXNaFOtb}c*'FYTr#eaf> H/R[\pDɗM+3}0ݽwJ#|e'(k?N2w3Rpw#{6Odn[+XYpΪʨ^{4Ս.]Zy,\t=6weXÃ%FS=<}$"WĎ', 4i@ev#~?aD*F U& q"h>rpUU3X@R,# 7Ytq4h ߭ج>qh!CuhDTNk4,kM}"Q-$r{Re'IXS4a‰^@W.N>x뷡X\@=7#@:*(pG1Y#^+^eJ=@QX#m:om-)af }#Tɇ Svl0Eh6;oK)h**Y/^)- d 3ૂJv/Z6s[ |>G]V&}J+/ `e|\cwEI-HC{0,;n2$waP.G˂Q|)#NZ ORwdWY 17)Ѧ )( Rfdt=&D) ЭL"M޻YɌ]<̘{=~F<'?;`=g|6`wN2N=|f ۊM룻BOKdvGEq]$p:d}9 ֲ 1򡺯DXټVYo >#'ir,"6Z$v/^v_h _L֥rH. yVGl+D2}^!!sН`C]iJ7.m 0r׮zUv.+!Wҡ|2$ţ#RTJHP |YtBM͎lV73nS}rfiBPa t!ry휶'F3mdNxKbֵGTryb> a~bq{mNN5k^FrU`r/a]c'@KmIOugc/e& {o[05(H߇?BZ#%T5|=v"~8FVG&oʙl1!;|nσSvތǂ׳@V8뺣F{k ,Z4}Lm0i%T*y!lӯF;o+\MH44ap{ LfH3YUmgQg쎧ZƉ"_n#8xiVpb?YT|a!Δ+]r/tO"X2ŸơWrv~+ŞEu!a. L|s̝lj77$g='BM 'I}@ DIb^Ի\ 뿄xe/8é9KY+#`F ϪoD]cAr&љ(Hty`05~#nX]FiHE>mfM5W11݆"tA$p]a*>FB^!="y+hDPK["BP6Cb\6kw0;Q]zK<0٘5MwsRi [> zL@.'(fL; t Y-X5CiOe N2 o lwHʫ:aǡSs@`ҙ bY?+KH’ ĽdOIGOLˋ:Cq{;sُsoX;ҫͭb td5S`DBue{K>[eWWsbW?k2Zv;ss0B<> o!)h](Еk'w该5꒒0K8P;"*| n˅tG$]T"B*mc4Θ)(%:w`?|WkF([Y˪ ط&*{Ɔi:r>;#+pηL5{Ʃ]d@MGXD|dTzT2j)|vͯt'A~zKg%bQJF1H9/o8^j Qow@,d2\ E%DdMPsW;ۛ*HuzX8LzJ$zI /C\5e$gv0 Pt|PrSz~8HOk,=rlNB0<ۻ?*hꉯh|UBZw*1PG7/4l|(J8s>eVȡN ?C6 zMb$Yhn Rӽc,/\; 3⃳љ'e}+ TcOy͊6<46[(%dDZ!<& cK{Wc:'k bZBh3I)8`U; !ҡC9HPp 6Eq<!i&ۀJqChٵznՑv$}:)|q^pie_(erl|Zlw)'m"gngף1x#1qveI/ض+ȫzh`hżBrLYn : 2P],}5"'>HKWDŽՃ%tVJq6L6 F%`U-(N'ȼGs&G&xGL{^\2YM+_vˠSE"-Ȍl(=/)ORpĭU!*kvʻM䞻H<Õcz5{yO cW{b`Ƶ"Q44KzDxmA,n3/pџJMEit5iS# 1Cqg52E5(&RZ$Mʏ8AZ+ mtdY}L!]Jv0O'wg0-dw2RGPmXZȱŭS)Ѓ ebN^C\ V!Gk QJiCoڤɌ vTV, 8Ӊ ^e+dpiPa +0m!VUF qrc7 w4e!hd7 wZ @*yO<'+'Fq]c58R '-uPտXS I6,p94 lgZIJ%'%D WoA4gwYXi݁J9L;NK5}BN_*Ns61:sz3Y؂*gj]s !ӫAҞѴ}t|0d9N+Xk e~Lc }ź7L9ɟdOEߚ'Q%^F"3LfeYfh?0w"6A{ܜ>y1 Ar!(\%`WnD\R[LG:o^P⮤Q&vud+$;ּ2c ,CNDr<}7:h5]6pF\|$0;{. TM$PeQ7%ۻl|Ѻtt!פ%UW}Q%zGlwzO&03:*tBs]{X5."{ A[}Q~=qA4rkMǓ=~k#3Ė8y'u}tlk鵥z3F'[yRgt Jzᅷ`! !7*_%+Z]eAgbh|B-F_eHBEBxAjoGțip'>@5' 1WRBٔςhRSYp2p.ac9h0[Vř5F`IgOIɸZCĒSBݱn L [,þd2&sqx5/m π9|x (;@2"3hpчnC~J)Zh:58) s1_nvY⪊%,8M(MR6vYԞ] 2Vvzr:q0N\uQLB]\Lz,\gv#1g;\=>ϥkQ.:e9dbT )U#Q!B1Z! yx#/֐ 6ZU"hps!1:k]MTTbn @wRj@ZĂ[0^lcRӜ0U|mF-ebz_ƺyƀ4hǞI8%) o#Wh7~"=+:GDQG)V,0T64JT@#1wˍ,x]xOB92/ehgir{'d1=1 J~uUuƽ&T RF17Cˢ0q )Eːe<%}BCEq-· pyg6#o,YdO1>KVfa|^ Z:6N}&jgqL<$^GF鎹;}cuBMMAd< _C̨V &P c"#|SB/ǹz`:YC\˜<k;9Kcs 3{othV"{KF3AwnWayBcBܮ(T"̭2S|24; -90^턜ng(1 R rH% S4b{لr%},nE bř ˭܅IB:ө^i %`4s`~'7D /cGG5 [/'}~&DmhUÚ9(Bhozs#Eg#t2EA2tG!Dw,SseO5#9Mi$UJeIAoƚmsdheqftAc͠lu;-i2鋜ӯuߔO/]SgeD@Zu_)<ew~:lgԽ&O#,~HrY8,8@-hq½ZnRbiX+9m,]d8B.PMY&Ж_Fb%ѻuTTx*f[WWhݽ6-gM}LW:;gQrja!IxP;'?%:7#|1,,H1=a[6^ HŰZ1+ڂqm>oN6:npkpD{D6crL,>8z ì{ԼK/9R/ P'd.> K0bIoK#qZ?yEӾg(ru G*"5R~M;$4g7Bj> vCumFS_ ][1tЙ?حu\8\3uS<£PIдDd^j'2* ~]_(2pկX*+ c %oe]RVSPڅXoc˜d@QzL aQ`3uƘĽ PdDZخ*h{H{}7|Z2saU2e7X\\Eֲ]~}cĔ"FpASqwEj¾ǢE60*oC_EMh{.ԧ2us[:@Of&p<_)Je} J|q Σ=qG0NTM7p7I~QDká/lrO̲d+ wZO~xi;ȇD'"OY2 ^XWGjț:$X6$p:ZWG߳Ԡh,Ze&/>ad ةeˢcr(ļ7JM  šqf~Y%rZp ]\l@81|`]1|ɪyTET6U1MI]OSn)>7ﱲ9n$@v>2` Zx_.'gPBS.)mۃ 1a pDkKw"iڦȽ!L1 5B:cݷ"d392nۅV<'`< Y=yX8VvFt u҈O.KkmE~, QznHdMT!Fϖm.1#,Cef95>a2eM#FY1V^~$JKN\gEKTzݓLêaRG8ڸxc"\I;1As<ϖ}( mMfۼo5Մ(|=`6=dsN|%u:*NlSDzA2[91OR Gu=#"6}J+Y ",W ^LZWIQ'Ǡ`Ӹ- "cG8!zAg4KQ@7BS*SRK?R5(b\^l`Z*=1EiMN`Ǝ @fڮTBS-Y R$PiO *E[Pٷ_(7bIґ|?Iܼ czpV\#Si,zHMr;[mwC.8tj  OÙ̷1: >Os#-:K~"tn}]Id%:Wa<lDì>iI5)zl sop|>Lvk{:\8_B䒅s uByN5YDY3?cqܩ FZ'ϫK۲ sp/H!NK#@l@\ԅ uXNh}4 NXćKڿ+9ϜXos#8^G &Jᚶmںϸ]Б [4MSdioEEM w7)[=]A#`YabB^Ö8d(f@~ :^:` $i1TV]'+̜ʰNiṞ@ "|eAouvtc_"K3J"G1UW9:80h<`_[ K}('7h}@9V-¾#0N%vzY6"f,t -_|E+ȁ[F8H'Wz%bkOZi$YEn#(4*;Z+'m`qGO'B=\9P̨>m~@A[|Hg{b~G/ E}yGU&NGmnq}^6⾬@MȢm[`Tm}N?0ADQvOYxH.Γ)ҁ tITHn`c!kvx,}\!ׇ]--|dS͑>tj2̉s 8*K rSeRf*6G[\L@rWLxM[I l2voX LܒoVY9۶wJQ>e2eϤSD^X|dL\ Dq7kk} O hwyTv)Iz|>ѬhO G9;gk} QxАJFk. FBK@i7}1D41 QU!4zi̞~Jl!DU@JXA^H 1* 4&<ܞH:izw/K]U/k7@eFLYUvՇEwtF҉!p%^P|- 2چo>u8j' v~5 F"u)bM 35ZS0]^d?2Ӥ^_fԠv5,Ez;o^a.Yi*z^M3kgD|S noRt\LV2(k"1oLݔ9YFfAWxL.qMO er} 8CW UBRp?c? ]z(l(HʅUq#ԕ'SɉoΝz J|7r-?8l.DJz\;ڞϘ)k?*45Hx5gpW<"=!*=`+Z\r'?ĥ]Yi1 rhIw$dHƊ:Z\cVs7O#n.[C|8<}CEN.'4M\z}çzk ^]0~UDqOtA۠/\+-.yTW7z 3ƜQ;ؑ'i$pol\O^FbҞLŸ]_We|_2 e$XbxPf'mf ^YE\O̍&.DyH`,SoNV&fq$Cwݱ,/ZlU[KZ.Y6'90`5燜Kx [|itGAFvb;1WsWsJrr$b4358/eб_?opAx-fNh=a|P>f/c=*RjS9KK6*$g 1i@49)N![ uH^r= BH7Q` u5#aZ|;70cB݇[7ӥlҤ{W cVB3skz㬕+IԖKzkiAPSBGpc F#znfEcO}G:e 7!_-4w2 9NHh{JUx͝01QH½c백w̙7j^.N`3&ɤZ3]ltEcv) T {|e+\9GMKpǭr>ȍ#]vx]tBJj}>P9%R7TE cg~%PIMj,U(G0OKq̂aB{[At8 g`ER#`Au2w )sYiV譇DO5Z+. 1gu`qOc) \3}jX4G4vϸ'pWp,`JuT5b6suxx*rҡ͆B1{OpT$ђƿK[icSjJ@QP锬#PP`'N | ZrΟQir?yf*֝}8J\Id2tûyzoqj- +nUU-绢|NlhG쁜EAa E_&>@%s7aN._>FSV^t4\y9*s(IT2j?zع+h6հhKM~ -hh\;=F\Tי>+Mh*ZP<))Yǜ 4k_!8UȞ{imGH7M ZbTbt?0:^# fh"M+hUk]x#E+(NI'C΄*=<(0}3-;2ԱȒ&YTۃ_?8W7v^ (^W%Uۺits+=sW(cG26e:a9> fAk;J;Ѐ#o/9O~Y$>ybjJ׫Bݥd^hQأxԦo(qJJpvʬ 4HYcH,Uh/ Ћ`- w;T :Oy Z+iQTggi)f$3͇o!pr<Lkq2]k gEn/xr#05bezAe]䊨آ/8IuDb ?4i6lh S;}Rn &[@q;#r*hrnpMQ/U5LGZ :AtG 35iaIԽg{D'J68|%+Anюl~6;yR⣷<\hZ)Y{Yo4Z}ڲ)R?^W8ļ}2+΂a 65hIYclvcNЙDC@!P:_-ln D!rVH95 $Ҙ2{*GxrͨPdkK s:cL0A=-ђvG(7kn'1;{Y_@I?cٚe@Ͱ7[ƿU$edQ]#MFRq=aqS2>ѕz:yLL۠KoEPh5Ywt"o=:Ro<^e3_C0x~IG0SF }!@Vxoħ>J8Ybe͗@/ȓpFnt[GEݔ `i5( JE ]В?Ѫ!"/)BӱظJ +"lRY*2*P[SLxu/L5\؋4}4ދ."m^QirS$,ৄ\9]~O_ OʥN(V31 U NXg:ΰPsρJu7K`7 n&i`t`Pabʍ,('d,bFm 8"nP.7SW]kgO5QAlBN8z8(hL |eOWO.ď1ݘߗ4,↾EF ILL4]>Ѣ '*a^j&:6.ɺj9Ԃ~ב{az78%u?X/2TRJ3(JSu$KXtCTHGԱֱ E*P(Ҫ'+3 0wgnZvXm6`nMZrۈv.0ҡ- qWl;Q,=yTyVSǡ]U*g qiսӕQN}?/۔lyG'~D E(M?Gqt1ٜۍ^"cje ROL1xO\2esjA~:TCOU2/jw81}NW ԵO@A2㓼wM&0fdF1vݚ5MO"$(EJΩv.6VHFJ|I'N> nuKsTAT lw(t~a|ԕ2L Cg`?n)$)yÑ b\pk;4UPח*wQ-v%${n3hv^ @: DBOx݆k;:qKO(BÕ w #-]P{}yb!# &8= 󼿹C %P}M,KiW 1SU9ߓ6JZĥZFLh^ϙaB_nV""H | bBQ㞪nhr0`*jW˙]]ѭkhqx=r(+ Wo ;/8sůg'Q NYe>&O۵P,3Q;XS>p[)1A3κiJZߒy:߽"O<6;4 %;D/OYc rCrQ6|x @BWTL%%lfKAO(SٳfP,Ko-MKl`TVff[W5bw y3'] $Y_I =3fIfD~`9}f8vʍM{gXfwy[ $ ²%h_L`M0ي_W8 `[N&rqHw<ԝ8lY"';ayik_=TO""uWQgG,2`"6JIC+5 H3 z(vv_; ?5Yc`4VL=Ppgwb1#HMMv9\p3Hcq 4wۯ}4O7䞖R26A-u>J%@W 4ٍ{6R$rBRW$elV)+⾈h?ɹT ϜzHZNI \ơh9I ><v?L~4l{IeqO6zxZAҞ?/UN-ЧS! t*!$[,t@rX I*%Z4BDd3Om@!X}8-8_8x^ 8B^tJ2ܹK %#J6Y.z,Y'xV';lI&9ait9&(#t{^8";#:迤SX2VEAڰ%2L;8R'"ٖr^qyZ|T1jSE{,]G+յ4+ ?,Y%ym4@&g* 3=N{7K3 ֝ L^OJS'jρ+^,\? 0NIz[Dt«)we7OY ?م{r TI+v).P빬mbelat!A6d[6S;(WaCzo|m , <}qVO9n%%gxburͦizV ܧpa ͇e&!Q{jca0I 0f0+ ?"e3yaV8p ߪxS`\ۆypĐeϭbrJبa;19څ9hdq']|4={$h?TbBCbQa[LK1Z.R|#F@Z@P5R9Fq5} a_~=7j ֔F#-MڻUXh u>"R_/ӗ2[*u(i^ވOLȾ@ җ& 6fkFWX){^RW,`lTLІVe+GIQ1] q76*_88F'Z}qL?ig΃s|KHQA@߇3uWBl /ӵ95' A ɝTwhYqHQ܅ SS=r1#L3D ʌ.TXW9Cfțf&Agh^].nRQ aG6L_tP>"ࡐ$o:)]Ͻj DF.Ii@![[ Ň+(d[{`۾3jal '1 ШF闕l_pIJ AZxDt }Xk*r0iV8OQGwK/?Gb짯0)N'd0Oō>AOiw4 7nH}@(\{fy !<݅J 6{RdVoK8 qP[o-/j&17__Mrٓ/{{k3O5謹Dw.:1x"my<zlMU[y55rokA̒l|V/q\(D+Y;dY[#,N(~z`Xuz@ap_dz1e'?TUb$:~D.Kz,'Mrxh!=^0IKQ.QZ@|yl`lݢ0%jRv}<-t„I1W "ZO岀l`.&+[1?l`M^%9E)]lL :%7uN9ZU8j*@n۴9<!I,'+t*kEc7Q`,;#4>5/`B}~qd;K ?d a_Rm6WӢC};s]̓5C5xSȓ :cT?4Z(Å"Z$ 7U8<Zda!c MHaȅ42 .8%)4x 3KQH6lW64kԮ*KjQ=[E'/GGfє\@ uX $Pv!E,pKsD,co,S/ȋՈʻfͶo=-ٌAZŁSD!Gr#B6t>,S:f֞j v-՟ PeJ|w?*&4 :KL8ismmNEŋoRClb\Z26Z QƳⲮv>De-̡9ڃ/"\R:\JV%/9D$|ncΈ;;?YYr??Xnc5NSpB *<2sH[q|08A ƉZDCSDŽb"Yk{܄05sڤM_#iW <&{yެr@J_=|Ng+JvSl*5*%ŀo76jc`JvP >}jsMoOK!D f!} ]BiդކKem]'tJ礓8,{i'{cƅ8xΧeqCI.0L+P٣`hb{\[;ѮrHg:[QX)@jis-m#)K^)8)+bzFXdQ=|F_pzke,v!CjI cOA$sn.w*}Kq =pٕ1i)}afLqI.ש0;LKvEUX+ 4 lk ?˙$`,Z}gPX}H3&r{" w, oԪ3p"鶓M'r+( .kU0z 밾=6uB7l_3y]?齶c@r+S00]רtXͤF"&~>mj՜ Y$3Mvllp/>C>yuI nQiGx"wr'VHuK6g⁽OY@Ŏf\2+嚑~{<} P1Nջ>%e%kV,1jcy~0Pmn#)hRHnjsT!tDi.zb\!a= k6}S^y-'+;!U[r5pj@ӋZXםbp1Έd/M߰ >UJbBe&Ή̇/ ,~4tR[ J:7/ ύah.T Nc!4nDڼOc+V|![C 2p=QQaON(Pûka`W)EZ[0(X`I݇B ƍ/1@@̠V7,J$GAmq,|rϫڇêQ2Fn4N^u7Yޓ ~R)X_]=|C5x/ Kֻ֑!ωgU.q•j_HaE~/EG<߽m,X &M/df5vw8%`mK2>Гw1i31FƼej511Vŕ#{cC_`H6y懬="6pKs4Teեla"Ek(2 Ip8䄙YbWLKw;o_.,C~3 R(_eYVPű7Rl|GV5RBP- 'gršs&4΀:BGR_K[W*OrF!^3K%G9sȵl#{:6j&P`3MUuKN릈Prb d$&UdYyмI8K8 e rqVs˞:tN{do{)YI wj4[adaݼYҴDxgK m&ǃOGWWR?-!77} k5L8?$^rɓSvB"j}9 Q\4!A#`[ IvQPԟ^eo&eH-Q&Pc5}5^L#zX:y={Re70'7fvVx/;.iOMKn1t'H_EQyvv>KxjHC)B=P33r^7Y@4p 5>q(ICY2pxg[]+<*lSvqL|슆ۤ'-pKvވFo֤9 g zCoDt^f8_CQh$Q] RP'۸]/0v}4QTG p~|{`HϢ;|E4Пcv.|Q fn8*6l'm-=DǝiPu0q? ΘMZ/H7ʵ'A<XKU˲"gg8cM n뗜햤g{|G{ L> tQ"(N?#Ǖg$䇝1/Esv*1QQB-¢y\i@Rw揯~G8?ܨDKȻBf|+,;V(I>2l҃"cgHÈv0yD6/f!.(o+iY*+"=W-l(LCvf_Md.x5yϙqY(9 Ԭ6ճь8!tt7(3@SgR"Z!2?ӎTa.B%'ǯ"dj{/7L >{('} -Jdt)=38!A]awZOj0R$y_Vʝ4PRDVdLa1Kkd ăzY=@<ҍ2PzەˌGNeդ*>~M9}ӜQ#wa'  P+[y5&ak RseE6zIbyh'5XSֻ"Ib,V{8iy8]'\FJ- Ɔjo9zKa-uN6ͅ,@~[}[сL Iߗ祙Fd \)̇)֐VQtCx8{!#:\tr}&tsLsM!鎦5h{|+| ́{B=A[GnN" lȎH1|̑⚰"*B+`2%! E{{^ G?ǻ6>U9L5!!6p&JX<">[ovZ +X4x-[eBCTfõP6{U Vѯ.d֘n:7Db;W+btEl91xi #9IקGxw sQcW/Bo}l f)sy<9헨PoTuKC^HfMM?[c_9L޹-t<'VX/vxy#wmA.*^XXZ|^9:Qה{PE玃v7ȋ dnTھ Q|=V=w!2ACMI Axv$ 2Jt٨_Jmpё-Ȫr;;tXZݮt@9_|!9@ s"G2 "&Xw2$k$^"egb {$UE2xA\] 6#6Nz #'k]H F{G/)c';"PM>H]JlmjÚu^X8}lklk'w ^f8M|$w'vM%0${|CʂK}(n $gNU0` ċ!-rj;mKUfdX7Z*kGOQ-j.)~@VNcK|J{6' 4¹&( >J+gB<;>p~slr Cwf$Wr(CWϣ}|]5̧q J\ɉi*3\JO$c9,}d1dq j \6 'z4ii|Jg̍km>-/}:C1:O6}was2MZO`׺DCDyֻn8r8qeeay=< w?#b/lݩ]"τ{+iN::I& =({Z}wWzidS{c\kB4hB ҫb@PP; *}&@0l*` iQo";H%bxϺCTk =X9:zZR)4\ɗjr* cݒwQ«&3>af@A" JP ]?̉nN 5uS.g.\_ӌQy2$ ,+ؒl9z!BMH9_RbQG/VBz+qo(p+%kK^%'8O~(B/(7,6@ }&BW9v0V>rTiXXG:̭ƽ>>.HHޓi6٣w0&g{! t$ޑPh=e~P:.j$~VƷѐ= BhO䟅1mg3qN$t#,$]"ϤwޒŗaN^Rq( 抳8:!C-l>)[hs!PSxcRwFหهW}댋օC{v_RϘ)J&mpj\2.ǘ6+WwRlݿ LUAzeO DzC8Զ-%.XRiz$T/oF-_xx<ȯC005 :属9:vL=x`(UdƟ93JJl?_x1;9t1Ua_FSsD2u>p%Q}qVBiA=ʥQrժ 8l\H\+nxnA4-6=jz@YSRMf_ eѶa1,| G h&1+5ؔ eGKp_"p)ăk0'-$8DItMSD2T܎ <&Y KxNn:sPIQ3y~} ?XI wf"cE{ qa3K~+#?0`JUxO5L̞Br.;?\J9,p<^S;hS4LvGζH$F-Μ(ɴ`;Łpq8| t6^dwcf,U3ܸW7ZX4]'!ia?pv8@[*^#ї'2`< blȇ+tL|P])Oh{#k=@C҅Xp;MEÙӄ& ꇂޣf{&4xch'Aֻ$@#`F$1Mx_pkҿBFIqHW7}qSoqQ=Kʪ._LVF]t)0`|ܹ9nxNWz˃@Ȍe"5BQ72,ێ+e,0-=T9-ЋFE2_;='-$H5=eYVܮ=-Bʧ;c (.+)I/]"x1"bi)[" 8qEUҳ0s{ux u?cҐo\9ʉ:,6Z)x_rF ~}ҚPU6&JE9OpH(-!~g ?`4=\ BۍJdL+m 9r(axrZX\B LcgްO6N?yڴBɴi3@s3N@A^hN'*uq|ȷ1y\t[d:E![uWЂ T%`j` SXsw=;pýl2`sk5D3S:M! f)QGDeǓWde<W!F8|jZ2:,V9߶#QN3OC>X6"E`L[K0+m`5:g؋%L'?ZSWf~~LN:3ü %Ns.NϮ*P({}X(EǮiٹ6F7(Un>ZgR9O%x[g=0M XR DBte ]\;X ~S$>PF6'm33emXOyT]{h E&c>cWaU!#!K󮞬)FI<;Ir)c3%gGrV 6$Ip/Bsmg''rֱw-SپքM[J&x9cA\yN4ɷmSxUEj`Oǧ_+I;x -E:+.ze`<_+ aኟ5Rv' m՘IKԱ]{#r?69ˀ8kμV^qQ:(XHԆTpu]4uS%I'}O{U.;%SSgsW-Э>mw;-#ۛ fʧ-3I|Y$ ^5վfrĺhGDmr!hU7vpT|ETC*5kHR+U+Ao >>M2WѺM0P>AboY(Qڈ&.r;#K~s,M:F@wZ[<6\QMLpI=@+tP;v~(6>h~dRݷ[X &?ps9kx_8[y˂q&d9 B,&̠=u7?rY UKESE_Zf17P@j}O1{}"ǖɢ \ƈ8+Mh9^&MLQ:^~NcW~Ҭ^D'ngՇlZ5b)©/eoE=ܮ25Fl_]?"+>\C.t7%2} })2 1tgg-:~7zhZ>M6ڢ }ЎJp"x. If\4z 4Bmd+AT]r}EDbW:vrH'C,ȱ<#}ašK`#4vCW{Gā :_xTI+' pʐ|v1tۛXcMTmG'9jb EK]gf>5:l[xW+i01ĹAŗ=|R&ÄV?ۮFf\.|ŹTFoT5#4WY-mڶ90ίsPoIOQJ= y O͓`rcѢCI:ΈYZkgb E))JF),5-1i~>ϟ.}"3#k r&B@V WVs(\[!lJt[/}"YM=G<0qԣ,7ë8:@qWEW?32BUdK0:˶R+,\=Z*n}ı4?@H '&tdmWJs뒋MFXǪj _{N W;;UqU# +eBDJ!GA#]zF/}nFo*ſz'Ra0 VBzaw{[."h{Ue*:w֋\LO%c3wLfKұfދ4>밅pY&g= Bx9tRF F$Mu{HXhZ>'`ۈeX:ʩQOyՔ+žr,HzaD ] a,uL( tm cn:zHUkO*m+<0*Qx:=dsǩЂ`xV{O}* ;YO;J,"`Ri| m-\!tϗ]?:}J2U 4জ`!ty2E [`(kwv!|ŋ"4Xwbo58U v;oAg;((wXqueUhZ'MCDV̽!VMl^7?yɂ BB{]:2{No:tCf3gF5)T 3: zHzhGK4Sɢ((d )Ce_cڎӒ篁kZ{EGA¨!ߟyW|J9am$R?qG+6>Z۩\Wl0E5)Bd+fNj7@ǐ)uӽ7Fa~Ƹ[ۅԲ$T-˓AsȄbKɢt(a= ind:r4e2ߣt7rpc6r {8ll ?<+eMHF Z~53|ɓPM,=y~r!%6&(dIizb~Jeq^ e=mu1 ݭ'MKm%&ٱElo>qhD7oپ%ETr l?>F\oIF~ϳaY=_Z8Aк<,Km" 'Q!^XI1>.7ߢmy #t;$6PjjYs٠ MzXU0?ФAy^C&=Շ݋·2~4 =&@q]~$QHr n(F絞=-Cp`gU6\-*(3iHSudHjFOKL: 2; |m]/# a=\>YPI@?1}.݀{0&C#zݰ;zcjA{9B)ሶ`Kvc猽1Xɺ b ;K2UN@ϛ)ϜEnEVC^4T*Q~c` qu_O7@52w}ݩJ9AZfRO!7-gqn YD.7Z;lj˨``ݻm(O(Mk$- z">f{zZbo~X0 |V&(@ԦOj._|(d/>;@DyI\N&]aD8Wŀvv`5HѦkY<(D߿$c̄ůYN^qx7_tg= # H10Ey:2#F(Wt<+:(LQQ Z&{*1?8dC^0D3>bW7u :hXvtyuqdUM|l;^t%h )[&8jdn|? [ c"WmEȬH^96#o(a5jVwiܑ Z(uz -C(&%NBi$1%쉞Nf+‘|s &%s6HKźVz硃FiƘR$iԹ  l?FUPQute}Xv6H`LOYq&R >3e3qX\ў2L^!bz%.ex]ژ5zM k /zK7 #攖vĸ93iYǤZdp)>Uu}b#Wz/c) 5uA@K(<,ʌ2A~ .'o8&lSMU-ME[<B:(?78(t}Rig 9Kgd$dGqx}7 Е\`CɥKT L! ~ ==[`tG ,<,Y$6 n.7/εX7ra7jy9as sU;9C~QGjxВ-).>t/ Ϗˠ^ W$r7[/v&{tA)G]cxkBjZƘ%7`$zcgEcIrMؘQv7x)C1<-s3נmWnV R= " fVϊ*C)?iPhcM2CߗݻCOM%ɝăG@67ki%c67aV.nkX3?bR7R"7o[.*Wioug3}p8I"y!4 6{COρ|XAڢtlySX8; XXs+)?M[w%(SeKg%ϱ"dac9foԍfbY8Lm vs4񱖰"X Cs 5V.!2Nw͓5y :[Mß37Φq=B{۵z%DRj)\<`81#~*oڿx(JO~)Efdu a/B-ͤC8NRv{2 Z4ծBW37L:Br χf3^^ԁ|^ރ.ˁS2^<J+&~nZdOblj/^Xh]a8(8U-]#ۯ3!F:3du*㴾@jtg=mD%]*exqʤ[Z4IUپK?MpG`aX8.;T{& 6Oisgg:G\3zN I8B b#6Ty39,4RdeTܪ4ȭ `tR$ۉm >̗S+6Cz=<;@ϐT|0V)ʲ9ГhUPeof's` puUEɳ2N ӄg?:SH eHƢ@,|i6վY%og/>89pˇz7Opؤmi2ՑuIUK0/Ӈp|!#fu l{yk\ AW* dvzq/22cǼbsȧiLz+2Y`_-#?W"y?hQ//#t($* DKKdYprBF~:(+tݩ`J(.B_7T8צbҦGnf:zF@s'21[FharQQ\LԷ.`Oꄥ9msv~jE?.j)_ïCh!,h"z5 ԭХgj}F?IH&Be{ 7L+'UU>@J}H79 DQ-¹ qbH`S٣+֖WLyA[O]DfCCJ~U;* dK׳<ШNZ?|upne!{E #=$6UC݋jK5Y;V~tpwY'-~'_Smh# +[]`}v[2=KsoBP'K[$\SfE3xR 94zY2J/˜z/~nmoM1TɜOni`7zW{fcXD0}zZ 7^٫o"ĖLW٥k JXW&@'l;KKEQlf Flcl=y3v):{t(7jbdζ\?\ÊeP=vxxR@s?-OW@{!2F6MO xģ@te"]:#7vGk0 olkbwՏJB%:ng(0Z`Y==K M] l-\U6c-Y6{˂gnQ vOa%9BLR:_F?h΋< a;$Yl!'aǎreޢ@?)F|"Qxc$E"S"T<>w {<aHmgQ8Z8ҟGPc~tP."Pv$[{à KhJxzQcXf XP+zOćk\'o|%HEn,$(>M;`C7ƀГ?%Saƴ:<~xKmo"X+dȽTuu:Ҡ@cMrQZ_'$maǭ]Xc]ۇBȺKELJUM9JcᅼRӰy`PҖ}}qT~Fe9nHXts;{kI-/wI%O4d{nyO{g_S-;PKu㊍?_Uo)7ݢ`7@9k}Dތ"1]gKl'h(cq{K,Es̷+bm[ֻȺ r@{ uH=B?~*'WqqN0[nd)Pe. = Flڵ[e3)QִX@F{D5XCarT.=I;-/qXю/R? L =] 9,nhx[4BFqс_ru0^0<>}xNY7uO(=|4_8H s!ЫGˏ&~ӎC~wYr&W["\+?ח[;Nt21=0 ظXTBdb.|i!bdY>+!D@/3[.tH9';ƉnB>Wy2Hhx7vf5%yhD}=a~>2>"d 6T `((3NN XߥҏRkKkiC,{cZmK8Iu4䩆9phۣ ,y]Hë!ŭNZqǼ?|WH꣔=.: ,!>DqXSjSkVd$S[mkԑLXIGDFZ`1q ߋӁ֚YNeHJ&}/M0W⭒ ˏ@a=Ԑ.«Oɕ4'et񱏘l*-vqv{$7eԃ-'H3_,#|[uv/Q&v#̽ĨQJE<)V^4|ϕ%TRub( t49GҿL]ىy9$JXA}s/:$m5-"XȶGz(2I? z'+A3הPc\ϪzG(un-%RD99+;P}UD+'UGn;{Ԫ 1g^ o[jH\bFMߘ1PyR#`A*_^QAkW kK:(|+ds'0mٕnD1h MIa!AjZ~R{)C`l9!"JVW[>G=2c( om.I "hא&ޤ䫰ⶃ .K?v:dEO/̨EM\ڋeTӬj^QqL f45u0W ;)z"+d]_ٸ{?! ΨljP-@_]۴ΘM^ {1J9 Am!&;MC0NpMr;o/ٜC,ĔNme̓z'Rz'1wT]wk!n/z&p$4_FT3C\%{ mt7>!ʸ;8NnlGyQ|Ş\hlgczj1 pL[XP t^q*T7-nآ&ϰ_Mmx+q'Ǘ;n[ | u> ysp#U/El厩[$Qpk{|Y&b|.=L鏘`@RȰM;efʳz}rc[oeCjlbb,w= &4&]_ + Ri }R**6XӺ 0{ۍ-=g3LeM&MOL9]}S5b8OoA}7q-iO,: װv*Ѹ6^sw^ݥ:91oS w\xNx-+3嶄ѥ/ӥ^^vULT/^?⹷KX Eh;.c ? ?R+PZ/]POEՇ253[&CE("d 6_"N+DԸ2cgټSI j.c]]rXOdwLZ~`P=3.*5]a;︠Wy.x3˵g8=%Z@cڃy0 I]PCRS"ePR#4Gnܙ4bE\}OMC9i;2`;wOղ;ΖAl[5[y? jN9<3+6`J<,/.u)Agx.)_]K ɱ 4>}xŜEqH/DfIص~BܸM\> PD`!&;wolwX JRąrf-9{r(QUI$ ,6_dXv_yoJͦ9^DkF*/M݁vpKA.޶ Ѷ{dKO[G澓q0&DS6bݕ(pE}%'*A8_ uY ~2NQ_e5_[]W)n eܼI{S.C^c[`kh;ZF6e玼M6EusSBg<ߘN#)B2 v6ID4OGc2qld`8bIa1Qx:E, ɁeǺnZ^ B*1bpo|$9K3RWy!HiBեThk4zux7HIC?[Ŷ}tZݒkQSKqة]#Uoi.E3Wޑ]v0o3[_oQ1sӇ(o-9ۿ&Qm#z({ Z?2 T M8?2lOv%|'I}>\R+= ,$>Kcr9(l >SQǪ +A0Ez \ZB$q8\^$)='d)JW`rjXխ5'RPNMu#Štz8qVAqJ<:;'_y AC>>:‚R0|3z@|s s{$8+Pr}+i: $u̵]n\ {!{ΤNz@:),@JXP-P'hT,͜89 mHQ2ٗc`m1CƑz,p"UB&eʞK[L<&z /NG&?/%~GCh53! X<?+L4 {0e]tfg'L{Aqe"C*(c::mCGy<|CbdjT^(oFZwķ άA1ir֮0ּïj;r%s&䱲Vx lYγJʯEU$sSHR}3Z_FkJc;@&_$㓗!ߊ*υ5CZS{( "fR^c^7H8<-  <0v glP~)ø̬0Y  XY8,/K)[4NHhSE֩*@M'j<״,s$ߜbz!$ϼk-;ob[E"< X2aduT$Ф۔7) b4%26k`|7a7I@ǔbʅEZƻN{^RF= 1y.CdٺOqrqatrbe Hݜ=S;bHJwh:0v6-dxZ0~7 !83PߛE~5Hϯ{5?bJ]}6 떈UgmֽX #\jZ|m:nVHujY\ͺ3 1K5ͮdv= 6v 799α!4}l](S_>Z%8wٻUD0o2R*f_|S ñ~ǨLtVs&{HZn@ܴ0ow~C-qQ_!SvW}~_[LP ݭy&/CO袶T,7"Av<EboOٲ[ROझ[FDz5:jjG^hYZ.#9' .x9 Խ ,_rPFĊg009ezR~%TYx#mSnI湲q_4yy_'>wWp@=ɯC=_w^d8`.}@mi)KQuԬ'ix%X\Mgcn`l߁} +ʘlQ9[1',X/6g> lCxRv\tl̟rsIď XIt"αxp.T =P<^n^i,;g)NLT0mxzgF5/gءۗbF~f fS](2dB1%'ÇSB# qn^y$T7ǣF N"+y[ve]pdI•&+ bR/y֢u{nA&VYT,L`ظ_ SL蚋6NG`\楀M"O1(H^g?|5gR*_Z;wRvKbPm]=BAQA93̧ ȑMXa`bt92Pt j} *ͪzkНcRaKׄc]0]gJ)Q7;ʂ'jʑCXz Szhm iK3,O!tɶ\uBϰiSUy/ԭ|gG/ #G"2) Co@|FhCb'm# ",~a\]aC@fԬ'l^<|`m [+kŜ8K?Jz)UPEFMY(үz"#=༌=&$5#z[Q^8R~@W;D&'6bB璗@h8o96Ŗʯlڲ^=l$.>AmKmR:XeAh1ҲecN5px_@ޚ)$0TȄh29 ?pJ:erlC&P:]5  }T?OMtj+Y 7yK>mfhfd))&1٢q}W";pbQ>AK'#:#'K[ m*,œTg˝Ɩ1)Qo^JefE^tZD#-L-C"5ΣΗr =8) 5h.+2ed:dZa"}|Phs|\T#QT:x.20 x&>iNJ-+ *6y( pHǚت+Y1_p>kÿ0h\<Es8Zu+p&C(`7JQh[j-Zݱ7p_O\5L4bap=G hQǓJSڸX!9_HB61 /zI\Q),O'gD kG}G;g$mIbJF#+y&m< }~`%Xꀂө72 =ug6ݳԗDT2fā8zz~@or~9w9+\S!`zoތ}(% G=vk3V顽q27֋ e,xyiQ{XYڵdou|9קJuieq_Cww6x(NHD8aG?4y@J 3C~rO4 AxZф\ $!<5Ngg{wa&KeIE|DOѾ_K8:`݃=~wI8 kxg^s9&6 nrU]Y5jź'TxbNj]>&:{­ZMG$+0,`Ώ!(`F:vR:ZXE;@e&OR+yD*\b}y5cK 1G+DIAZ1 `z $g@Gq f+j9@|K,( $AT 2yTpI/0Yv(\~wPS19Ni@\<~DWypD]${^9fA^UlѥG1a Rғ*YO$sDjD |"VSuD H?_f2B(.j#x\t B:d;5٬#;'rn2A0^4. }K!6ЭFՋ6I, D2"v[%c".F2 i+0E> 7[u-$#b 檦rh֥4-5V?7Α嫊ywSʼnզ2%(`Y^&A v MT\ [ဋh`n %{3NS&,tsY$pP J'`XM8+xsٰߣ ]L)Uva54OrCǏBI9E%Kʪ0Aךua)oD>˩bN*I Lt4c73 OU\I"Tsjr">O,s\UqiʄC}R'Q^Mb(4Ӽ 8<EQRNK)&bί[qgYtfFy$Nߡ_0&z3k ܛy&f<5 !TKlݷ!OƖ*znaT[  3x3x(9RJ6dеě>O9.\wD-]$COl'Us&_LZߨ* 8qφBro| #j+o&/S$F l'cP@~%uˠջ耆CG̎c+Y`e gCo<~41Y5>??:2ʂ+ؽ?M6*<%>_|㱜 ,l2 =7}%+9De6hSjz1xă2>!k1Hȫ&ufoXHv] ~96Ej@N6@<]TPiWR3vČngc}2 ;cBCO\*,q__fxD, Z%XbN>hf&;yAAf)Z|OE2 䖺|eyF540reQC^01QMZiLX<8FGM8ƛa[ϼ1g^.jxy1'_0]=ECN n#N;-DVHSO( e>l<.+sR`SJ_w Jgxh1Z1ܤ$5 kӿ`,.dOf8'Jw^wm f>8lզrt4 tYcU0,Dp=F:|@K-N 6 ;v]J zGRW*S^h\Milf$ ܺWE]2tXhQN1&鬚-&:.D *KE-/c}fk|x},Nn ak4,4t+W7: ]_upudv j'kԙRH(%1 LrHM5u@A kW{U$6_p(7\/1)QLqћnZE 19?@0mɍw yo`7;:[̝|)aǫ᎓j3 dZ's iR̹M EcUQ꥕o(W3'MD 7C#g[z[%D5b}8GAh&Wmaꐸ&ux_m( ײQ6zAzƒأ]{, 5YU n%PhǑW)c.LҸ% JWCyէbG¶[߳Nt^ziLXji[mJE{[@yhJ~ "](>=3`hOB8*QF8-ΙTSaN? m َ^x4ɵBa.A~|0GPXFYJ~@C5u{'hD1FҎӓR[:0L3Lb[apq_ .yIZ8G&P)$B$lrdij>㙠Nn#U:} tۚ.nܕi9w?*@D\_9,۟`Ƣ36ᏅG1a( 8f+.dΒDMw:9>!7!KZa;͇Nâ\èBӳ15 3ؿ!eNy.%_5Ni2]6] }0b] g MxFX[c8͜m49(7[4$VbW&dq\=rRcۻWbA;5~<'>[GUx+&9)kJ߿dO?ܿ̎G4AEb%&%9uIw c?;(嗲$LqK7H=BIUwڶCGoD^H6֤&Y %Th43<.|ci{w)g[)Tmؓ' ƃ0ÇŒ;D~9~`,/M"*^ v{1#¬СLӈӶ\umgi7|Ϟr@Fu]\B@ !~fr`Eφ}ix,J}"#XV&o[a@=Q^̳:YM03sQ_YT_Qkz=]*65A6FHؘe:9ӚfA+V>A,F}nʯW^ ]~<lK=_wa:r.5(8U}sk'O+uFFQ3ѬEX>}'Z*2\z*#R&Ia+0^'`8*#OJ}v[Nd)@H=ԅC 􎞷w iVvFS;E̩fm.-/Wk/0ń!:`UaF45B䪱F %`~N ;odqnen$ӱ_V_i[+I%/ rgQmH06Bp>UVq}i3BJ_ #\=Bt^D T4I/*]7Ջݛ)sۦ@4bP>B<ښ@< yQ)L͘Oa #73qU]>K]͍:L9@99z೟\dwI/,` 6_^t3;hCN–/KM[F($CGoKDoNI 'FAX,/z+" ^s5}5yBa^)e< b<ӹ\i["?BqgI um)9TeӈOZ9`_@/ FUQAYPq`M A==duPJ. Ix~o uWm*Lv"sF{"b#́hLē&4F P%?Fŝ ׎Be2삋>(ҴJtu])[hN>I_[V<3F=~7IOdl~pTsީČӵaoozr9RKXY?L.[`JLaX^UyEg^dj=|lMziAJ]4s72i6m27eS'szވOJ-dx6dʾaiϝg0aS%2~׽*ӘM1lZct^gy%թ5Uϔ$ ; s]]`e@Ŋql oQDZcJx,O-t`5>i}4If85xݦ6,r|Ch1,n:4e @K!SP'? -]bw8wX @u(Y.DӓpII`#3I=`-=<[uX(^0>Ƙ;؟ߑ&]yٝ/2/lb?j[m(rnRR҇-9mԛ@ 7$ϴ N ^mrV%m(EBn@Ǎ楘vJ.nviЂVzSkͅu1JI=CflJz&CNHsnHl0 xs,w9ZڶH&Ԑ.VI' z++Oenѝg| LxPȾ}KӿP7Q#fkvaiDi5kM\,wcD"~ 6^p{oA|<>sjWP[\?jF:p}2a Me=MK,tx?x5/b-$.?Tϱ1@(cj_힎/O9KLOG9d*bCtJSyeV!wI@qi`~n֊\u](H$ CB Aa3vz6"mwqtNn7G b&[v\|95~A@d3I('Hj2Ζə % ƵNmuclq81ߡ Lr?{{(*<(OZU` M]W7.k(eij.*ͤ鼇6,7L=sD;zAf8nHcd4HԩWS Rɍ/e=Y4Xy~C9*!/"/ 6Ed "[5[?+ݶ& *p?Mܵ HӋ~rpq A9mit ~98hs7_ʉo]+=. ">wR|Xf0Ψz}jEN}D<7"e>(Ȯ_p-7*EA#ONʝƦUjqM w]ej2ze;q^ug@c|U^J0"!s{IZ!Qz>k᬴ܑ /Ay;So+*Κ=XPO)҈SǛЂGf1ؠdLZ ] A٘ia"3:@M3`gh~@ߋOئG p$GY X ks#O)?04Va4Oy7k1gA=$K]6MLD/<~X\ gʡؗ}^4d+}A ρЈZh2oI{4MC)ysԧq4TyhDqjnۺ)8}+<{ +hdũ끥x=8χx {?K !. 1q|˺6܅֥;ޞڛG.,Yߥܞ:4rzW4X-mD/WXb{wt0miQuZv%9 4dX2ҝӷ|`ѹZALitU#I9k)c!:鐆uDGuiA{e }J"jFֻ} ugݝ܎U>׵f:qtwy+$F#y+ǀC]I|A O}3s%_[9E5J8#œzoOfme:u98DDjޮx.ކ2@\%R,mi0n{Hrpb VW ~{gq.3G7x%~i|F:u{K‹S_/]y8oTS>'|08 _(0c>#__ s'~cš5 qDApѸp}-D-l0?&E_=(q } 8%JQS:JDduѷcaVbQ : |1Bgއlf (DɊR~CW|W2edP _3???f*/hlo`o.+R\r`;gGby!W2Hخbc VrQaj Y;íkGzd1SbO,Y4뎍gpkNЃA{L*ɭrtrC+p$}F}e8zjLmƸ*mb3)LX 2N&{ȈɳTo%EzN_/&(`7ᄌZ6tyEջPbWxF=]W2cqnЖA*eub62Xń84+_׻#1ia+?Z d X5Ś6vb' ZBBLևcTRJ8ӊ ah6”C6)cE+O{S|p-51 "3wCo j02%>'@bs.eao hAyouZh,L}o2jz| :9"w!66euG;3OÂ0 )|lha޻B"cF-W^)u<ɩVLe<_B8i3a25kT…c׷=%wtsaW"R C%?7BF^|KASP~}7)?Q220JY]ߵ') u(u?\YmGjz(@Cape:jdw" Urw:TnHbגc.[o1}i]ޘ;ݦ(Y$ Z[ʸ-(*⣌{Q0X/[`%%ܴSAmNA/VE^xc6}}X0Ord1a Q*<{]`3Hנ&O/'5ysvO5<gn wU<}{ Vg PE@ ojYwK:;7|Y>@C#ˮcg>;Gd3 gm>PP!8[Y?~JJjCgR+FGŊ>kmz)rm[A,aUSߊ N.&6騻1ej7i@sS6'0,hĮKdOM,]MϬ=(X],@ }',0w„=n= EYiC%I2Z B^{M;<=*\syv PB[qOƮCijC5IǵfRɣwP6*C5)RCҙRҹ$%=XY (2N<rrd/m^5P{z7r@ja(Hac~f:IѿW'_k4MnR@@ௌՈ#u}ןK-j"` dNqpUP.=;dT&golIwe7Tn2>Mu1lO: dţ(dI͈xE)yP_VlA.rGæf9tMZ=V(tvT8)J/.|T:Sى`zi|N=m'I _$ccjXqF8zBSR+A{3h = ̐bgTTj}/XzRtmMKvްįٛKRfAl/H08d c4DY7az<\%Y3'd@ RB>6i'{GU/; Yx2͔R^IUk`Tw) 11DFdzeJq +7 - bNi'L]yARcWxz@25JKƅOt3@3Lюd&i(2/t6\L`.߀:Hk|}拮ލgqJpz&4A@;K&%z.޾ 3i4%40.=xLc'C>υȞv{"$ 8]{+D(S&!$[l~H(Ӥm}Tw:!,iӑ+G<5v,w4}}1tYƛ -濄\58yPP2RMXKVOѴC5;}ʠ+Ba:sR8~>Y_oJ?'&s8$(|M#Nhwvn ]i|>u:@NU_I^Y""!^mr/$I%n$DhevR.g(h9hQ9Rs",\L|୩/hR1ifQsݻ.Ad']db i!TGk f~ ):H@26,l5e0q+=voN% w.eHk~FM9i"/d.%l:/K0y6nYx[+t" pxWV~1~|Rj.'Jѱ e9gч(ͼW-cLd'@uART[N"=NYC3I+;W)Y5e6]ɮĉԝ;RQ EP-Qp섍$bSt@wj})#b ݏ-> DN/Tdʭ p>Z!\jlrh 4A`t+eD鍈rQ̝TG˹> SzL/ko/BG!i 0o~IR L"wZ4VN~,*4Q#N ٤HV4}f@&?X"| XTcu\l*ftѶ??@~q[;%(Ù[].E2䃿 p@Ǵ!5NΰOJPCv="|~jr7HX߲/f2VGovVuuL<}4ܔwg)K1Zm4%8܀ʢWu*cSj?V K=yƪ~"#7?l&Utϡˍ1K{ +st<@9us 8ŸR}wPQӉ ʤB۳~qrϚy\Ov XEʷ4΂Ġ@4@!(ŏ>z@JR3ZC uu})zes̑gHU):G$!q؜>gUݸ;=î4e ]fͶ2Օ-u$_ j%K^9+J:֠‘p;s˙(h]4v# iH3 i5}H`\#'BAvEBRP VT&hR] ȴ|H:* 7I`Ž>mq^;|}|]حWzw .dMGݵ"˖.kA!ٝ'Pd݆084qɤÞQԄ2]m:V_oï@L~ q%cԡb֞](SG)Ig)}-v^adL u3PAzI VSD,WeW<9>aX` ̓g`ڞݑ\aBZz7kq"}$C&CxF堰l՝|n{v!#~_I1ti ^l{i_#zQ'noJƶ sr5y(Kz@ h4F-9*9R&:pp1㳷2m- <7d=z/6bRkX0pi%? uQ14"HB*`RňaRg03n;4Ԗaf)&gioA<]/ W07Lkt>}obR{xvh\]^O+GrM%~ѽ ک6{"d t MJy[tO33!ӟ&с+P@V EWJRFG̈!Bڴ{P3Nk^b~YD~ n)uڋtp_NGV"0*V=?`7汔 jrfX;YmfsYݯ =V^G/lpBZ:ԗj<עciyw!Ô^SE}YpiD &"{0=:3µ T\B$AD!AWgZv` JJVlnjMz;yT43l # 2 <.1♮5ĥ\7 t]?oxqz#ꇎj|Nz;`Px`\eNh'͵EXwӟ?Q?yc_-|vlu$XXws&Rr;3$;8 $>nࠠ|gCLj o$%ԕ*,ݣFG-%1!D (.rHLDvR"c.%Gf>ѤW'˘reA6+2|Q'43h Dtj^np(oqAEc^we}6 D{:1$r{:Ķ gq { ?P'~JeөH+@#|9 ʣKZbЧUO(9Ki1d3=2A GVbN T *u>° b 3`Pdd:E8*q> l ڪ6%Jh.rDw'=#:Q ,&+ r۠W T6T{]nEԃ? ,$!9 *Iүl*zCu`CM3Sq;MC ڹ]w2k#3XNHvE@"90n!F>7uckZ2u+r:qy#ԏ&cݬI|8 (nSI=sF|Lm|ߙR$E{<hԶ9Z u15d^_ѺͦwAq{|C XL:TF1{}~ϭ:p*2öKC){L…c~"ûǧ~0C0v/Lv-1zhX(<]J1MPz@D,jM?38fIyW'03w 51;~ =-NZtj }l{Ȣo΄88u}dBYP\ )Y65[@᚜]D(Ut[4rsZ; }FhxF[Z|U-afcuE;0k/Cꎎx2::!m̼HP[@o$q%-5'vB\p=ʙWi_B=.7mԔDC'X4=@"6<Iö7x/@bg`a*IoԕS;>Jn@B'CmC0ws#M?o=:&T%;J.ғ$FbO22Kǰ~(UT`Ve#rT~[_҉݃i&nf QҴ203f&Lltpu ,hq#?e6&3),@jRs#6>ʷt}nB;dk|*:-6܆>(2Al VO]DҚSHZ&zPf7 ]5Nḹsaq(]0U1;5n<\<ð!\n ]uZ5y~T bU~2M=~fk0þ<@qx.{m:%L'q8TxP).Az]0wĹo} KS.2(F=TviR[x!.4)Lɴ{35:hWlz0m3aۮza>E7= ̟NnOMB|Bޠ*ar;bhp)=f^lA޲A I6Q.T'rKi)%Mŝ*s;~I9X2 ˶(ZT=xhdy^%^g~ZZE^X0jv<aIge͹Fl4N2պxa bOA^;R6}I [8@r=)}  犎2++ \B\ܚk̗zBwEx{+ Mpsx^r01L3 G+ˉodg,bs4Fa`^ l aa?2*8p $H<s-u_CF(gzo3 |O-_ybPfVD;xM18QH [ז L UZw{Rc1yxp j$O=T9̌4R7Bk = f? /6`:hՅTż E#ي2-F̀2hbKaH&k-L c6:D\*1:իTUCP'9}邏!}Lè4V>TXr$HyZ/%6vgBA *ʇD`PHt>? ޲ Yus1zp $=xIzՍ4B{PeGN,bkGTB_{Gk%[꒟hqI{}JTmj F/,EGǽg+4:)q= hb9yGfPOY eŢ` ;9 ?Z<=XA]PJ}ٕT;P-e.Fu½ɽ-4%v3bKh#(ya$6,#4P/&+x@rK2`EZxHu0' R:{+J&d=Wvr5'RyGmgd2FBl!Xp ze+V@è16YҙMZj"S{1&b¶y#|څլ0[aVO~$ m?q{)(X)ղw/dL YЛO)Bf)\^LP@_)Ho9Rlg#jt6YC:K˞Sm 5Z!oeR) xb;Q3n[[UmxTzIE'xqu{[*WnjucS2VS}rfb'jm9q&A!ʾ75 ח_yxfR^oLb9VXCav?upnp ն{3=򞔥T%(3nWyOյ zaC"T$z]}5Չq~ϣdui7f pK1c#s׹G̏UK6I8LnP%aC=zҘ(HZHQ)z2iYdAkKsm V];+O9F;|!XWWSGpA^ 1Z=nG< ;9J|67DtUyx1#*AiZG2p$ta0IETaC2M26<mu/.8 5ey?\ׇd&Rm Tk'`6x(? BС {KVmJ|#yy9Fh:`sSZ]F㭶Ƭ&qOc?$?83ܳxC5`؄Z@+/JZ (!uIrִ4[clLOrï!eI.;hr47W3ˢW  E"z|~2a0+/J|CG"Y49ԸI)Sso<^[ȴ |H|i qt+9G2R2AhgMB{WC#ܻ@vڅɺhC#9JAzdkWg:N: 9g׀iΛ!']$z ?OSZ l*Y\szs鳓Zb]r3Ѿ,%ܷ{Ӓ_Mm _" ȡqovL뚢[Jc? D$ hdiNU=_ }r,?! 7p0nKU035̾ъ9KIsal# ж`yrY\2_f4Jl U%t+>r>~y]7?y5Akj;?2vq)SܧVD@zks'4t16bQ!$5.ACPPj9AU[Yl±qE\`d'jKBg._mH=a^V~^c">&g#|TInXq#`wY!;3_t7$b'դ{$@ bIX1m. )>$E?BIWSzmN%2}Z,Mm? b﨔dCnŬG{i2̐ 0(1|G#i '/8v!Xƥ2far -Hzf>-,m'…-# J3 Ep 6HaNBfۖ /qR;pZY1{d`Z8ŃK6 8(D8[b%Ij%)ԘiF)Hx@n+. J' Fj$dNX?]ƻWeG_`/ <~qYoTOi]p>fQ4)^C : m'ӛ'?DQس m:&X$lb9y/b~`{:ru'zzGK"4Cߨ <.JWIO gsyx~Jo9a.܏j~`&AT~5-⺉D׮ܚÞboe1uZ)KJ5`e;1DgAv Ո ܱ d*͑W*`L@j {gRƄUW#_me,-vv@0vα]h ,[j"yc|=4Mo;$anо6[(ģ `H5(򚯑$h/ɖVpq*KavP]`mBV'k1Vg˭<_NαS(蹷MoQ;j&_X$7ÏTWP&m`Bht3DXdU@FKzAqpqSfT x+ ѦəQ96ٵPG|+Z3wZ. zROŔg ~8e'b oJ ld3^yNKtKė w6 OXv ւ/ vd^ n?R3fw`Ȩud~"ћS#NB粺Su|<9:rObeH鈃ބ6}i諕8lbqsrhHù [pU \3']_MS/QJS;swko+h3XUbtP{gx۳Mw88fy`򪉊V KFU`Uu)yu[`tvlfp^w1VƋ <Ȋ)>sRQY, ĖYY kI48=cIHp|':i<#bngxߨRtT #WC-Bp;iW׀ƽOk} ֹ8W+YDDM;Լ_Tڂi` BRoKhA|V$uyhfo+gKN; ZF.Q`cDLٶhC+0hG$~W=0yWt5-`'L9d]Q6Gx/fR)&OMEnk?Nglށ 0r{+dSAznEh{##8?CGG+IӪy#ŏTMkn4xD+,€ef4&DW]̡H|fT,\Ti3PTJPt޼hDeӡژ~{L-+LL(dDw=3j<-\=.;I]w{ъC2K,+gT%Y=G4I]0_BT+̲T_DQB)*}#Ky|.S#0:J@;s(?RzEV!X3mG?w61@ͻ3ޅT VB#&NZ `uƐ#g,Ƴ)na[І.zS{?9^Tp<5={cL*k5|}zwXg%Y`jc|shFSFQ@uϬ9\O D#P"J@#JC qOU0 +1{4@xr6EJ'՘5{l.Μ"g]]&~U2{jZh_bh~RaUN)s.dY8k̂˄J{Z/ y>M} Z:8ʨʃOF6YfǮбQYcy1sK@ĎtQbP^4ҚN#hf&C6:bO̦7CF ˍӻjS[@f.x ;y.C$!8Ėl9mB?փ¤v-TqsN:)-h\ eq {mr 'B),:A%pLÅ}ڷ`#-M`LT(16)鯌u|8;yT6*f:{I|-0"\/Q$ u o0'VLviz!әa~A2%ڵd0_8Zm+/kK C͠ n[7vOȮ-J~q{/%'\p(;jmbgXFٱl^qIU"2VpR?BPCT;?ޝG8TB@~r|2xY 4 D\|a+R; )9 )aMXyu0;%.,S~ *[k*c}SɨG ajrJ_[9o6=_D?YjCL0A>\}95i[CYw,TQ+)al"P /-n 264R(*be4%ޟ S,Ui懾&@'UNɈ+*Mh XP,﫜L*0ɋ ګ*}T>G $>y4q0Eߙ"Dm ѝ[:@y6U3nΏ\ ݲ}7]Tu>ʕLG%gZ0=y1Y[%%7ϸv *jBJF1DZ2Fl7pg}m ^[ L"^ɺ5¬_ڳN6QD쟒jgxaeV@hEM }dUxZlŸu 7p8עÀEf.sD\FS_ ,}x=ЦO!^ HT5 qcaѷծ n ?Jܼ #0U,bgQS(Eiw5!~"/R76Y$v]ld{x {džh`BsN tLb9ome8b#"i&7p]u"Nū9q4U:肪Y98-!mh6\|c#.sMn<><r?5ʎk<M8>zkvEnwUCed$ڤz,l_|f|դ+pj /wa݊I)"KLvX-O,|ѸuD1/u`x h5`p,2:DJ-,*:ӁLƂ/& kyZKy]+Ch%іÿl>z8dG,_8&v c!НWnTӅ%bZ##S0)7}zHo} nLF lL;3[ 6Lzp=;p,_QG#H;wXZr!>gk)``ۺۇQ Ģm]%ht;ڍoK|l.VS;ůH;Cz vqdMTfP<)wDB;29fdFh01֢:VT筩Lp$KVl6S3Uj .NxHA1n!-3bQq9~t; `:lEqRMCoMnlI ;dbEﰺ<:;q\Fg84-0phkl2вbx'>S 椯'd"Xi3={ZLBe?wQ;@C_Xrj"A<0. }q|GFq@?MT|o{9:~M 8g7/\r6,` Xۺ.ֲۚWP!l# ƿA˳g֫]cׅgu2!_bj`w" W?㗅'k931-nOS򩱭k@ |6$Yu7F4h(y F:Z&1X6']I+5.4l Um\OfF}+]3'vVz'( lM3!!L+qVKEK ~3λ[wYy"F_nLoDem#|zƣF#q[ot5 1=R^uH*<峫}Sl8ց`??/r%-V{W hZeH7;ӛZ/ U0p/ՈL?rpQO|3/2%ې:l.n㻞4uC'/GR7+GmD$}]q聝 &p|P@iV-į+% TS냟vԑ0+[((`%kk=mocG--;`RLj[|w@" V7X E p(&aűw* K2 :SٶVB[omzD5>,Κ j*4Me 62V=h"TDu)0: =Ks2FTh֪AW.vK ļ{\THۑ=^ln,r1Zvպ+bb )E(c8!BAr=jGtyo\e$ñZfw/6R;!͘ӻxLE"2  ?Íћ4˚5]m64Opg+IVyL|0@k~M phG/1g8BNǜ$F. VznGmHRe]Ub)E}ϐ> 蜸~VNOC~L _e ؁ ëpY`M̝bOdH,_uj~ְCZMG\P (ٵYeGog|߇UMF Ǫ)gBy~s@HoXo#k+_ 'Q|%HkrOL'hy=^DIJUlʥHEpŀ~d,?_kKbnN,տJ Gm! S(e^نـ_֕+OAqx#&s Y'YXކEpθVI0-5>~$h<̀ Ãd)ɢtVh guҹ64ǐ%/ Wck<Sҋԇnp;U#_Qר}6fZ̜n4 }@P?gοS[:ZPDR[:Rq wҟ O LCDYIT? ~hE?U{l #QZ[o->P/Z//)b}vWV*E㧿B{k 5b21CĪlE9i7_cNЩh >_$qqXR۳k4jhv_ fFބ4]8V/ϐ!;NQDk7U% H:l])mZ/4U6"VĵiPjCѝhK`=Ww_R`lS0D:J;ޅ;'Ǧn"&#-;4[iVeNϱJ7 T6^aӵDM$eZnI|"P Bf%RV|EQmnmBҦ.Ep`''`|ѯE5sj} džj[=7=̻'m0oד=+ei#[8VI=Ň8Ѿ^eboQc}3KIiAl or{nW\ULÂoG-ڃ\ѓֱl).Uv/A>!YAT׮Orٌp&{[ɼbuݻ(LWX֎ܓ݆5͘wl/q(!NX_>.gah#c|^K91Ƒ.1̄ZΜ A7h7!StQek019 g0CɌPax3.\a9ӵ`:ܧ0=KHD΂ٌĎO56|pV!Urv}+d?2*X d˟I4&{m;N4h-C|[mt- o'Į<lbĸ1$ӊ$MJk %VbT=!,h&BGy>l2S~_״u_O뇀WEdFWtTɮMcDvnШ?60"@?lE^\ F64^8 ]3EHB]ɶn0{ +̜(ρy|l2HξF]@tmsyD#Kts`0B=HQcjTsKD2'>v,o|LJ&q ] }Mw|Ǭt8ԉ{i-d!?gHC͜FGq 6N[Sf|*~?3c5)oE[7oԖZ<&rzVu} βWk Ucƚ}!?Cp%8oҪ\#&d]yw޷h$HU%J#9󏲋1KseKR ϫSx@RdYC 3_& F"ƙηQ?6i\9pLd<Ckζ&w7({r".;|y'9pM *c#SM `_;d=M*p`=w6Z1 {nAXM)(SwX$Kj{iV8}^ևrޙi m?PUk{!@OI+?e7ybρ˦t޿mv{'Ga)q[i+tv\hϕ]?<uĎet0ur myT@!.rQt"gֆVM0$d\/,g^lf Pk~aSdOmW ŻZ. Oa1U89ǞfFȝqv>sS,A",uJoD,ZB" Aq=yvlvF@5~4eB.˝@ y4PvMdABa7P*vAP)c6+1GtTr>fLs?l@8'.$VJneVDhlx%յT29uA O` ta 8j*x͟X"n3iZb=zߗ_|R[UY{;FK*?ϼtæg.?R*փͲC.kzmZ/!TJV˹Q&lؚ!SU;|P4dv$G1m:JCe,7BrI*}.|-Jᬧ,u"B{nWXE\x!T[nV21{Nwd!#D|-S0eaBbPSjh YdHLBwS{ !0C:k.VU%tͿm0Lb}-kᜎ!TR5stVIy|U=]1裡kbܕ^W10{+Q4~q :2puY zCc$%DM7ͮUR:B07 7Iphj\$z:CHbǟo3$pK$>^keDŽit<_ѠsV|0#0߃Jt Zr]n̔caP~!%)Q#hM2W}(* "^Áv ɟ,vK/M&A5Znꮹq,:`qel]tj+8j " ,M#z΂ΝI{*\}6ؗSЌ/U DK38P t=O"" ~ k,Nlo;>sjTuI[h_34#;aW' v73i!m჉AF7Qt5z)6L?U?]QΠWlq/셿} aV 'X|1f ljKG5i'TvSMFwxf~[FIj2Zzp9}Jq."w|yyJ% x`zfDQ00!g}:8!4OM gX-3xF @$9s-B{ոb?į`1 OV0;ԚaOot=uųJ+@[Pe >e,and4]Xh379E."^7<#~q8%D6~>Ҹyl:r ܪ<^ I[][`/o(I㶝#fQ(F$*ޤxGaH>ڑc&X7/'="u65n :+,߇HaJ1~:Džߍ%{6mP+i'z)mX)-fojTĘFqm$X#OZY;#0,N%>-/4}wn&s N1/u י9kIɣDωQ*G4uq  M:9st'|8Z*^տG]A@R6$k%TGv=a+PPنŦ#bȢ{fGZ̃8-s{("`9hOA7b[4Ċb=|[,LTuZPU!o2tdԱD~ Sdيy`zpt + "^xv)[ cX~}q!Ewfo!Llc[KAE޾'% ^jR*{a?>;]WFPwQ2%7.g_|.cݶ#s$Ӷjnp@&SAwNUR,0J]IRH\]N3Nl%p2;:`vG7{b /7", 'uW&$-C hC#T,šxpU;5Sʷdz䛕H$~p>,9Ǘӫ[iJ,p_YUi)=9ѓmbs ,)|EyqqNfXӒtAo΄"I6'AwGA~NloYRlDkcH~_ #v.SѓMC/zwD`XmMҫ -D"5_-!7 '\[?TɟiA4 ¨TL@5^<êxrRzqh=%0.`5iTlmDr:"AbOuyXbc^a `y&~dSo9:q nmJ chqB1rF߂耽BwkENӏ訡ӍC~*մ.x*孢07Z%o4"XJ P3c8( O&ÉacXZ8ys ?pUd-w&PS3]8]ZJ㜥eyc(5?!#>m=x-psUp{*P}⋇Y9˭ g$ -cl|<8ι;AmX .}$vnEPG|&"s.Dvΐwh^?(Va=iQmOU$2G^迀+( 2'HxE~mG@UYG;^ ~p# 4ҏgxy Sb>g YЄ-h˸(( dbf$u 2D1wsR5)FB䬆c#6$ '3a7"pfc ;A/Ku`Eֱu*QJDg |_M1O#љ/Tᑤ$m>11s Lb!ZWD-zI-Xd(q'Ck XsI߻Rɹ@`^TTv=D~a%Y.t)gr RjFzp|A*vY72nz`@4˸YvPa "ښ;3ĮS1Ц%> =Z(衉ҟ/sٙ,-(SzJ.Ia>צ*]sǴ[m3NT=`-&k@ɒ %[6Dx[!?5oiA֮(L&qt^.6l{?u4[˘Md5FFE&LFN,7։ h6#n¯27= GNז( Y^p{$PV@)~Vw>8 O^uu\ 493Q ^T\A* :O@pMV=){fpL7drP9e=Oz̗~3ջ<C!<)j: 78 <ѷ[}|HqSI`$x< "|t=@? 5ԅu;_M7$ +c"ã.moΰ@5Z?N(&:Io&6J ODfMLNcRLm0j@zZ+ӱ)Ya)hSEG⣲֓Ͳa][}ѱG*$.1>.MTQoʱ+|od&QxަAIm{AH׺G^Y6`8Zţ;M*e6 ƸwK;ֻSoi/Bgs('و<` _v-K7WY/KГ̯[FiIi_2_"ҷ go]73SEyhkt54`z&ixTHz)UzE2jJi]WpDk#_ZbeT/ӭO`t:mA`Qwwd.;B&n⢮1f"znRr5PW2:@S,C~ Eޕ" X&&Tξje]=s~#2{F89>2W썥WbgU4WC0Q8}Cnˋ=R}f+\~lN U۹PteB9E Vbc3S9W ćZJqRG æO\Жƈ퍱 "ĺ*;&Sh.B6g.*a`;+~((5HMA>+4 5ȇ1\0FWǵ78T ,yQq() $c鼮k; mʨ0c"5ÿźyP4DaD55^GQvT$J#9vdi^cIdž+V1꫱2&XÙJ);w|y}Wmȣ#xyL6"ץljc~ֽ?Wg ܲWy/"V.dN(Wi_+KQK , ~]۵h !KfDه*s"PE 睄6QliM% oڃ*}a ) ^+yXxuJ]ܯñvgsz0!&@ߨ}$gbHmǻ>k9|$1CM\ϘTa%l^uBW3oBE٨:VEJ51x]ea.jj|#0XWUL3h{=ӻƌEY+~MPMI~'\V᥃|peDG#bQ5 mQ|i YÃSJe1|6íNO++v|Rctye.TSͩxv^@Tsir)R-SժL J%yX6t{/~)z{q%fi/r (H6'hԫQ=+ ,Ɠy3?%q|O|/6¼'O=9[n-J~ @Wˉ]ݒhȻF wWu-<D][f%Hv?WqU?7TMUIWFWBӡd>j\$3EЁT"$ZeJJňOb`v H%jńtu|^R J?:eaqwC]ѕ_lD,n9F9% ~mm6mͺŌylչU]*&0`m\@`0n+6z@Eaip(th'$svמً^,؅ Z;8!J 2WL?lFӝ<VC HR3Ѭ-"dx;:s6[Y7GpQhMmɬi"F 4 @cgblBR-2/6dVzG=Mw/iG݅_55Dox.Aߛ0҈wz)0*y 1FV8%6J,m3F\t{ѡm g&Q3?L?%$ w"shC7#|mqd>6ЂMЍ58`t"@krJToPV!=: -vX2d+ض_’<*04\Bw8`9ac}7zA!Cwt>"憧cf1ԕ.t8nĮ׍_S+ح ֙5v ӧЪ_?cBn+q.C;SW*ک50,t>GrQC#evpvP d^ +<Ja'j33q;d{E?(5QpЊ(oHq`?|sM*GA6n ,t}PMf_=WrCGRYѸh4n-{i4C7Гe-OAv¬'?j,FPiל/VW S=2Ds\;cXI<`IUj7vclơX8oyy(nI3*b  Ue7s,U/`6\*rOkf~esYdIV+ʛ"f"EAQ/%N"Ӗ|m ctFʫ~w Xh-b,}%S"@ H, #W .G5&L1e{N1=6Hfe ! umH5*TrV'ic{Í&%/ XOaCG4^"s}QvaD@OfZ)Dy䥿A=~Q[v}-L!'u` *m#gBW{$3vUXS ǝC)k_AAftMTm%34BvbxvkL6l>wky ~+|4B1hLrd#D #?>E{R$ȾJb[.8R+ yco5g|~=f_* B5ο2w"6Vr0>9Մ]A0?V9eGv%"HoF8PqWsacc #'j<creӇbsp8(bR\>앲Z ò%x0% r*lX ]m~#׌U]vz`?`LY~lřCzΤ^UQUt@-"g]+7CgVG[6}G92x= fݶq~F4rN "mZ&M&S1ry rQ髰JQHZKς|ƦYS^lo`-SۋR \G Y{W5&2ӷjàjLnzWS@U%w蝑EUPA]<(|]rfBbI-vߙ[4?%/ӢGf}*D~C{qəUӽV< 6R\jq{3VJSTbdf73>B++Z45M& 7`䟅n~Gj"OHP3I[uÁ;~l~i#t.ؿ$ihӯOY 1wSs3La 1LFje\bm׻?)ʔ]TfIe=K :cG'kc\̦VTҍ)l՞f'IUq0n˽ΨQ(qwHTXrkۨOCWAU_:aZzV7Jw>N'nFoÔ-<v.Н>$f d#"BZh(1R~p%z #g6-rĄC0;OCjАN"Th y%x;/,lkf t[PhU=J]P~;D7"lF8YGqpI YvZWZ>iXN% S]^Z e8lŴڞm7=KDRnJ,'?Zj(c2o)1nCODa-oRxް%aG]pF*:P7R1 w^h5;\MU؂ZJKkf[!WCdk[0: 1N"J<<2N%Kfmq DzJ|~taqY3& a3˾>|³+-"D6TI\I9*3e:ZˁȪ3ۊ۹RgwO X2ڼv$qּ.Gp] Etm^%3ý!EcT7/7q`]U;^3AJl1n5o *g .1 `xyI&!Ij6fy4T-V ffUg (GdlBMY*aieƖ[, B TP`Nѐ֌:7f9}b!uTIv)x0Q$OvzY#rPB_A)G`^f';ʕF AoZPCd_(Feh"-Dj[IX<}M˜c2i}c G;wَ<G]ݚoPSjV1Hu3WT&#:=cS{S-lKg? ;m>&XlnȊP7A %0/V@"R B^uhջ .ǜI%TvB/>LBOr)uT>jz8nzƚea2h&Y7z۳h|X/]o@Rg j7bb׊( ՀM";3Zf<ldɡ8 e 9Iga-2OčvK ,cݾb/1ЂuzA0?+c̛B\8t\x3lRx$OW%_i߱w:B0 (;tO*zO0aSsd6%Z.NƠ?x혮Hx&%W!HQO~DCkЗd%7vy*lL;>XH2_ch R)PWJgQe0n9aO/Z 2)Xlf'>2~G8>~+A/#Uk> ~)9FZu̱bSҼVAPf{nioAA'2Du\?) lE]"=]j;42mNKapp[@n/1~UTQ[ ,8-E^:.#ttɆh1\ZC4u7{t4VrF$|e OPh*4Y<7/rudD9kzу%O8dmy+R9Iy(h@ۦL3K1YʽGE1f$σڱA޲y]` v@(_!`>ob/ml 薠Jf [!MI=lw+J",aJEL;$fF6x>S+yI)Bө_NK9܄br( Wn n=QŠkSa+;~2ٵ~dz(-9_ $W77 Y~gQ*7T*~-==YZ(7V6|a8`㓓ے!Qإu7/RIK1Wy(ȖUȷyWȑS˭N*ʗK}1'`dْ<)LzZM\+ALT6p9]*!Sa%@7hq̜%\'(-4r#K2ӝHN&%*_H`bOU,U@>Ef\ޚ7T`y Ak7:zafԕ3./U!PM6T6ғ7#"Lj{lU;S]`J_$@VmkD)䏺32ī)}L4!Jf2S,Cy#5{yS{x-.HS-,A5'lASlT-- e5$p7ZTdydMфpЂW`X9mMT9 m4kD 3U'iF&Zbjw(; "s&Bٛ0 ę; Y:; t0a62IX"'# ሪvJ Q^ wCMKBpcX\@"ӟE +e_p'd6Iv_dT3.ۄu):l%EmxSxfA9$N(v0bq=N=iBt]Y3f^xFfO6a@+)IFVW9{p,5#ļ;ݭ} ;;=| .cD¯eVmhV OeFx W[au@6_ ܩ!wNC ^OPv2Re.2{qd&pcUn&kkģo@gX0? Fp #U@VtֺDi=Hx`i# Z ORPiN7͆^dHdv~nĨOpgi՜|78uS͢B 23n'ׇ|9ĝV6wgkjBVrέ{ukX5,c9.d0] ctMb] \ $]};zeg;%|WA$z;)^Q[r g}b=+viRQp/U%8R\<k]` u'4n"rM8侊ŰA΢Wo&lS~%IuZil[[f$E?I/LT0=I}0,l`;LնsCb\r8NV=фT?e g6Z&UUjߔn]][M6o^Q&'tcuvX'`M4_M2"}o,J lĎ1U= h5 q)0' }kT_UbVa4΅HF6N0N[dwYwqm<c9/wdUg"&NoiŁ?u)fCϊ*AXYkHẒ:'`Ej:ڬrLѤ=az'"*}nas@%6&*0qJuw`Dj` @d6uk[BR:xang?-`y*5l-S~n3ք V7K=ُ0o䡭O8}cZ$Ok1$~ҜP+,P~ BAF<#<]劂즩a72-`o+H p풿ͤW@h~Ugum=3AZ vεRP+4Bђ|K3(@mpk5WH#1Tܪa˪l-q0v>K܈q1K%Ő-J@~Y6JlpٯtG{X=xyn; 5`0ۘ QְF<8Xߘ sb&L&O tLa9U14JeD *p ^' R[Bj|;*ʻ [{&Zj^:q+&TuIHz}ǞiJ -?9<NblfAX 8ixK?Ͼ^!n ~Uo`&*SOr1GD:Ĝ`65 b= vܹ #+@c5ʢiZ-^I˷何*ЪxxQ`'Ӱ'**1uK BDҺY=BtǪ#5AIz`fL8篔|ꈓs4\5FW ئ9IvL-yF~k?kJqbnĭ*bط fzڌN"2E#?dcٷWaDU:ar;[^FqLgWe#̾GYLgewퟆ},qJ͞ \̍C*ub;J J}[j5TMXl6:)߅Y2=_52<&sM/N7b="5G<&,['Iu{ Fy&{'ВFrE@<-irg*FWęԝ~O$})x:1z._2EP'TEMJ{o.6Zon-P픸m;"pW+DAv8">oǹē戗3d2axxZ2ʀpQTpvD?Z;Mn'rA܇Y9L%F0e%Ϥg_-.1+ _Up>R4`LX*Ruh:l^IEHi4\,!3}rӗ&AN:}s'O%tO("NAcJKƢ4g{z L~"HVʖk!h?pn5BlʮW0='!|/猉O1j(e-ER\ }{ZAg\;a9UˊSx*ڡ-(r)fH 1 NLv{DžJDz-˶MU}mG塅i7m9^wI` { X̃-!f-z[-~;6D~1GfiֶY@t"k§9cME8ľpN[~M Gw_W#Z0~j펽Hs(R}eԢ:=D'=qs_Ft6r9_F #H]}O gtCgU86H=-NJvɺZ >!!-' Y ڼu ^eT Ӻ.l)MT"8@ 7SX\BA%ќ2ߪI]~)gRoh(b<'}nUP0ZTz\~ϠO,L(*mUjl!lu6K&hsU$nFPbNؔαQߑ}bL"hxlҜ|BNj)3pT{']}yf~`L@hr^[idK8*E6r[V;^R !dʕbv/mWebIS锦W\١ 730rdm( WK*D=fcWh a*$o,-] >,lW,AK Xl{M=1J>3@\NnT3"gV7kfKX5&>I8X c29ɑn{f ɹM*MPOXt 6/iKu-|&r';Rf_%hd'U==gt F:{D_?Լԁ 9[뇿wCڠ6U߀uY38'(2ĉmD~t(C"}T|T 5wfܷPZǕ8#ٙ9ۋ߭Ke1\=Dcݒ*BPY-? l9XhR\ P̴-ތM,}ݜScbq;|^>iͰ`^&ck-JѹJrӸF`,c[FIsh.&p&0`6a q$krZ:k-DJ R+\-Q,kL͎C&Sޕ36Ƈg3>4ˣL9;{zPbM$Vc 5 3Xz&s Ѥ+{בkX+#٧F_=wY4(XO_ĹvC*\ r!:Dz%7SC@P&winrhڍi &Rl"UdEewSfaː|= C2"eބx1uT"%L$8l_E4dB Ln |j4?k#6G T,ztTHe ٣q"g 7vg^y!q9gt-3g;LXUTuD;4p,?غ胶 %("ЃCVC;ȵMGzS$w׺I! C1ª`JM~"~зva߇ ek`C]'bOKYfۆ)Uc RV*5 2a:3Ka/4\X\J|p̛mfP㒒z"GjX <7終_q!85H $7赺ZڎW[AYz9qJBNzk ƴ NlJ?Au=8]zH-ofj}5C$=$ Y=m4Ch>%_Gڒ?Qa7AdM A*a Q`T;+ E8iڨ2OeAݼ>{"5h</Y.fQ~~et=A!P*Wʘ_JÊ&=} `9;;1R9{ya̗'Wԝ2Y w#կ0AmXC;=bHP}}";2u{U#a'(IaȰHjS12/5: %%M5&=xvF J&O/C7r.!-r~*l)^s)Z_g8Ӈd"Z6uzB1lw EL\s9Z?|dc&. KL lʈ4[uw "j^T@kuXD teYeF#8h$LGd+UU9ӞUCnFwq:?VEbqZ#A,_ꞇ:,1`ב_QkYF!xs "v Kt7+.g,>:p"sU7efY4L/ dp (E7Y ;SD@=kZ<.g˶lDj-:i2WX12pɖC؍#_U2ue[ٮK!OV9lą.;FvN!"= '_o9hJ DEFLExj?$,oI I0chP ~^ְ@)Qy@G.,x޾I޺Dk[2(p˧NzJ {u爗Vu?Ff!mJEo'O/_ɍ]`4Ay>AmQlu6YIfGjE>sUP0^URRmz:!/}?ມ' X|XToW^afi`s2}R֑#}̇Zovx{@m繾QIx`gKMpإ+na 6~1h^% \LSFM4Mه vIpq:/zI{ZLWSn~GUhmu| ڑDvW%$#km9׫u, 1=Bb8$]&EEp-ɨM)\we4cr"|oa (05Yt_ "G E5~7BYGYBؘ/rXeE?1Uya !FEeC( /ԙ&_ Hx(d5q[sZ`nL GSD=@\;ځ[5obtlMD"biG0XO.$r칫t{ߊy/yhn:=)Lɹ_3؄I\K @e%N\܇{i qDKgv,s>ou{ YgvƢgS[3$ Rڇc(|eK>GX;YNՎAjbVӐ0ʄ?J؄M O #HGq=-rS;n&\KVw]ѭD~zk *  h )r>,闱_tqM9[PۀBVc'T'?0t>U$3b^csZ Ǝ{c$k_o6\u!)ij P𒟟-EhHl'7ە묙yUO]^S*j}_¯rK3y˂o񞁷eC`$m=#')k,oi *swX2QwʋD0`EfŋAs* Ӛ?n G#+ѷ)AACD'cv~8!B+j 8}Z!e%=gID;89?ed)f/Ev+G=KR4͝BU   wc/>;.^o_-0CJHー(鳈)w5"FYw8QQcОt?H w :B``=\W"x%ygU4rOqvtHAq굦8J@-'z <3`2uyb("cpi Մ0&Qa Ƿ.6jt\&zlS:luJ@w%wc}QYEL6h~17 :817Yo)dM$giE|WG۴(タ'Di(&4zsv2AOJ¨ع腢> &9f-/"9E= zGqm Rr @67+%<މ}N"4_`(! l_,1:(^4M,Ks)ADS4@vhiN2Zqo:OfL8 YY8m^"3͘4aVREͣf IM+ċt߳рȫ ڲ'(B[\a?[oM^HH5ȼXNK e]?Hn)iKd 6ۼw}yvfjKeIV\Q/e}Tliix 2rR A. C ;ku[ T;]^TtD7#c/Jbs,@ X)$+ډٍs`,M;+wc݃yܑ^!SOּihǧd`ID3Y:{"r5\ FhTHE_}ߵh~a~b dMt[5͉ꍘӧiY1Ŏ1f/-] wl&=@Rh^ܬ-/; ojR#Pmyy12 PG%)蒢Ʌ4E-m^oBFu"װm򖍧US0;tğp4&*T؝xw.xY:>WS@ԢYKՌ29@20b@߿&7w .)`cs̀ȋ|,3:&W!xihTsf-y\= i_svq! lW)uR g[2' ƊTN@nhmc(ckqtk 'u| *h~tg1:,U#=B,k#]ݦ gT@ JX^4iN^b1l5Zo`کчtbkls+ƍ?8=iv(Qwɷ٣dCّFGI. a 3T3DQ2w/0/nG39|kf=f%RWF?;o@)ʔZ> 6.NNBp޹'l% ^Wfq( sT ˿;˲xT8m~SmDXj~Vf-j@[.UR%ˎ)N\+xZk KuhsPbOᢴ.ݬ#nKX "r(pL4hc-1>>>_N  > > 4{ 6չDK5McSk с8᭫\wvÀFRXI9`Amb[+\ymUz\)V,4hqW4E" $nD.O]C:rhM`% fEM.7S۶C8CDŢS=;7LF׷pg83I4Ϯ[ksλ-?4v2۵Z'e`t'e _4q3d =,ƇS,ЙkfQ $>$-:&?Vۍ3vժK7^UaFro驢qB,3E~3$DECs0K>b\=]}M)Y ޖ@pe{V[O ^i|ok aUD$LC:{N=$$ItܑwWiu. L燋|z~-{n vSDP0h^_9%/n'<ٜ=3$4 <?A;%Ԡt}Z )'f3-G2 3iwY^ LPeklὒRҀP_瞟ȼBLGC⥳F䠱*ve|(,R7?U<~ZXFN܉E酂_xLT]  j#>Q|L?eџߴ_?qU\^JEƋ\ 4r! 5LtWw HJ7Tc؄ؠ Oz-+0ZOn7ua'^yq;a2g\chj[&Y3>dM7~ky_"Olbh)O@ 2W9;=p5 6qbz*2:WzþAH\Umrwuɰ`O֠T #%ee8E#Viudz 6f% Gi/ՄfiBӨb;!gsū8@ܺG gXvb43\ˏ~kROv МGaPx;gS6ֻY<7 C /e{qO 4ft20u=<0g0$^5kÓ3Zrl>i:/N7҃:?sgޜV0{Vٟ^˜ϨKcH_h6D7aj7iHUJϝjjCە[2cva%TAx]NC"4L0"F5Q F3E9F.;w=BpIp#4rWnb7;EMG$@^fݥEa* gg ;N9Y(=\ k19밎'?GSb;0!/pQrBHt湻eQ*ܬ&-TٸΘ)Qk@R9(.Y\` 9Q`NR)fWak?bye)^SI 5ݒ"-sOtMHx *|jAR61ɩ u t'-4Ki>>r,_2E)sIͣ*[2W'yav:U„L/mޔ̷b~}4d0Bn569dN;e,ժ&S̺G-96m\ ڳmaO.Zw>x{7Nqpyɹc&,?Vv*t\dKSBY& ~+6+>҆X;ԛ'?߀f˲",CǓYBr4C?]"#298mrQz.j99̚^gQW93,{]c7b\Շ0tsi6jݴfF~ۙ b MZfsQaއC8yZQ#%$b_8tqs; $#f:u(Mד'TF,N=;QWpPt_Ȕ"b`D,Fl"a(Vc*%c ʌ5ͮlb@Y2c]#/Nʩ2($GI_ 1|yYCTO߃&3g!SHevIZfxӆr ؒn=`_IA?8`S,+8am"֘ ڗk. Jdq"?!*'pne+[ƒd?4mjF~O]-OJELygKjy'g}~K3 @&`NY{gR9a-"Oh +29'%F.܍Np;)) uH ԝ+4OIoEм6V _NPsruD3|ҸFFy'#UAO6 yE)aȚ\Ya!=kfhXڴ1'?UXj ;*gxIdyJ:y14YY(1lqq$.UJVbx7ߍfNw` ]'\-AgBn9%,FF@F0q2fLpjq뵥vB|GOha;xOn,\`/[P *nqfU&չxx(C% =߶DW>?Z5eqH2=Vw.H R>6W5z1l/;_ t(( 7?B7(7 c {3TzbmO1lYpmU(sH)eZb73E..ʮC_i[ENMg/JnH!hǂmfc(N2z5ԪB8JkF)Ҳ`*lOήvX$H V7z>#$);?YN*,#l{ ׂXQ)H'odvwGC:ndDkm^6rFU utC_u/aZIo*_8|$/DgmvLt 泻۞[׿x#ӂd'v T>Nht[Gu^(iodVV z|CVB,i:H_;_Yh3qǚ3Jnau*I(ty#*yOZm )L&HjgmٰXGc׺=(Ve`*1AV>u;Eۈa.Bn3mL20c 4f",B{゘W ƙ&DNpOǠY AZlN *IiXt`}-,0#6˼NW rc(韘-R W3 =7*q#]=& a?VS#) mq]`Yab aέ*t-^S/x^$Pqд~v`B*:X}Ԯo/4<])cռ`Fެ̓ f6|>= 1\1pٳ}~ŮU3W.k4q+z!zy4v x^ @vL@s9{7/* Gp90C9DŽgU\5Wɨd?]<_)vu֨NG1уMTX4U~z?'d0O^q!Fgj6zZq~s+Rj~p~zd&={νF](7{ϪHƂ4Y9O$-_?Ӯq Kc&|o[1K]T>KyƎ Vp)c euZT+F,'oL$þ ]/:%К}׍ atck;} L~YP ih1f:\ eDJ-6r%oo7aЌm}R?YvJѥ'W4PYG5="CRDDy*u8Cg_v?KTz1;W֎ JRG/+G\8v Y=扔1"r~0Z"駭33y&r`%n]kL1vN-F}Lf4C\Y+YCD[*ns52n??Ѡ#Uyx$40[ǡ d-^;ȚbVxh:C4I N(SJP@2 :GvC7';ۻ{`X$WJ"US*5Kjc֒Ҷ=3?2kHy3zm:44jwRe֔ZBK0B9ICP $?QHCu!'I+E' Le 1]gU[ uR =LD |+j၇SAd tSp>CK^,-;Zf R& ="GM@ TtUԯW_ }|#Uf3 >HTˢZZLҞQ4C_6H|헽{Ί>t#Af{~tG߁6&z;Y.|8.·]+" `Mok`⇘Ы,[UT}dV뼣Ƥ$2ERo@ؔ AMkn2>A|516+Cw6ca[3$Fi>҄iֺ!7Pk'F$dzsk i waX!##(k`H@W[rA߈CN ĤPfVNhOiRf]@0>d)).VQ{op B`s|Ep/R 7 /8`>əEkM-Pbnd.'!|.*hvHxb [F9D ZD|݂ 5˞Pn2 v4 $d^4;F3XBN[6|"0VL}>(k%X- 6z)s~n5ZKf[6M͹.Sۧm/Egɧ6fȳILK\HiS5ҥ?d=.Xm3$c*HM0"2ʘ:E;31=njY5 dv ^3*`$WqApʱ%F%/EcwviL9o98!c,E U.tOx)ĨdB"G׮Qj1p/] ||Q?2f&tYܵ3 jY-d-(& XzaJ8P!6FRo `֋L:Sdܲ<ވ,XI":*Cſqc@&dVZ \{L١;+aMDhO:G?ݏe-훶_V:6g&XS+[3h^i| I]p)+ji%x>'g<@zɏ<cb< g]_# v.R{s-@]s'P4ÉUn:XI۠VW뽬SqӟXbŠ{& .ݳ}S_OBY#'Kj:rj8=#^t Z2)p/ٝwY3<Χ"%p@DQU+pTn!t<(` A]G/E5f S6[c"qoDKłTthJ|Yt^`mwR>lGJ|D<]hsX;=z ;A9"nHdM] }ߌQ PKzհǩ7)_M/4[xYٙ=߷NBDz̵"'1b&NI:Gnj N_1&a22!RL.id"gN%S&c^a9s!Iw*^2WCm"MHZ6,Vgvʫ(L 6U6>8RjĠ"#þ[}Uޕ =Rzq"S·%I(Q9:_ah"Qm[0YO̓k'y`U(1Iz?If !GAʶzv>/%|)jU^Z\0"T?rcUZ%v =MϕLFQˑv^2$Vxa~(m8{C#,:@ `BnI)ȏs8UtRgS6] 35oY[ͬUo*KئqT 6.}:h/=|,GDE:[CI\bHJp)]Pa`1XTĪϳڹrq088emP7: AJLzwAj 8A_EVYvq9#M St43V>@x*- ݕ"5c5aY0IBF'ꭀM)c"$  ̽iHp%թB͞?ȸ޶7(s+G:_o'dᏭ/G]T-eFb_ғZٰ 6VP~#O)9*K I9N mj=P[#C3fÔZ%'ꁬ7Dٱ#sɑ=%:n!'pۆ" ,\ouU+0@;AHrracqJ Зojh66)Rx+6[S+! HK@:"Кֲ~ACNfiLIƾbe+m5A{äzܯ;ZojSJ -o1Gz4Q&"y z{V7un݃@y|J,l/[+$\1X6hF5򴑯]]ĜSwpV*';hXő{U1Oi] CP 9[JZ*k?'ȶ,({4v)]+2DVۂWrjle׀Y{ ^hLذE 60*8EzRto86Ep Son c?T>b[I؁Ӵ4 !_P')ͨP#1%D2W~vk}ϓj:f.bAʘz9l@TcdC< Ļ*ƫ #$.nSǵuN5G.]0]Κ}bqbp8(C4 >,F~ 4\Z##>Ppn?mlGUadHn~jyRiqe+eֹyKabR-엌 oJjI+xOh2/GGm"'׳(6l1f\zѬi>XM@FqRٰyʽǎ]p|̾ZWeASsխ<`BҢ Dng $ O0ӰA/-zAĥ9AR;6l[%0$Y2bEp i : tbS!/+r(*y?p -OMS57jHQ:L.S8 zj/f8Kɻrę W2<2X!M?.d2#?E}Q/t?Ӭ濈·i7,O߻% UD[Gѻe|syKzpdXy =5Cj͈n_y0]%Y%^uՐX0 c=d jPx>%R {Sx!(1[_i4rp\G :lEl?qRVUᚥAGL e S0(,JltG.V aǼ)J 4瞌PDYXk$̝`o ʃJ ߲o51%z(O\LeQ9& T#Tݪjg߇~DZ)~٣1f˚MWiЛ M樖,ҕb i=`+ j͋* уw'I/'=f0nYCCT%j|a|Xꌸ0 1a9$Jh)a&1s YPi:X~c2׽w7չgfO';cd$8MdRr,E*sڂiG !ESX=JœM$!N[#tc@BS,?9 pQRQ|Egj]z@]_hA.+"wVyRPt p|^Kzd'pnΆu b jvE\.._\s"> );^cz:l^?6ɬ%r1Ka4O̗uPsf!g9c|V@cCb)ዕ, |$C1p &2w$Jvppw$x-egwy̅VI8= Hݴ [Ja c1`֦4r?x׾e]| 2FIs9U5mSl@4|Eİn/4%˹%2)4'y ؽȋh= WX%*"mOI%Oնi%sLza^L+WwZ*૳%gD:|($kM\;mZ:+0a{uQ5Nsg#{tvihPdC, 1]qзJ >ٳQDfgăzjZu%gqTai@]wYҀ'*-:BK:= Q!k{Ka-;ׄoB&4l"Xv~ե`Kt@w]XMJR]>jo7Vm&o'M1|HC<' /"\c[ !N+ЗNƶpcZ0gX8loW*ӹ(LJ_Do!H=O,֡7OL̙喼37j/6la{IC>l'9X:I +B-KNM,e *+P15(2~TY\c?ދ?ƙ_ʈ)$Otz!yʸIT,d##Gµ"єp\*fkOSJB$h.f&hlBZS†70Jcc@̃͏SpӅ(<[]hQ|S[58G;XaeT _|MИ2v T^&(g@0;Q <"_X@6m=<~NF·cc1 RSrDOy&Y z+?Д4mmw"憕Uލ~)rX|ы]|jȝzS@{'YTsbaTuU.%za䁧`ߴoљ(Af*s@`*}Řf pB:a;aȋn:CM3NOx ϬtR1fwlp>'ˀMr;簊KЧ[J5U'cʂ]Ҭ^0pQ~Rժ8&S]Yic zc~3w@kX)M;TCMe!5 j4Իt !0~p?MP~ #c'qau^c- X5l`θ40yM `V٪nMvAA;/6{C\d#zYޓ17C%_gyw rn4=>g1"~i̩ǭIXNoI3Aϭ6CP]=Nɦ(r]Nb0,s % c(S/guo LŖ]rCb4֧]1'$hGhS];-%TcG?(ݔ&\P+L}U@.L֢t?ƊT[6Ӯ&ݜ+kv1 ]m@Bm(qr'˓TxzϹl"K2|4i8c<^ `(lNVvev1 _0J[ ȵՐ%?g-p4mBWu~d q^n?H~qp-H$#詥ڼ0.Sinip7Ǿ _˔{EN1ZN6"[y(fwoL 2Ȍ5SC{]qK9×)z,5ۺneb/B||_kw"',md6M 唉 uVVܺܕDNOsĩt>O{QxdfmuLЇET`5ی> Y4h,30\nR,-­fvOo dT7< 0vVijD^])KkAr*yU\z˝Cq Ǒ`L98Tg?Rj}o $KPj`|I|n@Tص]mKYgIB̑4Ct#0}_MwէG1`Ip㌑\."IdGyw|TpBLDe@^8AucѿO2]WB|qkpq&Z^zślB(~[fKe( !@v,|5 S\w< q@ ˠ:fMչn%fF9NUvJE ׬HlnP0[*(%Xn-qr(fI lO|v.s;@9x^Dv[Wsn,mc/t1vhRzV!,ٶcteg0B8π9;'QRiWMz^¹5;?QW.aQpd轋a= ݀bs[ōd}ǎ( E[똽=Q{񅳚79%h>ZX^E .逋yP'b&Ų*Еbz"qֿ11 {j}nmOQs\d{l_ZaL$+ifxO5Z';Op_g6tB@0jf*褗3u&+L s( S?Hv^:ʏb# ĵ?4vX?}߱.@G?Rf(m/@3!W^%*2(Y4Eּ h$VLęFѴ۾&<|wy鶩f&ǥ pU͡挃 bۭC4CEo]Yִq~W jHSĵMM DI.wLϻ m=JFs*Y|!u=jNPyp|NPۧ6}aT5ā |_`5(Z\f6ix+SSڣ36JA`O= ηH\bۆQ eE^h19u(H`'=AD - Bn<%x޻:)uH4T[#G| c`BP I3Z'vf#F;pl!=b틽#hk0}p@9d[jt)R3?wf7`M`ְ3fڹwn~]d.uG 2m((=Z^ˢm}!Ҧ0tWqS jow >}գu`X?٘~Qbf:LiB/^rUBPGRl'TfE\גKyLQ(P[C sʟkMǾ9f"dUɆbZ"]S8yjP6Qg֑h+5z"lv"!OԲUzQh##qDeL*ə&vj4`y1T ZqG CPITLkЌAEn!9aQҜ,̪6H\Chr-h}:<d=?u648-_8bZ[M#vHrAvowUt tO,iW,zɶЋ?q\F&oOBs]d +/0GWToSQ$FgqNIˬH>ZYsBHy) kã_h;k'>VAOۘ{4yOݬ/*WɼVy"ˈZrǭ xS4=p_,lȶD;Eqx%iyQuGp ښYO&)؍Ѵ ¾^F{hJFSpIG,xOIr,:@h`z̚C\qH6{]wY>3>_䫙#Kg1?-`kYrq#ܛxU3齰UVO@;]o3tל0Qn$hiMr w\ `XqidzDR5 P#IS>ƂZ`,;eKTaiZvFsZ4Kq8$(5C֝Tk \D}B/^j\/q0Kgm3p@^Jaמ$\b[3.,lAr7՞hdDYzzaTWqz+گ`cGTf^i`O B+9˜Y}:$aI'2rmFt?a dP'#uꀎb5wZA%LzX&θq園,8NMHx ׈9=3!-we25>ЌEy.$nPA hR6Y̔yw񶆛,? )q2p2Mo4Dкa-6Οཫ'$ȁ,O!eWy} bfbKrؚJRkk0F+S8>g M>)7`xU+(?W #Hwq#&f]S\Zը|'k; q5*RubϬ<ցFہo*{$~e;٘Q K-J4Rg~FdrRo%h7ȱ+k6O; $~Yv+Ʋbf/[&R"VqhO{+{4wP(WȒ #Ja$i5` :LYa Qf]bh.,ZK&>52<_b$n, :hXUQ_a\Qv)y}zTYBw_GC ދo?9 ry^K͊l MY*t$[־-sMߕE5ŵ8LLP761' zN<@O>.1QH=U*6GuM(hG l3qHN}XԘ4>p_.6]lM~רO__w,h>.F3;!",` J:C4E)Lγ=?xٿ:뚔9^^YI4)4 ˛4TNzB. 2 2[7WoVHzC=E\L.#^1sX[Cv[No1J3Mt0U) y(K]āl%2&5ܾĪvǙZw e}S,;D+xi,6MMjkCaQr˪qzgap?6dKJkCBe- *<=IdԪ2}=ɡF)7O;1c tF(u ǩp.a ;xm )#g'g*+%]%c*eEM&dUtna4?#MA+M\ Cj\ͻ(C2UT$ZW=0q"6g>e][" 7|dwߑ`gЦ8<\,`3^i%OKw>NW,ݼg^ yM1@Ǩro:&=T$ ɒ8Gbw .fWg`J [}?sT1E2 Od N΀̓+#I/k_pf3K)JVKg;n;vLh$t',i7P!VN=^:hZl@phweÀoޔ$b9dsU K0OE^1eR0wgr+*x¤5te2Pf>6E;_Y! dPY] 0jxCq2r7=-:Jr#~Zy,3Y/Z+iֵƕhXnP*Ey-Op&oç]D*VHk{*Z9a[s q4z1fQ9CYD>\D/B%O<ķ\Xl(R%MWayBF]"V2SDaR'Zo4&ete^ɤȈ fL5Lq&ώy%y<]bdšge°cI-P-_(3AMrgxg @QAO&=R?-]TYXaLѸ`%Xy2CR&. /"Vb{*j$&ȲK{ `X/Ʀe>ÖggDg)$?N;+JsOaX b h] mgBɺq+8^AVY;*Nl:G3Sj(5o"m09:NglsVeuEuSgp(:#axXjȗtV#y"uBѳB58]qG=ꂿ4jǮM6lIAqS9̱-n@93=SeLG?i":e8BB6qDr2\of +WAYnO-dP `5 g8uK&Hl9,JtiW3~ +hl>W#wzn1P։FT2e䯋RD Xh3 f,MF]3A,&M&c/LVtb$в[$ 8P-W H?w8)o7ppo`Ǔ赋tb1: cP 6 XDDt}bu.wϱ| t!yV{Z 2U"^pGz|^.g}wVG|b?@rsdO|~࡬Pu|ɤom\KhQ6ʜ2 Wa|z[ߌW{Rm"y`Po4J=Cxh OD,fY6~WWsDƟ/f}Y95Sn΁9%er]dn2CiDddsjp2zdR9 ۬_|V@V"HZji;!r^۞NDMeeS `N$OZlHXíЩ] sv3T[Z`qNhFWqgMx&e=B9hpHn_Vo:!΋(ֿ*4>̵j EnGDa޴ޡ$ j؍a p 6Ok:"Yf&} )Tl[;kr傃$eP/)۳oݫŦͶ4_9|-q:IO;/5Ս*1Zktao5,O񗋧\V4(\T ŚK_Ϗ=iX` w%GƆW[ k3N@0$%Q`-o&t_vM>JFXch9C1B4LdEl_!>0l_$nO$Ø Lk$|ˢN2 ErB0j +F1pcS G$4oeywwf9y@~]V`mr>G^͌_5~2S5\7<04 P{ZZ>~E4hϖX*)o0>Zٽ548!^ =^3 {Xᒶv>݅i=6kL,T񫊩)CJĺa-$HQ#>CEkr.=߷9+N8?G>g)ױe1w5,BRLR36sY10b᭣wJ ! 6V6Ԧk[1ޟ\V,>]ҵ'6-V~(i{Ȱ"*$BH`/9zyצ%Er;ڇb锺#pqf4X͹mO9FgQ=A)hm|'8Vhtt^Ԯr[4u*ntj"](`ou$fU)0@0NB*_M6ﻢ*, bN78re"եȕB/݂`\0ńl_huѽZ괂m:iY4T阒e.VcH?YYE}J$a!Zx~E[7L{-Lb nzs@-i s5 xTu9I[ݪ^fo8PFAHg|֗'PqF2刞nh^Q?8'@Gjt/\o|kwWq:pJ.3lΡ`JH!. X m6a5ó c?`1uTTBs2` 1W86*l7pgv!XWTtPgi,Lbp4t9ss'+J Br¯djz $w&j[?J*K%}&4DBmWd1:sQ7iA;2ϟ9&@\Td>q^{{AQ:/@P_fP}QU@$XU\-aWeЏL} 45`8F 1f }|XM\c飱\k1}MǑDZ'4f]ܒ >\Z 5~+)"ܤ|Ԉ-M$IƨY/W@3/2bO"|EЬ}1Ŏs Пpvu}?!j;+jg ~.{ہg[-`tD߯]X'Jowخ_A#K4cjGH ӅsnW?*ZC!>#ObR^-r2BYD!?F>Fd`y6+V&L.jE aPĤOM.)M)4,;s4s/lGɠo dyŰW 9–n5͛SpeHk>6Q5+I,?U^71`v 4t: V=O iCؑZ$ﺞ:l bXYآGqQl5`/-j#^Ḵğ "4$|Mm'GQwzY=@PjJ~Q|q~9g h  (3  L ]h/>jy†5h M9"-)B +PӍ/n8 uơ':lVH/t/ f1lc_hvn5^DZG4u5˹2@-ɶ]V C@Eo aA7F_6cVFĒMzc0.ۮW鮐Y L 򇰀 jjrL'Կ3no^XZ):2ڰ f6}A};[ s!ޅ%<*%t:f6tU7YѮYm̃!0n'0E qj]y,sR+J\27h[r҅tU[Z{lZA(O.M7}B9n(Rul#)PmX*j:L >V.\^6;Z3;v'9C(+ʂEZug#ﺛ&H첔qj` C̓!ş'![ )!za7% h# -*?\t{Nn r>:R~\]^?w06!3+hi5/ iLݫT7,r"ZܜeG ǵ4ݚC6}T7ahrM< #ͱEAb?/X黜kRJ?:$…|u:Ē]ii&䂉xfFF܎D7҇xz|`V<8^O*9/^~\F:6'n(z@ȹB khd1gZj'3x>?8HD?`Dl߬jQ6<BDGP%|å:21JOV"cCs}y9iY X^QCw9-6*/j(ٴ%׹KA|˫U"$⬩+ -Պr+Fk'~4xCyL5M!y;eID.dƄӍ '7fsm24.%7$N[W"[_~: tSŞӉIy>h^ o1FACqWΔgM!2~+2ASztRʤG83 l>uys_T~V!RʄXp7إE+?2~_('*}~z,7 딇&q\Uf1DҐA]du%e[_\" 6gg!Vo.y=Da/&X2)}1exU?DCPcyU^kkZIVaׯu9mƶ~Ϧ(3s!,^^5z33A y5xDLjəc7lJ?C*3pҲhxc{z?R2Cv(Dx Bb<dY-†ˁxH= fYG}֊ۺ%DNDg6v;[+ϟ[O #ӧHHq-4SwHl83>7#/i[іƙOhBմjP"j@ڗ щq.n>w?}xz3zg"*{gDf lYBJ 12R"`ۘ1Y3qΫm%[Xc2qNH`j/lۑFPr1;TguR&BЧ 񲲢t?>&9o# k 6xQA1P>x[5:۞?D+Л!.H;;K r7e6И"[{СiܭwedEE>f"ubܡ2e wOl룴S2,ǘHʔ D[1#GK_Ǿ\,<8F!tfg O_<ҭEEm=x[ɸ$^zW `wh es}A}·`Hm}Rߊ33jluf:m,נ2xG7['|w,̖W'q2CnIe 4O0ԡi(̓]\VEpXTOx'!> \P{`H@BG-HOjf7.|J _nB$;u1E0z6qG*D'ݔ{VtLsFRMw$$+9+J)Yꕨfs-hxQYg =b| >!J $MIꖈ`{^l0ۼ3o'pj(tkTz03b.9%0'I,=HN޶ރk+}/ 1G%Edkw~ e,'#-Ԃ[:UѮEe6 wwYm+EJGϫ(g)* rHӆFًp'0 !ls~@8e׳]2%ȭzMfo'|dx tTB/iE#a5;;e6(ɜ6=p=:@N(yiaQ|ȁ˚h ~~8a\|2]D}"r iK╩ il96"ZkKҘƭ;%f&v*ݺ@ZfT-r^VI!<zHj{a%R~0?\YYہg1'C]ϹOvmaW|HG0jsLC 7rJLdx)3s-!" ډS!ԯXJhE 4\MhB谌-->=nqqPU[(JIggƧ@JG@8eX:[|7k]R@wWݺ4n&e_}s~ S\Eu"$6j6^*U`tjxToiRl?[W}X 8bi`z {Vu`?45@u@ǟn@ex,iuxbqGv~9@DcںK#qDǶ R#A g]|{DWeR/d/(eG/^7-nɥ$h\Fl.a*e:o)>ڕjNv|!j4s;glRQ]f%bKqQȃ^4 {0k^3z`DG{HZUyЂe 9#]wdC:!g0'zvdT+(dV1A(L >N /-zc(t{aB|?j {B8DH2QdЄ~^ 14d5zoI !chWH-w#쁞f2BV'K bl(Qf~$:[Ӝ mVK|ه5kd=.%&:y=5AJ^5ᝨ$-ObFj`$˥:{,HUp7N0Bc ȔhRūh:%c>5p"(8V?}-07U̹"Zz`ECP(\V}]Z` !m5iK_#(%1@Z^㏘EA!F'ǩllɐw'7QA6J[9P%iҶQ ְS.4F){$UۏۻDi&f@]r="Vaq$_fI% 'oŢ0vPi聛oV<Y3ot{Ŕ٫Bˀ~v*: ˮL7XESMa(d5&AH6?B/_s#ТjfqY9,eWSSf&zPšQ;pD9Y5x:Phuʙ[ ')]a%(}Or$pSq^jʄe2n#Dv&}I0Lm$?M\.#lW2i׎|>_d0o}#b߲Ȓe>e qua CYC̈́m,KwEU) -&f?]N'D n=q<6 C0߸O $wRߓϪHkc2MU4BlpMvOX=Qi8.3[H3O #R CezHC͓8t N紊nxQן- ۨJ[K=OvWeƿ4;!j5՞޿w6͕ڮ)#A uc䰍Bt'c0-!>`qFWs8!b~2 5 o9ʁBh]#d X}Mifcx&<ì/)(; u[E ꋎ l]LugjO22<8@9S\32!)YU[HbRQy]$v ]  jE.< {gR{d޳`qVƈP?pH':['2Ygahfec)zO}ӻ#>op{/k <:@HNY&a|=PAZՏ᪦6<5"j"L!V8\JLx~$ 5A.vMVEګiA\YQhW 2IW$zp: |ae|?BNm6URql=YkS)#>_s3jEfwT':+|6pQfBf>ӎq'fN7MjԱPFBeQpݛLJ*=SS$nzJe?Ҵضȶ깁jZ/혆[pҩIlly#)vPźU/ǡTHq@(Hݼ,kTI}IM>@-ѹ(貲U8uv:EXoУgX 'QkĦ^t hݦ".w9_#xfŷ5:#,SqV1I;SL/LuÈu&ഌi(o$(3S=&r~2 P,SfV! >aPzʅ*O̲Tbadu<ĵÞ',xfPsK/@ds'l=asp{(rߜ⎼m`:<\-{;,0\Za*lJ2 Pr]n`#He5Rf?$P!}G*n:xb4Vw&r.n-l4t@߲9`╺[j0 𓲳fBz,Ws/tu %eL$]kVx ukzG2m2պ*-Oߓz[֪Jz$U 0_eYJuOR0梻N,G,O*AZpTH^Z9̯2$ ,»)+5S'٨3&ngUOro]Ɲ4I,9@64<ΝcLlVKQluPn԰YIWxdSc(y=lOp[KGMPÈ3ᤏmgr$(!sidS&v'5V--qG{L Xpwݼ;'@*z0ݮm{],[K~ &Yf}pQ&*r&h8=#c"nWT2דS<<̰}RKVjvk='RU\- $ D| fGV+`eGl! b"3BoB:;ϩ8wh/kѝXvv V&A2ZJuEҷU-n%[<֊\ጃq=S_H . "ϛ*rR퐈 hT5IB 4`؃9+og)-%GuxbP[E3Gv3K  +2a4#nfW!JRL\*'=2bQש|=_w/r9ܘ~;)y҆BUWԁiCd݇ >حRTU]iT@Z@j5%Y@@]_wMWc7:gstv7k&<_cq^kEb6p8X %Km 1J:~Ak#.6θ껍}:]fMXpkEb̗S\NX,Mĭg<6E⬕GYĚ>NLX.v^˨6]\o,C ƳtX f0Kjϣjp3$"|ÍT$BWFغ|ro6NLd Kxs:sKc (\:uͣRsᎀE`ި)3A@74 g%۴ H?xz,s)c̆lCpׁGN/"@U:7'~PIQǟ5sب U;.1bغuYav)࿋&fѼL$8S8` @<ڀ _Yֈ#L8$ m&pKK#6tOҥ R괼{x@&a~ 8D, k5Oֆ`  C ;6^h]NJ.(Kٙ/lّ+BA?[måCd _ %/-6GOE=H}yG-y\yIgtCEp­V ~쨵np^q*?t {E_5PQ룡OuM+xOeq 89gL a Xi}K lf)zQ J5SV!.h֒g2D6S]v;4څ {'>A-$̤Fg 15ܟR]ZŀBDj֕RbcР.8@IfLHm~8a >F\XnƖ3|RD)ura>nEDȍC0Q1 5y)%$f^*D'ܷ@C}p3mﱓ?j-3rYc6X(uDF1+~kgU7ƜNA 5Sڂ)UE#%jb,zNL∆@9V5$6UH(b|D"ΆܱB=+U]ݚJ}jF %7Q,spƌB9>]7P⑗+}=\dXUX]hb^Eݖr.6#'O\wJt/ii<^d+[|eRT:(˥Npm=V>]l;37F08 ^`5IYoϲx`83خDMzqH7VxCБ|ۿ_ H]sȤ,oO Y,I@V=w0Th"=p]5{S;''ّmf?`NPҙJaÜ;eJ]H- qEGim->DˤU p]0䁳Aiȱrt!#D{~,'m])Dƹ?y ]9T#2e=0=SƩ"|E!w:44Zh$!%I?{l5ӻΪߗN|!;14[PfdMT+dnZ.vE=6%œ&Pgo#c>#zR}t< xw`7H|N5=HzS}'L=tixѺuB 2lZ-|3\d|)%ϡ*x3&pep;ѻ]|69V6R:BlXI(ym. t*Oh0$\QC=~h{Kҕ \¿!;gmK7nJ4jJduQx)q ~iok4 ٣Wӫ 8Ѿ?=k%yWm_E=}Ef8~J(oPMi. x(N&.5nS驟( K sNԨ~OTĵ 4ԋb.I K=b_}auTTjϓt[~!sD}o3RڇڬPht׿:j&cㇹ\7jL[ oUt.+bҠ"Hv|o۲]|eڑ!wPm!L~+tؓ[DHkivr_j&Ⱦz({?nfu16.'4(pYc@S+E6@yݑ@!P\A+[]x3"6#^ KN#?q}‡jRt/WGzKN5h1 ' jL\ar(~Y2r_)bӸOES1>؅18žNPa$e/tW|zrR+TcLT3[I8͢JU<3!\]rh,/$s$YaJYY8<dL픾 ={x _7o;C(GFv8sX R)7g k 7z27;.V0F](o*)٤VF$ XDV{phX~^ GU>͚l`cel㗦b2MApf(Wj=GEPGh2]`]S)[Ͱ}}&b{)XBp+NS>W B6cϐAV~ RpSZ v+V$ >;Ρ ^zOZS<,ҙ(dJ_%dM9'^OWTL+E! 氹\.kj6-qK|k-**o ){ey ֘JJ2M&vEvv\ɿy[,;4[wQ6Iq7 /e`J݈ngjCeFr A%Qm! Ac ~`X/H6?',tfaDiT:j(]g)Я5즔^p+wb{>z43[ƃ)gFkj:IM^wKSP--w*^t˯/%O4<_k)vHZ/ڑ=yb,FTk7%9% ~J< x" ʶFX(d:(ϱO6}nyk/VwBVcS`zn |gc,$ŗV簘s@ GNM\f_ިShASfh.ll٥'ht'4m.}V2~IZT/ ۦ•r |~#UBAZ4Ȭ̿J91ޭ){>~5n_nA@y,Gh TATK(I?f^BfVlM~H# Z= `OTx1 >㭐bI0K3N8m;op#txh5QT 7je"BKNQie;u:Et8lVL&5)1:zSxUu.ya/` WX/dcɜi43oҥe[=qyoT[yɜi`(``g62lSy4,)Kmm$MQ9A R#5Ԥw }ց)Ҽ> .~Ŀo4fWL k*3g ߠR3mEhE"NB.^ `=N0/&T؅=%d8^v:+ Y@ |g!3>üYǸ24_]+c_݂;d Ѭ}~5ҴQuJۃW1X}գI{#Zd[h.qƠ9[ۨ s"?jV7-;nmfVs_-88Qg:"3:@OSd²_2{ZkJ*zBֈ)@¤.H*$TMN@_{H؋ݝ4/ʂRqXmlHl'т~gQ$8oq~]3ԇZsƷxflzxk eb.:L?̸0~ "J&;PMUx)JVO]B=ia1Y:]`cVy<lqihԙ>XoA٬ rGh>bTh9Y\]CRUt9 l t7# :($T\kǏ&IBPdgD_wE]ˉgkES.>l[zJnm]?XjtRBE YvV<\7']κ,>z46Jjg&2PV#rBנDHu"4uXy2G2CDPب|>@Bكg?hOsf6~q1%ΨbiB8O~x6$l .(1kNn+VaJf ԸzıO U]!(4c F$"bg Rsk@ZHW ~|޽Y:H[q !ϵ;#Qp{d)DNkV_8לwP[PRVBƆ=ͦ|&"~FK]ҡE0>[~2i/z s{{F/!xd@Cﰀ &~?{ 7} zt3y^FQ6dzprו ht$6(:!KD -'zhHuzK10(l,<#uEhk[FC`6x$#g0ung $^fYbAt:ӿ c?Yo\ݙEzD5L<*N)HPm_LO[^i fER$1amVR^wQߺFB4MlbGDP;%h]qM͚>ΈcNKE3m]!=VoUdnf,Ii}"2}۲6pկ2&,bxtL 8AVqծװ<$VS4>}w}+|Prh$@ZSq8Z6+<{r8\IK (RAVF: -+ ]l |5opPmE=csrDGS<*vziMG\b=kFA5ony0.4Zmk m*ol%Df:0 ~D<u8.ܫ*I}ٷp8Pp90ľRY7,2i+CQy]}UΖ F%yi=?ZY]xdFag4܏JӜIkmֶ g.Mձa2ZVGpոa%dTmo ]D0$lAW'` _ْl$re?sbî)˄#wOv#{.C0ުl%&3`spW(쵧\QӞ IދC`9\]X ~7"m2s]ٙ1d)wxJ.cۚYh&1r+)qme]%`Aq=`Ic&PHO* '6mOMCT˹yz[9Rx8^قSF L5,E93"#b0[%{qvŃ."|0y`Ǖezab7gi vy,QбZW5o}5au~]QJzkB2@Hl@%3tRÊ>G׭Wf[Xm`C8=p8;G ^LKehĽAjC(R)vоB͂zڠ3U07f$2B\"ZN75@аӿ` S: $Jo B:D އ᯿+.'y]<2 \:ԿD1薿/gj1w'k艊eВ]*)ϣoxT -fg1I۷` !B fCRf:'[>ӘB;c"t&;/3؎ ц.2޽M53f{`nVq. 3=):I-Qsz0Zi -5vYx~@b8iN\t\k2c3۷!+@5ZlPxYς7O9o wv%q~(S4,'zM8S+( TMKj_!ׇ'QbhYuُ"BLYMCiq0SC4*Jyv/LY8'ýٔNMm7)\?NP㥎 GiՍ@v|An$$P<-me`br^[&4S#ڭQ{wUN۳MYlq7$z($+mNdkHQ_¨KR*x듃Bh"8%l-۵}JˡWqn&2UR F2㎯w|f2`26Jm(*Ad?@)X]g})3&9o:*›[e a"B240@~6>0"i[JE skwIIu hu C(B&R%KFǼ֋g냚a@n( vgN&>VVєzl `r{gyPR,|)zoduNV11Ln%ydH@kHK+kWEt~̷d.Z~Hg%> Rzt_SPwo42܆FfHKEu(?yz7aoLzB F z)aV dY1\5DY z}.uiDTGU-nػy>1>(p>L{!zh1doTЄi`;Bܫ5.={CEc\1/?篛]YN& ¸ܣ.{|;httu-BU|7E'%a]&J }"{9Ăp6c:H , !ۙ=?=3Ga5հXY[{i5l }x`#5W)6GIR k?Enm+07E|@Kg,Y6RwgH"#!PT: ҆ p_uvjT-B68.\V){?lM6ޟq({ h[x٢ƼpdBA>䒟K9{_zFL^HDA$RPKMߕy!_m\@AP,NH-m@k872 1Ba`5l.n\8rGq a}y30 b6=#Nk2SYp8<,yxT^N(yJdPwZD9WԆH%/o-p zp.&|v EK;dmKwP_G3 #&t_uіʻk_L+K0}="V^UKzz(drKqIMչd}(lm+\ >e?t#g>ѻ5%Oa 2VIJNẼNS?tX>J$L:(jkLAiʐ!Hf8u50Z^K:Hbz93)VDûs NOyB^r;[[{I1#huȉ:ըlبU~.[O> vmTn5Q1=|)r./>z}ra cƵ'nLeYK~1E,~s)b&IO<Ԟ*P֝(f{}`*aI`κR8d`/%7 nCʬ:"et/ #j|saO%K^juyfD>>T#xc˜GBf\اD }oCe9\pmQbT5M[ᄳH"> sSE]b nj ;(6qITGNML7px}!i'!t0[bXW~Rܣ˓=,jF_oAFs/UNb!8踅6CM ("'zt%GaU/):uNq$_Lƃ]kAk%j X;,C{Y4:RCRwX36;Х ]oetDX> #$/*SB{m*9#T`l"-Mg,1ĉE;wK4{ z@KW5RJ7, z613_I^h a ɞiSZ `F̻{ Y 2!+%ЩnK3kpW'j~[BooLS\h`;0BBV?*V`LUb*E֬K␿_fQGud|(YT5|RxJ52˳ke˘@hI$MtZ644(W0`|h_ESw,BUUwz>RΩ.k]L]`Bа1zy0# j샪L@B6!:f@}_ 4yD)MSDydԝ1+${Aa*Ex%j}ǟY\Zcv=4ֆށ%FB_U~O-apS_"n)x+͒Ɨ. #5SpAE!M]:*~ \pXZGOyl g?hE^wc+'յ}:';.gW="KֶFQUM=o$h9&) _ڹچ:RpDqb.켯)}EOTr/-A"4p /7oc`nnA/ڶ -ssK]_J6)I by;3 q"4 v̝'i%RaBPT+rT%x WX`r`AckX;W2BZW)e*7?e8!M(pؕBP=˃x^h0T"su8Թ( 4iթ7j"9} D?J5F U2 lBlwfO ՟F=StgVp l: ?H󢚑M7K-'7rJQGbIzɤJ.opJg9r[i/U\^ۺ8:鐨鴨4vCf|g~GhMUH2K ?hRJt66~|ݺtޯC<6]8r/XNjOYW5^|0=-d0vLOsϧ1!MBЩhB,.-T#JFO:!ojo?H;ݓk^7 ߇mSZ_ U;FFZ˱iҁʫikT|l&/3:EP[xA2`3}+n>hXyл d߁^_?B>^ q"L|(x9[Mni=Op (F)#< ܬ'4D3bsT,3`(G*ݖ:Wl(Qf"맾c>]9?b>x( oFJyZ Z{3[: Ct߻;kN^[dJ 3yftnHL4t6S|l]}T N/j6lm[|DE6 (?#:-ifg:QA mBOj_bGwLuꙝ.#7.QFj;auj#\(i%cU<`C^媱̧&%޻5ZG\{ty%sdO>j/`xq|iYXUYd0G f7,zm)h*x( QTiABQZ uD/S8@Iq<)|tDIt?)*>(NA ɶsb$_hH}W`[zʀM聭'M"hY^"4ʃ1oPn|x[]y64Nb(t^E_ꮱ4<㠆Kc!~"`qɾ@+5Q"|ѡSV! &+p 5`L1AK5H8a9$s*uj*'Ky0@e=Dj ͥW[qU.B.s*6Rr'мlЗje/jtdNZeAmO(Wj7 a| ƶ K"{_2 \}Ⴙx΢ЅͲZwwmg,#1F3"AxX2[v ax s;GVUVܖc"YLL3.֗`tG4A)^3VqOn4KYI% z{+Q )YZ8ӽ[F y`" >sg]ԣgt7Cl@F֔YmE"T5q8 Tw<6oIK-"bhdk`Vǎ KjilG .lcvE"T2`'$\= 'hRƷyhn1dDe:'&곬I:OdJ Iu@LNɵ~顮[}w@stެֈ&W&IR[tfᬈpΨVމ Xti l# F|IDIoa:nPc`\ns MKëfcV^v~ٿH+}9"ܗ&EQ!‡c2`ZEd%a࡜tM+bGV e&nmdNa烡%\Mtx/BЊ@gѦkd5DUғ/JfI.` +ؖmG-w)* }eNx*Oz&W026wap1qF\f񅺌rγJQP/6&ᴝC>P9r(k1%EN-{ 5䎃.ZpΦؘd%Y@r "N m?uX*P9v!ګ&G )L!OlP4 2 w{$0+Ҵǭ:KK~ԊjQAz/ B5"&yY~Ì`JC+SQS0#w./!ttؖ2@{1RrK?RI,"]b7\@1o.ez(niջ9nB 4Vxnߧ̭x[iHB搨WSyXF{J9nGE.*"t0xJs78WQh wÅL@ FR.D]dI^,{>6{$N^Xeu2)v(k0sA^[^18ؒ]sBOuBEOT P`&)^w66 ӷ6qBrڰql09kXm#y~&ݐ7m_0x IV6̕X}scuNo5ar@|:5ʌ3䑑 N"Ѻ+Q-h듍@Ӓ0ٖ^c݄k9!Ax ޛEj}oO ED VaQUbӁ}ֽA rqbE?ж1 Bx*sĘPWUPcm-ZAFĹ b?wBHyJPBÈxk':>;~C`VۑKCY2" jO m;v̷ k ؓuwE?g%kGs $1/N=4@|E&إVV =1nq4**kk"ߛqv %CNS[#7y gt8vtV7+SO>=iqfKəbXSY#%kF*[諩(9mBCtX26h#9M}Xs),sBY;ثt+n/ÿ!~X3TL/σFY|F-_tKd , ujivG8B/(%GERXDA~OU|o|a~0gPBǙ_k9o8GdB@:w7/3.]s^&z 3ED*C I 7Tȸj, CwO}9%"]*KylqoBS;ۙH+ԡ:>qX@ p4Cp?,% [~FN х brW2xL@xb#wd-SzPI$3upE6BӃ'smns`p6ġm! 7{a׿笄o0M_{IYJw$˕F޿Í iaF)jK:vypqHbm1.wB]歫-D@F(cs"/ Q./tQXm>`;W-!{HLt 7\0&;xn\*`h qJ?`u5}z\R]Az9[\k O4>n$YRfZ6 t[V.7W)n:-2ujY_Hk"Fl缻0.l 08(kiVa6 9:L |KMEG]bO8HNg1r3IbT^cCxNވ_X)͋H)?3#X6}\A[YkA֊U %xD |r2YNT/*doEyDB ӼV̘~TBwB3^e;\㪏)f\Y,e?d?ŠAmjXc;2_cvG!YJI-jFF&蟂*?.Gxxޅ;Kڏ&N/Crݦ~<"66jc| =po'nL>Pl5&7;Oi@gh[w/,F %Iy Q ̀3)GcHҖ !7kZ#P<cDlbʺ39dZZD񐪒;u۽L0hoB0`v ~aEX+~Gvy+z_ޘuvP@.7=A+}Z$d!5 S96I~Yh]g)H+ ӸKlFC )ɔf W' ^-~eSZ/ԓV0kOZ;}r_ IhF+W޵;Bٓ}/dhy0zuBr# FQ#8p!lVF~IB E]* -BlpT}kKXSth,{{5噴A]H"طh; reoEesK#h}xp Aʓ BQvգ9.JQlqym,.siA6$[=RTt:ާN8rS̭9Ag^^]wM蹪Q[H+rort sr6!ԧ3Yp hD’ oqsan,ڊ20(9iNR^Aơ3Y9zG/s0haӺHANɃ%f Z%ӷ $H̯|(a07x %<U@ئ<6 #Oq[nÌ_5f zb7?^ULzkycCM`re|N4adIV<@j[)~n{&!|ZOFjJ,,~)3JU"m??P6#tSUv6 U<Ijp[@KCi ~wl3S6n!s% 0ʚ׈rfeHZZ[$e)HDF# 8+q srgRy:4-kRw=XbdKCc6uhϟ߼VW> L_ӽ ~[0ϵ=`!_A'~LלkQlJǷD͛gA2.?*Ze= }&wȌ8KvY)Q ,K.D]I -趰r偨2LAP `& {H=b@jK؞u,߂6not4r7UP͊]Q;T|llڳd.lugr/hR"v|t;`Ǜ8GaĿTjlhVT˘zG2x}"_i#> Ҵ'گT* H`Hg9 TQsv.~&P]5jYFzNgўr.gr^AV U]&@ 'Fr̼=~*[)K{GnYwڹ.ړ$Xk\,wop7q:ƷCe}E/8euV/W-V%{Om _|7K-Gj/M}Ⴕ)Tq>T`C#o[d=fla.BhR-HG5+ #~ȁurdRxqӧN^^ C+3W9ȸ4ł>738K>Q t[)E"Iгہ -`3>m# Vx&&mu204ArAb힆6uX#ַ6_-rI iqsBcݨѸ5XҁB||"yykwcBVߧ 8Vq CM 4TQd:\Fh4_kkxwM]_1)x9E.DFf2FvO侻,i$ GPY X\RID7iV64lo6}sA.[1rFaO<#YWN},mu.&S,u((OTLk0=af?P,OlJVqtnѐ2<˩JǬ~fҁe)bt'u<H¬QQʲSHƪ slbA  3& "2tsl~ i{VY=b=U'E񈣉vG"7y#WpD37j aa:~ zy݁%1"lP LP!3otp%}xGH)=O v"dÍfSw#U^Z(T(:&ԅL_ol'P/EJ +?U$ﶱ=']F %V4w68޺5ٳLRP{/Q{{SkH\ AE0 v{h$As&gT>Գ jkꆇᕋe,#f|X7m\=тD/Ag~yX i:j(7ObN^P(3m2sڄP8 mC)Dc!٤n]*-BUTe -W8lz\i$)B =%6}9c'^MW+esT8;AlC8TNW ǜNEƴԄ$4nN, *W[̜ ogCԞ|R2r9^MNvH%C ?bHG,޻}F!\# AnO9$ԣ]v\ʐt|׃e~`܈x PQ,%WFN]񂡂bM @JrA4CpzD@@cNgKH!?=Q"^Y?\ c2 \K#;b+#E|W39Lx*\L2 UyؓYu=Ca'Sl3r?9Nw_~l&ٞyJtb>ʇ)ƀv{?tW\ٌݴ顓?wpqyM<5t0->|IQ#D~<-Lh˄5?")ٮ,dOd!c5gxM+܇[>Kj]@ВI'@%~Ɇ)H$yx^Ea<_ USc`j t$[p~c {3?Q4/q]gh^-!QS=ɴ.ߓQ돏G^e%J~ts5ȴ Z֥2Zxk :>6ZG')S)F7UX sa,o͞]CbEՀeo21 (D" B@DGzՍlL]*tË J9Pn:lel葓|h-^"0 ];9.;(LL_C؊ن}!&xf}#w65qꔊAc5UgmZFm6fCh$6~e!dpp8p&ڊX'Y&XN0C/<_T4d} ŞnR-!r.4Oе:hbpgO^ot_`QF/,<2-F:3-هzĽMٵE^EUt|R" ngP ["A5JZj!$і,9AOhmara-6v~,l0y)փ8&'ϲ?aH vs-d;Wݏs: [|8cq)\E+y EuF㻠H{SS$w7/V=IRr'Ai׃1XM (I5/ӆp?(^ۼC%93gdn{h=<- 3g)C xgM܄P^v ғ0iB*2q& ok'A"~x,Κ63~b !iB:/hS|9v_( txST$~p]( ,G?/ZJ&\SjdDK]q7AuJk+4og #8gs=)熊jwb"vЖcH]M}[ @f U(%xf_q^Í:V^ ce" Lu]M]mr"nv6Oܽ+i]bmJlr EWZ, d{2,$B!^lשj#R wk<%3|D9nPK&Y:,&.' Rj}N䘏m$\Ai*!uZXQ_ P?VJ;uc{1 mnneXL}7r[/@ u\a{T0ZbA ZBL4-"?$}̴ܬ'\'.W},N.r&;%7"i1ɔfYyƫ]c {"Ĕ«d"3DFcon"]Zy9s۷ܰd@7h]h | Z@X<[qj~1%ߥZ' r='A&Ri7#BJի`&A5[SZYt: ^C*ýg @}~ρqG^@gUw-w=E'Y0۶M/5в|m+G*V8땙.Fd0Q`e[0B]f=dμ[f|W&HK rԘR"cJUHbGzu+Q@aϺUU#P2,2P؆G{?vX?G/j&:^4>λV+:E&lZk{Fn+\-c[8Ym o(zToJ޾I œH\T~]QK*UQljVj AIB:lk*cwUӜ*DN,-%hQS$^Ϭ6a+̌!j!P A8h*?֮rT*T߹0'̈́)ɸ2q&T0C-? "vtDX "„ye5-|xweلX`Х8_W}Yaà{}ɍ /T4R@j9)qC92U4HY5Uf b=9?0%)%y{UЕ8no"Nv9QE3zGs-J-3v|3&z\m&q wV]^u+GZwg'{,D,}MaɐBR0jSyW¢T@sXvQL q\E[l񣚜'v/A|.L J/\}Ll!q^MHnazɰٽ}|kF+\x! ,+SBcB"xu=:*"rT@uzVSwꕡn1iO=Ew#7@$׵)4̚@ ^6~|`O Oj1H4 :˝zN|o!_A0 ~= ~* o9>!ś>trjƛן wz[昳quY7L&ӗPkrK8MD%>& R&a};B8];qb4rjoQx ƨ㣃z4ϑsALehME ܵMS>"{;#x/2NJ`}YY' kXt2J'UNKW'r (-ߡ2~k[gcB jS:eU3졾93K ~syXJ{b^M,Y(d@ Ӱu)X wUwi0~|U -YlU$bC\-SoNl;5L˝ٜ~I%ew 0O@ sJ!p7~Jck$v9fUN+ #D$)d)~oP RӜx%zdur\׼amy+قtds.x\n |&1 ٺvM[E4xwNN&5p*ܜ.瀑{G lƔ1ps?ԱnaـgK\OJBZ_fr~ɆyWUGj.rP']YAmNζQp&^EtŭX1d͵EXNC|՜LPo,iE&,C~" Rd?,!MKc D^LQ/s78HTcOF}_q=4 RAXˌ(>Mk•ˎLtVHr3ts#"!0*}9"7BGig%dXHh[@N ݔ͜Jdd֙ztPˊ0j鏭94{DlrIbyeffj@89;hSFBjp3~!Y& vqѭbN-VbS=wM7I6Qfjy%j]SKKNyIKok@h6P w +;Py)OD.U-׎@E C|rRQsbI wYVP LY6$s}^{($UBL"I`(Fe$Fm|4D"Ul˕KX8m3hN[A$Nso5^iʹ1q=|0ndA[:NJDtf:,*ΗXc>;6Crͽ#B|G\9cYmV{ˋZKgcGbcT}Xw"A7s+$.2lƬܝE* ΘAe{:8`>9ސ.*gs,řoN*7H^X;ds]( BK,% ~J2L{p]d`?i5X )ܑ"b%\n[~NQtOeqs[jAR;@M)]nowzHMȨAmt2݂;bn؎Kr& 4{bذUr vyu΂ӟsj1񜶁X6Ef̥QLcckgQ/ Z|؝&t^LOZUhfqIM{$O9"Uԩ~]?;mHj +VJ#H=: ]6ȉK"c9-9wݬy6 U_Z W&Oo}4ۡSÀsAR.y+DZJMMX=5=-Z!!vwjj FWʠ†[K#<ٌf8c#&m6Tʃ~?J9 }YQ+b2;8"jo,aƔcIch#uB:܌%Z"o}q_>4-eS5CFvgtf Y}:]YAqpАӹ셾J@Nm 1:r `̲mH7ME99йtÀ-&W|r ?o ˺r xZx^X< |9 &yL_jI[#DGO$j0o/Q/сvRB6]u=%|A듣}Qzm/:r$1 i(@>p8'ڡκjyiðQԙZJt2F a }T9-G_0JfNDP0 T鮳?0$Ћ+7?L,N $}`_\sXNI4KP)Oߖ-ޱ\.K*A-dEyW,Jl{CqB/Z{<ۼa,:}4A"},_wCa2&>d8UcIBiu(Ag rGvLᐚqYoHh ]pRraoZ@+{rNl]"uGi[mHUʧ)x 2gӥ7]dfQͷҾ*KDv=M P=b7^F4mw ,\+v5 ]b&[8 2lT#,[llS+tW`)^mG êh6i\ml{;^O)S/W38!6V7e!*J1)UBw)#,~SyuC[>x F۝0.]0I_WŏʕR.O~UԁJi UKMd@ǑхOr K S #8aձ1IY!pw} "iҺcz0PG{4dւ臟#~zoA*ϛH%BJjWpsvh[ݕr}D%4ٳ 7N!(Ixսa9%pgg ݇e,Ir'Y2SrefHyC{1A$sz|!6n1|MV?y˽JۡF`30F*<Ⱦנ\lD;>?QOuWCE!HӼ(Hҿ!dy$0D.usD0JqG%c '&+Hg>p'ݣ6eJ9pn0@03>:E+XSm ph^:>:GsjL?yw,dI$WS1Xh1GJKɉ3c·n>^ Bc'_l6q&/%BCͰ#9^1ӹ# O1R>^ vD* ЅƁ-T=Wm}CbN/^ԀkS-Zf h5wUhjG FHO,=7%Q$I#L/ҼL]JեWK༏e[ /m>I3~>Fӈn &#i]l(ʵڿdhGi=.;yR`qσrVh O["gN !eӠ%%o;Iy>] ݰ`V VM5q!Veǂ)S(l d-ii<K=h=6(EmL3(a<`K::Uԝj:q!vEd "I־?`Z ?$|WGtXŅ7޳'p$_RV=r_ѻ qP7C稡_#bfnB*䔔^D_lƛaFnN;2uu~6Y9( @$Af);7qi=q}+cmҵ.OO> _dU v֏1Ɋ{)'u3A3u2C)8w=: N*||K[ٚ F @?8oɆ3dQ걯srsŝJ< .aڃ엞wu^!vRKZu3emqvt K˅[`m&`V'%-6d*.S&\\9+COѧ%p3q !fzq7@ AC{Tͱ%/Lϕ=wNgWPK)nسuh`Ie'@FA,ՍxؕK,#[ 8y o>}{pCE2{9@="^FE@G>Y8Au 9ywܷ?mEMRU Ռ Twl*$nqB4[>Olqm嬺h?Z#S.ɧG'F"Z C1l&,b񁚅jK vP_G-LDsb&si颩SpW&7+pWv3lc.J"*įuDvyA?c]j|莼+胪wSץ-^u(<+q8*FVD#DYf4\ WK:2aa'KBMFK(ni1^[1w>ĀsT5D~km٪Ja[o*λ勇JCGNE'-ܥRnp) P &"}):mushgBH(Wtk`>kW:A*"0I,.!h*< !5!&{mp&s7+,h˓^54Ђ܋i[=;lsɬ5=jް'j(ĔexdYԔKvoj oהρ=uR(Q9n9.$DYv~Z=bc t*?'k=/ [Hj(C<ǁsojo%UvR'^t^$ ױJAfd.;28͎Tq0qВyO}6Z_1"pHc>B/ 

    X/%E}Q:z`"iUK)F?j:fy/~`B a&ARS'vwԽr ̇q-8Yp1e (e3JVw+{$+ r@UB&9=0 yVTp#`ttMs._M-Iﰑ]JYF=.oJW~>@`:P-cbW"f[H{Nbdiw~! o,1pE$ڗg<?gc>B8:FxPt̵Qiڑ]zk/]̐5Amv1*N[:x 0ݍb o0u7RV¶nD1Gp,\GJ 3u#hIU`CɡE%9HUҟ| ediEH#|Plpz3 VYͫi  㛗oEe.HbnGBB WVq_Z޲Rq 9h2S 6:u˪tCjY3XE;(`wƗߺqg8kJ"OCRRYBHf^&vʼ^gox>-GcNE'?%oAn%`_c5&68wc(%3٫c0\S@O)|y6aT\=[[=dhmp5ՂFfQl&Q28 9+e*!hSI,ᐖ)ڿYWxGPzWdmwc6/]F\enrficZM U"kJ%0f:"EFE|~VD - Gi*ep8ktR|WKC/o7l_pK4 Sh $#$t^,XPJ)+Ci_ErY-Q?ؠtIѺ!B &RL pS^ֹokiN6)5~lbOax6@PTŮP,45(Z)!*|b W!L.":z(QGKE!䈨 AАw0A!B" w+?4ۺqs?`HɉzA&A EEєytbbdL?yEE냭dX@c@9r^P MR^*,5pI9["4%1 na':poxL QۊYrH$} K\ss#=4 `܁suQ,gB SXauk%yiK^)^cH K77 V3׆"G?CԍaZּPVkImVȍhicmUelY){-șT">Z{}omLnB,Yj0eʚ9P(O>Px U##B&l-8/_~X.Nj@O2?@,"pDl[fOitO(;2j?t,\+81>ɛ+abtiUl$gУqL6j<j5oGngVJ*|8i7,ZFn{utN…ҴgGQa rlqy3Nnl" L@hnˆsNL%ġ̰A%Iޗ5˝m G(t/6q2YPs\5DuS5QcCW #p/QSy]49sD tв=VApXTmw[%-8}p Es} VӳFm2zl%KnM;-|=穈S`RvC.uq&G0jh PJ m4Hssk3~Hd@SoYY;~ hh(SHS8]l{'PIra?QA6 6Dv1qZ/ rowӕgugnҐ~qpx2wo l,݌zHgAcwo C[%J YXFΪć Jw oHFR8cAgؑkrH6^M$3dXIˆdO6b)ʦ'dIYbӵƈdz> N@/-|Mv A-gqÕJ!3M?lmHF __3MqWE7b]:s~|\Ai9MhXQK ePwZ DdȤ$;k fwPmC7}ݪ zAKȒfpIqqQ&*.9xGbXLHa𐒻lfpIy 4ֳň3R-ihNus4X[ܔP42Bw"%8t\y~>^{ aݍdo')O59VA*v5I%ysVG^ BR'SlvcOOIP,M}*س23yLPuQ܅uľٮm! XX:԰p ؕo6uw}@,)L):gMYFQuw# WlW=&2J{Fl<@ ,IA&Щ8Sv˾8Y-(Oh.sdr{xYOާ8[^M8oU - LŴ V=ьTQa4Iw]MQP~΀ `ɬ@Qe+c0g($.^?ɬ9jnS c$$3Ђ5…/c,4;p(g}Ǘ~gt05:%xwD΢PBW-ɹTSJ8B돲AioPPI!Aa=+gޘGVEyP_n?Y`%!G{W-=gȱq6Xx'rP<\2G2FJd{E}8vqRj-7̹~ d,gj>=a91{/\%Œr SV{B,5szm &:L Đպ7+Op! w,z-o~bڄB lέ%n| `22\̓vpnD &UavJT3rX^*<ٍƐ7,}*8wU7w8} 4|9<)r-1Q>F9U^N ܸ|wO8m+N@T0-=`b[Y= ̫Y"P+VG_ |3pkP.E}!><)x|w1̈́!G+mi'Z‚['=G!P*Ta\r3@i5ɻ gLbLL0`6n2k-=&f8ׁCȯ(\D )n] P%HM `Bo~%tﭱFCɓ*3 @:];E3+9rmlUou%X<%ܕލTB\IqK5g{*i\n,B~֪sDׂßI,3+(g!Ո%i:H=cH/)*W`oed3B'MGPP<-u_ںbVE:$5X͛4z -N>eGIy[ Mfr"sA'tt]N:8@ĔIn:I;4p&ڐ?bc`Q瞎˚ .Xa'^"0 wI얈#ը:\s|XjqYR3%ߍm):Jgk ,,50*[i:ONRmy5ͮ.䘲GXf `yJ-eN'wP{)uߓ`S3Ø0I*i~SEcu $q(' L͟ńpF8p53 A iKM7;[fՖ)8(ى>̂v#&%Q^w,@Ɯb8 4HbG델Fޣ V:tU8F\ԠLH5*2A.=dP݌(w{&PvG2Lvhu7 x׉vWуw> MeHP)OA lFTc,"E"v([61ް)8C<#iiAHE]oObA/6E=$!RG,UTH:&t#jy0 )VsCA~ 0:?,*@tT]ՙ:er$ h kU\GX۟[-}QJ#Ss4"M6ޑphOY d$L8\:(L,ϒm ? 1kȴPjl}֭ãxRttPx) #QߣZNlӦ)[oՖxOD=Ws(ػz {9mvvw.u7P~"X)&En=Q2M+bpqQl<Sf3j*5Kd}F(Ejy. xV'!Ǟ:-\7oexC#D?N6C@fD#ݎHߔ;)<ttz8߀uBɹ2=1dU.>R4SOY{^]lk$feQ?fې9 G`YfH K,3O2`;w$yeS$14c-NrZp7(@n֑eN Wկ1h%gƟ>SF !Iw`}B!31F+ Tn9KBKhzEL[\ 49QtVΗ>ZT5\5S;o+j?%ǜ {[zƈr*ӃGW1nT<_/-O{efX[{cTspjnBy2aswEg6Pm,[i^G6/}.J/ oy]3{l+_3lݒdۅYr#2fNk?ɖE*/d⅞6 9 B0B5"\P__fr ,ԍvQ1~ oi(3w*,τL=yy,v:.p"[ =6R"V1ǿP:ƺ_h3v_bZ8x F"%gf3砌Ҹ ۃ]b,D$ɴmnΧSM<@\2_ 1 j3@*Eʀ 8Vpn1Xp7n-:34{wT,>zWVWgd?YorWԃ<5 {esq^ v{S;Y24g7ȋ8ڽ1Pdo\[KtM2il7|o[EW$$J/5be4^v^M9/|'/'3Ui^+YY w0Hr9i9I !p >s*&Q"MmQeo+$wl~3,±PuB CJ\qJ:ޖ E6YFN-x~ɾ!Cf_Yu!G Znq'=s(ysL}l B̙̓|iІA\c,1F1H_Xjf@w ~yx^XӅȧ_U}.oUkg[n8纈bO>J9j4ɇj¼Oqx*@ Q'F=h[,+-89Z֧~arb0`z@%.mNNH]hjƎOե)#œ !cY/nv(%! [457x~_ AH 4@P_fN9ݐ$`Njgq݉SO` 馇lߙ첈}0fKWoxOLҼ qmA>fpQG^$)]Qn99Ko!ƽʹ\r{F"ȭ!>u|ޠje-P QbֆQgnW4Pq,lPVrɝ5NUISM*`@j>xwՑ îٺ,"ޖѝe1C^.K+d889,/2OcXalե3f+[I= 5~'.˫/,씷A};ؠ W%On]yMe 9x);A#x7a9p̫KVwhUJxB)EI>#)™eQDx+| jۧSд"U*׌_bM1&ل^‡gR [xnI|jH-~KC|Ԛz|`*VXxWUi g4bUahUT(u(75#fGb ei&L8eioHL^D\o22ik*Kڮ_e-&$ A$H򔔤xp3..GbGl;9vT6G D+y t}&֡\һ&nͯDqŪ;_&݇1?` 8sK|RJ" QLJTu-\}tzBfSgy0j1Mbu z5S}!]LNp݈ouT5©)!B+R"0ֶ8\/v*_?P9ҳBq>{lKFqTySKd hBr_Ɔe T)mp;A{"J52G=]{үRc>&25 ~YzԌI>{KǬ<RTs3jl9BB4J1v{OHaUnB!5`;^K܄zw[ٴ|-j[dB:d"eFի‚] ϟ?YP(CPE[O3˻VCԄT3in&Pv'94+dN)ndu :,zÃ6!"cwƠ%bG}dBonI.fha y {#:"lGY#  T~t'Bڤ.ȩΥ,N5sl V/fF1Q e;Τ# pIR$` CP6n< M£ !3W`&5ُA ˎꓥu;w`Є`Hl=DdR^&b=)8Hd[4V.ys+BB̀ϑR=jjGܪv" ^H_bLk0MC MS {| 8sBSYIZ}$ROW󂚬ܮc^i 1[FB-/;"bZ%o_IjV jY ϟ+cc̒, w"KfE@_Bhi*56U^kXcW} $\_rzqd s]>-0l>(Q_?ɨqC$73 >l?=3FU^b}ݷp -C#:,y&0ѻW<$Ů/D,woKz$3˹9 6਋)Ʊ0&Ax~w.tWE`9!5*\u?9RUK<5A*?KLj)8S5W!鸹_:qc5w!=< yZ[V-WNd%n2#mDNތZ*O^!@Iſ'ۆ"$dwGgw#v45` rnGpeZ4c#wKUPF'AY ʀzHg2җ4xQPA6*"$voSidJa1^3x1cڍȒ O[߷Q F|QNI1 WeK:5];(| ` "_MR JSFg+w`SIR AF]H@[4Tcz#-!(n gCsGQm ZYW(, yd67ynzPRGj߀b2#AK21GvUހ6mh(-̿']f\<*pF6c ڴ2>Vyiyn}N/@C+9bd7ȂG}r aޭ$_5l܌2ޱeCkF~f=E?e2r=-Ws{\+Ԥi 'V$=jmhNCGG?1\bU!Z]q!r<]FRVs7+Wq ?`gcPMqc/ 2!91 :]޸CQI<$HtÏX, HW3>%&Rf;!ߋ{sz1fK*V6 X{\'aĎG3rNҚ 9>=]ұYK#,c,](HYx(vLϧab_~02,mFq"d$rܢGV;.5y ."rOʼeizmػ6 k#&60kDJT];i̽?>mx{k^zQNN@BY2(6Gf8N9hiq{ Z=GcBb:*~B@uA[x l4{3 14ąe\X!$2iOD6l052#deq(YՊJteD|l,šG1eu"D432US!]t 7~2C " 5^}OQ0ۗi׈Ӡp7h{Ac,_BTHr")zԵ9Nb3:t7cvpHEIk We'ɸbT-b3_ۭXemC?ecim>78ɢUIٱߘ7<އќi~^j{zhUb[~f)WLb7kXC/6 ƓC>9O:gHM%0&KȾBA'lpMTLѦ>,ʁC ) 9iGqXad*{~gZ)G)Sp76a ruޕ\J x@ F֕ykZՍLn'Pzcv:DC9oٓi䬀e巚n8o/&T ';Yu뿣ldkZŅ̞q&ǽa=4Ox!k.`CtN1PZtf%^T@0qck-P`#,ozZPg<+TFWF ?_yV#'`u%%*!'ހ8&l@I0ct(d L[(yQ8q<M0S?}e\⁸'[dl0gJ *Ӕbx|Tb37Ng.O@jM1V)Trg!>N%(͝9BMM}2X&X&yOxjgwc&/ *NoM ( ;2x[Gs*kЏƠϜs#:K㤜e $(U~' pܿo+fYPs{gɳؤLMM6"WgĹ>vCm= v74bYRc6S$@͓u&kOphQq1T/'KD-W,.,=B:@ubld+ Eͳ*#QGZrk2q ~Fzr$7+)"(I,70Lr`9$^TPI]Zs :ڰjࣞCHq]CM=XOA6U2{/1@u msA1"H)UUp)@Ed,AbK\RZN:t>E/<@5iCZQK(.HLcuhg4M~Ck ,;[ObpJi$-?;v HPͷB #=Ovz\Xd.hGMTXស ͫuv9fLbXn9Ndf-n0oc8ϴZPq몰OJQ5=9^W7l1pCJf8K}7 L`^2Bz]ײ3@fݰFl F3MIi 8FT܅ %d8`u7Kš& *?MͨW\]q h%V^xKF.xa[b8Hn3O24crh5w2"d.G! c[.J_^A7wh:*lR]Ȥ1lQ}KyOIo똉 GOjZQ8z=- Ө%KU5<κ~?U&>%H{thf]K3P-=C)=C㭔I WXm`#TWb\Fc9) ƴO,,$4eE*M.A"-%G\ ߰/XAb؂pJ(O)}K@O@aG;a?y*/!WјaPV49S6ʖD% fZz\ĥ#PluM۰ Ʋq=(27t%@Br߳Z;aG"l-XzO0tk]擙,M'!lQu!N.?olu DV~9q/R*'H!kcI6 `dSw?Ry{X7ȶMM$^F-jShys*meڇ"?x-HX(re,g=L0̈́:]B}q,ꖘmȊH2=fd/>:R;PӒSYSz|q1Q8<!W@|l:0n|N hr9\ΜbV; 筏a KϖhgxZ IOໍ e$+?ς-WE]xfU޷:wq 娷x4DȬi.d^-J 7p!ux}V^f̏i\E&>Mmyw nNh鈖3Cj(׊j&R]:|^ˀm/q/8Ԃ`,=.c1tՙ̸m}Ί?\tp;>sS# 7ZT j3(Hf/˪g+b?LA*lD{G_*D=Ĕ8q::U8 1f4 g3m֟Z_xceBH%Q1 x25jD_`PqP; ɩ@kƕS^1,ώ#`ѣ:+ oAuH^w]Tx"@]s wfd;}2 14vIP3>@R(7 &JMMBhC\=_2h}W;^FQtu鎔B# [54(I~) >x KP=?ڋèWy11,;d()^R, Zi%ə!JX ȤZf5ָ dK$zz^@ʚLCS!=qeޓJO(2]O'!'v^|WsF>[ -h?KlI3GFєX3 5b @3g+*NOٰ&Iݧh\+jep mb# 5m*w هORgݪ0w3nPzYFӓd0dؠ= x)v7*6^DPmh7`cT3X^Ж8  ǰC'OKm#Y)J<+Y^Ƿbc( Lh@'ZLlA΄̔RؕȮ RluJ!bO(<X "YK(y.Oy(vk,P,+& ڭfY$Ps$OX1B"X]/y1OPQLgZtT꧶ࠝ4K_8D^G'KܲPmKˆt߻G>,ѽ}ۄ_S ޘgp4@3V}^6"GB(09%ƺo+K?{%@`hޞ0VN] wK 8A'@ 3ɟ%)nUxyX3 xoaOϝ-Z+|躩۰NelP{CXEzLm@\s|AgG {E_B;mbQ1gZq,3n:bރvtR^k@+d _׼ :qSK{%!k>7e̵e_YzQC¤NGҖTY\1`hy(k p+) nfl ,RW|o TbA)Zm8Xg5;HMnJ0d/Vx;F`ḛS:'9R԰ifX޿<{GtOg{mHB"\>X^M\ryB2D amn.F_7%t[xlKXiD7jzRH}%:׹6,MaEwA>4PaUkUT.N4%dO ]Lxfa7 Tp8u5<8s{;},؍M27OE &M/)-B)YS+0x%3!xMy8} *XGո-VTmwa^~W0h) >lŖ._~Tsօq& _aO)ƋΨuK|L!ƀyUҘ@x%yT,fP53Rlg UJuS/f1. =P!O(Sqg?: ڤ 67(ۃƜw}EDR&#?ٖW{1sCKC f"L%ʊ?4N%?^# mr$!No Q,XS)㶢a~g㦴"O"ά||nWs;f;o%X\6ER1v6$5(*()7a>>.p!Ft-S~.$#'ih~캟M:#g&61gb!Xxc9v5:Ȍ)ׁ<2@I&$9uO'ޣ/=i]j[|lb)#;4-/玓f۷ۓ:#26xv09^JZ~S%๑}NsbeV`h}3J*Xm-Ggqcw8OIz;}nW,E`@\Z],~EN9Z !ᑮKt ;[|vdmjow$2W.1痍}7'j^菙ʻ0C7ߞh B!ңjYp`fb ŸxyC#3„< 4`DcPIY&-?ߜs&3,()Fw17`͟Q 琢Q '0(˭BEC@8ރ@u L]""X̘`5Ky$w#vRuiߙ1&KYA)t|HbQ1REFS 3宼aw+yTktfߖ[`lf :uIpбBJGϣi߆ ٹR8\T4 wǨwh7H}Q͚X& fU#QI!+1.xZE$ReG 7L9ݒ;\ KPM5ȗE q:HPOĮ3UW:JTQnFP!OvR 7\Xlq?kV($E^L 5Ղx<3qfJ\cr!*ܛ&-OQ;Rp;]_chЭ jPyy7jrl#-͌|\k؎Nf4!a5>7F?*54,8OpuQg|-FX6N-Y{]2m,Wo 3Weͪbա RiڗbSO&)}.&@  HXX7+=fUpOY9# 5-LYhNK|hm} Q!$(wW@ 3,_#w3:(8W У5o˼}l\n?#lש ˠ*@jdD_ξtωݲ/AowH m'"YW/][@&w+[Tm@Q͝+\Ca7=E2ǎҿ]m,d`)L#Xj?|kJ\:c" ,;L;0VR WDIyzoQ?YE+|g=K lMnk3n\R£^*ssƸ!hT$m8ǕQs .f! L9#?O7-dJ\tܚg>:Ww{x}(|k%iꁭ0/<ػFGP]Rߧn-+%Wj ˊ%q{|wCjySKa;}g*}磂cXO| x33Uh?ufIЗ ,A(ĂNMe*D*>ӾK]<;~*ZO>wSɢJ2<?H;rbBh'SAEqv0,87' |DB~+wӻZirnр3B9'{$9׵~%U:AmσW dS)=~G"%"8.Џz7jʻJˡ{[ƽq-k`:~]J9TP3ݽSQܕٔ@gHKQ|Y[s̥`z p^ /dQ&a㒬*0;dL'Z!*&*(*hkMk36z !簟͌=w 0C0YV" *a?0;?ⅷ[djVVzxNәpE+K6cSAY>=Xx'`ke&Bx$oR y.YJCޢr`°nEǟє:-`tdCnJ_9ա۞ eu'׸(]Ywmo鼟#4+Mlu댻hJtF fo23gc3GzU5p Ce "|/x^ܤt%!_ yuB~xztL\2M}@kFS:|jF,+mY"f'T\B8X2 -#\'ΊveE> [GDc"ׁC_?*']>߿9񃁫^K۸i VL%LdyQpGPJP,,q-'bwKܤpK^Yxfu4 ך=5(4 -ƈ4'.({4;vn(a nx# .i<吳.O_Q,f \EGsM`ܕ]SZ qvi84a<_-oEYgpe0OC~0_'YYamKJ-lK ;_fG6m2qҪ [WHD7N}음s]i&x*ӲE` |4"zK^K2j!l8n*u>}V9uWC T/Bkn#({ G#[!:za^='U-dNQRä2%tSD 4nZ!&kGm]G@܋Hւ90儍ۚicBܖT _R'M sdžC5at1𸙷?O9 ~ˀ`ڋZf->qTj _?iߝl)otwuHuW׷E2u߂68[’()R\D&eQsBl0P~9y &*~e:|a :]SaM权&VFsR2{j. nHLDkuJ˭V7Uy6<{ze X6L1E6|KՑEG6(,|͋!Nwk*T7C"nOD|54AbӒ?mzzhjK9y/gs,{+]ʃ${7a\ו6T3oYH]uF|~(Hɷ7%ISI=,WaŴ16~GS+}*ѽc't;Ęvgl#pt ̛{xVzr{9xg4֥ *ߨڀp~l|~sHntg^Y{$Re>5,bFZo ?y.9=㇤SyɼxV |S{t(kpRr [VCfu跡Y9C[q';#jf)#HHU?L_^ɡ 9 D]_1tk8- Q / 4h K joߐߨh& _q7=]8y2G.c_vF] _)Zŕ3^Ӗヅl?l|fJ7Ge33Lq_ W2ZKʷ&+rˈC" " ~r5kKeٌ=,/"f! WK7[f`$ '_~n&BgTNl~E%L*K("LuZ+f8%H z›c/s)5=lJԧ5\3wJv*+yRlU<;w7L"X9nx^vG0HB!az%dInO+B_,NN۩ofp.!UaR/fv;8RLd4gF uџ?VDb \ Am3^1_6oLGA)Y%E_QQO:v^d(3ķtV@>XyX7MuO&Iq ̞x7\V8l}veMk_{0޻jiV[Ї%&d%&]x>dpX-ҋW7>wֆC' +Tɧ,U޺⩮dpr:&mjZhޠ8%7~j5 LWyґa.X]‰ybKȀYl#kjBpD.g<`ФֹS@ 4(ZM3%Rs\&T$ȅ+cgqh9׵t?ŠZAl|C* `^,(t z-xC?^Hd/SRcG5\[3-KqfW? HzȾ] 4UgH'fTK$&in=;pmjNgfAXkmpk @HUe<H2`pm1;kljUW%|=sȃb][F,rnsG{IUkTӤ.!UI~zSڂdN?NOߺf3=9"1qrX:I?;"*TBʬ7}SG-(,_tFY |$bVx"0]+weIś|Jj iuf"uH W t 0_DM Th`⤤,QO֪UeK_L%b~{<*}Z:] ]82?lCgyR ~ u`2>AV]vNQ.mQBNpt W b۝pفq$[vɸy{_:vdBQ$[ (<i?H%X=̲ /FJzlh䴚Yl'4 C<[ ĭ))-"1 lt0uڃhý8Tisy;_`[!'ddBAsx$1QZI2)~/_,gf##*T`80ft7vtˇ&Q1=b hcR(BiM7zsKQF)1?=mc&QlJ}~$ чiI_ 3կ/?Dj5Ji 2Bp[X}n1?4ֵ^a*V<;qբ`-$Њ9V5 lZBmRSϟN!;2x o0#X0Agz-VMU<ω,|)00 ; Zjo6wHxZ+۳~rV?q]ؽྶG|r? 4}3:L$ʱtg@z:`6aSB>(4mŚ4cf!'MUSF:p;B 2\%#u.cOjc4U?F3Z69vQOp,;ם`=6_1K(zڰǪAaFeQo?s\4wGY=^{vNU( }*"zh;$s%1=8|n <ϵX%w^V $U}.̳W Dj9~oF mA2Fhj)U03 ڋ,Qb$KFןl_~E*7G;Hafʠ8kϛ*k;, !FNi%⌉ѷt v ^\nL`'gF R= FDsRarkM+yϸpjN.0(U8H{( ߩb1ᒟWV7{-Z>[RmV΄O{Opix -4~{x㉮=$IK $ }KU9bI x~j<%R^#vr,ju7ߴr|NWx3Bid=ܙrJ7#};W]dj1a5 d 6sԈN3h-8[f| " `Tx~g3p۵ *&_o?QArb=?OIN_&|.zi ̙.'"bd!jDOsՏ2_FB~,>2̱} @WgI۸T t]xlB/ѺGS b\QܱFMƍA7iAK]jy̌NDUbZov"7!Λ;I$qhՑi)OY(U O C@gC8"(Z%X:v^'ϹaAtd'KOGP?e ~:~fԂRQ<9j3_3J̟Fw9j֬o^k{dnU5"6*Kw`ypBq\;r᷶c>Fi{޺N@AjgT(oL$cKAP3:qRoT&;~ BgWpҫ8v6 u., ɸ&Э&. +ё9XT14p=cçYW :;9: ݴ+ S9L5jsW F]hH}n~z\JZ׸"0gtkyԊ$Uac ĶgU2dx*lO[Yv :ܫibk h^?Su蟨vH#gJ ߣ u:+2ƥE2=[Ǖ,D`G3!ǭGŖWk~.&!)cauk9YN`pg\%QVv=퍋8u+*9JD(D9oTU$3-7$xivUǑdp#lBܓ jH(9h@CW(Θ˝J|~5J4N:;TA_y*+!yU/oѣV6 ZQ1Zڣu bynkhϳ*q)A :触Ö{nɵe#땷f9k* Bp+{KĘYmA ][S_,#\A~9*9B:iSCͰ*) XS9T vCQ% Zd'Y-h^7 ho%}$IC.%9QqG7,BUYLi4D<%djKk0Ak?FSl{KlV#L7nٰ[ea~`@yy0l]k]u#1t&AaEQɁrȥ(qu~z|g֡lT{xk8jRJOIbUBIwյ1ZvnrÙ׈`PHN9QoTU-GTn4;d.3hI@l%fJ;C͓},ߓH.rCq%7~p0w!\ASR'dNd>,䈒; KL @0U/BczaT5!C/?}M-Y%?۱Ş TxT,U#'Lj& " t"ύwɍGWBOuq>4}@,7*F]i"HZTXۙl0l?A`tqE)b/yj\'ew؟Dt 4vީ[F+wEo_*Z1$KӬw:!𴶟ɆzQբɎjw/~a-Iod%̛a7T|J(Bp1 Y~Q7gQndTG#M>tѻ8mTp9 g-= HF!oOoÁ'J띣r*^/uDO Y:q1'L˘HbkeO TR4^M1 uee RpwnM94GHh(5iTRlME8 28/kvI{1dY;TlTHۿf YJg. ,^8)3_2 ).N'HHGxDG!k|B#yQ>, b2*ٞU5|ReT÷VH/M%v 7gaY?Aȼh/հ<2~mT,Ӟߔ4h;6d4EAmH~gXP.% t`" B=&BI]VE$=fN5x?Nf&2)!|9]2.jBDԼ7dtUN~#&tvr(+%\*jg8׵.8-V󔀅n-^T# *lo শŒښJ)LJcHLEdq1vO16mPct#EF7% xϏм{w o6ذUQDQDJd]pƒzYfjBO9yqpĥ*뇱izwT]/i3luJk,J7F 8hН07 \48 s{D/C"X6Rē]]ڼp0IڗH-ڂah\/D/$oA+q;'8ע G DKU@Nړ཯CJgJGjN`y]FYQ(\QZ L ?؟fRc%Vo=qlž||O(1[Y; s <{Do8?f<&RY*˫#:L&"'~ UR\H'6hQ5"K3DaF2=w|'7l?;\;It|VQI©w$e0KV _,:s`v{YbSU&yz?Dea$tJ}8㭬RtdMFًxRn&!S8Feձk=ЍB\, * ~ԯN,t_1V3Z$R n !'."ӅPmq`jS&Fĝ]=:\ѨpwA1vghtI8V %'IL `~wO} ?@uԯzS4OJYhZRaK EGPj Hc 7¹* :2~>! _3tuY<2U yor/YGdkcx3ﴀFS!, p*?(_SOAS=d~l[ ,hfp50+.K1F얪.ԛ9ir X)꠲U+XQ@lhy&o&c&^({ϸ2!5"Si,Ӵȣh^vaO0])D %*r1d\UaQD*=sB.sB:!HiZ`hi%u/?zs`P*p+_QѵAǴs \_C>Bq| Q)I?HhtA縺4p\}M\%~W~K&(śFKY82x KNp"dMC_݌V%L5r]uUd#nL+l Kśh'VA~)!V:\,7`z~1qV"΀ueHhG]{ϲ1U-8m(>H} ;AfzIFo٥Uz;.{SH,̢]<ՙI`p] G#ͧ.{+&|DT%[K@_SGdsg /j1z%_z' <1^g)DpRasvKB2b2ɕ/fDے=Vx/,oU7>J1H-#UӖOҩlZ*FpcFQ Ó_8kHj-oָOq`lmJ9YNx G =~oPM2R͸jyn frDgevDޒVZ bH+Z޾g%J yK,4hikJ-p9kCIjW]tNk _8r0|y_Eezoz5%-A ߬08BQ=ݼz1<ᾀ{Mkp-.3=6Vc `#˼pU efm; c}(BϖgE,_*/@ۿ4!>5  "uQ IeNqmkŤb@ꡖ/缦"6< @c( ̧OӉ8uD٢!,Hc9VSrj sɺDW(}F ,e]Y x &WG>PǕ%-`aV3 %7QrT.egAq_Vz^q`}@/+.d(t+m:$䧼]œb?0d9!u@ 3QJ8sfOq{\|8/+4xdL+w* -(˳tʙjډopAiK_ Pg R~N't~)POZsK(*?%}3/w!ΑU4=#|Ȏ,):!<ٻ-ZCʹn eu%L da^}ܝ憵)yY$]ǖH=܅=2YR>q"q]uiÓNd,zj'W.z|;2{@MVW[+we?W{7$ gj|H9N:/AxC;6TE'zGpP\q֜8FC)%q5L7xB\n7,*NkI!Pm ; !˒ۑ֟tls8~,p :Շ5gEgA2#y-mvU*xc7]{Pl,yM`VjA.ĸϣ ."?c~L/VX^7Xllb u~BPey=iWz}S$C;*:~v;ߞJ3z>ؤ|=7z?`4qn+b UhV8*s#Vs0$j|xb {) "mVb |8V>ƄwOFG _,kC}~ܾdX ;ecz{aS9a2/a~pܵ|g/ߵW&V忣Gt&Į:ī/BcіkNz85eap4 /U&6=O`0zL o չmfM4q&|F`dΙZ巌tR4|}۞ħ[9X\}9EicCz;^^Q~\+ui[m]QM|ao >`I͞Tzoq#k/ud_J y'swּގO&9ZK{xt&i6&=LQlf6G/kTsD#݀8|&XCGMtX');ױ;!R\2oMB䝄r_(dP:' H'4fh'=K!#ܔl2y"T }<'MZ s"9̕kxJm\Hv~V9-NeYMcz; v-4)ڕ7\u $䥗} *\Ȟ6?W5yz|`@+nmX*'VpRe`Dol8QȽ'ԲomfݨЁ(u Y17<1 "j/.Mz9j Dg`0pSg4gkhB*b 1+ۢnt,}CѭE'^Tf:l.I_ u:+iWtI+ԓzP8$['zBd'`>)os\| K,U'Yσp^ga;kvbx7,+af.>e/3Olɶ+!RD,Ec#BmF}g)? ɷC 5uQQ@nbvmَwWHA=+POBXԙ.1uUFeIc^ǽX>@pUUF,xj<oဎO) G_Gq#}81>pxSmy3Pe!(B,O$ ;$$a75:]_(AEPmU(Ax]fffR~0W_` Bb\HBJuܴ`nmՖ)$5MsGzبtCD!3YI^U^덗n^~LR g@xlKy~i%;Έ;RAs|j0u:cTI)?2Pvʶ/ª'_łpl| CP21úU}QcXyOø)9?{ĢNBZjEڒe+v~e] w'kk.QKοWvLTvICܲbbó[ <Hsjk⾱at&3,9rH燗b֋; LKpRA|r\u3S,RHֆ/UWn9vODĻxp2:u (c(L!d!4rob)XiM@%ۿŭlИg1aY LdsG *)whK{5h`W{e0>- 2}-FMW@ɼkLObE%_OGJJ3{}HT$ѻ1!]wDF:A83H`,FgӔD?J'rf(Y?SR ,^ hFbDrT^W2f3 H1gڱ&;$}w3*64?ĚHXR˰7ʣ Tc*EP]Aسfnc"*6kW<Ѩ粄NyiW!t )^ඔ>_vg6 ;ES9Q׎.\AIRibu-JnH!'. )LmК dOuEm@٢/)dǰ(?4+d̒0Xy? de^rαjB<( Qw+Ll:8zbّFJ[@)~ylJ@(2y*9ӎOlw-źGJfIDR(奕N@Z~EE1.PP vK7KQsvX.JAu|lB$T]8rXt3/蛘RqOj(1zb{Z8l p2$[hx'sIN/j_|quvBNM7 ] ቺi5BdZݜNtt > _"+ɮ1zGBߖ.uGsp1 NurA 1Xۋi=Q ^'_u H-TvqU&T$̐|IۭEb#J^tYl VęPؐ:vJ5<](td}jBDDFֲJ`!֓<Lu*ͷ >}t]֗+T:Μ8N/έ.iQ8O. h&ljq9@gx֗?9\?Gr|Y 1PݎydOj֗@0fwVc1Qy4M_dܻvH%}S% !2ţFhXK1tُn}l>hVω1"ǯQĵV_ 'ŪSO Fx̨zPh V([j{U7!?{$"XH#AS/TEyKvET6;=ZdDMn\ɝxsIKzUdr -(9텄y" ͅ;;a$ҕvx C߹&f(UHh@ckA"s a ?< }jqT{U3lc =GGDhdo+40PCǛ^JtCwbq~(۱Tt<mOnB+z7ݍC6s~3MJ2})8*&pHos/n/S_ią ڥ^kUN*K? a,+Cfٚ7 XǦ2Ecy# ZZ @͝OI^;A6io %n"G=֊$T54:JSVYIF w@!?#wk->j`g NR ʧ8b:Ba>4zM_,v9tF^ Ql`hfn}]:T~ GŕmuUTG3 ZXy?HyqugǭI%mYnŇ-th8z{ dD ;!@+J+.;aퟓ`dg59 b_[sSeD6-; [/m& RzAL|{6mE5qq_NļFKa )5uGh ,-,-'3[$<Z%MX^\ Q/&s^Qeb^e@l"kF~"Kvg~$Ρs2>rz*XkTe-dMPC |$ {$m\#Js=tݬ[ D 2(F&HK7oZ8dѴ; cb1d~o3U8w>(}) eI{Hhu4mRdPDݰvieů aʙo}Rc"$˰t; TscKg)7dHds@paj Fd: 52_{X펃7>+Q=-^d~7 qQԯ~׳%=KƝ,5ʆ]z>. tXmtCJobwR{[UqOOn[ap8K9ݻ1lW/.G}VˆHG*J:T mEM=MJ^)BR/Gǘγ? 󖡤ƽL;6;_S8;gKPw:ۀ^ ^d^-S,}5Dn>|]K98nH gZEEEVgW5 %i$ jw0F7y'|WLG&ΑͲLL %t uݖQ 0Zաvc|φj"vr O }}0~mm'm :1l/4r^A3wRWjT~} j{8ppCq6,@7|f}Nq&[EgmPƴo,\LffY"=e-~vʡ˶YI}͊ S죰Ʋ|=h}.9!w'x! wXx6ZTKn/P/@PY+$%_IIE0 _F),NNH}Q L3}H }S/6Ǐ;ѡPE)^&zBIXRQ_D3ozh %RpVg^ bJ: HdLT;KCDzkB5*WJ|L#`8%UO04js`?] Jd]20`iOV P RW[#'߷" ,sn^}!٢WP^۝b Ɂr۽}5{㳮2$Um(eE5}#bm3P+/FN[{eK=EF@ ֱ~!C<[ 摯|:(hcΞG|2L(_nůsvdjyB- Wa*rx&^s& YH>{b.d́v ޣK4Ź=LHFɦ#^V@K<p6KlgQrEwSU׷Hu+mz|qx:)-ݔάEvB|6szP:y(3#kFyJ{P(nQ__婆n:l}MWIKmLxj} 7#@'BB `1~im2nKIKIzTc oX6&Z J~k3o;h O$QKc:qϳДAC% cXJIMe}'])9>)h~Q`?>* f1 {cz IW72G1aObԺ4ekTK:s} %YiֆN-ڳ?vbEO3cuoXPzw kg4pA[O@3yC ?E\]K?J8V ]hVYJrY򩏾.븧b=@x=&A%ӌ\ v5ؓN~cČԕw& y{SMSW.3cA Er"=(%h#kpG2/NR)N# a"&`yP qzW8qtvM e. |pN[T`O7?;[;w*>z1Po:LEKRCOMeo4d/eIq)< r`q`e&`flܐ/-TAnnjIHJܸS9]5q,E$r{a<=᎞l޳8%?+ `Ą|ߕojEDVCE'p@[t+-d Y2Û/-bI&E~ qk,1\SFnP DZ\ JBzi.{)O}((3ŀE@k27f vގLw7vvupט`ԛn c5<i5C2&e47-lgTjAc~J>;1xTQ|f}q"1d5}oâN NC7fmONWTN e,XYy͖;Z.s3ZBu+|>,65!/}ϣ/wy"aBa Pu--f7|A1vLr#^VŮ_GkƄMR0 w +rVUẗ+K#Y9[Ğ:g2on n|FVϼw018Dq/퇬p !3ɾ8cT/ ]Wl e8а%l S>Ҁ4qQ@ܡİiXW]%.ͅ1ut[ǹZ<%t/YΨstڢdJ ܚ0SqѸ]+43|׆y§ X¼S0<~pe}4W%ioѴVYJH"( #,J**m'gaظMxСo cb "FEu٤ѩqfeg[Dmc/&٢W CD<;=k2W'me}U$(׉6G0%}`ץ7i[Ʊn 7%w}Lly#qkĔ\=Jtb&-uedQ`)E+'%߯aំX!.EMec"M@.=WP0Lv&]z!g !j~D goH]]7.!Ï19lKF!UK\w{Lzz7K+$q3ڤ9"҇r8RK 4%DñaByEܶ><\@H=TLC]&.?B@a˓~-Bx'*ͱxByNN6[PBs nI>Io,  0b-PAJSW}iAX9J4-H 5#g8(?![ⓞcl+4>+jʹ`5QRˆ95uB܆ǻ i;6j+*2!j˛$C«0'i$TWo9K1ֲJGW 7koWBJc (}⾜U| Y^-@ S]pFuh2,2n)C%Txk@PkSݲ-8Te`4~. ~fz;;ZG(̔w^iBu;Xu8t"1m$t`[$j7s>'xg,n8)#+VJzApǤ>`͝2usn4(0*ah:eU9BpLƛO`7B g W4/o"uhqvP'jw n7ku ÙlԒC=V촊AW|$z=f9z##i2 LWﻰF;+Hb =,tǟ"ιI {]@)s^%tj 9/#ۃ UȃX\hft#( kItd=m1gva7knX6!bOTz+.4gi gDm->heqyv^;pO2ƌE5޽۝!ft2q=ς}Gt'ϣ,aMʨ¿U hVbdD6qHXӢ56kΩ 5Z,+ISڃL,ަFM 8|%S9S BH_k0Πc=td)_pw9q4xJM5۟n,RM/,[bݲcAR^"­11]MrDWiB7| lM%>ovPaRg-]R7$ .M;AM6gKBHVZ*NZ0w0'k+bUt;ջ#Ly"=G1Da@M>L稡)FQtm,SBa="a/1B% D''yc&w<0C Oӆuቡ *Q]^W*~N# Ϡ4`5So0IkX$@cCq.?3aRAZvC}tޖ4@%[e ow `HaGkzߑL!BHģI>" p{.:iϓ)#i .@myoT>W;7ONIx=,)5<'>ُJi|5GdA+YVQȰڻNRNGǠMJwʃ^Wֺ# ʛĻ: TIui&3\ |t>V'z׈dI^xHw/VAX 3; ٞ,~A Q-8ςQ߭Pav}ҐTweN`ӠS)KPGL"@1]n˘龑ST2=O!~EQܯ<a76KTCH<#NEDʬ!ʧrGl, „1>[)ې>9„^*H5}C!yFs='feG EUz)oD#BKK2fMώ*BQ /MLq(3je$ EOW~q@'Ҍ=O1\BA;j,u(sf᥁mZ'Auȗ,3C> }Vo~?>嵓՜!RB(4/\K,4X/z^z)0pHQ|5pY)0]jaE$U@ u%e[ tc/,ߕe _ӷ_k]xae]mYrwK5w6Ivgk~}QzMW|:ߔVqgF)m#Nі;Џe"Oٍx3uZ,Wo.*$ }0ǽY*҆;gb`AʅKV/9MHʸQE "302XZ, ?bpt9n @3@$mf;ܸB,Ns*,0.kLx~U4LcށhU4"G(퉣^Dd%J8(ߍB&E:em9UvdONO`^T$#z_1j_^sK< V4E]3Ot亏/<+@d*@#*"мHUֳ").kLP 8ILGOXq)i4bګG%m kUSW:SKRܪt6Ѻm̌TsoQˎ3 0e'\Lqm^Y%L>%쪔_{yZ,2;5Dkae3.Nݡ"Zisa c@WmUQacbY kL6.NBl2L1?^߳j bgj_~^c@_ЩB tmm`kAS;0eVl.MGsڄJ$B 쑾y qUQ!;oH>?Nj,VufcBd /Бj'%<0 vDߩcӯe ?ף"Ւĩ%Q:.< c)#!)o{S:1^̗/F:<7"f?SdDf"<۲, @f.!IZ|W!Cd:m  NU> j}tr?ioũ &s` EG:S`’Ewe8>#MrҾO9G qZ2r |_'8sɬ4pokgvdSm\ꙍqP1!X}^bSeȮ#jm"VQʓ_[RcLwV w 1&!1PS-x_~@}* DlqDSoG=bZ*m?M]i}akp7^^1Dզl)֔-nzi=OyS˜ S#\uڱw|dYDr/81I,@hc󲉚yLkkQ>P$;XxX ?BĕS{k\ Z}rY9Q`Xv()Qۈ1v?hl Z)Sa Zc)8_yn0 pgaNWHoXںj)]Ÿlb/g/rf>0,Uv 9{rJ|( yiN!ݠ`~>-c<<4*sP.2BXHNO0lf1^kZ5g^Kci ؘP'?.&tw 02_0t|h%v߉.5帔*Ь>!X]r>{Y/,Dcs5GoQ*x@o*W zx͙rcLcG2!;tAsY{y}#]R d>:aMh"MS|jIz@dgIl'%ƿP׮YoI뫣T%r)LИ+],^^a(O9&NϞsMmh#cRymP>%7]=Iui p{ ]:6<́MG]a vӜ?9:@phﴎ}=/YZ1,+!yz "@BcDBM~ʟPMo[Rm Bg!_ԲJc;I7泲k'xL[\iJWjK,pAcQnȲ@"vetk׏R߭lAؼoDէpXp7w$u\ Zw3wzAO;=} 94%;cJ3BHk(i% le!hÉ 2ULU[p>t.D UZhh|IٳE=,)&#b-cڐݏbo5xlYhAO  BB+} fda <6ڹi6L8Kd;sLB9Zqu<I{:!kG,+0ee\R4l]P j3j|M}*,L北~1}곈ӱIyȹ󾸰F)6jl$/0ez C 1Z&Ump߱LNryᩊC>l<VTUA[MSWL:OEUDG n‡pϚx1A1ҚPa0f'<j$ѳsgAhfbqSH\=\LiN@3 ۴)${b$``L$nគy%HbA 3 zJ5U'V__K Wp'8odɨS_bmmHf?nSilm|!Ri]hLɕp !R~HK=9$wnY>8JG_@Vy/>APydE5L'YŘp~|";FhwD,Ԡ C{k"Fthֳل)匔I0nw`/Æy4] Y^T~&O פ yt__|,07vZ.ׅK*N.Md56 {=v؀s*B9'6/}#]JM6^# @S qD>БDgn3(sad'(p, 沝s6[ú>/V؁+R& g`3[gCЉȹwEC:"a-ڂ%p+Ts9oHJ\*[2e 3T+ᖫ|qmj$:JORYC$3qOiW̮qqN6.i6>@wvۨ-n[m/ -F /< ف.À{rP>eY]/H,& AaDAiB,`-@TE OCoڟ srw>/a|' f\֤|8 o.*IG ȭ!g~@M[) /GeW!,|PAu\ I,z @\ˊhיK7Z)]g4| GE)"=0L_L\PQB'BԳ_F%qA"8>?׻Dl3$RPrאhcXl;ݶgD 3$mԼ~kϔWx#p[vqٗSo.Ŷ9Ϋ%ꄫ&_Ǥń"8n%AV :LM x u'Z'x e\/j,c ]xNraz%bJHLM[ZȦ)uIM֬̆x\I_"MzfflV-[O5:u9|sVvHO7pqc%wF>V"0ux͢EqcG1S2;̔Ө0n 'awhPI /ǼǢOZ. R]O(X27w~rW3d^Q5&/~Ԅ{n=a *RKM# i٢p^):G"aUƆFELPQ)4*"9ACSGV]5 )!XΖurWkOÁ8CRtXYj۪bBLJޞ&'7RCj%mڙu5SQ)75Hy bAk/(-sl{Rz-%>iXk+J㖇8Q>%B1k/v _7MlGrK^UE< Q抿srC޿ǜ T%0f 9DŽ^ z%' PB~2QbK22rcCgGk}Lgu?>"eP[F3f >L'31^6NKQXP3v[F 9le Ud4/XA񩄴%oΏ=^5[1&㬚+Xa_ ~֤ݲuXqONQKj!(aF Ǩ=kQXLQ_\oE8YSyY݇}K0dl6.GƬObuVmVz? cF\As[VWKNčB}Ƃ S\Kr Un8`ٹV/~l$ N@a8Q۩`Zo80=eGL.2xHoF T 0*#z2U%e;'=l6Pχ.@Of]xkv%r&}pY؀ѓ D i0&M[폗dU ppAaboNLeR P8 d^eCuS–$~$`aqy+t@5#X;UaSݦRס; hJP3QX'_2IGdw d;Dߪr2? бnŻ^=;^[ӬwnV|@q34[-H>=S&ekd̯<џ*Rs7pK X.ł&^V=ֶ0}жUB`a OPc'n &t!+-ju lU\@DH oO?g(l PD O˄Iqʙ=\k=;[p^`T>|$e4/Uvj}OO+ʰ&,ݯU;l 6A]-=ՠERG,mc8%!!J<VSǦŻUF08;T-]w*N~KS*?ǀuCƞٰgetp1Nz ؒ4cS$n-|Z fPn>&ژ@"U;JEcOھqIcLфf]&NJh(m'l#Q(]؛/ "Oz;\D a /bϮ]ZdA㓨-ԕ Vt.Ӛ]w8EOORkyJ `eƗu~Ƣ|$/ljP2xshF 4RR7ap: '" R ·;ގ#W4ޗΆ,n,mM.ued@z;gmE9瀑Ǣ,ٮZJe!C(j*HgY}X'}pO^kίt;`l8F&$&aǗS;UY_;SG&IKm4{sty!`oO<|":oWJy%Fӕ9\^K$֚m)$-ڻ |h[S+k-7 '%B\T?{/ "#ԘTRE#k刓daT'8)Y.Q\|ҒgEA\aUO400݆61!AfO:Ε1S+9p'7#3J6YNr[_%\Pl]4_l} y>]=ML[|C5C&'MY#`ssQS#KN"WBʉxMlJIaD~~Y M9=Xܪ7m }U1;$סoDA[n UYB|̑ޢ3`ϧUNգԨj10Ʃ"s̘M{ 2%lpgT{PlWh2HA:aFh!H*[9a R)[wL\?}k$ajukuzAוg!?l 'ǻR0hYҰ?}Kt)Ws{ MIM\WE(_`CZv ?0e[`$5<ӽX4lc**q"lGC %+;_[NdeС9lpxtAX=Sow+ws,ڐԟq5čwuצѺ>tuUx۹5^Kv2# bs\Yȡ9ymK+iyf "T\^Xxsĉ D E0" ;|Fgψ@x@}^R2\FhS9iuKL,$ZX]yѽޡ$9E'ܧa:z޳LjV鬗~jcnu 'HY8pC˺G)59^DqyR^jR[h[e ,f[$%139쫵*OY;RſV7&mD? 4_9D$B%6]5go s0ּ#<"Ud+R)ft$ wX?moO%EeQ\4:Ԯ]%{ILnoVb툃8B{&VSIQ [ RaH*1tr9;Qm b,téwK/j6)Vp0 !)Qrܲ@)_2犔Xyx΋h!Kč;ߜGH%. XZLXD}B7v(h}h@y7c4# hGJ)gntIq D?'o3]a:ϩ0`n?vCp A MxW>טE~fYq&첸{++gܰ"rmLnyٷ>5wa,}Bfl|=U0}f8* %n"ȴ8_5_@_n=oA9RjVR]ށiTCT(X@AJsAE@ %h%8k]g#"Y',e"`p(7A!{VZ,ixkG0d*W*Zfn}I[%/x=M3 N9|bq)lEzzFeUyjF|m6M^nsw3OoW(T4h.*Iò|wuJ!' ٺQE- fR'~ @4q_&UPKzd-ÙCiosN'Nۥ[h\H`dx7D S+d^Dn_Oℼ^`aby>w"\<6.uלl3j*JȦ38),dۭ$Ú+~[F?ru3!_ǒz=؜lE"! |> LIyOP.N% 3lh\;d ,r]a!n!.Y;X`T{FDqnJK5ʣH ^ Ό=x)>8ڔK+a[=)KL ȏ/fsZ-c H͔[mԋ :7vg|pee?kaLJ&B:lwU&g 46غ&m 1,k?&gb;$AFmi1cV`<ˏIPw%Fk@S?Sf@hn@[s#ԍ|8{%mn70ܴ7IhԵnPmnwRN XLDQBI5s۾]|:{2h&T_.huŇCLY,y&r$2sPN'c*i5؅~h653\7OV9)eҘ~s6V&AT͢:OXVyG6#Jt+t֍*W>Yn̓16eQGd}E%T3uoEczBm~a~Jj7Á5 <OQ٬c4(]~I7A.C4m;LpUW&4ՙRr_ߛ oզ#n7khڭ]zG UMZtvؓ[FnUӓ];NJ68nz9;!Nۂ!!V82jn]}eR^0$d #NJgq+ID^0-#젺<>/񬻍,*ߋ a3QDROGpˎlE՝^:ǝdWJ +: qy@-b"/-SMq{#\l1б=ړ/C4Z>9hrC?"*_/@MUA]қE虆+Q }҃N )RLZ 䶇礼ED^-TXdY2$WmZɺ~Fݵ3]&q.Uy}Rvœe̶&V{t nEh:s {\ܘQJ]E*Z\;i{1 .dc:H 8aR_g%6~`?{-Q8!CGs){ͻ  =n_\)2'x-zі;1}8aj &&]L4bcdiTM%|;`6M(ŏ .Wsp]H{y LgbI6Ѽ cu@L@}v5"϶111W-֖MZ9JF%sl9O- 0?B)4qحHK }$l3B4P&x@bk$AY2 Y 3+.鯉 zƔ4H $gAi+{)鯬 ܿ&*x7ݪS;DT'`9Vq+Pvc K  v0FP6:GݺͯcYs%m4MgCrW)ӕ&VEuI8DThazd9w1踫`KD J* z)B0%4F3?ّ~.J \^ۓYI\#{&mm zL}ܗ6.m==Ӆy}zxxkx!Pۖ-&WBq:+B۱^ ޳u?1(@>34eR9%5 E+H40&1.8 *8icW"0]'蚩C@9Uߨ+^e6:o](?y dHXJa/]߸.7<-%F( pXtMkK PPlorn!THNsXz82qLć6]l\4jїrR0M JpAQKP攓$.K/Þf2Z\9d|I:aɾ-6p:ӀH3۵4=Q@YG7`y|rc|[  qiAω} 9>]&XOφ_x6w-5f]U{| \ms*.`$5:o3ud5c+RyzOeR1/ Zb3C[LrC [ 0p5}]$ ~TcJ_>o%ю"n^^s{i4*cc(dn3`;VPd3ƷMڔ_QvZ*[2"$=ZGqz[pkPr0ѣt_gW}{xɎg͖^H1r^k]/(O=܇DDw4h]##SJmiKވ9Ovvi_N 6AFؘ 6P+5Zʨ(ke|nh92ـi1y ݾ+D*3^%fSBbF>k?=<YuXm5IƬr8lw}<]+A:rwjOwrR^+UJ>/Z"SNf$*WJfk $s&x5^JaBT|бBϞ|e`htaDƎ$d:;\<;2(*k/_Ktg8 *S!plcQ-|D{M%ƷFGw8z~{Up2q~ttHj"+03MVM +KT>S?í fgZ!6nUwOOSZǒ%Y\l*l^t8I-d톚 ȾrІb_ Wv^륕l;A*@6u)؅n#^GsQCS鰬3):^m\pJ~*nN2#:WUU&$Jfy`<}fCHO$yu)&+<]1 Y8Lrܧh:x ¦1_Ô,CIuCv5)FZHDVrQhQ[CV"'gMG֚L*mt} x^ #gcf-\Ȣy?BZKD#L:߉/BNOspqw1p)Zd[ ~L,y 7Bv3 ]\G`FamYՙԦS EsϗL9ئ\)9W <A^UB߄v#D-z!{E/qi'4`?H%N_[g!.^o,̦$\×A4fq 0glU{h??V-[ vC& S%Bt';5CD#cC|1jGȭkS#Xe7RQ"U΢0PTt o8{/F;Usf+wyt3q̀Ӆc${b J)bWSEK#{oW }34dkc/00$ϩiI]Ӽ C>yD!`z" 4='Bψ;+d. #Bw:x]?I%ڹr~*Fݓp3m+=KWUʴ Oɨ^D>k瓀ssk7l9G0r8mCۮэzN2 *G IwBĜ7RvӰN[+"yxvr ݸq< ȒG/V7`:=5;1$&\is jW~KУMۈN1zRE'T^=%kDPg0W$ib(2;eYlGg.4)r( !qTCQ_M#Xhգ/b䊵9tv&4GDF/HܾR\yi-cx?Bt {޲`gȣ|ٗi(UG9o=ӓ[ D!:|5j[8s8FV_[}![OqXg<GNf-]s W'$Ϡ-\?śGO(};:u*+ѥQ PFYF/9A[{l/M}_Bz9-46mH E>:n{ 61y՜OwWL@ mJÂj@,H oi}ӐQj-C] *^ao6#ےYሓnG凨kPS|4)V/Q /[Xlc)bo%n >e$lnZ57T-2oc;}Ϣ`6CTM†-oM$˘ [[Iav2:I?DOsjA驣^o, 6<Љ(QxEx=r}lJ !_֬nS::u|id8NVsls*SټFwGUU(жĠ-do,0v}Adt_LUm;P{2g3 ŧYodz@C8Jo'o>٢ork ̒ɄSȔRcx\sBc6Ga(e+nFIO>fԌg "<1 #c/Hg]4%(ǫ\7 `nj1uu#2iytߢE3oQ5]1Bpobli ^`o CU31 ^v^?"=WU2fJwneGj m')@'+JLm.øAҵN7MKwxjOU`pwu$tz@xf!baɍNS(: ;z۫? yr P"<$۫fK=nc~ tw;.H~Z{u| X5RɳEL퐜 <Qs>LPIIT= Y9#$Ecg]dzW"Y:(P  ܵ;;Lp^= I-GGb[}!PbGd=cHx-jZZjI]5р7i9oDŠ6j>_4F' φG9Lvҽ? AO!mo> MvVc>^%gx]?6[˲7dM5ϥ'fPWa*ՉzE71jH' V؇^hPD\+^%0%^ZA/Y{*[+iM )i7R &}ܺE%M UnR|e9s0 T >JFV/6o6˫o! KKul[V6 t\90QEWZ6 ԧBtNّS߻c+4޵,fO$I^~^aR@QO]TyuAjF "*Z_ fꌐQHm)$&܁@Fھp#0Kw̽ *V{Y`@'\ؚjw-ƪrZ:cp`~XCQdKTv A%q} Ȕ{kQ`o^5ʚXͽ0*mU]&WlqGN{\ɏxFbh_t~6-|FkݔL vġtTKk`L)ic,kWIN;ʗ\De.KMhwח ̤.1cSfj1*0W.n5t ?ԬnDcfR9v06Ww7?ҳdX< GRkHK.k`cl=SC'"zfW1՞Ϭ_/eƃ4<+:`T®FQzByt]̽5{[AȣYa٠EzeԷw~ @~5}`^4dfGe7.&`AH\d=I˔u嬕a{,_NQ)oٷ'CduJf ~j˖}DŽm&![N9$Ns}'~SV_Eu$zƋ=yk 'LzP:]6/?EiRCr~f2FZH`{o9nfC }AT˪*= 4\{!Ԣxl)MeF˵O;|{M菅IP20BxD'$v} \cR(,}$#yZ-w݆wN@A/+'`|jֱ<1lt;ZIR}h0[ # a R'+vflgF7M@pBJ/Tݶfa|lYhqm~ʎ K:pN8sT+o7KLŽj0UVN">JWL4Z3^ dqn3g qg/;\#{D׉i}ۿ}=3i3w'F׳6#K1ɰ%.IGw2 Nus<hV`u]X#k 'XO6tQɝU,;{[?Hp{JSq26 _&-XofCj2 Gb>CJ贝 JYkHyCʉz]L%ǫc`QPW xR1ڞU}]E.a^L&R*ˌ27U&FvK3bEH4l҅yLᥩ7գ_ySmc6·-U{06?LT3=)A3'~#u13ty;7I]V+Q.<(~ک k;}[ݓr"UR2VsPwVq*[Q9l!ʮ͑|~2ѷ Yܰ)<ϊ4?:D "*IIPkQ,)xp'Nj^4n_Sâ_Y6+u63-1_9꾜E4MR[$! fPbکwBv4~6GBr- ?܋>D܈"Ѳ Yd(cRs'3##%UFEHRuǔ_*Qx!%ٳHe$yʹ$AǷk=n.>gH:䗝Ć̞x' #^n,gǏaZ%0niN ge_"S*x#k:I[LtmOTZ""mqSv:G@TY@KWܗ] 9Y1>@\Qkw+Jh ot'ǧ`(~VXz szcC121}mBJq0w5 RdneZ4.0Ұt+|A6И:2{+FiA mV6,p7!2 fկ!Q,%o`^k|uebUۋ#4y(9FˏJ @MG_1VlT7˲m#nbO:`y(d!P`yW&80֕cuO"s&W n"AP~l ɖqЩOVlfeLܭ_f#8u ΍iv|P"C3E &ABt~;NR, 7A4 yÎ k[^Y٪Z!" oί 6=1#r V a巾06sLj IPoYAs^aի}VGei.H7k(żSR?@uQo땜UV{D;T;8W>g?la49@g,?Nu\TyFpD4j͒f"'`Ol5"(dε>銽puprى{eSeo74Aψ~W\^Wvªʅc ;N)+mk>!U$'~ -:\qAG;|ʏ!~uCrZkex;DW+˯󑒡iTdөܢĢ,[a7nQ0ݝJ`xfܶJnS _ac4Ӧv6 J`,A!و9R5FlpH(>cgouq>Pæt0m]YvH$7 l6|f"Qia!-V'F}19iW+3P\y3ܢw3u B]-䐙^κUovDu+_pFoPyn5.#'?j9ϼŏ ŝڂaG&+T#_SwڇFQ,ByFԎ(ÀsX}"4,fr8 W!:NcB#@Cek-ۣfX̽̃r\ ndI&Еƾ|efkȘiSH*~ %~;u}yf3-b]' jmDBW|zV]˛(Mq*,IMsMJ I}fTU_lkw#h9mLol%l@ӠDXju1>F*:hWWNbG;MJ/=d,j.96ŋ8mS?#$Pa[TCB z{2Mb,nhEoRUQZINbo:3h?AOUsOc Ǔ>ɫ|sI}%`+[f-dOs 7Q׸.hZ8'VR ަkv$b4jҜP4TH[떗&ȃN蠼YZ Њ:֣޽ yk@d7a,sC$>1UlZσ 8N?|/SoJqXza'L2ֵe#*+UFi"Iy˺ r4^[kcy~6T5ӄ떡"'(c1Fck-Y>:dA uX9'- \[q0qZ _e.Oy3HRX,XWk[PXpX%g.y7AzJ3lN%[(cv9yPy*P@2NˠùB Q3hJO9b84RӘqal{zj+]CT Ekzm& 5_{3l]4)&P` C'D4hgi[Up xlARZ!=|w04?[<ؓ"%hG)IFגՅVkvtzA3 t}|3/p,p~Sء0/+S:h†*1gvZ\d~S[yYI潷+&[c>Q72x֗2Ux td5O~@t5V YEZdZ:K>7d,InN#oH0(+ӄ+rmVԒPwM-aM? t6>KCfU@$ƄhIbejn0tBXRQ8>|i:ӗ[w&FYy,)FGҾ/B8̎爯M81ǜXKf&*HȉκQ~CcX´|4bZo`W>riU8~ (f!?lM!D$m+˥q 7jCh'CZnjO#MNF\м5DiIJӴM^Hp)|.DAn\de2^ lȤ YPB1::;}b\ƶ[.}N}_0KfۥzLZ*ΝYZX5Oi=b)=2ͻs6.1n)AuBI;ejMVCmchɭtm/W-`Kc]ߕg` CYMÿdTDelirI,FpQh|בR (ߍVMCKaM_d_gCA8WdL{u,λM-hԗVeYq*+l.X# G]hJ{7M{NKCn[v.KN BD"ߪJ5SPR)?Fu'_$-Pe۶OPLbE"7sKjkD:;j攐Ga﫸/vÞ[`ŗ9w]ɾ( *ՀJhp0jl@՞i&I 8Ai{QԓU@[go=wZm(['S*o/ѷщzm#S{rÃWkI\_ZqBWP"f8:!jnP=S#G>5n8/5*LYY\RQe7׈JlZ{\? sP kwLuZ>\o*mOM*LڊO.H1{ s;ٷDuU ?>Cc:h bSUM2䁢̥Qqdtwd8Mᅪr£wC!P<-y*c.e$dS{s~ݡgPC*p < ʱJߝE3 ċf,;-MGgqP(^&O+:8OXkwz-E[v I[=:qfhqNqs~&KOwoPU,A鄫idԵɠHģ-N6B h#Θ6\lS/\5uZP Ӛe8DV=Ũr3w4\ixcF_bjrk_*ip?XBmGev2gUp6zG"F i *XCخ%}XmK*YLDk Sir vIڴx$@3E}4Hr7 l8#\ }_N1[q > 'XPB`"ZEG @2#`yP*SȂM @H~sApn(Dؤò/%e)'d\a!?DvlHiVm!zAQ@lWIЮ_Ƅ\J/'7X_MnJ IH}p&N$(n{4C)PӤRwMGu ]d'ķO+Ž1[D|%?]Vrw&^=D5Oߦ&G#ͮr)_#2:nZRvjߺvt܆N4mg[l k%yP^k' rT)t (=z:g–ӸjҮA|u d vv*ݻkbmIe4YgA>?#0M/JȶV0!AHcoVH-'l`VĴL8·~`֟ W+(j!Z?)@ C @K.ګgT%!k`Hܢ%Kox0'7EF)H!mEAҌ:ځ?߾:k CHEVdߛZegcVQF| :3BJ=6NLkzQǎ`zb9'w ϳՏxJy`sV9J v."wմW>&k(dmljPcRԖ=]EH!6D"ol][0,?l֚ޞfYZŘY#mߌF8>IaIhZV:QϚ!_c,sIIAHR };b3XI`YRaoJu:}2<^ -]7V#'!p:%3t{Nt3iNE6y5CQ%gšՄu,aɝi$[" zTzCk>4QIZo(]m\?.f^[yۀtT}w02c~SWhmD]wײyǺ@c^2%ef/뤦w~ti0)C #*"z9)j9Q@RP0!-/p)$BKSVpQq.-ޭGwW4̤ Lqj{Ilrp8(t ©ř 50;l Bء};%%K԰ .ӺI mEFAVF:+LfL e5N;AE߁#6 8F0.9S7.tEk}UhծaT 6E#Xm ȳ/8^u[PХXaw94[o] UU}l_؞26]Ԙi ǃ?ۍ3S)pq.FOsW2z&nugK@"M)BlLM#[Ia#"qDf u_m]G Ue%E*$0Qc3Refa%/V¯H5Q_ph4iI`^qt!!Nw?,u>0#Ɍ<eTs[քj=KY#|&`Kѿ&#Nxهvp*ǷNR?G(*h&zAs,1G#˵Q5Zw pV!&5E&ED_vQ5B &W9KR)r}'*F 0=Wvg;y_"xt~ GJC9>5tN;Ar s*gkHd G'E i|}@;oqU&y#~Ҳ"&WBGvowX>1fزe ֌q)ēBZ*| SIc(0Gmjͪm9Kߪ x&]Cn8 J(%1YLprq'EE=ENxF[~#4ʦ: (}g-^4<ɑ4ř4@Y?5C>@+aL9 DVOxNDPG"K)u.[4$h;-P:588H[8cꀸsUHhKVS|,&S6^CGMMfid?J$) : k+j&9( Li 0Ⲱ {d."QJ?Zj<] ~p$jAp[F6-*|)7-$k>%Gq&Yȑg|LT5I nctrt..{pOٌ Yްm62 w@c>\ rҠHs~OMziLXݨ 0v4Bv|Ē$6RRFYdy-S*@$%suO8<>Tl'r]ۓHb!5JYnLCL2yVsg^V^&XcQ]16G˄Nsa)I)9LڹP&$̸m@S#+4i YRH AV0i3$}>b3q nU&? &$qz{Y$zۿKQ9C8}Ĥ ,VjW N)QXtqyYؘbG\\kL|ATp_=_4psUACzC=AcX2i\wX_mLtsNr44jZ1׽!M)؃Kzk9?^rc DYF͞WI#܍^}^yᗊTk_J *}@NC拁Ia h~[h].9A ,t=EhWXLo,fzB)'Ą'k&œОZdXm*iX,W2; _fp@ jYF9ѾOr|ѷ|0 hYQ*g}3qqGR ++S(K_;NjfX1R8ޕWjLk+YqB'kC~kzP7D$/xb͐p0bܰNftMmO-IH+FqȪV\<MNe$x`({2 >톚$_0h+A+6̨f %mk@ә5t{<_ʸUO/I dAQ!"?\N%2_64t+6+*w^?; ݄*K0 6_1"M2N.Hj_Uбl JɠAAX< ='$;,0XYFf(D=;-1ˢ{9u;5aaS {'%hJ䭟Ra, fIo~:9y!fiqthQkjsp2e@9 4 )Z4GED-~Ѷ6+yUW1yBɏ"y &5kjbpM]ڠ(U/`h] #=']! |m=޳3D\~4''-Rm䐰%ߪ=OKm8x֋`b3g qz?08{8@;3ň'+@LR1Ƥ\ݼ>Yxfi֢}hmӌW;Bi!Ɩ5IQ N9Qj:@E maOĕf_/~Z暒B$O%O<3ratCsqƸ$YzREY*/Ӱo -' ry eK0p oWe7^7qZ%p$[ \*9 ޷E*DJF*Sv{D~ ~D~!#3A?ku~_e^ȘXcݿxT3t4d !2ysR&X_k~\C y# *ʭV,D涁xj-5fm<=oo+24Ϧ2DdBdvdsw&3NgZyQ9 e1M؅3K@l03T* uU9j>ꠕyJ*]ʨ8ҋO_YA816b/FnR`eaV9kyH|RxeFg00+rE kuѻXP;L^  b+'~̥j jToJ3kcܩٲGz}ʝJU;r0wlO4>-c\h4i[%=lM3<W_zw=%U_/b jcKx PT#%MDhr._CwTn_mQYWk=^Zߋ SkA7dĽ#gF?uz!~D:" mb,0ClO,\52張 rS~-t4:OƊu +1Of ]uOBί=aŋm}2ŬjK5%#nz{܅":45!^/98w >W-gSJZ'l2aDB@HLh#} ߾Ogi Ĵ-ֹ`PnG ",/\":EQ dI`HU[;pخJM#cxy NCzP4!G$ a 2H-,ls6QH5.0= hE?+* o *SH l2VЂm)O=*j{j -P@1^IJ@ ږL?e3IOʩ/.%Bմjlbi,CCICNy6r)Ꝃta}WJ܄j0C?6mHx¦l}]$ k_5aWV3m\ VerKq̼kkذٽzB^ّt 7w=޽s'7Q]4ݼF~4jMC =ء Yp)w\jx<~~0@oY1<`^roW8Kڕ+Qǹ'!ڳ5j'pEQoU ҈g(<#jW^&:aYVo ;, R0qRأ2v/oKϛhג>ASTѠQдjXcgWAڽ5xځ bIEt+ <|R@0yl}=IPk!繬w.r<ׄa_r_4E$MC].hכ`c^}D3W/owz ni|&%xNLY7.:AS^tDE\^/>y ?.T*4]U)@fd_SĤ % "Cgfi78^vMݎT'c5/6F̗oΥ!KOvY6Y_ Xƙw(`cZى'՜.9mR1A; e:|ouLFL 4QBu1\ϻ3'`/:{< wO|dL^`qgmOI>QzKwm_sC1P{kt c쁚Ю ujqٓ(f6<҆ԯ>%W2&7"9BbHop/Dޱ؝YCp\o&\+E*YUs{Z ]Xq߈M,>{ւd"Ա[@lsf"ȓ:wsJ|4?ǯ L/15nL55.Klgv=` aF} kTxuҙ&Wp.~AjJ ןJS|;`V.nzl;^h Nє@_qu)ߛȪi$5=#,ZDn}](#*; 0SZf)v=ҶLu!1_E1)\< qYUvqL  :S0l EPT'-t ytQ{] Ӻ|!p{mJ=|iGk|@7bF ƌպz>N~\iK-ăO_km Tju[KK'?Q&AJx+CC}m 7?;.y b88o<.?>JT儁c٤<90)^%&v>9R`Aģ9/7xbm% YlƛWtN=:C*Acl@Ir(5m "6Ǿ-[ho#>Y}}  fܯW~!H|d[uYB_2t'mĩTZA6ɍ|O"YzfhyhE% <BciD[|K{c~NIʶJNqB=_b7%'5q`(x+J):ן?nDc=]R@ԏc"pȞw&(^ DTR+:}eeIDd,{D=N|m>1,!(#a1x{{켎*.^7I5BJ{I9QV3}iXȪnt BU]X>Vx.²+^*Di*1/>Zl|"j@B&2D#̑ MG}iNM e?$wp[dGH.u%p+:߫{Z(Bpu{&Vg Hۺj7m$dKe_Q컋(ذ?jBJ!4O.}p1j]zy^I:x1oZr66Ӗ Zղ9:I,K|d8I!MX OT e)8km"*XfJ,B.>bΔV7S,٩_%60?m_ /aaW@>~LUW&-LJ-C0G-ǶGsCx<4$x@^uwM@0U?6 e9X晅o '@YKZC"ΛDOyGGK!~dOL%G,YY(J=:6B>jG;%JM*^&|eݜg1xʞ`NII?ސ׉!dh- uO_g$vs#!!뽼y<鋡pޤjv\NR5\ggIx~C} 6;Y=i2ݬݢyȱ& DPVdKDof[ ѐ گ1 R}%X2uk-kҶZW&&% S* z*{ؗTFޗ*Gw>S^M[:,(MY"MН_Wu14\]l8)~9\PP]7Hr怀LZGYOĢt%H0諰勵pyGXFjBdWLU?+DRu;#5ibcr-XgZ3 ѐyEtĖRd GODe0` Ee\:-6(Z}%ه'5lw'Ӯm{7>_&ҀcUyKr%䞿MVX B+MUM[Ehmvs&mGY SX@%]N/iHjvTsg6-oR&zAmQ Md#8'PM%Ѫʷa,QB!)IYMsDY!Zw'@ZOF9-G0@fzBPe7T4'?cc`\V=({sbW )jFq.9WW6FD"żɅݪ֍l,Sgd 0$C)C?+pH'< by5wϒl|-|ԜUkrvQ8 TQ ~bHYKccVweTh;rͪ o%i.l7ÌH0iU4-_ ]>lMn6fƛ;f GEày5 TfjdpaNڵk8y#Ap+InH}d .Soj ̲b_7Em9\FH!T@jX`4a@VIа/FC/o $s1U% )&3[&+R^={u*w|ݍXGoݫ#ݎ񕪡] j]NA&כUvoV1lFG`bXʼ:N˲,ep!E0ӉCNԐia~2; 3;ɚ2O, tegBaZ%y3Wi9T#&upB8u}y2ߨ${]ʍoXәP Hzn{WdSvC?$ƲQ| ,2&=;:ڐT9w8UbZ5zc+N~>e$Sl\۫Y}roiVpYAD~ič61{0:#BƯȟ/X!Rk…dssnR3`+ |mJp_| Rg-Z%_*&GN.m>ހIP e(X S>zE+XK"}_?vߙ}b3J+yT^{8i.5ND^gSt7(&Af5@#NҺ0Vvaݽ|H&}٢ȸby\ 9Џ&N! fj'n,Kgz  W:dSU956g9 UJ+_Vd %1APjo`ݩLoRw+Bx._=|ɾy@Jc *|; gХ?(_ YKnCtKiFqy<~ Citj!pǰm_(Eӂ%O>N&bD+B. W)p(ڟ~*_#bxլVu 3>h :S52V]4#@_Ev O/*'-IMM{FH1tq'6]&&om %kVgn!l?*t0PL`螢jKk9_EG'BSN$8S#Z8e)]!h2K)1@[еoD^.ձn: W`svȍ<\ ƞo,4 ^(wP *ݠjEr58]vՌ6AhǸJȄr(G/^p6S+x?dgQ{04UA\DɌx:\a7WU?"Մ%zgLl|j3j*ɫ,:Cm ",ۣ V0gPwOǣo&,b}ܡOqF \ӺPbQLW0 VKzߠRŜx`5e9"#,3`HKrV劧ώ۟Ǘ᧺*}%$.Me)PED\p :Z9}>?]II pYE]O5s~$-oҺVP5\8Sa]DΒɔA) Pm!8RkuUP#sM4^r؍p BPZd OiA#>-DŽxfɣH Z6PG3?#lV]ЮAliAR!CFgCo Akv12Q S>V)<9Dz%c[$3}))]īR "" \lȇzDYɾlXz1ۓqv@ w*6e{F]OyD2SW'wM3p0DE(2'Rbd)ѤeO=G8xM>鋥G)4BPp*E;6@^]BȄ6 J=t|Lh"mu Oi%JEMzIQ%KUU( P,D=jw7!@ƈ9*Og_Wu`ef/8vIlBV#Nzgl]c,;XVvNtVӃ}f2Yqqku<1`6AEPwx8d?|j0wF&JgrT~Ibӈ2%r,*\pjK:۟GV7#-3뚫s䑍ėFN/WwNK`D-Hu7 c0<4Un* 54Wm6}Z_CZ +fᐧXPVeEDZntXT]CmoS;vOQ>ˠN#5$; b#Ÿ7E㍫o'E̠G qWmmh%!hV0b+dv=bjT4L0&ZĹ =ۜHȲrB95vi֑ sMJiSlmLƋR'CؘCG{<ϳv!H]+7\J Wp9=Fdzf]M&bM4p֡ }u#stËJT)Kj|DrP:uUs/ԵsZ:hx72=OMlaQ7[]@*a1!6RNԱ) Tڔh04| zjO CZOabMzSx>TR:辗,H|{jntix o|viϰK5\!MznƦ#O##ø%vxUO Yy٩B0[S8_sђeNa?yqF3λ> K۸pEEO00ə@ 2QBB<'404mk@<2/q=75FG3Y}!ءnvZvJThT?Í#k.ܛI+!DE#8Ap \|wWsc\%lԠb,Rsa gmhJ+6nL.H992y"MR1jsF')( ψjE.^*Խ+6N0=)#u7`ZO ;uP(Js/kS]"B\J`ZU.$ L0ENi7o1厜jUφ_&qs3>;Z.!C!$L{|"q;T(q! (x&'M),p~>1!a$8̅;60V3\&BɽNCwToBSr[S'%إ$=i/6;_{ A͍+r?Y90oZfPr"dּFfBB:fv]ތ`ril!㨠Ffej: ٺZ p zRcĺ_Eyq}}>=(j)T(~9ׅiou0c#z_x I|Ν2+^RѮx2<(<6.9|~%lؿn -"s(q7Wxe3^ (mA 'GS c'fd0yVe&Y $y]%O nBwSzH^ڻAƆzβ=.aGiR S&$d2 ],)~O&v:QD2b*dl/K@#EK145if[\ C`vY=N"7!(lVH"t.l.:{ ƅVgG i':@G;06+6akLRQ|BŃ4w1f: V'Vg}Uwڊ>*BU%}vxkfw_<8- $ ՚ .4NlDЊ{$ӦԼr.T +D^{L*hXUT|hJPn-gw:nLϙI?gJgC[g"џ@=^x,9D3fIJt|ϥ>! ޮ3,QT/&d8@ƀN.U@KǧcSoѴܱg-0$/f:"\^JEM2In^p܊(u\Ihz59Y룎K$m\y\UṝwhBQ_0S*h #5JJMNSCTR)YNI#- t5HBD`cC [74- = D sio4N61!Q<tRj 3-_vރ;UG~̇qCm"f)F 3f@nKZJfKťQĊ+B8EvlzZpi肱/D5FN F  5=δiS + ark2o u (NwKP0*k%A.Ǫ}]bdGY o/盺< 0vўTk)xL5 ٤)Z6שr-ΫEJ$ڙ}*D(͟\!Q6Vʮb)Z-@ MYܕ3b"V}k-95X+um$``V-k"I/#4Kӊ6b7?Ug:*+3.i;@3_V\tQy]{cy&pU4*A1!Gi7Pn ~36+M}}y_#_}m H~s<}1Ŧ bfi̓KEqcdpFYek$ r@H6-WŅܬlh w}ũT 5[$0Ah3;HBRLSxyuVmr700ᏢT+ŃH5+w 3?~`l;ympyTId9/c^TM\e ~xxp _JvRT' o eDiH1&ohwOgWwR fU Wi^ O%]zՓ4^Z,  G2pt0}j)٩\d[ \}Mɧ~ dx̹nD |yp:N2lٽTmRvI<Su1Wg5 کYS@)ޡ#縇WHR;6 YX&ΜW.7xr+"!9側eOtA҉y%d m'!4x|!6mGSMgudKP-'~Cpk; i-P`b֙ASКm)4 /D s28A k ԝ4$N8oLjcFcOW̠T4^ŗKL>11L5rDw,@1AL3پNpb^fiRwjuW$9 h|Y:3U|ϻ*boFVAbt?U 3,:#W7jAI7.ss dڣK/6?WuiŠ2K_S|~<@Bip{ I13WΆ8=:=E2e?2m-ҏ7@NV{LhJ@Ҭ^xsj(IuiVs=ix؀P"o 0dTW=1O`Ej Mcqv3!>L/gE%!57sOɟ^ t)bjwr(MOKe`I܁ar4N7&hFla !3V] 1P^T^9Qa&8zԕ9 (qd+Y 8_:1;i{tۀ.Z{ewj$eG6$&λ^qє ,`Q93d=! I ]_YQ (?X6$yry[$2=I?'Qā}Y7a5N;nqpf1|vnx/:;/wǹ#U͐'~kE=&xھ3?P{ŵ\L8-Dε67!+<io"CwXH&J .}Sܮ9{Lq- Nӈ }1P0q9VphEMi=Oҙy-7u@29\CXAFy%@䮆 }QjQ梟$лodw]< mGeถg@oXڦf`"M +nPGɶɔ.p)uH2q+LjAvrI'Y'z@,{'z\ @/l3xdAGdA5QN^CTr.Fڷh|M;YSoזpgx#4fWPwN]/q48W$QzHxF|Nv2$ YDMb5p]7ZS;g+N Q}؎,& &QXŤsLUyڨy4K+w9+e{JWr "UdlcA] 0gY5C:f*ju(ov`ّyI:tGL^ s"WzMOm2PtMtZG `~o^yQ⓳Gk[kZAŤd@(IŐ -1npO 2kv piJ!ǖ)@$\4~ ȒQy҂JĎcfԂ61g";/:)a3}Rb 51ؐRa5 d[2 <)`w *h+ ᪓Akf#0K}> qVw*aGO+#>_dߕA6<83H8HDyYqjxTԱ0?K]QbyG2J5D tʭ 3 .hs/*"-:lN*,MͥI]!R(O~Y}s'vH(quн`k vr2Md _G QeYX y l/Hdoܝyd-5bb`Ժ 2o4hBTդ"= cӲdzpm5ë;wL={*)i[l/Zn>bv8#wȩ[rW?8wJAl4C-;](YRxUweԍ|Dq-Tۗ|QMɣ`ݺnm*lqn)R+%S:e/Yc;@bh<~pq'"lz# K]1L ra"BLa9}pRI9w[FNCNNKtv00c5祚blepBs<tu[{dO s -'D*v χ0G>W%+Gt(3^ GGR7j7ho)LD+h˥eT({J ط\zʴlj}@Y7R8}j |qXMU?]-FV~YcjcIָTL"4E)u B3gW]hdCE \` p[`ŚC:Ns&jBoiU26"gP'^nP2*."z-3{`+T3:t&vkǠO$l%m}kշHХqm%!;~K Rc:[F c*/p^`h0>cNh]UЉ67supB98C?&ќ~[2+#- ef H9&Gxh.߰n?i_(5\ Nk[n:+i* y6 qpQW)"'Wp-lk{^l*2bN@p6=w7Hs' {gV"/ h fmü M^S|yPkzL.0l߭,rҗ$vQD>` MoVޤCe⡈S.KBzj &f>(E]PΣm$0Y9r5c4z5reOM9Ə?tcR\R6 Ќ2Pڿz=V4,"qt,rr@P0=XC阵!&P ̢WJrs`p+@<\ՓO:',&9UeylȶϹãԭ+-!:O0[*/ndjEaoHœ܏dUxwm_|UvB Uy͘n]W\TËMVOu(V(,5{Y ^%(Q4pRw"@qgۥav}drB#uC̴m#(4 b۹λP .#{B>:zٲ][;HӢ0ÑtGZ$ )S-s@vkm+"SFRd#Z\"Y1@Yz@qx\R\{oJڱBSLGE^oQ4F%&cȯ."E9g냴(ZG"r(/^ٟa_Q|_XStmk.WcZ9&64,$,.8Ţs xvק8t7/l.a3ҌћtG]ɝPښ$̯|0u+?2d(C#-sV/9=Gr0ҫR1Li]MRFw 1AZ+}d)zŵ*0 Z2F fSz. MtƩ۹`Hۆ3&9Q/2^BvVDFwf yxXCju<WC1Ա%4.Ym5.Gn=?Zj~V/cz;0+Ds%\#WɗtEg" ~ |/ vd,aMQ#Y RDdSK@g7-eIˀEH]k4>$:3GŘfu=Ȩ~Dnym +GF$\"tW 9 Ȇ+`Bmi t_l8ޱ!>Q|6TU+fOhr.d;PJ-b bVKzU2ud{WxKtZsvS*r+dBq\XzwC!K#j!Ńn2dG@QH&\j\^} {{.TadƦ2,M3 6RT8΋`TmU>k)k_Qӿ5#]qe$smZqf NJ bU"C Br#,`,d̥F,bhՀ̚WFg-uKoO(^2,(e=*}.|@V=75Zn*iM vv([qGdm rFf^=>@Y.T9vb5&h\L -]&NVbݙ+=FJ?m8wu2R6imKL8y4~)!sLK[Vz c=_J,5Aw̦wy&jZ,_jw`S-"@uGEmQvnO`LM!0'}CՅ\H3?uo:IcI$¢)vձZk`lCM)J(+SȖ2qJ:tyk|ȷַTc ^۽'*zmZ%7r(-T 1C]\$gͤ膈|t6aA0ԭ.!PaNlܾDn3kY ]l`C)mc[`>rtGAa@hIk^Uy \)"슩r4n0 \zCN| h0`~d ;1m7FMwf{twx}U2,u9P(nmUxr v9g_7/uO4Bcrưy.&+N9$GȤs }{8x %.ܒ6 d PnwiVg7:NhZ: vrY0GRP'})$ז mtBhgʵE2INWjkfgZLMWb(VPȍ%+K#0rɾRK?L攳;YNPߐ2qVza:=q^pbxԃ~wמTŔL((;k@68OKzGö$\ɁQ|W1\p`>1r^IG. ,9t~T+sDGxMa9 J75m)z8Op>3- : WkOj#mceRI|}XFqyyDܫΐԧs*46ҢZ>}K3'Jm#WQr{qD+?L?FHt,rx v^g;Gqw1d;NѦa]?0JU?ŹўX=wY)0J{ni]dw2ZN+/37Ό PvV$Z0QulFXU H{p{SeuNH}2i8?'}YGŅ„8U'lɾMqZ^!l*OPcWHl~ ܛw${l$CQ`J? X$ u&q]tZ6axL"P9gVA}nMAhJG 뤟Ē?=[h՝yEn=RBx*J Xݷ8hew4u)F!ټVt9ZTbWkI"t%~^jQ Sԑ Ұ6ܤUL2sz:^Zk-wQm?dk8.7%H4v޼"V{t5G_$8!M| ź`<|t.O0شo%3=!k*Jl3+c<:^zw*@5B%LjP-&.nQkyd{S/a:)p{DDw'g5+  \uK.)o..QAC y ^ C|_5Z9rV-iA o7kd~OےP #Bΐ~I>N/t+\KV~]y[4&D `b  sX2>xlpp [E˸k +I vkye KlћEp\RL8_{>^ONSD`b68ODx0Fu$T>[9:6+,q,l; n8&T +q2>-uߧbYH(f5tM< \[{~=-A{c*恫>/2^y &hd\;@uw=e+i =RO{@1+cTFDgoTxA@s{@ ( :^Ϲ~n *g 6Vfj(DܖŔ?hؒX-[蟖[GQ:"sq˗ :MK>&XFHh1~3'BJgrZ-|;`RVa`:GM}<KMHp\-vwr.R W҄c{~M-(a]gg1 :X-{P>Mx׼K1g=t R MK M8DeӼ|_O)!P>YuDYP ]g-{9&F5{qAH9-@fj׿p h7؅ k`%iDYhὉ>tϛa #yJ.|Œ.%$pS/W`q~}aWg|bn6jV?:N @]'n 9?fQ CVF+ %גm2w@ճ V~ IE;W1X7s:*uʨf8OJ?*ut[I=uK},Q]_} jwE yZ}sy$ewC*# ZGX¦3͒ cP2k@iwKk?`v0>2yeSh<􈼒"j?~}Fj{6RZ!N|豛\Cl5F16SmQhkI*CStSKi 6&p-rug!tZ^2w+瘤߳XliZ렒5UJ.fj [<أǬKF5*+4>x'Sr,G""zp/Yq#>%:ckBXQΉ-!hyTr΄J.2󧕶b\igڍ#=MãN$R;xyW^ȆcQZpjrڪKC>99qVL/uض4HW{y伞T31.姠X(<- ^Q6a%R(:p[lboK#8̏%uW 3}Qbhh%]Bul]Q"&+PjFG_-wj[LA 3Hto:.ZՋ|, T[ץ_(8ԾΚtH)c^8hIjYm91kt} >Y*t_6Ga$pz4bq4 q1X?'ڏ~T${~V5WՑbS_0}jΪ"oLZA%3|B ֬/aQ2'1oGU?S:a*:F̢Zo9e/gl3!(su]q[; {7s3Oh̠a@o>Uia[7[G~2SboLb3מ Y(mIiuiK럛ɬ%^wW͕bHm,X!c{!E {u'`$P3+YH$pD̀ҏrŪ&IuGh /ÿ̝jrxSezqMO0cc!A>Bg !D˹'7v~ wE҆n/Ҽ % [)!~Ksde^d=_D\s`)ZIq5OmPdi1PwܬjBz ׿e$gNHYQ8iAX/эW $M &. X %GPǤX.^*dRn,(_q>5,͔٨kի8Y^d_[˄|Z;UF[o9U\ST.kֶJreC\OͳUŜu) UI{`JM sA_TI|'ό)7Z܉PD4r9I_&9gHoUNn/տ<)_Me=8P+S32s_KNRYi[@%Zib1]f<ԠLfä/3jK>ې7Z+Q+T 1ԺYYzȎ.)~f-|>)=xX3Pr,|د|auWߢЏ G K e"̲TwvsŰom PSUM/E~3)37v3&bz} -X CpNu~.B*IDR؛_Ȩ=ًdfNPfHyU$hWm% *'z%ǢaMcͥ4P?6br/󓘊r=&_6 m+Ar,R ! tQzkgMj": E mGLV*Տ6h*S%[Us8[ډ?[7G-M"3[=V~pqKHjI0R93 v՚:W$`oʵ. ث$V]q 5mL/ؐ˽sWVmY3}Z#n+f2x Ƅ#I g З-ӬPG1vPvAXIZtR$FJL 6hQ,Gz*kX?:ɀ0 ʦ)t!;=1q9礌*..-OapfÅ2 .sfVq³1ouWJR%HzK{ DU6Y샪$nC~"{t =B5r6{1Sk۩Δ=/ MJkSador_ZO";+OK#upHOeTz8 IEQ:Aq/8Z{lmXz9fGhe&;n?% $Fa!!0ԦB=ܠ3tj;YhE`1UЧj1~fsA͉ 4LX' + R ̲٦0g~LAezq9jY߻/l4Hr'({wHRtfс`GN˒9«yA[LEHd@}mq*PE %Hcd|)dHN0'q۬qh5e7ʐU`:gT&p /1W GU'JzNˊ,ˆU처7? asͦ"yx`Mq12purUC.ӕB7dnk9LAid:SZ}:ǏX̂ksOV|_9me_7T!!^:0~ rڞъ'ytJwmp$\[D1u*I]g.=0E WP.SI. lZ5w iQrq07B7,–6Y`'"~4083okb$sU ȂN6=!\@A!b GWXWJ &V|z:TR>`3I)wG]̾m) pl-{]9{EnNߡ+"hR_ +t35 Vk 8msUG*/ӽ9h !g5# _0/ij׭DUhBl'bG"Zi8nwV^-^`̼yxr&.J966!')نj; -LE*[6"ot'fg.6Κp@t3^~ki`Ah 8 Q]g]gyB Rپܾ.&d{8ϫ [vPԼ%:?\weG7gPM ;c6tXM*%5 |:z &4zŚ!Q gK0Ӫܟh/Э>\!^ʎܭ[Դ:N /%qgsC$4S.aIdpإNi,2n;4ya =} 3x[]GPWI':QTY-1D~ˬSMK}udǠQ#ޛrdq6 o*x8,lN,BCհJ]CKjK.4Q)-G79;Ј<7wl"ԍ࢕vf OPcO*z[mx]" Uwv9wyZpˎo*OyVKX*"BuȈ„\.g=˼02&_]nALwYEĞ_G7ꊲ8]p7J4{ 5JUZM 7)gUp=Uţ;GթWp-5>S ·OYU*ݔ"?A}-5@54Mk_CfNV/UKǔARV~u27H@GfUߒW{vdTY7GHv%oػ(D,?kBix@Xxj\zd:k(v4@p o)FbuN\Iň־;%'hpvY)]Yd8ֱJIE2\t1d&T?9ӵNm^fJ'["kpg!D]G֒lzGduu&Q㚅72J~n2Y!!s?IYτ,||v9;|V|rE%i3+:}QpȮ5K \mWu§[rSARypNk Afuۦ-f`Aލ7JF>hke߿K$=֌m`ofS^t]'gX]9yjQ1Տ&)?Btpֿ5%bfy˟28o C\݆rM?Fo6"^tb~A^0ϻ$P%PUPAgc‹~7G!;gRAc#PYrM.nNY<|䭵NkI}|jR(Fiǟ!p;Ea?PRPw5 23ь乣T| gdl4 aި Jb(KEksI% a=x an \/?ד_ 㿡 *EOK|{& ߢ"Gms*4'qH qs~*^r`ݕ)Px7S[9_ѱjŨعߌ2r y( ) A;=M3^O>V# oηJiQ;@<J@U!rW8^儵xVv6FE3cT+tL_yM/PԴYH$.7Jf7Ӭa7-rj-]fY$-">TBYf |CnO)*Brx}oFF}Z0h# n=mZ}*2d>R7d>dʬ^} w?&CN*Fp^9t1r[(NjxsA;\V Iz*CeMXOw`[Ze"$ -2s5aYч&f690m0N8y\{{3${%LČH[:#׬j^ 404/KSSG"M uA3 a`G!Dc hZ_*$vрЍo4|ЃE^3!]_(0]ٓEuVF.pddv?ʼnl.spV~Ha&E;W.{"uI(@wpBO]?40x >AS粹m$*D'X+mH⃰ 5ŜRl!rkl˶ xRZf G? dDa!A;S"A1vIp0qXpg NI GQ@#ܫIG|qk܂JҒh22'?iQ ?BBjxS{V<=-<[NLC oSavvSv3D2AmBdrnؑYe6ZH wR6.aV*> /X7uhH BSMrrDr/"O)_\g=8w.F9k29cQ *WGm l>S o1"XI>95仒^h0 #a,^Io4?:K!<06?4EI_ _!bN]\ g\e!m4J"%_$TY2@lSʛW}H7(yX4!{R,o h''6/6t&yO)*sTN@"*כ`X+m`]VnTv-2%RA0B cB![4_hYK)/VԟJI8%|f/]zbC׭̔9X?˞X(H*%rl5t«3e{v5W}+r}s.pc5QDb#QT-Kpx!6-W**k2?o/k>ePdH;CXUn,%p< X]|7kP_c뷒2L;  ִ4q&BԽ@A_Y,,rgpA"xxQn0="0^KhXFp֥g*2FjFQS5~1U[+z?ܛbP~sYfF bkH wrrg` iuRW= ƲnޑF/c8pB/ ۟& G3fKfxɀk%aC`?Q pqZ7vl|//Z\4!80CQ'X( <GU3c>Cc m)ĒcVK>20bA.w\L|54Lx'|)_! b!FOd /tCD5#9֖uJ8D߽o8dubr9:7 = /, 2tI4+s?EeKVP,m=g3^>{R5hDh@1 k:J pl'1(+=Ɏ菑uvǡû.W3G;-tp3^&U1Pb$^*ִuXϭUGsH#ԋHP rAgxˣx9[K/-o sx*M!޲sd:wY V lz LqeW*QUFк$ D(yo07[xG.|}!Lם|lSRPzǑu(y?LgD t?8EoY̊,<6}s  o'e^+Gp*F@nN8`$lqܸuggjag )1}$G6mI]& p)R9շv##L@]=LîmΝVC+ ?C&qBս'I2? {-B#T>{O[QY,` |+ w f1';&rX֌뻴}hT /.\x_vaO^HiiRN 0nRt5Hv}V:W`Azi @dx`q|@a+yZW%[б, Q^G7aZ72ÙrO.vWK_taqM/SJOIW5vԝ4@9!HG0pdH+Ӯw^ZCȾT]j."?T<%'r si ? ڪe}et9vW -qVy/pU4IG+m/O/e&_h/G/0z/J X9RrRBɝPūsXӸVeՏIpoI[Pg ^/wsN>}8 9q2F{,8 v^sJ/aX9 lZf|NA0r i[*DK zRYIU 6@C?-_}JSbOPW k-rת7L*fGs()0]TcAe­|OH&9l'ZQ}RkL\ rwծZ^Zрe+J@2"7ҦZ*5ܥss"Roſab tȓKܬ(;L02)^m3F,D E~G~;QfO3_[B!%9s?2WE n}gNNE"joj|prvo1~u{g  *3qh}oLz@%OaXUa}pq t>.GOm@OjLX lv%kmcԙ%Fk1D"Ē&$V dh$j]Yˤ[=\^s0eQI$'-{.&gXw`T}x}*N6#ӭF~Vn|knon .#1]S{+ۙ]0wNаNDucn;hƟ.Y%%zޔͺI>|Όa +5ZcVz/ g}܍FNe5,֎'N DܡCX<u'#+];479bԮV퉎̈́ D=#Y$_8,@8˄ў޶fj#[/ݭx YX/I %Zc'Ǹ\|4F Ά[A}kGRWŪ![սeG*whj~^@|EdjE{.dA\@A"J0b`̠'^1-xWEuK@a6NxMSI+SYJ)jeM(FQˍsFnr5IUj[ɴmxb =<ʬnvj,&YZo|O+[p6*{WL8*Jwcjngo˩nr&x޻w/a=myoܵ]v,|늀y,P2=ϰV|}z񭾯 ۼ}!}l#Miը%DG \:GN}tLQbEvV>j έ~~{ω#k,ˣQGfx0F "nSYnfVkkەq=FK䴵Մd쩭aIfݚgJ[jldx[r-1uޗD~" #> p6 rUc`gwO9پͧݼ-.s{1ȇBv4)%hӒYaR>X2*:`j2LW,p! bS}]/Bi8.dkȘ2%-Cpܭ+ MIZ}n 6?'UVt6ަ!jXej(͂; \5s}рWZJģ{.]$=* 8smC3ͨ6v "$C B b~1CQCmhns/7=*ށ^C',S!ۡ%mw{NaˑX|RPMpsH%N0#,n48 ~i|T#Fu}.K', YK_4`55Zyd{M7z43Q9<PJ0?R?9P % 9|14 #f!& 1W=+. B)caY7@]vRikxy!KVMAf&MrJTO,vG.,)c*汴X *$6Ջb?3"%OiQ^),%$n܇UE=@(Z  0,Aُ <݌g3L;fI]H"p&>/`.CF Vj(+$Q%M$W Z?0H{ݾw>U1SͲ`r$OfF _'wv \\Osfp6$.U)mƶLNC"LkP1ʅ܁614~Y4&J&.x {|h8XV3v1}w-k7g' gU@!Ub)*lI$ѽ} 1b !FulTb1^5Bv2`U@1їX =?>9E{Wb+#H]\X?%+{,TzZwɑq2Rx_j#W=ݭP|eiu9b_gqo{ߪU ; .EZ%* PT'Yrc1F_Rp/)U\6{v9jWZϳd-z~5ҏ+*ַspk=d4 "GbŧW.ׄ(*S:Eb0Ih؆_afK[Uj򆽼? `)]iD tw\ 0tq6-۵=c[쑡t8R]>$a6549mgYiWh=>vu2_"!Jϸ9Xw []q*hoG=g2S`Bu[~l~m!{,:K4If\Z$|ÇGU^17o'Gt_m("ьۯ/q-d &9И/ߋ}$XNн꓍4\i#bL tr^JF+&&Tlff:y]-K8 +4On;-v:`ͫNC(%5/$'%\l~hV?r|hMC20;H>G^9X`AQɭ@.k`ԙnj|әJ;GRIA#y_cA,2dfFttPc(JdSz15E=sHD̉oxdA)wu( S+ǝ;XC[xLLzGʠR%naI99ވ9di?/ eC_%BzKNႚZt贈)Օa+?A.WM#1'c1`!OJz8 G w-SmAtߘnPQ6b mLf#*ʫg (s}McXyᎬ {hvmR{yu27 ~*^~lȌA+Eճ9c &f!9͘~=*WX렂=@;'%(aRzKPS0ܥn dZ!0/6sg e|-lƇ8݇-r%EJ`Q|&>xپ-Vlq8`e MNjO'2VbcTۧq@_6+ޤ'~mH9)m|>'BOP+FJ=\%].wb?g#YdmPqYM됣uILϞRV#[b]@`Ȍ' R+<\՞,ɻE 9ƒ4FH7VW `.w6;<"VA.'1Go oϹWb MIC(=zJ2{>3dVh-tsڴ ilifLbbN'qQ7'yzݦ%MPA_:݂VgzQ}<,~Î.OӦHΰ/m9M)$,}@d=F^gVti5w\a/dHDH@QvŔl[vjh8hvEr]kDI$Ma gݿ7X-vVF"!&b5Bn۳Fze[ 䰒t욤ٟȠ^P6l>)#瓋ŷMJA1uc-v9jb|PPxx:V(4rZӓ9/<$<) l/ xc<ܳ4~Ob=Kd=6g8m06q~tɉ:-+H%qcޣ_bbRBKjkʘK Zae}Nd(6yT>̛e#M~~0XAt *=#Y+'sQ]ʀ7oKWG[5P<$o_F<~x 6 `x\ Tv֟)߬_L3w\T VH0ϷkVQGa=ۻh/U{CTpg3g;MN2A]k5N/{d:z4WˠO^u: o*,C@/@΢Pl G=M<+l_gCNGU 5L52 7[A Hڶ.~` 9ټtG2%¿VM:`s,qx@9Uٞyˑy=fV(BTNL2KE#HS^4x1I=+Fr2?4ztpO ÛI^M,[!u!%,IVaD98oW8 K["\TMdTnMɅcF&I][%w_!2v(K'J? #MdC]22͛^GFkuXlPu+Wjj s)i,2Cp(LZue7 qWa3mp㗮07~ݔ31vvQ%Ն!5 | ?փb,>Dp|€娛T% dƑIuoMs?RrH[٣x$IKdZ2o|kC>wpڐF$o'/ڶH\#^$/:_[E|1{C ]Wd?\f;B}+91L8Qsc!ܠ]eN]%NRI&tJ[9<& &TlŰ*:5l1VEVF2ZzMļ{@ئ.$鮀Wz'tAH;2Vx?u@ɼt?c#g0"dֻ@\_? DUG4"NQ,HꚆpaqCQ٦Sp V6]u TRnH^Uf08=v˾@]5yAZwVݬ+JmnnTsQLkq#3bګAq,6k"c>xMI7I6 e {#1u.LKX|׵j[_['GtD; d]\mZ-WL>rᲩӹЁ<6/T.cGxd]GݒFRjL%z`} b=7$a20Tf)$iϞyr(;V"!#cXO} YN9]Qbxvzs~{a.އUeRY"xއvwBUFc)I(,~x8 HӐ)x2xhLN4]dt=< OT3a`?)ɞAb؆aL[Gԑp1{9>w/ 3(5X0=~늶8PS}ϛa,HG(Wq;A kuwKԍMxQ+j  AKDҰ^M0H,w af1YgIf[ϛfgޖ:]b.12] VD`*_`URt44;N85āޅm]{50} *YjPa!9j7?3"̾q厩S% xc}uZ{NXTǢsw:!Bzu`TZecd~m3**? Ӓz9k{+ֳ.}Zݪ^t M"Ռ%}+r΋QK MR"y0v6V1 RQ 4q^m42+/#, I^ɫSNpFlGWKo3RSvc߷dhBk66z2;_(RW2~`'L;t2ڎ^1Zז2qy O^yr8HDm UfjRLxa,V]6m amKUz;f_ (WF 5Rocie `e=K+29MԺsxI XV̯WD .ispO!"-rw@ ;Ki1^NYДqo@ڄR!CH]PUDu,ڲ)ö@}'iP*$cv8Fԥljdz ]]=He o[@yχ/Tw,XEM@ri=>.)[!!c^#J5(9Zd3t}K "`b$] 4:ݘTC bp^1οgD%((\?"JǛ~>;6o˧Qwcdl=oNlƶR)tᮋ^UUJrl40^U5Ri 9OW h*[t6 @W7ULk:þ A|fK [l YnήQvv'E Q'A17JB쑱#&e&ȷ$exS%zs7e^; >dN# sH]L#~*u4?q%ߗܰ4R[G]j<@ㆅ۷afv(fFh} k#5aYvf/m|`8Ј(5ۇh7[E [%[@gʃ`¸fN^%ʺRbdDGiL4xєHȹW֤\YE}k`&|nmclU+KJzQ^,IRK.iKp.o9!׆<{:~PmK 4ɫ J |[PBCI\W%|!' hSmy*6|qRKh] ̓ex0:]4K©&Ka~˫ox=RRsXbvbim넄**8Gx*lcQKg) ݛQl0:NHz su7{f)LA\G"y1}tI )f"nzXٞ aCפ.yLz Π"TZq=A ~`}{;nBvC)t(LfJUiG^QAbh2 0$+j\˥HXnHZ4G&UR\ECr'jq&I[7r/-npZ8B%@[Pp|(E, CjڏŌs~%*kO!YgQݦ[TVCb.cMoZyR }0J^ Nkwn 3Kg`tuA8{4ИT!_o#G 4/|a?ڑ)XQUsaI"PUn| ˴Ȃ*ׅNVآyw])T2Go.spL.V:jMXx,|o%į%FEmfieTUc"oW`Vkr'P3#?F4D<#aR&|aU%+wWX]9B<2kT'r[rBQ^"0hq@ך/NH585e壾"ghJD 7VP^ V *KBӖQl^1ƊzԡUQj,]kLU3 ^^^cR6VD$p|rFbpţOq> \‰ ذ t|܁zּt ^ߏ|ޭPƁ^WniExY6Fg EJqV6c+[v$N u@$b S W瞪?؝RJr䄣d߾AIɈ.7p2.&fM)+PH*^'uf*զ8-Osv5|W"iy_lP@}"$1EV\uϹ{^8 I@{U 99J]0E/ j=Ow1Ę\ Z֩m:{!b$$}/bհ#WOzhW8B-i \F0l4)j8uy2V(\fB]`"=h{@\8.nK@AkH3W]p&^;5bb[9Cвa(SOr *aa :G*Gs%Ӄq/GϚQ SGgvZ<P"z2pL[98(gmwC{M[0dՃ,iĀ-QlCpe.v9YSyJGD=)*mx|nυ,UP0r+4I#3$ ՘Oʒ¼A DR2ҧJSQH3s!IU?]AۍipϓGqW/2xaVlMcAKpjcWlEUp&y(]Kd]y/eE/F_;PPI״Ps:U _n!Q O؎%Rj%ӽ\Ui N8wEg(B`OHpeKHbuT̎nxEpu8cͿB왖氕s U6]*.,~;VE_DŊ_<=޷Vͽݘl,ukh$}w+4E|*qڤB7 ʗ=xg?OE[:n$w [uڡr$"FBaC$8%뽎!%Y)* Thԑ4 c]0qgeGZm=X;,6*`umJJ5$H([¸4.']XD~#萃4!CG2IJ4>zԛG-xbs]>c=L;(({вJW|4-&^ ²yiJe 2a"sMKUePnÁpr"d[RyrL-qP_8Y滃zd%+yufotU^T#cS&8<`X*ÐL1dywYv1A #'&f |Fd ґYʒZ~d GRFN U1 o^T]ퟝ#laHmRM2鶟an?. Q6n(?j*:co8?#j!GkQbͪp.! iij,ȫа"q#ïLVn[|5QWs x;Q;Rtq7l[ׄE"BDq&IO`C–lQXCF*.nG4W}լ9>1!}/ F[[ ;azv#sHH^"8 (w*7Díwq$=HO@υ*o@Ox v봃1<]FeArm骶 ypF+ӑbgK"iDȅW0A"Hs3O5]kU9(a*} (!}'VrǯșM|ˎG5ϖLynj+xxuuU@~4gܢW+~L +y)YopȮhsZ* WH]x `iݳmg.΃Bd%"Wv|Ujqb<<H3ZLV&]]k$Y !hUiv՘EZgI *87uK5ާN\Jv D2fYOz0@Y5pc[͈\ ƃ}& !!)ĸl]"p%=my%qœ&<3% ` T\-fQ9#Nm έ\8N[4kp&b-T F٧(E[+^0²$xwcdj l)хgMzS4BWԅE֯W2g16 \)Yy{e0߃Mi:;THc4} \qҩ1}5 .p,cM@/[dGY @#=#qfv颙pL;Aڲzjɰj1dgxmxdy4uQvNŪL{]cqe8b2e>ʺL tH&y|-b;|ƻSٯpuÉg$*ޖXIhfRE aBb%- 2K/Wk$.{BTF"=Ý|2)ϥ n+08ƑCz\%rsIxZCW'zMڒ£AG2u#3]~dl.CC&% j"<\͠)Nu2?ׁ\ #봅Z'&BB滬ݎ|`JhkK%Dd߇V_a(z/&mI]=qސdyF7`FK(|D!w紫(2t86X Z=I^IV7C`?Oz+z0GX! DYupkqH2: O`LL1{G$m=>CCo+|ܗr{pԗ Nú^PN/%C`;)؂e?AQFV[QNXM**BH2pgF!+CvuI<uf@>c o4v9-01m6*&]tB_ng]9||V ޤ!x*ͬ֋((_̀6Bs_` ]m%=*F$LJ Bؿ!SB!2#IQAW0 P*YCT5P%2"xlT'&+AeRxe[p\Ȩ#rZMܢfQ/q8εlvA<%zf X؍ .nC14Rid&%'Tf8SfizaEC9_;)/RPI]D*oD* 4UO4]V\%{FKАHv=2co1@4rAzA h_eE-mb[>['%^X܄J_<>0Bށq\-=ⓑhK`PD5tKo_Be; ߉c2m?<\k\5YOzz0\h]5>;)_&{D|.Mܲ YԌ}DJB&2v2unx&ű=f~9M|c3W\sKY[K>ԸD푪]U>Az=]+շ-"к`qO`t |tdxU"M*u!XԑRT6K֕k2I;A feEaZ"d!̛xUc s%0ܢ> )T|o^;6W_:b j)9zhal9cN԰OX3N:- *F>xR0jT`ĺ:kMI [?ex  "IZ1U\TJߧC;!hEB;]Q]3b}Hk5JaccEw)@[s~26Ie GHP3HzR QT tǗ_IA=Vi1bQӢV\N츒N{7X<l2e|FV t !/\\m®h&s#Wa l&rәJMJ![U}nO4FS6*/6,[L I9w:;ƪ`lč]Q`*BVj_a74TPKO)X8Zո ϩ`~_A^kgodٺhʡy4I? SNiəDa9GM/o ^P($ w;[\3d7I>.0ai˟Dd.̴7#Ro51fsBady֯j f<*$h rx~!yڼF|)u_5F%Evցc*nƗpԦm8L~fUp':xߡ:ζeEhkGsctHGQ#p)Ԩ #*=M<:rH<)2(XrSD Gd>7Z1b@.yoiTwC"HWU;EN|:#f vXZ|SJ@ Pu,V3k#<׾VZJ?vWxRأV.4+mE/Td@ 9xlBi,?'^T $@]#\O1v+w]0{/S<)Q8 r`ǂ% A$A*ܓW+v,w:a+)NiÌNy&s9t{Q+w5y*NI\{/CCiBF*$Ț/^&~S/5IbߖRǓ@ocXQQm=f*P2OT~ו Y{~-Q"PJaplۥԎܯv> ~QKme47nuY$Hx7}Q*BJN&-`M$' >tm2gڍ;u p5lʕ\1ƔZDKb(n/$NKbN9ێ5+KQF 6"[zSlꈐrNo08-gv~@93>=*Se1;7}},CAgQ#gGjNv:@MSnC7^2HM)i{oPYlZV`Pg_1rTR ;y8b-]Snt5E:ׁ2/U&16Pq#|k<-Gя'KS`0ȩA5z` Սl{ʐrkVisѲ4T\qhVłڄ]18[4KYbꍱS/ꄸ+"'XO|U7 WL Mž;)QS?FkBָ@jx qqB|bj٫u+CTg~$u+[(},Q߮5^8L7YbbC]ŚDq1jߗN~$#1eRUf:v̤*=Rs[3o? 0u؜'$=|NqxQQtMVJ|Nx>wJ1﵌HSR2e?y/$pDddvPJa斬2bKw*L=S^'CWw0u&u'{fh\ Y f'77j4'WMPZG\ܒ@nst*uzKY|oӝ+6 -X[Hv:0x `-yl4+DNӅ!^~P˷>Obў&y4=͈5j8J,J'8bv72]Ħi!ߵx}so[3upE7@lEC$W0ZE8#Uhy$x-j\G{VHmOTb,p`u'ƟkN@40yI˜,w6Ke/$ aצ4h07 3@GV|2{#;D_QGiHjx-Jc1G\< ܜc sE1EC SG03A 7عG2yŖ=OFqMum FkNԡ@.Qn5X挒1 ȕTAiR":%ۀqɃM?4Gh;![{@C>tآ0pj@sTEƟ_؀ P\8۽U jxLaH]PH"(ńb5eݥ;:þTD~I[Cz}'FF^÷"vҗ|U^3 };/4Zpȱs/sû_L?Zh߻_2lZa_K,>:/qZ,P1ue)l#BٳQg?Dv,BDbG(\E2.MKp!ŶWeG{VrĎAA|Ox*gmQw-ǯ/W:IaWxQw[Ya>5Z9Yȭ"@9׸Jiۻy3q켙Ww Ny9;͆Q-JG<^IcJ8Zgv[ 5剒R:DJǫ|(w9_Yi^ |TA `o6u_OM!2uѷPON~ 0VBDA_̌C#nj\-lU5` d`~'s451C l b.hMJ2F j R4wZιPSPprȲߗ_'pN 4r*5oAPGۅp8p՗/WhPsT@jqMܣ(fmyݔ3s3BVz"kgQ)tq4Q 0vm 1hv2`ÎH&XyͩԠNm_!KCh#Ifm,4-ϠzdqD|^^m\\O6б$ [ Uy]lͳj> pҁᠠێ_nr7eml<#R;wo e aሰ՛ChwAx36zN/6^RzW|VˡՔކa)I0H50z;1i4b7 `#\S:iWX,eFYls6Z) cG3QloUt)8+v=TzQ"HiC~r#bccR^sOXwzu[mc˝:WN`bk#.v $@klW՚K8.~3;#u1ۣQӟAaDxދs&"{5oH|4u< C[¶5l7 -շ- Aw%d+0Psf@K&č\^}b}ZX2j)ނPkIܖppJs@`Y.In˓YYJgF?EGw>tq^,]A=9w:.엫e*IoeW@\{vH_/D]9;F#"%SU]\}Pk$*ZakfQ*:lSh-!`ЈGVCN=VxMW8e'qܾ>; el<-AB+SKW`4hi%0vAMp݇,F|fP֍H T%OhaIkl5%Z}oFʧV-Wя OFeוH+[`mWs:/nU5+f`'I_f"BF(rRm\ z>C栲L6p|G'">=@x4W1P ynO4[X6bۼ 8˖?-)$EO"/t>{QH\8!2 -@HIܶ|ƺZO>NWU(wɰL}/̲}@p6yBjN9yK*YOGqUa#SH`QߎL <VQ9?r|wνZs .U;+n _S1>^@`h6j=JrL -#@$Z|B]`Sh[A6A!X0.wϓG(f(s IdxpJ T=8JvQ;a!V~ 3 `k ){֏zI!}E19ܚ:C2Įy_[R5H ^CDHuaD'^dK8B׵4&>rx8P+~/پ(9iG-`cQQhU\7ZKMJ]Mx@&vA:₢g- t 3ON8Xt n8Ϗ,^}}T8InПYʨl2M_V]e ۓc/wku XVˬZZ " LөT<݇be*|ã^FP29:RZoWȄ \-5w?'jF!)Ss>qNag(m9'THђIWcǦ{U @-BʽǼ͗uS8 E32'܌h)6 y_cWjmg(dbnQkl:eC@"܍WxuΣ$42`SItX'<LT:/z)g+Egw"և'I!BI B3 艊# 0 *L>]o jkNwMF jD&Ri vL,zemdf ]؆K{i+^ȼN'uzо>nBpv]e=wxTlUڄOVK13[0_b% ,Ĝ²AM@K*L`T.uQ\D)Y`-<+ՠ:lbcx:;@, 3bnS)b/8X5ÃksHu 3*W;Z13`\ ؟,3fW u.sMߐs;InEڽqxZZ ~&)fj dp-IxhDm0TĽ>N:-&F&Q#p˶":O=/.\-v>*nT$!& #gRqn_q NqÑY7Y@P#aoD}_pʪ7\9ms1Wf+&7C @Ŗ7)PVM`b\d Exbyϵ Neys`R{INLͶ>`p_Bn1^d)+ְ0 >G*9rx{fRW]Ld#_TĖZjARP'YdH2!1+vR_ Kv}aeDa׀vm:rߠ/\AWmJ{׷Y- /=KvJtx#ͅrG#3|qWϰOC/]|[Пb;/!tcؙ$dP5P^j2 dc3f,2g9f]]󖟾M'ilPWoVb.f ,kb'*{dsJOݵ#2xU$\^ R {a"a lO򑗆5y]ՙȝ7g.ESMg3F^X&{h &+˛:P@ 09"hZ%l{䢵7UIv$hr\:aCWȘ Prs3NS#LL㏕߹5'*DKg\(J.^vPkd&՟BW県 L՗$z˪ kp;!ɪ1XɊ2f^ᑳbЌ{XG_^OsNZl~+Qs+Zñ]ۄ뭋rJEc_`!O<(}D|J ok={ߒ(.FwRk9gRQkHSԉ:ڏhH{+1}7S=ӥER dmAMbS !7JN`z_?5Is}p3ypw?ϟұAFz.Т!$4ZZй&X`ҔoCV!\&+Jozto? FS}jT$E*k|F}cP/y9P3B?} N`GYN4).vu'9 F3q18~xf*I)ҩyrwVï&h<ހk7Q38肽w,h=p$u 'ab_;Dkk#Z=+xTJ|>~"bZ*trL5U_$3ݻ`'+?T޲>lPL|q\Wsm^ߴW,&o<Ѓ'os\uxM3c|ET`2?#kqvk*JvjspW)?Y= ZeϴI]?``&*wWw\.ʜZHr9ךB%1$_IFg32tSeJmAh7i_U1{p%d<2]BHXi/6I2BUQT+4L8hM.&*Y9ls+\`$I1ȆArD <}OyLgKpEc.ChhV199-Z|9g7/r gKhfx٘OHs3*s bhjJ-i}T9؄U,?Y;Ҧ&GjT4mN{"٢<0h::*@?XH/S-|W.{Ԕ!il|Y[_ML[)աXQ-Msf'`?Ias-ekݾGh0JfXT#eMͩi?ܡ޷iv~GҢ}N\f?M31al,HM6_^56׼H"{$fh|ˆzDmdu{ 9k,zM^tX VzO(aP0b| E(ݽQ66i ͨ] ?JB\`$Uu)lH3HýUKZcJViq З쥓W ^Y"s¸w0aR4# %-d(2!hEuECY,@yQޅi6i<3Éc\t/8&`o~=@{ w2nj09g\]Z |u>yf)NUmsj\!SzO3M, zKTPҐ7TT$Y{Obl~ZRn_Z-վqO$Owp5paZb5*#WrgXi:͆foiq.h\G-휣FT{/Z̻ir<bkiF.WLBw_-Gob&A6Civ¢Q1Q$R?nj}‚$^FU'CEnɼ\H/ E=~Alnb=)Hlz|G*ve:eS-V=EDB4<* t:N@VeX) QJ^WL^Byc/-NnVm1>G;MnuBcj7_p" D co.él1RuZ }69(%5|U⾉<*N?&ϲL'}dF豃DT 5ߪVx!=*;|Km={g>JCb3&79਻2e94xⶴDHPdDY22!,\)[S.yLݶ~zT5d@P?Nʌ&Y4d.g .o*ofwÈN ]\:ăXu#/XYXp@h9Ω&Xd |Ov-[/?wXp2n03y|t@= 7Z/>ƾ7o/|+uC3ȶ/Z2gmM61zxr> &? j-8F 4'&\_{V~ZGTR/ l_AA!sٙtDg5oU{FGI.&k4p^:xrvGj%Xhv{—h+vynW쵝˲ner >ω۟8c4E:FM7A2ǻ;\6"\vhҼ,Ro1Kg,g$;p*e}԰jәZ#0/: ^w HK_A/h%" :$=@w|]BhIl4B;.!\#PL];]%vfX X/NwaCenM)UQ[~*MbȰWbQjʅ\{تuYVP+tyd-~wnQ?"dXS|Dæ![7= )A0u[zVzE3TbiuOjѼz+"O([YviC^: \^ǐf`aC8S:, htfs( [%5&L~E[k HfD<0ǡ>rJ dVmzZL-F@J/jOJuƭO.ϡm%󯯻|8w^8Mjart"=$2@@&.0~MJz`ŠAЅH'J6"$g(23k@?V t$ʮPQ\ v,6Lȳ'چj;$v:园ۺrLgdG` C%Ƨr[$w8uKŷ< A58eGE̪GG+y *WIG B!rZh}kU~'j@ӬpFq977tKvR`)ڄs6ec}3E.\ЭVf͉BQȾ|je!McQxh?">XںԊsDYz!^}sA$$3g 8+wTj5 fU~&yCU }mDq K,HLjBXv~tdbTGπ+)\#'Jy%6qOFs|g[1Kt`|eFfkԱRxؚ&uvQ-r>L Z'|:ꖼi}\-űeS`N]L_MRYltT w;\mI+bOS=(WxbZD?0`@hZ ';Lev%[;ˑ[(ͯB@{?Ym֏ndű#t.gdGoK(QZ'|(Hj|Ts d/Brw,;$kwEydFzbֿ媾`~q YG kZ,+ 0کiz[Ei#@//z3|wDB?66}of.CDfBuw͂wʎXHl@Ӹ> 0 "]E ]Js-HC2%M=jS$e;A>hצc&oЇ|XOMSh֗]"LA9!Тbu̝zF/~y~ 7^aШZ򡪷4uw,,n)4w[qs|_G̮KuK`1A鋹y[\ ~gCHWzKڲS tLb_1lpt6aTF/dՔ taWk¼%"JֽN}y')1SN bu[bTfja׷, јd~oebNг@"=<2bv`ώm[ɖ&Tt P)W XI J#LeO,ZKb~Vcbztf)uRTACb™8zB< N|nȋ{ U Fc faQû8?s1=9(_(ap&'Dz/SD՞+P3᥋T 1}&&Z.^CWA=U.om! )I*+K$m8|$@l֮o9 I_rXm71X%[̬nuEf&ZC! N E*?ə&곧qDSZhmH<#3(^nN GArja_6PamHHѹU\Dg!XC8.ai_J k< 025}jd\[W Grn[l`r(u5JчB.ՙTX3%.| 8OӋ/TYG6uNssr(Oc.lj2VKInnj\S]pHlr /cHM?)s5E40Ha]IqB#fXM1SmoC$NK >3i`y9̶)v"E/(ޮPНГs|YH'N}jʧ0|l:)kcê|}Q^?KWvBﷱ]?UZ!Sq0FeF%ty;*0bұ3C^Ewi[1Ԏy9MLU&V0: !s+ᄬ+ sf;,7kʔ! R=2-f{kĤ3&.'SVVO-hO:'d2sBG}8ן.2s{ivPQdoPɘ~ZLy߅K~ 1~LճgKD"8A;ڊQB܋oox%W_1uQn')N;"٨C3mݱ [6e&7<}HFD*݆idR0F-gs #y4bF)$Wؿ=[.aՠ0 cڷZ[I=եFy?'?!f53LD{2EF^ ˲n ҔۊM+ԌqB9H7. Jo9%V=fX3 M#]Q=u#I*IT0tZ>3XIC Q(:oWq?-Zu @ ߔ?x]8\ })aHE4 &# 쭻<%i)q9cѫM1K疩nG0g쉣NIwq[{R옷w8"pf !s"/<:L%QxÙ ̉NhG"=,pFoo ewr]Ev\yxR`` /$N\̧r%JR=8 @Ɵ8_Cv,!>}uGUE9o.jV!i^+Dt|&;|8 5cٳhpDj; I'GfmK,1 U& zxQE,ntEmc41ЏN ;$k1{KCFꤵS4ʢK.F%=OJIwZG]#6A8]]Û-qNfr~Ng:?myہz&tn;ƭfuHmMגju~=d@nP$|*d% +0=&ֹ֟? P!˗AÆζе'LZ48?XS98^#>\@p4ˏB}z^HvTߡ^IEQ[N%)y.wHf~9$fkQ= T6 A:qUo?U:%mP/Y_;*K ݭh`Iy!+IK¦dr?0@MiɕEG((Q\z&`xu|@-6/*VehdAJ܁֧x٥g'p}'X;:j=wOӞWc`uApp!%S,6mS4,fWeLpDqN#`atb^wu)|Y$hiCr Jr #?囷DԨ@WW$A7VKԨ漞kE} WCT Q/5h}; UiiPۗedV \i7#XSc[U4 FR(Uۯ!DhJ@=9 a0=h)ېxs|{w_J;ҺՌn=[V SwM}`Lww=nwh.sOrڳ?=)JaF| z_WV?dJhu8omr9qHV zm8v{)2jϯivaV+ ]|t}Q?s.٨!oRdQ%öLӰrk戉?5\~n1Άُ-`U)^RNz[)Ml:k?e`.N S pw%1ϣ]Ȑ]GA?%?^i7d..K#q=2^(>ih(!s *g ڼ$Iu?Ra.ABL.( D9Hn0tɀ_46D#ÍR+^ ʯ]kR&6dRp:}T=K mERtfpUƢDpi{K/ e [pr$Q7u0 #gQz\S(X4m)H)3IccU9u^C줻uil 9d$]=(ɢ = .kaSJo`A{"0z_3P?%&ȟafJHLB{}/vsS2 Ye 8 &f ӷ~Ml3F:}_̹~+$KFCMKX0Qj#ԷxT]ϾTD0n)lE7<>K|jyi9J#lpYgРC[39OGޚQr0Lw ~>&?B6yAc-ŭo|C+ɘJ>bKsո5#45 {W&Cv7VGZ~C [.h$U#ٯ VIk$3#~9B0J*Hh%cEƶ_M f ]hJ=r2іYYAy@LdٔV_jf=:SYFM.at;r3 ҧ[0eIK͂Y) M"_~q"1Kti%1 R&j@oQ|fkej8=لu8HU~*YWZrm2M崙bkR/KO^U{_O֮{D+^ JՉNr]] :iizTBAbUn0.>esr]GnEU tP!^Ǝ3Ў{lKˡ!f^'Zo {㊺E~UYCJ6co_W$_p$*X1591AhkD.ݐCd}YCNN/.ٲ( ֠y%܈A p5V2xާD6qմA@ǥ%`1 &oؤY^N7\]yLqavlVY^&G2դ5"Vi!}rRz.@ J<Ӽ*ns )>( wEö&.x$.Yh*h9unXIKh<,: ![@M.AkJT)I*="ɨI:VMǓagHf&℣-Aݵ5+;t50⟶Ɗe0ZQiFtQ.ٳ|VeTUHMw*)5?ݹavKe4wyort7A1>m3/Pr. &4+{a|_~qZ@~- !~\3d9"tXk>㼪7ڽJl` b,it{A#@ Cv3?_b+`'ľAlO{[^'NuEYw$/]Y9Z; JȜtB8s9iltv9m } Ǥ!زұr>`L \x<Ρs=cୈ`b'Nci]p7^b?b?N5;C'`Z x%rct-%IPc_üv n5t+ğg0ښ7:G~t .Q]9N ˙yuFe}q0[41?VGVTU2V=L*?y8O{ +Xc6,'G4msԠ3gce'<+$TDXtkR‚<>Z€^o+Un &;8tsTGIHB8=hpyY̎JC=|!LD*PdGoE^tkt! z47ڳ* ,t0"i 3G0ڇEn={|RR_~,_h 74|99\83OSObߏTZ`E"R( v`3NJq?ȃ) tj†:nG[I ERҡ 0-iOFVm1@¥>C1[?d*"2zzL]XۺXFlrvS [i`w˂uv[7Xp8<NaFwd v \O(< ] kԳ`>~!k k}Lؚ"m QW$n;Pb1Tm-W8T3 'Nd 7i ɡbHom㎦}F꜏zcfK`IEU-J^h#^$a F͜!21\g B `imw;+nuu:7Ue_ C !<⭶`IQ* u_oί<ޭ핰te$Yźej6:_+-J%MdGqz_u #&+C~g^P_R"#u$"`^=X AI#l[{ۼΤPbp;J5. uǐ jz׭# z*-r*jo`5o: zU#7@w!Ĝ:l|p#)?a jd), Z@M o۽T w-NL1KBK[{.}Ddž=8<$њL^>VPb\'j p`q3NX[!),~L9cZ%J 8Wܢ5#(!?jh$M ɑVk;GNVgx UI %Ϩ]p] u,-Y7=_ORzÑ)pyf z[4 qS=Cӵد[2#s_5W!!<06zW8ľsA#kS.Uk( tJ ^XHBD/;D۴(Q:nh엢WTiƟ_0Jm`1.:XmpbR!:`D•:75{lOŻpI!LfE5I3pG;\ٞ_jSnp7 JqZ%K3xT¡6GbہL@8k싢qĶsswju2}..X˹b=oه_,<+v =O(\nE[BfŖ6B&nPbO&ՠh~*i6ƎF ?[mQ6(ղ #Nk.|vK3jԠ;19EmV\[2FtRؕ!߮f -jȮfCWQʚ oȞmN`cz=g*O:&g6'v&8J}7 YNcރeq3h!ģ).HeT~2a$b ;QuiÅvNxX|f|=l& >=^vUfbv Tn 08F=Mh`u8\ª37L]aM >QΗAyYll$֡I9HdxvX mp*˿U650c%z/*s03-*~1{P| $(!ޚ E?\"p~_*W[yR.jڌS*<AZ7v?!׷ ?e Eim ma,[xO g3.xktbgDn3փ7dY'pFzWggVKL%idL2CZHb"z9<|<&"D<]@,3Ls+֕0 D0TO{N 7mSʸ'OO=,|b;ؒ U`jiv>׏wN hV>L4SCR (-wYR;~1mɪ?4 t4M! on`|!mm KEg)]\ca%}29??XWi0eMp½Σ׺jj '. :8K~"3o\}axun$+gZ{Gٸmw*Zu>ws]3ÜH6\?nAStgrM6Skk%!TJAh SxzZIJ7ݘytTfI=ަqsC X?\ ){Zͼx̥?Xo4>h,`+XU162,Pٗh VهJh GW?6I,eԶt#sI߂4pKjS|#K?ʝ㕺M?|yJ:z}N<ˆ]'j1h6iuX{PMaFa]ZT)fP 9 Ӎ5K8xlt,í04chTѡ]6Cz3t%LZ]PJi[#+;]HOR tyBbh}&J1lEbBa!f(xpʼ(t\XDn%q)zCՕdC5“ғv1`!әE&j/OHtS;0RnX`=ʪWhEn SG+(2N%4Ɵ _`CT_9=sEx~Hij㰔&YL)={=!l"\5 N㍨-ƳrG]wL$׈YUO\ư 4 O_?[@ffݒubź6~6F }xW_Ò6?P2zbV &/E}r[{pD 3lll՟49#~߫V#_ "mU263U1|.f;ުWd%9Y2nÇ{RkNv!xq2`>ܨ}8y3n&/uau-!g*|G:$DBjAv. `VgPg\&%bK$Xhxԕ$ehGXx$씁`Iq\Qbf"7 rNjP^{l(s`iTP1/y9׉Ю>H\VD>bs(4!H+0K]o$?u)6W̻jmnſ縎& ]kr|Ga0#ƿZJBJOXp2"ôBYUu]wTYU$J|"Br4_UrSS*T񰞾}|nuۈ!;P(JR;4Z&)_I>8JQݲ=5@I}kyHF3ObqFbddrhk6L\ecu#K +|+ؔtwV)ٴ4 yE/ :r˜0{R\Nj_Y-4ݕVR2lxr)^>H?"Arg%tUA!0ZqmtF(Y<9l? YJ6:g(0xe`A;]Pb +8O{'vT9:]j\+ BZd)gUg lEDEL8XxC=A0GJn#D@>%|dqPoƈ۷ Z]5 Vý tGLS8&ɽRwB' J"͆n(2'9_ÇɟJb] 'Ұ#ʹqxUmѲ*nYQN pMJܿ_3u^{gDm|ERUV{I`$ៃA֥t.D;#ెkh1Ɂjzy'5j>p 'oeXe\l#*+uB6vלuZGg b2ٹCy@  $m#S'4yh%'}H~"}ѷԦ̕B*ZL•nz-ALEP^ڻaQ@g1<.t=iA4/g'  *͵lk?F 6юm0 Mgo$as0*9XFRȺf v-?ZR〼i옋/J/&lɳVF o~4VUpiD0( *u>p!B1u7d-mR<l\>}C\| ]z; :Ruox_~?=EY J=A@A2t7NZU,`{@kL#ā)=u@-0Mzw6U+kgssBhXtmᠲ|u)Er0ø_rRqeYM $ &Bw0͡Ux)Fj? 󓧦`jDcqj3Knb )W8! mzũnadwӧ3H >,FꅾAx>>'鳃$DNvC)` p1KDۙ=f00BzL8z*y_HC[ֿ]+_0S/:/l&$X 7LH츖UVOܵ蚽 H4rX1C{n"#|u. =C}T#.UJOujv/hm &dƈ^?h!A(+$hy21iJj],8Sl43Լ6' %3k4YnF:El܆lc4՟_uW5Ij1ӗ}K& zf-BtX@tǤ="4m ?{#Ui0YT"NK dĉ!Ǔө(OȦ|h dA>1dj?6;FtJ˕3("ʬ#,8bgڕR}ǔ@.29[6xY*Ng+ E&zp|C8TP<(VSnUޅ88.W4PՓjf|%xBhZ+{qP/Ef2_I&QXX.tZ./0)v#SuRLUbr)8ƇY+!TH (@=B}LuzLO;;(&\v`+vogXrvl&mri WBڈ2 D ,p ֢Ombdx)TWX" ˬ*e ] @m6ZNXC`gk|*E􈸁{'LJ*Uw_Lܠ9Z1!ڇ3G.~A+jIan&b;WsCU$.9ѽoA"*.`iMa y6Q sm~]u!L9_v\eE`C\UCDrpBiB_wSH֬,q,w$tpRӓw}_?\Y/HŠ Fsu@~&oTW_B*&U5Ȇu H(^|6S9-W#0ȕX:4ҹy=Ifh;zk`2V )998i44>)OfFA[<'9wx>ݧ, cN&3QZO Й`'XF\ue`Míݧ>N:aS:;TAB@fR N7ae-Zys8;_M.6qN>w$ ]VY2FaX-ř h:DES$bٽ"avtQ-yl?t<&E8ڟMF"8E6;`l0ל@&-7o4U@_/L.@Ǹghv=}2I.}C r)޼J%weSC㏩hys|Zy^)هncTώt\,$[_@ʨΜٖH}KЉ#hb9l'*r28?!Kp(8r:xtp~ ;(Dz)|ih;+,T6'Bu8JjA &Df-X1^#N0(9R)Ғ&XlM #(g'!vj 5ɱMc.Jł`mnE eSA-} py&^h=@Mbǔw \FU@:\ ӏEgE"`_yMC}͝lVVϙpr7ocջAA?)v Ac!l=Ծkk+SC"aFs[ #LŅyzXZqF0޴^ gaq?lTVo76t;&&MI6;'<-N#UO1:zx8 Qpܟtz Gr ؍q(Ju{pj[=m~OZ?zvW%4@M+ۧ4%遟 E)d4ƬMб.BAgF/ᓯ DAn!` BъXr1AV.F!errdA(!ή#E?ڰ3s"[a' !ٙRxWCh B'%Vk D_02:GT+偾?Mwя_Aׯ:o~5p7\z~Ke}gfζnATX9Pb-t%H>ݼ Ks咃{Z]gXVd iD ,Ɏ->_u Evٻr^ߨ'QC#nӡ_ɝF!̤x;õ♎w&(FU`2,'n $./G>S'!#@fȨRᙘs WŻ v`d$nqc 1 1ܻm ²*{ޅ ?I)j@&g}nm= dpD%k 7,bC _Z 9fC>p+KE{0Kh}PZQxEb 6THPCUike/ʡ{cMJCܻXB#$0c@kSG-q;ν(u"Bp:͆Rx|}Ҩ3hdE/;ET&x"obҝ-F(A6U /^1[+r,g6lHpQcr҆oG^7e䈅4't\}HPt|X1,! xBhq,$bųL`:Хɽ|Bc@ȱP'q 3"x;-jeP,\lgJv&uIcN3u쩊 f8B |{!.Ld1-[\pIw1Lq5.8)m^R{Izq7p>vj4ïrLX77W)ΑaF.S'񝽗.c[}`:ADnTܺl-  f Uz+5&)΍\ΠyC<ø]N WBu?͟+I8"@g-Ye;Ji/=> U%(KPK|۸gCk*pǚnʇZNPxE3U߰(ƏaDcϞ}w#t6у4ߦUDUc#B~uL.@7NHvhF.&Q;Vv41FZ2YZƇn4wdvW:K.Ct]dv=i,ω bi 1$ ƕf cZD웕 rsT3~u@ Z%DqaEA8ϧPLmԸG`!U}~9Щ2BPX|, 3K9l'S2˙_˞iZ r71jY5|NDHR8'G`iu̫%ktU:GTqJ 6 iW>mpdiՆT)p#y=y]^Tzy6vJ:`h.C3N~|ض_j|&jN[iYo; ĔRwbnlIRj,"A@Gዅm+ > 3! aFVG=Ne\Ū\iy yH4Tbs^ ]VgZ ap%yQ]xaLboyhnx/Q^8#*N.$O }1FX@oˢOYx%=Ԁ-!m)$p&?w:t#` N@ cz}~_ظM$9O$J!\=ee3J?ʁYX]G~nk`Ѽm+F~D.pz v^HT$-5yQc2)@H#l¨5֎k0f$-ҡ OK԰4w oILJ r"(a] `H2D=WС ZUuN6#ψڦ~ju_XC0D9T;1~le|^I" Ài@_^8']WK&y.Xܫ.*IW=7?26k?r'JK:%(kZxqzsd2U<^o_lkQWB\ץl,P#{y_ݬQTKQ.m`X5 ?Po ׽, #ѰrҎ9b=NasD%r>َ<*@3$!7;6#C #tBfYr/ nrqNP{˵WUԣ rQƣ/6VÇ:yNUlT~ͫMR@۰VqU~,- -̍ls S]ܞ7 ;/ T461PBM؈qxD 9|FӆEfROqfi5CW6B .j?<|%g|׿MI駋ѥ=\kApܼ`6eݨ}fIR=[ '^$v-TNϭNwb1슀c5nD R rq.@Eѡ͗‰<"U%?fPRU]h')tQDp-mf6zо: ۚNeo9U<}=FtjVlZ(hvLx`xu[(EXN+$5Ĝ,a@c2?_ǀ+NS\'{+%Iq0a̓e}JS"# JljbcVsRbJE?w{Yo9Ľ%JxA:! zB"\&ua|.,ɻ}q"(%G6eeHsQ.8𛅀F'@A"te\Kfp,T{Q.Z脳1FmXVޣ%{+N=XY*^|Ao ]w 3;wE7K5q^L:KoUzFO36ħvɲcuQKm<&^fBs@C0P3WW蛜\S1"cq 1+Kq>d.B$ .׍i9QuC!OҮ[G[~q]3LFd 'Yme,g2z0r _p]T_ߚ1PMq&G`/R5T ϴ‰{m_TLO["dkBMJ2u>+#IVTʈ#8qEܠ^QPQ&:A~:"6q(R 5GMFf+^0iX:$):DީIqtډ?&3v~窃-zEy0VW d+Ehxʌ|#<i@F )r)rֹA- MYRo*" o*j2W^Bg'~V I\Q҈48GuX.<~Vп/F#<(?@gެRk'/fHPa`̑'8FdE1^?ʗL~,(opզ5 |@ރAEN j9 %֎gIфT !iߋ!D?ksF"F̈ጥ#dl.yǺT ĶTQϤSb ($pgCĘ3Fy_r%J `nO~ ~B2uٞ}g԰5my,IY˺j\$xlZ`# &;h샒^A=LK\d^Ymk1e&O婌Ȁug}`R8 <f_q/{4] ͡dMbs7-"VHx K>Z_DȡJoxCf*HXeR'@Sz X0$w,e3&Xq|֚@ʝЂt):.CBmA}~bTQv%^V*mC-!WfZ=TNh{KVvQLFq88~|^9b߆>i/x 6v콢3\9'lv8%T^T>_ÀWaĈ᳂(|qjJqK_on%zw)q4?>m>En4eƚ{20 T;1.Nn{ )n!k&KB55v$&]]+j@CR@Z8壨 6`ViqЗ,dr} =:È+"kU<RC8;wQȲy+ݯ1g ˓nB(k'@t2:׃iASϟ<,}C= El^f;Pl=Qw_rSP:S=mVuW<㶃RBϰp`Q\r-ҤtWKC=Zv)5ֈLcfM*|LM[)hL4+Y&4J v x~tFOϻ&/{zj3@ȊXũ܌=YTё0Y~y!WpHUp`O&8 G?bCM*a.ϊ5rgb4ޱ[bTXc|g%AE(Ƴiě/!"%r9Fy=A"]J B+/ԍ7T4t(ȫ^fuG(CN]Wʑ{L-Q$0Ch[rdpKHɴ.{*>KORFǤ[T7D{|}0&h^ױ&9Q=|X- ̌(iFTIEM5 aS(<]/VӮ.x]+UN,8L%ѬL:`ln!u*h?H_7lҺIE;ܵG f A*R@4,` Aq" Un12V%.YZcSNd&C,t5^]x+K<&%tΚs;Q%+\3N+UB׎>)m`L5&j:؁7ړB9V"噩oǶxHr{})1ꈕkltNe24NR6YHt2B1lMsVVlCRۡry" C v@m1K ; QnKC,Iݬ g4K•QvVJH..OdaV\.J ݥ'boD#2bnk-{z:>f9n!Lk]-v f`A*e}q:G #}F .~ |OzTkRHʻ ߁YoE_Wَ{];4c%aWaNoH,%:L1n׆:;?K#+)B`ͭg9\X_ b[)nEq>p+@J(ꂄ]42bİr0K̯rsHl++(;2z @:Y|Ggܶ֞msk8Z~UV/4?.KK%tr-FkF#2@a;9 QU 8p"{\ym~y4nޞ;q[xu}rO.4I94{a]AwKjT`UfCD9%_ݲ (nnb5nsBN"Q%|dt^ZL!V ~1iH _kSX綘䨤ޜc'P>ot|=E"fRFP P"b~fSպaTۼYO-|Df]~CA*[q:3Ϭ2\f)jEjYsO 0^lmiY$ۤ2N >00wFX, Oz.|D@vQDpڇ@ z Ӯ`y4TrE".4>Ĩ뙂=S8P&jf]I%UYJrCt2&vyz#\ӿL 05|ݡWȚA0;}YH+0N.N(w6ȳnbvHO5xs'9 b[f@ ak.A_ZFJUE*97ΐ4%-zc%c{7Tsmwb";{S^ѷ~C@ Ё'(zR/1Tjd1tTi܁F^ Ss밿XwIV@F+v]i7z;Z켇!\kbp*>ۢTP8' {0n:!,ܝx|w@1[M4HΖYcBa#^Dz$ߺRd.b-;F4-px#x>e2We!s%`)+HALs 6Ikiس,NDʤ$hjKNXn RKXB+JX$OT}pN'QO&_ghnARɴCKž6h ^l=XYF6-IR}[kG04A{N7&g3W$C%/gTqZT6h찿4oY~7`q19v!?%)bIy@g=r }f aхH?~")x?>)TBdM+^J,Smt2 W3GCݟ "GXli ?!ymtuʁmXsJ3C,(">@OR357)SFcQS Q4`Gڜ8Ec3C|}~Us(+w4j mBOzM[n~= D{\ҜJ< PJ_δV5AG\FE>iޢ(6|+J)wP1I/ڮ"bJIz`פHROV|7w ^vmKe6xMB$|4]/=4$uQ-d%A#81qNF 1˙ZN$_VgyJcU _MNY-?}"F,,E^u dfӍw_%~1׌"0M{*af"xJdZK+i|vS"&C+dT曅^#T>mK#+sޙuY*3xȤyMڹSx9> V-Zs&aOMPɝhɵwPE,)5ݐ3Ǧkaw"4^XݽMmD-:W(p0EA_+!TNsH&N65cRǧ-/5F\_d;s( m(ulA(|w>bH$/g'=^Q`O"4,G`ukPD;|~!:Eg>,@deOKIk|K5jL 2[m* `ӜęyߪE gZ cJ [oI!bޫ.+Y6KJEJ y3.0%i&ޯ4xnhx_|er'+&= N("@%we=.:WȨ*JW"j ]6?J1o5&qWhΧW`KHOFlV\\P0#!.?vk;ܝPăs:%OkK)Dȅ HS+b?QMy͐el[ƓM4ѮB @ɇ?unPFS_9tϹN蕯RKL?CWͭ0hN?9J=KE{Dod=}{[q@4'ΚFR]8&]2tU #tqb7_p [%{2ce xZ a.nqg=`/Q NeeȟJem|r5@KCֆoD5~k8 FWY$ 65ikKЊcHWґ".):XΊv-rwKI?ePO*Y_&l+`J*OMNaTY^G| 颓XhXT?cKH@`trvł7z{*0eߖ&i`>u;4HKyjXrR!|b.8,ߊ$9ɾ,-!4*P/sj#R'Eo+2(xB,QIlH(K, ^YƂox0/ /Ҁ,}oj'oL|/{mh҃xAZ#VVko?hH73SJPF4GzzI{uc#ش~D!8z%ppgd(&I[CTf [S׸c*J:hV<+1}i۟G"0s|K݃1߿ILXa_kQ8Z-X BGy q]Cr3dD GegD=Pqe!hGs\+ZOieGӲ}Sg+tC ͼ4u hկb[A]ch=}k/9T `b݊XÎi0 r3@|`}6H_b =! j#eOyV(mmm^uI݆|p CL ]!%-~$7b F U G%ql7+Ʌ*k'dM$gBK-]?3""TWԬnX"ψ_df᠅o ?k:j,ƒT9ԧ TJ;\cԙgD_fkbTHd0yN(XS]5eMN+OùPs~5qܜt4GbeXZcDF,)wȬrL?N#gq4=gIR3ZA`u>FCtFs`2BQo+}^堾꣙,0GƻDS~1I-].E,R/e(T+~q1fHi5ɸ~DIDc#]6GY!B'.@o>xFpĞv`\ʟ U>+ݔ8aĕry%rxoM\ p%mDQj7ڐ6_ۡLFOw8&)V\W!6wjCm`4C9n֘TڟLB͂؟~[4|Cw<߽zI7R{*ݢH@ ,כ ,U %ma??-!YbkmV,2^&*p4X@닝 #OU\hZ qЪ|SmǝJJ+i:ׄ腚e=בm[Ovt C 3HB}6u1Nq VPx =zbSGz4'Dv8ױΡ7|.DZJ0I=36c;=%o_Jzc%̫ xS.$ȚT֩U1@>D=^J\ c 6(%Q&vQɓ7U/þn{']iYW v͞ڎ,.z}Q~5 l:ש!RAV>g#ƨ{_=yoJNZۙ'$G&/3vs8;JՈh5BȒj@K*Y c KEL#oJ"*VhT33n_ZޅJӢ+8kusw+  ` c>}p.߫47s=cc+I/-Biz;3*vJTgڠ"9XY [F]O8m1 sFC= V0} t.ʀ@)˜T  |c{Ԗ鑅2$ ~* z1v캤SLNiV⢬fJqbR͉8s}`擇mH=[L[^mSSoD5CͰtdA饬0m+<0yTXzleĂ֜ flKHs\fY!/_Ln( DYn`gsh0b4g"?!̠pBgG v r frӪ[ OPcv"l \bb^>> z^k8-b_hBǴ9?i %<ܸ=CaPT H^Fb *4~JʥvD*l vr{}%3l19!o'3P>&6>2bQGgT1[jtK`ɚ̥bb| [kfi @aѽ+(daSYO`7ykJ*8]{GPcUEu##B5o*P$P! XB SRᗉ(8 .!!%ϻ @5OK:Ew D#ìLsq)b {rp1"_FR/S̮V,˶%ml{<dOӲ+l i #ڶǐς.e1Hlt9m; sd:8/ZRu#%͟6 .7WG l7B`L.a SvA+ 8:1I.h[è<#l*? |w&yzր!=W)EdCS 09ԕLnR370HϿҟ6m.gAbL]Zˋ֗"r݄L ׀)16SQӤe(`Bth.K N+Z~O|Jxkkrpa2- ??*XgW8G! ]^_+?k7˔L NRڄgo}^/8B 2uf5P0KgxI/XK]OVՙ-299y%X8\(HWf)Jt_ō3'/a\%[BpJ"Tm| _M`ȇhbAh5$ |ƔjQ|D")O0ڐ%wIn&[{o|M\u6 ]Tdsi|݄^݋GFͬ2l"_ 5Ezش3/" rx!Ŋ bP&7w/VxUpSml"-qt7vkㄦ{gȶ֟tOɄOAؖy}dw,ַ4ymƑH3ЂXˤNɪWi!zp]"b^;$X==3p՞e  _Z'\A;Pl/"'8l?^T} ֛>\;hyq-B|ԛYz,xY I~{E&znyMsMUv'lM:[Uq35&2=[UA[$(@ODLI<ⴹ6 grS~~^~4.(0%o|gΓu籝Q y,B l|4]+'sZ#S1!@"l,S0 6!WC3v!ݠ"e!SV;0W߸"/SBx4oRt7l|O xN1+1C UHiUD9Q#RJs6~+*.mtt/~d-Sw7܎@(ؖY‚N/]*ֺ"a3-_0-oF j4O xe8o/kyu7.>snБ<$3Dԫ.X m]iPYbR&Vzni)[: (lMd2<}(bM{ phx?#7ē+P&|fXkd60?a 69A&&d0Iϝay9a({"㧐E(Q"P߼5r'D)Ձ ~@ |@Mġd*ZY~P|3 DY[TE_BuGR|)zBsTb+R7᳙1e lY=槐e ϼIxo8a h^`}|%B[!gSZ @cGg"P`ʢ޴BŮÔ빸̀no/i nDaI`40`p4]<`1 qFG }F-' KO|Pp*x#;[xgA}xe4iA{JN+@M6=R_n"}ITw6 _|;vDHEn_y뤿1ͳalHOmlk${c/ui+ +ZgҕZ|§͆ ^ਣ 2ț“TLc.ȇm9)y$͜=H6AɁ≘j&:8@{GFֺLҗOn= R)$/,1XC7<$UCg0 I°C}=)d&ӂaە'Gl9Eش@W`]V0^YL̄k@>wOrӐI~qYrM?Z+kѨfs EsFiԩiM"Q.UÏ}4Z>~@ !5GJz4׶-"c5U~Jd1OА̺L#xa\Hֵ9s̿I߂<$ߐ^T/,ޅX㶆sw+ҽf @}ygu6#J+1ޟCCzsbrLB3<{v8Q n@}jer<0=L^cM-/sozeE>U*j$x,%. Sd(+cXmS ):pߡ0(OƓA3tC3{k(Qބ W{^ULykm|+^Xu$jq2w-n*%ڀ'ݲE(qZqv^g7wYmjԝ7&Ё#CFG$FWPP|k:4F.TRr)M h$!Ӯ (6uf*Ei1S*cow~i- =irQZR&#\\R-<(" /b~fÜ֌{7QӦGJ;WdBY0]d?-G&xQBwrf-Q7*[4qpg7Rة{ԕqdl[L> Ēzn*PG5B rȔ 9#b>`Y9@//Z%[A}Y3(̰[Ahp{eJmт) QK^zsō9!E;%ihR6f}Vh5i$hV٢y ̖/vv :CXw :nL}t!gq Q&#GV[ f\Zv0rCY* ʞQgumb/ o.MdXfme8=5$i) [(zˮ+,b lPn )פo `$X0TeP].#qї?x]tXe3FXϕ>$EMW4  ^M'+?ͫL{ώqD}ڶP\JL[jqю-ӂYM[A,0ޝLY6r:~HhSCKI*V1SSyV8Fԁw$+qE)b1)#6h߀qcUKJKbx>ӗ+ƼR4#GiS݃ӮiU.6[B?]prAF!.73qv;a8:D ZT]>] DAS|Iv܎z)fo吺>!?C;w^PyҰmB[?]@bŠ /cJ]΂$j)yu UM rp=(pm@"a۲ S9I O1r9b}c'%4VP)={_s7+:A[y"Ɂ6MM-๗ 2fчM2`A,ZOBq@opIeOƌb^`~$-x/nS Dr7}TlSEw`&x|pQEjbPh-(^kYχ3|!']WV}v+16Bf,,h'QiLont)77 woRFRxK_FOm-o* TavIVȄk+9$LMcʗ:7L٪Y!> < &uC%VЦiZ l/]T{HZc F)zN&olpybUe[q1'NmܝnȊzb&˗/4h>fb7ܱx9ҐQ4ŨUI)i 44G#I4CT8Mq=huP]J:ՠr{t>ώbю9:n a"ŷ/ %kG0 p`,3z5T:{ mZ<ɒϗ?S!G_xZXr$@dgL˘3x=R:Q@^~G`N.< m$7=^|q:$OCKZw|:@G;e yPpfqshM3iʚ> / z~E(TmAn/kX17YQhkq#U\f$p!'A쮡1Jl<JH7ḻ@W0X$x(Y]2]_4HVѬD){X|+ >zv\ RCuu.EYUwy/+{5S7W{a ZqJ,|/0\d"F^pUA .\22Vxҩ 9p=KTfm˲=y5U[o~X>mlmSct ~)9w{_NV=AO [F! \ ApW i7f,9; k*܌ȷhll?yd<ʺGIPxg(d-x-#el>ګMM:QۯSMVΫ[ჟ]a{|lfڬXS(bI훑[rO H/FDݕ%|n|QvLC0X!./\'Z#֨Yn`Ҋ~A *Kt9^2Rœ7z/Kg kfW.nTxohٿʟ=byNp j퉸pvp؏umU51xɒ!pOW17\hY7vp >N3qM3yx!B7 K e_e^{B@4r$qXXÏq`2kHy`!A.G ~nٙ@.X{T]?(E9pU򳸐8ar~_z*:ksMqkC>ȰL&n֍=>]Em^Jb@ S/w<}B4iQR :arSG\ 퓠l_fi خq)1J:<5}V6㚩aۋ[ 97Kk_K UmsE"אOȇ ݟ )$e iG`ݨķDmBfDXј8=:d4)mHpMBY8dw%wX{"+-ZB D[CӝLU:5'WduȝOhInjd̙D f//dW*˅e|#^9ukGUN/}7asʛq4U{&c λ0¢1,8!DJj*ҽtYXndp -+㧤wp~;iprco[$[./kh\ͣwf񩶦b\W@s'_GQ$ lZ"U,n;3e~-,ϯ/6/Tgîg~ 9 b٬͏uk!%xd`RD%6˛hRJ";t,3OiB)q: ljQf\&]7)wz/r+GΥxOyP SOugYiNK&LAy 8ſȉb}T4Fμ`.WR+cf|yaP,r)hCu o =O0챂zV)ng<|͞vwKR=(:L bGyhAuٯ5̑(5 sb콨-f"L:8CGg5D7H^AW)؅ն.7YOPYz;l*78>j} Fiȧz;m:e0V"D,"A{~ETA=YX=pN:<ip @ UX%GG+Ej3})y}lmwiwb`.~ՅY,!Gh:[2Bx`tV F> f|6w6oቹS`]*S܎}>Pz)6<0KUzՔ q3R3uXM u`mՄCa J(q|' ZYEr n|u-i`ʛx5v]C?J_p0 ;)z^'eLGTr 2Syř }j]T{c@HL7ڔ$N2a+v!urNAʴl8&P(?UhŦw,@L\Ik4ZQ@ ?)Fcat`%ˎelgˈߦaP/( koWmF覥s}DrfL=>Y}/%RN,끓bNZGN 28(Q)cMlT{ЁR`UK~QBBi[b6ef9}X>y-D*`e!J! 8bӠ, Hkø9gm͊KijϱIS-L[{$(:XkF)t/YI[,f۳ȭ:&BꐜGwLs~7. c&}8t;gkXZ [ߒNF":g/ZD%=GF`=oE=pN [ u]x65􁻲Z&I`/K; K151C-pf 3E!Gͷr 6h%mX6 ҉AX1i9"* ދ?[F`؏b $:zQnjt1j>{j#/Bq~Fa2Nqj&-H9#NB~;ABQeղ,ti5cg l*g/$7Omo W_5@aL87 iZd7*LTWϽ?\Lh)FZ fǀp]^ f>,b Q0K "m(tkCمj"+ܦoG-CyIvs'YQ=/6&{"]!<ߥ'Pnvr.C-3@=U,eTGKMCc1ԛ";_W2C)gq.UK2.-򌺿`R)K+78D6Yƺ]f4M\HzDɒ GG岩H2>5{N:|6< {q$SkFqO|2~qG̘`ET*0\!HQS=yz8[4x'<|10fl9.şsf' B %يcd[[BK$o\g} &ĥ2uYՐg $܇%(2"s|ϩ76CZ1 ZN )VA9KL.!r& ? rƖ}R,l] JF>x=j$B>X2^[scJߞzCiT f4#*fRT0MūH-М$ZЮ+&,5UM"J)I;f%xl5<8,=x+ƒًb䋁Hzkg1NNfCM<ַǡk&.ac&lƫ08X^t`d?DҚL;eI=g0w>Nтv 9A,vuĚ 1 KtT))X牶5}}3<9@{>BcbȉиdmXN 5xELX=~ZHWWPR"فv6-uMՖ)Si0ZLܑ|!S!å ^/'h'v\o~ԥc 8-cC>6% U0䝆O M+9%F;}Z`ad?f6P2&Yt'M.M:BϨvB[ OehU&AY0m9oAO5}{#j i)밲 ~bz.SdJ2 E)t j]-.~@dkbVOYETS&VzإbCt4plRf=7y7sdcr /NQ'skJlR"E:t;91}@ƔM֟yyqFwkbS}2?vOsgg} Aoҥ" eƪM~גHy붆]P4.=]jxZIi3%аɘ@ y{iyِ[Ϟ-`dGˬ/\bFfAL;xYSq96RR%P XkXm,q((/w㾋٥x%X]w4RVº.h{~,fA] J#)?G+7 _o1-E!Dòlw}Cv'2'獮W@"cj[$TGNm :OQhSPha'yֻ3" [xplHgkuF @=<^t/jltG3TQ4+MPi& spP9lVj ZX6÷YecA/C-́!Yy乁2c(mz]ٰq\ pe'vavQƨS4+R5Y(b]@ICMrGBRr^gqB݊)7(phkb?r1̻4mԘFv:t9)(`5,šTQ%w*WT@~„vCr<JЫ?gZ.er`r~OhX yZH=sznWL@~wgYI^80[v[LwUo2z%Y~o^,;{njP@T_8(UQ7M,Q֟jU'?8b ׹ 7%s@ .(oB u 1_0e: lAyhЊ\62xrJ65R׽3.վ+ebE7 AF 1}/_-i,2G)1 3IcHVFGaT;Pygڐ*|j?Ãtl~_ no8M/D1cYZFYVtu5˩CO؈a+ Ŋ\#{tk5f+"yb>!L lI:i/&u|s0j~ѱHB;+lˁLaV (O#}bBҫLn1%(/EpZN@mifG,-^ⰛִY& Eq+vݕmd`*p 4O96 @lif1^E z9۷[wKY; /=mJ~PlF\벺ɱ8~\5&ObYVMdV!z6L q*^̌t]a@`nlL=9sIKW2+/lZXO,Ɗ7N@Ҙ"*r*H^qAcH =_q@~YY ! hd*M&yLJ1o&$oi gb'lz;3{/c]i=!Qk3\RHPe=CM?ѵ!$:'1 qt5 銳py.3hMPjv wI{+|*SvM:pt\KZ4Z nTǻNeFl@kT%U{qߴ\;HoD@ҵQyQcI2SGPsx.*j!6%r0!'F|1Vs`;%S>{%&Nj3\4G|e{zC +Ȯɩi%j Yz/IȩAcƌmBV&6vN&\$Ɩ}FH$z%״$,xMv$NwwY\yrsΌ%5†שaEQ[4A> !#> ce1ʵLS,IwHDӍAx'hN\_34,\CZ c:HXo(Zq8>MpB۠_8 Rvon;xȦ\UVnv~>cn%ܵ7&Yt4-pnpT{5'k +Q\޶%KqeMY=Cb|/uN =,H0@b$.&n uojLU\MaΕnb"Vn㬓OҎ%zDʓPER *@LnZ?qc g)Y8_\Å.SQC @Bg8n@)}"$4qo]K ؝<Hi^u% I=9g$YKZ',i7^?oXPȨu)#郉qvpq0ųmu$E%G*<[uuF W;q- B`[Fz22fíw*z³srL?EI!o۞"b1JF#T:ˣOT[ȑOWzut78)@eZgjK=77!x:u|:ڙ P;Uz}+ hRPl43x"e&w1mTW0% :#+;5^ ;N ړqwf߂w:{5O`xIC3ɡKg(d$V5WhoLv(FZeh)GQMv'w3)_%} e3R'rSliԗ<3W֧+O>wۺb_%$ T]/ᗱ&ބ#&lc9pr.>߻Uiu.$fq^z]iÇp >29NDџ{ G)JqkxBea ٽ&QAH|2L)i/#!vt/ܯ^hN% jIb%CVYx~gc=hw2lgibQ ppkeWci9-)Ax{vĤU}[ϱt ҉KEz E9!#78 ȼW{QnXUz] Ч~K~=(5qyݡܒ5'-Qmo{]~{a&]%J5R2"MtEsC~P_,WHx\ˬUc siohՕ>gi9 lt A{̓ lG+A v]ga6oۧUQ:8c _/:Λ?n@AVrW %JeYwBU'yUNgʆ)"ZT6p*h^u~hcDG;{6:6p ~4r 'ڂśX7Y x>3" ɸ]rAUɬ:KPX@q:vM\dzU#u!9C /-2ekQ%17M*0'_ۨߎ`t.٤QrUoC뭈4| eqeH=Si =v:I~ ȋA&Tl Nۗ9VRg R+=<썭ECWz'wwZ:~0ؘDOѕY^Tkp''{7H<`շ\ }@leF6"c mlzp*lOUͼTpg^a3-TyI$,s~=G`!R.+BYKP0Xsv ~i 2҄2q 3EEʋ}EHԋẹ~2Jr8sd#jTHΪ*EA/1FPAr S7*ö8xYQ\^?aA/ICvRruש⭂%Mh>$9*m*Y}.>#}qzCLGݙa;.ljoU&D-EIehk $9V,t3(%0(1GDC <ӧcQ5Lp@o:u  eަc1oK5a?lE==bIv-}>TYRYuU#~8b@WO|ix2g*FI8:/6AE\J@ &1@:Vkm s[׊s?D^G8:*6ޒbC~m, Ӡ1=1364j7i\Aw }4*RבZtE|_* *|s'G3k?RCh}T=kҀ#.{>\gbǃλ=t#;?o&&{ѧ,&刍bX:{+ZN"..c9 U6=7 PY{K;+(1VQwҩLZzq=04[ '+N`aYDy:Q`!6e!,oRxL؊.4 2 `>9͒!LazZbL+%HtpKFWd@ʕ':"H ZQ mz>MI,ݦy4v\civ>48e8&NCz9Mbpm:v| P4ml?N8@8ZyF Z>Vv@ ]UýՠNzEHYt՞^֣idU*T{*{ ,1JgzI#l_A㦘ybw@~\gq(Ay=[n"T7D?C⪛R=6ߚU&@K4+UME5#s{w AoU|W`/}i 0F_LGjaJXzY"{*ڏ3-3& /Tmzj 0[+8#qq'B%dG9 O \c(=JQv7;~?͹55qH#%]+DplM!4?V w~2)W noZ! D5ׯ\ml'+|Xaӝ'l[|չuaqjkȇaJm~[~DZgoCOa-3 -lO7N38{4c1]O/Ʊw^qhc=4T\qSEۅ\F]YMbŶ* `p8KƭdT GLk edLk¬oY@'!5I5 xr E?hdlbe67p=S,!yȑB A R/7[%^ N1';C$;p&;bgj[%x_[ HQVh&D>]hjˏl ,xY C\i`ÏZqK55Y RȤЉg.HQƖkFϵ)ՃĈϿ* XTdxC*xqozYMmaVY/KßVDV>?ϣN}83=$< 2S==JP灳ȃ[jA{!a}زLWʻR Gp:dbq@ٲZ3ޗW67;_cZ› |ݺβVӴs~,, :9Ucŋ.pW-h Wpa[]s0Q0wtsE/2€'@I7$5p5,Sٶ%J<1u 3AZ 4!ݵNӨwEl _ lӟ,4Lؐ+:+$-hHр\Hi%s M3^!~[q(ڻ2$*KزiTxyk#$;nmZBoU^kyՍo>Cl8!&5E*vm|tUweAF` V3A7R Rip *0G6(FN$&*ʀ3KYB%cMcR l"G@1, ˢqVPr!"2 Cuאt'y rڕS1Ioz/ b[TUx1h/XeC@В8?*` uwEwMnMcYXP={&d.0fPJ [q߻<bq45jZ P'gCbqDO!?BB3;MJpha8dfTpgp E[͝D`cF77"~7O$^Tɦp4lG"JkK)SFƆ=(Nc*hQ,D+8WFb2-s9 sjMUkw)X3$jz/ZR$X 8nm{UCkLcIF 1M=X/p4=EZv$2=BM@~DWek &yב_&jSOX!tR@@.ιivXwW\c}݋հ'D"KB0rj:RZw!f|sװ*7I:5 CֺTHC2- =iϨq {yDFEjK|NEY6( Dk|ܞU[jXﳊJpy):.&4 CY`)7+ @ȯF lcG(VYlq}Rp08*e2Co0N[p-Nπl\E$texP4 Bރts2S>F>23Yf`6~ Dg/vXQF/ ੾z8S״$PI& d<+gɷ,c0%,ؕ=atF1o撆`` S5A+2sk~a쯰ץ@WRUmK6B wZcI f{aRon9ng+ͺL : ^*fA㲬Cjg!Js9K&_@<__qsOt" |vHJA[ᮮH #9ʋDƣ`boUIE:o'Jvs5lOb\N n#zLF#{,hqd?8A`)Ȼ=E) jHMѵ.ވ{:duIc-J'zcX5ʉunvif1ocr_i~O-l Ț<٫7B-8Q-dw-d? ,Q肔(xov]Ї3|ϻ a ɠJop=m86Akkv櫴s#{d|USD})qFJR\9WPay8W!d#\47ȐE2ddD0`"MqcQfLHN(Gwǟ5pq1Q̬NIxk"pQભ˫זC1Y_#_{`6кin"+'} ƲC?j.Dn8jI)Ē\! AKwXYMpBACh7`U>NjFO%{_ _-nR53}+ ڄ[2(a9'~~Ў ۮW@p7[ԓ1ށb%eF e&eqT 0z *θuHBV;v&17⨒J?u;b1d_rvel[R/ -&X ^[R5J` t[{Egp'2QROtgR¬\ ,7O#cۓƑFͥ1+Bu8$M{swډvE.T@Hjv^:!ҳn.'Ycf;a[|r2nN%^ >²`"=7qo:2^t$"mڊR^rAsXK;FO|蓺X-\ym|32|k (^MpoSa-6."8!7h&CfE;=s9q^_[aȽct5C1IO(Es{bU>ChҦx윢yOڥ^7WP4PQ7  6e[V"-A͑e^ziikL ?V*0E߂]kԞm|'u^|{Zjſ  $KfnB[ | Z1 (~?Zicۧ4M^lPWSq 'mAYuW&خzojRD qg!*7퇖w%);&2Ytv3V ׁyc3,ڂ63T83K_r+aV\/p{!-mh/v&DgyzdXƱ`W0CC'.:?O"l 0Y0F q@Nw{uQhgqkl:$3r_QI-V%K3GPJ2g:I/AL6q\kA9IF0]EY@q#, =8 sMif':bgg޼ޢ/kTF.r v&=;uG%DQ>67FOoR RSaf<1RaL,+MF 1![?|BԻKfT*dUcMTC4@>@raliaL$jchiEVy*LpBuUTaE~9߶8Rmjݳ4X[KA)g3 uƥAT u&ÿ0q vwRa'V wJ.^dX;V$I˙T5YKb ehζOx}{|wgX!MO^nX`x@a~-Ljs~VrfF p1~< )i&,:}0|#8˗١ʒZr `W(A`'W%ng4F̯XnXe9h-KPͰ Uݑ>&3>SAR!e.,Y2S ]tsfYъzlǓ`]i8 gPD4dIp:0!f_P`1p(oSpNԖIƀݾ5*itPPNY`mM-^qC_c+V4 iF2)ǀ[h2x¤EhHbX5V] ԉˮaӑ#e E{z r@8v )|,lRc!Eɣ]z P's8.%(`.bR> |aQdOkLPBZow;+Z€ 9]^qC׫ڟӆG5 2X<ƌg"௹InB ^5T˝ڸф?;gɗP|1SX4FYQ!eaKch`X.@j |ixD6a_9-rSXELa阯;_.{ۼeN%NzL^ET=fLW:iޟx PE*Cprxsg 1PWrX p>rj6vEzVZQQ4vk L'Sm25*Kb_/ܥ3yd] XHbP8;":z͚F5ZuG./ZFe0I0))ΠؿqUIƗ}?= pea(~ЖQG[}>$nFё'՜FF8{D)?;crTٍE[Wo ?t$> %JOѺ)sm\s.Uaz:[P{..j#a%RJQH ]풢˞nWNo" ~=&,åi 4b} [@R}kf2ՅwLJ!:J*{/uSӿyQHmyL-X,(gy$m 'ŸmRڬʈ !?a]g(O{2Ff+(bQ3+]c5rtmML69wܶZy3biWkJ7>Z3ste@Mȹ p YU?e_4VU~׉!CNB+T88Ud^TCObu={}DzUgeplq&#j0=>MՑ{T&xgՓqb[ <ѭD&~CUywcHWB$o؍ɯ^ΥLRpၒ<¡  DKQo*v0Z7/f0ɠjdL>U08wCkqٺy]RNAܢ_G3WjibXx6z20|̵1Bޣ=ZnwSUv/<5SDCjcmhO')b.L0iXs nɦyLץtogрynuy>V?i\M0Xcw' ~tgXk* ٽ,y6 [꧕e66 "+|@M/_->_ʰ0 ߋWg FqfƝ.B;#wVC0n)J0.-K^1hS\",V WReW/9l %\$q{$0ldL@P,ޥ- ZIF7f*EQ|vئBKyͰ~w>1ĘM]U$UƆ}<.[A/(A7F172Br Pt6>)͸PD5lrRBMH}aG[GT-ܽ#˭(2v2& EA =dd2P"f"n&m u)3> <aWEС:d!U@|EE*Г?ۋMYqΛ`(bT`LحQotaN t/nlsZC;$3 -4F'L$|ϸ!J@MR-l7@1 hۼ5V)E"F 9 H.]g_kcی j 0jQWHqT,( z2 @.sЦ1Ta\OpP8A|\h;K丁Y [7ʩEkFib$g!4(e >VKr9R*EZW!?՛-tOeMH$}߽IQur3X0+έ[_6z_ajo\=엟mtݴz`:r$ٿ|+w/*Њyܓ mѸd=L}FSGod[1:RgT6ĉ79zӃg^aF1}&`_UWQ{9)˔Ci*_M/l9LB,S[{_X3Rk@,*; YY㨪s2m;=HNH[5e1ު5(Ew{b[$&z7ƴG3sIk Tb j& hb/\=/eApR9:i~Vrx Q%)黥x>YCd%U`W#T%tҠ[򩸭@&)w A!OpG{:? YT"Me3%]O'@/Bd5WCg".趗#*ug5W?~.:"qA"D@|{$O wwp^eeѲ*:p\)Iڞ}^=cr:hv[@ % 񽻧#PϫnX c|P–׀30&wD+߸#C,If0uW(0:gc7>M&`-d–HӔT%B1V=rT*ǝdS7s(/h,zT7 tL߿ln8JeضCbz& eo\E9diM#]N#L_KxcAѲ(˻ lQ̘ *!eL@G x:u%:X P^)yVA>vJ1ҡwˤ\k{Ֆ^)ADq&S)"'pXI<-,-GiS^#%j-Jǁ5E84䋂υ Gx^[Od ^;^IۿE GMcC Ef>nqy 4`uA Tw-`WʑLusv ZA'd-|; '㷡,La]sDjҏ1V@WХci$ EH֪͜K>j"&q8"&x{08 W`fƠWEo:!CT񁣻8.MfQuT>bv_OunK ]rC4"P7?$|3*lv]1](XW-MAVobC6@Ja=&y16}ߥE T-g98n\tI[C~zjgѦ~gh*ԃJʜ^@3;{}&%23 _Nt?x_וVe2dƊb2" &_ɴr'lOPD}?ۙ>Nͪ܆2r*|@5(R+;)e΁(~,ϩ@uDddf%QdtT>@KX/3|NDKGg nf2{7"vmmuI+G<.N!YдI^!;:#7] M5غ].o,^e4߲F$YfGiHЫ#)3 B)o0H;m5'~!b4oUMk ֐R`  elǡRx G?.0O<];&<źC3Ux49Gǀ.Ws~8k異=e'w#٠6eD|dL9eN$Q8.z 8A.]NTqz~=v5TG]+^INJ[^2EE }{Sz8@mQ|'62J:M54&|plsqOri-< +I˶30׆xŢ23vCU]V(bV xM&9X>}yWxwjjSؕGaAS>Sn@>鰱;Lf{s4M)hEZ ]y|7(x0yR- WexZ8 &K6ͭ*h+֔1`|>6:r9;3m"sǸ8E91b\-?ۉh ڝI7hK ry\sPD@1qzߨh~A!ՕZ22F !-oòl!Vʂ;E"Dޓ[<{mt/ۋiBX`I5  }MU: 8,@A^4t^skD.ӕ:SUr8UeȮjbV=}>O`t{ ".yDWj,-q;->4 .f1tB+I)%j{S&_Ns{ܴ8>_D?NMqWKIK"SbX}}@b@yץ ET4%ʴ+o1A#R'uuwkV-0LCr\tT&-x{(Fꥪ$Lb'86&xFMټtl~~~C E ՖkjtOA\kW09ڟn&Co>/HL·MEWm_ A ]5 &IKi?N\9Zͅǖuس™\DN*S#K߇U9^z~\saX頙%zOx:ځIp*yDQ-KQ/(mp㳠8_p)+C4]ZwԌ` уƓe7 N:͙@?̞i)L)UykJ9E]Vuv\#)+U YB=xn}%6)ˬ.78v6By~2gө`#ŔK8\} ULK0 #̓$J&10* Ę-蟨Jw<~N_ "H%-E5Zj,]\;eV-L<ߙ :Fw9:So"c]Crs;u\]v'n `b.&t!|$&>')]x ʈ, 6'N)JyR ZVyk|er@%&&婞2yK54i-ƿVA=fw]C97dy ө5w*pܐ@(C#-۶< Q88zz&<W.s#:m/q{H˙SN-(Jע+Kvmduf=zӘh+W:üpiw1D3A5=ǥkhT+;Dy2Z1S`<[R\BɭXZ9[ lE/6!gܣuҨ%R6˫̈́3)ZHyZiMEdڪdp&;. Iqx6; )G#*)a{a/W/P)hLI@j"F\t2^@>t3҉t=gR$h&v0W%9l^\c@(/R\İǐ Ii/ˠ2:}N\P4͈✖ ʍb]c{꣣tiiMLۖwWRHȳ(7rЁ$'쥼+6BBspupP ݙxꢭg?- d &B[YyI+sjPj&0R[֫D$JVlSvDkڵt Ne yk1V҂|] İ6>/- &@-B'ט3jASøѸu_S AfE#2N5E]Mw*i^ u( >dhQ`mѬ̔tުL]6/&|F9уdƯBnD}{[Sz[C7jۚn.$fW/3v&-=0103 ̠_2g,7Zxǥ3?c];P=+ꆳ#`UtaBLW#9ŭjke92Y_^ 16WA †,[)մ$L?6gnQ>-SQ_(.xmpۘϛQ-4 ~aqލ @=6='ܴ.Ts{9k7Zd2s|x{X?$HT9 E9)pkS_>,=2H"&X8WGWȢ>iVMKh%`/RfLb--̭k"0*Kb߆`ypepԍmYx'N=U3Sd^/F/ګfT \Rn91}\G@_:s! ҆1Ag"]r |j`52C!l[s?=rcrxq:rgoWH70ϲ ڰ Ծh_a70l >9O$tvߍt_ 01u #Bk)v=<:ia' rՊ9"DIyA*ӓr*c_-t UCBFQ%$HgJuCBo%^2(h´{3QE| IW~L%d%!)W6JH.T4=\ JGuXe}?_ TxaXM6=cqˠ@_˧ U,wKV#:<>]W-aS ‡Ů@!iJ?1vfsn법Id{V ?' u *D8AǷKf"fЌM9˒"QqHR"s b#\.dHC[U4Ipa@8IOqe!jlsՐy~Q8D BCJ]HNъ4Auc?̣ayx9n}qKRv3yKh9̿hE'ӧ=HIn˝a)ߓ'"Ѧ=Qu]y'qhA4My?!jmѹZr,[E;|kY$ܘZ[n]*(2?[A2 #b^==n&N@MgY28&RlLr_t`̷j8M^x-iSѬoCfAlb0t_qښ|5 n)@ ,,I?ؽWbZ-~:I+I)7_[܋9xfE}1̃H'!AZUU#6`P-ÑMjaFk/Yʹ!CkuQ Cp)h eR~]rGc:vXښVQfl_ P݋c?{{~&3w)~ %fpYhӾ> 20UZuܐX X6sN:'I _[*B1z 㼊28)pkƘ2d"v% >dOhP 6m>C- q\9!jD$ȺxNHnYrEwZl6RR$@>.ǐ3 NUKRwmE&q${sHdj%W?l1|PYӢJVIvk_<'-bcѺWdٍ4pB ;J>b/ISYwGKDž!0O =l7ZƁx: 6V8)7R*}npFN+`AaR]\E @8QUҗnUΜ!f6cX& M7BΚl)WHn8mH 24!%xQW)|>|"$\SU4,$rz=w#>[^9(eDӑ,DD('2v*1uSaNHk2F4ķqX%"@{(<֎YxϤwA胦VW?FI8[A,^!+fY*d׎g"QeC@a|,pA1i "ɒ}vZ`D rf@cBt㘶e6Z᧘sP0S )Y;j%Ƙu<&,ѧ2Fm.no~OM(VI$㤝G;E*~GAWr+q 4+fjdM-l{9Jz*l*ڐ]z_C THUb2&~oaAa5n_s?cK#k[Ҁ;7&o(C[β7S8`,D0FGg|60/푧jR";0i\>e2BO[[C7uy%5g'l&'\3[ GyQt /QXP`TH3WPPBn|rE"#L *\.]mF8qY<1œ9: CMj%ϨJ>D#S$QQFmcpYG:'8h-u-jlpꞛh fSI{g bIRLPGHM(UR8zp:},v#i}],5ȫ^#4wml40 kY@챣_ |+# `NMD 5I]35F ~+clAsw<%Qg<I4гR~؊U\R AŅN DjgHt2+6IDb̨UtDNp~4˃h(Hq`BFoh4bU^{Le7B ph|y:bMd ATMM%h- ]ZvQ=Q%;}J׆ {yLծ>!w(e*2@Y&4FF! 3cXo2,B!¹fmq <_us@w(\Ed)^+ -zZ 5VhbԠk*3] k4rm.LJ^ m@ | `_֙TU8oGgIyRQw9HCJFmvı'UVz/l%\z/Xp 5| l&Lc7/!B4*W±.5S$SCDZ`)b.=|ܘ cbMY Nx M(]=i@3}YD>m?KQ%:\1#M|Ez#֩$ |a'%`8 .3$LU" k̴1{߃:Ōh_M~_ e'RV-}zXd")a1%&Jf[&C~H:jOܼ|uhn=<ٲHM2qpkl /;f)$@"% c٢dc+aT~ɷSH.H&`֔J]ǮU,-;|ȘOgi +M%G5 ^hV ^Sd|,_Rߢꘆ5P~l`pnBpxul?٪ '?GhU!xj)Hdw\墛$97_E&(GA6:X#b6+O'ӀǺ@ BԺa ;<7[7uG쓥=b$xd1DzAٓZ/tkKI?SM ЌU`!J$vt PoÐYm7r-u g$b[u+N[wJ.^4VɻU‡aunNXuYuZq-%uyZ=4sQa.uv&f_ժ6";RRuyp$N5tlQ1|5zkpGLJvљF $9G&@&ͭT!);ڕb)Fm•^D(2xgy|6'e;˩>/ӢeySKb*sk,QrMTN_broK\Cc h>F`>Fsm3ByKwtGe3.t46{ C%r?+N_.~Fx' dioIMaؔ;ysT '^`zElN>IX3Qߡ?"~c;yO3aÍ|R,]23@{'DG3>K]5d̏V,USJ{ e "fC/jZ8xk8)!n u_ c:} M>P[IW.zI85rR AXf. ʔ뙱j7GD?bPx'~tI:xu۸NtG)wɗVm]sʬa0VfI@N$L=\ Ijq"Ӓ9Ska1?Cq`&ijSZ=%&˔;uiq9V2{'<"N \Bq2k o fS4qHA:qoWKS|%mN6Q+x|s$*ꪴU NJc:絜՛ @G!_Ney38/4ӖiDx(y6}!$/pO>T!E)=,`k'f"/ӐݓBAaZZ(qB%RTOzǭ&iI!8[dXB$ A 9Fp6o͹5"zTk_?>/IsDޡ_E 5!oDoa J/zXuBa 4J}4# fK;ƞrIz8w!RFjQ֧@qĞJ=HB bN-ytNboɖP K QtEtXaf ]<|P"K#¦>s Wsq&)Td*,29x.U(|F$ssKZΣD 4;pf:ڄMQ3;ɇ R"WHٴ^!?*rO z>:э?%PPU\Ⱦ3Q5& ӱw~ǘ%ɮSIk$T,Uyˍf\9DG'΄,(I՗ʿ5ZDBkB^8E+%n*Q)¬̐!%Xf%c%~.ӊmK>e+mR<)_>nS%<7aX;.`jk`w 'Ra" xrR7bsk+ Д*dv14gO ď1O"U Up~ IU#,,5 %>3 '؀3&.{ _6Mjc|V>-4Sw:0jIRV\5FF8]7ȉ\Yfeѐy$Com20)Tp>/+yp窖(xޤ4{t!h5 kdq׌jrT'tM&srZzYRwQ YIRST!рo~f[TRU{m)P(v)} {E m|%ǹ}I@,1B1n;wכMɏBUGȀ\@7nRnKLk|C(ME%ZP2PO[5^/w rI:O| ]"˅W~M;$q.qjy o-HP=j2gh@YǏ#f'\&DZW P$E⹌ Ok lEE Ck!Ğ(-t"i Eh8xwr_Sv|&>-8s'-!xrDkT?.uV{Q!\+~Hr҅O=a"4r֘[ OĢƭCPs~g{&P.8$ *C>S&L~x Z3*"e[ϒ$МfnhS.-wNP>ڃ^Z0˔uu6ɔX"3'8$ ae/-‮&~F烶 4xk!L˝ogĄu,Q3'j Z?t;nu/Tex'N{t'#_OpsrcM#$_% nFSԯ/,Vh$TddȚㅮwL1C̒CiK+<4O1C7iz6'ԖE] $mm!ˌFŮUzxhD \b8ãW购 u䁫;ȏHLos^SֈۀgW|ilC`T4+ Ocљ{vSc1 `h ZQƊ`2P4ߔdҪˊ n{0},@pY̻42 @Fljs^8g /djN":эkה_Y涟xa61+yKE:Z;^NRnk=8 UG#&i9#Kv.r{ MPF)d5J;fC0<ޖ#>}C% a3r'sR ݞTxx+xڽ BVj|?#(@NR?SIUR;ARDrhc_)|8 IH ܉Éu2@[$( h#V1[>bbT:%lhz.t7p*VcpPiciHm!8{U[ 'Q$ݢ-Cy W,ş mɵ}f{XJF'Fb(bު:c!ЦdFd"vՎZb_>q9/ (>kkE>wh$@1ZM邃rs(\xͨ2`JN_B/ "/8WHނ iF:OI2ԯ[^M {n3=,!z"1F}$En53.T^ T^JJ |[l%1a|[Zr9ɩg,PXaSp'wLu+t>L5CuqlA%×lE*әKbc(ihCG=Mrmm:cG\_"`BL*dzNκWD93)$5šMlu [xyLhH꓊La7<4D*hu1_ZG+QR\)%#3Jnhiia6I!_z<S1Q$W=m8\) %#u z`:/Z!1E1QvPPLCREcRvo6d^񏩗bBrbP;NE%ܻX(5瘾6 N/GnJiyw0K(+Fb$F| npA tTy> !u7nט뻩E4Pb}2;BX%P[a(#?tH;@(8^O%6ډv|p1Vubň`LRe/xxvA(*>Qɶx J#lau]X^dɋ?~hLĩju'5M{~Nǹ[aM>o1s⅜@1%(b n!jh$;::{ϖ՛ x$+DZu"nR0W&# / <]Q<8GyV^ ?hŊcz\d0@q=D^ЯKNe+n(GA֖Vڱ(3Wi2BfeuhhwQN+pty2 a.h)MnR ffr=Uj( EڀTQ9vP qTLsLz:d_X657S2fuK p&희[t+5~ As6N@^ s;)#N`2@vM81h{]@DrxT[(%z4QC_u[>k gbp^KDcús^ -MjeF-H)oSbij9;krۦ-rOr EE1FJ|>*@|?G~)ZjlW{v Xp#]8?=y4?#nT6tsPIm ^&WXruJ:66@Q~Ű ee@=QX/ٳ nR{NӼ`-ǃfZN%ݽOxAwe}oޠS&I$Q']$7^ҥcBU4њT {JE /pJNC.J0E#fJ+3 >JTzH6Z8p>}+# 35wc`+/H55.QЈzlctxQNl_ƻ'B"~EcI[(tDͫrr99!ё칩^r]K?P 3 wHWɚmQmc7RϝVʂ|6Mo"xYeR6R04` xb1D %J犬^yB6{8WdK o lnwS(NuĎCr:螜E{(0iϑ6S֦312ӟE\R%M/Z]OHN{_W6{.mHo(y/#+_zSBI 9d4ϡb]JhA%p[5-eF-I=bScd WK¹pL( d!^SM*.?Jήv/'"P?HEM΢_v$ 5q͒~^"| }űs 8feX 3PZ*hpk?>pٱGT}4`wM|C786?9˨/T|SEWճ )s_ӿsM@$ 7 bGL^^b7y՚M0n6 mʟQYO5y \$rs=܊ƯO|/ R.!'Id8;K~湈W)b 7k_>Hٷ;!ϓN+xǡ0n^V9W;k.!"0ȩgXcqqcN&S fmotH<:eƪBi &u_wD7!{Pwq%`#sP^nUw > CZK_^N [uRUfޕ !94h'xP(T}"V[fƳ5~ a۹69rWfJZi y9x4<sov9zz59`v2 ]qA§J!*>glnB]ܹ΅شh2|.U?v$֮GݎE(HYaBA?;T:T=[yolaq#&C_ z&QBj-3KH.CϽY{qo[9kbc΅ pp@54Qz&ݑv * EsOLV5WPl P(&r L))jX<,t+ح{xѐxR 0^-7b"HBc2Y+ Vg zk^huX uuS3VgI[i?I.q)9hmx~L Spƶ{E8 U[F!}%u%Ҩ1Xi&p;.6,!9s9]H6S jՉ#0H%!.TgBr]+]rl4s}bhʻo=^&φlf# ,t).RVx +7zSo6f2 BtfU RporYd9 n=Q{ϥwҫ3xr{DV~-`/ }S_$`:3a_ gF 6߁XU BAseC MɤZƒijV5wܭ;ŷ`.wdsY6"xr]Z6?Y .z6P"I љ`YYجrf|l=ɕ`Z*{k/Zj)0u]`7waHݦpxg3byW`H^<)^Z N.gͬ]gǥAZ܂.S$|yok貅Mx|S$T8Q ]Qv?W#j撪{GO`0tۘrt1t ><4^܈ʠz$\%;F`Mj!w>N}SWS%@c8} 0d^ 2BD+Gp,nѴp|TO%:v[#+l{B+(aףm Y9D+y&:Sienn χ? zsM-rhI.Y:نꘛ~ `p^,=BFkiޒ^.DWܕr EK`Deg:VwNBZ !-M:0NP째r5izm2"X$2` ^mfué=7BQFA'mu2Bo*j;I]unR?.d0xgDM.wOq)]޳)G`ONߵ/_T2ֶˉ,,oл>iCi-$ </oy『%IjJ(xYZkB<#ƢlhḷI! [vb,SV${p9QfI #anI"4 dD '_яyR7ki,}DjzT`ڈYrdqw D2Nc Sk7GH6x2͏5=Dѵh:csEOjo:.[]چxKpgX\tuS2e^/D}_P{%D-68<0RODg«|y vU2)ok⢜c߇53b.|U͔Zs wNZςX4J[D'uvf%6|3.qWsTV5J Wg1'Oʯ_'F$AWY 'b$۞v H?sV.yYdgwQa$>n7e2 cjie}f]SuRYVRu6|/X5_,blcnt\Ʈ|/ݲ8Q4pI)UaƧ5!]*tWVdZIш=8X{\ {-X+emP8 &(U1>Yۛf x`:MwT[2Ml P4hdܛ'C *xPR{!" A  @Դoq@E qDa"D[w8Iz#8mILK1=V^Ly__M%V%s"2NxNB"Xvx9ל;}J%1>ޙQڐJv Ej"iǥnW$!ڶQ /ƦNkF =Cã*bFC6QmM#)sn%6(-FQB0DR(e3yW4z b{;D{a>BƓ! |®dJ`vzZ{3?fyewg97ZiM%w#-cj ̯!p[!g!䊠I47/#[M\y9cY r *#dO\`}o+\gߊWPb播yIlK| Bsv-4t˚j5ǽyA:=dmF~Ȇ q(z栥אSґ(k hLX[BGD^?g1{C>".wIWKл6N҇S47.:KRӸoXP ^!{4:9gSleoOPaIU&n$LHaU5t=g<-D̋/j&.<9."z UxsDp. W=H wV^2UxܫCq/x0;N,ĉP,^֯J@_#m1Dm@2p]p%+]l$+$ߵ8:Z+9QIT$xv +Ξx\=鰚P[L6s8tdb0AX]Q+ףx=XQ?6O``/! {imWNYCJo}"'4ާ^k;Y&G$<*~|r- Ȅ1D詯/ *dP?TUO"IR>Q̃#,yGhh^8f%@$9>沷d0*< 7kfb :}حtXM\_6p/m=ON% IpU儫ϕHK ]F K)G_d4Ya'/'D Л]Sw6W-~:^9C&/jG?dU4ok;Ag7[!$pB.Zj9ݝTϤyOn%FM/˔:?0`\A}tONYS"uRl'.)뎷Q\Qʛ;f@x\BV"UhA`~;*aܺ670ˮ9 !0UչafK e9?~bADZj3nQ+j;C{:d`wQ 2\L,':FmIm=e|,Eh!D`+CQ66Ao /~lB C;ˌng>/uPڅ-uJ@ b jϵ-߯G͢wcrV*_RtZu)"jP\ͣ5Sf%פFP Ia#nS9cO*$pvB6 6V: E#QZ:PͰ(=j6vQBHxi"ś=nQ4bH;WɡGm 7>iJIށd}&Ŋwdk.H׌^xe:2f7Uc&L?^_QW`HG*ܴdH,ֱR|J[R{0va:Γ̔po"~| ChyodPUJJUnB(}KHdE-%@Კ£_'3`p_= $dHxc1dj9F b. XGO8A rt N0a~]]02*bY0Բ!EqT(x$тcT*-4*nC5|!:w_d66R\OgwLB.f0ΝWGr|9^ԺcՀRdi3 \>phk |4 w,ϒB)o麝iT<Y){QU r~'tvT0i~ӣDKŗ}/rKuNC;Ge/DҾu+},tdlV6Ŋ gN!rA\ROàSZkID:\1~v _Q6?? ۇQaW)irRA컷5(|cr9Ҭ+Ǒ[[dg NciLOLAP9 yj"A팃[",Mn}'CL2'Qe^Me;:&6IQC!KjN(뗅b8C,d]r=8j6VrZ^`:5% SjPxzڽvJaͺgpcVm[tQ!q_ )0F'(N=R"Н}M A{uwR=+Gb30s QL1ci6D{[Gtj2]^IZX=3YQ4q<awi3KmY3 C|,_ dp@R*oSMLbZ #3^U'Xg\es)H̖- iSـaxs6"[ XSwY:jJyΖmns=8Z}0Da2j[m59r\x.T, =E1ڈ0 ]<=v P\:[ՠ| :EkU&B%s3E o5`mx؟ge*Rje]ZdSy e;Eyp 'Szfbkx<2 +..q Pķ}D&q ^%UR#hf!4ABBd}ɨY媌k CdU{hd-Hq$.JK nthrJv4lr`]=I:yի8F2IJ"*8MrC; -_Lf+&ӛPwߧ4UziTf=LTLO!U a^#rQ82;3?=2qҭay 1Cм1w+'VL ݵ,}`:q.TT8-}8|\i:wM]J&Z(*Q~|.t:ӷU;,OL d. 8??͌]FPz FNN殚@02cٺ@}i< N 1\;&0zj0"~̀F\M@N  !f[2u2 T}Cdz}T`LrPJ]2VV[2*:݋%hp\Ze#О\Ċ E.{S!PїTR jY!8DL*o#KX<>|ui!z5$9#JxWL%G)5XޒQf2Eq@+@ltfΌ O6({$Y.xx] Y~TKo5DtRzwfpa7}Ww|5νzS zwdqAY SUhjy/TKF^ \,i60MOZrׇĎZLlKbUlQdHgpUӍA3#懺Qk&:d|*YAݗVh Hˤ%a[[/)~9sٛl5X=O>uwګ-ӏX%+c0>ack@NPRIr My-}ϞUǘTDP6-b%׻r`)>Й6j|ogd(3LMP +RHﺹOS#ohFfn5q~Aʐ/8 |kO&..(k?:_^@BԪZu]\ EJxOP6^Tտ8/cmnn fiwd BIBJ!aBކi6L"`AӋ^|bBU=_㴬z}b^Ay԰E<*$x^{sT0SUrA4Eػ>h9[l{"X) _!UgF{ .ZP]↏B1뭈! F7O4Lƾ9֌cpTW]OuA#< wm`Ē?1xfQ_#@i|Ft /#1KFVrJR ^}\4&^!M{=TY5s{/z|5RxN0• f>Ҟ(־tjwo -/juK}w&OOMa|D%3*=0ICS_lRr(;SWN<4U!.^khOE+@ݕ#0#djg\ˠժOk9Ѡ+;GN0&^aO;yl]=L ^g6| H[qZYJ8uu·{S ꜽS:кQZzo2T L!wlDͥ2n*|x6U0j Xy(m8iO`^w*zGm ~`{M\k#,/LՂp)ڙMNp5GtƘ-ޕ1Mb?H%3I*9ç&IUeK z5|~|r/) D| #:A֕›!P[Nv-R2wϯ:M4 `KyfwgE_àS?׻]Vi<×z+bD_arJRO8fMvx L24:^tu\cx %GW{x} FTiKwj"<[v{{Rm1m!cz?fGT3u%7BRNudnjoYoZo0f0}/)͕>+s%{ӿ j;VeGyK~!1WP3֢!_d.i2|Yk(HB6U2?VEfKDC-׶RڢsR0alGۏhE!WبVJNS7#mWŲ T_6i.Ľ0r$ i[#{aLڎ$ rUFlYJWA'r%00" #ZQUص1'﹁wh}x̙{V^a˭/V|أum4nw-GքFGilԝ{&t(ANnufT#Эþq_VvU%R¤9[5LI+ w5wIV|ieܳvtdahBZ礘<:ڊ#wB&tҤpAy֫^< ]՝QR!bL=_\?UPPt IJd2cGZam7sQV ^ )/LA"0L_<5U-7aC[ԭNed@+>!Vz9 #Z16#CO\|*0~W`ܛWeN+;Py;Ā&1łR 2XtH~L/!~#H-ra[w&%d7wnjΐU Ԩ= U1:Ӻ! (hKe!s+zf*2`71^|h ⾮|7ʖaαXz+b'6loۯXՒ4,P2ρL=^(uw퐸!cKQGvtDSX=nP` 4n@55Ϻ~AF}^r6j)ḳXh\  5Ӆt{Yf 8/ɢ<1F; TJdWsG(,[^$=DqTʉBfD낼| }fxI۠kIMX[bW^F'{mDZ&6?SG0fRz|TNQW鍁WY5x dM GtWѧ% /'A׏Y2XiͰ,[vy3_o'v:gLFS>bOA"Y-b`!zf~vE(XA3jDяݵW71-wzк !!oK9 n ~P޸20%UNwJW׆i J-y)PO^EqQ!dn竍qxyŃç"Γv/9%}_mw#T) j}Uˮqw՞YFq`׌b1΋iO#8d&O,о\) pK 8TRrSߝmjaxx%$d|˒I\&=R!jΚW TFm\zw[j 3_|H lnmw,N+acW1xL.[Uft/%! ֣In:+78noY4'_;1bMeHY&y$)UkΊ`E\8p']?cr?oήaʋә\nX+f,rz?<#/_f+s>{I4WTױ岡*Pc'%iz!&^OS!\(jH[4*$ v'Svձty\W(dRn{7=OY'{̆um_v-jQtRR= %vC;}bBVot۶Qg"Rx6ⱀ&vca]Qr8 r-oϕ+7{H-3Tr-QLڂDFGbn.Y iZ\)!kDŽ ㌤Ԭm n RAVJ00 -̀"f0wݧt۶'5"Sdo4䵤`%bI1\],.kcdhd(}b21ZجhM^Yci}I:ۚwasRj d}ۏc(s[F51 3ӓ%jH2@/s\<vBC)ϞG@lgu>Y r/Mv'W"h:D(=vlQ7=hE ^T&*cX [c<^bm^Zv{tpIrk2Z[IBL0i҇>:i„DV#/9.$.80(? \&WUh]/:_Q '}4$Rh{ii\!T 7zQ&H]%EFsH':5@ + Ƶ'0`ۮ-o .C;s5Q̘iߵҌȣd EzAHw0F2G(:$( |+f.Ys:qܛf$8YvKiu4wG be$+Mt6P-W_p Ůs-I7q됲ylO;=v-kExZţ.r o#@qvUFp a\r_ވk9p plP'~OQ\-%Wone-q ]y0RUbm)gt݄T62,"|Eڛ&9T Đn.z۶< v+(~:N=3vwV"m5-O3C;<z;'\?1(!H-7=\5Tqst}@ᩚ[GA;CްZL+ߕWV:gEa= Ob v%o*nꊄP/:'Qk|׹“HpDڻ) TZءPW 3S $7&a v!Ґ Xm~ &$ja T4M=b%tk9NETYD]sO\pp%aO y]Z}qet1V}B_wu.>c_ z-S'4dr ~ U9z[q [/Y뾀kS&:ȇ^` IďU`VqֆtnU"NUc]0lMI#W[;TNJ1VAwse:t\eP eTn?2:WXJޢ=՗r ъ^( w7bjCs ;'m`ЇX2$}y$#Pm5%h",LUU>FڃX~DqxciAR@ 07_ր4IRþ74z7U C"cǙq3jESJZ>aHOXhdnګ\k>vSWHi!ߎKG+0wǫ&DDo*:rR]Vr$Χp[#L9Pn.'Zle${Fz^;QQ[D'w5Q1!X{GQ +9_{"TcR潡SZ^Ƀ)^!OU NR.Iǫͥ3[{QT1"> o0ѽ4\#Z)lt^l~ '`A*Kë"9ew$kS)D ')t3xyckJѦpIJn7a?;7)⧜OLXjd8*X\[.A gCU6٩HE$E)V*sq.r'2I~FP.Ȗ⏂; ~% {e& ԇ -|0HV9 ,|ó-[,+"*PH¢U(-ɈClD !ELY<IeX1>|5#-i$J>uU;gG G"~#ӻ5+xs # "`uMFP<#'`傅uMӑP7" orcK XϐKouW ~65olEP'IL~7PT. -fX;Q;E"|iQ_L?h6χ$)z]qQ {Ye94rF¶BE7W@FvHb,puN,iTroA[o 4KjwWr<m\~FRާkp؛b0'@@5c*~ %8ƶMR0LޟY!b[ 5Qg~}/xe|~tK 63/IW~5z+axX"f1&'|Y_>nj]BJD;NYhI)w#Z67q6CzV;9}&igB +Pj}IWiHk{/F)>TW_;K~fE*NrS|cL=|cn- jxOK,p.5WWDia$#0Z9:6*V{B)H[E@ `l$3Dq>>b x%к88FrCWTU6?1+&=TBɏa5G a-VH9# xi ҠYX6Kn-C-Av0Otd6 L$ߘyl35.Ј+@Tƛ!fhzLa[ =L[ܛBƝIYn&jbÈ){H7p 6t#?64{7Lݞ" SS6ܔ\9kt{&̗- ~yqgFCfw9Ru|ai3WEź>~~jmVn kHOEACv]՜4CMKh:|χ̇Yf')a'gv":đռlʵ&kp"d77O91]z%iK EY;LAbB/=k>iNJNV7QgH[-'N`|Q!ԟ\A]kIľs1\=[ԩc$G9ێ0=R4عfT^ҦA@>ɫhlt8.LaEd0|3\' kWZ\=&9:xVbK$u#; 6+6rƵ&EuuZw"4&Z(8ynn:!eݿ{q!6oB9|VVВ u ̡XwI.L H,7/ťrRIގ2.F]Z1cjIX47Llt16# i ~>4d"SzhJ+I iOB巵$ U':4)վD|V{_pai9KPN;S?HvMU'n_2jގstC, zx R1ZUK'*/C,WZd "ea連=mf2K@E݊)Wp#[ZkeEj'$H*!"ʋ;7Z&)#4JP|ko ajJ4Hr&+ҡ?3ݐA'ҲN{FEC۵ =Rg?u_twEJ$9üꔫhjK+-)d;kMJq?HURc:ch)m56?{hq(iOr *qǐ)o||M`BIU|>!b"IAx.AVR&&\64n:ҤXVP/)e4륒y<_M=Ur߱bhӐn~;hz߸}phY&lH&)K\sS>R{NZDzV@xُ~ Cэءg6Ds *IBF@u_^g%1ИrLA B0u_CHd+.n6֊B#*E 3-lgb#Fnk 6Usp#cĮjsƄSԦju-f&t󯈚 Lшvv`ؾM\RN𔫞h5|]Q}UMWHF &mAj f $xH䂅8{i3v_YUxn㰉Dh9,oQ-aN*~PͦV:Z43V FGRX>SCIyHJ6 Cѧ Fƽ L= ln9D ]*O' rǔ} ^Y9d\WV KG BQMِJa>~z2UZdl*Gb (XwGe.YO2\f:I4P)oUl)dYO'KJofoj80,Oz$PoWneش_,It] dj(RǿdU[^+{;"+s @&G9xf}u>(NDPN􎰺y3.-~ l }S^L久;8գGTpEoʉxKN"gdWcYpd[/zo0F՚ezGGfK?Eg>;r2_oy hۅlY6#ۉn$j49j7.)a  ړ@2;*]{aRfaی+1WyBͥHFOV;kZ(,y&8g-ҁMVk3m}v;/6ekHءwCHUhk\:q@Pm͋XSEZ y![^mf233]gbBrsbsp`fAe!*bG6>koEJ1RW:M{tO"*w Ytq_6L7lZ[IWO!}^4 5KH!&WBE& `{^]f<05PPEȭnOUw&6-454I\g>t֒' ;oF<~?2QqX |PʡQ%79,3{yn8!anId].pe6dذ0[! ߭=͠AY;zR2t"3pJ+CTBYI*@_u-dxk# 4^`f~CfC,$vOb:'mT m7WDv|rL\Η;:t  V\'53"[4pW516n4alsXH;vH[t~6`PR%=x: |D5d-Xv ␔`&3@]k@ H1Uy'5uig(Ct(0|' uۢar^l^hS0 ξJMVڅ\,R2\|Z8[XIoAHfFEFx-2_?X =y9& }k445DOpY?9|!aع=$ 5A^Rwq:N; e,nRecO1SWGnЬqlC|_fGZg YaM[^%+z{ת\CWgۣkYp5É3KX+S{n-$+9rH @I-Y`O U}|Rr=,~NbDW)q! +;<VI,ꮔ%/5Sz~@Օ@eR1̄2چxk=MR1UРӻ_F0C i«ðY^7}e?u s䘾-G AK^:E;e0W˱!r︷Ͽl,bTKo:!ϝi3u?#XDNN$h=S:q}Lw=9ۆ`65VaJP7{3i߃6X7.>L:rXMPRGLΥmᠲw/`7ޥZsd~my7]ܣb%WKPb&͵!.j$nMJ+Z~[âW5>Yu21MvÏȆDJ~N|ak9l6"D eT(]oMTe(򜧬_]ӈnh1`/pFKG( W*eE-e)\^yDp{/Ϙ2yq+yH:gyJa3:yG+U)SP!̬3k)C0̦aPgʾdRHmwa!ߓ2d7 4%E|i]R'&LJηwx2bs`=|>6ZqCuM=2Q!:z C*փi8.Zcp=B< =u#iOY0_ ka"$'\@`o*'Hh7"_sh~ϩK%BЯUexu[AOěDi>0s,Ή3p"ܟ]k &iuX/* 8dH6\@m|"9Vk|8"ն8 bVyOCVp`( pLo,zڰ}]Q ?EE(.:R}Q@Wձr'9@$?hI~p]"UIt#ȉ1{E2mXzp0:,'ZvncL4PŸ+dže*=trW"؃y l*LTu=9`%"^P6[TKфzOea%o)>egۄd[OrIB]zbGb}J!](n7eyNdGWWutv5GFkʥPk? H63VNL(&IYxP .$H*Y l<;3| Ug0.IP`尖 M2ٕYR7(X QF9yk2,tbCɗ{=h [;*wpw8I,0_tn3]"v9X<Zfw,Ke&mzzv  ;wΘhrBivZz٧5Z ; y_03 v^KWmF0}*ַ,B#VOBZy)M LKʸϳLfXTH䧕읇a`ʹ{wtȥ~$:iU yt NRMhodDkk0T(.8}) I\nݠ+e3LN(o qZeUv)]?o6yH=֞ERj/(7F?dGMA a~0{۰%;\UGT`so/=!\Ms2ހMϛ$;|l6닱RyhvbRJQ3ba@0Uz,)MyhȦRi]WT#U8S 5OD[w)z _<-D0e,آ.abIoZla13eFs4u:`ܨD{ 6W)m'VԤi@H zo]5α'Pfz ,.r6ҐQVӿH1ftR;¨=$\Rfl{ЉvRPe ;$u,WV@:6=d !7ԒdB1s$Uc`p:0$&6o2LڵPR-S qk$D.a(#\14[4% ת7=FҦcD3ot_g<"{-nPd78WE5dYXR^O*+..*kRO7e$m/s(s#T0ƧϝvAKg5ߧ/(YqPgv^OW,=`O۞qZ3wa`jEtA91r5:N߃(Hzt5aSAIJ&ef>Ryev͕AsbD;eqQy} tK?z2|ɛ$X-mIO\Z?;6&r'~Du!+3l i`Va޹^:G[q]";cqxI]Y-(Yc'F 0u_#)XlNV4tԿxI\co% X4QZ zD:kr5-`9PHb''5@a,^x/χܮKRSI2Kui_gl -O*LF G(OZ{N9$m&_ HF1Y Oxrcdp<^&j>N:BIz`gD ɾû5$*o1j BbYޜDჃՔo@;GL)QXbziRwgal lOr'X@%qsbNmLMh  gOWGcvo89s`'.;Psp sf ^ɉ9@#oJ|>”E 7qFLURs4Uqmdbr*O+)S6KAW.a[&6?xаriss0}d5Sjs_ yQ`$[UqR3YX=ް"`<.Ak9Ibrup Bގ`8VcfZV_+AOi$!p?bw.xalu}7Hdd.rf .RV'e2$˹Рf% P\=Լ\1`6ID ^A,fՒ,RhơRKnߏl'C %D1%1;`-yn䣟(|W4Bm [_![Ĝ[hJy Ob Ky+?U#}VJ Ke( -iAX)Qs1⇺VBRޯ8lW[o[k EKdSyzHVFZ*ݧ,.D0ȖnpjGȺy"XOߺ[}qIJǠp)}:2]NV EOo K#pEr^6E][ȴ kh"VzJYk3Z\Dn1iG#\k/4] Ȳm65)RQ̀{)D!}֤xUN8\ R[ ظt|;1<%_(%w_<|eI]ѐ4ϼU ^ n+=6lߞNJZ BK56gY5/L>eZbHw$j{c>id~UTt&6DP'%9IL@*s4P,) oJ\`mZ64x`[BR`t{F=׉d(ܹ:ndt'.Zdɲ mg$7X#&! E̐S4-R$)iO|$U_=ME&?\;эƼآP8f৩(Ny!K`Rt$N<4&R5t~ހo _* ֢ԑ_-YedJw-$ztO$pdx|'F7`+22#*^6 [y{j,Mو~"x[dTgc-UmxY'{ v CݠB!Q0lq˅7z-da)Pet%CZj;u-LEǥ_w{0\`2fv lەIXIRwrع krN7E]1%IOooN5߅+/8qfAӗ*6 xZ5a3~N9`M=DF&")| .|D1u7=PCB7Ĭbvln%]ʻOϐ(.yU[)ZF1ĕ.-|5 EyM*ږtCɮV,zz AyߜLȘ"CG~Ƥ;19υnBHm֓ZR<:uG1,W[h|6dkJA1Z*Ytf+z}~`[2_d6~?BJTY|8Qެ|&JKݨe-˗ANTw3!hN}~ Z>v\Ik ^aB)7=q~"O?HhyTE' 5Y@վEuW3 I$*u x4j<@] yiQL5EӏjmD1c4Wh{b,q/ Hĩ"H9>:SW&3OEZчĞk;^%zD$?2h9:`"cJ;YClз2uH\IXw>x{u+>5:aO7)YeX3iە';ހfɣ ߠ砾Bx}а>?@Saٙ0복3q"#9! $(  ALdBfvW SR~fd#ˊc*ޠ[BJr[}NKW@h=mZkɺL\h2ɋ,~^2xRNO;vA|wl#]sFy4$oL P-ՕBsPJ=5TssNIfW tap\BG1'2=#َb+%G"DͺJ3U*謕-넒Q \6)Ji.2%53NH]f=t5nEǟ %?ǟ8TRH _9OuC`&2WWԘg"ws6 Ŀ&ޗTjVH^O鄑 G=mT8򰦏{ /G]n8x qeT̲;+95~ {{:UvtrۆE 7[נ*ji^=T MBU»;7Y XhϣߡX3f XKlkM;e<25Tpw#~* Yw4Me"4{Ӵ+0qʇ1*<,@syuԉܠf:|5K3+u2ߖnR|DžX,_J;kQVZL<KX+rt M.bYw{Cckך!Jм8M_OW %. .:4P3hU(8A>\ W| Zrˎ|-M!ɱhhg.C*xBּ <ltr׊Q;Nzw7f@1"4VbF IZG,~oeMNb fXsfӎ_:ćZ=&~9%ud-iDr!,>x 95y_PޏոUrW~u Џfn~e o@&aL쨜8!v'k#hZ*oyjX% XxmeҳMd\(/"mj+gsv>y\2X9#=65AAy֜AbV{hq .=D-kjO\0e %vkArQ =%Q S]U=lTx%b=brՈ I7 ?(pEWG%h;4:%V$ 30lhW+$ϧr|Y/{}ԟu fИPl<Ѕx{IJ?xOXIlZgz \CTMGֲ?{Xa6(gsɛtJbnG`KHVF}!VDjǫj{N:5u="(De9te1"6 +Wm _`Yc͈\C'|T.yJ ykJ\$߽k~Xx fU7ek٠郪[& kJVh DuMOcGjS'!h&xD;c|%.4/ظyJFj,1Km6^ *5Utf~llB .Hw׳>Țܽiۗٚnw~I}Z%gHWp%aeo@( {cG'i ?0qb,`Ʊ$T(?lM ds^UY74VT9P~jhA6p EZoмcqlUմˊͽ_m @6DoDegDWfh'Z|zQQr)Ci塎6eM/FdQB3 4.$!8 /͎| Fw4܏:/T)*%*zƓ= ͸q Kv0Q_ BQRh=jlf )-{Y0X|ny'Igɑ@!w%<4r-hEcQ}-H09(-[59Vd"] g M\ g׽-$mDvG|V mn\U YG6^Wz ΚP]&u+![G6BRӛB+ư?Yqӷ̡AeU{X_{p6!kj;C|\1`$_֒jll?8kVX24~D|W×N~vmƒm}:ԕ2 HXw86q%4M0tCljQ&`2TEgO`[7Dᯂ~Dcw-QnYF9u&-aԡi@eMkz>i `%϶qU!Tk<9׋" "Mȼvqt| UjL7NcXv?Ƙ 휖 OHx"8@A**B۬|矝\*bi]0ydY R;]Tg;iPmÈ0/hm*?[>ow.nD/N%i, 5g 3is4˶3e]g,+nǡp>q"YSD}S{5\S3'o\g̨?:T(6[>AB)kcDg f4'إ) zpiх 2dsܱ#;Hΰxh5(8l$%?Ku"%o, r&1)gk觧u "׈Q W uN>vHY WK:vOQ.>ʄj9H$j#v{v[ .{E5sP4lpʫ 1~~$A]Ox3)1kgDg>) JL3 J"uCZ,‘@GK*50Y(=\$h%oKW$aN'U˔a\A'}Þy$^bBR)Uz9䛵u_mu4H` &LҞ߭OKYmelB#S:Y*{Kz) dJkTB ށE} *_w[H lCk:tZwhA!CT˴^\aB?=FCcN1@d,am &V no/_GOoN@p7y'dW)sfj)` *Xȣ5);_i" +2fgů@\VSZ\EO*- TtJnjJ0%߆zVo НC0GnR4bO0M('6zX~Dܥt/bpZPnmx'wqa[Ћ+}P sS\7m%uѱ1~T` &(+NQ#UDzq;<\=6|(5eE@#jF0{ {hb[*ehS?Ěeȸ:p/70fUic%m(%pYurLtUJqXyP5G3gFxcی]-\gg4PC@HL؟&3O;`SZaaqDߒm~U B9Ssc^=uF֒X+sҋL(Bs Ozr[jJYA.H~[/ˬ{(+Z9M5 eQphrXDQ䔲l P:dZ͛B?)RQh{\,$tOC؍6>U/mq+c:BOI2]^xkjOT>\gbx҈r@օᔎK`#DkXj(Axic8p0`K"bQ׆GVe@ U$Mn&Vj$z?S_Ғ_K3ӽ* „oW&#X{ؠWz&4J7%7l9pQ,9z  e8nBfCЂM'J.U6^ܞN Nֶ/g~"f7UBL;Nv~ (G;uii?"brX(XXBG耎Ƣul椧>I!\k~B^>{EJ:բ'+?OC؇vF9|Tbub$9"$lWv"DUj8@jä$S@`!ِRUZ3iY6yۢ0x%BL185.i8zKP}+owzgڎ27m 9;?<~/nc!,1Zӧ༼uPT n Dl{~ei"&W99X_i.谔H0:њY9s__)u۠ j0Z; P9VRy![Vx]eYD9]1j NfCJ|28OlDSAݕ[* 8ϤUI<St{5s'Uzf`SX'pA 0].1v*m ĿyMJr\)ZF6:@5^ٵݴʝ}^hPy Goa):/i~LfvC46: vR8P=-s֡ȟq`$iڷ F;+2c;Ed7P5f;!"ɽZLJj< ة%5JhX !IkqQc.va*;~» b{kcg vK?@>]Q+7F~تbs5AM&b@Zl(cuUm0W(AşN#8e$60XK qG{eS3JfeP(J_6-@H[Nw2IC?_["bs6풒c (?j8sK=hQiZܥ rej7EzC*qp nB|~YmwEeFj`ne{9uxRDa(KJ4AUYV `Uw_pq=gLk!\E] _# eR|9NS";Tr+v# Yz,4<} -v&%%"3lBh\QQz&Ynbx_w2臀iuJr/Q)LI 1G)jw+:]yD=Ż[m$(+؟C"ؚ|DMSO! pOM(IdA-w fywJ#P:7҅9|gμA˳)aStκ>)K5%͝%]wF:(kNSe>Zщ4?GyJTšt_f*w?cVފq 2p:PJJXEfE+[*q79Q0XQ4ܳG}MZs7^ *}NK^FiN |c}uֱ`7Yzc:G,LiyY ?oR`u稨{yKB󏭥WgvjI˫+uYb郒/>7G@(% "X a}-3͵x Ȁ3jRU{5~4W<5 hl=Srk@0f=)P1>:ox"#8j{)3Ppk}JՆy&_Voߚyw c0}hJPQ}ɮYNK!)Z卽?+ `>ZΩ=*_DDvZ[yV<ü RfQ '8#Dia7scN' @:&G`rFtjDfK:qpwq&1k!ѝ@? 9S@LLzD(UP̦擦aԄNTxm٪gXW/tT}*[HF΂$lΌ~̋\ ۃsIOxwB{Q k%w8mpT]jt)4$Oq=h1LvsMsPyy!DI^m|9D2'oRg? 2rgS:eK=%  |-cSx#YQDU-|#f,'gV J/1z FgY,CWg Orc;Λ.w /}Tmfn7OfZ 0-dyszPۙ[6>,Fh2/f9d^ʄlf mR?׀e["s5 65_q QBB$P$U7UC4=Zru(YdHfb#ƬdcKFNؤzX5Ye3sM;=Ed/JL/Ķو7\ډ(sŜnjZd@B(bx{o ӵz*.'Zetx>#{wPXغma*k7v{LYGGAEe4ƥb Edƙ3mRUsXCap,UؠƘEv$j^Pmۿpze:U>tJ%n}tԖÇdkc% kA>#D\qQ%KfBU4\[Ȣyd_s 9M$KF!=K`Xuв- qKhs(Zly}x$6$DZ&.ƈ% WK i7ۃ\/4}5_XL|*6*y!xؿdϖKl C'd0zyߘ&*:$#&nCy)S3SN@|V'ʁ5o{{6eoڈZVFyT<.jaxWK‚!y; ~"g8_O513Wby'#ǁvᢡ|R,ur&;Ǟ҂K7V{F oPNy3tKZ DjֺÁPQ96ʎP-;a7L٩|7q0&"OTeeko ,\9y89'寍&j%=%ۚZr?Hװ=v (Eym}zDYhsw;VPt!F%x*j1 1s6߽<\fl{uؽk|iJ` CF\$2?H͌^1ٚ|3d};8fIuX$X;^ͥWNi!ςI 8[|1Q6Vir^auuֺ~dVfE*8˷,]YbW].xAsFxv:$[ pU*b9%ľL +^p`湜^&v3( -(ĿO~3ym6JԎQ}~}:SfĊ`MWYe?obc/&(P\#j ױCڂ]?sd]+y"!_RdFw'3b1n.ꌣҳRCt\aI#;jxθ- ݰ㉉`6y ̽o k?GMv!UW_⃃ 'm`V8,4 |(S ~KfͰ"ff>RQ} j:\ƔT鍉S \\9X"޾J(4LבmGT/'UdBO8Ƨ?6Nmv(WI,>`nG`]p4Q)fq'|yK<j: `U]T렑Y jx[%xQm~0=$O\ꎬp9=/{,p? lN^oѮndXX$$̍)kIxN`0ۧ8 ^fA.zQ&N 2P6 dUm@S:)/.FÍ(H!q{=8B5.XrLs" 55G,~ꋸy4N,Es}3bݵӉ~U!wyB29||=7Q9-m`Bq][m+wŰ[*wslr:ap<00~y}@ Hɏ=T('`_x UGH.A;mˇem tX7zRzGMy @oe9#@=Jt xZ{uC:6!?*h;L)αBCXhŒh<L]7m- 5uI\4t_ASŜ6(}*kMI ^XsgxrI1RhRjtKOټFاq&0nRE09Xuxl*"2)&Ϯog+Se-7VpmEijIEԔ1ɦJ[ ߹{cYlCUWd؍<'qwC*N ~ClWY޼e/A*naMWHq%{2M ^BL'taxtl}ޡ$8yI [|`iav #ی,Er]#W7U bU nwtLL(oI)3ъ>&'joh."r:L9IڟjeeQ1)||JbeF2IS Oag ~a3uw$W# %XԵ;$38y7}EFD_,B=u%: P埽٠( <QbhFݑ.I+Lm9 Zمs(nTrpB`8znV[erW MO0rVʼLH0Vy+J6}ͼaNX(Z$oSTǫ`}^"7a^- }-ZTzrrsd~SZ!m!pZPc#jE7jt*=[\zWť:fX\l]PJu{xQ]3C%>ZU_w] Vਨ% ͠j(Ҟa(4pNh9 ڞLX-q7qӏ{UfQ]AGj pbsI7 {cx:2ʮa?iC+~RecNgʞM@'Zk,2PHB4ۋlu+?ޡ{Yl(PrJ5L*Yl\G_@1y2=vTI,)M}VQ(X3ٖ5|fѲ!9+}zZv V}/-12 '@keL{X R>h>LN=0V6V)dbպUK܋?Ƽ11z?֠-D\0 N|?_@ydg?4쮸9f^[}uWb~EiM,Z(F6iT>0rȟāʱ57=6Y+{k\ɎJJ+{*a-8Zwar+s2 OsrsL;MLӧsiRgnxɷsW3vkqO"r8*wYFl@ꛎWgkfM `֜$j%p0 ^TnH _W6g[`>:|xa/|$՛2YjѩQYxM|tvf]h(̟НphY#5 X[3˘q2RDBG!QMfi}G3k|=y~P'i ]JkJj-v#7q>,2 HC=2@- "V:#V+Z81ŦOe^~3d \.oT1Fq\ۿxA~[XaX+.1z("2eKODU< g ay$OreCC|ùLT*%9UZ0!+DX /;}E/yXt[yß5}DG+xdHO.e gb77l_bNtP8g[JRGdx^0`_ ي~qO߭Gi־ME%dq(:KTt[#"ulv=GM˷q[9R;ݽ%ncؒ:V=^ ̛?Y?*ĺ WzF֢\ݱ2GL̓gxȃS k-^=r*SrHmѮ.B O=oa[ؤm0HhA [3mٲSMi~;1xG<$-"f+iWA5:M޷댆D x Γ2ڃ!ہyjpn~Z>: 8=Qe|%Ñks`a2j+?ΰqSб+%%Xd6&af=_R6˲^^yyDJf?8j 'X.u7eLYZФ (d.[+sX{>l\?b=ĂC9_u($H1XzMw|̅@ěhyn=^ߊ;>?z0^`>&V̺6'Vy^,; SwvSC-Pe%t 'vdljuDߧSf(1^ vcЧ3u<[@32z`U"9$Is0mϨL-Zލm M;Z>*t"V2q +be B(e#U@(߳P&&=r~K ?buA߰r^WLb!هd_htφ*ZIyؘ 0i~6CuG0m9,*GҰ{OJ{gV1/pw@K*ҕ+ET4qQʾGk443%jQ`_ŏ{2L2}|yZ|f 1~Z:kRu~D 뗰.)ĞSkm1DƗ%" 1%fڙO_ez*fx~oOչ1ZA5㨶Dz2l 4NZTK%cUCqP2}Pʪ[BgzEݘF-4ٚft6t6t '~nØJFn4ՠP ٶ {rv͖W3oRXk)CrŋiH qDVeD8koҰ_zhs`S^'UQ5AK5ZaN >x'Q>HϧAA4{v8p+{vȨ֠ҏi7&۬y=,T+7=$zԚ񈙔41>yYOq/ &u͖`:J_g<S韙;cӒ.\xn3A"2ܨݞ^u骘ܛ' kxHb߁ڃ1kVTqgp4)okuR=B =Q..ǫ1\sV@.8"F5\Q(^F"#5|D5.$3NM:H]눏TP8\u $TE @&J Xρ:P%H2{?l37W/7B`oSsYBݜ1z Ցk:cQ|P & ja{T!!t-#c5.2 ¸$ANf}.YcM?XI=?Z-y?G,u}2(wm"ߤoS"(􎥭Fb\sdaavhΧ:`i&δ?b=H g&ueiH([-F,x/E3FjDV8 jp0otF -"l.7iq85- eg *r1* WE1W +AU ;qT(s{ToV.y=jf¾ u)JRٲsEARG"t{"#')&FU6wf \[GXJ5o$}kV&dvm/,ń>LTH@RcM5? 7Rb $|+zK@A8mݽ؀ׄڔRt-0SB$:6G}?$EJ@:JӔTO <ƕ(WSs6JItaYD!m'd7.=u.Q5X[HZԖfcȈE nd&3U(7?~Lqtϰ|0azyhb kڷy)&:;/Uz2(('ks}D^]w HvPYAs[= `*RF CN@cs ]ȼLy{&>Ǜ#]n恤_F8#hubcc* Qkndёb&QK(CP}28ɱ8|TǨ @ }- ,I)8@w$6 ZȭvKy?>U̗ X-bo2a>H͢JTkM$7 +IJ'[rPi U'Sf"߄Z6 ;BwLb\$!PꄂQ>\aj)QTYP##3Ӗ.݋^nYokVbr PLN3Ē_nSYPOfp.Ψ<4Q}xeCݛ$e#>WYΓ^+3Uwh1B/3_6M D-$K#(?|O7U Q(c"1H)vDp?0|N&T]&iľ%~w^ΒENp@Ӽ* %@Skٲ2;"6sgUVmn߀U%DJ1j.'Βumg'(Z3%Wo~L~JWUVO?,GC #7:LAIhGьr`܅i؎u-vHѰ"zMw$mv49e 6`kw%HFoj4νǭP雽zj61dIM k π4@ht/iNAA*hUS9¶c1F;Zx{Z|2p+&7y }B"6uNOHj)_E"bڐaZA;yd,5t?D 5 Okb1l[!@rZ DQe[{:QnOMDjʯ_Ysfk.gɧ$>&wÞB*:շG0#eec)cX܆ț}=V]#~2 ^]\% ` .a2)%IjӼG0w#RR: _ձⳌ/*20+*z,~!(FG^VY.ҐKKH0 * gԃ$Ep@JP$'flaӃy#/XsF{A=us#v+^*չ$H[E 机 ~1B/,롇JxY(3xQ;37H$b&->`BO9{UsAW*ʹ8\3QGQ^ǭ*VijXFKi$_-)A[:x.}BMj_1:!2s?7rDuS봭d}:̰T%[-{]wuij4$l%ݼ/Qn%*D:[ʫsj9 ާH"S?:"BaS ^)vG4Lnm &;(o )лӴ:̰E z V~9/ Ep r/Qp΅FY,L:+Hc[{%/ gɒ4 @5FcyhMS 3 QA˅Z>HQ/`rPK:`DL;+./KQRjۆ)AۑP96k^lA`:]fq֛C2[CKI>a(q$i 3ar/x6)l\fcP-7 b_CI& B0MѢ\bvl@akOӆ ]poA2?HG@$2Sn}& 6b3;g!WsłrFp c["z$ % PE)U@Ch#k/!ϥXt,'ؘ0-kKRJ l`p qBKn|)g)_ț؊X];#Vz5R*EJ7 "2c~$4wP!YL ,2d(o.Գ҈Rd*Z~&jCuJ EOZadz'|p*>L>WdGjM1 ]6c|f;Q.2,0mEfhM^nŨQA|6x EUWdX}x‡?9v bك[~ Jr8r< Q߆cyS>KVYe]Owp;J3mB*Ӆ H4( qy>OU,:oIf/̿n3DIzd>l]E9&w9=:g$ZFAL>caS$9g8H|(`15 T} : OepS+:G!x1+71eYI{?(!X}技m `F;ni:r:/@dUre}mK6(d}3|{y^N؊w ͭp:QU}t;2ԕ"PwEO޸ݘP/UP!V[o$ #j=+ \̥]owHXH :cpe"z9V iK~/]_.!hctŋ8ƼW%EMJ[0ޚ1|+&a`/  ZJAb[3"m|7~biۤL"C7:$$W T5+[FBP$@|ᘱ}j8f>SwVb1).7i+wk5:odK_\ F k3 !_p@5~RD9dG4`IıPcA+.9 ٳ{5[n`xqZp˪ٝej' 8;Їr!=bot2K,7*oS0 w1P 1`\ASǔG&߅$Lw<ȳlX bg4C@2|ī21uq= ;adZ([Ɇ>y*enb汎AfU}K*MU3b6s 6 5MSY%+ Sb20nե 0b3AΉ訇 i:rYĜ-'*( x{^-EןM' :qz{Dd.xe $tDA˹@{>ad,L}2| lӻ<[~y$xIHTW a?WEB}?9V[]+DDDpQ:Nv lzP v@Ѐ@BY'+3"Bg[ b3>,K|+jWMBi-V^O!,Bc!}ot:=> odA+KIʧcIjas!3yMfδ?2F fl~60l:iʫ1^0xZqA|P1u.P3nw#A)\;Ljlk-mHt4 jAٗ3o+;:r}n TMSl&< He8qAh@-b^qOz}.o:\ ͤ杠iZj]}BApWܙr!?@8"?A8tTac_njLzt"=ĮɅ% @'%[:GMXkaf0C#wao?S;6%G;x%.Ùd"eݤV_QluTOaˆ]\˧8*DkJK5HpUDzn| |wzJM{O~z \]~)YHw_G}B|XJvsH*Wc$"qHScG~O/McQ UpW]C T(( MfZOi6mRUsàvCUZO`s.na %Nh5ڙG)AZ1z|1z/ѹҶ }iE-VŖ͝\DAiP5egem}5|5 %z3ߗᏎD:43* 8zsQ'Ka[$(xea"tNjBBA-_DazZWwvc1\'$}Se BZrû5TQ3 ӗù+H4+79.`:T"lx96P&,/ƹ[\ľlfq^%jC ͕ }oDNTaa?/ƸiG@Sn"[z}ȯ.udj YK:l;e%~Ρ⚢(|%S8`h->{4}q<p9b:9TuaLQ:("@n,ZUNFnIHYJ0sG1# xsTqC/ow8UH*bl숫s> <$3vy.SkA3 (U#E$Ƴ#|Y&{HGg`;Bώ-/XNYIErM'6 Eel߷+7*]IӒ| jإs]պ`Fg̳HAnOb88e*@Y7ID4|l:`ՁeNz_2 TA;~D?cta_&SEܶ'ds4J Nݺxݾh!f ڒZ)8 Mf8왤̖LFMb%y|1qw9jcF2V]T!k|a-7XQbؚCz=1cg&t qSrNs~̞wIi1BK ZY .b]pZ]m-!8@Zǿ4K\31.>z;=-SY-|F\ɮĴx8Mx^w`9 =RyAbR(50XTIlT}as9XayAnѸ9PhЋ °(6ܣnvj- NN`f'c~F &!Q 6K4o+&`VETeeAbwRn.[E`c?2n{W`:DIVsW5GwS*̡'|mPa$J @k/aUEfWaWlxAd'<Sީ9oSYκo4PʧWP1MF)yw&>5# `C1;k+}o};˂nbvm ]8w5Ps"I!dN}+ ˠ'Ga0*V m^7>8_ @m?,EwRŎG':Ctf7ZHajnGGJrZD$ <ɭ-8o3S33tsJ jb7&E|B|L]Q>.}fpy>-$%?,~2uvlxHP j#rRw"s4}ufE"Iw 3EkĽjr:G:Ah9,Ng2/.tE)f:rV͉*_Sh6AY}E4A(V~Y(!dygWURfZdMs~0@Z*txa̲S>#_WBgv/L1N T|@s?),,{:l RH$77!_FǾ'30 3N{ NQedu(}LDWM FhnS"ڦC.hʑ@CxyG_ai 19no8_ jp{`dE*t\@c.1jx+:0Jc'`^Gw⻘deV=ǟiG>_kTۢ.^~\nWaP06XǞ5LfCp)'>4z_IFI(0z/@/nH!//l<0Ӕ7 6TCru8OFu,3gi?56vEWj?WC*hOwJ @$CuQVPd3jvu5@s9aP2 xQ[ Lw{zο -N-|6A&t_k LU &]Ԣs%Q8Ħ *h[7+wcJ SnQA.&|Ntw/ޛ ~Hoq7WaԚ Cj̝§ =qxGSp^ep}0> S;PŠ"hd-8d?>եGf3#+f/-/Cnc^d\ o'a&LvS݂H2bf.=D4_mU_.}ݣ8g,rYm^SNs'H+ɨDRŶ'ڇy6gG^Y=ȅ>Xkt8L#h4қRA^JX(4: Θ]֍6Ӡ_? LcnRA'zSI\ǭ^^4ȶD dS˷X0n)w!$X`Ir_%!~ޔWii4iďQb_ox+,U,ĺ:(W§"C\(\zvf*i:=~vlO="M}h()pc쨯) ش mZIWl}{tAW$Ncc6`UgRf, (t{! =}ЀdӘau ik@]Cha2Q}ECk} fyy)elSSi#c xEuWzpYmjImÁ~n;e vRMwj!뤴'fFׯ;v_4!$K-]m~n.cA*1Ľpt N/6+TsE.V E;Vݻ69)u ݿѽN߶zV~ޜ_Hs-=x$"&OT 7[M_~ }X:D]c J7#M,! h|J-B0Ra/ wn;!%j:a1/աŎe&CUo es .1$O,&aɻ0#T`YߦWen}EÖkYk'lȐ8ʋh.dbxz/V'_Fr'N۬EfvUoOXG[f6(x#6ή@U=Ab6 t~w(qɱ1v/CXLjucTϷbC#o6ksՃ%_)ka]WaxK3Y7`E4w2C6.60kv`HBJ]KGz_ }-[qb V7+iUT> - Ϩ$Fvw-0%CY?$VG?8+򐛧z Owѿwҁ3W׃r2ivM2`0% o/e{;{'S{H]dq/úS/+F^{2" e1udX(Rۚ(aV8fO`, jHaz}k_}hLvgPXH.ʹu _c'?ïRzM8xqV̼ۅȝiQcmͬ8ʫ%9f& ߨސ$!V }Bt+\;)Om$Z"c++&zG^fAu]84ϔOl~iꡁvtY7HVʻYxmkZP KXw;ӢiMR{}©ȏw-"V5/м^kJilI º=pe[yd F0h,CۚNNoR0B2aAR Z畳,EIi3kkSPoiS.]cϘnL2w+>Qnf"סp k6tH-XxI/V20|e:PzjSeeS`[#P:񟖦-po|Q6ú$88V!5!nKCw a70ȹt}dex۞1C:脏$ѫq{T,r?tD2nNZ#(uEv$fĬ=6$b(6ٓ),/ hdE.ep g[@ N_]Z>BsC5 Z&>Zv7_N[o¢lfY̕3j.=,)W_>>gNqm /L A vzԱ>ZwEw^ż/ Y_VFzX=BMmmŵД=)yt#ACLr?8[5QKgxq}E3,42ӽ}<~r)Ug Z/IQNOrVAΊBuRc=r<䋣ر%K6k;Wu/B׀5mf_i_ _˖2U.!53._Z5mb` ̄XDA*g@;4}eBZ3̮;Qqe꩞pSaZWe5` LK9nj@%E.$N3 -#կ й q_&Xl/>nRr}ơb/1Q %ƳmaH!*cA_>s{_Pc7$fY,Vfvv̧kâwwyX÷..h+~ Tc6DVa65ѳ{oeO :5')h*SYVp%6m9dvO${T, mi2LDDCCHX`l?h!)fmjPEث7Sֽ`3s&./ބ*zy_QԼeAH>3;H}Bha5vfӺ)*2 ,pˁ.DqHv<75[mb.͗|c=c0Qvq.zם/=U9Yľ#i е.̫aˈFiS}`PB ~^ǒ>)+_ka;[g폅1kƾnO 䓒΂5y iƋSw$!+֣ܾfrsDC'y4bz"vHt|SKi .E9ْQ¨q'rڂO?7jD6?"H[Fl w <,#.\aq^C=0]xf樞O ܀NYGe)MVl!;od?j`1q*>(C1SL`L~Vqdoh]!~m"DPuoZ8hnI >5N5knLRr"%iٛ?}>N X:^+fbLL3##Nh*=c] oxhҹ}; jyG$t)\D,$ N/`)/uS' &!f8ZCo^KBi .KC)p]6NNLNu7P1C!z2yٵ,3wExz)Ai k#d a;Un1iEo`$=3;G\i'j,e,dl997N$ڂ;`*vkd+R&wmÙ+u:Mn)7oRCl$9|j]̷6_"$X bАH顛M5a NgpZ7hK삑J=]_11sx[DU%,C4@[ຝ,Se8חlA#3N<~5ymD]Z2L)fl9Gs,yŶq#y_9ݕ7j3/OC`zJΆTg~W!sBS%m:]A?Iu1M_R,(&TCwɷ>#MFqHVHnTvXJVQJrȇ膄ۻzpfIgY|0Ҝ37Ŗ !>q!IKU0^!IcSa^]Vx(BV/]3ʊ+5 mĘy3.L}nuTg::E:!0ԃŠ:mJ|>?#Oݖ;($A şZmrV'px_Dl+g%HsN[ՆYM̀, b#mD0;ȣ_s3XŽ)sjhөݟQVy*5* CtQ?]>=GVцS?92?Tmf/*@ƁǟI Ԯ<"N&$-?H@F5bb Q6cQ3&#eWᗮˀ6J|Vmw7K 1Ksd>ťd;c&$@hdÉҡnMBoK-~ ӵ8 IHS{P8̈́0d}"Ōr!Ĺ _v!'a&xe El;T x˹·D!zb2jbNC^sҚs)en{pЮNʧ"I 'Q&K-La&-蓙EYe~$BX E2.Y/sc)J"[]D)28MT:?X餜g4O(L܃WwhFR P؈ tQOm&ktzm7=wNT)Bt^hdgP'_;ud/W/!2.Ú1~Gh ׸8^TxP PoGs3Hp:{0kL"V,ڨWṡ7&Uㆦ,_sV:iPG)J |K9<&T085{yhfŷ9X//&?O:=wqyl}w}˒s4k`':Bh-`  96>nu POroJOopW /Q׭gF3DW} է vEq͋0)̒E{;2s^;6"H,Y*n̞c)R}y4snVe'v*/7%30gJIhq?Sb*f&ihyEڀҦޠ-A¸'ڬ7[+xuX^N">b:Яd8/Y[hE,uvwς9PbҲ`Tb xf[ eY`PEi؋ʢ,fП*Y1(%ce{0#`a-^>@#$j)-dIYhej <$鹠wHcl 4nftg0zVo,ЍռNqZk=Tzc.s$?}niݒ@F{QB#G)f0$+g%h! /"XQ!w.^YdD^"?.7hb3-}}K0&013NGt>cQ;ߊ .rY^q0f,ԁZ\3Ǝ{$ZoKi~(l <5@p}P~o (u=_G;ކ(B_ @'%.#vQ~Y :ykć [-#`QZ|dם#bE8qF=4{LkRq 쾚}] 4V-_ҝ"HK%j~blѠ{}wy;3EY"RL4UHvAJb!1`QIrG+\C-WP=G@7|s:8$1f\M^ؼ|XjQ>vFևN5 =vrz-(h ⦄b}$]2 1{Rvc/WoĹ5iR ?ǭy*>,XHQ/VU9; Ȇ4WZzvx;P5u&j95{ mL󰵈}ɣ7ȧx/:XDsx2x}uzHd+Ps_p5,DW&lDemC=AOX)>]j_6]]͍ΟϞh1#[D kRJQ|*F;4xk1gv3o5(fR !ta`evuI@9HzJnf ]ί0H:8hRZ9sz~X2 U\"NYYRض(ag) ԅ0ysVZ4UfIpv6`+p|ʾZ9dC+_ʙcN o_F̢eQ{JG)kC m_zO򊩖D ӼZ!d@4]Ύw]L` ^f:Uz蹲יXLLN},U{^ȗ葩xݔ|93% vP?񏞲ybWD@vE}[jILQ8'c_`M,dKD7'Ocӫm?%%TM<-9< kL;ܤ y?AbxXv ?j ҈Eʰ-tON=g0*!e,?y+Wz |I"h.X^&5Z;Km {t5<+Ayhq%R"h4A6DJqبO4[׺حO`Q֜9A:PoVA94NRP#mVV~>ÁT'Ot^еN{ߍ=ZN^o2vތy"M=ZD(:,1r‚Ud;4WWƀVV]-gĢ.P#jQ*Ae•7{-=VP iҷ%΋]66J$ F/Q+4PvfermލYPPG\/:ve]sՏqE޳<4W~/Sѡ<<7Eml_R: t`DtpAh.cCP[꺎gӭ.`ie@^Ud]7|붯QLCD XS}E@KjJ+邈nRhkoGF" ie;$pgcy8. yYkqGq4uu;/R_"8Q #V@xR…s~6B4S)fWK$K%Ǧb8D1f OXצmY;ԤQY*L+$0{mc 3<वOg9(׏SH/ڨoudwt|aD/ o ߌ~TQ̀mX6@x,wa6_>3sNx.Qƨd{R?aG KT5~-eyIobTeѸ۸vc x!0 D-PA\LiKcb="c{HduFoFyзR}O%Xģ`SF,ubtUb69[2<42GFM#]&oe[I[ l^Xnev|uZ(u鎼I{G53Rhfx{a7ji!xٓz`]$runz9aFHAyXWhR ȚoTVcwYN}@aTíՎP}=xd6;Es[શ޳^t2ZXZ/]{_hL%]-CtHZԿ @( f03Io ?pߎ\m(*M|7 /qܔg{^r/F*ȺtBB%G;! Q\ǴligaxM#F>6L[.gߪC=,B~@a;Ha itjNJ#]'!n )#yc;Tiшtx J(:r2.u2LZcF0FԚE6d`֓ɫe'zWQ&H00 1|fu *UX滈 ?8Xauo>FM&o*%%5 jK=G=7L;~?8(𾐠x%cY%]Vlv \!ڟRj%F|@~3\yfbj$KlS1[-#B)rQ4Qg52ьlk6v8C;:G6lSI<-iCQ7,V,\^LEԂNOn I냴sUT ъ/T !c;Ă3.Tkg_eP7͖: )@Z2dl$\uVIT]`}zR9R`v9sĀ$]ϭDۙow@mԻvRݼ{-Z͞)(+J߱;g 2/%2/A@z4M _|5KHm/>lT->10ԉ'ŵD"rPT6@9! gTædpF0q%IfzD)[ޙra4]ԘI|Et KjoB& _. ){a>!E$Y}Ml[@e7iY$;Pm"ʡA31\tyDVy*!fՀsG}VL_Rc7dS!\Yӏ_"lEm5$Z|Dm=Wu)pt o_4OT&Ĺ]UiU0:iP`NN+RpMv % >ܙ'JS$mb#i 01[9`@$c{* Ǟ^:>(v1FνN)<&h]n"Q2=Kܨ9b/5_xOWر)T:x*y{bw|u¼j dCVH_ҡ!k^o/#?-ɤlnJo3!6&U@ʐZ"H, j넱U]W$amBqkgw݄sE"Y}ijNrAcUQZ-;-Rd鈚dS秂gɚǒ FĢ3/5S t.VP\~*tYi' @!ЮpgoD"G4N1Q;4KQtR,C ]5`)HYb햋 ֛߳:pJ mtWǙ)& 'S?[UH^ lv!n.h:c {N"Pc.'%* eJ iZyqhNk`!\C5h\$[(2~ ܖ%C&yxM=~35=`.#EJUٗfH YV }0L1;q=f/',]C&83\ATqDVe㡮[}{@K%Cvid3AЫ@fh^g -{$uOȸ|g9%A[L=BiDǺDPӸjU^ .0\{=hGb0/;K z52zOFs;($͢0 wa! XRP&3%,x2EȄҚ,zгJNN8,fT;j\w&@p.!=L7FӐ @#B 7iv mIs cW]sk)/0,,R<$pWޓnxRt5Ĕw[YXkE"=dEC?샟bt]mRfc5`Hjqnpt+KО-4:-pvIe  q-6W grp}B,cŇĊ21|o $:=D3!nπ7 z ^,h JKQFCSK%kSw|f,PrƘ@ \:qY~9Φsypm;+Ə,Q%hc㔇9Whq;-^*UAEJB`]٣NniLUoFdC@O5ZdV4s!Ps UׅyIt4ݼ(w(6^X[{nNoj-).AhME^~5h<%[^KQ`י<}`+B XW?wMIb&)sS![FgIrkO68 Gf$BaoSo'^'> t 葫&/7?Tt[׿,-}{S*r>찟;>jPp}= ڙ&G-+ U{KDW|!4IɀE4`qVl\:  'JT]R_Y32J@ (98ޜ|vE @N oڸ@rHv#~=(8#n͇iV|)FZPph 0z%<#[R+ZnSq^NS&1Q*8N1t3{-U!ʅJ0XJ=%6Aw+)n*,#u,6o NPydzW}*mUt7<HCM Īa'2A@ߚdA:hӠEj9=Pt| wcbQv` Y^Nwz`YKf39 J}U.dh& VgPU9S d.El~)!\Уw_1T[Oȉф.uOAuCﴧiCj%!W<,u,5,U!aحCeZv0BR<ljسO<*[C5 /djXT(M$,5OY_Lou>5LYǧ Rh /iL]/|M%f`kC- IRKe;i/ϫ8Ep.-vŒc@<b(I5N1(>cQ9PVpȷNs+Vs[ B78%#N?HeOex素؞)žozkW(x@cu;-xd(Ld?՗o~8VHCK܊-r[46wQ*ŜOu$Ct!gYVvҖn,cQ[ij}.hתS`%@Xd n@a4-(`H1A5{9BzX{))1OAq!>9G~Yyl/v*bŠ t$P3NJeoYG} _Қ(R)N;?}.?4g`E\iAX~i@>y"MfA>h> K64d$b#P)&W(fK4&wm NJ[ˉk^@KGI/IќpqUPlGI%.sh> k$cx}7~@(n@PAvT¡i_g:Mts|pRES?'6!(DZ /sL%5~bGvb7_|[~san9!]ن'Yv"e }\YSBzUn$b Ep/ fʞt{ye(bebǼ<*3-̓Ob)zW9g%L#UԽ},V)t@9\U/iۻa%fEyKUT\;SI5[JEpĞL#7W 4+ٸ(Qyna=T r>ֱ银̲QQ!d8[Qi.Üƙ+CN2 N,i V<|U-'P4{V>·.#Y9j>gٱ`H"Lьt[REV`ΊIt] DIu6+ZQ"掤oHt 2'٤f4ݸV{ 8j8dR'7Vi똈UjSKݑ՟'4iŅN0 EM);˔.oT1X{Z{l7F:lAm 4(jK̠mZ ~Fd~0gc9Ei7/Jp„k`-qpZR\9ךRD2S휧Iu:KVn}լ/~9Z3OIJ>E͢&CMC[s9N8cE~Q#P! u@rQ\s#Л3]ݶW%E &nå5W;au%/:^~A0'@nau.PC>eS|߈ƣm¹7{LT4eD㰒 pB8H^PzޞML)qPiB]֨·R#i}mވrr}Mbp(OrCݠ@: OŢ-U0ƘV BARXU~>6(㛇OlB* gLâuupeiT"zJPS-fRۅDg2!vm9q y%~*M[X LV;P)S2*d2 kB>&R (ѥ <#p oG 3WпE >| VnZ]sf}i%i-7"0=l"9XMnRlk N: 醍#ޣ`C&V'0\1@PD[SHŎ7 o5wB?'@#zGeSҬ(/zhKУW+. a4 1(ߘ#؞L `Gdn<8i- Nf(--a8<^;a)1A\Ώ>IMvN?; z[ یl8H$Y{?yH]0L|yv"b>>ƒN@2i UǟtmqA䘺 pCdIdRt|ie=p{մ08Vt]wh-D^וEpGaTuُѲ <}o#ҷIeV` ϊ`iV7[G/B]uv|p}^7'4#|!eS "Cg@90̭0|ki>TDscZ  hl%A](߀Dk2LPJf6 9 hot1ZlygdOSd^~ka[)7t6mg$p >n-\)XaNP)iI}D<5^7׫ gN{ O/ʦ-],afAwYgVh2߽MdHs`3y45Ea<#ѫhIfD^ljjI;y?yĨiyeq4`:[xU2ƻC mZVh}u>C8dI04Lde!pB'~0:i,;pO?_ڇ~6jAR-ճ Z]t<p.Z8 AԷwzFbi,(26ks "*Eo_^D' _ tR?`{hr0?8p5AVUnd:Q+IvC%ՙ1ahy]!g/W_JEJrjȋqC Mdt~3 [H<ښ"]QUW-Vpq`gON 35g1cwP0wP9ҝ-@3eG ]*!IٿN[a?#V?hM6}%}Rv) B%2Efa~40O,;Og5Lyt=V*jmOqO"d$/ ɬ=b,!ДnA+tJ.y-z\'"w8KC`EQgD6ŦCg`L.,(Ƽ =P7#mnS'EaR::|HQB>q^)ț>'Gŵ<NEߣ?y[ڏDZp+L|RÓQg\g *in3lV.e4lĥ'EV.EdGV紷ߝm Dui)t T }vaM ZKTq"1Rf_Dg ݑqᄙݴkx!u3"C%ng؊\G[~9wN%lNW ͹OHFtXiY޶xm)1U>JAFWµ逗[„Q4 Chwh72ܕMێg}͋j>?⎠k8*,D' ?-"^@zv妍Zc˫$2H7"<6E2tYOCw9bmjR>E[ew &EmTd,XLPm1@OLA{y"'Q&ްRTSb^:b`:+W|N,iRy"$}%u|/ϯ5adZu΋qTl/>'{Vaj2[=Y9?6 2?B 3y釘%CphDԼnn+}%xxODB. QO$.\\1L.ILpDž|ǻa ) nmׁi |qib r 1aW_(7f#$܌|E?tĂ0~35-B>W\!fT<,]҅07ǝ3k&\i@TbhcH 4#7FJ%%|^CƁ21/}v-탻f"?5„kx#gS{;b%̫ɪXqkR|j)'IY$j_%jJIYͪ?3m4eĊn8դc+wfDkJ͢a],+凉wS*6&d6m*5ȕ^֋QIP+Qv•kv!Y n7A=Błg8B\% p/Y,@遉s[ ̹0FC%Re@3z]3-;Cd0*K1>$[VP8!DI $tQv y"aA"@F揺3ϖTlr-b>'% bݰ{4ۭoo(iJ2*P|&y3u)LdCr6o?=poV(l\z|F|fgBw\SkRͰö@L P8p&4Da@+uތC*4T6oKl B. n|& =F?0h_dӯѰg,aqqtɱo;E(V)g`]IE}24vBӌBZcX+oB9X}!.AJ N0[mhP-Xf_"x!@A1* mp˺i-ȮJDY,ǒ=aUT$b,HB93rgOZmoln#pՆzRvrb L3Y8,}0.i-x) X+smN(H)&+ ~I1ӝ3r[U!Ӟ\[T3\uEtHbu=ʟ%eFL  mqE܅ k.Fȶ麎P"5c`tظc/u͹q&,y,5ԫ1ά(P _93Rg ^.x*W@htȗ5^ociݸSdG F]J@4JarP_QTҹm)r`dp mx ~&: A4"lfY قe fktԾ8D>~"YrDÑ\#՜L͈ c_9i&B!KJKw| Ř'9C|Z O|ʐI6 JM/YfrҦaSmͪ_udhai'J,d"H%a=zYU[ڣՙqf˘H5,w7yxEM^nǏ``e U6p8(0 ((VF0Ɍr-&*z]f=Djk KDd3E;XG:v3yXHA!g9Rbb ?I9ՊJWEx84Ä#Z'-Ye`[i!E}ņnaz+$xy_TD1 ž;MOƴ7=[l cJ>ׅ/DRUN,#+=2뤽8*/DUs:^AҧMyK BJmKp+<.d\[:weriXc~I[CT1ٴ| 'Iw^!K6\Ayg`E8n>)% 7_-oEiCfSoBӎ/VBXr :hd%' blJArnoJjF;Jףּ#]@tC-Y偅9 S ;ګ: QN?{˒`sIțKjzA3ע^؝svM\ӷ+O{(tsAwz9WA%?Dޢx.I󹍎pÏasog,a5e; /f.16 6L|H˧>JDոEsI ںSKbЄM!h|7xgdXE`@׎fgMdZ-ٺzD0^e/)r?|:ן:]o[w-T o9@;KE$3i^0xɤRd6Qc \`} _lKjFb1,Dk&Nj` ɚ7jh&!{B/nfӉpsz$aqF{GˆkKBeQEрX.$ߎwˑ0ATmfJH:yG~ X]|PK9',LM!+J쟆e_%9?ocN3t^+h\Ck̭ޓ~d/<2<)VՎ`Wo1+wwk #om&]r _PϊMc@T[P;}LQ)I*bdgㆩ'DqA\ftD&3M+-L(3rV\IoݧDDxH -i_awטV o]0pyRn&LO>U7jΫcWUŵ+7jqu~$KuSC}##;2z+O7BN]Y~O"a@]woD4mH]Aͳ(+1uه>KxOSdĉikCO>+Ul~ /v~Id|l)-Nc[\uuN2@PNXfmܘ|r::+#{ s!WkT$Mrs,O/H}6sK(mϿ 7h҈&ϏwbuV)tGOjuQe*6#.a J)9pX.^a'~?yYhhF̎]aN)}K#O?>AƘ02)YY[.aZO]c2u^e<@3AYP*;fNeBc75f'L:û#-PucnO+y_ɖFz+1jZ0?MN7$rwND@KCq a;a[P޴8dY;ûhT6 ݎ]^+Z[K;8* A'@Q&pm/[^bFOVd > dftvfˇs0q.XHxZ &#tanLF | {hre&UƔ}~fs'pb+#ZT GefeW"yH' J#Ğ8&Z+YuI {s<\#.1l;(t\h;,> XqL|[u3i)o0+ "*zrJ,Z-&iXXyc4c}˥gson#WkBU=1ţ~?X~ â{Z,62ӓ66:6T|M|3l?| ig$ĖW!m~qp%vBxGT39t;O6rH=>OJFA)-ԛ%c8.,y-:"xiw-6}b`"S26RզmMv|ЂL#9DjB\#hܐE5Z02o97AEo,iH$%mײ%t\6Fc7{Q y85`)٬zϓH!K>pqvͲuj@ofiճAB*_ti +&=e4 r}Q ULX.%P;6s; !:&>=è ƳKebVbeg &ȱ쌭Ɠ;3MԊ ErZ͐vl㷒~D!^<t?H48>C y-|ǻ#bHR>C*a\._nhxui\J{qf?Lo$ [.̇nyU=ėp{E >#UO9;;EYx#0י܁`/bi퍇O{Gkc|=w -u59)| E84Elp49V(S4Rʑz3s+d{vFʪ0p]?3ɛ$ԅo zjNsV0$[ƞ+h7*Pd$IEJB:2zW{03‘SW]q$?3C™ὃv]JLPG̉lm1_eCWMF~,A{ar}˸es˄RX{U;~IBz$bNd^ܹm#Jn#%˩E8kg0W@JfAՕ%O7O^zB^Չ?^)Jwd]ٮ~/Ξp,?WPzE ۝[M ZMI$5yũ:7Æ9^΢>lըu#Է-ʶEAp8#Æ:NUiùh.cra $-flYiWv/ [{c[XB8v 5,%66qJ:ƐψFGRK{f:lSGѓM׆i&) Z25&ܥ|#]Iے6 &3]Wdo+2:>.Xwm>C0,6»զ^o7|AY86ż"#u"LAEheF[Xԛ7 v``Kk^583 D] NS7#>Ф/RPgjXz^L]]!rm`Nf$yGLTrPi? V 9x[$I81j Qh<7uy!?4pdaF͋u]$2&xA}*F}!{MRyפK@ }rݵp' -(c#^O}$2:C% l8. kH9Du#2:2t u~3Ź'u8Fw{ #oeg|QplDZ/:] &p$m7>Ṁڥj}MzC_oU\^F[[a@,,j'I2-8B3qJW %?w%6= %@ TZO d0q}ƍ= S5 R"ne_Ô?F4,F\N/ 3dwt*Z; 9OޗarPE&C$T+Jk[Hm^}@]T0v5}o}3>/p:1C,BMOVn5faq7w_XI_j%HvsCQX]kj{E j 2::8<dG}u]vHB Ҡ!W yv$vjf"ڷγr1 P๲ f-m0"T?,'@,.t'e.c_AW bLo<-B؁R 㬸COgh[x+E49`nATIa5kbD7!T Y2(Ls/6n a8a#='\p1S[,OJ ́ Zk5fG1D+0aҢ{HI-`x|L@rpMf }%֐6)ܗ5xbn?RQ;  ϞлuBO Yx]Ⱦ83B'$i`=-X%BA¶fJbvpT ÈLԯfJSӱw =\!G!F 'Jt]RP2(Q6S){y{#p Mb{lB)Dz؝VO#+ sx+Ec`@LE3 Ze3b㳶 ?ےn\͇B5nI}QfߒǙQLFҶל,]{V${i NnD):cvŠEp$bkc7 DHK54"AQ}"|N`Z?_Znt ȹfg-X}:t+;a&nI g)(~E+ {8Y-*SH"):MːPbXe+8ǷjwH(y6aL/;[ݐ2xK)CEfv,hy[M P9),>Z$8gLemyʥoFZ6[j>`i$Am.E1. vLL@ZeGSauy  WF~(wSH1.!j$/Fsn}=GŸ-[vwV!D8S-0$c0MXL6Yrd-sHGe wS/-B'2(tGVg _TEz7_%]GϯYjƗ*i,N [^Yw/i>YWsbygϸFSbo rPG5U}J}4@gː3, gágbp s (=A="ųz.W[%، [^07w^M~S>߁f>@k\1P=zg lʱV: @0nDAǕ^1iy "Ϡxy/~|RY^cA^V$@^y>=aEŋ6ZJ\Uef?KꇋQ`[4:0~Y HmiAjbzo_%4-E'Q* o]9هt>r|Pj]RYi멧Ȭ8dzQI VXaz&h ˊX@NAU(OD8YdEpb_JH֜e'+Y}PVqr&&͢"xx]M#0PrC>L O!df7N]X^F%Ɔ^r%-e_gVi"w'}euL;gR̰_s#nmH|)O3q!;sќй֯0C1)Nj#& n \19-*jrkHiWYLߟ" "LTq[uS|kןdĥD菨B=c!͵6>`"(H`#Hs[_s,%.Zc? F.Y?9  x]wޜ4/b&b6U8!$uTW0$* dXxC eBnmNlKj#9gslsxɐݍM 1O}L?:n`O5&T4hMWӅ%qӂ nYz:0C\rk U{0жP -E S-s0 i'UHPi~kv{rL 0T$G+&q c d D>EZ 羽H| *h#$@9`|_ʇN i5YJ|JL ;Z5sc$bW^"D7Wf0 6 Q4H2m..hl7>^%7y|e>_GfY +"i fI7 lebMe?J$}?.3Qڗ^xK~\ pgگo܏YK$ݗ1zvP|TSrq Ƶ9,h~{&O|]tȳ#HgD{ tɉ= "k]SV1sxvo]y a$YkpC:Jz57RgQjE&140}EyuJ ?hBd0^*q"=my6뜚NkVspsP u˱U=MVgA+TGXP(ƟdBd$$xzCpgQcఏCGS"jqAGH9`QVbmG=Xp8C2[J}J4|wڣxGTRnZs[x2/<̑e]1bxR6܌- ƑQ|n|y_JO JBErB 3b LKz, ;z/L.x;*M3G&8ǕܹB .au_Syz.rhz# [ נ"fҩ3r%f@F`bsۃ1I֝O_姪3iY }> 6 SE(;z¢*^ݔռ#0SzAU^|t_wJ2]!cc'WG$5|Z qNAρoNEpV_ T=99IBk)/0; ,UUI4P(LMr۟#'w>_)H r=_xOMك4U~ Yku^Fö:NNS﯌ދ{h^d'&O}{plfocoky (fD1{GKdAA>% Am |WOmid!@OoNLWfL.|yu(K^ 5HNǷWR37!5įoS6АT8f]F?n5𘥧ԪN 7j|1O(=8+kYYQP#Q;YJ&t) 'F^=l?=:-h즥9JZ3 i)w9bDu){sLexsG$r sbHҗ`GG03l_VD}8Z)gF&Zܞⰼ&LS FBnIȞ 8\M]s_>7ywȞvoܬ[=ZQ]s'2r)XwOR.Ѡ2N)ݐԽo^p,`Ay(ǰ,k`-w/r {yQrMɭnX <,+(9ϴL Et&_=;fci cx'0ѫDS jymv3O Q9$穒§ Tg۝""2ޏ'휦.d͉C5!,4˘L7 }] Ww`;:hg^bm%*L)ځ`P^܄p22Jyx8ۤіi=v-b?M#ݘQx Ik{Ljhz}7;"H…9&0aӶW Aj|m+րf Ut/=T !mlY*}e[IJv.zʴ[xYyG3j\5a=^m ͋Y D/BY"_UrlyA~WcS֤mc??2﷕@A لxfiflYUR]nK~D4 e756.ʆS69S4ps!` JdD\,v.Fb)n5$!GC|ѺuThlv"vS::T0ţU`J#׏U9`e]Q쉿s@WdB&e_%%QM}n h jq_\h=)t=cu#GpM=N^LlaZ4 l`h,:gP뻾m^ݍF>~J2T>LBOZG|mrhEW2uj ]Tu(1O$,S t,EX =@e1VΛ36HDm;8׀ TqwIxϒg;b~pf`3k٦'k nB2 K`R|4sA{rUܗP*EM},xU-GHuOP 6ڕ?-߅=POFh(3) WdRI ;/9FL=3.]{#}{@4 f3f!$Abhυ!*V(pQ9O}a@\2G,:+v7($'0E=! ȍMSb1y;HR/bލÕv|" 5T=ȣx6,>ajH5A )&-SQI"WT/i ]4pZ(s QLm2<}0cܥ {QO ?JN`,+dPִ27eG[֘;369 9Iws,0spmtW*`.=|7v!!g,ΛZIOjt<.LujMga x)Yy}l̛FG.+"dʪ+$2o9*1\D7g~d.;"֬S@j۶FPnl_0n lcٌ#8v9%ހLAғEFH?S[Ƒ,xo+Uz5BxJCleK !2AʏuJyz2`Y XS"lK[IyjVmS`ެKnԿTY!ېWZY a)^/ȼ`g-$hBߞZe:w[K7 lTŔ8Y7-iƺaK3h}sT9RhP)+/2K1ڰۙct+oY 7h^VR矊DfWr$qek"c?i?lBxڤ&@e1nhL|@PMW5U#?!mPn@.,K;Æxü9 ۬as 6d8$< "lX>^ ^s pLkƞ aaC'ߥH+9\.Ln 踁M&>AZ̋Cm5QǀrFUpOvr p_!fGp[.A*Q;HBGL蹕5~ǒ}XZc -rC]˗QVLukCĕUDڈF >J_v(y߻7rm[m53WWfn䣿K?g30@a,PyrvFm0es@ZU xNu( GNmyԩ:iǥ7y%Ͷ;;Sͣ\/3謁w&K݀fjI6]])t.-&pW? ; p\8I0c5IY=)0YB u˒=NkNl!76 j=tHw #zsgFq9V3l[90,e9{(u`emi;X;d Z9}!k56F]4q~XPl1Һqʈ J 3>}ڮکv [(qF| Sa [79+̏;oy+)xWj0ݗ:Sӽ~_Q$Z0t:죭1w%sPdʱt&un:';,5B Bih);'4g!| s鯻~Fy2Vd_º>Yj;# w ,1U'3٩*ORr{t0)_nb 7uäQiJ[g3ĸJ|~m@{B:Kڱ)lM?XO_;b:z$/Gd޳ 1;C7gl,q%y-S3Yc/vIy4;X$]H Yo̊Wjp̲P 6ٖ?zPTxΌnzed ` $/xɖ-Oj#3ƶ*!Bu쟣A:VHB#KTAnnP BqmF׽ֻ'|N|2ސbەTewi=?7~R?z -9pI85ݾz ϧGTXDk(Lg kmm(k'"E'>&/XwKgе?U A(YT)WOjCRO+TΔN[t_*F6FDZ\uYyqYt m@Y @J݉m}!vݫ;`(璄7)H(C.ӫ:)A'k뮷p, hp@޿Unvto7PqY`f9-h?k̺*7Ki5Z~*U[bL>uA+ݎ5C1n/ ϲ~b* p9 LkqU~ J8oXb2ҟG2^hDzbCEC)$:9T%"9!xÑ|)r,geD.6gچ1hLR- di@"%80e{!htv{9(ΗP|Ӓwl*,/qy:]SE:P9%j`ny "zB!=90يqG7yk JL5ΧHH'5F$aAp@gyxVѺtm 7+j~EOVE58P ؽH5UB 2szgCt#zZWazƜMfXrUس&9 Gu!:tB~[Npy^AOuxQ6V7 E7YqRWƲ#8ڌ ym2 U8>a>Fe%0@`ς㽽34U#}]c_&[ĹG.e~tפd ?REY} yLL Zd/V(0pFCNa~}tQ^IKec21Ko1lР h}XLr{8ነX 2GlI/o n2F:O"l/9?E ֮$$UVG=6]fkd=,Ԥ~bU(+1ݨc 4]۪p|&#g^|?YǗH1\GLK[@VJŕ.xU{ AFTsߡC|էH%;Z%}*1f5 * Eɭl&1Q*Y$gЈ[4 /YOrFrYBF;-3'zUbS8$AFfrETz`Q4sW076m%#e6.j˛%QẺ[=o.̀ Np ؿU53C7"PF׆uE#A _}ǝ7Ds;ܔIEђeJ3&qtpnԑd% Wᾼ_&'ch -Wۣ6{OhQ`鱥w*_%I#бAg`d7wH^"?+'zpR$dR1K9pkw!F1m]7 YF%N\xXk.zYLu] #Ղ*D<)Tx,?ԁY_QS Σm*efd^"\o-&@JP9E iB۸.ӬaO^-\/|9&h=p8'~.9(@9kYwFE5tʗLMS@L4&IϧkͨTʛ3\Ѯp.tBdV)k)ʏN䳌MmYהp ~4 9tW/wnq9.x.F)u{V4XfaXz` ĂrcxO(PÁ7T y#biMvk83"n_ۢfn l'#Ro!?)uw>}=szl/k믏2^:5 'dSOzq\ʡDBDd+<-‰Bo'H1+[EZlC 3L&:;$1~")2vjuK"=:ӈs H O-'c%lDy__9}ch~vk }K+ lς|l6f2[D:Y^Z"؀gtRf^ܬ*Qb[UC]coMn9W^}nLƎ_HZ~860g碖]ߏE>jR Tg6O!H:)K؜L,syK7O}+Igu8N麃8`dJil7<  46iչ_zR9v?/X+HoƐgkmw0AOl~M_n.'fjJT>'q|8Lɑ|5rj^8-/(tb#[inBx "0EP ܞ\Mb&1G<bABT_w?C1qbC nzD3dSÙI$snx#'RQ9 yM[ͮspq{Y H>G)ͤm 2pN6sx+[#v7>Lܧwjaa5kd-xE%N}!y3?x,ioxxWq6ri58E@lD92 ^+ ωFxB..p"U])!c% G~*/ :4T&oԮ6/ )6)A~SFu^&"P8W5Uq-l.Rg  K9aUSkMH',^_0 $jnU2iݯ`{mPZ!#+0GK)U)c>GH˙!0<ڐU0^ZmafI2B-TRނ~b߅Y2t[pFfCiF1 dD6U3edZKT'?S+3ܢR3jRb3WB#5O6lBɘ 4IX|m'DWlۆhњe"rW1tZXT in b&gsk_zlE 2}x(N˞IM[57 V76?؟}ڊTL)`u$'nl {#so\1K|n(*Gp f٤cyS8lp'm/M*`D W*- [f޺ZJUP>4c ##/-;h\" He:1W8-/$.b JSB=ƾט'{ikLZ-j͑0sC"Gꨞlvk*sD1Q}te`Ν5Or)_FYd<+=EK#}G܈G8hpI-VU5:=Eª%i {(Ig0o=զ& @()E޺CJQ8bH~ر:T m8r#EnW:'jA?ڳy% K,_ZNYY?t)j&} j!/ȣIvW'VwETUvZ?Θ=CKԘ|L\;&=?㧹+Hqk5 n;{.xCwrfP[a^!,P$ƈ~䈒#tBGj_;8>nl4AAT?[5yDCcy o{ Ρs| Pq|x=@pZ-mO ;kD*B0j MspC.PRQ$ heqΚuhIy䟙n0 {ovfB, $m?+_kcT\@.P3fy{Gj;6Lba;ɷܴ,.BioD0'c:'gӣIXʕy&`:MoކrSИoPObyIBz o w<_l&+Ρp+;9I)Y}?V'_H9K,`[O.5:PI/ U#vouiD2+i#K+ )0KIJqp 843dG"ӑԅ;fjjI|"?wWGyZuJtŏ5&'pp~.$t(N'Cz8 Nw?W[qF@l5s!0} XDIՃn8qd^.FMRK3NTjsRF6D5ab&BK¥8z[H &F<^5\3Mevட/5SN_R鸣\[О_go!d>Y{x`m9Q\עN) Ϟa0|cFpsDS䣒mO@&:Ēn7>hrg.Bc1A6ؒUV RգϾ\ sX)+ n4괍&&jZjt:Я.Vmr3žN\s͞qFTOu)==z4d"dÅũTz3udEepE䨏!uXUB정4dW ?1 |fXS}j $@uV !(/^e2*a0=\$]u.xCaìT,?9)Rl{K% nf0j7\AV0L76ܰn^ AЦ{-YHzt8~ i?|Z<9rZcIV//Cpq]85̻aA P!TAg$>%hj x (QNQxDԽ,s`8OcЖSg QuԒg Ww,9eRbmx1"O+GPykL$ηyΌKYyO/yd&Tj';qiWQlK ~b^[Gc;U g^-l숦\ʢ8}/զ' P(Ҫ].^X9\*B4*%d 4q^f2L%Ӕɴ5 O~<{LI$9YT=1R!v"ZUa ~0ܳA [,4{lG{NI<-rve@$ Ipяz?cO)ԗ+z[ٖFj7ܞ IQ4J};x]~ c<Op '-lfABKЀɢ !aqXNAw*5)2A&|1tp/oF $$JO*:u 5!APba A,|kM0dm`,U[S0Gם^*;B6EWW<)U ?Rϡn51/0z̃)ژ$|tIA * 2"Zo tR̨+qm …sdٱRbpX_,n2C~#Й)f$: 7qF{EhE8Lbݫk?M>JIdRbG6%mD`pE rk6!BK`%t,ڰm&=l1xU# T `p:AU~~fEW(fܚ2tD 'CP[1M,ʎ[O}Y t uVVD:S7㣹6>q\}ޠsk|N,8QHpmЏJ!8UJ4 RJ*Eq6F^n3_>Kaijg~q2F{0#aHt,n (?U5 nVJ(3Ҝ. ˑdnkXmmh䇗ړ{սhĈ%OL'1l?¯  >lsһ8B>ъ~T$kaznQ;=rp .4zJ}}yޏؐI2' Զ^c}wEʷJC㊤-'Ax}ʴ…{غy<+,Y8XȌKMҦ ^(@# < ~_йړQ@m]{G ,ⅎ~Wϼys/ (U\A+Jv+iS׳3#ڋd hA}I_R,J%FjoʿaWi f.OO4'SKTZ9Kc 9?7ƘxXQŝJ*L烚)F3 O?#1uQZ~G~K#΀Θ(hDTg Ϳ>bZϜ ,b^" #F^u"9`u][6yl"cvWtζO*8X_/D.J-40dODsH@ܫ甐41{|yஙQX2%p=wێt=Wj@Gh/F8)r7*z #)*HY'r~'*I=ɛvki-j R8A#Ib0YQhxRzBD8ZzT4ykid`j.DggIJv֠(>jz1jh [n~hY]y3pcpCdr 4,D-&9u*,vk@jI,m[`HM:?PzyF0Ա^MW '~w"f1p7bFrT|~!~N^\ZUK]^8Q9+.e]TV7 n͢uW72^>@RY:Tzv :'1MLm'$oM+̓OHm fV<ǯ"閛ajy"3h"-*5_~_UҽMwc(FnZ2!۫\"+lPSIrneUNf) 73 i;6[~ly8;pwIa'0GW%-T*(ofQ[ vqT@'=V_lo8 2iI+yMYq1x>*Mk O!o EOhOcS ]u*me41}w&owBX.<-9T['``'^)ܠ)?4EiuaSMr)٪ȑ> :H%8?  0`F\*x "cf [aM,QIDu= WΥ7]Q8?xx79g:H OfC/^"O1 O.Y|9<(-/ fQaX?w8EbiI:5e.GH[Td^*3LDe_7r͛Gvv8اZf8O:gc*9/[;#̧&s5⃀,Re&2ff eg3Z|h/F43Mb3Tz"MJWTRTLD4!cg V S\T \߿eLD 0L(0I#>eYֻݏamچ4˷p$7iXۙƲ,'8Y&fJctk*/ ۊE#xn/WUaԻ?^Wi1J%fd6܂T7vAPeҳL@/,qR_UqTnqN7Mh(QZme0^-m4 _!AL0ħ=W[ t3W1gC[$,HŧWh(10E ]p/֬"rY7cj9hyO`܂ExP`̲SiI+z&=&@AVeFBԫY{ڜ:>UɎNb^z5:$@q[ߞVshY|WsW4FÞĄORUHXk7p{&<4]ꙫ{I7Mި2ǰXY!۫77 ls.w{-$]|CG'M4+Nɭʙ\羼I.֬ͿbUG>RׅucۮKyVv xXzqg@@Ӎs`$C &F0#˷# ' CB.9H&<2!ă7[,)qq !r[M5nn(efq&%9Xj% ^KȸRI ~Ew#^8Z1b&۴z)|3g;4^../>݄C?n@^yì4{d e0y1/I@]25hWڼj\2] 9kOS H>?D=lWFY\ jJ2 ->sq]QGΑp ~1\愚jzy(eN<78k ,҇>܆;FS+6P"(LT)"@ d{lrW>vY0o (z$(68O%?ؾxڜ%ޯՆZ9^N8ۢAT+) K//C_6e׮Nwroظ<LtǑeL8/t.ɒR*sZE\z /T^"dU=3oPMi^=`3D0n}Ï&ɩ")NQ9ף-]M)Ρ}n490 Zҳq5+oA-uk]1%DFi:-kө<$]^Ԕ&;h /}9twOyFKrX ×b{Ӎ%%.=žMrhb){u ? Z8M;<"#u_K >H{GP-eS#^+H27Oߥw<>YÛ{gL`lJI&4;¦fX/gP- jJm &KY|rSRzE}nN-Iy!i+YtM~!GqvµmeMmpGA%ϼwZcZ =ܖA# gy0JJJMq^emFPZwyϢVy']Ni53ʴL5Q2ϩ@ܧ4ܹ%-)1I*CUWuޚK4Z2:RyDQ>ј):?V-]`^zER'P ܣHO<=Li{4:(H\ o"6Ѓ ($JU)58TѦ"El,Υ{bx`0ދJjĘflZKA8\L:&QNOξk=>tDJFO!Ӷb"̆$Kruoe &Eʜe6f 4eE6o}E>L^Oeא8)[}zk.Z!u(]Yɠ#5 3d`N[gX-{p Azr M7>~zF5ߏqsb0/@ťJv fLaxu%\*N.` `3c11FlkW$AB@eqReZ,E*q'c~S=KI0!7LٍIVWЊA Hw\gW# wg4?+%JQh.u>]U`"[lX\O2 hح|2ZPZC *.|8#MeIa8֯TJ"6'M92QN@eX9p9~?Ԗnu q, 9guAV~|fe`1QGG>ќgI}A~nMjM8Y V) NɋĜ'S*ͤ+ki N #Ne[烋'^Vy%H&F|**zadyAiL:@K41 pQ(IH)O٣ qE9h-F&3C%\k?nz j?sVv7T'U,Al)ODUd#Şr_y>@1Xs.w)jx =z 3tO}JerA79O7ԗsȍ*UA@`ǖn+#rӲT7LY]H[GچD2+u?aO͇q*/֙]ƣ)ގsSN7 !M (x)ruYLkl0MVkM|bL')jdFj )Yʛ)y y0͎;dgVĵM_~J !/}8 "V#ƲjmHn-?m2~ES\m%8`@= MytVO0jNX,%$@ǸZ[iAotN݃-[ WV>zoQPh(d`qj nqaO:_Ho O_: 鳵-KPቝRcrhBn'II {Cdo!RL4_5<,>{v*x>{3»EOua!YDZ{V`,l,*d[08U%h+VpJ^uد"s)B-/c]_ Xk(blp>99H.xAyYCw<rqb *E2ay&bY;08RtOUxπY D1=%JY:Jk1 n: .pXL=XI(cvyaA:BGCuXM: w5G8pi'-tK%byELzm 3QU\UcGQG +ީ_2SeC{!A1- Ͻ>exs߁'. x1l|u%>8byMiv@%t;;RZ@EDilخp՗dfeE+Hhx)n|TG*E.BJ"a&h@qxZ֐bݗ.{Pnqˏ2)S +HlÉ.1B_I[ՖXc{"/(1>‰: 1h䁮0VESU(XXs$A:+ctF_Ԁ.YJf2J^Fg$̈_Xy⛔ŹZs%@x|si#x%d[J *ft86."x]U*L3+fZc {6gvS?M#c-%{L@95Hz6jIkٔ :I2ʔ2KY- y~GyeC(~9:yM6_i|ʴ-Q2^w!ؓ/{ԥs"F1T}r}C4;0*& | ܷ\Q_K!\3lZW%C#q;7vF~@fݱ9L|H&^J\L,6 Z従{m-ì_^Dt/;B >ۇ{&56e0q)i3ZwE*%+J@5h|&慤R>.3e7 l_pR(w1`:B(=`a.]jÕo~]5 i?Q$? FxW̓ZCx$-O:UMs}J;J=ܘ wt A.caۂ‹!}i&P`d7گ=*mސoN^&z)}qqɼJvnF9$dQaXv9wixj 9%a_} U"ogWLKkW7or /UDBVW~/i~@F^B5!U3|4%)u &0e߽4ٯC'|wfrR:믚=w?GKNnL~:#>h<T]%M=,4yчަu(oD8 :ZIdJ>!+ۨc~eW.I`4o"&ea+D4Ԣ<6&HY[C5#G#ΎLHZ3&ڶt,3C9?wf\Hħm,j֟%`uu$ZͪZ>iX$GXoP&FH t)3Qs$T\(o?4Cٞ.S'1+nm~P `Kά(q~GD;If&kfϲFQٴtչ}@ 4x?ݞA(/?~$ wLm.P-'􇅂uХl!Ke;Lc^[4ֽxV}X%_88dRei -v$UoPD!e|}Bh *1S~Dz*}bū?ü{ S`a[f !~Og==Uw ,e~O|ȸ|ЯDsfΉ=-s5cC~e7i7=6%jCCrR3E&_9VG \I?^Eܜ[pbff*)+7m:1.f?2)6 9),|?73q CH>n>MM\޷~DCVېZNh~,$U~4 UI}(yFЭ[Exm}Gw%eiG*kΣL;HK.*'Hn`%;:-zĸcIe] Ӭ f8I&j^u>@n~.C"bLk⩑Md- .3z*J\^4V*^; ZPQxR> |)iKcۍg2Id#zw.DgzrcO9=P{ b–[ic(td-+7xL wNTӺ{&?i̐`Jg<bu#KW!@b C]q/I6U\ՠhSdZgem8|lE-[:牽X'xvkNe/ډR ɦim̳RTddCodAmF' Ċew,a7BQGcg\|Nd=Mr%No'a}Yr}UwՈe.^GX&=VAT.ry^χ:۽'&L72H'Jꔲ}׬lFs1a8 `Џm*Lt8РeBht7mA֠DD-@moW^V讚4ȫ<@8C$[vnm`i^K=nͽoktɘqtilmsuczP<%$Jޜ&Pv[: !QcG:|F.,oPߠ=2ƩW@vznܩA*qķUBb(iI`e(W:Bsx >?Dz/Qmhc'eLK'[}aς$|,˖3 =۶O-0+r2to4>JU` P9<~dvˎO)}~ >H`Cel|ӵ&\m<|ddo?5jǡ|1DNМ ř.NBעB=Zt(4RI&f31?j9S?ͫ/f[+*-.87%*gr.@E[.,?^4ZtsF~&_+HE f:QEybQvPB]jv+TmIIe_p G)tsǓa*c/π5~n;wET).̆l˩A͙xL%[bL+`3jP))6[$(67 ) *~ ;!lP&2t~v艶U4psfF2mSpmGdg~;RiwNwFtG5D'!2kǵc{OкIZ5XzG2H; 2 -I &c;waB|#pwC%ئgqT ~{ *+-榁v&Ri܎#OTi!d@?;S\KGC7 ^lQJ&ÊD4.rzX0ce,%MGZbɿb8'$_zKC- >\k{w$G,mtf2h>樘Dp~kyA2#TH[{+9ŀF˶kvozb)˪k|/n^&kWe+ a-C莜Bg g63licW3xA S4mLSqҷc(s٭*!2|%2\45tɲ)ՠ{tB_n(C-o# \Q7iM#C<@Ht,UH >9(G;ʹ1E_(X-Nfz{TQ΄Nz.WzI>̮Ѩ>2-Jvb#y>ԁvV[:o+vB9m8K9bc'_a0'f4m;l@;us= 7]Svʥ|eC(伿k]«{wQ$T[L[Lж'oi@E U h#}>-@rXx)331Fptj6}m i dVŞB BuA(v_rp$8($<- @;q3;P*2%L\`j6By@ 8W{qF :6My؟ps{tYJcaeyvBÆlWFԂ+]69<nf39;^( xt<9BK(dh:P/1Tp{.!Y{$4QudJש|Ÿ*%z4w.RgJ+nn(/B`Y&a9ci[XyklMV]bZ&lW,qú»$-@i|[6k"i 1oJ[AY˽}d v&=̶T{SެmvV"@ґ@[Jhڵ nlv Bzu5zY/HpD1n2vհ|067p[j4]aqL⾖J85zG[Њ%]VG_^fLUNSPȯb+CN7 Ī\.sy>&-l 4VWِv\{ ~ޡ;-m^Xu͜,YB*h+ݩl_4#`h3=w sRm|ES@I#;۬OַѽeC1S>Eyű؜8r`&!ƓСA *' ɱ(Y U%TMQb 4HYAD{9+-&;6]w玂u (j*7mt { kXsuábQ9 9 EL8L%vde|ưDԖ_kB^a$+3g-KfC/T(Dh N!C!UeW|u{ ChY!boN% -^t}\w M"K mv MX$)QN=ӹ:=~]!^/LL0G+Ls%2\Edp` -;\'`hأo1>urC5{u!GmeSAwӁgbIU{!Y"[zuֺ3㞆f SZAd߬%@ @?iOQ~C|C @$݃vV&1ٌ@u{6#lFEf!Ps>-ee*"F7`4&mYl/ SXTKR93 a)ynk!v7ΐpakF+ܛN^a4\PpMS _ͷ#PUsɣ *(f;@b }V.e6o ~G09l63θ//x ,Y7>,f-KⴜlrX>2*CG)I4 }5W'nM߂OYD^M6tq#w6#264e\+g s.y+"GL cvo.@|^ݭ_&)r]"{FV"FKw >8.`=u qx$^LOH3[`8?D .YWc"fhf4L[ϛޣ40nd3wXbS9|A'f9Q/v9C|ǹm{3hK'eNfnqhtAc O!-^;f9n8>~WNvb3 FvcGi iG  r SKp)"> AW .s~#,j)=8a ‡D7 ^߅tSE*u>-_l3,͉_Oc#";yL%jk :`Ṷֱ@.t3bP`#wmX@ܒáS^5W|}IbG>_:5,Zr2B@s}:z:l1.vDU:trQZTBXP2PrtE+|>Y_4@ě>ckӵZ;Wi(.nKש98Rh8jEBX>uwy}]&Ӷ,@ySR~'u.Dt&%~q:K( 0 lz6&/n[FӝpuEC4AR=+YtnV+]LN$ELBtY2])a*JA#yX;m}bFOi4*,2|t5I,*( t&`iƪ:~aP%?$מ8޿+f!qs*D#7eX}9(nG1OoK.`ªj?ØmQXV{D O%^yg! n KcC\D>WJ&=~|2}J!S"lUk_T``f∗IS阖J&sMʞeaP7̖`@P@/cu:W("Whعq{>[)/֩ b3v[}=L- @-fRW@{PTv+$k=1éfGYnC_Dr5@SyDr+=@){3=`{ݓ(bY8=z-=LU +& *x*^k\ <9Z-DZN;jߤ]4+AaZsrvV)L7~O@AZ*r9OG1br ҽWA~\7"JO7KE]F#)8o~J䧉@ev֓z҅$8{1D4{ga߫c^6(wC&~cT P8igFs/Awl^j}FLkqX)8S3O D)~f g̬R'6ZSYKjXSIDՉ)PPB˔hnQpV15 ~wsxDXڧϙC^`]Y@!y?eH }J+Dn-o6lP:cv2fWAnsOx%SO+7IUDPXȼ@'zVx tyH#\Z4YMeѴIdh~BTQf (`nK%;bHg)O'~C5Y*;H\ACx3Y,dKR_LGӊ"VPݯ-1ּ9ꢘzRc^ptey~-(Nn$N~yZ!]Jy5񭹨btvuh([% L<1c '9?9K2 B$~:j e`ԫ̜?\@tՈgHฤ"@Vzh:l0C2]a.K`-i˱|+o$)WW9X{_U:g5~OP3vIU6C:1o,`c lH[f|S2N8ϮQ]iU) B$$ߢP9:5UvIBϟoh#GR3FyDRi6~ƞ&7"yʯ6 DO!Ճ\ztAqd6RIqB3ihm3: #=R:XuJdˠvpC`202!SG5"JO'~.>Vdi3;Y)\Ή -vWQ֤&u.x!{TF99B=&}3$e.X nCReau_*;HOT6 ޅ?y>r:"*Q!#O>/rBˢ} پpnI.hW=sPDL)xRγIz­yA^I45`,͓.n<#O![51ˋDIAա`H vH a&w2O*@{M=(*yj-v'$wu+0@+ral)ѹfnglBy?_aݐ8bl7H!VRRdC.eJ&n#s}Q̈]aI9b>5XQIxk "@N/K`j|^V^/Qvd1Ekj~(6pUAmnl#'S;m$}dkY+Ymsc7>f4w沈wD 4uS[B=$zE3UV  ĮViaTN-mi͸<C`66wP6pc;Yo49[k f6%АO€hlN jwgQTN:iZUQlGh0lDF _K{R@3ډػO==(9"었xڀ>"t/CMN嘏gܻ-)tG [Yx?ykU6AO6;wH65L נnMw\AR?/UO[x_3wG/]fetϽ&5ϫ<66DJO&ar$CbZOCo$7LY;.Gfi1EoJO 4Bjl NT$i4 {!M񍡨oNpM[,`Ij:B#P_qU<//za!],~`[YOR\r&pIۨjsP2z?ˤ#O<:Ļf5CJpT<㔼uvi,iY7w}l?A4.6ݢϕџXLѮHF#ϫ|+l/:[C(1IRQ:<j,U[ X&ǴܧƳÆr٫jԆyq\XK;cbDK#[dލ^ |fmY`M_e`u^Psq-So ^nsc?6X5t9׹2W-̥ûQ ̌%`P <@3)OOr?;@JFp?~:=hu^9isC('-{XQl SDUU(L%;Gl"o\+g$֝neLnݧH~@?GOڔǼV^ } gx%U':Rz?5g[HCZ}*vc?em'VJ4jOfk_7e)CP)!5ۈ}пqs.?Nk`a/R 5)AG+nh*|?0'o6 Xp_s,nf{~7@)R[deāO^Uc@oy<5Iv̧KVHAy uFk**0 >QpH h5q}^e!"³JV~Qc9#_g7mg* J z~6"@?k -9p6/9:ek u,HMۗ&G1!?;1M7mzx$! r nɝ}yWv3q7Du窖W+eal1fKՎ;RZ(sn@T('L{& ITGSMw5ߒGȲ3) ]釙XcuɹAp?^U TZH բPh N7\VC>޸7c-oo)Kq8 ɝ{*QIu$Y0Xvb}̄#ï; [=DҗnL1cFg˪ %^m 'C%2M週D)N|'}76[/(q· =UQ_f E#ǕJEXBZ4NVӏ,zD;ekH!r@hxFro&=vکJNe:!m[yaqI=J'gQ?w'Tǧ2) TewVHtk {"+>TM}]e:6߷u&z-RUGĂ1h!*{ uw>i #3O&pp^W czhjZ@GdY2Z+a 2&W& >s)L)*Q1#̪ol.! G!Uag ϟɝ8/G+$|Ej4fXj}QULrO  MvjbMndhZ&cLs_s;{ӖjoѢ.8_Zu)sA30;򀆅@\n&K[]`-7'h4*lH5Z3O ,lFqj58+6TU8(>T;k+;|<>O{-@M&";"Ֆu.%W'v7;>zS rנ j;8H PGMN#*#{ҴKvyL6}wȬ_>  i}ߠyH𩝵s҇1ԛy#裙.HmN7-~=}" ɟ|y6Qo[ujvO NMMC&.Hsv.p~͂ g1аsCr@S'C/602'"K AOqW34}2?̄3 ;ٔr;@yB޺iou8D!@*Q>M[X_uIeX#jR tvU hsšiΑA#siǚ$D1r|/ţvvM'-'9\ O٭a&rدRn)O'mW +la%]LLq:". aSù'+,a0 | xVr:&b9ݯ ny~ f٢Ͼ8% `(AS~rz!:H\QѓMr_kJ!\8;U4C1$~^ٙ(skIFgq܏q1ZR6MýN;5^8zt_mjҰDY`66UWCTOaLX ך\ 5~Urw41u@8(˧KξGA){ BIϓ[ilI̅LXV犡* 7:I%o6:#'xr.oW7[X#AtPAM֕w3zk.ɺZj":wTP }uGв3ee?%dkl$zs!X2,.Ew 3Ɔm' 1-qvF ηp&Gb{{]B¾J1<τ3g,aRLߊv }~lNB֠%Xd@ "nA>O?=:ruDNh3*%t[ά9|Ufx W)W7" q8@< )%)ē̉Z(LlUຼ^wp(h_c:+qFVaBV@}[ mS:KyCr4̫:g9 6 Yпw}>telz(R_3D?*W^Q\9O=}+FNvТCVWKВ|q"_j.,<#)OU[tXEשP( .T0eݝfSKpW}lP|E HE J=ڤxʂ f`ۥ׻ݿp+IP}>pa*G*Q/.XcN_ )(<~fkކ˨D8hcw}pDV#הb-ׄcQiɓ ׸&iGUn҉\3b"9V.N%c!iyïr MӪ"!}"W@A)#'U>:,$ƍ[û9c I_b'LnW2Yp%ZTrgd > _x}Ɖ:*$M_)s2%ȫ3 J'[&$θRk"U!rcenɦ LfKfb}D}E ꀂ΄%MO&{#(|/JY09f"|{T=RqF ZN] p`>dž_`8~ fC<v'qmXe:½g}wf~ig?sw5ht3\5rpap > 3Ӽwp 7f B+pJZ5ոEȫV(x<Y{O{kqm?k?y-Aea ;$f]gd@?1" qd,.X%JO!{ah×0S5=v"O: i,Oy# @/3Z(y*m,za,Ɯ߇mq.RarOҔ(UQQB<)*= hlLWY˳~,,HHmIx]z"V~ohpUӨhnE]a#:i$"z>KDŊbnj`I']k4~;"Jp ^@F[o`.w=[:PE\4{jNVУАx@k@Kdhj~6{Ha:"lÛ#T0B˟ #@2T0erȷ#ɜԖ[=ۨtj8bBN*Ώ&/Gl)/vߗ I'fV /}b'AaMDS턺7`})1s'uA.CeŹeEt*CX+?ShG JҴGsxJY+uj 2km9 *HJS'Oh10#No5ʕ\_xk\y/i:.Ϩ$R^b )EP\9D Vѧ?={;[z~gk? VF]@jX"~x[y7kU; Χ]7 ti6̖) f=iwcsxէr>TUPlžS96 <ˆtά4IsOq_?WW125<`WtXȩ^_j6tQs2o@ I1y*]ܞE7r.TX ϾMC'Dþo$ d2P ow-: >XzڒbQN+s#,O)NK+HN<``CNHQg_QnM$B>APkG H@jWL_St|{یgRzs7|:uGT_Q, Chcdfe&{;gd,c,X\vՁcnO\;8"5£^R-qJ |>u刁#?0ν\ u(xQVi U3D#.Labo:i #[$H{77ڋZڜ:cWD ' ʰbd 0t!Mܡr"+P2u}8\egw [i \8uה |+Oư'dpk-D%`px#eӶo9C+缞hǍy?WS?y:\9XZӛaf1dO.@e':Y="= Us+Rt{fm 3eF+(U|="=ƒW5"#{\P'BQt4IQ!QKSra8x6#R/gezĪ Ah&7M;D\kln&l@ɝ| RMZ{Y7Tk1keF$!0 QefSuUbxckvD|Lhs}4`Ti F~J`:qG $T8Qb@P;lPvfDžS{$W[2?$Kwɥ߸i`Q>^ Im1UraeX`Dg}k84u EpjHhSrcx QpiW7Ĭ~'D& Q1.\!M|݆rÊӿq=1̓4b+$ٰE) 6ʨedĄ+zr.OSler8*b\y9V}ds wc] p>os8f<7S6 dN4/I+&8vT|w@rkJ~aSՁZ )H*HcxC8{:CR50|NDo>[\TvRDo8uBv\iS=Y7gbZeOUgJͨˋ(F;ujB9MEiմڭҹVY,~Өv?ZI&ħ\&!?7 E;nmjҋ\X|Lj^~6&팇M* 1 \,F*ə#l55(FȊ|Hp8GuCŧ4J+oF)s^ 9Gv+*dhBkn61> ^,I ̕M,{wsI.: 0z PҘyGP*{ gb5o4Vʴo2]!pI/ce\#[&8{ym[Yyvr/x=ՠ aZƼ>ˮ-* t'e.N\RNl  ̶F%fб<tXfxB"|;&e\|L-V1[:T2&;kMCjm㝗DgoU9rJ928`DnnziswUZqPr{Q-䙆pi5Ȩ3UH1c$cfɶY(6QwrpO^k!?6~[95&3֓`t1b~ @^*5wWעq\T%;~K U aCk=HV!}dPqhR@"FRrn*K*^Yk$ ;op^,_dMHt̀wT2kę%~]l枈tvt9k҇+I"GQ@KAմzƗ^`{ͥOOlDOVn +r-+E`[&!Es8 UqcGV쐅AB[5eu' zŗf$i=<3W#럶H (қx=hWe@ƾgJn"吵/(:ڎD'@GQ۔ yÿ@W<6af/Ivi\lj*끟|6| kDXt:P1SH*LrwT~47MDO-A odh< oY-w8\9XNtN;PPrDm\u`H/! yFeuE$T254aT>Qjc^`b%\ Icj꼎#ߣfXksc?0ņ0OF֦ sxz(qAC1=o/W{g8)\<&:Zs>F^iT\32o}m'T O*R^dt;wc$04 HyQ95SW&{J \ ~)E,>`{+tь1U"c^Fb@f#TGjxveQђ22Lo.lou`4dv{U9ei _@iSWqV$ S4}zbQpUale{[+܍Q{uMa`7= Muа=(lIk4Y`/:.50.(^ao3D GLn лa̮@BA "GV 4Tbu^ %: TK\"(nA1tg;'ُ.+]|TgĄxh07Sz-Pe)q]]Dq"Y!  `z2Y+wu@xdku%9V>4|3ǚQr6"&)( :r(Jq[|36_gen]}R+])U*Gխl59Hd+m50:;>Ln#E6Ca4c+]\zpiNKN~S.Qk+-k E-U7#`F^#Rj) u.=+*̇O™1qx !KP[mlKNJtҵV! +a!ׇ/;&(14*JΠ.jTظ\ 쮒"B.|ԧAeWrUP*+i 8~sQÂ̚K;m;f77(U8 ojZH0wG8+RH)m&&mJ|++RKSe`(ߌ'~ؓ5 Sh"3e`R()?UgHAgjէ#AH+X0*0VN ",ޱȲE=Drx7Z+L+q 4|ԧ.-:vמ]K}駣,5)>ɛ:uzrXNf%U_nb-E0 rDbj8hJ*bpbk'JΎ>d/}\2 2|78]/ߞ5vv3$I{-/@*?̲y?(ZpDh"zVHRjUιUZt}}ђ&9k_s8m(ً(6۝ д<G$̕ixvg"}Y&?C}7F#B `m!n8!3Fh)ɦPƧ5zvkHvhfbr{, ?xG4g,- ktDc!&V.zd!S-55jw/89`h"NfRXNb0g*<1'JQv.q>RAJH? thv}]|:a ؄ϚS95c 6zQ!: = ~i,HzQGnF2Fv>NPb|tupbrz};TQ^x ǒ.l{)K/b'E=.q}Zpvt1"6%:L"Rjx0J{h5j8t_-$d IVIQ%e&4[Vs6(t#0όsULu(A sBS9aoTj*wbӁ-G#Eŷt*o^. H.1KS}egT[ D|vG r04#맿d> G 0mо:S_J&Ƶh~N]yGM|\ԫ@0IڸT?׍cڤp?#qon?bؗ]}!k*Cz?̿\#BHYv slZzKBQ#-kȱ8iϠ*<꼙a<:i C4U ndzUAl#6.4'~,GK5do:S71oO{ :ؠ"7mgDԾ\f^"6W>6be-Fbiuto:=/ʛ0 j cȝd]ޚRtc2y;̒:V5Co7y IAJm*@ tM.Lx(uPJ0sRZRf05Y{@mW#n}Ӱ#4Us`%T—mXW]!z ohձl~[z=MAu:15auXqyLZX0JxNi+w.Ъsi}cyem'5+{P^JyQ v2 xapӞ(V]-|N^CGE*wj5.0ȹi[-2miNE-֕է=eElyJ={p?0oHHwW/70">1i~M|Ŭ?T}bN**'%zDlN!c/׍ yL`H1o"Us3q3fHH}18nV>b{pI _t Yg+a;t\t"<-]vSK}Dy`r?"0 G #jʝ=A-͙[^~"N֥?]׻M[+Q{" - .` ƱpEx9N &؟@gX+yfxyCCx) _R,g7's d}sI9+qmMXE1=y G$qCdҦssOaf8o94 hUZwĀ ӀF(j8*e9>TOH[O[)l{.yApjIDJB 86]}>ɇm?PRi䶡gvc厞pBS:O+>ue//|qO:"&MIFwW&O5lE1Ol )BqP/ŏ떈zoѢkťv!hseF%xr3eXO]@x^#7>$Ԯ=ߋs7]-rԼ q1<8@MX8S q.dBlm<ԣY9*u,>CĹo[O!MHZ*PZ@:.x!Q[V볟K +JqN5?'ͬoِCJ@bvz_Tz>;8:ʒ'XY`I"Ut~!T\VsjfA/*Gy0tp~XTl dm}Aޚ,y9Švc;B^ͯ̄BohkRTY>iȝ_؊ ZsRUoZ B~H'ɰCDsϊضP MV^SH ]uAg"-jXDPJ 6VAc  3wK۰p2[0'1gr8.dn /]!%=ʹ>M>/l{Jv"}r]+Dx.VEH#zEirW5BM&2&ɩk-5j(w M#rL򯴓g ݦcTAvMPKۇ fn'X ;O+h`EЅ[ݡwvy'>Ɏ= 2%'>%AR,bhf\U>C ~&=mgگerw^5;|Ӫ9H2Ve$ 6˿q`k{UL@gi( sxT~ PgFJ{@tEƵߛ*CC{hVdiH)$;KWE !âjW5=oH QCt39'溅? bb",m&)4-WNP4}<&<+j 7q&i`FH䪙]yR9U6L ${>nObLۜ ]˝&V[y\N=.lhZllIZ$M"b*M&d.g{!y|&asQM)SIFRC ,%^`Fb^ N!@`l):7}MRkS#*瘀yu0AxR/[[SMy`<=ʑ,i Pz{5U@&Qϯc[LJ l ׭7V=K A>n@!Yr2sj4n1SR5>l{C@gyaݒ97VArNdHÃuQ%;f PN>߾rKhLoA:6el\8x,]!|'[3bܢ@jӷM;y$EI@Im"!~_ &Q>9p.F3շ UEʁv_@AtOΘKSB#|Ѳ#2pTdc\w/ I-("V-Qwv ;dѰ.fmQ!6K ߆b m>is+)H4w>Sz r;T 6Z#t[78.Zo~{d$r.crc*2^PUzvM?+Y>N>"㓍8oPWsc(/by8LOIlnb*6+ˢ=%$ ntݑMUk6m+dꙴxD5+ղ'!Zʉ =qBT70L+rPWǯd;?:_Zc!踀4]dΡpR}oMp yHNP}y-I}bc'G`|Hr+//ILݧ}z':ӶWZړVktGmA*g:B}2Z~KpǐG]~iG..}B5(/k_8;YG2?P 5?85158c-nԗVd1SQ8T+~V"$_%ҜkE>i E46uhK "m7RTS'?HJCEY?CeԾX%. z.y;H# 7Hbk s&@ sbÙQMX{,Ӫ ^zL< uil(ìcx92yg ٫y<gA\Y&>;|pYQ,m6vdSloė/*s.xZLŁcJ'3{,YE6e\ń3qw庽eм}Alp 5~[!g?9,!ETe,v^h/s H @3d&~'kr?ug5q|ucN?b,@X݊WNr:9ỗ?#"Zt@*-P8!57bY-RhTp)o#^X^qM"ߜb5!# \sMS "EWR`uÕM}_Xg ,i Vu8Hs QzHGy![]'9J&56O>ؼ=ȫ*ГK('t&gA>73_C$jgD<5)i+LAE0˕,r&-q H]dil[OO1|uK4QD\w Ei[_ Y}'W]aZ5Bn~K1Eg5t84Ys"^~S${=?iRm<N.LeJ;&m4&㡄yVJb;Ox9iP-B'Zť[ݑ\6{u$&`ȜBqq;j~Y-9W*eUz~>_J$ ]4; OiT\8qzfzb mAG>q|HiAaB{#R~ W㉈ 9'S߆~ӜCum ?kj4=Z;s-&~H_Q)wgf"o8R0~kGMUsn?yiۀ ,$g<~}W mJp#p ]׍ OQ1ЎE?2uedB6=1 mCb\pP"hG=hUg|L۹vy#9\g)2Bk\~B)3ZD&ͧ  d1,8}h"rU#l[k7 pLk>F0eZS2;4)N;-LJE/bjb0,c'&59s_2'08[46ۜІ|pPI,_=*ַu/2=) gOf-Y枞=HfREAܜ\wꯈTԌj\0Ыuϯ C@Ba7cq1 e頖9Ma꜂bAjPdb_ ESe43+'/:cμtl^t!4c?c*ۈ>K,JESUe;@ĭA55`@a!CVT/ܶDH{GtpCI b3)Ta$_ 'ș LmOEc;pXvAk#Z@?/.?"ja01l}ans!є|G *,UyRwϢ~ h9V&TWQʨXo,ρ DUbдOA(Kq%%ŰAt,Te |_& Vay6]|9!3p7{+l2)@Bް唨&6-'r:6?׵fLS͎';)Z?W4IS~뙖eKimΕKrLuqP+[0+E~q1e~Zyz5̅>zt)Nz2:6WtWvvyE\ώ:؜Lw )`é+P@CE$jþ>JFpй!e#ӚP.+N;i ?8DzԡkK$FqV.}BҢ58Ck(3C2ܰM0Q Xt¥ vW[ljoEWh7>U!5L_r=F}PĖ=ű]6.jEn7 `ck9ዯ5_0Pd^GX5R:蚛L`Xl>5_Sй8o<E\~pEmZgpHow$9x7@,<ZŘ*\hV_AnXfy_-*6h~.RRT; 3E tČOo2˱"cN~b;aCn+WX*pc.1.f冔GPZ^Ji }BO8UWRzIe#R)R@6#inÔZKiu%u=1Ai> -ŸpV=Z4[έB,Ls;'^nٹyь0~aC7K)e(!bH=k ɓj|/sbkfPƿJ-ER%S3~$"AdAᆥhǐѝP|?YoQv#& b-oq'/@F՗;pڳ<6ҙ=Z΃jLHOgu4Ҧ4e[KZ~ yxMUz pfƄ"[/8Ǭt3r~b:O^ _)Z*qmʁ9l. D"L7q N1Q"=lNzCs/60k򎥧D@RL6?×'S֟2݊QeW~tXaV[J/r1_dm6^·HTQK/|0XF`H G4HTPPC@%0|.]$̆;9Rznmr{pgn =9!RW&5@4 WASeS;?R2'W݊>%݈3HwD~]uSFR)E#MD?AqkZƧ/yy~B\FjYu"sX?99'c w3Yru_Hdaju`~<է)nK>|%p3dZ٘jϐ;E^1*ڊi7br)*Tl[9׳0ɟai|A oP 1,Ţ:GtIo(q9$y@j4@5IyQ\w1WHxD;a]= ϣ9=e:\w> gp_DCg?er.a2A<)|,c3:j&aȵB?L!>.:cC- vCe zz)z9qm xΘΏ.E#.`-h%drFIJ}.$T0;£C,1[28'E)= }L6UOc29.TF棪׸<ϖ1sۡP?ncA^Qޗ9+W-W~ Np-b8pkLjzevf7'4nԇjzObq,V: "?MR*(r2iC,n}PMWTǩ]p.On+`~+jO沭#:hq'GA:R41P -E*>}Vg@ goo7Ly`"F]g7/>8};4me낫]Mg@}`"C\.HR9-̊ [aaGfԯ{M>|޿ҫ !V}YY"M, Bf^ %2قI5x=.$[Uٿ<\~;M m1*{y ʪƘQ`if̧[ 6UKԡ763vlJOZq~d;Ҫ🠙alZ8ʼa [ qnh߷ ha=ؔ%9QF7N,L߸|^iN13rQvȤ*Q #0LH]*0ِ H\/J gҋR3zנϺfK2U1ev5}9q *@Pb*T#c7w guzBLoUa``+ 'x>啯2M_ R)VFfM| '%ebnÈ*cVH/\#"`H@4tjM؜0AWg-Q$3\R &}Z(v#Ùm$U:z g<96j-txE3!Ih={`k^Dr.Lz5C$Îz~; A vI&/RuH[ _l[H,=oaR[hN qX?j2پvAU&x6a,)/<s -7iS#:J[c6.,,эZvwwq0OVa+%y?<2Ӈiʘ8xܞ+~tZ'mcO+]`nM"qNYdr6yfH҂ ½Z^_;pMpϿE$9:{Ge*-^|UN1ƹ_HUp)Y~S d`_ITf<#d[VXa"ﰫ#o]X {М^xIpt*J(U_67j5].k i2@;*L.68Bi@/<V%..x) ?}v0Y=^K`pj=Gfԉ]N7cpٮ$m lmDׇ4_vc.g[8 /RwdwLmET~AG6GmֲR6$_a޽c~&:iETy&#_3)j3ЁBYyw_(j1^}"p%Ѕ| s*~'z@!dSSvbjZy%%\v~}"r@qQ<ޝ'Ln;'w3TOf=p Xl5gfbjf7|Z¤c! RWcկ'o (}润lIjADb7+@./6 VDpyv4؜^ kʠ>Re4h ]m-o UۚÆG 0)%CGSYzx͹oHqisP+`Ѩ5%%яJGt$aXO'e5?g볐\̲R\<%2[(P8"S5sd[v 1y*;(Wi%4.'5rT cgj w3{ ]DԠ9"eU qƏX;Ͱ/?ꦭeNbd+U._bKѸJƝaLJhp$ /Va Ą./2)9=3H4vx=$]D KHdaf-c׬1FrN7Q žvE\mO9-6R歔\bq dvܐc5WiuFY4Wn9CqtUQ6*j9>/úCo)3ElwTN!}YV {atSƆ_J$>>l+]=Фig{IN*>oI-t @+鍁ZuT;JϨa{Fo'^eJ8&MvvQ;ܬ G- +2{/RY[/FTP^IⶌmS:~s K(UTE:gSe(7gXP}0J2deaqxHo1V9j).T쎡~oDj"^ 4ttpbD$;' M FT!qb0 YNŜ@/[So^긌*IʖXI%,DBweaR=f73k.Խmlvfͅ0HtjI:)s N+!8pWQČ,W%SK0$ c1gh;kANsyI,R7j9"N_E"bDTO2`(./ ÃIxC? mk_9u}ӊw*=ڈ{+757j p3GZ}U}D0~zi@ԝ ф rag0*RV)-GUA6vJf#Aƚ+[ ]9@o«֕0ɉa{0.TVVNws"R\_e椅^hzǾ0Sg'O0MUy訯 2jfuv6C 0r"a\J;^## <)1DMWdɓB YK>^Zz1Nmδ9hO@JLf@o5ȁH`bw.P >*+/'#)^4?"]Y !6ʑ}ۅ-ڐLda\ߣkc4.n6#UeyxS2<<0ة/ŇF!T] GUP~:bMhQ"z]XSgE" b OG>F'&w '޷x<8ìs9;?\jS7v֟Q(i+V_^Hu+>c VЭ3D,!DJK ͍xFc2A *|GV_Q0ZG^|r M4Z`ꤏjوJ&n\tYn|.XF`F rGzX—?4f~*kgjtrw\v27r%/cr@I◥J/ xP))>&%nҔlJ΢~( ^l@ۜ)kr=^8׳w3WʒhQ* @5#\tS])g/} 'TxoX,) N-p"~@$3H煞+*tkb}6|L/C`U9j[nF kyYFdo\Vs@&jP%ͦ]WVQ+;Y u(~351AJa"U e@Ueީس4ց@] ȳhDM!쓕yB3 g L`DA AR0ƃ* IzܔwP*i\!ΰ?kog's%O2kP"]՜FQb$˅v>[3-Ja+O垚 *<4p0vt9ĭf57B;7=Ï=b/O.ƙNf!L>*!9[#N!×F w,͘Jn) w׌g=/7oJ I^#+`Uf }?A10wԯ-P.G=:_] H;&bIHS$s J[M eOJR2' R@i(+ ;AW73MFvў;=#L!bY(Bh&^{/}dE⵾SKQCyp dנXC&af_=pOٝe<;!ϻyC[jad/uwჀצQ- uJЙ Ya]Uk6Od!|EMEWv7ECR*ti䜒S&A=ً9J [(0r/YJ|}OKqŶ-JA|af `]!n%g-"=*}yg<(@L- BT<Мɮ.O؋%ds6z6pg+b>{; h/5Wb\ћap!Ejzo"a˓#ٟKYOrDM* H){-Sja}O6ǀ.d?^I x9՗r <> -S*33[NLK»L=*hbe|];!.U֠w@¤NaUrÖP®0>pzLݯeCwp$kz:`@ hvv z BJ3#ʫu].;k|PK:^',!b: T\#} 6C:xeh;Y9pڂ !BH+aP( *ǵ̫;ܻ/IS͘·SlCcpl+xRx ) iZ@Uh್jŌ=L4j3S[)x`BLC{fڿ`L#%K&i&H~jp~Az,[$8_ gv;r<4x~`Ժ#o{~^Hؘ1oЦ/rÊǽRۻn/ޣQ8]P9x6“ѻ B*/}aO͸H^@z?w>ZT=.hwꌌh5?qrxBH~), %Jw"泳;,Mm޶uwA6 θ{rLngj/ \]SgY\/+4O z=/ *2%#8p^$X`0`%ar:~F\޶ b<yAy=[.ՁFnp;0To]Xszug'~4}iQbP^{?:OTdwr2-⭮|%HvrnwoOĖ_w \.NN0M|=D3t6*A)_mx @Zueaż~ +츖0J铀=t?mo#\J찶&л1 ;îpYOpdC56r`/X070'ZYyJP)%dD104Mtp*(x CDd?E/#WT1q762uV}nК(y:^/~.1M-BFD;Q#t϶OpL6)+Y[Hw$?fCQ~\ t˰.xT63_~E su:X~7CzoBExN[(4ҟb;o>Q9RÐ;#EnJL5O05*ժeEj[@%T-oc4tX]cKʜMTB'&:M佌G~ݻgfҳ B#SHwT\qU!RSCr$u(QKe$bu)@O~wXe8/-0tWsQU$x#ܥfg Kηj&Vrz_%.7'jὓySJY)0iTfE;+3ȢyUɅE# cV}âH+ura|IW ¶eM#C 4Io 1KUH 7f}A#ؗLri^D5\y qglK(wLI݋3^? Bq-UlP fRJȫ|X]Ǖ.}׆߲O÷7:h~St "+'fӨԊq_iU;qZ"'R1ChJFxSp#K'臗&y躅$1?`_hnr=wL508u]6/ %9 $y!Ԝi t)9K ;RT[؛7%L@9ypJI*C;飻 w ,}TUpݥSZr5:IFx;ym8´հ;L4w,t.OPkUNI%kBZ\5߬Xkt~x*`ң_7;eԖ>01c'Sn?r/dCť|NN8z|d ͖>CWm)ߘ,zjO-t\Me^ =O2 @{^qw,R'rͼH ƍ>B?_aQuICg+&-vBMw:~@%dۧGͣPq ?' k)7 b }w_up0J1(Z_s7˚?棵< 7"_Vt){ҹF%e@gY7qG`WTBFUҵx 4` ȥ ጸ8 i?آ*;"e1el\1ؘf:ݹsç$M4ztN!66S9z @v̙5 ]w؉ L&r =? g+'E]H47`|ZgoH'BMd|'vBj };5SN,FY,z0o>.zAqiKЋm\۷?J1}Duӵ͝B>";/(ltr}i$9´jQ-/\p5 QӜs 9ܙL4'̍ lRMoPFpk)~%PYT6rtBv"qdڕUztl3 8vţtY1tټa{xt:y&Ȓ TȢێmeFR#no.ޥ'LCRa]'2?2amY-R+zquSa3B-dT=Q_P/#svmqe o% PJKO4Η<%<un]-oh$ǡb!J%p[q-A% Ҍ>RCЄib164+ۗӽ&}t҄% |=B x*N)SMwb{U.<$;xvP@A2#Mt/ jQBVP!A+=9#(Q+">K*{v[p/cz=F\Soqĭʤ'`]Mb PtmcJڼvV2@$/(TqnQ|Z ]E[<ħV}͛N' RAILodW9#|:˻q#[fqsHa$;:)g]b_=jJژOj:78m2c \IZ]6m Mv58z 1sq3E msfyez]c:sosĴkå6@+3QT y=tnڮP{r $ cW[,^cG]$Yj(>>LTbJq@Fo:ַQ_)~\Pj9t~WF2~kLZr"hȘNo*8C;P!x*CDJc'n$4#kܠ!JUoٌ#&3ޡf`m~&VD1<P:!n6aB9;(MjTg&cCB?aC~Nn]kz(;JRAzJ'<ʗ#PWp ǼwZIoIH-S8yo\@tP&4l="?q^GmXkq݊8-PzXII?s}'78 Y+v~ky$0P 't49$ qnyfFsꖶ?a4RiqPTq9oc|tz Z-x=+{1{5 :QWB?ݣ[Dϙc9luF/ªS#ms‰QM M5SVI){b!Ȩ(z kxn*i#N ;"*cO 3b 2!bÃ5rbKلՏoֻuh-utpQ̌H Z.G}+i0L;)=<=`H u>#=,5~t޾RmJD0Mmvl9. JOe8ŲGlJE6Rwr+Zw"L@ʂ#}G?fD# hYJG4ߡجZC&'ظ'xū'=&,_RB\ kn/% A_\L. j BA˺-{ԡaywPW4McE|pr pިصhEp]ѭ)fpAQ`N|&3XA-tí4 XCCׅmm{ +߂yX34 )E&r?Ni\Rč!~U-A3x}TJwb^.YLqRگ~I`A2ta4i>[_83E\P 9!U,%8Pϡ; 4OBkpkqbЎ)|><^gr-BIas'8"/$(%X(EePyv҃'^lӂmmň_eSz)=&ÛKPoj3 B\'íV &/la>yNTƐ(1]כ_7hnvɛV-+x劦ՖI ;avzcM1^{Ï_ClM}{u]IڭF '(>rAL"{t7?D70z-ռ>H85`qZxt CȤQtԳy- ;Cn~ WyBJXt`+c)_8EK-aOuv۪D>rx7 `o5VMJȢGQX lNyMf(iۣ5bux֒~'neUWD*=2id {=LEiFt9AɕC 8! Kuˮtj">F Ҹiә nE$:yK¨`눖{ B5C_<(Z60*MVTy\L"FZ-Q\*]o .^g1c8Mf;&<>(ODi ]*c햇f={kܞv.;&ɴʐ{ů DO~>Ml,wE/l]Tg 4=ټw K$xZ2du`ptm=x)%ǐqTyq-kZ!i;Sr8p(ӄӃnzVǧc#@Y}V,SFm[RXOpKRy$Qg$]>h$nO C%Jy]IqZɞ zTr Z>{1wc1ŀ8ncpOq8ZMz ,=[L4nz8Ua1v/$,DB1yOIpR vy!l܃3xw!ֈ{Р7U.qͲ]6Qti}1ex͔ A Kr:2洂{Uh^UJg7xFUmJ/Ưi6b"Ć7Zm>/g7}[ ^t*В}<գ hvgtxAmFkOYO8iWHun'7z\n.F/fbw6bx%RʝЍ{z?z<;"Gc:^ޢ{x$K$W*5:l9;/tAʃ`5)t3IDB搷*⋈NH+fC%vKK `1k껻__:qw+?OIVm4ceNG!ޏ2v_܃I>K$V\8H1bƲO;OBQK(4R@LcwpЩjL(3$nc!\VGBahItv !TtdeǖA+&I&q3~Vɜ^odBa% vW{L)CXE6N@ȣD${]kh$:0ou5'p/:E,]G0CJa/ܠg OͦMj3'Va{J5gԬ 3/ȷw6n7V2, 'ZkDf|Ɖ"6o{E'R?-+"WxS".%@ DhHsf-#~U5XG Htls:$;V^4WS=̴f;U_Ru\)'T5'3ToH ԌN~/p)0j+}Rccz _͡c%C0l5̶s3pG%;0FыAdR +!Z%7I¬t3>x%y=S{Gi72O ;{'qwXh_2WL9ִ֬.| T݉OEC![|z3U0U)=%Wj1\"kz;Z[&[ Hz `WfTt=o I }I5N tkg&eܞYQ>$vcl6sJ>/u7$#˱GZ'8p&~e;5Tg k?UH^`UM1(Oay$+lK~֙+>ܢyTh7 \QjI,*n;y(ecXJӁ2,baYVx XI<%Zr=㻳&eu`(֢LT_WYa&vbɧLc=2 S1P#FC'Qeb V'9U<`+tSہs?V{pgY &rJy &C5-~(^Du8<-~Z%-]939?\ڥ\e7qJ9|Lѡ=L_ipSQΌ8\mO.agD;bX$ _9%ZtB_<ņM#MȾnQm?d~U=5f0* FGQnX9DM<ǹ}>8|?`C;AV \,ڞc,˫>aa%ͺAԷ7`~EA3F ]-:fOቯ\0 LO.8#{s-GyrM!E.xCqyߋCmRd G*0!8z+as/^,C BWhK$rT_j{dۉ#rMX}"˯T/H\˖'*ny9DrLC9y JaƦ|.GX<,FX5q N*A ߦB/Ҭ)?6tF{!,rG8U߾m7O \ ZUIÝؚGx%6W0cM-Rcy9zTE:e*5]HDÙS;>(0Ao<|0QHH-'S싋`,S/7+ebT%Mz}8ήi@l5@I 1fG-'=1Dϗ/`F/ A?댰W5`@G*[wħ=9y+)xiC )VF*$'|҈Br|\uJ(μhBЭR^۷U8-.DbpFʾ&Z-2rࡿ.Z[c{ϑӹXEMkD_)ɦ0 8m|=F(|ީcyTw of +1Ԛj$6 r~bsމ-ⱛ~g##sПzzyT>e^;au! De_y*M@d\Ѳ S @V]@\ccZW7 b0yjtP 2;A/vկG2k3o~3rJRH >Á]@zY\DIn^,%iҩ)64?z!CZH#h0"L>{L46BEooN<1 :e Lj :L똊 il@[m۟W:Xt:}&DxFy%Hu3ګ_$*PC?T,5r ԠVx+aݻRϗ$8#BP-G̓ON4 H̰C(j`& CxkyO< i$\:>AM5:M*=:cqɿsE>Woɾ-̻'t#%`ݛ #s&NPmw]iC-o.Uƾ~{: 217Xvb@~Cѿ8*$x ZE% ipT%0ts#4hEw!4#qUO=?FMnW)BZ5ЄO=\\qXSV2AS21HyΕv[uRWXQWQ [4"2&|r^jq Vv-߶^g)ÄޅJ#tޖzCF3g6xWYe_A3s ,:REY-\tրvQl\4PTBaVnE[vœ'bӬeC(?1;Оpqw2MC;\{Vuk;)ذSV0upc1 (QkCiz lFeo=^ZZt3~NG&Rڽ8H!c͞Kw9^4Dl.W8I#.Q뫋I5L m*'*p'wN2&*?c0CaI!Rv MEV g/>+tz {p _w2ΩScZgƩ7O>%OC-6$9_mKۭ+u=$OQ t VL0gկva]7:3{y 5.c?f[Xdh0juJz.{{K 4jf9JS-Z-&Yg~ hAtu^iSg 7Uk\d<,04?|eHMm6ֻh@rҞ3gs i.xSțPjטw@*:<5Z(_K; )Z"9&rtaBm yi,5} juVZfi(~v%yTcpJMg$@'}Ծ/- Ĥ8H =T#8%SwZ :Kc4:j >+#7 rlȶb5II9jevV;\Fy{%@Ԇ莞O#\# n;0>jcQJ.Nj,"O~sw13ɈozjbZbBȔop/{E1J%g1_ѡ)xQD`vĉ|dDVC;d.t<#1EUy__uZ5܋$y@'?Vk~8%vkIm~UxY$N\3p(Գ|޶"<2fBB A8&w2I${iD8m6l#M3?#!u^ʚ'CCIxPLI^1;Z-{*|S`T%|Fg4  qB< ,%e9_RS*Ra5 EFP'D3J61xodQW~=Mtof}KÆԩk(fxb:0U IIF&!n{OZCsOjM ~+k5y5n ,Wj4Q=-*T&VWueݧsZ`sߟO67wb8\O A GME#-TVMm=-rH$N뮟 2[|=Σc+ݽL62foC1ꪞgVSl_݁ f~䱿 g#V!(6+,`G3N ٫kl̕]v/gaլRIT(7DŽD7׉$ǢW&^nȽ<Ӌ~bU*GP!cJKld~@tga3m*N䒬4T).e+^HF"k|pweH5f z*`rh=aO^^G]<ڰ ØqJhT%N2(F>dmRpT$,1Z&F G!RM_f8k('}77%9Y"-7#~qc˄[r6"|%K*ra'% JŜbƫ9J QDoYu 舞3λY:7c[*H0:FU\ڙQ,Q6d)@saBan:Xs l74]!4IfGD*ZQY~T!,b8& OT'~D0,b>䮂bbu- E _+oO`+Gs"S*sСw?Ou"8*L\LYN8GԦ*^/bL"}w"x`i%Tva[Ixtoю6UQDq?Ľg{TnS0\ivt󫤌QO+( N@E:'1^WsYo  ڬoăn `>A&,Xٳ ocU->R=8 1z,P}&ыІ&eAT_({,@}ɗCiqUX,NKa0#f|5}&+#Bd4;|\y ЛçoRcnv3p JJ61^ +a2~~ཅktcwPPOVUt5(V~fFd bvS١༣ ޶#u/ppUtdMQ1ūhOi8NƉ(3NEn3wEmOĽ(pJ5wk:28 hҭ=uڠE *CpN[/:>u׌ /WFTL~,\VNZo88)hY\`^-'o1 7 J 4KwtC m>z` CDmܶ֯n.rIM2Yզ+. پxylA# A/"!}(,@q w/k[%~s!5'FDܜX~eZFz/l0J a\N bRX+w}J:ҙqc 9[>F $]wH٣&a }2ұA^Ib<6 QCtV0]GgKTL-{I{MI5/Jo~Z՟-$6$PKƤASVG7(/Y}#/!c"cLHtR$>w1=Y⺹UQzsWN0{Q E;;Pׇb;گRI98++=6cY`: 8 5h$#b'F^M[Q>r<Ro_g%h)D`:M?$BqMqj4һ5,g#OJuByj^ẋ* (MTW.2C", zQXT0 $u7""VJKA!ʱxg DM޳ _#ZTyXćϥ:( O'>Gn.]ڂ5+7sz鸡ʪ~UO-O=kTv %ΈFؚlj +aayҹ_jL{J6½NgPA1]<0<I'qIP8ӼS3\0 cA@؝WCS*JfvX7:ͰWmh5cƠOTK;lM1uDj=:uUv'> 8D}8'8T5Wv?K>xVìY袀(6ҏVzٰ]g'*_P՟9l_+3(PoBdo"2UO/N$R>V{k)ic:f _=l=%u.xxj>o.4Mׄ;ީ =!׵9z^iaz +T_9h?Cʟ`7k3V갿/Q@aޘ{TՄ;xH*9M0y>UHh8i XO Mm>L4 )"TлuAW +8iYJ3a@D2O1Y(n|f gleK\,\epa;M#mII|6LJk_2ט_ R<=٬p–l w8De)-姅*fͧ\iwaO4(|Uz{'!|^}.ȃ+~&4Ē b:[ `\CQtӲ]T4m$nN2 KP$ps֋ d8FJ)"R@.\P5L~"bzw%Njb (h̿ )J@xs>![,~h0.|i',|J+H[,|%gf@Rp?⡒ ڤ~Ў/2|\$%d?ʌf[{J&bx^hRCDy4 eg/p7tTsZ7ߥFf?DXco#V4k ]%ͣC Yg'!q$kM.v5\fίui>~,;>Xzq 19-*y+;w c'j\Nk2Dt$O?vP-=bW6Em)TJ7`K*'"zpMm0*2!ޞ`CgK?lz@Qw{^;~e[8}9O}G>79>#໓RD7l6 RJpf7XW%PheJeBPGsuˁr7) U:U!Ap7VzhBMk^~Jh7G9RaBf0m Z=;:("Gൌq.gzKGϐ7h'SAg}tXM ۪ATk)xRNt*."`nlRIzT ڂ,U[ 'BV9mf&ccH ]Rxa~z!3R~U=ӭ95;޵>?=Z1 I*g͚thpWI0?,\_^ǒc͏nrA՝asQlājyيGy|hzTeh'Vյh-=AeRb/|?)8D_2py^1S[Hh kHX6α"pRZfˣ;FD5HٜYէ P ;󮾂MJ&EB1rd/aFy%YcSuH}D?w{%|5:/h 2Tt f,jwo>gKLV**Fz7NFd _wMNnwLg< ]&LGdh-ݣ OϞ'aWiVUfh=$lIIzSЕ|+Lp $\;e~Oė0Ɍʼn8X6hꦽ~c|iKonbPYapR56l'v#Lbc#][>ȄU!#yk4[ ʕVs䖰e-y?kaaeM^2T3/M< T.}Λ:*֕ЇK+-|Myih7=ѼaUr\F68g":A ב^H?(GՌ#gY$?O<65ML% e'F5-*$ISg0)m1cUo30!ptlh͐6F I\e5׾#AM*å6ňۮAn=k ?HS#Y?VF(m8'ftXŒpvg(8G5-\'D%.{̔Ife }Չ?CLя,y :f%}6~cg2?|#gxj}Bw8 p[B*cCL~N8 Z< c8^1=!*0פiF' Od(,}OAӏI48>\Țc RtWإ=Uܴ@ei(ĻH64AF)wMݓTW UvFmX*Z1xivTl'zm0mg5 IYW̾ѤoPy 6KYf9S,qTװe~Ax62]6,ך(СDꀄjMXi`ZdZw`g1 ;̎x[KPee ftoGehc͒ɈvR 7k$:D@jK}֜de 4( N|{g0~%A]s`oR,z1,*4ulU:tm {PufۍGUp擺"DnRp@1Dw2d 9#M6-ڄAf7 TB*OZ1E7d=E%iٓ}_OmӴX !.[aTÌSffy(jt2X% mlz#k`rㅨl[X]hO"jO伜/$>$?dr /:jDcU{ф,74rbV9SիZ_KKkJOh&-nC{>?2>-^pGh$t6krS*bO`=\EX<-$zw9~M)mHZΞ󰼼nPycni(#^E[򛳅)`Ĉ3%@8Ŷb7b/3 YUK$IQꊷyܲyC *WQvm7>3gH5؊iqk`&SBUD, y69;o ܏7dWd./z<ɜH]UA0\j3/5ς:n,,™\lNb`Sq7S2kͽF9et; |d[ڕֺ;_cP';SlJ\);p!fԕ{Tߌ$ͩ"Z4%YHX=ع%{FMAx28fR6{0=Dj,FgEU[ހeXH4(26]OC"+ 쐯B45,+R7 p>v Ö3 LGlQ_;Q0[SjHG3<.>%l;sHv~BxluQ?$!Z77a%~푔'{2>E~`no7<ΐ,sj+-7J7V#8/5Dž.ƾ>*BеYϛ#y|>uaٹ[ ;O2{A7՞M9)W7V njSNs.N22;9M "_лt{f$T)$IgސC2EIXvGRvZ 'jX7-%5Zw>p_W-pgVcp1,~93 ]Jkp:[m W鵁^w~d('? :ĩũ@ea4{,%%gb$v$SYC 1AXd#Gۍ.f;qZ0 {)V7f?ĚFzdE^G'?:^P(MOh{iw(OכrO# J*)+衊F[qXR `חkT-Wp/_$qalqrM|ؖi5NbY*H;=q#`ޅ80HRje/em87\>'%YW_W@ ;#DibYv LdAû|zFWf^:\[c1P$N&v>Pa [Gs>nzkĮcW7Ge%*y\|ĴW|̭wJp4bM NtQ~Rȃ9G7m׈;1 žt ? Q*\ÕЅF+5$bҫv1~8KԂ<{5>hcV"ءiHFY\H"= #wJu;K ^k~aXQji5XaMXү5V޻VҢ^ kfsŠ 6agv[u60Ԏ-DcrGVnJUĵp6mQ #`-mS"GZ*:+@oA~c0y' K+PHҩ 6lhdc }M|m6Bkgq^bt7?F}/!I}6ҩƴ ij(TboPRϵiZ>u(ϻ QAqbb}r-xp2ITr$~6&+ߪpDwLf=b~u4{p sRYU\<עL8)07A]t| 08ÜCNm-\#Ĭ.XڨĦx 49SPDj$~\[ͼeW}R3Z&<ė;=2޹٪f$v g hÆ?G+HQoAD{ gANj3JG`I[TUZ !l&BGJŚQ!fc)o;MiLyjvYFfEXk-~h'۸ xe Vȡ *B~`zѐobv,ۖYX;ďf;uRd,WG)Hԩo $$xi D}y.s,epR+(kX>ouU 4d; McPNL14E{4DxJ/4\ F`V\|Pprq K6x΃ٌ݊f΍lu}Hb/aE–?f/T~6M9#9ۙ]2Ai4dK8!.pQCW$P~O?Io2Z#Q>"Җᙈ/(?3&NW:tj?ʃ儻,]%9" a2'ڲUWytR I,̬+=$gEdҶ%[L O fP]^nݖJִ-8;KեpSSal+K4 ^G8N;CD@뙝X 4B; Gսs)}ClR}'2RI9~bR$J)d<w7(ʮb -PNld߉7E_/{lO)_9;d&O%p Kd鄺( *ȭ$l.Oݤ<4nf=>UPGDIR؄{wʿ]!8t避@#w{2_\ T*y(#%Z6$Ч}a,%'iبL`nI @8h}@#Nx<U0SՀm#}/~l"F#עiYNox I jv^LD ;Ьҡ VT\7W Wwσ IMRl GCgBn܈ty8#}2vi u w6Ѱ#/!pY#%=@$wdigG`^y<'S(sO>`i(d~Pi 0V"ճRX&@Շ $,7tzi8g?LbpFƎ/Ͻkz%fMO\R~ASչmlgZ;I 5ytpsV.UgE/&WZc7mg/uM*}\_4u.FR֝Qx& m41Ngceϲ5v$<]T cO!}dN$]D%E: iM{j%ocz6zi̢-1RD]o;eavϼ'WwB0 ~B@5|(suU Km#'Z?=-4t;BaV&ʠ5!Zn$F"m4:@3P:9JCae-ΈK oF Ei3=%:u ! y cU/P:ʭ0Q0 f5sר`ɍZ!h8]8'~M[ -^xc?bc)>Xt)QwG*^q|,B(^6"OWxxz*u`m']n c'P-u:R]jA9QO}Wә66 ip'PR(=.2x m`"ɀ'VOV$SJ]zxN=98#$.p#c BVċt"HbɞJ=@2B?qsHH1TB}7jnV,f$W(h+qH'3ِ>2@rX4ZlHggghF9wy(Pܵ EJ go9$t&N öf͖G;ۦN{E._K1-?SJ=S`?AC XE뤹KKy+{ދ0 E _>- xw>$cYEe};^W^ E6ǷyWS^)FM!`p]!T#%ohArcXk2mO{0uy#YDs5ב&{ V>SjH4m(@yJuvWnUsE݅W?oMRL/ P$7" Muc'JY:jh2249hUarIV:.ƒw;;4J=\xTXR_ybJE5:t5 r; '}|:SL4RbU;Mj}C 8`u` wnZlv_03o[F!_,3g| QS ev!@)yin)UH9ŦtdMx i;9e,'ppB=O|{-5f+NE[`6`Ѳ+ұGqL=6Aa-} P/uj`<߈*#7rATq; vDVL4|OK[l >\(!#ůᕅ"8u"̀p |YѦr_/:Lvʿm0s9pG"kOI ]tZg}c蜓qZ^ƣFX3z2?DTˣ)i*U;^=H$SNS ʢ耱l39k-;|BACC6+gg x:kaa;I߿̇0UoŽxf҇~P|B~:GdS&%iі73=˲@аV*,FX0d9N_<[z%k}qRƎ~iǜps,ʀt"{VVۦ֓%N>n(4IՍ˷䔉h<\{7POfv!9)OI1)7F!8-%Htrb.V )볞)( n~y[/{|a8H}/Ru.` |;Df`#, u:"\QmNthSC9Y gRڷH*ECZ(8-[99)#HXW%t$\2="Y(cύNw0fQۛU[BMJU><`ӮYUGg)FapJE]3*I$W8c08U}j@Eġ4u-, 2l?B2[y5z-w}gخǟ{w)1FLX&wJs, K=_MTqcِQIf[1#u^s ԏ"[Y+r5]7Fd9 F{/t(nI`J{T_6 q:0b%5|+ʼςjCoW(r+7Y#JFb#ay99H\ HS%Һ@Z %yah{K18fgH-7qy:.Š=N]񉘈q]4[rZ/$PA KQgRoTR45L! ~6Ta"+2 M`^Tpo* @u0#5r]~nT6kFzTw;ވ<}J/jI^Ac\(8&CO1J3wn0m[gڤD[ e i`Γ t)yߕ؊lPC m~gtF v|%+6[T>{OAQ(br}Vȷ[{ܵ&hj*(W 2kVPDH)!<#QNox!D aؘL=f pzx=ѿfk<@|WZԨuz(`UnVX%XT"J7wdHm~\!΄RF%n}V%)Z*,bH.Mv *3C\L^HEz,B`Vٖh$T4AДA۠sqea4(`R$e&T^.=3yNЗGl ;҂yJX*K( F 퉗S B`hg[ܦ֞Vj'8 |ء; 3d=;cS*`B oAi:$}) .ywLn+{Mi(9S+fDg$QNR[Q>2G.ZXxEg8?W !p~-IC>ʕMWmV+E;'դ*2"];Nf/%ɨaji Ad=O!eJ?:rZC*sӸ9g,0lopdt!3<&=vw.0hxi:/;\OS܌`<ϔN%"t׊" 6.qS[ _2Rه'תY,%<6P oV~1U%- k!g(y0>iH3& Ւz"AMf8|{'x7a< YI prKnG`1Wv mG>VU sb QW׭HseT D,^ ͝LY@G97r^7`C37j#rڷoȍtO)C|Mp׺ I5RLIqtʆy}vq|E`qҕb4XMs}[5_ C3a #ebݥduijEngyIFM,s*ÄĴ*w2#E*߳nDV2wk)? x)i&phVeIORim%1H9,'+umCq(r? DzATsU0TY$|o = -B8Z/Gd"[jy<ƗwΗ$iO&wX.L/Ϡ pj ,s!#{7e7ɁFv:;fAd#>VF1ѿv~vsKz\"Wjv@e>jraw.Vt295{.D=W|@QCWũ^v`;wRr\Pu Zk~@Zi CТF#N."D05$C'pZ"& ^gDr\ Zk8ER'22 ݌N

    ǖAa4G O.%GM}f\2Tz^_΋kJxy[ ty0rk%A P8Ry+` 8 GrD~>kV^C Cw^1W %l6ٔzP"V,G;nu#Rrij]L .O'Rl:Bɟ  GBU*7,M3q4 x|f!֕hy3]M(lbMb %*oOfTTQ<"^<>;ya5ċc~~ C߀Ch(H(^.L wTݖȔ{qTCx4w"`g68 Lصq]R~Ȁmx/?L zs(cgEfC:x]? ln_P59,H0 4^*!Ns78y4Rj:Y.(K^ MŐ#_t;]>e\S\\+sLe̾>m\7l^b >TBI]- f 9v94N bxNOb YD7A19= 7*syu @bZATB7Z[ͪMd#(/\ Cj(;S{. ɢ 4#Uz/=UL sF]'xL ]DtB3r O(qQU+V!MGEh!/yRyTюfd'CWKL< ֚V¢qHP~I!B00gx-^s0B: :Nݨjze{'/K_^Q֚IaB'nԻY꨾u\ &./I%*-ANZaf N(ؤ/u"(pkypX˗؆h!̬ $Mx̝_T^? '1Fk~ILiTP/k.X6cDLh\۾˚}ߔҭ/N݄ oUYF@ 6 |"cv*ԴT9hዜ<ڑ/X?WJ|mɫO c}XA|`0L tA~42v8I8%K&);7ݗ{ qo\@۫Ǚ!]lbw2R"Ά1'ocG%8FFQ|is`(ҧ`cc(S @0ZQS"a8$L‹YS 4@%R  tF"X*_`53{A,^9$l /v!Zpr39Dˈ89:=qB~Ѩh͌kQk]Ǿ>axuoj?*[_(.I`viY+wVTFŎOz#X71<}d/RFiJ9j(1cniH@fc7+jb>9RY.eܙ/ɦ(O}9e\=-݋"Jq~Q8UġKC=0zO훭TL+k&Z N%5 q{J+:]tګwJ$qxkf@$޲XAC8ƫFFpH_6}0<יi)CVmYf^rP$ 7RaSH5Gȝ-Ŷ`+~|@gweë~oCM<*uE DQVu `֞Kn AʿLӳH#3Ҙw4q\ѼkFݪ 9؛'y)k~n]3Yl amio5M.P_;a h~d1T y~+xсCSnȵ~=TiZYv`r7VXb. I˜D'=0 3 _ݟ 8NQ2ZubFe Y9\`Y4rv}9x'_}]T_ddtŬ C j;-=G QϺ"{ WmK,vZ,czU@T`.Oɣq]{BS$D[Ʊ˴B"Dl6ͳcޓdLg~GW.iv֓Kм퓶,{WJ3Rk՟< VexR0Vfhhs֙Q"#+` ;X@kʂ|YbSr4m W,x$9|Ћ`e.,eƱԻU 0M]Sl6nۈ4`:՗eK?&h2M'?/%eڛ55#eXruFATuL[?V2-@V쪙S4jXq^2F&m ̾Ф^3*+P>"@͕Ο8V<$XI? .A2ٛƔJ/d r(T#ڼ}Chgg3p-3k43(h/ҩ 6 :sH lj kJسLzH bt3s}*+2Ta7ZH_FsL8LG0+!ǘ1'J;E_k|}epƷ-L(u@_,tVJÓbٹ^¿R`5^woimi=I(33Һ1A~ܐǯ VR}fqDh֧|7;^ErB4 ?Er!CkRQ |b[ Z]/-en{ݙn> er^ڄ̄+k}}z fa Of8R6Ac&"o?32% [K4I&Z0 gI?뒧<A?8gFfCAX'\*my=gq r]@T_h%HrY9{v~Ku'x#R2" U3/1hk\S(0E_G ?Q'Mt[N.,L:=c`ЫW 2O%{TP'rY j,p;dޯETx5ݰYfu6fi(~r C;uT ~|K*-=yOzV[@".hZ65l Ž+qТRC<=n )рB10} "#ͽJz<5A2xZƿLo!I/TYubù_ E '5 4?ؑ2ū3oa0s].wPRY6D8Ҧ\J_$Ñb6F"d=< ܼynV,Uu. !hН Q~n,fD\e7`8zD82ٍWb%㙜eP+Rb^!_-^zG+?ۢ#3槤E"z+F7e@cB8I\4 ]F8S%CÅU uVØJ-N]7)oLXF#S,]ІүQeHQ_;ڦGnom_б8 XnmR~DU Y5M h$bn&WO)Ka{uѨ@ Pk{}iMnt16s<]m48vW(91Qa-'|V/a*~}!K] k %#*d. !W#pmX*َջf(V{CF+su[ <ʦrt]TȯpXd2Y4rL:)a^/yѴF` nbǢ쒖j}e;:fe sGxUh ">+$FA B]J$ӹq̒:@u;x3ᘾoH)J HDLiõ h̒ѧ U7T#,{^.A ė\N);89Wҁyp#9f%j54܈qT$oRbZ|mUْٟr20"TZn P1;%śy*1H~GVue<7`R;[j5Ѵ~ooA;p̆7RF_:<_`UHF^H$ o 12QmHI4:Աm RNdR]pDC4BsiwX>y2NTxA HrC0&~NXKA6:w  Um\=U ]puCDDtmfM2.VF/t=baQ/~71w䁽[x͕w}>d6o =dt˿"i5Hg7n{[2n%i|a,[h.LƣK @fٛbnI6K_o$Pf3etTF_zk4uÎg]Iiߐ$[',AY(Jhlow`nWyEݫCA zrUK9}1B5#5>VhV4?(Egx^<64cX$-L;h}3D,-e3vwTc, (\i0KL'K%JCNZ !}ހ9SX'Z Ug5w;"{;z߰{&'pTB!ҹ^['粐(>c׀BƿWc⓼߆-P&W?"/Flzd~!c:5( haʦZEY4,XJdYBPu0#i;#PI#k{BfQb7Po4t ܚCE塍*frD?gmEks0MYiL!2!/+dIjĢ@[3 fJNr2PF͚XhNXϵ8ԓ U+sAѼ/Bz'kceF$ԔxkEm*Gѵ;X>=0FeF~3E`SaML*6"> 8p| =Q.Ha3:e9Nzs^.(o@vV:Xi@P3$1ߔJ l5)ŰvZc| loK--jռ z(H_H=nCnAM8pfխ!S\<<2<}o-oTww=ltcM;Z!z14Pf# ̫$\bԭrޘ0+^oWq_j "X}ĝ^.,!|:Hg،w\3SF#+Yux1z5l$m|O&/yd5LSŴ&0/_7<6ztLxFܬdVDn>3SZ?qO3_A[@*2L;<0Y(!#-;c% ç7w ee,yL=s󲑭xƴFĎ@ObM&Υk%YS1 vhyU`C]躟hY,K?_-6o:9y97,WٟI6esԷRqׅmdٵ[ROVC-U~)>X>S* 5p&SeySׂ~qjyk rZ7 $IH^ x|h>n"o=^p)P#Krzi)XvFy䩜D2.$8ӱ &-(2e2-^-:KBz=Q4xmAxfv֘âD:窌hfS |=,ֹE)q{1YОУ tSԹUpB#欏_( \fW2ʊmq5|rv#h1k +8K-|HJ9kR Pm`QC |Ѻ#cS .ЊvIϤ]|f/@=W/S׺h-τQrl "*o27sH |٢mɉ4Ehu{w.MH޷7"d2LJz[԰+ow.5e˞A;'~M*{E!`e@{(D'Ϸ4{ԃj<3tR%kwBH0C\fz7vjH pz:qϚ gz(}&)!~\8FX$.X0_g?;C/؂jgʩכC~=cI?BM3%y;\H?6c.%_Vat> >B^^u_ 6>+.jHsMD!7q+ɢ ۆt}=^kR7P4ULp@bU&%>:ÆB1pT/JB,.e˔ہ5C8I4;VTF{ )*]65&\Gn'q5+=w6X{`56ٴ(B`+|vށP vPg1g3qJ7MmQj;aYq& 9:heDFP:ucm=%q & WdYwwM."6d,0Bqi:R=U\*6."\ Hd_^_lAz5-%e˵C,ȶ->U(uܕ{3^/~HYOs%(/8=Jgyx5\}~H)E^H,B˟`0;:K[ Lv7ٮDn L)̏bYåx<$rJ_D6~QX}@I1G[ 'dϧ ^dx1~WgRq9=_-maKU;N#P@.)ib{i^ioRUЖՈl<~|{zY;mWK0 Nirx 8eb֑<|YRHIR_ay Pgn1Λ06b=.u XMX7*l`F?lvlvWCӸ+8q'Rhhn-`ߝ6z%]'aO|b%:=MMU8O;R/QRPU/ boK.[d0XfJb.NE㋐% 7&~.)vRz10׀R)Ө;}oY%r#'f{gN/BThY/'b>KɹaK[Bf3.Ԧoidk!*牌ծzy`X75@WCFœ|O.)2$Fc-KW._N Ag,|!d 1o41b_eZJ޵Ӓwl?@.j}5m)8d(~5*p?tVZ|S TA5N8~Q0agYZ cս&ڕLț| kG6 l#O*T9W-Q8LETdE YaP;Vְ9D2F9P&<n#-]'|&s ݵ#(b/tRq{l1H#&<[ YXɠ 42*}D%cz9YϓPGkP%559(J*[Nǒ޹>[A"7pq6YaGh脜Ij}xITCKA{_&ap&˞c |xG !e ٰ3cꑕE$sx (!IuSLfxQ ]<1ԫKp(qSmkzk ?SI?G qإ-2uH~9V@:`/S[/*96&=T(\dPh|U4Ɣ߀3 l#yW-ngL5tw'F=1WVfggM4 ;3K\ݟCqgޗM:RNK| ǹ`;n7'n5,W^ZgakŝyI)n x&:+@,D7 90ʣK'Ta'iWcie!W'=ʽ]yΔnT=I<$:"%MU%NK=0ś320B "စ;D\XP6`(+4k4$HFD2v#^<‘Y%8KƬF!P+ ҿB2b?RxȦvٺqMg,aiϒ`yw]] u;y%cF%Bd+ggj밫k!PC0;l&*kC\[N!-j[%!YiXGebBlc›_cM! .y;ލ|qQp2+MK`P$@"|OP#ܼ.oa],U_hra3l_[;)LKI9;PHhh&G—7+入s qV[i/oրUK">;[+CS9PHeQaD?ɀIolq#Nݓ g5,`6^߰<Wh3ـ+nSagi Q'.a2ufEgmͻg  l;F=W|E-x] #\Kw^[P؀pl2j%o7{ {e~q&´TX+Ddݺ:CTr>(;>d}nv1a$rXX 6LsD"_⎰y6Q;BYcMg%KX#ށA9[D}v/4 |y{Юtt\RC;8?5aF@/|އ軃я kcb]ݦ+mj:&2Qq`]n֐Xl17cm.HYö3yC94(I犤Ϊ/:`mtuO3^:+ ~wx,Ruc`ZyNGQ##MbMy86e30V}NXx_w#9|T 0NcAMaK !E:Q 7Vmr#R6j%dAF^ZNo+~p"PMI0W.Ƙ(]*^)9Op u`pB &sPHBC #dFU!4uH-O lBk]|.W kެ-6gn'42ѽkF0 !IfF:S9swYH`%1]`8%/ 9\N2>[Vh56h޼,jlT ^֨m7Pl}CH 5_I# )5ebtG\fn!hz'Ly.RyGRV&\! J]&{l(GPC@v- Pmւ֮W[O*k4 F2ƌ!J?<n762:=W A]j嘴*MJ{v.]1 Z^D'K&پQ5RNi #̦ocOe4,38xMKF)^d& 5/pQ Ӭ;Bcn^j̖} TBCv?!J'+ DUQ`KfG@A WK 䀩!& uIs@3jd)#~DJM㣝Wqh㉙*/+50U7F@ȽYDV1-zT# ,AU-DC(>)\1fXՐSP}چO3(5Yo|rJT & /&[n v-^d;1]2T">p1zן%Pz@#=m-LlAN R4tcz6!2o 7kvX+کIypy\!#a]RTP{gո啦}@՚0.:n#!]>v+b4%I䏙/Gϝp J̿ sB'd/Ў tCGN#7bmqj(bR!h ?<2Uk$K՗%՛74ڗ{d.|=HosQ}վ}>!=ֶu& E\%TΜ2P[Q.ݥe3-u-f?C&@/@Ad[rhUx@7rDA #&zp"kd۰ #=Q؊!@2 z?.[b@S($R-ܖci,'Nٯv)/E /Q$??u1`edAt2^{6TF/|a*=ee#Rrutd ^(ڷrmvpg}xW2Рkb{ؽY*o:NY͊+m& EG#>v^wo.X?Rdn1M ÒCZ^hDQp"80KLj" KC#ch4g)UT42ia zDHIoIӶM?BZȅAR%Չ3kIfl6FPEL!ɶdyu%)4kb%$pSrʞvUa䭢vUo9{@!?0sl&RؖZ6~Idj2΋x/E ʪNVq ylCI8M~;1~~4BAC޶Ad/(ruo<[+-F7W\o-ozO##ֈEYes1\?gƌ=R._ž)BY%'(ڀYM;iMVabbtYMs_FW6tTFSqeއ4Y ?^('뉊B23Nō_Ose$G'2rA*Dw[}/)ݧyͳ߰Jnw)n;)`1߾<"nքE$ᕱ޴#XSf =yle'_C"L-0~/ܡs]}Wh0K;h=4M  z.4w:IWrI PϓMG`D[vWE#ow`57k U AEFLk J x8R623MuR6 W0 x'y&V`,<` "v3ExٟK| V[$C:reV׳PY !qUPW3#1h&&aӓѤ4E,Om A lAΫĝ2h|E&x:!$ѡ;l%,%'%ȁVk au'6qٙU3C[A]<|d(S2sMz 0*,fP`2>j+v,Šv5ni<"/+j0u3٨s& VC|e_>s-m \^/ZhU NODi h&LWHgywoT|& e; (eYqMx9֩d PtB >x'`,0ʁESSnӈiu Et#݂Pad85Hk6)+CQ%od=3U;|l~jqZ|+Yoϼv%)^,F)`V3pQmZXgQF*H ʹ >y/3J#%ڛpC. Ҥ5}µps8$z::gB+DEJҁ G y­bvFSx5QZL (~sebPLs$aGQ]}JЊm[vgʃ p9lA `a3ړ:m()1oz4I1,> wSFSTPm)FE^zȱ/4(X)L|lVUs8|#^7YW߷ +uhՔs#3@iC dZ2'EOCY}aj=8-aC @h[ti+_J `3EbY*P(sR2>@)HPgMp 72`OZIҭ*gM'񣝀݂':9YXzV n+lU+Ҩk_Y="vLEzݏhTA)|wZ-X;Uj}n+,םC挥t+-b1/ a_JR4; XU(}/zĤ5NrFS05Ϝ\Б *쾏50Z z~ +uUݯjzEEe(]XM&? ՝n}̑,DMRE)U W3 :D9*voM_) csVd9b Si%L)vP8; mu~yDRcVvQLem&L.9uN-V˅ Fj b$A˷N|^QHa>\P.hI/^"vʋ"=~'cJpl(v%ݴ@-2QՆ(4㯐+戕 H׌JJw&{Z.p0i\E1ʤ \wG6 %W8( P fQc8O(cs="!儎sABrtA7N csKD8q⚣RԨdX7T)I G OE;fF0IsaVyEszO/ߔ} DHa[zHݶMr{hט{=TEͧD)VȰkAPd4+6{yRŠT^ C PMɟ9>[(JCƵN@}Y&酊p}\8qȃef9嫁bK7k91 Af9}Ta9"ݰLG?>˅2d)(Y`3ZQxLsm=`1uMU \3TWxTt{Z{@l{{ZP#s)v,YmdG< d+㗇:|%l34!&ꤤk -b)+%Ɵ(܂CӇuRcHhA *UI9"~%yr11L㹣v&M{y-y^Օ%xkŽ~B.p4Esvf8 {#r wcn53< HźKNf<Н]\'zZŢ7W:$tW4a44C?/t$g|]L03#=aj > v%^{;ڕ=YH&#;ǣ+&>H]"v"ۗH_GX Et͜j%=v=u('Xb@ʱ.HpT^7fiv] 7 kΫ,vqn:: oJkR?3^R|mf&TnU8q9v3pH6Ҋpp|-h`J4 *hH*$aZ@f:sԔDR)!-sBh+;i0LPRl\YIrzy]T==*=I|kbИ4 Ə Ïa:R}JQ,"Y{0L`#t>_8W&f m,"kLWJt^W ,*4:&krgCqso M݁xG sdL{^q*r!_=Y<٨2#(`r'mnM&_JF zt-vD6nB}TbɛR0֕-xq*,zy<~pTVdžYKYdqCy.nze+![mJފMzH֟LX%=mfmDHMEnX$ 3t*7hV4Sk\B-lAbPulW땰)B(j+@&mBz16Q9dM朗J_ QE3PhlD }܂ bK2\~,\|o r'bwVRͭaʢ+)g"rQ63^5;7.l eA, t{/Hg5pQpus+9visl*;XP0 +\O' |tI淼2cODDGi@cR=KIQѰ::"~˄,ed[ĩ5pR^c<>~KWv 00YuQRM $>ɔ\ s~|QX]v:"WͭH2{xRS&gzLA–r9;4&wsqt ʾZWʉTHi$T9D|41}`o;.zkVպt܇&Ϋ`o7/sfZ+47uj1ϫW$q,EAyX #J- .^Yyh%Dq'c~9-5 * f+Ź?y yL^iQfxq}V/Vk"/uZcLXLNT}]Ɛ _kF:6~-e%p QW'V@#@N`E938=7/@C8cjzu{{}||:re-N1,Պ]1M|J@td,_}/[,+RR|Z"4(~{߻p^>YKs/nցhÚٸ. [n ToLE?#vQ @3k=Ш\"KԈ#.* ;FAJdȌ)r"` IW&<G?];Pp9PvxLДFo^ ǎbp`K#TδtU06 ?#|tgB9FNnv1&W ݢDkO(6=~fXaBP+*̐Wm^xVyzƊޭ\nH/M;fvPֺh_JޓPfX1VHdq摅 ciO'Q#:2 k ??Vy,7r:ÖBļ֨՝ u6BP硔-U6xA(O|~2Z :ccm=N!ĆVDD4:}&a h\m$]-Xav>gۿ]76e=[EoӁkY"9zHdI8@jfnrJ1\Όښi z~_ЦsZ";jU{Q!vpx:(eTSZ"Š78ObP-~6C4R Uk ^NM[ CΑ4಻X Pք(Lވ{8F͆&q}qp"=&v |;gќFh*3Ll/ C6rEV,j)]X,ϭt-iU滧R[ARP 0QsN_,Nѽ;>/6;mIo$>d{dľٸ0s,Ίr5Jt=,}W>/]$#J{iᲃs"{w^J՝B}çI_S%>"d7c8?>R̲S"Մ+XHIK\EEpr2=Dq(JVi;/{Ƀa$'ȧ;aIM'"^5x'g )ȑOzb,h&*\i macUNgd5%Z/]$zceh{[.d8Z4;2$a#b8/T龟f܄ojB:aۜTLַ,6 b]?6Tu0ܱ8}:EM O=:AyeGNf.0kQ:|5| ~#/DML"uU2;ayiқԝmAdV :a~վKA9& emwwݍ!!#HzNN.o)>^E0Іg x!,?tXn,#h4 aS@ɉE]ݦo5ʥڴr=SĬ(KeJߨh5 ߣ,_[l2pƧ3!n/ 9㴴[NȰ-HS.>-gfZLBڣ԰$L"%\+?n-.eE^5lq FyMn-p OSd#gh)ԡ'wnN(fEHn+bGBQ3\;N`藠0\/5iKio:^^}JPsȤKhn4(yc8#5;h[Ge" c-sieD ,Hh{hlRDDQ:Hrb|PӒ^p`4p'LG7Aɕ^́wk k`P 6ڷs?7nB\l\e;yĖ]؝nFD8q $èJhF0XlYVM;T߉/01~T9eɶRN)HќV޳} n23J5 00K?LSi թ""ҧP~I^(Ƚq+u=`?j~<Ǝ5@"_&Ɔ"@1i3&:.OYwt<)\QѫR&{'/_k,|B5:ҸW},%bi>|/5\Ǣ ߰պ :BZZ#TNTY9Ԯ뫾F>N̸r[ 7S),pPNdgVWIG3@I\*q;^5p+3_< ڂk`x'ۉ0];8X8HmA5V_gV ;Vz(F%@$uǙ҂jf]oȪe7"^=o'ضWYkF!rC;œ͵uœmK'%A`.㑘N~t쉉<+I-I=MLz.q\5N%xx{ edS,f<@3/\O 8-#l;j [YSMyյ~hA9B k*?R=@̘>{MػtMD95m+~!'*rT7Vh˸(x++xB(Fn@VōG!P<@^55KK6+N2i\~ F$|!kG+A[4k${"TjU@ˀ?fv'z/igV~3wܱ:dO4v#9 n)N|j4ҭUoE_KerbAl3Hg!BeEfVA|PW,kDn[V a@FSࡃV2{0</>a&)r]:Үt\o͢K bo Aí|Őہ~6i{6U1*K @8dvhlJfU 9 0X!NG*thڙH'Gxjm_o&?q%3oF (@PIS)HܫNB C|1m-%E=W\2S:ި"Û2!R\ 0[hc3&$]gyNGī,Uy,$϶YA&BsbuŠ]$U,"]ӄ,gyr#`VJ;6Ϳ jGz[I˯Nd.)NÒS%_{Yv9|HVeug_Ao}b.fO}a§4[j =uigcAtCeDA&ekncci9gk=ɡv&ZS$z[O4855ώnmy^eZ,?^.bf"IE")(ºF 7q9 Mz1пt/lZj\^0WW  ǽ>=>eUqlgw%r\؆?&g_y?+x=**Bˍ+^+Tᨲv.ͬPM\Y~4E0xW4L0x6nO?F.%4yEA[1Aj)$&vnOGLN`rl&xqݞ `,W&'d pT:G9#Y*k-52\D~} ͱ5e664)j1Z`i;hWkfDs9݃k)^)*V"Z& 7xAA oeErI3iG͹2B|B@{0,z7Cܤfp:>,wq _V X|.Lp3v0l#7&{oX1bQ1 58nP"ݳ@u֍%/Β$^ -:x6c6M!ץ Du׫ːMDG Rg~n4ۛ#ꩲl`y"LZ/ǥBZm87H6vA&HQF *hwu;sCHx<? u, W=<3xصpX !gUbY Dv޿$IlFL+W'\=z6TGdCBY ުs> f_gVtMxe4#z/H C $!] ie8cE4Gń EĞY9vn-+)]HX:~|}Y{3艎b5Pa| 9ƍCp.luĈ>$=VX&V`Q?ѭH,6#x5_)͌].Y &4@׎\XÒZ7d[.#Ec4$~/ 4g"}de2L+dqȈE '%8 ǩOPD\V4J=xx&XYagP`}} q?ؼ߲Sc_Zsp]l9u|M%/X?_ۯ߷TJLΖI !GV} uv`&gؿ`T<9 p%ВWs,~)oK_Ќ,9]=헕YvQT^9/HC򭶼{,oI瞹꽺u${+tTf~¯_' FWJP$k(EHMt,KPl򲶚kx7-ai]K],<.K*ȺϘ M;;֋#nZ/Q* ;URUmFd[8z=_l!IoSW!Onf<듥F3ްش?v%Uz3cn} WЬ>lTofW]~gʾH2>Q ]hj~ 7X " B3(y|F08X2G$ {$6lXviMǍqjlv%YvEvo%%K`O*,u%o'9NԉNɭsHYh> qraӂO/YE]5^e)P5*߬eLֹoyk,tq22?"y\ {S/2G~&LIV|1PF*S{c3]Lk8JY E%% abkmCqm TM HL[}:8C'# |(o.9S:cS'Rw<7z?sbHRM2i ƃY 6E^H@i. j'dyCkin#ћJhmuE\ pY^+4h~HH-q#^2M<]P̳jGhMZJM_VaU:,!%ʥd嶿pyqfΠ8!i4_Ri{>˞dmA'q';vꖲXa@vڙ5<ﮊj0Οmˆ'W26Ma4|}f_xИQ`]7^Q.7l™Y{;=̩Nw֙rZ BWLY^v̀|/4F?.Bbkw,oߦYl8H"jnu}%rSltlx4xaITwpF=XWX׶_3ԻR950 +݌.AtZT.]r{`8wef݆ q|/Aa>dP:}b:Hz٢Yby^CtC;_hZ׈lA>ݾ5Ek-/@Wiw2ã!LEH!kv$ V1%ܛֺmj$J}'FhA H NrC%» V@Ok^t]RpxkBfa7*g>^ݒvd-8aᆬ̌e#b[ voeL{Z\܈gF|_[R4AH!cĿfe<[6w0f K<$6^ki(gʀD90!>2":֫;| A͇j\ׁ8IXG]淿%Mst=^ᢝ/<`Ƿ|[-|u8[ᬮp H?VP~%\"F^fn.Y}72Ml? |D]ٺMЊ:ND PLчk]ջYPӀ-ذz+YT=gꓭ0PO~u[=oSFu6KTph3<"xO9  ï{^jk4%m߄_u'#5X3?,Nq!DdBlt;8FE ->E'gv:n֗ʹ({¹ m^Zt& . 3^EbxΉ?Hs^5VWwL7I'5&f ťOPj(B֮9M X_QOX'50}B͔ IhU`#w'ΔƳ+Ե9Od;u-kkv/eJʖMT蒢Kf"-~FNFјg#鍜Jv޹5a-z@1({rюxc;ҤԐY7HihcdNu 0t^9u !2Vi.hj." BTKpXO F7"|D#}FUOFE>}c̀H>PaV 'nXen;Cy"L/ȷFa {*ͬգ&]AbZWΥ7 Kp6b4E[M0#oA qT޺IPQM,g$8@&  { FA3̆S 3ϢΕb}y0Iv~܂\>kQs:6%s3;^o?Ug_ kZ//QJN`f<ꛨMrn6jň.~})cbJ׏6fRЅVHPxpELu}[]TmPImI"/bqYbNބ>u]‚XG9l"SPƾ\^"0,${fyNoFb,sg^pڣ}pkREΝ u vmp߽OD$ۖBK+bGB0q.[7E^ˮ0zJڽ;.e=NdLo[}5:ZkπiȪHT ˔^V*2JFD +yk\>`olUE\ g*eHqG'3ruϐ5q˴JeFvy2o}gы|.%:빸$3aN?ه+^#`tt7Wߤ1f/.JޤJ.7 \CZ/{UƉjYv'8sn88Rp"C_Ì{z[ +^ r/*sZEZS,t.|Qdc>؇]6>)<n#;m6u&T.0vS%H)6ݟxNrDRn;DSu_ٲ)t?#LgɀQ}Pe=R$K`k*m5Љxd c YPo6ϧD'b ʑs$榙 ZK-O[ZIP3rTԳ \Wm 4iΰԴGı>m{\=u>ad }ۡe(ʁ•(N^t/ueQMT'igff˰ /ch-rspPm9z oʔEQYtmrDG^9뫨s`-mQ4]#>v;mZko+˓HDWW @VB6 YW->bgR5Ǚ!,^g~E^p GJkbxB Rv$שIj|ZJviǠRy-K&Һ0YnvnsJ2 a\ !0b(hۧFߋ^'-nw29Dā%TTdT)/n%PǴA'8=n!+iF лёa('gQNZ gER+zӛE@;KA=[-. C@ xX9O]֏*y5Uvٙl vU&;ڏvE(-)4!X2۲j&vRX{&ף0 1jǙ`Aul|K! X}%~N3 &!&ʦ0ۛn Q5Nb6qD6S]ҫ"6go`~yP]@bB8+/I 0`tHZ!'66Vtt8$!~n8yּ6/(>{NJU؇MTS~=RY-+2H0_ UO-TDUfXkHf{ X`N]<1~{T:{% o_nJۙ-3YgBtߎ{uSx QYd7 W005??ߥTLE5K s: }&SK&k#&[F GZ)jƩ*`0c%"1F{BF! ;qLpVlayNքw;Zqe8 Ÿ\OUV Rw@.ظZHji:aʑJUҠ})z)tCGk{9g|/ڣUs݈H?iSeBf0Rf Mhr04[>ōg`TIB ս Q~&- VnƩ^e "R?[%Հw+h0]j:I-"+#6ͱrrir|F]hWEcX&2K03vKl.V%e:<^AK]\϶jcRیug+qeY1n<LXvmC,UP `'YbPs+ջA2z -LXX4hdxv|!cctP4W&D5)?eZ\w/8!}2!%ޗv}L}:ڏLjSW&*&כyWHMSy'8D Jz^ ؽD \OGyDV@PVHvi2hL5+-i%J ^xB^M/=U먫F2%z@90\Ѱ<^lxˀ{mcIhHl"/ퟘ8E ?kT%7U"))ma0{$x'dJsm au=`P$D^ͯK^|AV0j(1!wzz3,m4N.dN%Zvs^Kq$H V1 PILs:a;i~Hy* y NFU[@XBpu^~Ww?k-i\y17TR3W/"&-"MkԷqk(4j9bt:BgtH9_Q@TgbOKdbt7 /OrRXS]> >OBUE NS%HCTgO٥_{T-ήqtYCB VGbݠS*zYsŽOLWmI1emcיW:2vyX'< $>׼m`i#h˜zb 2YF@nY9w`eeBf 2K}•sZCld=PqaucEWb<%s5rXO&)Ѳ)v o` JZSe0 -Z9mDu(?<1$ hICͳ| U:B|#WwʲG wpAs[ ^ɘְa R 41վXΚ)iT:AF7vᓦ޺+ >M_(/{Qxʦ,LᕋpΎ?|yN$1>^*%c_: ons hTj\V5`{{g9M' w+!u-O-ܡu걪8B1 a57eT=mmmsrC,!ygYY<՜6Lϊᣞ<\exYgH6-bXbw(4; .i١J>6@lǯ7 JEK0& oO"FAժBS>xn9u,[<.I*ՃyMA$bAcZU۶qCY[mRx>/P-622ը!'*@q90NDwf8-EXK gS*qx Z|:hdSZ5PT> Гu͹<9_݄vZ2Cr7áKy+`;%IέZn5bǔr{*qjX5h[Y}_.klYv(DnV$^Q=^gtf%P EЬZ\90'Dg/Mbֳ+So]IRďTŪLz7=5ovrF?N)BG_}of`ky{N䉢Y֒,djDC)~0DMX˛-hTsm,дesEzw΀}Z0wB0P BMzfwL7J2P:,;xV+݊Y*TGvȁK-g,y~xd#r =զ}-ʬkK7܏BDqyK%5Ɏ]9,;-Kg~)θŮb%b`hE>)~nuR`-y"($M}#[ +APٍ^ЬMsDl5h/Kzu\:tqW^lT@rj/<%bnO h)ewiDGa'OèoRi .i׶nȿEъd'Dp(d~YׁɠOjd \zSL?նWSkk9@=hUaqߣ6v'%W=sdં!=`8Ni~7zxe-iUڴBm\~d+:#,Pd^eV/%wF9M$λ jI-HХBgIP"7t)hQ$]ԅN[6G: r[LGƗ]k]Je9|d8,n{|Gkjtx ~@֬,!a(: _(B ZUFsdY&DW_ӯi?hb)Q9Hbu)U=B-62s>-.)b"1`&GW§S@W#EGf+l| j%7&zz -KYX lt]Ŕ?q,HsC xF>;Լvv ;-}k36xDDp ~ªTBYm|eŸ=my|9%$=6n: 2F`ߜe=mPБj5I -+D;fEnB/sI~S@Nȍ./Ӄ)v)&6 h%4(r\ fd٭c?OPZ_l8+<4H(t[#+jC\Du.Ji",0(VFx=3cXyɛײrFaDE>l*3F/P$,72O x`Â̙w? 2p ^O>F&SJ7$a,R5dAC4G,H wg";*«@uWx0aތzsk*6: { f,9ktgA)lCq$*KeFm#W1UJ>bj}WTݺ4sKN4~Ov8^n^w)UWV?O EAW {$ftJB.I(\g3mag>ӾԙMdq>׳X}CL76&)e1iuHPK?SπdlE%t6 .pjnN kS}fmjfyDׄFzR#kMhZذЎ͡4͛bsX9铁AK@rA(ȹJ߬)W{@PyeTinM/T.Zbg {3pր8l24hHo#6P.kKu xLZHdaf(׊׬5D,Rא{:?EVlKNgWx0Fm Kd!J6C"<]ɭwįے`jV7onQƝW*$z 4cˆ}n¬ܦETyh4 jQB) ٘.LRdk#[ z }]>fIV.{-KxVzb{/qC7Xnm7w_Eɣ,}fύ0?\Ѓ+giF+CB=ł9 @ o(bwձ]x&"jd#5Q)7i-!/o?9_?=x%#&6.Ǹ%EcYȪ4w)~S`enuGrH e4v[iPMǟNn0.F(2^O5\$yU ڔ"HS(?! ~dgf>F1.M,4`?T̟yB1{F'La ǜ":J]w/~kEe 6&nGU_ڻ eXZ'/ RkY-(Jv-5ߥC;{9UIL.JwUb+op3EƯz݇#*HWTRrn@w@ߠZla%F bC@!|9v8yq3PN>fʽ|(~8\So$x,ڰ$2rH%ԨtpHifn/.j@?zVh[ԭf"}qn@|u Qovo-A[!t B';)guΡ 88gDGB⋳ QEipnyUb}T6q.Is0t 52UYxK:3Za&µu]ֿ[\Iw.3Tpx _Pa&Bcg8k^wLlmuuNL8 ^h3w-ȭUQ):X 3;{-b dV{հN)],*zs!H9I@ts7ƒ/z,S%D9D%-0: Mdp gofS487|ZMOL]gԟb$OI!k:wXڦI:XqI_aoRDvMMћ3L֑6sz`}Tr_2z&_#WclzÀD>]bc!jݛc7`)_sEuHe"ޖ=TF[`y4p6!2jC ՛sDq)fmSle-`cDEDNJwSg3-񺠚^+c= ʞt7=i%Ucz"ƍӱZS="FJ]>ϲ @x)8ܺG hT \ZS0 bPN' Ap~&֎0u&;`(|;\EU{|xAEXO<Ý .fY0{]Y<`]N$l00yq]_^̇a:>?װKFQ0AQыEt $쩙 b 2bI9 xc"Q$*-d)sayd/t .HŵK4T$?y8Ӳp"EcSza^KGj'zlR)OHF`T!aއ$Ε7O,EL6uUP^򮀨*ZzM+.z`ts^SEN{ދ3nJ|:"ǘtVωg{WH톖瑺1q< (7EcFw]k- Q\Ga/NX苳 /qNc!(Aݝs3#h7ٸ;J=F2)pE+N$,\uiq ho6^nNtBoWyEd!|# -,)?%f~];̦^H $(@B>g`l]$ ,!9*5fdly;i>,0loL3󳸃aPxLL D v 2@as<{ t./LŶ=Rt gxCxom{p"R^a"bV  y V L'q`Ny`!HŴws~@h%+/ SS2мd C{x:c)'x鑯"Of0xfd @Xشڨ@PosJZFʙ|~ue4:wOp"`E8UQHqT# C~wȨ,](6~hX9lXg#*J:jutv13l2NmSu(?iЁkӪ  3 24f+S0Մ‰&Qg&g%ü_}`Bы7H)w!BnCev)|+?M8\(4ݏB5?'lz|..amѼb:n0?vfT**'"rɾ b `]j !\8T8r '=3(JsRP0ސњ׆5cQ1'xjc>?[Ȝ-GZ#5 >3X뼣~mw^'=Y $Z#j, gS[~W ?[Y8Hac.1WU1> vR 5 JԒtWMHjn8/ >}FqFGa|Qi,zIL[r00*ziDYi2`Q:{ZA賁% O޲O]Uꀸ!bO~tܢSiֵvR-$GF^WRshhY{%E_li0ps3ڐv1Lߒp%p vyEDuDJKe粤Ab  2=z8똸*#}ЈXEMS~8싫6B*BDHrX{PmCvu{Gp7?19o7) ͘$n(1j_!^ Ks0=O+ u3\3 RRI'-ZUcP"+]e%%OG2+$`& XW~;P Gs>)p20gKIU/KsqWX#x_fqg:J$JwGqc a@ ~=9R%rV%6r6и:/UIܵWu7 3a("i` |;/yk7tg[ۥ#3:|bI$b}K㈣|_*lM+ZDȇM"'tWm\XKxE27T]c {/r^JBHRƘNՌo(Ր}<ir>@F 3‘K%䧮PEV:0)*E]ɳz%] ZTۺ9c" ϸS X! {U>$+r?d V\l’㞕=˴DovYuU, z+mE!~Y9ʶ7'O׾nxǹ:o%pQh6aESUs-bZfY3s|F ײOChQ́hFJI8+)=E8ݘSj8f6]̩bJ[U;@K Ie[YE(P;yzEI7z#K yAUG 3Hlv8(š OmwlCpZsКK߇FD4|zǪ _3=eU(5T'`"66[)Yu]?ݎ*bySԥ3`#h%Cc;B=[InO[aGCDPlGE wQ''2T`@}'Vǻ W+vجTXMC&y4[CPj5`#&-{%s +tm0}n /;xX1 ͼ$6ɿ ef$.3\6U?ʋ!2R"UWA'rujeکTtt;uOmqNtA•ז6V[Ue&~i-ユ{:Bƣet2q@ U2kN!9ًa Aqcإ R\ 8*eHcz'=%7uW`RÙay{QIN. Y 2s֯fx!ӄi5GϭB pUJ4#Il{4B@RN̢j([;qЌ_lݭ_T2n)[hSwG r.V0ptFdG#$Ĝ!UcZGpF ۮ_Q;To18 [ws2ry + 6itDW1#g)jRnӜ9,؞i\a6l"$-;[F6 I$l)?;߶SK*%Λ+"?\o%㇍6(1^ܲZuOrmhBj ؙIO@D[`.ؕCakd,HõIzeH@yBo* |ݗ%0JQfm(hWL2龌zޥ¤/'!زl4Kݩ|^$kw]7l"|*(&sD 7ouql_J7*}LFXC1 } g]F& IKL\SGZq5ix'(ōg7Rrǻ(jIڑ[zW:q,X3ڨdxu9!W49P(q =weAaZqڍ%D?oV){$RI[N2D6gʁ5kIs~=YGXҘxM%Y xg&\F#$ЫAmHHcRv b$=lyLTǣ cN #@MX hS̓L4BedwI}L^6Im; ϐPN@!pٱ70̤2I`%i[-̇{RͅI2z,>c*πP,Wh+7BMeEGlv&5{19q!%ׇY3ko[w}{=vlߋ%.?/ N!fCS̭иl_5p8Ha}KPɎ3rfۢ:U*>ʹ­IWdCUg+(FG2ՄK I}c8m6`X׻u!8ۼc a:XIx4_4=-hBEۇp)4B?qN3;z%B翸{ 4E~ ;!][}cjr:ãn IBxBFh^Od H iRxL0- -(ha, 'HLQJ+'ϣ0?UbMo鄞yӱܠu@IK3pK$do3Ǥn#+풚&ڇl>ٰnTU'i8!}E))z_VƑ r o-.?;Yn"Hap>b_JX\ݑi#pbNbƶN \%Nr(x`ۊ2+ PD^fž- IH8aw_?ԃq&}y1hc>z^O6c47OKt%gM򣊌B;Ti&(VsZUS@/?}Eu 0zft"3^V9̴? :0]dzel,:W+mA -+jJ14TմmQ4-T.IiNzZ\ C^#JBaACTv>dl@[J#7ǰ7?6:i_lkT#w9;~RX8īO]o yFKKNJtGBQ* ڋ*JP شDTcJ VP`g*Oǹ^rYCݖΨ0cɥcȮ0|J޴ s] @Í1s,_:߹[ojɀ<4^mhgфbX>&G~؈8 `rG*?6˦~/\iXąP,"hbx8C[C8%r7N1agΟ-'6oTz\'[$1>{^?][J͡aPbe:|JUOR4ӊWjl|^#6 ZO NhyRX"l ?6ᐍzvA@H4DWCk*|srnb gª2~_ ˸/L[ȟZ>>Ou,rܞςo aL!%s~2TBṖT璣GL=]@p"ْ8p'XsIx\ zM֘z;/-N1I-snZ@cf60 (xaMp0|$f-tQRMAZ6lCA3PXP|| 鄹 *:R ?.{ds zk؟0;ȡpyoLկz|f7g5D2~QV&Yw.2qye|ܹ|d)q)eOh} ,v&xWίHPl9PA=8JwCs-3_I{Nv NwqmdB5󳒜޴ݽG4x N#&dFkE3UȎP)/%mvp%YX"X6x~y?<6{-~D;%\V跛:`46 Ҙfnak(;{\p]eV͡6`IkuPQ|)O;v9cvaS()X: e\[er ؼ8\]Zo + ١Kp9X3k!ǗE2^ϑV mgHZzz~E[dzW jvw<2E6)ف۝MiR9T>&lX"_iKiPjbz.p,tWAbzSC3zh=Q[w3PB]a<SH>+JSal#?@Jǐş&'h|zGmAPOB֞hj ;6qwlmm -m86Z ~j12rmC"Rģ"^3S[tzw|ܬvYs^$Jxr' I=Z@y3jܸHVIE 1w7iIU]<&)$U f|&C=m RC7CCQ&g>ZByE}*;FYPI5BwM?Ode+\j@ =W)mdWe ->t Fdy&wꇹFʮf6,~]C^!Lozg*!sэOF}0\M>xCJ2ve5mPQuQryhÄ8ewōD!]3#LyG]֬҇a5MoE;9myXGr@YW N<̅p04tgf9{@]v̈R#FXSzu÷ Ǘ'FÁ5ؿkVÎ;@ "bZ.`r]v<4eyx]+GÄi6芟$G[ZᆹNq LQ΢:l*Ya[eWSO>si,sy3mK"{+OJ̩" ˗Y/EAqgօFj՘.z /DU,qT$i}=@ įnө\R3Y+\C@Ȧs0(ueKmvu(dݦ.S"QvZx< 43PWn bJC_g^$:D9S`,\1@#Z[vD,[Rnr_C_KlFsΜ}"cӦO DtoeQn6gU!@ c 2O!rJeLc?8*?# F86r qpLŪ <"WjqF#Q>\:$5+  6E n4vv۵(SC}؉ TճvmIηrr!LNF)'.xnO9Bl-J&#N@f4-g%zı,*yN8eLaTDvYs,u<c>2~A%G)/Y*"VD2=kjmK:-S3t}{B)sqc nuY^i8m0UXDhQh-u߻d7JԦLlvQ(ز0v;k ]?&l:uB?9 V e6&.ud]2ҞV&(R}Nϸ_?y[yx`z/r Z[p~2ua` i62k,=Zsfëɇ !*?@H@!9\럵_3nx ?{LX{Kz!*6#N1#167#JS䵄5lQ_w0];s,S(=J%ݣOsV2l$n$pDVϥv^ 0.4x6L+!5AKݗ>H/RG)pso);9rN~ B7FɨrZ@R=hQaFwK/. ݍ~n;n /~"ʼG9oo"rw3<> ]F͢/(+ QҞ3؂)%S6JәN Kk:͐fл` QXR&L"(B%!:?&,GE/-ȳiq ?$~?}qG.=%K}*c};jQ03^$K@O4v{ &Z뒈렐. b1_DNEl3SA7l(nD2,˵wg/͜n; !МOVɍ:6pOGI25iI ?G; CX pΚ}R(%G${[%e r nv+"eֆL/' S|lfԼ>&2z2CY{9oTm6#/V'')b :wRVm~T}Y&(VOdUz\Ww.Qbq]=Um>z@ )wuR[ʾ"S,1+$jym\%ړLF_*%!s?1+Ǽ-; h.7Hh-J[v^ǨTKWYQ؁v~^/0Q:S _&&,1w7~N  ~ ` Ӟ3cAAPE=J6ڴנ z?|K; tE`9,TcK%IT|lcg+P܋5YG<9HZ( SeߍVUMfNvp ypiol6'^g2@ 5o=&CzRMΏ80 ,b:=M\.Gf,FY:߼qdn7. v'ɚ Nt%/2RKMf4݄# e@PeBGݭX*QYD^4Bm% <-xުo4T;p<#&mpu ӯj䔱Pq)P{Ω,O˝ҋvS|ff_IvakWŗI(-̨Mt7ROisU- E9FRPDy qbPڎP#֒+;[ˎ@g ߵ:^$ b+֓I>Êx9P|jyDQge)$'S.\8U4y3K|wb D[KםƒodHX }Ԥ7Z^ LPbyqhg {v[\4b ,X\bSX:zWI W4 H"}_CLY*9%Bl΍jP%6y> \t^%mUOFtY]R`DtD52"gcr!UF&R-,w6tU̬+J u&_}9µ9L c/N=`Na{*R:" [ڎ8C#'2OjЧiǁ:nfna_@BRw/?&iQ2FҮL ,>B~.jUi/T 6fm|H ]fݲʹwH[zm1,6GcILgoz/4hX,sX/ĖNHd͐ԄZByۊ8(wa+^nob3@GfzȂgj\Z<^)t&2*vovueZ)[Y#u^8pʤ4nKSRZjhPYGLj/wF2^Jg@RϠH]Ξj1§_ISb,RT 6QV#h5ga xd955RJ 2m҂sbEQnj?-e+j v ǮFν T-:-dU2[I 8uϸv.9aO17@p@kBnKik"LN-\[?zۖ! >2噇,AG>;Nx,qWOʧ.2ƨSeGUe}SnnI[R|tIIh48,51kOqנT֞jbQʖhD @(.*Y}"l~kӶ!aneUa ni"rn2?i2v@TNWI]xlPR+VɺZ,Q6|c#AF `ŮWoW&cka6*j/oڨ9(8BG)9o8.kۼ2t} #_2C;wGpI, BÈuT.eEDP}-F-uu|/5*{Vn+Į;/(Z)I_0cs\#4ԅ@lޭ6Lc2l>8P8HH TS9kOi[%c*Jju3΍ߪ#j'a]ΎU`x0&&s"HTa-M 7~Nvbv^) ;za}[<uUtwG߿ ]({ٶ9?x\&KXU '~"zlUYkO$*Y6_q3W{!Y ,)E*o> MN}89g,j:n c[ 6i)CA0C B q(Wh LXD1*r| )Ui}Sb65u >=iNsg[#;ՊcǙD쉨|+v wpQP°Ƞ:Zo_+oEaFh%`C@ ?h䌩%Fkʣ ui)):3/2mT[nK|>Z#U#k%1Wc;i /AP!)}\тuZ fL뛇aj," c?߷Z!_&Ъ77"ISĩ *g^j_W5=>e]phMC*d5NE=瀘0}wDžՃ|(WSp+3hB8Tr*E=TjBW%}ҷ9;]{C0 YEg%=6:?Gn"aVCoĖF.XNkG2%lU:|#2_U ,'&8Лcs'D:F`@oG~YWhsZ@V. #E 2+ΐV rq]QGNjf0W\) cֹaAh.Aj7T"v,O7LU+FU dzt(17_|Mdk }#gui  jIJ!lFL 2ˀ6, v 4;BWV멠,lVl 3.G9nL)>(NA`W+qpSh؁Cʐ׉IZ*N=59)&rPj mJyvA&cZЎ @N~|cXSz$ơ\T0$i `4Bp| U][FO@ZtY p\ֺ% M݅Ѕmങ?M0bd|g+/@7 ZMfn J7AZŔy~~0[X1XM#"!8pOpheH4,Kߍ^D'⺹CL!5k|t~?]Rv;W@*%4kE()*iV$-?!r8'fBKJ0ESGA3tvHo) (9kzj_˒f*%7$"lbPɪj)_BZMT+W=ɵDZ@Vip1]9ck楺3i,hTҽu;TЂl9y ըZh H;E P4˦rN"9▆TL\ʬƘ$Q+/aUF[h?$mK]vLuׄ _Ѵ7,aw01wY݁緓ם&6fX׼U]]O>Z[RA-ɮKN}y!DӱT*v/;ʀs-(=B?ez<49x[^ҔyeD9H9tCwtVE.,7hGTj%ℓ+ݭsgK@V6rϬ瘛 a_ x9Ao?]:i3]r'C-ev+)'# ӒWL^^_/򍹐: NwM gڊ12@ɂx6z>}W,lV\GU[&8noxRF MQljG Ђ:+#ql0NW_"1|[^ v߻Q l'wj#Mڽ3Bs>ːc'6iw.' l `Pi< BuY/J%룱j=uO k"@ULc5d.ae6+8"D2N| _`xlh hU^hDc!dsmνoU8!ø#RcRS}%e'ujgRӻG3E.'5EFGǬtN)`~g^,p~ <})Nq9#oylQma* :L܈^fj A9<&EVr"pťt|$4 f#d$0T\8)žY '\I ɍI)U^?0פ29o0"x1[[mZJWˉVV$bNRq+d= D $m iPN] ZY]Q]=טQo}e; Ij̓Ki⦃ |-WAÀOyj-!cE'"[7@/f;jО.P,AĘQGx9 YӤ.\8n^W- TCխqt*8nB[ȓv75PS =f ܜ5BZy3)ن?HzA*ùPv^of>QY^aϜ8F}t\{aDli4a̟CI8x\eY cy.B 5p¿(8.$fR [k8v% 7)k}qG?"轢1u^MHLXq6V6-_1wL4b|;ݢM?Oq鯞+7uM(%-0Aw.|@`\L1[+< <})| NK?A!$jܥ+}2zg9_r]G~gxSP0\ {8|+Z.\`냻 C4K@s>#Co-N%)qU-}Ӎ"$Wӯ"Nj <8%0_ >ioiFCkCo4K~:z$bԋdJ&P>.g t ,?w\'8Vʚi5,U9ܡ뾍0R$4ؽ@N[\w:}XIӿY" ҭ:OxxźAfYUW1rJ@_ʮE/ $/^݅ y =Ye{/cX0p2 2#-9K]›15sQQs7\ peTj-bO3?(A4Wm.? k9}ub vJ%tM៉k!'Ay\-u{}`C p*,4>E &{>i<١v,HTl+] ׳ӹa8Z'-o} #NW l0iltŲ_-a 8-JTƁz݁9b3KAS"kaWkm1*<-;NCv[,}jMN?Dh©bחy|PQ|Q)e-b.(J#pg^~\6.]s3A;ygfeRk8'j!RLM7˗-U#LJ~ˠcֹt}2dE:mgecD!n7#q[]2׿&2FK޸gj 7:B.| ^u-9G(zPJ+Z'~lz`R&=ph~eYJ.Bc"k" RLD:Aߗ1=@b($A?C,2_Q)˃]][PEvYN_W>*Nצ-?_d?̦:{=y,;Y`$KqLhjAzpDt[zT9P Y Er8@*omʜ{UzM =0[m,p]$Rp$-\ :f{>O"Uy@Ÿ;*ϕġYE Ydࡩ[jcr吨9$._[V<6u \`xdy|n0 d5 ~(|ۮ,F?nx6>SL9R*ϼweP'2A0 x."&7FkZW␩ƪ(x ]vg#/`.DjuEwZڃ$&\k("U![VTb/߄꨿M/erSE1H>]I-K5O/ʇ_K FtV!uT' nF޲k+|.dukms%MgYE=%wR*Gi_0U-0fCʓ_)|lͷn85DdLchM?`"Z+R5ţ53I!`?߾b~>,SAP.2v@cr/tfj'r?GhqNJEy6g+/k)NCɽ~vem,6w@ Ry4E")jURf6u~JIirvum3;=ufEm>2*i'`o T8+6Y_y AGa?Xk~̛<5 K{3LRrT奊1A,NMn`p9бLy Ɩ h.(*'رȞ]6zvbA-tdTaNd>@hq~esy [I`U)#83fd!ߒNH /7+3mWC0-_&ϲ*?/"c1:L>sA{3V0esw[zih }1'r|;MTZGPaR@PZ4"QLL>4yh^h%zEON =PoIyW-|TnrfʓvPAqi%d ؞ =P' Y3ygժ,4e I`n{znd9Փ0ʶeuiÀ4~O~~/1py @5T5hq%ߌJc.[r Nql#+i좁)FGe2Nޞijb$?~lr}=OӼ`e#զg˂6)tڽy=b݂⼟-C#i^ M@ E?`տzS5~ggcG&G$XvUݷ`HRdzݢKApa>RoykZy&Mi1v!yEyS#Q 17`weȑF.8'= =ޱ]~ Ev":;X8`DdŜGoXAAȆh9O(|?ց͚vzEËVn X?~:HC^@`|ۡ].wap/l3|H}b5ɸ&WJ{=Tx&7<҃֓d|}zqO1(z5/U%G(s1rT1C&\ W==G싑p&W8k.?A 2/MH e19 ڙr1*[Ccq`@@b4W.P4,i /kt I3F*p,y-#V ֳ=:_0]ČzmKeZR-)J0]qT.=KJg'|9F;ye =] ^hfOqQ*]J3BᆠIj*p5ցAm%P(Ta:3."Zo'̮zl H%J4T(w{3U'<ä4A_ӆ¶x0/|u:Md}wZBȝnHy-bWDY)E̟ ;gw ֽQ+ fIM4dB=`#\e紋e@VVFeOh9K$Y܆\4Pͤ@]YGq@< nl %#fze5z,a+ !?hkU>W`,um Sq;QA o~ng<}2aMDFu1CFIi7Sѓt|oA(豟\šS'>r":+'t-nEG2Z^͎Қb,2Kl:ފe]6dD[=)|Jݗ6GhT{Aq¶i 'ԭGx%oDPLx.LD]Ap Jۺɧ"C$Źvn{c`&c4;bB.=qb吂V&$؇L3D!G+5(`{ױ|r;%4҇M!ѷYg>kzܛ l A[r,+ε"3X"ow5˳ >Hp0j)Es4ְ Jsouɼ+vG$`MX6^n=Q2ce}'VB35ewo"HL>=qk_'Ykt.擴 wq1dqi͞k/ۜ d^7"NJy$$;]0(%tasLSehG5 s{3J ΘLz1;@ևɵ_"0•}_rW1Ryp@.Q'|;ytkWklf&Cwy$eO`֍]R&#'dMGK-;?zR'?Ptɣ7GQQjE5sV(S0N+7I7[--s)Η#5:k*U|mE0zHiyX>"1~(̅muK瀋yKmXJh|!M ϰw~c RTk#Ly}!+(ٖo6Khזp; ,"~ 3Z&& )9vie.Ò;_4̈́ KA$z\MnUO*Ql/Q*T9=(k })˕6MTڴm.XwcF[V6^_pkPq`Hx-fsݨn4r|3C0yh'bllRx~X]ĶI-V)q NܯړF^ZAPm 5 ]?߈Y1G_x3ꦒGU$ԄL8(Q3\y F &j4#E:?c zfD_k7 :R?wmU^Xy@d17Qofų~<AT zZCߩ*~H^#Eg93FNKjJ'ц2(3`6yŇ-)>"Xmr:bnDn UE" #"?⯱Lu P ɴar>kKUn=Bk-XȠ:CLëG<:[dqw"?P{J*~w\f=yڸהhH>.6%ul}x((5C9CQt^6սUYG"yEvy7>zlZDĒCU aN$kƽ/&q8ŭ(v3x $Q}23$mLmVWR+IJp g8${ d Q Y˨YiN'+KƝ3}zX'452'Ivq4WJ-![<*,SK޾Dye-%xI '\)h:BsiDI\aSnETd&ڀx,U!ARRSn6~g3{3u#q7YM1#І^@ |{e\E}uyWsb%`~>׊(xQy3dr.~$Ʊ[S<f줎AJt\͠\?ꄿrG>T}8 8zvFcN&T$ΑO ``p~s'2q%\N?L\,ֵVt_Ds[9@^E ; ٨y߻<_v(⹑vj;-4A|'d]Jr9d~h>o`Qa\284(|>lsf_s@?i@[8 !c(N"ǮbU]/ﴡQncPP[M*S+{Iua-LP1Dڸ[ i2/XG i֫d72v#COAθ-K[??f<%d6 .e[n۞ {hH7dNIJ¥N`z{41]W(_t< !ǯ1;L&IjgމNPoLWK2'4 $J&)1 zZ_^'>`˜ 3&$wnI%@Ƅ*oc()Tܜ4* l>| UN4J~HΛYm$g%M1s1oXcXg[a&hݼ̯wZND1Qc +).5Qģb梶?@4sPpeȈVHpNTiy'`qM9p$QT`HsF<$X̧zU2)Zz&Ph% @#2 ) $|t)M,y+H+ɝŁ_F-APu~dEƽ5UIeWɞk~M@T/UL{;9V)^ԷtV@2 HUx'+k,w`6Y)^DM@ D1GӐL&Urs^vA `#ޠK8XAV|ȿwabn:v3+dCb5I>It~9]zENm r; 97"AWI{K$Dϥ͹)39CI飗A 9JlQߟ-WWu`hM]e.\vRrM¼Ss_6Pf(f 3\vK40y2D'<);@Nm^_vwoN!y@y:SIqfiȷdm>~>P"hׄ$dCJ#Зũ"4t-nǂ<^ɱqI7 BEHc |2Q/NJn3 DQ%(c=hZJ<HbeK,O2O˝uR\@lC\n쮀r*ءCīQHզwYM8eE 5邅kH}bLIj=͕N^F&>٤{x '`%1h u_x%V$Ago d6A.dD5Z@)hd.v}W3Չ/jGW*9488(\0 }=tߴV`S4dJ7Jtu۟u8oaΎoh3^"5sy0!J_ϙ>>SE, >c7)=FrR%['ra3K^%TAz3TiVS )ʫU#Q/\S>YW@Swgޙ6kBf6We?GPկT=xc5լp9ϴ®-F[ȁd~Hc A-̸;crr]JN('F45ټp+,ؚLJq Gx Xty 9Eʻ.lI "{?5 @dv_L3BGLܚVa2"a?0S~[ &kѶp4r$ ًʼ5ܜV\%ك7b|)w{ge+}O>7g^ǀ&#iD {ԭg:49bL 󈜹v?M8rɺE"֭BQ&"@B9zHfCώP6ŮnV}ѕg7K6$F-#*)5{"ӂ7\ k*edIa`&0A@: ܈pD[N#׭251C+L| J/'9V௑om=8ia__$\L):\3/l ͠~BajѹTUcOP-UY*v0v4lcXLbz EYWk A$)ylfOŀ/&6X Q}{؊b|7DminUQU뚫gɘb iJފmU jz4'rF9mN[õvRRuS.Ys3֚uTRrwʠW"3^~4j\?J8/c"U$+3HAoÏ{M=vH㚭,ȓM>_f3pML7\s Irq픟 *E`I5=zVI9׷D#,)pGød7R'jVaQY)ϋNU$ؤě]7GG"KP_ZA#k7ߣ/!`Zsq{.FqJd@˯K 3MD7rY.x^[7Tp`v`EVѫX6Q/^|ߩNGmB !f RVlEBT7bFF/V彎^c(Y*Pb{Z+EעDџocQ dTtd> x"/9}aԅH|=:ww+W7SIi]!ҀǗ/5yu]I!%Qt?,L)#>ŏYn1Xw[?&- dVVFO&! x3ckD袺x%hO=gu &e[g8:%Q^9QXjlؖnwN{l%V67^lc%GyUv2~:j,L)ߙ|a`4 4 De%!2w!(&ͦg,WiM~nytId[--+ZFK}t $BGp}޿/fmo7d uV:!ԯ6IG>ۓW%Q>^@D* k |\Oh˷n[?4,v<XŢlsm;Fp -j!uκbZ#mtߋo$c#do[d⁈0_өw"gP%G&8$,63ȓ+ULnKRN;פ;9uck$6o Pjaq0cUJw@q!92`0e̎/bګm ʋ$(2a_cĽ5_O͕6 q`뤽ol7( ;ON&!ۛxЕbH_1ݾcn%zrc$oφ;"n2^WNj=|jV)⩈@'4jdggN®ٙGh=} 2U}V=>4L8> C41WXSUԌI B؅@}%mP~ ҉3`ɱS0jMmા/,81W|8R|p~O;i8n=bhN4\@~V~ Q}̼H ͺ/4 aꑖ:$6`>TxNEt6]tpϜ33̣Iuo< Y1]ƹq=R}D mȾ`msVZKlXͲ4KQu9߯}v;ɠFKXNUt:F6DW+vV߶Png)7!s_\*) ؉Y(@IYrD6F y Lz[T>^ME" E+XfTD(>g8ɬ1%ظk@EYTe_x̾^ ){r/!*J,vraxW Rx؍+ZM#[Aue}{\4WgTo4{1ȹCUEW$]EjFt j",u]XH &+1fw0A>%(9ffG~PT\v]`v xp^gXY0S7.1E" ˦^2: 8ki#DŽ78ALxd Qh|SA_ro2a/f$~c|F:Frޡ>*<=lw`< ψY6*RFj^9e,7?SF t:"_0dh %oL}#mv'DnS ?NT3S^?;O;gZZFVުVaҧ/`6/0H3ۂޜ"Qa_ht!?xzx ţLjeA%ƓWAO3RM+U;SO\İ}jmuَe8|Rzȗhi/r);`6J%AYid3)V| yƐðD ~M/ŕPU?vg!_zW/l*fr!tK8s3%!vk]-2HfJk;4B"P`A ru:W's`;$?;P6Z[Y,Rؑ"5=6Q%h.c U[^S^Ho%gϏR7K:geb6>)%o^Tq2j.?a&z&R6ZI<@,1X 5c4&m&'g&? ʂ nn{?XnO'+qk";5,PNDTw7] f@K)I'͛i2_n!Ayɾ7ip\K_+e, ib ]CD|nvEځ\{|¤ # h}aohxD&\IWy@}B7I[(C4}tzT+Gc3&S~3WQ+>E?dxp=ŘDy,?E 3[GڜhL`A_/s&R}SMYҵ[ᒪO^~͞.ƞ *yydJ~-E\_T:6꼾z\!S%@j >NG&ea&OWce lv>=pUWWrcGB#-,JPq6wFHTۈ=j8 aAƣ{T޳Zs6Ix Hxk=K\RΘqM,L>a;wxG<gmi7Xc &Q˖ֹkW>z8|ߝiAB?>\7|)[!8JQГ+3ll֮`U漢4ؠsNHqpD8P?U F:>7Tó"fIlLݫsL4igH \{Hcd&wU#.IX8-GvHJqk0RCȲst~~ljY_' ?>6;< UDT!V'~5ޒW%AK8.vOԺ2㈹% E/,9;*rEJk=DIpb}N{c(αb7⊚xWfe}J7UB ^HhN|Q 6\#jIMxS3{ Q^-!9r0xS0wz[PwO|a]~*] (#[~}37 ~HHUn7aC٦=;;xvPfuzL߂(*ހIxR{8@2RH6r5]nz(`E_F% oT@/a4F` ʙk |dtZi|_PքP :ժ=HvO9溆r }:8~QLU^4rFF vMzKUoj?6aF^M#WDn)`7M3 HkMYʄ܃S<b<[ U52KE .cz)p|g?`] NZe/bB2؆f@r3QAqY zNl'>Hm-#_BfQ # N$vQrB#AmGf>LSbK*?Ƽq->W~ߴq\~s KɳrggO8WA -Iٶ%KpL׎M~ԸF_A 3 r CLIgi*]6iWdІ#vȣ*^ԪIHeHc0g\3VIؕ7}.P6Mn/pze.@iȆ-!ŗ6TKrWLKs؝K=8N+1^Ǣrb)rYx*q<a#4KtkaAo3xnKwy2WK5NN)p_lj}RbbnJ>1Y_`; C;w=M7J*wtc&;6N쫢1㢥huoV~GFMS6!#2mv=6҈:=He9kbol՘#@GV.`Uq(/\$8R Qc!׭cr%w>hëHWz`RVB$'m#]1.JE2ݎ{N&^,*ӈ`܈'k?0QBFn\ק{+YX8-3#WP5r6]v93ʌډ(*I˧WZX.uƚxBCK <6Nxٍ;+!2HBm5‰J!|[/J%tXzoC O* =?04Y=I-ӶI}*/YqQk{{ >9ft DY-i'5PỐ.[?M?CzAߢڋsCi݅$hh&)^&Z`ȆrA7K2HFSA03#7R}:VfHˆW9t"wnfB'/@ PA:bZ꤬ǺGg(͍Yp[u ` 1p'& n4l#` <c/3b\*SFL'?B´3npb\trP} ;+#+ae$8KIksx}n=3C8μ[,s|6 @ ?2+TkjQKn0:q:XфF5S#}uT5ZY[ ­<);bӺD7WzBuyVg̊Q+mP8M`SA# X<(&bZ|@82w˘7">bt; aᔚS*|)LhTq?A]Lg3i':thiK02[J,5`dLo0'6z "=*#0Jg m7ExBQ+5N'a)j ecHR6z(Z*e$@g՝ y",ӯ0,"5;vy/_q-|wyr,˕8ɞl%Ƽ=!1_Yz#"s}cRƲ͙%18`)Bk\jfQs゚f}:D9#tk# 'BNߑNᰑbW$ɓަ"2HX1oUuQ#.<͏jM?|0q5"&}L軭 Ey#,/ZŜplf8/K_a(brAUETM A8='~p:l1!`^dw{V11i?3kV<Dڮi~ptUj^AJIt*ONrz18{&v}K_& 65&:aW`D0FT%Gq ZB'CI׿2^kv&t9fI 9ai"ԭ(@i铸dji@FG#X?yA]L/EHUMj}Y\4lĺ=M .0sΆmS|{j9(;{pHq^.# z Hix-XBY48?|Er2~#VA* t[L1c`.pMZg#H;EUlyo  .@l"we#G?Rd eHRxإEH35*> ު?B{c'?_ntL Q)*ȟUltM(iC|Mֶ rsk6C@n06uMY+nȸ $̺[+XzB&:S$2.?3rTr wy6Һ{@c`0CA{ŰY4X45 6!2 ̞z"}eP .-鷜UtJY˃}|5OV]~otbE``Ґoǯ.PfUl9S*IfgaAhSut]0A{CWmI?Dҷ:CFp<5cSz}^|wc<2:|3JU`gW 犿fA@+ۢ S'y|gm~% ƕ碠2slT~H%go/k,b`Ey0Ȗ8\lSuwŬv<3{>UEW*%--v1OgJ+Кn,umԈ,^䷪Z;}kctmw䧿;N;_ ~r,#V؇[bՓRfn@f(Je^X#{db?Lf R}Y5U?eԇZ%]P0FN.ps; )*; t-v#±E .vK)Y*Ŝt7TMUe ;\map)>,HX%zHBu'm/N$>N. rmnlt" Fšp1Xx=;'P74G7mFIE-=B2 [4}߆ Cz,4WHxl nOɝA(X㦇6`r`'|=%;NA\ی^qIp)N3~h. !*^t6`փClwkD^Y7Kw 2/~'LqXD3.HY2/":^JPJ,Vws|Fh&&u^mCxN, olm2axsM'_6p' _2{FJ=:6_bн 1cAʦ5N%b=B>?L2d)$R'Iv;~.L7'ʪKO c!PQuPku*Qh:`/zR, Fn՟(ڏsUn7 n5W%yv@yF PL=bVIL[6 Bv H䗹ʄ2eZ4H|H'ŧjm3͉p聧u{jC ybsZ9K$\f|Y.8yg磉,vICG MG&/¸fL_/pmv^ВV$ͪUD?2нd. 48w$3ĭK)ye7̗a{I0b~m6&V $?=? 'd S&:|ώiV+; >L]^gqBuôSu)̂'3 jvKm*ba8|€ ɕ@ofv_ `ʯdk8kx3¦Qeq4T]6 V/VN{*eq<|(nþ֒ RGm(:v,܎MIn7tC"p 5sPtIx_ա_Ŭnf@N*:^#|;~1dD4‡]rǫFRuyj .ii|"M ͧw^>NcgvK b:COħu/{ );J 6؉g xqH2.>c %EAkZ8S$t X>}0mQ~ؾt4SPk:-+>1eӂtReco ^DVil'$^#Qf tҪ`Qux0p k=ᓏ q̥oOB_iʝ˦bo(7aD̪SjhgթqםhTDM 8B@B߶>"ثIskT2MAJ*AWN ;[JJE. U OtK,gU?!B>v˪cM"tFfBMכv`f"d:[T~g@@aUz]f錡QdpBՅi*|N._\|MR☬Y G`=h){Q 3iAԏ`׀8w«P2#ԬT> cgЛxSpg`*#SJID4KJ9BY4D8 xNj:&t7-aCz\X@́`Apu6x/iWϾҀgin/w;͇bej`&z.$QIK} K8kbŇU&^^_NfES@zvݺn7^6:wM/fļ`벥^8f4, 0H;,KaHղc!4"k_ ;S)t홼j|`6e. T M "h-~ I^_mH:<#Z$>VidUK w;؋ m.,}/- zHE,~ DBMLM_PZW<;0>u[s}9Tb/Hr?fhaBv"v&}1@\_06X+%F6cQn#e j Sg4}f^V-,jLu63z\[^ F$j3b l֧ SNƙG!l:WlI[@RJ [)Sݳ$.j'U7ZswQhy Јz!8IS_k)[[vcH.{= ɬ ZG]dN 0 h vv!1QJc)3-fusv ?(=|ɓ:˿ՋW38YM۟:õ32`p/' @WA>P'rすF5 4?>;&nYx4M c6bnEdXf'}4oMĉm#!)5>QYF&hB>eֆW^«N0ЯfY񫈿)xӈOJÜO_\R֣*rdש5J<˞L!J}ԍP^v\0$80O|^s*Lv|i{i)7+jy:ucǩԃ#f`r&qA)=! 4gzj0:J&Z =F7`6/ ?ƦgQ–S:*iNu/]H u=*/]!Zb拲 :`yD7{A_@=0Kx'v79ŷ?삁 W?k,3ThobMZ+{ . sHZ]ѭ:kf xxp` <'n+ոrbh R28ř\9YP!5^!يxUq Tí_i'8p$ϭD>nY.)*=n eC Ct6F=OD'"+CA'hVd{ `^_M֙d(&g{~SW2=-:a#BPVN̙|Ayb&[##U(y8LDZ:oӴAI*єmNKϥpH4@zPݓMHJX=N7NiVco ʔ8yfJ{TF:CTqw݁Yȣ($H4{ r~?Uy^ be/qFM0V:a;E)L%Se ^Z#ሎުm!m;~`tp>rax11i4(3ar/[Q| @^ L,=7 F~]O [lJW6L2$삤#Omul C!Yy9pxI9 =9g̎73]b",d MmL9*{X}Orh謜b*Wש Jۘ$Rp:=ba#_m-KwBQڣ:ą<"4$p8Dab!JLbԛDֆpՆնd,`VPC_ȤZl<_]R`iۣ:$;OP0"<ކ.`h̙Hw!wAW}!MQqXsq"R6*LQ8mS! |Gr+L^ /ϗ*n~R7& 0.Sx .8GK.^,; s@ZЫ-j T O՜6ErRj3!=0xN3zpA2JI*ePVoz|L ; g&jYp ģi|+kxKswnzXҮo:SA_Uk?xVv$NR4O7?`-ȷa;//yH5~Fm@_Bm+<)d"3>0A\tbf?QD̔>*LѲuW9*Rezg#~҆GO噎A8XFًeY)S8~b[Ksld'Kv:^.F|I( Cv)]JseE!U} +>>kLj;"㊧HS{=ޕz%$%8pbtgjQYsa3|6W9[b Ҟ(Lc~n$X ϯ`AX!L?{Rl3htF\u:˷iƧ:m[ OZ<gny Gph,v|Nic/~^TWoYf4FD ÔI,h y>E(4G/YhcnEڋ 2m$~@M2BQp&!\p%@@&lxuk{Z!eE4\c6Kt;e ke},Z k6>G8(5 ~yr CynɕG?Ә 꼛OږLmۅsE4_[yp( fUN ȬJ"HOG9dd VK^!IP ?gY샓]/oTBUmd[MJv5g4M+X$`iL75e`h[G$RGvA!=0#LC[=̏q9]D 3Gt7TU}/D@w>Uٿ䚏B¿۴Vsno͝ݢ2Z ejq> {&$3<0PDsГŢ 2_.JIj =N!\^m I˲U'ۂY-m$} rYc6d2y2/v(7휯/GfOQ1wW |Q(.lkAWjd.m7AjBmHtX)Tȗ䔉ۅXD9n&3߹|!WL;RD-=,pCT&IXļص{gLgk-aus'ٓ2 ;9c8Hnx&ē>#bf3Z[Gq$9qڑfmp'(Ʈ*!JcT? 4PY<ԟbN*>'\k>O٥ylԯ@f :b}ō3 Ei[: R'@OQAͤgo!gJff,veT ц*u$YJ_ʘY27}z`-I45̶9*0SkJz _L\Yet#5=(7R0a'ܩ~R' p]7&pSMo$X%ۮܔe/@&h@ yLe _K'){8@gC r$i <#eΏ#-&칪GKŰ2GîNL!NP{ƝYc3 ZWq{LPwZa 30%GN>e ԥ^H7e|V-,M4;/~Z/-S("DW5TV27"]BRD"̽`c_uWSɉx"$L >X#s8]'<8Kzv np{ɁJJԁOߧxTS`3 I$e>CN×yޗ!ӑ,"K`ݎ#(?0=f'BXĞ&\DvM̎Cr 2K\t\Wz aV ,0['3KLoRb6qN8 2Hpj#ƛ!H ј$;?zPРV$㏟>$U1 3t޷\Ez fſN 9H7ҵ,ȒEКDy4l1%5s훍K n(0.2]֚i6kz6$ji贺Lh#UxLcoKMOYho2#Α7L@3{p0p3՚f~(%Ц6"dR3jgF_q&0=,ls*UL4|N{ Yٖ#qn\~ܴ`}cA@%02cLxC:^" t)`uhG.LJгi} BΦIzd$ۻ3c:\sP]IL},\]bxv~a&n?Ȑ*;*2Mj2hҥAvJzáJ 9J _5+.8$3~&OsO1"g9L۽Jrw< r ;]D;:w""u$ NLg,󞴗a4G=z%)r6RH WԏCuJ+ݖ"gw*^ ܔ/b; ^eއg#zf@5Inqh}b摝hZwZ+l6kYG֬{hO8[HOo V<7GIo& AHkmz\$ v&Z 9"^?P]w R@wA[MxЊSm^Qm[wskKem. OfolIIųD޾a.uu6ZI*>#pf@&RfV ~܁:#Hj̙v#Rx+&1iY\cٴ`P,~%q1?Y,`k+!v&S1|VH f:*ٮg@icR߷@C- e]Du 1 A,8;Y@#3$ITTF掙9fkl1u#kщ!$V=yف9OzPՂN >P%-u B+c\T'Ҡ;q4;w:9Eu1&` w?<°]W}'*wnN$"i{:||EJ׭4`4cL >~QRݲa3DHʎ=X̳# p)T֦/YEGo[6VnݟoP @ +#[ wsy Ś?ɱGE[U],R":3!N 0p~tKYNΥ0H ZU`3Wq>Q>ckJ(⠪88dSu&%$ Lw74Zf?T0%&?n\YL?pa\ZfҠڻ RHimpݎk W%Nv'VF4 դ L&wq C%xr](_ WmqzoT*Ñ(pOe Mu?[^Vqf' QV'~[СОmR$tiirOgF'-IkD9wmlЧQ^s>1#ۘvlj]y5m^[PO=PZq.aoO_ޙ4)t<&dYh@IytF_Hd"䓆izLK}  VF/~a󧽐 Wq d?"(3aXugPquZO +Jeb_1] t(tSd@*I$ca)4bs/G-I)lͤ˕w*9P4|Hlw,Y0P i$P kAhFYm+ ځ m40B"꼒4#L`٭ߘ'[rDh>QO 'AV"^YRuǁ6ե| a$R=Czk\lmr*yX;VKuXB%\/b/~$t)VTmFE_<֖'o%~L#' rX q+\W)yhэ\SUןQLpB͂'CuЎWCq3',Y&|zAi-T;NyhL[cDʹ}0&H pRHyWٷ @,7 57m'hb&NB8zp d;eEm^`Nvlpg T$^3utFB먛!Cj|,yZ* FNJXxߔ)UBQHQ\ ~nPI9aMTщKj.O8eVǔ5> .A}h1 0RAJ p 8cK}nBQs7BB3mS&||)8ǜY%x/JIm<56=\iN W!Nc;.iK 1`Nmb _]$ UTeTpކln{Jqw$5%M0PaNu&gMCҪJ|3j$D5j]^" (ćf~d$U?H$pwV6RƳʇZRv!Rj 19*#wƿ{fx*sjoÃ":0|C֜٘8Czz[קҿY ,Hs> 9 ճӘliyo7wQ ~&Ar+ [O,O>GpmGb$c&-Bw*8Y)_^+;mu%7 =Ht2^oU P˸rk6}cVnqJ^ W2f W- i}p'P=J/h`^!=IvA=;T:?naQBe͢t-gD@` xاѴt^Zr͏kv8Q/Z/X8gRl_H@lҙ2+NS2pU>a,'E5SP)ښbA"c;3iB–"36[\,é+93T_w=[J/זO2 Ųmbן8x֤.>XIrbH pUBuB?p :ǭϔO/8ѵ0U⩮2y ŠF?}7ԫx#")g.JXbSO990Nؠ0ͷWJ퐵U-tRK="%p_5IG\=(}7Yw_VcC^KKp#LNZ>dujdxwp27Pyd˙KZp>•׺5-j6Vy͔t KbuM. .Y$¾2_gߢL]l~ruqG"@Q[48K+OTХ>D0 rc";6\. C#N̡"./] KmJOЅfyW`P+{m9;"`7'#o@fG+ e-sl6&P5 /ixϙFg"N\%^w$.)Թ1W8(dB#e(@Tj/oIy'fm:/.]nxVˤ| N1iY>gUDZbPj"ǎ Hkۣ5O&0uuG֓~ƲXCLOTK{ Wh\q7>r0(Ĉ[ ZNGUbo45 b0c@('P F=LɍK̆H7^ËmmԀh":R8i~(hܽ_ }ReqKнdMR슀g!%C|`qwޱ`#D1ÞZ]ʹ2I# Pan+PSa^Za{]xgB FST{X(܋4;ZEg\=͵fːM1 X1T(m,!j&"6}4,3A &zDmSt#$*! * q Gx ;,bqn:Hʲ=~}ĝ]n%E} m 6}6@덛Bb(s#lH'Gm9|< ܝ:_DH."0i,Y5C5Š[ZQaL`U8@*r4j? x*I%E(2ï9׉9s- '.&RP}~h?`Μ/Q,] ]S{ i{"J{hQ~j瓂stpo`&ִǙؽ.sŧLWcrl HhtzC_^q MZ8I#sQ FFŲ+QTMdC ս[k{NT?Ձ *r1ˍ&;:`A߉_֚ky)#}!I`^f .#O\X`Mҥ% . xo',D;56iD9uM@7NC#Rbkk = )^8qN{RQ!a;ر!,Z9>ی}QN)[9W2 6Rb7#P$ K\&aMpH +3`RC͏>zmY'+Ft8}/e/;lop>X#֞D/(%?$0Y/DᦾjE-) ݾn@lȖ1g (Q;>0h>B=or;{8w45EYB-|ؙ_qɮm4؋0-p8(y_> 8Z+zbV ^4hYڏHu'X@X)GHNXSnΫl͗V>Z`A՘p,xED4{ͽA5|UвuE,0&# ͠8 ɒ}!@HP +KXEVbxR3/:.YY`e^%FJSƗfRܐΡ|e0 NL?8}[٦mFBG2&'qM|gv*dfC@g/A,V ^>~jil`^bG+ըx|͖L؋`1y,qSUj,-,d/;Tޜ(9θ 4vL85M}@%@jLQb|odZvf=G@v78& aJϨc}Jl7ZAָ(9+^BUufu0kkӛ/iˈ;MI$;ZM[sds:PXn.x4":*qf?¡YGm>ؚ٘ ,("n")R[@J  "INO:iWN :k?6,%*Q}/E_Nw'rqGB~dHӘjiIڄnx3TybPm -ɤ6- f j˯;.8'Q;mA{`Je3$-š[/q(~εtN[(V"̕uZ)WJxN֭pC㧺U7 ?BIՒ&95POozS0;뚝A+M1_Ԋ* ?%~gyP11ev'AkC'~._zN.Av7}P1PK*ZXۺ"1 $P+@'$£D .1q?Mnv-uWkRf ]3;Ãg4։0c5K5-=).%cp v@ޓXkC-=?ln%s8b$x4b޶f?M{q=,wMR?*۠D0ZZEd}֟ojs/e7T }Tg/|t )6W74/BK!'{u%?Ysm[P“x{C6rhXM>5.` xAzXtSAaKGGn--ةT5G8;:l\q~=uF㌓Cik̓};1N㌱<+.jX`21&5:zɒ8_|'3#2U@++X h4krmF; EŕTa*Ydo]܄gdPx8qȍeWXy l(ro"MXLNnPNف-u(MD;8vV,Эk R3+(*19ثDX VP虚*ܱˏG"E'yǔZ+Q"|*f%ecwkF专zV⺐2}:WFRQGKS+zO1ΈY$#ګxnu>RvxY)wee`gNqͭ9^SR8@~C |F&2oBm`&dƈ,Lo^i*p~}A$: (2؟7#&de[9cPp8W<=as 1,AᐮiQ9'ڤ~ 6FQoyha@d<<_zKz :"[]NհΡ3FvK#M̗;枼ph{K=!ЖOs8.DD~p/[84)y |X7sR;dm]vف3VpAFT eY."dc"e?jKr-i btNEAn3)l.(,eQ85{1̶~]Yo8" ]Mk|M%3PY6$}v\cv, Nq H} #T7CK`TLb0QN}2rpi+TպKA=VG|Pa&T0&y03jxL'>%ۡtv*O`>13kS`pǖ.5r)8cN'EeWP'pܪ6M4zf,ΣAs] 68rb+,_ \l*^Z+uy =1t4=jNAЕ^+5~L31a%w@'^chh96cYzwJE zJ h~Ktsc)r1Ͷ E"WKpϻZSqS)phWA#`xeڨKYbwS< 1 !mۑ_w@@L&d9by,rRwTn^v%웏O֮ilV@h>z JB;KYQZ izVԂlsS\RC`LԚgCG|@[;IW;GiKQud4`Ɇq'f'w2;{><8ځmӫoD0D16?pf7YzUGţdd\l<jrV.C/sֵrQlyԜT[h7%M ;'g-%  ~|̀1޵mo|(v*:W?eJghY:+Zt21 D7{Z -7:o3A֩= {,]8wR4J]y!sW9_y}(_mfƎ=QrSYYB h%a<^a/H:Vq^/x V'Ϯ瘙uW!~ UzWm% zitzha'[SNOFZ*cDUk7kԟ˜tI| U[Li^h^ /EYu9dwV2`g?D4Yɑymk`%n%Hm(-1f9󢥉2oA<|AGo/A M̎*3.-WPR *ac{i@&1S+X|1xCboq?3`߇վJÌd}7 iPIW.cG&~wgAy e #a vA1J')1+n ٙQhXiҮ#mK2fM\mN|k2RCW_(Wz-*1.xzJ"e$ď c*B+t<Xƨ4BӒ_ZwJG/OkD}T08èrȩwX"i\k>HLxH-]X_[ 3Ȫ1gV[X!rI}{s7YK)hiՓnB*hYIW;3k0|SAh,0|}v a~4fĄɛM#o2*)G5ʨhkޭg.L=879:͟N"k0FbN2STu^@WW0xn+Uxo'$gp QOQO`ӵi{N*/Z4U@wUdTB+^"$R;g!n. 5gī:ETK\ cקfac'= ID6yS~P& 6R Ab7'-ˑ$8?7<( +!=OUoܪ-bιKLo[o>|V$#2Az|`'? 'W"&Q/!qq뫛V>i&Ϡ454@je+:fS LB~9ñBM|[ Gӈ ()`Q5. H7?v:iJ;Ө詅-F'벚֧ $2`t[TWis{ڜ_:4ͬ?M?`Oʷ ' B,Ӎ$aLۄ ƹGggWjgRԯ.ā**M#Ei3Zbn7ҁ^0mztk!ℑ-lqxH\!'+iGKZDE-$^\M:VHTƱq62$Y}l1Oh´LQ&%/W>YT!$j8=aN-0`1LM4^;$/ٺN?@Mҧa/.LC~T3(vseBs|ڍZN7zO5lwJiH@ YFO?~;<+g3QһNku\᫣_ҶBG (褀/[ aDc IKM +zOx7C1g2^'۵~ڧAjGC\J kii,dP !36uk?k1UMp}Muf3mx{VQuϏgR>s{f6RxC4,y5f[Z3xՕma\uf[oZ ̣ tE%7bޝre5^YMw``ZMWjq|Qp>\PSR3İ!&sg=pyNg[Ju K =9g*J.?> 0@6w +턼yЦ%G^(4L$3*'!fӍyvm 8)o{L ny9|Xl t.}t *~PɅ{ Ϙy 9-qhmf0B(%+m5I3|_뀙 ɄLbiB8ZRޟ3zU'ҁuHP|EhvjWWW]7-_l P)3͜yHJM`4*lU[ußӰ 4 ˫yk\wk^09,*FQU<%(M0F¡og;H[ ɛ~!mUpH5q -i{?qkm 2. ]w5P}:`Wzqs7G X Y-f>w' G,$k5_97h S j´l >v):KqRTU϶˵.c-MSS9 B&}S:R_n̑0gLs1wN3wbiW-5mW,j 3XL΁TAU P^o6nU]@GnsFDB}5# TfNf 36L(~=%:: (o]d4-/gl_@)|vF5Rt<'LHQaD}T=S7FBK1 :jkMс+QJc|v+?J!\#4Bh2 1QW 44-"?~ yOKg+:{ }nbåR&B|y1%` 7u슋PdF''R/X58ziJx#i8o;ԑTUüUAvdo>dWf8'qy;ǟsY]؂m $;B/:KbgB!  P.@A C%H!QjGУ2RG&rӸ_*2eq~1qKsOcigt^Ƚ؁뫇 ek6K'V-;YجX@~0o(N>%@5 :.L!Rh,atA=J°\ΰ +rAPnR'Jp-UQrI9n)q jk#ETnldAq90؞7L;r0v+X|#Χ|4)홳:@&7 x.$ŋ"4fVD;8.H0(euWztIȉ 3(gJuDZ+r>9U [GOU!Vf%r~x#>ܜL">.$UM%23w# Fn;GK!.x !fM)Q2*i U ՐF %H𦭍*U)/_x4?^%e5_h%8ya& ~=4he@Z;&%_eBBf QL\(Kn?> NHJ^uTkG2[UzϳHW4oʅ2A8zz"A;O6g\2p8<=jS(g/ZqpjG9KC7fa*s{4CvR0zAA{; (0`L{im\E^\#DGH&_iS 3"mI}rtgrF3_?$U(NIj_X~LOzﲩPŤ}^ C w_Tb1kX%2;xMNud->п\(eZ2[uxC]<^b$0䱌o<2Hޖie+$(ĤTX'gRG)&ɟezmad4nW Dׯc8'zP;ΘJpPb-izPW?k4|7mZ+H8%^SmPF/lB!DX cpXd|F,29,ou$kB8ܩ1 ̹UjC舨XLQ7_C|죤ʄb!5SܓZE7t*[e)!=q0y s0(&]T)FYMURa'F?[,.jy1i#Ĭ;DƙGi*m &vm.U[wKEo={?~BZ!v%͜nض^t)w礍c,__rŮn@o-zĤp?-? `B@aXB-_}S|ElϮͪ4jC KZiV1wg{  E_W>}̔ƚS QABXyD-_i[<L JɥmgBfA`0_Lp7l(ux^2p=yF<`n0~6H)NtqA֡t֞d  [ ݸJm[\0!^Z"za첻 r)gNR늩Z{+#̿'G 8Gڅ8p~TL ĀM?[cHpzT_}\D4|. 7YuJE?+ӑZTRq\HޚO{p3U`1UNZ~VF0IxT;[72k'1q,5?c[b+Θ@]qڃMƔ0{USw)-Gqo->@]{v:m;PQŧ1xAkU6^wa )9ʌjoHg j!Ƭ=&hz?Xq"*lr"HvqӌYE1 |s<͙C+lVFúNtS϶zj9R]!6~#eQݥO2dheiG/RhpNJ|^Sݞk}-U (c2j8 a i˳v@jNO{MRgV#WuY(ÞOeg2߽J~!w1{[jahUz">@4OÀ?8_, iMl@b tUd沦9=-㪊p|a㬖3A003Zᅰg8z>Ӓ@q/\~[A5HBITu)|NDՕ.  qJf[!/B(7SWEюSPӭjSP*U%^Q4O!WW5lj`|ߎ`s`fGdc!kHNf+V~S{3vh\o=tf%F2Б]Ŵ5W6O oPb9 Q")?//y?5"泭^uCL1.&ϥ,]L6}c4"BE4g 0SO/f`pu@ԞlQ~v46jRPD0 mG_qQ@ky5 B.yv9z}!CV|sf:FVAK6InbӳBPB 15# AdψQsaD3zmDr(F*g_Fs ?{ U쥡A嘍ܐ?kLXK:U&.,:y,"bEZ dpZ7=aPC t,C y"!A}ˆ,jWs/kyא4WHfF`YJwH+Z-^d OrqD@?JjSJ X'H q8'vLS${@"Mٸ3r*t|&Ht bj9j5 xh D5S'OLs 98tRP6!]+ĀxfPqrwz#n b눙 oUV0k&gA׎~--]mn}2ʒ \!jzr $UA}B#b97Kl='܏ղ"m!߼2OR"Ɣ#R0Y1&5N$*`F'RQ^(a,Xɍd[0:!T?!`BN88{ mQ|0v)3D,w$I4! !ƴ,&`|oSKcේ0&VuXD5,.9<ڣ,&?p$1ob#*+xw=-%WfFz9#NɥG{: "@PGT?.[&i6*J9kF6As~|KyTܶ:M$\ SAbx峎$8JE!f &6ؘ6,X(ktz ^ Rȧs8cV$s%z#q(g׶TCqe%XQR' OUӞҮ 4jـπ w]ȡh<E ̾?):rыƩyaAyfլV[UG`6vcy 1N'0٢i86m5-UDjlUu9;<'2:$\ +ӣ=J L`mY,(#&K:ϟ(H *yk/\i^N]p_H4IO{#=՝gZi*m?tBsg4i߉N`zT͞☸L\ KXRbKPތMFBf ̶s؁Y.o1 \D-=ſQ)ZZN,~{x3#hZ^j>2OאXsmmLcw̖𦒵w|i ܺ|Q0W:||OO<D2S_@;֜F'&} g썑MQݙaj^p섶H!1yq ?mY8jW(tS&qYHX t wlca]Fg> PxGՖEiDk%0aχ [*r+`>NXnu><ξĕb(c-S O1 j$Q&^sf/Y 5Q<22-FkU9xEȖjP{d| o?Mcd+s WJZ}_- !fwD_{U9'}.Ù  V/0m`(C,Cec܈r^q\݂$ѽS&|#,·j#Al(ͷP"N/@#/igC0c[ ͒:Wʩ$N;6RXi&6'z-7rߐ ÈLPExtWf 0T12b[3h#@^/B8Y;EOVjYnio;͔*&f赇g aKŧ-C)@VBfI=m;IMHtbk 1)1i5ۛ>dbzqR\'ƀnq\W..j?cqhTF#P'?`s/L*-!" DG,SgY2!E^,d.w"k A"u*U:nc#GEmknPg*D0 5ᷛBtMWʹ(%: &~ dnd g6y u)$ĕ[īd6I•[qdmfy넽RRc6#buRPE,%Exj(Qo<\x(2D^w=YZr ^JP/,wE ~YMnQ7F#-2N$UǽxԹPf{>ވHj(W, ~ࢄcVQb&0 zgәkx^8F&y~?(Gy oD[-]rpC" E5?Vɿuuͪ,'25|y.O]ʊz-Iˆ)_`]' 7R~ VD_o(#)(jXUeA9gNYmfkjU^Tm2q?%RgpU={f/5 긖S]`esWWR"9Zk;~22䁼NđNbw {.~'+? kz̧v*Tߓ Dj|pHAؘeCR&"c4X_= iƘR~V݆f#$$ W9A=ld{/[q]bn)&#5V s DF7\9ҟޅ"G!kѧhQ&:ko|u7@ЛJ-^!8u’ƚyeIAqSշc Q0aO/0ݞ];o.soI?'|EN{Fp; g,.c-jћ&S#Z78>) ʼw?4qrP/ &Kx!mIQCgW}@ zפ%"ƚБǸ}m6UMtA:͹DDPLZ-@,C&(@t:i1Q_Ԙ6(gAN\)*yG>taUR68Mmdeou,"|TL+B6{I` wҒfMRnz j')U+wUp ߸- pJ{GMN)r#Yj;!eš¿ڙ~@ q2!T& uS`^Ȼ` Ηj:iY8 sdQCѵ,(F "!J]w9%^G1a|zz~tZ-w@kqkQz7w,gVdz=]vo\3ftsUe?7m˸X{JIvQl%@qN,!`n!$ܐY o|Tv{m4dV̵cE7\x BIGߙP ce_往xuCѶ|'QL*+,ȚkڏeBywj%Q=4pO ;o7\V֟z6l޴c$kv2`p'UѤMl8`JIz6Ve吔JdJOOM&<ơP&ec%DCi=({Q $Y=Ww!ì?B-/{J,#lGzW2ʴEoOE VJEPyio\rCkj!I,μ@+xQT1peXjxfdK,%Q;#iù)cEe\Aw5JUnpVH'1'Dz4 &7={$݇oa2˒{r(7*PY8`+~6dRۇyqI|ؤXka>$$]TXs-M2J#g!پİmM)hKVd%\ j"*L|Nhp*խ総{]w+@Q?^sRg&sWIإDjijc+mrOuT\?\{ (njLx`\> k#$ ڒkps2Pې NbX wpg[/,0򁣅M~jA.6mn 9re• C{tNgot\]m2y{.ki"c1<쾹|'fal]llf~Z{& zCcaZ sEQOx+Ug&Pʐ`7c= :=72lV[/DO ux!Br0%)U ]BHc]˧1m}W0Eӓn^W:h 3>+uV( *5OD'W5-'>D`1ulE^3"E.B RΜb 9Nr;|;a%i縩Ԏ'Ee0Iik{@޸ csZ45m1l5 +Qzj!#}' =@@vO-$ˢmt˿,#wp@+iT1#C(9@O#|ުnJiBmcݜRY<19д2~ѭ[BrqdP\3@m`TTx=$j/>r2*h 5h7!~KzxG ~ oҭɯАzfqCV!9@j{/|"j1Vj=AeCבat_FJ-<8~hstmQ7^f`C2j Ƥa|xi>>RU.ݫt@<*&V5k@Q\)*,V,i]Tdg幰įi fJ}|A䱅Դ`.ɏzN9t3f;A4bA԰Ğ=8oZ.陼$բ=C%𛜫 A;-" c6(JNn5`,ƅ*bƾә mDȈ=o}Dqx/4*i5$?|6Fw2夓"q3;R u#^T@TC )u-ה1EC!︳Li}N'Wt6a67Yq<-&&!P6'LRcz3_i4XRDٱ6ypn-2"#(F%]S\֏`>na I8{/VM>pv #|y ܉]cƻsSpGR8z/ - +̆m+f+Y x3|qƁVB(lm.FDe2jg!BאDxq!N)lqe!]y.)*$ oZ&  0+E4M1?M<N78z+d~[2z'V^<߬>́=]m 1 CvV0 ![Xɔ$&2I2P_c&XS4YoR[]6X)Hw"1z[ƦhA+JduЂHY ^ԉ󑃲VOxmY9=ˆyk!٭$c#:XwrKk0R'ˆQM\Ke>Ѱ`3Bvekx H#5HDjv %S {riuي_Bjzp}Jw~( }GVL۲PXKq7l(:s9̜ !k$R^`!{18 ! El sn>^C 3ߛI^Ibͫy2 DžC`~PԮ =,GC5I.wA{r >#b9|Ri܏Gza3ӲJ]<op5oO-Cl^~V*3y>˯jC0 0t,ю"fc b6U%[6ih T<34t޾Cc1+]{HtM[ í^lPkG[WWN'qѿۡk8KG͟3d|c ~:;:V3\궻څ 3KI[u1/u@$܆O/28?v, Fx Me|5 #q@3dvn]9e&^@,s_ ^Q<fODhEn (KwBl8,n-# DSAQym)(pkv 2}k&WVsΙ.ۻd3~\Hy>k(EgX8&s7NAbBThK.C~pD)d'׶g̔-bzhj> ./i`? ۪)Xpaϼ'!"eej-3B%kr-͗hm\l+3/O濐;8ѺFqC¢6 a|'m\6o•0~}B:FJ9nV*303d5{ 0b9ay@ir>&Na킦ͤgs]œgr_^s# [.|;DYA\$9gi%(oE384>FN@Pv-W][6+8Kܕ19|Iԃݨ8 m9RP{ayK!MRT vݘ=Fȧ\aӾ!ز`c-xjVr^DQS&3X| ڍPT0Kw2*¢OKqA_WPQ9G0؂FD{%:{o, UW9*^ d-gR)M)S6}w'w̗%4h_L`Y}GV u5⊅2uc$h"G:_/#O&,AgƂ4ju֬D[g 9RziκKӬfO_9r[pmU)bYyi^:P! jo7f4ڢh΋.FO|=/J2s_L&܉RqC{/p+6ln|:TY}`o>cԛr@ ,Cs shy{nL'fCp(lo=|7qpɗ oM$h7ʰAagn4 qv{-d0xyO'M jEʲ\/ҳ qLx mڷRٵ2t]C#Q >HG钰oKP۬xe1xҲ:%fgy_kwi 7>8eUSjKQU*yVݱ:V {zQƍ`q A>3GgN(]B&.*Wd%Rr5\ܳJ$9:ca}>% €(/(Tg#&}۹xXT+󜋬.ZT-wƏZA =4thjiruC'u_!ɓ7pKM>-v(93&%&@ 7؂`fC-t;b=Bj!`PA y x +^5-L c1pstULF;T2chcE;*`, "a$\l-ф41b0ָ+ HݑWQ MWkg9 ڥ$ص{ߦ:3Wh1K[ 9?s .q(G^=j|DO]p @p+z#*Bmx%zn85|h>#dn9٫WMX> 9IEq/7] md­a9d*9MĿ]] ߜ=GPK= qI"R%46EBQW+]QRt+༛]PǩߒTdd}4SLƆ5XAI*4FL lj7OM{3zK*mUB0}޿,IM: iJϢCxTB4 7ׂi=٪e?bI܉= 7h-YHNh^<ZGN{kWʳ!kY4h8|oK$"\L/GDh)ъ:8I o3cMX뛵&owlƸҩ>X}@n>sOj )Ff |4*qY'DueQ(z}||*:zZ4+uέj%߆~(SBTe֧?K3l#d]npJ[&.tjN)n8t8A@OmpJ*ft:4 eb!Vh Z IQ33\P,(oB@y˜(s ;d4Kxԣs")0+ݢ ~tb L^ T6wIrUwJwl]Cj\y]~]=-ՓB[\|%ÛO@ I005h͹A Q(~`*f|m:~",e3rnE tc<|lz ČW|wƊElQ |8":c7|!>0KZ~IvqOBO|Cb?+()8S4L,Ġ` ColN{")jg72ݭإ&%u p=a$s J^#xJ;R*d`9 (LJ̸ng4gp ֭#XJ}SmҞeT5X{<|ta$gP("A9ᓔ*ݘI_Űgkz/]!DH^nNJVʟ™pvKj@kT ̠ƴ(rӱk&% ./m49!2"Lgr1'jAɖ9Ϩkԑ*pFu ۥ gRA; f-WuaOphaQAu?akRpz=ӎLޟdָP#ؗ4os >\2&;tI1SHĄ7͆;aȧyr3@PiZ qB^ԉX,M[>\fwKު~X5׹ Է$Nf`1TPBmx7pPW|p=r?p`?xgCKY+n9gf y~:/q t`Lo0ehw/FvBwNӧ~ aC)Ș杲6Mh?sIׄjTH^emN/ X~^9,8 =;oZ/, ӾN)كIj!vSܶp.5^QHpU=ʕ7)j}OkzL}j@ΒD`8Edѿ:'ʠ`z{, /9w>Xb^&xe4 ߤ::޵z+nHBB*mtz@Sez)v Ë$wȦ^,o5}ŴG *H.2'i`Xx#冰yk*<#6E=`Du $!tF\w J|~r"smQEl7#Ӛњ8۾7[+8 7a9E%.>oj%ɣNUKև@ğ߯gcs["L>q@FPU .aP;@d9⥀hK&uh`)yh<>(gg_AO1?*a܇{ROb.V6mRg+2~HX%ro.eO|ŎC}s/<[ ChЙmSԊJw qU #ϴK׻Iئa}DPLK0㶓y©[dl}pc^Xa/.f:娇+$tEZIjkN:*GDBtwNB>RSn.Ⴢrf?~L((Ħ$uzsl[jdW;"Fpr3:{Lq; "34TYtcRiuK4 XÄ_vMWCL rF!!a(YWTp*:30BH7*Sh<<ăC/o (?CUlF4F<ֵzOR܃f?&"O𷰇rT\"P_]iGTQ5)$roOʪG)f QJrDum;~o  $/v֙P3v ZukN_=$o$\.̗gb%ixU^"CMn]'v?qɣreS1ѽv0Z3|.XۥY>_1%D;íE !_-}Mk,j*ꈰul/a5 ^,(mYnCg1ᄙlp?jl0G'bf;xsj\^;!uoY'9Zl"MpU܂}ilhSof!vK/MZN3'6Y0Ɍsw2֥v@vgE dip];ؼHgbe"}%%<9Y4UU:{Z@a7t΃,:YIqcaݗ5t>vړ M->F8E}ق8 ZMOŊGXǁ|h4ISj,og]FjlGS<nD~!^T20w"VT.piOސ\ǘ5<5^,)^\yƮx*7I ^m[.J~αPQeŤY$sw! ukYN"B]R|w?eJS<ܪޒD)+7Z׌AG;N_:pS 5);BpSq\.4m{^zc5S}ӯbT\I&ȝT ز¢1WQf  w4ѦES(eSʃh M?ƤG罞v~6˄_ц/Ӷ-h GYeC [C?*/8 `3m8EFWl le%lHZ6KbǬZoj)R, 8K8lcV jw2DeB ,EMnpۛH L7`+mZSP% cok6/LAw@ @vs*e¥ U%ڙ!֑ r̐†{?nIsVI/r 2% AK'+[)>\"(07aQ7;1P4"0݈lYL?~rW5/e5" VCė{WW5~  ~tzāꕌ/LP>)4lvmuEU >{}#uwl%rN)G)#94_%An>S GsJik/RЕ9ӱKL◣V+Q"̓5O%-_(3fpH{`>ݏl+Cj.^Hlk1<"ņv`&hTBt}IYGG=iP_ `q iPO&$w_\_m8H‚ȝyCB{tU B:}egqJ؅)YSFuIסO\~0O'u6Դ&M4Qd'V8pє<Ғ K vDl3Vs1a0q{X&vG;JÚd$4ViH{&)LprFҭ=cn){!h Um?;]eWYL(oRPm5}'Z>}3Uj)Iv𫆀C Op%e-B?eU] G:3nit}.~[DGFS5([IU❽7+M> ߵ8t5[Wu֪h$OESFvL=,=(t/>up`[ȕJOĽ2Idn0}x]~@Oҝh,ԀJPV4{[ڂM~>hN'4=)$rqA,SCɺ\3i"}ХFm9ZpBo:9t~K/y`- :u2%X"׮e8{JVu{=/A`y' =Ow}dwu]4\~}za_z9iDy|ȁp{GL=P2l ifЛHPCO |$nੇVF1϶ i d!0CPi#X)]O0$_AKg 立22߮Hx<Qe#;hR#1>C8;q&el|Cۘ|[z0K>DObz4 Sȯ4!_u^v|8@yqF ˧0!ÎA Z<*):w?B"TV;.UJ^Ȯ1X@6˕5^C}ȼz.xXsK}f-V`0z'sV9R8Sq`2gm)PEL꧱$"VB8\m)H2\+AMF8Tumd"T( ,)h^Xu%.6ɗyqg#qhsY0 0@(H9NL`KG&%MN@9HrSA3~ˆG5e#\RxF1zqx2 @;`+3%L]y^j[^"+͂p[YEq'7ߋ~Uu!1J{6Lx R^/IK[1 z ٤z!` IEFp zT Zdޛ'Xc(ښ.h}xWHyQz/zѽ+HeMF띊ܮn16`"jE[?4X҅a8w ݈u=u5'VWsS,dJőouŽ8l?\Z8g~|Gř-{!MAg(RTHT?ߟGE{fhkX^"V`pK;rG=0a5 0*֌Ӊ Ald9.'"&؋D(/U`C6uYrA;fƔ%:@r˶]kH3m\jUr Rpo,n^&>1|3`9^\=Df"Kb䄚@ |,},n_R5װƩE\Y*/g 1'҆*,SX\2FgOKBWb/0Xjk#:+k}3 '3BA҃ ¨ߐUΖnwx"pϹ`B;d.q Ht {HqD~XvV}b)iH@ldžT#!(Ο␑4dm Zr7ͬkdh)[X9|p@Uaq0ʔWh9^ nT&/> |tWW ׫Y0uZ.ETV^jr>j6d%2j dv%Bt<] Nh(&% [Ա&@9#q)km3pT]fk,ab9jut<zoIa3i<y!FVȇR˘[p9-5ڼYHljGr%2#;?UDAS̊_)ވ/p4y5zU|8[L!|`4ۜ|(Ԓ_,\%Ȭ.}e{I9ݔq:h3;C5wWJ:Z!Q 17>@WH/owV^mF>s>B.F4f ?NGKK ɒ"=*bؠB^,Ϝӯ^˷{tYؖ($<_wefJ2(,ﴲݝJ:_z@ҟ1XA &kn!M~)\ >Tj,K'Mq> P$uw(_u.YLak8fh`Be|>YESqPHwb#b3aPΚ .h1O,`۵|,z0B޺XZUf gZF b" F/TӦJYq_t;3NlƹW7S~p\eJiTs>{`A7T BN-c앥\ 0@Xߧ+l/w/⦯{($*h5S4TH>#6$i=VGjlAjRy_Ecq@PO.%Nw{T ,M i.5Oj|Z-N[L\+)N,@vXS8*藒]^_o]i|gumMݝ iqT͠8K~*"k1^[`"Y .z4u|Fl`dKJ3֡wzaD["cnIk_< XPprqYuSt kُ f~a#Wp32wvz64D0"P4G'3=Ҫ{ӄAqFZz-6Ha t〼uD 3XБ{u$]U䤔,%\[L\cg#4xwvuIM!,i_»{KYL)k93Oa豬~˩V4rëxYc}):}i"ܳ ?lxlFUo-Ȅ?+X1h.Sf `=KtP:Es-ny`)ԧ]Xv4rxjot9Ž7<J]D+q3a,ѵ~(K~bzt'LKm 97sO+! @eFL&w"XE3z,w?tr54?1y=03-J&zolgˍ{Ce}cGܢew'f0YeFxʓ8Gt{2THN){SoGrn# l\F*nv i:W{,)KcWQdi)veYd@-6GAU68V'zV|L nJ.*vQ6WQP{Fވ6:wC?ٝ@1{~O.!^[ '2 aђX"c&y475Ҟjq؟~;..aFm&N ?S 1[ݠ5>6G'Ո?+יd.@:zqOEѻy1)b(x,ut6jTtN T5lOׇFnF7-2OO&-DsTI̖0]1q]:nz؉} /=+$ 7QoXLyJt=M7x09 Tt.l*C զ[S04~<nz.b< iE+V] nXЁ+*)0$|'_*WS% Q+,|1\[+$C5~GJ 0E_ sF`@|܈*IL-<b,1/ӂ7o 8}8{ک;v;@"s]<3t%mo7X XքN[ҚoKp ʥ!J1%YK^ )]qQ ȟp0f `7d.6ƤJ_a~9nWer5R^#޾[ Ng9CHBDo\Kt5O8En!zavߧ4$c ~\8KM01CAAn>,/!oOS~ŕ6_vu3<^LUCZIZlgM}#|fMS]ё`z XEG2L;_Evd:_0R}bϿ$V[ pT3@%`mߗq-sMlhWmoW}M(H>"< Xx=;-k&?drwkxy6MUU{:P0l["w`,KṘ_bs+U5#;wȴhyB2rX4p%4{z˦c ]9V(-s!S#+L f$kz"!q{*cb4+]e1 (Zgф$H7 kgц DGxn#uK6vJ"ee4T1&?FE`%j }elNV2}s _KAr$= Lhⅴȅ"-X@R79uvIv;f2v}ayМP&޳"Z>=k44<`׭&*C'11^VdxwIZԠNV -2\"*an=Ϫ-<33#jnx }m̳ҫQw6KP%[nfO.t,aiu1Ya.^L0YV6w Hjj n=PԥdζcS~ȳFq5 <|]qfRiWQH^f):d=gUqh*Ge2ѿHj\~!ozwݴv0 E(=ɼi4ڲM^ךgwHpcUAۚ^Hm7Ӎ#Trtn]9#D%R+JZhxإ뿽R/F <1e kӴx{7t;}ytzt`t잻V0^=]?DA/r|kq+r wg{/})E%?"]КOԅ֊]qV=ȟ{Y Ra2 @xjB/5˻)[~Yx4_$MuխX(aC'W o}K[w1Q8iD@wgu(g wC6=7QfmaxFr0&(x0qt}V+4d6YӔ5dL'cQp N7۔}]_UC5?\X Gl, تd$=8 nڑc,7gM*6qm@Sf>+zBo;q&Ԭ/18QUw06 ]*n4+V5$ʧbnSCMߊPGWjM- hb4,TQ|7g$;4M9 U:mz*/hT$?Lb9%Iu`] qұ2e:ӱ9mqyi!^4X%Pn>):6fC0v%^ew6I2j-E _cnH:4O;]r8>Ncćn$,0ap.]k0s7fFm?@N_VSeܶҟn#T۟ 4e>9OfNdN|:1 '.ЭY.-֧F[rx +4<=2dZMHzm臀7w-1nYE/Jzٰy.f@\@:dzM`/PyTݡ\uu||22 4v'@ǡDtvx7?:GƊE:Rv3(DSN(mLAٯ/#,ͤ.vFX#?ݱB>:S_W.d5}ByJ^G>f1SX+9C=ө% dF/*p,sG xt ɀay g\H7>2?"S1/;Gv#sG8yrc\PP~ojH@*~Y ,x= mjդ Ίa0 C`)# yyl9eh`3y R7 'j ʉ]Q0qkL-= ㆊy<;Z W#dEn (̡E& k^? ?Pt_IXG\[R09lx64[bœJ K4>6]ʌvyx茪*{4ڏ>$VAXӏ?C VŠኈ85ӧy+ ]L0 ?9Ͷ۟p顸J/#j? SkT l{1%0fMbl同D+8:D @qaS 8&>IχnBwXW?ۢi5x:VooH)65ڟ%P2> yg]ܐnStTz \_>IP6 ȑe^r$4't{"W!6>֫ 㸢 1.Leb:#޿#$R 8<LR"dPpBqfJhhlFU/Z\ t٩U3rsE4Q? .hn_>X,400b5h/x8Kd}%nS4ET GOߎ d#5=AX|D#)Oqu/f%g[Sg3$gXƸd; !CV*F7.8 U/~qm׽j9SkR`Qij2M(;"AwRr$n:u+pfTeW=daX#!~Z+ Cq6țy6ٺ@$ŽR/"8OG>4a `su.%_N4 SVV6T >G'[+7]'A[jRк[c!q-@xI1PrHzb?%Al7u*ӗ](}N3EEő H?Mi9WwK61YG18fVo}BiC^gtj6y_}Z @: o MS~h{ȤE} qTLV0ӥ#rکFkS7{G+L`!qނQr7<vUg =I(d 7/mvS]ݺ/ɬ|&>Koj8w≟S* q}S;s͚:-T@C96?6blnxy#ggŻE* 'ph*;rٟ3ͱ@΁tK51ZҿmNDsltl5s: P{Lfl6`\u,/Fvzo  $/ca&,>@e8H8q-Do ؂+;^u<D*!dw4?⺛cYb] Oh5(َr;8>]]n.8` _O OЌ3Y?xC!d ƹ> WQuO3A/_"nN*I؅ie`Tq%z\Qep> AصHSxςzM2[&q'TRT&FGcJxyGs?ZF Dt!&Iّ%_&ґlă !ꠈ0, r[1 NtrD7Ch/BTL_0ංy-C#}PQmf+ s.>BOLHg>ZY@?:N~6BȺA1<~.ث *|r h;f?q 8hwIG$e:,$J|)p\z:Zf(Z6pc؈I1ÙTH6.&gRz"S 3T2 $|eU=y8XK> "lq ڵ+ǘ$^NZN4z5;/=sHR+d";:AiF  |K mD&ӟ6aI=V'@=jv5@&lʯ-T\Z>k0AAKSLBh= UR[CQ.. xk/C^Lg^oYS44]!LeBV N:T sr#r}Css2x=oj ZbnJH p[ė9byƾ;E 0`v Zq,>Goj'! ct1Q `Pvs4:_ zQp$@@ޓ8XGb)`TP ~7fnm٪p(c;6-6K؟Q8k3/pp1YIT !8؈ܹ63?ώ#`jT.b^ N_4i-+=icm\8'K){H{,kqun];!yɝ9:@drAB;-YȦ v.`|/5-Ej/46-PUwI]˟1>YA[KIp-ct-i0ikҹJ@b"Qg_GY;/It8N$IvޠWAjbv(u}.^Mʎ_!``]C#E=,%Qk9> 0 Vg|n8mC*„pQd.W8 ŤBt ФOyi ZkSK܊6l-W-nHQ/i;#ÔV@F#u0$[m$49ƧV=s7Bm-IѢ+a^ϛ\)H`kgu rO oAx3e1F}<{a[\o,Y}Iˆ#FEAj7a= ^ƪ 빕$'8;մ]YpdU{(*1gbL9*-7 K=]q?0sc tL+5u~+ye EtS|fV %̛|macW\ºEvD.Tm[phu)';d3׿Nlm>ԁ6ZO6} a|Wpt7+ubc"Hix3b Hpvgj/%H/Ǟ9H*Nѹ\GmR*9Bjγ+aVI>ԅ9ݨ{>%UPuBs"qvHq-3b?vbfoF/>]xdDK13!`ѝGqi}ZNMː`,D|ep9Cz_Y~77T5"ueK{A5l+] L{H5 >%Y&:qf\JW+rf_i=GS?`QɄcN7qHڢgn(cK!q01{2h9;!e>x>盵U~qC?Fr5,Я]n H"g3T͓"D0]ȑlЮ!3Ǚjw Q45'_V)mkEMwq\g '&sxn.tV3UBSݠ,+ZQCaѠ]Ҽ )uwFdFPQ=Q3Su%.g}"nEyƯ!>Ý-@F|ޟL_7gSgVRəs2/4;7q09K$* 3),rŝ6AI;Ij GwAHQ|C.#H q2ZTk/Me#s!_ ], 9QFuf%_6ͲN՟t:|)TL=e5R;daSJ1Ӌu z{ xGEI.*bbeOf &I '27 BQ&Kҗ̨0Hףp&l1%xZ!tI=X`w Tg\Qz@KR=2)Ƅ'>=RPg7̆*ɣ$U]EI9IQOqI2Z,#s:uq/oU3ҽ3^j%E)y@pG.pb))aFWtT:0KD!z䶏C4|QE-xi"W;'虺_ܿ'm`ZK^_,^;*uJVubp7rUDnSUj3;_Y;&&t~څ1M.3e=R[uGLN=43LQ ip JUñ7m6UP؁@._GILAΙ}1.܈f>,۫d|Ӿ~@3NN ^荑#FKQc{ Nb >L<92TGv] ',:EjXeUVʿʉ؇ݱ-!~44or\7~XSG(mBxRP<WdͅE`Se=?K{H+htmYumn 󛳢=ycsW+`=!!>v`2wD! {) ?Cš:L&%:S枚8YiUZU[,O N}8ՙ {A]X\x1v$#uӐ@RHþK:+)s^p*]ehNCG]Ǚu{iu0I} z!3la.E(2k4!jx]"p;[( $u8MOܧ:7v^ZĻs$b,96R@E{$y[arBJ[ Z"C;'N,x?K8f g!!y,Ғ (Ζ' i=y͌Ma.nfL1݌`_N #6kݾt(5EPOR9;XGIjhb̜=Z|R^|NH~ky?uUD}w5ohcw1AAW8nk-TU +0wJ1if9ռ&7dCPvθn=\WT/m{]e/[XLT(|}|d:2&Hܦxi˟e{$ہwSFL6uC^fL1W9KxS*Kx(G<cQg PhQzvjb(5c4_##h]r"=ʠԼXFNeW{Txvf4DVX~X!).>ar5(k75ubr5Ss`WN)șV+:6u#^u7X|ww6fW6'[+ "ëd\gnUa:'a>k LyN/U.RqDւU$JCjr.- dXH8w@Zȼ^USmI$ul`ЬB9 Z[t5 ,1TN-XG)_rV^U3J PdSaVl.,~F;d :f3ܘ㯺(,g[t`&>zG0f5䬠UM|e'Cd:dR*s )Ua%՜ITVz|^h<&;kwu1c\ `xd?b`eaZ>K&2F+dfZَ Hd&mEeT mOU ltCK$:HAߚ܄YQ3J@U|o,]_EM z-JB)b0Ǵ4SM |߲%[2_F7Y2]L0TJwջ&grIc|eC(c<=y)-w( A MK<8AOOr_SvVSF{KU OG2[DǑ1;m& vEf {jl5/Adьj.̫+!3كzyPL=/POc\-lb(f:k(h!B[uΛrXԾåtLV'ʼnvwFAfѲs-Rq\` Ȼӣ{ NZJ3L/3b`6"Jg*KĭEB>qNt$d")1b =6̷r'.O[:tǍͱNSk*yuCectxdlq!z4τI^=bʍ&w7hf<%vnl\bX[VFU3pU| S$_C \ Dڒ#lZj]IYL^(#`]vW(CYQ+;"U@[5e4| !T|]=f/=%øO4hj}{eK(Ʒ9*Q[NZD:񈕘C:rS{xO[:|Y؞)ip cZxwt[` `YW=#MgaYw. 7/Ź6=o}#so޲Mx51Z+]† ڛ"Sd eSEP+6gKŤfbªTݷYs34Rϥ,esbݾ`v335T.*҅l/ V!R>ck옻3^2n<ۣM,By1]3b\p8'tCVeܞ ,H,%THCc8cAR'IZ=vF/=49;._"&S5OO^f*u~' I5l)vJ\Ode MR?)cUe/TiNp("(&Y(z}$UgDk 84ݿqp8Q9VkZmS|* 9.1 /n"_uDE:ӯE3G U;V1{-b: WJD`J*/11]_Ll=|ݑ&J;EQ G'kv7f$Rucefi&@H a%]VNPlN,]WCj\ =:7Tv޼C\؁}LrvV,>T`f|ũnCQy생HKE-e:RRތă7ZvZIPwK -Sɕ⊿Y,k0nU\˫Ip>6^rܟe -Hhw9jBuľrZV}-6d{vN MPtuKV%_3zRxt(uG0@~R\ijng-GosSvozv鲯Z#((pâ4dsϬ\xj [l7Aj/.8oR.gV8b f5o֣2PG!qܫql .㾧 XNJ"w =l= 6JI`աIM.]r$l1K,Zy/`sv&QoP2sݒn'qK#[Ӗ?msy[GMZ=K鮻O`%ՖۤduYGУ#N҄/FFoo*,``+d ̻bQZ4^7bw4?ȃw n |+W㽺̯9>zG;{}͟z"\-^QHyc CLBҘDWnjhF>q6ܚ h{w57g=5]f4 *Rs;i]N9=2s?OW*BK(NYr#ΰHN1yFLd^:h.^fP`B=/jHLSQ["Cq`sGTZɌ᫋9/_aScTV tDgo̳5H=,3',|=" g:)SEpm/BcfMȬ0F .N%;]zjpLjB|GTh3CdQN"Bid3C3p0:IO6(4 M- R.8}]063E gv1CY@(.Hiv2Q{,K5lVLxl;ُpHzC\Gh_ٓU+%rͮr C&Y{"ȕHP uyPFCTdFkfj!`V/63<qMklŔwxO)3wG4v8 kdI3-M?P][{^ \塙EbAr{q9>]=Y =ߏ {1޹Ob|J~ڋ)7.jQƱLZ#w׮nC+{˃i?\W~wxbщSe.,J׿ d4SnQVdkEܧNOZ9xYJw\Qn_Z Zvwt0cD$'G:Vl6vUlP0d%ص(WsnD{ -,OyKszlؓ>B~OF}yðd&{J04a2ur$"?ռC صf\<)=tJW :ӠhqQ7ɒh],spBCAw|S}KsY-Q.CӬ Ȅ@&KGyZA`J4zt#t5&m߿Uj@p{˃>D N; roWL8&ҡUY>@r5y?U DN>҄4Gh a|7Ԋ]B "rT)Tpqi57Ds7UR^uمnAѧhj_W!NΥ>aҴQJ&[B ܠ"eP,ce2{AmrI@Ek*|u ę”fjQ1A3ㄷnO{ym%ܻT-y&U@akwAS%j[N;[8)r7r=ss'bbS3{ȯyQMD+'01ܩqxj}v w>G#e.iȤ!$T*"ἲOj\< -<ӋYTL4}<:a-FC!Lх ',l5m>w-!%Ŋ?7y#8&_141zց/Aܩ[GnQRe _K"s>1N[6hnNԣ~3ش n+`ux%w?֞DG\Issp&%MHOF:)"uɮ&@)簞#q(;ffgU0 \rqd7L|Oʼn?A.@ZxYN#rvz8[cѽU?p{j痵 dXꎋ^B@6Zd(+~_~upd= 2M]Z.^I;ҮldഹH*o|T*ma{Jw,>DG "dTd%N\+9u%сSCMϤ/l><Gqsp38axI9({Z u߼p4FAb]k#[yA%o;F {xެQ#GF-C)3-؇*F9!e̞U`^/a0zzUfZz:oyRF 䪕SwmiBA(Y4a+qLQۯuc=NE$@A?*0 ٺ( ;wil@ pָ[ yC&d!'J7JɜBr]V#=lһ-"D_?egmғe\_ Ҟ!8FC+5o=RkS#Ro#SƍVӳ? 5D3LL1eq #B" gYTyQS ]^HH%j27xQ5!-_j6+7bqH;wh aB&RDMka(B|`EŶӍlm՛rmhdkyC+X.|2E vbYip-uHE1+N mA=?3t>cfvbaD;AXZʭ+W2|IdK3G%8llB3*}FG|{K΁R˙lO{T ,F36vB1mZStOZ3qjO>he';&vzYƎVy$*UB_b !I|wpz-#MF6|DQqGt

    22M QR^.\3&FY+|6̯ 8uRTj5g:A܆9`ְ+*K "R<-hk߽JPWHH,CFK_&a:'U\8뾛8' j;TznbzaRD<%tXoSS`_Z1~?p . N7줾G[=BKAì3tGR4s.1%QďA&k[n6D%I#I,)*?ϥvY!9(]ogoKK#bٴ^7N7~KW \ p5k?Tec9|lUt$ey)իLDbࡺT%^[꾇ז#@@R}H1HdhAuM._=,RQlM] qOU+L-}4R~d)U UJZ|0<ښ^~Ejf(& WςH\K\ b}D+  (&i?+b_FPX*M<^-z-Cc)Y}P B\ @ {wI LjiMƬ] Ǧ)HSI15#{켽27D]rKPy +'zǠdvA!q}ⳃO9p[P4cU fK%y"\ŮPIdvsllFTjY3;уB7:tJ]LQbLߩ4#{zY]ft2ۂm+1X_{T<w|ô40Yy.B@bK`jj FJު@ryA**hʋ1B,"t|`D_J溚NJ$?zHT8W:6_ʇ}p#V'FV]eg ik^κU-Mg/S񡂎6n9KS^d}|).V^>`˭JtI̞C.G_chz2M ExYGECb4莰 uX{u2ݩ=.׵M< 臇uQ%Tl7hW]Tiuue+lXjiyGIaі)gC4[7ooQrȚK"}=ક(,YZ7! u,?H n3ENvg %8dܪBNq9}Ig+ pgE_B`` aF/8iͷQKu K e-@"TKt=4N?g$c4S8`Bb}aau'9|Sڷ/͒Hם5<01HkixQ;Sڣ$'*FIP蘧B3^ZfuhUM]y2@ڴF\Bd;WK]ؐU̩7p*s LF 49N= i Q>KS廯iH\4`W=g,?/T 'Jđ3<5nL3Mci SYK FX6*@I6~ J̼9` !X;RH0 Lvɬ}:~DΙ:c.AC h8N(*pN{>_0X&Į8WCMZ[7t=?q7G7ơ#LsD "0P2\xz0vm T|+j[3eD9H‚U6p?xd?с:,*/ y ~JcJc.svX:f&gl9-yQ/{XIlcˀ ^B1| .GKW;`$~gR9y #~RFI-/≭hǧkaXN98G~lx̐Whko̘((64g5Qچ!RVzN>[2N_1xl]={#@[8 xO45"&M%x?OjO14}lpB):UՉzܺ< m(U#ޥޫ[{kQ_xrR@:"2Ku~vM|E$7LD'i lGrK>aUe3=`.P z9r86֬TƐ@kq@ۺilMHC~OE 녥*Y/raD8qR&z&|vG$6sm!t E1UAǨvlKNI;\N(xtZhL H:pf?]j*4[:BC:C]J)|w49Ы<C]$~V*c}~F[o]6_ r`--٨5mYƇVi zV> o$}S74$a= }|*Mm2~PP9}*QQ1%XL f^>sKy~]hFyl2ko(ɯ`X L7.E"1UDihkZl{JR~Qf.T=#3&a73n`dKf8C6v=ªVVw v[xAg԰aUq`\/i0ທ ЕLDgBΕ`}Ri7Ӄ4Pmfyy(W9shVbT4^fYLuհhg"l!:S%c; /֯L-d m/M9RhV:|xڶWi&{oW](׎$QpޝWb$s=yٛ`܎| gUrXnGݓNJsn+!P/8 bUK/kZ7ڰy=@%R(v^5ńI m1.]Tv03½2+*q']M;lo) >쀁&yc{V9@Ү %orB4zWʘ>0f1Wa>{졦UQ)P2fP(VDceO9Sᬉ҉CK\Nf 5 6Ɂޭ9Sc|Tls^A ]غ*a\=ȏ9WطaZ6QY< ?0E椅:!Pom)/W"'U\Pu T ?PxsUCG~Ad8Hva67:TJ9M_B?U_{Qop,w)O%Qn͖˾)|}Z}Vя !<] E4\6P|UʕC2f3.<2A'.J]kGO=kx~yiTsx+xs0^l=0 DY U]f@dYA@`[䳫twDal$ 5 _Q?U4,pj)t㢤!bo NۀE~LP諨V#?>Uq+ 'i{*_PvЗ4:F8y]K»޹pkK\G`C'ETx5{ ^~?YT*F,l K،)'8T^)Ԡ2:3lC?oo\Ls 1p??g5PkTvP-MܭOc휵RΟKvYI+%"sSRFzMc5;WŁr3|ܶF)!\Q*=F7L3wwN=Ηg-hbS"w#԰ j66vT3 2b,7NL+ `5ߨMk,ɥAl88b&Mґ`(!RSjnCwI4e؋%kNY$z_n=Cf2勚ѤYzf2c%?Ȋѱbx6() nO967M64Qn9lZvQ$aZ7y:z Vz@,׸<9@=VrDq@/d G>0~+(~æk]Y%Nsl{fg-E31D#}{DԾ^۔mnApK3-U^YƮGXe&zo5Gk5 [%"Ez4p.t]~{ReA 1,%w,`[2l b/@_Duꟍ'w/6IJ"Muh#C9Mm+Ζ;U)>eJZ΄q _L X\Fʗ7-SoğJi@K%nQq潿t{n$MR(u4^I> &҆Ew\ dΗ80 1V^$weG֣ á<| RI>xL-W R̹y=_o=2g. ofp!䏽F8 kܞq\;w=TmsD1"ڋI`>OW~Oz x,KgCؔbdubi? q Iw;'W1näjl @xh.Y˒WmZvW)0EoE& -NjVVmRf=")PxrǷQ;9<1VSd++S_ NM4+7֐q١8[5IcLQ{6n8`yy9FRo^:z_-_=yǵjBótA!f@8K+Ey2iUVȬrrjת12*ngd!P_2&[Z @vmm(\Qtg[Qِyy3jW׻& qJ|yjBLUY J`= O99e'FٸYApܸφn?.˜afE{_pǗQ-j?`FkkSOq A1nj[K{dt7q~_JK3a; DnIP9$qz4!6IW`䣀k t,1\<,_"?^yt7'A)s}Cu:EπųRiYƧ?" ${5M[ܡ#jO`z'ߕpKiSA`?;2E7Mɾ] 83~B -5DA>5LaE '*r+3GiʠpQhhdg~J,ScM%=iuTA)#ۀxY/襛v)=PX  šY:_b~v\-)ya\4G=~FeS8 ג\oUGL[/Ў_A'0YIeE:von:f &mUMW[q4!0$22Ts%r6`^]/j,iknwGep EԳ++HAbB oX"', 'u^?cgC/W˓q$!J:]/r3v +6XɁ̘%c,$E2iaEb#.A)zo~1+~֫Ϋ IBHq0=ZWdhKmZ#{hY_vYRT*>ƨ-ju1 3)_(vXT"ͅ Ի R _*+`@mTNP)DTRG4CC6a%5T̟ zYExo17!gKEfDu a2λ;k \[߹C#vx&9+ YjTGlaB] j>26$W9>Mm ,yz{|"ְ/c` qΧ胰AXvt=" 2/pw83֚6n>hdY SVG :к@kcyhEA}X؁D8 $3ǓR^eb"agT3i`; ѷPAg3+pgP`C|B-zܤ֬ft6 rfжho%XDhh#b YڪI: @:^ʟч'1 &㮿 PNnjI(fWu>phM,b!5袎V @DSw#/) ޜ>?wO\IdJU &v氽r|eJ ]e.!e_ g; ^ e#W.3C-y`0Q VBJ%!F#w"?x$C{QhdzMl+Nn s=¾[]rZ(#c^v*j.JEO(CM~'ޫrÑ(;IuBՓ3InÄ@_{%cp9yI%@Hi:?SLHyr[{1zCw7|O :713'Bhc{@8mݠLi"˨0V"4R1Tydw{;u@YTyґL6B*N[7w-Grc46ڨ%SJ[{$kE#6ZAjRemeVbe:h'dQ@BXY/-Zn?0'+ j)=8VK)ͭd1۶Tb,4uA_R[8]b(I6$z>;剳}K-H͸A2csq~Ax?<ﮚJ*ox %EH.htR\>߶mTL_=;[hja턠 /H++_`)JB&yORe#H"4: s\aS\,i.1ȕ%}_(޳y@2({͂)"պGUS>C,:M<ud{s<\t$x:sGcGoH />֍o{-ڸA!e fLROkm8 p(Ч@Q!HNVF窼|8P-ZQϚ2YW Gtڤ "VEj,>9~YZmY̮pC.?Ry-8kk C~k^; b2̟Q`jcq?~Ifdglw=ncڕ8|0'[K[LR5HaQU;n Li|PArz@B"UP:uܴ@"l9] [`Y* .+ /DGJ֩HU0 oJ3r1_7 O@Mqm1]熨t.I-!djʏ6*8α1TtvK=BH ڧlOyA:ŇKVQY ;PJ>K$z $MaO|:a,_7>:{A/8T_&!$hJ(7]}#Bo9ִJC-)-v0Qtf9GtI`DiD=zl_; qhR[EGcY=⻧ODگ#KWKOATàc|+ԫ. `ƺ8ET8֘MJ=zdcXOFYl4<9*.W =m]읐Trd`⁇hpd+e8>e6';i9borE5wھ.+Ҟ>\Վš?$ QA! ls`XF"D-\ aThawVrlPD$@ D:q(/4Eqil{u- @-Ndv7ŮU~r65 io^;|e~!Xrֻ }Yquyw*A=}BuabE .|;|mb[Dц`!\<,:+@@|X^Q$>%$a Xe<`E)(I3 b>c;S*ợ9:u@!3ˊN)RM:77tHl/g╜?io/LΧee =5_C#,U]"^ݎpǏAriYn '!WƧѷ;}1{w˵J gu+eqY)NWqsDe!D;OK/يr[ P43w"ў$;gQ\zs_Yl4(0Rv=u am1,0ͅ)A҄hu`jJz=uUL`# E%`"0u.=͹`cl`uX?mK$wZP֐*`/ZN7S>Á|c23N51Xh\ jHV(c,T`A,0'Zgt Q׀ fwvLH:ݒqz⪈K%ӚJLɯ]f>P&Nq˟`?j^G%gקBKK$639y8%G 0l} ;ڽe% XXڸ!y({-O c&T%uMdT">5$=QմλIqRIBq _0&oq[_y2 cE'z~GGʥt'rO߂e_Ҩ-նp.6B?EO 7cȈK&Zx hϥ)͢-W^(_͉oB4o%%#:_s귑Jx>َ9U #K#峂b#KV.YѼ>O4B0nDLqhR Bys_õڒѾTEC-()# ɱi,JbJD40?֯ b -NWklQS tGP4 ,>~ȣG=6޷Lqadjag\㘷y*Tڿc7]hLZ7 [60a~Ix' ~~"Rۡ~+ں!u_>HE٧R!P?Y,d=!(o[}8yD2%Fzw'v1 zaL852TX$Uҫn!워.=^< o%\QnE;'b0w2>ժZ7}E3l~CszZXulȬr/3m ecrqB&U*~l&CjW Cfpr;!P$y_I{y>=&2^:; U?:+^~RG%BdZnI V| DiU7ES&42*PTS!_UFP=z.Wj60>.oob \9!H))Yu$Bfe (Ԩ -{4eG^g}]H~?cn$'.`DZInӓ@F5A!ﲗymRyʌ6Jҁdi'{k^ښCG]t0 %XLxmP~W]Lb;l@.݊fٻǔ0 $0u0o>4J9V`m\|{~#f a^lN(l:uq8{ O="T0QA9Btp&v 6.>)|{)%!ڸ8ݳ6A 6GfutC6p4޷ >5 SIVñƛZly+@劣c;';:WYقD1iT2ސarxc{.=16&=zȺ7tsy}jѡbܺQO \D#k3wl Epg4hSxԄ"[Gpy*r'&FJc-cC#8ƈMlaH1Im76i6mmN1˂Qqp"O oRa`̖L='?җ_N%@"U)w&X%6I…z8ܶn#jz1U7銴"ʯl@@ݟaY&rv*4GmaM݁?$d)GYW޴[q"!Fpө2M}U!UY)W68*&oe+\Am(3*)l %|XԽtŠ7>e#hYWɫ tp:mN{]Ae |m RY^6OkwZbu"1i+-a촤7 q+I;,V{;38|zSvR QoMIP`dQ/!i4G*L mmUWT;(PWJYi-~T|46ōK,v)y/\ ';9bwفHRsj/JB˖C^8$'mha .=8u/ՏQWNU/NcǭZb3P~/ep˸w`oȲC5}YDhhqQ]F\70!mj|AȰ.ЃoKoj\d[﫹#)u{@z0Q"?i LQGA: >J2r "@ijJ/@|lw@D맵hěVK62s@A:#a;-sŪc￳R7T}XZu;=h|9ZvwH/5&ʸMS&1)$JS SX$scH~q*B<3(SR}{ݻ A_ L\ۑ()#5 +Ov0d7Yv: P?xqbd(xq n 9=tb|KyHZ?)t%k_}H,u@@lN7zħp0b]]><;CR\imZ.ph1!йUpđ vQz84Ko;(0TќT̀ё#xx QrYKV]F ׉.Vƃ};횔#.` OG#}.2p8`hBKB CZZrITnx|]yx8쇁y,ah7/l>ᢼJ+91Q>@OeC)1\oNlhsЕq-I~P <Cn/z]~qnKd"wT lOff-XAB)l!Q/A!9,9l\m+ SQhV]µq$S) m@jvd`"0 4Bu+@)rËV݃YΈ)WW2ӎ"Y 8w%rhQ@Vџ\N^Z wK#uF1#Jx8_I"'0i-]PYĮvrB6)IK#?,!hQxX^JH .4_ Zx>@L1L#/\{PIN(yT[pelerʹJ4>#s I* w(] p`ST2(\ic3tXӵ׷ Lq1GJG7;Ҿ WRr4]>}D~tܯHFK5:KM\uIgjc~֕='ΰxq :c4KFZyK Oa*i:;9z*?{e1ץIn>OVZJ4Eigi}F4C:ZjK/dRo/= d9x[`RoMM0`NaԄR mw؄dormTH"͎6|b ;Zϡ`=`"iRoSOC~()#˄wV&M߂-7°}߯( ODcQX^BQf( jMj3! Q^@JuZj/Į': 9.UwN_y%)bO/jpbw*:-hS;y/u!0DPSkT|ͣRh\f |ܭla, 0 R,Sֽ'uȪLogrv8E @瑀|~z>EoPS´GR¸bn,5"GG<@)nAhj.V̿>$?ٛ5&K籜" J'yM͈X.@kT8o0 ?OE%S%O? E;w˅^Li'ЍٌFz~rCJ VJ3D 4XAweKceX7yBvy[eh3)q)e9+3P ɪ0 6#דpjh8dKOJگQ󣯔K1jn*/iX8oG$gEp̕l ?m{:Jd(]#CUn(3$X(V(aJ2}GFs Fx }kǜ $6$QȪ{` clܚK;M\չF<- bǹ]> brjjhls!xj &R dk` >ؗF7tO roRR~#|H[VʟB^ ;Bڍ;kU\elNLUfkr\ep{_X K)HŸ|WǭGRvru!:Aj.|l񤙄Cy 704Pή.+v,}3Gn/4X]b_Z򙺿=WKmwYNQHg#"q ^$ɿzܖ-R`ɫm$)̳GUBJCb;$1zJ>a27e?|k'_YH_pqyzI$u8B:c<%H}W +ܑ=~RS(*!X$.yTswue|HeP9V?uQ*?kt.hpH8L!oaw[4LnrW 3oe2ґu6m4tƕ}ؓ3}yݑ,p_̥Q ,n>Fn4GE^xG]v}v.YQ+w٫D鏾Ntjb$ Vw&7h 5nȾLdQ!k! _tπt]+]d eF߾s:M$XSfBޮ "V}#. ?avg4fDYgYaH™rh䴐sBGfa#MvIeva&HSsCMPHK ~?^ՙEE3ĨL nP+ kad[;,0BMo*d|px4܎^v}Zc~UE `EjAg[!7k ?`c-LޟnYJr{El{'bƶdeu~ qlv[UMRzaOc7k׾8ZFucgs#_H'tP,őy<`B)"1378$ȷhNog%^@DpN\;Wݙ`pfD3whHsmeeF68Gv_U&j $@lgzeJkA\|,l'umҨaQ[KCYaIVfݼ3]OVi{Sxo3:qn([_`;z9#ހ:/mvKӐvGQ[#Mp>zO+=#Rs,:*-Z+ ;1xZ+j On|\iԝqI!Ti>vx~ZI[kȝVeT?0go)"K6y9UIB,J=kjQ]*a]2*( 7ɪ|Igv%<%ă{l SDk?j^$5cb,49kKI\7Wdž+ŷaԝA\ǕŠ('ܡk*vJ^O˪·vTke~RErpz3=\B? )%˅_bIfg;sRly ѥ Ά"3ؔئg\.zMxҀu9kR3RIZdvv@8.VjrWA'XsC$-:O;B0MC~^ӢUu.ȑ0#d S0 "}ٝ ̓F|b6.5x;@r3!-*7 ]\p^XDUN*t,{4*؟vXuFiu'pȃR0_[ɨm l(82CǂZ}'߃!2?_oQU|ZghcldN4z hY0eh~tf 8q9MFǘ7rs7'jSR]hUgNJ)ԫZ]% s9 uY+ ~%U;1娫έ1u׬S3MsT/N"kRLonü=}w-]U'#lNդ!͵~r Ar`tc@ϾP _. YhZSA*zF &xy=9[9B~sRgW$@'g3xO)L֍NAkl6l4jn@x7A&?"zC1tM[7w?_PvSnCc: ݻZ7ikXZZƏi}0=?&$/mpJlV)qo67Jc:n*XvC3LQ`1eŸgE*IIvhsQ*/,ݨͳv*R>p841UGi7;QkL9saIJīfPR:8)Y,tja5+dExu /$4f'E%qdg45וdEѭWyꑀG(q9N5X-B$fC`-r z^o /(BFi\ 06xd"̿ФWk% F0J8$1V0͂ ` b ~?` 1Sz%M|Z=m=3CGCN=ae<'%=\+|vUpF a د"se;hAϳ&ʚ$Xb4%֖>xgd2ԴqG?ɖV^}hSJ0'f>hQ)8e „q{BĘ+4bP`cR= V, D۳L&U*^O?WEbVrcr=(s9qxwəJ0_lg=ЃKT:\y2N(,vfkw$CQ>gEPQ/6`C!Ӷǖ8; JG-qF9 nLJ%cyqH_u[;lh%ήw=j=^N^ jj޽Fs"ٝj%C*Vpz/jWS~vt)||ROnU?ʛGg p O]׶n W h' >>-'Cr0\|+>_@#ZPe^WFcs Q˶T@IҚ$n mQTQB"\ip:wsAqjX[׼2 *X_ 7痟G/,]*oy~5ԏ$|o$פ-8`{QzX-O/ R`-6OT)tTOQ5֢)~S8o5j[rAhvBLe`>sBL?/]NXD;VR+ =MţC'{#K+5E{Yo[SGvqbAjvg$ 4h7?&KSH^ cV(qsU|LÚj\۪ oSppP qoMyh]V*1^!*5ҡhT"iP`UAeKC^B޴ڴ^/"vD߰xٟ n-] aQ $x)|r֢G)!swݴTW]K=gOn{ Ok]s5BgarKW8[{c~pi&_ QQd^}3&s L,Ib?Nr{Ț[cz&ґ=G6^^Vk!wIMۭ_vdl|j}?nX鈪;S?X#P _*Ž `ԳL+`ř߷>82= 0-|BpͼYRRܮPe* Zt:(vZ尅&y*̗ g9ʈvϻ AZ[;FI| Fcн?#c37N8mD}e,q~ PdUr֮e7˒ O-)6z'jzw1h04Z!NW?Oje($Sy B+ ԡ D9t1W,ؖk@']&< )D,\[`f*v50'`Ko QE:m;2^F-zPFڱơ\\#/zECvwYr-YMYYD.KX~\/$>p/9 PKF˜Q83094it MdEU HhC69_s&_ { MV̪BHP+ҝ&2ѵ95RB] OQF|ϰx%>*aw /HW0'x\{ِ ~rΪU/&@$-Tt2a@`3ZT0у;*VvLhswC,Nd X8¼i9WUw]dz8xO{)m?s+^up7bZ5d@|]8jxt79rLD5NpcSUCWaM!} c*lHtB/۔oŴSk:$ c1 P1c*I|?ꥁmkE15m,]ysnXjbVjVro}S"S}GiZd_H7.gpgv3M-BK@olq9BDRƢ>չwIe'q'n% @ -HUBb:Lծr6٭a2jo *hޭ#@3+|@2?j?G:j#vZĥwӝe8d*2[9;Mds Pz&ޟ%NHf@/o =MCv sݦ'yP}ѷxֲ./Eߪ\LVl]cl6TU8s@I%=q 8jd/;L5uGCOQ&}#J% 9 z3*q<`vu=9>rR /lœ+Sq#!KQv$ 1`䀙,9[uĠV;pįZwD1$H]t}CՆ/wJT rv ٱYZo8{$2oUu/~hRp_^7qv-(=Z>,YyfSS/4HM(itYg__Y;$%#yN)v#=$PZ/%p: F.LMp xqke*bT6+SI?tޛ\X+i|?"ܵhV tai(pF:a[8rM/` obXorfy"bDE~/-VZho?txXVHBPL68&S*b'%ɣl"iFs|,̔^8k~=5 1SgOx段Jn\N_ƈGH*{$đB~T?" >?1Ҟq{B%߻/%7ڝ.D^\M\e$P/&⯒<#xGUG{%f)K,7rɲ]H"{Y[kg4CsL"ZΔ.7R=YE9 e_bRTP7IƳE,>oPRP&iqDFmgI2T- Z:?ӭ٘PP!ZCwഎ{ @Us?AA ?'F :>-E"";=1mO0JEYa@vq+$jjYr,^)˷)zn 0$&'7qf30ڻ,ģvw}uI&#Nڲ$Nh6R x?m'?N SԄw.R&^'T~E,=<R`{EBlIy%_g {)E_Y0h8BIJxIW'vǕǧR?KAK!*ge瞚c.4f}g@kpaUj5vhwsU/vQ}TΆZN(D|GdY[[1ׅV\[C,D RDqv~$LeXQ, ݼAsDSeÔ Ju gKJDj 0&8?>MxmL*^G* j cYĸӭS!5w=rr"LCg^ȡ%`!tR_j YEԥ]$2<ӟK~>XZ;gΠsdf2p!7No U ?4yK+s2iS{ޥA96n!A*fG˟Lګ*[d+0zPBYE0xoBbĦ*+.# 7L?s~>Xt0k@EtۢUNJc%ŰhHާ߽_>sH QʋLEWV>!3PwxCH˦˾⭯8$}>(O˃?A%ւ>gC#~,Na9+#ˁrY寑9BL EWi]MW=]x$}JNFW^99(D4ZTAkDϢrֳ <YM{ífpLC+$9]DAXc WγJ0=h& M=R=?~h(!`c {1ʰ>#)^A^zE*pu"TKm͞Bdⶁl?&#xo|9ġLKlf:Np˝#k8\01,+o'Q8Ssiv־tDw9Stܔ4I-qջioDv2`fuCQ|e#w#!'RQ[` Dθ0+.` /_xGZ.E&T'ص޷lP6+ű{ >C{?i9Y(eA𧋯 4XW}0teÙܦތ=wb^9=i1pR #ET˯UC o=>1 R2[W4 Ҵ2PGګ;rdupr]9FC+BS>/UվvJOp$Snf^^{I>tCVQtvC|a0#/pݶ-aPVŏV cŽ]x="1NC,VAFO?9'= 1TV9 6 +Tih\Uo2>[v1Ӗʣ*5R`[S^:U4e2}60[wFi>~}M1P1%=V5ǒU4p_NyFk*L~/i}Ifqu|GkX#-%~5@9VG] {Dxb6O~qt($oW>ޚ#,+L7cX{'C嶎q"1(!jCto7u}VP|Iӑ f դB MK3Էت]&fUщtR1{&_.4SY汮ZGq =\;zt0`x<Ʒ\VWD׉7cmPIDDt&`d Nk;7Z'"7o[(t*l5gsg3 \UH,0YdGt$@XCڟKGzЪFlR#I!M9DBADnq]fw{c^:kgZxi*俾 ͙80.Uw@haţ؝糇Ũ8nw$~XBR+|ԴI)?W|襃/q v( zdmQfHb4Iq0@r]RӦ ɗ|lbٖ߷}6M~,YtZQ ]Zst|j@2 ˈ'jBrlw:!ū=>X}d/})T-)O{y'fG-uulw}rTgZOTP>~H>umc`*oReDX_<<*JWՉi30f,Y@ 0tt ',%} Mc!5A斢Ruo]=\x-Rn3o5"dxuG8GяxBe Άg^6D2Q A_X:WtE>A ר&v-; *կKe2JƈA}Bͅyn6 ҢY0/V(cBMTQ(rzTx$΁f#U:_m Q8-uJ"]R?0 b`~3>c%'CVh}AHMZQ? 55x͉vG D^r9U]H|AX?&@PK*ElM ܫ7RlչX~twcQvAVO .yQp2DK "Tri)\4Lt^'OTjAe] ;,ABv9oJñ"Zmh3HB2r ̉OoUCU7hR؎xތihNR3oyzB <(#qYK17d Ο sɪ ㊐OD<"F2yf_${n_ Kx.:!~ŞgKY3;;/QM _SB*s[ӱ{am=ٵ3_`^9$,!M_f'UBw+4J6G('Bp2]"YƮK(nc$ ^_oBfҬ"vě/56vFCYial,ˑCxMAI L+ TDCnBcčo;Lĩ.X4;5Wv\&%BG8E|,b%|($؀Q|)(v)~ȗD8 <NCc"{eomhO*~lKb⣗YюY#nŨA2UƠN<QJYT( ]ZpFQD^3Jɋ,|b2`>D'L*IیXIޙEE,-a!G,/f=5'cIq^֧wyvxxA~Eugem]/fԫ E֓2]_LtHJsMݢT rkW,37\C :>_cgG!z+.Ai,Oq֜xY88#;>0- ߛrm7T3f'J8\ ( ciqM z>/{Pvǟ&otՊ|yke )dwY]HYS B 7?PBG j 5y` 쐁@UkRGDmŲh}Ʉ=Wv(^U4v^ _yTkg)js B{-RW1UFLK!&BRpmfSᅢB9nnZSíwcyQ6tx@UzՖa}ʹM4N^ݑEV#izcU|n0=F>iWwW8$lUGޚ=/dfUppͮ u|P_+4C!ZЕ2'fs;1y65r3S.jw3yTki=:= Xs[t_ϑ5K^È1(=xEK> BV~х*$ KWV3eoӵaas(WaQh2TØ4'Wl r9>wy7zA2c}/* ʹ É)wnJK0̉lLl:B-sJ\w9Z~%jbP.AپXӲxoʔbjށy4_w-x oא(T#^by!<2ߌ) ͗cn|0]CMb BzaAy ~ XkFsGtW*d WH9cxSzS*`WB+?,cll)\[(adpO4YړVŽ0rSr.rDxWQfNv=n!`ߐ6A zR-! Œ ļ @5\5& COd[oEY1rбl(x2 (ߏVD?qnS:8(LȌ4jr8$ 2 擤 d`aU9DU/f }ucxT,LuhR;S1 z7yR?uB7t)m' Zi2,i}2b!0Bo#ex )s@ C?R=ڂZ ; rT&WZ7/5g8ؕmSX[f):<% DnBsso5ݍUcvE^y:x\-^?R cb:zJ>r[8a&VI_' ѧYlCWH㫜'4PyV/N"jGL@MqsᆬX{R)kh3Oy9>naauܶ՜y.Uq_hcvN tX>z8\ Ѿ\iޕ~ѩ겋v~JIl6Y4-%@StjըNŪ.6.r\)6̄G֚?G_}”0b*vp IW W˨[z_V"$L~b6@MUJeqKLRѩۗCh8VhSG6kh2dOahcm+hI l9" W Y@r]#tc |!VLb@~i^>Ţ9`i3ped>`;G{.O m^{)oo4鬱Dx;7?voTd@A'K#س`r H;<쎆B$sGG]Z}uZ fxrMY+1OU+ #YjqIE }TdL)&υ?8xYLeMQQ3֥k Kƈ '/Pw؛K[=+m׾9eδyl)CE1سzL -\ͣ!`yQ#2}ؒ;REHݭ'! ?&-AoGX6$?}0eKx5Q&.qv$kI ?H/=4DTQpJ흃Sw=<\՛s~mu݋7uB=y: yqf\|b0㩠0]aI "uV {F\<C_ VN缣eHoQrmJ2&ѫi>S /RWĒyН% @V ~#ߗn& hҙi T$TNei[FVܴ;uF:!1vc跖ip%6>@B!νD3m6U*'}qDo"B2ғ8E٥%)@}U^)JqͲn}4iUN[G9%0l|bhI+>Kcf7b)л c[:Ԝ8-R#*(KUq?|\8w LEr+U;Wa˨/@҇ou,e=O:1Еm- $󅚓G:pl6RN"IfolN|Z I64/p3~SnH=Hl۸ at՛AJid 2yڲ;PKL+7 T*<sќ95b2fEw.Xc^ՕM9ao )K>N [r@ ͑mrћVnpso< <ȚH_0.E$\*HVl2zFJQ䰠67OlvZ3< uHLHtwd{=L\r@3Ll ?KyI~6oDwz4S%h@^U3Mb߂(P{r0̭Dr2' lnXqՑ'|_|+E#,'<˕^|Y繠y3m^vqjIlCx{T1e*vwX z2*47+lf~]\Pj-TܼMA3g4Qdi#o_Q{S\ 9. TU hk3M7V݈82`W@he!iVx}:sAu }x-]uyAD9QISvL:_ȼ~ ^@/e x=MǧG<"znƴ [R0v͸wU.+Q-ڥKشGH=0`>֘vqo4Vow6Rx/i}Ic e7W攽#Ri~Z+ LG3:,:|ƺڻ2R԰.k-E;eʚ;&Du=u;_؜0OL<~7AOM,)ȴŬז}F &߲ i7 $ﬖEpMlB̃3wB3EV¯'4$f;ߎk8 ).`Oxx4邜k^a}o͐I]MʅNT0JD*pZ2@qTlw5]#9gyc60SKkv,7Geq~pVelqt5Z+E9Ds9*B[OF_A}k(`JJxvBU7(rX}_#Lw=X]"n7rOZ7p">NWbʁ Z\ȂX1[m2rY6VUS>zl8 ++^/$.Wx}:k!p#͠я)z]wh?fbj`J[Ц$UOcz_Pm:M)Bpz8Xˑ[@h$:vXɏdr(_ɗjSr bw]9lU#£m֬ݫ'QAQ]+,j*O޴fiΩZ?xIЩGTܴTRɷy8^TYgwuש TMY$tv?JG#RZx$6ډ|n1H QINqX-;f*!_51nL[Ё3#F' `ف4j%G_x`8tΠ sPon=Mf4ӼbѦ ;ޮ&ʄj 82iF7Bʫ~\*J_qɏ@eHt0q,V)amD7otDIڲDVx!2Qn[[^'߿71 h'#@r)dX%0 hƕtxdävA*QADdDd) 8/r?%0 3#jfn w[8xGFBg8\}_{sjyg@=?D>AL{fcpۄ؂3,'gj 9N*;hke`$뭪fTӟrB .b ?jWde,jfY헬+̸apHfsLှ1HY-b* 2ð2QuBp!CĖTjA 3. iXCeHj }\}##JN%ϗ ѷb%*I`QTc_rQE7:ڀ a'ew{" ' տ$ac"a2g಩̯,15g X<cHNnW1XdndbAƵ$`slz_Eeop@d'4)j^GYB@̈́$ Zo$X̺Uͦm[9{yP˛!K4亿HZUkl2T߉jm41;;ufD_6 h0roh1t@6g)U\,犨7*0 #@Zu]*)}jSf.DY]( %x `8Yvj)Wbpnlf0Dw_)<:R$Rʠ.Aپԑyv\oV2 )Al] >ywp؁q;Zȱ3ݲIJ:J1J\xtWC;L0n6t+'J0Z&~,FL&~:DD16OSZh2<\Qf29m-Ir%݁u{ʯ(XЈ^p'bH۴[5+"Bi ;\=3—^Q({G3S7ulJgo߬a\jk>čmwaMVZR2`Տ`Vnu:3(8ٛCdHZHtA}Uΰٺi|H!o;{>߭BbnK!%ER9Bߙ 3h`VebT#g*)' (*dʭ۹va#qO""7JܼoH66ڥ~x* {cbx0.o[*\HxeCHSKV:, W ̑DƧVf@H?2+UjA MdlNcuõդKW;Y%X'b8f^MZ=YđܚMcJ2 Tì+i|܏AM]8~{JF;r"e!G0iF?^he_{Hq2;(Ԭk6 :Uovyy'"SN /a`;v*yĠh@ 4~ߠRM@FZfVS ]],E9m|ψҩ;ڂks\B ڪOE'G.$wt>j lNyW&XhagȯQϕI)<;U'slrz,@@Wr%"jŞ hpO6gy5hMlf%J;z~߼zzұ03/(+Dzˎ:"..ds&仆~ZO)u!})!?q!gTr8֣tZ#z-?=x/O|/= xQ\-֮X`QV LWõ:SF mU"P9gS?cE/7<߽ϷjMN CNʘvE{nQk57|b8[VG:䄢,(&v7{(͊AtIqڴm%s *NC~E -@I\tRyifNX >%.{1 tjR(USt{;ОEUc@`݁haE/`GY4k8x_,!se ,=%~ڬ%㞶43M(>6Pbd|+T]B&A6A  uf/]c`0 azJƽf9e АoM3gnjĘp.#Z;*q|ȜM8OF:{?(h}?9fyXjD #UîYJVjP ~ѵBnl+vpOu־cj+<,RW'}U{FpdiW ɤxf-Z] $J{"@ VS3jGʎ'wLwՀ蹢= 7?Aы"!hWN4 3qY3xCov5RU>#_RUƢRc @s\ {"c)V-ֵ{2xDl '>wpAW1 @/^Ƴg=t~*86_p镔*ԼXYFtU`o=w4=:z9AK`܌E=B$՜j؃>P4|tkRG`/ []\\<=7sP׋T!fc\T Àjm\f~'7ڳUp![ ]q)h7Nj١PrrӽDqQ+z/j)QfkGRY|>Yn>AtzQ2x)#+H m5nыʙMP  Ć3Rƴ gg4= B'˥YTx ZڕP`wRbB\125G,9.Nh|֮7.J6KM8"_xB =q&_Bx$=H@U/E}b^yDߜڐe26lr (2 c\FqW'=[6@a'm#9]hx$@ iOk*D8Ƹk:@e.Hs3iϫpU!c&+=:Ȝ?tj wclb@FsD,*h!7(T V<]{Mf#VyjΩ3UFI2m X*(yhO~"Zz)> #:-\a5@OYHNGѮ~k"8ަ3^#uFWfR4 }~x*:j~ĎwnƩI;/$M;ڎJ<(]~@\~[ʙ1A dVl4PSj +G)L'IE#,ߩ9$46d`%c QH@/@}/!rZȕ. bpSnyYԉM't!F6X&(=} W2D8"B_V9KM']j$6UӤ]DV#$Xm\V>`3 ѕvFaxWzAN]Dj|"wx^_d%9;aAZU27=}jIv9M2.`[w; ص3ئLl^aF"^=`ZB1J@'6wJs*/X䢉vNa.AN ߞ`Z> g_0W&!Xq7DzȨ#7D"n'{X) PIT_ V|pXrx\`gYNLx.TᔃBv{\_}K[FQ0*s,G,r 8|V˛ɂd<$Mά lWج Bo`V$@ ~Բj."Tj"3bIն)D>P;~gWvRbzGnWHד\1&T]bom埆)~GuPʇpR4]xl3`y@Rv"q}Bess?D[1>Ki8A#7O;枳=*yYtyt1.ML7aptζ(p[I7Mٲ:DIa0ˑeF4q(|`Q^ٚuyM0x,[E Vx+D޼])2gqUk랆@T6EPq/H(^syp2 ƹa>w /7OkOq8-HhH9zT+0}Ăkؿ6M d-`릅ss<u_eA˸ tmм1%`8ժ&X0b@b3R.(>5iE?42!^5ܑХ\yLSK L։E 3" Hfex~do=9Ѱej 'r!-4ieYj,;wKuޮ3"b$ݾte2gP?Ҍ1b oQFGNQN^&ɔnM,p#)ؙ_P3bA8 `W@X6jfC.IE fa3*v|~-n5jY+񴅀f֙+؏ˀ԰N lH39 {#9p N*64hWSH|@Ѫ['oڥf;~")hZ!2]淀$,r((UHމ5H`5[ %O>JM-(J?6Fci01wy/@R~aPTRxϲ"A?qWoFkDZDwѻB1M<Ж;tuՃ ^ GD52U5pZ0\rŀeW<TTNݺ(ph;0^a>|`oהyJˉ;GI]'щ PF./ΎNMԈmx[B֯˚QYރ2T/9MjY, ơJ!^̯ե!<;BF~0jFLd7@}37T@cن#Q-#EY$1 5t=E!)3'PaljSjD?lvƉY1 g;}%eo9̑-[Rw:fT eiaAc< ,RHҳ4 8[ }kz;}V*9!B\{l虯k(~HğHבL(mmLS׾a ِGoRiDxxpZQre`B@ތ|ȹ@;se +(g6|YOs'cfC8>Gs[jp߷:)lOFȮP 'CР3(a7Ic:VOqPp\(^OP.[ߐ,GM>IskV@I W&9cH+|mP9Py&jk86}k =Ao OfܖKڧw4񄀨~8NQ/MMyO2,ةLZ)4> A?*aBkt\`KWB]S^6sf NKo+|+Dj%[h>utQo.T*i hLAڲFԏ!"* ˽2Azdy`D5T?FnU LUL?gϛ|*LkǒCBiΝ͞e}iUWk+L}=X>ĉ]:/kX&ThMJjyLfT}WljB_I*6+Mڥ̓ 9. ū~GN7amG݉ Hz(R1䵳H<H " s}Tc~ӄF` NM0]q}I3厑!ynTwvv?` BQ]|- U-{AA6F8r"m6Z+̅fid%Cqs4ntCҽzj.x|\X[:R-M*M~d\=^M-7fלpŏ@HW J.Ċ[:h>;Wܣu&h{Cq)B]W%=?y⡸8@~zye7t?1Sag3ݺ$#4Dn{~)Okp/"*OkwW%С!PX6~5PMs{^V /Е"' 0ĽGshOrek$J0LbaSM˜~tfao5/,Niۭ%uDddj(U#A &a%pQnOOYUgp>esJsRpَ=tO9e);͐WX)ŝjo?dz~X6'G_C-<zD5Fi 4#zW19@[X$i:y~:˼q6pl7Rm*Cfml99s 6B l_h Se Å$d4+0wgX"ι)FiGj7~+Iaar8)d z( 8Y篫IYL;+OK=uIxEKV`ZA羻`NV)v|JLO+\JB_’) /KsN{13L:H) R4ki "e#G,^Yy;TCCl6+ZW4P"jB"tBj5vY2 hra4,W ^߮ :$ֲCFm.|u|)6QB>k4M 9rĎj$tO/\LRvxroD0 _+jc2MfKԒ&]UUG&>Mhz;=]wq^i^1gy wJ>'`.w`Vk?ݫevK9i3* ZSh0OR{^5l^fF]xq#C.^mQwP5mì ?>do:6$ɺ t(]E Pξ%Z[Lf>h2F±vK5>pab/NO1=Jnf]jB:i27)ǝpZgF <Ǝ 2f(C^JbǍX5l9 `soJ;<ݠ2R2e94#.~%'Uh~24p(N[&s[#) ^|JDh!*/[t~㗐No=cn̝;lɜ3[xt` x9FZX;يMF+$ #D2[oG4 +ic<cST NtDoa#. V xŌlq<z P?/#РUҝ~zN~Z4w}rdKࠫ'(2-2},lgqAiZg,B܀[SEq\Bh?KpU WsOFMɈІ*M!! ǒ}kM(wEmt)#cVP6ޛ40D 2 5ΐd5uA#+u2 )t/ Ԯ09|B6:썓$`twERסʹ!+Vؐħ( 5^0] SW+9Q飢j)', 6 8AHɀm>f&ܺpYP^ YɆ;3%P2N{5\M8-9霄z4MtvK*a?2fIӮGliHTrv/6A5LcS(tDEC:=6`Jhew*2]U%Ā[(Bn%Z6"2kɷsi̶YN1LѶͺh8Ar򽆔V|("8b0AB!ZbI=AhJ\T#QiSc[BSz+ ft託, L H駌GK̒QG۽KReA\]wiGf#m {X*zUj??P8 KkU"1sڲƆ d]lXkؖ◕\=)3~%vƔW ~Sp{[sGZPgk4+#dބ'!hst,W[=$X. icpLAR6_/捇PMpa;6s˦J5xFcJ3}l1 Ԍ^u\O7}KI/ϻ7)sT|_%r\= +-Bݮ3dI"x@\=UD> g ~Ti/Z/T)gϽ@?LqA/v>U2ՇVsъ92,`̛yEjSp w굿<ҰYP-ŒN߼K7|ZPeHYzЪkv4DӃ3\h[/MO8 Eq]o/ 5ŇGnx;9TN_a0]2 5r${Ϗ Z&%{/ܸd(W >Ͷ5غ t_xq8`񵡨n81P\T^=>kSi /u0͜^>%)(hj7ʿ8٢,qFC(7~coԎPr#_9>9P]%S4'8 [Ax#LcyEz,d+V 8Z(R|>&S{s*3uLgyU tGV(f<8wW)8L!ntհ{^׃ysgU<qav3ɭx祲"&C 7mC{q綏_!V ^E 7Nj?ŏBwDxa]}UO2g; j5\jS=AhO"#Mcd=F j҇ZyEAYQS}Xhz|XMDH%دxupJe>Txcp b6sj~2G am bڪC|6¦tgiCYmwb 7}67Sw> aC`azfl'r$rٔh4+``Md`פ$ xܥʶW%6̹`w(B`^6)N Ě\>o%tvȦ Ѡv'S>FIj(:c.㧰`ۆux#I]7exz4+.ɞJYUcUQJ&lQo)*l@{L40Zh>XDpjW UM^^phW6qE4aoʉ=r,M 3ԏN[ƽT>bg+;KB|=b9 [*dcIG(e @rU?vpO AM|2j`PӘoS vw-x#W,cZt @*Nr\0cLfbWK=hДQ ˣ|x5kw ;}^Sjݓ?o,#k}[B^OqD<%ިxCx{[~X@tpxfL)"t%Q?ۀ=KV>_ |c_c)[!Wd(~͙, JzC)7hW\fkF_Vtm z m íi^$$T=:(ܑż[UjYqOQ}%ֺ*!eor D΋" &|JFx4%}ué4R yjI3بP撗)hT?ڡ%)ᅯ\HQ7X 7aFhBQ\'+bj+3ײi~, +{E5"p)qB쑿KhS޸.0k#6KyC`jTEz%pAB@4#@~TG\nNi7C_Zt>۞،΋aF懲氻d]J˴ܨ4rA3Ha%$]m_z$·TrK6Md$0V]>]\p=GJ7(1d$ 30C6yC.|ieXmG QJS'>Tл*j0Uuƛ0yWC+ڶ2ƤV3ȶo;<+C=~i0!sZhT xʪ1CR08~e8i8_Z>`yM`@SsB.Bb|b"ew#[qN%3+N$i 5tNfDI?,T4f8S\&*Rc)ʳG*PhĺBک$D%m'DTEΘ?1[{?}z^ <foilÂ#{0&aQy,e2pg[65uڟ[XvP$DF6[W_!ybC.^W7!\=GDfS9bmok@eJIqx$VM6}Р0㼋0$;}eGr<ګ,M 򬂒I/0H%bNɶٱK')coC?-6&׊}ƭoejhב(Q r>FhoGi@R{(~;o51;#6c&KM(zr9[iNI!N-_0diŒg6.˖`iO;w3$i)U 炵\ZD24hD)Ak[*~yφG͓q))íf'JY=4 τMS| 24n9ʨro =Y LJڱ Oh۴ 9"5BM<3h CiU"iPjC]rYQr'd|^sBT[ g 4j R"VsDno #-ZPڗ5ѿf$;_e 7=w4~vg'.UطH"B ̑]IND/1j_74j)RMfĶ|,_, w9+\J$y b?S;RFϲI3S!~Hm</\\ Z$ZBπdނ ;l߻J>jb#>A CtÎ'Qd ruUza~q>‘@x = cE͟S֚G˕Z)JZ_(ZUr9lVB 0u`. 7j$˃bE4Z#GM rO$0&"-udqhpRg77ѲYLy'S,B]&ii~ M(cUIt\񦜮Ir1OqY\OJr13R-TteY/~uJ3^  ncQFCk{Bö#T&e&)b97lr[2wII)KZ0!n,:|ͤKkV%xNbouDܷrFF{oAsM//c`uJ\۹R4LdIZEfĮu"scCdu'r_UF/3pDA?qfThv>Õxwtp<(`SNu'U$2X7'@ay$ ^ ڽ堋)Tz?J$i:ܽ\2:f*cU?kBpi{Er ȡfE.J>!±a/N؆w9ǜ үioKm rUP% JreUJ -k?*? 5?ҴBo p,_r{{yDN&e@*!۠#e&FǗ9EQBcŸKquUEhր ȗb{] !7[8 I3ț,ߒ1:f!PpzSsh'@m;ѓ: ֛^("نv:sPD||bݐo:.λ&;?)<ot7ŧXʬN=i n̴VV6ԓۘi4~uR㪭  |A{* 6mu@BC68Ғ;hlK 33,_<0_ސct6z^z |D}<ԍE{[݄loqʍl矙ZH]m3vInuR$lBBdtۇ׳Gj&uлw2IU%p-ab PW Mqw I]j$x 3Gf"YpƮX/W3u9og BE-5`Κ?b7>C^C⸋17C2B Eބs]^!XΒO?s9]'"D =Q*F&txCS'1dgkMEՔy&8lӘZyW=ʈ n6) 3e)+SCQG$)I%MGS)ܾl`5Ffni.Wyi%R>Бԗ~ +g+h^Ċ=b[`!tdhiMGb{:w/dUc5˲cw-<],{RlSZ;BMnH[8 C.Ƅwlk4Sz:7ckd)Ly j|~ZOڬ%8?)׊]VJQMz9[-+]B> ˢLFnb;l>AABJi=E8S,lzy>T.uNK>ί6qܘ|_&lOċR(X:j+2ix̰ vȽKn2+Qj;+H" F:  !\OLJJz 6ixqFȚ*$h²[؇+)`(@SV.[PG~_觝D,iñFlik=I)mj[(HCc|h)- @^1A`3DmD:W:b>M'gD @Y魄# ~چ&yel/UiZ^YQO (`I8-K!0Qu%$GA#zn*ӡ>@V'ڔT.w"A 9Faפ,W.o'Y=}MEvZcQ sg6H4F!:-/[`6vSO,;*H{H`oMwT]0vzY*PԀ6Q_rYjwBTL4`Teᗦj3!Ux(u=6=f'QH&n:^=fːvi ,,"?JeY\Drˎ`i; o_)郫DRH tOjWd5:1 U<栧OPBq:75 pcdpʐY<1iy>qlS 31dK\(\EƆ9H^ҿCI깥,jJB*5YXuIꍺ%9{XDιXG{ۻ/kV./AVOnD,{6yYՁ1Jˎte8_Cv"~y΢zPI~{Jk6UGwkkO]!&61~*^L?ՋŤGGoR7 %1W1A  A_NzwC\?..ݛ/gh:77MzGչ^>w2 ,ɯ'oF2.ZP5oDYl7~dEas7rIɁF1s#tс`{SeE#j6DFrAE(ב9[[Y/ESH]* ^|el)Mi֢*UQ z8}c: Rp(# 98SDT磣~%wUh=oPO;TGclR%> 3R)YG DuLl1viQN_(kzN(96B|i"ln률f(P O*K .2q< -ƥ8ح ;"|r2AEN2h:@ hePPi rm;{(Z^AΦwV pjv|E!rxԹJN[9vw,4cS 1ѻ;~]Q; i]e1 ~ .j`q/!­t>Sy 1uFB IEJg!/{KxҬnabE5F)t#YL㌖""z /a1n9䪗H-`pnٲ3a:]%ΦzA$'9c9CE"%yvsnzE9g&n`,RFݛsdK[SJZ[ߒ.gN6T X=Vy)˔b7cy%#G١VM/oX'3N҈k@\SW?ϹK@lp4pZ/q4Q|"a}5L&б)eS NO1kALUiF$gdMv /S"k̯j/&wَ7Kb|ǜ&hz6lJ ϣ#T >\JEn |sRBRjeWm(:c 7z<<0wX{W Aˋ$&jԚڷV͔!} ?[߅N5JɁ TdG[1e̻-M”3$G.ow\jceDSR# Z8\4@Y8b)CduHmc^oMMM&iL}ـǬg/  :mKpv櫓K}ΎAZh|.̭ҽ-κ%+ku KKݨ &G^q^Vj[FxfT$pHj6c+=dܔ;|(RBuU jbV}>7"O-Hr0YCYh~̐%QDf*c)0MKSprrTI֩Z\`$ /O#؇~T+^ uF<]F#^*>dpą>#u7!xE7:i/m='AQ)\#0tRcaX~2b׳FzAǼIܛ\g<,AIz">XИ5M9!;3Zz-5pԕ]U%QDa5a'"ʡ};$ERG-݂(ʩLyMCỐ..K (>n=T'Sd<;!Glݶ u6My٧K:pWƕʒODzeHGt\SzU;LJ*1xƟ ( sx˴d 5O&*@v A(ٓ~8h !H& (Pxaҿ  ,)Eb`ӪAtM:%AMOP<+nk>X^AՔWeKs!(nbnaP#dWHjig/}BK3xùQW ר|{;x>ܵ3uqf[t1'|E(˛ J!`s>U+dAobmէ)%t ̨Ec/ 9 ®?]+'j]w[ M1Qogƪ/O^=m;?4D6513fyQJ(LgB{#4; ԥ^>?Cn\|Kأs@G=&bT@Q" WЇsm-+ +|\-@pz,E[R<ƛaVRy,ׯS{<Vo5-Ø#4nr(-ǻ~yRcoqTz -{D_A+&̐v3Vc0Vx+[xa&5(JGԦS鍫YwiPY|Tmd Cr-vӜ,?T҆:b@@і ;^x] -CqCd*e!!:%Ț j|&P'H7wYƟjEn.9v6s#YJJL̝=gg}vh[CM 5N)=0_߳[w8~TMI@._k0?>TUaibu ErŖ.jYƅC`w~.qvCru uK1;dWVB9zMKQI璻JJe(bN.::/+xڐAJ {A@H&a&M ,?n%9tTh+*uc|i9%)#.'&mn"X|޳Fl`7]G`-8(^8l9>Nӿ:h3勱٢ۗv-SL~vfИy^K_nE%.y쥼 P=Qw&jLE2^z$cRJeYU0+0D ̭pe*"GJ^'Hf-F"tl^+̬@CAgf.mPnv>4((>BqG\ÛQI}ZU4Q R(wi&xXbrwy86ހaRn՛ iqʈnoŭ v`rVaˆ9=J/䊢eZQpO-bT3  ZBkbʒ5 $+PJDLxlŲU͉V1#Rٝ8Vkg{Y` >tňXVS>=yf0Ib|輩 #OZ!~}  ACb"bIXȤ3$!BR]"sa>ѩro/455"~ QO+6P5*B!bHU,R}dϔdM$ٝXj8R#ܟbqtu,pbœɕމL*}f8_pdr=dTG +QԤ$BٸSG7S}nIЀR#?SNC@+Q6lVA@IJyts[ iR˿R!S_<+x)1]ǍS2u"Y@Khv] $" t|M08DEdIV]D@$9L],78'nhzj: z 6j5&;Qq_ W$j%IB% 1eNfQT_ ;ei'Q(M4Se1.u_9F79)KwPޕ6~G)s8( dW$z\&?8oB,ͳɅpD}I1D]d0qAA-E܆eEEH1Ai\{z]nkЉqd'0P"IZ" yL8ӈGvQ2[RʫRLX-nC"hflr =m1կ j|$ b^YeLF`|09tu_͉]Cx(b4Uѓ;<8[}p[iC >˵tG ?ta1*(j@Kב+rLD'F0]~ܜ ^r|Q/M"AP7k`juqhL ֥Lle.fMÈZUt ѷgxg4flÔ$ =CDK@Z|3 Lᄞ:)]L3^tAz}qKP4DcDd?H2cl*R0y 2.smOR/R DC)6\ꀨn"~@K#LhK\dzBNI*jǾl>#NR$T][2H1!%kE{d1;Qkl ⛼c{r6xAYGfŰ'O M`BD^4P%*6E"Qe"tO'7c4aa_$baMatuH|w> ʪˑ1ς9T 4;b[zbxZ\R$Sޓ(*jt+Y蝀(!MٸeL vu`E=z O;m[~Yn_:' ]V^`bhnⰉ[0~u HZv󽉵"E:{GKtd6 "s$:j+䛼'<) 컫|6[0mSRmIE?+5_a՚-2zMeQE]AW^ՎHoTcIDG%m=NY Ѯug ]rO`Гu3٘,#ŗ+$%/Dp&v(&^5B8؞x7s4VG~`;^8 d? 7ke.&#d )|ƣ[z! J.U ?y)ŕ  ڧ,C8c&Q|Q9Jh{m70+&/'%v`R29s<}u3K(rT^lǫ%4GKu`6.'upU Cxl7 jwO.%l)o@Rˋa;a8lQ: O yn,*p9{'пo)<;9]X.A[rj[T!z5"_=w#9Μ%t/IiIhpy iѷztknZn6>Nppˆ|WwajtβέNzcYi aϯk'Q'EsYšQ7 yGX_$sc{~{~q{=v$ڬ("Xg6XC9~64xb¯i(;XǏݟ>l"_E##nU-rr9Q̱fipgH^ZflocrGA+}k]_5Oyf-Uw|:%:俗5@=lR@5]9);fHGn[o TneaMΠqs>5PYfژô˯51`VQ o`KHF% '(H(zx;v|j:qJ+Ek=k>HtϺn LLJ` 6Kzzۚ)AFl'|dϑ )ͫxTXH^ ΟtEpDދ2SX`u'wJC['dy?8/On7jr>,r` k lt\͏=~%B&^I,+? tn=MUJ }euþ110[UBPá9a$iy }"UMPˊyU׺~3bɨqibrpmEcf)y\4ߘu:jί=M0ːCծ ŭFc\$b͂ا"BN,cCR/r//FͨPv%#Rn7( x ~LNΡPd~*RY$;QVgxWi\P\CGXTL>"XG]4ʣEcSJwSdRy P`ݟ{T UMwG$.7sXޓ6UD)ʕ'"֗`E%H["1K DeHY!#a>!ۙiԉ<%7(RN0"=tr wG*= pH| `^'8+ׅ"i>j։\|wYZO#w߂fjÂZn/HbFW${H~ qAi PN`<@ZFsB%xֽ2lf!q1 +hqx+BRU{X/DAP.x217?dViiW.P4Їw l S>}"W-stEV ־qx@8C6%OAKuy$zG|nT:'cV D'Z8C]QᦎNs-Hs~zB:!R%3ZJ؇:cΠ:t={tῸ<4uaj6X*D1|7d_^)')[ҐfHa7FԨ30׽^Uh ]ꇤ A$]" V%-1C.R",:&qcQI$:q plCx?馺7}^5.<`W'aVLT8 6}2Vt~nč;*}*Z=AVC2ރŰwp(_C0]7exLcpӦ}:؛ /鮱}%M !QuI7e}[0f- dHi7zAFƙ /cT~&y˅(=]/8c $Y2eCL55Cci!{ x[Q(? BJH*-]XK!KLa@O`;X| v v ߲I>8.T 2xFF@#( axmfi?URD"mqRſ;|E bjE>U%# ;UDV_dPi^)0eחf1S1Mp H*BϪ4߽#_2(ʇiBLnTkp&^?PXԘ(` ngKBg&Je{8Ճ`%FXXs՞ Ji`b xP)7QGny isQ)]Ă;"¼OX]4*^!nA)/X pV'XaB3iX@?v?lApes]$ Vhv.\e?dY-)f%WX>vL{qK{F>gЩ,eDj7W@< LarD9GՉ*C,31,[QOrբuOI2Ч uvT[WyPG ;T^iIЙ8u~#\R,UHĮμЭxʫ{\аUPb$"{U~Fr5͐⻌t]o&V{F#zjjîټwҜT^UTl{DO%QQ5iQr~Csc,\ Ogu/[fF<09iDA]ޥVbtJ5{0q v Z A> 83)]<y\RM~գW>40)tŚ&[i\|߭>l,! d8I4z4|y'MW SDKK4 MGlfPʋG3u6*Fڭ>ŸS.N`ٶAAc4JirKx8*ǖm>Za1}Xc;#uiA'i;z{GԺ bqU Fy #i#s_::Ɩr#ۢukM8j6E yx?ъq8" s#co30]jZ4pd s։`݄i6r1ɴKHi3j: tN FvlK/%(R-Iѕ@bH74yp΂vwj qa}.ep9Z.1:  ۷ E:)< P& ]zw͓!*bbOvC;GuUfMLe8ΝZ%+Au8?}XMdTL* /X+W Hx\uk<<7&(e¿Ю|n'Gmvsx=Y8a!J9}q*GB6x6'ץm*J`CznRv:ciBn5ZⅫ 4w! Dh쯈;!/?@nW\38KޫL? m΋_#(PHA!ֳ}b~<;N4d4 ]y.sh@ oi2;:=b6N$nx$f ͤtp3QݷWF=ptRzb _NriMk'3z@a$`y @`I]Ol(dE@V)] ;3_w/ `]m\.OЫvݗ`JY\"6˓ǸR0 |$N= Pp2Pv7`*.Rk|$Dܴ`Rer"Q`O4IlMFpx0ZUCeŸlY4\a9Sc]@VOG"Wa)?Ip:,2, H5|3 2oVgJYmO^ЧLβ@m]T)A[\ݮn>0D7,~U kItlfԦI?ۈͧ|lN[uvPA>Ħ<1۪W,{4+IJMь̮ /pNTC <>ZECY@[Cb?yƤӺ,EѪ❈s. R,l8L;B61DƤ-=/82q,AB=רRQ,SRQو`8H2r&)4Y]:9JeƎe7E*ʹ'nU RVlIPUAa 1yD ՛iYHRUaiuGZf'/,a>rkC52ĨSx75es&өD*IB'njN{|?cOqs;Ǔ\߀~SWKs9*<0Z(YP/ f' ̧7'Y܀KG%^"l6sYsmy)tF=ؾ.]:[_KhܾFg7O/ ܩTufA>_k2_:m+: K{u^Rе\PQdz}@cBHւ.§2B[\N!>U_!Û.L)d5s>K5&<={$j1@*n^$LXa{^TT˫ѯ_w@al%ӠɢCg]u;K-([tm$> 6^9p~p@1ϷyQ=[yť8KbC`yZ6{-43[ܡEEmF 0-9^{k)j.A:Z`";B^U 7='ee.~>% (DQS(L9a\7?&qU827OOJӒ3\e8fpᛘQD(#K: 9$s[p`Mc@IE]pNmh<(^'>Z_JKk,UxFX4~W9,@i@hWɘ>wlɟ*ϣUY9 ׭@,K4@D~kB, ]7OȬ@P/soKo~I=*t}aL}+GdaM7XS"oh;Fľ, , pۣ[ js=D:bP =CL?8S#:͢kE~rCw`r- <0 c:++ܧ"&YKu=FvXu 0 GqG>T|Pm:^勞 ’we+0<EE)㻊,>|q"_g ?*6/Ǡqcډ'YF2s>? .1sD~{1[w!4˵anNiH7bpf}Z3)8e|Gt;X]F9I\O=Ah? \UN/ wE[9gaQ쐦_<vʊtU迅Ih5:LrTC&j]zR+O Y2ZK@P5EogKMF烨ƛV:beB\M .#-e CƔˆc\V@!s4f%3J#;&}:(Ń)jV|eD2H]eh*A#hb*XZ&PH(cBx),uJҶ)@ <fVCۊ!S"0cSH<&d, Bj̞,1h'KLIv}Uwל<u%:!L lERr V4u3y@lN@dB3,"\4dfqfP_qm4WUXj\{j{ת̘"7`R֨7u9cWCkw'GvAzC(u _;y3E߂$BrI=y]0EFqhAHP@R'R'iTz1Q>SxkjHZ:F~K*mI]2Yq}~]6 ;qF_K|*iz!RTgs=%/NbB8^31Y` V"М0 XrcѪiK[vj<r~ >2):~ =/Uo΍=x`1ͤFB惉) !_X/3H{lx{z6J}%:0YZj ryMHIG,XT秸i. ewtVmZGPP^|,\-Ҙv6<ƬG8&(ڛQQ;xYTK![2 a@@G\߻K29WI*få7Ȉ:!7Pk/l4M) +ɕ|dvchcAy[ܭyrԡX`o@o@eDQ +}nHvt6$&_=̚s>1S׽M1UX]^lZe6!5%>H6XrG= MKK0=E¼Y,tУx6u%YwF0ͶW csJ4>_}Z=Vj2lt.7c Fl"͑`3Dk1s-?I&\nK``2tIicc2x$ 6OUI{ў3?ǀ 35y#)௲~c^CTHYeb.|۸nT6Q['cދDqKPt>t.U;]ԛFkB+QH|A.yOK w̆AлFթZ Tsq/EJ"MZ^u^uAQZ5 +nYuGd 5eoM>?CGV/f,Y[H{`  jv'7! Sؔ"q * L6cn(nV. dhE%ËJ*6xº jE Òde%\,.=) +Φ-H@9 I\!20E7O'px ߲|BjΛg.!~oFEm>g#F?mi ==΋kt|sr֖u4!bcJ L݆-Z?,B^]+ws@3z[3م!_)>YU YGYN(ir'Pv~GDiMU2x‰,Ԓ4%ŽoCz{L*[^mL w t8:2k8EFnjWK8ذ|SuaA'ψϯAG񮅉׆ʜZ:nx\> P7h w(a!\p@V7z+ևnv/պ1aqL2~]de(9Yض-Ep"X8Egf 4n 9 (0D`xX5ldN:Ӯ,{~!zC=h$apEY}5B8G9!:fgtj}tN礡j+NRƀxF s2f 6U1l3>DrG̟C]xDF$mkK?Wl<&ͯ d]g^jRÙDD5Zk%oIN^G+9+8nQlcDJ"H2VuӷF֝a/BBٰ{YͼtHfIg,s"_GG6F0"&pCotoI`gZ0grNZM" X,$JjFEm ̈pVekոB"/ydǧk(e ;U$g6~a&$rjtS4?A8NkW~ިwKqBE4)f`V^v9J4z4.CSݵ2^ M&}(t|zGdR]xxV9<+tQ%`iV FY^d_cv̘fS)h+nH`z_ڵvV@Dԍ8m5aU 4Aal.Z& : vb4k!З,Hk҆\(NzzaucDXou5RMPj!7PB}T6`y Zg)nWĊ䦬%X?^iuQ h, ]#)1p%hO>9њ&FiA([mK2MhԅFj(UVBv@k  Pc|FaѨ+6y*ʔ52.dGyHP#\ "ϥ=Cف>za*\ȫԋUFE٧T5|``d̠q'-܏Qa r$dV?P&qWDo6a~pGi#:Zy>H5!})ck(SޖB*^dfdѳpyD\#m@1FkmtC )./X(3[KL6J`6X j}}(Vk8v{܎ ҢD% <̩H-eP7'6ͬk䉷 JC  Cnz Q1Ug$ g",ZҤUkgDj5.tF*y]C|Y'́ہV-God??sA4t#T,-r?0Cڻ\,ŗ4kYQ=%Lpmtق Mau3udp[g0MȣU[J )2+K.u/g)y$0.Cq%+)qr'")$@-":O„y[^ $ST~8jhLg (-qN,vyxu1ZTN}ɢQW|xl'ոc\XcH;&r iTcTsX_Z>幆uxVeCK7$0^xq~5*'lhrEe;?AdB;+}f6[f5^^F>.;i p+QG0J4}ħ~͐  *:~9q_A+Ug ߓYER{ӎ4aKzxȿPN )G`ބhzmXhBmM[:]՜UXW#{U5pf/sir"^HB/~Z7 /2gDGn   قT:> [KlP瞱cz 5' GE& p?/+t5ɳP\atweAh2JzCݓ<L|)x*ZFټ9K*wIOlY=ed4$3_iÊƍsNSo$ L#TPU6UlX=yOULD5T8=@ sFb=F~roL;=o;zj-VRgB;T`W<ًpa@WA(UYU#ca,S |HF04R2&`]"K $Gb}&īz}Fj b|X ̗G+ _snAI1=Mm YG!~SSk1]`w&8z:y.;gG7P1"TTGİ#} H.PtlxӨꬼ039lcسգA Gh*毮%5dZ(ϑp$dwQJ!7Ȓ~-Eģ!j(AN;2sMI0Ap;@zU古2SZ ШLۙ)Yʹi~&[Q[2ap 3K7g4 >2}\ ޷CGlO3V,/ P~7F0ǥRia=wʑ F+M6(F !7qQZ~-'Rx_\AE8T[ \^SLłRS'C┹3p~K&,vYvS؈ݹ|Ӛħ7S}d2IQ ȌQJ\W& AC$'o l00A f3L`a铠HKR}dnPIٮO94 b?t7Lt\ F YL09"@#̹CN'l}Avsz(mhOL[wm 2)O-)h:AZq `%λRoJ &]WaWR6>@Hj &KӀ\=V|q+u1)L1_÷k,6~duSbnʓ/i:Р|)KxMT>ډS={-^@IUhY̓#RV610S%pw5t#b'X톕pg-){9ԮzYMgiy#tk*T82z dke~0vX\A.|`CηdG`GSTKym3MC\ekˋ o!E?a` cw1`\yl}`oG:R>D<1X*̦2(cRҚo]}ens g|wI $( 88eʇlIу`bH)7$*Zҕ,m|)VIe多χڜu/ %[w@8(n<2朿eTSfѕ?0h&)x6`qrMЎ3HJ9]Nd]\bM\d5]iW9 muW0(r6"DVH&1oQ[Y |)cI5xr^KҬH eCzt8/' Y,@SwBqdi2 $ Yz6{vN3aUnVHobwNQϕVCܛYYy)=D`SS}v >g=MXQ%q`;O@EjN.R \tZeq},xGiχ% 2{);稼0VSZNae!;)S ̫vo=Urڕ#H&s"MKl*5doߋT 89Sc?@ št_Ǽy{`YCD&QY.ޑ`#uN+7N:"%>~f`9qYЩh|L@ߔ!r.= f$/y P]||9 vh?iTzjSX._}wfOiZnH1M2/ :g?}2B.2 5Luf.A*.T 9`]bq`+AC tEV3GvЕ$z|~Lc{r3֨boY}͘1hdWsjFJLRD'a`ԧ 8Lޝpf=&pAwUZFcU3-XRV9BP,8F$(3S} BC Q121XsS,zlF4&{xB*FpڽŒ˙6TMguR]v{#F !%0xЂSE2 G P*ȱC|es?'>i<9kgz'Wd ,Sπ!tjף䶠[LS|đo,j2'4H+Z Opx$曇-*S†[:;%n?C G@aEXVTz_ OWBspkxΰ.ڧdYGMsoyl}rH6M'-56Y!;-.lp0,? e+H0q8kdpP^7u)@d< u13>t|Q+Û}$-L]ԓV?ve(% "$Bd#!gT{{nB5 #'|3 yRBpsx.:}uA%?J8ZS~PX,O^ERlHڛ趠n Q;m scY6rHhq϶ vmGDgddg腵K{n Z칮v@̠T89ڣN>GA<>1C!ѷWڀ{ڭB&6^D/YF;9O1"Sa rP>M%5Zf(0[蛅q.!]f^I$E ?Z)^) B`ϳGD6#@rZBuVVEfΗw4 ?"rgG";,~Sc)%;P̱asFk T"v !XyLeBKB5jDG@Ű3T,WHM]EL1˞hAzb6j5C!s8n?T$iylSQķJX:nn4QƜJQ1[]<LQ.k0!mA^KHqBʂ+b\=33%')~m #ijMm-s <+N VW ďZDDK *cUI1RSkX!9-NYFS&uIL3?oMvO M #rD)l21" ےfU5E6z9yu{ 0G@7rhаۘܺךVmB(0v6E}Ic6z6ɼSi~ ~l""0٪`mWekKp sf@YS2p0OJ$kl+> 1"`AHV!MTd!j7GqBrDq?`iSq!٧Y6M LIh58O딹)+ <6dK|6}">[nAK˜@G35@3 &x _ 8oݰ `M7R6J {kJ>6>Wz+(^H NPcotT_Ď0[5}Ag%P-*I2~%(v2x0Q_YqT1(f-ጃϯ_0ĦIyZ06(BOkDvJ^\q* ( HjN pk[iRnٺ#)źt*~Aߺ!3{A]δk,`J͂屍k^t_9,Xռp d`3)1Dj¿ #$潪O\5+-f㝋E2NUBRm}Ug D'XXh@|2$Sz;+xwe685tҁWgVY9u/x%Y 3Y yXysՅHtCnZ0 Jf1,"Q&ޅiP;]QdA./2R_yL% [l(!NlL6`M=(D!0woLW' 7sn(]}k5ʂ3;A0̽HS, h\l#nQ{cG 'sͤ}ԡ8,/iIRQ|IP`G`afR$hm}Y~ƌJΌtj VkzfƙM=kN9<{x]B?%30_Uw-(%̫7QN' ELMrJ7@ǨAA6PεjJoʀNFKrd)ޤ.w[Дʅ{ɔLх!gtQy\gl vz]qFiF`XblA{1Ŗ)aR^~^"+kEvMȋ_،_+v%8z\gKVVi{ r(EeA=J]*t@=C!(O:s2ĂED؞`rfn=r8 QIyujKƻ`?S^KQ6 5z JeA#78gI0%p4q0sO=d"N7RKo{atJpzOO)cŀxDB v[֬ɑR>2=Pp9ɸMDa›NpD}>SKms{.[R)SƘ R:D[V3m4!)}~cNJeهR7bW(y=E2&\Xj?/?#PKS<* ,#f]̹a1xNp@ӟQ V/TEn{>Y蔨thlUs<9]`E,zV r}v*z%Y2JZOuF^?x֨&uy庳f`r푏»Azd>wV@64ޱK%èpSw>/(UfG@5؛Ӊ8s+ ( tFml}vSF<җtr"!A.7CjɄ(HgdhF-iS0P% 2ʰK X׭]37)} rvf;D(ɍt\Md ^gЛ- #mZljw2?^ɕoxqTks :iQ:Cw> GJF9ĞGը ߲)L\;ݫuWn4%.6;-^i UyCpLϑMmga5_GG$ )ކ5 0[t;4~_Όs: L\H.5N OsǠloGI)")(Yk1e$! }ZXj #ع-Itk RS{+<"5!Ut.Q41ʐ-v:vki-HMd@nH4xh*j9npX~RN )V kQbw -Ꮙ"r%Mu5) 1@]{ǍzCXj|G:熴J<%W"#D.>n࿔ᑟG_4~7K_.ːT 'pq {t R'-9bpW~}Ȧ/)U4g\ &`O49џ ?6gӟICOzqiCe_H:^9ҽ\FvY r&5`S(Y0؋#55uUWm)@]}\v`Jk DMg'tj- '?QMPƒ.RWU *Ҏ.{׫LQYgR6T㙀&-/%sy[aSf2UX$f} bA 2rs-7wGw{,B@aWߦjGVZ[Y7ӶQDwrW.vʁ_WR60G |⃔{a,h1p-1̠S'aj!2B#dn_ U|zDd@?}DX+U0'{Ҷ?bͦd9u Bud*`{F %=\|+F~VHB&o,{o;UrT17RŤ^?#[9a'ltM*9Y747b(ʐ:AH[#Kğ{n"]mԅĿHW&Yg^!ʔ#Gj"Ǒj7kbr "\5u&,in;y0daU զI˳V=gz;W׉=`HJNJ<[3؀w:TPO2R%njڸoR0-et8+$/&Aw+6T #q[;␰%SῚ*!cH.$XҐ Nr*MI{M1~onM+u hZUnslɉ]*eGuI٢EL@.,P`Ӿ=ܧ{r%faᰪ.7՚+ۤ(ќYj b$Vzyߤ*3W=Dck6li 5ǺEJ&7g}?1Ogfj'Xv/<2nX`SW]v-ZـNi]wE;Ѝ1xz1mitxb+fN>A8[O2sIAJ]0/K4~Dm~D.p G*v`uxzkCn@Wa=&-Be;zsM@"'V@&Qf48 DE1S An|(bU> 6fU'U cKYb0/SH[1ҭTzI{0?p Î_g(Ű 5-& ¶F g%c#PGܑ}U& ෾$EA߂6~REnD4He-0#FN?-} #_jïoB}Ķ#TD7:`ҧ"9#T]+fH4WT!5ǡ {" ۫`v^3vc "|YTiT+:c{bf'KMLsY,,[r S׸($tAGH~\!˔$LS҉$οJ1p:3xEzoG*IO[)v+'vgmS/"cDp«.fl5&PNIl7 vl|g#mK,TyGѲ-JbǾfsƽvDef|ylYxWjl;ӿ oEu2m'm6 NJLPYsuZj`:d9./u*`oY,ȆUMSk:QP6CG X$WLhR?eNJk۫;{Hb/綔F*qἕedSO_{9 PpkM32 3G(.lQ+PJދt!s@Qj?H X_*Ct6=boPViG|yJ7ɝe` )oFk|>o`x/77܅ 8q;q8nlwBiCiHCdͫG-:krۂ]Z+)Hcl`|JX/6R__ rN_/om{gWi 'SK)ah q3S-3$lvfCVE;x"c&&0T'$Ps=̾?RzRr" 4vmS]٥o8M{M;Q,.mI&WC6C4L g;XȷXk;iOɽȆ9 bH :Q\q5y2Gab#)IjH;ĕ x.c{Ydtb Qh`Xm;./C"EЇ!ɶ]hQ!%3 !.X2<: 'lpG+R՝ćov%4HHbah*'c8,,FnBRy!qq6 .4Z= =I,v&WlAvHYt/۬ʍJݓHk;:ܹwuD8c 0`ײ٩ ?首.Ia|zTm+ȫk%8ŗW ߍHb,GK#XhUe3U 2E|٘/1z-ʬ;k27C. z==dI)A60+}ɏVe%$b fc^M(݊ШJWZ+2@2Bn9 ZkX켅E-Vt)7[ L؃*#}L!untNZ6߂%xB}ߥ&,A"SR'cEgC|aFD}ɢk.|׌ų$S@mjhV2ZM!MwhcG*_#jc ߓC/. *l{kn梈2獊Y'G}A^ :.a3KH*HNICUc+o}S|YK^RCDzsBُvDIsTYkkŀE1r`w2]@lӠoX֞Z'?,'0YBµEAgtnt5٣O䅶&*,G6l6.H[ọSVaBi,wA_k1ڦԐ#O ƒP&b3UK[9\R,2K}hQ mg q!ŨWt`Gq4ـyhr7?Y7Ԑ|aŐvJ׿m VLI3xǤ_0T,)p)(2ָyQA*@ZGB hsEA*B7rԨ;qE: X3*3Ibzvhn%d},ă7Tk K6l?0Ű\Pg=%'3kUj/v{y1$a'oLDžLNLXx3l>wACq6)*X u6Gp$`b2qQoG4{YB>J>zѻV'1꫘+pw-FMKھ.Nշo(?~U3F檱3=]H!UjG948c ПjrM;{ [kqPg?^4@oO:tObxbWj$RD4`i,\}nlt/7ȣf`2 lޖun3lP-k8M"Hm L(fo\868p׊ߛq(E#.vpaR;׻X MVLήײŌ=oQ5 ?9P-GЯyeʟ3Ƹ~7hiihd^M%ȹ 7BGtRJFaZgrhg[U?ξ KiǑv"MsĄ;ɶTV;2j:J*/F;X OAĘ;ӚәQ*t3BXKz? |F&H 84Gotf9.iTYb"rWU%Ӯ-f¤gC7N+QdhFJK ?f B_#uË_[$ÂfGհŞy``L?8S7(\4FW}䃸>R-ǯU7: >谧tf/)Ys]&4GyVlzGN5A٥g 4ǸPZR:Skr^h <&kN-1zZEFmg#T+D{*ҷCŇSgPx[Fį, O(/JY9bls:O| d|ҴO =, 2 3&~ CG(p3瀞/kӛ#rBr?;>Cא8q S-D}ǁz80gWucaP_O'[JɆgZ7l9 amG6NJ*d5_zƒ{~*7-F6Uڤq?+TLx44i<b/עˇ b*>1uTe7V>L?"[#1wNJ`cMCRg_%#ϙQ;[>5]B/$;u_M!G\j~,U2 #$@w ]Ňp0WkƆ*S sZa!A}t1a]yrA,0w oUH`9*3o{X\V`G^S\"[FÝ&U lj.L0Qwdrr$L=Ӝ`7+$õƝl4L9u<Q/wA%*w|X_R7Xl&|=4,^̳١TrÄhNQvܚ-I)unUxj>iZyD4\Rf"L'{8ƛ<||ýRkPbdnVT 8KjeFֵٱc|wZz[`7wb2&ꡘ&:xgpFзG \p% >eCGx*8䵈6ʩJpE/qpox6ͨAoɍ+p}b@&L԰_WjR 1oRqCIr\RN\gJYdjp$V/AbyIk\%*Oh~fsah95kU똌i!ayXt X;eCtߨYxc͹ɋ-fzB`%~LJ&hT0ƙ s^>LO/'̼L48{AZV|0_PijgEo<`qtߩż΢Sr!> Z^;}ޡe[%ZWuo>>@G;o; )wpѼzj][5Q;dBs1ltBcg4$E]f|`bOU:L |H)E6s3jY(΄ɋ5 wd as')tP30INhfa?W'h͕@8[hl sŋSXbNv^ &R-swM M"߉}S`zaB^,OQbĄMJSZJƊdZ^7.ٙxsUMԘߣ-i7ѷE 7*IJ)5NdpLWbwkop&a'CM ?ә856ƃϘi5K4*PteQVTqc^Q63K(z]F" (lbAVcz3\ &m~6e:\ڨJMMZ&8w2!i7W'0CJk!xn1x~~Ȃ\31Uᵷͽqh6\ʹ Z(UxxD3l?ENR0m D&XMrqaLn3 nx @>S@L7nIh C(l &чXl -^-߱8^-ES;_SB.'z@+ܠ\obF{oS}7ErSv%IB]-œ@L}qZ9}t}РМ>"dps Ra`]Qwr?Żo}(e&JG%/g{P!8ҝTrp4"c1^~EŘs &ر5SL6+UwXOz"|Y:3.ޛO} [o۷SB5&]ڟk*"'`kx%yAa6ș[=dL|_Gu\=7퇲6/?͝>KU!o_ݪ獔 u_ Ǚlc |2MO2 lI3vޟEuK#$ْ! pm:L !|ӓ}5iLJqv*Ȳ n^؋^nxZ{z$ U ,ۯ{~B;P]jC5croNH对oj{ԉP 74=ΑU?P|*ԩaGާB^":5frj " unY2Wį25l80㗑K 8^GF&^Ap qrd~cd3RƭjM0ڎmK8n)UMQk* CBFdA}~s+2A}R^bnZ sQ247!5`͇8l8wjx9P+ZX`q F~k~ƺb((ZG3)vRl)Zz3^WŎGz5E\-Jk]>Fgd(#AV \UPАZ,|։yʢ)G$$c_9muBs{f^oi|^S!͈Q2<\#W[MPXR3<$0Sk6(#}J޸D<\m%0{4!N uǙ|0*IE^YzQ71f28Nf l};ix-voc6#5'P|A?Iua DL:hB-l\ P3?'mnu/4=M.tUKbcc)u8*=y=׷KߗT}GjUy\ps[8AmNىk҄G= e`sXk&}7!i4+Wt58nIv-CO XݓP׹ x>DBVK5+z6bq?WgMԆ0d{paim~ ,ǐӅ `MZVAMWsH#z:B#P%G_qs8ZVՑ$Yjsҳ| ?I8@K;1G҂d1lAw*<WEb/4PVC7H%AtQ[gh S+fyuefv˝PK M0RvyR_9?JPV>2bT.|S՟c?:~v@g;ǂSݚ&Qv9,t'g/Ksi2֝c X**Ȭ|9dN>Wk'J`,8q9?mv/շжicKn@K`xp-,kzoVg.qǞY%wSiU8fN cî%n\% GVYV?,n.C?K(Kt }^l!qxVe&ӑ)vvl|"45{ a+j[4,6Is Zc4~ U>#H?"dlPb $z ru/>L@@6#!ɓe2wʁAB"X. 6 j% =}WrD4*]f!x[]hf>&2AǗSnb\dUGBbfU'AV=rBj!u73dHrp`愛B}g0ly|U D_!I7d2~qeJE㺹 SHcq߉ f"LեNv(௥Tj٫t@pڇKa_:H, xQ!`GmT[D=TGM0ؤCk 6êREknh8GŞGl!"-2߳YpXgR 6<ŵ?:;:BdEE6OJ.S$tN Pr1vu+p~9YJjjY#8#!QY<7X }M߂)Ip/p^(L,%;Pxo@O!E@F"6RbE1IHpudP?$N u*G8EPv H`pPiթE^_Wo% oYQ y!N9gZ֟|jo.icvщ:3ձWs9ʸۙfcu|:-B[1\<qǵ<)w;P8 (%lr @|dGǁ>W# ic`TMd;?%߄X \(}h1uU`0?^}bP+xǣT{]#W, wdKQJmʁgM}?RE~^サi@k[2S9]*!Y{p\\.;~}/]gٌK ѥ&(T]ǦP;Pr1,3ѻL^$xu'HP3#lo(QU2߬5W;E֜ %-@kNs0#_5|A9d[e&W-Atw^Xo$-2-ȩ;A%PWTs#좸(8Jpi MүzM.F1u#wH BQ2ɲ;"?~ZDh]03zHKF)UgT^gNW9A|9[Oqȋ3 t7)5Wgxo#aeܨSvK0 ;h;՝!/qX%[fK.QA75h LYv؜ ӃGQtGb+y "⓹VZ\2|#BN RSbf 2*ʄ4B2Y X׸>rJ f3%(LhK-3wU)ƌEVA߸0fpoc'6 vYRJ Bئ"k6^Lrv)9~SF o,wgFTr^0uv&<]yע9΀CI }ǤL] U6z (!/`cRp,8\qб -H1wR ZdHޕ~R \Z k2?}'~02Y)Tj8~iًM}BcU $ѳtXYZeT-Q2n[ߞ~ 5B5~Qan2j ~T6!Pً= H- , +Uϲz;wOL04a݋<]* FbUpK{B: LiDUuSB:H fHeXl`(,.RU<k_T[%X?doN /'7= n`gQO9JjYګ1JF& - rA + 9AHD6 ?ՈI1I|sVM[\o&pG \}tb߁#9χ=m~<ŷ'"_P_w_d"8 3 _}hcPFsU. "wX蘢d5MfNLoܖy9簺4=hp:.،R:kqD|UVtWg*xU=}%&ZP=C'lD3% 4"q&0o˸D+Z"kD QS/b5d$s ufl{ <03ll@JIlVMh} Z^d5B4`VPv@P]Db'MYB^V}'ˁĉ12Ζ[G>__޹]Z`8PKNzTb vaPjC:׉)ϩ{-%9E0@FF6/RG0h7w]0)، Yuꯎ&:Mƾ+ d3zlRW^H4Pe\>֐ؐt<1K?Ӹ_p0fE~]Bapcb7ҭ}fK$' Dġ@ hi>a'})Ez+Q*p=O+uq֧JFDVb]45[i!n&ߣÂq,QxwADXd hlw u7MzQRe\XMnaצQP=簇#6-W+qHg&Tza=|Ɏpc&8O 2A*O\YA=uʹ,TOVcl2ڕv^ ."fU<\hXg cn+ M4(a2>zA$9ZG\}]!Rș+vSGTF6^'2kNնIc_'#KHHN=G˭+qS.*U{y լ[?Fu6͠鏼(%IR6&ϫ㌲ـB7NguV rp{$7X?3L hO4=:\%~ݡI\TW-U |&p܎ ۭcWO! (]/'K}teFH!/\leE;2%TS^c1Q;iLX;kIF-@ bo;XOZd9h<5[U٬w}|fՔx{ۯ͉5d1fY}{8jNR샿}L"܌Rb^9c7̳2 oNT#/֨ͣ_a"ZS>0T0Q$lRσ$̇W=q"=C {Zz60fo]mS/M/w^1Upmspsf=һoS]#OV~Q!~>F1,ȧNmi)wKL X+zdWT?\SWiU-?KiЃ;J{ҞOI34,'V\**tJc3hwvs̩a}& z髡W&{!=ucIz9őyxf1 : pyPIT?lW %!3#W^':, 7օ+%dg RN$Y5wR⴦ dm;VdG\y&V18KFV >4s7wq#(Ɩ˼}רҌa@f0; ՐJvu&.(P0$dyx/7qvN\,RvŨdRh#KA g&Cg:qkfQ_|0. ҂8\Ô΄smQdZ %_<{']e t,lK_#ַ_9I[u(7Su (L͉k@$aБZq@{H'\y/8K`@֍:Ч'rpsei?B2mK4=b"Zj M1(@,ħF7}`Jn #z'|BCPGD/$.>h"*Y޾,{-^lISEnH=&"}03- MH&W˕o\ee͝.هLʷw]5wW9S|_)9/8XH&d NK* /0LTU)gCDXR'YTG1bT@ʨϊ,\lzaˢȴ%hK&vxn.f4<٣IQ&ڤ_eg]8^6>s7 d2N]U0ƞAtmt۝>.N=/FjailUzpMZw 1T,~ɲ3[yƹC_pe,RE i7Zpnh761{*@8j>_9w.Fdk7p)dw&Yq6wD(ozeו zpe slswQXRێa \160pu0^<)tn@TˋɔM7ôsFYiI\t.OZci 6z'ca}B仢B H/dguxDW3OG V:!HiJML96E@Lh91ݺYW\צ y| Dšr*54*22^n:3WEDk|_vq+ߕ0DWV\_76tEsZ`/w.vI#nWB^݇_؉y4u4' :cn䡨pR4"d\(vj' D%iRM3> A_7삋r3R L>|C;;_i~MǾ+%aYO`㑟<[}yw9c;ݍ@t-^]Ϝ=Zv#Dz"\!=J?**GvX2aFLƷں+j`;e3JN I!SRȶzwXy6,*fY8%]';ceE\˕62oNX.N1gbmZ;!Mv&Fa-8xQ7ѥ/_> V>W%vԱ}R0z`DlO ;. (Ci\[\z>⦻h6OZĔ(M.:;JnRIlPlmLTA<A(T3kyh9oP@qZADNv@{b~ tM5_̛xO`OySLs,E fF My=: LXȻi:|*Xeke5Xɝ%2li Pj_br%yN7 uʳfNus0rb&hU)8o~{Kmr$ tdIn#i~j 쭹%\is楘5d|* ŭTg 3B\rWo>TapqFDgU?ZN'*<'y!j@F::<&M#_V HnKe%ʇPm X(K|Hf?,u}ONcXDS\AWY.rn^BlY͏@/'.ĮR7}s@殱 Yy^Ώ?(PAJ*E'RZD/A~{Flm`wGcߺa9Gda*]x>yA_v(? 8|v~SP$Qm. o-*v@i4p)yv1#U>i4_BTu  8Yrt`P_X?*aZulerb9SP~,W]ɦiu@W6cV _ F% @3l'FhrZq`%%+|5GGQi{dMX ZK[`Q N@K HѾB\n=ĞɈj?(S%kd5/=NkT{\³dwxvտ6fP_mKNRZC `5j<Ǵ;ޣ80'_Fy5U.K-J+ɌA{)t VK]q0VO7HܒNcynvtn$`{ŵ?5loÕor8Y=~Hm̙rnv2\OCSe_P 'aަݞ>;T[=O1Ʉ ޽f3&?pc;4DG0;_h/Qpc3dHX;ne${feՄ @d&gPJڸ",Ez).w$:}*K8G0rߜ$/mH_2@C\_h#& <}XQ0ȘE`6V.?YJJש+~]GV‚wY w3.}H{)-wոBmd-C~1[BAUX urjԠr~i l=m&Ӟ efdt(m!`ٓAgC E,$}>jgze_~[o 'Fmgôrn8 oβ\:Q/)eNAhپ|u~)l 7a}$E'44`K˯-ye`h˷]mP Z{5G_Ԫ!dd'AxiÎ7d: (Ǎ̍@)(xb`S _;h[mO["s=0Ԓxځr< C/<I%tmk OҠ? ni``շ2z'IOR2."W0je26F(ՔZ¯]SZbHi{?V+&\[(/_2c ʙ+_ܱ]aw"ZqRcdx,s!'2 g;b2/[Q5Hiן%82&ހ-^G5QN?C%]GxTW ɣ@A 憯:>U d,R}T]~߼&0d`N>uFSG7A6iH%ֿՖWBg-"".[xhq,MPqDp *Msjl;m *]V<cCyIM@#R^irap@z"i N7=+pt,A=F;,,qin&|az@EY%l0t1Y n 'y (qcrd2sցL.}lZ!> 1S9U*j (r49G idIYO&kbVr'0]["X)am S ~"gy$/Mң*NUsP >c^F;Syw7G9T4.ɀN{EY}*éo%}w 7ٝ*{neBLj S۠)lx1~< p<=@XL)_ÌE< a@3=햟;boթ(V?Of9WAp1Z%?fD]C F˾awwd$X c2Z I8u @Đ&*y_)Cdg;UG%"rR1t6{-(GI+EAB?4T+3pQ&Wh9*~ ts\)-:u({D,q{EyЎIX>qtZ dp[6(<~\XR3D_< >ZZاĪ~颯|?_3* 88V0>&tAHƺDT0g.z*J@j88.]{+qN"h]"-U&t^OgF: )R0?wB+]46HLx qt\Y7aYG~g)|M97g T-! =N9 T{0{,b_t7v}8Rslxz:Jk9J!k!"ire[咯@~:!9"aL3ݽ9s5^ݡ, HQ,@u$!3 =kV]C~Ify׈ނc~\Ŝ]< dA&c=0[Pl?>p,a[rg,3ȑ'$餄S6mCڬ^ƨ$6܁J-<%ݦ<˲6M7暡jY\*z_(bZ 8i;@g;~]W@V"4Vy$<_mecoj9g}SWb]B乫rP夤:i_`N3Э/)BIÆtgDhyf7; akI@d^NuHA s@[g[{H8ӼRמ"0?=O< =m^/EneG 4,vZ QWz(!7t!Tm"vB&kJ|s:7o/=*q"ap"{ ʹ5Er4ࡼ#jL :DnCN΍-qد6ՠu% C 5]F"tu*Ǫ7ZEҟ.~$^]?lF`8 7 Jy.VDF<`lX { i|D Ӟ\dEل}:0*x[;q]ysǬqHG*얻,?t_4ZhV[XJR$Gқ}*Zߢjgh֩짾yAљS8nR/k[h)FV1r> p{IGB/zb4G:6:fVvIZ}\J8?rRPt:Lݩi&_W5;dH'L0y DoᐠT|Ox {,ښ_Nq⏷$p9inCn|].ƥ?A3B\ "O9h$WJ.Ǖw= J3P/T8Aj230k$yՖh^1|]qI1VnV$ޚ90t~](Ɍ2l}Dֱ+!A/<j÷a lQg-^SK:Ol"ݓ38aYܪ!xXps<;Cpf"21Sم~r*Z5Dn@%FZ%=c8G54D9Ւju;Hy[ ػ)Y˞3%B}gy"$a г:ZZ*N{t1Au0)ٮ?t0kAq "JaC ,zv4 ѴWy:@OR#@X&KHtQt ̐SZچOe*0$w܊1Tpa' Mu`3n6xA3FR;;4\ܳTNPLG+Q5~_;kL2z/Y8"%D>gZo> Nns_@R5 QEmFqm+W -x&j%k$_sfAh)N[` F|p`nPD"6o"ზ6"*iCv &} -H,%ڤK#wX7"2> 3n|'ܵrN'T:g)4Ov%rNnc+0^7`U9~. PANe8@fƗ[%~3U>^l<-G\%aXzHK򜼇w<Wk=78t=XRzRz3=5">5_4J[x|.8j/+Sܥ=-(͛GpEmrLB2vUpzIzBjV7^xL^_/wfA^AŢ+tr"%P?pѣ_gBs!Ɋ}>q[\}U^@D S͂+&YKZl{a` EUY4)Baui6oj\6;GøZ%X6 HXEȰ0rpVr)< +T8a&u2|73GUF,MV$pג:huB[S[00UN-RH|gB>klM3lAp"Pg-b6S"n//\A}[G'./C&BZ3N L /;Kb>Έ'xEz,Ѻ+(v$$ rie:wH>w J,\6ě[VB5D@wGI="AyoBX[+d R`~$V[0SLF7hF"3mOqm7EkX}y5'}%&yWus{T"b ][4QQH-aR^ `?V62ґi@t-oJ+LTkW`~t;Lfl6/OUSw_op=p^+^5S}&WvםI엶A%F c#r41n_:Ҥ'U!X㏽C 76flGjx蚋<Dz#RJU+J$TwH'Θ!2^7q`۟ C\F>nѼÑc/"+6qz3,3bĵ*R,mEAܴx"J& lGa6{2@;y m ?qW a/5n_Uqcl7nM!ͩ! :PkCN `m1 MbnU}ZdęQ*_D9̠DDujnVNC9mmn2mWsҵG6|} TkYEX 'z nU)QKv q1V/"ZYP p唸g0OIPZl}@UG*/R |TH ޞ Λp_#N}Kn>ctbV1vVj<,%"ZdbP:2\(C^!lFPYov=D3gEcp7һ,z/S&sk]z<. gF Pt"*yHsѠXYVοUSTYq5x⻭wɵ= PvA f[f0'B𮪾SNC 1l 9X䳳E+2$~Ƈ]3Fi"!l\ԷҺ4T*=H8t#P$QЕHF`ϺՍ"cAmOP.MJ3O +s{VדǬƓAjW&ôaN… Âm:Aor[U_}Љ&;Qґ Ҩ'!eR`؉vx`6X BlR\4oXN6u{ٶ@z-X 0qw~\ CFyAߛưTcE}h\XEK8/^(Xc/UT$鵝C-v`6l@%;3"hIb] FW uSϩ>\E|~<wGSmf1] T4ԗ1\$4f:ٍS"-t൐#G;哳:x)d8 |6E#[@#aUн$ IvLY`0 ɺYΒ 2{h̆;ZQBk~$Lx±y4f't 1[n-ۋj囃.NP@oD rtK2KLJa L%X"| jOQ@Of Fz]5>,q^ؐu**JY>I}w2xlE"kRݴ#FYibj \"fۂ 9Y9^s[-pQdSP^z]h|ܺCتvd"rv br ޏȟh-O4#2FTrk Jm_/@xn9ہYF (*qocD𾕐zրђ'G;[gX\~Yc3Kg%V3_B_E꣓.[%p&v42ЗIgx`5aɕ@Hq[oeMq1;6u~%oZZ=P RZBDBLȐts[ZLq F nxѭѤML`E(wUvi|LO&xs2Y2v֗^s>ڷF2TSHK1KlA4)جVi$8D)T[$c>Gӛ15)UMD 9'2 b2 =LY C1vC@L^{m\~4fVI>g-&CđܖOŁ'L'_O?xz; ڲ+.[Y]c&O;ѡC8CۄQ.=Jz+ 5?HnzE}a\m XԘ=yG+dU4輱rN0F_U\4?dSnY9֋`:9ic:'7oCcҷV8S[& *A}< 学F:ʇ ^nK]{HYI$PU,Ebd$&}.*L iKc/ǜZ”Gt]g3m}uvSܙ~hMj~L\3 \ZzRN:sRNZFOίudx*CU̴=ɟwO e'F) ˊWV&$!!m܆z>^LnA61 '# 1hE[UG߈J(TKEy*KC7zWM[;OƒbfK?%Uː#I3i{JPҔX yœJoXi{~ v odt$a5HI3k06 µE<)5)+or=\Ѐa`l5!uv4nd_B4pc *dY[)Jo b_LX %eo~̙`&֢L9Rv[#BJL_gRR4>`MB#T|\8Q7 L_VD2VffEgQ!jme`h$_wOi_݂L?qK0 w D˷ ᐵOFS$:ٵŐ 2>k@IL{}uh$ڌ<Ѐ:-5UU= wDEziB Icu2۴<)]!8@ڕbB6. E(Mt&Eyӓ؋D!7EdVH6F+}_;a>EK`J_AjsRԑxd7`Q*7 iK>H.>Tr/sdn̥7 #lO 4ʧ||F}~A7?1WЈ= |U;XYWsC%C\n@jl*M#sKjwX4u }e QgB;$ ݇ :NPwPWmR @'D9\r˽ Hక!qqυMX1Leqrc}v l "< W8fNs~|̫aV)]oٚܲ6Q\Fz% M#jnL._֭7Ǹ6 wc7@,g7 g]XZL(d Qw5WSCVƀxjaށp+ 9W#Rޛ>.mK8VXEgkٗgP\ﰴYZ[݉:نëWQ]z U Δ:^;>8Ɂ ߼3<[q:GHZ?}!N-[z5::{*<Ѯb˒V-u?bE h~S3@+&/<= _>{CZi^/mW6tt<#ihϠy?奃KuGw}nRk$ۆV@idqAh-rGx^#Yˆ҂Lr®i5A8uen൷G(b}>b0:=zb},1+;XV}ln'S8 =6 Q(Oa1 4װGzW9tEfG6Jtr㛔[xG4= QA3P6l87V˿[J cņֲ2jȸp/f. D>sڒrO_!d1 bo |mu_!xױ"$O=%>ZWgGt"#JeMp3 4Y5=)at!zIpE&Q9s`SRh'j[/3YоgW˥=ݼHV"o7ޘL[yDV޳k~Qţt\ 1|W6sGùv8EUv\:\#d(D zX˻a@gS9W2X]*='m36inF%*8B%Tϣ\MyT2 O}5 X,+_ΩHAvY)6}"Et_1`dpn)/a_> X)R6q]!b&-RR9dwd@f'|ɵ6]C9 [-cGrO?KƲ}VL-ʪ޾|+}I_E{`{L B9\l-|SA}  yik&q؄bB?? e Iۀ/!_ňOQ x {_&9|8浠^hi!pXEQs>6h0) :9K:bk< 0߄VJc6 #qRQCm4NeK;`{F*$)yr3Ѷ0Mf\k:YxvKH/x\)L;DR yڹUeBk( v>F&{Qg"]iJ워\jDžfLfF 5vd濝07Z._9Ne}.aS]W-HCY'8ѦIEhGw(J _99ӵ!d{b tChlMVJr3Tw`bLnfѥ ĉ_C# Z>1o'˵wz!yfV<#wPkgy&ÓB] w2k)etԦ"|΅=/ˠ*D}^|(#oV>>-aRuL/?&ͬ&4z÷YƲ |;AR`8gge ؀ ܷA;ku^ő8+&"b-ZKZ[fnkMӱ3 ptf ytj̀J)$+EjEc^6*[Ԍާ<:B8rBb}":Bz x% 86M$V-em1slmhAH݉S|^JjYlq\lRh)'DB<G 1Á5S[ԋrŅaSl`"EWܸJh{d<@~=U—dWwG^UZ\|8?{sg!㔑A]f3Ig#id,1`]Gk%!PR$RoQdV2o|I?HݛC(O~j>(-tAs2*CøaXu O' ’lXȣHyT ОV+g['Q[CN=7tbHnJXn1:VS5eXûx _dBv;Q.Sf~$_*jc߳9Z $VB0$-M{ \Dd<栦$\'az0Go[CX: <6wPƷR'ŌC zt}8ok} WuW&^UC]4 a XJNeM٣T]Ҟ X_o5VLD#sE`q=icA?#?8Euh|PBsì$rkt39Sg t>A#m}cڍf ԢT@J auo'JdNܣwC x&`MGx,"FU)Ld.j~3DUG ?=ɕK߅c~ӭA%g; qfRM7_f9`K}`<CF: ̜pXBUsK&C"mA NZzV09s[Jt#%ՕK`Wۚx,nj#J[r?hzYbPLQw\ac`$IJ|= w:OKp_T@ch&~AL CJg){WJ*)nG}ؽ }ЈQh 6Z474W1E@تOb- hH@ۙT(,I0*>rX?3DZ8hɼ| w #á_}j뼫iR.eC_x>nY~ 9jbf'23S_ 36}QA) kR, AK*ZSNF:gh!GZ3E- A:;T3y~B~V 8yu/V&ʅLNFivIKl;?aLsIHkt|(b"nw60쬿ԝE T;xs@];=81QU=m (ҥtNkiDaYgĘIN-|%'Z лU| F5p9@ Gю*6cDn;7X9U)P]1|0 Oǜe}bw!2{"<9k\0Og:W?95 %_LGŏ hAh HB:LT@Gh/W{DY3~43 9;Rhyεp%5[ߵ*> NU10<oed߄05NeձMQ#b9Tt{:A2uMP` |[V)U՚I7[3TguSH dE&E\_SO1glP(d0;pbgJ>[Ą7&l@h=rI_o@ό"oY h\iG{[<;Fm%^?Coi{ U , rLHZfd*d#j ^8%MCb$k}Ri6**=g*(ZIM・~Œ:v^iQ IlO]RƼDV~bnL*A'_|%GS (WOݍP"kӋC3CqpF1'wdvDn$(z@O]*24rFLAm)l?_'Np<0qEH$k^8Xzew*%4lx)uE]/1@;- lU 54b$^{v-.PӢ:s)qT͑E2yǡ%Q%ZoޝE2ij2W Aݜt^ #9r>PИ3_4dG#c> <+4~k9$aw=*:Y2<׸~]q>XtU~mLDA>v_XwX 0*>W6ESů&hN$@rr^j3vi~%y#i_YP7rBfD%b;6?Ǭ>!EtxRSbOz韾)~^CƄIf(yď?5pOޑ$&Noe OJSLlrlfo0&^jȸJl GSI| -u.ㄮwxGsF`i9 {i:N|>wH!s]yd si_$y q U6p^-L3ήiȎOTju?Od儒?қp[_X㼩oN.^# ! xm^Or@$.F.k+4#^#j~xS̀,$y! D}V#}W0h,Q?B6Q~BWXW~ݫbA7҈i+}$MX2]c*bˢa-T0>1O/C]:Ǝj7y[vin/czjs(XY,c kfg3+kifrGဧd9TksN癎pzS=i-J)F }`G 6I`Ѕz-zwCR>pӕ"X;\"T>GJQ1UG`W57=׺?߅D|^ /9$PiGj&r/- 0_N#q4:EA@?oa%Xme230G{q}/픦,mNuўq\4D_`B f6<`7D(Ug$em?xKHK> k\we]Q+K`g1ò<nHiIӕEփ/^^ `k^bYueo̘q ʐnltqiaoXI`>S늼FK'mȞq [ZBx9K7$. $XJD @!`EM'W ,&wA S։n "A) 5~aU5ω)spm2SXtKԷ9 h5N Rk%eoyzlyfYc 0X(*|vݼ>MR1`dRc }Epm|{CH[߉"KfQRX=ihE>BK,ٔ g*l௦xÁ,69)J~_}7嫱I>-C@x"+FkN r<z eb# y5RtQzx إP JWd [}Z1$Y}娶P 7]7Z坸p!'p~ YHK< T@E+QV$#s"j>>zvi߯lၛ;@: y+`'@a@f M!1[RP];,tkW;wF {ׅbu֝mgI>.6X۲ 7*!̘&^R 9iVg8ȓJ^&Y Q]^twqζYj rTw8!8,z3O h}W%2dF Z/:ڕ0TB젏MdD8Ăa7P1G.0 7R*~mS҅m\x(~6w"洈a q2t)>-/1߄4Q̦g|QqYZbDt?B={ר/ѽ&i.7 R˼mM*D@nmmB: j9=˥G5jł)؃%H> ʲXDؒ-3̺@+G-l?hfxv@& c gjCMrd{+P"C1y$e3fP&aK'& [z ݒobT; o2c4.]n ool%nXPaG$,z=aMDe8}W #3BK))n ̗"^w>a dDz@_ۡQ:ZW.ܥ@m8l.rg[t`J#n #=Aٮ5|RD:UCD j Q5A,1c`JnvoārQhmøݜ y$|YBXX[2mvi阑\`Z.ZIB~O;A }]hgȥT z1v F ښKV`Q*Pixu͕*p_O/t"t)ϾPpLHX /.T^FO~6USPV_ 3KH3 k~nN!4L (%fN&zdKΡUT7Wo&[:$|eI~&`yT@Y1v|&%=aqfm.!:P;?EU)뎙B67Fg VZ[] Gn\W n~T0/Z(EjJ<)DH}fQR̹e_޺$:'G _1q%xEoP<"gwNV>/ ּ[٨FF%+O_{C 'ajHn慖t='oHEhDq~:2ם?)3l(/ 1m( s0[@ll $sK vIQnK>KqJ]B~pg Eي>+5?V~yQ EY0qեB^a&oFrGr93j3&`6l?yTٖy]t>=o)^[nJH^,NN8gIT40+*'d|=vL̯v#8PHkP3qEPxedNnsvxM.5R<~֐f|\^n%Ciil/ +2UKCT3vF5%$Y.Vj[" DL/} @VS- DQ~FmV6>H0ջ !-ieZŴ+l+8D!|\=lr䞙Ď`_辻V񃲒-7:B%_C߷,='aTE_7׀:n-@X>\ OxT_9W9Ujw|x@yͷvfH ;!=\F oGq~E%\`<Д\2/='!hIϹNGMoAZSۭogj""6` Y26n71 H$;u"'-!_.p"14am_>OЛ)_Z4,!oS L3)q%^DyF~N~^&`C04݁;w,+dXH%^?"c!DrZJW|ɀIBOS hXk&hDq?$v7>a%\}K#=[3mhͭshK̦mF]x{}'31q2#+̦ 0b`fFCM>Nv$=y HrPuֱ VsDt}6U e{"{mmx~FXYlAזzqR%Ěe+ t,I \.Q؛#>MeU./SԐ6K9V84Dd ꖍKTUεӼe/:{bS gUAۀV`YݞSCbop_<_4c j 6$….}IWB!0Ech~ʾё7d'9U)(sFF^DIΠ6]߈h4OG jj-A[.2XB8=DbZˮuekgCfb KTC"@POw" r9O27T#cx*{sL5\q}kQ`[xŌ R8>Zs^+bK=Yv¿GcCUdcyœ?^>K4kV x Zі]4ٱbR,GK:'O-x +ɐ,%xɎtʒa9nv!8݋գ (n=vFi˟p< bS&P%|y'G|➔pĀz˯\Ejݪ5&]vgx#^G9Zd&UTuW=e x ;h:cOs(> lhQ̌zj|sSޱƲpր0ʣWvb1rO9iB}a+([ktomI&PZ䭹LůY"+_ܿԮsf^?ɛKZ`*PjME7d0<16~ϫ֦ # mgA j>'6,M v"{Q,T򞙷 IMG`{Sjf4R =)E.5xܪ]qRBV q.RAf}CR?8\ N}ōWף:.1w v2XlC^]MGN8> F↶(kAj1XV`"d {~b |trUI4Śv*Bq ӂЛ-b.$ɷdƪ]՟INAHTYB A2{TC TdÚԱ)($;?ϊ?l*Bo6~oW^xa8)TE'Xn:$ {ve?H9D/hE{7t@?5(s7 `͸N \/}bzXGmdQy:qC',yWPI_|mUJo"_y!=*zqbl]`50 c̡u)ӕ0'աxe x~}O۟Dz){4>Р^7``2V̂H;`S %h|BM6(bG4Ҭk\џf֤* i1xe0{9̢Kg02fJ27ÓO|B1K -[~ΉFZUEŔ[<Ֆ6,$w0+7}.AOe|H H+Ac%3:<KpM)V}o⪛bEIєlCܒ( ff/7!c $֠㙊Y2^7J KnCb{@ 73'` b{UŐ:HY#q:JdJͦȖ3 aݯv3g}U:aJ$3A IW5IҗIKG+JMb_#3y?Gh[ hUM7¤zR+XvUA=bpb<q(;y_ZZ &)! ;qVV >G"YPJq\AkwL Ƅ4MR,^0{&p-(X}OǪP]Ыl6Y;vm4l*a):.R& ߍ0PԄ K0&KNYa:&)kSXt.]v@WMcYM|mcp@- BZI+oi(J8tqxA7 #$nhh5n/>?z3/3^5 'X)}pg:G"p*nR@弌mEmq|am | b0#z p[O,r2)ۂ__B&nOY+M ,%G*pX򺬰EO"r-և1M䘇1@ 3k %+g뢯:"V♌ixAȣ1D뇼2kRd)h [e3Ҏ5Wxya}X"RXMۧ rl#xʉyP}7sxhˢh?+8j0AjYAxԪiVFCP$Mn½B}&*x~wHFgyc9k/L)W|Fh{wDU1Dm.|ݹNqQTZ@}%gPoVϐah(ymo_$I%fW/$"8MUG;=IbzF&\H@X=X~.NM \𯆉)uAҪ>]<J4ۛ(с fD,1]Nc}w! J{<;]*B(l^2O7N!M}5Fj!lO (Kaziuu hwr oyoy;nz,$<0~y8/f9xv>ĥP!fq+9+}$$$߼,z{˧کF'HpS.Ԙ6c*$ݻ4+\)6FϝWqYas d7 gSƯ3b )>҇M$A=ɉ]d)-8KIŖ XR9`B-k !yV&=z#OC:?pϘ`y?Eg?0&UGb&[5,= ?"{!ZG܅٪۲UˀBxVƜZ\+xq8@+hX&j|kp.eK~X"P9IngKυd]f+Q$8"!k0Wu>贡w# W'AS-&n&,  vl|0Xpa柠/)_d#A_^f2~cYm4 ygwEMM 7h[WUyy|Ih!2^דU]1!tp1[5y|~|ҮOd:/)xnjتd3k9;. bZ>Dd'd56.S<9ӏbK '*-GIZ2brcYi  1jkdHspпҟhlXX:}lfjxܱfv:]B ݛRi>ز/`V+)jBBawҁ\$Z 2˙G&/w0ы9tN#60 sXݖKI*ENnfF65d3:(QL݀0KD_yVOYQyˈ93 ] .R)pAbnD9]Nv !E۩ҊDk3+8񑚂X90{\ E哂/31hWp΃-6Zk3fE5 v]Fc{KwEP~2zO'1i܁ 7Et6=b녯~ƵKcVFܣ?L4%6?|+\sxqNwP%;RØb3_JJ]D<jΛY;>F4%h81ui&nF)[-QmA`݊^]!TDbX57 ]myU,hx@I+Q5 A\|?21'l}VJ/d!(?K^+ ۡjruY՘4lb-F&0`3(dOfD1?m6L`hTb2NTƿK$$ȟh^*,!KbUnp[b&oDĂ<TUi J¢)ƴ5t_f~L&HljٵCMж//SNx,P6 ٸkE)2mv+pÈA8 Wk(%H:z(q}+>Aɟ{]`U kv $־]AyfX"40c]`@z=7v_75JI/5*J1ʹ|6-|`5[דǒo'"'v *g(A+ k-m>@݆ԀPn4ⳏl$mYB ?7=(\4L kP<G?Q;UA&OkeH߽"KLbZȢprC/Y {;){tpM?mSGb^pQ (;~B^Lj$i(3HSA"XneQ6aɥ%/6(!r+2X_>_0&pAx `WW!D\"l>' $!,=_զdyʞTd . 7\G>Ýs,اDf,lx'LdX ׏ à@A%hHr"/m%k^LMmvP)nNiTbFVN!XW}[Vי$s>[ȝ/jL_2$/WY'-TGMMYXE|Es̷jX#k0ˎ8谚W"YxXٝ-Ef ӷmQYڑf!]z|>B8,T @; kvwo(^z[sJ'B=rd$CQ''+~uܛ\y'w>^XH]*?n8"E)"Uhj*bv6gߑU_5p;QMDݙ־duZ:zh_͇+)Qa50 뮎KKjx3jȱ4[Rp?]dhzDJ<\Y^@ѿVxW*n*-2m=V6' jU-Zj_NjV c/,zD>yZܮECl\0|^#^quw}]6Ĵᵜl N{K8OCi?-J*Z:>y^Vr ,j]C6ʊ v_BSyS_P*Q-R 9G_}ޒaiwO^&t-С>@PJ6 bo}Ԑ@OP:4ܞ#{O9&ZE#%5SLWoUԩazclWTGݞ1~PwG}ݱL@d28Tj8hr}ǽ3 uJY.ndv1T()>$=bFuXu f gS?JB@!:Z9L('kgA 8I8_Xs朙h<^=~}KRjR?uuWrfEP^}%.5tPhe_ƀNO{ձ8{g  j_?65#y#buLm/Go3c~:xPzaj̱Z272*Pmi~\[\0gl*NĈӵ)޳~Tk*\w`c&ː P3%nuz4ʠ^uLmr&(.үHnC_-L]kZ,ʼ94QUAذ|Hϸbs[Z{5>=x^Ӈ:NCc|Ee ɥh΄L,IzIrN)qOi]9sThd*P/O} Zl>=;߼ o%5Yʃ6h`X8La/;]+C=K2~[ 6fJ mVֶ\B!i}F<>mN¿L j"FqV16T>ezG|> IA3ҍNt)1JՐ/8ZXr&ε#W-ҋy{3,,D¹I룈J SL%%KuJ˹Dgbc:jǬoәG9޺' ,u2\s-Sm]Ł˞QJ,<(jQ[Q҅kB}K_;q~uδ]3]jw%{MHVD[5>q^] thM:rBmc8#|G_::.L6UXƾI i}fn I< 4y=k2ޝx?֮U\ZZ42uU ӌPgTƥR.Gx)q?mɼgM=d ]^#O%g'Y@EzyNLxJ h{.( <L2r=<Sqqkrq`E>0Cďs*AeYC=+,9 Oj;'(Fa= %9!ha,JZc##wHa_,=!,? tqW )9&юd;1\P!\VjňVHMy\PHYկGMq#Aڳߠ7phH-ˠp-:PhmjEQ+qUzGf5Lm&i/h:ѻq9Q^(V1krwyƂǍz{(5 6rvq""e2纼#4+nqAS 8 Q#N|xQ9 n`-POB JD-(GrZIwwN"K'[e8r>Pe4a%f4]D.2ym4oj;Bb/0BAkxKee %bJ-]ДW~E2=6?Qo`N߰Tdņ泚Qο5r `hxl< ND/ѨF$h9i럩nS3[H>.V> h)-$xxz\Q{Ȥ0~t 94XLKI7aRh{2`|d) :e.ׅ rB]n1D8\Mt\K)FN%nނZ$蜾 0\=biG- XzI;L{jLkM..maynMW 6kdsQ\9/rDisI¡Ӿ--[.0=l)zfMnck5 |5 AugNen0Mcnh@,.Zs;@?Ǫc E/Qg~l{N7wA2Ήe>NΛbQA?{W} ;"61A$eq ;܊[UⅩ/MY^}4ɘw`˘^UL+ et 00q \4uMd8+%\ agE}='BU.Oc ތD{AgxߙziR\o =[6η4WAf^\trcѣðEɰ>;Д%1ti8=t.c`g2hB lYm* 3|yGp`>|.JÛ?6|xh$o9bGwYqޛa}Σ>Q^oMg50B+ ܯ T60eR &SQE⃼nqud馈qNb9N$dêiۖBRJ>qjOS}`"KMtO'TZQ!Ԡ++yAw*W"$d8Y}YFk ƹ|[a?;еWLP,x3l~DJE s[ͦ.?'ź†pip3zUqr]ITd ^HK$Y"p],{(N~Sl4e`а8Is3%__[ʢ5@H5_*.!])J Z1X_qݸ j|38uAOF_Hj1El-h&WytT& yha쯭7gGWtV=H}1KEq&eSg0{ACT $z)tr@xLΌ*'/ۏ|Q-YQI{+f v~MoUl6DLw}LHճ`{  c|̍%{p0!"Ch lG)R^M7S6,n()3k׸SP<)#4 lGT$ЙhJBMf*{d vpy9ow6Ռ{bMftV olٗ)`P}It ̄DbPIwPOhX^WUd8dȱ%̶:itܟ7nya_t{A0|3d:Ѻ&1EO]oV3X S5!j{@;J#ڂl'PM!)ٸ}_0c9,o$C! {:%aL\k1x{F` 4oB'ٿ-lT@݃)cGTjĠ4m^v;[ѾKŅwW Lᢽ{h" @(-Ӽ$v䝧Gքu;" xPd >1U% kB#[1:c;[=44f34.,U~ N)Q ՃlsrBohfZ3]B9nV7\-vi_ Dw x[&CZѫ 9_{[8K! kNٯ}6v@yE݄Nm:|pnNFqb㛓AnZ?ySӸntXUb 9Z$癶ȁ!@OMW3nۊ } B>˘*BuoZyJed$J5~P^X ?>oyhaSV&Lb}OV|P=U#U:Y: [.tK!.V\fMa#v8g_֍<'P$n]1I ;t99}|Mi[ 'ﮡܢvp=>" NxI; y7m+6xݷ+ c%f Ϗɑ?%&mm:sI\K,x}Z7%zR/ 9XJ1PBZiD}租vkCu&(hsn!uz._ Jr,.eoK9մPdc÷\߱w;so],HqvJl6^S\CcʝSEC/0xt,0L@8\r̀'HNYM눊d 1rdN'ݳ|OF[y>~ZQZZ5'E7 uFwHX.IuK-'828)/u$}cSIYsu㩸6y"2F'F/+v'6) O[ }b Ow@A^ @"qP㑰r$_ֿrdX"zaΓ= cB6HֻKw{61vop b1KWk[LgrHbe1e|bTl`;xw5o/>aI JRBܿT >lk7B Gst/ =n3e@l/fGҜ8caEaBM 8vOP-jk|t}x}2W Fa8_ֆ|g.*”sc U(L(W$ukȟL}鶜 c LZ ROoPk%3=!Э xVW*nNթ`gUU5Nk ءˎ=<{U4ݘ/NEwq]] _N׿-ݦiueRϊKU<4PqsOС*@iK06P{Q!CP(hV43B[TJ2Xs40Ls(Q7+(mˀCm$u3phͥmTW&ϒ9UJcPշ&rE-n!}d &mSH_E9┢e*hڗZ0qgs߹_ݷc ]9B#+ ZcX 0 dYһ^WO'舓wl.ʡpQq̍ ax?gV~P79{K !Ξ<}VU*Mgx6xWaCR|CtDa+fBPl"=0Bvv2+tϷji[ xRrHqWwXCÝ\stP*&5m <$z"+~'Ͷ;įI3=l{W4)^k5ԎG|"?{~}-͂|~FËJ[h/d Z^ֈ*a!Myƕ"_S]~n9b'|e3юY|D mZ_|.8參DL~y*lgwr^ *w_W$?Q^CҧsK9dQ6UrQOXF{^gޒpxzsYu0Fty*YOi g,ûSW.GA[(\î=0O_ᔨ}a@bjBҔLi 2|;ӠsʰyodFFn)ON@JQXzW)C΅kVE,Nm}.(OkR\ʏ9/cn1, U L}uݠ}жɩ)Z0p fgF0\vIz趯.O3p^unmz#V$!~E&V;_ a~}nf$Y31=ġ(Y3xgmal_{%8f&ӻ&U}4Ο*0QugL\*iP v#/~L֏*DώK{e(8:E_v+`pa3ked[RXKzks I6JWO,=BmYIi@(dΊJЯr aT@ {cUsKs4ZqN+WdZ喟.+ zV9L:1="yًB/krBW#/杇d?a犻h#o_pSƕ;e%xZ^#Ar-`gEYu({4<<쮢# `,#J vzgݜC8ym SwR_(g -HVw25W1YVQU[8dP+"JXі7)Bvh|wV&ںk6.ƶ؝!;`@ cqP][=Җ`*v5K,Mj҈ qW2es[Dsxn{iZ!Gsyٽ:EГ^͋4Pߔv'0O|[l6eoZ{W:ؤQһ?!%bv%K+uͺsLw!,c'0k2+#i~M vp:%}{%a,{[7P(<.dm4\1Wvz-wIn n!lHp[ ~G nRXX|UD= a]ܭO_nS A0b2Vu |~H6v)*ZAapZY# SrںXMwuZNu l=B&$V=,d-Å/\jGH:{}:2ԄO2 l%W)O 3r,Yu$/Y+CD@  6o6fy`|hĪU%$ "͉.)w uOple=h>MO)[FƇl{%yE@o'يB )N @m8Koם_{_IyɼjA;G׶JUC Toωud~*'J/x\gڤ)} 5=& :<5Lk^j 4,]0ͺZ^kĹ*SѳF:G+/R^AlIE2aJ\¢Z/M׌\5laz]a~+q'UCiN_(Z3<:Kd2mByuu ВT w?U;u )h`xV؜^Z[fJL"0l>qu%H13_SerG-BmfD#[ -4to͠L/3L^{4`ud2BF'LMtpMOGouP;:W ⋚k!|w!U 1k8gvEf9޲^L ) 2ǂ{ow^BXG3&HhasQf!=Vxgm33Sc 4ڎhĔ[ÚqCfxok7pZM$Iv2+r.k`C=Sǡ^y ǚ<4H4Y+S.4J5pIPD5:y[&T΄9%HiC te]+jH3ҝ~cX w]2YsBSżFI#h+٬(0Tnb o=8޷HۂZG SfcY!6ahvMPY$C9 a(cܢzZglHEڣ2,1N_u\K1=]ufV.U" 9S6Wl%K56vݗnd<&NkevMtަQ*%g;–@q/BTR ش(!lgM:(LR^%v4,νzJaDjߥ)x=Gx&bt6 <Љo-0դPzlڃӌSA~f: &9 U=r$sxy`(?Y証+WZ.0ZvxIt|ՋJ>p1ܛf4:aI6ewk3r{- -hhh_)hy+wurPz5j SXT>&uMD԰J~_gRu5P[(~E5 J`lk1N@2K'C}6D8UG= ։JZ ֭tt#&)o,d@ bemډA*pZ  F;KҚ&1l+&%|Rh-mGzs'%:MWrZ*.hQdLЗ)r]G A qŠF2˫ onu;u$5ߘm\;誙>6jfVtu!^Dz*1QW(v\SnsxCuO,mRNp>aLXg\o[ЬKv='.b}u4UcbcN!60 ̜;U#uxJ(n=05!>Dm^Ai-aQ +F0_FY'Gb` DQ@$w{%%"vh ?-FgInMY=4m&Bbyڳ;y-Ѓ^cQxb-a,&EbK5yCڅ`G;~qĶ/螥SUNʦjo,D9MZoFO@)3B:n^z7~WzTb ճ&@nsbtﱷ̪l&:_s Q+䉞 kdw8\2,t\cԛPU | 1y=Ӌ7Bh ,7U̶o(6O"=-27‰kJW8, rc5Q9/((j]˔ze%Р(C٨f K0ipdC1u ʲpk;,Tj,Wh ذ -Mf:._>aS2tmΊߘ _ejF<5P!Qmw"K#3KXFO.]J.ghVgi Y܍sw}Fz ~.N9o$.cT?~h^ս< {dvYa4(<@ F=5hf@c67Fۯ.T[Q#+]) *?iTA])~<E`H%@DlF@~=* :p ΂R\۶ށ}]g_B=4hgo1J̧jZH8&[S/-*:k67#'g$K[ġ\HzLYF/3΅8|W|:e%/6ݧO@% 6Z1Pj)bJ``0S&zCC.m,9K Lx nܜK&Ad~y !پfQBRBc5.˰]،KwE)^Apa[[epU pOS>D?dl-гwkGB~QUi*1Vxk2&G 0Be\m=E2ő ]z>_XfZhX[|5BJ؎xo/[Vgt7\U[g*kSB􉜒EY=Ida;ЯbD(Y 54&QZYX< F"odf LMH OMG`ShSY U rR`Xiˏ1-Ƕ1憥lݲUzUI+v bpQp.>[ _8aEX]vovL^-تbzA`jm e %RRv=l8 AE{K-'xxx$hW\qTRkLq@VUchV85H^ǺE`Xj q-k雉2'xHu,רDJ!Qsvf<jk[c#!7-n򞳷! |vϺ.hy\t ubI}YߑAUts|bOr u_]k|hÄlw}}? fyi꺝c\ ;foBiޖ[RѩZQǒe5[nuVe1 " Z)}Moo8!D `}'. 3 J L$^Kѭ~ϥ(_+ T/M/tA\2v!]ޛ$b|nd]8lY8dn瓛P.!sJ Id_3.t˿K`_|? Br0p)Fp_sd"a2B]1UAq"XѼ;\NJ4&h!ZB0]M ><FH&]S; yl;M[& #Įʈ6딑CUWr_XQ"Gb8"ՖDLf)M¼Y;Ox?(CHx0R"=[nF/$ AHtk˪].͚t9MKsv^ M]Dp俨?}YI,!>ɘkbW ;ހ͵JB/8W.Yi@zTۻgx׆3p_+FTpƠq{>2]2" &f|3EUI)g>)6_">bCLE[)TQ7 |V򮢙Hw_ñ煛;4qT,4̬XĭvHP 5r&#~@MVc00@^u.nJZ^{w&`?tEitFF(t`62wv71ٰ&+gr W6<;E63#'$g $$$ UƷͿ#` 5r wc!.UٝED%7?|PQ.(#,^R ai/9h 9K=P≙̘,aܯOP6jXQw3NL5e #nrZYy,H6Rm%4\'f83%Pw X>Uzk]x~ZuMn F;jʻ$xE)Ӗ-RU9y T)Hq%93 յU Oi55^F9^1A'\yljRx.ϛZݭ9ͭP]8!9^CgsC6I~y_\S׋ ȵi_2F6$jP~l7R?.݉Hz@1?1(r0 l3Ό `k9 k\@ek^%\@8tvxT2''C.=g'1703v£E>r@}~Z:>& =$/w_޶2Fެ^N6y0:-v+{ Qnҟ3"I?U:./IdM=9hp'I|WNOr`BCgE C7pqq^u F[e1OP"'Ս,˩™_!іz삽=W`"Wo^a]223A #^Du[|d2(<'R m6hCIctZt]͓,gR*(hٴ[r$|@ W*D+shOS vޤ{e߇1+3i1q꼦᳄!42J$@2.[K }6Bb)rk4XD⏕"$"WWPzjQ˦"Ed=wV>,&. HyP {ju$3Vm? cVc.0~'1<_1WB2tã9[Z^T~ژcZt؋Ɲ]87jyjdAe\էvh[]$3+*8SdkI۴ a|w5(dzEmU$KN{S'*Nʽxɦ5x{HRl V[ u㿖7.l-gƻ:ixӗ[1r_3((v8.F̆|0]TvDI<_鬝̇,Q&7w:"`gX՛NKH9@ WTnuwD<Ђ6?YŃptk_0x "iߑ;+s+E"9lm9 [fƅ\o^:}8=]嫠˱bP6S6#lnKĀB_w"d.|yT6K'xW0^A\t\|¨:kԉCy\?8~ 7G?ڦ2fh˻ru,Q|>i/lD<w ?VIDb: ]$`qP y=;iͲv}@\@ENߍ{ +3+wa!h+iŃTFVJOlݿ"= 9hF@A3ҳ>[F3:3F &ڶoJYROٕVph̖3Kd]0zA/Lr:ysyyo)K#p D%|X0U9?}⤢+Yzs!ȍ0Oٲ`5C}FAN5.e>_kIMv믗S D,q3YѶB5*ZwqneP#/Q+$vK]k,mu9yZj_+;ӳGsJvZHiqޓrIEdMhb"8u!(A- *|Ky6MuFԖg˾5W]Q~`FƗQu 2y|cl/#EB&y}.Xuy2K q?7!Ek]H΃3Ly!|֚&&'=ՋcZ}^ӈpށhdy) |t.ºy8M{)&#A,ҜՀqE|~/UZhyRRٟFՁ>P\ Zaυb]4̒ոG'J=E ,=}|c.~nesfq(Eֽ> X]@i іir? >,㓿м͏ުРXY  \Ng>_Pt=]y^ _UTEUQzj} v؛TRn<[/Jlr1P)Lٞgȼ*!\K0*~Ք?H$ fXWx#|;P?Xg]ey}NH9+~OR!g5ټ?L|_aZ\nQOςTKC "ft. eIXߟ zTٷ72ʹ֋?|0 )V;;#ayj$A,bN&^#[G)0v6#[Ǧ\WnFC1b mL1WFЙ()j% ѐ@xߗ40U~/ .BsIr"楮cqbaSB O ax!N gfϵMl_ iYZ;@jL*,m4HKKڄPzHz@h=I ]E]Lť| +[m sl5 f0n 42seArx=i~SS{QhLN‡Φ?mY[1$uuB2JqemF|-"F+w=-X_-`)`d[yÍپ 4ģwSm\[#^H v^|zjԬ'FNp;RyPMmm1Qe g@>woa6pSԑg&$K`g:vTL]<֮"sS/z|=%5!-u(Lz:}:24uM|/XX8 ja47ZHkHK;C;yv8Os>#vaC?/?S Ė,LE5[d=gbbG.ţ j_H!Ĝ'jX sH--"BRfp_ ZnM7A Mt$:TT hυ蠾UY_cb6.硁Ҕ M{N{ 3YmSR- l4Tէll`h2 \x{1>\]{ϋZJw!mͤ'9;BjSD!R:+EН2_ULWU䮙XJ߮/xWx0Ø&JQ`AK/OӲ +vi5G|LT#t$^>LJϒL X}L̜wiIxQ8YEX\\seJsMZ=?ʨS[ZU^TPzgLwzKlV1{3]/g7 D9z)\*ErYty2GnH /J8&{N3R]ʳ$7+< 5fIN`Mv dfz-g,&#­9"ψ];陁)-sR}>tǜ͟=`MqiuFT &,&-:: ,K9ՙ7s䨔5Y?t[SS)d%98Ld_]+A.q xaA>cKqgԞȖV'|'|Iv ]_9)W"jcX VNe]:ݹA %q18oFZ$9LKZ6' nJO}&aϿU {OhRժIL*=Io.*ەi"Ro[=&IQ ? q4eM|D8~ו8>bT;=6eFU bTX@?Wwc}=Yk݁QIfo^VӤ[At:4Kfbq0ٔ!IAO3@{,=1{LU t<` Dil/mmgQ(_Ǯ.틺X(yDZ5ۋK3B zxZq;zzR>͖e-1I 7"^0kz>]6W 1J M/\Vd5%PsKF ޻IF+X7z?3[ m(9Xj<|8, nvj'Suu-Ma3и^ɔxAw-nO{9q]-8mCP.uWS7_t?yix"of~%%6!YEdwD!6 iflƄVUvu(XFN"xj, RqK ZGm^F)ޖRCsan'TGjZwF OZP8%[2>BJeRã; !*gf\$n#*N%PbZtlhM09fiLlZK|_@3+05@9Uug3. y 6ziPF[ѪF{֔4<͍i;N_ѿLsbBfnqF-v*e!߷b L4Mٽ I#NJhsוm~_rDTAt ' _(_Z-ԳW@šC(.hn2~M$A^Ajm\BDT0w5 KE!̩8+ LcLgtA~!4ڌ)*6'V~udg (:%ڻ>vl_~ygxSڅLzclR}Tf漵3[|-&JW##|D+[|1f㵍qI%zƾV0f!a&T\ҤȞ?BO3{G̃$D&0ss#0/%T 視8qD6TjhH4q=eirA=oxF.. $SN X%ӆZX,. gW?b,ɺƈī"^xPx,슸A&OŚ9]U9fv z'[s)(j%19HMEdEI) AD o0@áIC|rKkrԨ60K8)݋M%0:κނ=KT"Suv M{vǹիWML>}|\(mGl|N6iA<,C !g*.ݯf8Ȁ]]#D1);xF;EulEq܉zb" ^b1?QRS?[9mA5h+R=cCEA7S8Gb#L yQ,Qx-=6 Ft LJ"ö6[ujcÑ=:BZ"%@h50@PqukJϤ[mP~_]Sz7bJzM6k k:&>eBUWmm(H xxZ8[hŀCRa',CXBz,zwKf,quczSFF^յ'ך|x=l+$@{ۑ"_Sw`&O-j)I|#-]e\ㇲIAA}ڷRu!d4MQKt7)*#ãj 1wVTۏuaj߃0zDlcnB%%\!…_%kzr':6lrW>/,cu̷urJ1,&K&<$vW0Aq?Q5i(pU*6E?Z) tfǶv^.r~0Ai&AC3Ny<ڕ~$:OQ!kkZ^{F5s=O wY(Jc!Rw@$]}$X4RTJ#Py`ےpio76@3.c^'/>k5fKHVQHJm H [NB_ݻp̫˓*n3|X,JF_Ko~39k7yp~Nl|f /%-T Z! ub4F\WKtE/ȤbA-a"R l 1Fle[ ";o4/6+bA;!g% $1p|NG-&[PÆIK G9ʄ!xQ Luc {3Fv[ mfܑ9mhOѩ+2K%9?_4"Z1)'B6BwՕ6,E̴l+31'eJ>Z{r3QTl5 Rp} jX[O,N tԜ7Z~%oiUnoq "R6Z&mCL)Xk@N$ݧw9 h.2v=maT{Yk.B[9qQ݁FsϚ,4_ijM݃&|kNg573"lV fVX]τLN"'vgoBOJk@r)wi>Ab}R)9zqkbPoݜ?+a%p!.3O}4()̯޽JػEoBЃ=D9G45 =.ʛmWhOG4&2TP i3?!pwu 2u0@歉hߟk9~55cjD}cNbme1iQa'!;EeQv/!VjJ7gD_)@?'pw;g!]XraKI:'daȾC>o!g3T&r}.r_) J+ᆚ x LдXj0V.9"KQ)|e>*}MՙKXItVRO( _ܽ:;$آ#ͺRb5}hsk7wJUhDMpN%sO(dN:Ǘqmj@<(L;}Ǿ,OТ(_Ub*i]vI%weE``cZSo/ _Ҡ'#NDsJfc1KgD".lô/1]7QrKھ 7r6]nrb;ʨn粊D% ~r&٤]Yp"ɼ2([2U?ЍtCtHvf8V78Dw!0!yavawn5DnByWw/Q51, IǾ旍RO]k jz(;`GZ)7}f #/ M}P m\pV㌰~5eX7Ց}~w^[~$P ?ժ%"8Æ Xa|KŁ J8d7`sh?󩷻pgƢP;Gqp8f? ][iȣC_A_ϊG!86.^GYƼuqTfUl+#G5ž w7aFDk~@H"9)]e\u=z9) C.a^WM q`~Z/rpPt;T^Ֆ.j^g x? dҙ&1i̜O o鱧+іIc>\p0&>,H$qϴ>~c\8Ԇ817$Wxnn2SY%[bʬy4e\Zظi{U|OCu t,gb1^Ճ*lbt-A1ŇeMQ˷##v a!Sv -ړR[dY=fZ կO^'7ܰa S^ 1JBx ]ZπաeIDjyH|s3jA9^FWo< AaGteZ$_Fv{0HM'*:yF)!h1}}wq? a/ʤi&>֎mr-+io@y/Zz$hnaVԶ\9jBkA·ǽ@|y̱N[88]v2 :l#(6Kth/2X/}ZgZ`T:ƽ+tR2Qq*?TF˱miFxl&SH*$A߷GAM#/9;:PT ;,y3O˦ЊqAA }7UF,?QȍW5OUSi$6wTj*0;i䧫RWZ _"LzGnO4~>f'ynSL̾$}ǁJ6WcYqA{4 LmtTHK3 *f]r|1c3,.16JD .NO+,􎔿MKi!, c#Ka̶xy|S[YaPf~qR턢3tMlft:?Q*^"?_Ux 9,VZÜ^9|n8ԻCY2U vz2~VK.wڡNm[J wnHUKO370^̭ d"d3RāpujrSW~ld].>)j.B%g2;ЀK}|Ua;R:⹣A?n. +dexЗ@7ˆ/XppQLx4@\Q%: eQon=_h2[nr1RK֖.HTǯ;ӧkuw4ch^LeNM86{2.ٔz0:J~r &RZqY1W]=ec| A_[/PXs[cO\{1kW Cߝ˔cu(SyZ1S=pWk!Z#88[A M8i}3zK82ftlI Q|} tJ ֆ\?LQʾ`@+lqy8RJLA؞} Ӳa%%]+h\ӆkH@3MJWN%'S+ea|1 ܬP\k`<[hJ8~zXћx50ews,K(|wXs-u9K֢ %ptޑs2#\_8ifNX1R䘤.!7kD_F}OȂ`@D㉮3m wi̙"lX2 n(!'`WU) U ߊ{@*A:\͔:ȠX侹WAf6HP?\%1 UC4e"mH9JNP ,5g?n|~*8ǚ&d׽,wE4&MwDfơVcf/hEA;f# !tlhWL4(r=\tʯ ! _{gۇDdDP@!ʎrXTO4РCܛ B!šLE_RH$ά+BeyW0f}PmZ#vf_ˡ;Qn aZ9d~#}JQ9<?]C U^.GYpI߿9Йq@2 p\ٯA~%gӫsttLLq@Loˏ27aTLs s~^/:vqqO]O՗=h 3͍Kcɺ;$#ꕞr493ط1%;FzǾx#lb[u^uFaۙD+B?y&VD~spii/Y!~'8e+؇M˿a]IO㕐ط E%*+&cbR@tz cՁR!ٍ葓T[NQzbG魳4zTrKj.НWO^0Wd;ڕBqMMRອB &$$:1/{BXFNA& 0^XYwG)JZKs?;SRj;:% [2]4:ga ˘/vz&#fDKb kfB&205ː-]ge!Tf'8Q狍fe`.>f9Zo#.Rb"\a5=;ZDq|<|xw=ۜi/ 9=_/Jr%~I!eaUG׌#Kz(ux1f4lG7u)8rP|M q}- %A9]D[G~ny m@!f'`t:n4a|wqWCC% En1z酑YAڸT  9KSs1$ڼ3,+I tU|Nδfpo $rWI4jGk9I.W.v^sqy 5ƠP^>L[ TϹkoZJveFfy1= Ko}B%|,߳І/"=:ji{hh+`yݍؼgk5Q9p!iНxΟ:R%چ wX _Gɔz4&G7OBH,=p*@ D~ujfFet%.vH JտSl…^̉1+!Nm"i;>OtHw.o*2}9 gНT1$0a?)C01{4&]/h ebr"P)HEƒU^խjfiڸz;Ɗ_ #: r-(,ho6@pm{ B@[;-t\K郛~7#Yg,?:[v˅sHSOȘ-'[_drQ;h)=(\_.P)GY8-T/EɠqkF5iVTSJ}bƭ=1n\%?-Gávs@{<@({ꀝȞKIخ%pu;?m4"!NnV=l*/aR#hQrs,01 .6FV/Z;r鞣~băR$9;Ӥ9m?i9VAK0cy!_L#7bc kް_@X-ihSL8:/ ԃnԂvcrKVOhfM/\몷qL$50(J#pLf骙 FL*sDI&a‘XO%vhqs !UЁTBĶ 7vWN-LՉ>`Phɫc>!*ظXA,N!k7u*S&Uo1ܜa8]t.Uo0i*D6@`ߘ 59RqF_T]Q9OAyg4rG!gچ."RymeԧK/q-FԌ)U3$%#~-5!fzރhǼgqۂzv?3w:u\U;0#;<4*mb*if .:ڡa\&(YN0Xnen9$M +CËD$SӱJQagOTK( "m.QRH!mXJ`Oء|96c&t{,iѩڱXIn0mŒWcԘ\q>@裯UI#-r(3^y73M(ͮ%4>&o]:vD)?BUce!5X+4HCa:+w$+nO<ٱ8nKZ}"JE_atP{ +h5W3`Vw kL΄ 83l֡8;S&jrb`Q>, wq%qTG 8$؂\< ['hAsεVGUuGV R9>2{gȑG0勅B=R\Kh2WB6ąKIhoN9S&M"z<\b~X2_ot?")w \}BA/fbFp=&S.$ATvNKٗXe3G30߹D>N*8jきB6E+eec/YD2<|P({Hh< 0D}U^&q1$eP&Ù  84pNP79AU8=OP1_W8 C\`j]mLvE/C\U٨/|ni=|~ؒf́]5"a+Riztl$<[KAB<͓ =anLD6`+mj } 8|n.$POc{ֿ7e2?qle %t=^^8t-R <r1ϡ`U˓OUe#cU4/\cONB6yvC, W`@@Y*nQ_>'ayJ+%ZK^ۢ3xLCӆ!PٶoM6zi(d5 +Hȹv3W۩D\>Oo:~KP;b;*^%$0*nވg.C'ngLxk#@6FB$zgMY  ukqN7-y8LbSP_V;?tq ɡYƮu^LM Bl{j` +*,̓4[iJ{V4ҙ(y8Å |hsV6gW)t"eЎݟi-t5|cK{aM(zp;r.[H>@u5:$n-aQƿwoDH3ʿs6#W""N,x-7$G#t3nFqFđyWoZ<_"8(3 f]Z?qq̘`-s]:HT= ˨6Y@PkϚ Ss'ԞRc:ₚL1m` ?Z)bPUGv/sbά&YƼ щhVN L`5g;^sr?: ѨFnruOL=(Snɮ倳{ԓ4m_EV\D``\ }n_?w$D5/k_h4k5bs F 9vr`hQXn3_YrvT#,ڨW.^ ~g`$ Up !źħ?2A^ٙyȫ]銨0L"9ä !*^MZ:Pyg'ؚh:2ݭ-h0wZ߷+LtF˯AqL&Bʄ?9|aMKRޚo{;R4Y{,1bLIp❨soG T-qwV L'*g"N*>6z%DCA֑rCG_(x&$t65a0-%Q)ۭURLf  B"QvUMy X?'Í$vbk `: j@P o JƄgS|MEFV=l[!;`OGq}iā63 \9) ? ;l*k dCƑ }uT]xM`{vC57=DkYSKMGZNew+/$ o @b_US5ōF GBذ0#cJ;M֩JH/7ΩhavH1Lv†mWYOAW[j߉_w[x*0+ER"nT]Lʐ*go7q k;;8A:ywO` bR/_uM&eODjnW70;ix4QGUCGC n饳tg,.f?Z+}W"5\V3nSZ^00Mzry``d Z\ -Ne[;RoH@+ {7I=ՁCA% 7$xJτs|[_¤~h"򎟱td7H{V2c liˢXv $mHr'ki929 x$rUQ-I v a-yx]];9Pu`I4[D&.GM258kfC6W#L_lT b$7?OEHTcP{S;u&Wɜ./dy8Hpua$O9Bu>uNECmcNnNRWgvJ/f]b@ɞ1G| -T+Mc[x])#mohİuR6DvTQy, s[-a|s ->dhG%˗' |m~!)2D x_?r Ԡn-/TXՌhZ;J"r1.V*r#J~ -z)x%@T1^t'(۵m7Oѭu}w=VvVcկ3HVx6lk|!Yxq5(ڑ?oPg_,p'&&$.Y\\2{N`&$&DP@z&cSn=+ꥡ/s( jX;HO Bƃ{jw:~ofx'k) 胊}1! L<$X1OIءI-+r2š^D-yH^̘" 3D}*׶NJŏ)Wc[=A(ݙ@sgwN ~ umX cCuSaIyQ>TR@+ZRGKiPa=;ٌxn!62YI,7 zG7%+y Y;z74F?g.:n~t<$e=Ddh0< '97ScS4LH90!8z:$;rI,]͛gQŏ_B^G ,~EfL(<դ]pG(}^JLbmyOvG/~[БݵU^Փ+K=Ӓ|o8$xWf"5gj ?nSDB4}jA9hrՓW11\͜s/^tU4͂U 4r;#,v%ٝP^LܳaVT (0*>CDY&Vj PTn-GkE)|&\o?)kF"LLhgB! b˳ЧVXbjwSuE> vy`-U@\Er]K jZ*մ|4 3F5φ']utk%,Nx69M"xsI[8Sˋ`)+-6s,Flt (rs&d顿J|f:f8JTwjy3x w nxC:JE v?^lگf}.sabVj}OsNa)[Vk,.]WkRA'A} נ{9 !t߻*"PIZZˤn9N]f $[ N#↌"u_%YC46 ?d^zڊܶ@ ->w >fZ1J7چpS[qxsJȇG'弬Ԛ{q-̹I]^qx.v`QH*Y2FǹQO}oRz=r`EY=Ng5]VE6V4bNmeB+oU;7!,J}m!;|)Ha"?G?8x<;2 O*O`2?~&9A4ӓs7ҿ5r݋ @ʮ {2TZtn81ț rz?丌Z^L7Y /aF = 㢲c+-yCߌ*Y]4aZ.p#@qa?.~K^CN# W-ʟ_c~/(1|U82up>.%wiq8Ȥj=V >OKz)½gP#.I/TdYR[=wBtN>wNj/ Rz j$`4x #Las 6Z3 DT{E,YjY+ pc -萒*'Fj:*ƒ@ב&;*M! RFtujhV!baFu 3'U+}'ljCO2:+CL3J0cRHaԺOc=@4搹$[1w2int?~0]qTh"sNVIZ,jVNzV9@dZZxC:5gFg&Rf:L&Iy$(zB[`rI6TP˰k!b=8B1Qf\mm9^$` 4X_$ \V_m 3fNRoPI%g;d=X9v\x`:[; cJ)s7MD-Z2xlS-Cs s7xd:m)ߪ,_35^7Y5Hʘ651c[?NJdvʒ'-b@yNi])X H^(˩SRsl̘4 FIg[).Sѹ>NZ:.~3\H%Q(X\wR2j``Q/bOa wZ?YG.PEg#rڞBCzzEY8 {f˶D-#W)uʀhQl}-ym 렫"J>whl_j/ҨȔwfOPκKq%"6(:_A>^f!B5RD+*OS+AbE`jœ-DnMcM.bq}̒ϩ'j?uF=p8^ʃ+,j0h)e.q{-Nma<ƭ`g@‹B4K-rt՝8d *ƒ*5;.$xRqޘi ZfNBjWRRk|U|\w3?}w D|7 GkPv5-/qkx]?ilGxFd63Jg2uBi- [/x Hl ^>lquG{ r4 x/PS V:tȻO~4b,eE*3+mu(8*DTi-nwФʻ˞t0;AzplA,V>>mz#y[}qgW -&½Ӟq}nHYoߢ>.:{MC.5^<n1 1PaE8}ptT\ E 6K5Yqu@p'!Ub(R'VMb(]"VH+,sMqWPv#oVC 7Օ0xـ:y{tfb>ateW)gWN/v6*m8H>\Kr/@SN y0vh޸$v21s \fr9ބMl ㌋كZh1>Xb^Ʀ`[0eEV'E\ۆkש{@Of,߫SY^Nbz J 7D5i9 mY<Ԙ%{*-NzP"S|COJM0N.}y +j<<=!oMAA#ʕ*I_)'RDnM,`#/Sd~P<+M M s"Go7YJg#Mj$aCBQh%x%}}iʞbx?K)=O啎˝IRf`v+->m4hwTv-\* )C+dw&FۖJ22_'LJ_&x 7KSig<MwQ|%,Sl,} OIõh3pǷ N-6~̅.иE7 > :SkkrUclT7Is?%6GtA(Mz2% >Wx5ɝ,H;*4d=-ƥuKg/!9&=nL#ֲѵ;ut ͏4x]g1N7p {qBmC~AAF8Ы!`ķ+eq(evu!*?Ih瓺iUcsGF@0U);* @$-;XSHtl` fPpC7(|ыNݰhJs (׽knj  eh텹 2/;>!`dj~DHA(cy (jP<ϟ.acv\ _P.E.ѸpoZANx]ld3\sq ҳ ? U}^n8s݌y aӮx{ȘjPt=؎Wv 2C#}DGJe͟0?t=ͱ|*qMܫ\ /Ni T(ryY:>CHN$UKE046GH0d݄ !9œݯ}6Ɋ6z!A,fS_SrL׾8\q]UZb+1w4kΏ"mmɅMN&BS^((WjJ:{iCWx-x LZS#;v+HaʟV!b?Vk($Ok|cL-EO2erjN]QsB2 \޿StSnN{r2,S~ackv|j8̱퍈spJ*DOٳt*V%gLGY_7Տ'PߣRr[-pYbMj]TCnk;" )QG!э_)SP=fL|y MW$O*]r xUn S(~8fq!|̃fB Q-ve_N;p"0M_%\l;OOmyFuJō{*xj`z!&R2<< $__ "F7Ӟ'<"\J(;8Hi/1ϓ͕;hSɯ,#q5˛?IT)gL'R<[yjJYf.sRS $(fIqA{,2YlcRڠ HX8OqnnJGT2WpD ruO3^ad8kkC3rpNw1j* vUV4T-'^LLLOZC)1?+r ݓ܉'vC1 4W@+R q_QoJs{sr Q5 PUyBνACGcfP6wʞ,ḿGDY䫻uTHڮ(D>qqvթ)Df鄰16=20#R\)^:9f&Tzuf'ffW3D3$R)RL {!R%9k{!~sX!-7C[xS^thfέ:CU4+ ¦nI/m;7~_J3͋/5#)ȵ]d$hI^w4ԳR{fԠ" {hu6)T_egQIXOM[oVYe "Ľ: FvK[O-WP,,܎y@K8/2/:w^="+*ģVS FU7i.F(H)d/Ӂh5X; SIJjK~ͯH!W4g1( '3lrԽGz",=tmq@:)hmJ Ml*܊иdAfT 1]bHZlM:5L2 Eɛ=P[ðe#f]ǩ7 N)@X!4_z%#ԇvlob LE%>nOd'qkX&P ""dSh HRzЕ5ai[v'?9PtkDi .DMhUo4&j)ͅjcYM 4#vAJh_#Δ4H W6:H[߳3^Bd-o,&`{ EPaC}7Gϼ>1e!I}VwDJ:V⣞׹?V Mܮњg'b3-,Q1*;IɿnۏXٟe6SkZTYcX$C߁W/"]@̝Ar;iOZ.q!#'m-IcͺxVł^k[ŷpʣQ~;5ud]eMH[7UHծMU2b' "yRU_]H[^nU8GBMN23 N-W`:M g/eڞUz t?Y7Q@dn塸# @%ΙOaVਓf_L/%4{zOޔeIBK,xi<ԩ:P?VxI)[Kg[GЩ%&ԒB nNi6.8*m㍸ylPVVv[yK;ʜMXu\$=jk^x ֫o4SU"Iy5d[47h0}Bԉ~?̵] &Jh}' +|/Õ'LnVwsgׁ_I}B,͋-ҏE xw?%C~=gSbԐrEbiIxVka%Yb!Qf"~LoU_@5kwZp5={"XzQ@J|-l`y$`o_]9˸ Z8Vr~,j܏dOZR@"#wsbamdAa}!tٕy & J^BZtL= ^~;h>1PzNFU4ĺkz[tf9$36`#2]Y{=FJ]ji dS: ~B 9+" 2 fr?}TvcW&n:*4r HBMqĦZIO ܢH}WU8ߟ$9+偦R(l&Voz6L/yHaD7'WւcOw(V jAꞷ:h0呂kS_~|xqvʍXr<AAI{cIe0nUL'Jug ofN k )|s)[.ϑ,7OW܎t=ͭ)[d‡OחT>>vU mՁMe1Ic]?˧dZR2ޭ(B}s0 cS"C3xXU&2{ UYB2]ěv/2MӓG;ԢWY0zl">{<]'ڵ~E:|w+ ~`1V,ΈOl@r-Juu!Rt}2u!ͩܫmY|)O+v!qMPEZSA%u~6*k7G@D5Z_f eTFQXڽfo) !9<xU=|׫nyeH D:`XavEѩɱk9&p *AbSiҭ_-mцݦ ԖEx9d`~&F1睧ה|^in*ɼNGwSU%i[d"JĕAyZQh=l0/O,hb<<kR!{@eC=;TuOC<rSV+zyffYSBXB5j .a"쭡gyp \)ts*藠ηH ʆ|GF irӛMr>aquJP!`ƞWVLg+1)P=_;(1{DžN*9_WٱTw|Z}85.m56! (A#t9h^f KTI{YxiCV~u{ZWx"y< !/r,.y:pu#u-O, ?;9]]]M`V48#C4(rI;]@ej฻C$XXjg)w#sOԞb2pU+B8bV R-9Ӊ~yd+78YN3%Dzܶ#y@ jKh^̈ ;mK,'G,]b#sZ3jjJf?0-jcqQ##/ҕjr_.o) 0Ǭ {49V]PNp~$lӷclT~Ɉitbŗ5z1u!] ]yzB}ЧvdG$O5KNhչz F_<8V\;Mu_Š^a52 GJ.PN jCgw̅:eV8OcHC&,~@i߫W9w"AA~٘<[=(,Xc ^o>"f@OkFkBWB:bf年! CuOwﲲ3uN8˵ %w1Mʨ)e_&2B4dNCW.Z! S8r: l6\P aUc ߙ<2qtBW=;H9RfE`3n]p'#qL5FDk )A ؔ]5uk>*ϫAfҭ7dj)s7,!>JIgQrɸш H'Ã/z_ 8{W5do,6Yk=s!Hl#>EؒTL!Ɯ2xO;'UPL4X}uF:TR1%Y@IÝ@;5K͞"sK^ +Ĺu Rl&~Ll/Jn՛Eܸgǫ;d^H?Qk)] iK1t''d?{ Q49u4FCA]g"U>KrR> Ts4@j&hZi,ó?<\TPQ7%h6ZI 둉+[ vXIp2R?3\/1ł(LlB[/ s~F8gKCY(T,Me춿wAόULӑm"\g%>sH]aтz;3W2XTPu<_hiU߽-WiU.$ "\ RF;b8J2Nik2!H35!@zu*v E%YXB 1LJY6_tnΑ&;rDK&,ҥb@ܠRMVB G0>U9~ n+ELmKm$e}h;`\{a+3чB`~ug1pD4D(T2bS6mU;Qx,n92mC5P!>*dXuN"![V]?~!瓥l,Z  ٷ_~7aYVY3s>G&{I>kEEUMڔH k|9,v914k[#1#s>Y{uXv/EB? fqosŴh/N$)ۏj&,<xL9QU!&yBŀtmGa,fHFV:0xr֨R.RN!}1^Wk꿁]1#>JS㠪m#Mi_§ŐÚEbBe^`сjPĻݕ'z>viB`j)^l/א{Śbpy\cT:T$TL]_/< 'Id:$)O21Lcq{OmjPJr{.Z}'bw;f4&x-]7dFeV)U$9է& zC&6t=-V 'Xnq嫷4.{lG`]={aU"mdn+F3{'9gop?/~c`laEOLc¿vd&c%y#${{2]L?+g E3!E}5)ΞT޿Fϟ?J%hYb)uZ#T3ḲpsR5A2(jdM/;4QI`L='Qv=6{V4&L"f%] $.ze%z8wڟS  +,KTq-_"ҁx9 7ݴrθ؈g5~f0]2RNBʕT2 t~RG]r !7R1h35 y2&}W++h>֟6 lCJ,ef7O+K^dMϮ1@XX)ÛԺžYZ2 Ğt,~h!&eW[o6Ӈ* hzOǏ쪲^=pO]K)c t?/#u Y<X`[mLϊN;*M]Gwׄd!w%USg6v B*A9]+XF SS!pqc 23,'pQm❫ȷFX5-tbGW 0Q]?ցVZ*2l]x@xa 8] tR6inyY5 ^{9{s#^t.N{AJ56;VIxë S{<y_ TzusRQry\r= hB|Til5lvq!;^oӦ: { {x)ocT&QQ\pyCڝ4K3 H'𨧗b+*͕eBUOR-2;YK>ke4,$$1oǛL昨`H P~\5*2APWߪa t|`s[%S#m A,,IjwW1_F2IA2ʻ-Z~:^{OɧjRbjJs9 v QqV;s L_L2e\(@mbj]s8+}slKChx-**\Uf[?N?5-/aؗ2֧F\^x6r Fuo8\;+LN 3NJܫxĽg !>th<`P|kf{4/Edg]r;ж?߄^Qcɻ@\w?>ԇ]6}^qӦ;tR/Q2j2+!(Dp[uԔX:a q@wD;,E FBt31]\eu/7%5"s>]+Τ#7~u/5+MPg`L=K(mlhmMї;yTo@?,Tn;$i1"~HцRVSGq. Q?n3UI%pЌ -{q=#ۮKG - fC\fĬoVG&x(4dHBL |f<3,X5U (BȝxX 0oWtX4ȸc2W[-? % *Z]G #Bo-? TM! 1Z5&>LB01d^O D\j&"S«۫8yD 5Rm3}t,Tl@u'rTF_NK߷pU1oI }].Etz܎KKt2|)6E =gZh- p;{au*zHP!5qTWCP|2l;aC-exF {p.iNΨ$;(>թq; g˚)1")jSn"jvav2-V@ɅT~oenDS'p0 1ܝ6hF*D^o֛tnm(oLKḧ.U'B om}o>͓/,0+M5;EYRYL5U]>Aa $SʝE`RDT-c_PV 2c^^`]z-5]=-0#Է%M(XFqT"S EoB\_3bB`Ѽٰ;I,ـ"leD@wjEA]Nu`e*Љ>(.־K믤F% V))T z*i9ܒD,?8ܐw!v9Fd$E7M+B#w'qƊɮѫ]ދuv"~?$.jk_]hB[\CFKٖS0Ь谗=JUeyM#G6qktRY]G}i D 76wwbٸ⏴$dʑ~'vס娆2R8GAypBĚِĉ򅓻e6><;yRYmb2di|s;T^I^_DS;x-K#N.|mTg n[%=R$׀ ?ÍC'`6{,hXVR_ǀTZܡWm[!Cxx) c72g/RgyM6 raO?&yVzzDnn5 >ʂ5B:کbL[) 59tMw_( k:_1 jlBML HFU&e/GˠҐwyBybyUKu#y umMR1t UidM9jYQS?ʓ7 E(ק-[4ȭݱ6ҴmD78$WSz~|ʙȪi%IT#s=,n @5K\~'?]B.X;&^p609BZý )9;W}d״'8>V,JS.6$mͺ]t(M|TC!k18),wȖFYh;NL؄4 #^< &8R`R<+wp"KD \j鋉+`zdwY ʨ)S[ӋodxPQMBG1NGۃgqߵY{ Bssh33-P~/0o 4g{/j3m}c?̫w>;AP/9s]l dޥsaGv%8K|\iSҨ";Yq\M(Ifh_=| pOwXH^!J=~S(ȣNe8%bNf@crgBGXd 8x14L*}CX"'jw)tR|̂K>NB KS7IZGD'G"Cn}zXw%& -i K"s:.t˄=c16awXMIm4;s˲nʩ,h욮{%7!E`\{D "RLƟz1c@Ƥ"^ދt[ܱ4R'a^/ã\݆l[f%mgA[ˎ4p$" taśJ+vq\Ȑ81Z?>NF2JGH D'/뮸CP0d\0ۃ5qAǹZj~KSPQE> [ŕXki 2{}$snIlۆ4z379N^C-[okGb/6Hע/Cx БVv`xVccfsaz@ÄO&kϔ _Ӌ\NTj%srϮ:& (ةB<ʬǻB -Y.qU8L`gL"ƒWUSWPGc޻Z $C֋"8T,l/T9'? =~>Oj#bH6&XшxC 2mDh >3G?g3t/jO%D/@,NQ [Ҭz .!j~`% %n_12vM|.ez~@ 5BsSt+u8 =rHҭCy7["\%ܶe*z X}o&zn!hZ\=2[Goǥ <a[2#\E J0Ja&Yk\Ԟx CD52NjPD"q!AQ~Fm݈2}:m,ukhr۳j! zs}8 8MwAaXJa!ʗV;+]C,׾͹}CunVYiEm+mG*.iQ;)tCϹgiS:cd͇[T[|]Ɏ+ "O~:)d8g֖p|堦+L4Xfs9A w=[j'/"]N ~@TTlԨa\DY {gzU)lfKb]^Z @JVlbung謹घݣ~Ԗ|68lf'ቋIy̷ ~oPESaX z*Quʩo Eekh~\j/o qj' H [ڡc*lbϮ;@|^ ~1t]n?ap~|[)78lHK%9x{Ȼ&tE 4 dYta\S.2 @L(A!J[Ln.o-6Nb^H ~h`а )Mʎc7x#GU#. H?3N9j&P+r2,߸w5WQ|@ԛ asb"-ڴ10fS'K r{Rо F3W|Y'J >kTYṰmm|ɆBv"jT<ΰxwvyms A?ϫ%F+iL'K+S\ѸA9  +YOsFx+F˒#ܐym"x"1U9&~nAjX8)A@mMiTUT*fɥ3TEc_dkժw?2Qy`Pn|iS_'(.[F1{F,&J0Das~T<$KDylI?9. $enkIyDjF,WC7cBdHD'3JoQz<̘0W{K5{7z{#0v/a[%nqD⤡okPD{(h6̶u:TGz}Z2RTi˨|7ՎhlZLۼjs; PwJ.hF|]JNO 0vQBY?Ӝmop; v4q[0g#;&sfzoJ0"u9^5æp۫) ޕX-R):" ɂzZ]6y/ B }CW~'C3MET;XXX@ Zm^ 0պKLj-W Β0PpN~ο+Xօ=YX8X,C a,zr)ԃx޳GrzO2BnLJ=gcjv}#; 8 ׼edQ'Z]X ;"6~g < kI7ʙQ[],JX,hm[Ѩ"Rfvw-e am RJ t) G? -3!%! <5}gUdWDCZ^dOxn;}6jI;oX.:B+}KИ(t?GynF4ޚm_kd~TYʣMR8iݔʢ*b 5\kjиz؜H}@4.`Rܬ`(@6&4taj{[G"mQWQ],vLxhmD降D<ָ[׆֩Г) ^+Cm"[0%gliv~P08c^B{ G%#[>a ޘqWm) xi*X"cPPֹ8}E^c7cjSA11b}֥Wۋk1 e)9FNE!fTc^"L)aYI&Yj(gK !6MQ铪%VTR3vˊĦU>t` sGC >1:q߅ȟg}sk`qn.o)I I߲AޯI,*% U" y^ g9:#[U\>: l$'@Η=u)iYy/a~o2dG uywZ uXM2!~A$p5ᲛL'u5 *3A\.0IK^f-wyջqʋbbf3‚Ea{#+'s,Hcd2ߝ `hU&ݻ$DkK#ac>,{]58"QB>GC9{)%cOjP17E&关3D1v sMW `dؕ-1.T` :#vy5*^Z8|^ b LԡBng$y|-&AtCn}#ap2H3n[|!v֫U2r?FFFJ+(QoE=o0M&?Qڔc=ۤv$M!@F#B>tA 9/2NQO-F S?7{ [^ frt֌\m_ &$xB37h*; 1:o~Ō↍V=2+BӃ2<"f'THdj }$ _Nd'kb?$ o-y]0r!%꿸&aV:[5"Z-9C^)ίlk?Bi'*qf#Y8")\x*wҦɛشClq֗OX¡MQSp'7}~Fat9FEvKrk0 ؚacUl 4/^(9MsIEYZzJv%5@sY{(D-k9~ ͕$ =$nD>AqW %.Wʡ,؂8fgDZ6zt J7"*,Ϻ bfS:+x/m#d1F;RZ{HUi=\TgqQOmm[8T%TxM1 S2xpҤ`h=|B1!-=j䬉C颜YCd5x,{sPNpi ߷]ngb (rItb|G4G&&oY_RKGSmP L`컓ݏ~petT%8+) ,,'r5e0BR4LՕOA;*sK(_ i`#(*~wxFD;UbCMh۔j*} vdFSz6"X+5%I! ۜJwT&CAJ+jPS^洒Z%_jd^,0=5D)?RaiO}vt̘5uJ`DA^\d/E:e1_gi =m-nZ&"e:Kͼ]~d]WXCWiFh5Zz LQ)ry x:&u4\}O1M9!v}hRBAP`e8*A\xztq7<ڸvp͢SƬ]))d}sr@y]j9\n9Iit~ TC%j>nTm`r̅X"-[\pfV1q%;ZX0_FӣAVj=RzD6'w,yWuV)xgmP'0m܍ >q]5X{[%mȡ:I.#("9Cn_t4qCA0#a&6(Zvͬ&9 肫al lc ?-}3 Oƽ2YvQ0+Yq} -b4T+[s;Jna2lGĝ],w{DiOȞ'XV5S^zNS- fa/_?OS!%{(EteJ>k)\$*=#w~Әo^)^>uA9Rs\Ȋo@:Eix{Aݿi yyh{CAlVkt[п'gG`ZނH*[VvgchMiȠ7k6=eX{U;F%2=p8:&v4(L5/|87Ej }CtG e* d05= uПv ːNJPK$j;V1FyW[ ^DAN7oH4:f] ].Ebm+)jB7/1ΫƱ?QP ȐL>lϝ={o'8HJhFT5\zC4bo^OpO-ФJ?"`#ZπN+jc+ʈ9|< ̝הIlmӹms#fHc76fkh:qMj+x)nl[]R5*%3[DW阮Y]WJ3Ylr~(rONVgز?1V[}D $FkXB@HHG]/ğd9֭6•P7s"qg ^K7F`@n65yd`ښKs1czع?݌[z20Y9-| ?{:Ph_\gQ#;~Mм`9ԺS_6uFG>@&JTc^pJM['˴6;=R8 p 9>T()W+PY jUrB[Ay;#W9+P>{ ҫvŀaaCFi"SZ6%!?E%riKf۫H87_ C;(ݣߎB w"5C0Zn9JͶf 42,CFrQZI>rl9j8>@v9:9vr Twx ©р8 ߉c~ vAlc|ܮBS_3$iTljBr }qr<ֱ3507xWWB*3IBU-&[(FTlj=.]9{ƴB#FK7^V{: ,- Ȳr=0RFZybX6~=g|}XUEtӐx##Jo=Gch SJ7c#\;h@zBZ,Se\J?9z@% -~Ͳd(+9s;W0 H;{K/d#顉 4˩T$yzs^3{k4ׄ<o@}W:-ƴQ9D~Wn"P՛0Ez\w"\ X5fhXKeuv H'|"AqG`﹫e79dH QqlbPMJRql}ݶWLR7 IcY+xj C\Ѿ[LYs=+> hd[)&n\NI0OS<פt]WNOux3^TPc#@eQgcW^ϜzHdž6̀>pUN¾f՟R`|4Im=OOt t6>NCzmzݒla3*KW,o0d{ϡNs'w 9hEͤT]CL/?ozu\>pWɔt |stum:cVy@#*^NbpDv1Fs''*H/fJ IdRK|ƒ/GIZj QFM*}b 0k l;ltS!ӚAYA1lF[*D.9@FCi^\ ӨWa&v?4}nwbAqd ɇ$vBŗ^eQ>Z#Sa[y`$WFUm:r9nNÂJx?W95cw/GkxѮ56؞\ p~[o= ѶcXQMbpKAYHA_5|/cp˷fT;wƖQ1:wC4Z̬e`<Y^wN쏵\E3P7*Q8]TDGJga*DCLHY~Nj:3Zts\e<٣/琎M]}1TBS67b,hl0SON~e"JC=hk./ڭ@Jkp sV8B6?] l%L"hjx2B{۸F O^(t:"R ]P#rzpJUxȈT->\ wp(&p* 0.տԳ8p3V*͐ )˯ϼj4eG-#(+FBSZ% 5a%?/(|f 'gjTA *zY&Gʲ!Twչ{(w@m!S5 zq9lb*S' fLy4 wi t8'7x`s eGfN/|Xj6m*A\ϋ4RO#vFH|rxCU]D@!خ/ME23*λYJƙK{;|’l~F 'т:ӹ .9Mk7M0M~ʉ\hp}&:'C:&n;bR &cL cj Nò3p.故rmnEn{"ԅ1(@CubmdJ`)+H1#6L譟 w,^ C⪥$\i~A 2&)Yow "Gi@+`U2/2[*S9N -*Z=S.+p43ŴrM]D64& 'Ф}& hs3 +# Z][㥋&9zY#!yϹ\ANn*Z"WP^A4@5/Sm[Dyt5 򴥞ĖS6)yk>0d"%>0$ʀ*E==b!^|w/zM# ]3\]!'c6<ۺq؄biO8R7ׅ# Q ~|2Jtg,0N8%>H V:dW >"$kͺe/r@zIJH|z3s ǠZ9ŐX960=\ b 7G)ɍvx+CVRIl7ΰvo/4 I]I}yMzѠ>N~х%>P(➈^pӽMVbzyǔDh/$A6Lu e{ߨ|րԡoG B~EBl.6_\ES cAw1蹦ШLxSKCmnN_.$IBMwRx(q-Wb{s G4ʓ0}!Wk)*A/ƾ>J@C5*;>fo X&S@ 6b;TrzPm_gOJm_^b|&}1E/p-ݓ^'39J>mwXٮr5+\vQ [7QY(CiY @LMBӖI߆j sMVCJ :!:<E`lPB.^87GyHd*(X%V ZYZm%-EQE2(VݏH#NH'RݷdԸЋPmX+uQ Mi5tm$"ٳ )BE\+ZSo[#LXy,UB_:GbUI/`dn%ʆaq􃡮JKi %&$kr|˲پVS~{EenxAF.XB8%z?ԁ ZgB_:©+[% 5 2ԎHuphYF6\(,7(lF/`HzYS*O/?(xч‰㐑MYEe(z~v0\vˆ[ɺqMb u\UZb?ԵZL+W'PƐQ}ğ<Y(E+#_DxBb+h\Mxoj%Y"TMv~Qh8g(ֆ̈YiR5RO6>%h+2%C'WvothZhѼ.yV+xJadQLMi :rA9SynojKx\ҍi7< tUr,9qٚ4莅A]mBL+B@E~U܀#6D4--t!zAsMrd:aP.P '3ʛ77t|U;Yu9G$\j~Y+8S^u@Ec;{kTXiPS+d {*HLvCM>-P$`'2J>8,$y/|LҩUY]s]9"YfYP/ÇΒ\}oB&&3lhjQ+n<0[]B8ӫn4a>|8aubWG D#ċ{;Wtmq}t4Q{F]ŝȲ5G2 y Ϯ(gow~UcE 5KPP\O%f`,۽m}LJM澾f1Dꅟ,-T/pUd'v$.# k 6tȅ%ibDtBCZ)mMA=IΓU)Za7d@ /H{7Tf lj#5?=IR'')Ȅ}-$וpp$@=VeYYB>fS|5! aRjBKkm9?I#L!Benc!C 8]w(b]UyZ:yyH$;`LԵ03g+ψ2( 6Hk/nbKN!3)!59~} >z PhrCFDIZ$ aTa^S8>5a7эIm_cy:z >"񻵹jqК4n֚7\OTA꓿ # `^'T RE̜n٤ (.ȅ&H9&8Zj6oY2 8 Slw B*;DY7\Hx ^e{YQn,~M_)p>> {F)МV&n=F/Y l42v{w_"&'Ak*%aH2 ᾜ2yxU.Ev;5g !X}I'hwW)?V66 J<l{ΎJگ䟍z ǘ8Nna9+Y,P( L׌R: Xq|AA /lGI W'NGGW&BDf#8y=위MJ}F9҉) *O"b9m՞F=b$O ]->! tDd/JBcIa$(+Ɵ-ڡ|F3+|'$H :2FV/۵]c#o^ KjWRWw`{Q]>5J8OSu 2iђVBu*G=Ǻ=&]4uOg,id$ֿA_NJi[rA9tptt:@ܹ֤Ǐ7ʼ OI'83ȿ9!/BԲdA؆j^u %#RlPtH S^,X]nOrSj–mO`,reg8R Ki=.[%[DRzVRzW7-([Ӊ뢆OV\ڀs*N cAL-Ϧ& cc"+1(?9r.Fӈ!r2!W"v,ewm'JJxKk8 :G2vo!ּjTLr,<ۧB1ʾr ˞< =`vhٯɜo5U 1)ۺ 9^VzN[ՈO{өcO{9"f`HU 2sI@f~s>]DbSigrCU\ۈLo ^$u٧V]1{fEbҊ{sR`ÆAժŔ8sz**Dy!fB>E%7awR鹯Ѷ hdJ~tG-ITn_ 7`TnR U4Q#?1k 0ً9bV}'PsJnEx0u:>m5xfsCrl4^C`ZP{k!6 d⎌bКhOh{FU:BرYo9͔Y'l80j<u[ CpK6iۧ^Pr 1)@$'tgZ䧯С5u7^/FO):$Ոvn췅1ET͋cq{$G !b #i*V/)%Q6>@,ZcJ8uX[]"bF#k/摊?0{Q$-*cR/sXn~3iqی-z:wgi|)6)~bSU Ā, `@8Kra9e& XnΎ2DY[sɈ-u7A6gcBwP]r|iXt#R%aY=]2̭0̦eWuϝm Eۃː+5aC*w7Ygŭy{)\QVf,Ƙ=22~d;.+px]$5gV* ;ɫH Snm_Ls'ɀ{bEᡩ{7[-Q^iʰ̀Dhk#dySS &SH:xȺBK\;ε3 0e5b8[#BšG -, t>{lyqs35YW1DOm,Q=>Y5T?6,~b!vviu9 2#HLń*dfG?{瑝~0Z5i]O4ekޟ}wRie34eBuc٦cBHHԙ #|>Z*uƶf_!7\Σz)v$STƒqx/40]crh"l#ؙj%z̄sN\~a6^^>/&k@mhnOx?9{ - E7'㞲Ne&TcUW<ƒD6)n34¨!<{Ʈ :47^r/CqnE@D?I<԰uJx>asbSۦq&?zYӱ>,Waw929ĜO,%b^]Q,[Ҹ/3>{0ٗ?pZflAJz%ߡsq8ak10D8&*3jLp0ZVwJwV]WDDVwU'>+=t^Fʃߴc8ciC_`hM4ldS'S=SMjVwHU҆ ͏8nOE={zN#,REUY*ɟ;$zĞN0bi#K)T侼E[~%T1 zd0$ GJa2?`uU-^"r_iGuyAam8; \HU]Zv| =0eA,iƢQIdH EϮ*@4]W-._mQ.pi +ˁ/wc`!6&?< tsB BORhGSy\*+ ƒ8ʝUiG4@j{mymgR{rzȆ,Ы,O|i0n#1稲 ㇏t(z pDU=&-ZIaGQcƲܓ$!n|KZ#*UiUcK =߳tʓ^J5$x~m Xh'\Q.,[jd@ip?$]8L)km=y'b{c X59dyl;t1~7)"9Qe*vy3wMq)=n^s:b~R5.'Akya.8XqIB^YtO8WX>jߤcEEu+f% àIčForwEĹr9ο,C~e,Yp{4}Zhghٕ4-)q$i!ĽK:P_DƛsryJ12f~*/WB9-ћt'6!eJK[ G&WjHr]=!.b{,FXT䅟߾A:i9-/]7P慨 ±LUwdKH$N54ՔdBM$E1L6 BTr6yZ߯ -S Ol lпɔ 蹆^&ʌw-, /+*W6$<g7&yѰI03۟ E]`rcU?69[>cUFQ?"K< 6!| # m37Mb^80Q'QwܿG6bn%c83bJ" }a0N5z:"/( ' BPCtyygxR00ʏn,ٕ02LnUߋV*8eS(Yl2XQZ䫺vbXGKXER1y_ӕfFg`_P?]I8l/3.@Pn{r y>ݣTGKʯqZ7ㄡit8* %AJwr0\ ЙA<Pt%S:9si4K~m,Rk ˔Zp҈b(޽Ԝ,(нqTA)I4hFzrֶV0v GUZS\ 9iK[>zܕ`|CBM$sTbK G 'ez jU3/ RYZlwrB+Z|dOIt5H&NB{-5 ͂8Lt86i^kup5A JG]^GO/{ OJvc w@!ҕ Ro,:lf URΏSR9x4vdɽSǝ -6p&Gpr_lm^KZ!a0?E'E}̤9Zsytus#tT_.o1 (j7Uc §YFMNH1!   v=S! P2!ހWFp*!rUmPkҮPs̚yZڽfN(_t(@B{LQHIH 4:+a &ƒ%-t, ȓлNTY(]ܵ{ @f@9fǯ‚Vd 4#&Ҍzv()cq"6vlScN y=ˬlTqx6daiTAɅ+h0~QyHulx zLa5|(E-?yALK'v@+-Bʥt'iې6vȠy-P`=]%Y/u2ػY#uiA6%04˭v&[127}/]l#TUg:YcE9B_{'͟)JJvy"X}w@+Is7WKM'!bfAagQz/oJ;}ny61So^#~t?sq*."21 *Wy;хZsR؉ SZGF[zoˣoV}bg{Pp?ZḞ櫛Zi a gPGVcU yb-l9\݄(l,4LE9j{H+BۧeYJu*@6vET4mC";Ƿf1f=}L+gu'xrDck`H_Rh. %V~`޵ձOױ!QPcIe 7jO=.pk4kUWn&!~n&hxbF~cTvsFl/&",A؊)C_!lhiIõG][J2gZ|^Q,]K]v:ےRDRdN &-.tC׸3e]!sՇ8;zfY>֤͂dfI!qsPx/%AXK)m$> {W}ccdS밦H͈\OP?$!t<uѲmYDۦ3J@ C YjWmhҕaɆ醗wkuɓ@bO+#\BGgR#:]OY{"aD1%[jw>ygǐֽ󙝳U~a W)2$=2L 2afrp^'KXpw7 ]$J6bЮ]O7 \r(C"B!S> ócxnA>t̾QGD>'^7@E*o04 d MSWۏ5[ћ:yv =8se83lQbwKJ9K\,bȫQ(7^JrJwxU!5:_>̀W5f7‡1raTY9`>(0ee=x[1Tw|op氶 |S,q '>,o,&m#@X/Nia<"׻.tЏ!^Jœ=H-(Kz p; z@ˤܪU*Tɕ=.9c-QgtJĵ%57_Ɛ- 1suϼvK5+-wBpqQBK)Yd%O= #EtN=m信2F>8I%˲> –D"E@da|o]nK_Yٿ';@I`u_jQJ9}W:9;8nezG :}*x^ ΛFh6,EZ^\U%%y37^\8qGy#|wdb`zx߼36t~{#Mэ@,ܿE-(+ĸ y͎hϘE?N"qTTrqVc `K%Q {4d[s 潆ft &Ʈi2)姗ف8ac v&DE')tꠙݱ \<\#3PՊpT/OaeZajq5& vrLFd (69U}YBA_ewI$cuCJ rNض<dh#!i&جj<16"J)`k'qm/:*CцՒOFQjdbӟU0@Z#mɵ߃\ނO Fگψ -fȾdX^ pspŦmxHJ0BQcY胬Gq]$ķ pM)1o*vV?U&N$oJAQޘ-f&#rRY&{*N~}/Mڸ^$ӲFW0o%x0~ ZbV/&yG?xs{,ۦC-ۺ@(|-*L:jľ gМh/ be><#+9h>YYuRaj(\=~:5TVw a?j|^S[vN1&M0C$QCy?s49l+ŽH LZڥ5:cHC2TGA 1=ߣ'{!LR b&-K{Iziy( `i#GWdhG쩿N-rL_y >}[~ً5}(CRATq`l]FքysH䀠K:9/̮̈FVSB,L@+he HGFި d&,sދϏbP,pciU.E?%W^*8j+I^tfGX首tzC,{ lT,Bbhx/ʤ0M5\wsL)xʥn-p6$P [M=FntZe!ՈéG@Kp3ܚ Q5 .t;@b$fg#ӭ:R2Ck^EB31Q䙉j>IKU1uIacB"/&3@)gBwQۗ $PBl~L_(}?oU+##A W]{[JE{_-zJśf=AդwTX}xx".ܲ"*OS{ZI:UG^f| }33ڼ}e MŬ.DgF,!Qk i"X"D_5xZ\ezy ~2&ceme~bŏE}v<;vzf؄W+ITג^d.t`ʉ^VBZ0yR2\~. Yǚp=L'$q(k(x D1mچ+WDaL)w"(On7A:ëRӽ@VHJ Bf@ uo~rp' y(%?}Áʿ4H ջjbϧ`Zǻr+3Q8<rʖ D n+K;˳MZv5 B0셴4#F^ E:BȲQ =FqA=P(e<ͅk3 (]#+it LHy[ta$[Ago>/^V[t!cڣŏX/]EOEV- 54eGHE_3dUo7GRǀD3љlźd!"K~<5)DM3F3S[ݠHKIq ׭TOCPM56500" XK@yu9ѻ4+ؼ薯0܅c6LBgZbN[gto d0ȈvvE38[X>``˓ 5i8ω˛\g6+(wA^52Bj4+c*_5_"tmqf]밸ìd(ThwDF- V)3ӯ!̋v߃ , _UÉF罝:/qoYVBz׷Ɔ ʦ>U4>Zsdh3:ys}‹3-ӇItU4C7I-J!@w0@^~mw(mzFo% @3|||.c2H^S 6pu(e1_"A(+D&;ވ5g΀8O^1-\"IH7t4n1;#Yx|k:tcVd8PH9` 6L_Y"2R3@c;}bK7TǖvH37/鑊qwb\׆2!4g%0Z}D/ɤ@Sufs_\W"Y0L@rTScZ2ZO -0S(t9^꿑eJ ]vay>b_)F+"Y2}5epX:ϱ.YcV(=T5w~. KR. rГjr9{4_غQ*p&::/4LksӠBЉM牑3`zH%O{7| 9&Z!$'d3nw6 `a($jG+VlX ۲q Y+" WCF;E|KSsSum)<8-]Nlrpb li])S7Tk4C4}3zsJ H~t~jGM RzW:g 2a#wh%F[8j cbpSaWm/4i.>B[+6Ŗ+if ?K3muJv=-W';$KD䙩!s;YokkPϏ݁:hNsV_k O(kXh,}K^ڏ}f6fkH:n܁kTuʮ[ =t1d9wDf'[ogl͊\>-;G8tJX@]̘JB> FB=>m;hܴ;~&]zIiU0+ o|neOVaZV] Q8R ޟ@NW$Bc뀽k:ڋ*"'0lfi 73>#fσkrFßuy=3wg@$ Rzc?kNlt<5XE!,ߗ6Ρs :jb*@S5Ї'E2z|GZ{Uȴ$ 5 ou`,ζ@O) J~zM"*` ^|OÚ< ,̡+RWRS:_{0&-y6f@?Ϋ5tamF/pxi7T#|?DGOc2ciw8O2%/kD祶c~9hX{(2X/Tغߏ-f!P~F'wNP?c5C-g*ݥ!`kKJ.PX\trɤ' vKPRވY`_˨+ғ7ƱfmHNrk> l+GZ^wUrcN w~/99jpEƿm*۪]ڄ6Zi=&{D;$ 5g~VQ_N?L3PcɴGS)2\Fdej`5Wsd!,7)(ћr$bVEq2eꭓdўޘsĒRɨmNEraVUܒg4V&=t#VX5)tmOܮLHoe<V=FTXȌ\HM|~SчUbo#3\݊jT?ܘ1(;vny!?-EԐڹY]l4dv5CUuTHRsT+S$ 쵪 * p`hPyl7L>픯=ٓ[l-wU1>P̊8_=, I  hAӎξab;J0 +]RwݷsnNYb**_PũQ\tB= 2T4[~e* Z(WFo;Qg%^V%Me޻\(%ϢTEc4_x%q'uG7kC[P*<Ɂ0}muԔH0\|L{p|Ŕ NM&N':/_Uئc2&"/ZO\_xg Kc_;;IGW;} #ؓF&)]/Tv//wYe܂%It$!Cb~7$O2B!]EE{Í}k&vD0"Si0aHFm](1(9gE;ż&(K6Z,NPaUq7a6Ńמ}u`dɀTkhG)ߎ3Ϣ*B/N;nO#5~"WRƇS*tڢ^+ǻ?>cࣄ̱ddgooj%^(&H&0꾆vf+f:O.G߀Y^9"B4& Ej9çC" 3ڢ_m w:2.*H#j(%+SS.cdta\FkMt+ٸԨ  5Im7[# K(&p0l䌰- U%b|=&.j฻hf.BZ’&@22b`1z'PzFvg+\K FRIg.}l7WX XwP,$]>Eu Aέ`xHO]M(B`zpѦ@7I^.A 4693:P@lD]߶y3@wrT-bΐE_lR+ĥMCYo2syQA;FaFe6V2Ar!|ʗ.+Aު~#s6 |I jq5g~@G`K9lW-bۛ_ME08 :M16ئ!|SkX贬[;iݒê o| j]QSYZ<`tp)Q4hfxPj,p~08Fq|*c;ZqEީFqE0[Cd˿~ >z|o(Y ܝH/L%u 8:/A"BVfܹDȤZhkτ}?2^ԗ d.PRc8c{sۼ?wC|߭x¡iD38ͅhR9ՊgMo<0NlL& VQz VAQ8'n ϙQ d~O۞"TkVo&$ӄ-Eѐ˷:U|ce CIjjaO1 Ʉ/)K(5ۑ"8 q=)L+9)!HL lX_6GAK_B 0 zQ׏eɢ!EUt[B.zIacn2ܗ9O]@ g]휌]^=/nʋj'g66h<"~k&*1nb ?Ǡ2Kk]xE_Sil,@_K\%͜/9mXb Oԙ=U'*я bqt3x&W4֥5 ub1̈́?-un;'Ƭȇ{.Դ:裁.u^)!M~6EHs #E' T+$*6d(~KдEE0)%?kF%.ʗ,O;6X)(!G9^g9Q.`&p'fOkH%eqWєC}ɁsFQoyFK'*Ȟcp+`n ({KIAT{̚~9{oV?IXc)'uγBk'3ߋujiVx"AHӹNdޥXeef|<~. ,fvHY,T~ G`l|E;Y+l$wANА_ʍCŜ:? ~R6 8?=-MZ'cn}PcE)lh^:HA2jmE~%tq66bۀzoOǥo+/[8!WkB9[8皑~{.jfJ9.òbHte$w~ )5b+[m?.B PVW#R #–Z=i\Po'TvLSdP ̫;o; U)iDʬy*f-S3EDy{27ߖfAswPH|)2s> 2M,vJ!P1Y*k6.L\')搏Z.l2_Q@7b#jLèC`7(8crRh4ɽ_.„\W[&K7ܑWR]rռ3k02ºqU?-zynAR@ONJo9 UU#W{[H2[s\Є7zOt֊=zFb-Tn7Y$ ea;PX/>Mu{#Fĭ/76djϕuta`D-j-4m>4Kqݷdӷ.Lv6 GKM&4gtj\ =0M8rvI\uYT h .\?s(٧{[D]mpXː<\f;BCl^P>ư$[Q5Gke]50*ioށj[IZ:FO8c/]4spĉ/%1+zK KL$W'oGD2у|WBʇ5m NNͦiaZ &<̆X!&`nOE̹۬#^Ӊg'3p!:]I 8O:~ (bOuC<Aian5M ^s,٩Q!JN<96v|@-b7t͚SIhܲ.>7BFRӉ]p\J޻87p+/:4<5*+47km=[TQ/xi0GrN/+xXrjB =}; pʠDhZdMNȈ@h{jdTd%Epgc58UAIb}sk'VÌ XDx2'KV>2L 2 Ui'; bq˲Uj .W$D7ת)N3S.dňvF-wTo0s"^dY z ޽S{DWVC)+C3yS&OBg筠/}lp >uҼ;V¥<aK̿!FAIsR<17d҅@sF텣|P]+ȁy6݂Ѥ*گ3OP1jAue [B("3l}_կ6uE7Co_^Fq˄ܨ^Hļ8=W̏*.r@6>Ca&٘jtGj.o *vx _j}Xc3IuvGwNqe˅N VZ"!$$jΌ+~Ϟ~m 5fڝOGѭ)GQC#Fd1V fi˩ȧyZfi g&zG!) Ian!xL=JBX[ńH%;5Mvl,Z [ RT{₏.Ǔ 32j33/2,{5kyb0W`N[KO i m( cp0Dsܵf̳j_M-^(`\V`2wf)O1C O4PtDZ5>U&ݕΉm-(B\(RژY/2~p:J(S 訛6kIJ&s8!v cB~A>,L,6*Ѝ 3>O˒PϡaŬisYl$LgBlf}~}IFq]&蓾IAfA RNsՏL fZW=˩7X쀔V\3Mb J8_צ[}Q %2cA#Gxϑ 6Q :xdqW) edz<SNQ`Qֽ?z$Pse8&æ3x6dkal3%i4Ta?:爬\+**?zO~MKgLJTZr䠖"d.,'>#,P:1o~88)h=ىi$#KK"\Z'k]_1?o g)"y$*-NVzZ*+yS@c͂na[=@덀+ߵq3+m<DQuBE8jD53t~>xҊw@!2#AX/ʶ*7'FrTfbk/:UV1mEnPi1mXF+O7pOQ@Ciif%hhu I[=,AKQU1쁨5b<%M-Q%BF5yEnMY ?>-D_} ^H 6rRiFĢ/x&Oa8IE_) ukͲ ~u|Ogxeޅf$3+ 9$Z*bVVn Y2C{uql°㑽;oZoZ@9Dn?])n#QpJoW5./-c? 吓}q:yŖ|S$cl*yeyv}꧄b^+/w4#^v5צ) ,8N}U훂(Iς6$ #&%ڃ,ݴk%qKd-tgUbƩ&^t`lr7 o"7!5$˺|>S-3~\.h:_jMigDF2CtsWŊ3dp C,RQ$PN7nDZkC4WS 搽Pgy_Ml{$FeIvd\o>a?ɢ6I-mL?HABf(fk6"uF>5OխΠ@wh iձ'? )~^X-meTk6]cŔW*qöߎB* X+sE:^.)M)p)bfPo1̑Lw^ jApokɶn RwB]2z]uH)By>ͣ!)*hߤ[/KĐ`zKY R+ZDi !kǂB0{_\+/N_M#XL$`;o(ղNǑ[ nP|'XE("԰M՟ᩓCubNA-Ȝfˆ5JpY~,ۉT|zȇޠۨ䘮z_%O.tܖ;X213Rtq(OMC;/ C*NєQrīA\I٭UP\~UM8XL~|BI!)i?[GC"w#0gG1%[ $rਪwI*HR-,}AXAKxQkNCAP"s$W ųtpUD ds׻1)22>d/i7JK]5}: > ZUchKHQV4Kcϲ0"O 奈bm^S?I] \†(N;;mT='+ ;2 ϞDJMu=G!PcTetF-5ŀOE(XWO񅎸Y^jcK G7 " `&7э_B }j[Œv CW(V{^dFHNgbd ";V_xVR7B1h艍SS Tzl9e*壶c]_dq^k1sGpy@A\A}E[XоZ5O;p i.4Zׂ72ҽZw1~rn'ם%uě>d ;&X>q"dآ |B~Vu*-WG_4[201)#8[M|P/GQ!3N3gCψ{N]ՠDob.έ8pyY uN6kESʸ^NcJ.+T4[瞬39lu +E ,AX<+>PXcm,Z`=r<N0*:Zsě ZUE$B M3_V}+S c|EH)ݼjYsd]ehSeXu-gxjeMgK౲<*TـDT4ϢR Ai|' +yha5 tȟ7bZy6ax-jSdՓyk BW*Obq?2 Y)1[w y6$T1^DZyƚ .nu IXSbGC^W>BmK&ϯbpbhbEt'~[{U쓶aE|yHiч;>1pAT3dD)l" raF@QI;2ڏ:p({DG3%P 7h#w'p0X N@A2{,kvj\6'w O8"l6+ѽAɤ([ZHCѕ-j " ?|ObF~J’lI}3HE3FgjR?CB\ػ4S<;h1 S䲻 8~{7csӭ>sV@ahZ* ,|yN%Dܶ+:Pd}~** 9p{RXeƁ1tX;n/n7 k@2v}O@{gKd/&q<"c8q{ʫybw;lbe,˦:wݲ`?I/;)8P=rϰ)skH%?4f*_ ne 9Siۋ{5\^gEG(J"Ý]9?rSWt> 0G{9 |@kE ?A-!q(׀M`&ߪo2Qj&;kۅ{S; 70hwW]ߩ60*7"H6!Bu2(80d58FZCq1UwN":]T*^mUv'U`dI3M+ Cvq{#Pvχ3YVzRs9ϩ!Ei2?hcf[0+jIc(` Tur X+Nܔir*Sz _ ?d, ,)-Qufئ?"U}|Ã#ek@H,_?EGg\bC9 Ǹ EaQY;۵뷜Kzү*s/c54tiLmr oWwu#T- y|k!W^_K!G'F0ݓ/:G٢R$/2 z! _ ڽ!]!q 8SX4F$MSḒ2ck/p~]4P@?Ʌf'Б缴"U6JO2)A> \I_6/é7@UmWH=U a.7H>Lӯ A OHYnzX j@iL ~m,-ǃ:HO78) ߺVUɡ51!:hg#.WXj8$hM8z ~PXHQPޕEF֑ϻH!$X7x%+ ^'3G&bOc>^.7B$8FVXxMgluӻ;ʦUyV'֭UeU`_}Mptį2k@&Am8*zBdГX;8C{OmnAiP8w:N%ɳ,C睩Պf6@y) +[ޖ$pa숍E]~ ;M뾁ŸsVDٲ?D7e0ui&~kC;  m3T{fD쪄g)h,:pw;& ٻ{UOsU\+: XW޻G4p8)!KSWZCD俳Cw ދ~ĻQM_2!0x^_%vg!\΃F?3Tq,NX, -%?n9stG?_=k[#NM} "ׂO؄Kn$ &/%ry^a[ XC2m)b6;2a)AA?53']EsD*jak3)~C*~Y {dѐ2Źt?%d0@ of\URR Yto;CXx7?j6NjSP^Ї^d8#]fo11]퇜SE{X_!:AX voQ֯^rƒ- x*%;!/'[J91 CnL5w(f .O&1=\HF?eb5Ĕ47;hOpD ]sMesR*9Q!_41y)]CJ,hx *{!I v.x p6;۵6OĨw q/7&&ZҰEJMUDFˢ8A(Kc`pz]gaF4y*>^tؗJ#]y#RO =3Nؐv%)EK7Qhe Z3!"f7 狰W"vff[~)+ϭ"Z zLw K(X0oI#j뿩A*-sSwh$A d 23Y`d_+1{z#?~\"3v&1X:`IWo)tHgU+F4$qí_s G4ԛ3RbYkpNq:n37%߁β &>νc#Fa {pTٍ7Bh7;sGCUɯ0ޫ4.W#@FP.MEF2f?z|,@ *U }X<©t WΜ2̖\inh@Dn6чZ{F ͅG#8` Uw{\ufo.g.f[ u4҈s䔛}-v,6`%/v̭w1B}ϸxX^*VO̭=،AvU,th9e_##ΟI:ڜ!Q~ǣ )0pq FTY!6 h)*Nɨؓ 'ՀU $䛎$&P hYx <@!tE%+@#ᵰZzBw'ԫZ{h5 ΌyY4#^ݠ<ň$~3ATf'ɻX=3{ET.fqP>aoұx<3&I݉D&AG*E5aU'MZ̧?_!kgԶGefTJ*!hiv MYҗ &e؁nɚ5fElCR[h8[ ]]@iy?4Fψ|Mֵb\07G^a,y|S}bzG)nkցkNvJ ^גR*0yܙpN^؆waւ^;m>_+P^p6TSc''Dj-}g~$gĬ/ԫ wʷ_VVzU O*b9[sR-0a L4Tm!XtX?3|S@T0r@ W$¥YlN킿s lq>Go"&vt%j?D"p4R1&5ҙiL0. !vffy@~#w͘Ds܄: +:eaD)×o V(qñ3,5mh]ǧJ:q>y([8ep6ZԸ>nЮL*ZͥB' ~`Pm퍧*Td` xaͪ/OZI^˶CTQON53+pйgeݣaW9_BƺV΃2JOUVaU ȹ #-C4ȂuIIJE qbfPv5G5x.6(2"VޞӾ_AL<37TM-dǾ%vJJ<҇܉nZhHHyc\k<˶̡Ut/.~6lMAzUIvfHa5>_T!}glsM:+Y_N^Ib$*V$_6愅nϬ (Pܫm4 0}VhD׀ԧښCg;XbXIw@ZWඡըk. <,b@팲y#㚣>n?;>sv"HCcQ[>58Vg3ME!=՟K]zli؉/M"G|^j[9\|뗀yb؃T"^*ܯopXZۂ#% "V  ŷ hZ!`ԛC!#%WQ4>7PK qniqBaKaESq 49v>uo%척>S Daπ~yk#l Бüv7l-g A"'/ԍ*}ݨ1,Zzo f^%W" o# eÅ _a㣐eGZw丏`Xi[ <2$QuV'zӘ!Sp_A؝N$M$PiQK%CIXl7N_8kZ|r ^Y s<[{}EkaL՝^0d`ۯQ9/Oc}B_s)3nnP)f,~!J}bJLAd(~eb' *Գ>"ɇsGP =7N.<O&\7kicFK;ېtY7qt8 aشt]qy@gPa ~ulrPi[J)ÇtKzxZk"8o6}eQۅ]ڸ+vh!bukV to,.,_S\zpQ@ TZ:8_0n;ep*/ &Ur*ovy`) u3CE\0vmǹ8g=NbxqL!W3DY6^X{bJc+D_`0~gnPHdסÞ^>E`>oJ E_k*B,hzexAˋ/"r+, y =VEoL?A>M;ׯ IYe |^̩õUk#ihB}9y*6erk7cDo/W8#ԊgP%fywkv3b,I0tf~`J裕(H47n`Lq[PfiP|-N's.R% FJQWx.CʊB7 4-K{eUC学FKޭ[k^߳;CRI6ѩi%FL`E ֆӦ3Oo8f3@XycQYyF3GqD63'Pj5.ȴ_控 rdOG2"/"+46%~& Ld]\zC-skx%&o!GJ[|=}8Ey.f%Hu{B4,@\xz}lsbF";bqc؜=T2l"fR:)rs-3CfV`X9.?4> DQjDH)O8Έ)W=izx bv] ?KpGC`kkTv\%eN ±_ծo۽83n⥠c~*Ȭh8rkK[ixMuV̈́Rú&7JUFn+Zz>ڊ L0fTsxCvND/K>G,aTt}]0GW\}tB2"~1B.|tQt]vDXĔx5d%PL_殲|1r44r>x˴e3|^os\ѣ8A?kz+؀; 3"llŠ.97ڈ=_z~02oCvĦJR%[3'38Emj~Qvb >2:.ݚ:seqS_aXodR"QQAH*UGЙȱ01Ufb-긷htܐ->/[/Lg@{[ZQ)\n!BX)ǛwݮeTNsfF ;\v9Cܲ@>h5`4]! k (u\W Uxj{ngKz=_j݅^ xs虗q#/ෲe^ N"Nk+8y/"k|HO. S"a̼6i,ŀa";?5nWÅڃGU %PbѪ }kRL.VU@mO+7=HBE |=u]ȿڡ+kL;6#$]NdvZ >ڥ)sX_ZF{Ժ٠LV]brߏ UHJ>[s楶o0aM% ^'ņI '+;9?kaV6ɭ 79pNՓ%v b&JCjDWr|&@WT ƝO2Ѯj0J1X$7AL*PI$ѸO܆yi鿁݃MUB6)njbcj*_N =I7gD5BNtM}BYLvtJ\ r2(!>xCj}4H ؄h se9ՏlN/*Z;|6SSRlbǟ(QWrxbtu~e++SO1cQ. *8SlL/Ivk񴵒&|Z..UV!m_t{D2=N EԿ 5f[*i4@ͼ\J;ցP6齍ͬ΃X6p[˔| ܨoH v%$dVȅFv5B7#>m=贳\"ۅpGd wk*yL1L.Q >Nl H`c='aUP&ژ*ב ;>b)l2 VfV14xٿr@fO\%a4MڏN۰ ˿@d] !zuURr_n$ҬtփRs؋,o488^gm6U=vDIq!1 @ǺqKe(?iwb$5͎5"7vyMQb;囗IZm|qcsŚ~gU>i4D1\'4!-Ǝ?.%pj,So#d慾o-?I hBى'0VXϱA3'ٮyE =I͏݊E+a1!@~YPevo*8nPxOѫ}Vr{ojzHt)fq%$_c$+SP+:+[3 qtH %bH"ҦNO+͏m}6|U@k6o;(DiНʱczd*<ߴ-3R]a,}^)oƋi̠'3z_Y.0z 5fI077*zSe:^J$4(VV w#Q m ή-L9Y'A<߂R"W31:("T9(P& .]A#P#pʃ!$`qH /Q8!K D q Rq.omL1==zDϒ׶&^s 7BByex%FWtVXz6d\X$`7㓢s9;*b OWUze耘Bnbymt5X@4O I:JY㲤iy75+2~ZDyk\&QH.ֆ Q`OPa/JWE~~z8c(uh. >Jp~qOv\Z7[Z÷i(1CFeH_?)ZZ8 iR7Z8YNXspa~XqLBuP܊E?_WP}~v]{tժm~? Qiza_,y,ɋaI^S +'v;뼈e+Uv]bϞ]ˌ{efG-'{ȌSK$Qj=7qFZ ɡX'], {{ciu$}|/)?s rkWj^˚jUD)VhȽ-AQ 2K*NI_#Te,@RO\uףyT)R0xB9>P3XѮ %nq&v^ ,l(n>!ERLAebZ ' W9ccÞp1$0DkMlU #_|(۪QJ)zI9^h xo<Vo9w)JMS:*8!rHoM o?Yɣu;_ɵ cGxgq4r<#5UC4=㡼.f d=J&I27͵E_P˛ΤƣBl~~SPX2S]R"% ^۟n$ deDRdš^ .$3P\:ss:OږPNOJ^ӷ; {bh3(`6Z"8vi(\C]-˵uj>w4̏]GÌFw l\kUd?i$7w`q~/rтH5D.q $2?EOfǔYR Ε6̴K9ۙcXd8N\mrSϐuǘ{Z-(kLde^ėL >đWNj.&X,r̢qo}<l7@y6ſifL4;GY5f*郈癝LDRz5<94%({BfgjxM*|y!^+!ı`-Qݚ7^d[詺~"$3U ^@yJaaY-pA.T gb֭EJDrMFn27W7NTC$IP7 .¡ ŕh[0=>>yF~fZԉׂ\4:žwOt`ПU9nT1@m es Ç$MUGcWZ$̵:SIF"=c8'iw3mcm(DҜl*!R+͘Xg%5M3v_sM `kKYo%P8T % UC,&fi؛?#;ßq+)R ?ZJ7+h5}A'~ 2Ur/F&.~ž%E ĩThi]NXI/PlB 3 8bn|RĜ1I,O}_+Z]wR%&noc.>fL3vtzY 3k盟HEYM #^q'-g]vbڶ #Fcq[^ab |Zs=`J_%)%ך_<7IE**>w:#*앫W0®nրD OB֔xSe.iDל 3jQD36~~gG^%nU9w`ef򨫐 @B cQ#VhjsնnѶ6:tn+Be<dumZxڀ`u_qd)ʲQ<>HQ Žl?C;6O=3ݻx߆p*}Bs a9'9N>/4)&x PY9gwyϡQFs˝ 0 ?(rMMG(f4De5Z"mi`)O 6`uw3b< JY8B z qpXDz mkd8EL5 DyJ˶zN>(!m!/p_V}0\ g8)BHE2idN+ܸ=;AS7>~=0ڜ) _'FIhñ]0scZۼ|I{4n\T>'B?Z&+YcY(jPQ F(o9s ?p7}%\47rVNL Q=,SD;ts1cĆ6JC/۽L:o4+Dl*%o{ܖIk! )O~B6?Xb7'̲>cѥ Vkb Ȇo͐TD`5H6P|UPа:%@Gz nH\JIEIa9¡GL<{^ w2owAC?T)+[ؼ>S` wCuHq0mp GIRiԓcfSN&<ݑB%M /Аg'0d덺D'_= HOc2S`fEu o2%Bٺ$>D`+X9ia`%fTa;(Y_lKY8ob s̪mXSU|uؼx2._5=3VDXѥ#>#hğIHFwVpBz,ߙ{\%xXSh:!@sv <w5Z-?FSߡ>(zSR ˜B&lU|}jjv?l ԀCۑ]cׁh3 2)9RקzX)lW7,75O!r .*t#9Rċ޺( ˁmi>= ~(m]).E~K~!de h*Vsedaɱrz,CC@u%$kq>}PSowM0TQ5Nι#+Cb:}1@. ǥY랐'4YO=bz|t!m&ï7Sbj@_{+>Kv-&U.S$\]>-d@L)"`|eAQܐG\S[n $te˧P3F&;V<~QO7g5d"bTiNe˕t| Şp0Fp'B"3 ğHQgZa>G۳chI{sPOT0>7=j@g' riq`g j7{|.=AKY@Nuy@& Yc*J^u/6E%"}bqח^vm4 bP,% od <2?o}7p Q޳}+a14z;Coe6E6+y *3>iy#`єօ7o" X_ٔ$'֨7gKƝ |D {Ͽw#Vp-a@21}|IKsxYW T0P>h~x@| &Jc7D@d/l: q_\i?#jD{b ,NM&sdA0D~*_$J#3 ] q; 87w( ЛA;B Ů}e/rGI€i0Pb*^{MIxSIo`5YkIRn{}՝f3Lr}7e8z|9gETP) DEꈍ{2z "0}(A>S{졿x kB @8,KGJM&H$:/uH~v!N n<Ǡrxiek"Fvʈnވ[v\W*S( Wdќ`eʽx#K'fAs/7r+{<\L g}& ?QXR̹$N(7{AiQŴ eWr{rqꄭ8' C=Y!&A Jw^X2-`:>׆Ӥ,5{ΕV9W 5ndV7:]Fv۳ -0˷:M;:֖/8Ŏ / p"?S|"x*'R7C?r=A$M7gD܂ g|k믔hm`/6A 3a vsd>zY~KуEYu5mDTG^=<{Ͱ9=I^@' ypŞPpYۓ-/qd3R|V~0KnasEL`8RQj˘x hB݀۹ ,C_v!FzCLxb$XDZbME6*C'i̳OSZBIc鱑#͠3z-4Y}"}a[MhU47Xvs?'@zj ZpO2[Dov9]:xԟ_-FQ\蓊^sv4 |߈ν|)G3b"]!MX7S\Apx93#Y-[=)bэFL32 |X:5Y_hx `;oܱ o{(u׈ Tr?UXVw-yx% dB[IBIyVx e dd EN=:I^w;C(gh60jodΉdyBSFfJQx?]88b8ȋIlT^vRg 1v&K'daT+z [m]YX᱈wL;ABi,ūZ\S.RI&,9ι7XFLtYMZ~諛ChDQWH HTI-k*˦&f.ЫDոBxѣ/}<FXru6g u>n!؛gٕl0kG8+#\%uyN'"$զRVzG5(stZxqU,1Kѝ_Ϙ^K0Eilb&N \EkVujhfUÃtu5w!#^Q!17tM1:I$+PN>*@a &` \j#&jbN8u<4t`6ch^Vo˓.VrG;ō"Rkuk`яpe OT } 7fMO>7uN4 s"zF(UIL^;=Ȏ:ʦosC{Z1nIm (fToBs΁}P\a(|h PGtrO)fPxO|݈!ӂ5Ws9> 4-Z7|ɷx-.Zq)+hq;o$""m׊CW9D1CL/imzT\炇9 B+ ;ɹT>+~~R6/4)@{s%˨1,7BK!Y1Z,b) ;cU*[vlB?ϧ9e/h*tYLVNFMA'D;į {h{UeJ\|5n*SUDzORod=ɒ8)!@ɟ3K&̝6rx3$LK-U>ӋmHx'%9]֡MzgoG!>LQ͘r7ura-F? +pO) %Y,hqNЭ?Ho ,SV-kos!&13y QX1uϏahH$yyk`y3$e 3hVN*\`ҮO= M޽Kic,&fE2^zUMXXMk~!n}bP]T>*)Q:&[ >~zܫ!0u(Jg&VpKS1 YuM%tuy|Z]Ƃ_|.#6!a;WէAqo,XA$:܍ފ7t}KF't5UVLZl7Y ]pTpdv^zT7kqXO-V1`BwTaݽGt`Fq@|' Dw^PY| |_#x78vdR quЭi68"^L) 8루k-AhI;GG3rwE~S؆Jt!ﲷna~ŒkV g(ͅfwD735A!z3͕\ WL0]_^,Yc^Gsuo{K}\C>V/(Յ ]pTjwaV (O{5Y!oR)=UiI(0@?- {r_fعa+x8VO_- qЁKU5 %;;:lI^w V}O} sO> 1ϸɯ:}L룮{xIZiˢ#/ᇅc9#7QY˭x&X%"XyɔM`R0_T)qqͺ,a緍*\ / Tq_=v"u\% (-2D [(*]߻ wl5vsV B,pk~.V,V&fuOD*|' V0Oc] ]$Զ[H<$ V*Ƒ+Grsh*SP]N\&D>p ёM<ƑsxKá DީҔm;%k&Jt嫨ç5=5-b&HZkDGvҽx  jGԓE9ҐR:078oEs =mkO B zf/"b=Z+%24{ YWmIi{N8~${ԉ*IBdgJ 5z8Ў6n;ŔhqwY:-mϩ8f-vJ-_g #/-惋b@@!#uc華YU Jg[&d2R.v:Ǟ4s~S/܎HIRY9V kDŽD'yEn%tp+Ki*I/%Jt6@Ft5.eY?j0- k] ys?1|BkV ]=ut*GHח;&Clq&dMϟ2ㅬ v۵~&hȤY 5s+>ΧEEP=ɚtOh=6} r Z%U[,ueϝ.|s}Փ[vl|HM>ެ> | bRMW;uz$'YX2iK*ˡ{n(J?oF}s>s-/6;G* qx1|`@i#F~ZYT(rJE!0_HD!ƛCac˿s[y [8Mh}Ӏ[j" 48{<[ט[ȪU :a zgs/+ufPa.X T zy~"W-|GZfNkd]dg6k E+X|9Yo)`~qӝ߸Hk-0YזpRoQ9Wg"uҾFPKD?}J D(dPhEaPF8bVzt:ﻆ[V=7ԡb~hDqtI>XI목(!!96zn+ˁ%MiIp mr9m^;ީw)J: J@o - EiskuH;@q /!#o+RYC `ٌ `7KcX B8-_tg#$s\dsyFhk=ϾB]Yjk'A)(7oD@%U:1 &ّ5̥bbR&&ZcEe@\quc;9wE>-J..t$Wq3v'@+^Q[ w(@V${tn#o WχP:ߗF9O?E9-3=@E_;zGN$͝[Ǵ*-Cq隣b쌭W4dw8y, ;%;BY6n!};&N1+Dɝ*EDy |etc+d ΃Z9rsjAxٴ9.ΓX"CHǎڒo$m~ԛʟdR h{FMn4'7O,ɘ6sbCYv\hvEg.Oqxj/$9h.q3Ve 4,(;Of$J!KCJy  6=扮 ;~Y ȸ}ή5ʴJd,X#8-pvΊD9& / WR5'5 pjVROI?x Ŏ-SAf_C/1@Ǝ&e-)pgat7(&"]2 x[{U͕7V/yi;g6-.|(jAtW9>0 ޯEq ].c' eoG^>™F#뉎LeLg=$)d?~+UVl )ln|swwIH]noxnz'޾{v_/͵GQ;-N0 kE'@wkm3d[Jw{pLʝ`pOqUUjʸKfwœJh >'j=ŒQem9&QCN`i}Dnh@RbfFuxrmy] l^\[RѺn=T:S eVTvi ۟Gt+W(ǧPBeh-nдmE~)ǭGsGN7 BݕV>J\a~65wҚ锕iT7HxdE^*Yg { ՜NEp1W*[j!TBݳz#di1R𿿖# {[HܪAGnlaAW  w' ?_PC]h* 3eIQJyD2xa^V4 I_Pm#cL\!{| kۂ2K?':N ܑUkT$ G\I$RRa τ =[;E~NUXwI3}lB:SoLxCIn91t}MϏ4v}X&ήjHk 0D+&62|y1̈́Y$O y2%4=Ȭ-  *V]Nwb>Bcj}=gW:ob2 HQvmarnt g.˕/I1捇AݣܺU3K:Pe1NUD29~}[z : ɵ2$D,j,ѲJIM"sbY 6{I_|8r eyS 64 i2V``|09 GC~AQXÁ{9s,^FdQĉ4DbS[0ϊp`P%C چ䟦1M{4`'M=u=v6#G/]MsYpdlJkrS`\cAk$Q`0^˚qz d<2*ր8+*ʣD QJ$[,FgYA&z "_Lv5.3<2%)d.}T֢|aǓuUO@MUnBNꅄS YVvJ> $]C#!sA Ґzh8Hݷ[2"7}J…_[сl $1 KrB=xЄ`A_lՖ4ҞbS<ə{WJ~=e~![gcܺIP}X91Qϸp$$V+9 ϒf1|y!:5\Qۚ F_Q\D&D]ݓE (Cg@u)MHO~3ܘMHf'CwNwvhB; 8^"Pе]=2YېCva-ҋ24Yw>Lz\m-*FTf'ÜT{"'&a9r25F' HE(wͳWjlHtOj$${ŠԦ[#JRО5:@N319<Ȍbt!HUrxEdsl]R mUstCŬlMsJF=xkByzmOaM,0l(=/S ,?DNvII f"ߴqJX8' #qA " /jx+ˌMڃHfjOQ1ix;M5]~4i dYmnSw-חI n{ fpZ?+8Eu0u]rH44g'GIC y!d^Y'qya!`y^;3&ùEg@S1ۮ8nt JC ;qf d7XSı 򵳤躑.'怔UM!lt1tq\- ^~C*.`_Khs6_`Td}\^崠]Rv.3ͳo-_埖ZdZ` 'O|ѿgBFDc-J NkC/ɐ ҈I }ۘ~nXcH P1$e7x+ҨyXVU[ M9-#+ZPCC@@~T&1]w6SW1lp3ȳTA%O$˽`.D `s^|sh}frn5\iD0E %JJoum?|z*~vO.8B>THyb d%1g14 Xy[u,|+{\fÿ E(*,'mOoDXG>n iD@7ߋP&BAyw ,BZy{U4S4I݄O\1xܦXmDubi9nPгNcCl#mV3|Qn^@Pdn,%OFNcQNlt%Vrc]~VZ ҪTYz-b UaEmx"ίzx-;G̏:BU}M4;3 Vf%PXDb(\ZѲ*YS\մMG5>nX^D|;&4_GwMa;}mIg=4 nV|08OM iߦ3 _3@?zԕ~bYR5dg#'K=m 䝽8xJ)sGd.?ԒwP<06d7 4eiJ4߼\<~@>82쒱.k~1T4+P  =אcf*Qp;0Q;30<{ wxf=ᨭ=F,왒%^v]R#,KR00Fa܃2N+eX].|;9D y딟Ҙ)q]=uuJ ROGS&ؖdzP[20֧IE/c!C;1~TMX\x ,nÙy[p@QZ63O+J2KV tl;j!w$n$ wscuÓ(5rnhep5!u ; H%r dS@!$%@h3:) 9ݐF&7>]=g!] >u.ϣUhʵ|@G0r"^ֲ,ICZ=1rEQ Z]ʓ9+~^vgSS9y~B)`H+J?vJ8&؃<7u?u(7Gsn;j ʛ7#"}v/kX97eWl)yy m'r);lznu琛E]vU )DV *=~v % v•<ʨ_پ83~qWdsF*cd LY A1?Ү EMވ&8:k`oGQGen\l?JtD2N렢jS1# 塉܏(QPuՌPA fK0V~ŏHvZ7o5&&Z CÎ}őghUWdlc;eRjirXx+kM .̟;NAglT/N7iqpBt Bu[n,d*@Xu'CԤ!൬-szm}}ODOμnc)UOXXxJhrZ3m Xm +$OU( ]!Suh-T51?jiY.k( ͣTA2%#蔒}ϴ͓jvmSϑ2Ɛɛ|z;Ms>Nd,B)Qt'tWDTw:hYL5-ۧZDRSQz}[]l[t K.;l+7_ j6ķZPTA%YlubtBΪQ}!8z>*20{7Z"hҰ3ed[/HV"p3,.>b,bWe S,S-\T Wlꅇa/T鰂P?REĢTY^B]Z-zk\uk;*0(GAlW:b{ŜjQz;Xwv*ᒊy . ڛ-x[P!BH:"o{:19Jo;Q\?u z[MҝY"RQvkrҕΔ (z#/Q]JPwvX; Tbp/uvFI#pd1(h<*`{_X R\MFTC ,RtFU#^\IYP)-Ӧ]u{%۞(7fΧke!0u1ι7_?W6كwD*Y66CSmg55~FLCIH^wc!kWic7*#dsNe8bN햠)NwgwR4xV37/ދ=[֊P;tR=E?6c lś"s±%߹q.!UfflPMGT_FY 6:V#jA>eZ{  svLWw72Ǯl$cM[aEU){1]P 1&+M=%S آB1ٕ i~s-gz%91!9Τ<>%  ;}Dro{化YHV7H\y`T{;ySKWRg#geKg/(=Uu;O9Pz#7&껡9QJs޶fqGb~tKc2|rsJae&FwX|P  c$Ȁ.Ipˏ.3'?o w xc8^bT$xվ-iX ggY2ٺғPʧ ~99'579;! /AWMV@Q4qYp|?<XfIG D}ӷz SaCZr0wk=|*_Z"n܅;7?&͎Ԍ{21MX;KYW44 fƊ8cZCG!"~DzZOc~'>vtB%2ǗR`J/8E ?=ZQJd&'S;N96HpRm *A1İx2t(YItu}Gq_yȘXPTw'3C HZc:֭x3[`t}z!ٓÐ(ի4ؠ U n1fȞB&-CkOՃd_F[B4WGPbȥ;7@3>3߆۰î\ Jww4 K}DnWafMx4sp+pfk޴#0^ͼ՝fbۋB4giF^#{jrMA}D: v6к׹Hvj6}p%g] 5Ʒ2~.hV/s.Mz:dWz,lg!~7Ce/u$Vҫ9b7}OP8j ozUu\KFua2\FXoV2vBK` e~7Vn\L{녲uHs5g?UǚV{BE^Y]p=x)X}GZ:[ߪb bd(4Pzvoó&@+$b>諸"z(wr8[eE9FWbLi y8v\ +@ hj꽕 ^Bfgap٣ T@jДԤ*ЊEbT@!0$f9Cs0lM5Ecat v;)UZ?8XCpHҕߍּX;lΜeN BB1` ie&phyg-ݿlqF`K!{y%כ62(0Sw4zӃ^Czi1>E?־`aY[K(M'Jˁ[T RX9Ϻu`R3YMdbRNq-mOBMHwH|d" X϶!n)a]--)Z',Qڱ"n~ ;f{eFY{ b q"P."^0oGݳQ\ ?g5`N$WǘY9d'0/0+c|.΋̜qԹvJK7j>+\@ dbUkn&WMp[cUYj"0(1GŁhJ nR%I%y@Gw62|S * ~ ߷%D!3]Ґ)!%R+: q=8>k2);?'#mkǴ NIgnť\ 2]Ww%T_ݷ^M`=P>f:jm틾b}7bHг"QL!hDnetfTߢ5ݞN6mUsJl˦tb]:F]u|HH =Yt8%H6{_kZ&"0 Ib ~XCkB2?␼EH,n{egP6NlXoe018e'yXpMȬǠ,V RsƘ{EqJFυ"3]ȕSSx`z ۱JY5.C%?uKObmhzhmܙ.w\^5|>X9:ħD$mYHLֆVUMhEC1|| X{C}iۑp= ://!c=ygQ0{ ~G+2t?Rv$~ HTT2#XR#ƣǙ*qڞoG|q7o`N!I.@.ұKE%ѽ\@l)cC̘Vzx: 7@-xEz+ĀKm+Rqp溽D7ifCDKψ=#Dž`%sQP qP ^V%ƭYM%upa /0C{s+}bx&$s`LE,H !0z@$uШA4VЎM R'(XKُ",R\;b 5 a ӱpV[7Ϝk:Z+~I5zu.^M5 :3o F+mbҖ<]zQ5͆`Wnm譝D_ӞV:%"*]:e)6(#jLא})5j=!TDLumٯ<697m28rBuIC/6ѪKI U)*tRAK.@#H[߼t |u94/T?q |=:t Q)Yxi,Qך' oR߇Dvו3j lӽxD@Ps'"7\fMNrCUKg ryYZf.;I(+33Ԡ%8 w - &Q5 ˆ{";<[[L\lmJLMoSNae ;$}'OAqHQ,G<jhu{"U2e(aE,!]R&:ќ^;i*;bskPwt&\" })r,,I 0*xfO͠9η-D cd1c]yqBrJjzUMw@7S ,m#ɍQơ7$Ͼ퉇M)T$"وs+39{.aCi7SQF}/i1lATZd v CGA"Gv%ZW Y4.~,_8iJ.k,<7HTb h0jU?CV7dFy'bGtTIU{sls&MԳ$ک.hyًW0ǔ#2 ,!S"~f10,޿p 2D_QK TS;eEG Ǔu$mmAAYtOLЬmhO1ț+_;n_N?㬣1"aMgzz4l }r5/^&J>Z@7/,5Qݨj0k\U(SDOT<(ex[ؾi\AT\ӗǎҷ=ZRO9U]CG-O׍Qeq3 xPU2A:Հ5GUϔz#6 ZQmԎЂbq@ 6:MLaG nxO V;4J I(Aoɹ/7>Ι$-ħ| L1ՊX.\,x2\8Hi,?,/88/}5s7T#.xZ;s{[[U8Mn&مhGjoyRȂkݩ!S1~6Q+ @pEJ;#u+O.E5 [zdRexLNV(wb{e,p ٺ_FRH2Gg&8a素p6\ Zיs7,u.R8.z)M&uϞB_Z\)V#U.JLhQb 6ೂP2 ~x«>E2˽0H[Ix'2V:K(bx >OE̯{Hb &-=CA+A)Ćt7A󴣀33V"HpV/xY'idzϬEqp!LN+C=E35qMՌ:cYwy%m=h@q ̃_IuX:zi5@Y6sHpgvO$P;WJc)Ǟwgt!ŴZ$gG>e(j:]\X+V+ELGksb21F@Cd <@MDĿUC׽E_ܨPF~nfTbzG'>v{&ۥf[)OX,_4mx'(ݹxRlvySfKۃPi_")Yq=n@P_ݦ:G$Kgk#QU3!TX%)gAZW=IGHf㋋5(HπD:S̺@hڙPr)!3`3-Ii nҠzc PqnÉx"\\TdЯ4C(J G߽= k)wxla$<$1]^ yv@(=HvJKqPRmV.53v>am&(\6B g / t'0-~ux 7_!x#k(d[UHw VصG1{78.@-'"D@CrZC~3#'{yvg<<^eþJj<57!T4D4)'l@.MJlhi|_E@?:&n(dƪhjF[!o-_SOpϻO(ebel"e[ԬyI= MaWw|2l@`wp5k+HL^0}4aq%-cOubr̤l n xԤT#{s rIÜ?ZU  s_ ڹHͨaC݄iAC:X{:m=CO3> k ɷ)UO&n,j](-,a>˸ldBcf7ӞKi%, LY/uqmO)yɴ#()gjSNk8UeHJ^z Ufw8:e68wR"f\(!R8@P.tBˈO&Ϊ!b&L.aEɅ7vp^"m#"r %"\YHѮ>`/R]D%Ud:`8a9WbwfW%p")pkVE g 0ʩ$  dxz/q4GL=vDD^+9h)u/#=n1(L8 l{Ӗq5$:2 ̢n]9"l||Gk 0ͮ0ڦXȉ!0D|M.i<:(e9u629NHj}΍.57-`N\\gE GOk1tc,9 qŌU5K[myRpt#[gm| "k#,9\R',;  D7U@Mac(BhB̥)Y ~L Ϸt9CպH <3E.aCZS db wvִUp^) 6pڗu{Lm=١[AE[d8y1ViT.WRxȤ>223L4mG;I Si(h2_mӤK7]a\g)ŤY%&J~biB 'p h|1#Qxa1T4s&լdSnL`Y0V֤4=_ iۂ}[ \QC<{> Ya}*ba*0_^h΄XGb@hBskycUy$_5bhlkIsFYM *v\5@7)7{n%KcMm?oJdybncH#ɲAmXDADviWno  |y؜V-= Es!:&.b]y13DgtD\8y3#6pᎈ{w{; !s%Pp"~Y ?ɣL1B=(ÚGdl9*W(uuZݫȊeOQ 7Y`691B{Y)QҬNτ:DID\:NӂvlrQ &"[[;ξTX@ޱse ⍫Ϣk' U{S_Q*zf]A޻Xn<)\]|ou % wg.TmKy (퓐l]eJ?θ:E=]t㧇SWv*bDIe>)n%DZ/[|\ yT&%.%6Cb5Wz/~ߩ*ta:٤HAa?}QIyŸo߆uOHr¥A0_*2 tN)JIL((`! 'pNϙB=@z@\MECxD8W vm¢UQJMf7k>6$vHڰH^gK0]aHn?(c`;0a(WA"m8kJS^Qd BWoB%e792HにihT@/HVQ~:Iu?B:t9IzQn(9[Jc]Jq8zr[u  e3RX/ ʖ7v&W&4M u(xH]ݸ UǐaL;+{,C Ϲe,Z-FoۭR#$Z%fB|/fv *|zmy? !rvvqp}(]IJA_!F48T9B:$6Eڲ;O3*_ئ/j5Q#JA05ZyV#s' vJR9cTBC-h<|YVG(IiAտ;aT.oXᣆ ER}L8` dŹMME2 GƗ)+_{r ҇}Fy:n&i^b6Mn%;"z s*S@ ǃ7rv#67V :w47o)J)+%tY&`fTZ/Twf"~8 ({":T?/uze:t PZ )t`* g#>6zӎM4@;zĹ%J? z0R*Rdm޺;_ރ%Ms fQ pJVвneհat w i_) VCS{vy%H5+:m^ñ r-:aʓlXnw1Aj3F~IѺ.)5HNMas|a,y#. Ǹ\]~*J>M8 3̨I 9w7]+0l>ADާ+`9r5{=jD 8Sie9օwZh aOՠB17ӿu`j==WS}b 4xS< XZ.@uv(k#iY4W.ɤ#inW5E'&J4 NLT7RMA RxLcH ۜ/PK0Fe$B@aA)ʤAtgavbE V?67@CZrhGI"/HY5cNoGuvhtRw#<q뢸m_I l(dVV!F5ytKb;(p7c" UA楿I7`Tb;v;G,} )m<"KBA?h>2]o4``d&d_9$@w8CϙҘ IB9{N];i_Wz&"Z#@,.]4o/En@;EW@_*nͤе;ek?v9d_D鳅(LpZęXD9 D%\TY ثij0nP!_ػ4c5NԤ*p'Q3xe&EMEЫ[afMp]h ZpT a.2HxZ|K>* ʯp_o*X84%|]Qp\3ՑIX^|c^慔d/+RLqX}hb,lrf?m^ڝzP9?[-5KKZ!-S93g E&?Z8}|7 Jຆ:%l HYt _ ӑ/ ($CަW ,y};-?]6q]<8)@ְ.<[-KN%Xs1ҽ+i&H[`H}k//yol,S|Km۵X[Ƒ gUA˞oQy լlC:q鎼S0Pkrv;8qADߝCmin=P+U˛A{]i*ܼ?wyٷ/4 m<'\糆l"U"e$zϢkML+Wj},I0,OH -*i~NyCbuzI-S<44( $ >xm8=B*.'TpռLo e僒-\!>8hX?@VnMYac% uʔv`2yM s34w+ v $`J0:9w^V!*EK~L/1𑼣Aπپ ԃ5k#ꃭtiGgb0(?\<; &QRg6NzO j8 JLfYD8\W̶`u@uq1ӪX4!k:ctstKLg(['5'ih  ӱC|ՂaO*  NOuЄ._a0zA}ufA w{9o B7_|< VQWf4[Mo0&AvA fj~]ٍf7DW\n!^伌tf/5II"M?oy3Zig-_;51o]7T- G fv^e=NEiՂԱ&P(ꮡޯR<_W1!4^&,Ez.Us!ӕY?8Ac'n;-8,1ӛ Gߠe RJv)i)};+Rb9@=?툎v ܠT&6HSc=u&m] <?E!(۠?D/,ɸ5Z%&һGM 5M;MAL>6R&{ p>dM"@7GRY+YI ` 9*o<ünJm5#H;tʡt*oIj$ws0 c.-|0e8ZlgcQz;/dw&tQW =_gcˤ+3sPP{lq`Xaz~#$2GF*CraW@ #UltniVLC b/Ю& i b3OW 5LF?\|`+4 y=;y;0IaahyzL_!1$q:07F%"(%mu V v)kjhRX+c Y/b ;Ń!|^pJm 8Tq=3"A BMVX}w;>`w CoELy´{@'ڕI`-P[ jh壳sPNP:?:8[qKj}ܴrF[ V#Lc*`2gEϡ,Nsc9ׅJ%CL]؀n XpCn!x{;i]R(VX5F}ZF K333"?FD0]{Tb³xd{y(05NYTì笁@ f?s\>B V-!y<ºs `JxEu\A\ŒNy%!taA̧Ɏ5&((btН(Л|āAĠƄ:FAb#iH~nN-Jcݕ=6 /LٙL"4frb’NJi> Pq$ЂFLT$?(r֏-,ޡk/|6*.ǡ 0$>qy`1)|v{Fw{V,Lyhk4{ZV#ǿT_?F=mM,bo/m׼vwJsSCDTlQQ3z|OVImz',? x``(uVIb57^x4)Jg'H k.#&s;M_;/kM4G_3*ce@F-\92 m @~d~v۲mPRHGJ9>Cy,V;BeԖ(UDzm^m>E`kA}i1qK"ZOx*YbkT#vw@J ~uxU"L3{?rBթ-c8#%mC71b*-Ru#$Ou7(W;א O c<;LzaȈv}zH\^JN! Ś02Öu?]D̽ &ķ|%ʴ|ۘ{='8^Z,~uؐ 72v+ˈN|(ɒ}}q#ĞSyh!nN2 _MNHHܘuPT׾_# QSrkzԉsFzYx9rޏVѺ8j@tDOԇRg0dɶ:7-8ޭΈnԹ'NB!D%qpܰN˒ f_*]DY'Y[(c-Uw4q4F!$N|ޫ" "[˘!EDT4X")P@C} <t0dlM3*&W 1j&Z[`/=Bh6_x'…"YP&1iu< kKJ #?Wr,( 8[glaMY`+0’ߕM0 /T:oXm#G6jĊh@ /'6#q} ~ 9-}cZ"[,_aTl}0u/ /leN ZپH6.?һzOd,>48=RVEBEbqҬ#-+`-69w6JAok. nV܄7P?qD(1io^(2yHcʼnZ}ĥT> Ԥ״ʳo;27mLx]}qL %RV>&(Zqz©v܋]Oa;U,T5A)O֦7iK dK%5}܄Y:"FCqwr0oj6N*$GN-u7\a;gߩ68p/Z~Sa5 :DZYCi!g h,٣190p JP~#hK}`j @%٠3 $Mr&s2*An=S}QV3V#SBrovۭ du${>̜g !S4 V{%P #FH< [OsꃐcuO.儒:#6n \q:!a^B%IhV\qlϹR@>l?d^(M%`([{MliV{V rqdzN]XMm))D"!?8i_VbC>AGmpUqL9-#&f. eBT(Bo t\MXQH #3׿ |`D7kKtt7LF"dwyԶqx$elYXC 7d2,N  o>WzV`A洌~Z%o(NgQ+T֕4M"wA&Y8]JSEsv&ysa׫-_8c.UR@ZL h25EwCzKOIBǖȄ]ӘF(q̑aϤB4IEҶT /Qi׬?(( 2sOE;Y _ԦC#on'orL $L[W@"AF򽐝ْ3bɀ-0#wr*k0$ \viK r9kk\zmss>q@Mwe978[mҹn[2i=J|WhGEAi/O8ԍ#G)I`; N4ߪe(qsgu$Lay ngEBJR<@Յ׃+Jct:kۑ k1IqZ!ӎѥ!!Sq7htN'V)h8j8Q/eWJVl7 uUgTR(,˼]^ OK$j))r3X?ߨlD`~[A,&%|*q/~,#\ANnlc4W0rω+ԫ-?d0ˋʂ\5@IkS CwbSKܸECI쎳1=0YbkdV3B" B˸D<n)t[.l51X-َFܺ-ܧ/3Լg')S* :!0)$5!*WbnT t|_c5 H3&`6F\`4)Mi3֪ݨ^m9ۦoa+% >\sUv`ȏ/ ltr>#,qepHϞs*ml2vyRs*Hj}܋z]ʇ[ )}c.b 9{*X!ꁣ1DӫiG_qi^I*ȾTUDq`A\9*kiCMG_P |f ( 1_0nM,1W (?헽to>mddf"prY hohiF^\`}8lN䃤gj[Pz0g~#K!;uǓ2#S,Kc8#\mfcwvEe""1ȵ*?vnA +Y&oSTn.w"Nnig5l"rV)ҩ{_g="?{7(ԟgaby|](%LvYKG/jx6EOmRD%g}\F!x\CJ)?N}_e]p2\1e=_\Lb? K2a#针&eL[,59d$cqY@b5XI8hY=Nx0' a>}z/>ͮP25(zX(0q+ r0|1\*{@΍ l wSe便R|4M۶JBM\@^.2,6P8WqzMǎgJ e. tI7Zt n(^[yS擡0@݁k z)$3#2 &>es=o]R>2B=4;ڋ&׉֖[)[ >;N??'!U.+LjB7։+S4s4oބ=1yW ](\9}$p9,בE'}NF^N|ը`mf‡(r~fO.1 c? !F7Y?LbqomETIIޝ< 11֮tdՖ6= 8kC"mS\3WM$VTo8!'C]LЁ U> Skv2R/im 뮆U;ԗ۸-kj`\wxo/Ec;=9.:D) J!!(,,EO,Ɇ]iOִ%`Vѷլ)WgWbwm&/ƈgfL/ !H*@S{eK0(u.d('B1^Nߪ*2)hݬo7lz N"? -JN\\omHGVv~3"Ln%.#/:!Ot>nows.gc,lE$<մ2}~#zK5_MMj^Mwe`nnޗ2߽QnH4)ϼt^C`q~Y&QsG)REk!೫Y2RY&|`.aJ/O.ZxxP@Pmw!7$$xPM6C\[ȑLfudRp`䞣[Lg'u{{d]gm0 YЖoj,,m?M{p+w-ݨˁeߩ$j4U23]k1o\@G\Ms<>Zdd[]sa:5=AW't:-_Rx>9,к.(e8Ѯ_zr-P7ۯ虙BRLﳏOn+M.{Q_K{eȈ|zdq*`E c޳5v"m np75EP 7kCd5f2`k/R08`^xڍ 8[$S?cڎK5 ʬHЖi6/a48xmRVөUƲb.QO%{=4 QeU} wWhX\x[%H>_?|g !ΦxxX zS' aqHo9\W3r,ѧbTɉ1ϱE'OI3Y؛pz_*-]j~/"\P ,\g} :g^vY}aO-d*0[ܿ%A΋bޡ~ D5$no r.XN?- rA<1Gmo⍆ + (V~5/7xM:0[26DVzqJdݨ) eQ.DlJ(ZG1ǎ{/{ڥ-)i:1O T6jnJJu$N/4#K1vE/ܪ.u MgaN@N ]z,rʼT_Xp!Zr6{mMA5uk7W(%Wj|Z4H&: MpTM*sߪ:HЖź44u7qPU>VEŮg7ԁKz:L9z(ӳy`bDYϾ>a31a=D^Xd?'sLP\ΏUI(.(n)hYۢ>a6 ^&)h1D {ꕄF 2壃vg1eg>c }@b =`ϟ٘V#2㝌 W&I]XYT39gcLtPZcN yK'ZlO0Ec: X6y<ƣpżHzfp=!<_q sɏ<~O8e/LEVP7X*^CtFaZU`8:+z,5րx?*C͗N NZALɸ-*K3Lv*6,Jj=Q^VgCոoɏϊD*չqmZ[ FO2#@ir 'ڇW_~˳ZPccUJu_lb㓾h2͎ã$ $ h@t_Sτ \ŞeϥcjZ>q] "[SfD^Aݼ{dHHPߪyj>.-6$ۮQv/ ^=Sty l~JS"F-.*#CTÞ_`06 b>xF^H"%Ier8bw6C#MS#CG%nK_lH pkE}Mg@/2=j=fy9.iXI.S{:iVFA%n@J"/DTC,pZ{+ĐQ/O[Q(rkhX}U }fazĒkEx(y`J:6fǽ4w+#ܻ[ƹ z&^4TeP0}44V`]ߑG]D.wWpbU[5׵ J9urgXfu"y?GP]ir˴Lu933!4D8M0L!e[ .$ b(w5&haZS q3-CPXRqfc0c:+ X5 J/Ȍ>(Pl- %0^t2[11t 2"J'q0Dc 75nM.c&**1>] V)^RNrałqt¹G{Mc?2 y40KXD/ֆOAmZc줌Mp% gHVg8Jh L&dԧXFdqWVp䠞/t&ĽdI@O#!nZ") :8=ns"5(xO-9%4)`J"R.x`Epw/Fs*,g'-+uW;SI'ȡSUۃCqV*Nj}h-+ZF|I4=^CJpةЫY841-yIϋŵ15'ԨۿK vvgQO/>>l6!pyl9b-' 7v_ؘ:βdιT(s_jĄ(K\r;:=`wAU< K}\l؄z3L+t}_d82nttrAđu5@u:##װ-D~TNU hSy$"o,F#%q/ X9\,lSj$U a\v>ӄo򺡯)$!Wozv:<GS:ND'Jcb?;aD̥:g*ȣPm}8I 2_\LiG>7F)WeFJ;L-칟])<̱=鉮k2ay1#v*zxX86dE %JNFĭdn-ORv]qB-4C9[͊%{ł:.HqFkap{dc k2 Ǽ;pM ͫY n {9*mҽ"\XS x!etA=w>Y*W Idө_3.Tip-=g[}<9]tcS`3˃ܒbdeR8  IDcgremgzOracrtQAߢw+uwYX~DT G 0-?nY 9Da!4Z}] dP| "X v=Hi?M !i[Dٺߟ_zٺuI.ngv1ntKv|}?m} 7.[Pf/jK9r^mv2 ]գ_e{ YgFŵ*"oq)!I 0LQH%M?wg/v]& @̷*ʳRZO 1Ha-5&q%G#_5FAbdga%Ein N fd4~.V׽Q&/㹶/:~ ShU=f2,,HN~'vڂ~w[dַ2"Rjv~a*^!#kS^\N<,ՔjZ@vc\E~V@|GhIX3)1S5řFUc97zz`~Q F|nodXWWY˴k"oD~UEK LB./P:Ù=v@SIWFr8&5ŶG=;͔6,Wa7,4juƧus__j0p$dKnjT4Rfvv['$2^R;w Lq>Ef{N]/(\wȕ='\V&!+YH>jyeJQ%1#+i?^eqϒVց)f>#$?R`{Z߶eM Lc a[LGFAo*mlj_&.rvR'm eá\ |n''%sHm*q%AR^edҼN:L,Rؘ6z^XhKp*]_ttoΩ9 [R6v/dW5u>ݤ0UIG*'TXwzLbU3u3^N^y~z:g+hu8?_@LRo^ 5u*w2鵺d7'Bq#HN6Ԛ(/o|)s)%؞|P>F@5JCݱUp]g Kė꘵e4i  i P?߫1Ӫ I9RNؕt$ c:{#k)0&2ě# F>v10Lout>.U^/,.ȶE??cw Jp+1*:|Zy꽐.]Yv Bd1hL^\R$hZWbz0AxϞ$8 (~DIl}#ʒκQ[$48N,|_?PƠw?I* ~%wEM^Uc <_!pAx?! hS9G=;JsdI@[ǖIt,EG|vtls/>@>Y 'HJXB/.BuyLne5bp @ӻsE}7VlǙugl''nr-<C!6֣FSl^A5`dgƏ +:XŢA\B$Dx$媻Ƹ߰H|jЌWǥq}p3"`ZpddDuѬ\'/S# !E;S t="u3 ʎ< _"4>+P&ߑ[#ٳZly6 ,q+ 86?!a Ηxkό~%~!Ʈw jLaHą*,'zLh) Soi\28B D@[q(3F!h>A0HhD?_sL.ix=]td08=ؙ\K (_wg @8d4Y2sM8&Aŧ&̈F@wڐui@aK)QEEʓɢ*c>IoV'Jvq2g2D u^d6n#֡4i3Y $c>?>Bl]thuqO&,c=vW4@l.=Z1qa:oT(NiSR9?d"?kGkeف!B jHVݮ+s?I!HˋbU)-YZE>3~kqB|?Ug ĖK;r"4XÐ [f p1Xw/8pS/Zozw~^^Z]VE흐Dq㜠H_wnx^K7Bۨi31?y{dYl{iFjJ^Zs럼*cΧd: Մ3lB6![nb}/n9¥F৒Y#"zrmO̓]W\By.?o %y~6R&j%jQ5kl ^9rȈ(}ks+\[W9IJZ?wXL*/:*1o%=ͺ9 )mW$Riޢ1lg?]A/Ws<໥0o KPKPd[>Wx]S6[!<6@ F}.fSI-r!z"(ī^jq=>kw|LcF߅M>~Db}8p>v&^EePJb>B^e/߷+uARKTerMDf[sUd;90 U"Q:E3Ι2Dم O4B Nsgk(tGf^.e#"+Kix{ @*Z,0CJjI͉qKj)Օf͔| _v,rd{d[ڭTj7zSp$Px9Ǐ1|[8HYvm`C=}?ֶs46Vɶ<*:{8FGm, ҙ8^P5]ΰyN]iS#?bWiVd-6RXEdi+"Ś҂R0z˝ KEDHUrǠdhՆ\As,0H]YF-tqOJߵ dˑq%q[;9zuӼcoc^.%e7Me~YF o h\}JwIb^;Y{}Z:CaLH6&ŊB_[uIYaDae` ˛, "3?Q& [j+yDs5z2дl~5T6sdpMLQ P"LS4KzL#Wu K6S\r/^qNuqIh0Ɇ2R,!O2WjIh)Dy5$/&I:Y1Sc8fJ׭oN͌BMAC;b]uFJ;: qK A&a7CIxfHbsIWRXx y` ljוdYDŽҕ͸x`W«S6FR|BycM+%O`9s7wp!' 8bߌqo8W*_9[%rMZ1^VKP@UƍmG ff@5.y$=H0@pì A'C`% dY^de U@jKr4v?g8sKFTh8x3mA0޸G. }Ȧ$S6ڄۧS$s ™zwlr4&ww] R@GA$g9P6,'ZEiԨT,ʙWG IJGxnQpӰ?p/]0;Ku DbA exH[>)ɡ AxRWm&OErnaR ^@4CXp̘t}:I`=W8iذG8 K\I~Y!pKG2$%rZSh@q\mP^3Fyʚ5$\Љiqe5uy~Ϸr ַtVrw\|=0(I&օf^bʂ".P&5GKrg5O-sDz~ A,oF!2&* ??/?- +I[5ja7y-|8#; 6Ux20 toKKxvYhC.i1}75vO0׋z|pe/>SBq4AإEmw'9}T 7TIHmytQz34T^}g~gpԼwXoRtF.a;{T#Xg -jw'LyZ1Dp6%$[<@^Զ&+&]QT֧ٞtK9[CZ(9rLي^.$t ygC b= ád .E02aQQRhOm@\; ]-f\NSH[%}ohQ'!^6* UaO0)0 pdܞ#3#%6kj937԰ȅyOle[t 4a(I$vaJ9t"huI}Gخn@HѤev0_ƷBhqНRfb%HWʶ{GMW1H °)T#zK5~a~)y3oEaHy4&@eZ; 8ϕX#2 N@-M4 ( zαxD8xYAHv\¸-ثIVԁm}FN$PvzDŽբAaǣ0ͽ|5J-o'Bah鼊6V( pTNeZL`0dӻg8'g8i+,;oj7 RxgVR ≇<:Y9 {'0+Fx(p>/b6'008F2w߯;H.E:\+tQ(,ǘ_'mf',raԍkX^6:z`3qYJ2f"hSuj{V% _  6ם]"*yrKt1GS.07@co;st/xU95( ۢMJZ\ގ&Jd:LMV$ӹ8'/bh$PzwaNfCh7moT\M_U]w@P6 ݽ&KitؕrX@yWvY&Yӡed4 JJRIbX>e |fS*kԙKwhǪ/"M;W1 Pr:d􃩗+s}b)ђOO]h$N;qH)hP#f]B&S:\JmI`NG5?e[9JIIR,Z6= RtW}eۈxlQе:pn_vU HU u\Oj D'iW W^Wf+*h>R+yثpvW dކK8B=; ".R,p8}JMnlI>hP{95Ck @o<+<`LBJ(5rЛ=#A g/r*H␥Os^,#;qC5~]iM7@Mtمq naǴ!h kn2n%^P.%lZ=G{)pizW"v L[I-\exz- |FX2^W< AgU^+ 8 tUpT9Z"z >{$#]}uw#&k;t=8=>'*abM=.OЕXA]Ac&ݾTS&1gGo͌슇-'Xd 5> r}es'p/ Tܲ7JT -8\H'{P\-l6(j:nr,1u%;J $Jg2x~RlVX vK{o 'M;hſ BQbMM/V$Bi 4EX(O>m)>:_bSrb^O$]aեt)!- ucPĬU 柒Q8挨*T=^D߉r=՘,]pT8ׂ,1ABJuA=q5z|RIe7^J@o_y["1\ͱq:DFR/HEĂ V>mʞع_C:2͝)Zv :.ұ!jw"F ᤎP{Akyz B0+O5%[ xhV}3ywȋ40֣ 3Kq6 =aJƝ=6߄\#]H GOEqjw>[b-/6J˗jc=[ Utu2* `|kLI1tm9/* s:ռΜpx\E'ޟW=-t8.8 _R8yT7EAR#x9*>S6ZFdu=Io/Ei5!jY1>rStɪpbVS3e-C]U P,%7f7૥|ˉ|3ݘ:jNՖ AЈ^nFC/1GMd/g yM`ԓ"lu77 Ft0J1E>}I`=KvMΉW_SD3_訚%Xp=X+5#zrGOD}5pl`"'60a͚XC}u}EB^ٝ'tIP̓py;kRZE%/rlӦg,BIq)qOVVPC eT~zR?*ٲHp[?O_B'JVzYy < L︿  nLu (`}:OECsάiPF0 'z}zV5Vs;Oghh۹̳fz8 Ȫ9~czoqhpS@8|8dS~pwU: ,|>aF,*m)mZ= jysx*j}ʠ8Ϟ]9C/^fVY_u G!hR(+'L.ɧInLYO\E좽Ul~Up܄XQJhhG#aY׻bo?.nYnl7ZY^aV|G1/CwBn{w-LshWn/En/vJ qTPOb"Rhk kj^~sxPO&aB ›7ZF$>z6bkY Ea5F ]dzw,롸%g\G- bЖXCs!r"y;rEj8gS e',Di J~GQ_A,'NxJQW+qt.^xfQn*S%Q.L1b~o}buljFXv?7ʥ`xGfHsfn{˄[˃\~ y҄"m=EmAb`aȰ@ڎ 5)hpmvbd# ru"fZguXo–J1sItJTo,𦪌fMO)t02;zBjs *s;w Tޡ86kR8 fΌ& {i~g=ÕV1*;XIfaX*Y`OD눐2v!hzɊ_](_tK*4aBM#Š-YyC %l;3o^Ӣ U4[>ZKMYt(1%5 xŒִ\KxŝAèqFFvΕ]hߜЦOZ{P-r"G)B_x}Ơ4苀ݧ :ESEߛ[u: /Wmi0~ 1Uܤo<`g2t~ljLhW]/SKf~HYf-C͑%H%j8Fo}zHIiwMδ-,ro 7ADIhhɲF!3NM0?C)xϼ\`汥Z~9 2W=kv^;wGϔ[cw?}HӅҜ͈|J:G~A{i(ø%u>.aRqL~_")w5e +T*p:gwp~f-fxA$^b~=![%LDH)ON.x 6Fbz-HaUpxtoCz?@s;chj7J9c LK29, [Zs|QvYdjY2R=6U'FZwS皞x|GSwXt 08dg@C@wZ%>˶V]xr_ {IB$$@1nEGXe3XlJV7G+Lq;@3q,`8#0݁Ri\ ^V{8B l (f+#uF(|SLǓ+;*3X`1 "dZ˾y.8ǿ\G7i%{TXv⿛lDJk^%̨^!z *ECt;|H|:1z,_c>Bw`k<4uRDD&ab#|W[&mm0,)϶[pgY ~eꞖuQ]i1iT ~aLxgH!ayH;Ҙ:v7;E1aZhSr,g>a\*WiGȿ7: e0ؘsXd@*0C5CyiyXЍ?K؊_|,h;HԘ!գ?~%J w_ ʨ@aT.0}f,E{,f4*N3 1 fU%O疐 $T# ʕt|9iD]]?fjQf#!(MiS> fwʘ]BJ~e@U7gZIҒДʩ`!:f%V=Al8BݐwC|QgشnxuNRڞ*lB C!Q@_hR` ?n(" y[\Ep=eUOaoPT(Л'ۯ _Rr\ef`rE˜g.nQ$bnU/9'WgE/K߻?j?2L1v`=V iPzồ]\AnjgHtlҒuc4m"-#}Slå }05#0?6ӕ$[u z)`UPŅWB.;o+G0w~J@ xkRg p@\ry!4p[; XQ568^:2aISe[ b%EO N#lr+ڇ\$]:V|#H7i~J;g݆ҬM(AcV׫A\CugZS/ 4̍z&5o4t{奋 =ϛhɳM?q )2Ȓ$ ƤʹOwh'++tͨ:6!IN5Թ28EEOhŮ\YE%f&SZhb"J\0D}l6ңzkJ84 D17az:֕To;4Zdң~HX#B"=*9%6dn@]tЅF儥[%@WoJ[o\&^d-1ncK =a ^ON ~u.ۉ " g*#fˠkΗ|=HLL>:CAR<;0 S”4+2` ӥ7Ϗ4/-(Vp E<~2e:ήCk1P| ~T19GJ撞$)D~WpB~ƤΩļANvjq.FU?C*Qi[I8U4'-i!"eSCH##>"!IY Ŗz;ej)L49az6@8\j,W0ÿka(ŲN:4I^Ɏrcf`A? ܛxTm?l(o,uvùvC$  IOD~ZJ'J7 =~n |FJ2aveqwD(Ĭx$_1ɾG_>4xrr{dZ;q~` ɳj-{Vfm@*P(օ(!7 OX-W(Z ?(Gi30Eȱg~e \~im,23 <1yIȋcb쐧wq:,}A؜T(_/c Ɂ+wiwo@m9OhGL‹|4,Iڼל]CJvbuy1C0 Ǿt" (DV*ZD9\!܎m"z{a$l)Jm ;&U> Nt~Lx4G%K*V}1Y6j+$&fjr_E;~Mz8ѾT羦=YB9,(a'Ҭ& P.@~gr c/i3mh?ZАշ'lsJߚCGߋ*J@Zۈ;m69c->x'G"нS^NTJ6;p lflil3On08EMn ,.(N١?VJI?bC3.F9pQ `Ru߷Z3?މ;rP.G+f5t L%0`sӷXy[zHSfbvq]]Lݲ0'-Qmn}r虠fGI$ISA( UvV25L ,<{%? buʴm0ifEy6S'ilJڍ~FTsbw¥Y~s( @MM{{f /!Fh䬯s(w]P@n% :eԼhXU%<컰V_җ;CQkh$-wǘyxqE(g_8ݒwgvL}/c5/zD 8rlӔfKş8#.۷Ձs"7w;,[ȭu4{wF_{Iާ|dV]❤Tޡ*)uϼThIʺU5>M )_)#8 Emwc5>V=>wԗa~>0o;T&f&W"늜HSuv6f pZr4>db8*' 3fU~VKKfX -=v8dnyE?o|`WyA%FSK9:/ i m-K}ә(?9+k,^~q̈́5u@K?}#Pwܪjy(*S6'2Mv2dy|`hQj6nb k;%E+o6k+.O09#;i~m y;jx7Պ[qRY:A7c06[y裛]E=K 8Bs'Kڄ6f;fGEHF 6̾>[4jbl?Ô#YAQelB'8?x֬?B+wiQ B<'v SQZ^3 PTEZoa{VM AM{ev~`]AžXTX=v/Io iۊR_FbiXiռL.Rb'ZTM%ìʴ%TAs|άWnkĩ ;mDŽ 6 Mw&+ɩ@˫nFC[JzزBR~BkPcF!^q#(~n mGw.4Sb"i12HqBL,g{_Y"DfU4 = FE#!ZI]hC!oWWYruqi'?B[C) uRK3-~y|Dq2qi}5Y0۞}؀IvԃFn C's'(ͲcX@tW[90#'P;zq!PGj4ljYCUbt5Dxrm5'(?p |P2 aeuX1StH /\X14Ki>AG 74 n}IiCQLݶPyE)Oy-TNVr@O l9դ h{ΕӀ0:o1莞)gJ;خ2ab@gztV0vؽ*T@Tv:칡Y>[X Uo#}1IbN JᆰOS FtJAMEg&kÿF/h/E(ꎄ1eY=ˑrRhf_@|ԨTe ދZw|êzϙkn#9BJkȏh۠tr֜6oik3I73lkcϦA6밡A#U^[-ʘ@eTux@zzr ^jOw`"uP VB5 8s~l4(J#/i/yt?0/3ҰWeΰiNL-G9,N7h؉hP{M_iɂvrdEddۍnH.AO)Fj#-] 43\LUjuYp3&BR;'=`ՎSt2 (&>Q2j z7w75[qDsz{HD--BGpvO~ia& ~,MA='fjtS1KNϱ*c5]qҍeUM-Ddv@ $}490Y.ahd]sΈbm%"P'ZjEVE#x9).ԚA,3MW`1 wP5֠}G R΃tL3NY@]T Noˑ¬ p . }ߑr#K'x-|$t pI%C&#RFZXjog[rËuS ?a->|݌ӋKqǷyHe%/Xb!(H- ۗTd'fFQ2,hM&R+2o=H8of(4-"v%PŘ.k ޽};L{Lgf@ބL}- ëP?٤3]ȍc IRQ1O^y=l=Ps]5IhxBc-{)mpVt'[0Wnj>kAÌIBt}a]x' ޼kdzDGY}Xe ȩ'i;$=$W(vLr !smx\o ɖW:+/ሉУ4#>j^94s!# 0L~BI%/=p1GT'3žJ f% s!fg P \4 e4!^9 ü֊Vo6s8iЛW)ҶgpR"QiKk|#^]j_խ-iѐZSH/BMF]abksKp>M}oO_5 !8 >اXY"O.N2Ev`9Rk1 Mv%%ѩz++~> 7Cŝޝ2#Su 8o#5XH' ZEWgI|R<&gͮ!Pii&/ _5w&gGġ[3](5%#)Sn(NcDCؙ7 %,NmdiSn\n6ZB,[aB愊VH/+'nhΎ؋ϢA1?R0o^;PFIZSU~BJ, /d `}U&՞&ZTySl$ht;\ըꌢzU@LP:r׍#V_V#*IV7!%+x⿩*pO(Yc";^e( u :)LՓ\ؒ߂m~|g9Dzg϶$Qe$U("ljwbs;ɠQwbM7:~̚& ƺmܝ̸P(A*l" ̿ؽ/t5[ƆUZH{p:ΎEV3Mi7Xs{ѓ ͺR7X6{zsPqLu:Ghi$ 0k_(U|#fam~[Z\5\aa" ^8&vI 0 ŵ\tg,4gG~{:W<*tA#tis n$N]~uJ>rjcb\%.zE5!Kٚz;hU0s 屢T+M0"7J 8r_gբ rD]s:Xi'u#gHEsK2!wm|.2ᥙyc_~"6PR v"f]#&#XZW.>Q܂mkɖVǼd3 }ÔKpyC1xqEB{2V%(ŸsopىT 3d=uUZ}&\QK f[LRLC ^fOo` LjT=1Y/[mn&,: ?X_pӍͪB'8O,՗NbbsR,ym o.[ 9kҕs5uSh;~&-C{YG>HodtV,& bKTS>6(*NQ *`Q|æ+4c-Qb3"R>6@r~v kǫpG,ڐԯEk MIV)8(گg&)P~cVy-r +y31M*"ȵFyo`8&R Gkr PxJ9)ѧ+]ŵ_y.inQ|C#%n<I03Fn%+G߲q}h^;X@Z)րZhSq.ybS0{׏Yg}X+X'Lz=)(-j>JDin\l"6kF[dYEf#> ixKГy`WdN~(|!(mzm ]pffO+ ͈N'+ džSH3r0CyzƟ3fg,z'!?f`;\,<HB03a5Ɏp|l6~,އ(~6OgnXgu~WCfv^qнN"?b,Z遢7XzZ46 pJpˋ#=ͫQv_Y)wz% 3x8>#Jj~x5oYr6uv>}+KMBOpHL;q;U'H벊y3릠TS%lw׸3@拐E2PxڲtY >?w'.ߐst)] {wꔦ>#sy<q>nS:  ՚/fv\J-}<|3zba us<B{ƦJ9L+W;=ܪfK=fN2T[V02/oZݸ zcA ѴTr=Lr4QLžꠔl) }SxxF\47t /O1Mfb%7J\P!N=rz'Z@XHҪEv 5XI磡)xRǵqqdV=qK+$AXIƋZV Yh~7 ȸƺ;3Z^cvFl߁|$ʹJeKkYdyOn¾-O NJt}WT{>:}ϗWDU˪ fI}Xզp3q%|NH~!2JSB3 A'R$ˡ32֜qKykrrLlj$bC9iqރ˨_?M2Y™0NCY1+UπFTW%ck#ﺿё"^ᵼJGubwu $-ŵO:9_ e2]ON伈} Vk+A7 l— @62 ~OQ.FU {<7T-A{R>UE{. k|3)zUZq>6zS3e#0V@1~Ϯ`S؈!: D.X9'a'Q;d( \C2IOGJXN읖.i+|{Qȸ|WaA5 g?SX[ZJ<,?"V#P^!F) "+ Q&_(mw)bYPɑ)h",h둒1I5z3AR)6NZUdxu- @wcw!?x y=K_H UrTQBHڷQ);(oI1 pJƮa3[zq*j6a3}ԜU].xvytU64>x΀yg?S{jt!Z\íH\AP+Z\_eه׮6_Zڸk-tF=W%I#E 'S8.wmr>fGCtX_^2t+ 1b]wA8/4TEMw[bmԓRYV9AKmX}zOXW?&)4&X(xͩ<;0*Ԭ&VD ,jc];iб:I(xޤ A$jSo}a~p Xjц6U+Bn|0J`'SWIFnj4r>lagj:ISʤ>ѣ5j8;"396RP]Kn>T;SѦ+/ ޫKڀ;YSF, @5}v^)+diZ% μOQ̙ )A޷u}/۠bq=/6Ê=3 kCU+ayQ 2?zeT[,61mZM4Q&zcEs𶑗 HO_楞x 4‹0\ kp.!mpڨAV͏JkV'vpz^\aHRW7&ct/ȍxĔW7ێ0 q3,Ǣg%ut灰)8l P﯏1UD2׹吿o"S?,׹iM{u̵Ap/os?Ö1~+"-BO1GqnzZhϵ#^uEV˙>ꑷVd^O^ ykxfTs6 ]P~UYQ9pfcR.$HȌjIVl״)D\D \?ۿ8ׁ{`h 33IWUל);B0ήwT Lbiz6Bnץۨ6abכlyc${$"%cK|Cų hŋY;N <}B{W)нgrK8!'3;^=^Coz {Q,muG]Y#a~A˲D67AALվkỊzhS6)x lA> qPkx]@ȍ:81}/NGqI=+*qisIRZh#͍g:Mtv3X;R7G_Ŝ.AʣE<3:/C8W%,38;:f4+VY:/ֻ+Rh8NA@ 1G8ַo 8mO(V1(^wT%85g׋h)D23lDx(jo~'sMFw hl{>h>d ȶj}꺞DNeAW8M @}t M;›jF -94R 7}XN}xrDQu`U$U\Ba}%N_OGפZ_nHh:I{8Є5MGi%`L ~Ym(ąEPI>Fbix _eɑrx% Rѱ 4+뙆Vlw2슌q`pq>sin}<,.yA_;;$pm}䂣DA<[u"c'WҐjm,݃k4#8Ki^15'~֋9n4(5dԍe5n>\/l@!Nm2Xg>w) B-5gJ*WI3pM^B}"lddX@vV5p!6[{uGSxuPJOπ&)$8˓Mb5_yna\_loEep3[:6[89/{  ?ɴ>$_U^OCg!l:7$H"f57s3{`fR$рgmF" ܧ")~&beLw+UUpRdsh17to`h=; # s~ȉAHʾh1 r=k277ˍQQ^f(ow je8miJf8jԎCɍMSOwilM:~\X]@3@ЮP6IKoIj<64_Ԡj\ksۘ)3DЉC$ |ab/[6)@*tUˌՆ6zNA-$Lg`5SvAIV' ,}LMx9C93;o蠗OMǪ\kJZYc2z {m) gy9'bdL\{ q!YWA@>~Q^F4{8}-=e5Usɋ`j8 0hYsM/pN58 1fk 4 H0' 2x^kiz(v} \gS9]o*xf_LB&( 9y8͇н=qt{L?b/޲SW( 2"" 0 9P3p")K{NۄCn {?DNT-#f(;3*%j;pa}2Xzcr~G%L JȰJq~gɳد#c<̘8l(kv=ⴍݟL͑!DSTN-ҡt.q\jnM m!2>iC%Cp.L V=젍Bˀ+%o[8bR! ijC.?.8&ZֹPԲD /me8駞/jGVQ}4%ɶ&U&;)%k\k&H7*{sǖ8psڑ{.UjmFpfk& `{d J%z:+J<-O)JҬ~J})j~ud2%xIv/zdt>}_ $2*vp9@Ota: hAh|(rpyֱ!oy.rJ}䎿I[Zyd? x1&ooģ0jBrA墛TsNxOH4NcH^Gw49]usN :{wThWsp';$$m̑è$Jzؿ ר鶰"lrDZhuE͟`DLvTC-j3Bf jnD8ɢuMUt ~c^`:M&0藕#IJa9Ui@]yRm܋lvEeɬ (&Ra2y7~?*OI=Hw8T,H6F(6GQk $?$`ʕe::9,tMmVЀpʪx(͗o3G? 靲v~n^,Q VnP0fҖD"9c ZB[f>oɰd9wO{LYLZx(HQHCDֈB@!SyA^}cnA4F"X%lC6&-ZR;I-R3|EfTdD1.Eܮ/5&i(nlP^#k7r-Ev6 c*i8뚹G }FsR S J>G0{-։oot S +юyPhg7vCX4R(`6~('"&my? .{ΝC27N:n 8+׭fޥ{B#@O2ԝ3@6+:ǾhLǷ " 嬫 >e >4&"[8Td;v*ܣ8R8R 4x\Lslck}[xk^x8tQb&F0>Nꪏ% U=MDO & 5A[V9>3=P@&oJ);e|mQ;HqLYb!y{Y{GRr&zE>peHJ]Rȝ%A*vCC9$HvRX~-V V@aLFÆifKyrL+bŠ~Q^yku R 7?=<*uYEY,O:pr4fQNcm>Kɭ a {WR+ZyL{a"wޣ?%\>tyquH> DɐgyiU:UEū ,=@?C}J3`؇ lκJIe̕V;WXfʗs.҂V] vdnj;,vGd@U0mEʽTTF1˨sVWhO·>gɑ1UH 3qq5iv0af2WI[HXnَGID k|P|f}ڱW8h`Gh/*"Sw|6 Q= ]{֙tdyTYMԅtG6H[0# |+铷^ø-^j{?̨#(Fzy;?e_U%ogoZ᭵ u4/?EcOHP,júyjHbIfn8L<|+Y _R6O7-#,E;ɹzN+^K}/Z7ȋC>q+qFC E2z0N9*Ľkn;*Avx=ь%D̴>z 0D2IT@T<: P+@? !d捜Y9f)yWm+7L|\8Y"2X{ TW[xu^qxؗkIδ,6mo.-#4& pZE"1e$m:\[}0wX8f:abI^g3͌0vc t-Nl9>FGZ=%Kjڌ!(Xq1摨k A2, ,aF޲춾 ,]`V FS%{u btmsיl!,zT4;z/Gt+o2ItgrbO'o)v*_./xF~}0q+"У'A%JN'{/}ZùY !N5 p̫ ʛ% ~=7fs%YwdOG^?EpbOgsZeRO#l y^a}Og )lb-UeP6m^"5\Mk?.,ȓoEzg&%g6649#ÓXAzεWkdgT AvG/\heLiwߋmS0%hhqIqrgM6j5'9;Tn<DZ \쾩\cjo3w4Dc~o^qrLp\S Xm`}n5B>u>(%l#ڑ6=+GmSav@Pr1 ZudRŬtu:*|0Hےg\Ǝc X2Je"s ^˒NWB2{|6wJ'B!}?䊞#,vlk/RR`;6xM &!GTw-\c'$dcy U++W ]ddk؁# ,uJ(RvJE>Өp%L5~TM#q1$u(3{kZbp-Zzܕ3:o .\_g9jVY3FO=˶u2Cd)ڂWMS|n029~a^Ez7Мv k@k'zf!ANNB\' 4Q}I[htC'V]GWE,i$irE䩳hG%)Ń F.BiNM9y@ w zO n3QGF}?}=jBֆLTQv*RfSۘm)M{0=^pMΝpe⅀{D7npu)m Ff3л>(lj &e̐5Y, \ɞq#sxb)=fN.Sᅘ*f5е@ǩ_<8wL&dZXp}'pq:ɛ `n&@Eʁ-la؍.Ơ ع1.hHdR+˄' {E s8I_e6B€|jU -I=U?Ϲ;6ʷW{J.'2$*'8.>Ke)9I<#B(X!#t?8%R""$0Uəma@5d~5]2بCq^X-zĿՓP!oKo3*/6Zvll± 7iɇ3$ s"Y-Tx($S+rj+GNVPrծ<x/d]=/6>)]T S;RΠl P]ƴ͔8Vg '7JPc@4jpJ+{ e}=c([:x]EcbuB^&դ.%:4A1]\ ԗȮ V^_DcupYR!_#Kp׶m}; {FAR+:TI^;rQ"*c"{ܥm]i/ʈ[hݞr|]zwEX"եS6ףqƋ\KD^!PAfiU&R52Q/F<8RDQr iHԊ!MJz..k{ɏp, $bwAS?t4UY ƫab!1szS_lCAs%^v /AVWD:}88@cv5+SQBLyZlɀǦ-nd07f'Dxnw9SD\~rhm<.YԿ[H-~juze ,Zza? Aue0wUF_'r({eƀ_Nl܎N\"@xݤ4zm!}+D8TR2.#CNϹ<4_S^8ogפ{bZ՚ӱ5tF+ff~="B\wAe@LPM n\MZZ"HåxR!gj;eCʊ]z[)EK9 }!=J%{ECQMQnj^vE͖w2H̲ѨɅGYx&?fS׭wR5l=4}Q?VۻO+jΛ _gH[.)ZxC̀_*{|X Pϸ#otn!Yʆ"kS"R ( =|s`|"; JrRqӲX&?~ lYA?c4}je=%Q}'|"7%1#lW' ]71!'׻#~EX~\ˣI <~t|%8۝UjcA5r=o|{Ǻ|Nz˭u=Wlh"#o;;t)ƓH`SVtnoQd#jv@\|- brO,Ѻ#(4/WQI_I^16ayAt,8xb$ߏ$X6ذ:f $ ,BD AA2ypU!9x/nmx;f58؋qN^,m܄C As˛hM>͝\Mtn"7:~RpLjuX41 (Έ=qP+L͓S *\StjڠWBMDlǪl-SZ1vC&DK`V~Z:gLY`v܇OSAD7 (۲D۫2^|oemm0䈦-\jR꺃CkBjT:{Ch60 ntב;xKVG1CvK/W 9E(&9R:&т6tf\M?QI2nO!QΰZFG]UTH2)w@ M̨XѲ'v{gM S+p6Ϥ!d~wE mF?hl 8ګoj?Ntqaz=ɕK."I*eO޳󲽤WxqG? yDpc]M8%0a*ύ'qA7h_|V'2[]k cm p+J$}lץ.P$")`z!f{!-{l|hHVL7M?q=䗹Z4R ͤ4Hߺk Җ$u8N ~"XOMҋWfĦ6`WO./ErdOn <ÑMCoɡ'dn*\hZu9UvErI ?^gèJv]!Fi"' !d3&yXF6fX[9\*@}#b&9i/&1H*4 }.0*Y8}Q" ݡpOraOݬ^9וm VR1 flADaVO;tHPK9sFvGO4^//e;1ux-,0㡑-I1HBaQW)K;X:=yhZMuƜ4>w͝y 8Fm/,_{ c{ʟ} 5XS$$I\ vc=b,ZFTp|H6\%wUPTfX~T둺T!2D% 6iVFb 6bP"2cgCW@c\t ".yu+4o Q %DFFiMJobo?#pt.bW7;Fε&2*/N Qq?pgd=9}E< '>":aՈ`|]wY"%3 l/npc3B 4(xv5-hO?j~ߕ:.J{142Et^NVx(*#yt&w_M^XЇԤNP t4Gs{^>o)"C^wh~0Ts;5PƠI-xiP~~^H!\]1둎Œ)!Eq1.aO]i y*֭5l&c˒Evim ?&n~Ό'4<Βiz\ţN[ܛ]2a߃L nrd%N^,p1ٳ|yU̕;&('BZG`1!R2w3;W3fn4n(J=KA7*dpܬĪ-0CeZurOhY*ɖrK b/) MNzV%ܱi 0o[ K5SD/<bQE>@O o,Y=t yҗ+>'֨dLtKohajcqT<9 H n UWriИ"~\x,kj*H,⹩wleClSw$S­";It .r{a#ulU'F8^|{6IKUD)\m,_ c`#CR/1GNQBeW:`wFJRG!@ehcG/ n?yݥm h)NCDRZPGt-j*uS1qfiQ臸__,#+3[T h%3TaߓEtụ̈̀퍮'Gs{;+uB_s$SwاmU<~Qr9N5OaFn rAͧuۈ~/PyLZ{D%.ykl&8*8аPAl\TWfrfhK Vu )&^CMC+*љ#X: 3<, x"Lm'.iZ gI4&4ϢKT*r>W5c2'nwbc1xo>S ~T8~ƱbtuPN꧕b%K+#y$ k5#b 4z N. ӄIZ7/'aI0:OF-IrAHhRm3.-Rka9[+QA9:"OoUOX$deVޥ85蓆g2(W|v֘Z韆jaDod <\зDhb 0!n/FAՈ'n)|v0bx rEOe3ݎ`}~n9H~2j )慤 |F}# ^#[boض)ԭ'+BYT[;% mO. 54ơ*[įćv5nΞ1e&EHDXlL3;9>64[}tf쐻t 8u|[e*ʙʀCD ˏx\q%X8TC2 ōa@½#j:kmSí=_?07S>3"HlTf} Di仨⸤$iq;&5`C,~؇e9ׯ(yzaMOy aP"/ m]wl&nҕ4۸D.@|z [ KaTmR$Tg);]N9tIZگ5}}Ǯ?#9KhP+آ22dӕ~J )&3m^f1}C^%G!"5 fHo3ə/0ΧodSG1~:SuY F:$%ށH_eDk _]ЂYYX:\06ӎM +(T}͚ .LM%婳ǫ:+opڭ3Z&dLx,ე~& O{`8(^\ݑ;TxZYĕdE]ZH9]~DŽ|$qseK9CP Y{du.@EفPqN>M>tZ)wf7!x:\>.@Au'ZYGea+{H2TC( mvVDx+{EVS$Esh1$fI0Cmծ^:DEro%Gd"G6U]W_KP*<p_6BihΥ qe[.~||2p FK =gkU?Gʪ@9< gɕHw#Um污hJM~|'s,?k)UJ-9eNЊ-Ck&+$ EdǂiX&2>޲2ߙw^'}Iu DZ'k߱-<5oqā`gg_uE+/ףNm1 Kd1YDGP8Ӏe|s${ (Si\Dp_ WT`ztN5IXHJ_V;GU* QU)`.Ziu/z_It3 % Z2`Tq]ЎVd,?q0Bz;q*C?Rt$>mu2*;,s~™N*x^v-TQv6'YQcu?dj~Y>Ʒ+$1o3Sf]yWuiIFgHˊ `%nsU* RT{;N{:7 $>9\>a^W$x!d .feH L1'`M&)s{Tyo YbP0/dmvӿ)SeB? W'7RtTM~KeR:x*F)PRbo0r6$XRrK袛l&ziE=v.J}|sn):,#Ԁؕ XȌq O ,5uf`ѕKe z}{eaq"n*ξryȓ8OGGMWO|_^O;R$נjM M%q6pY`F#C']bḿYqS眀iC#>)y\_8'hrգ`5pwv) 2Ѥ0x+wnYK%X/>_YՒNʞO ([>,R;PsC"f]^r>y ךTr9DY=H^wU!aJ̽:Y lBݜN-ñv毘~S8>S/:jVF#hV5lȢQ5b;4۷y}rQ-S-χJ9݋M^b\fbVgr ?AxמS$F\綋wl6jo7 dV@&_&_傼s7PϣĨ7pfmo/ycDJJrcc$~xإzFDU[͗ D6_Sں)bqز3KUC2R|c[gŬѤ*\ՋI+!|TEbbRiIܿ;iʣ*gWL}M:je3z\4 :oizL7^LSv֗ǣo9DCD!az- mHc}J >Qseʖ%lEr-=~,XD$ec^䓓(}wGۖ_•SǶw/ÕY;# cy[0ѴZNb3w1)pf*=E|Ir`a4ВCkr}M[%vQMxNa.Y' 5ٞ{Y5WQIsy,3Kq&Op8#;d`j̓,@)v9Xڕ&{ 2ܣNlϕmGݰmm0(e!nx:(b\=7@&>`L,A\_#0'ooIRL& wocR+ +zF߂z{ V&s0>nZi% oe 'ϱ+L cj(wf{άHUN#`KHΔZqYTsz׷a׌C/a=6QZp姇'4aٍ:w -7^%&%r2wPoi^2":r,,uA_k#OKOLL%`ъJ赪d`{]0*1,HdL/ 1?L1[2e}%_+/(=)_M.Hm2.dMaw5XVPZeF8c,$-%~> ":ܖ*C. } ?ބ,&-8dǡV. YR{YE Gyj7`H^f~TU_d I}t9~9|܅a leʦO\f-*ex5[M1}M/LHTvXup侙ޅ[$#[iڍS{O%#5l.W ˄*`=~ jmLo1$Ço7e+ӿ߹B j9 D3vz;TwRMWJ&Pn5Pb.Ú#yW~S/@FTfOoA2^dLWتHn R pL>dGAGWsaؕBN=D(z[8"P }̌=[ҡ?#5WoF81Ѱ>9na;9mr02^t*8g<{ػ}1DSl˃Wp"V^ӱt&VV0kC~` 1g($OB2gC>1x<f'Mb/~1Q5P_,*Kj2!LoQ)6 <iȰzRLe9nm BEPry޿F`.?ɝn_99 |\nq< PI5[\ a;^`+3 002'` T+6)=(*GfeÐ>fAkMFS/yy \ t?wtt 2H(6LD_XG(%aWOv ̨tXk >+ݏ0=$[X ҅(]I0 Y`Q妢gWEIց@@h.LncT9nWsԧ[=EoN^wiڹ$)m+#qfIgPIʼnNLyFt\8@;Nlxˏ.ajU 2ظ=$Wf7dցFBF|M8hk"ȁ|<迃4.wg@>فغ( j}Zk' ^ XaŊl|yH#J{DNdKGGe_Yg"qp%f7dZ-fHG= %̲s@@\'@(,2(a(1xrj>z-bd)i[=Nbew?4νuA @GKab<"+d4U8*- _):}͘j'4Tg3=G%'ⴞӶmU]Tpz`" X50#ؽ\PG('}-%؎EpȓjղϕµW:N՜D$G; "c]>96 /.nM$@5 A" ^7B;qE_$ d[5ՓHUvliyO4+dggtDONU04(RZjϩWvgjXo0'4YK9&o]a wv+p9mE,D`}-0'N#mV=!N~ ;{KF9]nfq28 pN_HnƲ\>`_ϧVtQǔC9ԤJm|r`2)-v$.-2E˛vƇOA+j+eΩWYDw QPSlH8 0)kV(h0"Έȝ^nc77FC(.;C'ƲSRZP W,瑱3u(keɚ ׄ8vXŜh0@` %$op8- i2NKmP&jhkҺ+:UCqsG4l*du$Ί{5Nqw#1@1]p~|J>.CDON :3[gqɵmex4b^.9Ϛxj3dT~M/0M{:8UMhI+#`bk=cnrB2 (П+pM"Gz[pUt6x!wkĊlko9w%sT9<!ze3'߻ciڄx$ca-M*=,yeK=S^ܯ\֥Nl66Q6Ɨ *;OiG4.`|LД`sꛣ!$YߊTHh0Ctdƥo/hћrEyOT(t e%udQP >v /iH'[_vWjѪ:*&O+JIM&?E.O )uF/pۧ9霫0~ݨ&ZzT3SfA _Dc\dǁz-뼈gr*0/*/VBcz"ɦJB/)d~VtXj3.\1|z&&h+6((M耇{Єk97[뒪zb2ܪ9Č#+ѯt۷,$5E5j:vG|Njq鳯?7`u%g3?Ku[e=mKHVjJ-Z3&6,4s˚D%m?xڭt0"\`<Pq1-yyAF/2CW.Cr{ޅX4``5LVH,qۼ 602#W XrQ-aNs~HeV8<%#:@1duachr vW4b}<'J7[^q܎RP؅{W{~#T*\ށ2Ӗ2W!;jB,kO; x, gbfVeaj_!+nbkA,D*a@,.d}{fѯvǖB/˶CjC}͟/8BRd L.̘&KeECJiSFTwM-VfOzR&K˷DS(n иNݎ۬]SsQEI 2$y?41hKF =g*h?bڒ*0Mg.-"t3#* i0^Ȫ~3*&ØB~r&* ]q'~٬ZfnoVx:R.r 8*QFa Y懬*X:BYho@zRD؍92/3Hݕ 7Vf.Zk({bS +|\t1O ,G[=y8V|-8j,/tQ^ !ӫlw[ro=]*ޛ%~JOG],ܴp45|-KݡLU9}kkۏk"Xy&}`z4F]xLh`6Ekezϴdln\)~iERfc^!.nbCګR xezF>&-@l $܁N?6pd4^\r_`) +^tƨ&e[ BD;ci<Z3&eDr81Պ:r 晚뎱pOAp(74in&:N5P*a G[ SI8n;%׀ݸc%BJ33Yy >{( ?[j(*"W;plt]Ī&`ErK<QCPiPUR;[K[JSgڟop )3Zn-`B89˛={D?_& S|KԪD-'2UYW_5͂]gn4I'fYSd aqha:Q?C<݃;D$R9W;] e~"Ȝ ѿ"8/d(j[L{|S+sK:h4]9X2#:8Փ/ҼPgm[ .d񙉙dwi8{]Ll>fIb9ߡC}_~z)k0Ms:,{zc P0=U/4(M L\s^<|>~ELӿ|c qDz^j%B&aj 2 $)ED"ꞬMo#Yk:cM{M_Q8`MB'B< ׬ .|g ~nF~>x8Jr@S0߫KS i5?UHskz# p-/fJ}G.P}vTq^F,{??#EK;dJӾG }7 WmS89'k>lJťT٠JqS7?Pr/:ז"Ѫ&|en>_r@!-avءWX"cud4oɑ:ϟ4\50zP^ l2YPhO'^Kn W$_\ #'Q2,Q ).M: /sWay,lӆZ_Z{b@u8>cZ]~DٳV7[ų}$òuSCs)Qnr~Dəy՘'ِ$$3#mGF.qmbC~*ΒN;EOk[(^Z^TѲ ;SjzE:"cR,ň5x6?3AMI= ȯYx0qˬwwvYel}1Krˮ`R[DhH},>Zu*A BZTB9Jh %gM ɗHԓLXMkt2gXoznCqk*0zѺK(nO{xpڔG4r<)1k:/) >>_^s -/3_p|J/3lRDSU\'5EiIj[VH>MY,{Kȶ>(7 @NƯ_SDW Y}%bqu0Ӹ yH%J-„C#fn$l~xaϽƐrq_1nP}yl*ʢroC"Rf* t۱`=+eϧ KuL >9&#i?/(JZ4&(rFDߧi%}"JcZ9*32PA3%4x?E0|"]Dأ=%-{/hEV~pQvx;T!8 7!=()+4nJFBzWϠ:\m0[v4ŻDLp8 wDכkpx/kёS$64'*>X{Lٕ8JLܪq b̥5 "q iC.ֶUmEO#P7w2@ڵe8֐ O Se6)S.Y}Mwd#QnTz}w"|%C'js3ӓ=' 1.k/uj 9iWyh߃ffɼީ^L v_Jg&^z;m| 5F#S~Jpڄ&.սQv:w_w$sbQ:8,& _|ݴvֿ%.!ڄyd | wN z}_N*׃۬;[3lyzJ[#kxC26T^$rӉǴ7EVG z3sn(LwqbG 'H:j%p1$~CjBVn+B͛+= D̻]"6[\ Txow7*hZtNDLJ?W.済( 豔n5^;#xXĪ<˳MI%¬xK osXF= CVyVl_΍ibt/\q =c$u&3>RlZ1MЁȫe^lCY\3~31~Y\t"qs Gf%>@whS"$S O`%!Dy9vy{` }:~qvpAǧJLƳ[T?7Z@@ [&mP'G0:#9` [|EζW"I%ңVDKBSHxpF]ۄn}ոRL KzY1)r=f<vo%4>z^Z8"heo]#mI6ddEu(Q&r+6b!UbLzx1_@3˝2Gˑn|vpgNb&Yof(P{' ~|բhTo!t;-Mp9O*J\USe{t  $Xl{! Įri!_e=ь+"&FURV|y=Y7*, )OԌ1 3~u|tGBz!%^dk"+Pۑ]k3wRY4y ֚0y]2dw+] x xCTSAjm S_US q4J\ FKkF.@gX'+ -zkp(C^L(t A2~=1Kߋ*3OlG+>Vah:1MrJ&V,]ooUs>5:_k !qQ6_ "U$:TH6@[™$> U@pJ.;@p=Q56uגD\K*cொY 2y$8[XݜRbiRE:&4`F,34/E{a|ϭM)b?'4bh㪞ǼoG֬xso:#~M>yHdt&p@ya*[>GpfHBB#+[Zz Cy?-rO ^<:'{B|^9؀Jh&CCw7|L[  }k;ě3z(={wYk= +hQ !:3̳&q %ˌ! t1ŏҗp^iD$H1vjrl4lUF@랷GaeN4Uxx#8)ر?z ٟ7':Y|i!#f.(V=-ĘPPo93N:AVfB[ąeCo1w{='BZrj=5Uf~vzKBy2A[_͉ᥖؕVƹxrmtY0pE٪0Z6;Qf;BdnqH':fw#^aWUrєGgZ׍od׳ӤخWd?珞)|!99]AoŖ54oXQJ [Q`Z.B;tx K l 5$&vh% L׮ˏ U8vX%kS>J3(:LAmע\?ڦ|tgI>'M `<|yr )ǎb,BwW%/UC.-1c=U+d' D&0y̘L1XPeN$e;z ˰:nLN`-%)F?b]N^vd\(_WA}"F_jd[9oa%J,~ZU}i4*g&oٞpta 1zX &c٦?ӗ*JPFx !OsgZ !Dw Zw-(7C!u aUfUprBƣ!RNoaPB2h<44 #[akVRʢm17;a_G\WAyJlٴ;׫@,6;蠼JWal |*](~q¢_q(@ C DӚ Sr'q tv< EY, q(w,XיTFDI١w/yê ]>yL1x?p<3_:C;TTz]A.Q|Y 9Kt7wi$dcb*NzbH]R$+pnLV;jk':+ӔC-Qj,telKsW}$Mf39Apt䂬;J筕VW6M쾦Ki"C:0|?G͇J/ Z)`;%me 7dnT0x48_Ki$L~S+E$O˜C27qM9lZUU٘[۽ik;0> W6שCT'o|iH1+x嵶J>iP ;tE>+<}+I)qX<Y7i0CNZ2ݐ5~?!@e` ~ӿ.-Z81L]J|*?Lt4R3:- 9b 13M;0.[$_$n39~֩#I*lE<+gH ^l88f8s5Nh_*O' uX3!.b40Z=g4*ON Db=U]KZ ZÁf]\ɜ:F …S$ C!5y/Hf+(gyq )ӡoc+?*z|o-|SIj 'bgff$pm4x'trMBb^Ik1cI[e#$<`XA{ynWڙ๹pe،a+_x#XvfQr Os; ٍy%'W6]Y&@,)'19~^{^.shj 2du;~+t5$Om=UK\FqN@AFSj@y|֢UZ&h3LAUGLqDIߊUF_Uঘ;"1^P:I_މrڦ<` 2AG:*Y-xϪ4k"x3n~1; pbW#wѭ?ǎ3qi>zxfҰeqX D5KN,B .yȕuQ0{5ȏTɔ j)[Y 'ׂ9ng7kzY'&a֎R:*))22fo7P~hUGB%$_ 4(PI)`wvFI L'Vo(OV9UffVAfSԇrQW h|:tnb-mu[`L81%/Ї rf3aoPO3Vd+aYw> mTWe'Ј^P,]i?^c'“kX21o>,R<5)Cdb{YWe^0J493[>sR}WQ4KTݶIe rQ_+x Բwn+S/!W Qz)NnRwP!cQ>+7Kcյס[5p"9`-A?PH%h;]Gy >d D04[?OK&H0o myC יSk41B5hY)5#iwyjؓ=ӰB|2D %+w7u 39gIO8s_cՇ%5eK*F%^3 *yP&Q̺"B;bλ~>]X+Dm54U!ܣZ-GsMχH N& S"]8tPt)ZzɤD@<ۊь4®rF)1gV׆2'1;0~3<֕d%OtoX-\%W>/ۘ|"J4 Pʸ$TSWjdqr%'A]bBl;G^_Jf_`|psML*i n*I="Xz3@1oN:εn #xQ̀|Ě;mc}c3ģo2`dT6V⇖1I[{q>AQ}b/taCNMD1zTVhw[qrp+ʳ<3uXfm_DP70+*a6d2 vP{w~DC{"Ć|oK3(`f:W^ zhY#cYIWEݪLةIDmZe`$)kG&=K!7xڀ(OnbFKv4`o1ˌ+rj.0™giICv@Kȳt"zv*xczy13C4 :4.29kvO47rv'{/l*dKST19Qhmj幢՟W3BR<,b,_SGa9լ'5p;,;;8KY,^x܌tl{e2zg)Y?i@Q,\A?Qb;g޼oerQ֧[u gJ0h$zAqxk,Z- 4-GM8j3,")d-7݂rk=Gpŗ\gsp};XN1o2⎉D\-GS?4P"mpdnKoo`k2;{(4W0oRb8gg;a:%3 $9T>ZKb猎ƒ3;%V5=SBIJ՗`a8ˢj{ h9P *m_r 0G X$}]VTָi+o$Gw׊-ܞX גQN6ONv\Z\D~4QV=hyV 2BJ SB@$h[ҕ= Q~A20Jm^'t:wXVwzg6EU!gX<"O %HjDXZ銏Q b~If0%*+&\9 r+/"VL" `sߪhJ5f銝f8Hl*8dK\{Zq\\b gp ZzNzK=!f^R,h(~aB \a2{?z3ua(NG?UE10 Iw)S*Uٱ9 3y0<_ _m]4-@x XVϼ7hi^ϨV QsK .65½"rl֧筫]Tuq'olB2'TPl,!\%% qṛ")g3bIE 2ޡLB\R XvȔCߴR`B9i SULHS۟fXU#ۻ!W"bgپ& |"#yeq Hs'M8CJcq^ b$## eݟl02]0ˏ(!X c[Bq%f&3η:8goT\;W#=Z.m؛14.yQ^Wb$0[`?ktva-s K: \#=amy63-G"HY@`âIp[֕E}~#u?r-3]k$2۷ UrYheFMN.or:1GtOFoLө Wڼ[$RؑoK[:Նat%a`gE6 h-x_g,o7cP~MfPEfF&> Gfid15GWz oN7_vf`?QC@.9:xg[b4ROdЎnZIEpl~˂ {s<@`(o'+%J&<\6KpɎ:@Sb\ޝTtfiJ?LC5x}i*LJmWd\z,iHL\[7#w$ׯ@U6 #e'ah zfZUq e1<=l1:;` 4ɹx'|aOΨˀuцGg| 0#v|3sj3-44^,H[4~Wjn0C:u%䩰&~|*]2ٴuҁiE2Ol H Tjbz!;i~5ԻIߩ;Mr<u}Ou,(khیk,mҡ[[aɸdǍsX |gY4[1Fs}P.AcϧMwN{~P(q$@Yj6ȝ5pB]8gc#WܺD K/B͵&Xj9U?"SV&lqI< 7xb|y~A| ^-$#UPօrMoGCJfR"yzڲNឨT7A;O,7gr]x3'T07;=;=OH<]dUj-G<%\_ƾYbg2< i~0VI#`?3o4Q.y ̙ioPVXÐt~:;-\wJ׳!z,0\ЂƕޜDZiwqw)3.t,}Z2DL>e9\6+*)6c<-'+,#c>XP?Eتu^:ytq 9SȌDQd*lq `qғ_ AпϫދƵ_}M ew$S.kl)J0 ,:wr$@=+TGZ<&D_f| 2v<:_?U/R .qn؜[taNr9p 6b(OmU1-e}t't?(4(XrG 伿í}p0OĜ#ӦmWȍ02=9v&@]'X>-\BCgϝF'R,/iܺ&rU##& 9jz3?I~Ln^iRSH~!L¼h'b=Hɜ}ˑ {p|h:6ny$6#cl>7i T]wb6OZ W'x7&<PSYi5\%NXO'"Awt]av8QN9 z*8N(ҍcdEa(T4ȩEG"}uS$ێxX*kOHxk#ɀP y\{+ڙAgIc('m~\x*(=0e>k(uD U9 !I-ʿ{{޺)5ҏ5LćO3Q`#7r!iY.Rdh 1<1ܸnMA`?M[;B!.4qm^ 1hi]lĒH7>R}%e/ɤ%ɡ5? zI48UW*)5ۇұ$ += pm(X9\Xd4h.puOsbab(\&Gs|t~ 4zx`a-x6ꇍY4ںR/{JG褛7 >c`ۻ.SW!>32kua /mObEV 90%/8}>WYW"ٕJ,Lݴ9\bh ͅdh G>7xⲔ!=Y\WcU帰c:vHOJxcɗnkL|"I&ECe=ɺ1 ~H(=l05oMt!LKGX*IM.""5:Q4(rJKQi"KE- aKom;3!uGG ׊^˱\&KQS[r\3Qn8۬Ls=ٙ0ݤEv^DR}ǖD"(g41{'c)NuG=@G%)#rvNk|+psSq k?fG64-?\eyЏRO۠˜~JZW옍pZq=gz?GcS3 oϫ{ JLE!83z3ƴj* +:^œC$8_s3r,U:H^ĭ{_'-@&nrĸMF7m TVKzJ962:MN$£ M{ID*g5?ñdZNU2^"c;`Wgh*gehGFGԲ8[@gB~cCw[z?#JX,ÈEx] `iv3UpW֝lvzY!gƇa&]G¥}¥ޫ>zj;u3Tp䲇R4Jƾ%^G#*زZJ=GxoQ9C57e p!s4E[H!jx|P5@mz5eĠMX$A8 N0i>Vx^ y ;Uu/ngv+YKQ!ʟ"x#&W/6%neKէ;e)Qˮ* N4t^k,$%U2$8e&h`gD*ւ:DTgj*ٸ{N|e-=LsZ XNn8Y?$-)t*شMc=YhLoz xܣam$}%ؾU }7y:nF\p5&陧50SRڗ!#1<x1z]kX$RC=9:v\L#BN);T,I'yÍ<̩!k=G(a)~a”YD cZ@sQM̨@?v D&DP"z)ɋ>-_Թz~J7-KkۈI]}c*W:~$ 4pܩD g2)ҟ(^*uln yg!uoHrdV/H]`ahМ!|[C`JA\ *b`Rd GwHT8q'XPwO!M.loZOQ'FoJQi|m!z[nͭTV9vZѼXu~f>ŀ>s'O*.Z>TX2:G|*vV6iY'@HDD;C2Pq(B\&_e~W4vPQqN \m՞ q>Eo7zz ]7=@8v>c }[#HyYwG3S .\)v&~x|bo/-O_3xj|;{>3(Tˬm%9 d)H6oA&tq! a7V<=l $'Ǻ+1Hi <68VM@ݰDAP0bQ!!dhC8' 7EWm6z$5Co'LUjH]|ZAKȉ%q`AGyߨA(Bk_1p,"k\թM%I7ȁqWVZ"T-ӧV!'TC޿u﹎y^"Nfmuo&jV{-t݊/ Й|Z6*Bswl Zh~=PY\˘Kv|܆Ha(< 'yIєaK |7ITʲ=L0d%0;~'n-,1]^lҀHu쓑ЕTuLO[Ԯ'<0Fg)pu`_r`">ILiui<+ң@*]~+;& r{\,e vZ)t0*T\yoŋ̗oFe`Z%WT6(,徥tPSQ3% 3F38yYR3l&)䷿Om͎ q6Y9K˅ys" jw!tXTiMB.l}өũG%P;e^9"ϩ]*-+|TB#j=2|%<)AnJM= "xN>$WԾ :=@4K/,VpOzE\h iI.ua˅/6wg+<$4pm=ؘ0Jc̆Yn( 3wD@OD#?OM oA\I\ٗKRS^ezR^w8c⯎o:Z#llUQo.p' ~@"$6c/x:vDuɪ|^;Y肖OQ4E}l$xßc]˞ňNb2/Kx i>9w*7Y_t;x5qJsl!K$%7Os vceMM@f_eOQ~qh2䎔Fk~fe;kjE7t H]JmͥdqEӿĿmPȚ ԛ $Wsln M(rٙ\2EGږ`;uך;|DHJ̀QlG0bfL@z[n=A{O1N}dvj0F.(rסB s 3sw}7j˦{sfI.p{18,A{=ٝkh&NDq=]Wdu^|4dEN,yaIʌ6 P#b z6 Gt)! jYe#6f @jl2MNH/"Z~e));Sބ3&ulV~C>7|vboђt=X vYIL;s8}.%,y-05;-2 ^JDQL+ ڦRSxGN0QÖ}AЋ@0[,#m:0/A&v$4= C͛դnF#A, `EX+{ Deo3l!5H` /OMB&I?CfW#nltw0DN8Ћr9} EY):@s=[myzt?WzFA^Q^saqn؀v-I#?>QkY|`2 α(ķ`0Y(ծogxU[8Bڪh04t9@ @=F[\Kqo}VNT\)N Bٛ(JuQ^WMpDvlM.Nᡡ7dtmT&3vi`vӕBk9Ri]_^cIuz^!mg,$/sz >w6 Ey^eB~%tNզkU<B2O8msi_QƩgG쬒LI a5ېzFWuʓA [>M΄Lέ ͂P&1Z2V#! Lr]Q\eM1nPYC6-՘r6 Qz.#Lq}۩֯"Ѻ0SXsh~,Tsj^U 0j_|I?.sj3njs-(| Cxԍ޺/4> n%]I9 p59Y~n^vM'~~08lU<#["Bj @ }Oi1ɺ;TIS1K~NxL \qφGe֫<+҈%S?Yx&Bq4Y ">7beMH5g%N-KD}I 3818f ^=stT}!<Ò~8Qbd֟nԁo/nuĥL`*P3Yh I|:OoDUX}qtn,ަ~w&?w_\KhF9Q0&q`N!{h-j0CV ;&0#Xl%,P#67T9~Q^!uDD&%Qd'ztFcZ6Q5֬?噜#`қx*1E!o>ÑDiM#i-fb L췃J%|K;2)&! EDrRn~]3&-zA8 V}jhXU.Ef9>Td0Ox53RHikFWG7J*uG%bqŷ2FSwBK',BޚQѬfVX˗kLyv3BZ0QQðvRj^h2q)Bߗob94}58薠չSd`M>,ƂVjNscJhU7a`29M03K =_Ó ~l֎QeJ*Dv ({J+vXd}rRVS|ɗyyINʲDߡxF7#8c ?8){7{xUUFo\\U{Ӈ=_suZ;a;WveBхRrWGzĔ@bqRd߃PKmjm.r? S %@ЛE%H 94{>+JS1՜Xqz-W%0ũ%D~n'>QRXzJu=N&$-7^I!pHMI0p:Bvi\%FE,D-AadiLDnmQf V쟭1cu^-HKA5mc4FF[O:[ Uȋ ڴv} +~BM85x7'JbǍI.pdo үG04`aEQ _osJ{˷M6ܸt̽UAD#VM:F`H@>+]e/{R=s}&8q<4d7@.KG[zhR:մ"'b̏bfF ?P3*y1ubj-`Y ]eO;_j1zMd!g&T8L39OKU;64|(<3L85g=ɡBD"C|-fi.vQ͚?d=zBݳ=5y6C&('s@[' PJ[n^7=ָ(_OQ}nVv u+3)Y H|t\4OHfF^m[wa_-QׯHa{;AoȥƵ:1v.3<ζOix9#\B'M27!mRj/2ܔV3! Ms6Cq4[>ɪY]p =ELMr! 툄y ]e9sfzA3OER4ٳ̎s+>|)ESmŊEi+l.b,6Wb(6 rVjU} I̼_$7yY@ 6O$DоOSՉ 9{NE󰲁>yFAq3)­Kh)@S:c&'eD;\dBU\ba/RH@f,w[P/ԅ넡[zvDId"7} 0!Vɧ-Ǒbݜ. [B ѶHۼo"FS=7-T \N % ?X^[ E6JR``0`Tc${F,<2-6Cs^`\> V%Y8XLLdo e^#ΏuWUN,jWs %m=~$$8,=[*B$ErA@."zI$qYe'9%oAָjAgj\b>>qí'kT=:gZ7ʕ[ZE[C oMA}YA[ HAcIH6,& wE>e܊ˮsb :<7ݎR:q4$/2zL>9 6Ń4z^OIJI4//tОD+<` b2vZ(_Vw;ʏ6 LU;3BJyRjʑ!x YC qspvo2Fyn2 +ѓp@r y{ ͲC۲ ,'6X$-Eܥ&FmZr6FWt':}@ڥհQX35sZxXO]^n5]2j n 'f`I+Lk60T9h1- ʉGlWC F3R5]k@ YL]ȎIqI'{l-^,Հ9A[EC>0cyl* O~XՀb:bAL uf>Pځs FJсTUJQZ~ؑ!^x vF(n,H[;VW$>1ml2AzRޞSosS"_%kgBoib;2k4޻E1/% &?0_o{RBI[*zyэ;i(=`EӍB&cCvdQM8t>3Z('YLc9s# ewN/qQTH!LtT[T7'-DA2τD~U!IYViMDOLVuæhgzyg܅\)+>oѰ;I~l* @Bq1ޱt?VDIQ,1PvvjemnlÑݺ7;+LX4IKt̹ڎ3_|Ӣ偯} Űʗ֪l@ܬݤq0aIF?[t ] Yf{ |s'nzg'yn؀@B'u9l)ʀנ zVғ[%UZzb* ;Pkͦ\kvuO*y{?m"\.=2 g#s{dYrd@&9=}Jr7^+_8x&:qDw5=c5 γ'ЊOYQ{l3tRyPMOeϕ! O2-Ux6),c%Nx3{bp0p˔RkfJ"VcCb@p 67Ptmq8E#'/Jc WN[o{e쨿c6 W@mMή5swQ<ں[ś\hꩼɢ|u^v ZW٭?4OH`Sl[!S{zYa %,D-c漊hC{3 4;+Z* 1"VBc(T43$ozp>zGu B_)/$;'ƈ,F兴˹^4X^R^!H\7~7/n๭T^voߒ!v`=b?+6*4 O7/Ѫ\ ](lD+FbG?<*̟މLU ^ n:Me@aC⳪ȒqIܻ _8vr!aayRa`E:q6LQvʒ/=L|B@zR,lvbGo@HֱlVj:*{bt4kfk“_'*e)>Em]|f@&r<$ I'7aa |LOm*h&h#4^boh7IJYSb?Mt*Lzj? `sEdJL4X<=ͤ$n➃:m߂(vWʶW1XtP}剧z}o:XI αC2dSAB% 3:-;'Xsj#-w'b`28 - E!s0U lzvȉG_3Nj5: @ww9'Átxò:M.ԄGCece;PoëO_o\u]`~F}PiG6?m!|{sݸTOᥦq@$\q'mWԆ`r5Y=#om)>LzM^ݬﴑ4}BB2qV쬍N-*&|һWq;{5{ nU&:pF{I_- ,)kOm<-!anXz;;Rl$;_5DCsӽ8Fڛ*%hͧU{6rsH_bhv@M~ a4uL$'}θ]Bf:MY[A_ Cdhby,LO&Onrl{U_i\nߪ jRprE d]gJ4ƞyI%X-~ -OsN#cܜ9ĵiaNU>~l| 3 )Ǧ#k½Td&jm[\@0 a`8r2k`\twd@*_j* ~޺Ϸ I*SnS{`zL1R= [Dq1ʒq'0F r\EǞTy(8D kl:y©w_YC)i`xANk:BDc" j '2n4쾢%s'!Y 9Iܥޯ"!/O "͜ʁN?(N?ƺV!>8ԂgVg*{ۨ x#FQgท:Ȟ 3Xycq!=hN,M\ܯ`#^?@4p#|:nbȄ ,%vDk]pK8$5cǪ/{DKhDLsUnnDzKɨ쿱W%Sf]pP /o8&F@ aipgmCgiw,B5] ;el3q/<M cHŸ'IY l:YsVD EȽ_y vO26Ez*-l7('/zژq)];Am2ĺnee^'M۬s5q0%= Cp^hv\1:D ivK&׺@ AqUH_q?c6` $?ǰkj#7=.ajju37>%piO&eo2(>T`7q $ X_sdQ :K[ bZ,fm):OZCS= ;̆:}ӯєڦ(.]9> 7ϿZײr/_?jkɅܥuD>Qi1/m/oJj~R.^ ~jւ/OD؏5|̅^eg+cV B2SE $L Aw ШS ..ʟD>ߪq}mly }M#'SD{#fr JaU p b_Kv̡MI8ʡNk[/|;@>Jd3ū_4k&p:NR Jj6 @?ͱ T}o8@-Z{ZPޥP'V׽eE0F3Ruİ.x~mm|ҋh.ؤ%Ҧ\o1-,Q3>"=3QlM_Ý;I4FuDViZVH|8 1+a+ qɭ`uWn+8x_D īm<1a6a{3H&# j?Tf{1IO/.hO |(j>T_ܯE2M `X;':Mtꅛ$LJ]oV 46CEj}`6OpOHR|l4 XˏOP_5 p z&:\9u$̦oD{H{FC){5Gw.K(WƵidmg*lfɌ9]Bq\BW5؋N$tis1ÇeߗBM`CW,&s-6 {E8tU]@åHYch`*$etCnKx3T^1@ )O#o!D*N MHiܶxY ̉D,O Z@ $D3z"7p$ z)t=0,ٳ9(G87iEބ05 `"n #qO mh9sطq r0&?ޝάi@zmF\*Mue^#<[sIaXU6`]~{=ѯHS\_S+', M_O3eN1L˷P<7.KX,xѽ҇[\ D WOԾO <$q/䮤Łm'BeD*YIF9wq( C{yua]YY iD?H|C*y M81UR,~hy9yk:Ut7nv0/*ho7-VS`a`FM_ܦhT#C 4E b@宿.; v S9#x=rpڭyM VD(&˯%͉ @'x_lpHUjcWlK!-cx!ф48 `|ޑ`[:ipn 7q`Ie`&Do,F Sːdc-AI0saN,ƪTeJvԧc @B23"mN$QSլκ؆bH4#n+jŘF@ pFd!qdǤ g_gyPtwIm";XwJ!3&i3Q`jOK3mZZJ\r~lPLY G]_zrpS߅ =4#[>0ߎr3rvB'4 Ci36 Qdg\uGټY){͢ROgRbOr lɍ7U&#>G 5!*,⑱Wvkd 6\BB~OPS]G6>Y_}GIxult{IO#h>1zp_jH8t(LMd>z_e[in&Y@Vc{V]ɖU&^/Aެ=LP\4zP񕒋'yb V@7dS(Yyj8g$58ϴ^0qU7|35~Rj(S=)JDo-3.Oy6(aR'w>@(bX 'iCv^~c7śtgnqhan6%TjT=򬻰t Fu:pz,\-s)2 Cg﫬3'Z"TXd)zSrSjG7V0=( Hy+!.r!̲<$Bl}c 22SHN`[Nğb+!,ݗzVLLqxbS,?$Jz\:j!X0,9 8T|FSE:W=ŦU~VI NH '6}* >YU]DmS/kJ05,iwon&, ͂'U>.uFT"AQȫ2@}x+z[ydm!P*{[[vT[[A )0πCFEPƿ;?W#ޞ>Z9LbXuzTL63eJh`h_zR#B*dWf`*&h]7YFwSbh܋BTlL }y궖ӿPNZeVp?8y"^㱞4;mHG}u^>bԎZ尮a;3ƨa5L{N)8@S.]5芕z@{gf,jV;ARm秩N:*B1,Ȁ f\鲔)޼~mJ61ܵIѱNzgZ;iVzZضv-:弖fЊ5ѰBK%Dҗaro._jNVK<(+.I6MBSɫy Rwj ׸ ̞Dvd-2{^d9)^ĿҮ#] zSU6'nؕ/1a#lHfy+G][cJ \xf1qa&ζ=a:\rO=qgrqH\2!L @t#8 :1cfejZtM@Z(46䛟EN=gGhˆsW+sd oe"8T3l{S) ۊww % fY-) K#nf!1[drd'@(-3S(u[&-3{q3QbV`N.'$DlH-y M-ۈaX X鲒2̤PPaXa;h]I\nŰG t=!zǪH(4A"U59괣c7L<|!AVGNV*Y<(~}m}'&O#2Miѓ@U05w# =XOjv:B]Q9)EM FFh)25vjVm ™nPc՚󙃄e/ T@Šo07Yv;68V#Pg>LPoE~fF7{p 䀊FS\"o8`F; A8w$z}kr urfz@45(_ɉ \z9wzpBedi#kf+!"L:̕I1b9L2g`_c#~Xb3PGWocckA9Nw @=<*=HqcoBbcEaW]'ß˫ uO~\r2MeԂ)mVab?nQ!KGYz`PUx 轾CF{Z(O=,9 _Ijm?~]IEUKzq#i.9J蛖%aU͏MܽJL$/W#(y#j=LjMBxG{Z ǟ )E, ]tZPXIYZ^ᓳ; 4Y52XJu.aݥ덟P*ކzwH>_w๘i"64.qƻwj=zt*^\?V+Bk?7Qt>Ӟlh jfۼe ȭ#n*L& !#rRcOˈ>#'qp=6J!Ґ̽}L7YcUJtv 4Ƅ(fܣ0y|G1cnV:nJl/vx*rCS{+Zu Ags \pqJXXne.%^٩gWWr!>hlaMb\}Is)-$ßdUǦ20'UuOwE= 셂~ 2׋R4`T98y5]Z,p?idy!J|;b|چuv%p ubhyL(Trw!R ` BRid^>YH.<@#)!6) p=\'O)zod:r;kvX BEϛDrSҋpըNj}% c3[pU&\'zR` Pv5ԝQ9&na;1m`3wдg0;,cUq*`8 4)0Tr=F_h(,=9pk$/@zv9TPBD<~wVrOnk}.hx|WXB7=RTE.H9*,tQ=4w_'Ufa丆3G3kώV=Þ3o{sDŽν_4d.SdC% - ys]ܿ遶0S,uzATI+CI9 ,)Q1}aN n(J;(Rt" ?2RcK!0೤|&Jb$ X] /B;'Mz=wxj&q 'S}yx㮄h͞I4^#tR-K]R`XU w0vAŋ|sťaԠ_1. aNGˏ+=`S'yѥuo/Rϧ4h7 zs0ݿBU !QV!61T,|1)i37WSCN Om%atj~xo=R퓀Kj'_S߉qp/dH1{K͠n[ݼ}KtAO/x%fq=χ*VVqCZݨH-bd}ף_$e=|qdI]"\~#av53Pxw4-.S-z ISAtWgЀݫ3VX^ut2?؏n[!1o^3`J%tr\wRYgy7' AQe} :MU8$'6N㢭Q=J {*fI`M~7G '%}Qdn0( r,ujWSIvT|gL5o 'cѥ7A~t^qł1k1iǥ{n+ qf<3-F/X>,U\8S ひ*CyK I:ӣM$<0c-0z Qh8ĴWgg .m{?_*`*)?sS{HEr;,K汮A)S5aM[tՍU6:Td{W癥z ߲uf~!V,H7_#حqrL<6-euێzŢ4DH KrP3_pU,.=ߞ3.arz$*= 9ShJ@愲lfa='F-@wt1Q`X ag\Iѣ$b7m;^noz8O >r`ئ>o]7)h$=z\;B:CN5\^iLb~0ʖb=*6Zܞ Y:s*1[ಐ /V~%V}rń ueP[h|+wHJ&C+mE^gi6Ъ-*P:y"Thߐm3ampQQL؀[vaZjYc2+/WQz2˼ 0ڌ*>hA9RO`hJ<_sZͱwUYXNqtr\v?bk2mem~U`OJxChhdَAp#,J7X1Y A]5PSEWA+\O9HLnGYM=],pe Cٶqiޖ(%lӨyF40ʯtcU ߈Y\e]=f)V\33`֒yFD L}igG)[w8)sv+^y؁.egP\pvꃼ2raS ߺت rxQagZ )e滂9ZvGրvkiZ]ހV!J 25F ^$v ݕ$Eborx#sF2o~MBKN뛉g<)/H50\.o#iQM]-yDpV޴jZh(Fv*7c9ak5úh/Z#c&^}8G_DwUC>gՆ1{( Sa(8+;~nE29@(-jrz{}Ĭ9u!zZҭ'{Cpw6V*C< ^sԜ|,h 0HЫnf0f:t= o ϓuwm b@N- 1ZݧOSVn NQQ,Mgk"ÌnI4ԻtX7yB럈j?pblRHx IIvlh4k ƘYк,$ }\jЈ1[KSI`̗j',S:""Ң}KLڒV9."*k)CRa'>Nj5h:.#4L??AN-ig*8#K^3P%f9\>3\dvde=}ᶶkCȪyѠwPnHhU?y 0Y>5h\d:ԷB^H|-X39V:1?/Lp La_!Juq6spO]BQ0JK)yڂ+bCbV!9k鹙Ȕ\77I?f>n`&+^,'+1vKs x{hcJ(pHw4f)k3JQ^oƹ=c=jǛ#J LGf3MgW߮ma|ۤBcOፆe($ ܲ9X%/vuHJ*1߼L];n~Ba̢P""korFo%>l9dtK,;6XHUWy$L֨U-l\|lqA JRzGׂH/\+'ROVvWM)W댍nK(GG# d胳NcȧekՂB\SCuW &=퉣1XP+++R ]IvW_N/>q1Gk*ju *FG| Y!Լ"$qZ_F{~YV|i7C\2=yߥPeOKU>(k.{zoAW'ɔ8 {y[,՛];5klɭ57j\C`K=Kl?Uk!rwǺn\!4EZs[\571DSLـRYJ1'h"45'$1ܸ(M]}XG0dnaU \[qpQ\گQ v&SA_|+O0/D =X)e)R6GȩeX?填#yu x{p >e.L!y\]ʇXlN48zxtSgoB#ne!XؖoO/!ipxzJI9j )pIq5 0c^JVLq:`G54&Y8Z+Z͌M走 =<$a3QTO$zy˲qH hmw#70C1wC/}&jWxĦXh @xlsݵ<6jK]Cث'+ebs4DqTfxg n(לG gw '&JE6K ffi[s껑SӏMW+Zy)NV|ӱU<3@Utf:~Lյil}_F_A 2 ?uHH)qQ֐,\?+T{`6:QOiuI+gW 1[߸QK1QQ*hul&TYSǕXS479-{LݷXG #$1 z^VI:c+Z4e%Tz44:sqNű^!8Ȼ> K*e 89k6I7eJ+$>x6TЛfw H7EFܻ;tչϷ;?OE0EӍ/pYC?Is?,N >" ~'x?uf_ Ì0Z $<pؑ-S\y#܁,,2͇A$d/r?1G>Ndc+haf ckZhۧ̕٨L|X 6?IJ?fw%fnCYؔBHt;# R9|ܮk -{U{iscGX*> Tr<-;ė_Œ_GYmv<ԅQyAe$䛙h`]Qr c5&gC̬~_,X@bnoCS<;O߭$ | s!G}U[गOxd^|ݖ SEBBјrùެyߧ9>:ERD(Z9"Xn/mkZ"!mي+@pHovv/Qu 2MZYͨ3O #]` !\ _.oH.xkLKcu΄N k(2~]|92NYWEQUq5ŎN%bbdj(j7>8U @?rP)7Jk$r#d۾X)3Dwp#wĂp,ynRikVaÿ*- Fr}/ 6dPUՍuATbݎhbf7fl;eX˲vT){pX/.9TfuDϠN }Ԁv E?fA;;ڏz톯^ ω &xٲ7SRNtXb^[|o& (tC}298!H,a1*~mm}ΐ^+?y;VVה ĄW\H/ C?k8 <U\*n@9u$s;ds8]0Fn W<`pl?grqSY3m{16a!J2L%]6͍WvZ:HmxA֏;E;C 8EqqI]\ֵȓ@2|β*] Z"qB6'Fc=iheX9\kT"P ߸^6#hRK͋:6  Oe@1c]@FѭR}ED7ԙd)u䨩T򙖇m]=6BJQv߾rPJ!Z1;S+~C 6xHLX32?#3":V<h tiyEG ᏻiA_#E9e@ 9 af\2ͷ'UUI_ &?<.4C.$^/IfCp@u]ԪiE*xҘ:7+dFٳE:6Ô"Y%. RR ncpZ*-m_!meW?(hOMtV&9NeקiVK3%Xs6C{Cw#|o?t8rY`e8G^  (ԫ .ڦ%n lb_NJj +~($ +@JBHP?u53<_(5.e8A]T~SQ'__wQQ~ TΙh:@k-OlFITI_tx*Nj h+>CGmF'Y-nϗN-U D[PD}| 2Y|zm7}nY 6Kb v32je*G-|ǎuu7P #LVU\?E geF|]:7(fKm1oQ{^n3[0v qhKĠ9!}~ @`%^r%!Zk^M3]j m7~a%dA,x!h/#W_ Sw c7; 36=zPc۠46Vn<٢+Pv%w_uZ5)Wf 0iUW.e9<<`%xHBxrRYϴ\-y_>NBǶAV&L̇tAz#OGh7-d 5k(J</@]Qv< mM$4h &[Ñ~wX?Dg%YG c,(#/ʀۛ>NO-qc14l]Z{b~BV {x(/CFoX ѷiakmJJ=O@tp!?wQJSj*mBٶ.'+59Ӊ&՘cZb*ehPݼRU;fGT&r)BPICUq8~loĎȮ}>bA1.N0# X$SXh|kuJgf0μ?ô%/X]<~OSy_Ȏ э+:v98.K. II3voxP2'=0VaCaF% @tEg{0u65E.'l|'Z-w2| ɽm&Sa_r q=`Sեu|`7#߸F1肪߯wdgA ( FFWB&q5=G\q"sJumr'Տ7GE9^@8TTx$ĢZp$DT +VDRCɎ9kJȪx~Z}7]4h3C2 HF+mp2h7=[ Z?a2;Vg Pn)FH67,0Ꟗ trIw|Y͢'&}ûZVT\P`1#8oUeᎈ쪓8)s1sZU4IV*9U53NZe-ݾ(Y!p4Q4g$y>EFCC޺spwYm2pZ6XɘɂԼƲC?snX {smlrj.:j3%-Q7? hu65VTy*|56Cr8:G.X%vNkn2+E-e u=^@us|F8bTkCAwR%]Z IO-sJ֚WwwE)`ZH-FT6QiҠGBJ{9NbߟћSv}v]sGF[lkΑ=@49% W:kUm4ϭJ ,G]h$kptO0Oe@pѠ{Z5u%Rk̙xLL^ej]]FGBLK>z[S{Ұ*eMwO |`w|X6 .yOɘKJNXNT>u^Wt9ɳ0>3 hrKHH2-&r`0ʚCyz{l%1_?@)E}9c:dKD%Ul.mcO'ރP6Z$q`Vڋ/xRHy]ߣwy>&l?c眤IiV}{uST?mUszټ'Gk:QT 8nM(|^0x;6Dyw?*(D'h)18nqt7=^rM^EmR;L#>f,V^ `お4.ha%@GC%Ð_ /^8ʈy/W?k<%CK. hBMk3`/pϞÃִ/~RXQz8Nqr;p<5ffeFESKRx'99Og:R@lx^a B}]y]]`ˌ Yoym\-z}Rq(5 #;6t@b"X3ik*B)r%ټ b7 i+-.cV&_l?1DfcYJݥrwxŔqq~VnC '1'ԩƗ kIX NG7!I(VɧYvPH7[g pF\Jam=1aWJBrTZ&CpiY 9?Z Pb:IO?wڑ|Fꏞ>1ߝ_c|0248Jwq8 LAn]<dlm#3^,{^^nfR qē3 :e*k|٢HuAEJgU6Sp[%T'42O9\'#B:'i,2B3\k0xI6(OS$UMW 1FV}I2nhE138S']",+`ݗ@2G/ +ZȥmHɃ~4.VSTٯgR9?rvh# }>̈́?ף⍟`acf GlYJM-#%Zxs-2E=4SRT$P˔-ƅ}lp siI7Axi׮'w[U3wi,c+e+knoN\tl6m\ֽ ?[C 2E߇DoTs8dZ|X1:@EhO0LgIe*P#9{rin/B icj̼C 84V 6 }ff JZW::BwM-␲iKa-K3tx)BmX%^sa;OwD[#>T饠7: j >.۠U ac&:;֒ EDkX/F/R._8GExs`2eYxv.u2kr tqJBlX$$dC!T5//>ɜdO9v|4ʰ044A@tCg|."aReUW%\Z@L哾{}Q\5}3b$(Su ׌ރQ)&VQ(<[YZf!.u~pca(Xk |Ljx ߐCW"(Kڜ~%p.:<⹕t.]B8f7f} }fFv~4?9y%XXā"RnVl1!*]Ni&L N{׮]_r6Uҡ NRN>[f T:9΃ۓ۞"WPukqrw? 't 3APx|YqHT`x_2Qd-Zֻ=j&0>1+3!s ub8y2/ԣ}w"0=$%9rXYF 2;fbH4>A d1)BvۺxX89C'U<'&J /-~W \F/J϶-S\L([F3 Hۜˆs6n ¤%.*4Ex{95[Gfa\7 8}T}+y+SomJ|Z bڤGnq,y3be _ͦ\ aEQ05셙TVצ9u 1vB dd1uu%o '^8u~-.jxrl~RI93uGdp>O"҆"ĺȋzKzpW@BׅsݶS!)`&%y4 })q4'*ZU_Qc#~Yƛy&kSXs# @(٨@),G盕|3Njk}YiSڌ|"u\T͉Cw;6d.he~2qsn-0-_hLz%ǰ;FqnyG2'i,e+vx-i?Vk( yX]xB g]HE8t^?~4KvyFR[%4՚MR^Nмs8vVΒcho02w}7]"U7dX&BM\o[mNXuz21U#LFGM{tn 6ϮL@Ȥn&2^ع7S`{ vt`;v91h$]TpQP\V =z 7K-lt $rHohism9Jԃzgb|샓d`Bu낶r05]R#ಡ<'Rd טxPn.p_O,Nס{`Gu9n.vOށߔ-<]B'Q$;'hQ=xۡ @7 Oã9ZTٿLs2A6!knP=`<"ӎ1PFkW__\ jIp<]^B:5CՎ(+1}h*wE4I2f)4ہT˴h3ntU+#ǵ<?-jRDѰ)oFl:vJxkvᚴ fS_}"&|A{+G>%Pu:hY(GQ78YT%1^]4byBׅX̝;'=hn$U~ ; t'hMS|XpU u J4b sCΔgW5^h1̔OqoH;ҼzYZiL~Thm^:UwJQk0@:c ޜL4LY3J"w~"3u{TLfwx; E c(zWC7Tg$N ? -$\!-l 3MYi%J)9 ߞrX3 V_AİƎT>va2 *@+6 z'Է~KVA`E:e51!D3mb =HGCȉg+geeN&hWw:Vg֪)7!J6ofv,8 n:3vW *L/oН\ND##mYɛǖŶo*vX[A dmΆRuPlx#x)^S辮ruPԔH^A%$wA9v̪dV/FRn1[׸o݊Hσ'dU=:܀kEªt@.ݎE(s!.blŗDmeMLUdLԏ*T F!pOZRzj@Q,( T s'غYpO4NFu[p3'.jkI鼕q+g'OŃ*vŦJPbD>CNmBe0ji]crw; 3DɨHS^y0'T:a|7兖+OC?,(QP ፲qs#.CH:|ڠ뉬rCm>Cϑ+:_.@% `mD1I9A(V/GT(·J `J>-~3V(#-O a,\$*gz]H~nk="HV 1x`_ub%dޮ~@gTܬRn<4biiGu(ߤJIO*j}R^5({Ѵ1혼`I0I `dkY_Phӂ^4|L`&a)G?2)$ lG5xNX& U^=yg,臇 SNE片NM2%G1yyZ|324 dlӐe:Toyw@\ a@`a1N&c|S١PpVSۮW4כ 48ܹ?dLޚ,xs"Ǔ'iXlGAw-y .7#C1ˍ Q,oEEqЍޒaewDiHC诅' /}.l]ʏՖoUeehr:?_!%>CiC>)LdZ*ū966[-!' ԫˡp_ͩ?fد_,u׫ h^εG윕^,Xƾjۼ$VY# 3IG9 G44EF7۾Ɲؤl#7zctS3!Jq)V6{[yQh}ѣCs5R~ْN5Sf0stƅx]B>b*4X70VHٿ ;i [ FQ)@l+*LTOͻnYYTw02({=Ϟ89l|t$-e"@q|D{H]4 f^l̫Ac;ɿlAQԎt t,W!ݠBM`{\i6hh_I]ޡY4mYy&q= {fMpҖBZ~p%|Us;L'جSbfdr`n|rcpkFxF# j l ּU=7\X/lx7ܟEb+ R'x}ΎBHr { F/@kYoPcVcnp>CH8,EaG-41a!-?ZqG}V(> 8)PmvGt_tSry~w5emR{kٕk~`k+dˢ!v feG6.k>faWN8cO enc3Xغ@)wwO JA_vNZ`jk3q܅Az̛dwl8gA< FxnN--;SKqfaByLi[JO4XXuݤ$2[@\67PڧïZTXfD1 Wu9 d L]bvgr<آ`X$tbMxCaՓKv|,%ۈ?b@73)mE Ve bZY.Qa٨J=?GⵆOyKTYc:Geu\;}(b"*]e p@O>QZнKGRZd .#R0W3o&Cbܒ*/tި 1F) ޾!'[,2 x1ota0_# %$ Gb¾M<ԯP\ il&}{WuK't+^;raEӡF~`v@͞4!6Mj@# i1Ɲ8v+I&grD=&tRuR ۹97X!Yѫ^UԒqFJj89ja(Nq+ hkrttCbZJ8H7Y)Ts ܣ=*5=R gq␂ଘ&9Yԝ)=ga@ 9q靴l7ʔ  K$<\J CYc4 OW4Џ]/y13W1K5PW1 DrɃwQ/UnvƑ5.q!h#/=DL ϻ2jp8O2,g Z5QDR 2L^ї`q%)Sno{x(%>/I}KLx )VXlCS"9ʾl_cF&kqK3I4h%/֙f$KE ;faPAJuvXxS΍+Gn#lWwAt9{U.U?edloݱ#:i\ x~H6G=8lͧeV0"HQdO,z ɥХ7Hydu\շ] ( HRC;%g*K~Eёq\D/|xA6~z'7}ڏȌ~F-82?'yJx u2H.|";z܁/Jvy#jtRNJ`$>g% zA1_ dw@QNAa?_^B׳*b "^Kb:u>>`WcR| -<ԭp l7cBpȯU^0JHɪ ASQ/UUvx$l\k0,.2B`~I%~"tJt=Zs>G)Q!că4*#]uj/]ژ& G"sj#"|HW!^KIBKyyc1mݥDşS]WJ"6]DGTt|0AAH/ɲ>0m42!>>Hs*ȧIW`&nXfܵY{ =Yf)*HCIYtmdV"' $e@Լ- E(G$1Թlh11o^+Նli11[H?GGsѼ=DIbzkkw0]h-*b$ UI8ّNĿOg;}:encޱۤFJjk#jUd۵wOJiՀ8@PJQ()QTѦ"n8dogCMG4WT7Ybu_^Ľ5*%Ԃw͑[gD"ئXцWF$UTfƨK[Bg-<]2˶ >P8_#KcMBZ3B6(oBFNw`,  "UM)ъ =Q󬷲>oܷ Ke"l{еNXb,H\6\qO(::'F9t{~W FV_#S&"T!.0Rn{6"hcr^J^>nNd>:.Hؠ* bx2~A_G.֗ƖfYȷuL .ߩQJPol!ꍫZ|݈ǜ@e ̻yȜũpI_Z3RowYH-ۿz'\ujyD eJ5.&bϹ24pdx2_VDL^ <G OqqJGGKť-Bq?%m(" T ܼhax*[Xzti9[uKdPHsPw̨? V8Pm=Rd0{Z0%#*tAgBU7  A;9&yш9/Lw*]3Lƨž9"ͩ0 f)Ќ{[yS,BTG۸\%,m~[MZb"f o}-EB{@zf'0N8t ǵ ׫}|{W2گۨjPH!%\焮|/P P:$@k1$h`W\?#64{5Ah}?(7xa9SW! !h1É7NаU omlsʔPD4JoXb`kLȂp$zxʴ_RwQP ;OyU#KǤ\3yV,v2tFKFҊUpwE cC)s<ѻe &d@xdnCET8n͹GDקK !LyaR #xɶ)BΊp1xl,Ę7~"aHJgbJޥ^ףP2  ?Xyu]F|OLazG5F~j:5sk˼jIx.WVP^*Z}m/ hl*s/$PGl,IESi͆aȷ~Nʸx^G]I;tZ5D6$9f'qzIO o^feWO+P}){%"]iFGr[-2UmoxV$͙!f{&MOy 5[ض|Rf܎6,0e$ 8=u6Q Bd0^+4$_[f  <F"h(7+ t?xRivF⑫F ^~Ie8X)Vv^y$Wr`>\Rf- ym3xVpÅٛ2¾xxN@pI8 XAFE#UFn@pM[s9FJwꝑÇՍZ0MDv;ݕ2"8n9,RE%Eek\QpS{v+7&2OϫZͩYՇy˙x,Iz; _Nh}t(w2[ AI;om+ D!VZ}bIyW3KWvV9UF.9{'ktƾS%M|L,qnn5 Zi2OQ;nW&˭ۅ[N4S*48NNO΢냟5Hh+Udžd T|e[I/TbKtr vYr*yml@s,IC_kW L%j6'3ԉfPJFkӐe%67hwZ"/Gm"A|b bmgXRJs%t"~ q1N?T4!:40BTBerpnyWS-,`[V]WMlq|p[7= Y:`̵'w5&3&Bkݐuk7U ݜkcn>2HZ[TvU jW# vnqUz>.ɱ:.dYy!1 ^k0 >e]S25Ji8᭦Yϳ.F͗zoTӯj{y|d>< ¿U=St6s E}VUukIӸˍODbбF#-' kަu,Ѻ ~U=!|e9fn<)axϥ2NTkC$gëLS.!j18:\BZ~sf ?%d?<$Sq5J.IIBCpk|Pee<OJRn}Am_r> BPNP ~e*qv"N4 ƀ#[8-1mwMpD E ΁PXԮjۏnA:#L9)v>JiHsr@|n1ƿo 8\82s2_+z̩z8X0WLͬeX^y>/ xX8 Vw rT3u+GʭPs0Wtj@,NSUu70u*͞N4<eJ쎆 0\]U/%ף÷bS,Shڕ䷸] h"uͲ@8j`!ZX>AQ-r;ʅso5B쓔^DWH$@ .}zx-om-ӌ9j;̔Dw* :n@-wuxީ}@'f2BʢgT>\ڡ1nE"ȹ}%QsV3 Y!ܣB. qxNږxh P_2G,*VI'}&.y1CvGZ ,<ͽYspxY>r q m`Ohnu? oH8։_&w0Ѓ#ZZ~1()4t-sKO Q1BebF(Utpu8p-]EC.4F]VZ 3l6 <\O`K–9 F]DuLWejtʿ|cp,Xs!̧J8JFiɚ- j;<},ިtVE^ZҏkI.I7€.XOZmӌMʱiw|ABˀ]/l*L^[p&D7HWmZ;C%ڡ[T)WuBX{YSx9qrdL ިqP3Ck&?4o" D^}Kt)oJr/!TJcpF%x ? zURg*񜓴,r4Li8.7˰waV#Qӥ6?gVJ 4a|KI\ͻʲqoe%3e[腰V=^lW}~wpQm`k#tv-mQ:?giGʼmû'3 Y]3va׊+$)<].&m!nuX='8azGYYr!W&qT\včq7b%yWY/vrG)0zHW <hVzױ:n%`J<~`kx!'35Rֿ3E rfZÿM8xav?깏 iUb"N7hS68qQZ1\df/i~bIgkQDbWFoAүY II\WKnÖ!1jZ+[C8آĜ]{aͧ0jqj#PШ*z/YH/Rzgژ]{i(݃-pIbg/D?8'|07lrlڍJ/ =&: *bo_-\Yވ߁bex-Uh9~"H\=@~Nܯ8'Ӳ :"C&dL<,=Z!eAt7V-їt7@# #ʎk9@STS_{'MW/TTBW_^suܰW`PxD{IO|LXλ}!z6/!M_ Z,<] X3 W&q>1N()W[[-Og~"7%UHl&P|z_Q5izEt ¨E)D34"l)` /.Pt5k"{A^ސ #w4/9~6 -oޗ_H-Π-`'ujIv :WFTgHh<*)jVUNYͅ\(@/) ¹mٙcK!g6?𺀶n@1hIKOtq+.13 5;;Gֵ$"K@ie{~x4Ie FɕOQXF[:'!rkA^Sv[zEى#a<]`PchM/+}2`kK[ǭhBMlo(3iocnH;\23j}j1:eц>0@!Y\ |_H&OPI x<= 4NM7s"oj]5~WKJrS%GP493 L .Wkl5 xsC24 ϻVcMenåDŲgiK""] ޠX:.Y?tF?.u:{Qfa{ iOw="IT"Ǭ*j-5nBC^%qb3s2+?QYxF*ȓ*WSn-(¡lՀ]B{.aD#>UAI3oqg,H)m MS~;OfP4qBTp#ᕕ|5 5@2tS=ᨔ+U ϥ2YYYӐPsn# "N u1ߩ6٠t&f,2Q(Or#8=P#r!\/ #x>.*2cv4hʬ7.l^yoa!iP &-Ze?<(=qB d{#`Z5y_IPy"@4¡ y v`ʥ܀EϢ2`:r*pTRq;|Θ5/݆} OǷ 5\2Z#KE=H(86`Z(Ye; 8dE+G)BP ͰIuR?NwPq,>E80"61XT _վP:aKS&;>@Y}Zau41[}MÍ uE8㹭,T}SRg$%n, H5h +y ~U{+tXBuW9` Չ߁4` V"a PκevkF!1uzPO1Ϡ3ģ {{p<I@lt ;/eR<+ia_UV-e-.bQa#F XY7̏ʰRN/ҹ0,0[܁pTǖwLv 0v968 gRt5 VO(nm95MH\0O*u 7]SE3ݢ>MIn6yn_ !.8w/sbŠ:Rnl 0^tGRBl_?ą 34@sQN` ޯ @wIt^&+;{EZOPb;Y6 T|oYvjyt;ExҫQ^qiN̑5;l<}C̪26`kY_yrr;׿;xoYr'T(6] -D],} 9yf0?O~P輭îwzwIz.o?\^M1 LbNx`XMԦ]f։Ki!n]9 W*͛][$GzmPWRoh/ilNfѿ,o ꐌ:JCBn/ 4^Rii{JbjJV$ ϤDg#:w" By -WҴ*Yjm\^UN)7sWbIߙ"lmyyj/Zó;8'x uKo[nv?gڇw_^ӻɼߪ g#ii3o6Bll/)uL0X37"fgQ7msg/,uٟ>*6o^T ; ~Fljy}ﻸSlqh4S(7{~` %L;ī]ޢL荾 #5t/y4n Ot燻ts{.qck/F:R#FzqS-6UT\~sHvMvQ8Ҝ8^oAWsϰ@Ibj b VXuka(G1J?Fٛ^\J@ n6[J,t'M[Pn$R" >׀r#.ߵG!]_@?TRj| J\qdWYF1Z̼;T2D݁3u8[ (p[Og34 Sw}l|U a<[r@,Wj.% SN* O}R{IVA)G$jXclHb G;Iʀ@w-Jb>2GVhNGiXY4Ũl ZN:LeDۋm"ӤA&IBTKǀv HJhWW=z3葋iT S8Vf=9'ѱZŗ8h0"ѳiRX5ե W_Me(\?XKHJD0̃c-q낾e }6Edeos]<'08UHmMJNBm+OzqЬ43wpSҚe_vG|FoՎ* ZʼnUAݱ_Vg&ѵ$}_y]q I:m5\VoghfܔbOAPCo?NlѢ"Gjh^_QD\o.u\mw4o' DtIi)XɄ?rڇ1Y|@ 9͒4in_(N{O %rE`cha8c*ӈ@L~|E+hN6JQMڸ@%kM-@byg<^FޛDd {ֺUtP.m \<7gJdƣB̒ne4`GFE/UͣN ByC&nҀ0=F,J }i3{YN'+@G(ey5Ui\̍yYO>XJ}"7;.=R<_-:H6E/Pb^2U ʦ} O6=%#u?VhM%o ѳo`4E{n~keCtlw!:VWǭLsߥ԰hj32&cIa1H~j?{`@/Mlr^Fbo R5W%`۰Kvr/oTf߶k!8x}{Y[ !_$5Z )wb93rNya:3{"k&,jk|(=7bt۲i3CTq۲dq!_v_rL$&Il ຯ̨ &zt\>?-1D jجttAo-D;́~ō_}رL;C@&@blMtgl'hTZ.}/LZ;$I^S$I9$:H+zC CG{ \I@1\6HӘ;yBG~= q85?BI1OIWLLnKkAt3[yO!C~w5ˉP.0]IJqwhGe~y1t\ Ѽ5gTUwx.ZlO^)Bgq!TVR%/?UaI:ZS]X$eN,pڵKi<5onU) œQw"Kvy]^$l]C}I#.'u 4AC]e -q9Ȧtt~v*old]M@؜%s\uoPVo jT x=72vu%2͛MNA,_I[0nVחbZCP?׹"|Gݎ(?_wyHYT=E?*ڜT:j"XțjAӞ>gٯ3P9(IZтX?syKx$)qu*/ٍJKjh CA0(ĎSq&HF &#+4Y615Q/Ճ['ҏOIi\?gtjLR[Tت,KyHYxT[I)43fw|_8|Vrn3ozr Rӝp!IJ~KL5=2YgpIJMw;; Rwe&}=4-'B=h* QVEU`LDݠ _60ER5f3h)kM> ӦG_C P'/opWtydq x'!qXA58AL #n&. *>06wiLM5Wh+ݒ>66f>O-.#*m &[Y׍ҕ%YIhM+y ,$\\W8[mVy 0h+r"$(=aަU>&=.˳+8яe57 cx" P=1g4nd/wx4#${B*d#{pa!Ոc $rRN8 U24)+|{b?ԋoډ)tcxXU'X쌧p[e}bL\̟+wnqDSvuwsJux/2t)Ɣݞ߷؈: 叔d壢Ag9_ NKih@) g5~XQM7O u^?>MmUM ՝*;d3 C!^ ܑ?|Quo$Nu߁˞rf*§Vi7U-+/)jb3<)Bmr roIDMac>9;>n]-5kPlo !`z/Puduֶ _K o]ΐyMCjF#LHߢQ1 "ӂIxPオCr_zX&UZt'hEtmΘ0x_Էhsz'LoxX?Դ1w41`?3VC^%զsɆ,&}WfSF8-".qw4s4JeLZõ }L@6D罹Yf/1eg6bQ<g@tz1jGà^gg_ mQXϱBKk&@V`tܚwH~KukpyEw"6 >M˖%;{CQ-ee/U qrcWcPʡCF^pPmP29m{ rR~ 687ѳ6el, x'H?ztiky~ym蹫AzFU՟wvN€,Nx]_p \OJ3O@Ɖ"\>BJ{ʅil a/׭CFH5Ԗ%|``o/!HS(G'z>JxhCF 2n"'#qi\3Hnۨ^ HoOk%&]ճS`zw^ߘw \H\*m;Tn 2}I#M_`sQ;f͌ ѕa,.[S<)bRB%hvKxSI-@th#Qy],Cƽ6ִ[z'e]xjhX 4MwPFyoffh3!T=0= Zۑ= шVz7z=~w~$M/^^gOn'cˋOebcE]!>[Ky{͕'IXm"wF-2 I]6!= f'[LBx]zSn ګ:]Ǩ^_4ދmuY}]3^wm ,˪[yn~eVDl5$I.[dbJ-VZ 5갂]Ce,\@.xSC"!@0ӄg.ZJX5YF3G G zaoK?Gsk;NĽO8Oἠg" sІWI u~wloX4.A~.^HՄlzA*ƌVWxwa@%6+fȥ!yŠfߢhu)b9\KӐ9Q=6+JTMD/giiMˍd돓fl" 9iIѳH]|P)˜FgE=SPv,wlY%!C)li2=g GFl߂ DLTlܩ ߄_\_GuWI@2AH~CoB vR,.{0@S eVX\f4VIFɡ oް - {I.^H'G R\bVapь#F(]O[rrD$rBA-|8>oRnƞORW īmם 94 L?l5Y7 IN$opK͹tfՐ4ɗ]Lm?o`(!.'ikAĪ>2dBTm$9iR1 '|bybIp[p\}0bHK˒[Qhx4a^z2O_ߡ:tBax=8&_:?}ł_qSvڄmeb)hupB2:3_ @}wOhSڈE>0Zذ@t A)8[$ʨ%wZW_|'Rg`ILXgY\~C!2(Xuت2alvhnv8%ir:-aPe e(O9$Eo1"T&u.qnW|m5ٔ`rGM(~ƬH!X1VodY=[? .N~nҒY'WKኂiC'GyYºfu{ fʐYR=\gbгx2.%e@GX܃l^*(4h`lgה8;ӎ\TFfoo.PzQP[+ηL"%e[&DPxXвI"M5H2ۮJF!?)9JlADz Wg2Ѐl0 SٰL# /7PLf⻥w.W5vrµfyh_ɶ 7X\Oс^'0IT5½>eԢ!f.^ \_"zdZVCcK]ߩKX>w@6Hph0fߓd4 2r"$9rK=qQ\lݚI; kw'ۖ}V:e P[ \d,@dG~'/ gh&@ g3O Ĵ93 hq`NtgF8&>E,r RP3x)g]el?!O+/Mڑr?DgmM{$=xJ%7l +8(+B~lnvk3z 1~u9PBML\,c ]WؘH'-Zw (R"8T~|O8eh:MW\&tp5_EI{X)l^}R~E}!՟;i<'Lwn\C KKzֿC}of}[?cVO'k!sX +8+ݹ~3 3TZ%DFd{j7i,u~ UO&LCp䪁=#:}GH#@G⨏^IX}nS{Dk?'G ۼ-'J ]IG`@Eo<]_u:2vEN*FM.)@O qЀm'@)ꨚG2xzl5է۝C02[Xɑ;uL lHЗKh"~C)  @{.'CC5n*:% Q@֮WpOeh uK |.xncъ㽄xC&=|H婤D?;>Jġ5xӋ_ x:\&o :<e inB,yX`žeI U84]Y_蝁HۋP[µϪݰAeA/e]{OcѬh"5dq%>_''Yi@%-"ҀD%*Iüb=G&>$ڃj30t)<4Z.{ d/1ѣui2y/jV0 m؄}.<4x%Н:nO[d.9‹WA9ļKb5v)>7X\;_ #1^'p;i\Av|nE/vqcޢfsEWs ybjz,0R UJNtIbh0kf=53~bHN%Tdm?l4o`W{($]+AH|uʊVL3Ȱq%Dɠ3V8u> mtxVs+;ߋ xˑY >>!3, 91Ok*}Lܬ yҭȓq *Gy;`8(MQ X+\z6$/z J58 UF|N_~~r;j,zKWMz:q5e%Oaw J;^[*#]8J0aH-uq &%:ṅ @EjT{t͐!*`W_'=b˭˜ o:gf  2xd߮YqkƘƏ5;-?:] sJl@m?0E{걲Djvk0!} rȋ紪h VKNhUI|OݏVnѱwڻ§Ut`ufW{r]"kD>e6FW,ƻA%jllEChw H] f 3?`+ ^+-A;W8 %!dgX.H1.DA ϾB, ܊a\#y5sW#8[4~5UwWew$YыWk15&R8uMM,E o*!E+bUy{9^)?F tÜf4X%7Q7;8H;)x):i}'>uh'S,hd"ACphHFj3`d,ڗ`UVԑme6>k ~3T #yGۢB QXu K(B?TBf\V7 z9/NՆ9$׈apٺ+lQגA bXXhe-BRFجlGdu~b8C[Yjɏ %J=z 8M{.&a"Gm~M*`@Bث*c,G6"emkd )KнcyRT[vR8vheFOI@vַ6TM e6PAiceAWbcVw&dn7RʻAzjJ&5VVU\d؛Ԥ(&#ȉFR$jt:ff68¬S9YwĬa t(1/ǓJ2ϧR]z>cWՠ6DŽ))8, kj9w6-=54e鍒&-0IDŽ0yogYC9|#8I<̄ iwVJK5dτ`[5qXnao(|^ZRV޷R2JY> Yo7Gmhi64y_Iq#T1~}2la&5+qQ&f'>HKYԊ@A@!,T1s<M\5WM֑6~;G>멺å p0Io;?ٌAa W Yp @mxpQBqM23??]3%'NWہ WqEbyqk(}\S;zC@Qԉbyנc%pEw/aMJ{O,ޮZ80:; _Ȗӭdk1y%v9!ːؐH䗿_eQ7\z4]C4噔O99wx'"c`vp,@x=?lAٲP&8:Rg h5tK`+̋XlQ' %VM3TT0uFB-&hۗX/0`v?2Y;ஈ8"Sj8 X}T-t~x`QäG$.Z0R=Ё3ɎT#miup8c@w ; ,kҕHXc}kaz] .9 oڡzvS^Zuc=N/@,tpJŹj a~8 (:a)wak\cR{K/ Pallg] aI:R{^)-!Zu6p<%CיX-vK%ALCл)?3^tqc6M!63b/vnsP zÅkwb4/fEz-avh dCkX$ ZIՑ"-<0>dB%"7&x9’Ikg[mO}3k|+G:tg <[% dF0EYB'n t-P 58UgHߓU+"Yk&==75iu|hn^֘lXrQ Õ#e1Ahm `oT7X_BudClN]N xDԥK#;LܻSmEQ$'^ _QdTW;y t_`_fw ui;oǣw6B{ |+% m8J*ѫW G*ܠⶲ>yotzG;RRRS"ڇc6 U]3DW#wߏ U&6mؽ_xU /!b 9!Ǣ9H%H7vc&B¾\eXUDFb,8NQzM/p@ϔE=Iqp̊e,xMQܭJnK1FC%)v\1ֶk(,fwlפ$̘j%{ӯ'קb?6jjΑ3N{$ӗo:L{CdKiS#S!~$7ba.r]5j#]~}j9_mSZ|FkL];5kBhM$[mȓyEx-9;1QE eC/R@ D!3(9ԌLS =ɠ:ՖJG"!q$EU<ωo5Cji^౔"袲\$Nm6re=xP[Yg0!GM ](e,AI+U-2//&pS%5 KdE_JY/?dz"iYTb4{,ᑇxj%td[,u;#n-D!#ҡAZMS63;lSUA,EMkb{v(jae)_Cϙ–rXlҭ6ls@PO6`W=lϦ=hC{˗Ǥ!;_s9t<E(=t~ꊪfk0Ԋh] ~PZжu2oT{a~ =d7Cp Р kl=zzwʖL]g pȡ:9Lq+VIzpI܃Xgf`1Aѕ_ݢ9.A CC1wor&NN`}@9N[,eqTf a g5!(8{ ]FeM>fɆ(TQgJ[V.x ׻d"ҸxMCr"Ǒ`*vEu=lTKKqy%t4n[}7"-(>T_X>iDCG!z6D BL.,3ܱjA*ng94i8 <`0ĎZ08۶(RK68k^`vgs 2Qjdg8? ; ' EVEOεgGF̙{mBNBcO\{ Mg< %OQ~7l ٻY8{J[4)3;pO />?"j>{-i6S  baG:LUsK"4((ڧy0Q+;^8M,89y]kw,)̝sSmH(pݍ'qԈ{T Kؗ'yQCWr`7gpWv$$hv 5MhVDxAɛE#{ |!Pae>%yuveTMaM&.,tdP'2Кu?lx_ji("cܥ*DR7ҢAG!"+Uv V2^ MEHkZbR>wgUg!2ͳ`@M_8/"6l%/87dTX J?`c$MM#< $K3 MT糙Ӫ)Lds$h^sƃ955232%=wеp@c,|8hId2yo<(0mdU]Yb=x#=Tჶ@`nE_[g[Yq e &=nYac,xnwS3JB;cɡ/X[ Ʒ1X܆ dQȳʮa㳺ܼa1@Iv@m歿aDa~&% k( d=-:GH)yh?mq}$@v[= 5z#_xrD d2| /P*TaWsF_TICv**,{EŸ#ZMmny"]1eaE}ks6L#0^_-qh]E"s)#2V,}Ng4Orv+g()ZJpd.p XWwנ^jFO9%dBkEoA,F:9-wyhsQ4g CҌ:~$AJ/ݿ>V2M$&/&GL-:|쏶G̋g(N(Lzy`+ĽĔEnhyK^rxc?qp:H@;1eM -LYƤ[D%7=S|ޜ a95ZWtK=ęR0 GWԼC`kJ7 @yʔ ?u ׎) olnzs' > X6PL[ECP03HFgL?B*`AZC'ndD ;>wx*-Ɏ6 E&O_P?Bz$l?5J8-v{%uȮ X/ -ABIwé0MBX͌-on`n1`ջm,ustG`jާ7 ˩ h+Mg6/~n-R oLZO K.83pJ% @`9LUf$˸$)]A!PZo>%}"cE!k>wjUR&pD- ; B>f n(/(@pO:EɏR(H$zx64} !N|YL*iN[Ь!7H=*"a!.lS0%uj-тbdTMFf@+e0 z@u'YGz]LuqQixh ٢Q*qx"(8P/L5;*24I0P>m+a ${;+C,VMzj'3ԪpЀܱn\ryZIJ)WXUHnTC,EwFԣ:}OȀk4s?Cŏsv4rK֖Dig~0,aS,LkB+OѬO^ַʃӈ`.DjEH zDo9&;P&bQ[IM߱Uh#$+H`4jʭ /IĴmCZetOͤtO&DZ -VY*r`NEaK( 4d 9iY#zуtbT05ʫnu1ӏBofےT#t4cGTfa0/ݑV`Hczq - w+2ېJXQP}|X1vRke#BX[x9h")|>AoM kB}4HћiYI:QX^3W_l-⑝]/kScXƜx E4%˕ѳ tȖuߨgF,Gm^\ &K/um5lB `wJ klʽ)ʈ A1*Hv}J_5b7u6 ? q }y+1Ajw9oJMpiIIg QPm\ PZT%XJm>xC6馆)Nh\G+ٌoν@㶮3AT/_p}@??,&?$ZޮOs`A!=˙Q{aB"n努wH  ;lX5-􎸖x)"2X?V5miKV K9 -7ol@ᶞ>P˭^?RY5Cx;G"2D~V BUjno= 1r^N3þ? f#pY'yC >g3Ѽു  Q@ua$pJ\S:6Q&ϝhվ&FHG۔ze 6r;̴-izTN QlV Sh`=Q)ͭ4̳.ԮgSw ]%1`}RK #`Mh>rao΁RgjZcd3dMqHC,8kw|8 [nt~8_j9SR gs!%4ixiO DD/}xZ﯒9׋ȆTNʄl[C)JWA4% [Uv{W7&> d_ nw9"<T'k!mhͅ[%*}GҜyewai@**yQ@~`IL>eD.VWljz)wP+:g+MDz` Vn7< s#Ȭ˼pϲodJ qLvMd"g\YN:Sn1˞vf@7~Zw-0LqpR[) Az9|;wL`wõO,#zda9X_=$g>*1ia1h2qMF p7syBIr-!JY7S侭2-vVaZ! v>sKB敳L}BeNds?02a@ +^KN7b2!&ƹ ٱ8E7ļ`tO'_ R5?P9kXzMA#.nh%4 Mcv1&A}bB{$f_ 6I;N!Mt:lbA˸S68PdZA?(օWw&D ;LPҪY B=J۪\ [gjU}J) 3FTBk%Q ,=Pktxm@"X4`K$$|[u@=]Opf(Z~˒Ji"\;0QBՅihX8'Ff54e qb`~UrnRE eb=ScR@3JlƿRzm@Dt^^Vd,H!>yXSS2^LS`f2΂HnP݊TFl.PQ-6fQ*  xi!Vww> 418lǕ1\|~n~ v VqN𷠥Dvg`DTFâR7YW4smzyW]Po#R .x_HJ04!~ғQ`5w;BBFn8h|YR̘*ϔiذ ak'ަ:yT|_\uqO FRaؐqc.EsĬT,A nObKƙ{,kk/ TX=[f/Zg9"{5cRC.,\#Eydx~ЁWX[4ENrכEE 41Clm72# Ⱦ!Slg'vAd[_%mSjN*jmï^a aث S ՈFMܾLy{3`+&d8 6Ÿ5{q Ex=qفtZď}DŽ/ )ax,ΏӅ3I ?֗ɨ3%f36*34Й(uLo4d![vd㐨ABbU2^3xBeG:Y☳0M)袿jx %yߟ ipzS$gsN+sP]OѡI V;jƐr{WQA5?RG/A9?<ۼ&QBP_,Cpz>^Vdnb)qL:2QZ➈968jhfo7Kvoޔ$]پ؝ v841m~Ġy'q"@3F=#JR HJ-r/"ƔG$<9Qǟvo ц &ѮIxj]0~y~5_yRQa 9W.hi2^ً}빌ۘ$ :t,߳Eӆ -pw47@6 v8'񼰖"|PsDb%3 K)1 n={N2v$BD={4-Bgs+F}ЗF*Ƕ~qg5B36>Y.pGfVY1't9Îmi&L_u UcG >݅ڏw &~$nYٜ{~ʡ:;M1B*4+d͟ا ҿobB?9 jƓNE Ncmk\HYFܷPml9)2M08O4mr:W3ۦ&oD})(0^`)گePEz3Hm?!ɵj8v4̨zSd)d,I&rp\Y-8bмLmܣ􃺷)C6 n^Ws`DTCyooe>9KrFq_N.ݪ>Q31&/eF]%;, .EGN,%ۍ3~ҬgRGs*a+<է'hĔ` aA> t qo.[ TTʖkSqQjݟF4J^mtBj Ӑ6/Đn)9o\utrȥ6^-LU!^{}'6חkX'87]KPv綅6UX|̘z:;װA\y>5]RG3p\&m.䘶|DHL]ӍȮ@ liQZi\vVdIfVMSvCj Jfur)"#j:u"`+Ij8\6y&AdQ}K1P4;]cQoȬWJޭwԼ(Y@оHfb= @Ung1SXp pOȶ]XhAeiVmX.}bēqྟ "y+Cmk pa܀DVo!ݢXs߅Xb͙E`s>_Tw ʓaCGD:3l\=.5@\M^Jf֢ٲu1c2bqH@Ju6yuiR"q޷mdK!DC%D<B\WGS*i"/2,nADyfّʗYnBK15H0 E_zn#>rE{2 y]d?՟>|(83j0-]Nlo4X/ph-|B-s;YW!f ơSW̅:ouQSpgg*^9<}?P<"90]7̈ff`b`8k*$\} ׄOY$/G^"CR&~{hʷ!h&noWj"6jAM&d*hrNE%kN!9A:J-zξhLW02;.{^x?/_l#^Ei@hw(J~ &譠S>v:M^TV 2Dm7;8 rw>Hܒ /=低NOC51b uvfƆ%4nզ[0gDR),^VN@bR6EFI:Wz_cCkƊd.!r*mzP($Ϛ?JKfG9.W96Csfwչ&&iRV-.j '^ޘ9 W9={l=cgnx l>*;ȣJC 㢩*3q10[%vҎ0*L3 zoM Y} q&4p5 e8F &KbT3#瀞 >g7vS~Vwiֈg>k|BPJnK q}Gclgmʏ@r xVS6&żj4U  8 ?._P8d-g :9gi;#+Bʑ\x1#w:k UXk 2/5!gJv.9 XfATK> /Kf ;_'DCN}w3~P 1ӷ-W=ƃEat3&e_5x72j/1}#)Psi8Fo[vVA- $UT>pH 8~^!)W=;b~Ǥh >'b܆ ۻ%(%8le""<.Ô=4 =" NݣoSܟ髡"x-L. ?!xp (1qJ~+YJ^;8e9*s+UN\&Qҥ':w칱t2z/2R.%d [-io4aͩ.s}D;\eh<,@ubuiJĮI+c)*5r\Ꮲ-kIj$ij4)9d#O lt恭;`=tHL2X27d D\EO Y&UeP:X`2*\2רu\a͖K>OH\eV$ rr4ʌOK5;tԸBȋ4qsټO!+TXH('t0Gu޹P^QE%{f/4qăSRg$Rh{#_hed4ztotN T~ )y#θIC4js(\ŜcRfK` D?_0#1{" )|?'-ɚ[d-FDs@Fwܯj g5jK1Y{hYyru%^Cw#&j芲ZKc Du /)z)' ^[6#\j`n^'r:k{0v^4.A=#Ҝȡ[ }5L"JesIZ_:ivnKȾFzs˽?o=:#~o>>c>hXAs(:-yl q,y"58F >;Kfqt5v4+YcJR:ftS.r^$sOt?7{d_zV/89AK9iek0{A6oas@i_>)!@ى\oؾcY w]*?y*ؼH rUـ(Ýn^o)boX[O_ft+JMr*4MgcCR` /L@ n8U.CYٶB ,zgwI~غ U\TF%V%o)n)dmqӈ[NY΅'OMjY[`^Oq $#1g Q5e!]q99 Jrst*AwEfYаL:6°:9KwY&^Pe (d6`.N к呈(!n(Ac_B[f)_(o@hg -N)RZg3 Q;5q#)ET k Լ[帄kij+ ܆J)vXAApFF8ܶ(,ٽRÌ$hJ7K%17ڽ(*%X4ߘ%'Ur7ʹTC2g mpr?ܙ-A@$)fQ,?=Bso_\Հ!Ui+&vRZ'62uKr X3߶dr_{$.]}W*o;{y&qCi-Ođznc@rđj\Eh+eŷt"3*i."os85%-̢2AP寂cw΋pF`,="]V(hL-OaxD;T,^!'Ǩf#=/B ;{TYLw|l=L಄SG!h^m?Ă~9X|$t (_glT84}eX#-,=޼6V~W}ɚh2(wqS.#:kɨƋ_:| kY7)dPۦ"4^j!fQ,mV)4DMa{'f$ ss=89g5Q-y%F/+]?0MNv5!rKb yZ6꽭{$ڠz9eb7Uh4_}vJH%d7-~?],{V ,Fӎ[1zO!tf 1D;E0OrueSVQܚ:%n#pB(SBRCvMsh4>S&}6&uL6ė=,ɤz=֨1Blյ'_:y< c&`v+x _] ʷ B-4d}gؘ҇ y;Ԩw\G$dޗ"h96"^;)i9!ξ "A5^iJQ&:o҉$2kp"x*Ts-vÛrB<%8qOCRM?U7{i[N^ ]A&]݌qk[npg-N +={Qۯƒ^DѦ(<JKh]M ѿ KpbUPM6J*IhcL,H5CZB;7& }9#;{ާ3 AD&BTBY%Jܶ;@jx1LQt\o6œF T, k-#~{o(ܒ2v$Fǔݹ$fٌc4&uYԘP?Mege,ߓ͏Zk$[z2)3[DI-NHɧO]%AyFn.>dU!KM$[M?tpD1ڍwaO'a6kOJwˠ~ٙ6WY5aSlf_Q]q$K=B0PQ@߄CH]aa|!#ì:@%Л{Ơ Vu塑1Yv 8BA}o_5Sm6)(O7i'o-/]DȀւlR<(~ OG4 EW^w06jlϫm dqŽ = v}NB9Q vu8 KO\Α}Dz[}K$֋JJ`q<>- 9iNBxԒ8D ز=?Q9wg b%"05YGл|6|hgb3ÙF^@?r cyu婅|NZI4کPF%"5WNWɫA gq4Q7-}bpmlӯl~b|y T[ʻS]ph)|suSMhIlv,5?<e%Krf^Qb 棍 v㨞"r ]QCmWC3Q56uM1#4L }i:hi a4o%`iȟO{HkW<8wW.Nɲ"L>-[ 8߭˾ +HneG@pBO B*^sږ4GE`nD@nEa" 5Ϟu5=kzᢽ".cXÄJ&vr[_JmoŃ ug:~hTS9Ȫ $G?Cd GiY!T MρuBq 2ZPTK>5 Ys?sl6|#?'q`Џ~ə(6YGقʹh\n`ڊ^|O@'6[)w ?4:@8[ulm4`"ZWkfpmT_)1SG[z\xN=LItׇ4 Vk%*rάos."@/bt.QgѢGɌp;5aq!4_d !]Aju9Q6bDv@]y~gGG!:cgʶJHݥ+P kC%_jC Qп>bzcr|%4BiU_=]UxGgQ\`8l-"4 n+`S]#)yA}3 m?z-wx%, nm㽽1^7p OB=!7&>J6l 9ix_0EQQTxK/xS\:^|?+VJ#PG'BI6s3G"&LN`5R!(It?1vziX Bdo7A9"X#j $]e$KF/j<_Ɣt:p%☨6-&v#]=bU@6,}d>t<61vU՚ 9 iϠ.|jXo \0zH88ǜQ=Fgj(}O[2o;{W~8yk\(#0rl3-'UJ3ڮK%aST<>ZhZex7./3}U=.WTI!턄:UO!k/Z%cqKA\9zeN$9|넬,\enY6nK`Z_.M ͚f$əb}gP̹^EOSM ڿ2:G_မC~̃h sg8$CaU*ϲ[;u.Oh%YA0AVYG = [ol&YSR *\+jLLwn+%ݪ8UaLE;%o* m^ywMeT&iS  1b ̑H"5 ;Kΰ՟. D&>qh ]pUYD-~9&~l*,,L{/hFt.g4upYYb>0SvXѷ+w6ݹ? ?‰vopwY+iazO95BJrN; 6/7 Coɍ 4 i½a**:xw픨ȻjLL̈njX^DQwkG@jhe4? -g;I\5+ˣ,xWGxW?N%>в&hvR DRh| *Mog{r X+JV6vG\W 95Hʑ듚=X` FD3~U :#JdӐҩYo$jur$FjwD+C#2;:S~&(&ad9+q%6/.&qYg <$_&J]懏$C ɏIƨ[u"hP*z;BM+6J,.hXۍ,8剃u&p[œeHn쭁Nz Emᜰ`@vs'_ /g>QTɖSJ5J0ʑJ {+?Y9!Ŕ"o?_# s =QLNr+e1&ФPO3N!ߛ͛; % ?'ԙ눫e8#2ϻZ 7y+fܲSR?Q~F պe$ֲPDuv7$c*fKNWJm[MQ!4 ~Ƒ?"]cnF6p{;TY'u=+KB`]tLADV&iҼ%%B6nIȄ2C84 %@.ǻA>tKg˜te˭hS~ %̗ft ljfQis٢ &ƚ>)>_wb٩.Q$hQ[JkKz%&~E0<j9Ig[V ffGbzBBOp6W`d(t宰B|`_ԼQA3:HdOK׏=~>C S-DLYi˪g2h21{8 ]v^W$7^TU`CC3=P#_Tfl_id4{P>}xr d.]:*O4Nt;1BTز2}Vr_A=.8Ϸ),DA?^DkדSYb]!.Wy bf Ej7$0@W\sၓgbtjM&T~i ! DDDT`-R4R>B7` G}vBKQZ`D00QÏdb Jg@P4\[>YxTgK4;o_(T_-yt1kX؁G^E<3fƱθv#UPA50`0jkA?:k&jH={ӉpםUtL𘾓ٍ:cWCBPCi8{8wP;Ry;pak?J9ײtD\#WX"e,n]x3_(6 #Bv.32*`a17Ex0-az MwwhTG&t +pT&&ƽE !4DTc:?PzFn6X=up wwn_O*Ɍp{Jy>8p&Ղ}ӔqSDJ(- A!T'gGz\贽* aaͼ"ɿ+n~ G*Nd_>>F+I.֝?MW6텐>S&a)mQ^B_,(`!鏎l,kD*f@$[cjW(7eKV9C~( ywOaO7ZmٻÈF$e\ ܓBFQ25÷w>XIMs@ۄQ"hf̑.D95 ڈq1MnjtoW3,;gxӹ" Oڜ3! PZC:['[ٺۃV+f7%([*fXW[ʟ_I9qj KUat%W3Y W vբPy]R~ykU2!Y~GH|yM7埤y/FsP_'hǕZ_n%Xش xITXiB8^|Ժ&+f1{=##p{ER< 6iڍhJl ^[ s2tk!Pvn-!d~UbJ }:B~5.AӦ1<㪾i%,ڗ61ݘ|Ou,wKuhwg,twC-4hݖ~ipPq@F$4v-ʼV=|<˄U:}w k "0r =Wڢ{1Y16ۡʝ!*Q#Ӂ(44kK'yMyʶ;'#IÒ?7ɵ~}ŵqSq{i]9#WFK@hH3MpYբE-]Q#GDd8CKM7 . ) k@xl+Z[gЋ88`$1r^;g.ԕ=C]&ά }?Cͪ]TFʣB |ͮSVQ~ta#: o71uFf=RQlxIїeA)̼ᙱ9jwJNSTfJ#o Fܐ2cr? P@՚sO4:tȷЀerk  Z PieYFve ) [ ~4x;JYGWJֹQLeU4‰@N|pԖ,#mG8͠Aae5j/?n jGpR,Z51L; a:E'Z&8Bʤ hO]~~%.Qw)vKv-xc㾐C J"pBe x"iOu2 r I["~`9H9nKY1t0-XeZ1yS"\7yKg`(X/ir3 _EXSj`5?)vNl!-Zm64b~PVH*v|yIx ?Rq)lÎ`l`|q9+׵7@BJK^`?"(14ۓms ybRt"t-aƓvbH ٭twQM|(ksܸ F)0ZrO߲ìå$SON89U!Ӽ7w(ET)jHwdD%K4j*]H!% 9MjZ^!ޒwZm^{v$Y>+0|GTX’MڔW5LHݟ*mFO\qet* zKJ?;w 0f0(c&r*Ӆ WQ%׈vKq5C4]~ =b 8]-{5yѴM*r ]U#EUѐ: F <[FAz$tU5ߞ eB8P[R@PR,ugw(QiA=\!V<ȉ̕Zed:,H@3k_-Qg$&(d9Zٖk#/塧bϳ| SPe9 ᰰll`I6./9)^L&{/1ɕMl76 SÎ'0 4Wt &ze/GEzg~{:^ЊQFa!_0G},\ysspNTjU͈C&O*H`ܩՈ6Bp't K!u+;Jb؈c&EB;p7{.T5W!䗖,G]BuqjTyR)E>-qGS}"*l!WN]4Xh (a]} SA8h0]3/|痒q oxZx'Wo#Z 2Scӝ} wUMI+'mNMêZ0UNSwik6펈 Cz ?;N]_dDL͌l ϊ/k|zmDe|;=fCu*߬:f݅?0GӠdJV l2?! RGO^N4I |J[PHC¢War $5ZڦC6!b:]Xk0a-6Ch%X嶤ARQp@3)q!#U X3jr`π MHfS@&K$'C MKedp$M+3´^/{^owd zlgH"?8 V>A"0-:~6 =M 'FvBDdincş3wN@Tf~ȳ"U&7 {絇ٽ*ٱgHȎ7ڜQpBçTvhs5Z^D}_)^CvxTt*l#dpW0~ӊvi~L[cir؃殎r3+*$Xd=G=#ʬL;>ɮ:2{E&c] e1} ß#ѡ^]iTS xBDS{RdtѨF_xRz IBjˈA1}xv9JI8P^/;η%E<[Zj*`JMd[K3vRvYO3d[iX@lh%4c VGS#๣<^_w$X3 BיKz;(5J#G*<ɢhǫÞ d*cu "^IOBU]o&"˱F1r8}km]<)DR"PMaJB <@XKmG4ˌ3 @/oLM8"1Жo5ѥ$۩&YԈK7-G/Us74`kn~'X +??Ca9ܘ7O=1R-ah5NI aj8@ŗkpZ@>]Ô1؋,rH(t_#aТj?TpYNM[yc5RJAKgI2VěN2thL%Xw}[l]Eᅘm!d[J0aETj2K ; `|]hvF~[^4a^'^ڲA#><_%Z7Ƒ;7D`U\P҇Rix+j⼹0珸o#Xn2lb.nJ@"Ɉb?W~=v;s` m5բ=roW)ӳfOODbaLi(xo\BY_)7DxB `E-P,ET)9;9Cpoyɨ}lNϪ߇ިގur5k!CA{f(+ȔzcؗvZW؜>ŭo wG윴=!ٜ ,h U-״JJUP&w}̫V$TioCmjta1 g;#tgTܖ{FYZvHuz 2R^)&e"HDn4 `-n > waDg$fvL0ؑ =vԳ_`xi6k$Ip#f[]sxz拇Ova1ĝ_һNW|Ƙzjc; @ g^NTHZ!p-|N^" żl/X߼Iځϝ:_kUI1N'QOVf>`#!SE?,θ߈T`Udsl&gަ#),rf}؆߀o_Dx%ݩZ!u+G&hWC M£}\%d6Y{Q3zh > IT۠ X<##x ws?t;T(wHG]Ž=7l+r=ӝ۝KqYë9+:i)50}(-l%z%Yl5=%q~KArP@=CQ{τ=_xż[c Ff}udR Ph1 y=Śܸ7h/(TGWt[?wು7 7 vZr,Pj+Q|Z\2z2t5lw7e8M>hHH(3[3 bg[1c.h0e ()4:Q+9KcO<wWP]e43V{7@EU/ P(81lXc*ն^gtdD>Zz? n *WC__Q w>X/\4~Ĵ4ub g )ZbV_bfM$<̅ Q\Ƈkm8!LYO@Npc|?f%IzPvUwH"auɤ/6Xq|˚1,3,*m냰n nrMx׫ꃱ!;eCGT8(.5z #$qs"s8 8&|?_-CۧGQ&GyDU!$Jn||hN5 4%fTOg[e1 iBub6IJpRJU_з>kdg~|J ~N G#idxL({q}63T|g  .#IXOK+֖U19o mnU>JiyUAQߣTR{^{K7r>? ݃8T|+>gAsU.K3B_iCW(SR\~w揜kXX8>e˖Ftk|Ib!Vzx!H&G^RKmĚuGyI Q*0:/Pd.N [o+?8%Ls#&(uP6"#Zyp4v1}J!\#k8k> m+1h*Yl+<=IQ"uSnvRtGiZ9m - {uZ_CnۖuGbIgײ LɺZ D'͏ǽcD ScY[&ǖzK\Ї.Oܹȫhe0vqb].5!X{6iA&v.ĺ [̄I|O6t^w[Z<$l4DZz LS/z0TKIaOÔӭ1?,8*r!%p\nI&T9 7vt6)[Wp쩚 *Jm05M("bfZoWk"e]͊`  "UZ@C_qi)VvyYR5U:$0~sjz5|qEpz]#,DinuaQGf>[8pG"GC!xZS#{3cۈP("3#5z$QzEmmJ&m J˦zb6QWne`_i95hڊ??Xm.Xkzl岜:znF/4dM7 $8noNYY]F<UGMJua qr9U%F¥U Xܱ?EK2?}lbQ$"6#"VBut)M?alҨ..Y|Bavԗ RI6_xm oE!kF3I5ٻ|"8 %/^! [}.{EĬxz2ł/<4:^R zd9.̶ُƯJͽӧPi=^eH:Wey#FzuRqLJHWj;g}FAHͤUsamٴbVyPc r]Xg q%̾hl"Os5!doQK^D`ލ%n.~$F0&ΚхhN8Ϟ?;Kpc}P@ˬ0tiץFGwj3a/H?wqshI/$3[eE4j{3O/b v;heikn"LKξ7oO0=?umMZs %g5 " +$0yu1z銯ծ3wYSYx@':x lkZ!Bs|VQV'MS ֩͜Gj[ ,IvaM$ "2BzrlQL!^)(R+"O+E k~aa)gH6a8dG۶M}#}a˃fAK|*ލ^ $&g/`o'sXCܜJl`|ufIE.S,(ZN]W~U (u;?ZJQhv"6..{8d2U3j ګ,Y璳x-W<4[C b῔*CլX1FyøFD [I` ttedbF Rehye,N- :9)~QHa)هEb̦'Ϟx#%HSyjps1O63]g|I:sԜ4@Zv4$ aŞF~)K DQ~ A'/_(Y0#0 @D2WjQ =7 AXdP/g>H%<e6Btg#~Đ e({ʳ|[i"FDۀhǵi)a `!te,1)HelmGւHr &a^Y6 F&aGz-b0eTv`*>0ԓ2Yڇ"` ~ bMKz^&{ꉯ,g`A,`Ųג<"IHM<ؖ`%/.1w=ݧ܍H$5)baTPzhA"Z4 b^ژ LZ]U* 4$0|#h lߍ:ܾVxmM4BERF\} .oL*#^)*y̍ޜSpcApn\c(dOUh?Fd|֏r]ɯ |ÍW23lQYs㩨`΅p*=LyyZ b q$AZLOPH Z1yD}N }fK4b7ƀsE-b*zAvRs͚o*}3E?${?cOPD!(5L4l;6_9a=O4&4C:J$CrM~kp*s%֤׈&gR̎PBos;~ä`4Ͻ~ȃͮâ4 ë2$!f(X'~ᱴŜ_dH"|cE(+SWrU[7* ,;n;XA};,- E!2S Hg`h*M_o.*&n s =X1Ī@wQOjX 2?4 }J4618S;~8%;zb]<]aT)on<^C#_DJE:\|D)t, o0.׾BMDm3SCC1h%zK~A~YM;6E|4S @8wv$Hދ%7u lY#.[*c?P:&GUz`zxr\tM 祕јP0qO[[)#OϪ-ACKI,DDy&+]LQE2TM]e^dPwGæZ؊h:z(R6ou 7Je<}@cmn0rv,DZN,vna?x-BY3K"vc9~7N~BIQ.NV>Pe;mxx4: R3+ശRW>s.z>v\a5\;n)/>y^PdO!, *Wkn^}g.氽ԣDM 6yw'5~hr_:/xѱE%t&b~TuD]ㆉ[9=AI!BK#ԺGlʯnff %>0i0il?ʆ`Vsq؍+84Tv皎;ha|SS FpK,ae\=`WdyZv4Ou2'eى.Em Kj|c&oTbB :B!Uc82XkT`tAq6eIٵ[9*jvBH78ҹN4ɲr،j߫ =w2&{kυ[޿H ITD#zpI;ן)|chSyraOir36~jnh=v$B5@#EAliq5LFe(FRa%=`e<ԚFUj|6`O7dDtBPYna 9"E!! ,q-LoNg/"EA_S75|oc~@~]OQq"')ݸW 'wy#]Mo&7'XJ6I/Y^=~,M/T2Uz`807'[7d`#ܩTVu'zGvbӿYMn D I=Q8jصSx(śX+c,7eS3ҡvxa-p}!2}r0YOYOTw'L1D𷠗)XWWUN #!4tx ֬崺tNjWźLп0B8a\GPM`[]&}U=9A%6 t,q7W7hmln M]<i[B'qtABl?&I'a/oZXK!$ZL U &,(zZGI{srO] \^զbw nUv FemJnbV8W&k܅j*uPjpO*Fz Asx\SК;{O{?hsms$B,}N.v*'M0Ȟn +fe;La}ĪϲlZk˓4?Z XЮG֮]xsX`IqK5g&ET0JdĩCQLc*IY[(*ܭL j ϼQi\9d~&u9u΁g6 ieQ)s,&qN5o^'lf7rsOi765ʱtsOcڨy\}h{@鲴Fq` *+̱5r!I#"/3ǁ &tk Ïukbt.ruV/@>(Na8l~%ik ^Zn3J#(bI|tj@s  $N_ n4H>X.o*ˠުڧy D v瘐~)NenzU$dߖ¨Wz 9gA+o@ʽ<,tt,t?J@[b_K삒T(KBojvlc^ z5(UB<:v*[?1oRCd]XtgRuWאm\Gn0o]3 g/c!ۀ_A~5lNl_H.o`5g6} c|.2pͷ׎a>w[yA W}v-.Qo&"HA: 'ԑ*GAP[&yۺ2{UgԦJ}˖#d7+i5,iH0 2 jDnEVz!`lDMԠ׍@M]o;ڕp R+[ +^H.;lnUUߓ}R~(9;w$@8negjY&$ |QOh16A*JuhЌ?hq~'`K)M@ 96 EWniCط(_ݪ '{W 9!)!A9@=^Fx.:El&PFVk qK)9Xf`g[:!zb;".a' *(X\յB-I_LgZ16Td"_&}2CHj aCky:&Hqe?@d@vB@[@@qq РπћLs!:UD$|+lD4̘V!tf8+ybW!(2tHy>]6$m| :QNl񦁎 r?LQHQ~BIo;E6'!H@ '(1LͮQfsxǁH$+c"MX76GJbz$oyX_XP΢ Y ]1]ˌ1;u0:i3[g _=d VלTśl$@p <eȹ;E#Ulԓ?utr] n37DeLH@cID*]zNJ 9I!%i1jN"c[2*BC`PtvŒ C꽮y\J)!%k )gA߾VN2a9O#ioN|Y{ ɐ;sxFoÚ0&fڈ,Yf_׋!W!)BЃqRcebNjayX}$&!'3v&KNUt#3zuW3uJj0)1^uaG+RE&ҕ`e0xc9? 9ɋűv $7~KkL@ONq8s6BR1_4~귲Kpq P+k):g: c!;E kԂ| .E *BA"rVIXx@EG￉1!號Kd2= OfAV&y(~;0LiKc0MupyFPt]O}3_!n͒tD܊6`+֭ѧn7l91Nzc+!GU+2f :ZT*BSU!ms^:x@juyۼ"NdA={4ִ54qeRúD֏tIr`8e+-M:,*Pzx܍??ml7;fvغ.C #^'ûV =ojaVf F6&,Si3r'cu%GC/7?!wɌطWWÀ,c-D4TF"z/OqPۆQx6*KrAZi.*zhS+b`[]W|v!f*'3=/P?ަXp;$f/jX+zj COxU`1 kCVEHkIEYLL\8|pp0|-nr] 5#KRIOH,-fI.U%2YbjhH|P\ 7nViIs>F1v| n#[mawrhf{FќV.j&1-p}bH,dVNp"⹞Nq6̘ĉ]c ͞Sp,0կtmPEI2Rz'ᡀPs1hO͵Hɥ1v,K` &=؂9B.5#Q%,&:޺F> rrڽ$<͹BV=l Ӣp!&aFD]΄}q9gAJqŸa/] ̳%?F#V:d+ >CB٣V[W儻A#)Y8lɚ 9s{ejpFҘ\D"%dADm]a.U+ɺ/!IxW@Ɛ9K3ހvW-ÁNFMB5$XSuߧ:nQ0>7 <,+r>i,Y KX?Xv 2B55#4F܊u͚f?1pMV*W rNNy'Hk>Z|ZHV⸠Ѹ l+/wSBpES谏 RԈ"[ 6$,u5wg:K!h< ڢ^/WHP.ufݓ<3|uQFĔFy.#Z':m&N,J,X^àU##  y9~]#!k5 &FNT\A~܃ N+{3g(JFzy#1_qw<|5FﲝCbBБ|"E#4G,Z'zpf5pQ#1v1)4F˷xB1í!<9~ @-?XOu/[Ԕ{0̂zI= j8d+Ƴ-)p.H: LGTƒ?;@=FB?l2 G 1b%ȩE0Gf)duŧMOuU`㤘C b!U[5#,xZVTS{j29J1r"Y'U q=VF 😜iQNkgekƿ]]JΥ]+ {A) L>פ9C!o$ &a\"WBm.g7\JI(8T`;׵m҆ JC?$tylf~ٟ0Y@7F>9S6YtVܞ 飣"i&W؂uSQQ=X$1ɏ|5M0xac ds4b|oi:BA}B}X^` SJF @\|̝Q(xIz‹g+;v9bEh\Lp<(by5}z[2jIUp̚*Ilŋ/,l-$w)Sjva4ƬƠ=hg"g4*}'ĜFj%z9!݁' LgZӶ^>gN/)FxnIuard ( hR-:}g̲P:ΰV{juIɂBc~|ΆV,zk|qh=\~x5P׶l.v8$g#Ѣ6-yEJl&:]k.1fhkV$,Q9=> ~֙v z%Uz=.HS :o?\C ;K Jd1'Tb{Njեdqos q@'!`dSAysRa:_78.2M !=MIeXR :_+hcMt|Է-vm˘w}->wVu#jl1۰EIn"@ik.Vvt7|yup-#yo C#{֑]&9 8$2$MSVO\XUZڡh (P /A&h~phǓSp-i9jh쁆o -D ܍XQxnZ'ўxҰo()K˯nK jԘ5;ŕ~kݏ8Zm"l\{?.{\{VX8Ŕ>3I#0/,WGu\], 0I4rV#\D-所R"T־~"N|vqWhzwP:5)wt>שD$& _ d[Y"y|F+eCz<4턟Uom3(D90 \[lӖ,Cf7yM!" t6*N3..Ia_4! ά0Lo:% 3O"٥ 4nqE3T.fyشA}yHR =bhEVZR#DE;R!i ^U:DrF7N"xZ(~gF׏LOM02gj,.rǤ/K;,sOwyS{\bN!=̙+B>b# N kE$N_CUe'iJKlANc gILE!K#ə,ǰCBboxLt#MG?Q ,Ԭż۴䕂UI W"ZK/{ ZŜ'pl[ոF mJd=AZ8O9sc_|Ij5ү"$?TܱL>k:,LIRqDVWb#(CE\:WaBE^$pon !&P /ijē$*Ob$;Onq;yW[Mt9e\,y@z {tL &xiCB4ĹEpⲂ&߽*taX^2@D#{4p>0$ ;ͳ-,r;zDShl6ب+F&C}"SlLnwv#~$75j./{jO)*5 -cͻxؔDߥy^lU;!T9-=y@~#;V"]%̳IS)po'7@"UgIy)5| LxpofG$Țk %ۙ_34e3FDZB*.3P%5QӹN P?BQ 7LJ|/AeHGwN/ÁѢW > vjG#&!3-ypbV|{+Jp椩\Mj 5SB|fÂ8_kk>Ib4z3-&a D}TBt)3$;[K`RW}gjg'%2,$ ]M*lHiY~\"nČ=nɍ/I7f^ŷ7-fN^Y\yQ0(AGVt&Zf TdO}R47l+.zwt 1dEd," CΔaYK~0Y  ^dZFl<> af|nfptzޘ 7h)cX(( (}nD5 +XC.JHA`Mjncj4X'N=_ł@ZKeX#<8RųY ;4L+Qw"@ qkSZ#I.ǩɧPKuw,_$ CK'Zg:~k2MefJw Ltn (Wݳa4b)fQηdI7{}%^TԲ93bd 46#X`An T!E*1tfw3SRbԜ r5CKۀy,xJ %ʼ4rja(FheBYw]{y1Ha%ҫlv,XIQlPf!\.g!O8mDLر6hLɀEZ3%y g9W^'||4U :QUyd^$¡ł~r^4\11Ob2.(}PiB0bAaψ0&p|G\aU/NKhq9m?3eVNǓ`*!x0) ǒ3GHyWpX|\Z+ݝ\Y"vƐۙoFS(&2bIޯV(-V-)c9i.H j;]ރ Xbuݻew w/7^ozi#O[P%%Zь' 1Egj_2 KE0uRW27l˪`Y*#2`zG5NFm[^YnCNgƇXJ=6kп"[s^2.4g_v% Y sY`I'R3O&N&փErQYr ƑHӋ8*6]%x B5!ѕSl(O?% R6 i0 U]6#|I1&*jy}EF5Ƿȯ 3ڶ`^MKOiHB'v!ԴǚdiMc bEc{i%Ͷ;Fi͔]&LZ P<v.`"ר(m(P:Z$NGL-˛`{ dhK m~#*Y{;.''ŀ7-v#ǂ<z2P?HOI/HB 3D>g*M ÞT@uiܮ6թU >YLD 01 !PӴ] V'#T-|s媬0.!Ey)KwdyG^k RQ7yf>|د,,%)WU6g Z0DY)|< ){Go ӝ}7D8%r.A4dڅ.ⶌ!kp0L#:[ 5X N&tQowIH{bO37FDWM.% \aէ>n{;D]~}m%+U9!Lu) xv7~[E(n|z)RG-#/g΁/~ᅄMgJ+sNGH7rʠww+~]pevȚK\(BFDrRhYL~"-&|&>2ђJ%G @7HYQZZDW5ƹ jr[)9x;"UhhrЬ6 Ja` _:\p{8w6Km`M^LM")+9 7":+S1HߎS_AF(s5w 85HbASkթkY}叨 V4E#}Rr+e,y } u uP=c+iZjTrWsHC庤KuVT\"j:${yvf}'D9SpA=Zlh7G$\IiPTRj zѽVz ;rO¹i Iy;u/^jcd)ё&:@92onQV!H/74%sx3(6^{AJupHx 7ɤ|>ڔ,59uåSNAP\Avo0͹IDژxBwpf8( ɼMNم]SMDp2JdzAkwDkhZ/i-" u@@>Ex~I)5>TVr7iVH @o 4N'`+D.s!j)fS%x>o[9Il r.1͠Z\j Cаuw'k+vLE4 86sR^6o]ꜫ4ľTV^{"1rI7nd=iFf8QTΣ\+'e.%#z8Z-85 K'Qzlg_7plNuE4-]cVx[}oS>I6a3pJPi١h$&r!~<|Z%3rHh=$%\^M@- C{a.@c?^`+{85/Y5ڒb`0vMjky]7FvH-:X=ɨdxkd(^薋(KaofBV޴(qGEȐ2HPpB rvwqf Me|n4Q.aӛ>kQEoU;U_^UR籼-ӊO .J 2=f w 1kۺNu :3mtX@kNJZqhQn4:Y`oWȨ0TA9os@xĘA,@Wo.Ş PU#/${J9I`Y:&oGRmT&߀jwX s}\U܎WV$G%PZۜOIMU8,rzփ2 hS$B,Zu/| ;CM/CXhcγn>,V-!K߇%)c$MX $KV pz/Z`g6ҋ4qoʅ1/cRW{q5?[u9m̓jlVe!#_HC~eHN)ET0̽h+CGJQ 0euX,Ⱥd,TO7Sć%Uϙ']zKarՈlv|:= >E45GRG1ĨH@\R0 ⴍQ sbFHH h##fhkg2^Wc>tTkLLfɋSP/> d榊hYaY}vb|Ƿq$WՊhoRφwE9wO:kY: |%9soz|EM3ңl-K)ǍR("Z@кK=(y#ɳlm!Erhw^!Uι%ףKBXRImGSDh g뜁{ݳO[nUTFeERClBcPxO:t41 'ʆk"N[J#Fg' &*Jeܟ[,5!1]((̩Y>kq YfzcZ`"gg:aS: x oVΣ"Q~b !nX7y.=hE%E]]tuxG<*I 5' xm_ 4n*N T' }w<ؐфO{rם&;pOhAmLI-'Ԕ=gh$(v7fs+>fk^+A~+{Ɍ4'}[W ,SKZs8Q#IU}ϤD$8KA;ռ~k69n ½u*(uLwFYU@TSR^g/}`@oJ> &e΋Z;8y~Zw1 OYQ=|!赀 $"k*XEPv!݋҉4UoJUraFkRFEV\I <1 w#NLS v7`ނ(`%=nJM 'm,Z7n-F;ۖjE]PDY97ȖNUm!"~ ǝfݐ\9x(?L?Diva`zFC-e%U? ~ʚMy0|R]k-0hE_r\Mf[]1ך(8 i:IeL}c^z|-^WZˮԕwA" /2msegg< _֬^経n[tSDKnbך?=byɼEԆE;s$P]; O-s+ꥫur*>LE>-YI7\lO{!8W`<ӛ`ظ/HjgJUy0рXPC;]lLxLYo:` 9N7>Kw𤲕3ovi1V]km.-+b-X5 7cӘ^RJ :=Gj4#}Ba%І%2YT17T~NUU3“|Vy&ITs)#$V>p[FW1:҈$fh~:~&Zߘ|AN\݃< l'H+"w I\pLVלhr-W.-?WakB<3&ӣyjsvu1tܗEji.80@DEad;ƥlMf*"l:}t {݄n/}g ({.Z0.4;Dc xaUͣA;o.t2o ٶD큦;&4U06$-n 8]aak|^i{֤tuk}Vzfh$6{n!ʘku)7;}{sP 9*)7J=n77&ν~C" 64N;򆍓OuÝ^h W1 "^'Ȉ[NwY#SG<#9ofP gﻵڌ[kvJFb0Q!d՗AV`SV#ވ능D/މΡ^%DAdc']uO!^BD@_NrZxkhT' E038#lzx-j=I(zD,WS8 +34'Da&W-R^7!_Jӆo9©sB4P~jq̌qV ~|SkgڰOU{SELP_=E)n4(U@ߌc#0Y`Wё'E7vI w_B+ iK>[ì )bav 4/CYc30i&}vvA -me * [}xkw(#b8& s4fۙQt4W9ٖʄ@vݷ3@V@z4bv\a 3IS}@/Yɉ wuu(|l\.rM4\t_%lvX4} e-/LMjwXC{3k_kۣ$'uBOb.^G SCZoMH$2rz稲;Kb #ގ?l岁;YNSq͹^G-r*KuLn'Gߥ6mtf;"иd J߂/Ik3d[ &nչƒ*Mu+GWu lO>6QoS:?VbqYɀ.|,y #2HT?8;tC¡j9J8O]k4aP|i*n>Ky$ (V '!ƯY\D6%xKF5dEt= g.[I^P"r Ix;"Mn5x%cۏRϣ4% ȅU ̭K&so_$8(xbMکpR:߁9?, x:Ron?ln9_\.-ƙmm 5,./U6|cT{-khSe (2xËD"W 0K,Ef蛞;InxQ.(RnI`3.1@"Zx&H `&5JbSKjHCeIƉ'xj.0FL4x`j/)yL-kR(6 !muJX׎#kq}bя\=dgF>Wjv15h|)rW( Z)A=M*cf-vwsv؃Kp.N)jj>$M[rZcm:fɧM.Q谙~fh2Q `&驓622A.4Xbb[ze#0INvq&aه^p}'tmW+dg0C-LR`@ʟ^!leI?>ĥ(z=l|fo6PE2r vcVRhZ2 U{|,<[pdAquRC5_3)q[i8!4,)j?NӾy ]J*4DE+81TȬKcq0dصgFvWXǕ3?x w~?[*y|!= lf [S >$Fߓ恘qGE?^N(AI]^'Fw dq6~ p"tL=aNfGwnGh܊}`aGl8WC0Us+b 02“uP8 c8dZ6>g:i5v]󌟾F}\ջE )^bmX^3Fowtk(q*l5-`b T<4觷honNTȽe y Oۯ ׂBtewQa5(;t\wf#鶍Ef$H̯ 90QZJШp(O!::7Cc^W",ALW ]贼!ߌ3]hA1sQ.2.$)xR%ɧ=b [Z 3ڊdp'R]\ N+}.,cA+`tT{D4Ki>b3][`R"P{r? 4](iRy6yPԠyWڸ4a%)j"0_$$y5Gc^dU(qbNZPf#$ oGu''] v`]H}il+j9ۈC}]R_jJ1"rv{ GN\Ez9;4h<^ hr7cF9H6v.ӕreJYՂ?=;,U) (CX/yutu0;;V̩NuHv'$͂V/9Ӟx)kg"җ:n"}]B=Ş}'ܠ}ρ^t>߅9Y|#*%ƌu<-r&/8h.H.Ьe<USk1bO"XyJV ?vvtU"g43Ǫ=tDMnݲO̦v|19]g}]‡K*vW fS$UWJS~Z.k(pCa z3 m  rδ2ٽ6y@9=rQqHtHnZ#I r~diPv=;%GއNB4PiTZ-ghN69>yEHnzB0`f;BW͹ ƃzs kÌѪRkBI-|XRL[9_(Ê_UawCFx NS)bS{Vm_~[`)yRQn38FvdVl8De({Qdzٙ0dieݵԍW20v[XܶN\ WSaɸ nBn2І |qotrl@_Ռ&@4dD;\TwDOb's7TmℯD&%7r*v^y dRLiOtd +ER>^"f!9wDQlAd|&D4ǖf`K "[HωJ T ;`Ն̲U"Եƫ՞3?b5sMmw)5ENZP#9Gu=b+ ;iЫyP=\R[h3M(A[wEAM4f(٩m|:3R+Zó8bT#h^LJc_h7hɑ qpU)1F똊I+ h rQDi84ͻ7%f7%y=)-n56dU7 *E <)g6הCjjbG5IX iMo;RRU17Q*BL0"*ot@YX )(+o 7ܳ3wCIi82(h4X({'(ʰY#Φax]#GҜؐ\'LoDixLV7볆/څM2]x8,炶߸*5yG?2y鄧h_DNh,?~[-}DB`Eł& èo}ChU5U T[e[^,(Q]vPUz'W/8P?Ga?T!iijØVmY)Y`B2(? \>[/PVPn@/9ٸnҏIh3[Dei@\_$$mFQ̸#:͇O ت{N tsrw|敼\Hj_:zi)SFGX8,u9b~srF| #ƹy):qq2e{>!q0rsD7PǻSܔpJn`&=rN. _,*)Zpv ϩ^K izH˴av/j_ڶY'\0%W (jݪjbeqA~(`-C#XE:pW+T99)|ZP'&( p̝ CuU3/Z'tpQҎNxۻDPٌR n2k^ p9޾aP/5mfL?~Q6V>*C{{x'۫v{fz_v?rC3 i6f&էJ'?wMcOw~~Sm=<%f|N(s8rхncg6f1YZYQG,'BY>q0˿.Av5?)WHP,^t!8[ 0ré]ՍC1Ao+jYi,qP0s.1@K<U_FdG;d]v4E%ODcГ.'ȧ3}*{ 1bknp<}p֒UEU8):{\B7Z k:=ŭ!0/ZVJj(* pJ [&SDh-bƷI<׼)6EgХKA;IHrp`$V˼Rg;lc^R{}?.p8ҍrmde^ [ oeEJ|2Ć?\:L>ZVƆȈTT]G]"d+{%*MBZ"1`IqGVh4t Zf3w|uWZDoT@Qp}e, ‚؊X#_;?PZiY䅶_JuM"gf֥84?(j_dF9wEA=(#I,j44Ev,qӚ:Sg+I̊GlNdf;:%Yz[",^BuzXiG;KFLKEam _;**&E}YLJSERxj .w-P`^/\iي`-+r qH ɔWfnQ5" 7Σ$8-F#\S,hqmeun(su?&-i0QB[͍OYnr99l9i[޶ٗqW.O)(RˀvrWk`$e?qázV6zny0#fAP9%(ܴ$@2z U!kszX3v&;6/ *JUTz.v+yg',f6(mm{la'!բOs"vOhZX4RD['FſhbY gKQi"AVZ#_+g}I,>p3iWl8q(Suq#;͠X6X~ZhBņW՞~߮HעOp,u2֜)ϧ>˞CՍARi\ޣĨ>o6@"H1 Bg&9qћx5ios]Y u뱄uN,R]&PJddo}hm%&QK鏮nh{YWֈ=/1"S"0_9TNҸp %5+I=M@l''S($ X=Dx(?jlu.<غcQ BoLQG\{ 5m nD^P#Ҹ.^P$l"EؠmŽ;H,LX~gMf@?dkM`6R"Ε̩u1lxm #5ˇ~uN.(6J˄߮zhD L=md`Ā>ʲ&0.E+Ĵzg\ɯŎluP[-¼0;$!E -Š'}p "g=1Z8KjP՘hUZ9{ʶcd 3nYOׅq`RfKW4p~3Cˑ/cgrǓ^HF5v+]o'Ʊn !x5^m—f[D?K.RU߁pXi7R>tA$dkTfKwc0gyA O3J>wO Wz֊M+q8LkR@zmO6b*iسh95dK!.3)fZHkt S<С6t;h&^ ,0ƣ;52L *j՝îj49]%8LuBTR.&aCXf F#DN湱m'm-=澃bRfCaO:Evϙ)a,a42V|;`CK_a*sj+Kg3i -w02zJ\*Cm|{^ `Pvn?;EOvqȒ+X٨.+e0"p4)%7_XNLq߻]ZĹ+,3plTQv`yv cx6nz?+\$Unh.ȈYfAQn<qlkl ùJ"ŕ0㮒0rv,Xw*F`eg!tyu}ŻHQTMYԋM^hrDg4VU11z$F+4?{$=DK)SP8F1>b)ۼ8?+JA'ÝGMSn|b{#aZcN Oe_wCcQB6^?[O0S)LV<8ZpߨO'\#C{,s"պX#93C~+Q6|͸vM^T+B蜘;:g}Iذ`<=fNי*~H# ywy#SC$lk.w2)V4ʦpNÞ/D7ѪeZjhoXJPk.j*tX­8ڄ,dE%L-HROB7J6buȇtFhg iˌYHBp#9ɚǧ}-ptvn_X/uIybt/6މD +%&NzĈ.lk6sׇYH@ C}3tuԐRW0jsP q͞9Ah>Ȼh #944F%K6gMe LFDxuu(G,TFe DYí{AK,-L<"c0)d ADZiCrV4@Gc2dVC9<g7`uw ;0f͓)E4adU[+p|}tN5 5KOM s\<6 FM9 R*oJb97SfIMb<8I=tpe>MAjʳQNJK3J*khm SQ_B)*^ʮy<$= D;ٳ!'ʖK&XI*O-pyLIwxGI'kU<@됕);i&Oπ_ZUk҉u5Hۜu P[7=\ܧ#LQ,Nkr _ fk1WqK[9h`<T϶ѡk9/o!{/jr&=v;{xk;kgDv* i?w3k)us>H9wp6ԟH ̭Gǻ.ԍ<@m,DlP@ v].B-1=E h 4pm[_wUed*% ,0v>I1r%Q-|T<ҪP<'>e{]e)D}ۜc7jp[i"`:Ċ$KIt x] Xi8PoZq;ʏDŽVن;cKFVAdm #{vTU>cEՎ{)B E߃ᢄ 4:~ۅRdIXܤd*Gms 9M\r >==En[]$yny/-+&#f[CAl,Sul:wjGgD FYm׫Wڎ5[1C@ ]P]G5ViDD1po(n-!Hˡ@t1L6<RN&M$ed joxkĥWfЅmOީo2ePj@+A{?FCEJ>-?x=>g>1n{8$ˉL= {B .F6{`M$YFyEr]wf'DB2}oYe눖'1ꤍw\1C% wWriwq 8VOJ<);DUd|buSϾ^KM_Ljp8 (K9hrJ9@>+ %AV-lj (uƭ&VEO7I\{xxUC =FwoKHg'3̼db?'F!<gEFbF͗}(sb5TP,e2^[Sd7W>%~jtzRJOQ}^omǐ-) պDڒD; Zݡ2mv¸Wb>1 L.EP;ʶQICp8ѫ%~4R|Yv+)D79NNMa{ rX',@F!9>lV!!{E ޳Sس,<_]陑+GM~_BhBGwZּWo & Wk#`gWxt88w|E+93`=RK~!{5襏2 p~dJh#U}LXU~pg2ыsaqɭ@}0I㇄U` W~˔y,Pش\_5?H&/ =mG W̊(&sc  4`ef.̌g%dgd1Оz(x^fȏQ ]gq~@#kȪPJ`PrPӖR!Ԝ'=XB\Ȼh7S*T6o5ڟmBNAʍn%$ "Ih=EzjݡeAn}aWy"דf䞨CΦXJ0*DW~z7`S|䓒 47U3V1WFGW«RvتĀyzVpZ\L@$VQ*XcQKc(ZR ]1$P˶C8?PIAg{ vޣ^\[C:P">$O$?EYKlo~j?4UN/}=H"JK1L,-."QhGO 'TC%@#Hc‰aN~˞Wb{ +| Hu`&AÓXC\8k.GN\*26#vB<-J,rӌPd\F(^ZF{+FĔLXZ7Ġ"YM\NLk˯-'6"ԥTە[I0?2XD xǼ-G=N[<Kai%tl'>D]S3O4uTb,B 4 ;ZXT%`@rNNM.8G6%x56y aa&""S5 `D@~M3I[W neyR)lLԠ'$I&E{c ١0e' MzLהQ(%O,YZZXeJWDtrZ`RsVƌĥuGcO L9,r:3Uu)/ltFAlW1@!;A@y' =Cي(iԫ2ΖAix+_`Frt|`/ 5TDPBͅS##% &2hu1saG8乻2$w6r'|A"#x-ITKnΤvDS060D." wby=1ҚDN mX{dkPuR{=Ē'){&yy9؟EiQo( ʆGh+o *IJY6sB>05dY퇡2VnX25fI^J/)wUw{btTYR`3/h$sSgzn*B?uJ#4ݙـ!< SĆ|l,Z}r%`(M6 ycP)I%j֩ȴ Gb+$߆WL=e }}E$i~)p"׼QV ,`M),ϯW0u_`?y(ƫM mC\@(4:X~5ԇ%@is7"PߕZa?K6$Ei}}uÿYp+Y/ "Ō) ha p WΕki]"Ƚ_(n EoJ{$ Y "4|~1`#O\~!]yCu?$'!`Ԋ-g'9talD7kr,9m`JSh| Ζpu}fZwnt%!]#(QhMn]SVxD33yK3zy,>J:dwc um|3&t%":E?8(~pCPr66˅bX'µ=#Taդp-MagBqkʹ0-bFC".tq+{T_ 9WcP1I5B>q`5~<8;Ld$OHLWt!{{wn(->:ǮKlYF\䤋I&ds5;jx\Gq% ->XA"b@@20:d(LBSnTB;ӧ" 9+fh !Tp`ghC X:!Zrl|6,]:8.[m;H4A,^1U"=yuoV7Ү𕨶B̪4>)e̎zBV~X0Hi=?S_EIE:!*%߫gi7Rg:˶19, ٶd%@828}@0+iJO}pW(5?Ct6}V"< '{x4ӓikVL( L6awݗj8pxݯ mħoG0bT".<[5!TK.+P2w(z!?qM )ړx\+᫰uѷ<,v:7I$G3SVWcʅ=N}E@`e\/l<;–H#nqk(CQ4hOJ^l:j@ҽ>^MW(E\uNa[mʢC]q U syn6g]KzQо1 a̰! GTsEfb+/sg`d爲*Kٻw'k#jU/}<'cm gY:#B"1^5LaAzm=@r.Pb=&Wg?L%8pBr`ǩ"Zrņ}ͮĖ"` ~C(X>L.*T%>PKɦ whPJd5I,J1*%3:nmD8&~4]5xܲcNhY' |̆mvQOdv`Ձq Y xڣc)7VC _2ޔ &P{B6]sѲO1 Vm3VL0r 3.ñ|tU@k$>2lۜLtԞ z5cnŖюC3D`[C g(Q)ߡ85eI/6wR]^8Zi)_Ş,[Uـk z۠S; %ŎT+o|:λrmscShXSEcat2h[q|1@ 4NX\"G!/Y!kHLt Mc.ʢamneJbu<W˽l4sƙ-wTF^]4}vJd2H!W5A#}0%PASj!DD Hh8cݰ,g&t0@4.Ѣ*uu@M>`=PJ@>`d5U~5j[qǜ&bW>vDx^/kkb[1iNrNXL#cj1ȣK=y- &vi,I&Fَڍ}r-p| Ƌ}Ɩ#Y .x/ Cr2(* (Î!bU"Mhd9T74yv2 ̞6)rE/.PYuZd@--I }^9+u"pdURk>!꺼ucv@WOC\Oi*ƕfpI<K8 &.k4V$^tc?OIyGV."O`\jHTs&7w>uܾ}N*[a.$j@[ [ 2gGY^h0<ՂW蒝Sj|2- 48"kxDuKïX0miaVV4FN8e+gĿILX;T@CmŬoі.Hc)ΥU F<RhAӴl v3 zY2WO[QO4Ԑf >߹8>sJ}ci(͕bPӔ8^e3޻_9jE3.Zw8y$(,LqYqf7Jba5f%S\A 0Ɏ0kw JO$dƏ{MfY/{~6NPLx@6&%@ND#ZX&K̻~o<-){b @tjs>@p=7G u]M؂o8S\rXIhne*1HZHtb8p$c{C| ^O, E|V}2 6 mrerm59aO̕dXniX{UN"xDxhL{5,pdC#1?bCq/[(SF~7AfA"FPv2d[ÍK喰T$K(k݁'o8cv\)vΔ!y AHEdޘ[|t$D>qƙ=}Jw[\eQ sIR d]G%9N^0?8Xa? ZhW~ 0Ȁ qT[;< 澇" ?uFc8 `l/~t.aeZ?z -e;$Mo kz0ڕ{Ai%[+SwMǞK6!WK澡\(B82 ђHy;yz $AˮVaF)!AdaQ I7xLY[9{ V,R2vڽh{S'g)1W2QSB b{l:A5 &+9R/0> m'W2=mch<g s$nV@T5xKR{MS9d?ko5]~#FO))c|pl6@Bsg[ _=x$3=dz #7 Fpr)ޏ|W%P`LO^mX=62JW4#ͤʼn޻]Mu0g'dM*ebfmQ?*+3m:6iq̍K ,R'cE-ٴ[?L RG\-(i`B/6t>)*YCO 30l^Iք0ؗWI:f: 2UI~ǿ}er9ht̠,a,Du7ٌ2+VsoqOƬmحfΩ]2֔>ٺPiVfɥV"! PtE7<{Ib+Q_"F&hE1a%hmVOE𼃬vc(GnL``Ic[c463^D-ʙ 5g1]q0&%lۍ> QR+7PTJEs71s -8Qe{%fw&r\" ɘC[A.xJ G'y4vҋY"L+qfL9Q~٭^vg=! hWbh8|rU*o^x??صe.r5myP&_ vF-6@h V1g@UɁZC:Qäz,0uo `jڎ3NKFpוo|'B${0s `j 9tl";bٟM8K]sg]^+? k$(`2$X0ͦN6+(6ki-/ARp`n w'OǦPW{lj9#i X{{ jn' HYFzAf',eVte0V3nǼfjp,3rPr[Q>Ͼ?b6$|[5uv$b=}!Won-"@G]( BkiJleݹD^rhXs/:^ʞK$aʈ*PF,K kS !O9k_R2&lz15`'x|bqDR7]58#Z[ }vE7+{ZieBϽe] `P?4)= 鈃0x:T?pzYé/6B$zΪ$ne/ #tu35F ׹)v<~:M c29 }R| J((8PTj >vK GD]#r~@rudҪ l'#0'X(9k]gu |ىb?WmF%¤4 EVg|>?skW"c!~ZA|NXJ+ ǁ/CG2x'_gpQO+\ ࿨Hߋ]E)!4'׌Dqq\&TЄ#SLi&1{=2rixя@K-[nnO9HAy!9p{b8p&׊ϡBP @s[/ =1BBQAׯb `$ qP{kH_/ftAE%TW^fC⋾+ދt\yuXx>{(=$.Y(&6o1ez,Wq<ݾ@˼GhByow~З*={A̼5Wg%Tەd2sF6:Q&[r0f^D-H[J䜖8>}7O&ݢl,_;b~V;>wjr]m? T[1Q{ %lVYnct@Sbj/^71Ƽƒ*Tɰx@q4wy:Л&W3On7OZ('RZ"F i0qLWL?$]3ܻ=Vxr~l,\S^M˯n @d  t$YD_%{qdP3RQn+`.we[;!ppײFfo*^LuZ #$xEiN bOPIW5 ˄tl1k%dʞZ7MCw}DuS)}QzHߙBùX۹ՒYQ9lT·ɹ@@Tj~F:uʖ&ԿFN7 '_)q޵Iu3n^>99^|D,5'Ga4uJ^l?;L!\CDv3=EM@cg=z~85mY<R?S[\u$chm=2Z\zݔX}j/Uʇ SzkHʟtw&>>0ћZoqD^O`dtQ6K*-'c͞p* p~ihxgP1\o|`m[ (v{^]^ᵚɾMq|O FSɣuB4'$ZtqHK@ VuTq5DT m銲ׂ _~qܑsI߱4tùMWMl@>FQoʆ3f>"{6"c \LyUGWUKPCA2KHّ&t8~IV@FM+ZUx]4;^$RI|Sj̩zqkzd--:#㈲96F3ȟ;'3߶;H(+FZm'YЁ ؄>t]NGnͶ<)}tx^_'x|K?Bս#_;`@ $LZ̔T(پ-blY=v' }4kZz3vP9ћ_$6X`_YS%WiDLrb @k'BzvCм/Œ.8b9ыCl%`JL-9;yU)4>t"]1kҵ !/4IZ$n]#TI_,pQ!WEc#JqL@.f q }$ٳB\vJ#uLK<@GuUChhw&dKO'Ly.n}W1}C8L= .74HE|4$£f"Tap]?z;LDlBۚ-已#ĭZ$CM35DֱCU(4vM"RKjZ`q>NF]<3YkDZ=v7e+h1{aFa2TD4YS9`e C9eӧH 4Ȧ#6gוb鑺MEN^9Wmx'oaʴ_zES:S"o4-dgKX}@l܋'4w%cU3i_#$cAYxI|Ѝ>ĐiI Ng260Y8*-}K! |XV1ȴH;wNdgQxIy$pakݼ|_,@}aw2:aB/I 7lR䒍IKP~`Ol(_{NϞ.L9Q!%jE/D,H=>c{ʈ_3{`&SCJk9Z zuI[|Q#2!Laր/ݥ[vKg")$(}6RH}Mg'(Q[V-e7mZ m$A\M`J7wѭ 8e%nxQ?A&_dԫ|%ybE(gS_e:A]1x&2лt XSRY+q4/0Q \#/P-ɒFP-teL F}mXG/7Db,̘jظ]vv[V/yУD4JgG}KaWr[Zxp#NN=/`0I=QSm ;8M,yB'&wg3fTwغ"4*v fȕ$2< sѲSc rˆz'"RO ps!KsNwɎa_-B:45bbzFl l"5d_CP€oi*ip Er;OT%Q>4>uB bTM8x?1V㯊q /~$3O/H1ҿXMK!Vur)iM 8kƙ+L9ՐOdhm/u)#ӏO2x{enNN|3ֹ#>˚Y;mF!V ֨,̞OHΨY< -[YY/t hdJ]"TM,;WEXI`kVߢ~ AIx}*{%"Mj9G p6ӤҴ`B9:-㲿Jq=ּ3q|B@=8π.- aЙ \ ]KLamv7Rhװd<2i# wKAa Js{+Cn"f| H@ HDŵLjvKxZ{ڕZKͿsũ']$ʬˑ ;JSqrVoz[䜸'u`́-MdCQ⣑/WwShq, &f(dh#у՘,9m-k1o_rb2\q_]U'G,3kj?Y\ eڂy'H ?0z )rk'OM!\oc"T42jxb-]3X|T5ρ/gc+dA+D`cWໃDcE!Q72l!@(Mm1 FhEm+k`T} \ YL%6~`,y{OoooM^ w1in> `M>LuyЩ Y8Ԋ;B4-(h]is"cQ0y, pdP1h 6֟VlqSkh"AرzQo,z!,$^2;zw$"l=2\S֠82g{G!wd{g&13 X#h2 ZiP¯LXqpO^am/ D3u;lf{m&jKZ{=kUlee~_кݘ'';`ޥR ܓ7ohQ|s3ӑĶʻ;U:ţvoάqu!±o?K+ 8 UNQr ;LI[$q_lsP#IU/-ql) (L+S"HEd*%hk#}ҵ%%jP;!4xŸ;eSY̞1_!GyYrA~"Czdli]] yœ F<\<?<|P=N{@b7"V]#T@ߗSex4MY2-,/s{#nYg=^[h}U;&#tSc7NI*cҕH 9Q2nhqzRz&JGi9w:wA/ԭ5XЖβD9BMx;nLy^+Q=Baщ*H5c'K')Vr'",,A+e1uMY!NODSLmy=l TDQ# ^ HC߽ \9;J\) Xr=",>V7>:~ ^xV$3Y+zHYR( 1fȜCc[ƙT]A; q== FR%YNxƢV\*+Zh74t+P! P#\:q>i/6oy]!/JCeAωU璴,bƱ ygV2'cżkcuS-ޯ -?SUOǍ/u7柃?pJRۢSe6PLpCAZg|=`йtF7b_@ ueᑾgQhyT YBmP>kZ3ژOKFw2\Nb ZRY.FT$2jvz4쏼9=2p ysNqy[lGӄaWGݵO;~,.R ?C SV,N0x8~}O~aLiz1I?Nw:rtM) ;D  "wbX A&D^ɫҮCMov$G%t}k&OLTz/.O#r0C'B48Yɯt ݩ*Zc.?eb?Mt&.>=̶."wgꪲr(!cocA! U^[ayp]|gV)# <,BVBI4٘ û|::턠 !2g+nX7 F 3~xFH ́Z撝`1ot!۲+N|f϶EQ}:ʈ': j 5W^~*1mT,Ⱦ߶DL׺meGR]II= n5KY;{"ȢvBuGXlYu?p_˺ײϱ:φj/a<>gyú >~QT_dpaPɣMI_ jBϞ$ 0o#wz~3'nw/M! X6r 4Th~j+.X;Jzo>$/ox q+ol[=$0ge; PDb2:,b`$L qhjڲ$f'75UiO Lܦ\\M1&FSD6{%J&6A7yIg >X)}˜R0rދsGf=:qʿd~ͬ}-FO wS全EO8K2y @uk]hGHϢ/W󄣎͵GqnMƔ;]P& k˔T(I6l- >7 ЫpEY*K@'ԟrJ8@=ݩ ;m\?eH*(ryoo,Ȳ1lӷF:axgBz'5/#'l>&u"qEYМ ˡK!{Vq-l ltis#P;w!Ȟ=bDkos=-g[C0 )w"Dfg[ܜ2u@N}UTc4eIİ x새KCVPMD|T0֨EM6[i0U fҸjn/nɅ'61؋$ZyPAw{P\1Q6~B"܀wmd@UwޚJQ,(m ?Y_߼/Db*T,tc"S HyT%9$$uL#EK!Dc%5 B"ж? ǜGi(phW^h xMq»Ŵ G8De_4@۰n4.ar1t$HlgHW!CeB}ͫ YW&"9hJ`G\Y/A JշNapE/ԋCԍ{gn"0y@+(}ȫ \> r+;xMZ[/su#Ӯ=Z6qf;sN$gx/EL>GV\ǖư^ؠȸqa.p{gqk2<@κ3'/U%o= xc?H~ Ǣ@RKjUIG'g0tlC%r! V OQ6Wd_ S*}yba5uݪFb 3Ӵ<˻6Wqˬ }u6geJvb a3Wm!I. ٖ8=g֡h]ϕR{'.T]/H8 szSݾ5BBe7bM7G_EplZ9_C*Mplb5)NdB>ȡ;Fo ͮv]Gp/%Šh*"IpJ*{Oo~ߞj<|e9#;Ͷ.8C =S9^c2s;@j"0{~+ߋ@>u{':Ԋa\f$v'pzԜ`6ceSsG2 .RR#~*rCB#[DpB뺂VJX쩝%3v$-X)aYE!*y[&F}I)pcrR|q&7~[~EX7 %Jm`8Jo-F´2Υ8TE<yFoEbk  `(Nv@B2Z’jR`IJ6~|2H?ƼrV&{jh\9uauQI v^ ptO\tϽxc(O(I[Gga8b8NRu'ryX MSf-&}TFРNLZ'%2xI &%CB|BW4 vؼcGէ7O&fjp譭X{Yms p!ʤմ+7:Ix)㑜<v qmCwuLV[TA\>׾VGRJ"{?2:DՠQ/5%`p1 qXN=GK]Np"bͪFdS_w+SѰaqY(O/IڃVݶ`>6*LGYBי$Vb/M>T"1'U%E 38 n*q:EQg^G511߈G#2TEZ aL(MgNrbԍڂBU8{ " oB?KPf\k<;y_/OrfLϣiL0~I\VDJ{faSFeehFC5*JpICFd"kE+:p3+‹[z\ԭQ_X) OSU?\R&S/ A[pҤ[bBRڷCc9&s4ʄfrcCF6uoTf&JayLy\Ӫ5<'X'x[x7 $t»j&!ق YO4{ж"V$L~499Ed~"˲ C!;\Եch~T_G^yLplZչQIޜ5qjܸB,H啦P:Qj`xV4yMNHm#a)aWdy =3t׽{Lh4']! :c905ϯxaV/bQ))[N=w+!xn:f fmfX{Ec0[g5lr,Y yjnϼ ngU)F[j=P;X$?ՑmDhN{(ޮ<@w='WnȐѿ/8t[RNZ%Dž|_),r7![wP'mVQ{7&zJ 1`Yc#ļI"aRSvE;wrqN/חQ!A58Rwk6k}Hޡ딾pvΙpJ>,[+~/m+i9pT¥vjT+폏Z$n&_ח[yы]ܝJĩ)?F ccQ2/V]Ơd-'$XkN4ҫANM7*j v.aulӀ%byMٔv^<;*.OOA! fS|^ض$ky2=fkMN~t5O ۂI_ FY@Bb "֫!CAf[ќqt&ˮ5j 8qhLK0[L(E$u(~w;P,!f`SdE~,]܂bcm3f|hİږ܋ W~S>p * H||>rf$GpJ ;X"}O =mSPNؔAh5DZjO^U}򤉳ջ=>οMhN0~)xw[ؠ\V*$YjsRUͭU!aA\ 6$txT;7j^ Hऺ_Q![gg58Vݨ aZ3ꥂq!\Y ZVM}UkfxgP()] :]0Wp`KEBTHtͰƕ8 *yUge̓%6oOq!wFw8<ԁ;I@|2a? 8 e @ԗCXUI1XQWcj谎?f/`B*)Pr.O$s8x=9t#߬QKtA2 ܈b \k3E60NR2~ѕpGI6)uf\sww JȧUm7͕v;UGr3sciFʄض qa&NY!}s>JZ|u !<`>0/o<.V(V`rYq F~2{n iOڼkaFùu`?xvT]zEy4t:`%~~(עY[-: 0MΪ;;,m+W QC>&yP3fr tVOwUA2YBssYIUo.}o| Wtwg62}=ؐUYmODpY1-=hm⽗{Q踗k´;Lch6L Hl¤)hM`ư\;~9Iw#<+^\\ n{1S\˜F%hIJ%:Ok m`׹HJDrL 8"{RMhnQNd@=1 4"[K0L+psW!',MT[9`I2Y4= G+|mrqT>019,!*%(<ޢ.G`@bY+6C"(y;4t QTB4\v(Fb8];6E;tL`[E/Qf[f t8~ppti [z.SM r;* ' ,,s,rdI3:&ag¸i`#60m u;!PMڡnGoHmSh,Ք4gH+jg0k~8 5o?SlDo!t1s1^ /aOpD֘n& t+rt^68ۑDp^tMKhgZEFC uYkhz1cLBF&N{E;kA)ab.2N)"N)1mum@qdGF/zCOx::{&}ERckj[*:2[V 擆5U9;V?$bakg,Сw+?`)f,7IPU&N.b>Hxs@-_ON.:AM=sj?˄~X\?}UKh┮VO.;ΪP;6u+$0Lۡ 3%Эc*/fFg|UUPif>dF;7UYIֱ~ja}~7}kRN%Aw_C"tGoy~5U@d}> J2ŀfV 73.va^dsÀW`95&! Ok/ }N_l(HuԝdMIDwe+]Y!j|Y X,JZ5o.ߎJf\!Cߠ|FglxJtϲq;Kmwd ҽaxEyQƛb.ENͻrC'>LcN[q~&INhLq])cGיTPc jQt)W6 +w/:ڼ1s˘x9k{R$zEGX[hk soe f2vŚ֦s$S H/AdG$KHű$xʇG&z(I2&\y{;]̔l!*w<M<2a/gD\fO*~zYZŐt&~'}:B@Q}cl#})azA{Q9ck-t-\:hbd[te⥸sL@L oN2<É_v(.ߏ 0EMѐ ^w^߸!PACwn2Í&ilNAzK5tGE̴2><,}-[BrD G~ъ<ޚUwKi," [CXպW=H0^DR@^ IQL;8j3fwqoںCܰ6@Eªd'5>|8|Ai11)_3?uCw*Ü4=|Rn"|ˁږ= OxfuNaz_kCz;_TA /u@ޞ1kD-W1TGOy0뀌P?kY z՘8 o+]Ƴȏ˿G)՚G7@-mh~ :_K3()Dk»Gie3'=Jo4Uz}iiz}#mY'ϖuwKL)TM<Ọ%9JL|d$$'*2 6dC,(.rb0j֫ 4#}xCT֥ TU ,6@ojΝL~Gsؐ$IEVz7]LakW Rl{!S>!|O]0[{$_o5+a#1!,A>Yz*P3F S54/-s& zIJSG}It9_%9_ DE:VorS_׿[z5!̆Fyˌfdc r+s ^9s0 Y gFUpmp-pdGlHmJcn3*2mW v eHeLգڅͫjȟmw+>9,S6 -UxK\@p#nwز]@;`w ,Җ68L"o~~SJ*E$)C\55k8Fpդ;yecEf#Xue˫>n [@/-Ց6"?ɊZQ?Ҭ97°x+&% BXQʋj^n[5K-hz@z([V9Т!}PSRU67pgS+[R2CP.Z @oL#ОE*I>W4a݌ nZW{0'3mz8py&{@x)K4{` )ҝ,"xu*-`rXlJ^#*scM#=B7& z /ƹ!OX8xSg=$qPd ^uWm)\$`L0mLf;XpD(~_9k&ft1+?r&)M-կR5q_ôdCvpjp@z@$5':ꇔ^~txo0fV!|7hS-2̠E>K{˝L]4`[!hF̫̎S8%"n%풖C0bf.;;zvX=ssL DP_T퍿z3{#@GFJnZZk{h{8Uqp/#].2A18FGek.o؇ݏZΟWAy7;& &l(?)%dô[eW C:Jy$$E42:fxj49Lw=9w qe!N3Hl䀔S!.]vҡ\ygA8 iei)U3&ƺ^f(YC}y0(oCSbׯ6aKX ߓ 1pyJ+%JMu>J-j—Nk`lײca֝=:YGU]eBH#iڙ0(+lz "bԟ;F7^{Ni:Zo\7V.zJJ y=A_D Ivtg?E֭2!2jg܇LȹS嫆{[K{ Ǫ)v^pkCgOG#Fpfhj(`c$CN}4W腣 <Vd@dpd{4s@<9˱(aFk'VNdcP0{8yfGK<^M/OD6m/ DvK;oCzMB@̪"FhGȊeV$ïC>nk$58/*Omx֛Ya,N DR0NNo3eSr94Q&Z5usDc>/$PCwAY)@!+ shu% )W^26vL;U)Q8?0rna:/3$? #4(17N@5s9e>3:"Łv‰B,qI6܌4hOj{=d0v=1㘟p)6,6˧ܩǶ!LbK6B!c T= K<1/f[?ٟ]LRAd ;t'Ȝ>b:B6js1 AصM)lRr= Yֺ/co=dG8H3c-1'յTB@O.+[8&h`4.mó0kabH U$wܟ~+kr͐= }>/i111B-kkҊL ۣ$f %oJhM1{"C 4M=UzDlِ[Me$bY(?jzoCdB`>' ] >IN; q2N9*0eG_5nzm9B5o!H3}ex@j4Td߈MhP_홻N.e ڼ1}8-=55 15ai&X@b^91 * TH_,vDl%=CR}e:~أu)w:| j-zlG)vV v Uv8KҡYOǓ?pq7]O,%o_i8k% #=x+MQE"ݎsۡoG[q`(/LI_;Z[m=!}~5C(e0.(7ӎ~!&z{l|2_,ӡ<;C .t,XcBpNådq|%(Ez&bQeKrLП|jÎ h=plQu=[, G/WN)d!L =epY}qaf6/1|zxHC7ߔr[s#Z 9ɪrj =yEkw)llÍ*Uⵖ͙[0L>8ƕ-(Va 75iViuzM{;gR{E=qQ?}ʪs:g{VP+ **6Dr v892[YRګGϒmF^71`ZC1Lh*+ sJ@sVViPxZ$S->4 VΚȨHڐ*>w(LBu;ꎗ.]l M^[s=*Ah9RE.ieǘzL/V5Kᦑ%BAhߔtNv7zWin{d1]@okNƤ!:mPyQ7F&"g EG&`BYzf*Dp3n7 @&ZN۞ 6 ##egD2Q!7Qř[2My@[y-}\`?Wmه7l4WR)ք>'4@g_P$<'  `i>!bf"%z!CIf@vbsPx&n77^u/!W;Ļ^Z}kGPJ`uſf-JQJg^xѪA r(M2| vvɢ>&CxT8U09劜_E806oR+?sCm`UY: 4;: '}UF 0E51) wc-M/"R=MrE:&Y)3][>(Tu$ ԃr`ALꧽk=yh[D[+GmT:5c?8߶~q!HcUOZ1o;7qb_zddH &AFgoapGǣ 4>CFEn2ɰ n k/AĠW` } w vh 3z57@N5znGEOY[*ηRb^F72G=ovM}PIAa%q991ZL/JI{|?*9R~8ߓR_Ş5DSݱ9x{lX 8ћ ySSMW{5yO 䱖MG@- F&v'Dx9c؅J8⣗SKURշ -oӚ!8G]&iVL^erp4:k}o"l%[x6lQ7qjPICGΘ;Z[ȡƖ]CER+=!B%9OL.r?ڤm\Q"](,/.!% |{"`9 M&GDa&ЊV^ƿ2P{" YԪ\CN 'aXh 6Hn,X7Aa@cdF1NX~e}#4︟#HZr2eK`ud{u,ˆ/(pzxD (xȣPjm(!e U)ۮ@#5FIKl/'s~bidmf )#j|sPԃ۩="L7n|lpу M*^ b/ PV1rl;z9Je(ǙPI;XJY4ȯPGYߍd?Jj:b`-ӹE=B^c.RYAGS|ƿ}Af9IWkQ`TYJ{q`n5HRK2 dif^l%w saL2eA8vL-\)EOv6ه6.5s|ld70FO|挠Hۭ5CcI@ͮhe9Yp5GnFֲX(E`vx6OrT|Vb.u֬UidhM~3<Dlq:ogBZ]|^CJ{:ҡsHL蜢C[l!=s;cն:={|tO ^xvlV|JnAX7pҿљ0~׺5P^ּy‰2>dmg7zqO&9gv vϪXq):zCǓ`T}wXc[(hdG-r.$$& .'#e2oCfF^ʆjtd:Y0 4([rMW)Vm0"5zO%=UPG>o2TzF}S֕4"xV^C֚lzoH ˸$kAZ]H#"]ψ60jȨ$0UڗtoESL#\C>,7h8Yx|q 7S76Z,{=)h6}!jI 4!dSE-(<ǃ'B~FEGe籨ة5ad6@MT:EMEyj8h:nr Ò=tc7FbPG]] ߡ\w:?EkwRG5]$SגI.SE15Lx_4C([ G 8bVZ)*xL~fSS}cio;JQ,[Q 5=[)}kۨ# uũ{X27k#t. X܏OosJoei)j*QY5;?>An^dŭ9U bv,wuIef;CNe`P c *jU;a5T9HV`dR/Q 9B}嘣о AdDOR:Q#>4D8$B]b^Q7CMųJε+y7es^ncɊꟑu?mL YwuȺe+]ĸ#Ju9W^ZsdR>竦rSG5|„=^h1O$9]VhIyn`oT@Aëm ɢ"=Dx=Sn O`<W骠wwrm6Š ,3r,:o0qߋ.0+K[:ZJ` j7ҕtC[F-\W4\ԯ"HީTqx1F k4SwdsV؃4jT" :[.!s)mӨ5#+aKq'_zvFjXxa0<",*_( Tְtaw3,c };Tk82D-HpF rںN;1by )Q>J,gʇYI~tw^/-7ϟ A7cMҦ62\Ӗ5V_h{ 0.cCPI4o? ]OZPQ~VX+妗Qa7b^L]{ƐJɔ;̑z7d1.tqe' *I꟩>#2K-mp2τSf]t0C8DNp Q,[~#d2 flƘ)Ab@z*mx&HҨ9i8/q:a) T{/1Zu_qd19ѕŒ |9j[J}Wh&]ͥ Q4Gck9BX #_2P{ _:o6ڡ(jWװ+ؽXVIx^>Uv/>E99*ܗlO(okǿ v.2pjj}:|hӞ=>Xdte!RzD ysN}H o9Y>#ù4= 96v).T6wU:̰krD2LI~x#U-`J3vrn_nxӘ buLReQNURR=dfӂ89~p>3$zSwЍ݃UVGR WD2d_)8BBE%ʃVdLIQ`nGgiMmxB_AJX  l%Hۑ wKi벆^y$P%xlQLeq`nGl.Ȳ:}YM!Pt-#ֶZywS\ybyq|zTv%w2:]{8ˆ19q#Fx/8> ІW25 n9+b d@6,;q"[oy;0AF 4p M7Eii,DDC$W'S'hBs-+0и/ I]U| &̤eQ9ξ_/yDӭ_dݺc' p2N\_/#Fy(wMo/04٦L8Pm w>IwB ϖ ;vX[1 ?b uqf^-yLǾq߁=` GyާN;Wb[ Gtn$h1K#cg)e"#v_DKq4Wn܎T׮i yq:m剶&$z[vbZ?\G?N{=pDfкsAFq<^TKuzGI=b? -AQR=6H pXT :L #=0s"4LN-uqÀk wTt):v*n ɛ'?~xuU2 ^w'WeEx1 gG . QZ5hPI%QR[*9*u-*d0{'+1-,pd#DVnU؝UىfN6x4EE؛YH2ZYsbB&oQj*VuBy8 '#Y•ԃE]fQ.g҅s"sxMZ3]ĆiJn""Oj|m[by˂Xl?<ǩ͟c-̥fu?ti}t8/$3c >OX3k&Ft=_hDШϷ |}2d]tAfB«ӧ#Y>밒-)kڐN,Ojo7 KyD>dٽ<xF_(FT۩JGs*!id=Gdi\W}#b@ɩNUYouݼ goডtfn"OҬ%j {x=ٜǫoVi^ # QY<=#07 ;~XWQ^[!`X5) m^Y~75xޝLI0ML5!(0 cfa:5r/Aسtkt.dR"_/lN+C9 b4#̳GoqWBXL?6d왤)>Oil+@0Fg6e,RZw=/JSܷűOi(ƞ*W)H*R<3yP 8Xg`lϬÔےڻEQy- [hDӣ=*}y_:U㝔Tʘe/^0r}`8&;Էxf5/1%]חQKk+^j t4Īqy^YT[E}ŘxXإ[Kc@X =ZFfȍeLӂ^Z ګuxGwSѭ'[h}zWc*$i0:'itv2PE̼S:-|VY7x WLJ͜I 0eOFfh'aR,9-s¥A-/ D@Ut1a`ٛ k8ẋ{~qM3v{=[Q7Lje؄)!?A+J؛p&n0T%)L7FV:rG%/0]w_,P pB.Od/&)4T ??Z&X~GCߍlWnխ7YW t=|V$3xPP<[z3 Aԋޓ%%?DD֝;`Z@Řw,JM㠢Hw~A?T'%O]N=aA·{&= $9[o ;a4Y-#)'m3T"`qENukH:2+I d RȉZ i}g1Xk )Ƞk5$2 Es, <ᣄ7#?:ߞ@I0XE(( AΠ-ipz(5ߎS/F #c&*Px߈m^l7 kY6e( W_AgVf p^-{w=7ɢ |7 %UD %?^Bym\G$'~G€̗VfQl'-VFT`1ШQ*lLٟ؇yK`D*cR2S_йR&CZ;be_)rUKYw$ڈz~/sTX}-+ V-: ֫\?PR㡈 Y_fINa)>ϥ ^Yιoі? ƞO`#A3j>FJu *Wt=1΋mMy40UrRnnqq~:s,?$\z(kMx-75DJ'V٦'-ȷW*\d*I"]ڡIgWz?ңJeg7@10}7̣K As2O.9[@ { ~(U+T)s'-+T9Sh.k×~K#&Tf2v>VՇݴǟ4xfdpr#翚[s%U F߿zOXy騠co0˒PUu8Ȗihs'f!?nF q* 8UE N$AUi ~)"%qʙz=McL S E7~*،۷o[xpuY(iEkx$zØ?Z5s~Sp 7jF3!V*0,YHmYMa2eNojMt 2Zx.DϘeSų@C#`G~}ԯg>UxHȔwKYjKNwN?Lm"K u֓Bf* NH6j8\FH hBuq ީzy秴kZުa AF>v d+|c׎y8r?Qk- Pm\KY&P͇j\dWS9GPD9dsm1/r7OwX 곻GYѺsx3ԶQS,KqPNR p壻e:<-BL@X* $<2dt&cOj~J%Kjxo8oWɓ/y*]0MQDaؒ:RnqIvWD, Fw,tT|!`5;_dy <_cZ'*5, pqF M*B"i*v1EMn> xuH{|`FtU'SÙv4Jr'ͩj{bLlEə1gE|Վ2IpΙ@'N˗k P&|S/AV:,FK\1 3#蝕Щ \2."}yٵk7jZA%[AƻӾ 7t0CQ-ZR K֨[?HK:00]7GS-agZaա"o 7y# V]Ɋ+[$Q -xVY{g0-#>>H2$j<<7<:<zĚ6Tux.7wKǿˊ C"7%HX'T@!:x)#nEȨY3'j P SdILx<8pHOnuva}Ps bh7bUc8.HQ"-?8<@PC7CQ27pq (/xdbE.aL֠N[ Q8bBN/ED)#(*ܯ-ls!?&Ip(jVs"P!Q~\KM-9xXy{g(Nc̐UBKk1(bIWh2tAauRB(64?#q< n I̷V[Hq^4yF!ř &+tKm+osz Hu8^9VE%kq,@BI/)iBfd-2˗09崵U]o*kJ~$V `W#/_ԢAkȵ2?we+~[pI47~˵Fv*feEL YƼ{ _By[lzv_uw w),l+֩RE}҇9-6$"i$'a}<wX^* n94GWsN鐟"O/I挗`-PeWZO6'\#t97ՇhK1|gLe+mGc\$\gfD"\˽wntT7ZP!P/qx5@e9\hw9_ 9.נ{`J N5_ x&/dn` ~M=鋠)T-\[B& A%A&`֡▅1YCDŘ7ejY#ː2Ø~,AF`ي"a> +fipZT#^tPJvkq$F|Qcc Xp(x+ą΄SlK4ZO.cVݙ w[ g0F`7dg8Ei?]m*5ɽoJS!F睊_4TtD>a rzΈ1zAtzFW x'gS׮cu㽩 6fc6&Sʏ1{#^b{BP 5=v]ZL)Q*lKskdz6,ŏ  )H"ykg/? ljr)qu.~yP ! ff&/ օ[w&@:m VA}Nd*ap Xw!7ͷBff q ,]I1ldy,Q͑Fvc6;3Wf &׻)9HTL VGWӱ2#J ɓ{Ĕu & ]T2,%fUbm!8V9D&1/*3qdp)sQyvNGp>(7×N@SF;BUTyֵ Yu[O\XG/ͤivg+O~C{ВtA0]4.+.Gw:HCohRrjQQ*" Ϧ:K>HmH{bO:E>sz8IJV| O&ubz~5 bbʾ4'-as\ƙҬ/ 0$]u:xdkG39`89y[Rx! waH#dZ{ϒ ˴FM$>A",7G o\hw'膵s=ju]}D}dIL6 *l:v3R:fV|VA>buW^ pns5q:_XX] rtv}ݓ,rQ0pstD@lӿ hr"%!b&} BG vy`o;bD4vwQ]O>[>I95(-„ꆲ4V-G$F)3G7FkEpCcė+CDۉ. TbN!}ϖoY ^*cSSG0&cAQ R,!& _Rp,ubىۿAr GB| %O|S'gc8@KΎ^<\m P",2P`$,5"_Υ<*@m`ˁ {&%=:$ܷIs 1]#шe^͕㢌{"f^ C:@?Q+*iӥ"$__{ۙ CFKCp SŹE̼* d{H,~_e-Cp A4/aA mw%YmOCoXEX"+ SῪLpR6zIJLQR&dvsSkBh)%ƄKW}nLZV&1t%(o"yO xcܶB+"< y} %d&6KGq2 (fZس;/$CX佇i)'ɠʼnfEͲ|x$`W{@_<W^ 67[V\p+3؄vg+ʶ[Na9T^c({e"m>ὠynM (F0U/rŸEݣ>-EP#ɏ7 { 4}b8utlk8\DV+6zƃC@}Gte} (GzOK8B:Y:QUk Ny4bQC\`@h9iEE:v.A keC%v9/3thjzJ3pǂ&L6b0zj]=0Z>»SA(0RR#()ZLiXw\=ALaeԀT5M5R:D/ ơ<pNn7"tױ!Wm:pMxDr3Kshљ5o. Xzӡb4FR6 ^~n HvCvXՌ&i$lzˠ߂(ry:Ҏ{HK8L[SFz5 ϢERzN;gɰ|P%Vi7t=W9s􋉌Uue'q^YL@,ҧ.ФҠ z.FA:\'=?9~L=~uU씢+ _wvۘΙxǤynSzj$aQU^uI BH!Xtq NqS PaD3+T§#9eHu.,b2·vZ_e|\&m@YZJs ?xtiƒhNL鎓#+2]JD{26eݙvFNи9}gS,_$̧u5<7GiQÒ0/\CrgBM_U3Y5#]C*NW ?~`Я18C—-,%,|^y='y0ICT:ŵU[5-'|\J0Й@347ME<K)u1=dۨiF 6JFUV{M@/<[ pmtɋD6o5p]ZzdOMGϪȠ+?N#^-?*l'0{g2JoZ,? UNeM#!ɜoY *cF|IJ @DoU/~c;cxiyB&WIrGW9 ]Y ;1I!_iH[jd/˃'!zj_dxtFz<0% vlW8aTq^QRi3N"uFE|KxQ5VvrK[Bc~愧ˍ,hG=oL'D lQY½F}}sFO+30:8%z%iԶ P"@S2`a8=Ag LIz"K5[R i'opG6p1;j Ot$+(܁2WMἅ,ۑ>nLL#_+DbyYǫ xᔃZah"T"x7T5Oiy}gf0'ҺEt˜~'Βh`˺ fn-j#Tt }dDNs+UKA $JY9G%ZPp]W jzpc= x%aBQV4p_FАW9e靿"N'.7vcf̜(]k8hÊ9a#ו/ҋց]6Y&PD߅QOp=~t+pcfusWꓢ aKq, g>4 Vr-NހKɕ?aKqeryq&!kS3NB&D=vӕ 8{0n `Ů*H0@|R*8ˁ*JTAQ4ȉpO^[ ]@xcM"-I(./-ծR0ͳw."$~L%']'py0W~ D6Vw0? IL(_9Qbȿ=lt؊q#\́='hJdȓ1#fxm'7w0h5 * ]sD4MC.W*UvR ]C"ѝaddа?^1FІ*7َ2}E<m6 CÇ %A bGu%{IHJ#*U=pτYѢĥ1`M滿,Q#SnI-Za ?GOZiFLyZcJ,&o(`׻P!,EA;%q'HGD&€ KG"l"*֌C/5 ,>K-ThqjBMTm3 7 =9{ `Bbv9ѓ?ƃj ,KCzYz!8% \߷ Z3TfE.Ņl8؆mȡ)AJR?;<}힆! g'1.PW y3A:u`Oѣ)L ЧmNroc=SӃCJAqS #]e)F}(iW 4%9.a@-G傫;`I;xۯ3 ;Nz@Xl.ĽLΣ˳1Ft.ams܈-¿X0n`gPms:- ksAMf; _?n'WOcɾ#Dk{\-eX&owI6^PC?Qn]eK-(]s!ZQ|x"ywQ5_phm#> wV)ѰB:Q kz%s0#kO!r+>qJ4=m*^i<ߋ Yp}eD6ŧ{wm,58yKl6xvVw|u{- HED7ƚV 5 Y/ at^?GLAQAwq%[h:i]G$fj!hTc߿Ԃ^i8& 7%fJn )]A? nwWl<;)Z&eWZZ{\y512 pJceeԁr\35&Ul  {lT~BA.@Kւ~W,!ਏH3Oq m|#?T`D\;Q^HbXs(-BR=kj5':Ev-{pvڹԟءA;yE& ؀1mE`%;yZ9J>QB?:{hE߆B]*ƣU G~(d0 Z[m&5oyִ;<.zg3D)Q^Ln\d59W$flt$J0D{е]қ8Y`!pwL0I'^0uyg;ia$62o>e[Icn%ʉ|e&ЫvW O3s(6*dY`Cj5h3H/wcks5hU \[;9#ozWІ*&z(97Cyc\m5١crZ~Fk-ZoHa MzMd*6~VPUkp@ i:8-b=^r ЩHyDf2h+}d^X N60ʃ~u.әJ4)ITm):7_?}*=OV]yE$EZu% :\:dqȜ=J!?#f<<9yNJޛ'|em:( ZBf~C)7 L\k:ku/%ȗ_pqfjXj9X#'G1rJL;•3o 2uY25% LߑXqW֬揧]r|k. 3alPN^Dߥ"Oe"UWK>\[lމ]5,y%˷DN96sNYO xލsk;e488&t["aK0jZyBw(N*6-J~E3ˈROWR41zƌd?JP4=9`Jit|hB\s A&Au7^Wᝦ2JE#HHCܤOu} Jx}Xij]J"QqSSPή{x 30M@(Boq|[R A;Vu6Bq]_kOa*s"{R_Ə%syhB2rɐ]MJ([bLiw|w}?; Q]_ w/}ek]Hp_a)%]8W@_U}5A  c4zAՖ}V&gsBЛ2= >)f.!FِBhp- ޝ=4 r8SиWr|k1]22G)-%ɰ3,x\U6 C×UMC Π=ڋNh{_ݙ ~zC&E ~;,Ӯ<$6h$g*>v\+^ 1Ak_ɫHBO rnL;Ғ32v)(Iaσc3(DG?P" I{q N2P k`ƪ$8߂ƷZ_Ⱦ\4w:(X%7wݡjŐe.!F- A:`ž))嗥-"G̫sqb)P!}:^lYv <};\bq]b_[^E,R:X!sjA2u?qdb1kaM'VrW۸ BYq. Fh%°$/& &ʜ2i]ivY^AGm]hoBnz^^ϪN`=h_89-9Gd6 KiX2FaG)7LkSW?[ROBIaLp%V6Y O. -YX\kvVPo7fI&8+_RgrD0^[\-_YfЬE&i/|H)vn31:@*MEqfKJ{8 up,-n& Txq4l*8mfG7xNqdP]௦}YcK` |u_.~|z|Nw.Łֻp,JsU2*Z*;i.i1-ߪ*'2>_o׸M |3,iAJ5 lyFS,jf"=錉{q `6nsWˌLV-yc%n]\ƃAyWf޼{N]t .lɟ?bR.19Ąфm@FқyUq2wȽA7F9L0.ò0foY22ߡ3!v }}󕯪L/憔*^-&$фѥ72Kȉ &g8*7ä Mms=&c"+?"S K-|,l qW`ƒՏĂ0Z?[L|hㄅog~܂&h L {"7ry]Xރ~&|Y6w0E4yWNCC/% Fl.]]8sluT?g´z>w4)^ΛOVuHEub D(yra.$H#W4iIYAȡ)#PH",@T+D8d[&wlɎ{9۲4EZX [a3, %̢>}͍n:M {O Pp/8/ NԲSYDG8w7E1kF`8H(:/Plt˧@bx~ XShiLh)d' PoU @YV`{%h^^vq)S{<Y~~KPƠ1R%¯dei,isr%KVr.E Cj~[5n9` yMnПagk(~$5Xu@ol:,Ѧz5fwu<J4A~.&H3raySN_UH%脧GzD _L~ f?w,YvSk!s}yl| W52vdfJRc&iL2eijCFyf f/ȯ8L-FFtrh1ć]ڝ5P> Gs332){"m:Dc;kk+ `8F͖s$ 4C1<mbc{΀P]O0`^KgtH:r;"p)a.z6=N'_O@댺R-yjyH3&G4vrMn($3*.zZ:RFk67ͥ >zpн٣A 7N0ڪ\-(m–#9o*A!➵adYp07ĭ\R)*`NŢVBtdbx="} 1 ~GP`C׀ )YjVg'@9S5QA[ I{| =t1q=#DɿNm4Uʾ6{ƕ: @஭oo64O?}nk 2 Tk Y)`E}Uyײ$aͳn ZC uL m7ք#*LQ>ލz'MæaOaϕ!d5k0+]*< U.]zRE+]!Y L6<!b":jYv66s\OKБA S"IIX Kc7vn)Yam#"Ph$)#Mʩh( 7=u9xAm.W,ka]q;|j _8\.mlxmW^JV*u2>-=M<5w%joJ[G^˾lЉAЯ̰c+K)$E[$;#FjyTX˦]^TZM:` h5niX\@QT}oWC}Mr8Q(W&P@4/s#_7EkAEgГdLʂF)gwQپZ53sA Ա {"OA ]9`(s{[1%KҕޮĠ$1J;=6+jrӆƚVoN*=:@嗚#z"VSV3>o?XM Ag똪Gӑ)2h/;!\@}g3l o G4' Z8eʒ*Ǘv~|\sC|>\t6,I bud62ǤxǞ$z"ih?䤁/1ÀvF1ܶ s^ǮTʭ keh!,P QƝL+dO_&22Zy#|{H*5L^bG YmpvP K']\8vJ= UD,J{Uaws?  &I ťXwA"&jх^QROuUв /7a1 Y;'B':Q~k ԁ/qTNQT2v0ä@pD,Q,^'fg˳5?kff0Y"49lK5ʖI'*Hy H',oxO2в5uUk0&>rȄ^5¯(Fϭm۫Ơ?IȇX_6noD.:9tV9 !y8=T_3+(5e/c, ]_K?͞zvHeKj(7r^$E_O{7Nׁ- -ɭ_BԤcF;ζͲ|;_rN͘W.G6vVI/Yf ւL,M kޭqM!MV:O,n+:KMXhi I,Sm< ~x|vHn[Y|{FAgzK3⠱^q H?{zB`..Z'X#fss^0M*6wrD\\B B_]H{mժ3;N #DyC%W :C;{q~GU/sogQ4Vbl  .-w(Ǵε( ;DxSf$q<G6P  ,f+5yl4t HlT*?jNTn(c6~hS6Ł9Wql=\O<}n.&Rrʸ2TݱW tA4(~tj2fXħT)JJX>h| Rs\ˬOO ~sA²A|-buBmMh z=_ *NE JOEI#bmpZIsdэew0uH4%x)jnRy;fjV.%'Ls+0,cU,5]\0nAɚyTS&GP l} pg?ҙKν4b䐨:ӵv! 7;x:k;z@܋Fv7\:^1,ؠX0 0aB]]sO'9/]sՌbqHG >|5-~E.=WSM9%ܖ,֤9:yo Ka+Pqߗw0HKD.]'䠅D!̎YDa1x"V*jHRłk8*L?)׻/]7zX FyiB@"O TQ*3U9x2^\ Vfןg8.%q&za,);.//'D.֧>GȗC}Bli_æq&Ez}D$`?F}2薻e _*@|om7ywD=˹fܙO/pnMr@ &YJN 1Fxyjj}Qn9 !yڋujNRp ԫݹ^ #gq!`-ubg%⛛f(~T:2z &YCnhtZvSOpnE OjGL°IǫnFe S+O˄ƋiT+P{݉lEMv"v)sm7,T6֎V{C=K\F`k;{GGRhh~# >|8Ck#-/ l%;qa;ŞHL~\;-jbW8aNk3۶ldA?6 L `Q#>[o~Sk< i dRa%`x9('uǶI%|iײ#ck|-,RDZ/.f #Ymyڱk״Sioh9Dƍ\Ɏ=ME=UWΓ #!5 ֍%d{whg S7-3SGһY`[S >O)5-,@}XRBD yeHͭi^p3OKRm>p&qEZVLJ\W/F췼+0劯xp .A)wJk{ y7utRFNZZ B'Jt8TQ[k6CRgݓ`wn)UY* g0ƸbCCYbK mb>$z bosK)I| ;.^sf2 TYzOYT?p|;sg.3%CB1>{j&zV`B첳 ٺD18kޢ3LYdqI0 ׅ%Lg|zc}>uAwjK\ߨ{e3@JvFPh`Qg/e\CQ$SIR7oSM c.j۩UֵfkH= MMw)Y]ANʍsOhh) C:H@AbJ>֒`~R'pDŽ?siNv)]6B$a$W׬*D)/Z ͇+τhor|^oJbHmZ3 AFΨ=zjt(M&<'P׽ } &nzEx%MKd6Psʼn(1e ; >yPϊD"7Mgr̞ǿ)f/~fCVkS+FɚS:Lk&-Ρg2CuHE>GKBc(BVo,F%$~Php^.wo$x,άl|(.D,r-JT}ZUwP`lxYOOӔC+[Jh#½3bzad(pK̞qH^˳RB?@yGۓfAE3;<&+BHOkI)lGYe6Kw$S4 eP?ѝ%&m9("akпP+CX5{KK+gҝ/K+tұ{ \@ŘʢP|_x#"3n;AR@ k %,}`ݑD2Nf-V&7mb{.6Gp`.6}|0{xמA_VB fvUɄɶb+VAćB ðW1P%W,W#ޓ^f?h@>;Ry&@clR^ȍ /:OtTiDFS(nӼnT|3Zmfe3`@%1!nVLʡ8J2 Fj=; ڹAD _3w[O|n|xA CYׯKЦ??#?vYox遰n7'֣P~ H{Zy)PT *UwS3#<MdEc ~<#-QH}2PAB|K Jvw ԺEȏiIA$% }|(H?}? ~}Գ$-e ŏi/y (Xُ}OY^j!Z~ U R\i">$ 2JT~>\Z ?Jb7#Q@s(_I  InszE; 'uK#<%`7ck .Pz ޏ7ofu.N^eW:w/9U=^1V}ބ% яؠq.aͳӀ鯓PC{('N)xY)'mS pKMC7۪%hA Ev,"-U|ٞ '?/ /KA$W&}o8c )7};yJ{ߘ{2' 4aqRDE"~E{A6YTX]!oE@:>]dsC2bD, "`'/I I{TXK|pqLƑw㚶bG 5:<$Sp^N'=GUHV4auC^nQl)WeF6<8%՘{ݍg} MH0 'Ʃœ=9K"-~HnVrhϑ@=FiJ1u_45ycWJdl6<7P.j_۶ǸM`{D卧|& +2>=ժY|-q+582{š'%h'F5,Q~Sb,{f  5N JSIcR  Na^Ez"2ͣ .*Bt85QW(Pڱ9}" % L@OR@n5ok4tOOiuHE9BtS)3N<=O'EFZYR#VGk0褶4ɘ./4ݘ]i| 7|"U!OeVD$ 4S*xۑW/Dw,}̔O^b16!5}J,gq=;qYO>rX-t&J" m/a6;l`pW *)3Fwk$>{$yS6#OAv꧙ /~MTH aENvQoNZ$h˯hggc1㭹"p$om*nOvzL砽3lP|vn3 ia1W!En<.7-RisVhCis0zN&Lv_̆ErL-!X{z9 {2lev8 f0Fet,0%@Qzk+aIwMvM0=9w\OvɌ2/++6Gbc}Ǿo?@lALs/U`m;t] %{1?AzP\h` -':C*1t@FFԔ=zp_= =-+jtjL#@;G~J=E n* abR vA PM8;l u΃qLLhs8^VB, GVIǤ*nﶮ3dکrNĜ^A'MCnm=@qdGoNA_捉G Rf'w?6aC]չh]KJMB˲ռy ԗ%^}m>Q7WdYL/7I#J:@}6>V*dQ*_|~F%LJOlO!htdď? q +D\ o{[iJkfLRiJH!u3eӌڗO7DoA4{[dL|#Byj[%=PM%*n1f fi;fVx4+wJԨ;P!Kj \_ybT^kl^!lYMjT?Zv/} 2/6rxڰ Yq@sIޤAlk,+w2¶h-=^K 96)P=C7)OF$ƪ587"%6ɕ'j-fCa[. R~Pa\}J'0oP[Ȝ#5OƛJiSUe1Ham nN\l;?!jI2FUFrM[;r@X-g(5} z l"_x{{28AHGpQr.|$%w0/`qwȁ ;!od@&E} bëNԳ&7 vt9ژ+8ڼ=;' < R%,Y};Cٸ޻VLwbgnů"[f]TZ'a;wcOfvk[bsn~%;*ɱ:-aȔt7P. tvX*A.F:8jߜ3UTf9M !@g+r (1XowhqC,n%Sm#IJ: H u8+ ,(,V'۫;Dbo ^a!CfS!8,3 e;Ro-Z\#ޱ>ɚA|";sJZ`mb/nceLs}אF=_*N[h®ue^JǵVup bH}OG!=sA*-†dC8;4A`˧R.fHi[QxhخhnHn`WDM;So|i:SS#|03҅CI bnu~2sJG=fށ1v;?n љxc۫aE "i*2Gl0T*LVFCz`@\%x tE@E~s 771a /DHkmX]F -!`Vnbx"p3j OXZ,xe P(#& !d !t$5kz: Wz4ɗ>S<\ZyWp^f'Nm>>W Wjx'hz*4=c ׳ Td,X҄|@h9ŸёRU*Wem2g,oF_̣<.`wnL̓2\Io\T%j`uš18=U 7Ȅ$4Ss(c6^'_gېT#jmS1)Gn)s`r^j<&C5HhDP_SYyOˣ7f9 ϵs|A D\ܞ@K⎇NbwrbEb$k2Ccd2*^%3 3iYb_40a#4#N]'Z!)XFh "o4g#\:Kt 1TfkDC}RcgOY$-AL [CV}o|c1۹:|AYPWlGmNowvCliﰰm8 9rNTxT۩mexsT{ vh܆شHxMp)W*mOR3ox@6&Wop]\| 8%2J+GTJ"sO*c\ C>II2:4R6q}q#߽p?,$32rS ,LdMoa?: [Nsv);-)%#a$7)gLqu\Z]cv8766`hP\JU+SgKnk05/f[8Ϲb˼ȭtB]),-j=%R=7Dz`>AEUylji Ug€ M6kt4ȿ4N4ʓlHO;U/8 204[HBaScgL,qm)gO\TgBDsW̵hS'={B}UwJ]%r379|H1)X:fXt5x;@$wMtu:놻Ni<9Թvc}x"wgXe{] l,.~& ϭP; !8>~3eKh-7`sgx0[)b*9憲%1 L HiKܨIx{ 'ʑMmє_CʟվFD02 ^+~rytB@B̽#d`vuD:ikM餽3bqjۿ'"͓P bЯ/5%sY6NU, .[l\zٳgԾ%h}d*Hi52saAO>e92:K=cܻ*i9&E%ch >!<'Dq"$~LK!uF >*>^Wy/{K9 6RżEY],N k.ӲSƁl>M>zr/ѼoOuC#X* O:DmBAلmq bJry)}rTY uz#oA>ķefPҪPހˆ;n:* _lCH6!.F5IXk!+pށ97XK2: Fboo?N:@~"3׋ˌFptB-# 5#ߎ5;bAB/$,舢?µg)A3#<=iO=ˊǩL6A/"tT^%](Et|g0Mw_f7'vKmUuՐi SYDS/qT_gщež6B&SӶF=FKQ:{sY8 cVD,5B=# Ј1j(ݶMjL@-]rg=ٻt&9T\է ÎTO4h\>tPmτpIe-ܠñKnѻaz_8Nя-J6[ '\'V~m\*Ό$ȧ'0OlHɖ%#05cN<̰͂FO7C4ء<]n܅a&Abx%^ohՒ+ cv̟ l >#݄i/\I8Gu]JnkO<u4kИbZh89Ev}LW +l}po;GTYS+JYg9J*̷8Cw  `ʻ \`݄6R4J(C׃%|H `1Z3wߐ'MH'ʮE"uIB$h`םo¯Xֵ+qF]M݌v: BAg#jEk\ [?Ƶ⮰Q >e0YrdW_4]LnUYoi,KgSrcH m⥉Zkԑоv40͟CMbU,-b8ܡ7Q8A HѵMر`w(8!;F O9}\ͭ +暎D?DBBh@?aߧ_-ukyfSe9t!L%%lAiqSwAi<6^O۶PT7 v|Q XJ7(qWZ[>"]lk"/ȟy,U8NajntP*7rS4H{Q @3̨s>qAaKTDWCS R] ݑFua/6dB-ZC7Cב Q8eӟrzUXl Mi{P^[TN;RûeE6׻ 3rZ~ŸotܧJBl=NxfUxI72"fq>~_jNq z id+2h;ƪ@wpۧg&qU׮I!5q@9,H=$#UbPm:ѡ=AW?AJ a)x#.$nJ]m=ޣH-م2?H/:K( +Ĕ;i{?2 NNOH TxX)QY1B') q1Ywᑠui ~hU*Qҧ IKؚWh\ډ"T0M ]|+m 3I7bI&|C3譨U?|. lCOJJN{oEIa _A S1R:7VI-31lK\с&1]aqQWp-3ED'K&+%FUӸ#^$s_X(gi (來a*fcS_1TͿDyC Uaw\r}FNYMqٕ7`ъG/$&h6E٣ (Ӭ~\r4w!k+A-L*c~R8~ -/: o^N ҝH$+_2':1f M`h%l\t\Xt]>Ǘ9*Cz55ڒ 3f.Tąi;RR+Bd ɽXH]˼Fiݔ*V* RԱ Wh{}E+S1? adyl&QTڜw\}sy]CƮ+Ab ,,iux܅"$"/:;+@`_Ϭc6i6(ЧS^Nwwh˒E$ `盀H@9y6_<|n3.%dOx3F|̩m.eWV֓_>ȱUPbK9j$~DSeﲪ-F<Ϧ *2ܽܗhP+ •#UC&CeT]~ӒlĄ6-w2ҷucIuɠCm(_/.w骎\i{Z/d rbnkӿ?ا9 1k!*5n!Y}Y'>^n {#lA!$pÌqK[]:QWcCU$ XeFtd+B 7/fq#^l76"G*eH(z"J" <ջy,ُgЎTi Gi7xA Q ϝ'̍DC%Ze/?xMI;8F+w֍ #*Sv ( hcDQ`[>}+|3겤:*? dE]4.vMqC.,Ȣ_IؕpURȣvD bNŃqJxn-wK&1q%ZBm֏<_^ D[9E5:3uIo!5 -F*jK9=:xw=juh^  UvȪU2_/ "Lxw1O0f2yꈌ ~%-VEjvĶM3F!gxE $3F7Dq CXa|g{q}N6B{؛v[(hniԙ+$|aaфNQpKz2M<qxǀ$B ZTP!Mmn{vC pF#"OusXl3k &;jMB f0aduu'$+1g77n~AfHlK ̫3\CS"!`wA }ֲAG$@7%@^NgU/niـ@T8"fh.vӭ8k*ŐL||D}eMu?W')7:Q &^j`~r_眪 Ԑddƕ0]剅iK'&33gh:c*#b"z?8 ^ -*lyΒU70xP髴MHP?qƐ=G(wL--UEԪ!NQ%j i֙Z4w!AC˓v8oH Žg_ZEzRg;7'vXhSqޫ&fiY/iFq,:`- /j5ui a2sOlhfJ(2qmb[;wcl=#7"ɭ`њ~MBU2JYEtdzG2`m ]ʘG3b v>8dZ# >F#t (8LF8;S1Ĭinpi0iX ֲ-ɷs[:4̑}QCKg ]o6執O3twEթFTZ.6~ ՜.A:+s^mHLؠ:E7_MҶAMi!SQ]lb93Ϯ$Xߞmx4ilWP='9>_)(c2yWrQ₆\/]Ǯ>W!5sY`yI=z6ֆάCr{T bNIq&SKxn,V;3~YVS ޶ Tg!to[i\dè=J?v7Jn̤3e5,1֒}#`\ &^ĸɿ Z2 ef`0#LKv[K;s[֛Q/\g!!p RK뚻\O[))$382Dp>p?V^,ԦֆҎTԌ39r_!/,B;IJ*ue媧.W啶>ᑞ4 \vֱ K~|^' ( mt#"uAٰo'xcE$#w}߶9`##45:py'1g9VΘ307߁q5ɤ9~"DRKFrLl<>Y(ppsG'򞙓K9v861F&M`P9=Ec[vTc=Kd&lf_OD[MLo\Lp}?BrEMLA(Q_X{{h5RUt Hǯ Įg(7|\ /&pa+\`]"\o9wH#.+< kcm/pHI0 uMb٦$!DHޱDLϋT܈>UMoO {b&QdL>OB.;^3_`U~QPzҖAH&nHȥ煣tZٜdr%|:J,&5qp<|/Б@p)ETj0f\Ϲ@iE[2^JfﲘgrcdSs[K^+r܍-p-fK+%a A< %B|ݬsv`;9fǥ8eM_%ن7wĨ= Ze--*mJǏXH_DO:x`*4C =mēl!/cğk.};kimy n!,#WWgB +@VW_0xۋ/Q Җ]ÚIfU"[\:HZ~E|¢wB O|KU3XOtuxACOXp]k~]ȜxS91ŧ"UIh%Wp޸1/z:x`2Nciev8G2)u#=ar ),["ȩϗ.𚗭u`$E:TrWGs?L֋Udfw6D9!v\H~n?81HE=+6M}C.LҸaR5D=S;`|$Ƴ*OoӅKmʹiKt]9Zr0"[Չ'65LYf@Ӏ3oY7GZr)pDV,nO;oeUoYBAM,ڋKkƗ@3eƇQS<q'ۦ~-`j߯ݍj+9cݯq\ ~=s=֦=^>/5>+!V8{H͂~8'MR%[K ^Vw"T/5@ix4N1A2&Z',C8('!oӴ7%OLd\9/wvޕJ(U.; !{X2 Q+f&řؖÉd),Ai_tg64Fj?TnN^otTוֹ`&I9+:EXS.|.e}O?I<}hJ<`Ȋ/ўӼ =cbxJnPUkfswOK!Ow+HFUע.+[/Oy Y+W|W֓*2Ԁd+%[nPT򪸲'ZK8㘣˴WJ͡"ϐHBfwS`pWUp_cq#d!p+1Uo7O} HEJ`] ō'^>UGND>1('_$~n0D!ppB۞%lIm.cz6}Vx SrMEVL0"qZc}O)uyj+xU9DBØf2?W:?(MoJT oN9aw,n|k,4UcI ҡ,GDeJ`9ˢ~=W2/c;dFQ~e}4hhزu_,%>"Lpx a|/wǾ󶂂 zn+rj<|3]ٛAAxPdwe084Y~3P-yw֙Fy6M){^.rЕ% [Ikk:FHJT` а9#^ ŎqBűJwS оPo|#kS>@iC?/41g#PC|m?|&[_noID؛VլW{x?&Y=#zcX *Q]tt͔#eF'#$kHTOY)Zn][ 7ؓvKt]+*R'?AaYI[fS;Rُn/(zG|v_M'l’H%[N+$KA]ȝ5K9I^*U^KK|g2u XVK&e١P4k,3\b@.$>a} w{Lu셎(3C"5Xu6~,oe"]d31l$h\㚳&3yoBW$v5 CS_)&UnFKHuoΖ#Ork\V= 9J tsT(A$<#ttS]h+# KD!i( =C`ӈ5N% un dO?rڃ@}$" $&+O1.]=#A7Gxb^M\R:[0IjyBDMFA ̤T78>eV "zlbͳ+WOP/.^4Q_K2H~FȌ6UABW`Rv-"f& >\:#:0 4hR@>TWC<[C^:7 /L{* vcOKiQ zJ ֝VI=yY`?UmO_ŒЊbC'!=O\ByA?HIFI/A!g/{'Qsʀ=}1TCA=nU?H22Fƻ zw584лIܿf x++^yUNUF%x[>ݰWm^ڱu|J}&Ф ru@vWD Z* )Q&,Ӳc; U[,k ڄDZ7! ף[TTBbJ?J9x&mlǶȺ!#5܆Lrʻ1ȣ$R._Qn:߫c͜qheB)DӮF~ _iCƶU_/ao؇<.9văE2K#Ȥn(u.zL$AS.8=gJhˇkz7o]l)x\#=!ÌBŨD9sȬkO.:OkϢF7 IsXBȀ-(xnČd#$X<409Lr ft<)8R$t> k\]j5u! pSUgD{Bz1b~H+2spj+s>Jt,-;\0{)- 5f BOHR("wD`IGuvpܽzGӎ{"2 yiq8ZqF`^A2"*:o"0TwU<YX2  SJrGK  ())۷WDC;c jj_W``A'ہTR|OpӚd[;SzY;\h4?hؾ9IC&@yDln$Pȑ\"nk=t.`9 * p's}& ~! 2''eߪL#}Te8 @x_4hh~T.ot)2xkȾ!Δ`#|9BO;n:>HajzH \0]bGH!W()Zsc5^ӘՃ^Pǧq*ݝ.clA[ Ty<:kƂ-kpvhP Rwe,H$THK^qp 'Yf_:@=eENEd&{gs8s]އ|J5]|ƹ%G= H܍ ,Xŭs,Vɹ|6SF7M 5ntcѥ H4<%4;k>11Z;t WN>SZ˭SᏰa۝/x+VrH5 ,qi_[G^vb=J ,|gLdF 0kmYB"m `o^6z飵B,dΘ55M}NL} ~c/'ϰwA~ŋ dm"2+#kB]X/Z\\۶KG5#i8I::E\GC_.gd8PmL-HbB3y'i$/v$n{qpD[^^{Qvz.{-duj?{vS`ʤ)0t!(O˖2U1QQ?>jtiC=60{ r GRY}ְ-WTP,kf~OLu@꽟j>J_Rdw*9k+TmW1 t߽p-MQ80` ^Zlz/H3K:T?hާ5AGn儀r/Y Su{OdW[˂$>Z/jc-?qJoM^\hwyG# &~ wKMFY|lcL|0d=uIЙ0QF]ƴ/ƪeH"> %fYGP[jm+h)lX"OTc;|C;^xônqc27f,yNs$IzSqa8(.R>=7T}V<') e;v}<*(`QHI,A}v..F>A\֖,ϧDC&cV9BxsJ~szѸO'HDruM &=Kqzo$VSG:$Wx6/%6 &>п:K^^*:fx:"(Rq~ \k)ka适I6Y@D |1:X?Sd} EEtzRj$׆pX1Sa+8'j%/xkO39f~;,g3MgJ몹?Z![Cn!ΛH[V_BavH2L0J)hn؛"l 2=:ZY Zrj[I5P@:nd ߴjwG g"ᚚيJEFWZwDy+8EzThOȒH6 "|4⇴)qL  c6 NWɔм_e^,7MIwsd!Xɒ͹ )e /y:O6 JC4ipVvG-hEeޛ\2*kcI绲Y`quvDb+42Cfji8pL-B[$X5G|_ٿ6@lL|iCݑ~z|y9KVWxƵ&1,=tD3Ugvh]Fqej~DBXyiTd4L)-LOpJPxc B?+pYW H|J,/4-WR-RtKL%& wtV SM?Ԗ\%֢N'B1J+MwoBVŽ[+eOԔ88}..+dOHY>\7 [EO.B>Ȯ0ϐG qZ6Gldڎ~Ugѡсn-;LByNS#Ρ<d:-?g64ۦhŹ"Wn0s6Ұϳ@彾FM"0%J^O==0MXӨ:MttzLI&\JX:UPQ-VdϺM hoQ#d_DbɐGt̤X\m-Ey, 9:Z <2Fp8J}/@~P}gcI@H( ޾ٜlۄH E4X+3D~e%G*#QWǫƦH̛ʒ,3F[M2cB?OD0 0&P;::HWe4!"*/1ΉVGF9qžs)]|NƥnHx `@='WU7p3mA(3]%?J!tQk^8yNW M)~c>1\൶J'fftL)בcLhe%M[0hdnc3Wlc:傴~{)qp`uaPSdgaU,nuR*yE5R>Pj h:6)2PDzc+U &`5S^ 3%g<9vSIG(7O}QTʮ*| EyLiU ua>8BTltRaK} bZ/R"(!0A&i]*G~gc-ykؚVg ރ*21~䫇WhM Oj$x4ηҥF{F||*v>eo /b [|M.2ļ|: zO,T*}ZKϨfam ≞*~7"/{PIȮL؎DTk6X]50ySijWG$2'ff%v%uKAu} T&\Kcڥ%V}&dDJO| umG>ZCݠƗQYOZ-+( jvJ6u=}8LV\ iG 4i=8:q8NX0hUn$Q|KT{')w< <\_hzn{)є0_,ӧ R d .U.ؒ_Asjuw<ڢrJo!W:? m#HmU{%7̌:"$q^wJ\BlRgm~q3Q> ayuuXqyNͤt+C?c]F(pyECAG]M9n?g u;7"PʔT$◓^C|iO2k%)xTß=K JV Y3ԛڛ)|3=6I6le|p=^S4XD.Otֆ'$bhvUJgf2! USQLFV^a`96/udӜ0VjsW0N1gheʒel*]l(! GtX" Ą:Xҙ>/zUlY@{#hY͚F8j~՜@4Eql_+?4PdC̄K[8<2F ӓy\?c|x/!^KdCZx=m5|hT?lRn U9 )1N;t E}R܎fD"e"[w|*Vt^_[46ӎ*s:8Aq푹xU‹ug.dJnkjqJ{} 7N [b0|cS?mJa}3ܞ2Bp5.曳C}n'ަ @\"-߬/Hd R5̧孷xUH;b6(.W55Ҥwjrل9WFZR\se]Sۖ^"mJY&6 _5. ߈$~\c#ޔgKG;J&ҀZJFT;%Ǩ|HAN )S ?)T1-&vd-gJ*PyCpkWUwSyr3}' א_i{Zy 0-^KP.7Aeb&i] fXC!]tR/ :mPa YyK};QaPkb GmbÆof=sbqdmAJw 0[9X 9qqJO}'~;GR bњ/Z:yy\t&suI۽~N[>c.g3Ȍ4q_h*g=V3bLj3A)e}uPGULčX-ʲfG~ɾ*9mqRPVYU 4u~zYJ.~hu#XnʲVK8`= $ 3 0TU`\_<c29 RxTDOqd#!vIʒ^lMW$ɤmezF@r~r簣Us@$D"818Lt0OOmiƌ :cOJ2ɹ*vrAJ>Bwf25av upY䇔K(#dhORhkG&F\;ƜK0 nڂ |S6wv[Vn낲^$PSäҨVhx;۸-uZ2gK<=>سsHE+(Z Klr*༚wSgQ7!:y3VD𰅓wcJ.S%;) C6-tדsU|ArP_-Wn%yH;jUu4 Zz- :NrxQ2_Ԃ |Kڬ(`jk&(xk0a<,_@` !i,U:/6wTZFoJb@z2mmă\3!Dĩ%LGaVGJl|KPv9"±%"+XMn69$xE0 |R$gہ`"𩁊vtC9Z:O);U9Ҳ6 N3|{=l*o+nGQ 3e}!X0y9$0qNo`]pH {%5nOןVjD"li dGUliqdAa،a]T,G;֕zFcqI@N&9u,AZK30Óh0c\9QwxN+tAV=R5ʤ,k<u>4G"Xj+24)yRԪ}ZaqNB< 2,D \ 'Dݡ45KjpIHF(rיN'O45:cCD6E xKZP7amr/oR3 uY i,$'ߤ"I/ߊ 8|*B_[*anj1Cl QHLaZ1#43iwI{6{:*'9%͟SpFE5ot a*ٺUs=twѝ/LVZjO "!OݑmF6zWc k9-SG2 @6lbS%ᴚJ͢%L}ɮ.3=EUs^TZAIA- f6%V2 N), 5Kײ骳dť=Zsb O2 CYUB,M]I71R|vVX.pwŏ}.CJn>^tdw e'!H.9s55^ا,S|xNv&*J\TfE]tWe G?(N Ol=96s#Py&I6Op}FRG"8 kr9$KÝyZg(^7sk)fIn^u) Fq!e/6խEAP(R-Vz@A $Z'xn!WJ ."qХ#l:~Y0yd0Had=l{^l\Ժ 9w+JN mzQED^!h#Eim0)=@E$T|¶IJ%z?6|[UMU+fLҶ]x?ߔ 9"Qhxkqq+29O2G\xHugfqa]" Z- !0Xu_\i Q3JH,dh8 '`!"ڱĝ d,`߰#ZΏhYȦZ@*llGJ^dC ]$mHNNuփ*ySmKEߨ5d&.LtN"Ikǣ/.{ϯ)*4֏wO&˭Y]cJ8 F]RCٓnV\IJm ۽4DqxȚr4[ m Gg`!aFZ{9Jk$P鲢>@|{qQ Vh%do+ yYB#0ιc`P+ߥ+C Rb2th'6цDʵ:-WBA}@a= lMgdbsCWf 0nN"  D0LHHQx1eU~&Ar%q̝pZ*bVO zj< A4鑤BZA RiW<(15LlLwV2Pd0V`VO߁vqQi.㛲@3X,h¤ĚNyWz`I <]ac|78';\:s.L4d,Pj=u.[}X ddF5'5g6蘲{Tݮ{ sasUh"cx 1V'r(y_"6Dp:LA>u:AZn~ 4KSe +J)m[d6vfJI4J!L>7k}Y]C]!MG6*U/c#x[f&] !~J&dhq*x5M:[ l?wM9_6NHʓv-4E5̸- F(;Ce5Ĩ6M~v`ʼnLשk4QFOq9ڨsy8_c| s;(4sZ_o1 =i%wfʩT پ1B{k;_4$a؊C6h8 O'1݂aMA:%J-Kf>fU#I˅9^}F =f>]\IS5x%^VP b>r?E( hh';ɪKɺ}i^U.蜅D7Ap*-b47vaYmTDљ;xc!Tkфwn'vŠWt2]bt}`%NNŮJ1D﷛# N}72~B3yTDTvBj9 &6 g77.h2HyL#9^o!OPSS|WI`T<8$v%,Nw ̹&mO0!6{*zcIh1#/NRF[qJj/bsݬ@Cif?G?_sfGPjb X'0FW r_b':8Qu/fXBR^My3We+>/~8LZndaK擆K t7.+x#.**i=;ω~gb#Z5_-4>xbVg*aBW3B.ىuV!T*>^nh<+@w` c 񽈛۰pr"EZ#gUd\Z{(|0u$Sqze X?xex l7-?}rI\S ?csW2}k0MnY8΁Nadh^uWt H>؞o_e(^oM6gQNOQdJiuE0eX4~u8Q6쩍v׀;i7Hf=\_t?M{*LO bDRܲ,3BinKt5_U=4p#'i5vnCʡgʩEX6aԩE]J[j {kƽ99E)$|E'm_gJf^~e0NJ9pg2~ $<dnu-2Ƥ\Ŷc,>Y`F[֟2 [@uʸ>vJ1LǃtFқ)hgw<5?زDZđ2& Rc\,JSR9%:gu fncu:t$gV:{*#/"sto(l7C % SOvf9费D~0{.S5ve^gb=3* ޟ ˞Ih \j${MC$1OL&r&;S+0! з?3J?]8õ?h#%QPfapDuT<јIqEr4b[&nDP E4GmLH lo . D7 F@CAEhq=Ќ !}%ix)KEPSSt{LVkW",YZu`&<K褻A Ɍz7-}mv\V_uy5#b{&xw$E!]ƫ M1a`=خiHzPH:,"ؕ5H>ItJAH}yP:yc@EC+pjf].kVFm# w쬀Qyn &VeTN|hP5^x| SVyGqT`UjJfZ=*Qʉ;q߲ j$]f7*ERʸl۬[P2'~X,q3b7ބ, 1~e`DJ_Ǖ}fCjt&JoBloZnҹf 3q++` Nɲ]1COK@K{9Ⴈ/7(P.Ǽ gN&Rj%fI%_A;X,|gB$U%Ct%0 ӘYcP,ĕ*?<1S/ R@+SԒL1ư23(%)EɃkgͯ 3O[8(ۂ?J$y{jPejB[n cRBP/¿lQvHU;Cw2{ݮV"_f "Һ7T<>J:vlTNS{grYzw}+z;2\fs47Og2~T+dġlpvje"[:H'5 "nA7Y*^QD"m.ӜyCVE}ưܦ/>Pf7!? 1HE8l;O5mƐfư5rM=Cm#(2 3 >z*o@aX28UU(E I< ˤ WbUy$'";RRw<7Gay^)ZQV M XWP|U-d@aP}-[axN(M7D4oPSH ^ud xB 'ޓ7b1kh!)>/[ ǔ+!ËS/}BZ [Ճ%8ku㸥of/+H:x <v7F9'.?!Һw" (ʢ1$w`>YxAtI}HdoU jKl(Eă 4*Hm@`Dr$h/Y(3+Iy]OW>C2Q>#lYI{:)FS(i,/(hl| ʍW)&gXp]NIUEu5 6癀6t{Z@I Cx@xj&re„|HҘ'c(N% uBvd.k"luLnSXr C#=ʗ6r>VFym;}+/V=sr>r٧IDeC)#"#8t@y WtB&Q=DF;0N7xO%Eұљq L}I -=\k0wH1֣F zd$xIR*s_z1|x.)%_jU$+!MٯXQU5@:(87է `cwOmd5Kw &; Kd ŭ&X̻bUbug(⋸ǻc#QRħ65DZ2EN[O:&̎9(Dܾ;Jv`|d(5Oa-XWF\SiMN.aT %ZB@,_[2@07UTQ|י/mgn ׮Ū0h1OUfJ"C  ݩ;N Çc%'`ݼHRQcG+uffDV`L+9kBfe~'nlQғ%1,U]O¨$eF ~ $a/M1%k ."#V]AX50/FTkl$횟DmF_aRa> vKAeK(-§QLdN}98TR09bjpv̆(29 PkMHKTxk7)P9GnaY"h<;"@ʂŢҐ4P#y~l/!wJX ~ьz^A dZbg6nJ]]FX,GjO LW?dtM~4$$ZJ tmi R9R -_xs+mQe3qB^XqK3H tԻҼUy^:-w҆]iVhߤހ-\.qCʢ[ FAjuNg (R|/>w\cƵfC?԰LrRGhbQ̝n ^w(L~οkr~Xh( Q!i%fp0C0nh<6ٰ " ~rN  Jm۴ld x)?֐rG*-%Y>um[_y$GE.!PQ[s[_ZYmdjbAfJr6Be -`LΙ 4E3R41;!p<8n#v딮&Ր}p0ml'l[4'm!_}P'YP+=ᥒ  SH d "& AΤyF9 )KTPm=6Zs)^*WGayÅU7wlܦp RMW[6ڹ&6QpO -2"̡tVQerEp4hC!e~:p&WZ7yns;P³H{`{Q9vBLrh%ʿ7}GƐ`ٛX[I1F1riHBG^KJStDs MY+2꾦#=U=%JӐ[gNdBGY<:Y^%&ò6z%tf3d-cqp Nkڈ.`=͞>% J+hO:,kiϸ_Ph:7|1*EH-$zfPqsmV깎 _,Qdl%LUv1_g$ rasbȉƟL:dIB4r^!/k?5%7莄T86NGr< !'N hyYgZ^.CW EEazvy,/ t^l4_Vl0y3o}y^6KdTʨiH2WHNJM/76S]1|(gY01g/q<_C̃;ι0˔<+]-,Ez`:{f}~cmICb24%cb$~g@g Hu<4`o[z/qsoG\":!٨B;`kߵDpvR3D?NzQ{w3lkqąq&FPյN 7{,[B"h"+|Z(k-1WXA!J,۶倢J|jBF I1Z| {5D6`3d:4$}'*/E[~5hy?^"יKR7<.Ϣ[ap ΝK윴s* h,Ђm|Sasv$^DAA ]4_PixmkUͼa%ylZVP*~t G I9htĂaj^C[D89tM .(\}LKDbG\Bv :^FN,:b8~ͧkO;SU,5=Y 7X ^mR_[MSd0peWh$327 ;nCcٳ{.}q 7Gm{?v_69L%yPTt!0pL*^3Dܙ[Ӳwwx2cR}DgzOfN*x*Qwol ݑ{jrMA v.khCR ^4|>yL~x{0Ҙ'^q`r#fj Ȳ𶳂v#u{$?1/3XILgra'h5D|Y=F%yg%Imgf|Fjn ސ\'WBM`Ƹs{6/s}ixPkt¥kidM;R@8& SZ?As%qڞa5!-Z`@V m_&W%J5\£R`|D,|9Sk.EiHF^?QC4Qi>g90"0 :aY[ϿeᥖX_-(XUOۜqx?,3sKVS)$tc)mb[pw4cT{`N>U.ntIW|{eK}^sS>60 Ϋh_Mץ?Ku}4@:5$wvm2r6g}χo:5YP2ZoxG&y+=J. dg/:w SJ(C$v^H+0IL[c K`ʋcg8aV9KK]dw.-q>A4 ͎fm>hpILtԃ΅7qX𱂬 ?=͜Gx_V"hXBE[ت^whȰ+xD + 4f :߲.v/%ht+nX̩)Vځe@ƮkpTg ^[mܦ.QlZOPFveMkɴScH2n7S}%/.{>W!lKH5Wj|Kd4)9O8'(=G888v/xAϑo(kӑ8L5]obxycȊq`7^0놽U 6gF 㫼=JCtMf^C,S0OstZ[T: g|7|jЊl RS6w_3oXy;>܇cߎBUhYI,e9;9ČqBʞEX3ׂ| )ɜ<^dc~KLsXΧu,㼽`d7>’M>O4Տ="2-횐)x*Os~IJQclvȪFp7^+D3y{ȗF23\_> w> r(l@)p$ 45kX{)YZnZ!q*ʼ5Q!& tJn`I,ؙBYFhL-nx)1 Bma!7DSEODW}]Nڭ*&v(I0UtUIfфz T%]l nMcL;%ZH f`f_W$n'>m; lNaqC` "ψنzmk`aho F^m,adIzgk~|*˃|e\ƒݟV7Ɗ#9S Л| n9fAx*blNStͩӐ=]{MgR^ཱུa|T}hzy`9r!PSJQ{LMQћn.7vH H0~8KE5,ڜSF`-m&N{mcެ:#MϢXUFEytGUw4bs)GM9sS-'ޯ~&a+ԅf%mUcރ!fE[7.LL9: JrMF8^ -|R5sp,QQfK#jEot,#hGNg" UU*+nq` tFA Ȏ˻wiP;bLh3:I8KԫPG+(U5SPqz䈨i]w+3;rS<:j)RXk$l g|#tR3@EcV{TYD'ͦџ,:Lm{RlX/q6Cu(B~>ag!N/.\qXPؘͬ}&-=ޒHWCk ɉQyMS9jeR)w $`HƿkVfCsܲk4OlSno/? J;G!H-WTo+5_CeVs3%xyDTne߳f}AN?8~mzSyHвt dhi)S2`9Px慫~#C) LUr`LL!ah<ل1;x\^?|ѦM4n\D&V$~c{աruG1L|1,?L05eZ+;R˒X5wyTS$DY$YOAy^2b$B@WĽĂTَ #9ۍ% ȇRߗ%E淞cV.G< VP 'ORE:GIe1 D6{\P٪a=mc}zM~~{|?N3-4NposR2Ȃh飀fVraR &׹Kȍgu|Zd~)#Pw qV }X@b=o!RXR'@$0ox#iHb?fcx5(Ԟ#Yֺ}w@eyFE5TH=>>_$"s2.8bb$"%0!l32X׫h^a~`K;GoG&@0pTZpF4Ͳ }tz1_1GfW{?9. Z/,."Cf4K<qXvc7e v`'9lLg*|3vpPOK2bEg5<2a [??r밟i TZ>x#eZ }Roic>$'bx:תz_Kt$] /۾-'Kv\zhq,;ɫSѨӈ.qjZWhq41˲,:=^yw;_C} gȰonåDzm `,7c1"qNtǙOSoA[=g]grb+%&) K@aMkLHhF' )e\2}azgĞ`k4cOKT>1s ( !̸+ {qs;#'y+6Q d 7IETyHC$A2²>ĈX3)+`[/?2nӱѣ4P^~s lsqkmUNy䏱!0:aҡOqDG-ouu3qA ;:od gYl}b ;ܔp>x5Jq.CF-?i4|g]_恻OfUy86%IOl|qP~CIHL 7W$7B!aă WP!T'Dta*쾡#Չ1ҕ\+HlM"cE[:H\ʼn}X85*#W)*qLf- ;ңg4˖:u$zNf;fMalQ^?z + vmLNְ8 i̤݊"JuW^F n킵ÒBo"k,D(G~[\UWթBxcNJVD0_-쒏_o:M{Xb=Fb7d7yxMy? }1 .],3g*x9']]Δ7(K~hbIZU=&̦\^ͭx2QQɸ:75zP{~/^E.7 L}Si+hZ{7jBrqvA F ??>O|ZZSy?uO!џUM.#$֤fa7Aw[H2Bϧ"" ,OW ,dP^&{똧B9N޽I?9#bz c:c&.aǁDhHB\0;NdoI}{v꥾^y`@6bW։?}`5P?2Ϸڹ:5@O1sVLuaJ6mG'f[avdZHQpTP?+FkF˭m9qv1:ݹS{d¦OATgpr89p"ˡ̰8G]!&)/F 0BCoRdB*yRW:40SPlЯǍOZxi2& zE@*:zRhS@ק_HABjN_#\#[vqBf/04 bCTz!L /z. !~"P3f+1oi oNd9 b3u8:zdXϒF[s,[~ZK0D-ؔuW7B̺4`'|E[Ca.#@C 7@wEKsZ5a\'m! ݋}P38.5Fdt QXA|l|(Gf^2ŚHqW A#xaꫲWTCH鍂>#)GfU?&ZICM7JU Ɛ=(oDV(C82 ;l1\Jdv?Uu 2p 5.t Sb%Έ4"Ǯ_`mx?8 "NC48[rp`_Q%wJlbr?4q`̞dB(ܚ.,RD![f{P*1ꯝ> Ğӝta};DN)]~4M똈ԗ=yQ9kdܓ#ѳ=  D^~:@+yC΀]NdqVؤcty*&$t2W!w3hg[^tMfmiy4&~7ͩ4QM@rU,/Ɖc~|ޠʹYNcXF^v-(0؛FвІ~^c<4lϢQ ( (ڟnXur9*LKO+Ƥ_$<¼P.g)h4ǣ(V &-NK CVONoѨICXqˏ$nk@13c]eE:>"tWS`F_@=[xH˷ a&B߬ kI֍,-erP.~mKXu2J0hf77; AuLN -1>V3JwCh[Bص]f/-2DS i(TK8ʷ%3cuc)DW?VCx(ot_UK:5d F3Ǡ=B8rEûV׆ ;k:ܿwhۺj5kr - j^<&Sv0'|_vU߮<@[?:dUwe#zgX}Ly˲BptI:,qcT"jCρ-ӓǎɦ>WW'mv-/ LS Rء^93?lѪM7My &nP3JĿݤ wK_4֭Q 4,u2~E%.e4]Qx8hgKaja1Q=lK=z99y^r^) AiO]<*w\5u ymG-wyWRUƒ aSupF`Zj˭( ;Ɋ¢J<@@Ҟ0Ds m]у…o7g߶Olˠ[(4/ 4p18Ul˜T3&T{kZi?ٵi`Ƥwt|!K2с˚la${#9HKK35.MF&8 V-okxXӥMC嫶ٿyiQ]u9\$E`ڈi;sވ];$fx?W|@Y,o#0hYhyS .".0paO)!Q(/&wZ+)o΢-YpHX3X)_Eq4}@cQ3 1d_QEEd@!DߦV"-P9D{fuvIGpl9?c*1BBfS2^5Ŗb\oxڑivԺ~(~=p͡s[ʞ$5"ԙsn%FVxvN\0l] Mq˃eC7w:I0E ,X8݆74GQ6U&#=,{=~eʱ[?j|\f!.‡M]6ކ#:W&a / bP7';p "'q3yA=bNb;kG#?\{{г<ʁ\1TeE&ނ)I'ѿE@^ĺ`U~ꕾKN^tph:UJaŏmbf黻ΘPw IĜ5 ڳm[PlIj)7GEk%mN@˥!!҇dwC1=J,'|`8+r4D•[",̎S7M~+x \< DiRwS_Wt QDNN==d cP3R7Q- bRFo٣W'>#|R?lNS:0c2Ano @^|HAdC$xܳAy 7? !wa&1Nl[/!>cUxIEs rb<>m  lϑ6:U؞g/ ,.XqDhN$X͏$̞z4!n'!`n&)A@ڹtPtg9jH>ɧF>(:Vi;צ^$&tЃᥘ'7S Cb v^ MUֿ.4trO1ԇK}]68,s/Tmm+sc#x5&Y+%Q/,+5GoC/Iy; {49^\tFZc") ?$쟠n}Uxj;|ԠFv\F@8I.__m4npQט;vvm[`].Y%<.M? fgM6`C"7N@FCP.>nEqF+=+>/4W"kjT?3ahՐaT6q >IvfOȟICLl1tdW 68*;j&&-v"6^",i!Ycs~Ogo 4ckì]b*Va8aüxtu'Gq,i=ma5H JQƊ6i>XF u{}rm} q.o9bw\4/Q1YwVym6\*̧b - XWA8,':~ E0/ʩnۦQԴ>Q-oFKCw@Qh|*ߠ[^@8nj3Wԅ7 45I%naOL*xyd]? MsSK: R׼6/B V>>9 Saۜqe Qa4á0+Rj|۷}p8-J`} KdcȻS3H -)LL”.Y\ گ N1\Ý}*]pT1TEM+]+6xtmdž(s&<4E^>t6wt 0 IYH,<}M4w{m.󩺳df*]#jS l+<瀳YYo{+|I&UTmv,—wh<=Ce hx  l\ʞ}hzGWfh1(]B`ņDf[}|0y+V)QuY@!q&2_¼)ؒ -X.x{Kȵkp&KLjF{I1(qRB?]US`vۖ:uMrzN]xWYz!g(̓cQtJO̙WdV mf{A8x\ыV0nןd\cQ¡نZ2U"ÃVzI6$L?zKg&},iI~4.7"E廱r;np!.WeЖP|hY\X[)ű\"C#yy];&/5bPm}(S{3^ 2,̿B{a*nmM3lNX BԄZC믜ŐȆN+EIGb)'1ټyT$54 ԃO0zD.B=2685dkc̺X5RvZ=<3jf8ce辯Fa.m dnnmd*өB?Լ4Ѱ$oh4&YXUMup}NsiYa?ĘD3dmU|h&h[xZ/f]* u@ŠRKbNNܠ+nɁؾ&Nq20s3]aˌP笷桫+eXMD0c!OT *np#zpw34\&ź$N1:?gkJi_8=uU9.h\'^/7C|y^5Ij1aKs.i%cPLŰƺ`:dgF0N0#Xw+ i>v\ÿ.m>c"k˃^ꢲE GPB |&d^FU3 =7]=ErUI?% Ԙ)a[S(J@؃" m5!Y0joߑoH$#Uk*-Py8NT$3QɭN6KW ^\9]Iy`djPL&lgՀ}N&lᣊA $X&>{@O;dObxZD8gAG)ĸ. o%jz֓;daG)BplZ0q36-OqZڇ_t˻v#(B(@aHCٟ/Ԫk-`*%:9|m+.{ 1kRQZϊZL!R"dHUv, uN 2 |a$eUsT2 󁁕Q/}n z_.v1~$0[{SD \JJϪL5|-CH–Qu)'6Z` "` 3Y.}@ᔐ7"..3jXC(-D|A0?Kf1zt %e꿻KFטfߺ/Xl tǻ- XޱGO4]Lyzsy4gfX K V$کf׹Cܝ;&&c{M|"qmR' a&QGѡC1oj3/!#J2 p-3"Lf3xSi-ߠדlWnLq%@*)M@ߋ\bt[U &*S2=h:~W4byxu5'Ώ7lxW#\{C1lR6-|8nSوG15O8 w\}LC?Wje.R+BV>b1,>=ɱZ2Ӥd:]^MtXu~nnv:gڿB^":͂QlIg/2xVB̮9kIt҆Tʶqy#xngw{ʸ~w d ʳ{.mP=A"n?S#@Rִ `ewx+U &9RVO%)=lDH4. h3nVXiP$yYnKF# HGw2L p*+Ry`1vbokZG $ `W2'Ï4l~U"dPa YgY%OE檓1qa=bhٖ뿫,SS ؿ dhȄel}v[o'DЛ!P;g}MQ'Òx6)iv.y㨬"+B>ڰ܂~L+(ɭWڹtn5?ԓpwP6v&/cQh1&5{ xU!a$Io/8$34-gz/}DcvtjMA2{^ g]pL7>A6x+\侵d-se,$Jcrr }=|]Hc&j $F Z+b.@g:ETj Lt~*~`RNOy'kb,@%h\^؝|[jT 0tJ4"6P7>d`l͜wlE\o_l/syҙ 1y`{hd: nW+<ϒ-nv"ɤ/ ejS%ax(CJ-$.DGF4~$@''PDq놧[e T`%k6X Fst]O-mx/oKϗlkH!y)jp{11\2˂2V̰[afwK)1,_znjM2&@qJMQFbXܧ5I)g^?h6驏9jҨd\#y2dc bY^X_-k{@'0 0]Ȃk?ō9՞¼G)I!+'(a1DQl'u+MR^rDi\]Q6D[qI>{dq+ :4+` 6(x@FH.Zug ]P| HGIw,l5fF^8ۻIkTULpw "Ě/ReYC{5Xxh(:Q`}D̀Fj܊5~!Zk" "LANPXY}^?@`F$')[KꉔYuR$NE Z\Z3(ӝS 图g%FP y00|cLnZJHj̯_YǮB@qHj4: ?5<g"=ew[D9H6-?Cv3Xѧ oLB^~D鱩]P^%y0XLʼn.vihm}[^`rzN#rqjBìn)FS8 O|V #v#.k7gτI1 9RtN=>ns\>:`}d ]o N¶#$EEB1!ti>8vCX`d a&% c=BpF Y=(2{[fJ]`{f(*6bn}zTqsI~AqF-™@Big=DW-:JO E>{[V]4~FuI-'iT+xC KO??R-Qg>) uoD08?x=h&A^)Qr]D230RpXul̼vEGihWT;ZjZI:(1A fj#LT\+f؀!k39O5|!\qEv+;9LYgk4`уN2ƨ o&“(|1g@EmJ짪97̳/X\bk\̠!SM nb!ؘIej ^ÁƖMҕY;GWfe V~ujh$g7VS=DSTEeH^g"8=aٴ^6 ~aIUitVI*5nTp/Z(TDLsʋꊌl؅^ !YIգ\&Bъq՗PE@uŋ|](tB@ "|)a$%cK0-xU-[!|ZARLJO&. bhQRje$lIT925!LF6Me{Tjr 0Z]])"5w>@ȚURSӉuhi HAf'Ly);X`J l4.&[n fe㼩 ^v6 p]i]ٯKSe@[Ei0>G ]R)+N 9#]>؛OJ| W:k]vB( ϟȒ[A P|nW݆<٥6)P g%)ۇ+4rN@so<:@GJmĸ E%0\C|R3L>\ANèOA W\n12f~ˉby `h%&ӥ1$ 6$V$>=Khe'z%" Ӝ|/EHNkReyɟZ&jwڳ{>i8&Oؕ#Ƣ/I0]v+LC=B<.u3fvtZZHXS"0H@s #`|٠ nFrO1VL#IC֠p0G`Sn|03|EP2+9 H8fdF-3,<#?k ~t^U8 o/ם<Ҵ.W&>ڑ4 /R`uBT4}aF܇zs*{dnuL$ک9vC!%Q9.`E:vs[X~_bL^D2 e|P¸̪!S6sQvD"R8b5EٟLi?{J?wQchS 7Dd! [o- ~B)~jWMf2UMZW,SKm>UjhO,q$ (bc[fyPU-ͿG,ؓ>bT>3LJ)7;:Gڎqfba]GiFpSk|Oia6+Kz6Tf=ft[{7CPVGU݉;>l3ʴlTwL#H Vf+pKӨMK^{H yzv,sRt=bv/%a[E3t)a=5p":}:݈W qu&tw| hxKdF~ۉ}|%}R20dxh-(w"b5+"&cHBy^Z`I=ջmaVCQv" Rjyr+ѺM f7ywSlVJ$NIխK9t4Z*[JϱP٠h6А ElhYqИ Logh" :K'ٰ DϱyۺR%dtܮEw "k1NY CQ訥>=! iIKF|Cɛ4ҥT+ aTX(FlC M׽r+ Ħ.i ;`ާ>g[ʚ$I:]ଌIOm''k}XA{ 5 8zfa5P6L*bCry_ ;Nl$Y)GLy6kp,mUߦqlG+7m ֳ_jSjRΝӚFιA%ף`W!%0@K滛!Glp;إ3O iR  N%AP5J1m+bPD`& dy<=d so\%n WO6s*{͋.f(LaT~gOKP~mœ}cCd=>QI3aFV1q.)R TZ#0Ra$%hP$d6 # nF>@BVzj-3 !ucR@G\ h{L3r&BZ:[Ѱd@w /V_{Nf=e2ՊZeUP qFREIF /!`c>F> OЬW} :&DxU0~Ecib@H9e@v#Yr b#^3փ&9(K I}a(IҹDvgF^VC; %=IףP86WĶ]((FI=OyO覉);s/U:43h!Z,iOvbb,uߌuj% H!w1H +>XWV\J[ۡbXkϷFQ$ufY"4: |nQXf~y ESmyS=E`1fe[=ƈZDeb!>{A,As쓱HEbp 1Ӌk.ےnc6Ϊ ȳ\mh}O)Lj]39c5lW;2|YC;^3X DJrO4j 5a8.]P ۻa |J<6ۨ' Wl$mhEYr7NIen#*9[? 1|Io_@a4{B.5V5k#`98tkB=ً SxXЙ|̠b4Uipv6eɃ!ĩgiq A5(qs P@s9=GzBroPv֦o+L<)z#+84Hj?([i-#+flDÝ 1!%-|P+]* RSx\>x}[4%ȯu HP(ـO,V`f߯,jgب{$ヨ!YxBob zTJdZ#Wnq?8;9K~!R)Q&C>e00zųg<:BF*Y}7 (px Dvir~hu>E~f㢗m˄oIIn0VP;=1z|LORش!pF.ms9!8دC%\ '4m'vkn4B 0=*lL}B^+/9#5ܲecR͌*c0L>.xEވjſr<5y;v[]QY `!!RPF8QV/YEUwsd)F=Q9F>iu֤$U'D[JуЄ (~qG͖Qu8+6vCriC/TQ..hT(Y%1/՞7q{HǼ,@H,4 \rCmg.A7ef>s 0x,fG\Ý2ާ%~SA@~[wT%#Pt+)j8RfPGO~*J:[Nc!XΨ1tZW SXWHrhFĄKt$cQ40 U.:.ΤXSB!} T~&/_C|ooH)AUQfqi,ϼ[$27LY\Nl|w@3 ,h.đ[bycCadn!6]Z !uT;z\n""[˂~ k͒|!'-@}<#3;L/$]f^MF MwYDAceWپ?e \wj8Arc; e1DQ ԧMD2۷֔'<^2gB?M!fΕ|oqT!@E"+~h9[-w#^*5,ӆdua T+ZX_kA @KAPY&3l-kSyˠH( ڸ1.ne)o¤3Kw| ԧdA+#|q,CǨ>MI? ;pbln!Lo/ :KB:?nM 8v܋;3A7אfN ͉\>j 7h)Nq5_I^/jDЊc tQYLtkحI73gcm .8.ҝ~z r`1h:^cz7` 9-hPRWB़cHhGGt%zB*MS y?.DڔٗP>gK F8zM {o \XtWHrFyitX/(nن G%%mn g$c S'V% 14+*bwiZQj4Lt{DQ='ݞ%$Hk۬-ʠGoe< iF_KaU@YC/uff9V~]iT՜IOz| IDf?zpGs[T绡29pcF٤tc8^Js*Yt`; sɆ(& *r6K 8+4#7] ?[;%R/BٖuG^[ޱiڜM_\aѵm{q~J(JQ$`6tMl.؍B 㶗6.-mu@kU r[^W&ŷpv ޢvO^ QoU:zF nYiJiqv-~D czrFTڞ&*_CkiahНH ޕuu֌X2z&KmJX&uCp>kr~5AwEH'q*cI}rQÍ# AKfY`UJTK+GxxGsm[Duu ̮5tmYCu0MBrr!]8Q)p~Zh7.:2hf1Y&a+5 j;RBw5{}̀MǴRWEJbRX&  lqk5Ibkz\}xV?'i] H&7M`qHE0][.y!3 0Fc?T(}:DNJuƽ~RY#AѧEF(-Ϗ_W#I$9XfiWójo 8h:MN}:T'.w- L`%V90MYbw\L,h$YFS,(;iG`XOB3g &xyo2X)\TkM@Ɵ^nx-S0;؜YZ \gі bmE};0i^frLQz>RYv YXMXeaOJۓEe_#c<ʚH's>%OZL^Z8Qz S%IHpm8F>yH/Y1+:V;Vqߛ;AUF.FYPD '1}R;m^ 'ǠUPoV |'҂Qz- lv >l&1r>')bO9t*%3sjKXƄAc<>}2mdM%tyZۡjqVatBg`x ZXu #*O ;wC< 51gKe>Ċ0.}걍ȩT1n&wL @;)ؽ!\iO@tOl4U̬v (FYM嘃,{_jtZ)Oܓ}J{}|]Nk*k$ƶd޷ L pWkt_xΔ&@0ُq؁ND]Oj6_qO &IK߈`g:Xj=2۟~UrgpJa%6E.,u t \|#OJEG.JR >$DtpI*mhdW 'b/r$Hyߝؘ ; q03D_y]"8sE>8+"tePTxFӳĝI'&KW~/fً 09'nܙ& [DT{q''"Sp{XL`d˪tbOt߬6iSV/=/>~-+:@6ZJ@d DJ`0p f}ʶAɱ] HBi$!Z6*O_c Sbne1tvNWTč!kia/fPrC (QZs?pcH /!*uoޒ=1]>ǖco. [ k{xUSe\"/$)?uYOd( =LoUCMyfmvBV4@ 4?klB_V"BɬL6Aƽjޚ_jx"A/$w8˯-yoJAH˄r;>a-l&{3D>#BE͏Sҡq RLjw~Ort0!-оyh/I'tyJ&GjVA*Ɩ󗥒|Ӎ5\AN#H@1BdwPB䘙nsJ2 U%쫀[&@k.Qd8s 0{~G{`ԟTqq1ow q3 d^Y.fWPM[J3 ]O瑀pVC.Il"c ;;x`% (Lffx6K̆z)>Ľw@ehRO(r ڶ((~s|\,az ywz9RjkҲ/v-6ΏOĨmG;֝Ή BxI)e2MU2=Fo1HBgX3`:H>`M\%}s]D'&纼mc.APhRdpۀf\.5]L;K ƈmɝ`;`2P&X;ʧ(`Q8-$Fy^,ثU{%YsJk&H[94( |kso;m܎$%^@9r` юQPLk[_~A$xUK&28Ŋ-jⰗ Nz^_j.WZQхW6⿳zq$uyVzAu뇇9.O‹A)ـ2W,m3Ey)Ejj]^~ZV5S-&4:޴_зK'S=]bY0mcyE`&~0s~ow*OW (4Z4 *\Lc!(qwaJٌEi3p@񽷍 }jc$eIb fb[h3 YWN사Zyo*KKaG2S+C/`U"uA-ig, >W g椲X11QP:soWvGT_cvwTRH2GG9~ҝ[F1;!S.nKXo,\c+8Q!֧;!=0{WY3[V\YrLA9).ˡZI3:8nc(*6+!I@L2s'W VkLhsg z~PRn~TѣTܠÀB/BE۳ Xhk/n|,'=[Hdg(S8,+92LlgCt,y !-1݈$͋|n 苕L'< 2 Ry*s'ϛ6l _]goX?8+u&zs f8`nraTY~qUg t)Tx)}hC)6~52L#~-D"j]NBOls91VqD@/"-4EtFtNU38 % N2^8SPIӠwqz,z=[/Z'9Z[e'w8Xhu Q뉕-XǶc8}Z HiaE$0C1+&/fJz]52gcBoe3~. Z; :\nN$IF=| XV85^'W'<\ !;W|JŻh7)#1#~wC[OּD靆*A1;B3Ɵnz5_8JwAqvuG`:У)a0v,!Kź3$E(O8Bq ~f 'S}Z/ImkCXE6ON'>i=#PWğ@c8 ?ʫ S;e`K'2u. J`9V ZVf4][;IFOm0f, >H#AӢ脦 A]{ ~9S6] Viy7!>4Z9 ^s\>v >RCcRz2*Oxi~HHkaqV_qpÁ _Z. )݅zTͬ%'SBxl#NmYu' ^_Nm WcI9&*B~^ƪLSiJ-x|Pf5HcK透&m1ze1sxk U2m,59`."M͘ )OG)`_$~&BNL♘dw>W1΍~^Ȳn;5)NF6 >C%\q! ~<i6=r;$@vESí KJ_X]Œ"yٌܿ+s"4i]7}]Y͑ML?Ҵl D!c*n_uCx>n S9Q.^25 {W"z*KHBkۘ cVR asrxb,} 70IN"S=UNS^Wnr7SS(4JZVMɼfUEnowH\C 35 :>jtN21ZfUYs\|ۡӳHXN9$saʬ>]>$YZ4{23 F8ũ(npViߒR%82EpC DzPՈ Kud$|Ke1ƯŤToQo\RAmYNnTJbbϩ>ucbIMj $:W%gڰ{ bVLBQ7JvlE /R#):d7#x`]Wvd_Q8 p9JecD!;411tZufo59 ɪ EhWps 67rѳBfNق];ph{w˶ԇ9ǘOM ؖ[է] hgjI~g!dl=fG2j{4036(뽷2H4 )GN )@%}ZxQQ F'W)!U4R?>mI" Y 'gľr*pbT ~<%oPVP%:鵁@}͗Q q0 ̮R=b ϾB5.Qerm2gJ2wNZKq寝ZK+)" ,3z(h.٬n!<:S ,6@Ξ IR,䧇.#ύ=\c@bS)\[D%RB!Ɩ}cK$̰AX߿ޜ8J) X(.]LvFhp+}NP`;BdL NႀvxZ!$+M^GA`w쩲ʫO3>`Q϶y;+ok:|^p?+W 9qf 3i l{ wl4Ecp;}"$ EuGƓQr~y`[B#OJ ݗx{kLTK[_w~hRL;`^3!2/*7Gm wL%ҫ?j7&I#O\2@OXh7n#[G'A)#o!Lk-GUbݏ(!q'Kz D灤U]{;ː= t-)wXy'_Ѧ`?҉&Eg >J;gNJ%*aDz*ѡt&Ev4 !WԸԗm`HbX%`0BPr:uKD,k4&X:qF} p-ǕS8D3>}گ4ܘ:oO[E2򉂀8=H* Q@%AhC1)֒kr1xQf0rڹիVV H+hƥ9‘Ntpj\ mIYwQ5'1ѻ&)+DgNs(cvxљ=@Kګ&(awwʘkBZ= ѪhCuxZIrh FL-R}abĆ ㆴD Js:Yq@9p*PGc-S)P>،C|e/ƫԟ(pw,7ق>y>'5še_CXaX%d[,<ś7VfHRρfo5@CNGb52d-Ƚ%*ȣSӐ #7Rt榵«w>fxf'Z~]cb\9T7ix`\Dwө=Jb9R&; "q/ͭjÅ98o`# D v1q6ܵh `>~A'vTzUZfȵt/͛ve䱻8!*AMs|*Cl^rlP?(:p>aF>+e%ӟRvi4b8P| =S,PwϧrS`>Ο̯bY^[݋?TyD0!y` C lde([/7ǖ+U ː adVYjvϊiN sEdQ;A=-rbH]Bvw >|:ʹ͐ýfPNڬ2\ۅ;V%}̝w膋TcPca'uwϰħedD6?II`~m!&Ӽodu:Pld.w@@L.ٹ/QN\wSP,E$%>kx/]fkU/֍V +>f;[HC,~*h9b>x%!&o)$n8sPŸ9ceՓƒOőp4clqW7˺Q#I߈ '{+RŠ:"J;'z>3$ ۖ>5VtgMӂo9u"h0\cTQvV|ikBFtg.Հ!RX=)XW*%MF -auʆ,* E4#/I]^mrޜ|)>aP|W5^,8x }96 υokK j64NF Ff^9Ŝ]q-LvC6J{Yy>w<hdi YL1 t- =^O0U5:k!0I'3G/Ӟ4?Q^ w U5K{AZҳ]uU&)Y;@(u9&ޚ+<'KM/]7iw֢>3G4dE7LJ:Q(΍W"3$U! MbGÝIEj$"W: p meGLj3\R+~ݤQ7Ƀ7}E&{KqDihTLLo/uh ?Tw7V'Pǧd :s_MH=0Qx>ppGMb<>ѻuKNr"A56A=(Fmm5yNN?.-H4#u-Spqf_U1Q") Q:uK^#){yX!:s{xfҪu釾;T椲 cٝӻ;֮<*D]DeaP!@|>g{`& +8 D_ OBXpȤ1醆P,C>gOq*#LU0ww^M&)jŲeG㑃N֟I`]'^pJ~t0۝GV]/m|kVn$/%#Afd9>{+!֙!U@\FH{ ЕM'Lͅ0`ѷ n QhG9F$H* e-_z=e%qWŀMBe3T+Po}iRY 1A3ުf9"1 BފR(4σYfj/.{묬4Txը `nfV>򗜷>0 ziW=F/W"՚;\ibfl5b"I*m=0qժ Kj` s%p[)[2m*O,\M)Xbp ,b^L=< JÇ#kU1 p8p rˀ0{O:?Rh6G&&=Fքt=uT:J=${9ot.f,=kտjV. 8F|?hPNcA3RFR >=u1(fhVej:,AWjʡ v ­Ule]\(ZI)!V]Nq"s7p!ϓ<E\b`]C,m}t["8be('ȽdczS?a:Ibe⤴$ά~笭)`At]O?]eh.p?k$ڌ$n%Yqud—%=;xvDȢ ex?Ti)>أamff @R.{}v&2CXS?Qe06͔tW ]=Ο>pKcY߱LeCr~EBDk7ʼjDewh,.€ Cz"2` Mu̜?} =)6I \LUᲲUX?(/=uu;(vk5!춭ͶN jl_?0P9v d;mTg9M|"Ͳ2=O]v↊oo`^C)8VPr'4V'ˈ#r´%m;)RB⌵lE GN~R~Pr+YEƿV>KzZ0iWൄŹ^-8 Ri՟ 3Zq?ޤeCvd*'>ьЌ6 \h~ D!z KLegJNOġXjy9xP,aǃDIDxbRg]@bO+5L:ݲPFGCv̻uklA\ }.\/Zib(o[P‘PX ~X5)aJ~{q[[K'/3Iԛ7t -J U'R&K%dW0Ѝ!Ǵ F/Awŷƨ$Jl|a]FC2R$v LP^3;DyQG w=A:='@qݗ|Qm!rv ־@w`_cV{maE5JEl@-_cBAZw-(l=P,$ 2E{kt$w7"†S5"vz(bl.;_.~:?͵@PnM=`tzOBc/H >27>+IdS u8gB\'IVuoĜPdM.Z )Lva:z0"ٿ;eNf` R/s\gn "H%1eu/&b 4B;ŨbycDW-2%_sg>A@] }hmx[ޔΐ w @ٯxg7 \+ؠCb>ikSL~^,lFp ƶlÒ2oI};9xS{ۈ)B +N{+gѸ,s vˢr0y[ҺtVQ]H%W [<@ܥHpiǯk~m]R@pI.kF3RuB> yb!Vw]7oRYA454h/L 9uz߽81i&o}u=} Zl;,_W# i:F7 "ɒ1e[-D{+ʠ8=q\~q?`\"722WGP"ƽkv *H؆vJgD5 i}Gcʍ!q(t)swj uGSM2Xelv Ďt ݰրER9gX-i,$L/` ´ҍMJ~1nr>`v#ȼkd*o^!Vmdj_>@V€͆^Sg>c)3r7n?Cٿ)LKy b:#1_+"-DH<:vF!ߘg5&Un8.OPw=DmCF-Ev,*Xȵ <řU lD[)2$츓JNz%YOf4Z~^~[xg{4,~zcJe'ۂa &jfY1`<,q(EB*+.~}ƀ_{H'WPgv*Q9'.ͳůd!,Q{\f|^9:t\F|4P{ 4DԤŬ mp!2T!gt.iIv)\ĝ-/o=~Wr/v +Vت>&_e{v*A]}{RgȘ2J"ߧG75uhU^dy`m EN݃3'y'M Om{,=%I' Qc+q"츎K_d J;YH䖽#- AR0CGoLw E! ^bi[\ͽew̤Vc +.L.N,%BQR5i"@˥=)?JRnvE_ (5Nt_@/}|jR=Z̪+YVϖҡ׸!%Rt8QnBkԘ?HuЉU YͤDOQG@+d/Ս(+ikl+Uo(y?q"MPcR>`i GU'9S3 }ٻ0,wl1GMoiU9Ͼx~80H@858t_12rqg)-p!#_vLZX0\L SᩍdUw)")^+-geOC3k\.aXViu/~ ԍaU=&#zg5R`@}e BrW*,;07MMz{0OU^ ғf [tl{Ulsv9u;1 utH/̍L^')beE~Eg̑ : AEY{&T^)mX|Fcas;ɃH~b1uO:BP>gyJ$Gŀ!'q'b@ޠ|}Սiҿ3ZD" p8$j+fNcً`AIl-) yn嗳͊2f-hf,sf攘s-}108,ͲM& wؗW+%:c.݆F;\n߰F% Ƽ1l5a`,EAxdF؉{^?.9 "{F.<'KP b>ɀw$Za72aO ֕w}Ute_$H= @o #rïZ 1p`/3%KBTRLƖ 3tLɛW`r o.&\Zvv[No|Pt:יwFF~%$Bl}?mp6EkҾFa/'J%TxT@?pVX5*~F*[rUT*ɱbaOzּC5Q-^]T)O =tVԥKj111Չ,a4JnPME!lUVRF4+ɧGp)u>@-O#tx7_3,S6ѫ@/tSb-D}$!Hhk0d>ȴK$ BEə35oW覰9X}=9sT#gňBjLj=wPOu"8u+^"ы} q1ճQ@I]@35݉ddF8CbT%z'#ne4Wq:)צ~"hw¿ZܪQ XO~I HKo7Y?0פge 2>"y:Q S2w}E1o||c6ܟ;yՋ)`HŒi]4_iXgYTp;Xb7}#-ROEþ_7-ƍtWjbfo촪_*p!#.TB zu?d KJx֑HGsI+CqjT D?ha9JC/tX\q5raCƛzF[ +Khs RKϯefG’T~0RZtq>k2[#\zL lA6)< Ȯa]9Q+{bd /Hj `k2 }r] RXW+q.qZ 5do$g3P~eNϷA3ƽH(vlbrtۊuo!XI"ɒ%a)ah,yjuqqwC#pC}2Uo<( <`ԤHl^nΦaa}kyWi?ha9iKZc~!ϳ-״9b9qzf O fM ;z^5,&lddLq7E_ ?E)%m"ݽtyS;I ӹ D]r4@[9a3zvaHm~xdkʃҞd/Օ)s?vJ'yWgfD߀fȡ^X߳b5OD=V/b#Rnc@.ꎑ4rY 7Ή\hhJ u-V&YG oc=a9aPx=*Ap(xVR-pZW0ӬR <[חu=8n&G%R PPudu.J!bbg'm$g2 Z [ٸ84#5EflDP/'/o ~;_xn-XHW_ɔt"gtp8LW|gOLdkꇳ63EՋه4 G@-cϏ'U>w~N}`KŒN8}MxNVʳ{ȏ^\P[sX M\S }PR|Q7zCx֜}Mf 8\D!4 cJYTdPS _MC.q̦|wg,g9T`[jF^PC*d_uvkéA$w]Htk\σz]n_+\ѭ fYYu7:!y,bi>ytP3r:ρ',VNr\U9K=6xBs {AebUu!25D\YΈ)TK%~@n'Pq8jׄ U uE͚ī}+a\u\i >Py[ܼK p0i4jaSUY;{?K+ֶK0)ᗭ^۸Ią*[?PF)}aTS?j\Ys9 rVrZ%zv,i nw|* + U#"cyc>soN_~#+Oxxӳ[lyhzY8QbXKIn(Ki8"~iŌfG'C =X,L"JŦ]J #*VWz.usż]ev7IYBȍ$|:=Gx$K$A yP~b/E;kV5s䑖JL0_E3a ʄg!qGw% Z1rW"@t W@2/M]}41j7fc43WkKP2URsB).amfnh#40D}--E\4LZo;덶 )w,mfkF[tC&r5=wx}nBͯf'b ml`edt~Z1f wrɶIR++HϛޤmI.s^%Wझ^*O{ #Vjp1owOmTm ri29bЉoݞ8QgӯױXpIJ=x^i6Bp 6T@σ3tkOyk:Czyga R@l)Gaf_3$o2.ָ_ƣ2F;d[q= NOU3jTtn~p*Ui>0ҐJoqfWAcZ9XQnwA쿐ifAiLPC 盜V6*)M A .vF@W7%~|]Fnk$R5s68BϦĎwY:G ֐k͵=mN 7 :Sl9[IO0iW=|q8%5_)0h Tw$'\DT 8DaޢKm-FN'۾xLV@/]Յ)F.L|r^2%*ĐCZFF A^ƫY9rG3h"ڣF&4nYA'iPy? *R~]j(8) ,6X5瀨h<K48?c{X4giEYq26NZiEt#LW`1n9x^57S95B& MY~"]lV_rvh.؇ZG.mQ>:$RJ3 uկ DcӺk6[<":lz><9$Y6B9ɮ^y66nle 5՞9QqIF^h'[ lʮNeL:I𞐎X$ )"`Ɉ@T8 >D)kQo{._=(e͢X,GT-ZE}m"2#ӣj7nb _pu6k?xRceNţp7/ؠqӭD>p*-G)8.clH"ݎ+JlDL)KSⱟ )w,&Lm mMX2f.˼PL>?u6%vA4N2ڙ i?8^޾/}0HSǹT?H܊xi{/1#tS'] L\t̏aзƻ#)O@K 8' ov" d<3~U:VDp7B?V˩};tc"PUQ%;:u"-h&mJѸ? ):Ѐs65Vdd >0PmVf0J 2%BduRu"< œgFTލ̀@T$4mr8"A:@|NgfaAHvZƌih C^#rx*a-:ӉbRp5ӊ5Sq~(TxPpH/.۾*{q*tglT:[c&p%F$/*dH}LG89ak[`6 lRFdHH]}H}qn-9tLi2tdT7U$k5Fu'z߱M:}g lEFHDXɸ;bCY\N>:?Vdᄏk%)#%H)Alo~$>41X H%Cq;m驅n A =/0sZ8@YGr:n_+ G'IzƮ\V:+>z4WO62nxF ,yW){ttR XoQFX`կ45fqIO37*LW_]KwuS4I&cۼCh05%NkbH.b;[@[-\_hW;3*ѳ]c7Jd0 &$DPl<ze0ϩ'AXxr7؉A~@͓f|W E[y8ѧ@/)ǪocA%LĭMdW$A#Y x_vG;QuqGrsD}$l˂4Rfw)V. lveٍaT3l_)vpl:Bi:˜zZPdĿ-%qYg7Qiՙl(M*M lii?N9c5|IS~1682>;trب%D<2pW'FKVY{#?ՙat"q~@w4-i[HM {;ryYVKO6\:ڢ. FZ zG%K)P'iP놋 RN E6 Rc硁cig)7b12Iґ~NS,o8L:{|*u+"B̪_ЫqPrݧ 65lQf Aq&B7¯bu#40K=5Fq;derK>ar8'8˾^.n|6^𬗛gZw$[-N'Z~Y"O z+⧇u5;:@S($gQߴ_t^"hu^!6(ʓ{,19DM!(<űWEG?w8> USu LmӲ"w(,l:jI1evYh"1$tiJxdϚrGKEC&DcֿS*}D@l:_Sv |AQnxvɸYR}U[p5Ⳡ$r6k+rby ^ @I 1(1rE܊} v#-GW5<$GcC*ihdoO[GwȊ5۽/tЯZ3։|r@u(UMh*O󽿚Iz8{ +kw_ɛUsnNu큎|@@V"%%jFȥ.B580|ۭezwR"?FzL"WZ3/$:DHYv%C1BxjgCx)=" 7 ">UixܻW?bzGZa?p+T\k!>+bFvI=ox` 8-It-:K2+fc7c  J{ϸ"(!1NiV (ښٱjYxPҏH֠Nt_1%Ţ ߎcs9+ EVnNa65_\MX^1oJ]kА<(Ck]WA.!Zb!,m)6 2u}qKKNh%/ߘl+WLv[Qo̹$bM2O& @58B_bq7-lB}Hu-tl.uݒMO~}"`Q֊6$_%lޔ$GX%st"qU3v<7vG#|FA5Nc9 bSiu6u܋j'B}%?lNe>m ކ/2@ICé+tf%b&/s\/ (-3`4ҀK7U=ʢ6_\=у5r݆+uANH :8d'%*Qg3e*!U4~?``*k߃.QQbfJ5Nl qZ[a{s/y n*¿o2B|]MYk;|B=\:iL+XԞTP>IFD@QxN;u. Jİh8=c74}MiE9m0s\$A hjQ)"Kd֚yjPmb[;M" BnUD9ah7g{HVICw_p@0Vq'(5[0:>Gi8\r"Mv>݂w} MHSqjI/ñ $lQ2<+R@0jHZ2yցyv}qD V<?)UAwp2B6E8y8ɩ|'}ie\+1SUvHT+0.d'ҳ=JL+Id\ZKjQ=dS.Lɸi?f8wb`RWA"s22Rtn\ 2]p D$[/Wd$!A}J֚^LR˨$4@6/x.EX+q (情ĥEw!,p>2 0LUw(00t*:˴kΆ `voJv!aB)HQ=_4f)bT't`3o!t醬H kd4O,8ߘ/iTfze[=$%B:*٢=eUzi=gJ:_L9 Fbr_]c7{Pk:îl54Gs"dN>hЄ,3{ȐquVXu&o[R%Q wZ!ͭ~t}3 Ys&3e=Vu_|xLk/+fy0eGXTz:v邦Mm+rJ4Nsğ| ܯ?O&__Eq⥅٨PJp<D0x 2 /pkd[!gCz fu%/EZv4eǑy𯨼CZ[ԠD ijg*{MT 0'4**} *XiijJr;xZ{ L&Nr5uINenGs;oJp󰛌Ħ\x4#clNW6O5bt}t|[ yJ/:v֗xLE,F.d[ h[npKK:js'5 mӀvb&ۼoð}wIߺ@$ _kTP,ޫCv+l:{CkBn~Bs6Ŷ3Q$4c >U˥%sA$@iqz9!mla,Rϛ%X+އ ÁM'#l(FHUKut;u?~Bs9rd 8Lor AB`^[s$2c|p2n PJ;Flpo<05B?ް9ꢘZ)ܧ8bMQhA}ؘ뫱WM H=gYW4d_Jv'X&40 r]Ʉ$mm)*uh`ۡU)bAM*yT#RXchg拊]\ܐ,HBftts%v8pvG>'T E,(X$AJ$2/>+5o/%؁0KdI̴+wM ݒ~$υ&9Qulgt nozD!;!nMbIxB㇬}h ;Q7/&rNFvB]{J -p[g2\)ϸz!jx=ʨ[_As#D5iI"4 +e?>38/#71tW?y7񆖡nC+eZW$S$me1>AQ,ƪ1^GkT!]+ddRp!'hW+ᙍG^$H `ONwio2 oV* B^dmrc25[,@13Cga_ 93jiiy-qlXЌ{0/MX׵6$y0Ʒ8C},!ų;-TN*ũ@/}./d$s :^N|{˛kL7 (#ob tUe AuK fgALOp?X IؓWs%@O: L@dcp;uu:d $^5J,"V/7|3P%irWR&alqZNӭck͠^txYψTLPxnHg_!3ح#X6.aF(7*QV\6+b觭0pNRun aն9o>h{pW0V` h6dM( ԇOE|WWอyb$?#U2SVɀ6x]EdzQ_ Zo}XhXU`^Ćd8RB<[# .'ؤGT+ *١v.zkn:з#R o;dm4A7dPm:?c"pj@ 詴}Dfk"pMG&kڎ\Z0`v]4U[haTm,"" &R*Y3,^W 1]]/;mZ![g7*^k\$eQ&y@_4J?z}dxD5q$@=$_=Ai)>UKySh>8T 1,cMG4&D G)O}kh86KLImʛ_FQ_NWJ5sJЖ&*Ttߒ^( ]/69 {1K(m4O;54֚vZkY!(a޿hG\ww6-{7_Qrl"dNd?K+/" !ww3ʥ"{VU۟&LrKxVqcm, yCN 8C$ GIk iof%YBbQm:g%4 Axq`7B =>xkFceaL5.$&<GIC,h;Bdl[Y ע 2nKK_c?v qh*d(ۼyɑD[/w6S<폕Յ :LH*_(!=~pqW$RseQ@.#610$rc%qO G4CT0O%Rg**$V 6 KXۨ 飫%?|:/na \dA8> yQ7 P&&?L2[ث]T}HEs$B|J{UWtF_~}&-pZ` >M<'Y<(޹q[K'=CR\9%S.CIq3y:PGV>ža,Ԕk'(-,5+]V(]K*d5;eiIE|#*9 >;:'7pCt QӸΈ8kT6"uza,{ 3/s b$l TBkN2ߨ٢%>ٙxdDCl!SpG-8 Ď𑍋z4Mkݿp.csܗ9JKvȝRa$v@ԥ/o0%T?nVq-F i\4)CzG$ e$5b>yf>G^+G]oȄ jf7fA8R?v֬f*/U9S %Օ҇Z 8O\G}~0es/Bcr^܋mfqN¡R:\ 8bxɏCi#q!G/zvscX.B 3?cߧS)KɜN*7P.){vk5[TcLb}P $gc֪랜"*9zNdSFв8vO' EkB6v%iܷrȑoo䎟 @^R*.eh_2/jDXu`\K%LrtK0c0x)ۀORL<ʔfDQ{V>%*k``vW DKR)J(]3=UVpQ c23، F$>8"wRGSl!(7I5E0ٴw wՅӴ^|İ[l,z^ q+D67]_`XLE0򻧤H - (B_5[|œŽ XTߗPxﬤ޳Nw{G*7?FW^vΩ?{K+5m~a-*M۵ckV\`M,0n#(JPtԦ;;_"BwlZJV!%uQ'[eH[$~jt;1a}! t O_NFLE[Cd0ƦW81H\ąth)졳D%Z$Jn֔lݙEy(5UXh+ l+4Wr(D`dMA^h\>;߶h(l\ۣk)dkGjlM}5V^HX5-iG̵[ C\=LheZRee1~](Jݧ5t; ಒ3VUC'}mbeM 2̣`67S(B6}!-gyіׄf1eW+Ad::M:p)k1 󦼐OއEPp!#jQXht|lQ߀2诔CϸFԫ@\}p^нiRdHxcrh$^{֎F̷;BvbtXzkUƷ">D,!4B5`1/?w+Jpa6wp/f{Dv̈́9ض3oXҙu?1Tk߱!Wk y q$O/j¿"OV;`щN!'WCd5=/p [N{ ZpiTՁtXQ13߁4=p@QAcxYuVgj{9~JՀ!#.64iO9ebk)[ k5~hjZAI *Lq5/SQErx;dk/8[jc?,P0yS*jvսт6>3![31. qo#iAi̿ !cLm{Ϲ6^ĭ$Dž(w,:Q ~޸BSqU5l j(eLeo Yã5"qbs*a6qZiND/ ^ec`S׾!8۵ݢ;~3fLaL.Nߜ_Hk4\-Q2Ef 5Oȹß\&$\RW?x?YCЄɤ\%]m!'2p"^6g~enȇet|rrk_Zg, I5k!|I$:Oq6!$NdnέKEKߌv*f-8?M%u'ئ:]Iu#M̑ xGѤUtBN{FIP'zTꊰG#0Wں v )یS,i|=Tӣ0FⲶ3G8nzĦ&L) 16{y(H8 Gk|ttJx6%>N{b K!^?M݄)[Smh;Zzq /K b]n=q`U}hXׁ9ѬLrXd5#\·\UWz |[f].9F&N<  ʳ>tch~_@_7J# {{5<}Zn3(BeUr> IJ(]/$|eʪB GӇ/<y;DBڰ!u8Z{7J!S5| )"&S'p O/TP3'Rǩ8L'ȭ0c_H{)\SVաVph1t`SnІUf2:!GИD$z}& }UOanԤeb"*d bb \mAFh7XھuPQ +Iaj|{>Uhhc@8QUS,¦xUTESW]C][_Fl ALZkKåv_-Wh>V QO{MVm~{uN_X=Za'Q5IcQGMnɋIhe8OKF@'p{W'(. mSimZ d;s4MY54Y uY zgLlƅ'L1 &%ԃ>0D1z׏!AHFu!Ʉv^3sfnI;r-Ak7%#G;˪ j76gtL5fGz>Q_ϖ-m>y{b'RrCY 8I:5+*`0TI2Yw}.ρ{2+4!.҇0€63v]9^1Ӓ-46@~|%c+<||7ZgҐX2u7 m6 Qd,?^/<ߡGKq;GB̀ $Fx 8ٙx.}XI>c;Q$0)zAŽRPu3ޤ oae\tAaӴP\RH9 :'bf>*G|8P"%Ann5tKؽh]Z}bD)+LfԢj.NlM:1lN , sXϹ u?1n'ey(o^lUKؠ/7"J Z\x ţT)!@K'v4Q ᳟Pv2/E[+iOukZA ;hnIdו ~ HgbxcȼA^ (C%8$bfjsF (L1xD8%JJ)xI䄏ӈ,E4yNUgZpCIzDb14kK*JEVҭX=s>d223:+t;@ <%/5fv^A%ȌI@t0<M:i(++C=+KCQ;9>c[T[ OFbAP3G?*e8';g4UePcTqC- (aN' \=wǨe͗K Gq^sE;*AaKvp~14Ȅ-/֥"E#O.Q.w1=.j-~˔2NW)C{>ݒ Z+ǔΡ,L-3!\a *=!W;p9w0g,Y"McZC;q6خ;rI {aUGE^t/3[v}KQONB(Coֱ٣ퟃy~^%֫$hMs\{W,hvW02hG/P*15u(²a<ymYP7přSHNRh HYT ܃1& $`YK:+%kvQ&b%W,+;/O>kG7#@>yX=&4 S< C~Xf4ESWT֍ rY8 l^gU1;@"?Lޚ:{{D/Ydhfj!Ԙ0Or>H& ⓫ṕ0æ,~[pQ"_'JjeҠ?@g}[z&4n ֒6߈ʨBrhDmaՅ5gCs:ٞۆn=BnB%UWt Ң|I P9&ܭbe`3v}0v>Dez&S.m^ڂ'oZ;OWv օ٥!B]zS}?\2R.w˕#^@ 08 >Urf1(UqPRQj^E$AV2ÁDpwcѷ9.T3Xcʼ}kuσΟ/Pn;?] !) J{z4/Ԙ)1Z~YibfLNghzët'0&Gp #Y$ o!^7.ǮoVCIuũj]l["m,#L  x}DY ΙosWl  NRĹ Spk{IZ=~F5=,΀:~56h[8|¥L)p}a[Yf<I*gF1BӲje#ZiL\L]1fȝΏS'qN9hY%N aѼ;9ޅ# a%aA*N`SNҸ"VmaP紳x4sK]G]FWO[{v7K<54곸4 v`?i`%u'x4QV5_|l@Vᕎ|qQ3NX\xZ t'QXO=utW I*qMjC?jG&NK~k̄Tgd3&yx$J֋(nI0Es`\큅E(IKHX fAOQU^Aryᓧ4EW:7UcQ&C+5~@u0Ǭiqu{'{h>ѩcr^Ww$;,0q9zR&p(q >61 \P8{-w#".挱^LJw 5h1b8ˆ1)m[+ d%Q341T/M"B3I,d0KCD'a.ˢfbCOQ8qPr-%~X ˒-%_ xR qЎ);8:;|bO6J+ &܀4g =T✏pz*邳ڣO"8V1lYM^kٙ>TX]9SH1ED !hL]X#GF1Qmq__HɶQg_)UNڜ:L +\<~H"*uot`TdH,Y֕wEr+rXg! ܹʄf&!=r|Lgnب`&B 㾆m|2EBk. ?\L!)PvZhłg $5>Gc}'DZ 4x{2CZUK" ,Y0t͙[nF>|Zx#6rQ:qǢj)QӡTQ.p}3$my],ci}6[ZcJ#A#yj ĩ=]l5c~//W<"28{'^ܚ#Py5p΄@=:7B`N`H]V`Lcknia)xƜp=cjz~cuت%)mQWmT.!dBG כDؑ0[gp>˥f8ݥSpf>(Cs:OVa;ܥ7|W[1Io1z'g6cN~B׸][X7)UTx-K"iJslۻ?o:d6~[ Ý'ݙ*`k|Ԍd?_ 믲˲`ӨH)}c+?vYAdV}Rj."WMg5r_g#z{Ϫ޼t8&6Z|b$N ;쉘f64"6SR%&y1`#zHlȪܶxK;cǤLdJO7&·Z%+?d \qM/%#kGΰ<n;4,$sB\*srKu'a80;. ߓ-'\E!?t7 W~R2yin~+wnk(W{V+uyy^..%MdWT `(PAj߭zA= ;F5 !)`rrnA؛v7aLl_ [lNb7T~DhC2AHBs/6쒸+C×u!O7 v;P\3^9TvIS;C3;C&NP}56t史2߽5_ʿ^)mPd+-$[IGX&02ϛp+h-YE-OV NtIuC]nppTMcbJ4s}.S!"&vPR{vBM 㛇VL,&f'+Ch`nњBw+_-=:W1NᅙNf 9E^_`u1#K9 UOO"O c3@D|r\_'l=Dhǥ}YN't50d''a=@v3T"=)z꽒EBΑBY?OoS-ZHU{dL 'sWm<)Br+ji\U=3KP݀^|9֧hWmr]s-h4%dByZ_u7dCtv@N–$ XcJfxG ?]t&Pp6:tb8/y%'nZG~`ܳ|| Cp1 tSUVf@S^鱴^_OQt.x4C"B cU .+N\K].!ga3Vr7:DYɥNkDuQ#Xщf_x`#fh\AgX*L* D= pr mhu^b:'mJ""oc#)g|w ގ?z},MRZҟ:n _;8M_iU`m%RyWGyZ+OJb[pg]k=M`YΧn^ys=n]jz6'-NrXtÈG2w^Pcrb8 g{ D͍ܵǵC?J8ئ|LsXڨw^WQL~LDnGpmyX}\dw[ŧQI3skVi<̍3]Hv&PiFЧa|D:m{xc[:,z8 LG!{5.Nau+؄cUo"- #C/~·l;¥}jf5a$z茠^*s$A}.n2$8ŸkT剠C}#_*OÒ6>#TX2꒼L)\T,OD];y` ǿapnmǴ<H3S|(:COQpUff`PBJR0|rfɇ=qjU93|HȁcKwgo*_b=,WX7:QV8Ug[~AyLzdp@>N(8Ck8=s}H]8擯) 'ɡQ 8P $"-JYV|9V"wӔL~r<!eC=o=rGC59S09¸Ç-xtA203/S[ :ױV$L0{q(Ĭs@,VA QFPBQaS~naC;-.lw_ڋ[%xz@sQ!iܵ>u?@Wd^\>=1>T  !/"|#;* YFdGA(됌WRװy&zGM2 ,N}ԆK[o8t 'k\Tɞ]Eڎӱ4-2ϐtPHmtIdcBX_R蜡eŻձs<\٢Ӽ~`aFЌɧP#}c/(wuzqё>F{+ͣ TPؐ2UXwVXqgoR4Y&n}-;+aN~-9ӹ7׫cCw'yZ/]13px5ih0LCh^^PՖϢ/ۊX-@D rMF[dac~{ڀbJ{[o9J+ 6톝%;t( 9~p^wbmo_l|71Qңlz :` 5X#Gڏ~hv-n? ς cxߌMH "e\p>N'9xQxȸzx%# 1RZ*~KbSjso$]'m n1;Hr G/ +lCѬUQD5F4j 1"y~埥ex*ܖW_` BP{)30}N g++{b_~l/TH?JN۶μ-?P -n1-EG &Yt}.X]pa!z9PQyӄkY_r?lO/CcZILbsC1EZu6 ,Qg(1e,O Ok{Aen *)0EMQ)%qKX*|(+(ƖѠ l,PIvL U`gm1/¶i<}Er;3+aB9bn?#u 2o\*Z0k!dI?ZIO.Ef{0c_gG@BW|}6ssx.=dyN v6~c/^&сmoLG,kNf׹XQL UvӐJ1kEA шZ:&B?܃pyhz9=RlKq ;~ i?,x4tʫdx=tr)y+WNb%Yb/0ĔHYVC2U@71iF(õ1!L? iN. XH; 0xl+k IofSBIAS!Av\ @P Nn+Q?^~: dO4/nxv80F_ڥ,aVoSXDc/#h=悺'|J'k~zməBds!LnWC%H"M@#gL@kwvo &_MQhr-m=,J#DtUVwL-7p{Վ}b[W|s3ψYUA_Ð"1g3xk# |cA7Bm }cF]s 1F WP}2BL\GG֠AA 44Gi﮴n&2-1t0X$Bcrhn{-8BFX2?^LYF!JD6wHO ʙN[BY(+Da@d\\-U1tk=] LKVӣWD{]8aacO4  2#c.RۊC>~(&XW_lؿ8W.b|)KxP6(Qh{f,$ -Ө Ҙ|Ҍ`a)"jRn}V̾XR{TԴTlCuQipz0zRXy6q Pv `^Z̳чU0HNU-Umyb2kx05IQ5\@b{8M d `;K~0Ow|4ʽY( LɎcP4WT@f0]/A%#*gZFI0o(*1ķ0>" 7H ;>1-ʼՠwRXTt$oP3K}e5MR;y[2lܝD r]E@olCi k&}|+.Ը \_|VpuIR<}/:&, ~LCzXOl2'o(NL3 2rFPi ӭۻ WXTWѻ}\ʭh)o\0kWUFrZ;tBiqn~ Mwf d"tUB~A*)0.vu+M1R<` *j$Ot#88"w""`l4<~p~˲5"bAPF&̞c[1R`-~OPqF˃$I7)kT u >jإVE8 M8d`xyDE~X17MshϠ M%Ham_%(P˲[pDDr+.c#X%6P\ףq"V5Y:)0AX_w$f65 SYBto5ݖ|.w iB*j_}S'Cn-'<+ w:<_8ǣl\;> ^]ChvOMoՎWŐ_'.0yEb.QXbƽw p2v<S$\R/?ϩA.BRR?U6|H.3pO )=?G>(b}|cz,TϴlK>TLbJL!LKCd0ʗnTue$oPؕ0hۮޕ˨(9'+Y(ږK6_yn3!bP/go ,(l h= J%#1p>6=Ӣ-kN%8VeMG1&o%NF,$h{GvMxTs1/PgX\ыJ¦}&OϓtkJ{W]pD/~VJklDM4\ߒw䟞kpcZ.~j++~E1Xt I6z&yn_VמGjRƃ9XFJb^@+/$w$<5-i~8Xj&ぉ!gu ajfcUb܀ˠ) AVg{dn[-#s]H9TfA 6^O]8#B妁ڒƆ+]5>sAG#V pgxl0BG&,߇9hH4mW> 7ڄXFȳp}WAV:#w2~;a-e<~%IzXCMG\>OW{q3N4n~JH_sS$Ã{!_9!8$+:>(~X%l|Fli",0|5Dq2 m*s1 w#P-6Z^HW"Ցϒ˝0·(',9;$@.+"l6zw 97Iz _ŞO\}uG Izay5|y[  FO~cY` Bfo]}FOjt.Q*Dд8gHqO(fA?Lr%ET&9~U5T2mR9ɥ\2BH[ܨNel{~hS+R,% ɿINM8:~ZǼ =y+?>:ql+s'g,q<itV}CwK1䋥?,gu{\%#яՀȶjYޛ^zl_*/SFfh$M[UG0`K˩Qi^SC^37]zi;C jDXm bBX&.;~@X!%Z0?rK .TZ{,:@e`ZD;َR%wa+lvȼS(rD˨L 'IstkbᆞH;>\N 25?JZa"-";6$KY-o@R.GH>&v_ՙj&ntb}I{] |&4x`TPBŸv z}TZv Q۬3f54EṠdǮ\~C١sRtFĿ p̠Ķ]Yʙ570ɛsSv#~'`qD̻v q|)_ `qo ]DvYI Mks/N'yD}|C^IՁT=\Ta]۹ Ew=I: P@eY^ZME$dٝek;Hk+pzu$K=6 3OOLu-Y)`G 8. ~g}U|y&GMR.<T+Ȣͬȿ"y}W53#j.*֨hMZ9{9{)v٬rbm`Mit&iy!'΁'4hXFbLEr0ZM:0f 8]K,p-8ĜoW B@2JfMOdn2(5 ΠYr,*v<zLdeKz,l)aw2Q₎uc_V֙"+ʁ>[U UtǛԔ׽t2-i#%Wۖρo43>P5E@0W!f۶ 7b(k|*x\ږcOyZi-.[QnD @D*3SAO'&[}wJmvQVtj Ap進&h:(_ 6T/:چ,9؃FCw ٰrvhҕdm楀zػ1"5ݢK{2ͯvuXuv#f e,.&|0Km]ڝibaa9UYU7)J(ar:&mLhm 7gfPH-}8C:&.k3$r^JҒM_|G?[w~ԀyzǤZѮ&zRz~aңe }˗e ~ʌ9GީB|/ݸтOd;nc:f=zE%'ۥV#>s1~}YJ!aB^(X Oik$^&mU/S #>b?0+o:]fCMYi"pQFiv<(<ǧ qn|$ Rfav>?Rke;}W $+"^≄}A]o,#DR4y#ncʯm}1HPttW~)m74C`H$_ty]Y8(h;WshtJF.1? f'6Nǐob}6dk\ŒƗ~¨s|+Yc/cR5)K0 tuJĉ5'[>_hrq#h B g;/@K,=F!~w<*D=UI6P*/j0BRb3Mqw\oAM'=N>9Tr>fQvfw #S-0zĴ͗oT * 9φSo&qX6`C[yo>w jyyHavʫף+=n6Otf XYә+i@ݎ1Ohߞ UyKzup\b3^-k//y-n ƫ̷9/u JJȺy5a yi=y=^rGj,{.NC~v6Ww%w;fvF\es2,.0L}fI&STIg-ѹO8wB2񎔽~5E~VC2s`Ykvv#^@*:Cd)j})yYΆm*cl7urĬ5zrSpQh~K]I&G Rc$c]CHeh8r 8!@TeZEA<=c޸Zef$9^M}~_MR_1Uo%OB-U-%:u7Ͱ`ߨy!z/>d5jͭ|7WP QG>a6!e>I#[(5'OAkkBAW6XeHz=VIy[ǟ" قޚLX@@R߾whiYWnNb3AkO!#vK--xRkb?KBet4)CRO[;ESx5 8ATj06D]/97Ledïmm`dƺѭ+;g@K+'p ÍȪ~K4Vl$Bw[ޏb6tε,ﱇW+xBFa-C>BUyUm^['oz$i |W?ʃ4]0U"tn7bMm{#3${\5mJI@g6ߜMmADIaP(mM?|Si⥖n3 \CHkv7qjKܫĎRx|"SgyLc-)&gre28}q3دsOl*_! 7=A%;48ˇ=S!vKWmv0r~ؼFnG~}ҭˉ)8>QߞJqLRM=qQ1%<(n^O}M|{ӂ)gĺ.n݂򁛠0:}@C}vl.#jJs#'qo'O$NhBq$@MfCsGO9+>76+i a4w^! qk%(UCl^s4c9* G3'!UAu4(5CZV06? k]982Q}N%nmlld}}XdΚam:Y2st #MH{{5?KPDMijƖݗDx +;ݎͪїk#&GK0%ųhl-ʭУS':*@#YH dBHWner<T xU.8}f7Yh7 A$ HP~L֒JQ4R&xxi %Vr$7|i.&'?{w[9Sjx+>XZ+C;)|;CISa(vDNl'&6b,^zd|q|kힾoAJ'_`eKӚ12݃jؔL)0cв{зLJ|U[s8P4ƿkBg%hcpsCo<+Br̃PpOHa6v )/O1rh % qJ_0HXiVJf{^CϙB/f!d怞j^ɡdV=E-%Ņ^9n{Г@1=BW9=~V\G%AIǍ2z*w#41:NȒۚ%U>.RIIŁS  ^H3*Idxck W%$`tԿJv륨I9y06\7aSDT7S(ML $aX@ R 9xTzq̍#|A~u03{"GN5 y Ta~sR$d4.%5E1'rIsS4(+f8zX->MQoEe O<= g'favYugLxWdNO8{#"F6=w~uDѳ&c &n pVXk!L] ^^]2H{j: iE8cgX_ZKPar1g"''C"Ѷ퐡MH L uлq(~!qF=^쐹@nNм.DC}![\F-L5!M6({#[Ӊ,@)̰3d;VNqxuhJ߂^QDi*L e;*LEҷ>$"^TD>!>*J#ҫn ɪ*,Ia>{XP ԓСB+hP=>G>_ʶHw;ѫb(І=r,msM1s擁7R:T94m(sdLKoD;\2YNkJ}z~ʘTǮ.pZfj^ bNS?3_{a4^f>Rϸ+)- pNꏅ1$ܑ@OT 6~7itDר'dAx '{@I@H|j:nG;=,m 7!gUj=.4*yp]#&7][$|0fYSU.ۙkă}a"!d #O| PCA6&cT`rD7k&.ҭ-"2C2Hˡ$ yAO.JRGY"Aʒ8ͻk4TѵU'CkQ[5!g.;'F,ΕNi<꙲O(npcˉJ=bi7:_2uA0)3E *+Eo}cl:K g7b \)T$N@od  eǶ"4;OXax>-W ,'^0g=)أkjUT<`02xI gVԄkjZve?#]YpFn Pv[VT:b "Pw4<RJ,xbi,:ڋÖiEMNe@y >p*?#ѝOh`P/Gv K./F;fK_Bf_~'MACet9&Ţ#py1TY=#A,m#T[ArN:'ird*Y k{Rvh vMkR»0(To JHpHge˧HH(#DD5Nm^jј/ cU%9,  j1_Vz~А6,lj8NG ЩC:iH@iD;*3^nj,ґrtд!lx:Ab 4xH>0y 7@eBɷ']hCIFbaDRN_Qt+ (Z^ px{ !>h5f*?w .W1D\GhRzIj0HκO$.IgxtMJ UH''޶9WI4Daҩ{R(9+ZچĪx<`O;480@fj`'\jcהk /22[G6E$"wކL&K # [4 n +mZ_M a5g.!F@6D<^i[ % ౸eWGDT ^D9[cpsTRwA#LJzdZ}#JϟGz7"7]`Z ;ꔼO6 3RMqmZVzPL=Y^#!~ESs4A+..lD>~7Z/?5qvz`RԄ"Z&Gʟh/kڙmK%S'ԏ\a#5{1;Iz55rkw' $ԑ8){5+>pvaQ?̑.4]+y}Vm WUu (yVRٔ߮B}-nqyja@;J䡬ʌ OfZCڦ*C5tވ~b6CyavI` 0-gx|$ k)?xUeu "#zd0PQi-Ůɾ_dĄ=K i Ez$9@ׄV % ,Y)0O rUɊ/uD\DE l/w}οe+<D@N~ᤀp(1p->_=[٧ eҺwbz̚9v`A?ܻ .G'~$I҅B;4Zb.˺aR8)aOX4lssdM )ڪb.+3HO+܍HIZsUz- J1a Bw.|6-|/0:CL'7loȕDL[^^>;}  ȱCNwB~Ќ%6`+BhZb4vS(tO.QԶtlgu0ns!Tr^w ܱG>߇Y\'7 +fA"- {MR= ɄaGB-&9Yc-By] 2&]a:ߖ Mk{Ȑ/] KEij,ak,ꔇ1%p!{lb0 pȳP{שXwog+(϶5ws6|W */MF~B R/\ +?Vz xvfEB7v{Eρ"ᅦ Ѹu*feeRxS_D1P:7'"y]ls 4@ƒ~7uIMm[hv^E/IP*qK-4ȉ!80wLb'19 'j>OAȗ>.'n_s3Y¥Xٸgh39c<14e6DI fKkӗOKBڣ~;t<%lȴrKh~{ٸ@2$b h&Jmd~={|AវI?~@H@^i~XLw6nK a7Mw/6WO;p&{Qey9̍;MT#,fj/[#؟xrcE=;#bK5a"w1ʛ!{oժRHn-U:\'? u(#q5e)ehbRŐ2H`Z~RM//H2&Kd5m9Em\'f \ť~{XQ ѷW.,#}{!J ou\W#3owT~5/|6ڗqzQBNQ@wI!&'(.)Co0>'ڜyW=Xm`KOt,,+Wc3 UFc=˺  aF}ַc+G.ȱηUQ?9_{@ ~[2z3(o%\?7E+$b^/fc ]l(Lbb16H1N${zxUz e?t]m0z笞 5-HS|VdhBe{鑕(N#wa+a+S[+ps=s+Q+۪Ci_QGtώnˮ{1Ol$ OG,#VI~E*}fABƖà%ZF 2[{*,`16NK`͚ؼWIM8;?#zBmwn|"rsU0 V'_k`޳ Nn>9Om|u1â@Oޗpq6rژmQY{;/NhF)ۜ2'6yBE.y,rADuHPAcjh F-c1҈>8ٵ?/L.dڍ𚤎s1.Y|$0|mw,򶤨8K,or!E m)iԣP̀ml7 YHgY\y% Hv^CW\+,8龴%8`[Y4}v%N䄵:GP5NIiEI^R֮ͱCg 7ﮕkrC8,qUmu`ۊn$OnTy5_Tp1]#X7:zMV[`q\bJm|V f JG,umU{oB~~U3[z;i6QOŗZnO%0ݴ>3ĨVrl`_PGfgFdjGKkI4!B6~*jԮ:񹇪&c1k^j]@Mj1b0334hwiuJ8-+eSQ[{uZL."60|n*mGٴmS2?r;frSIbq`fUUhu%t9ݏ@Tr#T ħТ1^†iQS!OmK2ޑ ^vS/k/9H-3L5T1q(E̿ؗI _fXY3{/5\={̀y]EvdCMl իMќB32h48Ҝ&Ls3^Z:hc =0PeęX?rO^,\?Y8Mkue>mw9sƷ QI>o˄MsvgK@Bz? wHюYwyϸQGjOqX[rƍG2)ʽ]k973Z"X38`ѭG<?w-b|/u+kT { b("gI:fMW؜nnd+V:(in Y ~q*"fF`R00tefy42V~zx@sऻ ͛#! (݅X9) ȭ$t"ΝDCpԪHʻTUw{}ְIW+` ႎJŲAm3& Yφ!\40%.buaG-YПOoӏìF3nЫr|D/}l>q$`:(S\S6r\Qv E]!ΣzVuZ!4 Q? hDs໵VMq/BAi^ʗoA$T2&04&blǹ!)"&Ƃ:ˬ{w[DNj8j<(`hV`& 3úT_nxPjHd,RAt;6H a'BdQ?1z7)LYc~ejL)3 6&꺷dv 2d7ؘzL  y&D>n0sWMBDdŌ`_Čy%|_ȘMi4̔Y;;yЯ$C({U)~XS #ܻMw9S48a:%}M4'///XuS$_ڗ%6hEXDy v+ LhR-eA!. K}L۬;9y{KWnDAsnRlÔ djT,t]e9$Ϻi~8&OPGQ̘2kw)(N-lոwz[nx$@ժ:L^F jc[Fn  Kn[$xUp=F:&z0,cl`k2 KS ar 26:eT57R%!Mr=xnfGkN d1z/>vkH#% Ir_6 &*))ę F|@}":Dns/fT=%̐oFu^1#NG_ mYeHD'DZU niYUqI@O(ZQp .͆^Ī!\/4!qq {rJ_PSOTsC#LB eC P.³_?Q%D߶;XMly}#+~:x `\aZϵeA9ϒ0ŚΑjQP{ y%l2R=/8V@:|۲YO6\U@&@4V-^dxav2`>ֻL@a|?' qdŧdS![NI®LAp$ӚEηl07)/ኖLiKc H#&ØYM޼J8Ƀ?Wf5sEpi}R+(h\ ZF!G/b{&>&Ҁ@θ"S#@s?2+xy?ʠbPi4jdւucAmWI>+KY(G*ƃ?.QWf% k4s<2EB@|H (k6שg=G0ymuaV ADr3}~^NVd [2>}K?,D롔#N=K!n)S\`ռি'+wrhj$0Qm0FZBlP19vCB}Je@}F V\rc a\nScG>OvZv@o7Ij 2{W +8%{8*< nK-6=<ոS>8ou 2=[15 -%-y:ZiCX<>p. E/6!yy)Q2;nt~|օ>Nl"ÖC:[KzrɇosFr+rp{@7=] U 7|Cc U]* f[MMEM+V9B.,W%b:}[g,IQ vru$,:E\ {dc5( 8ңuHԱHdq0&B_2MZD=;SʍhQ1.1 LWGt4:6:/äkNAՙZ{o T!ƜnG0AT d{[}m:`7JU:`D2/Lqݿ- 1]&HzZrJPI#64-_!Qi:X]; p ٍmT=$FXfV3K%:EUW k= rGO'2Hk?Kx ej5ԇPE=95G - «c7')çxu( #弩MJƀt`uy<YHbW#K5' 6`N/?<d3uŧO*xEFa`BFĄiMTY,n»&5B%;f0=V*vhqt%Cr+%P$K绾d\Ht{' 4M va&%ѯ-ʾ6,̀">s5RZ ET,=EoK9hW3N-["Q3JF)jr"DŽqC5Hړ9 , xx1V64qCBٲ$Ԗ!V;6rכl>PbD2%Ͱx֎N.׹![6|!$LA}(/ KMj-CJ &$t1>CaP:ZaTf(/k8&_oB[Lya#~9]x}OkS5LjRg';1Ǒt;Y5e瘡;\"/r rrj ) }/.RܗtTJ QA@5G6BBYl`cBDtrR@ZfG WzdB8#W-2ϸ"co@pQ2d |?ډ:仼͆׍:Stn)I B.{wC$KdA#/&:P$ d8aKK QT 'PX5P䋷ҖpgU)#TオT<׌(8G8Γnf˥v|ėʒ0RܳE tx 8ְsF) W(YWmf3rS!mh fQ6Ofyx_$`e(yЩ~4jw-d*A}ARF(6NH]$[ތl +eB^GQH@݂i.hImw1)aCPNQF+؃eMiI %7[#>NH6|'9 m8D9Cs"r|Z9v9!']H@q~ly54!4gŢý6I?|s93`ǔGmˆTq4E 8H,1KdV@X ;Vv]%jIuM-dHO8+Kg^ұP"vGC[8D-Z(|6h`aIleQ#()5a 2[$TmKHavi z0Q߶xaB8z\#8%@~?}\yՊ Ѯ~ q^O\;8HxU /;;S7Ӱ<HVrZҍO!u8Ug6+m q.I33,V&L5#Msn\bn?-ⲄU쾪.! =A/+$J0"),Ϛt^ltv~ \|+fȤH\uMWn|tApޤEZ{-h,8  nutty_Ѯc !)S:^8v>!WBG_ro끩{@y[_lAv~9Y @&0+~t[o6K"/\{ Oٱ'{ۢ=ߩ-TDD!4_G⶟A}lh3i!PvG4=}O.]c{N[7G*sn:;qnztXU$չ4 YTy 9 Y P9l^ʡ@Rw}Qvox.ӅݰLJN{~m=~ɝ:QDSF}9m^+θTFc_vaE x䑱:֓(ހ#d1-\Faƿ,bf4 AA<+')a+i5h?Uڬ6O$eJgJ%䟍'M; CK=:L;MIBQ6=ƕPZ|pJiRGaE<2>&?ݞÚd.AKȿ: /?H>y7ei'Aw7 U{4M.U1Zs,;_z-q 3J sÚ`fOC:/zM;QC5QhHtFhFje@h^ ׉I[_#lL i.).5掶U,v}1JҺū^ԉl#dw,Ъe9wbvM0? J!~6.r˶%tPw逮SBF(eGOaսEzj cOcFD)t}hH31.O&z6ȭ~J2x:Fp|ݩ itIX:!d,0Vs ͟|Zjx @@&X䖼9Q \CI*%VByW){r LQnR~hdF7OQ3:4'lY05 Q{e~5%э'SI!;?~%\Tcvcb`}HcGi>Yq-_ w$Rb44+m?bWK \'Hq)!2OG&TjDN6;!߁<}ԬL :B'%,c~g _,:ׯ9WȺ)x8[J ۩HҟXyo"<+V2"-6x|NntC)Lj ;Zɩ,(Ϥ ,YK>(~:0;Fpi6Ѡ`Z¾I nbFϨLehYDB` 3D->cG[!<cٱF1Jjr}=B A1*}`6 4yT#VE $P Pk?| dh4jvM*u,eBPńQX;T!zT7}ĭ-[6ݡ#8S-HU `BM8\sA##~?6 >s_&=&Rwf-70&b RV<xr*k;G~^&K >cKB=tӠmSBgP1H&*h0'u6SQP5A8ϭnH #9nw*vw+[ L,xo *TY3֡Tlh;lKH@/Ί~d/ԁ{-9SZ/H[v/1Ojɖ.d?ꩊrF 7AUy%%PH'r)@^=\Lrz ,1?}T3 Cw0 xnMLLעܥ"[En4 4VteœqȷK?uw4&&YF/m .tMms\p?e(h87yԂ)NyreFaޏ&0$fL! .NT0R)zw0Q9[xVl^+h=a}oL$l -S*ƂcWJ0@ݒ,= d~0 &_b,WRD2T<'֎$ Gc(L]rt~ځknrE|.^ l<;(-}^:s C_26 * e c)6!Q*rK\?w;ր<"@(5m@֣^7]4wıxPƢ+ [I AhuTV<9rs~gCez .TwN4]5aBZ<_T؊9*, Y]bY*DÈ8{Q!km⫈i?v;ܮ{\Pk=z:]O{ +gƺGFm]KJXJ9.9̞+ikM;/khOrHڜ$=M')v-H%(^7rA0 ^H}%#: .G`^L5 c}$^*8;m*ڃBʉ5 pu.FƤ%;atlԠG )aM}a?!2R,%@TN-8s>o#ҽr.qR-HP^R{),0^v_Ao-<ȑѐ ًE[ߕ0ԢHL$Gž╥A.[4zeZ(Z{T@lGsZrYʪèYTNn{ף!YO?F]C-)N vLnZvŹL]K3)kY|owqCMZq *1&DZmmbʷؒŻ"tj to?˰ōPItd]NNŚ0^jǨlS!2H5 h SF6Y4/"U|L&yb4Uv,,ԪN.Q#>K~q /Cp!T8zF}պ V-x V=gƇWwس#|>eAsnLuPܠ"5D5f*ik1טm iݓx%'޸s<\y 80Õ3l%b)Mn Raw=v|Y.^J#V=4ĉCZ^@U*NO9T1$ ' v4;~(lVo6N jqO"R0\E"6)<~D uhdۀf/v&9yϲհW=lPCTH/ SיcuJuV.$@1fjjKZzV 54`T*7-WeC}?qN7&ԞVn26QKԣڱV~㶪xZb1S@qtX&ZɂzJ?[Hk0lSFڈEʱ_|Դ en^_qtR$/L|}+wj0O]ȅ~"h33X,V]S9vU B-ّ,(v77l1ζ7袇;w.< R/S%Rq2,©VZ=al(*4WVy`o{+4I2Hc h:_mB|͛7!dD4$[ڢQh+OS$dU2Ga"8*hē0},|ĉ+Rj-w=&¾;ŗL6 ^ֵn[:X_2=3tv9g1/euyd1.儈>ʌx^Iza؟C,:pLg2}j悼pu+wZ{o]w4E+|OBt~ÞC/ R^ׅ 6g=WښlRFQ۾Gzh@N bP:jKoXF/g=xD:(6w{TސGf\Isg{ňȸy9UѢQwZi.^>-GB03%bo19*FYD, ݊;asU'I OqEfӁPg-9]#tS}Rl;>FPؿ|1/3?+qyڸf..tsde)[xT9xb~e?GOs9@F7:BF QF.8@Z5:g u{4qwN?ovH> ă("C}q\V1L[bR{P,yIINa)N?DIBPɔ(gr.cdҷ0+K>dSPO2·d'`䑄I.&~&E#4i 'X\b^MoN_,f%vޗqx !5NcLhL|9(UA! ɞ[6iHjm (Y(iZ `JNPF90Ӟ01v`_]fjYv`KJ-Kv%Iv뒌§TyXv[6H }ٵ!bВĨ &v`+A{e$l'씎? qSih`^G*` +B,K<H(} &l/2Q}4<, :Z&>{ՇcQeCl{iہ䵌إJGYU w8?i-)uP4W`e`׳}(T. ``^x+ýumӏDEѦCX/98o`MfM$h4EUs~R _Ex ~cc3>\.Zc\C%{V%n7ъLPnR!d?~$:>Ɇ:`9cuü,]e%c(7"HS6ɔ?OO6"IZGwr)-{mCj^RN0ބF.W+UzKeSvU*l;FX 2L&~ߤu׌@?R9"4s() JZ\pafKMº>ko&츷Q$I/`Y ߌx?)ExsEO=L2j"f|2'TBckwcEt&P\2j`Cx0Z˶5#46)M/JTvoh׮ױt-0`'d/[0}`qj懦VbZg s$|T hH΍;u]h4Fd*9١ݻfF5/7PG)m96ssX+Nvdvn?׶bGE])~Re?l˸ 97꼸E&e;jGԤJWV;nyouڿNW+fi-?lZnW&;0șX2@lmn)@M(wC bITUt0{>XyQ=Gp2:7C#Id<Al< r%>mG`FS٥$t^Ik0q]%7hD.T}>#!a+i?kO/x~y'R->O' (♕~8 Ly"П*>Uytɣ0WҌN>O!gdGtdp]Z;Sz<P; x!r-Ņg֔쿚g8$,wLA0&X/Q&|` f0 `7 ZB #ǕY$i<0=8O)}(Y N o ?52e,aݖ5Q"Ic\k/m.ם5g]wSƤBs@QuFi?_DbP?~?tڌ ѫAk,G X4c2/lVjiΊ|xvy]|㖟o7RmNKېW9KD E렭~ f[:01+ML5MگR4!jȦH E…6R.W#!}^mO?ୣhD׍tEn!YHi ͖ 9h@oK:K|*S;ه\ʆYzSEOݽfy5}oCw Ŧ8K-fr17ݣ \z?J$ Ѹ 1ߪT)lgl^MD@Wo9gv4wleP+GcjUk+n ->rMR_SіAyMEHl X X:aĮy&`iI -ѹv :TU4k\esy4H[;%G҃>g &".p+$V|h:<5OD(v[,SFRq&viN1)Ì>O[բ UYb[)iQ(vb.~xYppT25!z蛴Rgٚ8ê( l *NJ *F+jCv~p)7S=f5l%^4SPgd.jjr07_~"4NoeH&x/[oV7 Zfe V;ri=ts}<IlGԇS Ȋ,>|P>aܞ-ȝCI=L&^=֍juJzVdY|uYU?a=|iJxr=~DqЌ˷F/8Ouե{#b>'8W֥vgvLR+B&Qc#5?;B|y=qA‹8تU"M&-IC@y: B~HĮQ 5>F]3.C7S0M~t'9uHWmJ. Dbq.v$f/wNtu'zmZ pIuwr@NAj߭}K o#}bpre~ecy:7aNgAMa7FBN,6 Gm;}pbccQE2q؀"a}UKy$.Wz2:ΡCHnrEl=\TvmQXedj= x?p[07$jc1]=:JQ]R$p0ٜ7kzX88|Y|mܟAf@$|*NƆiMJm:ז˘ƀN7=5dgL սq&NG֫M޴Iמzfr)@^dfZgEq>DY5]qpPo]Nxt9^PBII*|5vsO2KRCĬ9o?}N;8%P"Xnhs9.z}yt%mSQ *ݕ"| MMHpAeٸ~Z0D[ص#X(D%6D\WE4S2Ыf}tOPfTt%azo(L]<ܚ=6ͳ]K]q*rcYx5V 4ܪSg7䜧qU^E-!m<({] $`}pM7Ch;(" ~;EgVˠ+ s۳MZ\|ķMT!w-f/1ɐOH+ۃⱀZ}UQ~,d!ئ+ b6tE24f/ 901NBRA`xgز3+eJm /Qv*x /V~ HeZ:'5ʚT; l?!Лd6(adx8#|`H{)U(j4>bIB5XeQkVAщ`O+]ɚQFQ#OB0hQ]1nSƄ g} 6!)Z:XW1~FUFRg؜0烢@%Ix W6^Äd98fOj|HKCkFKYXjiCɸ\lՓf1V_Cڢt%]T-ZG{3h b|xEk^ OCih%3N6xd[c"CO(F0* ʈ]B{hC 3ƀYz{OVXܼyğ d~!hӇnZsq1%OuΧD+%^2-e&H(< >I.-((ėQOlR_7Pp$Wkgt j}4No}=pQgvuV$܊ojCzSEf]/4jy r|gp2_Pbg/+A(B. agܺWJɂKįMGf%7z'\-BAR& L^WŽ5ͯ )ú$K;dBTC{6D&1khp_x'ao.+ f+DB"i7eŇtZ|cDsuߐ)ôVNWg9L&SUeY5#xq!ġW;̉KK. B aheiq #PY\)I ZvtP' 㤴`%a4[!gޛ|Usԙ@JMӦ"n [g~*[z z-}bBQ:ÿnrѦbvM#9/73}G^2 7]2]኉ ?>%@C؆hexo\uN$Lƥ0þ#"ϝsrAe>73}olicjwVac2=BI2]%cxI}餠X :{I![ZIT,>}}\94ksṞRX !{3ӹo)ϤkLc7<2%۪rPC_}dy)gK>XRb@C<Ƅmwp@mdy<~[u`#X(fdrG6yg7RFBt qzVxL@[_("޷mRU i$E37! QCؽ Jy+<&FT_*i=5N;kkpt.5ΈdltTU3sh5TH0A52@mƀ~yAUF* `ĺ`f[9~`Hˡ|$+kCK]tBjېmU -#Šu8}eLO]uE(r2$,G$Z GFS$D.$C+Z'@ʯi\Hv:u1ȻOj{}k#jrMxpV 2G(~ovs'l>_ ((6}LEu>++O-A{%/Li-x}q?Hm"6h~!tКyLl@Ai"DB)(`^ٴ!EX?cF ӪjҵZO)oE:vcSLG_Yw;/m{&?D~B"0T5QP]:Zu5Z"(wJVw43 yäz\VS8ݴCbMSy_T(X[ A&}L83#8ol ~ C,b]Izo<FL!h_QƝ Cy.Qb_ 4sŽ@gaUgmk8JQT'>=L3͙‡Bd ߡjעUM@@LiѿyAFF-MvYRX^ EڱilZDin(6GCn9+4-Vs>\lWπ nƋ#2ctҜYyQ]0xtS @]%nFa +D/ixWQv"._jryd)c?70NgkW 1sܰʟN` fE)-2H*~beJϐ96%i |NZ|ң Z:/|̡Mh.A>o%(fi:7_#yp͕SϻI,]"z,m*w< *~77ߎN3ˁ1k[AjSXi2 3 m)-Sn/2!t6wU]H9o$(cl#ڭ6=XǺXoU0?qb{l"td#Nb}2pZ—_=rI;x(Ckm#]B8J (dMJ`pQpTגt78reFjHt7 3=z`i8`e ')SOF^"rC, v['vb{ۦW 3DѲJؓHww^v.@7~5ɭe/yFؖLI8yy;(ĻzZӞ~9c'|W}EߤT}rm=p^G28EBN,u#p@4 :=j:9 kNqe@'nl43-&:HQ$iM |BE/V3d?(TGwK+h ,HJQ%az'5U~M]jWdde]8F(wbĭ,胴XsstQNBu6~7 @BmfuuTVb_9fjc_Ԧ\&{/lZ|<~x=AՇcdO&vMp0XC5*ɹx z%6]ODʭ/ !Ȟ$Mm4\_Nj쮡cG1B5 l{lC-ҹL<ё-Jě;61I%Pڄm),YHNUÓ9T{F-_ɾY]t"ѠEsoS qL YaԦtnz,1L7 <(0[8r© = i0@CYM{a@buc8N݌$Y`W${4]!DuہTyѴ&#o%զnCH?GqD^k!?d['0냨: U I-NrQ+b(V *dKp &odJJpuNz}rpF~aoZP"m fɮga0O5%]RH&CyL:H[Nf9 15m.^R{nZk]4D$lpvT9iT`|~E<]&/s aJ;|gXRd7W5{"&X!Py_ RIptwz:fԈϴ^T'밾+\Di<gdMwVe%hqt^ wde@ޜۧxEB]+ۢ5KGA"Esn%@HLӸ7L!6/Fd^ENN<VG4/FͣbSx/ ށKr:5](6xjWnJ8KrEli1GWI,(XDo̊iQ|7/OMFcuc N S2sWēl1F"91_!CJ4vQH6 /"m޹&\fN A̽w#5?d#PF~q p2 eA˛J7q׳~YqL~\8חfW"; fc5m/Èp\醁StSxfBf ȹ {t~ੌN$<~!00s>Qߕ ѡmx .̈O?Ks/YpU(`;K:™Ƅ)eI&##8J3?o(? k1fFNY%JIrbWȠ Ϻ*al[,6!cUSEG\7~Bޚc"8Hݜ'XF́y%9.?sY^+؉{}J=S_|(.;`T3Y. ŧvu+_QV-]fg=(oC97;g޼3/kAFAE-qNݫSg;3F;{muxYYڠ'-?$gBKe: -քK5AQ, WsԅqDM&{< )Y'@)<)wlB#WP_aO5"NY0IXB7_aR7 93hΪ9?[%vjk/Sa h>h$FRQ:#h}{+ZN@8B?],C{I z$X8Qb伹3L[J7FĎ%k#VI:ё]wJ!v)[0 LDP='nIm2*0(a-%p50XCQ`'l ʔ2D=jf=wu)g08m9o#*XWn )!-oU tB8ë""b\q.OyU[倘CB⩺D׻flK#bz`2nVmVWڨuTN ݕk@bߐ#3z[8k˟xNc(-Tg _/#UZi IXٿ2iREv0~ TJ#;#A]e/_z6?!-sσYHV1*D[MO0T{!Mwl' <|6Rr̩͗㤭hbIي\KIK;LKƶ`V9>{FknM?)Ҝ0=Ӌ&o0[3u:.Rco_f C̾q\c6ED^j"1$ RaSKT$):_ t!TSmF W_4dOK#Œ[i~8U!D},[_rRecrSHv:6 8OiRe- ^ q; "2?f+Vr 6C$: XXZŤ&C8s`9'j'َzfhf _m:鿸s?Bx;#$~< -U~UF{M;%u!VQk8Q[Dy`U~βU֢?Z5젥B<*|œ(Gm294sȝbc]XUŞ=kF'v㧯|7. mº6'!)Nr, =|sjCT'47`Yx+Hk M@zV/PCt~bkտf(t3˂i*LH Rfliw[Z|\>džq(YꛙFIdQ"?%<}1-tn}R{(*tlH9^Kx&Ř:Ԃ_7&$rr3ǿ"[I֡x3-eɡ%5bO:+{û6@r6]pn ӗ<NEJQ{b7rPi \aÅK(z3nHtQF! !^H(tT$#ĺ)Q.DŲx7np:FX4f6XFLp~9$W*LFmA@6&hKG\Q Pڎ 샐k'aJ'M]}[[A j*}C7vQX>vI-`h< vhAq\+_ z zCpL ۽@ϰBaϝ|M=M#UP=99 ['v+ԞsFÙKBҞ#%xYU#1[QR)zƄ/0/oJONsYIY&bp[!A+Umg!Z ;,J@\ sm|X\>C ]^u(Wq =B) 7skPI]E#K-@Q|u$AߪU(ן۶is@OIJ%d Fv2T KjxȕrzetyyIagWsĥ,dvDdoe #7=8Ho!YC黺pWl^YO=&S ڊ[İn^OH*Ww9&Ӓw/a3>V]a9u2s*T>oQPj::3CNIboj]#|U?jxYJaz*Uת*v3V E6OAą.ƂMY<٥,s[\ ^^$!FYcw񊘬 WPW+q2)]V ?{fMMQPm;[dHqfgp5~wgz.g%F70 OOeᤁ9Gn KK\ߏ4C;8%VR٣Uqʬ7zx -ÛtֺW+ȱݸg (fT-xe.9kPǬ*)){b ~^봾ʏ2T*%ܣ 0/KQO4a(EE?#L3M$Ll{ +*0W7׽špz-DNߣà ЬTí(3$~ÅK6$*%:١?J̗$Q2dd8iTe8$N'MD~Qʋ[_фɵyq:s4xa`LWiH '3[e2E [aЏtdNהS{Gu@<g9L.h x2; 8aLs"crTQg < 0Y=cS_2f=[)]^@o}Z|KӉ7Tn;߃9P*|نTDp@< ɽ8U&Gj rLWF-xޚ p _8Y: cʣ|E`U:ު e_~B^ ak q09?EYUPfb wce,N!ߔ@cB-`HrKQH|qO TZ"Jz/JiJS9ʆz$=u6ML &)sRھ3 &X9 havf$NQJ,WY.9M}S}bz p&ϥ&Q p_Qp/S1-8NϔzjC d|MF5Ch_q~[f|m@aU1>]ع6 {}za $<}Hr5I̧`x0wcVLVJ!:;g14"DMȃ8E0v\˜^SJٲ}"!-gfƿ+PʵNeA]Pۓ9% b8:By?wɳ x;jRݛiz ô2H58a*ab|@Y|ɗrUhA%h޿UwoAM P^/\zn<*pǵW9vz:]ln!>a2ϋx&3ר34)dAg#mcFǍ;I@GP֬]kx>O[CEּM~fv`mwV PQd4hSɚ-NlgVMޞ癒QwxfJm\jA"A0lÿ;݈[5{;wsArkZ0b/ |H8BOCR: â00r]dݗgİl]DA/)aUzN~{[2:䲹ɳws3Subm')FM{hQ+|@}OrԈ8O'£4X342L<3/lM@I=&2vD+#Sw%˭ VUpXE:8Ax+|4,ިwZl69:.N "6]PZ9nBfb TTnVM\YC:e':Ꚛ +oHh 7x[}DB"q wf7-F[H5T.jsziX5BXRenQXK[̡^Ix͒j_ S8!11{ $FT붚)"φ>g+2N>K]_R]7JVzl}W]hIX`FEA Sŀ98Pef.~0I~Y]^mߣnv1y-cB T6!]Gɂ-ǐYq/A+$D OګjC\*:g_ ú]Iv]Ţz+#^U FIѥ qNH*<ϔqֽ%AA/h~o DI"[-x3](`?ջ_w<}ӄtj`ɰ82!wvA11: j-i@$W=-م4Qo s|2MĹ[S hS6B#C 3T?>̍sOoKIɌ5ʪk{D:i|+㷜g`6k9ݽWɘH*;:/VU>`&ɼYIf7;$iq;ڣS3d(pݞ$δ<Es6-@[0mŮD=fͨ7+42싦)rŦ99"T Gyg#[4D8JH ;V GAl#0% Xb { ڏt3Q'aPC.$EI6H(azvGwӝW.).0!E%r^vmkX\r'I3"5d'HBFV @u FK. ʾ[]w4?u-+2ǻm^n߸3*tI#;fBWg0QxBy c;U -1PDv"f9B/5l~mj2P0/EmY\n-&9;!}hߘ臶f`I() ͙D6:*!'qAX K{oG{mNjqvGjJJTF t"Au.J7ހG0NXE)xvOcQ+z$ q9'y`TD⩯^V+_~I'Yv{yT$7ݷU9%YpKA06eox_$R7t3ߝۺOxo'[%P(r"aM ۄG盗yv`+Zkh ͆="%9{]?^]S=Z(~YSر|Z ʗڦ`N7;D\PN"hRfFm}>[~*lJԗA60/F j͘9g 0Bd()d2hޢ:Kn5\)5ejn8n/\x+Ք.$u EhЪ gS8 -V92J0[ժ5'#n<<Qb"znj[Zhe abGQ6;˱ _5aiSڢ~,I.ApF. Zl) Y vih-ܡ eT+ L8gg;MCPZz5p 6q_DrT-Y3ߛv1›T˫v,ț0z^khQD5y$ YH`cpe% "-I4kڲ< ST.&+wњ0 L\2k(5I3=)Yפ Vg8P4"{T}oOą+p_7ѥU9LJ1A(0S j7L.ne}8 6ŨhYK<<"cm͜ /tw"$JZNb\ ,13ǵG}yw07m[Qұ1&@cȔShDXc{\/Jg+זi ~R[N4͉v ?]uJa 㣤˛̟R ;z4U| 2N(|,b_z\f SE1#Ǟ)` [?$]zo{0:O*p _ipiV/͡l0ҕi2ᣬվ:FL(r(ۤyh{)M x%HqideAGŧUMg); fHumxf/ 9,('$T`j, *@/5{DE[l@D<$:\/G;[%9wDz{5/vʤ|aѮϻ1˛Jǖo|(nǪKPCrM\339R@Gn7;MߌF69 o'6}X6lak6L\{kaW' [ڬNZn/ eÙιt+8WE-pGh+`٥@#EYZUآ=lpG:6ͺо Rb03s+p9yb'ӈ"a\$Ls_ bb;Bltzp,څ36wǯF,A64>hdqIb&SW|װ--Hlrw>{DA!@Jw )}l}dUkf-ߏK`t'%&yN 5W+5xx,PS\Z!SV^t%}`uZ\4qZ,=`/z각WKa!.G/=B! WW}kfyYiʗe.kMJ1(Au pMS=H w6tyA0v?1nsc\iXփl1?1ğE3#6dCOW,zHYgY콯@ⴵ 7 c O~$1= N#ҠQ׳wDզ?W[o໹SM1GeFnBP^eXۨm6?`By喊Rs<("Adi-L7rL_|GZQpݫ>5.,.28_uU}vy`odbxdly`?,R}+΂~19}3TvX 7DC_X XK U'Di$ X&\gd;W(gI?fi"_mUWxJzdFg&b$5%̄ noco՜P1,PlDO[&4r8:?9W 즿ɋsfc^]t#V쳡XYK$0~UB[BՄ W* €f :STiA[ʌ3~yJ3 W,JEO7нznꣀdJD%b(hq8WN,Χ!KPs+oQ]JƟhS-$'Юio)B?ߦ<*;Nr̓9ISl/}':d8V*3}O8WPVRu AlG/Y֡1ĵ% 37CHB|^?NF䔑c߾=5ƴ 'NOqk &t@Er,KuQS |xyg^"݌;kq_Q^BDkgi$A,`gҞ TEn `}Jgb$|͖UWhKnvu[@ԼHŽ1w7sbzP&dlohu|ʲMxݤ}1}³G3Wf :#N#@8SL}>_(cQ7'/h%z=}>g}R_ԗyCf/n2|:0QTHHX F=D45s`x?`sFD/l&EXkKk(Kߺ sXBĸk8Pyfvz=KCвqMp^(j X#陎ljA*Kptڴ璉CÙPٶO!2qVV!Td[+s$h\[ګƈgHE^pOhaEq3prImQT2xGBP;W;[uC]z ξ w6s?,0s>,J_bmZJSOdyܩm>"gd-!g:lcM^Q{C2gVX*ax٬)~SK,{^ОK<9v"2%}!}bœK@ˮYّwaקpQ?C9vR{aP&(t3F%[^/=(Q.C ԱY$V CyZ꘲ 癏y5s`T{f{ G0e3} &hV-D* Z" 5̞ӏ:Ti ni= fGVD (pGݻTB<G =?VԼ<&.J/8A*t;yG 1MCjciu"E#5PDY8jW{H3.jv<9#sg3獊u'3CX$a~4݉_ۛ ,2H 97fh*?gaոɣv4_@t'#BeHbqiٞRGsgKA1Ewmqej]ȁfqJܓn1C*Ϩj:/K|\K Rq B, eRf<оyP c\hJ5("ݍcHۭcuPwɹt+ɏ *V5a4)Bjuk$Y@_T$ؙd-Sxгj)xRjK:LPL LP!x"NV8M!Ĉ‚?߹S&ѼmaT/0z=Y zH*'jqЛyPa}s̍^]o++RNJ*AY+)YL1"MVzhA)=?;$Cp!G$"T|pip"5>_P6 -*\6x[>ۄÀ(& ;je)}+gÞ0_n: z\Ldi? ތ27CF c$'u*W{g{ B#&ppa-pK'YS9Ѳ#CTY0n,'.r|?w̗WcG`)oVO]3ضn-R6<֛hw(CM\1t 4ޤh:h•mGЉVvrvBhGX̭}:ϖHU2}9ڼ+_n{zNݭwZA=cUw܂!q܊|s%-Rd.s0_|7R%)gN镺3XCyOP0~EGzSd=5'ޠL >] XDFR.ʭ% ڊ ^,aeB7fߊZ8,W=K mJK1[5>[XE"Al/Gk R7Mή| ;=aĬ8T}]ż({!vAZbDC{3O;y_&7jaPzfewk˥3u^.%RNaC.-ak'V'bLg]쳷<ޫ_&Pw[8%K ]<4(qK y;U:IgIIH%gTz佚j //{I1M,p,dGn>PU54ۭTWkZ&wZĝ۴'aR5ϸQ3ϣ އU#šc\Bd33|e-" Qi_C[U)0Xs>7mG9 ?hT;uSM4 :`h3ݴj.NfZoP3BjX%x=ht"0n3ك*A"RJUvOLL.>H$F$[",#gM_ {Tq U ]<.˜Gy`/:;>1"Q.Gܻ{MlnTH\jmï %#էFt:oT5i?z+l ]^ }JbZ~v?3&Њ䁝\hi,VJY:([b.M\~W(j }/Mt'0A#|ϱ +%Ho9)}"o\a/ݻ8QvlQ_\NJn>EdHTe Sy2xMWl7=zz-2fv8FxKTxX`&6UO\JgMEVSbƑr,8y-/Z胫%n 3w"W6 \uU"0ǓRMVNX&aj{N\ V6W!J/r ^+cOABe m3zQ靖RI9LV7djl5M*NhɇL^:%>":f<ƪV wۑaIs y  yYig*ڌ$ bad+2$iy2&}"ZT{<|pi3N-\X#.GqI؃xΗRg/ %{ 4㌦ZHeGt|J,&ҮP%;L/:zuDҋ=}(%u͎jRo4FWIm*|VۤB\ VPMs:FQT\=9vQ;Wtl~K Z#cQܨ@}r] B H)Fr!"LX5!>fŦ廐YZY_d5j݉@}$2Y+چx}Fyi{ *p#VۨMG bJӃ,XE,-B}S(\zaBXWr y(R4ڳ|uXOF0۽ +`"dJ;tC`эw*H`.] }\F++Ɍ|u8g1+mWՋLfeAY9Wu&gLef1wJwCXr*eHO;~v:O:RQ Vh$l{C-y4*Ɉ4 X W0CrFf`{[ s >1>߁o ks_N)^+B[[b BkˣF]9<ضCcDqUr4]QZYEto{m^%i+yV.6f(/p=.J,9p˽8l- |Mn 48\=:D,#@~JmwbO$ S` v[-pÙ`mR ͽ]XE($msbWИ}FxiAt!0+jM_ .S^ӫgrJ\ۏ=ͼ~iֵq: %sL,SO?:xyn/o:gL>?I =a]2t4>@ PvGpHtL Lt22:y"+8M]<3himRyx%@mXwԾ 2!K+ =w]vWױL'4[:-è%59vdnqhb=#[rCUA|W%zI"{9. ԄR0E4l?!LxAK84;J IMpjfV2Wu[e|ͲOa ߊxk-1%;)@"0ðpR֒LsE9@|W҇jb!`ZGPM?*κ{&%g}癗C&Ocy&DC 6N6\ 4E Gm vruQPCu*HH,B% ~!=F:ª(Bx rb dw!>_f8? 73DQPFRI `]tu%Ng(U>VtZz83P3׃Z I "vcFyxVx?a IC7~Jnq{gJbMY&ut.:s亵/{j-j,q]W%) q;-ΈkʉǢvffͺ2>cQ1Fo!֠~X^Ι:ZcNNݚFI!<)Rm!Jz1 3c2 %s [rzKIKod?Pa[jdDI'RfA?YcvՀ1<>mN1x/tA\ey2Opgq<\O?2J'Mȫ>M~ ˻da:[-VQ H 3b2[z!,Pvƛ#Q Qz"~tAcAidSS?T v`7;kN}*^$]"\A lEDu/DYjXH;]48b`鲚gLT;夼 4#6iÎH 8a]*cT>48>`g'Nru&?h6$W5e/}"U 0 V*/m'':ؙr6L$'quIFxk=('I?58+{.U0#Hzw&pT2@H4yV^v1<)rwMWIԦ]B%\\aAW}Qh}` g.>)âCIFЪ}jEW16G2:Kz4˔{5zPSW3™"a\>3J\Bz.=Fzet~|Im<#R ..Sz.GMϑcuӚ`eSl} +Ȧ1C|:\6=\ɗ~Wq{c?63#>Qu^@ΰp'u,/) LϢ t*ldWݩW8NH!mhZ%]!s2 W2uSǂ;{~N_$qqT$[[+x,y>v^hC1g-(ӫ1@Va-BȯB_ Tdњ0\)4"ZkN`O.>Lyt .&0$eɏg8Xw{a"ǭFM`<9=&\8dqOw}47^s16$K&:$b޾$`T>c9a m yY5Z=xFІd8nS{.eH~3R!{d-2Ǐti6TVs@>e'Vo#tg @a%#?bh&7X0#} YCݵi_f ;U-r{;.ĤVK"ScK+À*3@BcM*KUuQΝmSCKh?.&Cy^i#lM$j룣:7ÙWEބ/aF=El\>9hΚCE#(M azd%iqsNйyr__%~^YrL/'ٖ@LMyZ.oJپFTF $݋Gbފ塈Y*_ݻw^& @@{C 3>NroD!'ocr&OɺB\翆pq"wEJi\Ut .8i]ى?8E߰Y;Ҙ\S` A~jDe y4YS[Y1'-dL CգưinbYL-~jll'_Y*ttU d EdAbw^o)t=5/uF1V1mmbz‹/R.Ivժ.JÎ,f8r冣pO-p xPD]c<4הr V]53h^겈ݓE0f5F^}b3թSGyU .-2 mTsmk[,FH/Z,b~"/it)[2u86tݧo@cթ^ev] #rmAO4C4ܓY4Vb3ggep=YA6n6V>f*2owV]=XJp,#PV2~ ULhPyBz#1srCIŘoDA>o2J(kf?'IӴ8uuzxs:+=i> iŜ#/d&UD|ЙP7˵xdY{KQ}* !ܛM;Y+ќ+ͨ"5SOdH5i%-_W"dq(3Eil1#+azd0<¦>&H'd*EM*ʝ\#[ȦiTklQOܖsg rJroԣJlu؉> +>x01fx!j7Oc~Cc y#ݕXS?)B1B{5&֨NM)vq[# 3 ٱes/2<^}ƆI>&L_$Vf31q+pSobRtNLWכxYYncH!3ʡۇ*{cUzLӾoh2Oj.HɄ/'f| 0#-3[Z2{%>w%KҬ߾³4_~->ƟA]8dr]|lDJTT=zӸH{gI-8w^|'Q&떦&idiۈ'jqRzH>(p^3z*Οɡ:ф'Pj[U^땶KP/7 -ghXuTE8= n{ gc. Q qK\]J$0BS[Bƒyyzy(ii/4|I5L-W{;l>c8 & l:>|iʌ/B%˳JV9ɥ <0rɮ!)R#ܲ_NWKI1P&}o{bO,++(oϏ(/06]˾bU -p ӟ"[X1.9]r):UT V;B7 |S$Un`\jC7>:iMU`DzbAS^sO9N`VhWuB]ڿQl㩑=]HFm1KAsədJp.6POTe.vh)z%#,;V*'۔{z; hw ?;ӓүv +>4+;=P9̤c%UuUywath7]s,|j@O*IڞwnmeeX{rx 't 93#.E_MPm]b&9=.+*o)77-`I}n(\,~gF ӣeF A1ϛ0F3!b)J4f'OHT*: mgAV(5;_Iȣ`VPGȟ #$[CGppw=a v$/cXV`Wn̘]$۞ ڊ2 󆽨y":˚b(_WP 5mqLV.ut0ytv YjcXA,WEz<#4Y(NBS\RWpzK+CTH/' -. F%*e8(0+d!njXtS } wASIa^BJgeR{x@WcBtI ~L B4|E q 6/*C<9l`vSlҚ;LlN$.|Q 6 #CJ[=8!EmP ߩ+KSN)3en Z:IV& }nawUyL(ʻ)]MKjbt)A:dSi+ /C $*BL %qW|1^ߣ5D h75*yȣq&w0ek6 }5}oy)ȹΨ)v3/Z+)pVo;63Mv86燨qaiq"QF'rjq?tgt#FmbeQU"y3DD#aV M-ߓr[ oe#Вi7|ӟk?I9JTnl%V G*3Xtt]0dł\u+Z<ߍ!d1LZ rYb/fJ.ZAYmbY 9ˏ9z[qo5 ўl|WhS߈ٷE:ηA k0Vmv? ɴ&d J†S9(2@ѻ!#2UE\m$/$kpb-mꠖp̿y2PFh@"LRtPjd'1LS䯢'S=5(uH gǗDl&kR{T3ljp M V֢J)I3B>AқxOL1+8xRodBxlʝs% .4/X6YZy-zGH]C] d.g"GU ~bq Z:݆/s#G89Er_ڳ(kSLdE_(\[sF1"O|+)*ѬEod|:(EW&zwjHu(Je+eYls-/C UudK8HzgcP0.X6Z 2Cɰ9F:zbyh9+k_"c){G~э̕gt]1+k18409hv^U?qj@3\vf'/&yJq̑|0n(%2IrA\✃t 11 I; 4AdM(iBΞY5-rģD:vrƖ~>4̊Ӡ&#-hyG]~'RՀ@޳||+ 4ɟ?+=Z6pj7ۙ:ź`}h9w7G'=4Qxff]1&R>Whc.ʵYv \ 5pa!{]9/ mc!@:EdȨMFз2uQK3h*Sk8ȳ@R~nޖ3v˲۹pI^n㋾NDC6 @&˰9`ߡ&/gյCzzNmVUwE*dI4ԍĂ%}N::8@)ǩN2Q@o\fML4SWT8δ\倌w=p1gaޮ qdm$[k?;RR!*+<\e'q ?] 9(>+Qs;P1%nm7SEߝ1j\`GmbɹB3ZT‘FG`>cQFoBNmAW9IF {F5Hz.ٟ]v}+k'vfJ_D)ӶyLj^,zzLbon|'O"`.i.i#Wv q3|39243$lx+jyuJV]=p2qN$^ 7u$,MDN.L`n~/Lq'|\arqD6Kr}i0J+96'׾/JM|V#D@"#Ɲz~'(DY0WW\לzYWph[ùwZ/&3"6YyKxL8X S{K۩+bRהc4yv^ _!Rhn,.5[k+-^B,&`ʢ*Jxp7~^\'!a;Z݉|2.VNV9wk .`h,~uQ)Ml7l+,nm݁yKXKQg-t)5/等!~d1ť& D#7Y}Dz01)ysg> D;. 7DZ SzMGgqEGnh~=qݬq1P+Q<1 鼅{OCsƢ"5cHfC/^ĮP}H࿗H"û(TP9ENgM xd!S7h(ʃ-`a hbjl4gMQ@FW{e9K*B`ЪB'ߢcgaE$՜V*EFiDr!,[5ϸe%]jZQ{CMmKQ7苖0LBXD.l<.~OiIkC[kbƞ#4b稕ꠃF:UR3m9҉8C9zA.Մ{M2X\bA $ލ'Ւ_SgٻX6ϭROiv\}<⳿|R~ "E?ݪe)':lp>7zrC|ٱ)02a)٪kut&MZm -$+ s!mҫEL4{9o~CԶT_iG+CS,!S⺮4 :م"Rk)줏89r4<< 5Z)J?gqQ3.qkv}+  個XC]s@HXiXA]@"MNH&OVMro)&uP}~ EDq5O)k8%}9(nx(Np,JrF.˻uS zVfzb 31m@^,oj'ۇKѠFɠ k$t@r1uz`$6R@]|*-S%H!G)P,{4% otدpSW0 @l\bWBʳ~Z|>'h?&^L0C1W*xS8V㕰6j2ƴ|"^{ e2(kj'xhE5艹ƶE-_q;K(OP@n_Nʈht|F '@DbӳR1l:I*7kvπ:X a 2]ɫǪI:3V0w.+[_f:W /?KҷZ<|&~$@C9Mvdo$(C4FO Wo d-Bc0[}d.؄bm(334e-(&3>xlљlj_EF z`3Iӈ:~|30&[cUwPތMBh 2Ġ>mqhnY% nC嬤7.ó>JXC Bّ8xz P>? +u/?ʊ7fE8"@Y{*m+)wu:OnpgRfvl}#wƆG5%.֖jЮe3vD-F[d^aଳDGD}Oz伿 M)P BW̔nr hE<||$qըk9ΞzNG^±&OQIq{[RPi֤ꊅkǟ uaLhGe> kU0Eϳ\Ch މ$5P(`sT3M |zaz2˸U^{OG&b!aLF"<'vUޟ+T<0qP`F`U]b/rD<!3g!P5.rqv>!he7y q'])^f#W)fP'µC3csF4+ŭ]ٻY3Xb}[e,lI(26rLvK;ȍԎRAӈ:#T}%fLF0Y$onnq2dT-޿N)R"*݌&o1jDԄ$-78XD og;/cRMﯧ`2똣.?NJ. YFn^n>& 0]CX~g 'J[r~.'ؓƱ3g wt@7lpy&P6k*З[D:|t&qw,Hۗ%`Ժ̘H7ey7ҕ?~ۿ s xI,Q.|,W,cҩ[A bOpCRcGI_` wF;,O{Y1n ^؇K=<+ԕ.@|xA\@MbUL^)$MePTZ$с!R ‰X"νz!+gDpUrTUt׊7]-)έ :r{'H9z))sG07JI2=D$0E:*8ʅHG2jMTnWԕM`=ă;?)MibpPB1bM3)q</ kyo*A͈!V,Mp>?\ѿ_\)}&2;,b]J[)yU'YN~ѧct4l"aWO2Ko nG3IGh8awܘhOOEHً!̒BΕ[g mRMΊ 5oOwT`e0F^8?(tw#jy\n\zYR!'uar`>hU0 nw-'K^}C>ө2 N0 KZyJ :$PVcΈ*)6ʱ=󯲿5uwk%IŇbE53H9^'EG@w|5!faJ@Te.i #ܺ2l :s%@t*{lMbkRѶǚ=ʹ/[\x&H6}K䀊o!$Z܆1^4=&(6#p;&{],<ZLbb0<0p ټl;EvBϹ0HڪV/My6OfձxΜ:(={FD,V"0p!r2[&|gHv.uB @@]9J4h]n*A(G$m޼`=#Ruȡa吵@%c(7f--gq@ ڜ=XC^)7xx̖S$56Gyg39~2Y*!khZkU qOTa Pz<պQ8AK.Spm9Umb=pr1s$<Cqmf2s"5ic9tK%ZgW֯EHV *f7lKʆ>lj5gV|JvHx[7D*ZC%WRD 3v ۓ_fc+ז.Fȅ#F"dwJcY%/nS*KCu*F 4b>•?.ͤ=~Z*u)g"Ħ -SuA4 ¨lU &>崪P?mc'ߎIݘ80,{Q@G' y-͏=vk C^h+57 X~b_KDw$cfK^;uuY-jSs~8 TROFd}td*EItU3ntHͣm)/-X{%LIxj-SivXr! ULho{u|8/PF^2ЮU\ǽ 1{ZvփDiױ)UņD"9;J"JRh\0z-V.|9ʵޣHcK'FaMoXr3ij~qE^T풸"AW?Z  O2XhO9K.G9|-5f%KF VݸV%2? R6~Ӣ`t+ir@L;ԛ~"G%DsACES.&;Oy74Z-ZڒPG0{ʂK '<]N49R+Cc@!VP<ͼL7Q9ꭉ 4 ! = y2W o3'1"[ ob-i})35;9)պmzs֪brV]]L2n,<ͱ_>1_;J㓤c1WQuNjLHmtv`m-w<&7/k;@XQ$[{vyRb^#tDNZ%3{P6'z]Q5whI%~&짟E \kqWZYTx^[ WMgZTjQ-TKE e()5(V [-CJo8G*35(a:0oil)y),.ţj)n[*p/eevwHөԌZMMFc|X%>.3ND$xr\!L>1DZX!ػNd,7($>8`N){g+ Y]٫Қ~VO#G(-?[W۸H_ZDM^JÒ@|-+W$w1^V@4CN2a(ڏ@$̃PJy^Ϧe XKmo5]:.' Q *urm%X)?s5?2>>w;(k#FQR@y ~^3*~Dߘ׾wKSOF!nVTwU$39Z H/c(35B={{x,`d\pM,ִ%cŀQPM/'#{ommt*F^P  0~%QlDqa4,?Gs%̀/,-HԠǃ/uy2hi^Tdnȸv܊"+'ϷA|l>4hbb)sb?#PsiyŽ_,pRʓR9żHRoX҈4ԇ)2{JΏOX +mg$yghYz$X-0 2Erw[C? QCSeZ2$~&%6vdlYedOa`z'皢~>!"/OJgXNmKXĥT3 cdK*A,1&"19nvp~}01:%2D2GZ[2xW:HeEG8!Ǧww=||yxicnH7c{M} /3E"CbDTa (ƴ"n E89R"Z wo ($|GƧ7KƷ.ȶ"6 .6k}TvAx.dKn@qLn]{+ CU>Ø69n/RWSj4h+Pz]@SQm@'3i c!,$PںUu̱H{6Z\w$#aۨQbO}w'q ?Mbaz]V͎k:j)>5SOtoEE@0߇=MQyM{t{3e 8~|wrwx\RS Yrӆ?OoX@no)@QO|\R9P8M"Wb rɹdC l䇁_:{Z(.ߴygl|ц# '`\bыy1`LjiLCnGM) ʻ'/xB}Uf`ÓqmjK_:$Elo)uƢ 6@{7q7x*uvD?.d̾Ty` .%(WDvc K[ +S5'6eEG:M2ULbP3\y{ Ө)2K[J[XXw;< KQjWXt@2TĦةX-QtǍ>,M1s'^Xߘ;{V9@(5fl) Tg2;i#)j8:3}Y.}/ {`Ekkg#'y k 넴j T)n vmᤆ+_Js(vn\Mnp9uIߣ Һ KC{d(v7 GUo[; ᦽU`DM![0BtNmi)<<#ѩ+@v9q>*Ыv6$׷bWr=l6zLf>QE|LP2gIhMSzݣ'Yj#;Ftϣ)\͊E#pd ]S}V!rb7!qzm5m$8'ry!fwJlBXjW펆Vf&q{!ZK XMc,,{tN!L\.qᨍH;څzQ\Z4" SZDº0B.D@n 4 |Y~qK%Aki|o#2pn ooRG!L߼RJ٭T r7(WX,!bIs2ܢ`=!.4R0F'$QS҅{iEڇx-.+L˄HP.;o#5Ѳ_n8G+$3h3N0J}sv|rͶa/ĀagV.KOݸ]F]?y%M{P(pђYT:(Ty G`9#h2@>&2(H 0 \3_ƘԵFFc@ phx! sw_H1Iל8ﶔ6tIqF*˴a, VȤ$]QC+~" h:NYM]Ɖ*%1͗bZٗXg3Æٓa%0&Y0skz<2e4e,W(HnmrDдsi🤣Z1|ܭ- FT.cd I^N/f$:[5:q)8 &~vBMIgs˗'AtU&w3^O*.wk7Y X;V2d)wåW8&OݫJsh8~F||α6ja J"a@2߇\Ӕ d0‰ ;.T˙n5a}pGBy])rT8~HjCAyh*,!_yˆ{F6s@:Lqmg϶0[\}XH H[e5"SV/<6Jz̦yרL抦0|h˃vH,." )o8FV&08#m< Y;Cٜ{?V8@,@sn(;D HpfkVOg?.>#G4L.Dъm @F(Ӗ9|fTjRxE & fqf-%ܲPoD?QQ:`g(cJdXSn{2j[?>P1gw%9`'JLMD5qI!LgomW?aL*EJZeP>|âA" ۭ_j/k(Yk, ڞ fG@uBAn2wKDQ8Ϩb1I6İ, Cr@7̭my9 UQ]TEލX'.v'?tEJ= Pb1FXݔ&1$w9Q x jd&Δ/~m3pO=Rr.3/xoF[84O0UPwbKvwa9]sGN΂mL9J ୣL4~I<<ϗ6R%MpC3{bIb&h5v{<ŵ-6HT~]>?uN|멉ښc:&E{[&SE/f +67Bʺ˵'`s )el^& X<͢KsQ'),A<Zmt ZH?r;N,8kE yKŠI3r>""j廤UMdpJ ICffՆ &[PH:DA )f߳b bٲ_EomsXR>jl׵@fmD&`< fdT <#UXKvJo|-ӶBȆ˄a9<6P3"ǥ÷8D= [!/cLM Xj5{uuH.BƭftT<{n`#Mxh;G֘YEg9U;mſZ 9}EdW 6*fT)cC:cL_,gT%0h d^(%05"Fo:"̑y{Vu~w?5dVV0`^>bN,a)\si^㍴r(TWkB3o ]؃ɨűzg_~jCpʼn׀ph:;A5@ncٷ*=#3]Y\W)&ztTҀE,[|6 IsJV,w2O2 ])J! _NG]?{mZKޒm;ZŹ ]~ LyH:ݬ>3(C AUn lp%a4f\: LO%Ǟd2D/%8ng9hryF%vCP;CpL=٥kZmIuekWLVHBKM68-=3 nm p L5l[9 !ZS[aZΠi)p#i/iR$RQ@?Tʪ1+ RI)2%`Q]p@`+HgT^=z::X` J/*- n\+Qp_<1M RMD1#ٝ+1 '{)*x@o{jDe&Q]ݎAx@eÀuA"RH_h\xA-[QV('wg04̉? fW-)/{V$OZq^ JԈ$:OE0[|b`vcOrav5VJg*T3Df*I2(0ϼВc] J7,ba<+qű+.͈ҷSk6p=l`fMQG6՟<6ެ<7 ~yȆR6{Rop^lѪxgWK.+压Æ֊r "\ ~|[ *  G^/qTZm(ڈ I*w\Aډ.D3W'$>6^)`םd;T[zL\bυ ƿz"2KE*Q>o*2dCuRK  N iڟG +/Wb? `|=+빪![?w)3$~aV3'o1VbWu`?-.0/(7ODwhCR]VG[2ܲsHߝw>ՒKpV߾myI`ٝDl0ݔ+JRW1;+lҀYBJW2qxa\V0% ^!bvLE|`@U0ʆ*zoIH:#$G$G(oz_pC'%2KX.HI!\m섮|}oddŰ plYށ aDl kn"ĉK!){=X a̮G?Mml#BJ3+PJ㎂CɟB@S`Ǵ*U4yCP1^ގie h!LL{D;`E"0EyIژ"S^yʵ^qCIl u:5C8WT?PnfiM]lpYa30}J(ӑ n"( ߲s8BqI%Nl!v\= 4Tb_ ׋ֹ"[۰1Ҋo#z,:NX**(FJ=Mnr/X29Ņ q d!͈*ȑ uI@$R;% 6k0@B xq Uk>Dv(!>Y:"z|Li(KYv;L?9rE(ˤb[@WcpCO3bFA~Q kVަ6MYi3X!2| iPxkd-QxБ5,{0AicV\HSߗ` :Q/rK7WkCчFvxjC͗ ؾD0S,I|; g [ֻ0mU ^ s'8MhqeiƍO(Jfz_{wly;? 3>t|4NP{֮}) 6p0B|>I):x*}' :Ro*jLLxꦚQR<'^hs6\CL :TתHc9W;Wπ`nɒr1{lp3Z8 *I0BœtPh6)=8/]LES^Z̘_eϬ\a*WTkPų_Zls %N WK2#-YitZ8Z0;H-|Evo2H7NUjp*eX `IĀf>I!jOvv mw+s0Tn,+}Fϗ:hf_zGHpB"q]cSwʔF)M䔎ɟRShS C8Ԥ&A/wdD 6iqX.ӎЏ'C8wHY9!">H7tW3U \_y ^aU+N7Qf!C4'ߒnvo+_ ,,tO W>hG XVU+0+jGfC %jt[ZYxZgМqbY!~(8S7vY]vD$I£q# v%>(!l]B xZV<έ@k z3}*~鮤O7*P-9Yϊd+`O!=oae ayD`-NZ8f7 Q-Haw!N\{ sAoBtRu20n3:gORWreNVy,!R/ILŀ(un!-?v@H` ._*j>ȉ{lj9ƇtV@p*6l%MigCj(~5 .ArR.FK42i}nM\?`FrG/^Z?Fa>i$Q^*ԓ[$! `&JY'eC)ۤN*f'D1BE۳ּxP[ 芍ԔG^Ъ&)N'I8fuy:4j1Z\yN;2Kr_/xgk8Fq2@WY>h9HALګ5ߟV=^Y%7T$L`MK _@r_jKMnH'7a!ޖwwٹ{bN(LzbI?GnrfU^B7hG3dsmY K#Sgh [- ҵ¨l'm̿4&V%"Uc>x~uK%Hic:Y2^Q@{` NO֦mO8umcޗR7XXh- $9 skpICJ[bn=sxȽ6+?Ͱztze!Ҍ8@Vʝ-j.0 "q{, mi,ynIkDg2gkaZ*OqTw]`tC>52n*OI㲢|r&b"aEX3iL?K5\bjm<*neq(dVq$z''7f<^ GY7.9yr)J@(oE[)gGLȪjԎD$:K5 t9+܈B0[ yT,udIIe_xmÈ/ݛy G8+B%0]|u/L"@6^XX `k* 69 U~ EyOж?ky).xNzgt@킄8AO46#ϭJϔn>Fyy%մM#8  !=PmJ^d1T@zA=07!X/m#܇;xT׎ ڑK kpN eagṏs Jr7ŭ}vVȦ7NTC{WgCP-bWVwV {"dj(8G n=h4d bǞDXBIg /y2BrhʹlB}wѥ׿1)3-scVDB #Ces׌!@˧YVpE}`0uJϙˊC8aJK$GEgG6>P4Z eeJ> raGt$SeQeeTLktsxdF~ +O_=z+lxVE 9w]qh#[@)z3/Ɏs/(/,xbT&'mV~M_VC )L(a}t4'"n2crW>xG. a,_M˒Z[V #% sVmQUtk<&Ǐk}x`rMƒ+Zw~ 6oG7f\~L 6֒ DO#d mx,*4ٔ}y OG@XWF \-[N!~teS{*Wxr5qxHls6%Xڿ.`%Zi2&Qý||{Z)~{wk 3٭Kxйԭ4t߀1#qO*wto"X%IB\T7A=~YІwt61Ŵ'hL%0 U 'F0OgNRjrZpMG1MmwD؃Y2&4l|Pp]Gq*ɁT&OGXDׇץ\)|^؆o>+)_%=մ}= * 0Qd \ШKݗX)6!1TM[Cz7%qVݮ2i /n-o>4PWf%Yx1@ȶk:dm[&m)ݛjpk!WncW9%eYf;aX7|>#E)E^ݖûG,X Sͱ ႀRE:*+8b1̽.:=MI =v.a@bMpdAmDZhkr5:kƭ-ƫrgx1uVJ`@PLL>=!AX8~ju 22\(B̋.~'WL'vTT G FHz4.TȤ6_Ch"(7|"jfe;KhuOө|d& @A۞^8`v$S?dTf4X3p¿ŐEw3`grIIrGȵRJw95/ёw!FNÜK-{^ZK;fz O.}E'"*id&ЈE;\(Ol<+eRRlM8{s;Ti~o"`ݎs)|ܩHXm*@,~ k_h$JN _t/ۊ7Q@ ~5M-N< 6\צ@w?r|ȍA|IbuYK&iqMȭH1IKnU#@?L}Ϳұz/=EX5Ą3c8 J* ] )2&/^ rsrUؕ_>@嘸LY.j-T%'>Ա>l 2~>Ǘ?L5T@JAd&3QCpx4HJ\AΔԸMYA6m ]P^0KV;VF֞L=>ցΝELOU/٧Z^Mdo`>*1)sSN}!һYXugyס>!+ *w25#Dzfi?,j+IIջ# Qa_t{^ƅ~̎0rutDȂ`W[iyLR}/_n?o 洐 +㹳CnL*Zu8hQ_n>Vy s|hA4B|$zsY0A ZBAs̿#@ܐۨD}^J~'؇LTZD phh9/"~۞ʶ0 KQG/4i2d}ӿF@ 04Zk98bD`P)[Z7[Wpk^.-+1Ұ܊1Y!we#1'UvTԻ E߿,Llpdra->ܘ`EwEG?&7(s]Cv|U֏B!CGᮑ.vhC2yk`@J1BHz[(IFdxO;"G1_XE赞j+`CWC 0 zk, tI vk"~+=O2q-B&x$"MqsɭiҘre-I9/y'@`JN`~%Ly#Jhl~y^LgeY=RS]65XA.sgaTͼ{L9=dl5o&nx॒{.w |Ճnʀ1ooN\?gTGD޼Q3i%c"GM?ΚK֗`sx{]ȴ1B~' }kV7<Ȑ {+ Be8"ZLkthyJiscg\A'ڟQ"]0i @@~\ G2ʹcd5(<'5 k!24/p݂\TzE8v5Ⱦ{BQm2 ;_[gᙝk聲Á&쩺wO(:dvX@>岰5xH[7?K4c|:{v=$򌫮@G?lt3x MF-H}YcxN;T؍xoQ9 xm2'Gc#Lw*GMb{wֿkG~!>*db5/_w~[ V.v˜,R p1Xqsm?So1ǧF\S1lie3U5.rWؖQ=DGOے^I]ٻDSY5*y/"Q:ǯ+x'zoK$kw4 >DtrFPȩ&A$Zjy<4jx C>Vp|}aKsϐZ "~&zȸle8z);X/u"pb, *e[N4NtWB_ec~1H%Tͦ`@υQ5mo{I{k $p"HRD 61 iijv=>Z IOFk黻(%Yr*v!{\*qDQ_ XEѧb2Wʓ蘿C XI qE w{dSy;ݏCyi֬ӥFL]2sׯ ]Բrgj qfj_IfCk\z% N&N.鮷mֽBdjū_ hO\p?{L={[U D(Vh <>m-9 8/ gLJ2AHl?ӥGO_keyBҦ3WX|L !_ta`HQ@3g&Ujg1 So 11LuVaВI̎=.{%P).tRGU9|1נo{iAmHa G($: K|f[_3 eȋ->Nsߨb+*eIM_4ryìS ?ܠ}Ч;ixF˂U)&%1fQ;5bD櫌)U5\^s m΀=^G&KIP:ս74twvq4`Ԛ2*/7/ 6=NtCQIvc+f~B< _);%إQ՝X%xCOZL"%|qLR' v6{ݍ[ajW[??r ,i $a1i \'ڣc% dMR/Yd$ˢmkFu5((Odohr'y6aҁ)yќdnSCU :Nq23Ojpє輴e(m9!^߸Hhpn d*^{ t)r86X 05e|G\gs"Ji.{ qA[ ~Zkn3Z7+UuуL!O`5KC7߂ÛY_0 34K]r/b'@S^F+j38U:`BYg;ebG:qjVI+)gB6fY -m.D ,j4eP6=#rȼ⫯] XxjfSIbA#9RTg9RCϤ'CEbHA'YzwA1fv]LN!vH/0\;&z]Fþw Z1߉I4D7F" wL償-(1ɀBC>Zv8ޱTn;܁)+q*3n ~F~: <1s1sB"AL0 2Cq-4Ds  1t?ˣékS2SC6t/=Ƿ'C!#W'8/eJc4N?Ibq7[t!3v +vh0.ѿEr7" ?|N7ِ%q%Rc0n< 6R CpVlR{mR8m`}qؼ@Ԥ>;7"xZ&`أ+_v1exP#'>`k'Dn]X *97>f4qBK%G",ZWn6QXq͝X;s8Seղ A#7ɠbv`/*`;̠D E0cogNa.&KpO}TX(>;Vtcr@Y]ƇZL*2 8>Fm[ 9fzhtzo7^jO]6ѽ8k̈ZW4s;Wh%D"]EuqvJ/a79K5!xdV>*!tҏHIsW|AӬ̽ǐKェkmP jdQlUH 3 z2߇ǜH'>eD!Sr QK;jkoy!0pXb&Uԣ-ȏ&ui 0!qD/ҟU#Jhsu Ãg:!n}UH[f@>m& b aUb#K8EYG.e[|sMe2 =wهYU?^S:-ŤyQaN7计ÀJ"7Bo!Uhß(}r#Q(EA A,WTZg9\Pטqr22s*sO tM D5isp3E{꧜4K}Tp_aK &;em% qb=>< Mq m\GڨjU6 Jt^Q+8JNC .y+m7@yLfrx.ˈl{C,S~Y:jGi ;e$T#bP)>tW^ |,9j`horOK%0'mBZZJjvfnz$ 9~᭐r5Ӫ*iЋbp5iᤥP3V˃I~0\A;iFjƔ`'&g'^2|NHgŽ bZC?9ސ[ʄk C0CEhGH`B9j3Θ=#I%=d2z 39_BϢ0'11\{QC E +{h5W1Qdb!; N!R/Ɍd6ޗ8ܓA)ʿǷ%#khQӋ{c Ob#g666JhüZrZ ,p*{Bt3n^q|$L@ob8 _7Q㿵U}-h)f+$qA*n*&;_1a$^qȧ6gp\ M/O)[|6uІEH8>iK) eȯTD?#^V #*o |:zSy )0ȇ_$V&}e81h). LS~G8yO=aG>^toŰ G<|Z[~nb)`X1 N(FSKG{sybh:8׾$*qw %A'؂%E9Hƹlw݅s0 l2G/l<=-'/ 21aƀ0룿1ݟI) 7Cܛ.]y&HLqGvRn.5IUj7kSzz;\ AhRMEߙ#.Qz ?j}eQw-3_Cq?C)}݌/s}=u7ky?{u>žHހݑ][^ē^-}d-V =[k%|)fnض([x(J8 6rPDv 䃲Pl_rVTxw9%8MHW(Y>[zʝGwo|8]w$㕩yQhT@ʘt!A+/6k $Mhzin*תNgli]F">:66ǙZ'l=XE,bz>% `$vIJʑ]%%0CGu?yR0 S~'/QyZ${ S")\EjN/|ҹ]Ў6fGL4ߠUw͚\WEo;fjm]muA#%Re?S~(\8g:֔sZay8`:ɷHF%fmGzahoL3s@q19{]d/Ȉ)ȣ( :"],KDOZ>1馭UGn a}hygv^ߖズg2l+ʏqŎ;I-Λbm); jx Y#`/T)Cp^~x:p)ހXo,.&i}cFuwA$R؎Yjrxg`t)C y=c_Q"]=%}QcAGSa4ç->v"PfSe@FST34z|4)y SĨSSr1h? M˜c`B ARMqv[ɨw\dp8oS庈2ePň@Z ˅K ;8H ;UW0#V`ۿtݿFHF[qe&#>Nb~ƺ=ʚm>|)1} ֏I@p;D, kH ]XҸe)fP[w/zSU!MlQ4%I=Uk^JBZE)Mzo5005dsEB8>{gBOңsŘ~-EaD1ƏmVV]1O$GJe%Ro~Ĭ F?>aDnWvؕ8 m439-y= 8l\{ܥTkQOٻ4Odnl] +ߧݕM\"teST% 8t$ aj|A|Db#>Rd~TuV|ܩZ"}+uOX1 3dS mkRYΈY\{X$ *koc]<'"dgGpN͋%C,$Wmܞ,Zu,7hsMMClr90s+o6zդFJ#@µs#P%ڝ.$-e(u[([ RS[޼~h쯯x;k͟,Aͬɀ)SL#Y9zT`3un9EkR$9fV-c'Q^4u`%>:&BIÙp)jJ s_kP=9+>V\=tK3򳦚v \4X˽ɭP.oZ]zQ/Zg1`&^Qa/07I]ȏe b|u#hW@fPҼL$'>yFS\5ʱ,D d[\Y ٪s:/ oqt 2梨JĎ=m'^"#78>"V#,1=ϸq(켥2U,؎)'XC1iGwM;l-,uE;xڌЧTUϢVÓޔC9͘{ZT_T92"'L3.T|aSw1J%)?(S*\7c`iZ\(j3_^ !teoL[s^#'X0+mKPСBY# { W=L8OO͞MXмA9^ .nuV3ϼa33Xu*، xZq7>"Dy3TUi0aiCG ]dO2Eh()ǜB|nT_ߙN(bP>ZOR+k(Kd^Y{t;BVܖWGtN)"@؂ @_hE\x˵3}< [zuWRΈ6FQkw,Xf=уR3 gl\(YQz8 X`:ƈCPcɤ\{Lc?>w53kAKZZHREJ:FV5 -SXJV'B~ OkKhg-#fyXD@%66J6kIV@<8y.AɩBrb6gʝZ{zXt =*A[[ Du2}|^غ,n#1Ѱ`K?'rFSWOfbтB[L0dK[ЛҾ^ 4R'+ Ą9t<16t1mQ L굌!=] y~ ƒ`Ye78P:Z '7s!w޹E _/Q9KHܓY>2mDVwlzYSߴxB|TmG{1ã2IڊՑWhL?Ӷ.A3"eݫmxຶ~|,-کi|jmc1c%WMg5E?*C*4f%82'dMoӟ}C0Q+u0Y~}i3!8=Xb0e1#&-dZ :"d N6emUT4l-buw$|zT i_!c#y\T_*R ]qT>@@<7rdZSKӽT%6̷syOS~AG6^Nl ζ}%&wVZuuhonoG\/=ʌ"Sq[z.bgB=v $ÆHV t~n"lnS鮄ŎVt"i0zʦB,1$SEVvv$^Tb.=XfBZ)"ue U1JӪð@H+?[ϓV_73]vm +~>pZBC>YVpK<%^1E:ZExwe?<4H-ߙL_M][& HR`ӱ"yNqkxM7߯7aFN8(BvLUb,8LyRDA/X (_?4_d@1\f7vg<\{kR2%{_pW?~'@T$ka5)HZ˻`YL\F-I'DN",o 68հLD -˳-Wt!*k2yĢ?^!ڳD' fsR$hοw%=qF{Bs;.4=F/ {"g_Jji"|)P?z b}Tmguc)d?ue;3it(> ? \H>_W\H{zZҬ/-X`m+)"Q { . 4@)zP3\*:!-i6{}dc: %D^pʸK}whƩp@ƈ #z%񗵌DƱC3y*fyʼn .. Y[n,;"VCBTp읱n ]e3&65SnnI#Hsh,auT4VhĠ WSV tҀuV5(B'|vʁ} #B*ZV*Lw67_?pob֘ )h .=rm*_td=L$S֩xFљzԆ2*`()n>B._Mn@]fG LB q >_Yz|c=\hzA]\<_z; }ct<Sh'wTQܺ1!wrd[A^ǝwFy)ڛI ٫ ^Zn(m8G,y3 _0lL+ - Ŝ~B{|p.*r|(G~R ;Wc!*wvU _E dgn05WlQ# _f}HxJB,B L+J#@ !uzt!tm{٠ Xa}Sho93~tW81}}V qfcZVx Vɱb2FhYTDm2 Ȓt_,J Iw5,+gCOkL5Z1j)F=SR7w(7p]cjcJ鄬-]>ޙ9v=dκa,!p z60 C|7Z,\-v=ܑ>>)ڴ)I9!E -nh~u|Z2L x؛fjrA/B@WJ(7Ȱr wr1pcB'~Js]<)z:t0RIs.^ڍ+a<(X۠M U}=8oK`N- 6B--3b @u+HU Oiar>,p\[)aJKVm!!kw4m #?u.rj dXL1 D( E;P%bݧ'ۚڢU@ib! D1VɅi"A|:xtO0t8{/ں6cofJFnȬ̈2)0q׉Lr/~9do=% |OP9;r)s^Ñtlm砶ڨ'crn_@)uuq|yI[Cߌ9-@{ p$J>?9˵\4uTġscl^$`ke^.XiLZ- &I𫾬[cץDţss t?0$z c=a8y ☔I8TSځDi}YP6sPL _*quϩ'HI`ͲZ:9Aع5FSGm Gͺ/Gc>})L&6bʝaY#PBHzplR.IQ^_'fKFElx?5 y<8@5MwOeOkc6$rw]Kg.EU.WCPIT-Լ{52VK5aN`TDC%rKbDඵ$(q 8I\aaނ\Qh2{my&tѳGe9 Tr;ؔԉ~rnF\cgrI:z&*`_p䕊Q3[Ƶ^-1aeayPnt|NoJ0cOAxqeq늙b0尋YɥgFiu]=,I<-I}7R"OTp;/ Fյ;S4Wq8;k1f5DP% dV'E(%5Y4{HL_R4MvN Oem(bDkm7.gd[!Rco:F%5i#d Yk6\\O2|'|)bS=d'cN4v),]Unkz2F`] AT^ 㛓z"iDo'aEɥAIp#{ݳ}{z{=oՌ͋;?L̓ޥvj-v-v得;H?ɐk'Fex:0f̆qY14.{ZrA ˧czR!hJs|yLqr fyKQxb)) 0,Y ζ! P$>u1)s:g!UzGlCjM=t)~xBMD.i7g97RGVK-lo "SGNmYiWV~Zɷ/W_˅yYUfv 7q왯np8"j|Stmrw%|~&lUkyCP)-8{ɚS^o/Uq+掠fާ[vduh7Ôi)>TP> g-`:mg[w&xl r|04^ UqXd>Ք aY==( JYjbjܒ0 *x+wS"oݱ|='cz,֖4j_QK,9@'֫@RPcy\{HݝL11k#r9AY$%tYg6e8lnOe_#OTUbRߪբ,8sI˱3EdܮWڤHcUHi͌t9Uvh]ؕS8j/9P8IcYbc7C__5Yi7GbRfA&!A /`,t,w;h"{! ݕf̶ӧHMKm4z'̾-MO73بI$X u7Zkwƛո .qT `3T(g1 0Ȧ/z]bxPAh?NiY&u@C Ro+6Rv]2ެϋ(mÙW :χT'k;sdہ5td"%s.4IXL_Q*bMgEM(S3 J}2me/pt{vv/gU7ʕ9-iOLJ].21mbȋ!"6Zp}xȿR ?a\0`OdjP@Bϋ7.Am (a3c(3|e|)9u>IFPOOO}|^QkKbxDw%eWP? [(M!(2suOSQEsD [iC[)oZ=q''1X= %P-)ttXǗ<,oSׁ7?v\bW- m>gZidkI`z$0Wm .~'@L9: _fI4?!oU༵/I&P8M*2l@ߧy\n> {1|t.k(TPSEwA$EwrghG!*IO:&hم';aђ>Y2' r5Œ)̂QeTPō7d6mk>AF/˕=A(d2j3V~cL}ܵ.kC]ra #/a{NJvVs]dR?SpWS}R| 8L7Wj3c,1+,yȷ-v֜pđ[FHv)Gjci"8= aPɋK?W2:#AI dG rusU㜓TN8%,T%JstTQvL<$s׹I~[1Ds (b@'>|J,r "HAe0G+k3hd?] \j_QlܘY-#pWt8/^z.۰sB!1Vs&}%*:g62 H 鹎ʘ6AF\48S4yc(d\TՖ*,S .L*>]f>[CUMb_.H}IAGO1U6Kcl)mssE3{E8U U$%1"w3:}zjX@ybZE-D ^Nt.R#vee5ܑ[ag"&ELޚ꿇6$T˪`,M몌hCӚ)Xqmkt2E o0߃,*ITq\ox-M:8 2¤KFF^"oX?;i)F35]V{eC䱌Q$@!Y1%Npz)/ Q~<GZ[+^F}XV@4,cRZH`Hն}>ixH=+Nn&I}؃lWA{m1ɝ'|{F XYs®Y4\; )Tﯭrq sb #~qZu?kB%.!ZY`̦G&@Ot}NT[zVi:> >0ÁX} 1|)$]BZmmLObm3驋ݺsZشՊl+\BmVJ'$im_ѣ#N W)ܖt %DO>q|!eĖh@&"&i7Ѓ>C zSPRe Uxk`/gp6J۟wc̎*x^wI&T,? *PZuSƿ,O#  s%@& 2ff%XOz {cF]>3~)ǭi-CHz 'XejR>} .0="eolF},F%Nxqo$KNo>LѰ:H6E__:zG$KbB(00(=ӟ q>-sȚAWvm85q3fc˭WA!یb)yO{dFjyX;o?6h\L]vI^?gkPw"ƐXGF<91LS{#K I·B8˥͛:rlmg;C]_|[N៕ w7~m̹B#2G9 cFԼ]fUSVq|/4JW+sL gPM#Q$܆ð >(rbh$hj.{㖷vf#,BZ@z1 RC9`%eu 3z#29o˄' H"Lr hp6z{A|ێ _SVЀ̶lB6kjiaMHi&nWqt)>t"+KS!J_/C=t?M,τmOR2HHdإo=7đ"51_VAgԯ= X8fZj8 &F$YC`S$,"6uB## sSyrWj`đ.c4 66̻Wܢuel(Qz}!)Ӿlt+\+yڙNtoRX .JoېzKE "mi/.!+s'f򪴛K v/u1i, Q˲il |XCLAsSE;GM.a*Y0#'1&q=v|psYMNt)7 M\ɟF;9b7i`_s'm_̀|{#S9]齸MѦiѥRwB+g2zCD#oDT.^0s|xE6'שV<&c۟w\O1xz/J0yHcW*üVg\|PD񐣗*7Bߤ$RW >2jzI88$q 7Ɔg? n `LՋ W?fGU{ijg5^Vt[ͥn9AQMT̩MOrnZfb9H۵p Si%|JlO7VτP4,NsL7~{򲮤,Yon$,ۚa1Xm^T/J<,!<Z 6 [Jp)j8f QW-4VIA>T-qs|-4yޝl*@mp}Mi تÅtħ'V}4"zFߞ_ C\RfZpbAW^XkƉV5ţYx>rA9s"VCX4o7_?<,|Irh>֢E#W"ϓrjpHg-7_/;3Xlzk2k&J f bOb&cB@{j¡k;C(*EKJ)w%H$!O P1vv(!p-"gu-CU;m#Z}ܽ`#T# Q"#u)aUh>o[N39+F }}Z0E8exALML(Y# j~!"_ݍץ4 ֓a f LW_ϊnZ-l=_,3.{1`\ UL\(s2Fp\ H ~|&r$61zeV;rXW` RcSIXp4зpjJ׶YaS"<-U n`mXV^Uj=q)kOAb0Ɗgh?Eam"t3盳#M2,ȟQ ogbK%?(3U1&,`AEGyS8w(*SgRq h(r-/с;9Ю2N\?I{P`)RNX7XXFxSƝK L=*VM4`RjmbQ'@0x 2ɸF_$*Mkzp.q /]^}< ػUUT񻨦Vy9{J¨rnЃn- kJKw\B]Pzmemǵ pfzQ(Ų Oc4ʙR؍ܴ8n~TaGRE RJ  v 9l+|LD檬?Uѥ}`wTJBE$4QNFF}թfՄƂMB7q{τ[qPn'PSːn{yx,{QuyY:&8ht |JsD[[:pNeÏ٩:ݧ1ɏkuU)(\4IѾ~[,8r_!h Hi0Hy%'/[t#Q,mǥc׮$̆h[[9ihêdD?SM^DSF KfAz)l_nEէdCJذ~\I4U6r\ l>"p9tTMiTU_6 <HyixmݏƇ:!Xǔ姞I3Ӄ 99v W+n/mY.fZ:|s6-\?̞/15)MlLWXVo3†u^ܘP2^ICk^!_6R{.^+ bc}ΐw뇃5ϥ;E Qs(eNJhl gϽa"_:9;a'#ՑHLĿ+ үϺ%Ϸ~m]CE:j9r@KɊodϕ\]?BpLu%p\pe[Q9MjW/e$cX`0&q6ː$[- Ht+jChdHTTYBr2n V Q+ol|(q9#P8yI6}͗!Ya!:l;,_'RZó+ހrOZ0!!}7rG.K5x74q cIVv:q,1宖ȁo$f^8vc%E5?U-K$e&b0[SpZ"VNZm2CyV#yK  y*a 9ƈkDALSP*t5&"3_3_}I2O/(9*#6`DMݒP"Z i pD`$&zMK\\ĝ7r!HƤđ'JnΏXx ݨG# Φa7"7y8q#{|qutbsue1hxSX:[]f+Ύ^4겐YcJ 𑀽0/ }}͊_DB iuJ7q웁Eˊ|[FQo ^H©bP|Icy^:>̎qg bvPZӔ K"1}?BM]cWA9-ML3/Edm kY}֓V1DbZ𾟵5)^}}0ґI/`_AUtEi h4\.dCe# MR()?*bƭyi:F hSgJ=t \Gk4"rZVA4v_$;.{y9uTd8Afyntji% t]}]QLT_ )(ɔu>"`.| V0>O}`- o.eU#p%)e6` oL,&v B%u$P  dkC07NZ6aS]5it9l0S0gi't" g*!= GbDT[9bCt }[A',[Qi, MەvB뒵Ct:8WX[YŌ(PMg_RKkG%o>xH=QDMzyX'^Lڄ]3a5NVYv?ڛʽJ_kKEP3f@rK[#i{ܙSdBD<2W'gnG  AmJn5I}:9e&1]P7z2m{D=il4<[(ٶRBȦI\'K[V᠇6L$5A=qbU*obԬ{.0;`8ʋn8C^iR冏{)X6buDH&N|*|Y5i-OʺxyލqѪ1SkW${e oH#V(lrh-^/0ɺ_g4/0el"k;LsM- TE >lM;>1^!MV"Oc!d;AM1M6P'L#fڞ6!9y[E#(Q}(m>(Z1^Ā|Ju)g]p >?2ܖCE[c&~ZC%!x<=( n塀0[8%:Z;& Umt#ޥXfi]w>BĦCQ6n71wbJyoV(ҾG6YmU<0&Fb!篃 %w h#;TUޫ,*?jKFkGLarWGfS_[8,EtZfyچ3p%m끃NLxU*sL/RDJZYsizQty?@<ߕGXWgSԭtզZZkjzdA'SG/m9Eq׹T5;:Pz{n".GqqњUjcKO볲X&y"K u.bS'1`s>ҼȽwG")&)U 8r?F3 Çl`< G+7)$T:U/(@g"h{Qww ά و/zFUXǣ~΋#pw:У$]V,9>L% Tg(cuPg80zaZ<&lͻ^QfJWja+fadj KqK.%>N))~Gx=f_3N~Ь^xp.*W:^+a9:coJdOi!&-yt𑸆! I[M] ^:-$fp4) T[NvPǨ;R!t=ݿ`./pշTݵ^#ĮH2FkK^C*mځUx.eݭBۥme%iXKĈ\ I2\%|m4=XAlb /#OAܣ+޲31WyqN6a0 g{}Z;ic]Jմ:ڄl bM`Yð,&?ȍz%K):W%\d-HH(#P&{ ɽMRS<94=w׽@2eπjLxdg)Dؙavl2*!|隙Y_P=ER_5rfڝ50UJ]sWdA{~0?e?lӺ81dS2G׀:{>k/D𷇌m r||~C͋.9w .os!n*<;ʺ6{K L$/i5ˍQ`Y^@SjK_oJ xxreRRXqBqdw@F 0B0b; ނ,N_M=r!DÇuل 5Sj4h,yEm2*!oҳ2>$f OqT/;އńUL=w )o>~>Dj墄T3b9nSntu.bBmL3:.9߮矤t&K D a*~㸑3w`{uIX57X4Ver`XXvF> 5ezʴ}^/L-UIAJ<;/ƛ(٥*(GI]2a*G”€:/3vp*!@W6ʸ}|O68teL6~i{ݒiz]Ez VUɹ)E^܁L7zA| # BD`~/> xVpBn  -Ydk߰6WFG(K\"ZΈKWǻ޿v)i9(?oabx ]]E;4]4!QN۔ݭ|>YȍV4[YL_. PFH-ULS!tAnR†0y;&N Qw1B%:#W^ \ح(J9|ܗeB|QUO ZnozM #3mFtX$Okچ|(&[_f3*F0C!nzcl9X>q~TyEh{` 4}.R@wZ&$$ڢMTt c Zo!}[ƺf0cz؏U"]G/!ݠD yEKt(kmU}tl*#Y>@#n]0]Pj,*nPU%DmNN#ɑ>Ηhmz㡜$)b+qUGB|>NԦo G[y4}?=?W3^߶d\)s",:MtX`z.H69Ť? D'x_qRb5W6yRȪtĻ1+=rK֔nD[_$sq 醪6%lmf9Sy탗 mLn$3V:vSkUڷG]dK:cm Mia[H1)rGCNHytи>I+=t ջo˚ 'Q_DN8N:S&FE7þ?GBJo J0S @,Ϋ6pcBXڅ] #~1#?4]LdTaatf1m[4Uw!]`_'>ǦNz㥊*F+m!v=XlنѰB Ko`Q18׬.Oi! Gg[Th,桂~_ZZVg;EPDeRv,+ƕ#Rά~"A !jF= 4CR0?G FJKzͽA^Q+5LjK_Aĝ6F> v.TW`'s`nh7,A܅$AM/>'}/-pyfdZo!4_\ uEG0dNl^"g$ls 4,Q]o26=&k* F\gA`uTéuyKϙmg=vs.w #䛕${f.sSCs6-GH1<[5*_ZU8Rq.f X 72}V"a[5i[^*2gǔK?p~fpl~ PXȱ-V.P'^jg=~i+ a0`q!//R2=tbgȣ'M_tcdm,Iks3>Ssׄ)Q rzVRR2&9c X2evI]L~bcȡ>(Y#/_:{BES8G KSAioan׫OsNh;?͜6u4%PKM^bV4-*15}ʗ0N;:^nĚυǶv?ifA` l&z1suʉY.k23qf9CRZxV}=[7.䐣Ν.g3^-> ;ip) ,U {1\JQ#hL"{,OQ#w֗ ,UjV+0.#( teȎI%1]=0]H2J B,hkbgvH}T# ]ޖGy|c ~i^])a& 5%gQU2{41() AEqqI/x8?:(^r7'䗉*3LVw05cP2{cb:@]b%k=H~ioPH!xerMI8Pi{:n]Qj5Eز~bC:ֺ|;Le>\_) YWF:y4X1o1S͟dɆHON60pvrr5={lYFk;&t l }(xs+@!ͦFNJؒ!w+y\ cG#$mTYwL"(sz̀i~/SH 8qҍjJίٰICvńLQ3%cE"=,|OdS)]g+Z,Fu^ ә}̲ IY~sߜ()E *1VNm$j 5bln,ԣ_q9֑6aL97C @:$*ZJ{vF:u'$R Dg]$786$blF$(+H i5')p%KR =N#Ͽ?.LZVh]E( 95X |t{X2ca[Vg7dN|Kludw -$LN»X9B@ŰkU?׋l2"+ 07ǰ$' @|}AREpJVQ:A&cQ^80\vBM ۿ cSEiٵ~?ج$ȵRtPo@AzQ#/'ۥoblۤ7&q?jO '{*ȩI;Lx7O2*,%LI<b@(TyD%]ef-0jzPu u*d4{}(i I¦eo5Ts΂L0-56ݡR6|ݶXS"~u/;1G<Õo\L3MIKvXXk}PCY+T6!HAz32u,oH_T .q:V[p;L)E蓎]|ɋS3M:*Q0F|5d4l`9v gLĶ oTulH}MhM7̩& {D hUImKi@)k:Wr'O:>Ը?눈$ɷ5u1JkC޲㣒?.m.w;OoMs>wNPg\sKlb뤓TP+Q ֏o FrQ@W3+e6b1 ~"ꜚ Xy!+b+p@-J~b2oMCt/0sp]i\yImL4[pukB9ֱUir}͹㌧?"}JGw?wc,6ۭ2U ^-Oe2蛚lΒP"oJNw vA=e9c#_:ܴumdEZ/I+4 }+hf{x^veuGv18xA:iws.KÍa4j.f,gsEGAA|/蹷Envlފq=)Joؐ;5&<-'SG#^hrR>B*@Ԭ' ݩHҎi%9aŽoֲfHc~=Nϟ<,݇KJ1D 6g4Qz)ϻݍ;m-ο9Ot%'6{Bξ"Ec7L.A:w5Řr'jP `鶏KxF1Sp5l{sϐզiUÉ 8a ~7Š ث9{@"Rh19ڋ[׬{OqQ% ޘr0KO2bb>i<,)zXY6{h[j>FG0;5ᘙU`eSQuYxчf!{P_m*<ˑx[f̤yuQD~J]cYD1]U\cĦ.3?`$~W-dػZBk 9֣`]m9],!GTyve)@=,PFR,ֺ~aU m7΂T#ekҾ;H=:(}mIHs5LkYHM?#ofQXTAnf #՘ݣॱ»e^zV[I{$ ;.7QiBgzaFѾj7㣚% S= 6Ti9cq1adU9Drz=6`}C(@|iⷱz,i yu W'U8ڢ(Fΰ_*8AS_a/ڊj2:D}5*Dmq޹OnL0Eqam=~&ƀxгd|aA̽\2^Ϛb%%,91o<ڜ޶2Xs$g{G0nW)/+{|b%Ej@Zgߥ^"Ƭ!XGH9I ^5 /WqMHXx=ĭKpL%~IY ŤҀ(VŚW,kNpÝW pԚ2CFϢFPB=!:ܨ T$N$:?қVLpn!]F\N+c?Rkbn瞨0fTM|?PONCC;׬v[l ܹ-*3lZ5 !C ET?29|ĉ QT_H&׾x{$@X$gTOb.+ta jpN!"}9l Ֆ1'cۓ~Շx) 9`Ƣ?Vs^ Vj?at[{{<$Y20HGa 6W7P{#mٜo>ԧ*@YijA-jYh Ӈ C(=b۸(X^2`mN[>Q_He 4aDBFy' 4d]~S* `f^{5CՅ4fYx<Ѥ9pa>xd n n0R QMI^c])7K8yu&sx:OZ Chb[ÚDB?c  ¤{6Ύ4y SUveg#Nh$-tp b_9=H/W? 43ʸYKM6:zNx@9JhsJ %V1|HoF=8Iٮdr/CM5˒_Fd/ryo苁ɉ[(ʢڿO[àurseɍV9xX ױOz#3bI*'c7`3s+9- ySޠLwS2H6fj-kA㖓rfCy=ṡVs([i.؜Bv}w/' fNmyr\vZÓGpq^Tܳc=-Vt_-M{iP7w(Zh)LVs-'?(ŗE$zMG{AL}`O*n0 ͞awx, lIcMoj!TAPwCP$cQHaT%5Qf|3+V'QR\ 1p<Cl(dx/[ĠgmKcby(5$w:Nx}XLb5|JJ.^P&9V H"] sХ7[Vam)6QOx(,+X,W'dy qw78; leX>_"WS%3׸)]d&harʑqڣ^7w-CTȑT$Sd9sZ,sR2'Lu?kz𖝃 /-B*&f2w(ʘ>BD%!YK 4k:@8*e4}e1a ,SH^3t` f yzl *8`st*`v7?ax͙

    XgIJ\'0[\j|5L&??, #c,xwsm4<XKDGF!_bsN!{e`]r4)dV_~ s}qfEK-pZ*A S/ވDEN9p ټIU$툜PP؛_ *UlMR>(3EoϹ؝C2%;bI};ЬYi~n\/FMy<? z^K戺N»E5ǭ@W0X!Vo;e*$lt^'04(_@[)W)co [;D .p HO:ɓɰczOcY2?炘,τJϝ܎L_klt0Y(HϏm8Л4(uR?2h%ޝkqhv JGXt*|9"!*sM154J&-qU?4,//+ X\,A"rOء75J0)BcԾlam{G,/UQ2u()7"4 "[:`UWlYFݪW O’mP.2kDb@V+^jhd|n̘;5Hn=gF2NEO g*,iaݧX#൴Ϸ7]W,lu*y(fPG D 7ϜdLFMV>Y>c"K/ںBJO3qH)a#@f'@tCwnj$?'3s:xz\iM{{X.Oh6+"d|g%mjYxjƫxtGɶ9DD_Do?F̷p\h' Z8tgPvQ0@MmR 6`cַY#ٛVe/==VƀU#HI6ƳF#&&V('hf]kLR=M+,UŜf/x[ LXAkbvP轞ɳNM wy}{"{O6rNv}n$^LBcPP.y FUсzanrm(Qd.w_{BƯ5>Ԧ T GΆGkp"#$)F A3$$M*}WD:۳83iln!&_ypm5BaIlф*3Kd|ojni! "Y{Ğ11`h6յIq<rX9 L<˭jj[=%,pˀnekbc>>'Ӟ8 o^^Md&9ZR4dm^`Ҥ0ThgPd4YlDXeUUȵ1 [B=&W0oPa:Ұ;.)#o(q -T-]|❚[X0q :⌁«0*Ff-UW"fE|(u5`]Ӄl~<ZꈟCl7F=+, O5 {b%L*l,i ia{FזjP>Qk1 lw-c 0e`b:^ ě7 # o8qqZ[8v2MtLPo0u (YR"#K$ɐ+?+3Fӗړ8oE{5E(EsJ)Bl? I߆ǽ@k԰;e?=fqh@]֛/u C\*D_6h7;8ĹB'N( @#r8Uel7d%,_:uud&|='"iV)_Dlo-d'gb: . \ a5ѻA٫J_?%Qf1Fsm~Ѡϩ|/><(I.z9 F>cRtd% >.WVՃZ esIG(Bsv^Y-9Bɐ`Bzb*Kc8fnJeEW  GejHrWSas,|dKwm?Ҥ~5E/k'5rmLc"R& jrrA7HdLPQ _ 9qy ^Y}J 4aKU,:& a9ctBe;Ŧ^}:!U#h4:4ګ HWs3uZ~F˕I@ӆA̍Nbry8vΑ:;xpK#d-35g9g8z(Tj7RJ8 -> Ԭuzd'i7zYhcFžQ;k!oknTeqpx]h훘"N&6j%u;IOw'"qylTe>KIZ6s~/ۓZlM"*<KOs<颉Sϫdʟ*]&MV;7w|]!ϻ^~mgG׶X`q PrסmƘȦ0j딥EmB115.>(kw, mh8I):2̈UݽJ՚-m/Ş:7C7:?wg ⠰ӌLu=D[@%g/&wY{4Nr@;& H䳃a/_}ki)ڧc_N h EIu_Jȷrk˅fZ̈q7Рy#6WEc~m!+I|>ae[e)+j*H{} lrUK_uHBQ 2WGy ɏ|NKgyг?'xv`eGN|_UK'3L]54KOE1tyӠR+< P4.g3uN&G9 w3m#cFAG6Aʐѿ5p?ُaIyیKRY&3DnJI]37:u"C)\xeatyw[ T +ŪzXS[2@Rtf3 v@ b?.lSm, GyӷoQ8UHU1NJt9CKB8^4P;?IU\yꚝ^ǠpXJI͂>[XL~ZBwxιb!$9|]8xԓUތs1):_ H7 |]+}QӴD%FFEӅ]T~͠88E_=iI o8Hj{Ӈ W@@Y:cnfm]w=Rgz{ʣQX^d?UHR4Ox{W7BzM`j\ĴApk>Ug-Zc ǵi'3R& aNN(cOr&]:/RXX͘K|+&lE؅Ev=Yգ(頃WbU]NAyB+G lU4Cn6>ݰĦ @GV~XH-a;=P"5 ͇[/k65-R0!r4jܫҚT"wr/ا,$~xd_֍D!h{=DU^t YMETz9>fZz$KL t5\tPsPЇм)j5edHM]T@ \Zm,Һ"99RI$Q4I6O\Aҁ($*,e=_c^W{̜_ctN~kZQ]ezYLu7n4;|b€T;=/q[/s`D$f]cNu2ICHNSalMS\n!Jn E_?$˳z%K߂HapA ] pݯJ;\eXnkQd<<G 3L뀁QQs IBb&ubJ (6`a \:nJ:!rVŨx#ePp/HH[=4K4Tg3Ώ3XGY4uX, wQSN7pSq=a KZ+pH8NYYFԅ4:"J|R rdb;TWucuE]3plI]YBYkv :! V n i"0x:j8f*Vz㜅$~R0m9y[-i / Jm*K^ SL":c^Rulc++!iLKKe1̫Kl۝dV &.GI/hUfCwX%d|2d(w !pdvQ)$2- ۬3v| [n$ -\6dBΕZgi\ξ &.0uFFU06ҏck?DYʡɇّ^ AbyfEӴS'w qZ1p3K Qw$X9N*J bJ8;cDFA(iQ8W?+S܄9~T9P:c>Iergk;I?I|/k ñֶo2H!QJd `wd:ׯw!^ E<9D&Kޤsk!u<+3nN ¾yGG& 'nŌs) }Mt6v[ٸr6aLgTAn8 p!a)w ZKɮ+vVA""ب񿂟Z's6 1blsa"Gk-Ku@<-[м5.&iF<eBz7,e.ҹYF!gƲtodh&8` \sc˷(^ %䟨1 qK>KϞg-590yշ̇B\xawf ^o-80E ާ/:}ΩxF-TPJA ^πF$WQ_Xdp1* ߢr&|h=bRj?U<[VU 1!DD2if%=T.)BkvF:0ZBۚGȻ(G]5}&BG~ڣ~ 7 o_5?~B|8=UDؚ X3"X}ZZT1l^w5X<~jAU4w nnѰd_wm7my03UW>Qxh0Ef{ I4VÝ꒞ꂞlcR8Vj7cJYL/ME5J4=Epg?(.AePbMH,gCdw0+Nnҷ_ i}t= wffOqC9b,.9,_6s8ߕV&K/ݻ/cRf[g^;vzL8$:j Mwsj I؋cD/-[)T{#7iFp񽝡vj ٜB@~Efj|_E _ܥsUFTpF<ܬxLN.bә蘧Cr[4 ?c,9_R/JnQ?EF?" 㯿f{h& PK/8B"-AoڇMIiTuYfSU8g_a4i[sU3Y/΂TTjFLR;L3&QJ(JV#c=({#`(X'l7ᅤ'I#2kz~#b;Xwī?!t*.tO(^=x1gj*;IYH\O|^ͩ_06KhEli]@}"c0XRnKSJݹ&ÛGXbS uaP"U}J>OAbS P'5pX2+4ei Bw1Hmpmо,FЃGž2PSK k3\|3΁~D2X})>& 9w9`HkW­M@NVuoJ3e; ZJm@b(4)PL,l FSa@C;“W@]Zjݣn+Jy}R x6d{e}%\ʞ?HPLh"t' {n[%1/MܿivfqV3M(6NȰ`o{trqO!sC$+?dJae$,K\M۸f|%@ ?rT%)T8} '.$i4~v>y0-ƘwNE "_KNtN`;LLhZb^y|?jöQr/bJ~H}YpJZ t!\^"!1Gs&6hWT"OXS\pmKnLz~w$ 豿E|c Տtk$T:tq,+1C!So|jFMAV!]X-k @^@tZ锭ND wŖ ۮGvd-`,7AX Ի^dO0!g+#sq4.ºY!ta(*^E'ܱMsbzr։ ʆ7 +G3TAQiBR4j\ɨ!gDSu/\Aqz55WCP[|wV@5DŽa/Uf要]ڍ%'S'6OTpY:%AVtɝ]i4Kg;e:/ғq<(–BJ˾O`T] W:B"M m@~I∍%вj $H=Δ\3ARz\,qe9^dRW ceykB êOPa(ExF~SNqk[>L8ۈpc9M @Fh3Q)~hφgG h8o_V Xd=||u50 _/噌ϹA&6'6Yw{JY[%QQm7YF&bj|]F,8u*O?+h S r8 XSNi[øGOzOd DOjY^/O;k#Kyg0i3-$pry+v(C?$8]wbD펢Ϙ2ͅ*9#ۀّ!ʦRhQ ]r/a@eψA~8OIˣ6%XX 8]TS8W@HΉ]wo HlҺ4a7Ñ1g_@ MOP!ms6Ӗ e.DŽ7UKɟ(84b6bӑuCl.1DL<9{V|m(. 4LJoA\ԶY93ĝ8vvɬP !=&8#FU $c4spj{,sKgi(h".?\W8"9 +ҠAQՖ)s] !2k #EvKU>Ԋ5%x\gH%nT$|oҝuG 6=PhsWh ӪV0.pʘ,3b2n' ~׎y;%qʧ꣋gF 26"#,J+bl^/9yqxKi=㢯7dNbS2r#;7R.EIS4;f>fLT+o8tSz[Ym@<LQ~74:IXwCǺ 8nCz*֔"XlWU+F@\~s-9O39q\V>)W-"77}!3YV W]$e]%v #H0kaB^h7#<Ƽ4ك'[j LLF_2^E+r7.[խqi70T8k[j %p9ԻˌX-ߤ:`AĖ~=J`sO<<#я9\33}?m%WdC_ G~ݨ$f[$6y60.4Ԕ+0Wdkei,TV?#,u?]_c.\!- IJ$ 'k`;V+Eϩ#}Xg #˅"ۿڢo# 9ch=sL!vJ<] ^ fHg茀UoULz}f]j߄fAT}oa?XZ;; wQ{(.ZK [RLqŖMc O dE Vbg2)p0H@q.%+lE%WϾV(5vMz@Tu6)ҹ%Oތwr-8x]S@ N } 냦bzm K% U""GCsXeKC٘Fhc2>,{# 9WSX#'ŋE\=`bk(䆤(u}F v|ѿg 7#-'XPY+[AW NT@n9<%2?DҸp82"f^$F/oPk*;*{4=gh*\Ccld R\v. M{0B_ }@xB4Qsn0ĝݱGP8E(O=89S n6%PTElK=J#) W}&Κ0Υox 6O/\࿳~lfS3 &zOPDV{M&a-i4è5>b踔5ḷnv]ܴ":I6z6V@@I){'jC&BynX(;Bt"CH& ozR&^gb- VݭmN1ˊAJUL_,(wlpfR1Ʃ) F&Ldȩ;uxҙlɕWd1Ga9?keAp'%4|EHvy̿OyVׯax$8F$ngF}}'ngR:UQ*}3mn-Џm9n\c=ƅ6mŽ0T|XgL2jJ't;RlXJn)סxn_z-lhwۨyr ƸPei3Fżxh]qs(M$ďL2"g&&=nYN[Qyϫ917P.mI"jVK8 l+w_N^}1x,ׂBKlWYe#pZzHM[~NRvD_aO+Py/O6u1QMZۙ2D|Zl3Et+m=҈M+nK wnAcc[HWDX+mAWGk3QARkL@Fj'Lb_%k NZ3荵iʕ,@a'UU~0eN!H ~!Y7(EvkaqCl^qgȦ>lҍ Y'aD ڭl'zPvxxGauИMGPm9qo"@ XZ4a?5-r%ج.Kʁ)f#Kzh#o?FVQ 7W aʲ{K*ˤPYHZf}`6|p|$Hvo$?E&g&cwxf3B"SzgvJ {ϪAq+C;0A8[<ۤmgր*zhk}OG_^% ȾTl-֥G-1E{972,9ׂ/O7X gҠ-aًq5% #OKZ7+a QO*6c䝀{FNsPx@qm}{Yctٵ?X9q#tꮎm>S[6wa;LF)Իڝ[=K\b6$TS4XK'r r^9TUY >E"B' 4 0]UUA9M]_3lC(' FA~Ze{_PDX-mٹB%@d?(*!vrs͙H5wr.di3-wgݶ6 V ~$Jan/o ǫCKxE6x7ޗ؈.p[BQ˃Ykm5~cҁז̣Πyr48݌`Eto*)>pĉkLWuL %#`z>Ykۢ\KQ  A,DBx!٘WDFoأAY .RTL8_k=iXChxr51'8z&"v]A ЪX9+ bֺ …ݕ0ou#8cVr V*FF|y#{9iEv\bHOdh&[QS.%:B(Mv3bDΚٽF=՟:'ƿH;o+fL%3_P7R]O>c^Ǐ?f"2zTbңyIx dkdq-v(@|D%u+"=KQ$)1ނ1< cG%B]d;T?ٟ{$ӗW#_27'^g j"=<3c.nyA&HN#S[QiHESQ<@e3}1|AlGȥ~GyT83Q7/="&)eq]*kbJ#jZCsҠc;uߏ".BԵaf -60\(zPg&Ä"eWV!E ]*Ggtu/u!Ԥ[%+3imv% +UrԄb/ )&kIh _c[Byku3)79lI^L So/E^h8 !羶W%w8R j I,@mb47-3בؠ"bMge7М|劷"t+J2@0<>Eḫ5d;%E4Yѯ!ut4A8Jۤ 'v1l$]Hg B{@yٺqa=olRQ`:L9 ߠnoo1A}k6%CG? M63`. خ]WE9摸s@RK@Wbj}^"t^ =y466"e1)LБIO t"Np!I@A˭N_t9(\;sQϊ8ĪXl5&c-HSũY4d*9:Wˢ# 'k ZV :q AzBJ K~ulȃ޺bHf@Ӑe?лPg{Bbntj^<*!,,ӝ Ta:L0VײsY1dYE8={6C@D' r1_#ۊh !ÐolW[8-vKW(C7ye9~b;YJYr?ѱ߭Hzʆ u!m}>G`fr쫙lfN%> [iX|9屆evNɚ]owMlDʨJZW^kۨ$P!031E$=i HjNGA A|o>/*oqH>, VO1>MMkQLԸk^؃o}z;ljZ}D6bIq-xѶ`vҎ,E5D%%`Ckewf62f*7`XJ/$MN7ߌ*P.ḷ}P+ڋof6Qu Bs!D=g|/u{'"bFڷD t@ nw# 9QiŤ3ZOIe(GjI8^Bh8(z[zhWr%8VO˧HAKZk |" ϰ б6c/&զڗS6|=h< ׷:a7fC -Ru_}gLJ:r=S*ZzZ4KIv5Q)}DC57Q{N %}D &]F$i" ]T34YdۯSœV~Q12wpyBȒ0N5"A|3j b~r _}Txߌ8g }Eqs~m$&Vejjt9$Z7Lݔ q=@$?N:3=4ǖ1uScG 5;\nDa+PD(TTZ.-*ދD2Öo%=ugDŲ =X@g#c+ҝt҂T5 dj a4KЉPZ[ xْS_d3 ̠ceSE F]WeINpۢ.˔A.h!Cżg߫Ѕ.D:VVxD@ZLJQmZGȀ`5H B= my8eRG07ngJtRS*Qḅϴ䜘:䧔hߧTB)9ì>~}9KDV)[1FlQUh 06J"1C\և N!Fy*B>*ooo\/6trr ѕr 'JY(qcFLojz7 mE 4 *\u/G9j{WQtauW ճ{7{Na&P:hdqtخl}6t7׉ra`A7*p̸ST,ׇNqvjTi꫰G^11jH2duz֏T&gs}&N\\]wJ0 q+왁MZMTs4 wSֱM)Wwo] +8ێ ܜn*A-q38OMe6ztEԴUo&kl{k? ^Qwus/,%pНwqQl/`vi节xsz <=XFW*B"~=S-axw!A+RX8?/Xp|#:R;3"]mwAVM^;pQľf16JJd}{?8ɥL<DO_{U5kNAj{*xZ48醛Kқ;7`IWmFigjh#V2j5V ,NЌfp=@F^gS=A99gI`Bjќ'`|B@s|zgNb @,0w9NhgeOyW6Ows`T2pn o.dܠJIjڥd 9c,%Z hf`J((unhPgicxVE ]b&Vc+Fq%ul:Oh{ɣXU';XNdCHd%KuXR/&n}ܔX'LnJPE/G}+,KK4ޥVݪ+Ѝi!n/*l:['=r`1΃t]?[M/zXT lC8š4*)ȶdPR)(G2TZ~[p bnŚLԕpu0C,&.wº >[ܑEpi|BK*"yRNBkH{ч@!RNSgJTNT{|dF]5Hnć<Q}S2*Q[frad`$H7L S%=e)=ZdVLk(m0MW63bEB WU*5 }EYU ծԄ$ X{ .ww0o7TNS6"5=][og:*TK9Rsk`˟Y tnz5eTkp]Y]b[ ")gJȋF:3Dt'w`hW#Y̼.! }yTG.g'H^~mBP167lgW\9L^n7V?Zj J/oIw p%#AzjJٸ0l࡜fC0R|̌EHbʴx|uUة8Ч q@w(ARv4t)rMi>AlY5!"^:!G`"ž(w/AcH Wꂐx|>sbu 8ۃG@-?!>s^'"LT"pHt=1C,0bS @7̴ת9:̼C-jJ͆Z#yF.*i5*+'#BM  .!ћ j!EޞI,;v/n<ob#l͛ P N_m;," [q}-{X2pޘ"PT-W^eQ=P9+ n?鵋D<;oZ[#")Ԉ"]+Ja%ԖPvysk=N Y: C%R? 4eVCИ1l Gό}#;ׅ0<@(#[n\*\НGG;!W-Rwǁi$Ockr/ !gcSYgz_r.Jx 6xP"T.[Չd3dr{t3HޏRՐv`n ļ@98?l# :քЂ0"lݳ%`@H#S`[jifݪGO</_B4ꡔ"}rcۡ!*;/С^h7B ;xZr[ү>L\QqSpv?As9<FS 46bݾԾR6|eIۨ_j&"4reI{yv!w/UyQ<: ~ĿZvas1+ZǺTQnZ[uLHK[(,OcǪO'irq@7y%릃,E8[&Ҙ0G;!y8#3:h)[K2Dy(Ϧ=7 =F4!4*vb8yn.)Bjn(m 1(IrxylUh  S]{ 7 +md 7˳9qH'h[jBjkJ2Ȱ\#!X ^L(՟#f,"8VDq9Q(L*<\7I \|v_eMi 5ȭruX'TNbm;7xjIx$n5Wk|(O pq`낯9"WNgS)`vgv6QF۲5>/ήظ`"݉aVmFu,QYOH|HhJɃ[{gۢQUmN3+H͈pXfR:L#X;AxtպDtÐq ] v5`VCKR>I~>KWFQL`&I:sKo(G_.gtk:&P\IcQs='HN1w7M+̎ʾJ}LfܒėS2۴BWX'L8;p &!TOÅяz?qN'B \@˧NjªGL(Ց LF;Y.Ҟ~v @EDtنv_qlk̥DF8;:K2Ee9Rd;daRxGJ >h>Q8~3SAuT&\Z ҕaifL1381vDӕi@ C-JJ:0i=7&nޅ*UuQD8% \PO&e_RHF"$k c^N UfDwtYOԄЩ5 ?p!?T M<;*JCĸrP\5b j.kr #G.oL>wU9R[=LF'1i?bOkPBxR{͈' ؐpٕMX;+_ %_6ߘpݵpu8$Q;ѻBe*{Jo<օ/$B 㪂ӭE uNa=T(zGiꏵ9%8jS-˓j:TкV78PEf 1v_qkA<@X@_E/A=g4NgH^_Z|uFSE6;QT8'>vF{y C#B7~Uti w__$FQ4t,YQg]V&6?dW4 O .#Y_nD1 P }V]"E"Ʀ GL~ݵ}ôeɲlkoӅ`j!ɪZۿ'f -DJS?Dj?1je{,9ϋ1t1oD&{w1 ?#w>{e{.:ntN#$ˀ n[ΚB\vZ|E+ֳϮIpG =+Hl)FP#>A}6*׸ yv Ï0lsb6ė.ҁzĿ-n#6aFz^4?16CŔrw$NE=w{c_r)Pew1nr32gLwL qi8e&Y`#-`z<-&w( j( U.*MrB jcНIr ,\FtDY5R>'ٔ0OЪs*s`ʽy2yQ\ 9l^6?m0Vub-FK>oҍf_[,H?%rf^t@9TOfT$^@Flo*C r sw1SИrf]կd ozNdf'~>gLX7geﳱ&2*s_[=gTSJ:^YǭLI3w\5'EMp]  JW?傉~ gHҕ ;@ El* \v-{>* dV*gI8AAfo%C چ27h9u{qVnY Z$Q>%lh,JF 5)BJV3ˏ/7Au{E,#zq/}G"RyjUBkul%k4U rXd^ *pX :Cm&!?v:OC_ߠRZn6 >Hl_e` OAX)}W(Lꘝ=&CW157 Fl|0Žۚ(7rzZK鮶,.xJ$+;PNiv*׈(l `tb_4K(狜@wW7aZOܐ1U*B), ejgN)xMqI ]NPU9`H|e_t8s˵V6>l>Ǘ@SA 8Ѳ;nbg2Q.&_Wf YiRMe TǦD#G5R[|De/tPwn6*hc-_ j?O~֒qS. ^p1J/v*yg<Э]6@/< "JJ2c}諅dn;/qNb>}{+X=ܠ>GG&TuNxXAv\4iA%9B4 G=˩)곧 f!qSЈtv$Us<4DГFRPMI3v-:e7.q^߸:UGf끘-1wV?bqrShT<%̌{YЅ\l=HI28Oer RO!\ @ ƌh]eDtjF{u!5R%U+oN,Mc2b"sXZI^tjn KS:KKgoiY_@sg6 r!7@PؕÐ:be&6>t_bO,elW곬@v/B43XHztߧ[A ?({ft Ɂ;A?)h4f<FQl@Vrp@c)"zFϮo.%3ytb{FgZ ژ6|;Rc |giI:A0*LīcNIq\ֹhѲ7tIiMEXX6!(FE*,,){PA1 4.qCwKQbɣNRm&GlmD4t'^ӭMA m jt1uk `~8X+Ti-Q7 hp$ŅT37K4N30_\.§ _:*XW3LcZe(?wζ~9ѠIVsgz;&lJIJd8HVa.3Ewj].'*=mP^W#*/N AKukuwwH1֋jǫ8*YMhѼg+g_BG2D{` 7HM8#2S aKg6n9xk!:gM=?RI^A(RmfA73%2;_eq2Yo-h ~*U$u wVC@1]{d*(4Ǯ˿ݬ)ArG?a^%|DCt)iUT\K!qZiݯ5U;"Q( )QxL@JY (EѲ .I0&aIqғO<ƩF~Z~xW䱼WN?kE "jZ.8CxO_{2t<.*fmx ddthpTѠ.Gy`%Lgi_38vJ>}QP}ZfA>oOe{h]'\U+\. E*и:AAhԾy"2Jz!>w@ > JJ `4onVwb{s brSld5OƋkKV:W"u8! 2%WfS`OK|ߢj$ۖ$.mD!q½M-٥oz̀d!]pJQ=ٗ"Br6aΐm^oƯFp)uz6R fN'cml|H>ϊ 2p^i =KN +zKE4F+Wej ld6(/ _ԯ)Ԛ> Xz#g ?½l a898Y=;'S_| 9R2ETa ˝GW` ۭa`fo@ZIz|sYtR7 _0 .= \ sw=[k 3AR-uq{贲`[j"bi3ddnZS27 !AcMN*ƥ:ki:mXw[SUF7%{5yS`z_`A4v(洙geW2pJJO~P|7wE(OK)5˼ȋÆx%X ݠ Dkf9aƪ;T%jE묰ʙCԺb*&€JGx78w|R-ZaSr"mi,kgme u \s@HnP i||Y-yB|odWg! ȏCa <8֕d 6\ (<S+N͚9=ǥ<&>얫~'=5̯eYŖco |BsUJ*px_n!<'תL| 7 aRxt Fk0k/oG:X+u"*ҫ xIUIBi|E28}Gّ_곫F=cq\􎾦 0]xlZ.rh5K`J+&ߖE1S|_U(e" u7q貔+ aWljf&[T8'srob^Yֿ]$9- @GO|`({RgaS v gK+~+3~$aJz2vP4.5iku3ۥkgʫ䲐Jxv?ܴ\zxxKfl _jU&jCw%'z6wwfh}1 /!NFEslcL$!!rRqN<ۘ^ iWxnE %I6(mY*(sѢX/Nt=Xi#Qg2Ÿ$ Vo~Q@_7rfz0c`zY{HlNצJ@߿=\ ewuuA$ϡ/pT;OqA<ၣ5}8>kYӌC'Wr3$Nxor]]Z$fڕa~-&oF6U_Q~ [*4a%' bspeۢ,.RuDi8'Hu0˅o(@&e/Up^{0Sӄ9Jy{Vh&Vr}`=-"':7+~iQ171J50J߸j[rOs ly%3X;: 2S@Rb-as(A LR!Ҥ$+#ỳxf+u9 #L>T&}j)+S']??ڳ㓴LyL#k]x@`4]:~ojkLq bN쨹3Ҧ.ː'C A79\SP$# s279{bup 1߯ It ybW7"VIuvT~׶dI9#ڽZx@$N{癳򝸵YxTPq9ʚ|TԌ?r.kojG"=M%lZN>mN+afqP+d|e_;p!IL؞ 3m`=^ G*skaB3:eL`#VFNs(x5964'^' J9`Q'NQ!pfV#19f@QzqMЇmeo6\(GUu8<< }3%9A'M?'osUCim„ ᇔ|s\*?dA)ʃ,ɹe=}`&( Dars|ŃbgS e c+af#&,}dewjN˿s_*m7+pJ@~#FCrMpE^>eL*VG Mz@׉&,V3Lk/߹1>k-{MM ANIHY^;KX4&!Ιb>X j{8C4kQw|H03k$gv/nq+9NTŻ0g:jhk@<Ax i2 I48qy2q鄂72߃C)`vvPfnY<:_ dÔ5dD8b62fu(|YcD:K|=)5P'Vn]Yb1bz 8 6`TQdl X%'-7넲삎p50XMӺjK=gb"4ii0(.R[Uk(ML DMzaʍ/*e$vQ,?k۠z$+v -am 7J4X5 #Uʹ^5tr$x#v@5'vU<h 3yXx4Wrr| =9-!a#R)*9i doka:)'Bglv?Ctλ4gYPt(^gcUʻ%?OB/Pa_۾P(GYer=.7O7"EPN36oEIe4o֬}sZS-)݈WߒĚmJֈh̽%;çOO-.ZGځ"SBL4kPZ)t Hb.[?沫>м:"=@wA΀azC N^'Iny"2&{~^ `JY;SY9QI+Z@icfGFi@z!_Q+YqI^1 ^J; \ZȄW gʊ*MV$On]Zx=7 ew7M_ ;*mv9~;1 Ԙ7ejN^QmO)ob-m4F$SmLM1Cj3<ܥ\u6l$ỦEYv'wHv:{]yuT0K1iKRkO~:@Ev HۊnLs| B1{c^ZlYn%LǴ~\˺T|KG5G;>>3#'EbFbO)ԡ6G (d-(?Z]{St۠Y*AU8{=X'R˝%JxZŻ ©! "}ZƝq}N3B ݵY4*MV׺y$!cn=Z?*E#E^;,p7ݔ!Fg>5-o  t>4;"E0UJ%ܳJ=HH1s,YW ~"'lmUJ9|ODvJ:;M&֗?8X;J>[K .F`Q>[6pMs_Rw:>KW/K<X?icQ=|\z7\ .H* T[PѽIa=bn)PŶV"GKK1367 el;q#F6vfυ??tRS79\6o3Yv8oR*'P ({Q!%4-ŭe ӺYqw Er&&ŎL&9=Mg9LbU<촚-t)Vd%^M#פ$Q,έ.xyAynO~kE7 sb-CTB\h~bLJlChA%}Rie]PӀѨ;fV7Doҧ^u^NڝG]tnDe>Jжb]y e=ڐ{Z8HEoˀNV-̈́Fe@Z)Ny]a+&5Բl39U-[Tk³=vY#ڲػ,P}}C7V)ɠɜ.V]%?}u^UtoMPO ?R<`%ͮӆ1p4hotRZA/k8Kd QT:{{C3mƒ"P(%ERK&)!2=u ќ\94`T0%Y׼$-gT{p1)24RڵfuH`gs֎X)i\ɰ zbXIAZ9k0<P ^)E 'H:Ul{ފYeQ/z(ݽ03w 9ovz\X÷6r? 5'vhG!Zba#O%7xt_0Gʹ\,8ek!TZ^%884ZcY\fxam]}熧s/[nܔw})^n PL#7Eq)L,_x܌M=d,* { `J\AN#pA(!9 XTȡ$ːxn =SByCa 4F,҇&lfu<s-_:<&=b^v$)لKL$xA]n:jmrRi!݂9 {_YLolc%g)+lH %i >nZrFr"=A'Eh7G$A&~074׍f[wZ_-ɲ,Hס0"TOo{q.׹(^d`D"0B3(MJnH-O99lP0<-&<M 0VȊV8eYY667h'rt?u ڳ M~UJxx!QDxW F0|nH0hC\C㣹:MB_jLbA\rOAH0#n3;ʔcNwVqc{ndz6s9KU Y{kGF,i@ҺxhaY C(c<2A|X[%~ݹʴi ܬuҋL(%q= oŋ=̎h#O%+2QnLiZ$-y8;}eAp"O7fV~i7P{N- $,ҧ<[\@,mNB딇~=u;"'#uVyt >O Ozu^(֩ȘH^#NVQngmB*ucUN򏖧׬*nLs{bspY(0tȘh3]pG5`#Ǯ |3N^ ?GdvcɏY凋]3y,k FQg%Z.jc#WjEI})t\֧A=h,rQd bhs=^t:qQI7"O)K .䯶MqČZa{Ih!"d-: 6ʮ9t~tOǥE586\P'`*(~{QoR`lLmHbȀ:0 A?mҤ`$žt?/9 3Xn%XoKrEj*Vsz[ )DI/fOd_w3ݳjW:G7loc*{\ϯ',C^w"A4[kd!$990چ),] -㰺ۤ7@c3ut:ߒCWf4@1k{fLXa&Gna axfRYs?#ep){ʜOu-&vc ?MdY0﬈b3eAܞ3=-OԴlj pklAkF&^CrήkC@7y:4iVwaQ۷.N`4q]4vZ4jU+ɂin4I%LÚ6u5]B"FZHq%Rj Y:bL?Q-x}NUdI\ɶLt)PsMεS5.o?r:@NI!&3ϫc+XR@HNpTĥQrKj&gnOJ.6 ˡo#1qtwyT7!P+6.d ޼{:]A}?\#\=MgV|sfnEv`04(z 8qTO0R+ Z'*ˉ??HXl }T`RzE2;?,Xbu.wYZB4]7cϽeceI) 'dWWHl׹dIE=)B:|֯pDSR):` =>!BlO q -v%TWgr{8Rbd=cCfϛztD#zfv4vB|C/X$ނ[]Qqml>f;gfg?#]U8FjB^&"+#P8rx)*Dʦ9f%d{;I6B+a.YcGڙ]&Q+T_w 1mW;}dcN섾7@* nv&Ϲ`IwwS#*$@c,1N y3kf^5[Rs'+OlO Ha+4Mm0%v TT:<)cx{?Y+e/cMÎ 1ZؐgBKmĊM ^.^u 'zW,OJh.J'S\ʚtpIY]?5vt?ܬVjÕaqeƋ dJݠQ%M(\:I{n|F*DPj>@4@.!ݵ4"L .`g0xP SG8*_Ocm.q;Ev'=L!">AwP!S/8^'!oqB\(i4 9ڎ+> pvqvmw9TȀPtH3ے7nItQݨ%e[J4E25`1҈`+?nlqN;uydY&*YO:5+.?~j cJkDuU D0u-LZQ lpknJ'to26DJbc CM] 8RTQ%5|˼MVzCGY 'wN@y ^'ǟK8n1 ~``Y]l[LLYƚhJdž8Іz[\* H@]Н {<1#r4 #z2 u P@sTܷ!К% Cu?䞫.؋Zv!)C9% ]KǪs[LuJuЊWX ʝe~% H-a;Kjݥ"[޻A?ʷFE6,  y !͖UP(`zdӵ)pjJl޼68xgS$-Bքjɳ|e\`s  *A6ٝzٲH\+ͽcJJȵWħkj9FDN^Q1ݣ υ~uR1QYカqcEpzuXBb'w :qJ]Kɰ{[G91!ռ /pa|t0$lh}r}DenѰEc`N.֑7xؾ$[6>4}E{aՠ#t'H0UQoET AvpJ7-K.,gs|lXl:50Ӈ7 Ans" bY,PK?v9Iq$Tcv,(4gT"9#@]Vr >RHRMHԝ>)"bo?6d,"Lyp{uΰV[_;־5ʰRdS^ geN {<2%$C'ڜ9HJ&hHVv|VJ.*e M*a]s(@,XjGgߠRaRԠ.f^D\YwᡲBKe2m5%q;Ѻm%HR\#PdZd1,CI%APi%} Vk79KQ;nd{QnwN1G| ܊Gulou.Y*V*.4ȑf?`}! FP΃G;ëdàph_Fupa^8<IzMLjvgջ PK'B+\zşhg [bhaQSDyNP:^{`Qfӯ.ɴFXB4"X0yBnBj"R7 "ys;yx|@8k5:g #f [u G>X<^w<*Szpx@MaFxtO#{.K4ӊ2qGhԘa9ܴךe8SaP"ZN1y W}iՀ@П@iRx]6J>){jE%ޯN @ڢD`b1c9ϳ/hB@'$nlOANb7!4:xR̮I킅pK7_a6vʌf/1a¬'85j<ϙH- q z&(c> ؾ` --{7]EeOtNmI~/ |CĈxLSxþw'I.4BfrX=p;_BV. yiQOYUU _;n׫wt6-bS8h\ke_'(Z6T4\sHF(ksǢ=\$f4 G'bYâxα߂ 0SadL2iD//Ij 7[ 䔴x VcW)`XOl{.Y(3.|^tt E0 BinRJǛ'ˆUu 5yPI}d 4>N$CkH&nO+ASFAKi=ʩM{k?T]I}hi޹g[2jd (j1PPk҉!ٯ]F *"h3CAq 䖮6$Cx?)Kʴ-F|:Y:ddP۞EE_UP-ًY7*&؏Ms:}R(LJwaeI\z<7a,Y购%+V=f*9{7k\'?öjh9+8Xkkl4ۄӪ%V+B|QA"ޓ0h^,ߋr'ea{5U.i]wk8A5aDѯu`\_kt`_,#cAK$23j(Z0d˺1 k>t`;Brr+h ikoR%(ltC~Cp/X4k?=D# UPƮ;EW#2J#@eNXnU&H{ϗǭU i;rBggqz~52K&Nuϒ43*\H^1$Q k]bmVLpY r1ÐC}&?nE^)6T݌ J4DFc'>Bum*?V{dzゼ2jeWI(}LTNϾ&]:U "[0\b%̞f2sW+@ih8@ڸ)Vd>p,*}̯pT[Ӫ'N F–T"7W>jR|VAqͱ c9 [u#RdprKw%aEE!) "{°1 t;(GUN76KR&QKxC.WW+YAtO7 e#mnp^ޙg} V٪K-kT T &(0̐Y4gE)9ˈ& {w968ۊ]r'z3Ї  \~6p/ErI~Ĩ3?#H[v#WJ®y1Ff ]̢T)غTh!NꋆS a};yhb]8N^;7TO%SgtJ#NUS 8Zy藴ιJwK`:d+3M#_`(.6fcD ZCxrDָӯ('$O7Л`g;OBcגZme>M8H#O2Ji, s_ՀK?oNT.vgEkn mjg.JTw'}pqW㵬blkfW?Wx<%&8cCG*QtJc[}\)e ]HpaZkd#eI 8 `ߤyCnb#ZYE ۏ[+li/˼2pģ].3eR{Ii1[5/s} K޲Bc\l?9󼟓x'?ӷD빵zm-Ef^LFTu,xd!qxwΥ0]))\Tv=-u( 6DSIH2T k@%Kټ4 M^_>8Z <)za$\M{P mH7OdF n A+Z'r ؃x*ƭiƿ dtt֘! w!|CNYu!O1 1g%&hF@zN0b,fDRTqDl ;V_BSY ȴ\n 435pMyDb2o,J@SBrꮍ 䣞%B2YT"C Mn5{d<ڹ?]+Ba>48S-D0$`xh01;e#dޟ(h/ڸxG(m*q| %K*i-%;"fчuA dͣ%j M๝WKpW l3m 潋gn{Z2)1Nc}/7vZ{wgLH:[nߡ\fp1ZK/TXG jfba^FB*8KQyx!tM|O^ԄЖM{}o/ /|')Eo=$%~{uG X"R6{gdɭ8mE8 j I~:p6 OQݤ}-0ښؠ;1i[l2lJC:4|%Rt7ҽ2fL@r Gfl4[GA) c3󋑚:hՍuRXPCt;ҕ5 c I q+zv\2yU8 ~Gf'(dM@:.OO [_^^~]sP^-O8ql]rݙDǍtӯ7,Ure؛Y'mFf%Trj߼۬2o}@l\v,b{ zF]ud6S"ͣj~ψԃbzb BOq(n3䐘!zPk=rlpr_ YM*H,gЁjbm0 V4FiŸ_xפ7 $w5hZhxˏC닧_&Dᔮ.~nyd^9_1*?{)t׽mLWs @kqG&:wis1W6ʑB&_$ר:AͲO6"fPjU]0RwBxJIf 8)`'Btozcń^ %.̻X6\gzA .G(j%љ v8]ЅysRonZ1ubu\i/lwy#*?P8nLf40O RGc{O[W@VZK=I3ɫ* GD+ RKLfcar|Nb6%-TF2n3׻sKÿ:=(e+ YdiIGm2V7<3Lж)4L^*m_^ 8!9೐tXPoQl >Q,-VM]\t$aӋ_Kf(L*z;Ptpe[,ý\Bt%$QY }ɴ8@ѹJf ҉eg2xqfUf2زt6_\OǘbuHRW{HԆVs,\: ݥbwɞjM;=A63Y)> av܇{=xI'Ws.*x{^U"cc4B d2"myZ0hӨ"%=TҝED%U9&Z GNҕ+'_MkKW1TH<( gdNm'Mm˚r/aᷛ 1xcLy5X!f lLrK - "ŗjFqÅr0Ta͹D-|{E5AoUpY/~ &cMV+P别2P?076T ܀vIaWc U'/AXqTz(x xX7K7.Fjݪޅϲ}G㎳zB_ykG&؍Fn\O{@/gL]rQvɡ-#$G-B[Y-R ܞ>c/-;< ھg^_jLP]vZH>^U+U>=.}LE ]拻4hyaSOܮp3E:ql[g\ݎ4@QUzWG NHEq"&PWk^OlͩG%SFڲw11kag,U`f&5 cOʸaO.czj*o`P&/^FaAO+&P¤BoNEEqg>[Ic+җa3SEIdu0uUQZW!P.Ol̨lpFłpbLHW#/ ;Vu@YzI+")EVKT|YGh'1d ;4f36=3}Ɖ%E.9gTO:N L8|s FCf} ǝ׎18kηߨ0t'ǽW1]nF."]CJ Ws+#΄&חݾbFtHkT щU}6C" Yze&)*#++iIHvnWՅoҴD7p DrD۵{ L~(嫿RjoN>_];#λk*H`> n+*aV.=|EQ"{|C K/gHNQ4~2z2"I* U{gɱ^r $lpKA}mYWxY%JM1C]d锶ĭ[&c \# /ݟAtLk?Dv .vmIm^ڰ2]ګ/_TNӗr 6*A_I1Hk%;W UQk䗜yDmIcltI„pUǡPSi'JG20(=w~ˮ/4Ha-F{^TM+O0f"ݯ9!Oe'PřizhNEǒ9\6˱_ ]ejmD}LaY3-zǼFYk T2tTU}NG:us 8t;,ᤎ$혍6 5)cؗ7vԾGK>f2 KTDxwHҭ?-ח@7DGDHn;Nٱd-$V'eUإ )HTݞ,2a M^mYjAm摖\9iN.o4çfUd2|ؘ[,s8_F}'@S^f (K]!ҺѼV~*.`#iU̷s 1K=K 6#=ezrDVԻK[_(?ڿ9nۣ(*ʪ;[Hآzwc01BSe0r9N0[#eʬ#~0}i]f< AidnSt vV;:q.Ng냭c.900_Q#?I57z<WiRe+ fU3t@!ygUo@ yK!V_ :KF3Fzx:eF$ ǿEGaivA6v|2b ʣNO eFEpTP"Dxz s\ ,UB'yWPh&hV-fˡ ̙0[10E9璪R Sh[ol#ԧ%xN/ |9o+AnTj!4?HBay1'odQ':7"-{%_m:>7qʍ̉Avj8}s\[RU5Fu.Mٷn9hɮgjoevTZOx}znQ?Jc`Th>vC=`4F\tVb:2|&'N҅^҄4( A2(J*6W"g $Mo{[Ht*f0g0ûH/ ȞWG7. D')k\Hd%-loz?.3Ga|eXSqHsJudV9=ړшs*-Dkn5-%݁AEu]`tי==:6c̹l #-36{8hw~xM4h>g.#Tw= V+N݇99O,B)FkTuB /Y gi )6d7(8ITӟ;`rf9܊Uón,n|} LY0}]Wz$2V X/Z·!/.ìL Oynf?k \&²Jr5>3$u]I,ڇ4)5 ( [2G0Rud>@ԍh&zmEgZuk8OK٢$7h_>OD[q4ݑE' -P#Fb|Ḱ \ˤF3M8E6OїlI30Q$}>4ʥ;t,euJ;9\C2p_[ZmbŃVk|.h#]b(ڽr Sj g{9K6Iog7eb̅%Uܢ讽DXq&Mx٥v&rHPA$b;#H -N4ۭTKۣVKj];ICΆ|ΉN|ZBAj/~]>fpwb9c~#JOSb`C(^!*םJ呷K:#_~ nR8c0$dGǡ|c]v P1$VXdrλK{#J׆~'oZh$ 3'[9BKHp\ f]W& yZ^e2х ^y7 $"gh%@ͭZSlpuZK9jC7=Pow"2,팠׊ 5}j-va{}j$ɀr}gj zÞPr)Z!6z_q%0^$vCK=0LU͗ǀ0iI&_'y5k΄WEEt.i(ݪYp.lOϮ6_|p]rD]e&Ԫ=*vSZ- GO<μӠ I/(MIJs>9iqN%թI&ib^ĝ 1sD۱A:H 4; "pMu`Džu2:].CRxZ,C!㰢HG]n%au2{1l`u]J|4{c𵴔7A1TI.}eQs hVpIKeCXXCܕi_H(/RcӦQ!w#UBt_[wttBX尪J5Cr~V18^(XUm_\`1!v0HVwndGJIts{  ˮ `m=uU᪠ve5&B5؟:L>+۪zC UTA1%3BwSkp9D5rG"S㼩9q!x Cϓ|yRڸah Sљu RN1nZj)ؤ&P8݊#%KOé>),Ѳ'fAol~#>롱(j@h zA1r<:P A s٘nFmTGD&E[GF(-KG0AO};Z=S-OW.0nO L$`iI^C]c#.Eaͻ͍<]m:˩ے#7tJlpc瘇2i};ZPChRjBR%czYYU2:-9|$Y -VZ"d0tR)Hڽ_%>l(/bwwn"NG#"=fXpE OZe))zKEH8=_JTsG*?HkԶuWI^L|b&9#8zGž,Ԃd^ C/SCxodLrbMC Z:945; n"א1W),gU&C`#Bܼ{hI={Yg1zv ,a\GIn {_w&) kupܫ{ 9HӊhީjF$QPAbvCxqk-[ )@GȻ& 6蛖ttO%R}{?*zR׶I%"^MJ,UA vЏ- q E ({A#.:jKsX-Z&DF$fU~!T{j=JoyX'Gao9^~&~ rUhl)$mj ;#EaoBb- ={r|ϿgZTOt XBɳ}Y.RS1$<4. ?_`ŵɾv_l.Ttm?&pS"  >m؁SA, =ZT&)+*5IyDG3b іL,bO E sLexNUF. <;tPr-36eNzl X1{^$bǘ6J g/m#Z: `!@Z M;%Haױ^5ũ,4ɴE9 <*_Nd ށvYm̵jU1Qqڄc$)}hb_3}᪞g'߶|g$` )M =c?Ou9}ea[0+^=;;ab]q"OEfީ1wW|Y-XtQl-_ףVښmihM?a59~"Q\6$W՗OLy?~$T5s9#E_jbA( HXdݑU'" Wpt]8_*7P-'$dM? hzc[^AIGqKr :~8Ԩʡ\&o,MV)rP/a9NoE:_ UߨD8'"Xӟ/jl<7`_/DtFkwXzPl!_*|kEQ[O\ &U}u+KE/A5"%r1T Y :IP 4'I 7j➃ȭwq4 9=й_%CCc7Q_H!5o`ߖdJcGPFgŊ˓AcI@'~*" 10ZҔ{).JFl@¼- zqDHqv\2rKbi3, QWȎ2bkc0 L@`yO[00qLY,5+57Ŷ&G̡ܞt8Dx=4xTMt5 9[hUb<q/鸬~jd͉ci_ 5Lg"q8cly߀ZZ݇MsU>^^. W{~R֞KuO0x`WZC3jKĝ&Aafl}'AASkY&a#^L?ݿK)(9Dvɝ԰PlTuw=m1ӋuyiOsڥ?u݂jLd,cEfzpÍSI"֝|0昮M ѓϫ@|L2w9{<]"w+əf$L3]|hMMD mx:M͝NkFa"ii#om!, 6v+oخi”2b׾Ci0iS!]8+VQi=x7ZRs]9#tow !m] !U3c [wL7A~-?f3,EF@o>{T_8>_K-k S- Yz].QM/IڴA9c5:apdGZ#bP B1kڲ1ϲ(ztέ ? JƗF5+ "c2U7iBJ)ꜷbHg b\7}/"\ʺhpbU);ZZ;Jtqy.+j>Hj`o'F!Gm&g^UR$ܚ}Ã^Eٝ~!bI!ħ שۆ>wrc*j(9)U#,D-Q&nǴe !xHifغ=S9$#T{ߎy٩cWX5]" nnMsNPN-O9 ܉l59_@Xg\GҢ<)&'r*`~ ZLk{ZJ~V>]>'ڋ<.u&}WusT+asV{ZWo{)%] eѼ'(~fz-?M Zy!!"z+EKq\k|IF&:r;-"~2)C0&#

    2G,k)w 2Zڵ\=ccJ 0F'UxAz o̓eoEUDvK; vwS%\ѩddťR^A72?/g\(-Ci)dWb"S _ ?(UM^FTB!ygF$qƇ 9ȼ>s.go]v,Zseh"$DbL.n"oGV]~+ Ǟ=8IhpIp yLTy|!4-lx;5n?hT"{0ђRPG4u "VGX!-"!c<`e+m45} |#GÀkN$ww$EoK 0o=}Xk*Vfm5sZ`pouoTKX9ay|.΂ =^qrДy"əM.D(F 9˰пQD@žKtD@agM>}TAQd|QH*yOR\@Qm9dYuankkd]/sal* /%ÿjfBew 멑LԎ'^TVSʈRuse`Qp`03:. Kпw6:.Yv y/@uF9,#|^4D PeP-'dQmΆLEo]d,՛-̡'T= Ŏts]ɤj:DdkGSAHwCQj[$Tq6aGQi5@Z&& JLgѨQ)9?؈nߦШI_2bϰVQ3ͽ7mPʜ+92w fqwxz0#p Qe0N̳2G[k_ѥ*yC$Oo!p/C7^ Ҡ D<]aNqQ ^4I 1.xI&uaXY~y?ulO}H̑l]mRiծKy?.m1'L\";1/\ )Q1ଐ‚,}<]n^njDߖ[kZVR\l/ /*B0H#8,#)g䴯Y/ٖpQH_S^5a;AM[zI?OŊzT$bR$ |2<ϿڰF*~ igTyu2>=>/֗7 π3sLXMc\{Syɯң171 YC:J](,t>?┛zrч +%B$"7CwX.4N&'xGZELwcFi6ܒ- q RIaTs,as+- T7xD~ g&4PՃbiV jg`VzV 8wT:bK%_#_av& - pgط$b Әc>0nUoGs׮16S*WiJ&K ΛdP 10>onr5L+Jzu[]zfk}<;&<`~V :ڷa_4'Aů&Vu3BMKf2`uZkA$3wX c"tN+gE"s(xrp2-UCF JwT'NL.!xL8,%O>~P@&0$lRYPX}ʝI{Ia/>%z}.N(8@5Ý%B ַUUþ#2$8dOuZ_fU|F 4\{Wf/c$fOz}qK ;s͗ (X !ֽm<w1C(TA{ptY8/KUkϠ)2W|O5GB'o]m4 t6k= X+G4,*΅42Js!\Ovjk'ڵg;70<y&3Mei.+39t>|.'h(eWn<h+a;jٰ8Ƿmrp a~.Nd@rfH`:{̐䭻&,UTv%[6_wtv#kH=IAvߪW%NVzP<@FF޻#q.&A. 7_!4ظсAĘL!FzPh_pR囶+PqzLŪ"ݹ)(O`,cHTOS#'5\#zj(b獆 ixG->BD(ENyFr@R?_ ]T::7^7PvpN,ˈzhJv-9M5x ,nn͡Y&t&r%Đ)T-!(jbt.$1bTe*ɧ0$rLjO!?1. ~+nꡋQKOB1n)>lTJƓdL]N-FԥTʙE`Qa +ݹq; };v#%&M<N`IJZ=H>^ŧp我Vd:(g2ư}R+ju=~Ia|Mkwu͹E+~[AXmJp CƉm>/Nމ)[[}Fy`}]^+dTGv'~LFHce`B05meX Ȣ6t4°T)j_g+Q4KMʡolUpYN@ٚHM> RnrPYDtlᣛH뤐vwhX3:U3$z{k[x1󻪎G9n31ɕB1BUts$SU*@zY5I2CI,6Z"ḖrLĚs(=i'އGޖ*;xbsg@r1|NL{~+dCv-I~^$)ӫ``?\+|)4,I7}lOg B^$oN)~\˝6~A9j8s;6~@V#iZAl k XsR-Q2xIXT`G^/!֥7!m 0reh'|V$ɋ m\?M%1 X|N#t̤ #G:I"ߪ8*yBBcV9/}A 6gXt*5O7xyso:on{`q ydo ?܉iݾ^XYshGVdMAcH#/YQ1 vN]|J!, \Zl){Rׁ]6^._AS[&y0b %$p9?yCdk쎶"ݘ]U_Sgq Ǘwo@ʠ7FCEurryht1\,ܓ,A 4 -A䣞`-#Z *ɱ%w}@IN Z2ݳGIѳ`~)ija%afpm8L4h^ĀNH? dxN`.Gbruut !.OεE'&-BF+Z% =+S)|QC%&?K/ 쾵[@[$Ňode;e 2 )YjP8sS!ե_$skbWu2#P*USwSa$!yUvnICԊɗ: {S8fu@0Ckri8u@"NAHQ+U *mbm'Yi2x)4OoT刔M(2qƟ6(vB$WWy=$Y`ϱK+0 ٳ{=l oMdgĀۏ܈I(X&K;`]QX!_ Mz)u1@ HAO4$ 8MBlf ==aeWv :*ED4CN@BVb+nnbjYsȯ#reU[|9Gy̳usN8kLvc )`c,쒭ܴ10Eһΐ'3Ѳ >k Fs(%TQ'jTXX xH9/NEZfL;)H9:Ns[.CN'.f%fYN-@\lxFs@Z0)H9х> d ;˖=:]a&w; v Ը1 \|ytӞFK|7A'Ur ua'8ksXI޼p"Vm:0(ym&gc4%*5`zZƣG%[~ogn x{`XEՠmC34 ๨K 1rO0\`G`buigHznlZ94L%] Ud8j@_=ЛkCkj "٦rD,\"@(o~~GeUӈCySFVrŻfpj۞߅A)hb~H7wǤZk?6]>Zi*8fZJA/\]tF%B!tJSʓI엏Ǜ(2Z 6*a72qU1](!lkG/?UW/T- o8V\ `~LB1)K4rJǬ0xya Ud ~iB_ ?n1ͩ m}5C! 'dj<:F\ХgsE"tÇ"~Ã[ˋ |Z9 +'J>)]W0@yF"G kJ6w-T!gSBXu ^\ ,ˬHtבD<Ǻ/\n'2#L؎t80T|n_@w<]c:AsS{]gfES^Տ G&2n^bqŢ"Ru UgNh+P A,ND^}T]~5۶pMKe2toP ˋ3- ,Mݲ|Sv>I[9$898fN}mT<7%bK 5Ezgkfv(T!Ym_[{3Ra9ERu'W"% G߽#!ZE*$8AZ&ye U3ְ:rqY֟_ZcetlɮƢǿp1Xk`sq2Zu͒odt'?O|Ú Y"W%9'7J6T~ʹ= ?.wBI}n_e4q e~bC.}Rwzu'ja6TSYv$$0 >)WQ7Ks> uoSf5(R_dαTPT;ţτMQNi=˲Ó&{}|3Z]gksŹ̤7N~QvZr{Ld1b樽5C&4rA;p`u'zgcn,~"BixZJ(Rv)ўq#X-ayޚ\৭Vb+! HE N.`LTaDSQhǽt`A='SckHX$K]-<6/&#{ K.F/8A @+j]y؜EvV(dJ8sI4aK(aS[ ɨR)wSZĶ+Ì@V1Dl7![}Xi/G߭e6Co]h$po$hrYe.F<*^hXB[i@NאZAl2z*=?m-Chxo;k brܤ7j5 A=#=%s\ܔG/S`6dimXnL@"̊3{SeSGeH!>L%wpV68'CL y"/WN5!W) "5ڊ$fb&c-I\k4ظ-#ژN>Ȍ_}*aD~~Xߖ'# Ĭd+нӝ.ervagRK {MH_![trͶᘸ?)Q{7MsEB4$¾z,d{'n⺠ ^ͻr9FY0R:3c|bK~貪9QT_yׁƓ%' *`[[BPCRm(Ơ'"aԬdHýi'ʸk# ]v͎e,l=X`z)e`M̐ɲbu3dL(Skg_LRMe1_FƧn_"_Uڊ? =#zvu+xm\kIJ|foh2q1:D),D&DZ{*|pn| >ZY'xD -/D BReGo;P 6c]P|*۳ gdӢO@(4ٴ-#vO C=YoB8cVˬE< .ιU/k@?1$3Ć䜱PH6C/O]4ԢbeN8c)MOt%k0cw6v\Zr&=1JiKe4]h!rƽ#hLOיEyW> )_Tɣlg+$|?EB;6Q@ؾu= {iXvN_Ud-^͔xl!{1eC 7۰{jd*6j9-Tr?jkڼ"Vڪ&Pߢ<3M_ē^B˰Y~jLz׉$A1WTmM0@*-!Gn눁^G7tx?V Ck:?eGBt֑1q/k L7S,F{(׫_h9"ɑ3fz>lw^~9fQFD``! ]O,[٤ g62T-]"nG*^*mn"_V@Oq\+Pߝجw$.Qrq 6XajJ$%`\v㾇PYL (wfo g<bzU` j{QR?%0VDQ=u{xP5{jS ?Τ3!$Nz`/2/ԭE͹kaԥ{26k4q7ic<V7t״9ɓyZ{xʸA=C$[fV׌C@L:tz3OME~:Upw0jT gud2Ud%k"H%z~ám]ogk3Z[H 2YA&07^C)>\b)8TQv-EA htr3:mھa_P+ӾQaB IHP }}iݵM);D5?R hN [& r]x} M&_s=ZHV{Sa4,$NGB[Z!DM*y<#G cCB\W2nUͣℷqM7-g)$ "?ֺ}0| ¹FL)u5xPJsԑiEu|GU27!VX~hËǘ0ȁ9ی/w;]4B\ ˮ+P>jYEYBѯ&T@eFED$`wV{xdSdFȈ3Cq.8q?r[UtTBYCl nTep:Xjg6}=7t16--V,| +%lV/Ŧ͠Cc_󇹌'xkY|xSNLm4@ךe3LnJEm`liRXq(.1w 8~}:Gu1ڡTZ,!:d|ٕzT$W| T O++ GDAn~>=!Y_Z=ֺJ~O!Bz^)&*V DVOnN/8X>ҁ#ϦKLF LŻRX4TC>UO7 _h4NڝVUb?6lNvC@\!;P͜ZeYLɱLibPx0UWWtWroBqpDz"sE{r<l@ɊA(d,TrZG;3ldI\xI )ߋ GwtGg7)D*NEDfAUp眊_A+[hҡ=utj$]D>D >XI*F=c㝮h&vcVá]b2K5zJT&+NqԏޏIBi=ORFx#ͥċ &AW'K59Fz^avwX$ĵfњs4p2L u_]CUAjp.ī}tD! \u'FGD:4amqD?ǃM)>`KZ/>BѨ_ǓbQ4C5JIIy@Wە: ɯl'sצYŭf_;%VKȑ34׻*ad9wZoQM80Kv9!X8 Osn{+fnf +I% +Y]9Sճ )W3EdT,՗Ȼ<8ı QWOҫ`AE[$|q⼐wqx/3C KM>z@~ga tV)NVSH(6nX=ɣq}]0&c/BuI,_(U-n@ VЕ<FtЛoneφ >E 6qWC@;Ugc'G:z׸62}6ᴐ+M3:E 2` wHHnD7hcXu@c!uXOjbW>U(pCѺ}Lç ;:4lX֨$HGme[nUT=EN@F-nq^(FNz [y#ܮ?-N8{M]@,ʿ=6#'@ohIB/{һshve٭%~"Z+\gg=pL'yS˱.JO+TnL=:=\&=7nBj&?uaTi÷v;l**h WhXh}3<XSc n!=d/bCC|rP-fJK 1N ,V&PP<[ʼV%444DMȻ lš# Bר}t;w6إ:*a=ȼ"2'H_#;}byEJNQjwVtϰ ޝ ,B4NIBq 6 4KlٍV߅$J'l_]/W PCn[! 4I^mzk(΢r[$I>}'ԨAH<&o`OE`_6T^e(jݡV_"v=A,7ʥ{ c3j)_86 SasSP;!$O[ý7y ]8=?}P wg (b \a~%hֱ_Ys6F Shr0P"Vl+tH\SlK@ k|ʇ)+2 LQ<, pƳ)R|(٭)aW(CǃP_H&X&᰸ B%jϕ)')uNX%ñ),= }WLzںskPز)H3 e O8•OI"L+-p"(^Jѻt.Ro%S{ZFHZ%_c}^\Ͷ_RaD K%09TT &N7]]8=ܦogbꛟlkdJ{(ak:E@$ `ҔءD$-6%T~O.~PUʽTD%vl9ṣ\zY?A[̰D՚{3y-(]*0dV_iUߕ ʦM,j͖  u4Zk#gV7tC5,Bjhex#F?;s$VD|A 1C/Dr+]!H63)EnU}afҵlo-9,DRlk gH«-;շˋTC!HY-Hx3\vI-,t5v&^z% qD8jf\URFe.EwkĤ?*ޠ9Xe7€JonH/TvU;[F3`W&눶q1_kT3falUlOUz.u^<ƑZ55t([޶F,.wȝ Xd)cc v &.t=O:t8LXo s&nӼ28+`,~j.!K : HqSzn`_ ٣qEeĉD(Pk-g4uP^nF`UtX3Lbҭw3XxR[JM\LFBro,48T1/V5MEG4A5o`ģK0$ȐeV o 'j/Z<'p3IJZY|w*AZw`Ѩ BWVY 9lэ(YXX83x; hOEܳNPdɑo3Ax^B9Zfۛ'6^S& oucg߼%BP\ B4FRAv~d[)&hlӡBi"U1˂E)O*ֽ Q$\SW5Ua}ԋaSn;qvB-%, .}*Q4VQ#3Yn4l"Ћ~CRSYc6g]/w@sٴr oȞ X2ܜcmm> N2}6$ZޫAvP5L]H>J`9uյHs%dѷOrYiBzR#)st^7&dnb? 5v 87G\*ZM =rJ!d^84 !x:r;UrO$zYR=GTJAqgX#)[X^:?}tKP1 ^C[{djk}Aj$RZ#|ټE#- ;ϗ(Lēo7`NgkLBH-):j~MTt.Xaİ12vҲk/G$< `' cѶ̺+陸)6CDވڙ;I=J7G/g==eG]mBP1\_A1z 3̲V}$g&N~8F7T QBY-^m q0Q8/\)*Go:F82*`}e\Dxۯ{QB}SQ2']#3cKgYEw4Y;þгLF%MěSSby (d!ylJ ^7{<6oAz4Nc!8CvbI@Sf?#ͦ]QPLR+4١A¡f}&{PCrUVfS&_U2W5^Q_)$v3^ڮV:piў@nf҆?} HLdCy-ReNR ,oNjSߏFIi W%A \-SXwz y%2'i ' :xqISt;] qVi8[ ;X#Ӿm!~H+_. EydT

    2,H=x5:C{2KݱhN n]a!eN]k^+G&&qZ&ccWŘ„h?!0kKvɧi&In _Ń3xx?lL/[OL=&d&oT0X\nLF cb=IOπ.u @SwEK+jhRO(S)uOGQ<,A gVv *crHll/6$m(Л4`F'\5 }zSIc˅'eWgǃ^|HMܳ@k+YgZMTQFM2X0 *70+"fF9#/c:f2q@㙗JAA_gj\o`&QlhD =MH@sm ] =- H' ]cC dLYnT =R#a` ,1ha3ic}5HF,lV#@b[=JVM!^CrkrV$y.YW R]uu|Y߃ Rkmm)7 <1ފ/tP_ 3L㻔r8 7eo'u>l7ϡƗ)offȢڀJ̕ SY?2.w[Z=[KR !rwJë_?Gq[9+9R'e~쵧p-e_$CcJsRi=XCp)P-JUa8⚙U!9.b+)U. s%EBe0rH85FfP9@0SxK0otӱ :7 ! P [Ay lm&^9jC$ m G8+(lA&Jdn(aLJ}~3j M$Xa>'ͷا%F䍛_ S5+.obR]Mb z SH[_g9@B)= '|`ԝ`-_~$ҵdzoY-CL "sU KһT ;參<էi镫V}IR4 v,xbu 5CS@"XhJg|~JO6^mklv @q1%7g0Y;5BsN=p!@|OsBr<Q@.`#M(\莦D5,:`ck`  s;zR  _t*1Ibfۡ$KAp|Tw)\,fZD]&7bpʻ@^Hj h^ڞ0eF'W=hKȢe-ϯ8=ijpkqhERQplB+kՃmBy҅lIlCkΞԕ4eB`ͺPpZeDZZZΖHSmy<Ֆ$**i?yR)1G>=v-e̼ČoG m(BJ-ssNƶs6GU-iHJLSk fS`:S"R+m&=!Q`m ;*~NyIԒ3KV%pR,JW,#՚.3mAjq7aK#%El8MEey7u ѡ=9uYy?E%rf{w\qvC۲N^kY^X+1x'꫊4j'UIӃ-L_ ҵF3 ۄŽ4_fTe59{ɱ7帧vBCH=~xOI$RA8SrcQ$H{0uR77 9`KebI :nV=!n욒 Vq4T6fv#VE8K~lsnә*׾~ُ͡Ys8[9R/X MAtSɃcr<8:rE54BkCŗ<1aW @FN]uOE(:ܫ=]1ac#%G:%S. 9}UtlQ]Sg2fC 2t[Ywi P7 󽁘aRrX|WWs4p+bG|&VI9݇n J(Yf@I>a& O@i*[u8$~aeenR]EmT(}>Hܙ"5SR_;sd0Π6v|9v > *і|prU(!,:ىPy 40lhAϳ:PvTGʫQN,=Dv [?uEz)U51hԦ3/#`<.[=yCaGy#[ٳye-FgiM/u_@uZuC"(r P/[q7؝S2K%P+ gNmO-HYE!q.7.~2{ Ed;T^dڰˏ~tk[xӬ%TyUXQ KݹF̕κ2]HwyןַVF5}pO,q[HӐպMz쌺z_R{owʪZox-mB{V06|.(B+;%| eJ#rj2J-( W`c*Y@)jC:8$aRTM;s ? F>d3|܀|&(@|yրh/~P_,FBd]4TLfa J:GS3ѽS X{֌w'&#oqsSLUB9t)A)iW=4DӋB˫7x8*NGBbm3ިKt( ܧD!whZSjM'Kw'pV=$׃vS)lӻв,p O*(.:@tʛa!1AƻVaE q k;=bedh̄@_p_ltƬ~9Dm3P5 _?]G#K8:/'ń%5eۡ!a3{ ~}~hÑs߀\#TxisL l~;JCMuxǼ!cM(b$B6ҫF5}\gW; ׮&tew@nUV\ǡ6nb̘"i?&"c_s!1㖗 D%NN; /JZרssnCbnׂF |F1U ga][cA"6Ղ}_ JBoxIwi-␆d0=v3Kj$ d j5b谪d^6MdGI_Ml&3>Jw+3?1|Y<. $ T `<&O5s9oo(;9x(owÃj Oc =!,?iH^Mr=pb=[?sL j7zt02b*\5+M[GIL{{RVm/[^|6ǯ 6:S0I[1o>Sow%&2_-c$*GO+V]K]oz^QNYMˤ_nV+DA vbw`s91q Fw3V\?} n$u(*T?(yR&FH2S!/ÓJcy}*1RY=Ao>>NYA M" Ov0GK!QG)g..nV;yݍUZTrc=7j@eyZks4)k' TTgr,sm\Ug%P'cGX\LE3Rr7Y.q#~$sᛎ|={|M\}M)0CLU#w\Ey U~gE2r;zF] U,@f[$ { "G{DW igXWľ(+8LQ^`f#+:gi!QrnTf E]2 !2,L]p%-BCZq["ïd`**,o7}s#(c4t;u`2 q`u M*6>i>G5`v8d ^bhV.+k7wQ 7AᅔBewciœ86:0M\n$܇r3i,'̓UJ8C/hߝB)NߨX*).sDɇKS{QկW>myog+EA<&$x^=,Jaq6}'ú·98u.Sڈӻv!i :zAyإ=}{W%єw!VRG5u1 pŰWR 1 x赆YGFD鬼 *>wlkv<_S{ ##Lo򅣗Ͳ@@l:c ؤebym_Hef;K g3HG(u(PF Ih9Eލ,a=Hs<&'ʾ+Al>PgJ_X%k 蝪Su7 Qt]W%漿!ԣ>|lzhиQįPV6 6B%/$ \xVl:q/"W֚" a!ÏK^*fu b2,ALKyZ2w*B|h0̣ Jc)S.|ו]";ۇe?c@Zϱ_fV?qu$@d6rLs(/4O!-Ѽ"?lm3Zv℉b,cýr\O3 CSS?`p؂yJYܛ%g sdYg]çslMǍeQT#mE%hs4`jϹC!~9GbQhS7ۧ=ҵn w-y`l6»īۺJƆI9mdlIĮBݠ&p%@tѴeh V:*BG[<(􏒤H{4veY[B67>FӼFSS @7;ςL/fWk*>Ѓ OѽfE{:cڳQ4/|(jefQK֛ vC(@ JGߏgؗKu^?\39+/$ cbփc !`g_h5{Ȼ-`M[.Ka9&^&3Ril-Ͻiz%+[kk1JN,%D둑Yl5jЉvn؎%>?ײ*ڑ/֯`,U]Kߝ?+:w{#|>E^1 w ۶r󄫾]puxiVjUKߖw܂kr"V: ,fO`H/VS^dZtԾzſk7O'4WJT {-b'L ȯ_8YaR|A-apE҈<;G 7ArЀKv]G;Iۮl $Q $>XvBa4I@"V/_%2xjuס\pi?c%͗o `dKiMq,O UPH3}1`lJdH^?&0P!m·(2Ne xK%68ױCX5o >xou#}LiAoѰyrTݿ((Р9|Pg}xLͺ%z􁇈~CNc~=*xEv:CJLn۪@9ҸłDs%,Op19@ﺰKzx; L)'†˖um!_lZ)yQtRtZ'Ɯ(4g"7jZ1Gsw}Zz' "b-S7-?dVĚ֬6J30|9͹3l :!̲APo] Y2;'dA"^(l-Wra :y7~8mJx>/Q1 @ w`qƵ*q]j'-)#"F#i`葜QhS.o&CQ]IӬH0q,fߟ`mO*`4v91cGꭤmaxMsw R*]>u ֽxK4Mphx^U~0{2pYU;fJ%Nr8_IhZ؍MO }ojk2aoϴ[KfPm؀z6|`-?'Z X6EI uB?逪wEgJ h{%)~IHo﫼b^ɧ(?y[Lt E@o|L&1crțU5G:Ωhu!P Q\lG%ܟ)* ]-M;O*]yCs C?ӭ Eej}TtlǢ_ Xșd lBi!npưOU{[kZMԲ|U!/Èq*%^$oȊElH'|=eh䦒L#xGyѥC<zc*xZJpct!IG9?OE-V#lx54sxVȗ˜);C2U0]JwbNN7/N?MN-tzI4_AaH kiF!<=wxW@+01ߔ%1*y\̤?qPeNP)&k;cq97 8x47!Qi^3k䲊،OUf0e`(Wkц9g R+/!k =Sl?ʊCEǴM#$>}-#;)<G"Ԗe1ށMlL@qeb]ߙsl`-+hVfbkTNF{k3ʙTE}$߶ xͥ!X3S&9A++ۊhv bqEWAY\.ܮ4hu#"~O1Ca_-]U|>|2 Ġ? vIl}Oт>#= JmMB]SivwdySPe#]=ΈQ8-&1ܬ%&"~ӑm< KW_+^, mZܤ9煄|P26"OUrR%Nyj=x\HS;aWz{aUefT@ 2Z6,eD/,H^9 ]Z_VC o޲M [M y5d"qigx!}G @ (}`aܵ_!pr]HJGޢ) 3g8P gȢcDO54؝^ )1^עvV,L@iob&W!l_\GPWec[g&;O챔aZז8{zPol>,4QЗ;h3eKy '&aXķ> HlLޞR۶Hҙ^{+V(ꐎf;Kvb a>Lu_Nj!>~={<[:b_#*4 >V%NrbG3LQ &iw*5#)e8$8t{>!j*DE_\ǎ~/75"J J$@| A(hn΅蚥H<0,ģzhĺ|+|Qfp$n r \g76}lf: 1lݮ %} Ą;+ʙ 1t?F'?{%v-:\IBSK\H´QuP7D0"b}:r9ߋT.Dۗ'EP+1j}33[}ߩ:g,xIJ0障1 y:{>oGCTdN- cDy0L^~Z4Ec= Q\tyn\+}iU"j UH[!r )1k'v\V "^St鸹16X6fR@Ns ӯ ?`$A>=ZFp1@|a'q瀛'qѳ=0agKN5ٓ ^;]V%+^#iʃHѪ/a:Ր&ekhI*Ҩ `eۭkB=qCZV[ 10{jM `oo-S|+-*iȬI`c (~M+HZٗ)xOK Z;(𸼣n`̚z/tXuKk^u]?X:ơ  pVfŢh-wfێcFyэ -Nm2 JÖܖgmÙL-v|Z7ӓq2?čt#fZLVNbԱp"/l|*5'[|s?]fn-+uVߤ.GtQ<բLj# ~O(1{XCt-Wo,1%ٹӋT5?KL)a5NHkIa>al,=)=!+ݑ_:% Mt궅B^r`b팵 3׺ W<&_4En"%k myloFq6I ]9$2zPo#o<KWZ1t~ٿpq9Cdl!5oѪ~%N_{t-T_ L~;/ؕ!;<%M_D#qyd;:DxsojMu߻l,|LTZMO]GNub$MVKҁWFyG 9&``8,YD(h] Ժ2n$3s 3Ǟ3'kY$ fk^KX7taȐ;u!um a9Hܻ{iEE7h=ͥLoWNQ^Y~rXYw^d 4ײ #>adnd7 0\3F'%٘`P%lF\îc##-JAk3~eBƴHK΄a81x'1QX[gWQwßS=HQCed؈)3q J٨ 4T3Ȍš3xaXםU@T7^ŽUK<VwK"rI6,~]qc]EŪCdH$ [2R[BZwlbO&gPۅƏj.DǓCa6&7DEu?Jé57[ ]7i!Raԩ %`WnFFzs|(o9+Dv 2oN+f;Is@?WGi>J)u-,N7-KJXr4Obs+`h-Z?=~hGW8 hۡ.^8CG0<,4Yôo><.m}u7Cr)  2bl/gaq֊j*Jɣpmv)ht\=~'&o-;tD MxXC1etsI`((F/R#ĎFZyR_z4.!@ъWI2MIlw2_H W3]B3#f4VjPy!rzTMQ!>4P&>=d{&wAh^ Y>H%B(;@h̲8*rt"fnu*oA) lA/t],-dXbGNTmɓs< _]i`.SXڱ;|o`F•98>nh_|DI#>ӎJMump7X9p)=c>i=d;Y-Pb[%LHǷ0β,ǐ/J6\ 9Չ΋ݳ;@ڟ!'w59dAL"C?lFͲ^'+rмo6t|}`b?*@_Nr`2;bہׁ;p/3*rѓVMQb>Jc)`g مJƹx֬FO[}#x!l%16=0I5Vq2õ[4= B|!}n+[)*Q+MJD%e/5-/UˑzcOA1^nXbe1,X^qQNlOJWQf:Tjk#G4CM.D7e]Y-MFxPŮ+iWtLjr vQSQsw3Mt%4[lxmIPlHRŻ\`=S @!`.Әj(l#B  y" m7Z51%]Lb̰-aϲ1}:@]Fcצo܁.@#VqFIаႸ@P31DѩXF~qF1!߅za@N}*EDiA. ?y#k>#OkuZ\,X> 4?^ce@lMns&Zӈij`;&APO0i8~t#ƘoVup1_yvLfλb#.2G>RͲJC)r<WaD_Fen}A{?+)Qe զSn#9|!UM(Zq{D.zv8DaN9j_mD xs yZp#{n"ӊ }b谝 ~E&=ܮLab2Mje=a}'- \gW#tb5c_\Lr@HZ֗891Ǣcwb 頓jrU)D#fO#ڲl ZA( S֏I~45AO;Jv8Pc١c.n?>8y1τPBRK/ uLrg2x8`n8zN<.:֖msnCIard.Hļ!z-[瘳Tz;jνޢTܯ9ѵ:`* DлSXEGV`SYDD"(I:pE-Wڮ{ɸ"V>?0?!:\ip<bgYzĀ~ B \dk-lv,j-,- Nc,j@rm1L_HBHqbW;gb{A?E[/IXQ(1/5[w.Q-`G".U=~^C2HDs0/ixڪ=Mƒ ZhJz_wgęt,/"Y;y߄ԒQR[|(( o7a}/G,3A Jtˀ/"4'qTx>ڈ?Ows;O3}ea{ܥ+,$yn\rŗ}%v= nI\Kzg췬R1~ܸJi7%qx o Yd~}#|Q\2G{Ef;Z"TQL97WlY:EN$0D#XΙ`g_}X 4+8y+DsQqY>]z18 &$ڢ{tWm:D)b>vV= ԢJ <8\ .ʾ{ns.O&4U@ }.sԆiڟ+- K&ih6~^Xija"r(F17Ǧ[h` Mek,-^X0R{\BDA_E.[g :0*VfKGli` ijm:qXQbVG0IxSZC#5i .͡ɿ4N 틴o:!SyMӝxU9~wߌ&X]37n758+f^i{yEMuPQd3&}w8ޖ9e .#0sN?^#lmzXR<&juSD^H7ErG;4-Xr%ߏtf`;ZsW`j\VOPw :x#./HqGI~+leC*RH\d21-WQ{ ǺZ`ҖCN]@:]ri8B=z f9֩*s.OR8W(UU-_Sz.?S$J^J$y_GpMvd?ַAι$~1We/Yk5MgRkQ'[WTH䜖9tvFbXL-_lQ' *Fª }ҼfVS ؂D0{S_jTC =0Tk۞B.8 _}򩸖uƀrL~{;@Biz>lQ&H\4C `nD|%{ !M#l!o탘i+3 #alSڏ!ekPb9h+}ֳ&\:N1h[[DEPm@n AyA ^&@_dCnTwlx̡24;xpJ#9~YV"%P(AInP$i?8>YHsC=V@0da#?ny 9!{UA:obI* oA#mҾ'l@ruelfV(j1ca=lx*FI?p:ŦB3B$b *#䷉Ȉ/(|+$*FZSy$Cz5fЫge̱>]#)eݯ"C2B =©kȠM ܳGW:€­kYu֑rێvCƐ,Jvח5(&~(&axURr?c6ߏרS qOA Qm{aB=kpqP/^\&]{,Ra6#"cJIؼ]w H8 ݦjJlwy%wfi?Ȱ*}jϕ1Uf1?v}q)Nuj  V"(bPCTuDt,G1;[$M"}K:`m}6ccTKDDLF [% 12rua|0ӳ r". I[ƵgTp7C`zg}QS؋eU%{9fj%ؑ!$%ugNx6x!}`8+K7[p>*pNS`0V!mSTC998Q4.Ve9K>g 87`a2whp'|Y^8!Y**TLËװBt0j7do 5[a{V0zsZBd[--0 ;HKܯH[&-6T8[fED'^wOA5&aoHs_/?t^8vdʣlg~ц:?;L0GYyPt~]rr'vF JEeJ@TБ™+8DګRsikdoMX\iwjro-JQbEӆ Ý ˤC"N}ƥS_,#x*JNPNx)!,lC@)i`$.7r*'s[p{l)1[kZuQΔf ʂzbuݠ1!htxy@('̓P<4]5׾wK<_SMz@teӕGP@ꦔ_Bbi^>A?TFctE<J4'uڌ?|ڴuz: $~b'"1tf=$(?i݈Ju!@ b5c|?"OKc~ .7 ҕz \+ˤ#ɴŋ͡blh܈t=<%Jv$ ("J }kzը@:ɹ醟 Ɩ*L=`L3Qm- 7wL'BƌU2A\`MeQ$Qk/ƶQCldʠP yxB#Z oqwS`: Si< R`&sd nsPYݖ<.#k̮ rWw_rw=kR`w]t. j8LA\vNVV^yS:ohN0QVYl@}ԅGh!eTF6a!`umP#OJ%J09'"g *ݷfu MеQ.IZMyX{s!@T+'VSB6g"24!='+DX%Jh>5?!raz^r~I="8,H4>TɅ- |ks)Q"B5Ez&=VjG=E=76Cd?,;L;~i0 ѢnTƀc.GʾD]̂ KWs~rPQzlV~Zh 횦N~ʋc1Hw_Zqw~HC?w,:9_ OdX0X>׾t[x6Q5Of+[m:`Aө 3KﳳdWa334e`nkTCD/`CZLg%A49rX5978MD-4?8hA%_2Lzl8i#@/3J$ʹho>zb PVj{5Dh+*kgY B-n}EV+ݞN,OΓٞ4aWX̳:FmOiKxlWbھ=H(zחp3,TXY+@]QkM3ZM`9*o;le p4?1(6+ .-9o~.큇:!.{?h"pOGV*5̏PO)><=ϝzFn >_{ݒo^*I9HzԜO⼠0#ʉZ3 5\~vFW*sѝfE4ޣiAp al|!HdMzV>Hey0$l_EyOÄ(,ֲ^Sv59XP01^;k6r՞$F-{z c\Ngo7ml:r)xĕ$JFQJr+R}xŶvӎBrάBzɇpʑ؀hEs!v{;@>1-yis"y)f+ QCXFn{ m> V,-յ\BCٿ;m8IsUϫځO''tW>$c& xgB2mx1\̍p^isk93^+,+SM[Fd/Xn=HS7&a( ޮi"Р;a =NU =fxYG7DN$s,0}x7# +$o `m=oOW gU)& $?6) ;*H^e(tBkQ&wc*,n8?kv\N9|| @ssG`5S=tS_KDtQД=_ ּOdHj OUDtZLDF O[!CjȻ`׏6t) thWcêp"biF!OdwtG~%ZvY#IH$gX=XF0je -Â>ݒԋ{>_1sQ!{}>1At@\'[*,? k- b, G/;(jP]9qhW&,gh LNZq,BT\dt3EeMCJ(ۖ|,oS`1>&D]1 $:"pn.,ӕ -$ZV5 M6'F%Mȗztl 7CPE)`ʎ2/ @EFH$oEf{*$IP`ni@0N Y_Cfd*+F_6kKeSf=M„iخ6!7ej <̚ha/`a;Da]BB'3aVɣ/g &Jk8/I@>[ޜUbʕE|:{RRhLEb¶).}Y nX濆mqfӺS2!(nbLPmiVÊE+eM_Ӗ-=f-kv,7)9-Eܑ/k>,M'@.3|t ت8Ȼ  hm|7Oߤ % ]-Mb ŽˢFy̓[-_mqᗦ69 O7}3hb8܄P!baFZ<S n]xPZN?8W8Vv|{@~Z:B/zSI w2zo;reWNE)eiޗlZ K+eK R9s4Ru{v\9uj ޼􊽕yJ<"0y*NM(!\g@ckUH]e-'Τ 2QtB׬ZEt3o1LoCJ)]mW"U` &oP7L 7u.ܾ!Oچg\D:GEgՊ~yϤmRI^Y8"7{`LT% `,bT;#a_yNMoȭ0lB aS=xStE>oMU[0_)&љA^H4&kZ=6'ͩH֫x8]큧wIpB=3Sm%h™<7 4w-aJ^DlچATta@~i`@N( sŮ+n%p-AP=ht bi)9*3 >et|#Vm:s T*'f`SÝ !'u-qXk_f\7 #3>ЧΔ{h#wف9QYH8 %g2m}Pˎo'KZh1߬Fr 00d~_^8VKK'C )a * ;vi{*ͱa̋]*5|8gD!J20ݭ = 8v>>ojGAaF*gJB1j/l>yA4Kh>Z!SBClƠ4L9gޯd&α_ؾ'O`ЕjA~_\cT0+Π*Ji9#F7b3#:/J@ŷx?^~|e$<ޓ٢,5pV|a,iUԗ:6⚳t5ȻG7j"bO=xMUA%tr`o,hgzqB\W5{{BN>KoJnX\e6- _\J)7E% v+/\u=8:Ӝ` lEs尒]G?4q r @\ \XJ` :>tᭅ.حsS)h>E:KPxH?=z4\F;2w+8&pAxTG? 9 ]sRr׼&!*tY絒@r&YWh h 9,yrZ=<LNIVDA?3JX2UO(V׌`X/qǒ5=}э!dVi*ɨ"XtM4N^3\ݶd,4pe^~Dһ kLy0\G-ͨ`ɍ L ,ޥ'm# e$B<8OJG=5%ǧ=nڜ] c/Qlg^AHBSMBԘzB L{4kSG*(VfdRAf27n].&FwzhnP8% k~it['D mmτIY@Oj 85rǑŠsXu7%tESYߢmPO҅m%;j2\6obrXĉ@ELr_]"POu X)ЬdFV.9յ_^1ٿ9s-PUW#prN {6'O1lASc+ۦ]R|Gyެmq ҖZ΍;(M<_+U.;4E1,@,9(nB+RQ5>{YŸ_mL-j'!e?{᭛>؏%J^k?aFsP7h+')t+'HofvA{zuyY•# f% o,fAyMǸ Oh,Vݦz[.jqxi}e& AGaDuUAYv #y=H٦fZ]12{g;)F $ ?>B,@h]5&Mj&ʗ{"gn@hϻsG۽ߨ;$7)EPp_kયdjq3)\!޳g:nQ_rfQLϞwZ0ei(GYƆAӶ#mL4e&0uO[]dժ|P†byf4rOEA-gw\ _\^Ƚ#+ߙmR#hY#8E4-c5 keUMc\E):)[Զ'S(C}O&7iSp*SW2D4vF-GVldJ7wʆ?\VX 3oj! \$fp4{d1ԫ ah#XK/n˩oD` Fm:Hv8/{l }S2~9Qy_dW)"٥x/WCրC~Z*Vo# mpy7muM&XA7 ` k@P2:u>[+Xv_%B/#sԪ VZJ hc98{A5PٍTQl\8~+iM-ReEc`3)uJp 3PpS426xb&B!x[p=mZY#R+5/^Ē=nPu㒳 hG ^BiČ{vѝ Ģr$axZxmn++ ;;M1i,Vƒ%c)~gl_+ytxYKr 9%Tx(F#rjqzV d*zND(~HL3 @c Ì޵h @uw*- QV$ ɘmvNjVl;_LhLFj7;>C@LF*DEREBcrNdk9S{sڢyJ#^Mcravƞw}t)I(wH:[] rS$ +`@[y z59 ;xH2ʩj;z~GN BijD&jV/0A`9χɡϬRadb=A=V!WtMjù3+($ܢwYP(5 @BYly|.{pn>od)h1\EiDmRP4bq*4Z4Ŗ)^]$DHV/?Ή++[,= 嚆yravnȝ;u=H1bsWf?Ā>펛/#Ziqtdf ?e\WR-T%J~0RmR,'bx'ܒ١}X ="7+řIa+̄{:ʽJ{6,In^a9pBn/a//{~a:(,b+N)^M^zTfZarxZ٠f8|N.RQT͘XzggT3";˧vg, qM%Bdm}ämRԝR%-'Tuq#g :ث__OڸPF4CěX,?c̰*l4HƸϹ)MefxQIUn-~ ǟLIX-\A=V}qVޣ >+7K{ [UoK 28\WGꆩT݉8˲f&+0 =~_+ H4 1χ$_0H:ZI4wt!sT Orw/FN{E0 41B"pJ: RH /u*e:\n;'xݞ@f}yavS{/ioTsx v/ްq`hw.̟;,R I}2v -;;4tj꣗OyXWS,6bdM@.87&~uGV.zpS"^!3߆S˱ޣfp~U-H˄ xEuޔ"Z`jY&W}Boס?(+N`<3}uIjfL2bvP*f8*mddj7}S4hu ӭ:b3Z+Vf9&`wq'MN|Yt,'=ul=KFB$.Jt:Dt49E quޮ Xdg'WWe w!H8ڷ"aYY@g p>M{R6_3ezAHf/ vcZ^߈f6s_'GJX7=|Ž["צWNttmb!V"BBVԜgZov[A-}<5~1Fk̆|p[?ەjR̈́{xJ3_)wR/Ho#]3T8SlvNmib+r'-_q4DZ6\Cp銃YLCMp:UJUJҭv$2zl4[[wV&FA fadt;h@ߊmC|!pX0{*@\[os[1!H` PwMy D tc8=*x eI `HL;/ގӎZ?吨E]bJ=?lej'lz0m R7ơw/9)řYߏcl @A_:_,df g7y,+~؅ ea,; )Ub@1f/)6fG#bA@5 !p'؝ ͨIXBS2MVYB[nӴehmH. ίD(@N[(v/uGa%3 ۥOXKىak%7YAW-}*b;ZaX]zB un/xΞ*3[AveBGOfg QiG`W`d@{K)*sEL0gk)֠lv7`O>KK_X&:_LK^Eb[9[\!Hp D 0HPwӍXH(f{ON=)@|ۜ zpW2EKB.8tN&z^a:iƎe&yX8%d5oڰuƎz6zDAW *.t) ۈCbvdK[ ( D\)B/@7JiLeZȧA Š!c|7cpuc[:+3Bu8TS@ >B=ZrEdgcD&2c[Mm|zN[)2 m(eAh21t+Am RU4qSHNxhjR칓dQ~Wm:-(j/H8"q"'vfVT+8ZR]!^`S!I4lqCz~(\L`A2f?՚{_=>)m@|ㄝ%ĈAd"%Hp^EwLb}};ajg0]o!s>K n7հqAV36<(T*0_c7[61IPzXps9`{7H@'UxLǒ2&⭗y¶U`WֆQe5+dK SRX޾ˀ Ͳ+Qԋ a U)i6H@름*Y+r{t^'^:]j'EgdG=Q3UTdMo%L*zf'>充pTt@vI/v{\:zM\ +؛#4HDs}Mg\hxlNԙc܃',?У :J AJ1V>4qcƊfoNlGbM9E(?_`2Jttw2-lO#LA}\qߺ1>4z:tY%œ׃5N6O_Mc'sPiXލ=:y gxf)J=F'M椬{*(h,鯖K:*DO W5D5 -8?Ml!-sݜz$|5u3tNWzRbg,:=dPcMWKI!x6Ъ_20@6.m~^vgREɫ4Z0wi ,бJb2K>tRa\WX  bWGѬL` /P]9wl3oVBF^g YA R"vtq1 TGse6U24υZ jzc'兇?X- 8=بC@c dVLi޾pmX] mH> /ldљNi`kmAȤdi-1G2zΑQdb Χ+8PQ&gy$g'مM2ċv)3 Fl Φ:=Dݞ !SjMAIqe #3[yN&2upZ OSA5a:Gྊz.Ҝq -,F>:P1dZ&<&x0H7Nכ{}*9!`AǎY歟qP3x'\²Ņw aԱdj(T:?c7hX*Kf߳iRci bp'6q9Y,ݮW]%T-6яbzͲR>WiɜA[)CS||o+6-P/e5 ]D&#1dy`æ<9ksðZ[^]pE>a "v6Wt(Vh6HKU۶ f SYŷ=߾ cηMɡ5jSFȗ_*hmP Gox,0*r`Fm(26 ^!##u!N3 IYVoZB%#rٖ'8.[F-*b&)AW%nsO^̠ ؄ 1s&Mc]6?<*~2k*l!/&!TLuS &ԖXx2Dm:`":Guf½[[mv htwGȷ|n;6%rvZ)WX&|*,B/4(ZmR3־9!HkQF䥞 o/Qm"H^;IM82ndWdVnį/x=kt\u4ݪh3v8AJi:4hi]Xx62c^$_ٙϒo+QMuWʦ2 -ՙ}򩤍s\ COeN.%Zfw/?3äWޛ?,Ή&JxJ(Ju  ,4FLnbRƴ3 ܂Z|hd,Gĺ|!JSO_ +&VP@N2[\j*΃C~D w1exĀ3e&}jp`TDM_.bܥY omCװdz{mnahBz9b eDOapYr| cD&7:P.ғ]鍭F"E2ݒ r(䔿V@@s!R Ouy08=$bE[C#MLoH[8CI6~CXꌬ&e獌~āϊу0T=Ӽ޸D 4\*,6L4זmޘ6sWi\0JurKp\Kȉ݀c5QT`V"=r8AV'Di.cot5M/lҶA$Ytl(˩8iLD2!&F\$ ץB&8ᚮ LVï.6+w}oD:W &-6dN!f%ڔuHgO7^y$d[y_C ~xL 7Iapc3տ%m* frl))h6̶H\$יղ#!Nc~ǜuJ0MM:anAsŴ5 _>-[yIu^PbMMƴ+:F $}V"Gt8ooݵKD|TZoZ hPހWfge عP:]4čtpM9fK1'׍嘚G2QMaL^XІ{yx͜+ @19Gg9.!RoH_oZv3Rj "RnT{L>rX|*Q>Nq>ƩIQU3 $*ʭE\Dć0Zh;H+[_Dr*d) /1csdOr˜:Va+} M5=,O-1 a^PX"SBt l}zyYW~GtC^~KVM{g`N(̄+ŗxt]|Zfv/v0c@R֒( %RM`@w5V>t,}RU[j.w7V fDB.ƣ",QJp ^%I0Pκ>Tv(vS_K36Y@m-[VCkC"&LAs u%<J.H@=TW3q*ͫH+rSpª+-6/CF8u;I' kҲH"v0a5KUU_Bf:o6| ΍ꢓ#: X71_$=>3* UR}5t?]_"'_4'xx~gYWyQ&ZiV`gMz0?t6a`ANR]4'yBͶhTNA;0!^y0L⭎ItAF6f Xྗ \-4'>8?>ŗjik8 =yC]%hd0\)f|KB-ȘYU$ .,\!񮖿EE1m?r]R[^c$ 㽋> D(iVB,ZXj tc"DUˏmh3>V3'nz6f9ԗoyo=a{MZPQD<ZyfQW{;3E>Xtmhs:%K*ݲ,Ҕ1cʹHDPBHlk`ѱ"x]L0>E!15 driˇѤz;n )mH셮*!7qϥ[g޻, bevÎ.F5!1N$VeѻE*NF` &|xcJmC o Ual,Sϛ)";!/uM(<â^P\蜺r}/<( 63<{0*YĈuw2t,kKǮSx>T>3J_B8_1"P.ѪR_i.ȔR ,*e=ZիY|ܗIlw =~obMӻA;Q^ŗhf%W{n"uƋ->@^ADcxܳ%|NG=1$,}f|fBkj$quk)hw,DȚc:1@+'!t賫#WX@zFXZ G^$2KfiGft[ j3IpBO.;V*Lm|%x!M )ԩSgz*^J[+ D֙fV̫PoЌr^>CYoؾo"U8%C0$৿m{h' t-nuS҆Mzr1#MCc;fݢ ,:CϱQpQL@[SU_a ɖZocmy Otf)> ,P6t{O)ɥR`F#su e! 㛼x&elZUq C.ͯ lM) WdAjjji^KWLWStJ/"Gè;a&J䨾bi +J~^ȉ16C}A䰫})et_^:rKzm&ryΧ5WY:NB`0Я$WJ!dG0MxۮsqV5i)@BRp6Z3onKK;nД ,Nt2y%S~@"[i0PQLn< 9?_%uAqŸ }m^VTg̸1m 2L[ mS KNn6:C F`ÑDK aqz9 {bř'̜C0]**L[V>o }+5NLv [zcƪye[rgzvfJNiTHC>260SΆu;O! #d=?\=e Φr]yExGөjB=/;,Px]MRi.GPW좨O.ͮ97sđ;J~+`YF̔m%_+Oٳwf eWB,W$Rkщ1 XC@#T(x٬&Q;Ȓ]!At6 8HIn5"lKz"Xx k$)r1#:'- IrWuGae,Z!3{ьoN,.&J޿'?UL ȗBپjQiՠf [+áx&ѧΡ(0õ}.D9vaKy|) q5W7ݗ&Z%Ha> ZeU*e@{8y.?pJ{Ia˃M^Oo#[M?zI{xr?R5M(sb7_~Ȱs8oի]ӺZxCg#lA)^=38,7e5"Bh7z 8>4h \NUYS&D0mz2@"K "yBp*HsBG*}Y<(˫"'圇5wLLB_i ʦȥ59)4.J 3. ^EQںԤ P! m)qjk 7INKx<&=w7lz?q }6OtU1CGpbTT[֭YDӛIJNNr_ea۱zci0 !WHQM^}NeT3PֵӲpK[vWfX1i2ֱ#z^!1 jhXB5 aКx|t,mI2ET %9}?-=,Sev +D]g )8X>W}h:q0LMsbR?5npNBCd|:d @&0LN>ăvR_[Z4Mg{#anxj{kP$!Ї-5޸sHYØF9m%_&Sl pK/U$|Cm19#~ֲu5 ßkB<477.SRc+8B"j]Nal`%~KDR_ :0OhoCr™}{މz!> $m4[ 2A7*w A{Air"Xenѵ=pTt`b|:ULs>3E7kKUbz;<7A|׊Xhz3h೴$% u(UN V*qw8"veí*ms Ћ3>WdSDi|g.*W\ .!(B6e4z0{:lGU>! Kc.JgE2}T"􃸖o&;+5'-h_niwp\I;IG/ƺ*2ةCקB]Zupo~ Cϕ04a5fI:6Ӈ$j3< #D$kOGEi&î@*gg1F"" Ta|!`&Uۿ_w **p%seZ\8~JF@t)4lREW~x`,J3/U$vL/ຶϑ@w&p-g4sc.*Z 5_Q9fiߍT vTIBd1(Au59TO=qB;ckp\ o&a%p@4~Q;*X\%^>m;怷)aGSO~U!$X&[|Ɂ`;~O]7`L9nA[E Fpr7`Ylix!20#}6$>U֋⚥y.=Pu1=7I/=bbb4p&a@(^T8wr] M:LW"dֈM)!Ol+$d*vůl [bb fgK<7G G6zj <¬G ޣI@^髿rd!;Sh*|+cHHBsV:u1 Ghi@ _3FK6 -Z Pp 0ʴa=Ňip\)SL9z|H{ENhr"\ԡ@].V5j]?jq{'&C0ykˬfp 8&4W UQI&ݡAm!K]c8cdV&[cQe0vXYcUT qn3m}w#a@Vė yTT!dw<{ۑ&n!0{w~Q cKC.m$CO=k0sivބOrDD͇{2d'彬U*EQL9Ńf=ק |OgB[84Y/#4l1,F;$C׹9F4 (.߳2r[23jГ4!1GP HEJzC\HC֒p{TTzT]5ӫ@9ČO7ak%J+>ln"?wsIjsS~;`4Ne* NJJ-=D *f800؇ H S;}?<VPLшD( E]Q\\H ?bNK{L.BѴEAkPi8`> [Xs=8Z"9u(Ƨk;2/'wdGߺގ<͞YBjf6yHq<|R":nIá|9#4qyHmj}X\?:Zu8D{ϝޭ䡀.FNF֢b=X(F 2YaU8݅^eg}s2c͏]E>bI TJyʼn8JjXW8 Nw>8vd#3cr"+Fg\ 8c4:G˩[I-dI<#.ĺO~ªUTt޼$a'V%)=g?,gRi"8nxh4 2]k [X`ڐω"CFBe0eH>FKӦQ8IlҤλzY+=[}5[Wtu'SQ2~7 í5l3 b W}+rwov`"d(( (vt!ݵWjڗpboV+>;9nw^H;c>z]N+zN4·3S?msևNzGm =m(.ء&qV@ϑI9ur݀2-IB()?(5"KNUcd`}X(/iA%YMUʫ}6cV#ofk9\BB[/ Xf `W֑ˠҸy~S˿%q>1B] '>{#^ Z5m YRs_Y7Gpԫ 65 { #čGFZRiޝ!8PGz|m5] 0ۓi] ?R}䵂~9O d`x(" ,N12TغfEZ2pOxAe XC'蒽X(V+ARdHc!f!bò˒b_jYR6Uм7*XDA˷EJZ5P.VZ:h+χ2:k.O,@4It< tN~':yx6p{)Yjq5x[ 2塼O#CS.ʤfJ7#H>Q5)˔c.+}j{3?5PU_;9Û5F}-=iCҬr12灗Vf܃Ez$y6v5qƪboCxr#:-% %L,ǬC'S4էAn1"RAfxHgBMLk %NɄmGYҪH/GV >O:#q41N0O\6y (UB9 -(HV7W ˯m3UdztvOO!SZK/Yz0]݁xxOQ*6:2AgʟʩvrLphwϡEx4 x+~K$pseJO>63۰|D3ٽcZ3F'!ʤ#^hN'_]}8xr+;K&_8㏋DjhcF=*S杸( ӧ 59bElL-PZ`ic[7+%8g_BAȎǚ3UMrL|{ b1k9N`MSCjv""26R  J*8iGD2,W E'HW  gt'"pZ/D<26 {cpnoCKzVmhWDA! g .͕ 0әmL3)r&;y#-2,hq0]y3I֭^#Ǽ}ʴ汸0tH jZj:5̐Ba{ Y\8$>)EY0>'+(|s# X%q8}Áo(?'Nk`ܠFH5sO'~ n! Lo12ה~ޥ܀Y˲kЯ(As&t㸹aMTc A{ HZtsi.9L*ڏ3JV}BIڜL(iX;VRP[Ȓ-[y_wŸ8hi Z%ߕ"%յJi]q:*/i]ΠTe*SZOy@~YKYh`e7%$$|f&MHx(vD SJL;8 )>F13\ &Fi=G::>ƣ}z^>Whdh#sO@(J0#'ԩv2 f˲ ҡq+@' 1B\4?FH1>`jQvTk$:*(qQ/Aʦ<%@ ɨh&IQZႲ۵a {jsGm trM9 sZW,\aism(}"qLkUR4  NWA3ST=+g!5ܡ着Y,)4C3lsnh {24q\fn&M(5\!gGO&$E<8G$La /7?"J'r1܋IjPIP] R v[tÆ&!# 캱0p}BII8)HJ9 =I`l)+(޷K[j֡_ ]y ֦658¸Mc$'ݲ(@gǒ?P*\3=`;p5u(\-j%v~nz=.y@Ɍ+Uvf0v޵$'_k۱̚1֞MhH8 [ݝQkHǝR>N@;W]KƔ|RgRv#譆:yK4s* p'Y_wWx3rWx9Y+MYy 1Lk`āoÕ(${-#15y5bOD1 RsRqzm5tvoJ\ad4g?Y*).U%-$ WjH(9|EFS3烪)C)=7D%%!ʣLWr1*ût*Oa=9>T7]b\w.N5*ě(K~=7M  | y.3\jG_th_!sg8ksuhȶ*a> SN4OQAQ*TOH#p榦Ê:Dgύٻ{H{mS&tpόR\wPf_s 8{2 s':9-~[ ƽZw-Cn36h[ Qhsc|%pdd6^'Q0$oͿ79J74'3$`h2 ~sB3hjlB1Wٟ"7i*Z{?k'/}1$H_*1+ t.` vql-#=T}-^{5xJS` t,obM> XL#I% ED9>xnp!)Snf`؂EnH%%NK[Ir)P 'P"NJmELI):\KjZK,>R@@9i Ox]۹PP碾$vmaBi Ǥ2ɥIbtHr]MΨ -W9$}e1[NWUxi-#Yvxp0?ƃܩVKQ],@^Nd[Ya^;2^.;S-4*DG[rA]#¸[E7R|2&)C8h`JD׺ [5`m;?jEߟ4ǖTdUS7/Y o-f[=Hȯԥ +M8* >tc?9$e&6Q$F|Owk_Y/Zn']h* * iɢ,KC Iq0N;r-Wؕ^4NB+ʨJ~Zҫj*KOνW ZHi,HS!|;@Bz9yVCQ>NvzZdeQ۞\Q7,Oht]oU1^cuqTG'Q͈ 'D}R!PaMN GiݦB5SUP=\,o b3'wyd>497jB)K2]|E8E*_J!Zو*0Vt(6@{K'bi{{rNrW&UiVyZ]]Jm |ueL՗>b;[^[]AkiE!MܟpjW'<ڱ;?OQtۉ ;A*_l@P\Ӄ}E%|4 R{R*z<=`}[k?(h[V"x{H[n~5ɐ`o{WZxC,1t1|'R8ߙԠlBև[貌B:v:+R֓0X3 ! g`S u 91C~Km.N[9,epPG_˷,=n =uLjgحɠ{%CH,&9|i2ralئ"48^ =꒱e*Hpf+MSZ*ى|tzMDQ<G)†}p L?_^@/;x6ȓ ]wIIe( ޖAOeQĸv)UKa5,oݻ GMH2L}:f+H&%V)pCSVёb4p9~vfM˜'afD*ў/&2A%!NSa;c-J3ҜĕghJn?+:=A4TN팕PG*7 \lPykbf_Qz\E= oi4QX`Ot$k4qi{ ~3ߓ,~i=~}cNq:x"o]T.u(w1wŏ9Fқܘ˥X֥{zsEg$4:I3 @F |$\f>4d_X_Έ ͦW*hԠVv 7t"x6Jb p]j¬[0ږ;b ^$Ӑb2X@OO bJ%F=^i ja#bNE!tԋ$eGYd< :b:؛~CpxgI./kw=Ir GV†36طUL46̓1Sa gֺ9\U#{q$^rN-fHAS6‌|5;0|z635M.VmuxJ4I:Y0NKX<~FCpf]"NڥcNdmBj6L){?E$=^ טY;_ gepŒ7xʌ~rpCI7DȀ_ff8t˒](eI~h-cPg7<cQz?5rpE 5"z6'fH8wD.ڒ/&xp~ܴ29"ؒiiaP'Aahۇ^{/Y7_.#g+&W 1F|7OcNqʢlJ'(<>V㍮1f4P~7yM/qcB) ܽ\c/FI_/#~/"S)R3Yej]>/F`քŎy P IkX.u9ƾ:&UsDˎ\$$rcH!2}: HC4#i"wSPSco5֖a]}g*Q8̦@)Y~v*@܂aϒ2 ͻg:2b/"b}s"BG鞿& )(39Z+=(^z8RƚL\Cƞߚq[c{8pTJ6[kNk98hqkrkt ҌY?8EJ R7Q_\lL8BSҳ/i{3sSFM_sZ..]IO犭MGJpr7vP4*V΢mʯW=x(s'ی'4w2=HS~bKtVJkd1L:ݲO3j㜂A>oc(Cxk&wR䭃|Z 8wZRh,Ya*ua &wx= 3j 9/^Z#C =$Rwηd6bZwHQ#L7iROИz-= zm4hci!ҭ q תg¶>?黎t\+j]5a5cy&ԎFޝ iQATF8A4VxGxbUT>t,8%mÃ0uCKv&: |ti>V|cU܆ 3~7+:.X#mA9DA֑fЛ2ć,>G0& [fuc ϖPkWG,]Sn}@{}]{o=)!'vR3)G-`G(}a,’e4X_o^ _@ Lk׼f\ZgUVPZ'7[ɓh3A泘Gd{g6ۧOam>aC54*Cfn3k9fiX696838xaw4lWEX? lmQ@7inr( G6Q<k#bn~[.Os93qEV5tk[spU9M}pFW Cךoؽ?2*]zF5wqhܰ%6.UR z-ΒK.}<_"9 T`8ó$v{b7|  Uo*}QoH+7.3!Q$ƊXW<\X¾Z1ĸh)e6+Rm=3ȱ ajz Gv{F,ŏ0ӖhNwniX'ɂ9˔\crd*&7 hV+Gmt;_T\9+I'6zO͐o5< 9lVҩaD1v~[qΉ8Xm\*g~6!\`fڠ{goU!AD\ibfSa μ6(ġ\$;'T8>rKF3ur |طޛj PrhIxpnHVg6TUkk8`R07^ci7@2r Ts;U/'db!u$Bhۦ,+kj0P$^p?'Hy/ .x\x; GsTPKYHt9'm~Dz3"65H&x&/G 0ă]x7#sG*RԎ 0lre:[Ymm@G m'#u>\5,ƹ`Za;\JF|\wiNhRbYS[ "/<ݝLmZ:Wp0Z6FB&Օ ֬Z;b!q6y̪vf9\rATG OhXNt痄#w] pwA-N9tˀ(;GW8'ҏ\ {OQ)fPH`@G:axU 7-ypGjjXQ |SD8(t f'0U|,YIzrC@ zl<`4I?'TK涜ԟѭ|f$ڎFHˤ?楏&cԴ*K2Ȓjx8C»]aAޑ &U9Րks%6b|ٖ9]KKX IwYExl^"BJ{&").ȥ٨w\t^E2u SC/7 J ъʛh@=㖙j_[kHYÍm`:AwGiAi]bU`a]*T(mַ?nj^SXV)gܣo/?3b+D2't d-;d+{EL;U0,)[9eHͥ$ޅ%ӒS4#( [`O ajŃ*"-xR1r^:zH\rwht 9 g|:N'h*t?!'Rb UDZHj =b\szhdK?L !gIDdCf2 6RwG@l +TnGq+{ػX-PjEhqm'b'z:i"lJ RRtsYKGZ*8A/YF5:iKԎ }.Jp*WJgǼB 2,fL1afw9nifB7̊H?Y.9PL \Hv *\O AKg I"rQλ~=27J q6Yo"635{0 A}h>en| ˚}`;MСcǤi`rBv=E}i?}c,gTĎ@ ]l[F~]G >93{9OkI>Ǘ3KnV{ɪ`GPQ}r/^pW`'/e_@ZC*2RI[>-PrƩ201YuxD2| W0i=۷V0F\vSۑS":& 9n[Aj z_ |2 >Vx"h7m/-ǛgaJj?ue=66tc14fJFvdx \v}OݬM(2qu%E>qBx`cY* `0 ;aޥLxB5$+Ro.5;6U54{, SQ=vVDL% =2Pp 4(hjsWZ^JN*tBxY/bQ3Giv1$y}Bl`SЁHED<&@QRˍέD//4EwRɝS%[Q J?[l"|50My2iMڻA: a %ީEd7MM# ,_F*uJ(e Vs)PP2VH2HRyAW|)Q%Ha1\t0aN(*(1rp=D7ݙ"MVr^R_Un~lRF\MŠoNT^%`^Qhjt,c~#8͞'{GOK92֖mlD-3^> 5ff_=`ro,?sX%“g=?0u\EZ 4iDSʮ (8\;_7P,溦"I ŖW ߚ]kHwߋ̯Np6Ϳ /L4sk(k/!+JT8_eԚfS^ 4wu#_.wy :ibg'm.^0v͎F 4ڲg,UWH.b\ǘ=@/)ҥX㵼 FWS.ES&]ma3*d#LJ'V eb[x!O ` uqK{$ Ujfbes34]l#" k;o ԭ[U6lY#EfE3 oTgPPol  cľ3 p tkKF&婴{я7F'~|%56/<mzeM=;W5|[YwX&Ӹ\ ZfwB&f:TSMz5LJouiԪ7`EAy4`dQla ޔO6ĵ[ʛ9#̅[CٵV|@ل Ws9mYkF"v`m\NBqFx2 >M}-tVU2e鐗6WZq ҁXft}R:#Hlr1m3^o}o`DQ [O5HdQpr[ه#_Kg;F_:%huc\&Xl.R=j4|*Y=3.nu"a_+QDA[?| *Q.!G+\!^{@љ?x:&Z8^!P v6߳)k3YGt.yogMTr@{m7TYs}FpL;>f<֍pǕ#s:%,Y.@ФБ/%:"gتݑJf,6"_=daժ݈3KˆB1{j|9 TH Mƛm G7OA 봲Ҧ& }߬/$f`|epKcCdeO-~ȼC{P+DO P[땇 .Ȥh X{fRByjø}satoï@2H]\e~jVl?Y%1m4+8gjdU]A-#ypBݡ +Z.EjI t-,cƜjI{'d__ggD'g]@ (_Y Ayk'ƴ#B3g˔NE(̦M"?~`d60D'nܪ6:bff#(CꕮI2rEr%h6YݖnCKXk^zoz8֦GANc[X8eW4$JX0}XG0k}uC;3vĮٹ9Fr!Z͞=!bV>g;>$D}+-4K|j;t/-QSZҿ!CLL kPۜ[skvmr#V=3,d.(؅ǖ})n&N_l|޹5Ng`jttfv{Z;S#J!E5ޠZӰ :{1& 7.gtk2qu'Y4g]16tPeHlWJwn}{C`w]eY* q¢ !nd7eZ\IXEÃH2.NXvZW3JPLf[k rUw [o-@0Vg-uLY%9,zs1Y3*s7\!L8v+<d9FG3ֳ ~ ֗3:*YFp=tGk~iL,c$fCmiW ar g(y@Mk_s6ƪdh>f-3C φa8~ p/if I~@j:oa|oc)@d V\Xeo\X |'E +K PNKgWZ!h3A`7GWi%9oͣx6ZXΥ( :Г=+\Ɩۃsw̙' pj0pDC(opMC+e.r<$a+(/YDkAj x4TY$0dÐ`1(cJ5P*&.e)~UWdMg`ߠ~|?v5?5\w4!"ǵyb ;K95d}ȝILi"kttL%( ]][7lcsyXZT+Y; Qk$[>#P &Nx J5vpϝG/wBjse/h('V~JytLq5<%{g¸+}j,2%Qle~J")W-`~ LzdiorA,-Ms fD+s&@uƕP-j91º\Û8//?i%}&ʷl&j( Ƣyf0#V4wh8hTD;5s -|ZS(.S}l= g7[}iD|KHRv+C\lf@u2)p„ede$76MB/𝓕&4@BC~8f9IY3W:ځB w\by5m_/:ne3n#j'Iѻ+ ձbɡ CHH>"GH~I{NSmwPmRT c5 tȪ/[Huٽ^JS ~Q = ;Q+^[…u) Kh⸏,c@95si+9L ϝ9՛|m9W1qg0QO@С3{FT!h^|v]h~Geqڑ Dp$' _x2d($ֳM,o+ԜTl&3]&8nsDe1r%MJxY#xJ3_|bdkZ|h@%zH{W9?aɁ 0$_;&f/KCj.˶c ~^~-@;!5V1rÖ%9q1^06 i"ɳޓP`((~:Om,㩔׽pl+?Q  G':,z럤51: *6 s{ߘ'5GhWXo3v,bfPR&oHXF-F0veWƍ&ڴQKE׍2}L^ja2cI)PBTu ,~(sB9V|QW5R ߠ'5F׬%&c/^$$^I"sm{`jy T 5ݛ_;ΔoІ \6p:E V oaALg(!K;H7ݿm;h n*f#,x̏#9SygmQokO@.t{ÝTSSwML"pi4m9?_plNƈ۽:XWx*dH)*XӋºjL|`K]9gm\hm}^cd8-ʻ$VX0 U[nB6/mUq}:4NA'\݉ 3xbUn@`vMk)!L3vV][<-z`{*F\+qz]Cjt K=j|>K=[44Z%ơj6.TCy #[IxJ : v O NB4N=r>TZrf􀋥a+4Ȑ(E@=6urLTy;A}T p.|Uk%aN?1rWVEES,;$tEtO5|Wj BF(6Hs }VM:g!8<6dILCB w'alE9p0ؠ~ߝd-&PŸۜX`N7fJ>DVޮ`(`,HZ.ٗHC T^y}yw[Hcv:|K8D0KƉbK%v[SiHF5,fOJ&fG2n|D;U}ۄTxTwZLVA^ )TY(ɦUk*Ų`TZQ^M ālG4\o+qna*m7޳'q\Ռf\DXyF$nC7DG)mĴcQT 3LxI\A&M:(H7>Kb>-X-RErm=KyK ;q@*=g*2}l_Y :D8Aވw-Zu ^pl ' g}p ßISx}FZG3,s̘yy9B|',5 *!E@JfTJR²xDN!LB9x+ rQm_7Cj#O*~^<-B)G0`0U3ҪUHIc '4g}ŏHSԪAl,l:~]![y5MN=06HRJ)+ˡ,C-YdA >i` L@վma `ͺ-(0WnmrhY\u$HЋaen2#:/TcGE( ~N.aSKn&kEh+e Fxw*5`ލ\=eRd[[>}p$T ̀UKQ('eN;870lb4܋ѐX xN4N 7};[/p:siE)ǴjH.V  RMəf('9%$Tr+Xz!@MeO>3U& <*.we3߄Ц~L^xЇ_o'`9PR89;_?OxPeƉXA;F?kMirϮCxW(οl^ܿ^Ⱥjg<1RJ74LE<xDNMEdYfEwtK0l>c7AS/Af.v9a]49up-f m<  uAs$H3b (Ј V2.\s_c AÅT N7mbKM؆xix '[;_S"T׃'C,)72qeΔ~QdŠ"^ W0,L5k?9Y 6lu$駛ߍm {$ j?(&?j) F,_ YuY`PEEփ7uZ4Ҏb߆%h^MQ;T02lOz%\] ND==˸.ZGE6tP"CqAw6(0I~w{hMVQFHtQm==qB0` Uw83GuFL)̅BP^tcF vꆈeݚ#`;L8мgy4)2 )eA46y#q3OfQ߂Lm²3 ۹^`h nH`k.y0+':("lt%gb d2o8Ѭ4.O: 3hVɬHT:4u%6SySғvuT0`b:5B%y+ By5LyW|\(4bi?TUڈ(=}%F\Uca=3Cˌ-[;?&^CFst*LAԾ Jb(^#͑L{cUq=`Q-ć3 ^nvwS3m)@WQGfLq%*-'wJ=?ZA0(uf;UHf_1`{!y K 2,j埥sL3]g<Zl .mZҪ^;/ĔkgkF&oIW0җf6\0eM's4XI'RO^ό~4-D[_Ihigm~l]g.ӥFYn!-jҥHLny;71meվwb6mG`r˵v#>+ߩte*|[dtx*An&f_cU4o e Y/f \O_Cue5"c Gq^QjzM &'FMXϿg"Gg> Yk-w-e=Px hd'F[ZGx(̮5N^[R4npŵciU=.NJEpS_&GKx5,j>cyWSY ٛj\ľ`v*7-HHjMNf2lZ4[W^ݜWK*6~ [lR&蠇 O-tM=ZnȞ\|ӜI x< Ilr^J}n1֚٥h)׷@! r35g*ޖ K*`bH!GD2ǚ4!`>FFXrPi5zm=?7‰Csl2 80hЉWOE\wj}'jTݏdE`K 4bMꯊ&ۗHk m^c~7@Z`u #1CteߵB̝E,UhBG CFl_ >hN6ңCXWZ'{BF@UG)i;#Φ?^Q]Kݼ]"/#Ō$F>#-o8Nu0p.^q{'ny=aCűheعL \yy_z̜kJ('NYdJV2[\pנk'dѶg(- ^.։cn.WF? l B5Iw“^䞕n|JZU_ߴ| bVk{I/Kuh1eSў"à5?yԱWJ*¸{oF #nlNejMRMr\}!m˸+wr p7mZYiZE)1xsɰAƿLK5kppď &z2bGFڊ;U#q@=$KRIi|yu\^k"#w|NB߇snjE z /Lx K6m0}|jGJ5| F悻YBFpF~Æ8T|ǴE$k}0K$̄)˺ ώb[Q$mbN}U"r!Gs(iHؐd Ͼ䜉x_wyU᷵t_^Y/:;%-N10ۦfݧٺpxdqw`.* LK8:s9032UQ.<7Xd̃+}T 3J>-#镆gGns]htknEM{H7/,%]ӓ-F,(,uE,N_kIeQ57"ka 7+R5Ry$ч.ڴ ħ\mQ(ucNs (bީQGKUU}J/*j ݉JYQƐ /$Raݵ&! 唩Vf,T+1dnj'`+w+/RY egi 5+cZRmjfC֥BB$9rOzSh tBPjVb`mÙF1;^3x\%Q4 X[mZѳ`n|1fjm*yM'#BCftڭeAmy&|Y,c4!S Fbo`[0uG1xB73˾U5CfQ"̂Hvq}W%pܫNsۛ؁|:Dٶ;9=BJ\ƵԌ|߹,-wV`|Vo$8 {!X{]|lŞ#%Φn:V.FqKn [s75g  EgbN x) l*Ģ^1h 6Pf\`XԸ84d }|IH}}}mfTcl1nlG dab*T 9lUozG5d+-d E V&1^T+,.j [./ ^CՄ9˴窘n<W$>,AԾo}dWs.(‰pɦBUlW{ ,(! Ut>{[wR܇[r4M>싈u&_\mLxS^3 ?]{,\J"z{4lKEEC.@5=x/oK9W3%O$yH8L;d9tQgaFESV!,xAq|#eBlErC_R5bYY`p̭_Ws+|hXd/w+6jli6o.eѫx"YUύq7==~,85C x9K V9Bm]sB&zyOtPa:UvV຀R"˺pB&ԋ_`N; yu `R/emrю ~vd mi,)M $]?I1ǧxQXAƒsCl; *$wI;ehazl*OPccҶ|.-ys{riV&ii @e+]Q{z4ba+4t3!TY:H0]u˜J6x!ivĹJ&zSDMD |Kjt-UzA};lʻ~a=?&. "Ơؾr;bW174y ;ΦT sc^ W,R)Pƽc~,rRh O gP$q3 @8VFJO uy_$W*H:c.O1T˯Lba41M -1frMga`h,hc?OS oq,ZȘ7;p\ avaDSV3a7 $aqS r ehq8Zzlv"PDhhmo|?e0]^ V:7ǧKw-|ؠM>!WWwdºS5>3SpI^2va|&TgC 7^ZvbggQ!,u+ķ͘k ~jU(dbj%\z1hII$,-v$Az%1L0o=_=j?;9^k% (ȵ2| 6Kr2k*H:;o2 鷛6c ~YoЎ)5|{<{XQ zAc뛱YZ1V F'""As4Vx=SLr1@oĽ)㌢mE{R*}d+n`h= Rz6fjώ~E0?Yo'Usa!0+V"zѕC;b>"ϬSCL)--J)Kݲ16 Z+8jiLAQ9Z ](JH8]WR+83M c<e:-속t֌B;%pϮ6̡Vp?/ƇBdFlp4jqSP~!#DHBsveP4׋_ F"!C?M{/tn(J*; >Տ-UР\r3F]&5VLT", Fy1.r٥ +=sEel0ԎoHhyMefw%|kt16B`JNJjnu955W%Dui35&X[?tlڗ>hqqJ&ނtjkMqS@Vwkz^[q`@P} Zl~z\1ھ@v)pAA/rnC1+58U _9tĞWi=O N.ϬDq=|#IUyk-$ׂ]Eg#EeD'}#JD+zJY:c,DL-&aX-AZBg`\XGpBDԳ_ExyxVCjU,T~c$B|&zv H}6z1 h^ qCj4_I'VzDi͎}&5uc%[XJy6~nCd~ }!RZ|X9[f/8oȵfgJ}Y&^[ܔT2 {Lju-+}i<$(_0 kq$[.׾01VLP&s6) ̔}9Uҫ~ :XOeF{Q}MO|׻SBc&IU8S58epl Ouvq 3E\3p6+%S'c!+}ô󚎝vK3`w!ϜS7Zd?̿v3xZ2E]Lύ8L ^ I Y<=]LHQ ɒ{ \F[ەu.&[(>U+4O}thiSP mMS IĜgn㊽7#(ןrL+~Ws]}aNUoԬL ,X 0{ r DktL6V+JqR$J' txSJc`ZzI|`[!gCm_{OlU1oI_2$OSp!A8cE*f+^:I&\RB͋o) !=7[$0 [ aK,Fs%wL.ĭUq>2.c~pdڿq%T@a*|_[yR'ŒQElLJ( Pm6W^rDY^do1IFإm݄TR'ɩ h4Zf1Cΐ4IHdFzhANJ ;}DP^y^ɰox9h2f[h@(NL(,˵[($S1?*2J0'VԇͬQ,y9KIzv 霉','x4ۅN `ӎ>ibo^78o{*ݭ@c9+rh' 3|X&a̹rկ_sT(3Џ c&-^p`Fd3eVny>R-*ǥ#Ib[~#[y5 i(LL9J"!8ԤV\AUQ0BϿ{ɩFN̦cNv8L?cVe:YDZnq`53׏{+we9[/:06>X:ޚ[(0q2uPdx{*|=5\гcW6dfHq e<gՋzp:qL~}0 zluyG vw8N鍇Kɖ^W/2<"3ih跭x6jpf/S LS+p8WĐZ᜶CLAhg@:nSȺCMOїM-<Y_jll$&P\u eִU596u; LPpkq+sO-gǝ\MTdj6¶ʧ aʊ;%`Rr^mG.9P\U=IJl ^s`%XP}L|C"\;RCeԯ }|i͏B,mGMX~'{ti;z:RJzFR`%'67P~ÎBlvx>\P9(`vv\!`$N6^]\n5[Q6J,ؑ7ß 6} Q(1gY+:B4QKF&U8M3y6'5%:L>2xg^毿~ٚ&4cۉ~ 8FWvwìdfŽ#K'[8NJϯ9!,6O' 䧞MjD/lѵ]CeG('+k]$2TǞ [O=򡗴3J=1Xgԫ3VVgp>Ǿaf="oEs3'U5NyD08NR8ur&zSQs0nGMȉdIn)}G+-JZf4kOt.2i7ӻ, zm6K;jõ#_xhEcb"j$xN_0o>G|>(!^maN4WQuNDx-R[3NĀؒ9#]_ٷL/T|Å;[XpcJ7I F2kUaR`L/JzzBUf$q8 Q&@SEJ񨮁J-oӓϔNmDŽ Yx ֙Z .L(`n[(Q`RI,(/C}Xb 3\CR fXI=Zܙ#\;$+򀪺#'Ipkfk)9oRZQ7)rB qvM^hQZo!^*m[Aw lgW?*PzF%l^!›IubmÞ,Gu9N1|GPQ{j-  [4Ǔd':!_h׋G sV^ڱDbqD9:aOcO$AZ?$ƚCqwkn ۢ|uRC׷҅̒nq<7 _y h27Vjn`vlh+{-OC9ĕؾӅ.O3^Qz>$W=`< Cdo\,pk'C(6Y]qQ)mG]*rmӎJ>U1Ƨv 4[z' GGZV#ø3VcVsTӍ揦m{:Vh4>qsUZo&zP÷|{Z F`EF7jwA}LVY]N1tƗu|8R?Z?FfBbtMbvyax-ַW6M!_sF%j@ۑb#}诎>*K;UE<,Caiv6 r t6i~~|׫~ , r2Txp:cl/!~_1?x/б⬃Z kb*m  Ʌ;LоGGjӈOp y_.O aq }rsL C\wv mpv:CumEmWAT}nw |t‚u׿&055e!p琊hL$gNأye){O*~>K[U@AP>*/߳吓B >=ګ~&3QD\c FV]1ښ!\: b\Fe(LӚ"Y]0- Mxe8j)d}Dwl< `p5w{X79y@ZV` ]2z9f;\ 9a)T {1-2.JK +iJEL@PF%K`%l>ܺD7cD;r5!OBlW GwfNJ?r. rz615aMadf|697N$wҙC3޼bLzBg-]& z>km_88ّw}6j_,! CTڐW٘ tOjg)7iDItxkQǻUi65>XԏS E}#ِ$v>I)W<3uXYIVsJVoƤ0Noc}܍M&^A,:t>R,9ڙA:<+ y 'M`7/⚗I >UI ʓ>>7CSfR`ch<o\M,F<j";P `*|Tfr#L.D`z:Scg%yV2Bcײџ>nlfrcP @ Q垫يpX6TLޥju~/~53CsvO 6|t^fEP5_I?-RNL>`Z~sTi_9By~ZQ\_#4X:ۑ%{J z2zm m\3V'xP&g'}\_?D\1uls7:l::ܲ^OҤ+9mǻ6H* h\N?Kz*OɈ; :8ߐwr,')Kٽ$MM:;[dykDwoAs3p.TEndR9IKdJ#70ɼy+g>JGםr`~2ފn_ߣ]0hx߮f' jGybpI霜ipC)%h$ɶuvR/M* ґ}- }+P;,R!nu487q;SwtaR}3BʘaDU=~W% 6w,C]> YC:<7sJ`U5yyM95sm}.?`f\ kG_$0eSFrw]ڀ58>!)u]L1 ېGf or2iK XقqJu@3 &C?VT;6oΜ! <~G@! I$2Fk`jRSrltүNP3K,ĊbфY!H#!._=0F34q_F ꓄ i?9?hb"D0gP׸@\V ȻvIz{;hp*)@D @ B+88HR1IosË,xJt[u9Ϯ Ö I-B-tt+*Jyfs`mEeWI~M_ۼ lj?>1t[av'0 VJE8o?Kk ^1qʭkE4w$j&C(Y!ϟy# T [Zy/'e!T-(X|F*0 Կ&8A-ÓW[ 1v4} [͔Q4`|5e?w3BVY&k0_=IcCP(,S@;*Xbdoh/]B.P_dY/ɨl?rK~ PF ےI82Y63|g~AO̰Nx}jxO9!#P)9uW`IJvJ6ރlcV9'$5D|wa5YR;2޻j:(ژ":x҉+M>f̻%,ܬ8Ww:+b΂(78rG JQzX6G(* Rܭd 7 OY[Hv "ݪUgʹצ&jehS*"sAZ&<2A|*.Cs2#>=m`nOgc>B*uhrjfNBfN iՑʈTJm^B0PǮ`)ClgCs3s6zxع}h 2;?CS0zOl3C5Ye nEJLPvu.ZDAijī^^<؍.x>Tp_yjsFI5Mˮh0L>Si>l]>onlBghpgXH7 ("ވ:^G;a/07$-\t@Ħ/.GW aO_%#;U ']r ҵ$j4=ZJBٵFmdZ=Oex>YP|sr[g7syC5`io@얃"Dq#$y,5O,c{kT7:ˈo E/kZ֝)1ӜUZ~%Yqڂh)hpWE"Kwp +G{Ai~X 9Exz]-eT@vtlͯVO1+χV{3crpTKZ| mGj 4c'md_Xˍ^Gd*)f⑕;c( $.Jhi x8Uٻ.{rB7햫HТ$}ä4J =ImĩN#)PPᅖ NíN5MOC^ߓc&vf7hia!*F.7̙ZC"i7t W++S7Z̪(z|~ yxUJ?Qww{CWD*c;:`NC;Ar_{k}.k\c.Sʁ'?sO"ʈ+~˜,A8n5/ nm-3T0+t)7pVܠكSXuMjm"i !6o?Y1[EvŴ}9 c6 'NU$#@UAد h"8g\D1U;ߠ@ A IG1mY;0 T/j8g*Qt9@%~NMVPmC>=΁ǻf]IYiʚ(]\֭!4om 3pH' 3.? \Dѿv1\Amo}[B E黆":z9 Fo%P6F0M`fQ L', H 5oP> Wk"_y`yVL+= i `S3i4# Jd?h5,Ym0"WTWЄML/^<6pt;&I 쿆nY%mu/% on$O as̄lݘ% R86ix-L3 &|ڜAa'۟ʥA{K,9Nu M{76dWtnʝHݬKo|"$w5(~~t($- c.H!3M{fM SfSS}ȨxAW\;^d@{#RB;BEj9:-w-K1Fuڶ?ؚ&~?VP(3X.v[ LfZ5gyMPM!C߇ywzMӜEv&Ӏ Sm2'bB&jO$4P_+`)k߽7)QN—8M8 #&>0gd5}JeY.b?[2o( `7lGkWbqcqd%|eNpLCP"wV$N;-'S+,$d;$잷,s6XcՙvϩLek]Q$/C=4E جr\T;+⒲!ټ2tmÅ?ߏ-$UH~ 95Ejp4-snsϐ2s=wmdJ394rx(nͅG)eJJR,m-,-wd6CMk2jwN|dPtl $ hCT.zXH[{H ט4=0*nY'*SpY27a76 |k^rhro;)w*WK5#2Ɖ|) */=DH|5.9K1+?xU j|~ /X~7K&suGua`1r!8@+-r_헙o/ݠ"ge%XiuH<"Ц۰J& W 8>uL&mC]Q&ڹV8Q8W}A_1YcEiȵ#|dMMI?pt̀ Jv/~HN)Ɍw>8o;GX۝3&6hUQFߙR1RsKM!$I# T$Hv>9֭J#cYskvtQHPkA狻˘p{1a^>+ ^;H4%T9?ƍ8*-J`)Hqi#+,ֆJN)u*1 Vm&{8o<~<[}$.7a'@|I׉jj‹AV^^+d(NE?¬522)2$q rrtR%<] L,cK;BVz\b/z KJt[bq|׆A$/]) 'b`ZguPRMXŭ46}lrxpyUqʥ} ;fvQtOX Y'Wo@7Q7m՜*aA00E$H]H@0GQ~Ks>k*FnGHREyR@B i.Y"@ `{xQ>" ?c PUq<}D-1 h88nM?LZ/3Hc:XxrԢ@ aҼɰ\,t6":gS;Q3~0W}bӾLӼ rCmz&KKFt)]GkZ m}f%Q0&e/PKeTbHyB [qn#SJ ˍ e1P ^rB؛t&c u Bf&Jjd&.Yp05ƐqQ&SEЉ5) 5(˙$u78sr[ /Ir F?)ēi`7oIu#%ߊ_fn^!(vZ%s+Pm@FaG3dC;ҩ$b=qCcK"o5 -P &)՛c z`Nqq4JnK&z/hpO1(QG9j"5Ynτ/kp8#{Esdvb}0ѐD+EOD:f{4~t'ui&Ku`ȓPk\N6e.`)M(0_ ukM85)>E Y#x-pvW6D9⊼x;~xOY>ԧk1z-6@t{%CT݅$xGh&7-9/*S|Ek#58,|,֏}'~.׺טg.ƎN|"bdt]4fD2]1ȉ'g ;>vLa8=c.ncL~>y׋ ˫Mt)}Y QmrK-1wUĎ[q% |"3>+؀,fИ"bC~*LJ3Z)nTNJs!C (pP rh5 .f_I??$ _?{ ,oYp}:. G(CA5#͏إ[$ -,2A1yһ %!!@y.)0ԉ[<'h"("Ҡ%7s.#geWyP} W*vYL;B%R"I@~1{+j@j7Qc2y%^7„MBtɎ]/[+}"׳Zw#GjY%4wfCmxTu$NY&l#<Q{p/;'25Hy7;}ÁM9zup]PbqAëB"+}tžK晃v^vv P{` (UvXtiJ0Te^JOإnͷn<&jxZ#JAtN!.t>jܖt (e{rM HomN":Yt8: .)ºHk%wk/tGޛLen_G}5GWBĘ6{/~%'yH]ē{h'X4w\?Ѵ;3ZZB?O)-ћWd1|Dٚ7]gW^R޿#5#tnZ(Aр>^(s'@q] rF?>"^q!v"!p3XUoѷ8g]}!J;i>!} HSwc{(ow󉘪r*]Kp~ECN-b^ ׺L;uգ-tRZgcݪV c<քxc6`7sCo u^Z_~wvp0"uH|<,3'ZH- #YTFbԛ }gu]5MHB+\q(La;*mStP@⌕,؇DhAU_q6iW"i궔vs_4)ɡ{3rAԝQ貂)w=9EerFv[g'2B>&=ydW)L-&Cp fvP "!.tH&fwb$22Q9WA'afc&uu)#T$/oE\)lQlM?v$,ðؠ20(HS;WLd%(9{?ҺiA;54;rhf yBB{Št GEWXp0ŋYlU9I~W:PazW(;׾ibH9F)P <Aˮ;㱌~(Y3Mm|"E‰=1m@ߛ _Z m˨b; c_\B6:(A@;kԣ۽?)G|H+l5ipPYrh$JV0(cA6F 1Rv7Kٞ/{je'7ew_7~~c zxRF[?GՔGbY~bZYqe%9Ҹeim/,N?P29DH(XfL`|Ht{,׿$fhW78g2kTDؼX{J ֙YBjXg NLLW¦&<:N˞EPqd(Dh$:-̌7{R̃WP7]+hA;`yZ-ʮ Ӄ? D*'KjRσ~O8E1.iG6 a'8vהEv_#X33쓯ޞVJhh?>%+nAC܏yPnREr";}6df%bx s/i1يV &˨Ƃ{D 6a ﲏWg<@n!X^%~P1~LRe?2^&r]-o";c_Uf41lNY)^IH$:A U\}v6`j.4^kIx5Qil|^@py8V7Sjaco J ݸv ph"uJjҟ%^:Y${,ٙOz*R^;U%8BȝidS7E8ڮ*UtHF5*@9c"l~_nmK mX3a؜K 5E^@m6klxK4j’?j:xUbS,ʌ-Ec{ w[,y^FRaD(N6ҁkN6N+^N+^o[mRM95<\qΊt\( Cw/^ٻ΁_ !Ԙ*qԹ7Dv3t%D<\X<41lR4åNemxEWJ! rsSY2B6A?!Mk/u>{D-<1]HSG75' #bgt\Wlu(>R&$@د$Lj(!yɋl9 #?mY1KRr4TَkqR7zy8iF3i$P#E=^jO3RL,*~P, H8C'=O^KF,|"aN*XTV@ˀ&h9^H_ªMoi}M:=D&OdWx\ %JUzt|߿̻ܹtB$8B,FY8UaF{4H@@"Lhʩ 7Y=J,X_?t>&N6\/* UjPqKO)s?(QŠ2V#m1_.gm G(? eA^5M(Gm|@Nu&JKyu POWZ0iYHIDfs-x7v@~0Q^Ep2zPyosgl|~gr;(F=\jꘒ tcZpsKлokskF2g)3m[A0JGSX+{ϝnPME^PHeRbq5^͚S:yٝP\2.V5@w*M+JJxw(P~z*ƠL8 >:TM 9tzNjqAIHX,T-IP.Q¸мB!AOʕ'K+` 6_Ab+)J}y5K kӱLn%`Fÿ3sWL5p ܠT^4r+yZMԣGpX!{pJ@yk.#Hٝj~S"q x)% Z>JKf KY̘՘{Qclz?H(CCF3C{L=_/ ßW  ǥbvjj,&[rWBhhW6ٟORV\jHAVy~3 .>l~ޯ't =˨z >3>]Ԣ$(c*Y#~y/wyEA;b#,$(osL^NNT[ǁӬXAb msCD \5\81+}2(,Ts{h<$3f!tzn,JY7|H '*E@󲱪t֕$-+[6: G{~ j9rpH'2#29܂|s$,⨆w:љaDм7Rt;D@C^}Q$ѵlmeˀĴWQfSB VщJ?kElj -a-+ *q_S%u{c74S]a'{[JTM0F "TTte RDM<dXq^GTp}68>c0/,He@` u>-"(yδ*ە8S9UK4gΥ=y"K֗3$h>ˊ%׳-mky>,TE >;Czć}~F IhT\C:q[gx{Dq;q{/{b{X WT]XLЄ?4 .KT]bҔ2,xcZMmlg+`VLԊe_̼&^ v3ME,٘= "HkTzM= )f>K#TҊī*\dՉFnex%A %dB@X;c+\ҐCc1夣'Ѧ A4h4h uٯ2:QdE4¹q +&hΤSft|(*ē?*~>֘z>_~4Ĕ>Fpgr6a5]S՝R .Ho[ؒ^ĮT .QcZ&4_M2m?$We=DC.=qgsē `A7ŕ@RN2Bwkp;AK| Ēs {ttvtT kP zY#C,#\5MTRl/<Pyf^ O{؜,7ۄ0 ]HG-ܖ7tfF2Oi N>xc{}<5Z?= i7u9rioÚ)_@/x*A% 9uUޟ>Io3=QZmҮkvx ɸx _߃qj1= 1{* DI{HSybQˉP-aM&F3B uUfF"Z&,O SSQϧ A(̫(R9ĂW8iv^Ayn8aUeVlXȣtp`LyL,VXw7eEϤq0ZBߨh(ǘZ0޲E-[ BDFtyaG$݅Tx3]G?>wk|EQ4Hcyf$+_>(E҉Xr:Fyjs] VsQ>'/4}yֺ?> UXM@N?DO̜USEV1en1&Y*2.0i~IGHGMXj}P?BmI'o( 7.-tm_Ϟ:((X+ , M^^M @wn?B@x$Hx;[cĩ4fx(Dȱ v1\ B)a2E)Aul ^9A?$jbLzokMIٖuA1CV3ia>~H S=H27OætT,cnNع/;iK|+PoͼJ>up[[vmwuƩ9ߣgD{Q² m]>;+&"kHX.$$PyܜExpFO""K D-{&qNMdcQhxM`~{ˤLD8 _'D/}7_T`/v#+ _kmiգLC[\~ѓzVgzLV.,uϩ'i%`Œ AimA [cC=峚n~p$񕳃B71Wů乫bS9g~bą)R1tr@Ʌ5*k 0ghؖH>)oF)ֳ8 q}E0d> )&DZghկ|>&1 G01oék+J>` n7ՈQд}f6v n#KbDr<{F֌x 7V5n|}͐{J_#LHF5Eơۄ]_ .8 e{'/>IμRp9-溹?_2ahL|a;ISaFW(eq@ڞ՞^LUlul[mEG]HmG TxӲa{u mc7m6'7,|`[2t!Oy댛KNɰ!2-^ "B5įKݬ(N1oy2 s{ixT6Xeעa{œNǩHB8p3:fR1 hgJ5l}bh '{*  2\AK%H;#bX%3i6.tqRvƶ/&#5"92fޜ^|7YFDRm< Un:#>ar~΃Ll x)+t-2sd-D4) JWhn2(.nE>)oqgȭg)O˧~5tRs 2 eŤg8  .PGB`V yd(|/wtܻ?g/Շ8Mi҅$] ,r#_wtێ; jluSڠ{0+HT0rX 4qƎ,%4tG`(o:bїeB5 %4,f(mO$\|s2:[q,F9Poį%4ۡ=A*UhЖϝ$i5WRIU+Y}nWuxcw&oʟ ;!RȉHa ʛa.#,e]q/ᷞ IܾkYnvr=3_ k^B|Vzkpy}o*T%4Ѐ Nup7hLN_iKgh2.8k0`.42ri8@ۇ+W~1ӹi[;vI'=%6y^}\!#iCq30F(G7XVdsw:>3x8hӿ${??N$$js)fLӗiwf - n Ark&SҒJ<wO3-C ߙރ"2%76KӷP(qhoSޕ^VOAoN6K(#"M4Ct3E3#VHI85°-(RjNWOc"6ť0vHGmΓAEHh /ۿQʈ wm^IT(f5.,ŭpZRnѿva,Qc lky0ľI_*GKu$@d|1ɻ/r.l~*;`L* X, AAݩ5 HT<9[Q$D~>\20Ee}x0 i`&-<_yXpżLΡ[)&w­:JnKgMRN{8 h*L:6\@BLtg| kZe0"S Ou`{ E|rBxsV7eKǺ)>Lnz)K!yXB)#"ӄs'W S!'Bix/Ɗ`Z>ϡOYAA_%!hlkƢ2  5XX\Kk+&CO9˼աyC kyఉ35fbSB™o mTrگm&2B7Tb\-94Cȣ;Y{MaN>!Dco)w,O;TnL?|\@[z_BL .OtQ_A].lx`n>g/{ךAΧaOSeoUQվ;. e5s7.LCxz98J gwöʭ57>릏q6!y 㔀(qrQ |;,PMޏɂke!ߠIʮa #"42*tn2{&Jgfe`:|Ы:ޡE(qlJpTB]b98E٭| pOMa 鸜Vȏ+ r&TSD#fi5#tI)qO:E;[=ܠA1̾_@(Aʊ}UI"qV2; iP$j>.'):R#p]V{$rLbMG"gJ^{9`<-hQa,Âvaid%].+FT'eZwjW S0Fk_Fk'Ys ޑdz8 2{X^Xm@͛}N[<:2W-yq4~]"%”v4 -+^Ȥ{&~Dqdp)mnsx*|LQJz h X%0M_Fn59Q kVe^}̞Lix(dH 7 / {RcH+ع V154$QdJrbZ: .GM/2)zq_͡H /j9L~Gޟ՛S Ew;"]Tܐvp=H }a,4~O+88M#^ibN.d1Ÿv_iŎ`㹂"FO.2ܢu+f@1uh rJmmI´Ǣ1%cK}k/7 MG|`v{zBr6( i9^ v٣IbǕjwJ9cBpVc4=8إc$B/ҝ֯!s^PjYoE;Mg/HirQ֦Ul Dg i$HJl;lT>$@O &ƣT:@FLVaHc<;GwǍ 0tj%Av:D "z2s2AI%p;3/ 0Ҧ^TOKљuk@??Ynn B8W %)f,ʹkRl6^n "BcYvg]M;b=HܵXX]x'̫ mfȎy%b+:'6j&؂O(x^f)^D=Ql& 9)(VT, uuO'DZ;S#+6"2]VrL{|gp{JOhI`hAg(rۤD_9 -DAw8 a$ А#.Ԍ T,Y8l "uqT|e'Rd14$zBciwXj!p$ R7\6r<BՅ[ֈ%%Hȑ_, 7 D ATD^h7撀SNSiA, -36up$ p'e֜+H֢(]bN5qu4Nƣtfģ>=5Jg_Ӳ5dp>ღ\_CR^JHK<CC9C qD>yJwj3s+E]>78"Ay.4;tRҟ-P]S[8(h07Y,r!ޙrz˚v@(g]M5-VD6ٹO{ gJG KΡ!;_a5SjVBlJ. Jg7+Bw*lYa* #ЅÓwi(M7Rk=j$&VY EclpekzڪgXKNK0ZRTkD˚,eǸuqݙf$~1̤$O`[t't|qۇۡ;}U7׌ "X˥CC.*Y^}Ԧ]%>`-GFUbvԵ,_G  _\)ݿ%q >dlגPezTeTq5VnKt\%,p#ǜԇO2_ ۳ YDU%oi=N$D8 l:\8e hL *=8CO˘=&0($-l&sJ%YK''~Hqj(WHJ6 hp.9yj݌O&b۾ h 55lG˔j@,2 e1 <1SITBJég7۫L8ySJrGtTSPw'J-V]ex?1T\hRIKDu݅QFYvuJr 7DOy28Ӂ75d Ӂk8Z^u?j0&N.rQgQcH!!Yps %,+aa_S[n" W/^nk۵_@JCDG8p>DZ1H_qi1m}Uw{\[x} (q-|CA̺7?  lV^:FHkWnjfiߍu`p&}kN~M:dh(]GofA@y yrӁg~g(Grt4 wG1y҅zm|>FюFJɦ%x`9{2$XCoF"j蔽ߙ`d<!N!^<:X(8Ⱦ"Jm"ie9=#K= xCن za*}}3@9P'nxU3?h&_3hܽn]Z,?7}#Ǩ 8*8Kz_~;9@`{-4(%!&3Ӻ:2(4`ݏ]FQh?1=3]%ni`q4 ҏL3srH 2$Ņ|H"4)sf PނfRbJo,^o=K>ȾLAti~nc Nתqgi_EhJmWp*Jp[i}+[E/>q۹SGf:iu`-z]Et^? Q\@{Fv9D)$Q+xdR0>PϏ-b 6KHMYG,xnhJ9Oe}Z:PU俞PĴmj|Cm7kZwY$`u(1 Pp[{ r{R ֲ+ vnU=KZLߡ *+ \>Rl@e1DwVb 譓ƽ6(ϛv{ܒJJMwDɗgbzc(4T A4Vc ᫴qZ@<[dBH'Meu~v{Ϸ XӶ 6򃧮b-7ֺ{#+ɫt.8r h;w8}H4ơ@vB$)30sn1ep!8 '(BÙ7#MՒ]35, *#gV\45:T<@ \O1uJ^?f'>O\B 5^|a2C%@u]&Y`w9 mu mK:1g, uPf9 V^fBHxOeƉߡiT')LnF$k3ӉiLw8EA<;cػMj*}U# 4?G' ^mU]sFoi\svcOM;+AJݾwv# (Fodi/+Z.qG9Əf&rA1%OtsnO LcJ%:zUZǀAu*HW`9U֗`T*z>vM2^K`>ڳEbNzjgT?Yf/ onRh\.æJDe6x0˅PJx<eGG;})Ӭ&y:;yH-ak0$:O]P>#K|"^c V fNoЛH#ILj5&] oaǺm^ha ZɔQ ;xL>T7^ LuNiÖ|ᐱyn/ˌ?i6+<Yum0U:(>w%Car.Xj&k2)yhq܄XAriƠ _=ځ9 j;YrG6i#Ђ`NGbT0 M!$Uzܑ7iRC? PS*YrL04 fhk ]}AVq=죻 Kq^͙ 91]zR-Wpmֹb{+,(`&3ΟUѧ'_ڬQd |8A>GQr5+dҒ jIlݬ> doDn~Hy %Cg_o?16¶?h)CT u!稖WmrW3A {%GCac{F9 .:THZ 9[VZV DP*u8֍C;^H~VӇBCDv-9ǿ rZ.8_iꭺ^lRL2(E hnpb~!cꏝB4ǔ9F!{A=eչ!>C̎;'f(ĵRJ `-f< "!ܻwS,% Ew 6) nJ sg5N gR^y) :W\h5LRS3+"F^$oD{8Vj3aa* ݋ݖ@pN ƃtIufLMRh g& 1Mˉ;pчd2ʂBⲄI}ݒ"TG˷d]c`ύ>q֡5q")V7-ɠvYo rB!IO3{ﲻH&E QU_Z 08,JIQ$NCDf k/5?eW S<HE!?y2 Rns(.|o.%H\-ۻ0RF"w, %wu[ L]LYQq(4b&'ĭ~}eTDtG0zpWqܛdL9'OeZ-(;CA*M~EQX _ԆFbjM(5]tQ˦;OkGv&! ~d4Mѷ#R1AvBn@R].$'A囓^ųΩr_ &AbGW%hfK9`4HBjUrM7Ѭc{qx 5p4ތ}[ي;G-K}7Wyu$HIڮ0e%covQqnSE"Qt|H!Y9l> ㈙@ 2&M55[bϒlv/Ex Ǐ8f-ڝh!",i.]>5 hE4m_'Ii0כ:teAp=}H D!kJe39>P2.W0GlQ>[ޕjZV\f594R\ao‡eO  }B}VLTzj'c휌߶O ` pI0rmC1# c̍Њ#*6,z pevNAC|UĊ{7ae<]GbzlXO@]쐙bƕQ1'!2;-k5q2BaTl*=?*bޝGWKWJW~u]781U}lhaDn>u/+i_i'TvaR""0垻놋^-B1IFYqQ_K/o L^et+P;bPثDL&7=/\aK>jw,KMe#ts6su?yeDG Vڮ7Ҍ<ES(va}S4Q^{5`1Hn0g=)+\xe!ޙ;02ilj#'|=v60Ex}_[ut/끧P$4&mh)pa 8 ]F8StTK@k gwkJp賡WZ˜!z9S5ڹ|ky6I2,S]N)7X@D䦢<(~ kC^8Pn47 B@Pe ٙrUsA2_4}'4 38;!y"YBޔâw}'Hw #ǜu=PBjǜ{[ P~9Oͳ@6*$v:6dUl 㻂Ks^FP]+=m'՝L*aE(;D9g91kr$l\(ߦ2vb:7r lpA[8hb-1DfHVKI! J=HYEMX*ol w)dcyyvޔ vۊ|a;^pPhy( 3)=2ug9Ci~uqK?oknWpk =Ћi4V'Y^cOd 塸b ğq0?鿤~1Cn7ዏ;9;F_ I˨e HEf5zkl7 1V e%؜0IϧȚG3S..BF5gM>yĜ87>AlyNMd1}o5>m 4K:o8jҖV*ɯDR!UſtMc57v_ qj _Ԧ㋙hKXZuOZ-)jiHʾ{\R.[dq@?}MuI)%~ZL0$|\$1;/x #KotϐS&e{h:(~\#~^<1PSnfOx]ei*(&%&97pXƦSg[㮘j/WDj` ϥL/ O+]6b+ţIp k0Iѩk*==g2'#Sx-6f?uUrY<6~$r.Yl=BY/\sQ`(^QFgΣ+?fX_6ϑplJ;mN@.;uKx7,zۃkeo'v9q#v] ?E]0pœ\a{[oqvPž05v|?3451ڈ9ܵ'^,.<ܝc{pU3fo>n gʌjNol V z\`ҦeYEK QVEȞ42XFsAXL¹[d;tW5(hD^xHymLC^a <$N= l&(-8@RTZPuq뫜hb]u#.^f | @XTY? YuQO#X;}7:O,z j[oq^<$(ռZ}ʛPy˙EeP0gL޴|]B TYZF]ϸ< ^SMuE59OFT.1ח%ZXn:_4k EyuT.ФBi3ͪbÜӚm%i쾆TB:oǭB%vkԳ3>fs4|1zR1ic y F6 K:!6$N:꧜7saQF_8DfXvR 5EuЭiG Ghp>Dñf?"kخpu!TC99ܠg ݘ;"iְ")4 'v%{]^ǜ,1lo% hzlީ,n\/dKfQR>#BIuKSQv@%6wDL!j&d~ΫZy[F'6&ba"s2Pzag)G3PaaTV;~D8Jk!xL|` h"1/ƽDx1*2a bRB#o bC"nQpU%m5lOH7\edOQ"0]^_6_$;:u Xg 44[qm%pd |=>z<:Y]A_\b{+ D1S3Q# =O]G*v\N˟m~mn'!d@6Z_f7.c|ax7TyZ)'V$ uH =ii";(LJKʠx}}RNo~oԍT3"9\pnc&PVQ,5e D#،u$aх ?'j=y$q;!Մo,/DI!1^\8g,pև >?^ * i'aX..Y(~&'n>_θR'O Õ ׉Nw)+"'+(I?qf4;@;>i"t$qEs,8$' Oz짓¦/˵dmi&pޘ AT̾~?J&u`!OM$ź)劯VW/VY&:Lb:]3AqnsU'>ڷ=.Xb{6,v36$?XER վbTOqVq=ց|g⋆.oU H[ $QG_kl|fI>zxZxK#T'Ne&BiNvKhӦMSJun#=LUkWΧ,w5𒈅A%^{W ,ǹ¥;QF8M:,9P0R"W u|n&BXoo Û vk8)p<ƻyNa?ĩ4ܚ~xv_ӖT"t{S z #2[Dܔ[+R®/x{vcϝ5x7Tܹ$#Q/!(F|V^m; !f2j0/3-)s|"{b&X)/2YN&M,nZzaX$RSW!68c}P1qn=ÞXeB -⩳kÂ0>5=٘+3:k|E E!y1CNuRHqHdy2נ 12$צ銻ෟlpn(RU(\L2a|^m&sXYA-AS4<^1A} &Հujbd|W1Ƽ3hZ+*o vәA퇧Z;t^{|\l+"a"?ή (~k`p=qAXB!: 44@ϟMc);~d զx.]cz,:C_`: ,Q9 [MH"dmZ]\ Fz˦/hw}=v`;TE`XikFF|)Ȝx5Z6/#^0FT $2!L2єsfdQKu5%]ȭEh"Fd7%@ރ|M$Iσ y|+5,r8 vG0NYDSw<TQK`?=^ER>g!US~#U,agJ#aψ6qbiLm]\}Ae Vʠlg'ij,_V3@e$'N OvȽ5 b}Pf|$*mOPJ>o4t, Wmhun`)n/ж4r QӐZ5ɮ*v ?#93?e\Dkc'eu2@eCI!gtV4cY5 ׳BlZpw2t|N۫~U9Ή--k[laJ.In2 @Xod&y˚r{]/  р\6#(Z>)S(ɮ+a'sR\mY vӴYbsza%E=WF$}7zXvGTdbY$ze /B%^<(SL#Nq}8a{jԌzYc)_,f &Qo ;W$,?r-{_*!iVBUCt s9D Ex;;oӖUL(pT.7d޹ .*W,ITw ˇN3N(>_* ؊mƑ= QeXٳ/$M83Ep]Ήlmr]U:1\I?ڌk3̩_j5iWp8h8>%Sm!ΚiQc FYܮ$sN%t|_oUp(7Al>zT92= wk"E 7}qa;9'LWvMH+n7qBX,1q%߅6-р91F-.>Z?9g(WSs B"cJ !@ cIؐrBi2?PլxAcY2#+d3ԋ!4X"Ir@`do?`1雪H #9^B"Essh= ˹ tݩ^@>s5Ǻ$H9T707BL")ɣ̐5b5֨{AL:^C$fu"љ@hjV`dSZ3z.V?+|Ӷg <нXk!l]in˶eTޑjDAӳ=sq@8 r޺/%HsZ"smqng 1#-iW| /U BO[ci$YX9+b7Лrƒ.gAc0)KzrQiiaZ+0.9ĊM=# vKn6O҃' M%mVI6+%#fy~*"zAn.Ҕ%/r%[*2Bz~9Y1ogtg<FA\R{GJzAd{%~Ei_F^"3Z19pu286!  !HGe"D\XLir8VImeQ}ֈq5V":abp`pA8+4cS) KõOҏo67"کy S\Hi{L{qe#5j&\D<ШC;mf^)ΧNe%g(uj$'(Ivxʾ%FQ-k猎Pp>B1%O_N~m=ə@E f og93\?5 Z{0XEv{sK< KmX)lg+3A|gO3-wr}.n \ɣuMS/, 0}jImb ?1ź!N<3Gu1X0x#GeEL(ix"+i ǃ$u;Yc]zBFkr+3m\)]sV# Kr|1`J96m8SO4ޑax}7hJUEUrdʗ/7ЯXd1zqcUȕUb_gA9qtE95ʒdHQɊ1bqV:̣9}!|Aq؊  $mQ 5/kb:n~aqְZr39 t[p"@j??_ s0IBhR@iQD;sG+}$tu U;;Erk)WhqoԉQ3 hv}]& @r#95@2XD[g h(>,YV6NøZjnlBa8*ˡk;=>&( _B79K)n`pf||4QS),yzwk͹]L Z -Z L,ǯĖe *'CBᾒ\ 2ր Yi׿.C#n#Ykp1nP\xHG$ӂo0TU/BfD$ l*l%3˝ٲvQ$2V8g1vhO)R("ؚSk˼gkp G%G)Fmğ.Fd?01``@ Ҍ{?w\[ƀeN4/XY%R { {L9]xk] Kڛ @PB5N-lA{f&s(j <}p$4ᮆrx%!1S֖qzdf`N&v^="L7+<[~ ~n?"x2̣g29 5Rd\yWe7G qYQT_ uf7G%>͑Xx BvED=3*qŌ?W3S6pRf8S3@T1|Ajq=\_烽lSd1ёS@IVaqI0vLSdmj}x}EӇXȡd=Q!c{d$\#m K+`g̥TA]I#EjגjBE -aab$Yz<,~(>WF\M>$ʕ"B`OŎE<:<ΧiǍ9UOcz({,q]XNP}Ka+.W}o#Yaq % BbE4g`.PPNN,0nn!E;-N J<[k^)ȉ3э~8(X2ԉos sZI.d!e@\'тs_?\z̖R*SU@_ϜTV^%O֘϶V+P򟐊Pr\O 8>4H{ҳ;#hO4o rc˴RHY Re[횂}]CTF/j(Y/]zg\q[_Z̼x⿃wr@B*L 4M'o܂) 3=n1jŬi֥T#D} L:6#EP}R((6W:_J9ElGar(*ƈd2\ZaVQYt8c.}Ep荆eG$;_B ><|xi}-f`Kú@~ LLɥ7Lgi`dO?Oh! }Va]ma;=e,f Q oŤR e<{<>`Ƙ*C2 lՖ&%?_. 4R/P ӧ??њq"aX 7MC&sRFgBݍNﵼ9yFtC2z,2P"EDl9L&/]w0J 0 ,z%Pz |xu:띟( m<,Ќ$A/>8X+P<9!>; #R+ #uk\6iOM Wރ6"+O=@SQL:s';ދѠ8 *GL L&4 C9cm qD0B4Y sMkKov]J1Y?Zmaf@ cx̮ΐWEL[/Ow7)=5+ pɋDδ *eBv`K5aoEo2<Ǥϊ 6AYy{Rl¯WU\{3CH> Un=QtW;M+*_*Œn 4OniilU* unYMh.E&,ÒMui|, Piף !vvx๽o0R4rQ%pvC}_YucY8f'ޜ 'E.=?$E5[W.]rNc-B%0ik4أ?K*>V' wRNyoG$%| :Tr^-rҪ> /8I41O;)]){8ieN#{8jS{42̞a\K ݍR5@-ȏX?w?aNW/xnTD)GDP\g2-'2 WE{&@R[ȷm۷ 4Mȑ.E[0va,﶑ZD(Bz<]:>vj6M.:5N^t<.ڷlubEu/+)*r:!]jܛecݭ_V?R($d˯ݜ[?N䕓|<|/5ʫ5@榗N \l_!X3;g|hjZ^aۮܖmq~$DjWi֪qC u>G*CPX [-E]#ߌ4'-d2-fbn=%= N)OѽESym o:.b:Bo7> Fk2o:睍mDg8Kf,C{V!& R ?jhB{/_o]ȫH6ewq3AYet7j~ॏy)yɏ3^6D9DW&=ĭ?Ŷ͏F|%A(LN@C/;72aK0sL*^qNGݙS5o/mS7?4pGV|u5FÉ}?a ?mƐcz7Xh9Y\PFByk;mlEg*eCR.>Yݤ÷%oôG,U/^,a y6@pSygq.@ֺbnTܭQOJ Ѐftxer޼3*(༾}I*i=%@'sM!jTDRSֿ 1e\&Zy&_;ykn /\-6 aIlmQBcH{XOX_K&-ZOڜׂ2hӔ33+V%13h8R<&1ʂK],`s8ӡ;v?&>xօez1HνZf:ҵ5GQ`3"lGMlƩH!lXsu2,縋_p6ᢦNeCY_ Hf6G^/R-AQg8rlhvC3}F:t=.oژ8*'~*ٸ:(|4W}[׀78*~MZϺUk֒(B6WrGzc$Y[y5ѓEG~0G@̆f$"R㴮Õ>#SpdE @fVFкgσdÔ9R[ϱvi7+ud5!1?%>n2rd`T.`{(qެQ'KBjD3MurmEd_c*imx(vW=ΜHG7AnL~]1둅[][m?xPsWqOi05,k;:'_N1;!yb4&o\ Rŧ!Cm^ЬT|La%y6C>gGTZlYJ%jaDkˁ&jB^.RYo<2IqČښ{J*Ɉ\5 O[ P2(g3)zq;}Xɠy`d )js{30§f^L7 7&'N3O{$IoJde %S5N:hC \Hdᎊڬ]*:q!p%$18Lc+zS~ > 2lӘj$Es5;V;rzD]s\pO5 ߑgnh^\;iӋ|[l6Zo' !kX9 y+cQwRyB {o2I+9Z_m g]~Q'9Lr3jMG0vr8t{GEPMv#"7e~;L ]$9}  N)aRnaBG4WVۼ0CTy87>hf9E "9l!s4[,e /usX=b V2/v.P? )V{?蔚c^U})絼\qxpM'9o pfpܾo&!59opdQKlT>Q6 c57~"7.…54t7._c%)!DS03Q1)/i@ K3 -Ql(^uhU0Lv',Z,]7#K^'.6hX][f*~5uiPtߑ:S" < ԴS8/0&?Z 0iRQ+Z,|Ĵ,r)f]Ǧ'cK|liwPK+ ̸(Jm} 6kw aOw~|5pA.UJ#OJU~;(_Ao|zKkgk8a=i]mM&tu5!HnDdCȄ% %C=%f8V$G `z/Z.Hf]֛}4M_R~HB `"ϋRLxhO+^RB,zx1q](eh,#[֢<ڟQm-Q#g! GT*s353~M(ۤ:ES9 j`-YJ}#n:nNns"&z{N'= 1}y4Hs5hqHEűÚ@JqLQ_T~OxҞah$>哈A절;gk9Շ.6 1b^ޏp%tϡusC,{e%lBmgml:塘%8P5[M7!nQ[mKpډ@1\Z%"-JPтR3jS-p@}i#H5Ig[Իb{; ܡ I(%x@4dMPeĵ=te VW몏๵>۱ yTSKgSb'3TB5f8IB K薱0F :.̓.Jp{pD#\Κqq5Llif#-iIU;-1Y0Wy{@^{^H 5aDy%0Tnr#zmHP|;\nɵ*XgFаA+ `MɥWĐG:BE%թ-kꀞ|ܨJvQX!w0n?rKW'GԯAh|{`\q#V׶-o|A1>BlA?8UԂ摊*9 -eF"N,eúWW@#*vڝTQ̦ݽ:k-Jaw*Є:!*3Eg+^qۋ&vfW3űrχY_\ius 4R뱡!alzJu\aaX!xoZB(עԭ{NiJiF Ԉx*oanIP7Vb(NTo!/3֯g#K Y*UKT K)0Ljmc*g}j0H3e.Ե%3[.ƭcpxƗYfo`P?]+zE)S@zC.JRe2At^G EgK\7+%N#`怎d0H9 @GjpZpy<;(fvd̀7ZU7? +KtLav%ϵ-x,J)ƵWsClL'%JW9*G4 95xލdrE׋_%(l"c\ľ5`&rf#Y8*Xwz{!h[ :Ns,Lv#\\R1- 5׌Qpxٰ" t,Qز̹ j )1DWω/Zj3;?~V 6)̋]ģyZfz1Z=8P9 ]tnLQUYHpYݼA=70 #oAyjS毿N1Jr,qpvFEjmTX\Ez!hᖠNac&1=rcd \ɺ}Sb-CRe@%Ak٧gu- "\jRf _;qX-k ViUk2cXEx A&OiH#s6^p c}U܀nvA Űטwh,敶*T]#  {FSӻX1/~i̮rߝ5jRf{6RPE Zye|MoaD*dI%,Z B/M~oMf5_ΌGU bv*/ދΝ脈8? J@ GAA%BvVy٘ʰlj[f2 yMDY %01lC֛9&aE3ؽx_.D2r@?ێB23x>زy V H){E[P6/ᲀCgdkӲ2E_QXߥNhܔjajpˆi!5-_dl_n~khPW GDjm@JkkL~{,&gjݕm.J>|3X<Ѭcܰx_?0`jFbry mۃ!+\Sl`MRWn _\:sJIlV^G bXm]fuhÁ#R8ZvJ =2HWR"*bKP+uuxP:wzWT $WEw3ZCDoz˛NhE G2PLMDu5B뵠<]0Hq S-՘pl RkW>^`IC]̷'ɣ#YZp4h]Ȯ쳯4dڑ&uhݙ&QtCF!vM =@WU:Gn]]BT'`|q47 iP~1U MoVD}KN Ty=߸ʴ;r4|spǧk4{KS8DT4 ~%ag{R78ۜɐ1H]eJ_ 3>1ŋ&HlŖ$["uլ/x?PdzE_'ۿe +g];'40%C=#<Л'8̤91ԼM!m)r|<-|W5?ȉ2k#Ho[6FRo33>q%Ĥk5⛖V|zG:t[^!ӣ!]j¬uNi?+ ?-j$IJM9'8ܔJɺ,=2o˳>CuH~@EQpڸZg׊vrAR"UΖ$ymYsӷiwGlK0ިʏ֓jLD 0K1dL9B@&I6AS1EHlWbjcH RC]O'I%Pgiag@ f),& pb|En=_;{|5BCN'4;7SDٹLFN隸 Gh;R=J|ZżRgM)xkUxY`(YŐ̠\W7-`)PT6C1^4#x_>>yD̳yԄ6,(#cLO+"qK `T/*p*cd}p%Ko kz3Fֺmr GD_E Hj]T&2Ppՠ_ChڎlcҰ;1+('XЬ?|a({0s$ɂaHhS`Oeཿ)ׇCw='/@?0, W&;,&wX#A̚j㵠6LO#}5<;;UmP6d-5m4 `!\ۖ0| hn(r#fbA0]]Tܫ AkSyb`[r?(yt߯|ϒD32g!a>^yc<(`zA[\s>' YVꙒRC5j(rO3BH?NHtoO\-ĬްQFF\mtG0wxV S.J{7e.9. H5|ABc(h=(۶ҭO.GmG)yX?=(Uxi)%$mI_-yL+|f{ Ulm?RYĥ|KIiO,3Ozbi㛝DʄJ܁[-6P#I]Ǿ_E~>%X;B:H `9f~3PN3tlLtפvhoӌt)g~Cl!Too{#(7{#ɈD$~ -b'#$bIM_oPi9zQL!lJt|jѽ6`wfȃC.I@8% .-!TO"]uTYRCbBC]4=]tLMK %Bvͬ:S@*U0OS-Є nr25,PLZ*eaRΣXѧs3͂?VZ6V5frЬD)"BSs|* ԃ94FÚvt!Kkȍa ܳ6`kh\mT._p ^"맧w =M-漋C!>Qb m %KYrl+..1*"C誝MZvOe)|ϰjL`l<bI7\ ]/gq*)?i )H6G0"pRRƇZKNh5Yj9'Jn {#ʴp`6]ڎ}gbnd5jyņ>Mūs]<$K w[:k»cQF]_n0*9>Z|+)ªMs2ȁvۑ&]4\f$1?8;2(pW9 b䞩nFsDVm$k!2Q}a7ܤ˴PrFTЯe-@f)VdIiv5f'' p D1%0~oh-sg鯎h1c+Q꡺i=QU΍"3Z (?#n0zP?X3RZg P]nz/cfBwXLwP@ЛHUC8k"j6r@VC-9͚/$PNbM’ӔTS/H8*mVqg窉 esPO?#D̲GNJmШv0BujZC;[FjK`M%(Ÿ-iTik48cYxSfe$G:"e߸6k IQxH` 6pk2K;tefdְʟZI 9ؗl Ǔ?b#")iou,mR^6ZqH?-cXcFrWP)~ ʢ{vMUA-ˁ{EJA&W4zGԣŇEZ2k}`@K/_Usŕ \?T0n:U^F(+Qaђ;S)AUy`jFtueE6'5[jW1P Aɪr O}T}w}~c=oR i1ҭp|XhgɁ/* @=*4:l@Z3ʶ|*l?B?z2|5Jzyl8%YdG.xpxvuު X'_(K7w8IkiqPD\䯾. $e9Nu~0Av C^~ǐan&\ϡ${+5.\İn]߶3#h,et l"l]Ze eS]֑_~iiJ.=ϞNdW ,3Œ#cSb6[ӞX(5E_5 n:k/kl՘mn[V⦲Ln*gT&I"Nd x+O~j[7vu5dmhQZ :ZG~ (N:Qqz'Xd.gI08 ðO㐹 R 2t-qK7kfrBcCfYߕE8%+Zfe_YJA%G ]K$æbR87¶cT/˛.ߩϏzy|sn$9e JMƏ _J$oTVi*n2] 2 /ZzWBEn?'R 4_߄9a6&rCCdIv.Ѡܬ#X,xA3m٥n. 2-tz}i;lŔ}Da#0VϑcY^$M#y~ݨod?\V4щS *C,d`?^?Av4#1M9:4Tu1hKP^͈K?)نs|e9 ܷh?-]p>Yȱ[M.б)R_XX2/ܯ`J-CτHɩ73+I܋;բ>?U) k@$iUE'Ɵ!Aj b'oMFsmс+lޑBNBΎkMi(F`NAL߲01%ptɹoE*Dd7|5͑]n3ɰNn)Ֆ©י*6~شcd<Դɒi I'VdYe+4ᴹn6uK5ԏY &dV"igoN%䨃2AIt_psXL#ʏ;q݁'Nzʧ!fGFVS:%? wKhYCoVs~Ej8՛ic3#%r@7bazʯ(3ս. 3JO\6AJ).Id\RX4l9n =MuۢèqǬ{;djG'$.je<~H]`^$JY& A>.εN:%': gD"4'☰ȼsNg[K̗Ʊg9N69ڤeVe;Njw9I7bbPG憘@ѭ$6K pNJR!jm)623EMRM XbG4U_Iagd{^f"L e$uET6$}ɌAmX Mź`{uÅ^' vV LP-lǘÛ\K-!40O֝Ki/^#j4YEei.HMgew}*YN/N$PjF.Ck1L*.Tk|?jg7eCvIpU{˳}=/BV'Bus'~lqHAv&jMS ؗ tFn.uAdjTMKG6F"es3qr4 kk(>r)'ٔx1@ I>UCQNLGb{"0|uEeN/xcQ{TeyE-9<@];Pf?0xYus6^ 6 PUBGNGm0|n|σf0I<~uPF.u; yI`u%c:z?Y*@ IxILq#72V6񈡍8OeH- %,dTl=L5xd'E봘Ymj 9w뵱ˍ-:>%Þ3Yoѐn3=QENՠG@ؾ=sɋ50A\ezNS9cYj)rb*G\-+FMe :E;X M8\&wWqpAM{|q؎ZAX/wnsT!R^PN4?8,H e>ЂFPG8<ďIZV@Tz -(w Wv20+F3jdOȲӗܵ ]"^ o|"HAXd{}Ѱ+(uaJ>2PaT BaGS`?èCЮ­S$*n4?c?/`)"yſfZDJ}WS&Z8 hV#1%bkE/#_<7<ǶnNQ/D1D%Y22F>AYQo[QҬƀOJt:E'*@X jqc0p`tk"$|||_1'{ EwĕkF]lB(r!Zՙi8N,σOmtQf;NV?ZqIS̢"b|bG\up&}-;rRdr5AZnK1. Bsk|]`RF}JkGd# ASXcr2ؾme;1x;O_Ptkmls,Y*2v{ގץ >T6 ؜ Vt@{*sRav8 ?5="W˰t@jTQ7t0)q)ÊI|U{`18誤R7XyԨq[[=ĭ ȦfBO۽ mYwg*ҬXIW;-qaj_s1rKQ<uT.CUU"XT 2BB0tQpz'z)wfj|`'mXiK(>oW3~ӏllrt!-2Dt ڑ+|l~lM C$ [!>n}v2$rFB&M @γ~:::Jt$_%ʮ -AWdov~!, > 4u6-;GyTkBuZD&+ۅ9b$`{X_8s2v ֢ qGU=pEᾱJ U rmyUO*tѐy' ^ײ|έ&ApSj%n6s1pqX WMaQwM,H>o%Jy^?nlMYntWd~;3t]0zb7Q+j ]'SPu!bxV7=%ŽOd_NT zDI+pW;˜G#@A~_e=m⠵iXVEyð19ş99Qqm"^'z?ww4*J9Pno{#~IHBλz%Ӹ*UT龀oͦ&|@zge0wT}yS!6421ZZΚj\R\#›FN_g~,Da',CuY3eO{* J\V![ґK R8 6 T/MQ6.oT4ۇs=>F:AT<@lr.6$c"$# $f4x hhܥA=q݃Qi|o=>Fp\je}(tF}N$-GbY)a$0@j#jād+^Mi8&䐿Ҽ+o߰`-0p-Ag3ƞ%5M}~[&:U}Z0[h\G9b&7C].3D8w<wr}`H6+{ -{%0 !:d(9zMa *ytÍ8!O]XLBDb}4^*)2WFk}dUԆqk5> 9IɤuD[7ς͗e}\TJRrhm ˜펮dP:D$h w4([lw={|kE!(~ؒņ]h˯Й^Xk/>4Y`oQ^40Ӎ7$: CpMGa 9 ʖQpbSSn&`J=z Y FL,U+_C&efNvB!A/:Ce17usj7Kz011$W׫D?Tzz2F#F8Qy+A(+Y4_Gu'Wm#$a[Tޤb;CK*(@gyƔIх 9' %Ż +|]XsEhZ<=㱸۠" p.dgWNYyelxzc[" R7:c6|} >K;QW~IJY"jvU߶pk{h[¦=4CqF7iSdug]NѾzD+Jw"[`S 雼 \i]Pbc72XgBk7c7;&\Ls>P@C#i:+h I*T񻗙 !'j\=G8p){LGӲ|E., = 02bUHe.74w37b~TC,E˳h֬eI/e8֞|h>ds X8I<:3# 5X}nWZ/vu&у@Zq}Aڇ\\i`sk2%ĕKX"Od\jq<{tfw4loX(;sQ|)Uwj{#? p30xXP͎Q> 8_>mwħѤZYZM g(THa- לfd_Vk(ztnm_l(!2GW$7Qh7Ͽ0`ˢpKhQBBKFT}2tNk SS.yC]=-4D 'iy5X{DTe7܄HqƊK=+?X#"W :ZK< UHH?%hQTtiʱxU ˩77 _}| /,mT<mn;G[cڒ(>HYG{goؒkT r9`mg_N!&:ؠ8sXbO  ~e|6o{ c*R)ErvɺoHq > ?U an~RFH.V[˘%,{Fwʃy=O%AgF(WƴE~\`S.,b1Ey:kQ'KgQ5*Hf Y9jv? j杅^&W.OMStl?&e>pR6͘-Sj|3%hB pk _J=.-nQ`GhZ<f DJcث1p8$ֺ&_`Fs>#6ZFd'd5ky7 f3fKAnJΥ ݃vNwAfI7N`="H eG.Ws7X^O*4LX.PFYϣK8xki.}Z6Iy`sSvT"9 I[_Ov[cfJ i9+"!YE?PɚEa<),s 6'"N܄>_bL|濝 +FNuln՛Ҏs|^0J[afØꀧ>ҚwNbK[}بbhh@&UC9})M}g2NPUh .gEf[#-NH;RWFPeœrWM@|Dsf}Tah$YOR ]OS&Qq^#'t{Zէ ILp\wHt8M)Ƚ NjT8x=/D<]_ђ9xs } )`74d ArP:fo8q1v*#IĠ>*7|$ԏF0Rݻo`5OT?SCnP\}Ll!k(eY AlV Vk= pM%ɰ熤IYs(Dn*=˚.:IR)S[C>PEHY;xUbx`u+h Q9r7dGl:RrS#DUO-<8mcLP'9fg|WpLt? W9ua,;Wԣ /he ~ QYH'kt? F =m>:Zq\*R @j[)xXiãaǩ45:;25c0jk&z}v>-!5bs! 7D=(Kڴxdݤ(1l׵\rbG1/:rN+Ynmâ K*ߑ5R 0 RO9DbpE`2F1nԶUt~ x+Rli: by* _zt.%:0`([eZ-&sHӔ#t~jnd*MhnSQEU& 9#m]#zZ/OSV޻[Y̵}kV,)mOilQɄʣi ޶ۣ>TĂVEJH% j:i$dH-#Dt]E<ŶP$YC,)j ݼf}iB>yέUҵR٭'pe`=:(rj^7iɱOA[{X_6;ٮHV5`YM!toaB1[(Di2r9Z!Z&xX%*~MYr*z18Mi!ݝʩIq|{i 9VLq7UTʛsZ +3ǀP,P;([T_6c)^,? ~r?}}B.6 C2_da}\:z{~n>&I2+#}9ΰ|8 0T.&\~l=)X-G9H-5 ۻ,% ! رzaX@3^eŨZ MHSI=dv2V7[.qSؘJMmaTv (]@!M j/7WE)q>m42#M%׆D}+ u|N Eܿ.Vڗ3~g烱 Q6e%>o%&gԝ}e4:(O{W/T]ۺ&OpddeLzuH]D {.v+R>"ҖCZ>t-Pg͈gdqOg\~wLMXgv.Pn%e13 خjV{ɦ͟f I䏆 ШVĠrY˜]x߁> ܘ>*狽Pf5U;I66\ aF h.I >3#Mz)GFCZe'#RH\|dJ;Q݆hpsRށh=Ipz9 h[9+\.q(C6X)ַtנ:h6q@"GmSvzs lj,J"~b LQ]6͵Fm 5Bsf=?Ħ$&,>;ZEd%#Ϯz9/tE:yZ-6r6މ+}F#3*aecn{-c8>-q)GG0kB=+QYnL {^tr'5eK"Ұ< f'q8VgKqHϝ~s'LїD<H7EA?VDAΞ.&»WӪ}UH9Ib=5趈b\ d"pv/椮mw?̳#RSiV%Hri lz[ǐ"vx*hL$Xd>܎r&<+Z]:ӎgr|A a单N_!<}/IqcɟkHHXc?b ?EuUq|G߆Y|-uj>ΕpI[o?]̼ Q*dBQ 44 =iG_ֳD3)s8UY?7|2"#Oz^i(ۊ)< ^-x%.яw愓z 4\jQDˠ!:K(7G%N"k\,%&xv:D;EOET4uD$0"9HyoA+}YR(E]i Ir(RUTEaDOHgyN6*@+cL>8lrB% >Dź44V]iZIj2p$ |p7>-RPY󄑛7rB`t߭KOc펾U"u8ָ F{Hp'jj4kz]u1TV9Gap>+B ]v5q/?(|7ӫJǦ0ڊLT,ީq9I`jGttSӒ9sJD,|:+u<Dsl\œZ9R4oiEB 7d91Ll >'xΖM|~G"4Q0,Q}AO@| %+DU5 S|W Kmгeh4 P,pN.D0q}P ªV aՅaئ [%oaqi%^UIkE&q܀\[B /ӘY5@$7&}riOm뱅 ¥XC,1@ QvDMe@ɰ7ʥz¸8873h=bDp}Al]m'h+cbAO#j1ẔX mEg؜N#B{FĊܘD?6L/vV8"yjϏWv0RgT)ERl=Z̚{pڽ&o0аte/u"[0py`)a).l/يR&sWY7bjclj|&ʈw94DE/I|.!${<6ms ֦Pe ַ,;Iv ?:ה~cXA31Ԥ$]o7Bu(/BmK;mC#9TLuPQQ-P鵀˷ڪT'F8F @D^\}9~T姅ɅyܗT7*]wĝ[ݯ!( fsB^{"ІpMu(Cԛа_(k4CRƨ3:3Nl$K]$dt̜zlp'X)yPГdv4@g[\0f ?:ax+u*Еũ;E.^љ?nvSZra=RʀLiC}XCTtQpyL[ia^.|1KKjKfQ;_< =:!?nx@u{{i ZS:epOyćdף(nJLY/*G+NlR=JB+N[h=3\ъU/Z\L 4[`Za)N R4MiP#SAN Z|zdz4d~\O>7D/.ʵ4tjQShN7ŧf4e3WIGwFEU<тG{4 p'&"fѫHg|Qt-Bno:,S()^ .P%2r"–"P޲_X&þN=st c?$M yѿ6l~QaUJ1^҄V 0۰]Y9+JÑ$GngX+n_ OB#=h-<"K$ Yf<++=˷4hk"14#AI[!?G-&V BOa\Φ^NiP"VM:.kא:f5Kq3ꦁ\lG}(̀U3#DKsޏ)9"FM0 &Eʅ8+˓bi|Y~)f]˱W#A MzYi #;_ad쭛A`ؾ-.&H 0o@-QWڐJٛ.(8V5RyMg깼F}b#&I[BN Oܘ*oI)~H gEAr|& 5޽㶟k8HDS/qj'ۻB!}qBI&ztfJuy?J=⏝r5ݡO{"V s δeD Xy)#*ZۀFVB!.N[c:GMYZ[uڠO{IḊF7aT%-0>p?:٭>@$z/$/c4~`<jj1qZNu{-ܕSܠ5bTFOBڄhP|.oa_ҫHA{':$]~[ C +oÙ_Y&#JrL[1 \Hc^-rCj^ egQF!\qn'Jf.ĕN#OC2sr>.~1(a)໚)1f%;6&ĄE !UB6 p2T/M=鹭M=q+ʂ,(/b'VwT(-5<|B8kʿRF[怪] erXP_-V_=|υ >^T5KoBљ K\Aܲa~7`HkFXL 984 628$B4PGWUPJ:mELeƗ(g=9J+7ID.wkblH ;>f-HVL MzMKyR,7[4~RAtƠܖr, [Fbkȋ {DtIK{*1*ZB3̄AQRc8 g1 <`v$XreEd{lݯIyN FlĘe:17l+&"xNwޞs`wr0#{;@Jc3+K)w Üϲ(ZoFAKHT5 oJ(//R3/e(ĿT %Sx?܄EPvmeM=(Y.G®?0 o kRw 2s8mښ D+[@j^i("]M0,0#o?JpbrFsP/˥j;1~'=jX~]1~ ՚gJXெ3o`3KrAWS)Iw%ebPa83yRo5Xhg_`-Cxbޛij@ܐƲ|&m]XU&T6zMDYQ{ѽVW`q1 ^BJš [!$j'jV=$jLj~bcN(hguUsR+jsAgOwShm6S,+xI\7jK^0?ۤ53C+)nnPBcCٙ"0]WP'cdx<`ZfK3ī=N6sK##~>a@.]>%՚tP>1K:' 2=$yw#*>LW/eJ:,V75s8Szۼ?t`8½6uhelO{%wI-1ȟ$5G6"Ikk˞j楞%l8kb FUp db.2/xwν۴b\LbW$PD>A+,}"viu;sK.m A ( qdbڎ\t(E?^B=;X&; T`KH4@& FɅ*;4(B!B%D 5?&GJH8 +Wy&2|$m q֣6(RPN7Q :q!C,W^C5!>;QD ըt~23IaLO%>Fz<V@T(:@X[iS('|~ Wƒ.=ts(:A,ړIP)P{K _wV tE9Cd  ,քGUBAe}8tp*Bo|TGXnrݠPV'Wl3bCuٗ8y0*eMDr[J)v2:3,ht xrNK m-Do!m7كqBQ)ѺZ?JLlAtKRz׻a_>6kZz>LљvN$ /M+xq6?$#)F[C w5rw!9{RU I3JϽ^AMY~z `o /P={99RSfCA^^Ҍ:a|| cI{xͪpИc99!U *U6t-l$`. ^clJ*}J665\+O98Ĉ^򗁒>,X ?n 2&6/iFsD =./lIǏjdl'{dBN\6]pF*hG~t #'ON)LpZׯ1&u& y=݃R #)bUd*=xdP20Y!OcR3 RZ6K*KʃtQ.*z aK+xW e3zur(͊;gmk[ BאUEC)mft?NztZ Hj>EN^UkZSD}rczLТm k9t釭*gh[삚 ''Meۤ>Dyz 6c~ XݖSk=oNJs'v ";)s7xW~K+ mԓ||>jz^kBѕ>Q xaA'(̋+3aW-1&cēG>}JiNUjș$l}/sIԒUcu Xk$7^3?mN`I4I (d9η+7K՞ܸ1cH}ȼ-[5.NnŖYVjTt IVXxt~ap7)[sjm7PYaHMY4kx#QDoc [gԋLqCu:@&Opz1/:KL-J儹.}:ˆ,{Ӥ|/NǃEЌU()@ṕ6ӗt :9 *FcSUthsl}fjӐHCٮ \ޣ$LU!+&ЫIIZ 4I^ߑZnX  \VZivm8?iK;Af١ yFvgѐ'K;75+f5+-`ĞBэ#Ea@UFA^ 1K\cG^:zϊ:'j ;k;/Rg'aĖ.5da>e DlI%\j/A=_A11~hlj''nNOoWzD=M٧zߒM*elceUM? "9 uu"ܷ S.X֏&?YP)Q3P: RFԪ76S$\r R *qYF9 A 6Ow^*nqɈιJ%"?% *Ӧ lFGՉ+ب1b9 Tqn]eo63+;S^pBk?44kJ^8=KWc{9UG.<}= qCH3nBqЧ4;A{Y'y*~w't(P9]ޏCQU*KnDL#[cTa ްce`j;W/jAbUx`DrӪ[+\DNt ތI]Fq^M.?OMG@r*Z;QWq:u1|Uj~MXrLw%ot7Z>e#RȨn8%ɑ81?ӉOAHQЪquIeO# "}} ˮ AHXM"'V^Lf qG4 +Yl.xT0{4&V=TJDgNDt+'{‡=5frHdMX7G;?RcIIdT4D^ y_-[Wh3V˕|~?xӝ;e4*a5X~1f \ ڗvetWakԡ;!m;;T>-lﵯiSmK4poD^}o/a=M Q])DD WCkԏahS8ba'VyC,}DגK1 ,10kҿ'VnYUN^0%~by|GH 3[HQ\9zH-%OJ }ܽKcy -{O=\1yOcߔZj>g4ǝ5aJ:$kj1wx*ih80 R21E_Z,x!(U8WkVT[qa4 ɇUY-kUNq M6GiȚ"ZjI@ I"}_c|3,ZY %&jz$~1X,7_UKi@|x$ȾJ%G/a⩴4[ݏDxrW5`51K NC+ňf,0@2z[uh룹#?=)K~ )wz M ^aqq]Gw`BAaA?xS̳<í!#^`eAFf\R˹gi`zM9<~i9vgظa?=q:{:4 va5䠞XbTupNkeҰL ;Pŝ3T:~u´hW Wo O'{sL pz tnH`\.K=l?(З0ԫ5s?_oVVpG7")}moؖe):ݩls+f[IwT`8vY%օ; B/"*P4u?:ݬJ&+Qk_Uz(qn}(;EmZLМQJ d6h[y8-|݊vn3xS'a^{tvm?9]|ܭ{m!/J7NE]n()\ VCVi$&8~[D}CV4ctR1;c={851ֲ rsց5'{%x8mX@ )JS+hh~;flR1WZ*' '+QHɌ-8@pZ!мDVM$\lgN7,lnԼ.s {{.TTΤY`VM`f0lVEz= XW%EKBw#>*Uj(g0Kp99 /ZLVMciYv^ՙH'åz0yiSѐ_0Ok&]>qgZ_&c>>Ju*lٗrjWL׈m>?Ç: $Lx|Dvi^ mؘoVܖq\ /Ha*.ϑ3TW.3IIwfy}xUlPv)k:ڱqZRD:HR+76s$dhW`NP@_Y9=>&*AdH3K1fk4l!R5u~s\k "H}gF_*d]8XÀؽX$H ޜ LeMwceN%! xT $М7߄Җ^A}ھϛ= C\U lfG7fm.&1;wM;4](:Vz}m}# &<.GILF$Ll^ 'ȶ#FEvDQ)V⁍ dș /{ٙAs>wnl&/-@>djQćn̕`(vvMA?9n "@j$EDz)L91<=v D~$8FBx^|ց%|T@`y1C’Ey{'M5QLnŕ8< &d_/@(hŒ!&'̣ːLM1'O]}6:hJiU7{k4< (+AEr]BAh @+D X=}uLj(=ArMKY*5pĚ / N,pj{/8: > Qjo_?K+d ]RjD %M[}2~W\/oif峮.OKP#&AW:xB߸S ǜKZ'DD'OZԮukDcҭHCLF-"'% nc(JJTZr(3HNYкqJR9SZ&i<:Tr.Xn`$y3N`=B2Pa\K MtErcmg6+-Ua~xAB H [Dh<V1 x=prN˱Mv&[jdy\ ,F!`n(cx[~r+:/׃QyYN2!f[^ oke3<`l?;s3462{Mk(G ''4]\}c5*Γʹw^ɹ5[_.;9rW^F@`SɁiݐe(1dv:d #S.suGd-$ёyS8 gԷHv 򜞚FfdýaeB9EYUgRa3 Zf\'u-LDe M[鰼PF>hj6HR|[o~G_a l2kxӊu9=Ļ5 GqQ7 ZV/ ?أhT^3pmd+7/a Tk $gY2bCNi HPF{ 8X 4 R1m֕S>B~"в- ]&K]FHf3_ٮ3r.Xޱ+8,zߐ )5FmyW09w3GA_iXC 1*gYP9YjI KȗVT eD($]H>f`keh$d&Q WKǣ XYP6ƔXv:%w īi!0m0hoo %Q[;QڢO*^-|õ\o/KD~f~W+Wskt8AJVҴ|Ȃ{V<;kd4^",R_XsQ*ZkGC_"MJ"ա㑃S\6-ଷN!JVeY`/4WhrzsVh,~`ѐC8 |i\X]Z5kU5W-V u,$ <\V j3W3GƢ Mˊ=Lkwz| z sz9fh5ѐᓤ_ΑqjĒؘk H>DP0]ecNiܔ&"U8ya iX%hKڞlL(w<„%`YHhm;pW~_[IXw[p07"3bUJ~ވLRq lpnkIwMc!Mž97\b,f}֛qG۫XUwʥ2GxJ2# p*)uWa$cNCuC$a76Br+9d3L <2{=T =0Gzox PwG%fTWaf|Ɯ[:}a2)_9[)rt\nBԭ9s٭KGUm|.L* rwB@[ސΤB, D``I!~gguB'՝/ܾ_4P6]a0"+6caHB)̥FwdTy\R Tuŧ3r,$9vsH1'E>$ T8<oB+Ζv$eE j(ހ>\ԪET E,S=7 hY" %?T)KSv}hW <xJv  qzj 9w7VqБod'WX&HATčm5#OBN:X1dFݱsKmā-TO,d rӋ'Ϳp ̭yϻHԗr{EgW(jiُi^gmt-_Xu-tEin*Wͨ|>9\BYAԅj7+,#DE(ń<ÌF>*0ZGٯLoXiလ[3y4yuf$$ȩ2zbZUT eׯ=jWkїTP5ǸCc myT~/wЀz_T?j^lSnQj(K݄߳Qt7,gR ;>dipXUs\ִ^Dđ$ZoH8owjl{ VBmyGԂAWkG-Ѽ9ij);jp5Ͼh 582ЁQøĤW4ѭ>xcُa^lpߎC0fd_? "Famf;b䦍wҋ~?䞯,CiwV9?DUA)3AHfDi}i{ޗERznBoxꈎy#bŌ _ZE /vJ(0Q`ǼG @ƂiMd\\B#.#Å<6󂝂]ӰQKY͆8@W_Tx;BݖdP ,\'l+y.ô\\jK+d q|N\K$O af/b\ ZV}9Vi 15-^~2z+P9i&dg%PQxqjh^n|)?NPxI%ȂeeBkq=BgnP>?@z:JcO4:k=4SsJ5 }}9Ư}iAJ֖tKtԫ0&es(x onk_hWtBF+mHNMS{ sI/#k=lI]RƊHC*H{X4_cgf y[) Ґ l^> HZZ:%:eưvmiorNU)cTL+]40:L<mU3ɹ"ݧaΈ?oͷ'*F[qyZ}&j_%P,V-ؼ3BU Vk˰TN*>De|swnWWU { ~2k4V=diDZ2*K ]FD̽ {`6-"?@N3.cF6:埡UgG)&-fꑋ/qf?cG@ AK q^3U}c|lL6+ii0[ڔk1cv>즅#%]o:If$rMQWOF;8LMc;ʵHWN@K2pVt7>grl';+ܢy(ljB jbTDXI<&7a7@8v2ryxU3EZp[lGf4>4Y ^v6j>Kײ;Άx|5+L(bD,4`|x^G|,J#D4\O$BQM<0 .*"b:چ"!k{Us .Xa7T]Bj1 )5ܰUM8OIڑWޡp}}-~OBxkjWſr!/D튗J"ֹ.ِ >kSQCLOٟj,@ (};vzjPl}=F)^@a`ESu]Op 8pV5mLs#_"ThKP`:uP_󙏹83AŹ&*6uվqsq[f.pj@Kä/f5Y'?y[w77THvÁKװiq{ihP#L [qCkHQ8X]3̻G95kMKs6Ip"YQfl)Mưw϶j<+/?$vmع,XC9X\e!1Gu<>eN2vO#c߱8yO mQm\sV ؎HMK͙ zF76+ ɑ`GM?e,PȘ?<_ eRM9!b)s(>r  7$j N=/R$ib\ ۆ>HT1QnC)*Ըl wHEv;Ug >p %WGRhBɇ1]oƺ7YKaϏHLi;Cdm[I0aj'e u&t],'G)Ak>X0<$oY@:,+3ڠ~'/ɖu;%qC&.;8ҚҬg4^J :a` ]Ķ<><;? B iX> m^KxlOw:H1ZD;.xTJ~ @Yx&ͦUoNM,&c[C!. /+-&,r>&q|eƒl74XU3ߪ'Ta=Pjm8ܼp֌@:q/ 3V4yHb Pr2)o=X=6uhQw>]eԿى:c㵂fZDԦ38G1vS {RF`8G׆׸ڕ}qثy%t0ZPƷ:dFP` Jqu%C-pbNX{}^@o zC~Ud[r*`Y3 ۲P*pxTwzBvAD9A ʝCǠA\o؊ IǜE^|KКYz5b8k~)pretΡXPȅf$zmQyeB/%dC5?R&P݂2Ľc^ TN>l1c|0uS'v`ncA=,)ݴj=Q:2||KXY@}G+a:_HpnEO@ 1__ݼ,QglYGkX|HI 5ն>^^?X 3\SuHPN>06"TI0Ƌ+כ&D~IW/e,`$>j}EJ\]O |յY: }Wdq3<ʫ4bXi j̺`D[+L9ށɜh#~ʼ9maH[3Uɺ/ >84  prRgZIf[L^U 0[vvVE5om,`X_-HTO7.eS\oYg~HPN 4H*D#3$9m* u66~ő:NJ ۵ %"?N#Y95MXiϬyozvDXBU=6#%K:fv Mب[\~@XD#>8|UDk0'^'y:Y6 wEsJh 3Dc 'ّ z$JlbtH>Tt]zm$D;e5TUͺ-)<J019h7.|N \VN]=Y2cEL5sTZڌn^$gߘ#h2GŌQ-De':*P^[%X,Pjo]Ul^߽2b!!nb8F07yP'U6l;x242q]|F;qkl1?Ń__Y(J:A9S][< z{+uyf> ev';z>e-w{9- ++GNn9DEΔWzy|v~S{\:<% UAxgomBm%)_~!1.NSx~%&@ jlOuG\-Mm[~1;!KWܭrq/KNq!P0۴l67M^vƎz=펞Wkxu= `Xd 7>T?YI8woXsoWQߠEĖޢ7 q;^bHYZ@ ETpل9ʭ ;uOΨC' HA|kkNH!-W7&@"/הzj/I}zu *U99 mtrg/UP cB X}A g|)Y]m#j1Bŋ\s kwHy*{}&h3p2}QJZO>Aą_dg޽R1cTgtvם#SG=1cθtHѳW $K(t#2PLTڭ|]pC]pl6 sst7)U_.`W~U&&rja4ؠWwgB[yO$}\Fݓ;_Z* J "F6OqLI q%Hab>#D΂1V$O`痗ЏIlfP9]F&[ lg/9J{^uSa.=R_2r 1^a@'OaMCL1:]μ?'Ft^(&(_jFv~&%rNM@zpzG&]wq(\i.up0O7c#,-'ů47!`Bm )㱛mA;@βӁ*u=p) {ms5QGΒ=mǕ8!ov(C4w-tYbQO,::?]ԫr䣿Z<-~F3&(2A3v/ @۰"`W4ktI|/ZRB7MTcrɒ_\/<6@%Q{{x'[+D{@B壒E$$o^`^yq#JSDbYj$^+W5ɲ{ɟk >ߏspg&iu!됊Z bؼ<ہ..+|TB[҂+IX 2åf]笽Ev5rt.!f\##^B?VQA׎BWgQ ȰrPTΦ'@ԫ[T]>p 픎y Gf~rVoUG٭#dZt]c{Hn K6P g,1#K;r6j[. #aA.UIes0N%OͨF%xapgξĊ'$eS+|Ӓ>[wP^Y4xp*1 J:j3t=?fۓw94O (r'Z0|J8S 9YܾY*@XWNJuuۛfظ!bmQi3B M-BkqQ >zzyo;)Aדa30 ?0dE2> Q6_>bEn{TW>-wH2-@d튥G^ @(ErEj IV rIfrsM7W;"ϙPZP8U&32e*lsB,♿WhOʍe/~UƫhL:$>T:Sg,T4}fX\HZuF,}b~B#uԁ; } 6^WyY"2cMStFdz\- h3z3 FydF !qìݵ4.nsỏz5e{ja6TD$|"rJI_I.Vuo#Wy㥒I xN_p%8RD퉝bv8r|;ij?pT*%u_ՐPѶ2"iL{dBsi28 Tv i uYXϟYcyB-t+faC*Ay\3s&vd5QxQ=,U&Asd{C;FS[ݗ"RWn~xP("Z.fj'Tv/ vh†?'e{ վQ3ItݜG:AmBj̝Wѣ A95A1cH, au3G;nlusvARCZ dEFɵ冼,,K`]52;Ӝ5@%Y&mW2#47kԙ*;xWpZ3y yq}oG~0GaOBA+?11y0j\%TwMH“kgLNHSDG>wu 21D]J(&gYq8hCw+,_~/5nNqA)R(gż.oˑJIS?g)n/r8fy+rr妢]Ӻ m;WTeUg #xf-mgQfZȠI@bc6,=D _E]?FEFLW|:$e["y漎z$Wog:`dIqnاMdL:C'D?dhѣWe.gF#(KnOWVPah]եok!c. $?:[h˖[ИqM9&#I9g;s:RT10-G>f]g{ L0brhװ;hA,Wf$#K h}9"ݧ!Ih}ZɃ}v2AQDw_kc9`8XeEHNKHNDPHjAo4EGcϐDym#߄ G_hZ5X^<]2,2 "7@5!|6?#FpZ8lHb63v[P 2]J:YmW QM-5;8j€nXxMJs 碽O(25yhjR9bdT f-\ϱ1ًٖ/,~׿J;ΗLapuvD|9otumQmJos\ ?t I\^XćsRz[ghIUa$G߼Aя/E?~tIFUWgpH'HcqwPFgh'A?9{E[CCa9{o :F^V' M'%~0v $t5%[d''A7r0nL"lv'=Vx&Gm ! AF:?˨ f. Qd6No̮n);P'̈́DNNH='xޕem9n-q֚2j^^rf%R.5q 'P!xIZ%X; pRz[@%b^x*K¹}BdRD+R$6ѓSǞ Ac|bw/\~յ87EY;#'{, C3N.\34Z xEjAe1CVFJ7߽끫aa$(|ߧ׾ H6{_SZ3JNCЫ;lȇ_IS"`.nb l8v:$kVU1ތQx֙5c\Esz]d?~->uؔnIXٕtRZu36rmUU9{ޟKk߁_eX}]O݆x3FD9|VPvYD0q #!B֋XH1;/"u|]?_"z r0usz3ЉnQ]aFLy¬5%TqQם5{aL-:q +MBtePv'c"u{:7d dyO[PO`aOVk=(kie#=ٍJИ(eSGo?t$S$kԣo) )O~gNmAw]1UY/(yv$cӷXD^y@˞[ d 5[(Bp 5!uM_p*WeP*= !a[=G vaIL4.F {(t$DžyM[üm3Y7j>,{q KyZ}>~%HՃP6tD w˙\\w g!!Ѹ,E'+xH8,0BڀcK)6pM9j# JSRx˗|bͳhB1Rp(Hݤ`B򴙣upowiə \>:O&[q2IrV+"1 k2!J` 6ENgͺ6"KM/A8wt#r^6*F\l+ z2GT" ie7s3 ZtaNъ#S}P>{?jc9.UW:tMׁ"{F-N8*aEJOdzNsg&d) 2Jd7[&ݙ:@v3̻I6w9뼨Scű.gtp.:`BS2}PPn+qRH_<ߡE$<jOY,UqZUѽ~\ yۉgS]+U8˗YB<= Qy]`\~r%\IUV^} ;k`~V)Bx6Qx#AUlRs"Wo>9|LsQ+Nl `Ocwèj3[qھ?'Uڲ P)tW#8 A+GI!%7W<=A_K.OMTh[H}).b?BKވ9CWrr%_99uك${RF)gz/@idIy2\JKqzunl>O>4&*ػY۠QWMud0 V|KTuK4"~Oy *~'giz 9<#?&4Em(S͊ھl,V(V$dqɄ>NXn25xg$ 4'|p0yTrlHdl wZHVMɩ٩ l=Z΃%x\O#,u}1bXtAKVI#֟ E)r&fzeXp>~Y7I5="i#Y!Ԇxrr߬Љpdx|sRgBSpe[}qw4@6{0>DpmrQ@qMހ!H /|(P 4Í-W2W,hʀ(c 07 a'4]HyZ?x9N^P쇣:o*@z!K,fu}ϘCUp/=ʆv mSN,*"%W8퀀.L߭澲x{ZIAL|E w7Z nqt@>+YE{"b4h4d hiU ٭@J?+-K쌐!䢛'F1b`9ߊ%4MXA * n@n+^?? ൗ~UCJW )yN]ܬ8)sCzs;8"z_BD[U3 ꭆىHW+LMءt64xj~̜x jk}d%&w!?}yb/f3 IlÊӨte`5,xP˫+w~qT8禑ia.fHSNX275N u%H3GRR .E٩TOl۷CUXb2셮(I%+n[%J )$2[<0{6!ZY}~ΈF\Ps,R.̩[ؐ?E=ޓY$/WW%zcE15Wf;vDoOŌqv@R Lsy˼fEwIHFF8ՋټaoJbTJ Rm@rwqrBJa,N.HoeIrEm=В_^=Y{v쮇Vz%eNrQN'1,@iE$*5-AQJ@7t٠ \<>zg3r\Nԃ(ǣ^ uUe?v1;U+JoXzȟ]Z Os $ 5AO^($5eN봴^1.)1]2s0<%zgmXÅi q 5=;AEf[@#t`q- hs NJxU\K5ǞW.929h 5^s=.{ت%q+, 5 U<^|HLiۦq][{t^|Kd`t`R29) `80[!׸sO_^Ux:J(ʦS+B/GzʐOڠFfvwM] @g^6JX(hO(p{r<p]iK϶alڌLT}x~,i>SN)͏}ѹUJoQ_3gCCd0A#X3!! &r1>4Ek+{7G'vDak!ٕR(BZ3I=&XѸ}Jh~_ מ9(bx1[=i KAnO'_ ;em5|j%gW!C0F,$b9'ų(&݄$8{ҥ}uCqįF5bfi? Ka$@ǺHpLxOeܻkH,F_ "\I9g>]Y@w@ m@=.&<=隦GoT($C- \/S~Ol/ _.\Cjm^қS$I2,YvGEr#S כ) 1P.)~u_CkܫQMaP8DfvGLyMkFQH;}b\ҭ-Apgy}_V ld.h2 9_.6ɎR(z`BSu 5 >m~r%n.23u ɿK~-QMyJujzmJ_82P|Kmaæ)PgS~< S\F׽[Q>OA<~ d '[;@(oiȁ͉{BlY#j~ VPx`11#J2fYַx2Jn F66bs.,rǶ)l )(| (q-Y":9/()Eͮ'PZ6᪆{B|$;07g,6ҳTbkbWESPNcY9mTsk:d3RbӸZ&u|<(vݜy e 5mF0Xn∔0B,9Ӱ{'|wd:OqDZfNzK7# av<2&Z#DݼlA,[JX"^&γ$;q׎#P+ y%R@j&8q-l?*c?oLp,ؕ)\85T&jS]7Gn]3@-iE PޫZC~͍|;pobΐq4h G;{5F[$&0HY05J޺3A졦eT81 3FjxTIFoyi8E wʢtumt(Nq1CðJ P B-_}ccw(>aߖkSGᓇ-0\ٞBDe=8G޺)âѝsEL!rkFު/됊84lvw9!̛<9@)E HtEX $ָ$0JmZvJ ³<Ȏ$p–I5pe4/}̰*v FV`V4Z ߬,עxth6 k錭&Y-cWpP\D[ŇE*ַ14ػA{rS"ImOwۤtY$m2k#scb$73۠]E VS2 ;]SPq>0D[V2i8El̈T|җ%!2-=nk#VA]DZ-Q.Ve^RQ]83ݸU( vVX/xpre .suR*O{c{Am!%'M&WuLQ=`egU>@gUZ6/̓?١~@wN@?dk$yS7`bK5\Y>{:wFsZ{]EbbX.Y>)Z66=ʈfLtˑm[kQVx=U?\1lmc"ǒ%((X2~+W3JOI/nr~iKJeXodZ(ndӲ"Ibi>+-X"5r)eEd"f1ymJ4trmYNnviEpڸ>% KL Ɩon|8O8Jd]ehɸ~P,\:1B#P2M|nr&?2#Aϛ|RTW$[v!+=8_.2OVTk8`G/bNKFq5 L8quH>فܓL~;%/zy SZ)jJaR>tr1$ۑJiHZJ6;:tbr:^\bϞتDIkBotV2"{-WnQL| l ꜺE8~ˬnR'b!皼Hg4oO7*,W1y&NW0™0fA2Gr\jNP'. QÑjJɫqN3iO0slercjAC:ڐ50oL&ؠ!m$#pB1'0&L/F^x K+\Sd"nϋu$J4W>0sx)ȭ=+{/ *(TN\ 8M4)~f CzlH52@/I3#%?תD *7^})іG0GDBY x #jT1d:(qdp۫_JRj\ 'nGB= ҰΑ}&ڹ|VW%XO@& s5{([]xHǛurBMi|ktX!e+5^sR.j& ƭ4,VZ~XQ6_$^KtDb~ƘPE)mwYuLWB.smWHn`hCQ98%eIuƅoJڼ;L5!6Y! D=W=@Dp}ċ0JN>gC`aהX@cR@ >! 3$xBgK\ ͊o՘M |y B)`&gY?uXLӔؒvs"wx Plaʏt\ }:@4g u 1qJr-d=dH<+_b3T~.GFZ[!RvxyNf>m\ٿ=)Q5B4 \yѱ@@SY{R^>DS~y74 69`8uGyd1\IY, ɚ絓hSpfŎ4.;r2~,@2:9تglr@+J`2!JxF&!fD&2$r IݦL U:/zGbm81c."De>laZmJP4\>v"6`05/xr-_FxdH>o.sh醥MJ,S=ñfwƨ %̞@0wa_2S\} Pڄ[t#eԑQ2ed/nGj伲߸ Gh_ » e>mT;u}gsX(^^oWA\&"[i#5P֢QsA-2D B*fx*?P/ȉl<ƈTƲ"oP{"և3>S+N8?ekXxCP1zY ̾&Vg4t?vtX³#c+ABɺA9Sqg7+`b^k/ |YB*EV(0d"zN^JvaB@)h#$N=fLr5V&+wBTE˕,PI4s/Ѽ{-9*P$HSh2́y/s%a0e>\hin@A*QUNC#!Xjw*5 шBLl%J #Tt`vR1L@'gk~7 Xz#Yt4d+GyE«׋7 l0/1Y|˦ƕ7fے_[5S{j TŖF'nCԜW~&TaGMzDΤ[7lf|$#=.%N#8 k ͻ; z43AodZ26N1S0Pt>OPyP^6¯Y-t$ޫyvaP1|c)ΚuʅlqqʹrppR J\e\L- rrkwC#VZBhY _7^7HasP &U%Z_.~K~oM(z) D<6;q=e|2Fa۝*@(㥅'%\P t>]%% ;D)5㰱 ΍-XqVj&]bMP얩pc7]~eI5iZ̡Hoe.2ӥ\P֡LD/ΤeZ61j1a1CJSk1**hjEURŌ{=Ŧ9:~9!YpW  ѳX ^ ׹17RS_B-hA;Sz tIԗ9ymQ`> ϴQfb6ɉ5H5e07oȽGjfPڸy!g! p x6=h,E0/<Qߘ!hơnָxtdwWH$71}tdWfE_&+WO3yYc>ߕ;6aC^ L1Ѽ̺>$^L`R:? [e؄(^RR6hpPNV{$ ˼ ~v>: ;P + Y-?]s/x_3غ"a!%~~M.u`0(ߚ6lJ3KEAj;9d ;~~:)`4kEZTEC62٥0}eۡͭ2)\ <_ex<4Xܗ9kEfw<6P9 ]'. x5P8t4?3mr}"j ]o j+wb}~q,G׏ g

     I -(mIz5CdC2s .w8~Z&| )7PAyIQޢ{jf2GZȒ[t/c]3OUT Uep~3!dZ@i9pi&3/ >z5'T"*}A;o]ۥ@EM@I92K B0(GBdKъ^@z_IP8D?fE?&z/ `lLi=A)/+UsLB0%Y4 MUhOhKqKo H0kYa 7,]63ǗC"2qQjs.lj")5aN1uɰ]GNT{Yq  |qfRmTVlhiHET!`j;zo#mװgpFRsgf=Ik.YܧNbfS7 (1ZBx"SC>ZL@i&;t*ԍÝl @f!T'v.?{/a`gHFn)ҐQNG[gʏ pԌwԹ5z~d*JEV 4t.uuq?R- OA"T.#·O`"0.<[F&LvA`-_A?.3b*! Gs +4+) g=Z.侅ƥ|+WGAxa*WQL9Z9}dfF$=7"_а#_Cp~JE6w'.)_ a+Swqns&^!F[oOraTህk7 ݎ6J2le~{׋t[YU- |je{\tLd4>iTaWQ8_+e@\za'Vm{(px&6f̭L$`!qNt@Qџ+z+.:!iӾ}DLP#HV fP3υ-IH+cN, $Nx;0oAbM` "*,hyLGVlYI ^߃ qʭ?EMQƶȴ>p$8l${9 5TTS䕚dB lfF9kTY9h>? 4oōgGӫ_˹ݡKv^:ƚ;iGZ@6A`{ѵLi\  FTE6-[ԭ-ӶebN* #hv| S@ W4 5|32+#ژOQ `o)SϜ_Ó*64,>9sϽ[@#'︿᝱~+d[7,JD,S<Vݵ GnBɟꧺS Z`\YS|u>-9+S⭉q5j&POnX_Щu3콆OZ=e[~d7[]2PZ&bpMXZMYJ)O=?1=A J?LMt|67-glOQV|țn+EϿ< '|LJŠr|~y΄iۑpey Yb¡ l9Ru|sL-{ͦboYz~L)IsH)YS\9=mbYrۉw{4BaBCiAݻF8>xtv AltQ]_uVfi43yDcKťΜu&]NliS""?/huз<Qd>mR.8BwSRU>R )z 5 ӕgYpû"b$V?":_&ʔl:U{#ϼHW;_c%ܳ9oS5%NwR:{]e'&V!Md]nC{-IĪ#:rְ?čg4uQu(Mk}4'[J{ﴚz Ē׬]*,D(+`}c'4vδ2$j6ފTt&iHWT{臐yc&j7s^*Zwr`QTO o!6uowoLPp%eZ+UL K"MRv[=ф/Yew[EgG߬ɽ7Ϛ|, ,,OD6 M& n(#3y9LMͽK f k͕]+Kk:ڧRxQ`N [G⡁uT]VG5ȑĒT-`:LӟT#*֛7PTCHRЦgh.&H|@^YT3㷲ȳpزܙx^Ԏ`;@% lk< 363̂ {ZjNt{&qlk!hNYHY>?S78TÙ, m ʇSՇYھlN1t%(Q%&&i2=q"J.h >eBTLU22&\op2C eW㋝Wy.¹K/=zdӽE@.vf*ֲ`Rėۏ 7䀢 氓&dIgwdyZN1t/SpLR(3X׬z$JGv(8l,X7 zBnelkq/OGn=+T]rD5h2Ƽ5D'rig9Uf ב׊u:r5\m֞LGͳd:zwG؁%Q!yî dq~Y}zag2DFb)_tFac 8’P8?󅕮Pl)B}|%r`]*(p~.O1  D~ v 7¹l 6}Х 3=8F/H7ɢ̻GGxK#"yB".uJD U%=="\:wO35D5m/"Mol$ N"5ҟ70 |~Q9gB\,w?WQKٻ x#?4 fNKr:3MR,{~l:Q68wc^8nvOt FvM"{/6M&哐J'ˮ>5pQk]O5[mT^;BC/zZ >[c(CީأGnԚ Bo.НmBTlG%mHeR3P/09Ō|aRs4FcghTc%\ 쬞)#@Q@ 4k$ؔ;n Oɿ u'`[}^oȐZۏ@ Cy&Pvi absxS^g {8E[ |Ia!mU8OMI`xqMmpfq%gRY62eCJf~|>\ {({(o5s !Ҋ֑V% 7ٴkMc_AW`o}d^G'1b#܅BYT $+oԧň=->:SRRTش΢1&?Kr(\*4ᱶX`>.gSx CktJso\WB@Ċ>ux^c_qXnM{cG$gX@۬-^ ÙeI^a^I s_%hd)vcLB7=XY'ɜU:mtrEV)iN2^ <<>@:fDb$g7ȌPaGzLHƼ&Z.vDG'^xBҬQTci3J' Ҩ5m-+{Լ|:K${3((15׌:Cl9/3&BO\c30կB7zlL@!?GJ+#zhiP`1 2/$y3b;B;= eD9gfjRm8(q0ƓЦq0 #]" Pp68q;X~O(+lVݹ9?,q4đA?ͤAY|@yMfR?8kCMWE]u{ƈGkW ]Wq^/c´J vL ) SgM{Vp@kay33yČ C,B CJm5[ PO%iVVY\68g|*=G#|9m730tV>!b5&u*̓,P:7Tj;% Ya:vW$4f$J:uH1k߮`4cekRNA+`]czrwp ScU T꭪]މw=}HuG1^!LFGLz.:i~?4A 4p0f"Kq /Z?Qi +԰0' -1n8Oa909CPҾ%Qa]l|8n&o.Udh^ R=Ϣobm{mHYU'_#e@п ~Dsc;BB0]އh+l?5@eGУtukqo?%jܔQ\9F6[wcq<a#d@zs%ytG T5+ysɇg$@ !9Mo|49f̋ *Hsi곻ۿ6DjO7C4`s9UxTt$ڴ `; 7%{lo2,PdrQc!#Ìhn8kdGU1MMhDs }g]MojߺqIObUzUP2Zg ]GERuiEI  TFdӽ[&Ȃ=j)u=HS`]wљd5E(ϸͦ2p!bY=c{!id<CzN沣n";g~B. >SN/aCٟ c s10$ 42Ti<\ Φo.#E$DGnl=DTAO X! e^JtEø^mP^0qU5Nv7Ef>ku<餴/.T |=N0zB>Ϯ2UA5V+;vSCͨ\2y^a9cdv(9wY jʂ4&q4~S EZm%RKM+^vl8O>Yi({RWy!ٞ$,Gb;dIYpKu /K1] ()|#JSD&,?L}&L޽4ź0ܮV${`;6фlon~Bfw_[jq %ӦWޱ/x]C^ZGhnG"KSD"{Ľ7+aNYh m= ٮH]N!WP>1PyZ)6UiҌT;W -6YZ _/WwlLL"]oX9leR)3wAʖΨ)ƪhz؋JB] -fn:26%R:aӑ#Z.İ݁_;o_;v[)?L1$TTaS[4Ծ/s~TלT%R1SÌ9M-IWƏ ;Du1Aѵf=OgQةc$ư[qعg,b]|ڬ bƃ9cҎIef J8;;*,ܘzXoJ39:kMBlk2G>1܃QQK[UV% U2uBXtɍ!=ۧg|&' W5SNƍtm<l{z>r[ZlݝhvD_V!Ag´gWo%B"O>?{'-mg|hD!٘\KfO*@ÖKPހ>='c%Y@8 #_GoN$n2$(2 6XjM[`@P'_t))pR AY#}2pc)uoK.I.[첹YxV!F8:^7/Ph$-I 7دv`-==nf#kVy2`afy@%*?`!o{v=۳s(uBTNIiiV4d` _~O)5Ԩ*Y)1 ,3 y@oFz_f3#D]aEA!SQ^64F8;FE2P[>zSkfH3*!DfLʹTRqF=)oGcЩ^8B JEK@BdOu4^.u3Fލ3qCzO3t\Ϊ-ΈUQDq5ː]V&|ꕰ4e2sL@h_dt̉Iw_?5=5A)ccv_~iH^.s~@niZwd#Sq_iP7Dno3HE*"uz#Yr>mzAgg)G³doQHx w<77dܼc1EHw{r6y60sydlC['7ޥmH0Ԙ'y`Pʰ}ls]gnMh&zd Ok"R ݈8^W, l%ՄN%muk"ݕKࣗz|0ub:ﰪ քi^)OF9eF|K4t~|7_ׅ j OˮmU9]Ky %P'q碧.fxOG'uZWn^6#~$@ڕglE9'LУ"tGS&I%"o'/l}_,( 㝇Bca5 }rqh7k̟WM=.*m`VV荷R~݊BdK苀/W9S7f0b>*qMX,^f=0S n<gˏl΍,|44} <|&eRo`_r #VkMh@dJ͚8EiRo=s#:z y`>KysP#{=gT|ji]zT+]CygxlCZUM]&x/uZ z5 n>0-?QVmR];R,ȳvdxR&aT?y*~.d^ A=L]B:PFҙ,D>}1= TkyAi |@bL9W$c lMguUbs=Kbu3Gws= 'TT8X-VbrRd+]i˲=}8 h!lq.5HjrUX NҞ} hxZ5n&<>|q\Y%*gpK,<R-/yl#d0j%F!B'{O}'s]:ne S%qb妌7M >åO73Y?fOj GH*Q|H\Y2y_&q z:ujnaXq [2E~r邉3P#:!b9]?cgsE<\ƀc|( uB5 ULL!LVfvaa~  m(b>e]cĢHl酿T[vs73ilp+ chfӨtO_se]y{3 #f~nyxoI^hw׵m֮J H"l?E5PN'oowȲsg\grYӱ\a$vťݗmeRڏb9SfV QК1umo+ك`&XW둧O'#+Ld湹;sc)U@R7Zqfoby:gE;j@g:DPBs `A{)&#FT y1ULfm4Y]t04G7vaJ5/ &WEud쨴?ԼL}4UGMqfiQz(AA ٚطP3刄2ӌPqzF.~L2>+Ril$%/j[^-`R 6q9b՛`^ǯ+7޳D(0P!W^Wx_CwOy=b7L YyU̴uMOle_t\(~Y)QΒ= $ >!#!Oq$;v [FOflE|?gx}i#dmospnt)J9 ڍ$1ax2MYL `k 3!+afH.^Ǘ~1ЈM'|30;Ce<(7+"wYjrG}f"JyFA4{).v!DWVEX m 9vn:FϛiD[i#<n /D!WaGL9:ۙ6;^'y(,(pۉ0FeN+2gÑ:CDHT߉ ?BvϊTݤM? %Y"*wشPfX8FMMs(ЩYeƌb)oV1u.Qc|1Nr>"ٺኙ䔳m>`HxXAjqqmF֕諞L <{BMt:O፭PYLK#b+RJ9# +1KR\$zcY=U@J猄 ^!e*}H/e/ iVzWl@xܥut햇R*-tC0 AS(<]'37u{(M5SHK<[YF$tzB{C;2V@3t(Ccׁ|dJ Hk<ӄ0qUmGZr']Ykg>x d ظeBaKӢ;{Wvf,F]<' 9v#h<}S|M2 mU8UVKKqVC3e o]`_@PmiOH&!2!cokY>q4撤i>PT`F3|4|,e2%IJو#i6гݫۭu:pho:tp<~!sĜ^D5o]wM-/9I.F&GE+B)NcƢ`wE!gw+]1>r{Gi.Ņ*jd0; WYB-եTn殡hCi:떢* ck`*e|.[޼ɲ[,3Fݒ Vvp13)&Bs7Ђ\^?An:ܤUZZeշ67UMÿ7 T_`-=6Eћ\Ώd'h+L69Oĩ0,[g)z.T Qg@K_* Q^] JBs/ T-s\xÆj~SaDP322 Wm8 10"q8Ik3 &6=r]Ţvdl;ʞX/ޭ;>m%OJ-f٥AѬh(Ի\-?^dA&riXF~ʤ@ģK!?ܮ@cֆ;E< ʏYapEƼ5Uꚦ ϟ:]{ H^;'YM>9F7 b8[lz 4=85fμ8q^o70F*q4erFRn#iNpW|z\m*Fi oFY-?yaMxˎ\){'ݜ}Z*AbbOEԼ.gx&g8/9GM] ;K[r0u\yj#I0` )&:wEobIKYb6 |l'w#LG.Gٯ,u>`iaiA^>9J Ik be+&,&9J @m%7!xQnF΋{t?Ùw(m[~e:MU0G&j3y g;(Ѡ7f-ςypF5VF"y@eX A5E9|Gj J&;Ɣ+1'N;pZW`QwPتSK,Up"џ!&-n~洬@jh)#aU .,yO3MXIv74{Ϲz8K[,?7iZJ]ռUƚb4fD(!nDzhu s`@ |*d~qC亓.Ej9s9|(;$H bwWQM kzw]0Đ@|0HN.C;3EyUG 6o%Nå,5}QJV }^߶)V3L}Biz qTH8-Ti-rɍO) \zMwe@htW_2ٿriˠ 9"2=8-kb>l%8VQgm#l#Ac1X*N+4ڷ#~24432P[ԩߘ t?7?>SǤp ]9},f 'sa3 8/x U]Q6 66T%7@!7ړFA N[6]$dIJ48᱉1Fd˻ȡ+w<\q<ʞ/7F 9t mpVMtb}'dH؅i rx//)D DނspL=I#|kGUAvț!-#jī3\Fj}WIڳ)`T4 d]RwⰥS~kyֱb~ 1fU^`k sb$rMYu@k8'RG0Q<4 A: ʄ-AAK0(ji7lUTaURF ʅq ^gn]U؜I+ )|t~_USȝ32 d: k^$pO"<*(Y1ۀ:m ֤DDۋ\*)ZTToEJ٢e~'µW,{A2F@'ѹa4+@iEpNa"`?^7af֖sM}'Ndؘԣ5=BXdl\m`!9BX"pˠ 㾖¯~uco Q}f_ʏ(HT;*uO }v"z:P[ai+&sNAM%cAEoU.C֊wLh1nFwϕK^$ΓAű>yR' ;IyRд~]{nB;k@6TnmBNjHf'- 95Ew7M>Y~W1j'hKSbwsRpT|lPd U8sw]'.wl`bYMO'£1F´Op0*HO7 FJYYSwIJX6l`s$>CMrŝ|Q6ӗ Pƣb0AF \h.8q q`cyZhE>ui,ZZb$c˯v%bƅ=ŝ #ߨbXN]bQ&1`J] i #ַ˥TVFfJ)` FL "GVD # @t_P_a׶#χCkV75t Ta2'S1'Yf!BF:2Ce.I@7c\2?E7o3Bd;{H遍}?͏ӓ_^M[4v)yk]J2:"kqkr{_@ʖ&G-sEPjqa7,G5oq4ou;EpcreQP,n\O?–P^Ҳ)˽1y= owJ3EF!pK#|jt||`PBoT;)Cvt)yQN 2EszSEOGdW$X}tf1BgrPK*wi|УY$Ul{Ýhzqx؈}}QUJ󱸭\98+} 烍_$=8!̻w2fuWVm ';ݢP)60,΀s'ntiBs$Ep'K.Cm{R8Yi'NH+_ʎ!?(xgey,1:fPʄ\+FPs#<`m:%9kϹ@#8~`$/?"d:;# ju4m|8GôBZ%^nƨNWZ=t]jxA.gg;jTU As ٠{{S8U~j\1WB Fm6  c)G3C&߰Ѓ&#u  Pa!V^Mf?8a^Ot\5b-6,Vor\~3D"*$2^8nQ![r8cd_A`QgA mtmm!uX*!LklsMWj#2hoRWq$ S)k5G!v8!)ZNG$.ZgOԗ<>6kd/y`W*TҪ׆5ʥ a5jeehĢ(C n%a4ocyyknig#o^OʪH v# X[j:k3n; W))IC| )8'),94W}C%uYZ~B ,,Yj326r1rk:~MxKQoȧdh^ǟyupЫ{?()3RԘ3EƷBo+ӄ`#z bg,l*:ewj$Pu(;jvS&q[{+Wscg):I2S5?uXl:PX\F򧑒᯴_2h+3Y ;8F:4IhGQh/`a[ 36&ߤQ`k jHg"g Ey \06N3odh2Bj !F_>.Grb,7f[wu0dḺGR[(X B AP[(8|IGrp[c鋼L!_jQ̠%W;FMmka?"q60JnLj0X>9m5IP+_|*"{3>ϒ9f=s| |H_+G6 !ꌓϷvƄ8'8lA 4"p9.WӪ$j>*w !ïO4ES#bp쐢i6C+f8=r`{XNOyxQ{mr5 U}sʳ[_fhf> 7l!&}L͍]NV*Y.ܳBV#2z]Ŋ?r7[aɩCZ}uB_B>!Zΰ4כTۻ^BAmwc乌 v'K~]GxXq/[\8+l9I~a1N?uwڌ`jz,m>.'̈@_.ut@@b+"Qk:H I%\2btf8;u iԩ Q~ w c%n-*_?gD ]ḭKج9(~ 56n=E4IBɶC;)]>(I܉0w;@v'/ z><9@nF`O.jg"gTEd:rc A|/۷;&uY@J|kTj~[NwZf3 c=, u }mr\ w1'bj,2ٴoT`fR}7t=LӚK"o<՜{1V^LtH?SF~lЇB ܲ[ O1>ٜ&!ؔ-+'~ՂCZE{"CM-HD.UB .UR)$ ϗpH{\+! t5ZFzXDW>hO(}AAKz(]KP"Y}n̯:ij66uXI;^ZQQ `*Url4Mږn u[le!dOVFq,A+I2NB$f*Lt> EGE&n~'WZ0S&D3Sbe<@5` J`YfwT:_YM(0<\=NS\չhh]ZX:1#0娵<lƇ)n $N/-% .msB0ϝo1[BKx"i&sȜ+7?K]9dԞL+A_D~6HHA# RM  ȑzj3B: 'c'Zu*ˡbTǗ@Rȳ+)ľ8| e͔V[GɕTuw&4#ـe`٪m/Q1%vY׏Toļb.JFCܫU3H7ɸb)4nC2T,O$F>Gy_I~b6L˅; d Q,h[=yCaxw$'EQڥh(N0ǹ 3?RH:2OoDmY$Jt1mR-aN _ (L W0\(Sf~ 8z[GLtn9ܵ-xb W3BX'jUAu]D{׵g. 7X+#}c9Zm$ɇx%c q"TŽKqH SR-Nh |iLiƜ84h$7gVvxgư*\$'h9%"c%}9'A4?NcڣD ORff>[z6 d?/4气w(j}L޻}8%L~*S|~7&Z/QBY:cH?] 3o@ZV3kO)d}wr5" EO̚*" qӬ)ڷ@JuD 8w]ܿ !FuC.Cݥ;qHT~5{vH[0,y3uK"&Mwsn\%,˩ zi6Vjv# &=h1{6ŵ IĄQ+Xh.̔(unPqmsJHDdըɣϊ ʹ;Kk ~J?0:"SyJ M) ̌  Huz]g-dL~S/IzYObNfn LDȵY75+mn:)/=o3R<$W 19Ȕ0c,%++.ͩ4ZNlgJFx \bv+ *fj_]>EVOAEo\APA%OwlQ>@d နIƾK5fCSWW7D] ;+r 'B.If [Dt_\}Y)ގ˼y)6:z: ^2Es þzv=wݭjfh{[i1{B-ILebEΌpZ\<;)KfO$_t؏:!#Z%$lmDBAq eg9olL˂v%\ჩ䂅NQ [d )XovM֬q=rZA:H_R549 R 3H94,(&l9@߅/ՋDsE4r> RHkcE{fiέ*Yf^jSkdMM|9OzIGlX$'KeReH$;yzy)eV hgk[OlN^eyKo5c}ju@*}M :xmgzD5MNM}%<{3AMm&}b]Qɐ\wZ;uj~pn Cx e%7F_;LgjG<Q7bV@ اuCfzjARd}0_Z e~%ힷ(26رܮ,n߇8T`oLt!Be+KNwpd鄍_=)(q&hU_ͯKT[4}"%K(K[ׂ >-l S=qC4 4L@ƵE^Ơ6dYW h/ʧaɲ3nës'bRG#z|@TUnI %_j?B82-Ts\?︆iO+Wd4!0U~@qnq!z,~Ki,ڮf G!ZLO>û)vq h8-D=vu&3z;KbP(cyhkU.UphtPx[Ym,"ۥn a2HUjƖ@6eֆ;ESu>Fi͢E#VQ<#_7w?[}LL2>-)@JK >'5ӕ?f`hIMBt0|r}>yˑWbIWBQKٹdynd-1\snCkN `^ k|6rqUAq=xn26e#"j|jXiS$7o( O k1BV# _}۳>ev5tj_SĶ O12/@`wNfXPW|f*ƫl4k agL:d׉t@ۭ/(Xb`\a,:SAL]j%*dbv*݆ "QSmGB[C`p%/ z̒( 6Pڷ4b4O;Wh<;ʦ9l E*3uC߂%Nz{:H)@hM8\7Bh/lUĨ(9Tկ&oz&ߜJ$/=٥@l;Xܭũq s xM0U'2HsNxT&^F6!$Zewɷ_2ty&X"jC_*L޺5vͭd@Cgjn[҂kvnazZ%vܹp[=MrCI?:i8xP^5^ząRgJO!G8EЅw[ҷ uA  wDzk#T\ִ$e &PmBĕhĕ/"ic$!Oh o|HH>Z `t0Lg!yk p\I =02@_һDPLa{ -!(Fgl.G9ʆ90d5 Y|U i$=Ż$]P2W=\ E0/{\}:NEx< v /I 9UF;_<8],[SBCڋ?X{b'яme'v9R% ѰaF︛]rs-8e~ΰuKʮ%[9UAF gi[)V'=]ȄLrJc]>IwW_D/N6druȹ:*DR!}gqC:1ȃP/iCߧ@?j]fq(-E-I҆h:`?E/!lk ٗ Ugf{AB"!Te`bw }O1i_a\vuLu1(4(vw8usn_Eݏ6Y. +{vb7[zR9@ʤʼn 5wP3̎9:!Z _fWY {Q62)? Zr7)EV=?y8BQDȄiG]*}u*D'"؟e?!'Փ'tbB^f#E82d{Kr_UӪR*TvP>s)cu,u: :jjHKo.f#~- a 1(2$)4:omk"}iԪyD2>2ypufqЅ br.$'m7jFYgT7UhT]$(a6nfcKk \_fiۻqg`QHUx ^/@ zQd2WU4=PMR9gNY&ؾ-*Bu*&v/!F=whtQ(:St1\Z7iA12UV~[Fb:qIwm.%YNj=+  ;n ;sn oAthӉx7 eH% 1;e\9$}ÍA{IJE؁( ekǁ)V#G_W, c ݤ-P(F[\(׾}oDd"I2DILՙD2kgl<[ZâBg! ڟ)&CjnC)Шu긽1 7>.a4wr;h(r;tIvX gōΪaBlM/H$k_wQBH(7B%om rۭuoC {sot :Ix/PjkۆܡXmt+sB(c'q3+4עߧߘJa)4y^Jk[=\c3@>C,XD9bG0gƒWS@~@O͇ڀI_f.jx.zb;os7> 8.'EaJ%c,Kc^SZt0KF ړ R#_}(] lgwf0\JjXW.U_[;>{oJn`m1&n]8;.\ߠN~*~EI=\B+n6d=˗JZgkkiA4qOF 6~4,qLʏ9w)Ǒf.^۪xh:[{V^[وHe<NBe`LOZR! U{<u)S?`ye 2?o̒*q_UuPhDyVo dG rzo=&MJm0K>X 8jk+X|*#Hc|e_Rƣ#)e$y<1%O귓gj!e6[(gnz 77'E @kf] 1lҝOʜmmV ; Rۋn2d֧{rNDQ*^P"8EwY{otd7[e2,ſIla9p W7~0Į|zsAXapj~]DžG\I/r&Da֚4ԯtyA!lnL5>z=2>+S*'Xh6y)Q3d]Ŷ2ƨK#&*7,+oyj}fH DS<ҠE㫝&#^6RpXs3݀BO=E. xKĶ?x:ևF,EmR`J<WCTIT9Uj i^iHSFp-;nqd@3@X$TRY/!u?q:zyqHgH Ōl^G U{ F%I~/uƦ,>sdR֨x]{׶f,9L+β먦b";.Fn)᚝û"yw" RڟDy|suuC?)șm.2Ӂ-Ktefr0\\<- BwjRISiGDGMqsԥ6䑗X5O߮a.F8!RphĴR V8p kY˒3VQz[W'=PwR^Io琴 bPiǑVr(=ZC} veeyt.# 8}I03mYFB ZÞP4jEYҰDC$Eqs%bW^|B<E|%Ivgq)ZnCO:Ȧyk#CY_INZr^cN,Cʏ9DMW]`ejq޴XPa{bȃwQQ=:WCÄp13Kb|ηpHK> pG:#U7\-~OX}v ց{ǽ& ֿuDS(6V6n9-udb=c ,&zX<*6" r =1j~'s.}"K^V鍢rW U)ϖ|Af?aU"ۥ%𸞀r@vEamv\L#W~Jӭpv[;ˡ_!ۈ,iU2XQ[~bk.D~ WdjoV뽆;퐅 ` ẉG*9O(621>~BRq8@gfb̄iUZ WhM wTq1&!_~HUIZw 7 4T'R[Y~W ,8O1 EdXwT+EJ$eMT6bsɞ{=mz$p3܎Yޡ73^Ywt!=[objC2`?`OU׬?\P#V|gYKuTac6i,ЙßDMV+݃sXR(F&?YJ㋨VDG_.s aY?J:jOA'zW" ,D0wLQgKS,@\_D"c$%HD˟bxEk` _wO?R7uWXSoZ&,dWjC+8[з|K?ҟwz9#IjNtPnɹ D>q3s=6 l7=6ݧ_ ; r Lq%n,I& 2kc{q+ sU?rE-l_BWF*a=gC1g1\MH{#+Gxk>۪Fo7OϸE\x0hپzW>c%^I" pdN[FXrSBѯGUfJ'x!} m"|vkxD#()XxvNt5[$E [wNaJml4d$<{W,@HYlDwmE/sM &%N>)Q޾A85 t$Wd' ~x|>ZD\;YS#,BWVgP܈FV_l0BoPx`0{RLI Od3 NzB8µm T[hq DKa T($̤u7kSڧ m"=[Tc.\0009[|P0qwia%f1e5(PQ\{&@,ΠU5bӿ-02l̸«2"P~V陕ڔX^hUQ+gz\1^}_{' bNL+ FN61_ş~E-$dZm3ho{|w?BX2k17iY̠ sp򣊖ߜ~_|%_-Y /9ZcѬ L+"KK`x1[*AA9'/b?Bi0!<&(o.ͩ?>DW qr'H 9"&67SJN;tfK-e8ʮd`b>7,6"@!rQ(1j~>5m+X Gp W(v$. 9\̣D|֮/QO|0}e?O'X֋ǹVf&OU  $uլ@)?􂭚piE7 rG`)un}]~Phxﵙp\۵y;RpGhL1˲u6ᖲ?`+i&;a98:Z/0L_bPs0,k/P_d54, [&cmXPi?T/Ȍ޻e=9Q^*LHE{~W1"u7bQk4oLCRD4W8@:J_;,[#4opc%VQO|Cl3$9BNgΕ,{%-'L+"A TzB, N(/@Nl.'BTT(3vQ=(쭴η4 'F FX:sK ޸Hh4n7vJ;w̕'2 2u+{),I>~ u=;|za7K¦6kk (0,YhXA! uCcJOaX:PC& >~9R|. Ѫ3IAQy>FMoz8}۪)}-8 ^:wyBg.nXMnU+^*)T*f!<72񯕗Nfe :R wV O̿Չk+fs&Yd#a"I=TĦ`Cc8ZG+*,UjsǤ [ @2.f!`3(hbfh#;Ħ1ȬhHFdsޜ7gSK +Lr^ݥ N#~$~FPl9+CGvⰂx\CRvSB/eo/nJ[Ajls'ѷ)GNFˇHܤ O*Wv} Z}V(} g)fp~m5͟u>щ E,pfŜ1; 8s q@h]$oQ8bGѨIMB -ʇs0p]6i//S?֨zYv 0u~|6 cQI0"~#EE +xI?BTxޜY%w?~o,&G' rP ZII]ptl$ R\=(rK#DZ4(g4`~PMUnG_zk _b<@$5)3I U_aR3cl)\ %8K<4\%Jg"eӇ,S\R^U4C@uʝ8 P3/yFihݺI,릜S8t7.@-\6u=v*N͍b2~zH_gCm&tepA "ѽܿϓGBxƦ-\C EqdшKZ拾@8pVJ Ŗ$/‡O==$̫rPwwhјY_nAkF~GeTTmWXk>70s RkwHPZ|(z-v,=Klkka% /_#/V$RߒY܏pE20 ' fhkJ?7` CV0GŪ0G> -1I#Oonc{:RW@n; ʺ 5WzaΎ#iꖙ=ܛض駷J,RL@w.S|N4qWPJ1-5 U@!)CE~^2Id|ct Ȃ#!+uX6&5xI oL"=2sn>̦ 5&ó,k5]SvC-ԝ[f&Jd8 gSK%'Qͪjl]iא6f%ɗɻXmC!eԃ;M10@&of~clj,W?O!5M+e8#͵mSKOʧs ui"gN8A JCoe]O@i)0WS_RT|gy/dd^gg# ,WGj뤢HAd0$AK=L)/T!Uu4ՄޜOᔶUH<)90ۺKea tqHج_;77ϗ?t&c.9Tv𧰶/0Ү28Qi-K{T y0GGT;6݆pTͺdF4Yq!]x]H+QU5`^NkA1s*c󲁫+>il|0~ZۆC)3 }-7z!l6vQi9Юlkj` TzUG}6VhmMEKCo~/s1tLjIJtCO!;tfd3$s k].uO,@*QFUDaHKW+h ?\JdKBwjNu^ȿlŘks)ݚ%tj̓=M+Cf4 )F"I O6I:4uYNȫYs/)u" O)KC y\>L t]뢐<^DbT/f\2~M+P%.E}28jե5 6-tn^ -ozMT+X>2h_Mh)]RlN[ -x49ćEyq|O:+b/ٮYgYR鯥ln7?&:fr_G1Eڇ R }+`x|\&wrR1KbS[ E2|{+!*~vLo~)sź5RW'[|fsF )41EŪmsDB4oG{ 孌NZ2gƇ}2 6\~o|~wQih{a 17eC8ޚ Nz& fV-LP"Ib@;~qU=C㶩<2z{Eʞu:$ ,NG1|W*rfi;,9Z66U e:Իj`g;;K8 `n7"HIЈ7dV@_F[[ *cZme>U0+=;&=a?{43{ѯuGL^b9W{짫ķ?mRUC<θY=m&ռCh(BOi^o*{w !д i24.X1v{by̬rH8B-tY;vea1`/c~س5sgYX:jcPB mp1}ϖOhʖ8o&yqyQsOVnnk[+CZ qSБM<;Q$ʵ5#tq(Ɨ`SϳWF~UuQf1G/3c|_+S)'/2m6[vi\50$/ޚM1(zGI]hP`C .bOysd_kuvR7GQM&`CdȽfh7Ī6סkۡfaem'OVT3cwH?]Ug+ jJAmͩC^D5ݍR+Y 3.ԡWr[0CTr8j9ˀiƴ r%ٍK4o-NBO['yN=lܗ409}UZᒻ%ym!&<1'G(/U` Y{\1IAEGH\hNPʺq: q/guf7iHCgBUONamg&j5W5w*gb9|dl4VRnQ|BaCW-,,1+1X %QYa3\xīrq}_ߙ"ļaǧlj.Z.)y[kn ݼ71T!&{2i)@CP:@>NF=-t4>tm2sZ?P3/GRjyC=7{}W0, ;hq)UtMx̤^Hm`lq~4uC\(#Ei0pИYm/^ri mY2Զ7, eѰ|rA4"F/ p]n/&ҩ l Fnmת7l  .l˳0;%Ni2T >a*cd\NFW=^a$<|$@#8CGB7v ],0x(m/ǘ4F*9wWgm9.nu2G Xo* BR7-y)ҕ6H;3#2֣˚lh{JΦ:q6ԊV4pN|#k充ݑpe9~?xxY@&ʗ rɔUFX}f z%7tk^8E  aUT wf y^=om{2P$W sk|;_υ~y7oOܵW(Q=8sbb:Y MZ1}WO'IGteT{Ş&J0[d[3XyEIw<_J7^emV -&t--@cKnnRbpad6Kl>G?J8gcNkKDœCd:3,˜UQWtY_ENR^٬=IbR.;XX_dv&{#KWQ^ۣ"]ʉm;~z' ZQO ^7OgDLU߾Q1~`viOwB ֳiD+gTUGdd0#27S U5CZoUU'nD7;rMބbfH.E+4G ăZ FC;ɼTv `zCjMk9.s 1=DxÇnTsӞn,F5:|{]#,G/`քK= y ~e϶[)㎩Άj7qIze'smbG][2}PwqL%e4gL א&GRC8ά$;[8̳nepBkq !EQ4Ү^ВWI{8q؉'e\2 6bj{Y{ G@@9=.nWS:TҬGN(&ݒ;~ p ]yIt]N^JFq! 6n숐ᯄlG,CZzc U7_dJQE#nNa/~} *@ y4A҈"PFkY*|˟ 0piӣU+?ĵ*.gģn@)grɱ ظ|`nm~59TC#Q};1ovWeNERguB'ZciԆt%W k yh_G#  5vXaNTjkCcX^ \(eHd]yF J1,uI5mMuN҂.ZH(`dQ5m4,|?'?&rDM#O.wUno]hQZJmpg|SpiJXoWk auLT Ѻh}fS0nuˤ_/ϬUyYc^q4bd!Hg^ ܫZe\#FIV@{uV||\٭YIT(-萌Y%񺬒@?ӄgرnwpmP&YM@citQٓٸiܤxMZŘd8˼ќ b+s$4N- zˀ-:D#R>0( <յzGA"MSa 2lŅ_Iڠmv.d?=Ope@s<9*u@KYϗo=JY9Y%rI+&&ƥGIۜ'M'Cf᦬-ʶH(ۈR3#<pLUIGNnmgA(,t._ҶtmUaYd*`Yl4:Xs MU/fb$h/fS+SPu'8IM=-`cW=1=$E,YXAH@ߎI^=`>ZjP$CA+>ogy/@&DE\֢C;9I\tNz 8g k~3W]/E(5 0R8_OX]9CvvL*@=-q8_Aeˠ1Y7:m]rWg^M:2 Qg£8j]j:ԤnI']z.ѷ@ apv`԰.NJ,YQG~h D+=z7# G5U $y! 'F9:A].C l/dJ?Q-- 0"rP `]Pw^W<nX>N t& 7b1RHi \w0.#1 ta!Dt _3s1E+|* r79QƤ[0K;xճCN1W;+ɶ@(^r [`A@Wgsߊu͏C`Bgfcx.&8jΤ k[yH z;> PzK6dj:$/xGG DE uS]|VFKZArlqHqSҗ `urds:V!}vѲd=*黮WͭWkaX7\J"+|ÔKI*,L½Qb3+Mi$Ql_WACD[=|VZbOHuMIr FAs]L@.4x#1r:ۅ;X3d޾qZZwt0 fu>P<ʩ}-// j<Ҽ\;1wqWNy PNLwJ+ s;-DmĄ #ƽ03}?X+AʼnԬhMf땖%{ء``}<Ґ9#̰EpTQi&M Iur~$GLcXWMK6ƻjPJ:(MKH`^V= ?6Q$ƹF +$l#%H{Y]?< xZl$Gf#Kc ٩~ B\.{e=?h|VX1=Oz]dζ)轨WuIVaی"T`$?V6H6a`E*xB)7˥zG[q;ѧAԑ5z@1QNVS_D1^F;`)Cw9/uݵz<* =45Zܳxja1?A4#_ګbP.GRDhHɕVD2vЫ5}V_,qK2(N8Ȱ)AV+0(#O+ 'eh&ٻ:}h8ӗ /O>]2bˌ[.A,ӜD}zˋQ.McƗ+Ϛ U ,pSK G,_x0gfoʯͮZœ(ҜFR Ym{:k]vXL$"̨ojpi^Kx|m>M|Fj,"^)\"NMAznp[ ,#s.͸CkejۮdBl<#Zyjj,d/^]YH#e0&h1zI_}IucSg:3WBAt|+Wnq> N??uO'sK}DG:@ku'N+1KVGaJo>߼B /* A{|YAҒ ޻ rQM9)K3Fţ᠅|{g>]0M BP]pã/+KA"#rZ&[y5.\iRC}3 C׳8ݽHSN.2(}c3^'MQr 2Nƺ; . SN}2ge-bbM{Q5}"fqj3kVMt#4VTrRqth0*&H9yȁsTV6%ܡ̱I+lYTpI|a^v/)0[ ,ҥ' gv,iڬ?oax;OW 09\b8ss=' ƢCsX;YQWfFVx,[93%Z>H.'Z`%@e΢.`*aecWu@ݨD@ݎV4I1/]@y\A~cږ kg.aOth铩B΋e|?w^"Qőuz;ZDZKys`U@R3w~Y3n;kV5K'nrG 7J葕ɎQOA@|Lc vQ di^g2CDՊdnp[pwig"v(c *ڎr["@S mr߮z60w]1+P^g*1lUuy+Lb.YmogՉ["'Mo>O,R\_?׹¹bL͉-vgf 'UC_`=ۍr[0kT FF2h-''f'c̾ a _7_ó(ۤk K{j27 $7B xR5_r z>^)p_:*[}$0 7xe3nz!17! ]h zBO~xFR2yN-Ǔ8$e);mEFv3rtO1HQi]k+]T-\j'(էg!_C@Rh9aq,D]71]#1 =E옮kW6Ա9ku̿RAZU /pAy[ WJϘVu˅M{t)w%˝406=#oɉ8ic1tKĂƋ-7 ;oL, k_,a $Hl3&'L*H#x[6eޜ>Xkҳ\&G/&B`xŽe-v7:ۓMȨ")Slt6ZC7̴LR {nKǽ>t8jG g1$|M[(x1)=6J?q0\x0 -#8';OI {bi8_b=]`mT aY$iωvsY{hfotbIب3߳i]1x 2Q_j%__Ors\/ 9B>"˶',j:ZPNšf&jL`RyXOtZ8q2beLo!vx 4ЦB#\*tt1 qNOD9Xy<+gPE4IK } #Khk{3Un$\+KJ;b;8nѽ8};<}_!{$|EXj7DQk{ Zm;s^ l}h_$;B%{Eل'Nh/a,bK~f@QRT۠ЈYcJk4I R{]xu?-#Ϊ"^֙ 9{8EK׷ӝN)iй$xǧYIQG)e7d~`:!+P-?!8?.DANޝjR:ff_3qp􁏟O SY5 XBy&-XdB9PKP-VKkÙ }f4 ]Oւ,Ͼ9VYm\R"6zhlZ*wO^LAYIΉPH\jMǍo9 U~".3:U=Q5Nx>,C7- Rπ5 od6+d35_V9ހ iq[f&mOZy:sg]4&6Y1U;!*rwZT^zF~*1 XSxi(eRkWWUE8/LxAS;hkX@ivɎ,im5{!.F!-<1is+ q"hai7^@DYK< /h$ĵ)M'[iڇgeYx(>0Cmzwo|g/1UU帲p6C(A`z@a3n5j^;9;*-M()i[Rq{=${*%2{:;Hw1HTGYA tܯ5K,j}.SEL(S/WLnD ?|" M ջ\ݥ)|eDn9׭?99kWP65N}9[IHPFb(YJAgY=ɇL:c'v)Y~mtr̼7uw]$TF?n ;7El|`,; I|87A4wBGmR{4F>lʉv,%>jdY=h؟ IeAeNsfm+. g)bkyC3-Or&?|_o8:B@E8w^/ wJIV g@\;|~#G+٤ bc`}y':ǕsE1tm;CG/g5&U =KD q Ƣ{mLwDvmһFon bٮKyXkp>/ekqo[O!*Bt]'XJvgʖ%$Q@e%*F]+tHwaCLfS&Z)5.lvE3a27Ê#𽢇* swlY=1Ed sWkW>9+tH,~A?a7hubl V XoW'7l8:fqJ 6 :n~I6k;|3Ŭ(#Gp KYf~t> g{HDJ.oM ZkTv椅)cH e zQ:溩4 .MI|ʇq F884xV1Ӹ1fjϪI3ØWˀ3q>^/fkNk8n-=t*6/ 3RL|iL[+3kW`&2O qQT ?p1b5.TOX-{G1ݣc*5'>Aޙws L݌ ك;c0::Y/<BZ+A\,Ѵ  `,JP*OFm˼W]sc.O2@s{!Exf`i NsRUzb>'V5ryj5W1')O/1̊\ f 0U u7&:E XvGKli\FV-'/Gi b!4q/u["~+9!iQk͹C@ è::rs)+N2QI᭐̶Fp;b pdDˏwn{*@XN`gĩgzUG&Yb\}0AYld:S+֐@ .ˡi!jxڛ N祙NJ/.y FC?1jD5:NPZVۗLb~\>]BL 4P)[$G8`"MXS3_e5Wjg%־A6;{j[kC>iAgSaV*؃)1z&DT\;Bzu#6L#s@  /{>~[90R$WANТհ`ӖF?DLL@^zٕ2߲dtell |;yo5JV90pFJDRĝDgŇuS\- ֣}q{MAk̾ )6?)SÔpH%=͕Зvؙi|/5mbmC#S̬A8 zQ$ąTFKq}GuW]5 ә(zCoH ~/:wEJqkK j#*+׭h?AbzeLvsi7HLJ𷜝#\EӅUwR:&Xâ/ HYc> >[m!$ 㯨|=X$>w<;gjbeؠij~KjY@+Mg1BR|T924Ϛ`>F2i~Y hEk vKF=*.%KgYClڦ*bf!p[ gɝ,줾nl'v,2nhfou'9 '5(tb-euPgdAV'".Moۍ+l;IP?.>e2ȷKn ّmOPnAd \G*ktp pZ< Â*2(YPwhh)z:.NoEzO f ]BTnE)Od$B?d$$M&ܡ ;^cۍ6YˉJ;c>vHm@z 1^C %q3X:{JyM071n#}Ew1U`kjiL[4W}0Ś"xŕuMc\8&#pS3J" siVL)I©o"kNP׼9ofxiC {aINxFn]gY@|G%G+l#xsѢI޺ԁ4V @1_)t0eB]\[ʷx|W63*!8{9%QˊII+k:!ꏼ{)Q7yl1Q]JTҊy񉮋mhz#R5 _N꛶{ӃNx Cbuцh:B!%5Bid+,&76ޢ A3˖λSʅrAâr aTBbCmiR xoίg8:T]i~/} "Խu!NP8露|[;?}eVAܹjn_Ţ/BU_`~ecM#.bW_xBX9Sz?b~'TlK[)An*$3(2>́'$LnKo[+iż|'vtzਘ,1J?t:~/v s97< AJ|ЉTb^=i;eƕՄ1i#6<eVC %=;3LB/k28H(]s!CU1 %a8X8f(NSkWԚš#UxC(O(eal2R8;k\nM{b 3ii!sZM#ÍVC[dXO1+Ν}^!IU-CP. [eBp~YyC0YI<ϗ(fTt$x*j$^y_gӟNwNdfC`La)gHXyoM]{R٥rD|޷+~*4Y"ApJSĄ#NI4h~$7"$V`J$N({SōAot#T2v?ZPQ\2th<^},'^0LHi_]And6ԏ-!T8^(2F4h+QL'!msͪPil 2$,I0f(ˈocoyXI:It>'O7Qi7_'YE* kֈ[ApOlbLIR g4cS̭ kR/Lݐ=ͼπ*{xG.7+ "rz D^k %n_Jaȭn"9|T Z&\G𧙓i6w>[ e2?I[W<+-Rb! »j=[~Ayg1Sx;)ĩy4C% KaǦ[-s#c/5CZ;J{.:DQe*xJKY?i2=old5 ’ ݱkh4rqP;Pl;}t/ <{Vġ3>@8  pwG"dڠ2TvoXmR8~$<:i87u|7_3{hrZ3d^{h4oA`WC΄ɢ yCb'=-Mk*w!X̺`^|IA9`kÛLBm""5I^phruPnk1֘Uj4?˿XbǏ HgQIiِog웳p rɐ~Y˗]aJ͛MyW1-33a \VڹVRDrSjS/ y3Ә?D]g/[d| \y8%F&p{ uc'(7|gT_"PV9b<|,7BY(M Kk]T~7Hn1:yun`L9Qّ87 fvVnHڙhӎ19 $#2rJda69ě+~(f!+{萤r?L,_5 @ZƟYMTg x=)˄x( a1*ajrWydE½,,^Jj[Ai}#@~e@|v&\'4bCʹ@jD$˼TǦs,ttpe{A#Yʌgd~2RiV]+$JPlZoȌk15Ƣ%.3%We4G)Y#xg SQm@6UAvzI/qkA5Oɀ)Ҭ2ՠ4rZwY8$xATCoN yId5ko3T"0d 1>DVzr "0_rF!n9|@&(s$qKQs8I+]T.kqnX FW'p;gD_5*DZU)'bSkd29ш9{s[ߧDD,Cglx Z{檛1ȅ2ta9ӷnRُVi{C-fXװ 4! {"2del a^#/qIys4C^0Z~b`}%n3La?&ʞYL8>L!R7 } 5*l /iUŋZ[3"m@`+ǦY 3*@W2s]Q dSx*#kşόQfwRp4 0sysoN>o1Gib ֚#T2=:EW67[>~ބGe&)-bc,:L:KYXQSWLGؗm{]S=\1KB"{ǭ೪RLd2:dElBI5.dNL׉ (^OF9(hH7>E5~~ G~%XI+\e `ljZ]92F"6j{->>nog 3K 62#=5Js}v:Icʹ_2?|M@utX3K%oHлoql\9yS[LiWlO>!ޚ?M9ةA$]i_ճMyY92@uOF:jr/ϱ#u=VUtFDhך _!lzz&Ch_|OٙE3'JRn9(5 gg#/|RUR&PLYy HHy W^Sq.㜈 mف`{OՒW=mS#uW@hǛ6,*;pN([4x_K`muUqdS_W/g=AD;f[reI Cw&s) { .e67bДĶ'n^k_"!qz]o/$nNh @Ў33|eq]}߉lMakJt2ZƝ_eۮH["4T;{26&.&Ct0^M{nY(oLꅫ,؏ofT6fhhHP$Fj[#2la.8!^%zc11xHr-]wdlcU(dg$}BKaJb}0a`6uXQI)YÁHA"}ty"׀F@iuafpU[vK O+XŢW/VWP#ߏ"/RTOkfVlGq;=[`{bF_ ϋ3+Gj'GgB#EXߍ 7_W UàqM]?Ce"dR^Hq7-ke0O!}IF7VHg , R{ rQLAL4@ OKmTݞ%^doqJ99`|z+M)GF8ƛ)Dnr1 3 C'q﻾"s4*yN椻 `zYǦ9ކl [ $W\G/ϷL5>3fAi}$8!S/z1uGАIduS0mqIqZnOd*_`a:]/x>{>ء31=8;:Z@>lC v,PkDfINN}Yh}McŅ^t*ɬ !Zŭ tJZw2k%͌;}'w5+z19x g(Mg|Ԝڑ]]$Hl9{z9O<,bSQ*^|Bb^1e2fK 0Y?"N jcUN߾K+=wYOrAܲIptTY&$1J}9"Ej=)["ihL^Di_Qh*Z4-=aQ|ymqkEtG5 ]:"U9e">ŠÍ Y]S&8?D-i:l^p.>`.!񣁄1vn6Y g fT,ߡjA1_lt:Ri!R!c_agW1ɗ>ݫl FD<5U` LʻJ,lg̙X7ח]Z= [(^(.qpc7 #(` j1t?Z|K(V7]8=#f(Jyv#-dEY\}&G;;؈|+v[iTNm ݛ>/ :rS)3 Wf/7,^;:rhsyfSAjx%7e=guXx|CV't~ A+\ {Jȅ$FK.H_9 \,.?*6tk,\ yDWVrsT {HYh뵫Q,\jJ}8KtL\{-4hAYؕ{9h."O3'{$9Vj2@EG7 0ӛ(D xD`MW4@*eUGF**i\bFvWH½U;[z~rWd"OyݰBx3y9j^o>Ǜ.IU\z  /^ŧq r 2m@vyNSNy=.Y|fT bU?ݳ`S6qC.rf . <6 ",^G7'9>G)Wk1oKu%_U1?[j5$qg5 "L=J1de>_=D.7Uճ@\?=6㔶e˟T~ݴHЊIhӪG;]f>u*Xa\ޙ T6] P]/3]7?Y#X jLX(? nƶ/njr)!+ymFJu/6_W ™Ylf`x Fm^ e~2ߗO%rPQ߯`'7t>I8+ujqn9}5]BY'Â模/(aM+gcg7͗\d"!Cxղmx1' eyɱyđe> Q_U.DUw^ҋOs> ?F3"Ukq )y,-)o B1l~猘?IGSf\?*r$.OW+QcuT 9<0z~r$2dp d4؍ zU~螠߸im'3V1YVn5\Q0ɥ%+; m"u@O`)DV*^6؝{W Cjcscܯn啄AfsQUh͂NEsZ3gS}ѩ( N[p̝]48$gB6};+or\8jaYdx尮Hq1驤H)k.|`$9׎,+xhArl3C((q0b ʉAaIXYR+m,׿)S83"2v5E#ob#b.MP:au+Z[ĐVM P سr1$*e+hSj%iF9 1u^Q'~ paäK`St_X [ iY$=?: ~id ; {*y=:%hۥO]EJ`Yv/7M[Z@^TE!qUι@Valo$Ggv 9^0[4&Ӑ>k˥E'1X(RJȉT2xno sr(YK27璋%VJUgE U? p)[&n&-y9 ޟdֺ1[kPɟu޷-6΃/BH(Eߑ\~a0E&ѯ!tG)٨yBFH9;"søЎ 5I{1Iw*E ƣ`̼tWu?I[K݇Hgaٴi`XKTGwaRZހ߉a12[?ljV iKwۦ MwFF0Q>z !S8pjػt#I/@J>nap6ME1 *.1TQ0(^3fvD~WՋ0@(P%Luow*}l:|-, ",eެ.&Q&2̲i&G=FKCCgz}G(&2w" yx V#< Vz"cv ?7 ]kwmuZQ8x:]*tf!pyT4_=UU%K,eKxyޕ680-HDr8#L C'JC5Uo[҃qhAgu߂QֶtZ@T&Nm;^;K1~zԾr_qjYKzM+=5yX| @- -ݣ"&VfkÕ!pnATH,Z//AD^R>SӾ䆩H%3, G/cT(b ެ{#if6(#w+߮j c:{9!l ˨x0I?QժŹJ 񫪝~{$P CB'fa017 zM*Ett@`hm;6ֶ3~VKHW3m(y$ёb"x@GD'?tEj:4 nKWMG5oA@91~W GycqZDZ< kbm$ZH9v Wr c#Fϝ3{X5 j\lfPh{2,y"s98^o]vQz!p^_>EDm[t㖫~ǎeF.CXpҝ$%g]cj1HS:7k: =V;74sOd*yc$ˏLAq$'ڥېs}o\8v4aznpTIyB~jaSJT?t,[ ԡ .Fǧ:sUG {@-YT8-  SlR'(C2=u- xq)Z3h/Ŏ#⻻Nl!Z;xb1BN@^cfZҒE{l) @i m/ߦf u(쏟Rq"l(dL~^isDf[ŭlS -Y5|+v߽bp].v;<mkߐQ5d}М= FĝeJ6 [8»%녇+ʿ?Gk*ox$OklphϫTE.*ŵ #ĴSt p$_=wAJPTe\TC|MD("߯oh0/䬥?bA'lMRThQ=d'X-(nP#-b7]%K8}xI^{4N^*~XǕM+<1OGņkgGqm[ͶKp,%s8XT!UI /[\YNDxHݯv`tĕ WF9Rx~CoaҝUM"{u3CסּHNRu4|W 9ae54,oIC]ϖx3ҝip`B\WIV) |QOShA{ 4AwsD-bLrbc?#\Io#K=y=wrFDH yOdaXE[J%\1Yd&(Zb(׆1}?MoЮ1,,;)I@@3#2 ѝF7.IyqrJ(CCcd]GCCAsDGd∐P?>-뫽Mo;wG@zwtZ'*-Il}z J.F#1 <֏{[@]BsH)pE҈Qz,RF%qbc4=jK#%i;qT_7`S~_2_}?@lQKҢzŅ?i} Z^3nFdu9aLUCj8B {{ԓgbJoŠ4⎹EiudNMYLFN FJ0./=!Wޅ?kC$1:-dހe /m!йyx;%~ )- h<)G̈́H k|ֽ3 (QdEts]5=8p=fy!L D f9 ڊO Ug(-?z-%GI__ql9sF؉lpS.r 6Y|(}@8X0H$݉oPZ(x쬳q9lRE&<pDD4XZ9M=E-U> ώq"ha^_g}eM5Y ]X 5 jfYYGN< uQFwU |yE:+cxZE&%OLcٲ$?`S(# 1U]NM/5yo(r/aPrW EmP`?Jl 2(/gvn7lGѕu1͘闀<2-xU*Yʓ*{&I1-dtZFYw2廂!7l#|vS$9vx=,gFul5[SڠiEgHv.x@f28S΀z%ŕF7OpeOj:E9\awsZG;r`2x RG]^4xg1ؗ_ʞЭ } )3de9<ƕW$Yc9sH{UiL:h~X9D-ʤL{*v vw[.`0djՒ[@f{y1|ǟ{g}Ȫh|3_{C;a}AH RYB|ej] w%%I=p&| !nMBHUO"RX=:agA;X6wP%m9>S^)Es}#HW6Jlap'.A?f`Y -Ki5cKL04Ʒ}%Dh8sN_?{AUuD{ME<ż^Lr|O& :3nCBşJP }iAG;P#) %mK سvC7W(y"ĮM\ɩLCb-`@n@ad&5r]D'psmҫA2<gxXh׼&Pby-˸lTT1jux,~=}hpy_H8~]X3P6_DUua`䒮!., wlp4l~|8(_ 6# `aQS"hSPAxZN97&g"\/4#"'|ǨʾR"kpy`阀-Ũ\-qEX!oUme>0)dMtx|%81);appRmWΟ}x>o|v#_԰\]cj_ciwn{C[>_]l%T:SȚPoP t~щ_-؀~ Eftb"H>Aޚq1BOLV3rO`A롊4TLyaA%=7E >mglW[Lh R`:uAvӆDd=7QP*|vnT[TnJ=6@>`/Z`R4^ZlQ. U7+52ufJ%߸EO UH[UAʂ򛁗{lD, v yQ'DJMCM"[Ig4#b<'`OV+څG B"ϒr>KTT0Ĉ %cCt|n% L12^x r nP,j$fOGqM>A -M^𾕧UÎ#L},z% P{dԱ@:ΟrQXzT`D@r'̱*,1yϏL ?3&F q8O7G N#HsV?φa:MZ \ZwӕI3& ]ڳg Cd5Je5vcܬ$DԹ; $34XGLHLsԯIKȐފ7npD!Ay%73N!3GGc8A;ZO5j9untD .!( $cX0 ~= S CmqDS/KI$c zm~ 9=mfذ XXğ3l!+- XĿz89\c[B#~П+Ɵ =qN`i,[Jă[U+y4x[ ˄t@Dz`)}f I&%I62;*?ws@Ҹ6C=&t }I%=HaeAdF^zPbFBt,OXJRS5/sJ< ?AԘaڤWGt u-R]#Vz5@&ZwD(ъv?ZᾐUA5 X0nipk*8/MGLsauTb"z ~5tH#:7ٶfؕ6 K OV+|OH)Es<&^ ̞cn_#FiP+kN5H<.ЈCݗۮ{VAMr8]S>:c]~ r:꣒\=dZii#d)^Ld%=fX>= UT8. dVuixv\ܥ~1Ӯ? 7JGW@y^\9nGYW[oYG[11꓿˳zܷMWEJScƉtgl<0&*)\7<[:pӃ<(Y]DžEIE,;ICB3Q] !{N2ݼo6$ߨr6lsҪ=#އtmP%UwgdaR5z#w5_dg1o {)ڽ&8BA#@j:vMTX _<\g{x2L6a/ć TЇEd_PbRvfר{сPqS3|9-YsD\vӐ[ L"b iq24zX=S8TOՉ7xA=cR8QW&Rd(+->uf'֙Tnt녮v3e2Aҧڋ7:QڒN+4=WS<]ώ|/D5w"Nml%Ɵ 'XcsjFzCA;at1+$plfe#9h+6<#Ybc;+a]?%vK93U< ̯DP 6ЕFMzzef83Qou7`S2o" 2^r\xqJ* ݏFǽ2sdJnMzߤع|PHR`1R}5&8gi!âbs.F\ʄ*iKHqu7WA!~ t.[I3@%<+ mŵDZA"7f#Io>Vlk p`S;@,eגGs @b*5ڶ2uh9q}]n0/gw bwLcSĀ# irץ41d\d0mhċn:j^MfPrצߏu $[K7 _i}~mH޻}SKf5zF_)OP˄,eqj!M";ly7^;?Q 01PnHb>I΀j65MP&,k(ӯ*ǭR# J7vD,]mW3pD_bϼ$c)TlLݠ;r|qrG9]͎t4#fܪ`#5˜EYh(E(3@+z[`VV+] U |,+=݀ jfXmGG 1zF>Ÿg_ӣ/c7w<՛ L!MS H ?DŞ'oBG{`eRW;c@6ί"9iB2n%X ~D B*s4.=JH&ҙ"dvɸ)* o_4W0ʓj[N4,;t5;ϒ+';~$8<)'?2<nzym-d~Vb^M/̗I .~Y䓖c,LUqmNGV zAL~&cüs(V7Ė3 L3Dx&9xMǐFgVj iJ0,g\Ak X#ݺ'4_MmUH?ġ_8d!2ߔ?~qJy<:-A!v{3OH-n)eMF)H!PAѸ!r"7hAjTn2>l>fzU˨LMͳ%OH?f]woFwj2gw <+->Zɵ&xc 1h PD_`ܧ?}1f8Kiewy@/,S 'v׆ /؂ +7D<\.";wsyx> =Թڃ>V*vʟsXu-eb+ɇv`yĕU!C^,tTnZ@VQPW-EJF͌l4Ga]#D2?qmVLb'n$mOC'1$+Z^9[}Yh| s)(k8rKc_NCwVqM7[Ϝ::*XYXlbx%')uu[ޗ[\Sܕ(si^(=ݦ|0,QS76\v ϻ&ĎfuW<$DMgrLS4@Yf/.ⶀ] Z(ʼn03&(&ǍA|;K3Cȵdd)bdG! g(\$D|}Nۤp^35?UB&jlv/4ո9'JW` H'pXI)W8%պp8 GORӻ4ev8Eaa!it mքesFW%L̫*JaZ6LiSKBC&0c;AA̩w`Өt)ސq ԏ \iƎ;O5N$-ps Сi%AE_snfoN*(|&̎d"߇x gNrMh-k=tuft5d(\qca1 %dɰ45/b.f/׎@Zނ2cͶ)oHbEJ1뮿c%8(UUp..m ]b;MR,y|Q uKO{BlqP9C2]NK;" /I,/<{:'U*'lpIq*պ(> 5,1n?ɱAypS. z1PH ˩hF"Ӟ/s oxm: L ,ef"ٽ`9r\Vg~#._i4pn/QsvW7Մ4^s nXk}YIxsxDri8vQh&1;)4R[í4:Vms3\!2fUl[}p_ bcuUBWEw ҀwX.7l!f;=fxd0Gm/.$ǥ`V aSez^Ƕ6z-ul}4 W4'3WU5tFT NY1Ԗ)Iv 'bg;Mka =;k|: h倂}).~`Ir4 ӂD3\sIbny0bpU#RNg7I >1(K.ݥ*%p.qԔba\?h*0l ?{!)֜8N#I9kF ~**jC4gO]B2 ~+i'+kٙl]&}I .t(׶vfse W庉ue<`T.$)Uq4xHf[-T; Y|]|byI+a Q" .v~pJGEP~xҙ7Zo85)im}?) q1m%-YоT#=557ϊK*M%^[W]ZBΨ j׼[ijP3g↊fDKP&Ox˃6bHZorf7*Qo\n/k@L1=XoŴߐ A6_ ޾ ZUF:C/sVTI&j>M?TJd'ۧL:K/))rw{X{[ ð'b^إ 4"ڼRIaaY!cfՌouOw ;%FuoeQWUȁ>l, ]6zG>l)<ny 3ECa#~--g[5ٵZ} zyxo?ȩƻuxS dNHbTy~Ԍck="wwLfwUBDz>ʄ6 (Íj]d5]j' xub9™:zߌ}/p9#^4o8 Bbx'A HbA&tl3[FXOcÉHT÷GL/:(3P."x)tTJ2M썯PT(m &.x 3'R-TNSPzoLQ'[z8@ cI x/H{xN)6a!T !Ch[٠ҡ]'TC+GnWMOpR۴9im԰3XKmEaz9BcU~IkMCŝ~JF[nUu*;D^O@'ܤP|ӿwC5!cds TfiVS jbn% u_ !כMoL l= q*'ٟ^~xw5GtĽkc Ƿ IVB!F_[NK_I_eXfV>3*h'c;C'}ʼ^T?]_.*ƩƌJilϱ7֐:N(-ߍ&;99Vp3x VBv=^;MgI(H~$1MBMA{\Sj)_ح <aC 8o'?G-z89!FŌm #(٤>urҾiE [MA Ԃ-;/i*K0?͏Z$N뺢kÊX\oR5}`LH'01ҁ;5#S^3E1ŭcܳI3Oq ;3D c/P JYS)[)n35)\$Z(TO*h.rfر]טh_p׆ϋI7-K)e VRX;gB9lvEspjUJhƥ*,ed&U3ˢCATDYBfe&}!n7My 7"XJΆθ^-ez&dfMyogy onŘzS /ٮ)`؀Ud @DR?Syٲb'#D2z?MN a1'Glg5*গT)<*,ƇύCT5D;  &wvB`6FeaGrsQm3ȥ3G`<J6av1U׃Ph1X%m <G JPPu0BVߍ{wNS)qhE!D>z6ULm(UuORFcZ{Renectth>G*wڶx%ӁmAͪ#ޛ嵫,Zx'{K utZIQݗytO3\5B#8S I›VX&PG':7=SU^O9w@$Y9Zy,D!BpZOU:`k'ҍL3? w;3ڼA>GaXY u@͉,}IZB[X ұ30pI×ik}ǵ[QqSAF~~{Ň*Ё#ҬqnA"y =֨/u󠲖 & ͦ $'HztV#-Oll{8WbHA-965~E.Έ)^MXRi'c*c>9)Σ4lc>]5eSX`V`y-w94s ?@O^g64JnS~uVqƈu>SCS- }W̡ .k?%>1phQSɻxB% Z^Hm&Rq":&g6~p~ݒY*/K|BI}_jGHd{v{m`oYa^W"FoVՈM$0rUd Dmۍ?egJ|U)<8%>soSާ@w*")W{mLi#EHE~% ?}#lPRZ (tQ{; )^9y1= io{[_(g_zrX#] YPN,2+Qf3}2 +z@.E8"Yk(B4'Oٟ|UWDAr9pi_/:뵽n[QH}"` On_&t٭јӿTnqpݏvGw~i{Sp#/`D;7c{4|MݬRz{),s<1mG%4ڇ#CfQ[N'nVe"?}s"}ݙ4 Vl S#X:A2Q9׫"nN{*[6=p􈼼.187hшR}*3]1"T`冾w4IylO .OmU9oit+Mf_>T~-Yɩ$%HUzȟLRMxH0ߵOSYmfO$E[Ƨ5895v)?y8vm ufHqȺ읥4dcϹɾOy<' ~3.CNVPuV8+U*(ƚ0D Et-tp f;geG#G@|>Hދ#;p g140K8ڐŬb&rk~{V[2$Tlv ݎ:Ve(܂Go]Gc#_$~z-ŧʴNz΋!Opo+pޑ v~w-Cm˿ZLoOvseg֎GֳO] \:4|_rTakJ'Eu_u:[T&$w ăXAy^(wA2%9?eh߹"_ǁ񠣬5gP_<4[y>7g>CeSޤcCdnq4ߔ;OHݷgx*N .NtЍfͿ [z>J.> Gs+e .Ruy=q^_̶OL>?ri# OlīfRsuQTaRL՗X[cLsAVMnB?y4Yf;{;!Ol7hUڻIoXb8Kw0Ӗ'1`O q"LƦs5ܚiD}﫹.7#ۧ΅'$:T}MQ|GɀbhQ ⥳M0b)&BY]!6 )þIT0N-V{-U%Bk# u$[W5V. nVیL-E˪kiɄ/TUvrk:< mfN譲[uKוRg|!#=0Cѥ};P.:@JfO5vt~-}hw(+o{{Yo"ؠ6(!L'C7\3}JWtZT陷n ֞ÕM3N_u' D wqYrC&'1%:J z^c e&E bH;TR9J@AlKhqoDOiq bX5 XX[,S@4jkMBo<+'8u#΀a~+*\qet>#/ iIS?,xVg;N$"Ep"w.!3O[}'"]Y$뽐8wIVsU-c z&~P V*mTڳ(7G2_Ý8ͤW),B*!(m^& n!2GIu2c^=KXߴ_:4y SoLgϜ?&k> .wwëԮlP@q?jҧC.T?#).}^_M÷N#S(MC 0:ZhMoRPa35*/,<+&S3WLK6SFlȢ侴8TtSt}&;B&Q cn5DǀO9TbY)R10:)X(W[۴ȁ6x)ϹMHw%q$v-~cHpZ{/}Ūq~.K=B?ymv5)cB+-Ll"BWkwL"'1.IqW4^fTKaK5bHQ>%seVsB]Sq7LŋIm`qx`g.C[3W +X}Mf9moM(J<}[%iTD-9RévKxG[.L޻Wb0Wo켜bᓃx|%t|i>n7Z䷿Bv2٠fZ"V!qm#[n e7KDcXqaRLk `J ,-:l] NP2)HəQ*i*0aA4 ~G\ɸ"VK*Q,VF QJV@e< m\?0Iɓo1jn\a^rVQr<{ de+v?{nk(qA_,2k] ?tXYw1벐uR $%WqƱdoghiA;R<¬I}CMШ>!gݪ/Xp57]:6%. ?&OG)k&P1D/\Gf3~'֗[Ni3bD\9.K,H`DoR+%f+(N_;ck(\ h%[Rtj>Vz:{S 6ZShBh9%cX˪٤:p;&^YelM>\eKY"|dI\<).HPN |maF2v !I!L@\YЈ,- ?Ix0WGوK*ۣdl/iP AES2oE2UZVܷ/{Q+ \}7xhw !i2EɎ3?Y$:,L:,$R?WBJg3J{9)RT:+T7@0z[u ;K>kf-'̗%Tђ5b5DhAF~ѻ! Zs̫Pz? ^`TXf)N _QQZy F3"L}yo/,|lf7"D~> I8h.N@W>Xa]):8%|cD;*'qvlCȎdi Gw7`:p(˟E8 6fiIXG=Jo|OG\7YTQc:Vsl9("ĕKCb1VwMa2u miaEGC}d(qn_hC|ؖ_[okf7 kz\n{W`$P6_o!y2fJx+^Ta&-&hoB:,@y]ĕ}PCa,WpGJ|0_{R~q7' Ma˝.V}6>,I]#WRK[s@s NA)*J,KP|h;&/)dnTD[+_/\W~Z$M<+#%NMn:iW8| ҼZpМD\(8s mrd$Z=9cg )N}!6ܷMM: LѸr6(sl+2>9ה}d>s*qu$'}P amG+8꧹*/2W*5H1 ai;u~֛ T[<J9;;p~F?'j-;]EC԰m)ge(DՋ=4#CEAܻe< S)k'B.M5+|4~bӔ7sm'`3>7pߑ \BøQNKR뱊fěMeqM7jY6oeL T d8$6ZZ'g*ZD"C= &{'T"pãYŀ#Iln˼ v-טg1 ##Vr-Pǥj)1"Jҝ)J^=3#̾ piG 8J!&fltifZ* &&ȗqoYv]S_r!WBs%3/{!ie`Vƈ_kİ1G8lhm,;DY.JJJs.FYC0 ^FpP?@ÎZ}j&:%̃nOt{(j-T`{0[\\ǁ" &sKK}D6`vM!U˂kUi5Xk';lh\f>۽]jigԓ+k#xfA;L@z䱰iWRyIZGne˒R<֎T6MyOH- (}!kV4te*s̺Z X>on"4v_ޣwk5ukB8 ݚF5H@U.XԓsMrBWNl]KݎeY|wÒ|qMXeL3i3&9 ,56]*,`(OIuHcB㕛8ӎJ=G1]PboJ@!2^q K[K~  KC^B!C:P:v&v錍'y@&/c}vYҦL",ڰewveSjB0>ڌPΨ0cû偋D]= )D?$6< k xGk\MU0lmοR bwY RWuˡr-sVh1d+"vä9 Ub=C%ˡl%1k hU:9A>_E2{]+ 6J1:VĊnMa]j@M0Lr;toS 5v&S#G˘gO -çx5F's b? W|xougx4#DU]vaQ!'zh AqjYSƚk7m7: ӑ8~:<\QnA% G |B{Z>[fJjywʮĻW<3#.c혧ݴ'z%`|kdK%e \.B7Ѩf +}P _dd=2f\P:]R-qB/y5ւa. [|$Ql{/)9+w= .+-?$xD{ʏ-"j}A([WG7'Ah|rҩ^{T=@cxX?꫙"mL`ķg+,k1q&]߯,Al%}Ep/ۭcrE232v_ʟ2EwK \ (EX^zP{a"5UN7Bh_ljU bFډtȠ(,d+F^NPg d_e`q8W`}AD&*Q9!#5" nmϛy>b߻=><2#|3o_T y%닏ctMRC*nH&8^.:y49 2uGj؅7:BMX_*ݘ[_nFP,LE`%K`"Cml-@ĦmU#8l 0G9fkkyhKSc# ? S²34;Cǽ$]LJ7qn+2Trvjֿ-iYd%ȥ oW>$>p6;c6^{cvVDo j[8+?Ip'bx`x߷ۙo Ygf8T.tW<%`d]0%&m/8*A#%5H%ffxj}d߸ʒwd)uhfn(GdaZ :ݸvDb kH6@YvlXJ a;T KvÛ лB۩5NHI"hw{3:5J#: &AO (e/~<ǾYP]9:dN՘9xlpɬY)M5Su>7kEw'e,7~„Z:`oBaB @–*} kY]{ڝa|co47"9 )EAJ_5b'P#FI)Uf\%)0:ns>ŶWk9dZH6QͭdL2iX܊|zHg|^->SP~'ag!m29[fg0{g3h^2?7꽵+y qᔝg*hT[i"Ɂjq8VDW83SD?@rw$R_M{!\&@a|Yt0*g3 e3<|#R)k6ewqL c@$ٍ:!1fpݷ.|*Ѽ?NFí=]D\E zb,xomQ[t<Vݶ]Ie ^slŢPxn46"`Uػxϕ)Lv{grE*]p,Ud.)'|Ys*bʽdgm C_rsG~Z5Zw-UᠣcKr +l*-{!*"9K$uW&f}P[hO4b߼]0l[D_.!q*:G1%7)Φ65_?)dΠRG) l,^c<X藥5N-dt| kn686pN0vLȭ0|Gk\~fx!wp@\=[ۧw]IV,*wq"̎rlf۰m/|aRգ-o`# 7@VU8oܧ)/LXp 6_n f@Bw^?)z t~q8Ӯexx޾5|XI({))_ aIMu˚,MS RSzdWV': Uee4x0ڠr!<1s%v(UH.=uIE[ HMw4Y-o esMVG9D!#iO숛8EE]Ѽ gw[/_IJO]es㈄x|p-G ґij-c.vvu5[Zdem*ebGhpK2,X0kK i$(O0_ 1WZ gT.;JyW3}{j9yʦQ*V[ZaL) Fa/=y &DbktCmkf-S^ T&D ;~ 7^)9ttv/+ZmgCErRuD`n-ǟ &0!#2fcѶP/k ڄ{1Fdjl /S54H.!8ۏ=E$K>񡥘0ʜit`5F63oGοW%o}vwTIһS+!ɮd"kÈ* F'58.lV"FlL$]\ug1-&ZC|T^ũݒS2{md&&):O2e~k_xڟǛ'0PְC{w4;pַhe8^j?,(G6gmu:l@>ɾң n[9_xSX6 ,Ib\YJHרL^KOoSv_)2/wjfxXX7/ZJ2v[lJ: of r 9UvrىPX{TtnSI ,c^Y%欦6D1YJɞxO\п!k1ߎe90rITӪo8OǶ9Pјi7h(kX,ԃ 'p(VǦ}CnyY}{$\_!,&2Nd(HҀU^ GŭZ{Ӓ>E^^fqtaARrmC 7y2VZɲӍaeiѶ=jTpq]>|6/0ܶjUƒ} S8y==~ o6- iq d=2Je(gG(Xgep [=)@e[7Ѭ|=qS!= 1O:X6>JBEī< i,\ nյ=5~-boϥ1{SEÚ􊅁>B ۘҫ"xOu}E qn'ZJ4VtCUdb? ~[MdMu?u ɧLީJEt\.OHm|u@~tpCN:ojeP[!FXesu|H1uΧ|<**Tn]ׯ{=˜ N/? k>[Ģ*_Ma \bcG]-I1+(uU[3~QHѫi3ϥ`M)8lS[]8J8e<͘tJ$ttݿvg-'߯rlגk"6ܪiɀI#<@P\ZHe|\% 2[*'Qhz1UdKhݲJYon=ں#IP.T١DW Ka5"Csd LI|Կ`wz=>[/ۄ)DVX~Uhk;?ag&ܡ TŔB- Ul6/wzq ϴvL*ceKꢩ~Hޑ薆:$0g[W=/Ϋ?Ũo|;YKH:€f`4k1kUh۔V1m+ ,?dT; IuX {C%>ky dMtwB1f ]9A)P _iz҅d=VbsjTMS!GM.NbJW z]^ 0h\Sj›vsD|%~&teI~I%1уsl T /+wǎX|SD\19+*G;Q;?g&g Hg%ld\҇0A*=@Ma\ȥ DaQ O"AOC㟵u傇W#=g.1(SzKJ~IP&Rש_IM^n$Cÿ oлsO^tb~V9?y,pP"^zd`2DܯtGg,Xk[ h1kZyOJx&[8P: OC[SZR><нûX7} ˺cU,bl]$ƕzX/"N_P7l / ql&^oh+yaJ )[݈ L ̶*1ȷHEtb{VJT )P.LsaXO$<q:}qE)V9FDy) ~ro 52-7ѡT޽ƿOs9H6~_llygn5r+`8u衟*,4P#)/Huu[2:>!&09!97 K ad!}9|wEtF*=T_ۈvi'|v OJ!JlRCׅj_7m(MܴkJ6䃋GuMj &$ m 3hn@C쀧p@NOCHWUlJ[~aCg;w$!VA\1Å KCZ03D2RivrcUdʪL e;^ώ-ӰYM}JDgUn Lyt SSlcw_j?t85M ӏ /pAMJvߘbOݐŚФEB9f<&\}JCRޛyIs8GQhF\Q pбG~3Y*~g.̱% WtgZ~ruݚz{"H&Zn"E8*\Jks4霗GzE"b[HC'ygᛴ|D:kx1 Dq9#pmwV_F ?a_OE5nl RK0Fed|"ш_GJjnTtZ^Aا mQ&GDx1EL&I}CDjU_ ɁOg<+gm$PaNJ|i;tD~ iGE-^&Xl*T(YA7Χ`^&Hj0.@X 0R-A0\ƿCseoz)ev\@QWW9p3m<4(XMSaԬun_Vf=4#F/ma~u@֚ -2+P> jfn\2~)w?(%իlJ99ƈt+~Ȇ1U T0"tm. %xtF%XMfxnODsɪ`ūCc%WJݢ1K&-L'N6ք˓ #({ݷ_0(kyF[jsCR`P-(ohV !xڠ8&N,r.GGm_ѪSF"|l8~ݦ"=sxsq;Fe)ʋ+Ԇ^˽7aVfTV(m=K'yep_a &,^N?*!H|y+#'rݜĘxQe$W Ó.,ZmsN(NT}X^\)oۋNn%LbNe-H=`71-]k] ;Xȳwkw$*B umBOyaE|Z [ å l*@Yd[\%MA0 !٫! xoȫ P.H[=YB9]gWxBj%VQi:ب=.j㡇hq8&Thlg?ÞUl.tp9߬ݒgZ:|{6Ĺn%yvHP٣Tcvº]yb'`!bs=wq`I߷χ6Idc]Bu$8o,7,Ğ3f@U 1# a_R̛ؽUYohJ٣#wud6.juZv>N`,ș3FP IR\Mq{޽Pjw&~!la͕@3:cm[QW0-ع/FFlOkdXi)H׬ PH2Gql0Ox-GYJ lb+(}iq95lK'QaPY($k &qĻ|qebvd7a*S9`lkF,◰PDPuj_Q3,딲(SO,Dɍ,MZ)4<ևR,7~,Fܞ*h @|{L" gʞ{ S>ODI@ËI0ɣQVj^[2~|hV/1b;1u1 LnI@'fP2^*̹=Ƒl("Gd8hfEȇH7g%s:Xj\i g|x46DWJ +AQhZ s Cq^-<"̱̓?s3Y+KHPSHv7[f_b0CvD}dxZ//zyzH FLOa^1͛0Hu9Q$J)}e)MKl5đxָ4}A#c]c[N*BW0 YI^ouXD)aM8&qBYKS]h^z}I0RvdT c4LohS8omNf *|CF5>tbSʮ?9}vb <:`Y'ԙ "8'=%hPL'`Mj\6;bBljuc!׼ĠzCyPDH5 ܁Ž[A Ɛ1!"vl4O K)\`]!QDdh,)Og.ӧ8jӼօ;q_w&D(Vc롱 f4`qd2WG%.]ȻRwQy/ɉzGomräGW{`slg1a&]g\'+u@aZRl*Q/S%~DqR2n61a`B`g/3kU0-o:iǗ5E08V;~1œ z&"ٲ R8/bk wAa5* 5bߘ3B$RS45ݼ`FcL$YTݖ0J|ʘ ˃KG:OmBBI #h N|nצL4C}k G1s &*t\̞-vq!M:r A1I~? w@p*>&ŀlT՞|HۀvS<2B# Rd{q&@l'@azsS|Ԧ#q )"ڞrū>ҜS7wH_T%;!i2DuU>8%FB i:Q$Yۄ 4>x]!4 2P\G0vR<3a#8S*SS=ȹE:]CpzhGoJŭ $S2jhhI7wP9ЗE|jZl.u8[U ^<%:M'ɝݹއ~uh r]xn5uu>aP-͊pt$ 1%0)$<U(|TUʆR8Q/KE!::1-]ҫ2ɫG4w.yp)=\7.47<a]8K3DnbMuDY09Rrk-39:FdvIi3sڊ0 Ϭݐt4\l\v1B/fmtJP'ǮuJ YYUSCF9yՄq{@˶`{^.Hkf0uu9Ry< k:V;s].^Mf~tcQ!(4x#Igb&֦ϪEU1ڊҿuԢQZ!Ⅎ{ aO*~#.5z@ <bk8J iS'[#*>CNl@NFte:Q DG'ie-\EzgIOD&̧#X ]5&g vUhZf'(^W" -T Go>ԩ3uxJrfٳ> uSb~ 95CݍTߚइlq0=}_PNوZWK>?KwA*܃Mu;:RK3-ȋ (yMzmGF}qD{ ڒRF9!73X( t򞀕R 捒E GE]uNq`|舊-X3&riirJl!"5rdCz ,hܸe;5T dJGT݄gwYXϷ֎$<82A %PE~H`n y[p0pA LL&PUEL&ǨvFyVYoS}=R5GTçQ'w"/>稯Dl/@(oGpp n=eΩ~)j9SNe[CWF`\D)cD,w\NN2 _dWE0ZbwБoLuzZ_gFvYʼ7$,z^aaT Sm IuS'Yqµvϡ/>,e:aM0/^rfMcyt42oь67 y6̅:j?p8AεVc-v'G,*4Vۜ+c]GYg헁rjYߐ!mkCG.Fu MP@oeD7#S_}*χ3S_ ux(NCx' c)Je|asG%~։^ R(P_'59IP|O.k43p,I0J$y8"Y }41d{7@+&}rI/ob-@˳KL;ߤ3$b o1jI,,-Є9ŲJ=CNri1 N@gB3W> @2X\yV™r^OJ>x|63NџL?S&۳ v,w5 EA5^gy16.k#h]0Vm^6dJ>f7B:'A?5g6f# ͟@Dk5b@ |ߡhK|hxf>2P[Kvf>mDeƊ%[?;}OVa5LHy@GqF2M{H*h?MW^^gCa쐟._TZ5[W/@TRPZŰZȑtN.ٷI-sT4n`ѡJ ӧUQ:f|iA;W-u̿:RmkfO=Rl6pM3hüm&ЧmWfޛaMQV-VE8~dP Ih@ł͟5 [WQ|َB SI k'jB_Hqp۷G7̹qVyi|u8)IBjLog!o([ Zh+7ҫ Ó|`9Κ>;^-`Ex$W?PfU*4r__@c򗇦 j|gL!1 nr!- ݩDgiBBrƻ:'kLnҥ3׭I~j}JìVy} &&*6x6*amW+S}-q~/QG rD54֍UZ\z9??hD`ןV⎲Z1m.ɇ.=lRcCCU! >Fhxk?u̱7^A:S{@ePVPѤ`ɜ/-@yS^vI+PAȯ!wpŪs,ԃoy <,|_I)Of-!M,@Q2i[ Mϛ͹M⚤#G֔4MV(k<t`=yȓ3FC8ylsaxkf)u}lZj˪+.N{(i Ull|ލ@KZXx[r˜Wڝu9?%\hL>s 蘫'/z9kɑ}\n0'x>-z g]Xj?Т[5T@J};/ m0Zjc fM' AJ;SioD'U`ycڛ\kd+><&bI9:s6jH>]Y & 96xߐ6%b8˶F`yuwI-i".b]/p O6Uqw٘P9f{pQ϶jnvȴqmnx铍~9[ 07w]\Jv;'10Z C_ӫ8#I-!.@zψCNf6>9R (_ɛY{Y`U[H[8R`1`'7њm6/gKϽC xG kdM񬏻eE;5~t\\q#Ъٚ1dOp+3#xjUlPm=N#vz^ė+^a-XD!"g!|hDUn@ *n[)#:@FjG'o)1'A3#: i< sc'Z[*& &|G\NПcuvkZ`Q "9#8%*_#G%OdF̹'>ƾڋFNȷܷI.o)qV˞qiϸp=D72~6^eCocX4m(|~5MV`N8&Rt8*)B7]仏c}xG#EyبŀbH}A F UE4SvOJܲ9X1oPǣD2!r^y %L"E4Q{l) 4}:,  0ϻOXO*6εT]kN]Aህ%Oyvfam`"mn@H(cI ̦;w-X:wt0Lj|҉ȆRŢus|䶁/qزKN]8 ˄ðnIB̿#,߅ET,r3LՇZv@&Pmqؾ U7ˆNϴAc6W`ǃ+ih$zG5q '1{@4 IkGQhLݙg<«Rd(/?tUM"m5wK!<Ń73~|Ls5*ٯ*&$.'t_ak2P& B0 W/ߎt+T}Õs;f5{b К +Ʊ#٭?6 62-xELis̤@G0Yȭ uW"7&kg (WZܙO'˨x^#}\+hN*IcfRJ3]BF]'314s^˪c{ g.'iUQ'rv!/8T,;1*V˼\j@[5~^ m;WS`/psHP=1#p,4|IJvRߑ)]]3&^4D2ձWX]zkGf3rTـui:HgnR~}kUL9ך74:qϢ<~RTn/ԋ]؈n8Q T VDP;R_i9$9$}Cd%4;,%Jwfc)I&o$s8Wl|7`)iV.f:?zȊۭ[_,$wլK }caā 86FffmLz\yv*,dZb& r3Cq;,+c)ƨq!,$fWXۤ'^-f~U6b7r6=%:ׅevʻ"E+,jh\圇l{ @M 1K\%<#Ŕ/soD4%5Az;9Hp P9^?2m{_?gJsВ)}`}=Xݒԛu+H3vUO b-FQ *|0V71婁| YnĝBz:"Щ[Qjj`񰓎xq9,,1TEX{fQ/ED͓,yŻйĤ3v\Qii5]J(EW9g_gQքy5?ЖFy ?ip rS$ۀDnCT8x+Q;쑒!3AI &o)<l$;r8yY 1SsqWcO3gO^=6arb1zRn~?Wli8`xfL =۴L@-l P3Cʔp0s`o uӵy5Zd|+=,9撖^8a "RFYN NZm%!_ZߠyU?`48Mgj,0~HyXӅ#}84&+&)d MsIgS(j'^F}")sŸ3L's6U`H^8Y"b$i!0;nsOp ࢦeoz矬̻hhǬw37cjnGV.Lvڰ2'naFʞܬFL6 :,@$񁄛J`u84;lQ?a,U ʼnm<h:t:WhQxuiqC~qARg‹Gbթ1|FEna1jZ.@^٥qbl㧙Sб Z[7F'k0eBs tWTd.G u 3z??\@md.$A]夣q \d0jﱈr9̅\: `J4["C̯r,ȇ Qi#=(cƜS6u #Wt*4ޖ\ٖ3꿖&œmH' ;6TqLT #lAܯR2$X\ʹ%]gA]YJ&%nĕu6Q߀|Is}_ rKL|4o6Mh5fnQ=(rP㞍J+OO6P-&*2i.sR ;mBu 1M{-4i\NW>FڹCX/ srCׂ{۫khrl Ŗlxԥ-ax4oS1YrzŎK.m?uel||ᩳZM.Ga"E×"6  M4[ɱJcYKq|U(bZ|0%>WٍaT٠*^т!Uh2vP;ݻ:?&EI<'姛|n'{!c9+sI$Ei鹙q _oRy3⢧mn]a񫝹r[e$ɫ;;p)7 [_b5_CQvo-39T~&q XZ2)g7I2{Qd}S7ԀšXU/s(;(akloN]ȡ̺[iH|J{6`U4#omzT~QzSstd%!]_Ѡ<_.@X}qZd9je1&]a3K :|MN(*,|[j\V2 ^5^ηP.vΖ<-fE`r-w}cIH1L;.#CST I~JAiKӠCTvR)Uhf Mu3>6GYGrH #-i5p~_Y~p@+ v/2w^7/jb.> ;)m3APĹ)+ru6$Qjf Z&idb+ŔfIJTsE3yw 9xD#~!2]R5b@uG@48p>;MHkޅeAo#ӏ ̗Qpw0>We^E°2)%ƁZ6z]-/ɷ<% X.𘇶E&÷[mR蜘! DjdAv2X9G18-: 5u-};Bd|7}18?}y?3*O3Z2 JHJFyf'U5{k)]-RP9#^lrSAP[e1=`΢}5 #fYI\gˁi̙hDۜa"RP3Toal-q2?'@nGv}RAXY<} r0~T c#]O42Zw. cNҍNMi:K@`AsO^C"ʘ޾}TXD6o븚\s s1"T.yz<[ V{c Frpe4CVנ؃w}LQ,;J'm"^?'$y?+;KEQ4kj^WmQ?ZQڃ [:"ϊIn8y:o3Jΰ)O? m #w{Ѓ5\V %K jcII5{JNJ!žcWUGНɇ5L/fiaNOrP!zޑEuWc J3PpO\ -ǩokTG/p9Y"&SP(W~toc`˷E?,tsjy%q|FY-|WdX=: [^鏅,KʍdCU֢wӒ{ g7o d=W̢4+(gP7s)K$fZ4_S̀Jijf(g@pXE$DKCS ƽ-5=| ۴rs5]Vw}9ri+<<4x8Ys@Oޞn W=_ܳ} 2E&Խ \/#=GU鋃$Q0~ow Vg=:j z5\04MJ!~WS^bG= $T#*7j4\T~nn#D{uXXdD1;eӶ&R 3n@l{ 83E.ۄ{O[?IP}y' _r)WDs`,-"a$^7nW"b[:+F ao~ cb!7/uXK^aol!Mf]z(&&.u+4'T: (<>WQ?~(lIӅ@3 p T5KL'.*Z*c&\`ݾW{?h⿀yԥ;Rbj`J^{ }NgVfMP6_9U^fD~5P %'Gll,ds륍)X ӵT碡gʎ),X fTgFS#?Έ>>dܾ|5R)CGK oJ CeGJ?} ^SO)RF*`%?a@ԝ%gXjZ_ <ܦR/7qPDѸ Ҡ(%Rn~ Č&LׇdAաBm%{^|`:[_Dfhu TaKށtج?'e"1tf5i_07i "l;48Ho}i& s k-e"zAsHvj,XEAu 3E; ؓ={5x߈v??[(~LEG@hV쾪רl ;=!NOO ]2(X'f"rTC}3`t' 7 >W>!8 =M#~kh&hF!Y,AHwKl~k5q>*KdQWF=^iwKヨu>Ft<зyW)bS74| ՞=|tu5B&?M7[ds!lm28R`̝ˤaϛLJM$ha{G28X?R@|tXnCrɘ ^iG.kwzvD#(Ӳת2e.+暊68u. EӔnG3>T|%KtmGX5- ,j @eEmNwxWsʏ)jC$ԯ: Z Qi Cgfxh+]#q|Nud^T^C˹NS~4R~]}.Ds;!u*9ȳ4 NSXZs%p:,y繪Y!qRE¯u<ظF!*; 1N7_;,-m'o6@⻥D: 1igq8)'E1%1'9`=/2mC p,S|:5gIߜg\%t &{625 KO 0<%B,HfBIMo#!#|(<>N> /-DD:~${XᠺV :O_׋U2ꨑ? fj٠/}R&m 0$-F|C`+" |_ m d gY,9ļ"U&y2".sN >Ws8ۥϥ;OD?}>lJ'a|7MЫR{bj#?^lQ :E1W_rfsMk;SQ^jhFx)8I%CԔ& / +c!Sіѹ+eɝb8ɁlX^jTѵhLyjbyŋx˲w-ttbgnV*7!~< ofG'!@CfOa9w^$](/أʎ-"eIO!o?]W,0P@kIT\+{=I[T ˎu\.%-ҁ,:rT}.im L_'9t$cgIщdHEϛ/MV!Le퐽-B-ډlf:-uer] 2.=ҹ2 ol&"7Ɓ~:`^ M #(t<.z׸㼱'D yEVV+m' " I%t.ˮ yc@U*0Dx$#44{ʱy̙jS(b* b%Zh%5osHg `A#ZC… `u`ߛ!W聚sݤ?ZkEx妧lNuM8\ fbL!"FY&+6q|؊s]?G^GU3!n'6hgoGfSk ,<*ŸcX8ݯȭi.9|;K)b0Gna;Oow)}RMhxD 7[<m6AT_o煚g l CL_%VTqPH1Ͻedɓ%u[cUj+A2 Bc:GW9d-yulw k4@Uu{])I%UM*fQM͇>/ ߖ?i%wN-؂SƑ&tlBEpC0 [ϲԼ*w/6Tp304* !1D-d|Ad|MC<+!;wA15Cd`ri:8i6#|e]m%A Yۦ9X%^;$V]߇CvW!OsWE%uЬ!=u ,pı˸u=D fakA3}-pK%itt&ZɂǸd&:֭^gȼz}u\s# `q` *3i.J:=8<1;= Œ&/W,- 4b-jGSv|pR6okPkXZS涧!I J<) ҄pkgM0^_ -#%˾䝻," ]V9jP1Ixm`a7]Q;h"욫r{SA ŭ&Qr: !>?xك B{ tq0-fgZ gw;a  0(UeJ0|d(V:ءgXfĞB)Ļz&uyf>s͈!퇗Y\h̗uwmp#a\VhЩ<( s.fkܼ:8ḳn@!?4AfQmm>@5:fDFՇ@n%8w/.r)76:_Kq&l vX0qx6_3Dd!^Ato8Ν.qV2E!R8cX8b.vsA$rTm7@YAxM=;rNSi _rWV{c/Vֿ;0CӮ!BO!ھG`t LbcMXm k~8T fcBW0LWؾRcf6 %ݢIQ; C$z1r|+A0]Mӄ+~GS۩_PrMyE@HgfY=("\=x9!\o!3zFSFT@ETogxkjnK9̾m|J |~d9A0z怭S ,GvXom5@s_Kᙫǎ5ESVngrd*vlJ:pF(z>?;_Pmƚ4jvԕN#XֵVx2eQ~0 +30 {I?|G(ʆmeߌI 'ɠ,rFٚxsAoRf_玀r~SIAavyÑi-@'#0ZK &'eHOg/NY.z՝PXok@wdTo-%l5JTIɮ)(/D;o0-]Z[,{= )͜qv |3{B6r! ~Apa"^֣B5Njk~t옥<$$T6[[\Rp pڴ^⢃[ 1( jvTb \p90(C$ & " vAC,iL6$SDl7 ŧ;-@^oZl: c4f}z't*!5j 8G{4"ik ?z9 ^,a 2jV~C5l^L;SWdTmHqXe_iԞ27Խ&/4G*OGU?yڂKtN/7{/5콀WmN>H-4$S>6 V(#2X/MObT8[z1ng>O'IH?:dxw`*`5<JbIY?.@}mo8M }HEgڲT$څĸr3 }^*tnQ͞t:]Q^ߜ1]蹴-Voŭbi\ .Dр,(C nѲ̿JgrKbkU&3Vyz҈d+;d<%a=rYjzL'tHK#JZ$6Ye2FpJ=hC򊧭ώtY:{V3ˆ  |\[ W2\.+5D(H~.*(ܛۏߺmT=#맱Aesz~87mNc1TnhSN1&A r 3$Pդ@o1!e+OdAʖbB_q ѷy"4ct6 vQD m0h' sefqv!uZ#ʂ0<ZY|`_,<%,g.m60nEp(H,)׸m"#k~<"$kPE }9PIֹrTqX -ۭVJY0 uv9EԞ{pL zP8]gܺ,֨T8X;H1o`C p_aڌUDPRi(0AEHfa%ٕ*x6_8N?*.{P".2ԇPGu)Bp#HHrR#Ä3 _A-,a6kёp!&ʈ&5Q*SٮR9dDډ&/VY$}+$/Gtc>^ﳽ1非"EKVy&74'V! ˮj72ՅYyP67KN3}(Z]Δ_O싸{vT4XW6+ #(UM,H}p-% vF D 0L=uO#*m3RzT"qɼH&Wl] Έ@v(ᤍJ~me=WJ ö)okl$x&"(vӚ)|?*GD}G:+H $CoBPMoEy#nngU)^\Qd;r^Ztd51&ID"i.vm[LӅNlz)([y{qk/]Lw=LΙhtyutoa`~ g_}8rY[-.ȝMGJ"bt)ԉ doB/smvvJ"AC}`Hju )TF~<:'{Lo?PѺJapCioх&>':EP ńt)cE$j(|:+Lv=ceR?jXK20,g<9D^cFOԜ}ӱIS*AKd iH \o_ʻ,  ڔuTFmU~4aY]b-"gΜkGxG1ԫ"ACS7a)fsbL]ؠtC\q ,kHt,p>p]Ҡ$39#pRkvok93 kGHϾ=(oԻ` 񫯎t~\*S2NH84\ait"˶k g&ZQ:`Ȭd&D;qJJ{ ,S*5N\SRRc~DLSh94)~4,gsh [O#2ڸo^ EY}Et$mF_T+͆ȶN0/|5er+@Y5J551.[+4gȟ -Y4ڏZNug*J~ZATo"e,Sr4 2hqDFjF yE|/R,41L%U#}˹` q;ol^nݢS*9ZsDPxW->۲z` eLS`3䝺zhDάnmoU^6.-p蓌C|YAt9dގb8`b fkѾB{G@QiJG2*ISJQpc{U#H `SQn kpjXCO (gT63<\b$uƼ PIC`'(ɱCRno* r4Ks㨑mxUc钷@Y1Z4!3kHsW8]hv̥~-S\8 V2p`'aLʪl2C i闁! *&E0?q4B?8EM7ڷeW?3gϏJ2UYӷ`A~b>I{b#FgG{/deyp5`4Ws"úUdO|U#7Q-RC43 ]oZmioNp>a?qF9ʫ X׬NCBa% :f6}AjRkYs.dSCQ8fVYRԇAOJׂ'0 9S`Z/MAh ̉,Bq1 -đwb-iy='@ ZZG_\DYNZ1bt'B1tbCwaycxWCs0nZv4aq{ٌ7] b ۾mIH*)jzg J|,<o)W Wia>iz50y(qytKaMmxӤ+U8W0ϖjL;LuVz)(Hod3lTWMgo`/R !FWj?r:ʼmK467u㿝]3@c(~prmŃasZ KX]dLлŚMlX3NDJF)᷉Xy`Xt{3!7Z}k%8b: fP*ϒ)KւK=Ir\\F>bOCTm:Juu=ZI…=,Fd ֟?FY&ӄp~W;ٴK7PٓSمe TA2mVIIGӊLO4+^G5=g*nMV'u*x9yo!; \wRs{@:Bwz)Mi,RgKYD),:XnkL|f\FN<,OOԘ8D5}LW>߇dT#V.,!#^y!Ӵ:9s,\iLRhIQa0>|"U ^D~/ 鋻$˹vT9J`Fp}Z÷TTGa(&6-R#qjwG ^4H}PUU$Q Q4|Oqv[߸XKf{)Z;(sh(gqw RDaSXr=sB[g;M\Eٸ;yh.'LdD,k'>XF2ҖC1U"uFP8z s F%K8_b/O9jJN!7'p10EU ia"$s >ZSOj"\uk&[Ieo!ZX!|YAclLF ďe DRjsC 9X\Ĥn: E"e3̈ߊKG6,jAfOF~(C5zb6(uzDD 6B.7D"Bg!\np.݃cPxiX?hď/%o…XSȗь@PU17: li24 g}fpA)ig oNNk"Eciy|јi ل/CƨϓD6.})]uiQk\Z7)>Q@m+>uf'δbl[FE62@OZzg\.1,.?Ò~IqvВc1V%@^MؔoܪEb{ !-Bֆm>=}1Iáb[˫PJ"= kf0#mYN@=JX(A ow g"Tl=Ku^#2—[`gqCYyߏ*˗ I77]{$SyNAGm54y~Qd`6_vwXe"<dej<'WHcp*ܨZ5 h|ck/C[&j9'}S #E|[>C{>nCn7gBTN|ea>E n6.'kr)X e ӽ2S`i\Q5s `AiZ E%ODnm2g8.~Mx̋yvw KK 6 Ybcn7̚':Q:A s3;x,$ Ed7r9kgPo^J9t C&Do'OFU ^2KrA?~, =usk%|?wKOkc ߅^Y}[KelqN~ "hR' nj䙔[ϬZAS@] [nm̲܅0Ev i W}G}Д<GzA>VbfI7߲[eϴrT_D0}ScXmPcO0weEU! 躰~sdf X&ƾ! `u ? E&,|Z꾇dpmE "jUHj^}[qZ]R;uw(1 w=0ĺp&!mPfV^JB8'qD-:!"ի䊃 hm7i ry4  ٸ&9rk$ֹ9aZ(Bʬ^).7O¦ٺJsi~3NmVRUU_8Ot˿bc&n, ˇoJ-GZ\q./S,AP&H迮A޺˵Tȉ9vxb#էj_ɮ\+_RWhI%+iȂǬ0soPC k&g&Q-/o 5G X}J7L[wKZNsƖ.NANr"x^WRO_qfW8C~F Uź#|H/C:xiBmhfL[*81-mtX:#o\ƇാUIqv]ӻ'El:ܕӚM.ZV"E-+Vo0ku;Vjlnc0`݂Mgg92 EԒ#X`YQc Ձ,1$uuWE#WCJZψvm,?vJff$)}!(Z_[Qn!zY*QpS@X<659^-Hڠ=P#G!"%H uVh78wXY+/qQ 6\O)87T؝Yjc8 $9 p ci579xǛG 2rp9o4St1"W>i[vKyH]T"]RZl[9(tmnv (H=c0r#Kĩ/24#X xa󫸠ť9WhFܳn9Iy%5qTg O,mV}+W&9DUtHVwkPm ',CH~;|M;kOԂQ_ d4lw@P}ϗăeJTCO](n˳FLziL"@g:0<+ HWIH$^hg\w y ۖU{қ8wCY|%)eGk=u0^mMH5Aɍ;HHUqlD:6#Hpe#("=Z84UρK.u>k&X9=jBe-k]ZO#T|m_dI5E=UI?s(D9 ek%౧Q!?B&A p 1S@1\VϪ= pW("Vo_($ lLrZc27rI _*Ұ>{=Wdz naF"Ǎ>*"D1e(${?]pU@\V!݇7&LV&ecfjXxqF&-*h/u#@&;LҏieSN[otm׍E9(=gE=RW>416-|_߷pN4s;c΀aziޠ&<;8wtFE S^۠\c(_`Z"UwhMoFEUt3ňOqϚf(+1h^@~Q[Jzj"2 6`f)IΘ7Qw|jKrR^ U@=V\nÛU>ȶKa-=vGecOۏHZ8ugTFi%NV.S~ǷɒǓzе_EiTvqEᾳmXqP|ǒGrA=Q7M͆s#Sk [,[[Z4BwR'q%r,Ý{[Y2盂O\›lZ*qYoO^Kֻ׽^>ЕmhWM8yiÓr,Ƒ @9lJ Ͱ4Kw+ZrE2n8dr St7ǻDPaԷ$qvC"?F84H5&]^+@TJ֭Ձ 2aRy3 sV"sA]uP>Ȅ9ʱH6ksJ u3S)09wCۦNwgU_vUew}GE 8;P{;W)J)[}$m|m,txkHN~ nwSg[UjLh4 X4M# X0Z7踺O/ _!=- _Bƪ9g8nwЉjT"~Du2 UL-Ġ~ G4KeLXwpG M/0qt):ͷc{{3Hf.K@&05+/8*:8U?ެ,$ i6xFɵsV$17"I XzT65#6yB5d5׵{!6"j ,,9'X4?c,{y٫߆"UR\ܣ;XV6P^[(ި}:ع$0EJ.󁖟!Zpyw_BGw*>.cWRԭpċ"\LAV",q~ e@}`giW'$L>7Yyi*5{2.CmC@oțAӻaZҺ}۴!~m&{i7R5ƂCLQOP^` xscƖ[mY4zO(iJOjsP׊/W6'c!lM1 !Tś\sit& ]ēgȻ`2Wwj ůʊ@D2bE<.ѣ7g=ܲt%H#QHrh 2HGf۔IO^]*55̦ sސ$jiu4>$ R7~MEj!S-!gllm[^od+ZSݾ6>e,b<)*HFYLvHV6jeM:TT[J?Yv;\mNkLⰵKӬ@EytW&4⶞6Ӄ2HN]SuDSpKܸIe$*ml,iqʉvOF 'pޒUF.skm%7j0gq1Ǽ8>_kX2?SU1O,;gЁkVV zդ})"_H x,fk[%QcJӬ; a#}|x*Lw'-~F0g8VA2먆K>Rťї=҃ ~6 z='@nNtVGkJ0PMm7dI26PwTOUzQ5 }\ya8}*3}IAVm7$qkjEj7/%2vj?[n#LP"%\te1+@DԜ+- S6xO9Peƌ ǥ+ȼ=l,YߍR M%^X%B_gLm̥CL QE y5`"9XRRixExLp "h3Ӏz0ށ9DiAoˍcF:Ϲ\1 p-9 X,$w=C!HGK 664jp&Z(ZF& ĊFt1fyt]GO8nJR|7G 6nbNSr^# 4P.O^mT5!Kߢ{-l˯$d g:y ߠ~d W\*޸,ZQf@X9+v)z6[#0C\bO;дdje?ݝݕvԌXdLݑCzn=bT+\pV/*1;5դ]9t"@`N!pbޑg&ϯ '_3>a8ɷlnjK]8TEQ_Ys"d6+isboKOޡv1v j[ @rxCQo#{i@wF%PNJn _˶3T/ wS?w!E^&)ԔSף_ZG aC!2b8x؈ - tOMwof&4GyrET>N=ETq҉7ſ_EzW.G4 yS粁y]/0eG[ZeYվ{v[  >&^ѧ[- tc qCw%|]ʅ3Owe25Z};aOㆅ.Ӿ. g=+Z m >T `(>:NO<cCnfյ0Hl}ԗ $ر$${{s42ĂyPX4 67*usHDKf;7;˜,.O/D]m*6{`[J |~p(>EVxq*09^$#ŠqQ2vCcq,&!4WLt_=I?aK, 8w2YYI3醂kFs8XȆMr SZKM{NNz̶B!]UעP#_ B$U"Nq#oXt]x)6#XT?bץph䦀퇸}<8ܺT2%g.wC ,rgERьY lsrx^_vlaʱvL!Տ+$$}h5M*hǫ8>d#~G%lݿ;ڣ7VQsi4U*ٮ{*ǍX$ EO:Yp3A/)[F1ka\݆iX~ M_q},|F2 Vaq.7,H9j7''Z|d+K 6X'{sqݪ`PPۣ@ Grc$hvo,m0ystͧ͞4*Op+0_pqLJBqҩي8KiIYɜ8zu!QSF3nPq]5.mF]xb(?٨!"~(ނc YB~8GHbVr*Ij2cor*U,Ej6iqH!岏Z0g,>吲{`` <ӰK֐&!n:/+P_9ԁ o;٢Im"f6Z=$>Wо…`جBeK AczE#iaD1hOw v+YQiluz.S{bј wWX[)Lʋb"uZ med&6w4/HפEHI?n 8H4tjܪ& b}ԻCln(t->"ZA-4LDd(&VG{,iEcVP!\BF\ [J>"x\P [YV䴴 Ϙ΅ sHeM|MeIa$X`s%y \>xIŁ8Ϸԟz;Y p[Is1uy}.' ژsj0$AC[ͣ[-Ay1.v͗M֧;*HCgȝn"9Bird=T[8}2+5Bugh,CkdS ~$T) 'tM| [~-nA#|iǒ#\[\cQS/_tiISO}pCN+xqR"Po$.KN̸ezM(t ho'VnU$wa F[.׉ɳTY9BU$QnirX-VzC=G:1A@~P&#A ga$Ư0D VkGWs<$  $@J% |[ =\?3An+7a0"J?l|w;Q=*rkk8ٶUrCNmi/jRno, 1$LTԂϱzŌ⧉">ٔ/ۛPxsxck|dH4SYSD -`E80VK{N3g1 'xeWWt!K= ԙ?lg0h!MߍD0jjqb3p/_uH}ï*y@4KFWjه{r:Vݮ vgQ ipD94 {2owjPΒm>SHF:S@ K^x3?j!HN}X,ueS L[s4 }G8~t.?$ҋ1JF[~x~&gcG_8 /]8ޖljm2c AoəJx͑rh.rvͼF <{fBYLݢyI\d촷3Fkc".iObpbߝ`j>^o>SF|RXUPZV`![Qp< S1n7̾L/tN+.c/7] L "?t .oFX(<%qӠI Z\Ȏ[ UٜLp^OLfټh;|mn֞K,[3,sDAl++/z+^{og27uBi1]3w?;8EB |ȇ=aH6Yg9̰SNZ_ll)SEe7`s.'dMza +?Z@"l?gîڃi\_ڝ!Et-^)]Lڒ><4mEUx}uz-(B\n[ib?qT`4mdVHɼRtJ,‚4JR P~~DYwbu- w6/ߡ&-\4esz3q"7,ay~b\?`):{k{`K1n>tjUn_pDD"dc&;>noQ>8[T,ɜHVoטl N4lC Lc{O'+au5? \>rLbMZ%${ݳMe"zlKM`l>7~vѽo1y |UA5*"8OЍt] 1}oOݏnowy #V 3c_:ok2?_55z"62q,/s |ͽyV"0 ՋUn 9-_z6R8śѫ9$61WSqq(bt_4cǼj?qlC ^D)eNJͪndaHeEt /Q2hfz"u - Υ>h] H)H)+i\*)샃rRƬ0,@HTRsg^(Ī,弹Eж bZNX>/㷒\i&l";b2؆up[2=@˯8c)M ̤N'nVÉΊ5J3<7boeWtת̔Iŋ:CVk TB!i!>@y퍾3%&~[#"37e'Is>]8WMY_!MfMU 7.J.Yv])6gN g_6)EckSnç76ykD]r0M y y|TDHUX /t?IbOn/n~)v\+^ Y I9,E?n<ŅsZk8C܃)Ykșh%dD-wkt5' cA: }ԙn0Lf21jֽM'Q݊GͥqtjOh1R#ϖBX>)+4he7OSKIџ 0gtztUgSmQ%YCr4Z C~&Zr`<.0q<)wFTs"`4ѩKS@}b:UI@8QjWD2!q "=+1Vi^eiJ5wOiAv-/f+,QA K<2+ h45R"yNet:)lf#S . |#jiw9;eG9t(26igKs.pbلkx։兝jH~q54+<(.Gx&1#͈ew-~1.}"g.?J"pUQ5/Eyn_S!: }Oؼ]]= W1'?z_4^YCl؋z9 BL3x:.s|m_i'r3p<5z`sc ՜Νvw 6\ P ?i(?Am~Jx-$<5 ٞGb4ܺuawg50,+ >xXMs(be8Ρj;t(x4r/0U =od0iED)9R&-'%+| lriO瀥,}Jb]l=&x$,"0sz`M' x7x>ox $F2Q)UU)iM$:dKmgu({/*jB_:z1Ô+!&8vXz&xUt<|@.A;lFx#ĭ RL,i7)|h.;Zy7dhmv1n47[;௠(?Fy;y^iF&N;k8S`b K<ŠC3%WY+ёknւ622O1FC}pdžfЁ:ԉO)NF9V3(z9F5xij.v$ԻO[-#jfjFrR.jw߃E rzbn'g%6,& dTYjI stکty0A5)w[8χ$+#,*M$YfmJݩID]-YΔgҠ tqp"%#&ax' }Iz}ݚn[*m^x:"?T֝]t2'""BthMf Mf1'ZׄЦf8*}/sL::QUb%B1؝rLCH`@qC 5TG,ڃynO.>t 'EP#x7;a;X2P[[};'5Ž#oD6&o§{0uD' zn>m,/) ֒=LzL@w0QbI  Wmڦ$T~H2pPRj1 /Z*vv'fu"_v8|Rɑ J X"Hq]%~ աnpJo%a z[`eKO b$Hi(6B_is-Yipkn'-s(fs Q%·^ kEwՁ7X-6ʫS4T+A3:U81̚%.ўdҗWy5`"\55< Yp\kV Rŕz}6jt@>Zs՛71i^2]oԴ’c0 r-}1ۖ D!th6llWL>5l1Z2wK<](ǔ|e!:pCemR,W$r]L6sy $DɔZE.^fl(%Q:w?o,Hij}YVyBF@Jz|mITNc "twdd8uYHfsmYcվi( .'a5;B_{˶ Զ+kt/4jۦdKes(ӆ'o@AUq@skrB;&ącAʔ4jJbԊ%NWV+C+MӐc꓈I]V8D}%#'Nst JA"J-rC :faeE$gy+= 9Ky'>jMS1۪%Xl,gI]qčPh/3K.4$R0ׇrj?H Re#Cs*0lE  ]cz_>f> 3G\&9,#tY B]3U[(> intE,,:m3\9[i 3XHKXzD, F6rM`u>fU]?($+ZHo99 ?~+BjD0P-~]:J &`<|2J &Xhr~bg9'xL*e"&QYFw thBO026" zk|vDRxvW<ޏR*99 ~]&GYyRm,,@J:jQ5df޾G~rM%(p) D8R 9z[EL[ODWЯ3/M/Mz'L䖵> ߇wjfJѢ6ϙal [k9"XJӹ.E^tCd?(2{ Ej%$4ȱZT1ٌCh> Xң~H Lhp ;AJDdnGk|m$%CfagR({o[ ;Tߐ%6Z^\jJ8{L"Z\3SE<#ap%8FYTHIi8ujˤx]B `Wd0IP ({u3{*m_Ud~@>/*Ptog{ i#ar=lxf@XN>ۤFV?6r;YF@ /Kh(nKQ'pgV1:>ӛlxE7׆;{fCw,‹IR)̳$7/+.0^͍̂jYjC}S4H6&<9HZzXH$ZO^oIX/&1rO^y1"LaqfXV){Krt@3[x |fϚml~4:LڙYQgɏ~}PB[xKP؃ tOan^#"_&&@{u6;_)!P܂I<9g\fH-~ْ{Q;vQ;٨=nƬLHcҼyF'3@pI>~YM)>G@ ߎP&+N2U/ vPi F'qZ}gɖ}x̀~S " qdV&K' r%U`w'&%GEYCP I oF߽<Oa屪l}[QwN2ݑ?pTJ!I͵yvқ gJ`{]PpN Ahs귽?/MJ.i"{vXR007PV_rm#]g&ׯ),JJL|%ڲknp3Q6YVԺ؆v+|`51ⷐ m($5O`^`&9>y9 c 'lteTHhe͗r ('KJ~2G7rT=އ儯/=Mwnp--:*Iz\2089)Eg:yI-z"8u}>գcdxo?[R(.RFKľsz}gw4.# =\ĕ#Z]O'GO T|/$I8A|l]DZg܋~,i#`GS,l cQ?XWH *~cF2='5w| /]?]x6}0O(K0u9~Hhģi["zBV% 0 ,/S'o -Lb R}ĞDF1֊-ah]H{&qCDUr2h1omʊ+KZF(Z4<5[~NN51;c |Rԋ֔H=T[,5蔁_ҁsRė*?:c޹HLbU0X9i"PyOnp >h%1N@kݗ_IgN0鴞 0r&-e 6q(DiGFFkCۯ(ݑ^۫eOuU[Ήy:t&Sn/ ~#jL`?&c -2zAʌ9p%¸4 HA0 =*dJ=^}/W}gBQ[fWfO-k>^w1?JwMwkMNĎ_d)h 4>[| VEb,H%Ÿ5+O19Z#\)3.;`tX U^#!y5=F'hO:x&A:qڂ)I)J//8FZdQi$p,#ϛD7(egX u§EIZX[qAFH=f]j6^l38SJf`w`~N~:|ni-Q3H?L,Dz r%E&1mʬI>f: USr1U hJLUd]7vgl uM`n^pP vYtY]nyd(Ieܽ)U;\ |1_ nW oƔ*ey:KZB+`)^[StfZׁk3rPpk6fR妷8,N@ԉV0@h7B@T< !t{1e(phML/$~9dȠOÙ^BX%z]:˙6_ 3=}Rx0\d*.ٯkP:T9aayϹ3ED.`'PXU[LT;Yr` .D8~?gO#X5;aT58yichYM*PK_6.D}qIxPy"hms0RK i11c@1-ḗPT3EX@={>?*OF~fy†d6~֕N*~*[D _7jc5 x2IER20(j'ZHM)j$|mY!W ΀,g=VȡbS ILJ= %̶mcGu4rD04~7ԖiҭZL|;-  cKz?k]JϠ'21LS@Mh} >6~b2?K #"^U@Atpn[[6Nr !c3 ɖFAsʫUY33?laO?Q >_`u V\xm,Mgh*G]wHM { s"<"GBmn$Y.nj!ք@] TTX蠨CQbE QƘicxaƈS<}Ǥ,7’Z!ZHdl&ZC2nTƸ!< [;ER E| w`veѴ\u'{2H/-邬M>VCU0N} )!5O $lV]19RcգN N:`e#aA&iJ׬#Y1T3,/={*k^nLe)҄)p2mزlSv/p|BUjnf Xwx~v̈\s$0FlS ,fpT)JԜkNk_%qYYELϥ!}c3&>_K1p\Y9&@K! xE@IHPa[,{Ff{"+G熼׆$?.my %;J>5{eJw+R_nz퀘ï8z{ֱK8# ]]V#o]hL mo-4<@7hšʡLaC彼;=ޅXrxYCC ܂a䒃+Xt$ (׹0jɽi tق/gRU %Mn_EdZh\ER(l6Ѳ-Sw3J)#t2Nwv񝲆k'9 @W1zmo^ѦG2ؤQޔ?_:O#r oJJc{JWXVK;x@g{5mO1}4cy> ,e|0AЕRqb_0ۀ@[ \/W,jsCB <zkahYj#q)q2Nc$nx20QHM﫬O]vvfzt4c|ؖHQb}~ؘۅ3 \6Yvf4JY M?fkn5@e`{<$ITrJYhRjH<6 .bTw@K}87;̃L~zo8:Rطg 5{ DҌVAGWt}-XꕄbjӞ v"\k2gAn5}~ c^̱>4,e TlV&mocl0Z2lt6L,f0%k4'f_srrT w^;s"8^uZ3D7䎁MuL 7voO"BO*{ ݾZg3EHbWZRRM}Ƕ `twp. )tӻnp'l5d%F\MZw\XG Tbѳ$5Uצt[shqF)ۧf]%8-е`p;c:]g \-Cxlrk"Lő NM̞GFS7ZZ'p#DyԷB)~νƘ7 ޲RjН"yۧ\Tc{ME1OrN>HU?ەY=1S DIQH;"rmBEՋ bB@Iл0 U'|K.11)e㌃r=]rDrC7%Bl\B28.KVX,Yc8j@ 78;60[Ԫ#:D̆}pџpf%2N.UU=/v#i:']q!]ԑ7w3fq͏ܥ4@#),ɳvJ[f?a# 6,U)"+jN39qTsܸ;ZGKŸq`L`)8w^qf-:qzf0~מ{ڗ 7(%`EJ,򒮺qG/[[w -9$gcu jH2E ?oHFI*>O=e1xvϊmb&>25bW͸FIs8ۨ>0/2ހΥFP\D55~AgfOvzv[~)$2{ˆ(. ?r/X !e^O3Бp)fw-bLbN2m?)xJs=e~_E/X@G:>IWmVxhQ#Ss!9/?AK??!b*w|L.@~tD>EKH{:X2\r)0?3c1 sɡfWM^Lo,% > ?Ȣ\[q#k.얋NP#LY :R`y44g[.e>>N+l_VvuY\;h !(3޻ ax#$!Ψ>]6H|YTQCG#U/Op#*n gpH WCbYYyg}aL{=ZBhm̔3=΁GrcHlg> %~P> )6{@ [`G{$[]Cl{ŹYM򂈄m#ܛ2zMc:̈ ^Tf=dc)7Rqo`T#ʊva&#.E9B&?%HԨ?|0d7Wf+ 4&q;-5ZbģʑkWW~k-ДM_LvCĽPjNl%ߚlCjhƋA23y$5{|P}m)qoi'fU5zuWXwv3H}̳=**L'5Kr6<Bǃ&NHbDSUc?9+&ĥ\e04i|'q4 zD J-qA apxjmh9*p"fv XK83BϦ4ĊJCob:\x֚0(USSV9rO,h QwP<].6FV)M|%w^"(CIVPl4O%oJ5ƑQO~;vsxXi[cmAa[in6KEvwI̊<E9In\!k=?;v&*^7i.)T ̻Avym8 1yu{f=Tޥ冯5'x~M.fmM:!ND=FkI|J餲z5 zidF]G;^9ǖNY־Q"t40P>wrNƽP͊ɪ%fnl&dr(JԑY>LqH.`4>8:oa4.-wOkZ+7Vsކw˾X({^QS9duSqVޓJekW1ַcg2{仫<B.jsB=t?ߎy|2)?gFz`J!jj`DȑzѥpO1y YPx8Tdȕ2r^P;`n$Hj 6gG7`-8 Gaduz#OwO.בKLM|Lm[*AM{!\`z(mQ^KF;vz7&4;;%~Y@( :IѐAr ,7"%h iЭq98٧2t6G|=Q6UkƗvg:֏k-T #~12dvY0^K3XӃݴFBk 2I%}~9ݱӴ&b8 4Uyvs\@`;;;I3}=rjPCf%'4@ўmwgZ|bAs b5.خFN$0@RqB Z%DZԟk͗Nn3$wA %< [c^9dPFƵX >ĠuԀWq3e7P`m cRMc;0^Sf)gR#/F*f6Qg AѮ`5GB^BJH4?2%b&0ܚłEA0Lt^/X>eگ(H0^Fڢ?TP8ۑJ6s" $5/":.2@k2$X|+J_#usL{W;d§e훗v?/ ޏ(k<^MhtYyXP܏5ʃ:;xХ p[9'`hqSrXKVj `_WʞKaS6wRNvKoZ|dPʘc46WFQNJK- !UQ| ׄ?7ĚVv:[?2N4$| s-8wjv1#J=5JT+yqEn~DNDȓE2DIHt.x&hixRt], .m}`+ ~Zfox'hNp1"e,?0†5p!Uw9Z"pgaMS#d[.xG{[@+87ݹ>Mw(Alcl 湂X q^%pnݫ;'%-jLAKeeB8|0aCR,s[Eu(Ylk`cM;X%'qh-9 &t\S?)Q,?7,cCy;H"Y;Sk`*GĥeUa."oXUGF܏.MTwC{,r6"; ӵB tTݠsTmo'&k&n>bX3P5nv9gm^t')6(ʿ/AF޴2gutsI*e˯JHd@RÞ-%I]Q a~d +y#4_,ydHc {, : h :(o^4%[:ELXʊLvUW/J BeZaqٮςq\rNe̒ңڋBE\X+ XNߺ b} h4m|e++X?Z7AŵW8$]C]u)c챲{vPOdX~SJlj:*r q/(~vo8 ? yb/r?$GϒckIۿ1oԟdoX3*xJ} N0A7_+4 e8ՖY8]gg04m&f Wj%I7'M YrPj"zI\gU6.o43=QnSl]8'8Dh:.mԳOY‡"8:{F'[Y8 K>~3m^~zyOP+X2A;מN+W`x52ڛfKyO5HB:B\ KY8D2=:7 y.tMd[|E[*Ӑ `~b6򎮖o>ḏJc {OHTGtW^|6JDEs_Ÿ8{T0+~A@dD5ETl=4B%q8ے3V78*{"/Y\ʙ65oְGFܫDZ"׮\C3XUb84Zݓ~ܡ!`=ZTTs+ac^jR5.ⱝ+^h޾) tS#O&1=hۼ(vL"O[eŃHKO>7j9GCXA?#P+_@'0Jlg;R.ݗ=Oԋ~:0DaZ&#J{TQHQFl#4}vgj_ p`yty3H'(t ٲwd">^;n`0d O3//b 'L=J~Igk!L(r2m|[gJ2ɀӊzpo2-$9[lGWT=pYHHj AG󧼂NL^=׌xlL#beE-Xm7ĿEI".,O) u!UD){_v wCƏ{NT-NՈbu)qFa^ہ5_,Ӛ}e, =ܼso^zK@+4}˂ Oe%Ӳα$()~ٳ##=Ne(WxxVKhVhA{mBf4`3  Mb9*Bfc#^l>2'_@)sdiоzдhb_\Dq RQEPB|6dWaXvvң'@f~߁ѭ'UczGd5]$q ;k!4rQ^}j>j/EX ލlLn=Gq& 7dϠ]C艈@L˷gv†_x+ AKIf5l?E[OqO K7ib-8*jV3씀OX !;_,i/TtP'DA,j›Buy8 y /Tpjݵ3HTuZies+*]ΔY̲cő nK8 S3wKz] =VW5 jrL!4̫njUW/N%@,eu3 @cwm J<ݞihM*90g^3M4 n )ctpV٧04t,aIf@"7g"#dDiֽշ#R(]>EPYY(iotāW"{*,ڰO+e]rFγ^f|"׻f&q[ y[VrC6]E8yS5CC~E]C)>6[ cD#:4Ykauתs@m\vps|_Gj$b A$?):j[QG#@c%'P @٢7saئkx;mgPEMt +G1X(+ss0x"KqUw@m)"~^s~ Da-׼Q4uH7;M{2a}qHI! X;3HുY/1sBFL3B!*t@8fm*pesM²nq鷱Q~ i& >&457"1ĺ^R*lr?|=(ME 5cBXE$Sρͻ6{Gb-7\1Wƚ,u^ˈ)/<\ ]cj3:i`絻JՁi[\8N<໸ߴeDy=:;9#s$_^R.pp(vK+EzTd.z%-c!6Ǥ)'& G RnjU5e)K%Ui3i\"O1bW0_PgzSeFi#}CCrH(Ts*wFvv"}=CG c G$djfUl0cu-lG!=L VQ/53HbτN{I" [mUh#W#MFªБقh[S@,Wʷa(g<0Ø ZNB_P揯BtoXS0ͮT/kr.I{9W]ፔ{oem4_\jЌM) b{adEM 1!#ZY?aCH9BYW+u3]nmNuWnF`1ɵC"gij|MH,[OKT{̺>Yͅp ) z?APi{zh2l% g~?il1 ݑTT#kG%4 ǂL;+mu '`OͰo##oJX"HI=H"l60`4(TJ=Hi_$uӡ؝ʐ%fW$&HENi r?TFe޷xO- ~-%061#jY;He%#z*n6cTr%՗1v#=bzc7JxZLWh)ƟXK$Ǝ=cզstQ:lAFSEVhLr!;WJ 91U5|f#ohOtAqn=݊n| m|8^ 4zJ3B4FKQf+X 9>zWoW)E4fZL?]ﰗp7[M`Ew{=d\Ղ*T@^v39Dsat&JV6em u;)-7%dD?0"/i.9O֚bl)f l쟮PIX7,d| hik{p|j1<) \kz53b' OF۰eqۂ~oRT #L M@ږ׀0J:(7O5'7o[q I]Y3 _m<;F)zd;ޟk18Ȥ\:HX$Ðsds taf;S{=wvdY>"ޤČLbzKK/n;t e%'4S,ɣ~pӍAoAeGm8 K>%x/?eͲUlZEZw7 5A;,b3k_`vxثRe }nwx$/bmOV@Z1c"nCvhu>ƳMvsoe Uznި2{C>\ib5mݚ_QqU=:BahF-sǕI$X`WYUmrj[בc˭W 1MLQK񳏺!i"`#H ayW)4}"\v{/OO4!Q4 ^)݅;;bvlD5{l`mɏ&ɏtkrZ'K?^ 7i^f8;l Ȧch҆^ulfˆmW'e*LG鑃}?Ctpqg7xj[#>^>n [ JP)Οa|'VL!3j6 A< v^w! ה-7rW?ϭ>Nj$K {LLk6NLw\qyG nS` wewWh;` #CZ rYH?/[:4IHpns9g# >]Ted.U Nj?UԈm0m-͊ɕԷג= ԬxAU yZ:!{8J:B+^6y`Iu>|& {^xE:>X3<ѻZ}Y 5 [5p}N&y@<C+u`Ɋ=s*G0 V]M#ޚ}\Dz b^pH X5l3Od#ݩg/ж؆DTcTca=<@uaocDbo+Rqd ke!~!2Vϛk IƁ-ލ0RQic&JSFyER)VD-{Noɴ@VxSM\3wKfF\G0p?e5_~.lϏH6 ?-eWc |m/KG13R9C M~_n,̸m{;rmxUB_ճؾȿĊNZ%d%usx"!4{pTeU)g=RIE Z'U)YFJRA T-ی| zLmL,Kq+7# Mz9" Pdh?"JBD?"N"jRmz5kR΂/$VѺA)<(/-61q¨!16 shX;]"IձGt9gf& 5#5 &%N#;ڱd4@gGt$tvfF&錚vqhs(, l[Dsߌb8U갉Ŏ ,^]fnȵ"[ՠ-1&X.QdF,vvD%;N YL,.e$җ O5MiKn9C49 j9yZTZ5ƁLEgFػB=(GU%r![[R;W |~QWD* 8r?$,}T$?90.((;8kbwg= Bov!+FG={&f0X*󂼦lV۬fK[0ِK "=q(OlIXި3yUv+MSdT* ~-& i'L?( rtZ8_D^PF)?bO Cƕz*/ףɢ{ǿ A30S<^Z }VdwqMGtYUtjhT=O1)H3T0I]c 8Øz v&@蔩b8Wx'R]hw4 ?aDR&L!5xafCɽKvXm"ľ0;}dKJ=:T@K=[Qa1ZХ'fe: AeGRM׼=*tԾ8I½?C1 (K+@wKa57;݃ħtJc3 ψV3:evܘ~ȵ,y&4&9QA\  str7O&&Cs"1P_nۨ@q a>;L!jŚ.OHЍzpM'#DpuTX6zXcX#qjʄh) W3PZ) B0`] HiIGN$8P6W?uAVQiH- %4?h,NZ<-&ԜL8)=|c*Ҍ@gV&[aϒC-HϙB JS>h=}рmu_'amK<`ȡyߟ?C!0\'6r_p T~uR]p9oX?=I͛k iIO^DwI"c@);TU6Tq~F5 U[d/R23ڸINHEZh 18i1<3ӋpJO*Tꌬ(0ȺtEC+Bo~|{fhI.β\~pH0~ͻ*ŪbtdDB]zE4̟iG)Ъ`΅к^q'BuV[]zoCdLNǭ+unbP䶺0FyClk{xwK ^~`q^#$&9BM= A7fxڞ f+l~Yܝ G=/'^$Oy̧ WyOj+ @6za ^89骣k i N#Oe7$A#f=};8CґPh8s\7:\8㦞L Ϧ5h1gT#d/8%-_!0DJlrʾdOua9-_j4nlfiTP֙m;V:4\Yg=a.Fǽ`ɑǩx`pt6@3ie;1jOFKOL? m q&!x⒐Nf1 LfO [9_/V#6OD8r=e(|P^HWQE̻&Jhcwc?v4R e Qb!ҽ?Ec@a"%1 3=R+LcgL-@E+oGteFbt;i${]Dyi@d eh7`VW@NrzUed)A:!kh$\peʃ +VWWj9S,waYˮO"Զoo63zuҎOg,PN1ܱƶPk p]/jq%(klgDϯPJ-J߉XX$&IPIrH&N7gr<lM=Y-`9t`A8[Sd|*E۷#eT CM!hJi7Ƽ)oG/}9|y&4)0эF׸b+sl$'?iFK!D/(y߰Ѻ!\3ss$J)ҁ)E_!czG$(\'{[79Ji%=O! ^ S.ǍqĖZ*JcDEufVUӫBQ h%l?6lhv#oAfޓ%&9!2pB⯅YFC`x7Q~_Z`PΈ}ᅴ*8+O>![RN8?0p`1O٬in󄗪C'5"#rDI`F@+n +.>ٙscolEЗ,tDž)5&RQxl;/Y)Eˬz/|7n}2 3 ?;fS@^p?Uo\(,kI= N蝺Np3A]5'9WWO@*'j'r+4o4L89ƣrW;e;^x|xO"i zٰ1ai?{1/G2d,t#($ =BPd ׍:_bE:{Z%4Gɹnbs;(ݐ0EeCyL?lj/ 22$O_ [N`,3rIB/MIh:8G"B`Ń$Wy8mAAPgQf2x@݄oJL ~0XB~H -q]fbdXGx.rs?-$ӐO慺F#c#6س|GFhٸxpcN1awU56y${`Mubn_ Wk'n8b-ʀ?!$%wt%[_5pkwYdէi)/ɾd V԰XLT@֝T*4q9\zA;%{g@8*B~Z;`yI/Vlqùs@Y&ex kgSΐm%|<dnݓOmODGܢ|G3s<}!{}Y&ay~1mpx i TtuvS'E uauyhsa3B?|ޤph(ϏD Rf(Z>S{~Oc6Ҷ>_Ld'M.(I+1^;CA- $sESC2EO6%XW|܆ =UNg(Z5F ֚K!.r1sSc;禟x\%(֗Is^e V8 OɥSR2 5ʮ[~[5  ?;H: ՖS\b!+ʽR}tеctGw :Ta=alN(_oFM^DJt,dlE qMh e`Se]>>5lv/p &_kBHŐ2?=[ ǍէҀJ!e%(n&CN̼~& 3K„ / ,P 8ԙ0pOG[ yC\I%ꙏa^dG!]~淛'NZTwf%skme[Xw}B:76d CP}U1+jc^ 1҅`ӫ_tخ b{5 pD|i Ӯ}&w[uݞ /L&Z>|a+8ɷ6jLQM$tupbKE&U70 wc[s]d?v?:X.O0FUFbgԎ$U\>0߶͕B߸;ޥuQ$)k*)CGe llmDgI!斛:TEw&EC8jMBӛW܍wDSU.LA%6 _)gļ BZtSϿhI4 QT~>]}<k7WԞWּ#j7@H+ '8j16^VֆրubiIe@kq^Kgf[7OzZ佞^QqoL*rmpPVSu4<6x&K!03o&cN[0JOQ^a~*ݝ.},;OUgo1&7Nǝ2VdUr.Avj3>|חߤ9-n5|9svGPFvb͐^\9#@&#(73I6j"k}11Z_EwՅSF'Z>⳥;GŒ1xvVlxȁ_2zdTwG|&%z& @ȠEm3Y$Gʅ/l;رWbC5V;֧Il +l]H[+RyZ˽r&Wۡ%ޔ)۳ChRx0%-/.`_'4A#91*)gb,6̯V%YN2wklЕ`Gmϼ͊֔DMn|l"&H4D еN=Áa9DU`M 2{,FO0v'Wƨ>2pB9ҪEķuyj1beCc0Wf ǟ,u|a_|}V }$AYyNossg{)c}s=5VK:1_`Ay[ܯH/ m%3+ ۿF^8SgJoc]АauMdsԚZ/muPa!(Y);Mߝ~(R8;$$PwFmmw}0݄6>:F`ƃ(D_а&6%-Uښ\nElQʼu)pO2!}!ţ~vgծY4=Ù^Y{ %`@H{H`5/s{5<BBkEas@ O3=[DvD?RUi iy v R a5襍,v1 DcJ^1~t X\oC_l9fNdGP6ʐG=)rcͬZ˯˲~+ WfA.Hy1t. i- 'pn+Lm:rHӄwj*[♂G$sbH#FQM"նk'=`T6m-JN=Yi#wCF4"Y!m3IP!e6ܭs(Ӵ)PbXDjx9 a?Lٍc\[TS|;oT6.AXؑt~3q)wJZK=@MMYN5 PJIv E`IM]&fHYگN֪+ ʩH?UA~d%o"cBV Bk.Pvt1@@B,}l$q\Zq:0РۢGޟ/}{7|BEr5R!o!EPgUsqSe%Qg~$]eƂ)z31z:AxgM~0d.A׮Pi1hiVR-m R.-t7dSa8yZBb˟1-O)!b_);Q7Q FMb(_^vPg1۴"F:jX96) R@%VY*ae.E^zA=A.uy9HI>"־9Dc_L.ԕ+[B1/!7T6HLMOi\q/sx,fAvapX3f&GdFJ[HaE~::>0ҀLug+(̞D7ɑǡҁElO2BIyP[?ZiՆ֚W,<#ޯ-iD%'?@х 7ln& @*u֩+K+IAT "v`7֞EECSg-seKP0Y9YalVπuz,ݶi `vo(?, YT !e$ rF$u}I攒;D㜂8x`"U`d3&5q+-*^tzM2 Lcԇpsڞ:,Sr#'["4yjF^ J^/rx@/ Vohjnʗ7\6p!3*9R\n=`hY@\K&{\tFN(C19jv1,y BVJ^pIoUMuחE khs4R+ؙip7t=)7yq48^׍ȗDW`ޜf_Lk%1@,s#?X`8j' C]MޘUXz]Q!j ZC ,nIUA?R&.*Ry@ d a7)]5M4;KYY[8)4x5fJzݞd ir⡋&]A V3"^`ȎJe Q }+;%Yu&ʖGcQ'5o\E` kI% έZhJ=%^t*/\ .>`X7zp.8F;ؗv Xx$uRCC9m|/d"c؊>u:㡱8 9ac{LD>0%'H2|oO1l|&]̅>`^]ZKJbj(k'}>eK0 `0K&M-#x"71yRd'yWyP=Bz2.XKZƈJ7iSjcqr0}t"Cf`OCV~q4u ^"rw&$i~&ח:D;p?D^Lp_ZzCTYCd0"ao`0~zͭ-.~,ϗa5Ec8"])k.R1ram2P*A1MjmOZQ~:/8|-P(uPX Q4h%AM>\Y4`XF%vH-`9A!,v|4Y3ZaGq,*Y[~mBN9%|mjV~,W>]200:ĦSUqx#|.S2J'D, 03p?WXSqtg${7dm5e6a~r]QE,f'SJл? -$,wQv0gofz*/"WYZM }-MĆ:.|*6Ιl֢|ᎋSᰟ,1ڙ+[yK +r$f/H~s^SMYvٌuUزP$ViO?GJ:‡v c3Jd&OQЮ\L+ꮦ~5nxRDK[,%TsDìrkTl[  vUA*HB3fdZ.5ticWխ#ա]2;w6(Xc!io5 $>G.hVr>laN9j+AŪ7ETYV>[1#[\]qwTXh1>p:%ԔyVN@R~!r{".H({(X)odIȆ5VTa}Y{u_ynPI7N5{xk0?4_"V;OQYY^=īZ_]( d} RK9 AdFx6̲k{yЌfx)&ůz:#Z >miyݗbuu/|^mcYjt*YcL8^ܻ0'm=MmZr6t!u6U,,\Oc/]:V-2x~3~R&*;Lb@D哽jwbi@4&P.z5*eڶ/_})Dqu'U >3f$ɫT$Z-D6SQr- G@2pl_: 5<@pibQnfqE.5bɌ?˚KNU;$˻Wvfm01_,~t?Y91n(h s _< >-es*iSo{UބLRkWT^svc+3q~FR0"w=:Gp..ONn{ KE-Hc=Jq6/kgD IA]9doYNRQS)&r"@MTVeuo/Y`ݎ϶,4n/MܴH4`})ɸ`<}+lT ě9wOMAYE퇾Nvp)fTL; Nq'2Elc g\@U)ƴ|gr8ٵKUR]hP_ 6e"WJm$ZWe 2 M&.nfg\7 t 7滹ĉCSѠ$ S;PƁOU gsF|U)=ojO+,tV!-hG|(&N~5Q̄&nDΨCyD%47ٛ1LYadEAQx4õ.Íj~d!vR':iMLwݑh:鉂 ?"g[w dNoP@ҸX^g-r t%SyѸ[nDpB<\K6kZ[ۚ$vvcdϻi!Kbm /?@H;lAq'&ǂ(aJĖLJ'Y*7`/s4 $֦CĈyUZEcjW*&zS3v?R5;vuq8Ϳqb0:A@L<̨`nh2(J&sCKS놁<AsOz@q?(-ǵetK#}ZY|Fk4AϨ2w9anT߻A ;3‘VnR -V1+U#s8AC4!c[kјȉ+H*T2dM|gKgo)smJ}0*EHk/9O[&&? 1dKgqsL"JKf\G1'/r!9c}ߔ҆?>zS FGL)3x O(04dU%],pn>*B֮kq?"sfJ\ͬuގoHrXˌx괇b>.-Oѭ i!cp0P uHSH^Ko0]`s/W$:mKĭK3lhۦ6ݰaBmD_ej`9.>d+1h]Ւ/ō詊7,]pa|)vJ 6GЀKkTv!(e!Cʰ,OϢLsf0p s(4d&N zPC*$,m@{M~|R;xg~Ôҳljvcܟ.2[Ƀf% ǩo#EM[U2q@6Wu[4Pz_r2ZJԎ W`נ?K1HڀO؞-]O^$_̢4+R8Uk4>亃 pO_؋ўlosœ* ʇ phl@<+'J*6QPsE^&LSV8o^VʃrL΀oRVv33v:?t yNpBI=̨;Ge, $gqZ|P8ơR!qˠK8idJbg'ܲbMd5qTaYr2/^% y^EzMj]Wrd>+f ̪ɚ׆VһjQ4;ϲK+tHU7h8{E#wv+侻Rp͙#RfmksN*=! tOv'S D~6oEdTҪ֯mj3nRh%TUtp)<чfܱ ӵI$nB[o]B<9dQ:݀r1߷-|GozrJĊ54̰҄XCR5ڛQ&mN=w6oJtsKS*la5%$-Jβogr?OB,Vǔ9ClƂ2#Av_sjSt9Au I -й;~HkVmIk"oΈ k1s ʊ𺙘iH[֥%1Mrbpmܣ)-MDt,$t<.P $:gĠwOa e:O#Wy8VZ:z P]Bߥ7 oKM33B#yiiz` {l2Hk {əXKynQgTP1YG&p*l` ܋pzvߍnMeKSUr,0eˇNU(yi3Y#P1/m )9t^,@jH݌ &oe0 o \UHᦪ:( 7+ >! 4u\u)z2\տ ya2ՑmB$c.eք˲OZc# ΨT e$ k mWwN-wՂ4I9+ޯe!fAi;QS#\N^}LܴWw445?'C+nعלW< E*C~}Fʟv"* IuHC=7~WFp{w߉L?;(&!wtc}SC$Xc)Ⱥ7ɪG;/O:݋.B%Sy 2 ĈN@4$ ő¤N^L,sRn L@-S<&n$v\VcV dV\#"UX- "hmZ1`TdvRְ6֦ * &@w`7^L2)bCybQ3D&kl#8=q|i:D2 J3.Fυ\}70"D7<)>?-( Q{}j0>!XT1 XG‰Jѳw JA02%ð_T鄑G2X83df^} 3CŒM[\IXYNK+,(0 %HsMI. ?zN70Slnitu[Y^+yw9J ,<%4ph5KZK㔩PݺWϱ9^*Ԙߎ'AkFj!' _fTy&m]s)u]\2u So]^AZ23vmyHGѥnL2aB:#zAIa>RNFN$͜";tw%Fr(llpbHl^z)_,F3r^훽AY) em0 הȟ>LrN+'x{ŭ7WgaQjls#ȗ4Jq_ca9D \]f6|qlu{/BQ. K/|xϕpwV򮊧|+8W*84 _G4.INwGptJn-BDl~@^i 90xpb"1 nW!dio|(jNܦ9hֺ 9-t+ mrIՙDH@F;T99x1c`!3Q+DE$#Źޟ!=VֹsR&L]?C=iiYJ:8j y!vv1I:V]D<-S ;bR$W9XQgIB 7. qnFeձgKh?K֤\`t^ڑ.0/!CD0#f%^zQyh~EUپT7 *:(%LL`6"%#;oFNHցG^IPp^׶ =AE7A)i!l`dK}/tB*DY6 φ5z+8$ܗK?rm[0Q kG[=[r!qBƢ>pp{}5pc$ ]5r7'% $w4f>5膁#Ei/( \0|{ ݍgN) 02Ijgz貢2ڃGj`rFgJ=صbZC,&1 Yx QɊR${.)#GXS<6D\B㠸ƭ3J괉AbQ%mG~t#׾ ٍz+c#'zmP=f×,nW,5F"5V:[>Yhd.Í"kf TJ̪lidJPMא0*ٯ&u֎r{*n!q` k\@Y n>2!:|/%a gRE3N'I6=݄1vɘT;?Wz Zk,sUyu S%Qo2! odV2AiT'&Q+p"ByFF JA5w`[ =OAU ̐S]g t  㰖AtoLb=-Z4]гc7m~j:[>C̄`Rb)IΑ7X3zYugUhti6.l2}6ݩ~1XLc\+'K.u@R/ ]jL tvf$?00Mi \RKy|_Ȯ P\KjX'Ti(l$wAA&\B8Q&E0RVǠeE5#x6Vr]ӌ" '\e@Cg{E2k@neM 283#5нop3( G~=Ċнd'QEuRA|U魳 D\&·Kyľr^}vBM}W'gNCRʙeM"pd8_TV~[22i} wK]\j D? Wߪ6^qH[rzZ獶cC*H+=Yqy=zubDY' ׻)i 9$o!X[qrQw;`tأ$cz5CwRXٱ,Y*ͥ1T%2BkC^Evdt #޾|"bO*EVS}UQ6W-hlWۺwD6  g|5+3t[ШKU~N;OHX ua&mXPءz3}|uuΕ]0/yDb KoqE]/LcZ-g|r c,$WNzWil o_l鮯_U'@+ }bbƣoLS-̩6TWaiV;VF,,u_Ւ)2T$쫵S8r6<=tx;'Y*s.fj]`1,\,:wp#XiU),c 2kn7xs]F!,a`BQUz_W;M+ģ/˰O*<S>X&k8 RZũ.*g_2/~^>_ z}6 cYe#aU4? HjAz2Z4ZQ:2dyBI*󅇬vtZ5B#XCO`HՁʼn|mћe? ,'W/~6We 5 ta!@O*p*:91hgŎ35:P vWOWaϤ#-z2E~xvT!!yǘ`cC\43 l2#|%4zPQKBƗxB,oT.y2 a&N8Es<)1FM_3[ͦH@bO + J57ST9;*HB>š 2$ O|{ ڮ?q5ZvnX[W%q6,#KDɹl\9Ib& HBz`ى|}NJlz'_Ib: zUXk,Ǵ'퉡-4 P9n]x( ɺ wH- 0~]V6q"χ|أ!.l' 03^d&6bo/(84EgUݲ C/+dvK1_-4ߠvRdn6f^?ol*Nѭnw+jŖ̿nzd,*Dkĝ;r;_!֪i ߢ9R/V>AA_|&7,\(nH&8T;pƒߊJ+Cb(ٯ%D" {4rft,+d3͗55F?Ф@s?rp ;bPVLoZ<:xfI W̏hޭll=KR{aۛ%9Pcg@{B"Q7貙c\ićan=q3?E>H1uLl'$V XD= ^J0 H1UРc:_]`L~=xgeUhƊFUڋ1>}*v\R)!w֏pi3$>ge[]uT.axڜ7Vs/||;rF%@A)|۔&ɔ?k@jy|a!I:Awd9G p+"a®EYSZ Xyڞl\q36,\Plp 6HK7y4@jXcm)L]&&ﶎ,9d9D%""{t *2L6;-88 AtJw%OttX44F^cUYrQuڧʈiQ<d$ppQ́O?bVmlqQ|VV=-A6$L!se 3DfWi 539 Z‰sUljG}xVE}X&hPI=؁-tC{b=;C  !'oc_Щ_+,5|^Y5ZY_Z#QM% &Mvml'Pl e2ٯ P`#^ab`e}d Y%N?,2[HM8}fl6gLaLz<^Y73ez4D@$| %L L``ulb;LjzFҜمkqZvw3J@;I3\/Hw5tw.ԝtMotk;i ޱ)0`8cecIJAjl̛>J!| WfE|hP!~kx$́Mn+r٥-ӄkkbxtTȐ!w(RHoDFsȊr )ɡ?04rZ1mZmFxq .0c@.4yZ ѡG̞nWbŎܔC+3I$QWwmy$sMS۔~1QFz ۿZŠKӡBq= 9٭HX}~BK$tl"1?ܜ!|2Zp܌lRl/ʍ4w'FثlՇhV_`΄ L5D&4?5` Tl@*kwRF.ل-`8 XuVaAGd.u{{ϸ+8!'+H*5?6y(.L]JI\b궨fm;v$8] ٣gXzULMn0;`ĕ4T@o T3>˥AC]`&3 %9v-5hӑtUY*k6Vukxn:gCVR4_ cidkn8ZZ5ܖΊ-3GK5F( {ReYBMlK m؈~1)6v`8xwCo1rOV)i!p#)Tq0ZJlm6z3q[c т*_IKx1s<㪀OjR7vUbh&ңDn6lBA)KM@m<9ӏ.c>7 Tt>nu/GYkV༱;`Ok9ݧ6[WE`o$+Q>oԔPS =6 IӹPZwaL(ƶtKQy'2iPSk*<ˌwuΗK?$h[#W|t[Q&KU~2I(&tx "2}B(I==wܯ4(2tM$YLrL(G#?Vskh$T-ÌqGH\>wƟ9$oM'FlI{5#7`OjᑿŒ9uˤhlZmn,$W|SyʩK1ufL~ fəhNXo^Dp9ɪՄ<C !P5Q9fX~RUX *! oeJO}R U~j:.I5@&Z.1^S^OܽP~0-\rK%gۀJRdġJ,Ey`m(XmRg7?}_qDf!a[lkV1d0&V^ȐO]DI;`;cŔ6s):L 6@pS[3ޛN%c;\Y/=/;zYis6s; ?X+em 5;Nn:(gdNxvGZ-ٶsvV'J!"0} [QH5}$y31sazr@n(B uk,壄mD1!G׏Ü(xL[ځi3OO|JcYWa8fK3*ZFb)L1%5Ҡ=dIWǖdllu =.xN[)4_dQtNJތk;I%Ɇ{s*qv ;2XtUkn4**KP1zm$< !^f808C?:Tz-*'9_i\?E '_d3f|{ a&4n͙QѭrM7J~L0$TTPeCƐdb$5 ^oHuίF&Nlcy9+!wGmbBufr=$÷'(5Pj+v[0oD{#318! `'IYȖ6^yj|Ղ練S'yQzXgдfRk^%5C..vEJ!Yq}Q v=T GPWzQ`mpLz/%Owr²vW_}f\e\=u࡭D2' 5)0P OT[ .P 8c@˲9ܟ#BZ5nѪjJm7`DFlȟ##;,Lܶ c6Ml/6S$ S鋄6)yHyeBE uP TNN@2?βDVym|`1U[Î͖ﱔKq8@Uؑf,djyGiXn=~7-(E$=Ccy1ְ4zNDՎgdun };`1nA4쉺ֈU '@yU"=x p38ImAnO.8[-}Y)i4赀J:/;q_ Uf2S[^`qv2`*$[-җ!=T# lѾX^sk!:=6"tJ g ZW>3_WO9oXAk3? yC+vitX,lhI2ZKaƕ=}5EgJJsT\H Јs7Y"cxyth;ҁWdX3ÔB kF#T 'L=UU\<"@d^ZLlJer԰^n]-SicR轿?y+Bz \ҡKD,I(g{ *w[jpd{6-y=Գb9MbpUzWnAbлIl^6x@O+ }~W4ؙ:Jٕe4xs]tLYGt~l7Ϳl&pK&yNr.NDcM|Qm77z<_aInΪajraG!S)Xi& '?x*/ {|D垵i7P EH wK0թYlOSICϺs=D Eih÷&AA)#RoZ`>5L0h6IXCCsߚu ]&eBu@*tUWM(1{6a SQgҮniKĉ?J:_귍̓N q"-)hE)ߋ{Ϝ90#&|PmIDGԻҥq칧0ԩp ,=IJaFs_0TݙM5%B6'DDw54zsP{̡umѡfPa@R,uҵP$Wlu49rhC+OI ~Z;[#Gbn,6~*d{$K&jvIM^0gN\dH}bZW?h;͌VrrJ}ʉ2tEASkʰj8_4BZR_7,6trqn?৘Itǝ;ILP "y2Bxю I,3/3[l mJW3O|ӭxHm]>k%9o vϞ1»#AFiX ݪN?C ̹?ۯHsFAYn4 'g cPjIʎ\ }^?Mޢ.-Z#X ~K\ ŋr%VFҧZXA'^|/ȽQ\#eWRy6jAMd Ng>ѭx'ڜ.O,nZ%DO^GC%R`SB̏Uphu5}@LP&G+4 Yܾ >QZkC;\ftOcS#ؖ}'MΩ'gEervڑ"|k%SP\PhDV'RFK _[&-EÂD6. XGui֞JDG[f)I.+QCo!:a% /@w 2KC4̱Ux8b ޹y)0)W?|z,DV1*r^y wtmM^f'Q&VFZO'K>XqIc/6YR6$}`@O2j\c^&兄L.Ǝ)4'>/c$)#Q>mL㐱9KgͰm(q5d]"Vd({e2&]w%#2J,F_E*(.R N=e#{bV_o oRǑ:t@}I+Xkהzlc / =;h/.1&uWI17a`!m un; -BĦp})Zs+q}PBg<ɽ^kV/2'4xϩs/n3m7bXoɒos<Xx~Ch?XjdU-Y@4j0 epƮ|sTl9Ki &Xpvr [^?txEJ^aXyɑI`D A9JHiE9J_G Za~v5UH FrN8u.ԙ%sO]|G@xC~-ӓ3[Z1TX]5(RfbSi%>taL\\1w?\R9[^9]J YH/\ dsuxdRҙE*mբlTV\_D"RQ vKR9WvL<=Kd>P<5p{6m+ZCzXGy@\}*<|pg0AD\>V|HG9y`wDpDy)Vdqή%w[\ZcI2.eW^qLk_>g>Czm6E8&TFw4$@`\!#tT#.rq,wjg[ׄ?2vZaoz^e$`02vso8 a;Bmh'%кzLmJ"2{Obk!*w'$k;c' Wĩnyjasdq3:+&;IgXT5wuޜ`Q =!5W_] JBYW63_tSÎ7Ie9}|IcMk:&BGxߛe{^jRH9ٯuj7n1MF1YFXwkb_ drdo@9|)CzĆ몔x3&p r3l^+3~U z+a3@"ᵨ.jENOK'9UA+n]*wpZHX?~\h(okitW۪X4RӸ~FLt[@禫qNOP)焋}6Æ}Lk,Io} j5a8ã0 !%N+^/އJA _ǩ 밤c:RF䲞Ҥܢ^,ĕSȵDtKQ7%#(!x#LySWn'Wٹ/Rj U[C |\B 4g0 9Bjbbϼ< D*O{"Ce `IqdU@N|xsW7CkF9w!RGZ>l~ԯnU2Ƣi[ &Zfcg ^d B@,1"RGP(Տd*4o pdmKP{ŭО@ yh'ij( I3sʽh5ajA1=5sdTȅ6PTtK7vJduZTݬdm_;kl%s؝ͱU$},N@f dmz"ٟ5 P;:lIe$s- {棽ҷ`~$*cFinomkѠU0b  #*EgAynܠs[K k!ܗ>7@q0}?t!1'Olw:p/S-U>R@! LP FϛxԀ6pjbV@jxI^*s_-ݙr׍ڮOBf5zG @G`0ZFयw:n"W(' TՉ!&eR|Et6TVqY+BCW/ $ [ey0]OZ qjæ}\6ڃYj}?A@7? v_)sq⥜ 6^ +@h%|m#e^Tu8܊~p#F"[t/M_Π.?AמQ<~IBDTlw(6߹0yʈ.B, vN۲wX#ϔb6bcm|',!**$Jdk+vܞ uB}Ђnm֦–jdnGdZeƤB*' _$=CU)o,6 |ا61 rd)q  &*hy\2Wο|S E qGܤV;M6@bO K͌J>ڹ5gV]wL-),%SO_ uLݵnN$ؗʱSЯJA]X٬bAܰc;kfHgG,Dӻ_wl4da%L0Z5v\ɘ5Sw&Q[V_Vr*긐N3W%GU]Ďl[ga 'o7ͅL #5DY<'B3Bsv U=t"A8wPw2'`ay/Wo_HR8 /)W=]djly1}dȒ`tPqGGnȰib ՗:Xй H ?SK %=.ROh载Po*( G>WG'fBk%T7=n8bH%rb(*2!|/eu_yA#LiTS`0Lfg`2wGJ#j/sE?+泛џRًXVrMj@#%B-!-@_va9F(#wZ/ddʦ斜7rf.3*{Q[ۚ:H̝Y| Y|:vC#our ({f/ֶ⨯b&_D*:٣o$bҕ9ɻAV=Wk~u0AKs]ģ|I3;%u>= ̐t|!ŀS bP SKwkOVp}Łx1U#$ NjED(2ʋ/*q>Ƌ$;b_%uQU'W}Dj߿YQTy#E](h1+s4Rlvt.R)B c*R*PɜfnpӲtB%+TR1,p2&Y;w(gim>{+0cqCYS1h P/@-de_Z%+^]nCƆ+ؒZj$ SW|gOct$ hz_n. mz'0BXT\)!j_'{{ MD¼FUl,I6gBX:CdЭONΛӱ1ķ?<"P1O3 ywo K7Pinڃ vȉ8r KF>6!=M }!,6(u |u{Joj.=kX&p+MYߒG$aw.C[ațTnɳӗ)[VT*l3`׉Sc}OE\8A]X=_$-C{ BGC^\J( z|?S5$x~YmxKt =>vX/QwĽͳvZutٰG;iϮpj?ׂ dhB셤d)G]x}AwyQA[PqW!Kjbz5E8Pe+F8>#U[-Q4RiKC5E][=Tݙ oLҙLE0p$hY:9ֺ= v Bq&/76 g E`V߄ZD?T~R`vl(Sg"L_9+p fvkv#++jcϔ)@8Z%$*2Oh\BV>p\,YܠSdĿ! r%RUHS3K_.p~;1 0p@` ,LuWD(Čި/6%11WeUF$nfccv8G󘫚'3:C 'S>ϗV\d!K$&s Tʿ kzS",t||s(< %\\"֮(5xgA2Ԣ//fBN^,G*`u-URU_@=%Lc/kPǣfC2r#DȧkA"!laWoJkZ 5ʸ +o3 ^\8u!K4ΫCz+zKFڄkAc6-{H$|"L4[XƖF[^=aasz\|"R uf.vZ/>*AB>kh7tbb4WvWP9>ȭG:.׭a>3Hx)O -v&(vUuo̝+SORRIh?Ff\S[ZA e󪊛ke!}gw:vDw l͐ '\N!Nʳnp+Ȯ+Y%#% U 92G'7Q8LDv.9ri/8H^δk](Έ#2qҞJ&3$$?m&#,lAJKq)Ѽ=Fm>2.i^ڲC)w1j' %xlz>xA;~sc pb&vI_@ ?캁_6p @w/&␍__"YHr r?OӒ<tsDc%p+@fa;9!4uN8fYm\.4 7\fyE"M7³d&ۛ-&PI/wGq׹;)eO" ~>$\@IA .唡Y Rsl&3!JyѸ\/=Cra͆84b&P&uR[L7I">uEs#V8hy.v/X6AU 8'Hm5۹_5z]ڔ2̱׹̼' *nG)rBO+L<}F7z0Ϋyh*:RK`E.^/ȾX9z9iymx۪ЛxnaNXA~0։bJ@X54"|͈MdsSSvV^Bd9>12` Eanj`_[npX=;m-$z~2I^Fhe)_`"6^l&wfIsY\O'Ѓ {٫dx ۊ]VU7عT'wXY@=Jojh#Zo@|Š *bs:j0ȮfF%Ӿ ތloO #t,<j]$Er|6H\+;w5.]Z^=$?ۀ22<c+iUNOd1@5y3ǃWDjʑq]2ґN+T1, ٽq]iBӿF_eD/2̾UO4DW`_SAWwOTpXPYؘd!6Wg8/ :cee_?L,aT DL+ ;Ihjc8'OcWǺ8p'״0'uɎss ?+غ+JoPO>ʻ:#?e{mvj?KـHN qit;͙"z؛Ac v L@&,1A@Mm; _>b 81HtqRYh:JbX]lD"Lf׸=NZYT7pP0>*nWhѓWe!-3@KC^;KcJ%=-h(nѩ>{?NKbzFjbd o1*HAEoa) )\\̚l\r |zħ0.I!kȴKCm^` 5хǂt޴K>L2ݲdiiN8v`|ӯO pgٴ& 3Ɩ{(G:J&CɌG n&[鏋WaWhʳYF&-+}deY*Vm,tcQ>X|[ge&=B3 IssO xRsVAqDǣA>H<5ϕ'@6{.tzx"}`xڰ^\[_xVRVuWnLժᚫj_ĂL>!+خ6z>ImMoi!\NOv-uTl#sOGNYIyDj<&5Tq4VdᢀCEfA=9O ={D4+cetT[keʖߕA3@zo\Kk滽_WԐF(~S}jgKә*0 w7u󞫽  63{!Q=;C*=_$[P՘R׺^x0^Do2G=#'P^IdEAW.-&v6J27}yn]q+?WU,*:)nЉ>ux΍}xb:W;&S7t Q (q2ZG^ظ^(kbO zLB+gp>Kw"xvKz %Ȏ[-&d].eߥvw!<{%$A)f0~߷1$5~ݢ1UO#vO\.uSؖ!ĩY"r&&H  >'os a#>--s|cW ˆ~lx,HdF!iM& [j) }i3zeA2ty*ٓ6ksoS{f,ޔImKO,CvB1R+..`U 0L.Ozx0 Oɇ^inΕ)(6X 1̱jHOWкEDć, dX=iʹ^>ۻā] y GKeÆ{H}_Oۆ|wHPHn{곶Ar{J4LsAMGnO=W`4|Ζ#]ۻ9 sm40N];Ezn#tS~NM2(ߡv5=D~02Yʛʒ'^EM5NO\5($+ 9sbkùn-^N&g*ABcPzERƇjwœϴ FVėaa[(c؇'jY ~搤>ߺ.&EE XJix~ՅF;O{j`76/(^B,ͧKhUaz[ -cYiQ99*]y|>A60CfsT c2":!7 ٲEC-kRN6ˮ]c +C ~kL0o?"*3Tx0҈t@@M !mKC"|?:%or O}5VfdF = S_yJ~?Q  VO3A$|Z+>è6XnlUy!r[rL(\Ym bjJbW].@bx<*oVH+@x4ܻy=·X1ն)׮!sӴ$;5|4C&Cy;1GR6d!J&uU ,?D6=#$n`ٙ2D^Qp><{ųxEm^2?{=rlk VNCC2<6N ~&_>K7w-*l~7GRO8xe<wRW=3laVRKW}hPJIhE]z= ƇpO&Ehn,\xD/:d qX6BJ2Od 4yY29<[!wYVeY_os Zkg@1N39Ռl]P>z>MKb{j692/J1p\k\KN;{cP,S@w+<ށfj;M*dp*{:Tk!UaрqWgʷ_)7u\?v屸pպ#WɜVn$R"hT=WAa׊#ko#ڸ'K=0-.RS%@t)i2{R AНpaF*ŻQC|Yd1Z ck rƇ %(|A_s}G'S[ie#ꜜB4-ng xoboHlٻ_6!00f  tѶ-gأ\7@t O!k;O,ǓDyv뗜p>߉J;M~Sw "d4mlvN 6GΒI#NVZ?|9!8@/6<\/ ״Yj֦I4)3_oX MXrҋ?_To,o䗡]qm'0@<]#2anbT9FIX;n>Vy~z ir(jR2e!mP*jN+ǝɐ g(9Erv[&$϶ߜH%&a <.(2"ߡ֕ڻ|( E0 RacFk}gi)+BL$Ulby843\"$njp#ze (Xa$|w>m7^Y-\dGeKlnIڛȺ;Iʆ ~z)j¬[#H>*S!ª8dBɜh?gs/Z 0$|j%m %uD+Nщ}و壁x+T%|-Ks'޳ݐR/&ZQDwvZE7jXsЋz&5ws7QNJjNߺ|o+?j!kͶ 0 L0D&zm)XL:*X#}̿d{鶡1,@.8e\@yѬB+IKlD~ܴGTɑmu ps?p`yt$Y%V&8<+ߚv ʝ\fb@P*r^Ctc$ rܛX42 ؁嚭QQ145k)9I*Á'sO\}WVӝҜH} :5b03R6A6P?f׭@ŵ6mYp”@wњ(B&Y?1*"t Ab:Na @:\~˅bJht|λ!ng4P׺I+:0 5􀑨Pp.m x6SanćSbO,?[0)Y4op InL*)0NN? c¥VT@ Frj +xcljyZShrn$h\88f(,Hfړ0%DvIZ?+-}PC V-$U3*﹐>=PA]佹/boQA]zc6EN%*SPoN& H+Pb9ZoZohulx|2h^u.,ͅ54;|lYu o(Y;weiW99ǁ8E<ʹ}6V3~ӖCh[WQlSEQAPA;ʱyuQDch1s%vP_G~k'1_dx^ip1:;JbZMjVSm Vp^`'7@ɣXSG "2b_=bBF0^P(J|\hkPʾ["FOkC/+ֈ?NTTT8XP:^)QzoN)dl6 jm@ ::*1:pX'z:4::L1RZɭU$ >f}3ꎅl}LH /qRBYU@S2pJޓcC$ωhmhy{ р F[DIyIJA6m2p۞hz[2{ 056?ajB |yW~sD>YY/Vfj\hP6VHwQUe6N[WxQf$7\㋰iDcܼ )k@w~yy껞BjI!W:50öZ}p';9ǟKMcfD T|7d09˧>:C c:< h֜ݺ]_byzVC6 wN]WǬpB@Ҥv RQ#ׅtY !}aTxɄۑ$$5T"qv\16q`P 1r,.ѯфE Pפ"?W3.#Q90n!xQHfx=F yg$C7MzS9"'ғ]q*'r=hŚ(;Kd2?l hR+,!N IV+}x\`g|ɒgx1X=14tR]㪅 N3kt{U9;1i&7-$Af$P;rmX.?H ]2 * D\.ysI!hΏ'ioKqe#-}+CK.c?+F["]:S hޛZQ2 c0Qugˁ4޳l5HZmwr| Gf(n-702_cך|^QvYYTUWc;cBO5ac HOc]?( <]U4hWO&Ɓb_ݠb d0D?S6XPv%tDǧ <>JJ!YR]'A~BLTV7@$Ua7;G!&тz u%4iV>v,k4UߗqG[`Y3~K^|XrcVPey{! c[ ӷ  3"F7*?A$ _[H`R=Sv{W`R*_5x!`tslD`L2Ky;M&-\z).3#NZOi B?sWZѸ'—aO9៛]>-D=;yU'ƛ K>=tkSM_=9:ʗ};81w2Z*,KB*yTb,)Í̀1!j [ďt=u?G)¢NTקspg#v͹lKGA5Z~) - 0{@l"!,:FxwOm(]X*f՗2à+,*s(f|}P[Q7 43/]1R#1 WgEԘ:BzQ2SJ)^kfO͛>Ԏ45EH($<>r=sޱJq#..jyBǝYzΠqمl9Զ"p{uVP5|;:ωJC= >p\AwX'lk;@ FC0nqs9Ã֬F,89"qG'UK-4m<` FqNPQ_b\tL6Lcwוpsx[a}(2Ad[ԅS-wKAS&8W]/].2xBL-wph >fHaAzFy} @qz-H Z-ڵ[ 3| 4L. .NN õ|ȷ/ҬVooo,x6>W)@$сFmNM6ǃl UwF3alg )E9qJiU'Wfmߞ)9*]3{sILAb]$xn[Y"hZ}:}Ąjֶ(0p{#xBz>TYQM+*CX8~=jN;R@9^@g[Ï-MoGJ²O&>Ed6_شQcrUطTLP ^r׆ne;ZMݲTN>@b<8뉈 ŭݸ b{`"4ݼRXRNHƦ n5LTDj쀥.99w?uG=3EԪ^vX 3,&kN;`#|Ki`jCO!\kZHUS%pmµh5azZ\Z4!u} 4 k IRrNd!0 B'_^ Lmd9H{IWddXRhCm P=CTUEA/t=[!-@U,;K/R'+;S:F%rgmj,z"td)xR ZnXGSD&3J:VH gQM~e[RXF"񪊶BF(i\O-R (NG\l4^/)B(ar3Y|*8A2=cP5FÑH.O=_40AX) =O@qcו_TN J=g~/=F '$/4hX6BgSG w!I%_u34^wCX4O bY]U4STZ";ļ̈c"qN |l͓ Cqǿ"h֗(zFx5X'p/A,J 9/Շ}-s,^nܼLrѢGaz3!"~ay9:wx sC#x0%g jN#"'sF^kW 6Q +Sz*F5#pc-kER,aJ\kOnc|Q&jO|-'J- Iae$R$@"v%'P8 BsfaIhIZ23ԯ˷A(rvr 2?Tɂ{/ܰDj"(u?>06*rr Iw5^=cEio87^ ?NEY 4){|e{>|s3kUz{ )"&%1nM00#mTHI6(j[ .-(f7W!*h(`oϞL?p"Nɩޘ9k;m8ߑ/7#()Hʊ{#2v f)埈F؜h/cKN GVjql|K9$Zh|LlR)@ <쒲Wy;S}ҳ%QrI.RMX ~gd>$Ǚgd  үƕYK/Si;*'upJHaۗ KCT άP!y~F2Mm6]o [40T+w@rx?i5*R{#4O}gw6VHqb(TY :/{ӑge n;h(/+vz} GVE8crslYZm-;Dr%pAoa<VTKXř]/S=2` 8M;̇E*TF&'4s%XZ|9vf}(/ }LqB1r7yL;Co6HN[DA;Pr1uRa͟Kb=>1:X6 REuq)kJ{ @2 ǰ'4A:B#`:'6ᖐqU ۘ{\sxu`\{!b[B5ENv&#дdbwJ2v,oj D,nv:EԲ]Gy?hD~#u^h]4CL?+< 2?Cn:+mx`"V/*W)II0Z'{=VN*-Jʨ\37  [NqC|$o6V`jA-cPOBπ]2Q lH~d ڕ$0kk /OALIC]&R&&}oLۏend^5I-aHyL7Ӿc GpΚ' Њ3!JΗ eȍ.F+G+;L Y@@<^r1MbBf} \>'R_ޚ{G mHGTt_=ɉ'PY ݌k~ ۉ#B3'(cy9R~fQ"~tHuOP6i: \NS_9 |}Z:uA/syl`Rqf]]c?&6윚LܻAGaxћ?b[ nGȀk ,d 1_鎠2|7ud*  .};pB%JTσ$E{wNj{R8TyqDyX"3;~s|v_>kfnf. Oc,S+KG8hep$HpQKmݍ홀Ҷ|vr; _MtPeNv<\{9=B-|*dI@P'wnxp|KY(C-զ`ю'A}t35`Aqo~Hf3ǂ]vdGn*ڹ?<cZJ53; 2ecT4 |΄tFuTƮL7P;=vQ7=}|Ѕ>fSnCQgIɼ*vh@ZV,h3$}nb g&`9ʼn-~H,m?/oLZ :_'bJS]R+zyp5mdCFWUW# [5Xo⏈@$7s=\s݄Jr\SȈ)O D&`kr,Hc _"#Mrda^m^0 ֝$ȺoJQO䎨ٗ'4dv[92^4%4c=ydNԈ"].:z>([Bԋ?8XOJV؛7ಲk+ jyp:'G +O!lR!]T4 HC4Lu9yՐ6{S@Zo&S%ȵa$~R@Ϧ+ab\n?6srO[TVB ӽ7V|n´H[BLkQczG#'N؊1PiNQs_Ob{FfW<'&Sü-9-|OUfyEމ6\sb cdff]wQt3R˧k;31, Xdz C_'huQ)2w v4O[BrΦ|\ELQZyJo@ ESr,b8`GPI0#($'gBgGd;;jdr|bTm3ϺD5k.֤3OੀQo5$"=$ߩ/_qNWGq+ yNip7  эvZUEMZTŚv^ER2c5gW0,³rD:<^, #AtK7Ko 0VKnĞ?N^ۨլEt˙^IަO5E6/zWsc .F"wgw Et ( )ap:8?)`hF(|64vQ 8qZݜ8/E!ŴYU21^InpW@(KcD ,NL$^h92 h`I>v7hJ6Cpf|PpX (}e]֝[xS (.l]JYț50AJM {8!-^)\p^ ~oHD-Em{heYFDRdEڇ ?nS_tD$?zcbpWl`_rbus ULS Ǚ4H}= 1,Bʤ:B&B um)Td[/ъ.e~n@^ 'qr*PU|W7&[ߜPPxUŎ\(?RW \]}\ jxvTދ952:98y8q<͊B{Q)4=A= snTEIE縸C>t;t/-M2Gm D-\xQFg`œ T2bdaCMC#-MR_Ot)%8c 4M*a~0!X97y\Zg9}t]1t] Ǧ:6Bӆzv;)|p-np/z]dD$t-0}R'anhZrq_I/~! !#h;SJOA^>)D\/@.dr*c,]?7}vI5v WwEEKi7 eF"FmӔy{:$n \/4/1ⶶV [?MJ6t>c2.Z*c"tn]ugHK WD!<.'3 7^.VbpUidr[fN'UMOJnQwbÄW+B+,<4w0+j2鹜$L*%3NDn]κq M>~@Tk+?Mcaئ"ޅ%KDө ƃIM&V Lq4PTcF_Y_fս#5Igrnd)e] o`E]yo5$'Pԕ\Usc S8O}I8>L.tѮа>Bޠ ?R˫:5ؕ \ZGA?p;.-9yE\>aSzS0(EYrϹy87aɼϊ$pMsj[*U_(UxM䊤!` ``^v@WQ#'cnd k/e!2{`gEL{r#y̧}u|3˪tK X%y *#2œmFnU*.4gA6آ#K~0FӍ0D!AÅQ>|D>'z3oq8`Y݆mdBS0w2$U<>pLjWEUf3ɕƥ wUJ{%pvfiV E5$A!@79bTa+rv*b9Qby;\{0s!ݧsгX/@6X@$;Nj=oRM*Wǜ9|e>S\&8^˱rK%yܸ_K,BQZmPZEqOv`]cE7$,QRN7yܽ}CC ‚sJ^L(VH =wx׉Z2h4Cbbg,_ϒ'=kKՕ؍Mi:1=dڎA,SS M6ok-^yY_`X<?p,Btb7)sE|:6t}5y .}>fi% 0q-vCo`i ГȩXo9+'ЩFƲW7xZ| Gg}-%o?m$r47 cC.')>QMfXܧ%X{YD^kz 36Xl0r|RV{PMl(/SL/gEVL!F)}* Vⵇ{h),F!z*wD I4 EILFt,C@p`ǨK_Uhps˛^'X-I:w,?&+oS})UH+{KF 2,HQZ4L-i"0!ijg eWMBAِ|+ yT93ε7sP o˃y}ZIp=[9qey -N8ʾiL5f!ŽJ՚' 4 tlQB˘ ,{ hZxY@MyWRb!pF7$Am$՝T`v ڦcG`Q*b4e"P_P: |E{0uLf,ù Gr˜L.R:x;*z_Bi +Sz ji lN_%ͶFZe nNWVDx*gxqoTU0 6;H#{|G:ӿTnrnrɏz~[BZFcL#"Z@~Fq  [i.ѯ" G^) Q4V'#rD-QQ|u >3;XKN rNgI|n7 ,(ES̋*15cyR Ktg܉5u˩D'%8~,ձi[5>r&o*m^)׋˷h/q(wKE ;]stK>3:\ 7ކs[7^mSջ=}؆(Rn];g(S<K,,Չ,A +Y"SDIh-8< +%%*e׬_94%?Oq)`u GODj(Qr#& w^1w654}Kh =-rxY&WyojtcOOEaҐ'GOMD]/%E^ܵ'Y~߷B&Ej|}q(9douk(-u),#\g$UV^2rK۱ xk+ا/hE6!z ovudP|}gQR$0͢y\bDT6? n'7Æ>r0tq,:g 00I׳؁ʙbb#pE]J GrY@JQvOm8Czg̩ D26lh_<9H&[RF.-mܮkJ^͂b)kMz<Ul;iE[%{솞3Å[?@dxI;E wKq|OޝzГ͆`@d(r>5x Cnw*nB0Ŷ/F^`יG2es㢣k'la dw۹ǕEH&3x &s<>H85EfxB=ϖK݉ pCwҜ8d#VuZk{!~0?\aiɵvxPQBW}XL: "n^R3v9T슊=\×vھ=3va1c?*Iz#1HJVBCDJwe.؇?> {FiE. cҵ0ncN1kpA+ĉj>)Yӫ4;\e0JyiSUEv&("bMd*9&^k•rDj0ΊVkȒ5gʧ,O8p%MR#rl,Le=W\x.;?rSVG#CX_*U#ȋLӉS^+7K5~ IjLٜx&?ZP69CsBkE"4ßtdutz$!/eمCgws#s3X+xtk.&0OCbP"Tcos 2TXm0P @洅VV >DdZ9lY =Mz<6I^`;*49XZ WTH[$ B|5EvdQ !ΩmP'[Rda$ Qct!%X#]v"VD Y ~ 4R_iŋIЄp=6? C_yTgiL33J Yp$F#^ H__8&¾]BB"l-"q̚{Du-yHJCdMBlW:@S }nw,]EkLbMI{C ^\um3Lt&l$P?3c9t2tr%v(6Fyl_[jGؔ. ~3QҖ.(uQ~D(s (;゙ۮ7Y(1ZAlo1^b3xPJrQl9!Bs5Jʙ&NN*#lVչ?Epgق?oHִf%F}6x;`2z cz݆kjDrh4>T@.]!!⠑F!ZzfK/ܴ/7ǀ=q3*VE "=\شSWяR_[ db4=<>q@]jS':, }629AXY=(9 sE%JS3`M2{ <)Ś)11zW nc9 Zzֿ@7\/ M~ meBDD[)[wg4kt#6 (أ5Hze_'G"a9BU@)ex@q\*=^}U+pΝ ܰoɥj ^s1%Ʋ%]TԅJpeBf!6O~6N5[AKXP@WV B@2B3[ {L^ꭲ\H ZǗK޳+2IP>5Noe@To-ظ<& 6[Up\j;_|n_c'#nĀEePYQ+A-0=Q V&|MDü:c, XrDCC*x[!*;5P ܙ~Kn%܄h0NFg\&&,DiKSy^eFSJDЯP\5kd_n"{aiB] \d2z?Cɘxp,Zd >c!O h40ghW"Wg&$ڬ)Ԇ6%̓ D} qsR&!my/&aj/_xpz{ 3 1O?ɦ]䫂 ]l~N[gg>2D[!3 _w$q+{6MJu C4>Z9ʔ ^(ao!تqrDM\v.m}DvdR`tŭd(\#C<`*HJBϛT?)Go7pֱL4<7A. BUb"8t{ٗ Ou(tYܞNiyozgPgu*m0:|RirԈ5Ճ&\ ɀ1>Ƅcw&q+4\}O܌*EYXI-~T]Z&PȾ2mU9S*rJ[CcRp'/FAq%}|%Rh}`ԯ3"Ǭ;Cb 6WWCYi%T +7ƫg P:`' &o|$湅QZYsڷSJ2y$%V2d,7ýS1Xn}n}œ[gB(oߥύ VZYH3t i Nk 7!#Y.S;288e]Mq꾜1пd7/=ieZK_,8~# pLJ !s,Pf-Bs| Ab85`ŷպ P}J!UӳO* T^̭-h/A8`g]?/D$7q;Rq?0p3G Ad0;")>OC4͙maږʟM%CwFQD(K9m~)iܬ02k0'G@ɸ B9ɧN!X8Eg3C>u7Y{]tɂl76bw[epxB~)&*{4`|{L}1jG+5sQf]*Ip%03As7EYH̓`"$3v@YġpwG#sݯh/u`(I ?Mf`P+:־<,D)mT aD:v+zNSx #lYјCtE;A+.]b !. ṬFU)ִUhmXM~[vXX1[?f!O+hS'ut_^߯8z /BԽk]:)ňP&{YuT5.(#e])G~zhNa 5iFI٭X&Hƒ0ۖ(2oIҜX3S=~F&OkޒTuD tR3Y&D)5!93U{UJr?_?6hoY.w,\>1<<;x%]k<ʂC)e鯀i;R-c-PN6KoWxk7)[B pe~BDϻ~rᗇ vr)Ee cppb@SscP^(4"[WjF{B7!}ɒBhLΑzcZH69RRj|j z *5e$G'&LB*Ī*QsTGhxKhZnNYq;T=6ғ#a8v_Ѝt7y^1QZd_.s܋S0/JP_ ހqY9zWiMʕN))XCEk]̯$@Uit3TFs@J&$m v(XF$GRt%Nđ-)zҲ6@(;B-[@vSvyGX?iE,J}s/Toʣ|Ṻ]h/ҢÞڍO"@żM Z߫FvmBr-8+Xk@*@ȘC~ Yw6/8}R/U=b Ҷ]st·oaM@t5Ld4)+b d2)7ikq5CQQFO5 z8}8L̽jۭ:_%C(EFHtkDT^8Fml}a w)la"[؎,/TSX>y x 3٭T@w~ Wr=D1I78~Zgɾ@E ;>Ћ + Вl(TOʋHnqxFDziZwM.3lf\Ã3E!7NKoZ= (׭dx_hʓn]\&G%g^7IsK\Sأ:dgjޖDɚ'vX $ ZY v/^Eog̤g. x`hבD\d(=p> I- 0/=L52]W۔0sG}\YRE[>b.q É*$BX3 qK#G#Nt }3]V~vݥV Qe,ED`.O?\ctMDgωx6Fi)+W]Gъ̱UszK| /nj,JBjxo_=M覘CM3`8kKQWacp.YvJUKgs0UcqzH yrJmΫ9~(`v#[WF@;>e\ صX#,&i,(Z9z bC;W#d<*h8ߞTsEIk29-Tu?.Lt=A ~pACQR@]6^?n4\e9Ö, D/9\4h05E࣯F2<A[8Đy+4|!K:!G651LS$S9 `Dݳ%ht;drk`A:gJ-WC |\iGˤ_;7Vo>lri5f"D_({JމsZ&gXÌ iA,pkRy̏6J^|Ò6T+`ô`B@\\Af<"G:譧UJ mZUUv~I7dȡEsRd|݆E!Q ֕Fq*0c%  E'6>oo8ÊѱYWi<;}$_׃5U:f dJ'2 :& JO= (9r͹V.Ai?\T>+pdiPX7u$ u5o2}-㳄Fi{LU^L6%2W[O gPҍQLnjA) 詽j:|7$j]9T+Э/P=V2 Iԫ̍FZ`e|/eQ\њJ_dL ?K؎K]pp,zH' xDQ@VXIa/Tw:L,|}2#*+j޳ W3ZQ9YnxDŐ.IG abn */V5̿ȍ"nd 9vjWkeq^8ԌoHW2 ex&¹ ә6Vݤ0V̻a9`Fe=d퍵\vH!ՉP^kg:?G|+iރ~pғ.T{i뢵x(Z1ʜG"83) 0{}c$)gW{-P%[z$SXc :GGe.n7+BQI)f᰺ثcI@oh{DQ)pc0`<2(s))POߤ1:GnYT=swA %^LVQ|Ke5/`͸7/jvra+Ηo=SA iLmuϙn_o !J-šH–"C&Yƭ Աp M,%)eR3[ޛ&dR~%FwĴ{Q6RSg¤Ѐh: HॹbJo#y uj}:]q'z,8fIVR~˜&{:S +}@YɉƮ|96Vq7lkK1=ߦ}&NMOxzu(F 789uADP]/ܶ7 JD#9~؏mjCKvH)\2hGTzQryYe7]uU#Q]¹/ߖۘpVws(d,C+U-K~wE,n0ƜS)3 䮸9g rs>oO}2T7sS,r'Jҕ|Ɔ6= 62u=J+=fMԒ-شvgL}T^ߋgSʷ%!.=ߦnvT/ŠT}s93l=pM84֯. V7G` !TޡerF 89~X‹SGPlN=N ]!IxMQǤo*K v+j n6?U/=#,Qx3a86*:!2ᙈ^^5hX"(ԛP/ʌUf1yxʦ Vl%zg:zlVR/~SNxI;+5Ű'-_ {?!1?$u Qi*#r} Z[S읋,W_俤0ѯyBm?=d̽m)`Uml4\|T\ KS Mf/in5E {#tayhVh_yqjSpkm,:v~%q <}E3h:uo(Xd_]gH_E/njb Ghl1>fh?VH٩3z~3e<&^ A%-nZ$".dH&Y4N VkRd!EX)" Ω÷t2Q68A{1 V|Uk$FL:BuN}7$4$ZܓK}Va 9Qc.>#| "%uKE.Hbeo ِmߧL]D\w }wOO1OvAup?"P/yت(|W'TS2-w=*BOva.*zp[Ж~X3j@.Wnzw#-OXxM}rS`Ң<>W7 ;v>/!%, 42H}@Ӛ +YTLS 9>b뻡l!}־ cJ׽DENI9spt*[Cd8#J4@oy07<"=P yTm55 R-Jz!uk,oH/}W]vE*]+N!خzg۝މ_it(^[^RH~ g:]A+n=<.hETِɖ.ldž 7H:`A$G^BS0Sj7EN~_\t4Y0(}( /PNܤd($2;Ƹi]_5:?5˪dSx^B୓b"H%P4)mEm'7*f:gM-XY4;Aퟂv.3T1O՞9T9(c(E`GFpRf(Q'q[Q`t }b4 9P} kO{ҚD*[ yw+psCLqSk>}BS:,ÂD4@1 w;4/qX8A')<tRQ H]qF#rʘVX5F׍=A,=ƺ\Y6];_|@.>mc$ U{O8 ()[Γx2"T)"7b#$I,Ϊ,k5VWcڬ'0,*CӕlUD7@os2оtuE vb v4*@Qq{EZvYF_8B[<_~/1 AU#JϘNihj?lH1-y O!R]\AZEI8HL$`?hPnKz$v _k*䓏wx,VLŞ?ł0ܡΧkQ2% A~0-(&)*y9yRL,XX`+O4z\w)İ&썻 8T%5(XT,ݿ`6ǠbmX2QigR`m5L)%ƯͲ< 18uL`x/I]V-.:ss]A4Q;JӶJN*KcSXb@7Ff.`s^7|fd_v\܇. 9žv"oBK0R󭣌3 C .Jc#_ #38tCڳ@)YS6\&p.z5V|}ڽT;)KM:^)ɀ_@P%"uxiP];Y@?}H P6k|jS| ҂ 5g,_/2K5 rιkdeoйL\@s")t,/oXTpvҙ&_cHOҎ8zTUS'ƿky"Ndb!M{즃m3h i@$X0YR>*=R䴰R<|dbRn,iv*H_߫&07m8+6Ɠk?>{G d9RB6;~!4 QE*xƱ9lRiOv\ uҺ'k˾ ZY\J@.I#&0pya<]ˠ'j` PMB ~!LGS~0UMSa,lǰji4$ ux]$omHVs(gE>zYZqh^Zls8'U/a =1Umב6XnB6粕"Z n8+ {g}8 ľ1{ńkRM h1UҞe,I 7W?B,bC_J/ݓ"bJ3)pq#ȹn 0<.WQ;e@u !Mo3gd6pO~`xdޕ&jBRӳF u|P= Ewt(|OVk.4b H*@"L 0?%e 7N`ES3B;sTv|1#֞SSlA`3U}້xˎ⻖[ B莳v1j2IqP{|r0s$\$BTj^~cMF?˚eM{M&$n'# u?ȩVPҺ@nO6982ZbYAA!>恏8VJu?£Y 玧ogjK$'F PT#S-g?TT.duՄB:Y| D&,,_,Zٯ6l 6FvW$rB'#4;z="Lnq2感OK!>,ڟƾFPbƚh9 <70j#5țp:bQq[is@9/M %YyWt sxwN5S7,Lz]0XrbFG2b2#w 7~yE)/Dv_]CSJ8 (^f7PO>2|>o"'CuoE՛-rS=МB/} ݇X<͹Z](<ӋIڽXOGx0ݟS~f }P۸Wy>vRE}PGU.k[fQVvx\4+l*߈DRӹ ULfpqCe;TR}XHYա"0Ml8#ťd`V>O":lERr|w5UC^#_Eh_]'dkqtZs}*m2jX"w )iwi[zm/M Z [ :oSr( DrIt`e;sٶ8YoH.A@l9lN4NU!I`9f>@Okyl8 .!ZX\>ܚ=)b_}w\YSVf7RI\z"}{ɿsd=kEϱҮN@WL XD&߃,~IyO^G]?ΰ`mV_[' Mw]а.$acmey6L<&=ő3“^E| J ᩀHS&пڔTp˵+Y;%k'_c嵢x\6 y|o9oSku iQq5a64 ,Dj" 8Ph,@c,SQطk$da +#ZLgEɏN 'Y ?9'YyG-}֧߮x?DV%GѻAz+kMAx՝wf\}מ |%3[!t`اt'y#^|N m-L]6SD_/f=ehsU$hq,鋼`E&Ûm}HP4TFeO){ԥǮѪ¸kPT$D[plz:EEXh&VvTSwNwK:5_ѦW^:ib l繥) VE\JKQDd@=_w`̑m3¬Խsj-'e4ogֿtR?Z&ʇ^i;bdSMm@[ӊ̖ _59+\z8u'zE cL(_G${Ī1U&8˪B<z3-`G(3]1!$7+]Ow5`?-O!o)Oפoցik45s#Jq\" |͉jk eB۳ZYBpc8e(@P̷xh6L?8Sh*q!8ggbф[1'ga)m0ÓHvZGnR46 vV6J7_ᦼU(9Ӛ׹N[qWi\·㌹)ۍ(tfpkEE;bɃu$5L^zukWω$3C(kP0 _uGZن@Wv2gߌtR wt PECw;l%.).%X?#XWiqИE7+9W|[O׫;o=`+~^P+Ʌ6̔<ff?}]1UisZҩghoLwmC"ryg":EPkOً4"3TݵT3''BVˉQt*Q;.3[T ZhRi*1OzӋ:kPQ vJNsO7Vo4^Py;&MBMq?CK8"fzN?3t΋sS;X _ЋV5`"άl_Dy"+aLg#L'{0Ud:\k Ʀ@57%#H"oT<)Gb+fCpwlKom/JDSWӘ}\>ïUB=iģd -v璩m J-p c|k|pgֽZ]\ePњ~ދTC(Rb[3;s##f++Crg}q+Bc۸p6.ZVT2.5䔊? E0 %C֌»ѧKSnEƞ7fL0]q؞7E&hs8Y1!ꗲ [$RLT,(_͘0G|VcQ9ǀ ݽ)sTE%rڡaU& -c03 My3|Xj-%}?N"[q" I/]UB݉èg2y0Hsi2o{lCT^`~I Ĥ#6`3.E eP~Fq`e\}'LvP ~^ J;`f8+d#f31q8}Pxxt.b+|32(H)M&V_\P+3gJ9hNL!i$lH?n ̾F}~&^Dun+܌ÖjҳHЯFs n|@;^tN+?{GT<{~du`{itHջ=ٗHN Y]+ёʠu7PSKTyMttIZPGW|`,UFh"!}n`X 0ˁ̤W]78ʥCG},!p6H=v6p~qP,,BJʙ~гNUdV݀$ XƩQf . Nu쀂InA\.ZD_άSJzM: 7A9a[-XRi//*kYlf7?.Y[~m\7X qhWy[q*y!AHI\1*U$DbǶ'yyW~Vj}0Q+)NM?H/zS[M+cC3{ \to;LϤUsb/6+{x"q?*oSW<+8"!&aQe @b"c+ByeIČѷWϛg5EܾOc74돤X4O;R-Hw';)lGhMR}hotzU7O\mpj[ſ39A]q6(ytYd 6FAQ3CmUh.دлe7#x!oKxqm~:.Bn]z?%a=@;I! UO~$1K#V5`%MrJI7' )~rjBOF ˵Ŀv FOѭFEf ^VH)/G{cI3xmE5N\sW#Ю6moVhlYq<ց":L| $1?Af/GD븵M* ڞ_AD%s"Ohң-яSK)z="N\* RY@T 25@@(fp yxOK[42~@-BJ~ϴ MG4eΙq9r7uDsD3h5BkM# 9}9[hӏO@O֡3 4tP?n-'fz'!xP_F_7gjB u<s=P;rHZ!7S`5ה6weņQH>Hca1Q\[y &M9]UuƮ㱡D&-/1YaXTuh41Y`P#ʨy;J^B7nX,)PJW[bիB j1XH]Ty.j|J N7;3. o?YSZa#/ |]E0% N90 Ytu+AT8x<(9smA)O8.}6@ am]_9 Jp\C$%[l<TR` qxvo֌ܔ2`]*< un:(W q>4f%U*ǵ؆w =޳H]Y]q bɉ VE6xWMwsvCq BF#(YoIBQ^;1RN~DFLl ?RS*էa'yй=b 5CIM#BL Hx5:Ta`v̨@ \LPNrL~*+9YiqĨN\Z{R2ֺ́e!M)?X?]X XPO9-|:!/[2 >bw#wP#%'ljT3rᴡ"χClhGn`#kQA1mZ84=pnyNJt2~9[WYDYRcW9J݊A1t23'˃EtMz lZSv{Uh bR Î H@b\{tcH"_01nj,$r2O7 q g!=.vYH`d6Mo$N1XbpisʨtCH0a9סc8Ifͅ"SŜHOǠ!Y)3TMP29`Va] Bˠ|H$ =C'?/h]d`5ZcA73l=BYC W:._f/A)fYݽWUHb4晬`Β_zz\(rPw/wOj=Dh"ɩƝ% yӠ` ݙ(h5%A{ӾFGےN{jWj\hS2-%ԏBhJ!0a,%%Xn~"ıUzJɺyfEX!J}3i.?aϢ60hU?3 G徾e{JGZ+ҰyѸՔЕ^ws+Y"bncߗ|+v2>%,DbrUf#_L`Oϰ,=I3YpvDd6>Vu7F!:{6~tZ6o;3N8WV3FϋQ/bu.ݜ+JjM4cv~+qѮ{h ѓO~ə4ߗZ^N" n7%E:U"+GSaW?,a;&@(:t,/@wSU\Ums @î"yk$ĢS fz/c6NFSWp669 2{ZsE_9V6vL"]詚^HugǙ&O=J`-Fz .ci|"dJUc[]%PXP^lG mbvS#Sfte#͝ޛ('HyzC<1oǝ8&>8,I6NG+5QGΤItED.򴏗;р:ܟ.y2rtpKW *FƀTK(.^ZLD6zTob熀 aFcnԘE2dZq2 ~ pT 1]8Oj&[(ż?Jj=@HQG,UEڏbZE% >v {抅\-:cw1D>b9+YgPy ,Y%r.&Ƨ6=7HTHMY#fMQ&30I>;^>vI κd]oϷ(>a׷J4mZaL2ﭴe߼{77ꀶ{ T'oI,9$I% 0vg>;-a@I̫ar(;<Aj9bfҥ =(3iL9!KTN $ ~qP8"SRAv5{zowWNQłO@ c.&2x ?uCv%^PX>SX( "{@.陏^u:BBEpֶz*FvMEߺ +<3*`IfڻA7x39i#Q'J\f6eg 2[őAk_Aڮ0/~UN`#8.NlL-ؽ}hU=,JNV?zLFFclxÑH:A>]Q27 9^k宕\f/F}<{Ǝ_`7ʉΨrtz/ˆdXA%ےE"`{t="m\r/˙:7 1eD5#ym/pEt~]>r$뀏‚O14ꜽ(CqӃef {2, njiV[iB']E@rU [ 0Ny#iƕbN?y:bg9 )`+Vђ> 3Y\`Q,g\S¨x=N'WDuuh‚XK@LJBj64n!$DCZKpMq$Sĉ4gޚ^9궖X_7*R_wL WvZb_wd I ]ŕ+߃f˳ 2d&/TqܚޮeBf :5JX(2{}xb/d'e~l|xW@yv>Ɍ7_tE&!_P"kg}K0SQ*@e=S; hlY 82J혫\zz*=Bن|Rм^HSgTcH:rcgWl:%r+iiسݧ=KwMizE$Տ%aιcgWGk(?{lNI[QPYuBm>o.WO8=6kT[3r}32)|l|u(g"RaR7ٛl[ݏ×R*hTjһ]{^m@W`yV tC,fj)~oo q{2=ʋq+uWDyW)w W(Z N}2(RAO= \#dv~xb|~@[T7>^/AdH]|JQ U +3dwⰜNmSmni>^a-98L[=z,l"?U3jz !@za0NPZkc‡Fi8-ю[ 9=P Q4)ŏʂj+QB$v8i?[օ !}=ɸ C= g}buud^":Mw#њChs8wT`TX"T7Q Eo7 6 vC]b00~::rj%TɟyeOa IƋ5osjCOOlc*[Z}2'ή>aL/il xP%L1W<,BüE+78qVlǗHA8c[Y M~ENOw/VJ1kR(H)Lrm>SDZӤA gyBP5SCцt=ТƦ3<775[jf.q=1]ͣ9=9C1'E(2Z.@oQ]g] K=F\]l:+D$j;7egrl1ޢVeG_̝7ݏQ({J {AATϼNJ2~#\0iqX>EK'B5^Rb+ Z bCˮQy~dSmomMs=~/ VS+&T^x%PY{S OH AMUYҸׄ\Cm?Q\繍H⭸e~ iwpZa|L dAgRfG6ee6ϐ5\;F'ec[YcTaVKM+L9khê@aZ0EMd0~ƺ}hF[`7"m|pe0gVV쳰PPv\~᪒6f(`?VB:ِ~~? @1s jm*O7c(gE h{k'h}\ yVNGcG,'0*9Ŏ3v*ķvn 2*dzєOP,}ӗ㟅FU/ ž}1-L2I>n{ i{á(- v{@cA+cgTZg3N@ȝBm\q&Q" 0(.Mq p-j}V=Z>Q)14`!c@i%1ŖLoeF]ܝs5 ii$X5ߵ1EՀ=0$PGp>^tU*3=+lgv;a.&F]Q9* :| >Op}%mC#"nA+._q+ ]q _Zѕ@ :_^ #< tc>#8!A>s_-xPBfn2_}1~Xt6`Y(6;{YŨӡ>o3z!f 5 ʔ0wAY3!ZV#w{a2yc>?zJzXic%0GٹܕޘgWhnD,*Ҙ! it j@:j6aԇ2x;Rh P3Z!]WPqa8B6Y.FT ҩl8ݕí)Xf[OėcC" \BXN;bb.q 76bIA#2AVKZDǪm4UٓnWN^7{'RoKj6d }t.Qm<ՠ@,9wEqG'-M΁_rXM/L.Tg\aYl= A3\ 9&jh:OSuUjhSַʙl}WF-n Ғ{X .zBaUӋS(wNX'ӥnܰ|NjdN>ľ7zY` wJŵ'LQ!ZHRX̾sxQ]qTɫ俆"Tnՠ|axN!.2. "~|TeLa_ #sp2ғR4d= ߌฮ /aI.Ź䌐?Dkk<{<:SMMgm6SD\ڰ 9U "2fv{3+ʅKj[s{1\ҹc}\XSMC~FX3^IGSÏ_-!@[yӲpSe݆ \4Dji2 \t!;=E`:D@c--r4kWB;tUE?o n']=~ ˸6Gz ,6SV3 ՐPk6Qʹpr݈5JΎ\Q ":iS ֌)Xn]fo/rʝU~OK㎅nUx1$a(m9?y BYZ&/rF\J[=z1޹Gnn,S@ WZ  t&҈al%ڃ dQmٵT-5sJDB{p67E&ˆ!#~TWT_P[F{HF#]JZ+zDk)ov`ԧ}ueD/z;3m/ F^%9yYcm}yJЙO1iub3(kjF)#tx9)yL]QqO\c^٭,YgʢlFb9_cj9 x_{zƹ~nn3o>)f˚|SJ=ELX`ǎDƥZn@8kvXG1ɉ veJ?OGyB[4rAMHR>AM/īB z-b1YK ']z^o`8'"M*ni}8$Kt7\n^?wPAv)q__}wtnr%^d9FGb&o%IQҊp4ђz&g Mj*us/UE\d_԰џAa{AeʉZqBe.}M{?MڨegL pMl\.v9oo oò4~x?Iw֑n-WyG׉e(lGMV@|Em0ڣWiÕeqבf`IT(|%"O q3rwX-#PN/̻Y"wLG%pSrϳv؛ %e>0yu1̂=F*ss `bU&wr'H=&u'}^6. ~!&/VMG!gn G\2`Wf)DO{էw :~J1#yћ!H4E"(eۇP'CǴlo]yj~<C~#Gv[*$w)·4l'*M'.OiyKًTI9V]^Veճ;@iHV| ]LR*QU3F \mK(]xֳaަo(fQ}".cS*0R"V0WS=&QH1~R]ׁMjs@g,~a=?Ʃۡ!9Qǽa*Tx'@w!ygp@)g JV=,zӆOߟqI:p#21@,&X0GCV~Gc.[ș|ҶZ3D03.y‰K->fX6&guc6Wx6cJ3ucM~R!>cq V>/mbUF(wm@N 'Ѷ.7Mkm (zRmE+T^ {n&)ơo'0bh͌<1$5HxA㝾wD2N1Zۊa>0J$ =ٳecY[#+@aڎ[@҂"Cڎ@>b,Z[c#B)3ݔ*#ؙ.bӉHBD-,#œ]Fu 5h><8O!Y(_?Ќ?j?z eb.$"xIj? WYg iB$ jpHB+;hon}]-}0$wI{.2"1}֝,Eܾ4DF%ie1Q|oW!N}\>6{b7z)cyAs ΕvR~KR<Xَ5r`{lu.Z4+0~\jIJҧ/96WQmZHC yڲIȠgw}lqK`}F]3;/4V,-ML^\j,G݀3;P0ѤP1XZ>1x... ,l@R1(/z6ycbI|IXlE+j?elcj@x_<'7=m:ht~~&[{Hj*! 6tC>$Gp:j$HǶ#Mdt T2tDž6b` %8Zs]0H1 4';P_&yӽBTI/ 㳗*MÍC3'YWdXEniU9 6sa[A}}eL jKwvqXtR,]9՞ TӋU+; `e BQKrMCHwVH&݋% |9J N(zx*S X݋5gk I/ "̓ )G`[>= _@},%V?`'/{(!f`^U2#~!UJKf܆FrhW^_[P|;gilkFS/%U=cvg!+-~k␡J1XM z Ou'Znuj\A%jEW8f9yQ6I)"!P_y3[qN׵tVB8'R >#^r5rgzJ!FIsnPLs\[{#7i6_ =T6%T*ы_gLE6̋t@؃/ Fv/nAiU5sLW=%lDZEc)6c"Z] 0&Hc2ڒmҮ4YHCgV/#"opbi_k|ٝ2|a~TM\?|gp6 mɰo. A8[%AG(䒔Ѷh_a3jVT}yfqm|%\;Z;?A?46/~bh)38ntt i5@;y~ &5r!G߀s)Dx]|'ʥ$DoF/h#EK<9ھYTaf, ?ɝq\ГA<5c)74y['5X9.Ld8Ts7w;JOr4`@ME@oqlJ=vklryď/Kݩ /Wc/^>/AnW{xn 7Ivp/݊,pvjDW }J=Sج)Nf%xYR럜3$amMv1༎  $:]#R]9fmHͦͺ 7z{ܨMJţSt.~Xӓ-߹2zD%U\ )w}v", b1J[c{v*cIr%|Q^sS%ϮzR{D~ߣ_k\g3 )])܆2| %kF-u/*g vyU)CKgUeӧ x˫y5%'Nq[;L_*9eru3,zS-KB뻼wɮvxsS&n@Bo5fBeI\DEej@F:eSM-gD:ؗq|dnw8FhNUt'^ #s &dXDgɺN|-Ɨzz=xFT˙ @NGD,g[&9Ee9Zqfa݌( 6ns bQBF) d<όZ?[+W9E*ψr){88&d&r{ u.ةPeE @5^ϲ1'l@u1ܸ ?$!-3%J!׵S+&ٗM#k2ˁx}ݠ\W^drH=*ĐW @DZrNe-/G/ EEޔ|dՓjaVo+0@ ͒&BܗѼ 54ӜT|D I&BFa/ `Mv*.jЩ&c+²kJus;i3X~1-AD1@{JuecLt-kȋf߄L=2j,XO(uT/]Ћte:<ܳ1ئۀ9+>X labq sUx&!\繫G N>\:Vb8t5lK'ߤH߂ek_y*oo?+H9Xo#9<8w@%H|eJӰōk:}5\?̓xΜ,4}H2%F2?xsQvM!'iPz6ON樐'g"~8lt/2%Ft*,v~םZ`㾶Kwe(n$`=}ڦ;b^2ֽߗg@X^~DCSu@EhiՇ c#SL*Ftyw+u=#l.,eiÃ)Pka l0_FZs4c)va $Ds4t": Ú:V[b%kKDq eD*s^;acuOif3jY8 Ix'haPI'n`z|Hvzͷ,N3 (!WGh" 9rC2k̳C6w$̯py>b9%&{; O.7/`po- ꖉ?cS—ACv;FW\Diek>1-.Z{DW7O ?)6 3;C (JujfZs6wCc 2u|E-3?/pdK4čٹ..y ԨI_ 4A4h@ZR:=W;e F@BM*%$AzϦGAV?$4GmJMSv5HAZn@:k>AF!hu潂I{?z`@6>}|9GHΓ hNP~B)Rʩڲ<{g׊T_BǘOK{.C= Y/ 6_k'f7V Uȭ|] A5H~d=Wo%Tֶ~ ͇!/}h>yH.\d]>U2.%pGKnY珟h]$phL#ÄtF:5DAekfGZ7lx0E$aG۞7~e0ίPxp_$n$UÓ6`a5F;[uX&,X[Ys[ICEWסme6Wbҋ9/m(v[̙2G Qϑ`hzx90&`G@XE5vUMU]RYk9lE ZCk&Vªrn̶Fr2xwdat8HփG^3\;z;I9"VOojZVQ;I.{bW?D" ^|h@9 )O>pGiEdrM6_[ӈ]=-VDWS#Gq-zRۘi T~!z҉,P)!r.'*pՊM z>C3:‚rLw1 ~C(a]ORņ圧Tfb ْdO3I*|\,Dtgc.j2yaTǷ*.ob aT9*f&o'Xr!# YgO^ ҖJ`#69ʵLߢ;:{H}f}Ra̺&d/'|Lۣe:`qRDL?!g9DonZ; !7]jRuѰr{OV5db֔Om/F]}J g\أo6~c,ڲɰ@sYp!'&'R?S,OEkTeLh*%=\dNE<q0'NC Uqj@ :֕9J0ʠR`0+DWL+'p1w#ڈ~{/B)= O0@dAh*pcuӢGc?萰"d;&2uW=aaq*""+GU!C7um't٨=pfA(  CB]O%0k=5 Ol_$G/ȅ($М|7z[/ˮ*d<ԥՠ,9Il.,=[Ⱉl6A;Y#nM bi5#>Y.QxsCXHرTWf2NOvV1yj,3UXm`T#t<) ե~ pb,m0֡Ekg|lj1[rjXAmo I)o,˝'__GK Ӡ7_pB 4n7rYw㨿ְ͂1OoČt'{D \KX]ן!E^%+0nS|VBH(J33jm5/U#dҁGw ką@ ?Y@vtm^!)IfgM4pö+&ZTр]Z~-jQEWraXL`3CVΥXbql4MxJ!C+Rafrj?y'K;O(152@5ZS[ y4;LLAHΕ('yz#LV.cZR =ں'^4M@vߕf |w7LP@/M F=(.7J:2"X1?Xj}v+{ʘAAwόN5iKfrgKa}ސ:@/o_wIt* qc[!tm =gtQw}{fABinjNJUI9Cw.B@L!8)^ |;Pb?Eu!OK*S%]~IgIQ ӏwWX8;dM)X`@t(?Eћ(-}UDvHEw֢4d6;Py@,'))poHџxta;xa 69Oά+p -nw9%(CxvP*NsJ#Y[v^CѓK.o@F)_ΙS-62l֣ [hޡچV%8^dmQ7Q%I` u6mLIAhh)u%-"/) ˽ `a k%A\uzׯ`n?U^"ia8&.Rj1(bD[<7tC[as,om49ݝUϲR@fl_%ŀrVBQEF˸T :N_eWW6C%?H' 0Ȳ*6k&HD^$C@?`}Z8&1NpIbW,VƋ-jĴ;ozs'b׌!Urq͢QϞL0f̀*w3+% ­oGѳ\&.{*r󊋈h 1,N#ϻt 0e *atfWmlGɓ q~ڐ.{81"}!Ր BOaI/--b}i{/YJQ[qGvJoHsѢV( f߫ML t+ o+C48Bc]<ؗ_>{^LX5ݧ#y%}րjiUhS:1GxT 9xײwC'I[mɄ|_|EuY^"dtY!9rGlowxxIcRnmo| [Ñ+iދoC@$[\N <4!(*/y,f-\x᚝ ^tD2U(M78~ ߊMa,ew4%O;NBU&vwN/=YTNc #~H9x!<}{Eȣm/J!)ss0a.y[p"?26xE:o8,ȣ$ N8tv^-8Δf,-kIޤf?};ӘAO9 bf.w?{yk4mrHܭ- +U* GS%HڨIqr>ˋf<ڨuh8 l`1Py0R࿤5E?v_ sY2o lfޖMǘlj#mĔRkb98ч+/3P2\@l>NKtl> R6|ݽ. ZbU`8=Ή5%uPGra<|ҏy$j!Uge_4-qS`""-B~Ȁߢ7ζ|YT\'ӺCx-Θm>c~3#Mt`gyolvr0P<>J8ƺz`Sa,Rux2 ;5O(-*Q"J;s4DT;bZK,mG~ vtͳV!ۖz\t!A#ۘBmja'- \ q6]Ұt@gDJ^Hݪ~V ?kSC,y{J<]d*7a۟ kk~1p`#$䢎+ ( |fl*h`t u h.aq1QA\ q"׃EN--Xo~yJjaE+k&Lŷ7u\̯Rmƙ,̿s3Yo(z@Y?ڻZG?;(W)8Xw}}c4%3ߌv~*ls+VftpҙI7ùC}eGm-¨V8l5fhֻ5*u`,( a{/e[gt30Ie 굔(`iﺤF'.ɗƒbI>m 1{KI1բJ^qD$c$7HGv SH7<,e ズ.$Җ݇hZif<Ļ@k~XSE. #LF:I>,j:N+du!aV"kԄ1oGDq- -_۸mfCFy#8zWf_OIa!B-ƋY䡼] ?#֚s<|;#ɬO(f}~%t!НG!<<{fťJ8EuG7R >DƎwulJSsSl%2=?q[\t?/q%YncCt!{tR}ԻTK.᫑2wH=n^~\F>A,ۣy32!aL6Dz'b^l<$7}1!̦})YaZ Bj]6[O tV/ ʳ4ߑym"SohcX}2up'2Vjnsa"bogVJw6}:d߈?xv,~-As'RSR5D%B\i#11xQXyePW.+vuc[!f *jxN\ aZ<ueDS푺iA+Ns5tV&<%hx,dϻ_7vFͦ<ɨEb-%nHXW;y44)\xdlvhZ =ݠA(H-=x&=cL|-YFVK`Rj6 mGGlH[SmmL6#XQ06VuGipd5${qwAgڪ?Q|)Ae6ER0E($xk)"m9 .zVa#纈@붻,Be8 7xWN]Mo?~-6QNYE!|Sjֆv\\]HTt-' !k;x^7yƝGiĶ9\_-vt&I hȱrz2Ĩ6XzZfJ::Jl\,JOeҝ7(3D֨?K,8od<7ԴTۙ*L,lM"HVRuUwU`4ny &~_g3ۊ?6:9s$XQ|MY5Bah-bNaMy?eR/6BM.ny[@_Se@W1dM taB `j'IJslFM5hJʹm Z 6HLO90΁+JZ]l=a$ i_GA&]XCfr{$b,:"^$Ͻͧ!"ϱ'v QI?3zujA15|fa\fh+R)'|B7C^F&SE2U&l\el`0K”N*:9h(Ba}؀bZ%J;cIn0xDꛫġb[j+]ǘz[iDms퉇 c0/S:u Ȯ}g!S ZtlsH>ܝ F3((1ٌ݀o ~RaEΕr{b@İzq 'd,W "yD[^c nDѴLNż:œHmAϮz@cMꧾŌ˂QOٸjB`w*)r$k 0T%qm"c9'|090f/XsmN+#ds\]j}$fdȀibCT#$m-ĪK!O,bK*o*Qu2s9,͜~A^DjIP,OP|%, h1h/Q:OI){zK~>Yos+ǚ+2`z §dfKI.fkO;6 ba,+ϭ[˗]hw"3;@Ϭ4ژvo*Tc8X3ZPֲb̈́*4DWY;w˦籧`LkXY;( ,;,y&͐㫐<_p ۍӮ|1 IIS7ဣ${K ]1k3Vg9<tPς&!PE[N7o$ݜ a5ӌ8'%!:kѕ[}?[xT7t.ɺ;9Y/" ءծM_ANTP7+*ivb]kҗ76MI '߼|񥕣}'҆*lcP$" ahBɗiet?jamAecxՆ !* F/E@A-!A|8~?1s\<<ӗs1xF=sҌtÇE^T2[[#>Wj,At%2 x|o;&ЮxL,7\&) Zzko6T΀W?*9de+5j>{0ﯛ? h3nt-𳆆٧'7-eOGA8 :\ RX?yP7K޿lXK0  i%{z!R/yc6hn"~/ZWd)FhoAk>$JGZ ;fı¨(%w%Gp01v*Nmݣc#~x1m۟v'B,h@QL𷵎ݔ}HRGѱ浗 ،kٿͰؖN#NUQKFз"z6+E߳s4#v9j:RHhZ@i7)-%9F Qg8+2gqe_CTJXkr}G#3:CHe)v{ԕg~/>ۋ8>Odҗ0nswwB`I]<U 4!No~EP[;\7Ո ҷ{?ÜqCHcd,(h5D6KP0dm7V&]څ7LE<.<%f^L0yzGqfՔpY ChLdIݮ2bLSm]<ܔAR7o̹A"mjh@茠{"LjEZ]7jE`YM1^&XA-/b gwF|-ҿpR-M 'lH$O9`o~d(f*mZvYO-|c,Y^KV2'BZ)1lmxDK#\DWs.\4~b#Vf/fX8̓?a-ap<-o-T[W-HAh,[C^h{,Q)Njk;B}ep_&yW% Pr"oպdpfPjO( sh3&E/ӈL<,hMR>T klHRegeH؅*sNÃsԿq%)-d/ʾ>v)- } @Y9|:h|29]^$N6K8C߱J*C2]G=b,q.7ΛHV>#0U5x:itո)<7~, ž`މjp!+JcoA;6ǼWuG_ Rc-cXiQ\aE!W7%_zOEoÏn|d)JOwbDt75mo#(.k 6=/cYAqT (Ͱ;|q?$;3WF2,6D.k=[l璦q IxAQvyS"^s|oK_ej3<[Q.:5 Z4;G v%§_8$UQQZYmpJ㣣Q CD<2V @)` eZ΁%%TzmlZm"l_9>ݛyer(#PA vRɽׅa~QU8Bnb|J c Mdi$/ SRE|56ƞ@p&We«Z*Φ~S2?!iO{󢁶wѐ:i$ HmmT  $@ $xPH".BA@?8 &^IL]x4`Rn |IHx 1ɚy~,&HVhۤ'B(UZ!R.֢ |;ZbO{+02=1"cQ $f87F(HjCXi(NWr`fNW?D>J'-:$AT@@.GA0_A!jy6/Tĭ8$kBkJ3^Wq=8+O%9"JS]GWj<2Jwh[? b ;B48=,kAQgJz'U>T;LWZo:,'j/-.^\JtCUL#McBA#hvR?v;ڢAW&,BJwwEcV`\Wċ*:JmRb<8J} scm;հuej{}^ v\"kxDrBI~U3 PHx.[;d9Eda j&kQ<|~,h(i߱BYCŘ7w7:JrpIv&8\d`(ξRr9;SzGC9z^!Ex|8 kz,G7y*iʁpl*ٴקYMs&1|6_um6q,BN0{G>JgSNj ;*aǾlo2utFdmxoSw} Vg~QNZzv)YB1wZ#@a1t0 MDäzt8|ٜw"FEUC#bM_m!oNjWe-vrcr\4j]yL.5;OH=ȩFFIyg<`⟱tyQSzZ1n~X%ݥȌ4dĵ.{޼[3 sQq?Dy<^MG8)qxO_@[HR 8D"8Nji _\Ε7kG!a yݦi1nsTʤrY(zXC-YZ,YeSzZҰo>gN5sp)6̡yT x3yҊOMlF/PdU @+(rdpiE 'h 1M[O#Q6dۆ˥hj=S2|?_Дf>t 阷 :wzōualyDPXa)\Hd=֔%+i8:3;Rdi3C*ivϠ:k]wX;m#ӝI.cYx.Vz ~Ddǚ >f#94 mqhÛO#ǽ㍤_N-tcpMwϚ+TрK4ls&RVJC+ >y=(vG% <=2-:kEgS n!s6:=WO͝#4F73!r+ OY;K_O%t*]UJ1Ѝ oFBn ++FG#{u#3Q=DGBB1I:huX,ک'Qu']vULQyA.[5TEhwMmFu|h(Bۚ*V =10yw[]j]Й3 \e':XHU\ԨiӢO$iV\ӵ)l0,j1v[ ;_-aJZp!.u6 'w >bsfԚϭFܒSQd0N0 RU^F)jqΫMEq#?k1le׷fa8]O~)u[]&Oqq9~~km0U|z );t So׵veBōĩD1Ӓ7 "laKc$+RY#L XvF|A҃(D>mY,0v 12N vᰛ?{c}3 (A%5@N45j9G]Yg/=Lt{?^U #B UK-tc`߶zč-tf+x22)ޢ/8+ Q8[Rf0_<7*p1ȧPeE~<:,rd@dL6ЖD]nN vGe_ tX="U#E[I?=йX斞A;1;P-@KNߥa`Gwmx2grm% =)2:t$|5a吠X43騋0wZ.l Z:Yq<@0#`3_\9`Ov8zca]g#? O]ÎDe|؟2lMx|<1(riDr=LhW' 좸y[sQ9@;Q 7ldʴ(+CYk͛NnYa@ߪ8960+K`(np TDf j &ʇ[=mC3AOSj" Z }=NR'J`nW] ybx39¿]BnѸѵyr4 q-:×LB(<#2Xau`fD_uv$/!yiCoNf>=;윌yFJĔcc!2OoL`ǚ.UܶSbu#|2\}vkTږ/#T$c#J싈pG3$OR]!t L HDK4ѨkކM1*$[]$Wm]Cj=e"8$5 gfI.>Ytx: cHdeG@SbAd\M5PJrE4,6Iy%@8 R\ ߆{mYC!J8_Y`sLJ)?z%ǝGY|'ii{Q+U+[yHJ6hŬ4+Q٢N$̒ͦLQ=I,t<@VTk}dkd{w}#lh7!t)v'LܵHkS'tÕ7Ouif̴FbkeQg&BEN ms lه捩;JbvںV&\&)"+WTRc([LOM{7 kp #Uj|O f݋qg2Hygʌѭ*8GIęR0\E]s܋sfoߑpxxRAQ]NoCvtH+"j_[5eq/A%O"wU 30?kODޗ,", !Tvr{cUIM 4s"ޞx,ju?PhЀs)hΑ+trd}][5fH QL;(yڌe։O mBUX*S2A̝ gժ2Q˓z̉dgW㛦Ek,u9\|?0U[vX&bx;e%OLzt26R\d]edL92`qiـWFa}o:3(+`*KǺr )|4nGOg׍TM/f+ܞi(M7ECj 7ߖ Z FF<27u1s[qm:[VŽ!Joã׮/lLgu*MWJ55劝[Q9$ɥ3>E:OgĐcxGiΊ~Yhzk)AE(<2He3 Q5(&ȔDH׭"l biy$N?/" f+|OkuN./ mx$T@۾/_ߜ!"D;̐$lk]?l? ,ak;5,k>\(3q.:ÄS_[egdȂ;pp4U )Yw!W$a3{4)dS4ԱXn_#8V ?SF8yT''M6 mBospJ ̞B|D LI*4SY Ѿ6'QjcН6C&|Z"yOz2`-MeQu2cqG>Yu 1S@)P>^QIt/u-[UBccAYH3RI֧{sw!oⰒg23 m|hϷ,H̗9[ip`T.H_|B;@rβ Iwl,) gۿ~Q-tX_ 0Ri`=Y7$> GYt {0妪.-;g Dz%c(y0chD@LbI$ }%N DFL\/-X c)19ڱBٓqEĔ T&;gϑhօ?# 4(X@ 3Sb&=S^wY&'ٽTMe5zN0zEQf+=_=%0ɷOQ"tz HeFP^$8r")y6^sĽO`5@_f&~±R bHdr> -Z9aڥ#4Ƭ9ô =r`!Fd.;BuN{X\ U9@c)i^ta'.MA?b/r4sx>9H ׻VlsZl̐"G޿G"@珊dTUyBZ`r"w.bBΐ#Z<&>I @)G|W!-Qq1 V~x;Z nVurыmlVT\|T$$V>Vs}ZXC3ܣL_g h);k-:,B:=d?` L\*1$h? - 1h\r#UJbSC{n]\Su=J^FݮE [>DvX8f'ߨaT!2maeČ@{ c]fDZ5$3ȗ+[3< 5pW3)p|Ѻ\~h)HSQjӯJ{"8ehM/P~Y$UHYӑM?NJ+ʽe /`?fTՙlG)B%dh5c+ݱD}SZ/RSROӀl5̚Kؓ%0\t%1َju~/iR B;r6+yȊboPhQP K(Օ=&Ǡe޾z ({x?9j}m8AE^d":C1dE/0gD4ƾ)IEf]*quGNȜ+fѥSyAk-n#')!92?qLх!kcRj26zmm!,޶DNG/^׵qֶ;`*ĹQ8rT=)qRo`aT={>egطS5`zEbFM~DnWΪ ;=2EŪG&2䖅\Iqj_/: e $2壜\B*C27TS\JëvSS^' sCo/*-Wm}օMK%=f^7JdDh$ʌ*:|3rm~%* le ytbWLs~/S #uyD<̟WFVN&02Y4Miu$$L|µU6c3{8i s&<0o+#SՕTM"c19s`3bڽ2h%]z a{͆H8ůBF+QRgI])_B([ C:?l0GYq kVr\_~M D]XtffМEK='0 tEd@ )YaVr$45SVtn[fJaƄ8hfN(╤΃ a}/¸7t* {D pWVE$F1`cޕ Ieo/ʏȣZ.@Rş{u=µE96nד'7SA:UFUU zۿ{WI9Ի@nuQɊ1a3ĝ[Г[2uxrmP%tZ>0ԭCm^SS3f`%P\r30V@$2[4r] ٳf2o`7xH{[J%~Zsu|X/@x4W(윛dyR5VJX2`w-zqٝgrF~#ӘF-}x} WA<<쳏͋HASX#0btǷ޶V٭zj#ݱS-^fmv8VN!>)o? ?&[`pd)AĘjᥳ&ǯ~JXԧKQCCqJ/r_]DyH&1폤X9۸I8*73N"=`+N &!x\iK7ɀzcշXvVXHvȈzbu,̑ ڃ٠TO$< LNlzu?s5x;F(4ɒ|dhTSk-@8YfFA^ri1:'n cw ;zhhT3q Av>Yy@R]jUS!X]+B𡝲#;Z[4c4kG{|U[mJ q%Lj(mgfhN"}Z$E=6?$5HlG^5'!Tq`6R]>г/VbxhSD$&R x sGۇ0- u ON4['E~wu/LHU5.VQ;VB!#VT4MnR/c>D@'sFZSxr!Yͨy¡@2*nv#|0׏)NT)*_2Ɛ{<^ 㳬73eT$o^A=!"@08[I)aǑZE`zXfW fITy6tb{XsD ./$A*ܡzncoJLFǒ{(cyE:uԳfGt0*5'HoS74u x26ўؽ ~1-i7t C} *~hAf5GE9*Ez~y\G%v<ԗRc+]Q^/@ZCOzF-NMF6Day\FAzC8Kx Ƿ\Z$vN+Tk-[6l,g}i ml|5yR9҂P\|/vLFr=3sɥ|kʆm3O. ^&pn@#\F-L1z6Zς?012lcXT1+_"_v06}!jv;BUmrnSs.HK0ŮuY,i{Hݵ+-'rB8~*$J3_k{3/lHbrJc nܳ#u = ..g27&ᶯ%p Hh ԲobҜ!ip WZUoM)s#KiC || Tvq9'yj%^&4gfE~z9f?i/S+'!3v*U,g v_|zn8Pz]4*qmUu;+oo ~{9.檱v2[SuhݛV\ ˙^`dH?xw ^n#`;l`EZ-XR;4 (Rs||L2{ 壏'fi\\ͳHyH!N_67 '9vmEຣR`s0}'J RSԻmDrS^ BqC"ҿ,GL+~P6~a.Ba9Oz,mS}*nBy󍰁)s\̓uXpOVw'.M@9 l~$`")_ABniEmCT" t W?W-سhThn-/. h3= $`B|$h?('7$Qk6f9oP nvc?Ty XC(y=emkB\$)C2xW1;R[QRH G#1H1a5aoՙ8VT 9⿿ h[MdeRҙ9Zs޸Sh^n᫋YjۿEAak]lJ&hhq2erH}+ oc$(cGkE#)2t];;^{bhڜM|%kO}Q0h}y@`Dz6ɖO "?D=` An?"Lw>}W5u8U'{Kn`Gn'Oq)i&sE5AXFRQd vSS %_ȉY<. rk1v)"fx>3i/PSȶ|E@U6AXbYπ 6{M3b T3S""^J`gɘGp6c^4tT(~|* Ga)g2Ho{MVjB\ǺjcL&̏2x$wR@W*T3U]-<:O"%ɘF@efgLzjgO.ױ J^ʟI'E4Q p zr;hZ^ ]VPKbJč}';"` P,>{Úƹ?;2G§}, 0q7Lh/%KӴa aA!);D6PݢVpfkQkY$nt%AoX`LE0a]o)\q~V{)7UoQ|qQ[1~he妫X:)2+y+59j*4Us`${%VsՕ:A.5Cf'ؐ$0Y^ȿlp܄5ޭֻŘ+d!2q|=E}S; 3]~@]TpgW yE$K//}&޺iVR#@}@ =_=bm e|> -8`H5m `Lr1XF{ǖD7Ca g{՝KjВmvF%!!}oإOd-H~Y P2jxNǧbgӋoRt:b1qT(l|ag;y&_zv+@s=vZ\X밇0! kAM@82_2:7qcf?e5+B<#HFnc#v׃AEn˚=צf5 n|}J>6>,v7NׂK{B U)Pˍo@@D#%BdGLPș\+fdXxgNdf}MRp3=DEe$['.]5BYU~L'PpE*qoɷ_ Hk[NDC+X!;l jV\ȇESwhP٩!(0D w)vp@kydħ!&QplL)Zw; 3fe$N%zO 48 $gӜrfD2?E ># 0o•tk6WlwebCN,K%T(\K5"zńlsgkK¸IOG«t:klXw=U~=$O Y Qy*-phBPߠcNAnnS q$5Uvj i̾O3R}ʤ49j6业@i@a%fj făUU8]=pe^S"&(SQ]@0J TF{&OSn0"d:{BߢbY[ lMg. MiT 9 eRrl=ۘKK*U3ZA>:_LgIwM> 5 =tD^V C _v@D1E€VD0W<l|$^|'NeG, ek=8.'䭯+XɄgg(P8!4ls(Rک`dQD 7@mG㩉Iޒ)]5먗t]43Uʺ: Oz6*)$5,Y@mj #dK1%T}*8pwʾk~˶z|YS*J(9" mD.*, Gc |ViAbbuaG5Ht'mʙG]UҮ-KNjy}"ث?q]d4ߪy;RrY. JH5X;p^j)ɸQ>aKE׃=b)@R"L" qx!`TNOdC~+Vc!yi HƉJ#|KYm/2{)\E"r3C050]a2@3mLBbZFS 80@n:}+1NRqnTޭ]q:1<`[Z5cY3h`hL [PT pɳVY [N5;1{Ug (:y4s0& Js!)+^KtJ\oBގ{ N5=7 ?I io-f1m?*.ni)z#/ù} sn`2pymE;S $@s8G"-i( n4BkpOTxߋKI LhUCyRBh[ȁKTVf$k(6ظ ~,RCb 9da[OjZLjT\]+$bk_0Ϟ?;q{𖥤Xl-vGLXk /l~V t֚arv^lC]${D T)˓eY`+όK8rB!ccJݮ)|'Q^4=RB$شݖ\AHvGfAרansp.U[ q"z,;6A|矍F%{j8Fի-Z(H؈˥pkӞV(o)qS݂j驴YIp|Bc_v h`zP]O >ixrwPۜ rJ*݇;jaqjnwVpoYh)XUTf/R)K֯1O'*a]n ttC"1љ%R*!hBu(. /ũZKʘy7u$پ53Y#Ot.Y^jU˩W"%IcQҘmT `\ޞu}Cل Q?gfMՖTYF~z[N#LiS}QS<)`*s}N8$q@ J&$08hFפ{ްݾV bJn|v&"=_S[g4mTN\̶ B0(K <9UxQ,|54~:'җ:KvGY(&{PAt2ӧܸ,1֡G[Vx+n+}Ձ $qHxkȑ?~ހ`ex{4gNl D, w& Jer8[bot*E68`Ia'7"MUѸh0'"J<Т^mzEK>'M) z@ŽWY2۲K4'z#QJZ5zf `<6CY}־N?;5L )~ʣ{YOkoYlY%[rEy!(Xodszd`%L} Kޑ%`FN!\mfzݠLEpOc! `<|<9rE<@xb=Tii}[mW|s]7''[k+k1oK9O^],ILk>a H~R͡Μ?-~$T K,Xќn7Ξtq/9<ٔ̕F!1L*e iOS7'uqц>艀-~Y?@M ]`üОS鋊c5娌Fv(.s6<bevAd`c!s*+ܒQbceҬ J0zݡ`8%7KVg xF >o,:g"u|^TMxt\_B/-G7gI 1&+ k̏.~\b,g`YWBU k9 f|n <-kc@uhdp׾?۸  無q׊avt=YYQB6ml Vú2.${x{T"xP72y|5B]dXzlyF.H ˂N@YbQFᠾ Oz*V255 p%}-՝XIEJ5H#Qm愢N{F283^BHmD8ڜ5!~p`k9!s .+nj?R"lWp<w !Ҡ@!xԐt2\COctM7%(t۪ a>G^Ͷmrܬ$zԠO7 xiIG@`&ª4*9䤦oc&pĶЋb(m٤8dizFӸ{ϣ;_4,'tAA|K,>r"J7LNMFʫ W}!IٝO>"G0cE2k獩%nF+\udw$۱N1>@mHׁoIxHv;uw`"c*-̱l5rkw J? =tf\ys0qay%kg(_͌lM`/Dg9ФtV8t~ڞY'i<-K([Xyx*_QIA];{# ­J)x9M"Mw5fMRQ4d$HʣT{4֡%Tv8;ƈV|k)5ِ?j7K"f1!CQ.ʍ jۻ-^&)9]V|mgMMЮcH8 ,(QQa<}0Y6,]dudZj٪Kay`븏R]JMD=)R z/wux,4(xV#]ÿ*OLlr6cuav;0ii{hɚZ 'VR$" ڨ_BAI7?U] Hnݑ_U]sIdN5ax˖2xMr0cH?&MԠ IX/f ;% ?:>&5R D۞yuOYthsb+E&+Q&.D]+KRÝG9%fHU}z^p{cK{ =T O?>UauH@nÆQ|ZeA FG a5Z{ xrOf|WL4{kLM'z^煕f 1нԾ[lyOB1i4\Q _CqM-`;6ׂƨQ%+Q6m4z:&HpʮHci@ R M+ Ac:{y> PEȢn'4Pڎ%o I+:W|?5VET]@psuse5S^3@ o#\J ) !d;={}0 ݆kL6&#8LH;RxQP#) Sߧ]a3\f5w|Yi/i%aX9v듛q(v]T#GRXq潳yDzRC;gRGz%"+" 5=w=›d lcwEřrw$5˰aO8G 8K˗!NjA1<͵;˱Ɋ`'pCWp%l^}qF>|3j3ՄHa.s]v] 0=rŻMQ%,CwOCỦĤ~sDǫ&#,S u|"09t/ 4p4\&'lNCtQ%a/j–i(X#:wه!Y)0nqk 1z 3@yשG bоSo8!+>@/  lV*McծhLB ƶI=W/LƓ)E-$~:/Ƀ7 hqtFsiru5S2G YM]C?tsً- zbJEpPeV'ObvG@$'t!g7JUe[hDeCH+%#gXg~\q eayX5($n/ۧE])SSkquK֋EDCP #2wAqG0~b;.6z8I:00Q|)nS-))3*-9&箴K3Zb{g,D3ά a)|-APZvD|eǀ*;c Uw)iD %[+.@ qus5q%?7]by}r@_F4/F l7 q8y@qe]2f*PQ&k?mɖbL7+( I&ޟctF\v~]KUwX]clkOQH!m~< _Ǝsc =̕!Θʉ˾k”:(D*bRIr]6R  t @ 1L> 3tl~SXޒWuzqOɧf6{j*G:t3"RmzQ-%Zgqgh# _譣L;`xK >}BC$:L@/?ttT^ _:Q)=o #pTl"ΞI1\ӶE{{mu1s?kp;&V­mb//ȉǖmHT ] Ffx{p;ŏz 5M`OVӱ52+h$TưzN{tj_( `LB^MCAΛliٯ?A_3*eγs9sdQdLGx=4G$+$Yaօa5XpoHlT5kG] !tf<)zώPBUU6N ZVp emߎe!*tMѿVc#[T|!փ:qjvu2רy%iaI/JJo n0UP> maY6@ꓔ 7?y(SpG>uԨ!D(;(dVZpzd`{TH>+OC^\Eܙ F 'Bi~(!a-9ۻ?Y x+xPӷe5 /@)fPڮ' 8b ߥD.SWpdls>|isQU FgC,(ٽCϫ*?^#9f)l?mL]3N# CNbU&pJa\{݂,%EXJAgLPy(J9;u6#|CCHhf,Pi7 G=SPg_i0& ?!Us՟zPMWm G'$ ,j2ou>$_bOX&qPdXG(5bF1-CfLxIBvYIP n*qr/n cJ"a Q ]}S5fv)Lci Q#&_\eP@ph"p6ʗ=(m2FiOyVYCd"9O7;Qkܚc ]y~p\w?W[Z] oŁf־4B%φ]053rX[W><&0aG `YkO!!DRsA0F*z{2Xl̀tZ}gO8C:T^G~I)55txבwƆ"/OAMdk 2xo?,+;3ȁq&=jdI#K L!0챗ν 袅ҁ0 =%scKv }㘂`S$m ^{d~A+NHتq+MU+ۘ"xnq" !Ϥ <\OIF~>E>6ܺGP/`)Y:ge4)I_+7F俫1]$~TJw>\|ֽ:Єz_HЍ sa6oCx@d4(<)=wK5W Gobs7JqK5RعMoQ5䜶# >J=^f>']dY?zHYSMyMRݾ&L]Fc,ژ!QMĄFҾM[Szk{k"SsPdAT\ъK3Cnqu/P$BLuc!?6=(B{K[Za^^f/pk a8mx#0X?<tL%qOn?TnOE= ]CRY:^]i:E7h EӖCS @ȟf/VE|4mKf\*3>Ay/Z΂=m?G[u#\J0v8)fZ Di9 0<3ߛ8n W6g 5[l֞5NMo/e>bO ʆ_&.1O ЏgPl`IJLJh${B*T.F*W"!t`and<͕CvAMmMg9c!H<ƅ.tD[zz2߄B%Ԟ^A(%n隠ϊDڭ[6qtHzҊ@{g&E1giӜ)N"ȔCduy%PߠO;O/ԇ1_=l|_R?A`xȜxurJi` bKONBf/[\FDFOK1#LOךL1/qf]7SΦAg>F(by ez+eJvjy:@œ;KaId#&Ŗձ*%\hU{#d)sIXCbф4j5 )"m8gԿui=7򼓅s7cNFN"={܎,xz %c-/|ݖ\*D }@Z$8w|^]i@B%cdFE'8):o˖GeSwE Ĝ1W:SuL95z_f)8kr A|֡Q=or!֕$jH3_X<4MUamL 0(y',/F>s:>/<*c=G> C"Mgq#^j'J[Iٹj3sj]c.۴!?O6p*ѳ 6thG>Oq4HȢcdJJ03}?' >gwޭā=J||cOؘJWqPҒ!VcO_*wOleF`1gve"2qGJVkaVl)oa8 t2̣XWm!?oq%pРS{HPcJ.=nԘ'Nگ$ 9£GƢ6r9A0-j|~&5S}E)#MP4V픱UnDULVbѷu7(wߎ;d$5K=4ҌMf,0p(yH4opq'l"|¢UNηLlָQ (Ja#>'驄fdB~xHY$*3u[!q!Wt̠.gÀOV-wͶyNsS?J*E;+Y51pd8/p}q{QpoSƶpghHKؕ{k*`jBm-X.#MNyr΢ ?j@03<)bMvТdKsr(=lu`[ s,`ě'%R؃MV,ɢAGo O6i8n~=YC zuN{MʬfW9U^B3?3CQroC!{H 'A{~Q .?yk[bhC3&P|i 's0Z1ˠ( d&\;Zo4Vkqaל7KbDk4̿v: Z,zcHVUZ*`穓>Mu!>Y(|Y !F_ מMvl9;dT9M!R1TO[oxe 3$D>ʃ?nXc qŁ(.d =f|;gG,|ȟAQQ\۸k~KZkWkz҃4[^_kkTq@oбvKNW!"p|+@dz` _'BZ:^eY=CG^2~+Pew-)@|Gg)OVW+r9k *9+**7Tޭk=6[CBGe.b`4}XEh8 K+fh.Q(]k@> `>Ԁr/;@Ѓk nq{i*^K-uȟg*=;!YXSV>; ſwp7TK\ɤJeuCikx ?"ڝQ)nnSjy4_WʖCN) !ՙ6a.t%U贖0B~(eN~\vyݒtTrd)ʾ-VslaQ= ڪצsL"ѐL=o~O:J_9T _0D~8q*5iU8 |/ʕj_ M>r^DД:]Wq_\iU#fj7;y9%yCNha GF1N\ .%ץiy x;V#ݤ{͖oBcrgD`5Dp' [7N³w lȥS 8Q /xDA1)]6:yAciX49fchop{ó_۾qg}F=E5b%1a >@y-Bst$~D4, ~g[e/i+`h#|&4Z:&w ֙[?/K A1p5 |ZoS2_E;rmLymϑ&ֈ;fmADًW_lHg WosASw;< kNe2P ^ֱpOR .v} Yb_S K9,M?+6{n/26CLkuQ($q|]^%fEh)їzur՞GYJ6zi.LU(] 2SݍE!igD0im=5LG>U"i^N'GOŖ5p NM^d`-k[AJ0GV﯈fhYեoY&3 !؞!\Kyz}O#`kv]F]?p|)k0<_y!6gKw9/Ed5TS%v%Zs8RA4?=̼)~Jm`Ȟ`5P]@&{,3T[jEëUuP_? w:%Ts)E*:g(i棯ZA-z6/` t5T"w݆՗g @qj-cww0'%BH ,@jb·G(#ȏq6dQa- ޯ w\gH?s`/#סûBwAi_Oà}=INw*<9")lUec Q C6ЂCV ޡ1ߊ5EgUʪpmz_+մlY䏭zh[38v[)7?+@_ܜT=688eϷEG>p[~pa4T@M jCy3JD RU9C$Z CwE G5"?y{D>H sئ<::ɽY+I 3Wc" ?r@=mCx5-iTVc;5/t2g݄uSDAI^+ 0,>;g%+gXe:˹;*$rXI= W4rZzQt 5p'V`n\X\~5ouq#o-M㜮>WbHeVG qɗWP:?&/'#Add*l$(12(\uY:= (bif629\PX}&K}`B"tƚa|ܾ}w_s, Bc؃b\at`|˿/j,XpF } ZKxa`[!~*>ILUǾpeKڽJQlI"lE-׸&ēw}>Vm}m@)X "tc*g Q vRuO]7#!j2`HDT>f9i74zl(l%tڛ%b V#j0~L,z6AadYn Rl.[ tH]^DGz³d^ :Y*>>Եdj/.OWwT(Z D !@җ 6BIs!0xNLNnm89tzoUm[%wJ ʣ u}c7]y]θ s'deLspU5 tמ2dYB|X! \j\fʪ︥D0Ƥ.^ v:O[m>$;:Jwz JrVx8Exg7}"BR:w~ ]ZCmm_ 78jyW087-`O>d?+"_<[T9Z.BeIʖWYECr5*1!O}/"Q,bG c8Đ bD!W @"y)_fi (|4zZO}"2N输iWRdwZӾeF`3S hVtWϫֱ6%!Eo_Rj=<.ݹP}<<;Ԙ%)dIQw5җ}vs@AX}xL35ޛ+Sя5 '{v4zKGݠ=ewkxFX]V*[6_ט=疄9 d)KJ|'A{E0  *$[8s/}%5f2El.5@~ג4kX֏}nuI5kE鏠;}X" FӊVyl9k N%=Vݦ{0q8.R΃f㏀}0#o0`k>BuX.IFe}f6iOzt*`j 6݀= i[#u 0ɮR/nَt,hx^"1Tt_mSCu IcTmtz!J\ ~&ɱ:ǘF=*ᰉ W"TbzoRP_ͥ5bΩUet-I۽;qDNg$#xm`VIiFrBCRR>YmL}uqQgsÌRոE'PruA'i{NIs |7qb I/ up&^ ϓG[} %PYnVN~ o[fe4%At Xetʀ|U:@ 2pp"մA#Jy\3j@x?M+퐔:Y;qşHCwqϲh=gУA5~'af]:zh #0A>6kyﲝl@̴]j&QTyh^EL7nM!0آ5ptv} dqyoQ7ȡ#Ϲ=M8!쳮$ d5?&`֐aI)fG@0̦ؐb^A)Xm{bqY(-b\r Z)h. FfY\ʤ qA> #2>̀Ĝ5es% G޸9SYl~ |K?bwDZFЄuRPTilB DjثQa>^B*`UTlg<y[TU\G#88H%DS(D +D3j^(\yF-Zlz7]W6Q4Gc"(PB !{jd=Zeff.>H|M|Ȗ9IJ}N5C%GTʓ5]3_-*9vW2ϘȞP%_0n71W̐e{joŰCP}Iȝ=HB%c ?nbpnˎRλCZafmzIBTEتC~qYPU=nɥ6ޏC(}m1&z5D'Y">y~<ͱnnl^..8KRa+R۟~e_I/K1 TaZ̆akw=6t{ F:NclnhZ@,f#=t9Wɚaa:3,d!~tT@cWŮM|RŻ6 IN$q[q66E'={l0 V޷TUe$5OJ޵ug"HؓUpK_f~o&CJx>G{Na\WQoVVr+TGb_ ))jPaۊXmRp^RQW;k:RG Ll(1qݥl^VV BP?N1g8ECx711= (m, ץa6\qt mfsw8ߔ:㸞K}{i{Wr(Ćӓ4ծ9w ; 5$l@v; 7޷a`-f@hdbVЦz*fƼ8Z|Uk>4qe$jx8}|onkE:87^ds=AjKՠ(=e~ŴjXǚJ eūb깯xRh|=@\VHUQH"Ikkn&'Ux1bhtn@ {ՕJ8؀ո1xQ٫ hޥ{їFk9C{=>npf݌RƶwRe23rP"bndD>'lb[lxrMä##(t*RH# ah _{%j+j14҈Zx+4nЏKW*gw^|d rVE]&ĤpauhZl?-~-F|_&,v"z+z[b˜%eʁ^Ծ#SG&y8|!wHhmA^ .糀Ź-c9+#E}m?W̌ m%u`\ohi0»vW,RxxIwzdZ_A4?4ij"D0IpK%WBr^hӔ{MX#0nj^Nr< 77m{x/BL 5ڮ\@> qX s=H I5#N.Cr j-mSqrudEJ[m.68Y$n2650M{kDkX+M)kIpq;;Hm̐5VϘm !/6"Hn% p _fgT0N.8.+=)E=iY=̨)PzG(jK.i !6Z[iKWy>BEh˚mjx,r]ŭƪ&mT1]"4Tm;\v`;A"&r|zv6cRVS?:6AA?+$(?֞7A`@ ~Qr3X*~[bȴ΍\!"n[rؾPnB[wtpmcG- #= wS;^L0r5jq  c{ŧ=#-8`6# CB_mjՔ?y@c }kP7 CRWkT]R&\gK#>e#i$D oYHr ҐJM繝>I[j<v:ʗ_k$(sgW߻)vMIx:א}d[ !N_[ Iks jXaMw{7d?,6 }tIR`5 ,0bhOw#.k%LLugꛍEQs6) WF5z@.H>ot6^Y>Vg'oϔܸ`n"ZHFbr%-yUa*lSG¡PDb-ٸl/C|׻y5_"rP\ӳh\?q h-}RG\CQ-x/wo:~u-\]" ӨUkfMY6wkكdP\Rzo/;%j1]=D ({%O- 1Hh?E_ʪ`nԃLD撤63 TzA΍Hx=N d}j`=]l'] wa)PD^sT KLM˦=d/%C{`"~& q7: ].C 2 ىdP'ߛ$CmԨok=w͓kAj , od|DmOn ڑX<4{We`/qaj42!j e>J' ]-:vi_V_ZKsc%'A #E`(Ȳ`FjC BåB h{hMV&B>I˾ڛs 㞼b>Λ(jew;)?94R'qTx;xBpq0Qb"\edl #!Mf0.s@*u_5߄gBoae!BnXH{N;'Mftp}0A51XGGG8 Ȕ٘.q \^UPʦahLgVH'!M1*e+J [ t$'G}u&ԂB @B]N(+3O[b+ %@nҤ/ϤG  {%V!bٚ- nQq >tr=;[)^ʋ" . ^_kmz'/LBR̖^Cߥ-]tqzOb/]_ #LlY1zŊ(1iT lS] }i#ҚĘHOɧS)-Ǿp&v+|.L)>C]2L: &/VJk*iԽog7(~;>$Zl  2P,ĸj/#cf"{|ChԿ7cJZf–U̅Fуy,t-zWK\_V&As4ു\z4pzBvّY8Jn6')*)rSzNXrkQ Cqe0qY$Fh7LGXW$Qm]%2,/FzN lEQQu+A+𢝤 ş-&B1fy2+갎 6syx!n3)GʼT<b<R.dHL.P "{ZrP^$Bxwi3 G 0K:mUos7&/3ٝ}?6' HВ5!o9ɳ WqrwNifY]${2|RuܳSPGV<)Tp`Qc"!7>#w-wIϿO'"Fa78i69&Uਇdזtd7Ö|42p.InjÙ'<bAWΆ_9)EYݨb\wL~ !&[vx2:Y^n)MQcqDҎtG+S#lxПiUmhz;K@`GEcGX D7 Ԋ\FE>$8 3G IMJ5Ol3a^Yq(KzhU ?"v>ƨ>b+G%[UXf>ތyCBhǫ>!GJY!OIrmJNc{5G;uoN4h c)*pEj \0N/k@>5im23CD6 ʸ5TtsKRQE_v@{uM]ە*kVKzS3ބtց"#wEY*ɫ& Gy՞%N#ܟ ݵ{S5[b:)2XZW%= {Aԉ{ /he`lu@#}|f6Ni ۍ=sT(- D _$YΚ _e:w":e Qe-#d{weu3`GBuπ6M,b.X,g_paһDm 9&\|>7.PY⊤BiqziLI{Xw\%cP>/+,lt\0w`s2Q/}1p^PUm7)TNے[O/v\+ܹ s;Rx"#\K,pR͑Jrį >q$NDe3pej7ݑIx/TIV&ۅjZzSSF`.S1)6׆]<%2B}L߳PqeI*-@;^O3yaꎜyYeϮ"C\`|)y(89] H ~KJ!gUׂLN8?9[DT%67Qe~J^ 1-@2Ă` 0+{LD;b둰jJIW &L Ŝfsr6QJcLg*#XFtT3ݝV=xB^uOCOS#qIj!0=\7w }3;@0P-4+WĀJ1 D^)O7k_jE6hȳcOEWHRar* /ڔ=Q6.\NΜI;լԩ|~sx*J -͘;n43lajRfѢ 7mA+_p#ŧJ:Oت#wfL%>$KlmXs );I m"aߙ|m_'|' e } 6/..) !-]z=@؁~}U·m֥lR`qMn]ndԂ; ͸H,zKb B+1]=anxYD^2sj_'b=auWN$6 PXpY~\<6K7 ZiXOj';7+)Qz@+@v}ߪHA=$T e4KaȦr!QdQڴK\Hu,fkKEY?wE =_URwپj֐ ÓQXyWz%6+qJn/T0R֒\hrC 58&~c͆W/iQa()X%zmBU~ 礢,蓰?жR9?407*\FHDއRg' yVډ$_ko?.*k3-N^f8  ;Au7(?+<$E{15lIkRIm)Z?ULVI% `rˍr6m8>|!pJfޣ$c׎@Lnܪh R^w|ᕙjQ;+vT^[V*>;uC\k)/ܹ,W 42W)Z,lG Y-@K5..YB}kKZE L WV@$ٕgEQ9w A?l sBt;߄;,?P2`RN]"#e|1ŌmxR%'JK5tG_団ʞܭ9P|rH(>sRFȤHC7s?Aa@.\a)w Ui9V9KP]3#ae^  )6kSi !رD朩ժ-dM cx:Fok, ;?މ4N1VQs8m+?=q5vwMO0K*XKC3c0Gt޲~eQ)hЇf`;%!;3J²wHvGϬ'+?qBB]U_i_F X%lqƯ>o̿\dZ38-#?7nݺ 'gD4J t9 2؁46#ka4\$>3َhG}dpB({ b1ñm6M9y{P FV+g ҼXDm wqMhfyGjQ-FM>$84v udiCiJP0"q^ ٲ,DB=Q.VmB<:Ōo8Z*65+Cqr#IH=Un-IP0> KaNԯ&lAǦPB 4a_VN3mGޱQ܍#!I,ZJa/&sʃI~2S:(> i}1w?_4꒪n6R݂'5%/WҩͣeEyMK94X$ﱷVa#/E>lkG & =gX ~/ V|D<1ʣֿ;H\#}LZon /e?jF  Q0Ҍ4S1 7f:#1&BݽK4ae8Oc<4l\A)udp9D\l}Pyq,CS,Na%@_XV%,.|Gv5c[o4h]|TP"{+w8?P&.j}y#o ܗh)-Qğ5]ߧsr p$6KbE_vXgsY$ :cKOU}hp/xٵAVP|Vj*_GbAʈA;xs6_Ƅ&HFfȼMEi- h5}IȚq&l1rXY$#\@zQ{;״E^ JL LN.Ԕ0 ǚ lc&&nI);hx`2Dx*Iy tzgK J y$Fijiao!ue XzwY g!ݻZAoȚٹhaԃ A*;qz6>85+MZ3[H^6kgQLN7`gNakNc0YJ1Y7Y,R7jp"w _t=ie+XV8>:JHGeIUBK3c9jLAUGmm$O^R' q=j$>$J$Kӫ- wuemEP54W7_XSI!ln.&ٴl!R2XTŴ FœL?W ę?ڡ?Yio':PQFI1OYp2970nk[yZV x*"]y 6^M|]ϗ UEMExЦ`ǣc<6x1T̿:WI`1ZI'[#$ŅaIQo~;㜌 {'n ) ׿PO[Ӛ$3$b_67]EBA#z|RJft7ޜVFZWzrxW2qSx)4P܌4&/uqF@z =pCDcgmmŽݹ֗i}VSN&c+гꇷ5M2Kl.Soy/´Q4*|2Nq%0mjTtQ7[tX,B.*`fQLW֙hGԊZƔ,oOM=HnTX ˹jDz=GG(DCUٿ± %`2 y^2UΧBZb]LjU1OOp1!$]x Ya!t%ї Z7a%4 $؃c+Yj.!Wo~ɗNaXWFRIRm'g}WcA6ೣ EpF8.\e@q5uUJijVG%`mHOru*}eJKбτwtAϥ.p׍¡xJ~iDJ!E/s?f,MόVi[uMY=7NZ/#e&C2DJvuELBwI#TMEEW \.G01vmᗩERPeׄL!J=D<-طW8{\ԵsUP HԥL0D3gC= W{d9"4҃y'hDhV^[[:̔ha`ÃsU)IS[i*궝T z}y^YuްsCK>h̸r}ZgAEgM# pȾa YC<-!7FԨ)ŏ*{'}DYV*>j*h* & D}V>ݘWaT*\\B3<7 ۪|~X#WǮhxY OFw<:4e~ٻoL J5w{Δk``i-XRɠRD2ld$IUW#&t/ʃZG~ۈq{e2A{y2\|&,K sX吟S~;S~K`?YLKaw!UIX~Keb?v@؇xKh-JDwk$$`, s<}3 ߅=zcvڃXU\ ÿa`B-)Ul̷LfƠK ]PߒkU$x$FogpX^ ~qI@ܦ=)AP*4VjTR\eq@UUGk9jx4"RXEՇ2#&>/Gdma{\#yŽT,q[q"wiLSW̨*IN E_wڐV=)dŪ$ql-{匷6]L5=ys9rt˷EV͟?~{>Xr!sF+q9oeV({?dC0%Ȑv?N s飛 ۵G]W$v9׉nn4"ڳ@o<։IiSgAf+ B;d-b"2GhAJ! Pa,-*H v\HP v*Tcq%[Azu&!.DrF+61(.gbx/(*{0po:)[I=I M*7j`~ItĂZ9xwc=~? JxΘt<6Ğ?ݕ1'p˟4:ye_EU aWThϽsv0&ߋ6B@}Q]EYƕG wcH]Ei)y(ڥdj0a>xRֲP}>OOq7pGfd»e# cQrF5:+΋GT6썝-\2Gss +_LSp+#ή.j!k>AlVbAIB`*$+!qE-L chSW bkXRͪ=yck'<"2/E]c59mugncy>~0w|zx=Z>9%@ٔBX~EERFu -ס3$[α@bZDݘ7'v, vR,C!&$QE* KL3.4j$]= 5KV 8&PQSzз="0/)# R_N ȃqevN eK FgfH/S5]UP"4#`)kP1.1oA2=,? kr1V'\]([^)GVJL 'f=RivQV&H=2$?Wrj@x+sh/󔒮$uH.|0?jf$6Gv,.>MyMO(|( +ö$TA|PG7էEEkPy"粘uJp\'#uX#k؈fظhsIzkTf0|8$rnUgJeSٙ81UKϪ}`m~jpPY. ` ."My%]zjt 9FARty"(Mv~-3A9EP6tC] =R-@A8gK}=a UxKdU͔ ζq7VD-S@ k/GŪ6/$^eG߯ &Fwi>-Ǡ{F9J </ 2/_JrT0˻ );9 +-Ǐ*+1AұhlEcOR6$tf¢(Nb|2uJ,r@soyx(~X)[L kˢBt-Y,YYtK2kt[$DqQR!NG8:Yи_꟏X~%y f%/Q(&ײv 6lN5;J.~mRnJ \/_NStBR9 7znK*e QЬr2):vC)q2!@-' :^[~E `q5nh>rם87۟C?PbLQff)"%\Juh?EPmָLA0C&0=1~M,'Ay#R]L6LbxJO~ڮ:;XfNfE}3'GclLiڵöٜaǵ 9RR#bTg %ي@ϬaWm=wq!=w) 쥚8و ݔm S%Ns0'ڲzԿNЕе!q |:x?:߹# UݦGn ܝȵ?&hf1ߜvp~QߔKV*EwV龏^5q5x|Cc<0 E m#?:i <,SdZLuؔ-ܫ] k4扎Զk9(~SӾj`^P#;[%JR2U_<@cu]9 ]w=p/;A)Nf|Wv?JeLht偶 T.ߵ>6]Q:v6EB:D}sK?uJdFι{©jKŹ$9ɐ"o|ڴ7uޠ TYkb"@Ja[)a$g ~ ˡ ;ܷDRtXĄ9):6[2!]yN1{2>YX"U;\Rv Z wqCߊeDz#5&7?WcCtw\Th,-BSm2o2"&_2}\iX{׭yuV>Ϧ ,??G|xYvs e:MvFxO4'^&%$163VH &&烠KCRg!klAPN)G6 ADb\'Ƞ^y 6;iw-Su ic/'чFxo:_I?J؏ zvՀqUi[AmDjvF,mױ1p%f&X0QJh¢w/+D^%F9P#AO4P$¹H\b]-'۾> LQ9CЁg=ҝrg/r[ KÝ=Hj;5vcӍ~J{r}H(0)'\p&щT1=do"Y#طv ׭V!',ǎ,gtIg ϔ]'~{zC CNrectW4w+"2}9_ y(?dU@ʍDdF<2${<Eɽ4VH_VƠ̮?cץ2$$XSʝ'A{A{utq+.1zE۴,E4DDmH~EES[JǕIo0tDphXN5K_B JSʜ1[3ԑB& Pqf *3tçj'NNJvp$W"r$׭LZ`6}g`&%Z>M o(jZލh=\*v^b&@ bUq-)`<٧ʵ19{k|,#|a>9,6L=W,C-ۡPGu%lBY3drΩ,BfzHr@Qy.|0ǟ tO4DAHq+3IsQzU{lȮZ{ۧv@z( l@:d#Vv[,D-d!:@\kN I"K%1cZ7P4PRYb۴dզIQ Uf|1,+\|l V3ԲdE9[+@$_Fʠ5P>''jKz*M 叏d=yUsw~D>* xY54\!ΥV+( !yeY\c6wmm`KU={}@p^?q}fA-b1!b"~lQɴ (F7 C[̓.j[AJ_++5v%5w]xB AlC:CsDTv?rZ+ >S+6b)mNE>2/]-qȐKeyZc h2=4Pi {i ~^jtI i)F)?vh ̷R%Z9 ؊Va`rQQӍ% N'k /?Ʂ @a @gs C͍=MJt73 d!>b7<,=EJ ol v0&coRٜqP`e#yh g;0ORJٱ!$ob+rkOkCcX]Tj4 h5BP"|Z&,KLM'--P2h4ή+OQmIdNRMx5@VB]n3Q^D咋k92>"'vhqDŽL3i{^Q$SXbSr^Z]-׾#NOѷsêY*3M腙deZN8j\0&J aFWKU/%yS-U&\bP$xSL<􈚄 ضD).l>ez.;YLg-Xx5. Z$2Ӟ m:AVFRj5رjI{C0ZٳݸFO4 vxMc!bek;6 AV@~faP3yKZ+iuoj =C\?={xba3GUc/X 4L_”OC'3pa\U*8YQiΎtJK!rj%KtN ,i+ӱX/\wpYU=m35^`I8-HV@M9C/Ux1$,y`䷬̸ҁ=.Kt+Cͼ&aZ?fD ._gm8mV|; #x[X6Bs8D*gE\w6ƼӉ-􁅃1X{*Þ}%PjwБhn3gK b9a,|۫ |L{W h*5!= ]rnzlcdSoI*q>&~G=XRdbؑ5HYPpbUѲ]6=k}ᓂ. 1`}h:A\>\$yn,5mDaҏcX;4gQB$uzBd=nBb 5qkD|<{lTuٝDW ˼sB)6]͕l!u6ytI3'&40OO2^I>:߸hA.^1R!93qݕ8H'rAvRdsp'9THi:|7tRh2?C75莫 f}&H߇~$(U7">%"t&n5BF,ֽFRA}_z <4!n`"դSiծׂPlu:5ҕm9tv*"jZ^Qrx(,v]W:1F3GHß/ 4r U#9X\Ξ!8\1Tg|WGQ9N`z豛$J^QǙ){76EPɬyYB.9'lC6<8w^ 'p$UM[؛S-GCƍ?~Xs@oeфs'UnL-|\ۊuWM>_OBd6Ahh<'2c=ae"ڃ w bRAoHpV2_l|}~ eVEdHVjR~]b!X1o@j'f%*S<^ RtLK4FQIpFBUXjեٍ́Rߵ¢&2Lv~PӅtS?D.g3|iYb"v= S`ipbacoк^M\'>?! R]~Ng 0=~iv'Mˋ(1vvvDju=X!C!qBFugYqfNk!grYYRѓ7Ӹo6!48DDKb$gsش QL IuMZ89iaz%p6X =.~e__^Fp3m {Ĭ׏dܗ1xi,eS@74}lRM0wܥ3.3Rfxn}8{kȯ2O=l훢guL9/{"{#edD>?J#zSD'Sp Kn/;,.`=רF3 F8l6u!UÌ<iN25szDPegﲶ:CPjN Kԡ4y9h3 RՀ {пQb\㵝c,tj *o2Hmx9⃟^4n]P9r lXFYDa_34׶ld *'sHoV=5+F,sE)<&mfifݔ{`3HTz@L#Ƹ,%2̻ 1 zwV OD.23VX1/=)8H X"gN$r*$^JBaKf#G,=wiodNY;\r>uja鍐gq2rR1iN9R |VlN^₸S46#:{Z"rrדD5$"p84`zwO6]gu̲Mc(g 猱PP=P7hkW@=a~}R TUEWY]%EQ&GFgșt3# -)`bÏNr(ת*1Ť*YwICT_&&=?7Rת3&E fTV x$E V`qJEE9빤ϙ"g.b<gOucyDwvyNH[pZtٽwL8|(^&em|:#Q]'sL'l:%Krbݦ0j 4n)V{5!MoD+dm?]vŴngAPLP| c#SS i_;K40(_JH}T+[q>Zr{('AU<%E등hV"L mx-ZL척O nf~`Ep}\û6ޮ2 AJK/zlWuZvo sKR\~mnOg}gLyR6F{4sJE)WR Tm@YbB2eH;q-6qan P\;l3$Ů˯D鑕҅`ޱ:vH- &Q%1U#eب86mOO1!pfϥ®U(!ך澹ffM) g KsN/ogTfGj9 x ZR f4xG.ZTŜEg!`5B28RQ%zf[}#m%e)RVYv;$_SBrF;vig}S%拎'H"nۀ6cPR;m;UgJ'b& YwjBI]LߥYYmn5-$ R !84$#kZ#n(lPdR5 !yjDs%w"uvg&64W5k0(ڐ&軒 p?EtdꇞRLJ-HKF*0fVot䨧lIWs,(Mk*oY26dAA"7RgG!%,mi.@.R%'{o ߧ! g9VtO xWvfqV]em? ~oH<4{JNe9ԙV1<UsȨYQ8Bw!D͞:gpt}\5O;Kf.BXh[[F6ޡ!PylqIV7|s +:KMc%J' )aY*IǙx?,tZ+3 ;ͦ)auI@#׉o0+.g{mՂ:,`M1SWI'|dktoT!e$ S¢t"EcIf)E*$@6]H>OjYh~/Z{\>[2L>GvVj4'^YrZ<.|k8ħfWX͂/]iͭEs8[QH9}%\M$uQjb*\ikJ_p.OVkŃ$<%j5|Fg*i {5*-,LtBF!'NʿIcmBʉ`̸d0b.1-Mn_LdmW6%ڼ#lBأTU=-\&TdIZ妑tm<3֫$ϱ\YCJqQWR:~Lu脍J-2Q `ƀءL0 ޙ,<,KjVFePC ž  SxצDsG*.uSQ7& b}NEm;a]fpROHdWI77{rD_[=۫RѣLfO&'q,uѮXX!tݷg8>j+Ż%j9hghq5 wB-‘fՋFSr9Pf}x-ҞK#8N þGfXİ$!~\x[>a(Ep6)S_`f88C/mcx&^$Ti rZʙ>9=A?\;j؍ JD\eÅb7q>|dDkf7/IӔD@9lF[eN⾍Es?;o: '6#z= @ִٗfPeD@Xw;M15+t"'{7ձrO_~~D:UHeCZ`KIAG,h)ؔ  ,+pd =ޛR/9 L>F2=Pf\ھE/n BÎQ(FNVЫ`v/aBb0p6U@J(vE2#+R!Y(l|ia# Ӿ(zG&y#o#ΐ{ԃ͎OL$>)_[Do(|` c"6!K[N"%q`Vo:η0UP9Ns`M2㼂W+FۿJiQ#lлѯm%C9r&NBw3f;֏4+b:Uooi/^ZT(hɧfa쉩UlYBk*0hj d>a8n9N RjR$QuO]B1ezD͏ qYXfi詝gϟ*g)=3lCɇ(gѕ%钪~j.(G}BY N(sJ2OXV'$mW9!KU褡MJ˶XR\L'cEdTX~@m#si^2~KT WFzW_6QxV~oi'JW',tF0 E'sB^B]G릛v$` 9i:_ 0+}xJ6̧u1r GE?eH.RCM]Bߵ۬z|;PܼGQ-1X}y* ,$& |vs4o҄u=#UU d8%-̔ d'sU`8-dH9_*Bf[ EBizizVB:.$mtZof`bBw"FfjT**Pӊ^hR;}ͳ,q8qlJPti+$ɟ4eX16Qtpqyt& xq*Ux:zS[[T1򴤋ܕ5yLF|iyh4u҂s5޻ʫhLϛ}_r^aIYA|?]2&8g`^ųxFR:+m|Y^j5HݕTŊ&,;15 %ޔZ=u3SIrI10/XY+@Bmpƽ ޘN`AJ[gkLp .7ጇV+?s hFw$♓kË?y_D)OA|C4h߅JOO4\#)R=hI7] I]DUʢ"h/&Xh#|3!vv% {3<ɑ61NӋ7uZ .Y*A4/f e+%/ȝɢX9ʼ k613Zejld\1t\i~CkG7@8&^YQR&5"$J7)!}X1&0@T  򵪻]YZ;v~M#Ϳw'n->eefows"jT *invkx(+PּNIF}^uuD4XzN  Nw@W!P!¹_ًكb,dPkb\4h:%jt.V 12ypY.qih mh%5/&7~;>jA]Tm6\e<|B?!&|]oc^}Y^Vo^O8vc ^U*Lc_)AxO9J t[)lZqچi1:" ";ik?Bc/V qBeUHba^W3 9p3*(Rc";w|6Tecģ<辢VHwJB-:4Sb,đh[t:? []%{OqA>{g> *BITnȿ|L.˦ntK" dX $ĖidmB*̀M}e)T^}P)Ğ "GWpqLEWYiL䑏X<|zzax#r1t; }*%7A]P`m%#bx!޶PՈ"P^e'K].![qleZt\*_qR d~}aX m a=+)& zc x'nܰO$OV^6j,pLR2qMa"nL6(F'.)ܧkr尜MZھѽ3U/>J:Ts'R"LuR{de8fi~[>=>_xpBsCrΪ5+.&#&d/d>6Em+;]H찍XdҋwY,Zt6"nBLe_\ gs<`b٢Q{XE,uRok"&A:\ t(սhhnZ@nc Qc+=Mf(u psY۰Dߏ*g.krJ6Tm7U DvĢq%) x?0KFR+z"vL tt$A\:*^r_ 5OLRY`;ZM"kjZ|!t  "'0n:㰳ymZx[mШs(4_V 3.Q!\wubK`zr=sYBZJi{9&ɫǔs7' `nA*Xs?8_OگTkK`S"oo47cavDŵWw+Ѳuk~;,E)QMsI(sZP!Z-嘺eMAh%6?.45I^w7I>0sQgL!RzƗ;<%qv0F,h,E>- .r̘,~3USx6ui":8aN|@@lb B~eziM\yDmEU.$6{iolkhQJV9/ʲpU3.U׋k):8QPemi?A1ϻh Vp^f?`q~ڊ­Wq7?1 YaOά$Kk*g`w@ BqHg{^ۗޓ2M<On4Olok.i+<z[QthRag}V &m!e$+GGLnBGnȭ,*LZ«u/D4~LYV`Iv!Tbcz@1i88< #Uz2l^^팬65ۄ4\F/s@NC_#kEP"xBu+Ot\ʴK'6[óeщ`+IWy߳"ʈ3|"n'])Cqbvy߻w\|$m%Za#Eu$pW*Ӊ(0+2;uefD*Zp_WɗT) } 6&Dz &>uv@@yKy79@9oiHmn]h[cf͋\R6﹧U\P&6bQNseL{ӇڄSдfv}! (;vYLjyuE*LPZ* PQ{jbƝ" } ;=`-*c|̲Kҽmw~ "kK>JzpR%UmVC7QJqwi3]{4 fo#+=nq xҁa̻ѡfʬTLU[ du8d ۄ- `(Wkϥr8AGv%g&fHօorN?/:-`-0ŷܔ\Cw4~%E>N~NW"4Hzϵm*o2b`=Vcf^ ^)1fa0E3`t+ x.\%l-`hO:s~xve ܿV|`wYے6wI=2Ka%_'iXD{{<[ QXj&kXbxf7 lNYJ0$Cu˼Īri;K 1s2RZ\Wa`V C3f$k W*0 ij:Oa}Eٵyһl[7-I< #.޼ecBl}Rה#=l,{ 3;E}WinЗS~A2RM#*+RL׀Fqn= "$%/|x+.W\c=qsmF",!*Nb\ g:vh ?Rsxږ a?<`xO^ܤpr|Iû|D|Ny&5uN!q,(Q% ! ~^ \B;FM#Ie㛋ϴimJ߰3Fm{?ҕ~rx,oLrC:U |7eb'PbKZBҕPl!Tۤ)JW KD2O/F_š6Z|9 g*>'" (̘'i+{9v!@jh9ۖ*L-$T` nk \ab:KRCZإK?KXRjǧ1:ٽ,X[X\8.M!KrtwL9b4ũ"R(@ fHr>L+G^L9 RJqH7[2;% BFr!d=TKaP$ݔ]; xˤLӠP&z7j)ĺ9Gl,prgxf Q-&StNkcEkW۱@}-׻4Bg5#rgpq*ռ,0!bor s ]_+` vܼ˸"2iޖ+mZ=2a./y;{/ `@"+!ga?sUa I۝TU+U(#`II[nu/T.w0bk@ØyW !,uLu36 /UJaI;) "9,E';$8w*YW83eԠ|TjTy\9JI]揲AVT2c~%n5[?Hl>,'u{~=3渁sս7qdϥNea}g*r8MX I!~oѼt^g4kd߅LH;~u]mٿSX+YOuXFyսс.AR Ux)95=m_oiH^d$yxb7~?H o:Θ,wk4`ўUK4x|O33.Ed>:pܯ0 3x?ʤ:U+ ćƼo_"Bg=m^ӭFdb 7iH+?u\ zpc3 ߒb. n:-JFd3^LQl>B !XL(PM EHw6r'^yxj[0~O.!2$$cVRǢ7قSm8ݽ5G)ɚ%@Tƴ) cɈ9W`LV~Ֆ{XQ6Azފ=/L?ᰵNaj` 8`/p7:S2܀Z֐$T%E |<#.ph*!;ᯛ{JM} swctۻD YGOm|*~M"Iu3 k(䴃=o 2'kd*D kd Fxi<ݍ1q4dۼtPϔr'̧oV2|E`/g&f+(l/Wޗ!怨u%И3ܡ#R_I޳;LSrbLg4:z]_ҳ[û-˜ƣtsz^Ɩ *SJmߡ$kJM+Y~ ={0G%*ljZ* "88AHrUUw<+ KFwmaDx%j#L.VadOn3I3Z=Sm85@2 y5VS 5s[ܡeإ}e a!}Q^*uXXaQ wYºt._+*AFYޚäetn뷱~z,K_.gŠh8#Hj}T&I=HfɜyiUVS1P]A?EFk"e9a(7F?\Bm\&`J7܀%ua0˱\X\1>2<@Tr3'3+`#Slq毪oeb*#*?w|ˡ >H(!qcd`;E'&E `d2 i9i"܌bčkUM\E%c͓h*yuFe@ܺ!PS+=Brm1S-h+@W:ԉ=""7BŁSYW?R^!oopVl'x"' G!}:ٙ'OL)Wn*_;a'J^~SvZU+/ y@f]1ztapa?`V͈0cc +&q?x]qP>10p@" %;_@NѭϴWR$ >C86ZUpuqwSh`{DNΖI/uÝ'u]9"$NO;շ<].Y:ٟg,r$ ?ȉnu(T?ufg.9 zI?OS0{Br4F,1b\sE=pJ7cpw8 >'('tB)T@Y Fhx"o͐緿&*r@;l(6_27qjτȝ3FhuXB#B7^pDRh <O*:}|[0 N (`F*K!"g[AǸg"n:e۩\:*Y^xBJ+}56|RR#"6? n[6y>`7{Vv!\wU&NYkR{d̷DF r4Ϣ9V_=}%Hlrc*', 5c9nDl 'CIrJSR4_C 51XΐU(ՌKD2 $7s\ -#1Y[s/T<Vݏʢ _b ptE^d$~ .g؟헯e\؎?~y @gkѡMQ&؎++JM\EƣiXj@)j1\ hr"ndЦ>2ܒU7Q]J,k<=i;4)5hc= թz]dzR%卂}iTE%b$6Oa*c}>=w_:;[ SR\7 oq7rpaD_S܅attyB(z=Vjc"'t`oy|dbTfZ&w8Lh)(+z9nST-򉌲4f N=;,y1`]JZh6ʲ)``ar!wn*AFy7x9%棞4oшA=AKv$o!@O".߿1 Ȧe}BwT̥`Mg5i tH>7^[CbE!XF[Z#iLhǾ r5Q%JW ћ Q3,(F+ؘJjTW"1rY ROU¶tj/}|=ϑ/847mcpk}@7'"gb1Q) ,~ՆYJ=ZMTQ\:Od~(lV m&\M{>w2RǺ٫?˕0?}`z8)9pCO+O } l[׊N-TH}K̅TC|bbQBїwFxh6. nſ䓉f5/IA7rF@B^Włe`NDZ Q$XQ0i Ķ2+82#4-B/ 7`2|HR-W&Ss^]1T *= tIc<fB0b'bW(c2G<<0n-,TVɘW.ȋ!;}؅֝2򠔱vo5|Vp9}EKj'jnS?ns\QRdz$M?ooZ\-(9 oiͰEs/ʖ{96ǧO$M5{x>ʘ20=aZ4 #_ٓ +6^A*1.,HDzUpwv?mU++?X) &OF!C6p>K"E H lp>fe{iV2є5 L%uŻA P^iS6̈scӤ[h;=fy I٤yTlE/ߕZ#t:TJ1@>e8d' EY}Y(O d۴[a|;K55vvYݡK5Q ^gg ޹˂iP6^л)HZU3gAR@Z P~LHjzV'@\͖wV"pC.1zr*5mQfƾ'lzb@W$ej͜?IOiA2=@0JI.3,'J;P( =p&k{#gVXVQg:t)jmHř4tpXM#A-/&QG^CO3X|\z:{yveX6ю16'D׭+嫯W_ t\`U@$Il' (vDFm;?tʣ*0VV}tQUc[ipfj,Ӂeo0@2ØXNvgp<1B` \[ل@;hR .+n;/CPt4F<(xr}#uhXA`-holBxӎĴ\AˇNa@\C;S.{rg%TKh2z]MőU5#Ү 2ܠ$P[ PkO//̨$&^A =e3̧9Mn8eGP)ھPq_s"k&wHaKXKYӒMicWFx<>wIMouǾQ*SL}Y3VjF }YF/qʼn=@h25O 3i/ciWG5gq=ՌҴ|\C Ds>ҘLXbM`HC0A$8]8l Ct ~y:;( +B17 MdmU~7Sd\,<(2|e8ObRx_) 8{](m!k< Ba6vMEn'2M=JQ j-`TmKBC%;@)YocQT/9qmDC0?zc]"?K.!w8RUMIe 4q~ I|Y[G95@P Fϋs0xie<^hc/Û +o%ۆDc ZUG,lM$[U$h5~aYY3<jid02B ğ+I!:GK;JvCtRk) 5S4u6LὉQw7Ii8rҼ-"7A[W3ɵ8wEhS 1c6ɾyb q[ǗuIF؋3d1Zvވb7=sDoOx\$JsH?EYZIşv)|td7J0UI]/o@ذ))c&aXϾǨ[P'K7CKIy&H hYy~j)ZjoA1{V-m?A="i+Y7裔AG>&4Qo‚âS[R_헏=Q`M."zHie=KRGx\UFcGdv[F%fނq1+7`Dwym[܍dKXpAWq}"Cmw{8n,e}+M6S. a☼+I#fD~ܨj;< #h/sr{]mO/&GͰMs} Tj&njݡj1%j:A!vQmC~QJ7i*g?"kP{@xDD~iRNn`nI.,PZ/bsRKbaa"-"j!Pfdw(Xq4 u~K`ܻH8c!S/29MZҟ幷-46a'8!-c&0"2/q4|z|0vNFik R)d lDB`M(/P2!TMjd"& TavٽZC;wRt讅6o(<]R(ߔzKҧ3މd鏴c -R|V乑Iy*<.Z,24“+/{׬H8 ;eE4Hղan]7GM1>ç y+o y-7; iu3I!hYRA*N:ZxpImy׿ `j 31g30߄ UUznQ(d笶n99ŌG"t _T6yIzWS@6z=ī]%yzT*jiK2:y\fɽqK @8cHl?`)لTn+ц:RN }a youeo4\AdwUr}X/%/^WޱjQ]'?, w=!.Lg#eCoUqYPet5ʊLML6 RlҎo{>CAh8ۉA7`Wx] =7CS涨#̞p$ei.F@9u!4]n ]H'H73I2&A*V,8߫ r.Oq^YQt-VϪAx2˘6!+oٝpI@EϹ\p-vi5 yO䌅F=B-DI2#gUMkYW2L 5G$giz+{QM:opa>2osR.˧#qg@4ŎH}o2cfI6 N'_3}ӬH~EQ?`J4eZ6MӠ_aAC85^cxuP\xBFA(Btaj[/.^}VE^S5caQ1`i6/CSEYvu DH|b>ب=pI8< _ە sʵBxsĈ&_PWF:ZvL\ |р#.:d/4CR]HOHBRjn\FM9qS+kEf!jTHgmiz%}TjR^ͪ`Z@9.hI 5ّ]ّ@Wbm'4FmBo;וpJ K<^D[-ާ2#]{W ȗu'7Xs#qRț^WjMT#-04c`8ur s=yD}Xapc͵|9 =8)?ew4܁MKk)IIUcK+ep0lMmu34jƂ< Hda璐dm?<`GzըN#R,+XnbjGw2_@gnJ2÷ ea塽 mGUUyA`Mcʝ@C:\JQc %7WH @젚C8'CH8G8g :ֹW AK5ĉY2R뢀/j^Dq]F/߶\ i7EhU6ˣnR.&%ӗe! ֚ut`7%]cczb.V 1j+U{: >HϷ16:݃pbʊ8R7 ੰ>[gH`DUCf]Rx@yМ?SSԴD9ҪF+0ӜcAq# T满iv bqҔwE!&Rꧨ1f >3OoVC_h^<78sx6bKp: {Lʃ>69*m\"> =0CN3mA Ҥ0H(c& 8K_A+[Zia.x~ `!mnAJ8ӻzWhc DrsmE@+~#wiOfrֽi2KVdA:|y+KP8}xy^2u]{ $3к90 N!~:pi\ Uނ[E=}S"}3oU K0lѧU0Nw׹֗‹ѶstfI[GL۸pL\Sn`Qg>ZQ#==H P(-OCȝA=^/O^ן!H/z4:oQנ@VFlD`,?`EZ39|e""_$Ts&vԐ=is0fC8St[ ;ȘE-zf~ե; 9L) ͥp#nX@Ί`5&*d̦AT|kѸ?vTOYEASIR\nz/$$d]g7VbnKKG3i;utYe0f 2Vφ6Sv1pEg+^Rҍˆ#'jM*J@Ƹ[`t`Y>8w(m*$z"&pBHHX$:I\uQЀ9m070bpey1hN~`J)x#GU')`_dG(=ق ix >'2L0x%`MDD*};hø٪xf$D}MdϝBdE7&<Y>;XЇ[%X!,ؒ4O7rܴ}ͽw֍0?{kiTT|}nyk-sߛ3~ve_XUyؘG1jS9}s2 ZAF Lu~*i@Bx 降ReҺ],gPҜ~țUq43eY $uw2G6ʿ_@.137qE"-C;Bɑo.S? ;qjFart\lWVTߝr2NhogP Xpk?5ڿDη7RWsPد{VegKX/q-DʭIy+R8m;Olb8Fg\\OxuPk OsFcr&~= :!CxV<*];w$跮=߶Nl&s|l=OJ3[S^ )]>ޥ*!Lh@J3W*X&/NY(R;ߢ J*UO5Z9XQRYM!PE o ^zMdS tT4 7Pq}}3Bv-@7uO86Tj$и"DS;.a ;iF:)FC t-xK M$)Xqnط3ʺsB=ì-LR9nrNsZآW, nn}rQ$rAPl3h8a%=+ٗR9=:vV 'z,Yw0*z{5V H*?ӬfohJ2N$jc/40e-ԆZ1]%h&9eum 2bNө#$WJrqSzz4qnK!B,uZOP R[6P}Q٩RM*,!(bsQMVs arg蚿P4Wpsz|*rB3Z +ɑ#琶LYgAdQͶVg=>V"hXԶ?b+m*%jCϙ%GaꝴsZ'gOGᡌL;'' lOkp+uh:/A}[AOd -v:5XɃ)~~Ɲ֩)9Pzy8gc}p6=P¯*ĹvԔYJ\Y;š*)̀,t#8fehҘl52λ_5IyBT*B1}Y.]sSR;6P2YLL`T )xuHxб,Dۋ=CRQWxGz):~t8VԿFڈio13ENd1)g_߶O+y6ƖӀCm.TFH[+#:΍\@1[g>2Dmrn*Lj&fzZ@t mo mdpه.[t*ċܚKeԶd0"sEeR|+HJ`h~6+}Δrs\5 &R,!/΁c (iiQ.^jC$JkW6 }M9 9p|+R jsˠ w*MIUoqMrU1Wq GފŸ<c >eo?CoeA,kE3qxdz cC]SuEd()a+)&㿂)a. fST:ߒeDfW͖8}:_/{ӏ!oX)¦̔L"2~*hLӤe;׻SQro hl5_ñ>`fߑ4U&3w){PDg5*3 VeǏPes{Pzc7kbzz8ΟUy BY@c*%f4?R|rv@wO%=\b*B\Oa@T9nc<"EL7QMN.W 0)i7u& Ϝv[s:Qꪌ<̅iNGz5TO0s'u ԗRDB*dxjW|.YÂP¶evaŮWw膆OM uR v}ss7 :}vsi]ZD;ϧV#|1z>W`[g$I5eafZ͹qgOfȅGa=|ba(+Dzk&R,%(3YHTK#sUpgbH4NӺa:%ɐIஙJeU>|UTΉ0$!/?u1?4Դ0rS <$PO+ Tk"cгJ9ȉfUrv|Elvyw*POD2:2 \bSCA{G> ].l(/A"g lO|)*dXzY5;hդɄClϨ,ـ c~>7F mMk[]V<;Z7Qo^mB!0 35PKY1 2vǪ̂[">Itoz^Q3XV˝?;ȶ1K*0|h3c2r]:WM)fυ%y6z-z[bϤBcS Q<7!!x" +ml WK /<zrDcu fNp` YlEd#]Nʈ*RB5CDOױ\ dnCaTF֫~gw,oV{|XP<|S6RC'ZCayO'*|JArЖbŞCc (9IUn98ݔn5wƻ0ArWy&yV< QPwl8M"W<6b]Q Oevg.R6O|{N)hճDam*?O'dˑQ/4#89l^8-h`JZ] 81.7VǴ*z19 RdZ J!|}xT>r_pk^UPsc/$T1,O1/-z񮻏@$CO[k-DO6fzna>.\ ҥmqᓁ֨}Y]BR-97YH:XdNg] PL䢼p"^eUʑSHŅCNx,V͒H?bR\-!n;xf6|;%۞>=1-ܙe)Bif⸈_Q#{ v-sI8 k@؅x)r}'d0G#>)m~33"=]b5KwLQTbpzs$}qO/ȰU~HƯ=)ꯏT5Crڮ,P۽SSg~}"@C0`:8obXMCI7q80 $D?qs!1C^f`oCD-ɶ@m7H0.}HS') +0K՜ѡTqk5/P>kYM̏8xǘbDWB?@)mz*? Vؾ,_bs2ϳ ,8MNurx210c#]Mxщ䔗_Z7@$ f|hhu;J7=ӝR\I3>B +0ز+8yX]"58K8_Qns`tÍIHz;)FMX۶0m~L_DWoM{ 3O zXݖfRcZ[_= %=^#yǁ&pBH½!*90v=UD..g*;@ߴH\6M4*^kiY3]m" l/ПWZX\ڧ^o4dӨ+4cP+=$S4 sz%۽IBbdtw|SGQ[ښ:s^gzEEШARSwOe#̕慖9댵gpnZZmT[[+KK;8eDX_4ܽ T1\t!ù;""'6Hq;hؒDY%rH_e򫁃lD^>q'p?";|R@8Q}SE/ʫ+Ct4>;Em2޹PU?HodF {(Ԅc(puKFkf}viuTGW4+ɯ6YZH Q-B[[4V,1l@\m ' 4\ c-fA0r2yBq4Mr6F"$~& {^)*9͸Bɴ_ngf6Ơ'>Z ! }pd00egW5tG$gyE%geЪ"ܔMRPqЫDI% (G?Zӫ#M%NŤfAuD{is:L-|j_i<$3 'VkyǴ&шǁj f~9IiP DD/=ͥn $Hpˁ#*J%+opMZn虭D&it: 6g|T-\t.~YF}F@] C| +i3D̪Q,}7 }D q؟5%-}b7D 7[N7*Zӯ7|~5W b.V72A9+tX11czij2Zd/h؇ȳ|\R ;c 6\Ss<[Q5g֘Χ7֊G9  OnKT fMgz f*fMrm0`F+|q:x 16M0eR2ﶓ3q "$ 0AI_fyjB:%΍U_ҷ9|eOLaLm-r>7ZёE$Mu0eD9*prwnݐ|q?-c r̤]o uc}2ޔR%Cك-'Kx뀉Ұ@]#_?&q&YGm琺hc)|(W<@NH5ء`.t*U~`CI& X?cY]&)[J%$W6iQo[w0;fLq%hpZ9~+$W",3-h$[#]]yԷWޒIU#\`̿zS 𔩎 ZD-1lRe~- >fS{@OKyzO+ͱ:VhixU0,z[+rMk ʑ.*Vrc cxzzmuIW ZSk مYQ[%Usܷ1W&:vkaiz,MdxR#-LX Ր6Q^!!-'hokQ!7ōWeR$ڭ &EmPrth"{isdR) bɇuva,'6YUGaβ1mT.<˹}`Ooy'HQX+W1/i˖Pmr>'u$dpa3rotP:! -J 64Py_.Zp>:!S}>O{YR~ Z>!LaX3sx}J)ly6sCwG04yCW@G`ТՍ{X7S R;t_Wcjx&p}\kSf:| aVaZg+ qڕ||yD"%yU&8ߘ"VkKEr@grxa< t~(S)g6$tudıoJx ]mT{@J$ƴ, jvJiqu7"}l%qq`ǍM 3y0,x|P_ !EM:}Ω t ;M=O!A~N'Pr_pËWbY9n:0ɹ&8o[Z3>!>]V5Xk_Y{ 傰NÆVq&G؞A~IǍ biF*Vur&R zО1.mJϾmcO5?X m g??9_)P{` Ȅva~$jEhͦ^IeI7@vP5޾>Юt)ꚮ})$ %2jgf1T[TI< &$'`q-HDAH;\32icGlR&1\j7zzI0?׾7G3)ǻ,E>Mx*+w%­>HU%Ad/L,4@ }"933U xqˏQwQ-T*yX%s1謟LZ5asLcԹ=^vfЈM?ByL9(붖DEǢ%WTHuQOn 9M Whl;$#uӡ!x8TRl ڸu$>nm4QbVc)ӵ!46ob]8\ ! TAl=Yrߎ9Lv]Y A2æ!9+ϭV&܉RFsFvf1tU%z\xۀ* [Λ(f$CC|MQRM"d< dwyC\ DqeLU<}>bJuLdž& bu5D@CBF!²772|kqdp< kK_yKi>0Ĭ ~5w=յ&E\ -C ̇2J%a 1"| /J 3n NaԨ|mR-f<@PXy~G ;F 9x\7A66R{x b@,?>B}(J;l9-x$_^k:/9ӃKDsB ]WFayРZ?..g%ddVuf OE.Jm&X.alUWvQܱwQۤ"6PpXs5Tc@uB;V ,Enr{e 82tiuBEK8:|Mız(_S/܇#0D߼_g8 pgvlwJg}_Ҥ. z\(W\,9=Z|l 9<ցEYHbZυ+:wmHȎ h#kAխkͼO=Qs0+hHAƵ#;o%FQs'0؄.lz# 8ͭVZYDvOYYK{ 9 gQ _$9< vQ:O[Zl.y 7IT 4?nTDQQEpDf8*t.+oFUBV>GU=w$B}SC!MM ' !tĭO/^\ >ۛ'W,3" >?^fCo-fW|8mjohsfC1LWP4XO?uS 1vEz}irڏM lK.LhvWq7^51bQNp_bÇ% yɾު~!^WmuLڕ&X$/-;N!IҒM4\% WP&P>NmZPHAYS+\ۉl^WPK8|hʅk0Ǻ Kv/R ?E~7ݳ: c^8$YM$J@l; 5ƨu3hC7'x.n)јı*ޮh$|1:n =hhU۔2> l Ox˗/֬S8G8$Ք!~ק0 ~˸B}R8үC[Lڃ/d(ov1]yv14.W63g'97iiqXϜ+w9a(Nku|dW\cEl럶?~\&.4 *-L_6UcN9ÚtMJ 5Joqeqn[ꠢH'r"Xi0AcsJΰmoظQ5ftR!5.(HD@۽MnҭƩY2bP}krH[a-\Ga.ǻ "vU pkuNF筥X %:8CPXV07UXdNbd ت,Xȕ>P8FGGwBp˱²#H 챧UFGmYTkV6o1E em^djC5ܧӄi=EeG SZP@LRhx pPJ[pWm^'`p8c>uYZFچR~ـ8ǙT ǕqSRo22Iyْ,+a=~A.02VOhcژ}׾F GWSx_')gB)Ku:'g꩚CT|}KwS?Ҿ.JW[QdP =oyR8+AK {|88a|5r@qϹ09JBdzuS%6؉iU,Gq^y:-&W˒:ef+(qYpsަ߼ 8dS p|$$18 UG:+ @rK^C0*F5UIz.)(tp|%i2x~xg Tr{ 704m8Vn^ka%U#!Xwb"mYf@/T,[BCqvηtG:ۋwH@e2ژ_*[?P4n %ѐ.SlL/K|?7m~Ч 8RN{g<+KZ BGxw8H~epo0`Ηxu {dIJ,9,KRKY?w1 CS : j}掋-{R`w iĎD9 T~@gֆOV :~!sw?pqHRV+{fb Tv-bYKRi{H: /zd5@RQf[޿ky&mr\oaj4cQNulAnHPhU5 ?Xs0{=%29C eTa~'h G "#Q~gaIYy$p/b9U^odRr)$MZ2")sku`)| x|I'Bd~%Q 5ޮzIAw<,v J} ʆ;πQc`wrm{*R5)OL>H\CtҖ 8e5LQ32׋((,xV&0%i_\7zYm&H9>NVÌosViȍYZc:ˠk䡧Z&(Z ^MRH`z$SJ_< ofĞE^宙+NA8ׯ߆YT=zbj:@f9*lhrL? r 諜ljr!g'fҒwE BG}Yq8XSM 5[w,mx=a* 9=o] %s I֎i 2?O6(\|9VӴ6H(Μcmٱ: >5 m &t~@٫j00J,!])_10w5 O;nA&S)5*&fd}2o&k8|r krHD;l+y]y&S6JX'݉V.&hů:A;6_֣M1,EgK|.*05?b]_/Rz^3.Hc(76Yd&i7uJek -mpPh]xT$ܯ"`DMP+UQ?V*;KuGje<#?k=~sCݨI|ݧO7>6,hu@.|<ȒQ*~Q[\>%sh < d@>JEm.7Way!SZ=34C#>/scWl|"?NB>FCG(OUVT\D)28MOx?ḲDCL]k8a2⦎-cNZv=E^Sd_.M;)?z10t^!9d2ͽcKa;5R%{+Dr!U/Ԏ1m 6JuQ7eGĥNJY圯x#՛ґҽSu.2oֲ 5>0 %ӢdCiaBtEĜq+)⻛:)\ud+,pUmYFIWtpn)b$m W20y3y{SZI/E,^~1^yi`JAX!*(т!(8[#R)cID?F{ P(ShKi6C'tP4Ll.aYŊ1#:YP:|"vI /TTAE[ +Ȯ|@lT9@-狸XO졹Zj3Li Fc9(OSX$(2,%w[|$]q,d+o'T7`MUˬwT5Yk#Z>N %V5;y>eej(\Np,t|'ZydD6:AX"-صD{ou& YE+}.ٱgFQTV*(@S?*_n{)Qp9/P#D(ò;sE'ØyDM ʖ0H!F дpPRyęGP!5~%nٰ&Ai 0KҠdYaǍ.AP=uO+  ;C%w)AH/-2pi$X3Y5]HER>}w$-:u,GSHdtI[;żjRU+bf_ƕف;iV&tP9EPwUs€A~Mu-wB*s]}wωZ\G|8uHJaQ!5?s q=gvd)n(,cm';Ywѥ9|M= $4XRhaˍ/Sk;g?㝝g~Q6x f |!Hkq_uGfY@PZ|xy/"B>FL0- EUup6 $RƚH05l o4X; aR£c,w{ q ^o3kCz/J1v;[u?lAB%f"q=JvYqU1@Y߯6&D 8Db:|[rq"ӄM6B$ BB0R|n"g>Ԭ'#'shix-I !ߺ^qYqr -dE# wif G!L=o} tSXls<gFd{ Y9N"f^oXhifLBoda&9 +)q ꫝf-` i#r엎kePHB0|+jXx }dIk}blOs6tbQp ,f=ݜ|0Ɯ9@0U u-6ʁ:ȹ)+[@  ΘjHu[>h. BHI]1kyb+ /.s/6HNcx=n1Lh8$X{9= fɽLe_.⛘a aH1^<`Oirv ϖB$ 1; xwiFv'$iW]䇅 ) %°oHϯ[M`1ɞ Rg/jq;Um-ț 'Dl[oMs]@;dU6,+%OvTv)t S6{C 'MhL.wjb$<I\H hlaȴ ,w%mosSPY4WiP"BAp[VI d;cY:\3D83il\KQ[l?4fY62пrrğ |K]{, ,ځMoh'КmAARO:ӈ`? {6b  }`P``DEJKj Jixs2c r-TYE ޣ'1P'Zvj/ڧ?Gyiij6,Ij#>y.$p}h Eu֖H]9&)RL9vscڱyP>&>$b?*C{9RfhrarFCcR2`^RÜsRʓ맞nE)Ebև&;l1=U1xg?۾>}&~ṭh+qM޼@F&0qxZ_3*RLQyޑx~e}۴؛olJ:1$uJ}:(@vR/cax?!^u9apWYKbЛƍ鷞Q ĵpXarC L~G&KZeI藈..jERPcdB}1J;#~_^dHYNJk稿-},]3u&7e*4u)1_7f:OU%ݿwpt+drh CnrVXIYo,Pv.{-$)t=S(YsQ?颂9 A}忼ߤ}iۭUhM%a;.LZ{,.1…a#d,|sCO T']_/uF r9>RݖNiq\@jO6оpݹJ.4kު7{ʸE'?A +_w@E []8k,SH!/KV5)aL ߨ-}ɟD3JHGC^:=V{n{+M`j% L>FL8p5$ZBzq;Q6L6wgѢs\1Ť|f*tne :Rx,Ci#F>Px#qBQYt+TuU31s;_=??)$CJʴCJ8xÒv \Kadj< Mi9=\쿈ma!w {n,deM.e~+:(C?F ;NA/M\Y)ൡ)%Ƽ 0MR J⎎I戥!c-+6B\%ō`5c5|_.9wT,8guTr$ϸ^.y8c IW|/ԑ; a]i|&A̼T1}=bmQ>LXI+I>+Hëypyn$6PU8}e\/~Zئ0.IBt8ҋSaF~˔3Ql="%\,^ʼĖo[m]QѲ܍>BDgiMm-C6ՌSMHbpAcwJ1Xm 8}u@/&t(pM0(f8!1Pl&Vk_5Ruuw:Jń)b0R'f)9L¢9u}e- iERg*s'S&B)C}x'cH1Jr}Rf|VA ~@ز}sUk|~/b05c5kr=7+I+;LAE۩K!X ^fܹ֠?\WDWgQ'J77HAl?t))YIɇFSAwS@DbtjYʃeܒ;f~S"" qc?Ҷ? 1u ?)HRyoktf8jݥX*{]v7P’@a@ͲswGO Y" >yov\pfY hzk}0χcw'?38n m8M+#K=)N3PvS ǧ~(-Ƴ&wEO>2X΄\pЙ~⯑l?88@RId?jBav(Ce obRqe—a; N_r_.$ ZθR"Hw% ;<M^̦*dmDpحCah2dI=v6=Ȝ>&w c|i DĸFECNܚk})#ih>M_,t6G:$7hj*Y( SBVt Rd &.=EkUB PpFau{ug e`~t\9ļxbnـ@MB!Azi"H}KG+[Ngӝh͇>(\7i iDH_p)'D!ޯx@UAZWvB:Ua} }EiF6=̣>VREܾsRTصf4`,P%oN^֤%Aȵ'p2:20=x i1e`UH (Xp@gsT7^=:1<]pgORZsJ~C_4&bUgk3bOɝ)t~##APcRwߒe2w@,Rpa蜿W_s2ssZ+SzIJrmON9DoǀffܝD[&FGԺ:N.\~O슃-/{aKyj~Z<¼BwP2q`;P>ߕӤ6HzٖUS[a4 z!qyZ.N64NxFhM}E@fE/I~pFߥԅ{>YL^Yxse~&пB9pc Q.iOtLͺFǎ\)A3Л,M0\}nD Q}ʺT*Y7X"F{ M)X.΄&&%b9'z,1=~(rED\6X.Z/tK|ϓQWON]e%7۠FkG *)z:yh[}GQԙ+umɡGqiC&Dlmf&W޹kε &Ĉ+=(k$-6t9޸ p3^RPuh+ay1}NU7Xv}X+uhL2kճ%bo`rpghL UHMŦ7bfQ/C߲޻X&[ 11I򉪜w4D7_C|P؎ mBYOm'Q pJgR~'ؽhTV^`'yJB#%Q,]'.ڼeU%z$#kfYL%jW#uFM`O`<55H1Bf[W_.4H)t*f\,C n:8KR3 gٮ~XޯwOS pb ГԹD&ߐvclaS][Q0]9G;ݹƥ#q{|iD3=U;&?cxur },ib!c4Ksqh>7]7i-ZmYJo ZMF ;*)Mc\vasZfc-OHYnaDU +<EOA*vʹE%9i|@]8Tnlo bLg;ltŹn%`g[m]qD,;e%([ou#͠>To$a_+rBW!MZn 7]7mAD1 o%0Y\ 8P+QXw}kFZ(''a7k¯'q3?Bj(?"C 7gmOxeR.^UH٩l:sP\oK!1VTXtBJ[q]qɏ6:],uJҺNOGJD*跩2WJP9ݙY)X#,}tTjj`5=XTG>i9cspBs<1Oԟo3G9|N:n_&g$J.ZḌ_ uR sVڣT |iT#m88w9_c)TQ4}bשĪ5l o[.i K'RTx;Ȃѹd a] Ǝ6  MJNoyz?3H4GQvb y-SDܵYfbX<@o)`n0]MQߚͬVp69vm֢.;u 'H>F{|,s '#vQ֖QYh2>1AV#3 EvpVaqX" Zn")b-_DW-,g 5NkBU]?ʍ߱C{U*S")ڽ eŞ./#ٮIфb*U ϶?Jb .*'Ge1 ^&~úh26+ 7(Nd6 8'UxU֏7l}5Զ,}2lrû?A׵!%y+=?h bbxnb7gB $-Tp`A0 N n+5P̐w ZaP̋nK R]e蟾M)t~ ?%]u(2wXU  /3e8As#)@n -!p2RYw|9 ʗv#& >/]8ԽY1q~I[@[> BvwTzX!kKCuIY`._؁1Ӷ~n m_ g* hDuIBǷZ).K ^)vjcNrh|*ק+Ƞ\ N_iǬf5,zxU77a^*c%u&,аXOmClrBP2ÐwB8GhYE9)gJ9O3Pl ~`ҧxʡ@BMCdWQFj'+b鐕)s FM!w]얩Ut,f}V" nڊ&+McQaRZ#gI^ ck{H7ythrڳ3-\:\c5u칗xcy7óGc30N׋Ѡo^{1"d+%gw I('5ݜ rMRƵOٮ"v#}grrM(Þ#֯Vk> %n/9^*7u~ FdI1l u QQhY@<'u=^\NHHuJ]/Ϳx R/P~+쫐p^4npƨ&i&XKCTlWיеHbSp>71d®1s^X|m J3॓q0ͼݾ -;esM c cFAl?eåޮqů+K)ƾĺnƇaRQ7)5-I<(z$rRcWԏtumufo`hk-xJu|.Wu(I?Yqd_= Jܽ=@͓v?Z#4Յ"a1j8D  ĨH$Aa , Vq=?θo5hXi냛G۶.[E;%|W!OJ;/.j3eshMA"9,$gID>nBW7Օ\r5ŷ 0'HrK_^%L&w7pSqԁY(5%c@ͻvf  ,aAڻh0%;ḧ́P{IqEZDXAގ <I n߻&1k8_w3PR̂XHiڻǖ?w:[! M{Y-oǔO>5e٦f5QG#wiF7ߑ_2άoΖV ZN[|yَ F T-v/eGFgmC$.f2.+Bgm%ًm?_Hez.wuMzUzVt.XUVGֶZ?f(-]L)dSg} )`I/>&D}%&e%^|'եq 4_wչ`fxUL]Gy3 B,qޙK vpx/?OH̢z'y QY5n땒 $̞|lS8 @=u 1SR^UK|X@K5n|/UM fsZ3gN3TJZ$>-##6}ՠcW, HYLTT |&w(ESvQo%t+!E'Ez楻86=HJ@s`hQ63Mue(Xƺfq`'ee2 Pv[ڌle;?tR!I9R+|\= ΀ҋFG /vIXoSfZ8ʛf#$zNTSl? dRU&~bwˤk:?MuBi5JUEiT3$>zM*%%XR3v;,.?zot9mzB[5teU"ѱ Ozv?ͼ_anu0̈́N=ȣnJ\_8h}?wl,hQ(Jb:wbJ CA-TUGw,V:/u]R)5n~Q, !owAY77B"๽zz(1PEN`Ƒ ]l0[;xfV}Vb7d {ȸeրR.K0̻F=YV|>IHB Ќ1;VTsgԢkY(`喻TF?SXp8g<ғ\];9Ƈ*DC%8pdˑ/r ?J,k54GOY;B䃼[.}? .lexz< pڢMÙoX,;Br3jQ.ro6]$/=_GB-7E>)*ŭApC[u(kr_-nq{BGeӾ@-߼֑{'/(иb,iCW偎n&¤+8o+EF݂U~ˮ;#Iy湚{!2tIg նЁ͎;!ne;p+/䥔kde<[&22>6WP_g&)~i0L,kwK"Agbѳ1-sgYJLS:ç?zq*DJ3!xO"xk=Ǥ'ڐ^C;D5RϬs.~"P7H|IE)+_8aXJn-k-:tRՂ:J$b\,&e?dƸmѡ2o&"usjX2<[ϘTT|DZ^՚}!vD AwD[F_l~:!}pM1ة#\!:d!Ϡ?=д(L>TՉNIw6XSWO>;UaN@+)m"dcกʮ6 F@-ӖwHlF!v|y}I!NE=Fݱx,vtnl19 ?4':},XU̚Eۆ, (o'S600TI2Ҳp`N!y0P\L=ɒmD>$2ݵ_S + 8~Zv~B`E$2=dy~5M%X(ͶidDl08/B#r6./үJY@Ek|#`tG=8<8:tMEM%Vx[ L .ʅ;mz~r.=:5ww%Aĩ].>LA1:`q5 jw~}J_0TYA*:6ހ9uNyZ>sJ{@]3_ +> &Θ1Pb.70 .+d,tX7VmzuTVQܽ\(Z~ly*@Qx{H>",s1!ً꘠7D2V2i9߭v[ ")lveD"O%^1Kg~d ) o>HOV()zڔw LY:\d dF} 8,j`QI'%7|E Zq3XhS`5܇v<`_}I$R B,3;%އoL+\$>l]s9R'0Z4YfX8UrӼ:(6xF{M*}Y\!Df*0)3.) /A $υ]8l2=dJV!X>vԞ-&Y9X4 1$;D#Kɀ-Ok W "YLq_pYfZ@u\S.}U8Sd3'LyJJYtJox-%UV)*Lʹ q`}L (yi3Jw. Lz=SsN.!|&ΘT1Npl,9N!p?zM$Џi`OO~f sXnHu+}^91gixU1<گq0Kc+$o<܍hzb7ͶO9wDm)O?`Tf6T_dpyF]񿆥' ]@iW 5.~²Qfh{]%{35AJsN<968mqS7#„|^G7W*F8cX:tv[NǮ yK6mEB|9# Y:@]:8G }}9GH?(( #JlYB邞fr,֯lIy/4݌U!^mzk4C]2hE_pl:*Q.EAR%K0m^ìĝ]1ˇ&aU/zCů&2*QrFAE=2LlHB': 1Ź4;TH ,C#Y(-#)՟|LRLp-#_|XI>{ ,lr})|[\x Nm:zw(cZI2gc!"~߰rX |@ m__|*T:-i&8&os (EJiV2EYncMcžGvBR~١2QB*e(:ǀۗ4ɂim<.!Iu/tXvMirvnݏn#χ:V` 5sP[Lydjyu .Ʀ#jct,YS$tg6 meDG'KHj %\4[fL+X:c^)+ 9]xRGsP*Cc}}vCsfIr^)'4\Z4 I Q=kЬNˍUt!Ȣx>^r2$&6ۼӍ<w?@pKs c96!7n6zHH'/ltfo\l:umRʙ:yL(ٮh/e )@Y[7Ca袎w\1e|W>AP= )> H?2q]S5뮇@|f+7`Ȃ;;BϮ ݧx3 4H\aY6と S^X׉%?7?L-U cͨGzvr&5@B-y]up_+{֨GBB-/j@a27ډ?89,]J~w#j3J;ǰbGS0_@!^K3G$Ov]}epk2\͈q,? t'WSJZ!u17|C]cZdXl9ۗt>35XС9!+<5W %8_MUG|'nWO V(zaFdS3acF#O6iv˓G?5O42tn5 AJkx=p\}-w e}&u<<$6-/`ũPEMHBu3/xR 6f#;Y %:ƴ5NxYa+ e8(3xJS%Ac;B#m8B(0dߘm 0L ïA|ZJ q6Q@bxdfǯCYSb,2{2S]",a;~[?a?ovͥѮ5?eW\[z?&o6Yح4Ő/0lC-903ӄՒ(0;aBşaO}`V;X'0YG"nu8!ڦD̦ȜNNZ.Z*`W-lq}5^ E7.X@ |yC+]Q(c$Ex1h#_թϑ`^f9k.tM!zNU 'Ia^\c;ٌ|dSr0pBtر+`L9x/)* "^{RVws>%ik8wJ$j3LcrlYS`(mc2|Tn\3cLN1.Ѥ6?ɥST9bj>&K''U5jh0+l`cO{Tf`b8%gUuݑtUMM3T.3ȼݖ*#^ixp`/Z93[T \)@>\..=l݁ktOnÑ+~׷%Џ2E0r;4*RJߗ<ѹRx~>il3!1zpYaf\4x  E*A7V,ҩ!p+FXʭ&W&'M@_.˄-ЩH&W6'Ϲp3ٙW9B c3+-E?sQ"#7ꁰ ߽>R'f.-,dcM]SXѳp|7r XI'zulˬ1,]u6,.7OǫL* 4ؙn,~ +RA0ԅ:8P 4劍[ݻFaA<'ym`XD{ZZpgSp ԜR5k 8^r(ɐ7'd"ES9RM l'%1]$\~g$U#_\Kav~'~$_H7&槝JcK3FRh;3t@`z͸{+zDBxv}XM6u9)<ϭD`I#ya8 &=߹֔q @Ynh|~j3:u",6Xr:E\+^7; LcӴ=4 u1P4I{ZBg՜u9A4laYx& wڽTx:rQJ%U`陫P o<)6;!) \ݺr}owkz8`RGTn=|[\_P+f t]Xwەy\qQʮs0QYq’KYuYxaYzk!BN6GcysIZX?/Ss_:Qq`*Y\`㋏ǑR3^͈X8*NCR %rP+Bڦߎw5rVxrqg--"D{XUB hg數R ەK:Z)[HLH=r_2"$ 1*fߖS%R]9bu[ e pCZ]-i?Κ88}ͨcP[.4d?ZRY ?!Rc~Yʑ\B/%k }r6M1b`jzG9z#$q0E0*N[ָܱ|oE8AXep! 1)?j|Vdx@ DFqpxsL&BL172!qsYɚMhBuUQ_{#R֯;`HJMak@m\ Ok62IUV^I2@p_ Ox]Wp'8 Irh L: N>B"&:_nCl-%rJ#㈵$\;%A98F+sd6o'$1<#q0Jҙ8kvZsF Db{痝B?N<"I WNhfS:htZ$&]V||GvyWZdƅx?efW0hx[kqz׶xyVӔS*< ^')@Z9& >8ӜLpf_t=Ǎ2CT2C؍W yx$UAt\&dT7ԣ4`-CxE}7lXꉙ^&:@" P磚TG-&= HEㆅk[. QDH-g j.!]>xƆq5Y~o:fXɵ%XLFi'RJ!E&q=(2h)gʰ.Gz!2cź KP dmmVbQPy>X.=G0CAⳳK(}G!2:xqwy-Tbi/#JOfX5@v_SwcyH9/ WBOV^.HsfQ,u%ޝ}+uGH5@o`/Cr UAkl|$>2jT4Ҡm3Itx_wN5 f5^0ۇ&GL$p{ b09az'9t6FP"ձzԉi|RL@T÷B9\񭄒/n,4B(~>P)K2'Dj?\x[Bin AC5 lttH}$ jԵ5Vo69XjBP$Mֆ}7BP1ԁD=U̗V[ٷ:9FoI Ty"fP}DEp#d': ؋" `To6mDU5RCk-s IY`Zblf:)q"`v#g#QNp՛wBbwd`Up::-SI"IscT oUDTM{ұrOkkP.5 opr7l*)d_ uoUj7O'C1^9Ќ(zq`-!K[>>9Egb;^^LhʸU X{`U=˻BK~S\wt59޸!_z|Ͽ5)ٮׅ&P{8@昖lj@h|VͼYy=)O: eQ +S(Kzu"{9HWq@XJLHS+.ZpB1//!kV.K xSR-DR]H 4p8D/0<.VDg.72=* zȮ15=BDg =IQFAq#d0qd"3s tP{ح*[P)I".%)" %+q-p7M䛇$횧dxwСc#t!pr J 0,ڨZЗqFKݚVA7:X2|Fm#|< c'qPC}`y† Elץw :$%{>FUTVS@Ae M = B3܁v*^u'og>h'e ʤ*?A_7.H:g׃;j?&ulWoӊZRp' Y"}yI:#I ?dD< % [M~:p2D&}\۲TÖCo6|+::ECI\v*f[7uYA,dUΖ3} Z7}?\[o_׀&fYlEl@Ou;k3j4Ky٭)jyB:HyYK-UVT@zDELA}*%%pCJ?~m>Wohts7R`f3p0?+Amg3v_zӇc'98a'ȰS61x=0Aw,1`V]gJ1$vD⤸8REn2:b9gWY)V@30U>pM~E=)zN4C6~HX ,DwtPH>-}$^|¬ʚS ΝD%4z!ܭX9h hOφuL=  ˣĕ~ ]y)x){Sr{JwGdBE@ 6(|ZDh.V3O@?ʉHWޞC)&cM*+p%[BSo.u |W.T?shR$v%2,E/hƿn'ZJ igi|HDue~gVI1@m?[..r1vF;zcih>ȴE ]{Ǘ*q'+=.<&mZm(:g#}sU#_Ϲa _5*He#iNP*e4 B )/95=+f)̈$;U+4vOE,q!W>c\Eh Р]h=P0̚Yrߪt+?Hڔ(#X.j 71jg)hCEt?bQ&3~zl_R<ɖMWCŹucNRsOOPM1 ocd/ `-@yܕ /4{$@=Kv''ʥ%-4Z3`_;]{k  ?r ⨗}^U10NDW~,V:w` a{KߤGAg$o#/ Y䯏U}lf̏F楂2,fh%0HMV$ tX."{" B-:3'?XM];BgmB!ը2cbPx a/>=cE;JWہIx O-?<.5-iVDk@CUgi6q-f|.QIqKz:(B\-)=J*Pax}S_QUjEc Ktb.P~,I=糖.ֆ/Jh&Xƣ !6=h'=x4x`^`uNj|f}/+Yl*8{?տІ+5grJ~ATeI_*nMGp#CYEOΫDBzu3Yѧ t-=nPT/xaWaCۜ@ PݰZ0e$TG;ӦJyՉmL%dG*'iNj3qN-v1yѰew)<~f"A<??qr!~T'cA$/*ce1K "YH{KjM0;Ի߂WM)ן8:߮h82-6|*Ɋ [PnT+ȧ]!{xyz! y?Y2@vd0A)}l]?3eӄU+JCXb\̅x ʢ7 Jwi;KDd3AsZ)$חB9\‹Q%SZnq^HyAy}X4]kn&> ncMZ !\!&]"dg4n|VAJ_B.UTR9p)0 )gf N:Ptc[ U~4E3l·k 2>]en7q3<=wD12#j)\T' Re<_BI7]~Jٸ]~V(# $2!D^dqo=1]W%qg@*Lཔ >p$i^%,/Ţ"j֬l!SXZR yW7DؙG9w8;#W#W9kl^T@Xvˈ؄fhc}]/sVFdN7f86KQiHuy*H=/Fh{&h~θr2÷0DȔBMcb!*m|[l&fv0{R7<9>!qYl3iɤq6~\SG| 6S6N\^텨ؔЃ.du̒ssؓdD\&$zjw̟Ȧ}S!_rdă )Tވ};UAJӋzylp:C%G '>݁rTtgk>k'C,pO{x8յ6JaXE 4|457S`w#9HCUzI ~>QaazTw)B$nɜ5^/];Ţ_Uc ˑ,E<8J%7bA* r="?7)seuƣil$]mo P'7;:'P-1{~d"=)8C '-8Gn |&O\e0?ECVZZQ~"Uܗ=$ 5-(QkH?s=pz6P)^{y>|y @! bbѥ5Ci(ey5!be!k<&2"Z}OQ`n(yrF(]I9|L׍Vx щ ?)r-GS =#`zoU7NaMSe3E@`ݷ͙Qw+,5ok,cCa!ēXUcD¦nq_t}|)J+5䀧}?%1 emCvp,$cQ6f#Qu6--#,b`ybincO‚ƳC6 E 9YX<)aЂ0l̈⢭]E^lYeHƹ"cFP# h=m 5vQ&H 9FRc yfBJ"|#Ե/8U3Aږu0.MF#N b}D[5dPZ !Lys-iyv26M~U+qf54뽔4x\O*rIFK}h at;9POFC~-%"e0Qn~ !e۞5Hwk X̒Ѱ[ڧ ieL%#vي&LE΂bupeC3Nr;, Zٙ-th75[{L!9 p(8W\|;!u's˰8nu m 7i d2Z~Hikj3dDDkB I4p'Gegɧ xӔ']soQW6qGeN'-9s7u_7*|D$K[O ׅ>1_n)m cP[zXG?+Za-KKr 3|PP#yT?eJx7,!ҝCT).= >RU7(߉Do .Яؽzhm!Bu˺ [y-ei]L,0jvy-5v߱:094+.C++$&5(֡/%DP jPrt݃)8)Qbύ5mag'J.]_g4[ΈTy3Z\(5jao8QEk|}줉+)jŶ(DKL<$(S:/(W _M=bFblg PH~g'$$ĿIsY.hG?J!=5-<r7?qWZڷڎpV3v!EϘh9S &|\%pZl/̶~̉!HEt^XƔYpū%&V `S h_ž\ < N^7<ŋw#FݮK!ҊFhrLOaKXcT4x,Q ?jl@ٍ)$ .NdQ+ $lzs.<î";pؙmfw“e24bw"<~Jzu8#Ҳ@j] vaCY.3Ȣ!0vQZt .KD|KQDm\Gp3_Q˫_):܂}s@FNuYFF,f!>/%k 3av.1Iڧg޲)hnRfWcAnL~0xG?pVzY;$ΐ^S%va֔v/: *kC_͉ RKs|G b輴Dג9 C[ߑ}*-Ie ,ULm2 [8(,d+]rn-iz'xaoSm'bno?8GJa(o1ىҀ&hɃ'9+rq)ǰ{1YٌٓwXdYeYE~DG4؇$twe) {Ol+Bl?ҪL$dtc1ƹc3{e4/mbT%41`ΰAoyX@ dڒ8ШBT7xXQT=D@Z9[FhbpM5CRuka!g+[g .ڂlLeSdq"SP#hl~Z@PU7 ƉOzBG`N9ҀcX`Zfn@`@ ҕK-l*mF_M)5(ƧE0u7d2t=n$YCCL~o ;2˲_ẃD^zG(؈w7]^t*BhR w4#LS ,l\}a߸#6 >MRr GP-u5)UnsT04596<;a#zG|kTvDm5#ݬdR2<5u/;]##6ҝ!o]e] "5 @re>YJ Xsi>\O>&AՐ~9ח?+0CН,aSa"JT9խ%֟u_'kqF'kgSH{I6|߯!t"YIek6V[@Ld:}@Y=뉃lZ ?NRpsk n1ۨ GQOl/8Ȏi;Œ~?Hj]X_tAw/L~\wUղDFﳠ(NՄ2NH}[YsN%I&\++FɁ Af~6^S'5NP%bP[zYvgd/#(17O"jD7y >G2Z^9q."XjرT/ fC҂B)7f1LSioWTyĤx562~N%}/^ *L~vra SѽJD#lrU L G; LnIń=?^y2Efu)'W|\ĺ]yoe2~s;Ys2|"bu֔ YgB xj8aPW R&_*\BԨRlh-&)Lof4A2fj:R1;,uPoIfEqmF["մڨJi/*$AbL 9:f~l=):59hؚ`Qh]'$H޺K医l,>5MhJE8Z,y0,y@1ei:4je==,+ {*`+p N5XKNALѠMqO WWm,Ϲg|[Qx`KOS'޳n.Ӗ4࿍Pw)zKyؒ|X0)2GJy8nH+B vosر9ьUCH%89P6C4Y}pHб&+H:t"I8Q)juQ?M!%yg'N7qw;ZbnyzX`@xjẂE5< OljeߢVr %J0֍`C\4Zm3-jgn\}2,:l)JWG?^;F4(ЯVe=|7߱SdUvP(;9ZĮx\nY*&}q(act#UXϣL+"¬;l=س7( JXgKGi33JDOpѓoIWmZ)J*4Z:n#p98לUI-zMϖ8p;>)tq YSu`5wC~PA4k~~!{μeu#g 7+Z3 ]X7x#86L٣H;\=bT}ՋFAQ`ٖ> s\Gԍ3CtJ_^`ΖU])FS<|@s*Cypzt``G; B I8N+YַE {u⦊$}ߋ54jGSſek虦t3|p}Rfr/'&Ρ,ag`BFS2R6g{Y0&3{׷,]Eo̻7{6qV( o ve\< XX(eFr.dCM\EYŐ(9rL}.{^*z-L*OzlȋDXgur퍌gE ] Af p5?I-$YL_:;rj,8JѕaAkSAYwaTx59U:Ea6 99XGnfoa˜! "i{pz#%ԺQX&gܝ~zrq Sٰ/.`ut|ID\ͬfuG`;s,$jczx 3Kꬶ7D­|LEqw^{` 4\r~Psdm32ŋ KWf]Ȏ+~ɝ`a;`\]*fŬ/c4Xr0g) Aӷp8@S.#u }8!:3ݝuv7¹JX[(b~&%NQ?X[sCFS At=6fذt9Mw3'ㅅMΨ`ޡûWp[F X_W-Vo-, Sc9;%_&!8N:k}GH0,gл]K*e:[6 nAmׅ Ͽ˺KǕ?"h\>A9q>v>l@^g9;L,j1H2 Q(=tk&AӌS2DD"We#%2J2nyl ]!*CDVil+\8 AߏxD!bNܒKdqJkWr+vC!M,q4v¼ vBR[6+p^H"S։z *8o6eIK7EORx{H 0M2EDpBʁm4)( '^4O B8FWeKz%WZՑa`\=DDE(3#]I՘L(`<2j},nGsRc4$wtsBqOlM>ۤ6ds >K]1%V@ "  š( *1B\ Et nEȘ`H|WU ٍ PH+(v(x s_Yʞ]Ѕk+: ܹ}&q52hܢ5..^tq㺇 p]i"QjIoۿSLpķq{ r;W9r!<۩ M5OQy\hR+z>('-&3 !GmwWg٣gpnk% OB }IJIGϼ])m"Q'yRWy0R28ߕQԂX N>/āp5-(A2+x~Vu@M* vTp؜~-|REqQe /!2upWźN$!ݓ0,\OV2O!`_B .hW@HDH,O%39XLg&)딧C,UGHx4/L7eᤤy8|(Ư,%60A\!YD_*0pS*s`7Ҿ牝2ͪلCXGy (Ln̹BO3t3}25,׬҅& 2!~y/aEdg. df,\F1Nc9Yl(sQ\0ơF`9q;T2wE$(U[8X]U] dgenwCIL0p!sQV5l^PL\=.򉜜zyev ?rS9l+آgE.ɇwwObE-j ^'g!)LjٸH +q{ -9&agn3g= ݳ=hp5M:RjIJoc٭_9i~SAB1Ohk;xq&0)WP,Ynxa8dNG;n㪷+(5F B9,zZiSj&y∢ow)BK@A|f1]V2}d< \t5ZZ`z옣6* N wAJ7>Io"#J~i"1zQ#l`W<2ڈ nm + Wy8*B,^AN\zg޽f륨TLA dvy<}SvVV`(~?2A@$xbn7_,L&G#[1VN]D|ʃt6ԃ)$\&FH7 d]%ݓCײdnc[[GY[3ot}^v 6rH (L-&ctؓ^I=L>MΖ@kfr$>-" uOk`XXTy(_[tϵ+T;lA6a% ѨW/*9 !ۈA(k=%4mCIXLT֘sAAqu&,!YC{PSe%0>'#6`"''XU$txWVd007d5HzGVWF(tU=wBo.a)rm})ȸ:6KI{S}r{ydsCm ]|JxY:~,S3O5k Ma̼3e|n}$E`Ľ&g#< {qv#R<{YcG2~?ٞ $O蒓䎴[OnI; "G`PusI-aP ɰntm+u "HȐof,,F69DlT7ȱwġ=t]wAkTU$* @H OW7fz]* j\VC)D5a! p"S>R Q$ee&*<3pnދUH>DIpL8'T_* ;uC蠸m.iͼJ$4DS++C7k ]|026,Yr҄[ʯO fES@갗y. \Tx?Gj$6?: z13ZuB%Lh{887I5,%$ dr_7K|&Aj*h CeI`hZȇS8=4:_Y1F<%/a~P2`B&$d+ia]iwq0`ycPeK$KCθ@,lhdz֐l,@)7y]X/vƋx6b3#J&cɖpGd)K:RqGgy&QљJ.(Ef~#}[Y5 ^G 7} D\XU'M:4t0<ۃw$=Sbذp桿~mOi[{a R"4V%~ӕ`hUA8D?&8[mi! Ea@'!q?PpqaEn c?ЁQZMIhx VɮoZmk=NJnոqv .;ABu|+h7wPsq4BXVKtyNx+@#ey.qoZ*? 8 X -K-[+f'%P#]b/MsOix@p iɾ߬=bQ eSŅ\ot;/ތ)zdjF0FER/ ˝ ^trD,qdfSRշɟ"Vfz;n9lAo&ɋ]qË.u(zsxhBr]cn"2:zCh ?O-Cm@aF_z;^ Pl~~ )>+V@bĠ %lѓ/ېr6>5O9SCԮ[&-˝T Ԗ /"]Lk6$Q-`ᇉ C4Słdo^ 'Pɻ|| EA:e @vg 6z!ò&zw>xOiG46k*+^XEUDMH—M9]W /?ժn  $РߜڽLuիP\fLJjqӇ/mvy~l;1w-䁯wi)J.?˥Ϭ]EgǓiq0H˭2}A)îR _]@C x3LA)~vIh0^-)bגELܿg܈XuO` :0 "wVJ*ityYSoa`i]4'TR#|gt x ƲAy$;L` 'auᧅ&d~'%uY"'NNs-Xy'MiOB#r_Z\!>#9q$ aeNԾmРoeCFA:[GρooȒ܇ e$I@r<80A =EM(!U a -?09 BC,wsŸ9POˈwdM]6rh݊ pB l\ԁo(mon0XT(sͫlI%kh?iҽ M=@aշ7vˠsdׂCri=qqc  r#P~ZJiVr(_SXX*)'H!di!mʼn$R*?{3gm*6,1qGSgUxD堼x+'ix&rf;ֿFC%u~^{UJff!нMRܳ'fs!I(T 5q(djnݗʞjxۉ0{⋲0;h;+n@/d[u@7-zf3/7~=$6TNuo%'26L޻kh06>~/-Rs}tO7&JH7_֥_y؋tY<>!`Gdn{tcI}5d9ʵ駓v<k`c}#T~NxAR~AQ$ DЬgbTE8@dZW>gT^;eF{\+I'3~gBuyYG.8-$ǵleW;󺎔3.J]}Sܧ[!lWge 77@lƌh .+=iU`-cv;oGdA>]U܊,(1}hI/YaڳϙCU O5MԟN#;qh%d]4},*sm0>T,z{$#>-n[m+Nn{ vxs1Q~Zs+mz)[PIS{b[{QZ<-װv[ %dU$΢宱"\/AIp`ăl,ŰU^aȑ8jllWAN(JP!;!9z1Q3;p4;D .wU xc_O4 )'|nbNo~w{laQ9w$`ccوߢl`3|ФHֳ),jьfwږ99 5D"BFo*{QI.wEp w MfmIڝ5 ڭ.] UkSp"|s2oD@zuE@x y8;!A;ȆD}~a+\kPEPp%߀A3ߔLɶHE+juXMfxS t Z٫P  5)SC辌&mߘ&4/GW6kIh̝, -A&R"Uv%Ip#AD ,i# CZq59PGrpf~0Db3Vd{C(W瓑2d I?025 y%hO&.رWFhGSfwe`;˿ps= ص㖾ڮ>Q@g<+?ƒ}3ARo?aGWjqtDgH*){0,M͠Xa*@J5r|;sHAܵ= O,R /E1LʮH:] =z[L[\mh_=[0VXfG^ip,0zlE=K>}g@^Zwг R}ݚBע'G5y+/|OQ ƅЫ6\kZ-ʊ5wgٷCdWŗ QŸ <BQ䜠;&!mëvg $.Cܲx 7ݥ$4xDOν+eWY]sB gŅ{7-}!M+b|eS # uʮ1pfM7 AF5 mfȻjF,BԐQ[3 ]5D)Pj(ޕ}dA޸߼׋20l9IJ֖T.^$|\b.¼@b~.od۟! DQd|'}Uyt ߆W8|:-Vn! sIN;lF"^}X}zTnً2bShкps{S?J_؏BIsrܪ.m-!p2C"/46/ P^ bMFtB4NN1I/0?m?R= 8|.%]/Ȯ?, sα7eE?<U l}; 3ͨ<  *9:^\ 9Dܤ)62O\9XEYUaq|\P" cݠ/GPO͙S @Mkey)"[n6II׳#"Y6Ӕib=Oe1Vw'a"<$ͥoqZiTLHL N )T I-! $泝(+mYb'OKj&i0컿V6J pTUu ~Sd(cd|QO׸#&s_i$f0,mT._V٬0w[e[`ЎLٸV,+.ט鑿Akwl+>o:w17]K;FjN_uEB+5ܒ%sT h?gݭ wG٪%$0 ᤫ`t\v"!A~vb.@|F2B|7WYZ_qy- Ih_(]r06aP86{}~1%&͛kĚ!S%n[].,UV}%&I92|e#ȩEnPVc+Mi'S!¹e%}/Spfl3gD݁t㱙$ؾC3TCM Y A~)4&!']&HwH2a~NN%a7MJ|Db%{ _ :M3DK3LSqa;=]JD"8Vpgt.T=G)7XS2Lt[2]g2- +C~qRCRAqn>R8Ԡ}-M*2(WLGF,UAO-YT nW}϶Bdl؀;]ěfStaRvl7xȬPf1|ќo#.4{J#fXԡ, -c4e1$'O?c' Ws,e1u:4ٻzi}7<~9:+Lyz Iilư@uhIJƽ.5mLL`w)9혍[[@#)f3[lMl[XLQbȢf@ 3v9 c$aq{X`uhg:^ &RvSz}S9ްo(okaN,j?/M%'D> o4wM4GJU'&4o$u:!=+v073T6D*bBߎnN19Ou1>5蒾Y{@ZN |-lsdQk+[# $x IezȦ _K^ $ ``? YheZESwTQ⦻ ktJUo/ԍAX g:8s >Be+ick O&0V]H81%UZSl0?gp>Dnf>^mA@XYnTp0_݈n{sWoYv᬴`oЀAԾYD%34nN>GS|r7<^QmP%2RTv0kd8;D2gfr3!<֦\14>([g0?w𪡨I4@"im ]/Oߛ@]m)s7ً06rX@M~Ru}L*rtS6l 馏~-J IʴO?ɯ $6 2[b,uA</l6p/z hdfYii,LM!ęf.6ZCԀ|3@ J $l81 t#X\qZ_Gh6].ٳ>~~T#s6U#+0"}Ps$O o nSh9(BzIn1~@Q97pyO]`*H۵ iFWGh_ 4`H0c4`rfnaYvv937%ӵFxhp,,ޓR7_4?)-ӼϾX&.SK@',ZRL>+I'DhbnĹsD[ǑRʌdeRԻsΥ 'R'"p[ `!Vt/e,]~Mr3luV~=Ð_7{$G'R;_(5wOHr3X)64qޏL Ը#Go(E֠Ӣt! eP}mo}B ;AOC=H @H 9wiWWA`/= #yzQlJvsS%с#;X ;'zLE74V1*= [gbP'Eҋ bc] >STR* h9\c씰C,@N5E۽MS }K7LTvآXVYN3;*@#<.JC|@C~6L.Vl!RE~bF`wQHE,=W!KmX&B]]$!u5Qv>ZLK /Lc6MǙYǦ }=S'8)傿^TCl-im+<~/"`%v_1Qd֐8XTӄ+襫s˂XO瘛CC6grObEހOָ|ݦ7w (|t*J|SNʿM- Cb`]s~g(dB ˰vpwX Up{hq( Zf!PE@ihlzlT\tz<)O)X11.|ݮ9`HRJr:oӼ7qeJHi؆Cw0hn{SБViFTFgӂ& o"^J.*1u B&EMݳkZmLv$KQ"OY)Ͻ/dT#XjirzvΕ%D"ʏS ?)"y;/_5#![[X1߁0s\`0W®N"Q:tXNiRs- 0k(K%+Wɹ UվØv')EuбnDgYmqWJzs(\9-?TZsvxV Ni7ͫx HE;ftMXج:$924>U=QھuCT }.ygSyd[^ZX e+x28KیHw+$VB*xǴid"Zpw3I1G9^ N [a@LkS=4Q5 %`.!'mJipK$/7ˡqN\ӝ+@T\dD܇|s}^RM`tѭq=pj>)`~ҳqs&Ș>rN5;{ (}  n|LYߜHf QR~ nZ @ O9aK5T-d=RAgls wUGO29,Y7ײm5\5sΟabX@4e~}V}e $j b"`_(^R;o un y瀽oIըU^R ,ƈ6kɄVD꾁p ?E @0͇'[TInbd'| Cߴw k]*mpw86{L,wx}69wVC$1A,p:ϳ(B3(a)aOXz>D\B?G4>1eBaе RIIc7Sw(1 ݔrBCƕ& _ S`*a:ƛ&(Rt9"`˩8@r <'i>i4E=6h3ܛ~:@ärA) QHLV{C_P|3?IU MV4ՋJٯa:f4Ev8ye=p^72VxB1\CDF{]WI-4+Zfn+ai'stcJ7WVCyB=Cc6򭍑k$ӌ*JD {&On1$/?]h0wk̵Fzr74@&CQr`H,(6C&2zT=+떕">w?:Sp079G4yiff e-FԈDzx<&_Ez=x| ٦%Љz_wK:x+k\p ֏,[i;g6@iS!~RLNo {>:XƃECӈpNv^_aʍ_0bS0ki%tq=>a;r95HpYg\) N*26*MKH5=U>2 s]ȯWՂܽ,"DlBK)]ӂ[>&k(Fe0n4u]MaOӊ9dLA'RB:NVj2ə!Zw\}L0WLo.Z56h8 VlfέIgߧ̋.F]o +QyMlϖ4hk_clH" h0_қefD5qUqqSU~^8a:J&~_Z % h\̂tȴ78 aYP}2]ET?dǘ,+4óR$ PMp4mٳkB@_2e"_P[ tW/m"M1b)?6\xۅ{By8@ Q?D9Ptv|G9ҝt8=fCɉߢq }G&s@#*nbD3ykf,#M`E%w Zu A٧GB%eƁ:q oy-Jw^\XzyPw뤰DgmcAK|U [ky (h|yi ٦Ŕ^+U8͔i2dB:e5Ul&f?z`e$Y7tud\aXMOXn^ _%*SrZѓqZlÞNP#QR&I j= ̨9ޫW9|hfI)_3JMD2VwJoȿjtb]ٽ@`vǮ޲SpR0[4 +Mc5?qMS(6F=`OKyRTZ*0+zhvĥ)Ldn@OǯD*Ɏ<'RdZcGV`wϟ`N|d𞔜\l5s \+x::&BUi ^oldFYM}l<SXmE4|%ktaڭ!s.4=-##s]Q=XO$4RC*zg+c9p*ŸFPiQϺZ$WtЕj7$m5T0)1\W믛tj7bMLۊSazrZy9<دh!$|.v[:|xs1hŲD9c I~,_SҁT'h.4fATH t!*@=zgC0w-Œ# [:=x $ B 2@-3t(MtI)s;i=^8hhqwoy{6kM BG:L&bxIU6䖙DM.osb% Ulj4Nx{.v*p|.n&^&X-9쯈bxa5:v'fɾGChynv XU&+‹zw& z17\$9p CiaapRwK2j~ M^r {Bʿ). jf9E欳xۃ sI5Ej6bbt]ކRQH>c)&׀f^\ ;vm%XyHS=QZϒ˂Ucްԍ=Nz*y's2+Bz'NP .T"q*bzx哧ԙqP$uٟaHpȯy==d-`439L+bmwrMjJ 9(}`%-p"-7pQ35jS l@h}4`f@.%+{Ȁ|Ɣv{S3C8RCYK;ACnl"*- xIuSyE.z%(ϼǐ;^lzC}CZB!,?` ɨ YQ,tM`V7gSs3`hhB!0C78K8#n,Pؒ1_)zVQ!D1r"T?"i7D2i&6_I ?4ƪʷYZ+mffHlXxb:lktTH$D}(L$ɂ*vNY*eCDg#~)-o.$zT1HWLZׇں/H&C]4m..KׂT7NHUIe@ͫ [}+#ܷޫ0[=@Qn%R95Stiaߐ@6#Z CzU?ߘJ8u Gnݭ_y>1̻(2%$EX* Z&F;x_77 6vkM5]o]f#Xe? #5(괻]Q4hsJLmR=E;x9AYnx}_ K'؅օ_dVezPkppO}MgԭG>,)-~y8̝,ExHL:qACGpı -΃  tATGdP4γToR :ч'#,*L?U#cuF͡xt`qkX#̤" Sa&9^`/m5/GR3zI,FE&{Ofl } #ltFj:`EACjR*[@Rdow Nj.z6]U߂Ф-!0w:Ѽ5,]D\r Ps\o);+Aj(IDnbqԽO 9Ds{!Nd̼ P)R۬; 0 _33;sd x\=^58qcTEߴD3qDKG':\L:.' NRHPT9L0b!JF*, G *|pt9r$F/eDl^KBT;~ ^"{*'[@}ԡMʸTlxqdiٓv#sJ5/EWMYnwj P܎lWu R׵ tFg=/@p~ x&9xV9'xL,_aD | `?%˿+LoE AZCS$#Di?.>ST(e,AƤHW,4"-NO;?՛ry:MHt;vG#Њ/Ҝѿ qV[KjM9n8i=Ɂ\ܹl"T_/SNa~o88t'\7wnZ'p o,ފNbY]_5CiyMZr:tgױ0MFr:w/v~ʱ!C`mTwuaz<9g'nSHKD@o-1Y4@ىmݸcxѫ7YV%Ȍ'e/7䍡r'UlEf#.zrK[VGΎw,9L4X GckX)$Rxฮ4+ TGŞvn34&#(8to0& L}}U6$kh !SD't7teh!/ %}ǗdZq@ HfDfED3}H~0mcf98ɛ=P֠peO'3I wMퟔ^d:MRx$4hNц[lH"ܢ\{u$9G "xpP³ -L<mIx8@Nmˆr 2TgAZŠt }^-mrĆNo̜)B[lϳ9 VZĭ {=YeQ$v[Еf'x0|l%j?ۤquhL8DB%pve;f\F+75#=S1ӳ5td|,2MJs2E )!ws8vв%_xB?V|FF"L/+tZ n]t1}o.x З̤wtH' ȃGBHGUaxh`UZ A@6 .$}P̡>}`RP؃PʄX-7䈌'I4RѢϦ-tepm(񬘳+\K{8[R P}S[a[zv;]p-hR/*SI̓ҕ.ɼswY[GX5V'2nl<*DD:c8/AMC0.il^єKsO(>FF<U̴ׯ \ʭPO(ɇ4VB蒱SK]0@كϹB}=z&Y"$A5_D9"a˷Ơ`_Mӡ .bsiR }4K|{ohL/!o?`w(|R1c*b{7aY`i˫q}p7KM+R& kPi!woSEP*3V5UIUN4P({2TEu@TUF,}9, qd|O3Գ;gA4B>*YZMo!Kŷl-1$䮝Id\>I΄R6U GV25(S |v灚WM".FBcF0/$-hqž7}!^X39j% Vk{pmo5m+@=4G)+dǯR/Ot]f=%qrsƁbW: & N ׫(9id(|P$(@>O-*~RLfhi-@E( BM f$d N9@Sg]iC՗+z"fWC`gzKFUU1 ?3R.1LwO_Giy*hdOAM*}װ363P>alU=[V>Y7aNwYN|M4=.1,&6=ފHghۊ4~kaDuUzY 9]-n䰶Xzȹѩ Q5 q5,Ƚ%L p\Rzn,jD䏼!ӄuu6{4{ȰT^Li21מʏ5}_ck{Iƿ,6f;IiR_,#Q)N[l Ω"lx{r1wCH<_cvHznl =K-6]3K߈a(nQwquHA Y> >/S4}È-2{ 2t*$Q6AID0VVS 41n@Ԋop1!w34ث@or&b1|Xwج>x5 p:K D/3h'Yn/(BLd8\)0j΁C@&tXYEԴ}Fed3oԉ/.G7}Y+KC b%Ҥ|gLUXG]Qaȩ 7Hs%Q i}ԴڛӦlǠc[lf3NCIސ !tG}*l /89%$n/ (=T90*~*'Md@}<d v!=֤uMqzൡwڭ?ez<̙GQ8x5b*Z:}/Xr >pu6 5NZc[r󂩛 Uz].[qEBA}Rr]>"{QU9/gdY[5aS܈j${uZ _G0u]'d)`u 2P*kyLaD|Z{vm/fOb·O֫CbItI#YYI;#/?~^hd_9Dd-  b{2KHA\L 73Jۅ'Hs4FS3B KPvN)R$#wiEcr$sY=[ {vrUа`Zi䄫=Q=bYigpãhᗤԫ i%f}PH1CMm/כKφg=mW j6 +qOKPd}X7F?^g S0oU &=:sNQ!|E SO৑M<ވ!>"T!;<-:ã#Bɒ|Ն^Xk;ᄔ]jyc'kUa F,htTߝ$rp^aɥTKsVl~܎_N_ D38ާȊ^jjQnEnd<8=H-[ //ʼnE>%Ud] e$R#$D$}q֋AHf遏 .( }ʃui֙e_2Z^[?@B"s#]PzB|P.3c,G emWӶm|3pbYo6#'Fh4PĉO Ixk]ͻ/s0BMy\^L,xaULz@wưB:B$%Ϝ&PUa5wDG4ֽYC>9ߏ:w9T^e*˫4n&fLa,a:J0!ׂs])rw!o(o#d:}@8OtV[-` `'CŲ X *m-V:"Pm^aH CE%u ljUvyi{=`4|YN9^+IV7< yS a"N!RHXl$VM$D€"O\:>^Nఇ<|]} f2g!ӱHD>`!Q6p}'Ť9uTF5)ȖkkxTUPL;QGNDTujںC.$k19\;R O5(mxS8 ݰz[lV[SLa/6ZsTqTMiK(f!v3Aسs(]BgXۖS$#rBJ\:Ⱥz2&QiS;'55qgWf;b.PE\s>QXb?d1Am4<Z%'7 zwS`BCuhbc"@ԠwBE:\4 2r]<"}䫁;nviq  Pyc.Vrtt$$8Ix4z.!\WiR*e)#<1Ssac5N@><4FUhRRY߲"Ƕ߭YkLf5Ʊ&apWd~kbw6"sfGD4OP޲iA'禉[ZCSNi''Ĥ >f1 帰V&a#dd_mOd/ع Xd1&d[P(^gZ©2cme\Q)MQ B3+M#ziQ}yLT92oD: Q7DB4x,=R71ynu!./6ypDU{EƬu1 9q>p̹,Jۢl:&o{ Ɋ%;iU<Юۂ/&nO[ 6BI j"`%a6 "ɍs `5'Bj}y*6D%s?\ѩ\.M ⃭Q=p>2dѼoa;cXJR Tz/< =G$e%df^ !2Wnḷ¢9΄76;I6GG+6sw25Bq!\_%%)h9@!_B.XJfg|r)ѦЅ~u\UU[7SLvEk2d/tIa"e$NcD$&ː^%h5{BR H[.W91=ʒA$Lގy~ ]o .;]֊m7&8\RiOׅ|PdG+@;=Nv a\L0nAbg-9n¦ {On8L9m[wڧ c{s1%_su׃M:r<̮(c9ւ(bb[NXA&Fū {4mJ_;ꝳޱy>$WߣQt"p8/>Xk')u@`4zH-h$csƑ 嬉8`EdjKqH :{y^s&kWkW"Mpj>C< ӭ,]3Db,ſ6g+ e R@ !2J$ūBsQ`&?ZPPvYj d~eYw)n yj.1OeQS UYܙ W7댪$TFDn7;3"JVhl,&Ar lN éeƎh@?U4ƣI 5BO*琸&p8Y|~vC0lXTw9g'Dv˘6%emG9,Y-$ RL~Ca'5=KDF*2O'xe"n=ѥP"u#:Q@oeŇ71g<[7spE?nFǔC%sk~,1vǵs\܋GD2oŏW~v\7C5=ŵK-4:ڻ.%Os$zY: }6'`DGfh,  H|m-%˝'} 20#z48Y]@OD7N:qfK 'q(yR^WU'zBsoGaO fs ߤ hhm_bWϓFjl* n]c k0oe&x`zw6s6Zsܑy v}d0/Hk  Exo@>8%L' PNjLE>u3?<֍nB]_AkyԬvzP[DeUDf3hp!u AU$a^j{:|S'חr vWx!>%č;<נANQeZaqF=˼8ʵ7{HHgEE$ɮM"^|Wi:Fː$. .(H/.[S5(#')chޱ#D X[2 Gz;6/%D *gл/ J3s3ʄr4Ԝ^M dEή;ZdH;aoUP3v7RsQǙq~mEu4LhRT2+e10%2& `sB.\ = lu[:H;sa"8odphʀQ/hƳ &ԴK Ep1 4#˃j켗7| hR:ӸBՌC@m}hڬ\ ﰔL.2+޺0dA tjKW^z*U3LA)X*Ԣ}+|0mS`{\۱vpFGoé~e'g[_ 5k_ xk &;uiY~X5Pty e./CqncK-3lKS93), 'im ͳsM'Q6PyG UA)yDêLrc" zNcbvi&MM ܤ&@}>2; 0mmm[Q$PRz QQtt;v*80 /t ioX"&>楉0n:r "WR!ԃ( R<:*%@˲wVCPn *i;cFiΨĚ4^C)'~vc+snO4ʤ1Bt;ǠWz_zSmزta\$RTCE[/[WtZ+c_ȶ%V _dP]|fgQ~1 tǸV+QgIH?oVgNU;d=Dw ;6{+) mG2ۍIph1iD]& Np>"9#sbJnmY# y1WQӀ5rtԊŔ><}Nfn5 k+F -}CɊfV_EWcY>BBß&p7$YGiMTtzt?c|]9҆]疿Su([PnGRbU%`շz) 2Ǡv-U:x/]-/!'_c~y*p [H鐷tݼBPEENtN*DPfzA3E'7\o~X#=蜺9`{m6kt9[* lf" 'CVXg? 2F_ʞʼ(;8)ZMDǧmD Ἴދ3\n)2 ҇c ;᚛(G\ X1Ćev& {~ث{F8%1 <=IBo\w%Mdk}<:޻l4 Apd 98W߽^IҠc/B.U!)we D #PdxK곱cgoدUXw5* aAA轢eoKw2i>ZA١j0{Ƿ0.rb &nD_ sTaq8UE8yXp9R35hUg@ 6Vi*\ė24ї6L5Ms !jAN 3>`Ўbz d^ v޹3+Mp`9#E"*l\Lnx~O|̢#U ]GSMOD]^w+$5յ uCdEs5\σ ^N-+yƈIq;#Y̘ 䥡Nbu$*1UQ2 ɐ5V ..sW_z)i;@T<s-Bt;U:[81Xw-.w=7Pm>&nflïWI{(6Ĵ.N 0Ta,$Pz66N=%x?GO{X ZzNO p7v{2T1kݓCΑL?ce߽^i,{˜X*q­jQ5!O[Ցxy }jkf},pU@LK!HO#<"=7865:!ktrq Mk иҧOwN͔r%Ow`~'9o*g6uQ9j'bAQNik⟮ W/D|q/ V_573dH+xJ(stEj|WIЋW.l<܏NzgÀ^fqʯHɵ;?!wR~0bSZ3p9y[4)Y,BmYN-g p@濄QWhrO d%w0+PQB=2lf#P]j3Fݷ3P!px8 do;C@p>ߣS>*gCLgrlj3sW Ҋ)v̓ ]?!MB1xKI"]&<==K\VN q+ěW_|C~LOK#PW HT9n.ۀhrj`] F:9YCvQq> RKqJ@Zު7#z|Ly"s0[RV7O\}kPJ摾r+ s >`:3 RV*{i"fIIz- Nv͚/#7. IǬƠ*-8rL#KDZelMq;Mbȣ _&mj<ԠKrM_8IaRҁ+-`໫3m!ÉQG#&"3{LR,̗X3/?M`In"ĵ8Vv03_8rf@Vg-Yh ,L G[ 9/6to9ܯlT#z>;B8U81@0ϺO IyX*×Lrg r-?l_y)/N .7874ŇTj%nz҅ix$0qxzB&>mPMidp1a^[Kh4V;x TIIQ)Fcxx\CZ2FN0AlQiZƨz0*)[vMpD6wk 0-GQI,87'g Zfv-eRZ.]|ʱmtk$Z'űx*UAA;Da}YmCyl|& 3" (>;pЍЉ F-69u_\d(:? 0Z|%?X];y.~V"7U&n9ą%#.ћ4ӌIA јz*ms-0OTsj YC1A#ܖl[wACr5 >R._Bgk+PΩpW̽` R"5s2*?$Mi(rc=AտO3_і6U[R]'sAQkF`CCRŜxrk_Ā/0A[S)ň# ۿIX[WT| ZtExeBZq]ꎋŞwA(.Whٷ7-8_ >ҒDZMJW:&IADŽ?RmjC)Ts>) V_+y>QoF#\ W¥RtW#7M1V5 $BQAZ)M|ׅX4 $u0q3qr7o Ot != 8a;9=SصPfl*ʧء]ӏ>շM+4nqUZ0 ~v0U ^9 J,۳aV%0ūTj^wY`!F@W$'f8 #(wa2%EQ87j\o\4@^|M_'ît`9sQ<[ǜ+zMȢ ~!V #bu;Shk/*CzND%/~dU! UY2hIkWyy誒*!kģ1_ii{N>C|e'z2R~ Ir`9А^/Ά`r8Z*$ $+OU2xyKWMYS}Rӡ:3h.]lTk8L΢DCrtP;t gh^sR*L?R߸]8~AkbB]H{N  Z~™C7zЖ$-z.-X{ž7+oXԌ&1m{(¤Os  nhF1^ܾ;JcT6 Rz~L PMEM] SN(T\׳ўkʙJ/AH':^fQ%LɖzCQa_8!0MԻ%"Qnj$V @{!ˎM&htpg}%+ѻt@@&G n>|a=R c.?Wg9UTgSgwn;CD{g>ZL5h |4WT2b,yԥ"Q̞̇xg.0M`@) d]&H+i90Y^E/A/@AЧME&Y?&nsY֌ o>rl6hLW'qpIdSr4\t{Uq\SS9߅ w rO:{iTN@)7'уG቏W6; hp& t`2+ם+IJ#4J[E—:U^XN{puՅJLal6"È;9ʝ<܂Mk{I snF̃{x/cϯW,1wǿ '})m#CDԘشqDƏA|,ݧwl,wMԮ$SUėflBhkՊ='ŋ4OHW3E"˞pV&DXW//qV ,m!N9_TV `"s,Nψh3 QX9K+7VXj<n\c12Gu_r ^{4[sT TY|;16M͓޶x?HIp t~kuM!Q@=x >x p,ɿhnyPGw:ƶio\B0_[x~BXj5Xk^kUՙ8_gRRxz8Eed%7@KvZ>I`w_:BĈ"'.#gu~8PxTMmeDjױĤꝁy6Ue$Vש'#5-e=Ug –WY6xdVpe$XקHԸt};ߧ(^5M/ Nt"c6>3M+SנxU}-#ƾ&4y \c,b]\|y aj#NVԪ^!u6ZA\9ж.~z`BK+A%gvԤ{˕A\2҈ źI:qqdZALWR#ZO :*N먜.>Ҫ?͵̕-lOB Yz?D[q)ĩkNv1&1s~IP0_\+kT`/ [D(}"&~E%2t nQbk_bw3P.w!~_QN@*ϩ[~o_ 2|mu(i(yCSPV_b;1~دh @='Q-^W![rDA=M&20Vn9G"/~ LźYfS:S@U: Wӕ̌]3#>>Z.Zoݰ[!MqLԴ|ic}}?.DΊInwMSa$?4]ed R̃[OX.'LLU]0zv{<56-xCu!\dW9]=祥Zo5b -~'vyWܑ"aYX(5M&2 jig`HGwBٸ*Ïa/\'H{6;if?ܿFe` W=niCՕE]O=*˾ԛ6*~V v5u/9)r'xx ۛA}C{!rl@>\I}&G80`]f[Z48җJӂy`U<[*"gI2[7r7YzJ]H0&`V98z.՗$(g`BX+xq_s@-@;aמ&;4ҷ4;AkZYŋsqضE mEs-DTWmP9;ԧ8ՠiDSLXj'D"H@nU/"|XCP0vQBe0*m -?%XXt &onf,I@c;{19p+GT YMϨGD5 zS KXTxN1匘ƣG[yƓ.)Reޟde{c1M,AicpZ"d qgdK8cPn*#{TX {k'#nOݵq=-Tj T6C\XuyWcdtވF`qZ<dz=GClZ}%<A[~?2 TR枣}~=SaJݤTҸRQW 'J ;%:ljLyj[#*uRqh=9dj EJN&>ț/umC.+! xvl<ޣg@};R-z:u@S]z3ƛ' ffSdỤ>rdE3RR]hp>[ p)RڒF-=qBd)[fB纩;#!AZc;R  _Vjm0|e tlv+YZ_#/F{B%ƠvOk:ȜzBu}VkJ~ֶ,ۦIoYGAmxt7}9?n{}G~="P^+肨҈2>yoyƳKͪ6ZmˁJޭep.0P'+-ݏA,?{RV&#n|_!iLM{ >3ttD5RV}0KpًʯҽZ3IC&chJR*rE4n<8%!U#c\_m#R? >W]pb7̍$ˉAڒ*zSW- EiG߫Gx3g8COƄX#,r;OR'FR";wPq jaز;q@Ed@09CvqӜϰIzX2Z1; 8-Q] 50El,Yq[bMx/+fykZ%;k#4#̓wSM&HZOH\OЖ`*S,gQ.u("{vfa_t|ƫ?] $9此pz6A||4J1.A3 $|f4fG#Q>Wi{ŞxVxobIQ4+ԧ>#+rаK{uX!ο/^-cZxJ#o,Pf1YBF/4%Rʞ!c-e%kb uҿQiYEǟo+)z>2@2@H(ʟɨlc!j:z*F(%xجĈ;{pl{eLnwN~J29M{>2 J*B,94nЩ'VARQo{Z$s-9mV3P$Ee<;2n1%Ы+vP֊=țTMMV?"` UuMէɡ\Q%HN .,?ۀc/0iy| R>2pPiEf$@ (>J%KpQH!tqe}ET@S=5'G)%SGM=%ApF fV9E4e x5iK=d}>] `M&S,KY:f`p}7EWUL5s--X`A\q x2zW !mn-VX{rՐd^º ̇*Oj4::)*LETn<c(6- cfYF HW 7owpb"E0r?- ęjJ]KZcw\oI #-mPDzW+؆0Gx~ ՘P^}xdἜNuIZ;z}VkvOdMJ fǢIo'g UW& g+2WFI)KգPO8jrUc|ô_+*K?u(8eTH ǸG@RՐK+0:hF7A;5o$f]C3fbXK$|ں&cRpv2E" v%;Oƀ#.-d߉~8a"\/FL!ڒ bo*3BX(z0^aeF(޳35+&Vf2ЁaǠk۸"tp*fVB ([15[b/h/0q2K_ٸ*7.rg@8ӗuaXC9rۘxH:41Bx֍O/G9GĈjKU Lv<5w`%{ry5*EM#t8V#Z]b`҄4Sa$(l̔}a3 ]Y-B`Wʼ*!{SqÁPV] i\vPi Gjk?Z2hZ= vAHi ,[ʰ\r13rՃJ/_p|'ܐE'}q[/E;z'I DyIH(]n7p;ѱC<$pPC~ *[6\`PsF5C9(D=`Ek?RNaQoG1ΆK]VPNv|č$:U'K6eTVVsyiIMyojCfLo?1Ś͎|󥷛{=fPͮq솀j]n+3F7/ż5dkJj_al+,7X ,C)<8vx+aMef{U>;#d" :f7c9-ZËX:GbXd=s8/^T~~Gyס=WTJdƒ:f^\wi֝|Jՠ ^= uȀC5$\[oF,.]D'sѲXq($Ui7].5:x,{hte 0urE;z_v/,ܺKg@$cv+Q]BHփRx4sѐ%W-#>Y`*ƅ$Ymgh& 1#qoLS5XhcGՀ.*?vیōRgy9Xh0P86xbyju6Lq\wKkcCsrh;LE`M,^۳r܄(Ɇέ T Ƴ깃`l:t~|қLh"9ķЊN^E߮A5M2VH)kYR_;JP˅o"tq s@L" ŝ1j'\N',?SropET79́gω%v,[%{;Zg! oSa#KhL+ ~ns)Hˁu:=.:jmTf3h@`rYܗ~0CPy.i~|4]xy.zV`A52`V:wh]Mis!5=MSu\EysԼAs܃FbW̅I:"ԳMj%IOEeV=#u;A "pԵpq-;#@ip{;Hg8 *B8meF&82ՉyyA%R`aiXh `*Qq+msTE `-kRbӧ"vNnp]ly"c6!a[ٱVѣpxN9_Fs Z1CB\Η9Wu%gyscQgY,/$‘ p530($|@$|ӏ -Go-d$U+sɀ(|_7hbbur1 IDgѿ̙U6?sM`ar#mE nS 2qrPXV5YWpr@fh{ܦmؿA" 1,&PnQKJ\+ǝmS2s $HPm,TCW8}b#^Hd.`9;*vY=i 뭯yG፩wp]$a -λ_47 Q0@˟&*:}^Jb}=N X:֧vxN2q1ݎZ@θ< *L7& {N9T߬@zqE2OZih$5ֺPnGbǭ׿_/~%EtRZcz+\V2H8:!g O?/ Yk1>z @u&DAL*Y[&s| &%z 9Z!F0*gK^>f}sPeW4}\#pTb~;7 jDV-u׫湳X~$Di~@6YEzӚ/J?L{މE}0s?W%wwQ<{҄hHlb ҥZ8%\➀:!uE b(1vڢN W[.+l72n¡q0K.i=o+s\ g1Dnm`ƨU&0UWse/6|y"7cY X֗>؝QU;7i{ =D {=rmƜA]XwrJK2ٔ^| kL[jgZZmxn.im᪦U4ܫ{Wc^ڣD7vڄHvh>e4) })^BW9L5 }KpD*H؜"DKZ/J&/` 1U)):Om|Xi2wZ0ceɈY!>ud6e.niġ2h}{F-y:ՋNJC;i%o䪝,1ziK0,/VD-j,7+3v͉cwbĚ2G\ns9J=BUd sDExd/SNlsO$XnJ X;c@aULX:75CZ؜u$zV(vcvFj<( ~)a%rP$\Cү&5Rk0V)!Tl-̧M|O<6,%^.Pv'$x/;fCm`KccEDU܊Ͷ 7YaG@U\t`> m2TAo;~jJMYW;}5sVH$̀pƃ}D|PEN(D>EůŷzޠD43!O>8+$"tK=J T `wr?Y{(no-Ά(Ao<C?}v#JҟvDWڮ8PLH !q&E3ևf,"_l]zjlOi$Dݕʪjvu")c\1,2/y&5IfVqW8CޏK3}sB{:=,$4`t;ʓ N 5_(nڜ>Aֿ|[r\WINaxXX;2>.<-A XRi<;rR_(eeͽ UY*75D lE7)jNqCVu,Q?=[rEtkKd>+Sr}p2p,1gS00~ZU(rnf <.7!G@."[<ʞkWd!1_IZ=w﹪ݒʶ+%#y!K̅B=Y!d uZyKA+<[x [. ddI^RWýz]墿 ?մڶt$sRZ+g+Żlbu =RhgܐChw]7 .deGmB7|ectrw9ɺ;#ߦ3*=8U%8VSRKs;O_dVW[q.gTGZ XeGlQ!:Hqڽr pp]WYxlݥ?[ٺScMmM_"e$̅ȞS*:@ b?*rbyz7H bEiR [ yGBe#ΩCt7KS^`kЌYQkբ~ʀ>O߱gS(G0|HT$3t'I+fz$C Q[DdrPkL8Ȃ@ ѳ+Q3 Aw"R+lN[/ڝ?2h`2wٸJ,A^R`%7PdMRSĬu7bx_*fb XvA#BѹBaoY^Ev8ޗ~ 3"H'JؚObF8zAwY*qxhfgBKfCV}f+SG(IJBWbѓwC/mKTiXU_DBx:۶C~-^ v20Zr֝xnZ&P FUFUp%?cg\pV6,=!SFӗ}IhoZ -_.tq]c4e e]M[U}gUq~W)KZSlo1j?i,3I&kS<mHŚy31!.ܧYbXy2-s~ Ts6l3kWΥ;)8ξׇvqj&hsׅi[M's_k 矌Iv?)'_eIm6톊a-2F:'5-'r7\e؈Tr+#">AßBEƑZ]ͯQ*]%>cI9Ub"ic1]je?R]+j=CjX㷱BnUH@ (4ׁx-JM20`3L=xhVEa~Spghf>0 Hff'}v&]uDt ˥G:J$ Y6IAX'E DaNh)-POۮI9q$ Bqﰌ.3_V+cݒwԜ&X`l"!3ǻPJcT71b=)'@(XdʙGC7#D\F$lH$5G<]aqo@%זػ|8 /u̿ QּiI嗝T.-5Q\jK=wDjnJO(f1;3":+k3nʖ-=A501|sQP2v:n%9#}"he q+E/1Z$I.+]^b;XV1/#omɵ^,gR.-l oG^ Z4,[o!HnTnoSqjܷdDzXQc}nE|8PMz~"{ ̱EK\8*4AnHZ Y8Xz/W;m P&;YO2Qim{;`۽/|L  ʵ.GI?gA6KS{,bI{jn %Vk {]hZ|er`,.-Nsk!n=RD3Cb^>iy^QaX0Vl4~J$B1}^`vArGQNGߑ \k@qBiШ:[a8Bef,8P oW.W 7_ ,ҽF`OAc7b-}]S/?0CmM8EHۆ&>GZd6υAƬ;s5k˜_08lVAvdj_Kc«Nka;YN .s;5L\@f-$ H+?Zwx#/AoJm8AQV,-%\WcNǶ<$ Ȱ}w͠ɵ] c &Ȳ4.ix3~7ʜ+>CttdTut[Qug5+4{>o9p.Cu&/m$]7)wpLb> #tA9`Q^Ӆ2VTݰoΒ a'Krg?ᚼ(; K2` ח 2GVMe#[[ t>[v~ z `+ɋf r9%eD^=1n]4RD8 ꥈeaJ¯?Iw9yKDWf3BGMW b*A#mfW},-y6au&3;#I%k"mfY#02׌ᫀktADnǽ:*HwF'%}k'f$EqKyNRnJnq=)T;7WvE^FcҸ qu[z=#$ƙwQ'Y8 "OdUzPaY +@=oI#yLÚr@/ uʴv"# 919c< 8v|~K娺jnݰՑt=Pp^؟0X"R+|kMjه|#pv+V;. wcx6\ےZ'mDe\R6ڶPP'hhGtrėM2Ic2s滏vQaGl ?~>~Y/X$S`T H|c n$4:~ Sj"Q3)F˕}"ՏO,r:yhLJmD%R w99PfwAH"7Vto9&&JaZ:7#rhrnŌƓ]0w JT$r415+ B}/J%V$kUQ)6LvY/i"DkQ:;M K?DtG$֌z`]?n \$ٮ=Ҙ'žA8RaLrQAjg-wY"FOLBTpt]TKfMdnN CYZN`':h_O\um6\\.&aF^uZQ_!UK e?J$]K] qRjWV$Y+ ^YbA)W%$& l=zekwnTٮ1v9O^h8͛u˸1n!Wq#agRvIy~gon:E+&'R爬cwwz76řиmbŜ 8dzs$^t&*B̝:U2f^ 0<'7C(tb@hob}@-21tvDz ihGhGުz9?X%ֹ '7pOكYo]r8";Np{;|ЪTRƴM?ۘ7Du!WV ȫrH.g3aNZ@W϶edo(9&7_5 cjqi7 `8—l <k3 ]?y v]u[PPj_z(҈"ޕ m3҆Lܱ{0kSZk aOPJ{>mRPD ,Ї'īFxs o ]>_(yhx9eYVQbuFMcd[ɕUj#V"]޼DGbwXN1˧(~'98?*;v *LXdۉ5Cœz/n/^ Q޽Zuʄʷ+،n2Yomp^FUblwOqcv! D` v0-1BS gEo3\^Ik=2j)\2ҐR/zXP骓 AŪgA} j`f  AJn6s6GJf" M!+}}Wf!/T{t5`Pk1F(H`(%HtP+UDY]8y@}d[Z;Lv- %P*OR._G;c_J# 24UJؑ;k R X-|ey\RK qF;p&ET4`?r^8z̘`ެ-{!{ӌ<+fC"\uT2WHMQwEe T_"zbz_}Wk{˝l%ٴ+B"$ 98}KEAN{ϿmSBj?QeA!Ǝ o50n__xlT9czY .8;[? _ogUdQȌH4B]mnmW9Q6cuNeYB67r@*9tzr+g/k=)dZXW-­aXv %2+ PGVʴZf2Myd.y9(r8sJ+X) :7WL̾^h˭K\/{UƍyGGT _>Kzx` ZO@ Q.SPIozҋt 0K V&N}| @=xK-T%.ҫvta:ɼdud*ֹVmo$t16Ҳ~8bP2WEr_,ېQJۜ__J'`Պ W3ɜ p)Ral16a(W<m&"TlyyE&7;[.c~t|OUx_ EqiG.=X^$}dvf[şCNPN\c./c 8~sGx鸮7 J.muݚt`x<7Dg(!u9oYyXADŁOW uNԧ֋in~Tw7 nm; pk#8A\—+ F}@o2Wo9ǽP/|堿w-{8TIg 9@)͊y%ZҵdO. /5˒!;1fW<|T*ؔ.Sr@ Y ]bl&9FϽLJh`Iaag~GޅD=~x-C(]0,/nvE) zTzSI0@uQTߢ§L]?p~|++orlY ~*j nA%%V`kӛCY:.x y)*))(͔v> ;k?fC\=)"5W.6-HO45ְI;t`<j♐i/w?R{Vۘ$XF0^"W,Ʉ{ $3's1 ~N9oMhDK * ׫:.ǽA^DxA3UEfK:WSG?R/tI_(B4?teL,u_='BzۉA=;4+&ې/Kom/ǑtߤS[m +Y,ƵB-OLil W՗(] ?Zbz  ߏ+̟0ֹG@yֵqnYh0SAt6^_S~?0cSx) oҦ 4dS2˾EZn'wP ^ZF!xyT>4%VRT,Ig=&^? X*|kжB6[;#%v'Q DX3_sC^"(œKR82̿Oo'٪s+d$YCF8ou [&ts5W,5)6B_\p?߰\HW$l9+m@%2`NrFiCڟpBTY}hʦL40,r43D5Ru}3=cWg)jTZa%}ӒqY^9l$i7p߱YJlrH:yɨ7t䦩n}38ϱ{1gFąaΤ-soAwn .A/fɕ^4`5W]1mC&8&|~H>OYKj"-;YA^ё)b!SѬg?{ v 8B&BN2yv dvTn mhQeO |awaB*Qqtu-To ]SZ M)퇓ZJɅb¸zTtϝw ݂fkoء@vCflCz=%?Vz:Aʩ&\axa:3ҾKCC[!*(9եK^"`ZbApP?XfR/: _K 2uR&\ڑJvR, a^Ig7-8[4 (Yڣo/tD1QGP3MI{NIw92ͣ %{u]F$8 K WCXxUASP^"ET6tq^&{pG@cTQ3l*(a`gٴh`ĭO+Q!U~p_4D;3(7o+е[di9-ܴC(B %XF |QoŭVDo2 2ɚT7 J ]Hura:ͅw|rQ 'na2?bbg/[q!OVL /quۃ7fĠ {@ί D/;\^Z1f_8.]|E#Yv !ڧfz&q4諰&1yN;bϦydQ^t*Q#."Uy"~@܀[niI2uxG[ |a|3`˖ F!} ?cvb| ,hɺ53F R7ϑ4Jv\K^vJGKڍC^ W|xę/|U,a+[U"d4l1^?Q_jlXĒd{{+Š 2y)*L9]M݅NA0~hr 8;9+1j?/ryP~M-䃯I9r>{ ao~{%fᭂL3ګs͐ ڹ_ua]Mb ڦf|?7e+i1 J8=޽ 8BYqӍu0{H, pg_=P uGca-[Jzo e٤ȦKn fQ$ TƩPT9hĞGw.kb&z]RƇB1M$N!Kz1a0)ЬK\!4ȶ9l(U#/e@ê;WaS# MF2V<5FUlɳOn]`}?smSD ]ؾ|A5"='#`hPӾ..v4٥>A.M6WТMv\;;:PfwZ S}BI~>5'ԿվgSgC@l;D*2r9Ide.{ZHbAFqpE3!UCXW  Oj|pBު ?vI( j!MnIir/`h0myBxp>~SyYWa)=HD6[K8wr3g>xܡnX̓ĵL#i 7 !E$\$U EG]֢] eVV%H[f%9[)( Q~s}FN s1J!x]ҟ(1vDdTB#rkm = ȑ!נxi8;AD+F~dEasZlC$<kX!AL fL]rB8VP;*\=-Ȝ)EjO$I$í* 'B "d {p wvj:yOh*> X ҾDo5t*yM'F)<\ aa\knh9f >W.M!CZm%b3DsLAFvB2oڍm$ H&h) bT̖G._dhc\󸟯;MXt!9Up`{Ƶ.Uqڱ(֙1OjTMA\#+P BOdGB~QݢwnLsO**gMaF5ÿ2qMSLL f i8assψ`a')SSS< 7Nk#t`%.N;^S@4A;&@!1qvZ2g#h|Z@y5Krkn(]1mns9oUdVZ1 XQJda-+,U[8߆nD 8ծ2l?GմHi7kؑP:oPlw'O]Eǡ;/BptAz2Jqzcˏ1 bণ_>2XU ^|yu<jx833p r`] Po#d8;c!r6wg'p]O5tpV)isb}i%b뉉Eȹ_i;L(5ڝ,Yj(WKhE'ṧA' =f&v.J;jﺳՔ`Qo-ÉHq0d`ai1v+hf8.TMш*Tk֕.FԤ󻓅g`vrFJXHvV['ׂzK|6Ц4OC ȝ 1gB8.T|OG-;f a4#AesW\%,;~{FG>C0y1T txHi/J›WX؁sX;n6y}L-FDqp-TGݫEG:\kꍦn'/LiKM]}8?]o6qd:ctgpd)boyum6;X gflN-;8RYW~~aNXb@>Wxk9un_,݂(娽*?_u$+3Nڬ, : L"Nt]KU^UyQ4yܩύMB|^`[+b0-cmsa(u~kx*orI@yѩ0W[59'kVDDbe/+kL Sqģ5P8'3tR̀:T'^4]c^^>e}?_!R[gUF͛W%#&fj/}3Q 9s>[ct"NWE% 26J8 m!kL)D֤Ri1InAE(Μ\(ՐO yߙ."}qSL\A9L\oZ1ŅlП-+w([X ""QgOPKqqd3H~ʓ\N.f̃V]2 |wӥO iuX*jg3H+xyes#ɻ[Xbmn4V88o N绗jɪ-:oCaκQQc(ɳo$DZ5X{Dʆ~gQ0 4B~(hc:7 +R[ rbOKg _O)h K=1!@4cm<ޘ=@6&=b6-onmUFS(&D\ u̠%D~M"f%υNF& rFE!^+|C:8]%TO$nym_j،fx(x=RpH&=I5sG hݶZb\׳4 L~_BO:(.93 ٮ~v,Jry,CrfhadDh]b֞Y& _)I.ʁCf'uU2si[JFb 6tdHC!ĆK,Tgflǽcߧˮ]W%o%w%?$XN0Yqz .wŶ=RC7O"EGHc^o O2ڗNfcl=IvWQ< 6Sw北EՖZȍuʼnߏd4q;SgA|DF#a8AF5hp1R`2,uV*jMH,&zpF}2|kς|nzSw0A6Fp;RS\s5PPu\XYS~#u_\q{ώjSr%c׼J xEA9lL!/P.!WgPZALrJSjeҥࠋfX~k*?O3b"Q|Ƚlc5dO8pjl,/ 7a*Eı7($6$+UPn0we=-SU},\ @FwxX[/+T-GhN7Y' ՇNl OO - ĝu W 6(, ޽LRy#My !VCR< Y^S L^U1T]S`>|Xߒ ?Z5xRʆՌ`,Ad OvyChk=PTp "EC]ξO$_8:NP`1ݲևUOfVJQM$h {4wnk;`A$iB|H>UXNkf 貙2`w?|!7~w,S+P,8 ONnQ p +]$Ɋ t !)RqöBLD@UvoT'.FkXMx7h !}u;-+LVG^獑V , h]VCLP5Mjg  8arrZܙeYmr. #Ζ!4IHɴޏ NQ|Fcƺ 2,2hT5E>36glůHIia/ s$հOhH&YN045`x$L<@͌DU8r@GRx s=-w!Dj{ȧ5MdZ]M+:1?%f}*'}E!;4½I~KOn;!?T@l\8 IxOy:gs(OmUQd.*0j`07 0[݆W[v8&ƿG LY/ <7ٔ ڗG]߮Z8=9?I-| [5Q_)%d8&*߸=.>a$vQy<N޻,x et--w;fyx9rMhynK \/ѨכD{*D{T>8 F 8H 1՛ANdcOU@jN@"~)˅ʂ[>t]f1(wj+R[hPYu|䃍v "!F8^8Od,M Qkirآqʿqr)$`9$A #MPaúhE%5_(AHo.o5f:r)[,:=8۱fshhYnBM[ء,%x* Cإ~G~ƍký>sPɽ ɕHQG]Ң,zEm?!QCk9)@(dc3R ET8!X%dŖZbG3>7F{߫i (}URnGQ)w=ex?=|Ni 5LN#tc=?Næ`$%H%rV!]qh(#` g@f9*;sX6z^ɭF. 88!!`~#o?r1. ߱ױ3`@B i'ܓ4Ry A4e$qâ*i {I~j*V!3z3b^Lt]aX&dW܃"QN0+;D=9T[8"b@Ye* mugd._R"R `1wb[2Ӥ8鎓O(%<`^/LV1E{3(~p4p,ӸdϬ`(k/'٥Q! UU .Ӕ vh`ۭwg] Mp/c} ̒Nf!r6GH.P%(il);Ûy/!TT*)L[v:L )(u]j!Ӫ0i<4je41(HKA u\O(ü W"{?CZy3m3+1 x e2ΉSwds]`#+ ^mQVI sѠ_mf#2n'`M6h{IZ u%FHv0#{qle _TVh~q\ $*VDB H74|y|n /YAFaeDXPJnmI=pv%# mG+4^ְf{w&('`] +"0\b9M%nBTfd{/C4ymNqr^D(D\Eh&oDQ+Y*HO7[a}1'ET " ]h c)Cg\g:ɗpeJKz2$16"nhVpQ.}жh Wwx%xqGP8jܞQW^l2(?@hW_yS- rh7Rr5/Rf(AS61Yc09'^(pVZ^n!~d"L 4N3IdJi~f ZVҾBW>xܢ+|2 ^,$&l1APʥXǨeP-3Jpr:x㙤(~=vZ1|RT ,'UMZh뿻l#p_3]@' [#$XtM U!Ƥ%m uvQ둏^YSFA%HOcCNzڛzMA?cKnNOO4Me?/D5oUA+MػX8u7[1BE rV?zqJgۊ + J 1wpc"";#^_] SB7 \ڪqT:J뽡L?(p^ < }+ @hGUwLENR~u/@f!)nfx[. ;KZmd!pJRl:ΔнȊizfYs?JVN`.X`30r_N%n>g-[NyU\#nt2D\5&5CgPJyKyP״"n:mbO& |IUxMgv ,!x*1Hz=Y.Ǻ Z]-y S ĹvCIA5u=azsXl 9^iK3L^<'I+1ț?G.Ȅi1j^Պh6h|Bu3J;];guNLLL4|.%*Lq2vg-99L ohaY82!#XQAOHsX`O8~%Dl3`uTKVҞUQysfW$\S9" .3_栲K*UYSo7-YB ~;7eaDAܱ'WT[Bt8K!5d9F'8VR _0$6p<k9WSQ\38RFxl}Xx2^iЦH 'DKX+fi(kjcDVbq? tn0wgW37!Y}Z({rQʴp[߫4Yʔ (1n@xW]zmGV|̛7u Ѳj#?κr7#T>`-6?|#l$`/ǯZ5* q?OKɭMHJ> >1Z)ɰCCd/28~޸0x:Y.k9Z!RTC&RxD).`y v.R]r>#aYYDr; G&`Jj۝H偛qy7ɅRD_3}E7hvFS( | P(Z Ա @.CI  +Ri8Bsf11#wRNnP7df9j w\vtZ+ 9 Cw"#Z`RCR) B}肚,q<lN )kXZp50A#+K2dјU Iaڄl(T}"s9l)TBroȽR*2HP+YQSYA} W~d "m!擦Zma`[q(kQ Ew<6 3?ծRM8/64FPE0J]Bȗod|pj4s/CBSTܚF$?,Ǜ=VGYH2^R@_M9i1 <.,B9r ^%49stqe' /O ' WkDg/7 7S:(JơftӭpKyAe^βYvry-8'^w1xFGXc~*L:Sk"vrw(]R6m6 :Ǵ.O&gί!>?YNy_TteZƉY`l%uD҄28˪Zlk;_-4橧3g'}Co|Cs ?A8J",AM] W"HfoDA&b}n9vCN'4c<׽\O0&Oɞm{i#[*QjtsC.N=yoJ`ds znC/۹u-{o_LBFd%;/rirlwr3GkĪX@>?Pj9ek}QB7LxWj8}UOlܳk|,eݗ4 96=[WeL˃=SUF81 A4)!=C yBQG5=f KȪL-_ E܉1);R éoEݳwεW6\fV2"\2wF&tb^G}rk0πzdj-nx{OmdXs/)]=V>)Md?ڛZ.#,dNG(Ug&++puw*;2b1f7ԩw E'WJ5~-/0*#ŒJ[V@g )-j5}X|~1TX+H{n$7J{ڼy0*uOp6U0 ]1);ˎqjCS>':Rf.H}>^z8!Ԧ4~I0D588JӨ6(63Rr1LSf=uQ@ń& %)2e"x+1a-5]lA/wld՝?,O[АWFu )%7O&A#4zR=Bį[Ob3ZQ_XJ+gʵ|P#O(aq9Z>A4]pTpkߢ!؟os.)-0}x&}}݊p|֌&pQΡBjXl<~ǝ"iQ*m-Szwns9k %A, 7toDl0Du;քe ˎ yS%K\8%uU5J`ˏыۂvwnP;l@:o &3"v t`]A8]57T W`c^p=B.F%&-D75ndEAQJ2̵k:|z]]CE-r$wDny ?+wjqexL+;/v%/;);y_~R8uS7׺t[Bw{(fnÌxU2I.f\x#%-HI?߾G+;'XDfՈqGF ,f5D} oa@pqgٚțc398,'v6h ,)MjI)V`&eRo( ȱ| ztO:x+5@RH)J\jMI)H-&Ӿ*/1v09͋GqQo;x Y2:ċϬ\ų L')殶fZ4&$ Be 7S4 #4ɻB(G I.%OqwWm?nƶmV+׍BXk Q )_ N,rs/XId}۟Ĺa"=KVmIPU}To8UjHG6DS$y4hJoMV=OFpwfAtAm'ӯC eGQ7S8B_`1QigDj,䕼(%8"E<7ظCyٲLCչr&4 X;]Oj2ؚo֯+m–4p}*Y۔syZxdsD6d,A?;\wCmm"1 x֔(Jae(=%i)[ʋCZ8f3uvɳp׌P_d.XWӔ X!1fףίFl٨K`汾TECKhV5q) U?g jQKduxRjMD sT*fۓ(ۼ 7ts2mkQ+@$ Zfb툿*FПM+h+S݂nhN>qt@=qv1}757B5]H6NzmCR3ݶ[K~ `;؎v}Q/J=LiيRK r6ٗ]$4^uK`3?5d6<R,n2Hc]g/({) ^(EqRʕ;X[rm۩ 0WAYLJ+*j' lnBiJ9榼GǣF c|*=0Г\'SsDa8vH致HCPzJ߻Uݺ2TEwN)y,0!0J#N9al|R}9d mˋhΛ }߆K n23j(Sҳ% B;`fO-ܣ5eB Ż`e-Up& RѶҸ?FXX+PŸt7H޲ʳjG x7Ki`hgL!\0i5|YAlH61,$fSU;D'} $Z!^ gxAZ?|KD×|;T1T!4D^;,Pz[ Vmq"?O35^ :F0@Xgs_Y-G!BȊ+T73ݞ4Po-J:^*:&y.WlI[|T6%\ @El.ls)4Q0Z H2<ׂy0rǭddd$Y%֬EN+QF$A]@P3VFkzzmZb RCp%f~#6ksE8@t*O$R5INBAtL[46E@\])OsC9mO2V 8Oƾz=2AƦ\75M7^\łGˣApȰp!kٮCXn7h =рEp/TpP\%ayô 8[*W`q 4˵Zjr1@ho͂Yk &#y5]6yv`v;űhGFQ-q tQ=8Q`Ǭ+KZ$۴P9L9f&Ѽ`ts7A$&[ɺ bj@%X\Vש{$]3} r)W86-&G3G5{ꁭ$:`Rൢ]Gc_#vκ& crTn>PP8J¸|X\G6d,=GZj^sNOݔuQzv}jorPؗg%W,W>AYn!@^$5FP=bZ`w,xx5!9ioX}vb+Oؼá {=rJk@lLk\-Ɩڳ:!l.Tt'8#Fx[`P ~nR5n3s{īa-O VC25x Cy"K"&쐄ݺö hZrr՘l_#/u<ťXWhpfqs80g:Gt/mz׎֨؃m:nuu, Z1V%dX*03N}$mse,'',A3L٤Paр4]+GO6/o2͆pBbMf87.U@]0di謢ORW ǚe O IK^Cl JF Pã} t91YʰLKbcדUeKJR(|p+jx`,w6y=_E_P*qQ{ZEw2mGY9>01nJk'w5֎0-5Λބx h'}pYƀuc1LK2=余Xc|1UO"A5c]%gT%Nt"y?MN4g:Fc P-\nf`#\5͆<'a|9m:J 7izM4ܚi=9„' ܷ|u˞B9NWrK#Vɗ׶-s}S-Ȓz+Xu6c4щ3y孷lZsMK̾ Pnz+rT^f|$^^T#~0 LwC#\޻HRov :'pM6a^P$IuXy0XQ܂ioycG 199dUzh-)YU :d6`%pG܍Nh{,^ރ p!NPO30wB| Y9l4֏k<|sG{,Z+xϗmQ|$nc/Ieb+eUx(Z*(bS#TTC*dJYc߫3+n!^ƴO0A0Vk3'GeO%$!V|{PKz8 4cfJ"3Xj ?'5`4cDi"j=""ʈڒhrke>'A97_f30Ex21#q{F$ή[%Ɩ5["%M_vɢ<ٕ$Kx Uc-=t/Iܕ%hFEƢ~! ,}= #Ōl?ƊiS܊8 X"cXCLKg&{H>9Gg^AfAQ H ߳ɠhOE^iffuv&rJiDA..nU_{}|WS.\^ƽ[E1I@~w-Vg *:V+R)R7RP6  (h wd l)Km!HmϼPxD:Qnʑq *K\*KK0|U(!w#9 nI8"#}wx'/\&ovG K>1V3v謊 $+aWBATwly$;]ya &&.")& MARTų.OυXtg۝tXMy'OVEBt"$4Tn6N[į0( v6'o8gE $BAt;(fSAvt}ڤwNjJJ:(Q."]&] .k+WҚ;ӉZ5ӯ0 :Zm9\'~Ҕa}7|bAX3*`A*n}[bᙒ9}~7uR4_A%Q+nqk&KW+2VC^71'}.2zR@H#ƯJ8o'73ZQL*>~E՜Zc.IEͱIbAb"phQmvC QaM]Y u{i5ᗎWlz8D&8{L8a`nq]uD^ ,hKGn`#iuT)rd^Dea3X{Q CCρtŶ3b@%&PӾfAs4 Z ͋Nՙ\h19☲ZhB ͺQ?@E: L/NmihDUe4p:bx^iwSU,oK35n"q\1fe@ F0 "j0LjNGt _ze#XqoDoq>Vp W')UC_22~t֍f3{]%nCUv>7D7vZ(#ʝ݀ߑ[w&RZ\%*TA rt͋ sLePC\,\l4XewPEa׭7A*lKMjTbR޽k?IWՄ:•)Wbe05cF^P% ݄p9 YyW%Hkj}E ?'B59Lfs{ėS< rꥨ q8Ǹ$2ex ~Lm=‹3Vw@۳®V'oXɫv:`ͅx4KC83>d4^&+9 AF:;\p {S s#|ޞa+s G2}m%Ey i T cؙCS8S jgR<6h:Ojfaj G \%릵ݏnr$\#DQ4J[$=]ܧ Uo kSc@6Id,<,xɇ4Df .DÇ\>lY)][mYKl]sI]3S*HqJc{#tq3#l<-jEGyba˴Yztd𪚏] k)=BjJ@L1 (}xbv%ax;8Rs:Gu67|Zs~oߋ¥$_q=8>R@14U 8PQ(_z퟼<9âim)Hз@h9B>؛} mAV9m=O GX] l97ϖh>Pg4DއW)q b(p3P&BNJ *b,cSV{9ZFC0:&wT?&$DWRևqח=+H\F-IiykƈZ2$86 AY֓m̼Z:;C/rGB+ޫO9 nR(39:(EZU~%Khڰc}%:sKxT:d'6?=\Q;//WRcn_ fg|2=<)X.-o6\<1ABqz6f) &MYV0z _NQէaNW/BD_:U(]ʿI.b%!$30Yi4QΆd7jcZd97gE,3u )s4=qOxp'ꖰ+JH٠qjͭ[k:lgğv1#>Jv=ݒXRz{ʑe6Xoon(ۙ$gw@.Sdi\/Ddwp_6=7K(laTYMSJژ1~b꾿ŦP^ޯWd0z-Epfާ4Hpp61SFv} )q.!L7;ɪ`mƉf-{ܙHqޔ4 TzS]﷨I=zu<23a`WH—nx6;knw`X&(ϋv#\=[Min%a>vóa1d7 s:XaF:NE[L.(y`^+2Գ"S꙲NxM0*(uKX_[/h@)%ӻ{ e ׀d?s5Ь_a 8Z?u$s![+ZI~4w1JhiamӦґŇx9>avF<5v1ܲy$O #\,%)aL6aƂTy8 OUyW`59!E os}S׈/Ďآ?sF 샕!䆮 @HZ}t?6M-'6"tp-Y(S0ĵF*䯟Аi b(6O.&bD,T\ʉ lmHvDEX6(jǬʼn.^h~;O&砃Os29~ .H (|4t$ZY. tWDq!FIU*1+ɾS]r.5Vp9 o@"0Ft j7k29nqq|QvOzAa]fi]dn6߫4VP"Iy$`dzń7!i; pE1Z2P>&Y5nOhlهDh"`lq"ƿ;, \\BAҖh+*TD*Frba0EplHl$//!F1еPPG ۄAp%l,DpfʖV/"V^h?q|'d`j@/C{kiٙ"9Que}KFɣM-hk. !1,*25RALmUJR>Q) vHH7K*ysj4 ;>~)NiU[- a= r3lϔuS'dgu4;X'f캫蝥l![ĎH3X\n~ --./UNGk; k\þs(ppJʌg`]' e >+}%*B LL%mBMr#ʥʻOQmYt&u}JsA I|oȟ_1MJAj 1LSS>H$;>t) s(>6t~Wd@=9y%Vl :Q1Y, +4s5IڡLXB硙hU7`!kYdդHz_aw:EɮBZ!ꏪFƒK;&O8}k"{*㉣,Gkfu>vnsmg\ˏӬ6\8# f*c߮%bcA D~T$P&P?kϓ*CA*<rl++`P>JprnizQjmgg'7vC:&=y{7\98S!4NPEI,mjUwDP(ƏTNG:5wAҽ#1 $+\s پ6/vbxؕ.v[FHI˩(܏]}6#||}TL_rlHK:ZI&Eiׂ ܕes̈|MTb1'=q(6UD կ׍:!PMP@r|ax[ٯͣq1D1 pzŋZ? {)3*nZ ?G8DTrs8bvfUEyZp8m2t[^ j7*P,.MPQ^1ܖ5H Rm,5oUٵo2Cu!\C*60+e> P.PV+VN`y}ճ ą]*mBg oHAE )gԐNr躎@#X":E+M r$aŸPx7qN ls3 x.\gyli۝W2gi~-3Z&b-R]` r7C^]*eP4&YgM9)+zcҙӇ0u :)*5E\/<#)iL}+d#}MОnkrf2M";w S]K\ @:5 ~2uΕpo2ʡ5͊ƿq'ȡRV}E')8"S6H$cé>ŤPr=O$ج;q[ӟLf, ђN/= Q vP-.h?:bc8'J8ڸ N~yqy~&^?=??U%iO-⭪Ks." 0a:Vm;Uaa"J2I T](cl2 <;o]mؐa"ᴀc}(Y2rJkDP˭?U6dwq~MgH8 {M˂reY\ N}V~PP# RFol\}(a\MlJi#BBbi ay}I:V7@zLɳ2?d/2n55:DDmgˢA3TV,G| [#z~V|)\@7h7P `؁Fޅ\;\1&+_b=Z~j@^ iMD3zMC05Ա=x}+}$M wIk󠄒.amCFü9/O0g!WtF\K{;&c% @,.+ETH0>QcU|Pw(HCf­3 T{z bwpO{B`ЃGѢ)ElnWm%0yQ*gqȴ(QI&Lw{N󎏱d-N&-ѳqrwU!^RAm`ycLGJ *#cfbԭ_J,|$撪z#[Fc&1hGr'*\/礝my [E^~nRx/Q<[1j-h|V`Ϛ+1_WD}H3Kѣp+`Cj9]>QT EAa #kthJ8]Zy0 " ^}JdG~@j {cẘ8gp­я{?カ9­2؇>ZiQ [03jWy6}2ӖB+0wa>MnKONc~^Z7PO_+]g @G<Xg)fכ[q!{Kn."ݘww lAb;bC`'>ޢ\Z/ \w_VPDMﹺ¹P4rql)v H{l&u8 Gvem0#OFq;i')5v$xt_U4Y?XcA0 Asra,iD++K8lxfEbz_&R_#5T=^BpY][^9dfݯv&:c5NbAאfsdS"k)Z-=Ҥ>~̼%.*9xtT=Qe@|#6 d"k!Ƶ[=h,CCvwfyx-t璧3V ɝ\M?׃)`.1o9S%64aB!dꓺ)uQ6BҺAk !6xȋV(41oE@ )L}YYԪMxZ-kX':x,oظEf :v^omr V_s\l2UϭV$`]?] Z+ ]vRؔ`ʣ5S3#GOX}r]h 'ѬOFrY6|ڨlIʆ nsla;j v,$φMUoZ]gB42)Ds4{)x }{"pUdnQMq\r{Ƥ<>Q$ҡG cQ+LqXQጨq30LsiD$jY){?$/}XbqN0ə,{pZ{?*aί"?G76|R8[;݊!C4wGEg.aG&*;f >%:Xb4lrP0f3VvaWqv5 D$ۄD{2JxsZ!!tcd#{Uىov@Fxk;lF'55ZcVzUEFK6x+MI.N}^:} ODU#5ᇩeYO7#K Z/ccޡU0ydARnۮKS=1w ƙw5Eު.8' tE]΂T/NvԥlqTMCfb,J|;~2Cӑ Nt:2Q>W1( 0Py !]~EshZ=M)~)@WՀJ.R%~/!,ܱ4$Jj(" heЋã8vPW4h(7烨F™7Wf:gma v^} kg~%)<8G4 p_ۉyӄյ8vUt"DMS_G5mbRR}m~wp#Ryc{ NpJQKe[X߾" G^fmnP6 )  yY@m^`L Y_B^8 KfɂEřC:tĊrGx|IJnp]ϽSPKfS7Z?44Co!|U|^ƿ BxagCf:Z]//-7eYaӊP)o 4} е_ M&!8D0{+oc|bAd>;DG"uv 5HNdj{-T} ءtIZQMiPJrmi^| <eK8 X@4 8NX5UX4ՊdCY +uzPfKF'n<~X̎IsX "x<3|R䊊/t9`fkzyE3W*ApZV+{O$I/1: T5҇2G,j)a]O;U5>@~echNQ"@G[ c lb5DȀl;13> _8g_. * {Y#EJWe1P;@#  hˏ}˾N}S)#}e{X+T["$dW3`[pL!34mdA3RsYeg`o_udMkˆ\}Ezӥb.+k:lxf_M x{by= ,Ws]ӵ(/9u>Id+j3- ,@.CU*F^,4;GL=[N|=s'Z qkiy۝b762$A4Xd[ԁtE$mvi,d DfP[)r*j_Vȝ,RcDŽ x0\K1d{/*42~"'$2w- +|-/*8/R~%2e $x2Fqh&h)U֗b@~ 1#\Ƀ49?u/|xCd)(H 4b%Ɔ%= qѮ7Ni/PMj6SWp!H( -)xցI-*,f߻.j"U  }HɦPn$+_@4=9NaHifz&{)"Io6-gހyC]9(>;,Q방pԠ)QG3Y9iۊkt}yِe vsaZ]p|T<.ͦd#5F#FFF]m:WnZXk_HW_jgGK5W@Z ԝ@-:-I8i ϼ "Ygfc;S:]֏>Nf1ˡ02M uۿ_~t7+:=ÔANODF8u;"_ZcQj$=Ib2c6rp-k kx5/L-bE&7+G::8t<3e/-vv13T:yPQzp%j~G8Уmu@6\fveAB4\R!ho%ۧqP*N6*l;zG\KQѯ1Tmea.pCufX.LM8C0_-v,`I%~(#NX*B%/1O&'L7e3eKfgE:+%w0,W)L,{k!/΋FgӛSr1ޭijM/S(Q7]lRAu66I{W+̙6:1sGD,$ :7`,95 *ވ\6/0Hdԥk"q!t?E|g|ҁ"(cLNwgt.IZ?T!*ięaKf&PnJ3f}D$҃|qZ nröCf|~<Ym^LULuy.\g k.zuV=4tFwz#i"Ha IXX\Cw=TpW@۱3ڳ/<2U71(#)=:IB_G= g.;F;@j!T?E靯1ɸOU|Yɠxbq]%#!kj68CY3t{6D+gMԷn7u2͋Z #_¦!n&{9]7/q"`IM}&@C;i~ qK{I["B%5HPHrӷR4D@4MK`<2ֱ˾e4 Z&)t̘)G.eqTvy4ZF.c~f$8#ruBVF M&4d ڷo]0}JzeϴbTasN&z&b4""Y`JJ\B~(?ZvUHգidzȉR!S귗l5b:j>vWuJ^Jrh] ͑7G]ͼU/8]RAs=ʒlgs.h0ETTՕ-824oWߨ&9m~ ya7`}H˳+ʽ/DF',`lkey@7/U )om10C"꽃OqQ.TB_9"ԨS6HpOĭȾo~@`u| M4Ghۆpc NOZ`K_ ''GZ%HI5 s z⤥KzJ-k'2H࿵gxZ7 ?k$ 㺈C SLSc"R:+_Lf#;wWL-+}/ 2VhjK{;A#PkX Og{7W/%?6 UmqNuL`V{dopu9*6$\"i#z/LtZjr^ߊqẈhGSFJwb ',yU2al0Iթxqřd̖̏ >Wjb0sV`*'w]>5(CȦy,@u=}8j tjaj^1.7>Z˶AK %ԧ !v:Oʴڭ0aҾڏuƸFRXn㉎Ig*t$uȨ*T$G#ibX:lR$zߡ+:VUyَ4*A%Ә5OK1mLx9Rz5~|)d׿fN.jWrEk,2FX|PԚޟ,feI?.^H߿L8Pv ?]zP@jjm1Tvl;, "GAh8t?vϙS-LðؠAQsSa{U\ KFH7|d.=m$sφRs"Gh댚ɒP_WdԊG̡w{,K9&A$3̰c9kI6S??bĞ]JAwC)Ș+8O!kX yV *B'jh4:mQy|D?Y gQpZDj_E"[9pzzsBue{ۨ٥b-a=_pX"/JekLH'Ӻ]ߪ ڮGϋX3>`k7]}7BW1jځ1|^ c.=sGW'_<},9_kRã積vvەyϵ̏-Y ᅦށl<j ^][ (01vjP el5qv]VL0Zđ\i!N}dXrzԏvDه-1 yXdĩV:N".H:؉o=1K2|Ӗg5C()pQvR˔֘HaǕb +qT+ 79=]ȃQJgƄ 9_BTWi[CځnHmŧ/r? ap TǝF zyD GGgysN$mHSiYt*zKTʕEahT xGh8RA3v}djY7{8՜m^`|滤k sgph9ޣ%KrX}@_a{?%-%JW29;.ǪfG&jwt=XD Ӹ#/7e}tf?99iTx5Rz'Ak ZNsƷ%[r8 L)@=|NI-hI+_cK$bsŘW73lː^VL' ?b%ܼ(as(F3X1}x{,oGXq'/[cvs0^XYJB&!ݦV % 焞9(p|֋p4"FZi}:#ːea 3Tk:>q?i%{'W߉$P"ϒqUh9"=ڻ[nPP !S62"D1C.\Vq4B҅mN$aW_T (YfPf(nξwս3"I8Ƅ"?8bBtgC{dB=mVЅ/Hi ^'̊]coju-N|ah2ۻ k4# $c~K[]7! xB\}-Ox!*/hWCACm?&Z$s6WRŝIJ.kH\KjU(I *qY{w2/k!92GN0Kُ#x(#X )+zNdMiƉ DDQ!S܄c 15dBe@ É\!Iį6A:gw oPhy5hh@LYf͜>678ڢtGJdK n - F(yM5{!f5K,yuI_CIe3#p~-b )|6X-|}x~o:? ߎLF(LX<ؐ(llˏ-N%tTz>x#ȀEŴ B666MD;BhxZgS"o<pM 2/ޟVTkf)򜤵GHK}4pC BL7H< %Nkte\1a :>!LRr f/(5b*t&rD;x kQC9#B*t<ol2LQ4V!#p.MhKZDPڜP5(@] }s E(o/c3.'e4.e< Ƣuͭ37nL?2,4`fK-A"""ɘm MVs8RZB'}~ d,:e'$@A+a! 2GlGVՏbXҠWc6]y/I ~ Vs }p!hAK楇 ߜhXmU>[$ &-%zl*t4[D^/eNDq(mB EER^fsv~ AGi9X䆼LxBxL`G3-69WL -4!0%z:S,G3:qIpPs)Y^nQlBqjĶ陟fL7r~U=xQO*ʪa Ե~Scɟ^EelMrbw%Kz-1iR(-l7fRӆv1Δ,ìwo57q_rу`M| ˶\Z I LK*tQm.%}N;;rAڧ‘.A%nHB,q"^^EI3j:4=>|} ~Clpڪ4]+ OQKƷ.TVkbՓ0l&(_cɈ뛇Kȳ4| :D[>jL5gwĚYZuJAl;=Z80|;+DƏCmgRK/M)RR9׌l._|}N7N,l? 'P5"C>ߺRwvN02#ҎX ^+Ќbx/RmAa Zr㾳j¡M&=zml ΄=yD$hU"ŢH10nي|j;Sw6MwM?'Kg B e>rfν3-puA\ ؋O#[HkED4ZybNL=Gm΁uG8f_,/ /+ j s ]Q~>PURjP w_"ZgUh^Tg EV52:Y7hZ8;C[A+|D6p$J#'xaom %XC?/''^,ǻԸ[4NgB)K~0&зN]YQsJ5 v\@2 "> TDiĵթn:bIhE;ނcuNS|"ZtR%zJA}AU&Cv͉Z_0c4id6к".:A)F2Ρ wNQyt/w.= \-(mY`7m@ۇK"F`G!Tc?anidL]aW$t;kJoe(hDB̚; c(GX.m4տ5KF<~dy qU"p(}p:.2=,R2_8 OcO[Z*#O}5xlѪ luUCmQ)=BSs8甗>W¥1a%P[|w)="X0mxLr%SIy?wLaлCнz]ΡS @!-3B<>>Avb虞2D\Ed]0oq ie ^Af-rnBN6#So./y?1ĢDF[lfLz5FGQ{wc1FpKb.{Us { Q(_vOdtAхs^K! 64Rn=K`7޴^@,Oʨ ZŻ!Ib0 Zk1jMx-<4Gc8]tW{0/:h@IS+Q $%]ĝyV>ImVa rn[qQv@1B]1 ]vLQZ%t]Ȅ͠?cFͮsyE>^)M166-p&MZ2bwuSzhoi"ZxpxRT W+&ڌ(4!E7d("|Z'+$ K}80UPSk)cMʵ$Z5~K @ɼL&I> r J9ކ=6?5՟x n*Zqg02U~o#{`7k 9`211x0K+Knkcfc)E =7A#o>_L$„o}9H[ Pe(OK$O"(b`ko’9C<{ ^LW{hTZAJb9*;mEXJ~1vE.JJOe-Q:RO?ДqV0'$żRVڈK3Y2]M5VPlXO9ˀ󀋷K*^-bidBbD~9;$uc!-ǭ1FvpN-*N Ӯ& Lsƒff|ƿezCH՜# :\v]z~k.+ewɇyY6Aē &䉳L&#eaz:z_Ps('l> nKm%_LI3i8Uurʋ]7 W T~֋? p[,l/xsF$aoXa @O|:o4Q(ݼci"EYM JV 0qtmQ{:yU>K0+go¡~gDy{kf:=̽ѹ#QI// DOamWi.Y),ڌνHulB*)_k[Ԍ3匝몱F \{Tֶkp;[А".0Eb]U9EDF~K?uuP{4SW$x_ BD,C6yY#큈Z_WgA`S`{\gel2C2K|Α\kŝD7'5EU|MXyI&4e0l;ȰBev &(DxYgWn/2*Kl󋣗P2{YR|yI 憧]^@"n8>x-'b_;\W 鴞H4SR ,|3&פP[ T)"(H.MVsNf`yhm.lSUMRo*AetV W_ҡIpnayL'3we*Ku̓+Vlh_u # B ȯn*rP[,opZzMZ fuЪ63I嶽RQ5CUD@ٍaCTE/3{ޡ: ;} Q՚K&D ΪX2RP űyt5ŲCdz6 \v!N)m_Mb@껊%U؜ ;PX! ʃ5q8U,v19<Z»#w‹91 첰OYXE[tu3v=U}q|u)Q`+ ;7DZ˝1w-|aP=tjJ{5;?4/.`WZXD=Ml@jc\5A2$*6?J)92cQn"gTl(E: JuMu+ I)eo9:*g6U18 .Z^DY%MèeFVN{$6?s{ٔ;\bmfykPKq ]&S^ (sh@_Xmj'\sBwa1:sct$ƣA q$Oa0Rbge-HAbvcn遥@q^O!ۢav&3BE +yIO>;'<*$o=z7jG8sY%L{!&  WX7/ypDdA߃fSYtnX( t;UHJmX? b\pee4YzAHXKwe폻ՒPhLX"cURD@$&PĉC<:L!{T&l]4{uI7BTݧ ߨXo3=maԯNSeiBU@&'yP9P EW'CƜ)=sEz'<5 ;O8*3L ? k\=- oeal Nи8Nw }@̟Ȩ(2hljt;ݪu.3Ӣr9e f#M{qWj=O'F*o]HX h!;Ze%%7iUl<&Iu?{#@STVxp^W<*\>nA^XV%LK^ a;N_A;u5f$nhkaT<>q^zmPEeP&E>0jZ\1Bm7.r ۪tY1%,muG3#o<;N T)]ɪ]uT)i# :a0܋w݊d` E<~P #P/d\ u~E?gus+ dTJVꁷ65i8 $w&e{3 ɾיspM/Hs;K2/iG OW|ꓣIWY'rDtfMt zݍ"r&1[WaWXozwKJ)ŵE"HSrWC WV^WɶgO& ஈ9 ߣVҼAr\&=5 &u* ~~npW"Za>)D g};r.5Dܟ+2k kPef"i1;^8>&2\hAd'_;eۤpB>MՄ߸={<hfL[ fj'}IťlLH7:( h`qp HIq,Ccd'(=sSd##&Auv-\ՐmR@z:Mx &8i *XM[:,{ rk7I=H a({vQVP$UД2PmNtP 'U6Q_c4A*|&QbTkžSS N3 |i㠋ڍ!Eš*]YЪ6ެJi + _>p0;gEns\a_H.]8!bMTWLJebLMʈD&ag#3qؖ4q6L8^KnTx\p!x-2v4jLD/vu==Pn "Ĉ ͕v OD,6D2s[as[|z h[vy.<-GԌyD*>Q h_E!%>.˪^5-7X @7eY6kAc@Rlt國VQn2c<=lÁۮn`]aCkc>+2xHclpuo$VTE<2nZza;uP7[~G ECmWxI#:3bĎfZ~N*U0O5oEƍ7iG܅KGx3^@8j*G&S9A`UT~T#INqiآkŸF1LxPvS"~HrClu%f'H}iT"KyʛF1Ylk9 +NS #ΨM~*Kp<>ernSHgZڟƠk55c(i<NvJ<قimU#HbϺ֖Vď4c0~QՖVO︶cˣ' oΥ(•[R47f7d&aˌ4gerKB_eBD 95Ƈ5ɒA+@@KjeBڈL VXA˾^M!{ K}ZbJ`e٩"f5[zBZ@a=Cp2l<EҐV9((nBN3#TvMt|ǯ7dauPDu if{`-X2}ruP-8Q|G,mE73nmybQXP_83N H!k:]_' xEȪ%<O`f PyˎrdXaP҄bza/wJ~4_Agʵ o~PߩF.QS>JUX%^1 GUsk ݷMېJ OH5;w~ybK'Y@M% L9;pRzR,mhsE>@bǿGQXuj5fm{[$Rʯi4>pguh Z^KuSB+otYNtbaA粍TZ om~n.>EӠT nvރ j v "n+Yn{9TvcM6tT{XĘ&GlCr! / _ &998K^f5׫ z+_J(q˽98{%+ \Й us1"KZȹ=~ s>Sߪ3JkG?L!`d=eߴP '`rH 3zT|55XVo87F|_w!NP ~U" 22=. H"s ~K^nG$'8Ά_LY5min!}A*B2K@#HJ>؜2p~Ӆ۱7-m"۸M@T׸$;5x&Q\^AVo}_$OBJf?{.j#'}1@NfpwD?>GF2ز9RR/g>BIܐȽ2|b.VLD9qHɡ_n} {ʽ6Yh44o5˓@_v.t0KzK6D%$[Ǥ4\M.gfbyz1"!2k6eܣ{h9i``gyjKL{[Y&XpTiQ;&簀񉽘B#I1ofomj~N#pCn&:[_E~3t* wLgY,: Lzn(J辯Y|hMl बEJװ?Ǖ.`$N]F6dkͅ]_d3 YР?}YC:R{-lB xqA3GFh@Abvf+@] <[EElX`}ݕ}T:Dmz679ZpjCzo_D Njox ͚EԊO🤶Y$LqĀA@5(/+LuԅhSWFT*jVVj¿ƹ 4o K0qNB:}LT.A?tINz3-h}+\^+HXNTym3 5gm54Z1AN^?] "^2ڎ'S݈GA5F@rD2sVv M\ΩibK 1$K(OE>Pྪ%qvkyvb$e6k{|!AWDrH=mp)9>eGw͂A0WʣDEXߜTU#ܤ VtcZtŮ/ґ<{%}S$/W?ȃke"I3kZ Zx⨏e?{GJKQx"%:?L|mCj{Bu#|H ]ݵz5)stS>4]CG~y3Y'GBU?'[]x3xцDdY693^_"ۛeJ:|,okؕ&(Kۖd7D-{؁Z{G1h2 )\!K$n܀s\"- ]}QJ>#a6k{h7QOy8-D]cK47R{rAd.NΝ+>{hz,T3謮#: +Ϊf&\,r.}~z'gxmOA?V@\Ӆ$mJ6s3W9: ] 0h|AMfyX'Sw6'?:Zj;ƅZ\k,yoI_8~G~#e<xc]8hSWy X(=A=~;5J11}1Ni9O1B*e*"^$}IDi'x[\NZQIRa}asvAa+Ez+XS?;9ğ'u9R+aOJެpS9 ʣ8)sOggh,}aFK.1y$-)H%hW#88 ;ޯ_ɵIuCG8,[Dx*pű֑$OwA2Gh2@SSk~Z.ٗ|h7ug۰!}. [On_j{jx9z2VzR. >Xl,?ƂCiPܧ.cw%=!8Wz͠Jx~~w3k6GA-lg /0"1p'6Ѕ>a3+kj{cTxBq4T.VO1$׿G I;UL?lD>P`Vkxc{݊le*yE#,ehFDFwZ$ \N]cf {AYzY˘ۖI],k'^1$YPZT,ԓZ9y׹-6ySHc,^f6V =`}CpmsvQCI~*1ѭ@sQ:yeH|{y`.Oj3Ұ1 K{l˵( Oȫ;!5EW:V aptta 5;ZQi<WϿn:¢ U(}U_0E)%t  3Y5K_aq:7zu/ ZCDɤS៥?x? r d-9zϥUirЩ O4ua(JY^8AS*œOol @h cdE7`Bh&r 1Bf׃1W[3ރ~ VVtTv65x-D$Wsb; rBG^[@Hyn$U5P1\ώ*0USMz2¹00)_#Pe˩e38 *'~çH*l V&PӺ˭z ? ztnrtb ܨ Ho׵3Wc5]"S&u2% q ѽJ:[.H34U,Gl͜R:Yp~ :wD\(WǴI <ɀd4wr-\klp7F"sǔIm#rvAػݞ=&𮌴s"2ZӴdx4@29^p%XA|gRiL!^r[R cbO?[%3r Ck*:&DeK#>v_!31DA8Г'+N8>4x56<\Z:Zi{C~񚑿 !o[}P3bcz-ʤ^Rȑ6~;Þ|^bN1V=TۿT~O +.:; P3AqWD`vl r9֍;O,+*D8QܗuӋqsBb[Bs. "KveD1N3!n  .8-g˷#A iQs.d(M3n~*7$_rT&;g$5~pŮ9cGHCkH.KCJy{ns&\D+OznI!b];ID}ϓբPM hA59[oHeTz]LT9?ԁơ@LD}$XUBڎ\J] vaWYp% ҈n/vjSs|x@qDݽڒaUs>|ms%pN{neͬQGE(XAOy͌|?hSnU励",Fgum66K'9 Mqk $'s_2d{]vL=S&\Ȫ+~0EGFpyIQ'jOdeq/-^n8*dT&Y.^K;yqzR0\¹45A,8S#@CᏑpuաr Ơ^u|`P9l˝%K^lu{Hq:F,'r ۨ92,*AEI},yNQUS KrChɣnܽUI 0tՇK$.;Q$I6 A˦lyѸ(ʚp/LC)rF9gE:-wR [.tF__3ԛ^ܚ Lꋎg ²4No>+xR N %3&t0fKSBGiNZ %l#Z+Y(L 2;~ݷ( H*ث'.O ("!i7Sֹ[x~^>Xd&l)0wCx >>>~$],fw/b{(` 'ĺ'; `Բ2o39~OSMSkbL߾ > 㱾D՛f7 " %T@ [LTR1YOpW&|3?B0HOTI&Is:-p#׆Qٹ͕{XܲޤݶQxa- 703CDlpϡ8v .0b2dʶ2 ") ѭN/"x?㞜7> C*%\92 LD*3N 9HSBQB@@5#ai1;[xGS Zy0sH~!8讒z##{(E%>lD:šrqi HǤ3װ[ ,޲9x&Ykd+ӸHeD z*OAxr2ӑ!7c?E"*c餞U3 1c&(_opnY07Ooʱk zyD"(I*}_d$d^qW \l(s6y/2~*v`1(0&Q+~Ϻm_OY-bKT=ٹϕbίOYPh} :dQ#X%Pp牭E*P+5}W3!ˉaB5bX4<Pw]J%$Id0V ˗ WQV6A߾\9Ba(Nmot :xt` Q9B&AoN!ϴ6ԈsZ-TD :G3H嗿߲ŢHǛJF^R-07xwl{:&RFJpR5ٔF{G$ingX-ǰ|L<ݠ=9BQi<WVZ9k5L.!sF9V9F7[Xѓ'D3P Db8;O Bn.|b_CH[)(PCxPzLi @I A)&ݙ8pCtUUG`{NN}x(~\LMuZ¬ƌ< i.8u\t@" U) 5R/Y2<=c:ROSD[b BJ#i,N x(6! &O_ b.ܷisGƫL(b`VwlD>K?{)^<8-`٪գVOm#2=O_H}m{mr:8N*Y?'8Wm~«9MF/jV-S7goP=#o:>i'z.o ]y9q 01ݶV!O[$Fse>|k#},dgП^9Qd?XsˎYχ &RWp-#򄤕{շpںlg U5n_ Ya.VF79wI5'Նb6N.r=:'8q_>stopV#RLW42w=grB. H)L;Ӕ< D U G u \$ DoO)p;YhDomӇ f'J?d SkFEhM[]8znEuc4!HZȮO]l؟w5ˍvXZw|O LRwD|i1ѣ3q @Ga2htu 5+F$CVP:+=ߘDo.J%/g`NRYB#6jIG.NaGˎe=хE]L+pCYVuk7"Ӽb)BKIP¬Ef8P3ѻ_yN5,ʾt 0s|z .κoVEY'*sшR l ]-^:Z@5P\Nc.dŲ&xy8O[+`1֦&b t@'qoUF=^ԣt#)azPRZJK/[Q]wc9W}„Λ*c{WUX%zSn(vY >{EF"I |$Vnʜ&q$J^5w~=tpV罁 uG\1o:ݡV0[SG&}uiS0_]hNvU! O_t~Dg$]S=E8ت9v<ɀ`e5l6 }M[ إ8穇I(tzBJA8EuٕCL{ 7y`.2%iS#XyMZ@ Å(+2uTFպɠpYmOA7=P^:Ymnhi>U֍ yNJAbB+ 'M\L8 K01 moZc&?uE~\S4i'˜9!eOr*qk]RxWL°E[V[!nq!ꂛAq&0E!߀8rovU7CB}ƻ8#3oh̀ҲBL(~,Z*"~?wԛz8d#*Y6?Xfz" ՝0oޤ@9ޜzr?}0X7zr,,oBSM46%J{\0rӂڥK ^љѨ,Mj\nu軏::/[I0h4].@^P (<f$*I**ډ9 Ɠҏ(KzѤӂhr~@kJe0m@X4+(pBgkKtI5f;(~Lza4 i9jp)(*yЙhTd~t/-ފWK,#A,lX Rb90Msp*S SS7S#&'!ӑvpxƕj0NpGͭQpar_z;;bI^,^X*S*ԴZ{%dz*V9 +zL)hDdXq`)Yv`SIܓ߀;[7[ ux[~þoVϷǓZy@,?bStcIg+7ғr϶"VҲ^DOY8hw΍$qLX:qGH<$yT%!|lUV5sPѦ}q| *(|rn-Jv26݌#SXPפcAZw=8z)2v~Z#J ^KZ}Ն!Mm[־>ii-BMP,U4Ta){wԶv LtlĪ/tXAH0D:1bW &ugs+k7Mt 1t}G UNa[͡:q5/nrHq诐VU]sޒ1>UPahz]/IzLo:Y~p@H~\ 6?i>EnIfnu![SrVb9[,^yqބZ-ctI).Ӭ޲VJ_ۉF2NGtK׃W OHu=pGY&5bǴ }D\r`UKzhYmiWj!`&jHi, z}yV-F@7J}$K|ZzT@<;Qh ':T79H{ 5s"*㠍g|"{ EIb)a >6i&}4|cNv Ę zR\7erNꜳeh7G&Oqg5 DRDwJxj.JO)=eg@( BLjs'mӑ{ENޱk'x<PȡjMX\1&Ⱥ'G [xQ^uLLc>$՝k{^o#gLDFsy6a2a-8Kb'u9-vK,9w Po1wc#&K:Q2%@n7ęDU%Y.CI$ Yq~pB,Γ#y6NU]3vrp0yLA.skj:|׽CśJ,!pexWC00 C_U'B]pAU9f$ۨukBwU]ͅx{Y[Z% OUl'H?Xw-A6~$5g &%|ەq d NÅZF?ͨCݑ( (łrK.q"b#3u|)/+x[PI bNIhE F/M/ܭQkD_$z0:YeG:'wGwL|`NU6 ˣvZ+ Rg 6Ƀ"i KwsLBmil Syz(;}w#"hŧ@Xie:Dg BHO@5tp e@߶0@>ۙChǩ(829drU;|cíT}v}a=$}2XF{ZtO5.(Z XI֯1ѩQSv ظ$Qh>k/:4g3hk-#21]ydLp>nDq#.ӦhDIC򭣵쉴jn9%@: 8֙qs!1q#p1v{$)u*6:<ц`q6> X[ WMęj}cE{x>:!,T4UOWu$OXγAcmPJNXjHB\->0lO(1Vo2dɏ|<vbrd̈́ɘF(F>7F^ςz@: W=C9q tF=Yh1`E_2fҷOr"{P!0\Kg$etW 92@&&ߠz^i Q'VS^BTZemJHmuiCDisЙ!|{D79*D ض؁ʉ]Žn$U]Pp]Oӧ:kK}ko"N-X^徾usgR~r h\Q5{9 qĀ]4bo6_VCU}C ĩVtlݎ?N 795ElWaAtݲo-qdBj8wQ{4V1 OS =%˴ Oە2NE!uIzq 徖_.2PFs.ӇFȲbxu$YA,|{S W2w%3K>\`p۫~ɦtSAΔBΗMiÜ6ߏ1S!zIE/z <s+!{C%I9q/ Q-ѥܷЇ}]rlSz~XHC#.9E((bLk O\O?z"Ǣ)zݣR5߀G׷Sro ° Dс'CG"ka3K>Gd]_kzOX<IﻞC$ت5Qjc5KI#@EC~Fj ;5nU,(-E2韼O DoeneJ;5/HP<8]wy+;u%1$}RRØFAaև- A[&3JpIb'@>W.J: = l0 Tm ˝c,Uv a<=AP'9'3"ZN,X]B8QA4!&6c ~dL7oҲxp~,Fu>[-srsӕks(͵?z#jV+C z Cܳ:zO MZ>BK;ѡc\Qlv EmA࿮'10g}[0hi['U; *JGuf>ɚ{ecI⻃ ,4GM6S(ϳXs9'0| &; znŀ>' 0vɳWVڢb,o8UVF- ˙]Jݪ`gѵoZH eUzo:gW>! hCY\ "b"C1F*m3wײ@{EX$<" [0rtGABpT`G` VTH6@aQ-$OEȸU&׺1E Y eW;0CjynW>tjϜ(Dw}/ʳHdFsDꄷ)RqoN[>aCvw)i-31 /\~޲焾Hm1croɝFu=>%NfR*,)߮ȓcX%[jZ㐧=dJ, {"e߳>ֲOkz01~+^W/wv=VAsbh!=_k9c SR"v- 2؞!j-c?Ėu,IP8*:bv7u2o D|ɴ^ B @Z`j#>,%g DXeBq0#כ̯b4EV!$(@ vYWxxKX>4Phjt}% t窪.574i@a)D+0RomtB /xWa! mb*U|܉ts0\"h2ALȄt.gr&_ӶId߲ ǹ09T)6]UK%M~Kg`pbGu@J@0 j#DU#̀}ipTJ8r}vAnQ+ #E~IN:\ :3p_v4:1`dzQ$𞭾'ޏߠKt9־ߘ0/D7ɜm Qј 0gWz7 DhzV!aWvիpWďjbhiLB{tE׌c~ %lv\#cex8tLKR[ΒtѦAUXՠEcX5‚KJ 8g#b_ ,gyh :۹i| ltXJsD?G;[nHuHc#>5ód.pd¾3Yt_ā[j|/_fZ5_l!5"8т:-ˉe kz{zițuu'^SJgV@A|RC y jtZ6L L':1N)4l&x헶>ݛJs e1rI -כ;SǷ+$"9:/?]JS@s!Al E>|Կǎ.yu1TVo+nrB*,W0V}+2L aHٔʴW@E-OAzuea WvTօk+Fw慁Q%vt;5ZICOpo5g$*i^d!_ڟYHo1[C\F@ k/E?SUCUf8hqm9r]vΚrEh{9X+Ȟ(nj3rgŌ$&þA940?egNښ⣾fQSd"U% D~3gUfWJ1-KoA2NEp'ൃ̈́ Jqv`5K kЉxʛ;RG^eFly,{T3RiW>ڬ>,xrBh6 v0b䝸 *wdt$:y1e&Dkp׵^s#,hpw2 80M/jTMc^ra +ͣ2ujҗ+YT=a:>m+&gpu"ep-c@s[i2ô>{pt45{cOg@ +LqF -@)'U|gfUhCo#tqFm+_|(' #D ^.4;e));+T%Ԙ-Eq(ȳv@ԗ%e0iv:1%fbdN6ej[IfJ]3jB"Ĥ)lJUw&ߡIWy© ™/A1DFە(u\hu UD6eA)yao ܒM4 䜺ݠa|-+FF^4vװMC# {WLHX@&gHD*`flFa e~Nøh}jYְpO#;8L*LmH-GGf RDin -q]?K%7,OK`#EG78C A aT Ņ _$iyߴ%}3jcz^z[˂Dk yh%rB$ RB(|p&& $_#&\Sn]^mSMhJ?L?!h~3T@Y /LO{Drh62U>>6Ɩ0^lj2LgT$7BssTHv;sw~08M1+~lGt/#RPhJd#/рɖPDGdf|fyx.(qs].;%+hH@~?pR7׉E_bVOJ^K7 쌥͡82 &Mped%rYX{]AR<_ יvjޡgfNc1Gs;"'mf(**Iw 3n\LNC"7 *!,P#s 48m]'E] I!li8>inW[;ϔkK4Ľj6AVnj4Ag]9LyYo)xӌwC :_.TO0~5 /a^PI&x_$I .3.V+mv5B{!tgLB®ǽ4ʎqظCC\ HK>u-2~Z Phq2\RJāz5ݳSn'cm8b))POhm}!ƽa%J Et%W *5F/S]Ĉu]k洣:о-7W SΪp7nՊw{c>F j5;P㟢"UjpxsE6;KP$5,V [ ) sR;!,dK^&3VUپ饢Rh͎DjeHӦJE8ճ S5Q|"+rJPxvPKkΊjQ7 Í$3uybT_" VnN2R\UnjO* 6j^;R( T`BI^)V^2܇nA@;'#mj}Uw4*:F6^E\^{֝m0*ɉ nkkSeI^Gb[J]w 3WCُ;_K~]*`D1z*jy U|{Qɳ!M&uZC@ ᷸$mUhvCmN$06;7zx }bԝwMDl5eӃDTne6QF>G x~^R8InetulEr=pǹ_KS^o6e ){=8߷fd]}CM)˹aGhჂqr1=;3J:ǙbOA̼KXZ .%FN+jL'U%<.נ/-9AN)LԜ45<* \n\s kTO3!L \b\ `P|k›~߱p6 ]b ]p_d|Vdp۶8_u :{~xАz uh/[Wѓ~mdϞ?""Լ@켵h^TW,7SZqJi;ǡKl1{|!(.ztmίjFGU$ /aF^ dj}Y {d!#yA=NW?&K -Y9\@RX-D̹/_wVjfdҦ怒=pܤsk˹Gs.z_&*JZ_u~5 w2y` ZHƞ+ҡ5Xva~QXXGO`Q?m˖>⫀䐟u!*fy'Q7iy׳!O:h];Я |K^DJ$$nv8[Đ{[3.}iv/vCwUk4R9*7_ފϬې_S Fۦk)ɡ*ȼ Q~bo QlIxX,ɇC=BniB=:1c.YD:AiJ|ᚊI_lԍ[ĠVHKuI/\YFRtU/wT_,ifտ`0"=Z'.yvyrvn0L4c?sr9d]hLI?IW/Iӡ33;_mܻ)i!U8I> xPUz=lCӐf>QhNq[Q@YHs#3Apı/k5vȎe*՘È4 88H51LDv<*3F=mn+(6w5^fŽOi/Lתe-'zh_rەo;KlS%@p>'/sBa?pe an tk;`M|Cʞa&ͼ7) $' J|m7)o*Gpq^e{2 rN;_K+ILS<:[L:K|HFCuzt6jy:\*Tb62Tw Kub{7/vW?"&&妋 WpVz1,㟄Zd1E=ZvQcw'^KGKoTg$C ښ @Å񐪭.@ށklG C2VO*;g(~لˎxɣ(+ Ph67햊&gz`ޒO盖`8-V2wF҉4t ! G%Ą`M/E}wûiOq@e NI6AdVJ &؝?aX ?'ȁp%VqYO,)pl>TG,& 8 Ez鱯~{#T\3T7/"ˎjD{jKtնNf_8e>GZQ'|0RW&h )wWʍ+\sgs]}SrT;J$"'/7?`%Q{I΂~S;ȠJz'b6p69zj&a-'@=9w@*`_0]c?bSj|}9cgAٓH禾*=:е8168y$t]iA({sPv <g|#ݿnBx {(u nwO7t/8Nk?>iIj[ :*)n"ňC+5b6I `ǟ*mռ!cAgl1czށi6-#~+3$8;S3/)Y+c})&8Rd}nKryr\QAsBB֙a۾MUdqHF%I鈞׬#"AE+N0P M&-*Xeu{FI#r :R>_>TjȦ'FQtʱ:"{/ ):b}kEzBPǑ=AՀ=lQ>P;DN&Ԍtܭε\\D%ݰxsIetC¥~K(t.n`oVF҄I܇r8%8`jPY:P2qT[ V uԍu@ՉGI-C461ygAEu%4ȴ|I<._04~",]Twdr H[NO[hCUIx8ݫFλzH; Xf8itlum lӥ"^V$⻟O9+xmҔlgb_4&\E_&mwg?=5ݕ|%Zpm}"h-aM^=Ȣ ˺ѣ۱Pg&{5祧x! !2 :.Ў'NFG<—d:u3{Rے`̾5SfP  ){S0*/&!_bp)Tɨ D#V5b=%ݟ2 8 >8|F4+17'\ӡJQG"<|)XBg0Cf^:6Y4m ,,y{(ˡf0{zTۼI "CzC!-h>/P.G}ޤ]ԙ& v7_vF1iΑndM= Wg/ ԑ 8V#|2W:7'n\0K^JӼ.* cqlcFLTϚߕH4Q!Aeogg$EO9>“$.ro tSo\t}ܲm@<ɖhe?Vs-*#Q_[>ָmj$*"HH^{^u ?:wrPӺ\ܞP\$JP>6X\ Ċh {%#_vP]Yjy +q9.vofdnxiDNrfBcf_@(U;H;ixLaqrbE\,_\a/mic7`h';*?8L7T̛05${͵JP7&i%_x׵ 8x Ⱦ)UYi=6&YF4_QccVHl}z_r# X=ɦ BW;+b|,Uη$ ]LpY2d口1f~H1Pʽ9yh98Hx_G'SkJ"E|IyV B2exqrWW[ʁ>/:e$q]s_p0,k&) JEB_w|*3K|HF+Ƙkb*` TsoTmu}Pݦ.9Tq4Maqy\ Ź.0ed?𡙦k_if LK5ʹ1D̡$%0:z`3+7 =kpM0,ɀРVbmX)~Z &@:Żb߭='!]l>d]]RWX==*hHz/49P 4pU,&V!zx~M/b'ڳX3 x_ˋaQKD7\M ;ǟ/Q+1M}oFjaj bsh\BcQ1>FCoN&"V[@.i*@WwE)z_NtCZTM~WAbYJv6P)MD tE≿J@ˌaIQnF$:GGw|[?W焔e4Q_sX}G&15Մo䔁{ bf4ޗB#˛gSKKQa5≗gF7w`.UqSDG)B")cW3֔+tÞ8VCк4єSF>"RV&TJv滹:cki"4{C"^bn$!A@T$'d_DzPCTAʱ1r5ÄUjiՇ$kr'0vQp-Ө8~D_nB8OW8P3M l2ƔaZZe[ju^h|q~o%c2ڣF(l$3s751xRG<<7Vz9#ݳWշfKnZ=uqfX :QC9~P*NUFB-YjvHkhKO_uVRCV3!eV͘K4UpZiK"vT|r7-+aIYj=5yx w.Grϻ}5C_9j9%⵵v b[՜T[;E*zcbB.7]19f'^\ qxuOKHX ͋C&}"faB1ÁN4NSӚ5&A,5s FRSΡtaݘwd?^Vh vZ&[2mۆb`_P6m`"iv|& DxM,e")NZyz /MIv@3ӀI1&0%*ǵ 0F(z, Bq IC@S*Y?6|T1XO?7jF!\8(~8@7nu_{Mm RՓ;ÖL6<֯Ƴmg|3Zu^#NNs\H5$^͒GUn˒외vkH^hP"E2 f@|PcGlȦ<Ǝ0QWaM)H{RS׊P'#а P@EUMn TR)jQ-+10|0$%Q %GBop%#b1X2Tt70_*x1 'S0CA3K;|A.>uj\7yS5׽Ź+kaR4'm/} Bb*YąM>RB E[n&vvWéa^/Y,5S䜺Tia86T';.._]yڈnϱ^we9nA^5hozF]gW,^E "^߫&f݋ 7fA`B]e&osFg2qD^z$'Nβb ?׊"SNP}I^ByO*okZbE!TO)M"WIgu־C~S혝s|f0]-ފ`-(>^%뢣`z5$Z8oa!CU,z BqOgШ,g>n9n!)+x'))v|o<dN93!7Šϩկ4~GF+G21 H̥tXia7h.;gQ(I];w'2𣈴ߖ%Iٿz~idv]Do*o-8¦Z5ۜ0ԄG=1P0'-f 2VX(C`LhC 1&='\*Kִ.t!za=wޢ}ڃ|?泥Z!Xy4RڊKQӆZQnU2 'u%3/ٳv]8mc$2β\M3 bJ{e93qVҝ.թcq q۹ "a9f=Kƒ%VhޤNw[1=S2_1qb থsUXP, CB w'O!p\vc]yэUt;BQVb+aS:HA{_~ĔSC,QD*Bї$ٌ7}K jTnGE :Ÿ|V,3>ߗΥ  ܡ) M[Cu!KRoX傈0չ [g()wY׃D=2Wkp֐6K~W!AJun{MkU~!Wg(o/Q <@Ed6;*$xGațݴ8XYum&՜W5k_ճc;:$aI..0%/Igvf*Gmp8s"BMY!y쨤UMMEa4FR %<ߍn#u~\7 ~~ȆM'Y6Kl7t#&rJhJG6LJw-c"us22&M%O*Vu({…u׉lUFxa YҮ8)-p&BO:Q ,*Ɍ x޵얨v2L97k}ɂlR[~EsKx ~|l.7)(&Dpa_c7s?O{%3j Fَ^h4ҮkdS (Nbs)3s(fVDH.oė>b:im\KMfLRlO{u}87:tE>t˰;D HNj?5kg`VMd_4{LV͖zhNvb`cTc%-F\`fuqD =sSٳ.rL`S]2K-:RnFܫ7J6qul`cL*veO>/j|h^ RV 8Dd4S{(I.I<:16N>C>Ư {dsGnFuvO9Frz1rcJ.cwz䧿xoj*RuYjl) $kt7a>>EU$[RܦFʢbx/l5ݪ,Ts$m8j ķf Fkab zWC͞n|Z6xoB ۹Z/%(rtC,(#pYgs {X򸇕hBgl^}ݼ`Zz87;?#,>;,eg 歲mpjv]t[s8wie(̬Sx< LudzrOc! (qETAE iXbʞgM3Jj5jlmx].^ٻF fj"0̂eV\ $~ۅ]oʮVitDND6bYFuNXmi1E싎 Gbm[ !>q#ΕV-X%?;7j~O픉vP"WM!)2%N;^q=J ^)B컐Y4y?DgdT ϙB3ždĵl-SND Lj@  5/QXB& ~b[J4&|t^XgY]rL`tt-w3--õFĶ;P8_`/o/:6[偏 Y1;3Kj(A n>S R/$^{[J1 "XC7hTrgw"1`'a е?0FFܜZvaqeT,rN|9"SwB_~{$Q,ECAvS DbPدa^*ꟚY""TVD8>w-:'KIuQUK;UBfN=/w$ pH %Қ;۹ZV>L M$p2{n 3${lY͵zr \߰aJGfXCNݕ?\z$?ؖ)GO‹y_9ia:O.鄌64vJw}e;o_4z,c3_)4J[6vuBj5P4 (ePHwinќT=b-V% ڔJ$l(a+-|745GZ]\ٝiF20J04]S<_.65xf] M;丱@IPh.y1o=&X65٪Ys /k웬 ؈ JQKMlƺ{ujvH(}3yõJ zS @KKQe=pNv}{~|rD˦t9}!9(˵tgC-ɂĕ Uι\rp. vw֕ N]wJ~ԍl7~C!n~o6z ygr;0jg9̗UT.v~U<%UبY=F0ַLfߐO*yWή;ю^Wd#Hx` aۘ.:GJg${ė#kb){nf'X:R~Z,owfbtBiQ/*?sUӌl~$:a+\"r #}cw~ Po%.6RE*jul˻Tl\2 !K@!Xo? (h;Ըk vZ.# Z{t#YznڴbVSQ@t>%Us\5ת~4DZs jFE1U@eT~=CfDQoNEyJǥKm4DSCaL_ N3-ªEaYkI$6]27 epg5Ueږ;˾GB^L``2|Ń5?Iߚt_}7ĪUp0ܘ#&uu6U+n3n ̫NeTިc1gx;g#n gtN| ]c q36@3-_R`ƄCr_YbI8 =X䂞P͊J;q6 y/+3̯ݷAD^ hmk AYO: Gc7T?| !ZQ ||$*>w"(ͺ?@$bUC2⬙xjK' ^/xBi%fs0ܼ|}h`/qr $qlB.ǿy'_2NqpdJw=Ͱ5LvAp꾋[jnTcKIq[}=}x- mgC&"FAUy@H2}{{C7.%zx[LJ3ĕi&"Ob%(ʛ1cYC:ٝ3tEH 6uޠmnTeSjн)G٬Dj0ʲlkvo(kjkph^ {@D۔y >`k7lHPp|~P?I?*\@sV#%e8/O_G>Qj굔 yg ?@fX(ݙĐ`%eMa$JN@jQ~?S $^墧/.}dhkݞ ١"{ 6s<D&`V ctWjHxscWzֺ_9>k R}E` caQΉ$ORB{|L.ݺ:']W:FcOtGNiݹZY,)MZȫSFuYs\ذQIQ{3<]C^{mRُC"CN{H4L) uZVvE6q(ONSV AnLWh8qşm>BqgtA,J1A暘@s0h) M^V/X<sF7݇'9\䩐.YYϏY3ǨЁр9 ac2%-B'YDN(m Ak˺fN+)!5v`$E\* "ޭsH_5w/_ݤ:X]+^WܦKf^օZ-H1wVKc4cE[ ᪗;k/ 26S1j7rjg!hq(q)?yd9(w."?5Qu({zj$DŽl<-93`]p!96wEQ'THi\ }邊O?vw8VJUvĴ)0 B8"]^a?\u I[at)V.+ۮ[`Uf}.ڨZ: Xr1agSc"qͶसxk+4pc'D0+Z?W ^P'm3է(>:oB[[đYĖB (S:Rpʆ]2ӗ|#PL6.&AnmyQ4Xbc}NeG>y>x7m-m|cŇaۍ&mN%36ΉF-bu .} Xjio9kUY7 >ob-^D#A o#B&6c'<;﫺F CP]`.$=NIt7:a bbZl:c=9m]4Q<.rr` SDs)=p*x$lL:aFcF}j[5]B:lyAXOӝ;ϒnRt~y9sDP7< ZƝқa,bi6VqN1?5u1X2ܯ΂lJ\/?,ѥRԨ_a^|Gt/:Mս;8:}\XuN ,#vD|eP*N؝|% < NcK""ˇBՑe"K<-1"u*{>vlfh %vzJbAH /Bo7c cĒͤ0Np^66 Fպ.IT5 [YZrDFۙclԕ*uгZWI {%;|U<..A`۷z 2fװeLڵ2EƔs*{i,)1XgtǠQY`q4('~<3.b?o۞(`{r(S,d%`9w1|0>r)Z|8GϾLdHE{YIeE(@6^Ah9%L嫋/S(,<؂rmu ͆?\*ԁ[)􍅲ae.ׯj 5h !YĎJ2v4G1KSz`xQ)ԝ-yotҷo3;usdYe<$Љ; % Ӣ{M=5[bj ]kMTJmm?E\`G.rT\&knݦamyׯǤoXz"frR" 7YvJKb^%%m'ɦ# ;gѳu̘*ׂݏUBBn|* 83 Q888M:e]YM#dn8W:rd6? %}ҩ#]gBˀFB֑흁ddHUUz0𤳸em}M\$#<Ǽ݆ h2V;F: r [Cw6~Zp֮ gTl DSi@khs924I)Ytb VeBQ6O҇(8ڕvGv;Uhvk+ )vʾLfp).UԁMp!i5@zpCq{;B/:TR ^1 Ӽ?Bzs ;CA 'XogQQCS7(2pg8.6>9iXÂcl+Ur:~3RfbUCYE20Kj NYa㴻kZ 5e[ުgGlM ᥵#) Q5dѼ^Jp돲bgwncoF;LJ clF/&2GHB;.vNv$Y@ks案ޔR䧫y3:^/eb]0[lP[ځ%i[(؝ڽŨ0PX-ڦ^B(˒s7wUQ{}1}SE#RDnҒš rjҸ>ZO_czж"4%uoFK&Rx9VΫdq!dcFOu<ܚUgNʚk]y""@h!g3X`Sssrj2LRt+$oc .IѴ{xe۔)3\;r>cg.ɵl"L)G/w%W^3\`b2'Wcu* XWI*=eT ifp(4GІ]Y>}nH3P/=D{ CfUC2TwFWHkq[iHt?uefFY bkMNa`o]IYzP}vݬ( I=xƹGܸi EUbgUYZ?UXN~efԚ,:},Y£;!e0";[N;'ExM45 ǵI)tgE*Tb%Q8tI, vްX+^Y/O gCtU[ Or!Zy!!'8r[P*b^ЋP</JgHnAġ/:iJN_"A艔/!B r)qV%K$a HÀ\NI/w7(]6l2'X1v~; )~]A'ͩm^A8t`P DWQ'BMuw $͡HTYrn6/.\EFEsjO*|M-5_EN3.B;P99`{l:]O-o\3)Z;RHTN^?;gqƊ>d+n ᇨYힶ(lBP[֑9 "-]˔S%.y&ykv 7S?ąߜ *1?C_TB[1EWh*Z%ͩ<VtMsG۾h^ Ny  S <}\/Թֺ$H(q*K!i+j^S~9OQIO1>D2$#% z_%/¢}B].᜿æWOjSa;s M,(I(O99W.jiybz9'Zy;A>;(7*ug `\SLX8h51 dXL1.r%S,?}6 Op1!:a&ElKo{/O0dn*~T( .JnW^>y4F֮"o.)iPʀcoo~m+i \:V"6h=ß{9`uN^,tH7o F!W-_J՜|<*")) 7 ѓ!_ ,+5~4 82w6YéŦ|kn0C~'+u-*M|r!OXcj@5v9˭݉`C)zpYMvwwʚOC'1)v?e,!\ga=͍WbѸqE4 X`}#^P37(1C0?E<, {xejJ׆?t!.1!_ht1}D=];M*$E@c.RqޘC/JI䤱ȸX0 ;tK_"ݴcMKb#1: sixc8ag*,pY,, Lq#E_訞#Ɇ}{bi|𹴛/pWw 4X&ك] 1NŰmoif&A"{APgT X0#Ͱ\ jO^oK }"> 0.Jl$ہS%X|kiH`B[L9".fB5μaiܐC %Tq~}+zH3g;cԺ5 'kI32p p߻' W.59̮7ծa;w=eŘ4;?1920#h &! ǽU{ǃ;C^Ε/ b.с^?ܟ!hߺc~Xh1u%Slv0SE k/m)=Y4Cmy_uZ}*|"RαI[{Q7hT:W(El pJHcyk1j}Zɀ:iؼ'*Űx,Hۊtea+ Ve\PL-g+SN_ J]9 lHǕ?$CfUx'f]X{LD`>k8pnY y 5<PLp Mjn۲[gVD?4l5 KF^FhW/(L~#Frͪ&%h6s=WRy69( N@鮻 !7wrc2̃C<uԢo7'4jqwmtZ\(^\yp.pvrm?4J:nNLiOzQU+4CVPMPdC z 0`Wȵos?{#M;}bC~[s>MXptǹWböd(J{Vo$j6a8S{!)[9BڷTho!0E+P"Jqn=]d͘4EcATոoJjj}q XL},hި搹6n< f Qr+22̞9f}MZ)T@0Tŧzs#459+N͘@9 %#.>l7 -c bu{HZ% I5Z\{VOiYlfSS wEw{]Z`Q4'ص<vU52οH9 /$i N?|UAd$TT(`]+@A`huV|OWsK/KJc:ZzrJ΀)"/$}_HxXWWm Zo]4#Q(i]( >A'L͢VNx\UJ ՄxsJPjC~$?f=u uo LQg|#aEQfXO~Y^V齙mIn)JC|TynP#lq(g'Ӑ2re:MJ:(kZ/x-S-U'f"0g+G}ȷx9"_EC*Fq H}viTƈ62((/ A/C@=1yBcX=g7/p 7Uhx FB3Zbx*,\/%v 6elG5M&Tal͂dh:-m \RܺR^K!z>}"^H*`tsj}6A!yGbN_Nd˟bX,I 0C2.3L :;\.;YbsmIzNAs .ՏӋBu|:3̬DvP?`j2*I=F1BŬjKqp*G<[h|L 4Ѹ=PeJ Vlث.IoOnR/_V|wYkJ5 隈!ժ<7o7$М*HGDžX#MݜL_RRe]dl6X#-gD z/'ozK1QR_ҕ<6=.^rޕ,ظ{R( ĽpL6M\~0$kCШ=!&9muh8KL 0c;xeo^xOKd b IRϠ eսjڮֵ?M[aTy 3DuREFxU|He*>jN4V VX 1),0S7k.hMKMZ'Wgܐ#`>g?;%ۑ1Uw5t-ہyޫ<6 ev! 5􃷍A>x=(/s37d`Zϙ/0P+ [$I㙎GSkn2?,!8^$a6I?zKx:,St?ɣ{*(b Ye|c&IeB4r"ǵZ;vOo|P&:7O蟘ӯtl~)N<υStMG5jV٨"ț%nɲ0PeH$ O{}r"1V}%= ˤy m$0:_v5}Fyܿ#z@{r֒Ǡl7;Qݷ6`{ S)w$rnߌDHsUtþ|W69[LQ[>bۉ $@/RQ%yURz $'Wn;t:GEkr SJB"L.eAÂjQ9;4bʜ "J}p0nTxa]ϒDͣAyJuG|-gؽ-I0&Q "f̫݃ ^g#]|Ӧ3ý bU&It.^ "f{0L4ҹFU? Ś6? krPэ~+Qz}:FNVweWn1зS'J?i{>)YOu9,9KslabW:,DZ2u DN{ܑ.׈₎ MU0+zP"Pgުd-uN|&Ts4o=c KlkLۛc[ nqt$0<0^,sZ+l+hE&kA8 eNC7O& G0 d76Wn `z N6DVDz$iٸIa ΈU{yS gv ,W 3?]`bQ=YdJݖyRF\nzNg3;O-G#n1΅$MNNd'_#E2I}*-N'/cZL4KuDR3ovzg,f (iN룎1^R-O{mKk1x&6XDp7,,uH\ۇ٬de 2[mu ,";%M8(bz<eH dDӼ,,A?ou̯"'#*aSTsJ~vxtT3Ǧf.oܖʹ0Ȥ|t\ܞ!LI\ tM8๬< zHD *v B/G @jzҎRbmHT%܉$R0,?, "R`kx%R-[uoaهq?p "LZC'XN@8:d핢rz)Lq϶Jvp`ŗ@yE[D#&K.2O|ZYB3-W.#%$bVϴg]jȏ\$74JlovSܞ`VoRbDNU%s6`l]-=IwR va݈u>G>wO 6Qr-D-Jp,=) a;=aQUA4<{ d\ͷ'V- C.4()-(d+{2f],I*i2xso@\~/"ܖA%guaٕG,KYQ(4LF/htjHұLjQtRo쨯;W֕~bQ# R{7 Y+-J$9](#rns6%=#|n·Ye=H?3 є >2TZMK_4Zӱm\,761˖}9@vŴp۱*6ЊD_on\?z|F8 :Oq=mL^J R^*utYK]q.ˠˆM ԁOjpb 2{ P 'w~5ރJ|m\s-8*HӤdEWd? Z-hhR" A(]N6n|]#{ÕJbwoTɮrM1B1o㶂 g+N4l GV~4G<R*dt=A?4ȮZ< 6tl}PKGdN _?Γn5N"$y\0*|w Q3S$!SLK{PQ0w?rDB,%={ou9H3x3@%nKJ E-NrU$iicxǸw i*ܣܫ>5$V6ohZ|Czk!i WU3nrAv.c?$iXȣ;bs87 LGھC8>r`)R_yFeE\2=Hѩp4naL0I #^scrF/T[ suJspO 7VUBҹl"|v0?J{rʒvQ,'6. |ajQaT/ oA>wf{x# LNGBx:k?KY=jBOb|ȵ pNvR)c@0ۛu"*= ?3;Li7A$fM\vq7#EUoskA:| o:MaIJ}!(iQW[rVH. ca%C&/|@(x 5's`4:O|_kT444FT˷ ܇aWC1dl )L:!44<իNfXE瀒>[ / #/&2K$¸ߧr+_"[O`͎{ˀ_($uf]Z*]$gNrGöQ-պ$G_}i* ZHtME3TAb VOoPj@&m1/ &Y<ۀ{HE<+C: RLU33t gLT/-_)r+~״>6<˂  |.>­5h&nAis:#]Qzt O,~1-\Rb&Db&'u2q˕PW8~؅o7dU1fpfJ53 pZ\GObm< "sԼ3՞Ti-8#22J 4re1?|T _u,kl.ks1םJ$y0;a)Dwsf'.`t ˪h#8X+Ԍ6"ndk<-iq:~ 7RDǂ+|.D lcR&&s.Y\_׸VtY"k2cgˎg2؎1խGWxR;$zxJgR 4 MzrV K Fd1@ F=<-#t@~J$eH-l @XʬKƪU{M!L(|Ұb/(w[m2>MA6yb@C Rʉ} $̎/颉KitV|)4l`"8Ib1!=q-#WU2Nխ朗+? O~@8֍=H)uM؛bS}Q:f>XR!zh#`ڿ0;ge#$ʏ}SugBu3Ul>8f!Y\X nֻc[2Œ-ɬp 0&=7e}O:i.\vӤؕ{악'}đ_ڥ3 0lT=F :ϴpІUjṷ,%"i,o*D!O"d7 D.xpnf\.AΉxR Hehݯ$2!#ϗH=ZB=j&j ӖPO_.Yݐ^ 9-ݷ7y) Țds"aS:K ZA~]UZ~RUe^2^Fe9Ęt9h1ˮIe ?6އ$'^-Ԙ?&,>cz[ٯ ޽kJcZxVN[b-s/G['cލUOu1? Ucz3215Gq M.iO\&V  yI2:}c Gp o9GJ΁4^YsϮ Efq gv,Y yWRf{bPni K|/0ZNΣ<\Fh|RdLbw`cZ \BTryl%Ba60W6ʶU 0c8@QR81AeY95s0T i_5"l47\u`@3#.]/D>ߔ"+b4y~ղ( r(,?L!c021|; 乛;p 8+M@SpϿ%Tt_cũrxu4uQ*%eC]vz8 Nv0O[3gHf/Y6VvMxnqgRKϚߔ?s:j?T>$sO "kC텂HӋX.*Y:Hy07Mv).v%Gt{UKӝJr/NUq`ܢ F12 X?3\&g[ob -dRh綷Ncv?8`+پZs'ĀӘCC2taiwHl-lkد˧.șpo#ܪ \(}UXɒX#,]eEwc[XiQb-%0X$4|-Xajޒ u^Bq@b"q\$4mö[]hµ]]xJR@lO?/:ObE}t@+:1Q2<ڮxd:fV 󥌺JdESjl(>ZAE_ЩU\dlbHgbщz,=x]HMM+d'"WѤd͹OrB¯Puz]xǂ(&JqoKYM .sU!t+\IBmڸBm r 2CɏGs=g=j;a`Xpfulm(jE=$呌 &(IdWP#L rhM(h݇OjvfB_-88A"e?G^a NwަrP*.@sVrCo[OxKp9CΊٹxfP/t~7ޗ"7U*1#vSS}'wt*P:"AyV üJ(;Ɲ^ue#ǭ[oJo\ٍԸ | ޯD1;ʄeNtldn/eg|?U}/.f1rxvBO8aͷվeh?FvN85Rc!W5De:~ĸkLsi[y@AF)$s]:0X Әc ;[9Sk$SĆm=b#JZ1xN>ߘnT]Zp:큶1l"Xj*FGyRZ=ġ) 2E!!Y]h3̞4)enξ@./ CZY~Ӧ`=GYWwUG)l;=|'~3;xdM>qE׃^?Q9 O;+=A V1q[`WߋwrOq,A!|(ӹbj&&\AvśZxnuB:sХW zfЍeK ][e*oxǔN?]}ޠ^ްq|}%!&*K1[@+gzRUfEsp5f]r^zwLt3B6^AF6W#%-Dswc Mfc6]GElIirV;Ȥ,"5.Γ@[Fs۴xY}Qp9ȤUc*VB]iݍ^sS t ZV6rV4=Ī;[!-8_[=rWY-k[6C"QB*NW0wi@9S"z=XPzе)&lCG2'4ZsZ]e YEX RLjBRq+6Mj#vȀP4͝[M`Qˠfy{߰XP %mydRD[ږ\@Aß9vU^q쌷9^ZYeeU.vѷSzB8zѺj{MwҺ۰>b/@Noz7AK%n;V%kItӺݠI@Jɜo%0[ڪfuw~/ @RW?o4,aۘ]!M¥wfDԠ9x>fL#Ƿ;$AJb&N3og'9I/a@C,!ɛ.{/Ff>i#7J3N a_oJ\=gࣰ0YIe9J F:Ĝ2*_q͈X͗U|gk} bLaU9^+1ivpT%gIS흘nHڢyE@aKEU%LiF8L^eωI1Mv}HJs (/ZGYWbVt6}%mFj}4-8 Ko_nwRCwDbk.V6m&# sRUjxf[(P#K.'tJ@hD4nL:U? `}/x q%^ޠ%VM#U&8-TOR(?eS:>| "6Q2l՚obVKSŰPg< dL `':l;аw"Ə^h&6$v ր򞌢yHU9,BXNFtaNZmeNEx6r.fT" OAfM1^e#|fdq2JHZIEzgEb" ㉏k'?c|Y=Pj|8HN^ o2 4"8BJDlR.T!fK}yշe/00zGlTtHʞ<tw`u p} &M|}AR\$/`P3R_Ľ,1h*npQC?8ZlȢT'ᦔhىOXǟEh@77(bd8PcYz_!'$jf;{/CSg(?kZST\i}

    $dlH1K Nlw , =X*X4@i Y}ռfGg `X%zA9Yp5uCIa) Vq9nJxٺx!bۭO4;T_ݮQl:2x o%*7F@s ʌ|{^Ge+PQ%2xcb5,[VtD +Fm4oԋws|1v&JjhnIfrPJvA!h|sZ#*S&Cu6ϵe|l*?9ܚoECXBUMPNv Ɏκ]5Y;y'$~^09n"1G9 if -.yk$`s}: ]vX 8sufF,Pζd%Nv  k OF47oG+Jo{#eȹ9n PvўՊ^g sb% W-l;謃1jn :(؉fJJcϬs@hzCzm?HǤ쉻38i^ٛTSx2 1-׊|J>FVoHv rǴ}aRSOp?EGGq 3kF Q"@CݜE=7am'9Eyl~j GdlAވʵ;yװ_᪄պ%Ų;<Fe#/c{VDlCA31WĸB/wQxkyOX}P"WJI@MY%#JhK(㺴fں܅bٗgH`ZCGl&A+^z=Kdf`[g(EXM?RI6>ٚ@e|e()I5jɸVsO@x6L[o$qv`{}9ӏ]yL]d~uGZ(h%5`/]opX{Z Hs-Ls1H {=lU]9dӏL!"r@]o)2B19 &|#[ݘD|&*n 5Vyc  u'Cil P8ov7xKF|jCI7Ki֠Zt8F5i E~4(U:/n ^^έ*#B랙z[ff !O Шg6vKH88J!?k~O$Kj#"=YwޝZL2iQhx_GY)g떳dNZQ՗9 RpP-38B2MoF6L/̸@zj 2/UpxJ(3e4 4I+!θ>0p۹,kό>8%6{QÌXb,e(|U5b}۵34'5yGZỬMbXxGs ev͙SayFC5kA1dDg˃ /kmU]npDŸU7[am#"r$~2qBIk7H2Dl(f/U-'1 j 8ڞOK^*ʓ>ќ)0 bt4i&p QΫ= md[H07 oyl+P12k*YPJ߄OQΆwNo`LB)$>wp׀83(5͵OU Hb`kלW.I0NۄD^j>^;BQ/r?l5a zG@돢Pya*`F<@&n2RTʃ"ΥDGC5x6sR#q2&et~lBKGxu'< _XMS{$1﷏=+"$NDG7WِQ(}4Cyߤna6>IZͺu 95]#7obZ5f,טh"›>Jb*V > [H. @0qѰJ*#"P*O%/>9E9 ѝԦ5wdoGS,.'+Ngr3&7@ZUKXá""̗o.< >II<ɢۗZ pO:0hnDB +JƿK*ZθKP4-0j:'#JG?} j}UǽțIxb{"{5{N ~u#ȯ] gj[E6Y.pDPm>lZ~VL yW RqHy/eb RU%Q8ƫʅ(SA"8~Tin=`L7 YA~}MֿV8+CCN+aT3MCh"S]82! f*<|\cps>nb0/,Y i" $4bAƮq6|9?QIcB D̷Mݱ@±b+uء}3U)`D27|Cm~^4ȇ ˸1nNJ_{cW1Tz|JuL nBLW!pމZF^\+"FQ#]s70Tf7a[-&Uh_ҋZQP~wN OTE|:1(xûԤ!'+3 cb@km$SN*۹"\]T7Ș p5HxR:l_rIB=*{c~R_79 1 "1yvO韍?ĥgiIX%BA;I̶`&ݪ0ڛ')J |`r5P>e\9L_ %Mfڍm'S٪M+pMakk0=#nؓ9"v8a_IA kx*^1.gzΨȅM(ܪ56_7KD3#{##˘5#Kd>n A_.}ͅI-e7lBݵ+ocn"ғL3Ҷ<. &1,?Ղ큫h^!ʞ=L/Oי1Aꛐ$fVG )>q4MKq.f[o4EgAq$H`|qWiJu IN1 2>\ȍ`Og Q*P*9AB #+st“E/g4 *3ɉJy$aLdc)#JL8[Z[r<ސn5۷hL F$g`՟{R?guD9ag8T؁}e_$9@y w$C3cC}oE}dr * Lj*|DƫjSb-uUQ5zIR|IL" ԠJ(HOpw9d_Ω7'̈ "3deF<,i(eVq~^N#(X'oeU6fKyVEXf??ƎS*zhA\' [p>cN1+HZ<:JU}?&vEW$Τ(؁x*>U*b uSP/H[ɲ m-9$ y?qWv\D Vל8U`e~ VuÃ>J7 :cA;IO*%Y,ނ&:}K}9;kQ$Hsq 3)}cM~-!ןRڵIzf[)j",@*q%n0"6 3],<μ}ڣp?@$Kj MSû~ީ,:cWm;-)߬ t "3ɎQ#e;Vj';Zlsh"7)̷Eh~d֒RA;H#99La("I~=rgAĶ*gL?+>]ar2ӈmR*gCnC1^(3:xW3f%: هxc~ѹA8E8H>i:e=3tLůGܬ6sDZ|Gl`J*M+K8GOqOΠ_XM}vL=ƅ"=kDJtLg3kTfrxzC\!*Mmv{9z"5t^7P,aWO", ]uȼH$( o O_Cyw5ޣ~Ć/sΓ(yScTônW#~Kl(w仡 b6\f/lٶSB~;rs,ׁԄ 'U͘}'SAbQܱBvF_Xu7T#HzbPLʕ`WV; @#6 .\AnulJ&b}[w(PƬ{-- vPw\n6Jж-PUqڟrKH93"n=HbfN+&ؐ$drpYɓeF,#rG @7 .Uiju,4gV6Hp*QtpqOy|]&jo&hʠٲ.N= !I(Gg2K` |`ۑREC|`ijfQ5F){@`+Q:_7W㴱),鵲_b @[kll 0KC@·I#"^e2Oj +kfP1B.buAʠ lqLoPx81S#Hpa :PeWVT('P'/WzB<,rȸ jNEWYw>m^z2x!Ia]QrT_Ϭ/l41wdoSut?Fe;^Jb K7Ɨb#}d̹_?\]Ea,SjS / y~;mr\PkOS??è,u5qHoVAOeꌻ5Ai3$yK0c#p$b4lMU%J g/n M@ J.o)5H=bd~t]27"•lՆ}C^ 1lޟV o%+/ov=q !1'}T)J_KX lq=V6<ݩ1_qX Z@>_Zr7(m4vfh8;´|Qyqo+`4epW' _(\e`}e@@.!JCɫ#α:dUQOQ#(,)]~dKT],0ePF\`j])f88@2sEڇÀ-?wd;LO] V$*JzGhT^YHaf el8c,CP )%3yW\]|t#-O7nQZWVS.C"IҾ؄Iؼ ~ xUM^eaZ+%dJyn'JbLu5iLC%(z^O83ec2PMv!ݣRk '-<.v'-鴵n݆R<0wQLg<ݰ5*39x/F.x^"ka`YE H[(#Yٍ&Rs\zuyS$1Az@y_|辖ˎV~9{g=o3 D#іimJ;b2Tf`ICq)*#֌^vW\J_i"rC&' O+Qˀ˿9Jɋ<4ܵ8ZV/8У-c[5v%KWgẻ20NWB+Izv>`U8-\7 `QoݓԠve:1/kC 0ƚc*RA* H'x}Ate°g,LxX)L7l[YjϨ婠+n1%z.m"2bgFݜB;#agrY;Cغ^0I:JſCEs uI@$v^vVW|#Üw*+ovrYxtUooE2{M;.s v`d4o B".nhXԚgdHp9|R BocZҺwT`ф&3 i 3\; 3XBVǙrV#@ G%JQm  Ao~2@\O@Ul@ ?UA! Պ#q2N!$HdG6zS_1jP'7bmRqӱ}@ɟ/ Z\x:dV-Ls+DsJ^$`A׎,V{ɓ}_'{ L0(][ڔA?CUeD˳%q!}B Wd%_7KЪ3OA QeoLF{<܍w3fx9Fp@5?xts^?O*u^7]wIxM J3Sn몽Dr "dj_D!GY'k-Xy'g*=]8=YU/т;6/4DxW^h%ͪEV@p.""gf[q_Ok&yU:JUЎ拾FmPWAȚJ̙IDVe!zO` ;f:܁M\}BtQ^B&=aNY5R[M@/'۶㠵c^O-Y =VA%2&3pMy^Q@LozSlr7IdR9K mMVqt@iN:];T&lxJJUm#$6IMa]Y.AIC-< 6=XΏu2Go`;ՏfNFB@.5r)ŬVB˧,ӬW yKgT+x7Q6_; X(f3RgiF6ýӗ  :TKA=.tݰ!nN|'`;?[W &)ǎ\>4="+8XEF _-r4S}7"[e\jz{[L דy.FSu2q5/ Q!Z[ޅPMrI~7X Qtb;-=ܓ +X"͍ g2Gm40Y<2@uTnE'Ogp܈@6LGf8;g vIkoʌG', 7Bx~Ii0owY[:)ѸGYsV l$pRo=d*d $֟)pØJ,&s6釂R#@ [p(*,k^HNZpKb?딅PiU5C_Vv}Ǜcd00liXWZN~B CRr |5f9!,DYxdd6"n{*O( Oa ֤fr]U9\#[WK/˛޿ S`VFٕ- hW77˙:df+4b ld9~S ufw էR!R(g l΃旿+I~yEZQ,gKƁmK}=tWZP*1m3Sɛ}%'bZ'C-tl[lcWKOv4ޝ!UQX<ԭ||85ȏ&/}@"0N3]i/ZGYBLXrz7+C ?-9DP޶YA{!g֏G9͎aijB slZF"_^򪯭 i5عLlnLdWW"G{[%\vW=K6d;Q:UgnvO#v&=>h\F械پ,ȱ 25Cq(9C4f!>7`xX^ҥ':O!gf$GF|\~J8| yia:/c"AMz0t q9 Z1aKbi1G1TcZP\;@-S{IpuchBzEUN>o.{gb6)ZX D'Jf]L&苭qpasfH݋_tU2$pH,3^b8#88~k(k]>BFJJ6!D9ԺL9vxo P-rLxs۲rKސi6Ġ `f鲕5b9|gdot~瞓ѽ?(`/&.E@cK^`9?Soa{`P i\ ™3]oŃ#ƶ/gQ賩V]bYC8iđuI٤uE{"<`lRE0Cf$HD3MDgVZ ~[щYQRe]D<$K+@}L(hTp/x3&Eg g' ζ rEDrVHRB'* a$~w'4د|@7gUPl$IE*;?_~m 0s|Z*?,#>ܕ6?~ѷeb۷h'\.8u;STYųB|zm'0$&.JwlЍ]`OQ!l/Տq ֎\RO{UעyZcYhbi -P'Al Bp8jΧ2˓#/.s.XXEd?P.oŮä= tALDVF|f{w iROeDŽ`1xט-$ݵSj}b$QOȊ`l$Ϗ+0Xy.fA[ v C ܧТ3]=&ɋuj־ĢBP%Qu}5HmWm\"&POٓ@=6,%h gg\!7}:[{$r힍3 .Oo$|JC6g-umޅE6.cj;HGi8جKBڝwJQ%|բPc~'٪w:(DlCF 4>OwYe%8W]9IA]hw[+k߶޾[Z~grzIFteu5KT{*k]nfx!Zb^o3/ Bg2F0[btcPXݎ-ݟ^ uc`zʳO߱m5KyNKʛRp< #[d X d9axcL,|<]Kusٓ<n`%ruJ^kfQn"-S7w@8XCw ?pji.k@nK_o~u7Rzi Rۄ~);Ou[r6îu 3w (do!#yXd@# Pu(F[5\3NXƄeL#<>,]5xyx̷ 7Jf._9ds= ! geOܨ:4煈o'26c5T@j*g1/9/QiCqͭ.CnFa?&8[gVxb~ێF3c6b a1KN^L3M{e4%2J;ǩ)lYk ۏƣ4iEB i33~( r fH=Egϕd-lsՇtSÎf[CzN}+ )W8]en7[}y'N;uԥpYh:\% S-Kps蚌*߫6KԎo]s}eⓤlCĥNk4 D6LeΕr H3XO ,1NWDFS4YϞ*ꗤ>A eB)_aQL-h]Ӱi o' '{n Y$?]6S Q b2˄ҍ-({o' 97%}EP,2оR+wRfQ{WNX,WH.C y䙀>PT< D嘕@|qf*W%X!1[PLģ2^k[д.ܼOQv RǛrJ٢OR ]ѠtQ%~{$/a5C1pTDz8}n)UTa_Wy8q>ds5c*`OC迥wD񵈈S`K! lB9z2_Dz &s)x8LIT)@l(P@gJ-^d\L-qk\'|T;ug\HF&sLh1[u9Íc3n_}zIZҴO R?DUpūq:Vu1 wWg%P*´ً#f4/&t ZF5L}x M,O99;P=8Q2яL{p/| 6c Du@UHGV$U%ĬYH#}߸T_nvx iDdgɘaB࣢?8!KW'j NWY4pd \޼18|BTLR0}V{X2/,CT'CxyS6ѿhTɔ* JS *I˽&iOAo364` #NY"SpiQC6-ǵFyPK+:"{3.Z> f8iN*AX%8B⍗Gmv?:ГvN 3ֵ0t ɟڙvV‰yCCp\VUZ>X.I'?~M H.oyyO&^N"}I11ӽ3*%nw̦h!f#| -^|pB䬁*Ԥ]D}4:|D3)$, 5?z^X 𐵏1s9}:7*>g\EswbPnZ kft./i*ND kGc?* !p^׽"gaI&\N eW!5Ϙ/y|REi: ɜ5xQx&?A;K5oIŧPtP;ˠ%pZ-ˎ]ܛ "Ntb [ݴɤ *ºe |uyS|8i&gA9qD7P%g1g;̴r6j{FHAǞ%bBzrUtDtŴflXuJhn12iY^!њa TX} U7O08*HBUE~@$rWo m;o2Yt VH.v=v?wwEI2![08Sx!䦨 7;Tb-j n`S!KKJ.C!yz#V7dnBi?쳑`nEĺOE@26£#p@+#/M; b"lzI^/X]{ V?#udObL^eB2cYZڪsD෰MF(ɱ[L[~y`yފ(</ϐ$8nԑJ뵕rֆ:C~xtYQ!_{3xDdǢkTr 67 5uJ&(jI5*kJT֭d]ȿWQFkbLqL0Y4afz ck_^8УXY M tS% X6O%-qVGxܼC5U&%=æGBgP%B9Y 婃Ugڢr:+'qcͳDTcR1p8GȄj^H5Qn'|%5u_a_@3U2rd\Yo=ˬ*14>{67=j7˻˸ls(s5Gcп\+nIv. chpS(; !s]ĥ)9Qv6!F5\&+Z ˅$?$:ĸ,"w߯ s"<M߀e݂K4'~:*II3\FCͪQ-{2QFڄqE_p YKˉ=peL˜na$tLu=lmFSbCBy0w_.+:؝ {@yX9}6f1<2#cRm#El1̷ &&Ƌ1G Ht߾0ۑztVc햡Xjw~wQ̯o9TJ ggZ,<[&B+[.!@|zIaH"c<Nrel PYM;挒y=pGI$$͵2Z2$VKa^TJSqп 7d}rP5%( /k G٭sC$C'I]u̮%A`O[55:lpf+t( Z#3ZSr*΋핁")R2CN+|xv ~ N>o7j7)2IGMV4>/DfNȲQU͊w3eM @//vxeVe*ՓB[] z{żϛH{>y)I#2?M~g;IXFEh At1SSopQ3g`(HUP3\ߪ]v6 0l?kLrO~C_Ƹ85Z D~@H3֕ĚAe1Fh|qd?VS R}y稍6΁frwZG!=ȌBMRo3a|DB8~f2_1 G?+ v"Azr@ |1Wz-2i6J{ߖfQ$XVe҉Rb(tYHj?HuΒ}IIn@yi6ym- Ls]gLWՌڤ+FrϧΚْml[*r6XHINצkwA=N < e(qn?а(k"9>"_{W*ߘlHƃDF0 4|r<Eae35*DMfQD$l[FSj_56q1֯b3pޅmE)qܔC1KV e4 8оP-(oܞQ4Ub@j桻2dr(^WjPMleٰ[´>ŝ $ kE>x7WG kEM8}^[苉`R^uLd?+z rJk?TP;u-`6"Y|1tꐅ_A~:5Sy'& (*ޙ *f(ƬvwFJF}#$نlH1|Okm 0n<"rWjX~Rk.S8݁7t8m:y Ds3lFu[`)w.C&Ѐq2 =bv[”WT6\u+MW.=9JЌm𕻌y~t*i6XP[U)܀ƂjGu#ADEK Pzļ BCw4^SX|. t uq<"Ȼϱ )VX-cؘ1r>9UOIߢE(WPB#jKał /rN['z@{IU?l-|1j~0[Ŗf;s;6@0}ΖYmgi6Nʰ4H@;3/XhZ`5E!Gc)k<)~U1RoMAM|x=H`UCajShOf+?@Wl=w'z y<mR)N4:hn<7\ ;D+/qяaOYh!m ψS6EQҡ Pvyg,BFIQ{62UԞE 'kq`X0a[8#OrҌy ={I\xcu6Z4 `,KʤjKlܛ浫;֪Jt^{{F|3oM)!ЧN V]Մ\7jdikJi@Ig}t)6<g1xZĥp\  (6K-B'\wufQ#쎷Ɔ!ufx oH9K{ur̚ ,,+P.fCpvKN]_jrIJ0TE.COKCUe2X<$ms u|̒(wvMH`LO%I3Zq)x%,CbPPf*M|g׮}nx'<)Xy>1B}SmoDg-|Ħ!32Џؙ6DXaG,k"`t"~k˴RO7F;C.~.B)r\ûP2Hv#֟7LrP݀__"@T NHRPl#x ƅl1TZ 3A#3U\TPifvߐg6h}SlX/\oDX֟ܜe]jtėlL_OQ1툶i ͼqL/%[A}:RhVs'T溔ݛu+5JU=V ԩ}06d"O1T+N 9 zݨ2ϗIpϜ1e@o{&֨~Fd ^"^<(* ]K^_<],1Ͽp 4IV&э~LqCV(ץpf .Jv/Ohpy8SѰ2 "oWBwϿ l2zB^P#yoL- {>SѨT޼ޥ+M{5˭5SC701rıRfKW+f{sf;>1 #L|M}l;)e戉.,=;L ?.eQŔd[y%qu(s׃bkNGxbTOʱWA̠s+ i_t,٢|-W ycb%mpN\7jfsH`YniG/wVY E /\>C:k"8X# 2p5[ϭO&`oM Pbo$=9ooc$%ud5.wٹҷVYRS kle\>j^BՇ<×٤hʥR i8nnr<#DAl F.Vɸʩu *Q~Aiaκiˊ|{-4]/B!MtɌ< sVdIFh0/X''I^w p_cK:]dAe -C:t|#"Zғ!0E<)5"YP:Jt5it5(`Pq%Vd;%odE&\,,1ut&F ec)DJ ғtBlL㐯ߘ`/>wf#HC^HTCF4ϺLIya&/qˍY!hӟ\@d̒| tWTN#j A(,sC_EqD`:Rhn_l{IF G/RHĥ˜SMpė¢sM@|V?:O^^saXd0O>A2 Ejp_4~dz~b;8k\N QI0VݽHNI太VuInw |.@M5̤$'Dm׋u:vO%k'#VYg}g|p;'gx(‡7H?T< E6^V;65sD(iP5lM]Hg>dYy$njBQxO27D"! VN@qMVe&}^ݪ<&ܙWC WGe{Rx(miioTX+C3}߹ȶ Zx#y{}z0Ub LT-`vا#M\"_QB5˞x𼦭 :!=.@-!䯏c+VxL\%j7onA t`EBA6ދ=I6x#ms{Ry4sCyf=mї뮃|^.Wt X )"q8qfL2a^BOit-V[蝝 7Y&QQX2M]LL] [-)k 1vk$c/ ?Y/xqW'ź*.gYu2-4ԓ! eGtyOj- ,G#fH, r[jh V;pEt+chpseza>#H[)>hlLe[`jW Cs0=o< pœhި ChCw1/i2r#R)lt*wݛ<;rܑgUT(Xtcb)SU:̣/61?bN-x*7Hի ÜP9^g],K2A)lzwv͇: b/ho'WIPX! m'x x޲#R:f[HEϩڀ&?+o*uj# Іnr Cwgt! 9U˂,[1߁ <|Bj^t bcFR|d5w Ġ.j$|M\ȃ  2q .u %B0{~,)2V{a-op{x LJ1M S ξ>ٴ vĊO6UFΡ3"(u@PuDK~:imd)د? apDA>a( Q7dUݨ̒:КCҷ*uYG~mIo۠ b>6.2_9x&4E>%!X~Jjc|۽"7wnud%2-h2:89'_amafn[Xs?;}tKȠ?[" ֣Td;N:|4/CŒZO%R*T (}T`9cD~)/2%Y8x%Pgjg0>6*DejxY'<ӟ{ $l.el /WU&MRӓzA"O+si"h {LP ,r6v2)k\! gxQJ=& Wm1mA~ߏvot]HbCFe7$w^8z}/TAvIAI`+ggEpy mΒG#ג\;g/&(z2'?E?t7u's]0&XfR9e,ݣ=*Ev ?w7Ck8U`0(x. 4FK01fybw V-}.Gԙ\m_杈K@bhޢ=7@Q#TI4wKtܜU_yGOpKY3^hHM7~a'Na3S&y{9'u~;7v-7$E8Bi1ca=Z̞4*Cۀ/ˆR@t YvA͓gkzcFWCNQtNF(S"w̥$6>81y3zmsKU^Kx`tvlMD~}5SpIKJwwMVX=eYM c`Oj3lH),خ $q'fQم}!O >2{*7;1 $FPaWL(36YIX˒MOau΢Ԑ':A``P wSԾyVoq#I]4XK+S15CW6EMu$uKz_4t ߗv}; sxtCF@@vrT"ߘGnffJB^,svh C:7ot+.E #ffpce?ob͆Sn^ݭOƊ7-$؝+\ZCnK3l:RtHQ }H e# ]`qY򰌎C$eEj #ÄQ+q4AE][e<}z4eO"n gws=84UC@"@\$ͷs1lnIܴj}^FM:rAVgZnb*OTyBQo[t wDc(fZ*Qϩ]}rEYDpi|~Wޟ3lOΦ=Z&3Ŕ ;Fx ;Ժ)r#hyZg={='˵]hfVDRr KmfpM9/Z¥4059s'_ډbKhEP!$m*]Tq?w(뚠oرj8S0&Fo=@T oP05&hb+U]l^[f umwS &flx )O2dngvMFmȀ`E1rB I dmb X ƺ'=I1]#EEϙ5h 9V&1m.4iy$з:v!?\:rq #p M.m,6Gj}\>բ7aAI~(\wzutq.%qwuA h(?4W@d9&\S?dd$]ݛ:.Nc%9>=BFXa\$V(OI5mLGT͵g&#|Ak\rBF n {hb¦3=$!tց\f&➗oiS3M029OA/RsF{ T!޾ )QQ13v\u ,S/px?!+ZP.yeU;xɤr[p6X mucXL)+XiT*@ژTN wRReAw> 󱼌vrT1j]l6tϫ,A<ʋӰx@^ziZ GfQU~o3zq\X3o[/7`ۛ%bjIV`< bTgzݞ{ r*a6KihNrwh A=8D4a,]Z:zH/&|4KmR9EV6P-t%ٯW6tCž0D?ԎynӶN{Z a,J`}s>*^WW2jnI|mӬo‰okL@~d^b@rAD(:mT@)wҜwރcWy%^1ZW ܝ9^`㺒Pq26:HsR 3yFCɚ(HeQna:5V˛s,? ;7>D`;?DD́qZ`g Ƽ[uTl1s͌z FܜZ >{3(r%<4-JaԶjzm*ײUJe`}'S6{'jଷPEAhB"=\!pŻ OZᾼ@QOt1j$ʒMee r<m c:韋'T9@,qꅒhDnFE;F&ʵMnv]'kRDHSYeDeb6)<*ޠ;?حƢjHH #JxX1FNf"-n%&tR0R S?'3~+Vy 'jʣ09!f2'k]Kޤ&n"}%SZ>||ӝ_q 廲TS5,wtnlϥvX5v)<$t{AFHC _7Y̶Sz`.'(Au64<&ݎv2 W0|,5N(FDQGaxyJ?L+e'R h *&ZBmHS' (Vg+%ra4=sj̦˟Z-*mZ m>OPd"OT<6)HHE\ؤ&=I= g'Ȫ ݘ nbƯ )26Oۆ ! qrmVet|'6RwU8 -T6NjosƊ+eaOpb8kJM |M Ռt(dNS >Mu+/]4c0iwGlWBT$0:>zU8Y\ $!R~ȴA&IԊ^Ab/Ayx c.$ ; ysD=n QgBu"p\A$ZĘ6۞}(dYV|T1n¡ 'M30 -.%Ť11N@Zke?مoHDlae88aKC󩻼:S&i;,Lg5g“_uײPD:I\ KC$tkd(a?I~NHyt,6hrhyC+֏_R'y2)qbOF\%bp'[!u6BXd$^1ϕ@6u?#2ifXb7Q@&wgO+ABh (.PYW8~M"x6R!\ǿRCO"XJˠ{Y$&QұBw/.貌.0LR١ zennɡ'-=S cͳ#@w c,y+ %%&/tҎ? IL/y@x8 "Qxӊo(MDE X]ۣZ(W&|UL0rjDq!(ŝ%zn, yY8][N$bmcdg%BjN'ẓj]%egS,zn%=#+Ɔj? J-~so ˻KK<.CyMqR̉;d T=tbB%pd4 ҵ;l.U-#ޕP8 MOv/ݫ:D@0`TW(sNL̰ DqL~I2 Sq}t! z~5TId@#9ofw+Jf|뎈Bm#|/QnQD{ UEux/%_"A`W(Y_*)qDV> H:L~ۈqC@eɈ~P=Jpc@S>Du+0KC7"h=܆Rm:`|g3B<ڗ0yqQGg8<ĥg_!I lY S^j#]Pb5t7=!}Y{Ͱ~FNtOM0f8qyT&һln7" q;U6Bn4ga)Ag].K:ϙ-I 1҃="|c}^E Opr!g:|jIPdX6RX,JA-l\hrK~GBO T"1)5 65XTBEhչf *[ QǸy*]M>U}N] bB|"l Ni8U )͗ ^~9fՑ-<+SཀྵV+g&Ǯog귂[Ҷ$[!ҡ(uAY" m 20OڴǬ#)0D(C; 8a[ kS4m>\^gD_8L\}Mw˦rU:7bܑsYלnE G1j'!C 4c\Ɖ5;qwCV;ܠtej:Ʌ>DG /&NI`l>Ի/Qƾ!L ėw'*A6"}2]á7FÖuFĔhQz wo3DYp:c{]Z6EcZ9R/7`5f8WNS< :A&-1>GP^ƞ58B݌eY|cӦ,,5N1bMokZJ~Qر&a-P9SLA*HשO +)ddyP]zM^6̔Np6 (~hq.3,6\(޲wUF)џ䲲 swbT`(#V#學O? &nŠ(4 k2?؛=GPvFyg*Z;i"71Cۉyk/2{RDɕn!2>`W ;?xվ"t'?*z<]+viY۵% knG&'{h~ 7DoiA M^(UfֻH9}.|;2aK5fl׍ظ!Ub]%O~Ȝ@qYwp\B^ݴly\[uGEҁI[%JC7Z3%`WMQN4, Q|ۦ9LTpZmC)H\m!ǽC^7kMjWwGx5_YAƌ\~ҞzscaQӫk#|޴~xjh%-?ugl"6) b?= !\6mIt*JȜ[=:=e5HqYďda4&bU(eEQD|rsChJr@K~`j|'+:1*%F6Dr@Ҫ˹.q_Ou5GH!b_ZG6 X#浰`᪠ |\:S[A Be1 9fP>Q|4{d'(%Yb4]m w2.xQ hNj{nU<&?9EY!/Wf9-*r!L_pĴKu]c3U[1 hЯ N2tM2Xi(RxvEyi{e4{2]W83S`1/~$=zApnúX/R7@ Et4yt(~A)$r|V 'cKm?jwFgCVn& , BR{#L|Wmd)oYSREw8N.\&`\ވXHxYUk;sJӦ~M~@Ebl 5R3Ak^Ӳm킨E# E͆QЬsEnpU w?7_hD$tyRyqEBEO 켷!`:Db:g}#-@O+,'[Y#Ľ^&fʿ)iJ+on.?{t+C,Ql.xRl㎤ }@Ss8vvKO@y">ߞА=?wde剺0@2yAl]?iΦ9,Vw+x#Fޭ8jopCCVB/#[xYE뼦r9ٺD ,[cc;/-lWqM;l<QzzH*Ht$uVC(cW,Wîll_LOep$# O@Ȉ(rwඅђ r碻JYh+'`+/_e;6 VQ^8 BAbUs?pʨG6.U;}">O$Q~퓘5j*qZojJp: LYVT viWw8=НRZInd'Zy-D,f*x r~(4C^Z"* G;dV?KVn,ak*\78j$sѧV`° 0#M~'ЪYv]i^U/N2;rKydkcca{l;DCvs< Ն[ECqU/zR[sUĝ_Ӥ-2U="@9n֥ьd̍O@Q#τ`rvWR/.̷oj &My?UȶUk>`[6 8=B = _8\O*Y? :)I^lgǏ(d6#x:dRfIa_9]VYUF\2d)U=OEWŕ5F=^k+e2d:*-&]yt"a jAVt5QU3{jP|4PHiv6=njZfȣC%]`x9ٮRt8Y% t>+i!`jG`3$Q 1miP+`pQn6[m?%5U*hw8`tLu- pMsR۔~Ys|Qzm'3[㕾)ߪ h:bI _2v|)S(8aZ(Kxu1>s .z-r ɣ!Ӏi"sݫa^R:QD5o RFG!O`|~ٿY)7Q{uqMI-DE9e(PRy;qZ&S#W>eljG4q Hp? i 2[7ns'F3V[ OF0vU8Ԥ%}zxdݖ g,໦f>f[ذҨ"!9kU*: noqny;A0LP#d; "}:s!&1RG7lj59;jד5Pfvz]eN [XYV7U#8CBNx¶CP਒Ȥ 8UF)R|BʙV{ aj|!GX0LRڌQ#HԱ[[9ǜf&4g#?{:V^pgF%~LG8Zd|P%3FōZzB-{VЮϥ窙b}/X^2Uj.3ЙQpa FLИ]#K/:rr &$܈W05` -wXO¨Qsӌ9'-t"dK;:pEDշ5?_l3Ń+LXuNKhW^03(:IP km t˃2XR,ҏ/^E#'زظ{jq03Y}aso)*fx6Hl ?bqBW:@svJM֮}}?~@c&7Zd=r95^1- ;t(K1~=kg^8yR #[|` 20:jkK,b}q{/б"4d2)),auu@μ;fo-`r$wr dGR’;u:ap8U]Z(z3F Kz0.g=;l&SmaV K;zc4u"g|ah`V퀗vQmg݉][9P ߬L>rdyb3Rd #uy:%v!жѮ2)њ7J׮$`a'gxdQ6L#H@ݦF~soI0z)b|tsnb,t @X(n!mЙBrBПKZs3N27c욵Ж:/ѬjsQubxcՇs{;3"aPp/XmvTnFHyn0W |oJe;HZ~9eń !]O@0Q;df6|{uATz:A`ATfdB|[hyA=pd%"^ٗ,{?1[ /=%Vѽ Ff(D4~/vr̛rlr.1i]I 6v$APz'Ow+fXNNb\iFiG!ۖ65+e^HeG<) !Z ,cQjFgO:aE+21 H_]Jx_Ypzwn| c!e]k ^u 0,lmp]o)*A@DXNl)ܛ)0l##L)UC9:Z3ljxnU%R}JI7V"Rb>#ۧ8H n\5GqZH`3/ͼH6Y C_6oqf =nq^z.3NBH$Es1u` . 㬚8x~ѼUxx 30wE1ksG|WabÅ)=\ #ǁW3ZfblpCl7 Le 8`/9!gL?iI1Fbmi(}?vV>IC߹H6 ^5iHXI6 탃&!;i{!PT!bȮ碐7óV;KMh~)=Q8Z"هY#a7:)Uv2/lrY?4!rOG#XNϛ=˩ @ԟ)W!:AmKwwb~hUЯ/yu>?(N2W)̗ny/*G%)HQjlnD Ȕi*;oB(_RVT q΃GhÏa6~|5:",40գFuf%C<+p5 <.c~ZN3N5Y˾^~p >aCAFۄDyUNkHk7IC'wxa<3pJ_ka!,j烍btQdk`ug^ؚV0~F%nw,<7XT'Ph},k:7lػo9UP~TK*$ΗrO5dȌ&݉ͅFu s`MFJYiԜ}.ލ h a${#/~8Q*N-):B 2.Ձ 5Z1 $bW%XqOm[cLo\YŸ=zߚ*9jK: kVߋDh' aaa"C1݀O&I1<ط2,1Y-R0wSdḘò0wkaX҉wlChuзXJljPVD&ԯToŒBg_|tSى4я9ﱯ.z+h$4b_~>oq,fK5/Zp?$L?uu0?B^D~V(LMޑ(ےa u.Bә2aF$:[63wɌ77QmX햐$QܔAEi+5UQ܀ɾ֗O\ҿwdeS"nv+AG,'?X'3YK=|sshpPaԳQZP._Q$P1|g*UwԹ'p^5WMB䒏7n<,m`>e@G0m9(-ќt }yz#O $tTEF)<_rB]S&;?9~,`3IE|ea뎃juhϽ.UE0ԤeR\0WyXҌV@F)S'Gx`0}qw +NrXcF"% [D̑L5& p $u.+W֫ޒ"'gK@5K5x^r&Ax΋Qݓ+ FSѵgx2sHo2v؅@-tQ eqܥ&a&ĻKd yS^ =UB[qk\dD/Ǧe`7^hAzO\=?.p9(E 4^S8Pxj i#<HM+G2$$LBRv&Ī_3bh1T&n)U=ng&j:N |x= ԯj*tv gU7DK}2(y\Db圅ijC'7RVŪ0On袊Cc4 n- Vӧȱ[*`J48ihjGt"y\ /Vj&~ޞZ PKҕ*[=Q3%z0bpw6V72¶$)2վ qT "h'i@\Hm|}Ro;B{V|*d30Ih I>o:Pϯz>>e\}7ao#'5e{2-Nċ{/CyYⴆ3Q˕`y{>|Ckީ3W &{Q: 6:Bڔ$艔 }牊@m <ѕ-3rQԱF*(A G2riLDXE. "6RԀ`eo'm}Wqda Qȼe@Y49kX_F |M^%p3x[u,Kx0 iSKGg+psrX>Qs$%G{WH2#Ctd5:l\qmtuNN+F~Ocbڭ,~%H#C7IS8d=EseuaJG,I~ఁĺ̾v~e>LC 4;0_b*!m1@]M3\iMׁe;)FN;H L%e9PK5j(%yK$Е&F.2VT% 5C3MO,6jF )=1Yj) ReR y9@]gjHVmK )U) ah-E҄O=ΉL`Њꠡ%Qm2/iR ꫏{ F8*5sDL-?alY' K9#^ZFt*mJ Ѵ))ނu8m"| Z[E—7(6$7=d$2-i\NnoW>7_}y45N"B+41sIMGz,LCC7UORv-7 fO =ar]&7Kσj驇AHh4؅yN6Jk/ψG2W^\Fg@{P9▉Xvsz~2S?*8cԺ8Y,OmKġ& 9EsUet5ÖUK~E,U~+4 >n)I+Fi3׊onwAE587-Lsְ1Epgt\9ՠLLCP:4tNP2HIk^;"a~ETx>xb%BMz:މ挱 ,l$f6:Q̇v&zLɳnACNlmԹ9&WT쀥:$h]`Gko aF:G4l*Ǝ%6P{d'qv3dڐ2֗ ѕ 1uJFXx|Qt2C"zO/=4MB pyUFz/Z}׋6Htbj/Ԧwc![J1NCGPΙGAb^0&U^%qaεHRj ۺn3/r9{B9>} {œSQ$) ÞHǸ-c$.Q/IKZ+&ɷB7ҞrH4z;#]3MF§IXޝqt9L!͖o) MgZ ܼ9XGmA|= 7w8/ 5Hfg0G>$FWC9й3*WRBB@vϴ_s9u'츏蜘'UN4;\zMnZ}nۉ- ]p 'MЈ$c'i1 #ﶵC4!YgrމX|1NStxmHLexu6Fcd]RN5茾cn5H#l"i0ɘšW'abZ| BnC&k( `MBcNG %MkCpb 6 uue 5*&yxhdc\lzI1祛GwPހl!ILY]۝bosjn(%'!u[Bj ӖT,{Y3BՋҘ n}&y(I&`fAgQv{Wo?J &*N*<+}x^Hn[cf <ՕZzO!;]edD㬸 o1vO\N5K+ͱyF6(6ݗ}y$Wfgtk$x0r3uKb)PZw 05Z^pJز͋-Ji#~eɹ g70A )e_#W]"_%" ¼Wq;l@l/l:v''%eE>v=l銖-Bd7{:R}p|Ɍqk v_9q0ކ/_'<ϰ|}^;p&Xrr##og-sn~M߅xWP8-W pdVacع5%q-bAwI>EJ[P%_kBeL0_JĽu@l( ,m?E5_{i4䎷3f hMK&B<dC3ڕZqqj+Mx/5@Y\/Zw%" C4๼!peE_i㟙?h$ʃ7'T2G}5sBuxKt\-qV&e '%SZkUڒ kZ i~dw[fͰ.K;oq|ob%[i[`ԢfudtBEן'i;31 NiuPK)0I w[/<\ңT/IX@bNyo/lKvo f]9sf '{ot=Fz0H1=BAZ.3AQ8*4MR1 ruQ &41` 㘡Nwqv^6#,(h<"i%pJP#wZxSlӺHpvG*F&E }j@E~Ť G{{1ϱ (+$c%ucՙuY{#.=, ($cez@Gߠ .wPF"iqfږqbYF'l-%h`P=!:l`B|G?/`aZ d¼X&D?O :I-*2eF0&όyL38k;Ƈ lGv4?+9FdhW7_QSdZKpܷ#.pgMN҂;|28sDsg)43 b?$/ʪY32Ub>Y˱%qW|iŚJ} IqNt ,0!'[*`A8uC5Fw!Q л39/ 3]Ihɣu03'Ö> Aݨ^k8c`|am+`4ǎqK :_v 1BkG_=]lb^wT0c6&%1JjpnBRd5ESR31қpd8NhnAdWlHfnQ=Y,C/l7駴 CiRRR*,붴;Tm. ՟.,gȫ @}"`wMW^Hy:E?E(bt6r'qM lWu,P9Hl V3wwkj[I &#r7~V'8ZzvBKw#|pmmA&D}YP''Hrn}}hَd\ ?a.rT+Q{UgK@%XyTf,HPwc=XrH}xxE{Fm<9~k7 dJ$~=v9n EyKE? AAPF* T$,_?8Pi^$"Ei)>w'J%Jqq~PB&M̰e#j*00d3 ^2#m^` jonl*Kl)2㦇0w7n!bM"vGi_Ug+ à@W)8I'm0H,=ʉ jc:eil%ܪvܞ_X f6w%ePlMY .<іaN_&K@rsT^sSL0L ?Ϡ'NݾJ0XY\V2|ϔQNovކ [aMCYL|%oq++0Odal0=gY`Y{0O+ŋ4TWDw6;2:}ɨ<+𹔠ί"MUEAuNI-c gbbxCۏv \jӕ @;WH,Lpxt* A$r)C|͕G*j*P',1Jlf7ӁN_b?,r37`F9.  ֞1%J9 ^InJĄQ nt5ǂM[ M{334`i̛eyx&uߛbjlm1<)/K[I66`yw"!_^"ԚGLɆ>ҝ7KcQN҉W\HQ Y޿( dW&9k2ugsRT>iLu$ʦ#RZ !DL`sBioޓ#caU)IGM=vuqgwRO>GO{g(Sx"sP>c~1fu''\1{w+MU.0$*\k$0ctnTjLU#,7TzN>_l4H1l8>M;׀R =i#%d5G.OS^wÅJ$6"6| ׀ a݂?վٙ>vi7VIXE^B:QjfDN.*R#o\\9B,A*b#w% `a<J}ꖷ#I fť]"|}6761f7Bλj/`mi99[Vld,+PSb`ީA0P:"=?K`vxM| g $/ ACTxVLv=4eMǾ9eoDqFNe±~Bi"sMR\j&33͐Wf\ƭ Eߟ 7VcMncL&_'Ř^SH-~MJkA HŃ'FGe8In;`^#oۥoȜҲUE-rdM/([Jxm}N5ʿ)t!8ɌȷfG%ҶiS$LT!պ' C\58h%]fG U< IaWyڕQ^ r8Dsl#6報SD8K/GU4ot<P`\2QF`Xe ߣDF!ոTnµ|*$ k3*47L)0 xlnC~,tF,G+[kXx9BTfyD>cU0:TxPc֚/ ʫZ IK"^ 3:L,ncSX淶16>Ykڜ5!8dKT ["% <|j )3'Ayi ,Gp}]z>RE8#ўH:Q?q2jT'XՐ ~@]. WǶRcq07_QE]j@mRcVgW&`5%xSH.B~#}voЛ| ȄdnhQ^IÝ-xf4WՋ|ܿr|-fg"4nieHVmbH,=f8toiJiûJ^I2ӌƜ>8rLBFj󓾚&lvgI,)$}q4+W! ƷL;XrE rku VK*s CvW+"!@)d)TDz{B4R X2-{U@̂v&s@DO3周|,G  Af ڗ 50,_(6"|4_m G. 7dxRe"zw!O>I738T' |$$Fc׏ ^!Nj-]rލǸpl~rGP?6|%).)*vSYNf6~fZ[POӝ31'mG KlH fk5An?񖛌ɯ(_zEx2kDO zC.%3fUm܇QiF7B9*s-M# w}#wɶϝ">SIvZbR+o'Z01fB^"Y$:F )ba- nlNx{@>G)-p ?llG#;d6@T+YٓTķ٘ A>/0xnP{ k,ZZ:)Ll nʩ {?RduŠ[2_Mh~I]+J)J`l76$Zr- WNyRhDݸPk3ĝj*{K"4&OFN >9ܶtL{˯e(ZaKm !>i+Xc*6l;ʅžQ7KV_ӣ (EJ._ൟ Uyq uÇO3FDmM ?z'F8{ѰO?n BaJ{p:3Ш̹Y}<\[J]" ^]zU<)DSml!x" Q&h'jINTDt꼽ξ|ƹз5ұwz n m,!:)p.SO2з~oRg{Di@Gv[bpxW3z9ЗWd½xצ+xe6?=R.iR@ r\8r4# |w;E"J_&<o ccLb\~Aɷ4Vj]Zl(F,CVʡYx<@|G/@c aYfdFJWnat@6wK}Lz0[+ eǞƻ]W`_AijFɍ/vy{%'9*m$j%Y94[ǯ>}酅V{Y]LH"[͂f8`fv;+Ϥ̊{n_Zؚ}\XG}ؾ$`i, j0zsîd>Qꀚ"4ۓG :4c ^wౘS&dyIbC Lˢk`KmՈ&_~soq=r6p2}V  X/'kL9"I;؎A S!WHW 7-ռI 7'@T@MbĹKH.xS2C3Po @& Uq/|v&}Fjs 7C}paWo5yڙ_&g8$Ɖ`@Tzʗ a  7!]-9eʽp 1,r傈G ecz5u2Դ6ˁn镶әcZ_EOiw^`*(ٿjEr iJ1܅:Q[Té7qƉgym[wNyeqXܴʊ,gcVG`DG?>N{!XqԖlsl[RLTMCİWb+Oͩ Li>\速q;#*C.7|/LwP 'gNnZ%"x: qK&oZ=.7@ڊ­Xؓ}e 漋X K}t-(&kXDﺱX f4"߫46N uCbIg e0sG ic) \yˬ{܆Q4K&>Kua^3H )_(jai\(wo7~Kf-?Vgh>)qi]q.PbgΓ j&O+D3]\ΘRubO.L# %[j Igm6(݅R a߈2BEح)KjDZlmWgrsWCL}14_h=>n2lViC)O,MK@'cX}x1՝QuY<w^ՆDhStBaywsa Y z JD 7}Wmd])܈O*dиvzη>qs4 2"jZz;U\Vll_^ɾu_yD;D0u]|А^n44-L˛t,$ i$\JCFk.nOWm\9%H3x>r1Pg&xhw%h7ۛF_+Y:iSN8j,g (硥C"U6OUP(!$qŘR#6P-PSrB ]p=0)3#6PX= {$ci(Fn*2hVEj , a,fDݘ)Fi|*}XZrQ,7N&.YDI ܃_Х+\{AP&䎊5p*Vh3 Yإ>4|HOU"3ٔufCDN Ԇ2ى08^>N/&;Ru⣣m4T;G?!JDɻ.P y%+RUd3_}D[._"[?hPyt}`K7Gy՟XvM4cӢwBЙGX7!j(%q߃@5j?A$55ZgU{EAZ"ʈr Yp<p45Aj6Lb`dKˡ.[dw׀bϛy!BP,F ^ ,̼.hLVG+Q jV ˓мBO:ʅ;zZR-3!u,!\2pg0[uȡ;pP^r֦0]/B][~^<y(7Rdc|"+EzZ +Ȯ}ǞBƠϛ}SZK FcǜIfFMTphZb=± K;LXo^%xEO ggYS#=+ۯE{E & 1,@# wW/jc(3D+Uև ZR@H9зkpw M웒Xy2G:^sͫ3CcPP M3!@kw,e1"(Ю;76SrA?H /Iɂdoz͆aa(jZ^R{Q9ңoPgwe$2Ƅ{ΝN=c3'hNp8zcƮuqHwamHTdi}__MQ/akө֍иܖOP ~Ye\LMv{F#U@ɬ9UH+E(rېl̮8P|Y%|AVmgqƒ&d2D,Hkp;cyS,OpeGrXRiwPEcg@2Ș"< M Jd@+,ԍ{=j;Z股Er&5|1#RW問?>`8Bᰝqs"Tzj;S`># 4r$]g.pC"B/XdJfD細/Kq/˃A4+fZ"ջqMtULy:IJrvF6ṁVBc!:V+UQq5k.Cja I4:t{C>s,BW&`g\kxu̐A{u哹C1Sדfֵ73i\V}V8™H6G)AyOνv@F޺ޑ)3a8x9Y{4%R࿯)|:-a*ު*XDI\"@JFw 5]Vw_w$VN CUn>A)!tsؿt läM16?G*E.Eeo`A60wU;Hڡy~ܤY!se1IC:94 e8IیbSrů7ם\r'Ƿ [nR3;Dm;ẘY8.:pu:ȶ$&^8%ɞ43"rnA]c:@'Klf^Gpi&L7,Ag֋3He!Hv|*_P5L_qibY[lqϩ 0g86"T-~ށ~2?>Qu_k5'P W&)pι7|=s>RK:k3La)R*^Rη#QC/ISO4JE15OIZ_ = j7M6kt᪐X>? ?boū.~drnH$U˝! )-Wbx[ŏUm*݋W Il܀XC%BD~̚ }~T{RjXRz V M2ds7ˊ\g{g!T5u_.XGsVVmÍ0G3l5H*\Owճx`3 `*%ک-3 a73Y;ŇFE)J26Ip1w-ʡIDRTJ7È0S@CpZdnngqz>Y&0hJ|b|,645 A"#u^OFAjM0{QD_RWXIM"Q 3$W3٧ұti>8Gq]btA S~ޓ/{[Ij;sUx'\Vh߻p3m@XgJ%#Z9?+xm-)i %3~]}IT؂ςR 9)~<@xTb2&܋} ,zYȭVW*D.a<ْ%*~bEF;9yȤ4wCг'q͈쏝g ! Ei8AMMV> "&Iif?f}?Un'f> צhcuvGCҥSCẽe;J EsX`xbM&SogAH@3|ڪsyKA {\hJHعY|V3V d`J3"5QXL_L'_x+\X؍eQQekO88(. j~/ FeVz.G%??Sc 6Û@{W"khC5vbGpg^'U3`އG~^??i^Mk|b^81/ayoKôE/Bzjs1ά ߗ>cM_1wI@:B(Ȅ5d❳㡅=o0?Åa"EZ}":^7i:K!]wV1S,}=9, o K`;-6"r .=Sv?Ó(CXSC-r`iqlQ˿i~>xd+ ˩9xF%gfFy=dhV2\HwB6Xiq,3mBd1<cgIi J u)jh@]t Ԓ>>Y*w"$߰:Qg!Cٲp\b@YCGmYcRװwI2i A#c:o dλۢB$afMuY/AL T4{R<4&ϟ إO쏐/a/?nTH/ `+':=nA3|tr>HFӝTF1.D\SE#0)@rweǜJiSQj@8hf!,$E,ɽH$$*#-m,|_ֺܴއ,IƧXLY'cXy]ceG{^-2Dd3&2>+ KOpzd:kvvCe@@H,ꟸ[27OQarީbWfوQex/Q;>L/by ڊQ pnN6ͭad 6RIdCEhӻ3xj6\^b9_q 2 sMR?pa#yVRN>fّg*2<#Syh#nQ<09Nśw[F`ם KOF\p%i@]cj'ʘҖ^gݥڋfTkg@iKx3gT \eOgCN;ks$j=qOͣx0W tF5mmK%уB&61/l^ҁਫUQzqCTrdfs/͔BƎA θMvpo*r I@O|ؒl(Ԉ娓%vRSgE~*@ъ sp"޿Edt*VAms+A.ratfE C}iژ29@%QهF?@H,jr]K֟:Ss/h`MzM0=EKA%o뷩ХYd=KXP{œp }0wi} *mƘv颳Eex}cE3R[ɔnVk]b=RWح謁Tz]{{]mk+0s\\iD_ܶ_Jq^[7\œ7o;K +$v%otиL!;qpXA|@͐0#P(zW 6>FӦЋ9WIQ%cэm x?z~:j&ڗN1/mLX_]'^x)߫;) >GoAq5ZүI.$LB;gJ/9bgA`&Y =2.!?ӣ }&vҜofiV ,Gȕo? 3W~o(<)QNn [9ho{-ϐcwD2Jp$V:ߖ(m#DFh}zڳiB D_ RK%GËt\],9s6=_#1!!"J*JvMg`pUadM<:&`%4X+bq#и@b& CbCF V `NFv)ٳu0 ԝT{`砯TI1c%'iip"o,' (t+Dn1!&_]`^xD[eBޖ-(#_~A ohO !Ϭ)d=bKl|!1%)C'DP'Gu9` ĩ9ĵ f$vlp}L '?Z,ΨiCDSv0oS>n:jVE-vƐo2a.ڳZi,|ͩ"*n(P {l p)J!gW} e}^U2U4 )LIZ_I[Rt񥈆guGvV G>nt'C,^WwT<ӯ#Dr;7~WK竟}cBw!PpИk%E&IXRQQliT =bVتtnLT[$ڹ!SS !q F0HP8$3jh^N 5,V9Ep֎ + Fͣftjeg5C oEƿa!#1)lS|1D SYh,]-)4ny_Pn&ti~-%HTﴶX&`%.$(PYE`(M Y\_Am!;G(<=8p? ±hHT7R@Fb"[i2M˜yj}C.9J n.=xЗبY< B:KF>5J e0\ ʆ]cg 5i&"Z'4+kd:j&@ܰI^|EQ!e/:/DM,p_ 7V=h [>|+*ū>_WF4&VIkQM‹h4\[RX-O .Cx;J3ǵ}xL&k;FZMWsc~cg-1ҘE?d, ԷIQ$9e.A޻a4ƶ놐<φ2ɉ;?u6_ ] )%n~rNaF hL ?u2+\\gg4Q;s<>sm"7˚X֤ȭGjW3kgG7#XE*n` vjċ)<٪SYN%'lk,kŸ`ofd!ݐ|r)?ewC컅 e|4@惐 ^. s A7pMR~f}4jɸI5 O'`R ^wM>8"*NW`dna=Dz tE.]q/C'n(_#rv¸8㷥$ ek"eW!'}/6դI|9]7 PI>{k5#b6;̵8IvM>m8B|;KM|'όR8ɂٚƏ%EcVK_$ZMG FTG/gfЮqJx1yՏ qAؗ;ՑM ɸaL337dTrPL?—Q&=IVjm+@=ђKJ:x&t1k0Vy3=j~G|\GL}lXTCOJ?gn/vXL8uO䩰m8f_TQ^k;̕{Q=2[N5R'AV (, j}Ik;="~^G ^ ouUgl1iĄfk.t+D^)YP711]鼳2-eaH$$ o&(6#ApjGSlp`:t>gI{z ^/Jfgܪu5T 븄-E Q݀<^YxKghG7kPGXM*?ӄmIT? Yz)R|%y't8NGQ=k Z `Dc!1e or1>o"Î57D+ lV5 k2,7f`p:7v=Qn&c'',g""6|>wqn6WnȷgtX1tp1o*'&p*1gU䵘6(}$|e]a!8_Kw/w gpwMz4۴n-f3p52&eݧ$Ќ?aw1^iuP?Rq\f:ؑ}Ъu'Ʊ yj8bgxlGT*fϖY֜ y9$hl` y2f"<´;=*6,ݪ0jvoB7A|_F18NU]{g@/+KɩUc~Ϙh]T{mTp]Ů__pVPXqvgv?BʤyhٽV3/+Em?51>L+sDbM9J[ L]T8w9)p7ǕP"qV+*G␶fV:Cc9%Z҈5rDY@4j"Jo EzP4 h@Z[[RDQZ 4׺lLUTawK"476p:'@J_~1쀖fJPk q!02 $`x ;;(E4_?/O4˦_jpowGK6`L L`2@l8@lk";nvֱpƄR̐?E1J(h" {՟ut r!l uz'h*)I0M!"$8ï/?D|ufqq < b"oC2K@%B }‚Ԭih]x5`0&vE+IcC;ؠݙ\>XsViOLP_ߖC3{%yK҃pT8%HbmZz9 {$ݯ#dI,Z =dPWd\dXǰNI`v8o0TYSIMiuW]3nJ!G5>Ɇ>N pKYvO_pWj?6\dy&=btxJN/=T*- i ڝėB< wni9ȯ^4&¶&b8ie,WrIgα=t p~MXFkLm6u$U1]zȎSp{nC(s/ub-@Q$lجŪno<;ȫ/) ) lzC/]A"/!fa=pи9<|>HW@`P(GJ5춰թ:%uYRGOcj=Q)K J}a&s)R؈v ]&_wIRǴTxh'/ji=/M_a{6% ՅEY2b1r#khU֔7k騷^فTF 8jبZ2 M"q;;/9Bͤʹ=6%S/ce U;:5PH_L|HM'e£uCbz"#[WPሞqQ4ci 9s]C)k [&s;vᵿQx-gK;Lc<"=$H,^ 2 0nVs5uD ۚ#IUhHCiΕQi!뮸(3-ϾD4I&F(Y٥< VCa;_px8#rpj"E'K]0ed~7BdIQ"KR7YG8!}=_*ȡI7f۝?oЛ1y?R!O|2t d]`0.--B>>l҃v {8o_|BI?wd/=ԇ[6~~ = a7ʧY zodZfC[πlCU+Cḇ჋As%?OjIBl}2Lb`O7/ "LTM׭Y6;;H`>/0dgh hGZfT Pu-tgTt߬ |Ul9K۪*i+DH}碑}8QM,چ_̷Z ?Cd*庍̦\?qV-t5zwW6>VÉER^Cg /c T ~&OT ԮTQK{Y_].VyC Kftm +VPiҔ%W(NЌ\elڡzd ]Y+NSPh ~ÕϋoΒs6Y԰ qWZvx=X.O඘-OR*LWI$u%rlиK94.Ł C7[[/QU鵜xߵͺ'z#;q4^]UX"yg7InS?CȽ81fǏ3~)o"8eh1 φkQ&д# F&V%|<\FXچvP2ԈkaRU5)6?Oj .xCBIA3]Cgզ@Hc_JwmWri_:HMe~i4@1jZB?\Fa:Yٻ*'bkLgReiWRm7C."P,pH!a| }䇈Y|!B-7;KTH7p&rS!M)?y$_4#H 3(XL+"7qh7]ʵ"䘡oýlŀ8uVCOr ET"{s?ao#>3&܂ybs{}d+?BVZiSm脍 W1e#{;$*%v$<>vWmc@DqokR<{;]{)Fc~^Άԋ)ֻn(o~ iGY$P^k3$6rEl:㑇S[ܼy*7*OVYh.,d\'@C8 9& G#Nu's72 3qJ1D1#?w;'rE޽sq'LJОΓv53hסַ6ٟƆN#2.c9$]/k3 u[Ή:D,-$0X|C/g҇T)nFo%ؖtz6 ^[YbjSM y6F Ģ}N%6ΛS,kqMGJ9\YkB)}νGS] 2پTwÉl.y{\5s{hXkd_pCz=ՑJ2s&R{)u2zq߆QeAʭN5߄8,1*Z [b-5HE4wJ#JCr uZV5R)ޙW)ea9#"&<'2 >#-V/I슪geۋj>bRSاɨۙio+"諿Woyg4-^=*n&p Qa^v;bJ}xrSIZ`ӶLyσ%4!1 psuE2zg~ KE 8N!+8.(Mf FUqC}X!b=]I)8C ] &k&{]T8< ,輰i/i] &/T$>|{Bc&;pHy! *_ff-Vz$m#O("}$va}?ĞB*M[Sdu CIݫq3NChbB+!x,tRRoٚ% EtRn @2*%_z%V\[ Щ6gͳC)5m1/3XN8fo{uTj 쭘ڮ`r:ƫ!'Y/if~A=Mߔ'0!?$dj")}, +Pl=8t#\Wi[y+%\q^fҲ&P% ;$u2 Lcu;tk>bҊS^@j +49,d ,ݿq'9.(m5QVw -++i -Az[Ϩcs 9v ;h,q&S+}vUzWBĶD#PĐGIy+ ^\~â>ԯ镲)0z6Cf.Vjʶ$ {3dEYO ݙ/ (9]*űEEmam+ l:SN` 虩,(Sq`\ۊ,q{u0Ź3`>ͷfW[n }KBڲmH1>8ViyXKFI7gvbCtTbd E3>cݻ3:NtT+'Z_`~.Dzd`#Cmp$cP3NB}ahHi91*O_ ׃?=g1w_ptȰ -E)}dMs yȄϹwV޲>bXOM\aءЯ^/QϮ\ʕϒhR6{/1hM// a1=V=wEp(N0ˣSP KnYN(4ݙ%Cp8VY9p_a b[ĊgPƌИT]ntL>Dœ:3QR99ZO?; ^O,ewNf ( i$CdJ>2uXqSq%if ^~Lpk> "jW9 ]RqW 3cJw Mݵkmxg˷}6#m]jTڙE&Tz> K$rNcC5T1B/eͱRݷ65e$oJ CvG>[8γe pYM,,p9Zxz$e  mJNJYzCc=("rƁ 4Cۯuxh|ՓԪz}46+t"]?x=?x&I"rYPZcORR +4] Ö-N3y!5#ϖz~׍2/U)˄aYTRJb;3픖O6MO w5wݒg +Fӛ ~AV]hLԡu3; M&$LqoƶL $΢\x&aH k^Ėd ,>Xydyhg#XH x8[@fn59R>:9 NCQqd* kXU(lʐ]NO1 ÌhݷW0#) c&w+*Z}8Ǡ{f̱>.ݕ(P犞-r|۴(+t)9\m,Z-޵S) hkZl"]bjvJ܆DKar$2H9v0Kzm|pufPw\,z%j6&@jM2Dx@鱳ǝGJ/EQQQF[S "Wܹ~>t!hMI#r)G+%>RJ3P4Ç b J^׆.'g Օ,_ yT MhxsPڽa+͜Yaiwľ9б5szw(OknSqׅ]Lat z{Ϳm9`.~W%:ivn_^$.g.&ޝ27B oB/F* E]>@"h $&z"k QpVm &Qx!%La~?q.x3IZ|T{~A@jԳ0.aLumaN~-K;1\\!(Z(MWٓL_:JGOp}9U ST[ZfJ_CC_;*1ŁY_AHCqnOK0 )M*̋N7 @iRI Lkv=BY~爒.:A;c*)5:=b(:JÒSA>Q,.,2J+OhKWzL7%7~=Mr̚3)HjA7!-B]fhnߖiRiD™=i"]YkY HzRق @鵶k~mJw:O&1M^7:yz)/NR#|:LmΨFϜPQisl>ZvĥtiiG=#G.I^*.P'OC ?H b-i5pks*ʅȘ6`9v,$ϻe%yh_@h4]/0Mx\ګ ),;I^ lzu{z6 ޜ1('?}u@p7=WoWcj0ӝS\!q5>ݢը ?ec8(m3cL~*J4D.J=5; $殊FS*E P@tQ+ljaE{X%zC$&W7x?Vb#JiTZT`Tf0f˵OVU1D{"S_h)TEYЦP0^T_b a g@E?qs%t1f^8sb~7%=P2;JvQI}wBRQ_+q8H0;\C!QO>sq$ |ڄQD<;+' Lf,#%W0'r(9"}Q8350Vbjg\1\87h myk  s%pJ}MOSӏ(B0s2At v')iY_2ìPFJSt$<绵p|Ze@syT4oz6:5H6"#KxG s;G/kzR<\'lvx& Uh_me݋+ˊ07)j}BR)-T|Q}VV81b\j3د)]5]OPq6rѢNjͿT2 {6| +ۛ')??pU^ђsB_ _wE4$z6Q_RE*%u!=J{ ZjxX=|RSlQ"-/ W"G4)I#I9O$I66JT:n=L%ŲPm`g5K,͇A}QUbuIɪ0ǯjZX!H3p_m+y0@fpSw̨x ʔ!esʈ=?g.wRG,e32rQT}4 lLpڍ~7G-k>6?2mL-֡v89BI3}=ߟ4|X@vEB6d]fׅ -2q`,tbsQދ-] |/8=>HD@ݬ[+\ MVȜS@ Y4QZtjs: > }Ԙ}\2\xBOT{puߣI0f غgQ-)CThL!E)Y'@tbJ' RƅEnB!ǻdÙVd:ܝojG쿱xmF)?v\v Χg4@l!%E??t1^9yE[bQ듲&@Hw]JL,1{傒eOm"FȆrOFQ [#9ТkdL-ʺ*ɒ(VZA;2JT#M%A MQޒ92y8u4hEtۓ4 ?:17+־c̶n7[c%9dDIٛҝ449[5@n^^3;6?;^T|CS\;Yq7cKѺ_Nc#B3b Qt)o\ T h;vH7E5 *fR?U-  %XSuYvȁJ E\P> PeԘjN)yq4}]ilT' RXbZsn^S#e~*脚#g'<ɯeBE] 4+A0Kp`kIb!R 5a_A3H.H z>!Ifh#ɛfح1yXyqh7U9G?d#f(>"k,c4rz"HDh$XǦ8CO[>HʼIk8pUupSW@GgfӠPk6ozª Z6m|iyjP:&M 4rAW Lg)&V#|/Ҵ^d _hYEU5phn/ֻkP*6pBo1oyg m gWp}:ձ2ǹh\/iu[{w 2 'j)n K'$A:ƶz$Z-7`L%&\25ܭ"-4Gܶs*XP;Ŀ`'q=".eRC+EELJh5Gjħg]M#\G!vXpMnz*M5/}8W 5׻yX&; a:nfd$S-EZtnE`Q9}4׺h.Uc( 49ݢcT-Y'W[L6 J^ &IThAh&gV+sʑ;8Wkq-g!{g&.ɗ0֟1ut]FM5f_⃱xcq\%#->/>6*;c/-@~}ukStvwU*ƻk#BUj dDo3e')(~f?iA.a  sCj<O.!BYC~-y 슡̃Pۊz{Wtlw(}P\w={^ܼ1.2B0}ڞՓdRVnz38`B/(߈nJRѐC|s2$9^4R1hʦkVB eo)C q5Ymӕw060߁A `d1gkRRJGGڏTI>>j^5 }8xD BB{ʣ*Srv]Ln)۷u_3.~4f?DrݦBz=`h<+zHZ48t%om4 [Zcv9bok^O`2O"n3lLW{\t;q`@pXTBp^lʇ`2vBs "-y &0 jZdXQ}=LAkY%tj?Թ|8$5?%.{iV[b-* ~TxZEKBmg D!̏0%>i[8ľ.I2*;!t@( 8 8$ l'pյ׾;cN2Gt]R#/ڛ82Yh~X&"0WwyF EQ*nD`eJLuv8]͖6J>Ztc:P{Ĩ={ަYEc$ڕ=<Ɂ(UWq]FmIdC-LUVsL ^gQޯB̈{-)6/X4[ 䲔@t#Yn5_[y(8=*~X󚈠}ӥq>6i^*qQy^ghcؙ]W32aTW,0 f+^§_i=,*=륱yMrcB+>\oBN2yrj L j8%iͤ>̶ZMnVTzڠ,aLz0ț-s1f䥝KUi5v%,t t+ӲιJSb.O_qy#(ޭYlźnA{_A.ZD&vSEܫPNC(oo/+Ѷʿ7y)QG@kFW;X'.P҇RcNqpV[]~2 p(uXk񶻇 %̙E`/”8/G F@xN[$=e촖GV=c>67o׼kcAl Ńz] 7PkSpSAsav?ەF.hv V7lZ(UӜʚ )#Ґ8Q:>ļXb)޳fÏ&#yd&%Uܩ4tBB7[1Lu7no\&c<CS+ci\ Q9TSvF$̯ Ĉ[ݟkޜU4r( $C p ^j/w='Ն @naD/'m𨂔8R6 oLLӪXq>Eb~8!031/ {Bwq`Qk ˼.baݼ%אTy?N6G׿j(]hjF}y- aK8i |^_FQa36(h,[vO E )“g2ro2pg\ d ׇ(UeYw#)GUdۚ4#ִ"&'ՖT/E''U6+h+1[se*nPf0.sd.-Bh2ejB|(TxC01_"#r C#+XFU X2nCN/ZR⑟4,:ޚP`QZx4NO〗Ems~K*R^sF=;׿-1+ h+D\fҨalhFHPA*j3sjhB&#t((P jD#j='~I TKGJOެxdjF@NTcoX}4'b2%Ě{x`m4˹{-c7b$|-ِ P8m$>qDsR>XALֻ5l=C3aQ8pHᅥɸ W)̖"w?b/2 S4*{tDƧG:0sd)9 H a}i mxg8RP$Ѝ>yzgnJ4N8>np:89S9h{d}2n_26Z/[~?NAׂFPޘTyGYͭyՏ|W01a<-t0PBlkM'!(( lbe(^:(+ޒɑM$~mHƏ\i{ T 4e@OXK= Du@e5 0S 5֬9PkaRf{U{rma ʓz+zCORʘˇ)JGp)vw xT׬~g] tCusqjS̪;>ݶ6Z8Ba2 !̭'?C^ࣕC v'W<{>*^_Ꝉo|j᳦BGsgW#A?LpGirRX+ ԁmXhz2ԫ,E 37;$ΛTcRI@P$i3ȅc1ȿ,zccAT@87L}1g;u7kB^DqN6cpCzu,hbN͝Ӡc0Qj+o`xFK72-s.0(/VtPCΕf1$ڙq+}Ib!ό2t=\u'0gI+RxdޝZ@kXgB.7|ts=,^jUSCGS-_!;&Do8|}Ja;iwɫ)R~@/s#ui=Le"%PQHML}a4LXEMLL(.PP;ُ6ҋ_Uү\:b@*6Y] "Dh$Z e";a1~U$Δ]qM.Jgom5;1`ۗu24ߍ#훽lȍF}CUhvK@!_}S-43&\/ Qc߮ÓI5S>նR]p)=8)mie<ѾX)f>.bdc Oiܠfwtӱ7P9r4*++{JzϾEΊ֛⮟P,~9&,Gޠ ;XsN5QUfu,ks.;GPQs |S8;kfoH A[ct|~5325J6Q"G{97$aK[Q #C}"XSЃs_D*,-iEae+&ӯYƌ_5'oPw9v)0UX/fY4W!oFw4d=Qy/ByiXc1aħ.jBC@tq)?=9cvd2`^TD41]I} âyZ* bqG2%\ R- jCv‘EX"$hR5u%uFƽ!Ѷ0u_ٻH9`l7jSM3~](Q9eϫ=  ?dF='@0ƃuL/;ݭpP*`&9$ѼKzK 8UM"OOǺnSN°bYgqRLcxu6I&r:)KAM\ 8]n;@%Kuv&,S8Č,g*녢CLiZia]Ix&!i;~gc=k6* xۜ 6#,8gMl} W͒w[,An- Dh$"۞#W{CU~Y~5泑BE"a!KLf׊HuKjIa39-"U2&Jz@3إEmSmXP3P|@K7iq'NqzQeغ r}$dhi17Dt]w L5_呏ii΢Ά$I2=B ־`ŅW\\)-<7CzJl\ 0O Z(3$&˂Uw`aI-nIeC#4 ]Jd%R7_#Z X@ nTL'pD L~2rUl/ )8kÌr(F%.n1G֬55;-8JIOY?#M#aw_У,,ӕnIfAda ?Kƪf|a.SxTG]Vl^0V\# A_mDF%\iL}@q20(F)òĐl!R@Ͻfn@̖_XO7S~߇>CKZ*D IːMR̨~Mͯ!+3{[0 @%iR;:N!$HEԧѕbڟ'^ORx+ךBg"ù.ɵ$.\I\6Y'"m}TvĽL=8e1U\`e{:+ݤ [xNvr3y]WCHivɸ1ǢO*UC{{,L[)DžX]}g [m] +9[KۜeK^fɺ%vH2g-v7ԧݦf^*FWɶ^:f4 ~Z  T\$?袖5aL~\"Z;dY7:DC t[WVG(Z s .RpV-5 c^cL#ʯ3\//ᨭbQ!TCf.PA+|3>%?:ݫ](B# ck~z$+˵o5|l\}F >_-f"rt~-FFVJE~]~Wrb6sU$;hl@wUtTHI{rJr pn%VwȚNazmRX`:"_531AC(USZE?ψˀxtVV+:)[y4fҨ1c>+|@K뼸´~m1〙e-L+CvC7FTe{0Jm7%4(͞ "֥n':¸Eymo8=<ד`D6?%5;XYnA`{yݫ>7-j+jOqe)av!s$/ז=AAjT+x%$W)Je&Z Jq4̮ߖ}Wn/:gf5>l~$! XJ"70i᪘cV^}19\J9ώa {8ThsKε9$q"k>rջ9tF@ҌrIΆ5;خ~Zf`C6z$8D8#zAF"%EV*;aU?e+D{/Aݕ.-;KxݫQD0(1:A rDhSk O &$ ̦ &{ t1?x֍&R0#>9w =fJ,1ګ.A7dب qd Q޺e+vhK$`^KXE*h>.>o@[+sFKcj$3ŝjGcʹ#[.а&$MbC88^*;ܗPrCdyLI#ER2od4aW_ M\ꗗ^A 1t^՚yMR'/3A|,(ɲnMhw>uqH|UL}N(qbU&]('h2MBO 3`P7(|Ȍ X~{dĜe@S+ 5Y)4|X/tEo|G]VwhL.oNaʤ #H$"U_ 4&J-fюo2 ~Q+vS^TWI.P$5=I8 E-;礡 jF&TcS{"P=I ]F6$,ƅi"e̙k6|ylU\Aݘ$qJ'̺Z&5]wsڢoj RpZ}VC]fcwZtg;5\tI4B2Fsf8JBSG:jOҐ3|j"EaҎkkr-Ȕ7ӢT3\ovx=Ĺ?%+e=$}pkqMu|E&=P ?v=$a2L^ |sdF qf4hd(ݬ/dOՠЎ8TDe- geI@z h^/2ZM4^m c1}kҁJZ) bi=^~Az\b5){@D- vJhSnHFE.lc-D^-O3/{z pd2 O}e4&CB#ji"T);{z'k8T(-@TozOH{z[&?,:tk zezH8tδڭ?G~(Ld9 C1!Q78Ev+!l-fj¶^p"-xQNpŪ[PFUнN)H6#`?BQl6> 3]aՔ֗~ P[4*cdO;_DJ&&7Q4QFQmntڴy yߌ1BW d$+Fo2neu?j|]k/{v'-ípE.ZD:5ZNw:.aȮ-D{oj@u'5AJj7lEId-yE :u'{[K>[FVt0Mq~xâg^66E)lF=%PQ9]#6SÙ+%[?AqިeL3I%%Y.gemuh}>3rMoCk題4 >z ; #[ؓA@bW֦/.e#e0F{yRBu>CcQܟi(!Ȍpnj2V7JeY@Ղ%۝ޘuhUn;׽?^!XV?S&/ei:qzM19Oa&T{}}5|N\?ݎɳc90iL[^KSE=04t*æϓE2 WvSDeCZ[ %1'k$a/J ,\y b/\~O ک5#PT1q^*CQ8H3#bie V*J +{eTBg.ST$lN,<@RY h*2UʛG~įƭq꤂9 ")uZӻI;=[yM{sz"uK^X0mibL6_b܁$07™8+hC/;29_n?<w .'4~m"[n=: }M^K lbԣ8bİXA<]2]vo&&\9)lVR~c+ْf;% 37!H_`qD$r>k G( l#m̶1#o <9%(< 2x0Qߛ@Uwj" >JZ6H|`u-XiVn<0N @!`u溳 &}\36Bm` V]Hfu[θ˾t:=]E f M9 "٫5|e\ƳP;gV+8S,r'e 3ñO;*LEeFF̏\5_:/r-F ʠ}r e 5ô4"?jnLRu[ {_'MK҃B4E<|qqݯVEBm pet !ԵXPx= : q1YqVJ&}P̑-[̫!͵ ;WJiQfsq'0k{ .G[Oq10`cx{F_%e0<z V(oJ`k΂AEZH1pHp ~&GsG`&/mg0mY@3lZqW"Uo|!)BI7t52 F ~=,4/\.R !XhW$[3OJ.YUgZRn.G2[̎X+g6Xap1MP\x/S_WTϏ|Y3J`8 MJ,2jwvFz?tC|;E@:ck.$AH ,?bTt`JmY^haOE ۃ?!vil8<ۏz2BwJ҄ۈc72$Ąmg2Wv4ҽG%MR",(х~!9U1F͖-gN) J\e!_hD")#&9ҷILOz&u*FRբ .Ȇ.ȭ\.DнFkM~^*@LSޘwquoWe G֨P{nw8uͥHߓPs2ǕO~H!td ڿ!RT |14Ţm5|mst=۸%*0U:56&8lo?fs/0>0AxGBr k d?ֆÆ#ȲJ[Jtl(7_VU jsޥX/m"Gͬ ,BIIn]>i9:x 6=*﵄~HMMFHPv _x0#Ty`"lF_< DP۸Ԗ-dT'DI=졾Li' ҘgN@(})Az+Ј.d>cfxYeDfk*QZ"6=K`B,D= [H/ IJÔ!kTUoUFfA\2H4gea4޽cϩ*O`_;"/KYQBX1eSu>HY0d k(: !- {:4osl$X U_ =±b+s'Md7;+ETx{=ϷZ݀˓%e"0-Ϩc8[RlB`)#Ʉۭ&$9?y&( %j% eN(e}k)[q *U#-=2|5꾏:؃wZ_1^3)+#rc+t|0"6 Kѵ}/=OTw =u0-~ky8k9cH5;ȫ'CL"‹+p (ՊmN].g Tܡ<ѝ_#8>vO4+:zYZq&[ >'DكP +_Q=G([ه5o/ҹS(Jr+*0xI [lggRT47[% #e3)2eyTtq\uR~:Օ;b9{0ùAr?5Kֻ[}/piZ8d5oBW@N!a[}qCaŃ&WHcSb-?$bHߗ< *X4*cPvD[ؾE2M_ '-J(J'z#Pлt)t1C չԭO)nPp87]$mhZp#Ji\k()ЅXݚ!خ %(/%-̶ˏtmHހYs iiyg* dh,h+Hbd.yHYXpM[^ؚ)_QR6/L?\ꃚF#`&x$cIh@=t]'fXE=c+" JA*2[/)YWf`+"'RG޸yz- ]+ ftuAat gv[T. 6mpɇ`\ġdtCl+"{L~-a M &t܆2Ee%AOM!d^Gzc{S>Hc̩Do`ee.?Qqg "ab 5C )|m+GOCM )iɲSq |]jÕK`ˆGOqM,Fw9KM c5#"RH`G~[<_}䷌lދu(pJ mx0 |SVP*i$Ɔ6b2J_k0{rY=ӈn$q:t>G+[B2dqBQqFYƢ>U#Qt]B,F{#kx@})X5:]U`IK1[s&du/WM:>j yn::w@G"}zN_64A'R˦8`S{=i[>Kuc.XSMeS} *ǘQE `:!dGŢ8:I,2TsAĀI=[ R=+wͱ0C>D~jΞ~=U3$ӿ.*CihfzH,IoY&;{!i|=e] %*svKN2'I/|b\HxE'&E;t9-qœQ%1;CP =.2~7W]B'_ۋ(}o#rF߯]vJ *~6l&N+S1@3 jlQ0Efj#vU3W+Q/zV&YX \|Bܠ,cf b1rH_0}--z=nc;N!"k4yuPh+%# 4Llkxձz+If9f̣^{j ߹yE/9<FӝrbḒnjV#'5Y9gOks4[x0J^&DځeySTOvXvՋZD`䎑sTE%mu1QۓBf5w6:aq+.ەId[7Tb6d2Q=ѲKzo7Apȍ˻CF~54IE+Ҿ}d3Nפ*N6iOviFP" D QJV|\pOýJ̏>!Ow PldxWK VGŠd~Z·6H&EJ3t \ŷ=+}$PMTչ2MxQu/26f`jֶhsL+kYz>:g$P69 7͑krq["#:nĠz3i\9``(' NsnlzL:!%:r\]"C:MBs'ڛwa=8Xi@\|LWsYMFn-T?<:lCrt2I8E7ܓ؃,Q\G)!:څΗKe~`&) ~%_zDJ?5jyʄ' bs!K!й4DO0}`/[ŕE/Xy={ʎ | TCP,O=^{ +.[) 4H[  )ט=ǀ5lRvrAzY:roaqoI@R ZOɕog 4(Wp48dU4 g)PPE!TwhĎ1 ض_|W()c"őx"D'r؜եyiًL Y5Y j7ieyyڛ2V1"ߐ>ဘR;ٞb B.qdu8w3{AԦaVC[ֳP0KxS{(V1Q1*BG󴝎6fϼ,ǥgRE ~i.Bdt~ׯA9WLcH/~+öK8c%g6`KbY" | /.E?dlnu-ܼ8K:ˆ2;Dt3-ܞg FuН}0J^χL|Nao =|MB&%Gɓ](A*DjjWTxi4;x+7>=1ņQ4H >d#=7?aSQ6V;}(s[P[f}7ϡSphvC[԰-$aXȼ^S/b~sVzYl+eYoB;1f/KMݪy3^~HEje%9OWħvtY*bhFڗ}ƫMeGE9e?\^٠f7UH PgN}"Rb-#qRBwV ӾѷxWY*s47CSs4\!> s¦JƺLT$,ƟI_} [dz=ۊ6>y^0q|VSE$Ĥ:Q"MLd,Xa!@y2?#d5P?{.ш|Vd/ V-8xN,RsGMԇE1>ۆ70KHYgD(mk ,e3ehB ]\rǮz|`2p.)}m.!N cָ K#ՒJX0?Kzjuvf>쉼'lޭVG6Á؛{W|yw3AvA6_6gpi)̏ςk@~}*@ΊDrj!&F s&Jٸ44pM$HGT H+kU9Y0C6*1bpdY+7+f- l$!ض@=c v gSHAbyܝV&NU{ ՔM \jv8Kr3iMDVTw;H y)E^W䉶JΦwO LxͣzN"h+PgɒG)㮮rp:Dι8WStjڻwHQ6=jc Wm9;0)lA]sugGH)hTN_Usas&"EYc] xͻC4.wd܅pTXZ*N|$ĺ 0%At]x}x.EoG?WugT9= y;;`(+gag1땚 |gZ FdG؛ãx]~GxW`( Twyݣߩ6x P$rnUv§~ΓMn1"ln Ȉ8pa9+JDNd̓rH0̅9hğKPԡz=C*T!֕Doڛv;:k!5[n W"DUFrev97s%YT37 ug\B[ؐM=$v)BE1p+7̔? ~h\Y"7H`'rP a$GW>@ R3{wT/暙);23Oo`)}*tdb)DW2YIxԹ$bKIʺ'CJYbCkGL\w^@xqT="';hϴ1mΎP/ n\x]N{\aQj*wҢ 7Iًxv;i3P)XͻE[ܧSٿڠ^o-Uk\軮PReY~K;̚޴[U&cm'SՠOڂSRM30+*N;Nv/| g /nC\?sDɧIIQE3]y|9s㳾✺@8n顆 +iuF>±D31%a e @A`_#W1vCZ鶢ώ6!V3WR~-Z7׆T3MT*]8* 7,,PVU8<Vq WT( ؠ7]8uh0S\zL|bH s̷-!@-qV+ PKk|_ w O_Ztk5*3"z෵ _%R3~ ])Ux +_3V]PT-aDb6$ZrS|p(Z)ͭF8a*5 tl)`f;9"xE, KmbQriD&^䗇rۮhqN1QsogJJQ#gr:A c. Q#ێNjJlcXc!$rC_$:Hp>JE D⨥pdJ|cmRNȮv,g s—QR1NŔ: M&41#M-IRgrL˴50( ^ ؋tbwi1MBXOTҝ 0=J}?[wb])ZXN{nT8g"m *-/gA~ $T!(y==qim# '(6FYs Do &5 xk 0os~,^q?|i^3ͽcRX!f١.G_D<[ܑkNa٢ɮ"Ȏ0GԋMB lRjcgaf Gۑ6"l\zW$pwFMcx́nٟ@-& ln0#җ_rj2[{W:W=ni9M.5mv8m$wIF5\]7q" Tλ7ݙB>1o-W}D٧P)0罱y~-طI;2a6FN! oO+ܕ ,1_ ⤀ !Sz+6Ѩݥ\]ESZ N1?ցOJnhͪa ŻL]4~HN#'qxRK8;+D ňdB^!iQ3R_|Ie}V.z!|Q'>EDsl"a=l*Br顽zDKrfg/hH(B'Ŕs ð'bpy]t)Ox+gGr]܉kum/9 Pd[hi6 Ѳ)%O ^CSQy7]g^lk TÔFNny г[QIhPqIku !b;,#wH8Bd|GIJ@x<`cz4>IZ\lmok;0 PP cH-o۪8Rd hZ(7QV,'OV!޻"xpAll-c@J>٧{V+gْBS` hʗ@Z_]53#]q=c.OR,h=? .\ݿ@HkS5Py_$K-/r?j ;LpR->1}fi׊kh] S: j&dS07m'%K1~+㐷AOOZVIԄ(\yl -Y$:GI+iˉ^!ުt+*%YT+*wQeL^8t^QݿPAm;q ?̭*͇I(|lb2=Wa8`Yb+g?\FY1/Pc! Il욓dC֟iG'EWc'BxHDUQs҂c]^lU˗ 9  7kmLe؁(˃(U^ Yy>Ma9Om3Q:a#MzIbq^k^$.^2 ?/Fp f#U),C1V %9YFj?S9_M!zǍcP\b[s*Ynڞ9b.Ll[?R:!qȊؘ]A0ѷKߛcɮc4?7|Z,jϜH}ɯ/@>+OAe: ?$^ȫ˫ U̔qABuߺ^PqpY[`[=l!p4 7d=Nݧ.,bA 셶L -(Q;.7 @(@wtC^, b!Ny.1K9 Ql '/qj"IW%{E/SODLYKֶZGK@v--ɺ0q 4¯:\.z\bP{K+k'P/jN!oآ:$Rs;MZ3p.] "e䭼3؋1͓;68w jza{T$f0m. |骚׺\*J؃#XF1dݟpFVx`fby2A2bF{CVU˂>9*HJJ*OvB: kqĖ{PkQu . h+fgq,5٪@Hu0۾0ٗ&ܧ3CN)Qej5A,~py7-姇. XPbgXFvwgØGv%}#RZ Ana_{ّĊ7=qCz˝,П7}D(U^@{ ePl^t39W58•:qC+Mj!imt2|eBUTLJJZYP4 Jgq8CEM73ו.1tZhj =~xn-ƒ!rg$@-.CIT q+'f3"ӈW#oQ4), λ\Vi~lHf=eAmcOIf^7bqs!їOű%4oSUK+3:sHY_'׷,D% wkC9ICP0`jK:ckI#L'j>'7~(nIny`H" Y~RYS[ۀǭ{&pGqm 1 9 FYJ߈\Rum[ՆB2CZ{E*Ss}N_Z<-ԅ|X7%[S<^ECܩmJ)8.XeAK5t&`fI}Ĭ!ϰ6OCJ`zty3v #jʆ=a W"($WGN\>X_yfSr ?FokS{*Q#Ј0pw0;Mnbt9n닗埓gS̸uc^hmgUK:%C#'=vcY:Dlͺڔ *?/^`4@D @sg>uV-_gيi9\,EaVā3=~Ѱ2x-e^>emc Q#/H0D߱'^o+ ΀NAcn-GKQHxGTE '6$p컘!96EPTh?1,7d7Ӿ7ptJ<;-kMf?IG&S|֋g>ɯ88^DpΤEFr/,@4pZYݹ[·K*`dC~S f vʧ-r{GYwKDk g#5?ŋ+ |ܸUh7h7N|YLJbc|kt y#v _$ܔUEP›T]>ԉ KFU`ИSMb{ )>;@{TiW!fg|VmM&&wTh6] )H gc6 nn86Oh;XrЊf2|bb!.3x&j&YSMTELc(ߍJ D9 M-WRr`_'WǒȄĔ;)3r{ QnyeeF4##ٵ @ijh"j !Ӈxpc WiPU3p#y>f6NQx`ݣHBy!g !so6V\[jGvnġ $c=@bT¦ytyE0,'D8pyhj/502[ƎLk.h]{oTr^vCO(_Rtu&Uo <ԵO6Ȕ1.[e H٬|Ii)fhSՋ֤4ypQʭ3{r^]Z9o,Ww 6<+@5'F"_JwO`5Mp خ( o[gq') y2gU5Y~(6+J[?&Mo /rx@1rVrdk\Ē7+A2/P@b;T{vPs%p3ФMlvANzbiM Ǯ%[!1璹FLeu\V^ކׯgMVz≬RݷX:HʌӖ/&w0, 6⭋CU*V HQ7aΡ=3 ¶(-78&C3Wdq34\'7Dg}Ɲ{ܰIp?AsTJSIqxG.*Fc}{=Q1^_\K=6P/xQ׆ =Aű*ڋ[ьd>l` F5f:Q w M{0In &]1vNY.rdq4zI'2fBŭ\R>Y2CV;PU[igwv>ڤSXOfwKNu>cގ{{fN7Prz~:ږT _ ,CIV#s4z3~Xze=_HnEf*YصEBAiZfoWsS QZ1Wm1ay{_#by? nSKX3Dk.>k^ 0Eq'娬9Dxrw2ݔ8qEAJ`kG@Q;7n A >ȄHHl 4 #F8_eYB m$pagl# P7YԧaN.B`ޛ##,)~@wu&%Q~L@N͡'o\؃=i>>~_:_qG1=v#iÑH1TEՑIC3Grp"nh҅EO54_M3I`g+v {bs$&]gbNET­1'zy+S=g8ݨ &uda7{sRsZwU&2Z:&Υd8VDNԦ1w/^R w w\L\ N`ܨjbL\4 Ԡ'h4щEl 9L6uB.0]O(ZNsLߓl').,;;z])m]-ᒉ# ) ZӃ)ȲpE!v rV/ ’P9:6E1,X?7j)HLglw Z£@Ιeqoc P\3kӪhuFݽJF{#)̓ShdlD2K^Ӡ:Ho׬PJV b% Nەos:Uǚf0C~-]k跊)AH3ZK笪# WbR1ݪ׬7˂utɔr g Lzfi\ n$qpefD' ^xg-}#-;CAŧjBg3ȑ^0#]ϛ`j,?>.L>Կ)t 2hD -$ӌPvvcNr~~Ǥ᭔#[Y2 ̤{|\=6m9eXRDlvE0S{t?Z_z%ND2G/Ӷ*/d|.Eɇ9QRԆuodaFԽګi-WIL@ZW2sQe_h&@4:š&fhC wwO7Pqmζ[PՏ,NP慵En ^s 5|K~o`2_R;,1Mxi9)qO߶nT6ek-^`MMi˒;h|NB{'ݺdI+O`Ypx_|2q^H/#C.1]UuGKT=:y[-o͌)ۥ[_MPY{tc=0G LyWNDZ \s| :!o5dL7Z Eo ~SwKy@(j9O!^v{>y'Ӵc>b3U ]5-^K iTFѐ׊Mr$*< p8\>-m>=ˊj%;&*Fs< LYQ}f('62.,Ò<s4~+-lCX\KqYG_Q,-ϖ` D{G-$^Ғgr#hoJ%W2F >N'*|XPs|~6N)Z:a]{,>Fv; ؉5`Φ]u:kwit'"ƇH%J鉿›h0Ⱦ9Ʒ{+8Ͻz1Iu='U-2t9UQrgv2t+B~{-EԂT6H DAd /{{'agI8Ec?M:(]scuk0.!1qhSj&(kB8D.Υo ?^9wO=Y2vJhX[Eˈ故ѯ}CNΑQC`BUHdCu5C\[2 Ȋ\!8Xv#aRCi NEf=\kzuf~7O7b.M"YavzppDD*ݚ";Q"E,!tMUL:*0a /&owє/ ?s r5=W06G9ig tX/RZ0KQN%_[.MKl#.[F߀pAw>XffPBVl2}3rB|B$J\X@-QW:[C;@?gƺUf_{ -XPٲi!ܴ'8ygPyvL炀y#Jst) SX8*FehCXQ[՞[S+Lh4h"6F}LSbf4rLc#Ozt/@?6Ona^Y&:+u ,(!\Xy*s>jf*^*k?OEP!E>7j֏ah#g@gO'F/m Wxeء[}8RI_ҿezIZhc'  &KȞ{ E-== F1 mw5(n ~Qn2Q"UH"RSYT"ȂtVc dlBI L;~-Lᦀ2j|.;3庑@'Bg򰹴&a38WUmA Juk lM &$q9L(H1,o_@1a~/EWKg{(V}7E* RX(8yc{}DiA VWثv%i:2=Ii~MfGqfc94\FUY1N+;ԙ0vc|vӽZTvP$#{k? NI| 43Yͮ\6켐dt0`?iɑs G`z~ylНxp^c"˵VQw9m#z՚Ζ6OQ5?bXq ]uVsڕ1]S^@Ұԏs3l\G Ye9gݷ_E'Cu9ͪFe\JV܎"rFCGns0 $=$ @U!Xٌm.!!uG{Q'7^uK;"(j&@\L7v/lup%|؉$,UsPO(PHX6ZKMeҗï0+^7&J=/t6QH9K,Jb9D%Nd ¨aϬ*A0RUFBeő5)x. 5р wé9MWqRM #,5}\I rk]W`! On8xӠf ---\Dsw_UZL\ 8aKM ߕfk/Fa*U+ltvHNμI~kEGt?y&s{e2AUܙ>V9'TF-f(sn`q|̋ߖv H  ʍw=/W#Jrҏ-jx>M &`KXĬqӼ0\zmpA{,lŅ"A>^ir$0L=_ = ;J@=9?3<[Nyi:$av q-CwmXN}7X'r%[ (!^bB@C}yv3}k@F&P2\̬e'Hԕ9Yui̢>VpFh{@ٕGJ`:s˥ς3R~'m?d;U+HTy(TOJ0\B;ebreVFXQ>ՊuQ`ls"mW)}SDid:<4r]~2bl>$a)R:{?: Zg6OцRe`<;C w$89źk0CU [cQOlѺf6u +SQ\N~NjB#1b)ixИ7C[7-bVt=t8ԡM(ة1#8qdH~:|b|",5KYH%k:!m1/YW  g䐏/wGOrk_xD1(P@ IaDΠKkPI}&!{ ezq|b>GBgp +JI`idJZM# O 6Ȉ9XEOcU{ R~S+5#f^[q%\Mj]u$r[nUVsѰYܚglʟ${ Ϩc.O.o%QhWj\'ZΚm[&B7M_͟!|Ĝbr#Fo"3LЀ\P{x<"Ejf-lqZ7'-uj W@œ!ySXUۆ P>\r7i+7-2aB9 hv<_͞a_MҪm>IyLg?/mʌW^ i-V} 5 33)ݼ 2^ގK\md*> efzٮ3mǰ݇JP ԗ7tqSzq_PXhO- T*ցj㌇/Fq)Bqζu~ޘ3R[||`#hk.82Ku]H r.Ql>| p.Yv)u^zk->&PȈ DKF7,B~LGfQҜ‡G 4f|m[G@T/G vBG-~e+R`)}A2Z驐oUd?9s Έ6#Oe/ -}{5F^ z(ajiz`Y[}qbRıcϑ1]  Ƃx6?I=IK]&ۇ<]VfޞA؄#f`m*zl/Pp@U2嵊5+c\΋2 )Rwj%sw%$Ofǧ 4>[߸R!.'oWO23ukԙrWvnR(No.3fŬm*V+(1OA1"9DlC EFl*$˔3At ;&IHw?]HUnD E3hE4ֵS]QL^IsF3| {C?4dM`sXFjf׆rٚ?N=w䮕r]\Y~6@Rr_dHxll;S8b\N:9\\ O,|mp̷!JGϼ~nPTbu1s glaƲ<vP[?8,$@HnY䗸4%ZI̱]W2דzFZ~=7~\R+#dQYܸ\7^Rb!M"V讪[#RwI HpT;`xSݖ̅rUdx(רM&IDۿHp'לk>0yyI;rxOҐvB\`KTM.F=YJXI}":^w$vE:zbOL }8ˌ/_Φ v&흵 (ڨKgJN^) ˭FeD.I&Q{U'[ſT P$ MFx&)_&viz\ufiDVS}~{ 'u+e ]  6t|#dϝ ߣ[˴ dnkꯛ0.Ejۤ)i͸Kē>FZZb_2nV/iyasd]2w~{jyJ&lWːp}{?Ad&ۇoL>H`jz;x9#Q`RPvo[^W6\5,kzS|*z4)/OInQcto)k(4"af\{%F_ż 62,F>t_ɹ)j"xo#MKB#4Țjџic,\/>ن<(R wx6u#ʉ=ijk ˑDʣ^ڈvF>h$S"rLyeQ'Z'r2$;fM1:tQep^a]wXeWV?wp-ʭV 2T‹hݿC^pQ,+dp-e/v tzVşmfGa] g/&&q YՊI{҄fٶpMј KB} 1E/8E[qf Ic/d/aGK9Fioy< ໛ `Cz@,u'| hIoo?\?`Mm~'?uI' 0a\2MO:9*d,? a;o0;lJgiVG;U°(QbxGŎUx? GJc\?XYvnuOpQdZ e uGqx=fovc? ɭh+Znvk{LiCMGYb}H!gm!=\83bG5yҊZng}Kv L2hmG0`4+o}kk5bs̓*/P!K1ˆ;j?(J"Xo򞴞άHtw,Ϧ-#`45fKe[O>q%,q+ 'ά=L~4 nMcX>+u]ymN€Xpy`kjS]+o@2GU䙛'{2A35.UKG9)s(.4( < ,)wcpW4F }Wm~/F/bM&ɧݪ2^4zB;A@iέ t`}ÒKa0:.DN>[Ƚy`Dt6|Ӳuϛ&lpetʇ>rhV+ SR22}QtXXX;R䆏^Us+fUs{}ac"0v \ﶿGyѫT_#|\pf(Q ;?bh#-Բ5DI'A>@ QUIR1-A~9 ո\òrԭabZ쳫ٔRp2e* MmS]i;c;@2:;os1̶'{箖 LJRZHϝj}lG4̒,ꬸP8a5;ug&+?eElf:j*>@* {3K-0Ys!x\>+IY@nCn1Քwop%3,ۃǝx!?c0G]?=(M *2pO:"GSbݰݒA-rw Vg{!u90T{)ئGdjJb2vcY9xNW("ml\:c7\_s4ymuC-8>5<9%1ň;KQ-8$>$שDx?'t]dMg[<\S]hm =7N֯g.s0AOP4ROp!% F_@3u/87?y:{BD&{mzXO.~ Q&}|?%sl\mcɚآaGŠg$-2 yYI-Ƣ kQ8}:&Euߴ Y 9\u/p黶|ۆ@!q%L!|~5Y9m1b*hDR7<2 Ee2wTvQAYHy\ڞ)6gO VJDEtx$}8pB#H@>J5^ͲX*F[Urhmm1 𒸏PuD(" n,źUd0"qB8k>#l!:_qPwZP!dM0{e?Tw>Mg'ꕝV?~R(B:ed>궕= +o< Q7ݼ9Jw9(p Ezzrpzel%!N #f(1^8=ܯDbj ()8=6 3jKO=1Q)2V-뗾ErDi *Wʾ X^d1@)rs]VcvUM4Pn'?ǧ6%'x+D*pF7nvW0ҙj` =ܟdf 4S>Nx!UuP/)3{U8=_IVW{!?Aʰ5T`<6AƎ;NiEpB7p)[˗䩞# R zۛﴍ 3(cOU%W~sw&BN 'A)"*O|OqQSpKێk&s##9AZðdyÒ<0\i'H16ÆaL(u!})YgdCZQ%Wpe!}̢kt^ul 2.-'Y`vMeb7fY|iUqH~17U-p0?zǬ=Zk&!FG@DpElL{Tm΁ p@Q M"IJĄ+v7kq^'!_% @M&Y:~e!pG$;GE\je8&\^9V xehUkQꞍt's!Z./8MF;0_v͓N^ uuR-tasSZm 3YW -oѱ+R(N e& Y']@vJDB5M|:lLJBTwdJx8A/QDKt39 G=^syg!R/:()6[i'Bv{aވ5QXlTXK=]9[h{]О3 rψB%|p2q@Xv%‹T3ƪ-o匲bIS^{[r6-HkNZX">?!햳y < yǩ ltȁ {Wa~⅒I{(ّ7,)uƎFjvRɀre V8K'$d|;b~3-??Mzҳ3$wm1^HKMD:٦ny-]^L .W N?>G%.bqP8a`~Ne>B[B%m1V\1.], @P7bDeSv؆+iĩ Q}?\?3x.4h-s?PŮMKSzb}O3B|!4\Ȁ[B~ qF|o]! ja]:H$#ř_ "%p9H HZ?ȸt]Sm(Wҏ8.t1A2)iPf#r Tn8exr"h(/_@ӌIor wRZk8uU8TZfrYQGauHZ<$hm[!T%[LLh =X1ٽg0orw7`@š4*OjG͍0qwm@@}7+*0a`}J憞fq S,w&MԥH F7-ػ|֛neі]; >?=1t^)MG^YUevٔ7O_cܡG%Q;4{ F8E>ߝҡ4Zµ`G3I@@@4ra檌X#_RlzDydfj ŠBo"Y6X.IYZo nc]?D6 u:-IC,N_DAwUfw?,'ӛ;;GaJu}x5fh) CtTh@0*PI]6Cw=v34ȥ޺N^p;(#}:oĢ~^ugBz1ʰh^5V"LB^9B"M c=nŰ/V󙣅n[G_z!i +ڛ6ݘ'Ez2h5 .ZG`ݠA؉]T۲71~|P%٦Grx3n1CU)mխ;u_(m鸔;mPuwvѽݡ/Tzex4 '3>Bg~Y}lb/d5t|@:0}BXyԈ<} rҩ9csmT=GC(fȜf+]R{KG&(8q|uP*vKFYPtr F83au`p'".asn.$h n>U1 "GwP& ,TM_jCn=-8W`phN*Y?.Sf1;a gk4]߆%ܔ`_wXy䪓׬.BE~yKͻVTpWZ6wPs̀)u;)H!@<7+]HXq䣭 oR*-ءP$+Py1|+1fkњ\Y0c"0:Xf?g8kBW*Vj3[C-q>{Az.V]sGҚr2Fn29Nuulf55?]kl 쫒m?d(p&p>P`›W~numЩo5~0_/RHJ^N BpKX9~߂ oa4UlM CdB)oDP̀oQHDž͠o(kx̥@}Ho:&ܺ^|Z(krK 2WY)qf-X=gc(d6I b' !M l'\k"c'}l މ+Rqo:-&X2Ύ| #B} +y§L<зQQO; Lvs>1d.GӮ뿙Ȗ?R^zy[]0+`-{e;.x- buFo)~QB @4FǛ^=q>(ٝFJ6%[wP"K#xeAN~"SMZЪƣ.,Je^D*|BW[q4R Y3Ot9hQAHwd?iI D YP(oWmui+SVε9~}%CgQ}#~xd=b`烕i #M0!i$hNcˮ s7:@BW H5Tܗ\2yIk_+pwT}C十9hj4a#vIOn{ Zi= /}Ґo6==Z(N ^~`#V#+nZN~Ud°KPk;}t8᤻?cEnÌ:)L(X c`Zjtb{P lw~b\`_R |J5܃a\#J!Bqk)64E&+VuRjvp:X**X7/}S,CF6Fqߌ_=7k> Wa7F]>mO{!Jy};33*S_V&FZEx2<^*DgPZ`HjλJDAڒH|[LMw?G8ʗsc$,v 0vڲ$Z4&=2Z !]09g@)2/l9KΪbŚ/"BGi,i }R SAm7h.Tɷ{-]~@:_,Txr6t"er<)ﶒP*ub uIQ[U:< obD7:ݳ_,#\f5bIHK0c̑0TƯ22 JS}9Ě%;6 U;55^ ~8cGh@oĄ$"ܫH]\+韔>rXgVQ8Q-4Iᛋdq:R! cnrV)WEIj-@]_[K#r.*m͉}$3>C@-K&oϏƯ[Z5P[1hh&R̸ aHAiL]W'Fm΂ٵ"9#2[cRͦAɹ+e"ʩsIM]5G6c\SnaW?N3Ð4-UXN?TUѽwipeϧmlaj$dL<>Iar[m`o|G1ter kF#7x(U1P<Dml&Hve7c4XXEh}`GXw q'PqYX_ʺκwbMio~lȾppd. kHXY4ib$2 ] zIFKwy/H͝ld׆Y`yQkam:rO擪D 8lJcKiCf5HU`h sd-a_|,[D] At(P\.{zX ЭÙfR g"b`[,6%# StVU&ӰP\ixmeZz OKplpmsk,nk_!ZQFv5Ž|C-tQz$QH-տdz҇'x\T "E6۱]_㼴=X$Y K[6_G4+meOa~."1|(AA^TA]+=fOSIkw:\0 OJO%euM @B'FTzib(ٝb(/qgl~vuBH{*[i!J ˧b1mLS&ǝ>H_`+q_~\ߚ).[Clٱ #j0Jnefl[>?7xgHWUœJ"uSX7e/m/D񬼀QCƞdB0Y$Yx(RP܊Q$Dl/i3-r|4FYUNs$=aXB=>AпR 3'WZ{fAUN <_H2A7? gz*яɽi+P&r[>LWk@W-9-=}p>?ivJz;A +E7Fy.Gϵ{j]őL?(]c`(I*q%L#ߍ4-K3/Q[* MIB4-mi+湍WQ_Βuj}HY+eKx淬OdMvmIf>,v;O0_g%9d_guJ)f$3hpm% .&!'%NR@Ltci/,=2<Jlk4s)*ISi$"=62Hp.M<xI7bE`!6@c|]j{/[(˾*TP08yR]#׮ @y/J΃M L6P4L:6IsMc'\8WYQ54[ԒJҬJ\i{c<|ɒMQ? /z_8&^yL86NZ5EX>Ucva!Wд ra?e8%B64xbU\u?Mk8݌ә`r3I e“2nu67n.  ^)Є )E )^}+쑇v'!?d2y[!&Z׋wܞL:6R zbc9gE \%4 =Drr@4ip jmdxJ{ j~p>Fb%'a@{wArZAнl".(1kMgJǽ N vO3BXU`ASK^2Mfiר;z &1t8BWX`hkDg2D>'N:rr >66H;cs&_/w<*).taMsz_jFa2\[:ڐG]ez^jR2" {Qz,I=aV k#Iۀ?EϐWVV_\#1Z,P6F")ro8%W*38g@#lb6̗+#Q /?=̾:'|VZђ]9M9w0+5등v3^)L#r.V~N`lY<'_YqvHѼY} MId>*2GeYЛs\R+/!&yApBYO&ZPXAn;?yjԳhP'uԞ*D%86v$O֌1 wzm6a:ۨ9e_=դ:Kul)сBntH=(-B/9x#)ÿķCҴ,亅C>d}pam 2M6&vדo;0r~#%F4&wBw(+P%,1)U ̈]^zInZj3a̝`%L6 OdӨPH7tv)IkE0MH+T70M][G '#mmJ-mv4@3祌h^ܧWAAzR8N{2@)>hf'vޟ;}}%Biwx tW<^TBھvWrݏ|^n 9]>;:-1m;Rq)/O88f >c/&B/ a"YWLJ,5PZ_~+j7 բ2&H4)J;yS֑;5ZN)#t5_֐= 4v(̠@+ P[ńv Is࠿ȠX;o{5ҏR (<!N|Mc~@\IIaB?T +aTpc/ amWkT_$$š΢ ^kK-smtl:h9NLFj!'4 m!o.n< ^"}rrը}tl5u9/I[YH\,|κ8r]qf"@$Za5$U8q(m=neߑUJYYX wC1wœpLݒtB G+Хfn|lDYzhlY9Ӱ Uw/ -W([ i8~ZYI!Ǽ p_sCauͤt*,^OpNUI߱JIL,'VoPkR?2BTx;e:$gS~?(XH uY 2! ] /dKlSÇcNJuvM1Zqn=GٲE4O)v5cL!]r#KS)ōƗ@fdI )" 6D1R%T؅ZHpqYrZ1xJUU0Yt7u+pgzi|ϋP x=w-v'ې?>Dȁ6x+DG'zT\`h4ksѫ*N?b+_6%PUH vh$dpKe֭p4)S"'^W-t1-h+n1ۈ\UQʦjyL2>\%dx&`=͒DkwWs`X/;R6Cjٳ^"{#i>rZ#LjԱ/QIi ګyKfۏjSY*1_Wk+~>.5fecW!gjzv8?$QLRE#SJ21]>=/1BȉPRMiw3<[HVRpȖ0M:1BBuB * 8g1Ӵ )C>}Ľ╪뺲Sp*d+)*Ait~}GjkuA}&&-tM@fwĘ[1ux2]:jV[v\b)} Fڶe4BÔb;Pʟ(X2-kOpݐŸՑ^hQmAAR!s0]x]0%Jq-ӽ!c|G!UM9N!6 =c*gr@s܊WƊ7_S>U;a4^`SEjYhHDe&yšq)_d)"D-.#t7zMo# Wާx&g"}M|f!3@2k * .dkD04EkJru;VL,S'1 Fn4,:ہGۄ/Z&W0h ikU9|PѣJcɪݒM sQn3ߔӮֶ$ѐ`ҡJPfX:qp\ F!ӞN:8FՀό9݌3=413ʗRzGQ`h>7ckAx]cX%ŮHaPz>d ˥MKnŴdD#zrF1*yNM 9m|Q,c##K`rz@uSizg!O4"%oF@5Xm)on>O+?r8 }gR3?W5U&){μ*x֒=Kn]gWm~ @Y56+alPkT4cºz6-ÔqNO1!:y=> g۶3R7sy^[Hjc#z >%R˯ RfռBv଴k78q(aZFe^ٝ`Gsb鰖/]- 2S:z]B-^֙ zU  0vl_\R7ߣM N-KL!boea`*/"@#z8ߧ;WI?4 y? w(ͬ.UD'xjT=9p('z$vbKg >!+v p~>{ &ux)Sjv'š5OQID }"`s #)ehCФPppLo- pmh`ҡê^1=޸Y5-}Uq-`y[e4#Z~U"͜W6 ;9ecH|ޛ15[Rt<528#P$jY@9qUHiE¥w` Q {|-|7ö4!WW_<52"ܜ,x򡫎W/SI!|`kى= q8Ŭ ؉/t*7̂ PH{1nt({F"[1@?D qw5KR?qywJy^_ٮgilАxJV;z\|x?FptҐĆ%*:SESXHvʓ-ϕvoGL(Zꡜ;kʃY ?:OPFI> $so{N[i" 8.!㧳x|K0ƔaWƇ{tZqjM>!9=^qI|7`[Px}&}s(iwlO;B᫸HR%I4T%HF><` %; Rl(sM0NTL>j%3Th/_\uhpcC'MVbPPEIi) $0E^<-Σ)^aޭ^h !Ac q@լb{c9i!ÇS#U}U]H %F.VrhILx-NCpg$456z8`p֬H$,$ώIA|9[/ige%s)uxqkMg5 ʥ>~Br}<}f"Gdkd[ g, ( KrGORY3{]QP[ZǑռhB LDW @fVċ4}4qdȚUEP~Sԇ+TۃcO 1U>P*5E~b]N wP6@]K؆֌L`ĀeNmUH`w`Wîɵ}ڍ BoB<vi[uj! )]ٝhJy[4o"ʏ #=lXwf϶n1OC\%hQ9k2 +^Q[@{S-58\AVNZ:KIVwwg[sW̵m4eY:_7-,`pH]P܂d_Xu귩!t+xת窓wI Byr75n: FN_Cծo<@auow /=Q}8n0)869vk)ALu0!xZ,c䓕06]oAS{k]r*o*lzj)Ci8bgdIAo{q#~_C ZwDd] 3KQЕF?<8'ڎi5|ɔ+1v;.d)ha@׺zD)x/'17?=WbÝ>::٨P@hIYDIK,EvM1;8DEӣ>ץ?ZYf F _+aKB8,H&Wg%D0;Nһy; d*ʭ}5J8el?c* j$+o$N>HYh}Jj_4V>yk$JÅ,_,e"jX?кKW͐s'*pBV3|qp~?䊬9Dts_͑ZWY~Nm2'] dH|]}SJKךlD3ȪM? D% UX'h>vǏ6Em0Gf{F`Aoi:V^"dNߕpڳ{KBafxyPKD;kO4_7}OWj;/prź6$t 2`џG+\:č?Ǎ}⊑9<.Ǝs@5~.*?$?h3X0Sk o{|kNoyNd?S=]ƼǿIYL {bn*`p΂13˲-RbV&>/ ^iob2gDnj=@#AW2L]\$@ }Wg|?\ B x~d#s(eaˊ(ݾܲտ[ T|AwuQ~x1У;>,XݵU>C|3^j H  N'ݠc9B! ?YT1xyA2m廔#/Cd%1E/O6OD# iDy,a͵(!5>Ju&UoV!AdC9_+d)ע@}aF)n#S"*=1SqtyĿ=?ہ]naZK98Wm }yIјYf$}DpQׂ;ks,LC9I gb3cPv3{!>w]qA}pFFSx"_F"*ުR Y;JHS_K84)ƆTst(MLJ2>~#ƎL>wpu6(d9k8y?DǗ*pmokuB9]F6ꉗd_X9j(W%w7G?"?}$A] vB61\@E늖:GGv+Ǜ-T'NV1sI_b|i%./l8ޤ(UĴ8НeU3>?lbK5|}?GrE{Vx;dvhR=_ muW״}h{=NX؂-<:dQn )5&_9sQ=hlQ["=5U4A"]g;jaIϏe<U aiC0i',wP~wW$HwavCH/!)jM;o/nG ^5 ~*^({=%8oTyS0wYv|33vJ㓹^T%94 2 hRf`к,[tʱ\o|qj`by~O4߾GlC;YSՔAlx=2%J3rLǞQ,4AWxqx_tEX9*]x7a;cZvPWOV|痄H܉ Ѡ* 48z m }`3qs%U@Kg. *BZcB :4&/- 8~2c$P`8g.|?qw/@(s:^2;Ȍc؋Ao6TDŽ}C&p1yX,C ٶOV<9_u Ew1ɰ"WƕcL+Wm5R_Q:sA* XvM V Phin PO# ,ᜰ. <5|o5L3֣ۨ|WzZ׽. @ё9ރkUAM4lJãotPTdZ o>tv';R_>aO`gn3" JǮq`87yK":b6ד%#7kqڗd|ɝ֥`y*6HskcY\xy~~C٥L7BG-HmW >'f35pvч[>یJMX6E/`Јj~6b5ZdI[C}6q6>j)a~/h̿s-5mSKzlᇬ UN$N<k*Gnp{m߁tt8ǻZ#sESPf=HiNUYcg74}|?s0=H=n .FfF9.}h5P(W-S9Qum&TpbaplJ؏:;ElI, *`.B_xIoӏ,@Nੳ$pK%BI9<TTfRpA`rA`Kߠ)q”k H9ǡ.B-;oLVP!0JoT|A,lЭ$>jGC-1h>$OE,CD4!]!XJiAJt&NBH'^+Y\~Iȯk[m/K]a!gLfm6m% K w%8jv(7SωދAZL]RRWPe]~YY]ڡaW%@pTܺʱe-j/Py%yD$$=E_/f6.[UV]Ssۅ&<^iwu+f2G hD; 6^5%{7A:ZpFDrxv)4,DVDr= Zttt"[4+3.'A.m!Px/CkmO9+c^{֞;A$Нy>Vbik ;HqZ"- &GegC/8QQ^YM&I@*PyT >[O2O.Lh+I(+AG,(uF~G\C!@mF~K!3M`Zx)::%Z 3g:'!Zv>g|BGb-1SF`C"*/br)yqǵƖx)(3_\z|=U'RlB_";mh]S7Ǎv(߻EQ&-H'<(*>_0|qթL*O:c^pEs>ْ#^V3h^*YyJՄ}Y] e&^*ntiK}s mcqDGbгoe!=GF$ ˺[S%Ǐ;{>}G'ه|a6eMud&Gж4^͚}{^X2ޓb՞(u5Q9F՟^8Gv^- Y?c>myq}#\Wn 9tnj4O-^(AI)Tu>-w*ԁc7qQ ]$V֛|Ba,t )W\ⓣT>O"F]:)V=/ ( z 'ŧL+ ) YgH3pmfv;(g ?@rmXݕo&4YL? Yu\Bh>TFy^-'iYPSb]vn6raͰ>c$x.IW;V #S755[ͫ*h3z%QH޶߰ʱ}邇y:g<87^4ʧ5ߜبٽROr X*|ggUp1FXu#8B%DL@P뚅z8::"5X=QIUTGEza쪅-t!y!@c3ihr$+X/(C '(a9{u$ OOٍMhsQGWpBT/໮iʐ \%7!%"yFiGOÙ2J[lY$k `ԍ}9MtAcBut*h '=(W6#~S2f|X;6<")GR+%*9;2M=7y*W1ER;%[ս*hg`X(>e*%:C]z:g?7ቩ@A uēvf[bH#ybNϚP=1/b#Và8@9tVyxbTVϊECR @qؼ;1& +PD?<;vN*"+n r+i=_]9(&5?Exǫ a(7*E3Ap~%'~,,ò2\€ T)ȁJjw5gXE]fJWx"6p*`Q<MB^Vf)vcON8QSH9 Q *7H;v T}:i3Рq@MJ7 vt3&p[!atp)lZvcr"o[IanwGᐍ H;l1)"C(vp?m$>Xɒ#ݪll(f4!d5ɥRWjq@u ind\Q3H?!lB^BZԮ_QTE zm J Hak}`pY#VqprbaO\PuxG{*ulgkWϸ9&[Ե,yZq& D?YbHl<4G[ZRBK"ڈ_߃)D!J$DH`ھ+&^'r&/ 7D ()@vc5̱!7q?iw0X8CJhoiwdR&=+ @̧ AA̲7kL-zs%{ruc+6{+7A4P戴 U1 z-kn]:9tL.j:oEcSi!7%IO 4jwj <\p 0yܹ i:tk>`a_bies5i$,g (sPa侽x:`M1 1c$RL_Oa W56xڂ`M%`V)]Ze< ӚNAhj~H*IR:TEvI1" @$PDȖWC$d5^ 򌚍D_h)E äB}mKk#No_2gKb^gp>c%s6?@J%S} )F+9,BUX4gb,qVo[ͣ`[@Q 뤀 &zOGbCb\?;o|S\KKGQtJX`R-q )ÿAI%.ѺT},A6)Y1<X P<}Ḇ܇_&169ԸRinWj˄CG}t20䯙]~OU6uS8Z:kܱԱgh񆛰:+T0=Xɮ9‹`a@+&xى+tU˨QoA̓@)[}_hqd$); d m1~B4\‰HiY-}u=]%#߄'ȆT6A9ZlɛAS83{UCV;DdGmt2J*ߨZDViTP6X|]B轜?Bc|} ;H_*/uӁ>«BÛR-r ^ȓGv"!'lRhzfs4eL:95q)8gT"Elzg->[ǀةf`= !.<Ʌ,i 5\tW/N XSNE{+Y9VPD#t D١(1( "K)0O=+Lm ~!Hå]l7/{̍h{V/)1jJ* =oi 02V¨Yy)y4h'CʅčO0#ɑ+R@ryIdAKTF*0薑֏Eo ?K[7h|pO!xHi/iNzIlNlCfwӹ]hڶ{Tz Eqe~t;+j)eЦW?ŇiA Re.Ε5𘡧&-adQu{+v=t̺t9<&=ެ}YpQGc72I{*z;Y#s&Md!s9>$?s*jW;J0k(KM_@y,(\iYO]]^rQ)%"ȫ6K"vqEDw-;,\;0OmS~WE:c]fPxZM /D[a[QD>A yEmTx HvM8Eً}/92?^"R+lR~.]h ă>1("7-Xy),ob 6vGݿ4oi%D(=-\3h0vn2˂ im 憑ttzxGA#"/Zukw7)S Ҁ4oD!A7>f 5swґ5H,Rhy^ N'ʨ".*WMMQ+΢"x"b0:]DqR?ubD<{>։}%x6(8,mf΂ y9¦A}*P/v7W' 7 Nd"e6nCHj\ &L,i G$2y 8

    G"J䅵2`lv_MX.>Ea /.aJZ *pݞXx4Y e(t<-]p)0Fh<3\0[oܠkDkUȝJy0lK5vE6GU\_16o p?a^lwwڎ^tNYET#jy4@_|b%wQN k 2ՙ&1.McS{TDWagTw&`q uzL ͐ۇzj-DvUuQxҁJ8 GiEZa_q"k*1'qfA;s%O a5, )nwD =% nNmՠل>#KJV551g?sc-fD^hmȜ<͝tlB|W|TuK|A(BU1\Vc Z刽mg`g{)[]2`2p4lkKQc"喔^䧉)*;P>|y۷cߌk#R' aۥ;V|d]9wAU Ԏ&g *^56#)z~|;,|ڪ O]dp-=LUW.tQ.R14ӰeUbȇ:5tEǴƔʁV'НyU9 )J}\\S;u]v 3qn%&}odKz76~ffڴp_?.CVde0L2sQ|`eE, ˬ#wDfc%rctX<ΐD%vnūNը:bT4r퍧t{9|}D"HkY7mTD7GShK} |oD$B,&D]hhZʍ&Q:  Ftai{͛jGetNVEb,(@ tQ, ŝZg,5v wzetW\UlkDi$dBP6eQ7D*0;2ʸ9b!Co}B"No)˅P r׌mSfp7_C<~ >qfۻ'dQґ-:-JQ;GX{svST]e\Vsch̭eLj{d}0[YtUKhΨ37 jT -z6T΃U?ZQ+ĄR-0 aq[E'hy<V<&g4ݪ碃ߺK=IHuGfhhC$\I7.IסAdQ1lS<(@38 b[4F _#_c?i/>ax}J㪈T;>>- Z일1\A[V#rIi*1PVůVN&i!nَoɦhFus,u, *`9) fރ/T;}g__)P7+,p&Z;.cC:"꛳a3{8TFg4]ozNb';o6Ib߃'5XWO%RШ8B`qefNZ決Ғ<+B9fE'0ɻ/JDNB w|OeHq4-IsKm~-$e˝ STUTGYٞý`s!jMkbx(ebK1j]a/ I&ƌlq]e>U5!@F3Pq8iu)숇a':t?ڋ~jTiFWۣ!cP' 9Q"H%^I3tL3UrlT ]m!,NJzF!(@gS2Ez۷sr z^VKyZ2qboZ;37BFu U0b%OKlf}1ˋþ p t8B<ۑ)E5%]>\I-Lb4Ay0c!ϛ`2X1!dh3QCNO6 U/~z_ 6R\ٜ;rl?$?iQi.+3Ɂ CwD)QZ%w&YbJ@jab% V[MD,:PvT`*+5#.@h M*A YDas 7vW2~מkDDX ݩ6p^" qƛAp10a0b*eZHיy[ǡ^($3Fi:?'w\jTOM\ Q9"ZGyEr˜R! FVnE;qdώ ~CA9X7l Xģ}2N)o" _LgDv}r9+Gsѣ9SR:) 7< )? ϱq,jP j[TKTxSj) %sU|7<|>nxjc5@B 58i"T0O fnEpQ@@ZXo t{(%. {m@v`it'|HɽH:|H#*'0YFntb՘bC ݞKi2BR&{)zlCqBm^D.TF+=ׄF-+ޡjN@+qp VQb8ؙQhɉXq&veh/IV!|{,[[ cb rŚ3iZ$xdtbp<O3/Fޓ1V[յ-~ dS%v㓛Z)C>aH^ǤY=n84H$۽I tMJvMnlL7/1Q֍NSb?"9b'ʌewwG{mؽdFK[/AmNG4S sxg ڣW/CuZ]Iy' eievXȊ=K)+jHc4n 1dCG&N\e+YeT8n!Hu@äPǍ;3xt\+%P.8 qWrA1fZCF䬹OЊ,DHGC>Xv ]T1> 67-.qНYU$m(T;!b&->P+=1 o\ *̹ ̛%OSp:T6b)1qu?= 75#}(A+[[1T+XucP.G ͑B>Eô Y1vƛ:jT٤ݴ=_w`}pZ~(VḵvrRrU 2JξM8W' =$[aZF}3/9a۞?[`a'ύGF7%#uZ&T56+o=ոst}7 $#*b~sqséʭ4 vƏ#KJ{Nvam_Mh'x 9-o8-!ȖXeB.u.r]KYE# &bYs@HT"׈(%S~C|R.?{~/xHKw1+T}WU531HVi`Ǣħa}@s I1)ء Wr1[= ܈`:k|nKKF-I̅d7o% ZLp qf) P R!R~]F?l2ݹї\.W \JWkM58`"s e&l=gk%8j}pg5M|x߅N %FbIϬb#*7I+#O4R*RgEs2]6R7tτr(Wη ^aj υ#0NX$5řZiayxy1WihnM.`[M#fVZ7q"q|V0y|c"$>yGZy*9zO0dܵ t=Nbt>EcΒѣxn G|ڽf؊ܙOI/ jKb4& WC;wKN6+HaT:3D*M v<{4pQ'W`k#wx9npoDT]OWi;'ap;[@A ҟ9iOz n=ZU=YzD-G|* >@ G6cg7T eJ)|8zvdf8MBM00M#*kϯ$:p;$;Uc3aN#@>h/ԘLJ&Ό<>^l ^QVW=::E/>\^ 5־nmTܝb&`1ͯ7Y6ae_ZUǎS8#\m"UdՔsx?2ݡ tm:dqe '}m ^ 3-|n~^z;2GvWt!a{= .aSQt jQk$8.>TԸyRs/tr0m`@;HJI^^9WVn.  P4E|74e_MLTs8r7ZstcYZ %g®D,IM2 w"L"#B:0Vx|%u”almQw[ [ CMٽzd3Q]gVt$(I HpWbGFY+U%Iν*BzINB|g^2{ Ľct*ӕ!՞&I8nk@" Jv&D$~2 g/c8D)ΰv5bqrQTr"+>:gsm[;Yۚ7TVϱKۊ 'Ö~)2ctkL] }A$a#΃Ku)S)?׷w|MEl?RC{?nT-BL,6x#ֈxq^B?|}[stdC":iB2l<-@.{1*61\8Aa_E1h &iKqpķL"Mە![Q`>:gzhvOlqlO]'5 F>AŀQe΃-m(s2Uļ$b_$#&[hɄ^q`2n[01=5UCK&IeCYK?>{}'TmlAZ"9 dNܚ>.M@v7qJp8&@ 0 ڄ4iD`WbD7uD A@[EY lVx%Zӥ&!J/^N=S2lIћeZjDh=CS 'тC?H2#v-ȫ`rpUwD T^|`8TjG|w@nB#7W}O)iFr7# [f 3 $bRuH ı 0<x_yn$W!'A}R7gEZI0쵰,ul %2}Q:|1S.BtыrI)t/ O_ĿdIۿ .pN^ɪG z88NkJn!\Ot~,1_Me>IQu =wF'=cZNK,G@qE-;!$# NŽE@ M0ՒcVjDŽUSdV4uET[~x1˛dX|FwT,Mbhxyg0yK״9LlfiW5aG-B$RU-gs 3 Þ]CHqu7;Z5aiTͩ}jʃOMQxbE*&a6<.٦J>]=ӥK-@-y +\L?A,~aC֩hTѯAiHmS'QF`.q|. t׵ru2qd¯-:`{kqw,mkS |8<{Vp #ӦWKj*p] 18CDaG\:2\f\uv/oQz%ځ0ӶYqO݂, gWI R] i5YA>X u6R;V }HKH7lEC'|dXRB-y ] ǰҌ$&Q0);Y>DHp!4M&UD `4=msG%CyxΏ%x1Iʌ|UaC gNJUN1{W|43ʲJ<$\l]O( ʅ !rB;ՖIC=KJ}M!bᄳtweY'.i' +^"^IAfp +GًeYsfDb:uoFDc {T铹GwիxڇS|,2?p]s&%|Lq0p∶.ܨ519AsVH2 Q&~oTE.(#>uhDj#ALHmRpFmBYE@]1}cۚv<~TU`W!~lMD?GMwiU,`ʖ:bua9xcQ.H "+|h-pEJvܩ<( nJgh7=,2U,LφCUԌw(J.Yb/sߠ1:B > QS1^=Ýi||eA{&Dǔ,'Ճl!d[Eq4̟dh!r͓f-ԹTٳ /rtb!^$2Mܞ}vEv#-lwOju˛vs"ي(YMb '}/;~tO6$22{Q2`CƦs4H =Pb k;k|q:Fmi]'gKؒE$D- !0+v\TVضVٙSYkւyRF-}hV ?o,RU_W%p]QԿYwGro(uy =YwNtd ;F}6ȫ?h;Z.<5XeWdiGPC,H-.7\gS{ECy@*ݱ:;jw;%FR*$a#/zSQ%/][^ Cҷ 6 DB̪%{ NvC`L,sS}bNa}bןDPtޙi t6pѐ GڵܟLCJq!7G3TI :רTKb+bYp$VAbu@ 4ދr%\HbBHu{`;.y 4^B:q;:8~ij+[Y"UŊgY \yeڲ-+VM= (Y&>"?jZzC0ssBf&q#A%\N4 #Q1)]ꓞk0OWjXNH/F.ܚ!k.''nԍ2dڏ<5/}WO VJ`H4J)WY}yއHA¨s$엳9ḡ54^e/l;B{"v ml| 8)9NIx8Kâ٘"[ w U1gj[`p߳K Vk gG+~H-N f JA^6FN{ªl"7$%@$H)9X=V$z3<o{%^f[!^Mb߃؞ ]PuIZO#sDm2vF$EZua"̦Q[RhG mn4mMMMBKimI?A%A)Sڴ$s$~͞%jNlIF%N-fIb+ Hc1*:;ķ]Iu=*VKO)Cj8]&?n,֨JzQFjtv6B.@ D.SQD~o1yHjN1ʁ#p~{. F͗;_&zn-yXu;vGc$rcbӿmOkGc-Sp ȣPy@j ^wd&67ZW̤#vy瀑j/f"C[(םޜ' M]7P,(v=Ƿhoqؽ$_IgJRVCTTx  4j)+ɾuH Gɀ98Z6ы/&{cjac2bd /]9H8]wר yudwKj]DHM[u1R97'*ۡP DNQ}x$>)vw{l_#f4o[E!8KOn܆ύ6rd#2 .!;a]9/5"-^ vBT헚`,,4bß ^ԛ\2A,:kYVDU'_$zyD$.;CBྖZw'έamlY.Cm/Uu&Z7Ķln6γjQpK? GGϣNuH3 <6UȷnB`nrP=+0bR[IAE!aި b."1~MS0̰N9EIqĵoJ"T}gdd^Wk<"Y64+6$Ȯ f40sb~>DvQfXֱڰ*<}3cBsW<+ k|(9.YjU1 VK"Xڮvu2Y8)QݭpOq ͩ^æ{XqC +ZKU ̨iM"82IO9'ϘeqgqQ&'{U{^SW-":½օ<$F64輓{RExVx?nϭQH䖦$a~vF3"8"!Z':nVionA_8LM*CkIDt,IIݮ@ H"Drqfyl4vL0 h)9nOceի MI";1 J_SnTOE"kԊH5?\K说활* 4:QC8C! >7'U ?19Y0 9T,fK(ik9u)CYT7]]" |h4'),F^EмnƯ"ZJd=fQQ8;£bqhؽ:W,2OIpx&2;88"[6#Igj.2t>ۊ&bA5XɰD48av%/;Zy EWDrAշ-W%L~Y\m5Pƭ(?AyBm1wR+A (B$/th̢WS5*P&4EG:lK$,X4E^Se xGUL>CWczJ{qqcc DAܲ6)K *g!] YzMT$/55l\mOu=v/]Q@ ,`z>rá8q aB)xd(=1tEe`&:ǃXq:k@وʭmil>.ޠn%J-q?NyYln=:0"i>곊* .n_=_ocƠB]aWuֲZILt@E$J~S RV7sqćNtkO<#Bȸg۶,P;UƠzsԆCP3Sz~?QZmxՁ4[LʻEO1Z0`}u6 髕~F1},^/,yV_go]6Ֆ,[sI&F(` \}Y*w`՛U2]2-1Ѝa9R3;mÂIهoj 9;/J@kv?:ħ^EozqK{31 U- 1 5HfwV<RpUH!ȣL#_eUeyXHTj44{]!k".jzHe)FTB 7'Hؖ&l3$ +$ X/z{q0xQLjD v^PW\= s~#e4qn|(\}oN\?C5!<ZEE}HX6ZgosdC\ރ} ʠl$U)|(#UnKCSY٪M|uƪǛ P,jv-XLrfTAiBH44F&Yf㸠m_"?)ѻvorTcO[]pvN. 쐊X8Z㾡 b_y`F4~ J贖gfv_#Q[egNO i6o~eoSr+7aV ~[\K0g3XC\CU=~6*1Ě]ngyӔy,5K8^x _W>v_BW{/ UQBXF`*< CCFjЂӵ}\89nl58mQR<otv޽ _?ɝ}hٿN%QuF9mTtEBH'`X|];s18ʨx𡹀[gK <[Q>r$I F'8Я {n.燺ɽ*tTC&/uC0 a1yoNvbXJ񵑲?U-9y܆g_$;K qhV|QnF7֝q_ jSal:>0,qp ITn f[h8|/x .1*G]@A@쨶2iDr&Ox@zkEy7ckt .d HNiL=evf\ [Y-vjJR TV[gaVGZ92-jCJ^m;O9{4RI1 DŽc m ǃ<ǥ*4̘veMi}|ku\qŸHt`Q,C6^#T`sx9BބQ|jNB?ުcӉl|zi7^)ĺ-.?5tk@H|IIqQe ?`یrh> W &N)T,3Y#?/772d&FA7bXR~eikjo ()ZWW&, b6s!XYF R6CH9poBWZCaLaxR=a/;.LD~Tk6ݖ̤2duA3=ahzՁH+\Ѕ`Ć`/]*fE{FTdJLf+kD5WHK*$?'w^(bMYVthAkԎ|j?R6زe?3mR>lvȶA <[ET=inOwdDEeѪvp:0V yn)I`=!OT%Pau>͔xq+V"+L,`ak(Uі2U`SgAlZ<t;m/шEIAPiL ]|9% OGNHΰoqSFwQ$ȏa2If۽Ìh(;[ 6 `q- p(u@ؼr=39'XV ,Pa_غ0i$.Axh+noFޯ2 3/mv\9S7u ӯ1u7ģ!l'k6Mg*W]]W'BrݫשL}j!Qȯb)X`IJDÑu}YkSJw8?F|31O2"'|}ڑ43R=$)ZОM;X(e :YDfad vܫ*{㢭uZ^ۉ(蹗;SM>y7ciH'u"n$AWՙ9E4m)jpM_4z{"W7 w .#~>)F Ίj<Ԛ9̅h3> J8VʳmUHWUuٻJ)"0+F O+dEݮ `S7 tۄi&\U_?(&y] ʡ.)as|K}bWNj *J([JW3VlQ؜5H>儾LfyEoxGRea$k Ro+WI s~TvlX)PyV7Ф?w˲+v3,M{{ -ْhH :0f<g0|ͼO$R&B북`ic5(Ki_J_ 2`m=03RjX">r!xGrD>Ri ^Y ʇaǁW2w%Y79#a "xAzw<2.GƖl> ^}qCb½]lO3>=̵z귌3Zz^s PzYDϑ}오IvZ1%2t/{3Ccޮ baqxh xs̷)_Ug>_G3؄2-~z)VU7W_V"$tԴuiεDZ+2fm*/gm;ܮU Q | ,?=Vx*{~en7 h% )1.&}C`$W$Bg򕈹nB7s)qA !"ϑݧWTf<\ PP̏ ˶0Zk1$D%SΉ+]%4KC<& r7]Xb}Q!f qRhS뱩1sǠٴ轵]ž͡_ K3Q˘` iyXd7N87<FitTVG9j8Ф ̥Qg~wZ+L%96@ǔ L S=lhq6e\˿ޏ[$>7;tտ"<{@QOwkۧiK/Jq4-DAu,ڎ/1!s_\&2dt:(VUO>w- Uǖ O[繹ck[ꓐ>iB瑆[>T}}6Q婏T񠈺 kgHϾ남QL=!>4 !~pWr/23pIX^lw_X=#%h #oTOu zw4a4TD]Wx1Qu˾BCY,>$ӔGd 'gڠ*[')wyh^_89Y?߭Do(*+~Cn[jv9UaEbU>aa6A#9vHټ4/5l0{4'0#d|2~|F9kwe~ i'kjPP, $b '"ŁN_uN]A9+@[' >nxxRFE"}K弭xtAvPsc[amG/ Ti #Pr{Hy;J*wFc֓TXV>.NhF@tN^#ξz5d>hք^Iz1Ȏ,eV*n9w[/SBgD GG\g.EϢTs)G5) h)k"CQGVtF_iw\QٍU|6!TT򙅳G[ wk!h\ \>l޿L(ߒ#%Ka:]W$dD0eɃ̫Fp)q^Γuԧ\k}) Dt2'i\ @Zd$n+I0SQ̨`gb{+\Ȏ}|"tMqJ HJ"zxnٜ%jBuíl%Êd~%jPNi1Mo?;"zOeyXtWK-kci!r0۲/Řr4rTqIUg-]=0"Ȝ@^<o='p1̉|\Q,1>ؓhǘ:Mꝓ~dݖ}#4Xl Z!Fq^}Tz{UVtaOs. :e] ifYz ZasTia_`љ4>Բ5E5Ll[E=Y)@?/-͸+(Q4)Zlw^,Xח[)`Ҳc#.Kݶ{ϲ+G܉Odq[; '[ҩ=JkA@R؏@g6ًÒwլQJ7߂0) ɻd3ž^JOZ#ZeعfmI0EYi; tF_PD᛿vcn&Þ 2=[샰L*3ЦG N7bxmD ˅[;OP(>mxݛZς@({uX%!4t\ָDvʈNSZaby@qRLS|Dxr{B720M?k决Țp6VIFdq`#+9lÙ@\V ٔhUά  +Sc`q=~1\ ق݅'#%Qo&Q ϗ'w TUAs-{Zpw9ZPK}U8z"\؎E5i?7]>Ɖ*!Aj;kdm&^RAb.p*Rǻ/fα$_/5wI-oWG-j}8Ay_Rd1΅l\e;60Uh%&N"})kJ(C&%^P r Fd5J/XNBYRS:{뱷ƤC?[4 f a@Ɍ iL§O#e*j"Isyx\S9}|.- 01 f}eb܏lI"P,˜ Sq- Z!M縨l\hX zmV  Td߂k?'Bwe4& PurTTPbKdRg#,sKŨf;8,.KnWBd ބf*bb-_Α-ꕶf%gd4A/'::u25F߫w%ۅ 3܏ S tg֤c3w@jZŃXúRu|' ~H^?K!4d1SbԚ/8֧ڙ>矈{G̸AI[Ye#'53ͨ4jխIprtyr("5Mj05 aaCٟ⮩>iNPF +goz<V lx|enYuc:(XzjrWAc1VrArYK%j6+1$Hj72@oƘ%zK ۹ǵCMHmV2^A!Ӡ*dx-)Zu|c1)M#5\\Tw(¢G"x&94/Q0P~%X=+IydVpYշ?'Τ `m:.?w!,LwgH [V4tk;z\MqӓruY8{SB:58:=ӷn:{|LXJC.HD\}CpcMB ?ÅthBBS\v֌ aE?:|Ծ փK(TW%s7~?5rH?ӄl<(~ y5N2F(SU?8q{ Xԩ0M`araEfpS*#otAPDܢPFy8"KE*7$yt䠪w2N8taN þڐ +΄7U'3wޖ4V-_Y׎mI 澹yj@nk԰Ŭ!PHVqx e;.ABn\ }$BAqnqeW_RpW+NV]tNhDQ8bM$eDhMRZG$Ќ UKԯt*PGQ3&5XD 90yV?o*( P4:.XESsO-+~߭qYiU-e>{t@ڇBoPw:WZ/cyV5^FXC$uݓ٬1 4l4Q?#AUtҢ] ;- )kKu(F̧4rqYbX%_'%ctǢo{șqvr+Fm/Q# mJC<%1_[.zoI"%M kqb243E#F󎱡3m 2@TJuqPj=eB "DTyW_R9[rc 9clq/XI\RF0\%{CXrZl,]4 ԣ 1}sm|4aMB`ykG?7!03ԭWڥ&OVdwu⻈]fKVcF&d]c4y/c-ZISBzϺ?$yp-yB6,[bta(S+' y+tDMgmB8ԫicoު6`I=0@~" F@pAA[$w=9iLعzPovtϓ'95 yߘ/M^vv6uyMYHŃRYi%c Wb2! +Q:c%û6<;9r^f Z $xua{2l Dejh ]ދbfńNZ *ޣ9뾸_G|:*[`Lp@3$CH bڂ&<`10_T1{Cd`c"$QXeWWQ[ $yZGUӖ O;@Yɀ/>?uGr'μtbpbH \2G(vR'ꚱal$XBayy*^om+3iw}=C'Ƶ>U(ᵕMtzƚ  9 s{ܖ*A⿼6~/j˦pvR<="q袎"`+-gܻ1-dr.w\tbȡs.bh"Q-hK}ÖbҰNc-יI `vfաmLqU+q-+|=ic)݄K~kؗLRYPWnm|kfv3x #$Z9!to]?K+`"zMl8d0[WϷ¤Z髊Z{ZIt ?s%>_rmYz|3K=w{x59ؽj9_.eTFIk-U9%(C$ e>p-J M>tX+tGB/c_=ޏ*uo2Os勾xZ_ mv<8>iOV~J"t>d6f=wW'&"@@7k| {enC>ثf-;eBػ@}sDxm蚭!g13@xNҡ0eQj|yGk\/ֺcn"3My-Blx9 Xn ˃iMִ\&Z?x7 Mo=r)ۄiXD>|!0%Ʋg3Fk&14ǭ$6=(}TxP! pdCk(x8ThV+<+0<@Iw GYV3 Jbt5]n=WV m=>g՝ּ/[ 8 aON# {ʣq+k d8=%CV`P *"ؐ%_Aj6T(ݦpȡ iICG,r#ZRoLH,q8V_.҆yȏ? ρfG͗;!69ȿB] M4 2h>D`ua#pD[\d+9]B\NT.1w$BЊĉ/TMi_oׁmvFhrO>D#zbZ1vۇxp3}k\JBA5vl4C9Ե@皷S̅vyXILh.0Z&%nM@&{!+ρ}Hz g,l' ~, Uk'(pް0|=niY&Й=|@Z:  9WH*ks7!VE2m Jzhd>-X/D' VumnTs 0mP4kyvTLot`'YbURַ4lXV=;A+V3N<:"D3緈7OYhe`n1͗)$wID U:YxOX# .ĝ])BۈH=kbo@"ze;/rM`"hl#rJ_bxl Tu˲H0;m ZLY7J_2=#As*]B󮱤Bv[OY}.#%,2N>I"=ak'=mI yy^Iq*^E%"<pTɉUCH &}ݘL~hYXQ0+s3զa /+rvW3ڇɝ}{:1M:QX,' }bVYݹq!1$13O8<DA)Uz]a }"fvAqB_ؕ!e=zl%3$& L": 1˿%o^y dG:Z]Np$7c@pI,X!dCDFe]¡MC ĮxTaqas>1>QQ\wz t1E54˦lDȽ¯SA6QLȱAmmS)Ilg6 A6bKDYq( Bop?Ig]GY \&`VkAet&B[DTJj$"VKG/xZm 1%sAm_J{PGvl[|C6{U\RYeP WIA!B<9cʍ4f GOX{tyS*(ݹΓa :C0dCеCn4O-% ( `bYCBMM^-H 3샓^w%@H-=(r\eG 0"w*?c~z[F$'e` YFʓD_w9 \bh"=뛏Wuh^:YU[Ώ@;/&m ;VB+lrA! 2$<0Sc#:=|k"'q?I,Qϔ1< 3 WyW }e.6|YW/LJ]Q= e3H]mu[0eLjHb~}ɻT;P+#8!"zgڎs[äUgsym93#!GSW8z"n΃$#"ȫ5N0e 5&*tm`h^LE5۶6m.K _H— qBmA|'ПLš9!9:g in ŕwwUNyS9^b Byx'qkL*rk5;F?/'R- GL7nq7o4VcWdEhͱ-kDЪMxjfc94{|qüjQ9Jp'+8zZm$!ީe4@3"+ #ݖ>|o^? .`dxq'_pa7L@T6/s-ܩ JәjR:zu^L6lFAM:TwXdwb({1]YuE. >]¯mE -pZ^?S^ u0,[&QY*GXY6*ꞹ8[J63ښR!ӝf#^*HZxT T07X$%fr!J`dvF֍;:?Klj%mUThkv23VMK6A:n7C/|)؜='(t_aumFr?RҲ׾gpCU}@FL>'$rGd{B3U @rrKi@4\2bP VN7>}PWz/k7'`2oHz2$2+7_26Aqԓ/<jRB?\f*4CfV^gHhhMI_OP:I\BOmȗEB簶Y fBSf3&7ʳBt%R< vvh$feЭ;fb>lfV ʡBS*M9@Z{K +M/QLw\ -ͻ[v07!"!Tm_ +`]#єo`}p:|0+<&>?@1RW%RvCL[ X[^_4'Je".+_@`oB0~`bp r%,-[雱Vg# tJ&[8cڞ1*)(ޱedj S}J#)[Ls `j 2UTÒK3P *uf2< H:4ɍ\z#$ S(ˌvW"\<^mp3c,Gvޙ.UXzNϱ8T [zMCwc̬lÀWC4L'0R#RB oxrT2KTNd{$)">{9bv!ewAp=6MG.96LM+PFY!+FS>{Dz=GrHbbƁ ufq }Rf ع]0; UG(~10Ly31o2W R:'RIjq Tt27dkk / 68Zv~'Ee[ B q)O;DB:Kӽy6h;ߴ+3o[xy^Hq!-qxC}&k=07d U BjJ&V/wq6$ y!S)C$tc7G-eϐš&vRN1&q̅AF:ڛ fZW@jq0/bؓm8/8Ia FX)PqLr]JєQ"2Mms 'f,Sp`Zݼ9y f=$Q4q6SF)kް'D&)V8zIo($AI"Hox6)S}9#P_^5E΍<:l -L%<#_=DW! h ěơ["w6fToӔ3:_? `f`JR-^ - *{ -,(F\!Wh|\YE6?),9 Z隕VVwa<oP_7v$Z wH˳=.fOHl%L{D6b]2wYo@+il)0w)o6R5>@}#~\t/Ki/{{ĆIgZ9fɻfJG̘~Z( ĔغBhXhw 3] mz`^n`l1?$Jej|(7EeE{ku>P3sh*sܝ~93!ŸS(YZ}C3XA?p-y~ J\1Ae^igr8K/+`֏Ū7G;|w@ 9:[_(~Z5^y'=gFLH E/;g,k:ExzC.[!:uQqF6J=rjnJdFRFXr <8/zcQ'{S Ji61Na2WI+~`(|YÆO?Yjylt*{a'KN&K&nK0=|A)L0do1JK;N&aLw*,}Bo+Ly)8Ǧi#r7% k@ńؖݎ[ihQ2ޭ_}r,TMX|T'me/B%#8fYg.F:*@/^Pp0fzU3?.jj @6H#SUN<;qW#X$Q~r@$28g XCQxim'0?Fځo=3V8ߩ p*k)6OA>ΡdP{`w%R q1A^#҄%+ tJ 61'Z߁g9 j) =ZPTc92p[ +oNxuݕ7+%>3\s#V@gvs,ٞH'<@k6hyq &I276"HV-CM':\"t$7A?G%m_쫌ռ/M|, SDRaԅ.5lBD86WKϴ&ץ / pz:YM ~|1^|ZrRj0wR4 \'(d8hj" ㈂XԵxnL[t㯐h,YH[K=c릟1 (8t ^ æn-l&c`*bj,socwӨ:vѦ *UlUEIw Њ!Rl7FϥkhDC6o8.+Hr *~-;)=Fz^7CŽEfIXY?UHߙy:J=Et? (AsPRJsI+VWwJn5]IEb)Uʆ+ED5IA:R;VQ9+sO5'kHOzc4D[h\Nn#uniHXPKC6& uγIOm:M|Qg.d8*٢RiRI "yXAum@5НLyƇ[U72j ]?౏u?GdfL"j% 3>\$hehsj)nJDTVd{7-=y\:E~ &jO: mHJ1d%PP %Uۆ_Ֆ\j}VQюm8X9d{V~ĝ Н]_!WO 8'yo`-Y0M4#1 xIE, ijL6 q<Ln3Sh:iFkTI'8^LDY{W* ׆X`ɧ%uT_h8ҌKs` ;4ra*CN,~Kf2з+RI5'&$4`"_4* |bD1"||9YüQĮHdc%`-i5A94eEpߕCp#DZAqT~V`ηvə^qZvMW> oxX4wଟ`,ۘt 3$eYPDt`iɕ2೹(|Cwvl˶ TRB#4LNpx2ԙ[gE,_`s5kVمl,ʬRgO:3-}ߕ5|mH cfٶ9uźs2J|+-C>)Eоy 45Zigod"4H[cMAI9n?Dpof7TTcH]wb$4_bNnmD"HEBԕr #*\wpNWc"n%{ݒ6EaRٞ3c1k_E&P# I@B"Gdn^`[6vd)l%=\W@gZ3>eP; #B,FwB nIl\EKq"Y_d!COOp faL-U7n=YdFbEceRE/C(.ӣ/1SMQ)kXǽB0oػ-ɷlg=̰!k`W`tipǴ{鷇2;5iexO+Å~H/7D=lx~l#Iά%že!1>ЋP "wjmڙïy#(_#u*svr Vl)ZxRU? 34JZre )[?Eѫ˥U ܸ\9 O3$obCm V`R2sc=3" 6[iKg,r .uQB#RkGoۥB&× 8:VYPaŒ*.ċW b2)4gáD9r,(}^λ/TĮ\u(:h[os %Nl܀DsҲɊ啧U!@:3ÿgumLa$9EKxщ[wȣ+B4$9 AJߴo#q@ ŏnr &i&Fˀ!pQN(̨D l4iןdHmN\ƒN Ew`#_񊍳-أ;2,hdw/^?#ƥ9bw){_j.ޖL:bnST_K5hIY6:;0 4lJ/UGEBkzCvP߮OZuI;Jn63.Յɠa0SHcLCML6 l{*U4!$h& *j5b : * '3N/vuqI!abDϢN[u@BTUĐ21cVz3LgX}߽iC~_(X'*A l`]|*Kͺ}ZkH09ytKg G pu||SIul I}GT E꫍P"Š'm9/tx4m~EDž_1?`?kVXUoƠ=4)27jrBHo9(m˵v-W3=.;|eMʍ8IPЂ2NXٗnUUڽG7#{$kZY+XJcq!9 L8 ODli͎s`Uw&QxtuSc~+L8>!!'e:@0SMe6ְ{'d#_R~xwOHS8J6hLNtzE:w~@{kP`qj%˕̼@6eQHOLB.!;j࠘(XnɈ!*d(ٝ;ruY7DT4ʪ{Q뜵?(zl coCnP=pߪŽASOy a, ~},jw0 O}QW{_Fw4(iZǾZnflmqV E*`o@ɬ-(t[|LVx\kau/67;cq\ajwXdH5DevWQʼn۪+V4}3.+N 0&mcc;yzt(5KKbτՀJTgw <=&:)W= zeq`jy)ы5SAȫRhz4+p^U8 ̪jGҸ\7NOȝc)VNdл"zȣPHDPy!FbQfGmE,zy ڡK eZa_Ӷ8;J)Sf3ն ;޽t5RBl-v!o+kVwj!+ Y~\2֊ړ-| A *e9ܔjtv#񷒚0W̼2YRrTM_+F:>M$GN*1V'oШZttۥi:٥= ݻZ\b]5DogVW Z`xҷ5߭b^@N.L +'WRi#ZPd.4aȗ[WsI@ۛi5O+;ɢ)>j ~\B-$YKwG'g#E@G"A5Rt ;*谿Eq4;dْiܟ%btot5wxx.Vanl7݆]y15S[ IcV%2%:etS5 n{ykngB|nmBv3p1pI6l"vQm5;k>ne6R@LYc>bs DOp 'E]vԹP]:}B۶f}+ 3_qڼ-8o$' I<$EAW{s +]qQr!LQlm>3JI W+ELe/K)^ ]pg.M]>uhBT?m_@!UrF J 3EwsN}[#U0j-p-IxfrWj3AZ6 x@ݽS,ʇPiIˤERŸBj : Z8jŚ}4-l I f5fFф^h\}mP^JgGul6E=} |!T ZX=2# s" E-`E!;7٩EWrmZU83YY_PDoG/x0IC7|hM j{yz0;1:=sP::/v{Kvř |p4W @2I$z"KPdcD3_? "щ9z=v>KGnv-P#04Kr[ɘhI tn/&`SXu;($XHAJ9si) yʢija:H<ɌQA{EV0stK&aHZC / x~F/SaKt!5@a߇hݯ~ӷ$} 9-q\8i\&Dtua9tw,#mLbcc\EJhl>zH-x~}ˈig0Z lmIhaIe҃,|̤|fAQݻI *X &s ~@E׬PXN8Ne7; Qdaj,Pb<,~x*/ޅȗ')&stBUBNs쁿8;S;'Ou_s"įf}E'4D:~T7}b/Gx^Ȯܗ7 $ ?K}:LW|!s=̯JtԜdK,D]u/};q7s9*Z;f K^-הH| ABXQ>ى I(50}Jc34yf[ȓ\0F R[%%'ƙL}k*{*K&>WxaN"4!`\M1 =ka;UL1M @- 7_V&TB .MZT ϨYwf+Hm0+ZӏܜUN. ՘seO UEĖVO(5s- lɞg8^ }F\7`UAmjLt1 3~_\Y!ڲET, ub$JMB, B=]2:#|6B sd83Or ! ;G#P\.>zY YK6.@bms؃?SFv6'f74 kdGcӌF;{8Oal֓<=XIn\d|?^Z]iWe:vbhb|5lW@K L%ylY6@gsat(@ @B:+hiE\9";L4#CY娭s63CA30]e^?dngjvVڲs֙ w1Xϡ4ZOBȃf}jƌJҤdPnw -j SUr0-u+Ht6iڐ0X j'%!QD=b '~Z[!9k.O Q3veMXU$]i˕TNk>wPsY}V~En\X@4R; +C@i\l2q+S^ obqA?nQ܋r+a@fu\ԠE΢3>ao12gFօGb>v>2W{w'ZU3<]Y7Z!&4k2 v8rD#S46sx8dfsjXr܀XN(b%«x9oKjZguy|z(eg|_|dK>p :(1y }GP/5܏xōEә qGd~#ft>l?Sj Ixe'0TJŐM`oBEYm|)M*Kt92"\2SZڈ4fCjV""4^c8PuR;^#1JzMK\5\W&s2Vuޒ/nֈD!H#C#T="weŽX?J!*\08W]E!IT>#&'xe ]-flSZ#ۣ:_Avݽ ¤/"X C*cj$`9`>R(~%;i. ܴPU_%x4NoOiya@M(&!t?>ZE9"ũ {XE*Ub5IsI8:LhnL)PtlR OK54 btƆ? .aD'QqJI/,Tex["d\j7c[-I~dLޜOYͩka N%A {ڋ0-4h8h)N}D1IN >;".Fg*̯f ulD9KZJv q:z)$YqLG?h)~oȃ1a^Jъz65N*k@\߅ϗSCGW6-9xYT#\0kq (xy۩, ̓|)m᷎<`D&oѢT_ ?υUs}Yx<=G0?b5{eD:U~Km!nqoa#\ucXIrI5H3!ɾAXf% t0N94ds^C|3zʓ]IZښPh<)ʧ{kȅ,N_4 #_Jn#!k]'[!;9@9qjGYye)PpαOsC>ZnZ/XVf/a)Ed2B~t8|1} C 2ԵT7{ ndM%ūŗˇӅӐbҠ"%߭Xcr@A4Xv,BS\vԮeZRP):>+F!Z|RǓ9UO(YT%Ii-{REg^53n0NҡwNN?.BHqK`VݭeqXOBp!!,h(F*NX} +J&ͭqF|=E-7V)Ԡ/K`/' dkzp%s4:z\TeWAxLTՂ%TpHG5Ljngủ&#|Z1b!$dchҪB n#PI·L[vZygSe!=$[mf(Vbw>Z4 JgvtUV-rO,l+4veL͠?U'I;e Rǚco=~^"V]>Y)`KYnEHL9{O,@ A ="Wj׍EӔRcA`L/7L%Y RoنҜg6A( ѫ5277](F5}z)΋;N m_:gi' 8Wtrt[LAdAtV?8Qᴽd@smy8jEvoԘ#ǧLlv?~uvJ<&8 }bNyF 8x06+o4W&zF7;]אA:Ko5Q4q9s`GCam]BІQk1@5%AD6C=[ßp< ter~<؉J:XoɯqmvlQnJՑʠf5A7WZUbb[͖}v8%{V@==8ٲ_y{GB 1aUF:6_ Z3ْo ^?"o.hŭv= -jZ^A8\ϑi`JL2RNXRvsxXثx0@*跫c )筜2'}e׃NjF` Sh `(vR߈a <`oK\.Gv[%3z,C4l3O[#YH_O SC ͯw;̇fng$Nj0#ļy(3fHA=i9Dhnё"<z+a*dH9ɻ+"J\qB|S^ݤ!e4>*%'Cu>ވx8֞GkC6T3z[~0IQ)*x-a?Ƒt8S"d͞~^̸xT7w} ` g;C~ HK,4 [ I|Mn~$v盛Ae^UR%Qa,H8 's@97%I8gRm[LjۉՑH ?vFS6SB!9_Fw10AѤ8Z;jǯYq=s-%v-O=ײ3Pٰ yEhO&og ;!hPcxnl~eu\Lk)GQ'ۖjku&g5]LB%`~VpG!ZaKbwsѠ+J(ɠ'Ti{!eזe|nUM`3*lf^IS|n["g-].R뇛oBiu 'L<%[Bf I+_,[T3+*fV\ДDaRR;`FKQr9ATMdtbhJ}Bo+&B+6.CBG{wIovMUn6{uw~wCPލ[Cg)4;^!~bz.M}V29)G9pr<\}&T&9Τ3JTeuaƿgp5wj)`ۂ׬0r #,e9`}Y P@^QS^&J]иþPAP[_վ-Nƕ0je; L٘U}]inAjB2L|Z^ow?ND #7 g' /D=' nr? c$7<W̊  ?kU㽮qHHzCVy|EAp.g`o4tlі'KH ֜ז3ѕNC2V5[b޴E 6)FϾ\ꓥm&e(1>7P5tȅ>{q)ῂ/A?3jW8D0p V8ᒟ:X9w&9 Œm? Hr\ӓce ħ"@4="EFS1z 5p@BH8?n:N`oy̎A[= v6]T9ʙaYD#ˤ[3K^gQImC'+vl6ɞ=`y%Pk! /Hqp,jSK_O]Y`$1# l\Z!UtSjS (4 n?Db!޵#Eqxbv cGxS tlK ]6S8 ڛf.sc3WG$*Ylu"TC>:/ D]wҊsm \P'U_5A=Ild5bH{r |j`kw;Xr@&Ǔ[gxO\iYI(]e>] om8S2 9fUhO8MXsv^9 i@=:$9]&NM+Dピ{G̐K1Ha~ Z/Abթ&hjM&رEmROq'.;*?4kBr#s7`.XD{7qE[.!5%7;,Zq]!J:lPVx"1m~ +}ms|`VDpg]l-@hr+D '_j8A,pUɓިz׎Yu hȬb:39E`^-A 1nIkkw^_w)LmqdԹd / ת)Hx\@Di<E±/X&ߛɿUs0P14ח7r.ÈW-~)B=* 9ϴ<4δÂfj5*vOw3aEӗWV;";&ʊjE'VaXZx0 Ǟj#|⿽v^T`:`t5{w0* `J坙^.5(1<tAd:oZ@n(jϿX_b3To}| QȚj`QgTgO%D35":_BD8'K <ȈאR=XZB*d<.ј ]"su 'g ruY+?E4]r_ːU(>p>A״h{0lR?m]aWqr4jvˇV\uVR #;Vv cܨ{3;qY\홆lN]Q)"Gf-tu<'3[m'ZB.FQk"}}pUR|cLwp܏CMK#Ӽ΂܊ǣڅ(}\\`T'@U`( ?6rt}9 k3uyLA>_ڊ%WVF2L!h$NCeaHl̗ >SdS{+[M'`%c>AREZMD=m#*-Lq:w} . 8@?SQmt.C 5Mh0u1/ڽIĶ W씸Rk<.i@kdJkE']q`Phή'bN4&Yt:'~ 7 z_ЙE}MJ]|Lc}l-Ec Q&O 0b˞7f\ƀtSXM(b4W9XKn:LX?I, fԔLojo\d$>K85] eM0Af4=(ל5|T'rTMGmD$Da_rtehb_wS$1̰0X19@0dhGJD;KxȵRǀuE2o`/%)['1q{ s"-ݏwT2!ca/B-sL Kntxd5Z9LUUQKOZ\~7PBA1+t,A`xA3OfTVY{63{?ۅWBգH\XQu Kݕ5XhhIh{%잓IQȓ&h0achW?tR n $=,H%5q|J6t7?9IGL(C9/Z-5+㬐Ud5ZFӇ]1HYO3%B,I3:_1VL]zۤqOjq ʴf Id%Ŧк8;6eϤVܝ_dKS纡y0TaG:ijDbpSgfuuoRDv>6Sg;$<@sŤ$>Z6W4t4#&FQzbGۥڌgC!_*B,R]95Bb,8$T 9Ύb@`El[\6la/b0+>D'lN\`,ύ!7(s"Dv'͞(a$Ty] 䡛q.z+4gz 㛆Lki4;5%lHx)\nկy#fkβCsJ3폖7@ K7@\RC @F !?"3̉GV뮦a.r"_G[ֽʧD)O锵V6+t9DPCO VP_֘&K*,{1Ms->BR?!ͩP)g|3l@?9>N@Ø F홙}nHWcUX{MiQyEcVoݾ3|o[AArTci~h:tlCUfzQA}mکK)=z1Δ*n*IV 3hKX88MX;}("5xEQL>i=y)&A΢o5Oޞҹ/♑1Ҽ,H_!?uKh|k|zDZX *N)ʉt;n^_-** Mބ+LxxA;C' 0ƉQW=Ͱaz9JI^2*!TS$-{-:Ƕe)s'bVqTɤ2ߺ9w ߬+PQkJCjz4_ 0Ywdw17;r;w|\]2|,݀&æU`ʔf4lfo)?z+t-I}d~,OiZqTU+Gk1 A= PrF)C@^[ūj={ x6(< iؽKx2y@*oXF] гf ޞHv4ּ 3~iMq硳WS[#b#x_:1$h'ƣ6MELMmay5-qGY=duRtad<)h~$ynI-Y>lvvˀ@MFE$=Pf`! 1q"KMO IY²<Ӛ zoō+Ek'·HeMUU/jxeӐ v/ޡr B+P|PMX6bY1$k&#ݭ:1?5FZ,3Gv 9F7G-NuIژ9>19KMvˊi8^l#\=YtR/8}TPk:o\(yZ8plʁ~Q\ \ya r;NAm  @ˠqk@Ԉ-L 9[:݇$~9yfmo'l d1IID.Weqyd)֬fU1š[:ֽ ^XK֎l%o{u1(AsmjlJJUŜk}ӓ$3$A`̶c&4(~'爔;>K7eGw2+ȣK)':w1L.C;Pӷ5D_ Le`S0ݠ~6XX&d !wk,o)A_=LI]QyKXhivzPU `\z>H裿g  0Vnv+WZ޼z,]1NIR1Ǧ>ged3UHL:9Aet9@~~/jv2t8ғF'ْ@klm5$&}qHPC<}%gR&c(dX h$`A` s[MB'WCyoc .5 w͊w2&kg3QtbF&栞+?: *L7l/`q[o `W+)jSf&10Kxl?•<)랦 HF36@qTM%}72N'vBCK}}LNMÐYo e*8Lv*' >vH|VwTqń1p3}d}2kIOcullD-%1u1 . ClaN;sikFSG;т<`e_c5W\X|+ !tfyQA[wy˙8`l,U;0TsBA,s+D8=}T$/-,nx@F%ϗYW"§c O[si^!Laڑ{m=?xhD*7(&=-r?AE2ΘB> Wn~_jrsXJ@̚ "~B\mjCպP+AvvѫS^ONB`ΩZ +ajpᰁžjEn ~LsДdzHBfaj!yY,vh?.ĩcet{Z7oDcg mJ).ŀuES ZgW@sDn?d.5mX됃"E4a/TDXٺe?6\ QҠBE9d=QX0 Bjlg@d;?Mq\g`lΘ)W(5-m4R ,Jv}I;2R!ALphv,> @9qpv& =9p]~Ԅ[W84'<`0 Ru ƒ푡vvጙ9swY-0tڝ\ $!ND+AFYBua^3@Z,`.bV# %s+.}7(ģ-zmzD Sr@  <* ȅ)ubTШLdLtdGzkQ!a] %lRAd$TtO9%BٸAƗ>w\ 6zERty,AE.DWĢ 3aw] rId@/IG3}ޕ7޽&!7[M練qUZāW2YΠ#B6jx8D-,*Y< 3IKe,lfyjEx |ȏ[*8"k^U. %TWG'Tզ 1:5}9=U- pkm) !jzW=njP,"0G{,Fa'Sd`bIcGB: r;!8mQ#E.tODC9?#x?~sf/ _+x@RHLjE~6QI/x"mǰX¦d#1 2w3I\O#h ePܻmڗ"B_G?[3S$p`䝪0Ca:q+u;%W 7ڤC-vgx/?LMFlI#1&'L}LVUR[wO'E6 I9<|6:QٗKr:kHўBH4c? 3R\}N% 8Pzp#(|=_lN[Q0X :?E14D.hM|':ph0駕tW`|ŸƘ( ]|E%7ОIe:,f!h9 ^M0I{mr;^EBf saQJ$V1~Rmi^yo+sOHwqZ0OD% A5`+|4\X+Tp&ۄSM)BpYVg[6V@:B)_u^H: |^K7ru"~oo7Ku^[*.,WƿC _P@@tٱ@.kYl|"BLrN5h׫?_-1jSFwEmcV3[Bj'df++0Ur|JBoB-f; @,;#ԚH`oK G xGδ?BlU>HI^"$JA3sԟ7'?)h;.:)+>|`"tp/v~.2v]pjnR2PѸ9{=Z7+bOG2v/ƢIqAb|ȁ(VcQK츨}hlB 9G[ Q3HgQ5G)ʊںV=f7ayM8V_=ļд-1ⰘmhwG/vAxKHꢏuð|+^Pʙ%\nI?z.9p GSpܔD v•aq)[lwlgd}OipQZw EdE= B$1eVˠ"VhblvM>틥U4cϻ8,hXufݺ1BF%R->ANX*{pPqi3ƊQБSrq[=h$UK dz񺮝>׌aȱ >f?@k ;}&2h3(Bl@UUiS,_413 y,Ebv ZQԶr gJP *4js+]6bt(6=N(RE2Qo~5T噶I8SPJ0ܹf\af=b>7rUGX 3Ge9H .1gBZ Xqoqqw?=N.jb7Cj.c;YpOd;ъ]wD8 ѦOia > 釸mv%!L&>V+Ʒz_G~P2CI-r3\>HIeQJ:$V7c<@h7-zO' ԸOyv4Үy5JJ!Si #i!a5#Hscn'R@6T}7z1|5UVT'H#k>$מ7BJDba6KDL^Jbdg&J㰜lXش@S¾Lmj$Pcܬ#PcjDΒokM7f1âK>D4bIW,t1idNrETKE7-*)wڗ߇$Vn vA7?!2G8ƭ-|j >=Y_jݜ4(c"UyjRoE.]XJ!X-WPI ŷRVaRJ m?ƻnC^`1oݝ\Ytv5v@xCҧ& 1gAVIsYߛ.$up0;zK4,| zr,2RfNj%DA/Hb8Hf1)ՕͦLjUkxO?.9Nwڟ!6"1D˙~As KⱟyI6'=|:t(->(Zp@0{Zu&ny4%'C* bO#V!'DA^EDBLm*a6Oϵ+ tfΊ LO0<cPxW'3O'He \||%w`UJ 7 ؟eT[\Yў?b.Ɨb ]?_v0 _c21(93.y.X_Ic3kI01Y!$qSmwQpuOW gRJ@&_8X1a_ EB.b5o]1xD wBpH7vJ w7Ni\Uhqxôx:3A)*P~IegMtSK5TR8SݐydEZN|| \{$ߕ &;|*y-\uG\Y{OT'Z,2h#L{S-GH(]N8^wM*@!qHa1iv'\?t/MjX,:phwGW9'EI@y7ЌkSrf&tzGIoxåPi{C4}2Z!L@Cn{F[m;A1 cug 0mNNe{/s~4Z<.1Fـ/+Nx)#{ DKJYUz^+q&z獃k%|]a4G}_XJэ\Pg(T]Qjn}ۛq͉ 癤S(4ڄ14+U@rU|yP"'6ޢmbɃmO>UȡTQ#oT{/מHl tmH(mЬ7}yorSxvҎ@]_L[" 4 ?fp EI2o*+>2NCa:%Xig!")$T\ig^xzFC%#N8hM/&''5rʴBVP/2]*%O5N8h&ja5~1n9\|K5Lk3/\fEq}/Yt˫;s_пOg3(T/S޴KmSY+ ĥN*ir("v\ԟȾ/ 9T&k8碌^ q,u srb D>v[y/pOZTpDWS!tS<*P=pG09,y>KM2om*łs+.i+Sq+İTER-u܊^#sSs$"6^Q0NW&^wWI?|M]ԥ NYdNOxA\۬;|xi Q vg⁇5x_w0QNi: `ҙrJryWt32 cw yGZ00nu!t}|Oiכ*yv P5p#7q:FHE9Qo0ze[ CIe/l0s'3%I YbǨzs U3J1QK|!D{㴇;9vNp+?8#Rҷ>𐟼`̛ʞ:%>rވVRHٚ]OV:TjqTAR}GvIN΅K!D_II I&^.uyT(cW*Ë_HN1Ӂ1~2 ~/_LH?-)TX&5 r6 `MID|Qf)h47&g`=?PQZfug/qP)x'u̡ emYs5jM0C D盍̘)o Bq>.gwD`x1aIRbÎ5¶]C0W)l~a]ܫGcj}c>A9iz:SS3 #]rś5rF#eᴟ&Ҍwd̈́?^OOeep"WMXf/˒@AR0ysp/OSȡx\`Ps°BRǝO'RApBfx M )\y:Jw[+w'\GTcES\Vpo%+ YJ[N*Q¤;Ȩ'rl"+ ~L>taG`2)2GY#?z %0Sғ:ta҃%T؉!k⑲zwʣ8ӫQ-;`90AkbL O?SWAvˉ\b2FOuP<J\pS,)J[ ]p|yI AMO߻kK̒("/k#W~wx]ٌ5V"W"fXDl- ެL B 3Tm[OFQ+dSo]BW5= >3:4NUt$awuvν$Jzh oG',NGк5ۜ S ~@VE}3FjdxV*bs ^^iGʊG1#eeB&&rE Y7ED/IEO1!z[Q6!oxKH /|]b?z $|ޒ_FF~OB$Q J3FsnlX럋x1q%"EỌ8jZo;[J%~^ T{+d o$ ]>wfKA#Ck9_249M !lEgMٻz+ u) NPL>:QiX-c42kuغ9Nc…_<(tCN,hv;"Cn JǁƩ~r*ciݡu連%((#!7Fv,ߴ)ce5>2Ӗ<[(L(Ф$kT!t&j/lÓ{M%"e_Ў[`"™ƹ5}]Hu@%tPw㳏&O݂=hoW2y,U}yKA!C]@h>%ܐp {ǘ[v$ +yzޔ.2=Ah!U+n %H9ѐYL2>TD/rڦYEz=V{ @eDɌriRb{mVWQC'+MI<_ 17P9%>Of2bh2ֳVDBmAݥӈ[R>IMʉ|@.}$xމṉXnHߴDD =hpJAM%|)vA(LPTs`U֭|&oL;p1h4h ~ֵ?O$j.!q(Pya>ⲫ -.ə1ϐdy[߿Qs>)} 5 P֕9I>B P  trqr0A"o"Gf \LT쪔s+32%{<"]V@] 9J)gxU | i&K/xJz^]rx~ڸ' iİM~*AXxpg ֞r9I T)L4& bA@ъ03-{I>K!#^"UZgՍf$uìO`mo{4ر٩~WJ T.a QE8rm#mFQ rD:6M83NLTn։g+јX'X'U06Q/^  ehi$WoƌEX0hIjX.EGSVxκ_h*9?_v`Gp@zZ-S1|2딣, HyT;2s6/ȚZVQzdZ%.lT(tfIצ=|!gu)T&Uy9_֫,'.ᗧbeY/H~Q}:ʉ;4O׃^j& ҡa!Q pqQ!Hor:F8IvψnRݻ]|$wM>ub4: H1RPu(( !ٖFV1JuSoDeReGm.36yM%i qm;ǮA@^8 7qzOkӞON pݱ紀H!6F~xSAM@ EuUd=1xڍ /]7_lQ„, b NNh3G*l(. t`4#tq")[$G">7)5\`v ^.61$+|u|Z=aE V;h\g3R#ˢwB ķ 5?&v/AAsͭճ,OܛhElUM(NpG [1bDN=T݅rmkK g>O©kdw£+-Vn_gcH#&ett\̀@[$}5r DtL/O_&?5XXHB& >|ָ(&gHeUwxb7?徣s6j m_i/ |؋f. nE@ nh+_RhRՎ~\=_Ur*)?}r[G(z֤K^M٧CZ{1^'/o19՟WIg`4P6PBݨ;/ ?\^,h~R ҝJDAs_!KxqGzX ‚ %Ybw@& Q'j8GtŤ7QWN#? VJAX8(R0ʦiP+0W^\1.DFjIPr͉ <6exM[AQvd".c憫N-PKH m\~2-E~rJcG%#3&_ : /b}|Åykz /ɝ=#,hkMF!!zc7*cNs %Yx'856!NFyWӐ7z?Kg=Aƭx<2!{pk>RS 5Ъatoa-_h//bDt)({BF"4&N/4)WQ/E04|xh̨Bɂ>(fZas{1#xymj##mt 3f 07LLY6mZқGTQ'&Qa3,M/oe[ā1>L8=''?!;t:H8Dw!%4^,Q/bhҀtnH<׸b~6=䦘@1q(/@8Ihxb7]v>n]ʪ+*+hͤ{`sxS$X5;kMaBwQWfRDg:G]xk MR1aE .ycʿLb Q8?fD{׈2;RiT8&#j'V9_bv7p%hR\i/5(th9;(JբpV+ZiS@񛲌zYtIcRCGFGXjP qOX}"xqOM"6G$J^ x}bь唇@oKYi$y-v]ߺVtıߣ6ܨhRy}s̎*=KUN ІM;І[ǩŢO&/(i  vFLpk%=iqd3XS`$Dg%Ak̰trؘ(`PrTN2ǀbY \ fZu2P`ncd0o\Lc@}j 2VnE$1-0o D9yZѲQN˒к?# D3{0"rʤ|?ymmTdId𺾮7F愘T(9aE^o9 y*BENT8#XʎK#~t2lWxYX:?HǙ%1XZ&W豟raIҞLė*tn+l]aby9~Xbjc0ru Qeȗi¸)TLqrGY08BՒ4~O^7`Ғ{I.-gV*\S\JߎJt3+=Sa5i-yc+&m,Ip@?KKh\ց;6&Dz?p亲hZT{o2Ehs3IXX !Bdӂ/'#c3(HCj&dѤӥ_E=|_G|`X*Qw+-[kWXo(}۲ aC]ѳY(HFJqH)b:hDB7kǣ!D.]o׈gje8m0֪M.=e- oPhq6팫x 4{/BHYF_k ;jtJH`n5,Bw02PZngpθ,XO}V;6҄^'HyJ<g 3L#iZE M~*4 OA/._Co&%ry"!r&cO;C=JP)4)GG=iN/,1P2vt`,7.wqi̗{ӿp~2^:5:ab=EM+x;-iA #6UQǽZFK&=&>b^''%Y2Ou=揕fÿCQ~q+~5zFSqT.s1.ܬu7?kQF/!W0 L@VS} Z PXmǽMcf hڧEšd[g\vw!GJRݏv}H@&D9)T Hc]"56L΍x8Hn[_؋S*_p %6Z[{Y^+X*MWA!~?j62?sp|}|c.| ^æ4?[]8">Z](֦m>DsD& -Wquq24;q ͥs#u*shX zb:߼wZLj蚟5FВ]ϠR%s*fg\O 6H&k,J;8,E\DW\)>uv20}3%kp Ezw~1msdT@>tXf˂TAu`_O Fnzh2( af펮sTfumDh]T [/H:fT)Y;wpa)Ag9D9q Qr\=B٠݆״bl'w"gٲg׍>rA%3unmn:6ta~aaz F7RJ*Cن׵-ւ>2T悸@{:ض=_!Fu-ƭ@vD-|.:7/jc3>Us-Ô `QPr@6 hH@M.OOU7W>'Q3/.G$J]^R)CLx5wK}q>^; UsA+oM2|{oV3!eX"`$8VSJ>nui(zzk\/iB2U>0um2'&rzDVLS@l,~Mtϡ\ fi6,jm0e;fyb>ӑ$,9"`=`F3-Tu=`Az4Ȗ0Tʙi}< :X`b#E3ے{!YC6Vk 9mF0C墈mb}̍8slcnFmn|PwqC,}d[^ _VY{  %>3@>>ɐ&B=> ᑲ~tVQG9 %`:FP5΀V6]U[ ԂC*ù\EĤJƦp2s3C1!`Kw~qAn{ӏ)KJ-'Ym۶&B,i&<4^GencIY8oq9G v'qwJ83A^)qZ3䱌V[ "+:xMGd#{|jO,ES?_\;kKdA25'$*ykؾ푗xY8v]eb> ̝л.SsaQWSܥ|V! EBC*\ xIO$eC!T*c%[iH=HVJ6# i8"b'`5rR" ,xaK; nVAͷ_i4<|.j.HPA_ , O੻|XRG 0Gʋqޡ9J:W<`( ;/ŋ4p{}@v*i- K^͆d1OV/. dU(!A7W cܨ1$J&+eAڡM=pԅ-ة7-zOT{YA(2\8ZDfɁki{M9Flq B|${a}f슛V*QYL5?oR1sC*c:%JohD_kj4]P-Ouv:\8ߝf}Ly)!h$oz< s+*AπpVܲZwBJ_q|5?,0g-ҩ9J_3kKBGd zB\}'K~1!.}BKQէ6pmcK'$F=Lr\b]ϬFP\-;D^~Bݑd[IK<u`̒|HU) ծKu[]zq IkSݷ' 9 y5p mp(uu7[6w"Σ* fS.[:^o?zbh]8j5D|+H j#GMxx+D O LC^ndODbS)LgŢXB0*m4%LXcD'ܫ"G,q<0ȈRs/(*";d\.fp,>0}-˟(b,p`U?zq:0t=W0s.1hg).|2 QYh,t;X|/`F t9ڐ £I\חK .&rVL.AՊ>':"K{g䇏{h'3ܧYLm,h*6&,Fi By[D_נ1?/Rp:}*-V}k# Pjsb +m( Zu! (ds4Ѭ\Hd IŒ5.؞eHϹ/0\ y`w[L~0L| <>4 li}̥7 e!]p}[`xhq;K+BE.ÞAb\A;ʸwŽzYFx>8DV+wRHW#slЪךlXgெE` OF6{wqui25Ԧ-tP]EG1mmxvV!'eq""ߘx?{E@Kowe*u_tЮW3Du$gأ$U|Č8 zߗ^dfNFQh/YaNhC7nH|Y+a{S}9 WƨO^yQM(jp!T%kqsQ* 6QPUM\P|20lb8v򓽉Đ6 U +ff'u7Lz룒O& >d1d $AkOk>;1XI02qҫ\DY:vN-?St4͝|}9 Ip& }YU'GnY"-Ađ6GQl i .t=+O!Zn:af]V~oqs?,뛧XeՙΉbc;/gg&e*` ۂ6Ofl|za/g#3_蹛Uqe5kV1@ӖYs&3-{KCRoƞF>ְ>?fhz),4!#Ӛ$2rw3>=XA큥ےTϘE|= 6"P4WqNЯSinޔn@}Ɣ}LP޹ Ylے:tK;=zP׆[QXjMԣ-doZlLy1٫JM>0a\aʩ;ZBFf#֎g| W.(^c' WeL%!&䍍3ʼf *$RڴczẌX 0 ԨNCws/Sqr`tA&ŠȚM_<<)uyBTuWy\N㓩VvHƫQf`!#Ybs*(CrBӺ pS,E&ѣ(,zeQHFQ7HRȑ>_w*}2ا._yÎEC%B<' b1S^'Vw ƥ^a)9&yW*opo.{Dc!'%Ȕ|Paʥ}h8au4+ xEaLĠ 4cgհP)rPJ iLf#W5)3oZri%uEV@*]`bۖ~δ?> 1AoFzX042x֞ȹg-ߊ $Wk|S i_3dS+_G-,_\ $K|^?YUCU(31p)CCPQn5О@LizoKX(QLpnp3#BVwH$ɯs9wJqd)\i*ocTvYrq?R=|eEh&]rAOWruGyRhgW I֗$~t9yꍅiZSYwao5_ggo({{$J)p1>HooAC(lq"(&gܣ Km`7efaG6"AƲLkrAڶp%p~u0V|(i56'`42ǛD:A+ 3u1{6C*2 t)*W/D(^JS\x >Fyȗ ^|oP(p %RES@ޛ(7ۗ}!E|gTBZ:tUǗ 'D$Sy*LC\@,M$wkPbnc Jrp嫸`fƂ@i. .$ϩߦ|?pѹ6Zo!Kct9A&1 6LoD$jb'%,AK@|<}1=Kcڪ>LM}KvVZi>㾤, մ2?+c zf+!(5Nu/+8itSL?FnZ:Pof=$2ps ]IH?Q\;M:T(q٩LOT}t B*k\nRnjGw-t-4 dC@1̨E1N0=8ٗ+fj_"`sn6D P UeU7}xv,C7w$?#z얬z{$@wҮIVp 96/iE'J ةfԲ>{i(RM u^9ʜ^;"R 4Ha_*?w&xTeׂGl7+pF7qC# X|:QͦۡBK@Z[;2.n i5)=x,7OI ~ΛE,̼_E4SjsH.A:f+& WF,CCmȭ+ :v/W$Nʛ뭽%k j,̣e 氬/6}-" *BяPg7FQo.=Qmw \67}:W&o8^ج|¢ ~wRՍBIa:90 =Y`Z'5ܜ_ˑ_\n0XU{R:OSR.\ 깫',Wku|ZSVy:Kc.U3+#x J:yN@ΰL5thMmDWv49F1$7u, 0-/Guosnm]9 +8'g!I_r K^jݜ/H<"kq&$uOaL7.ndV`= r9wRx8U"oQU&P/gX.;#zY%nXL$N󥽇|ҌU02왚%O$Fo;w1.΋qYAMh`uXق~B5AA9\ϘGϱYgi恺0@>X.T=ĆRZEa3ݡt:Skh9 I^n dZ+, ڨ`@ɚ4AD3k㙯AB@wȯ`cET MuQ˗&KP]@xPEJQ#@-vK`kϻ{~i"Ua̗^=ܼ2KN~jl| Ac=b+e!.[cuHJC}v 3[ͧ~K!&^g qC7W V^Q)<0O4xAe*,z 9%)1 EFUPwɷ:z8h曶}қxn]O -n@ljk>!u~.9 > 4%kǩp.ѽBҢHd"??qfwb{9,'-9-R!f~fi%wW܏RdUXo-[Qr^ %yny'_R>矘`V#?]lLcJD*BS@#lK!xw47`b'g_rI$HNs?Qž9lᦱHGV+.*|-xS"kO84M'',Z3l|,B1$,|TQaXD@A:ւg 6 YIA[ˀc]&$Ho75N1䆒eH~HA w[Zn-U&`vWH]Ҥ]KcSW aH^ \Ͽ[`.^ۊweeMc=Z B6"m>05bsglmI/u+ . 2B5-4WRC[ |IO•!5?x]t" ClU@%\ꌫw hqǒq{xɾc! ְmF\ZzYwn&=AMͮ(|Ak؉ i}|$}_ë@lh=6؄Q\Σv%(S*D, jrO .k51)>Tbg5O¥E%\LMOҊJ%J46N'}it OuhX6-0c*tǒÂwC 6o2t}1h3cexvDm@1S;N,2G BY&5R,>A B2QJWZeD3 !$q@,וk궡6& Iq\pK{ܕi ir6: "3q\|uhoC( nFɔo󬤹 6 V},|TN/$tR*P*.܏&3no@QF|}*m9y+lW J&ߊUJMgxhcc8Pnޏ[=injz[eD\zOp˽ |14f2:iMTNoզbG6@7 c:t)0ǼwlQGP?.( )΄L Org4`*ۀV>Wc`0?VǑ HG~iov=pOem]Fpp6Dw=I[#Fsclr9>aϴ=_^hOwld^YM$ Q CpR[;9:B/wpz[v쌢@(/1g"ZQ MN/qk0T>1fɨ,;3þq^/L jzLEX Zy+ρַF&/q6 2B-t$<z)Ѽ%feZC;C^3=u}G1ggVʙ승+ 4B7A7~͑~.<ͨ ׽]!נn2Bhy 9.ξ0$;N!Gf(軠ڏ2qOlSWm2\I.%*{F*<Q=MU'\J´?ѫضCb@)zK u@Zֳ3Q7+U}(փxe 8O40`ԅhxW.a]a#I;?jKI8AYWֈ/ce _YP"Ԗ lpLfV}tQԅ`Jܬ\`pIJ rrtWkҼlphx[T9Wj~^Im=ߒ؄ =Hڃ?} Tki83P-?<e'|F +btK&Ѫ/I<ej [}R>TqEJr{CH!wVYC]`U*qbm%+S" :Y#Wۀ7QRP3=Osq{7oWp'қ3/&ۢ0ݝe˔!ܼVD+Vk̲ǣ|:aXW^$26 :igZniy/8e#Yg XtCvED>uq,toG.@g#m9Fu0rPMYinͤ51"^z(YQNCiS_`D -CNȐ0]& SaYa}BJoX̅Z@EGUycg = GAp|%bۀ0.ЭldU^*:.Y1&c=JGHhg5Qn;&9bUR:'ќFBIŨ'1%v^v 8=>IXї5&qWyvvV[E,g9q(벹!g C*rn*!ܲ6[_U`=u" uDY`xVЃ2-^Q4Tb7GȁГ08`< c} PS_  $~jܣ95ֱMHV p]lzм]Wآ*pj2zL?V)\&Yp7 VբvB {k00s2#܁'II[#PKS9KY^-s|KոWּ:e[]:A^nG"|֕;1Fd9]ɾhDMVoD#8T> nPZXCI'0NN>QJVe=`מ !+(:,8#gʉOp;@_8pT~"+*7LJnߦc3uv@ FH;k.5%g:ǸH\m۴& N(2(CV%xopn֏,| 1Jyc~HFTJS1&\=3SՊh;W?=LC_:gA>p%gf<5#F)r BuoAVЏ')VFdއWJnG|fS;I^[Qh݂C"PF;W*A𾺪㿻P Da#fZQIڗ'Z`Ї2g)>$TV /w4ꦂKo)$gB&Ia/.hY:&~! r L\N2 Ùnʘ\E痄M-,E"o*@y@X3CyvB>8LXA٣LTBP*Ц 8߹˫&9nM|#$1<):`}@\omBN3]>]"=!Xշ;H3Ûvʲ/BZ r/Ũ%~PҧL ][۩lf=Y -lͿ[GDL[HS7(B'nı(ŽfA+ݬi@$(ko&ͤ]X95A[Gy8_M_P}afw7U@f\F991Ƹ; /A)$I\WNgr!y=Z߃Nzg+6=~͠Cɣ4F\)Aq"#a\ud"PSQA8Nm"zi!凜|m($(lI[bjeruIlJ&hيNzµ-~zNv+PGzAKy`V [Z$iUFٮݣ \Ur]3gF K)Zm(݃Z?/QJgpH>6MĆH4ЊLqT,G[\X%h n83X]/[mn ;{յ'20hbKG$O K=?|0 Wp5\;|6V62*QnT:Rف]~GsgO&w[4 $ܐ\C0q#p[LRQ+%*UϽ2^gnuJ=j(|EͻeIYKiIq(G , {Qb1V#D(r΀q roz>D\f’.B#if.y7:tzrl\_7`[16 veA`[QxD`;IŠKA7nY@'OQEuBTz}v g6_}SpfaHZ8lZ=M(vHc$QD~̐c=n㝣PZ笴oG rT  7*iPC[;*Fϟ!Hv5oBwO?`M]2P0aɸ'cN'GAy1?"o)Ad8c͡pz:^Hu褀 NEKV2/tqN(yl8~ޡ̓D$ p'yl1QIB6_i .Wn*|Sfb,QB8ݖzA'MZtel{Rm_"!x_/)y $@Ɔ vmTrB+۠/theO:I(rjy҉_M 0Aє-LL7 ߐ<{KQ^P4ER8]u!U@*q Vי G#C29 Ŝr88r8i-蕫"7?{θ7yN9/W95*Fx_};nF5>>M"S~DžC&h5T]`Wn(KpNs3˔@:yjrGtȩxLlnQ U[vhp͢cUf tBO8~b+9 @*͹P0ed @3Ț ߚ|qA4(#}RWvҜ+ Z4!6g罱z9N8vrNf75g䗑d+KVkaJW_ NhW櫵!xdzd Ho:k8[s$+:^Ï@Y=fvC,^dk%/,ㅅ(*B/cP1~Nǣ7_^DGō'/_t+p= aQ=_LI@[Td$GwfS}VSBFʛ<tF@I&D2N_ GB# 4qfeK.aQ7D$؁niȋtମg׽5oB PߌINϦ8i2?ώqfUBc or^ϣz@$rk(5IWFG4{^ch֑zXVu₏kK@ktߐᒚw(lL86T:< qMMP7!]v!؋[DSq;A[Q{:rc=bXFqKҳI @ݙ,5ɤͪ;^LaVhsiY1 RhF@ YW #\Zn;egOfbݜh \XŹN.+'p,yP WVJYF4+Kn"V#(a -Iiy2-UeSĨCf7\ުErk`-ңU';X%g"yF9q㭊5T>_ՙ ̟_^|D p{Emv׆P 8B~ ̮ "'$`lDf¥R + i˿zk gl_"BPCKnD$&<<7bׅʼ)pwIە 0nuX,v(% l-2#l%<8]uQX ;.u!{O)hZn ʲ'y=9=; 7-옏ʫaYs/{)BW3Ų~gzO6.v?W,K 4Ys z˃(8KJ7QWJ#ӭ_tak\ܺX4>7(x%\m7~iy\+x*BDr93qsNd‰casmJh~dm~c>VUB*W89@\L~-xaohݽc윸OEbT7%UO3Iq/䒡GiMk3+\N&DFÅgoY *ylˮS3~ ),QoPHhU\‰`b|Rx*SK++#iclV'+"WPy>b/Fڤqɷ,LE!J&._ز+]4*%W0nOGOk#"VHܹB^?K8s_Gdog AM=VLw+ 4?,C?5~:'1e `m䃭~ dpRk{)c=_%=71ֱLf[jo޹ÞvdcQRkDmWX*1;kCx G:8fkDcBݢ"\)_Yw̰ɝzdSy'Gs [2%rE^PphǵEA YTAC&vPT*wm|<!JPsP~?PA> {|45r 7H?.f F1L?-"xף1;,Ku|&'gU~9|~_p &WJ"Gd%NGe׆F싍JwۡWi!1EF {f7?T,>cm gjs!v$8+DFuAXB^Q;ܫ4^|Q2^j/ci +v{z)I wVa¯u&oi$R닙XT>nt 8jڵE`:)*RMv2 gr[Ex~{Jv%&va;RZ-k(rDHd~4ҎP#t<1x;)܄Yquj YtIжѾ:>|VA ԫ6Gȸx9hgCel̲;\Z.vv5&2Ч@u0, `GZ403 ^D*ϹN}!NJ!"dBp"[ph%(y )i~qCM4YasHd=Ӛ#}{&Ќڄρψ)q'^0DgLPzV4ynGs;D&o-Zwxj3c~`UqOVvM<͝iڞ'{V!罡5ch*+e HQgmM7_"ZjVǫ֍νr˪%Ӆ8?-W))s~RwGATeq݆i+8f\8PԵ_ ߘ&hMnλ/Lsn. ,^^bt $mK3ngդAmMX´qO6DRm 3Ol Un$#-c҆<[w{Ap߅~lӤ]/wv&a;&2cO~cE^vXG p.J;<3ǀgJ Οv1fX,M(>6\O:0d@ȁU$8rz-@uG!`y H1 }dBvluD8$>Bp| " R.77L@2pBt6rOH_vԪJ'pp9Ʈw\yO\"[ 0w-Ew)* ^դ@M=8۝ ?D;r.8u8=8 `xF^ VamEkͪt詯.:-MzƣJ&L%7V0rCz5 5eg;) ?Y6 .'[G9Zjs@İ[ɴMT=0X͈MkXVDrtWצ~Ub^mo 2j?7{W\:8^ /+W5ˡ*q =7xlddOP=A$K8c@9n}@ƫMU! !3A/}]8anz?֨)sM<5keiXAyXHBe%õm=q!)^]]ocʣTP]WR\Ǹxjo^7> eJ2AKwm"66Ř O[nqp W.tgQSU_*Թ"Rm!u,rhJ8h(PsU,WijxA)5@v5 ^,F耤>S`9oG&znUx>a+ sbgȸ>J*hzFH\6:4\];9}|߀bf(H?/%tbD<~fO$98e5c~ZeкB@5+d5@"t|zRp\'v*D֝ 䍎ȃ,[n>4`oI'?]9<rKG'Xj׺ulZJ" Bd4׶fْdnF}KCOQ$16 dNt@P|W?%(,# 41HA{Ăv\*^$|c^jE ʮtrГʳ&p4bX څqzU*90(&w8! ߔ_{Ay0r03P?cSTO\tCfaQ77.dq+`Qka#[`.lϿzvVs, F;8NRYuϭt cS7B8+)x -?Xӝi~vї;Dj1%~z|%Lڃ e3CS TZ5W脴`vbm$ٴ1"W4sߴ.7Mk&-.%]CܿKjs1>sHIʯiy74O΢pi{WbjfH( Fl( E[6fLWaKEaRTiH*MV6]wU!Bx1ߚuŲڲ ;. Sw|TUgu_co1d=8 ɘC1z$)kI9"oĢ9}XTm>A%V 6nq@=t7-a1 qmN_-漁*ꧣK睉+HK@?b:=ۖ>1AH0~q~w<ȱdhڴF@f;=b-ҲF-SH.j:_62H2czUpGr1@ΩT쉉/OɍKE K`<=F'n 5a"'>4֤@dw#-/|m֍)V\:˔D^~Cc,K(bNHp3~PLN(-d"~,epNۦ8Z2f\%lQX1+ط@6kW wf:<(@`:ˏ|ocޤ~lFf瘍6u||DE+ _jcdUhbG ub_5U5;۳0`r#X M!L̩g$ ^G `P :1uQcYLXze Cϛ#Fչ۷UHz;Q{ZO{U4Hmo;Kʲ*zv tl5ƺ6|v/|70;c[mF.V4R!YH,e ^&>];@#`HͦhMޟ?>HdQ7#n` oQVU[ie 6CZxҌ#5kk^2S7s_5*%1z=O|VC휝RV~;Xn`זY>Ƥ&*[eїofs#L 8LS6_W#lc*f@pQ_OHP$Yk8fu$I'΅~s}WIδ~|^F)1tԍqy{AM4c'd(2ɻu4WicT;{I5tLmpJ6 ,u/Z$<`ߏ,[.::G?$a~~6ۂWT|j-]6DExSWo$L¤v>iT]K>m=%h qM@{yǮ aA,Ifvݼ*.0pLS+1 str-68V#8uI1wJC[j>js [H2te B]"oM(r/hpgy߳jt3ز9}-}HA鵊 Bmwö. CiJQVg'?= Pl@IT*H0qVSf~= nVHͩ{"9 y5W&Wf<ʧwbV$nMnK)!Vm i> ֠H7QMEx.߸6 F2zJ=fλR6 3'N0QeT[w) KLS[8ɠ^+͡ʪ0uP ow}K[u{trhB6J[񍀁fC]|9U{vۻ"n+#ݪp\$/ami|"͎ |-ZRJ)rùjS&yE#>gPD-3C"MH_>خ(OԺ֦C-&)'xR_m8gXՍ4vBZQ6!39AcIq9|P)_E4zeL-W_D9;o5`ySݷ TelYnzq o[H* G_Ժn/K~rtH l3@|{\[9*Kܣ(+v Y<ώ%bH z܁c]B0S#[dt9;5pj-ffѦΖ U:f݀ժTN5+teKo:@Dw_ L~]d7ްk^u(9Jm)ҋ=\-#8׃L"oPn'}`af# =-j͉bo0nh' ;(K6BAMhưx\s˒IpL-Ge `ʜ_d >:hZԸ*։{?*\3ƶKRQ]5*^܍&:= w%.,t Ȋ:Ko476~[O 2&6įY-s -.s֞z.rSq- Ӂ,^^.KJ#},*`KRw& *\Iќ7ewv #V^EEB) 8z85]c,eAL~}flL{F(r>fUEgRv:vΫĸt>hpGoM@k$m O7ќZ\0=\GAXnb~m(z‚:*nzJ]0$IX"Hf"0̍QI Tu0۔ۋ?UV17OI,#eqt7$c7:~Ƅ %:EfnP5NgoTJ.e$'HhFM!>1JOPBhsb*WY@Zв@mzύ$3ڀ)כaL8q)ɹfABdnDʣgtHh)+E^"1=rԭ@Zi@[vX95-sSA´^?\t"^o"(SǾ.\Ϡ"2Qn{cໃbM m'Y*uYlFSã'uLkÆs mH[*ERZ@;sX<@O#ѐ:_,"70L fcl[PO}L݆u` L!3:3&XOFX=a (!H!ؗ/ED .fm d!Yuh~ofD 5'I̘gY9&"riyE&~V;~!QgLU/gsV0 UPRx% 2EhmڪJYhqxBWclM_jW "=䘟*S˩& My ~%TC%/ڭ`8AǢȶCHD emdNg{ 7QdfxG_mb”߻Y:N!}BgB"FN5[t@f)*m]r w3WW@I`\.OIXI#t},1UĆib_+oˢ{~'4҂|uݵۓ^&M<,zTrϸꡈ ObjԚ. *`ˆvsvEga#t\|LIkmykc?{|(ߍGE^݈ZgbmA{ޅ%a31^Ӈ@'Ҡ#h,་ǜKzg@ŏӼȟtƊutys=̮). i#h5R}\:@$`m?3䶏grsG ɽ-dI-Pr#7Cb')$LXS29myҡ ps1+E*j\?sa]+gL|q2@Ayd0!T'Z&?\x%&3=zJ:}**' !^FuAMry͢`>sbC/6UؠM,X5Sn̂lSHU4,i}-5=WSfnח̆ .Y ٌ剣 *9QeXブہSv&eV>Jͩs;C6^yk̈R=;Nb8;PJUm/v|%nҦqV,h?GSF൘.9fg!LLpI dAl( q5޵ꉫp:=w"X6 ӄS_[_'D{vpFX"a@R|ஞ'X_eM}83&Z!2 \Oق@JFQ7i3}6]~;A/,P[0Y6 w|HH-Vb)TEUBтel>~yOͩ߅P/37RtЎx ؓ"tΣԐGt 1`  #$T=D܊t-νR`_T+3gך{4x3J5gGn -R8~ue@=:!wx~eéJ ;֚&Ӱ+~ zb4K:Ⲳ$u Z'rf!}#Բ ) _I8wn Mx 209AϛR 9gdkl-~s"asO͖_ ê` g:UL;D&U+q(:Xhfoɉ[A e>9kh>p" ؤH4Ggycɠh]v?| 㨘pھǰ@>bEOӺn-] Q{ ջVXcn eS 52KǕ݈`f'Y%-EHNqw%2Yoټ10jQkRMшm%Mx^P5( ط*#{7&]JM۸*>eo~,uѲz5V'ˠc#op8˖GbTM?pJ_\q0ŭ-$ۦQ\Z)s-nt;duR$aHW!Le3B{(Yc .;ßC6SeUqfmPDf_Z_ܷ`ANcUr*Kf*{QuF;W[U:֖>hR)3Oq Tb)ڰwYe %NRKF+p|y De `\RJ4Y !hn'\g!O^M9xVҴrx"ы#VUJ"np=9155c5tFi"*?!: 氬j4˥B|zB̫]0ʽ22reN{I4wl "0[.)MAX Ph[fUȝ}6<${AMCH\o!ښT.|#̚Vi~TglE>d`]Υ߭OG vX:C1/Si=DdηJ)503Kyso92`mZ\U{@㛯ShF="rzᰚaٰa'w«9d-cuD֓+EslWR!?- C1gd~ ~m}(v\ NyG,_h=V\Onh$'*^h.Q/򊷢< rn /0Z ~F/x>~m "::{ggm,I8<%R֓? `e;e2NΡUUW;=f\e@U?IӬA{j% "Ȑ0PPUN }xVSXb_M<Me~̕qêwq_Ѓq`?GaCQ'e(2z=yxZ!0Az&T4 ,j- 䰖/o[Н_G[8[5;7m&bk:^UŒi'UA](P~*&F){"D,(Ox_Qm!r0OZf&5ʑ "osĺÈ* #u9A; P:9#nQb^e@97SF@?w"-@ۇm%s .>vR<;Ƀ\/\GD 7X0{_sϒѸ!Z ̱;K|A$x{u/ 5GYs,7KQ8]vXi + a Ň̩mJxYZR΀q}L`QTYHH2G5Bd> TTDwLۚ wx';vƯei**ʵMyZD# NDM.;E}Q9y&G6>(ygSC |Ex\ɀ!N'b|>>I cln'?PjT/i`xDɀ~.W#c=1(f&ưDh@ H Ǟ2nvY]cmK`eM#mR ZV] ҵn-1*C  50G&Jh[}*w~X߇UN3,7jR,q3w~Ld)p<iҟ>A 7JGꗞd-FHaז 0+ѠUJ Q)U$UkK7i:s;xO|~ J 0W"S9¬@b70~[jP B0𪈜g4-vQ9{+”i]4)A{ۼV,Y\?Mco#%hzL'D *ZNa>~X#:'O&=pAtΚS<bʳd* Tʥ .U/ٔA?m?{1蚚>]S4"|GNgK٨'4`dr!u_Fbi+rߥm^L܄ C4+ד7Qb& >nSp #ކVg/;CXuTM/9$#ԙ>-eBjUyHz:y*rOո#R ŞL{Ϯu-[`%‚CӍF45:&{_q풀ѿ,-nl4\|XcUߨ#8oOe|,U$ ;6E`\,Y'\S+͗uJ^ peq*}0_ O_[P &2_ZCP}S5<3eMLDQ .2V[%Qd4Rj{SeG˒\2j3>d"I9E;6¨u[U`kFI0 V`a%FmOY=a7,\>nC⇖ iܮJ̠'q_4EI,TIQ.h4${=c֝Īۚ\7tSuLc ɌȖ뀩CMH@P kA{7qI~^\IjY]<3__p|BA/^Sдf|N lPkҀ ol*yd`Olo׼dIeSz @1s󈌮8V.hcvqpAS%[R3yƿX V/`)?L̟E㒸I:AZԎ95]WP&H7F#F]-Ź\gnAhCKͻcshs;0Gލ)kҀ7xpU=7MH֢i=W@BX,1DɤDE_&ëY ie8CoqP2 #u}He(Iv1K.Z}/L3|G,`X~'=/vNrv>Ӡ ]lO悷da@qz#JJ) g>Wa}2w^9[%nVv&$wdX#\`JTY $|>-Q⫐?1\q~/,DKA5gϘ>F)\q2izVs ai[z&ɇ8r2VPlxp,̐-"'3y[Zm>k~;=j1@ a xWJ 7P%#l~eu.jXb˽b};Fw޸b-b`|+Y'$wHI08fBW1/aAT,$\z_*?)vC-h^"\MA腶}3 ;7  _ ʋ-ƤsVCEDzVC(loڟLe!6Ê[ꅽs# ,޹=+(nӐ R tRZ]9kDC Zwom~G}hecc?uvIdWpO蟠8w˘UUi!,b ueWz9gT5[\W>_HCdjo{AByP?V(d)h`7%#֎6? \ܷKt2AY;EC `2u~aj)ӶTԌvϲzn'*m&.K؎W,{k&D@?@991^.~k/&Hg9%`luO->Af.n4Ӧ l;T<%iV*dS `'ݿ3sYrŊٲȚCxf8)}s4osVPiѥsM- ME=kAf_GGb# fr} %} v~2ײSD4` >۪/٣N1"fFQࢬg;A/sHCoFJ^jGV l?7T*H b?G/t}‹ōl!u65 яfQ*)ͫ뿑= ,QVK17b+ZgA/tjсv y9= yv m_2 mgfwȥcO)FjRKqCRzƗ'Uۦol>hBL1ooeIhן;7 ~@.WI4ּFv_*;}wGJ{é֌yU*$>5 G2u 7R .S8Q/HCi{,: `*ZBnaVby _wn9n PM/"=!:9с0>s0L XfG+Mn1 PӤ*q U#|ȀRqvjzGj3 s ^Ԋa otj 443)/P3\Auapv Vf6齥uwU<( PVZnicDS{pQ)>;bטtc9,99+}>4^jAM8BN=x;\] KqX:! 'YMu/#jBQܿA.h$&Om,hNWrm~x^<1hi$'ޚi0s|%k\-47 [1(]@ 9p sn?{JG˨SWs;,-zsii@yDtޮ799gcͧcx!]bq-K1dVV Nri)'^[dGSnO ZCU*QBB b(5CE3}*pn{_tu6Hˀ>;f vn n 1#PO]]yQ&Щt50rL+~g0KP3pcz٪Ďz(#|tvfZRUhY-.78p| ˧X-RtcWR ,wժ ny A|9tRS$1@&2S.x.\a6.O1pȅzfKG,8!ҍMrNvxKgYm* {xqn#g"~ Ԟݔ#f&#k@ c3XG@ӽLMWEPBV]!_eW X 2p PA1;e9V̤HW$E1CFT` uIrxa3= U緣an>tZkcx?`YQl$#,8nY*N')L%b9lDՊ3olqui5\3RҤ䨁Ӹ!8q}dnuK1cWh$9N^5N@=^/7I֟d_4mz0D=p~tP>%&A>Vt Uďm92sg%[Jҽ[ߣȦGcL|XBmpDaluV}q!RJg2C"ց1`䓀 M1D45!KL"f%vӹgtߏ渷_'9oVnD'UuπiP- n<=86 vEN'C A'!zFl4H>HUaPH<3K]tK{+)I-7oi ":Pk I' N<'`]t } rR'eCvB".GPm !ᑇsw=!䴜mvǑAZjSxnxj@V"\$5%7l(^FfSFtSu^)Aƍ6<]uJt'Uhb$ˆ.aܽl@} `f{:TɯiQGJ "yq}Ȗ&-xexut i _ 0\} j~^Χ;U,oZ1#}5⥨?!2鬫0DΟâPSOEw*Ǒ&hk qPOwv<&JrtHd >1yw\>D4roOLfԬ@~2lLċՋb\ήފ2 )<$=]!8OqGr\Y[w1˛0CujGUF*pUPAxGHoKceiObF:h'-Y→Y>=P5J joFH9,[DP{mB Q9^Ԭ.s;][U9{FJJ=y#^CEg k~M)o9c2c}#V =+dZ8ޣ5P 5+HY׎ŷ~ƍs逪j\a q7Zw7))D"!ppL%aм^G Re\\$"&-uOG0+uό-d_faSKm&F*Ɏ )ȉ8Mr~H8@@ g0(2iȣS5=YK(ƥٶ cq fI ; bG$+orLt\&X^J T-NG+=~DSSͤAu2E->& Q>KƒZm쯤ah/.}ly+*-(hl Q"rnqZApuhyஐ`> -^s~/_:t&eS(2"/ }:]@jC%2;WjAr} xG#-yn'ڦ,z,3z l3?y_"ue؅kH'n&*i7KY"S_yn}s+Ɛ &ΗoR߻nnXܸXuDBpՉw P:/bm;O ~0\A0lWׅY'gG53kNߙS(u6O[jg*V34{#~A%Xr$0k@I`r}+M-kCAӰybWCoq_ZBo]g#aNm(4R U~"9]&*/V`.? 8u ۂa]1^!O7V2ZϦ;2@JB+~=s@mű$tTƣwSSĈ1 %NQf++ _SʉďP4Qf2g(8Qq![ί)&}Q%ÌÝ-*k &kZSaDKn[BWS-c=C&I[a78;:q~GD]it[p <_j;0PRe;p' }ե_1+/ps dm)K)u4ayDZP0[@~fY8~]K"Y]P~3PbDĐdE:c?pϻįcl(0n>@#daf?A#};&!)%B⸨aDQ3@JFVȉtPP,+%kgCړÀOm1Ӧ/dL7U"H25VU(r:3iA[{tX|*>+UK 2AO!c{{cKl]zAB|vpm*WFZWCn-*:T2[MyKU~/>g%=r~ Igډ [sa˘٥~"lw={JSIYI'*Ξx)k> }}_NekZ}fHϡߡCB/ @[6Z9܊@5J_5 ǰ Vu f  >Y0"am:|qrst/8an0 =8.o&` [**A=n *kmgRS5W4mk>Fëv:kqF oJ(ҧS{a @Su.~H]yL=UݼXP9my1a3e,SRLL'C<܂Kq 2l]!brF<]1iEP٢ lȕ@ZOtE:zTnɄ6yNsRbYM!isVʚ ND|'uS mԁ 5ǩKUF17%"} .V:!R9Z҉3feR?蛷`ˍl섓jnv6;xAi_%fE2;QKK9b@]#uCz1ٯp6_Fhk *^o4oG=軔6B*y歀TE-F)qˀFsj yoR4D'量ǬCƠuЦ&~x΍"{dcc^.u8ezK~2mڤ:s4Q^kIඬ6{}q^=X-,MoW4Fv?QNCCRG.?K:|c0+}Ύ5w4i>'xB*}3ze!r>,E{E?rb+-|F]]14p%nG =d,X̉g@&&z9oĴ?eok)dN)hsp$6J!T(ޙV$g$ B㼦tu'-gq3R%7& N+y5+y"% ?싨Ŗi]9;fSSXlq8f~dVQ)+H{8ls xrФjaf3fҭą,g0wڡL;: !*K?݂a9S%&rڋw_Sͥo;[EDa8$2M(VJEȏҪ*d.+Ϛɀt\YK׏; m?e㳃QgҫػZ}p UyHڏtU}QOuFxu-Ka9[>y[U3 @T b7LN"K_Iw]w|ȌpW&?{؛Lo<Oa& 킎D8o iI ps\}]vzvƵ(au 1/K+>=rkqpBP4 $)VpRe DHgN਑Dj;X=b<R&* *1%%X> 2nƚq䂾>BK7'.@z9tȨbe 9l o7k/ޏDb<]kEiM_{^j]q4@Dj,[6-д7ݜ@x %g 猯}!1V0 4H&>H!ĆmسIdsإPF{`$Z?Km M ])3ߖZ$LscAT"U~4 p_-2QűuɛhLP?_[bB/n&1ZIP".(V/>XEʆ }*EJ'.-Cv8#њQ]\hSgPq{UA mĊ5 3bG;2,eX( o2LRЫc45$7t$VB Lür\U8"k"W#\' xPD}!ZZÀ]LW}`ݔ-Ipm\;zF3d"C^2!ĕ'u?fȮWG/)R eDx#" c(KÐ\LrS{1Nt+a7U8zg/exTN *,1Ho8[O&ϝQpfV-[ 47Ie7̠uE㵑 zz0>s@!>C:/i[7A 3BSlhG$׮ ;)JvUvL{57 rh~ĶJ*e&`U⥖u&ɘ^ܺ'B߂QrCG &GEV};9Rյi:Mv*npR(A:rN-_E3E N}{Yf%cEq }1.Yjd*W8iTh q,{w\72+ĄqZE9SM)lur(\Oqo%ᣍ/V-O8F.#}&=;ArҰbDNc8c՞)7y" /7$98g [|7x[3QM$>'ZŎr#1,_j+ezz2FMa?2v\oL$FW%]K 2+ U=9!V~: s>>$$:FohD>1KƕzO%va6Ɵ > b΂(zˏAam=zsF$Ap-ryc|=qgrE\dC"nang܂Q-@=B> ɹN 8*.G+7u?͇&JM7Z qeƾZ2X;j_BIPFm 1e&C" SzK#txRx- (05 cziteݣ$ @ܱ*zp{ߘEiD# ,~0m'8 f@zFZuI C l(L?4wM,Q<%`k_.c4/uOd+jL7 *W!}p ;l|\8G,R\u1qgMu?mK /cxzoYg>6 )ZxwFP !qQ@e=Sھ@6,jvNqQ1w6b *7 'Ac#{ 8uʓj|l%ٷ!ü7DY*3N}H.X"s']7dp9YŔl@CTO r_NK>x S{"O-D19e<֞u9dJ%yΘ!?p+̈́Z4[Eߌf=(<^*G %x!5^a %88Vve.caHjJ`j<]e.QM9LF3su^U&T98ɷE#RY$8܈s ı'_0duMl2 8j'2IωM-Kt1ASُ7o\MKu@`B869a^j ' '0 :8'+-P%WFQ3o!5':TϨ[x)5 py!Ju]4f}B4tK/yĔbmM3f9߆~R U7RDy~v[Q-j9OB<ڢ)eaڛlI;~ZMScO2(c ƝJzrPMZk}ݺ }72O@XA Pq㎴=hVue0HDm<-ɞR? T QsA㥠H<:\a0!8ք|$ gv^+6^xeGxT!HSbet2//u숏Kg̊͸>7sӈR,-%V[QFy7Y_M7'vIqj^'层1<5Yd#&֬TbˡZQ!h&EsVn*UnWj[# `KMP<NobWxZ)0#N[y*_P q¸O΃v]/|u:J8 fB23.Tgġ۲p F_%ܲprXΤK wYD'̽-jN9e&Q-i¤Z$]/И5wgjNyK>7O=V7l wPR(W ,*hExa,$cC,RǥߺFi7lja`%ds& -HXy +33@vߜ8cU\E ʞ+C?8V2&MD~L[ >PKٰwf=\[Hچ \uÓԑu'v"QeF)V'_yM&A" wAgGVu&'?9'Q3 bSn)`{ɕh]fժ05+_xs@ ^x"\qvnHj3k:dEL[U'u=eķv'=tu7a>>6`$"/_.ݟ+ob1O&43U }~!4Ma˂d V;S]MnhQ*4.k]>Oe\q]=mxm=bqN!'6H6# YoU;:Tޣ;LG[St?nKy!5ϟ 2AU_CFnHT5VUq#~3m|z;ttTD손@W`G3E _ eX;>+ 2ڋ *GVYvҲjv2/8)A(u4)&#sn4; X'\D>Q_g jF)qwULJ 뭿_Eg]\:$^Yk"AilݚAՌCq4V d#Ĉ>ܷz]<Ѭt2{}T.sfe99e$.'ދ ܔ/̫Jh &yR> ^I.7x-@E8p; {FK:[oM&iK0{D'f|7Bk`R2CFzl#&Rw/+b2{5 ݶ$Q/Ȑ0ϱ6IWo!py=,sAN'S[vݮ,*ſ~sh& 7T~iٰzwD<~b%9p] >’l24V?2s5\k-#vEE_*EJ+yHHe.֮DYP:on pnmgQJX~j%}v.+#E1'~=O$I[| Q?$) )iYYFötDIh8#z;<B?5 DAۢ ƀ@KT1e ͐5ڷX0`/ aaH>BeTDCН%礋#F_Ui0lV =^D?{ԙX]N";9KG|CNiMҤ84g,L0 2l$qr\LGػK?PBQG#ɥLz',Х!2>?Lf@ZqG4jLл#:È.M\˼>x={ m9eR0֪N`?\-jaO_ˤO(yirCpN4 7rG~+A?ƒ(=yc1oמ,}k":(g_ԒW=˝xmN 1sx0S) kAB󅣲FpD4Üʠ CKɶg6~?B 0-9ngw{@xOl]ӵ$o{ܜm%Bigrב}>?TOpc ȨL6Εj@|O;N2/qXݽrgqyϟi5Cg oיUՏM1vO%OuUϢ~> .o1`!dE J]h8+UUQNS:UTKÛ3-GeՌ1d5)Km褞T$c;-+#|G)Nw1A!pUMTY@Ɓ&s X+Aܢ!tIϘ^r^;w[mJx8w+d#9?Yհb d^.Sq^?fʵuYH6T At d&i+h(4d!gbaĚش\hSZas6<Ğy`_DQź "Uދ7rS?*hFJbѰ:-L?.Y=Rex=Dv8dn%Hx 1ku?i1s;S='B)2d+a<)F~Y%IB,Jg$ÒRTZNT?Ҋ+im#S7hU^]A繯]sa$0YX8~d?8+8/A;ď.WCPtIY*"# .Om_[ 7 w^ap:y^o8OK#cۣ1ܗNy9N͸!{5 6Ѿqg]5~uڃB|x&{.4筹CrulA44fc:v 9U.m9ievlbh`j"A2mwZ Kpl Dsgװ?}xXz"72}oQyL:A2~ͦ co&$[vδu^Vpj-ZG {]cE1R%eL5ѣRh g3>D9{(qnl A$dAǚuQVE $d`o$Vw,ٺ7䧁*^"R< Q:%v_Fw#b؍h T|_Myf*T W3g9P&M4> 9F {rsNS@/b;Sl!^N2 j9y-~ sd%|xJG[}Bv'H +anJkyu'D؆6Jhv]Pm`?d 8`;CԱFq,;Rczn\<۸xfާ2Ć5M1'CYBq {u~*KJm mz(D3cٸY z$ƞx\:`-isZj[T{qw+qs$+v1SRe6z9\J0QWip&-A`\DZ5"]Bju8}ø.AsG#l'֑~ÿC\)\$$ r]iW@:) xdMKF}taEMB]AAT6xFEjƯtumd{okbӴ0 [S/z龍).VТLmn樴BR' QsRfE^/F48}̮F'9:lgU孾wE#)(_Vp^"J*$ [hE#+ Z0m0};<75hp+oZ`voOkt96Ug#.mdziU0Kh!Lb**&+uά+=WAM 4gqTGw ~re0A2|'5P޶Z?[X^R,in\#?-f7u>1V(xO umFt(f=$Z,(gKFD*W)|MGfK+`IgX}Bh$[!ji_g/8R5| jLFu,ci4 8D|j'ƝЛ:7>oa;5 F?XnMlU;e;*,a^J8)6OߥR e*lm%S toMkHK!lU? ]8]=~ s(K ."HV0oS7 i1$BlPҒ(}e@(RhW `':;`f2*xc`Q7]m0)vN4)LDTlf, .*\KsoE7Rc(F͍1O娃e1n=Q?}Q_ igًu|+* K+$cGY{פ"HԻC` }>#k%!FSJwQ mM^ܝ`y-:>FJCG?XY/F+ZH'h=8^ 'SCu\i2X)AA82Ow =1;U>3n39 1BK 5&uhyZ`DZ I!e:X g29:N5Pd;DnS s*igm@pυi5&lےno%K7|U/$̛Ψ,enb;C̉w' v\{BC:w[6HK~ҙ)#G+di\UiW{(zEOEo{q'6$]LPAZAe|y"f""q4yV"!fqx=(O4/ 9eR&ˎ[mt߸!Y|"+wVCb(Raj9aұq!&~ki!aDyۼpB3 ~4WOM%Ur‘@ NKP,m", K],cƋs^K+SB3,.5.R2] ֹHL[]A> ٪;el!Gu3s_3k<Eiaf3j fR-~j+ NsyD6$_d32IdY#|e=[ ˾U7"=w%y4^S>Az3h'M|5SnW`R^!8r%Ic|} |{z&ӡ!q!2/|0y S[XXƓDBoG5iF:(<'`Dc$sf[fGݩ^|7N@%$ o+q|MaHõy}Ql0>0Js|F cL 3;WZa('7 GO||{K<eoKe$c8|[ ԍH}OZ yԂ"J}*:d"e `YêNǎq\бh8UsP;@U0y!6\b=Ga{icG$OT_-ɪn7գMmf?nQm; ?G?<ӛ<;D9%xTT/B:C(bpLlَk:?GGi)  8yr)/gX +Lh!`5r/h /39ɶz#Nߔˎzw؂kŞ xG9אnCH of"x>%r┢3oж%e2k[itxs+bŦhݹǶ vѯE??B7N[2 (q*%^+ @fDZtt2"s.>\ߝ h,wnr?@F0nYISHV$oBJDV(>W-*|ޕPV)_i:v Z30Wtev A_,SwI9ؽʰ[-ˢ'1)e >1>tpAVN>(\KN6֡~S:T%~_ۮvwP΢23;ȵq>!`/AZ0Ntx˛!gtcz힬d{ ^03\,0l>$4=<:37C12Dz'\(^DM&kI JC*֏r颉ŽAoh!OG*4 8Q#*zz$7 vԷK 7W<utiF"z/zh+2HgRt\ 3h>e?Bdnh[:TOLh; q11B)G׏'K81Ѯa(mXSv,e#?| ɹr%RcSFaF+pWFٌl2,TW5pO,PA=$LPȉ8OGYh%ɏ(%"6iW<ׁ\րk|Sv;fB(_ʦG|h$P ԔW)|yi^KǒGRT{ ye"`sZ"Җ ǘZ qVjѱ;Oc$(HrSr PH:U[畭0KDiwfA|26@Ci&f礚ڟk%($G7=dɧ-(:='͛ \0Y̩ +F dۻ7Yal (:o-NBuIl%_%=g8$st79CHĚ7=+T*2ŚOJdgˁ._kS>vEՄ^ eN܄18^%n{KH%WՐTIrho\9'U*`ƹw4 طb3fCi7HB. njzt;#uIqz"RYl^n!yS MբԣH9cxVJ6]fr+~XSzn(.:b\#ړ}ru/J1eǀ_-fD)ɡ$ W#s<ܐv\bd`ч8}TzXWyǹԉWZ nO^A;g h:RJb٪%)SY3̜y,3yM:eĜ&/m{sp,D4{edqHhI0'1[9l9zTzɿe,?mx{ܭi2X:8a0nԆCG1hp{2gap%i=0A]֢Ӑ 5seB΂.DoY9AQWvziA֤hI&f2oWęo kg khU<iPS!e!LxsZ'ꉝ#tN0yQ=sijفDk&:1m{2f fy9OBiU,kxwl`Hx4)oK2ٴ_f|բK8ӖgK}f{S)^, p, XyMߘI_`WV9{XR*-96zGr aET! &!#- -W=1H1~/-f,n3 x=!aa;ҫxO60_ L`R 񤢜]]62K<¾#!ℕmxOfa6b(VU~ׂv|ls P@rxx݉}EUL-r)ap{{\ڒ yust/4Nh.[ I 6GIҹ$- ,vIU`b5LH7slfVhX<5ys~!H}bP[|xi D ]\~޻$P~SldU389҃9n@T :+=[iX7LE-9+shؼ-[!@ZBDTV;]#-R/ :Bq.8;b3-^X:/,!r>#@ &D2\|;ӎ,{utop 箙I:cqJCG-Vg'>1q(Up~\N\?ۋ-m~G_WL^%1v.ZthyC{u}C=6. ㉥t]` "71Z@>uZl@pMsja88,3gk%ܗ8snP+1%Ghh ͔:uO.ЧNQ5|!aU;8N j1]-^4pOǴhrΪqcl%J^Kt0⣜&dtI![JDtl a{Y⮧Ay?bx\@YL=\ '7m%5٤6;5<1~VeefºFcEnB`e]:/8JCLcY2. x'*)GN0;%V_g>V/5FlA#[7=Ěhxך#m>r |[5}ʣJ܈E!cB1|`")puRd De(B}@U¾tAe: Rw$B\ nA{q*(e#zV>E`6Jߊkl h2O@C횇R?VV̕Ϯ?#Æ {Ɩc9^vN>.ywm~S0X?DHlPxpshśGKu(7a^3 kcB.o 'ވC2 KH<RāUuOrÉCc> 1'ٿ,L}iYb[l,9ˑ,bAUwu){<&Pzٌ?"E7 mhݠnNvc=ice,OA)¦B<8ZH?'|ǻf-B}jl|Ú9NDxl39~ 3X',kdQB P x$ʆn*˛#&wOx!Sf6T[нZE5&@KB OkFX:^!o1PëMwPiZxJVwޒ s@{GRI[JSPE)-rH.q3x'wܴMUHࢁ4-&cp8ha)m"罞D8KmG*5_&f]Sպ$[1sXZ&I:tGlAL ɦu'a`SZQ ,u AR[7-UjaDI? ::&D0 oG%Q@40_~oP*Tp2;^)rP2;(j3U)Y,aWF(&h_'dI 3MB35ru'Ǝ2}e”2mz, g۪`4js ?k PDhy>/ ʕ^kWqkV"S31_nv53r>WfI]k`dDgGC vs~hV_ZanA#FWE K Ikg= ƾZT^:bݔ' d8"V&9ȝv\G4 `s^3o\-Gh>TIL֣*1T}SPTqi^*o#u^FD~%`vd02Ke&y <X\C I͜xHwV GYW]ػjylj+}Õ(/pe{s9\̥igL`EE*YLE>]DQ~8RtoGC[o [ 7;tkltj\:PUpVy-.5-15>A&y$`]ٞ3>ݍSҭ@'IcT~L/Bwx$ġ [QlSwGF:X2뀩TPm;m}+$IO#u~~kq;2mTl|k:ےCw**e[.C]Ӳg}`PRak`W~/(յϾczr|W50;?S^xļxǒ4`?t|K?W,Aŧ)qbǏrS)f.eGX"/}Wv{;QP@Ӭ”dXsT" FR F*C߅0dî+h{Z;,G"/z __ 5C&ьP2anG k,ӊ۶99;b FB|ːwgCr>FNV?¶l;s_Pɠ!\"6f04'Rywg7۵Nƙ`UOG9~])|9_~X45mN3RMӸ$:|v$ndhdGLq-S(a1m*S H%i ֘EO.Йpo{T"ćIWGe4ݧ5BNMpx`DX)sXj4ePsˑeEcm|hlɑ֥ckonP$z>:f?0"ěk{D\C8W3Z͆}l[8旝SeJ&}%6:K_*s)W^)YdJ(4Z;DڞN+_ŊX!R9FEQ 5qQ'H] KTj䱿Qև#( oMs BOy'S( ]ƘA5Dutf=P> ؟9z ' -S_EvWOOdk[..}II:U3'@{g_Z?/>A$?Dgfg{-Ɇ}3Z+U>gDAoP 30>"V6dgmlQ\rN``_ys*aW\|PFbh$~pX e*x·7N=hquϋb4"0e=|&sW 7AbBRߐ Ms7v[?㾯. e! \}觵ϥ:}6R|743[CP,W]q wlZ2qa8ՄS_G65Pߐ YhjmȍbtAj0'UKa<#(]5k)4U62yLQVI' d ڸ9@5x~V߽44MPssc>@@EL4<.Z,gPR(9i]J&dY%C^ `"K> gm]wclIV[%|m %0 W}\8B) W\+3xT1o:x '2^KO Y[Pf);jg4g;Ƅ[J%P|r bEP?c&X ՅR׌fhPNHN֨KQ[2[PH}ƦR[16!Sgs3jN粆xȉD zilVB@44]4QbjH|LFe=?&/:A67ڕOhya3@GUk: r)oE|iJ7H {xΣ <qQEUP c@x_KB}#6gO㬉"?㶱 bbGQُ g14͘4ا.w@jT3[H݄167(FC?]Uv&!Fڍзe9Z3KVhі̵;glUE>k{GMBro>(oIx򀼫8)Aր:zsẺ&9:GYB:MCܮH9 CGzY3[o AQ%~",ۄz*cfޝ)0Vzy|ݒw6$ʊg*Xmq 8^cXEvb>3-T -#}pQp Sש|zp:RwV)ުtʍi6>}փnk6cqhڍMi+j덍dU[ݭ(l_OFdI1V1;10M~DS~ѬJvZ; -@OI}fpL>;ďY"{'+:q${'z_zS[DmJݹ=aoJMkkpf7?!cw^&$7+IH'zGeR5=++2u[TωNA/݃j+˾GU,t|sa"[V&-sM~̆댭$7($Ln @I9lB*S9n墿?݇'M=Fx\-#O&vMxby'*ul-kxv !DIeT%゠jMi6F5; z8*8>oTR,ZsG`'A a߈)N?ɓQ&pORpo=PQgxiH)$ǩ[/ (f()GbDz]aS#;\g~P][>|Op\A)xImp]đ6xO6@.)}iz}VbY-Ć6z\ǖ2't# f])+*3Xbdci'EܿDz5y4%S}G-I T/A51wlێ^nnhx]`05:!}Ȗ,8EKI5b~iHx,Х)#WPS˸HefxFmC&FMrmX#&:ăŷM*I`a0U4BbEq r*fT:7߲lwq}@FB09Hu9J'RRhgEEo :[AbꅒiN747MVdz O4&$RsP8oP%~]FG UP}s3/xJx?E>hu^ౙ9 6>6SXP~{(/|p, r7Ćb9W5 s$ z >JW?Kg^H!EJ"0Da.]A±xL! WG e~xUM,?y]W0`Ϊf+=8h׺< }߉~r3<"a#ĶO 8zF>^zʋ,lZ>51_saVb[!97;< ZvH"yoQ(aKdsNT$?sV9MB].߂n-X2Ffm p2_5taMX$`RϣJµ?D89߇{pw1Fh:`m366ί=J f]dJ*nd)$:gf |.x5q^AxA|'}kUMsZ#b, ;^@gk?F;/.flAm5TbDI"*KVL@m`Ii˺[貱A|ݢ,< *%Ѱ0:g[1e qUt}`N]l _ 5zȹSh}RM" 'yA x$%~>~m޳`ϭZ=}=V4Ɨ̊  sK+G?$Mrz*lddmI SWKKh2_SE1O*q s1BOȹ:zTczHEPcD(&썼@,peMUw:n[YG&-UthxB5T v;WN&&:!kkKwFePEޞL~PuVQ!DRxHCL?p` ۡ/&% i,Mxr: 15aDkQW)X9:ϝ܈.#ZfBȎ!'Ł@?g=`5kh܇ p ~;TQ,Q7h1kck;(JШ8O\ˈi6A]8iGIhBhr>L_ G\ك(:yJh,pROW93;8do%9xEΜyE&u@$El&M8H*WYsN#`l3uLS"twg8=QI]h8kl'2]8g'IZdѷMDHĥU]Wa5Q =F@E:~噵 oj=ಥx <0.<~<O*UNُޞֳ~$i֙vꊯn&`s=خBGY'mr ^q@պC_YfP!ա+3cQL7;4(2+?6lM/d7=2ji ;2G5 x$p=]kc>2@`,zϕ0-Wo F ~0T?/ -8%%ȑg9 '5pޗ\}F‹9Fq 8E!3p eSNzrT;:FDdCpCsJ|Q%PĂ~`E&+= /ؒ5RDž¡LyTXg{aY9, P^%V`}3:e{8ţ9jx-bdEӦ[尒KrC0#4w텺ł1qtd'2k(|<"5,FW{lVW8ݰc҆vp K&Q4"^пs%vdֲZ\NϽ`,>c)~PȪcs̈́&.NT`-$C6TXGbە8_ U2+o~'l5 f8\$C`6Ukgr`Rdܢ;AmT~YޤǟfS*}{o~*(Ӂ́tC눾  \jOmyhP-ͷu(yaP4/3dK`5C+g55'!PJ0`a"rG{V>"X /WjFp iU&E3d5>n@4T{ |In_4;/Ԝ/SADw{]rk[̤JBbedU>1R33<"%FbjAs-y= a0zBNKvfI˓W+զiPttzV _} Sc[fYp_Xi*UMIԠE㫊!x-trY G( jcWU"֦򛾑|{4/֐KH~@q4sNBmO?P(>+^'e17$Op1Lx ¯mNȇ-Q-CF'^T1dfEQ] 2P@I't[ݤ68BgO_HdF v>^`w2M'E;|Txb^J8qi9ς˨l&1Ox*="曣HPҊKsk^%Q8/?i  h NfW*3B1BsEK.wp>_>2J7S)hm! 9y- \ym 9b ]cbl}M5-6U"=qYIUFgvpIۑ0ȷ uށ7\ʢP w|Ff!4mm"!<^ԒCRKmTn X_{?kM ߥΞ&FM|a= SyYUŤߌpQJ E& WQk8~s0d ZT3..e. ]\=-,YjGtE˓ p"m1PۢR SE0ͺ*w0t݂HN0-b]>|2&i!9XڽTt'$1l+j!Jnnz92z&Ǽg H ;CEy: EcAq,8ӹ䢚)jF{9Y[5a1 3̇kv+E_sHB $;-]hj80wڥGre##[+GiGm޼[kD5wmojvep9 Ewp<ă0؁nMq_{ⱠAv_ozПT+uYt~T)S-Ň`cdZ/x0tȝ.(F5PLw"R.Rw}ofK Oc[4~zmvV%\F1y]!|XQcRYw̕t9s98)5)8hFfiVmE G^ʷEkLmxflTa} A=}3)t bKv {R& x$_Hr 150ύc2mz1ea4_';*x4zPę4fpqu;:r)C}Oǻ$M7)CZoxX9=wF0LD_x\STRxpdr 9;Ls:,ar&= JwG&apiK5-{YCJ"Y'KxVe#(z /Hr  nZNRAI TDEhSëu -${,gA3#Cr=/Fud88@o5I0Uqp\۵5x+͝Ctz׫Ofumc[ٓ;\Fz ֙Z^^b6ȫHxGjbXچ7G&a1 k1= !b+Q]K \y*3^ϪX3eMl5* D# XO^R{N>I2b ,F5ـ]P"=ȷc6)dRUбv.^a{qХc;di QnQΉh29.P{#';c =v!{<}VŚQp f%=ljQI6sDOͬ.-_k8Wҟ="Gy%_'rbF cN_+Hɢȇ:R_!47FYxVͶ՟.Yr/">!JLJM& jQ;l|139ut]CL&iD4}3+\NﱱOY'؆Gq30bZyئph"ǎAnF-I}|B!oW*QiX>#C cSWWV]6p`3"_. 'ڸ@gz#:-Sg$|4XAzpHH#Q 6 .-Ћ,4_@cůWUF;: l%?*cXr㚳ugj®$cԍ6Q@^t2lUm"(vK٪zW$Ȟ_HTP= e 0ܝ`r 4Y}2B[9 u.Tj4xfNȏ\٢mcsu՘m==/q'mXqyמ b0}m1`c-NpP /d&9um0y?0o!?cjγPH~i_k3`[1͞ i016KK[``7_αVI`b[5A5jLcӘo6UR;W jS~EP"jC@[">J$QowM7ӻX@~erh7ۏf)|bSMR{3NX1w\:`WF L~WxV+ EJfqo+wrlޟJz\%Ι 9P.ds˻KrGmzgsjhj/iY2M3 rhcxDv\#钠֮ĀFoɧa8UlcKo5i__z1:+E-߬AC7*/nh[lDQUXU x|b0Vp\ZҾ2UUHgnI1QXJ\@7OJ%)@vaHkLzYsR(k":]c ' lkz^hJ9PҧtVI^HW$d8k䬋UNZy0ly?8>F]ܕ2X'd^7WF43 b攋_9(d~54vo"u/,(/rϦQe`tQc`QZ'j_`8 "7NF@ N^ ȩgK]A(ƗfMtqÚhrXK6ۻŀLrH]+{W(  H15[=_C~N[+Z&nVrBt;8)ƫ ?@ E"Z j ~Wuf?y;-2$!k*et:cJSΤP? !$|Vܖ]\I8l?uTvn-`?i`Y>JΩM>Z1>SJ']9Sn?JuW|Q Ng#rN .s"yУ$ mf+?}_MWq-RK:yGO`Qpр7rz&܆%,U#8J*[=nd9NEm=Zx?6iJ2}G>Ed .( @p`ZbqyIdGEc{GDL=>Ŧyᵆ>L |ݛ ~뿇V՝_QƐmj{D`؄L-"bUkLZ{.1Er`P3F7f zJH{W|UkHmGD8YiurPޞŒg@ խi?1^*VF&ZDiRIy=ҡpQ, ;ː R8lL~cMcq16qU_e1g`_Ru`̕?r@0.q+\zLjBK\0b!dG4!gXlw60fhj3GfuyhgotO%[H#O[΂=UmA1k܊u @\s[Ew <[AT&>B11Ԓc$"VM^ ^Uw#&OqK4"nu#h%TE:F?2KU`yALcX,tlfS֨@h*ʩMJ8WxÝVIw ]?%L q_F$HNɝPg<h&VM< X<3${rC8f}zitG`&1EU7\ 5cf"l*Yn X~\m8GW($;Fijj7K:o*Ԋ%w@7D' {܊ h˲ {]«Q ϫ_g(*WSd/ŷE5?ܱcFeM;5F0"iYȯK%Ŭ-x|TdoкS|<orM|AKFtp&So.2$3;3[HC Kevo ~bN,kɂs~ØFՔU]sZ!bL,_KHaJ6dDo踑QvԒqwbJ t#@*j~vxm~|^6cC)P Úby4(5 >/%w呟XؕMrV$ B22]0򌜺I%Ձ7=eV!?>f,Op\ ;YytS*q<2xn wfSaj$!= :t_?ځ[&-"N7ǍC-6r~x ӏˆ{>;_p{r^sD+"҃H20Y8`AUQhl;2lhzGm9o@]-PiQKdNZ܁lg%sgR^OG8R]s^]Έݝ+: lzKCI$!#|'$`BWTLY[=x$UYͯ!巒 %>%*M=:+!_70 ^d{+zO `2{s6ڜg}w&NGbMHf&}o{NtUm8Ppm+RW'"%Pml+U(&y\p.:FX4~D%|X?eNs)4>E0ƌ끥8VTU$H7|%Iy`zs[y=PVeHFP{~ H^S$XW?3bA$)Ԡ~[VQ@#vD4]`|5(#4YK?39௄{'$s`?P %/d!{rL{ط>-f#Os*P,'C¶g+mF"tN|(k.U_7nFfbvc&C%Z|PBq*/<Ź(G(wX)uH7N?65E8Y|B|8ONuڎ!F"2 }%mi):zčڕOM JLVEbcɎ,rE{,) PIn9\| #sAnD28_Y;1sf;Ѻ)YkJb,C`Ql?1ߍtM'fc& vQ[aEUhv+hG @]|/fBPDd}^F׿Oq[˙i+.*#$Co@tuXM!uD)z":)쬁wIE$<Ӥr bg`C3d_p#cϗ+ɇ s<I-9Q1r$Iׅ 2Jz^NťUi \!Ч0]D* lrX Ț<JNjqc,LFj-ю#D%hz 8>0v/H,S~|x#Il2>{|ŹT.!ւ[ 0jK#iv"iەa,lXf0\ҬrwlsDԦu)K8{m3ׂc'Ş i M^5caPNߥׯ8VrG_/0< > NR9>=7H/)ة"T T D`ي{΅0#o"d-M80*Ib87k~']S.Yp9>.4{ jV] 94E=RA;dVMhD ,bmr {;.OhP2CcH@S (`=_n[Z ?C?L(݂FܗPW3wX:#%<brt}C+eHFt#re2Ɉ5q" O=)!;</__zxZaY{Ldc"h E7@kIaxkȁtSӣU K=򘨎:IVU/_ 4>T }7&7pTt2o}SxQͿvB,v@Pd&DP L\H,y@"$!p95$̝!I?MF圞B@x,XӖߟbl`n'>fP]7Xcs>А:˞[B%6:.^s2[WUt0[eW |pv G1B?M\_lIFyO4k0"ꈌaebQ͢8s07 [Wl8#؏5}Ge # LdVycF[dOB*Nη?UnN'z.%>D}a2* sm=} +T-\’ ˪,ݜ˜cӃ&#^h1'߱yҔF[ 3&+CiqOh$]-jZ}-ns^Ze#A5ԑAQoM Z;B]w ĮD'%0`]p*,$7%Ȓg/s:Rc"5mR&rԂZc=3wc={QP^98}$_X={6#~,SKtہQ=K|V U֡;>5sD@ ^!IxHy'/? Rȍ{[Cۯnx[ξ5ef=mu/_ iRI<:˷@l@ZO嶯vrR}%Op#7zvT5O)}_9%8GspO@ 8^1rElolMU&z<.A㕘bWv4բ JAHbnoL^{(o[JTUt韎2ZR<9w'Mij1k_e7}f.\|92jSfW6"Qw! )~,p<Х,;9#6b⽂fpf˖dP <3S9ޒJ)%OFhӀb|@X9OфI<<6:ZM].\Ƅ}$}h>w_-֕zCB^e._|A8H=lh cZ&B4휃!w_ՎTn\o(xzy׹¼}X<_?ojWiLU,K!ߦoT[.~9+6_8 WopD-otcU8)C?{_=y(T:ƯNU*/\"x&G4pO] [@ޖ ?a,`fCGȱF"IWbSWnj]UytC^W?f8TgQ<+XL,4*aA{eObl#+ ̭kӕQ 3EA"~F-0f\CvoWt%/5=[QuR BA#}:9t ʉ Нp}`b[T8Y_;BN 0u٤u|l^9:%,uCbjʞrdZ$G6.g 'ڔEh9 QA>â:3%Ϸx:G.[3$x[azRMZy]8 $ WD}҂H-+2c[Y]|zǚa*NDXFp/)QW~QA|rKad=ߟ_ vR־%~þ9M|OU}IoOLkVpBZaͺza8̱>4pwtQ1:J,!?RQ2`ЫW^d)8^Uz5Z3;){^! Q;u$ҵoM喰;]3Q~s8dUFm&B`ao'~l4i- !FIc0xPh 7< ΢ɸ7>Pj^]= EhMA䭙EԦ==ϙveR͆]!)$+|0r'Y ?j uq&.N/]t L0Ip*ׅ_DOFBˑ*v #F~_*Fr)Mى۸Bzzm]M<3}}VCsF~m[#DLdlP6J8f/9k3^dU7/ؐ2mQE"Y/\k">,NlOIt]L}CSK=@_]>ؐ>*gb"$6Jbٻgx5P鄒^EV\׺5pqҰC@@l M׹$XwO/.]g`h*σcW ~ɖC׹*a{98 7WwƱ%51BP+l<0[,Wč!5&/OB8|Y{.K=M3Q Nu}沇w!(7d>1 F~ow[`kL2! 2|r(uN c!Tɠ_n2!SA7T/91tDR|h>bjխYNv=al\R#;1J۱(ҒI5B,$VQ}Ϯnh]Ж>]B⇇ DΠ:h%lSwq!E >;fSͅX$y >Ad~X'˒46{رHPE.&LbvWzTd)&"3%Y=#2\MvpJP/ޠШ޳Xb >}!cCSH*DTڄB! ҕu߇nI|7F {xKjOV0V&(){dXu7Z݊$Y%3ZR>DpNis9! C3Uz_s?wm@ }vTª+ߕDZ^ LICd8:06~pV.q!V;s0% D,0tE'o*ylp̗|K< }<%1(mTIҮK+u XnO~Y3 ,G 'Ŧ}g_E@4z|Ѹfu,U&-"󲴔B'T"sZeL3:{SKڷVU7i%p{! %"C#~AxD7>Gml;D,J~Cdq'ޛ7}hܝ2r.ztb!mZvCcM陆W4xOm$k>@Q;lGA7h$|k:B􊿛ޮKy^VK̷o/.ۯ$>*՞efQW ;#w$>7 ڈkMZR hCȴ]7hyBGUfvgAq6 /L;W(qaq4l]Nr4Hrn Aa7?G.W7̸&FVY^ֳvXc'fGC*|{K\ӷB\Hѽb}H.6n.(QDWC<Ԯ-(~2Hi鎵̏8ȌCGnS搨E䑉&aFB02#0u 1wєu|VtOcKU.j"=2%HA@6Bm-7p11QZT`WnK1EL":߽( M/I\L?,ݫAFAMhVWw%1ZKH1B [HIIYM2|vkԻ?ݸ*c^ $)%gO q-rL-gu&Tv5HܘA 9Y bv{#t+M*/Ǒ޵駱P!У]NVP YHH2}6`>{ __X?~Y1$=0& |UN'!AF7+͉tpܴy6k8qe0q)n~y%=CǛ  a),]c{T#|y`I/9c'AbdR"糙yW8ThzKjh"4B0n#'|0>ml8_6\tqgS"??X93xF^b 0Tx&j€v I!` "_  $FY~BAo&"vkxC!ց#/GNPl둋)eSJmq3'| 8)Pan:o߸}9%W7>h)cykKHmApz~q=[{zIUhqf}=Vb7=0+wZqMWhܨEiЭ[gjt~* #;%z | P'Պl={G1}MGb9j)l9qi[@β7SCYRfo.gu16Ȱn^X'Wa{IšaS4m"́𭪒_ȧ ReuٝsgG륥tZ Qmf"=>kniˤsýYښV2h.پ&x>%?*VC`E6 `EaЭ`MO*?DpN=d4}(_?sEJ=z1ID|Hh@uA̟=(yY~4D `~Pmt憆v!io-2ng56ضx c b&?z젶duέ^jQbU@0ӣ}_iFc91l(-Zc 0޹jVFB %s87'3`UԠrE:UܔlE=Ԏ=coXc Ao11iۣCҪbn_.3stBn})L| x4 [* vQUV54PåylG1E71#;?("'+t\ Z +R-R&30 H@cs}i6!:b6j}ߕl:ϕxX^HGy> ('} z4Ĵr#_'f_h6cŸȝh"pV| *ϐ>6 A'Fbh}Ebp(UJ;^/3#i }C^GHT*[-`GR*zSFpb jsBHLo|8j̃NN&5(E~ڣY(`PM;BI9ukQ)oC|Aչ뭰?hV{ON6>ct{tMSFtL ]%y=,|"3S-UfI"\%#4_(\|Gfz3Xt#1GJ]Rp4`mjѩg)NnhJڅ^Ž'Ӗn^f>\3VYVX) ʲ FiԸ6MD-IMj]/Mm>7ZjeY:|@C]*;_:PZVdTT-6TET=E_F?r>]% >ߺ3 r`U"B|u p]Q\#Vo Zw VEV@ L;y9!xFL&rgṫnI%pwMϫ`Ӎ[0F(]-Tyj6NޱH4>K~+ KxDym9C@uniw !9[1PJ-""ExA/5ߚ Jz߇֧&(IyFIC0dϻo{Hr/<{v}"!uKļ:s8+D (=og@2xM\bArZPXS 3he ebaHUkٜF~z + 'ܺ|ˋTx߷Pvf0~j!F2Wh9}O™ >hvC冊5T֢|"4VК:µZMN7gJQJ(̤<'$Ḳzґ;~ }=-> V1+ߠpɚyL!(5 ?л6A~'n{&]ďӷ䏅ntW;}kO~niTqI|S:b@ ܽ{;NJb+R-Z)0L?Lb?zԁu79 ͗(;j!Se gPQ蝞/ ϬZdMU |<רb*PuXd28;[-|"g3d#MgD9(Q; D:aaqt}S"Kpr`sqEWRq{_15T#:{0MEvcmUD=Kĩ1XF:/4& w\EvI`ṅq6]^Wz|!sIs/oj!h:*MhikOݕ"̩gr%܏F#xpF=IdE6n$gEWu[܁B7VC2_;KUVCv 4"fmYՉJi Oޅ%cLwmZ!ly d"we]6S=-?AdDv|QNɕG6  +Ӯ$Lnԓs9W6YF&J=rbBNyXiE'^c} L?쒷"WkuFGs&%a{SQ$6<~V{- 3f>k+{c4>ܖ@)-L>|]š2Z_x@uwTq Ž 2)Ysd} DH&&!$ȭ֕btW&uS%R%1l}n ^rd%3.El_Pty ^VJdg-,FVoj"5?^4#UVAč8 ɓuqI=dR]S8lXNB2r癩JxB)Wg͖ӇϷ6 ;۱,c,WUKO>)k]!%.x>cxQʀ(^7Aɘ`/2/^!;ޕ݃HiʧLS)ӂIq ةƑ6ݫi=k/o{+cߋ 4?BI“xP6JUT'4Qf;Mח+ԗH?|㱣Z"=Ӌ.-LEm^/it&mC[ _z4R-ڨQnX0R&=y}FomL PVm&}(5#7}3. `0SZ'Fi&v (R:\aS182a>5L^$5[<!R?KMddRp%4BړF*iC#;css1cIwI1o%if]U͆jP*Up-(0zgw+K%YyOsZAݽad {IƍBيa{.~Ǐ+|?'/7YTeHH (_lGʯoe*ƃ3E,Z=(x5:d'!J]FBBSa7KSYbW"YB &oǺqټ'9yV'覔2ױ1c@:NotMXשM1_,`! luL8y+n/fl~Q9I 㲯&>^d&^U_ޱP Ædp@.R]^)E^KR9$$˘VZ~&~N c@ 66-h텿L`絵<b8?+z5,$ ,pKl7P)ӌrUٻE cDo횅՝cqGtXW.fI**݁IIh~IoVNٱQvp"Ԉ]zseͶMAft4t=j&hh[n񳔚t|ơ5f`_ AÕuq +k2 !Nʾ*SOa^Fl!PED#ǾH,nc,<^ꊧ+DՅ{0,RzL8{M*Jw?=rw%Ԯ'ˣ 1.}GsߒSUNNVt;cU#0/X6L*lyC[DՕMƢDK3j(Gw@IKRSȱ3Eo fF̌qHd]ᦕVVcֵzGVŒ|*=k5g-j d&e6?i{+Lyg8w/pNY5<{TPFSM^k`NpTyũˌw9fqj>(h9m}De{ќ\V͏4*ʸWwRvr~Il`WI! :ѝNNj5hc`4XxZuAf0AǻӍCc욹w}fг^3EM&Q-MjJIM3>!6B|^h+~-fvdg|2s jFݾ~/-fFSC_mǑeo?F" &M&Nem;(aI bsq$l[ft5傖c)pS~_!tC]:T:#l( [P*hGB=u,K1 Û6xdbdКPM Yc -IAV?>R3mJ%RvT YvTsE_ 9lG}*y@QN M(~q#'GW8+E#F4~zx)nv#z=t?\e8H.o'=϶),FXyj@؁[v؆va<__;HE괮@mfJ|,̫ܡ}cVCۛ"W;F0KcCh'›ulwRIe)i{#s`++۟<1M\w ztE1QČk3R D"J]"sv}:h܅ܷR|1ۚN ߉z~v = JڦSz?(y:SyJqbJڎ iKąaF/,dRtI'V3Fuvɒo=[cy6=ѝY(8 yFTv[Ḇb&(hq%of-wYXS AqCAffRT6kak4G07/W@EMڶ_jG]6!VԪ ,/XAM$1kA(Ǧ],4>c2ƵBQ xՂDžC Ӂ̴_&a1g+VЋM7)VDɕ}y GRdJCGP՘0t̚]Zw<'4W:KxM+YjɅ2` '0^JNw M%K* ,udSi&*K!Iv7Gl)I x50 h7Ot.O2M60vBɴukk*"ew,64vÊ {'σK vuذ!J8IV[j[D4#x6 %GǏpHL`aEK~GO7򮳂ϵ{spsY qyٕxA9?;Q7]fq_bK1T8ovdWdy71X\v`9b 7o.G~!xU_FcԘ|9< ;ڌ3|ჅUSn^l9*kc;£O-J$H 7PETйf#:(1!ACq̃ zvG~Ygj(qP6cs"тvK+ ;hNڈ?>jf1(U7BvGt|tTL!܇bbyrnmΎ]KdO>*+w@WBG{d8U [hL9/t مC*uъ;AE*6.hÆ)yk_uN+m~>4)} ̢u^K1b:B]` 6Jsvxkŋb72qME A0@Kԫ{q=ZK+ĭcYnٓ!oM*H}^WqF(\|&~=l@ B?8cZc'GO3ڝ ʦRMD<65oF~@WExH ۩4F*ߴTk{E^I~n:g5s ' H\&@T>Ys_ [  T٣O# ( %ܪjSdt1sɴF( ,eWU)bGpG6(N6˦2 RHE]BX֒KDk/=lKG) ۆ6X dwm%A2@H&m`:`8׻"xԐ&ӰV﷗E(٘:'}yu"p;zH2VWw!s]LzߧWW{ 1eo<$;#=)I;&@X}Ԛ jӻ"_`r_G;p% 4ѼwF>Opa:'O?y'L;CSP!?gˊ;06KW_m<ƾci¹) TAI_sqwk5Gta"ȫ 6o@~ z3XӼ{TE~EAïBLXZl/SqX7ӭǥSeZg,{y/wf޹)U4I_b7˜8y:3/2XYz0aq(mI­7Z+W쎑/&c pymKL293i7n~됣2pPc^٥_zfOW /q*>)I_~1jUí=@+p#ySr/{8e%RQث٣ZC4UO]=]]G/'ZE<14 J@]a@4o^sH- yBJjdKR?g=OƢ#90f O򫷲R*~A4WD5p>w3he7?J K 0յZ[[5ftz(4zǔwJ pgfھm,5;x\DaZuUUhy FpiHV=<^ʓ4HQv*1+ }W=EKZi<b=J]sM@йG{nM8@G+uڗ E[˨jUBth.H%! WLUW xxT|S@s+* [5@YBU/'p豤F Sɻ WczmDgOLOv}D(jZ\cl&s砚@&-O@lŇM;x@7# \^?*lU ~?VFGwK?Z!x\uSG4p[7E0f2gf2G܆xD:ԫD:tcnRo?Et j,nf4{\QuxWFmiQpZUR},h1m]~"b{ k'=]|%_6?O.`EBܓ(V\)zV{"O:t l[<*bD)L\\q(7?'%bUxwf!FB 8Ihc(l<(,h!Z7x*epgGP3ȝv'T1O0󄦝5 ]}ma4Lf [SكV5:*wbU*/q Q.~?9@d$QsEb^g"Eb([1Z+jpDbX]qp W$tue7)z!2Ac>#$ąI7pcHV*e\'Ζr'Ykŧ&ڷ%t8fP c?x _,=:nCX?gIz<}I W㜲PwMu  -|U{ЗxV] T(ua ͚`[2FH{Q!7.uD[ʾ$&8MX=%J.158FJ}V'.[ʸ< *,ܐg{YiOk5]Loi:#}L@M$X,AX B9VQtN)Z^L*@iUPaal@r?jokpx.PiLB+_//8! ; H+_EEm橜jʩ2_ 46Z>G)ЂCp+ΐk܋vVL?Iьܖ6 = KyADu޻z7"\]5\&9INAТ~VF=0 ~j<Ż ڏf{Mjh,$cR*tWdևS|vu\G29(S`81_ LZ Q &b`Ĺ%tX!ϜJI0{kpZ8 O!݇OxjxˏAN*]~0S!)>/qv(3tdd-j +3=dtno`oLkYZPdO%]֌ȁMO%(>.њkR*^%|rOT/),*}[B{K@z)霰bgk١Օ#=lj{Hqns^hn;Ώwy ]ǫƞG2 Xw^^ )u[^T+] ؛&[7k'.)o/b̧~ñ`y 1KWF cfNu4HwC, \.cnt\X *VNBrM\ˬkصmoUF>>'S,u^ ?eLMx&I]1/5}Ŧ  ݳسP$c&WFjw_'ʆj9fp0F35N3c`\݄5'Sc#nj̓`i|g*ߔqdH<x*ގv3M~ a| wx$k?0feHZvDw"`O mtsz3i Mwd\Yx<'%oEWFzjߜMnF ;Uc QHA*]XxH=7-SX_Wլ %jEp/&2)oYi+-yO&AՇ .2 :[}N;{ B+ j3-k 8]J_p$a7t&=@\Zɋ?8egA=*- R7,3wM8MmH;ڳ79l9i~k*\GzQS5Uf LArt;R'0Ry Y) nZmT jg#ӉAZ&?"z{\Ãk'"y]ߊOoA#*>*sPd7<Ł.dk{I/Sl_6<`te7TWSz+_bVC 1Wz yaSdWBS/[ Z`^iZL{*&tHlX8]M\0޺}o?rS[$ Ե]w۫P &Km1*R^d 3{ݙ:ߎ[XT4Bw3.B5"3J[T7Dωifb}" +}IX_Q m&t])kX2+ !nu ,̸.f(U'_[ѽ\f:3g`5=w ,=^e Is~z?u B@109Ӈ" >&]PKFcкaĭ$[ixFw81R`儚< 7"'RY}w1Rc"\kl׼QWX[a'k|%G…2B_#`Y>ARhTj 9qk|J*QAQ>0͒Gaw ekd4+/G0Wxòa {ҋp8dJALCp7̮fBc2͓NIɣ0-޵hd=;bXWTD\H>zYDSpp[[I |ܢxQÚ׻]< -t (zgKFCYWR|ToZPy+нq_-fq[#R/R mShN4RВzX>{˶Rx4" 3ED¾\hm埈,x*C|ҪhNW;VNXEҷ`EŃ"׋ qAZ lug/W?dWKHI%w^Pߎ :ui4ϐXyd~en]INf6 !G:Zbn\1#ֻ76jz^&{K(fk!0sD4G)¸Y: 8n.ln`Zԉq51z{tޭ;ŰK 91'7Ѫr&k,6;aXi4"\czMO_ߊ ?6k]ؼ%kIR1'nRKdm9x@sM No5$+J/Po"1T?ge%&ccn>^j>NւN .+o 61'SejwN팬7.ҬE k["w`+WsIJ|yШk^?@DXvOdq+MK9iQuSKEK:Q?qHii>&{Eq.dL$2=׹HvSy~f[$4Zq*t  L,.*b]4VY;w,\ 8Q';Xp:^*_X?,K0FC@u{\TMG*IX@L=~dZڠ4s LK[G{M Dgk 9/w%/1EǦ%A0D7h*ℐbYO]>ďuFkcb|`e@p`D#b^y9hf3K=W3hn*!~TuvVWcUTnARՖp)[k|m"#A {(P_U@[D-*l"aO) čX.o"&ז&e tY:W9872%G ;kMQpKk4L/MZYW Elݪ9#l/*iܗ=j0GU"[^FQP)pޅFn"?ieM C;E-_Lc2US, L1 Vܒ DM| ?I ӑbS#tgG$,Ú/Mފi#fAL.4@7 ˟mo J?0MxKz tŬvr"MKMQ_UKgCtjx]iwkxj~4Qo">N.it^Sb{sO;ccxOX}/jRVBp&gvf$/֭A (1hk|)̊/J{7IMnS%XYp9%0UJV|ZiZ;ܬ% $jEj8.?;¡W& bwOgxb}%i2m,XӘBJK(/ GEq86lM~3P@GduO l..` qN2 pcX@)y7riEԘƨ8:0%yZ'!V[|C?A!)Un1e*jX}LMǚhnd@i5(W&fٹgT '!o_sk אq?]7Q**0PgַO37Cf8/6}[L |CG+)2W0F6% BV VTi!N9kF$b[ڂV ǒM3f;}&W%Ne򩁍wSBk'趂zXHƢ>L8ti9xKßx}YRXi͍iD"Gz$>p[-ϣ)YS+qRfS@lU tPfϡH^,AGe,/=z|Db jtVƺ2I40 ?!) 5[4c4B rbwpbYMi*.7뭆֔ 8xrR8l:P\}⏽/OVVK؜X@,KwgQHHs{mdl$0dՏ9luE/I8~'W# zݼtw+ t.I G91N;ؼ'zqG](9٬$޷7 h&̽fN,;]ù RE! IJ $eZ ؀d!%/鸌sܜm:-^kQxt"rKr zl1<' /gR4%s12< Gx^s8 _v$$Q..Q]eAy~yu@((TwҎyƕ69tZJE(f6z)fvەv)%jk\Ntxe|̴ 0g { mPcvgvñUvPQٗg5Xev%YyH>T?)F{@Ls C *.;G@~a=V7i׷Um6L%cj+֜:ߓ^Y9dNM*: ]{Ia_r*`#m mIN8!ԇ]@Rr6_:v֕Аkv}.E]"@J >/ !N2sjZrili1/w::S{NOSBw.2( ,) #Z+t/Ԋ<f*R.[K VpOgUI[}8g7^46ή+ݖѠɖ:s~5~6ci;-iʗu;ga8td5̡'{82u%xoH(.Xe>yڍM/{K1CH{};VB6-+ 5٢]og ?#`ȳ*[ydr&OF""| 9sxna' ;RRb#2{bn^H O)TMVfՈ໑ۡ36QM%C#xG<#u#E U$CE` # ehXla/ͦUDRm^|QܑVo\S?EgZ-Mbm|?#Gm&nhoV܃E(b Mf1 "QY^Aj0/7#H\VYYxVΦfG;w0O`4dܝZY!4H`},:obm0vYw;?DstDW->FŠGWE,OxzıyһV~k5-ފbFR= S2=3r+l"&;b:f4%}:Qf#QG6{=V"/ "5QEb>=׹OƄo F@[Ư!xpt0GMcBMcH]-M-i'U-n,QԐO'sxÇyco;Tp\9R `z92sMĶP(%k9-\^0-LO=,?@z1hB!e?MͨcUpssLnϑˎ ښ9vfPpKE=%3_i1:grwW##/H} AGs~ٸdE[G `hS&6r]#1XĴ mo.+D< 8 |X'/~cM@=Q}!<7[XgXKrta u5Ub座yZH=.:~$pt#\2\e[K} n܏, :r.՛P\pP8l?zz-)Ua!o=@1˞Q7:Lvފ{M9Y܀"]Vլu_ĥNS>uUfq-[Y Sn>cqj0_B.UEd ;'D[[NoXXQnv&EMGk>CsiMAE( μlYH +&OD>6.P_h[N"m. 1)GtG駴ۘ-8 А:TW:1E%5Ng>9FG)p 0 D%Oϓƨ9RCޣZ,Y%Qj *vHZTѭ ,JEo_X_xՎ\&*z '},Ԋ罀1GUQQ˧<1^zN[<詢3^vzcw kNUpPU>_uE̓uFQՋq6=8|=}Sh7P贴#NL5B\".Қ˷Wl>q\GBDxTڛIpNEDlsԳp wܶ7پU? 朡?6w+4 7/i >˚ b$奦 I$cbOOݬT|}MٕeV  #BYfm<y7,GĝznjSl''sZqBmd8ZGk8h0t֭m/3Tȝ!${óӽܼ= 걀RDkn4[F%ucd}iU}BqX~ܫoif@wSltH.zhF19N99U1mX>9%F;sPh{  'o3M ZsRcD1@NY49B{D2j]Ts&WHE:;#0,ꚙAYf=oaaD5?~u!F⑇T̚d ׷erei^\~0Znx~G N$uf'@8 _5KDm'95EOh>T,ZU9RnT2''\CESC6:s|bqE^VG%u@![;D żUR7 jYA Kyј*pI3Lh]jmD ]A5?5qS0p+^8Pm--x:ݠnQ"ΝS ւ 8(IdŬT.S1dQ Џ!,!">lHvO2w+Fo,aڠzP4dX+9)fw/MI%:>LGBPKF>SvqfS>]<9[C:HuQGUL6ơ,( s$+h4m򪚻(֨*0- <s==vlhȺWRBQ;ᡴW^4u<=}]YC-OʌDn݅*! * YDEt.5"n!f=D9F5^u9B*'S]ԅ¿ix-`}s"ÁS5^6-&K~ma9a\p.$Nhq1>͊\H18jf{mᰏ˅v_$jzB˩ϛd#T+Ɍ>O0:^_Yey 7jj0Ri$g`%b2uόWՉISG.\&K 0GkXTO 5jiJAQŪF:7œ܌WmjAU13V7n `- 괬3ȟ9&z0ݜѿ @!obBiuAcv5{\ 4vؖ>4䷤Ĕ.טzIڡ S\aIJv.a5Xw0Q~ ]FB~U{V+k6lGLKiᘌ~ǁ3eh4%hW@]A3OםI@*'Ѵu8FZuuGWC\\2kKww509cVխ>y{^o'Tmm4#97 t|c*}|t?ŞַJXWY 5KGC:🊿M}z|z.  dX㛛|ET.Y#Xհ1VnV Aoe6~F/1 ]JbLWѤ@ lDˤf5‰[iE=;Hۨ#߯>S[I rfQ%ƃ!/ !ۑֲ v2Z_{=Gf|r}gHA#,ZZ7P^V֘XDghHz^00/$].cZ:DTcCdj <=#l(]#oB& 9ߎxԓbr.A*IP]"_ @A/oO+30۱ HKVZf AC wmHaA@Q bW?##-+lJ$  ΁~mwU=q[kDPvC@,=7gwmB<?gݺ#]=+yf[97Q 1Xˉʼoew"@̰͠Wm5 VƭTJяʤ,q3`5 #TT)5mqz1wG N;V8Awg>0Q7AY9B0փ9K{K1x 4 0[=XR,p~xڒruc),w 1k$(7NmZ1 " 5rS} ;puT<96*s;jFa ap7>p?džocc3_ qvzYm򛒡W(N偉!*o%jzMbxLgށzW->%mBf0VףG 7c$)PNvtRWް 2A\lZk(,1F1S'+z C3j޳PC'$WZhrcP)N#*-N+1QB@x YHH~~6`)ҙ{\iFgl^ed]C3E;%eP2 Kzz/DT[kp[pnt{ X<:f0|~d0=^Jgjbu(]8Ak!*O1EJ/JHꗄI_4M+M67JN{/7B켓RȫOIJ6EyN6 )Nq>ݮ>OB?mțhX*tJ4jKl+=v3VVz+0Pm 5M]ih$ c^붍gPFOV0xo)4Hݱa-1rYv"M8"9;T&`ڰ1d ` Tak*B] P+Z+ʨe}~Wb/pbٖ݊4|Xٺsw겂sW3[r@/ 5.u 1)–<$ᐨԢO4hS':,5xo`wSdžrA[w AIin~ K%K6}x<`Pv,8WRj=?GKJ~a^PanE/iCacF*wD'Fdz isNx%Ycָ:9+`k=ڑ?ft@p2ӈ &2,= !hjb ^'H[71qm"͞58lNnLwMUz:^@3=GÑ;Z]vNߧs'p[Rx 3fo%fƥd\I64$3]`^0n*ђ 3(.(b^^UAsX?`mn:c'[4@M\[Lvt΁[AHѨ;*/h<2cHP⮚@%k]CMI}ѱ;:Zmr 8VΌla=,=3ZbF'}/y}dx+o=B#)`/ݖ-;gʨ!ʧ'58_WckgKwe/يi'򙋺(=Ihq;$-(o=n!(q}7] kRb>l8 2;ndM!3V@~_b!`}! u.Ϡՙu vᝆ[x<:'*M^~^U\\&kz&Jg&f!fZ1GR.xP m-mAD6HGq-aR;nǸ/+*kwo\%W`Ƀ?1^4]fނu MU#zF K-~r1u0sbH@g:(AtemiU*a0)^mX/G5<ww ģ2 kdPђrˇ\;/Q@KE°B)~I!ozZMzuWAA Ժyww>}Aԡ%Q/bbvESY+P^߹\ʥ\wٛx^)a,y,ܜ3R1&<(DKqaPi6_9r,eW^,/$.50wh 3 폵 20pG]jː 1f7БC~P Ǐ2 +1Q_K:3e ="@V)5 a+EL I^rF2K{ cB%dmPX#KqrV *6Iؾ:zYT= *ZYƬ2B4 A=8$?s/bZ6vf -UD{z۹SXRh"XpȽ;"LhG G7 MKN7_9kڦMAl5/uE,=ot]0d<(7_-U {'ElۢJAJ1;s%qР='?e@x4GZMk4;,yK=;/̅(8x~Wt!HƭC2kyP3U_>}x 51Ya'l ª]Ps^yKqZkEQqV3q?Ya2 e,Kwf  CB"ȝ÷?|;C;wIGR%C--MfW_rFbI΢LrSHüۤ[ PД?x/\{ڌlk+`ֶSC#_$spOs(E cjI4p+!x{}m(e`$eH\jSQ|K!UQ, Sif9vjS]hd$yye?)wo.kDNeATз1.` n;ƹ oz{*"_cʢV$]?<{Fog*6Y NML&GF % ]ȧx}ŷK; ~ÿ^;[lnU6LkMmѶ|OkŜ fe!Yc:ac`aGbl;1.!6~>OxxB'0L2^@7JAD.S,m+ 凋o14MlA()=6PA1f9 y*1N3n8 d.x{݇|j=P}+ (Prieb$G'bߨ\"B}5jSڊl@w,Y(I&cgk<(pKiP Rj6AHjNܟ[x @)Lw3,6dFP5Y ͖Vو{xJ@s0΁eJdt(XOu St;HMxxK71;[F)iZl%ha%aY:V =qo10t˹/ ]wzBl1I '3+H \AL b*+A.>1fsu2,Hm/Æ\Diy W_$;:|`g=} ޱ8ۯ@(֖~h?&5kfLWGv imm)P;C/gvk} >lrϪ$uFv8'GLH^mb9U^|ѷ{A5A~[_jBN5RKVT!J*cI#ƒ!3`)z. j]ؖaq9;`~<{1)8y7nWo@;D^/sSF9:R1u LI辘TI[JhFw._O`[o)nj_p'vd5*M4 Q1 [<!SjI5nٙ =w<JPxswzovsmf丅Vɻ{JbĪ4- M\`ҋ4Ƅ+i| ̜ 3\ K8zM!ӕ~ǛpsfSyJ=Ǘ'pOr/…Lm0=/LjQs\eɺs9GяR+")UQx l= B/]׶l4(_ nXٳ-0\1fv}VH"WsszMU 6t ssSox R>6~BdzOht^ʁ,E+<|u.Ze-XGmQyͪwǦ?QmWS\..Jkcj&ƐAfKJuS'^药5그d[%lTE_L#ZA@R 3t=^fB!̾UrSߩO" 0287Ʊ;DB*E\UZERjO~| U7fivߧЈEaBil`̈́ꇹx%u@`[㠏?Frn͂ U\J4B0Y+ '΋s` g] aCoE*#+"莞S:l7QRwbDvf. ߃&֗˴J%,yk)gkõcZɕotd2q)hx#@s9"ʶJv*s⒥ԅ!@@U_d*ܖp2X0LB|HsFY`7a&~D)i\_6Ar ڻ2M{X yԨq%kyOm*<83={6dI 'D:}FqRWa@'͘yyPıЈ;|fٌ4ADBK`l 38>6wkt1ĺ;8Ð}2W9tse'=`b#Ʒ{Z8؎Ҷ;L@mYOy)tΕϩQzrUyQ?UvWCSQr{ 7:$W$?58k9Z;ID¶Qd[~ &52ME65 5^`ؓB#C!e^ˈM6'kqѴAw~Z#W`V\鿆JKpƙ\u#eqN6|(j=9R#ga>*d_<'pD_Y)3l e&0 J6zkͷ_|dߣ85m-ݼ$oo檏) <c%’@C=Lj㫴z|%OirC>C`TqqMnB'1CB6?/6F%3';afzITV[b$͒Mi]JxBp9(x)yض*xI,}Ilw(dHܣ)sduZP|ʑ; 63Zgg%:ҊHu#0t]?eFH@)Ï;Y<%b~lSwgT(8-E}ʟmD;)r)%w,-F0RyݖsǓek܊bkvC1`<<Qey𺥣:v Zey ,Mf5BV槿6j{qcyv(Cş::d`X = _=s1tH*%&B1u1ЁK6ys+هfi.T@yO}Xv%uFd, eR0=e.Fv_-)PnpߎQ"%fN )8bo|3JhEo Ma\ckTNτs ^xk^S.,]P'Jc !'ߓ2p;Lrc˜EQJ9MH,Apሩ=wj(oA4ngh} ڭܶ*a9X~'h_G{+&o`+q-?hpJgP3smy˕ih&UuV BwjPCŷߘ*}KP糲 9 Ssɐrž +W||wFufQ UZƀC. A_n.6^ln|hK&=L;LX+7иPwe[YDSy_#7-8X.S;6sQwn  }eÚKfBfYxE5e$Ӿ8#itp8f"FTg%O;\Ià3*xurF!:'ǽkb)aLxhtbƬ 14OJk0rCKBOd6s.r:n)Nx%<#MڥKi>W}yy/I#Fmj#T$J"O Į&ZC#殼Q/]vPХR,I,Ewb*vz*)SH+MlL>ʍ1uzL:c]7z}Kh{̓w!מ!M#^P}zJ[3\Fd^ֿ m>Tɷ B*|=:< g4)6V4a,}1ꃕ"XZɜ;[!Q:ޱv"l>ґX'jŘz ]x& :ؕyc@Ɵ{+{QY 2´o 'rm2co |Rԟ,aH1zHgc$D;L ;̊3uAH>Jy:@q=nwXRB:,W{%?H&Joш/,ms Fe-tI6ߠ6uIf ddӻ&ҝS. ]h_?@E} gplj gHkyŒRW6 چ(Q |86\wW S^&pV4 R DWji~ gF:WW. (aU9}]uA."ND}QT\!YYw|Ee.thbY#guzK<:V@Uq ԂCIPc"ͧ| |Jޢ=HK3ikXN387*"s*@zق{͞[w: Z,'pc$3`^ "՗''g0WPglkTX:쒤U/CK +7@Ãi>grLݭPWc]VMN ɸ(tT'AG2JA $nJ47˲NBsE00e:ŻpߺSFΰ/9d$?.i憫eݻ݋; J&7;%v}̿_^`Jv놬jg\ՕwVڌofN.d7릑ŵ;6b?93?ҵ($0& MKQ8H*JƩ;8n Ifo{d TKfs/g&5MzB?V0ǐ5-HA0>zgh)a \|hEb{6O0ό6Gx32# ǜ^ Yf~3/;S[7ͅ9yobUJ8W.r"FǕ)8f^M:giY' XaOkhD({>zE䵓vs*8򔡱TMkΐ0ėt(L9DmYxwV$HT4pUάG~]od:t0VnE@eŬB?qKK 7W5wrM# m7[@N" =Yt6k@: '>?9UFP-L2#DEJ$_h>/a1{NS/(H 4¯L:ǂ mjHCGκO(qy50d:+Kxl*I ~xd7/[$㶂axr@th WA:72X(M z<_n5=eV:Cr @`cd5(Dvߧw7-0k\P/_#v~nF3暏 RhRzt}B9Fd"NFTNJ`8vka>4U!(w@zwbÝ~ k`zŻ>̴{oJ?*/),o0bkh9d%ɢf7 䕫GϟKADגcmY'խԺ)g:}#Ȋ}}N){6'?l< iH› L*Yhį@9alxg G-JPinNN! N DS[hq\[hh`-M'ue_BZ)0l/p*'ƦMq5P 7qtHp)V}1=4kWRRǩO(r7Co4팥a_],_+I[lmF|ӆjW-iMfUjs& o fșNz\[KpucG@*nSt"ٹ!B(RxZOV~:N5 C_o*mMBdCI@3P,7G!JL w#z6:\DsktVQ t!YV) (7se݆O73 hz~Cs${;mB?:Qn0+:<<(w nŸ(q)Fa//,sc9 d J0T i}T^Jx0֪s%CKѺc.5*XU] ~GjcuAUC !%7  c s  9]؎AU D5 l`yxsi~Q(zl}.B(NPw`eUχ(F P{)aB$_fA1_>Ơ4¤qTԿ ++{TX)()+?1DwkzrG|y sՁG(J 4E"%.:[X+=ĥh*wC/ lEeGϠax8'i~=fHeo\?V|хc{a$ie/ma;C(n]ֹO† hDy9R+h {$q,gOO*?f)18,〣㊼'Q}aGtY2 ,O(ТVxOk  ӑr8RM- dc({J s%r5u|Go.Ok^yJH Fyrc߽F>u|$ RaE7I9@6};+kT bپ`ز\>^l3])&KImE_{|.a-sAh6w!a/o «h`~P~Vɦ3Zy:T[>Ӕ!]ۍ=I|:UV\h6/Foz2E_b$j$c".>|D/{7S;ˆ*ZZ{ګ}Gs3%L_`?29\%fm:$z1&f3%h+Sɧe^y)S:'fڧN*6Iy=Yfu eaͥ LJD "ُ{C=btpab"f:1l)e?r>V?DngNnQ߂:BVC1Ew5Z~z1]}^.. a ?SrT`.ӢP" #@qVϡ׬C n"PUg3V)m672Ge˼(*'@[ 4<ܸh@| ~ByhF\vb j{b?)p]o`%yώ4}:fW;϶to=nXin1B#YO"Շs$JVgd;*mav!ht 9Kwb^>Br"?-Yehطr%[(!iV|3l/)ԃ;9T=*:|2~js}1-i\؃=1Alٕ uGW_sdB&𖑽oIB:0͏Awe@--Ӿ\6 6g9t^`{foA-bPP!gWwD_Xg Gs>-J5ONjJeҝ:&G$dwH߸ 3^o@5:,i5kK8r"#BچnRy ?s[QxyɊ~H4-%/Qm5k=|ǘK׬Dè0~#Xj5oa=i!lNy mt'RXYd=b:wK;JwYYQKl[xk Lt rO[.gˮc(lf$p5aN$z> dR;QlV 3 %2_jUźԠd ҡ}4RUk;8H|iCWgh5њ/}]Æ&Ԯz.tSQZc54Q_t,bu zU55gĦg] $x ^L';/eԇ/Ѹ3|-ͭ6R1:Q("nvSm Mm|^6z)4 XF[ @™ #i*ӵ'Φ9cm (0An4MU[eI<*a'Sqm٨wi+hsI8tע!=C)kt' i.cNf-Au<<-^ &vo-XŚw|<5k|$>DR="庌Kv[[ |@:YvU}cH:+k]+ ?, muEM`Ss{}g(۾Xl%+rYEb!,cr`5Ω4 XЙݴeսpzćV6zICNG_pV /*f-Qp"=j<,f`%9k_oDu^zıHԡvMl5v8L.ƵkۈZ=TL#D|6IA㼩g٫U[ WP88Qڢ?\X;u޳/WC_6 _B K'mFmkԼi*X]`*F *.goW MV/T/!f{L˙gk_kIv5nDTJ]݁uIgҦ^e!qni~ܰ$dwfm; FǢv/3m W!Hz;6O<\C4q /sPs=*đdмn zq6 Ɔ9۱$v9wBP3Ʃ$ vO2㾾Fbz#ˊ9]00[W-VNq8V3}J% ??RxP2KiTi>3.O(!? {OWC@Qdaw tv O``<353oPxhN~=枅JeB m@w˜Iѕc&yC]sA?~>밮z8`I믭nj/䷘/wJ Y5(JFk~QrxQT{Y+tL̵~栫oaEv G9nK;k{KELJ %:+ ,\D`PF tpW=֓ECĹyݩMDt MF!L󷗔VF?Ͼz~PHch o]ԘFT7Ծl0ZaABosVh!1ȊȾyK1yPQ(+ՃVU;F})4+-1%yg[8O"<6ۄgI sǽ۔ (|~Y[tQԽD?w_G~!0s]yT]Pn؁.Ns vψ&{aM9ǩ4|o1V)%M_.#"UަejJpĝۉd4THZqUORSGۿarf4_S[]z%#ŭvʀa )5r4D3ώ U5 O=_%(-KX *jafpl73y?S 11J 6Xc'N@j0J1'6jlouSĶjgMև蚛aIN=ݲ2d }nTO2mѢs2lIbu/ߘX:{oWg#N6kEec" 46sۯ!!ަ394O$$;~pr".Fb+$%dY6NDvvf+x <.&L|D6hiaLVDTwtުP70^i_1&j$~ *M7ɚ%>[BD=c:kX)G}E_@r$39^޳}p?JɟʸbM&ԗ<4 2eh' '$QA9^E3}ʇFgh؎x7*ݞ@pD~T@ FEn96v_+X v}EC2\g$rPÈAW'Ԏh@Jxw"L׷Ң7Du-7кkDN]NQbE[=^e9O]?/7sυg?䋙o=lbFn8Mm샎hBk>WuA-OQYm+UKRb8h JS `>VUrB}>CQঔ{љo '~YZb<Aj0 pTrգ7aq4]UV1#Nk0 |U';`~{7Swل% 4|gbVf]J˺g]/ kY-t+MV}9Ϳٽ +5.P.'mHgZ[[tT.[[|lջ'̠A#їl=֌iɝϓ $s=>o؀^bA켿ij;l|N~JkU!>xHIn6[pwS*vw[ 9{ϥ#6s6K;>^urm%erQXÙ3y9CPF;[0H F9`@ch9~nP (CkCʛQm\z"X*4mThY m'[5nj͜  Q!Lt!IG8L2Ma7lO4A-ђ,ɤp:6>ۃm_}ޤ̲']Iw v/>Q!T㩑Vج%d t:fpH*|ݨ/(J p[^ü0>;Ԥ@R%b;\<7}7:f Th["aJ?-~3cʠ+~Gcݵ^7@obb,h/rلQ-`:lE< H۰\O曊rd\IhBDDT"c8bc/hUШjn1[.@֕7]lyĽK0$0P~>C,Hor?Nsf@ߏ[N1Sяz9D n`k6c9h9>kYvQzͲyLwQZ+Xӷ*-w q񽢋5Г*ų o(t엊\lahR1/Ntџ U $L/SZ - ڨkwd7GR@[Pxpp%5c+Fʬ>}?hrwF m \G]WWQk)/r"mڞ^4msIa+SycG*_N34ğTT+wCGGZgG7Ö "ί=[H+C : ¬EYmsah |N+o8#F._gvwiZӵ6ҥm0޾TЄ;xu_9:*?^g #c>l2v q՝lm[e6ٽ\{)ql (ɸZdV@Fx텉ԊYf6a/e987Mb/HXJ%ՈEa5|nwwl1c2`'bȿ/fzSęOxHΉw 9^2V !"{߅f8d,ʮ-I\I@NOap$]Q_b&X5~Jugb+! !v ۃzTf`N) loX|[S2~Kk1O t|ԫV]r}!O)Lݐ<3w::F+e[.^-A~ p!S.ø)cBr@hM0C7JO\\I A ߖH^PJ>fn h$ˬw&d^ Ccᴃye4 .;h~Y{1h"i…s-c3٣xE3F`aѸQ0H.UzsmD6&h"(8to/bƍ bCM Yu-L;XIl8񢒩'g2 l &h?n˨C;ʏExn"t :v_-QI㔠;ɺiYBΝ"0YYoT'ы/Q-q<e Qb3Z`v+ݞfk@j%Myoe~T5 L5Kk<%@? U|*f>խ~;߼NmaA:H goV;l:ƥwd| M89'LE\SlT:n-l>1-Spr)Ej<3Thm'ݩAobd, AT9\ؠQ̈7~ooa4b{[Mfָe);aLg `^Ԣ~=vF'j=F sRFDyÁMyՀQԱoφ0+qUuAsY cbGmG&faK/% zO. V@3NnlnD/1 Vk#<_*o&$ܵET[N[sՊ`Sj\`kurcTbUn7!ba}U'=W Sb/J$MLD1- ssOg/?򂷺P1F!{G_ۛ1m5¿⋑9an;S rJX QG)&;.LW\:@b65I7qg! n8y[/ջo&%ړ8{qleΐC u{1{U[9 T"LL:<4u:{c%uȷ ث@:{ %p[URtDS]ҹkHm(RD"6PV]\ 2ԔK ѝsPTmz, =bo^L>qzuDC֖rA.Rqa Ti"ӄY2aU]ʕFǞ\Neڍ]7KeE|ܥue['ǖaK e {D0-KմQFFs4$zaJzhTiV7و%ސc!QLߣ(d{ؑBs*m]*>Tٓupt새'v)}?&Iı>7QCkl.ϒve c}V+ T]~AX ⣽"Q#U'fY5THY2X/F5 :cq5.|0;)p:5PYIڇz zO$a:Qچ޹'cj۩(_pc7πpJd# cf1xWk0mlr6WHMޕD^+OTݔHOxEp$R \JZ2GK{'A;6}p`qqeJ<<&DKI &|'$, ,U3 kl/jJYV;>фK&$1 77ANX]jV5\ 6dp;AX_ċ̺|0@W6cqBwdO`(B" "@HA c4{S}C2H.vݼ\;Hifk#`yp=>Uom[=\oˣ9qe͡SuȚ1QS$ JVT׌JyTB*D;I.!XFues x@v@ALm}%eBUtUdz/y赠9W8XG`zi+A>Z5"k0`W`tǎ]wODC .ba"3Go !>Z17pr$2n∯"N;'\>;}DI(e‰LJ>% %*=t|8L]yErPYi]&'q7)ڿZn3%  \&oZ /SDxJp7Y7KoY·Wi`;%GuX ~㣟XH i}iĜ-F]j JEp6͓< zѧmzd4J3*{`b ڔHݓŭ< mĨtew)Y[o?R}2p(MmDKoae\!L+iª ar$ v`irNebL֏B;j nWHt z滺G2BZlzC%gϪȰ(H84gH͜~hHl Ccݖ.+|s*G2ЀO/KZ:lU<`$Mj#,kH9!uS΁vm*w('_BV9plqͥ~e;eo~o 3x JAV ɛLj?ԗհ0TV /n  Λ=8LOsLչ'E:wrxs;~ѱټt+8|wQfA Πeznh!{_]l,F F9u/0=Eߞi/o":Kð |RܔC:q%FHݨ<pA"sn+m<8뷑ަ ^\-&?7-PsrKu7z^(}iY$ X-|*8":j gEeڒ~6vƁ2-0.;$hw.{5ypObWX<6"*N ->BB"֩ݢ4<l|+aTg:>|/SX- zi }}2zWVZq!rڇ:OūU =) Ƈ7A) {Tɕb;L4U@2;Ȏ}`Csbo~t]Ѝi\,QM/  F*4+,9Y}7f(H9"w@ eGE̯z,:#}.sfVs Kuy3/LՇDЩR$K+L䀔M7XFfNnNrOe"ɡI'zk:Vs4tY۲x.$Uʶ2s^<YNt9zx54>Hy*la,c?T:n*oh4+Pʝ$AH߁)ےN%]֍JQҮz@,i CjJ耢n/#e>^W]\=䁸 h\W,~Q2[|^9d8G鄰ʇ;Сad"rA!ɖ1heaOT Ƕ6bj M4CґM#sYgy OAj7ۡ:\ n&\qj-uG¡:q0YfQ]hi+ Z'88UXص[:45RL$'ـ)a˴kQ~M?kPx(~#uD7[Tc+N,0sXisrPn~9i+$ҋBaש%!KcS*@Q}<@dgzGc"?|xc4AA'aJ" ް39oӕkkw_%=!b:D\ Cΰw`uXυ)ErHLtCch_-,Q_ Jm Vl-D:4V7\PlgkՏRd6|qnS)HBJK*~A0ыB݃TI#7);yZ,fV<]o9]!ڿZjU4 0'Kc,kCRBlu%dqG-l#}cRu$_/ ЎHn./$!B|0@p__0nM_JAM `.\h5*݉?IjY 4䜻R-30BlȀE'||ɸr'|g:p nrɓlǯb3) 2\?QK S ٤}Ko`?bG_p}o8.ښT*I>d/3(tFtL"yؾە7Xg}'-Gz̙>Sz:l F1b~{n.@S(7;l6FN@htB!ѷ O$;D"HH.ޔޜ`U?񎬒D?hI+2-1.5}i\ymâBh,ijwexu7z4Q >ʓƙgsx?}CP!C\Cs*Y^]{{s9uv@ ݾ~ &r[S!κz5M$oɽu$  9|"V˒Be}2S~Y2UhBBǻ5छCҴ8ð QL`bПd7i@L 4ΞSmnf)ڷ}-ѻwUGոO'yf#S=eJ.YM.pD'CjmƗK2aך1%:zAjLf8YϭdÆ 5l4Jl"wM<;oYO2\af%C po:&GSl*>^3Xl{w2[@,H9xszgh0-O1*ͭϦZ\V{0%CI}tPa؂K4;k:&7:LKFRQ6آ'Z|l7e`0|{ RF6}p('8\@ڈ-IN2ֻ4v$b*=I3ah$I>%0挀MxnbEutU3~EFdQewf=3֭0ωxR߃pǿ uu Zg$"V3k "ej m/Sxt,k!{ٔiBW74X Y~aDcHuŒdxS8 X.U2[! #; 5 >HÂjVMqՍ6qcK5dGZ _fVa 0Vs|ꛪh ",to y0DÒe?ð _OJNR #'E`cL2nC:H&+@>wn,2GEI06HaT^VPh6Dk,g+4ET%5t4ܷ$^q#:΂(4bRi>{LJ"[AI /9Dj4\LdDm-00yNqc]Z d= R*~^%uGyV`KW% mh+i?(DZ7^3?RHb\, }8{4b; +ӡ7bz̺tA |?q zS /wee6ubKr)6P*|FB"i"ɍNahU#8Jj%ӷb<&8H)Q֐ 2tP\=!wG],^Zp{6GdIV`kaaNת6ݎ RBX=ʢIF`@ F8嘓CHDԷ.JMXf&\NQ[@ $~^z5,(e}n-QυwG-ѝX: _H|{]8+rr_#a>p :ܟJ{.PJi;,$H 2ye)`|6U+‚wnLȂ=`:r.FK<'9D^!ಢ3\BhS`nA: }R0@x;:tdk Zl)t-"ph9nOp[Gk#HΚ2{WYzw5_5q Qu<[KzZ1gH0XYk Eɮ[Q$ {Ʋ,nvJz$d5ע6zNӫ[`ݾ G*],$fF}>OIXɉэf etpL`;5u(W:̸nyj8c=A C;wR4iEPf)"Lϐ*Ւzj҇r2>wui81~m鴠CJ?d>[cOͲQV[1$kn۲*HO$6__σ) )r3jxW)c#2#HRF ^GYV89JUʾw0iS:96 c,?9~ z@xS#4SK>'Ibn&da*=^ k.&:.YmP Rs^s.s"G' 2q-pfKNsG>*/֗볜Ki㳜*PDŲfҏdk< S0'[ KT)O5vN\f0霾ڈ2-ax A:qwB|[ʼn$\^`]3"ɀEx6) <@͵8 ~iC_oz&Dz1 xI hF*a=h ['ݒ}.P~x'lA¿u7.)7G%> x_>xJ]\Ǭ3)K$KءÚQwf/˭.fGJ%x5ۛ n&WC#6g#]|E`utve2/v3ӟz@m[!-̇lnxE%GZٴN=PAO;\ AJf"&Jxx-g1lg K;ECjϑYUtge[kjpvR3+Qr@|cv {;]od19Ƈh=9/yKoDRWB\S900Q 77^ , ~χΙ0745*-cK)itè,Xbua8p$w 'PG$ނeoش5wG8K4g)9RQΨ,y%rH|?z6gS_U*>XzjFjjVPv-Ss˟,.CYƴ8Uk UOwhk"W%_^o)w@"/t&;gwp!hN:Bz%1Oj&8zIF}bM5UQ@_=S AdoJM?"모}̹QchwSRRA&嶴ߔ9hCsB0dA@%E@H2{|0!G5PRfOY `ߐlT )Elj?Etx@wݐ41I%j<FSeӳ%OŃov\Θ hU BuKa3\ µ*+zGvؕ]Ǜ楝FnkG51_K};f5ҷP]\eD մϩ2ewr6#g%Â$R3t)r?f3,p4UC9 CY !=a`d/V725f>vLU[&kCn?NoZKMTo]qNҺjixbDXOn)ǃ^/|wF2,o)w*Cz)~Q  ScQw㥆nS$N# YnC'q$眿"IS܊#[*FuI8.jdFf2\ˑLb80waG# 祼Ï!T,>o<*OjLr"nf)Oxɘ`geմ X hyBfB_O @9'4߆"(e\ >zj!'s1.C)$;-6ؚ<.M-63"T~XGWa;d%k7],I>u++]=Ѐ~=iV"{?vܯ KRauH.7:QCXmm:?iѡsߪ`BqXR;v',MjdU."n9: VZmy.V$th(Qɕq: ai`3imS_;"TgۑLwC[)B)j0^x1z\/89ZpL ͬ( X ajVG/hQ j w}`YB25<[YW^vʽei:=zf|}\ L:wp[bl)C>.!n1 )ΦLW1fYo\xD_'z5zd UkgyCTe5,gt[B)+"ac):.4yGpr7Z(ca9W_qF.-"GӼJe_ǪH=T(z$E<0(Mt-T@WAʧ T} # ׻;9crQ1G& 0mՈ=@ױ1blv^6߅@?"8%@YOEսXa !}PK 7$;y%Yn w"CInb3S=obG#Dq0Z`૖RO^m3|h#$}FD_A3 p2j xj`>q0k#iR-LʸԓG u7E:wЗ5@R@[*G[W7rzWtczDjQ"ʎb0r;8(7la%:1`}npu7+*2 o!s`~ :RkxǰT1lB*˿ag%`.ދghSO N^&s 訥lpwZr"'A#J RX*5тf ]]ssn2ٞXbm ]!L͂fg5_j^KB58@w.KڃdDW؎FWkx)} } "%W%r`EaȺcT6,Zf]Hq M럾E .y|@E1J)0>=tZ,;2(2:2)‹qm E\[wQd'g%ps@p׹8. ƏtG%$Pca*!(L{q𜛢gnyް`G:/-'n hFjWEqx?@MVYV:Ū M #Go$[99vx0߽;%c#wHP56sY> 1\d=X)He|r?Rs A&)o>.g0q;gxkGv9sKe*+rؾw螑ВVKRIWxUƨUPJq}`\ Bb^J]v n7% g`1|ưeυq2m>qvi{ K,7˛4nNGa#Km+A(Eq0BmP)؃O夞`&l"|msr:`6(nق T@mI?)k:*B4pv8#ͨpƸN0lأ%0]t=[MLO/Ŏ~!Q "Nx3&`RlE_6p^"ǀU r>( 5:/}a|fMI=ݐat!.˧^#M٩c*}R ?>sxQC*_,naiQtYeW0tLN<81;VKY1kk*cBd?Ij3 Pv(H0駏%mijwpՔh :*'],c! QxcS7"4N|P|+0rͥn@۳#qIPa-`HIv!vXq2v`s6Wɡ*TA/&ދB[&+v$1QgU>_1sa<+PT/s40M!7scU*pQUo9Ŋ=uB}{,9irw`Qdb5Ygb)~׍fj5tdC̴*WZ@x2b4߿G} TYl1j4؀v]J ;(ʶ'jr>6BMk5sSsǬ`v)}QU3bXz&WZ{85i~WV*2<1&54)SfcPXgXpNC(}n8q/b@4%e'm4?1\]c0\z?҉D~[A2D IݕdlgO@̭0zK~*5ecB<5vsY&7[SZbN(*#;2&^o*41'R-єXN()YIM_Pr//j5ߙ ZR2]u{]5S5ݖsw7"p8 ȷʒ物 r<\mn&y9Z.C}"#t»& {OsՃpdZMѱꨩBc0<-뎟/#X?.#elX v3tLa.3*:C,I'wNvEEqjW]{ hǢ}gT+Sُ"F% Q~8T~0 sNgT{Qsrn2JFYA %ۡVT6d539 7aBƮ55i[E(23Rnz*ʨ\Z>P4O!iS!$!ΘG@NzF :rZZo[NTgT+/OaSM)T:,SI^`ͳ>21:A`b}+k5BE:r]_@am"9YF +@ucĎ߀ dzj)qCll#x_<2zT*ۗiY/ҡvMudSe }aU"q1 LĎYA2_tWyW, G :p, eDcxT\ڹV/6B^[R& 3IԈhW|(wC*uK퀜_Ү^l6@17 Yyu`}f{}ko ރ6?R VXLB_ Bi֌Dg _) g=jx<4yY>RqR HqȏbF ]i HM6엖{= Õ n?NVGņ0+\Q7q,jqؤX 7hɶc[mTa =oF.{F%lU(8n򂚐Gal}G[UޗbɅ\'ƴTgh'i JINBp5J'ZrytM 2v#a}*b ?#LB]>>?ޞ|Ij/ay!'Bnlnۉ,I]fºL#3XX~GJM-uTc2XB#)N&4U0%tf c['Y3X;]$xR<7~}Fk`NzqLԭԔ\#}-A~J P+GRlyѥD:ɦ9rc#tCQ*bO/amlSN4"ה>dRڹyin^ o hBf\2VWYgAߝONB'qDaLQu5"a)JXvТI=#0 ߯* Y`F޳h:Hفغ /h<c6k)j[Z?q tEȦQRxo8 BH dIk愻*߈=mO}z崽NST >>$^VYmHKv[R&rcQr͉K`.|"Y7upbª';ܞg+Lx&2}h{@[E$+1H+_J_GvbPLs$s)4փquyMzUa[zc%8Jы4pvrtYsj_=?O=*]kp15"YQZضxT@ׄ\hPDtbil=a0wQٰg@T|қ)mJ z3*A5;pCnJgz*Z-{i~,UAz )%:D8%^ɲZLM OFTFĒ%mD0P8 ND.v15<(,'Hve}GrB36zK럙jŦk-;1zxx;i\.Ptz~wG:cZ.u1+T= e;`80RkS:ҽOAQ$^3! YPw=40| D0|ey)z_#d'6+Ez̷DG̙i.%'jˍUtwa픚%֞w;4t=1U=ċ2rujhyX"1=&rQSJW!&)]fb?aMyFޜQ;v=[U@ g9?$ 42SU@:ZhE?T_ȞiʖDosli TcQhsrlD y"@ͻφՈ9^L<9sFqR) _ҫɦ@qO2TwJd'O'nbG0YA)&1]19Ňv,P>n6f m',o}F.`P%9$h"ᖳL>t-;c& N$Sr爵Yݕޚ2vo^T֙L?hG靁NlE X38Kk~m:켋G}X $43:(؊z.kTKjy x-;kC@iV`a;Fa#o`כypV}!ʔIlQ/c:doJ< 3A>Z?>6A i"oOAD8,`]BK@wOVIf&Py^:P ڤحLdq8531/GV ȑ gQ?FO~Q7!9 }%8Kksɻ(ldC9q2]z-% ]exۢWcb@xEHGg*%̅ϥ`bCw>M} Fdot}~gU !j%q:FŜﻵZ&peY G#7mF;(~y55HC:Gez8IB(J^&(QKlATDCtmA g,l<"Ύ-@ 8TNhk'^(aɉ~slϕiLoUKB+H[ @Nc|WJI]\p<#Z42:vΉST>%ϲ{] X;ݽ1~W'lSHۜ2/= D1lw3vZ!l2 ةY&&v| HBx4~uߗ!nt3 Y& Y #& .:27qf? G:W4G @Ml;8 a: c6+vmbF֟%Hʓ&s\RDd`WQedŃs[ N|/pa9 H(M>x^hPhPo2#ʄXp5k7SQD~^$!6ց6 9If4*r dƱKuL H$?/|M'cur^_SUւGZdufۅW,|d7ƌLSw~^m [[bYMQÂ_fG_Y(}Q]2H*M}h !3&1_Ǽ\bR^ .M"VH 8L1rIЋR]QCzy\<:Rq$N _kx!Gu5AT! 3:3>4 xTŠvvxCX&b2 '@F W}+;E VJ{ = {zo嗅+N?Ҳ&YfL@@b R9jA3#szo˻Kw @E/3pџNlOsgFğH-q|Lm|y ;=mBo J6OF0NR״%a zAKqn(iJY6Yf0FRhAg: *ӀW&=e0:PzR+zC"G=DcH8ٹ(/NTیP\m/|1G@^yHbs, T`L5fs63k1PMFV ~'R|4 3|,uPJAϯ?>3/qIɼI:F㘦2T~EUnHJ萧׵CוQ~WE]h$Bz`}aB$d/¤a°vbٲ_אc RGf-R*5J yO#%:SleWuK˥C*2}`!@ } ߥN̐] Ҕ`ЉGrsNHvKnxqQT摐DFΠ$\~u\lWC ژ# >voBGڸS_5o~jSt֗eN4#EcZizTs:~oTV0SG@׃~*TP7%^N@`cȜM!Z'voo`_-XT1'%D PTtҮL e&۔RW8Vk .?Aa9+b.Dbl3\ G%"Z7AULb}QαhIJUꃪdM[#*@ )*䠘BlYӅT896|6^+y7"\dD!bĈ+`C3 QC/K9wNAcR賫зmi]0M~ wc'#9";%&kSˆO%YdG.rm*ԡ'6mɹv؁a<[CCCn*rIئ#Z &g-f&u;1{2 6,hfЋ=|R.T!gcrUb3@]^&/X`9!>Uq6 ps/FvWJ@7V^d[-@io;;L "l~H|[7+A §30xlc|cl6QYr`wf<9}p ud!t]*Der|ppIzu(~6"ރOy[ aOMA o+,(q^`ݩ)pvH'zgI}bԚ,b"HBi[B *"&Uxn>NctEhihS0PrYy3fEpyb6UyhCdw~l39"M7#|X ´KMN]S άPI}j 8ȼ}Vɰv%vi:89,LH}wsKШn`Bo_7.se˺)X&КZ/ĝJ~GaYyf8/d.`\$'He|yH]LYS[ X/l 7`?fE]'*#{ͶAo(ڐ{fX;f#,JD0xmצlW+]Yi4N]4IBbzȏH ZLn-Ehq!yNvGVQB!fxj`:3|(14҄ [eppҪAe)REJsaֵjɌE8J4#؂,xh^fkdķÇJ/` nlwIKڗko6\3!#CvxTۍ8W]7~pډ+1 oKZ%dDJj_~5KA-M\}jW*P3bl`܌zALd\.-d?t^^qezݑHOzueH5>WKcai. _oyG(SQAgGw u/ LXVB!E`) 訡34C5jXѕ"B5ߋ 64įrET|7j1[t=@k48Gedb`Ĩs Ψ)Jn oh"mf5&rRrÚT]0b>-#'{9?b .(=p#Oa|Je/.)d1ٳP/%{z<[45GE $ȯ|LCxG*C"sOA_{b\W4$WPFI4:rT2U JwB,%@,s`oa;-`[O@v"[DajA 5e 15A' uv]C8ƻ[rߐf.hMqzw4>l~Hw٘j儼j{n@U3Pn B⭯#1X` e n[U, iSV+HV@ER)]kPYEEWx ZWC'HX;yBJ.Dw E[CU8);pb$dvڜ½M=4+Q#u?9n7=.Ϙc3ZmbJ{-m2-ِhil*ƓW}ձա˘/WY\3A$Br$F:@sLqD3Є ER 1cW?Exb#q- h 9 H_qoM&%w 伆zMIF2ZYLYUc"R*݋Ml%xQ6mtisʥJ-&- GU`0)j  0楃)pǣmNuUի+?VW4L~8&;n܉8&_ƹqLE6'[늨'i.(H߈)CA#yuY ނ(9]_8<<82~s4p,s;ypv[}KǙOrp '|&n]cd`Z?Ct)^=84Y! UHOnO! *穻5tϨWj<{kPY׾Ėc_ ʕ̓MӘӆ^m=}Fb9!Xg_AOcOs}#Vw qt -qK7\z'-/"T9ȣQ^p_͛ݛeŨPX S4LQ5JCHN~LOAb(n4Ip#Tn-\fCj#c]("Ք(~TzRP򭬥WHa tb+vNy#iPsT&g$ ]HWCk#LNR.៉4 &Gcs $տ@d͔a6m Nką;E9;<ϲ9qwV(72]MY_V;f=MdF?-䟛rnìw:Lc9(J˼l"+\ .MvÉa N}8A%B$ X 5rXLѽ_ ޿a£eas/*iGHIeĪ}cXߩ?St03^Xhp-`?{I|*WR%K 2Iē\]4aX ?-B EQ!dw^U:ɩhEiV2gV k R7 Q;7a1tvS^~MGg}tbðHjML ܻڻ(ֺa Dň)9Hq̪{_ͷN s&w. : 瀖Ѳda/^8ϗ:1\N9Z'Rl_5eܤ^0r>* <+Fr95Z HtvnשÍytiTj]ϐ b 6MŚ6Z=U4o =Dy*g?/,q%u =yz(>Ww9PADr H9Q76˙ jEWh\>p߳6 qOVS4fQwp+|8j}+LHY$ʄ, D\L>)B˹_c2$GBL>̍WWƑ]>ߕ+dO!+ Eߖco5m?aϕ iL!O YІ]+8匊oƃZ{"ic>K3tl~bx|-4A*2J:TlfЇT]mQf&쏠9ag5-i= eP L 呔?r'^'oT/Wk9&q%%J=55&|9]|b)!'4<-opK7lidxQ_v+GEf+Q WIcL~yO:0-n,.›ځۂMd2|Ie9RьSkeU#?a#@-Nv (}v$pkmfafѸMQ%;3XYlJh:Iqk Ok%NڳM~zaɽ~V_-) > LbQg @T 8:F@?BI-JT_mN&OIt, >-:x>1Ez" (;Cy2څ)GLzr#u@}۹q8/#n8GyJ~[``M^ZyQ5& %bx{<͡mMC׈#֙u Kהo U8@y'xʺ5$Nc%fU: F(f̋Kzxq˄_ Kv4yc@I_KBdMF}ZL.ށa݋4̃kF el[0|(vHT#jhX }z`D #ZMXmp5\h _5|D<~E-x 鹢JY! +7oVO$M,wI,|(w)J>r@F!gE΄,%XW=j ^> j OThA΅%Kްã, PDR_:*H.蜀"|LY{o/&tI+t>*ŘDWXDTU푢މzxb#HIIH# 4 G5 X&-~=ȲI &됗-_SC  uLomf+`n{hFΊxJhAN ۹]DBzeV;%j3/Yݦsh8GU,I\$ؘ$zQa7f% (zO\uekp?_mHtSTǸ)7 Ad6Kbc0cP~K1dY5]VkUߴy2Z5tj0e}@YN`Zϭm<{X'//Þ΃WE 1fֻHHФR'bw}*A.b3ǿ'p"E|1AKPP81uӻNNfW[6Q ;Oԓ=J0l_VL*`neZ }D-@Ӥuְ=? ,qR9x/8t)"ſ2:5GQoQ^ OuxH;qLG ;}b;v0^uqn3x,|@sw8IE1)urS"LB2e@UqIO&߲Nb;xi*LK\6bEhkRҫ!ެxǩ@F OU|4T5Ce>xJ}"ͼ-hX5 ߌ'JZKe>to|4rAmЌ=qM}f*eßCBlF]er h he8 g'UM:Ve93`ʟv{ y(2H̜sx>LB&$2?B~yR?dGH>=cXNҔp.6"(H`u}Lw+k$Àr}Q)S#UA5O`Rh[,'#z̊N+>ws]᭻=3sM+DRH-T>2 w:捀1zԢld5G]L?Y _{Ӊ5Rɛq ܛw xd lS~^eSSg:OZŸ1HfH^ 0θj?gT8- !bv3`54fW3Yf*yTc(q;Jꂜ֎(Lb=>asPālRqRm؂۬] CA˴٧A#J-pO5BSWzYXƏ<( '_WM/ɬI$;gzd/)TIUl7V$bb1^ᱎ% ~`C_aۈq|z]A x1,4ACp)Bda˹ b !4 pMնT}} 9Rza^x_Q+f \'tQo_pF蔛ЊylFZJZcoypnAqFc[řKm>,#oAF~`bʙoS__yo}q`oyؽ{E^vf ڮ9xfEfmL6' ?R:S^tm(cZj![3}odaRep!ߔ^'UN Ɯ8(Lq'8|n] xޏ-D$w {ņxGxj;Kn[4%E:M5 spn_rrﬢ42Kqi$5@c‘i)' c}еҪ7r2 %۔ D3c(o %I+cYbA&_x8 %d^ɷSSx幦_ V)hJ:BAހ D /("Gsz/TWJ͆AS뵜Y[M!\KԒg4x$oĿI 1<25^cnh{.aA,%p-k’Br%q:' /,)K-uXYۜL<@2c&0矍Rm[83ROBϦ{S][ODjא! mwXgYx]9==so|)Ydצuw)t 9+¢FH\ǣ~q,b0]8 g}}<;A8#'2)aʳ[ʅuz&d!/IJsO`f[/nfR]/P'H.nG}S}UѣwPUhaѮ'=Dh`+z/N2 L%EIb(~!piK!S3 VTűz;;I|AE?H{kkx# V}efOSq-Ϧy4f8v6I@DPᜓHmd4/801ImbTaV/O7"$b | v+ţ,]pwE=1fY=}B .[D[ L41%e9T0a biL~",&Y6B*@OntgfUoo45wBtLwEõ ! Q-z@lO2.vRFZg*a$nTd2^kj$Q#eY3:e0 ӺoBd:r4%2^'woHZʽlN{#wR!-6KvQrفz`b-sW]^t<$:qll»_`iMv/W+'٢h +1$%y ܽG+#a%۫t} Pьvd)l,"S"qDhe]/4OV#P(6- 6T@=7 ?6~c MS2Xk)A{jgў32dT'BQ?X*UM3( /_ޢ2S<*Ij;sJz6}Q ǭ &VM._d Ow9O+88a2b=S{¦<*[VHut$yn*bQ48_W xWYpA_4Y^*僁f}C>68vr]w,I[!KDe&kDʆZW,W>z'35.5.ƗcXDr 9;'նҪIQ$e#(W!2{Cֲumү!{18/Yp;0gϞzC2M QD$PU 0ŽW`Kyu-j?3M,(5ώdss>²bdՊb-̭9` %!ՆZf1X)jwn2Ǟ~9@KIK<XJ"K>5HuT:qytg!R-caH(j{ޓ,~9y^3\|(ڮqr8Ԡ2vrєCKN@!Ov"Gt [^uG+& %*.IS0B*1?i MmnhTm S 3ŗMtF=Y}6eVu!S}e&±;>'0n<0~` zòH_pM*9V0k U,аMZL3ManKg;}Dl!55Ǝ5BLEa4bRڷM}дkNT^وo~oOv1P_ʝş{Vf19ɿiñ23G/~bzϕ2I[GGiw&4+e?t5l#a`f 8?^m2/dCC *- \I}Zkq!봵,E5bhgMMGO}`8U)GDM)SW!ΪHj,ւ֬^)WU_*K4{qcb` stX|gWФDr+ PPYc끧`[漝gu h´EY.{RJE u{j3)V6_G~ԓ꘯ A3N1[(ʯESJ:( ^_AB?PM{28 Ck^l=J'8<7ϟxμ+c_G8L″IPf?"_A/qH1p$5p;NAnb:OjjtF`L0/^N<1 ExA=$KdX;%8OWN 4͊ت6n[|S>0w&$͞` BM0?͍n^qu-2}W}9Uebj3D#JF>S-cWCMX8]s&Hw⯮|OGʧQ!{ SGwa} ߛuo嫰KHznth+9qdCx?cU`\ I).9|6,iwӇ{.4+4>jа*-,Sa~$y쐃1f\-uwkFXܵ@ 4J'vؽ,!Ks~T%Mm`K^wSjia_w0#lT;+|1VF#DRRry@rNJm 7ց}FN8U_]!uE*lcX g.U6!NLձ-MIK!lg4]Z&L(=0v?Qr|q[U):d!zh ټ!^.8cĕyVu,̃:R΋DE*v\Z5eb{Ome \Rr Xq+g Mmf YB9\XX3 g fdVw0~탫p7e;%XW^=3bX9bOW\6"_!AgpG5PG[Z[pE*J=/|@~#BoI*j w|(OjU~`bvWR b;/Qrd(R4E5ƀH7 Q@ l:]XYHpPHʤ9CC5 ?:)c`wcox1 PRvc6 [J9 =ypo+},wQBuA}`a9Q 4W=TƄ MQ?FYt d5eï7FUyKn'ӆnq(>%;L'nN߱Zc_[joԶ25p,qQ\9M:sSG=uE*H+1P _6뀡? {!5=}07,U+㉽o>c)|s/--%AJ`jwt^|QRX.F/Ii[K/ܹWkh'llL\"{jOTF^Xwǥ*5{G~VPR-#aQP̪762P:YGWiFn3cR'YzMA>{r 05;m[w&&Hj(`Y6(H]xG[!|+`v=2Ez@GE>A?@T9!\Fq4/S3#z=bqٌq)KJ %ҭ `dlY=}N"Ug~bp_-я < ztn)#h@dK Kg61\7L=Nl ewk*0Sn0 Q7P2" U|d\J`:6#dsQ2h@ +5;܏%@pmB`2qd-g Z>]s}X=qKu~'rϱ$dX}|aWsY]rdtb8)`\up&ƧmnDzݯh'+| ۰'UmY=LF뼞!Dp x* ЇXZ1; Oug Z[$4r$g ߨHq?ԓDG|~^3> Nholcby{_;oBq`L@3$BS+av6Cn.=^ VXMZ^XΈC:;Z۶z3r}#).eTiI2CTѤfW,.gn&l.ePܡ]>!O/I4K* MJ{ڧ<%d@׼BMVbls#3bBo9z`7ݣmXu/_j`3z7JITbùXVe\'p`8Sw:!xߦP86%wm,<]]Ks͖wXjBCzƈ[| ,a@ A[ul4jo~Jɛ\82eQ2n5@{#5#}e-(d35b-Y/1eiU0胣VN\;WB$>գO=k6 ca 礫vH^jpfMjEO4p%̶ LRaހwȨ5o%Z[sQ}TSR".OJ:w4S% ]8fB2 ip;Ⰳxn-i^&{{n`v=։|s@S!LkwS21*ޱhL2M  ۘ/D \P] ֍F%Lɹ0Ysm#%ig )Ks1͛@}%hʵ]צP$? n܄ez<(]gEQVE}=G5c_§U S9gL=o1M"_KŒՐG%޻owۚ=(]V6mw!" 41ԷBXx6Nd7\nl |Amf}iEr~: Xbj_'j`߀CI X:Zgm -DuϏ^9tg7+qQR %e{+LJ@[HNϪ;`B25U\\qB4B(4~B|"'tPÅY>bFRĜQ^;*,d-AD/̱ P)|kw%C(.%Oq8,}G:o(S:tQ%.@)^\/A?X,[ [6e(cz, \%]UJSɀ& US""zFqI\>Sݧ[[nҕrv5(twA7C Fi;96b|v!VN;t( <4IyFcX Lsku;GFp7N#gkXhz9>SqΔ$qBFދ%3(lt,7ҪwHq /눵N9]etn]PX=+l)ef}W=ei.02)+(AvkہAk[%r3߯y9h g+v 6nYF=8&~8R0Mc >VY7]rQ:``PKy ꋨGMcGXZEhvElYY\>1I8f‹mm:C]ƴ7m 5'U\Xv_]Ȅ;ُ }8\l7} ,Y4tмϾ$'6w9߉Rk~0(f[FzR:%k0_ٝGdA%禵))\ ݠD3m3@~a˦Ӝop)RݪL5+\cn`BZ@Teu?c[@Ⱥ*l M0;x/Ȧ Bנ1焛?Of>lDdыYsq\^9zo[w$yȇߠhGᷱ -3T_a6cZeXHm&iŘ2 RyU 8?PTS$M z6?-ʂ4xR7%|68o"^'>u<۹ylࠌ \}9=qg) ٭PfED8=PO|!3Il+?DVD'l.ݐt@c.D֕ ApT{Ky)@K{=!}ٸjċ'F,~\a_igu4"a5/+Ғ "NjSNSz2g[S޺nTQF`/_#8fSf >ðz qsq3"I o|e{?> ч&}+mK̩AlBBGOz?[3:Op(QȔ3#H]!T/b4r}c7A6ԗ3_} 32icAKLf,U7GT#4Gq!giD2U,$}7~#')1{g<IELfO=ѤehP$"ŰSV&_R?B1!ag,*imw4V,P:fN+z@ws\ ]XGtU!5)LjH?&._]?́Tߔ3LFiDp'5F:c3Ϩ=sԌTZPk4UZd -y2:-aYUOw FtMc0i+r :)֎i*IIwi?z=rk6IԢ=G݈gKS*Wn3N9: NppcWԏh++BNJVN :Z)a܍@kMwB//+ΆPHbP6sҔ*@v$SqW44J&F|ɛD5Ժ!3g2+;2 4 SRyGځ3-{8mdHOuBF vaZnjÕej?5dA8@w̩E*?tZX}|^'`[@"!LVYMEp͞cca3^]L @}[I! zPLȻrkd:*]7LFʙlmz)I9Mf;#S-u@W=͠ls[=`j( /BZX*kf=mńCVW13|/|.BI7T9{=Rpm/Mt\BS #-P@7[8\xHyrzvԁ$M PDifx(G6put]nL6Ǔۡ(.s RX.'̐eº4*3Q]׍>1))ߦ 7\@t0 EB=[LbS*ꪆ!4*U5{9VSc-7xW'\rz1^f)&d[&͉yjiwǝ%?_FBtUpDz31*4{.Eտ/x0&Ӡ`gyMpՏ.g DK ٺoJ˜:قAPG~Rmﯟ2֯(2b݄=TFߓj%3?l;V^I?fQ!sVC* sxm 3+{uHV~FȀu0 vϟ0UvՖ7 ƘWi#9{K5Ap^>)6D5>34Tr ?њhcm>Sv]DٟH̨u8A.'4w][8Li]uS~*ָ_"_RʷV,S!uןfda\->hBb޿(!PB4ZY"Jя{Fr)OJ( |2MOc!mסvߵCB?)DIc;2"Anduzs$Eސ)^RU6[ 6IjP\3NG_^PS,LX-<)^ɂ/u ZKnVj&rv܌1M 4])—lʑ,W 9κt+T5;֮twdl}EGS'z‘K\ 񊽺yEAHeT!սYZԦh jl36Je^ W;18KRbmf}ӱ :!]{9v f)xqc#@=Ɇͼj4ԾÐu(G< te4qMꧮ@mYI`& 8}DX0[. n!*FB7T6:bWyKR"|AYIh>j7j_7j|y OƺᎊQyEN9,}Yl<~%QebށGmRT5qj! c,耽gq(e'5-xiڶ[ N pJs y%{(4d Ц (zҵ~2>Vg̑vf@2,uy%j`GD@um.wtV% 9%t2Nʽ|X>JʼnK4:`fR]/Ԃ.#%]@=/iiLS g4Zf;QH&/k7Z"(7<(2*{1K@0)cLܟbLX:=x >@Ӎfr@U(-MFa{MCx Aʊ4Wk5Hc{9\ +y^>3y0¬C sq> 9aXP8&CYmW}*D> R뿟´wZ^ހOJVV^YG< 3Jӧ9y<}b|ؠlY'sk&X}L+\:bXe cOIuM*KҪAe,Z:eWvQrٞ'.o1uf Y}cRo YM\s-# oo+uɲ\~ >ǐdnĆi{AJw5h^Ha6KBVhx#̐!2<4̨.CE$ӭqԘ-}|7ΙJaA-<KHNi2D NIZUe@CpLʡe+{53݆Ծ Rs/gQ9A22xr| 9A("Ec#zCt*ؘbʩL}NB_MN+ N3eW:s8F"FJW_g!Y958ԋ5P#=Xf萣3D Sy=7 _Mz5ѥ ] ]ms%N|=A!+}4+Ѩzf VM^5$@DՄ,=lk hBIpW]+`1po<+xHǛ慻zGAi?.9 wo7DK=d iG4d@%8V )0[\IC\1,LxM L6ydA̱; K@{ɻC~E٥7-,SUτ.umEJ?lF? ΦQYcSf -%ՔJW\!6PCB%ֵJk@0U-S/]D@e-ɭIF-y,",6wPAKa @`Y"ȹKn<3Cv4`dNN9E~)I^ a?ڝ4'YhWjnb1xGv2TT/YLjr<|cibWKDW\<DD0O8|"1$V u]Gmj [ q\'u9OJ/HA 1b ewm[UC 5-ھ]6LITl]X󑭒z7i6ֿC8ڧEa#c,3&0˟Ҽ+j#^:sj12[q~OE,fyBXfL u 핻ɓAxAQ 2rS Y0qNޅ?Fv89h#(7ޭ&YH!]6t]H?3Zz5=$U e}W6pԚ𳢋^uuxޢ3HcT Q: Ӄqjޔ1Bo=7>Z$ʼ$F=yHTHz[Il(wadÄhRM/EH&tchD6E2.3'g[Tm??k.S[D뷬&f#fkƗ.bUϞ+AGɐJ_  ]-*3p$r:o\d)z VTؘU/$YI¸!ߛM "[Ӎ(WU^"")]$61x'`Y:0Ќ巎yW h$<օ!zLH+@zjr99 "ˡ7 ƺT,Do5@4U·EIX܎jT |-%_DWÛ2}aϣ$.bVL=G_@vNBCjE-SudZtݛG!O+* aMLz5nJ.!:2n~gHzװqMuKy@9Z+'t.gu1,Bs; P{Db"0fo0pH1i8C\t @/q߆%V0+$Z1CpJS®A2o*Um-zܣ_Kk`zIxqчXY5c&+p{:Ԥlު<3,ȶ$eC&'{".]ZAma-&F^)Y:4} {a4yA2=jz9)JTj u2AYpcE7, ɪqGf#@!ܵ3g?a'6gwQ}gM+EN6NGn5qEܒptBKO;1S0 %_U}$7A"1e`, ?p1߄<_q2r:egyBkEj@B_|mkZ4ͯSMZWC)Կ|("% \֫\Wp_쐷Ye !NJZ?=Čtܚ1 P$Sy.J9/9TYzGvXtU0ސs=$#`kԆ2|;ϴ7&fˑ%05qE\h=E"j 4=ߙ)';Nl=,[V(~-um|.wWDtc!MU+=4d& >Me$ +Ar\ǿ24?sg<}5Q zw?eM'3CtMyM:~gf>J)Ļwr.[^ʉpŽC%;n@z޵ ^3f >wk9z*tӣmڎ2USݤb+T8Y,k_z}ӗqmj7/I7YNkˏ!9)::]fT~øFp )RLH,$-H`$߲V{ATiu5ϥrFZ7oܳq%p e@|(lΪֿP>?o2nNvF=7sv)3]zy+G8j1"k~gG(DVt,,,1ukpQ_ޖiA;٨6'{p T0tR&sJ|?4+i7TRR4*_t*.wj!~=a`f IF#[4_j | (+5z4;Y8ؔĺ^_'EʼxEHd9[SL5+Lh]@W{K~޷b&T'xT-V+H\[8Rx`6I㷊c^.i`f(|Qnw"C6")Tlú)&#YSex*+`HkK')|Bt(wYJX+qzm#QlrD2m1|m@̞Jւ&+C`2Oͮ?g&葋Esǖ1{wJӐ O:U1~](oA;6KSjGCS]n{8㯳U90[I8En3s扫+_e9v}x:+ )OjM{kf$E7Mq:ZLԍ&\{!ş`]%j7.+BWǪ6l8MӁl'e.ۀ} 0wTwAEXL]̍;4}m),:" Cfe5GI_/6Wޝ_PhZH_(\?.p yИ"{jH<|L SǼ&ׅuML C"?~F%.7i]8a~"Jr {WO 覣Wɍ@mHegwq)I#%43Xzp1.a9LirINS͏"+oS aC\"T8^\<4a&}F?~ntV('a4@;5Qn0٥, ?o\ߛƊnMg Sט H<6 )]aAPC9zZA6ln 3Av VёBbB݄`V eE;fFSbKV*ŕX|yz"kꕍecK@熗B~>AݾLʡۺZ|f {Eʋr|xRUE8ZqDt4l=nZa ){PNݴ? P~c+Xʡ 3`U sKJɩҼgCHQ}`U(>NZgxMt̬>7Q/ķAԴ":͓!H5+&/>gkEҔa 3 +sRru_nv eL@D ھtV2莈hPR) $ڴ:hJ稡"Bp|8.Zk Urz ,@KoЕ}[@4(QC?'G9} Sy8aFe6xE-s<5m\9 |-_*:/כ^Ts:}Y:fk J}*㇂N BdC}9OECƳCLgf&{Q9߉+= 3&3ϱ昒(郭4Y (/p6(*C+:+I|rt1d)͘ bjA˭XAϪ)ϰм=ͭ]lW;X㼦=]W),~@ݢp-yϲ Om,>π/y/ h<$jK/0TM}m2t6naQ-.dMoIBro*j_]X HJ;+ӈ j7?úWmeিqN)ya_vCyyl/Cm]7*5oe*ZqG:\ q^>LaF=x+?g$y'/׽;f\2 :^)`a}X^V: #ڤcH"br}2@cߏ^Q=ړ~AB\DO ͼ/^{&R#׹Z[q9{YZYRѝvbl(?Wî _0Cw':']:!6dtT{5)8Me8C UcK(#eX \O[&uRH"-bp%vfuz,S"4&m~vKx!'1#|g4 L1Y?j(62B>mfYo!u4_O&Ǧ|h yO173Ib Ѕ'\tX32356_ QSyEAXۃú Ϗg9 /ۤ0ͽ坻DR>R,s(A;7+V/r?lG6.jW˥RܰS]Z?L%dJN41OfS$hkfut!D$#&hXL0z,թ1LHm6e18hWW!˘/2 m]Zfvr39c49 bgq$jl8 LSe p[CQcl_KkTVE9>فmbnO1gY$*Z*?˫ZO/ՐQ# Gy|Ef|}I2it]@P=VVKcUؽ M](bA<@5V?w 9uDʻ ~AvJ\N/؍x4{3gC\"5y.)u*z?䅵)0QCw{Klߎ4/t.-/,p-{ c@.v0_6.x7nϤ*W:K[b_ 6NQh5ПĄeuM.q٥XNѾ/@Bl?Th>]u\-܎:($2 ,th #1Ĉ¤1Y-O>*\F/Sæ=T4;Y%/` a9kWKЯ4)&}%W Ĵ @=(SGy @| u?c;wqsO{7xD7`73!sƜ+샶rD> -l- 6l:2g e{f=aKKohS8`|U?B) =3ʼp/=VpG=@[ F}ZɷQ יM14N@+peO ]W1(~J2UR<0T~{u6$ wkS出Obx+=a%zcM(XrC$T|섳&oFHj۰O sjMya}|Ȩ xQTX=U,O-C$O&xUGu5F_F5oĶmNO%Sre1]Uq5h_`3A]9)׎%('j\r6rcLr|Bv=h}L_OMpʚd=wC)|kLl tpOͩ+II70Jw3Pmj]όqX~+Ta{JC̰T(@;@`Ik)J} ϝJ.]F?T#Pme.No'B a0T7h/ :ٷtW>lM/вgReP~/90Cwp(i݆Prez?[S+[ULZSnZedêG]I$GB0ufҵ_^BeԤjj=0Wz9^n,XjR7,^"fPDD(;_O\SV0cv'H-P NqN9W g*7]S]qg㩝&l+,nȝAdA1gw |Aͳ;6| &A_8"dT!.ol:wOljOjMy!"!P $[ik!WQFYl'_mh;-M"jap=a<").M.I8x,1@uR|t'W(gkӘ 4QFId`Hd\ճPDRF;|* @8ezk7Ώ[nns"! Wkdo[x,,eY* U91rh~цh0L-{h xIh(RXYjQ풅FrqKtmx_nm pcZ>)T#Q GN,3΢<.;!7ZRpP6Hιc顯7>zIiUĞ6&W= TES`jۀΦ2"c^Xgj;{E)ݥrm;JOr}LTJM=8*ls;J7R)Jq1mon'8UB;t.741ΠRvvQ;ψA}"=;NHx?6!'5߫˅[:jw+ǯ~&U9N8 n>ꇳ,w~ඇd|\ 0M JNE`| PaYjT,H~wudey{iҧv`$_O_<.~m34ߋ72/XG&וhuv{N AΗ$)x)]ʮɝU"8"`8&?yC“Y'Ή",+DԬVsEz2o#,5tX2Pi"~"[5V"WT;5k!Ι¶iUm~[V&`,RdnG=^9.9S¿ʩRި릢Ŧq2\s ȩZ쟗p4 )ۢ;_PJUTŇ"j: mo];ovpg)^S{AQĠsTc &u, h!`Q!FKEpzu%c< T[ l (sgl3˷}lAws_eȂ0k A者5㧀^L5Fy)IsgC):p0_|)Efjmo%ޑtn%@/oAcxzGvB/W=~ L߽`7Om͍ )!۲G\ě ing"s6+uNNP>&6dGۗwYh \ 1ri)J@hA$k߼$uZ aM\Hx's&@SB_Gj;bCʵe !KniLlׁz8[F:wi R綄YHcNr[pV'^<'IkRkk͞2f X%pq+p P l(]}c)T^/W2his6-O 0Qև?@}y,YٙJGcok8 ;]Qp׉ (jf:S;"Z״PԧG@\ʏK2+J#Ϛಭmk>5H{NBPU)![) V'"$I5=9țdI8ZvU3FȴtmpYaQTFCRW9|"U5ds&d}E^>X?n*r۶ʹrV w5`ył"'dP@vOU]ɪ|P$HxuSϧ4V[8gKց^nd\+kK 3i$kW(%Pu7Ѫ;]ۅ>LsCת#5~g7tr vj^ D<\(D%#ۗf؟N%?}_n]+V{#1F]?dc@Aɟ&;~|%V![4cT xE~-aEB'm(ǪGanSO%#"4A$ RAj4~B%O VWIrV3d<)^x3y +x&R|D%vN簖:DeaNzlgۄ6o7MWv7uv;bL7^KXA,~[Ah]" YHopnm- 0]BBF h dM&f# v†s(k1%d{"gIuׂg^٠VmszPY-~E+t>_ߋtZDP\GMf-M@,!ca)/{׋R[ 7b6ABhk 9ֿySQd t۶;dX4|;O#VC9/V* !*Pg9 V}0h/qG#m8-'2qZսaC*UR<ؖ+eOk`ztYANڐe{[jut[cGLOfU%잻NSctIhXy.OV(r͐&O\}/qy$ףY8}KDslel9~E_a X-0Lѷ2?Py|s` ^ubW5(/"DD/.B)o,v

    QLAO=C|[Z3y=+?}n.V{׽<),l`6F vw) xݬ A;i7#J&}E#phFnI䲁LM3gϹ[S*oJ5j„fB^|S\Q0ʯ_{1Z`IMj8{EDmg}bs' Q|\7>e 6%(/|ra8?CR$g3V@=}aNVjiRg끨@\ ^N,d"`%RGw-ҞY2mUk+vjJ$o :?H7>0J^S팹rݜVQ"#N5󎐎!L.cI{{y*.btK$BV~*|0ڍC9UّCt|gRLE+Z*q'7z5@FN;F Iِ[ڒ[; ᎁ?0ǘFͪEÒ?-^jR@T\#@?`q !oTcX~ʿ~{ܔ&Fu ['bz^khngLvSd9QSWܳ Iz35K` ; .vno@~ <,tBO9>\Ka3{|uphn2D=G+  T΄; #yYKKR+F-2tbA!3ٮ &AB 342js*!ĕnZ`&`';*bJ%.JZ3+$T~R 7`. !\0]if[Z)]KbʟXRXrew]/ o2 _ G ]n>YO eʴJH@ p2F' ʑi0m*<5(dISIBA8B#fຈ.xZ*~ykLo7x[:8B'>p7v 4=yrW>67hw`{kb[p߸~1qwkxF~o(\E:~ X^-)=.2=}NZ |<@XJE?.;PWhUۉtBB[ XnIg23 }]+-Ϻ\w*]\,ܑ!9$Q ;#UD#E>.yԯɎ<ᵽ!Z! ,~7W%_We_+T{FΧ}}#FET/{*=xwc:i *vd{fdf: mBZCM~j]xlv5PI WyqGLn.3nب/nZn#2֭"-=|~g^lz?ꛗPvf[]mfȹ2=9$,nIߊ?yYgZ[:%g h8׸ۢP.4{E$xKG폵 mقMP&P8og-'c 8l&Ir53f*.2*$x`x46xqC*fn\W'I@kF#S!9Eezq$% ꀻ&13GW۔~ЂR~"l1( ݆(kV=&lM%}Qrq2}C;A(u*8j׺̑lAD_sS?ɾXD -2_h_0f&#TiMXa&Iע -`8ʕ1l&6f`GǕQ,#ح-̕:o-jeXUq<`p'33Ш yUtY@A"UһAli? I@&PX^=;Ggi+R_D+(<3Fԯ2MihoJt5A~PH9xlZd'7inGgKPx]Tbwv4.}.%wt!5`:?t%\ ̥>SWIs@;J3@IcuClKil8wBR7G +G~E)V$m8#ud$[K1wbc{)b.7Z g2Uf dOㄱCF(kT<-%C9 0 8e~ǖBVkss~Ori58~9J4xLw XzcM+JZh8FciLL0 A԰ߩP1\ n)D}XP-lǸ87qv#%q4RJwc8zcL \RUc%$#'pXZn!Pvf{ݎ^.V]%`.7Em7#:3Qc>ޑR!'.־2,M&lgCBL${D"fB*_|\Guvt9d#~<+nf,SBqnYd`b{LauDàvKf-OӐ\D;>MWG}Ɗsz8uꎄd=(@Z5OTG+՝Q<s"~3%N9kQ.KN;6c_ , ZF+fsz#VYf|Hg$O.\幣%b徃jhJN58$a8?o3$~㽔#* 1 g3qlJ*y3b˚-s$9U+)v.$5;Bk0X5L4KbMEn YF2Q1|xFT+B-f{V(I/'ݪHx3RI(b`8`9j,!ps`/6W Mz,ACG!6:wrIT'xˋ%A\"N`ڥh.w1t>s#>]7S(5 j{k]a̱(-"Ǖr]|y0"`YᔎY?GCc!5482[\gˏ.ޛd8߮ _b'X ] 9MP (킏7iMCD)n2_1D@Wv `k V39Lu;뼲2KdA؟R.% YQmnv49k_O5|d }LB;K*uiDSu-6?[O鳴wW@Eq"(֓"DFmVNZ qnA2*]%\Kög%$|_=qIL6 f}(Plh H3kU@'{rȢI7ҚJ-VP+u픱u>%\sAdH_,: Eƕw>nxߡ4#gYN^ڒ4Ae`ﶆCg0/}a,s2Eo%:Wd^ 7)3hVj,5T^6Z.*N ?z.Cgaxqu/p$IC4z-6/Gn+H@V$".aZjUd㶚QB\fZaq1#'EPjJN0oݚl]`/WJvn~Zw%6}ph{|$Vt9T9 xQ%JƯEpLaHKL xNYeFʟ%3hlc,-HԬ8vxq`qW$/32xdz2ږ#a>A RpģfԜ*@1Q>SCQ #`\İ*ycyR|'=δOP#)^Qn'|;JƮja8 G*w5as#ɖ@PLCObGP9j!V?(l  ]H=4<W d%t-.-G2'z Յ4X'.P4VH`CL$Zqʜi3 $ D`эP]w04i6 DFx뱠sc^]ﻜ*D:V=iIȉ*q, 5h5Cd{l%$fLz&M MpbųNoG5B(bp}>+x3P9GOsAktY<|=ZRL}c uJ3t @ "݉V|h<.lX˞p8W&} 1Yz>znZU~Qo{UfP#7INr~\ݠi&X5%w=?r+W_GT s_s'FcXhz5'TчǿKmNF4 %%Ee*cbx9U)a7~~ϊYx03@q92mwHe:t +MϣV""Ӈ4_TF';T$cO+$<󿙛z_xaÒ1}%/&4=֑"=gÍ"3pf 6ʹLHOZ,MZh؉[k R_ֹ "B.J>ӣNeȉou~v(9LC+rŊ9|dO y tt7v,Au'[ξ͒ΐuMR-\RN}i؟*vZtwbW{TFKp%߼e bI-Ay8I'EbK NXbEÝdˋie !+G4P Tg@dpΔ\V[Y";r&Rf.g#,Gj{+=ZYG6cfަs/IPKe-emV<@ᩄv]^!CɊڿXOimLhѩf4Hy@Aws&'>v ,cyd]=z[éR#rX}{:dDS4$=Il]6Ը⿟B|8H4 l^) !NGp׼ps\>*K;gQRt&g?oLz5yjZ?}= 04ݾȱ#ntٸ!)+1BL59>':8;)#&E Ko<僎74wK(~QO*~ {ͼs|6򘬦F yJjEfMBsX_wfw@UHpE" ]k16KQelRzb8ƳY~%&[m.aJ~ Ɂnb.ڥ0 I&0Y/o >ײ8d2e yw(vĵ4:c3l赁'8Qg"3YVUS,q~4h0y#xMW$],7H8C_6kn!;T?WZ%= (E@GZK(Qs/I*9#] s*p;4=U:RZjD)Ft-gh¶_8?5Ms7:Vd>Qi_4υ1R{t|>:H*x^yK =?ŲNyJ1'"*fLrv&~7]䔊b+pB&2W )uguB9E71]0D8` ~ysc:zs:T~X;`(d&2!%I ||L[Mk"푈JظH04I_oqT܈ eiqDi6/)N$tYr@4J{(0n!uLǐ*ۦd!CA499}Cgo7z>۬Văl|r]1nk&[TJB4w&;Efa;{A5EBEN:miݲ'SQ^$†j: VZ#72QT4spbϞ)gP᭔j ېTc1)HKd}P\Q'l&h]tᑕOB>DyLke#ލVӬ?׻D R!\ X]V`yv*ErþYV? 0bWXw'B''z ݯ&ͧa If+v.&^S ڒse,MJ~Fs(`!gɳØUL⿿ѰPQ3X0~OJr;%wݑSK' uEDEj@u$8H|װm$0h!ۀj+ ``{$^~XpDbx5rK5{S7Ozm_%njYQI;})n H4F6_ҥKM۷ψX멻a%"FN' yK`'ӹ s.q!ͬV)mjZ[3\~eOwwCSkJW`0ah%KZnl9q5y sK\tY­Lrq|U C*'Y]:{9Ño]vfO9dT2EP##/8vZ-{(Ļ(sSc[u7S|%3[z;bދEyH/# a_C ޞq^Jhc}O^k@1Y}3[E,9A eIݩ{@4.t$j6w>O}V#utCC<0EU+,ofibmLr$'FXE?[{l\\jٕWa|nn))nQ 5̍L^&&FDv9ωxiX3 tֽ Nu~+yi.fa@T*517YF akXnYث6vkD( ;~EFfʺFAOL_1hϹ'$D/ɟYM5ALK׮ǀqUdYIGo@+UД!d 8L̒(A4,=p\˲o71=TuW;Gϟ'ԍÙVi!M!q*zm_MA!WD+t6ʼnA[!\\lFf:=c7h2nRnU s+)ô.!(3DgPm>3wç 9aC #ߙ !U+1>zDf(&~#4e*i\:H*!5ԂpV%=(m◈ۡm8RCܣk|i]G"_R@*8U֯Ҁ]x)Thp3 + *'؆_8$<9Wf>3e >3Fp%}q/%ޗ?Xk!D Yx}NѤ b}=%чTpuL} T%u<܋C8fdH8W1c J죦g}RIo|LA0?Oj?p{cqk{ mBr&[Pr07a@ f2>Xa.^x:XiQRL3{KjK[ym LA$>Ьٞ' Y3dz'½5#`v*ʦy9]4T:[;$c!jOq;V( o=pc'Sɭ%)Jç 1om1*|72+>~hƽpE5j& mfGE7Wp \<70'_ВM;턪8 fFނ)j_hk)lȎȆӄ4بtWY"iT 'r 4-ض *m^'.M٦J؀Z̉Y5;J+'|t7Ǝ z7(c uh]wG0k.Xx.mTX<!*iXhi<`yItPj]U(Aon'yTY sLdc͝]%ep0K i^0&? +c#ݏD/g*5 x^y8;}O %gD' zdAn7$QQkDzF*|J5KIy!=* xإxCv) 6'AB4ɸu e6 tsk_Xl HR','@ΟNwz|Fu.?Yn9BA:;@T{W)8Bi!׏?~ A:&'Q'gw |$nҽN[rjc#3+u!\=-]lA{xc/6evCS;LʦK#ia#YҿNErx?ߜ+KlR_|c+\Vq0Y{- j)/d73,Z佸-Tfv"'** 5)^2vT(&YN[1k!XtъjXpnG>mrnjOs??xmÎ F8:@dARdU; B# ʗF܁jmtw 8̜/)Z{rPhWA.M&͌,|FnGB4`>:s.yf&6^Vjj(fܾ):@[m%ʸ˨Yn:Q``ѩ?Officx6aniKWH=ZԱ4ĆWW:L}la֯~cho5~&e>`klDuO#7%k‰pk%g(I?{$?9(c 刯S& E\8oB1L:(MjZM褥/V=V8nj\] ni5p$NhOA$mo@9khCXy,fTBv6ӽ(pd2_x[|WKGBW = Yh Kr`:cn"|iF> (>x8Bՠ#1B] vje_HM5cd8)vJk.l¹ꙍ 1gNm (pt&@lRLSޚ*㗼wH"٭X5:{VtHucԗ}O pMц{EK}\ xwZa'9׏_u=3o ~96X _WK1HȲz ,D>4DH%~Sl?w)*RU0EşI 8ُ9#eU 睸 w2!b{{ ɸRާ_ૠK Z|gaAdTw?«ʡ`tK|وd(ޔ 8wd r:sFKWg_!]f".FmaR/fQ}dtEَ"f{iע #M>ppG@{RW(Rʵ('׿!5S]n<ϐonqLsEZTYr_*\>!@&VSEQ$?M˯`݋n,V`l@Xɠv%gQ7(0$QM:tB1Khr?BN2NW}\W5'}BX\@T4T-/)/seͫcԧuJ<\r7a+d9ou$a?]: #4P\RfG [hDw\ b#5Cd&pKѝLeF~0V7 $o%vH@x*Br!ڂ%*"#s|6άV27~K6uFsP"wMs|[T0T/ʉb2CSgtSNOar/0FSF/ccR +(yS2Bf{$XH1܏Ӵ_>ڴhW3y}f RJ<6 ɈĘsjV/P BLPBn6Hm8.&:}5k-85q п 8 Nr{Hc&F i{Z!ڍQ̻J}{̘- 𱡰xšP9?>H7)`N?B64 Ui8-7)覧B՜w3(.qUr^׉[j`C-aem c(?EءhWSlQr - l~@hfgmPre{,J)³",wH<ˠhEwX\q |7MVID_Dػ̺ l("V6`M,@piۡz}cdKҗǑPp42JNuOnRa,MZojM*m 1&CUBȃ* hr!5Q:*6>8<\5S)aM.Rr{[Cli!Uh;dX.6ꦿgNƲ&f͓63z7;5u`=tһRvR鑝d>xK;3#VbVsmC>m̙CAl @Q sfC~3 !~nU:;Be@0}AJ#xYqV9f]QEOu|L9̃C[DH%C͵^p26+"`f|r%~H_F!R`C<́J>a#N?=)T{? ҟ4+ӷw>=_-l-$u\o*<3p:5ҐT}4F[,PB[($8^:ZA 2Y pn+ س5r,kfL.k`C?i({LVqa"L`btb1@#=weu frt71P$ҹ*zIPh0qYDV^~xeA,S|-v֥!ӼQO0 {L1@mMC6+Rmk{L{QQ+Fܡڵ@m^d=h k8:?Am;=Ŭ/5պ~uJUʫ+ָ@rOWy#W1f!Ŗʆyhu9,26?{Z5i}jO!̕?nFtK4HXڮ=d6 ]{O.2vf(T?7i ";S5CQ[ӭɔ,]Nw#c dg58hfӠYEW&Cz nGO" !9 uO#$0Ln?5z7\I[HaXxM%S D'R5;2Z.0Xw'x9a07%֐ p臨V+JCaf\xb!." ^+Nf `{Th}Ff,I~Om0?('iwQi GUL,;(@ȟ<=1CQ:4gusp xW4,/ O(x0es`MώS w@O:ǿ1Zrqwr:l^NKݻRCW9~sw5*16NI&~dgaC# @`pEv٫SmIyR?y! )T D.L_e)pgbWJ"2%tPk'Oz%ϡ7̸؄\dK^ʂa0jO}CI hށWX{#[2V\OeKX.:u\(?{l>%8Ѻ W)^-!xATy^5 &HLADG65BqoEQ;`f3kdj!d(l/s8z#k3򀁶7 l*]z&P):ħA 1aULTxZPOɧV"@..4\d&&sYFJAmUNL^,υ>i<)8=IL% urDu2 E5,/F{Xo)X`4#喹KF]1zK9\>QohrID QNpÎN[ 9tD=!7-hn VWAN() (~5ICIP8 ~0Ó[s }<`"X)鳢u>*OzWeS5u6;"g1;1%&DPŅ:`Y⥃ܑ M-?qlLg]_Y=*:ZM][jC]BÝXj!FOY(կP Q鞨nUO;-cdVބ+2Bv6aT zQ[xLEN/֣Jp >G/=$ۊ'# [m".i.8GJ`tB0%hZ?MҸ"wu,% bԝFPު(硑-~ɼr}qmc"щmlՀݒm.ε[Ң4۵(H.܄549Vj{,X=lp 1󺺑.1 [^Ӆ%5paρ|/ A}j]38V)1ۥ%$hR}81r'!sP'D .k"aL@TPQ=n8+ IO1i5ɉ*3* &`'FeYL,0tujr(UࡨH<`afYwI9%BJf Oi (ǝ\hHel8 O[-\˳;VA}ȵSR>9qR*kSS3hvr cckpOhHu 鈃-"r~{7 &&o UP렼˳D@=x* VF73[{TLv2L7k]WyOT|C\Bd}2i^׆g ^z0}w50z=wl#6JsU c ˹2o`<%Ȍ*@nm9T$t_y{t0|q乩Qrgɺl>?o.e0 ƽ-1leJ)"4fX5F!8(w\ M]d1 8^taq*NjaL8RQ I5;1 2o)_'a={eFɸ@]?v  ҤGĝ1PFrJ$=]tM"C>@)'{c:+r]qHYgd_6 LzptCfma?&NKέJ@܀Q3ATF.쯼VI(NfqM_r^=Jן>'٥m] 5 ϳ~( [g':n x U`QTn_é4JH1˰E>*<yb0zg  C E45^.#ץ K,  (n+ eYӁ6q{jauEr[FD,ہ^,zUʃ/V0Vz1KudqL;T[T9!?6[LprᲥU\"/Lۏ! ^qr-RSIQ7V>+};f.ei!<* мe/'K&kSF\ $l}&5Fo-g w^*7dW]V5*{;*-~rNοM{e؄g](B}'|&Cq n%X+Bw~cyyM%.$ DB7'zOrmM[@ Y18kpϒ:Ax6lvf.u+ӾsGPm^rq]6>~ ~d?wH(jWݭ+b+]W@[lj%[2I 1E*%a^\ sb#u댚oK>^%apeBRזsO GR|{V -1 TК/,Ӕ2qH xK#e"΄3Os̄uteGߧ40N mf|[P h~(j"\% Rз Tk 4*P饇w rOtKCy|S(mDpaJ4ΔJfذt'vrJt4a  >9N̅vy0$pea}E~TTPd\Z Q9.y׬fF5a=VjuˋUl8ͺ e./Ui5!z}g1R1ĭL_I Tu 'W#'_,CrqCz;g}) #X@mp쐚 v>PS@!1p -FPVeQmM~dV5 u^"q? w8b0q#7= ʘ_S-O vlNivH{%'iS흼zk;H=ST,O6]NP| |ΘR-\Se]UFuaDP4DÂs~oG.G8tSWFhM|+]gKa#llb1{I=ġcC4 ^ӿK+XTZݒϽ.YGm`!k y IOsT<ȉY&k@%?S+.P0 :mKWt~5P'rEtj"hQF#s ju=^fMc>źdROC]2\ c|4>c..lӒV:Ҝw:\2~eJ-aZd5B,p̈́{m`<˴ runXLk 0OP-J9O+Bڛc;cGƁEf-RS佷xw^Bt/N%O:7W_KSk3EbМxJ;<. ?!MB"}dBC"cxTXѷR3' VXDj5DfUivi NޛRǪ\nd$5{1p`v K= yNrOXŶﹳԾhȠ +|86RP,)m|7NJ{9(e<匎sTMjI[\&My ng# #1N<'(f`,fOz2ܟ=B1{C,(\, ,9 [0RPhvɫ5BCF=͢T+ $&4-BhI8&ݞX-SӖƜu<ZM\tߤm, ṻ51][?V|qQd홸7cu\\B,D`MՒm/ 3tR2dZ 0v#`sy ڼ=m/X}yūAshbA~> QxȨz ݀usI0Ŝ@4IR eZy6| y$ҸxSMߖ 1MmA!Uֿ ' WYHtէi1qePɧ2_xZS/Npr]_%.Gokޗ{d_)+͌Tä yOSWxu}n:LN:44z^Jܒ%U=g{T;"vOpS0fi;:3AgP>K/SF㛤crdX LJ<!u<a O6o[6HY>fP G8\A"ijE!H,?cGbA rԄ~eꀠ:bҌΜ*xv!o=/=}GI̬@x^DhD[Z7H#+j',xl߼7@z|t H!axw%dqWƶ;ti1l!lCӯfzsdo *22{)IS3>*! |h y@nڙ[xUD?AE-3+)Q/ VY\=%S9ʥd>6,-/~5ߠKУ' 6.sq][,`$@ : ^q;wVm}eeq8g<| =הc w`%ldV$\%^gw!ia2đp%ag,Ge"h+ON570\?2SБv':XSML\Da9O7V jW]DKELfUJ̭KC(jfY}xaJF r1>!x02*#xX$}pM v =LJVCPehƢ]HbO@0in(ȚÙlf(TxHTΗ`˶J:)#_tU8>?'Kg6l@8ۻ,CuȾq/$$CD+B`A}WNZՌnAW=Y A h!L8!SڋG=Na.L%kl |-B),^W㟾CV~hv*5SeNPpx M-iU{Z+ B\|qJzQ4F/V*k*MaFW1Y/xE7iX소Qz.[Ul\ĈU/ד8CB>j5So`@U1ꬲSK@HW ,E̛q]9YRP]F.\KvOqp( J' +I456ֵ*ƣC.\O~WJ*Q "Lsno4=< ,~q%2yV,6ҵGVtL2yDG#sW* >pGLG]t=I^EnmX Oռ̽&oθCxJ4'T] 1Q&c).˽֐jm}+lYFeMDgU~-CǽoZHW䔒 hn d" oLE [I%;^<+#T2Ќ9-{v -n~iIN  %R@<&\PLo:xDx0YFC^UݳF(;XPe"c2y'_yX^ #6= {hBnj:^GBbዻ>jTSc ꋔ@:*M 3 aei1KP⌿X+O< 6Ǧ.uDWgLT]?K-lK2vf2lYaMMek70A}G5M!U+}aT78q,]ugrW3FA{_{%.z:" xZʀ螶ܶ!]+)EH,݁PK(PsWX;cu ԩW$m> cpCT#%XQ6H0//07_UJV ujN3p 0L9Vff 6+oe&vG-D^?eTO68ױ'b"{WKn(Jd8ηxf<øqq xWUupDa]IM7`xUBS'ӿ@*`.,6EOZq*հA~M3MK˳´ɐӖd#,dH@qCx#ح_p.2Dpf ݀$l/->o\)Ðf^ur94x/1I˼g[:#O vPj٠49 je̻Ҥ.JcFňn=W[)-+Ɵj4q$u= S?S|(%{4\]saBQâ|ʇuux兓&'1]v+a>8H+^JVT~9_ezUW+Crh+*uMuIXq`{;f9Ӻ#?*[d;UM.:+o9X)^`5-M@Y6 #w<`,̽>jn&|-;qb\n/} DrA٩_'o9z3Ko:FFRMly{1buK|~jCS' QN+wf;؃vD^b}7⾱tgZ{Q=ǫ"nY';'R:".ErW»PuNGE]3ԕ.Jp>iږ'_W7,.`RnRhOg(|[mf鎴03pq 5UJ(Z$ 3y*̘`D6ޭ_# Xu(u`\{j>2 [(lvbzPT'z-ͺf['Y]}|F V']leZ<Is+aD|UNM~ikI(..Pԫ G\!lN~'Z0q#)lVoAdӜCs|Vw׬,46`yRXQ%슚W}p褑( ,٨Y6Mٓa{fS̱SC4}$teU1a* S* yOvJsG Z?.ɸ(+ے (7&e&Zˊpo{xyJ}1[{}o jg!^ywsrDmwPݟMOy>xsT'9`uX\HZ*nQS,Tn3S;p+ *`슭ԅ`N+Z D\keb%Rm{Fn/m)iT&K%0*d8dvq8i,Uv>9 …L0Ky7aq+ل++y:Slz$>Sc?sm0!LRfP0Ɓ0.3pdM`1̄.OkX-Ba ,?&Ne@$Ǯcz y`ɶc gvv`DGUJݪ3ng1SZjJ|](bo.[F Un#9PђɒjX$i9f- ?6<k-O(Z+M""0a tDrhh(p-_鑪|Ph7Uv ie%h1ұZjئHoAcǞDS7,AvuJKwbF XL뇷@oI,8gdz:djE4$%HeJ#)KF乕o۶q7?/ݍ#Smi!_ѢP*_(z73ɍWϩrB퐵jU#tN oh" 4sIsHp:aԽpނN+zJ4v[: ?)ray53{bvKDJS;a`ʴ5Rӫ 5Ji@k[X, ?F̲&^DIh'=~YQ>K o 6s5Wʈd)sz59LY O q#<"+ \̈́#d- e:-oȁ9,5È2m{dAgx WkdR%IQ] fQ>UBQbܰ*.mCquVvTn]8ֲ0LDvN\vkxf }ìXB{e Ly U,kOhHae?(t܁ r--r(ԾYcw(WVgPdȾ&0K ゃ)(~B阛3^>Ngnڮ>— /5JA, Cu>&Nl<6}"ԄB$\Ⅻ-p!@Oih,} i4ARL﨧N'i։Ќ:dpm䵮.$r;K"ɢ]6Q봝kP%}6Pp-~>T^50`ۨd<^rꩧ?2R;y1Վ/uXڣFs78R=5&.@rKTkpFm$KU: Z" ϖY7"+gBC XN ڀ?ie? RC[6} #Ѱo". C¢D`ϸJO4z0IeL'S>xPkGpe{߯f0'8lhdBf́Nҿ¤2k$J2<&soTwWFl*-~; YZ

    Z%襜YfwMh2MqQS!8IeSB`H&(A$YF з֔deMKcZX2EqEbGVzlD?3n"@KA bӱ?9 楟__X+AU@,CӃz@ T9eǬ#3m pߊlKTաQ: Xtg3@7N^!U$-=\kǁ5# zI: nJ>^ʛߤ#6zLU-L5hjp7Kģdw Rݬ= 2a UJe{0GjQ̳ <%@!c;,75JJ9z{G Pd;j3 5<wNS_B vWIdqv*.ҘCDxLcxI?M}po &{atSwyl?u(1Be33Q4HsBNxU|7\䑗&Pqާ,-4H: j[n[lRzsG1 9ɔ3,2#pc.DvA,óN27vw\ HִVc1Kifuy'5!>aaeRW=N .<ǾxU< wZ<>N{(>`Y Esň=h%aL\LaLxqR 2B%yI9\kۏK Ҋn !s:l] Ճm7 ԣ!!a9ֳI"7CA`AS y'(Y.g"x EуI'x)`2›;TSVF:r K2"(¨M>t#{)C/*$rkq3`f`Rq;@z XD˨MB m&ۛζP 3xul)ޜBFsٖ@Iaa+P!I0Y] "17j,I\tp]7 6l[ajR=G۔Z'irM.t죃ahwZ;˙G=Іe> CiCnOZ9 uSKd},cPXLjl85DD3Q[٘ VGR"9R0G"סs,ua-Nظ1tLx.{H"2J|U~̾S̿OCwU^jr_ LH2X@^@Jџ\g"rw{“@&y2%IN:_AZ4)r5w=:Ҷ.&jO﹠*Ѱ `rfKϚ7:!^xζ\P;rF>Ueȱ-V{]2-U'xxkSéXYJY '1t;hg5ImLWxEcIg4){8WC<1-U`j\NUwGnuh'U(JY(홨e,l`^TWЫg#)j=I( AKlXI4QJ[T MPn˗ٍ O1y|5T9cxb̰(it|79ͪdnҫю>,(_1\G}I[W1)xZNuB# c &C!Tz Tn/fK]u/kKiS,A6˧eN{S{9\Trd^;iK̫}GQ vuu ݘ5ZbnF5.6^N] Y@3O+G jıfq[.Jk^AF{?-"j l"OŨqg,4%F7ӿQpH O 8B$ 6z,P+_)'C{zvu{&i) =6&8(Թ$HE _&8aO&<Đq(qsfh.w޲6P/_X6v-QwA @i:6֌IXBbm| dQBL䥪 z|W1e1$ʝa5z ()݀Ȝ}/~v[7޽vJx%+s?{ZH\!08֯p!0@%`m%N߆Y;c %pB<=S[<,Byuqc{^d`H*+)z~=Sor$>GbEdb, 9s,)` .*#wM% 7C%s|pJez) {R5X/q_8 i׬{s2OHSݼx(sRO(e=NkP gDx^}Yj pBBJ=:Y[PFl u/u{LX!&s<g>Dc8X'h04`?ȐV-U,G!CC~κ\¶ϮmN`.eӥ'bs˼(؃d%^)Yc1|Bêy\S<gWFM_^R..+wAC:`L;Y2D){UUd/n,тb%PjA_Sgqŵ6p~)KpBܲ67 ۾~G)a Wz*}ĩwenUnv{pN=G?/|pX hŁU4&iWi>ŏ(-L'Uش4jI%*bN|}S1ԆZ)[6rHHVʽb/\lU#&r `.-qG ]<[q+/ء/ MxҴ {ʹ*UODO-;< Μ5i#7: 2(4bްҳBaYUʻg/N!ajp&ns ܯZSl\Lif_=szl@KFRO»f|>'sbZn6jźlD!qIo]IK&ǣل izB胠Rl%pJӑBwR.Zth IGl=Y{m6ytlw):f *Y5|G(\MƼ~Lԛi &tI`LMI|2v>'KKzl ?;Sk}0ɖ؋&o:&K8i>+$hjG狩JsF^i.hZgA;ndR'w54#pUg700 1@[ojgKH&6D a<5SZ r{@ss:dϻ۳_ MI*4C_}t3 An\<U+p E`?L=}cZS#padJY_9ϬY>cQ/+ SC1N+Oģ= ;oⲊ5`b` ]MJ5ISm܀xOX \!)( 4-*?+K"A ӋcATm73/2jQ^g BV_S)dY@9Su:秐)j9M+D B04C*ÍMdt<̲uB !nD63'64>Ɖ$k%p8P Mo^FI.0sx!єli͉V\|!!$DQs_t`8On8VU Cpx昽sZX!3\zc+ f#!V?±iQ6=0kbmTM FP|Jݝ!o溺Bq䳟{HΪ 4ܪXݿSh]kWv3lMgEh"zIH}n@a̴B@L˓t9t=%G-[뒃6:GXYW -yQzdByQ{a 2Cl=Wy/$JU,&gh%ߋ\ OJp:RI {9fS/䣝j??·z\ѐΘ7◅0 a@:݅\M/7Vk ,V:OkT[6iil8GI<lI+we j$<&g,\`jUOq>\$%Ydnx_Sb*H1rC;weҷұQW03jxÏ..ɤΜ;Xb"FJܮ͑Vp\_7VTnTbh%@\aw"$=ŝۧu,A_H;.|VghY v8j]\!qφ+X^9g"*v=BH" مj6$v Z82; T'G`\Hhhj0| ~e3bh 9uv|'+HsoѳG򯇫{$y`rm#}j>$.{#HE^Hۣ?h &IY =!\4lHAh[M^ N0߂|YZ Lf~Xj*nc'Kd42zTo۩iXBḁ &,e0ĆEYXI%mO\Vx \bKyٹz:d5)*nutXCw. W& 4nqŨ o fq9kWwR{Y1B`YIQ &??L$=* rUIJ $m $i!IxY}R3 U>_)PJm;PPK Y:53ȑHT}us[a^.(Ƥ = dB_WJAcdwDm߽ %Oo$_)'&[{RZ7-f+9= .b<= N[0Zӵ \Leu-mar!ŮWK}Boh'm%MsbF+ 2 cZuqӡ%+lr!#*%; ۟ܨKKʻ[Wz̀nxjӕH'7Ǣ4֥ NhC6VoEzoszV:ws[qf*rK j+Hgѭ!0SMИ"G94<3j޾KSMQrz`iXWԫY))xMuqL鄇QsO3Z+?T)<kjw&QSj`NiOx`%X8''%H]@ӃR>I.?[s)o( ZCyWqή3D֫(e|w+`#3ߛ!$`zbTq+{y] a94>9_p:) c#A&Aɦ893 WLt+dZ5 O%/?8!^w9NaZ|z_E>_(6lzw61t#fIlmʕ*ǘ&BMkDW %AKx0OUL_~@9IٞdLyPm$"p/kBe+CQJ $\$˱ĕH%S}2er[ 2i./TJ #QX%H5hጳ<8Zz:%_ .eITUzs8H3:?RTKWy{gRaXVA@s`|݈dD0y^#JR;W!q=Wֹ R܆,Cu#P`J<M k"e^v?яLDi=dLw)I8.*GV6=#ZU_7؉[tѩiifҁsu0rOaqDИW[nzTN}jKS &_H#WcՌS=7x{˘u$>5^9U L*M.q3)r1!ǩ;d~[C8~3/^V+ -נ$%\#_^zh?\b:=eKX 6dӕYpӹ)5+*x#tߠ|U^t߮eS球(Te() C # v#_䩿ަu!biͅ \aͪ;]pO͗#OMo%b(.Z:a>m9w.=r͑Z.*j,KƔݶMwsXsA%vi(sXҙ&H猉dsQ/qu4zvK|m k#`NL&zf@N*^u-%8j4)!0?1M &iؘJmn"Qf0ͱ"b3ms´Y_杉MZQ[>޸_9A1$F!/7NdLǢyIQP}ea(ޖWVh5&mT%0qm}!v'`ی.o?srth"MŲ3]\t7pҰeo1ų'>nЦlЙ(n?o擾ۉ09\dm"'J=F&xuU^ȏMW#EbOc5e՛׸+.{3 .4"GL(D2;F,ω$Y-O(#ݺ鄭(ܺ`9͙_񽴑 0]0]59MY4&rD`~mf< GEzh.˞ Sh^gɅ㇛ҩ;1描j/ab"1.YDnYq'<\qǍQ~j]#/5L|[/g̘wr7<^m$ȸ{ X7m s X`r겝y?f=-aV0W, ZgAJ%IDX$ ?pna{֜?>(Y` 3A.Jnw9 vmgնP\86JP} ]qcYJβ4z*HeY!ES<ֽ]qMjdsKȧ4w4̌ߎeGr~tO"o5ׯ]D={ W`F[@oPH)z#-b At.U`2|P/'*Y!$R+HCm$SeIBH?TUBJe{|"| x AX0J$˻1|h4B>iA]}폔!ֹi42}mx9k n9` 2=As~AhD643EbaqQw /!W{<]>&N[`Q(u:8♰ <Tdp3U+gXIo 奄VCR(b 8 ID7zxb Al~-4Pʜkl*2%ISաUF"z3t.(n"KTdn)D0FgcNf8bfk7[* I*lp qgb6{ ѷ0}+IJTaf+5z]>Kq%djgL1L8Ty/>l1@lu7S<'ףo/.Cڗ=8RLp!Է:o1.xq&:'Ô:~CS>ƙhf@aLX\_,M ;oed5%_݅Ĝ6^tUm{:>jE&SoLx\p"y4]4r Qym" qey/k|!./Z~#m5^ffmDWv C(ħ(ju砰䐂zw6vu~`vF Z^:#n?(h]4C|{SJ=.:0RvxUb ȋ=Iu'x7T;vߒr_F,GLAiH<>Leס('KҚlKEBqCHҋR ܑNc?tGNP 1m]^{ecԳ(m};eBa<_M={CܐH|c(k*y%O?J]oȪ*=lLҸ>|O0*?+JPȘC:)|U}xZ$p;Fo'1cHۜ8شёpd N&x7P0j([=}94*ܚU5c s tPu ^TrD,#,D,,=JJza8VQ&/FQl6br뤷\SaUi+aCu@Zeuiz6^ @)|B1Q D|u:habO-'wkn‰+Al_]Mʤǘ#*;UJ#UH'>cuxSbM1$i(6< T >ǴĎ8aTxKIyLzLš;[48Y.,FNzԉkԁ4c(.ʭ# (Κ.~l̑I ʘ\W2|a_Em1l)gfDDyT6v3cT^]z\Q G`K4E >Wپ{WEjBinFΆb,} *!:}A𹌅}TWu(@P+%&>{mFcLIL;~̂D+r̋a'T#yX0L—6,kP?R9, X#RALg{-UtFT~|l#ci,jOٗSدd"N'l82q_<!GwA( yqaܸi c!MRT @vo("k/)x! u 1>'Hv@\hX^+72ch\q;Hobq0zf=6'V@+jnz ApsVdc/ ]Pb'qBRk oM0LXFJ-~-m/^}8kGn&kvTEAM\1"Q(:"Hҟ\;~؈7uT)%TdLEv?YUa`'_@ qvOjW !(_}~TTp 0?ڒF¶"Wl0 ,J" 8|BMr>I"r#AoDK FWSg˜h|7msLruʗ>=7K눷:٥xoUO4gR !K$C/*8?^;hÓsSٺr8[`# Hz{*ibAd1TiOkX)>cawa>wM^EИ!8jӧ(QNTy+m+6N7iC^jiSLtFΠ~/[@[Y][7٫W'"Y uo5x{KZ=ȕ ]O_Ra:caЃE-4Ggt q2a%}ph+x,={RHȽ3ܚ~=< O!i,K"MŊI ;)g/Hv1`HU,Uzb9A>(^}߈%-y>1rfrhtKvaDK/)JKAig.-xjM钧ǙaRkn95ߏ|Gj* {n-Z|gbZhdx#.YH?'\M_8@&pj9~/7sm;ܾ Hǟv %X :#dŝ$WnF?C vHrV" |AhenrB4dC3gjHy,LY>جt(qȥD`n{)UI}hjYRﴫW.cJ:d$ԖTTdB1A[:pW4+|#e%9ȽYr| |#ϮJhz9:3i5vGpw \Uh6 [{4)Sq -:nn&tGզkD{ZY;NE/@X +yW`-R< gN,Jn8Ԗ3hC fEsU:@]%8[А6h&R,vyW( ?Z,7&@S420FC[3٣{[0^L&#E,Iэxpkk!kKPR=PAK\:`S8d\)9q[x V)»x05\̢!gXh =@D9֢zXLy'MH‡iHgxo7#)@0kkB@h2Eؗs#bN 3- fvlҡY&M5K#=Ҩ2fFh T|)R׵*T +!YǨ9;kcH#ZG鞡_˫ɮ##.GC[KL6IſPB! Dta #V7eWcJfnx`6^k 8~S Q:IӤ1RwƧ.Myֲz)*gcY{ωJFDr|VO@U<~"_ZH!a "!3Ww (fn*mpfgVD[H)ĘjW5Pz+s9cu:qsqQ=MVH'}lJ.3J:hs3UOz|s$.]~eP{H_gV?Vr_]-z`S+59p#O<޻Ht˕];\5ѻGYeb6ߝ?ɹwic (zi6tR`<}VWKo }Ir!dDMP(}wy|f}1Y$:Z1WjRӴLr YIwzX9i>f0ıg1 RveW\vOqYrll 7֢da쭷H+x*CIpND5Ʒ3y*0Qa)!u*N"iMweaSX:Swc@e*asgxIsvB)ߊԭ coAA18/o bbm? 4&rJ ̒߷O֩jt֒CBpS7$>G:aX٪S["{&^-v^v''I![$\#&1wsn mȅtP=JYELmTGÚKPo$p \B~FiEѳ?arVXIT'ܐǿW JfGw1C<{iC1VKѥ[9!MwTA1_ kqjѤӹQ˰bj2 f;vjV.Q9#CvbNG3*[{;+lX#Nl Mh~n` Į# >lcdظsWk)FfJ) 9],\%ڞJpɲN7#:j&SQQܝXs.)ۯTh`*m1#P K4?i?"g^+Hwt *1#AI@fmP'isV G\#[x'34 n&2}gȖגҝƀUy|ߚrA\?6! yADEya1\ԪƼ1T><~;U h.?XeKIjMe1`V^<ދ҄°|CVFB-kQN8 i;˦8F FbPs?`maոSJ9~uA>o(G?uqptfdt~ZPݔ+ eNҕ?Ɠ/g9u6*Ff6G̟~mDlM}rw}F,k! ="@'Luā![,@ ΀2 B|}ov%2seo[TeDg:0G>| "x$[i*#Uyd$0W XK-2l),^^8ο?QcE!}?cB\wr;m(QB+&}n8\sE sЍ$* xGԧ2,%3SƼL@۰`NV!>)v;shLUʹmDc ylX [wXŦ5)/d>cC[jRv9M%{)ߦahgQ۷Pk\+E-B-&+6)E%!]efid6gLx |l:Lb *&?7|Ծz^/}qT< ,JEiPG+?YhN8Nz(`D I5V".Z1 ~N 7 h̓;hg@-9lm9r.CPga)sxV{\QY#5>7Xf@{׽^i BstMQGtEn45|Zww!])SkJ6DN_n=bj"'n<7df;w{flLiUBp)71jlv1췷6 uw_$Vr'0i;|f +h%^\V'=5 d|KaOڭtDOρB pp/6Y A v^zIߪhL׉+vwjce:ѱ!*9 <4s<ߕ GbaM/[&kщ5u>$BBiԊ.=Iu%arT%ŪAw4#bzk(оry9qEr n- hv\rMz4B"FDfX Džem" O&4Kә{#pTG3tQ؎ZKDYgLρt&[ #ô\qZY>sK6kWzܙ!~aL8ՆAX$PJ[ q.jhS[p;aHh:a;Ё״bS- ‰1C&3şW[ޝ;nr.%Wr`X,%5pw ڦN̶Ae0i(T,E2mekTa#[=8wd- mؤєmVIi9B~!$Q CZkEԎ*i4P.!0\W韄PRO4"}VѼΩi$|AROSڻ!Nia(,x{C)0P) ]_kUȅQuS9#ZÂgvi(aQHB_j5rJ_ +hWOx24[V⑄Fߩ ar%/]ߜvk 0lf6H`6tr%>_o$0Rov.(>|mu\ ʼnA ^dq[q(ѳ}@uB!^OaDxm^O\02ڀzŢB0܈=.x.A:|qA$ $1٫V%Z'^I7D$VD`V(zijG NQ%@ LU1=4¿_ ztT@>JE + T)w|blN a$K߰RyZ<Ad+lI!m3d0] 7[ áz9旞;V|O,J0[uH"!Eb$ BĂYGT31uu|ՐT~co/[X`]Ěj|EdW $ 6Z,ϧ8PlTf]z6FDcK*ZM"Q` jk*nUdMJˈ酑B`^xo"w"C*NzLu+k0:ZnSWʢf{8)rVJISQ+m[[c;X[\ %Vrjc^ImV>"Htg 6ީSLIKGx+ܼ +p) Ѝ9ŦK3PeϖuSJ@A͠s-\)])6^z[03])փ(gYt^[K_wP7FTePH.E"vR̳H`5B$N c5#8qL,:2IC# iku1hfmq%r\,~>gDKy|t-xixj9Esrx}-e;-!fQG ;X/KQexD8t?1Kq;{H4Έ1b 9kkS#N(! 2M8[vTsALZwK_NYiиě^v3zhs H:0?v!E("gڏw"3ǻ2t ,-;*3@QOLT6 3 mLASOTW4nkm=yzJ:p$jCLkaJ:zdÿmګ!֭fHyi'BY<~qz ˨L>x`" f(\24^=d$~$ӽ$DF-C]B ?I"jVR@x&hg#rhi\$C*wm5'0y:ۋdo nc/ BMHiHFä;(ޘhV3dNpY!-:i!32C腪L!&nSY)l`"3@J¶w372OߌȋqbWvQv~s1S$_vr u|r L#:?5.£Kf8wz`i]uE} iFOGTjeX/ȼN#(%kxv !Qˬl/Ĩpѱm=lh\I(5 ú Qexoʝa9Vf7/ԇDPfԟR^1CGw6~Ǡ^L)l-=UųË;H*pak\8#+ɱR$.D`{_{JBThX`V7@OPkKwhA9gx~r_I|%8$cu{`f U|u 5f)"+ÊPiznQ sUn/d!"B왢}~kE&K|,*HV .S*i3 G(9gltsݤ;x*N֛n(J)*ji&8 PZJx'eN73uk5e0)aU{CSQKԬ'ڿ);ON̙Z%{M|ű<]G!O1Gj蓚7n(`(tr.Ye…vy7p{/1Gh|r Ksbܩ^y6lNâ68zaFrWv86 8U[U6_gWnǒ K℺}AGmJ׍m倳8}K|~JOgbJ_`@c}C%fn튜?zm8t`/RM~$a@܆i7d3bDmRX%\nA!ˮ<=&gߺb&jtAOգԶxxNh#oH-Se?.>1O# zw-ih?5w(4:|(fҒd``'"0XFIa2/ ~<@o,̦E'n"~1B`z$ koU7QH1:t[T*F{H~n>M! :V'{f|sw'ʸy(Tӆ_0H7ߧ:|?vO| 3)±?)lmSp v_:V1:cEߜ_񛈗Lh`\ F4}##Lr`S8$FA/U X4=-`?,+!ڣs6aK23(%(=J`9߸07dJ8mCA&dKSڐ*=+ (e_eUwˤ K^2(ƻt s D-*vD9bA󀨫SnY"n:̊v[mU^DžL]KUAo{l]" HrV;24ީm%bŁ7R武Z+[򤽛Ulbpoqp!?9:ĿOjDîPrw2練q]ٴ| 3RcFz[R"8<F20t}aM*7* wdzw:K,3%_;t^+&1auTW]oqѷYL8RbUPbYľ SX ߫Z-V vYH;/Xp]YPL? tg8. d9o7حB5uEd]0MzHO$fy5f?'h(~uX%gKW)@/&)MX+^fR`+~;mGxOclRF m]ha(1DfKQ8W pϣވv0g㡃K,5 =+l/d'J#E@^e {^cgPB>dkڍEZ-e |K}՗-XVj F+y +T7 q5`L)y'pa[DO VVறH}OMſ^gSk^1k%0EYƑdh@ݔ o: ~[zBVZu1LQP@fH+ቈI'̈́ jaYěڄոQ.50;liZj/Hg, ?`̷ŠwZ_@Ic^p=Yv!=_4*+^p Mq zPjrɺ[FVYi$M"ql];N:|0 k;;-|T={J|x>2j_fBv, !Cn?Frܗ34tAE>>c811qvK\)Yv6_1VJ]j%.kwb!wܧ>gԼ4~wutYq|vou]pPeɴ6ޯ.0uTMJ*|z a u2 H$hd VyE˾&Puj6)bV,S ֱVb &ݬ/')tZ`6w\ZnnN/p0~mi!ȿ[(z=IPZ-6cpQ'dcXij8&Kv1#&k-}~Amm!+Ocr:-1PRqJ ܎./m Og=oDKϯA? IbkQtB_@m׭sh81p~ bKmEn*-RU 1 _Qމ&Y-d6_u.+{ biP$~K?a1X2S,+$p^9B) TNeh|樍=l =P>_RX|U[_;5}RyOC۩az7)7iMes7{0pX=#|ڹ^mbp5;hA7<̹dJDgsx~o&fFOj VM,v*5[j+qZt"m{p _Ooqn̄OVjd|@zIi8Hy*y靖1[뻕*fbb w5FJ: KhjTT<@%Uĺ|KC*,QO3'fDL\T-dʸjXiYm7/~o^> }mg| Oj׸ Ue-P޽R>S*q?i4xѾUŰmWڡ28F0̸}Vh@D)zif7?toPgmLྤ~IDZEfdH[󣡚l?)Wdp,_ͽpBȋղe:MtOaQFXB3E9⊵|NQ,v,C&ܬ?G8X0_&CB?̎H HQO<jۨb/N}8&둥63P}`#cҪ!%'lFj$ OBv$˔ Yqف}ZLۋp3 n m.^ 5rCl<"( sbPϔʗ"цnhT" %YF1fGWp'zhEou$=<Й?w!Qt# Lp llZ1B:P*}d$Neef vKXwN "呞HKX%yRp9D>ugdEd 7w{NP~!mߚ զdLX{E6#9a2Q2:u[.*m10ia/"8[ 78>΃tT0'En*,Er ! y ]RYĦr <6I-tVөP)м6S{~kqU_/:}kȴDi87@&,c7:w3x] u{+FLMb-c}DSc<>Sv2Y2რ\q~t'<ѳU5x X2ls(E ^ΜIK~:`rbL[3v6G#(-)X{j1hxΓ ?mjr` Zi=n]Cag$ *AY3rO_n>y q0^bP@$AF<[oe'ubX٬X>S<&#$4aiYm,ZU!(Ǡ`1zfϭ(Ś%i.DmЋ#89r}P+D(k:ei"fQkNu$DVɊsH:[E}MتYݖzeBHH4V 'OEG͛5*5J#9PY[Y--m Ce5Z[3Fz)fp>@*}xL=[oj%XJB[wdjD:yz)/_:9m?6aɚ$DB LƉ$}fclHpv z5k2S`^m655_S9WC7@$LW2LmY`jl ՎZ {x" -AqwB6lO>/Z>:SqI\1Sl:%<-pp,b"q:9G֞hhe]Ct&hf;#ciK70k_4:%ҟ]]iIY,A mH0xWU@, tR"{H!}ã`Wnry%{/&~@Io70HBǁ,[|ѽv0ʗ@=K|:k½L-u;xUyyVew}-vzp}2Be3Pr]w+:.?>5sh/H#NXC;j{zYNɖN#,Qߜv NU=TTm1+%c"&܅Iߎ!Fa5Bx lsFeo`;2yT둉νF1z=iFwU'7?9͸Q p&W0XT,U%m#E*^7#<UoFxS 1CCc=_8z#ʹa<"COӕ֧ړuJe9X$w)ԴK:/Se4ZT(H*1EjhM֝/*KE^`/ g, 8 q|삃WC*yz^'8b80njz. 0.QIL)3 9|A^߲ JxF~ [k<'Nb{qЙbQ<:[(aCF ł\TPιH!aݒ4I!(x"hwfyTicŷFTd ^_Ozk!=o2瘅|"ӡ>ugxiM NA9p*n`|`m,}dDh#VIq*y>hj~[SC"x`aY:J4@ Qıg8X4v!ME\Bɞ{be^هOzh@6OP`Ncd^/mg|R鷏ꍩHx zK7^{u듸Rq_ڍĽ=<~|lq7{w,\\t~غiQfcSV?)exfdJ8N{o|tkر =깄&^rGHa<˕YPLOabLX'T'kFk̭fl.Qg@"ܯģY0/q :>wׄ7*-&szpsB;}8XrDmfFt=U`2h4&K;b̹/4KXr8r6lֆzh:a@}h 3 B 1_Hrφ tv\TKNGv:l)523_7!,/dovg'XE@^\gׂ*REd* F0S$ ǀO^8P"B!)4$녑# h (FVÔxD(f6FDJǔqGω`,H9 ,BL*k V;b{߇{؜)aA ~$@j~ώ#hV$C ~ t=zğ;z*ߤZ yxy+4ˏ&J1TINZAMI>+y“5:39-K+|V}ד_=sOڸ7S0[ 2¦%5˰ ! u8L8lc$jh.h<$3]}g|d?a*%M~PճaQ5mU6Ss aD6!3}fLd'AOI>ݭкK@SMAZE>J M&. !4? ;GVMw+-˷ !=0(?d7IӦI5wcK3tо:8sjMIUnjl.>m+r|E{ēWXϷ5[Dc*څM`xG1_buZQF G|>ߓ8HZvSdX8$%^yĆ;zAQٰGzkYl-̎Uƨ QAl^VJwK[y<2? 4e_[V 1㏜- 21!T,Aֶe''Nq^N^sB0ajj;^e SRs[~BZ>W`%^J܁#jCh !)޼]V;P8 *o3BH,&TE.WFzO?8jT9%@( Ah(17+0d #ś wװ'ɺjDžtErx|Ak;My×Navj"L @ $DŽjyݚ;6xPrc"=jOe'ٹآ;p|`0zLo5ߟBl7(@4C/`t]glbi-U6cV/wʄ9[kN} aQԤepK Gy mΈJ40=2[2ƀiIן>jL@Q1tTh)5H_wVP_Ԇ=k0N-qq],瀯ݟNBzkjR,a Y=RU/r sŎ?.'[6LY=L+&ú!'2hJ޴ZB1s6TY{n>rS!9/g0"g,P>_ޘk]+ZSVL !a|IhPuUD0()r9E#r0;9S-|)xVrΨ }/a\{~vP/Wntd,jR3ƙL*ٯM$7ǷAt/E1tD93g5Ħn-5H;UȠ<"Nz$d[X|enplSx(&6ToW ^{(AG[kL;c&nu$ 9%?43pKzʙxJ6ԯ'CeAKhwh^nkk ]2|6K&IMH끳Dv-(7`~&uC_!Z 3G1Dy"ιOYQ~G5}7|K"M{}/Qќ8oP'x,ʕG<0; _.h_f#SDvL &~{?+$UʨhWo{201dzW2S~_c tt*|u/tgB} _zb >9:gm<5@Kҍu ]\ L\WHyeV>.3jG$x'O- (xI270 կZ#*̕܍R_ ^:{jjZ!QRCnzzz>xN x NWCg1d}7ԑVQ>aV,]_v#Q  F&R(q S˳Z bݎ}.gD]J Z 849k֌`c#ڱAK&lCPȇv(]_ܛK8AL# GKAcű)*[͝ase7P w1~fYl>kZ|,7z4#yϝ|&=Y|i(T Q#ރ+C,䧦#ٸz*-O!KyX(P&/zx(t(YN7 ZEr&:>bCSw0䫠)S.N '{x > Oèpu ~%{0g$;,߽>"( EZvߵc_e#bٜG*?8i ٗAV}n 4.&@ =d>1H٣Z"x' Q0c-._C|LIfOO'-Ĩjm@r߰T_%EZr ~ $Ha?ni8}hW\dqzzFhj7hzY2x6[fV[c-79AZN}4#iHKn`qyȿ58b Kdzp4fL}i0 5bX_܎!0RѶ~v˘i q>7:(܍ˆbk o5ӗ0НX=K.;MK=;%5!bYTf4kUe$_W==;NAxWz;yi :_ Y&Ⓑ_$`&c,NJ>IP6(N̈1e Kv*կ WOW|`±--BrJ),z`R+M,ـ:>׍hw@x>?eZE 1v *PU'}Kl=$Ԍ5tĪM庆Xd){:y 3h o'*b;z5nO ղc ݋nPU\$vp2%1m WŦOcjL>lt0OWyj|ێn+v-nրv }7C7v>+#ەh.q7ajCMsh lL[`Xhݿ,J) qx^'luZ`:ɓtWeUN^~-?*H]?$d`ľc)[Úޕ *^}ⵙ0^q*C,ʮ~ϲ LwgQIf콙Hp/?2ڴ#ph_N6>߲FsM=/'J:Cr͈Mq6фO+q%6rEw}.hF01؜}:s~A5]zpUq6D?؉d""NϽg4X_8V(y vP{=(?Z->YuxB[fE,n'sF㠵j7YDE|!BcH4ë-Oo$eqzwLcouʐ*ͬSN"Ws CC'1cn -h뱍%!K\Q3@gܠx`Zz epOjVOxzUn/bq ^=Zv 67pKƺHq<,&en3) ۑ:v>ˆga[9S+7w-ٲZF?+/`杸QIv۶AukpK$\^2_%ooEs P°s`•䌇G>_'6n>_e< Ձ%̃`ӑq{|Bmn<n-dT*?렽dĭ-ݕ3s#e\,&Wi[#fx1Y FlMD(˼2X}!2cGe R iv||v .N.i6XQW [jRH-ی,Rd%\ ; "J۷5WW`&`Z݊?2 yۀἯsŭ7kP涕(Zm'8)L3se{O4>$Y b)u ك ]"_lWNQ$\pEV4l hʗ싾?*_h  G%>.:d?'2x:5 k.׏kV3|j_hQh,Ffnn؎jx",c0j:ukc' )r,2av"^t*ɇ-47׽UXEoOUUujgYM~ 'J'B_@@^>}7o>.l'1='W{H\>-RJ'R52IB`0^m|Q%bV =Ժ i0ضN^H%m2;I1(tުJnp0L})l8eU5/d4xK{wХYD¨[qٺLv)*e#i!}œ-!Vn6WE5[;d*2}S,Ļx!S|*"MtRk-n<ň(W^k[J[AH$AkFN&\zui:6X*$Bi\r!1Q̽>02cF0)BM؜ >(A_ 7 3U=^_AJ\Y*YTUű1k>/8<#HGÛզ̝{F"HgZ8|dǴqlq߼+cqC6-Plam,(Wj&m '<4-:T'HP ؘuH2cY5v ';VToY ݨﴂ / 3nscˣf?jS.['jfTgVk > ok֒dy;JX0tajw}u! Gܴxr#uķTߦN9l3]ºh8k ˊpE{ϾpUwMwMV]!XЅc[+>.Vxjh=U"5kE2dm3t5LZћ;)0N}A ~.rjb5-"νrS`^0,]y )m!u}LQ]_qˠ~g%*xTiu-ETr#׀3wn*Y9z`>i鼖| =]x?4S7 @H\6X5c6;Mae~2wJ DH[Q0C^%35ϵtNIrEZ΋qtT:qnOjx=EW!O'2Qo#'ŚͺevL~A2 9(Q=sɠY%g@0@֑]^7,n zBfVmҤ)Zj)c A;I[_֕;p,R& '+%!jq>Zr [Ho"[5/Y$go%db:0j+9N7wTL9 O`?J5Lx YEo)""@{ȁ +})UğQ ̜CFN <o=5˺tOy4ʾQaT؅Za8zcq|_ϲ 6o,3꾴ŧb4Iqyo7lw#\\r3O. A҃rMz1DreP&%BGP(uۮ:ˆx8]]Y " _n8|6ɇ8&S:h0/hM[h:01VYOAF@swYRzf̩QJrAHL qRF1u8rb {Maxb]iˬSVۼP:"w $0X Bմ( Ad|]*۱3bZ5 r<8I-?)d*[ely&ir(Ct|w}.s`T**s[Rf/<gݓ.ӿg%?:5 /5Ex+(yϓCswY)"( z?J~n {1 6<׶,E_Z0"n(2Ut:n#!@pOiY)~F29S$Ɂ YMe{K(o]oQ:ak L?FhJZ>B4+"H/XNdpIjȸ?;ϟSq ׮\0[y SxpTqy620NBuQ7cX^[eEjF2ĩZ>hLc-t<Y$)`F$|aZ&V~Yt @+3v\k"ƦRZ#~|ݪ0~x͏RHMfL1HxY3np?eneRH1%uj! 5F_V`BH:]8tm.,ˤP2qC }$7#RMm.5#TX];BhBjN5ޘ3amt9%oPgNQX  g7Mz텺DCuXJ>PkYίR=G\f fܠB ./7vǽ/ R{(PcY&31 깸I!O}%jޞR-7uȼIpc^KCxcgkGWpjT.!$+J֩{VN/ GQҡK&!;˹چ!T <_)~6\D rsUs|xX6g=O;2`hb| ĝslVg`9k.?LYI䇆,`@A{;~*ݭ+`Y &hOL=N-LJ[ Wu%:UaDdHx(J !jD9uJð +}!@JA!5 (:t:)SkSl$[)~i { K=l TY^hzx!W5?'=4T̟cj9:?I 8 ?HOG{ITZ9B&U2_8A'&B luB̑w OYCy$|3cM/WPs#glxfv[i^#?>,pU[|jVREb?M}xMKL6;0}j*cȷ0lZި*O2aaAYಃ.V4k }?swmz0I5!`]A,̵ \nRqu%bkO%,Ǣ :X|J(A?X!{Xf QN'gc"!szfQtbښ.>7؟A2.mEx#'z<-¤1pgvFۥ}+Ne 3K]\ |X l =+,N#  NBv ,IOPWm<;24X;kwx2ywO b+uF-ٗA<nM֊ǿCQu7M[[©@RIl<ƞk^dsPP{=y"yÉ8>\~e܀G}La2]>ueB UJS ΍܊Θ/(qHб L(#` Պa+ MOd-Gw18@FH@qDC`9# : gvC:pazIs&e~@QSGBJ+}u|3?C9Ygg8 œ.fLJa_hC ە&'/Ơ C@}*uޅ*|!/f:`@ۅ]a"hqMxV ݦh i `i? @,c dfhk-?_ 7;T,>qf#ctx.$l^AF%'d{E׶B˛+qaFp ԗ>z'QΗfVB Bl [xXR*{^L bp;3.*sTJ**}u tN.1%z2Bk. >в2=y\[; ɳ慝P$aاRS_E~`o6X`Ge7v nw:cM+[? IKD$^N슋)i 7QTqJo7|/,UWu+@'T1!(b U}$ W1x8 .PIͰrIq]p'3 J\쬞d" B7oy1B=srNnfwɩ08k V kHo mE`4%աd$ zQ,SϭU;ᨰHy'>tK^]C|^ M$M[w*QMqsؠ~cpS*0wv'R[183xrc/_*PMC"B%cV8]6He[ =^Qu* bMIC?"Z0_^[,S Sq\j ? xUI^{MU v^Qr i{ϧ'U~bi }Wv9>I`yupDz6w1a3Z[xʸ(60fpgp+M[~6!o<ԏ)5 cr )NWP5H|E6J[4o]KS6e_VXJZѺ-œTԜv)_GC? [:y'R^x4gJ$pC8~  =OFU^ŝ0F{~pﯣ:wNh*9PENnOKs@`y޶nL;>FBG@n_od%Q?1X_swGrH ?kv7wߺe`CtU': jSh>񤍈i}K59lБº >HHTk$E`%Pr &AjwNcyriʾF~]%ѫq{=^:֟._`>ED)b.Ύ8 ? 2OS~D6◃8@籪u>`S;mf]-(3(qjiQY.# U_4'p&Lxgp'2,ë%dwKgb˩51ӹ&H[Y1 ,rCgOݨa0Pu{J&Aq{=vjq SWuC. h6B[N } > Pt<dp‡u1P+sG5_'q ׆cswJP42vPAcVl&Ro+N} 'i+r|j3)vx>f|[n6g煓}*|< JKi@ZW` fhYfܩer N_R&oyc8Vӄ|'n lUOpR!N]P\v]$Jl5T}\2/p?uAI[WŁB7 jfG‘8LjLs2z#b 'ĖJعkO&~t);'i-Ȗi2k"†NfZFd]!~PK(w ^ NGRGpqF0iم7\J ''s1rWtƬ. g9YeX?urϝ4y<1Q>";BIqM̂m7ֈ)Pv/7/4[`VWǙ(&c- rƨ ~RnԊE-яF+\R( bXXP:楇r_eJ8ndFa[VV!»VFt{[I=pTl: !o-J;P&Q%ވKNdA tiK̏oSK* 2tgR\HX\ZEpTTve攚Zr.3!:d)T a&ѤDHu{/^& I7ӅZ$ޞDZb?X5 ?ܻ :l.\}@Md2u`6W2lR]J=6t[ل.Z3z2_  IֱuX?RBme8=ۥE^528 z d<^WX˼ JJG38ߐ!8#/UȄc6Xw/`U1uC=bQ'&ys.Tsx 7tj[dzϹ.K(z,ޣγ0dYl>EAaG8) t{WoG ,nĖiob"?x]/0\ʚK)YEv 9`@eZh":f iQ4pueF u6t)G[,_{KxM$RW c.' f4?a}_w㐚>!*oshɟ@B<\r:iBoCE]K~Ҧ.CT={(p"Qbl*>ӣRST_n\{} t*ʋ2+i)c>=v4 _ oUZ ChHXOd`k+ϻpc$)= jKIVZ{9ʊn8pG"aޱvb$Zl8-i*uOViy6k"k'on ?'pf4t&[.ꯡ%b̴cM1Ql)A^O ,T=G+ߠJ85;mdh6%yt6nOyџFZJC}e*J (w|1 ^ؐ{[Q@X\SfQ*r|j%n JEз>^^ݦR BbB&_#bCˡ2<0v22sD1.!#7.u*- lWbh"æq+:#4QZ!,U2FaP.4HEenXrl(j'Ǩ dj{; gFL[?$象c xs!\/@t ;B0[]UDZUL*LU.h $ih%I M )`zh %69`eBg-='{wG$y%w xk 7aU:t'șbn.a1,_%x ּBdO1VJ+c X}a+VahM}[ zTSHg|5^uYT*^e:YW^E5o}R$~̗(h )"ܫ!dl" nb")>یf-gƋ7'K@"g 6unR1vr*QY蠀wt+K:}QkP)*ڞ˿1[L6??"f-pƚ[0XB$,JR1="gGtim~= _]](Xªix*UʅǍ2\[OK!)'󅋲W ke,b}WRN1ALef3&̃BZ6pm&m -7 ؟dM /z i% qMC~~E,sIӯL9?abJߘ筛lCrFc*# ! RPp@-?\U|ldBuD]wLK'xs|w4ά ?WqmӞ$i&aЛ>gj6έ" 3H%æ(Dt[^'{cN\>SI xPƓH X[J2PLB;9L|\Iwc`_Czlң[4]R74-Ϯd /PSVF5Ֆem3E)bXlXsT+ U,ks!ss[2EMK/Dik3#*ZuR Z~cImC`esoFZw| Y{ElEWS8FT2y'W~ίL.F6SJ^mx2ZpmCZ{m1PPsH7iLjtv,eE3o«2|L V ;!IX=Rk-=qώj: y< Bih?W/437ͼ#=\WB7Fib.{7z:K.>UhH4$rѲm;GĎ^/1ikd36~m֐b$}u-i&\ߘ3a 3rmN2\)ȍfC{h ʅq\[j=k#_|`O_7Gh0.^P>fmʳ&(4 4?̐ GPN+G﨏O\ }[0Tn^UdA˜1a/ŗ* @ϙƈV6B^f!UKEaQ 4JV IiЄK!0Y }ȅ VOf3M@2b^`98:~\k U:@bXLdY̋52,>E2wƫx< oA{ӦeベǺjX\豹WOu!L.g>U~h5yfe!Aoiaf]G zVGgŒ~*H[Wf:?4ʵ5#""tfw96M(&qKW?O& L)W^oc>=tEKi#z4fMn t7n[1WҮ\vefKԾ)T덂T!CLʇ._\E9烊< <(c)VjIY#?:]%[eNW5\dIr8wG[ bw(%3 |!B+-a^WOgFauf?Fa892}Y=IݘTp 6>bHױH ċ6L+W?%Ô!.ѕQnNPzVNA5;Am*Ї;V 3܂O`eBX*%{#/ hc c7_6#$sg I;]lA"WR Fwˏ"/Z%{w.c *-Sٺ -@pN: dۋn`Y]m Zk|`LQ)-0}o eԋp6B(M񈳁iq;CMN }RHnHDƵ`EWf J7EߗO@kj[@!a 7hj嫦7տ]QO*DG5hO:mIt)iET /Eh_5P86a4Ezdu On {7*òqZJT`}Y$vDwr5/g*A*Flb-UQVp_3U69<$#Wp8ϴ"z'&?0hUVV%=ǙhnJ)FI Q1: k.&m"Tj`UJ5>o!3ওj5}>9gr=_wʙ-Xb48<4~'.^#{U0g~j/~DKWrP<]G 8F|.Tȋ  ayO*6q1+RA:nrz8W}(=7H"Z n Ь\iŽzB5J6[ۖn%ƻ\ݡ[X%O )(G:*fgߴcl.VOe_vÖVH_ lE+"`A,]`@X D#'` =}-`QtfH} r )+ݵW)ʏa,_F7klw~x6\"PTd4B'FDN)O2 _e'jDԨof-ȅkc_OjhPɤ&s}L*O3]|j /g!2M Ewѭ`m*}>Rh9$jc>,'g7`ZIxy.3*c%Y}Qt \$c4:0෋*pTAP!Vel[H5_iQed\.i Ų?쾔Ԩ)uvrt[q,wO^'f KTCkP4euIydkmcVDx3 c#EeIhiF0.4@AʃYY{Ȟ oTbݼ&!zw3V DFfܦ bps(bYv<ʕ>4RKf*&z 6<:谓Sg̩5dڎj;&#.Vfu F>J-翝AIchqd>^ɚG$nˣ& #ukTW˃~_\y~G`ìqFM'1Hsez 2mf5o\" pM ;Gt2^\z7M'>҉\B-Aq ,ȣ}ù)RD0k\&GĉؽcnwoEOp3ojH.<J+/Z)@q?ƥ\@ 6, ˻p^rV-q8o>=ڌTnHKE$oϦu$>-_Ԁ_vB:bVLlR  Jj_k /#XV1f^iZ ;$Og@ܸ|DgXWlZI+`?KT^A/ sxsSg[ӡaMje; {_aͳ` O&n:KovKv.c;M G# !5(=\ ^cS7˿#nyuS99DxZ0 ynaɧY;;Ui3=Jzo"&2R'tߥF;nz:n#s||ڽK^0Dup?7/o;8j븰 Zµ8T 1\2vgU&3,n cpZTiJ)qq%+!'pQU+~Ұ qw"b,Xb{ !MQ#zžTWU"+ 8y}6,!talBΔ~6/p>%*/|qd^uBG!W0x<`И2LɢIKHƝ5ZHj;[tͻ{t{֗%逢C됛)%s$ ދCTA)X֋(*?eЇ Z x(/:賾OΔNw$b3xD>Y|A[)8!5ȸǠYF@>J1.uʼyEM`56%fC9|C8g 'BSof_lp':uA\@ 3n9 l9̯^ [4؃9P Bڨg})8ThCKƳ?iBXirljL4K9WsJ7IH @ %O!_YC&rWŻ;@ v}j}Xa>\,;= ЪqJ?6-wc|_3]{a"b;gpt``g)os$`2a,}p%q S̗"nRF +>Mv?KgrdEiZ[bg!%7ё;P3B3(roJ(M*zJ߽ȝ"e!co O !ktGMؒ2"ۖE..%@K 3.ݛ '쇑+uaHn'x#11^| t z)?p"5)/^jnuF|Gf|H?pH3 3˺.R"-1ʒӑM1AKh pT;Q۫mWCDvw]j 06AΏ(KD4G[孊ypN,Ll ]g%lo­9B=t3|Ki}dfc{.$X3"x(kMG4MD9$ A]FS[{q8\W=z 'c Qv @MQ$>bULtH&މM&VC<MQ_LmluGLKvLk{R)y vhhmva6 !+j7Hv3)d毫HGRORX-h%9eH$*yRD qAo_cYxM(!+vXplUH{]Ρ%5b=f; 8 [B5 *~ͳBWr*=t![=rʈrߠ![R~t5zꙩb钹R{T . "0l=?z-K^1ci`O Raٸux9xHS(4RvIvu&uCf"Dh"7;*R,Ds Rk(@R sW'&@ 2_ه }4 ӱ;-1 [um'*~τ AV>n(3O?ul6e{70R- % U Ƌ6_j=:˪yNf?-C\*4G1GƋvF!ɚf[}rTB_Id0xY&/+k}20W\rָ12{''g`d0ʆwH]B8MԛY\7lo;a {j04dKAXtF"Bj ZFB&h] n~NmOjSiTQWbA5W9#uttś1ػ q-#eC6"ܝAERHTN;섇+?. E wԼ+2PqS_Qʺ :WLy\{S8Cl,m9CO -8/3|φ^t  bBN`?BSzoP*͙O7`ʧ+u՚Q۫{{pO9mSɴ3PAgݕknIuCDy\Ӳeŭ8J\yG)e8+#7bo֗x,rpi0{i<f0sA=,Ƀ%8JIDϩ1εCYÌyò)*I/A+M.Xq>{)Aط,׹<#8W”8>=ȡ2X[8*++l!uV": _zK+ʡ;4`TAXڷ9RP> DyxzT6lѣ+p5~lw5,OCQ(Pe Ӭ"FWzSr겱& V}M%w n)`oN~;b/5Mo$ڂu؍P #kՄIԇ[T,_ZUU;@SbB% :JXTcilZUtXV{^wwQ:.FF2$O"CDEu"6{0`u(h;<Ԏu0ͤ%Oz߯amAMc)LX$ w#oz;k7IJ(I'~h5y-\+m+9Nێ9Ҽ 7ezBhdZI;{"0*0gq9'hG0\wۘje qpG.*M'Ya_F0w[vwd/71? [ Xc; yxIE.qLYg @`OC!MEFIX7s0*rd24Q >SI͗&2ckr-;Kse8lO+3 dU ~3DHI1^٬Ӈ67*<[aa%d)dƛ$-߸!;VYl3Db;MC}^&ȷ)Ew%3f_5^U3g4 VS\l;B`#3 Ecٷ>1~w Ux`LIOOݼB.Hl s VijxT琽P኱p, tw8v'_ 4',%aHJV@dQHOyKA BhSUJ@aQiFe7wCY "$,:vizk=wH34V%Rwbulںkv ȕeo XĠ[YDGȊPS /%;Jf2 ĥz.N;\ xY~Ca4֔%Ĭ}Ÿ0OcbϽTR@ tCehRSE^clMJlA9Эy\V2#}rc} n>EaH~{'G@=:^mj><=bt~p(bq!Z dC}Y93,H PO[3Bg& ryz@Fuy졄DぱUDZh[P8߄t @` vCKXOxٳU4Ork:L! kُ\Ir?b碊(!9 qd٤tEU=2@\G0ǔ4F̪aɿK̹e[AUtEs5'8ENTd ׬`j):ˎdf}3_r IxcT;Ц8οRɳX{#ߝ?2x N RMUKD})rNrJYQ5VԩXWC|n6 6X3d6m1r10 ]˒<.U p})0$^чGС9-<38{fdgV~KG B4P4n8+^ z?S6x*U3IT.vONF6{*ԬCR*_s:'C=dӨ",xASTOĝrAzȄVC:thPvU>c(( c7؛* H%ᬼ*THRf99`W3?⸛Xx@wCPYcxK- ~T"Rֆ-7s|j 1{u~HI-$,"ꪴ:#C-ոO c q.:݄99>IL{ n9⦦U#e]$rύpQ`7) 2yMP!4؊~'g?)+iیe.OGbmrOxBÕ3R\4>d'_ۣtEQl/~zZhR,R ̯Z h-]22߲"21ȩSzc{`anrWcH1c@بw| zZu['8_%1dT(ˮ[;}<l_iLm 3_*$G8(p9 z+wr0~b84!?qiW5 9+i;F r3[E#nK&W(SNfj- +fqձ>{Ӿ\HL7kwI{ˮzC!Š_r7𙛽Fo,W{vEf k0&9'U- "fLt\D,+3XFwxأ/|4$K6 zbVR]ƐuivmUx+|+dO`_Xn1o Ok\O_1/B `@$nM#Ph$^HʉYwRY?BZZZv szM [⢸Wyzڱ7AMbO8,~BV{tQ7eJlCqVmb;򮱘#i3X}hx)7Tw1I81] #_^EGv碇5ljew)63RDsJӛ,.~va3pV 1%<36"SԫcԌ?cɦaW~50¤V3 c>A;LmΊWJt%5S ip] 6 WlYTRDQ%yu^t'Jv'9@̶Bt #PwWd?عǴrg*Yh$WkMc&%A%mz6TԎM%>لּ_ f\9fGǺ]@ivM^hP"řNVJ]%HHv{QR̃1{k5W(C1MXtW9|CZqԃf1RϏfI w:V/|~G1%Y- ~t%T=SdcȲbT}*qsǶ)`>S$u`5BV޴'>x>^.`QE-*UDrkIץ% qqAadYۿbslu[`hrn*dv(!Vr j?4H$kģT`}o^&nkK@;G pd,rR#6EG"[hw@2V (/l!]6U͠*Ls<6"O E\ꗆ87I.zWppO~/| Wtj@}4O>gL{~cTjE1׭!C(h9Et^+m,&78߃< 3uF'* w}!`Qa,jYM`RWTO0 mkk<bPM?HwŸleC܊Q2 Γsܵ39_6ND}S(`!1TPOQo6MׄE";p-pt6bg_N x(!EdODYJX\QFEၘ!,/>#LC(dY֚êJĸn#fs4quvݞsiX=vYI6GݧPw5Ub.0]\!;薈+CݳC&$Eں$lE@|5Iz"ȦŔQ "/Mj_tc8 q3Ƨw{ 찐=VԺ_*9]| Zw=T r!\qs.\;Pϼ]sq&fij<ܷ Zl9 ZۍM]v=9߽0[tDɸ6A|'5S?x=|_M'Z!e) _`Z0FaƢ MKn)YvSzX<ܕBkK5S6T1BPLr}k4I7C2 B*ckʧDg8vi5叹[N5.1p\*Wʸ 4d+S^PSWAHXH!9<lV@T4[cݽ h"u0,,!Ίbh&)QJFJ]LHnKޕ `_9у3[vp\&哝܄UBږ| , )ʸ7{=5P;HJۻVmD#ĐU:O~:ƟKxS<1^#@Q*-ZCu]=q|0{BJq;]ug 7o?h`U]s%\~2Afqxj+"^&u zk^ 3ys5mA V(/A\&$pnxD[1^.SHp'r<`\c3/tze@+ā. 輲O[!DdpbYK_;!v11P=cj2NfOK V KP-z׍]]vSA9aIT)ٮ.܄f4qOLĭP|nJEM>enЈS*Qvoƕp ;>,>+311HUޏx-Ln9O [\FVL\@:LS-8s hV XN'V^@oy!)v_*V!6@0&T6Bycʛ(8% !Ss#!@sZ;Nb#n*OM}O}"a'qۏjfQV]GanC H1bEvCbMNdp3htljXБ3-&O=96rw xE {&@ 8eI"XYhLzYUQx7QCAPx"Ť\&F(CZtiGi| @fl@ǖ/ųD=j,:MP%ʿRq;&8k \z"QȜCڝ6v sh\?m$a+r}HIߋhI 㖩҃_S z#b01kv=j5SS)dl(lB[$CmY4 2Z#a-<"Yjx/1vO)9}0q*7 .M`bI& uMʏA'ֹ<c#cW`khXd)[NYk [>~p8M8pJ'HVT %6 ]QO'j|/6.yʮIJEQ?:Φ?'myRv[:ų\*f’Eibkf-sSa@BLE b:L}"j2[hx5]j/6@[#j_^\>TQ}c4/6k-\E3VV f3G3>B[Eh nPb̸{{g'(>_9" #&EoMg]^77qxۧ τ/;zɥhF) #8<*,>,yh%y SaalE09RS.3pw4΁( ~_+u[Q?@FKX"bc|S 9G%d\fD`L̖!ȃ%8B"U@x'^:|V5c"r;V&9~bO?WY NFXA Oͪ\!},sEFԸ6>Cw8iӦrtg'fv+]nX}P h01Tk|T vGxC>G%/yƫas׿zIWx'm Mޛ۶0ٱ|Zyg6E\xya%o:dKWƉ. N91ۺ9eC- u>aŸ25*A2QvEͷuMm9J?EC8Rf}Θ-2exR1Zv!-(U3y̩XܣgƟ4H iɃ|;DxZ IRu5p=5]C1/ώB<(yI+HdLPǁD^j~iwK+O-N a&K!Q3Y&4BZt81+k#1)U?-u^S Zg+bp渲st~!NlSÙT 'ۑGFaldzAUS0hA;v'1Lq^<!DDO:ˉ]?8FyU=89笜O0ő ԑiz<ʿSؔ ϋ?'?]+Uq3 &鍦_`ʝrulن!ńFfwy `~ꖘ٧0,ԕ/>؎ǤBcq 'w=caqB 9]ء); nf*˻\Ѝ`aX[e&OBBZ )svQ*oCAI:z)`?6肼/RA 3# F`@|W >p0)sP&<we+W|l(.n`OhϨ(:$ zM5uwd&EpAN8g Yܾ݄hޓȨSK1,Kfff월B1x) Z+j8EU[j )!1r|fQO3)b{WbLW!RpYVْNYI uN"S(l5f4 LOD:S F=jlq j Flz(Lv_ 8tD9!~S$׵I~cUnx O$;oS.8)3&ܫ a<ijf1H$v̗|Qyb2~@s(_WqCd*Q5I]΄@k=c&0V2UKUp-^j]?l?48Pr\=&~8hBsJ^l<1a(.^ @'!o9^:_z\03S.x,8, 6zb]yVo[m%,`~MIG$ ( _VT!<6"A8ҔL!’"osڅęaGLHo/xێr8I>Զ2Z.K: l$͇TjZ;rEmz )x=l yvyWV'~>* ?XfR)$o *, pnKuwyQ5\Z##j| /ۻcT s}1G2Dn_$)M.R9*F|w{P:2r l9ϥb~gu LN55]ObWƵs]%DC^?ޫgF 6շm(nԓGC^߸H[Y:?}S ˵0|^NaO0՚u/O-C)6k}*ŐzNZaPѪ땈aٺIڏWi.Ս+P9R6u.A)6 [4Q' /iA=vzK]*8E_S5Ж|~*E o+SA~hrD$L= c䰿!1顔 TCNGt1/ -{{ RH# +Z?'hj|e*5֌xuNL^.q s']lmw{ښٔzs/O 5S-zraʵܨ;2F("z|J&sYr٢^|+DK%Pm@v2s;dF <ѩr-HeN<#DHq'ek-&[IKrm"YWR$$\MH~Pф+g!KXTmf0}yߓzy6i|4z򦘟DUsomI[Vvr(t c))0& 2ӐF9qi&̹jU{)G~\hr-1g+8MXt*R?=箘q AmȊFRV=ynLVٶ+] o l1ONej<]W-fGmN' ɶ@Q:11T2] ,jjxbI'\m3̮=ojGUDHC_`%`K dTml@J9˽f&{3ڌvX/mb[{AZ* :~I 8 7@4`aJN~j7BJbF 󔙓!Yf+Qvx[T`hTܦ ցI/Ffvp7kW|8 cֿ+Ȁ#0C:ac*]4 ;#?)ogcxpB3:}7QN6U{Νq(! p|[ )yB˥jm3.ƸԜ\qa@3U8 WlM^* l"v)0,1^PA=Ph_ ",}NMZ%F Y~g n &X#"z*gAy'R(:Sz EYIaMoSճkX,`Ի$hVBH)[Iv.o\ @:7,vDPgA}CouXu7qؖb7swdT!QqOdJ ?H!<t= 邏 ynKV -wI2 Jb9I) .9嶨/M)x ?/N 3{)(v%}n4!daHdD[1֭z4v^ou <0u>j mDTZ^1L{? S2JI4[)o?0R†y6om*g޼mxeC)`G;,k0NP, n1T| |uJ[c 3~J[h iP,Cb'v#"nhC[ǿNcy6Pio!DwPhv&6( UQ"\C/ /c,VQAޗH[\%Wʆᱣj l;iQVˢD;sQ>b.MdD8j'e锎f<ܕSܕ|YxZ8nXN^1VޑW5{of++ kҿ~)(ap57ZR%H:Ր/$uUK_fZJ|mt<Ui(V`o]8TU$n鴙Kiݦ9aּ]6 P=xyJ=pw]yW%C+3QEQ寴0$UϵA?n|asa^:_з+ sP 0+=0%8KGR].n O6LDWsKΞ M5uyɕY<~\i=4TkcJVdEm q5mޛچWx:M@;_Ճ"M7aUQ/,k0^h=\B?^ăDak[_{aEB<рyC }kJC&m)55i^ lZUbJ.lC%@"lN,ɎZNn~̣ĭPԼ)i%0!;b%2XI74D&x锍ؔ$\_V'֛ i;b.zbYg!>u:@q0e9p Ԁ?9uʰ< c (R;f|Y< ɳ<7,S{W <9V=]j W<XBSbBY)qj S҆UX׏P ܰJz'ǒAt'f2vS|cH㸠Qa~kyp*÷?HIpmBn(&aԊY?CέN9 C>&޲#PS3@51vb?]E)ܧ@/PA[򭑗uJxW{놲$ \: S,!^ [GMyn+0L:/Ȏ%96#Ԏo +^RΜ%i9ٻJT̲, ձ2:<\շVHh\;h$7FȐgk* u 6x`}v,NVeH9ޕ連l|'*J̎%!嶂cb2O H|Hc9d_?4TTlUD[HwDѩB XI6XժtT-< [YKQ#'РB2N_ ,nDPiH^|?hK}Hq{V[WoGd.Td?,c}#mFmTʄOh[[ 8hg"rc, 1fsQQ^d4I J"4m$zË/*ΓtcgtqQ80ht;v۪n!dWtl"Jq 0vv+_?4#UcH:q&41~w4@+`לD6v9պo]Ͽ=;88Ћ7e"q)<9No֬h'CuǵY8N^JLX4W[oRyEnW%i ZS2=K"܍ )^h:O)|8. @N뒅$j?|5Scq0R T\h N$~}w@W}۲>Vr$wT  _!PvAmLv p__*PᴕHRjv2b8o7ӍhEGE[Цo&p,b'pO/*>Yv~D2xQ ?G뗾w?L<eh^9 FSܨd>^!w GM#Z ~ Kh,#v jPWds<; DY4vnTZ-d6Pqwń{T<[^4ʵ _}\qCa%npAn>?W*H|o|]UQdMӮmұd j 4i*0 iz{3ִ{O>rhwڅB6z|:`缞 BE`'|Lp0~?? "z1M~(U%N$6GyjZ9OxalEȕcѷzo䘛$_mwxx_MVԃLfkxu x7CO̅\P%*}熤!$jȱƝe[ {&0ljO,Rw#Y1dy`'o @s" '~UdEGР 9(6t//\mY;H眇rߥcG(->@%=i!b#3WP $90.\c6ڮwl5$ެ&W8G$iVHa@P-JQ#TYz;/_'|\Ffxy8y4 z\FڏH/e`"Ob(=E:$:\v? Cߏ>gKZͮgwS1ICY7^A>1ۦ` w*biyVwJ s(w?=l-[D]d&j&dcZELy$sݿh*QG\Ӧ%&ᛥVKs\xzۺ.ǧC_C0 ?~c:~( yu cl"V?#ȭϟPfvɋ -ByírC`j8lUv_'啈HSy̟qӽsQyUNSo(ϝxd;a ~rcSdD!L 1~̎ x\>fե>SK$qE S4F>.(aOVME@Lwg2ll;g7=y9{yF˞Ղ@҈qN;\m48R*t "ipi0p*fe$_ˈO^q+ l:;-A^j!?<ݭEe䮤-,;rjBGӰw \CR u yҮNɄ]'kd A XdquP"o@8JʋsɄQת/dlMPna|/n0" O۴/ ko6}@WVy%# gj[!tPtv+t8ztǚAgaщּh=9R aE޾"30 i [`QқNk1;sʒ+\~҈ϳQf04ɟsxB69_Dz$G_3`( ƨ,JA780U>u,6xހxߖ扝N1vю"ڎScoR <';p|6Ҍa&RL!q?` v~(arMH# ҧa`8앲.mrtsuSg;ssq[@9|.=v]LfG6mq0FpOc퍌>zTlMbY/M7TzXR~wsxsN.gĬi9ϛ`ӥʤU`3!F u+JO>~e]KKA1YAi{K Ɋۅ5 lj7F$!#8;2pُ\";tG\Sלn;clzgZn$uwM*#i0%9F1nXDx`&n =4I[;P|4gЧw/j ք 3PAD>_z$/"ס}>@p]eF 3dۆL_Iromx aX/Lc &t]W֛\/j3n%75%4J|˺5SKwK%CUT͇&-լqbE\!PaMk>v&ϟ ow%!q.{ݽ`U4 Hg|QޞC9ݛ3:'#'&phQ. 2uGNY34 t!&ۋ|}նUL%v5iʋ:6Υ#DǶiگd%a R-<2^O-\d}HSX t/́0+5E_1GwOhN[Km"LN9pw[y׸^zq )ۤP`D{xX>ƍ}ty/̾m+xFZ|(!~+ċR`ˎl.7h:y;?bD -)XHњb%kS34K&dʹ'4"?; NO~fS\ AGk\'] %weBf2.)'Hӑ)c8DHzϷglު2:)Q,`9.wPM *1RR!G\|-˛.Wk(yyYET㽋VgW CF`ߒ9#vӄ=ܰ3pxۛOR ;Ze#䓀Km8:Vs^`GF@*ՠLԞtLA@S*?0ϔ;˔6[s3JH#6[NTn@!V^~ۢ@!Ѩ! O+M?E )^$,R,UYMJm3?VSĢTX::j2ΗSCGkDm@AR;_N xwa$%Yc7maۮ )fglOc -)Sm_OۿRtKr9`. ʜvÜImTHP[AvQȲ, MRqkH#"IfrnV-chdYݖB'+4Gc5ppMu]t&U7ʼnRH[h3j>*-)#g3ѕHն`gKLm,j5l'mORM4C7"@ŻZ%^gߥgYƪ>OOJtn Mr*Rd'Qݥ)̙}Ó9* WX3o6#G`ݡ2Kḇ@h%:YZ/4M8dMLnC?b>B~53' ;z*$ڶTXoq2|\kbk,cE`Oۼ}_6; tu ܣ|,^ V ^%U[AbB/?wW){[Fn턒Xug :']pCAEڦ6:VB)֨!8v$eMgJ&c) 38:+ Z24xLCےTlz{dFRrΧ|eSc-I %~?IV XX  lOjS0j`xи>ҽ/D,%"N|gNVJ[gl 6 6|j gKPqiJ{>D.+\~k۷e=W@ Wo&j7gFB-HӜ)mq/ND&3בĽ;k!GY1c;/Qc} Ay?Lh/=0,9:s:^kü}X-Twg|U-jY- Gr [9Koӳv8Uy!; n'G_.;{Gͬؐ?XQ~2DXӺBb'f7TEъHRAJd" "@Uwge5?$7dAJ~%7X̨]0t2O0 b;~m^)7ntW'c&7?g`zF_t?NoGRy DUlo2e{J"~ǃ$ r>`O߹\U[Wȟ[5z9xXJ f ) ~8q~۶:nWVu(PZbY`|%m'P<0J0]w~YjJ4IRqPdNt bt1HQجc)wbrUr άΚVH[tӋuYm{g¡Di*$$_UQr,ߌ1J%*m:'5b+S ɭ~}HXiXQC}2`kJ)%q6.SgKwSD'ݘLPZ]IVcry bƒ~Héamז3g HghX6̈́Fd/:^`WKשXS #*ޫ{X7UɌ9Cuk7%3Vc׿UO\?gC:8UQyTf'>p'RJ|LiSovUr V0&I@O]g&0,)rt}۳s.{RKsY ( D.XC \lSf#h& y)Q6$ZNKNQ(Js_PUarǫgYT*8&{~KhrMˬϸ\ tgJvh@ 4D<ĶrjOt9+e֤WF<!SZ)$iF"=g:} ^cLp%S4zH9#w {:hDe:wvso@ $j`MQ | ¶g[0훆fz0l 0}-(~<lQXwS': T`$щCJX-uİHKүt۵Y5|/4[kɳWS[4?҄G1>x j3dzcr=́.z,_A5Dp7:z}Et qxoM>&(䛢pkvrTAfjSCB[ M-k^BK%`KP !::Ut Nsj { gVvWn/4>XT0<^?هߖ;?_Pluho=,Ox‹ޜue}ɮ%9[v'"w4c!Q֟Bil5]wVmdZG^#ҟLS 1CB3]y)zGaA }<N}[c brOi}7`j~ҥL΂ž^G"jFdJ0ޛ2Cב/tB8VƶM`mwN>hᢏf3~tQK)gN/qj^#i*dU՞.׽@ ?$h`(Z*:pHĔ-!dz7N1qoe=;}۱4,Af9V>NjϔtPԤ^{+[q$uΡ996̋?fV8Ѯ%u5$l9bvڒ  Vse)-RKT9M?8U}}<8P N*qX̳:#f5UIghnrii#F-+ITT…*(N #^8KWR:fiCsg\+okKMע`W4oJk ^٧^_FO\Pw%zrh肆8'aئiPoH' ˄{EU ^VNks5zbakե$†ZGШ= bu$Dh H0zr/e4Zژ".`]@2Dۓ`䄖 !)U .?] ݒR+xTD/q9_(rto$粶4#W,?dl\>krƓugUʍ1qGR $DmAIk#U&D9#P6aAQu-W˳&:WFΕːKGqu+-*l܄g ҒrBޘAs_![ W0ӵx1ڡGǼߑ*ZBsDd yD)bi54fMQ)b M4['xLOprifPI_hi 4dʄ6#1V\s878]kaI}wwFt/Qd() H'hwowizv%ɧcxx+v_`itkXZVWgcR22vÉdr+bm3wAL0+g5reu5.8p#qSM!C?} =Y3{D/8h2r+Qjf۝GZf-zZ zTu!c-#$aֽ=}wu 4,`܃3=/1kODfGڷg~7̟\gT>d9!tTa-+ {5LJdpW٢&4 [1A䁝%Vf밧`M9=%:.,K!;V?>hz(~4ۭtn%Xݢ!`g㕳,M v;4Haamf`*y[*s]b3pBQT#+cXMI'C=G0r4UfgϦ.0}a 걢d4ī:/ \f/_y;y7 5ۑskqheP#[^1aVƖ8 FdХ@SNb4%s}  F oQuxcɵ@Q7U?Mk9&8瀱[A}<y1͛A@a5'Go?zx}}aܟrQ|pF|%okhhUKi,ɍ"6 ,z(㭋e74@zj\̥!uƌӶ/6A\ Pm7 {WWX !.UbfQtBg:Mi~WZ je.hͣb =S3 0- h訉.q+! IL_OUArq{䪏^f J='qn%"?캳=pT̙*=y;f-&'0LҔ9X\/_Uq*sE9iӇ@8YFF#i69D4a@ A"bmZ"-]o ]_=[hJgظtQx ly3PcWsp‘R‹gCYwUOeuc=/1eRJWcӕcͶBHZg>8 5'\ҿ̾ߘӨ;VEUضFVZYb;~zpo8 >4Krl-ҰoIIl)G(X3^-4(ZJOˀ/}k9#S1ƻ2F#zc imk8%RNwyzZ˝t_V$P6*FvObb< %hZMDp-:i`k}uZ]l˼[n&SureZxGSw[p\5}!Oj(%1N~]aO(>Fw=2}ׂ9\+9~5! n5z5 ئ}%VKPq23-/7ͣǹqqB*;i^bnH|ȶ~?ANޛ Hdæ PZﯜ.韾Yz8N_;uBDR=ˈI5ƌL dua 1U!Z#3lFX9gu:wu SG^\6J`*eanGz`Q1Y2|f3o)Wfx9jYD\K~O]C٦ǰJ23&Di?ZvWg8$ 4p ݷS% t_CjQO+ xdq/)G}apON{I\`=:<.F2b7Q"uɘ>gX)A0"47XRʭ;b Ue={LC#--D7?<5?tUƕKoq~ K+cwD(5}QY?,7i>kFlN\"9TlRW;C.9F'k_K_rԎ8mEb s>ʻrN]= JЮt9/9i61'jU`֝7(_W?u `e.Z4 Z{pܧ(6b \n>كl}ʲy.wݖ\ -3N3gNP'z^QXt0OMY۽O ,TN^$M!_ i˼h.,j{ʉ$Y$yvΜ F - RG_h$nPL=&TU+A-\g ȴStUB*#Zy B=6>}|eira󎍕RB6d!Dtו0h7R)R D,ga+pKk>#SDO 1KlJ/0hϢ]Ck]6jb_5dI@._>5~XyQpĭSd 4iOc<wL`Tb$VIDwc+̩Kew8Ea M:|AoԼ*l3Jp$|PP#ӺL8]5t,\mm|"' Rv͗1^FBwB5W#ooy|wwd%? -&JS06IW >UWV)Y'd5:~.G2n0H+wd` n/CFq)_mb*Т"E)JJY̜G`B5 P(a000[d ė !eaKQ8Ah ?C""O8+MqƲ0," T)#p &] oi,UJDn-Nzl XTq+<5҉-?!:I^kLWE(ɼvZY5k.V ^#.=ޙ$xa֋ ˬM|^Ӳ6!H=egL$.ɢV>¤]/2+/oWL[.&m1b4w:L/W*ڗpv҂,mϞٟ8o)I<a)oȉN2*u_شN(ӣ՘|K@!"_`dd54v2%PFS2@2/ m+S,:p=֑CxĞr#gQ#Np(k:;򊏨A= C=)vCuy9bðtФ"QvFO4-\o# ևZGrLcMp jHo? mN?SI`g l:zn!ίk_F)9܀9]O;@ ƄZjGلI+uAxnW,H-v%ؙdO:n삛>L[.z @qfV`Vu޷$p{IRV+Ƹ2;[w}rv /ꦢ~\\^'+#DCs۳ʴ!2׸ ;qfU/4_" Pw.=԰5s69Լ9phS t1S& e7װMd |lp̒Z]=< :Ifx C"dj2]emN17ÎĴM8TXSg&b u?"-?^UQ&aFRnVu8w[~*cr'9Mz ‱O#; W ūi! +t7>4wJ406b'٘OX"Yj^1"h~N*Wm,Rr4P2D>:wqe8 _gȘ^JV_/q\Jp/,b-aHWMHTGb"9M5)1.6ikϨt[=.U`z {kΦiH]i@vGt/*vTH3K l]IQRUI.yQgBʐTSsDhOTpQ~iL%ދדB?.ľpT f4 Y~=n95vh'C'th]ie"dO6LU}mj$ȚDnfCZ<.>]{qj֫!0j.l]È X =@";nw e::ObRqC-BBwcMU$XKEl=0>iFB_ToQƒh =<}X `HL58y ox kYHw7{0c.Fm)!fio{ )7q$轒=&ea']X/T@@{7i2-oUTA.P)@?Mf6m; @f|FWG/CLԳ.IlRRg F@E?f䕢f<褕2&-Ӡ53S~de㲔R ~r(N["2\'1Ġ,w)w<{tOE|AsdśpGKҹ>JoN$!n%iM1CU&nq8D׶{|\g uON^l5_)Ҧ&N{UQ%7gY-o![ܫ\2%SU[AxjZfK)±w@^xi\k"X~njo  /& A;u~'ׁEE8C#i53=/.^D2y~ s6-fBocue,~zYxo3' !kGFW/nEe(SoAF 4 f10&;&-`qTTXBRc>It)؞3ЀJ2md u2#k1kחTb7χlb#[:#ǪEF9+.I/,'#jNʎ>qt%ѹZ.m=F;'!// JwiB<,n zR}&zceXlDb>hx$x KQ XE s"=4̛gAg%ӊj44"3fq(:Ff>]Ԃd8A~W>4JGX/ ŷ&59 H ,{`B;mW=je#eݹ$I6ykS*?ӅO =J %O,_D±,d4zId S]8Id ޝG#Y~pLn%|Z>ǞH!-멏cxSu1IILx Fe`Z73;N@H;Aw ,$.R g5:sKps9`T9c)iB) wPBcY?x[[LQ:M{´jvK$q|nUgЄe1wb U'?'@$TWy䚁Ve?6YW !-%C֯JH7ԣ~nh*˜2n~/bI* 'R hy_ڄfHu~/Yl'֎08 p#l1y>'1cXvs/muڬb5׉T}xN[=/ 72 Nd-~b-bb{p0Vؔ Lg5*\;(W,ag)ir\ .ٌ>e`_K) MH9@3H"}I\YŇQǤ('skn2\i8/-a*[Ef|&DmJVI]ƯAY;-D.HV;4$X-RN5Z=Z9؉1'!$t#_&k&дt6\|8' y=Uo6"27e9EhV "p|G!Щlƍ͖W9[nhB}3NoYp/bpxUq̸YenHSbܹ w 0Ztd; .n/%fxlZلz@,bV*IlSVe1"כѢt>`(QrV&ljUn Ǝ!QAd 'bNjW`$iON6,rg4{֎6'Zb`AnPK44pcf|87m@}cAy:8e2ZCJdEL,K/1 %'u>gW3tNWy!J,z/~a;u p)) J uX50m%[h\T){Z{DyoL%s7}*v+||;8:50f\ ZCi- ?__mB;G&vY6[#<yLx$RU7I7Xa ?4QaK:M]lRi^3˔^]AӨɊحm.zO`8$"\X3- L E,]K%d7j `á0[|¶S$wƩ!{ijrw8)J ꖳ@dC 9v&0`G^uýV=neh@N8]:6SAwHi6)Sͺ٤ Oy(xsPrWϾQ 7QQbr?%Ej;ξdv>bqN c)ڕPwg3Fa5;/x Y G5i5*֚%w;f6,0a{xej -,|af'J ηt2|~yg˫_\NQ-6`zsEN@T2 gG;0LR7}=5 5`PoKL7^)Vmq :$B 7 δ H<@_f`#>B-I22F NW"^ XKսnSL. L7AhK_\dj;*+:gc ʨb/cZX@g=oF VϜ!=.nI]-Pj&9Ral~8jgQ8"9.Xّxx59lXJ {n Y(P  C20|'قtD$բ.i!#yzz3y[>D4u "\W!\ڧ_XڂrFa ܈,nFpes%~8mf͆ATng"NX>lj'_" L./jih@ϟ4upY 3R׾P Y㑲jn$pi$48bzTCw}҄K+Y$D>_b|U;Ɵ-m3 B>Þ?HBP߂g N/#D&P~!+쌷JRP?wJ=`&hP&hv[a5Q3(3?~⑬P'*]PCtRVYU`aZ@}YtזA\JVum?G)YÃCGWm=zur:HCnaLpoZ¿/Сy&ȁׄ3:\D_|`kxL/}p$]|oY4>T]½P zJ1%-VO傡$De: bL9@h>r))[gnKD%=6 ұc IQV$X\CR2%Nk|é`DyҼl>&э令,jgoVwz_zK\ދu.af/ϓ uqؠjȒ%*^DMtwz9z5jMaU0at4rMc8¸_j~OᚒСY͊ݒ‡>ͅkvZ,+U!'&c'xp{4&6uo0u~_#RX`9 . 0!+lfHTfV-#8U r:}oQ;VI }~k飼 aƧүl90E2*dYЮP)cLK\ ܼdK6Et&vQ=>Z:iS*8[*`eACoW>4h?y|0bZE!b\O1Dob߫WQ%0ia@_ۗeR@-iP !E B>!k 5ם7,g -aa7#JWG$:zl8cR4nvXЬuo\X~ŠOv!ӗمbdjVev(@l EO?6b/yyl=ؑ9Y٪.ۋs -1?E3q#D=#WiOO =1={L [13˛}MP IS]RYpg:L?Vi$\&SrS&3:"@}Xס~H2;!6xQRݒgS9Q4Y03cf?V!2*.X0,= lUC桱5 nEȺd揂T{>k0uځQQu S`;^/ѥ1vkG H=_u"zgk"dкyt2MywAEa`pZ]4rDR<"^ÍH '9$mYPr2|e1u [[ND M0~0]1Õǿ|ʹ:;OPiRIl@ $Nea &%]q_ X+ASouߎnL[-ƵFjqyAJD9|Йqq+*rDQ TNXB0b^A{PyGa%=]|qS]~t|?-CVJXI,O1)]+ ŜmR#?=i ˌ'l^5f@fm2kkHi.{ݶM7*v6!ExzLW&f=6>4!ʜkrq Vm˽az4",,0Ub~\B|cHjՑH -{JC+sJXC@h03IlK)MOX;sr0[A-_ ' !wF/ I)8bĜ.x0&؏jw^x}dn^B@E6srpK<%An׻ hܑ/l} x͜ By#Il~S#/uDDCo 5'qٻKP]~ E؁NXKaW׷nx<^;Al^ [ >*ΪfW<3au0.@gw۾`Z|dڪqfEʬݤQi Eߓ])RxNTP*pBGa;tT(x tڞrgL*NȘ__Dr9G2Om•\l&;>L:+`ո[U;olkj\OB:l H@݊ cN-JiD)A \FnlJ 8 K&3֮"!=d'=#סZR|$Ͳ[lP??]T6/G vXLh#v#}s={ tf{Pf4`*sj- b"tNx&/ ]y #cjMFR@qG2!{ɩ.#8I)%X(ăkuR,Pқ!@c}"xW th)T|e^՞?_20< Rt1&}4*Y2/;FtA Z9G|hiǾ$/YI(s  P3.8>bm nԂعyiOOvy^LVLQG,|Z[(NiN :9w;O0vuo*T"7u&Vw^jQʤ]A#߻o0Oa)u` { _'V.Av& qDׂL |{;0_W:.mꁔ~]֦"%(a- Y2%G^U>*au`a؎Y!:0Lw!79'NC֐8uNowt% _/Ch5+?(XVa$%^5σ~u-<q`eߏv_AXql4 uDeJ}~'i=S8@y#|2vni)2=hZEs>]0KŒC;57RQ ‹'q3GV /~%to:)5V'R6z?*jxj>tqJQ5%@gE`0u0 ݡ߄>O`)Ŗ豂8 o6QږguR=d,]8.ϟWzgK+>aH.g0 =?c o {^,IPzV@@^luW34֧'CLDl=15n[b֦!&gcwl{:߾ `X~S}DWO[?!o`ɾJif?tHY"jxy3(.7ᔓ=-ly )̜-|H6!RIض+)ƒ%ܿΗ%khrB/^ێ`һ[, eM t5_F]CD륐,ݛ~)%`iT %\5D#dg䊘'J!D).uyRG?%X T1^eOkCo@D̰ߢU{T+ATZsmjr Ǩ՗QL®aJъ"+z骴--)e ::?ˮ_3c$ԣRxH87-ͿmX Fn=`܁TZ?ɩ=#HBCIoT!6uKWŋc\Ewcfj%CR}/ME2* rFhK:4L. Wo4":aDur[mXs5Z:0¸bd4D;Ho@&b0mi@cYD'Yt-vwS"L2/L6xG'IzA>?PklVNo4n[:EZyѤl2)]&z8V?;Dy*f8ҨpoM*W|)BH]T8ܔ,CNÇ;=ע9OĒ7QvMiCЫ o%yLtZc^ERgձ)yҎhm=}zb:z442&m/b1s Z-vQdUtk3$mIve;&lu? N)qն0a=pq&E511´Dqp%Ͷf7;!” UC9`7_&3=gWk.'TPӆ@)stmͲR:fLӖ]gx F)}ekH0ױd+Dh ̄}u f >.6L͹X{Мu!^^<,leQ"OF z|s8"G5"{wL)l- $HjYW$8 3 jMҸ|lǡh%[K>W$Lj[>vT@pMOx9l_iKDazVN_m}Be5&BﱥSGK. E-]nX ¨98?}mNb̹\71ԝ<_/fMXfox,k&eO&鱝2.y I[PYQBd@ȳ7%In$b TQ(ǞDa$k"nWqxP&<~f)XU{] /\L%: 1#rWe t=пb~/R߂Fg6p%@~ H8Teْ^/}6%ټx"F`$>*| ¦xT%3/sG}Oz'# F\iu8ADL=X6t*}[¾mY@Ƭ}ٍ<v՘>ģ(q@Du$ͧඣ_08G?+dZ](_/S[^{op!c,4@`~@.hafQ ؆,џ $6ͥXU2f-s]i䯛(QPؚW4A 81/Q\\6o:(AfQc?R(Nh؝6(F5+VÑ4iW y?f5'^ZFc,AZ%P f:3k2<~/qf3;y} GtP,Gdߢr+B) %J#JNz-A%IZt$h7p.2CLqh0C\u;`o_^84d =IkCmC )SB!.U]A; %>f108UpPXّL($,_$ vܩjҐ(q}vqo)qqTPC: @YKlRg}gL촾y)Ry'rXM"o||LE}FNژb5wVжݢl n]%b~IAChCz%;;H/Q,IweNXϻleȩO(e{p}Wp&6u4Xwv?Tv] snWb\/*s^niQ^1 *ڏ5뙖To'7YZ`z]%k]\:bfRϋ5 į7Soy߲pfJ*'240Plz4ILb$<` 7,vm)Z?)!cRf={ƭAH*UaOaaun7h Vۚa'4'Ǣ X<_D F'j^kQO\2+UH@#F`z$x#d0g-そYꭽiz"a\95?l~ M7 }D7@o y;Z$v鋚n\U::AEht"~Ĺj;-;eSNև-Mk^(X"<(Ķ)N:[uōAγG|mFRiɽT>HI`~r랄)_ݗ썸+P&8|2PGήȃYy*UJ3oU_{`o *--2 ^ɔmoZ64N4:ەepiY F1"#3Bðv#UXQ ZSL8,rḧ́b t" FRf꓃b 9Kp_Fu6Ҳgj[^/Myة8[ǐ?r *\ B{L ERԅ|!eEy5V FOv~()&ŖsȼmYD3ڳ]}+~$tcg2jUx2O|1Ѿ }ƨO[߻=πJ0'{+Nh\-k C] %؂wkMҷ `o02fH=3DHx((/(\{hL4m~Ę.?3!] 9먨ʅ\GwNW Ln@m+[ҵ೮?(V"Dy5yt"?)WpxMQȝB#q}L< L o2?;T(99@'(w`<~g +BiwJ+/vlVA ʘygkd*Lk7cm.$%T $"uS,Pj!4YҤO: ̣wI3%bR)HmBGƒblO`PЌ3@u[zc q (ϊ@yJH:I9Ŀ (%yĬ-XŽmTZ_m~!1e̦fC9]bj>m+ZX0&HXE8l?1?!ۓ̃{I+K@B۬mWz!bӘvI $]%n$*t6.Igz4$a Z*tjw(ޖj 곋(1iky6U;B:g-H'=r{3U[ A߶0  a[AD]98(jYti3̊ccpy7ɒs|u{E:j0ՌԾ_aQTilV!9r3f)> U.Y?Oo=\ lLnHh1s%=pf,Q1JQh{)~2fE|F%[^Py2ii1/yݯ>i'޶O̳iWqmK,`Ug3؍^#pݜeϔtp9 h2^Rw.fmDG6K[1aæ aDj`y>9Ii[Q v7 =R;AuVEmXV|3` j{Rqэo \Vm lW&8 %0~%sbgmDXnP-loe}:`GfJHJK3u÷@3߲4D_<^(v]gᄻ\aЀ>Tɓön4KvcT]KC_R`&[0h0Ӛۑ`yrND?ƥH~"s=*n2վknf->Yځ + :L/tk`%Y*1`H<┅esaKW Cv8RyJ>28P vzXڅ&Gpn(skiTތ)T9o)^u'MC`gSa;'iSA&Sů yE#0ch-gb* X>h,$L6~w"@ m p%Ł"9N(/&ٖq}Y+¾Qj$!?6 Rq0 K'6qpNt֢vM FHzUwbuxg1ᾞD),^ƍQi %Nh x8Ԍn|VkQy7%)jtM㽵.!,'A9J&&ߴ'"m3WR[nP^^u_\[Io?urJ/JbymWU/Ѱ/&Yh˝Ǵr bhya7/ʮ" yo 0()f~J\oy밣\ڏ1{?LB/ Qe$->+y4w!^⩜`bfݍ KUcIEwXDuLIk%nWy@4x L~Dv5|a:h! DkeTQG a}\HPZ1YjJuf~GY^a?IN>DS&V9ZHCw=YzC_k +^ۄ.FurEw8bٗF9cӣ.S H[$JS13BΤd]_wE" /(YP\~#BzYaG<.g"p.ger:.q&GmQC8FUChx+AMVgA8w5ȎF=I=`bd<>M]%NldЏ8(P+9ޣLdDȤ\'}ݎGو."U2jRgGm%Ka{~փ^T-">xFx0'Sҝ &vFF+y+Ħ"oHk/E׃~a."nbHT|Y !i`7 jOCP oHXܵ-MVуx lqgfuӟ'NZjS^TR8l;] XsEpxJrIsu#WI!G<z 8N夐i%\4xUƏ71F qm y'i=5ck%#&1t=pcB$_׮%–<"R,7VKk"N![4̴f%mX;wl9,YX<@K̓C1T91˅h'Ȼ/n ohN ڃ]H1bAU5i=HP&YEݐ<էV MGsҋG]2s̤6wM|όd *~N ѝ1&BiF'mJLrX zzAolںDn0S=J &Z!\-5uAI3uG+MV6ɼ³ A AerPzc @,0.sA{E@QC @$^jq9~(2w 3бAv&{g;b Rõ\䬎p=P`:֍>rTYibP\#Û!wxG"5H5O 0,rGG C(\z_(V*]hĮRͅ< Ơj67h]<{2 Fvc _bDÈ%~PT[)~"`7wp*ueLEvƐigWsu' )-æ0%42"wB OH9#}:c*g!t$q:7U ^qZ@@9r=}BOj>k)$C!^1}?HA܎!i+ Bd &gl6Z0h g{~ ]Y0Mk['cI1pv:jH@SaCx}(swjmxMƦKÚ?ajn )lݽ2Nw!o5ERvSW;#-Z{C".l9ƺ`=/\plQ6C19Nmԝ͇RS~RBN}]y%C.*i0>[_&UTBоx@͉'Ij o\fͲ}4k`OWjZҭONf ""lVB~p'գa}B.Oxd<1̬bfǝv.$j9KhbjEr,Ymg]ČkFdkݘDjUAqf˷sAn6axo%%hk#Jz,Dz#9XsMơXd5M)yLYU +Jy={܈lP =0D๫͙'Y;7zeqNOq+'a;RQרUZ0ĩS}Jg[*{„c3=#u%\;ç@dǩ.*Ee+\hjЬ~XC_H͓2sIޫ}/<^f j}3tXM9W5?lZ{R4_?qi} ~1ET0գdBqH#ӷÍݱ!# b<+[UAnMr!lgQctSCPi(#VYH{lp]e9x@Faz9cx4|sj $*6n[=%VS(Ohu{j[IZP%{58I/Ҽ!( 0u kY1FuKS0t H{BjHQS;2?s&C{9A&j@&0mB#*A8cNO;~gޚbYfwn@7DmI : Oiρ7T\]G L2]Ap#UkkE.D3`ߺ?C'K9{"4r䁧L+dzyZKF.4,)'ӗ`G0 Oh()C Xw1n-~]2KZْY(!,6 LD]WωI NqOc#Vǵt|{OZ>1%,EӻbќahǣCAc\|'!*0ʵ]0_%VdGGk[n~;xk#&Z|^ϞkjED|%bUIȅ&*R8DhW˵Q CzQ \ǘ ]1fATC^[Hi.v,nf=b*25]RƬ&Ӎ8 3AL[ҟ2djDbJ3#{<3ÑHtu7B&D&tTStUs}WޘmjlaK8$5 ;+P>r nޠM'ƄD22퓊RAKZY"vl8^.BSErZްUo7kfu@k %iR j~!6XN Aքj L>"o]"T>0Ŧ-7D;O~6~oy5 2+րr`REb /{'&٣+Lz+Vp33RU&2$-jnk*kx"]99Y&c ]`Nl׭Q^F[ʍAcS\u4tSS2=8T%)29}tLr{5^06[,R0 Ll~fݓ flO2r4a޳H &H ep@:@݀tm^ŜQM/'& @/P㯄ivC` /Lq얾ZvP0EZ1 %TJwEIkJ&<~0ؓ.vG(S* X@7bhM/n?P=¾wiD|\J`}9E- <9@4{ROR;a73(훝-}GusE2(T\f y DEҗ<[;c:m }/mFCVݭwGV Jd:hg.+jkEI!x34{3MGu(h81|AȹbZ\el 0/v#d SS/5Ͷ~P(W8/a2 FCK~XZUկv1=8"Z:0u_'XguU?.Fk-tBc}M!f2>U/ {@|f*pOαQ%dG>*}Bc2B3S*4mY-4EO6y)mXYv#[:Ҁk2lAgdM(8dv'M4:oYOdS+Ǖܗ\m أaI(1Rr5sUM C\6 VQRi_XZf@9 KyI ̶(EE)Zw|EN?u,CMf};Ҝ 7A7Ɉi@꿫Dmۄ@Zcߕ^BuS+mXJV-\9$#d[뒯@kFƮ "_3Gc,*q]Ty k^ @wE""']{^n C M-' GV2^qVP qN9K)vqezq9'̳3xŎhR%ؔmJP*BR-au\fϻ/ʃ=eB(4+*Ӳi+02KafW`9ӅO709fZRea "ǼW{!k.!3i簄,8{JA)҆]%A߅cPO=5p9!\BLڸJZ%剾 KѢ<!8Hֶeڨ#`yŠ5g-^5P,)h< 02g|TLd<ݘ"yd'a TCɂ5]d4HtעZ꺴.F,V+eI)tQjS<}Aꛢp,#A=@yGT|/.fp_#>MFkʹA'haşPegwE_-AbU w2gATeD.\i]yx|O4a#؅4Rj ~!dsȃ} y⼜=MA:,AyuͿ-t2/>U];>(ڂ5"vs\Fh`)ҫ̀nWcGW>ǜrA NjfY1j5mLa oc"d'& ͖G򩯩Li:>^ĵo:VbX-hU(G3e %2~kcp?; @Pќmd vk9+ ħF]Vd^sٲ%dGy;Fp YԈUeEؚ=NBa/WjeW!PT`~ .EFpgqci5ͫbmi60"gaushe?iP𣩄Щ4$i*M5B1H'318mCdB}De-}_O\AAU:}.U=B}|8 g@̖p!+\m0WsDVs2WYap[Ru@j7%F.Čգl&LaaP|l}fPOH?|5 nQ1 L^roED&)rgB!%];­h|v|05AXYY70TΤƄ~ZgwV&}C R/:L`SHNǙ:tBR CHW^Na)T"Q~yvp eή3/3>j1[3H@-Žyp 47\NJ \\ڽۿB8| v $1ǣyb9bC| dy?Cϗ3`d.|v1y 7x2G%{']wr)KՑ쀈3Luyv0z7cӂK '-ķp@=fFJ*QFJ¯ձU.tP*b^$޶@qYrϛ-4l#ёuDK U664bJj Ѓ<cE䎺j3I OsI<5ExC-&3JPfQO=]>Ƞ1 Q[Z\'W5޺~5][eȻ;1uXBpۅML3@zHʙxG/=ǜR. Zx0;Z.>/'0 >8[̍=EcJ` jLmmFnW ,6%z}t: 3BjPL"]Yقb^ dLi0UWEDr)֢y/56PfHR+k}6 ҥI cގ&UNF :RhmI-[Q\?4chkzzCoh~yYb]iGC\UgR}Js@_W^\g&|hYFHN íGCP|!S#} 39hY u ;0,quJˎdc %',m?LF @]2H={[/ҝpwSc/?p ۶I%K OoGETbKj:TWb&BRHD x_ל? Pq !LU| XUo6^y/O'j}:py87}iekbvO_`m:ܬUaÜxcqGmM=St"t:IQPG'ٳj*C*tDZ_od#QŐĆz~Dlf=AνR#N012eZ1wB2A{GNDؑKMM=fHuR kLtʜlW G^kˁMs wkcf7B+^=pyt-ijڟ'fp>|(n6T'm*>kZ„9"]q9m2=q L|a®ھj#ʉqkV 6hxߙu=L)UX aIYS^ O/y kH̋:"伓H4T}IOE|g p'Q(R:) +3)nO\mȟ=J-Ij [P]G䅓'KZo @TX*ԂavRuln2 :jK*obnzN8sj,a4жA<@K}N~" sgH>ӈN@82ws:]%}A/9{}rhfI+wnc7vYwR7Q_0 %zfgFh tKmf$<6wynB.AjIS\Oh_F-X ?æ2%ko_s Ioo\\G.|CF)|{3LQmм#Qq'y[sG k+bp';8bW<[ cchR[èj. jloְl\ܶᙗ̈[{:nW^KBhѪ0 =C pRF Lc|W&MM(ְPQR* lmלg:2r1^OÀ,k+M=f -/n-$՞LjM,d+cMS"~Y}c7`VznOTĻ%$κ>\rxi$chR U2vS:iܶIB&kHCpRјluA@}>*yC7Т6vXH_{'g_4dz,Ze>} gP(~H]5&R5wCoiv@I=\-IY{rE*4efRb-a`~!Tְo/,TZ:N+wrݺфdl5L$!{Wމ7VS7(ժ Tt_Ezc7*ca k2Y߫yr#{#{Z+"1N|uk UMg=7Q..a, .P?N0IZ7.Rǝ͹qlr'Rq}N6S4㫒KBCm]3(j,aβ=}g/e4G @ tB,\"ӏ\'})ՃclG8a K fΓ`x8%fHw楪Sf3̘@l4%M5tA}mQ0Axx\[ؕ3\F쪟&Ǯ7@5vƩ[ wXTԖ3*jހ{;a 6j+ȋȊ\i[͠Ewg*(j?,[ +bm7S#򪑳.d23mp6bfu,eWVLƙX@p_m^$b&I}> GlIR>CXپ|z(Ui ݜ o,#Z, QEo9sfZC:N /xQ%:fEWV`7>:FAFD}1vn-d V%cz0?2ድ(/]5"Ww C5wvWa'BԑF8$Fp$OX@<^2 [>BT2PE]݌l,凉R~%τ! mhO Ԓ4w.JLOkiK[>F6ͥ4gr ]3rł*{@l~-1E}U(vB MԥV^m,2ؽ:x#7敍̗͠,@ApiB/+t…&Y6`|TAKmt4Uԏ} 7:d!<^R͋XwDTͤ%0Nܞtm.U)GNYO7͔HOaO(O7OzLǾ(ւnUe( .$AYqu["FG,G蘴Qx8IdLF_O(JSAPpPȂwʘbJdS#ӈ^Fb;8,$./V$&'9jRTv[ P`tĦzT+lrAJH_p?I'!Es)J`}W*pwK`Zqm-%D #1Tznq$|ܦWf{c[oV}OJTHlBYIPݣV--p-"G$ѽ}jg쨾#~\=P(8HhFQǹۋ$5ѡp]Jzvgt^3wbXL3V 3ésU4 H>|"8(.Aw5o 9*'i !E-bBdkM ask“T#J5\ѽ@FM4>W!iʠT:"TRnDqqz'5 {tT#MoZee>e-62yixR)9 -j`$>ʾe:}" 'h.y9@֙FEPKvTrfmٍ՗?z(A7;/"63IꊣQ gQRQJE.fKpkn)7hi? tMWK<^$'n9^.ž[9 [dvTgɃvU~ܾ2)fO9Q=5L4%aD35FyQ&Kn6(`SԉA~#6;IiHbM-B?'L#5XK9:wB"rK4;`MؕA|j*5ѰX\mf 4W;_?#v;+־vx>f9 zN|^K,L1\ͽXZЎru{J2z$?,rkV;Ce_+k-pD &N`-% ;lnY-<1idI"hI6 p/S˲eլ+3YJvAI@V%dѷ~QQIv+/OI%R=3noÌJZ9co?BdD[ڢĉ6wVy}R%XWѰA`"{Ϋ`&kԼ+{Q<}9vv#z|&Q꧷gFM Rc~TPBY6< X#@"4qA=zG,3n}7QzDOjUXNpy%hۦ\'M2%j$&.CuYY!F\^M{aC=zzu)5ּZՙיiG DB[c4S˂_=FTdfQث33+}]`.5PN1᧏HH_r2-9e8f[+lHON^ξ3Ղk3rph$"H)l2,'O/'HXUZ''Mπ(n;4<(a1qܯ1,Ft/|pu`U b` p&cv@ކ7uKGҷErFS9/rqDop_ (`6=R^閣BCRm*@CgGs-`Ⱥ(`c4# @FBh!6 s A iVrɾ]\7$ k0.dY xHv|KQ”JÛ}AJT(3SKHYywxRUs˸^-E+rTcg(ed:K& CV-`c}?@y Պfp"\RB<8kҩ,i={(]o?L]w`qNj|Q (tibyA_f$)L'QAeYY&TW *$UJ{ĄC[ʵ;1ftyme[i:Va MYCF~?iuNqNL`d7U5V.[gkU}\fpS,R;YKI# PDR2A#cZqNX< n IgfBw*G$|luHXlBY#RWaUբ 搘ε".1Tr+Yx\pz&@ϻሒu.hݳfa0D{:f:ϕ(0 eઌ} FQ5$pg*l#I2꓆pS^οH-QqPԾkZtr[q-ڣ-4)ڔuR](] )y5YD2y]ߩhRgom0\D^}E)- V˔0Ƿ6 Wߍ;HÚ2>YV,d~9Z:i`#`b:~g(pF- 7ZⰦ^8кjﻏCpl TnNHNtG<}'  EcI Bj :-XyYZdS~4?vfANxQRg+'x gI ^s ѻզǡ?u nIT=}Ȗu  ht-X E逸S 낈U"Y]K=:fy,s R܄|}N9R@SAeu#j̚_ЬnM4+ânͅ>l|Gx,)ᔡQ*PŢjc%" Xa5J/9 tI$Aa5~7xG'pb`(xr1qРLj1eO)Z2K$0%WY"Uz> sQrNY:VPg;T .AŜʸ/"aj]m^l!4|گUz i\鰖 W`hzV?zAObk}vJ8nӪаEԟzKN-^g2찓?温zv&2u# aPf3XU!DyuMhCC +m+D#K oDfṕFQ~lVՖXw5IZ}E,N`(udAz;D[] 1ч$T'$&\ 6bVxne U,$d*ixd !+~x0< #Si 5-} ~GDq8=Q_f.ʢ,uq0֕_+&8Xb3 y!ohMv293h~2篓c~]l̋ҿ{hZtd4ifpl>PX> #1B .yWULKT)֧'Yr[e3n[&kQ*6Mcc^6SEz>-A)q]7`c>aT lOoIxҧj_YC~_z8*ʓ?uìh EsBuOb7CjZp<ސh%J!bawµJ~Z8Kb2DZERFao(d~4˽2a%ut,HA&@ޥ))9BJV8RTKDVY&䮧E}&߄8ji&9^'Y]~{hUbۏS="Mh(Wy3e% cMkhIWrKks> @%ԩoTvQ:5!j.}ɝFȱ1sWYf6Lc`'Vv)Ks[wwfRT U!2#!y3fixG,߄O}?Z Pӷ3N' ୁDZ]$)Te[Ev /͑Pnraw y9zH S6@w0AI%i|B-2P^B$ϔ~_" Ge,3)ي\I6u*'e,MS/u~q௹CX{lq=FK0q$+?*ռ:1b*B}Oi&heёH_ xL.p%e[M} >'Uh:ߡn%'i'zW2%pslm*mUIj-íDPxbO”W) tƶ'KUʅCP5?Mw6w*1qnHJ*cњz_A>$l/n'٤發 (:3մZXa/85ۃ X/p~<{t/GTApM3ֶu+٤_V4V\¦Av= F! mV gPٓlbȌ-vbܹâޠb-޿o;߈HUٚGb )IYIh 7,{su$Mk`0Uc_$,mImő~e{چ);iju@~Vn1:JT}놠G2pvBJ`s/9o:)-KF}> %ՄS/hqcO#EK^(K%R:*DVIQ JvŤb8:/&%tW2&,nP tUDyOv H5.cgέz "j%X{/rjWp 9Vkuʆr ;*=x^3Ȭw>m=rsC(>o@Y-X1}-=^ٌQƖ L6 WmҀS+l:h3ĖIJ}X3L $;aFS̈喝xRq{fI}hNщ51 2Dw/pzFji4w:o7T8=ŜP t[@]Sik" `[mu~ TzplǾLg2\FLŘPrͯ}-?#ؙ>yN/YTӆTl r)8ZG2Bץ.&\VGqર,`Mk١j8viZ[,5a4ϬI{>E+emub6>((j};C~ ҦVrS5scoH73mbavWSi$(m/ҨEL"ȢZ:=z s W]ۉsDס flz^ubnuk\(dQ4[2yD[t"|?Qo#" j%..Ga:73l ^CƜ$@d,tK)OBZު_j9+G9yx! W߲N#lj AТqDP8R_W8E*ZEסd;ChƦ! p>S㈓q^*9pɦ3Sܗب& 1t9{E<{$pjW WD,zcB:+cKNN# m7.:`-cqB3h8KZC1|$t[uD2CZݬdf؞m 'AGX?nqem7O|EM!wwƤLawW0ED5&@~fF ֶpָܒuڣ4WݽKrar mHחOAqv-H*6ɭ| *"ȟJbv70|eH x{-,<%J t:dHNt2=k(@Jo݈x4$kŧ߂R8˯'jĶrhQe;e^ z,.uuBYPij,ڨl rM X=DjZl6\+޾ojF J#2U,̲d%G|@\iRxlkP]*%^;ki|Y$iL+jq*7H_6ȇK t^[7 *$!}ttO# ̄mBm _yl`TV}k}R0-W? {??/ek*?g5SoHxMkz.|-,O,$pAtXJ ퟢ/ds{px F-*0'-,d]їiv¯.Oȝҳ HHzcy5u:hPy}}1cK5%ǔ ؎߷0BɠK[cd0P88`p"WvaBky6jDhf(kNs+.)M6ԦLV4ҠC%xGwy9+,2usTOWVTPOyg F͉Bԩt\eb>8i+b:\ƋѤQE/gC.Z!(;`:o%a'EVy꣣q@X2" >x:,fkmDQEqWn_js*ya2)ZoL8F^NJlʱGƜ,ԳpA:;oE~"/GIm5yUOYf;>nU_u0\6xy7slBe/`L=\/t6M0l2F _.eO$MB tiBoD&SkǍt,m|kzFїQ%ܩV]Kgc4 -ao[x hFh~_ V;hQd+N.ժ$vNvr6D4xBҚ 9y1* @פCȑv9 I*@ftŻϱ6txمmD9ɏu**vxK &,&H$(UTbBB3+k_IP|o@P}2t#=\ܺwo>.KڵsSR=] cp,*D3`mg"mҒ9wqXtV6dplWQ?:C@1']M:o5WG!<++JjDgRewϏelq.V#|i[|*VC*6SJf!q;3c|XDhLJsd+#]i"(bAmRr3f F3LEqy P)3.E9h,':}ٛ7ZI RBДDz;Lڀűോ:ͳQy4jM1ӼB\唬3|ɴ!3y⫦uv ޾c9p G& qYY.Ѣ8hX~=H9i6 sKSt$ ƖRc 7(p ɥ #T圌aRS\|BX,H^Ƌ[Ld4D6Zi[d$P2XH'Vs{ +(՛ a,%D0[Wo[ÉFx&wb` ɱ(nUR>eAM:ߝ\B6 LL.],`^&[;HZ+\Jh-hE LNiZo P7HZ;SLNs#eͰvm,vl曭YR9l%̅cZZQN5InC7n2-LܝjDE[~lGf%;]$,mH2h.cl-hOa^sbRB. Wq2)'g~ MD=nv(r RyTJma*d['A,#w^tq)Zũ$\-Wܼ͞<֝#[&"-آc\5YR8$N=m=З\ SvAs:PLto pd ~o^VZ3Pf,y1U%Ox[oȂٳ͋ՔvO8>Eh2KgCYu7iޅxe}}₍h! :{+uE;`|h'Ol\ٕў;,m>% *C RHbT6(;uOr*TgSsLՐ GaH q[K?>33ā1)=Gp0gGQPATFJ(MuR~f&~0`AQSuR35K'}f8͒?0Rҩ+ι̘1<1Ă>}7_c(FCțcl8 ?׻LdkI&p\y~]XeO %{RkoLY;rjMb6WC4!rcJqj}hG4*:)p\ RrJY$65QyBK(D4?ΣO]φ@^ sU4[M`qq=^G !LO*OdX>SKhnP&=.ClʱZ->O_;AZ_N,3t%ʵ$e7W);6]V %Wר˸K9f4\V)Vf(C{V)p#+"Mi t24M=+^rmL!)TLJ@~8C  qMb[W~{%s{+ "uKz͕w'VLQF6#)҅SQfWR/xuzB 3_֫綄@oM?hٵ&Nɏ` i;aڇDϷDMPXQǀazs|-?+㩭IKzJyTt7pVy.ڜTmΡ%, -1']*. +*xAIv2J!.u41 j(ĩBX.#dp,=շ' y ID;7v20mUaT)Lv'aO߷bHxNv**Oyۻ6)_X㮚5.l]`@>+$ AD9c۽6_G!Gm{ 8D DkyȋafDK$&wD8wnOilXmPQMZ '.| ,kBNt=Ԍf(GՔsy6@|5<~`NaaR96r T`8Ԟ።U׮~~3N# w&dxF ,F]{G?R4e*zV5F?vY:(;`ځ+{sPv5z*r=x]y6g=tJr%5iR[hGimjfX\-* mK ڜ ,VΕ\\eoVˬ_,Axת gJnGڄP ;zAa,:U#o|ePC%fȪF6pL9cM# S }^[TmWL#dpWlzڨހJn~~ qAC MDQ=?N :>5.$"f80iy6kQ܈Eq-ZLt9ӏuXzhр>x:ՀNAxE<_@M w Õ洡LɗWwZ@&5*־߬UTWwÖ_88;5EF-,0]S\ν) lt,:I*%/׳ [ ]' :ʈƉ7c1U 9NQ8Ul46<]yoY$ nv ROjCz)M4XQu{4@y|Ay?G=i*2'8Qc6%Vmǡl FhV>@1vA\&ثӈQyd^pAgVAR\ A\wјSECƝcg.!<[V偶ݿZ=/V_*Nh}ɣDx3|$$v`D+4*c2 l/Ɩ2zT:Z͟}'2e^0~ %GM 5Ӿ,8a cE)!1G7 Iw%(Z@kuNf ݗ}7L:(FB$L.j<+x׷S4'U F'Wh a뾮3{nߛ5[ޥF_o.psuo2*E7Q"3X p-Ҫp2Ԅ}hPC7ԸFw[3]ԓ+o\#p퓋G[V%ЮƳJp\ zUUԔb)z֞{ԚY,v )}:3k%7mFD*`p2vD쀢;th XցP|l )O$9=5ɿtb KƬ hU8hD- ''Z>K[N)ɮOyrwRDq ?&Q>I.pvJO&јU#>ot5K&j;8|&~Đ0>~"[; ڀ*jX8]$?us>}tiU֛ @H ؆7SK=أ,Ll:b}y1=8yfޱ)B³U 7ԋi2X])<*)u[>SUБ:=3q#̶&CqW?Zazb<0MAԣewB<\N0d07ZH\Jeiqɽ6 ZwIdOv֯!Sbw>EaNkLj3q;tyf!HKs>6(IrV9,5\N? 2BpCkz ]<"Y)5S'xtx̗ZT O"=Sa}Uq\mDcl'SŎvpǽjf|2X/Q. m@B(q?ny.^s0ءGKMܧ>"[4qfbMQ|^^^/v+E 7М!km嬗"XU?Go֧?;Ʋytm}+,^*#Pݢi,̎y8{L2aFu(n wᆢçfTȒNs+2.>{lwRw4R_gN}:,ׄqJxh ׈G'vAj< LfK~?߇7#c tY3P<߉ ΔE"8ph=KCrBгwe _n1/ƢZ*B!E0f :~*D#)ʂʣGgLtN輗BZP9.1 ga]Х0m582  ݧ |r(yZrg'M7Ske2aXzyJ)'83-`ws" $XSe&&Pth/-,{24^3l4[c3jFXD勃k :{' aXOA^qi}i;p{K(e> 6e¸SmZLv+(! >$ ۍ2AujRΩ8'/qOt5lEn2B1܍$ B xf<><82]P=nq%{>],;۵ IfK2*q9&pd4wȎy{AB'YJ ͚ڴddۅ',:MPg/ `?|X7&5ՃTbbe1uF &TN}#Bg*@čb\= enʩ_7ZjvR?eS+f`vaqڹ^sW]63%Q 8ǴF@@׻-Caj﫜 S @Gvl!6c Pt$uK:x %4 qϡM]o*-qb]q~'wܭln$~+EHړe[1[YL~u7I.E~)'yo} Y ׬w_=YG@nJ6TIox0yп$|WJM YR"ӕa7a TP(\6|`,6SGN 1>M . uBbre=APd`[cte5<1dKӚj8ߙV׬[8=fvQa o}M{a=a+BWS`׿p&{ÜZ LLh-{:/ahUc޼g7+WWd4܈ ^w`PF)Xjg [ze=4.׫)JWKN$X̾z}N#-$CPUl׍U!3V@5Ec#Hrʊk#}TM}G(Y>uZc)6 ;u-XINY:*8*W”-)7N_|'%: J^r A!PeM $Uhu*T`MINu֦>3 Kt #ԩaKyH6eݢt/$@ J‰!0H JOW+K}U>m;6Ke]BY#}U(cNsWX࣢6q:94ߺ꯺Op<|r99I^:SI&&dV&Wy-hLGZL7vuxB5 @N-~)(%~yw%:E gMq mj/4ޘ(W˜Z5t^y**㰸R zT۝F9H~ 6\1՞d$XfL7(6}0l^DSL`oh+w5lކ4cBǒ\ 1)Bܵ`,*pu"x @'{5Мҫ®6 V\yfEdİ-8TY6TeEJ[Kז &GHMIO{\5eUf5׍7S!eW|J;s}(˛=Qof> ޓ:dHka4 3:+9ET7dNpU6aG@椕1Mn$O_t/ o*ޚCS3! {7iEX&s`wչޕ D`|)4J{(Vdβ.6VkTwU$]POHT]'gA?"8ٿJ mb%3^h>קYdQ ʇl`[rAY_(m=J)/pph!tdӣKvCi=M\Qyͧrj F "$(di<~I=̖Nl ?Od).jvo:-lpK&k hHI Ī@Mn? 1l:D\ Mj GFmH"; $kϚgN=/!=GYϜ i@:kɹxςJs+Ӡboa 0RAև^? a(J/$62fybJ8ǃ-򜬶Xl,W%~у?l /zͧ͝FRADvCmȂoqgeDŁpW1!gѝ*MgXQԼJ \ـ\gW7y-% å=+Ed@mg`J͊3$0U)eo"%5PCx)*:~)B,1sftgg3LhCa]*z%5U(25wP=}pղb7Yv2@sr 飝9<ďlj,[)ikl5?ш삩yVJ+HҢ[lfXa3FAIZ]yj._1bZE4;Qu ΄X)uU6+.-_5i+Q;LM,/̩;ՂDN2[_it5a0DW`|Z"ѧ%F7V${(gAqLy|!yǛ$ԎԬ+viZ43>{c*3A`ZU;KI{Aml(Ω1wV}jB"XíY¯[5FD_RS,yq3eWeL?l}NDeDM9I]eHKkve_1ZjBn~NFX_ӇV͏ߠ̳VٿAK%F@`pUdPɳr6,[xqc3+X=|k `?3! =wxK1r:|`pbIڊ䅢" Ck^&X $b|?W,r4ћH duqP&p0#qnCh)|¦e(|ªKO!G]w|{W\4I!(ٸRqVm6l.b[p>=?,m bQW겊&볱n 0%70:mWeZ5ꯩ€?`J`kJyʶlh7/@7Ѡܡ`c3 '2 |rYJ:|HEq 1cӥ[u"P |CstJϞ >Ai}i&µ%hrR2n j< `MCde7Zk l4~%*v&K^Ce-S ҸU@Opg ,1MN !rj=Dݴ^#e]z%M߮Zp W ( g_P' 9^?D4܃֟T3ݱ)l-0gKބzN: q;.('綤ud}RsuҀ7Y z$Yu(Eq#(fz;;gtά'ǡ_Fi`@N 垤}heFξTDe^[a@|9?$<e&έĴDR-GX~N}wt2: 1M^{ 8Q;XX7(0>vXwIi7wdbN i\cdShZu|4ah0DQ2_+sNΌ1 W*k@&N.,ә %bj%@N&-5(X2eʔj-kqNi} %$惀נ45ߩ!Ne+6@ڠoyX|/KV)O':AX3lNbҞ/,/{PK'Mi)ىQ]*gJb8}+nrTy_Z79X)ǼBx9ԕeHtjoG)ƃB渲!)Y6v~'bC樚+1Ų &~5Á%96ؐ$b:nb,54TlX>c߈HԝCꄘ 6 еk]$A|sRkNds!շ6`bJZ{= ͔9X|4GL3im! 끭!+!ju$٩<̽Y靖iQeκ`BH5H`][䲿R4Cfgg1tyCд}[9Gpj0mP}zhT4$J]K<QN &/kMbEHVSva/_[+KCFs+cW(谿+u5eL&c9|,%' x72Q{` 6*sfxLstB[Li.Y9.퀀%)zgyO|X-{oG1ófCpDCȣWA1y3F&%>(rCj?o{j IGH5 RJ{Ӈ؃ˌ (jѶ0 A ޻?$vx%Ļ^¼VB=aY08󸚠ӧWUn4>ߠvwsk iɹg=S!S! $#yR,*{#i`Tz?0 m z߼V\@< *(j7ֿe:1`M`_s='޽J"qJ׏v9[ Gbgd暃wWr\4mS6raBPzE-G<[- J[vLwKgIς-6Nb/ 1MJٛ*Qr _¬h{odU$QR۝ԓh#jo)p 6I YKZZ^kWեGw-۰lGa-x4UE @Gv7`E{giȚ)N<4z k9˚i> oh''FJ},cQUg}˫+HZ/ V ZH =PS0GQ #(̺HS27wnQwcY ӥm9sgº6{,v'a5@ߩg=z7CKy"Y sB;!ԄhG0QHMЭX;3^;? q/s缄iMa8(S/3Lx/A`R[Z b^bׄNe<3vs8O=Açj(!ͶߧΗ)3kOB؋<:͗T7GO`rƺHw pQ,9s?;CNcT a{%9e胆P=,Hѽ=$ʼn(1S%b4zY[!bVL(O y,]j8BN-B ኮ=_<½bܰ:!O> ֐ePQL~U1 NA~ 0cMNE>YERA (4Fу#[}\xRF-H iJVj$"U.} s dG`T! Qq]h DK ( o*w|I[l˨m*XD[q]J+pM#`EdbB)Lv,{J7 T~jp,%w1%d7]\lo(Yˢ(=,y*vJpQ#X?A/ iqi">1Ju?؃CI iy!)i%9Jn$ =eGXjkj#ӃJf4EuJB/].h d4qDaVSG|N߸sW@-2GO;R #cƉux[aPmFin?cV6m\ ۡ.wgVj/ә&D;=SbQ"?_p1~E͒L,U*5.0U˗;jkV}\as1˄6Z BQ8fⱛ6dCZ j~с "`{ ߌapRȝq$ENH/ C}Xtۂo߃i{ݩNCsʹ0RC&nP'XC vh o+mBh}>2 k% hpԋOKVl蔶hd4B6bIOڲURBS)tBs=Wpb xs!Uqi9I/(10f@9ȈÔY* 5@dEiV~`DE o y_ѥE}LN%w5/?*$v q 726fa8ʭAGX#=Aէ=:pT\Ey7Vq0}{Ɋ2/6lMaAKTm2aئ&,PhMBĨ87H\GBaQ^yYQ7LAdq g oT=0 |[3?pdMJ;IV<3|dgrsU:Zzdtw iWb5I~3҃,H7.2e]"6lt}fhIyv0 W;;cxhë//o[މA.RSikQn)v[~)TzH&,W u޸ڔAv G2Mw2EX 0 ~>P{j`Hԍ_F-\&Gl\D>NϟF`{p/Wmig.;ocߣY! a,Ű,~Ys_97U{b˟[|;ע60IN 8 ֎;_1P2~ K>JϡփO$"l,_@ȷ­&QoRzT}V]ܷԗV[xmݘķ>&G $+hK>aGNH,ܔy"O >A]lV,:}'7R$ u!߫vgUEC`D&aGؖ HUoTR3){M_þ|7!`W0މKmd▎q砅l FB dhJ ʋ$ZX8^*3Xm#cj\y[!&S =di뛂/#zL1$07R͢]*cq.VVIȤFq&,-]:"=q*c*IJ];I(Q{t^X0y)XTEԏjMM?>xjf y]zh.mmxd"yjg2kqkHԛBֻڳvӎ/g~!KyDzZJr. 'o'>pn=R_{;o<_,g#$%M!yQnA'wϲ!z) XLX/:@"Xޥ&Y8GNȧu\6}H.#c x:\T j’"<ْd'~KmD5+N(>nuL!R6&7Sf)Ο\lC4,PKN(n5C$1ˆ|H$-12;q{됷cM@ @#'P+>>Q(B,%-nnjf9%HW4{6X:&b/F~@Yexd w yJ=.FȽ O슽3{JG6}d + \]AT% ɯ>W7.0Ɓ@=hk֦s'_^cT81iGkD݊SgξK+=S#' ;>J5^7bܮx]8.cSI = `uS;ׅwę[zF_Ǎ[ EOpLf&h^ ّKqDn{XOdN@m/ӳ;>w HZt.X7f`on0F< bgڏ'u䨧żedΎ*YAX/P>;e`Tzjgx3>[nQW#yK?env]9 t9v_ ̖3ws{Mbo=:SCqq֦Ϛ?OK&'}&Ot D'ܴj.`lcOk 2+kp?8 xqXyn ^D! e;.~>07ͯՇ/w|uB eQ5E=|hML$掐T_-!2,:Cxh|NYoZ3O&7u'ǁq<n_xbe'.c#Tdc/Ax4kסiZ`z[`]ȤPE ?/ORhƏ㏲췓s"fku7 qSjtE1PM}@mR#kGw"Lw<#O9+bTx.i&%T[#/'^$ʩ@fWNё@dKGx7F#\7uQkQjLZr$)5aӌ4/LN>ۜ MH8u݈H9\O3K/rRDlL.4cۂH1P^)q~)#U8>6%'U5'~^JD@U*6F5p@ć}*:nJ ʪcK@FSω*Py1  MdMas Pv%GjL=q~f)Z"<6w^3GtJPJԇz Ċ&RyP;N =.R3IZXODj3GG%iMbNcw/1Z_pvyX>˿eqiꂬk,1'pTO2jͧY:;{>@>-,hmpqm iVk AeGSN ġȊ1rL;%%p*>x"'F"{:, D @֓ W͔V/ {_r2BwI&n%?ͷv>K ^S+:וqDEw#| @Bl :̬ht a͡zzweIn60Rt>f:-:\ !="o.kz@(n). ޶UցFb|H}P^.54,w3YyPs ul%gz=4kӣcgk>`` T24ǀ^t9X&3FسW?EpT{Yޯ0.f~tOWD7eۈyZM˟(I& )η_l@]U2}pPty2; =rW%v-|7b<(;e (mQ򔷵wshFA6USf83}y O,|IJ#ŀ@ҧ"T=YcePXF#N!΂] *-AC.rfa!z>I~t_V j6L Mo!+ ߿}B$GߒOO5' bagJ8dyM Į٣(1!oohG6fEsPq5;t29k rm˹ Bj|=v!PZpWI򊝐7]{VT_BG# k>/?](q y$[_ӽ(U7]DkVģO+ }DcU ̥yt{EU(:\/FT\ ꦏj2i^F)+57o0|+mu(]3CVms;귚Z*pmG]) @b#ks*@2 UCt= hOQ%X>{qM𴄘\f@o?nKyKTm kO[u0[O'#2[fL`ԭ&`W5 M 6?1( k`)\v ^Hcy؏7ovƧB^*2v1xS1mgЯ&SlӢfJT#p=Wgqdy_b0l.n]KB0EDI@s\'UFBu{y>‘N5R{ϕ}2cOg@ 6:F.CT;Kr\} ;-j][?k|t;V|"ޡ/G?_̮X88Q(oOsS wiZ6 H?)+]Q; T-?f>9,p?̑C⚮2{nor>ZU?^oȆnq,ُ註Uʲຸm*UA< [UU**PJtw>MN۱dII翎ZyK<4ߋ >|nEUC_z2Lt_ 6*0P)P4 _-NtPfČJ Rۖ$L稈#ytz|H<~ΐ?8m(e* L 0Vy)Ff6>`71.glA p!Bw̃5xoKaX]d٨=pva>Sj~vHɭ3nψC]Իp^tv P[mbQ&=f܋v8}V]ٔ#Vɗ[kn4U&̸ sv`[0#ʗ=fg3z2uCw.B9y$xنѠ6Hf@Yd5t/j}Z RUgl:KXңSc%xC"qYI,ES|:Yrnć3ط(?gF֊X2͎UF`e4570qzQ嘞 Z RU!Rzsc:A#tUb%~ۄ2JEX zPuLI,7g?52-3Lҭ~!l8|*\UO_#ہ)U&opϩx96_hB[ѹyLg&:a|ie̸د,豋>/bPDUBx =灯S71۴h5h p|F~PaWnX 5,[MlH*C5 QIP' :H$s,JΪUv@#/U |,h%X62s2H!棛в^R 3D3{e3d_tF޺_,SMi^BHw*:-'#^*5.WGimY1 !i7ݺΜBAt){ۮV?k{Ne1-mf=FIE|)*R%&'vAGfXPR56{:hf_;HhSqND 3XaIZ+.w% ۤ>.Sphmnԧ*zOlamWC7CkpPKqI mCO8|7\e1H|*`of3_ꓙͥ-*ܮ]~l㫁^ﶵq/ IKă!"wl_[R- ?<9_.$60;S:ikZK}ݍK; |U \.Nr/HA*4 Usi{-qðb0'u@U`:Ǡu})c7 fLt:aGʍWG5ȌΣ89s&ּ-z7 {;*yKUG#!CUXq6w#5*4U OΩ>fE!tHıž-ytߗ8e؋[w>7#&_&\63|2s*V iaOC(l*= : 0/:"T I+zjQg͵^SFu 47GXzG-5Uۧrw9l)PĻ ,pт)4MIR ,٠93nRI'=]zjsivv󀊓puGO h" 㡢y6z4[Gv{",4-cXL/Ӡ7T2eXP6bYS ȼ%[HF,z"սt7ÓX)1X5:pLIq}-6~lQ+jʇ-'@"/4tD<:f8bTX3)>:|̩gx Un {% Wl4\)i+ 3&`KFmu{k"9z$fSVe@qa bCxv,Y.u-b":۱a[͐Ws\-&)p"Wר*(TkpyеU6}h Fm}X(3YHދ|:]m qAm"[mdfTIyDoPٰ*Pܓ im fOb|d]+ ~&i X3TE/D7'+$C<7h8898I&ưV`"*x/Wjh%"C. Q̜{vKO͌a_sCbf= X:xs+#;N7FlߗH͛HXlɬ*y2|L9޴2NI:c "kQ˚xHoM]݉%bQnGhC&Y5! %*Ѿ'Ϟ CHH& FK9ҺL#=2p\Pыl@}lrKhbxC̪iGZCKto@mȺ.oKiwS|fAejLsjJvWHn Y}}I}^-kDtk&kP2:Gd8ӌe!S9ED9(AB<݃ ֏uEo.,#juJw]p[6v 7 ɖïOf}.ֺ/:*ݙ{c "liM9ԴIV w4έNJ9VD/M0 (7k$(>"Ttۜy@iD+mǤBƲ{W&rsj5ݒQcN߲% IJ)e>). }Tv>kZGx'Vb0AHu;j!CO#`^ϭF~<tu:׉Fo`g\8zDҵ?FE-N\6`bO5|f%R9TQMU} Su}׈Ƹ(ݶ@TSg׸!h˒pX.(n咥)eDiM+vebD a,i!ZƝQy=yHUONb|[Ұ c7s4_qZ%SeMSPd(3_/#MUKBuYn:ߣpAlQEt?I mmyK|8b@Ci,KRuS*&bs}d7h/)P\޴#Fp y*N_qYq(_PW\xFU\eo}#/<0ofdҝ"\!4J I1*\rG'eMF7 ӑ]uH&1IaL\ ۡF| lϼ>RFxN@:*}2)1|tn)\r?RS9Xèդgrټʦ=4")@w- #U+oQ (yH*X/bZAj+02ry[ɋJWR3qD5@uY`/Ӝ[=&;喟]I+de;[f*z@;(R Q0}c̮F؎?rg1rڠ~~L2oHq,]ͣ,h#VHByJ&}B ߁ 2WՊGp`Ɂ>fBmR¬ѰAiSRƞ h|y,2^Z=mWR #/՗$5ahaK";.ט0VPjBC&pBQ?yn~uJXXƕs%̂gujP C;~; Dʺ'h5 X٬f7a8ݰnCB2' ']*zE'_‚⽪.zrj^E| GZke2[Qʆ?XBYH\͒?1w^45Q Yl^¹!y~ef:A x51[p1t4Gh6Or`鑒,>N/z -8&zoZS9*@yk%&Rhڀ8-aG{035چ%EpStp!vuN^.)7"aU7`3Nn] (T ?aP;Ed7qil7;/N[IyY@DNX+gv$16bKQ5/p֬ I?K]'M F&t"$qйUt?q<_o澁`–]8n"xpԍd\pdYBN:-Z/0" gpfy{B^V#eAyYz 7E&o,Mێ@5k| eo nOBVԊ7\ ~HVFC ` c;esMͿkO[QcG\,BI_*Rfz'lct{wSn'.0_/HҤ)kTfs /T>ѢT'j.3\BBU˒>-bᛟŇ~(~K)@*ӭ#Fv/ F}sI(\ng(b,e#-̀'l >򻴊e1*ۄx|87:5 eb$V۝C@ߖ*XٺR?YhVVz)tyܼ+70 2woFD= +o` ҃NZV*)fsHBԐPPAaGb'8EVuZiӈ-u\R€ RfZ*h:0 b㔨Cj8`D}mc8s*uq,n~s,2fҧ~MR#Hv2x~mڏ76248q'_K(:(M[@"DW}ݒ_)li|ҩwج%K&^EK>GcM i盇bdʜFukսX2Ja9nVU /3X|:Nk ^&M.m$b)wF_͓>|& :2:0XH_HNys܇}9 qTe=ݪExud vi5:pЉbbz%ltyō,} nxMnޫL Q?ޟI)$#LbB}2W~r}CaGVY\#'Ø )Q^@vm_j谝ɟCu 46Xx9Dt+s{U. :F2+̔ D<)lPDJ52׈fdTYk[Hq$+s`&o ~(U 7^`坞T|;Jѻ`cs)Z"Axd4yMbLwURlTN*vFi8D0@i&qդr70cZKi}ֺN?2 h1 ;l1$4* e,' 뎽rع&k0Nv k=̺ղ|Y!k RّsQ}{x [:G{"FuUbIMU&6&/Ö^bo.0XRuAJf5 j,OY-V-iM7:B<<*"^yÄ?5i60f4 7E}Cie}y$ KQMxa\|4aY_W=L0ÙMܷrM4Gq8 fuj[,'j,$ +EI{k0kGG$ 8Ǜ22Avj;mR'{FVPՊmVU- X q8|jf$sӌ+{J*B>LF,>w1V>tGY`C?k4|Nu&UЊ@zui»Y>TU3zZI2Қx'w+Cfǟ~=Pw%A}D}a#d'!pLDsYj@Hbr$ 5XIgfGrgiZ^ Bs3SܗBC~ODi@ i.Ȣp#O5f#^Bq3r3X`{b{2gFm0:fHXYoRG )*{ЉZ][i"7ܛ=[B*3E?bQw~9@c``عB+xӬ?3zzŊV!\4(@O+ܷymCWΔ K<\9! \BLʨԿF=lףl߹ ŭĵø9C=$0qLHk5B:6|7b-ٓ "I_A0|%w=#|QۏJSۮ/S$#kb>-#&Oܐ󍷎+n#v;IWX,U!ξm^n*@SHVVЯ{MF(@t~TvY=nPx}}Sg^{7csV"o|-c6[4 6tr@Y'4h@+*) vaS 3OER,I gQ W6jTNڃ;2 Ω)2Upմy3& BGG,V,oywZDw(w5cP)Xk2rFg=7`o5QCLj`$ٍTa,KXBLZ,y>'UeόWwؾFv;@%Rh i$,\[)cW`[9]8si|VOs)8.t0ڮ6AwU ƣٳ*@ko?Q&HS1E<<(7C GqzAčP6f'x0 ʍjڵ!0aڜ>SbO}E#opBDH=0Y⋭tDzM JɈ!gL+7:CmKB)D&@<9[ IJp:@ `y7ןo"V /e&5&ϯkƾDÒ>~LhTxY \L<@8 u!elBo9cQӰd|`6țՁ>$#͚HQ"|eGj!ȑ]޸mGHq Y6l[i F, 'PGPbߋL]l\`^آ4ŞHiO8t8P={*y/)@!BwH6`fd[@6pKK(@l} + ?z<% 2[0RC`/(I#I40M k'?X@ыґEHx c?ArHwA@N^~=ӎkuOZsTOo 3AŔش90O5Z{d'%AI}"-s'kL$5/MWGA )pa .@{K.J5%u1cOP/ဧ{A3$[݃Xa%.cOZjCǣ@R? u$I>O'*+JDaC!Qf6T[HXvQ /]˟ JuTXg<6Q YncPvf+Wkhtp&/?'FsٝlB rF7XcF6GQ4'GĀ3Wa!f]d]q邶'1;7 ޹@O5«;z)%{fi~Q{C&ZsFS[䐶jNʏ\qdM"tk7BxqYk wA4PTC%,Ҋyx|2ڴԾ~z>F\!+jFKt{ i^U1cM_mlI(=UVW7EausU]ӷ2ꞏ2hTwNǥ|!XW] Xl@ 9G.$놯^c+l5~'Lm[z󩋃PcYS.B#cm%J~H *&$2@lyx ~OjܻrW9 l=kncݟ r W#ʐ֪[&Wk$hC^PJT1Qr| Lˌ+bu*edOިƭ&^.>ϹY"Pr- Uަ6$FA2jWYo(#M}-@ |EF7g%qxI]jޚ1)I"!ȑ! ?2EB3 ?hbڶɰaPzWcyhTcJԞԓ0p܂ȕ]Lp~N8DB A|/ǫ2SdCnn~)m_z~y)nAk܂_L;B#B ģ?=b~h}tPU2PbtLiNFbCoQOU NM ]X }J%dM[A(a땮˫1u Yu@SQoe6m aEZC>1h/Q $ʿ4k *LN\uffrb״T8ځfg',{ޞ2zP1Q0C r;^IG.n~ɚ=TQ^GdL MjhCPB lB?:iGW!/8X(IU$H֫}V9O%73ĉykRpoʼi8S#oܩnzB@ D5Ggz$_N{wO@] QCc祌lWWB&i.9?$@k-,k)ޒ}5Ĺvq)njtY1ijWFxn T T4wXs66"x wY7Yxԧm5STQ4g_R㆖Y wklFV w!Zj3]7'Ʒ1oeVX.2iחn= to(q4ABoxٖy쟭NHj-SԢskS,!3յ׆_mfvg)Ux=qJd@qfoR#?A 4 \eVs1M7oYsO=hȆ̝P7vV{;)Sz9D4(u7MՆCՠ>hC }m ;{ yJ46*xB%Χ1fTdݛK#NW9=\LSSn߳n]WHiͪ9X^Oˊ7'>$Qf##7~8tuu T*67J_gLKʣ7T@>bdg.Uл9N~ E&9OrKq~]v^9|U8fN!b7`ATElFh.tGH\)tZja*]ȴZiN;#bА)a~$ii[1$ <__/lqU*W@qD~K5Z lf\>__7Fi1*ю-3.~泮xI+';hz+U[_y5 $~ǍiOY?$&P>H_ Kuf  ZmT '"0*O5WG[-QQ=KYpE:Ƴӽ VVi _W,jex03=a%HǛpoHط)>R jb},`/}jj$9D:&ȢL vhad9[Н(NpZ`VJoS_A.Np%/R5g'\IO&K5^nL4{snC(/qno(aJ1/,, I}.zł!_j ߏRZdp 1Ȭҍ:ʊTQU%w]xܝ:4-- ?s)oҟ6F}DygLG2D.l)IcPL# LUlsZPkM+ю2{& E_n`Q5dhg}3Ώ!2ʃgB\f<99N4b|Չ݉NuKQw gqt%3 N~V6.t &wM3PL޻7H9?dY,IaoE{-ζ%B䢟ZwB> F0Qמy&Y$ `.&U)>w]GhN=zD1}Hu,deɕ1Ә;1,ޘuNY{>|cnDnٗ"sتhP%|$16yB?cւ! J.92C׭dꣅ,gTBvc`=C )ZauSpˆ|GX9TqßJSTI ' zJ^Aڄk-V9Z v0PS}/dSK#td%p6{N&5xH=V 0,#.VT ЙOIm6h>á9骓5Idw*O*1U_3~4y*lfIЋ^Uۄ]/^%k{ Ζ@vzv"Fgf<@)B@0DkjجΩܜ_uFk!JFFB9%n^(? xQ6&mU˪| r> b&AIhB (&w0qjU-7I2HS!k2)3W[h9 S?<:bLbUwI ( mPvgy.qJv5 yہn?HyDI.0%:s7YeConp}G?}fd@_kzB[ٗIorC#i\hY:@.&űNk؛x:-IQ_ݳvAs^ &ה|+Ir|wn l~U NCQ+6&1mUF;zd٥nhkm'(sZ@\]^CdÌGwFc+vgݽRmscm{3/H:ʦ6}Z yVm%6ڝIp_{868PJzavӎ]ҵ[yEӊDq_f؟YT6tg[RI&oZ9t#&2 Ri zQ=.9 NmT'F;K:&amKoUݘ!$c_UHYUSsr?uRK9_#L^H:fc9ޫ\KP wÔ.^(O[VeLxMǫ6ppIңy/qئxʇE3J#Y-ʮI@麈^=}VQ/!_IcκL[)$:'y*鸻i}!q[_\0H6dΏڦSVmĺVXAYK-GJ)Dɺo"^gOv(Us0Us9>Ue owoE쾕^JfthLVOa:Z+Y<ر:2G5c:Z+$b2 E T>B>JDz) -b\ /&+Ϛj*ܪ}ߜN/^זdk>d{nwrՎ.Ȕ(d1[#R+I)in/ $KUx֦8z7 5@+%C.TA2;edpRFS|AzJrBʹĪUIP1b0qoie~,uuY&*:=ԝC9a ߓ\wf\tpߪ4 qt*3nsOw ~ =Bڸ|DqSRKūS)q.,ϖkfn=͆Ϝ+Z$0NQ`[Azv+‹8#TՇE??;ng<԰6i "t y\k"Z#Lj3Y ih]%HDe^-4%嵅wI285<եshH ZsF걅gK5vCwKnGj`%b\7NsmʲQ6EFCF/ra2:}eW]opGJf (@?L.niz r t#oCࢽwZp }"a؆雿=L3uxӼa($H\i?@/^|%JW"@^WF[:4keNwD2p1Y@ 5D+@nj(c"};_O[Ē'@:wv6kd]:S&K=OK5okAMV1vrDG˸۷~P3e%!F)l.5 xVQnF4P26V~7Z\rBj@>rcT~?))zeSF3 ꩱl 'i/~!@@s2Oڷy@MmDY]G{bҐx%vdݭR.WZ F7,AvlWGH޶8[*Y"9硆!dml:Qq?hR$ޔʇqQ.Nx~OI ԊNV[+e+/_#U&#}_z~ "v&,NהssZ9#j?3|$Ʋ]E)@LFH]TCY> gC >Xy/.)) &+%9@V[ ;-R4\UMLql2m@ )?/"JDy-WMؕGG& 4l@M)5qPӫ) # y@)$GuرS{` ]<Ѝ]1<;Q/,3|IxmPG每{rG4jub8i w?3`v]@O2{:A쫳k ^ = 7Mʕ} (C6GP4D_:q vITvQլ`N zsdv+:e;dBnPbJq`Qoʓm)%ospvĀ ?a_/Hd9Mߚԍt FH|Xq;,P WB!h,5Qr W(ǯ։1Is̡Fgu ȸ*[jV=]=^:MS3)JUJzڒź-AZ+C'IهR͹)>4i]+x;茅4d4]`4x='ќ@k4!ۭK &Մ;y y5zLpQ=1  vPbW_Ϫ~rN5ʹ">m-үTٽv=;]XP>`;~fh{h]h[}[huL6B*O{~"Z..*=Nhn*oS&zT#h1'dzLkBe Cqksʄr\^$…lD>]YkPo[V%~ jzGFSKvu=b&F N㩁x*ђ@6v*{l@8V{ Ș'?)ޝ'lJwy)%r˾ϙ"2;v[-EM*Dœ7QFo"^S%ODc@2]b{k\<OioL{[ *יav8`i#AԜ ல]*8$L.b2-Qg.vؽ؂Ҍ| j N!ᱬ4bƝLl93w XYZ!kqO!Ib֝{k04cZM)-D.'aB,bl?rԜ`jɼ Oj!̅`mТOֲҥzyJuW{ Xe[QA ipW)buA%8X?R-0 vPHE79D X%TjANrR YebG#8t?aH9'XH{8P'LW&884f_nZjckT|Aw&S*6%iExb?TS}f63뵉:^f:3>&sǪKH\f4nj:Z"mbMv)/͖;;~OzKI"{&^7_D0e彑Řsfѻ*N&6}G>'Ӹ$s!(A55P=<_;m}朜ؚ+}LW'sy 'r6wzIp8'Kx07ݘOM"ڂ^s}H*a53BaQR\ebARj f1fck,$]FؿmuՖRo6 &CB+*wHKT(IuϢ?GGvB=iWK@[iNмiAr!xVT*lNuҖ‹;9NScrсZ 粮Yꠐxf&SxrBZ/+i,9yO4rDޢχ!/w!98[^RKh+p .pP]`i1*ǜD| 23#voS* 5siA.&Tk, GUҀ;F*bY.wiT(c_R(SWfvV/:1_lt_W SJ7-^ ҹI5߳hl60qS1B_z @<x`*S8G >XO?s#\,j Ji]$"5$R$/$ k~Vr2Eij;_œsLdhw*sáތml!BGFD4NymdZHENhQ83QiRhVT7=ɣpnSjÆUzF6&ΎS02ww w✶Hwmyj)s}Cቡ ` ~"Pj4@[rDE|,#5IcIUOG"oPڢ'-9M~e:ۅr0'a/eyF*s#ڝ!QtWll; GL' 2p@(;BBE) 3Jm-Djj2ekwjI9F[4YЦ2=UEۗ@+E L_VF'޲ # C~T0 ֪e-|WrSO+ n}Fm{*ʛ%ㆲPY̱YHztf5eeN²p1"L cZnߗ w(GWc7&0ϘB}(DɛY١ wK8DE\~F`ѽn !h)d dO_ȥߔ?ƭìVƻRK "0<6I#bUßpi9>8}ِ6%$,͔d)|:쵊O?vPI/z@ >|-'OŊ.yZK<(˺0m~8Vb.ݦ+f=J<: =)i "hzF؄*ht+}T+𭛠>U(8N_ *JkPSt,rUJ-0F1ߤCEp'G[91odT ş:U{?Woem}6a&ژ%5x0)xD;* S vӗB(py,..bzCtSJwҘTQA"?P/ׄG=sm~CU.'+~bq 7Y6JR`.T.h\2p|.sA..8f m:-FWS[{n\ ߌAz"O_@eH>6f9sܪAg8G7GV}wk$4Iς9HX庲P% jJfbxrljl~A«6~W\p: PYAQ[rΞcWD 0eoX@uxBf: /rڙz\ Ú.'Ysy[dBV&8Uxb;1= //-m@eAB[ݍ셷@$;M~"vw@}?ΘkSv> .En3y_ZrjJsB't% e@A..+Sq#I&7W0{S"(nvPUx_w.|= l>ZR>yWpǃ2QJD:[ +O}0$Rxp7P>}s Y}j|ZȫZZ-I/22;Ix%ځHBP':aJ.P?_/ySd4]k/$ֺ %m{N!N|Jı,HE !u6IagW7qfJ_SĊe+'&$KuM$egkg0|8u*V8gZ|5Y/-bcEq^ގx ϫ(RCH"fK}E+i9P8:a()DQvt lqu%m^ͳ^1q3  1p "2B7weUSaO't;$+X 9әo'R!՚.+9砺U7?B{')}γZ ({% /}ea`[/ nJ|ьsDCZ PsO XRe')F%&S+0S  g2P~ (ЄES:/Zlbtݼ2!H 3ȓNS]$Z,>tCߏy~nim@ 4$λH7_) re2FMyQ*?n.-أ@:z*0MЃ5$ۇM<1M^IW/_YB_UTrwEl.8 6JTq[pl 8.h􇊮V! o&@ٰBGK QWbr}$8"o"ȼ/B(#ȅkJ9($rK2|'žAT=HކM(^˚+–q,`^-t^.;@~h ȺٕҾ!qg/xy^8!3lw  p9@F/yn]ڃRxdc%4E ^lN|XZ SͫLر~,=2P!1YDlHi O)t׬1u/_4srRJe50#>s KFΚ?EDAP NQqo]>ߧYN5"m  1 Ў* x0l a9/ X_2Dys-Cu$Vn}?чH920-Ӓ5a`J`Rn1_1[Z&("Ibp~?O؞TT >6Gf䅾;audOÖ_V5IeBJ:yl&0g<һM2 oȾN+&b+&ce3}az](jCr!N ̋舼@'A|5&k 'X0߶ i d`AST(a(A58@n^Òա˜AjyşXWbث^LA .J?v:删Y)J >cɽƧ]q'rLfHVJ=zU"5xrˀ'%&)?1!`]w@+X|џI/ *s$iй^ߏ:Ac5k 8$tSZ 2-bF:h`Hb$MDCt;C]ߓn}$[JKpەuM7ƥf=R|te.0X/+h'PK^Qo9o]0?5@da) HP*6fdGv溡 hb dZfM$]wLMy3n:- N 'ޫh}C𻫯o5/Y{'*؃7x~0H}.0 |]O =,6%?#+9ls )Nn)7do^l 1Гygꁸ;ӄ6y {'ruM }'e;,tH9r&o`l ۾q) {*͗2|??uSWוd[ s`J ؙ <<[fH^l,γi/ }]C8ʼu_Tܖ˳3J=vY>exKܠ) @>JRX @|7߶NQ4\8tז̓It5e|=!WliduͦkkSy9Vnpn)x>Oxjw^oY[T֥S.Jgj=稩nzˬ O<3RYؗ㥏" A}zsm@5Dŭf&cƜ'̙=m#uh)rT;l,y&AqݱKS~ 6|qCuU5v{R}AzyNX# ԅlA3-Իf=7Kqǚ2.%GJ9bj}\E عS\_BV-;K~=XnpW0=&-)w_Zz<_#$=^$G8g;[q d={&8G}`癓;<˄#?@,P!kUl}v~ʭw$#UG~mLAr+Ճ~+;_5r 1α#d"mD af;oe/-|Wj B(J}[aIDD_v1寻{Ճ7쑅* dW!2o% Qa!C=y䫮coƞևÕQsFw]~odd.S2\Sj2_tE˔`\S&i)G?컚U*W 0z9" ŷ)Cz,[/#\jRLs;E3jcmbn5OV}.L&i keLyCHw,Bk)'o p^/+ҕ&#}ZJV_7,#g= x|iav>f;qWԙz!(@RΞ1;+җ:" \Z!Sg4%5h6YpG+ @2WtMguW? >w wZZ+VxԚp۶r$S ؃q`cF{ɮpx\⓱bJQiU_.A$Z+u0[W ; b+w'W/~"I/f*69i rPH_[ s;?]TQ֊{#>_fUx"HXImXjHjb!cQҒ8kF}Hp8R% ʸ_Z>Y0`=|J4hHls@Ss!o49W(ӣR٦V5zu/l}eۅeO4:i(ߓ!Ё= Ί[ʸ U}V!Cs%% =Á|)ND@9ތ7Y]ĶcӍ+zeT(䇔 &7 l"9XGG#C Eb{mVa m/\*x@OojJtfg\uL8 |3m}Ik<شTk@ u%Ԍ/KP<]W0(;VvBXf1t%Ub\'I; Uz?u XvEn2gN47sQ6h^p<Ҟ";kj;i}Q"_ˊ1,AtH T{:.ev(uĈmfd.nzsykk띺8ȇv0>iS mc̥-<FƎׄoq ];'K/נ{)௏ Q%DmAp;!7_ǑbO gAm5aVn hb.>x$*UjvE_?:r244T#z'j7řCE = 6W8kiX5f0x1¬dbert>g8 cC/ƈQ$W3LJ;"v[KH YSfdM P~uRCpDž yLj"JA88NS>[w%esO7k1f.b{k1Ov?gLYbk$Y[ z+h?,ZTvF^ eB?Á6@@Su;x5:pX>L-VUw;i ОUQV!i *{sƂJH÷9>5W#th#d>Vt ] 5H58\ߴݗȹrV0V/'[TtMs xq̫p{Twlm'+<ΥtP0fe=ozhf-fPLv's|YиFcK ?#ŷ/A龧 BH~V$g6#A6)(.%hX<a ?*+8{IVɐ [^l8Vd;GU?l"ĊwAZ5;7+X'L ӷZ?n2f1'CkyD2D;]UÍQ{˜aL/Z FS#'rH1b| D#u Q,ʌ$"1OD@0R9Z/^P[%I`o΍ۆc% =AtsZpr &n=ɫyFCDXY+9? lUn`6 %râ[m9lϾttgkD1bnάfER!F7-Pv/+Wh*#\ 3>{E[<+`*lԎ{_kZ g/4 'WH1(3g[؆y*/AI5UB[|%MŞNlUnRRA)շ{#GYZ]x_xxXXu.뾊R1먯gYNy&&XN63=g0/GVJeM+V1 x9`IP%j a}X)1tH,Jic셞#r?سBh?"*?~ /he*wJS+ОPV+󞗧? K\li䌬);@tO[YT|d> 22\nyéT,`r$#3H!y`m;ٲjCbv?6TUaG@ CY 2Om  T# ++J^/v+`-US</Y>}.}AM?mq#|OW\c7ͯ[/[6Ub RIċgfWH[+8kEv;7]xcQpp5>#,ą #[4n4[rlUC@lYrÅ#B4?Rn&u 1~ t3L R\H[يPq;e (fo*Qo;r@\%}7k<j`sD~U#{FO~e'gF ކSTSaMKAs4_>DU'RjoB9MòULJu!-c3tYDx( qs.+>h^T|)G2וx"~㥌_lm2?i*De>ҡ-o4ըzII-+ߝGsF dԃre{IOo^Zl qeCz8ejÒ>7."c%|jec GþnYD|7u a2n#a!)+XHD0n1y{Q8빌v_&:B:!~U#z7if<ڟy cT.lb#va5#b#(csl^,'4YOLL))]Q؋KK'WkBT~rHo h:&S8rN37t{_cYF%9Kl<']k" rf_c=&5j]Bkt&_J>¼N(K'QS3i\B>udl˘ ozOiLa/hG @0FxŸ* Dh)\DIɆ$ cTKm @AQ$q'&1 7ۓ:99#|N~rѬ`ƿ>RL=#6ݑRũ'Gw2I^*`EM !nxb[(yf eMuʵFEޫf߈6kV0 X?rWBiN=FeDyɬ~LOeB][o 5>h3<:e:ʪ܃\,w}SV%cLFL%\G_EjAA[ BZ~ZkMskx.t7Ѽ}I1YI Óʱ)A٥|c t&rV&MF<}ԁJܕfix\QԺigr*ൢxWרOfKB "Tak01"7iGZQ QCQ/bq\)YقBl,SLSz1;vL|ϲw'綛Sݹ]_VaYXrFPMEh0ͬO駿P:[!ghhwUԶl`U6hA8av;l/#3Ϛż!TܗqF_y+ϡw%X=Qά`I ŀqm( jfBr,'>xg5ՖM;"_Qjlnl7fY\@qi|bq@UoRq-Rs(S:Xl,# x+e6ZP %Qq>:aVq¸.%0 GE,'ި;Kn4ZdIMߨUؘHnkjH!;"oGd%dQ`BuDz&rƋ# g| ][*GWC\#J쎁#ԩ@wcֆ}GBdS3}dQ#ȶ3 4e~6p@X༫xĨhR{J_$}qΛfAq&mGfdMe~k=k(Y+ZGJGs\qY,Flk>GzWo5{с)u;E,$.bIx ;Z.y(N=Tvl)>U0}Ʊ7euS>GVu ti9K ~d8rve9:oIDOvvnwtG'?zfZxC2}zeapz|i;ӆjah'v6NSgI uZ+?}ބ$3]$ < hT{1)qƾΑ._SqNP1(E{px=s_3 R<~8kr#{q^g~@`WZ/] ޗCnKEZ9s/ʶ1 哲fS~!CƯK5*@F&G_%ly0YˋB8tנvؽCaZ_lkWCIPIXtEKQ[F`#8h}=Xߩ/5D@]SWXzif==ib9oY` d )G!T-0/PH_zśv>IX:};Qz[ ?AE,/yޠj@ZtwOQcrjd/P2"7m'vwiDgeduV5нYvR_=2߇4uXTs "Ĭ؊,#%#^< 3-`W`P+dn<&%6e.P. m`.NhFv4nM@ЕAk"5fl2ܓSBdgEi6/mS~m֛u z"q ^rfԢ܍MV 8huZP ?o;˾R4N29/$<1)O ,SVZ"18<<=+։pX{PJ\)0dF0@4xtqNdWa4eeetL(rZhԞe$z[VnP4bdUeG'q-b4!**to}!M _?1kVBߔ*~FUYQ:볖(7LD@m*~} "Ai#Ո?ݰϺ: *ِ yʔ|lXC!qMѓn dmǻ`Q.)ǯ7JMڧ?kЗfo?icA*+(|YMXnOwLPR{YN Nh8"Ҝxs;oh@p) \dT}w, > LJ!M ż{)e7C.8!ŕ2\=C=K҃҂B=6M3w-Ćw[ G8H_F"l Yq aY+W$Ω@F9?6U3dq=V(ʳȏ\WcЉgzъ9΀`hvv/ a#.ċD :CTQU:*D[|+cQl^G Ѭx`(4Z1 &zx]0n}\0AV-rD@@O8OD< sHtYz?fs?$D-;#Y⦈n4W Aވ\2ǺZ©Gw6E 45g=ު[puU_!rADU~ˇP;HhtG Th֩C@sĿ#HOs@QUQp_IR-Tv7.9'c.Da(*W)@Wr\(bAIxw2\Oz`+dw atDܲ z>qʶ]z+-/s#nrv_p^wpɨdfQ+$bڂp= e)0IT YƼQfpVsCiE[+UpRۚ`AoZ-uLTwdylҊӮ4/o&5N yer*85DRwXv{ϟ頚yXx3 p<<OYv%fhxXyh'>m:d$_K3!~Nr&P6ȗ,a_Djԝt`5$`o)] G# CSqrqZ 6m82̧9ЊB[tK2E:JHwE'/?UU;ItT$F'Tp3>U<-k떱a44 Y|/:1@I .n 5;Mcy2Z8(/ CĔ9[5BC!\¬Œޣկw/w` !炇u&v1jLFAD9ujuPRSi<-/z|陦&1ǜ} A)5[OQ{탨8{ߎXWՍy{3\=-Ss[N M(#귣0d4{|]tNRC`U Ӧ?B}mGKƅ6N\!O5? qzr#[JS.w3Q%aєq11 :7-h|x&Ăf"g 孜. jto-A{7IKMpW1Vi'`S_^u28+F(F3H@uLe06O8Wje@̘m=_|rgܔD푢Amgbfʎ0Ů:T*NOa;L@ dz Mc H~^7<$><C:%y``2='."u]BEv6f=eJ@5D ƊN6֎tg)E pl ɦ@jQ9Xe$_>bพMu!@\+]CY^ 7U *{)$ 9y"̐.@ncHԥX"bV=[bLT/mk$ђID<,onO%|dwYARCt(4d1Ewjڊn=NZX9ugZAr8[Y7EZ _}TζWn ⍓#Qסzc,2Dt#Z`?e֤VÜOm\ d|klTh(HIZ- 9YFyBx61`RE$őy[[QIQfݳ|UGL}YKYt`9Ro;tB мĕnR PnAڋ h+ɉ],TJQP9}To$>$fmx>nA$Z3o̬A>>8,M,JJӰ|f׊`TPU J,*wG܆5=+|P#漪! 1eRd/S~=\ʼ(}p;n,g&ӖinV?+ OPr*NaC"nUc3ѣ>ۙc yl:JM 2ziyL槛j"17(c5RRڿӽUa{S̭?mٶKz"|)@Mju6KBU]!e8ѳN#ʥwL82m\[Y" b( ˭!l'O pW}KK-:lwuU)EQLn.V@ɚN|rtT KǓ ឪ]qPdEU/($,o5/?y7TfHzW/":RLn<|P)`gQQm|.)|gPpOT/e2cP$;D `CHJHޭ[cT*C8VKaR-5|T4t+=ԯoyOyF'ӹjS \[|0j"dYPOedRH1b0kmY',1T Y蹛x_u|&DV_bbcAl+?Jғpv;7TNVNj_mYSTn?#bf[[Ysuĵz/0в'CF-rBJCsekySMuCAn{t2uT0D-M6ߝ? 5B, )> 'c<ߺ7o7L5Cj8|kb{kTP隡F}4;/qG!2~-S<~ I E@ w|DwP,{͕X_O0YbGH4Ga}$E*1@Rg4|pm V^5o+B3Ɉ@>"Qj7]$D 0&nvYޠƬ:k٨G-S2@ut+T4w>Coe/^տ8x[v#Me565^t~ w#nٷdh2W!G7gCk$BPoqgN5 I!(gכLjN6'4tnRnzHA7y @.j$ɴ61)H'LR լ#P41J}aapLYa;W"q2X[ZןeP1favڳ y߬9v`^mZ>:بcV\Ue{BsN)cєxdp^Pieof0şvJ+$ Jg0:d mHoRZbVQ y'{6d+ҧ.} UMBL`7"t4&kap (*鵰bEPLf_vx~r`w\olLW"(A Ջ hy0ԑLOHЁ(VR-E2H4lH+Cmd/|k65}5#ٛ X"xzŝ|py1)%gYБ|E?uSՔ-<3AWY fh& uOf?:#,v h neqQIP)&'@D[Y5OO/pEd"[፦ռnH-]:e4H4G$SLJC&ulN|h _9vThN'0)K]7}c$$g gN|Ot`h4PcCj nƵ8t ^ާ.6`J?-`{Jbվs Ae [re}ig:wMFP2G-j cVxj)d`0[w_b͗k̹>ҾBqǨ妘خ ]͘5dUI{Dm'4о̎AoÑ*qbVt>٪K<\)Zn'@ĝAS ^R']+8aʣFC(lIunRwsv0  U+Ǘ|ag`ڲb8Vx<WeO4[j8NKu;g]'m@ ؠ6$MC\uf& 4Cj7Lşs=kO NPRsUb_~XȦmfO8.$4POPmi-XFZN0xj&Su+geDn|}/ӂvDGȯDg輕Y>+2ALL T5QU ՗7<$X~WDYe[c"&=J{ZjFsbo\*Fb],<,?3ᴦ'[?zB2b Z0e wNetC{{7/*gB# 6Qyב! (Ÿ )!EvI}{M%Wuvqan4V'}2l7k)lD޸/p@1^^31jVH9&\[fCiy{.t*H G'0IhBOȖgI`(^0qZ~N+|}Urܲp_X{ȶJdHK=MZ^9oAi)[pm PB}A *M6;@ OsU8:44t iQD%JuHՄU9di7v&BAotX 2ѼUE kH F0D#plh*,X` 줥Bڈ+u6sQt"ŹL36jWܙ}II0[$)XsxzH3ن@c" dVL~Dl8U`O]5ٜۍ^6_e8%=yVt;7ndiHO ^^@.L\y _}\AS:(xQU |0 |2*X"X1EL;;ZMG֭s*ckcYm%y*p~,ɖ?)Q++s>#?[;5x8F^>q]甁}GjލeQ;ҀMpB37=|p9.Y6M"`1gdUDK9mYD)r6?JZf{Strha?&~`5"4ƶE0{Sܰܗ%_|+],Yg 1E(߼X>"HC}AZ +GIېgC 1b? ^5LcH*xr@a 4~NH;po [pV[q"_K;TrG[u.yE-eaK[,Ћ=A;)[)B2iHa{(cg1*q~ eq.*xTꆰ<`bMo>ON =+tLK/84?bru,cgc<(<)@Z7W >hDq^E=%k$Ԁ*%')sF^d peK᛹' {0#!}R5;qq=cDИhŖg`ޤriv32:Ƹt=ȑ *4Qb%QIx`b$?*1]3 F߉#U ASMi?-W61rY*; Obm|5[SѫOrظ maITK=U/EVjpxK'4Vk>ABқw)YLk)r! |nS]{;oGh\d>6--K fLc|mOfO-zOAATV6^8|zmy&J-%@]M9K|IcOВE­ CS[h?FtonkH$l[*3%sȩeu8j]x;D_%Sm(}3OIxFC~+eЇl'6!/ ]2"eVe-P7! v *(Zc3hJ$`ޮBƆbRHM^hOyIvنgpæ O?0Fewʬ\$Xж۔';zz=*Rג*dFo( &=hTbg&$T㥇3bKY}v<~+P$t[a$nxuVqI9 Y)iF-XUl#HJM랋jS\$hV,az53OUSj#7t)WEgZ/tRRzk)`< ILy=}K/sCg -kiy뫮N>Y 1?@kT PdF3 kf2s: *A':?1-lz[-"er: Q.&<(sDO%7N{)iӅpnGr]Hi_fEG|jN.̨UX9t|[R|6 3T}UqtRf?Neu@fź{V75/!B)~¼cKS]WW ڭ|?5tE |ʆR+UwMZr4jg!f^:"\(2*ŒμX*NFJ_΃mp٢aae]0Ʃw_̱=>D*{GA y ݇UCr[2Ij5\]bU{+ rzy}"'X \Si)[y%\δAEՕBDlZy>?PߺR@; $ FwclG{f+πK^[1zGG_xgĄ'`ćaO&1`ʐכ\ӕ u1er$911E2֜`mqQ=虘ً+cO۰ *.zӂ;_ؿ092thٮ[RڢN͗nz,^:8ϏBd 6NOycB>LGUZb~4`U eĀ?0=G1p-Wbmg$ҩKi#Y%̋eȶ4x\*u &Z62t2yc>(e% xk7Ϭ^g/Nv"vUqh3pdו_;!rhTCb/i&s% *Y!RPoU@-]YVxۄ9B8\C7'B6ϹD/n5fY@ H@[*. mM3-a-1UQ`Bn$jѽd;Z1ھkPޜ X$ TW*S'|^88Ky\`B\`OXa󰷹Yם :y[ :9)pٯW ۫쑎 ROfe-C8[Gs7@: 6Nw]#R }~8?\8!ד6&=8(ί8ߨ*>:K/^Uвf]Mx`oi|i4ׅ¾1WPI*g[4TgSr5ޕAOM33ل` *qKXp4Mڿ! *C~LR3+߶SHw}G'$R‚%Vhv \<$o)Wp&:zHGʮp~clA_x,O@#*~,Ƥ4G$$@dM&dųNg@wgBhh*M9e|2MRyN6́(Gϰƺ(m1#2ϯ|r *Qoqm`Ydbtqv\L݈FAT g!pO ѓYUGpᝄ*9Ut1ɏ {.5ىEt|˒a7\ R:v zpKISe]}&fGM^$IAQ>Kf?U-Jׂ=1=5sMNYi^>~ (DOR4w!b7n=|g_p)8 eu '口ٗrpW=ecvt=!NXp3FTwbLu{{#RhV)W ȹA ϙ 2=pu`t&juB9 j/ JW ggVvPe6cMAtA? Sw lǍ88M0sҼ217>tZ!0x0|uXl7`t(5$'{]4WB+Mųy8kbM~&v;uiFaE@$_Ңdz82̷sl4dBUÛ򃄖Scu "fTDWJlUa CiʪeҪuUvߚ">SIR@~ow~bnyخh}55Xӆ{9Ox|nDoU"=\ pADJ=/*2}rEM} j>pJz˲'b6RM%2J|&^ 7|(IM(8]{s(.'e:3aDrU% EG `|m^.j+'(8r*ܾ*PT1p . `4?@o]'3fMܱfnrY Bg?,$:sm>CFtR}K?.RNMOm"m7szGΡdoLyB[TE^ͳY"SqzIw {PW)Jr ?';0b{pjn!h,uԪ#\ ݈5[ST820b|ko~jjʁ #CPA-CEDZƗ"[? ;L+Ĺy_TvPߢtUAkYTE)5QoJmPI"'SOf闪uƓR1-I8rRvP黄V,ϝ \p鸝9[B8\#c&όYxy,K4H3wo?d0s&[9Cr+HYaՇ(H<Ĥpp)O5?d"UFj> w<5w{D˅)T/?'1g#wd?Ck08AHWDoAqѽf[,%Hak{e݇pU|i?4Lc,gvNWW-z[l҄2LQ'~妟n1TyR>[tMWsG<5#Ϳw-m+zN'|$S)ƴ#Ud-NE#X)}].<].(L[dX 7WB#41DvƋp]FNr7Z1}.M68=O$úE|z4eօV/zi©8gYǖ^Hp]A쭱zar6<|5ma'ad%{z0ܓc_bzoQZ%2&a nuW-|R @VX$l$iژmEڡx:X(mYSnR>퍬dc6lkRt˽:ENTF!h{.qE6O7u\1uqFë<箯CFOoS Vu0~LMT u#%ɂvjfgh@E8$" -P7&Cή:=8agnHaHckH1 x7({ .^#/ı8*YJ28$+2žVsۘuVIh\(C pݞg㕥0RHJS#fU?JoDDim'}ؗ++Np2Nk;g\wwjZR`8גÏTprDWON7\}YԿ:Gam&Bi+F F%K .JTGVD` cEչUa.-_: = G1(_;W_S`t"b:(HyD7ǔ(ZAPMKۨpV,:$m1+ &20E!\/<[G\/Um~b,7䘎6cWMr9fA6,Aˀf2{(Uhw7x{t,ixH60yXTl1`4MK>5^RLahX?m O$FO(nܡoMV=8v#=ѕE?4z3RRs+<Z|u.{xx s|) eǝ.JFVqʃpǰ%]@!T$>Q0P5ǸVX[: P-vˁRf*QmGg]ER:D@}gD|{TxP|N#SxvtRgz=-x#Dj=l,7-1= z;P:_fK0%tL9)KLWąD dC++hFT_BL)VhAni4r!e"NxX98LmA]"@:r/vhƫ3GNdI3~ |ñ l3LP?:/WA(/{Gohb&YNT.rQ%LsQ' ֢a-?GddwL '07a.VhftuWՆh c]Tx} XghǬ":mG5%|՞u+/poc電@GCq%, I*&>frv{|ћ=1ݢFpKztB:oaKʩ=8淃G_=%0n_}g$PY8+J@Nc׷0}."7*w5Dx(\[kwO~'2JT>0fx琪x輽)2 ㆈ]+Þg %.\NQn3ă[i2ϧqd(\]dBn P3(Be#+% `  _/AVmsѿrc2GBU[pi"UU?[)$F|UƲ1]b1u)(&ƸR B/ (ؐ-hwZ72r:71̳{;-b,O^K1N`BĜ:7e?iz7 ^%;uvi5٫"({;qE#rEHդ&0ȵ"V *W @"9#@ a,@݀KdC{["MqT~J{ja$?l8A(&|m͓r|ʼ:(+(GaO⠫pIߚ\3B0k0#˨fz؄r`C^wHڣӠFD2*"^vd*F8*,|%.:0s5U6r&dME'"&ˮKMwpzMqHSp3Fi}Z@zHl-0Amۿ35-WzARDgPe<nDR@|k13aZ6i&DשHuRSPxCn 8àxNGw wGa<1%esHox}e8auP=IWgc%ɹYL:> g'+`t!ɽZ#$bOA{F[akCM7F/d\{vVVϦ#v;IzB+4K S$?4Wl1\I%^EH ta]m$FG Jp>~0bJ{䄔qF`Lg 3/L0ޣxS 8V vݫ{Ga^Z= n>NmtRs(}D9A(Ц. S; hXj-)˯ަZZK fEOcD>@~zic SdSUDYtah@;;'j4!-w9ʉK_5"H6 oPdM(o-_\k Ec/a[BxҵJNy,C W4t\ 2f|AVzxt#M mP,btD)Es؎~YvAЏ!Az|Ywqh$&}MsMQG'xSU~ 3 j#IhNm6: }dQģrMsmH汰˾Z0I0iXSwá*Ρ@0tLMG4sy".]I6%?ę2/>P) ^-m$OdUhhb&jiim3b |$f{o-}jbf>!$O<wZm< =j(4}ZW:4lG៛&i-s>1Eeؙn͈IDx6qx6l4f,M~z j`oRVKY %V,vP՟Dqk a iF?a0aF0;#ٟ_bVm_v]ɩwx-p\@Z ;*3Z&}/ a3ˤM`KQ>rtk }k&HzH1u0h]қO{mv-Ͽ.[D9o=wET`P fuCc>B7x}*Chp\R`o#oK.)[ 9?*rHV8b9Fs)a0^qvst,;t9||ɱž=Qa ڬ k4?v'۩5"Ɉ~}1􅶌1 E_BQ<"}cɖ X+ͯnD4LI pdz%y諓o{xbeV5zb66-mچ^Q󤛄NW w:LԔ=6ۨϨp) WNvlSD g'%'[.˯>y kFĠ%lN`zyAY',pF94b,s>N]%Y{ѩ Z@wI.ɚ{ #X~/Ae5b1%dZ*zv9YٵU/רب_5֒xEbG^gP.Iz%j+3ƌ}M㪤2LĤ򚻦boKhivUӦ!$J(Fu~֤bY,!︾ h !UxxB+V0yBR .p@%t3|qHG|ͫ՟M]W Od٤-&\m8`HiƁC s&v~]FMvJ≾64;L4 hjՒ We Mi쁗zcs\6Z| Lm))1p:k3M6Ec@ C$ft#rZl KQ&ҭa,P]醺. ^t{ َ͇~ڈYR$U 36%9HҠKeŸH11$U{9),.޾nZ_*tPl@U9/ʁ"}VMIġ +!/{C{$^[I ұ͏ޟu1X4CCkaWҶTё¾kߺ9?ZK΁k(35y O=@1Fw]^`dQ(@L)#<;Oqc6+*5}樛H]K\1]/{pHKUp=$$@6~ _:5[jYy\?ƾh#aW_C 'U}+d/};)&ݟw&97~6ğ >-aӹG 狍 yۭ38X{qK&NW>tkY?mO*-9t*3IpöC)c@9\l=7=2)E}᛼0gc&/0iR/I޹KXWz8w4ShE)ά'5G!mτі%ه#WhR0DpE{cX5殞 #mW-LΰmLx_)%nPN[e}X(bʎ߈"،t */>(dvZQ5 eH@̉ :Qux隅K=rrN jTJ[7X>n>4]:oNSdk'q՗( goI!Nl&|$͊Y`oUf1ĊzjqFXmٞ}0qWE"3OU{lpn&?$uH&4чkD-Xb~ %o%t`';a$+۰.ЊlNU6HIN90:+D*gH"-oY69_2ꕑbl8Mː#= A˻Ő3yM#kMΰp@nxz[tcSFAD1$$p̶d!(z-!cXiZy5LC.a: Qqu|~Gc_8UˑN\'|n<=5Φd?Nez.N.Hl_~Xr[p Nҕԗf 0N \SVyn#[aoJƑ}Cp4bTF=`Q5 &VrTxefFtif0[ mTkQj5` =H CĦ de)+NYg'C86xR.,t]lR*<U;(>-\{r la=2ƥd(+:t1|XhFJGk84 `GgBvGXnsq!"hSVvy lMr<4fq{@;`cYKx 1/&Dг.'4SOGŕ޴HhTnW~\Kb?;̎+ .ژq451fS"R-l`PI~}䉮u?عY[yf9 F _pw;9@oWRК4j?bpt@FMOo3L4wgly.T1K 8z:ϝ N%5fS 5L.5Q[Ɵ(Gb >FƼѺH?~XeҢ@^+~M sIf9`Z'Z- {$$7ku3ysMqtDE ~cjNP.t_x5j! J.ˋ,iҐq\D(9x>.4[$DMNsʭhIlX+X^P qp1 Ț^bbV7e:>E!:jmٶȸB @OYܾxiiA[_sn~0F^[~-@oJzŔƇPalEa3sm޴$.r .5SgtXx$\L]@ )$ L< bvCG~ex +P|1nM, ^MR^5_Jzr@S+1HXOjE}2*=>fwNh#ì{8 d1R YLLF@x ү>[O(m=Z~𼎺50tzlcZ3i.L:n"`G0\㣂%}[PdM.@X߰V6?;_!KZ_ͩFg`QuoȖ,-Wxn6vDK+M"0Ǥ퀭[>vpr%C"c$F< u[0ʒMcKBQ,^q޿L".3IDzH {jDE`p&%i&Zަf* 3l#eCxDl%7^\wL9bR0LKu+n Zj-8A3!Ӹ 8ڋl=H AD7u=C^BKRu+ 7:'&Q7rʟD!|4f oD8xԹN4Uq)*B(y3ͥȭT/NŏAjfé\"T 4~cH˯UO_H_iݼ?2cZ1yA~ej.,Tgб4Ԥ\T-l†@,&A$a,OU5Qz"Zw21C5ef-;+qt?M-=UY`hShlnxͽL$jQ˪~5|%eߪ b SHcLj8h )?V\L9V9X&H>=yGwOnSA28ƥjD7 C/IqȺШ" 0@{㘫yN˩pEyM~քjhLk}wcsee$FyF [olgKeeۅ%)/ܳ07;981Toz{1 a[~,!Y'N> Vi7`wq)tvA H,vZKo:{ޜfUSbzł h)|@.$8r+å4NL=w )z]9! 9*\yobxRTIN@aU4 s0[OG\MHAWVO X||#=rAy !:IQ[|6rٽBα|;*(Ӌtʈ<5{A)CsD~K O-psfb$^)wt`RCsJ4z⼭ ų9*}KmƘ>Dg19FzmՂ(@nىC(Y[qSECf~%0 *|?!{)ML./!,[Qh[)wʯXk@cĒ^g䋆D"miMWXL~}geU |v$3)ɧ&t$%4O-KNvϟrQ:Yi};Qi!SIȧ$u?JU< ^fkV1 m{tIقwǮ(2N=UTV<9Z`> s\߱.NI0*R)\h/2+ 4ƞRASDWU܎Ǭi9ݾp1rۣ;)Qo/NUm,!J:b |;3]]0ps$Uw J^Yf& $ upZ[1@OQ|4=Y: c)Ny1D+a`}|V?`@V}sxCT#p7Sh 6)>odKH (H%?wR` e'3v/c8KXR3{+f6#x3@gLKsenXW"F62 !ȣG[KLdf9Z.~4;%f8 :ȇUSCY%)'\w~;=I3Ly'ᎥZPbD`1ku^릉0o% 2T-;_7(5G6Ok GG2I D0dQNB d4 , vj'\ؤ%:Ίx=')e͐W;*@}b;^[C\|I}*{C=`_1f> (Ԩ$ C,Z&q,۱Z#/R\^J%,uYjm1y5ƥV'7 h{{xc^{ z6u<9P4-,3^u#HJqcR(%trR"nH!Ö1;xۼ%4K>o':ר3/tK pHv K[?m"0@"g@ NN<U=7u98s4ۿ4ԖtPtfʞ zKG2,e^Kd{yXP]xc3`SWNTuna-]'CZۦx/ '>C5ywTPmsk‹B~w8*mPZ[\JH?5^Sӊ,{n~8}NG r(;ʱ,PHo>AU٤7rΖrČדP<|\*d$j(J|Mh QVd6~\7hӼ;(2'-,i9h7 a/*9DL{$i"XDz=󅳅[1eɂIx"a^ S8 F6H!5&6B6xwi!.rvrRqe'6lQ6~ɘ>ϋÁLepwVW M|P   l]kkx^ ǝů`ç1ANJiKl3|Z NHkC~M`+@߆ 7 K/T =Ӓ\L#ot |-7*.-̲)D3Ƭj]Tl > .I}y? ]`ոf?)nT2x@Kdz1y.u67ʛΏ:g=( VZ^Lt)i==~ImbRtVH1Z+fkOm1%+JR.˛e~\(8Yc%tGZzRqň,-'#qjgFQ)4>l܏O?A` jJK/n!ql~k[πhVYl Q-G-^Eb3qׁ\j7isvzU!(PΦ՚og-Uy""3j0MxhAW/pz %ƚh?`N%w +0[8kFKwUє~.af YL$gO~3\Xc_c>x[#Lg5ڨy-zB w36 Vhてؔ#nAMFڣhXJ2(5;/Uw:Xp>0RcX!V4n-ú-Sx}2 &DA%Ɛ]8Y}_aa{9_Da\S9ϋY?Ț`4LVmق7[Z$LjmA4!3b,MT?s~^sVl Afqa, s;:w7-g pS~΋}syYSOV(9#=D]C;(Eŀ$\CҚ+[JZ/ʿo (i~Pr=[  `VK-)bZo3 VFQc琈Eb@$Xb M`Hv8{jΆ* -9UQhk hC0gamųʭOp TA/-{f[CmGMZ GXj{GL[X> ofC !OՖm??tvN23A k]f# RNm|晇 R6?8 e>%\'e8#AvwG|K!wk 6mR*p*$t0a9ƴA wN,{ˁ#%rJzh $R5 DME- n {Nϓ47Q=Ԫ:2!PQj5Uⰱ̞8gUiǵ&/ ;!j{O_k{%:TL*W9 5~0{5_wZ]"@] N^ZLb&>Cj\زu[sQYS6bm ϙE^G{ te C]a+[ (l/ࡥоf&.ƀz,ؼ)jʶlpMȴp.dRlgL=qPGUY "0ocmyyTkhɡ磨 "| ;2(]hOK(rݦȒ2:f<IzZ ;jnzh=ه>:'RV(Sw{W' .]+!kܩQG.YM>!"kiyѲ 9Z #JB=m96 |-#` wnRT-HtxLX:>$D{$Q<,)_ F5 uh >W= ?n(\JJ$ښؙsD֠ޙ;wExuk!eXխ}o)' d?4TQ9䮇JtL78Aiי 4;QYY7G-;Y6.w*ٞ#rNz:r[!ನgл5D}>XzOy֙B$93mdHotС)Jr%t14XN6#Y3ĿMUaF=mo%lTDK.N~2X:!ewdKjH&@: ju>(@XYͨ"HY/4:q7G面*_I>\o;)0q^-^~GTM º5(.ǻǸMi;f\bLͼdU |\Sa=01Y1ӼW!W9_L,XU tom-ҵLu$^'#X6[ <c1F&[$mX0P "y4h +($L* Nع| iS,አVA_`Io.%_9Gzx"Yd-ͣ7(XiHLdG[k!`h+ԃ<]̎.<^hbB݀֫Cjko֪ `x; [$Xe0=e#+ TU!xfdH_:MVXrtڥ!٫/5GaEvʥ~!CXiKZe,y Y}VyG?)̛BqO$ZJ.kīˬjpSI[M$zkU H]DWФyQhЕ1C-K4 0 < (ϠIaA!gOkS@K{Dk캵:qN0ٶq[zR>sPh( ljP Y*FT 1heb*/qRLeV@j07^"KDw+ANhCL>cU?嫖|Yy&Z8_{Jjy%p{ZӔϩ9]WHg @OP"U=n;jUHMyNQb 7v-ߣcYS+$jhsj$_E(b'xMe18OgfʫSp( hN/0&]um*PPu%o?(ժ?hnEʨEnVe*{D|\#'BAL68|#`I VE)6Hpf2(X-lOu`cAăW_e{=k@S4`P_GaRSg+H{j~-Xd- x]U4YnX{l20[m+.31;WttEܗ#c:iLaxh 6^b=BɗP\EMS=:M&M4Bv1խACܛ<[Y^f[eѨ`_KdaKfm0SH;H &cufUvtM C0"d+#[Z%nzb) 6>D {aއhm@y*^& ؅%\g _np.3l#qNRz沓wz{?T K%K7-G`(7n먹R,$91=WSH-OTc1gZe~ grX'"b_۟!<6O-9itSq~TVk˯PJ\k{ǥO)TqS&hJ>g *=] Mop͔M~5J[5QhwTpIU6HSF㕩l%@%OT۶M)ؽDAPo' 77Zscg"8$ . XAwc@H^9ճ˚ukI)%'{&SՇ!utY)i'dDr5) цIB^W߁|?֩\aR[UMMWZ^$ - 4?0,fUٺ {KjF,J\}&"?*Pp܎/(Z25ԾVpuBCkX(Mu{^ѷ92QZMINŶ=Z<5OHeC;3kަ@o[pFӮ;!JW:9,iӁ2ů\f i•~Ra Z9/s'*+HR/EM{S{X(!9-s\qp9ԥ\W2yߏ{.aX8S;1-Lv^Tk|ϑ4}d7@IgH^E0fAԺ% p:B{*M +_@8,bޔQj.{T15﫼hQc_{Ae72e8SDwA) UpSoJpa@4>DCW,\zLLEHP=3 }vt!^~R}$dujSPBzHOѠ`|&`՗W2z9#*WwLU :+ ?[ʧE|@QtcJO?gFښ^0[_Ig]&sT@<"C4K^%;i*H3V֠]JLz' {<ğ&A5Le:OPdרI bu-g4~ u&mGE`2'sӽ/Y&>lK%Lb]06)ffE -A9*HLr&陏ǤA~"˒:vIIR#ƏM;#ZM?'L\ο.c`a [j~EkqxvIO,=΃,*뱧UD(#{l$X92'^1\y<*Æ ?<(WvvrNbc}1f ]gǚ'W:yKI-&^ڣyح h~ܩF7C,O-.?7%$[{(YOiz pƚ{ zhnKPJ3놫C Lcd;\^K3Z2˟X![>AHc_g'z m?jܨ#}vM x|nrKtj|+'HOIww$cC!3 e}W*.nX}ccvIXqu32[,xqD8ϙ̶w|v>ӆWUIkB@SuJkrOO@ٖJHSQ[P 璩}O&鞷Mhy{IIIt@ G8ȅ <"Eha<4p=-5\~ludlީga|b# .\Րv3m%pOfNVh~v>@qP+푋}>wݮ;i0ӰӦW౷ъS:5ϒ'xl2^Ţ+d;LȜ4 RO+e]@VDy/tr!rG@)w蘶k2Q֟֟\mɥtKc^%?!vhhȕotAM}ɽQ+ħ,fx*'q22A"= ' sQi¹CN`k8ƕ% tkZJu䆕|dv7j.jY^bQc*U]lyoc|@U~_ ,]ZdV(ش:v/3^U]T_/}VX(s'ї!74?I /mQ*n(׬qƴx͆-²F} a3KXh x %燂F4X\] eİIH׷p(/jvseL4daჇb cSʎo^F`NoxcX%%ݞ7jazƭ@a W c%jtn"JqǬ?L~.~TV0v X夦p8/z.&*!Di^-nzx5HL$ 'n-`7wmwea<]l!8L{zȔYid(Fn)<2KMe/GЭ^f"Ȃ6䮔k7z jq ۶?o-k*p%?KZaϢ.a\cbCZuF1+S{1S$#Vn `1\TͶY~nݷBTtJ+Ԥq:&1(`EQ3my*7#+g[+p)Ϫt'ug*U`>\p-+V'Y-1=*nk!FI35Qm @hZ}/1޶*wJ_m4xdۇ|^)쐶J!I`z>g&{m24sSK{l랥`%Y\REXҹa -T0h;DYkcVr cMZ;< !ׇ#|ȼbfvkvIl^w5U2עY^fZ럺)&iQ;k5t:4y;T͟26yi4 NO_U@~DU/^ Wf9}Hq%E便*Q0 MБהTޙNE.nn-+"$O#9Ǿ1luz`$bg=^1ӿ#c,8LjQ2QO\e`<$g6PB~"t*sZzr^oS2Fh!󒋛'`>Wϙ I圧@'ǵNr"@g0<`f~&>0M~BeScLTd :MÒ3ɾ8ÿHݲSm1hC!pYK]ۮB أK>/˧g]&y*3|b⠱YiחМf1r`@wbƕgKM 0nimZfɮ^뚠 w>6wjVYNȱe\B$ٻ򭑏?1'dY%GbU#nAxJozׄ%*QwubQaϋ *: x9\T\!Eɤ7$+TW䥚uȉqCQ)aAW!H-gWuYY0td^.u>/ཊ]I8++ZRAv&o*\6kQ\\rᕁRaGǨUMNnY_~)R ( <.ձn.c0G{/&ZH -ؘ;.tְUg`J.&@2Y25EiQl@2Ԡ u888 ̵N1Ò8K@dd-Q=e+sV@ˋLv۸ %$k0S#a L֟-wZ?QlKֹĺ,Ń%W|5`#ߒ LkBF왣X>UF7U}6\<}oͲ^<hڨ[Q.s: Y ~Ǐ~KPuz93Ӗ<o ,APӮ̍8mHш~m)3Xvely f|Nn»f9aH*YGo͊}{c)[^mK%mWqUFn>'x=>=efpW%zoI.477u{b^3> S;tL$jT\嶒[ yޮ.tUj;%+p\ld; n$,D_Ӑꤤvc>",8@6ˌOЉ/֗7'KT!Bd`V4^vD$tMbE2~πqosP\Ă;srQ`툉ƎSD4sߑ^o8~=MR7't,Cz(ɉeA0(nd:zdR=*US+{(Pr&nj2Kb߀Xb# p4=|r/fHw=N)Ńc Q_R({q.al@0SaZQ:)R`~>40˄h\Md#MjG]Dɕ0+pX-| }zt{锏/` iB̲ԓe ~ 9RoMN6>@hS(<}s 7n0,#l"Iw6Mt;d5h.1~ً6UhGr'!=F#Ȍh:D {/3А =jn&S?Y Cq)݊C!L 9&t6>m 1ۨdtaV8ض:r3<ϞE&W3+Rl#r9lb\ M1u{Ex. M=r0\؅yB::A@9)<64.T yjKGj@i}q*pʦ%Tv13Y o|YR][>[yC1/%-o7B DrݹM:Ӹ u'*.6ዾ,$}7-pTY#bf s,s3ϰu1g[@M܃&v 8|k2hRla].rB6QjęΘ4ݓҏW6C/؛/9szF$?.RRh . 4Dl,B=; v4 qXƓn܃ ].:dB֐3+/ #'gcg Oldv|x@ƆWPiC.hJɳ`K^HcqZёVx*7<ejӿuꁘn`2Ģ|=־I|wxRAlA7 24Jir!@/I["4R^7>|CjmQ&4pbkDH)xF@]+` 6t@T^Zί4&C^*OʁFOsϚ"sx` cN؆3MnöV+N~L`0u}O59ƙU;qbpKjv+m9ΡIkImkNG9󿯎RA6>i})r+:cbHoAO,ܓ-YT@CGyFf5,!#޻?Y@%PҒ6mux#$PI@ iQ^ܽb7i_}]#gβF3MPq^nyW#>ք%7p ?oA|s8G"r^S:BVT74eNŰ?ѢLeNN[m8o&s"ۘ]c/Fm BLtaPj`Ć<׵ WW<46X~mgsa+!7x\9rZ ܰKؐ2 ҒD^7!* p ~鯻*ljWBk22 +Fi&.$u _LCr ݰlTBܝvڭ U`˹Qnxp<[Бڂ.03>pZjv}Y^k@g)D8e `5<[:v{ Hȗ~ 44Z_/ Yfd}INwAٯ1QgN't5-ޮ|B1ljz|)d#5dM{9*=(l0_s4 )<]Ot_ (  r:zd\#$*e$xҲWAi0({Or+7+r1kRˎ| R*JqO$%qYT Bg{gU~5=?m{d՞ֱ5u<~4ԙj~2@DhrljSUc@^A,1--1K%[=MrE\4uc!6t˿AB=bl>)+&,PZϱ2k7ENjǀ]Wޓ"9(h'x[qvl!)Q`ZF+)?OQ<w2Co0 mnjޞJ.$Haȼ}nYyJ!B ,f{.lZܬy貤>-L_lCIơJp凂U20'DΔBonHv:,tɬ&1:DTs|Dy9jAj`:+I`{RA6` ^Ӯ:jFđ8}vwF* ൱ (I}l9 O[B@@ xJ'wn.h_uc)ɋUfKiT; ]>FnNIq7>Ik'}N_bw;E5]04$VɌ|aO?I}2TR.Yu#]SmtܧUkg^A&)#p2;$ٮ>X8* U'ON 4X!'۝1ꀨ(Yq#1T} V qsK84zmnBtzUzQi,?0sԽ}n f!K{jN'?:`eX'>u 8z(5aVLMP17~/HDh 9]YaUyl~6;s+n>fO3bOgsep|YߚO/Ltq"ƈMJV{ħ JF x N.9(i?6dq>m1ijS+!/0QD@h e;Tm ڐ䗩|_mR_v{kG5~is%9'DOPxS]hnO|$\V!x*t<Ϛ<- FfZq`'E㤽/Rt=뫠}3]ÒT/CbtI7wGB&<,K<`n{'֚spZAHrշ.OcO!GI}b̺p_c{27]Oo!PP0m> +bJOߚhsYRej/e6 5] u&SRi߉y$ueSqu[mgHE'_!D :CoRgT/CQR=uhak_Wbw+;׉v;㏊F"i%utC֏ic4L&`KtЁ, 1l)vNp!3K4ԟiˬ.*x%wH/mzW_Zgܩ`$ڇͽ5Cle"ޅ?_(z6/Qg =t#|R=FU̪LZp1N 3;ָ.U&Ü?+@oen^H;vyc.k5 QّܴSk%/m:Yl:Zxz>1 901WTP~rvs/-+7-7KR;g8%Y 4GMJT=GQpG#ح=a=2#t }STBk쓕TF8zstM\VPoGrٱ* 3}ESqwz&oGwLk]XtMb}x@ףnMT ]w6RFxx7e1\ݥ= OwrєXkv!ѹaڬbok  7E?GT-&_/JG />90مuX͹Tԍ=2yTGڤ_ʢόo $#{SP"P4UnwGRkCەM0ڥ)BOZ@"5d骕muYVӎEQ#,ܚ=!ZEURfoz6fWD(-b1`\37Im/x7ޠj;= ΅{o]W+bvR[kدHسV$@-aBH| 31*mACZB`s"e?m3u>o0t^+4!ٻVZ֯|v;+pESv&Ƕ=P< YĖcvr2ăٖbGMQΘ1k 8y@ϛ){1eO]df?jpίHM1- wI㝼Ph$׹ݺ|;wT^.u?{jYu`a"BvʎaW4tt_;ȣ-KidKM֒shc%A~Rٮԩ9RZ/_2F:lKwPwHECyE;."-6 &s<;v@gV4J2>X$ B ܮnǬQnۧ_Uv\=K$ud;̢CyQ@ =fJ29R|9lq5Ͼ}ᕆKm"? ^ʵh뒬W(t(\dl: IƦKŢ%@/ՎUQWio I3?6%4$eG̴HMn\'\6y8QC]Ph[3 "z]t*nvжQC ymVdSdVB_8'E0cB\qެf>Wv٨[utz6~Yإw4,-+yB3МD)]nXB1ӓ~8)n;'b%Q8;FQhRW^`U9Q{ Yq@Pv#HW|d:K@ 7|nةoVjËW As(eD7^{XVx['$L N@hgvXYX4WL)_jlu r#T4v82mVښgؚ?ǖx"W9o험xٕ/T Ԩ'ʰ`7'>1Od|lD#0elqX:qÀ>[<[ ̈́.#߶_gFmjQjv̝:Ɏq5#kĔ,[:AUZk` (U஀Ųd6|O*RW*z-Wwẵ[p~˿p0_G`W6Me OV1DlRSI KBB 'f^'|>#>|+|]iY wow/9껆1mĮdL61-bւIJJBm(>$!xEO.$YLd\/67֚D=iUr6Ԩ^]{6GH`cPau|^jYM] )\1_cQb[DØK#d)U4t]GR4F`D c:Jitn-,M wNjC@/Ib7"pc'W#-'۱ؤl<=Z^PvT "4˨ZW&Aǧ@|Uk`Юcw|f E'YxuPJmE\)PWlGG_lSm!#I$GBvl\En:-36(S\!8F{άΜj^xsEE4R<0kcB%V?2F=y}Q慂zD1Td-_m6ot]۰gp@"))$k_Y+M*o,T% v ĸ F+3GW=jWPYjwB"Ic&HVMS}B\ 4, `t|U'5 YF bλˤzSz0h5>]L&`F cbu^1?Swt"{aR~ǶAD*Q|dQ.X D}32<+: ܅']\`tVrlÇTd P\Jĥֽ=Ji1ǹhb ^g k7'+q[Ku,iOy`/In߸zK7Z6N ZF͜QXz]?~y˄ eIT*_# ۰)xZ ܂,bɺm}(/%^ujDd<`cH+uv%^$O-9lP,K-4PEʛ(,Y>)Π]U6M| {ҰJA#G.x*RM_ʌvWlq-}>|~t+qo`_z$H×W/4"6/qZ1\+vN8g8"PpA VEPmj0r- ['TL8p?*13O47U&ʹg0Yw5K2mDwhR5(e8}? NJ5N[ygk|[\ qs_o@pgZuΉ"T& 3|SqT1Ӓn֔L16MNJfKsyy*h1} X(psS32.SNŻG5d /Gnf$KOqj_h :)o:q90OCI|X-Q.]0ɥB9) >'R CLk_5 ;,ھ_+2;BlGc#3n#6-)s 쓠$.ˬ!G| 0(a&l|v~`[IKƢez|BI19Jmaf--3a}l(/> :4(DSrC;F5x\GKos_8|N7lj߮V+$4ܿS1=j:#b~}s>yLdZ.ҫiL 2g7pLbNTŌ V@(yѕ6Ea-:i}֠:f-)bO ,3y*Ӧ4M."QjWMO'4܎9Tdn5&_IH $5uy_Ƕ44fY8#w"Q{t9N Nϯ2'|C 2g蜈C܅l͟?; `&H혂(9 W A!m%~ b*GE&pyooXB3 XÚ,aM&6Y;* d>T3% Sfi-AYkn/eR3Ahm0Hx=ڠI4lDFfm6^QE[iܦmW`œ?SK91EMey'q:hWjPP?kLZ   ϫmX=fmT|X3~S >Y?xr0f !1ge`4y8=ũ I>3Zbb/?C ֲK'2)Hv>[<!xQ_&)o 0,=͖96{$,`BAA6lz( ";FyYm+semN4- S S u*)X \p[tBO(?l<5|;SEP3e(h8t%MZ6(1ݞc+RG#ɣEJWPQ0oMD_?G>Aӎ>3r]1VCC!D2#A f,A@@eUNpF`ӰmM)RuP.J(PmE{t5ӓ:8M w/\pgvYB7$(Y ][QID@Bm#kz*Mýx3<0=<$ yY7FV̔8%3eH Wݒ24[R0{kʑ}6]E>pAX"J+o-9 Jꕃ!Ek6RTFER)W~h.jx{5 S3Jc2J%T a7Ate1%xQ\a JnكF|pbmWsf_/]~:d OLTV'hG|MUtjPd7QTw{ёY!+:n wCe4 $Xcn>&3z‘givρt9:~)KMM.VwǨnq8wNiLyt2#?@ЃtmPRE* Y8ߒzV?;B%"Iq7oab䈝ڌ͵"S9 /qEb[9/+WmR&Xm-@5 y*sE"h- ޣt^ Z+`֫q jǻUD?->9 U|^h{";.X:=\& \ko=? 5^5:~*ٍZPWB+?(9Qd[lɹz)2IIMۛKسq$5䗉8LrQ' ӟ֏E|Qs2{<#Rz67nz 8wߘ^uyU.c%G' qSƑAFTޖk߷8LpW2`@L;G~qwj_Kg&}8@9´0NeÚ~_A{Z&jLb֡~BdM3uLFϞ%$։,Aa*MX۔+T #rmW=]@ƚnU`"  \m E 'i&=}0D+4QcWv?Y[sa9JAp9pBt{hbvrzQ9Ii; 8q'f2''=\{œdt<Rbepﱸ>-7O- @=Rk ]>d^nW)L²^gT_i <ct"v. g𡸓35ᣤJiv['"9l M< q)Uiͮqi CegEf}"jo:*21z٧ wI7$9`=|Mjs4RW%i?MՊж(C}>AuV&_eAAj@-qTFq,/[e1(0*>j [{'0N圆DhX##OB.pߊf/!N,<>GJU' S.U!d =`hSSRwZ9peOQס[=F1N槌#zxS 29zJ(즉3 ޼hu$R[@.d9@z*J gξ:m&wә`ځPӑF7@_-l/!},ryWGLL1-9G<@0נ3|=IždIo*Yϔxv>Lm*kLŢy? `㪇(^%Rm'm5{4?u@EZ3/ֹIf<A>(FU w;uP)&dT-#OOGkR"KUiS/s4.0DUEdm/A?Tݢn4lJu1r- PERu<)2$»&X0Bc#B :_dBT2fBaHH9si 4?Yt T[_BW^:+?e{{H/P2d ﴵtIJ'o!Ń.ژ։@u Lf*@@DGᒛO1fO !N_ L35o|4;S6Gtpr=c}S?PΦkP$7ԣlKAXSfM8,>5ecEchaPl(=q[J]K8se8@jH ǵfpuI6IQK @T4[u3RsPW#eF9QLsNS6=r?%'ղ]ge$m&}OL&>Diѵr5f21*p_j0an*`̈X&nΐA,F#ed CBn60 e /\mheQj {?h̻8hw`0[KKrsp23S\_ns5;TOOz ?uY+gltǭjyWW8:~ ecbY$0¤\-n:= n$ޑgig5 P`rGݜ4չ+bBRZ筚>P}NRS"R;T׋Z@,zUZO8Ǘ7Gx,-Kn~HEFԚuzÅqQ8ȋMoZu;W, 0; g(  zI#gԈ}Jf_BuÄbƘ|q3@z狦do ^S&q@U#½Ӑ)F^L_hBܙ}(Mxs0=23cģ# 7RWke44_gT0}<{ "[vKd`{*EwadRĨ S6;SpAuؑɢwg/%_˧rSd !~e8Sjb(O}KP}6z= byBK]_gQJ`IȨ ;S$DU\;dSG\;Q]d6#,5 ~Syi+4BU1-s]v\U| e) v)ʄ:% 'E%XN2=si]xJg!&%5[JOZ$v˵x_#7 pxpa*ҟ3(h]EZPYwsw0$̋줈sN xduw=Ҏ 6 Ew{& a%r—e|j8;cĵOQ~/;=Mv9>':)|ut+42.Ig ClDې6%lH̹l{o?;d/db|A1 ܙl:QvdZ&!MFujM'93a$̌pӾJg Y,(ܰ.8 N0t-yp'#ӎS9tXF$#wCRgv!'fW-ze 鶽]Rc-˞gV>C`p.<9C7 .ִj|V-}~z. $+| CcTͻBWrp3k^[1z;&/K2k)6`:YdFkzGc6c1> Kt8r)Bt#No%_WWo8'M.c[2zqua)\>@<ؚg~|[ʙ_<Yba#)_#L,1I%E7#Za% UYlRaoCo濂ݰyY0ˉ?ju^˖>RLRa3:4R@ͱW /iQ[cp[αΚE&MWeҒ,'ntwB^~ƧQjN9!3T|H})7"U'8Sj<vj)̰Fw( 74wdC.r:s`oN+gtvN3cZW3E<>z6q , ? H N_A[b" ^6?<'Y=>(? %ڇuz4+dk>{PCuӘ` .VXJdٽ Fq]Ggi.O4YC.0Ǝku1 :RT&6ξ徰LDs޻ JF]xmExo (CyhV䠚]E,bݙ=K9܌p.\%3wT5=`.}3 hPj6>n(ж[JKP.Ӷd3 &l[exIPS|D_LQ zgF%4_!CDIWL[: [t.FqYbtŖMa(\tb/tHQvNT*Hkxv%]`j_1 pg]SW(*W8,~kH@ݱR`&guH+4]m.I$;+>f]("}֫'d]LB֬f<6V)fK3f&n_11@SF3|CF}@)E>tmqӌv}j?vRz{ .L&kZԗ=;C&.L88~32CEcABv}2YwT9¦MK`mc̣!rNc W1Qx<7X'u3ҭRy^FwLL]i ksF+TFq$AA%cȠBq94s}4n-V]>2ͧoNz\k(Z໚rL=1LXK'rb;;[Q궮u7*CnKz L)]<(׈X;("y|ζ{?ɤi:l" uH*Mޓ#,)c&Ā|:oXE")p@1Ed8jbi!׺ nXXGMF*珒Q&շA@ӻJD ee6{#/V@k-ZAIBtJiWq",& =zBAb߹*sإHVw9-6ciC:}ʆ\95;OnXLfyU ~B'#acGAlYdzbs}rʩ"f]u(گ>Ky,^Xljb'D43TҮܩo)PvM[d̹7BB͗GAg7vpF˶V88BـFҷ}TGN6ҦijdjH4M䐗 #\BeׯgϔMI06}NSlV<B-avV0&Rì?<yz%ܹF竻j'o,`XKϕ>:wקq:K4zRy 7)3el7xK\91rܾRu,[Kyّv!Oz{vDDT q[B@Z/>;z͝b Z</i<6,qNPX0yb "}z'q){.CҖ>wR+bۼA9-*Ncm> (J5ʐ:u|!< ݧɿD<`ϧ.=NTf^[k&܄#imFUR'46fyUM<!0 r6`MLAKD!%_U'ERHC,eusV?Jz-,z Lc-KKKwmL砕ϙǐuM'L@xYFd ]pwЄ -$NqŔea D0H7Pf#<PVDnn5$z*@NU2Nݱl/.Ƴכ Uٱ,d-'chbϟw] _!-;`>\q828'd8k9.ɼK /9g veipÛS%v~9-5RnCh9]6P1̌ 1۾%JrFMtNN5?\I.m9(X= c_\?Q+;35\nKPbncD.(k iԩ(y$hQ.P<Q.@ۭ\,.єwiA.>!Қ& 1@@;!RegkyuY&_ݗ^~oU;d2󷶹qm 6Ǝ!༗BJ}X*1jHJcB&eZDW'ThVW/B٥jvks}8Dhq 5#mNhq߆-BKt5h`q=CddzvD! .eםJNHk/½4i5͂$=;e/0SP65>)6vSحd;C|}X+zlfU|ɲ[7~~ - AIĐ#OrBؘ6+>Rp9I<)B nSxS79千oo9,dԪ|W9sZc, բ3H0N9Wdȕ `& DxfFG+0lx^Q`"{g5]df1:!)N&_3g䳼M=rT{ss WKvڟ:v?Hzb6@Ie c*(O̪}@!˧`SKz#=f[P{+NW3C@GY_(V'lw&tkh_m̔3m}䬭mkE$W:~or=f%\4–T`ӶNϣIMnZԦ>c -,cZbRg=-䤱v`> ܧ(P~U9YwNEL&&aA [ ;aݱ=ь+I:gA 9d_r7:#;-ɓCѝrRC^s_͋se["߽3CqN,g4^/-G}5nj\^p7-9,ccݧhD}\ɧ`^ݶYӹh>GafҊ' -p (CA@>'Ҕm51SC F|uUT׼8mR]6}>Քsq՘4V|X8r)Y@TdzI)e,^m1 ^Ъbnz\ ;8` ̲NZIk#ϭ2HJ짋>(o=-Oɼ qenZ4/ Fcn%;@xdlW MX e`$tgs^Du$ɜ{'n@Pm>` pe^pm;?g D`'' FʨtbǦ}'T WG!!JGt]&iAB1FiJuU(8`fqdbDZ޵C>!eaZ|$R/R,ﺠho0ˤ8I]Z;-6:ġMT>i%w:z_BD'ԡ۳wiyM>B0ճtQj֛-EMI&˨3[lB{z )ԏ:|+jYeUg~K"@ qk'wF@jh;x.OcM_*9PA@~vM $Nu^Ba+:pdR0pDw&_ܜ^Jو:s3pXH; ֆE3Fgbʕ؊ /bG!,%JBp /7XYEw* # F-?e`?vg4?ˋpr MrQwO!t(7UšPK7e:]P[ 6R-Y^d:Ͼ-8b7z1Nqwr)Rɽ?"NePbS ckmjHc2[ʯuʦAPfed'mWe2 mDpQ>xCRj*t2ᏠNP$M YQJ֛88*sύKxtB9>I`0G:H9^)qlUXk4^ZZ~S :8!1kGL$vUxy|ܲ֋ ,ńύ&ٽ!H&8[Ow;$a$ͅp ꉠ F7g+R}0PQ/*wo3P\0ztSw,̛CxӿCTabCIIݫ>֯|5HK۽4fRIҐC9ڷVwZ:uډ*U"IFݳy?Sn~$F @zVo~wlg; y%b']=S!6ٺ2qf^O@hk,3#k*J"9%Ti7 脲ɃQɎ bOt#Lk$̓< IQbH U&-bNvݦt#=KFMVSd#@)Żj jleR-S*nc4ciݤTz {gK*hBƇo Y*(aǽr3>)xH&m.Im^C1cJf9S}݄OH70#2C,,42i<|| hᱣhaVuª52q=;L46Jxo(y21(E˥S `9RlY}iL'l?^P Dפ&ГppSrU?[oYcR;٧gXۮ+ )Ж}?ap Y7)mi1VbrjH1oˋrĤq'+,fJNwI*""q]bUt^ԕaц5l) \Pȃg5vzBΜ})1H] `֒̾둤nv!Q.]=*r~ԳxO]=aO.q%eFǯ i*I͒(!I}_vup1R(?)K`"1c@.rNB~гL(S1[E zrO@Jn*l^'P_m|ma85u Q\/1l1!g;9)οUTDdaґ ~(ȑUFgE@ u+c7f+JoJΗ*Mh^q}$YA-;s^[E嶻xLyq[8 #zri{m{S&"WUBiF;*错 ߇jF DR G=Vdz=TY-nehr`vpX % rcgLQcO^ BעS*Ÿ3)uesVɲ~p Jֹ@}J;;E8W;}̡Œt٣V =y v-əBlpzF>"2Ey̪M ,JiJo ja:$dlRc#M/ڌT{|]|i1KZ)͓[P0ːѦgoLR3qMb:]XރVݣir"^m wfoV&Gʵ*>lÌ-zM~}l=-UE~ZϞWu.96\d%YmnVɣKok#$i,lLBӹYd #8)}̄,Aղ֊?$Jy/F԰ }$)V'x4:_ZOh{TPӰtȮ>+`t!AP-ΩM͛`jw9H&ysg/(*.TƻV(xfLe6E:r=cUy mi~ۡ"TZlf@&' B{@t̮r@=4DWMFhXF.S v \ɵ&" EcJJBi sV҉1M  XK܄4+^VD2\Ӱ lp ~,iO3}W)"Dh!mqH/d?%=`3j4Ƈgpрюݹ7`9՛.ب7opݜ]F׉f_lښ|#,YWН׻!Ԉem)R Ij3~X|oZ)U{8hȦۮq&Ηɢ ϒ$#ܺs;Qȫu{/.f9DpM(=CE IYW?bk0&g`SeնL ?V4Ui3.g&H󠺢#Hudh*G hgjbѬz*PP!_Y % i8~*d5aUW_ ~s!`]j6 돢;"myg ZN@^ 4L3 1¿[#%qXs:owbKi2Iٮؼ@hJ,0 O\Βm޸ E^]j]r0iD#bH@)A} vV#V@,=zb`~jˣ˵b80x<ixQv_}oW/u8w^[[17fiA\ Uҙ釹w4Zbcs NB}$J@-N(aBOiri=F0'q'kȖ+襧/9ۛNwW[衻X&{^"yܐj1.)t> !RַA>7+>ի>̓#$wo14t X,TKY^v1M{dseHT fy$̃)%-G;d#rEL$9ZyxwF ,93;7y b5mV{ۦ2e&hT>8QiLk˰[Do{4R~>ڥ|zLQJO^7IFZԃЋʽFK@Fą ǵX"CHkCD%5hsO3 ^Ʀ|~2L7g0%x+|)$r\@w$w$eޣfS}˯1|>JP_Jiqk izI:V97|]70 k8"H $!x#õSlj@tg.V aRA*VFIty.褯[!E5_t F<B=3?_6hɍ? 9[m1uS yA0n74Dkl$rI\@ бSLpN.1deϰ#&<0:9me-y]#<|+ xya`8<\ƺv{ Ln.҉"rzO|k:$gc.3bDGwzQGrW4P۹"Lk#CѪNJ›xH&%vݴ55:#V` sxV*CqPAciR<<k$PV ?s\R,x B7eZҀyz%P7~NЌ9x#FF/C$3&`IVbE8r2%B"z `xep\:$_q2SnscU2?Cg av ꐦ20#cZ*;+ %&FPcD>I.uA ᔾ _,Чtz Ƈ"J\p>3pդ8gz=c]e-IyPiMFQqsU@'1cL\(zW%88mcʙzW S69U{Χ=ЅmD1VbVc鐒utItj")TS*>p=,ty:ُSs7F wPh~ ϐ9{su&ġhRgVI]W0xc@WNn.eTRm+,m4D1a@Fn|a$I}N oZpåYӜ) CIExp%b_qZĶգ]@oHiRs|#Dx 0oݍ **rB_3#D v .,Ϙk -a8w/Wf>)1ԯf-@Ey!^V!RIVb;ItrVf-"҇n"o,ڒ\.7JKEފ"y=5/ΓmK9U9q<85 Lx {SȀ@" [푖37ӧ!!tYCSa] gj08T3CRzk'BԔXNnƺ`5:rAnbBb&mQTR D=x~uMp*o#4Wڱzs1tipߛb$q~Q /ql'=/+f8Ι}]2 o`2)7i&G|! G.RXFu*n KXN\X'~"UhӿWb%j)_2N8#\jyzKY4A~T'k8c[W=!LF-KaJ}\ x^K;JZ)L"@;ˏ|YUT3-6@jtrAqs.Yqn@ F0i9yswP)t[щ2nTT?LU1<"1mQFQٞ@C)LTYƉ5?հqBL]Qije1H۹Slm! =ĺFrowzob?]ݐ4v_2LvڅKBZ|2aTo u>QbXE`>]}j$&Y]VePfrZj'Q'.$îҟ4WpYfk8i CtGk qR?Nw( CDP ̉UiOܗ.Q) hҦ]hT]j "qGud׶A"2آ<3&/N11o}7Epюd;iYwQEig=<ԉR9kR~!bp<[DRͯ .ꆷͳFu@ы y=/p`o_9zTcޯ7H% L4G3q=;풸KP`lo]AlH0'ýD*SN5ɇ̘%i%Ż:sqv˺2j}<N*]GъAB,[ҫ58"Q:ls3>#0?j|e&.#ޙnʛ.jL8G=9 AHR]=B1w@m)xPZ ǃcZܛJ7$V|ea[Yfdfn!w%+@iNNRVr-|j?#K-I\"`;gC)  Db.XGGwVqXLO9=W_ΓGA_;Qc/s4jD-+^G n EaƘMIcܤ+:a:H~5ީt`馞i~W8rx[spwJ7 {s 6 pZWVX]#Jl*GX5pCr%d<y~>A:kمnWn[M-&ALnqi\άk3K#ΗÒiH$;:16jVɛ4sy-SBO'u8-T1%ί"PE{Hp#cSbQd6()>Q{u?PE6`4F:E-tq4~L?:G3{Cf2#rfHVqaG7n0@C{X@bYa $lCSQc6k!;V6bT,L5-w۬r.RBxijCն~nD2t:q`{nU>$hR,fQ`J} [+' -^i;]f[̭Y 5{'$y<M> 8˶AۓWŇ+L{ٺH KׅŐl Y`se3c P1 bԯc˚ /u. 6w1mqI ܋/&g efKZf41SLrXR,ǑAMeuaiUS BfZ/ PF~=kEvrQt0GH]4hO@%no`yibpNߏ Xw")YXW=br}a c%j#9=G`:m5[mgKN&/WVz7 RqCPú,6hCP Xb-JANx; _&[׷t.kl2Vْ ,ơsy٘ LV>_ )|~Iu&KJ 8kP 7tzr`5VdfzqUS7xZpxauHyM` o-ঃ.@E! #\kj")l_9{ `$R3&@Iwπ3'Ƭ,:O:G5ӲAW,L%X=PScmnQD/>3z.׎nӓ1OE. MC9oIO w#M,:(gE"b}agTMF,qw==! =<9G95˸*>B@/[x/)[a$kN $y򃻌o_.>~Af!<1t}zL\b8w>'ĻIQϐ>A&E A p)6s(zbO RĀj'^bZh΃@cI{p֬.RjDlںf5X$N N 1ݮhn !=CLv[Mܪљ;\3{’%hM޼ Eޝ BiI '("OQE|cG~$?z*si8I pe\4ܢ96wEG`7-WnV7!@NJe2v?ƨW yV#v#E(inJ W;Aqo/Qq(ikf7$J@FidA7͢ $2zݝ;/݈{eA Xw@{՚/j݁噄S*݂Y@B Bۧi,-0X+EEh+C!}hbI ŊvnI̓lJQ#YF/ãˈzӘ2AY#M7ti*I5GTO?)%n|dhk:|5|U!ibE8%`4v*[G,[UћJԪz^Z#ag=f{7{0WO@J3L"3 C=2_q5Q1p6WzzƱCav) Kz/Z1˿z\n9JU*6-wH~r> =U4(AE""9f<H5+"9wƭKy3VBV&V.xpNyq.1M@dClMLyO$[lX3o}]ڸAE[`u_ )X<\nhď#[;(C3kA52]N/WS s|JBR@a,|![6-t[8ʰRZfI5!,OS`YntwV R]ߋu×N4hE)HȀҌ)+ ۏRUPc޾]Xh歱3T? coc5pC7=}˶dI.p67_N_GT~])ȋ6%GǤK[ #%Jjh*Ҟ|k߫!*c) 7 Z'~VX-7hy OS0nUgۚG#Q;O|ui1b`;ftDe}a: ^ś?HrtZ keS靲1Bfà]M1&"/s(NPMQ HF ֯1#ZH-/smq>^9A +Q:tkBګb?;ݓr*tL Zl9Q<A!ڒG 'O~îD-ȑԓžXG tc2= <}ڗf+q.frN٪!tMiҦj8XOaa*!myvmK'aA?o PHdl ͻxP6Knh|*|ҟxK H'ʇEQU5R nf\!C@m6,Fw9&Yt] 'T׳[ׅBLV2f?Z^.0Zܜk;_- K/)Fr4Qu8`lP@bjѲ?g|xrD$/6Bi' :){Aq45M #d[2sgbrIH.Z=;(?hqDWAFHfHHöZP6jKdK?aBlF %2_t~kzOEax*-{('\)Zz^S(Ԋ2%Fuk`=5)<'hJHN4>cw)erzΆ*xXmaݷ555JF@jx&XJ|T(\nX)ҵ5uF6^WSXuf܍ףYpI"-\k&Oȼ|pČay-2OrɏIYOqGUsEF<(c #ܼ0|e <\@ |cX.n_>((9aO8mEJZw5C0; XJ]"K73KHodLkr_*%Z{HוEv% k0An>Y絢*Z'МG|ui|"noB"vL+w6Zfk%Rq "YI^8O&$/t&'5Zj1>V| >:45)5YP"m{i[+R+ v(?]Ar]4("NEU0;AsHAsrih"QLr?Vr…|I]ű\dK$ZyvQ[j =t >nچX v!"ߢ_A76$WW=ۨTU,pP%b{fd 7~G6XLX`-kGݵ3Gs`TX΃<>^j0ie8l;ZS}RUC5W%L?-^$6aF&1-z f`QJi* ebw8O2(%Sc[a0i)%$ѓ϶R SѧUh<,ogRM |? sP+t6Xz4nGF,2'gl=q0̪Y,s9W20F:ARH 4;)x`73&Oe(!wTԵ-|1HzIXO~sy =/FZU!*$;.V( *9:~G!W}ճ3L$LL Tn_ HYmp&I-;&mL0'1D" <#_N#c g]\kxdc~=`;̉UuuĎzsVР!b@vp15#E8z@^m`/1e-^P}eg;(|{s o'yWaeck,e0]/F? `FIK~ m<,䡛me9x,Ưw_"T"/"iXT [`;=@iϸK݃+W3!c {1EDSXɽܬhJde s-yS nqW}휌R^;h'_tݥ6ot{Ľ}xM`v']^>=$Tm, 7e1uS.R2sIo`>B ېѬox񂻌-eQ8۲{l禢iOԄ`q6Tm]邙eu8 XGl\-;{q#%ڹҔ^L7y.t$ӛ+0=,4f'Nߣ@mVRbcTݿ$m_޶ }HчfPBm;Qj!ه~y fRfWHV|I`MZgn7]JI[TS6BzS.gʸ:[}$8~npSv;( ᥷/)K/E-KWFdu4teʩM NѨ9FY]|G.RDrgAƓbmG. /!&arH}#6nEG"+wl"7O`=)ϪY>5ZvG ~bgLLR*,BO5TT*\{:O|5#Ir"|N3"f_7x<VBpofM̄E6A=L."Ywsj ,OlnqF}l rw~y2|̷ I *WDRU@E)V%"W[~a(gH;j. Uf1~ۀ01ũfd˥:YT_1Xu|qzQj铦yVSohYW*{7wS-CCEGvIihn7S 螡! g {p|Ht)]WLQ{~?-6f0u74Xǯ]I#7DeA״݌Qtv8x›2m0DTkdŷaA^ ַKG!K/1kcLZU(KIyt߀&N>gzGI֔ZuB\)O) ^N5Oxsi!Wt\9"w+ mWYY31t I50Rv>EK0N9ſ=1ezLEA(QjEdw ¿!ĹڿΊhtO7hUbjk#աk_#kr ^˘񧜷$,@QX2Dv5.bW(Plw%~UwO՘tZz|iCqf2Ee?GssYШdKi *.^^cFO ms}fŨ4e:%Zrf;tv' l<<ʻfI!C7gˣŴDŽՈM+Dok\OUEJ-w)%~0^abNJ.-e)SGSlV _fo ǛfVԑx;^: <ɘi1%q׹N ӏ>/@}-`S X@ OmtA8`q72`f&!$i`/!r ݐ2QLRsbq{ m-k4ԧNʒ,`9џ6@[x0(|h{x+{o ֵ Ȣ gi΋W;dL [|}ajmJY/Vl҉73^RdXcگp?DM ^i tЄ?|ߥݚdK"p !CXd +1mAbg[t-/r~bĵzr.`1uQP$$RpLT$p̥wZ9uMMYF,soŒbСwn&D0w^C퓝_ߧPlyݗp`\EX`&(FgudLV};TнOr W⯛O3r= !KFzjѸ]m3Zti7ٌը|գCIOė˶.)QS Mݚgx흘W,o @- NQ 5~T 5ӆQbNZxmK~/:qt(%@2MW" :sCJsD']^ fCs¡K4_a55luR(kʉ  Zۃv@繮I%eJP;2 6nQ~1'h)D_ 0={"_o㨪x(V&;"^1~9duΰvFi>s9/ACYnt4^̿dЙ%$8{[yN<"14O笷Ak>#TNz(=ZkAꪈa^RШF!OX) ;BuO ՀLߚ3/4ҍe~03GFgnak=ǒ.P \O @ oN"4qs2i8 >Yoв_ĔĦo#UGRf@2c`{#/]N=|%1cDfpq' KNiPlo޼*0;Q B%;zg7!SCT?L=\z=+SM!#A&Ozd5UUa[~Ev6B p)``8Rs:RP"^e`t44q V~A]Sg~?5MPQ=Q,`Ԇlfz?Юp_)`{ $: 6?)vG5ǐ L`m͹z`~0 S 1"JW7iy!`BnfEWq~w*w [O5ޒNdg~4z 2+"YV%92tTL{<%<_r'b> KuKB=Q\+XĤ&^up qqkϏŞ Ħ nX4q*!$aX!*$TH8>7PY Jm |X:ꂾ+L!,k1 ښVL.+@ٍ6H[]>D[2^>/0%E0r pk^Z<" #=)qL,Bk/=|’j FkꈆP=dڅpzNn(ѷʮ$wLu!o~ԄRS\c}2 P76E+XyU(FIflTQg9KK6 WQ'N; mV{ zTαpS.D[RꎀGY`:g7-B3ioəaJ>KLg~~уT01 ݽ~ɕE SϤj촼$gPĬW<{Ԅj1n<)DHx^OЧ~o4ŚDyE\BD|Pa%ԀۭMb˻ $P( 싼ÞVf5R||q2 CC$X&s-Im-*D߲V_% цk=vp}mEC(4+tЮqmDA6ڕ`* ԍu3]丩XB.ӗ+[mϔҠs.  k)QAN!5ew?^dO'u֖CH)Hx{x2:S)նQ'˧7ARaZ22cPMη#y\0K-vΚF;OgŜ蔟s91s Cvv7>&^^( <ߏ*Q1)UeusO_OnmC[M&d"L >+V$xp2rPt=*3w!*Lh$ x{߉<>BQ>l n1b_]'r(x(,)CTTj;DYx{;C~z=X=V#+B4Vvma9 4%_ŗ:Zxp h9YcTp9:%<x%^iGs~h_IyoPMߖꈰZ( k0}ӵ}s,]]Ki+PGұ9Z9gz]72s"~w TLJ3fΩ=F ˚0hF@wgY+ lҺR^L/Hs`yڎP5M7T𵯖( !XW.Mk4 Wv!A%̋fyrG9J"nrA* }Z!1aC?#>sWR֥쾼"UH H&SE _SV+o@1a7,+f]-'D{T{e`slϪ-җ0;]=U2۾f9yUi.W}R ϷxtQ*١6!/XFp~N$ySE&u`J,O& B`t)?:1:dᶐK9:.ˀR_BR3Nd4Z7]$*9]^"'ym!\9XLԛۗ6z  E4!+Ur-tQc5?lڠ8oz &O e jmd(䧗!mnpdkdv>ޞHKѓXCL;A-q E~ gC&"e N*qm`8x! l bnƘ2p 3 \b˿0W4O$Ln J~7KR߳hE+v?JO4Ԙ4w^û^V"eTA7| .DW#Z8\ҵ_qMd"[(GGZjPzy>gar6mtrcrPQh2>7S.'{ +/9K-@3`x#E[/;d47}}G+ L3Qē-Ca_taao)`Lz_(uL46;c\|t:\,Sele8+FP$kɞN[9tfUZW}QH($垃DE[ ɔ,S;Ֆڽ~ܱz[WWND|{<"T]G¤x"!eCftsۖM6mh&o?{U|hv68eX Ղ{T;fXk k"bV`yͶP.FߠUҒ"\&1?i $]]~|+@6S IYl$vdo%PsUdNu—xZ43&5(^ɡ,IhnHQEC :pyi^@ f(חb<u?^ÿmG^ c,l] -z|ǔe`#69{% Ny#жJQ+iT!o4 ]uv^F}Ek,Iވ8@jF9a`pٸl<픯qQZ ߺ4*G?E14 >OU9>3Hc*=}rZXuUE \^.närmB$Wä5ʺ*;F# (NT`=, Uh01%x=F<ˁf:9T!EBI+dnI'ZuIh;Ɍ^L=U=6]`8Ǣȥ'/Hlq?l_}?;\xowE:jV E!?\O'Gp%?ܶ!)"kPכ_b/h6!hl) @n7ŊCY~xNVրpejP$ rt6[ };$PW|k=jxy[tV@ ә(eϭ6ZDކiI"#oSAW̷e` ÝtnL2V1ClKFbGޟ ej+f{L$V++H}(!-Uxq:Uș7raMtP0HOL<țt<ÍLwv]RH(2)ma8K§ۮ _|oHˎٲ]*g%BXN FD:2cU}Ѹ˝!]Ry]/2Q HW޶m"#TUv s/ɊRV)f'x6(ĸcOloi4ƀb:7 Fc$euHf1žq&T!tKj=ZWf[TY>`vgbʑ)$!/w#4<<-;u#?{j| =w>){rV)+mR /䉉ڕ2ɵ~ p"}f2 rc0s)mZJ6 PkŦٕz@xv__!NN&x 釡$DKr+!Z|~` hz1|+<~)HN-lt%!f͗^N J} I[yEcO Ll`\q_h\A^&I`G^O8s`deJ~G9a c:V%|ay:S} 8_FmHfJE __xf`f#Uf&՚ƅa,yV]H>sY(9+tG=uJS %R.F :BVqo&#޲'.KL  X$}ڏgvq 1Ǖ[v5BGa:B¨T$jw X]=,%qg!h O:!+bv{/ea'l8?xkm*/_"ӼElK(o XX/ Y1f9YP:_ɦ Um/Q|_v1OYJ)78eҌO=Ni=U+I",iiwP{ö'S5Uq-P#5~|U!m:E|=P_G!%ٔUUwb;x`' 8Kw=~D@hwSQC9!h0fdpHHË"RK@5WIF>bJGP+-j)bv2(rT&Cҽ!V᤹i _9/}(2dzl^Uػmň[:Xd,8ZwFcP~ܨ8{7e|sǼ9 姼T-%h:('`yx$ ȨM FRcxҖ:`WqX/զͯPHw93kjo!1FzLd e.)~?jvk 9cYv %sz ڂ{͓>jf.%ҫ];`F4`n K%IrUKwzuo)QkWr|o'e+5XT0u[.]^3شNaI,Z 4% zl^;~43X vV%>+ ZH<mXgM~- 7nGP5>SՆ̺]*}uL*5ܶwbR6Q=xH2sBk Z@ ׌˭3Sm0P@ȵhz^AIn*s\Q)m V-xj16FR+%z}x_2t°11l_\LOKaP^L-4iҗGrП!\l4E?S˳F!O  r= e'"0$Dgv^Eѳḳ"ٯc:+px bWB Í9M,)ډMn x$njo%O 'u wh I<'E DƠ7\bbL: 6 _~ ^? 8)X\o:~!@B fc&01'C`jxe#ԄvPh7avoex[ ^5_co6O#8r,f$7%X.襽y@@ɦq!%_u!I&H~>|:AyjNNU17XZ'NVQҹf-@v,;+ۙՍn@g /eBy5~”-%9~Vm~8 bB1@7RYX"P뮸fC̭2r,ki6ϔ-:x׬+=cJ;YI3Oh%'2~z 3(SV(#e)\^쳥1D_)}I_M.83VRh37`5eA=|Ozv@.#Q4_,_|R]XԖyN`!s*Ax}jKD2΢uB?+T0O<ڙpL-?z(u"@MI`r񒠢4 ,I;f.$J>^&dv0lw+]M.zV}-H՘!Ж̽"Gk[Z'0mV" D7ی%%G7ԝ ؉xKΥ ,%Cڧ̋(HM犗$:)y*PQHv xNj i6(2ټlpe>uP*UDPS KV%7"x1עRvp٦?ވJOZc͆8k&pϺM9m#7BDiBDlK'4hQ)EcfK UQ.N7a 2٭؉ ٱ'ܼna@`ڎ@@AdPgL(GJ~ĺXg@y'dȞeNлc X>2_ƭ ZCX<]si`Nd=W0HúL\6Cx_&4)b];I7gP)r`3*Dz 꺮Y_{sui;j"3&v ?XiPIP>o'Jv?ySEZ a:'r'#5QEF:CMPRhRu=ҍ3OBo?ikZy_rJWǔF8L,kw`R ZoY1dLKN^MⴲO g1xBC N|E5T6s˖_mte,0R[, &<t. qAW ^g< Ѐ $ȘW;_ B4mo:Ae_B$Z\N\_nzUU }Az,p~YA0??&3]3MŠ2\\h9zz!M?o)a:YiX?83D9P; ottHt#-oSG&,r}L˜]OLnRGTrYu)&lm8-ټt^Ad NumGZZU Z :8JǶB}‚gU܂?gQ^D޳94g~([GJᒐwR,X$X~l]h Ϧ bEs-]5;!.g=HH p@r[vPJ;A uq4WVPMBQk#cދCg\2L!8ҁ?D7IJgDfn,-z+~Tq7X'W?ݟذ8e5-:Z ۘrZцPXw+@MzߠԵ|!p{ VWċal*MM,q,ʆu૞$\8&:\ {.v wilsg4{D!乔rkrp)Ov$]W,ӬRjCҖcWZ7֎ *h=e]Cc)sfw7ҠC0G)$ 1LݙEH5ϧ515BU6G5E+w8䡉:XD1.9,-L@k I@$b5BBZZPcghf,5j !=Rٷ2R6qHDHe  ~e50~b܌mûfVk"^$:P>_%'ED y-NT1cGŘ;_[ eC$7$5b:3LUi}|tH߭d"2Q0\?܃D^I:<+JgyvfوKbw}z;ԭeNFp_lTq-eIq)Keb,<+ޔO 槞qt _m3 -M^u[.PΞ*k v§!WҶz>e>j8)c&CV;aA z R K ϯB/@ XMnt[wrK>T MڷJHUg'Kfvt$X'{G֯I[PcpE&nc)LꔓN5@`;7.Dӥh]:0"A͞u^뢋>HG4E?Bc~# 5.͋HCp."[(AEc-r<\Hc&l9-e>ge2գδA LR7ͷ)Zs= m+,?hWQoRU<"kO_oz6ȉH:Y Yqcm Xo@k?L^HMB`11?Ykb'2#*}}o )g{d<^~@u;dU:ٱ^8Ww V3-"'qSsEX>R"KA.ykM6o5Dސʴ )>[TyX(ے̏ U3w^UǝUdKY‰,OsHb\3KtL-oѡ>L]zo_Zta;xXn6j{@J22fuCo˳*֚@FۄH^%u- |7`Tu+ĐXxzCR;?CMR5$/o7\dTudRWn!@'$6".ƖaAԇWq}*O},wdNN40@5KD_.9z҅{2>nxЛPx;>;kxOԏ+Sw'܆V5ƾ\3j팕7ݳϥ,l?ouTVd]wO]w#w}oHӬQ>USUjcVuykMAâ .c+Jbh}v{KgnT-tCFoDX[+Kx⢷c@tt3Ii)~6SﻄI{lyZ]~@dk~名~[IdLJUܙP.i Vdj2Ei @Ukrre g$q~u?[OuK[ Gsx2 ZVK4/>qK]Kf^//.+9ULy0[b )TE6׺ҳw:z\A8P/ ]JpŹ9VF&D\׵ʠB~r'E|dfX54!h9V0ô{K6abм]Y ]{8&c_*D&PÕ g73UIN&ɼ!Ez(0 &JiB"aisOoך}zam3Xoy?`XZU7|3".xqYM+j w+t~q!Yл(;dVUǶ"mu g]E+`xhCuZw>0`e;KL w?DH] *^(9on_<#J|)(Ma[kyOGSUvкI\@L0nZiRhPLy"-10bٿX ,H;K5M#khUHo1ڳ4$t7|۹3b`7߿e(2HpF&`8+m%V\I,FmޮJGLub;9&r;+yB3a묠89%W?LKz8K][ ˠ8D LFQxQC ù)WXnba(P~LW{?v#|L3S(!5㜺L,\Δ4"S6^\ɑDhÐ.8_* kdě GP%,$gч~WNTkSZu99K|Ra vVZ52pޢ:(Ɯ Uˡ>tEa _fȿޕgqμsOp= !>y"NyfVkusV?ZQ4Bܫ8 ;#5K)K-oXd~)8y#f26!<ː~Ю/ܜwi},Z܊BLbaV'i8X+^`:1%$ `kh;&!~ }|*~{BUJ&@o34^EJ3ɘlU&76jm4l曠kpW?);94EW$׼}5> FMhoZ- I7|6l֫Ya.fD*9z=52ϪTN+~Ϣ yo|Uҗ S@KF4rUH )JBwI$C^ hUCRwT;Q\>ZG?#C[ h- 񴖗е7ݭn^uR b{錍+fw-6/Xh8 I{HH.+3"Q]dO1SD gf٤̌-vAM Nt.ɂ8EqQk"bP'J\UsS& Yt=gշ "4&Ūwʵ`hY73؜f}h{jN>e҈X~cy٨BxT.=gm( Y^v M˧IG8ᦤZD*br VOuɀUrLZCJIHPzoɟNҠ<7 Ś7N?h@Ća%Cz7UVuq,BuN 8Ǚ⾤H.=r-lqݤ0w"qeC(~pYöWEjbp9ltĜ-p&u z\(_ e={hh+SRJΚb85 od> yH(H29M"l@RY3g5;v"ՉpP>;1 [Kj;cS מU>ORpm]1X]*")ߩN u+`eH8 g DzOȃ9iPNSfۢ Bxm;W1ױd [%ׇ#`hw݋ni&KH>z9̯i䕖NG2쎛vSbp:iō1__#9sX-Lb JXa6k)RD\\o6R|ォg}"y/?nDZ7:n!߁ 0>8D'TtrƐ1|Ncqˊf,sUzO^U!k<-1<6h ͽUA -bau٨ x[Ipyg`I0ZpJ'4 ӯiB{MM`Φ@Ă-x/|ik!T醲hK/5J|_jAL?k;2}$9d8!GmhfèWkVL$A/(@z F]~kr|", >~oiK? Xʕ5G_DH]˟њݻLNY,/W'㷈Ty~Z?3Bj!G 0^/V#^%.UL:q~/e.]Z 3JB!})%'7"z8>Yg0o'hXLLv:Jhc!fXҎxf$|PZ󡥧2q0ʒ*b_yA#|-g#V"qi*!JRlMN*m?krf(h:Ye^h_$ Y4u-OUZůrhU"eeك05ێ/@Z@nV,]-##{uc׌EAA=@'We1 j[{AhhfAP߿σrmj[k Gp\boJ{/ׂo-2P/n7di8XS\}Q--m7PwwMO9%Օ 5#UB\qO.e}.}х8!0㫐L_EM݂f8 |sJ4OyAg=Щ;%#c o-c?݆@lWU~9 S ߾F2V]̅.@Z$\5I`ʗy-Սq6| m CՂ*og]*ƀ{q)%[}-cG Sک;ߣ~8 I&cŴKMeaIZQ,ALDT'ƎBOI g?Dn 2_H䆲HlFv̛ܵuL/ H: [GS_B VIԨyXH`#1"+QeANmStR!yC2Ҽ^—1$䃃蒮Um-t5I3UQC -RC,"5`Ghzz.s9}R߮|x=ZT6,+d!N-[r)Z@D%Y!2-,>PDA.x]i7L~]Fk`5ؑ,¿B s Pv /NLhQx OTy?W|ՑWe(|k$wSMe 0yhV*sqtQٌe [NE„XQ=ч*h1jX(kˡ`,FE ?s%j/S,GY㘹eT9=a_Q"{2&8`Yj@! f86k 8n&}}nC[ r7wߢȮ+~AdBa 8ssWr$|ʦdk~fA(ܵldA_iXےVFb?ܷg4-q/[*9[U}5[svypGwҮ1WPe h[{dEiNFLKI6"qLn cMn}^$vz5G'17V\ub ( PӎwfMmu1Ky5烸(ާ ?N+ddiZ?R`EpevA>HM|=2WO*NPhQ]ni:uX5SC㸘>@ aKd,ƒFq3p+8ZsⰲGDր`Woca{)V>qHFy|0EiWfcSpP}#٢5ZfB4wrWSlaT+ٲ8Zp?o"(\/pw7<o/ nu /AQQBޚbfA>5_ ohM+ $yPq]+_c`SٽΣ~UK3/dQɎ(1Zg~~}5[tondxHOM9/Ē=fK'ŕjm%5FY=#BlN o"w3 1Nju:-*i-eqAIsU%RdXK NȦ;ضd.ȐE8(1.@Ð5[V?/d#nm2v:P/ݫ<߭R}/%8JSTjMwqY9)9l5aH%K9dЫ'_e5g]Ȇ%l3p!p`T0yJ7Lm*IrG= @gwB{#kJ/Kq>ftQx8" QjhG=]8gOC6^)c-ᶫ^~/)l(rzHu{RcYŁK9:7[ws9BPe ;@ts 7YdcԍahBC{^ s']]M| U~d' ^zѨX/5Y3K̤xneZ mitH)M({yH ~ C xvj$eLő hy3pCߋyi8MOmYEF`"$2} (m3CH[:p&d9('nŸxЍ̀r!<7UVSZG2LA߮ $6UP]#>Qʨl7U(W3zo)/r̈́FA삼J![l7{;_8umySXHnNFm+ˆ$Z`!h.@B *ۑLdwpWtձO.2(/V\cALkT8arcvp㔆-dHE#[lf`X;4NuأwwP@(m@k|e͢'ָzU)+?z b,6#M+eBxRa]c(MBԺ4,@JVISZП& @gM%Q‹"(ܶ9FwS c̘/C&cM]Kg[oe{ØWd9& 6w"yVa9;R1mM|8C!c^ٷIM A[XRIej39snyE%~ i%#j})J' UDg~ =mݢ۲ίc&fB9S641 ʠe,%Fks-%}:,[xT d%CYl7,Dٞ9IDwO1dS(Pw$&=wS0f}wn%by _m#56ceBffY 5ψKWI'##BJ ۚBƋFlx<_֊).G]lt{Rffzdg7\Czw'Fzf8s.u΅-ӕ<o){M`N1pIHrVi/&>F,ZVL1;#zi3up췡4eߋJęuAJfvSc,@ѓ:/u[Ϝ -_mrk(}6:Xˈ5Ok[YgtTSAU;{řX^ʅp:/%KI'w;v][a,&d_w"u4:ϡgu1 .E@SYiumDGwW32Rno~njU+vam@*GM=Cp)9'<,pAԑԑ+;kdH(d\sǘ pL;nTT^ {L'(vUmBA. ((@ˑ"iOlX ˑԘvav̂wm7b6tzѢ1zt-]nVİ aK€VgƘ!hvNw@u[fdÞM {+pNN(>VW1J>uqy@HJ.VvKxN0:x${g6ewv=DWSԶpwVyWFf٥P%+05ra\} L ß!J籦(3*eCwTz\Sxaa7O'9*9:!Nxzm-FYZ&Su1wrVdbUZd1Ze%(:u[,˭d}4܅;ϓ5};>ƒ`ӵ&2%m+R9hqy}|߾x)JtBM5fgrq7)J-TvG4 !l$%xfFb[\}Ц':{k1)c}Z -J@&߄N7YY@j0%}h\֣{ZީCeO~~6RZgHpN$M` ?L E 4JX{N֟]e= ##kQge`p(V6ƥTRTK(OgI( Co&s8rTvkUƈyS%KL .\ fM-ʤ;$Z.RYEPG*jkE_`}C5q] sr;@km,v5VPY{!I(-ͥ/a-//=Y4GYG%(7 N4䮜!h=ނC#4Ƌ'ͦtP3:r"+&ZC5; *WH!Hc5PiEV Cu/Ѯ'f|JIEy Sx[w fV\9=t/-i#?%b\&"(ǘ t-|ƔM,M-hWG'^PޢMQa<ŽhĥNuKGg%דVa)Z`rNPRq?Ēf[wsNIs4luB|I,,\)LT '#HI2Њч8%HIb^|6,$ňt ma V..X‰>$!s['?h!Te1*V3ЙxjogN ?ܑ"sr򻣍N>DJc$ee2qJad LH?=eK]NZ\F@fJf>a;rnpn)vT}-؇P Ԃ6֡m̖$Ѝ\4T>V_aca>w>:,h-'tİexhVa]XF"96 `a,SXPgs168*osT7<Q/=K ȂfGi񌌩g!:ݭ Wzb[ |<>>6RVu`Y],f4aS(\aap[zrE2`)Hh;z &C|@: ׳ BsW\kW3)F!U&(oЂ0qbj+Aax܈;tVX/D?@<<êG<7f{e;PK]*8?+B>;sR_%CLaڡ!n0q`CC.`Ӳ1%>|RlK&L၎3f:59^!׿"!l 0g6O~dPjQQAӶTd`k0X=<ںxOh 2G=pzl$gLwoc"G+ݭ,ġUél nm=_ ArH߹ `nB D}|OvNb1¯^` б~0-QKxT}siNðcStCɚfQy]~QTM9cd6POz+ON(dƥ>Rl ko%@o=*T(ʱr>5ƕs"@*5i-$^݆j}PhwJܻh5 a %򲐽abneYnJE 4g(dNX|j:Q!C-*tqw\D[9}__kWl/P4/|UU?\3am?--/ǎ `)ж1›{@t(pDؔ \ ޲؊7d{~AQŁs qL.EE[12 ]+ D ! &1\hBԙ{Y+"6uo\!2[ fY3/ 8#N )ֶ7g)1!ZfWKT jeV`^IVEmb.Dmp&~Fmg`)4LRó!0kOK-7c6 Tb1Zפ(ZPȁNh% ǘzH(ioΧ J& k 4*5/ }6dtYz@[1()3~hr7߹g+GIVy/0_|2$LRfĖ:(\_W@_y cq TImherWjud)wغ?/fw5\m6VX)BĢ%2&/&0U7Zټ[>[Ybb+."$n캐C4bTVrK>[c%ڽ{*266: ׇ)>u|h#5ɖs[l1I0V %tS}i(.B'NMq/ )&8D-N"lx"FSTBW{dsP;jw@zHe +(aR@Q1L,Z6)ٔQ(C왒ޏvF-ALKLJ>*_-}X_Zn4="fHǾy2uCoinMaBiُ}}JZ]@B*5mqxʷipl*kl1P"* PZ1B/.nȖBˇqG)렮!Ԇ;vM":v4ۙz$wdirT/HF1a^#+a1]: RfQF_y4 p*o&J#Nנ:PK625(b_@l㮣`H(>U^=eE ] aӂz3y7$oCzt'כ|X2tz ڑ^i ־QNSTbj˫# ;G|ڋ2j{3UiDr<טHND*UgKAfD.3l\o]zJ2}igxO)`'gzIz0yosxߴJa딅×wzhe'ǭL loc8 QXf◹Ү:6zqꖘΣ$W](')W Et8ې>aCj FG2v^^Y/_B})b?νugmfaߊ s8+o҂+mWٖpuvTx:3qCf7 Vi&.e͖|:y=e OaҧJPN;bee)* 0uAl['.{Ӱ%rJٛYދҠ;X$ѵ sTSo۷Vy{Z|]?Tg(q#.}qr{zsV5[;>⿩u,g_`^Zd]"7С/u3k¼Pv2[֖B_{5A+/R4R?(iܟѥ&=*8Rd` 1AN*V(D6jDI Nj6[*\!vh4g`2$hA!< mߡpՅvؒ?LNKydn)&_WDELfLX]+ ș09l1~Бvʒ)B(^va8ؠнXhcuYϢFy 'm3bW_hPʴ}'@Q8 1xQ@ذvYE&{k1Egn>z:51)5Ow#{;4尣v6]PFE;'ϯ12|C^{*!3#tH=^[%,Mܻ~!0-N_n(2 20aQ|#}|&YmIa]({9)l0tR6HwGCX6PZ9|. u0ּvl} K~7N!6M~Q*JyeWCV?I&v^t}[<E{R-vHX2|@ [v$ O&:b[o~elHV2wNUs {5Вi'+\zԬFttxVKgY4 ۗ<%)fm;zn \fzciN|ȖE V&iigXޫvD~#R_\!Iۈjrȵ%ՀY*]B !Eb+ +.]_Co:1U;hFa*)\m= tUņ?ֽìLT^̡^ Hfx&4r|D|r+~N99%VPϜ+X{Z<1X'>Ǭqʱ9PN/{ |g܊Y u,ҎG=$;aRzb@X1t[MsFs!T]hWR:eڄpQ'՝C{ľZՃNܜ\Vc-U'ך%:L,BD86 GLűs;`MAu i]̵C?$FvkBL6W?oKKԪr@Ѹ z+x:A.= CPyo[؍zyw&S1>fHvp'Vq>EՂmhiSP/A?X6!-2/u30-vRv 6zm*xNjZutk{~Z${~dߑ =^W!LjPTm2h84 nkզHExu\3[sRH%;^#̾ z"ZuhlD"{wͳ~w@ ^KpVG|͐0֏ qH iB|-@XK[Rh @ձcJpl W j5bo-PUB5aT nsk.W4D4W nK}STǻà9=n~O( l> nv%Mt܄ќ0QlTDCNI=G< )6V&)Gnבw?#@ <0=VpW^!'ˊB&zL6 ga4;a&T9@^ǣeR? ¼ڥ6 Mp6x] i 1ܑW H` Hf\}4>%4.dGˆ#3u9& z(tɝEn),b"hSwcپ#(ThaSvَmj,]8%|^‰{?}_XFH8OvyI4`0f(.T/4 ѬnLYnOC}Ӽp"Z_@]1w.j@:]v!)Wj0*mp$DP܉/-u"![`鄙A/i(EN:H,NtM~7!p!]]^g!]%gAb;ܸk$g!M㎣{j)lΨP"lɔޔMp`{w.;/J>AY*b[z"Wf'mngvu% :6&49D%Lp%{hvi"T<願SLъTj[0?DrFY%zNA ݶo JGm~v}gEhb578m13uӓQՎ~/Zw?r'?F:Ò! !]jVN#Rkǵ.PtN Bxtʧ^_WLh/6`F5I?MF2{ |) Ý_mCK9_#U߰"0Q+;T=# ^HP-p?v&9᪅8.^{4FS,/~0-Vfs_ / 1)FT9wd=߶{e_~T@g+ g9GCJBMb;Oҧ>qY@Fp%'Cc :nΔb7? m>t]7嘿SP+U`&J3d7DY~0]bR~YAvO=<۝Fgg*{gdb@lJ`Mm!'s|Z:GoO0O`^օ|u!yNtI_Dz.>>-z3QB:|=51 p/`OݭǢ>@Ac :[ׁ`WMHҺu;&b^ht `p3^ XqBV[J3S^J_/Jr9>- >Cs*}rY]"_fWsi:Sk&Mz~Zz7#}˞e^a4]o_pQ7쟈Z`m- 56NZ2K)ڶ-aJjS"fJ; 0cDq$-4{W#t*}Kb#}oOv!G-WUf(|1(4cp&d:RMK4g% V=a %J3Fs=j]fٟS\>cBB8$̗`5%͵)iH_>VLg/r&jZt}ǚ_˿sn~آ ʰfe1EkG UHS%=yAYc+p/M7=sWϺlŠjGPqKJ+09NWf퀢KpD~Q%{f*~o"CŜg_г.Z3sEU@4|eR#xmyWO$ZVvbqPWx^;|sae(q`l6P# *Ҋ(gF˻b  rEI[  ?9"p_%ωB!GqW F̞*ѓ NOaӚ9xm-|\APo0/vGo@W{uS@yryܚ[Pc$!@ml|c) m0]8䞋2"KbSˍ([0ig) k4ɕf~oX{ 4lgXAfD[pK] ;<ÄU"D~$fqS/ئ>C7.<" g+sf$~~$ѵ)ŭ2~kv4k LHI:ñIܩ!63=Qt&c%ļuUi]m |}$`;d00:YsF2tᔙ]QtpJl'Lip[XsCP!d已O- Z޿H)L-hILIzNo"{Rg#y& Kɵ%Ծ<l"+N,aO.hcXYZOa=}[t|]7OMyN.QvustK|6?*E NP86.h+L:`K6 jRͤ3J%9=I*4kUצ{[9mCV׉k2 ӆGXIhdИ02 (ȭG4cMc 9sʱkP&I>>둖kKͤb(z3aA^ǤǍӆc17 g‰Z۩YX "f$P&qc0Qhw7q%&@au*M lVA}pb'q-:0M:5+7lWܳn;sAY/\|bIW܆A|p(E> 9 B #D VX;7jH'3|Qq-ڈcg9ge ˩+ggN;+ܦl~e*Ԍ}p8Ԋ7?;x::/ԝg+lY1 Y4*Rl=1QAU.ķJ#*;9P?81bú" ~ZAޜ5ln=cT#j`\mvfw~vaeP£)sv.u:$ZJ;ت|h4aI$)б+wwJ[p-%"dޫ5Ee<HF|dҲ/=:4 @\ElJ}zO?zE=T_V'Y5ؚsڛ.Dhŕ% .Orr~E UG ߓae;,#|'7 4tϕ%b-7 [%vGLk ݿNo*ֶd((Gh o4 Z}RdS4GDŅ\ХMR{Y).Oq` aag,`0@Dp _Kbq󭸸&H>ː{hUVh7*M6x[QIbGN h(;5* 6~ C2r ƸR3m"b"deR j! 7|K|Dl+Y@3Dx'd_bӀց zgiZA׾zң:0zXK,:&dQ]N.2w,jfŁF xQaM]pL4l٪~Q% X.Ån;[Bi~8E ®?>!r/LXqqO!;I,ajK~Q9};U2b9ۃ6]@hǁ"F Vw]yBN[6uk0;P'Ɨ.fZG'HBч" \K靟;Aw rG V 9Z**~iʳITm.ueqCo`gp #TI<׶2l^afG.r<%H}^ VKZu sDB ClZjec ux_SZJߪG6|Zb0 Xo(6;?[ݛ&P%Kg TQp#CŒ.=6.rӄ2xV=~vnxy%ofN)~s_(&K్ A YhhAcΊ&P*1hy(_ͶGFR%h'Iz_Y?93̀Ω^+Xy`'sX;%ᤠ td4ЮF,QRwP ]ORGRbRmͤM#Zu B6@KwF֞%xEG-ٱC3SV7O5N #T{H8 Z̘Z;-$Pm[XLAWf;\^Ra[[Q[)'P }nx4~_MV>s vfphp/%H^@n JU%9%GH5Jl!=K6V:wjQe[$FݢZÏb$IyvaS 8U=%n}H]I,&%nM_[&A,#CHyE5S;&&DL'[)pSU} "啕H|s7`fA6q LҀ% ț] : t A6&-0O]ͺaP_j\(6>P=T9 x؍U\LMZ[j3pTt͉_+4}h& JCMxBB޶Vۧ&wXYE ,(v9yXiرsFj.h$ 売ͻ&7jn+3XIˡEAElGԾGIxHx_ C ɹcr'QGݽ46u GHzi[6p?Z |UGrx#(9#2X*ʗqmXhbO ub\%Q_{irioRU}.I >QQ@(|n]K+07>Ls+/0%ϱrȝ+r B۹DRO' /.x7% "Eҧ8rӣ&9`+;+(14ԻQ4Tͬy@m4.i'O)oFu6.;kv<۪oJz#v7ѿ=eiW2nOхPtjS:A$7eԁ3/s]I+ Ebۇr69":y~;I95>pQ$9+2͝`ի%%g2R o<ǐROs^+eӘ8~nOQ!o*\ܢIߝ#ȩYhU I{rA3wni'ށ 8%&ȍY/_ٔz >,oI~b.M\>(Xd Ҡ-)%#4_ns8c:5] 0ݩx2'hq$Ԏ @+|DI  >Nksmt}B`jJ"%6Ї(_[Sm[RC[ZǤ4 #0-d9%j?Kdh^Wdf{h>rكg_Zծp78qR^Yf{`C@10CX(w@}xg*i?zy{/d44.g„5:ltQ8g)5KJ.' j96l>y,%VizDH"w$jT Lwe팄3>S`5+ g:٢glʴ#(Q"b_bߍ %oõ(yΎ*Oi,4(ZO: XZ`5u>cNZSSRq?Tau)XUa 9/޿JeWeO89A$E\ԡ||q*'9\BQ1nY𴪷J*+)#xwZ.OŦf򉰨NtO`}-` %68; HDI Z}g& ojEBAf G~Cb?ϩYIꏤ*fL0wT nl<+M-eM`{em#k8Y<8ɟl/SN^_+=X%]}$ +JeXuIT=TD^7/Qs=\4[hhc8Ek^9\ [D1mݘeMТ2 Ʋa|,=^`2ݍ8s9m zGF%QB [mg/|9Ax24hWbʿagfxM#1Hqqur5od!$xQNֽخpڷSݘ,hsMѫWqK<eG}j$T3^T7/Cf@q O kOZ*V)_ 'SP"*wW8ϜVBL GRBtYo4')ա:.yJaZK Rw+S@Vu5d4m\Zg6`+b[Uٰ|@Jhq(ػUhӲ'Z%2[+ܳ&C1P8U*EzǪ4!VFLVڦ:Jn,Nx(:Gb9vF jXߦ QQ \)E;ZE6~?|MmzE7Fi e!9V92Sgلc-¡]y_SɌR/Ʀ׷WR wi(hXFUǐmm'VE D'6;~㰠/p\Dh>զ7#ӶilĽ$#ͥi9CD 4}<0GB ܢ1OZA4czɃp*WDj6n說6ѭ'(vFk@?,uRUrWR-PxByz̖=2(R;}O w(J_g&oK;Lms1O(. AzA>SUݫqjR6V pbGq}Y'T||E3;j9 mH?je@ )62L-ޤ5-/c "|}]!3.\&PbAcm-){u^&?\fٛx\i`xVI3/)P)fbhbۨay^VNGIHLc[4\Wr/ NDMO.Wv.T8<J*94r޶''ECl0.+Zo~4~3KcvakX] /M 1O+Zh^Qt,85DփljH}Z` ^ȅǩ\\ OpA!iMe``W-)>>#%.yV WWLF׊65X zJ|7z1f:;;;֜PXvTwC3eh4Kly)Em"jS8kn;qmX5G`uȾlv9] &r XI{-kAo( c']'|CLd:L#l4x*(i3W^ژғV Jf {eWM΀Q_JjVn˫`Ѱ3H0UMȩ+H93|9|OYu@yUT&?QG:CvGGHg$}+σZ wSgJ:Tg<.`Bܠ.L K|ƨ[^ϲ=sժ\)s.ܨo>sL HegVqdI;y㡧c3tH~2<ӈ:g-LFGtL= 웴SGܒsx=uBg~? MÏ(18R 1Z4EFlu}qSk7qYAc G9\VCȿs9+cX20ڧP1JCC<;*~cvct`G5808u۸հC(Fن.*U(0C\6%j;FRN2k>ƞΑʕKvI'H\,`#qecـL1 zz"2輓5CjZqŷ MW] ;x!n -de5AMD)7EPni$_&4hR&g0`&h: S5-n?p0BGjsQ0'7ټ:$+qc4yf,K4:[r $ 5M/Lp3 pc 't@΃$$zt;$jB¸y|;uh'mCwj I03?ٶW}re玒iV!TdH? 6R ͭ-5v GQA!'FO(&n>׈[|uCci>H TS~>.I7 %U«mAXv:h{? |ki?y|7!iZ!c | }tAs!He6Y? nW&2d<$+O$1b+GD1aIO_ٌ)gC] [a\:n2bkëʪ l@Vuq:n{AM SQ`$kEIH7w( v>9b;~, xM="q7IJ~99o;遙Q"e5k?G`Q6ú J}WԺRԧºSy2*tSKGqID=Pg6sX֪%pm`=]DlőFN 礹!*i-gC> VA?q]V{wOtFnh؆?`ʽW*\#ubu#_3aS7Eh$Ԯz M)N/(#Dz/gO`*! :3Z~f; v\9|+.m월(s϶*?ڸ⬨2͝=M>^&P7ެs Z4(kUY!RA˝!;ADy>cIfcm-i!ZMKiŐ Ye:)MSl_ș{l lihKs]lӏ]ωN!r(I zv4`2L'OD]S2zL?4?Wp04PQe_ ͝ 5D }eX.xP\J2K$BU p",CIl.Ghz}:3[>="R`A/9c]/:yրp)Cp'MXu.idrmmO)zrd qXWڥNU RWA^0T;Q%sfLz2)%kb_ޙ{r8/ ?qNb=5kbJTD`k(POc[ ]0^zw}"1orJF=TxH1B0%s'm'q@]jc Qjko|ُ@'NMh䥚Q(채*ކrmk%DN羕̳)qZ gѻ˾``E|"clTA'HdnُBojHPqQc_ބztܥDGfBMvWx*rԑ.49J ·ǔYz:,R I O[ eK+{=ˡqEɄe}X@ίLYIQpn}eV\ɘemHՓ_ɧ{TP,;_ˋ;B6:?BCڹl9DeStumLv!X0ЩAۦd K>R-VL^37جnڠ138uTgkNE˙kn6AFM0v`O(Sる"V<}dh7 XwXcbFh~@!z^EMf,>N?$>ua p}hmCԋm|>v4 p7gF%b(HjoW\H1uxհ}Y.whJ)~O@$M20Ay=F`xnSm_$f}GG@ݒyH$UcY`ЇlZ N c ϙMaQMr4jP6c)d񘿎mY;Uoy}s>g:Ǖh,hAo/Ů!ii4/S tG6n:K88&vZ\Tj%r%\o&c=VI#ڥ;lZly?AEo,e_sHR_;FC:śZt:/y=_MAAtP^I=#/RzHk'qL*״vZӁ,(D)N/D']jIS.l"'=cu{˵'?t6Q+J;rh/;.2 B&9gJ7Ӝoq-c΁g|BO66:<הg(s@L8kX- OX7]i'BM&2pڣzi7)B1΢w(yn $3_(Jm.a`؍,y(K sJ٢4]{""yQh{b{qD*@::.dͬ2e Vv| 2EcC??7ra\=FLk<+g◁U 7`o54>yj+ {a(n ZHU=#Gnތ ƹmKg8f%<685բBhةHP$49xnX31+zU* ?Bi\l{HNCMB=bA % T'eP-=V>cVq9-ܡLw4n?`1ܕ }3ᗧ%U՟rgɄ." l3AVuK,2(k&@|b!ܩmY@4Q~ .h, „DD-rP*OSuK5hB)dӊKdeLb%#d &cDtgqy (ֈ``ZAD^cR)qbrRIJ.g}7 ;(NX#tl0Z+(Z#&͐/!Di*ZÎu6Iuuö{K- i9aL%cԺafvA0.Ł))l7+  {<*>2ܶ=Xә!B+ůCK1v,%`?B"SB)_ɞmϫpL7yvb#vtKx1e1FI !ԞH 9 p g[uz( ))<&/4ֿQo*ژv2T[ I* Q^E A<㼈"Z'99DVY\ 9]_<&^`"'xMTkIExo!qqr"n~Z><π0d6_gê)f0/xWt/߃[n-Y.T>O ^}ͪޙƢL|7]`\=s' X#aMǰ󳿢 usR]M4:S`(̰_+K&hsBYR?LIa7v'nΝ@#g7 }b:BQYuNRhwnh&g\3J$_Z7TlvWJF{HòP=9~IvX/vÕ@`79RGsu4j"4H'ePޜds3eKYdnTBhn9ʵL]띖-D z~E9RQ$™n2ӟrao1I|KP7p 0=I| Y}GyFH^z=\G]ێ6j1okK->8Db)j\ |*0uöʞPSbyYFnj}`Ùκ`3T- 1;C!̢-a-6:Z#IgM\CbL طs3Y}0ִV/O \4?W(bLwczr9[ȶ1bj C):Aږ뮠W5;(#ۢw+u('^ kLbb;ɘ/2Q!]Fd:[Z_hYjGt]>9Lur5:w}V rA_÷y~c,ulIUL?~:\nI1a|:tt#Fwg}}]n[=_F @-Qi,|1xzC }br~Uj[adNNXc ՎgZOcXq5vp5 D, jf %)i9ݡ X""6%R6m(F95Ǭ+]4HN bg`()$'5˸|w:/t-X\\UOxrʉ [w`<)+}+xXKKwz> ]^jBh7X=)_ژk@T,V=Hy rEUs*,~EA+sFM4#D`CtA8A}. 1 fgӸ߹-Z:DGiI ܵ3H[yJᇷ懬= 'ј˺wqܞbkjo~L~Qи cc@ 4TZ0e3#*nm^wIB :_BD^li敶N֫u.<~B}ߪQb{bYS߹x=(7v6NȦ^RЙ m'BԭUi2z/>`"s$\kU1DBxlMhIn: Tf<@UINw/<ât] "YsPx]b4ʪR~>7TáOo8Bpknu)]>E,νڃnX"`oT%ճ$ʫj0ǰP\Gi֜6b/ /Tf R;ׯS7(IJA#_bǥݖBGؚ뾫FVk44:$^|8:1A*D2%ݥoP9r^vl[?Wgqbn2_MnҞJF LTd5S~>%( 7vx'B'e6ǀFd,HP} hMVWN3kП}>c-eVݪkWpJ3{OZ%REܰ0F󏾖ד\.5dd0 y,=m{ WO?^?ZW1ބ{Q4 =sMou`y )ۃ2&4¿1n ʳ?MC-l126fN =S%1krbQݣwmxr&&с}` ǮBna^aMml2ɨj'םn%5w<2,UqaڙCԠg!S SzCشF$6;Wm9,@Mf.["LX:;S\F]bW3%Es/n3o3̾s ng-CGJak_cJkj^l_u58Ǹ= `36 :FJt4"sInjDDOv8›0_ylzuNtxʃQJmT+*O.uܶɞ~q=9r ,Nں)>yRG(&RJ4Iv3{z_~OmLFZ\4?7mQL*rivG-悕.(\߅RISUT5]x\Y6 F^2t N iEG B)eol:L1DG!:E֑M#ȱu p*дy}ňGxf?qq[܆nn;?F5𫒅q%c>3N7 ZyÞR7 )ps0sߚoլO3,D|n^[sS ``g×l1Qܶϭ( 0f9E՚e>@Нn6s NM}GDG[aئsPqXx)J @U#[0nҝ/l*ZeLPWߠ CT?J>؜`0k[;ճoytyW3J=epؔ9!zܗUb %ݭw/;:< N 5N[UL RE7ħR~6/WEKi6™huOqs :A]coO¤>2r1*P͓'0_LA~xpK.$'f5MFÇHVf,43MV?(jkc]}X!jwy2{e(a\nG&VcN OaB) :Zj1 p[auBqH-6f^45 tHCKɭ@,\X'rPXDcM({lVmݐXme]?m+gc{5& ( #C}h41gJG*׷ ȸ(\HE;}#Ūykg #p4 2J/o&-2ILbNWgyFU|:AW̳V'hp^|WuaV_-ZٳAJР/zT6p(vY!fpA<W.M/ KnT-<;yMM^-Gʆ+#z-W ،H6V5lo_x|LqͯϘ'pxm EꁹTV_?Ԅ%ĝs;f*e65[sGO8+:[[$sKɹZ{U6!b6 I|\0"},@*lb+ ᚛SV3zt=am&?;+)һ\ַ}d4֍e}i0&~i@LU:-ζcdžҡrw/ᢵ$ic{VL¾Ԋ^?'k ƶ|Ԯp:IR (8nPVa%ȤsPN#ͺ$SCz7c\J ;=,{jeV5\{>wW1~GBb?8=fi /zG'kkB)K\O?5gXʽmKC8rWs9c5vpo#)^Oүb+e4?6c TlGWcj:u)1:tih4T#?lD7SjuWSa=Om،Au/c9js7v˶y'9a^ׁ[ (c?TYl>my=o_2W&XC؆>+jvrD- @éV ` wYd$o66΂C,8_Nv<,2 (y\%DudZhsfcW ?7Vdkv!7PDliw<$A/~>V&6s_MރuP$kWPGqg~`s#8-D$C!hIIpW}i{:p7kp}:7a^ a~}_a45enNl!apdlۅ2QiɮmsN60jXفkQ/Y('5Ui *cI$j$fG<&MzAwU%Eۮ=2% Ql~s Xc$ d`zXpSP~P-Ztl ΋d19nVFF ,.!'G6?^#b: BDdz`,oaKQGzO򜩲pIYaJj:(͗z]ݹNb$V-]y`qi-@y"G&'3BP5 VFæ ٧ *lf' 7u2[qM!  P(K C6Y1 v{,{Ds0!҇y85>e$ eŠ}[Ŗ*ࢧTl`vKpEF{řv :p fq$AP#Z/O8 9%fW2-|].H^a* c 5OuCcK7 z MouRd<&2LI؎EDxWl5!2ښe}c k1vBbxo Y5D̤#:݋7tHWE} f쩜#ƭ2ZhuLdxmw,$r$)6"A>O`[XyxBprW]5u" 2RP>wI 6/":#Ym3)DvHdE=Gg5!S]߶D1ju`YN7@<Ф(r>sn8ܼC~s$_#[05j`Komu n{2;\fa١oh#cjZ 7=%gFu{[;)*=$ \GfӇYͭ]j [~_|~<ʺ̳ TT z\Wo›B$nFƞ;:g_#Ԡ QC邮)|TE^Sы"g?9\<7OɦT' ~EQ*h9gR1`CsC fp];uulgCfF`C xf05-.D8Tpd`1 na} rz⁌;xij%LJ] vc Rɘ8[}2^,)$#+Լ qZ)ĕjqB8υ8UJIǤAvD1y0V0jq{:5dY\8Be>Ceb ' q"!}O& ؇\]PG͐婍X9oQuoyb6JcHy: pH,hPwUjs.Q2ͫ"qvMHJ_,|{s2vcSm[&z7U7{41z ю}5u93.7TXH/\as؋!Jhb~ wiQegŬ1lm.|Un剀((b"r` yڋbx ! [SH B莴G*M|o.T!ʊu?4ryyKLEuGNFˡNԅMam(Xԯ8lE+<*NUr[4]`yG> ?3/c!pJ~fV.q }[<}ḏJ.2G6[®4@Ѫ|vbd%ׁO%\L#kR/诽Qɱ!PsBB7kߵԫ^$QdSK`{ <hGß9Y2SӄDYRVSF 7$HQ۞fa vyt-9qFؙ,@a۲9v+Lth -f\!x„ƈ[ۄ%Xa1@wv'"u41U32n@:F6u`'g;cȇplIIfxNu:JTRL no--ħ%R%_.G*7!&XDϴ4h39\,q`][aEU-Ϩ=!!@3 ;)\?,)7GMȼb\_,>ΌveTp1*x­ m')`j*yy#cJwuD1, !oT7N˒}H|'ʟ^uM@9L? R9:M#~_bbORѢt靽iƦ:OM%Rv|iYn؎ףDozl0.gEg CL5fuSτ=SVk.$ꜯq࿆P-gK*{w*RNN'_YŦ,o 1wgǻAW[%m.{SPc^yudG҆zds$q uN\'ͥge:ߑ!+c7BPGCF)phg/[=)m8=; W8l?eQ@eF4yQK{H##I{d`C7/OW *Yqf|ZP`!!MdUd~tX cļS)V`GQHr\43ϵ<H\j Xz?_Q}6Ӿfc2B='+AaQr481sib{q^G>e\dLlͺP`Ӣ0LI*kw@ֶ 4{oYMA2rK1 X$ =\w;%{quc~ v/o/.n:RRbpv*R>Ea-j>A=iܾ=1.m~Y#I~@44 \4}y1 Kg"{f)6 fh<@ۻ(F&pG6ަB:ÓD{8W#M$8zA~ v=Azƫٺ8YK{LǰO9[ju(>gVDakH)>;Vl1f2q=@p̍kG'oH FI`1/]v jKKԥ7C[ik P~;$hWm~sq%zkٟ rh;WU)2CPԽ8y" ,5CvQ X%jb1Z䁜'jCfz 0\G{! TBzwo#c(Jg*6Q.}I1SM,Sbn&6\ys*Pܣc".)x3(!{.,Nu3̄Z5GjV:8+"=u^8FeQ:Bpe(U*F~BZ'&4RX(A8\<2 &tyk-Gݿ)w,W ~ T_+44U*ʣa 18'SE<ָzr+-d`L;qHqk,hj D\pjBL>5(݀mO|;كt*ޡStPKGna@.sy5&9J!VQw6`H,2x7 ȴ퀋.p$̾z Y l[#yl9n+ORmV:|]joЋیd0DOz>:nQ̛05̈́XHY7^%pȁmPA1)#DPIddFё߲Qk 9uo- '󓧆Cl-o<k<,2"H݁ܦ3L;%xggqZGl%=.m(m`4F(ʼA~J#'"K*C]@҂HֽϕX+\e껾LsV,v3 AfO^ 3S>u2]1o &-i4hf)im] 6ݿǍ6/5?Cf6zc_*hl=$. =/ 뵐I oÎ6r8vGa %5g7|do_n]^9踷=t,##&5 Udk*!c5#!r"A$Tn|avPKa !Z OtKL< ef,`o~CK9I:#O>w6Ks"}(`^ aM?%YR]P0DɞFYǛo2s͆k)8&&uJ: 7ei*BD,m$EP?mdjSa"j7D7syf_1Y׾A!0y&,: Iעk jS}/t8ь:;vtJdӍ$gnO̘epkG2!5jOI$=\_8DŽ1:l\@AH\ DvoJBU[:o<;e^eh gyp3mMAFZϙrmvzO7 &cGOK`ԯu Kn%tKJlШc4vDr%/`OO8һr/xjCƧUPDb*Es$ꂕœZRj%{Ctz 9_m4е]%%H/QU0Ru/VIm4/AEמ3崴tmyȫR_~Ezɟ9?,qձ#I1Cg '~Ӵ!^dy[%DS4.C*EݭT-[iQ02ꖢ竮ɇG^ e sBXள:C؝.ni吘wTrHR5}85K:/(-4ѢeeȶXr1lK&'f{b ˸\*o\w+ ֫Mm4j8_)mL.mv]6ZA=Gg +LE藉DCd8X$8B -91}lVXdMUf$iWe՘i-̍6Aȣ_}F(-?gûpLp"^ 5 t)X9a;z|1 zfs\٪WEрh] ҈:-Lk~́| ,r$#$,ODh]EUEx\WNbae0%)U$˙8TؽE)MOb2\DV o'gR oF*{m w!OC\i /ܶy"ˎ>z*k,ENyMk(^zoO*҃/va 6p**1lXon9stZ|ѧ@rx{_Ÿ:}VwWp!'2(Y*<,V 0Z"sr\M.bMB[Ԧ6ZBH L9>XqE Em6r}=g,}>Pa8u8V+=t=w4BMJ3` VII13f@3Mʒ:_$ hN>x&Tt.E-k`VW@U9YM]°;Q5Vi[Žw2MЫLAZY('/)Sf,|V*{51*)+J;/(;x3W '!Brr]O0+R҄ޙ M-iXt\|ͧFial4ĥ>P `UEfWetf">[-lӑ>UNK2/#;D_< Uy`&ŅAkKC'@(@;X wK\~CBvpxe/-g]82U{u>E]d՞W I 9r彳V]4e?5B6,F Uimw!kˇ*783h\K}gOO8{!g8wtR%>{{X`t=) Γۊ| "yL2T9[9eО$d΢ d>{Dү؄}DŽ{^PsшG#)GQQf:>Z-ۂC?Z.ma(&n 1ь_:*\,uWq]LJ&ҏvb4/ƕ._zԵd=`}Tߩ҆6yφ̧>Zz%4r~z‚b߸#>cmVC}Ӊe?G;Cv4ZiΫ?E߉xWc‘ `h:aUᣈgN=O —_uD v"U$ V*y0H7 ^`oH86ЍAvxf*aT}TൊtoĶw62-z2,Z6y(xaP33!+?m"h)Eͅ~[R@" k-F`z3b5_}+^SFMy5硏y kŬg|KZ_pn}kGB.tjhNH4wXf\ep+Yf{Ձꦦ UEh<-D)a:\L+At1'G=3wHf ͅ.C>hX'$CU*/;x%T^VskEӦ-wb@]ΨũM[kH6籓; nskD `nԿY~^z,-'|y/B%[/"[-d1m_￵LyY2߇ vnaZ)5#T,<}/:;.@˳m`-wޫBEmfߏE!`.@5; bv{SFLge#V֗s nj2&|ޤsG.ʜnkou"źtn*vXk zW@?Kkzgxy@?q)'sEk}}ƞm>+?5cp8d}q+ U|fNw'$ $!5|[Tސ3׃! ( ivn'I舽WVrH_5Aօl. q B6-n֌/7 B*Tɍ~b}`1l2z8\J2NLl8=i'il%gTDτqˉtBy?u(:|.-JbJ a͋q3]`M) 1NͷsVyTGVwTГQ x 8W:U@ nުNGt.h:4eߍD([[hm.ό jʝ7%FNnRzU,z@`Xͧ>jT.֮'&7IvWzKMH!8f kǧpKӢm1hS68f]_i(Gt_?>mYf:tm0=mi&/ٍ_쀲k\Q@R*<4wQSh@^j "`WOƈ"X  nٱX}2З c$usX&g:_h3t 1 &LE{F卍lx^QԈپPI 2Re)NVP8Nl@ΰpA\[ Y S^+Kq4/C+LȐZ*9*ȧ~2\5/zYA0|r]_20Twy怦%m.g>[ B RΣ=SfL1@ SVGZ?N._ q >=j~dx*<?ZIy < ·:8UJUE4dg$"+qLh;pцUǨL~ DrdE7@ϔgӂ): ᵶ/W%`>g䈂h@IjPf[m54Z $Q ѥA`"1Gff@1¸I~8ځ^i#&J,Yz{]" p1;,dӓP5drLw֘p^ud!&y1#JV6}unaO9*^R++:i,J}9d"lP_TtсGYPn@rbKXTP 2K槲A1Y;f&lf(BᰄK$C~z2юi=/HT_bq'6N&}N|MB{>.$Ⓟ!t)[ ,nC B 4W$m`wA Lv~ՙtު c9S۠UH8" pEjd|͊% "̒x؊j>k=Sp* _nȱ)N ^rjL[eG;% [My+"M \/EW pyh&$ΡZ"yyv$>[`ZI`zDu~)5Կ>] Yt"n79o%_+`ݙnucRk4?ѩsgO $ۗ=y eh7 I* fojQզڽt4T#݊s6XG.r]s<­T~mMY~Hkw[Ht{ wRX.N@HpC`J(f/^-> x HQ>n]xC:9]0d7"֑*٨|R\q ,-_Kf%2eNW —J#Ѡ0\:h|;fȤr % V뵎{'X}W'$߈؟{4%Gᄛbl@\1i{c19BGϴM:*0js n;B7AY#~{9oV;Gg'5bg3OJǷ&,yIW&!,R3*/-,4fT([_y1;{`dيC_RaŌF/$aޮM".2#ir$1lw. [o*~>=rs4>r;OЅ3ǦTmZ`c$d_ qsf}beh..䤴1F(]_|hƪ)OjH!p᎗/Uim זf|(۲)~f툲vP a<F{ %_YdD nGfKJ$m˃A7%&lz 6@BU`=$hj"O+aVkeԅC*ltdJs@G?DѴ|Xb?*hYSx0W|$BЍ[r~$M{Ĵ%%3iӆ EO TH Nu,l6 xmfKcP/t=o]YPd2q,c˛ O JTu$+YǕJjjxZa?߫6۵ s|wn(iz#vCOrWO'A*ޢPɛ!:?(xU#xxVTu"$1,;HLrFR9^=Ui-upK&8e}RO@D)ch-4Nw;G*g @- Iy;VN%\%LXlp*3\7O؜lեU+R5^˽ ] ug CdI5 [w7p%uəM"ԞaO &\>}t|ۖՄHmwΟ rm(fP?4ʌio|k=ҳ71a&rї?,ZAC˜pZw򰭕<A"4x_Ls [v.s0~ԻE7va4ٟO_ zzBhW~׭\G$n-=#^,P\rM4:Wt) q`_ SWٖ_(}ۇf2O#IpęK-tiMZ,v}PM𣇏roz.@BHVآ etK*G GƄ)}^BpNerDPdvCI{@3?:;S Cb}<- OK?YAeF%Qϗ['Y1u7!kbZƋ#A$a8+d knd#gײt":e[e>P.I fk,i582mLCm: '[: uy5V$G`Ha)KLMP_ ڑ^ d9 p R<--H(Jok:fR^c~kZ$l}uk n{;XoV|+d2婢I@2r\IeJDsd`j2`k>}Cz`ϲSġ' c;sH{1M2Jl4d9)cMI+l2',4pi1 ]/T(_|k dx[xtJcx~/;?"fCoFy" $yClG}?.:*#XPh F9s"fg (3 P?|e .ͥ(}nV7%}MDP@Ndwnܛ ̔k̥ *%'ICɥ@\f{!t+ybă99܄v)w"VwV8g~{?rضw}F, ᣣn/%O(e|=/}Ut>^܋˛3t#B⮇qym_8+Rlۘ[FJ_H8qd@B;ݶ䪭!cKb"h5&M(>u)ޡD؛nvUe!th ^I֝(*49쑩>!R^.v1XA\Rҧ!sLP4:&l] WKEm6-JBқYNZL;겛lJXzIDRGA܄q:3Y*`.o"pdOD bV"%GT3},d[4S6خz^J{a].6[F[Bk ׏)D<iCy!aW ҏ:56KXfLD #A {56G7@vp46Kf ̊6[Yp!^/.wk͌q*G  5rbr+߷-a#-ݱe ~YeSkH۞J+0cLRvZq% xUlej{@RXK4"H;,F4pzVv d1plX F;y"vJ ЭoT.͟4x%wږbar\<$V0U%B_7ՐvawD(3$8#|L%DBP ҝzm _c¢ՕǰB` f'ˎA 3"fP}+R(da`L~dI踏꞊EM);%ШWԊP:rLMs} a?cplXE1%5{U223aKǕz#g]dԏT7bfop鎹W"] [՞Z[86k =E&xƜ`5?9Q)kG+s&gjՠHZ6ΘpJl@5gfܰN*3O1=`o3y,yԫnՎ*MCo *3mdRRIT;sXA*߸;/vĽ$l+%u)[pKۙL\[qy7>8qܗɂ1;G;:S,Q U )YJ:PeLdžs_sԈJ>/ $lkT"~p,?dD|d>~O_BseUƘ6 P ǔCHW?J@dZ!@vy8)7UucT_[5͎ź>fLew ڲ]BfSdtHN ̉|iֲAa(zs34Qi]ۇ<4RBPFڕT=CS |n]3(Cy2DatRXS!t֮pIqz" dU`dx Љ9P?"/yBP{i+C ؉تö#۝kR'(V CB^ |zd_SM!mT35vi94#Lo ^CEyT~p,M6z2ء1Q~f  K}*.֨^2Ain|q+yiax.#kt?FƟ7IFI9R4X+UqÝ۳4ɶBa_MHwٓS]f:S "j}bKE;U6L?fz.&GFZ MӁu Toő$iϵ ǧO_\Ö m.[5*twP(^#vϭZENNR6@zRڜî(NeԠiMU^H @n P](oad3Lt~Z= .ܺ} ?~s2ɤ notZ;Rg*x(cCwWB-"&@DW~ZPid U IpN/pU$lHK x7 lƩ6b7e(j8DO 6I_;>;XJmc(*Dz*ls?eމ teJ$82흝- Pd#zWt5ݰod[Bc2ڑ)~ۧʎE\0>/Sϰ/F_DyN慫4^aDH̱ʎ$_YN & ]%Rvw[s~\CY,L"&hE}Y=\MVm= 1 oȆƈ@B"ox®5Ji&s\'HKu Ah6JvKRnkh|v"C-q@Rѿh,b..$ },;$ %z?Ly]^J!%˫h=<I@4k{vvQ5ռ󝛺HO`/#(FW%g}3{-+E"= Xey<$x.5(#m-ܵK"[o/ J6kѓgX~݆;b`ZW>iM%7_6+0u~}E>ل݃%Yy/j<d7W - 64f9?W"x&l%6 jMk$,H.n3y4 GѕWvힷ(A+.k(ֻ#Yَ; )G n[ x2R ՒGym"w0_)Uۄ};TMADָ'|ߡ"e孼HpS:?#/(i!)ZZ^'BF,+"Z3-N,Q,o&r': QcK/h]8+sZ jA[E¸Ap4""=6CCUGP'zڤ4$r&BtP51cm:uQrָyOvej#DmPX `ox}/w=ǵ|1IMM  2D;1v1AJS̒6!-!;#lM$I# a{^ [^Фy7-d:c_ߡ't`btݧopYdߤ;vRH7s+" GTc+cFhRRP?ׁ9{ܑp"lDLPmJݡo _ EX@'YC!gx mv9ෞxV׈JbಳuMR'fehXb> dt&|[\*;{ډ;;n! [~ >i<G,>gSxv*\wq#t2jKCkwn)5&aF\/;A ;ʊ4$Ou\1̙tU:lW/j$2Huk^IvQ~+-^IDE1 pK. ]V/-zgFԙ_S^J?J:p sSU' JI8fmYި2{Q7^݆_Bq3.8l$L.M2:~7*l#W UijD툪puBǴ8իyر*6 5OTh1M1"'u^z:PwҨno{`MQrrGt: R4uD$^ֈq'hI~~O w!f|\y5\{y*w^]%lDal! ɹAE^ȏ aܗ!{hMk,iYfRtfP[0_29rԧqD{B3Mh&qR|;r5zrҲ|Ƨ?DbpU4=/K mZBNLb ֤kT`_ a ;F6i:f'=V&ixWt*k]GhߐJ9"xPFLK.ـL_죏z5EZdTUuD6OyNi%Bصaw49iw"c>JxRAݭW2PZ;["%eZp'TL "R @V]Շ \TVn`{+i^Ū{Qo"nAqLˑB]|qO;A4^yrY%x(-a75YQBY#bI}WY5-lEƕfD J؊"`ht=SNbu*YHGl.a1"|k_cxǽ iHBI"%J:iaiW`pZh3զF c0ڥif*_Y׃jkG{ڣ*Z`'[ C]HhDkS@\,zD[#`էB{(nlqnyWQ) 蹐{jN*EE* L-oB4+>nu* s~ 0<N$|}>k+^kOA>Qqn DZ(vjL4 ,vFj4PnDWЬXe_:Zی9Л5eꮑ9Mqv G0?I ]ٵՃhuqQ,A3e"pp Ì YqJ@ܳj̏}~>^k.i8.xcvr\l9HK&Mi};쐽u0> Sd{ՓsPťKWJ![6@E|XuLø.φICf{I-x>Z 1cMPqǁ9 Yk0\X)AV HaYE= k4B2YD]M{NN[ &LٝP8k1i0:؃34Ώ| ʱC2D6JjsͶ~p\lpj`:rh@3i$UrEE՜+ϩι^ُ:(Jxó]l Yrk:=@ǸC]]U H IhJɽc@0}?@9)R.V(\eg>\ +ܭ]Ł +Meeg")IN !>C~F납TUӶIP僒遙IĮ|/ X$<[]cp^{HzB9P*ZYC?uwD_z{csƊB}ϟM:ŸBgeSjiY%ȧZ%B4\q{e;]+ԂṴ1kc$ɰ ?ĭoN'iK7kyTg?_)븢]'E~rtZ$.hԐ+)S,6PZ,2܀wq[d__k.^QV3ef7 ~`lfQNybF(i*Q% Z{::l l" ;AO`eўm{"ʆ: &'K_V =q GFfmdxL.aZ/!CJF5bK# hgQǀlW{Z((-lq[ˉAh,۱*2\ 04wcz U1ROߔ+"b]#2 $lDŽ惣x7(ᒭԍ 隷^|V璻?t8-s;knW*vz+k~ʠ-L_x]~K7/?:vtʢa\~wasHܩ93Aq~3`c*oO D԰TIEJ,RG%&"m'Lm2 Np9;YE1ڢdH?z2V5:;]9;lķbw,n ߳.D Oz 77)њ[`ܚ0J߁,g@ӈOY%Rms:3SN~!zT3ŦY_!9i_  +Շ/v?Sҕ6U>vB޹RB 7,Iz;ޣ Ƚ&͝0zR:?[HDxx';/Eu0&'>-CYSo=-~t1\^l.\ Y&A\ط Ql?YoR QO-_D|%JѦ훢jUtac7{Z?v;%eZi?' ?j, o1\ n}.4ALK p- bjFKS貰)JܥWJEV>e?:YAoꌒcazZBkpL{% (<_K\wY'Ҕ4WR?IS}l_EYk$/t.W`+hi8bc?HD\9c% \@Xe&Ʌof"}i:L1b6n8q,\.f gDy{( Sc ]sgrI_~^ e6)DW~SDlwk9\@ms%Cyi*= kS;Ү&WZ~ZIg],k:30صNɾHj 1zp3wHkwg'bCԚ`k>x\i<#Yߨ#mr~:G>y5O{Oh| (2g6lv_KG1 cB1Fm_oef`u}Akn1Ll;_~RN@DŃMbnBWqE g~+:\7/5tk<)¶ZЈH GW;TXw#r7hJn[M}*ٲ}Қ,]yls_'r?~? n}"/MfbQs DVBHDBsHD389#t)]4HDdЊI~Aڊ>RAsap?y#̱!zCsͅo15\[$s*3PYL'&J%]F驗 @6BP9%_ K{HV֍̰`ڋ.Aɏ9h8Jv($KS@uV)WW5lD$^%kuTǭS o /U47)JE}zɀR`ɄI&hxu]X,5[z. [y(:~^_E(}bwheXJ9ʗwsJB٨0hm I3lƐo4xZ }]3C۽E`|*)˲1p7+f}R. T既;u ӧ_M y)QW޴pzx=gB꓀y* }OR>; /\lL#[X@kv"i (S(TƇ-'Atouv@F&v}gk3OGyw<8ՉWAawxU8Ç3 y,l+ >w|P̷ZwRNNLUbh ^ʟ :F5#dBDjNNbV5);iVQVEڦ|({hͽQ2bxK!Hߙ{E oV0xҴ&1G;$eA5Po/CۂJn#^?kAvw'6-Sb;JyTWux-K+6퀓o:{w1ĵ4\J Ub|E8T tQte;ϕ9m|_͝ !'_СkHzذ07?Ekq$抸va Ty$gԝ$\i-,=R ;Di{PE0wޚ pEH αlU0AWq,~G81G9guD{Y{9IA_w|$Ah'eW'RDx8`wMdcY56׵2TFY'Hb4Mm}xcmPi%a붃n|hL%3kUEd&Rȏf[Ð6}rXcZl\"eɗRAC~ ՙօ1(ۚk.Y0Ϋ(u]x d*T S[Tl'^eȃzEmh+8m;[ufaʠzb|W\>pw8R&teo SED=zvcp {*DOPkVA 9賘zJB+̋ CK;pԲ~Og䯂*#{grB`\5ӅtgZàQϷAc|4t3 UYXr35 RК/xLMeAЍeG\sάߩg3;W9^}xӛ j ɖ#tC ?Z\96҃xM`<_%6mpoG~;ƞ'w0s{./]"9jW\n0Ͱɡ?[r|c*M+1 f.\o&'{1Yl-i幓( O6WKS|QSRΗ?0aw6խ6 ޹gocPEc c q)PkP`q1zaPO_%L$E oNz2JOz*RPrE^'<'fodփ%6 <6 @J5wEpId*< UއZn6%H\UArGLssB`O߲ί"0y@EeK=.!Ɖw|gɍO4hz:ۿ(# 륅bRj!q0Js[sNNaIwQM$/  l TV'.P~. ?iaO"Gފo`3$i\#J},w~wM~tMk ͙.GBd3.Со 015yGu&qKJ% @H:9 ¿hٝP3i>qkG "T{u[ʊDiPߟ!i i"ֵ[k9ݙ5JE,-vTuُU?9SץA D `JIcQ`enۍh@ff/gY`5,تoov~KPf1͜1]?.nrSbggecxaP)ym5:AF8A! S#"\hGD7&~PұE'X% IR"J=ţHƤ:3r-"}ȱDy…[8kE:)KJ>IX*1E19q-n,1a>+Oq@wU-(( xm@ y!<#=I1 {@}Gfm.mu9UaR 0St 첵0.Qz:c c#j"XcmR܎HM[ОZL$n/b:^S(49D< ;g-| EK+{+<N 4PX onCczJKIWrRwwaj{S36܌(ursLzO9+tQ7v{|gy{.TDi݈0oš ;TFxς+BkM8 u@5 NКᔡ##p1Ja;,c+vu.)3fk=J~l}V[R*.(8Mɿld;Rvs*'5kj˼'Je96B >>K™oٸy(V8x}Fсd?E0]0+6Ts]Qo~lj̯݇J%%6D!&q߬O7O;s 9@¥5lA#c*(,-a Zg3?łNQFdHhJYFQYen9O"#W-rY3tH]{f9 ԧl|ÖlE* 3B;Gy:I!4+(e{,N;h?TelFEI 4ŝYj6qhVh:ޟ&̮x!tYd*H\nIf(X#T}.Ѯz_h#*Ljw.ľHpB/zMFnz\fCbCaKr_/D ք<Ő_+PktH-LMw鶑"9ƒHoFZVmC9/?' {2pRdJ8sp#?hɣgK,2-:l3V݄=ܺj+piq`VƽVv;oǤӯpEpuVkE h ;ȣgO*_+1GmV{+=0b0;zRnV[\ƶrFi&) [~)hK_zA͑۲)vh |ݕjՇyKX Q}ϬkLp=_z~ U 14sve-#K㛿8rmJUSߚ qйԃWX?5`kJzPAw0Azo h0C cFgscufXLWO1z9/k1._KҺ;eb{cgp\AtAlV|#iio͌"BŸ I3dF_@;}ȶʊ/:(΅:IU <ԉꙊ? 'hշ_`&\BztH=+W,[TX3}'jCjnfĥWГDp'3-l)*n9!֊C}-^r&B[֍uց e 5CG} lև!@59tɯZ}J= p7zmzLS2FMT=F ׀{a *xk_fyk>+ksoJdW՝2n;1|]'9h/YR\هyEDB;[1'Sns3^SRvɨi`2j`.6 5ШcA%\.T|x9HbX78fGLIzy>D*l7V=B0 Y㬋1L`CthOde /a^ !s =u@o$,/ߜJCg @EFX'bTωt/l=&E`acWZzQ^C6 7ypRDO>N[ϪY9@_)W: d-b.Օ2b5U@U&@,ZbL8̌Xg[rcv76Fl,6j؝6(PJ&7X1=F"{^zS>9dt3eԧ:Ewjt=D@DD1Ɖp-aIQ2k3*/N%Nߴw%FڵBE &[&}Hl]( <r#SЖQ#u} F.>v:|po9 fQ-ŷmDUV~ 8;`!0V?[oDDJטYfp\j֎&;w;zv䔶e]rю,ߍ<җdz8 7/8A9ZgFA}ě`-9__IU \ W?6.m\$7p@#,m~Y?~Oeg2wG;ZGL`1??7zO;' 6gkxppBkTdnR}_e6~{+koFꫭr,(EDVC%(*_rn<%o, wbxuz1Ol"4)jr+ tm><ʿ;򲋤h 7L\!V㕃QJ=t&&ݑ 1o9ջ9%B-͜qUI_m0)F&$:-6`5M`H,1`WlU|7cK4W**35#Èȥ=$x`!2@Ǫ2Cd֚IM|fQs,ͬTdۖ|1PrMun"cbϽ{cz_q j%02TgR168oT#x:{P_Mϟ= LYRFzqޡj F OdElxxݳ1逆Bv&R?TL^Wb$4o(+CD>})đ^W>}Vn6Co2b7:h.k//}wFGCtBȽI71$ %.f[l$V)R tjj"*Y@MM \$}/vdɝDfrřFD~p /Ù]%KY'dƿ(5+]?eb2RǁEWo8;#!srj)4A1 ȫbZwu+ JR|yH_D6+AͰ0І3sm>eHg V^ѵ^uN*巌mn`Qï{"i]R&mr NKvgKY|!Zd>?{=0ܤ S천uCpY6cMI7;~HT'm;Pq*"L{SpQ05ځS:.<%ה6XY`@AnZh K Ͳ ^1zW#>>:Bp YØw,--4pݪxQHN; ds2\8c[q-D"X@#B ?[5v$T6.'B v/! xG\yR1jPYPP=:E;׬kmJ+.It0]c`6,<ڋi;yv.<^UļnεΤaQx}vP+u=E.lΩn,9d6 t=K-S42j>{To'!-է"zY`ڸϣ:>Qrj'vTlGH9GhY.|F"JdF)0iP|%KHOC|"cfH,gcg*Jmǟާp,nc)`1ء1oѐWUh(x;>VmNıHYmW.cp=KQZ sxxXv e0OR,`.[y΋Ȭ"!~-qN'KC,A\X,ա~fA ͣ(1SL, #ΓϚfN 6Ck0rv/1M"i2zwCāɇ#31j":{[:4ߪAV ȀͬM-4RpC4*%hxgXD;)Mv9 {a AP Ϫ S+&=Y1KӉ{ABQ2E_SGHkmli*J_W$9%> 5BD9m}fBx㸟WŒw3+ŋQ )u5ڮv p)6p!F. v Ѯ" .cxHRFI.Dg^$rұoo ](ibmڅwV(xWH?KWw4ޘ![@ !=sT i>Q>\>bžqlo^1  $ 9oHR$D nS8ij Sչ Yᠬv N"R}*PŐ9(ʿ?S)8M öL_iWF䈨('(Fz&A>&|f`}ˀp)RY'3(aiAđ *^U "(oK)6H Ԟv!V wRA83PB1ܫ%ɟ:RѲsji?=ԅw\<6~ %qAOm9PQt|BÁlӴEX[ʅnJӒL$A@ib`rwxO#EEf??OL&j5+rVĪӴ8[&վ?D%֕9,j|3F8+[F7ij?T0|85?zGuGF]BT@V`567)ZʫBNj?TK$>>GV-d]~Fm Rds1k/jY?MxZK?g70S/8ɿ'WwpMzv>$ H@ ={in0@y~NsRt_\s?vh^s"^AOl-Sv\5`i^Cpchҫ<VdK?]~_G~<Ǻ1s5,ii!˖Ow>4A/q'N-YvIR4( Z6땐@wƹఊI79L(lB3^P-]yi[kp}Jq?7P[H${Ì {ƟB&EH_^1YDDIWy d܆=0^)ZM= WHx .ga.# (M}lzTX ~ۃp S2H&pt;D]mZ.>|'wi,ӗbhj2C@*;A2mrt)ӥ𣖍-6s "=؍)FNp '0E֣TZudz) c=C1fW]\1|nFLiRD0lؤAB˫>Bϣ 6^kdZA,^g&H%L@`ru1}e.;81pp h[YO I1o3rjͻ9ХCv|JlJ>݅$= GƪJS kXiZ@*Oe!#M;- BXGR!L$Y)!LrL^DŸLB{ڝTLm/N9lD+3f{0v`eZ/ _ratYNenVS5_jk&YVEg AV_JgD6Zq̋Nd_PdˆKa2 ; ]3{ gG#fM{-WX*- ׌@DhJI.0~6 rFA cw\0fcPi_Ich_TYiģOO5J+W_*(Qn~kBZz^kw,l[N,lFM]CYZ{%^|Q%{AC nv(z:Pd@q{0]!GJgPT'H7Pw8>H}l8ceLGO:w3 |+1#T_lߟ`/Fq Fwжeؙ:R:+:{9uWYDʛ<ID\1~m}CX;1xΫ~&:|dBxkuktLsڌr] E;L (-EJnn)So JXnܵBˢ1=zI]>.rAFM'MZs@!s"\\ ,ߌK!qN3Q( 2<.Q{c>ZK##PV#2:C82_5d@@㉻_[0t<'aKOv)J NZ hI-(c$r퀇'a_70 ,޼Q`7&ogd$amޯ`ycs:-z95 2`6y6%emVU iX{ceQ^N7!ׇzʯ9g>wy"zqG5i%VԬr`Kq٨c=!Ͳx<1;/>F4=دWyrЂ")L*,VV'F!=Om45,b,@=!Չy]w-?%I:4axYfE$1i u~E^m O7S#%s ^LF㈬:>+= %'@8Ҙ#|ߙ%]9w W[wKPK ,' :ؠAc>ҧ.l@zt\=J(~Rt=ͩ%C0eS!cQKGZL'skkQ0+١5a\fn"sp#f⹬_٨(qtwHaLsvJ=d) N#`Oa\GI5f/(Q&x';ؾhPN;Tgf`M}KzaV.IKdN1^(ƪCbJoS_4S-m 1[Ac3A Aλmt$"osR+X|^t3cyQ} Ov%܁!hiTf%\ I5U1 FJQ"[7vz%u2gڐI::6C04~̏MƁ݂ݚ#Zc ~OK5%-OMw8Fՠ# :462yE,B? EO΢`+2P  FV8muAQlt;[1gB9ڂ`q.J㥀ỀLZgcwu`pCvx FT51Lxn! ¿' 3<u=_`s1G]b V Nn tvi2ttLg)3Q|4MDYʃ 'vN=w%+Wam˿.[(>hπ6 k&NJ3V!"6&!.|0oJ_5d$_XS}Ռٝ;f7eÔQqysNk]Q% {'+3&/׹k۠"mOc!>hdA\O}l1u?χK~YPOA.<\d>-M57A=W<70ȇ ^a~ hI99}qeegs4b]^Lz Hٶ 4;@5&E_uyT/^NV^ vϮvPH}߸='oM$7BE2\B^C&4iu)N ͌. BM tVdt@zxc&8(-2E/RS0ud * p/FU[U֘t x̟=aSץ ZSTtb^kq>Q{2$JX"0;2Ͻcŷk7Ԩ^jTTfl}drLb8Mr+Ç8ڵ5H=ePQJzI0ԓ+alt㴭U{"dlœSf*KdsfBX_ס-?j)ZsXע4iWu 9l$JPY=D3L5v'q1#￵ wGfzNwΪ EVPI9s~_G=='|ψк mz0Is]y9@MF.GӳqVqi*zK7M'"N*fLp)jw41'=:Pug!6(fj?6NELB¡s #1JSn˱T就4LX\v^B*|νw RpAB|zx:QIwme`RQJW.{u H(_yv%}kᡀKlD6jFlka%^i6zgmAr!WYJ垺'k-RHf&w"}5:c3d:!5ʸ&;aIbĠs7?)&$!ۻ>R7-MtBG{7s@7!ucY__k)'\N"_;m:rbz(SW Pw[{y(S9J?2.|9dHyˤa`vא2@„ ]|b*2B"푛NUl Iܛ/TAC堔 *|f/ȶ4Φ VA߇(1ʸJb ;-8"c.tK;銜Q.Vh>qp?\q{;$?3/*0u^ڷO&)@oPwA4z[Ut0-`9ߦ{8 XKcDfN0Y9BiI#)b*L0PHn;͞fTRV3ncC=7J0$rw؝C!YT2KZxMLꆁg]~ڦ/:y^"hp?EchVm:.\o0'{$o(mp3ΈgZ^q/IL@TC-Їu9€e*)(Ҡ$9& S1>k0>CA)<]D9s9PU6pY8', Z|R!x!d#Og{)9I|+Q ^:W4Hё9ҕB"i,nFh{X-*Ւț]Ⱥ[;P ?\Fo򢔷Ӛ}k7:twE6jy)BGQ?6[/2m ߜ$_9`k8,Ì8Qdx &/%?ΒR2RH\nmss:I pၭY͢Vwz=~H'~a-^<TĞpx]d>R7-@F[@mO&'(`i{r/٦Es R^q$?0hy IV euevu35Vv,UԄJOˡ{=;]DbНs˺w5,DQ7 _bo*+Em8-?֤M2ՠ:/BHmڸ] TftjƸr3# cQ9>&EY(ƭcȥՀAq4i."5'8BG(]}eD; 00C FWT&n 2 }kTrV<3};PjwMLI}eEu*7v/y(70跧:^ *PqVǎSA5Dh|-HWXU0&mVi+Ť5iO*'y&ujy_,1gs% KaNWJ器EfPqwfŌNrmۇ!J!#!3M=[;EF8D e+o R!kDCCǭd&s *^W"3W-EvZe56EBS6 {yW7*" WPj\& |"e-9kpD=ک9~kd/qbXXMVo%Jr.s- :XnӜ u=5X%6=p_~{K>2ǘ&ћ9>.kIpR'ZsUoEdR-߱|D%]K.;Bv*`Ղ4Ph aM֥r鹝g^L̠$ڻUm uQt!"AZ"Fp| X)ng|UFW 6deBi."W!Jڔ7>ʒw8:S 7 eY2MY-dAGj/cêwk; 2|Ӯ:umZU$ѕj &5iJħ:b# xatfd#lJ+Bõ5/&6XQ!%z}Y+ Ԩvhmd>weS:Lj vz4a_!,QMs'58Zm{N2ĢRz42GnHtͥ29[%\`jteAJF,;ISd,xI:/H|,d^Ĝ k ۖ.,SQ=y]_)N͝L2Z._%x*JrżͰ` ^_?6>U26c㫅}[J~;_YE:bS3ܑyY# NV\q0;£Tr3} @/؏9!ly/69. Xd1PĮ<|Hc"Fx}P3 m_/MZks1DN3T.w_pIL0x҂n|[>]"d`m׽v5GUR®7C^HwNiK"܎.Qvz8 7Wv<P(=HY.H᨝M9Aޕela&YQ`8֧@H[>Qҽ([W= 6(BPQ_ţ{p,Ru_2A@KoJW1ㄥZcQ )YA2MTC-T/o+=^DZL!v]~=xT`Umç`p^6ʍak 0{>UKl`j,-0V'D~z :ՕIi%OTY#z=kwW&r|Qe64S ܀'ʁ-pS3> u450\m6ql14Yω'T#!i\eN}"K+2kQeT:) }TA:DJS6@6J '}kf93<Q儭ě,*>r7(` )۽J:37”qc(5(G <j&- :GѨ&Q?P*h )>/Ox)C~Riǻ@:'vMܽYHy)J5)9W]!3ACF؝A:yMkrTBtzeAJ$ v䴷|B9 ZwJYjH2x |3L]-ŕ5T1@i1@M* *MzrxxHQ*!Պ Mǧ6z_&X{ J"Zl4l$_{F?7JRYZJA?.)HQJ!+|0 [xdT7?SD .'(xlQbqHE4K)IƋWCK[:*c $zLoЛTxJXItXID4 0նЕqt*Uwr_N<`pur2)f'a /UGoߐ^ 83˪4} JoF]Zv/YWLJn*9ΑR) 툘s a,lVҡ2~&|w_0MOvO"bm2I* n01YbM"^aqK]n7(`q('1_m9)caRb͔ź&r>\poskk`ϯ 5O8naLٸVϣF9loFgxQǬHldU"׌;4s |AܟSZ*&0PX1]'B\n=ѻyhy1{324O|9oVlk]U`hnmƛ? aU:B(th>o)eɹ>$A2f@V8[^w BBǞFQ|=-2b7yo2{25LabhO)OxAǝ4D{~?^Z%r̹T_a*PWY .9ɱ|Ռs1 T׸f8h mct[i̚`]c0#nߵ̨(aq/["siLr!tBjl'}#|Ok(Ң gIs(L]l%q)3DrzѪl|VF38ڐ` χ_Ev6ˑO9?K9\-{{č đQa9<.< 2(}sBguh5\OӇ|v~{FD<'|{ P|GdiyTD &FC_3yIs}1p4>@k{y75[=oF%nί}4ap$*$lʾz` ؊M(UqdGRy% h7Pb>$ f뙃$ h8Љ _kk[|_?!s[bFH!݂Ȏ +Ӫ=VA/\ Q./@ أ ЃIK$3+ EGm:ȯp=V1M6+E+xm? ֿɼpr!lY4L? sK6GRQ|]͗5Jί!dk&_v taԬDmbNP$Z1vWå2I(Я}v7%mndps~ňZYɋtz{B@ %(bS(K~GCPneIĦ\Npp2S$c;9l$nq6}I71_ KeO?/NҍCDbЈmlGHV0FB}sE'uߺ ڴB?Q<I|J^uE$"}`҆4@`)A6| N|9tW60tii-5[zh)w!3tj\_vhbY~gtge$5z+S! Pp xƢ[rn߰_T}qgάL8M(D[]-#;h|)drFټ9ËMr".3\e ]CCfNsJ|& vrSL^@NUQ0T!Y3/@B5&Q5{l^$Up}|#PT!}EaP#y^-ѳ5Cq_?R:U;Oq,m"`;*ߨjۈӄ*BT4>k2.9]Vqv-(cq9r3CiFgKB9êpFDu/O>t9 ~rwpvUo3a0U k080L`iRNXTX�aue<;10Ǿ3ua(䁹gr2vV+ku] U:iUN ]ZPI͝߶!*๱{=șPeiR}קspl3Iǖ4(c)i(fϨ͝Y5C[Qa(ᙄnمPdBjt -:Zm$O1hu﬇W[M=~kr>il zy~w8㛃` ?NCňtIYq14ˣ#t;.z\ibEJ! ;T=߳LS`ŊdcO䚫}zKdOPxE&4i}6` W5G2Q'\lݺx7Mᨿc'TjTZO՝LTΉ-*}al?![?揞jR<0%lh33w"#M@u" 7Gbf6,d¥]d±x*Tb[)uSkJaWIS I~6vM*XH~7꤯P(h%V=#!C)U )GBa-b)QZ<]"q5Lo~2+׹=Sk@毰{bv=(sFrF2;w)%<NÎE aӔm'Ϲ˳,)qvH7Y~e)?x48mlL9o\MHEb}~Ff>i* ݶ39Bɼ(<:lF'Y|ӁraZR[߉M`f~$ +ΨG(FDpO`vl4Y8? C5@wD'p-^kB䏷Ux@|*el=z&EPvqLbrq֧)bu/مmxL_n wsZ'_B U."}+E*vi0ƭ:cAJ/3@%b\6UIщު$ёI3a, u 5b"4dj|Z:K(nD #&bsTG,NNOKj@+9N|lgVRR9D 53@AV-.hM}$# T~x'{. Niϐ硰1ÞOSaveP_ah)c,*<'0}C?r 6BXZp`#r-l~JUw 5H&G!'v27s%evѠf\^~ܪ]cW+8x^{:(Hp6oF%v#ki E"_i_+ZY(3WgBr-&v1|5~y;Z9wPfES Z0mg#(wGS_mZuZ}łI[TDp8XzlX'ñu~@ȩ U ;UU'J[ ~XjMA ,|#D7Bc~ҸԷ#ݚQY;SD%5/6mDb⇐wD  h׾ +h/o4 fF5?L$>~2pII? CBj "jՇ ҒYX uν׳ PXtKcZ^큘K)C!%vTr JU< $_S);]LCvH@\é%~s& 13]*w rbe+6_wFZpLZ=?@Dt*{Z> k_RV][W)+,'caSd/+qN4q÷OJ{Ʀ5׻,(.nB9P J1_'lLx>@#L_di.虪2V|Uׄqo.*S* _9(t?tM! GpKBC.~&弾L7#~;(')vxYK 'fHa};U"]IzUv)VITP3(>kjVFʂbVIw`97:prqq VӮew(eޠ41sf6JOFP$sq(s=<ұ3pYaJ՟? t\f8/.'9slԌKֱ8>GfllK-= v١.nޝZa]ms/EP1wo#XC۳YMſ mwK/r_ ]Kg5\Q_; t=G pr2/?P]u/J 㝅[(ARN",FUe$t#Ӻ.=UIMnmNjY}üPV* ̫xm'M t8^ܧlj]F5nSY%h,i~:/qC}0<'(+*Ol9 +ktTy\y߲JpUDte3V8p6y: DX"kEco$GwO8hVhv*ix;HٚJ"F~oH}iC?xVd^$?BPDȧ>"J(Ʀe:_+ɾu>Dh25_K\5.-6S%j)\P,.ےG˨B Pl8҆%z)[@`&5FXI%9˛lFѱyyRR C;pp6 RT_A~HtMC U}6ra @R,STODxȇ?dc@`F"*&SJB GN fTa _Va*)I-Pb4BegNJLsaTwҤяn{7<]F F G:[@S}~hgc0$W]bDΗϊCg ; WF4Re)m00[6i8#\PD^ S~OA |H?{.>s?y, *_ps*+? 2@YIJ$Aav*_",CԠ#% o\ޔ<*+wrONTg{+b{r?r8.jM΢EkBԎCBg8OEA0W޺IuvJZc`3ZO"љ?vKɳkh _驪꺞D/j5tHQf 0Y 6omB䢄1`K|gZ!>Gv6O3-l(Ƭ{͘s>ea= ?Zf(3  1+>$R$ wq };ҜTcUPY~bOugmJ |b u^YџmgIC$jPI}@=Hu"4>of16oZd"oN.]=z Akðg|2 5E3gJ]o J{BG̓*'VrdzO%d]lf@V fa>zhPD^,A&\˄"E4UY@F+M'~X,ƣw ] ˶Zlւ2^Fi#Ӯh2A`1uMCZCuQ\|^Kߜ&v\s`)IfЅW`J߾4t]Ho-.Q5ȶK_ ^ԂȻ l[+'ѓd|K@KLLRq;JyLwҀ|=qOƄ^ğGT;Ict[P',FMm0?(ҥ+LSEƢN{ո6Y8/eS-F M\4EO~RGsveb% @8f,YolXѳppeB;3ኙ18iAHKѹї@ݜcw*;8*W@ׄ?^$\m&!mM-ENUNuB]b,KRƣby?*@`'*,p{V/f0@P"6W6 oлV8W:Gi.Bkum|HMJgvh0zerGG0yqQ6zN+})䰔J[ $ ( iԪKY(<8}.wv cѿ DX]Ig*t,^j޵)*ڷ(YǞe ^~ƞ9T͛G%ĄNTZ*8=ZD&QHݣR- QشctQ+k@qIrs*i)ETjTHjI8l(2DֲѻFlR!.WgϜ W`B`ӤHmb#+ 8ᚆS"'zQ!+pTE3<ݡ+[!LkE @{Β^[6|eieYCtEɨeC  S);asC)j!.j燱YhHeq$nyw> 3I݆M:;*Tx0?oG,"p%8#}!v6B>^dE`]h"M0\wp "bubl7slVU|k`ɗ4a[LXbѓ4gM`!V:RH'pAq /% Qs+c8N[8KŸ7 CƋ%4&rhNi<; <֚hVvʥ sQA*j=Cʖx>#R`%2-æv%h 9@+½һ **L\bR8D>*ex|N$:<TLh:AZXK YFE\A}T.zzp-Z)(ÿ{|γ9ת-T(` ;IB˘;:K_<0Ȯylr>*a%hAvwzN߯( zAJ Jr8slen3z"q'<~C?|P' r D;I| :\d О$ÛV-g=Ӆx wvsr˾i֪$AҹGSi#w"yv:9y c1d] cޕQŅp4(`+fWLjtshv4| 3Gt2.[u]Rxw[Mk[:zjBY!.F2QbغnoK~cvq.OSCd57Rb̴-t_nNFJ&na)Sp[^EۧFֈ fs?v_EC]uhG_B =IL _*n)[%ߔAK @9-%ۖ2ɣ-e)mZj:j6kk? -Q;-pӡIGvf 'L!+E?J>dn=߃ăog\P둿 ؊Z5Iͼr{ˮ0;@1tR]!76 CIF~T!-^Q_ Vڇݛl8Z) >F1vO8 )̒ *Wz/XX25?2$Wg~2qOB1GiN+.qU/enF ::Qنaıaq wtLfQ.Lsiz}+<+|g5/1qMN|N-7-&D$Qjn*-3?$s|HNw޲!yƳeU|MII .>#*v_3F96p~ƜOX ٲq)崍"`{ rѺngXK vpC(ozN5n˾ AɓЄٶvxBllUmk,R"Q< ՒgU5ipэ(lRft 7M;W&}oe4|;9}J1& cN?FJЛ[em[M!@&إ2(vYqSб+e5LKD4]!Y-7QM@ȓUglS4PVlT't`ު~pqpz6ymSevibR eu=lh7d`+Dë#ΗL0/KH\X!$ɐ:ƺ_Y..l4" +d!TcJ3n|}(Dkybpԉ$/j(b̴ \.7jNL!G2Y{"m| a (c;Ft$# /žƗ抩^k#,H^ʎ3}f䅄MXK>^#AW~stSys],]Sʲo>!~%7aةAX!Dk"/r7t֥W]1nob*2<.sgd_ᑤa瞩?XkWQ8<bХ 73'ؼs~<3l e X\Td35rdWj;?+Ge.<"N.Wky`wsD@3Y8}ך5g_ (@QTs!>HMU;wL}0HʟPP?35ǢL<g}ul`v;WQpgLaߌ/=S#?,V (Zn4W_kz8vZ@?<h ĐcSpe'84,V9L?0ХAN .bpU!X[ZY|~A1bUpƾcOhn dxS697W~t偦҇R+zCⳂnZ!N+Ys^bM8 Hk𘿖W=I~_ Zl׉m_MͱCR?n &OJ9XYRAy M~v$p " ȨۙpC䜪/gkX€; {!v'aCCM 3RJ/>ǃz=Q(o-ǜd"-}zv|N ;`0\g6]jT yj#o/PܪE-vu2бUHu.]0x8hY8=|!GYF IK1F?)٨Xzpp}Gb$:CfG.Ǣzص,ÊU1hlْ͸Kkxf$/睝o=y P@v3)\< ~BX`ؖy!ShTf)ʲ??ݑ\.r>KM5Wsˏ]mXn`_JjHM. Q3 'vYjO8r7UTtZ FV16iuR\ϗ`_N~7)û(͸' jxF'z(ߤ 槈8$Zz8`EƖl9DЂShu9ifS%l*  ܃SC7ЎfFkހ=n2joZR 'u?ɩqՑhT\@gƠs3ؕMP:^o0?~$YЧ&ʨU⶘4"}i?~PaNLmo^0y| iC6  o 9n--?[-Bs]ݦNqc&Gb Aia߈nd^"%n6CQ1+^qeA/\ V@&m;})%92i "*APlA^/#U{Mٔ )дqfq7jɸҁ<9~DozU43;`DiyՁ'/tN$/}ε 3^޷{Dyv(]ԨV .''0!G3=΃Mw\$%uHo=DR %, ɕEVnB43Top;S|ήv)/"xwѢӸ,TwM]PCiɘӦ7굦nUm:E*DOV 9OY9,R7AnlYEB79x׭si߱K/oGt^NU4:.PclVƺFC~=cj$b#4[4 >oQ>0vGA^(qzA.N"K<ȹ(q4٩F/V_ZU]{3P0?wwQ$@G7){8h6z@eLd6ԉ?h].A8Eselyޠj'J9^(hSdOʬIco,#:oT[,+Q=:[z6j$#%ȭ?f>e_ڴKx {^6GV$P_޸g3Ӄ9_~ہ9\I$Z0K%~ZpdssgB E#y3E `}ßa"1/o eWv;CpU[2u_ݙ=Cf꽳G2l3HÚ,CbVm^ȹ\ZL@e3l8D<.DserR5>[_;Ad C:hLJRLj~F!,‰FSKtf֗8񘭟hFa!5 짮Q;Ǜqc/iW.Y>)PqIChOY^w鐑C925 k${E6"᜽ b-|tKM8oGG33D6CL giϷINDܣ/H#`t種Ĕ ڬ<*_o t4B@z}vnJv1?S|>NOz\?H G{jQVMK>!- ƣ6,|@0 rêJ ]|\v7)AZYVJ3131OKn48&DyQfjusBYj>@ɟ|3!|B`!r;1Z)Bǫ&ŴKP!Jޑ.ɗDÐ Uo1cVvuEQjU1޹gԅ& I̓pH䅡m܆&g'׳9shy xv 0lF09ӌ,K7!ʄ)y'8xcm/֣- XޅX]g; ^U#m:Jw5qv SqFE10{lPR&ls4˖|{=l-ٴu'ePTB.]fR!'݊m& +N ƨ$Llgnab}1m,2R;B[6_@OO|OԴOT/6l_⒊ga`r[=K!,L!w2 ŕ)& Mo&drвc_oX$kHi҅о='aFvunHMq{Uch6䊀o^yt04 |+Te'XU}1~Qg~AiΩ$S 'H [a3/ Z:tF! Вi!|7lBT ]"VKr26gYDg/y;4E" cH^Dkl`)~yH^Y1͈`ƘDDZa~+ ƚ^ܤ79Mr}_FāDzKZDBB?aa\ŶI0Z(nRMK$dˇ n FJv !{翌2/\6R5yoj->Ƈ@:v'"=Su 3K&!9b~፴F$5B8v?Uv%YcTftI\SŨnbNA+>K/1?%A Uz+ZPqE@UfC";k%vx rBAL6߾ IDjD?;Hq{fʠY[Bh-a :jn|W3 :+c3;!_ԴLĴ?eBX׬ӗ+W2\s)/Hl:ОCkI{{yAiS}VB.V>&5-ZyM+GNjjp #mOi6dG> Ѓ&C"!eP%Sע[wz0LDUq+ USV `_t㛉-jLf9-p%RD!N:į(΋Xѷnf6w+&< jFMAzU:hViܤbQ ;v6v"ڣ0gȫfbDkKfԩP4fvI7< b1[7 LߑO"0Bz>E*O`Y>WT~#w#pe+ZŽ3\s̃u&NG_赭BMO@yܽ*2/h=҅ABz2(ʺBXbo*b|JhL>Z6D6M?RmyXgB>l'ߥM!lX <3Syuɢм\{c>|׆CȎ}\U`gtP;d,jNl6z +oy@S]*Աſnaө7%{>whaBJ{%T*a!\臼_ƫЭ%KSԝͬ@m`w9b9€1~T>!kGdzߴg8Ċ1Y1:#٨HU7+ /:>1oV)޹b%c3"GM=Iif"Xfڈ"? Y=i Dil߾&c~M k>,8L pn!67GX}yPJ\C,0ue)(լ1!ٳnL`Lo8![_C^zچ$KwP /90Y=\mq7!d= RsX 2}CTl>z|eJQb֮}Ρ@m"rb)-?!tYL]qX>B{IyYۋBǃH&hMfnhKd6 ^(#,܄25EqhҜ2( 8jΑ}  i'tBP1^|q#L[BLu4U%&(S%BPF"#(VPdO[#hCo"wt&)A:턅SU9ITrA`nZZf}7t9[F 'raG[L p4Z n7}3͵Xa~t?b nShq[lӑ!`\ߐA7Pk~^{{ /#@^ʹL#ax@jG4"Pgf$!{=狨l|?CIjzcS7HA {!:&;)47?<=e^N/S+wUN#g60NICy\*ؖ/j>^tKм <ȴvArHxSBXEP_92a!WV u׫187[>z͕d P ]0bBB7R6&2`  .s0=Ύi;LEn ۨ$w)a5$JՀp|O?YH;D$ȅPy:'f4rUWUtG?z0EU}=E~5(c 'dDBT5|Oi d:S{i"9=Xh'X:ktcF) hD{!~$³=x^T(op`QAET Y~F@O*m%ڰq+pЀU-M ٔO`ʢaoП6(<>.QoVQ݆%?8bv3].YgG}Dig_b~i}N"F%45/?[3}/;kQMQבVTa%DgyrI%X]ߎrmDzcJ5|UQT,I<&2vE8 S;ĥqUD5(\tmUbZJRp $ݳƚ;vҶu N &u"b!݁ aSV^"1riǸW}[)Q 4mqR"$E\y{XTch'sA&XtASǙq.ZISr&|>_;Uz#x!dG-n~# [d!)\6v%l憾%-{n?2M+=ݸ?k.n*FAX.u_G{(|; 9c!s|lcB@M#"v՛P9 r@|S5ܥ0I֍h.Mq/{EPO\ ma,kW6:ZW$?J},`B2?QNأ;< @iߜ*mw45^V/M38˚$%0$5ɸ&U`o*:BTᬝgzٜ>Ʌ/vv~hĩJE]Ot_7yN`^^DYeLjr; . 1[{/M؈Zabo-2j~[ PtoYTĸzjWXΠYk̅6x:@SCd,\3,p@M"T֜O>!C*.=^{hij-PI@*wj3vʫ\ 0-@w a`LCе-lODvin((6PB-[W snM Xn9R } -9{4;oH~jk(S\\FR95z =rX S9+bS(?a;^Hn+ zg@<;)*KC c>'V{eUg8qI\EjOx|C?Tj^9WʮA[|nND_\0+0g<Ue]hPc͚N6|x+ װm޽mx50j=ibңSK' S|~f1o)Ą~eu(&D,`V/3^}Ӫd<>ELOGmj,ZEZeđ\ k˅3?5(|/Z=BCf[J/6.G)2!=H:\H :d5hⴁi5n0fY*JpNU1bOh YXDtYu)@U~PMj\@uİ .O26”-Ɍ3Q. G/*f<Mr_!u*=I!9gp-C\Ect,xS#֦y1i2?%:i],,!}p1Ze~RV9Zo ZDo7]UE$bUxbvi>"p_n.Drij o7,oGx_u/'BJ ؟TV@Pv1HJ.Sw3p?T7i] rͧ)ZЖ&7zq~'B0/")))Ig U3̢/v!>8HzMD6%˵]a"p 0Ʌq=0HNIͭݪFO[.6Z"$梪fmG_2͌cT?bGA"`bluZQ88Op%#LC q1 ;/ n孨Cw4.;x>Erw.}eB]cV{XE0hrԫrq?&vdM%IB=>2Q_(un9.m2 mrDw̩yn=s.asg ߈81|lp(hBQNI}PB.zj #(f+A N_k.:a ]QشC$:\87Lct7U绳14g@/B9Eyɚ\X76d7ކŰJ?7SPOq=&)39_v &_A 0 RyuY6fuqïkQA;};Wؼg_~oӃO=Zbj$Bܶ=yE m&u=Ayg/EWNYDž7Wa X]6VyyoA LЉܴ\fjS2O$"##Gw`\48+}+Z|.#ظ ΅h-kǐ@lⱲ#F`]ʝ꜋JDj =KgGiBo[Am_żʈ2_qEzNĊ.ag| (= A#CIs}D˽\eBsq׮%FtЫvVt-5Gօl%+xೕ=cr{'{*{U-bfI`ۇgt(5vҎVh ^MY6rMmN"3e}zHVo4P%K)q:ۨO*o' >Bʟ\?甁-W9Q\870 +y*AM^ۭ|ݶ >3(ZKO0]24-$vþFLkqʠA\ jJW`]ԃF mx-6TgF ޹<tJy$^0;,SR ?P^G~JG:tVkPTu w?L ͇S崹(Vaׂ >ŠdLk #e/6jcAl)aG'NߔE$cqTMHd@Umo;cLJ&* \}]$Ցb5#6h)p7pP AT> APEv0mK擎ԏLtx€85zc4 [k@xt9\" a|}kMrWusԨHt1(APgy`Ts$)hNJ # $+ 'bH+EXDFYiv %[DMG湅nmQf1NKPD|ޠ傰:r2"ܵ'(ە{HtMczʟ}cJ|um+B{TT䑲_Aj77ʲhw,kLEx¥F)x đC5~FQسMC][ى(<('؄Y%` N*#M8It)|uV1=iCI6%.O}(a?+zl c49WbƱ|f60|voT !djktB3"ǰczm΍@ VȀ]UGF (DAx=˒VWsahIԪӰ284l!can"o?NQ4͏lI^aw1x޳&H0;;K[h06'w'[;qum\% E^M\&Pދk1s?J>J,5rq …X;܁ee5N? #?*/)m(BiV-62YL (:<;p.D@Wxn/0۱.(7Tw"m-\;RaFعs۳gTZ.iB|`^y܀Sw!"Ϡ0F}3B+2Z)X70bݻ߬b9DXw8Okh=!Vocj:p VYZV"V_U=8g`e=R1Gav63fc5P zw $cn 4}[4)h2/L#csTСؠR4}WP@Z渚w %5vym.=_k=?բt ~` ]%.F]G(Q"%bWtNosk;ed jme Yڒyq";DY e@o鱺bmb[SbMj_=̦)4vUprGhP_HF4E\/DүO3۪.0.P"_g d^oW .cMJ>I4QqphLci7>x9_>$}Bιw_tSh?_š"~O ؈q$^?Br7?i?d~JՕCjU.Jaw)GĮg\d*F<1NCt2X/&RnCdu6HT ךsl ޼hY2 gbQXC|-SaF:x5}2v+2ߓ(5n⼱Ցiqoqwq1`:w9RӳF'+cXVDS) :ߺ'«%oͮ_OEgY#N!X**>;C%{7"\cQCA`(-% TB1d&6CíQKJѿwR':@̲W0Z6(k}8)?%9!f\{1@+TMs߶=c~Yڷ0y]}jnTu,Q< 4ԪxbEaEa:9=֊Lf+_;1"+5A!`'(-B\c +_LqW۾G|XYhx59 +{Y0OP?<K8=Yf?trjO)<{}很[˴'{T|8}jn`y8"L 7<E#v*BEd5Wtv F5M jh9Z7۽ #R~J-4L$ "U[֚^ڻtEܴW?o /hx֦_1d,Zr\|Xs8Y\włؑB?.DurX>sK-ߤ~3k) jqgmv$זNm~܂ ȱNDgJ 1ұO 6Vν@=:~+XtCwx fm;31k:{*UoMe ?lFCW)![OI+\P.NT ?k-,Be@BM#ik.DƮ[~̈BT7kOnָNqO E'~? 9!8yU2`%6_g%؛(V1jgP2Q+gҽLHMYAv&oKTSSOEapLu]BH\]ԛ+В C #]0t:B:Szb ڠ+dž%gd&)PrX<ԽG7]\Wq&ؾUm$BWF{!aSڹK9$} 5:䠳xfV#~2^w2->`Hs2w(Z/ʭM^Yfd˔lzo^ >U {c{݊ ph 3khwuƠ( or?ykRʛ-hP^bw*~ gɰ Phʃn]l` JLQ)le*An[[svtRFrew1kM[v3'ӓJar>?¥+T 5{a2@s]vvT]e^f?V5ڽ$ 쌡;D;tI ]asV%LSe~ߔ=ut%:W2mQkLz8WX_wUsdMFrGw ("lrƖ8 M,$W~9S|e Joٻy)>"ɭ+GƪJ*`YTlA!Z.)W卮EX y>cqe5Ms^:j HG\m[s -mv!l z}gUpA Vynܡ2S-y{^\1vTσJB>}Rٳ2qL1 _V+3Nq%S`,F\JCI cR.^$U^}bIpVreC(RO5.>Ъ{mXFlgQTdŖ-z XD}[N\U'IV-˷,< %MEZ: ׽m=;H6e?L]Ⳬ]3#a@h0΀}ڍ,g̠BOQ*]oDFY<{zQwXd"3yG9-˾v$,tJmd~wK"~"Uc8Ep|Capۛ0ruF%AR2QJd;h#]/֦C'qK'lcv]%Y2>,53KIx/W،nx(`֓# y ^Bt K9I=i6q=Jm&saɫfcq IxKih0>TOԼe)fvLHmnjOM(G%dR¯ kfpc3.xhkPxxޡe WE =\^6J`%NkYW"sJ$ 2QKι)e*a_#7tCB1',嫫 veE7͡7bP1wFbyh*l_?_çQ;Vy"5C&Nϼ޿  2.fp%#=*< É|J-xC5׌Tªtn%e(>00bBhiJ[,( Ұu]!}\kQemc +T" ,n4]idôȃ=O5$%E^],}C"Re=k[exddEgHl,p.с59N5ĸ2JRدt4 y+bP$I;A_]7 %$ٶCfh6(0߰A0^1>Z?\9]148(wb>k#]89Џ|9LoK*|7hHat Vμ R=r.\|w5:'i6n䫡>bSAdYCC$ @i3cR:. -F6?$is4Jֈ=WlLLx?+ۇō÷P{lL rj X XhMtCMer'J7#'U]zβ8&t լ$A*U);>ToiLr:@_M8Sy1ZI"66Md~135",V[ȿQ[*sM+Gt)W#o7+[~Sgޮ)\G/&]5n0zMX8.ʠvax eyK~o6j:# +yVMߋPvuo^M_UƎ#W|Cy`mhfs(g0 X빑]G3rZn^\vʄ 0Jrb*.T²U. ঊ9*kیB^- X%C48XȎm,oɺtb^vMa4p"Gǻ C,6?WFPeH3;VO}ef߇W.+{ghK0p8kM =j/ ͌$4PŏtVO <\`$+e0z=(6hْJ拧 e؛:E<\ *Â5O w/0Vq2!q;I,.%i"QQ,Fhu?I7\k;ѝH# pz}P(OӲ \ΐ9>W (݁eR6$3{3Eh1ԥ(]b"rt"bl _l=[iPwXz<הּhʠu-8Q JR 0Ӌ14u7gZ^!'i[HROn2U I-8FM'?Ht`'3EǶm_2z );TxdX6}:  cWte5Z +#JrPt^ͬnfDZ]@ˠd1iR(7s> (At iKԍDIxk^V pix6~%K/S*Ǎ5i"v"MNZgX>$e[ӝNl g`5b+>x5ѴHHTX(VΖ')T]AgLȂ:!vlG*zuJX]sT%':D5M&;}$E7^JMZ(l<֤вF&HpYcUQwt[(ƛ _@D*S&/5E;jnuT :QZ JynC>rkRdnwdփ EoB 8Iv鱒nwF'CVT&͕:ч]= ?Xw%W AP^xRTmAŒݼj2c= BZN(+'Mz\8NLݯpj|As8yB3pB$I•Oq -*Gobt ŋI*|$"q#yY@G)&ИA:9kjCvDŽM.*(h&K ])#'R)F7M8d%"' Kh(PLc Ҍ OAz,I 6;܏$?|Ŷ_$d'Xw7. 2b1!dFѱ;t%L4R)QEIŠ'*ۭb7X9әҷ7+_y_圐Zհ*(410HzW?u-0G Y10ʻ H?l.{)|.'^d:{j !>5X\g_C!I=dv=Z3W*?i+Qя"k?iI L ↇ0Je'.& Eߒt~"ʉ|iz~kKb nˡ~ 4ZnwI_$ܗoώh}}E`!87ڙh*C=^'R2RK߶'t Ԑbx^t4ω^K'r/妪^?b^ΙOHC/rEm̰~/#vyIFZ~<$qLa!l~_IP)BJ~D,./1atH*hwxu}]fhe\5N[4pz4LK,Ш; 8qMk9夙nD[00ՠl~HC4!5MKPL@Jz -@թ RJLIǓ2 ɩtP L 7 ڬ[g`hG+!Za@VɁ$1$3$Z!$?I6*Șm5] 1:͓ \$S]/3{xD],VҴ0Z>hdfHʒ^q)սC3N-}c30[ROoOqM-ߚRZw5eŦ"C=?$X5bx$Zjϭ_ª#S,=2@`oyi HVb}kan$߆09#yL$/0#;6]d!@vHw*]/yp+ܾP[Lӵ=,CU2..?4* TEQbvY_+*X(U\N-v ViN*r"M_Zr0#re, m6nWc7mM)Q kf3ty@7;NB*:ZV[ET|?mx3p ?h߇3.nz 뇚ߚ"1Z٥(\(ўDKQ$TҬ|1ӧpQEBw CR$e)xo_h| $0~ $3Ljѕj7ό8])@_4$@ϒ'6bw9׎LZ=a'RfCS1A`"Wȓd/H lhqxt;Z_f0(KJW Χ buq0OwhDFWu]\x[檍ӢܯY@{3OG͂#.ڔI#*v~O-Xg%GՀ$`:`_H׈"~eiiDW<$Ǹ\09 j4 "PyVcӤ™0F2m_?(ZФ}g[ɘŤÑtcpz$>'?=9 ˍϵ&Ï9'6֏z>\G$a`5'⩢YOQc6.3t҄[)S=IIiua!c6vh*ʊu])D 'ؘsh xwĞdɁr!L9^Jd"RQ #拓}2#疘Z<( V53E:}d?., }`S](g >Z>ٟD3ܬTs Q44aD~@u0W۫|{㔍em)wtBКI8y#6)U-^,oXջk} 7+ 3EKnk #M5]G^ jfEFLSKDT}CA)uIx@I ڒ@}rŪ! j:8a3uv9w9NDAZKVX8q6XQA  #,OԸN"PNC>" AB|Q9+|qg=XJBw3Z'&3qWxws|ȇgsP']v/8%ig0Ӛcxqs`=S,ND`Mk( X䱆O)Zj}S;ˬӊy YB<#׭a}KcqǿN_Zp޷SF ʴ#ϣ36t{@CNjhԜXCEr4uX2x!R [?ߔ[ cٞȠh&Iq2eZo& `N#\Sc+^(o[tuȧIt6U8B,|cFԤ厕:װC.-TK}/IKlR~XKv a/g !bMCQ<] ̷>?[T#`e*nd %mk٘{W'lҊt} 8mB( XP)}ԛHHC.)Q5}`y&)8u2xA\|Mf7VN^҇ N;e“?'}Y#!Pw &uX™Nzq!ʳOc“j7v>~ԪN~GK!l!M0&k\:m\"B!L|)=.U&p}L_ݹjܿIPc"H|t<ԑ4R{ٖ'~BYyDPGA#SrVo+/ %jw /$5xFʔd?Lg;D$ !wE_s߲@?0tekyq;|$els|2ɗ,٧ 2}W9}js2ActO؞M 䑩%i㳽t%fPԚqGb.#Ϫ <T̔ eͳ ɃJ;,l:EAR>8[_looK ^7- 'N%H"PgR-=? ?}5sv(\|1)eEY;L~z'~O/Gu@! !iPLܣ ^zv]l}RP5tTQ|L*$Bb yP9Its%ǫGîA t/`)ֹH_'x@C?u;fnr@g0Nq0nl <~N$(2~U)ff62nicE|\*b=Lɪfk6AƋqY*cYuKfQ߇6$_(H)ܺs7m'ӧs4:bSKW<~]!J&)2Vrw83\]*!ɑI m4E4Y VjwyV&lcSp*+|f;k9^t *t^f܉P"6D,Jq¯$ _{r&.ZǍ3qxݞ:2lK 6cfDl870(BdQ#q֗.GԶ-"kSɽB8 EWx\M~=JkGVY'v+&UL,yI'+Й޾ Vmg#H^&2Lr5oMCʛ2@9:X S -- .}j2 X-XQLi7#[|ɑ;kPJb†$XpU-ͨ%B < !>%Z'z,L2Kr TJSG*&ۘL(Ƕ17<>vܚ2&#NX;VFfQN\xdREk/t܉pՀNi vYhW">n3BdWeԾ2/k۷^vg1Lk,G}y ^eۢg11{Z_w-DFTGqrSb*Ͽ{~Wf.K9y>3ꧢQD ;N0!Zr/EGSzK" #\KP}p0fbVyG;`fQ'gY ?3M89y(O nы{0-XQ &~* ,TpAL v涃Uuǭ/V"'|lZ;ם:ß$Gi-!U CEd4i٤Uhu&Á!%z,RomzV^YG9 c^eKΫ+ٓ,FyUlDY)'" ; +:M#;R% WȳeRibxstx}vfQ[]|,WeI~O#T.!9lA/MRәK Q2Z}~xHM9Ͼ՘nӠJm9=]#G|m0召9Nx.)iL Kh-#8ۯt1$>SxΏǂ?ړڈȋK3s Fmoutró#zLo"#SՉ1` e=Huoq{읨vkظC-pTH!tIX[(u.S]^Lq7b-̨ӡh^{ֵu `IH}2i =?9(J9$. IͿ'3O۹:K8N@7Ƚs#k݁AЛ63n{[ OÂYǢNCZFdv`1t$VCu> ڦSnVXE'<졩iRb S,fg)7c0;„ATټ,kcS4rg=p\?pcJ! ;)!,OV78Wuj o!]&8r~_a:TEr;wgK\֓rEoóavmBg .aZY69z+!aMĄD~FlmA+xo:XTd&X"}8*L8ӿm |;dXFohewR C\FJnmɠUrpr^(.3u5]ഖGnNa}>3u#@_ 5}YIjTA% 3)d/|ETÖ?7p2j{ ؚź)gMO|pNWQ&:+ŮNeC2DmE>H/`_ӣpeQrq_us[4|&?_!N 3?}Hĝ8>>88&4usR A=s(RT)j.89˳W9uҏGѤ!csf9BaF]s<Ȑx'菉ӬŋBEg7kTcִr⌲/i^_o5w.{G: YLP !Zpر;}K޷h&*u ?L~$^nRkRT=@ui`k+J1S jEnK10/>CgG?w$5rnϗAn ̄\=kaڿ~kc[۞ŔRE@ֱRd>/*!;UȽBpn3j9J1LY*4NQ "EԪ(IǞ r-m{vF}i?!'+vFԦJ>xh|+91zwˇZ, VLAt}0Iݯ9~FmsiQ8 jG/hT5m@ه 9/[b-/zE2|9g:$ld^8iNAC0FӷMs #s*w8S9!kaedR&’4^;?ЩEڋaƄXNn?G0LEyb=dߝg]+P>&WveК]7LlKZlT(([~|#'y.Q; Kh}=\gi6^fV]L^3CmmX rȦTRA[Dl@Oh_>ߨFß-|/q[vFRy6h9r+r@A]Ǧn}wǵރDHYflz}@Z^Rl8^M u'/&`f:n{+Ug(>F_jJ5Xm'd'HNcBM>%9} 9k{r<]Lhm]RMX?R l ;!BqU]Q.}Y*U ƫWDf"8i$քp$EYPYmWzDwX\b ]G֏_%Vbo%`WcJ#$ao$^RH}WAP fׅ+Or;` HJb1X|$8/,>o]4>gN ቇsHgi]sˊ,}NL"q3<> ovrیzˍl0tڟXHmT}0ps n;Dܗ^*BӰP8CaU;yHKoɜ 1hQ8rS&PX2:.Kcr>ߛaT*gvbKvMwiYnsjz|F,.K+!g=e(`7 vPXLuƙfbƈ='~ιm ToƊ׻6%]ZTIKK3ے͆4RVp2.KPY$Ff5Jr1ykEs(Y2؞S ș~NLRKnpW8q<JJ?'(*T)!lA'ӑڐUjs9% q;0ږ'+8L }3N(Κ࿃mYk/- ) {ہo>c>J-ntWN*Ί">NR a;c `y=lX ٮT_GK~2KRg } =QvtHMX.?}C\aWG`T[3\r4?KݩL {ydDZ2Kz<ƬQ]gkwΠh7T& /Az4%=psjnszjjlH)AFV&(;_1_bA+6H_d3Y8ʨmkA6rtD-DtJCȚ~"XL}Yvq ~0N7(#V@"b* 6XCZ)(A6-ʱZU~}w8ߝМq,cf/'e*Пˌݦ0DSR9f‰y}|݆"(\S}nNin^tJWd>5BXf@^9&nSʎ!͡2V'B _cU^ u&q;} =}2v;-!&CD=fn fxB/`9Z*~EHWy43gt+ o)We:<ݟZ:}X ~vqj%0FeK*9wxk(]{ezAppH63qtsPp#݉i$ɂÈW\őک.e~! EbxMvᳶ;탳BI9$l^(c]i/~;@iHE4tyA9Syy!.I? $SKPWyg i 3N$,y͛M]]P rVa'+{,qیs`V܅J; Ymk _ { 5.2Q$Pox@ KUAdIv/T}emGcj/c @y j'Eu̳/$O#2ko+>"X-A?jAI@#4Xktl4Pxp(An_vlR%1^v2\.0,?d.S;_ovUMn0P=X`y)םEp3-ya$m`N #`-|Ni{\~jx K5" _LV"ϼX?C"NE@7E^E%-:TL)tpӍ@љD~I{vGIZ*P9F2H,/ y2F?}6O-na)ɱck\7т蛣`dX#Id$I1 V 9g٤ҡ}߬͟Rx:0*iVpô@3nȳ--POzV`KY0Fy*OSmP&&Pہ FZ\(q..XM{i>DE G*蠌^3):>oyMdL5hj(@{LYA;Atc5ă=@YEB/Su2BiڻG]{iٿӅ=wC`Nkxh/Aq 8}v,EA Ro'Ac5hjy$`f+ܠ2mָF.XTtF :3>>xMXV  &mCW#țgѽB$ʌ鉡G"Lj.dP>`Лн Hf)}p-W7Z;D_)^w8^bTXGZʆ=F C:Owi87 w~45-P.}O编Vg@B-=,/`.Xgn3:)`8lILFl4$B Yyoxыq޲Z<}|,5 s'XܥVp2Bc'e@ [*tgU7l 6P ,kNpN{EӁPT),b±t[K]e` UxXXC'ͽ*]=ׁOmX4hx}]4Ӂ;|VW5A̋IvhNCwْMn% +8ʬ8J7ˈ++*_/Kq,NR9+k?GJmB^{ɇмq.Jv.wv&n6"PPrNCg1YsSkxT {GmCD@jL o\*[@Ki?7߾A<sO4Gy;zY?WuUJhZ@ uk+^򫝔mȪO frehX3h UAZ?0k৆> [pRi~K8wy* e ز [h ԑR6rf ߠ1`} N9Ra㦿k#MqS7B 9;QJhVA(MC$%u0s xNۊdKY _iqbPMƬ'k~de&T=gCRrGt1p8LɷE# dS;q^1öS ھ۱=D͹#_!G/< ʮLΗ&ba,:KT99_NM/+<+߽66/)ͮvƮ .wjIsVQPJ""qMح ehnJ[2 C,wmgwA M't2pZ}8C4ٖuOR\)pn,,5ab'vBIP ]x[L,Děs,?x=~1Ts&stR҇$bb=ѭ$-IY &T<[ tY_q}?vc~0J?&NH &x[&/TUcu3[mlR'8]4 7ڀCjRthcIV L[0;~ԭ抛.l@3Ͼ {16 9=j-(tP:=_phgiM?5+eaiP[(>sl  S;&e@D!E6 LRq;} <[ j՝=ёÀ5CqX.'mU1?&+ŭ8v.7ldR(*" [K˃x} q 2 R&˥W"޴yD7#KRsA5xFj萘FE38ah_KM/N/Og!]Ft .Ik"Y,t\2n@“MR/4ۓg}̀Ib cbF/dDD@J&YibZb 7A🴎f;%1.\!wJ ^b~pŢW<ypS/^*NFR͚6]$A +!P'%+$ u>q-)l &Ƶ{y'vLގ=I*;iɹ.x&M1t $ʳd$xz4_)Ά)>nuKYR .5ފws*=^oųs- mW.f m-R|0v.T 6\*\p\je.ߢm%ӗqz'ZHZq2>wW _WGD@T(' e$}6I]wO=<{7YKؤ ^fjKxVkP*3o$uZ~X[i>eAs #9(OӐKZfk\ײWYfYƐL<g(=~A l9b)Qv $S/m)PO7b6`>7}a屙tC Jlh't{$q_l3RgoU?:h|#O?=~;&ީhA&]v 3^2dS}g7Kov٬$s6 Z##Ww*ۼ0|Ax|G|1=nvؼi1@ :-3CC枌p_-N')N nTR~ 3D7@M&O>aof=$\z2k zẃ֞w0O^.U51x\.F$l.OM~o; 9dڨmߵ ֯-jG޽HgGf>Ŭ`~$`u}ן 8HM.'@naIN0#xqǂ $8ok;ze1Iȼ ?1R+?Xᙣ2W{lGU|MCq/]"WI ÍLBdc?aKʡo~O0s D/-@'|Ik-2DWڈǕ)T ݸOAq53N<8"& 4A?INb!0ˀ:)( uS 22b2l3z1ق{޾/ItRaz6!v.Ŗk/he j ׼c2w=(d$ڧXӰk{bH5:{~=GtOL4yB3b. z=KQNċl(vS]4E[98n2+A&J+>oUx5c-V }ܐ݀ĒXPR8vm]v2[Lx%*|qI *L%oL({geX0~y:!QobLv l81q9vj$|A4Z=#@PԿfP +֧O!n:owEJJ*Tk[,V,~KQ38d/ a'eɫjjcԗ}q99~S"b2LpYs6Q^p.k QJ߃Ifv7HͽLؖLt&=ml7;y7tս6)Ig՞O۪!V_eQiQJr, T 0w-ӬN7J/s0R{}޻"T5[(_Zir_zl+鋧YmPfɒ:5ETg4֩Bg 'f- a Q.S&eutj6N Z1,ÒK@߂?߱ 8DbH SC)NT&se\)pSQjjv2.ߪi+[ś:k~ j 4ͻ]\$]0OܬzLO2zؐB=\[[X 0ieP0_'^Ğ =U"r( zl/&}Yq+Jjɂ]bݛT {Qzx3~,2-zr6a\c<+Hh񚮚dөϵ_F]tf,pΑ|Di#ƴ l>f!ș,=z}YɝJ(?}1zl/gپeڗwDcR uEo&WY PKKj׬ )t~S/#ؗҡ&qc[~1"CHT)JLDMN3{wp 2Fn!MeM gKKKg?~Gb *;4ԀNfG5 $sS%:EWN+aAr _.M*r{bTL"|CR֙E+3K R9G+C>/̟M{J8zo.)ֹ}hB&8ߴPIkK҇RH`mF;N< 6 *\$-DCf|' ?AWϒ`(& kW?z9ar!ЬnGb4(1cqڑk&RPYvHxFQU{ FdN RIi{ĵwHD"-g[1{j6H@Y҂Z'0fzU$|oؽA餅=|qG.t *i!"faDUigBT ,NBn()ffnJoiEȸϧ>:Oր"i]R߮M_[9eי O6hFo]AH_+ĻX6_WJ'ٍqU|yE*@:6`J8pD`I;( 2C@:G/ک/ 3i~cfDὌuɦQF-X0)*UXv`-p_,.AI:o2gFbnMy0H'{oB16ږ- vcXyXXXbE>8E0R3 ƨҕ6kuZsoKtJ9 AJ򑎩M?D>TXS&(:3n pƲ\Dih{Z u{L{-?^~}?[]uJ#ifd0?G ņýr5J g=]Ҷ; AJd'4y8M=z 5K 2W0Bʼn}VGawf bR|RSx,NwHgg:?d[=:Q^b KrMH_A1GM@݂g0̍@ENJY26oa@yrNg)_&"2K q+<ebܰl փ9zK2`015Ш-ʤXeyiET-=,eh7 Yhk(TyܖdsxLRXpk/J)"Pxi7~o)&ҝ4?Rw۞^Hj}{9w2l"wB;2: G>Ͽi7 rr|oӈ,~龮yJW1[ jnpua+Ļ3) ]dS௧\v(*Equ- 5M,F4`XۂZ Ff֎ Sdڡ"|NW8`ȃx7}uI;[.atD&@ S _9YCZNC簬רƽTaw-!BZ>/ƸS]Va) yRm*(l,1cd0X,-{v~,(ƑENCidP=B>Vӈԇ˲ l+u`? W~ j_H!Jlm~/m7q욫 ;:\%1>L񴪫5a _m??p4h0EϜ9MtuvyPMA|nCQ:Vff-=*F(@s( €dȪ&S*xuHѪȵ]9{M`NVo3_68{>aG[ԑ-\Ub>hPXyxfZkX6B]F&E81u.m?$Օ [ʿ/_D8zk~+*-Ɋ eϬ!`UDEd|7MC^gen,UY'9݌tUBu))\R6dx[q~d휬1{'j3>F955 ((MW*awjM`d 7޾_*U 615sT휕/8}29x0;pO?=ߣ :۵wfǡYSފl[eX]Y2Q/ަ[ugX{`FQvZ585\G3Q" #^0xb&l]#¡XsbN00 j鬆B0?,4(M9v$I5!׉m,mJk u\u1^bPֱs9P}WMqYEb!3i87J/I iJQ`{S(6B3FZvm@tc dO՞Nnz\ ;fA'Xz9偄Nep\8ȍ`CNGaCa7Uhk%z> nI S2sH̲݈s|v%;ɯp‰j?L@#x* φ0bZ;Q%0>~~`C96H˩> Ǽu-𸬂+S/ܷcV4Q% @WV;P,u7yzKw`N}|'Y'nOY⟛p{{?2~ {#󧑣 ɲNbyuw1({)@Y 2ݸB sfRj`&ƛ|]IVױx'bbD ^sV2͇C$o>uc. 5Rk$P%Zf8];`c~i~$pn(|D~ɚxL 5ZV &柅. J~1bfE [r쪹Np$e !DG_[@{@;hP]C3#w`0bYÜQt';j$r9m:볮1b{G(X*+;|@E4F Y#}ܓ4 dG6ee\Yx 6G;+oZIEd<͈;&hPipʙ=5l$N^,ּ"JW,gPiu(g2G"tV]q (Ts.oF}k6S#烷]ߛ7*gN-ZQAToٖs'L{/<6JQ24 l9l0.#w]h3xOy,e~/K"W׬jz4 mGwI{ܘl@OoO4K,V2R26CZw"t@oQ/qɧ@p'Ǹ \K"; SJVTXr})qƺKyKR\@`hZZeJX?Ԯ\*9A₆+Lcd9 dRfE}Z\Bi,-nSRk~"Gl{%u2X$@D7@׃f-zT';tU:ET.x?s(6T y }o=ϰC\TC-Nf;t $>L۳')*PDPɚmnqV)Q5wEH7i'YnVȚ8)#{6KS*s^l#u$沂U|=Rw/BbkMP+r;=_9^!4~( jk$It}57Ė@EN11JTƕIx.؏y|&HIWjꪓRy;t: 'Gć `Gr˿>CC6tE8L,}{j^ (/"7RC#Џʌ"Һ8M0C#-\(':& A8eI2ݙC,l)ƽv[=6B p-SJ t{U~N|R*UWD<8Pu-V0~0-_O;{0hU/8j 19\`}``kSxaw̓gr :O-r.r,]''c?DWW ^Ŕظ's(%?Bz]oױ7V;(m[vfE:%Ը:PDzpa[_Qګ=_ڥ'XGi-y%d>~JCL'ݕހśnE#_ya F4:qi ByIER®P5;Je5p+IS֕'N<}m#=zSg6\PyC]hx) 9{ŰI3W3;EEi'T,eoEwtg@|ˆgF{o'FݮLs'&bsPxkGQIGȪ](.pM`^7Dv.Mu?&W$_;4an=%ǎ+ީ{} ]kФ< _LOʂE߬bd"=|1>!:D;׽S4(գjԖzԢ9 k?}W ͻb3d&'"5/r7z|%?j]׷߈ܒka 7iB~ii )׍P,Z(: \ωN_N;$k?B-n gR,Q,#}nqWhQoi} !(k^G-v92ξNO hV%CYyp;:w~ K8RV 0rdg Yv|{HJcd"8Ѣk}){^Ԁ"oHD$|U.c| +"[D[P(~mchH 6΢[)HClU|$7TbVFʣo6qVfM65$-K=A,2X)S/2x@uX-qvEHԚ@w) "{:o,4'S^)Igă ?8"U.-^=80aZbzf}UWF v%:w_jF_IVYŃyt G?}o x̴Y'a/욑TpLXmax+xҕh`M6ʐ'J?Ý\0d +#1tSxũћ>WɌ2.x2h߅˹R ~`m"x^|`ۣ86 +6kmsv;ֺy !Kw"~* * =Wm]pH;XbzvP>ECy)7 ~#nk f-Ci̯'8,+EhzWs݋E~s>ͱx*ԛǽ͟ߑ`DQ22 %4aL-eDz#]~q.?\p2,X>.65SRÍDd^ Cձ{z^>⇧ht0$fJ&ʩs\t<\d, QW[ W[']l㛺Ù_.ozdygZᒊ3`LvsV}^Q_\ 01c,mu$ ޢ|?ۍ ńT k5.Hza;tlɮ_]#'wQ c}6^!#?MXP!5^We).5okΆx=aFjɻ%ʰa1Ak7&e6R.Hլ_2o];Yĉ['l.7m9X :Q dfg?땨qWɣxLF{q[(J]B԰ԭ'.R8]{{ fE. ,;ό&FPOX2#sAql/x~9)(bA+FN9 +3&Sqtg,/ O!d){{r ̴\ JadMxQ$w ɩyT}[:c+OLn[ϴ=ym7kS!pPrkh'iE*#mB^wxn"f>mƺArE<# F5<;[}m⇲l?OSm1Ty][5xXpBtN( jss:kK[nEý8VgMAK*YN bAAD$]Ge)^ JwI!ȏ$m+75yѧ:~r?ku4OqEeJ~2 0vO=L؂ͺDmC7i69zvAӠ*߷T*vƑV"pg~fulQ,'ԢOmk <<#x(_;-u`V+#OD9ظ^ei4n-u_CgԾu+X0 zbdMf:q֛H#ƨ?Y:Ly˰C{UW.R Cx_2ECo:Ăˈ֥{4j{Z*];G|M69 a]٠ςGl: _Xܓ6d $*u2ba61Lo;wG-ziM)X~/:|H*ă$@cGgYnU--Ru&f*Q!MCN<)TXNXN٪)DH"Vz#VX:VJ۹JW5j43TVQCtZ1WQGw*\ʡf=| mOF"?iU`؜q܉ vy+u}Z~eF'A{01Pځ=E=(iCo0;g7< ) (;3H4#g'<ͽ..\(:rdxR NէU=h4xȪ-ƽ9n+S{7FMϝho۳hEz*&M%:|W4S wW.-zr3뙾CrЏ?RTɞ'h;JxAȈl2S l.fL}UB~r-t.pxC.kt8.@VFR}8k*f*$e ivM󺚇?^ QNENrq̋,/!}= #K\NC… O?1(u ΓX%RgVSќ0]̛Shbf/%NuR+Q$*ɻHMSӞ.@иO`a6.Ped0>z<4uʖzz[e 6;y(_*.#]nx6g /Lpm36H3/gxG31Vq 7+)e{fq'\?MFμ(=#O#z=(d4`! *& 0RB,egk/XDqF &.2}vT+B95t~;| 5Q3늳"8C?6Zp|W ^e/yipP2!3k϶ao;;oxP䪫j &yɒ*mR&QдSC "@p{ c;aNanP4#`[Zt>(գj,M ahx VBY'WUyЛ"uDGbXZas |HڽenMu <dvsOp'!v)"D&~<qpZH'He_( E{rBQUN!vqt3˜ ˾oWojP^GƖbWaP4+JdNRTrzTX\-r:DJ.Jy>9iD]/v՞.14UAAnJ1?{6 w%oɞBXo60B>KF~w.y:cbp u(Ffi(.@j^9$5W6e-]H?h["bZ2QHb̏P'եu_Y kF_X-V$6)rjp2u4b"uNTBC^ݳl.MҲG̩Ō[_Zq- ,QS+۩ h5=U!P-l}]}' 0Lp1k'|$pN EoL9 ukDnsqcܮ͑Q M`ULV1OnUa>3;G$TD* f*zS,K0=奮f'Q6 5]ǔJ?!e DX H8m`oS:%TW7145 ̞aJ~Qձc|A?'.$Kqꦛ6ٲZwz8<Vb[^e89[t ML}hghbX>xwW ! AnLjۆ,|xO!#ÁhMf3L\JruO(!-Q_pMIqnt9_ k*M1iN[jvW՜`jv{gcG ̕MO@8p@ #5805^.2\7:uU@ÝMq,7(҆( 8ZYF.V(8}uk!8[bQqhأr_;~#c'7 m\i,ehUdYUΐL՛5e[ Ot,cV| euWlnۥoZ"eNl!p!w$s l5w[m_Q*]aHk4W z7/[Tƥc_T|$ ֤qͱ^0DDN(V3Qw 5"[Py,67N59 k#c}Ni=_!jN;%xKtiR}6nGuWHWSє\'R+۔^xwrn>(i Љ2feəb2S(_+ p Kh"/Foe`6*_8Xa nE٨46tiY}Rg9'>z=ܹLtM1I5gdMMeU wAobp߅.*HKQeX@4s5OqLXE[3dM2\]31|QܔE <}S_}_ѵ}˴ݞu[˽MT~wwb5[~z@=4L2 ox@~{C@1LV=xu 9_%k@ :o֫O/"W=hDȟ3aWX,!CWX{' 0Mwk3^͇?Gv1Ϫ_'qCXI,~%WuaqHLxI%,?uM-BYIwS]٢Ca!Q.,Α^})A,5쮜çKÔf߲ bu+щGIFb 2eD)BHl<*vC"%uf{f4Pa #EɧNaawbw2X;[YIwZ{\['% ѯa 3G&fw{>)RE} gdGP\}T.osYF6֮{kˤG,n>Q;D.||(Ir- SA* ՘Bj 8T mO:h e<$m3.Tg*;Pጸ |dPtjM|7rZ>|%-ff% ݫcq0nOzYsUiQIfI\XuTnÍOkY:'m&V԰3Xu?iJZ ]P';zW)#QXO$ 49cB({#VNUa`ٽ9^D;1+bV!aϵ ֟7别8븕E/3!k EWfg`}2 o^YR;ѱ[͝b$;.3 '0A?qVpWvא⅗;14ؼ`0dT:=:2d˱ 0^O$Kwi -w SAڇ?#Z2CKa}HMO0k@_UHaI@ )p6K/NXx{u'66@81tK!FȆa|e=ybtfJa!Z}u"qӾEp9[0gzɛR>˥8p#(E{ߒo4 B Z&WsRzv* 5l3vgl|ݲ5^sИ31pg1{[Vw?Ϩ_s3оb5?]qdBxX{5-pm3'J,F@x0cĞ cH*k398з}5́ ?IY?m '"4|:k]go\Q =z I`}RrաTBBq&\l5imUnNbm?J`2=_K_z%r`own$q' [ȣ"p_< ~ń./:0c,ߒ%Cp = wp d1qs1'SRZR+:`0$u˙or}8x+\p#MD5摟vYՊ!M%7YH4!$ iS䦒]0FbxJΙ XH?ce*S#f\ ]^KuLN~-`? N8×{ (V2 5f/[_(x@wEr ]<-M [*x '7-V@쭾$a@n7 *:bNܸ}d+E0E %J!9R20w;L- #~2^; ?0prd%qtqGeh}V3M&'=r.cIGKTX_%A\0xѭ*.pV 0u Cb_fm$UЯrN9l8zC6ʸ1R?ʣWsC@pp .P]B2]Y[<*,;c|3kJX;@iĎUUd %P\갃;HiBH^xn14ӡtc[]`Z]o/0:g LшFf%z< [*}4X*lx`MS g W 4b_KEX>Fv3Wr!Բe8#Q4ZLSdJUn$x^)b|w0JKD(0hь-ݣV0N<]|EoΌ$=ExӲH_nTE8êǓՇ$!M)@Oqq[+FU nUO=>S ^dd ɺ;ei.b+\' 4u;'ttVdE]ewb_ent\h K{L)Vk7UOAR[d1Dr+PSW:ިP+ tsgIB{o/5^@(GA&cT񏽞Mg9S@§ZԼ&͋P3B|P =[~#~_A2=|K>N}sN_1xEߌ uYrjWb)}Ԕ-})`o͡ g % gW5r1uسi*ʠYY%X7dNs=jiCD*u?,|YV&řDݹ`Ktw4UFz &}7Xd!Cx68jf,-a\i<&m UWV[O@ FdcI8EBw/ ;=ȓ}ז0#r g s'\Ƴ<k-@ZwG v^8߹vr\ SRL]y ⴆDbqũb~љ{+m,—z`b/ijH0u>K4Wbݍ*++d{2Pe^o 'pfg'g΁*εqK%Q~-'guE)%cu#Zӱ`P~lriM$.[:47`faG Ww)xm^ & N_ͤ{~svq3ӠZww]:Dlª]H/ڨ5uc|˧~ :θxg'I,y8pAofo)$_ փbs^jㆭHw>|Gg"ƢZtM:($2}>QXWqgc"&PJ,pd;CLLut#<~" Ԍ*i㶦\O/5;T|EBh+`"rzB NZ2g`s['0s1uً (2d#hmo4y'VӳBBCRC$Rp^$3]`?T0Bsc GzfVa]@}لgb)NǛh{ ]~9`@ !0R)/C 4C4shvH"3}0n]o?R7/N6vG\)7r#ho396F{h'p =,R`az7; .تЏ9oEkXowLӂısXF!JrEI"9ՍtQ Τ׆igb`J;Y-[qqڋ+oT퉠=ԜS.,Wp\zR)`WUvK$`?5^hb T)) oHg?ʱ&zL ,YYH ە4_XD%K.^;*n[Dy0bbjjF9b\<6ǂ_5=cSEMGX` .!+nX%Jz׳e;lvW Ýt]Cf*65N%XF.[_Ӧ5]-&b:Am5e1;b#: m,$YQ$yS`q7;qgPrIHWĠ!A&;hR١b}bqDr(jȉP>OuOҍO6Ba&5ql-q^HJxi" r%n#r@ QfeBqv`ĨSB.]Uy%A1 :wM#_ ʹp.*ȿEllM\\ +Ōv%Ic쐆O3~b$L+ֱDt(b]bqЯb@Ҵ'){P23Krܶ @gv!-75rwqP7jiUo{^35 !+r+$J5Ĝ 9=@Umٞ[b(*%d&­'ߵ4AWW Di ςVo:Il ˿ ґM' ,@?COY( "y]>Zh)ۣs? uIBvmbV޹IܙGK˟VZF8QyV۲Usq G )ޠ|i8S|QswwD>*jWh^@!Zv" ;.4D}ȕ~g{H!Jǿ$nLj858Igc_+ sN1%u%Fj[| Y^@W8*@ߜo<"X"/+ͮS`+rkS]58\`Vjb5b:ǸӴyU}}!TY6,x   klHIBsEK 8HBM cJw=)p"eV)"LR:r"wD'mֶs|/K(8&t%a㨵+\S%ɛH{2ɏ(Y*Pstwi2BUJ[7+T㛜5owMkzցcz O=CƟn*hqvH޽F}}m^6ތyfʝ'fK7ɆL^G==kzݮ"Tدt'$M@PGxOH&YV|caaG8w <@v3;^m618@_x1vkggֵi"~jٛgl4*o~0.l{Z*sCbȜ=Ih{~@k~쑓ܕs;ђhf?g{“(C!?b2!I0U$KV28۹¦ב|J{'a#9/@_bl7O5[Qx'j6'Z;]o|_~-o\TT(~y}̕]ð+SɞDVm5VFZWJūh$Vzb>XN1Łﴺ#L,)`~w߁sX얨#jqyv#nN[U ^Ǻ,9TNQS>_Y& 5 O^$ĬFq"kb6vp:-tqX n ԁ!G.jNԬS:?'6Rh$-ܿ=G5o^1ynICjUoY'Qp=sa5ˆwjهSYX0\:%4q—.Uށ=)xܤڟp<Ж(ᣆxY'XJ2;>l{X]?O韡P$ %Qq$I0~BrUusk+Ƞi{w^6ORadYУExoɢUhlcJZ)<:zF5zk ܼ+g^P=^u M96=rT.Nǡɚ(`@$gPiKzdlG4`HnR;P`o H'v Τ7:HzW(t{d\U)iݠNIWyMia*zpKF6~䌁!8ЬtFZ#q~""~W !@ຩ`/ AʟXXde=oܭCګ)ד2DGҎñL?;V9 Ӈeh(|-IlX\B{⧀|gߘ}[HhvPUEX D{iSKdy^и׾@t0BDG D{U 8Ax(ys&E̲& +1ץS0W%\e.Tt]x> zit<1Mr<C)9ys+ >dą@Cf4KdGRٷD%T m@7kOkfLBzk,g /f[q1s^zD•\׳}ltD} 0dRNsuG$7g@\G`QD6XBK?S׏C‘r?52!SnAvsXoKf{*lNQ%H|Vpڕ[$Ӈ;t%<+*䷐z>*gw: `80+Ȁ)p Wa="y"KuE(/6L),▜(N10!ESu\4? Ve&\XXM*'N7rsF*zr<#сQ+Ƥ| f;Dnr$XYZqHpJ=L&@1|M7-nοldG\͕݈u1; b@? o)y{ap+9%nUU@ >b0'2b R%?F"qZ̚{)<JQ)l%7S'> ."쌖cR_ 6)LixGc󊁾H 3i MhT; Q oBRL`QzA2E_6w,x^g'% D3d]Y:_.f˰Y B{$FdLհ$=:OK -#NR =4>Q Rܓ:qg.k"+qT >]LՅŹп# 념~M!؊a0K{pIBr:|>F tˆry\3(cWZܡo9|4w$/og>{_=6~~"k>mfhE)f80vcMDY@r)xYv@N%y1ZLT,4KEOI\QK6 Ld$o/%Wn'MAu~6ayW`~0Rȴ~gt,DYnM=5*5($dX5_YYj5Ia}]ނ2:s򶥰{_9{  pM(ou~-xEQM0GM;\SUKdkT(Z8s>Ė 93HT:r]ʋ" |NI!2h9U=-6:4DM{L97Py(<(%{O߆x*hK(3] AuЂ,ʽǙ>Y $71V8!ocIk;Lxq (b4XYH" bE{I1Nv gm bx4UK )AI|Ly1;zXLo a|5 :eKS!l qh5|hMt#M/W<_ZBIʄ L07(oHN@; Uߗ_֮4&RjU ǡy]m @?<_ߴwkgԭUX}WCX|f9xxyJ\-!ɖCF)`#?[vdpJݥ9=hn޶Prn~D[8G?ڦZQ^7oo=#mA&ҝzl[ dIxK0ӔZ6^gSDԧL@l/rw#E P#1PTx1%*-牺L8g ,5gu6fsg8J<3d] :0je5bWOT{k dOQSN1NgD\)f*/M!HgĝwS`ݏgfs*?m%T}.f(_1?%^%Yv&}?j:My1!U6sӕI)y u1=6!Θw[I 0zZD:)u$x#p80EAsHqyW퓍g#1 Nw.id+7#&#bw/֙;W|jU]:+:/h;%}HZԱ[m|mpl@o.lǫ(ҏzaRbT-S?3T'v!'pR%%?(4z, AO{| hlD)u\ค$ю;U \I>gC'G,<͗?/`ADbMR'&2 RPǩ{Ȼod뇗C,q˿7-+ð{e%__}Pd-j΅m/!ʿa|Q,/)YzAs3|vZy7*r' NCD2RV '脩rmÜ*662gsΥ|[: DLNjThT$x]^Y1O5~z 33lJ\C,ry]`@:nW\P-GVںx+VmYmKq=t<?7?g9C `^a3@揀XmKR;yjJE-h#gVUt`& &(ܧՁ6I#\csU˝2XR%Dі0ypk:j~FO6u۰mR=jCey ېV ۉtF> 5ei#yi; f{-5K} ŠL9[)MG`_7xË$fhUoDN4+JEAҥ"I^;UKyԹ|^yf]!B;֬i~a~ !$KbW"7Шtvl1^^ J梽u!#)샠Q%)5LPtekyfϗA]ѓ/p)Щԓ _>[kQ JxRjETaȸoTB%Jk')p<uH-9Lt)eNf lӂ*"w{7\k $mwDʰA#@G1v%Mv"g4XgNApu]oyyMo+㜑=6Ŀc,:%!qk;~f.O ʣ?Pǖɑ1eiط (*^+ܡDM~A=W_o!ɀ<چ |sTb14,<ہIo7:C 'Xl0B_<OWba]VMxs`6cl\߼*@Q\;#.d0_m!"!—F6f^3%l^{P! <SxPg}&C9G9Z##Y#W='LˌMVĦ!Ir!p ReE3Y=!qrI7=GMN$VHRB;`{ @Z>qv2?Ė&(na 䤩! 4K)jQH $)#Y]b L7?ʴDgD֝mAPaN$JJ!1ܣysӈYKROխA3#Ȓ寛|HWxg>$DHs[TeȄg7r:KC_d!,}AF˧/jY5K/T3@E@ gd3.xHA# T{  NfzfA)jǜnol*軮Nwi<-Ti+ "]qVaYm<:u*r!g`5>aс \Mv@YM%a}lOĨUq&ϣىjLxC\dMeZ^UGRt'XpVp܂n~7X،k^ufPaaX, Q[4VN2~R;blo_]ѐ]sWO;y-P nCyCvǮ"KK  brh6NRϚ}GU΄>ja yGr>g Wka ,aŽRQ$)-Ry=Cn4eL7^h2(kIubK>kẅ́dn`B@fR kgze1a (O8׿pIgZ41y_M{jn.1}%9hbшAup[c2}!Hƒ<:)qҭ)@p pa9p Bsx`#%4gu4O}rW*wG1O0CJ$(l 2^yktWW}N cL'V,SwA"4͂3tl FpIg5ʝI1phńIH6Q3S'q}vĹj 'Q+v$v}6V|&:I!M׃~!Nb3U5:rH)(wYB?!FeD9a,aCMw(?J$lKk0kOẸRù0?; c dFC\w~'ZuQrJ1fe ~p﯂Ҿ,D>J0 ^j!R$?5#QH> R8Ϥȴ#ސ$P6-TeWX4 Uc-S6Ȣ=wAJoiyeϺچiĄs%9T7~f_rֳV^eW!W!RzPdCGW4PBRS~U^Q9~ymkdY[=׎>eւ_TBsBٖD^4iu 1:*q fFo،C0YZz蹳hTX]GЭ8s* :Fƪ'BbL|̊;B9ԜXM\hH%p3+[ʸ->88ÚҬ/0k |0+6"(`)䢳9ؙy]0}X<% LD' S-Ɍقd;OQ!Ws]AY\vq4CCM)[-gfk}l ,DAC[`2r8 pXk'01OlFB Z:miYâ.ၬ8>N<*_.g@u3P;=v3 ¸:tP} s @uTix3xvĊGpԲEZ ?Y$THV]Kt9 )GK03|$҂"Cr11w77/AF'Ҙ[NiN PUV#RK5I{ 渒Ҝ `/!Y f=b?ۆ ۍ$ӫzVhܝ`t>Ne%l|R=yi?o\x#+s` :޽?J|'4ڂ)Ar{-='-;r1-و2 @(: }6|m&Zq釗ȑ:žX$Clj[N35%R^$h[X664 dafKlʷ:jΓ-:P3pB#|1Gٰ;ۿ5< )mn)u =VldǍp&kyoR;ȘePXڷ:M|*|=㗻cP@X }<#4~ kr.=X~{JV$1zxVS^RQKG談&ňe=8ha\o2'֪]1BєB~ (AJI}?}XV,i^-عoYB^trGCjy֡o/1=$ijl5sYm6v)YM/ml5W&RTT&WOrZ%d+dS~s9dw-gzf! </8Fxބ*\UC nIPTzOC^c<UXnUՙ.{ʿ>A2T@VQu៰CRb/[{|`Z ɻOL'}벏:Ѣl&6ЉCA<*ś[.[*1ēR?t>E1@LAbkrы&gcP?vȾs^!çsR~M ҍxQ%74J@|!5=ln N'V")癡x|PunL9Xd,Vɍ", ,F[w"b8_<72;ⶍ%,^lVtn筇Uژ q„A2hBtZi~4ffU(\`M~dwT"p^g\%/ {gÞx@h.-ђC=2"e!wiU=DBRGb T'JYO[P&j+x_AջOŨP );7рK)a?3A]jy# a8z?BrJrSD& 8Lq'{o QsdTnf+,%d $gAX| I8aBW@d1 |!GAE4Ędkѽ'G/ DVWw@9nF zgyedfoꬴ[] F'9dL.@|ph欳NTDBj)r&Ϝ}w-yՓK`M(`(T1yc0L:S,BU<Ͻ'B(OxJj*Iks, .!M cVeړ6U݄\f(ŞuT4QeCr2<̫o{Һ!#~"T25gCr`9~,jId͉VimwK5 :l!hz`uiG8Z*$(bȬ=42vVp*uw!kE[U@T MX mnKgs*08Ӂ|$m^ZJ-rK^%+,?e3ΛZ5yl([`HY5e7"dDHP$jywoHJ )|a=i4&;vl;TiCIJ-m VV7"RfWĹ0od<=~׺1F%+ަ˴p!Lg[;gF/ʹ[-Hki$*o_%A-9,m P"Dr}ͧ7{OUX#Bm/ұ}0D #| MUd#؇ j y+:Pko*tHNjAT}쥀v?*Y~洟P rjm.Gʥ4RU  >_:q+$6aI13"1/jTT߳ÝkB kgqi]ח+G5:_iQTl`~ٿ7jm gFi29N`cIFtf6J6%mua:TD-W8yy/P2R ce{3|B(lIV[W?^9v*"dY 狿kx~зA"Я*I9!Sl.\h/NcS p!R5}sK }.a_'u~MY^ aW'뎆Ym,=r=GI`iO 641d2?p+7Wx\ CeuC}v V;"w1@*xmʄǍ@@In<ѧ\KI^$3=_í1FͲ&! m2] ݁e N . (r:]U,I?0c ΰFa%x,c[`'xnX)LB+)SgL"Kbp MZ@dmR7߂T62˰ 1o#=R7@{3 r a']e@.[s@}'=̍j " ld䘚]e%FDnaQIhDp-GOt`Wha*{44t R."ya%an462CY C/KqߥCUOȂa >;i z\"=Įx-{)om ZQs>{`7~rW/~ h_L:7yWu ~ f\yEb#4G D͍S?(t2op^LutBf)t-X}QFUOc獦 LI_d?RsNJYZUЍbUe٬8p+[,GgIP;FٿUUU[8eY!4:ӻJoչ[BRR_ZRZ]re++P퉆1 d.Fᯝ_)F[p;d2GȒH˖&3CB>2 ]h0D$C#[nW.V>LIξg©NYo?C*yccS(si)Z yc/e0& /0=.SԂ9pc=B^_J:X j;`Y^}X{=2Ids$Ю-)z *-XX[a+" ⯘Ѱ0Cstus6-EeC!5Li*%T uw[⁊}ehPPx[;uWHx]W7}l `G¯dԒHJ 5KKs(nϮ )x$)ifUh*}6dz~;ɗ矪5@W~ih9&MS"B㤣G.|ks(݊>Ma!U)b/͂ȱ1-r4LXMWK6V]{̪A_LzudACN*Em`<PX힟!KUS_UñLlW8/':aJ͔cq' O6CI{ 4?aٰ'))a2;Z6x|=(ں!;V=Ycp:G,v*(XMvGo@^%eݤFawAO&Y=IVTIjri+H|{@H 3SOl{#7E/ghWaqQo3N#D簲 ubuh_ Ai=uX=&#U͒0!|P%N-~ #其+G&`48@:;m:p^{߉7hJr{Py<}eFGn+7[,)>BLz+,"B~Yi>vWEDIk5&̗M8s+& y/6[1jD/q68To$ 'q{\Oh5 W#_=aRh7&EPS tݯ.GrLUG][<CZPn]ͥJV䋢eC]8}GW#p 3( RS!B|YEc#9OLڈ^튐\h?m ,2fai,Vf<RNG㇠$-vmll _P}SfƃPLKwjkl+E#-Ag"%DgGDMXJ $-59`6_.~ZL!QԾ#bP??LX;fǎPhM#):U3Ֆ).2D:WaɨJÎlk<>y)?.珚lTD$e pJʡY3oԇ@q=z{UI.3 W_.;s&#clFQ^˴E%d ύK5A'xM6R;FRYNw =bCxXT?A2kƫ4~H$+ 4y,Mf;źvtjV0GTo&_BxxwM!}F 0| HeKpp-ϸO.bm.}o/ܓʁNX\nk!L;5b85+A,mawחn4ES" ;53ۊrt0ӮdHx3u[W̃Q 92/y /שR~JSt;?Hپa3"0D<ҌQUrvY}c|ZdR_s&!lOX!ƿ2b5]T1n/XV#P'LUR&ߓ/8/Jٴ 9#7'ůIib^ < \Ѵw!j]G5!ӮZojh_$X#-qH\6mNr|{ )@]q5>ǧTS$5S Ӗ\xBuVf@j!QGl֡AT!bĉS):;z%NV\'Ch{&ӌx_[M%+έFiKs?¥u3i Er_i[ͫ/ Դesu6:Fu*CwǸ;W]0$fh4sf\> x 7 143Ueb*#9!i.۸!>rOQ6zyND[u7 q ]D~Of@7|gޚ90Ӥ r0`=ɂ Y,QgcY)G>YBeiutaDjֿ;3 :uG?|:J*#oʭM; L3]fP9 tb5)QEe.V劤|~Y_,5a- U2|;{j[޷A"'D$uӑICJ> V>jqF{ğpwt|)5jS@wC8"Ǿ&ɗu͍p!vŹ5B"͇|)2Ƞq2Y3=CT '|6‰ ?H{~v>ieAY k:V,k8.d '$4GQƲ}(ZЙp횠uGM䇅='L@=Ol\lU˦V Pꢆ2=$S~`숳s/q7A.KMcpVF _E(ΤQ]WFrķ. ib{[~@%w/ࠑO(drn2V}D_vtJ*(>>J!Ԁț;E:9,}V6RbP&XP&zV9x-tu/i`,)!#ı;; Z^`{3X/[.ot `e+dx g{&2DG&u[͌ f>%(W?JL|΅L9sb7oVSt9kyoܼoûgsC owX G/54y˭<pSBHMuu \fDK, p&ĐtT$8D3c[uiK `=8 Y OjDGSYZߢi stm^nT7X۱eԉ$cH#f?$D@؞{#EDG (j{:N35; BJn`.+>ω),C\:yˬBHG/b4Io)ehOgJ!Ņ gT^ijO/{1hI2}Z}1cK0Eo i z5o_+|W tzN)i/?îBcCTCl' @aGJbT c5̎ic.${,<ެq=V`kA&7d؂C4{IY@wyFs L|ZFòffvBNSoSQa_U4j-iN;^ f)bu,wV3q:~wR2 # *%-Ho" d\wur㹉澚ִ"82(:Z3س.$Hws?L{ɁMtbʼ!<3$[cD Fbd0Y2}Fd6V, :}olt:6Z\%tGW {njr  !e8;l_ɼV10+pT;%syŊĭ@r׻5M9|9 mZ[w-mO>f:+v]灜 ߛ9 N|߉8mRMQ<WeJEcvGb B ē>׼"$Մ%R"-B<PZYg-Noʶ殡4f .Pԙ2+S g].<]̦2Ĵ2!,{H4g n$ r"p- Q[sɩ`ø0+^DV8 RߌۭB^"i ׹zC׀f@̇?~/\ZύN9Q{ĴާQ3fܮֺL> m1f5%(IZlM;r==a/F&Ujwag.73?*̴ vZr1ێ<9nDH1IgA5$h_ c",`5zQIEL:ƖLu9HWYf= |3_7l*>'[Xf%0ys~Y6lb7+B5\a ))A `aV&*|mWacVKc9ž.{0)ek/3@?зIdԪ{_s)dpzu$Guʌ/cu1Nю"X7C wԙ`ȍ.UV:WQαn%Sp2YZvš|PKIвUzKݠDG)9bY>gBvwaop}U(#89@L1&ܓ1yA|ɳuo04vǝu(k*6mӛ [YۢHVj- Q݊D!\>PZn_MwBOH! I{KA1`9] +P]3rxO9mcs׿2㙈;ۡT*x|`T?19)Ps'WjrSpWV>&Uogi=H,Du~VfLɕ%"? t_@"{&0 䋊[Ob~$˯>}E83#eq 9(mWE,~K" P>;kC#{^V#Ǹ_yJ}(jA ]w1g#2O9WJElFLJqzRr_QсGIګ/uH֩OGd o\~['iф~ij,k구RHUj}>縛KhBjyt )R]=C6ڽg%hvI6iӦFAVwgsOlj (Y2TBıNFvOHubju x4,F䧱 6-iQFw8(X!B_dꏞӷ.+巰j ӈNO$c,Q/U9o]eq?Hd>4~GF$. :Ь܋UA$+WD1j!fYF4vX HK-j溦>(D>`,(mvƹsiicMgqUT-ʙ^M@N˭5taЍrЉS1FAA2ӆYG}ʼn:l0wP)bg(t}s_r_ZeY!`q'KD}U , /bd۝UMAM͐`ij@zV8܅Bf]OJeJ$^:b-XewNun&l<q&E8:Y6 !HK^)xAWfQ.UT6>H1mTC H{vQݎA4|֙Z̍rG)~9Cjv6J*!b7%ב I3) 2(OnX%f#"dLCɆQ,ғ:|~Cz+w_و{߆a,Li~,o^*Kp #yK!TNFyHtVbo RaDc +eqN( oNDl&T)h t`vU=]oV6SmƻO/8zLDy2*{z4M'c!idJv'ct:4I{&Gy02v־Ї-&O+a^wƖm'Lid<`e;z%M 'Dˤh\ aQ0( .c9Y[:x8t&k(Y5 =d4祿`1׳З" 4 ?iԖ 3=Fp-: @ѵS ."tZP\OOS_ֻRur?o E p/y͜5fVݸq2+&] KaŭY240p䂿b.)M4 7e=_%1$=$IR7H]+7!{q]ww jAk[_fJV;dA2 ojp!~!dzm5?rZIy?m2Ɠ(Lqt8#$f(=, Gl@5TaRI)u:V!ܶĶ{+vjwDV>D0:"sҳCB2%Gw{_]&Y/&kw;c `=XV/d:H:̞T;h|Gc_il]~H O4NoA QWp$lPꮟfĐ8h% uoʃe*TL82RF2uwcϜŚ 4Sʰ¯$p񳤎ɾ!Wkk1]4SN)@9^gkSpbѸd6jjy7P(߳8U xv;cPn&vO2Wt#4IGA ]A|$aolr1D XZz+Pȟ O>QtY{w1# Bo$&}࣒S~4kqӑMoU qj_WA ۬ >4J5MN1RkmE"pgB>8C?裇n(4A 2R|gE೨S]&wޠ=ygRbBC59 AUD%<RuMb&nҠ&mJE@H0XN=W0_%0iwir`m쑶{ i C]*Cє*uD󓶛abns)7PUHCrRiPυdl\|X@NlܗȼV?Y$!0膍~uAtMvgZX :fIl]V%XU)}TOwD@$b E;L?qz0c*"M;x6=2^ ڠbcTƺU"!FFcǪ @I1K!(Qb\vBʞd| F5c̱aN$Ej ë=Q9(o% 8urVs-7gJ8נK; x]mEGfl;v "ƽ!u3tcph,󐌧[Lj~pHz 2rˀ*S+, NMp[{2{ S/JR1yۅ$߂ZamrQ\T ugU#bQpf|W X;)UÅʧ %S$Q0˅ۧ VȈ΂>3 $?Du+yҍ,v- JE qUƵ-G^a ڛͰY ЙyLc˾tr=0_Ӱm}<ޡ^wlP0#"нSL ,ӟPL i}?MW^|^EJ%VVd<{#f*p(oV^u7 |˖6Pԏ_ND!rVy IA;S7UUVUoTG-xtJGE*݊=jTpĂl<儎Cmn[d8,,2{8Y,=Vyd<=WSY'O:BgEka}L*㭒{nϫ&VPׁf!f#>磘%8v3r\V5),X8-[E2*JlEŢlEwt042N1;643aNoAJɥ+GA|Rz)'^w Dj݃ !JZum|Wxh._Aȯ}MZ2LP0mtOd`:ߡc1G~t"i~'گ[1wC^!\tJkQnQ/V-NbKsʼnq9iFۡ#w緁G0:,BMAǂz8@3vr+Ʌ*ի\h=]⌇wt;H*(0V@M܄ F-!yi9Wߵ"ԥr,YeMmzIm!Dd Xy^{W 砹~/̱g .\ > «GXK AAfcȟG &NEf[;>4;)v7+o#42>sYyda G2R49 PUձxbfxA vC/BQK'LR!x=_=UfGM\_{BQg?~=21A_HB \1KhQL zJMYMvD cB]l5(CY)r\'ݳ'-X&vZ% d"3oAv@dzy,.dQES7KGdDz?eFnps ]>V{z+8uYG ?&dOS;~Wݕ8t^bw1 8Dv+O|iaO+Z ~eՔVUڶT2Z7*U;4Ю%W듻b?UHl޲."+ɥ"|^`8`gr@5Gf3pB^E~(T$Pw8ғ# Ʈ!>QXt+hыD$`rlMpQ\bW N~jGUZ9}?e?@qbM9eI?&* -Ba{O}bgx Ym!r}(%c4ڨ檋K82& @9$h{N=PZ `)ߏu:_ en_6G ?'eW'zq)E{WWV@dyb.JBPpt׌DpMܿh&Qhu,I Cr{UmEt5ɍI Bz:) ;[)6X KCãBڼn!{0.A9ymR1Uϱb7e8QF+_9|&ikgoJzUtmP ~a( m?`doLI0v7ơz̳TҭEn&ȴ&{Is6| ;؉|%4OXE!r[rS]rWQR16lfCnT.GT&;vEdq[w{yWHoh;@wRF[^HH˫Jͮ@XS'|M.f ࠚPaxz2Peq]G㕍 1{E44Dr z( G'q3XL!C1%|]`S&f˻#|ErK/-*)qB̔ Ml؇skS rJp鵧<8 -9Glb>sd$dc^O#nF@N?>'g~H|;dC<aM? jU?0 d[ᮞTzKG"mӇd)p&>Al7)94bz/Ƨ+H^̫q :)d)~O.$a64ይx<N&, >vtwTi3&yE?RhzLBk%jTL nňC2ky\ȗ Q:›KR-G`3<߰ QJE 3 ݟNi9S-`ؼ^PJ8k6/x>x&-^e,|s=}X Xܤ5?zCLs1X[leJ6-RƓ)tnP{4:N4nͼjZF2u2 NVpM @9C_Q£0R+tb{R O@'ZݴtyXB1 1T@P bBzTc[)Erf',x)8I=T3ZMcP|j}8a ͇)bp9=3v/h VY RF&&쳆p tJysR@G+f>N?)F $}`OՌ1+s #þIoS!#.NtO3*!f0ټW/Oeh<&@yvY=~ ïB`]RjOK(dt|p3Y744,Ee=4FH 9M+)l^$O 7]FYg`$0Jt[J+42[Z9V3`%lsX/c/eV{ hgѧ r)RQ29xCGrN}::{!A$ڲEp_&I&LZAb![Ԅul;Lǽ#C!yr#a#fq-Vo;,*C'7G 1q#0X5YtllwIqҸ$Nfչt9̰tG˩,7ǔ= 8 _r=bσlz_Wm@Q HPski:Fn?NFTWE _(f D SL*CT~g"WX8$3%%.ߗ>V+f U|r!4Hj62L)߁/Nͤ|f0 PA {8v(onmFJRL9GN`,*Tp +…%4¢?ytm픛*-4Yw "3}^&:?NhKyHL|>Ӹī5!)ƸOJN>2aEԈ㌾#S?&`8 vdz84o#p.//$bm\AW7`uk6*ZaDBтzQvl`r6i&QX*6';)!(dȎ#Ei}W2ѳ=s ,xd,$FiI,91FO U' 10{@JIs&8cZ#6Gг84,5&% %زJɠjJVEQD wҔ_v'& jxt&~ n=kfK(x~ q5f{NcQR1v?EBN]6L )VNŅI3[ Jrl,2j nɐ۠#:dBV/Ut 3ZFt,E_5 ˄={Ayۖ=勌mx&m,0t cHfDGl]Ղ.쌪 Bmd.>1 rA n=Of* P!4ת6ѬcB+7sy7KK*DCHȒAJQ-(ٝ^U9tњ\;hZ S.mlZ'2 lU);P_zř[J?sbzu-z~w$ȣ6jC*/{0Wr )]BjAKe.p&acܙ8يjx {e?{E!T=6a0w$6ap`flH㡟ϖe0"Qfo" 7jA/TR5;, XXlMgP|ߩ[x94bo?dE)nț"ʰqZO DȜ?*|KrH1 ,䌷^;ZBAl^|3vU5x !@`~m=; ȸ u`IMFs{ Hƈ3Ļ4ESmܧnC+z=_3̺!fOx'㫫[(R&i]xw ʙ2EL 2v'\eG):S9Y,0.T.QB`!Pp\(]|-R6ч_u(7i"XU7/NEhlgMY0 PwYzQgb\gG_ߌIQUG| EOgqd`-U<īAכ7{JY-8ϫnh-ȍO\=-(LO%QK c!Al\xRʱ@:B$(GhF;6ܪǚf(r󹤰Ohջ0Vdm_ɕ973;͟k7+ zwC#=F:׉B7Ėt2U۵jm*:|:"2Ep$O{TAk~sb,BJK4yk -Pω/¸2ynR.@eme;fgc|m0 Rx6t: 0YuA>@Q֯ sLX@}Nh\P [kwLb6Fxp06AɓV7<+/QnC>ف<#o6 9}ʑ)Wkh-@B`kafM/X ȷE&I撌CM/g/A0!UHzoqah́RUnS6hpW7\GOoΝihI)aGcAoAB.y?oddM:[&Q~+JnK Skf~CZ.HNn /@0*U .%Zs4bΈ鸪 Ό'5 HT`?%Đ|-(nbxY5qsOaW'L)w<nwrs9u[i(NZHKd@\2\prܬ1ES}I4D6~+R #c/N$<ǂŶ6 7=#n2~%΃3bIQypozwitJ nr냒it'wB:A4B\c;NQaqPsnR_Dk; 5cD>vpIVFt&bcBGXIT#)d |66٨UAo1aV1a fZx9^wG>v_:gSgƵJk}MZl2b̒ "F(Y6;z~'"O^*UΌLJ#YNӪ"(D ji8(ժ]Z{EK/=-嶫X^ȥ(5s8|:X2/w!)sm3#?&H08Qk7?<CIpGLE=78@r€fz٦ "ڲ-]tځKPןG&G@$-λ聆io60#Qcg(MVJő3#gG:Ku^ND5:/1`E-d I&JŶ&R\tLj{ɇEoP~'%JŖx῾f^6nM-Ө Ղp9C!e8G anç$LVBEa>~mWyh>  b<0n39ClX>X%Fjl+P r5*\t!/>*᧺QbM!s $(P\!p*,*8b=L1^Ӵ377o[lȆTdCYϡk 4Yv9=K{qzѹ3``]_ZVT՞%P=7>?Bc|cH "/udtc鸴.L/JjDž+xemz}Ѹ5{ 0cԎUUɥW?O ,v|Ӱ O/[ЅR0ٝ7~}J}a*2g/ue3@F:"@e"S}(Pf2ok&4/dm:bwVwz0:~>mHDE44 ӓWVӮ*Kov& ؀5B`C*WfmhG,. BbGK`K3f /R+# B+jYd߁' 숯 iQ8J@sݟIZp.*=*`:왓`3{ժԒ'$\𺫆 )A`Z/~@-'3d 07 H}L @y]i1 >z{6qѩA@'Uw w]r+6 `L`:4]59_k>g&f̘}5H#婇ٗdg:Hf&5ȃtt$hluӐDY ӒG#B -qEj!Nf7f&TyaƭCD 0 nj嬙O{𢁁"c"U՜0֩l8T%wE~l{zqi!|;=/( 9[Җ`x0,j~$Ə/TW|j0&-0\kdRF&ѴHj/y[m( I/5 0K/"ےuc}bl5a~;Ϣ`)KYCQ}g#O8PJ|'jպ!0XYSg&Ci鷯ZR'*^m>3vϼo;Yvҁ;eG=z_RM͂ep|V8#hjJk>=['F 1jJѩ0F%TS,@DUzW6n-P:c~7e^M|q4%=b7K J컂*!n!P/&- -ylYaGuZ—=aQ' ǖA;Ib*R0|f58ǯLOx= S?hU?wPoy 8σ=TTu@AmvL/+Q qHa0'l0X#>CQQ@.S@\/^SQJfk#ݎ`yN[SqXϠ6Luho;A 2 %mMP@8^.;߳Ml24"rA*ڿ˖qՕ/,?83¬uDBٟZMdH7c;Vh^v DZs< EBQDd tQWl*9eքvH! 7at{G`;Gm^2ow%TQ'O&y*'>@.bve֠~+w`8h3 y7Z |G(=k'kzpȎ 1/ >KOd':) 6wQ9ҕh 1У( M&iB;20x{GCn.q#G #E{W0L+ymW˻ZlʓVڲx.qᕩRRNo@[9plI 8Vf1}Jv>܄p5Ȭ@bY*2nY~BQQt*/dk3(Y[Q P wȨ%tcj1''rs쓭I;C FƎ˟\@bz~S*?Gֵa[9({Wd^`6Cw qDgLFtBd[GJogX|iW@rώn&dy[A&÷\e -~6Ulnxl1ﻐnkP8FcȁnC2+7⅟'ě.roMO$YQ7!Gs}+$Ic/ f<<\ uD3d7GJ"q .5 PsE~%^K8||zIo{+ͯR*"#H !DG !"l`,crs?(ZÌ$J){ ltaEnbbZzb(%Y.cEu@t?}rwq@!AcBlx^l&]Gߒ0Z7i㱷F3J~mFYԼJv`D9+K.C-n^d)So3Hy?H# fs:gVdx62@rFKD l!4~z虛 v)0$7FEKx˚@PCQfr, ,C Q1䀹m L bwKez48^C(n ui!ԱphXXl&NqZn;䘟Dzkr &xXߙKbj¤`1°h9KsyeY'o2Xu)5nA{Lȑ\5`&]+lj[#>8 sG Z&~id8+em xn O/ޣh|jt}sKWfE5/wt펍M+_[U;j0B̍_A^kyEo HV@ p }!Zl5\d]Oy-]wl״ǂ C) )n̢ziS7{m.GLvL- % ۄǗy|yxŝ;7C!ڢbE|t1_ Q]SKiʾ#۠JT- ϲ G'AMmu~8Ļ%WZm-uH`Ж?{|XrxD**V Y #tEHzBcnT=ij="$[f*Z?V] GיL!Kӣ3*X07gU : q5lԡ}ZNTtw+ˍqH=1[~wݍnx3kbcFګ7~:J }(=r+02.Na 6@!Zm֤?>ma@ȁJ$OFXC;AJTetulo˩ \6m"d*~D +^lE]HuZ |^P8|T&g<ȓo D 2\b irMՃ( ݗKhAY{ZA0Ⱥ(3U^ث?FQ^瑐~ t;{M[o b YɒYg|<!Qn5~vD\@Cd~IR\]w51M$(bp_15xG{L//[}̲s5HK;Pf_8fA b&T㈧y·!#!rݺ9ݯNEtthBaEՓ젘hl+xt'i-eV?۹nhze|r"ʚw(U!1 ZkV8pΫ䟺bF%kONQ,V{{}}& @Z{مƪ&e~kPMW9R!T-.7@dSfZc|?UCk$A+]Nc&5z@| pB5gIYN!6,m{ 7iZT[=70HCzۻZb~= OkԲ Hm 7i4QV MԕLd;S[VTPӳ /QM>o#M$yA| ;[>hHᯇK'sn"2 0i8T~QehF( <]8ci|_m HL<CKsX0h$\ ^I͓fKѨw3B`mQD]`~N8s8ÍV;V_qnXI!m69l/?F 󰍖ώ3g{ ְK{88G":I]36sп}+h-]t7ݯ9֓ ,'z,~DhP;"ՙXל.faԏɰ9BX1eĎYG5m0lCX {GƧ$ Yoh3S~%k˫,nE1[K`t" t&tas-$ JY%uSAo mҷS=IhjW_<~Ӗ={G*W]maQ `1Zt,ɉS K7 ฺ:|d$$ՃY@`Rmhrb7H%K^B e3 `s) J6ڥsT  szn)]R+v]ӻ|$8Bk8B-Gs ]=;|FO<=CZOBGs.DQdÂzi'$|YSl+w 5%]Ѭ륎ٷ31%-S}yC!Y`Dnʉ= Ih&t ,kW.Yh!#&FJ'Fr^Jt)WCae|ƨ9=>o.O@=2Oor~߸2i {%P F q|UYΙ )1Π>?/?owi@--덢:.f3HMbTUxRr%aX}WmӨ+ Of/{l~ڱفz>pNnXxXR V1m%5YA2@_ }j@<-BYk9+xeJIwS2rU]jiZ ?I'ǵA:ig()qu~T7L<8ɡ ˘ D.عA]c8MB|GC_ߗHKYRW-:tus!n?0c.ǽNAԤ("9&e KmG6z|uQ|O%&-3+S5S==ΠX0e6 {6GSػ*̆ǿaȘfs|\0XslM~tSBƗeIh:T#5W3}V-58V1e1ZSπqaVwEA3;N qN{<,6^>;`UzTL̢:.FŸ-Ymh@D).h/戼&ҝ'"9y*IJ#ڭ *&,wV/WSrFrGvD +/qE.$Fҡ0`De~WMe>* ?1(d7 bR7| _ 5ʦ.;S$XN/*+_ >v-k kk{^jrv[1BVx qݵ̚OqB\hB? H 5,5*)Z^X!L|Er ^vA<Ӣ&OŨQաZ0:Z\J,T)*!>HԖc)-q7Dt JHNdEGC;M;S4MCr& vAgK|Mf·ZN$0`4⹸I#DNɣH%425x:4g*䇙.Qs0L@-E*KF| OrPcN0ƅ|Mx\qn7•c:HeP~ת:.ӮI4-zY wv ie^! :=X_%Ǎ X,õv/m٢X W?o-F"QrO֡e|r|j2߿%W =.' 6R zh紝$P2Wj]ej,*  ΰZ?jϟt,ѷ6VeqCd' ^=@-=q^^zO34[$Ucs.YF$$cs$΃VXD 8.|"tк#_eN[ϳ+VQM0SP-)qZO\9.*oJKc*ŵpÐS7M/A25Q2f[ɳV]&2Cv=Pj)xXx9 8e~)8%tE_<›Y@PBT*BURRKА/Y ܨ~INJcH.qgϴB[C9 i˂(]?9ӍWscjVX obq%, FgIZ$"RWa[5,L;H *Fgs2 QQb ɓk?}:݋`St0ǚMX݆?co !#ܢ3]RY#i 'e !; 1P?m70쪝–X,:|n5%;i@dSN-9 ,ɹZòs90 be(^UԶ6A~aGn޿P 3VG%M/?R|>c*$0 `TVdŞ[vJ5ݳ ;juŤO[3刪 (!𜪾m  f1tsju>QP\s|evL1|Z .E-+jem<)iZ­7%ni=RFO[)cPWwVz?ƨCLt.茦cj+bK%*'1#{Bb+ m.A D{Xv`~gWw^?f2P*bbR[$FK(H"h0Rhم̔]׌ʕ.I%H6G(h[.PbCzU]fvd+{,J4٤.yOX фhz(Ylpjܞo=8FrL!"a;_}cnBF{7.ubFȿc|gPbz-1]% 2"TgrOݬYE65с69ݏ>E;"biKc)ܒ J#]82ٛG9xbwHDjR8r R0(m43QP@9\ʾ<."c?eKuC F&< 5 bWKy<{Iڣ5 >ZV?EXJr:eIOTa]Ɵ7"pxՐ4?H /=708YF$AS:,}/ h/4`mRl: hY- I~DMtb[I#[VoY:\؊,]eGi<~qHphhj>5E6k/N|v~5LoHUĴvZ-$xrBv7>UTu[þU2.z5v(OyϯIkᡜ%*nc=s|{O| Z^D:Y)"%K^*fh;0zN0W@cni޹m?WҴt)wQJޝ}$015QF-_q(*P +GV!ڗ\BI٪EEm\ 4:U"ZGeֶlo~jp6Ȉ-1lB:-ߚa vA5bGW {щ0TVaeB>P'Žz/P|_#TwK>:u*JzU$_"LwDB2/F,fUڵ!ӛtJTG1-+}Z@P9NCedd>RWH* 95+k4j>Ejϟ^4*7ےf} 0.6 BAmJdglgNKZR" {Udsu?k,zVHy)p{l+VEty]ݭaīppk'_D霥s 9%έQ/a 4Y7 }Pp"'\47H. ؄gx>LI3S+dg -5zr %i jmq"5.nZ|j(%Z3-*!__ctZJۛU>+6sR uͮ곺7aN\]1*03Gz8h|Xl*6^ =7O\d쓣a((`Dp`Xe89GdR˭N{)M67uW0玪X\2o-&,;N >!=k4:{KӿWY#C9=$fcJbexLbRXJ.@YMǹI:c(fhpXMe bsԐ>ߗDloy6%?R.=I73)3FpC`1Wϵ^)s±G&/sx ^ͮUhjAibL/"Ck7LWwe`ta Дp"C''W{^LشP !˂ƅ.lo@o[YkG<3L'*;Ӑ[aR腽3uBGLMWh4x[eћ3C=6覞KL?E+`5’<<.3y=k7|:eg$B-€#~o 5;*8=Ӓial*Բ⟐!/RMva?\n5XD'k3 tJC&y',/+ c[I ռ3U(-ͻ^B D0]Ih}m,n]ΪĹ]CeQFm/QBsa€N 7ĚZ}lgtIl,;]y)`A7sS/V%ϤK:!pG' *5WqmxѤKw1mwWv+_gz-40V(Mx+ŝ?\ M8(AgDd5SF?-ИbH0f[R\{9J2d|g0_Vu4iˑU|Ħ1VGm,%G{=]m:JIK,Cɐm~SӚ88 (M t?#/+"V"GZj WHfR4@؊pⱭD"0Vw{O::iv8df!`Os;`OTW-NR<@;lv̢5+8[$V 5%JG֯0&s} Jx{9s1T w2Vc2*6w J撻wD_{xKSy0Y5_Z`ɗ^ Jj['hG8lQ%EJf`OF~{1nh.B;xslxO| |FY1@rbx@A6М=h/`H,٭"IQ`^8&%'Dj(3H:u;(uopK6 yz{{bssJK"oYiKMF6Y>b*z1JfɎ=,yHiZ}bc  z%לf +,y%8^6|Y A;F!?euuҫvOǕ4%^ 3ڣj;)|]ߧŐ].ԬpDN#)BN][XAKdדCiƅ2H'C\e{+74pQUHB_hsk OL褋Wtx`QHo*8T%6EH%A/y'Cq63lc+p$KOo.J'oN,MFlyBW8o 'h>e?ǂd4^%ҴRWBTПobu"zy>h։ѐa0aZ344SkÔ^cDڝFQIچVt\Z yBNa.0)Oߡ,4*F^}r@XddY:AcCrz^@Hi罘}0=Ȟ/էnز0׍1hS-#6S&R.Y[c y@cx 8Vz к*R|5bmS^c%7&mȸ1?Gw⹉o@ pN6euC̍U\BYÿ؎8MpbRXAplz@'Bk(*1RP6@\y5f'PqǾ\m$^mM+1<.QRtvBpXtavlA=vsB6}"3UC^ق^C A|a۪awX̯yR^r kIo) "=הOd(N4h-0T+⓫e+ظ{\+3M ޟjh+%+%C[pL.Μ 5 J|e(`E믁u?`V}8ECs:þؘD;@ nK$vɫ'ҧ;ʦ;MH* ꛺XY#Reiubnf|-ťkw_)pI!OyN="!YރyY+zLcUҽ;iZ-Wi0VշnacTmpaM/wDsXF^~wV:N1;͜z1|)gكM_,R*r,@32GoCx 9/ٟ3fh3ŵ:->CQ`*<Ӊ$[RlmrO@\z"Js+.S=l> g!ܱ(̶H 7U]sD:U˅cVIn.)s@}uE(T償),SȽd @xxvcC4iFT)U|3ZgV m!Hoqқ 3lt=ʄPs%_GKL vz(*mJʐƒlY"nj*HiO۸G iNDO4~OALkPK=^G Ze8=: PmK| PyRD*snn Sk^y ˵ he$"]5> +1uwgjw|˝CjHYpR)I"< '6GXlm(ʪ|oMH:jֺ4ˎf6)Y|?\FM+MBѪisRt쏏pvMwOzu 3BT,,tyjvkrLá}RɢACГāpu}U /Ǡxσۗ ܤ ;_)y 1)B#u0zww25Htr ?IRT*6 /6B l8^=gy꽲%y?L F,n֯7xP<5$]q*U|E~]c?xKA!Q?688qfTlH-%zEa6z <\D$A>8:TDrx&w!1EJSn;ZG4o~spfyAx4%62fp>y 09!8+HGx%3MS}ʏ 6I(yqjBX[u큪*܃DVKJuE=jrHQA?-nBeܬnˆSeBǸTT(EFG)vΣF G:YqXux4vEJʖD. į׎f j:xea/ j%9,s=RsŎk8J/"C'1ljpQ!lC NsF70@ 5TReS;t,|v//YRgKR&Je[yBG CgE1<5]֊hie&7}6,[.!!jxwė(Pt͹ 0olؼ< BPYC{Q3h?M,*dYDQv|ǘA iGswRs3wxZTo2sυB󱤉eq #Mve`@@_㦗IiHcz[p{v9#&۫<&S2~p86+i~z څLY) N,t(v;x;^bݤ -Si߷80yOe3#dtluM)+= IWW9TTdˊLJkO/ k:7۱L$/|<'@?Iro Wo N ĬYg9o!`j6Ƕ7 ψHQjzw]WDQz!PG{NQup%1KqMLH>V4:H廠\ "}LqBW`L X;\$yez,aJ}s;kBo0~hـ Y΢֜ 6S (&n>)ԀwB̴XV: |CzDj UFfª>H֧rY5Bu*ē\7 iDCG:`(c\ҥ'dz{a|Jfi3aLFGtiP%!"EJm^F ~Hכ5-GYWO8{lH` Zt!)z.ո\EL[EV91Ds>4RX #yJ!Sd9Db1ZHyO8Ա@T/6z&Uįr(Ec5y&VѬ@ t4"u YGRaF,LQs t@/c!gTg=‰n g|2 Dʚ92`xb9TOK0 *q"Ag~[R鯘YЀLP٦" |ujƱPUG^Y8͜ΏJFtR($?>[ꕰS6w&O6y{g1y\Ы5V"&B5r 3/9C*ZCM䁬J=(_vt}9] t[ UٵܳT+ͿJq)@DtX94ѱ ^WqŶyOo{y ئjL{gxd9ԡ윜=,wYZhxegor)Qscu'g%cфGLM6u 94Ya@)^ sacZ֍YCAuޙNoɧ,,w!!L=߼Mt-_Veu*XLEmnѐ>/&LrӞKy|Kpp$chaZk)|䬠KcISKC4^1k큒½sD j~\x.>`1`M,M N7)Xu9Y W_Tn6Őz* t3E~'ݸ Ģ ;ƺ}^*4z V a,rb>4"<Ѩ_a5^8#Pl9RirIIU:WGE 9kY3Oj;PzI['{w~%,d AC ض[B8ϳ WW=[4l~`K.D NwCah& MxId k*3 _֊Hׂc ]a' uSuax ci@Ef~T?M+WߗTX0+g6gWT; Rmu;8ǘ{@ivT{o< ɔ (v'k߯˙ ͳIc8(;-Y<ㅍOd`r3I2omA7MYs5%}ْG]ߠ{%=sTˎ ȆȽ8z okYj|Tbڇ4yU民~t7[𵿨Ͱıhtzqh܂BYA?9XT_v&٦LخA^)gUqˣwBLSq+iA \j~rkU*u\EUnp!;C4n:j*6fɅ1eQQ2GOqz.D?kR r\NT3pξ+5a^t׉#ø3 b1snE|de'HEjL2{zrc: .JKÖ<#20ӎS+IA0lBd؉4_ 驝 $8#}a,/C4}RK='٢v$yY(~6g/FF.}U3 J-]4OHþߐn~;O߰ 开FC:LwZz+&si`$j,HpGs@ o$zYFMom-=Ü0 )Kw+=,&@t:SUZA9bz߃~zwg 7Aa\ 8C?V!7T[z'tȗ cu a&ފ8Tgkľ-i%FwSSLْyQ'v[{…p29B!vt@ CQX$5;6@/Ȕ4Ǒ|Jn"kU{8ѕ ˓a=I[{P"\]Q'IK3gBPV7M]>QT1!>[;nzU0O>WWSDܟxy"du [iHA&_N([f7Rz6Yɝq[4gἬ^*~2ӓ 2e~F[RNr=舥-md3 0ݫ T(Vm$:.%N)+ƿ4`@,x1}QIw:`bnyīGmn*D.Aݖqn:dmDeMBUF|2۾.4[Q7s-X0qm"@Ы_gJ- dFӤpm"IT) #nNJwryʊl4uk^@[ X9(pq\ߥɑť/-枇)WCr̙VFHGֺIUAc?e\:RWKLϹpRL Ncsi3Gt̥)1zK+G<'m_7 }O8*Y$fC\M.a /8_zRe?{#Wѷ!5B^ D582#ڽ 3J;5h E8/)h0IBƄAȚhjڽbwjpňi4KW,n~gOJcDg$/۹Gة+8Vlc[ǹG7Aed}\2A'k`wϬ(#Ha*|%fHZ1D_DFIDI^SfɚRlUDIm1ZWP. >AO8^DT1AmVg?ϑ,(c֕ 41mu0ZC 0ICz$]#D%Y膙rOhȧZ4h+=ǟJul+ Bk%EDrεP:tgqJ/q.Đ,?Kݫca]$?Za.V)S}gMXs\W63T|̷ĆPzLMۉќF< KsnV @O"6Ŝ)$m$-\J:xK>w79c^A4pr(I=guaEčIȩz#J7̭ͨL.Sc0GtO-k6hS]2@kK48ZsUqk T&nnpfZ s  )W*Q!g<ؔ7&JJS;e[.У;@E$r@]=Thܡ]Q.{)*Ns2\|Xl Hj2XQQn⨰icMv .=`r\ 6ʶ FbHiaj(eDZwcYSHOÿ 8-t.$H 5}c7ʣR3L5^,DO4K:@S@zY|id 6;O̙l/: KeƷP|j=A^Tj)}9 +8sNHkG5[T s|MѝLYA_M,}FOW;eH#ڟ?XLe qR㇭MܨOH(dY;6ɳ2Q17/H#OZ9CH,)NDH S92dգ}1 : u SG$}"S&ZUa;GLߡ-^f5 \0\ ٥#XL2~1@Ÿ-dНZp%q />Cnlޅ%p;smT4NF2G Fl/ cᡭе}o5npΊ%'&*GQiǽ0-eg*xIpV-/W4=fŸӜz͕!L_=xUΔ2:&.OXPn@)‘R~[GRLCu^h4YC[`*OW;y!6q܊%E%WF5Oi]t5 gѮ\5ZP x*o{|_I}`$9gd~Ւ;Ѯ yS[`Q[Sk`z` cʲ IRaqRԴb NbJco2G_F\B>4D}%byrɐ~'4~vS{1xqujwNO:b,h I!-U*,:G^ 1·#Ҫ P{&oH8q V"_ia)_*KFH>Ͱ7(OW_N6:Z3@(H q˯/n)./-]Bs7G@1 w27p}uP1+[D.uàu~$0]tmaK@ )ޔΙφz8ح&0gN׸Q(o̵orQZ}lwiW;l'dhtq0ݖQxF [_=qV0RsFM>f/= @hE~&?}x  &IzJۙhڋy-"#3@RU^%tobf?m0S_Ƶxw,mxY4sI/ۀ?fm9;)2ݗb7ECW&w8*ɓ` 4@G?8hƞ_?NCp8QR5OůBn{%Q8HSF̈vS-?G;\j o9 $-ڛvm~ !xB]y+C)ɨWp҈K(x16T$rN~\FM{+gki{߀'{=ݠ.Nk9oj!QL$8mش.:@ѫsB{l 2?=sQȕorvcZIYy%t:l*r'/J|w$G_>$1A7qD\jѓr4)hgTl@bԹΔ: i%tFZ. T§,%UZu;"OsY=rڍ6K^5*;ae^#ԁ92+ h MEkyԧrud̬GK Oe'|.]ږI3o74]@lllRcں}Tkׇ/r$  uC`FJY Iĺ!KқM<$B =q{;<(գXٲְOܯ3? `K#Pci_ME0&#g ㆱ3Ro%Ȟ&z |qL`F}@^\zN})/GnSݼe QjԝUFA #yŒ_+l^ϝJcM։ E"I8\Wdr HGJ T^(j(ZEx;*n %Ƭ&8¡pֻ.4rR2I;Yr=a,ް$C? ljך c*kIsDqEb=0J-z_+dHhg?D֨<,nsW &3<="=h8f;@VnoZ_LQ 6gHYzR͓sFۏ7"nT6_*,y8u"~POozzBxe6S dLDO=-3E#nErȠF ~e=ӳ~Ҭ>a!p6~S ;)YʦČ4X5\{aFmu~:`&_| 3DDX mN6.R#~Jۓg;t@پӴ@>R`-tnjRϴl!s䌳] >;%oL.' +K8>O?jkai4@}`4J]b-1EfgWO2'|u܉'ܱ >J!RW#ԥ]0= 0𯇻nY~y?} zсqK\38O謐=>俚? `!K.dӏ2UWCqكvagi\~7Q_fgۏ >zZCuؓF9{@ o֣ 2*׉Oǚm/#s^}aVߺIwBxʈ`XK fQTڰ%ǯ` ^ {'Z \ p2T-X}[M6rxSY -T2;h;`>md Pj2lyb_$߯y'W\YvNɼαool T0W6_[9Rxe8q_)mA',E~j!Qy=i9d'J@L s|y5u=>wU0II~-w&xfHɌ9 -$'h96*}Ჹ|U93flL*5n-?FNκ#G>yjJ^<px|AM;%t ɇ[oI_!S;9L@v&pk0t@oT:Hz(F/hquHAj><쪏W; zS}:3bL/τdqɍbz6!S1p H3#z Zvj sghjJi g2:̤IɝLc=ޞÆR-T. BǦ1q.Dw-0O(`Á*GDՖg,yP}c5Z{bҳv{;h7/rueH\B\imȱ?#_QX.ȨYi: 3 ]qxNc1}i ˝ѩ_ wp$;rs>~7\;cni a5[A8Kdu+5(n 7G؞WzvC 쐶N|6Ḅ +,G(E<Hz_ŕ0,b׃C{}JՋgCQmJ%)J4 ,25"U-S4t#pHvNQp<ٜ`T+-ds生*MZ0bewUN|!.bϔjDR9OgH8+U-'֭|q[4ɴJw^cPU!ؐț`0f[uap v90sRB,~5ʶJK?'mW?]݁jP@xZrH; ]3BXԸu_i@P<,f"gӑ {<9=@^@{wHL)"lM{5C̀_>e#/(leevW84,!m)v 0ٴ!O"Us5LC^oQ>r2$Oz,im5NDh=+( 2>k1TԤ{ (?u gx @~7""Cu FuˆQE\GBu cqBA¹.ُͯ0@Mp u 7/$YJbkQjGxE2wJeIПg *AyF~2VdRvDxj<22ÙM2rcv'}) Lb W NM|L,Tl EXq+J7 g6f)^Q Z+Q*(&d৽EjꭣGxd(*b-%ȧѬ \S";pS3! Z ]gg2tW'o8ÿ>.F$aqښM2Z`4Y ]ț8 X ATw??)Qh"뙮R4ſhcRG$+>MCA+ojwA7p}Ge]K%q3EӔSk6Ur(ϟliY;iNJ{&(+9:4__=s$kKê .'%(6]k!U+n-TҥWtC5P M-+,εz^1.U1i ,T_Y8ІZn" !Q=赛% t0LJ(<僟G=E}En-h /mSnLϤ (Ty{fAk@G46."a30MT}@A\4n1D8sn7:AKn5|:{;{ O{ w„0[^PE.} )v*Ct󩼄}8+!K i k6Cý#܅|^!qR.q`гPQ<Ju w^O/`%tWSH^Q V۳Pe咠=CAAu/ܳ DҬ8D9C/ȆIB6߬Hjg#Tb@԰%˘`Nè]mZ/嚁d@w-yڒwjjc[]evXJUW=` TOk/h([~7vr*Nȭx׸jsr>pZ$Q*ܴ8]jmS7/rk2\bS.KCca[rw)]n*lX{Y VLFz kWʹV*3ΰ]Do6P-(fg%4-pc6m˳= ! VAEZ'MnQ2$M1ׇm 7q?DͯsޠV@ i_ :PӗNJ+aGҝxΆ9}E]`)exU=(_Ͽ12 5@qקʝ֮`.:H ~ oA/1u _'O+1LJ]]ҝ#[2!U7uJ&[nh[PIs/V¡o 3i _=ݶ-|" ⪥IEqكa茑rU] 4L a*~9 qפ̴CX)_{CWxMw^wsؑAG7[21C2ߨ{X?y! jw  e]yӣ ư1Pp፼M M~0K .W  }Bba5 \L.)"7ۃ$}'{J vFmv 1V ' EcX!&eI}f~4Bu#ᄌFtѐkI`2es|6zhH$&j- 7N}Ѭ%Ejf-DEZ͍Y+ BGȺ&,Vʺu, 3Bvu?K| 2g[[ί9 ՙ­E(Hoai/O{g7egOR]#];u I Xu-O+MݣՄsNIE4 Ī_kʳv =Z2T';6Fڅ+zzn%\כeTۗ{:LBkqLHJreyAxˬ}\R$aGP&~%wزXĜJgx")ń({:`~osRnh<2 p6N@, )mVyٖ)~t^wLB5Tf8W(z RŸyJ^O++ 6{过L3At:Q_gU6!Oۥ'ŧEgގ=.&`KLX®xqb_e][ywq߇@/å/n.5&&z$ КOՖYmլ8sj)q?gaI()3'|Xo'j^n̽ܛg+&Eʡhp I\4.Y{zbV }k |%jiں"7f*b=!z/x`)Άġƺ{+Ggm[ߗkrGiDc3$pNZw?v؋Bv^4o ?D^LEv= fwI\;'ֻ#0cF+^y: 6IӋFL/]Ĕ3`Dt#kI#u>_xw'd^{2iU޹i1IyeZKf ;IBr=<8\`:F@e(V3ii8y7ؖ &?,DgaK:٫YIzh:P<,rB2zhCACp QOc__IeIl*)uƤ%a<[Ґr*; E}ԥYrsоPM{~{Ɠ9tD-݊,5)0VQml{JzMtV\v t0极+_$|CTKAF 3x`ғ_R ('IFK@]ͽF+D)UƧI&Eb;`G C/ 8:f )>5Hw4Ì '腺T*JCDK`Lvu<ЗT=Jٲ˚joHWI\ `|pv1B8@{&Qa o8_G9Ն @U7qF@$muH| +'UMOK|8Ol0ibiD!ǘ폢a4Ika3j jɎ_2udY*_.U`"/%)~zCZ'C+&zʋ*D1P,?$:^ xGMްߙCˌH Jfڣ"gȒq, =b gLBe8?)A .[12! 4#y#.:R}]?[00Hߥd~w^%zۈI}aRl|ƢݱI Jdt#[g*,4_;yC9iXXJPG ~PB@UzT nc˛:כc>†`r%c&m-|cwVFE.2/WYYJ2bEڌ\ZNAJC 0'S GL͏vβ䛸>abɚ W3pr\,,W#=SXyl4 F!=9k{l'טA,an5oa= ;x#"#*֗rWKiL滞)Z i ȧ@RAoHJ~-޻P#`)F,fn Oaba6(-bpipGQZ\!2^-Q\C* )kץC`Ұ`(6F n tY1ZmצhQ}Uro^W%y`M[3Q{JLkGn25D8]nVEuت7yוC"e!l)fG~}-Fd«h6Q8֢q (0 *_Z^bQi/.3ǰD OeV7߃Rpzݫk6P",8(lvNQg_]Бgx&a9ryoZGb }qxS9e/@AW/3)vBUzf@ORNshI6fU<+Xw0VB\UoL8[X:#zgS|u:2,-wj|jX[jsY$s%X'Ho ;ɩbpKh;y|*jP&QE}8ҾnJD[*6pcVXm&]jps1?7F|[hA<3z85yPݜ;>/q\PU0#b, R&O5'D4kΉСa30[< r$f}/ܬ?&|HRWf|Qkgdh{m EgA)+~n"HUy +,U6pn9bB%Lm)N3w޸8to)wkӜ!1H"@]GC4å-p;Z%p2P*ݲifve6XEW4"H:Y` m i. JT-UvbbTե+$mfS ,Mr.eUa·?3#Hv-qM[4F0ӺJ}/Gڡ ʺ+ >!RY|Zы4 z$؊Yޚo$fbA(z Tf{bT&FIHLE%,Zrݚ[aAVqf&!Zgj͗ :]EW6v9-JU!}1FBQ3Vx'M]Ak " '&n=/{Dos<_P{1f=&(s'$S.CEZX6BV/zx@Y{!梥@V)Nu\}{Az1oY<^սzb{HB-KaliHѲ_DfxSP^;p/]߯;zJI)Txu`W8τS!!*8"qA8\m)gKVr!/uB["kJ,v|v@v3\/-#+7J]Ը}P4 ^ld֩^!PDjLČ w6iU݁==}$>9B3u + Bv1S}Q`A|VO~v>h+=[ٰmAaf"v _IA>,X,WD_wZ>LF.nMYE=BVlFT!Q|aM5̇AdvKq)*KdnH] K+ TC(&ns8zqkoF芢IWVVyKؿI])ޡ' (2a; [:}X6˄ه~'\hd#3#Q,qi:LuJ豮>8 {ћeSYEO2+tdQh3f+N)51WK:)Bk_dOT}MذNUl*iyWV=Գq0Z X.Q=OɸuJFr?%WghS6{oqKB,{! 2%)#&]9v BAI9csBR1@8fg"2!EYY.NNïZeqauYs_FT: kwk#CPcJB,>\,ZJ*H,r-G+$x3t.DWcZ }rn%6͌وU'b+3OEɔ;@=~Vt PXw eϑOM\c&6 %[F)6|6{dއ)ғ(>^)FRX`xM*((ۙ8srSN]'@Ԧٺ62|%duؔte_ iUjY 7c`Q4I.$ߊq=;o{9Yϕ 68p(~X$p2S2rYmd?,E ]\/P܍ i4|[EV*cli>wfQ*un>DW~yi@\!Bqxg}PpF( ~m>+ P Ǒm3%SH͉ڜk͉f- }Oo:H@1҆o6ʒ ꑥ2܃ a)%^;ErWO\%5Y**  p`G] l 0%PnPI!D1+|qz$#1k@g:傗s?2G'4aW\B€眈.yܹ3 RG3GJS2#ƅCd3VH^0ZT)$߾M!]#i$IrU,'kg}|~i4lR(^z=<-щk~qq$I݃}4 E4I&zxYtտ6G;D.]}0BtQn6衛52+ D2|'%Gierc{cEfh9q}E$&YJ~qH}#*L7 GF>|23g$r]T$O MmOku:ty(pw%lїKAN:9]p8ֽH;DwHd0GXjN֞J=KiPf 72gF2E&n7Rj =3ݠ2IƷT ˬR>gKkSBrvs׆|\ U8LWxjAmz5Ny(·>9f((;E~w[*)z̙'d)[2`>I!NӝE0 Uz5@TAA}=W\}ߩ{˭L85Wtq29?걭wwXuGLoiP?nx@L0#).k!văV Ih LY1?"g8XCiKF[͢]k/&@PR2y ϽUk*ۖqIj:q>@a? ۱\ .I1bR=C}-i{C3zBGK7>1!U1T2FoN>ֱZZR|ny"94oJ~ش ՠPN5π,!*lIK>$cRb59-ͦ!j`c-6hj*:S N%ssie'ܣ߿bybHYsdO3ObR!Ψ^M5Fݒ=*\MO8⛑G-}GLE\dU V Q,%BS\ڈ>Euȴ$YjY<9WHi|/Wb6e4_[1+I3FuͶԛf~ߑbK%#h`@zv=K,^PXQXf/9φ*x9avc~pSX(g qÊ ia2GԐ[t+c.`z®ňR"iE>R@1`1*&EDUUg%)/md*hmvw;EUP^]`60d_욁ԇD7#q"} # L2QZKmcr Z_R/k^Agg DOuO/2.mQOυPEDarBe^#&GV"`BYY+ י05lՓ)Aw\0'OʲCAm|pF Riku`paRnHV5 fѓZYy%b8^CBLC6zsžBPr.IhbfY5MKxwG[%r~Jb]z0m: 5.&Mve-s,ɐ̧-M'RL[}`j_- 9{6fRD5I[ kO%!]ĕH'Mϱtlb4Ho3 c&f{:?q@qƍPoCQ5~ *iUS{`3Uؗ@cp++X%^,̤NشJD%ؼ`³LuFcrIʼ4-/#PQ+S>8ޞYTo6hHxuq?cGWҳPRq:a0VDjjMd4Œr ]O-o Υ eQ{X.߲|D%ΆMXf%o{ۧ[7nZ Ud(ד8b\Bد1lDM0ۥvKD3FE4FD50p3UÌƳ =a`.*wkXqM."M b[]XWv .O¬HwEṷ{rXkRd3#;߳];Dǁ57O"GjQ;0k7 W"scsڍVTyE.KT]GMdc1%45vq0b< piu`:Ӗ jpQ]!5:=`1 /u~oEZIsϐk6j5Vxl'b0E$a^QՎ^Y%Cߠ `tZJNū1h@iN+Go:%w*diƷYFm^_ZE516/EۀEdketyCBԲ=CS6E1ov,퇿_ b$e\OE<~&Z.`=x r*^QCdu^io]6@Zd6h"5]wqF/pG4л"oU4۹ZJ ~x`Le_,#7%_T.)ޜvj;6 Nip^"!Q2 i0`-pd ݨE;O}ۥݲz@zωc>;)l#ИZƾB)Y#>|^^fJJ*ŊdwL xoЏH~b\Co}@z.Cn*xstoܒu0vXtq=<)L(Z7(R2t UH-K8{gjKDۍuxۯn_j%ܟ Ih,i~n!%/+FlА~ڙo9.EvYa p-&+cNC.({[|`v)c*O0gRaeH*,ǵZ촟>b8Kj_E@.`YP/J1/bbg{"{4Z-?`oq-O1TԧS&Pr{e`H" YPGEGl"wÙ)9:֢;bsqפ/+'݇jRxNfrln6ƯKDzaF91 ꜥZ +0P2*;;C6-$O5"oCpG*bbcR`bSo(ȳȃz=86mBj8瑉F{cVgWhBR$?0wϴw(L\n6$C~ b}`h/,jC'OfXȁ\hsvf_lYo,bG_1^tK.ӗ>%M=-^wr-e?jⷤ1K0?aO[)䀑h6$)>O^# E/Dɶs!*iwӋ2-]y;1_̾rA˥tg\_3 >"e׎j[EٱtyPPLE@T18oG9N9L0ޫ|smE% Z2P2%m7T0j U1@Q%m]HaEhF1m*p(1O > x1-g;BbNIxK~}P6@/jW_ cRJB9dxŦ֛­%<O'UH01ū ̒'(.Hu<r'>DkؔMmGB8PڔPٜA˷)Hj-4Q%Cy\]]ULݴV%\"4csUc0&a"@4G l/g^*uMqt ԕM%vsxW h?l M2 s0W>H4Pr8b!;4?JQA,@H,&AC8aS)Bp_0K;KyrA?pUN3M1]&/:>Ē΃<+R3^'9eڀiX۫VW3"Oq=TeDik7»ar|qu0/kɼb6OPc>=AÍb%lTϏڸqoJ̧x# v(GOΛ_XTD2 MbbB~ PT)(Eׂⷹ6F.OȆլ:Hрzbq#C J9e{J1U7 fe__k%,VeV7!![ *wƪAf\"I lbK^/zy?BEN-JAl~DpǧOѫ`d]*K(n&RM6F]3E7j 5%n;" RnR>t0[P~#ШTl_Ĕi.Y~KnXopFCa&0ӯp\Xu 3M񧈛*|,_ByUud3ބlo/nA4LlAqn||>-%yThyVe*#uUuW (QF8}b eE],7*HHBSd"(F NX8lZ$_VߢM%RnΎk"e CIP9O슩a)B\"*!00]SHfpFuw?AuV8oIG=sbо=dHTἍX :@pR^=\ڦ9t偧Q%쳺Oph59^ug-innx{a2_1c8irZ-<';ٶwI~=xߛ1Ԅé 5i4K;XEu|2hT{`"d5Ω itX3͎yc; G=Y~z'l&Խdw@ Eg9]]}BSSEe/-r-̀6I#%7pa7ʨ~&?K*Io 'b 2_V?&8E3)'F|`rPPr~$|ub.",ܩx1@fN+n;؛ޮ2 `]0LHA!h keS'&90‹`$)MN +Ku[ Gzr4fp9 Ko yKWR=!?4C$ }U< ٩DHiL$͍M?^Z`QV>lTdw&u~9⸊@cfsQ_D,SXo:UnvIJ) 8~1*nzEhk-VBqC׶L7~Y5W7kHtMU*-?ez3^ڵvX}>D_>/E9vʇg'Yx>kV]L/5R+;sb[bN]!xDpx[I^7֚)VS^?'ב4^%\4k_֙Eb]/Ă_b ~BeXt|fy82S U]P(+wz2/;p-"q$OhbeoMZDR,⩁\Vw#|m]`E}xyױ h |( $-yQKv fp5~y=mv>bM#Z=B7 Z"]dB jJҷ>̝#FSԊn͇1S)ea36@\ﻆS|1ǽQG -7h05C- X5댬Q+5UXG6aٗyW L-s}nj"tih<_\< l;YP5u)6k v^{nKTa2UܢN€/)X|jFM1lE>.*#mج^)O1A [Nf=Mۿ5A/O3ߏz.$pkڶ?5G9i|I[ |~ϼX4i2^3_t\%2RIHgȸ(B׃@k|!!,}hsoV=\ݼW7ov~y3m%9Qt`FX@q<Idh* &aIx`Qݕf$rbR?p¬Z&boD4QS'[RjB"(@tnAkHNVRh{*Vca+;9w5zvF[ -e+Ղz |ɡWk9#?ɀjؕJBOW5EY1{9FG'Nb6?lCӐVZteE͡5+WixP%vCgbcrC4NCY ߅нA?RF^JTT0t$N{ׁ/~B0  ™\7g/vL[pD>}W68e W Eq%(? b0|] oB 8 - C YaMoN8K7Q7qdVS#j-'1)^f`*h C ^sf&3QVIȄ1mvW"w!lܱe jֱC  xut Bf08^Qy8fϟ[ih}e_C]riqZt= w3VXM(+0n1>|AfY8,4qm~E t1j~P8=cm'Wy{4cdIUa !M1 îsN &Iyݴ°C_.ͫCms heTľνjo^z45M..θCg65D3eJǦ'@4>ÞACzT">O r)@PE,/y}aD7u+ ^ÍcצV LxWH:"4UJ.M]s̥usWݧOY['5~aXUvf6Rثj^kG99wmxyS8)&g9Ap y9v@NAhT3Ѝ-a$73|jbe Edf`"ֽ4̲|5KW{ts0~_A֝c3n-iW˖d~z+A)Cz{Q4DxTsHCWr~O{-[xd'G: <ؿ7sA ww2iN;wX<".E95Mu7a!Z`&~#"؁ra7dYs-ycBM]KrL c,9UeYO᫮njMekȌy1rXs_U Un@.?Aùo!ɐ:=&DzY$g,z7 <{\!cc;ݟA9|-٧ #mJ};ٴC="aNrF Lռ OvwZ8x́ )n[T61 {;26#w2JSEِX ]kbqux,ѐ*wJOú iku- \,X0e [2R4©ASټf#ON3`V4Wo4 T}IBHro(Jx|P{DuyX-եڡ_&{T|lX=0q~p&$*Vn;NaXInMAVe} !G w$orXVas m{Շg={MR ΚT rP5a5ۼwm>)1?1jۢ`/+8atczW%YI'khҹdg4\FTRxlIE!دjTa,8&d 0;o $.YjK||y9X0ŸaEB)4Lh޲즰E(` ԑÇ8U\Tb/3=Cg.j0/(xm ȱVݬXD[x[=%̠W* ͵[] s ׌Ƶ9po#c'}"PYQi` hDSi 4MCN>qcIoiu)M 9 6H{0K%s?!3wA|ڃocҗ#Yk]h>κFR]ZnѤ`rhqEX:PBhEu,,u&{#L/q[ȣ݈SZ_UEiǹv+Mr&v)R&YM%K;BBn!bKY R|N%|ȉ[29L$m01Z|DFE0~6Z ļӾkKǶbDlvtENƀfYi 5|Kt-v|7 8<$<ݦ-"YRS @Y6(4mNO mZen XJ%gf8 ߒĖ+!~ >nHjSv$A[B0'C.ifw;uTᬌvFh?84T^roK)*#;N[/6H6- Rdw0#c&^R42 4z}d&7&JΖnYVy]Z&GUި~`9 =sA>'Ha0 IXUSBD1ς/;{J+YlU.TnJeVCU6ދee3X`i*[O&$kC)d%9|esG²p^P5<(^Ab ?(Rn!"RHkm@%E։PSkJ{=[I뚑M^F&n4<[9[^+࿕]09CLEJ3&mq(·axjՍ&>~;0&!W TGlso%}MHѴN*d/M'T ~|$"`=,un>t?[}̀XD/S.cipҠ]F/ AHZv֩mOZBЈlYAP9DAH(:w.Ɯ-T1Kd9 HlZ 3Y=6Y2>[P+h90'(ٌuh#~id=%~D hdw땵b#T<{Rb%""g`ƣY+ i@ ,QHFqۄ4rloрƥ(SKG#g\FnVorhhO3K\19MH[+tbBG$$y\G@Aaim}ypͨ "n3'm*eXޖy'>cAŎ9giw4SᾱޮSHsT/Sh;9 v*$^H6lxfD{xXN/Ț)`Yt-ǃNAٴ8?l%s[܋`0JOROTAhȐ.Sa$zymŠE9*j+6aO5CVJ .*x.*ǶI"iئ9zJ[cxVCy;쟖eHx%),<\VD&@ڈҊČ2v†>!'~ڻA\f"NWf'^&xHS)l7 1MLN& $Z0vS)6wҾF@`ZYh贴 }C"nˁ7DLbKopaVjHH1iɐ8lrwęU_=| 3$sszi x8.k0#3y򕃣0Ίc]Sw첄[0N~ >=x,;;TwmMQla"yiڊ<$M`IRQS+= )b'br| bt&kCC2I?j;bP~$iɚ6Mjq(5eNCop')p'mPEUFp<-i}k}޹pJzCX S9 V<5w&Dw8{e)Y%qc@ҊN-etKc7PU>6m'=CTX#U qGe2g,:(]>zt1!xڻyGBvQd"Mij*onT8 Z{sN9FTqgnÅ U9ѯ6ܓWk4S1\]\ ^I)=$fG jhp'jG]Y3Y83yo\7oc fB m=|G65z?tuJc[YWEc~z{m޲`TsVt 1ЀKq^VyS"^XN4^H kaЋ?!M ,(LdogftJI!fJ+ `X@.[Z LLUܘpb.JKA^yroإrͯ} P@ ӯaikY+(zl0BXMo# sߕEܧVQǘCI1/S WO4ʟ꓋J'Ǣ1 Hpq9((yV_)FθpIW%̮ k*V>'U]1,kzDʁeV57ދCo’7Uօӡ?cP *);URQ'q%E[92/Ei1Uz \5*U5Ep2׭2k@PC5Clnʧw*tʌ[YP%Ù-|\u& Fo/V:W\u#PE聻7.iQ&둘_WÒU5/Ձ`bp!/#tɯor%/Աm\4]%w<,m9k)1/ {N#i6SH$0"xvK? 0Sd{[mK!^//$Z#y]1NT前wF$K'JCK1B}_ $.7F]akҶW.v:j*h*'-p@9~:B]c9C3,gTҳS{8.41zVW?ܗ)gu6:ʒхLi^ `@KBcqp !D|[@eI#//\0,dELrH6O2Ü㑒{X||l|X ˯,Z| vOjy'.@'dܾAf&MO}#89F?Ŵu㩇e 'chSA MibMS`|)?3I8:ݪrХ!DXz/h)wwFjԏ0Į1/`6ThwZ 젿5Y Ѵ~v.d`h|f&}UEӴEI xD8tyZmO[%˭yb?!-,jC{YĄ#_eϪ<<[4sفoQT,X;u c-zNۅ_[WCf.m19~-b ǘ\-ޝoy l#2;^=liEUiӔ'l[8PD, ,ɹg$\& ӯsIDYJ'5la+@ ,/+ל!Zcޱ;y&B!' '%ac1! slSUdz0wM&KD)ovK:9╻3+:>H7_u\ֹ2'Y+ë{0R_mW4l;n7dw#:lޢy^[ibG a/2G_l GviIZBZ& /`5x*7_ᯚXiN؀ fn.qV?rk S8^ϖ炫Oq G(7s!-/u[?(5؇u6jaQ+ΐ]('ї&'P*WçkjW ~\ء]VbʠCH[ bpGT4NN 9PV;E4p2Ĩ<\:L"±~iK{hsm[xcg $ʨ(j$\!k-ĸr)`'et)6Z7V; VZpQ6=V-=[?:πf<YN\#.leA1ХlaFl'&zn4Y~րIg .XR]B(uD忮UW ֡(Iof*G׀2 :kH:ަ #EiZ svx$ ,f=EGo:uz1Q*Qdf" cMY & j8+.b=69zR{u駟œTg'M3AL/\ wҔO DT{7~?Ԭʳrޣ-vj2`)j\$B6@qҮlք_-쑅Jb^q'2ԙ`6d*-7lA܂CGQ`s/l=;Ft}xV0){"ZT|;9=$K-W'x2XfF  J(ܴ$IуOű sWn%TY=Z2DH!HbBfN PFiُ!L+ wIKk`V<"D Z>pխ@"r+ DW8+KUf;Ew˲eu@y@DU9v'H$)A!}H+J۪r:=39=b׵)64~*O_J.F1PP!?/#g߿b fQlט)&h+?}eT(C%kXL"|ދ)8cq%kćO-PpG iރ\E8MQ1>SNWcE3<¿zPRInfۗs(rZq ^UR[Q`7,h\.T1}3l铟}TA7*'%zNT@ǯH0_dkUfC-=,VVgEsk e4i5YR%[,F&GYlW+ "|*>C4''%Oդ-nc<Bz Ghy97 t f`jz20`\y~Fs:O)N]  Hh8B]: }O NARy,KO7w m' ϻ&qSPwfak۷Ƹ'؁,Qf, tV7ZŗʀGY9<)kL& G֊47?`!g]I4R)1 hq BdYv\Pjۚ_9QÙٿжZu I qn $UB?sc6?o݁,)n cQ܍nN @ZxHEV^>|9fY6r.X}V*-$*h9x p:PP=-scsz%! 2,I@ۿKZN*9zV܅WDQO=ucNE=8\ߧ[> YQmEqce2\.p\s7Abd {IҬa%Rvu^W;bsR&7gKrZ8 m'S΁s܊d8uZP9 %Fn\դ(Z"sL)6G/y0t"*9VY~S2Ƹ7iVwnH8L6c@ (JT*բ%uqڬ?Tk'l[*VRu%y9[Q0 +0k[ohR,I  ᣊqr}' Z8Ș6ea?qyi./M&QsŠC䢌6u'oZ'\`\ XvWj8@>mu \vp#PI7 6DCn-PT֛Qi?Rksqf?quc߲S7ܚlc?l]qƸ HɏK1[TwmQrxUɳ ݇A+=~,KQia mzѥ32s:'BciďN|SH~6͙:Im5am>/x n#h< mlݽ M?Q 6lݻbscٵ^s'k#d\8 ~G\/>.7pVóP111 Lc? ex"Z뀳ݜA[;dYѬ;$hj]ak]LL4Ӹ{bxb6< W# z&x~KRLbH{. n=H<0 ^E&7Muv/}j[?;=8.vͪ3u]%5Yy P>SA֟@۔-G^^҉Jv 'q$ U䥉=8#l Vc ?䭼^5ğ]fS>ˢQЈ_ 3g07a?X KUBLy*@ /çbNYK7a7 OM+`\r1ty/LB{Pm&Zc3:5b2kf:}zE懽MwV.PD[PTyv֥4Ӥ_="骢? 5zzK=h2ҔkݷW{%n@X73c\Ƈ(ի Ks|g:?HbꞀځ {1[U17mvKI;2U[-\(m,B܊5Bp&dBR|J:e(D= iA Uhi$i}ܥh5`s^pBWE>hɂlEIMՅ@ҕpe[u,`#vPBsA/o<;9Z7!!uǧ\7mQc<~RcvaF@:>b3>mJn66q1GzZ,]9uCAwU:V: +B? yfpw`Ga$؜{)/K슓k?^Vnؘyy*EwkkINlЛcjiلOփڵ(YvB*^T/إ_r-!A[1j GwI&u,s(e]оS@, G34nZp4nFХp -GZN9$i۬.lJ``8~15;?0+YL >- iQ9wP ڱ'~̓RAw1;9܍IOT.αn:4P{or1l1-M'M#OI;)"nWUV()B;Ue∄u{0a |I=el`̑/PV>W$( 4u=TN.|O";hG-l/'/\S;(^K"$}&6m*Ts\|NF 1*I2a{Dsn.drX8hXWow O8Q :+As% ?E>쏶fDH 1׋7l>߫ڒمCGO+;[`U*x$;uJMKA(WR+2mTMWԜH`HLS)%|wf[~Sy?v0 `:޴_p74/-UY8ZYtvX Ե0q`Dn(W\hkN{)h'~%I޳=_u' xtabfH*rFÝ=.<;&ݛ-{ZNI|{ѝ䔋- :Eմa 4No743+tupvtJ{ysg'$Eκ*a}m|%a%h :KOOߚ+Jx2y>tP>[Y hei>"f?*YO_@, 3ԧ˕EtC5[o.ȵ\:n28Gh~#9 $a{XuhC$>!Ʀ-ȃMa{f?ÎB)ѹ% {t{K/IS&Q}Wž>tvGW̢q-z3R.$LCBiN\a;yE; @LtR?3ƚ.dEwz{z<'ŗ1 8X- =~DuT|$n|_=@+ 4;6ͨt" KS&IL=.֞e~F$[ #u- Y7\68kfnHC]v)ע7ci,14pjAl #b kiz *?yR,e8rA܇ĜHzً+eI@W(+pn /MףԀ7ܸ(agmZc@YXޠ‚ڎxH6օB*Y, ]@sI%O8dRR%Fz-V4iREuгXzcOBF>\@/Qlu76$xb[ (K(;z /2AI5XJRŬ(r g;Sq/Ϡ;0;}?M|dJM*Υ4#GXKe?7~dZtT|UT\oJߠ,[IԏKk7]xaf =Z2ν&xQoLlkeVqj^W',= l< CT-MM$ť(.IEGH9M&T> Vv֜λy Xf,s?Pbo X:0Fk߀dg jotU i<33?ǂ\܈7LC]B=`~h)փ^4d`lCƢ}xŖO9>A}겈w-t'-Z/aBtV9^MT9uDc`c:5h!M\m' 09_WĘE$KRfD5ݪIwt`QorLsA[ qN,?)¹Fcқ. GZ`z%ei*?mBb6MhOʠ/ =oRU: P?0cMJ};`e8vF_s< %"߃3E i q9B (h^_u("s=  s֝ʔ\| 6M$ 0f--N(w;OJ.TJΔ>Ý8nѦaYkAM+uøR5Ms>*iyu"Ȧ0K * 1s`gD:ɷN{/ 0I.")s'GSTo@!1g)rA ) @?{$[ռbpդ)N- vE;mTQ+8U8$L =3N#,NbhQQu7+mG>@ x{ٌ=2{FIH&H)m}3=q/N F,Y05lZ[̝1\,ƋgIw- %^y#[?3QؔFdBgt/CRj sXQ6>]ᮇ& oll@*OFUH&k ^ze<(Fњzu_Fgcе86UcrNj3 -m pi_2uCbJb3%p"2fƭ.XV14î*7`jaY4l/]}BTBt@vռ(0rv@bެNҍsUuژ/<ݟqJ-+q[1ᮜ%vgɖ(hGrMn"0"@xy&n&*N]Yj[im̫-w*y^P Å3C8rnw[1g#CK.U(pZ4[( 7#JE}3f,}?:R4Y$#*7-Aǚ€L՗*0P6-F4ʬc~lvk[ \`Q1u!GpwxlzBL8@0ݚªnG_ ߍ 6:CP廸FIȺɌDvHs.$^2'q5 jzLz9cԇCG`uԜ)`,ē^cSo@7JdubyLYJ>N'K'{ SFK\,v? qÆTv('%.Zʓv:oT4Ul7DmlOD+>ucf.! ejז.C7ϜA:3]G_ܙPz (F7`k{6#H$^+3i+?49xƦC6F9 Alm's ZpDơ_ [F:Im:FCDMUUI>q =T . _pc؈N{W邒8;F$g 8)Q@TD=[5l UkX/Gdx. uM5n`IǢMa)F]YaqQl" g6"uFDmeTfR#Hhf18:wӢ=UL$/ۉ4?|L9$,js X_LzqU'u~z |gy?)^, ҝLUg;&ehVQ<@6e 3}4|six:P@ )eqv)\7@O\Qa!շѓ Ǽ:N08"KW;ù3|n%2CPHnE6NWB z; $m|yȄ♱@A{^2r[쁴^(<,LZ,q]I3bO0EEP ̸{w g}@}[OE;i(wk&i+Bt*0+i KXu6Ӝ \"w@>APl'BUQ^ $b4S\Ҽjqh`KTHg^\$v]In'=HpM.7dof۠sDmbZw! ObVjׁ'_h#rZqtz2b"|;ꤴx=$A)Xv, ,#&T4=Bsiǿ~:3Dpi41QjH$).:2UzRcfWzVs4@#m/0~f%ofրճ* 1<.l+K=o t-Hq򶩛%>/,>|VsLuQJqV(`gKBSLmy(HjȌc7ʁ?| ]^,nզf62R8V+ w":ZgA(@K1!ORJS2aDo)\|y`@V{g[:=XEB6D9Sv?MF#$ ++dvTŢN:> 6U 7 7iv-1OEcZ)I<|z~wsT#fA$s#^waVjR/X"@,r)n4pۖKGƛ{ABX&S`\t0P:l52o墧^**w+9ͿP9?byW:ZΔw5Z"ԢI W9# ("k$ e !^IT_b"Л㈢;7pĘT[QC:wI鋪P] r212K;5{fvF1n% 0!DҊ'%b$JѳIˣhi&eĮNd~VܚV5q𒗎~N{m7gJ)k#v-nuq ~yQ߈=I 9@ Su[L9оPc \B/Xk)KX(1N_)4cS*TX|w+ՌK f&P3pZ;F5Rg*ma*_u1VHy;eWCdlF,U+b0~PFy!iuf]8r@SJU7E f#!8UZAfՙ..|n xEEv%k7Uwc?G>6{ƒq{<+ZND -=,bk],$O0)]pv\oB}0@R۴fqlXyTH83X1^:xFuVh4 ~ J"fւr,Nղf ,̈]޼\}7ɤ+?X΢x[ck?u6k.6V 2”eK_Ş.-ңn|ܶbɲI6'!ҍ҇@*Pʽ;u=sn_\9mփ!;oM$њHrcQ !3< 2u`^T6Ѓp#1co6;Ap <.U ҈[ 0 !"{ p*#\3JF2 9bv$-9jo浙'DZ{O~3[vy8]5nc σW<4_t 1y,p"vu ?wLѾ-L2/[t{Rf'Leو0dPf.ߺK-p):C/5lB K&a*14B "k2͢tTn,DFϯfA!N8mpy}-c=uѢ!x}{Z/Z1*T]@M=6B zfuX jyLl6L M1ǷhlbSFl^/ӎ﯈]/F"ɠr뮳/[@`,v,dBemLzI 7hXGpaqp( YH# 7m'{P ! ?3;&\f4.UkŷJ&#}7:S2VˣhxxCڳx 4}YAˎ9Z,_,Z^pxi3Zcv,aOCמ@0\t7g|B(K|Pgr\"^gJ I >E PWmRT(Uԑ1C#J{ܢBUÝ6,~EdOɎ񳶛f=8[!Z͠_BH:dDJ\ =[/ǩA * cɨ52d t^r4سt'Ya]@F7?rb*H$sSCSQV5' 6wLBvqBI&?ʒC\Tz"/, "ޞx"}J@ofi%5NPm]֊쿝Ϙ{ShC/X;fDVk\9 )ƀQkq/WŗoGe:Ubl#͔en=5M#Em,{!'U +C0Ua¤}j6ϥdqYH)dl৒~Wvz|!Z2NQP8㵘4w~;)Y"րn x" " JD}H|r8,ܠj{ DwI@ef1Pt[O1H09i jTD1lf 548n$=ղo0m#V,Lf#Xly1L7?gk!ѾІT%P=Zntr?|%)30^%lSBaFE+e¿B4+Ƅx4Z^EY~f/mIiA&6 lS5mbVcE6ŋ9T PƈIշg c+|!R#k0/e3sS8N+h fhw [~ ΖSf#l LV@$bWSȒCfT/]sZ#`گ0-a2ɴ h7* S{ -c8 WԢWA<:c>l"L!EbNDʼn8hx֕*dY {ݵd1 ǁpӷp8D|sK%bDܿ/4Э+E}PԼ}Ą{5pMWِѝ@=sH3?HRHR4IKxUe7u{_="A͠Qr)ѻ_*U8,8_q7zcΩNAh'qdO#;+ٚxqI'yd=y'|[v`llˆ>m-NDo"X,` nl,><;sB-0Q,Xaa-~,,^s:͚G %h`1 IgJ`]3 XS@vs#0J><,":R_ss[r5Bn8U!$zv \vc*Ov8j0""L9խMSCEHBOuVԋ[>S?Qǫ gyrkL<F j[qoԌIdn n/W3qC;y֜aohGfSqg/ˀ*vo5P .XHte8(Y/$Ecҥ <:N7p1M0I,Sv2/)ʫYR­fRcR-8a|mXCd=E 'pV=&E ޷2uF[ʤxǺ"zږ](^l[ë06@9/bA<=m˕H0N ?%t r!L4wŌvLT'SҴOo .M %@A ;u |V!f/g_q"4bVNX22[pty-~]$EAj= ̪tR1Rb?5dʄK*C(v*Txň[ Qr"f"DPqyMd,Nu荺Og/eӍQ֌[(j;Vsx=W$_#<`5+Xw5(?HU *NIީԝ2=K' A/lxxeCAqg y%a^olr/-[EԈJӍ mt1_t-^]i1ĽH |s. ه )wfqHL5͂aU=ixχXJ%)3{kDF ~TVHvٵc?ЂAz`bx>o ,Cwm cOntЎ <4CDB5Dy{*^2o{0YjvĨnߺ}m߅bT6hG1^Fj< Z 2a{G.xLԬB!Qtc&CRݶk@k]g#IT84#t,+ƅ:a>~6:B|ǫxp,먾nhF}e_z)Vc'wLWDF?NU2knEiX , >ʍvA2iw)T`YrMZA$(M>uj x]!FpVX9Sv$шmsPG,1<TNZ˴ff5CKŪ Wg.V[ھXTONzVci*в5zԥ0N@=NC4H+SԾ#q/6U'XvG՜{:2; >F<>N٘F$Я7Nyܜl.r_c;tى<9`A]A6ق]f1QFr7G3\3.ap\~P6R:CDl qwlnQ|aWhyl;Vw IVݥ?yqz8o7!wD*MKdPCe_| U8%(L'X 'ZD|f{^.B,Pw!R-W7X [ƞr-ULWZH?G +D){A6g¹v*qkZc$G_muMkڳ!BfgS^+6dO|1EPfvճm|Qęc]!G4 k6oy&' 2! l&n;#WBjf0_}*3mkz<5i3 S-05]fR҂:TN/egX1EXuu)xC-΁9Q: 5tP7Gi8![SJ/%ŕAT$;Kc4h@Ms~Wܓ]2-A`Đ좡F5թoNs Hz1}+6I ٖ!U4Tٛn P"X-f=7D'2s98=,<i[=sV"YmԾYO=%-t$V>M]P?sf5e y$sp1|z>\ wqS춰Qki_wSMkצk+,M ͫ92ލ~ j!|fUN⚩NdW3% k(\c9/ X)BN0 '3PFPYMayA2 +4NHq]eqMZ; rh? cFs_Z18 8EY{\1p#:37'X]{P0Eʜͱ3v+B,..S;pj ʡYVmHuS3nemh\b"`tYH 31m R]m]p_SԿT>/&cV2!=Ñ=Td.Q 69I{EVx9Hs?eCanf))Y!Щ>ġNNF.ptc`r%ɽ [Tr Тٲ_&˕٬?a0FZ պ7 ;= BzAW{zzq>n,4D+d5[(6y>$ݓQ3#;= "N4rXq]&kXYA n3 ;#wB6"!AbuO8U^gT̠\PJЖ;IwȼsA~g˔z!^O]X_lVvqz^Sk<t'Fd*b`hx!hU6')[^+x-JEuHMԨ7ǁDE6<" YYFmP~|Z{cw] xtE\LJ.ϡeښCm9^OfJ?eK=b2(:KխJȴbj7JzPiT^h"Z)[:(+/c~ngAp/v͙6]`Vʴ GW9NY62n(7- .`܈ٺyoUݣ޶ OJ͌:=F$n(1^Y_S84FV7i %kńIV/6HX[ +R>\m\NY鞍[( ,%Zi{WWML :Ɵ-X۰n_5z0z#iﲝFWRpߌTƖ0!3۩5* FM炡#͚O{:A<[V:2KWZ JlGʽU.0-[Fر]媩 r'+>qEIP;zMٓhmE!1-em ۨ*fh C(=x Z-n\?tPπjs0UT? U<{?^rkixF,۸:hE$l+Žŵc=xĥu }5P̙ArtPn3|詩=8ە`ԛ0K23B X<9;Ȕ&à +ƉoqJFYAJPF ckحE}Ҭ..iJ*|waSɊB>%Ĵ#+q^ oznPyZu$'V/ .Dܸv(|:'5aGD7Dѷ^BRXl,nBVWq]Q!A"WDgp֦@b{#u"?A\U&xK~6b"aΒ3cyV}c*\tZa=;DAIؠVa%? )LdwE(?3cL(:.hzE 7z-֗H}?ԭe.Ez'VO6v3|rQ27QÝ_ kNz4J4%ݤѤն"LNq>*Gi%iUHi SEIV>@Gh-[_G1Hs0ʥ詞i+)tܬq 0PsCΪPۭoS|4ሇHqgr=U=Ó6,awL|L(0l; i5ֳi\a]>YHjBP!}xOcgŻmlĀR{WRyy^6 s۴\ڸw*"XϢK &WQu.: Idzf)j?#u$KLs GZb'fu4.*< YvV?5}̂ Q6%ῷ#P;Ȱ&K4rVR'8* 9$0BR\s%< ^/!?S)&)ގSl_d3a(Yhܲ,^nש*im;,IAO$Otݎ`dnH4-G;ڡq,"-0A"f-gQ?=e\X\FV=tT9_,|C-qJ9]Bo g˵kH3WN&yED}1 ~?D.A:C~H,#[k= ?KՒ?֎5B̋!bM\I^dZ)P?i< m)"h(nNѤHکQIYeI-k7dS@[7[쒚 n  GbDsBjo)gu#FԴSL֝@~2zTij:BFCpd IPnsu9_WAS u%Mg%m#+5"9!MEJY:zsȱ {PP4wPDhqkNޥG ^8.P-U5eW\,Owk 'Fn7mEx}eNB rnjxIJ#0[%B_tEr$;T>v`Ib[6R}fTP & ы@e!q"@xRdw_FF l*Jܜ |g$|q'^" -8)La_AiDS'4Eaޥoeøa:r^S&KH>Nڝgʜ].D+X{"w'!SSWJ/l2`E(io)/YO$Ek iFMaUpb^69 $ ǰDűC ]廮.>ƩA4hxŜ+_R*CZӽ$XuY2\ E4d({],eY$_(N-.U]}wFErtydŦtç Zޭ?R}fn^Cǎ )+qH%и2ue Ex{,f|_ gHbmFʡnSxU(/ 0;G-cdF*Vh=1><8:3>uHPJ,Z_m# )it[8o:󖲳nڿrG4J֜7ָU\k/$KG]?ʿ2Trf`v1zi#abCN"ӭɅ0_>H?h!YAL=4Li5u\̈́뿘-ܟVoۄqoqׄ3LOR<:QRGdžo냚w0}b J']%T6&q߬?4H *v&?]@$xK{bmBK>-Y EglQܫ̮ao! dA ڳfHm!=WOՐ-kwY䕍3ތ(OC90JIuƔc66=ZBi!sTʍS$h&g=%1(ޥw8pںVwy*khXs?Coeⴙ#) p LN,$ +E-#.g±/\w`ZG 22iYK"8Em|]#Q8qr)CO@HST޽mްו@d Ir1UuGB;z)%';(BO?`wESE hpfR'n=x:HT/*ASe,fLjlLMb(t6|M>ݱA RG\NEpy9N,쪿 xSA`NBZ>xEt%oi7 _w݋3iڻsP=EV]-Wˇtt$50,\g }Lq{f\x.{dc Y^Vdy:{ ==  ]bdC|<`t yn}M'W#+s_f8Q"PCQ!ˢW"}2uV`;6 ,?"NNRzO ѓ~'%FȊG>vKX,-ﭡ=" 8i 㓘,[|%{6`DBʷ$[5hme/p "miqDž{xBL;JbCgn2 `nt2p%p$d* ASӰu H\tʏM} JLG HW!aB"ÇN< e~ٚ/\فf4EaAk=8[e2%3ك_"Hp*ѽmʀ͞]'SiuyO.Vpb(8,ɲtx Q>ln(lt~JKڜKϙxu-#{g6'Ƚf䤔,YL/0^\5]D2€\n8X_X al{Y?)ǿ/4,,qLb>8@dLqp3L-,YwMU0kqA'Kz/;J%VI]30aj`SaN_"9<`9 =wĥ%f[İH43KQEX^p '6v& s (*XW9$%k`ڰƈS[2ia|_{Qj z{*DBgcLI;I'^fKu.2 E;F$ a==S8+$lot;׭*W9cB1]Vw94H;d:WoTķvWiL [ %^VEXueKo |op+Qkt, _7M!]4:  hKl@XHjS3* 0D^UӢ )ȱjZt i4,creTjGSuO+R9Ea`飘Fvyi'l :1W幞V@ox,kLEWz Ea N_/:*6nƎ1 RLۢ3 IՉ`'8Ku[FK_QjTφQ*I1w_%Ǩr-ݿdpv6&4-'~* }_n^ߢ8_j4?\-a tq8&nPuO"`Pzl5^_3ӂe|crvq{nڧ}%p+EԬ 6c3\B;IL>]3qFf]uf!n(RmR ^eRI˺d)*%Y[:F/>G3&b6JKzM;zlW) \}4[{PȌ:iQsfoQ6& n}@ZP?ud[6?r 0k:ٰ)=nm 3yo6^/eRҸ1%4v=xl$ũI#s ܴ&qMCsVZIֹ;X RXS)>9aTmTNf7bɌ[#x6+$l}3 00PeFVq{6z*}5ej56@ZPNv$2hpCi%}xAbBEGnMȁ_,$1HM^x6Q ɼaVƞ46xv+34]!/cw܋hȞ`[;e'{ȿްeh!/_P'fT ml3mKXMMz"Ʒ!FNF Z,ZFX8ǯSkL37]0WekQk/ [d\ɲ7$D ȷh]Y!=V>&GP&& I|h))Ҹ\vPIkc`gu@89l])mB}*MM6e]CxtSʆgGt_'b7MK]oSMJa #z=I&{ls}4o"]a 4+ȭқ#byB\[הr=  d)N#oK6gOD.Y,%*7~Q;=Dh>p:Ym򶊇moX*HƒoBl'нjB hڸɆDy,8xI_BA M{qoR=Mw݅z6~׀uϸ6*ma *ۄV9t!eSS pG?y+LHhs)MP 1-{{]Y$R,J@zKb(9 H'j#'IX# ( xK!]/́җKCN {=45hp9Yf:TH!_K dBu^mժʪ'Zv CBv]=Aŧ '~z;šyl(m<ndlp"*g5OuXH/y4WK+ŒDӼuzd{ˡ$H j?;-ņ {I/\*R&[ @-+>X*2;R7]iFĞ&΢/Tv@xƀk"`^KH(^0.SN{MWO; 9Љt5\`YD3kel;ڽen20۩ˌP}hFBM5P@=ZoͲMmd:|HV'_$UKDR $~KuЊ3 D R#2 u$$8MX0G5 =f=/J|8 盂=b[V{a'Kdz%`vayqֽLW1r NRI\Y ~,5'hfpiDӀ;d&TJؠzw 8us '0ԏhι.! A_,8:HD`֟z>nY{?ۆG&6kal) id]: tPhD_]ĭ{76-߾n%`um6h)/(G˄bZV _GkLH2rA&&7T7\imN+IxJʩ^ƈT@,?2US+|aޣqQA-02pL [,\\bhz[6 7ya2ZwTj1qG6H恷B>(?\{8:X;Eey|Db=| ?X(Ȳ2m(Ū`~[I !Z80*VE02v֩7^ِ6P.x;_PTS/dd߇7ȊipLjLU?^Oj;cz>o&W /q6eG,~P/LW扼?u"e:0ߓ k8gGG0""$k[cV\'F ѽ;&`_X<hip䓋WٌA?N&pbƖJm؃Gg1i9S~>_"29UFV){Uo7W4 Vv|󃘌7ֲ{E~MnoPT-D0T 4Sn>!}gш,Fs`sZ*流CtJ[_!P/UZȢ/Yy/Lՠ7 ce-j @}Xֆ78+Ax2 8|st0xWf20_r< ?;(O? bpAG'rUʇJ.2Io:oa|izy$:4/:A2En1C!Z֒%LgP#LjM'ܷ$`(ܵSṁa e Ð;Z+SvWF4,o3ogqZ2{~GʅEnsw}@5Z[K '3[N7Ԅ?c;\b (9*&#b5҈-ͬ'qNʷdch͡nx' !(XїZ<ڳEH']] coŋ́u2}2k u5@sKڏ w!.uք/-}r̒n[Q\rD`æ.QV.Oy]lE=蕙nmsx5GI~f ' W ;D}2XdjZ@y-.5ǕNOxRނ#q]+~|zf7z%aע-}QWNh;B#1IҰ`H(yf?3w:OL;R./A%!Za#M :=,h7|U*tqMs8kT]%:25kT߁!B1/] fU`Oj ` &M8Y},ͯ_jYÙP}"у@Z0mNsgocDyZend$V/"]XU tad"٣ك* T綁$0o2b{w'blw1A˸w,4bdG3`$Hf*z(i :xEe.=4:84[Mt:W U2OacjI=dн%Vc!ߋ3箯*'"+wg`8\>B쒊帐k$6YAK7CW˰L`IEÝ+y~xcR#vdϦFb=&L4Q}CSŔB%>!ץL 80tӎs {@.4[6v_O;:gEH;01Z{jh'kdMrc5K=,; lCz'e?>LJEpe-roJM>:{3qK2Dr~ڵ,o^Hxpݨ'EӃ_CB'Ƈ' =&Ht%tn!hT2 +vڐ`P1v%R7!ID4iEW "dH[+_Z!WcHK=4 ,G1ע=8Gzvf)R18oMdz`m?u8kG+w?@X1E`Y#I[;]I.So$z7#m z3G[hzlaSSLQ%1aOBYt" HҒ2qRݎxy&40S+ \^$DhϨc%$@ر6k)C&3 IC謊de9}Х'IT4^GMur Oët"z.Ltc7C]pD&gW"*#D'+K$:Lg33+0̳#DETy6kP~`i(AlAl`.6~䵻. ZrZє /^ҚX1ib*XVhtƋgɠ\|S -r'$\֔IazaL֩{$!y\ٵbq4ӆ68bʢbY$-w~~ҞGTȬdYWvQբprM9#=pY Nhк84] Eǃ"?ӷUtpI&mnг̳#KpjzlE騡`/)ӒjZNu~1 l2MM¡ehWyĨ\BmykM l|W Ow ')bQ~L!P* ~VD~ϲˤ"(L:ZW7 Q3ȶ ck۟5P("@E[ѻ~דkK ]$|)Ŀ2z5i ̤d3.N8j6H kP>:p6NVA`Ƕ~5)Jk&ңYy{$K_2`żֳK^1Q.tzWپpx||yGI{5.mj!|Ա&mhWv5_Aȃ>Q5'ZzR"&< RFR( 4GMMz7O D,NI^#rH{AFtUX Iݎ(d8*<qCf7,: -VXV_>+{P[!7Τoîaei-lC2|:Ö`0Sb(~%4=d&LEy)INvrM)ϙE᮵P*¬?cJл<*C$Q{Jl CZ43!g+i-ChS[R EG"(GWhlwkl s s}@Ȫ:usk40͔fA[yKj}cuR9Y!ḞVR^Aވ!'ƻ k!V C 3>$%ህpnt 'C<*kyReښc5`i2mKJ3+$>E\F0sZ zLA~}mm4=Hj+h)rcd?2^n=g!<'0׉=11 3MRO_Y-Wt3/5Ǯ`UNjO%RVn*TJKn9xzd{φ,(mslB_!1Q2/nlc-<w b-dQ]2@tɵ]T 3zRdQ#; `P*@YI1P^gMƉZqB`"ME wrwty99xuyI-=d1)YzN }'"-hT,i@IO˭xӥ $ޓg }&';߻MMb*;bz EѭZyu.sӛg?vp$unt~_%w-k%K*X^q81ݣͶjS#OHRuԥc{3BԧŀH? ve'1ګ#b]w2?}(]u<4XRQ/=ZFXfLY!ؿ6 w! O|%W\C_|Z^q]V".L#hPd1L^6֠C.pp幻vgު U ~̂ӖNs #7YaL+*x^yf~xr $܍([].5il6NFq:][rnLJZ8 V ojQP6T 72uVTdhKAx<}w|i3}ߗ]QђI?# ݉+Oϐv=6/7wzs-̣dEwUAӼ~=&+Lbߦpn=Gb,l* 2WZin4O 8m^x:MmkĖ6&Bϒ_W,"Y-c-I=lnA/Gwmq% WT|?H 1Rxpu^upYJ\$L@u1xjj䠥ۖi?XX3l")=tKs;=\ĤсsZ2iqWoRe2-@R[!@Ḹ,8u ċ KH=" ncⴱu{ 7tLK(=RH5F-\-U8Ad t:=w'jcP`l~QGeOb8"AD67N: `If(J勴kKSY&nPA0s ,GI9$]:f¯c-K )M] 6KHIq'8 ; F ,$@u<:l2H+. N]Bԥk"D,*F/S&yB\ֿO 'bQZ;"T>8_=Gy-TL.=GO|&W~:D`# zW\T`ZzR,)|axkjaeUx.t4"^yӭٲr|!5 `C pL5 qg )d21Kٰ`lvQ3K_b0Q%4Z!zwN߼Už ,m$Aw 5lfDg'5u0;+l2ϥŪ5C-|\ɶxA#T3xZY?&:0'T6T40ODKp@[@j["2$31%mu?Lo,:ǜɁN</G10'z :/ރum)O2LI#mZWaR^'ҩN>0@r3 ;6oF ~G~(R gͦ<k!>O;Fa%V)TPEO3' «_V;qLuE߾xxxՉꐨWh{BScJ\ (WjDBl'xh=TZ5H3.'kZ*Jqaoh80(_+ ?hvlxgku(dt}P|k|WAݍ;QAC.;l:M?@TQ@ xZɪ1[LK\uxXmgb9.ia@s + 8[.~ALŽ&='~GXHpHreV.eKm?{43%ABa4O[o`w#,jDF{-mMk?UB6cF"> &ӶiuwpsdkCcNT"e@$TM9֤`43eHX4oEo1ϩv^ ⯿[½2lk5gE~/ًJ@qSrDw'ǘ Y?}3 X3r3[Qszw?1X%ςTQaa=Wzͮ١M F3L Yi(DA^ٔޘ5Ҷz` P^y\SRFvRp8CSʥYdhV4r`=>6<5?G5lH2Iaq2$ID kno2ItQ_W r,i)hBASzQmop %yt_ 2nY􆲩5 f)$MnjwY!\ YJj8mG }2Й3!eaPⳗ$'#Xmԉ7i\ʌ꬧l͉U!%WMyZCB޽x\g[H.}[}ֆQ5Lsg¾?*!Id:501yB0e}H~ud}aj~,1K`@ɚ|+83kޠμT|3c#x!iMh2qH ʹe&c (}i@u@m0IJ MdK'h^9Wմ8Ł3Jt 5DDol*蔈+J\["9pNE dMо}[1$a@f'.=+9iuI)O]JbZdƁM\-O}nE^aqOme]-yXV&26G,I#x+C PT%>96L/pb4f-9{sR-){ґ^w^rϣ{";7)4Ʊ\tv{\gꠦ鶋N[Y^T7_WV<)q&]6eGan #zѥ[ 47BXB.:,y)qV.X :oxnD fcdP>gjT뇨:ŒʶM䁄5 M!KW[TK'u5V]w=pV /K;mc;?#؄A4G T:v/ErI ^%O6T$H5!*t-0,g``h$4!VJLJCn=5"o5Yn0ߚh^~>XQo1ܖh՝F2ɉ)ܛCA9J%Q (J)Pطe:Țp|a Rx=S(BE8Ժ#:2;k JsG2w CVl=pd0A&LRg'Txl3}^dJbNX,jWRV@_@{M6CϴbehEhN`_񸉾xus ,|4f{*\1"W&3G;¨¯s]wl[FI`=rh eu%5 L;& r 4Ky2.RaWTKM7>kpͮ^]'EYB,Y4w"L?#c]pTmj?bj~#&NiBg?{׏ &E8sW4'‡벢uo+=ˏxRd͔&B?]|ԝ${,5yڣ>MXЙr^,J.Zދ:R#nF1جw9J@EƉ̗x"ծݰ'Uk]@2@Y%{v6IG/d֦>DnwȆW'WgAJLd*{h~:ujsUpxattУy5P= 5OQpo+ӂ8KP}];+\^F\ea\^>1Ł5*-\y-$;ku˶>: ݲz|Sh";DfŔKȳG7o8[=%4M#Zց4f`Iۛ't*ȈS;vL5of휠ؖdX\]AuqB[jW:M:QĆA>omì7u!IEE>[$h-Xgl`k胂 F,XUBI8]2g{ co*)b$T)?ǧÕ( ۼSs^ΫCOz?+.s\ӉgTB8خ*;Q[x`ⰨU7+ DΡF&X3- M-(YVf 5Cw,(O74+4X|"d!WA~ -ͣ_T]1njn+]+7=nk;w3XQ97P8}`Q'Rze0{fIxD%s]|8%~faXĆ}[-^WBk6&ǀ9\jE}.uRDZnV(m:?hM\%Sfhgmh{˃xOZ$ht(|> D#\{顟iG+UJ{F*6M4oʗ#z4D!=wtn7嘒^:Hem͠cH(^OPMhy"TMvRL9^OT;шIۊBCG<4H?,]Y 8;ƠqCY4egY7zںn ]-Loo)X=ߗ;XnWe Sl%gjw߈Თуe6 23c:Wn1{? fHyڲV&ߊkR/nW`8Ea^˯W+1H(z<͟NSor?pM?< 47ÛXl-G{+3y,ͼB'YUts~T7m,je5c)/v{l"pPے{/X5Fq1W7*_D 7nМS`e-vq/9ǫp.m4u*q(c="qzA[)Q`~y.<0 i(|i  D'n]j/=};2EuԹ'A'6uZIlgyޙ gz9,/>$CʪYܛ<^}bq`@;\Clc^R[(**p<[ _d?@U卥k@}ryz*Cw™~̬*ѹ>6S RР(.=@L>e &aC샹06xwe7r|$mD?A:3aq,QYrX;HEqwmv!A*`:e/Ά[t14IfQjϥͩ[Bf;.1PUwcmzi+_M@q.ga':ͷ# ''! \48L@]*ޑ"1 L3^RUX/m_=FEsQSyg6'NRfzD#7,X?:+]3YPJ\dҸNb $C㫀;IXbnLBW^ɡaWa{D(sl)2 WnStҳ/UX%vl׻6xʀ7j*v +L%N;=(Wüү5`8>8K4YtS#Copo8E{ˬ1NfZt&+Ŭބ\a`bω}Pފ3 i)<().vtg`1@wX`"00+׸;y6bS_n!dB5b}H^7+'ԙ#wZPNlIz.Lk6osN?Տ!Uw8WU45s&T t50-Ƒ5@eF4 d:ĂY AF"vFB r{dfŏ1T$QHUV9dI"lݱȍ5U 4_.^hp/GL7O%q-aU2a Ajc A&Ȭy[.Kh *b'y7KoUsKCI 렭($rWP !ȞT)TtI춄C- g6 Ep5bŌa >:ʁUI:?~X T÷ҞTa%'G;su)̉ZA-0[|m/8'ŷƧxR.H/_vpIRGK).!ŵ^CI\)poS8_jdE} XS⇴0xYKϤ<0T{i/l W3oܿ,~w,T w-!P:J {֭~/>RH4Md~'󫟳R4JI6*k TunRX@{!Nk "CJh5Mcsi@|C̺Y$k*ʾ%!-5fi0ұj@]dn83sgtf&s$\>g.Mˇwpj%&cЏY8fFH-THzLVda^Vy ɑ g'r\ek }hG~KbX•AzT12L@UE窩#ÉajY_L1MRӿD`@ci#CR};Q K%-\UHOn)xNQt|12{6'4(PhN?IvD)Щr* _N TXvE(l7!#$*G=AK&j"Nݿ(T:I+K™&u|'#llUa}P<4EESzTIL Ы6io[HwO$HH~c5 NMOeEN82~Q# KbV{G;~siڳM 5ҽ]Ҩ$9‚E8\lc/m39)~sX%VGw&ѐ,wd*suBոj\-~y1gt=R5xJ:2GSՏz:Y ኝv%1W(c֧T9UߨOY# /wU^A*hcG5;pkkZdO*44nOk~ܞCnh!EO-YnglO pply;]Y e?J&}Cyy&weN<hPBвnbb#WRTr>릣%RQ'8`<{sӫ:qḠH9QO=+XV|AK=*wI;jL=2V ':RM !3}${4{WwSVI\b#ߕAWG/JwGcP)G]յ^eW̹. rd#h^0*>EIbWgf0r ~کfvVtݵA"5xyU$AT?9dR־SʂN@?^PI ~#4+ʪ걇eͿuiYIkrډ$Ys'IEj!*Tw:\n|CCM#ah$.OlHj1y샕GF;,D:xߜGp{3~ݷeM|2~ϽX(cQ >* -ة,AJ$őF }mqtnsUH08<ՆlyNQbw@fʀdk.ܐnXb$!rƠiǴh>˩$lZRc@w!kC)ەkbo ;B; fYhyh5E;]pY]…L`KJMAFLL뙜q,X"SPƠlmQ FЗw.l TFⷿ@`hϑs'",m,jO[nTtƁ8A;N{fTK@WPFs~|,436%!)鄑R7\}&?6J aMY·wFI^fZ˓Qkw<ñ>5(& AYs{lśsہgckޝ8B.>AZ6ݳ徍P2@ !JcBoͽ5{çe>oDS^[Z42W]ϷYaɃ-Д #JRʗ'1-ytREpOJsX1'?IQฬ7iW?*J?=AcṘ[JRD1]vx@(7 tYF0vEJ:z8#P.B~ wX6GT.{XQ|Aj_?WF#IU;x:D4Sēr@/}XVR}CIǗlg@KFMe[Hu*Ad H~c41E:ppjSN;͕9>}2 hzR^Q-s1~Tw1V1\zT-5X^r&xhs~oɡvZRb0Mf\/ĴƔT(|Di*TRLvP@:X5 ~=<)UK;ߩzVB q{3\38 n7O vMH&D݃E&o4Gdn\_ 6IYo*oኌ~#t~30ˇo.|x;Qɏ.svlg>'r\٥zϫ|]IiJ_r\p =ExИ4i=i%D})R0b;WR F:i};z钮L~L3#z9yxG]k\ǢԎ1SP-SǮX@UEqrѣ';%ah3U-&j,0vvq챏ȴr<:89d5b*Iȕʆ ?:s)-i< *lAj#!|`wh|peGxjEMSa?~kե Qoͨ%I"/׻E~L]j`Q֍ZpV‘s~ӈ5Ct %8ܸ(1u &lPLPC*UDŲo7$)_ aP(J\?LkHf{U=HdŠ+(]4F2p(NVY\ƙSaʼn}pwHaeݺ,)7[L[q[|N6m9P>rc~o@* &q5&aepgh7mrK˄HA3rXsN\f8eL;c>͂ Ӝ#+dt_)IRäJ`A}֬pn1Cr+آXm?+IYjUt7WM/n]GuU@U |uBИN, >_;HU-d`'. mhM$lNҩL$X>ZD"X͸-tVɅ;K^'BzrA:/x~K"{~zvX@Րߗeņ^w\ZóWY3$Nqw3{#Ǝa1T*Rţ}^8 vr$L7T+wH0 *-0 7%0ns,w#E\/:0;iw\A f!i+7ux<VBh $~"E7HQ +pɲ>nZ uxT\d{,2ήVvOGmwR %3dSpAOUAy3@m`ɵ;=P{Xx $ 2PN&Qt$vN{ex.qn8bʩ4Cxi!LLAK1u6nB oy'c_VnA@`Hڝh6+=k#QW1 ؔ2$^a@@?`q8/Os&]Bn2}yP{]ˏ,:~g=uU 9IE:cA] ;-w+Z#Et2\s'BD fH<7EkSs DD&@ Ś)G{DnY|<t(D%57|ϯ' vV.x*LkT$H=?e~Oz ~xo1g:>ɜ2#Rv?O2 #۾<}1,m^M?c]}dR%=tԈK{Te̕qS+Mdj5VS{7wo.vL\ݺda@JPȀNA>O3Տ K(K!@߫S:A5H`_}d>y r R¼cwl} 3%F p fя2;6ӲbE=>Wyq}H97ֳĻw$Ǐ%[=[n%a{\]NSͭjshX :[zr k~$d#h`*-PAR3=VR|4E9T5knA AHjLhFИ/o^H&+PCN=ݽ|)7DX".چ>| 8NYăv( Ļm0rsGгT솪,F$V^TeBZZv8 g264"$s#`77%"aߤIV^CYѨ.Wj_j#Jo&lCPAY>Ҋ:VϩmS-w>n;jxWofv?ŴV‰'r \kɜ< iLʔБ׶Ui4R/Ja~H7Rɀ p h=Atc lrJ)vX)Sj:IyՉO D[))Nť*m%"#AQT^luN^,=`)*gUPE ™PXNޡ]G8s>~9-9sOafs9 z@89SBag)[_M&Su}s();%_u\/{"PC]`}+4 dRJ55ߜvRњYTB>t;N6UkVО҄Q7gk+B=Xl@OkH!L&EpeoBV}H<4X?ZŗAƵ/2GIgm\Iz7L* ,%3XMC!":q = 2!~^ӷ@l!OwװI\Q)pŗ/UɎoG Դ0q ن#㋬Z 4a;ym/u_iM+.4d&M1ڒlawtRP-2iI ֗ji\ܽJ/2 W` jDiN-DzM}ތ_Y|k9HbG$5ȯr橴Wfp1&qҟzlT(eJ5^ ۛpnk^2jjYb=~?t>exIځL~xoD^n]+v&;H$ }6q|O:TBu)g%98#V,QOF&Ց \ ]U X@6^3 ˼t'WqGzF#ȡ6N?,UVtmթpʋra6I~(#~CCӲđWcNHS9@[w߄%;fBAƽdJ]&_7}Dmm[*R#ҟ lO1 iʣ?DoFY:^ o vx\*2V}.5Ә$u/zlݰE"_=su_eh/EO/l0# bk8rDwmЦ_ ٹk WD[ν4` SB+};bj׆R@+ xI"{<%7`J![Ey֢]!B[3L| JZNx(%fRvw,Kx`CQ_;\9J$(n N 8N4f˜ 3B4h)ݼG91h O-6"l v,&t~ypX=PϺ l ǺJB CuDм#Nڭqdݏ\c:gZ+KS(HEa%3ӥ37B 57g,$+ 絓kmY{&/̒o V *vC{Q(0#5[_+pwnml_嶉0# E:l˞P*`t=7:-qtC@GguM/xx(s@1w@5C Et\D*2s-11;NТ/Mk8hƬ́JZ\Q #躻IlV$-~z_݈ʹLņhB@фq~9`/a#)-E!.WLrTdT!U*Ч8d 9 ÚsgB 64ZF{h{!kuq6N tt4]7zxH0EUZݔDK_3{1-Qa!XayXfNrG1/m+#kˈ.3i쎻p V~""8N x⩀zJ (ޭ:M*:ibsf [|h)OduL+( =qIE/dsU=|4gJ:ّ+u"Pesw|gˈg|+SY;1#abK2MD2նꜚfQZmz|c6y9-8 h.+Ukc#S4U`S0zX*3o%u*ūwZ׻|j|CҟUAnd>oGwTir~B-?-ma,Ii$ tZ%-(Ck<` *~b?|4_BFʙ#Z{%6QO1^q'z *zL‘vYEԅ-"W>QvĚ&s"zA8_ιFm;;Y;Z=]4ov[xb*%:.TgʿBN/e*"4s9Jx+S*:Am.nù{}/>Axf-Y.OO&d zszh}8`PCEE3B`/*nfXN >Üaͦ2=!G6"W*C]iӪm()}}S5ߙ%sA:rYIXd-ߒ%!q9x!T J V!NҢl YBI|N)YH)qco!*Q(dX,+2QtvZ-*hRp$yOM:g6F(~eNG|oOtmsg5 O1t<,?M<$.! CrOGfO3!#9cTObڧCKh;04.%<4 ÝVL(efii?jwn}HGctfB$rBQ H3Z)k̐_k#>VYPc6+ky\ծDH>_mƎ#U1rшBH~&՚3rU_w&͓WNBBo"3 lLn{LδJo#NxۣJ 4h.{!wt,wqG%XzQ?<?$lA9>[cgJRVUָ*)=u\fTaQ.דSt9完YgUU(s\xe02#_oΨVMu%;Tgß8:Rt iB9*v@qk3`?T+RIpl5%9wbܾ eӎUܒ^HO)Kiz1Km0uyՒUb66e\<8?3״>m&; +UbqiMVorpC6`TFڶsq웂\B[W'HxDn)ClpV#j#[v/y~.C;W>Uȩ"m%ynS,]^'p`%}nd[Ʈ=6LMzT2 b?Z(r>bgtToF NxP]s'%m rAw$Kfտ10=4uB#gM"GW{(23d/ H'*Z"&rj1]:rHԏ%E`_:{>6 N* $"лiB RCҀ|&ΈVÿ ܐwT!=T\\kKG|jV8zIf3csSs ΐJpR^MUk5 n埘]-,;^;>J[`!&R@!xPdOoDK֠ vkS ^aI- jݎڶW>Rb%o#Y)PǬQaH}*ZƉU x64j4 2w!՞;}aZTr/F6Qi׫ZPV>[G S:QnYD ?d>[Ѥ=q = c\swCk/n]m8V^i&A$P9Yo8gD[2#>u(򍍧}Jnfl'{ܯ MC/Lк[( _ݛ!|Y.P)BH漕ؾ`@ԣ)S$RAH! z^!lNfp5Eo >|öl.~3S޽X} Z.`1 1_tMԭ ơ fiHUCÑ-&_Mip$' a<'XpN6%8~5W2}.xg*̓R{`~v2:*߁=Ѵ3㬨Uh5dvƸ{,h#76ۿMQ۵#}ӈt/k: hFQ4S'00i[Mn` (Hoq]DZljQAe{S{[M*zaLzukm+xF.%(E }Dwmޥ=Ϋb QL@T 1^ˤ{56UJ{Xv h1]W%Y0_sG5k!Oy4,"l5S׫[ܵ 4Ȯ\05^ wQd?6}ċdѠC؇z]``{'4y LzgXfo?-[VJkUZ)_t85jk,N~׉!8Xh( }OmTZV$],)д.V$!}Eo$ Hhծn{;PƒL6nEbW[?ry (ó` e$+ܸk.3h[+=6uZߵ zzCc,, `BYXUaɣ^J.26l#pͅXu9)rخuՉfRU{AJT+\JbEXgzYkѤ4B6#FJ$3FrgaE@m5򅘬Tc}=h\4~Scw66S7*=SJ(8ZP.[YVi>-H'zً3M>F eZṑ<ƶ6l0'Dq';yW3vUiht;3 AUl5-0:y~n*x?sX"fg0?:U +glD63=f_Oȩ[Y 9|X+I;j635.wVm~UHG Ğ0 S"r&2޴˞XꒄQ@.a7%WʣIцq Vzzu:6g$sm '` )C/iԱ4j nisP>x%:bkx6#x<(v{AP{ 'WCrJT\(ޑ {\VPj5C7Enݣ]YƖiGqE豞_E&)-iuT4VntdcĴ|Эklqc"F兩mʮ[re(Ou5q[}\ vǧ!~02+E Iؐ_.% hKD*#`"uAL뿂F8Z.;eh R Z9{uaB4>Un&?JGZ ~1$s@o+p:\q&57KMѲd&F fW+s|y9_'v̲'39IQ`bjCn8DԁEy~pW# ݢ:UU66TRA2]X_#9Jq nkBp )Ϡ}Cxn>ǀsO" ט#2 ZAiD~d6tTk c{hU#[bZ)SffUhdf@ojw-Yodfʜ d$m}DZ̵*u&qA˒FxvJHkP3c%=4iч?k" )jطzDm0S.vP=1!jzLxm6_zu+b/=) uNds c]7B9Pbcv8oynCgs{An.?GWqtC30^ܬi]pKp Vs?S*"^PmAA Ys-QՕaUPh:6T0E*A4?ɻ!5~)0ORG' B紸lj. wܔ0a|ukƬrK&O|+0 Cnj+C=xF bQ(-:BzbМ!Yk۱9!y~]jkaUz bbyй F}<8RYk z`U.r!ũў{6nw():&yZ%b͉iMe 9( k׆ryh.YC$)/R$r Ek`>!a(lt[(.m 7gR`K5`w̿1:?k0-^kEٻoše;|7vaD,o't(o$ HZt)O_(` /Miy2 F nzb[)BMTL\wr*="ѭ}ԱMOXzO/ւ!7[!;y eR% O0,,$BG)[ˁ# WKKL nXFYM f$I]zeIA0C1༷/Iاv%/2&ڙFf~zk;j=$*OW*_ c!u\aV+$Io2L!ݿ\|3HB֑Ԟg ̀s'ƊzZ(ʁApMXs…4o5 }Qr |G"Z2uPc\AAәmjǽcetNurFKbI['9](qQeR3۲Ӊ,4]%E350h0HeBh@{})(w| U#b/ǓoY>bb^cc_}g2O@%kkҠaNb+2UL^o\=1UH8I|L AyTY3:)(PKWBUL0{1}E%fa#^[[l:dg-N͏sD?go~F+Д6GoXr(yaL"AYPLu\I^R!{^$z] SjSϽEΔH"[ Ǣ)=uMT~Lw '}si)gTxP%AE'x\i G56;f\#Us<y"SدuI2ЯQ Y%]9-r03^Cf88_ -}zfe/t$sTV~J5 V ͔IP2.ڙ^P=]jˑ:=LQ`E#Otb>PDCoMpp I$m[?^e/4RU+}cOP2 ܆@f-W`ρqX$I*c܀OP-/;os;'1Sy p&dd+bCtQ IixH 5_z0p8g`72<дĔA+sic"l{H~3q>-ҦL}Gl_ԪțBW7NSx[AxN<'T_&-b{M? k:8C3EڹbasԚ I|gg ufXitCQy>lӃFa՗ҩt'; Kj`g#^Kq`D9$2:4k^oY9:l\c3iiv鼐5MW3+` Ӎ_0[0gmDdx4Z]ʂu7 P!#5>X`IJ>׎28hݞ{%sOQ2*N/%Wח.MLPc\:ŞG"*:-~c񜼧QIcG"Z^ ؅TЃ(,Q+<ʽSm^g'JLw*w-Lm^ ϮRkbɭH)eFlΔT(d>Ôˏ=~ޓ=XН%gn6![abn3^u՜6)#3BΑ9q+be\8}pUi (W6v+" AR%WO` j{ZKB_;}!b뉇}TNQAv5 764@Zb[FRq2C* A< nbWB!|2W i܌mF~F]iN&##ig͎mg*잢awSXJ] uae(Iv4pfz,11wm6۰nq+ |8m.UbZSyN&`X0cH ie*"aY6\(=h[5b%G&Uȵ# ?NJ;ybO ņf%W~(K{?ڒf&^RJ8eX( h\A\)Nrc{/6+Wu $9xU:O) pH}yꛩ'yvO7?KņMq Wf& UKZ!PͱF7_]5}ϗ3+qnxht?)$ Cau!9'\m?uf:_q^j3FBXY~KIAu-YUՒg?܉0M^FKYj2!t+O9/CkM *BOn%L9G2 IRRmW^l,ZRicSG>P_(,핥 ݜWQBt UaiKioɁ53s9fT,b}# FgMMN97ʣp%z@B(WT1%+[<4qK8?UfuLӻ*.[]6&),uj$.E9.i,Ft^0/v/ n{F<3x-V^V2L,a J7 0wH׉0ny+*yn|ٍDW"X3 aX ^8>A՗ ud 9A8 {\腲^ ATLu]yIt~V"Tmgrri[+A5Ku$IMǴ=U3%EjVfe5py xNBtWbY1Qy0<Z{_=*E);7q RF1Z~rPc3f⧀W omҋAŮ7$?c(Fkmkx2a\eRrp`$mǹрDЎ .rVbrн'rq ]_`*9Bgl*"bG30 )нm?J \-U& qhXnh(~Bg5b|z/V֝{as!j9 "*Pyz5u#'viC=quMC$&дtOZx<(`rs6lD R%!{g!?|\jP, ݽGɧ3Db Rϳy6f Oceev.3lڐB'Y?@ G$rۜ<7׍X=L2ܑS06\fL%QaSD#J o"ZJJ0ߚUq"B]ly0 mr#T:)u; ;gRDLcO7&IVRJcߌvǹ*2B_활,V䇌G6@RcmYU芌Hi(q5|F#3J>M0-nUR^ktIQؼZܝڋԮy_rrA9ffE6 9Y9lEtiar&L9qw̴INx;C:}Nr);)#/*!4KDK98FMxvw#3g﩮[Z,,oM]gc qg?&A+| pwSp7D0l@K҄Y3 ' M Y\R&9'Ђ"|4H1ؑbƋ;ŞAo1JٟULo,0WM?[*n >`mRH dT۳F|!e{?`l!Uf_dʼԝi䫅 NeNZڿ6+Z([P/i>?AܸoZ" k("j z/Tr/Bۜe\*wԍ0yt|ˡ5{^yu;s*tGقW${]MA̼ua 1;K& c`\駨ϒdtJj]ՓlѮ̭7~@Ì69БOZi0 (w93(,5Գ[(dj~;nQb&2KNOzsЊd"q梭 9 snxF2Ist_S%; `~Ȯg)8mlR"kq$xSĝ1|pyp|ˢVڈ Vd=ؾtd䭤5a3K*vQ6h8uVTSdۢ :὏Ai =1P̤rOׄ|5X-ȚOD[|>E]zME#.i+Wp{}ѻ߫#pn ]N3^%z9~XKsV,e @LoH!a軪ka}J+nKˈ{}*jd<H'>%@z?BA \g )'4.Mf!Xʘ,҇qccLidRo{Z43skˌ{e(ؕGs| Ͷf#8g?[Zae­F4~eF]X[=-lSzGUN{Y3 .gӴbRjsE]AakT;u3Kg&eG%y10H%P=qf# 5۸̿!!@^ؐ'AUH*en!ԂRTB>[Ofy 5MMydT }uyf6]ғ)Mdcp^B@$BzF>uGfPߞV-[,dj1crX7ɔ+[Iy+,0JX^9 jZ\d#%ai@c!wE1R7䡩_ghN_"3ʯhxújP0àeXµCeu)m;h:2 ]F+oBi_ªtLf|O'*:y9"Y݃XWqBH)x5۵QW @lrA!O.$iM,i[ '.OR2mz}֫ůj:Z*ufs~!8ҫ$Ǟ}2"cJɴQuG |"\W 6IӋݴ&LjrbZ[X g&u2!9hkI90ʈ:]] ߎ12A.֜;Kf!D0MGW^G) m4^*N"51e\$;~ۀ|BcezFL`[: !_)_,{f;xKǏN73$ _vuR5..9մ6B'R%x㵰,@ WՊzy9`ԙ >.}e.8WFJQ"jKғwz\ +%b] lgXCݣ3 ._[OK5<*9GW xdRGr+\ou$!;+ +)9 c. jPt&~uhʃ*7'&KдvzZ5ngFct:컂n 5+]$s/#?Z5 Qp0"JB7ބܾ(+s}(pkYv/td+بʴN*^ZmMz>$9A: z<=`$~uPq[B)K5++ezJlRo+[7}3 !;+ǐO*.E")>s76 \D=#doc[Tl Y==%mu-M߷XM{"  ZqUܹZTBi0}U4`8.z>nVj,l gJ6=_7di;.E4 MDS\5$bgc4b!OQ㷾fH= f*숧e%XD>7AuRp&,NU~OAcaѪt9ē#[ލ6_YޔG/jY=>dZڦVO]6\8bmWP[0Z6XOx@t uc!7FjU<^54ְ}qep 4K|^ЌrfjC$PKS`g~ ;+d+ f dIϜp̏Dsj=Q;=㼬n)v W0wmF!Dt=biyP *.]Gl7bʇ8x\p{bbc`NdO>MN >جc릉7 ʧcX6,$;Ql4fL#%uI Պ" MQGqTvoʱ[B|Cˬg}o$,@ pIqNU$ a (cSG}ssV➙>'\/OwΞ5D_x:cui6VARtbOH3x| ɘ^/i/–}lfiIpYEcK$/V?C\ ,KkV]V8nX7 plӢbqAG$NW9d`y5JJXL@6 utEK|pGE^%tw+uaz Pm8l`,22`1` =S"  t!~"ХA=RvPi.Ԟz "تֻ1IpAk4iWK$ >NN|ro>pI-_ڎ'<2Go$:R֝2%%R{!Z0X:Z)wcˍ i-=6SG5/)u`)Yߚ+نa\PWgd'4؈w,3;ҬF3G FZ=,rP> Xނ\zAB ]QBT&6R L,ࡩp`j>y ; ǯFpANRLU3qP;`&.0ܸsw2qcr l ďRsi>N*B#R 83ٯ`|(\m[spFX/4zܢ0S6ʹ :zo i[f_HbG=Ffbh~-b]FoD4f6vl 䏕 77ͅTGtQA]nI]7 W^U\UaʞܘJyQW}@.5v<MC[9PaW X=Y6F bCϮwR9S=p0dio.;grΉYu*f2SJ'\B?^^%Әy a'Q~+&AǗɅ'YK`x|{68~Urr@dz Ca2_\$\ %%୮.\CK ~nmW+ v4X;bk>^.SZId슉mL?!ҥ]),29'NPMT0;Hζyd +%8Ps\bb`ڠYIR-6eTx>E bPAk#^jƴy_߫ E2"k@4A!,u >^L}ra.qgڶ^jENx.ݵLRuXر DwmF FaT}Œ [yQY'Nᰖ,5֞ Ro|ba ݀2JNXc#q~t( ' lKRaS]ˏ#"V~FI/L^lt[vR ^@ea!/k.omI4!7Hfڛdr e&f;?qY?ir`u]113U!QhJ=#߉+ Wڊnͪh- &/r МU#(QƱ(U(7>*VOKvSf*Drnf׉K"f oC9q<٪qpZ-0F?S iyZ9xY(&vgkLҬs|$ gI.uSNAfSG>ku%hPjb*4spTP e%(&/IW|hQߕ.WهHԃ.6 X;.ɮ11s%i\xc{C<`)(m0j"!_}wD-(J6 Hi?ߩER͚cJ)sH_v6&_xFb}Qnq֯3'jS\eq֒Q<°oѥw+bѺZRǿ%?X'W:U|@b$1 iXAlt}&y'1 pٳpX) T x Wv?]QťDMM@l:#&܇h*|$<ts' F08.+Ԯ_4!_rjb)\J oЯ9QwqSE@LkVNw`}\W3:S S̄&Ѭ;eGyWG$(PqF{rC8YM^2 SkۮsH-Obn.SZCtpb! 2.H˱x63f4j+B?Tob+{`4z uD@ 2soeΉ7iqn'pꁕP&#DX*qGN|dщBkΠ  SlC78kT;>F */3guW)):e@aWqhDnSePSu9V`n%OmZ\ me3&7ɤИcc MI-vVcQj}udzũʦs(0o"_Bd! >w^ Z.)2wdn*S6F#m()j#u_OQ.I:Oav6 yr$(H%Qj:$ͥkfiIR̤x4ㆩJ5\K3BYy(QX|G@tݝ<{x6!dPXY΋wo:L50x; yn YUI`kQ5T6ʄ2oqNZf0nSfsWU.KPq9,_y a$ؑCY6q,?9#3z'@mo.°hkeAY'vWkWi 〦dP]8 3BEY!>Ҫ݈+xGyTPB僜}V#tbsۓ9['OyEpn6Z_*^ZNE\v+Gi k*7,Ջ*o(&J)҃ #TM y.>Jk{Ve5ͩߩ|&~=SDMI陃fXS<IHޏfw 5DlL +i&D/DyO1~,3R S+ N{{ NE{]$p 75rdI3%<!U~ͺʉrZGw/+u " <judFl8.ë RY'LQ-eE`|6\W)= tP"39PŅ˕gn}^VFͮgzZ(V=kly]w%pRNR"Н:*wtE[xB'j^Y0q* +rQ Z;tMԍ.@܄R!`?X^ 6+"NB1Љ:z9k\'HJߒ;WI {Ϯt^yqͿW^~h]̘&cr 1Vخt=)b|s)s@9mXi Px\ u՗_u U䍂EБ} VS SZ?㗤Aqo~ϦE`0X%/:fjx0v̵=S t1Z͠dNVT/ qv)_IMSQ6.r@#.P{h]֤*Z4Bp#>`Ĩ?vW]t>{.M™ld9 -ٶc!DLpr̚<>@a @]-7][Q/=Uǂ(3ۍnC)'\2W%pUc!&)3Vf)Hybi5 q]cWd!Fst/"^0o8mZl'sMP (_䢮T޺rw#] L-JWSoiv mgw\l_7ϏM܅Šm5t|`-ͫM*RJ-il&bw4u_I2>ŬrCvKkNZOi32(a0TΊWuP[7Bvc3 4N%nGo;dYe # ~.C!tIJ9Ovܚ,eϵqEHAV'Î֜x`"u^_X5NR\9Ww͐>ӺOˮh 2D]&NZS74tL{<>&=.-`I K3KG0 Apn #&1B#zGq⾭In=wstbu|/Ɏm$2}tХc'(}5*T ɢHXf5(ľsE d9߯zm'SйCk` L-~9 +5˪m..dPuUX +|B2Zh9ɢ}+LԿ #I>le8q^;<ڢ=N2' m٘.S5(PEBD82_i&:6 agX/ah*sܙZ}Ln@A>qt&~à'b|k-T`SH4I{%nxFļ"w - -bgzU"cѧ/(҄u\Xd {n]ikOw]JQYv, X۹hrjd[l8Cg( uX>nZzt<+,dv3~GN 3% FfuW˒OAfW3`ưEv9$Cp>,w{6rYD{"8%OO?~d@tJϔtLy2EWpϜXg[4znK2`٠3)NXZBrLtY' {KTi czlaR4`tR$NuwLR#%9!էD-*\Ǻ\Z7@|y`ܳy֌Pm.8:U)>,HPs^^IJ[hbASܩ2U* 9G벯6J=^P yA<^8VYVTvP}:6Dj)>an }Οdu|Fw劾3..ٻѳRؔA2$\C*;;Nl`p<0ƒwnl@J vaZ|+͂e^%.7 AԇJDtCcXYTui3/C A0? v{W%wnT!ނGe& 4njboy@]W8Oz+yMp)GA !=#$ EQ AjO[(r)ONh;_^Bu$yt} Da3 J:dT0Cv?12"]o= T.R*f˂@4bPվ bnj >/,Xa24KćŔ㕙\|KRӃRY\h&5Pv 0 _ ϢT55N1\ nbBF؎;kD]>[½}$>K+ղ́<jEP^E6_=;gz=L2-"T@rUInUl$ |um5z@3OUpwp>2b%AQςŊHP24r Tahв-e4GN/.#>'iQ{^h\ ii8Šx?v-5;Ϣ%0W_.84["?1ϛfqwaȎxpl,8&v`Xb|1{^:EvӍjsn/7,Pº 1 2J+91[!B(C^)gDI^cEf]n?FswG^s#lYع%u/٤srE)S 2ex!^g4^Æ^ Oˢu%EV(^\%%YM>gjёO@̌ =@t|-NWnv2Q#Cr0]kT`dZ G7HC6wu+zy foaG0r\mH5^# U{y&yu)fgUOuo:(ErI;C!jцlZ}o3ü$[IZhk#i uB`D{e'tLT{ JMTykI*~!)ÐGn03u:Mb\#|(P]o)zkA=Ή MH)Pb!F.ZeqRGo/- (9R$ =bIҠKD #G݆~sztlC%[hPzN*9p 2}Y冒%">>O׃_͍ 8HZ{; >$Kϰ o% k> ["$ZbCT!1,0 Qf8yn ?af:43]|gW7O :NX󈇐DصR " Ir,k2(_P⳵H]Dq{ oWz/xh[aSo8]cGj [ UŅ@tgV-R*A,:ű)GMA2%p)~ xmFN2 T04P(p ~QYl[t g\ѫĸӋŎ1h{؞}q&Ulek{8y2c 4 b$O7:}: V'8hͮK{`B֥:kc~q+Qrq]ȍHOAB,d'ى5hC $Kst~,P\YGþDkWEq-BP:&S5V1[kpd8J7q4 ͐^W5/c:"ksGYr7^xn{+X8RT0:p=UЭN]2./}RfA`rG§a*:y}( (%OH\& }z7[M7x|r% Ph%ȏ, `b _B{'C>fiyZ?]a(f}3}FPTD|vu#xUoc}XA*lH> ׺]klՁYBhnz뀆ۺ{SeLNʥ-)& r8)$<)!iu׀֜czU*0DAzlx&0].'[s?et\RBQmU"#3G{g΁Aw蠟}nY/  Ao^_ 1",͒BSnZ"7QlU1d}ѽbe1 jtjι(IE~khD ']ay3" 8Ͷ?մlPitM rQfU1(bwYG/{ UQ9?УEiu7*^zԟ[X')btpCzou7&!/E@b3v{Nz#:y݄NeW5&-\ |NhTTCZF_*AҦk|?-SehoEM=Cg#_ كj굯,6"qުaYұdc<-aTe o Cۤfˬ_ gƐ\yiG:QZ&("BՊ},!r{+BdYTSphN/>'%<DҡbM(#odMVDF%$ѤiBP؂;9Qئ6ts ,GS{09d}8oE"Q干QyOW( >?.\!BKڻY#ebx\_~ޤpGrبӻC7V"LME#~"zFKJ5{?B] u؄_h4`HSdrʃ E"0~m3>Q`ڈZXI89dz_ep v+DٱlYeC6Cd'1ܘSቮ`~l 1DTqxغMjaVoNFYL/,MUDy<9P1;Әsnf<<ūε "hd\/nd.PgۮJ(jfVr;q)ub~ JtXb 49.k=Mis8#itE9q|_ SU-`>=nx $%缦+@<*gr 8>>,O5Lj6`-QK80\KQ$eFB5hHshEقo_; HOxw. 9碓`x6LtL4ʕW%?қW;B_#9=g (LdKp)3FY"@qjkMO#7typf_8A߰rd=u+V 8+d@] 0h{\[ Pv2;e9D3s$OE6ȶ9(<˓Y?Gck}_1@MCXN݄Κc_JᥣkD$jH bӳ_Jb+j|$t3Nt[X㟾OMȍ'm 2He#FQA~|(q?Oʐ!T%2^JGMP]8l_+y'dffpn!o9TGNxt`M`z]ubze4n>z8h pe5:}0#srIk(W79) T vvyԼcs> '< ,d*q}9(y1K%^$Wr7>ңc^ ;S0³1Pzf*Pt]@V*5 bU |Ӳu(Rk+۝nE< Zܗ01jwZpg7u`JhYCͻ0:]Dߌ({)Z|:ow+"(㻣%د&" PE $@%9JIP]y&zh)>q@NPXΊ0A8f%p k᯸Vtt*:PJ-LT4EVBJW#7qz#E^ط( B֡~,pg28 Y+0?"̹ajyO }Ӽ@UUh_AM B>1ddmgfNX!5WFFUqQ,W}/r& XɰaLtKx KD n-APǞgTHwtg$ȳN1%4Vm ^ L%x #슮Ow9wkkVtk{o"qF^ҝ3X1`bY7H8?}s͓sX7(bvp%Z X_|=6lE o"r95qP;c1$74LΛ',Q'H18` 9xXEodH^NP a&i+ 4H(Gk>@n4>_DFP>acGY\زUL[ i4=^IaD7ZpܩJH]A|l$.3BCZ iMI-q R>N-.M85x$8M"Ӱ`q:-`ɮ!@o ƁI0$ԒaSiC3Jjw1ͻe^U&xHyp^Yư1xnj{le=/,]v)p4h M,(q˥;JiZho6 *yVVDj&@2|u\cSRؿ&^@GRt!(oT>pn ^-^Mj7q%'u[40q_=ɓ0&:wZLom9ϨFD_z1io,.E% j|- d@1Si,2E ǵYpBQ29޲JgG-\N!CK(Եd7"!%{ t0r6Iw,ޜzzT;v,35OCn74ZW!.K̩+9S= J 0jBzj܋ ,F;T6id o/gYA}oITm!aq%Iҏi-9a4/s5taވdH,Y-1a3k4\þz"dS>XYL.UbňCiBUS+7Wܡy gmb`FZhZf{o,b tտ6ӣsNdTZ|{d Vz.C]%D0l ui'&b4oI(ЇgfM=HןQm,(Q(ہĈr$N'6+j#3N@ Uh U[gc/}OzLP {Rht-  c3${[.(+`N'H¼5QaFpI̡*q[ؙ'-]:uPw`WHczvy=!UKɊktJ⫵iDCCK~ nϺ:h';rn 4F EN;bGhRJY2vC_mO:=~y_ƚt=O:4c/Z䆚1\Y D{ǞFP f+xm24``Yb:d gY4툣LBrqx`1pS-7A,HݕQgtMX0`eza]ьԲ~]&^?uH673Ť;M1|ӠULVMڛj. aNrj6R[ :QkONZ1%`I~q'񀁽yoGʕl^mt;k&5U/e%N$EKyR} -`8FGyRSBn*fS;+V@6ߜq"|;v^4qtG&V nK*3’SRiTV)h/Otp'ޫT7Lޅ6ÔN[Ru  K&wK&hGN8+ޘ-O[ϒ{䥩Gкm*4! h^ xھmC. Ĵd3Ophh< H\$I.?y0ϊE@wx >̰ÖkjO*8۔2۸ѱ:#hȁ\gRYhWq4ΖuH6vy'wggև<}'@ Ɋ9g^R+ms9];TxWWÓd@2GKV>ǀVתgGyh+HX$+=Q38C"OUHH߹.f#n~y3r}aj:*c˹?s&~ПD)c)^XW`%ԥk +8ӌx?yе"u1,TlĿ`.Lr?N.%G]Y4ȯ<4tlLʕ1K#in|,!RN?|ϟ#NP>ϑm6df#FUMs.평&h-7+y]HRRpG:2©R /=|l D>ѩׇ JVb>qTD-8Ƿ2 =CքRSTpA&+ZAd7g $DA <=3\@z?Ofg@$Fug;w˖=5=16lݢ[Aa [^!xcu ߼*9l5_{fI 7 Z51~o.[;ԋ ِ-J--L1Q*}<͐ <(wJn==Ix :3^8Umu| \|Sčn fR-^ug/ ۆxj~smU/T閎ڙ6{T,s}wő9 ø0XXHs7LSg͇e_~f^ ]f%$98iVe: b-ԧݱ$'(Tp㳹gxxXn-܆ŽH]FOdL-PNۄʏc=#̀F?Z<[׎^xйdquϠs gx^zۊ9VNKq3!fC_z\lDV~m _i9ц&@eAy˴N PguRs@?N'<54]jzLofaux`Ÿ.؏nE4P]/xĨ(|ܯ*@u)^\ Eș!1BȽݕ鮭BvAr0\qUv6}hPthIޮ]{ i{.7wZ*4z]sKqKWs˕̈=uBC}CJ&۳.ow6 /|QP< R؞wZϦCvͺfǚc-%L:@)~1 ?ìEM`.'ob 2FxY(+M[qdW|o炈<E.JNLf Jb=BL.޽1]1;JL 3Vf>R/%ɧX2;rO|/8 PÚ1R5jt_`-/#&2Q7_A°Az"}IAtwo&Y୳\-VaDAl(\YǞEzHĠVI'lxc;8B ,A~nz!d'tz=Fә&MNR*}elQI7׈ WRڇtYif)4 ?n)()@EZ'`A%B u[hÿZcq"SQ;ZBз+ܼ\;bˉ"R,^؁K)PRR,ѧՅ<]D W.g($o=$Ƌu.:U=\ 5^Rt,ûr8}q/?kAwݽoD$L!Np  Vtc;DZꦹl>m(zRw46_TmuXlW5 38=rr kME <6}]sWhmg4vR,O[D]BH>=n}WD?dTz8.Rb#k箍{wLnDiXj5ʮ0,j5UkEW`m@Yf@pJߗ CW)YKTcCos R)_!77o'lvZXnA4ENsf J}%Dpc2`8^U$$ #PMmn$oA8 NŢ U;񲨆Ղ*r՘#J%$N fcN QS|]/HLɱW0p@ U>YCV/~1m=v |ջ]mQ4_EOK@]Ϳ]}$P(Tn`$Q6SXnPU6TWi8@%(uk95F2zWXڟdVSIf~b*跕aSEiu,<wJ\j-7f#^(ݎWx"<}\r-^>ZwsJ9x++~>4 XH~,zt %zQ R|p2jes;I8 rp&1TdL?5Psgh- gتL[m~>ckӕ Xe3/bu$~#9o3>@pN p."e嵌^2C+qƒ9m Ĥˀ@𓀠{]:ԩ 8U dq!%2ቯ$$p{i`s5XJjW?Ѵ[>+04K笉 *_ O*mGFꔠhzITp axwl>d3B"l>{1g= = .6 +l(ݏLC/x~glo<,>U=tw0 }&t;z~(kL)Wa @ˉtDy}+Qovd;&`WZ"DEr"c奯(dskarG_[w,L* =c."j,H4Yc]ןr@BmA"N#Qkn[WIEw( GB=韉5>#ځk52q\ɀ;5dͣg`i)ă,a(A(΍ yeI! Օϊc5|eD 5oBYrn̂H& +rIVZy˜֭}bTZ' ȩɐKOaȪdb])6/f{gwl  2my$%IdYT%]|^"(1iC |4+SӁ*SO+)0Sm9-3x%j,H[SCtUԤz}:⾿Άu{$w~zb,'YXN5bPA캻=ȴ; J q`;`*րո;+(Ɗ|f?$FAhIy*M[%1'|إ,A TɅ8D} d[Io7! f>9Ji'+=!b) :x>Քk[@#w \cy c3MH1HbutȨhλ ^ 1}6emM/ :~΃/%4^BRS1V[B?ʼn=Bf"JhG5ˬkC1(Tl ^ߵbMVBay~]`gIqi]Ygacdaӽ >jڼm4&V}Q=7? pL쩠Z\C&XK]T:3Hlɸu~u$vo8māeg7v 2NpDx-+% oh,5Xi:s8EAtj(N60N>OLˈ:9~XC\d{A[McV$C9d (*ӀwEmAp(؏Fu6<Tعk8@_"LSL77y!iO~`0Ieլ1/+u`Ked z/ yݧ p\D<2@f3|sJQ3ȞyГ. LVXl7B$/Yl(aXJ'cGy&<sj<{w!ib3)F }g@E^ט؛m:QlA Om}mGM 9n :1i7xE0lBv۞>KώձsEjft,sp'vaf1S)_>Ϻrl~ ٶ/aC#?4=|ͳO>sOg0gǠ]vPCJm9gћCA*!G4cOY-,`:Z\ yKM;Ź~纃p2ˍgM"sٍ!M[*a^D\qSj{ oPNSHÊaR[17I#vݗt:+Q¨  L9DemUJ%$4t?{mKHV 쎦5wmWX3S¢)7+ԜY&nC.#ez@jط`X|a2J)ǶmJuvX썴s(,h7Sn̡ZS$wLߩ󫯙R fq1[vPS$7%&c,HQhIss0R+ؐRÕ:͉, 3VD;7g%&4cŞ>a$elUHc %/l!2fZ1.)dWd5wyw_ŽaL;iw?x媩^^LBz-at|j.N[LHى|(LhJD{SCi1< j[:!gAvfyKUZnftzWuۼuΉu t=^Dk-4A.wDn,h+xM֤kA`2ޙ*8aYhfq]Fb )H*|m|kPl-T.&٪ShW&a)_Q1afYXjF%=%6{s#{vu6:9ťO!d4)v€/) YyGzǂuh!6;['sjU^D=鞊*ŇFL؝ ;::!Lk?BI/iB+To( yhn*m}q2w֒n![S74$g3ίZi*bM%fraw4Af4d q`!˹@{q Ϻ2BCÔl^լUr_[A97Q3{`+(?}\#Q9ɰq@, 1͋+iwvld9xTU?,/C޳R݈ׅИ `jт]l?ʲnƈG毹&]6qa釛g\xrXNw| Re_6Jmq߽XMLЉf#h}qzX_~Y&&u g|vlDSd8;Ԁ@ t S*'Pq/5{R-qnO7 :ERw@ .ck.`T3 NIfQn`4BiYАm-u6ID-1%fK='@m)~cLq:έS<<<7. s0J~C@ʦvUÖ hqn0Q#msmCuf`bX i?i-F&<$|!;j`,WM= c";1Yp#:(p+obIH/orzKţ8}w ~fٰC}>uyp@"AҴ]AOȋal1=Fw`'(؉m}A45TQ]=)/C^9q{`GwKe GNfJZ2x@ o֌cJ"Zpo&}VM7{1 =5Bj~i(Ω\~ΚaW8f!\ ֓p3#.vO 4:{L[nkfFߓvH@7- |bJ j9z9k ۖ`uiq:z+nTIrݕ!B́Ιe/è3^Pu#WGܶ $I cԝD'Zo_Js(&ZHDk^ tc`u88{-?,~`pNJ4`%u'w ݛo l:R4k@Ⱥ:NM!&zse~A}K@>jϠp _C_pťpn%'0p0hb+$5C41&3>E:#HDIׇ0/4m˼6O0%ODąOExpa[W~9f#8qƃ.}}wb$LQ^ggOHۥ=X: B?K%{'~v"f"W Ӻq!mWV ?MXz؎ *)!o[ڐ~-k!wеێ39?R|Z&N8x׾1;6Ot 1P%N[kjCiI9uE#7W0tI%Y›GG\gp"A}@K|C:$0MC*!!LP_hH9UK5y(ARtGBr/h 8ÿAtXvZk8}Ggp_}g3ύO~_8X)ñYh Em"1ZUQ I]^ ]1bJoPD$;6LIB(,Ƚr)]SsUɜ5gX:YYq)7k_=gWKIT<qiN&ϤFxWؐ#{_YxugomAup,eʱT3b>Н=Iq߆BWd2)|wv#Pb .ct43Kbm{LS7¦큲O/#RU>^WwB G lAu !𗣅Һ1?D\s.IfŜA) yOҵ,BfW bdZg!87THtn B.ε{Vd{gɑ0b֒ŀWZ\jQؽU!a nbyܖ/eOΔcca32u(:#fH];5*Hkʜy.֌)x$ #i+.fݓMN'}`Vcz$^˚ !nn޳?ֽ\mN\z|dA/22}2):bKk 0s\e麒My ~]pzxI&Cc]9fxv;H_Ai@OTn%[iٛxX:2ʜoO?|7}pF^>d {*՛ĻFyD=ZJ-iԃSsufnF&ʇvW8W}M`|[@>nvXMͦerhM/d LA3 EGE*j' }[ !h=Z$,%̀zi"/nBaoi=.U==;1v`$&cDV:D7x }\oATlsf!c{d) ^$M*kPѧ(gL6w{ÇlXҝ\73ɕoHp4jqtyr y{]=t\|xR7M+~$k_ 0L oG_;u47]e~Մmc7LT9Ge1pO͕%et8#lֺՃQx4Z*'I~ !~0ɂqvya' `] M8c[h lnR@E'@V`+VCXyt1dr^x+1稤lwjVSNsgЮQH~2T tɭl  wS5vdORg_l\ꃹ(T&/U6o糜zf`ljfA!5l4?Uu:<[MɒPw{7VZI?nFuM0Ǥ_=vʹ>2Xd t/jJ#OZfH>qHirUk<``9Jq (ٞ373LS!F)SJiA-gUS#mNJ'DLΜT¥>sy2R;~~W_ <McC}7 V̖B[L#$ M-^+a*/|iu?ҲF]NZǢ"+HT P75!L:AF]IzTOBQQ`+VT}"VwcIwc6dIJ1.Sc/0}#5}xgR (mU:l*ro_##ѓgox,y~&BcC_ ,]$R3]ߏ1L_h7 =yC<>.hn/Yg-LwNdKM̕`_!1tE7dIH _aoi&͔%;Q'(Ű5/W϶:204 :эcoY^Lvfߢ4]t_jPj ' M+Mt N*q7UH.7z\'rM_=OIE+6Ρ.ouҸ/$?]Rٙ䒠)jތ [84*4_x~c`ȵɒ]Ciswࣼvv>9f1,%. ݱm;|g.urNla<,16喊ۮs BNe ٗ>nvV+MOG$UuZ걐vX?~U$nݧ%Godnd6{2%z?5=/tpc F:Urx4w^B_d Gaʑ߁ˉ]1Ahsܮ#m ƇcmMF3 US1\U`Hfh]80I:wpb)˕`4a|n݋Knd1 X)[;+im,VBḚV&5ۼXRfաm%:+5?_9RW6vAN%!`Bm~8 /}i H8:˵< 08Z?(6w+N!um2u†=GȴŜ:`N =ݷ~#CSߞT@=z Y@w&t C!D<W$ˆr|'o[d/l C'o,-V_i m+m4[sHnbQָRJ|^JL=E;E=B`F;u.j4eCIjGC/9ܣy ;`R7 )KX·W0l, BYchBFLw;o zg!`a]:!߇A+M:^ }g|@}w^x}z'zج41yqf N3|;:MDKQ_wkI>h|l-Oc^UcXʩsO-$̏+8ӈZ x$:W Yz.SXņo<VY=>~Ov1ǐEq'DZ.N m'opcy\Ya; z `&\O<®T8ړޞ{YՅ o<ϟa,NnY-٧3aιr4a OȟMU)ųt16(1cG! 76+U^ႰϺbPnϊ%TEt&toNUV2OIʅ<sbF.:C3v SRvG!ȸqЬ_cω5=U܂Ψ{ty֔hR<7p917B -i?jwR>R9u#5dwA\Tf/6/.ȧ}__uqcfCRz.uMs}qL2I = I &)u4Y̱Fִ{JY4.(u⮾n kvx&ʉ3nڐםυ/3:rx8 Ϣ8&/(4$VN"bxg o=sH|$cՊ&(S6p锴Bfʎ钽Yp5tF b7FO)罩d N淼~EtSxe âxv~J{PoĤ1 *t@Ezɝ9K(Ni Xl O_/TkO/T_\fpgwlB^ F#,Qme-INM ?߂LI^"+&C{Z_Xp T(jY/jj:4Fɚ*vֆVi-~jQbfR,f -E6-\sقd<[ۺڊxE&o]f/ɋb Kmtbzຍѩ"I[vYP^77b;S,=ƣpTYvD[cߖ_7ȊsE ʿ\!&i u>B~dRܫ+Iם,I%k3buUI]SvJO6|j9^'VbKa*Eho6gD!;I1,5 ] nH^BnE6#B;ڍ]m4FAz:P΂yag.v|fSl 2!33[ƚ୕{_9OomIsE]dQGƶ. ҃ M+U Y}S9OH>5=(/3n[J[F`3~rߦvM0T+NjMB.SxΖ+YМbrVw r&{~Dl/+pVQ+s[ ḢTP6& \rYp۽]NgKL Sk]* m0՛ԔWhfs@FIwmf4Œ$:;K=^5)y^{]jZ&؁,rogYߒPzGoZ&97N/EP(XPD5ɱͥ$wB J8`.RN.ry:h6ef~S G_sLUMmǽ^=cg.f͠S!{wOu]}ZOr.ljؕd J_U=>0iF̻f'M4,M;e(o\M)©Z ȒFmBjbO6 n:؀֟-~ o%~dІ9ۀ%_;΁L#!/Bt/׈5z@Zф'6B]zk@k)teug.l[ [oH'8Dkv : N5QwJqĢ[*D_IEhA-E2!bW< à,kϟӒ^ڱ㜀+ d_G8zl@6z,h=Iz℁qvtk94,%Wtv{_NGG(s{g߅{B4y髯op68.!: eVB;Y:?C9[6Xl Hi̭;S0w˒ƳJrr deA^?%Ks/M{rgn{PI}#WAXLd8Xk Իp>q%SiwV H~\GWo`+z/pp]Y,4LeDٔi䌊KbCHio9SdnXiR_!Ngꂥ\Ӄl򶹘uejB&e-C%\:9mV&n) 4:oSZM;_~3lz3\Ӱ[%D/"PJj|,y8u /'!R'M8V'+Z! ;Gl[&%HM6Mц8;L@ɶX4,1JHktWή":Zv/Yؾ ,~swxmыm T5Nnf-qDP-شL?#Gw}Kb(rWc'<]:8]uvzdKqd#u#kfcn bc%ӛg Glؑl54cd0^gDY|nGW jA>^1)8"{yJaS p{z`]pMoOF[u4&Qr\\˓jL/R!<^ҙwךsTgЂffuin4%HbӶ8XfghL ҈ GP&EIˋj/CVeRzTF>}-s{ԴFyuQ Q/㸖WJ&syݢ#iʹo~bҷB"(&xg2G7wo{JhEr}l_@ߢB8,D׽=U}և{֑ )RqI\C~~U/] ՆAŭ~bϒ{e(ǜ+QAB30J@b4Q,25*^ӬR /ReJcAKڦ> yӨ"Dɻ\<ꊙ<6Mq4_JaSNN\ZǦ.(008 ,^6(v,8AVko ?!sC{EbĞ1AیIXT6}?>ɓ2?X´x{=8(6oEp |gH0H\e?J?<='бXx_ a(椝-کڷCOkS t}]tBaԟ|:~u,ZBĞzqL @{A?F9 3S9[P@q;I&\5zmfu[X˂fGҟLo}4ٰ8 `ҹφyI9ܬъ R]?o;K䟳^H"a 'B3| +)9}7}NHoblisw4PtBRswNaE^&F}:mHk9ܶgx;SyZ 6_2 Kl)0Ġcf5΃Dy5J>j2Cx;F/".̙[dfz " !pR,HFu|\6ta <݆ؒZ݉b2jO/QaVW^d}pY~!Tp̴)rll6B8.CPnΩ`M8`JպS<Y>ߤh%&jN|W|&f'su/I L$6"56mU78p.9Rj|?M$.ڗ%6X \PKv9r􂲈M~wy2wƒJ\&ʚ@*6;7 #;Ji? 6SÈ"$I$>寋?ruDjj.simЊa\;ސ _Mu!N g Se@tr5((›N"~vb+i2S*mVELv {ߵ7k:?6ͽy=eȵ1}mϮ'?"B- ~+R0z%*遐QmBz@o$ةvуK7oϟ SЧF{{%uU31F'߆ZOHnt~(: Ť[1Z猖>N$X&R(oz'PaRm"O R}تPϟ?: |kB7xwBh益sw/;cJVt~9P(a[2:/.O|-J;4dlfyp"q:iGlP{1dU@^R 4!^e$Yyq#!$àġ]F8wE_o__'=Ay#yG׶c>E_OZ7Q."\28,>Χa[E8f BH?J"GK/-νoԞv7?\#0t|-.L^/2 !̮d>a*:SjC1T0کqU8 $^}XN 3s'z Ov#[_RQ ,g jllg$rXym }ZPLʨJJyȨD.䉱Kbd֟g+ F^$p t qFf2 >$ 7(2k}aJaf(l{18F'RѶ i~%C񨽄1C"o8`<<&06s4C4WKފd!}fAnPs8[oxu(B'){’RDTQLvo?_Acِ L+/[x+U=:!QP뒋Ux8WWvJ} ک<9/w2Aaq[˰i ::a8X'ʴNVa*)l)t7aH$;b MQNLcER@JZ9FiQ>Aȍ6ݻH_qXNtD̙0_ʚȣ&sh:AD-n:xÊ>le,N{ʚ 9ytfțH"It PxQQf@}5U4M,m8SnOELgSF?%hBo\>!芭7d-jN:ugƪIO7YkpsUx=ink/2[Kng#QҾ\ mYFH$0 BxS8#X +xq?;,DzeуBk'y"JZ9k yky>O,Ƈ/H@z++#jsb;?^Wj=D-n$~`f;E,NsDTycڛwbOߙ?FƲVГk:TMG)Ysek?92mLBVb}m3v H`T}m n,~r= ڇ*t]]rCݺTn>~|뱂= FS5{ZH}|.Kl+a a0b| 耿 x`+He!f*Ewo4,A߰ci̽=Ia}eZ{@wo5"͂fh\Aht$)Lݽ^`: +\axGo=sE]RHKI$4=4RնSv'$d7>7 0} w#%2k7L?mgOsg`8{FH ,|/WgкN$1YkЙ꽓يiN54h\9;%Ae&~ 1XfbNs>V U]wH UIq![3EF')-=&8G\i߸GY+ψs?޺5LDs9b{:;a.ġX.%[.>ZC ۴\- L޵? 2/"aKw:0H FmN5bV8՛$7*I!}K~nUw1gc>f4V&Q؃Z$rFk= -ZIPt +g;7VBBӂm>XnYU> Pn5;Yo_)lHl֐x(#vSFzU]U>uvsIe/'@Uy[boFyJ f<53Qx*E|"fP%lߏyذ8ՐQ=o+ yCcWbJ*5G4`"e H8u!цt7iWʮEAv4FՁ}PZ!e]P.|%rPˬS2 뱳072q4[j )D^PiTIQ n{mٜko~[{K-ogW!ZnQx1ʃgЯ{|' ~䉰'V,P|]J{=Pˀ[L|Wy;FiD`2 ZcDRsrP؏ آv "eZ {A\\AR>ԳeHǺm|P{ʽ_z4{5s /wp1آ6!K 0vAm%|4l5M;-/<9AiY)m1BR^i~Z i Ex&Iy7㞮3 *ҚNPUY:Ƿi,4/_k:2-\"aZ^y(+o~i/),P hLg|=͠BYs%a~#gb+j-3>(d05ɴ} }{cvЛY=yǹ,'y';$XSD(,h5b*mmm}C??,LF;$3e9z^FUY@)u*wAP po,3Q䡑9Eگg `yI-=`?;E#*6͋Ef4&(_L{F1bN*y ôj5- ~rX1K6jrn:s%hsAmA3dCث*,\ѨUra9|IsBSk;s2kOGmFH>Iw/3T]8F>နhV5P4  ZtN8qh5ǹƏR t)֬TI˳%RKa 旇aN ]A#l/n_# f+[hI×X=OWNKsP@&Pspxf֜ܳ-@fvD5Xq,K\ +BսE.±^5r0FZOjkwIJ[E1r>4N_ D;'$]r5{z`n^F21,#sIWGn7\Wt<'Xny#tG4pePOjs3:x#+L*]< ke +ӠxC-/t45T:Iq* MYH$5" 0/vV[ *+Ohxԡ8O2]aܮ?F&IPm[7}vqe4Ä-Y"fݓFחL2Tah{^Z_5 bt6jLXF@lCvaa8L{G6bJq[S.9) ́nSt#4qIAFڽDSO72k vV+xX+O[e&_R4 l$=1|va?+d^:~KNٱtd ؤ_BլeJ0gDA]\:7:P cc ]1΄*YZw;O &ދʿ3b h\/ ٕ̕[0ӱ86f^O@k㲌+ͩSr;MW%yccANTEFD:Zx:֥68'u>*c[S5Ƴr:#HF{8=˳QyT4ڰ AN.ӯ 3$_ {$@ Lhc4(&s(cuKD+ L RL62A+$/;6ᘑ9<'x"$IOpDM &y>H{&aGkY]\gO)`2`}*j(MF E-&)=RJGpaCoh=,a rb|ZUE}6<݀Fi\SEUUp֔syկ&![癩cqx-LE8w =$:㉹` nB/=[Xr:?8N5G{ҧ0bV8>Y1OiVGz6U<xy3JltL} ?48.e4Я8 1ib`d;\@Hpr> bJ=dkuR( &2vxnT"Ai_0/U Gjq<^7ؙQ197HsZ)' ɛQ #Ws8tQd^y?paycqڝ?o~Xp>Mzb uzvĉ's_B<]% DRY.+1<ߟYSD迪E!J'La}ɨ~Ef[P.K7.^/PHL+(7@p6 <Ɯҵص.\45?QC4l>Jj_>r-F?t J/'D̒~IWtktn73*=.Vi`<0T#gQ eQv47]G"U`Y`"Ê5K߽سe9QɡbMyĴgq:0}4cpćI+ {i*E^k^|д-ǨyВ ujvjT/3eXzbWF<+7N&w't"=q[Bh!A4Ԍ:F`\Y{VVu9Zgc Ng m7N+)1N#*"C81qJW<c<#}& TXSdEvfᱠ9aeuWJ4K(k0$ZA&4$7SU/v38ۦm$JHǎG]oYvKUw}1ޔ 1r(FWF؋n_*$bCd$bBJ["Gqe61~Xuft`ҌG>X-L1{f.flK 6<޺ 7X@,ݨ`ݵa6O&lurI@WS^TJe3 ^KE= N0ܲ!}<4E14%F1`bw}ɿx8 l 'Yeic")c2Pr.~,Ew*`)nѱlm{xrh29W @ @\ܠr_mTfEcW s3EF;yPˀPCX4D$IﱇE ]2P_y WOg7/;W ` O)H(>T`,,#'ٳݺ44AR &1vzRf1ecsIIKV͕ec5t%I.Tw1=`3(nHNTR&#!M![+LX,M/#T() qmfLJ>MJ.rW]ﰶA#$5N]b6Gy'ÔN9n9djQ,^N:TFUiv٦Q)yDO3k+݉Eap.NTwN! $@'c5l j6jNȾh.o9z.6$ ׏dr-2f9%^rT R=<=-^'x^܂& ;wg޾hN-y>6C'B0j9cs οqZ#)7_E[TG6Sq1tOS6YE"zTa`J} $^[N;#*:gްDƄ-I2 ll3 s[{u h m.[93i >-^@B:3Ps!F}Cgw\#L{4I,o1-|y (=T8@iVybN렬0&Z@#y~Z9CN9͠\U#efk7eJDpGi8F>;*kt;)܅fP ĞZs̨P4EN ڬ{uiSBGq" hdHLo&'DSV%%!9\@~68 UG:1 ^M蛴'`xE_J|1wѵR?>u**@<붊gzS?ꎤ۝7;F/7VJqJeƶwP&;Hpo1Kh>Mh0qtaسZb҇6Ra,JpŹZ+&5b=ᛅ`Ћ+wSOL)^P9FJ<'yf'AD!pB\^b걀 hȟ$D68Ճq[$2`t 9;gFN$@hLUN]!0߇uFrTۛ>CM({x@h]i$_ (a+sD:;׮O7R\ "byBbf(8: sD, ÿ聽j_³օb`~"=#8婸p; b(X#i R Qz}"sP"NMs >MRG(xMɡAÈ ?FWpA>o͑{ X?Hg ľ :t-LȏV=li'? GZ8AucaEGe^z9ro}KiG ]k:3z4l;MucU[$*S p(Xu T:3h:i)ʍ(V)h穉q2hS QqE0FJD(`:`Wvu\-`F-04[-tIuu@RlM&HDiub5MܼZڗ + k}hS{{^j$K;Ѳj~WZ6)Ŗ иD}ld*(6߹jE3~96.#/nV~GoOmnL&}L''#<h5 bd7Xj5QJ3d Z/0^6Qe !FvZ,\Iu`}Uk:iĎw폵5zE GFLcپz4Ns)Eک;'Uyq%O $۝ARJn *n;Loطgɍ_9)DKp5s`xV!3Sq;K>fsO$FѳLJ(I%,lWkjƧt}]>σ)5M0-GmC l/O(w9 @-uL\|mjLJa۫|Fdw$<-]%}N>05gO_HNZXwŗݙȶtMxŔ˱̿@0s&HQRT0~}VI1$i3`$sRE&T>qQIC cmkDKD 7)卝VeBluNCPׅ?b$0˟}uW̝I{5%+m8efZ%57/J &5On(K0$4xF(eH_TDj- /\H~jS 2f(:'&NW. ˃2sWFPpE\)Z4n0esScKXSS{IVF&O /ڕ[q]g`է2IFLTڧ ۂ_ӐC[NN_Nj,v\#`N]CV _6H80ñQ܏ǫ̜S M('ZN* -;ifC<ǂ54m$Џ R vGICfѷ?k.O眔]7BG 72%V1~̟s0TF8!(Jq|ie|;g@TkLLn=/9ֱ;ӎ ɱM}mghTW9n"!Z9M/ɢއeEAEiV =:"Ir;d`F{+3Y6l5 Mr?E3\_P3̖ I!Ech25LrDsk mt!-yzH#mE;]}J.@?H_ʿh!~AYg{Tx+mY%SussF"b: z,EuD!Dń.|<&ghXN{Ea{o,)4ù2"A' Zm^rasqVv⪝o# Q * Bu66/B_N=r"!D t1I >#[p7ö()61Ӑez$g,6X^&kֺM2eyNP}_& Z%zVF'"5mm s}.)EC-&}2iox I0d*4"y ^92;[$nBDx E\w'IIAW!EbVf.w[2@Y(@Ƞ 3ʁw;Е3_gf TN66uNZ xuE/RPO_9 8 I *-=zvj:&*$\vGXxdFHlיg=:96Te4эvO1Lv#@ 6x|L:w6L:AיcIǺ+="Y%Bδه0?!,8N.4Q,NhTHR_֢Xqi@ .R5 ;EYIS!CMEanntS8Q  !"x7Юy[٠Ab2YdB[+`5^4]Vd F}z7 JIٖv:(֠pb@1^D}e[p ^~ܝu1áFVLˑ d :`;?!Z\ZؓRMiјgA`nbJg7_T%=S]gDzl羷74 V)cD^ ΪI06;IܽnpI8! KXl<]>0!sY{_r'm\'b^ZMXDA[$ wRyGp 2>:jKBzʈAXݣ A<^F[*B , 9sNBXضW8V.r ֣Y`Td|)^G{tS6wnv. {_em0I||hK+;- n0C]j:~buF7+(w%y}˗57Yٿ \-yof1GbcOʃjgG;v.{N6"ZO 1b Օ\$d?`#?:fv^_z (1\צ5C2ʾon`b KŰ> 9,iրGm5HMlbTyX[ V_ ~N\s~T;`L\8Fv2J({tQW8ѵ MMfdYS\kcKRR(vҩ(p|]{uEe9a`Y$YCP!.h_"<8hUhV Nvᷡէ1`TTx:\2m,2i5 UI^_]Ƚ93|fNv|CpQbLJ 7c (p -W>c"7srn l{%q !~vH4+pD8-C|/-≍gߍӗ`kENs=6HFLaL N*1>Pd(RQ.g#9! n8C5O2܈H=?UƧ@seW@fg*0M eT"tcVU#hE_P8>!Ġu;+cڋFen|bk3H\vP-:& QM0٤&0/@$g85Y(#i ,!KMI87@GFjz]?1|(`P?p=گm."Kӹƺ?~gx%rJ<7. *RAǐ0A'a00T2mvA9^OF(g0+N>_5ASƃYV8+- J{ǂf]GH!p:prmuBa Sěpb1JRa,4 ~,i5j>߮,h ᤓ~mo)2pKCwW߿' 'Pg84S}* k\j Љψya)?t? 4aRL~M"s+K٤Oz9!b ] AO (N0X/l51_i4O끶(LgxvE@XBPHJS~2NFP9L}gFlAÔiQb1-P{F TY~;*6~SQ@g_>۷%5vI)h`JJa}$ҡ]"؉rGBAg/XqH2biNgQBpΪ}̺F )O}Ȫ ajiC;_QmH U{'Bjx"ݦhV:Fą? ť?l|}:&fƁ 8sf &fE[h=ǂ,]CȌ*Zn?4eԬpk2B4jO ö y'j2he<.Hj\Tfws.3 $7ݴB,>Vܐ[}UF@c1^+zd.j Ѥo<3nBzAE|DDg %8=c{nabq@|h0C>ͯtͬg8abm2>1L,?uŞ%Ͱ7?rFS8R X5QEMVV xi80Bv2~'oo zg;L(9)ɠ! ,&ړ:=)*Fduw "3f0!byv=1Ъ"H*J3ey`P glsGTiM\[UNK)3=?!vS`5jPHekGٚQXKDB4#@_[i;N(&㺠oc73yoG)-56Z8DxgCT +:wI%ˉ A\ |XO~ͱu3l&qX,k~=ɶiig+\M2hEƥaEH |@VJf|)P>c*{d}"=;++ &!O-ϯ>}їR%}^,]_kҧBuO7vه >2ocbfwG x`i %\F8v4StOsPcE -ϓO{y"RS?l&Q@ϖ ܖ*aQρ3G~ɱTρRxˇ>g#&dzJӳ%4r%',e^҉kd_r++ U|'}4º57ȦI'WUOj| @tWgUmR_`8ĉUT+iK5%=Z^nZJ@{{r6^_8+@d|Wzl'חT.k邴Oh r_t܂,0|W_8l0x+^~AaSIڣ ^#>!+Ć%h\Gc3:L}5/B(B\\M`{R7hckA=!kfb]9GA]C~]"*df߇ +OKJP|.PUZ$j{-P"0Br ɐr ۳hWh DxKhבY}A(t}3|B',*ڒ"Bl}QG!E+[8YH#PEۥޗx/rٖwNd>2s;~X nB'AY4  dX%Jv.dL lQ渒O!YI #ge ݁S~Ng -.ܰ:2)f gW0&2 NRᗥ_zd'')ϔfG(Pt."ysېN>K]pRt+f|a&w7jG5s9R=Z $қ/ǮKh=Wj@KIQ}O%YJĺZ7{b2ƥzY-9qXdI7< +6<<& Z;mY&T \\n $e"Yk!.uUIߩOHPR,j8Ι?iБXB3hjOtC֍ĵt{˹FsyD-4Nw{Z02 C^m9)iZrqb8w/Q7q4Uل66 "$ƓvNj1+}=DUEn8ަo}X6;e:˭OX*>ϓ:P9i  EKb}k {tVP.^&s7"ZkS"Q;j.`cRsԮ0I~bXYVW ;k\K(-(뿡m@Ķ{#&T%|z(N$g}B '(mAD﫳Y,+B8Bik Y߀W,1v!Ȏ6ECot8(?^ DF,n=lDuL:+MW}Xw]yinL eKI۸{k  U6GW}NDa[c>[sp, 7Y=F[vBc4> ,mm`{hd7Y{jB `D#a%]>%=bgT: 1Wn|cVq0?2z 73=%i`<҈ɹ(v)JV}6fm4Gs lpe[ͳ()YC;c&L)-&xSN?5r~dRbj|QJ'`x'-9=0m+sqlμd&]m,_{lCP T)ƣɆPOǕt>S9oώ-wuT1xз+h~^7WY eb c31fZ;Iʌ ǹJ#bj8a~p+%8@|:3k"良J,ӸPa5:ty~2ARþl-{VG #p~͉G4h[4;RZzyXZL8` )%4,UQލd?~+!vN`t3{cC*5l @_bnO`doIg gI}Ƃf&e}gsҵMNGbl*8AC%6>YuP\}W.x)&ʅey9Ro\-CҨy`lU92ajӴōyJ:׸9lTÀukU?a>ɻėP sܨJ-n6JQ!(V jôZPso`[d/P  L~kTÀ8Hq: CE4<~6pi`v"DV;Q=z[ ch@,\Qֱ^Dɩ>j#H>52꺅yb3?z׳F5Sk, TD I K3op&ERfM#@Gx+eqǚ;۾u~u5 ֱke2O:ԣrb5G:7q& җ 'T2D G4_Bҙ@gv:qJ;f7!\Ue'vF6 eJؔ"gl?CU'L\.?1|UAic pmU!ZׁZ?ˌoW5l褐 w 76rV/(-mFˈ+iHmFoVɟn ~2K12E|:}Rp܎Ǜ)Hc6cN7~U<2uDOEk\V o4gi3zy]\κ׸Zg8zQ(z  roLIy\g%P90߅)q]G/zpaͻOgF#!/6 k{,g?k R?p$rL ({Z#uc5e߾ny\q344EVFK`}hݞuI_I*+pbY%xNN!SEU{@0bWR5[ʠ SrX VXmX Y^ у.v{=td]*se;²^xIJAi?0ّ>TԎ/"&J x$hm7E?/Zɍ)rжzDB.)?Ȯ-bbr$3ZJTρ*6QZ hӦCä{.47oȒyqoP^"RUמg / &]d[%zoZ\#|[;T*>|e,&P4({cRDrjN *e3!9<ՄW7ƹ xK]s^⣀>4%׬)OCo=>&NrݖqZq%g#%^)6/S݃l0!p×M-8ٍeJ2+ kathw`I#r=2 $*e}Xڜ";K99bf-&mĥIuD4~5#1QÊ K'Rwo,KRգجFSKcE*|0f`6E(6[P ⎲VT-)(+.F>UhSǭػdnb[M4ERS8XqXgfPmAJGb^,Dx:pR>[LL7bȳ\YQ+L&sB$tJ(=,rɠ[RVsZPTsWs:ִ˴ W-vWA `'G:̒5*¿N"gN5GdNKr"~ &eE#zNK): ^FB;t_끁rM5UJd+ ʥwD(S)Iq}!=!\sd`uw/uAdʼn|[59.HrXiEդ1 qxbZz.,RO>hSdx:ul%0p&1Mi3jf ~i/-7.@,B? ezы1rzk(y_B+nKNj0̶kep-Šf~ (9!x &t]k-}]P7dt:|5a~ I]jWCV#-M+a8>mh00uHJ%TS 3&>siH,B‹P[|a?%W}xG:P*E{܊2P7C%N| ]ǫopzoHh0 nA{BȘ/#fcO(^Rڑן#4p00X?hooּ {Ӷ>Za{*GJ$Y^æNQ GOͻg{ǴQ`}p*?BWcXNHSZ+ͭDUl;:R!I*ȉZ~ru=PTw~ O\ox\K sarA":E`Nih\fJ/}8PZk/JCQw%#4DZ\ oWkl\=8 #fbi~^lQ%_5vKn)e*_Xt|[+ơf\@3eRd!!YAy1q :Du7W0WTA[{^& [JmlS3Sl(.ҋG8/R5,&?$$GWO4ؠ"xC 4/57qۀJX͸>>YKHt(LWdQTu75Ҍ\'P2W32V2'MS}xQV7eelh8f\)Y耐:6曬T%0ዱWUF)'4v 4]}Q(HDdUY9S2(*/&=[%,CcGľhJ-=j}42C%+Nhv̕ʯdzHЭk%DIwTl vxBBLg0\+Fzť&_[D\}}BѾiɑl%oT ubvVeXOO.N[W%4Y拦RiCq2w6t4`+oTB)ئ.F5^Jlt55uks\_-].`&i{^Պ|_o={YÊ8I2I_JzlmNĭ̭%ꉰ_cr~46¸~Fp˥UUq0t4ݞ{^ (qCf ݫ{ 6HDDBO^} !^ܫADkޤLwliGY>PHidH]o\+Pg!fѶX7ll,c!S 'lTd;m8 TAٕAU] )4Za.n&QLdd\7T[?μu6ܣЬx޳uIun&;[J) WP13ƥߛ9YQ/S͈Cpeif%,za"._ȒoVD=8K oQc V)gOK_x8̿8t_+FxSqt +xƍO y0ۏe{cQ*4H`髳8:Q٧ukY٧Pr# {;o)Dd-^%Zc@S@"L[Qc$.~"YwHw X9b6)ȪjCoW;MA՝ [Qbnx)8,Tc4LB6S 1']85eB(fIGUNwl> U䐩{c ޏo>*b_t>{Ό%vv-(͊`5zp"D UJ-i.y=_>Z3[2)[ BՖ4=&[MC/ZO8b&ш!HoF#sNӘίq Zry-hmp L T;!n̍wacBXt( I4O\=»YϞYړxCo;Sc<>_ +^MTFN p<pX|#HU!Mj3I6oĵcm +ۮ֙v̆įP">?e ==`v2%7/1Vzr PֺLDZEk Sv;ОIXo b`v0z*1yM ha':Ł.cC1ac@ív& pG?m6)-dYBa5V(3SPA³Y!b//2[hxi2D69UY0mZ¼f),FBIh eg1ρ_A ^La$;Ҿc%9a&W =>'L+<[m,VRdt$8a$'覽3i\`ݶW? v Z 9 ң 5g+0eHfV2 t6r@U 랧$qU_"9?Y&Lop X^|!>e0X 㧚y$k{u L:xOh?䥮39vLp!3KzwhR&06{(@?I:HK @ Ub+Q/k:ȷ]݈WW%ّfUyQ{$=m"e!JٟBu4o߫u1^.;'p.mDY u җ?yx%`%9muE_k v}>Smdy] kT=|Zeћ2HsO%)q4mE v_k%7ᳳx~,J${b H3Sv==KZ)B\AU}`weAhi>uV#mCNZ#(}9_Z*AIqex6SxА_Ͱഅ؇+|X%`,41a20otwE&-`wu"` *8^q 0gD0_ s oCx ?ǔEv8)6aF%7a%rb.h_/W&j>/ ?iqW bZodyܷD| aUjTt^2;i#|6?';p7@~G+@*s.R Bi@ ބJ(vM [@1f xG\B#;^>9 *-Czxn֑hnk4;徺HLlʳI9Њ "ijFN^ЉPf(Pvా奪Hzބ_3.:Xγ1vǠ.D!V/Rˉص:K$Nb]:X,f?v d$zP9tz4$Y0 R2B<:ȣsR1dzxdzD6  ]5Ҵz#lۯ/aw+..P~ʳӴZن ۀ0{Czoᴍ5[h vf w;)h[8ǫD"7V Sԁ.mZ6`q~J}ɞBe\xː%e!Y=gP0,J})3$\"5>$ ]'ssY!04m카G][8Oּ:C#I.jǘ }}8*T++֓;Qpd: .ƥ`@IB,3m #/W+"SqzϾ#poaɁ*fa5VI).4Rq_K Cps"3_Ck,ڒ >TߟFSRI}Oeka0C;s>YvJV"?ZEXdpad 3T#JgVNʞ'A Hq_JOqX | ht^6,XB2;QU͌@6gq:Y@k15Qk5MhÓ8,Ɯ`q'Y-dB%ykfV>`ʨ%F/@X@7WMƬI\(m A[Bفu?-_.WbM˷ ү@7d5M-۾?;0tmV ̀X.SO^xz6nE) %d;Q0:I)b??=ej-ʮ҇BBi-Uكd)H;@=̷5J8prс ȜQ6͗?K'ei_Ȱ "SV.LS(9g%eMݿ)PE?M>~g(䒰lxd-/l*]0hjM5br:Bb"f۽JTL\7WSg&]@̢ݚmbB' /B)h?3MPYmFJ(Io3m^Phy+y8 R=K{ZI!0 Q[UMruvN vUV#p86Ǭ敬M' KXJX7#w;%q-υ$Q1ъ&>Z3Hܙ϶. tr;Ϻl󧲻L|K uUWÌۍk7&kU_́,1^.Cqoey,m Ϛ:m/s OzwraTk=}2o$ÑVZz<8;(և@ >MD;+$?>h\;?K2r<|rry\0ݯDI4=DL"O8,慓wmtk5[|JBtV6&(SQ9?X {GaQ4"B|S>(0Q6,9 E/'ULT>m[d: %DP̴OƜګ4?usv藲*fԸJ^jt݈guG*:29WJRvhum_u sc"ZXrR+qxFqLQ! )w;4N\ޫ*TyblfNT+/8x$0Ns䳪-ܟhF?ṟٻ^5|CniGu<+:jt oܖ"4r ,c?W.&kͺ`v+K*mY 6<WJ"r)N5:_oZue"%2V mOQfkqLލ K،%vx|AK v]ȥq&[tTCkz<^rھy^`,ޑXŠ7bT2nWbZ(t6f-uG ,類j8=bDSyPAĹZF%/qYP>T܇W>cݒ/ Ѹzu(Dm 4O=+0|={6˚{/!  b7n<#|ZYW:YZ1"=tۀpTTNzfNH2mޜq,UE_`0k7┼,?ʱĮmk5vxPF-oڪ*dؼ>E2EىʏmmC3Dy6[O!_H\.Őa%X>NF]]  ; C6:oXN[  V7HnKMiΑ\q!XBS\Gg9wq .0 /sόqW0;͐Du)\}y!d c L1WEXKKۻ_MDf"n(}{9ނdo0b6i)3/I;%ş 4f ~s Յ%<O/tv[&phkQ^ȬZ;轿nAPL@[ d]ç=ƄiX5t CSj4p :NPυlM,p N ޏ3HFԋƨmnCI)G` 5ŷK5zHjt}vF2/B`JdCR.QOcG;2Bh;1X,Jpg|_`1nzC4Jpl9)qopj(Nڲ(ŐׂwQxWQQlZң G:›S7,]G$:CQ۞S dn vQ[ .fGam>ӽ3bEW6Ԃޟr ܻι4)aF m<׸CC6w.*;X1uufʩ}J]n2zU!M XaO4NJ bh}6Q$E`T/ 2`8W(-5RECl_Ky+8+f.uƤ؛bXc=Mvz|(n:{AYGb;dPJH$9k ϻ[a =u%0J&WT5}?}~h - zB$ ^t۞--z (^_>0b&8&>X%-Ms& hV!Xޡ<{mdzۍ[{aV~"PnS+tƒ?=k# L/YUZ㧈I=H@_6!Yt+)!\LVeX)SAm"]o@q۶SneL2}<$@o}$Iuӭ8p0*=mGiQ(UKY׌Ӊf+(re~v(=n0c)0"0\2JHYrOʥT\Xk~[u x.7`=gOfǻlH#g trA٘iwg#&%4q4Z;o5 . [<%Skω3:j w) Q[?1ysMu*?+OHQ Ev T)k!c`o T#nZEiig{Nx"1w&.Y`'2 b&t細"}$8vUzQ1Buj|564謸 ~'}*ܾ#Q}'6tnČK4 Yg) LuptOrKq3ٌ˥UZjN[G,מ'Seb`;&x#r6͑C{B{9a =P}i#Hɠ]Wq7^@|ώܒ#א\tLνݭ%׌bpXܭm=ȕC*93C7lŎ׮dotgJWX/y`Hcƚ4ܟWqWhc2 FL+OEBSள{G_]| GociɔU@*CUJ }SV*[Bd[%Uyn|_fiF,8J']5 4ЛגJrihmʡȬ GO'=b+ք/c<GF7}7O0~ٙϸE MXAQ F `߇J.ΎEVFyK18 >(vdc#ds52EƅuaT2BLf}ꆋJSπna`BDfV?k=d~X-Z&Qvͻuk&mܥnS*{sW7%  R^ӂGKTMW6}" [7Bk˨ԯ˜Jٴ_@U abd&[Q1Ȏ=]E[GwA!`y,veE䈽*" d*`ׯS3DM-<[a e<ōĈLP bٍ1g+<'=O}6m pqX@SBptj;햃τt&h-KTQ O׋M"NO?y,0&hlK5fAk'#pw rfCSn$cVI(17l-ZIh(ULˏ j2т8ںGG6; WY%p8(_dؾ/Xy L* jgw0Ŗ ?hhIVɇɌ\G!O^DNUerU=NV$kݞu1`X{QoI!WjmzΠ}cu s:v 0@P]OG=%H o@ sh?ű~@sbHfZl~z)nTMOL`$ɌfӃ(i-OxNp0}.i <ܔ&Pcu?|= T!\ʄ#,:T8o[QMxST#֫n-2 ē #/5v-&.ND9p 9Mde0d0{ooK͑6,lwMy4P2gJ侙e5 ]{wA[,;f 7ӰnhݮFHqFq" X1~aYfB J"&QZVԄVD[ky>ߧ"n~nS>FWB j/棁c~(>Y~ Vi"t Eے~=%k)ddKTs4V(&s8yHl4P`Jԗ*"9Rڕ8NN}rr# F]Dܐ}'Hsc"ָWrrɹ#ZreN ) ?DK";f$ 1fœ|9Mnq!"qon1׸93ニ"~I?5wG' &xÕ$+x=q 3Q f$1~:)`{oem'hJ= |{ol)'Z 3~ݞ᤯#dyMVpGMp(ʈGd pL¼o銒CBDTsB0]02Pj| uw2&'GI k]5L S( У;}%|H*K'/Fxi\<ʦ&qrGait7ۜ~hD`,"̧`Js1vKEG&0 9V7"tIA#ֿw(F2.Ł7s9Ee#Ǥ>w0q4~Nz/P:Ɔt"Q'dALt1'g6?QUeIٹ^$Eս|Q 3| j /0ǩ͘n5>:|n B  ~Y~jKj^#y_%bE?Z].zw ڊ¾ Ydc"t0if1*T8_LC)icBcDaB ɘ ]ˆ˃4WAR&- Z_4RW+,*=Dȯ3оb^!Xt зs!^zC7uJIc ^e>?h~58^#m$$( X1ehq"?3l,EPRE MeHcaM==htjH( 橲ENm=,ˇ誽Rc_kž"3҈4tf bn7i}B {ed _2193Z*WWN9,L@cO(7H6.2bnbf&X]3h3Af 鿖v 4cՇZ;F|Omelo,1;{w!_Q~kmO"MA( 9js+hwS/dQUTӭH Q+xhs5[3|gX(S1 Ne+4WP5زfBROmLzd>1Ng*<H(Wbv}:!O6j ڍ؝h;ŽI̞80 p~CpT5$Rsk8uЉ1 \MR`!%`db%PC)xMlŦ.:M#Q߮M#γ{~ V"1GU [q)oh@p ͘+K6;riζ%$8vl-$FdI] 񎻘~jGpLv^1@Fe ߼-tgNRG?к || p&Xi|j IBIޙ?r8}Rw0eӡ2R Q5u}97`)j(\04iEl׎:fO C{T~`MC?:<|xYPKQ@瞯y+9;M}VXk=jXp w\\hNW&ssNK@q5:>_N9);n&@ZG}"pE+gh tYPUа0!nks7,)7Gw u!liМOȝi #!gJ$;u"0G, Z  FxƐ1_oUc#r;:]ֱȫ`e7 VCDӑBiR3qx΂s/Uؖ"B²,_"Xmw%pVp?nUbn܍mCvoRN{B%dR'0)h;JnosZڪ'iAG  ,..c2m֔e$ag3>Kv"sV˼93bJXLW/>D?VTi7yU9u-hDP;qX֬D OpĘO12W ROmx na#. *aO8Q7[twr)X͒F"˓qX23޸b2[bf?)_M:LJ# FQe/%,ڀ]PeoPvgh֦mdMy'Q)qt^هɱ 6开bPgƌų_i[wOϡӖYE.* ϮӚS*7 Yfk4]S>($gQ(LJ4H{&R2󱎏icd;۪{"8$T29\T,ప\ &VY0w^h)0v}r;G.jܫ{f̀ Ms[Gsy'I-y(ߪܽ g|X °c޼\Q37 5_jA952.JoY߸@8k/.=Ugԅ}eP>w%j+i1@hv<5)CSPٓzHXff_'>&V)ΟdzeU Dx.QI/&ʢoΡS;5MM$#X.,HoT}VV2++ҎK`DhuT=r(~}3+TrzǵYC!OKȪjy Zrh$5*LI(6{:1jecBcY3Qh.Q#.z?jX$9c %-H }rS!a#ޠC__q_\Fs5wucʼ>w]29jr Y7#`$WV7m0 rުWр P=hDŰ0Wѭzné {VR$iqV |O66lI0< ' k|U# n 暃kTdЍIM1QؕZa:N)x!6+ܩP:=LҬ.pqM1w"fŹ)vpU~!?|_GG`[v 7Bqe"iK+B>"7?aR5}#ϣr%% ?![zus7AnO焴ܬ)ux@C9o7̘m5#IWc|X9J"|O 5.| xwJ=ߤ3JGT5PDKkRkB$}zyP9? /y.vȹ UD:hڕ߆g؏>8%dS]uI"TNe `ђtT \{uf$!ZCXM?a>)^E_!u;j "=)`FLulg0 ؠzOŜ߆|r3!0k&)v^7 Xgf[ReH8n0 $d֖+gR,©2פI:cR*j)?4J>*vB|^]j7cl/GB"9E%4‚~p?{jU-gr |dIPҒ>|񦚔La`Vb ߲f69;\jlP?/O. RmETYhGԤ˭XI'C]w,^3\il\Gj;^`BiF[`4${/ 3R|QppA18;4rb+6z!0 VyXM 젚@s}P|[6p"6 >/}c2= iiiKӕ-XZp̰x[-;8'փkJPAɈi@>T#h],KѸ1n?-GK%̶^^e?/'5+TQ+摖gZպ5-x],:i$]VO@ޱR V8=Bt fk5k}fQ\8?&q=XA,0a%suV#0 `+ˢ1 mXX|?`ɮ8ʐ|Rh9mlGey'<".hwKvVKl(>:vojkW}f (o`Qu~/D]ac)z˯>VtOHD xN[*V}jWԉ:+=Wþ])S┓3J׌! !XrY @/ɕ@_l@pQx~|V#K.asRj,RA}&l)S%lEEw j|nm'F``;2jR6Iu'(Bͦ]W.5̗9ell1S;g<|qt>alf?MK@ﮆD”JWjd$PMҊ!F-3B3i!3 t& B`&~4O{kAzB޽7fU.ڜ4JCGlBJ*vzKQ$ЦG'ݟG0ap3SܘN5D%bDD[7ӱaV-Axtba~[DYP8S9XK9s9]2$3 H%wISWQm36i#89w?%bL6vipNwׇ/RUeyc,V2R {/=dӢW0S:S뎸%E )yb =CN,T!ޘ<Ur8 VBoKq^?W" mh|T1.3`{I)70iqYx (|XX"UX &=~rAw-XH ĎWp=0[rvݹJgr{_Lk._g|\Lji/} <49%Tˁw)%..(Uu8)hB!thU/-E55$+> r`:GWIzxLq JDZ\bLU~ǗQ')y=L}Kg4."s1q/%oFܧ0mAҀYZ$DLj25 }+IP3, P"x?!.c$Mb qzpp 1Qp(T:,:"i:9=a(2`P %0+6<Μx֡U4T!/GWu/p:6 Ty~|hg#k[`.s.E5WLj' Zb -IHM&k(Ǽ~`5B54+peŮIWe)j3Fe7fmJxw_g? f4e "?Ry;bw}En?zigf hfN-o4n#@  ~%X4Lש@X<Dy9VtmPK\hq?5Wjpt MnO|M/ylQ[P+XV &ؿ} S濄>̀vSb D !@C0FI.|ϖ(DyMk"9z tO3g 5ی¶[LekVL2iF6SȥhMQ IN? ׃P}%O$~f)?tut f.:9yȯ]QRTSnLQ.'q`Ŧ:#ߊaG'v$3~ *keJّ)3H y]1l;fՌ8e<2l]eO(. vx0gKQv@Gko#]kqߟKO1ޗ뭱\ }?}Wۗ_dN3ڲjl'rci2@n ɚUoQX_ Jd{BFG kZ7aab-V*1UQb{5a;<wR6NVTʶ1`5)69)(>/qC6-jbK0%a8 !Um^ė"t6.{7Vm K\4z+jfϰ nNlEhKm $'&s"Mm[R R% "tvr PڒL:O8KciQϽC9;fݓpD2<?/ˎݲNA~m. iNim,2^aFӀZڧ3XDjڿFEXh"A0fX]d7>S`:Jjck6\-aW׏#1/-<mY7v;%R+0w}.Y*gyiCglʦI @NOF }".^z*.n'kr5nҲs+R%WTnn\|֍!0 h^.a}z=cÛ.Rw̒F^VL::nM<* ]8Ws=)DcE(K~8oF( ̣LWhZR$Rw eu{VU](6 v8 0ȍ+`($s\ڱTQyx(uvB[,pAX(X#𦘤$p1Vguݦ7|# MDA7(lÖPce`* ,YԠqYzޭNh/K|s򉤭{W2^?GO$I3A$"SmDf)ҮZrП~ p $>+9$ur&wZs<VV>&gTjLT-}ؒY*kMC?wLH\%cQ*@%LycάK VtrVQ2ShE 쟮eM[$@jRDr՚z]7d?Q/\|9#W0MYG T51ϩ뭔ǖ&ؘlה a43,`u +gj&l1"I<} ړ4$['?VA`Ι"Z?6+tB4rEBɰP#8b]Wm4IBY"'N'2w盪{>ͳxmAnA3Tv AnEdU!ۀv.lH,$NZ;{XV.IO$ДX2zw m֣cGma6'<#ZثfEAw(Fmi%o3xL3 z׮zݽ ~uLW*t}`lLbZTnDLNYlf2N0=:V ̮x u>d0mhMPkn<&Bi\ U$Q:FqP[LC+_w|fyX REm.ܦףx[U Jh oߢ:y8ҠẸHO0([͋jd-R6U)FJ) /nu<\bTə t'ꚡ%A4;쭽OT~}2+V'~aL:'{aiAydcT>;Aj64Ô~`5( zW#`B)tj/5t(}VW]b|M-uz׮kΰ Y/ oU%Zov2]msK~ ~]~h%i?GYBV^Mش6BwdZk) ˒o!_~n" c#(ɔ/5BU9 9yO U!3"9Y s݇h"%MIjnRF~KQ4|$Y^q=|}R=YgMVӗݛ˺i>|J2~\AgE`~)W50p̾cs{ GV): u`UX1.9q-o1mbAYӮ  %հV!Ci(?t1Ń@b,_f] w ZQ5͏3> Lӝ=Fs%sHR/+j'{K?Ts80߂%K=`D52 o}k4}f_ s89MQev=DA@bBҙI SYfQ1<@EW`i2K]D|gi$ e4 `!ع! 5"g Ai*!d5uhj ۔rCKcx6TRRj"8h|DΩu/<'tK9kn*x d{A)PJea`{>܋e#K"b xj ΪdQ tL)rȒzX!}hvNj?ѻ)eykC;R'/'O1K+="0YDVz̀KCŸz*gFPZ-SL礢fbf^J64 {BX2b;"N"/ٯ.5oK] lbۚ-"kF2wSEp0My"x~{eC!@S._j[P~n:-Z`M(4S?6U8et ZAy |cHt_SkКҍݐ#8(*4f!׽WDHو:3B: 5V3 B!v)}%vaJ=ރ]񳥭Jl#| "" IP QHI )(T$"nyP) {-|ض2rEjjO$ Ԋ҂MlxF@ @K6=) w L%_Ny6e4ぅOˌu079jnޱ&pHg~j"A:~3{7+ھj$߳1Z-cNPR$ۿ6kűzu9,Eݵ"MMk5Ԛ:b##5/:?;ҽ\B( `iEQp6s11>.e /ƢdۼGeS~!%Ruˋ8+$x9ng -29k :B%Qzk*mGUm,ݢŶ@)lj6ySSZBH)jX*\1;y;͖]) íxpPA!C輎hfNu*U; ͧ܀*YY@@vpDOXȮx=xB r|So#uO9/ez5ˉb!y4Zn!kgҸA;8~ῤ&?j ~ImZB?*7"/"6hE6P~`DZcE1@K18˫ ~tj=Jp8?hb&ٶUS/@ʪ"t;innV-RN!jO=URtCB+k(@i@I}^Bi$tUHF&@z*^G˷KrN} RJ拸KV~Uv&axL6vkc5TV6IR$֒7$W{08 ؓ@2&ؖƹ7|oE/͂uw!ou8\{Wwsw<1=\kVdJa[)\]5?N@cz ^/.bԩܱP_{v}!b'Fa eL8LM@i/W0(dbQ : ʺk;eFG+8`M?RbRI;?6}l%IU$JH4˔`.câql4ӾI:ѷ_w^ yVT*d!`2!@F% EU= }+Im DV=>j/^y-5*k? 8R ^fk3\o^^Dp݈]0W}4Bl{QDa q?(.bfN0NJ;0E#%yUbS{[TXk%[Nn0&i:/.ۙ${њbr{.k;+ >ho|/;cǕxZI=m}K$MJ'@*~=G(KzD][B÷lAa+JE!pQRp̗;nt΄ f'u_sj ud, Apwt *2嵋 D(V`D*w2I/*Ɩ"ho98(۝>]&T[xٺ1ND~7KzK*9a]of[6h,n-1yI[=OSAA>}G[iUjIiIך-l0\-S⿗4xNac" aUsD;tx܆td81M$DƭXdivFy΁)]/=3h1dC ?stV,i̟8.0qp:$Ef߭ O Qe~ Z\WM࠽km4X)904~N}[Ur:BHmD~v,3oۅ9m0Jy2(Y)(OMKXWtɩ>\ iػCu1kaaf6I_~D,6G]Mm8VJѾªK-m"4>rTp k3]f?zM*XY< ,kPBMԜhWŢ Brk,[Z+kjoR%7L4n/y$j-}V_?rlypl=eWAct_N;v-NѐJ4TLr2r[?4A0墉"_p_=HLŷW_Ըg+H8kUNu{;Bkxhvz\`v fAt!>g)tezRC&6Ȉ+SfĤX~lsF9YsCzHH H&*M@U-` fw8NRۑO9N Ҫ1|05yF\Sn?1h'sVHƻSBH F4D+3& ͎T|]2%Ћg  m\d;4+V+ mvL[:扳QRlu8Mpݧ9`~:݃$1ogWB9Mm/=R]?RW_L5qJL:KHLۚ_Or` Rx4=`źr1>.X{'ū3ۮ=/sz43x_#>^B($SLT)*sb`: j[(h_!]9O$d`aN^KdEםVj&܁4`'p@sꡑm}͖glJCges0T8%h T߉=vATn1<URZ6ԟq{Z7S6(j }rMYd;2a+ƒ)%mSf!-E{ZL8uˮKXYAJoN ,Mß/EZ}T5dKZBDum'w+1r8QgR`ryc9%\3Ki|QZ*ܾW|{mk/j*`nI9@Oэ)>a!!w[uXţM\lܴiR~iittg@gN:q0<{IbNr(kGR>=4QH:q݅3/ ^8>e 7 v̛9Mu8J'V4;!d$]#߳{rڞɥ (1SzpI ]vD`Za6;O ].>̡mN[k{[_K@MIǧ=Biso E>[)~5tIS1 mkGn5iȵm.>FNuUjG@QhPoDdN_-]0RA]LMkBO[\Ƭw gfflxn[^%pD8wKy_^;<&J{! oc "Xg<;Pp`ĔZGjSlīJS[j#d~+Im9_#ZY;f`*kq2?Ǖ:.F W4e`9xd e4c\0 S3Rc8)<J qL+sx;Pe,Ţ7dMCZ'VZ'ZWXnb9<pux-7ŊDWGg[/=Ԩ[L=ƷqgP&ɟBH2m iPʪ,.||H#r U`NX3أ0a)`3ssq UR,b$c.*L Xbi加jN[' `PV|7C;#~A\7%uɻBΌQ_>Ж-{b睂y:d_,S]4 .x%nO][釵![gI|k()M@$KB-7졅?Oۍt 7DeCzˢYdcS$8;Z DD[o ~4D S6iVF$g_pJΐ^={*kNI,n"k7O#iG)ġ3p 7LLr R[]?;zm!lA)a@[׿-l?SgB'* ]ȳJ?yK#3-5j6pqsيJEL%fn;x&vdVck v؉-cvV/X2ԽlDRO:D뛦!auL~r71uQÖ<@EJn(~fי: s".U>='y`Tc .0OQOFt!DP1xŸtJM ;} uQj5ۡҐg G^nF9h͇k)o|:,&&ʰ"sG3LYMDz ^/g]K(D \%@_-= "G]מPprvIs:ܪ OEM*eqzYB/c@IGuS?3Ike1Ğ͈jr2GJ3$7 \? 8RP=L ]X,6[i8O\V$fȆoS5Onn-T8JC%"drmL lEQ#q7Ud3tcRĵ*%.fXP8Bw9SO&R׽AG}lfpyʾc NwcRKK"HO8PG\?d~K'ڭq=,4GS5{tL c>n6xhs3VoU58[aF[U_c Pdm̆g&5x p5 ;tGwE| ' p{ De?ډ&2옪fF?^{,VM K>9!2? ¿Fpr.6]3|fPR4a&&bB?5G+;e2iI~cJ;aH9rn;<*| ߋ9%.uFB0]8q8KQ0!aAvP}w3}T.᫺eKwi'FSzwa3㿉;Xz!' oG]\DZS_{CPyW9SV?.D~Bgq3kr@J7bċsG0xarmLy~?Ki.t, ̚v¢Y. ?%^@Ȩ?K'l lc>H-#Q;= 7ĆvUu T(8Wb-Hҭ-A`pl 5gՇd(Q++љ!G>n˧tSg4U,Z\XϒQ3\Ă1Z6q2')frŕMk6o5ݏI2rW-4#%20 =N) ՚ZLFU]k'|*Ou>U$uVӗ=ԗg ĉ^:ܡw906T3rj}8 ^.Sx`M!/zmw'r-1KmqW1k|-^0r{G\|ś24B#͑ TyJD&LFuDR;^ L?_];X#>jס'O"PÅxqBb4UAve]Bu턞.e]nƮu7#&X@ӄ ;YqOO%XHsRoΩ15U2S.s̪E! qD7sY*k5!m/JUuiQ CQSm6oܦUfeGW.92ą!%M#xǟ \^$5tX Z,.Ř,Rs0LSP !S>..ӳTѳdyصg)?+%`7U"in1ڤvEg&KxNt.>k2r\Q&1_( ;?7uuh4?:]o\y3eAժ30.aQ7.0+"h\*8ŀOkMt5@h[uWc벩iuWDfatX& sCy|g13Ic&^/;cx%wLm9:Sl0$H7Uu5/_1,.՗,IpdMrnJk {0'?reY h9ibl;ڹ81׼A\ĭ d'pm#1`xG0uvw~ `V?}@B *Կĺ7M3a9rZ[p#B腧+Gрqc*+EdUŪgHS]W\runJ0O5k 8`pv T`O2;Ռ޹Z|r gO{rF追n% PXon}%2Z' rdo9|D3)ebhj+T2Ttlr,< Ӡ7YuF`K[#q.7d; z-nIE·,U7=Ž)4jQTds.={ ' 15W>R)KSAeA[LLi[k!/f"g^^42$ӡQu(}=dP:a4`EUU'@Ct#tW_G_Il:ܥ@ !H1\dRQպj1)}h=FbiE,as]̅3!+|͝Os̉!|Lmi2]:m>Xv?0%<܉b\g}zazμ+FOq+DG"S6Ƶxl0ZG7U>Җhٹ ~",ma4.v"hrZX)E0 eW6°='.76[RbvPly@G=BTm^#vrJƕ+"g:s"0<Ʀ 3( _IhND}ǯ\6JڤnB`eb `CrY4ߍC$?Ys/.n;Ţ6q{M$4v\x݇jlx/&nj,x,G'> dr3?AV];G")Ľm݄!»|U$h8yz _qLޞI1Cy3Jf5 7XLP42iWz=K.XJZk_X X!]FlGBsơXDLx0.T<0[`L zWjv;IR=*3YY`=ؚwm+YTʻkKJ=P%p8^Nî+l!leߦxZ-et@d\٩Llf_^*@$`ո}A6mԔ3uS*'Y٭v ̝ ^Ӗ˙aGiʀ`$Ff1V `y}U_[Eӕ,daK; @wyvR(,y|&G6KְI؎Pn/RƇ$"D-Yg1Wҭxbp?~SV⃱xuL9.6It<:'$Kx)@гn\^qh*0'ܮHnݦpTu![*gcE g' S@/LjI@ )A]KAc:9"+go>}isS@jBg{Z!DiGcMXFg])jGWSbjN e3ʠ4>4>d;6h%?}K/ /saB|d}3J\dDh2Qi;Dz+ɥ/=uν=؄wmx 9&o¹g(Cj?p삊oث1y#We٤%d  IT >g_NG7ʖik(%V[z D]%rF#$-UdMH=~lPfneӸZAPrS~ z$V'eP/c}6v'f.VWv94^ E`B+.ޟDE\stsTQnOEAZ``ara0q`.oKc,P/maը&9z@,6[TgI%eCzZ!1d`\=5 ̈́<^9uQ;+cBB娺N Bʏ'>'a3TR™V9^JǙܫtGy/*(h8FQ֢pJy EL"~aʗIݛsP0^Vfx7$*twwvR*04܏~-}火i9KSܛ +o}i_/a`E&;J!V9SP PQQKv}AA)i~(Z@UBsrr7%F ؛\7Tj~D>}CI5&nN:DӵJ@'̚yK;&OdȦktI_^wfR,BSk6 pCL$.1gGaUu3U0Oq~?@N{~? B*~!kz2Yrс( 0z${d6.w %|$/^<匒+~ e?X0 ρAջQl )I 7fG_kCw2ݎr3z1fJIG:%j"p_%s6 }}-ηB5YH;Dͯȗ #N:/[W4,lVC$x`Sϋhϑ mOp}u3,ТkcvX\`Jc17E .Fd}XS^9A|>) F.?g%#Ugi[>9nWVmӰlA 3iW`q̲6Ov 09(/ '\*o7`el.CGea0o l߅ I߯k0$7y.8)<)qKW1AQ:LGj=3:B):דp \M=+~ZMJ7#'GKZ=jŽw{d7y~z] wm~2mGy/!5G י_Iy-銔0N(cP(!=;B ;qiAku:iqjL)lav%4]~NM]˿FE-U7mWǒiάL>[o-.;Jk&Q[?K"4FwtVEh&!0WN$spߨNɖJzl{Қ4#m!nQՏ?\<'@G$ߚWn9iP N,9 X6X:8B @6rzk`1vs +^ y:̡,o o1\KjKIڼY?EAcOP UGmiŤkUTm扡9M~BRQ |tFL6'Iϻ<#[lGY[ ~)/f9 cIYW)uө@eF뵒3~ a_ {#H1M b۞ޝi/,I"Vs v_$V !$Ak_ux{70A< ∑DZn ((|b Rz*%ac>ָ%I#qbdc?äFiʼnf,ts)@>@pU۷SHclَ2 䜫>*`$&ΆTwzן'XX6:`QAĕ̠3\{ oEV.t*l VP68zv5YH3WtUS#.HHn5S0u ؛ޥ9D K[Ol"?I) ԓKՖ d2SKlHI_ѭqOfN43'p}˰׳m%|ԯDAA3?Lʴ|0ѽ.^^kk S?x/]W}o,]HcL_"jp؋=Ey#eE zl*_P*!TQoP7YOtAlVG ҭUyO֒Xɱ%}_J&"b!# ~gWcsڡRP^Bqҝ$vX(Nn h:T|p$C)Qj7<6XFl7 IJmdD4n7LMS5cȿ9KS*9a5[Ŋ-M0.˳uw&Lp`wfaoCOADoĥ5 U622W+b/FJ6y}a-O&t7_1/+_.i %ہ<+߮ :I%P\ܳ:#B Ć{ZԠWzhnĔ^[cbHh CoW"١Olk *M#(? 826hI۲tNU- 7T3BrHl"Wy(DM^[6F_hM9)_QUu{ה^>Ǒ=ZiDjhX:8@4.~ צ(ydL aqG:KI0 ;v }ML7WL!˶A>E;ȖyZc!x=S]7RᤞWALp-l! F|(WsW׏*FOvTc"( =Kd0G[o z#j{㪥;h-@ld@g%zG#:*J'- 430Zex9T&wK#"@U0UZ. G`JBU"G?z%la3%ϳYbwOȖiCӲ$6‘H 0 qœvRs2\?L,yHLG41#=0-Uf%g":⺻0m=cز`gE`gШKY/ })(N/8L]hU˶=%XJ$iݔUOƲ^T_f.G8,u )FMѣY? !FDS C"^Ko,WNe&fZGYصQimpeN$FZpmI)ZChvN 73&, MPPnDTdY 0ƣ J5lꔜ}2Pgѕ B7DُC2ֹb>;ZeG`hN3 YoJ;mּޝ{aXe]u4QQV\AHav H-8xUjJ'BY2,,jX.8%=6\+өv X:~zJCύ2rC?sVnJqgrv%5qcf q_@o͏W?BaXp'̷qLQQio=#Z]35Tȕ\w!߅~)葵l$iЁH! h KI*p \/ќ7#VQ=K(YO,0/>@YfNI?>&~H[-/1Mb=w{.\H(셽0':嬵?̐ 7~H 3nv`<aWa37ߏwKT;2hjARɹx^`{o2僞k! 9$`'2j {Byh Zo)-*:h*KV^a g3-N/8W]{yDZʥ.ld殎j.K hMMx7H+ϑַ뵸 *]N@ypm(Z5jE?OD~Ö~UyNÛX?tgsb5"JE|59_$63gpG J&Zq}~/U@!`EV)_oq8G%~%yf8՝9ҍrс>}yÑ8E>=X5Y|mifIҝnpQQHbicyZcM~!(0LGvמuDSBHҠi+/>1M"rp֜ Ȗ@\y+FgS準ToO劉j7L#h߼l4pl< MA0:izI5.khD5uPȕ `Ě8: v-xk).Pήennb*RuY3rb{C#{<n:j9@¯1Esۮ:c"6.@uCw |TWJi4B!XSׂYTpgWn|_AIvErBgTwR Z֔w^9J%""!ٰL>v ~3˟Kxc<J$v l6ž5]$q if.RHXl'Pjb&hqlyX VI sps : Tp, -'% !N9N{z%!uJ1="3xe:6 x"* M@pDI dM&XLa+e=YSȋ.b1A-4"q\ CZdI02p5hœ37&SjO$/:|R qIkR+ C($:|*E 6tpDUE]Jq!/\P6Kz!*djGk5$NG.f>٣]Juؓ(BMr7l10D>GzLP&X !Wǩ.fNPSuɃbkjezc+,?-m?W a7fu^/_- C]!}Pf l0CQRor`4=L†^KBn&qڦDx>Zb@}.'۩$#0Ln%SclyHqAEAñ/_"17kIy-&8ƫUiD=0VkSHuvkuG=Ek<դk|!t\ (Y7~]lA*z%\x.5UuIL‡w!Oîy!$k/A"nphV*+>IW>FwyŔQVuYYx,O&ae$@޷*HWIwz+"V1 zߦ!3l`wP/)QA-q65RvwƃfANUɠO3Cŷ<*!^S^MnmQ:u"-.w*G&Hb44\.[LdP~sԓZ['(Ou~GvJ~0ׯC_3siCɍ`Y,PF'GW_m{~R]ʦF7JM_]SN l>=,'(7nF:g|YXPkJ+'[aVTa~(?z@R;KKv K? Usֹk![`Յ PsKon\Kؽ:ZgxGi\ Oر k斸CZfB$~R$EaVl?8}RA\o+@#*_k!ǭkS ]6bf]ɐ@.X\JBWaa= J8nCeg CèsΚRi4\贇c}E_HBg4̽89I:U|^V6xvTd\mG#6hge# zXq@pq刣BMQzi=يFԘf ZIG)/%ےobޝP{\g|N2Q.WÂ+1yɤX}:^**ܬb=+T"YS2Z~P.g~2JˇXlW3AI")݁+EyiMNraC)q8x̌.Blo3351%,'{)sԵNsNޠ=0D]d01 ?:yB./'fw sНk!Z+XA4Y݌Ps}C9rISO [1)6T<{Urm_eA ЗpވX?!#MjxQ4J`>G6V9ÿxτcr\OZ=7}?$2xE6\<⇻IUb@f!ڍR-DqP6Xq1Lc4U?%hC)CءGDii- (2آs% «IFC\QzX_n,\P)^Q @%oB;_j0 ؑj)?"fz{\0~LPl8%ԂEn ԍisypK[Ps*;6H!٣a=)F%6%tTEl8wٛqo TufՂ~湨pM- Zykqă:$9;xHGR>Ÿ>{L+5R2ZN./kA4D.Dsgzog/ț8:nv4: 3?|̐L~L. ؤMW+K(L~gMEY*+m9͡$0}kߵ4,vη@B`S.O>Zk,hM!]Cj.8y:*6}HAH}nL7p5N<#qHku\V/^~,(BKOԥ$sySBjx3q&DMMue澗ƢrtTJ}j0EL]i7Q[/8>t\>P=0&(H L]tbKsb›8%òb{[ÞL]HgY MŅ}i&U#G:7A;iFoZSumf[q۳LNVCH+UԆh(ʫ݅0L[|nhFmPX:Tsho:HĜ'mGWM0 f]  60Xv]կȫja'cIW. /š>QD%'ۘN;jCBfЩ{TcWpء3C\֢ZΤx{'Hn">_t=Ot4^~>9e8 T%:@JE Τ;F & !vI=Н-!!ydI+cXO7-$IW&)vi25N[lg!. a#nGJ3NrAFa(iaHʅobFEP&^@ڿDeDkQT6O.]?L/u/-Jī)|]~y`M:1N);бF&˻+[5 yG@rB[ _Ճ1BuxafeHp}ag nef7 Mh=s¿Rfi\܂zYtR \ !c7Xn_7{aIݗ'<~.\)mNgh#1 2 &5@5-.9 0zPl߷侀^ϣm }5&*qi,mmpXAlaaڌu'1=r~6cu!wy3Ht?rRM# H sᚔp: Xv7"K9)lxdo[ZzT$':ebY[}P)w,ꛠ6NY]7J4e> Yvkըf#uD^Wc͉x$THVwZ =~u-7)^Q)zcۈ\rrad蓤lA \N[Q.lNpĈ6 D09(GI"o"m!ZiW4%κrP*T'Ti+ @WZӈUo6Ď$BNRPjax\_Es8A):/ĭ27Vf؝3B4k{dn dCMkkVnQZ|__-ZԮ kR n' .6(6ɎHØ-|ꭥ6,5ͼI2,eD^Ÿ˪jq2]C$91oiP,\1\ֳw'=/s4|mBvqd; e۪[g֭ܤa-kEcIUH}W9:c٢.|{i.I"7'0AE%Ly:w{1NMY\*mGD84~3$qQK]s$hZUyy@>Zq}:+.,G7Ip~EL+/ 8|m!3Xc5|a;2Ow\EUi(bzBSMS<('KT͡@/ #5eds^slԐ=}9@#IzfڠJ~1dhWI}:R;1/5N6"$1H!efk"U[6h3LWM[Źn-0jbc<3/V= ttAOBl}V eőcǐ":OX?W6&ݦ3z!XOtnH@Kšk,ޮ^ J:!ӋSm 80C y`:ضg.pimc,fݥ_:H[POMd> &,CEC 2`79zdŚn0!:GSd0w@v})0%mp 3vpB%pkjך]8*_YG רERH ^rJWN|rl|V*sҼ~Kk*.; Zi'&Y>aQjvӃZZ$ܰʯv@@7A 5p ĸp9(hcIo9dRІ~9^3V]bOTrޗmZnJNO86Kp=4r  V CEbl dVȵ2N˙VxF\L㵭ӎM>ZEhVܕ?NcǦ }lfGwP*>' UP@IGUa<"C?>5ơAٰ5R>HiKCbo]=zHZIUJ<:)Q܋F&Z<'pXYvԺxHv^3*jMt[Ke{O2½F0@춉<3Q1g4΃{cTx3·@qI7-'4q2mQcX`7>u3 e~F:w:yrD%&a*Dz ey]2% %Gl>s7:yhxq2x@ ;yqGʹԌ'6 1M:%ɜҐ*MJ*Up\]fN}.8K$ SHgk 7@3y"~U(ĂE_Bo=8Ht*!tԱ=K[;o]XaŵrOIyhC.lⶎ#E?\tˑ}'?LXjXð)s-S%=w7l" p%2.HOps'uωzu[Oe$m^Dz4x(*'j'DuC Fs6DFK;DunoCdlJ/(]`v%Q%Q&ldt^1D0϶-(&"f;vQ9E%s 3}<,DjV rS-БӾ$[-lu 39ƳS8Ú_Vmpmd7[JzV|_M52m+ja2_T>-ZS~K}ASZ $Ƴf<s>G7O*^hgp!&̱1-tQ̓ &ws4; Ϲ% bID#ILWuק Z)dJ$  qeF0ˌVK$ϻqG%gnkuZPw \Q&1&9Pi2ؖm|j6Kze 3^Hf+UKmp:L߫ɣ<<^9(~vA*TsrLN~ rbI s$8skHE]o 8]Yb4 ŷɜY tc'Ut,T[!/N{fPg-um h5OD8cnC`}>(3sq%;lWiq.ˍEoּ$ȷAMgIeV*k ̪UeI(%Xҥx8R91j;eK,'Y#ّUDŝ%V9nb^j5#O0jn,Ȃ<"E$3+S98Ix_ŋvIPUDGbET_V5NO6yZɺ2[_\ sA\nCMU/@`#Uf}mGlE* XJfK рƎ0sd}ox V>(14%8 &LsƸ]y^qyӱ˴.O9G ?@ISpxW4H3 aME<6$L4jB,u,kN̫f(V3!,&M Es(`i7 B3aTq s=S6W?>Tac.//|ކ.A%=+w}Gl]ş{7pސCJ,o!Ud 명۔Qɵ$Qšd>+lpX/[@0{n-Fƴv ^gϓw *RF+5߄訢= ZVX)ke7S,qT( ϣ7e O쉂+}Ű߁e-sμ؍%VnI߶O„LN!۞_w_' 8ͺ#/+^{$Q = _Hǧ K(/0DݾlLXj>#)Ή5&C!`e[ws̔  $'-]A [RH9}0?e.gӔ5YVo& ^ z1ߡiKc}(;`'U$oHzF=dK{=ҺVQ=rCX!`@#ujû.pvuZ$im1.q-lx2)!pHȾރ-, =qm逓m ˤ8q10AP|a`*lfH[|?:,ws4䡭R0 `5؋wcn_'*?7z0 {ePl 2ҥs0NܯNiZr3r%uS^@].),2k.bG =CNnv\tT]'|]3>[L)ema28s|[6IơW9RZv/ q=c$;i${7W (\-7ry%i 7dz{$!5?0%)_`׀뺃ffwtil(ջgX+  ]\8~2[]SS<#P'-B'+8՟?ָ?嶈 ̆)^7ThPNtFRUMg:I[Y.Y+g1YC /|-2#,~g*q`> ]vi?X95$v}Y'XDdG֡crj=׊qN/$v Cƭ/XބBt3xSC`'7ACJ؛ˑ~ 9 dW<>̒@gi]wI3c֟ʯtq wfSߎdLUթ7]/]NZH^voIе˽B c O]|jef7ߑ[~~KcdiՈW|Aqm6JmW3\-(`L;V8i$ĥq_0՚L؂#iV_Fۇz&_T _0=A2&36nM(0H/Eq)3OFWC$E{'̘j y9^D'q#;#iP+o;@eځE_>47{ͰtƯ -]@kE+ qN1oYh&@ [2*AE!ġ(Ɍ_<~N}X4П+iܷdE8~V&EyFiʉZ=vܲ.MsJ4@I!8S߰n d2\ Zڿ3fg@s`|qWx , xX|[nTs:gV-%iծ=?~ 2@cV5M.=:hC̯<$T2Eц݅a:%qv`#faS^DGJSK Ma=I&;E9p#KT itsrqg7c$6A#&܅{ {ϼωtsݲ')<-^K|{I)u91I416AǕ˄_ E y5hE;hK?оUYY"/;ZŌRz֭+/}؏$ծ6Z75I8kKؐ+^ [lv KG:̥M/b1B bE^tc<%tM-s؉\nO[`?QLd,_JvG69jU+T Sl6(}c0H쁾ڦ=*@8uz+ ɞE^6-)ȷR9I@II00N<-ft=jʶs.ΩR6p"kIi?c<S_ѡ3,X j4zv 3HZĦP[l_j9XaE 0B\N1gx F$jt B%!/yjJO$I^C 7.n%<ӫ !R/a3IkSj|V6vT35/ JW{2?xVqj' j/_ta0+LU\@1FtGGpmcU5~"B[]ǔ.J.A!GX`{b*n?0CRJ w~r,GWyk( G&E…G_7 t3S,J=5b9 $tZiPͼCJ3_&.=ta&YX֛S|fWw|kO\ 8o(N/(z G v1L샛]^)KĦFOQ0ڂ4JMF#ޕp'tmƢW>R9[]wo;K^ݝͦ+/ؠEhݶ 4h$,먮9tp@cݰQf"+5$ЯNrH=B~CuF5FdEglcss*CUTe%tu3o!@3)O̓l ;xʁt `S' S_%BDhi\kHVx}]JY~ T!z]SE0`*rgsqrY|>M^$Uޛmjf  R߇EMj5Ů /Rm=oN;OۢR*N2a^+Rl!1e$"QDKa9q{'TMeik&sZCĠNpJ='|ɢħOUȷ3w:̣Z+5Aqq~+GQjUxUtq6c!Ļ33?0n{Z}Hݷ|>V˭{ďbjXvI#{`?O12PIr|k 3l\=k#5{a`BP9еYh$nLˊ.1 \XԺ(ov gꐮ0UI HQbOB2[pN ^i5G+j`dkQ!D/(# $9k @ jQS)/ vϩKb\{X0$>uJC|-p`F"Zwr?a׵x `q?)t^sB/@1p-wDžǴ*YH9Ļy6\.=V> c !_I- MzKXPRʮ]L 5W¡LحNIlUn@gnEեƞa9LƩsY-DQޞY}pn/Պ{՛["!|B5VMXk_:?er%c q(q0ٞ@[6Õ<1E  i2Ti\)W ŭ We+']?N;NMRה4@({3; c&4˰1?E8g NxW'*t]96pEL4ݫG'+\m`?E9:s]C][?].ds~`\Š`ڙWR6bqLBUEAYɳс-9 #v#Hw̟5V& W絈T N;XXv- Kבe>r`3Y%uĄSE9Aʧٜ.>L3Z@H՚Rr}KTj` Z,*鬦_~2܈?6,];76F tVLy$?#S-^m(Cg=ztfM!2":J`#jECBsX3x5TFEZT5اmM:M~>Z`Pm@"C;'c,<3R)_ĝ[y~7a^j( 8=i} ~]BG5}׍/~>Y|& 3csH+'Z5n\2t[7u90EWKz7bim\n>|v4Ҵ 1HBPcݨDB)v;s޲LĔn&^s}'>B "6J$j@p<̝vk{`_/'$S΅K34V});|ANŠ+Q_< CvCwTh1МjJ}~y=JG#6nTGa%F9:fuOvtӑoy LGw>5Y}5uQa4;cKZUPS##`~?rv2-א-7Ij Q_>GE|wՙ/><.O6~U"D_'gtd:mlԄ`mNbUk(U LGœ9j ܹ2s.W(J&Te.W#s&m~SWaLaHCI[FzLPe:iHb~s&V4@ys/0e.1m ZEDs5P6IO 2'q(I`} UtѳBQ=s%g]?I -Kiܪ>GX&LxG?T!^nD~yt}; wg bAU5nu ZjÕkhJ5[H"gI,7,!-H( 1I24:J}5>u (E1XBh (TKJ g;tJYO$Oțr{E҈;O}vSچMpJވ@oq ԊXqGOڔ;_7Mów:g!IËqj{{i^^mU-њ;*y"Qܟq#v ߍS 8Nۉ̬1f9J {fi+d2y ]%=eHJ,=KlZ[!,J_4ij"ӌ.vTvf_pL:H@E|QQQSK!kQl2^ ,p7-w4f_ Cqdv#=S&jU6FT{_ʯ,ZSf`hE1!(/mY~4$.t8͋J(oMũVH 4EB&-\M%򫄜wˬITE Ǖqr[0hfx=t!$;?ɴ/K?ȝ0' Skn˼[]Z3b/[u_'%PSKWsQѝA#TGXku*SqJCA_rkibg=N@Yat-1C6T헄* o:Rv^ko\ _ᑪ(>Ѻ{ _ɬPCKkb9FyuyE6Wɳ#C= cAKE'|&DGLI0 -cMZ$Mi0ꦈ 6k㵷L6ӑQ"3InuhÕY` xp6:GHzL]vA۰+ηC*I;I ]rKE*Me4̚xD\U"iWbWp몿z3gڽJWje>Hlh󩶗nwm'SF: EoPτEمZɽyMPnBH!7lO!2Կ}-'zcNu#_$ny gi~#~cy N`a{hR/PdYwj)@n1nZ'E~ 7ÁbtMŨʫ/KX0fO%paux}t&eXv%DI _u>TI$H{I6D{uzߗ76tmgK^=:Α5{7JRP 98zh(9_{hD֢RCwR4T*h/Zʽfn<~t9v ;ѲHjT}% sFM6oH|軔~[R"`eENY/tX^H AXyE 6G CLN[Pl/ı]PC궅Rw))Đw ==BTK}%5Tsutxx¦,ؿ.t(}q f'E* j# )J 3Ok9Nܖ"S r|wC҄љ$ ik,^?L[PlK(y(_I~ywQ}][LTP8LuZ&5\jƊ |zodQMl8>!YL0׻I]7gmH&[a] ^n*ͲOUWςasByv:MԝJ\,Dg|Y8Yaojri#{sNvޠ&}7k!>H(bjkyuQyKsCЊ =/p˽g%PDA;yñ{8]wu.}}djyiʫu&,vaQ@BSAJ퓙XtrsɮZ,f)ɷ|B)uɴ!ڭl ".ڨ~ z.W*)x@{lƺW5 : ȡfctWt^-OA -1 "|Y6ҧP>`)Ze2 Lhk(Aꞩ=- .c'0jF"J4d#陳=MCVR1S熆?<3:7ā[s~LNƽ\?0K/r_zޞS]dut1:2FAsIp$%rCRtJ« G7$^h1 Daa/S{}ApFM:6"Sw )=| Ob}b+ RQ^@`_1 fpvH}/('p]5I. gϥ!=-6THeh 5RG9w͏6[_{nоݮA"/4x|}beQ&V`9K~J~0gJf^R󜑼8?OL"ЉlkWc;@N5BCTɨT XG -_=bSܘlٟe=cPqXe {'S$NGs썀o528Ng?g4; pwER_J>39Ͱ/%6{0tF |22)U3fkjɍ.eTU 27(2V5T.}>V2G3ww QX֍pւqIZ* |^&Iv@ ֗W{ƻaD0!v`a#TT5W).nEK!DO( C~0TK`rX5IYLi%\vF_Lo©SRڀ{S#"?XJƁu4)ֵ? /CLyͯ4 TލbxPgKls2`¦ʔHU;Ut!Jn_t>lœh~G} aAtID?Xl&tW(Ei>u 3Ph5/sD^T)dԜc/7h!cCMkbdBm=> B+dV^lDŽK ={4JaC;%Ypzt  $H5=>/'.$@*Tm)e&fgS7d;u3aֳ'VA'H %IrY\RԢcfݧ̋4:_Oqw4,w#UB{UU O ~E~GZmG|Nt3&~t㕅xG7*)iL5A+k[ \︪M [R/R@sL/`&;8k'pU0Ġ3Z=mv&-jS*ǐ%$%|2Q2 E~~T hܶ\+2J\}7DJ a|Wch۝iDlٌ5TB4QEOV!ϑٹ\/=zߛl p6r'5t{=,$jkte/|@,ZfU?YDU3;ܯYٷu8Sr\"3MY/MBc+KO Yi qnG6<k/p|ˮ3筷RGvD{>$(;bѼ6B$ǟ=fPR@6Br?&z(dgfR t5虉1Z8̗#U*l}i' P ƛok33;^/y%c_ɰ@5Ϲxzc[7=ꩫ-\eggw3v`b e0[MdFV=}{.k憮^[k!|/R^+t)ISI+qDzvخb˥+nQpJ Y6;ݻPn꼚츳8NʧxQ~@|56i] ;9X1zD;-= <)U4u=2`k;5kIA>(S`e| 㲏P sTqn< K}M.PMޅsU}Kv‹;5?Ϻ"lې6q-%%6|dfb)Ax#f$ 1fgXNu+.uJ~$RtEXfC9 E\疚@DMeM`'++3tW=y=՞G,4܏qXB@O7itˉd&aL:EZyҦ=< saB?[XMS s1H1PqwӖEt4 ϢŸ 2%'}ˏJwm F;̕w징4+uC ք~>-m]Iu? /6'J>{iǨb(CuM>2% {lz ˕ãJ1lC0S\!&-W?}?E/1ؙ:n4ϑ(T#701lX ~2=3ƁAٝ]-PO0\]ް^<ᘭJ:CSKlx|A> rkJ˧T%y#rE]Xe͜aO^rlu37P]ڥENgŔ\B0Ծ~p '(/BԮ Z\uR@9Š? !Px)ch9>L8PoB ~:O#4 :R@,mA+-YE$~,րT/#AS1`-͕DŒѬ']kցb_J}_Zv9)]mHb.ʥ)&(V6~>hig@JNO$$lpg=r rь3XWhz\eTJ{ P`@Nly;d]g\fyUYLQ^(yB<ʑ(}3LH(LA! K60 9% |c4{ٸ;Sr#'o2RZXFFdsl>6;X F2?KMg-iU׺{䟫%[e$l*xt.9-/d~M8$y$.;'B. J[|Oo?]*XFV~ "?K/8$䮄3ѯ0UFpFe0Fe?DLn7E,-g ڈsƕfn]h< }q9-yϖ1K4sX=_td㈰GђBZ."+q~ؾԇaC2]L ȊI^4wGٜ}]0 Jos|d8 |pMRJN/pQr#q2FW}1IZ2GS&oeUfmyV cLItʠgcHl\n !gf̀^GWin>gØtݬNr=x[Npced/)nόQOLϛR7E `Օ["k7 ixNÁ !U )9qCt \5 cKP-ilS\,H 7]/+2 bٟ=v9`})Jh-fŢ삒_?Mq(w0yL~!D9?XWd.LDm{_;\܃w,gFޗ&D1ex+JW ј_JIw #ԭ1fNETN*D~nOq ̷49YG7G_3MA-7_/)z;K-`~=V``|+-4%EmobH̄xyNtj=u 3Ns!y6oegZ.Oؿ"҄8쪋RGngd޳yUǯCyӠϛ0_#f/¦{)g)gy(QHbЕ!+z$;ٿ< t@s_%x]Ϧ[?wcs 8e7Lk/-$qt~GfJ Ν(}!i8~>ϸ9 so8&'%^߾)KH댌EmfL%p=I5-Ql iNyF!yd1(PO$\Ge4U5i+d8Hj\‡3+guȔu^̦VģƗq?H}.a<ȇN*F }OH %.ֆcɜ 2N :1Hfs+ RwmBek2#ш(01,dH$ıC~)%~wCrX^ǥ\BWwܤ+,ҳ וoĚ$GsN;G{Ly{K`x$a:O`a.vj L,b/ohu-٢4 ߠk7A^c⛣lc̨8^G>wWW۠.oc~%6$"2LSFܨ{t0"$qg;~aA6OR*ҡƩ*7=1QacڪW]o&.آ$ƻEKdo)2w/2 !1Hn5t f=ao8&LvsɋT]ak#;F`PA\, =l/I=;!!Y|?'k[jn!d9HkpT8'k~=xT#AI{SWJ@Ag૖4UnoTa< [ʠf[pxh$/R\b:8؛5ZݱW=z1jc!W[Tuo01y<0Vw*W`7ר72"n/ dhϚ6BÃw;ȱ ~bP޸fUPKLubFt1EzV|Sb>ΰ㨁0%PL{id56iz `/.9Ny ׳V(=OzesM\ۿoYaс.G)ލ1?qUp辋ұEj 8%/I-[{4"r7P[ &փk7Sj Rymuss^P~Ks4 UIs_[sd! ,!3ihqz д:o&m$" c)%58q|f+nx'mP1=A"!V{/I/eB[.MG-bYK 1~;HPO|~ܕ{UBN|" VF+pH=^M{X)QS(Rvowme $awSÉPݒQZOGo="ʋbTpmlݖ6&)Tt =ޗeo Y9z~b`w/ϳY1?h J(_RtY^o1'cIQn]M H SĪ(_?TohOyX$h:e 5y"5~S0 AݜJ睃{vz±KvfZr+ה+M H~ CX:W~%Mb,u逰$0δ,e=gK:!'7cL*rluGIӿowFFr/J?؁"ǥ#KaWQd$xu1* 9AwH7'&[ E67;"v6`2|lПlG {Ynh<*^-#g"非/aSLZ8}V)Uq8?WC\#e/)$/|o$~NeQym9,eze_b{ iʱ8%f a ś ̸%R5vg+ r=u\rxD!NoM?Fև#,3RDA⣸BQͺ:'t|vlXW$4D=ެM<)쥉9is\ ɦ76|. U AI Їqx.8s܉΁{f#^y,0. !; $Dztꔸ4a%;mTN2ԝw8E7)pLO y&<ҕRZ{Ap睊mC_̤Q*oԜMսUUV3'PY r@BM_cEK ̓d BbŒ%''h)aJ4iM3 u46$@%1v(&Թ.mwҕޞ]*tAĔO ḥZ=M1\>驰ՂU66"!h+vq=Zjg~eXI% ]M:*epycCV͈=V7@J3e<`_oX5VlKg1p94ُ>caW;z ͑`ay{n}2C5ùw{6P;/#&fV.4ٚ=TI f3)b >{*'gڑwgvrK(~ڤ T@.a- ,}PH =s-m]-PA}VSXAZy0.Zk86Ro[χ%Mk(cNʍs4mYJk,ҊiVaD_! / `I$H(OC5qnIB:0+b͆ 6 jL|';  D$@ 4Ky8xX HoZʊԒyׁ[oHv]^it*ֱL/[0.7R),r'(m`'AkY潀WX7_إuh0xfinX jnEs9 i;:&QڃXP9mo/v c)k bi#-&O)rPrlWM?D-1E5 *Fe%~I?/~`-~IV~IO^Yt@;{[hPPqIU:X5GFt4 #7Q|K2 T@On/zeǜZ4Ʈ8ek(n7y `eN$ժ[A6M@Z6~wotU)vooAE/xj|;8\Zd1<' kT~m.NԂçsVx0@TGYZZ ?_B N1lu'x/+P"ky͜*I&>M%5(Noљ  V#2~r)v=S%{ RkIr `2'I |f. Ei HM,"Jk7$; ,wpQHV|/m6r%?fCu'g ;0st}7l afծ-LϜXD#OL`b%[l΋d,13{4{R"Q2lrֳxT=1.y@e] ?-޾@k!kr4AݝLYyY"8iЧ סމ a h-TEn9Ɏ`&Aqs^*)-&'SJO8(WFyAѝ/8@n^;^eS$[)f4=-fD *w8wwu*~iiERsl Ŧ(ب<\Խz^ rMNMq*/LSJ]|5,+R z@0]Ԋ A&Io{sC"؉ʯcy[E/ P"Yk-+Tl+QĔz@*.4#lYy3 +s7PQKTv* M4FlE''5Ҕ_ahx >L l|@GgtwlmIƌ11X @0KVhz9jE2^?hƀ =Vrך<%{)-^rS!D6Q:`ZVlQ=cKfm\?1jgq%;^\åP.8خu^ ~p|/#~#n8|哜dk"B26 yH"B ~lؒT!4enbiB%?u NU*5E͢(>!vS] M0SUN~D%iTq$^퀸dQ1!"P]C5 3ͺ63,L'dA> pA:HY qoBpЌMn 9Y)SUEzًsgvQ 0%u݂rs MJaRa; Ϸ,b/W%dV rJ@cY!s'| c-EIR٘+LF?}涧A8 %fS&Ҷa`.ԬóW>1o$M|t՜Sjy։:g*풪sG|BSv ]:0LaDr$eTW;/@}ūefHg+O)TDKs[D[Zyvfc)L;@bHh/p*bi}eȜ<,c{cEw6, iՒf `4psXhGp@pkR]qh]2\Ǽ,(sPiu M8!Dc[a|˚Ww&Q#:&tU0 OeMs85b\v#[U[77nӝ,8/ \5&dEkޚu $NGhlKren0T?!^qq! -BYZ Ia܂(vj1,ւ&j Jqw&l{Aĸφ,Ҹ8j7mmꯒ`Gu8F8D q{a5nݴY%mbdV,kZTNFJ">I?C@v|ɠRWǕ ftppÖ?~~q%yq['r|.2MQDU)韥M|ur+u G~/:p-tnҵ>K\0. Q'*8 1Fu?2u7<6K̛QV4&yw57BX=| 3 Z:(7c+M# P<6Xݳ ]k_8׺j!K?o<P(@,&OCr4 ʚgĊ-8W(jB1py9sHJn (Nn6Zi87#3-2 N7d&Ӫ$/sёݏPTGi)ln:)8{l)f]K_׷x;>:u8iۜOǁ~ s1>X1?b5s/q6 AXuŌ/}DrlL4=|k\-S>(KE&& Nj '>KFkT+qdxhq%j,Sh*aVknVnP@z[RztZqFB8x?^T`3 4h0DnGv!֨^5 ABӴŖI0&1h+t~i%JZ` GϮCPzKy=E%Q%OM>2hρ*8rEnjTnLҫ!r-UjB|qaѳPfA_#q@'1YXVR rkc"_>uxjE% ($fKAw!lZL%uMZ?ya}v@^>[R󳠲s{{q0/ﰀdoL&J';G}EڤTV_h7iI]i8`q.^3 O@Lt2s*KPq!Ln=!b7P6yʭ(uVFI {RR]/=.` K:l)iYՂ+:ȍ&V]|EPJgQ^rXÑ ygCTA3!;uT47T-,7+"ئ.,)-2 e~f"oܛ4V>I`Nme[9\Faq{[vC^맾Fh[j씾Wb1g` c4:q!x+V\,#xB1P'etĽ*@=~; Z@o8=e?vҩiT҉},&vVЫWNPIcf#:<9"XIپ{:Nl И uus=-ɡDj%qϓ0zħ9nsW6Tjjv`;u3q$؀t5eƗR&Oⰵnba7>rm H)rI#\c ք<*0=Ӷp0w;f'+Y!bq֜C  TuMzeOŇ#yu;/-18I%-*sa(A#N?3P뮮R22"6'@ %rBĶdz(S'玘g7ݝ[ fmUݮa3邗 `"`>^ַzenjC`)♟B;~6̀.|K c,H:wF<"*?ęt]m8$@O%Y=:h@< t{Bd 2(P›fU[h`j~3,_CyG3dh5[HҨ0/ \ץZp9i9][*DqE||bޱQʬbj< 4D cȳZ~xZLnlKFVg#^\a}葟5)*M uՂU"Hi7j>a@ȃA ؠ<`r}lOWkI58v1uF dG?Ic L %W /+8YEǨiƷ#l!?32bRy\ \}eMu#0T ˅PԄ֗P>8ంuzӨ0 ЄJQC23O|Q@*;R4ka60``EYY6 g03U]lVݾћ12B Ňޅ[2N IU)*(r6(rOtqR_:nƤ),"voV/7|e']byh3{C+7p!`]hsZbuG9OBOHt hPmjxo`k[Ej%LDMq㫜Iį6FAnzQ,2fRuMX@'胼]+נ4.;a|"Ͼ8MEd?]X2~Sh_~v/Ok|a]e~g+a8G|)!=O{t2gE.Cm~7"ϴ,eв(qu)9} u-Z^Ϫ Il!$l.;v'嵼4->}0(A+i?P^~*zzE yӷ7t]qB4E./uO+Sҡ\@Uwƕ}2o~Q"V9;Ӻˋ$Lv0y@.Y_48"|.fBYNsQȦ\T[۸^;U »+lukLF.TYweH~C9l .ϯ-Uwepmmi"އ7TRE*5ei| Oi*ɇ(a0٭ SyCG8qܮjUYST\F:Kڀ3*Vc_Vk_1F Ãcr|9JdX 嫭F'|N'=zN&,|(ԨKZyiܝ ՉzbACȉPN֝v{ju[ ïpQi^ngOv#\/} UY2lj$S֖/7m. <)è$Q&YwV2]3[IYH1yaS讞K PܺN?6Zx ܩf/D'?@;zT+ƁoSi-t=pm74.|E/QI$즑n+5FbwS+n7ڲ-IOaXOL̾LCL,ˇ4U_;Okt1}a6JOu D&MJ ? 8#C=iؿK✂O6c*$@K/m=ÛY6 x%ݶ< n 9!HT40A$pT&rcgMODA']mf" (Q|ȡ2[氫vdRN?EWc (7D)Lr%AzTc>90lR|3uim~YK!ʢ'33.qᕊZw"ɚu_u?^E ^#R+vKk$KkG EBl< ,-ca&S5k+#x<4ʐ٣$wJ6 q 4#uCjK}U{a|%jll'p8;,-p  fڴ҈uUԪ&(S9n"2afLnvrţڏܜwxжz| vo?/>.OcہЩ~z~H E$hwk%V;BN" JHA*N\I\j|zTjs"!:ŢlşNUSI)š>ԦB_g3P WqAq@: 8]쁰 QYԨ'G3?Oa(ķ}q(N \F8c%9)pKz k7ņ/^ gvI\+c\ 8-#3OmJkMW d +in^d3[p ?j+i2̯w^i3_)acPYmHs1J.:܄")<!QMmy} ô9x+9s_$*ϝZ`Lއv.& !gƕ?G> /Fژ$ W&m St8fFL6յa Q~9N1-뚨A:f̈́t$Xr=+dvgufHlE0.O(`B hY~:14YSQcvW@e"ą懺6CEk?#V}Xoc/MSR q8a×o@Lۀ}y"9՟'}j"xVeߐ2Z "Y궚` ZԞ6v$Y|+hgV`Ģőh  wK MJ)]{Q k}|AYSQ^?n`K^ة*B)i)d)li2^Wl~$vT{=N FSRFa~ǖYt׬Wc㺪jڬe)Qs%hj'0{T5+߸.|)馻Z,a0GIt]^~H;ѵ)Fez$h*yLyiԸerVQ,]H ;ګ4B^Ne:h;>rMJ@e⭞BPpaٝ7e0+QdqbAdoc5xTyK0%Or ' ES5[7m|q_- U$xAȪ >=Ġ0@r0(iDDYojZVI7j7r"'P5,#m“&~}]V3 cFb72'B;!Z[\xkZ7g'Ej7}1ɀ:)7\;ՔΐR;5#i8%>{ Ø(at̊o=7pU[S&} &cL@6ߞCΓL+к? Jn_j$B@&cb4LE-LŴh*hX45ءwRZ7K/U#j/߾gS m_=i>nXR[N*<`OTYwYbp/Ƣnrz,Oy  bBWs=i,3GRy;ϻ/s,ןdX>vWg ,Ca$8I@֧m=PIH5ݟwmugcU^7~p@% vpq]PmeF~G۲e޼_ڨ}"~VG-*0PZ99Mq(7+-*&Q]~S0',7|ƇE}֝yoպwfpew mˡlғɀO'E :< ׫|N:YCT(z(^z.ݙd|B=!فR[cx*[_Y@ SlF& 3ys"2Gq|.rQනEIJ_ [QҏVTKOnAPПI tQLϝj|:6t@qoR_΀ 3]O QycQeuL~7ʮٴ/Ͻ7p)'f'&MXȑ$&}/.ũI жjV`N :vpH1#A IbHq3̎;١8O'^yjt ͼ5'_?HrWP)I<,W  lfOH񞆮|.5Zugr8PDJֻcPP,]KtɍX~Ń"sW{R K3y>M\I;="nX  U"=f> (NYpboZ=j&<]j\P/haHfEP e M$]}Ǜ}nvoDj=l3mAfI#X=,͗0J p ^Bi~]e4 `toe(^LAdgx#B59j@D.}'M\Lfc=YTa$`EhW[Zc *dl 9^+ed=ZOk=8z Yrb#EcaZ1Q`7 4' 9yiZU@gst,÷Rr;dDCڧ6;j?<攣=K+sSg~^g ~zKAؙr؛P9԰3k .aA3e/ J\ԓ#4޶1삧`+-%"23jK×k.L(8%G($צ oE'TΉ%4sЬp;`A͸53SJ[WU5Xͳ,3}lZ6~8l)(Pc8H2ID`GTbnS]{.*kEvJ㈴x;-as^\Nh~M_ l )?a]Q t#ɸš$hʠ+/]T2.?f#evWPs#F*Ckҹ(d#~ŅNBy8rT?J"e<8">׏e+A⧅4?-@884O )?gJ;,lE_? ၂V \ 6@j.HW.Bg+TBP kNng9}@#`u}= ЦP/HA+֢/Z{D0l)r3PphH<1y,Ք ܠ {X1pEc{첥 oW݌h &^ةl1b> |V3K~m-\tH sp50ĺ.a藂#NMD|eŴI^:p&n^xHˮ߿5{39X m 4y2VFiqͦ97[޳"LpDo~z(D(:߫7sz/P ^yaK۔'7ax7,'QȨZD%'v֩&q"G \W˞0V+8Yĩ;.l}\6'  3js~ ֒=zH\VO8f>9sLrW1>v[9iYNrRѸ"Zݛ %Vr, pc}PK䈀EZCe.:Q:.6L?yT(7-K5oʝ>IMR7 oXK"m$cD \]=+Bp Y!~Pȳ!ҫĐ9U@Wcհ'eɧyD𚣑69W"pg 'E,$qDp4Ճ}lT7sǼogžs!t\Cj;ފMoV[7f5/6 kc鸏P|uVw 9<[q- J7w@3,%|DLf!:i{@R:;_3gfγ![0U~H@J s?弌Ro`NЍHiXnʛG:W~uGM0gծ\k>Kַ;+?l:D>J?5q!գ| SmAYFosyRB»£ITy3gO9T<"]27@ I/5I%]M%a'0Yx'f]%Lf%&i=8ӆ8iw/N򠆕PߌM3b,jC͝a+ɍ!Ol xbl kGڲ(^X\AwO,*-\)AJU _VT {TR# ,L6sIi ˹ Pƅ} =tBBtL;:ůP qNH^vZ1s5{x:<&5CM0Tf?;2"o&'`0=\CX@8w1/~/ 15E@LhP}d,3([rV'cGqDЎ݁F"+ۇ=,꟏@]2KG Fʸe8ⓔRV8%yx%qɺ:RYm\_at+ԒDDG3&,6#:n ;fNu1斟K ppe'IʇzCH6t,acxz* , \vƉeb<9p9auO=Ol)\**S '+mYA᫸ yɜC+mb{CGaؕkc /iI!a`uGYI"QO+H6*H34rD1^J{k`9wK'I J]8\Ȇ @a#'yt{voq"1= _7 ^9yr;^Qt2FlN6}I]2K OR:f4@wY4BrL]0@[~T 4s,P#ʪ{Ȁ˩+V;,~*`{V:.頽]Ub!+,ӈ";/.:Vod 鯷6D˦Q+FcauI;,HmqA=ߜ¥w7{ns>K e{9_;m#t9anՋhǸRU~L]G 8^Fԛw`i|x./SA]u9%݈-`t01PhشŔÎd@&4/,-9?;;VуllWu V*z4iS( hW;xXVyBz陋6X&)X`}>_,0*,ġ9` FJEl+frz_<65o՟y*!9l1AK&&:4t&2t7'&l P݆MP.><iWO_ڧӋp.x*Ö=wN q1kl4I?q]I|>qW%<)-V=ũGǖS#"܇(p]5iOc(_ddif6AQScO׏ @,Y @j cz:IbCrv}λ.63"K\KL.o?Rf4l;*3&1;ˣ.$099XDRڊ6K/ 疞l_[œ;$=={j.诨`!z5AtҤ$mq K'_dMI|O^RPN(ez藅hU΄9eqsCxn(m0HBe^׃]QTԷœ[Fos  pa/pO$őL 鱋)^hvi1&<_uHܾK9v%s׶ #e| Ⱦ,"s[`*BW^wZ7}2+bL4=*Pݘ[v3 yJ6k"QD`a a_&[) Qm@}%/#_ɶE5Z`}_| ]lA!`509.@P?}dyGUjqJq1I z8r09㟏OҜaTv`f'C]2%n6o#gJE71ѧU!ŀ_I!ry{^Ks 1'fL; 'BM58sEUd:՜CxJ!~MrKK{yq8anxƯy-CY QVa;u<,*A`tBMOI\kTkcNC&,[|v\:l/8^6o1b=E[W(}vw zɒ_SНT STF8)fA~(':VgҒ)vU<@ 2އ)i0%`5nZ36M-p1J p5n A9 DT=jmiL/ *ct'ona'/jc?vCTBөb' g$[Y*ɦ:-ԞFʍ޵ lAyVyIa=! C&r{gzsL`x*i6~#1dAFT64n; LhZMa1pEj,/V$bIWAwQv_L#p(s8Gnnx:Oa$'j3|q[D뮡qI2W,'،*IDeР Xh}F7aq镁.͐-pW.*3H8>fr:MZDB??/7͚L䴊H3(g,ZԘ,m5-M׀&g1QiDrD2:]7FfհA:nH33jt(.Ҍr зĵz\DÙ QWIE>fv^wyzH'I\[Jj'V?P6mlT:Tڱml?JpCF910mGG=ּgX zX#;i`a4$o8H~4  %a|wpbƥ">.Ef hɗWZ'm }'g-SK(;Dp :S~R:OS`B:7&R sX 彇f )cլy*|)ŻkvͣFt(^㭘c^EpK3>"Np)ݛ/;̩Y$c?AX'ÅD?WkW$Zl5Um= L4 nǻ?3QI;R{l y7Jҋe[IU y׊ ;nCB*ɃB|(JKĨ6fB`Y#ȝ3'l^<[̱rw [ǼbЛ^@gf6Weɒ޵ޣ-Ԣ;"!ywsm $m7(؜2rPg-unI|'&IUOW>Ɓ_vFeo0H &J+cf?HAŽj% Q-!!:M9G}ƻmY_z22פ;30{[FSY=[OXVnzqa:EQ(+'*cSDښȡ `SDZ"mOaAxd;[B4n3r!i?<.br" 2xB; $Ry*8V֔]~T}5K62 -U//mԿ`"j,ށ A}tO \w"΃]I ZIXM`CH7MoHaĺNL)oݱ@2#n$ 8͐=>KIYA .q~#pLjoV% ꥛  \0ʏY2-@R;w"{nodR\@;@i> [(B U&SGIw>V͂"=S ?bn =iiYTq4'-1jϰv:HWzaس`D'F:2_=BU}-JT/戠ؘ\Sf|W{$#('[{yD&7|A(MX&TcA@,j!"!dZCd4-`Ȇ,Ks+~hK0YtYpHv=YIFqJc9@ sc0tt1r{2KɣE/(}&EGS Hvt9%awpY|@v>&QgV{RgogiPǔiu]Ex^&K q>LO$ɖ| GC{M&*t(qbυv\( >GaN@O0ۺTK~.y_{4̴NQğUu`qR ͞nwML#(iɔJ7-h#FƝqSbl7cwLHn  PrS.\5e%c;*%MK* 5NmG D?k+^88ҒaHvVS`Za֬7_p+1jnK|ZGAf{=yV!a" /aUVCꀞ cظVaT7HX}Ծc\_{~=  8Wg7T]hr npz~6_ Lc4a'uvZw~{^7\ RX #G|nVc7p= ;ݾT-xƯN3ʅ (JA 9E/~ڥŒw*W+:MOGQy9IZ"Ȼ1[soGŃ~Ɗ]DcfD|f/%B60uiaS=Mr}݈_:L;V^HlbR!gȀA X/,VenZ{kda{X#*X*9h naSrAsș S 6X- ubT-saYH9U 挂l8Eu1:++(R ]Xǔ HLS%QO@">88R{8Չ':"8҂ Ҵvco/K^o$&lc$,5݄Vky֏? eܹd #e@j0{ɽb olQj}NV\ , [rw?#(|bBnr!y7I) 5ͻWڡ{bg.8U2Rj갱mEV' r>b[I9_FBoh,Q͉B| 853\iY! |WIb("^]@" 3g~@%ƑPpuW\7n5K;]E. m8JLPz\\Ԍ~]_&so|PH1-WT>L$6[]D@.u8[b4A7kbm죄5p>_a%SrH?n==<S}GWkޑkQ} "z3觔VO $G)2ԟЅAYj<~K2郍ZHﻻkR;5쪻 *\-LfhĐ{Kn:* D[dc(Ȝ\K ƥa6yVS@1;b8ZZy%SQk%D4 2uȤ8*y.4zl2o]T.ɱ<<3 ʐ0X(XTyk[ٿ0wp▸-E3vvN SAi5HΔ@LjYS-> G+LY }JMƱ1b=D@%o'5,h~j 5,t`E @4SLң<΄wl睪63ϷXn^XUOO[mUntp0>6Am{`Ba7fAM:lַꪗ="z=/ρbb1¤+X̷ Б_ ObOn@L:enBze{߶(!*s?IXQ0~jۗ\{[f_xh>.ƙЂӁpwRe݈cKX9[U'}Ą%8в`ϭfk?k}M9N)xbLw-aj:eSY7Nޢ˩K|7d pe1a6q^-&,lKL(#>MQ3&qstdaߋ ?d몾~M:+ʮG &J7UIb9|VQdb iCzż7B_L6_a_Zq rj^p* AL鎺GKv6/Dj[6c!v?R8{0czշ?wFͪ7UsG!w9SBLkP |Y 2L:hm)L#g D6H0Ei"!FVpRxl8C=zky(Ut=xA# e=D|5X_GX›c#~vz9Pn ^X&˛G!Yɾ,n(x9wJ6&Tfh}zp~vQ@`tWS,r;BzA8ØD5 S:*gB&֋WCo7D[sJi8#Y kn[9: V63b%*5[fRth7X,cGيmEbzQ*.ꖆ>d=+.XJR:Tn/lI˟ O/JZGԘiåП5>S Z7Pv:W}Ыu0Qί_VJEkS[^C,0]'E P @Z f7xAmg.$~@2'p#aVĄ4G7|_quAg'f5ȃ|C l5@k0ʙ>@VP~Q5Y| ʽ.f(8%`9zL:׶_"'~v$ZlcX=P^%.l3/*Wە Š (w<}j ^ ~| 0E20i`iQ6h&RW7`SWm5޶lOu')pbL,& 0y_bMnbk 'h@RNeHsW{L, Hx YaL :ğ px>45 o${̐ {e`swtX,:.V"-wĚ,{se5EIUF\^mqr}0.*PИUSnozqH_{dסAPJZ;vpK]k+v(ٟBܒT'{ƓjVE~ }܌KW,# su즷%qk6|\o \$c IƦS$U =i ]-ş| q*sBwvj_pB3!)h)gÅ`fMd L6ˑt`h7A4?Ǖ9 Wsz`(567 w׈qO]OX$Jrj#6\PKZ IÚN)*ɮܞ)8r!t(" k`aKʗ)ǯN%HQۭ}^ȫ*Kf#vH# ^|>ؗĥOT){<$M.+ 73bU}_^, '$z%m][PHϤU K.? [oR-xt\4u)#awFX>,B!)h7Pf8?P\KgrepIaj՚w_5OL^9`zd ӷcX'߁ċYifK ՒZ:0ͩd^ R {(ԶSFWhG 8xQ3"[8fc,-4?\<œτ&;I-0wr vE&?WopgʝZxFnBsH*igFMv) D{14i1ԂrjirHs\NDsrN 6zxVt(e)ӟ-Kd8 $xm΁in*E7ކyGt2CA{^ItuP#:20KYri|ɒa%S_8+(2g7r+| umnMPq]>"I"ƆX' ⡚ BiI iPSJlJ5P?vQiYU3 Rw%VBlב0r+[e6JڂWcCO%ԋt3nKEK@8NngT+ jظIoaeDAL3e*tUƏcC M`)Kp13Z"AͰY]ʮ  kL(GᎴHbNh1 K-"B*EFtB)9i gejuu$%*&B]8&/0IHL)@reZ/<ů}?hٷM Jw WOq8^XbuO+l)(k<6pV⦡Sв_CDt ռMRՔ[1y6lpJUeghqqm˝_eܦ츕k>oփU3,N2ۥf5r!bƝ3f\\F-ނٕӲsw)Sk޽ie2 wt~#,jtF5ݽV櫬ӔYF(wh }fM@(#U^V`d41ޖ~ܝ TSSeNzDFwA$-_Ȳם? ĩS֢mg)M #-`je.Sfե9a alK ֥LWrpO+Sy1\{ϙMPePwFXl@ @3D@䞆/bJ}ppxw.oIR܈Ss 99Ņ>ٯbuE@&=^cD{Og3:4 @ek lcwʧkF`UGE(rɃ;?rܴ|_OmQ"7*0;0Y4/4m4mñĦU MrԺ}~]#hQyX#zaa? c}XXM?iU"y@l +-sdR_F $Zq\`Gd u%H@9Q9́FҌ;VA g )%cK*Ms8uIYA+b,$}kt Q޿ p&h@䌠=e,Rϡ+۽, 6gO ~KJӗ$Md#Wož$+IyI_(QPmGAw ?Т_d+ۦu7n o[@ĽuL%U lϹR <%Œ&tPZ[TMh^or/ _ ͅ94)R| 6q1EApKHG#e,1.@Ȍʁ'>qwk+܀bK-wZrhAdyC6k/wDծl8 Y?\4Fœԕ\!=3t~aZ; Qʟ{aZ&)S`rQnyѭη}5Yj0,Atf| qhW;py+2 t(gWcxNApwfbҭ[dZh`_J "Hu`;&~LGz•na7}2(W2əGZ&Lгw&Egw ̋j4iѯ`v87v6QǛݾ\ƣ%t? Z '3F 2xe]mP+7t/Ȅ#'8\m+k i(u*T@pC1Or%W3EcOݮNjׄ6u [)hpa'W)YYbo;q]T=̑>Q{?~$Ia>KAyD\RK4*C0e'pL6>svC 9417؍܈r 5N_4E4G8ɯI#A0í^j=?m)֓%ِo(If;N78h"m1uL>m^B6={7eeN>l9CpMÆuO\k|@7B:m!dЦ:Jmj:")+H;kMM52K}{ݞF 3pvAf W):K\!~FD4dT\E٦ozZ s)>^$ʌ|X"`LI[Oʧǜo ,Zn\4Bgɖ{ ou;'+~HP,_h̟azn~_2)=s$p 2[I#W ?1($&Wп=9(5=seu8S@)sMxRge?X%G{tgZ)7<:*EF}Aޫ|\^=HInZA =5m݊#]fP.j'-&Y)m\=06hZ4Ś\?E]rMY{;&;4A띴,mINt$ L G _bFVtMthĿ,4tϯ0y,Q*|A3hBG SMn0n%u$U^17"{9IB^|LAf!ݩ+>6YHLt1KmnωD)j-D(eSϝw='fjIկ’cs"?'exޅ'qԴRmִeJ510 2`7>5SolJl5㒫Ќ=NnȃB r.:zH걌mqNeMݗ=7+?`WEUxN8+u7c d,m݊+\`jQp/bo ^qJ|JAUɶ;G]m8/hہ[(э iɻ#lK&`ӭvU(兄9+ó*t{n5X@t\Nt kr@+ݵ|[1/`+EaIF(p9=KlZ?Pdj[#>l7{ ɭeMۭ><Q8"+c85,W'=RxH"Qř%3GB8e1r ()eR,? 'Movpa^dNIlI5ksm-#( r~aBS.u%Jq]eU7W(4zBcj"f3qwO.x&CH7qs$"K% P:AOvìD;⼉e {X|M].J!I !K.66 |">4sH`bmrqH'Ξ7 DNW ,Gu/m8RVM6̂U_+8z?8Rz>L.7jIBDըwӝʓ8ؠLu&frrà[!7 ]7y KSK0>#,izR2dlxyO~0 F*{pĤ8ڭv{ALEܪ9MO+Oy ~-}Bfk.0.On#{>|H~G_2Wpz L|)"_R/0їh4l>"ZځVcSV}({ Gzɴe@]z8luqX(+׾2q0)@.> (i P?"~'~= 7",DҲ4d$=z3ISH{}S+˭篢gsRӈq~ǓtSHY(! Q_{<ӠsQ\nД>S]=`%Tt]*J] B@5d#>[njE)3WXŧ8*YsFK>`\ )ϝȍ^6 8L :բUݪ#>6i7b.ӯE<iGZO} &y.jV B Oݦg=`MУ ]kXS-{u'`@}>O&pKf>pwSM Y Zi+1A ~gziZufAl^1g o| IsuX.T7 Cnو#Jȅꪘ*1duj +Bq>alJfU$k]Q!~OOJLG+H< ]7WĻp聡Si?yB{}%TX#52.kOz7=w讆E ZsIaͽ_}4vqK\9^Sx>F-FrW 5qR٩<0<P@s]SfU=d[͜i'ZN4x94vоi;O i`,\G, b:ƌ*Ԍ}[1xgulAS}X(PgK2mt$@wA\U"1&C$1Đ tmu0Nʦ+c5z+PDՐE~Ә!5<唺;*:&~埇I.Օ,dТl90 tG2~Uwnį祜l#x|$>夢!|IINDӽ_]؝oiqnKIӹo7üv߽&xQ%gt;aG xWM7Ufl^l]]r6uS,&_ NN*{͚fJ'J/C.#}+W}e"z4Wcok65JB(J;.!aOV;hZnnT؎l Y+ZO0_Yҫѩ/ґ-%<:]*~rą՚[6 *eIU6W/p0Z$G߮怪s5FXJ/st'3jse%H X F=7Wf %L%!ߴMx  fO0* NmMFo:x&C3ny>ekj8rlYT=DHA&Zg+ۖ5R4}__Si1XZHBxw`2K%ERh,yH<9S{鉘D4H:)^ʁf㛯]bUSn䫫ki.ђR;̰1zS @_@E9L%7ě̝~H72 dobJ Mc⤏ݱ6#!dh̔u6pz&~4a APa4Pv"zϞޅ ~ai;Qg7^U Ո3$:v5 1UY\»Y1 ̎7fweu& oaȝ,gVցv%e?@3 1E5HϢ͎ n,+@* gppM$5_tO+T1`|(pTEq [Hp|FMčJ*jR1gx2aȜK6=cezWM):P% $ cG Iտ :>Wd@1'SH^ 1FfZ`W"&:`eU#U _?ޘչvOxa/@vfTcp wDC_<`\➿` sW):#+o-E`${y+L}ڿ8j$% _èEM~ttٷ-K&._o䮆 W5& U5#q 'z #.mdkݷ~wNP)T) ΦP/K{[\"O{dZ ǐ*B9\z%*eW.I;TSF,1XN U*fbwl:(|Bim6=x逝|=0.E:|,n,,X˰ Fh1O\PCJzHHxc=}x9N9ETQ٦ {IWJGJEx|8tEe9o\^=1]'9K1?u|^Tמr.l9lǭD2Ԫʀ87>k i %2Mh%EPNM "F12YA4L 7.Y<$;>wm|]5vHEJyo/X1DrOߡ[AUMZNO͈I*iLlcJҐk?5t/Q@=ȩ;rxC뽣KVr$UC4x}b"I#5O$rn+|x Z;o;~}hmrSD] \)xm#W5q)`IF%qF?F!qcLP15I# d9 f$ND:F0~r6T2nڹ`'aMr!^1pZP5y_M/u:ZPĚyV>"0NVQ™ΰLRwH2zoh4.X=|LI Cn CE2x}_m .&fxA\h Ɉ-ۘ!.z.q$o3jY6|1~i2Bq;#SF5~f^wx .!:E0H"nԋ+NhAwa\W*&\6K/%~.]bET"">RSKpV׆\*rF].ɠکGA,)ҁ>!ڡVeL4 ,+%NW:QBdT~rSuqV(2FDrxTP7喗u\[Yc.eǷSnlGdY›b;![R0T{cνt'z9v_`5P&^Rt6ܜ7EJ$ٌ4ύWED"`!?/ ϚFelpPTaj;/ɝVtV%qb)=Mx`sK熛EBJޔ\ ݱNtuV{GlIEԸUDTG3E^;)ZK+ש skEYm&ser?^1:${ךiYN?YlN:mCd#D3Β;R f~Pӌz=:; CM3@m@yEMqz͉o;kD3G'1VlQɅn DSR"Y4^Q!.R_DbKu#@QHO[N ^sZ[k>1n7]OÔ,Z.S#'SEO)^bʟ#Vjk%12=`N!z9`lͤۉf $6Ҹ@0%'@N 5 (S1VA*Hd,mIh4 QȰO*&Lq$ʣֽW&<@gbYս",}&8m Ovu9!s ImwuyHժͬGm4ݥvA(ec S'a&`WS %L`W|D ;X8d 3cXg3{$ rlvy|}TރҾ:f6PsjQO$πN4t2Kyә{,bd Yq+ֲx,=.^$Dq+5n\gӃ/"uxwRe΋<)Ej.I96bih P맠oQ얧vOD^9>Qas;zvމ=<1\rod; ?** Q;;% bPrʜ)\ EkB?S54{k~Ut(!J6,Z¨(w%Cx_htD|Cܼԏ8QWNgb2"ܾyNuwħ@w UB [/z#̂\)rA4N[xhj"Ltj2 d3(ác(S9]9.юGk( E)UcoMwou A vQ )G&,##0bDZ^m3??9ە'ݖerӏ%`({ޙ띟c.](ֻ f'(E./\|yfFG4k#_I,bUy+kaRMUDeO`sD_g _}-׫h緣|!5usTդ 1qlRT*-2R: 4¼SREfi bgE. `_e]Cdᤊ=լ7A8gVqOԈH6Y;עZ$SF)𹵃XGU,*XZ@ǓB }iEai!5K\3#.>>sY,HX1t6Emj8=āwMf[Nb>J4nڂ0)W@d FXȫ0ž6W #PxBU6-zkltoށZԹ䒗>]U٭ŠW$@Ij < LOQ>ύ/Ǔ U僣K[Tд-E|H| o'M_E #LO\)fMY * /Xi>|v ?BN+8 +ie߅ah/.j&9JLA:C?a'FxAx+skwV3ua {#PVByѺ;#CV\TrG(@g?H7QM* IL, Sh5UW1x:NAWak%K/3)9F5I1mFDkrO-{olH}<1E`Iy.Z yiJׂ]#t[]7V _ȯeE 2°W9 tF{H^;%fz(`P?#-Zҁ=gcpr L3oI攽W[BtBX9;Zq?7R:HOqpq0 [y KcѼQ5, +#a7 (.Aוt;(>{]-==!v @T G.DT ULu5Wk&⥐<-, V2qOC~vgoݹ2~EQ{K, FtC|Ō2rzmbt7sٕ|,_=S$꼵͞ueaö B8^e-|}dqrP&:()FH)zX4=`a2;5ĔW돁6: !˸Xl@> m,`XWjH╊vNK.:1qC52frHҖc(̡䷳uXb4>A&|qEIPY3OGp) 05nv}(}z6kyeanϦѲAL sfJ;Jkk=YpT۴.Ii:һ62Azvu|ʹi Ng>>7ڎmzEsb-_) v0>K9E y`+3ẬGo_+S wB$AT^IF GrdI,;¥-5DJ!ŵu|00{;|cw>GK!U5p:dt>̞iH+\uQE3;ƈvEĤ^Х\RrVOFb+h!g}9|9pгQ0>#7@\bXJQNzKFăKK= fvVy |5:Ө-PecqHZ\y`Yvڜ' A9uܻ( }b<X7Cģt|p}@4dݞhsT;3=|h]wwjSIxLMk-3V0g3;{6805"?YnHLK_r\"طc%?Cts}>l3?}A1h i.oo)-a"^~m Lew|K}D[j2pܪV z!΄9z'[ ǩfsPv=j$Ӂ.S,C)7Yi-qQ=\Iڥ.oft6,bnDo+n+]N>noLIS~ة WFZ*T}wm11U^Sd| BV6־c+H<7`gP:7,b3jͣ@>-(ays}% Q3Q}Y Π1Ba*8AHJY=}l>C%1,[e PeS)Ńʟ]춪&\)w@Yg mGW8K^&;y^|“^Ö-l grvS0\K" u,Вn:8Y%n8v# Sp!(&z(ܧV݋pB\:C#jx?{WYAV@1ƾ2bE;؋{9@3:}TNd;2D)+IN2$E;a$P:cN9/|c[3ȃYF8큾DV Ef&NKsD{5 [,0 %ef~95Q h_ՁAcdhlJM4@]MUpmhC:!@+aMNb+:) SxVH$fefor'1fE3Y7P̸ui6@[P mg'8G(JtvwjL@f޳v+`yz2kem\H`U:O&> 1R}|jqFqo8fo eA!]^(ǵJqv+h9mz$w l#!;KtT@#NM?Ў&.Ojס; B4|F%N,W<:XC yP}=CcE'"٦Oٙh!htOY/%na@vdtQU{$q^^/N;/&,L{,@+=[{*aq!GΒ*p9ϧ?>J5wiF[>?i ҍP 8;4˙.mVcj͸UC̩c`/Ogrr'm/yƎ{9ʇHL".޴X"[&;EMt&~q?*[XJer]9F"_B]UA)FߎE`dAN1MJjH gNBik?|#bA-!BJܻH>NSsYi; /GS!"BMyiG& kR"x4dݙ0-FǩAoy(`)Œ2sAK׎QBHjﻦPpZE]b*aOp^ؤX»{Dl.Z7B47:.Pj:WqTd~t2X Os 6]tX3OvۆTZXI3RʿS ޽ai:8^Oablyy6B™!FmMOm P, w@ -f?Ӆ0Zl|/[ )?t/#0 cSȴ-BJܿvtc7OyZƟskAW14(s٬9)Uyw!K|󮏙x+[*hyI|tEyZ6@>B9+Hݗv"6k)rrʲ̆> H^7CQ(̡Wx͝MȋdE|FUCǐ6e8 1Aˏ+ĠN|4un$dKoD? "΅uSvq,pE[I]Ҩ]z;VLܼ)ŦȖܝq5s%&M "S;#d1K> o걿t_"I؞#K}` Pl U{Tc+ mf(n9,ϩPj%%c+^z:Hpٜ)DUlp;64{GWIXKGV&[dQugv *g%RNm>ӑ,?ƠZ*aڙ_:*ט]w!OM 2NL}'`'=/PJ1[7TN`b/o3?yi+HCRLU 2=/`j y:S'g`5{ {-!}'azɺC2W[ٍC$jmҍC4-5>3Y o70ylC!B!&WmG8VU|[Y~ckHeύPLR#p v02 iL<<( Lҡ=x"Z &P;sKCd elB9]\غVDB>,FS  IZcZNjXݞ OtzU"rײ-=ȡ4&NF` }SSImrM(VkL`78=7;+=) Χ|JW\jK&f6,:Q鷳 _ߗLp51>if ^yp`fEbM Ppm>iģR:jc#?=xNASDtLh@r/J`ʅ yLΜj@9F \˵ K0X+5p.򺺕z燳+CB:9Mկ b)K0`RI>Is``&x=1l2 umq,piMt3aFugk^0k-O,)2f~7KNɛrKanpC<02j!* QVR^~ooi y1׌Zy}5a;Wwd/q:Ts1ռ51G4nI u&d$_{sv#(k[۰cYѝ|YX:!$|fт;ܟc@%k'A >n}j8F:QMʢXkɒ aM3[=Ob=|>鐢zÝX!FVtpaLv5|V,6{$_bP<}~^^>}ŕ ]C^wJmul ԓ]"X`51RA$1IʊfsǪTCÐԬ*kT]QXk 'nK譑 ! m9˫^M"+& D9q&MJFy|pR_:y 9aSC[hqH'awψ>ylMyR !, Cੋ199O`bkqReXc/m[--%Gy<~D#'BdZC\6E!1ή6IO`',\&-IK32XoY!b ^H0Ohs 65Xr N9)|XBꐪ*QYr T)J]Tmnc61FBa!)a8lˬڵ@)+{5Xp@#b$|g ;Xb:`t9cV1N &}ϵ?)?S|6!]&(cȘC0)EMC R<f"a~@6J@֑9P7mX2ʓ`fo|}fJ=%zB|:rYϨ!ؽM2$WvPNӗCSpTcM ?Y4Q|HӠ%M/D*7cȕ43橎yVj|ZK%Izkt-WVmw1PMp6L*HRb+J\FXK sSreN`tUN)TDK|iECu!MxR/ࣧMp0)ָodZCE _ [iMcKkY'gld y?Ʊ^ fÀLxd:QX$\3:;gg/;J&%ߣ6!>J^1+=_jI~1$–T bqZjF/B}VS_k ~M u;?żEx5NOЄ h}޺6L?@XvomYH׫&y<\IGI~FF=#ƎyhΎpF_SLh(ϹXێэ.NfM@@םaî__{ (Ak@S_J^qb{ f,zB>%7/LnBe fp\PdŹU: W_%t}b!ov0qw7fHuhڴ6FO\Ȫ\)},"Rҵ#Z@͟h3$f=Xc  !pРШb9v }o/oޗgJS7[J <*j}oč,P\,s-|w_9R'd:PoU1'W$~ 2Cń(aMz%DXVu@Ukg'?:jmG1mB@@`ߌZg'jI`Gj(능߀0Ŵ-K@A"-STm ,/Nl=ת1+Gcc!(Db:QBjϘ55(Xr(kM' jiZDŽ c1u- _%H lC0ϱYNN"2&C>ћ`1CqjպqJ4ɲC￙*EW薐"r Sy[.(Lp#$y0EAc`z^%|DfQ{EċIQs7V}$ 䮖bcR{8ի{9s` D]V XL@K5E -4ų&Ⲅj FuKtڇdPESPCTZV4.1}(,Gs& ȓ"}m?',!XD(+A%-Gq>;se"aH֎.+ $@>^ROך-(q42á\PqK# xLzr]>ez9= #u[p_ﵔ4e( z G@')+k @A`4~fNqzR{~$5ړ1n{ z\}$ zz@ڱ CKpZ=HC6Pyͺ~DHn>yzKCy p 4 14fю//Vdat0 :6pqAɐ҈,ld PHzx`k0VFҙ7Z(&ߝaʁzY Rwyl3i?2>}YQP3uj@n\/9*73 R^wb"t0xvԩ#c~p0OOIq1,EƝ)|m] 4xP.Ιn]C<̎<0[1-h Ntu[<3LdWanbqIJ}miQ:n{x@MNF"h ۃJ%\4RF/cL> q}44x:Iw.-EsR%wH0zBRi@bŒ->-]ɲj71puRڅ 򼹌ev,$ۜ6S~bxRnBREJ/(:p{>Pm<6r𼖹eyͨ)JN_똈$ ȫ u6.q-kl&<} u`AmbUsG7cq9g#E*PS+ef]EKN A: {&+v;[@=Ȑ[8c m4w#`})K<'$b׆;$(u6 fч!eV2ni 7!|S){688$`cvmݗ'PQB z2 8o;Ծ hB X漏fwXRo<.*qKEUXv/yx-|;$F])SkM c@xK(VN <87B| E ZyE/Y&Y-ArvL%裻O O|'~P&q[WEnޜ^U^ (玮=/U9> ̶ZvKjJCIUu\2Ooj My?❢ճ=LEL΋pˢg dBEud:}qt2X.X0Uo5v_Bi 9j;gvI`mȗ*p_ӐJY28SMEc4Vu'H->73o4g+GپY"+(nPh KID0jzPpի#}̮Z ja,WO| Ÿ'0نτX8{OyO/Nwy+`lЫPLzmXGq 2`)}K`Q=j#5"?h&kUW]9/X=M.2;l6ߍ)_FD~sY7[iL7S_}[j)}E2c/P[G햘7fs6Q뿦Zdz$mev9GIo۶;*$: Jԧ̂O° RA~kƼ-W>.)MG Z@$I}2B|3$k]6@b"~?=|ޗ#Iec6ّfB4 UD505Bӆ+iN 1׷䄎r tiK>Ǐo c ,; \xͭN2i!ΓD-e]w'M0^S8/@ LP|@H%ڎA3eZ&Ws/*f>nA(GR̟Xa-ٍB*C]P+9R5=!s bSyGv 6<6%0ЉMx:+R ٜ`.b8sI'Ps >*nAy7#<,C3>*ͪ;q i_‚kS'a[ jNd*_/cB(goX<+(pSGYt63KR/Ƿ:Pf@;.(5/֦vaʃoG̴}2Z!'4?`qkl {/=6Y."]vEtjSAjG B.|L86s%ȓZ:jaA?ܬ7oo>' C?T |/` 쌴#2Ba(N!,TT݅_CRpd0 O(EezLPl'P&"Lc7_pހ{2tIvz<$yge% &-Dǻ2uDʒ PTFQ?cޡ?-oڮSN(2(D׆1%G1,^ ܎./bC$=9FIcu lKz Xbhc]th1b-VVi@Nr촣ߝ5ʠ~b;EFJ|@h',#"+_.6Etܣ?,Hhf{Y}E} 49LGPƔ5)6OZe> X 5 n2}QӅ͞w,e8H5߮cF9 ufV3@Rԋ36PTH'. ?vǹ[^kGbQJnKC"dw7n$-N1hsN{qNr7=u5b[TaM4tPCASDgHc7&zr3 ԑlL!OfTCH\3ldMU{Qgyc":J֦RDMS3:Yr8sb_{/[it>B70Tp 6*r½LˏՃBsvG ` 0)4 *a e*cy4uô/G)9Za=@%S(uiDPq5~JVOS?FL`$ .#(o:n[sE0,̔R HRG\+nGue`",e6vzPBrQ W+ޭp{u3/S gY8Xb0k_L!uC5)Jj!TDur%!bˆr^gGR_=th&o6~ {'ͦdbAFJMRNDTZ,:j0z1WVدNY%>b i\g}8YaMQT95h&fy3v4ZʀÞE$5_,]"2@_+M7l:;S#%{Kid҇P=)NK78?4"A1eWӴcFӇg]JC7܏w=I4{BRߐČ/_E|Pfvmn _D 8q:ꮗF;t?ĝIklrcMhUӇxS h$3x|nGnUԒVFJN Mg cɯXo.xW {J}!]x5R4J{3A(D !"|Raz̒0hMc J:*t?GT+ p34J`= C4NBT ~La2uL{)MC6fh]/ 5;]U٬P{yv/OZ:5kj/s>Av E0n)j2z|3PW%㘐kiQ8eSȭ˸Fu6tr5hw4sU^R<>|޳$ZKyy'YzV ]h+I//#>ȁ LC<<%C7V)}qS"{ G1fRRbHWÈ1ez|nkF%X.ŸI۱JNݍZZz22t2V? iP1\:NBf0<=Kz/ 6DT NSj=2IR;&onКWfP 1,1ўz`Pw#n҇YH;t X[Tk|Wu7N&|`v!7t=mMpT~ZMTD2hЩSئ8O?s8|;wh0τ$fwY'܈yRw;U}YBq:#HoܺSǓ!2m /e so,:2gu-(gZש^O5@Xf~&O2C]P*mogFU.R Gxj=[٪]*h*E^$ Dt-Ejr5QXv-j6DpLHHsqĢÕYW 7"wVMR|ndxn߇Dra˒ҟEB"[Ѫ Ot`%g7{#p P쭴bh3Dm~Y< }ujߖ=|Wb8;)U527{&>8/yQ{;su Pu&[nb)m. pVҧ{($9wA+pHY_΋.9TwY"aWrP:D__) W>Ꮏbt:Or2ﻜtWP:"xPtV3H؋m!d($,r2cdͅ?ލ8k2E wY+S=[P"$V 1u6PWhx)3:;Ҵ1F[oTPN*{c ǢNXXu81lTmRs?y*2 C_ѧw7OAMxc͜Wh,3:wQ7+ڶB'5uD$\Jj Azb{⨥Q lYܘ,7|.%mJ ->hC)A#ȷ7hߪ|jm>Nf}, t:W9[|u8Կֿ~WYy{Q[tGY @>><fqXN»j𞊁Б^PV9EgC;E,xs* rsrvRu&: F?$yv/9Dt,Fb݉ோ@R‹7 A!cWJ ӦQJ\"ɝצa8$m|L^xcj6 IXoi*oi7%Eh\R<@5\ `z!9Es3 s^E >!+aӺ5MNq]G?~p|DbE9f4!$3&XZQ?ov=HmE/=ȇv1:l;/ <7kWPTPٲ9&]ɦ%r܄yϖX]A=ϭf2 F9˪/d&<֑<ŠO#_.TœIK$~TDY':CR&;N "RbFbɇ>caߓXYb tDƨ4Sd u4}_v/neT/$;R>ԏWL`~WdvaMwhN֫d<ښJIbFu -upd hmhea: b\tmv~PlFt{Tu6BmJBt| F9-  17#ΓNC= -"[>L+WL2&{O451ugpqtA3 e%EBJހ.ѵ3BT-C7_BkkKnZ֤FZ-۾QhPlϯntzhWװ[ē(!y;Re'kD!g~6Ax^<<=9#,)ίQCaP~dvb΁EK]C?+-p'V(Ӂ\F8OMdy>qCP& q[Wn!!Tqu2 %P47Z 6|G:m4sm=.d[X-v{::8h,cpRc" XN5"h<-00iX+)Kkݸm@z,N0]ڛ"z>|%>UgONT:]֎M)…aQ$~OHFL?~R 92J , +[ރvΔ_3f KX7㠏 ׷sÕҙf~A he}-컔a&,MS:;vO 60gMOyOJN.X9{Azuaw[4'u+%1&kƙԨӻ='jN%CP5*BQY87S&~+ ͸hf?t$KsיN|0 Fw'ȭL|!r$v)-3$mnNbp"h^)\ȲC *5 _Ϗԕs x"xk8 3 CZeW> ɧ: % ]`<0,x\&krJ0z&SϤy`B ko[f6ĈΎZ\ pL.\HIP#9 n2(1#*Ǹ97sjZQɏMp_ 1=$sC ش±أ-!~KihX03Փť Z=+}i{zEH{£0s\ .E82[Soj!G $yig#"Ί+zvOUװBf 2Ltk,Ԅ{Oᾀ͔݃3vJ%Xk܌y8FL;*OnlAMg {Wv+X6)1C 5֌fH1':*un'&Y607߉Ȉ8)(C[Eg%pwRukW"-@72UwGid0.bNu w@ URhi\· ʹϬDa?IUo~+[N}*3_$"1<ˮլ'j: p}j#tDwMzIrsʍ۪4l̩0ӷL[$?(kUZ2pzmQr%iH'>3ˎrmʆ yv%nP?Utv-bEԗ`M0zw_S O\L%m"f`H)*ߺm T`HӰ?8boԻBaA)׌lS>+0b-{EQk'Д^HVEo[ fF(LO6< ۨ:s>u£:"2B=NW82*zIڸ~/oKgDk~9 ied4YCA rebd& K8"S_VvltU˥'A _ݐif܂L{N1Kcʈl(#; >T T(RRɠ_BE5. )GbhKO %rgno];ovQ*:XrYs. G762T:+o_, 619l@U'=q 3k Af%)ishx=!jM'NNVێD$]cD)&01 >S 5m#T03JICܺVlp%"EÐPI ]HgT0xǗqϙds_b_t( 1VWM,5uGgcy0jt+yV Q^"ޕvc&?> @P@HGw%i/q'QIC*-RU5FP?kd%UI7 -֐\zrw:;7ev..e0k OBVu"^>!~%`nBS}hu!ِ>NڡMh !ӏRȯlˉuؘ]lS:'A׳u> ژ>~҉vAlY})~Y3xY[FMDDblI:it86\6{ 0t"syՏQ}/ ݨ)]+dv`5%juK ;2.GTI#)FNl64o3sm[eG03] n6]GPrST4}O@9 0%Ӥi 6=ڞ].$E xZgA)Ǝ{1~M. oZ:I~,"+n-jLC$RuJZ(|0on얖 ŌvSxkbڭa  .πv;?̉1rCP[ ÊF+ @O7uc_xk< GQ@t j0~ %`b/T NhFYE'ņF8&g&scĭ}Ȓm+P& HD\;G-1P. ю4i(ɔ4︿hNiۯ6{˜yZ5'<&%ϺdQ6Vi%^$N$ ̈́Ax%!DdNe}U+@@zH܋_!'7l3O?-o0N#VBϸCdЏ!*a DA}_x՚*,eSψz[2gl}F2]--D ,35L?YBv9 |ͩ؎}[1aѷޣoIE`ƁK <&G1L^P~? dD.^/=Vu@v_zV`'pwdd?kT(LӺBDo 9S%D䱘/dJgD SZBR祥NCM'qL@kI!5Ap1VʬQ}k9/?OBÀʜï<V#V揱icVè.T:n}z4e,=2&xXwW6ӔN de1rUe'="l89ǰL:&ڋYo$2z"Ep܏#}=nn+xvvs8v e-SӸ4o-45aVj蜧9KKw>S݀9 }!3AtT)޾:"XuzM-#(wҟD.E=}K^rþt3#~^~e}earJ03,`gl'cOω9><͕fr4O6l䧠}DY9y[ei]2g |P ][; KVY-gL,T⛹lɮ&Y{ k ꭎ.Fޤ"]wx\#|?գ[ُԱbzOV<~D&[~r}T TмYo-`f_Y,ߵ6ؘA Cr s^e>`|:cEhh{vNw? |s*EB`_Tp_0S?CSsrakbdeHfwѥ zˏ?#h0z 9ttHȁ]n>]@ON15Te}f(92~q`0sMi`P  ߘxSbon'})L,>K36'|_CpC&1 bgҭϟ\] u@=ƄoY6#S.fc}3޺DZ%L/2dYZst6RH(;ř͠ yݗJEOȓ n:& +tތj8gkLj}P93NW(>%Y(2l ??f&&<0£!#gl&W#2 ;ֶNzN>Zt|+5BjNrHo;fGֈve7rMj)_($ʎ#|ڽC )ǰ$/iA&ߞ1-Y7ւݟf!dk͉GXz-qlYʊ(nJKֱ *;˓:=85Yt_8 1q,&iϐ:vqD=?3=|m@"9.e]N[/tdO#\X4o *k^?)"ƥ,.T80e&7= )}ŽuÄNQŐI_t V-U4č'ni]abu{9ّM I'$ul a(a(M0h~ֻDLϭW u.طx5?)v80Pvݗ2o,r'5w_֬[pI~,KĻ~6g>5);I6e+mxq}{6kom*Fxz|S\&l:dG 17k]*Ύ pMCI$M׈3(*bjMr"q{>ꁩڷɯ/Udۡo~Ͳ<[ވev8$#W1 ^OlY xف5kr;*M+_%XOb_6yd`,!t1!&Xo?LHG>W^흫T%4ߣ̅` O0q '8t6י~!n|x]j[/WJanhn饆*Bэ[D.z"䭸-ux_ {{}m&>19qUмL8xlDʜ|8SUSfP=AhtPXK/Jr͵}JdP>Qj|)JƨQv>+Ɛ!;YBYf(k`tH<YӨ:hl/m\7Ea6TRH*'VG1eUa}~vg>"?:{O!D84WKc0 H˻I|U1jgiSa\ i|=l".OYgm"ˉJE3Q*Rzm:#4|ɘ&)g7a>[ʻ6ңdO!r-ZI|#z.%!WCP%=pS0|8!)fW+$tc,oAե3O\`5Gck˳=|г$ O+1j}5AgіuwA${6Lޚ!DB7P,^F;W-ڌ:!~/U /|qzWs;Mk"\k2X|9~3ୱhN^˩$*8R;WSSq 6+]f0ߌ)зRMIvC^yO}^*G\^H}Fup!!ņ4KXvocZROv} @b>Al4RyF 6Tߛ7'E6R Yׂ"$H*<D ݺrpO"Ь{vCi֋K,hqa0sKyYK|*:~jR’/Hc:ۻܽ?$C"+,+9<})yTȿVW*8.uA?v)kQvO?`G hI|\ݗ{.ڀ0e?V͟AtIp\~|z9IZP^$ dHm^Jer& UG9O>-<d3[lrVbxm^Y~5v' jų:CyCeO0<s/%96-6Ŋa;hFarmٽ]<|-hX:Y5.N.4A1KrsW(xٲCuFE3 ܜ;h`R Qj7oWj$&]FaJ Fsg@"D\W-jP,j;*?~NBSt' QP2ڗQe 81/ocOLE6YgZ$N[S'[R\ {B&O,qBTIHuoU5U'WTd6͆p$faL9bMa:dp=y&TI37Ex-r)`{kCe)Ʃ_'w3@=>f2̍ơEI҃Bh50[vv> (.O.,K2с|czWDu#8P\a*X>lHI,jֺ:N诮KGv[B -i}@Z""ZLRO4%蓞+̡,\U$ K1CPj`P QYaGFUũO۵{,:R5Q YYszƓ}c;WYi T2; Y/їԸn$(-1 WxtB(a\!$,|8w?Yʼ)NWڌ0 %k^YAWz y'ǫ㒣|2>愞E=Yh >i{FSP쏐K8ϝ-+:֘7{%YsMyb=,86 Jt,[x˶^ȶ.ěllU"[*' d?|Cb/OKiDo1 n_i(q--,8>$Bw1 n5ۥ2)3hDU]H`C rmXj]y j֞NhR8}ؿ{uk G& SM3n$F|tLq5Qbo[,_"up25=²FGoF#I~#]!:~wZf!TzlTƩq r?BяgGQ" OԘ`Vܙx < SSq}/*8eR8]%D'[v#[K1ce ޠ3]#fy :n}F1ipo in|,Kkb+@-2釋BD8x4 jޝ(0M9qA%o(<";{z$T&~u]R\bl^q#DI[mx$ R3gd|#u mP=[G%M"5ɼ]Z0ipXf¬ck6 ̚3qbzQUkee^DA,$jLzS\OO^z+~([5w~@bɵmYtoM?rWeǡU 㣁"z`{(-m!\=J//;cUhjv%0,x‚E_: J'NW9oSO(SN- aً/|[@YbLs$_2XDu " keg9njIZ X_;yk'-2e\ Kv®W#.mì74p c쓠5 F-(;jL2ad Ӗu Ji#aN5%JJC,t.㸅))&F^g8Ew4xYIߓl$0XX -~k{!cgy^)zVmތ`8WeQ@U\su"{jyK1soe"B d3y1|2\x\}E ݾK078~{3GnpŃK<ܼbiGq^(4ӚciEJ~*P-aHm..?UESA+t\WaYW~~=:QAn \\Sr{yh)Os~ebkIc% sI,i>IzhB ,]봘\R|g}QbH""lx3\ vgaW4VGU4d`4yƋC*1z] eD)=xd5պxʈGjD !ߏG^-(}Y U;ddsbdA$a?.%2[cn@&k?7?(<`\~<ޭ$T]4WuF=NiEV/D*VANqSZ׃^?@#9"D_qxHn'm&~ jD8{#NK{>T5ҡh΄?5tL` '_»=X Y?G jCK/cjOe1WXy4tq>#]8R=gfWq{\5CFv8-3୓wgv=[!G9˫A=`@(}i1xlͲQRմ:0U:+sW="җtuaIoN-kAQy&;Q*|Ez_tJnp+f☥fNQM۩Wjˌ(:L%c#]./t_GZkhgOf/a zWTZ-_cRxq*N7|yˋlA 6۹7e0 ):JW_I*`by:a x +;'[8'Fvl:um\kFїzasL^ܳo]lSQjNwV~h,)a ⪙℥Syyjdb[Ƞϒ \f7HXrNi0,|mrol iwޗО·*#򹏽pҚH=~ Bn6w0[ `ƗRGMm3:7`,6OjΦ/g&vBмQ$cA_Y[9 W >`Uқe]rǼvH_ %1ڗnҢ/FŴPꥌ[v68PbaG.!ebsVbuu} 2mg|/K$}}bP݌&rFoO+`7N[{[C4A;b{M˞c ={^s82.JIj{ϒg* \=SF?mGfc]9&D몮jͳTqPgoކƆ&^B¦Htkwн2Z?ҫ-N1ҡMDŽRJE, ͋h+?;?hK{%kPPK_:-&&f]Z;0‘)ɎHMf(>X^xˎ6 >}׺VpV]g? ߏ7Dt 9Q Ĺ0 ecZ`nϤ>ZgixQaRD[u!/(}:UrYiI]޳~og_ 8Պ^eՒftvfT ufvPq& kQ:. 7RI:fRzRۣ#$w`1E:!ƻ_ 죴""{o-+Dq;)`x|~af:71؈EʊMx O㍣Q AI_m =#eެui_S gfu>l0BdʈBM/f3멱mAlinXRUݽWx*Ƶ&+ٕn8Q Q<;]Mzݔɾ T:S@ޜA MGIv#~kA9 (̻-J !/$!XXoie m~FpP FCq'"qч3VtIq!pj!,jr%rl@Jl3GB@]SᯖW$lV xchl>석vJ91&}[: tl}i@׽mJ{_XB_+e] pT(8sB2n@%Mc*٤Y _iTďc+={(|@]ֲU=_r\~~x0ӈ=7rgj^f[2w&d<: L3a831a $m'a[6ތ.e@1%+?hJ,B4sdo0-Qt 뤟T9 s%;C=G s(C?i %0t&"u{S6mcH^w|HimdQIHNup+OO?%^ظߋ=R4Wnm|Y =Ԯ U8s%ӑF=؆fE[ ]:r!aC 2Gkcw"XWs2kQhٓZ'g_2^X|xm^h'ag/)uֵ`L e$Tl_ W*(z7+D6on2b5ʃ0‡Yh JQ0]%GJҲ :}g)vn=F; }Zw֣PԦTW]>rźn[go|_h'Kۗi'k.>{wɗY¬K\{tGky]kQ`8s:6)nZ;1ÆڪgIq8]8y`6YB#ñ6)v6Po"}  ([~qxs~&PZT@6/%ld~{!6s7.Ptʏf1)VCgcE'7wGYRNްA`w vxtԐ*^8K^ҌjW`BOWZ&tTN.$7{F$ u݃8/D*R sxȺ%_]k3(o21?۵pS{^\é|0,:.x"AE xL5|Z X[gn)ኙ; u-5s*Ǭ:I(..֩߰*]#KZ02#Èm.`҆b2ƋoBopް|QWҘ[\ Rg8ѮI}Ab(`I©Zn, i+$~g1 (|Ɯo qzXG-yoTFvʘ]kiM97 eIx $W l? pw^cIn.=CpXHyVxOeZ%mOf-}S_F.f)PSI8 X:8kJbA(Ǎb|+ե|H/MsQ㕕ἔ^_>ЮLy-Ʋ*J2*uQU@UɰSr=ޫ!U A~@G r"1Wt :K`F _,(\58d1um4`ƏC8'ZY)2JH"glTюC#n&b) MW[33(#@D@|فۯIEXL`$lDr(0p䐖A,m%?%=zg|v]*+Awsf 5ppF`{*O}!6$ֆbKοJt$ڝ7<"7U&~i||Dr@NBح8 oIyUQTd@ d?W J'Ii[},Ltb]+Smq^AgN|H~Hd,)&eTL>Gs\9A >OS@Ie ~> O {G`ǀl~QXl!Q:!ү- DE^ )+KV,7oGktkZ#) Rbφx)hrҭ d\`6P,@`dZ+{}WFe{ ,8b@5ߑ=@/ PZo1ڥȁp^Id#tm/ZP]myBUt/ċ\v,=ﱨ:st2P}dF^-w: QJkF1=?520oHÔQ40/^5dQ"ȃl(1ɦ $C!J<<*(x@*i/腮kzn6; xqeNq%QgSu]ם~}K1R27'5\ma7? j9a``Z!Ncoa8CT-x"[-#!E<$;ԱwFc)`i )լ~Jq`{:C4ai}w!$y (?_~&p23= RJLEgE<*pi'O%h'oWdZ= =:|H< to>"x@^CZKY-^2ܠEBB}نQζ<%` /M1{Ʊ \LҮdMpYw3mSq bҔ!6ͭppkƄzETEOsOEؖѵ]kUmj8f ;6D.[6Z1lθK}? "](%&9C>OZ\dNy!!MC,&nxUdY{2/$jJww^ I!ZM"2uF5}!΂  L?(.W@kEҍ>0О˧}O6ڒs,ɐڑ99| #svh!9lxRXtfœӢtZ^-q"2ēqdgÿ?=U9-y?WL OulttXށmYAcCDg<Sx5%,_vrJ+N~)}"J6fwWyjfeڜKZc4wfndO-$n-/O@9i2'pv? %2ߜhtz<"ތeAM\K UPxP Yu-UI7E6G>m,b#vsv7?l3,}Zj$U1YjsߞȨ9Z1]5:7v&pع1}#"x>x'P:dYPg Bٮ PlC(ʏ~ki 6icֱ'R] 4Q/+^Qyc*H~[JsCO&?Z`DεmTrAfEU?QtJӻ4.ųcJS?zZL~q_Jv]%ɓߏ N8jYoISjgv\6(f39X'߼)HHH{^,, > i4E}S= VA8#c@4w_u,` y#R"^Vw!טl K06] Άj8핉Ӈp36֋4lB5OW~}dCKQΝQ_&5}D5q >$N5Hfy1?e_ ~3D{6U0MR! /m˖<vVPۅeﬞ pIC1ro%[xp}Ǐ?dYmW JѴIa `4ɅBHJڥ0/Vfۭ9UV<>%dUmفʼn$5ndu!Y-\m̩?Sܹ`|oHEf-6j21< @.QʳxޭfdVZЫЈ kQ6%V#sE R&2=Qq ǥ9 > yfr)\ l}VOqQU+> o&F9Kx$Nnľ!IX9 Ũ8r (U ;Q0Ms\q5#.)Ru6"}r?ֿ^;>A4GT<Ώկӻի)ZtUFXY,z2xb@No ;Ec78,ke3y:\ |F!(x`iݎ.xU % owhLG Q'hbaۉ++AK:pn6!?b : >'; -**s:&18=OnW1ȨS"ԯ_^Q*Oe.W9@he2W`齢6ZT(sRsfy-i>O ngyJD,N޲C(p+DӃJ44&Vd`h`W-ĉ7gЁgzዣ\L{/$+&Z}:jHYp[FgΖܹ%'܂wfh~3]>)~mG C͊%LoɆL^t:ç? oZUJ(݇11 puߗ&6ghI&GkL7"ק%U>>Z1 8]?S$wVXT84h̩ >Um./;”&3X]u)11SLW{: ?NY.zS|h" ̰%P1CC#j GIY%o[/ DH\ 7h2=M\"#`-Ӏ8xh󽃯IYJJܸ݅N#hg@+ /2)]߲-h^l$ϴsQؚ rU0t\?ab^T*"J, A_bKv75 T:[ zq4=blcc nlD.0BOUtPiu&Q[*_8o$3dh>Z e!"cb㒹 X)a~ml$>oӢuF,0cpCt!L2P4oZ]'gtW 5qQJto8(Na4zF1܊z& Cͫ3IM5cPAc۸tW:ؠʋ8Iĸ(=8]bNҬD7'7XiN3 (ٍK*' `uk?o*{(QlvdKGmL x #ШzDWBI*=?_a4y)OD2t/hoh`^7 'Jm\l%8gYVb")hꮚyrC` +d;$ga1E ,Q[}U3`);0F/]J:4qɦ(jQ(aƝR0]5 6$qQK65pC2!F1|7M :[C̰͏\`}ӥ\-wwE̥TNDRW&^ucMs#\ ae26z V='<84j"LV`q)Ժ+r8)hl(Ɋq$U*LlƁj1ZOڧl}/&/0RaxGn;UۃgVIc0 7 ][Lb oDE0ᄉEkGm]ev姇\ )ز?OjM'ہO6Xwgi3-g*t>McC*$90 Nzǡ%2GW˹i*uO``RJ]0e@+(}{EpDn1P$dlّ?S@L1lqm^/4Zα3MY'P*SKLImn@\=nƳOҵ.:M<$vw|nji% !vVÕ8هA/-/oL&ʹCtⱊTr3oJڶj24RtY`o[> v+K},Efd g%\tʱyKtAp)cn izE Ò* X`wRrJ9|rIݕr@Ka3fi[~Xxoh"{_%' +69z3ȰoAUK}.԰?œ`!rq4  6=M~І"߿0ۓJj>u rlC=ۇPtJi*"!cJD ,wA^^Q-@0I͹K|i{jPė9}NC]f }׿ IM-g<2M/"̘̎MV^J .]>􍎨d,T^Ȣ_9S[9F3Ur*? n׌6)&<, ݎSdR!X(,Li%]/gAh;1>-d~h:?7}f_yf=*^y$q5US@tD$g;7aQ=~}.ޡ7}ǎPrY-0UEV9*?;#ixqJ'Jؔ<LZ>6-L 7ZLcK}N/Ve T4jP~ cBFm`G_b|N gm3f #p ~L\!5%P $+HVN $G _+Fj1@}U˝֩0ڳ̰-q^^ƏcJ'f֫~Zt{)4% 6nR! ״@>{ R 4!,q 3 ju'<ͥ衜Hi ɼlțvYB, -y!"PMZk}C VGR]nDHٿ6?ב6u3{Oe,2W|,o2Ce*b2do RL7#B ֣STF$>ʰдu V[ /؅@ȆK5c-=ΏCʆ[BMHbQ͛9pZO]Dp DBKҘ8MoԹkC6ªhI#+0{Gn>Ȅо] 3#p[T]460YmɠV?:,dOlUZTq'P%#8۱ȴVKj 7hAB3QEڲ '%h|üF<'!,0?@ YbA]zFm Vuec\n]I'߇y&)@V&{]Qyl=O4~5D!7J|% {ky'â1ڦU7HeE]'9lW:m?{؇ktATp0}$o_RpֽS77.hW%ًЭҥ ڥʺMA& ?CYqZWŽ7W{W<[/=wzp;=CPFMM>Q 41K%U"Dmq}L_,%E9sUD+T;k1Z ˔{ _Л9^q-!%i{_6K0_3X|p{7]\H.Oбӎm :kR; tD~Ps'8nXgCGGE|e|R+MՈCT Ġ>Ό @o1#"&UҔj*#Ώ>yfg#V#.wvI;FC_6*=`)7lcݷ[@ih7Րyچd#qUMKOi6FVɓ!w.y ?Mɸ,2#dX,=bexZB3e)&kA/YNm8\{ڿnG<|GpْfEgLρ &][k:&<0`  Ū76ܭPO^hl rC,O3D1T~Cpz|Α~1Ύް,$r9{J5zU]A .͛PWwĀ9Xo*$p{5P7^0#45{ J*QّTΖkEr3@= 6*nPRUkUD\bݘy1I-Qh|"e6,LSFڹ'bApgρ1R.{U^V]P -fJ'y'*P]_χ˚q]sX8XMԩYqc *?I$֭YԡJzLM)tqlqjTVnlSm߇5l xceu ~1T EL s{/=v KcݠO?Yׇ.o9cg`%P66Q-5ޝ ۹}u%Yz󄍜9Θ@\B[#DXO|yuJuͫT?u\xq<}.5,Gb5&7:UaAY< R\sR2wmrP;H$>x= K4q R /e*]K./B7~ۢ-$ީgf@̗R~cǀ)Ϳz9;aYd;76X`dߡSrL (_!c;|8up{_۲Q}uPP]-{',Z(]\w|h˥Fk͒O)(* YUȭ٨1Ա\Dā(職 ,Kw:N GW*zح"Y?ym >})HI.ME1-JzȺt>~RJWy-$̶)d*5"󦙉\ЬMnKÄ"_,@mjQbEB5(O2BU@U.U$/s qM"ȍ;c]g x@Oy00}:=vN+# DVwX. U ~{Qw^ȋI1 q|URwdVLpu{ʏ`E-6OMR"a+ WyhV 0bJ9@QJY:&\:*;rEݪvl'G|U MrY*&ZFoD{x=:xY!l'@[̀ ?A1 Oς i&{tr9yJY' }wa"-)Sz/JN xJ X V_v~tQfnF.[\zkMQ[@ڹrQ6taբhyfsz_"N5Um5fGloK|wJ88?PcZTq.Ƒ,O W[ _)|:F9yRIxG@׷~u`i꯫!붋.0(s!&3Xհ6.M8mӊglC6h4W \ieӄ>ڔYg ui˅971'm \MiX"Boc)̭bJ釁gC{{GIԿ U˜?kuT`4kg*AQy=Y< ]JJ%;Tp?ktF@I+( Cic=sc]l wݚ Z*|te-AcA U5j>~aiuY*kg-, [Wۅ:pB4ҁS=b)OnQ=0=TqMǴZ}v$@a+:j[ԕ}3=ݾ& V35HA,l7Rx%H$VYfL %0^fHZFb' p>K;x. W>WΆZ iw}N bNlིk橒]l%9]5jHmt]ȉ][* {dK؉~̔>*yna/CU@okBf+ڒy)> Gue+Szd[(uGWh+ݮBJR8Y bOkpVP8#a@ E )9blT;MғE2b7OWq5yYAu}T2QoqK̓;pH2G0.VhfJ R->%.T~:!v6JZ{r~\o@A1XW5S7sP|fDk(y9Ķ҆k*eHS "Ql EH=|qJ-L}|c+U{Y"„E=+mG9B\BIemsTh_[Bl'+1將Y6F;v ;CĒ U*l0 EJUhir袁]DUl%4$d68ޘ|lIˈk٘J=,5.Ĥ0-#!y [U\ˋzSV=W"RtǏum uǟR뤲ծko| ^M{rl;آ=;+M.{uA.•g*vXЂu|.;,AWlol'4F:s\27q)LB/KF/xoSWh2]!/m) q~b}I5_%Vf#nO$ϵ","\vD@oU41XrK1k7 5BƐce5^gC.@-oұ+Mף7~?Q_iӫp39[ +9yH1O[j U]p Cq䙝Ea5orR/c@Ru+0e4P1ES,蕻QGͽ̲DT<,uAs7WTzlYP`{vt&B2?3os^ ‰ZU!V_MGjTE?tbw=>1Oaņ/5s /, (ʧ(8$ӣm)&uJ_dՃ & =왆OSJec'_xjt^w2Q|srtUf J/|ZFi@OJs"{ĺ##PevN v[o^ +|Eu*>AsZ2RljNc[' Gg}LH-%F$9I1٪w)IuսBKun̔y}tY )mW\4ٺ0whCDz08}i$}% m=OĮ|g>/-c /!md`uxeyGIqQPϚfe.՘Ԡ<:-JNW“PrC+ԂwqY쥨"jðڊ۞3G@!{V b/TedC$ѹTel1z8̵ЍxШ{Xa֐s#:&9Xo= | a.wg?6 )a`#!.m]S&7B!kOiN|PXB?i>:>[x7f}͓l`,Pq*xۏ8;d=p=YS3{ pp{c3BW3ׂFח/Ϊ`r)>K57Pг`Q~/[QX~'ph%Y(y-u(@?8jaY!b[=Ey_Á΍'jz 0sB ߍN|Ne>X:H0Pл KRI:饱²R_3m4ցB;S*BamhdGYf T#i eƱ\LƆ{.ָrmW z=IΛժa>+Z9ʑ0Ad UCT+*ֶ rRBIjrV֑Q[HEt Gca`&=Bس-=5F/,Z{-L\wyR۳9 e%mdy'F4vS~f2$,-.EMd!%9xvކbӀa6a ppP;g?= sU EO}A$I_}R h"ۄ4"-\{c9*H;Xb&s:>Y^\|e`NϢPK)T??uQ&%gdVKݤ{{e e5Yl>vX |'8oI~l_q_OuJI|g* ڻ+޾# (ToސJ[jn=q ,!_CBV[$QQqB {f=A49p\rLgA$A&`"!fنk<1M3v銫F|# ~Hj}6ǶD<Z}NQV~pu4{Kd!ͧ-~3??UÍ{?Ean%uRQd{,Jsip 2L'] V\u(OicyYl'^-@ij'ӇBx%Ѡ-?:L gQ| =0?~25Sɼ# .yyOM "| (Gnы22^W7fnaTmo6C^/u)ٯթdK)ߠ19,vV8yFSϕf*^"uhso ߣu IX bXL,s4tzth+[s=]*VTN56@hV!e;W3cV1+=ԙQE5Si{-Y"u[y jTQgH~uH%)HFiy=TiDk %Z5lF{;Jf?Uu+X^,/ C5 nFvA v̆0yL0Ay%Gӈk,giS7񴜚(clCgigrќ^zDvTdrT%yԺ՜Y._:yL2z6Ǡ\ 2YԿ*6%ķ"UXYgHSB)"Yΐd15OF%]v?I~Q $@@h eJPխ!&@=qpM$t}U眚rEb83GOtJ-O 3SaJr+}DJq,wLqʀTy1tn4%Ũ¹~Xx⃿%ࡖ3!E1`hF%0]Pɓ?A?=gú3:<ڔZTBo9VCr$':{߼q'ma9iMшr GCs%6r TTvNGJ3I!abS(N]K;Cf9ʏ?%-pΠ~{8b(C!1 "h%tX*܅]d6 t2 mykdEz07ߨٚ(Wu,]4I]hY44G܅+|7O%{;opseYD,X`y}]z|eXΓNӧ$zA0:bXY08D搑Oh#Or8 R!w$-`{!K9Rq%$ة.rOvٸ6?_K?Ԟ]q7K>oPAҷ ;A䁇]$vcl~/1e^9&>;꬏GyYbGא(:@'?H "y'Dvq]GEUWFzK ^0ȮڕC(IwD*w#ѡJ[^K`?K=+`8Dž^%?!8pVGb` ;lgTsDK9quԗC؂.zg kj&Zr *VF؇}u ml ^?$Kuoi<Ͽq:v_/|A9rqQNk ; $R_5simӮ 'q,6xϭ6/,/'&3Ԩ[NTP| uβ'XCAad``xV}5XϭcQ@:|)pW/Lj/jŔ|n벗G#YjdWx[rְ|vp*fvᄦǻKC9&d#Ĥ>?Jq[,ΞlVBRŰ$0k{JdV<dZ?Hɘy+Ǖ{,`Ц}ɈVMɭ@w ]yL9!,=R+'ݐUB9bPZ񅜨XߊK``BP7wDY:?/L`LA*d=nqM-r/Q2LzI+*SQ, 6cC`kR/>m3] $. i CA>x*_"0J4].ۛ>>f=VfɊXrI$Ő|=[Lע ]!ӧSD؞ǜ~7)T"msZ4|P27|E!#4d19E2AiSYQ&N 6*ೈ? I:44ɞad` 3>јҖ!>0~R4-" ȭgaj^ttҞBF](RFyPPa'AI ߼Kk 9FUWL" 6<G Tn'!fE!2 f3i=p1 350{2ݯO AdThp)p55m΄<⠀K>=$U&|d 1{^e F OEYkȂV]>ub *5"n׸cIyM<]`iLԄeU=N[:j@g8MrU3Gc ğ;"bsM>Ρ%BK*b )G-ics3N%V`RX-Up&= UCye.|a||JȀ رWz$*T˷cf?)dEX_w-ݛ)G귪 G5hy)40Zc+ ,rZENAO܏[*涕l5J.@Vǹxtm~уeny|g~{ѿ9Qlu\!`i7QKHMՒ]ʌՕN)2-H/gvSNN.GrUoJОU`0,401#S5s'w-;җP"u;v4o2|Z ,l=\?ۧY%,;q@+->MbmOQYp&fYšy [O]m֏2 /Id)ߡ=2Poh+nh}3m IXiBٷTc?Kf^(3_} bf^2% B3Qu (:)MIJl[EJ"WMԜwQoVC+@DoT[v2}Nxsԭ'0Ojَݶ ՚H&Wyu'5J>#$x8Iu/(-9]O8aZ`r@a#?OOvVa48\1n:ȼ .ı~>wةjߑz{0%0 ?QٶgbT8tO"!v,̴ydUߐ* rU݌ᖾ:Bl=5@:`0gŸ!3uz1j{,*ša+~7j@JK]{F`(Pq=m+L57xB.%9RuX.S%[<'rcBliPM8՟` D@Q wܥdq,C~?*OPbO_J"Ymhxd+Bk@SK9/,]aab.󢕳DD0!Yq*e;!Eέx&1hojԼ|̈́]aMlqabGU7rK=#Orbn^Yi9 ºas6(k]ͮZNP| :Y>';.Jap̶lɊm?J~1no/BE|IӁTe'ݜR6,}jMg 9%@B: ABw?i&A ,;u]f_%d3=O:Mõ/;ysN>>2f:y77/d&?1BjSic M\)yᴎLpQr5p 񻥆"ă7 Nr*y^ o4y p=Nf9٦2=~Fh8/vIkWлbg~XӂkHc]JچI+#wu#Ynt&@4?S¥SߓAEnV@I17% Syխ/dv\'nq f1{-z~Wz(0W5Gz1RӇ05 bT(Б_FJ. >8+4Q]ۻP3<"9aU[0OvU8ٲ3BI@?5y?Oߎƺ}= Gc :`4'?#pp;XUX| 5<d³#H׷[hZv8'q$ כּDs߲D0Py"M-tR'; [wk&\P^6R]xFD_A]+dܜQR>w-!uѣ"|Sy)8b_()1}y 1?gR8e%8E?04v8<D}wc2gWS&Ex ifxO#Hc2G7#jI.>gM}:@9mrB]۳1 C~<|\N~57QY>ƥUl }$-=̳n5AР[H?;qB#& w-(4@TMg]\ޅ+j~Q_FHr-T]e4 ǣqc da8 mqHbn 3^KCEGN}7؅+ ;'ںꇸYQJM+R29bM[JRO2SBen0B) G"3G S !]F(uȏqm%)DD[BJmϚu&w^\X }u uu9OlV=(?CI!y]ވ/ˇWŠ+5֓>U]!o&6:+U2z k6 d!ai.3|3LQ2lii*1{U sm5lc0}w%Q<e9Nԅ^R&_PoJ 79jC8l ?>EpقtEr:4tLTf~dpIK z!SԢm`Zv'8S_]8@&{ai= Ñ ;@AUO A>nI˸j|vݏӖ: E*4- Mjݠ]5m x DT~rhHKn^ĆM|b"A<$csE]rSۿs*G_e⡂O)3玄({/$(wpNw7|rJf!U8Y9@np frZn=S|R=4>?>:לa|ry}JufnA[7:bSC7鯍6|G>>ϥN+ NAXULo…~sưiIoK:֨܍Qw:1P}[G/1vLgA7gףx9?8L1X?9_RC:ZE5_Q(7Ϳ, =`κF"}n-e^j:knyMa+p/)r5 CC"<=u9aQNbߪC{TjzDEܷ~#|+DTL7dܕC?ݱcrVFgz? e0 ܃/5 e‡ӗb*HL$bB Ѯ>iu>EP$Mۘ Z.VT#񂄭]'L%ދt &GσԢ$ K3/G&~>u+%=/NpiBT% k<_ѯ%jq!ʭ`uKL!O*xE#XT!RZ &=&{>kVUSr\+G/ƀ޶ `_$M.Gz50N2b[T KxFv#277L6QD+j5a,jvLOg3 p4g_hn[Q=j{麞A>B4 q(P!ֹhj]SϔoDv;z O |#q!i)fC2S)G녵oU 7?մgő \^oKfbKWnl׷mhh"eM|5Ҍ87$J]Ɓk &6 X9DxѸh> HL=nX xC4긏j.ET9lOzs Fۋ({wtyŒl -EY {%}(I1:p}[< zQ4Kr0皘>,0ViLݫNרh .CtS*/K׶9H (Dƿ7 4Q tvM` &栘Z쁸ZuY\e+L˼beٲh lI}Yc9>%'ۤ8~kv$i>ƒ75up_bBlAfĶ'DUχ?,WֻnxiLRCe!Za$.A?, /i)+EE5q=DV )o+xxtQm{jĘ} Rd}E#jё什2IU`5 S=(Ris߹ӧy U+`8\ *r^:˺epR%}P6fűM.6hR͑Ӱ5^KI{RfIEQ{4?FhXEm~`vю_HTٖ#[Hxc8!Tf籞M^66s_1f@2Nmh~܌"$',haB}aVcls.KIT VQ`4O`w TT~QJe<@hv0:xay:l`Y,$W|2bemc` k q'7qJh>zl@D054`Z4MBcO5?m$H{k\> y7 թ?Y4>W.1hrOO `;aqr{ʊ c.q=iJuu1}{͹xK"Rؓhʪu> #]Yt4t[>*(KU*%=C/+f?H6Ao9f^+W'w]ꆰO E x4`p kƝ2@ooHt(G%ꄌYTq Tw1;\eX}]A^ WW¬CTE+1Z?Q ~@~V23g> OCد~鵣fzL.ʹa =7 3¦m+w%6`Q!ɥ_ }*0 gipS!gZTJIҐ֑# x Q+&OA2d2%]rOyЉwbKz:X*~H'7F3P+=NKmkWW`-jGQ"73 Q 7~58iU'VUGiCS2"8,\WJ|qF4WЦ%6ri LBNG ֛oM+,𘅄J v?Ճ}? U"9|d-cɴXw?܅Z"*2ֻ{YyHoFs^)83C z vEÞ/6T%3D5Y n874(#(Ug)6 lr:E[)$IbrU$1*lp:r9Ex{{X7ic^I͈iEWTx ̊OѱK׃)Vp-4\{ۆvmR`-nFcrm9 ̠/CZú,cK#Ba1-J#gF: l'adi%ȴuf9с8r Y2B#>Ib Vއ351lL7@bJ2 Wq\x؅1T[M؍jZڴ;5T aK"Vh=iҗS%Z,8||S(38BEo?%_Q%QҿzU,r~uW/Yް1^JIFK9:{ ^hm$% ufxr-}Ctf$9T5:`GϨKC:ϼ/\40>M~,o[Dqcpj)\G0F93j1:m㫕fV-jesy2+8Q8cPW/`荙Ib$QR+] '/L.6R8,=zOHp@ĂȥXe,\ \XT!K#F*NRі *~+*,dDs52iۀr-4Έ!%L]ux^8$ya(?sI KOA#j3ȳ)6guu{UEJDm+X-z?@Fˍ(L_[O ǣibyb̍BkitcEݕYZjצ©CFЊ?89SXA{[f_9|EtrBӵm4&nl x7+!iIC1Ș9ќ3%X]E4NPcRr Z0DxeNf8^AcegU46wtZ~"ýB֓<[pZ YfATօоy+ITm=;KψId@+!@2׵E*]i@ ǒXHҷ`҅;o+l"0tl@!@>]CYz9raT$%s%7t X`wDqEp|65~wR0;l,Qȕf׊Dg2v߇R-ĬN+ :Bʼn9x}% 5te3Ox1POƖ!rW\$y#gܗu* T` ?RuIhlMGp3-y{uˁ"$sЯ[Hh Ş pâIE=d~59:ok"{,r,55Iwx*M-k$g7wZmw9ڀ) >ajzR4t%C8UA«Hӟ h c`~3~6r/bҴ8ՊURlH ~#91gX368Q7N$?!Ң]dxp'4wd΂r\S"3mڔ  2(^e:ßŶB4V_DK*YO\Wܳ SDŐD72p-Ӂwފ\xI!K2۽뒪74*됋ҁ\Z5&ɃŎ 饪I~z&>;C3gzΚ!ѳ,픦%_h}P`Y}("uq':OI?3ѱLh3t[;5q=PLz GpE=RMp^Ofr(\#zc䘎*K W% SgQoe`r&&/·B F.6ȜJZ;g+w_Ã$^MnV=Ԏy0VCL\rs V̬[op:hG j AxkR-M0G^Ff{,!efjD~kw!ՉSn}jb{Ћ=}3!Hd_m[BXNmZ{WӇjdōvvo3`狻)^K8;]KB[鸰۰çŸ~5@νDD7Fl#b_ĖkEΰr=aO"fIt~t\\܀AXò[ُ^=aYKDL6"8HS ܓYi6-QM9K׌F' ֦EitΚlGF44OPTJ'?݅.-!w~-# }j*rM֢ݚ(TT 07 {\ܔH6`nvea%m*D%a:uNK^νfك+yߌsI2ᙸi(&9_Ex w] & a!)震n7SyJuat<=}1Vbȇ g]tY#XoYNB[4^|8Jk #,ō&օsWǜWvIa'wٻz`ħAUWV#*ssX|+J ~wPޒ!R0 :XGL{)ΧFi#zM ZՐZpbT2i\\'l;`mAh&v4 p>DyG BJwy׽( EdQrefyTf]Dh-wÆ*ıքvJ89Cuh qrҙa>əxKPEW] 9)(tK1v2m К wSm LP|soJorMﷻ22NwZg%IϲR:MMZZ;Q6:o+aQ=8FU$6{{ckdlF^3 ڳ]4w xuEYICM4{Df{@jͬvs1OcG)n1Xk9)u٭N]GTIr=cIcF%2g vJ"7#3)7O8QWφbnn֗JΉU~x#[I\jܬlKmR}\&p?i kx+ujb%ыD-9-XS\:?8@znL.hk t%ʆQn|A /=WA>olƁ=*:e=%1P0k!f| o9g)5Ȫ=/*^bl{㈗Eʢtza^TZo8 ֍,M^F p!G]ٞ"PjJTE"4n;=90 v!lPBpp  e.\pgγۢ~:)T&Upr}|{1ӘLpc~JJRΒ_m6"`@SiB#*P7@|p]h #&] /m~uATCNOw5 կX̩v@d +)8r .K03p F>$yA Tu?@?6o X%JM&$4& M2iK>k- k+A:m䈀#ͣs;V(!\7d{bٿ ܇F8}*vP\"k96cvU%b[;tAYmIMI~$GuCdGaJ?{r]r\^H4'2^i7=$6d'`o zIxʷFN Tf4I˝ǎD܃8bveeC?3_A#sajt. wW n|G,YI_+$bѥ.0uOy3rEqH͏sǝ_^wWU/X$úP&}[wZDw" l|M㣜l j_jWGft*xZ4]Ih[Qi/p$G5"$v;{fN/2JᳪRJ0b[RZgqV~v5k+lkXQՐvi97%g2G%HJ+刱# :$hC&-@vN^_#1 ُ,1(#PAٹKBO-;2Nj'+x |PNoDN/tFJW8#5|2amQE]4t-d]\jފ0/fmfʅ2Fpwv哃Go-oy*0`YRxGTh"r+ܦݬE V䥯7jf?I0!O[>'MwL <^ӳyv}-$SVU^. Nb6[e I-D*-:]{s #EE ;Bp㤕AW>)eьSXshG1v]n͆HΛvjiǯhqX0C,BF.} .CYG̈F[U%沛EV7dޣ]7v9hͶL+ܟm?!gVzu/RP|3ވDrVDs+,xN)z . k~X"o^dsfgě7,o( .H!{[JDzjUM/sboR܈"N˒DCv솽VLhXu%77 ޟh4GCb+OOvs^wǡL( Ƅ=Xeȩb&وiˉO7YRs~*Iٻph`4cԸ np';hH kۨx7yRQ;7i6F.Gu,Hv7fƕR\ \*,tMgտ {Cuŷe,)~2)$ Q͐=MmO;|Ѡɟrw4ە@W.9݊խݗlW}\cRL]<3X.gM%޷^ ٱ&fɾW>F{Zְ3Llvs-uvkra0fSdWYk;KaL腍T J MތI?z9(|+ tn&3k!2`WgT{LŴ۫l xX׉ ԅz} ;bb$'0#.8!}|81@u2 [;$}]uaZzP7䢢ʘ<ދt,8׸PNbk.hPFJ T iVk'Aow.' :Yhs[^1Y:W]k{P@̴f=h2<rhDX!mwӶ7 6' ,ʮҩEهErk_V)}vˢJzٶnmz4DWou۠& 9}jL=cbn~ {:h;e*bKZy)֫u27m$EI,bޝr<9_++`ow*UZ@;O,ӿ8c#?KPMU˽n9v0w?2}ڋYwp.$?`` .0FLWnr$.7h5M(K j+-!.bTe*k<ʌuPi//bi^IjW|1O;<=g37:Sjr=,lN{0G,`6^)G5DäD.G{[>̡ܝ'P7B: ɵ?a{>T]UĤ1/Ǻi@pt{Z)Y+O[C H03NK+R̰㐩 ir?x3sȹ^XA4 *F]! ȩ6Ѵr.Ym\I&SJ5k z62ʗhw4K'oʭ+7UWt`AݦOFwg!9Sc'?y޴k1,PL2$y!}fu&Zlł6TxDVa~*;7{H.G: !򾨌tz)˵7ytFzLWqgWTFVY?]U8/Bh3JR4=kjpfNwaSaRsxyD]ݣn]{6$!|}G'R$ѱ2C%Gr$V]1 \u_s"岠l.եN.ύm&*Mr$ F.P7`kX\wjuR=L.S+Dbi55rC(uDzT)W$=p4 `4mz!ANbi/h Xʌu*uM$Qee*K4iD`^F'{U0"icy~ѽ+U3[OF%q&M+X^ia[5 4P8bu<":Xf@JƪIr9Nvb۵2dQ% n/ gH/}fB2 n2 0s^ʡFv,FNSrxަp%Ju\]Yl{e)0شݠVz%U ^m F!)4^\ \Oqe$:glV{T^,SdΤ_AP?h*嘮ID,=IjZ䰥wxid 4Wvqeo<|ٲI6'f8 }]zɩ6)y`%u#( Y7x;<䜇0+m&Q[;OZeO ʇbm݃z"(C䰬+e=`ջت%V(:e+)9PQq`jS$6xK`DSX#?:%q䭂e6P꘼="eE<}Ip\ q96 sLVi.sݚf9qkB~2U#@q;,k3ڤ҄PT1obęDYP ȝ)e kgUKu"M T ͓-[1V&w!s; Mp8\ƠTkD"up[ѦIL! f}[|7 L-SzfuBC%9/>0=WsEya`a"ҝf͋b3&WNݨY8h q6=w YŢ v1h_X {Rw/T 7-6 v6Cg0GK^0ғ-j_;v?F@ =GbgƎCmy[<:%G< 'PE^oT汸&I84]-Q֟ßS3fG!f*\灍6pϱJ^ȃ-~3ο0z~皠Ij~6-9hmzCo#AYj~hav)2P[-Ho՟Qn_d7ї5ah gQٶ_ҋ#m }WJiV \zR&G"씌Chiu]@#P܅['@%_2ą֎y1,3;z-ʈv;\:O19}|#`YrMb@$肪`d@_8n.mtk{Mb q0 WVS$t`HPCI,psߡ<C!m`Eym8 eeġ;2Ţd3XtZ+#nXB^;/Rn2HKHNWXVٮiBDZ`v/Aoy"lz\0%3Yݎ2~c85{#gKhw=Qp>O<`RMe؛ Xak|_+PcyN=ao-ݥó j6P=M kc= C!blH PzqBn/bƼ[C:J!ݴ"Ɯ#i1>Kj-իX`-cPq#do'&0P؟,h|g3*+s`ftMbaP<};6CD**z h\ʁ6V :Ehutj+m3N*8JfNr!{V`QFe5%"eC&a{PFtay I8+Ix h>?7g\CNf7oWbh3yj8R{eFW(ާ['r@up2.9|S~} v>*+"\(uZv=M 'hN*Gayd(.WƔz.c[#R[ȯ6.nhܔ Đ 6S 2{5md=n Fk/\gVY@! I 5yrb_sJ>Yx|eӂb_%Jz…5)I7ۅFcK"և4irY_U)u`c!4a$ ,5= wZW {}kj_u zO)o †nZHW&)DV\"V0Lj_CBT٠X_QGPplނy&˗a8:hN\%Fzr=,#'jm*Um+t/)DX4~*ֺ^%wc<}Mks$%lAA<|k>6Ջ ]yWRgze,p2cAU9*t+t> &To$:&]w_9#RێI˚'p'w#?tPANpUwI–>O:@'Fuc{M?_RDzajmwKЎB1 y%GYޤߔ&/5¤.?dUKbeu{P-WKW1p(U-;J,H{5dbeq>q3tqA&z8ehc#.u#DN4Ϗ9'L.GtN޸8?@4 9A<(]y0d"*r$Κq>ÆE0[+UUo9  Q3}hN%h= O=20vjB:ZC5]ƙȫ:w4 ~iacVh꒩N1"$u#{4pԬЇj9)v 5pfK׿vnu{#w?Rub:q. } ^M׿Z翸 xFD>5 #?މό\̹+ jQƴ*0yZx0R.r$RJoˈlgr_ՈX$FGhTQёz'Ko}~(a_P::W_7xNltiHAyǏ&(gEƽ9tCu$j OV9pH=l k_"C{~)eJ޶?²ZV}>S(%p' ڏ[(۷ou"PYʈH#NK;ZQe c A ݢ^FI0qeQT 6dfҕHn.^3pbmmo᫥@u+ 7Y*H7rI]+cDvhh!ЫX`S;07d)}1OJIZ~ 0c|n'd?cL%\k&^p~l{b\%|kt 8XZe.x.d FXuVϢ]_4mCm'1~t3΋2*޲{g|HmXR}lz=!L|%_i ST2#K-'_JhBμWf K4tpZ~ ΔA=B&wlYA4Nӣ!R#҄[? pOQEDG./kB::+Pp\&#P*=E>KŻ#k6&!***f,u`TpgdRT }$ŀnkdp[LGKbσ+:' ;Egd g^J\L@牉NZ,j"Ky7Y}lq$$4>v JRԪ53DbDs5n ^x)^_ M_hx۳\Gd(3g\5.Y\ϰNq.袚+Pˠ 8eL' zn??应n9li4N͇QxX%qkqi+)~e-S]ʫv͵\N\q(VȴErUWŏL?ԁ3xlܡHD7^&&% lZ;W:q;m6~lFI9<ÙqZ(@ 'dC*"ت9Ӯ;rnk?ha*S]՞Pyļ#9TwD}<Њ)  2*tA4*s,W"CĔB/T@!į=P!:%`^t7RF#t"tMij+ \w /q492MCuóX̭,B ~H91l&SСƝGF!Nq{Yt+iڊ0W=7[^sƿ s:ܻC r=c#/>MQjTj-EBi#GyL{KM|!B_§+yEG8զۢ:h)= Z {l[*f}4qyJ'w=°N  0ZzP\xkW6UԝkPэކۀv ]gH8J];SmyŌ!hk[*lmȃm̍+ju瀎* vlNI$kX[wJ yuoC M pGccCVb7q1'}'R7ƾlwT"Ln}]'I4i~s^|5N)9h Q~".S:.2b;oVJDkН HE|i8ęM)m69,b*VxG̡gDzO@V3n(T0ed%LL# K,},j.T•9(x3)s b=[ZܪQ( SS&6wa/=^OIÄr;hn'V,}%_l-q{1΂ibPwI-ZcޝX\r ftr[kM20kvsg 5P &?u\bohJ?u$5x*Iy $75+aS&qqE(9KIbzrTUż`5BDB8+ , Rbhy|q)KtU6V{:V:p(i o]?TI ܓ}_Tc]RVaN NKpS~j 0uk{APe{]&OhuN,,2GgIw/8PQXYyAd43Բ+^*—T[2%C*-r]0W .Y3i%ZhSqc _S& * {gh0'okcK8Įn>EH}Ƽ# bsд52 *Rq;+SH6!]G=U%ݠ6'Xd>t%׮IHYu7>9FG) i@Q6[jӔCAtJhpo!/Nvz傭E{Xߥ͜IƁk+"N6{euiDzvY1O Y][ ©],9)8.)EjvI|d8Q(J,^,{FeP5zA6@ez@7PYp499$) h$MN. Kn$*C% Vqem^kCR'X b(c_|wI3Ev{WQ5ͬW~^$eeKC$lwJa&xrElHmbٽN*S&&WcUhUFe @nB `-(*/V`'f.A|+ף"Ӫ@01$: lu)<}5%ǴcvZ!qs7筕+ e?Al7;`l-4P⌾_s. *@ܹ"8x6i&xvBLL| s!{7YmL)%Vd˟vM7uzxP[_$r~6멟x?3h_E;fhs.~Xҏ LCdLIW!zLkaW|DۋgB]W/dqMB1/h&i1sAFI0|6 !LxiGU"_&w.ud0<:ٟ(4'267[Jק1n/bL$gja!r|(YW#)WbTs-zY22@E\I,lݿCN"`SYX{{6}ᬻk".i+ ;DlK|Bmt<eu6EI ADKU\U "u{;?6>ĥI\$ D|$MVq tW[w+۾;\\_2_Rx^v ~ o@ޱ׆Oʛ|exBl#'AL&Fh1`-I̞U!'pcg$=O!?tNRLe b "qhůp8&ӺuRd^0`,.4uEܣc\Tжg=BYyПIRLO;ǤuOJs[x޴`lG_:@T#C9;vj3h؋7ҵs h9豶|qՇࠑ-CQ9!sC? I`P8tt׮LSڎ$"8Z!)nrkmF.ڣR~"n:;3@ʢ~Z!QH·+nP͎7D~ ߹#p݌uSVW4=OC 7_y >[u>50c#ͫ@&xi{I2׬5H9rʳ#aSch/I#g̘R-}MN!Tݫ4BNʲiyAHШCJs/Qt|ڢ1b,b}*RLP e15dio"y֥lY) J b@ fx n|WrC@VYlzsX"?n)nI2{n&oc*k]3YjVwWfFYD]``b="[ip&sd8E` BTA Д%>q 4|34S[xĆD(e*׊64% քy~6yaH⽯cQ||V*V~HѬL='gKjT&@EQQ(_HuBS T ,7Harn2P=޼cELHXM|& #݇$e/In+D˗gT9mmSӳẢ'y<%%\g,DO]7i;RqHfqq:x{1µa81%|+ʐ;zY3<r1{$Uδm-)O Nn }݀Jؐv n=L(B7 .-/߷2hJL/P5Q Μx~75R_p&Eb!s5Șwt/qHñ?"[4sx3u͡FR(rIw2T4GȵuCuAp0u2k_| gh( ; rc1_3U44osZvXVR-奺`Mfw62GujԷkɎ!sS@aQNscqBο~ZVx ^[_<)H0CjM~DĽzT`ҝ^Ų*r崃<:* rQ{*?5wtZ.Ǭ[νgѡl9Y>ha-a"d֚V/jêfY#GqP+v3;Ίl?٧D:=<@qTe~J~o[Yǧa1ldmEA*λa9=`1?g,=$N_7 ,͟Ԭ榆u=T.UT oC oiWA*l&Tz 饹=Tn0N4^J65ÂQ/:up yF6Mґ:Á =~ {^ˊl9gBe/Ga\n'lOWH9'Dnw0HL 8zfVfLE[?v倫6p"cR DYw(0aZ4nxN25,!P\2z/evh E8ĊC$ v !\RjcΓ l>?Uz#@#C5) kSA͆Ɵ$w)iȚ9]4Yl³nU<xJ{PwDq̲h#jyt W}ľ2J"Sjw"1-Xl34X{v)bdt,kϺ6*wKu[#v%^_R~^=4WgEٻMM#0F 0mOq1_~:Rjw0IO/ f23/|˚FfaJH_DA7 M/p:bU(ô/8msqXY#t'Sr]j7i ۇ'~~?5ĢC44 Bms"F`+VXJGM耐y:{ } 51N}y7Upۘ!w2"v5rSRԒgդm;Zł B 9B0NTǵ]pkXTi3DE@\| |äI?m8ABq~ ӏ*4bqB+G"JGm" ccvXvYO 2+I2b=ڡ'GP:)d` J8]yi j>i ?7%5G09[??co 9 -!vnw%>%áy JĄ1idEH+&1X7~4^cjt .‡M_ܑ@ O) ObHx%JB(l?@a!Q/5G<]"q*EuO|abLV?v}AGT|pt2n鞮 S8D#ұ5%rbL;F]GF ko>&Ӫe(/ԣ*Ia~~:Lٞvt,g.V"ճ-(Q= E)Rcy1+?g=lB'Q ͸<+\v$,EK!XƧl6yAd $69ZU4[P+0'%VE (A+2(4fy&Ǒ)vnckskXLtf7=Z^'-9aHOImvNs izt%09?Fdg7^ԛ Ͷq%gҔZ=tm(  xY[Wڕ'\l?+C[-O>],!8OjĐ{%;;cFl.wGvQ3K(pAibeD1%R-񰲆u6\B.+p5mH策!W,"kQ닎ol$\rKU`x{)"KLEH'anh;ܲ:2XefJ",DFK!A'cC5m;gsќSx7L*!Uh!/b -X8H$Aol~ z`cώ+}Ep^F0+J3waR?*0.%$#6\cJ #|mg%egUH=Ӱh`7oNQ Hoʆ8`'9pΑ w$uD! Vv(Q4G*gI;MB bcPS^t-CTF}6"h$$t\A={?5UQcµeymhT=2 a&l YP)WVǒ;2k?<\Zn6`(Qyɯl bvqiNޢjvEk2B(gobnShS\=/>&#O'AfdfTV3m Lj_*Fve W5"dųh.F6`.bNlef`1mj4rP耂S>S$0mp@d$%4[ Hrt4=Cgmo'<U륺 }fC|1DD|"T fmoc1o֪({;*,>x9h]j/`TO< \4dqd2چLy"۫6y[.-A竏wdW_lj2ï™xGH@jS"/߷,y{YNT5Rn߼F|/bSa0Juli}FutdС{)gE-!pdn^%s9ٴ `.wN3M\3u8GB N-6m_"e"݄'~#iqnSzQgiVԄv~`UTnKnWR3jB&;!-VIs|gQpA/e,(3lPȱ!1Sm,tS)qD~#g1m3rRi!iI8@ޕX q@NdTj:]P3a 򇛶U:tr6E:krKÁ.wqȹ~b zA,q);4F8i%hܶX5y2vRi&$&-E~ V~hӚ[#^0볼79* "1_ӛ._hț{57N٥ $祜8@PgB`U;k&O_W`lqp7!zn$t}9sږlRj_]dF::!}Y%^hj&Vͮ?uQ{2pxiNpvR ؎ɿUYJf\a8RdXF:%=fB_uR[l/*Si(to}ג>)%kOOe.gd16 J"JNŰZ+{L]) l14\go+KD4JY0нo8" W3.=/$Ar7! i~}ʊsMr^j:L'Ct HPunVP9PfLd i!m>Ȫ_KWvdcI,5V~ iXΉjӕc%\ذlTIwuou=imGF,d'?z9)Dڕ9L̉J}O!?]lڟm5)6[T3iN5 'Iv\&Mn`7ڐw7yue`yJ}JߣYtx!;X@BP( *5;1=FO;zM>qn!BYWdVvIv/oDW> 'mI"BlVY9uʶ-HҵeI9Z3IФSsλB(|v1\TB]Fvb<C>[#V,`sf(pŢ:,j@ۍ[ᔵ2Uݖ<. 9TlD,=L vI^1{ ^ڡdI:\ެhuC}3n >g 8- 0ڰ2*PZ%zoէ_Vi!Gy/߇wԯHvTT{V5>fEC85C7@]1"3{Yb_v9y{m+wAPjMK&E WKҙ-1-`xTS 'IAژDqQRV.d%$ʇXa3漫Ԡ u>,ϞYz;DRUK؂?-CHb;JX"UOFf|d6!jzhBԕj/!Wk] A\DVS$^$xP\U%R J13nW.DzFzn*"v 5{mN:@roFUޭ%:S|Js`.q EuUFM͵gCw)`P[& v(~^,!0Oa{bJǟN]^\,B3ͫ_ `v;V/ @Oy5y2YtbYҬK2{z/ aĨu yjoټKx{M?_HQ{/\Xa(":S@L FK}e{@Zeڨ a(i툟ve;K GJ#_B+\VfU#<jC 4IlDynٿoٟQL)P.3߈ZEQ$ "mpfk9=c L]]ze!aٞk;HQ|v&%MNF4Ka'HOA\// T5[ ]4JB0*ÙIj^$hCB5}*9dfԽ ~#ӂ=^Y~`s|a#WT5W3dI2 wgmy5Gl:@b# #܃|w \/C$~&s⥼àJ^fXMA1  ]Ed}?H1ɷ!B$[_Ml-1֊ij*&Bxfǎ: ~^4n&FF=jkGt,Tpz]\ƁG"\✫[C+fI$NNg}9GxYW>F2o#gE}ȪІmG0_EVn~A`=qDe"S10Ȅٲi;^'yxrΔ`eQ[EgR |}Z,.jb{\5NL$!s0S.6 L[^X*4| =mv(^qZh=vv#-Fw-IJ,22K״<*6K?Dr` .V5&p<),ة<2 '8k0"i-r9m6a1Idčt䍓dnAu<ձxx_ Ry:l"vP{;ew (3 Ij ;D^D0ct#'jT>Ց3 'M~hӴɴ>eh}kȣX776ݡR:_ULp;6'"k.=ƫs0 3Rqw6u<@#ط!N|6boPX"U֚E&Nu+ وI$U95>ةAxHFD/1WSj@ĵ8iöD^AdѠ"E$R4DQM޴ǿpxb XWw/9QBNHeΑ^D!IR`/",j(P蜩3feڑFRPe-"s]=A!/eKJ`KfuO+ij^vh,!F10"&&^)(6y=an ҇)a` as`/֎Pm3=?.Ma.:",Jq ** 6ib [3^Z^xU@AO|EΎh5!B*.iE(S{3t>6Waisiz{)$Fٵbs5#"5:2Tu=$o@kp(Ǧ@_֘321t_RNO!3sKه!K2Yx<q#H -)^y6 _( ֹ'M #%"o}1c£X 9b{Y5?kY-oyznw{R'sֺoi Fjfap@*8-'"0\;R-Ri`Kz!p!CP`꣮lfn(HH- z[@W[S†ߟ TزF5iI{Qɺ h;˓p(A'BvfުUhN={,y^8=fZ&N5K=C54 tn@rfhrw\>Q0҂/>+0wZ#LQIZ#a\tݚ.-,${k4,8OQMagiLhږ8V\lhFUT[/KmgIF&|[xXA񮿚COߑ=-r|:q.tBa(Ahc&ʉѕTկ n`S>@ xHd u[4lQ+\ _ooD ڮU k5(n~<+)J `(&t{E8(,*I5E}r؉y۩%? =h6Yؾ~:tA?pJv쏫:YfΌG<~ΰ3@կI{HB }KTYוka=ImeK^t_MUy6vT#nϠgihDnT}50Ut" {$ q@pvWp'N0y޴CxھwM)"ʽ_˙?3JaEentB;0yn SDOP20+s#]14æwf~S+9$EڵMkA0> qd^.38LoN^&tE9:<==`w]|@KUd3`[{_%~oG1-dk h+<Fș3r%/?ND^gϏUKϙ(:KlLd6+q@Dqw!i/g [uvzX/:\ r${{95kxEGI$ȏ?@G(4~_Gi->;Uθ*_;1ŒlC~|uI|5Te(UԯE'BENO0qv뙭Pආ [Yhل0UP? lHXkOYz]"FvLD1}Ci,^BVv ;߲k p+upi:CS׫wa!1飚]\a " Th7362BmQ WO+j.U]1M=%ĺO!P>4ZI[K?gF· GPidN@k6Nf4-m}kXT΀>Dj/srx$ПǾ|v H|N>ܜ+ ?ąڑ̤Q2)q:[jR#?iiZ뒓7şbx9<&!v 9fRNҟ4њ:OЧ,6nA 83.pD*l8j3C?Mq(KH%=S d)=9˽IFeVy,'Uwyqf,+Nj|!$,NCږ_ՅӮbRv0RKN@Xt,kU2&)WOKk W?栒sl\jO*t憿Y7ǛﻜUv%>]Zg) n\D78V6ʎ5, 3*q;G)vCT`#9+*ZJNMs $<喩N#OWZ\P FO""$E럤nЇgԶ̊Jk2KabKԄ~]8o)eFi:4"D~zw@ aG3ԢNM2\H#+~(VVTG+%tϲβvƴ]Xi8e\IRzq% zu\M5d+3p9Tzx0 BreZ C }'&T~ \R9c#KyLyg߈ ̒Dr_Юٙ湪/e2]amɉ"s#*w]Km Z3ʰYB=MZ45$We1KS9\.0ʧtiMX/x7G-3gj്<M[kjBi?VYu3C~>b3k8{x(WG:$nZv$&Kd8#W!qWHn?@D\{*$ϛa _FvҐbEOa6/d*NG19bcZQ78s`BHs߾bGm7ZIS'@6.{ FktwωT>N`32DpqS\*<)6]C22h5}?qZ/-'Zw>mCl8-C)+;- Γ%+wP G){LL!9rnӰRpcJ+k=;% ~hd,txw4Q\ *7LȂ\)rNOP/KY<<vucsg3—,y'kϗ&K4.jU % b|@#RR*ZQ|P}x`~}rYWem^lQ)EPq`A%g&@o~]:ej:).s)E:Y>ma鸀 WX][P~::&6G~ $@8gu_1a`{h6dW"GyŠү"/;4cC.Jz0vV^q*rAZ2sAX+:f{7 9JGJsK 4Z_kWxr8&PEu *=t|7~G'_9[d8J $`_a X.p#>JP^ н_ c~˨nׅ̍Lc-D|g :0,SƂt8tإR>X*f(#̛ lkjˁtf*, -(d -ց;X2]WSAZھ<<|.<2#p_,8A4-vOTAM0:c& :yKUkx : i^N;(!ִB?剡tӲ0KqJOc$U{-Q1 Cpl2Z6xu{oM8/py duH12}ݻl}([Q1~7WRA(igQOMvB@ᵅ2)^qv¤v WfT PTNԕ>?e F|? &KnjQS9s׆6PgLH%r1f ߛ6.L&ޕdèa.}B墀i!e}-Ǡ*=eKO=ޘc,C{0Oհ)sgJ-Hƻz"I,j soj Sp1l|;lDmi;?q\يϨ忇+0rWٴ&U h DIkV8ouٓ86< j,{ m҈F{Ŵ4Z?0H\SS۶ 1anDw8SjP/)qCn*,{|Xv E /86ppvI+!Ai>ʷ^"f-1c0`>y  9g=S:|/`3;柋3c6"~qmeb*Q'6`^A"L_o@-|ͫCF#ZV}_t;Τ7/!͟,,=6iW?Ho~[.!:EZdo)S<7a$$-?k(Zfz9!CCBh xVadhDS樥5_6{Bcޖh"J”:PvP=, KC6pn2CZ< aىA? edIBrr -2 |(kBM@U]Z0d!!'3?VeHm3Ӏn`$QJ M RC~gxybxčvNFXҎe =kavqOn:% hz W82{!T>٤KR;dzT>F+4zY04{LZ-2,%$tQNjm.yeEuX*/s^zfEIO7$>͒<־ YX/a;74,%A{amD1Z![yN&r˄Xr=}בe3$GBkz0D޼X5 r|bEDRs3/YB@(X?x<{͕ a4ggBF.c6ݵ p|if!SBww/)jO(sjuk?ҐcI\mآc #I@IwPBF\",WAÊ/2 !c`l H∢& Mc]t)k>aNJճrZ r/AAwE6 qi3Q/Ղ*#f᠀s=1L^wt%g,h9x!RIKVAeCu]=痋ME^"$P=H1p;͟3}[lRU_iF`O v$x}qd4 Yǯc;;c;Nv<ne&MvB8XZ3:Fkh.E[`E͘rYtǗ۹B9''ë@W7Gy2),M>ytK[VSWuc"lIAwh?_LL(%=̕2q3U]1.L R1B8܅#NHih/ͅ>8;pI&(bt+>>pNDSp3 O3V Y j_'w/~wN昹($*)P @RE ȢsWqfU`k)H.b9Osf ݛ[;<]ƽ5YJN 'ARД'g <>L8ݜ C) iHd/z-H[>&Q)Ǵsky ^\&^!߸a$Sqj HFpϘ{"ΓЪwI4U+rOXW{)YKA|!Фg-$!d~%̺,^iߏ@8πR ߱C(4mP1E|oǹ|,$s$rP! zf pg7՝ݕT`9$CEt _jxgk*VɌ Eza07Srܢ\@4P J"ȼ^;W}P9jDA j=7iXOk²yv&CF8 ?WDvIlABEMA2yaخҖdϡ=f%e#H퓌چ%d5YrO4\+hR[T /G ;[}eB41ɷ\,]S6B#rms왻dw_GCUo2oB!1Ф΀x ulřK󢐥KK ͞[1r/;" (Ag` Զ&@9H0lOZ)=@0zR"_ozvѧuוּ@\y^Taw9nTd, vI~# 5f)l umUEpp}ۄ Յ—ll -b iɐޭ(TpoO/6 PstXF}6~1ooa+i)1%Z+UM]Ťj6,Iep5o{rEaiBH*9Fq9cy۔l$_T9n^`v}(?rZB0RϚM.(5n 0Pg2ρMß, <gzJ QE뵃1erkϝbvqLz' 9jWv ::mΪ$^QORG*3Ai/}/#f=Y؎Mڔ;ʷI/Q2BOFik$/ppt=b$ҷZ3>)GIS"]&׍&o6R,"O sŨLi w@xYm6gm4 Yc ~C $'d_jw;(Sc\A~ فJN3ܓ6 ;Jxd4M%21GwCTWN'{RmqCf6>aQ}bc[N $g$Pxq쥕Wi4" Ơbf3㠃#yekoeC?ov1| C ܺM K <ȱu3bj!n=)TYBsv=Zv_* ę۲pLGQM>,dKȲ_feY՚&jxڼ\aߙ(䮮ԏ>:~ W$OQ¬խӯSes3Z ^6F2lz{HYny(>_0Em|g\!㬞buq1l^ZmS0l _z}w7مO0 u䨝#=;Fw|X!>K9u"LG1Ot-S.%X8 n{!lhCǸk~ HgHb6*I\!.t"yi&V fz z\4"]&[M<`4,_ +'t[߰uc՛A΢x6m_ܒʝ[o԰h 0@ |(oUTTTG[ہa|Ub"IybUC }ur-ң׻E6ݥau2k"m";:ŠTLbIIŘ T7e T՟h' ف#s ̇4sNS2f`fV@[u5wK: ȬW/.ez3O@dDo9F25c83sq|w蟯 "N<{5PG] Ѐ0zyU;f؂9}r(Y\EMzwnQGuĕ UG&-^==\>yd,I:;A(gSk(x$I;_vݰ2a6t9W<0KvrQt:I@.<8G}比!I05&BJɹS/FV\ gk#L!qG™޽>2^bjJ1yOpӺ$ @)-T}eyҟÃs9$&c l}7×;d0y-Uʼg(&a|嶦OaxH!]d"P3-eRםU<ĮjآIz_WK;SRz^VgP-x"CB !uXC!K?=͛VI⩾g $Z){Q9D7L0χ䆲[=3-iTyjv:Fä_-D`hߊG"6rOrzTvYImp+eQgrI4"]=([o5S;KYMAWN)OdWB,N jJ_~xkNy*WL2|û˶_آkЗRxpQlJG1$9S9l5_*^0:3hẸfLا$g}P wrm9N7V`-48|f}nտƆVi\7{Yz Ln7aZGi2f0G/F¥sN"n{{NqS\1j.sU3;Ol~u|R%"̼%,MmVseBզiuO4)K))g0yTҟm{1C*|;Kws%1mF;>bЗ'XzQe쨥{$V@ K=+SF55D@ %z6ruc[+{kSW+ù|8ϗs=JX(%~Yj[ Z6j˅8JEH\!3>(X?HEZDd[`y<8KҊVl^!DcalXOinT+g?.&GIěúǸ@AO5_9Q6P>@j1=x{K1yjvdۣh@3$wmJe"&Ǣ!0CB9+b_5NA{ IӒ nF$ȟ}fT#n`1並2Pxcl`chFn= +F|\oL;>gOKڇ9*gZ@#?ZjY:^cgE޷SLO#Y Wﲶ1|6ZKIzwseENڹ):vCb 5sBKo7/B5%R`-ʇVyAjYޞyf}c,>{+_ ##p?0oɆ13)Ìg$oVQ #ܘR h@~`Ұ?u(.P y|z:d)}YZ>bjA3ܷ;Ʋ[Yax9̈́mhI 4ZD\.R$#15Z₴R?HEG_Y- 'U$S>~rh-{8!n8RxW )dͼ'xfp@?$t!|֢Fw5TµKɹOmPX%٣b kbpy $BU{+UɝVZl,$z:fi͹F._m @cOa8o~k$z'9xL o{2c0\K$-nߙǶ!t( Ȯvj8 %^n5k5̦K$6fQܸhd6O>[Ͱ;Tm0rn\Po%qCFD2.Jl.E|bY\U8nk*R-O3?em Krы[1OBUůK)5)5j+'*;b#0Q*3_*/,\۟<@>1f ˪@AruH~u(k?mpEkIJFmN+ZFIGI"K',9p[O!RN\?rf@=1>%1o6ZJ'>*ʢEg,vXnز#ѻ](hͳ,kh&sDg!V8.Ӵ&YCx /tu HrQh^2wy:Ar7N!(oW'rX}&| )'k44-^ߔGt8(l/[]@RH$G3W#9c~Gf>b*t~ȫ*0vg=%6ć1mJs+?u@|^1hŭh|y8+$4W}9gxjWZ찛. J @k2)ZG|cv8XY& njOoBnh]@÷2KnŤ='A)9DP6&9(`^#@Vj20n.45{!=J[lqkg A[C@6U jd+0>PG251l8fŴ:_R`T '9 .M< \e-,ڄGr?&lB>:tx8[4軟)v r5u5:>"*ޤKмY9bi1ƢDH&Mֿer%i0"{V7I'w9`:95&pUoL *k?XjKz@FG|$ȣH#FP1 -zd>`S h1Icv n]2[J `q s^o@ɔG:8G3OrhwnaA'A* 6frv%hx5`>CW b2G\`mrm)RަxV[AoO?15 )_hma/ג}v'+ϰTr(@d^@#y/ @9O5pnr/J~KVn+[yڬ/>Llk ElD~} Wf]{S"Jߝ3DZPW/GR( A"$eTD`un N1lU[?<0rCUmQhb|6O5/D@o@O?Yk%8LO۔JZb4ƾ@-pƲ8{F*4S;&A8D$?o,8m?Fx5!`JKy?}[VZJ˶Y@ Oxa=0VIWJNc)Yqr?ƿc{]́esģ PlÙvʖŎ;7N2h:7~|Ba.lyhQ@A' O!i4iˣS$o5 6xdvAMv/?{:Zh;b|=)z8ࠁS|Wo:w`9]ҭd/R5cVrm&h'%lM 4Rn|dԴ _ZhԀ'j4|_M7G/=bbC99(se&W7, #K?d-H c1eֻ"4#:>sOXL-\":*DJ!`<=>_،\j%y~ࠧiU^BT9d^?A_)AP,蛤Bx! ݂RCg"H"Z\3*$ӗO119*ހot4ƜѡILB1=/L$_U80#XN`%f{Px^|P=6k} H}')p%?6Md@P%{TQ:B~+6Tll{ s OK!SXN7.l5N#o0IcD~m̨jN _rw#~a*@AH0"݆Ȼx:Ğ`v`IFKЅ>q[V쥝b&ZMc+Sj ~t8Dlڊ`l.0+d&>S7] a:!.hDWJ_ c}uXP@< Z٦1KǢS ݜ*-EYO$K=%:b<кO_H M Vy=&;<ķvo#s CL~*/ jY'p/D"6 9d{waM)ܫKg'zdfzZl`WJeۂ*N%v5jYfm}y?KlZٝ2v;=Izl 렸oL=ZLPUH7ìIgUPdRo_ GJV6B~pJ#[nhEqy8MjJu3&Ci"/IÌNpoAw@cvXF ԑK@>e͎]3] )Zf+X_jh<ŲJĠuQ$_kP SJ4M7"7}:cE{/ypygm PD|:b YV_׸wۣ!f\`tܝYUw"UptTpٮln+Ntp.}!yԇ̾{{r-3rl>"=|Y-z7z"__sqȨ/TȾ"l T7i‘ |Oy|1Z{n<8Msg9W5z[@hhm: yT|v y9̘̌a[ݽKU : >aTY)0`G3Ҙc3}+hUCl2gt=+avXE3 7k80)/r22!iӼ4u *u2حs@Ow;EAL 8w>԰\L䬖zOڣ .^5rr)1u13c[mJ%ba׆9-A-ifly?duByP5a]Bٞ]$X? Io3JCw^4WmU#wwt^grsޏ+Z2,6AZ\. p d)wUDwÅwK-4;:FXR&DWCHh~{8ﵨЂ6 2q#G s5}!IsF}/Q(0=:3|jsROL&ۈ$J{a ?A>Q+5jmjо;vœ T^f5ݎCaԭ 6+erN(IAy S6q)nL,qM}>}[AXUϧ <0RDD.z\C8Yd#vɝҮ6igw.O1cNyae)ѻ J9}*&oU)t/r(Y0Cx]J٬QcĖ9@i׮pE?3,83}k-W@MFu ̷`72u/ʙ|H(ړ&Zy7aci'd]J1׷紇6p-k F= aY9~s_a}-yoL IKNcpLe3zHEp@jf]lo<7v<1<݃?'nX=FŵT%JcokD n>E X,$jj3A|^=#p&u]"U$q; ǼbgфR7|UxunX) 2jt`>H6zDlr>iUG0*Ź߆QuۋaIpGpa{C\7;-xij۟Ҝ!w c! qW|R?޿E|v/*S;W=zߟ2^*ۙ $Ǯz֤q }Һ N$y & Xp23ct\wcwN0v߉KoiS,f 'R9'6+ tDF: Ѯ0X.u>A$mg_S_BgɌ^526aRL:a<+E9f1̰eź8g0ٌ8`S,`l %<;7['P#o 9aWC(gR)߱3Ƚyzy)Mjۡϕү@_qZfvS_rFU;c %bT㰿:NSef0Nyýr")`=LLXoPÊͰ*/Ł+$Mٮ6&Q7% K[ %#Y>Y}̚g&&MiAWRQ,cs;X4R~T^.%1c՝KۂlA9_\G~.T(!Zȯ;ԇrq /52~ Pa+Zd9$-V+x*%[-}y݆F6a.`Y~ x$;۠mI@v['T1Ϗ0?= y+ Y\{jĉD<hp*t%AIT4/jd!lF'?P׻3i!i[wo跜ǝ (bkHԫFmF Rv-ŵ:8X4pGës\k0tW| 'fP|pZN 4 ҲQ)QP]-rjZ8&s;3O9”c0PKW3]-l|RqW|+iy^ Gs C\*8"fU6HY'ిqwnM}l:ݶuKs/w_Fs`PJ.-uJnj;A*#i'z_~0 eI?<|ƛ XP1ZЊ!ugi{\i6/B lxAMvDbt*P%(~hzw^UV۽чɬATB, OD2tE|8h=13xOfVxYa+`֡{H!7-!ғ׳Fm04pM1f, plR]V󢴝bg 4~1;(9jRO;j%&#٩!"=R{$ͻBҮ}xQZP'ݽ?fP`qplSFiD>B|iѴWY%9"ۦZ(CYUWj(C>?~-+mO<6’= ׎S]KP5+_]fFu@]gg$IhCl35ż畃=S^4^UDqvmQ|RFާ.=42Ckyx^|G@ƗmA  qۑ Y-h>4⾈ R*aR]lw,#pr&zE}@ t6XƔ_ o0C*v*l{2#OکEs ~NXi wD[RJԜtsY[#7rC[h#hneBѼG%4XQ7Qm)tyw6݃OL_p!SfV ivwPuUqR#wK-n<'8GlxV VڧJnHXM}㫃SEff%V@TB]ぉ'dLLTØY3~puxgan(J$h8gDi_~ȧ"|DmDI2,%ؠh6t , x,8hMH|MdGE|\%j.i97ly3Qy8YEov8qṚh7%5H2F,TSSn:,'foj,C |$#uuB^ g87f1Q60[#M|ʐd n_?RN][K'(h)Ǽ@AMD\s^\6!)!\L .ȳo+Ҍ5㹉4h\7Ӹ wcd!X{?qt0wY4_I-J19 mx7Ai63;K^F%#E])NIf&U^pLBqlC"|WTHR}h6D6Oni>E]66"n&$ݚn͎wL9@d/\Yȉ31m=~=6{X#Ǯ/E <Js5wYyz!== ز!GMkdg8x 1jp~^؇Oqї+~1jT Yl`kh9/kEù\8y\|S@(kSH\i2]fcoDžaHqQQ qBUv< fJzï{~{8t&2)X 8Qz% TG}IP]9QǑzqj螺Ӧr( 0RLC] L]\\f{f0U}cdeAĘg14ȔBG@rC {1",&O@-4\|_ (DW{2Ѽ,Ju(DF%*Jfz+\ZŊ|bc &$6!a:*g3t!LPt," d$0pVL q,=W7"cXPa'Pi硃3dZ>S3eZnwL;RT fSL{@w*cy}RU4dV,مm+>+GcW4&DN6A:uMvۊ*sRA>&5IK"Oْ$v-qmCd>~tH?k.DL&t ][SR27fw3O/$8:N}ZoY o:p]=yB2 AEyiFz [E~J%k}^ WEB*9 $8 N>o0j]6^e@:TBAĵ*Y&#D'" g]Vjƛ&WSOVC2 x2OIsPs73@_<[H,][xWDΜ"phI)֜ 0>v^G-ݑWhT]'t)o]Bk}gٖ 9d ~uh:Sd @x#>]7U-qo$TK>>;|$#13Hj:H0kMjD{p!}ztb~շX"*LR3Oqq+K-I  ^Ոν8zZI>@9:>fd=1:?ַ8#DNWB`~ce0upb1߈U]y"hz/SM=d5ۏ2 2JWv++bT*Z@a(ڦvcdWCƄeۿ34qF:nÿgvO1V ޹0(3Lm ȉC.DZFPO2 NZkh@l'>s[O=+|P `Y wq[6''?k ے4kra). iM_Drԉ1Q%:*.[gI"c[ಿYySu²S-!@2a#?xnYi]mE.j8+LZ,~͖k-e&_ jZY]:UTCm;lb x7d0UȈs[(*| zR|],j'FwV[=TBO!7sbAnlj2ŏi^d`5yPrl7XyR"E֯P<iTo> Ak)UrcoOS&'7m"#N]8"?5cE9Jж+Ц`d@wJA |^7?'%[΃iTbNG9/Mo\85aTy.ܣيbUR{7Ip o7hRƞt}#6",DjZ5hd7t@:[+| K5 GY0o+=SvUsgt2 5o0M 1\O,p@f'IzQ " `U t/v_g/L{p55]%w]^a(SνK' * Cс(_#`O/xCaN iIqPpvWj]5i@&9$h_~ FȾɱIZ=vBT]ynQ죰~˔xrm,~q yt;5o$\:?A,f$ HQpXGP/y8Y e@oUH TJ_ Ԕrdf=^4u^Oa]L^"r5,hD1xcӳ*>t{4ƽ :ޱ)gsEs"N̏׳2^oseK#c*A}to9R:Z|zBiڻY3is( b-TDc]H pm "fy{Gc9YÿmNx½+^>2 }eMNacz _&_#z?\=E9ov,w.5LmRVUc5=(aK\O }P^"6Sf(CP*$ ❏5!α׾- *ŕvH$`PN/& Fz;: Bj>EYʿeQ&?inA\lֆ|AېUKOm@=bDa1*Zbԥ(q/wWٽy5YW ;2Ci/-ľDO,!Ê9W k@кNUM&YxT+5IV_m"}U7!ڸ M(?@/wmD-L%-W dߔ(v-) +O! \ WBcx5;(5AofrjeFs03PT .Ն{>VH˕=*Z+ic{Z7&knhM#D/l, jΦ?X(8!h h f/SdcjŞWkM͟ḁca&n|⣵|7zUE2!o]Xl\(GO4,2í4sHW#/RozbLrGbvq \93:U9~f'@eb4[X"įg /s FPph? -;Uy6i"qo#*${<ݴ:8ҞaHzutFQj*a b0 5JL vcYGt\/fW2/1A Q|mrSGtLډ@S[a$fCȌ0+ 7%$֌ Iyz. M},M0kp#{TGŬ}mGJSQST4\fMcSWcj9G> .iNb}tx ^wBSw.cMUXl:y"ݓ:Ziί-x# ,P šSF@Onbխ&?jnY5tĴĮ)tur~Lڬ" 뒄`jB1RwvЭjޱc̜ѱ޾:Ih"2u &6qnM[~J%iB#;|snTc}>Wš_*:\W.XUqb?_' k09W=>beAg<dǖSOVi1+΋2yynl߄~pg tg~Nw0;q cu[EUgO%zy;s=\8H#tTkrl]]^[C{ilb)rPPc;f ,mNkq.E;HL=|78,_ݖ7AzR2Ix"9ngQURuAxd])E:&ӛWQ.hWl $`dcQJڽ^& |[LGV9,3Eli!3NCmñJFM58s 2rVh0dRK}rJ4oͲN}ĨQۑ-zį,90-DUtAypg߱(<[k̜:׼?5`&L^`K B ا#!%EPG փ-?7LJw }/~14&Rbl']w6)'*SJ}C=A Eإ\VZ앂V9#c۬[Dx LWWiX#Ӏ/,^F'qCXM3Ÿ÷d_F4 Fq^3Jk ڞl׆rȑpPf0 ?Ư1B;n'tbYxp\83b$OxZRSE&=/r)hz(i҂l;D֭Nam8XV_ |X,*xrsj:&$ )/fa.嶈`jt4'E:{--1T /? IFaaFt+6BK+2s4U"' .E66)ӖPk9R)"'(?u Lڝ/eY7a**yV0mB铥͏G6Q5PN`Pgfq=)$.o a>N_aܯUփC4QCy"1te*`须G˼=Dx>t< 3Cz|zG;ç tdo.o J勖R"A@fiWn@CL I?" V"9$h!2*bKƯ!*~6a eȯU2F a:RRCS #ʈ_^a,v"ZMky蓐URI{)y4]̖Ԥmx`:Zo'v}HCWD>a_sFWHUPJbP蝹I'?:gFD\YfT>{fD~Mڍ2S\^GL4Ȟ&KU@zTL,%gFX䫳dC`E>0 Y fyNj,e:Uթ ylsZ V8;maCD}ڲڒj u˱TayFmIk5}L3B7ޡy;.wqEUoҰb=kDH Іgr̙1yK^oo} ynwBC^r5:!Ɋbqɳd}?i6/#QPo,n丐t(pmFCY(m(Қ4` \C-{$mChڸn QgJhJ-$)MFd,lhad6Ӆ4K X;ueH8nhOЯ% ƒz"nO=2,&pjWܐ}[Qm'S,Z0PFJ'} y~ɆǓ3"׶2@<߉L:j$T}c J^cf?R:}E>+i?}qR|a`bCC.gJlb1"qq̓bdtZ02`0u.IwZ% 9^c1ҥRV}Ja- eG+<خ Ҷʾ۰~6Ge \/.,Ytm"hB(!*$݊C.]U{V>w8\e0E\,% ug+gJO.v{&)$^L@l~@: TؙitO~i9=f^W_rQfaEGP`HRb{R5|#1XÙ$ qP?+pL$HVW36}_BH5B:qbeD I|6V4ߔk6gꍺgvn!斓ʉWAxJH~ݕ9'=^XyX8{5':b;evHK O<(Ko]eZ,-Q$F㡌-Cw% '![aKܿ@~#yTn7ykh쮪XmoiOjW~{ '"n!C6&CɐiVfZ`cC&+i! 3jփa(,;<7,jmv&j}Z*;+Kq !4t6~Y`F'!iPMdWA FOoxEuYa~\?C55zuyR sr[SdG't끳?GҸrt$fyIK4 x<Rӌ Q> k܊bIbAC?dJ'5MW[N"*E|~wCpFυwpz:RDoKE KV&ͣMOrs]tk ?WEu\E:q?$5:}Ю<:0xȻHn!-x E9wDU<`VŚw4zvd3o8*'j!/Xڑ]:0iGw5 D'K"Utpx/F!yxеiJ]bg9@W0kM|2-(J^;hf %/JWwÄl-;2K+SJ%,Q'rC ȞÀb%WAfme=r0(' ȑ b*w^+sXe\Tt!JhcJCJg>rbyѠ 3?>fl$[Xeo.8+ZzU<vRqDteɛb!Q%B2Ε)O24Xp'g哋,%+{?C~k`aexJ,ht =O=?@e&q>Mq휍3(4yEa%n-ox"Uuye(#RzYw(#(PzRPߤrC4 )vC䴌2P;q疚뗒ُ"T7͜ Wܫo{ U|x N9#jiGnhH\A )pk'&^{Թ!k(›lޛ1EmhSݗl_ׇEncR?MXܨdͩ"fwwS &4*̡V᥇[i=slsʆ ELg_tm 'Jg\Do~5,keR|'TylO)jQNMf QWbܢ ;ͤíIF]p܎d;EGەEQ4:.Wm<ȵq~4p}$q&z<3s|ϊgkyd&\!\;gixU 7<9SE|G%w8uljW1{ӽ~9g\xX7 nMX=9{$@{~Ky[*"n!g%2@/p#Q&2YeFEDڼ#3P>aF9&aY2/nq#jT:&sƩD;'ࡥvv 7W3klͨRlXZo~ X^< Ea!j3)8r-V (*9 ǝ(Ohٸ9@6R8E9>u?2OU0fp;v죇iO=I)ӟ_us عV.czcd\PWx)A20PY޶+ |ӁMY\>K 3Qƞ!1"u&aLit"l|>v. \,=v`db1}Ctz孇{:Z@]{#P /&r̳҃Y:%*ucRb ka8&XᰞZIV`H&@},0\$#`V$_JofJ;b΃rʄS&";|bٹ; Dx퓰I^P [%ž>d`'CNU,iMbDΣްNv"r]([ֻ&bpR4 k_Xk^6\#VX@CQj[ -׺cY {Ζ<]jN_39XnR8bׅ Sk\ "]X\k{geYQL,'n]48s3-=k;{qMakwӂ'#z$ \nDО[x1?I3^F$'6GP9z,,qyfY238TlRV_S2dK oB(={Le{Ҵ0dZI NR\S^gCaDh t{-(.D_3K_D˘ ˽R9P;!ӠglLyvFD燫y+ h g? dZ ˽tsS8*, AeecUIt`;HDAS֬k.Ĉ D˨k~7,j3p\L bqL߫|ShC /_,MC?bM)f]#kpwg Nʠd |+ +{w: Ef<#/aǘ:CT;POC`= H$N]Y$VݡJbO$Sh++ v{\Bf;FE&mk(ɟspk m\kLe^%uovP" [8q\,A`Mdjtp(T~J5%@KJߏtn=k;|'n;W썱(2VR'Ց4\AHڶ$|% ayeI-w`[ے&a)ғ? > {|Śp0.eDXD*qH"K[U$rGI'.P8kEKk7/8K/t]֫&gO6GTF(s|C’c ^|qxv;cn8BF@!? glb|^%'G5lϡf`mS^K"?hپW! %4K8Y _Pu8CkB$>Im Vp #6ిFc6kiu/% gQChw.Q]ӭJjL#? @Y1"mc'p%6ڑP̵XKXN@ W(lQ,`mxZ*\̔y2΅Cm߄V HPNh:=m[B<:t~_BJx_SD=b[Y1- n2"GBoƬaoJELz3X̓A" :"& -kX8'6*@|YٞxkY fRN"*x կ{`pIC,R\N- ︱NZ f=-„wN&=qayqZ&w "#Td[\fVWTvy\uRfC?QO%o[)=XtIhIMY_Ly  iΕ&S<80]HSV,~n4 ơ]uZX/X^CKD{;Z)jQK ! p{ |L2U[$jU73R((4Jz^"WE~#OHZ9dv-0M³|۔i&R%6zƩ%ZlWS8v$0?3~\B:.#57 8|Aҿ5|sc/A~\M2X0>ׁx9'/l: ,e^6ی0 [͘DCeѓ媨J;Gh{?xDj)jގZNw*(Rd6X`1%s!B\ݼB4`Oᨏ>?H'p=eƫ[p*]R`vs$JpL6|°oMu lbI+e AWSԠ+' &𻛃}g@y3tcvCogDBn ~asb Ս^el:O0J=S^ʝB8d(Ӗ`i:I+Xu_ qWʠsm1Gl^+@l,Zq6%H<5$3) r/l!umhIZxgpyV*As`7.W9[߱6lM4AjdO=\ӽi#t{FMZLehiWGs;X7"E(rFmUX^u5n}۪bVd4.M{%?&8*'8NGQPT[@κ[@.Jb BC0D%ŗLCVrS$ ӥ~M$I+[q9 #M?v ,"(.4'CFW"nCDZ6ww10?l9Ǡ gߤu?8r]3 K} zj,WЭ'w6wl}+kx܍u_$!FRp4]IyAKsRˀ汄=JndPorsov]DdD0bLȂ$2[\͑\PO$8O- *1qQH'YC6]fro:]D[|{r,68*IdvnvAԳPʈvubs:; 'y {Fx}r)]bn Nl}99cEZ}el՚V>wV=\!DW6BɃvYZ2=-<'$|̇dx?G@@䙎 3Y`_E[~!hc5v%Ѻ@#++P;Hط JmjE)fd5!>]9hs&r]uU*}+<:2 T~n}9BbVc0a 7 i[A>vؚ錔 {c8ހ!:ixӫ9- [.sI?ѷMw J8agQ`d%A06Y1l`΋7E'b A~b]vO}8g|sVI 9 c,@I>Wj˶폕L@ߵ!^$C`+Bo7APGˏ}Ǯ[@F>gP^;8j:?(OSVhh@*:yĩ`-ZKԃ5&m`F\H|b`g I~s`:TN{lF 6ܚ<5%M0yv8frO|,:gRH7 *ҭjb[-ۑԸ4\ kl^Я]4ʖo4_™G)bBO 8)o( dr2q]I萘TLGh9 4&o@%v%}i uHk"DCYGe/8pjԹW`Ȅ ,W,Bz5c |Ŕ138Dђh ֡?ʳ)gO`m:%>h7fPy cU<>:D%Ӫ `s(bg]9+jd~z,J(7 a\ظKoX%5&WAOfLʒH&C\4F;7*6DR0OUc(g{u[SaGKְ]mWSs4<:2iϔ{'A}]$e׏(v_R+tI}tᮉ8w\a],ݣgl!_2hm:Q7 3~&~C S@tau@`{7@W r4ߌq2pGpC Oo3  [lTC 7`_2Aroj[^1]ޭDe$#, SYXpee3V;J"*T-*5~]Z3q'j!9: # gsIF I o4ߐmM^W${-7YVJR)6^Մv^` ;BDְy jG% ?$`p<xȋfkU^6[ڴþKr1'gЋbSWYX$k qaOW à34>ÉIw"i~ԃ*)vU 5@$ ѷ; &;ZtXj0ݕ%@R_f)Z /-|:g{& ,[ .|h?&sqZWeVc yaiEl*BH6{\vX;fS 8[ ac iȡJͧN09%)(jqb.+ ^ښkEbz N,m`1y7UUJZ/ga rZ_l`cJOQMjn`uܤ?l5e4W#us3 KOxem chh/iUE&.өe)NcsoWP6֖8u5±x5!5P+_zqlQk&`'ca|l1!ў<5-=,JG~%}Ì}LJYQ?74]I{!AF.dfJ $Nm6uֵ%X{<f,Zy1Wnxixcw1ҩ?-t覧Ztݣ6zzd6Lg pCf-Mu&B2lfO :Us-_qCAw>sYt{s`xuAg*9 * yQ<#Yie3o̕Kч}jPW޺ݔnq0=ȴA$ݧ  %f2ZbD**=z(EDCPT;F!,M=Ne-(KLu3N]BeLGT-S)r˃>{"!IwڃMMZVbc$5 Aܪt6%r7:.[xtf_EF!s}9!:VA~Ҧ)´MgAr/K iN۱P:?JڕY $ʙtSAmZFq7=t?q6`h4eem!ըE xM`a.\Rsι hf+ 3-t&XXiZC[ݿ@ekr7t~PSSϳ9%NEJɼ^KQ' *0}A,Y 5TrVQe؃~SiV\Y{M:0M,˚ԵMDZU|;`y^fgnj kWh<1 xiL sw/`lVtI?>8;F%t,v4B7(\ ?a % [Z8qTE:,Fz߃!9Yrr߭j$p LYhe-4ANoթ39t+Wc;8ijo{tq+I)&>~4z DKIkSH*OCjĿ(oVm3TMa5 ܛB>/=;K,29y )Ȣ…dt5u?P C菁 `V4gD؇9]2;ف f̄H8fٽk*.[ACTY U3Ʊ RH**t[Е&@!~odm8\V 7Q9VO1!jB"\lSx%̚d J DN\BcU35!d 8PROE}%5lʧmχAmKȓ06ëLrV&ʔhDsgi/g/c$vVb:B%Ow^i!{Q5ras&S!B+! (h[ї͞ G6v=;Ra[YXZUU39בVa&>S fG/CYx4UϵjauJt˧ ݭ+O:+?PSk*rY;h GZ4(ϠX<8RVX3w+*W[ :O׋,`oTd5Cp- !:5H.3h26Be@#R$͑WEz#XRy酉C/ըdrw]11Լ`9zmčAAK3bD]ZVקGp:4abxЮhw}#<:7s!x6rr~hi\q]Mj/mO#|zn&>O.0U;c]Kfl H,EyQvD`rj\5<`]ǵG\]_y>fæNڽ8`Dpj]hqzAуOű pM%rz /L{=9yk{i^H&ckfoODNƚ}bמe2=?2H.;Fڀ<%?:IF,3\Da- z=th )ݜjuu0c\;`偔l@c!Fp.ƞ&\Gq|vhNp Z!XiuXM^˶0Sӝ?`xexS KPC!bs=*1R2x++툑K 7PA,'7^v` ޏDY(i@'$Q&]Y;3G`||?Ow5*fVBy4m~<(@^{ϢXp-g]M#fpL4@znf[F8 Lz1"( ?biLgIw<#TS"lR~g@, 9)hRԼ@TfGFI78SM Ps!}iYTttmt5YJ [CglRӨV36<ޙ_"~'@aUU\#zʎU%rKk+W2@6A ? H 3Bb+L?B ܌_~FXEu_ u_VSnKxp5(#f]@q^N B:GrZZa7I^DF M"l,"kK$fhM3))d…s)oZ@S*pvI֕>)MnpZ;soIrtpKq)RTݛ]%舰&]-RrûrT3Fѓ[mzZV*`jTFx_G$B*@8K0ab:UY(fp_mӁ479S GjƕU C4E8>+i]hrW7G\oz4& s7;Yᶨuƪ'!26MA \u}lq\fꙤ"3<}t.Tvx{"U[_,+IAxFɻ~fU9F;RU:vb|Ha&( C@\) quTs ڢ?^7H..V]+QxbmmQQ3a~v( b+ic?Nj*'KfLbT44>}OkE={כAH` &21 ~y<ߦ:Ũ1d:އooO<!?SK)c{HތQSec\p]T\|S; [VU;Yi>)X'L䯰:3ֹZ9/"=3e)K}|" 0is# ̚r!M٢V+L9$|[nCAwYA8ѢX?lZ~4aT1-~2@afpBlڇKg̍% 4ג't3yP ן=B4!#*o{ GAEyfUt%Xw^|2Azr7lWplŀ޳20e(k7num3'3?Fɸ^W@ IT\](+I0DF+iQ+&}d| {|Z2S[Qࡓ_w<~T2Ɏ]h> r 9sC׿kfDνt8%n@G.Av%~2|["i;8xjq,wIH"RJԙ%. OFť!+,D|T7Ϥa-RG1hW7Q/J Y7U|PsZ\_u~id˼XC^iX)Ps}(1j[B9!/me%M6/7ɥ@nк"{-y^aT)kPY-ӊ(_2u4²UHoBKI@N[%ho!TOb v>"Ř7É"n gwѣ,0hHpb3%fsڝ f8'k ȵ,{kءj\%6QSaFՃVjW}+OI%gMAVZ94FPq]K&\3=JY"3+YLrf} %k`$ߡip/ŵ|;Մ{&y{AZ<ЀPho0y:Eft=妭*.CNNql7wfdDh3h-M-M {Bur`YK*~%9,rn΅Ӱs"t.nz( ٛyky+ _k* 5 <5Ps͕2J7D5&FoU ]7 8K5";hjFa?ɞ+*GyD'rrѬz#&AN;Hvθ zc/55shed)s,`W=hT}P v˪ sK`Ӄyθ;'ZrEQ^,q4ھBpuCb \y$ƐFW= ν,Opzk'JUb$Ҥ&IJ`<)5-Ax*wIaF㻠)ԔHЯE\+J 4 ꌔ&ꋦTTywd2kr\ uҝSk%/IHS9$!fB. uJ^9 ^]S:xFPԕ\әWny-@MITnQIG=GAj׳@>MR{ ܕ@, ʖMG|KR끻TqjݮBksMw;҈\pBy?s %%s˓`a ĎAZ I9>cpjq:c`dHk?1fCQCD隖i 1Oq~v5͎Q8>qe~mI;F'U1)ᒌx0r49n `d{\?zY?#'y=\+ƍbiǾ̤9os]Kz+Fοp}zCh&;koy)yT瘃OЖX􈎄)&AqJ3F(Ha[Q|W+tv2]'>±=HZe鲑j|&$gy˱7$|)ᱴLm2ELmdth P2~=l4Qufxw7|u*FuR{eFBӈeI~mz1w; I팰( FkBIe7<Rm*-kC*pTe˘I b-o_&[ 6:ZJ=&S<ډ0Q~U5S#@p9ȂA_eP}fڼzG%_.w%2f^H^m⸔ZH5mC^No )n0d zW}}*Cfp&}g][Ɔb)ߓ5G!'P.}tii: Z (rPC~t 9=5daqȮ)P=]Dx@F55m%(*J:z%x@P*vD#OOd_ۘylBٚ=$4ȰJKW$]]z+yoE:pz0k o9J7i~gCz/\WAy٤e (,K2Tf9~dCfٕYFƫ,N7J"w05#O|8tJ4׆h#d]8e{0E^Ϝp}>ypw DOY8@4H^}a_zgEjG.!>6 %|mL9l,AsdG5Y2&Ā!^)sxtR7Ϣ4+7t+}0m=PtĤɔI!z6A5ͭ2y܅-t'#4 # >!9_}wQ+sj1MNJ P#w.rr`ǘ> Y0ж4fT?w:*/ۅ %-uƪŢkVse0_lطϫm]mrvZԣ^mSQMVv_6/*Q)sP.SӾ8L#ɳmG oD吤՚VC`|{xGfI uکj(m[8} /CJV]˚79[0(p XLD ۟c̭DC =q 5ǵʁ!4zb#.OZ,s4ra*@^vV9$- d/>\5QVn50J.jCuR7Xޣ~Pvm"AT~p RerÞQS'&-1d'̼wwT.6R{[ 9R}̍:xηϼd)فwL+`jC~@O= `2sX5I+wTb`c{VULF{_0Biu֤vY52@K9@Z>d6Z^=wF~ݨ&bN,C޶KݠN&u|Q٩(r%-@΁4J Gf$AIq ŪKAcj Cl'/$e:{%x:uܱrIV*I N}f1ij<1l; ZtEp`v_?v91#,ç#*hvΘנx@D''b %uIIK*ArG} -XA/- '!M,$jY-Q]dc4p]Q((txwYD~z÷%=t5N(2!xA;WUj/md;1iT732MC1 Ae{,N|.|`uBĖF (779I9Q6!0Spq~E+r!yZ1۝h~@Qva(?{5q 嚚u)1 kp1[Q`]Ddu4S|LҀ̜`O!sketyd nuzjKC^eE_z9Ls!Hmn.}AּsYtwUֈBeѯXb=m<‡LO@Q|MPBR| ,9 S9U,|C5lQKdgȉH:~ (:Ͱ>pX#'z?W#d͌;s63NGn 9߳)+)v?PjieK -j Wg_Uq]a bp;ի:pD ڻLo$}b<;]rpPxE2jlYFDK'dzԲ*{T36AQ<~؉xhٜtÝ ΍u ? jՋ\WCj4s*n_csmRoï@ m 1,~Ʈ_i9'i_$ XpHV)+EC >ӂ~eL!i]D'rDT [& bJ4vUػ-p1؊ai[J̩p̩ci8ӷC+" OpЮ1Gl/ZN6"!l=e8eѿZ"`O_7L(g?w!:p-[tہwdM<RP:o`QǮYmB'g^@Qx=fV3|aR[Ugx)Wg3-Z[{{[(8ٵ6,1UT#L8vcwNmoZnŝJe`_sFIqBˋ] ju/-LPh]roRCLө;bnKY)u67I|FÈ^CE^z8~b$ÃRM-|ΝC>{NeAE!4G[;Qm3=V/|=:h#Ah6'y#D|[kqe>b?9؝7&#Lߥs0\X [}tZ6` Nn))vcC#r-`!s/+Bg-Q6 JJ]}n.\SގMV53Ys5225: Cxfʏ_+Ѫ$)Qk&>njƧ&wdX{e kzv 5ඝ|Fԩp4~ H\ ZJp#]  nx6:|&s>-2v-:Tt#@#&;2Y<ζY$v'Sɭ~#]&/?4sh-uek(01G5sjEpuDb ͽ c/ ě>Ii!Cj!Y(3{) ߵ"`5aa=VK'n)[qo{6sZZ DU9NO$`83x]@ *3ᯆއ~L]!+ZAp2w [mHCZ` (+)F;͡jHԦ|4ӵ[(ttm(wq EC[!_H'2OM| !P6.F ׬^’-`UZwN8$$AL,| y`(w+A w >~ k֧=Գ]&W `6淤tOK^$Z{QCDT($g4R,]C&D/ƞA }DiHH>s ^l=ڦ1 *V^Tn73gޥiPshgg7>WyO12WѤwpqGnY9N J/rgf5V.wbsV Bpy un 6 B"ͽq1TЌAԿDu2=:BMZjrQ$L VO"Ex{fQaP@o6ラ1/geeN݇??\SXD(r KO>,m I;v xԥ8lv5P;SkTGS[<xPgECZz 82,>hl@aPYH!8Fi;R`ZkB w1DcK+jG1Q¸yjJjNnjpƖEЁ[g:)`3$J/AJ.C2M? 5F>&PxQɱp'šZ< D0>=U3t1\鋾#:ĊASvPVŪBX} {֜\*VtW`2vUl{E0erJmihE\`` m5(I,p$zvi|J`Պ;Q*&Ф;ѓnf\V<(%k7Pl;X2㟖0!ƭ1G5N)J.ԘzȹQ=^qeTȯor:go}|JRsm TSq)z`EaZh mQVPfB6/`j9fX£ΛDW{ܸoU+ƜXnD+'F~[ z"=SE@7 +{%i(CdHGfQmc{ƵEE9Eo kG tCh`*? :G<@G`k aWRرht#-&k&>L!Pk&au2b +B)yr):f3D[P_@طRM9;įp==BµK`@?BϤmqZ|o Z,KU,~M@5BP"OǐUoi[H*oE8?Ѡgj:]soMK}-զMSb4Rͽ5;f5\h-{,Ý4! @942c!A82Lx)=6óRd ]S0KAõݸǩGSZ=ͼ봖w=bE(ìܳt>s?82DB)IקH - 2fa4Ɛ;"ĥW"oM87J!"I.><jK7x[b⎞f.2:`Zz*l|\̋Gio}ͶRii:i#wMtxhGrbjW5ceGcJl{Pѽ862,À\rSǧ` qr+{w%h=󴶡f?79W ,A릥Eɸ]%Q*~kQ.-r wPmϴ8>3 \}]JawJ>AF\] 8OO1IK.BX0/O `#~M.sbSS` lX.\yt?w iU>`էDѲ^$oIg8Ong,3\PV9z8xN7e^Rr,*UOQwڿжw >P=˹"*.MIԂ3͐mZ'n?^?37u8M'mguxn`GfR+Ўٛ^w~Jߣ38q^;TA4.9D4]Ȫ H 2;ۨJqqh5D.hU-1OM7J!c])7^amۣwj?ề̴x=-\Pc17*9~uv!Ity;9mHG+Yv3ٞΎn_*DFBoweCxzX&\~'NQ_82&}gZ\ƲA$HB#&z&ˁ[ תƩr.xUO9AsGq0:a3RgUEg"Tn'Ӵ\2ɪqb(YhrU(E!\W@K qLV0F'^ަ<+N2- AL"A gE`?\p5+}Yia[2RLM\ !|}ZѳqȻJ#m0Q"I%A!W?+mRWvStjDV6kLW{ofX WyEIBr HΨg&P *q|rjE)\~u=JTulC}I.֦+O_mfCSMW}Z?*hsahdk [0>USُA Gaᔚ>\s:ğ8pmLRۤ=tR 9۠ي&P,@| ֏\+NwK[X~`ŵXY$Օr$B5.W?Pǧ~ΰ%^_xFhћxzDu_A}jn#DSQWe(ҋh"(ݯ6bv}:wqcHu!5 *ˆm!oZh6}3QG|%NE .?5$ G}IР AsZ hWvYcZO#̽ZÅ󧭅0sHRD!Ez-Acx+m0R]Qn.zZsQudK~0a/Dݼh,  _/Zo ?"Em1`GdٲրF=^_ S6ѩHɚ8`O#(G _ϲ;B+0bbBK/:i}insҚ?A;h*[~.aTdB[e<|yyXNKWczWw +σH}K? z`4;!zXЁjJhG% x83TW"sNZ(AOfIɻRɔua=2٤2vm4:% P)ZQlxdܩJ`7 mhꠖ I$(C'COm'3eWsߘOffK nGL _/!>p]砚viG׭$X? | 3o6Sw`̵KT+K-R2 kub&ab̐yM34NAǝL>Q w37ccCuxC}tg|q? zWr7NJ(T@[-M>Elr#(Dst:Om\}'Zw%I'W3\&R[a_ z 7.x@s1dBOmoZA' 8pI4:xvM`ʷ ˡlje{4x:.jߋY,Q8qA1@䅌[Zb}3ڛ_fxےHbU({,y16B_8PɬM5)u  ie(7Yk`%1%9v 'OP4bu9 N 6`S0aܯ[]LD3u~۰L)Iٝ޳Rwd탕N|l4Q³I.NWTe:dC]k%D壷= |r)@S"J "NJ$O-^p\d|~M|GTL}2T`5vawpЩ8Ksh7(%%vm2bJ>[{褪DޜGŽ9&@ѳA\.F <1ljB!)R:Wb!@riSBIva` v˓-~Itj),҇e].EIҼ%C*tт#W 0Lwg(B ݞ3&L(_t79PN7 pl}K$t,8|z_;G1ea;^@XerΜE֣+A"$"ճVb"fSG5-#;;і#mQJӞ<[?{p#@"ɖkК"HĕI*S,%s/׿Yv8'7[`OΤ)|lBN0k=o"|iKcdqE ԑĞu,>h`+A+RЌ<1n0+ kPQ!wANZA YW*V4 7»>+.j]|GjҨ!-;C'Lu); _;ڣԨtID/-J#R`eh0~46|ٜ5Zzpӡ k_-z埍}v5RrG3VF${蚙Qp/D\2׶z?֍˗K ]#XaP*v[DR%{*^2r&gi7)4*-!:׎I~ ":Uٔ!1k @=j_j G3P5f#p֙Xv9{sAcoԥ.`iwk ty |]V1+8 ܩ,Hq@T&/z93z4F)W_SErʆ$L!RT֔RGE$US$1 Sa)LlV ,ey 9J_ [%9C:vũSE}v`v:}W#OC9c49J= %ט3gL I};_ -NQ儗zb s-p^0S$5H"{v+y|9Ii]o8R mے@.w{qd r˕ ӌB`._VI\{8NiS6Kj2LUl bZUߡ02Jc#w%pQ 8O`WFR0(TBUQìm2GV7?:3bDw  Kf5K%p,{OZJ S.H'}-n'@{WӃ<>˰/0dp1Z=J|`( a+mߤЍ\z/nqA)hG*ǭn!ŊM֩nU3;_mJFMPKadXc9LTV  Yk+kòM_~ӢT>|7a?;1?,)^A7!EQ@<4I=q'Ǜ}1n#eoUxGbyUVkx_&gC)7联#:%#Gs&.AI+DzL%¿Wl&#*}sro:Yipv/3>zA EGŢuJ~v)pB.%!QIO~"FIދx3fI/x9ʅ' &_n-:\4E'oAoKkgIϒ4~msg\b2KuM(xbD>*-@W1F*ev[2sqL OOO{( ;Q*cj5mFq{i$Dc|kǨAE0&c;3%F fts~>ϸErޮszB@6Dg6ڴ 'yߗA_tq;L+}Clxt2LWke\t5DӒPO]->Zs}K#D HEث!׏Gjѻ! IEvm7(X,|yMILsҷC1@'?Bߋ6{>wKY#(ږ0rtyPS(Io5cpWoGd=Dj>[.ȗu Jt&XvlL3މ~@ Qmʲ* JGn>e\f=fu'}8ЯKbZ- OI.E;: ky* Fi>сլFFqo0D;B,Rg@8ja @yhh?y+kN|1w +fL߮M [mČB;"eJ }\R) Hr>qԫ"$ ӹ{ofܐX"\Ȗ(3D<0tSKp2Ӛ}#)+:b 'Me6(ZyeRO0ʥ}شuENlbH#S2Y0uTI^7e};Y % 19,4nbMz@wW7doQ%[8x  )ߴAwʤ)oXӲWc;9 k٘JzE!_@%/o$!wvWdp~Mb Y <<}+_{;(1'/.IJ? cd)pZ{] sow]hC/ZS8pbbO.%ئid6x,«V U#>@T%ܢf=ZkقĀ`(\4\4HJZfI"dڹܳu2YB9*\:5~1#E+,|'i~T>tj1K-2*":y.H" <\%yi EpQ8`2<=3^-LV`{-_ITWQq8m;eH UlYG\EiVF uH-O@F:y$f$AIe7'fIk9vcQ6=ر.uĈ>]Qʦ't+_oJDY/ L>Z}zt9{ ̃op)_rCSaYfn&Vzȡyx|’aJpzI_q9: ^` :}6RСQéflw:E2p}g%Pk,$/յ]$qM[&PBmN ?3%7d] "^ _3Ԙ+Ј8Ju_b_1\$Wj﹜7fwkO*qι  S{Ok`Qsk؇0)qK/;`zoRV55l˭t\6Q9 6ě: &*r,-guG`l[=@B)ZgB2xwT ]6jM fUt?QﴔnM>*Iqb*/̜7bc@!o^KU7\ "Hޑ(<:Ɲp> uK{wg/'ړqFlN1 JV@z:g:R؛p@9&\/6+C#Vun ^ ,@Fd4# pXᆹ+p㓤l !<^uxP A3#3-\$FS׹2( /ʐqy}htQPp<t%SEMV7A$[oG>8{̑T6#u@ Re>PyɰN̈́?ew];?+˛KUs޷~.OO ^xbg!ߓзѼ5؂qoDT0 sk7-SgOZngȲ9 &><~*LS %Y\PɳȾRӰaOkKk;C,Y#?3jrpyؤ?00o(CC]ٛLNLo/ImT胂 |nqi D"t/L3tvb2=|o6^N͇a@XIgtN?x `3", i T7l5A-OY}ETyq$M@oǿ *HnF=L]i-LZb0%;#Eh}1ZrJ265b ~AEb꿨YRvz6yOGӻѲ #~Z_C1". `Þ*"|@_)'>'EW~*0-2)lgVvn5h=DO2+& _BBQ}sվ\ZJ6+xx6:G]Ao|+~H"lR䐩by! *bi.HWroh Gkc|Z@ 7Ku>ୗđvt!1$,a:Koqo~2%6Ie7_YԔWr};% ӫUol;2b"%xzaN| zGy=8ְ.z}[ϛBeY jn|bT^k=c3ĘR= DW91k2aa*-m Γ|m כ} `|bq-kp:R8w1 w]rBS&TH &Gh۵43ruP9^"*! u=}Z?%YKO=tv؇k2]M-hzdyO,n:eYvn)9jՅ R΀ЂS^-m!j l>BH78A:˱:jtgYJI[áφ|FfA\"k[7DDvqZW=NR>ISr"rB"9V%Y Qj.,`ۊI,\'?c&J%0<ӣqDPg_$9F'oDjH/v}T%)c"fPP}Ln˯F+`vLI<%WY83bhΞ $<Έ6mL"XCdV7=wK i>njSӧM(͋zhyIhrםMߔ듴to=Bl{PI"oq8TlZlW|$ DY"X8<]v% )6ZqWt`9;7*UeBʻΕ3Vy]Ycv3-D - :[tV̨IbWwԝ[ ÅlƩc=zy g6^=E3Wkjz()2;lK/*i@?MM,e辪 ը]w2e +Pa5AZnbI6h"34.&oc0oVQ db2H< G4Z_;kR=+Voh͔kaŶr4񷗯<{𡗍ŅSR#wzo߃ 2..PsyYHN<1}4~GzKD5iUؼz#=%|xzMQI=UCʉ&EW*7 uXNѮe4%^ ZJ\G)zg-кIP4bAyvޝy^TE{ąٔyu2^C/KHޙi Rv, Ϧkδ|\v4r>]˓|S\_OoTz;kfm.vc8Do)TKus) e.D"XtRCv^*VIx5ioDř'r,2nSבٌ1Ɵ {)c CIPbY[LW/}9-|ߡXB=sO"4n+~ # iK?XCk%|i µjzBb9lM>o^ 'L=v!HЋ^_ Qϵ,mzX#$! {\B 4Hv6cIFtL&8k*B1i8"mebD}Z ˦Z"}0R8E=xeh{G_}Ã!ޙ_BɴJH,g1р+;iK垡lLPUkԖ?mgVqrFEEuV$'QQ^6( {f\j]va$=1`=~,V|/g2ҩc´*B4לpI46SYE@;+06:|QՆ%Gn]rɒ { y8-eaႦ @sry @?I5ͮ)} @9R^X&stw処}Mi&n4)ꟳ'\SLO-DD$܏P$%,^mOAx|*bz Dœ嫘l;+{f9P`^;;F) PS#I3`3İjwv]e.-r15|l9{3N:= 8wAlJri} a81)DbV#T%kNz hl!QwPjH]zKO>IoS.Y& hpx-z&ԟ햩w{g]ANkqX)=He@+ "sՄʚzf\T)Bl5.s5~A:SBl,tCIXOˤp`^*NaLpx$yQ9 ZG 7֟3:L5 @8Z4u`HVG 0Y,إS`}w?m+{ee}0qQ XBM8mWO)I%Sw]cSJO~T1׎OauȷjgL\{WP"-5Yi;\ʜ,%d;US+u!~AHI~ j$S\Teh((,-}UuePOrᒭc[7 >W جqhܳFD)FQU#m4on$h" P s!tS[f߈'y > %n~Ki|mF k.)"jl#:8ljXG .b" !DzQ&n] res>r<"K,Pۜ34Ά܅8s~,"~M I$cS,wNRMPD5×nX PN;&˖}qQPߞf^i|Ig_\ nvOk"o2A^bP[zG%ƴM t;M[Mwtwza3R:U(j0eTH}e4[yVeP[Dk*H>b(z8'-˧/;*E< 0"—Y;PH!0RBX5Ye6~j/sde}U3v 5qgZm608d$'f¾*|/&3_P>Š4"x}={0e:<#uiԴW_JsfMJdte R8-HB{Ar\H6粞hF ?5 3¬)[n._-꒙+ G+^%;a!0dd);-]K+qB #UeJO3:@€_Eb\aqMqe"Igib:D/>k T(FBp|ԅtn-[7'm7]> tCUJz~4f( >Ȱav"“ˠ3̉umat`8UQ ImU]m35=)F_"~RR'X)C;;lVg/f[aԷW&{E5f/ZJS,]1:X2q(R.A1gzpck 4ĀD,ؤnʍmBebX% Bh$TNVхږ{b=V>PjV]0&6bCP zI,VTgrl2osP5MoBywr=2'HB]yi%#Sy&!7#rO;ڣx*p,,*Yl)!Mȍ++ߠts ixIo~"h@B:%VsQu:Q1Ǟ$Y7d+ٖFM rBv"w=r -B %{r#zA^\&6oMx 9FȦx,w} XaeH4zKl)fO KR&&'¬GHsFy5xcJW}h#0*UIav`sZw8U twW"VoȫEzK pNw~,x#G)^&(üm[E+ CK3i߾i:gz) wSy4{>O{^ N_ko7ݱWC%J"OuL*5>c3rxSީ Ť0IqXvSc;4 eR5Ti01oS=qmWF3UsTX)F5[㱹ÿXزmZ%3)fMB]oƭ`i@  V֭2O=6:]֡)٧rhў qdoQx9Kr*Wwn*0EaY"]/xys6E[v(?jAKc[p{02zGbWhUI^BS.IP""_HG#d A}-E03t|#v#l+?/3;A^pcۗN,ڝH)EZL٩ߪ)y%`߄n׽W*Fw!5 E5pmZG+墔KP吠t(3}v( 3z5sc1&cnNTj>mLb怃P+I㸶`?j(|Nd x/B3Hn(!FqTdchK&[8$.ܳ 9 i WQE߈E%F@kj;yAw}z-=+,ΠA &! JRJD~v\=#7 W C_~nuMPԶ]W6DRK}N2&Wgz:dWYn4v:Զ c78y5z6f2r($s:F^7҂Au@Bc; -*[8uo<TjbW[Jc@QہB!/Cv|7CqZ|4o7/!H|Ua]Ho1<kHgӨ[!9:sʩ L(R̂~fjqYV _kTJ"dwve;rpS6g;i *=Kxțci%3>"G̬QӶ 2GעS5GCBR-8#I%^~޺)8btA]mU0[ >JFljgu{N-xc49bY,Glf28!C1;p Aӂb}+ u\zݺYvƆz6ǺIԊnl_g|^Z. W~h,HT\٪uQI0a^z"ߴ 9'5nqIokwbBJe@pf}&Pd#EF_grE|rה>۟+tAKa=/xn'h7}ϗS][)+wYY =5(rĊ>Gt9EmѪb?-R[FXxaZ_fBS.MǛ0I^}jVjY[[0yh7Oγ<<({'\_#e:|j>՞PkNܷsSJHD @(XEU#H{ݱ˼"= ԗS٦2((R3:c?cD^u_XKNҚ5O; Qh5F|W;Ұ}E >cXs"cv?m{$_'3dŔ&ܬi]>@9,+՜z)Ĥ}WcL֥ d-95^[EU>D@rclO))Fv4bXvTܺCUuxT2%2Qiw /)z6Aue.~YvzۃO[s@N(_ECw4LCmryIv;nb%Ĺֽ2Z:ܺ6D>/"YRRr|/52s d'ItSð`5{ ߵS}Ҙ-rBULA[.?}13RBU+?7l]`bU^aSkå("PPI+CUs!Ph,g"ocPܬsUldG:hQ4`aPpΰǪ֣j/S]07㝠MCJ/3Wk켦vAͷJӖ^ D!,-=!K](i|˕m\}<>kiBUZixgI3ǀ/*\7`Q1 LY 3%dO,jA-͡|[5A79K'Yx0[co g>8þ[zRyg]7ё%Ŷh]bBS&CWi:MLw?hדlCIˌ]LZtPbiEյ_EDK: t7+j0~B&=m*ᰱCo1`Zg bhMε({1;8gcͣ+@N\göO k17YF >,'zk?׋8~8؝U֓bcxTZtmLrO@(+ev,/ԥ0 Nm #mAr HWϩ͓#BGiF ZR'^;L@ 8]Ov{R/'t'COu_f!Sg,A, ]hAD6YBlG7w(*\4œ\9dSNN5)MIXv_8O4 Jr 3 מpNRy±c+ာMS-jf ^g"4GxyB˺<8FנF0.n >x2;Yճ5]\ i&C)T.XcC׾[#m3v3 kՉ 7DӺڅƩsvpeGhF4*$.bS2{o9xBf pr~F6F@2]+}w޹ai周! l()Kp~6M߿`k`50t? '>y5׷ŇRZupsmOB|puHJCGj]ne,Ty1'̇wh.Ӷ ~~)Ky=;JMD/$I "w? I@dxsӈ^t0(c{yu4"n&@-["L:88Us n7&8.|\\wOg%r6.b ݳijb:v>ɠcxL^ݕD=ʤ:Sb2 o(}L&zNMoizs0[+ztCL\G6V<BYYSX&Ըt uo|~.Am⻤ HZ^`#P'ohߐ(Y`#Y2w`&#LܴS(= @v|L_[ap06ҨV4.['C'Fo~ Z(_#~(u/[w&d3ԧ<"xDcRJ+j#Bbf;:lҦ_a bM(U 3Ц iv>zܷif$xǔ4;+`/:qΓ,$#f&9☰HS2e袝v9vЉCvt"Z䑩s~Fh23;(i[O3_I>6s#9."b(С'> ?|Q3 q.;XMXg1vK!"qʳ[ M.U#%0N|Qbbqr)a#uz~7F D]AI>CK<807lwF#Pv:6eZNfrڱ:(SX |Yla Fof˽aKh_dK_ȁM7ㅉ klz<Ce#Yp JjrBtDIu)agKTP=&eOt_r1!˼ui,D;r>peüuDDY4i7q8yF6k<EP&.̭}P!}2vv=⎺^ 2a)GKjb/}Y3GAO^4\1hokË2%1NCݵ"$3ҡF*-aS')tp$Yz.DaVM&QAvy3Po» X9}yXƠʟ(* lPF_OagW$ / 'L|yrUvh^z6;-9+{0Цy_/ҩܶ1<$ȨkuU~Z>a迿 /ՀRT\#ӾP|噎Jn˩UKa/ q%V$QNM2-)@^"w}Bo. ",Vy?busuTު [AۇqS.jKխsKKӑcCɭt}[* _za.7nr Ud0XPʯ+vhshLj1:ľ2R[Μ`.Xf$Dϥ'-2gQJ,sIes.O\ǛZ.@w0hZhn쟳/@[I?  Xbcazj^fku~-%;͠}A{Id{Z;D6ީ fV1eSf)2hCCNMP`Ț 7[1ni\]2_,0EW.unhB}8 Nᮍq9yMF1gj9 c?OUs<I{ 2ѻK.Z,u[ca vMaϚ*`'%Gx%u̙Q޶'`l>-BJ1C rŒ*){6 cfϗdKp|,XӁ&\-?0SȺ^ (K%fW:4vu0ArmQ3\?p}VuYt$)-_)8|鴄8]!JMtf[ba>J E$eQ *:Gp$qUP% v D[~ԫr|8o~~측RP7TI ֫ޭt,8B*8/^BQ5XOu'ḙt͂/,*TgAyҗ9Eg`qZ(l-v'ł)A>TT㰈VE,6d-Yڒ%!7*wC6XIb~eȘ7 KۆcFge0M_ˈA2CP*$/G ӌv y]F3|g9~G_^A+ o] DU%kζiu'7:yv+ T'ە+i)GoFʒfL*%%<?_e!)mPKWc]qq;)ڀђGW[(.|d0tT{R \_=o@⊆Ta7Zf7=K/b6y YIx'/ M#f{ $7 wm83@7/5ΚΎ+OK frB|o+'FMnt9Nqleq')B" j$^qیGCww)i8PY]٠ego/#'l?v 35>qR=&fP,>֍|c:(ߪx{|NϜ)@ay?%7 [ mȣ B'臕W;,#>b Ąi o5N!06) =q)"1a`"0^W .20=n5!)DZ#_ͩњ!?B 7zZ1pgW2ן=sP*0,_Ibuq鐏<0 ܏v4δ?]>a(?d&R_vS~qwu@q;bΗP4m =/$:feMCpcM#I_s 4|_g[OO4},OLR `}_=9*+-wlpQ~_Z_{-Iwwk xԽr7qPKsGp>WM^7H$-߮h &KJ/U͐.l>&T7b%܂_%,ɐ ^ C!FvuQ×Y#N:Jƀ if^^ JŲTPs`.G$˰B@'SCQ"b;jAk]ysUf^MۜK&LoR"yORRlA4aϷSRsd5ԷƐUrIB@a%DJ=#eXPeGkv>֋`_pai/ui5 τQ Oɲx]6YYɮu_-vF0{ںj;y} u {H\ 9CȕJ hUއnޔ]&`Fÿ$㠮emu. 2 ؁ńN޸+TщlщՅz_ +'z3u>=5yEXEyj] æA7' $ГfyשّxlBkG+[kSxq/ލB@2*>ш(jϤ( 34[9шM{^f|@l聹'n 'e7FKW$ EA_%QȈ\n$&V<%ȁ8j=O)OQ 獍Fj4`M)gP۝BSjP̕O? ?8RdA $.SVO=Jy̧4`e;Q/lrxb&!nRp(Xm}2AHM%sQVi()Q x #t st,XB_?ts. <̕v3Nm:"vѲZao$31[;FuI'w/n@4 ʞ䃏ѧn.|e[QY O),yHA*zϡW=+FIH8SJs0HKF$h1DNXk+TP=6^?Z{f: )QH'AZؙ,!4V#'+N+<,GuiꣀƠOJ${Y>{h$DH23 a7ewBM,˲`(9Wپ4yO>rيjr|l֛8ݫ&گ6 ƃ/m9 XP+W+K|\nlND'׼L˸PsG[\+AS jF>TJ6Z0tzSs(em> ,H}C:6kT+πH$`FeH,v(s?7Ĵ=OE{:аh;.g} H,6Pnjє ^+Ęc=(dL4u[G_.3(i-RoTLm;&0\; (/'1f.xձ'/;ךkKe]\P7.NkgrU5.m?q)Y!0%tv#o;ʗ,X$/uOħbAd)^+h7lC57.-Cvo$2)w|Jɽµ'={A8S8VQZznצz7tfg(tc {Ri/y9R=]`@7| `3 N(2⼋|*?OC)݁y $TO}Dd.9љ.1^zz ͭѽ6W,N>p3"!%.ƾK IViٴ8Q鏌^^`_ZeLu{Nސ02u؀v&navts7 ͎\%I Qzڹ]v=GaB?m*Nوʶ3un*pWlH*n|Q9!0OB ⺡jBv:cu6a[7rcN\6oY#i\~u(/-gAEXvRhib"]>'E?w$c5В .N9ٿx" LrT2H@8D)x$P {S˱[ wK`rA˪aq|ٌ9XW,~1O!Vv>qMɿ&j)Kf[s6rjWԞ*#Cܽ/i|p0U2,cdΝ >}B:*4_g5+ d;9T!~Ó׃0-;K%E {){4$)P8|zlt܉ < py-|brV2߁+oص2EtF9rldW wC ˂ Omx&U5Q6p"2~ӗZICǧ{yzÖXh,eS -0]r+2q[5`V:F0k[~mX&f)Ǽmjwywʪ;_ßts/g􏦶cW"dfT=} _2fo><(#;r߇R<299CCN/]g1xlX'6$1"o Be =B$< BY\SeF TxQ{# ~ϲ8:U*mjB G$G1~yԝI Oi; Ish1{1#G qPU}L +C d8T' 0xPk ׳Ʒo#h[YVګJ^MF Z:ɩ%DaXk3 UF}r [ߦ(9`-zz̲Fm\>Mi V-/^/, (XB/Z& Ia`L$[NweJ Or:rDh8 I$a 3q׉7GNQŻ^ w3d,xM6ZÎg Q蕂n Ojj:b"ZXl,Lod5{8p!p-#7bU.JUop?$ X;{3cK_cψI+~s3d3 `Р>9!|XkB㨈D̚XZ1уfB/c1/R?Lk,usI?ķjܡc++)L:R5~m嗕>0zJvV<~e  ‚DWm^؏l&k͚tj&h2YN;؉Ye~̐ė~ 47bm6Mhő @!|0ƀ)-.թ?AEIQ7 c{Gw JߟAk H_re0Ak6*xs.+dyЗr5Uȍ>+m0fo1ipN#`JuydZ o.rw.NyACD>o&ӲC!C;h[<TF W_z3?i0 4QAtp+JT$3̖\+IZv RZ/(`1I"dEGb#|{COU4;% 4/pv[ɥ`e$=Y@AKڅMstYR`ZTfe+]6[0B0' x f/"2Zd_n>"Zʮޓmh ?@>{}/n,aCX6₟Cs}NdrY Y˧LlGS٢Vl輳uǐͅVQRi$~&-SN45bAe:(6 MEY6jeHOP?^ "0i G̪fz4ƥ$ѡ╵̈[Ȏij`)αD[QQy;*Tvs烢N1+i+Ca%c{(ߜbab\VcA6>%)/Xu+cIUo{ֻPc枳wRXƻ6P6bgzZTKM%  |# ryGQ4`{:g6($grbB2? UѤ%r1$s/ۓ@ %t3eMc'x)UG]\%Pt2ey+cqmX3b:Ö??tE \B"Љ,œj#6 4ڷ1xh*q_vXj _=^ rA+ 2\pޱrսFSh"X߶eE[abWLu[z̮+W0wT,SY*2ZʅC$et܀-Q/ņTNo/EfB_.%\2e"e,,%? F`.4-r,|3#*1u -L̻]*cժ?A7PItC2lv83WsL[xD TG;[Yh†8ZrQR|oJ2~+d0,%K? P" {/vGz*OrK&h8:c2IL-? %eʶk,88xAI9WCwhp0 ⓼=QW3=ʁ))\-Ug `ki[$J Im>'wEEQ)Yb,J/hmrsp,;;hWqŵ 7P"[msڍ].hH:zR7Zoay58gC5L܍f20qWV/Ϟz6v!My1r0>s+QT3qt;=& i=*>FT,]I7,e7^-!&-9G0#̜YJr}ԒYjG틑r D _tUYZ#ʮ_.D(lY)~]sVs ].ƢP]ݯ=s+'ƿ| yR:k͈;Y \G!։ "tkɜwV$͞bǟZv3=b~ lg/99\dƭ% N7e&]y!VIBDb]U ?0b[#NӏZX/BWrE)BFÚ*}xwNOq[Xͼ ȜS,.dYRʤAs)#CGj$k"5EB?g_`ئV12|f\!13fˌV.3>^A,F+<ɝp j_8mpF n=UgbD i*]}Ԩ84Lle|J BbD",b$UH-JM#(! , F"%9m1 *,5rCw3Љ2sݷ 3URw7Ut IcGބi@WZbPJ@(Cn N=,ϫOZZkIPoإ:,p7mȂXRI)0Ɖ`e>aK$/:peh?`GbCm箒}7Ӊ7ob8;KV;LVKL+o+k(E0ԛPՓCfG-I \܁Aߔ|qC9eF@]o3l7s$]`v$(qF E:TCt .09!E/fWJliZJf^$rl7+`y B{ސf8Zz, h*خ%ѭ::Gրڟ,Vw71J.4% ̉N1ߦ8A'MAmh{ E ph~F〱C &G^|AVY7g quZtoXAm?uUJT;zˊ6:.۴N V qS+%ã/ ?5W(k o_fԢLvUEnZ&RP.yV%M]D?;: {(~>^Ǝ&-)F XH ᣧ ̪&"ɚH'u Ѐ`qN+o")j*9!U/[G9q3YݑTFn3&Ù:ߋP؃wass (ꚮAU}wo0."<:Z?6df֬1cmiЙ Y6R9 K>mJ:6ܻzTE زuFXZGz8 'egc匵Ibk *w`$9RLƼf65ۜ7%3vh){YWP8sRo|bLs`KϦ43,+oi7쨃5JMi2w#\/30:G Z IQL`3pnC|TK@C! PYUvӷBŲx489jfJ)a,cR80Q[G[V/Bmhl{^T!d.ȋXr-Fp >6SG$$6# DW&րTlnl3EN<9|?^z4+ɯVm;Acg^ɣP=xs%-֨.Ra4.gK{1Zj6ok;PLT"k80F9D`-L m33oSO6dLaiq7#vxb~O Ǣ''N_ f /L.^eh5\cbY<*x`&gY%]}%cA!1ha $O8tAj"bn?b. 36IF5SΘL ӐxcK xFjVdj (j./w7# S{jkh<][:!YĿBq ^ӀNnz|-k&ayp0k0Dq|OWgEVd7b_oN8)|ofNY-G] H؅2$_"AZ Dwq̢5 JEܛC |µLdU7Wo::8d*nU쓓bfAj%"ƈ(m)BHhDCRડX363ƒDhG,SIM3i4Φ Ws.xL B7б\0\> V#?wp?xS%/kn /$nN}ہ F~IRd6Pܞ۰m*=^Zk1皺#h?2yxh[x׾ iK1MN)Q;#oa()b O|dY>G'U8p偬m32WJf^9D%QQO֩7vElGk |uWς3rv:(E/Cڟ6;~f9u@, paKKDE!Fgq : ~a?A 8*߄R`kY6Mu֭p+*!2.$F7\kS^ )E>͟ڇPXQq/ ~&mf8RYEp "Z,Bs/e `tN$O~Ck #N^bAeo|&۩g!Kɤڟq^E4 0T:a)s1|JLez1O[fC8$%w{^s̛SFRˆ|bCA#DU5J%e6F,g]06j%7TziO{_r+ڷi;.ljRIXԴv*#̨oBYF2N#T@91. )&>2Ƭ"DL٧7CKq&ʼ68FCLeVu+^fo*BEe3=lqRQu߲*'x*"re]5i I3[w\vVn1fMlt! =nts3HjE;IPJaη̢mQFjrm= B#weʼmx̳=-p~f]92_7O]tiR8LiW'֙ ) h<^zci?գҐVx*JB#ab>* r=_GiYTkE¾<Ź;a;vN(=nf#֞@YPtV mtQ~r]&]V>(wS8`*@~]F/sʘ&‡ނh=mbZ%~FDLlA6J5ܔ5LKY7-pSHLZ9dt'y@a3dg=A0D) -*9xoNdlQ!.VKeT> K mrYݘ '׀bXaFնW,\1-@=^^`&gn .7*\ԕٲ'oC%[#3o L1+&w#ekĬ9SZ—%8szV֛)-d;Ɔ`[?2bq32ӊ#߄Ώफ़O 9@*2eup@* tZ{ϰ^z]2DeU?E"̭ NClyÄB!C4#wDsyo"T}k>0* j:ChNE҆*MPR@]{rFjD׮ilJ 2:=H$%+}Q V,LjJ.wb#IpP˶t͑XX٭w(t+e_uUq9G{Di(4f{}c2ja7}*y쎦m8m@%X\O_oya{U[jQR6[,(zrqDg5'9 3BQ;c䢩׊ Vo+c iICz6TOE_XVk̋u"4-Ncab/FE|Wk(7 IptsEr`-oZGvK7BWT DUwUX _O"vtuQn(^nL:}5A[Z'D=:Q m^=Sԧ], 4nUi7G/ڵޚ[os&fyBL+lES(X4 pL EYUe44Qłl?&72ZJ"9 nc"<l'H{Ytt !ǡ.j v|gA4?u39uS:Hv<¡ jve sTOERXڟOAh$:UC-G@hA}r}b}ه-I >)tC#8|Y`[^ɔ<aէgT.-m=οqޯ񵘉~05)89[brpK[?o"=G Z1=gmj f| QUجU<9'pkmEMmSZCF%gpH(vQA^*2:L;uZwc[B&n↕7a1(3{HoH̃eYTNd/02Pj٥טjp DqnƦ; ria^-*s|ΐ7!'qxw*+MKY Iߏ$r.EcK4?З7vmīX߷D~KJ9H o(.PXITrN; e ~6ᾛpt_O)i`t篐"ga,{ٕK<)^Ъ#;@k&3U6pe\[DzBC~Ԍ%2kξ0Gvz4>վr?Rh<VdǦlIHŽG5'T,<&:$Y &J&aSB:hkW |~>*ޞ޵;++3UrcF,P ƚ&ԘZOwv ^ ;tOG u([į4o9zh* g&O`C^'eX<\TNG. ]MI4!i a^beZXY[wgc;hId9\LƋ5j @M%F٦W_LnތGb@x'H2(U[Qr #]J*Kmr; dj/ùJfV?ݿ9 3ޥѝmSzjbtԟhWbY]DހO\y^^KԏT CЗBZ__ "4TVuDXfE^bP7Ql7׮KϗkӮ$;]c ,Ѣ7t٫ɛ)ieGF.YWL°c\#5wO& tjT3uDm;m{Èw&R4P1M_ށ-uSBdmBҀC:8FEj4|Յwu$&=Xp'|+8uob6G@Ӟ)'VE!kV,9hN\JѨ\yL=w Oh6D02" a@-& 5Yd I=P!-ADte5 gێAngCr{a 30ɘwq_iW3eoy]:uX J}?3%">r2vګ1ўk#'e~汖#n'cHn${0ԓ-a[ b4E=A!y]# NM+jw'L&!Ȃ7. Wf}ɶ\n+j:g[f5fHȁh%{c Aül𿞈?JvB/C&K\O98e EE)k"]ˑQ8>ń;aj*΋63D]2 58:8-i2]HV46&lSnC5əd\Nr|)7vV@R5zR9tj ͐a؁kmTAD3<G] XA]jG樠#BB̠f>36}7'x6 I)籢ԇ7m1}Ӝw?[s]!Z텻kqX*㨟`lptJ29,|ں@5@DJR;EDbHN,Fl@Rn{c3v e'X"sL?._8dq}]`g6] S|۷욪A͞zM"h^5Vk` }u~˯(jhg,yb2ު0iIGXAqE D6O@n K~;O'^ӛ㱕\ o`cC^3["S a =K,犪+g-f "<>ġjrCQP]7[+LѲZ~rd2< Nxn%)=#Ux/OBfFS?!k z cTVlY{M@?͑^Z VT5|[j K$'oYTқ{#%;O>䛟Cw@ N*GD}pdp \,=O#-y n'ZAAsŭP6-gR+{Pv6k—Ri" P|ž1~1({3;8U<]j]؂ZJW)A)vm]S5I~cVZQ?FH䫗/7up,,! L/=^G9?OzfO\.Co4r1)',ל~P~Ey[T.}r7,U~() rZ×*C/N\ptR# :O3{&.–ې7[ָz26vQQ,܋쌕 hC}OG$? Hzܙ Q=V'|qo-v'DEuc33P#bg>kU"NYTLޣPb>4{ܩ᧍$Nt bvEcOY ح[+F  ^Q{*:VS O}׊ W~N騫{~KU nȎs%H4,2"xŗ&YRc(-ltn^:Ǝg*8BKj2R^ $=N d힬XR8}OIj5]3LN?QN^v= u.t%-?vX^,M{!$ ? .>v/GPLNQ@\七j# /ε/YV9շ65p &-OlGŸ _r9P|!dm t'kE oonVPBE:pYs&{h^mu"CeWr}Q2n,:$#S ax˃!x{_NJfCZ4E.dD}{$ʌS".-!'r֦oے_vglNS&1(!snW9z)wD^Ym#R©AR5Tu_ʾ[9gʡVQWtR[ke0yW߫H$ڬrMq %;V+.6$ɼ 7Mypmg<<&ޔ@r~G1<%wsC)'۽2 8#20)\fOȬt}`T.MVsÑg(\_6e;.}j z{ꙦU0a%SVҷ{jbL0n~ڎO«pif l}8' *|M'?ɧhq+~[4CMt(  Eט S5 0ox Z%P0͞;xM&tI^j]B3 qAXAE:4XAoũĴ[RZdL|?=6J0~C~s锻7ۼMAt u$`@|/;Ȅ^iC6 ZS6i#S1/CND/kQsƨfaͩtWMuq~7EW ^u%>k/\os] d6O؞u&_Ɨav&|\8zQljm" ) }=E~ }Tt ݩlzt=c=w/F/b&=(I[g#S2#Y yuHc 4y74T᭹暪&4ַA9|v^mQT]7PŒ>3Vl {Yt}UѷqJzfYOfhC=eCeC$8Lb{1ҳ!AQ&Fw4Xxݫx0 lϚЀH6YDW^>\~8`vEܒ*b\NwtRnB}$\s/-3}r6{yC K"a/n2 [$XkWN<F7KOsƗJDB?.%hS0} ^ > U[ mt1jTBK7(z]˓0yO$)z5^UZZ3#M8*o.P'ڀ OV>g@Rk~.?g!;+J"󜷃v{V#"䬅otzq'tXФWۡʅ,%rz?SO7XËa)( A&Nz̖p3ub|i ?oJ[ ,S3|*Q$@E~P8ti `S% 6p{CFkئ~$f~ AlǞD[VܓL<"X_fł#D6 "d~!ybns6xy][ZT[-EvvO"NԵ2?\VomЦeG+W"8_Ң>ə0ah`ޮmdNѹt*Jk7gArl:7<IUNYy]2baoSEq%er}2~c0[|~7mM}aSH_N2| ȒH.@4|/3%v(NNp wF%yFSwdHf;Kv;JM h[tl&w'A;[8X3P4=Lw[M^'J(TKg͚C, bnRj.KtY~5k[f(l &-,EُI~LX6#/:6AĨ՜@~Oc_}RNg}e=*3 Q풸D%r֧Uғܛ=@=-l,gq;^W0+UۼmǙ3X/"Yԙͧ .o`jMyAj"AМ R-YHܓeה|k 8> u}l!BZK?d`JW/X3SE 6|$s`[ rj}IN˹!v)'Ax \ `'Udrn[CJ)mSleG5U۩ሊ p2 gmW/v\{F1itwn &y1Kj\uM %Iy>D5J5Cr)rb0u ̿r`2)GaE&i)xr:F/JP;*+_J'ag]a-0.*g#ΏR],R,5WoG=H0ch5k*ڿ.,у׊c$BCכ6j,; XJ-C*CL3@E&\_o~e2n0!"l_+/rQu.ZR_;P-[K#!cq BNϼg G<rCțI)KTb48霾Q\u|$'NSg>g"2{8 dۋT5Rs؆xs{o6>^ %FT=ր榼BqNV`J nE`IkA6\%t]Vqc;-I\d#(>Ct3kqe䈘Bۛ<7C&O oC1+M/ba}vs|[Ht{y%n$ZZr1'|w /FS6R?SeqωWÔ2DŽIGy/j_Yv UP4 Bw_x':C-Uֺ?)bUB'_sWw&[D?!&{:O$ˡi'O-l0um!tV<sZć܎XO)ޫ$."ӗ@ G)9i!U_)n=@*N?P$6.Y> SӌxU1&Koꎯǎ[Ҋ8p>n_&e$r)S.td F}K}D Gj?2[H@@*EfW//e3(&ep|QPYYpKq/6wVW 6Ph~HA@mC X r>À^RS&JyR{z2LUylB4g+QNϋSg^t˗OѸ^k>@ %PƯc2vw|8fSD+#wsEU62<9c)O聰O½~ d:MdI$[]}8p6iD̖L˨)#fѹfkaN|?UTP3' K cd*Ma}~lջu(˦OoL$.1Ͷ (}$(tI7P^Q2$5)s\rY [G+0zyVЩCEBUPBI3W`ҼWV]Q0I1<3.jct lin'3CIiys?@K=;S-,YC|ǘLX! N7x_flx*)5FEJ Mi|60OH绨?מ X=@)@02c|H^cf!w.L8o\}mEYb ~1#]2_W۰Û Q|FlQ_l+GZ Ф ~@9|l9~{bW"TqG"'=qkD:MP=LCu[x*j~o qz(뺰tL;$MFyĄou8.7s&^uR* m-}p8>en| P/ÓͥkV$m,-<)%cIDq5X0 g#r~U'i Cheo\v~4O.J5,&NiM "߂V?1{2:IQiב\Ԭ%z22XUYik-Hیd֬$mzF,VdqM.88]F٪N5<t.d*pn]*w\[|E_G##K$g@z}:qԢZV[ߤ)OT[FZ38"Jy\~"C+W|fFpl6C,Ű__A'50>W&XZIl [ YCc˂^Q N kw'4 ~høS69X(X.AfQm+[+}2)URk#C]Dd ŎHLgXY i} ptk"c&>?DI8C9ZnB ro$6ۡZ?"6hJ5rA׶<߹+T:< ! zR;pX\5XƤRnS<* +?0my󟍑6Xlba&BStbh dŎxɽ*k9E_ # ٰ?ciCc8M10smaAaJLqpҁ_xKˠ[{4N(K74py],a؝>6=yo-4Q' |ſ3^Q UqCj5GS;.b5 jWR???Sa:ب!W X`%"tЋ4mJcS}Z1qʊUp->\MgvvHB d,7J XY,g&[2R A">7f ԙ hpeC; nz{sBTfb+W5}Pkt]HPh3 DA=b8q{L"aG>2:VK *,-UȦ;s"; Ɂ\?r*MyA%xT !9;KYuBnYUÀ[Ї<"/кXgôV b5_XNT foz 1YZK7HaFnP޷Jay \v4)dP{"q6ȬT~33Kץ[ ?wT%ӓ߿?x#QM?կKn6KEpat%+p 15jr XE\Nd 2u)>o\U K]e;q[uwۮ\/7ovl4 og)kπ=rULI|2MK. Gl 5r`"xsm^* {5 ߪm Qk^h4H#`ի!s`<Y0rlxNyÓF1?eʅLgYݍ2Hfh[n #2(cݳ\1 'wr-ax/6uiv љX|2H@vu[>aJpQ].&lcmPF|ǩHƍN'I~>ΘL= iV4 #W՚ u5'U5"7h#B:.L ps[sk|MrkIDJb8،ogRvah(7 ԡOdz_QY{ӮA6pFZ A "!~o".QѪIk8dM2"^o>cO2}C~N)x ).7YX VuQ7ů{xm̠IT(-5&禱F| 3ߑLjO]eP8+%1xL|Wv&@٬b;N C J7Y{%.èhуo0 CJ׿;`*D4Tvϥe@Mgm&ɵѕi: oL@d!f F 0YY"񈼂(]d׼ˈhd!' 9tH鷩./_)01U~=&rke'R*֢:9"N@x^o71ʽB#ςy aaύlƀ]ts$YD7ڿ-SRmHip>PtCaZ nsӣ0!^" A'0(>Qѐ~dByTA3Ɓ$ZإpT쟌E+FpK&̾L$Rž0՟D )K[L=P)VP{d qC%_< Y0ق$ miS3~Vwxw0"|+׏f עfĺw(dMf 3$.{><~P#R[UMߑzuhO 7AtvNz+dX$^uNJ~p/*a~I8/ԄV/=6j化a$Pãs ӱv.1ޯj4ڙPt^v(gЏV[J6JcӞʀd|{#!ș%,exߐ\wN)v }Bř%s/;&]9uI< \BI}A0 ;4db<8xDySy+Z~He n)]:p\,"5aжYZ3 yBaīR]^pd/dh#FOasLWLmY_Vc:`Gp8"BwB[N c"2+?"|kZ*`P\O@i ]9sڒAh,5E S tJLZ|Fxnw[+3!7T["O&Kϕ|ᴳZR.j+ۏ Hl]󾔱`0?tct ܝ_ݬvARZ:M)a{e͔݆B-y.h?J1,AO?%$j7C^7kG4ܦUǨfXbd6bӮLq^)]\q([ HN`./xi\rz2-v[Gjq"{6>\0[b{P@<(tn!ޫv͗猪0ՑZH oXUK(-'I{] D3 "T@`` ]UqI dzgRq.+/0GNjo'"t*jLaӐf+ R}=Uk%l,|;_#u:k|eow`]%#Dk̨Hҋ.Af際o捳wФ{p'#{3B:hr_B ǒ=B/Jc#פ '?N:7*8P~4~DFKVo3' jK܈f\/` cP 2cVJ5@cQOoA%~ wu4&z_Iw<8OJ&q"?F7B̌W}!J0?Vu{ϜMa5!ز2tS,%? E7#T}FPi)%_t >\$-sEVHD> qx#9|}YSV*F27L0ZFɠa{b>__V= ^Fz HXIt5RU̫T 혝>tP:6&@O#(JD<Oߧeu\yfbrx7NϮc8(SK o;?Ϻ~T,e HSG2vAb[πjDvp9)Hql -L}6X4#qo*_74Gj+<v6ez* M"CQS8&Շ'7z[eq+$w3iHӬp2[#~/nICun d DAQX `K-d|1qq.} l&*|JQ;*Ȋ>L^g6)?eQrζZ1⧇I;G쓒Q-9J*v^|vb4c'GF@0[\CH=ZtD=;`=;/r R ɧݚ?Xg,^LVaZŭ0<*~<ڑupl1FJWZ&KLg,};4BfJ"&y\1EFBM*:X w0Ua62=C=<QҔ\O^@[!MO%-]F.+jU09j(<(OB<y]N\&"t*}Xs?Rʋ!Ó:}>3"Ѡ:*}O^IScR~B{w rzQ+Ftx# `hA몚^VgUZX?rrQHCnEPsهΪnacMk44]$^Ԝmc(_RlbOyX/0QXv837q]fMaB<IY(<*1p>3 @Q2yYgoL53BӺ$[jq<97NqR/`Q1fJwp['`]F+%J7cf7uxɽV^UTDuj\6y|#۾̯-l+AYp.XؿxJfQ&-Ay;+]?q% HuL8[s"RW^֩0 O| Z?<%8"3ZlBHT!af:YeN[G$t5ĠǏI4ɳ'7[˒DD?8jϭyin!ބɛ8^{@)ʏȤ1=:; ;`_FH^tG3Mk"ۥumg!"V|Isg即LJf\髴F#NHס|'P ׯP䚡%GgXҔ=`[]I Q 9 ʀ@2͈J%{P~Z~][v@%y=؉0n].XIIL. tk#zT}-_[][R]z}*BHhlӰ)E5h컭dGZD-QA7^ ;ug4%N!1%_N2FoT2NfC +a!.:;ڛ,)I>\GX |ha@>zpj=I &+BeIrÉDF8Er@cؾǑ/Lb3PS7_&0-\I>boY[Tѣ$ͫBj$GmR)z*Y޴E2#6h`rF1=x& 1(,$ʷK,TAw ?DM_=2 ]Vey8ݛ1$ۀ`Vspzjώi } O0[\cĉ'E;-ϊEG9;_Yd0$С_Ú̵]esy!alQn-K H$Z3+u m5\=g8t1}>Shɖy\SV6H>n]N}|䙹J*-O,O6ChaGL%庰)PB4Џi\R\14|C~J =1]ȮLfIG\2KH9ce캕QPqo9`4G2/`;@ׇ+uB ݌w'r^F+\Q U´dNzk(P'}}k)OJrP.'.riYtoH1i,.\G#1$ށ5<O\#yc lIW] b|uJT4"H@:CѵlR1LasUъNg0zh?2&DFumU<_&jx3> %ݒrZjfV1(C帢߾0(ƌW;u<(jё#YFHNi3Ult`S4xoe2<Z&Lʲ|B8a\T, #j;VF4YmDdRwbm5%b0|FRSו+~Ö-'_ct5iͺ Kxݬ8#7.Y K9ݮ&s, ^ڼO*<>Vj5׎;'zXmqeiWJbf>V{00[Tɇ(9 `zM9zGĢGS@;5]!Ff<{\}ՙ¯r?EGs #U0DF lEΰI[NhWݕ2]XӸKfVq ʟgDLnhSjݤs*lk_q9p^i &,c ҇X #E \3 bFŘyq A13S*!Dwn #3ԶjKs{,Qa_EpʋL $[%呅J)u:PRGLHr{&%+BLѥa^La]HAKLڏyY;{_!{8:2$Z| Ť[5J{?#Ӿ\k3kO3!|,|Olza,'ֆ <"o$ ]Η(nQ^S-(W_9mC菠>T8^e< U},&da$KvhG̅)QZ"˪_^b䒵nW: !jzf i;QB-X = B)Ģ*i&K/_{OJ0# Tfn0-T*i\|}DŽ'aV~ BуNeE;reo: |B_7ێB=EÑ`JX!&DzrmAqm(inc?0`ϟqtZ?tRňNM.xV?yotppطjZ}M?Do,dS 0!jPBc;E O~ c 5qÛ~9,q> JB35þV30b@Z4:$#>`COhJs j =1<a eXsEIӆY`Mrn^K bS\ @ ]ySM ק0n`` xHQ̦-Us^@ ꚛLL0^YV╜d0{(^hN oV#Q[5?$A``qogIn.bZjLxsRH~kvQ|K}knN^F !FLGR#b Ѐr97~iIaKzLƩq ^֊0Bo旄 :-mhu+lq%ȴ"Tϫi9v! kXj aRth.ҥa"*8DN 6PFԏP]iXtB:8Y=Ƣ @ Ж9;٫^6SK~sv1oͤ-^ԔHZi,gb_To5Fԝپ)\2gsGVf/i_n5? <6ȾAsF WG)vic)a'[ƫXIC28|DVitΎNW:r`ٲ;']qZpgs`FI?l$#fe]"W&o|t^jm6@#VDZ\J?FNϼL_#V1^Y* 0wl&bFU48OC1I"Rx գq(g|&3ґ ~.Q);\ ; ÜaU/p~&9Ga4o&S 8ve=ydAQ"p&~\4ˆ@޲$TG*k?9 1-qed_Bԉq ȩ($j%&6[mkfH5UPf(t|ّgвvj?CZˋ]6.DڲGJζTFJ\`̦Z h PhwVD˭AKs"I7z($ W1")=rٓh{&՗X},-9@9’b _p+0[0ś[FaLCi(`g p_h+AetVtmzߒHډ7&R'%?['T׋ hԇ&N·_ -lFĻ[BAfۍhzw,Wd@0q:q N4/F<3ósSϼ~tm'Wӷk֑d܌f>y{5Ha-`uqµ%7lL̂e:3јR jRք1]qM<=G/mACI׹!& v<G3>GDe׽uNo^^dQz@YW=z $'K>pR?1jKta."+`q@!cVſ,a7(l_ .2&0|W"AS7 EJXW;LzwM#(`6 PUo34۲xniPE6=T_wf8<*xp/`_[bG]?Ʃw nÛ + pn'6zr^8|.啧 Įӑ״r}^[ooBfyj%~ס)E-A3D㴢byyG=H?pɝd(@VԺI9`aYN[%YtOZ \KNOR+l/nOg2߳dd.>>W>zXVB" ZmX @T7jmZπX B; BT\ʪ(F6}x(n5k|VzG3)nT%x;e-T̀SD:c̬Ӈwau f eSĢ?+V&x~p].dJG_Co_z?>CX$ nQ;T]n'\ \"yS`͇u/k+eJDFB/DXouwO9'LQFȮx!x?@x3Cman޾o8#xI."oSIee!f%)^c&́뾅B.KA(΅MZ!Z8(^w$p`SI!VޤߵnyV*[m@ ȪڣPcT#Wn [IC?fMQuZbuQc`CoE(+-_`sD<0)kPAV֡2{C򚎼4{35TkyCq,XRGmvB m GvEv d}ӯvvq; DJ<(huK2YW:ݪ\+%Wx:%Q[h2U4S\2;t X/[w%Xh:ʎEAvR“,!Ns0 Y1[kJ~M_/,C3a>+M'"0=f^MvMZv$/82r  ȣOm֑oƛ>rU'yإMvU)Csg; !H  /ᒑoKW77vRFr⾢()w` ":'5 NUo@ywJ.x`+VpO0i[[Ũ Eښ."@p' >mOա\dvOluAE*Z2.5#0iM䔴qO>IC:̷#!?/oYa- o(>N4i.N|ŗJ-bN >>X(B.~ N e) Arp|?90l,eF,{?vJ_qT{ħTIv9:yc${)ݣβ䕝'cDMIm()D~Eb 4ͩ?#ʁnc]GR9~8t㱌n<~^=G(Q oKve`EPYiRmBz]yc3_o|ctg:deBX`F\ٌ&*m!/xCr5;7,\nd {;]JsՃ::*D{Οҷ%~ӟ$=K]=O-iXԵśs (h!q+f|?\!]+:;ޮn$ 8o m,Q2[˴T*7X-k,n@[H gבɁܶi`^6BOjڤBhr}nÛKʛ#[eRL=Fl% tP*eY),{>NPNA4$ZPw*)Ǯm_~g`?޳' `1W$yLw_<_k+l7[]պBwg@&`tHds+Z#0߹1u4u-"PئC@Dx?^jQ '}_@QHKcJl }!x,]js2 \LRLgfڸw+ ХxU68L}}y0;Ammu [hOsю^ ʼnf\Y_ưml瞮udG| TV3&d qa] A?A!fe0uqT},*S"Ma嘆uSakitÑ{֢ڋ"DTCሓӓ ') % ߾ƞoO YbzG#7!

  • ȾS 6veKi(\q瞲 tdƗpkJþzbUt4bl UJQ$GڋZNbrԖ'AMkˁ3QٹTO2hBP_mJ^PKvJᲺAQU$$ -) UND>BLx7C{ v:=9#}*{:I:N$ `2Q r* {Ԫ <=09\nKQj@TR$R:иHs;8Ջ v[D ٢߂eY봠x'N>u2ց8W8U,sfv *vBݩn(f% bp2xIJN-hozk@Z9[iotaH ldS}șl[r2rmbO2;(0] F aCYߴ0?6Bě|$& }_4Rf/D+r"L"vA~.^T XTpsV{c?uMCu.D1p HQ|7AĊٲv4c5r$l@1`|~| :nC[=uX.tj,GC {^<}p$[:Kus-֨K5x.'_B{Qj莁Q,'6M<'ҡxOOom[tWN U.WsN!蒡q~7[%2Esjkziyխ`u:#mD{#SHvwmqPjXwթ.5P}`VK9i6.1̢GZ*q8jNaC.C8a;ì2^[ .u L!d!7]B#~: V MӑLDýթWZe&lƿgh;n]uvWWQ2YtNIj~XgQh;GP$qȞ|Dí>Kۘ95,XR F=ɝVnB)][;sjElI5ʌoȧP Yɞ ´܉ ऱI}K$1]Ux[åDUfd,`?!}ZAV.4S(g?};Q*+ N0eqhz:J@)nF cP2$FL\q%CbIԽ#Gem.,NBA(<.e:ܱIfvָVHpHNQ=Q z]æ2i@L'†atraT5 q1^ m <{,n`z̡eL~M;9y]@%#?I@ <,"C֯MVhYK?Ξq"f('<} pF,Pwu-#O܀:PT:a11AX|E:BM eBRȅwrc * hE9E\L-=2bn4zpz G7u։jpy[cզ ^=I84xvQݢp°'8OޑLXmĕ ہv@cX$xLR٦V[CFu]8ľ 5WDնl|e&&t>I-R,ߏM {Mi;*HapR0g&'~pG!tE!q-"g!ȅp!srHPɪRV딯"4YBc9Ueć/|ދ<44nq9}V=P8fu*A#;t/WH]ÉDˮ Vd yvSLrWjí:w Ƣ1Fjg a`t>z9/7Qg!X)/ E0wG2 ,Y tOԹԷ`PGGHvE/=Dq;SP' Pp: 2pΠovۧ,L ]zi(CИ&.u[*(w%һzP{Όo&ccڑT]bi\;5#{(:A MF 3ٽX sR |jX2b6b#fO7BHd.Nݧv+EU7wlz1ЈAdan}{?V_a e%Jf~e떈殞1Bnj[c*\UڙksFW e?l+ D(O-֍b ?_op]iE! >OH~;hm!SjtSQC}Iow"8\0a~?q}B3LB53=?E>NJKd3){2^CATU >EQ*"Gҫ1inOx β9[,w;*yoM=jل6c.(?Q9#km0u}wWRߵ`B`g 9-Hk¢GM@5DZ@8(QoI&z7c \&:lv*,,־;mf2 r`4R [4p.+'1a& H|z@7b<1f;ejOT-ηOH;O,=pz5<3h3a0#'!eB%=9? G' " !Z EfMBQċ=Mlh7-%6]%9~2*0X3eBU lXe)eXutzTI"Č4\y _xvR8"X] X,饙+8~ni)G^b|nt.Նz ȌF`w4ﱭdq9y[l\p\~[U]l8=:02qЛKR̊!DsBQ̎;*L)`mӸ>W8 P3(%`+rZFi&3 vŷR8Sԓ"720SN{(͞W<'*녋]>j۬<ʳ%1IYm,FC~׬16^Q%Y$0-,4s/f"[M24' H6֤j 8sd)Z 07?æq?QL}U_vo%RJ < ͕i<$\bX Og!~U=?(n{6EQ 0X5Ex9,ŃNWLa$)fD*jv:OҺL&ڢ(t%b% i vZC}[9 OG" T4v' "Y]8jkipFXT{MP\u'4 U﬋OlbT/ЯV'Lr%\<M9c(XTJGHy1n*c(vp@wq{,V cP)~50CrHAe­TZ"4_؎RqZ2~a*t~ĩGr..zbwi8۳w[_(;QU"=¯bd/A.Q6"\$62B.j"txM搈ot\''$ft}(ZKVGLŒl@ǹǤlF2clq T]3X4`H1myyV ꏴRU nzW%Kk'*ãVh,IEg]dɈ'{ aӝ N#/n۠Tݭp%/hAq&i̕'g{#xq`ѽ $"!т# OUb85{l3\-7Ή!ux_f}TR[tǻMG4;ԫR%HlDž5xi b}PSY-A.-[˞,)dHve?k+b+Ʌa|;l2`:>os7X @l@"W3 *tj˛T[)W\bEP|ˉr[/NH*7̥ʒJ2Okn'KE$Eα%b@A9m}=Lqk305M9m>MjYecsbJ0nK{]OS#s\?߮xE#էl>Ji{kh/K**&EMfjs8}^3]{ 񙳽K@曱5I>}ee,UJnE;/9V1?GL9r)gl{r*-Twء3rg Y%f%$KFUd9D"MjԁI3Zo}L#.&0-֗~ƛ Ž<:U[ 95 ֆ@6|ݱgBs(*eK7BຮŜr z(KK'p^;+[=sˌ6 *)-?ꃯdv\y7J^q\t>%'%}ѝI Ȟb֋܉:g݂d0mD8ܝ*kiy "Ε}r߷6Ln#tedg6d^r'+}8NrںKn<2 ,3AQb4DNS*8 P6A$g 0[Wcj WQmq-{`ׄ18[11WQc5rX 8Np/ hzin-IQJi}7Ae"BnفF SH刜{|KIO~Abi} Q{q"QwYO&|xRE4ӈb9 \"IN 'wv"ӣYp~y_7U#!z !6'>ZΔ{\t+|ax1y0s/E[+Ϭz=Ȣ`얨5?.Nr7I}$lbjJ5]٬eOrgj??ZKp,6ETq[xz8PoIyfa/9.Lz6Hh@D3<$ԡ;nDƃuX" &.?@;a&5fh߲s[gի=P$6j1!ЎA$ͲaP VNKv':ha#ˆPe^VHJ-G=uS)7A-~p@ K\ gGqқpCtҭyrUJCq(iWp/fd aD+4@ ~m']*R'-,^J54дXL䅁Х!L~޹1VΗ?-D $OҀ ׆;7*(>#'1PQ=65HBGλ/syͦ<[_V^?ᡵOX9؀=LvQl3fqHK+ȳ:"Q-4J ՓTN !/dj9mr]uK3SB=oӬ%PU7o$k[;r!uO9Zو?튓x>7]ʷ(;5f!5lHm+Qyf~bj=+(x>ZmRL/HFB ! *7l,i__UO_HZM4#yw|k3jKG0јp ^> v<W9T߫:)_]BlZ` IT0٣q K/YN>5+B1V8-PMIR6Q(*Vc͗ldL'UQ"ӻ -a<%α\@P8g~ -ܢ ,LgA̢vBY7bV>Uw8>ӠUDῸf4EiyװyZŧ,agZ_'exzI0.syߦZs} @+Q Q;Jג@_xD_ʛ7J06ȭ&ѻG2JD.qͳ]m~2̐qS:cg'֑Nnk= zf)%Q1Fb7`+y=dɴ0_X!P (-ZΊYDثMn,FZݐ-ﹴξ/ڷbCV?җ` ~`Jnan}+3>9f'>MΣOiVK q^Aܛي[-1 _mH߭9cҹ\ٶuM'Tf1UJYT_3M!T+C D2Dc,S"u[a4(:. -Řo% +$b_ PuW8h]P3lENJ\TקpC@tv~!(kד}N/X MF7@e$%kF&3 LuP(kARjSCSǛ7&D>fd/W8cDN`DŴO'/ $^㠝^?Y׷y:RCba$בmQQ4 s[3E%X4 kw;騅>cƒ:q9tTكA#..E)EFVr=1/IDJ%ee-N&N1IrdYާ,~xvb!S X$5vNnE[fr_wkn?^}䱅o2词E5j<߹4t 4a ߔ6>Uh6yR+4ͽeN=b}=dWr|+yZz}?a5 uﱓN0B%ÝON>w0r2 `? b]ѕ8+ V5Kb|d|RixxxjH@n~! [, .vI(iffT8%6C5qB|c%ֶO`2r(fn!>f@}Z]@64kHM*o'hvuy5gb9  hxDkh"+[]u4cٵiA-!^ن n<;~)|W*$Tg<HEQ_N+2_1tt K|~Sޏ`.`ޏ\'HXϽ1{-Mȅ  Ϡw~ϞkjdH\hPʗiv5S3.Ay Nf-4]0EwY$t>|}x+ۢWP'VR-w{0wGYE4h߰M-f=9} ů=Ae@Zu"k 9=C8cSf_kCUȖ1~>!HVaPSISRKF8sB:Oy0\Ned`6kYcSVam{{r}ˡ=.+&׽Ck\ ϓV5/IpΩw\"&REH[c\ 6a$ZG̺h@V˥ ˋ+ }Pk)P)DX-vw`Y?c*J׿.6b(SC J+,6iɛ4* Ha& U[,ȉS:\ܧ(AJ wAҵeOft3pA?S>ʉWp p0Ol"\hb 2QmnL:T,ӧ/`anP 6ץO,?WJA`j{1p ixvlP4vn-{:[t +c(nM qP687̓sK=׿Wm)-Pe&K&њ7U,R[ߑpTr68^=:3NB>C+`L9C]28^ZORec^C;O *^#/ {/~8M YJWͺX;j~lVz1"~Gwcx6,M, yc!&袴J+wwK'Ry!l[Dc_ƾA_0Ftwݾߓc ̣I˷PY OÄN|qRLQv?9H64=x8u>=.=! Q4د6ؤ{r[&AJw,eaFlkøļ9픳RHg@U_k̜Q~cPzH c 鰷,5 Q,;Kk ;y7bHb^Q92^J Ap*ӝ6Ĵ[0Jb 7P]QHۺkyϲ[k?9?očOU -Jٺ1_A9jѫU#k?Q+Yu  Θ̋Kb rbgGpmxs }h2^TH `mqXU IC֙xYJg_FSW?k*(E cE놠fSX橧j,u`^* !1gl+I w]IM_e^S%˂{C..?P/Eh0(uyJlAfTC &cּcrB⟼D͠!803bM g: ZJP3#jdr"y>)-O7k{@:ʪF&!碌c7q%Jn!HܞIήY 02,!y˴kgQyB*8`UPRJ{ћS.*O}쳡` `(M;3銂ie_V7Lm)cmY|54i=i;/xf*wGfl3i!>?zTs0_ Kr.j-kxl0]C'GAf<'o1˺svtDos|74.>au%ҪDP4.^>n:J2KHݵ'0})UF=OaYJ`Og`“n3{W~Vg Y^3Nǚbo&S̻FbU }7~9{P)|Uџݕ&)n_7̢|feyȚ.SǾlaC$@HT tƸiX$ϏMYIbQ ,; Vx6d+PPBoiJO < |=w N F8/KJ#6O`Ķ{y?6Ql-B '32@:XX9 RF?`=InJ1dub37v|]sُHe`!P*c657~u҆*-9. uE7 *j %R o;1*` ^ZAłH5Ax9ќU+BB|!Eyސ44R@sr&28h"GHVsT[j2u LH2/M( C`?,߀匐]Q2g!S\ki#fp`T†]$H VDOuZQqBϼ2G,S. T:sȹ[!/ Yn몏[rj̀}#_#&)N $h z$r9Ȼ25&8rN[tSݸ~('Ɖ2Zϡ[B戣a[1D[K]GܾfMS8UV{G^iL:j5 :n]хS ;Tıbū}>G-C4 ތ=SAj/,0Y'1{n(T>֖w"d蔉pgr<`B>cGa@V?V%#?~ܠ<t80Jv,SFO⫸u+OO{]s; [q#iRZc?%Ctm7 S f'D7=X$K)bfwJvt3bt-Sl ,L6{wvi۝!>#xq_(8SCuUʠj1fM NIJ[4L'e` y V,ɞe^iֳ` .p Ey{ $GRD4S3|BȈ4U3ZAZv[StƄ[oK2}*gBt/O !M\{e-5)G+~gXʯjU*:P~ GΤ=h>k&8߭vKa$0Bvyx!իD{#Q¥.ZIމ۳]" u@Y~XN7u<] egD1RУ^\0ypY~QEɞez4|H`O&j!qFV"`Swe+U^YCr4T&pXZ_lpz&pێ+MW{fFQK;Qd}HAGAKA Y VoĻV7ۣTzCVלE7+-Hʟ\4L,%CpG) M/(ַ9=8*U_)γw8C[ Rz),}z$ki,@.DE/l,Jg' <Ҧ_p2AX?JD|D{\R)="޽;ˢڭZ^eDcI2 yH,Vrp=&Mh[=.\,ɇήrNxk-U^I?X}e)dH~f+q-Je$ {!&ֲ_xKo.8u ]i%PXt~Qs./n 9 ڊdmr!Yqg?֎G-=fQW7B2`'OSDw%2ܫ6](|X?"`нJu\"f?{#mV3 k79v6) {a?K#+Mev(*X&T*3s,l_'oMYLtQ-<"]Yq(!t:pK/A%6#ּ]ř{}\GD׻BO1J_ 'ǘNӱwҥt gsO|dlPZΊl#0ŸhۇVxi0Sz/^LDnD:훙E{imz)b {4xCH6sIc5ݮʊ\*7#up:u`u9yAe=ڽ^J, I 0[aWQLыkn.!4IslDRY^qɭ_@GI,q\$+OMTkKWK_(klǘ>|,HRP2(K*F9:U#ZY?==^ɭM])K Gr90SƄ(;g/*Oݰ֡H_?=p*͔q~,n gLJ%vư_kbISٔJ7s>OHؒQ)mt}1`ʙ\jhZrqëCk =|Uq85b6vʘL{9.YªO#^ImeLQ2f9U:Ȃg)*b=C4aS㖼$x0_![08(d- ),gn6_p_p}iZOxW&b6"EwUKcP-h{/;/zYTUSA.vip猞Iw9^ay\^^K$.y x'\6{ϋnC:$C.MƘK&tR= A6spc2iSDv s_ͪElԡd^_[E_B?-XݧRnFLpyg;(myH81@B,XMʼnMpU`?蕜Thl, 烹&͘WH\% Fq!p =/:{ӌ@w<{b`+?E?(r^<֎{DV GDp2W]Zj |ufR27T`ĢaT ZmqGtS|Q~\I·_-z`ZDlLhg ՝4&㟒OC;pڝ`eHDšp9GrjtBˤA {MԷ!oNG$:״yzSb}[Kt?ѽܩ 3M#1N&a:-#u>/숋? 0$'=C:H/w9ab?VxZ; !ڵIv̏ p_IէI7pcQҖ%O{zLIo'| ?)!G߻kbVTpNzB0Ƶ 2iAͶPsT%Bb* }geөV}H1X #^Od;cF⇙+X:ya zdḎ!_,Z8`H)<9إha7Y5)ŏ@hDAZY(G:aLQ.SZeF@Wwh`*'Kֿ?uvka9_\&.33yEHWɴnC3F16`%i֝CԳɰ{ttNUK]n$ Hٴ&(tsx@ʦ*~Y:ΑEJ:/!@(b 6?L+Θ RjmtAP7*>]z *SE4&x覍=|jf֕mzS1qM5j ,Pz/^3#4'w鉉duVa~@Of퓴ubCVLڰPwNVX_5pQhm7Zr"#BSPK嘒%MLv~v6lCО}b8ǕkeV "BXKQr2cɠ "E9׳98b_2RNU+c"`hxQ?]w@-vM-J4ZTi R#0FPԚ.NL[~SLlP|E#t-Ji1yd)=bqf-&VMԊ!y$O$73BQnk"*&U@StfQ&~:Кwc9Wi[6؊-pTSb*nqʍ+JDW۽I'[Jc?;0)zf*}B]5_h̩l>qT%k{gnjl[slNS>oFƒ 2Ύ~>b^և+=- :U;h΅Q+{YΦv';; ql/? 46MGcXY:T\yʪW/H"joŰx^D10>o/aaQx{".*L ;(5Q4+>,&' ():+LfrL X%#MeYBAvE92 _Cz͕#Y sH>+p<1{cx핞V/?l&DF^+K]3KCK`7$s-UAC?+Ձjʘ{urilk\dY'Yh18=xcMS&%~nڗZJH0$onZ/0 繒N g!#==Cq]%zf4p]Cؠȁe9`}c\[Ju5>$5 g%#D8l` ⹶2/Vƥ&m[<2/o,ٗ7h =m$J:-,=B[MtU5lR?QrsekL"죲5@ɕ`|#,Y2Dcw2IWWjM(&4Ȉs2(PݭG6bXo§s<{ds[x69Oj _)o--gYzfAmqx@uYt}PԬMB&}cL?8ʱWn)ځ> pgjjy6Q9ҡ Xtbb}X삡16"%JRDaW~et ` 9rfE/_E0+dwxA(PVzV ]K$!ݵ;7ĦꝅcqqͅV6zi5Hyk>>Zu ?}=s}"YV2`?'6|Z\iD#SzThn=-yTI'WM'bC_DsS! 0R\-x왆~=1:qk#8uBdjCT+r|0N7d٤X:[]R.L~LnJRJs+M xwGW"I}BB؟tfl (Mܛ ɪU$Ej(H1G0 8KN Kв%d(o{6JƍfZ@ୢ~ 2(Vџ8:Bq jCy6Яωzn21|1tt_=nYv%}h(yv $ED3e1;^B4t X9)pj>u"n)6O[|}BF<\Tl xwP2-%:e7 kO% &HK :֌eq'szXeMyIO)FQ i:' S-/87?.`wZ'Ʉ>ěMh&&l[szYW=eKa9(U4B-7v)3|?ZDkq?;‘ Q16XEK/m۠ SHΝ6lp%]V%j&K߲+sX\ui}Lq0(5 RdofwQTL6(iFM])pF~|#{[VApi0|"]^7u A&+mֿ:~r6x,8b OCZ\1;g+7lVm64r [* DSiTΏôR)8?]M)[V̊l,2H+Ry+gI>K9Rr`И%(ez\ /z ٲM _^%׈ꛎ/3T:ZټJL[\yaMs,l69z(\֢PlB9wɧ"W1i?lD7N{e m+͢Htr$ъVhRE&e-7! Q 'END P3v_;R5L/v<+#C_Xy'<"x=B*KoZM%{^6ӞUQcy*"߯P9\N Lۚt~<"O13x&@V Xs fx77gh3L?\r~for eVR)nO!a߯E' z!H#QuR;ԎH/?fNe?c%/|Fp [/+J3w@uXW?`ykx3UKnn Or^*8^зw >^'Ehѻxɸ[&hS1NZsKq lDB{i2JRTR1Onn^@,K;;0Rؕ M}R1;d<0-ZNce&";/e.[ Pas2Q>ZVBQi \@K>n 8oļ0pNk U yo+y~Q}ZƂ=LxI~<I?)G`o9 OsSS5ҋI֕$XII AWV_1 Їq#hS7 ք4#ӧ͢FHTyG"ٞ+E{'"0"bĪ,SYf\~0GUM:Xo4!$w=SC(IShaܜ;ntvo` Hzq@~^$#+l#<;AhkO}6rG_huARc7AaM6`[F2hJ)'\9 S|%4Ylc`CYN[H&:)`amJg؍hhGƬҦBI8񴴫QPtSmխ^yÏA~&jɳ ?R&VÉk`VY&LdY3ډ~Mv*P5Z:3XA}SqNlbm^ gl:7 [ B҆| g@8(_,cRj@OXDC:S$e>#ZBI9X2 QfZQHP>Rfe$̵z=S4YLǎI~XWK-UX;~ĮoCQ.#?bWAs~~XJ 67Vu yџĐI iHy[~^\)yCbaOn?6FρFXo]E h،=dޛlYoJNS/v|U7i)]aΌ1 Z-ɬ9ʺcx2B(+*]V_:nB&>{UU~.cX@DQr ]>8oyΩ;gWymA\˺4|-ҦTҌ?fCYɂi+{~kWzdC´8 !ȭ)K*;nJ*n飛*۷òr.3i;tLjH1U]76nQ,ΰU-VYaNe4h_ᯋ9RGK \{XN2_lϔ :Džz SkM.@g|n3$)IO\Hco8Tfq\(ӥBxLV~g|Z -Oؙj؎:^Hr _*-knDw8#|Jqu,Y՟С^i;fҟ~.v (Ɋ} d7lpLJAcU.f:ot;V| Ej66e'bʗhW_Hqg#֑VXR@D)?M[c4_>G IXUPȒ0^ xCӦ-ٯS{Evl=J F_`$#P }*fZ(bFN9rtud~~79tXfаT)Gg;qC} & AkH$1cuUUF W4 HkWT"mNBmG.wh@_inݤZXzod\t_Kޙ !3xE9VZ@ 5:Mk(%Ts3 H%k-7 {.sXlX䜤.P)(zfVN8q'Ьm(^.=z Ŭwk_\ꤎY3L҈OK̲Hq ;Hu\|x~/j>P_w#BXs.ݏ6xz/]Y`iXN^\"qe½bEV A" Ӊ8[(nT gLSsr C-'2>#X73U1tfSr2!ϒ |Tp A%B0Tc}N:HsroϪI U䏙GXhQ^ݹʾZn. C<<-2Za\n-{.=j,[ %*Q~V Ђ"iH#zjcKoqFo:PT+(prؑL[$ M9l=,c7B+x# i.qvtaݦC{)$BnQl)P/fʂ=_RkT?c0mJ$ \tMFʁV |C }a7( _m`/ lctEt%9k^ŧ ^XƾvH$cZ`.̀3E->pV5"\|VNXI#qz SJĬ`r`'k5)8c#?Rd%0.LڄyS}dc141(kKRdDp=/4ݲ\Q' '&gd8? hV˅@J܄ئ HN!Љ^OJr0qb@+~-IՈ5o)˙6ͭlI]v4 k\2n>IX3.I^ a昔#ꅱ@s2TedN7ob O Z1V5њ&ȶZC yAU'<1:Z4c(Ш2A2buUow!wt[[<)˂[*+O2`"S$F7-*o\O2Ju'\|f+1Ks&ZDlgiZ>Bsòvo!{)w}EQ+ 5GCfYOG]MstIG#{tj/NKjahE >ޭFXP2rI![8h-r-ƶp;^>&/ҐǕA?UZKSPM,q PwwZR1B]&T `֪&2aPR c#$4ܤ2JlV!*wl"rY4'pd6dp iy.C*I9C|x<%maGZ-&O )w:fB% (Ɇ{/|h} 9/PّWWK}߂QH+JIJWEB_Y~`D,n>"dqgi'5l76,@ bPr o3hogj2Hּ, Y'K` UAm~%#I/ P=AT:'?4fYҾ+ѤêdO~ 7ۚTNAc:v M~%Nlͦ8,9!ýPJz”M9HsXͨW{(4&74rOU+Y!?s>klZJ{SRw^Pv0;N?c9,"6}v*>/+k]0d挙d")"jZ;O7},Y![$.pBk{0{Y4Gh3œNr] BPi&|_! %0 l96 X gn)7!Y̛޼\- HgǠxza 7$|t(=W'V8qW݃Ł#bX Kt2s$ d4[|xHpLy ػ>V)SA'owВ)Ξ tK[}HN~+.MKH;^[yHGS}#ܱ{qw~9nP-_|M&O_EV)YÒ|ҷ2x1a4ҩ7NewlbSTF2_R}GF6eV2Ou'`ߘ჎ Ω)l76Uj`V@[j3=$}|_s zrP+4Ɛ~SLHFU"%S봖0.Y`)V]߶a|3ۥt̅_ WP#tJ$'#<;hX<8e, TDv[ `q5X4fyEI%g :n;$œTӻ(Pt'%Y՜_[tL'@'sPJ~~XG[/cT2clמϽW (حƐvCmrh[֐.c9oo&UV&UD-Q(Gɵuő*Z!y9,QbB5`.H3y{CXdBٌ|yH9%lL.J=S!-EhTPcVJ-OG2ww(+&:u$SzVLELȼI{NaǼDS${Yo#fe1?, &U |3Kˤ̘: >%# 沥!Ь2unmN2%vDf&i&Y[B8$nK>8ݲsy̋ƹk%6+aJGgY.+Ru)+`" 9#x27=lL#@䆋2],(Gu$֢0#$- Ph7Uw.`Cl0+b_PhF'KN:V'\Z(u%@xʾK@)m!v<_^2Rq;XTj3% +yDneN}0,8_ Bi,gp*.EһkJjL+>4j@;mU-q-F- _]e)3(:٨=:@h{:8y1!FZνw^M&B0wgϒTv T@R֖I'gP8ቄg_؃eRtټ!BWj%lF[n2p'j-Cj㉜'ktK-|'WXVB+7vϕyAn)Ê(IeQ qZev:P.p,]_qҪo.^ܝ&K-p= @;iVHX'߮9KQ+j8 eLj-@nu$6O4fN+nQ \4P4,/9֝}FyM;^Sw o}ـV4%'/AN>٪tz\ɍI[DL)Z ٠/u^AA t˖2:k/ڀ 6DwNM}n?\5d8㊔ʓvY<[;KL k*!믷9gxЭ%h'a<+1?v$$DthHKL@x?|L5o)S8a_9- {Ҽd6᷄l=ϭ{-f {-SZ_GiFCf(h)AT}Cyx5f* =LpGu-Bk<o1y+iz_(D!@d+~,, ~l LTV^/"j".Ϲ?UXvRM2 )& +EB#%p%ލL vDnP(F9ZA.uejI[at LCWOLQHgc 6'Jν9.kۺ@֦}YO2 s}E*!F⏊aD[zרK1W0._٭?:OQ6%u"9BoJGjs5Iadf]\~|Hd-ropQ}CI NC}F?[tM?RGH[F?᥽ذq~<ZeRϥ#f)a7$D!b,;qk'hWm5-qqN&YmA<Ej8A(`.6@75 <08}B4mi-1)+qБJl[]>!`FmpHo*)7 jKBgKJ5݁d~;רc2W,RG Xa ܻ+b\&W8 rt1S҂ڐI)b9bLeVuC(n oVP騘w /'n)yi d#;s7rqv BJ7 L֥lJdiv- 3T6ǦN'iYHdo2,>- Ͳ'B&R4D%ys霘 D$8r|?*K渻r{`: @t6z)eTF̻.(T_.aP]Txnzu:<6bT_*⤣ rR |ϑ &{4iʯ c%Gij|@9 ):lbR47?ud o.ƽLR1óN&V7_i }"kϼ$-x|#PSem 3vԇ:kBT~MF^sXαs{?ϵ_vO0h4]U #y%Q㿀3zT]h2!mwtqfOڡƚjK7|=M{}R Wf$PkETkJ4Z'w%D@BH1; 62 j)_H/ef[}t'ܾ> l0Y 9dg?G a3v̫z:Kz8b~R֮enoCFaKpz]u\(sTmo핣u&[z?= c5 M8U`^>Ldu@Mv-wt-<2U[TD85JRnRq=4@ehl9 JGS޽ [[2J4H(mi uo^*ec]1b}敐p8MK5Se Aع8( bq5mOx+f%,k$MY,/QK>@ΠLBtÂ$c0jE濂I2~Yg˚( cEyy;g /BjU^hM}^QvMm[imҊ.2*T2=)wub0bdrg;Nvj 4?R R4L鯌|+EOOi|Uyj>NAj]򯥞VW*ӌS-$=r_nKn ۻ@tpm^RDy z"L|:CTNL0k+,Jl;E8i"s ; b-̄j/ͷ3f}K L6` u0pb eCgi5dekNhlV5yM,*mxցL{8fzz5CL.NnUĀ;FX*~b}G9 l8&V!–}ԍ>`A_B0-UㆻJ G"|R.UcC}4oy^Q. DZk JQţ2|yѫ+?R歼~Mds~'9ItJ4P8sǣtL`CC/DW|+Gx-j\G*w|!0:^AV/$ usZ(_<5=fL{uS4 ZLYa)Oc3i] ts|:w#R7FI!RWAa]X(bifgpwyuJ$-> `5= ~ΖfnfK^7ea{H#;f[CaT}iNt|?:vGʶ1FZ}t_Vt& ]jJhyxŖ#>l;ٗ9i="]OgD;-\Ʃx߽C# ظ埴BtIuҖ"mY'x[DŽJ\*0# dB)[BG;ik;ήi瑗Pm `C裰k{_ٵqX.#LX1 1 m"u`  SnsS؏ǥj\$N쳜};ͪBx%L&s$Rc! ,`@> gm:l\*X@K8h,?Ut }ˉLI1Yx/fe׎r#ӕPFq#)PhJM C-`/vVM՞4lE16jV@VS!`ߕa >*MWg!Lb{`hk5F; mQMgbDb-ͣgʌv4֔01KV}CKy}C "KMQ6f vB|~/Wwϗ<1QΓ2vv3vO[+AM}r1 Q%tw[,iDRE<\rv+\}#L-;&g45ĭ $J>Z0X-Pb82hg+ųG o GK5.@7hv [~~jd<{Nl>驑k$hÎ Hn}Z̥(咝UCxF+g޺Y/L寇o A{BVA{Vo\m2)F+!@SZB' oFM-8{a1k}mLᯟu?f[j HXVH~ ZhOTh aA ›= "ML٬HExTR39P-ȶs&>wˎ:J`NdТ:R>rjZ("zĤ=XtWFֱhk3Z!ݤM"^drGQ"ג3{\'3:zlk!SjbAk޸4zD~bk E!$A_H$F8]Qvm^a5 vP@g6v| g-- `D<+ \ⷮ/Rngڮ,]fH`!=kKA8!^#-uV yNvnRޚαDZ'> *-1HEϫk;1SѲƚϦ{\7CuYMT8r\t= 8`AXJ((/Qף1jg/sE?UZKQA U#pmⱜ>RsY #A@Rc.BXl\]2HQ7>1Sxl4]7XG?>+8w? }%Am?f`myBxo=YI-i/ke3|X}=¥ofMZ4݅V5+.')jgЦoqt] =i4-!.@;δ|lRa@Ja bWzG蔀zj_8Q=tU~~31|#9e޵/AKf>cIqU _TW8SR (r]^>s d?_35&ҋ83X0 *bP\+-0Gd# z6FOq혣vB9gӟeZ03VQŲ=/x'su1ڷz˲iM۹JzPB~0@N|O2m** 'Sk4*LĿBp.X2y:krprhqwj@㐫=?Mv >(j$r0?&uJOgVUU L"F0wƮZȰq,__o5lj`W($흁Ѥޥ;^QQ L!kiϵ6t2b[TO{zqS IKLZ-:O`{\ϊe e@/Dxl ?L> 3h=ƞԡRT}) nFE:b:gޮH TXȯdfGSr\zeI^G$G!rTmi\A]S4͸q)DL8^sCMqDiš5O41c5oˁgq4 m}Ym;<>b82h5[9m'&](]oE/gyfOd |Pq&D/9 MZ^:Ʋ/S ަ{rWRwgD]P>jϞ~G (s>`Ju)m8~u޿N˰j;484y˜`sJpvO:;'gliWA+(0v.l痈sa\r0 kyPЛs]щ>gY-O5$#B11evG1HZ0ojp剗Fh26#~ivxICMi~~9OQ#povaX@\R(Sc|= B@7ξ8_BLX#SݲƜ0Hd._hĢvO@M D҄àw"6ysxOz^T:1M-E,odP+dA$HE"Iw4R.1ŵ fW{[cD4n÷̛5.auUhԖNZXBgϰ}q_~ưaڍA02%?Zaɻ(Xj#/dRу& s RP5Ƹ~VicYdvQ BŽZ8uiӕA$E1`!rF& 5\ ϥVu[ #?v; +SRL/QHIQr)\" L-3,> XPmMVn\eoX5˞5u bĐeLi$yq,R# N3 gHevټ󓚝-]½nR\3-qbe'6BuZCհWJĔٙ2.{gNie'\9>[ʻ(u9o3Cqk1:Bh@lqqzDX3+D:BW.!' ː9e=Kv#i@.p'Ӎt&#˞X㲦l<#h7  6wEt2FKBwf0Ȁ(y} ͦrAo3w=dpvn@YψĽcc t*xb<؄!_GȄc)"nۺ)FcsCEQ=@$J} P[~ ?BHNA^V0;t}̭wpp" ڰT^+!;ʁ7+۷PapN|IdRNETTg80XB=V҈dz V<<j=FAV*f6p}S@ ζU[^ٹo5T;}Ul;z*ujX{ iP}@-p܆HWRRBFː hr\ܤ6aa Զz"C<ϬS3؂B 2vF(?;ơ^?I{@S\]o.ua$X,J `=GUHbL b+PS6;(nrW1LM<^HL=\bv3F]B'gغ[G6 J: r7F}x~"f @]0!ԒEr-<9D OTn:}u[%u?3Sz>5Mvv^6U z[¬ehnL'.B7* _޴-aVY ‹rVch`BwKL<{T@ٔy|LZ620[O /5ϽZ 7/T?Xڦᅁ(CWT*&'lU l;UÞFaE{ʿJv?0Ci݊lNسcV#7ИWjۀa_;-$cH'Xn!T gL݌0 .i3SHV_ d}eS;XajrtRE3`VS1X܇AFz׈RwB;jn|Wno58O; PmK&rI4*i tcb۲@7 u>^4ڇ`=td12kTX  IM5&+"a*A>zoRz%"- w\6dAwxɬ^Jh Wːt:80Eew~M@'_:~ox,Oc%9jYʣ ̓-J@xx0SslRYB-}/MN[U^7H.:4Nbzӣ 9h{#.ۄKe@ `EmVv~`uؙ+!CC뒸,0DC\ܲ5ܴ]aTIwrzRB׭. IJ*h10LIV[؅4+'&0_)hXZ,h  Gp:_ i~y>CN?R&>gt:օ)+8+Jvt 2*d.bO+:s/MS8yD\\'_?͈Ckua Plx(HW"kݍ) _jz&Ђ-D֙ P~dYQbblhSAP8r+# +P{OqlČz(\`uF2BCϤlq협p޼8[4/4<"Eԭ>$v.:i–'?0oKd߭>ac5z?2?ެESA~?*cb 6C`tBp w7`Ð7]2%vWoB@k) W1V&[-]2ݵY!gHF(T;F!-i})[.VD^"+YHGLμOdq6s]){sRV43$޴_˧&9Zc$-ɅN!Rp =P@HS ^:Cie{T#!7;Lcyϻ4.- ^}]:wvPKV=/2%Y'Ǽۚk PguriOxs0*{I4rߒÙZcS[3`>:hgAz Vn1=e=w>bx՞,FZVp%4cYI]c;2.|Q[YM%_Nb RCϴFRʅkf.]I@ffcR z-hnb+Sb N=o̶ЩH:zlDŽUzy7XaDgKq7fD6sJ =u3`bQC0C jIvt\]xO+dYXۧ3#ḩGo΅Q%L-R'[*7w.R :u%ߒad!qu;n6Ӳ E)獎AາlVCvqmtRDm̠lrF7'{bUiZֺg;)gH念:6f8#'Rwyb_ H.'(z ˬzi(RK% }Kg嵍1,^n Abs'x4VN4^: {Nߐ 'p}@1?_R9! pw{`s j/ػ0uQD q.A2\XȺj->D34B/۱-BnijҼaMSt7cO<&kY)`On#,3QSF  K%p2.ٲohkX<78Y:"vJ蠢13+ƹ>KA>ފ[a~8'Sh:=G;ʿN= *-g7u{{^/ӫ6K!LD|.Z%]-~( $5_8FE OPC۔fkSpK(ܐdxY aO/ 2$Yxb^\kC|LBuŏ>m*ʟssmiȚ77$Wة:qQiJ>XGü Z*Ѭlr\Ո]Bo+P`$QenT:@tUhN==t{٨TI79j4NЕ-Y@nђ]zTe,3kӟ[Q!Bh С INkPrXQ?D^uEIL9^{Qn)xW=PS͊&ÈBO$7ŏ+_Kl!t_[/$.c@3|$+6}"Ǫ?Qo,rx{)ssIQetXw'|<%DO=N6f\y^l<Q!Bt,a6DE9FQ|YOM+I ot 3C&q16Z~fNl"Pܯ<+$37rlЮp; GEz:#?aӸImr.B1p\bZ"-XXOL8(PƋN^f{M{irN?ItwUp~+b̑ 5͇D*Lw+{Bܘ =-0Y.homNO`9שub1(4';ƫ^D {+25>`̃ &r[Hr/s`r0%r!(XCd`ܯClD{U ^T-dm5R]ƿ5gS.~OU?X  h(b5"Oyhy;g3ìy}/F yGCkYv^QbWPȤ9ޝXwPqXꝢ:i;^Gg%Y$5UOg̓֒NF%n! &Xn tGjm$kf"ظ]-bia]71RIQ^dPa36 l/e?/ Q{'ok'%u/ vK2q HsV9P[;&,ѹg^xczl냧PwgG=%X=,ZB΍auH9Ej`#X@PNцߤmܓ\GK!Ĭx)[||)By~;G9Ƣa^@ *Jp_I ~t.=XBBU#CIἳ‚udo]Be o(Y2qҥz}xu3eO-pDB1A_pEYGި_i(ip7P!tJ5[a?r?j;gobۨ|"߃P5,fQkȸ3@9(3;A'~HqTQP#dkG橨Ɂ%K Bc‚\c 6췜ww;el YqC zMGB ~ah9敊{ŏ_nE;ѫ wv4>} ZNPk31PqyEm1SH{7> v#I~o|C[U~1ҕg&@?W[7J;~kyH~4),? 2Z1[y:n8bY͟{5m0l5 Nf*a\;_uoRf6n8PϜ0N @ʲMOɞΒ?WpBiӡѐٿ.uDzڀqgj<$861qAY 8dnV2Yd8bb>ʟLCxS|Ʋn}h؞ y2ӷUeM ҫ߿*sqțR71S&_L0kFHrC mOCi!‚isƋ`TѠz執WC)>=H:|@Kt_ e4펉(+5Sq W1ݹt 2OEse^a&; {ѲH\K<6}"Xlui? Dj")%ƆW)YMRYe]F ıT;tQg'v:*ti~:4!;p+^z/ǭ 9%Iyj`BUKM+K}XC&ASO'HJZGLrR&wYVˏwW<а%-By:b bLJuEU(l] Tu*uQ.ŋ=`1~hI^"osSSn 9x±w;K6(%E I>leq?E䎭U #IuDxeln9Hx\1Iv9Og%ON"3vՆҶ dɉ13 Uaho,KzY ˚^%G"?jf"XRY-R0?w|A| 1w wus9=fJ9%/0~0}ڎEHdVj&&d.JPP!<8Y Nt^ܽy\wl.j[]R"]hm^nB9**CW:֫DKu ykC踾vUɤ?^qnJ l #IwTxf pCX<YC3&*uu?y)ۀ 9ZPn7}\]O\7b u2)|C9"鋔 j[0CbGSx#ep_8r2 PUiӲRG6BO\08Ej5faإl2Oka.)ƝF'q\A&EF h̽>}%C[y(o*dea5/X 81r%Ÿ& ] ąӗ"94Aj(ΰPN7o.g5^O=[o!oMm /9^NфsS!x\&%(eb"Y󯬴jě# 1L屷Z^;l"K" cHYΧ*9Kr+M>ѡ3ILJMMx0fԢ_EMܗlCVd@ Cj[2d5Q_RVȻjiƲg9ي|U 4v'Wx7kAykpdu0JBsC[ԹU?O)j8=XF `^\ba> 'yΟ}h.X1F鹽G6gĭ*YH!UmL8G1΅b}XObv\ێ^tE>~snݬ^]m鮭,k}ePN|~OLKx5ۈ_C*YtDEz}XoH vgRNen~e ٢rK v %r|| *3Niu+%xl#k+4+ak7ֆK]uiYwߘfWUhk=F9MwI8yAЬṴ̃t&1ưb&F)Ģc"d f[WCHRv혰BЅSu0Ԭ u1ksB=1d$7g%dhdcR$ `:_dtw~ So9X|!&2-ncT\u\2X!$<%hqjQp͋QGOD=vTʈ;CP%ǥDŽ#D߰;!?In1>t2Z ևdn!ekX9Ra? 4RE,'um>OKoOuũO6d#@uoǽG 6R%vR7ʑ[%)sB^2fJ^\+TMX18/8ut} pp[;`b5"Vͯc{ǂ A>ȩ0rE {ͯQEL("ˍ؋8~c3+_qKupM4=;99bx>s(YX䟺]"Qhѩ_iO/]:AIH5W>&B\i5CB e*9N2L{;zǬ!fbKbiZ%[(8&[J3oSj~uq# K*j44J 󔻃{$*H7 8%tҝ~A=HU%]t^3G|Mi Dj3ϥ㿅XN7 n9Dz\(Iõ~L6 {igi煍/#]lpdktw;ަJ=;Qv.#q!Ucc$u PJdgCi=A]ͽŲ WL5 &!pӰ#eE3$tlwWMh&M!-/>;;Tm;N%z֑5]i|n@omu/nҽ-"]%y36Z}JIb=qf4 +C~H@ 88J v %N9x"A7ä(Ơkт(GR993;X' !0-OˮQܤ'0i7>y\KnK2jyvxG"+nca施g{HigWvoObKϮv~Q^6WCJD> j {^:mBVzUJ$R>WyV 'jh?-A9wК] m}yi:/J5E0*kzmZ# !Ky6#DI9Jg'_\>H7?ֵM{. jr?tѿ0KNHWcX=]/&E󜧀Śo78qV+ˌ]jW@&]-dH@TO4mۋTRmBJFo߯A[!bwIb}K5MXk&Uɖ]QvPlhj|{wePW@n_z_:8z{wIDV$z-qIMXįI:hP%nܫ.Ӏ4 +ѝAk5V-1pӛζ-k4pkW&5ͫ p+)kw06`2eV)L#|"G"Yhj}Z!, Xs%x8A;)GY#73X"s@cy0/32%7@y KO'T ìIiRRg@'#1_hb3\\<Ƙb;R`rwss_z76Dn%[0PhB:0XeSo)F&C}qQZNRq/+=(fIJ'ChxICDwZ4,M+5EZ.ȴi찇:*'=/ C4xgZtm҉1[ 4/¢Gx&udo'?J 0tuI /ޕ E_ g0wc$e\(:VN1s5}x{^~jwXc(Fua_a5ڷVj@t(Ɉ?dJZI޲M>1puMbe4U}yY̾[\+ts@cay,g ZS_lt+\ŰOA׫Yf"$'!J -*,hj'~+Dk1=kvF 7|Mydi[E=+D`,7CQaë|,R"My;? ޢmW\E2 dm"XSCzj"ӇRx"3cM4ux?38g?'&"ThG֎:Mul|9pr1ꡘWK d Jj{=*sނ-f+w-E@}҃*/sH$ uoERAtxEY| $ rlj=-D$0Y*2$ KWt<LCt FGߋ c2ð6Ϯ/Bs'<.mc&̒;eq\}_K--cgwj#V6-C3LDIͳ')d'fIք`ǟթЩx#̳vD_Qn.~鲋0LAs[U~] eAQ:ruH UvҴs_DDw$9u ȥ9- E r7x|)dC8 gbÙyHWLY6n] #N^QRVr8Jz8F 8Iʁ,NwzIU6)G҆y5MTR)->ݬ<K al@mA=ń I60鼆't7|_ԚTso50a}O(CsEF`:E{;̧g;U쏿0bR 6C9v0"Ē62kӿx,ó 9f&iP }'.j6ΥM`n.X H o@T YnQ/0A"=V+w\uv{ކV kR!E<9:!ܴk]`.^\t`t{W ɗ\ދX`V8>u|MjH6''b^Mt'΂BoD"=}ègltMԪQ"YAi1B-LZ0 9, rNipCZۃw-'hlG3XYo|SD*Z+*%c6nF G1B13 ?yהlyKt5(qXH̎EfGkݰ: R9E1<29J/oީ^f@lԏ"InH*{Mr!sL h5sY|*';_-T䂧֪`xq1 Z(+g%ORkփK2dǩzgc0YH+S-h!i=,cjQަq8^әSÅ~VpuDQXkܤW4HLr5{SAFB!Cz|,8Dz EԦÍU,~#9d@[ل( h>RdEsxTӿW:ʳ;oZY)ך+pB%w]#ȸ)F3"R'NMecqr#[ \wԛi6 qU<|0O IS,vQŮUx+Ic7'H$*9Dq(dQɩʘ] j$&U1A-ִ*q\Kr_<-"lV@}E4H6!Dom =K>f^k'-d$ A45a˭\.0ǖ9lFuKJtM*IoT&R'c./9Wz›&< rp4Q;cXd$ZU6+3G6 æ,:6']Gd=wSٽYSHʒF1˘x՝Ko&~c7;r굘j i}wVU)O"'KGI op1ss=L ]$}|T_d[o#gR6Z,{OQ>^UJY euVwG;gw1a\Ezd}t炀qON9Y  #o>.X'D"BގL`AY!8x_Q,e+BBr>Au+KS X(N +6r7kka0w6Aa|߬kNvޥ@K;K$(U.lDBG硍~Xܲ/j;Y{CzNB2iqOj-t0G6 { zwV^X\lEp׬Ĝ$w&[d@wyΡYju ?z$%! Œ[}wrIq 5r& :@`$I>VSlەkb {$21nh rY%1: z+b.}3X`έu[r'}#SB#/ޕ&)oCher=$oYczN&^w\ҽ!W;tQ5:mɡϽT_ 1d]aR,/#5*fxHc.+ M+JY"/-E(u)5;gւ)m*([H"^d3/tLWrYdִD;#=)5v^m J{,6Q~WN^Қb|mވD6>b**|2Ys-p .S:V̑Ii"Ǻfӣs윙}ө#4ES4)7jtIG%vVc4H#A)ni&@=Lj-n6Mb7+B̈SO/˶pSGs y~V7ٝ9=jFi[U o$xBrhvCf۟H%6 p1n~O@!2Rp)]k]P)Ã>pR4KҐ##is^k a\ I ;"B;a9= d#u_q !7,]jԾX 0y=<\;f{t"䐠dQ ^'!n(TnD:'eU1L?׵  iilk)o3 SIs۱[0H߭K]B9 98β'MWYhd9g'\f:u63]x.s4lx(.GJj@sN\2šBeLKF +KJjDwvUދNl^bE^IȔ P~dF33!g<{PĂe+E(hL=}pCWW3Kgj)[!/p1i$H_ ]I܈!Q~BUm0G y+Hfjpƨ|^la$Wm7cp%NtO?]]:4xsaUi6ce<~b7ՙQAs.ś>~ _!Vx8I"ox_"$_Nsuu2@֯-eu*F@^\T<4msvhq#8gyD:Y.!&4qw~(aHNI `J$Eܞ¢ͅJWHtC8|8MG[1 JKШlΘ{ڑr84+AoCW剐N IWSPYQ &If28S)ZW|bO**  jQ.47dHN \LA,nD?fPFm06K0JֆS1g>WjPDQ}nk R&g)ϛӋW.OV :"G_- {ry>(RGJ=G$yeÝs)u-#2P/ěghPTX>9r0Ht2wԐ`y~^Q^8g7t.~y!bs)Uh |!z J힤"I)O&X1Yqx>꫗(C1?@4d}@V~ -Vfjs[]{1ODI?[$i6~.0/+pM2 Ks:s9[[+:$"#SUw"I9(RD D J=db55߫m-B:w^_ Ogs<ss(1V&/CQs%4O$'UifgIlG'QW|T%˃> B?ttZw6!^QxJ#tA$3蹭sΫR+z9,ýT+0JQkbHō\Uq_+13Í2i6-\]z@&X_*kZ%l7Y>w6^HE@rg8.IRyVg:(kw!j ~7]p5=V{W?=&Yctf&ۻ;"/BVykV- }z- a(l9uR@H|ޞPTn3,/OO@xB7&cx x- tȶ#&$nii<΋m 4s'P\\$t)j!wp3eEU]\kӈEZ3wSI1!eC&|[O뼮7-ͨfȕ5FJHƚ&^SƘ'qN!xN!ڸ@"z-)ˎ$+5j=o*H"4V3ʾߡdkfU &i| Ӹ[C!OmVϹD8TX(5]"IOj]{ˀij.RaYɳkcB+I`>$tPޮ.4]&DXgF| b+t%"V+u﮳ܫ1}G=!7L'o_$ćmVo⡑/YLwFkq>4BEn˂`SlyUؑ*0h-"g5*#)NTWU$Ip)/8M|6}`wg=gYE۱GP&OTSP++98Mq+i ˠ.J69Lxp;C*QJ)Y]"K#S_>8gDHeos] {qit>{a"=4[94X$(qP*/0㔣%]q< Ox/N9gTNHMHx{Jj?2%ZQw4̽F#G ȭ{[e6G3N`4<&YG6 X86jo; r :jڔХwh|#]$u&,q{FZKmRDLjjHN]Кq5.f6<>!w< ֣G}2[0V؟=4s|E|+pm%nJP5C;b`2y.B#(YxLcEе;kKdTLL۝᭥jq&U^dDkg<ҌWjNNm8?'s/88d["IRHىXp6~u(P=CJ!:o-p#%RcivkPn83@!Y]XL1膎$6xyO !&~!?GO}=Vż m0X&ewyMDy,X vɗnzF>7ǪzV@ſp$Ot2xF&كBXLMn.bOKG-:rD/ͅ b$Rڔ5%y7Cr[5tG8ՏbL)D2M{-NO6[߾ Ws['* /9-~Mӂ:F+s}'(8 w*;CYJS7"I}\faFHhش>sAo- ȝJb/yoVWu%Bq@jD%  KHǿٶku/lA Wۤ: nGt(xdbwpC r`Ug`[~҄t)3z2F0k"0gQr3_ʅ^#%sq 7n}^v:wCc{+l ;iMG '^ioO$4{0>{)A|Ė`/ v{nۨLN􄨳iH0_z8U*[!3Ө)M$"B[ O}2ӡ\Cbvy 6Aiڟdڊ v$0weTp OS[Nt$XI3RV!9Ύ_w3MMSd_6/zi,ޖu}/b^vԚ0ʯ[jIFL-s<6nD\C* 'h^&4q&'gO*1 "6߀n󻃪u 0NO]5n5g^oN*ݑ*6[6iS1oFN+/;ɯ e$I; ]d xR}NpDS"$:Ss,gBR%כ%8fȱ#4\G,.[GAY0\j9=9i EDcZMwn!N-LCҢݓI >"0YSqOQ;iQI4lo7+?1HD}ň@1&N5[QA씣>w"3Z]g!*Lsnp~'a $Snܔզxr[lź| [^$DEXplեgvN}^ U/JHoҢӁ*a4'.SJS ~CЇ6 ;4_B)тnmUsF/u_5Z{ZK{*y.Ol?SG[uSo<0Yf NWR!As|TҼJv|-'Q"!F,Ƃc}1ĩ:SsR3!c5nL(rK0'1n:J=EԔW)P@*Jq{4Eds +-ɶ=[#^F02 $QHrtA{;& g坬[9h0UCsxa1nl#ƔjXI2 G%#Eʴ=Ԉ3+ uGQIFwjM_Xz,WHDWWspHXMՓ#9"%8WufX0gAƳW* "Z;0ֈζGc]q{Q,|K7Q N|^6l|V&(S҄ڜ׊9=l̒mi~*M V [ؓItD !qV)8sڎ~3SD բc<^RwWd4kK脁)kNoNzn'kM⚊ ]}I/Vrﭿ-3tQQ1D9h9Q>2i40D*m]KJʌ)kQbD?8ɝE:)y=OS!9*N-ߧ1 Lk0!1 fcwK7|`buN_cF$ N[Pi@9~X͑lY8IE$r +I4T>Z_w,c/) bLh^ULRc"ͿH;tZԟmYM@[g{{mF("cnvDL9c#ՍqhQTo9E/)#^Qdt_@яMR*h/J}k<𝛈yocԈ5DA7D.~Na dd)<Ǣ$Q|VRp].z[74sLRI/w!Rq}#R~pb`w%]M4:*S1g-𺥤 EX0?F.7KdTe9 #sjƮw ַ; {$fG#"}Z܁]QUꨴzwRP7Aӯ\J=G*4#9Eju4o+su]tEk7u3<g1*+ LPiDJrld:"V 2Ifٙ#RILڊ9@v?cȼܫġYgG5Qu˜pɆ߼[ڇo*?UD%y.EAmD~׋g aCez~]hpK@gh(&4/@4z1ʫ4*M/*֙&?U| fv4%\ M\8@گ('īOhڲtռ?Էv)@(!&m!}wW/KfG6]-gK Rj$G֥Eƺj3g6t7;2OrרbyYzYa)m0 }y[p){C JRz}c}=PO9KϤ<DJ8~LW"55ĝ 2s s,ĬwE] oC8)IGri(3Pn b~Y?+Ҡmkn+y7zh>t #Twcs>( goP">V[4gToOdVojZ =^a}}z$E{[XyT\B\p'rj$u;rT &zq&`a3|)N$ = iY51\8`1Fk%$ߋY@8JWT~Hӣv D]yYIǣ{^L!:Kepi gC#in`Yo,4hH8oDܘfW'K?Ei?7)'= Cž'=L!Hgyzz945)ۧ?Հ"v;rԛХbyUcM".J{:8z掠[W?-bIFB=~r<I}V^=N)l{sLV'>A'[ %S)Gw㞝>HWcnAo vЯ+M6_ !_1]9˴)zEIJ;qtNW pnl$WPj9Km-v Wn:\cp3CVS=F˔\u@;hQ~WRKY#飈Y;]<,{ µ#`KqNbkA5b5MEv 4L8AŌg?U<i % f*{J) ;k. ƗxT7A;i D>~vr*E%ԚLٜ mVLnMv)?8cJcL2k1sJ!s^?L鼽8|ZQz0օͰ9brk=15 {P{ʶv*\bk9#+W^ʠ5Jb"Iҫ!KdT%I c|tx,Vo_qFlV|9cɹ*kB$PUV|u2$zN4\8L&dw0|dȞC7(~-jXQ'wMudm{SPhM;Co0P>_[2m`LBg#,t2U`-X-\yZqǏǀWIQ 9yY(ȏ}^+pAEP QVYyo>ZauR*/p? y:$.v#4Sx]<9 Ӳ&yۙ[$6|Lng린I1p ˘4ևlmBrg—e1uX:HC:HXX~|}2t$J4מ'ZNX8+iՕvu;IOb;ANn ho{:ELCטw'p.dϕ@IuҐ8D#u~NJ:$cax&X߁JDaM2P:"CL`a f|&+#@PPjҮ`GtX)yVIIN>GH)2w~ZjI[XțZdaFЏ&(J4 c tAb*"I!#@t,t~̞4S 8y)bu@c *tq[}mC醡j3yZ|F:!@6N5&W<^B""PUY:gsRL[-x"ؚ_I}+ZKJŕ-ۨ9B5v6( R@t,&}bw \E}2diGm!|Q,׵"Q޳Ymi36Ee}cc+q)E^*.~Rϼa#DFK Ɉ8|_"+ِ CH4|Ά;, xj6'Ӄz 9rVᅞ_?ln%̥@j3cOLwA^TԲpn,~;eC]˽a]7O,5MC3|=AyU]((psaLcw. ʤ6 xKD"IY9v!.h-T?&h avz̠XTۙoJԟHv!Ƶ2cr DW%}56(J|J-}hY2v򓺊ܒ2^Ax][+sg9H3³@Ѻ.h}u;} (AgrE#a1^GX9~QyCךls{hR<čP'dwtADQL ez.fpVD J} /XUN}ե:=U\2$<]ɋ#w/Cׄn5b<\7FSC0*j9swp`QM@h&t!0/o!x ܗ+{'k[IH\IҔ 03ىy~rs -r$s_>Zf([ΜÚ?_gN?HU_:Łd"TH1Jퟎ\=/2@:Pf}yN"9xF. Qƞi!7fFԤp3l@%;Kc?JˆsR˻_7{+wzࠬVQԭFܷz 0*0 =iûqKK8^ş,=doPo O-5fLҡ}Ft`SWkU+wnFR2/|Hytb<}1&uZ$͵K;,p*\H"4ެZ=(AlxBZ2<@sSN?s-DK'"rŕⴶJS㢔 -ςbw,yFư=z U`nX{8,x^<$/?O5v}@1< Gʌ,&]H$J5xJV0Tطz}7DOr-ki{'; {S\H`leQ:P .E°y+f-oQi#zY"wn\ VF d˳{6w?. u@ci$e{L4>Bz bAg%ȑJ<:U ErO3I|D$ GFu M&3L0 tw,L碟,-T+ va.XH ,r@ |I`04 8ϗ&sټ?lcpHɀ\d6tUNh坒7>u$aiSs&n)x/}u놻(PS2XQ>i58!ғPf99-Fd9rqvTKsN<:dQE>Ũk@xgS'v!m 4/2Ǘ0hzX|k} ,uC 7}PD6~K9i!${uTTᚤo^T12e\n3Fr>KoD_jl jb)l >EbO|U\I0=fn|TW>,k l嶱2jo5 OA60&}VcΥ4Sn)a[% ('Ht6q5eR|=~~+ di!ܹ a$A%ԏ+3+g1!.Ib j̉c%(¯hqX~i'[Z MZ)#(J֕_kƳl)z`v̀ @ ^̓Lthy;խG&>JJ-=)gi9.z?]|Ơ=; i1ˡ` ď缢K%@IW,}+}O\>㖻 D3UX.Ն%VO+?Yƌ[᧪[",vod$R{qgt<R2{5n'lӐ2r~zǦ2鞯BBds`~v"bc)ոF81zqPe76рky4Ն+HHbqT+y>Ȏ7n/!q*j&b :\h zrv8:fk}#]w0 6i5hL,$\M1o\?}8탱q>1ܯ(W%LoZ90K(/k KB#> Y!_9"XlQKfKث6JN+y&|Um&a ;Y;+q'#B4-wK7/sB-RKG{܈UZhdXw޵Q'[(Cdybw[{"YOuX۟0Oz؝'6DdͫabEѬ:o4J0>!(ejww&k(=2'ϗ 8s~0UG))EF)2φu~&`x 9)Lc+jT]vduO_,PLi!*~)bOQ9E*c%dROպ~XS>i}=LQ*` #L C܏a[A;C6jscзqvw=XgI|-^18&\×nm\ݺd8Ϫ1VEN˿sЫ6W˿8)jռ/p-wN5,p 0oFI0.Y2MӇetE~cp~ qd8:aRl''Ңq^7"WY qOKDp\ӠtñuF0G?qL}H\ns͏ogP~b`t{4 mDSBg 1 Z]2k DѪxd!᢭w6jA![/smKB"vf J_-j{~]?1M/%aW.cҟ'%b ZưHCwK|#$*'Bt1]X_ec!]ܩ! 7bW,lr٦5E~+T l z_ ?uUaEjZ!bZǀ Ǜ+(e۶񑕍}Qd@(HyRzE)=ѣ`OM,a?4.-?V/Y.5uǧWnj2&kؕF5N7A$\SvVU( cHvV Eܼj`me iZoʵ0@&hc9n#G8灤`qzA!vc¢ .N-JU;p a' ;1t7]+kn( zcA*OsF-*1L@fX^ý{r "CV9!!z6"GBbƋA6u=ƎHpF(ArIZQElYb `k\EkŀKF o ƌ{`~B~CxFrm 9IfzXJkbtS!I߾|ՓgNEQvk 5rCxDj\xnJGou B<"#mE|!k.^*'mJoR[<;$B9%Q"sijFC*\ +ā\OX1ߟs@tGCP6cI ?~Nzm$~Iy0@bUU?= o4[nGUsl v?zc6ir==SUOPmv.ac7释|EE 7\S vP.]hAsv$?xj qa*/~9p |MA߇=KlXY#6R_Xp7ThskPYJ|NܷiG$I5x%BI$Iun\G@5uwS`mHCMЧY%+E֌ 5Kb_I62Tx^^8ns  AϨa`_`]KZ`hϲ+N9ʽ̎kD3N'>"J+*o7V^^JQ2EKlNX]{p9ɧɀ=BʇM?qe-+q+|l>a`?7IxK19$IhcN_o/0{!N9SG}9xlt{33v# f!Ig({TjUOVSD'ѪR [y͹qEbanXR] qj'Y+tӕ׹nrc!l˲+w$Q;ʽ yi>e0ۡ~n=]60f)[&6\&mEp_P]1 ι ]`oQv*s/n}y6*,5PMރN_F qQ<pƿ'׻68=qkBG}ͼZI#.hi܆Fid|Gz5eU` V!.Xóz""50t!lZ+6Pؠ޸recgh'ْX}q,ūӁWݧ(LxwDGc @?Dt3f_.X<Ҿ+!0vė;ѳY'qZNYD Mמ\xc]&‹.݋0"9;ȍ_}?Q&cS9<6Hj' 3Xޖh#HlIw uo$7eo4i3:62}V)n]Vk?&^)dp"E%qi G f{9B&JhǣLJERPtk(#Vۆ׮ᣟ a}I8+ػ<Zq!qe`D=TQiYU*9i`05o8|Nb:!QŃ(7532O|=Jjo3kq!,[ R=8~PK.X!|93͞ !GȰO}tG>Àv2RC爂,3P^?) K\yxo `0l%؊e G A-NZ\)T ḕ@7bM^<pQ ׋ m-O V6%s] ["Cޛ]Zch7ݱmz{6Քo]ha/ONeUcP @X?ޙr0玸O ؂!VP@co>pLA/ by{`'9$0^\[5Ϻݬ&0F|OnhKxL_նis4C`m}kJ*#ɀGq 3GKb&֖t3,JCI \`C؄R{f2`[$DӋzO=Mk6{l$h1ZȽx)+Vq}W[ 7nOѵz~,BFeGag֎6j | VVj%l)nG 3y)xy&$&vl.%d ѓV|[ rވ±MeIhT=b|%c Ai. bJm @?<_uD3KIIwgrzItʲT"&dP0Z{,]Ax;v 0}}z!Е jj|F%9k^ò3;#Wz8иhWӀ+cDf˪3 }ϿHr aB_ަU 總 i̜&P?=v!*Ž Е^~,cN=q5Hnmib0篲<Ȩkֆҁdp <{::VۧA̚D":x<$ZA$SqW44g!ӆ R:\M67:pYoPH2^^5{K|%# U/iTOC} ˊ`ݚҷغ WMKSπ˧my==Ȣp|_rbz/[U< KJpݶx6Q;dV]n)rdj:ҽmbqnd mk(#^y$2Qzr]VD2(si'AKT76сn W)|HO:uyj9BN?zZ:@t3XH9tl 9CAl8⯕qaL3ʲn`ʨUEm wߐaR# Nj ܰf}:#gOykQ"D?3z z]-a3*ɰ;nJ3SC)TD%$8c2Ytԫ.c|i7~E$UlcPfAUEݴl!+O0Bh[vl/_S9\X'w"ʻ-?/^[$N1kv_$ E37*q(&àG|vѡ9w Nog t0n.t!\<_ג @Q^r9l߯rGk` fNIoN@.G$FKC/b*yH2lX|5C*xPz+U]T'T,q^cXg nz4{浻]1-gR·,X8M#I q^^{5잳$y4# 1>6m4"GwCc2ƂBSo5Ad#@E̝t8I!('ߟ8>(| P,ڨQ$L/)4eT#evCJɫʓq;)X@CoHhJ*}5 u3iS*E] ?ZVoifTh/t:gm]W@g`LWh ҷ7zp*Cm_],`Q6Ku"si-{SX.LD+&&?1a~$YF;Q5s؊ƴ;j 4M) . [fL]d9N e/;^PEXYeHfXT2y!$ #iѐFE&%]yMHĪ9!?1'3SEI&%XHh@(u츚;zu&ØRhhsi_ 4Nt4|^89 ?4b`˜w0i< \LkC(g2IIu{$1MZvn |8E A˗؝;>>BzN?+$+OޡMBNʀ9*&a@r0":ǪLvJF d{6I[}U`컜w4#/sa/GDׇD޾ vy?WgGux:=ZGg1 k;Wʾ"BAEʄ&h֋?JX|7 184Lb]mbEv&g朒dnIEJ UDQ0o+z AMs(av%SdR4_į G=%ՙz~n sĻyMdѽ!ZOF;U$yӔá|FlL)]W`[c'&b%{`]POB `C-x{Ff#wt\i{1~Tlg0lC[@+JaY:yqSlw 9%[,i3תmh$9J4=;dxW|"˒UPЮ=BŰp3\ SoPBzPƗ:xLÏ 9.vϮBaQzCAXCS8n[1*}! 5i?|sAV'<<2ȓ>k狾d2y>bPyߓX*|bB)gqG{/.Y4㛇n+}ѓ!l;v{3K_ ϙ uk#;4O*8 aq٭P+tdc|rqxmUSpE1q0ZUl f]f;[:cY6uD+Dr-8v;D$HNo% v=zU5cC%6վ[g;{@lnYa&Ǔ: Y{ٟK"j>+Lsu/<gmNPbЌңpO%]Aom¤Խ[Hrn㎉4XT[=fvˮy!È*-gN hx7bQ`2n2[ k>_푁]8Lڧ^^r֨ZZE T9rHAjؙ`nDXG57(J48/߫_D+ <|TߊxMIjЗqRG,$ h1ᄈ% +q>|ۖr` /e=Uty8k(~!@.>jKOW<٭ &Wl9z8,Eo(I@׽&f44ҹO1?8.h=lɐ]߯@1Ny])6eSrOe @ӄ"~UAG,Wx@5[fBŋwWuGjԜJumؘNdH EUa bX [12dRBrZO`P(<9*\#/,k{ R7E7A A~^dFpYEH2gu1SH!SIiTȋn1BމScƣ7~b-aJ\:>E+ըoO?X)"kR3~bbT2Qq.@)C*_Q%S|@G*xP9t cTylh!+>~SS</^]!7NybМoULh’iM<_gt)ySN6?=PH ppJ,pr>eR<*eL&=3I"߷M*~-t W^}n7 3^T4GYж%}[TmqVwbF"b")<Hԁ2yQdtnw!j1'uZଳ!x3I3EH,l؃q$P(0|1]MxNI^H QFːJd?i++n1hHFO`002HWpϤV/  I:H$H1 @E|eh7̍s f䣌&l>F (#b{$NY#,9+*@t)![|mC,[o@'Ͱv|wbiLrOJ"1%r$b>E5)!_j ~;Xn˹nkt0mD֏}#-6`D ,ccEbyo$bfHaFf`:M}/^v(0{a=cԦ8$3o䂺uNnKC;V؇+]ubr/D q S# :/YͬbMaXRPowS+j" ~EkKWgÏPL()񬨂~w}gWG¿$Da&~Ylmsayz<WA@V+SvI7m;›')o|A|kA{XJ;3*%4BT\Ttk'K%$KP.V`t&Vi6 iyM6#hsaMg j *8LÌ`*4XO9~:׊5JcD$?S "eM_0_)%jE>#nE,"YfeߣJAIjoq~DA)oX1J)tʉ4 f(QoNL)vh͙t'@٩$n4+Xi(9 g\,21 E #鱦8n.7n)\݆%)Ub2&9+)'DzNmmpiY`K̽e^%C#vy60XjFN k͇9\RcDԥ'W3 l:=烑 %F9::y mۻ^:U><S&b+ 6Ekno5yGoAX7CȺ;UZTzfd_7) >_!7qI,-p$ox!齉8Hȋ"XoDٚ,Mkm({7ѨLP{y|ݙ ŏW (B`)|;RR-*F3 d>eB˙avcÿ@ٮu ފǬM~,tM<٪և#V6vSCo ] tEMݘܠC7tP2t5DުBeffIp=2HYFO9gGU_x0F騐SȹV總-2cHg e ,[OH*(3c?uk\,_=Z;VEb<4g(x}YGޖ)%xM ~? TX+LE۠N"՚wE?2|@m}HnVͱF1amap5>I&R&AN8;"f>ӶMlѲ>ܫ ]Tovʇj<k'X8dzW/7ъJȕv8}$U _1,jq^ NOń^fsXGA]á-ةʩ&?nǣ"x~WhK yoi.o cO~i)^:_c7\o2k|=VUqux;'L쇥/q oo%a;LίC/k!5FW/! ȨHE#srgj1b O49~֯]2M_l 1S:"~K^z9 Es/)p) Ҏ0?2Hgt:uj\뤭ϡÀ@V<7Nw"(F;%bF w3ZgO{}\d 8R2vXk -z4@C3AFwB.nb kO׫$L{[]ygyi$HmQ WX5'i+(ifW=QnG5kål|C @rF}3@|a^1I!@s}U?'[7xC /H?Hg"@u( \:z; -ځBIK}!ȉ?­z?yx6F)r԰vXy>?g/7ISH '/G[֦\p?Ae#Z"m)R.ç@kVW]u^#9SCLn uk~<7.EfLAo: m>y3~`*Z_)SYh(8UH\Ч3n(}0ҽd[9A]ota\3M5r8PLC!#D`1 . s`®1L)pZs=f1VY mynw9*ߪ*"5A]@26@۶FJ;4h¢5ª;4J|xOӷ]f ɕ# 0R_`]x{U#od9P=B G$Xչ"T}"5=u*!qlCzb7'谓xR#K*,qx^/1at-o(Qhv5Mn1d3u=>[{c/ki/ C\=M,M J8ڗY ? ? ñ5*BiCb Ff(veHhQ,L|KI?~g;+^jݝ._n A /^=0{aڥN FLЂџQHN؍- 4?MVaU~KvwjS91?o$³6)qO!ŝgI`2qKF^ [v#g,$6D3\CO{CHBYL y5ȴ.''g=T*AYV ْ_7H\>2<2[?OFM{}vzBLx>#^635|Feuݭ, U{ Y7Me_ш%`yMT꣄p3]P$?{mb"+clS]Vu,PZm6uV~<RmxeK8WP i0}}cHqsbT\>-h3팷)8! c5m~s%%9U%M"s׹BѓN#.|m9Pv4~qB3J&W-8wD1Hł# -)mZC(_m(5*&p/9X 0KOD3#⛥i@^-<6?J4 Ɨ7*fy6&W K-gtȲi2-k\&&A';h]*%v&T$k9h}@BL >+5h_>o IpkBtj6QDmAJySeyVsr#79ǣ$bꉣvݺ_W^e27 Y ]< )?b:(jooD@ry. '$tG="'A:/&9) ZP_ h/@#3#-7чd >gC$0{̷1^s\w29QٽfNMҒD)Qx!J R[K'¥xM*\ȿ;,1n4R5DVLA!b8(tHO1aOGdi]8Ӛ Rap \cQhe4;XeI?hQ!;Q 8]G %pIs|u7*{~,0[=uТɱW-BYsN )* ڧ^e7sȆ_#{']< N+x&v4Ǟ@uN6 ՠD>,0VbEҲȂb-:-#8=>݋:Wo.ɶuնNDjpL\ xZTISL,TWlZ@ 4¬{հm#ZQJkFC/bM :!$e9}:P-Zow9$_ YJyc6 ff;JnF_{4*R Q#žB>S'q`+'ճXc8=o6h.MZlP7Vvk',\\LR}]3\\nf9od1nb9[TQܙJ\l*#5VBIRKx͑ƻD2M&doW|*uN-3gm?r "j xE&'12zxQgԨd}Li^*i-z W'`ImӌDQ]ȠG0c+6N^va`,y/6ʠBhRQ!*`:*+X֑ 6D"/.ZҨ3ѯ-!0J>9 ngl)+r 9s1Ҿ4!*pf E! Mχ)HS3:D>EKX:k/_$uٕdN2AQY^䆌tX'+p“!jL +Hz8|\\R+-kǣKM!?+Ya8dQpjWq˔Yn}:UWl˲s=H%pr3ˮ 唤AUgV?`#-VS1[t'0+9FC+/쳈BS@ if,0ntug9X*fM-Lzl/\9>>gd#N7>!])Č:c!V5) d$k y%L7%(8_TA/5A>,TcHbdo9Z EP$ H(hub`jcߙr&9-j\1xb,XlHF *^0;(d#Sp`wQ^%+xd=azBTuyJ0) 2Eo@(IlZ>d"E뵍T5ֶhC s24ծVfxtq`(t[pHأc Šxo.ȢƺH >]ek4[ {Qo~lk="H-Vt\ZLS/lGWY%]7~ԇ+t;M vT߆ae{TߎtCD[(QMiu)Q`哩kZء` u2*5T{oX >LP(!WD¡#sWвSUP&w~Y*eNhrwɛ?w؛RehJ@U8}߻V=ZqnWHMoN λyCvK *UlU.Hg5D;t t$9,çJCZA &Jt>|7lO">P-~p^gV/@}>54J Y8Udp[۷!Γ. A (" D(YH>J-/{jhkiao 5uV蚺 ܕ_SvPKIX1J`Ihp/%u,;1E'al#dg3Yv@ِKt^A!H@53>R3kŒͰ=dNfq\=,tZ~3\v) zEJU1g/r}]Pvn;spk-u-T+=ۖ?hjgW-x*B /> 6JIBG^|+_ɝY6B`1G,Sk _ ]KH[do.g V"H] 1[mI"uQ4S/ IMWБeBkMC/&a|q*vU1ucֺ<"siƈOΤXI._/ [lnM,,5*p7;.H+胥Tĭ8FMg ъ'xeѭN}& -aCھl ]364:f1ݑzrBDM :ܭ^A=I'ǘ`$B OflDY;ڀFCb߶|W1D.r I3㠺̚q>,g73t4;\fl Yk.YpQy-d %$!js =<@fV$oA1L= FU8s4X JF)h.˃Aٜquk/6 IQnWF5v(^&9'_¼Ҁ0,^b& +{YĨGߌ8:Jz:>+|=O-9tSFZR$-ߝ!-&|2u#Ӊ0@PX uǍוG ewqViBHL :LRj_ϰq#Nd3w-qxyNά$F>s;Se$X_}0 5 SXqJ8w5Dٸ/$NT N50X0Zz5]!-1i4ׅ87(uk.aMoc@叼G܆# v i&| Kk)HDhEM kCslNevQ!QAmA ݠ^!:PfQ)(mZ! )=vnx7@7و9HSPJ{dōVR# 5=LSKttb seED)9,4E\z!c(,[A32>ϝ}M&INSӵZ,4q^G3͘0 &? ؆[%vLX|dƕ{zhAxmiMe)f~xsxE@1*!xR)BN2(6ςnLYVe_ѐ'ˊ<\쟿Ӌ>bQiPgF8@rh]uˤ#" nj Ɔ?،[ ш2%݊z? -I=ksgMF qxϰIa I24visJ, Q*r>Μc~%!wI]Ӑ]:h|VaMO7 x=za>8vXr8ԑZf+5ث COː:Zc}vYD``уJZd49}n2ػwIK+M,$O_.o%^ ?h_.:9쫍r/t&ֶݘ&AatCTM7}W [cpgY3C &^u]IB1]߫Yı+v J,6N e,N 2=Y. kVO6cƟn#1P3qxFuRf3=ߠt[ )PKeF3g i!}2VӰHD?d]P:x`8V;tpSni3ʆZP4TzQ vw:[mvMN2Y#ƊPdr 7d~ӵ,4RFyBFf`.DXdT ]okB&ci2ua¥wd^>xwr!r! IqԽڡd|k}J6 ~|}4t G‹rrmIKs™̽KK:4fxo0-,BDenG{|]Nt"'4 ~y-?&HP[MEȾLMP$G˷͕%|li"`uNKkM8 Wf Ⅺi֜vyd8ɪN葜rB.˶۴6ɼ4U:`K..:fݚ3;`ߒf= 4!"C|hyF:<+L6t;Rq^^R6ts\>QvZgm.pcQSj 0%iHE^%Ge,Q>ne}fXݛ={A䵮Cn3i?$,ݓL_8DE\101Xlv<"QwS/vM/ Y7x./RD#ZMQlUٖEaqKToÓmV',J#skIk4D?iWoՎ]w/ 6G01 Iz XML]SBjH6]̋M;]bA  96RDE+i>Zk^NCъ KӖ̞`yA*@alA:kua\bHLOTGlXZܻRHu'8R .@tT9"AV̰&J9vGقs,ߋ30AsI%ӒhHR>ґ1`='49&)MoprQdHRyMw^-(@_0"'isSW9_r,%,R܇ӃTÚ7+|,(C RkI<VUha쯓ū[|!H8E HȢZI W_mCbR uqTIcNq:jXI25% EGxHA`=umº ֈoT[䯝';3~닔̓BZL"Y_{|䜅N3p >[,b\'c1=aTxu‰X$0$MWtQ::lb 'Q xҋgJ- UW| }Ko_KnցCaAkIÅ6 vfx yWg2J,?Ԛx_@:)/ 2&ħOt"o|H~\kX;? xr ID(;UvTD/Koؽ"c #0Zz܍`t( tx>m^ EՄ<6 cCإn|]]N~MܱT~^ diG-N1hlfȔ9ХMm+1EOY0)IpK;%V>wtלxDn.aZjxO Hz"KPX.pw!{팠d|'r@$`Nf͌?jǶB vu7z8ł3 e&_Z7) mڑ;8ӭm@!VzrnNv ,Pq]*tX2D"&L3-*#q7M.`^b>Bhe~nY19'9k+_6jyhLz_hA@2Z6,6"`;-B26ai$&3d^jGvVe1StQE9X\'JJ ؿn*YH4+'Ry{')-Ѱ~i-߄^oMRgۿ@~U!tjɵWi ރ 8nmbvGZ[_"!Kap3-;df}76Al3 BO1)_?H(!uK͆/RTb+HT%cH0JJ 2KyYr"&\Z&`bHy*`xpHe< q9HL}ZWÔ׆tj .s#Eތ J4gj}+&p5>D$aSB%Am%#eZjsBMNf+{uܚdo2وXFDzn6SLb>bhO5yu]%[8+@i ΏYFKe(QW(i1{IubP4g} r'5Wm 5֞?玴G4\6J&9twdԓf c!Jy^|0?Pu{]bG].A\?S8p70TW^SYZU)6R jl^F'k1^ u]`% [e%%)eS3ӁggtM*L՛mCtjF[oՅ4(9AD>Dnn |>$cfEi-$<5TIq_QLhm7:+~h|LT;"Cҽ58 D)W$;CbB!*b 7iG 4# vӫ~ߜ,% 9;xѩ\$x,Fxؕ$x>\gRQ`y1bҺa%FY_^o 0׽<ƻ8Q!id g{NtՔySJa&Ha 78i!ȼe$&G{_:- 1T6NQfv9 /wcp-y`ڝBgy3lcrF VK0 _uߺ ^zӧd)h]YB\k [WV26K.9s\ާYdH3vMؙap])< ,GN0?(Ku]\yƺl]oa3^Plnk.2ad%ZY|;HeBMaWo6k޷ħV)Zܝ5t\JívP\NR a\lk(߄D2?hgҡp 'pjŠZ/U#SC{a±p!`UgGdLy[h\p4O;hz~Wy䰪. ߲q4*j*t5GT$u)ZՊo4rZfɄ_ .%ލR)SdW˻5U 9Q%sHteg# հch51 aGLx)*P-kArqۡZrm(# h1}?@(DtC5m1.bT?QmP)p}xc`O#-5&ლ0dkή{~ 'JwaCmڲ3Z2;w,P0h L?e^LωS[ A{PD~sna2SHK4qs`dFADŽ3UxnE_IP= [z:ah6tt+4tQୋ s5hDXBP9}:f/JlM]*W\B*#$6YK/V"MʔV}H[RD FR} Zsk+0O v@tn8HSfM- \3'ȋrM΃(T_A$H73I@ԇ/Ť\֥^B];<)ͲKl1TBBӶ{ÉpezvuX'v4:KGBWd%WOd`m n1Uw@bQ7 Qu.xNIhjrc9TOMW( ۵bl@jbe؆)r܏E:/n/GQT'LyW';f e݂H]xؒ305L2d%q.#cgG+V[]dZef~M& 3' ]/ƽt}VE('dB)ݘ~kmn\]kB<)ѳ Vn{EyvRҸ D$3gΕs%Znov|9Y՞-}s͇zMY@H̰vd;{D' w^L!j.c:*a:<j-RP?%+k.JphR$7n=M3"QzO eZF,VG]G[wu31lj4 bcrݑ0WS." $&2RLRn˥ex9Kg3AĦۇPH{%\,/ QhA/YG>1_0AmB7sR +zpsN-B,C}&/T{nG]J҇iT7wpxjBp-ی\Kj9E"Jٙ=i~Ӧ{EhAj#qUVh]Gwo7ƨPoq%dLO%ctCz$'i]s2E 2i;GXڷlW9]$Q%v,Z()7%yU`~[$ |TQ"2VE+!7Z# azT 7M܃0ؔ'3CUIfus/@z'\PO 3QYڒ^7ɟ,'boN 촆%\u9ٲY1زX=㋖MQ~R}9uq-Bcw1Eɘ$'A%H>r%΂}bcEz`7AGdWp,~36޷0cڢ# ;\~̸(`R6a[eEQĂLZ@|?NGV/|Z=ǯI;1y~Na\G[]?o+`R[0 xC]6Rr8z}u@ omMh~*@:׉M#=<\O (i͐F՗ "')|* VL6^l*?;+6d5@y"=t5^)qvXGvrlgt/>4bk&jdvǽ_qf@(SoiwwOJvu]NJ* w'4'INSL:űDa,͋ f%R1CBb(QJ&աI4>J?l=vY^h#ktyψ0EÏ'$QlHџ @ LBn@xjN*"Hs~sQ5_$sTD5q#hkD]2V;M.h.\p5{@~wE?WLSD3U (~iz,PW?qRCxũֱ-Bw]4#U`qb18Ry¡[t1ݳC1bcgo R<@!Jq4?T;j]e/AACvppF 4.<{?>"JVo+PYbS] *H8 ֻhqTizԇ",U F.B dE0A7p%{tI0jٹ1ӓǿ54nOztDz!ȦliL\Vd/`šR.w1f];WZl\cYC,KۺjMiPM^l)/Y2wMC1*/ is#0or\N;MEbR6?#ӈzP{l U_>,ӾPo.0蹯Vqz+Ƌ#"R/b#/kDɠxn!ŵGˠz5NozfE[U6ݖA0E;# &gu}6 ]YDkO0/*/o13"S@o  29xA?0wxCa2a;Q B1B[6v{9Ui_;N~:U݊nF=uȦCr/hŽ$IvD~|P%s5?h?sŖ+?!aDF:w-r3'q g4 CÇ"eNOEp3Mڊ͉Y鱨%ȚǁTBJg##Xݬ*29wΐ,<2FJNCOu/<)P){Lk`r;yǔG$X'H}VSa4րO;. n1x0/`{q@}Qj\YF?H#/`bT1*?D̳eа.psãn&ig\S)x .8_hl/˟I;vX-]2(Fɱ4w84jp~  }}$OW5c:\n:V,kf{F A9G8Lڙ;G 75Ic c3X:u<]ڼ6-/Ӛ :ԙWu\9_AP4"3bikQkLwKZJM tbkİ}z RvyG LwbdZQEv<ˤ4R#bZsk [|fÒ Hw~sk4¯=zѱȖMٗpGpH w%\*J[LrL$ǽg] cG/9O $@9+ ~4uvS!X 8L qd3lҔ}Rs9jj"MXD/$#p+mSPHp"JDNl/h[Q}, _7$7~Q>Nԝ/)!NTk%$:Zvp?t/VI9ܳ^dBj7c:iI`vX|`av:=j CT*Ege]%=hen*>Iz/?Bv{47\y)e]zïIAc"15Ҏmo!pNG5Tu3P\=a',kdpޚf1ކLDAirFkU`"i51M#_6oZ-7Z2%AN'8|Azysܱ=m) (M:ڧnOfX2skVVCpN^zf@.IP2w3gYL :jmjF%WjqL"*2•5-(ˌP_$]dŋu= ܂fhD4zp(D PGN0%c ]XznYh*|j|D,{̀mqq[pj3Fh{YtIF5@g1P4DC-,mLZ;T.`wsc -9%;wJ4f`֊/fTt|yiW"71Ico YԳc'4e(Bi@70K!oDZEp$Yp9<*kr N//MhF>asQ,T'#B?!6-Y?o%V#k9!&w?~s-?*9a. d%Pm3O*IctiR'wPDlo?Ǚ\\;Cuog@Aw"UCd3#uƊ6bׄw]QGR'QpT!7 l NʗU֓-7djD(qκ`Yjc_;D]68Ӝ7u˜3WX6CO$lڅqdw+D1af}m=yTgܮ 8=$ څn,նt6rI ևG"2r:!tIye% kw"^=z0+Vw48 8?~RU8q2j5/Vy&6A,޾פ>=!p''U[@IwcM" f|`&#dȽWУ_" bT fpdQvJq)_^=D}[pJ??:h8VXzoQi,AdNfߥոy'RSӈ^C=lOY\'w3Md mÏmG@~ 5pTL `4,: ̎]CSU?$ŷ.L^GLha|"v-~1# >¸N.LE @ AF a4ÂMsK`=hj+^K?>z,'g~SJs}NpZ6k2IvIeCIrN}l|h-Vl!PϼC !XV%RvKIV5 .%T=Ջ-, I@&cuT9>il' h -/f9Lu :v =-t8Ƿ4ޮ7O7 M{aPn?鑃#;1i^Kl<}SEߘ83>OMKS_*ߙ{E2!k͙x!]xk$="ht< oD} ]f |;&hE)e-`lοGXRFFً/;4p4!vjD0}fl0yW"X<.7B!wlscBJdX-Qy6T(]E0X똗Yd pr-Q_bk(w $dI5,J{X) \´-Nk/cQP\pz)ݓy#g1@ p&+$#ED1Dr7tZ}o#wToxDsўh=u c)e_isYcS~}, ˗FZP/G%csa _cxFvu*8yn7C 470#tG:vͷngx+c)Tj̆b;u5wX;';:"a>_EiEI%J q,({hj+(%g糏oz*3r$׌D7M&LOP %k\ Tں5qȖ]+M5f`d|pcMt Q eQfɉu+82qA$:,eq vm"Ū'腃;,|"YaH3M+ *`Y-?vN}hJSA7~v7ӈ])V} 5lpטB,sOK]Qa]+W+źFJ~P6؉\<%`]ݙhG޿ 'h A-_(8g$pQЕ/tJ r]hṹ6(׽Gڇ27U׫Uu24NRJ 7ƕ![, ,cNX=ʂS4rLL=SDo:yjUKQl 7:ځu{/Y0,D k(ě*ljAWĪv@C[&ptcϨr3Ft G<H$B"k'74x#v^w$eؠ'& ?-1-3}U [ ]8,#~FhU+NgN1fwiWv Z&W_Boc9#D:g9Ej黇8Y/KJ+k4ޒ1{t ZɈ[ p@5 af܏ ¥J,Gύ񩒲ߨx,e,(AxȃdT~7 /ZͶSJLH>F~snN[\ֱ\^C]:!caF.ʔRNu?J7x<?騗SArʰʻHzޠHҳ$tykzOԃB1T:}Ybm"Amgp}9 ƺ$C]V"XD}Gn+&X]岢4a>CTY;Tpo|wvUzbնc_{И^up=/¬*M;iRu*_rأ?﮵:]1kY5/]A6_Nz9/SJD7NUI :UL$2os@`/2/.Fo6ok=e DS"8*|"{Bo/Bqߕ;"ˆ :9?CZIXXj6yex~ZhxB*h`hf%i[Gj9EP1N68.)<O_vIY0ET0ېӴ)x6E| t-[) \VIsiЏ>?8ֶ,UKhS $"y#' gtʐg7%QF5Z/vMN,/%hhM_Ǡ}Ԁ .e,*s24S֑}FspYs_{INBg4ދmHa[= ||qr0P]Jfi{ktV糮|U9_<>Ɩ(}hɂ1 :_c>>EDG'/H&Isʈ@SN[ou⽴gC RMtW{;O@uOk1ձ̓?[5X-ww2=K!͒ ޯG 1 q5A^ڒ|$V Iv+!SKb&h<styϗe*@=/4HCg*$և?[+GGaF!mE2l 筁 #ǧ2ԏu`G[\,*98o-$g +dfWa!SLMSrJ4tPʟby?T-&6y@QYR{שg[%\^xr_(w}&Hceˌ}cyj `q"2^ d-,,?~:؋TM':ꄼɍQ-(HZ &z,#vԃ{yhpiK0ly%\+G F)a7fDo$k Y tܳ5Hh,H$.|Ď8Isf@uGg3K?Y>%r;ѝh/%ˎ.R΀N u_RIn T"]2CU~W?B!!Ts6}(kn j Co S>c9:r=۵}$[0jPWqo9gagg8] Zim 8ڼ_x)C[(@u;vL ˇG)&N`@=tX#Wq7-/d&c/dXu$~G yub0=~/[k@OGoQȓmHeΫޔ ;tceowV9w.e%wǫg>+F~!V<7GTu6:^Rƺ1h0\JACu~&;bi>椱K_C8cqVn2 '_1jj#8L6ؠ< )#'/&vrlII1B; ?k%Rj [Fykwi5R2aL%I3])Y+/4=ZÔ@?M>Y .+`ע F oUQ)=3@ pfhxj| u@zxWvFt|<'pqޡ@d x4B58ʇ!QeHδŤW,߮ϋD0\bϽ{-81ɯ]9 A M^4A[ Ƀo#tNƿ #f/i.uɛ&wUܻL܆oNwszj 8bf`Ni~~?~dJcq[(FT"8kظt;{/}Nȩիg׵b;9E[(3YF*X\`ۛ+O!b\:}4_k1^ n Gu{=-<.-)>˚';BF_e|Nc:3 K H[R75|'p8@bh~zR%]h Pow2hs-RR23Lx})I0wN\:->wEʢG&HRDX>JtAϬ{zvZ^!&FZ/.dpĎw,K˾YKRyoh,,XJ&[Ou|ُb28|2+.f}t\ti#eS+j>ONo\sP#P"&n^=ӱc. 'B~˻bq>M+)b)q2Ӯ_'D]/.C$ۙu4.Eڽn_1[ރ3*eM $P9 aVdyX+bB|uw\j7v!1N9-cI6Pٗq>/꡺MxD/b֮wwxUSzAIkݜ6k,noߍ- F)ŸbILݗVKU4|T%_7Us Kj&r -85;γ?K8\EĶDrN1j'X–0/Ažk[ORhW֜*[|cp2TUx=kBŲnxIr?NNMBpj#صuS}P`Fk703|Ob 880{QDN5$B.jf*7Y@;E1%C-y-[bQPU{|VMY qL/ 97YӜji*x-g&ivokzA4\<f, j0_>BbTbF-.x;c(Mѻԗt~ՂsvwۭQR# U=Q\D&W(}FGlT7oc{mp. Mk$ELuX-cٟǃ^tamADѷ:ˎc(#/DϛЈ훱ݟNfK.R3LtKGT[n,)j('RI}:-kUKQkROA`:qDq*v엦!!0ga|奩c/UnM7 ̔h~T hc{cҬWo$ } h#qF܈Mȫ(#pj:d>2v Qe֤_>xuo|j;-k3 uA%`d $UK]."r ͝()(-b82`` "G!rw` 7& , H @ʐ0)umWϵ[q6PQ(lJ3?H׺ :J6h}.prk"uwk l;"6;u'/3C"GtT%Oa9țLjM*aܛJŸU(e[ǰ)A!<ުϰ64i.P6*m}eOk0ͮt!aTe'3grvΪW`a|`)Dgnz ˙Gf 4=KRћ $E.J~7ht3L2Eʲ XAFRq B4EY"2yK I9.А}~Ao||.';iv +#5TDލ9 0ZuȕDVt9MN6Rdz˻x. hauGRC(W~v#&"6bnq^3(= Qi?LVwjfm:{Os];6g^r{d4xr(p^B"aZgVyQzW@aX~~BTcy3en"J,fT!^TxJ)i&5 "':+.ɇrv-٩HJ3nn5⤃Н6Y':' <`ϵ#v|F2GtNznZX㹍>h{DW֌",%e6IB ֒ƳTx2^\8QF⑷D9qgFwO2<==TŢ 8ZUv1pxE9Zҏyn\HA'K( h(MAکB$5,M"of(s #R]!-H1"YA?>p0;[#G]򻤸m/ >ŎK|p%S6)|o hhE~94^",yj~z9àdF}sK78|G5s>bhT3X!ܽѾl'hX;[~W mܟ9X.4[u8RԆ_MmI"&!=(J-Kh.D 9w*L] /SJ bυ'sBA?Ei0J9߃R՚ݒJ@H}/?8 eZH[{};tttOm:8 QgL%Q~z,$kE+r6Q5oMgz!}'R16ij5 A29[!xB!΂<>uJ|R(Qi{twZCRk ύn𠅎x3xߏGlBXyT`>ي)G{Ф Dk{;QN.s6 <4l%=]k~| s$,!\)*,$ cw H塻#Chy=/(GKCzaq3 R{N([.bk"ҤJլr[O:'"FOgDyȟ0m:g S#tnfz"h 5#blnK=!O(Q#yt( Ҏx6;h`C>M-u WYh&2= A OTz۔ }9JB+@{N[ .J]XEOw2$Rtԍ^D1v"!O6Tޕ!H2 7]Y1v0(H ;/4UW.!/saFgǭ9V_soQ.k`*c5w[<.傱55hx>ěf 02h!0HŦWTU`ŦZ>gh0\\2\Auy,c0%PHŒݩTG#)|EWLq+\|"Q)%O!E@,%b#=ܪ.W%?\C& t3罤`:m mb5sU"ޮTQr<;^%8%x+qw`i~NIz]NiĘ^όEB\: rtrbd_]Z4u1pK 6o7p%Wɟ,`Inn|8+9ScjͣړtyReQ%ϼSF1ar9Nxg:͐zTb!Ȝ) l_z0UtDTIG:j6fSo@BKF-.h"R8)ː;nm YCC-T01~h$Z^U[j;x1LD.pݞX`+txK@!]ȡJX%eqz)YYGA}})oJ[E?r 9't@T4軈+̦:dг٨I^z C?8E.<EP-!bjxT=5F쓈#'|6d =L١zn1EӷR:; aJũ @n.m 2u?y˙Yx.\W|\sjHb,|^;7zЍZt9p z,N!m9C '-c@Hb1V-ɞVlMgpD4`YQ9vg\U^H+}}Y)o@ɱ[B(6TL/|eH53=; }C۴K̯ [(d*C=XՓ@qb4GHɑFѭR3g 8g qӿv=z)뽓&C5?Z-P}OuuqTFy\=gGs:Ak[Ā9;K2 = 8 f˷GԽ@sR`"gZ}xXpf~8\`)n ܼmd%ysHLZc^5:h48fƊw!FhgZK&nn܂/wÛh.9Wh .Z&H-o#9_9J!S!':0Q U/UliDQ' ).5OXo/:Ѐmq#2WF+-qaispe q@)dhD"T],e[ l^e%o>gﻆ?ludD7mJOD9_,ϴ-tAS~ $X=@P[l~ylOAhF!RAȑ ̪*VqcXx3, v7fd&hr<3,+rS5|p$1ryCA)_zIeK'4m7*Ǽoj hVxXufYjCV,_ /|(';|P~\.)B=ԥi]=lFGM=o\!ζo Cp(^L৽\Y"uʍyYN =c:H 6*kR_$iTi*enu-@eS3Ś06tY6%qi"YoLWWB:լ0f+ 9aBQ``]1JdJt2g,fh`mF띀8_:KwWmZi)ս%R^T>vUrb#635U>_jwGUg|­ùfHb"x:pEuyN+e9GEf:]7 ݐN>:$|(4 \"}kRUFunbt‰H m7KԬv|s,|òSZſG揌Ȗr.Y V6vI| P WWyԬM%AG sL+V˓O̬a o}uBx mp$lb;>@7c,q{߯t;v5dWlB\$f dv`|,aį:ͭN@&sc5YO #(8T%d͏#bi sZd ޴[1.yo1 w6Ύ׹R]| ܙf0ʥTM 4mlI&qJ=M|s^TigwA Y-lޟkh\k[n; O496PhZf:|f-w%'ru*DT# Im h%J#:k "۔wP$ [(Z0^a8zg9+O{E[it6NwHOݔ1l7"=Bmv7[)9`+Z箷]]yF#MnTؑ),c'>ܞ!WBVHYBX/¨y-7s*>y0fJ3ڳZ`z6%=lpZnJ642IGNeFdջIpf@79V%e}ޟjsݬvXQҮȴŰW˕r1?GזB:(PnPڭA5֬O9lt 72W؟^RxUk'1ސy{ɸ gѿ/ 7j')E*yojlJM~sa Oh0i/vѻ `a{ƭzF ԏ^Z 1V@ Ow-<‛yKAѓ4\aEvVa_Na\^jzsp" ٗdm 1`Y]S0O kbzK(6TiUn/huك\UGjK+jOAV}R_?fNJk˰XW #d5IVDTGn({VOʋ\bAbZ*3 JaZLO@fĜ& e.L.uޡF D%A@fOh*{(Nӝt$G^ՒO(.*8;m³{̎*r~za^8,?樕>H~`"lzCk E a& D:5?Bs- ͱn}KpU&]h*2:В~P!ѣ䆌GY#andcyGλ?1He;+RAcyISqs :PM"XĨRI:I/l:ٽWz0Īc~"rby1JA;A?L\\#dYwiw݆:gIYȨhmĔH~ժg3[EySX&b!ڐ{RSI!$ 芃SW찠xxC[i c,fo!sIR8fG3*xic#nve.gW$ej za$# Jbj)%X \F(м8d/(mcmVѫk-ն|nMN'.@7XpԂXEJ`@=l"{U;ދM xϱʲ3[z'#E/~ {Q|~PSsdn^&ރo ߵ&F.W?GH_G:% ]CL~1KUT s,-)uHKx{u-o~CQE?M/Dٴn 䈭xpOI-?.ig%4>T̎T&kCl Ђz$j̔čc1"};snu+uz[o $=W\+K0b܌Jvm!8;s5 @^O?4.+`?$<7%{ԐUku҉uV9 9j`W*:>E]TĎF2U|wcsb!pq/}WT,$hAQU_h/9 Usd~S/;fF3m4P6tX7:jv"/SVedh̻}rdP3W7VЌk;gZkׯa @ ~ur0" S 4?CA/)le؞]kJc"p< O#@߉Z!v}Q#ŹYs[m/ᶋǧ3_9 qkx ~O4\}fh]/u^;zėÍȷ5y]*>@zq9|k,|<.JaƧ]!g^e Fo\gп2p2mK&/m瞋`u٫Hmے#ڀH$rB~y K(S<އ~\R}BL9Qs$^uu6DrkMp`Wy_maawq2[%z}KZփth xWhFonPUWZƗas崸.囲v*ܗCLt;: GSR葟+L<)<'.< &19Ep4\z8}ZLD1 4$ ܫ8|T0r)9fi-K˫qvk XI9Rn.5HSS4x >x{TѤ JhEx|K1+[sZttte3!6!'"{>V=\doU5,09.nv[X<=@#8fb\5 vB_N=+dQnx,c@nhi:@ro! ,CyNʷPhmIK {< 鸩2U)]ت/%ԓXB^v-/Mol^bX'B gH"[aj*!I$ .6 E-*k#(ofcix9<=oaq& oJA0(,uY{ j(B5[Ek^K)&btf3 Et"-nO"8wbrpJ>եS=+ۚdch :پ̣#,R LZV>G(F9T_E8yP9B s?\H3HQcڕm7qg}ٯ); d~:'DY&: Lyp wB )_?3G\kX,:pN&3$X'Ą lM8Utz皏}׬yEس!7Yn2,\D~ޒ e8e" 0|8{ȧ`>["#Jg=jƽ`JLφBcUݷt3<6e98_S]buLm6ژՄÑ| d|iIC=;Eq.OTeeہ3՜amƨVrBtHzKͰtrJɏ% XTl1PֽT]`ަ˓oBCX3qo"C+J9'F ,Gn6)gU F#Z{jdw ;+džr1Ll<[eGc>:Jaw,PD̓O݀]:;wq#5Vu)q)/6얆-`g8$2 :IoX1?3Sy-l6HDz~ÎŶlG/ d,$ fgtI&j 'sn=>e_ q=$sT+ Yt$0]q=5@E# YQādY20%Z}Wc¨w֑*+E|1?FӾsMZ<>{asU DǁXApf(+]5R P|241g0*1'9OS:(|D:7_>?Tt3h/r1;f9"^ t=xvj"v:hmpo-=3Di,,+(@1_I(ϢIhi^]lN"o6;cN{-Y& 0B0hZ*(0wg:`_ctNo9ati1L91owzNl*g ĂULc*Q~3˛3) !XR'I;R}nA,zIڗ]뷔|կq>;j[I+kj ~[ A?&VceWx8$[|'dR1s& ,չof oZ.⤪/9V2(wT*O: ?*-rZ!bvAwACb .A;+nGͷr\yfyy ˁLL"MclR}dc3.I֯j1*,(E-p UJíXY c%A|rvV9\c^w bM;ldJt@Yk @0鴰q°@e`,;_Ď1|B8<7{kͽ4HTBVޜ);cWlPy7imqЊւJW8oIa>|݊#_80_ti{`$hs$CUcw_ vMXaiHTOe`5᥉vN;]%l5Hpq ׮'OKNK#nNZ BS< ?'$=wS$pU's1[HYgVPcإƝK7PajU)y7<|q ncDo\@lovQ)uug?GMN!:[`ihkTf+,|/?*QRy3"`>k [OEj!WG1HUVU < waUo1stq2{#)\)9le0ȇJ2S02(Ț"|dQ9 5+5nfi6tqr25p\АYXBqg)/{C?Tܕ?$ $hĊgk42`A%qjvaVCfcVaUr)I#lngvVY[r&XQ:?z=:v5pZ>5@͍ %XATf ygIn~B5jf&&?H}݉ľ~E\ Ƞz.|p^x5gCcƴpHrT P7lK_LtwN1 D۠{~,qhDP.t#-F51FHRW',סAePmB[mUۚO=͚3S6fRDWتE9Ԏk2HtN'lﹾ8?J#?<1Sݬ1.tn.Dv3C(] ^+S׾";M4iaFv05V+G28Ĥ$y9((o3~Zyk5$~kqn&f0q}i%re>ui5 m1#7x/J9c e/y@4#UYhJէ@%79љWX28Dٔ[ܐ/ϰܶ>lEYh3;@\\kah=˼vN gi&^UnA[ATܰ[N{@f{X͕gj.HZ700tu*Ԃ$ZH ɏB4A ҡEDl`ح8l^JC$H 5]G翳^It>J*)Ì/)3ܙ9زL^ ?`9T_|< : JN?jT &z|~ ߀63B{}L-XwDLa &nPT鯾/Qk@ܪ;G&)Y?3fbm;uۂBOzk$]7-zh6mwN,/.xQF5 /}Mkwn+EniVqMSNwT6 m[_S`A+0XPS bdWw~f+d& cķrQ x|p*.^!@p6JJB2ãREZ;~q>tX_Ck쑴 ۓLM@v1C`y4t*9tޣD-?Wut6b'B#oTR 3ՓHM.ޙ͓yOq'ޝ: 說vc?E2,%bTjɢ>"Ɗ$#ˊ-3Ԗ{öw#aD>%픯Lv ҳx $cZu   TU?sUQH?>#خQ)wq I]?^nHaT t}#tN'~_^V`"wތTXX>vi>(s;oW|怖NM]*FzX"D<';*繨Xr,yXvٍFlݭic!kF >m,IIkN丢H )ob_} @ N$deB u2Y4n]~!m0,iѱ89 *J/E&NoP_(o\( !W󔺍zdqRa, @)X@"dE"-ZeGSe/R3l&5~ C>d8kz2dF>{І@+BC UO4^YGC% ?%ּJiR2nrMY+t"Oec^>76=ヱ~rz])M'L! "6?Z F=E)*4X=5t`BYb:V޶@c+ל@Gtb > ceq `BR*ҽYC#:c)*RkZT0& GF T@[Uڞj zخƕ~՝9TtOO~̺f3`&q/VmoR|qJUs!%F!z 0j1L(_dh* U|Ly/+)Sk{{\ۗE N6nOGӾ8iO&,Gp7>b>HxoQZOo Dtvc @Y@}IFnn,S2d>ar^UR;ܩJ'lqGf,ouK];5e=6pPEfZgt5^gƲy}AѢI13aߗ&]8)tNpnՄtu&7eLbMJI3 !'DCuiVRWy_%Mbb+Q&1:Uogm #?]E,۩OQ Hc~8 T)]$+R~%~'u[y7$dv f ʒ44B Aƿ&M.\mU&2vYk;`9p=DS#ue, %yg_qDuǠ >?vE8Ni!Ch%ؙ|INjN$eHnev7G2K`^.hs@,r ©\IZ;VyrS_6od8>yg/Bp+1Zq_=}vHY鲁e+zI!Yd9k" >t,;DL?ʙh0L uzG֭+#oS0ڽPތ׈\קHWDL/7ٲvx 5qT=AL!`zqnkns&ড%8[KߠȫJ[K%n('S"[j0 Q?AiA_i%,I.T0(A N&HOw݀?߾)ǫP%RClmڴN{V$/Wĭ䎳NjkoC5(#L_ԡ5t'İv`ԆJo8씱d|~Xl_,LIPk}ԡŞ85.s>ɁWFٿ2#?.=[PW,#%APY?wjVoJs3N v]Z΁27Y䤫 i#,xe.kpYٚwժy/:p"`ց@VҤ6C EzB4Wߠ %aBE@|zD;- i |LO5_Pug8`:h^Bdكk>\ eI>;֊I?ef:sa0BТd.!$ +GQ.$\hrS) d:52>փR~ȍ1J|:[?gd ܬ 굞u`3 S e=&cV%>n}@x/ Sh"$,тMDvYO2'T) l pneȕ☇((Bp6}]QoÍഒkfMg*;#f,Ͽȟ߅9#W&FA"!C6SڌU&듓)<[@7Ys2~+8Ayw.:G߃7'B,V׋AI?lkQ0XQ}Ml?  dvORQG.m`Rt揿5)AHԞpT}pFٓ{ t8a1G[ U*T*pm|:xp}@x}XkdVcj)9<-l as䒍̱Է$%Xa+9gnPXCu\I'& .PzܶuRw~7jF;h$pcU/i zyYNҽ2 1{,k_ ^$^=l 3bjZRI(AT8{3ENO`C%x)!tll.% (ċ["?L"?iޥ%7"xIasS8jij$}boP4DLD9;5h ߷As@*>X"WϭK8>%;~`S9BK,[AgW<=obwLSo uYdmbw}adƕ3Or*ĵhFvgGQfXqGF]Yz竇M7zsZ]}a,megu o3%؀rnIL.ߕt kX%xV$np]u4 l]a/Ō3 6 S 9Wk_oTq]vTU!sVw)?*)>o'RgY 9*`PkAF$W?8Z8V@ػIUSřj)ŀLϝ~pNyѪcQC,޹>y*qdX+\̺]A]drO}zE) nV[ W@hc)LS՘W1z{i +l#@8=V/ \#ڊ a}rs8)C}˩<`| hj-xe(,{n1 g.dQNA!꽎V K"a='Ud$h aTZ0P[5?-չn%+uG*YGoqX{bX+I=KvDfa9u2)" xY5%7Cӡ+GqJ0W//~2>L$ADGkOe@V,|M*W=EdqgI ;9 WN:jbw)](Ws jXuZFnYY y@v}Pgֱkoys_W0G<_[*+NA2ɘ*U@ʳg䪯q6oa p%H΋YGVN>.oD!cjzkjBm"B?l^|-Aoܤ]z`^Eq*X{ |H~3rmayLYaIQJ/2) &<{2 7`]G D N9e/vEdxzy/yV>{71Ejɻc&3xٜ$2{y ;ZߢL4i%dh dփI,13Q(JHDRL$7Z? v:cأrm8֝N ߳_s#Dl1hw0檼!OT~=Z;636*;+9xQ{6Ͼajw/.6!qbwԟBANNfSk Q-3XgaуEKS:Nƍ8G}TWoam9[&yW xHi42N"A8WvJ ,Nţ=4 ڜb/Qփ*g]k7f]vQ?~{BW>!i *fi aa(xLKX &̈;D)J)֎,8;6clxIA)&Ztp6FMU4w|{vש<2~jFA:YOw9wS~ ږh>-F33A$%f:")Ϭ;avT4ҘNG8Rk{5P}ndmh*#Mj*#̑n l)wiX+$@)Py*NyH%!1q|rg5tkK'OnZdå]W:^v+w@C/\9"ܹkYfN)(( p+$L/l4@Ȯ5\(MRR0!<,eޘ>ڠON!Y5^ ՊN2ëfI*obz ~%C7,!i 6asa;ؖhs R]9L)ƧFDU% WQ"2=[3eImJ=Q_v 4,K*Ll5y!8௑uiM F=QUm?1H` gK(/{<|ɮtހ CMw׀]>#ůR5 0Aˆ0,*D$E< n`bX,ɴCm3zcUЙ*<ұ+CJ}CHTjO6~W6JtiϺ:Z[$GdϨb-|_w Sz-? ɾ{Djg,ʰe yFksQMR׌ţhPiE\O9u|Hx*) IN&'̴JrRG z`R)ǂaurDȧcf6pHYKo 5XWpu)Dgj܊j-")CF1IE:djJa>?8s?gjx6|Ͱ!U0sI]3(K71zO{ /ADN=Jr%:{c6#J(.ϝ^攽#ΐݝ>-W v]eYگnnBr[w3!/oŠ >v3]B%ً!:~̭TVo'p߅L oR4HO<~$?t 3b`vvT):A@3_SP/U#7w(ՍsyփT 28->D } yy/%4r&w$}weOpޒޟYA(jQ@L0lˆoɂ*|@v-h5n]3Xk:tss_m"g#[Z7q.5ZVGyGU :)](Tc :ל"2g9C0$J 6'1 'ߎwnbfnj0s=3Y<H YRI6+*U2I]tMA +),R[=9'nL|8X)i{FRn3.yeb!}Vt\P[ֈ79#Rs:_﵎!UVH(UҠ\-K> 0T/s3:%y0|a6a%ͯ|Xʬm!yd&vY\_8UI'RYQD FІ0Z^*0h*Z/.ZfJ*[`!f7ͶL5M/'{/K6wNu`V*y8F򍺋Pv{,ېU XatR1KlON(ne/服+He( ,We`F?]ݴy`aF!BfAyiLZ(1̲&Fvr9FƋ_GO|P|V\~TN˙ӆ&<>N\s})mK1~Q#V}+As5f.|N١;&T~?JAӾ%irƆW9 ϯ͊&د* . Dsy5>ѬbU~@UTKc2`-,Ču :榟we8c0@39 6i[Hb#komVFa*/h!;@a ?}&@w`WgDxɈmAAfwm">&sPGR˟-e$CL}ywep%L}fԄL}X -,u9b]bb҂b>UR>D0OBvU |aTQKug]*D'c pvlz9j{lMTkirD^)EF=<3DZyu/J $ss(!fɢOHHԒu>T$q#pԿ+W1]([פ>pP)X/Y HlIv%t[@׀Dž<=#kT)t(g̭:ۑC~BLX8e!ci=/A#{DiRz;ͽJE۴ߟ{'ɇK~mr3Fepԭ ElY0h`&[2{||Kr=5$[b8龳 t&駣sW+J]4Y{[5aH&_H!x"gbJLMͺUvb@HK-ncdu[S+bӳ |Fnݑ2zUJ #SzKto,X䩹fCyހ3kCF5ypL}zJtxxz"t64?RV`u !Uf ;lDh-_`O> ɸj_JBViORb!yNb|-+4zy4\|zO)4n^SV !i2-Rf,+Jɸ`"ITKg/(*iXN TijL":)`Xʑ!ƠQhyfX}ڢ U , hpVyM=t. Va5axZ DOɉVČ݀pMUhj R3}or!ZENGh&rz}#dOeX) AtE( XX6w6"j^]H!Ne{~xqPs{+A[r ޤDCUPI1h2MYPqXiF"s{S{H>N)En,ҵKEaܦe8ػ, 6CeWް1 sCLՀmOgPg^3J:DP+[E_MB/, <ӞB&|fX ^%Q ;r mDC كjTpm!`_AdG]Ul_Co֏G,t\i.DZ湶c;]Жa]ˈɰ5W4K%a/OAt/SgӃDJ&KfEۀ3 X9D_(ZY-y lA6inS`)Ti8lC'ék;OoO\WӲU66% s߼,sUT 'l5Vp_Q;^0+s1g-*mMB n kOb^ +{,A]!6v!h~b~ 0sybQ 8;BE)4/MSSj+u>bZHťG'jejw$vlrl!>>*a4j=N -k?/P۷)s2ɰ8?n=U1c4\&jY.zKĻkb\IQDrIC v{x|).jyt/pm ݊."'!M& cc.iD324#a^E ^-ڡ%On^~e *Ȭ?4#S() KN`DܣDsx {0}'')l:4#*MB,S9#]uQM~;ϛPu:GyudVʸx 2[2aiGDc*)n"'LXu'lƮX+"vy΅ c՟cX @f݂,9g7r@b AU4u$!R)zU[{tOtypU$ƏWZW_5) 7Xiqe%ɢH[23bJfġHC}kX+FX=y@9+ӾXC,ô}nv7&=I#/ǹ@} FaMj!щh;Qݓ՝Na%i9.w5HIY5Q>"o'̛,ް}F:2܃GS5˔`Nj-'>ֱQ"QeXbJcіz[eSړ<,U2OJ^cGH'¬[l2^Zzdu $34?) 4܁עh%5}3pCda R` ?Bn|'~U u?T[X>0 ]G%rHBxp]DU¤uiE fU:XAދ y [SadVVWߡ*Эb ,@A+3'UP{_nj͕WfY8lYdI$l5ǎFӐzQDTĤFH;ZOޱ22Zdݜ#f֗ t[4.9*>J< ˂w;aܶ Z&^MG:ʏBNg - s=;tiJX|7:/ZRF>v] ؉>bR`irMAgF3󬞤Zw^' !5 >b K6œJy)K5d=S"Vjlv_}oU9H><l)ƴ@ 3B?1M9Z@YuTVݒ(~dEk!0zpmG%mA 0]2Pw\]3Ɲ:uI@фOڏ&%@)ĦL (NW?稍7|X+/zl=zjoa|vpfoDKx X0E&Ez{mDr`  Fn;^y욭 ? )ko6ŝ ۋQsf.,ՌjW3y*QXx8uThlW)* 9d=[#uz]3jEjD*`|E@,4QXyQt=@eu >" 3_ ]rk4oN E6*ۙk tFNmP!.:(Ų~zI}N.Ϸ^iÉJ 8/8Y+ ͷoɎX&z϶skw.V ;v+LYݐƯ9\$' ?bI37捪~`&#;F.6km4tgX9͉s1܁*l-E^(cbKUN}P[QKq3$`Eq ԝc!hx2L;aVdu[ ϥûEzSmcZ@v@;:㧺+DdQB7@jn]z#cqr27}?2F\;&:fR+x"amM+iE] 3pP,,xfs͌<2QPl|1݅-׏P5V (k|R')<\U~30]$>ys]Fz@P!ݼrq]<ݐoV#]$~ Duɳ Gx_ F)iqg&KF̛[;xʇ9/6yAx Nvo#hsnW56kkض_!{ QMFLsCŽ?3B;YO,DrR<{&'x# jg{;H\%*&ri Dfon, F)^K-&bj՛} ѕ\hWEA@F}fp9LB3K5ޚle!2`Ԁbzr\[j`93(iT|#^:'"=&x?>6j59L 2 kƳOFU/EuDȆ5nH *bTʁn`gKBd_fmQl{_J/lXʔQWhF\TwvgdՆzlyM/տ T%J;u[R^X &Td>)픕]1~K 0=“WWKWʉH ~pW.<72 ,01Hlr W^ munͳdN ' &m6dV4Nm$hJ?~IDŽ_=g~N#c^Fŝ,$iT˼(`s~jv"VЃmOԖRЖΓi9tJJD 2 QmQ)wq"e,Ϸ|^m8cwI7rǸd#W>'+BcLF)2 F d%i` BЩbIX"">"IGu& ;-Յ|_#\ODB>R@M` kz[TUY/Y6Dڗ)E}O%)2'՝d|E!I*Уvuq e&a?pz ɂ~$Ȳ_ċ=ys^~/8X is\=)ZB p&9P`e$Rc&AП8hīL{ѓFZ.ՙk%HC*5)q`Zǩu91#5 %q%uAevTAE[8 ,?#YRo NLQa(nJG܄tR\a3\eޮslD EoGF~e)oO퇑D^'yi/Ү^TCwpljϵjw_M˛tK=p`Ut.m6EV=vf"-YRS9a~"ԛ'm~] Gn`2D\&W7jz,A&+CܶmGho2Eބ& $cƠ[\̟f)L~%듽$:3Mxurhr4rzwm1J:#n[q$8t;WӵWW{kieZTlꔛT L"$nIMy>4zQn@Xg@6y4rJkElw~M %<oV^~Z NQExS.Dc_\$Kot )و0^P~o)=s$Ei'#@d$;9u«6VXSGd{,?]~|k̾?1|0h@hfzC9;εΗ~Ƕie/A]Yz5n $>yҘspTp}srMM%|ybG'ƿG u9H½ ʊq?0B<5s6 V|}J9bw,VW=x ,uxͫjGJ=ت V٣o%Wjwl=^mO|cl>/ck @أ,$W|fshU\&E bL} C1HLsѩ; 5K OC#q-l1bSc1N,%8 :p$*՝ hǚk6YXfxoSJ,sCrعc| g1!ȂVǎ`.պo*XCUA@ר"g^HT%~QIXc;7Ս-TwJzHQX㣗u 4OA[8ncZ<@ :)`b 綪DUpO(MkYYz渗!Uo G;^.Y4j3vpmsDE=j',#X}2qT=Y2$*ۻ.ߚ"´3vUȽZu4G1Ŗ0_cY*gOiy#%mq-NqpZ2k=.>iQ+E`2釄kR3LJ {Uq þ/AvABq,fn+ٓ{ɺr6b :'ݺj,5DЀ"u`/wইy쮆yYc**Pq6$L{ʠk"ˍɺͽQY\SIWZ(÷TWBxgUe 㗢D,. Vn\]n1@vly|q,{:N*,r g NbZȿq_d[Fi/v&2:-8Z>%+ ZupUh9BEDE_eC AӼ,/AA,;,ƍB3|"4~3!܆Wu˜3yׇ[jx S }*\4yS^wAj|>L>u-Ryυ,/e)BLnd.ˍFh;ݪ<P&Η.8 )߼8)IPX܎e0&Z@U_S-k t; AO@3&k񫸛NE7.U&)ILz!M 9e39~CJ4M^"5c2VPWdAlWaQyɱ!%[\}猽Du zA$(IO8\wuYw]]0~nVo @_0vl~r_hM{}/Vg)1=/4^  r}YaKӴLG]q\x<FOy[HKCj?'ŘIsmцA'h II!2 ScDtna_cy{iͲ$W?~2[qhemD3= Z\mTՊr[N-,]HB!Վt&gVC㒠GK|iJoaƼ&j$gR%xH}$S NH*Ǎr`}% ޅ-pnν{8ߋЭ=@&J&pĒE|ʁ"HJe +)=/̋sJ-PIi.<ʇ!}M~n 8 kBiŮŲ EϝiMI͛фVUHC »~֝P=*TzD N R ΃F]OA Caf>O|DEY"ְ7.GwJ7Q:Y*#gHF,b;R8U0kc@]ꚧ i.7$8[2vZ/#F_.uxMk2D?R}.w2| Z~B!5'5S.iGnYf~B>DHfF@((|j#J~|]p5dT^!PW\W>݆EÛzm a%V엏.oOGt"cof᫑o*caOR%B{?|*2_v PZꧯF]FqDZ3[;3G+\VEeI ŋka(|lY5ֆS!8@Ev?42F ME{A-0$3a`gc}|>ؚ=V=.p̅{W##s=eaޚZmґ# J|Yv|ʟ q"#nUq_ \$ȥx&c$dʟ %k4UwS?&xQz%BKc/~!/6wZ)lm3 ;W0bY@;MJ춎(di,_5J6VpGu,USAz(ebk|8uuhv{^['&Ɨղ@֭ZκH%۞,=,>kϧ[OU){Qݣdl7|UΙ[=ZDA^"ؠ47n8}h 8ʨR2`3&Y)ّ59RZ8]gA25$q2"|m*|=zy!\I!7y^}ͧuE#Y)2ۀR?R)7SkңutqNOaGAD7U^È kwe_ݝí=#'TKtGG ʜ#t4pKhnNAZTE |Aڭӆ 5hJsBc_ǛSGR(&BqKHdT JSQXB+io?~ZSer}`Ϙ&|_Q# xq>Rᅬ͹ rM|scT~k;x^>5IB\Vm 6hb i dr L"-qoә|'/*_k,jѰJnCYͻe=|+<#HBfSߋX?*l'! @k UmNJS|1=oߋ« OՆ".ea'z.s?MaqN.qm[dGsuA,'A|xa0`˷J$x83#]<6dh6K}WSK|D7Ř[l |vpq=}irWCjX:9v [FǐbIo`{ϑ/dLqGiwk~$,YOkZ⫊N*S Z=rѼ2ۯbؓw~y6NQW`ZdV˼91py+VGʖӕXZ}Cm 7$=>'+@&OCxHjn"z.OPDyԜ)_ԟ 3|C% hk# ,A)?vRCʝmB`/6(eb[7b\S#, P|&t]o+D&ldeJw0JrDNQ[2gÛREJر5@T$9|y4 >Nۺ$ʋ!t3RCw0!s$OwWzb`Sؙj) t)UBr9U`sRpe/MѧXFCZO̺71!mKNhWcGSqp@+/zٶ0VYHOcʬگ¬ß-iRncEhR5H3OeME`Hq16E+խ!S'w4xB}c]f<`2@҅ut'Af8M7!ܺ]VQÍCձ9qےɚ&1N&"jzPSFb<J6/Ԭc$ L9 (cN!{kђK?VW#]ao^Vjdfn2ga\6Pvg`$mޯ/\'aXBrWl7{n:](dgb^-"Kش$ ̍}<*ql (SDv#?Q-؊^nayH^Vg.0rgE; U xkZ-阑[Ԯ9?x|Pd~+S;ѝK޷©(0en{Of\Ps(VxO1Bׁ]u0%Al`;7@{Px(wRb-Ң#`/;#$v^Y:ho>>^w8JZۘ1ȟ^0rMHyZg<]R%U83w#^rدzo+^&KPixFWgUW @[iDejM: c+>b8pi\"T(!1&@N>!Щ όq͊tuRm|jX V14ki_m{&$&{Se-N57YtV ,b"ۮ{k Xǩ*>Jt*Y(D{֓nv|YTtgs톣GEքc^!L 75 fk}JwwX*}~Nx>4eMcj(b '%I]6%l|ϣYt(p.= `d&ɦeGV6q񱡶pց|I7EGTE LVw "nS*&ӟ\  ~\& {a,e*}SE,3|WXzpF2:ʞA$x/Tۢ zBN|\a+vKλ4B:x)BpvltzS;tւr /HϑMq8}s`^0& 9xmDvl_'ym@_9`²bWַŽ4ɘFָ,;tߏc>\w.5 [~̙E5m2$ E٩},S n 6_{WܣT8eKo 8yj @.6mb&)[ JJ)S9Ux .o'dV"=؋1ܫSQ <pO/׻N7ND 5yH0`Bw:cŅ~Ϡ9jffJe@^nڡW?1  /!fT ֕'^u?i=3egncPZ*S%ʫgmd-}0>aayW:jH&;^!cŐ+nQon)'{(h7U`i:ztx2!Wߟ=gϳO_Z6}_uР~l˶55WrL b*d 44B؎֊edrVUW+ \ ?!=2X0رQgp x5)|+eħ>{T)PKO i, Hg?KAoko8;(}0/z3 9#iMCn71gIb;z8M/3>(QvBoQBrα4ЮW%( SSXzΒd%Mofjo g0-m%ZEOΘIZ!ls O1'9$/cT _C]wlel"KeXf<>@3LyKȓ5/½R!kYV}AxT*8_fw߭ B 2څ⥨N5pTce!{ nR m}>..? * 6I!+J4.aؠ.F.-6Ci}E[>qbX?SBܾh)G>ntA_44ƫah~/)jGauG`)~;n,ZXxr1NpxwK:\ }n.MzA.}xr1*ۖSS/ڋf*bO}`JZ̯bNKPE<O5@a`0;=JC ^Ż px/T 69^cj:z yF]|UR a8)A*v yh_YʶUh;юFq/-=j/@OEѥ$R_' )+^fKǎ a~{5vo1˔| %/ЂdT &NfaA_+n3>ăprLp'HU}:,YBh8/&9FeJ,jka5EV{"qUk$ B2i(*_% qYg5QTƬ(L簵ċHk\NJ0haL`a46'l"t֮ҜpI֗e9٧CliZK?8/)=#H0)G |G[-D)V"Z_Stcً]6UKR}e)9xY%"+} \"t o,?Gr^~Xjn\Nw9_Cfe/46*s{VdiUuʀ˪ p).fIGz" R2^\PJ}]w+Yy.H#,3o ({D)S^@Dgߗׯ`Ƽ=δq @Or"pz(5 #JrM|0؁ʢcXU̚mUYT+ǩD9NCh@ţϝQ#$%s`SۄB>Qڑs4#>: BR>f j4p4J13?9xr=JS4g+F{c -/6ci+pTD%̪A`2,=8CNJaECzLC A)s. ʴ|6"'+XQݹeLdWl{~Jd3^5)zu"Zrꕒ˜O|I}E{Bz&<p*"O.&gtIt;^gҩ,tR$}JJKqB2/OTP$!H0Auvn֧'Fcu"E㋩?X 2`t7 r(koW ZѫerA YUܽz ҅+7UE z~@iF /3VI&!X5/Ch䦩l8IPy=Q ` ?@mOAeinTPx@Ag66ԃywo DU~Ejq V$nm.$  QubA?9?7"vIJ^<FڢF- j0x A'JzlhRCIXYR)-D?1K`)Sde5نpm B/E6XsML^DVNx2TЅ.撽tmpu-)pzpl9)Rt/l@Q$/z2qXh^!b@[8a4C1 ^8u%i&1y ?)f %?RGkbֵзh$dmt Z\^2vxNw,VN 7N[SzP= 3O_I oo4AWw&kk4خXVdwFյ^Q̉t%q(7P7.B~]qf qP=^3A] }XL{J',O &OA-(2KzvǥU1QR:b\5\_#V$1Hu5hnTueb3컌D/C:2n,5997Q: YGvE) %ægzR'"(حDMI~8wηnÄ0Ly P010v<[L\SX) (s<-@rIrx_CD140@1Ӗ^$?xv P_ } R\q8nvwA@Q*p> a^xX/C^K]Ł1@6XY?$2IKv*p5L9($^{èϓgc>lA+TY8Bt4lLWpS)mn(n! jE9 *1wIv1vI#.K =Kht}YF*?c1J(G5UA"H/!Ŭ7ݘq̏f/&G6;pZؾ<7Uƪ7r[7åF$բvfr ȫ ͻ8ivK=tȀc"ũS^S^t!`<) VB`CY1(FDg* Ѻ^]nnjWZL,rXF h#%Dk:[RL6Pc;ۍ(G fO[".&a,YTȊx郣>CR#Ws'ɦ08q:g] [i=[ߺC^1 v;l-E-JKTf2v"zJ*-^Z,ؕ]!BWiݖPi[z ߎ, xS*3,.i&*.7[m4źh Ռ T \|U½1Ro,I_He}bd 70i_؝/ 9M!(mRFuK j(K!]9sz!x'^oy"?"Y&c8SƑ?Pi yz3SQ ocR$=W/,9붺ءŲ~kg!Q@u即h TAuO<'$'A%m.[O/9?hDZL,-`1۽vh %Um̴^(,As^<9nOlcƅL*e53GtQ(@'܌ 9wqg6d]^3a D<VYX54ZU4t!dA"y4:%/3O/r¿tfUݴϳY?>'ӉW%{ k7zVLG;C;Ym@6lICLn'ճkcj맵˓B<&VA^%pmUv46\O3ޢ:1a}Vӧ!3/ih}~n%^v|(JL@w~7lڂZ pT6 A{?DȜ#{*fh6 Omjɿzeگ1D=a7OEt2U'U7U`2kP!2.],'7*0 r=Ú jmcN%Q0Ȕk&_;ki#`\QZdJvOU8Zhn>mL$_|-4[^V,at!qC.Xu~/ ezf@tIiqGeg1c7k6!Q8l)qP_ F{([MbTހ8|em=Y3v-@!PR|I8qj-akOa6 Ĉ6p͛_&7EX1l y' '))59G Z8 М kGKoHj%IFY*C-pr3wtِUCfTa \̵Lzdg :~N!|VHm U}nt3+`s+Z}?ey{4߿rކp2!.{~慢~Q0MmElcV +1Y><9M=ʔPĶ#SNDBDkD {Ѻ11uP߫#:BeìS"t sJBu0%<,_k:qWBnzs$.R`uE`Q*w@d@uIl $녪fӄ<usdnh 8"H1mu.gGUSUGBJ_O9ڔxw HVRJcec)W*gPjI O38ua68\ Va1'oڠiKR(iX_ym|74cntg31-q!?#&癪>Ut;]AʷP0]z.bS©m?2Z+2$S ʯ<p"9aLi6zd*/lDAD.:r/j^g\\0D  y/+Py |F\A&œu%r!jv||Uq-tIMuª@50꧷\'upGoV%Xn*a1(3>*:F?+S$dXZAA` !نU-frPXAbcH&|  >0<ʮ/a2V)o$Mʝ@͈CeEGZVɢXdٚ&9^(u\1 c @Yhޠ[ДfB+F^}.>{ZBd\: VIlhIeo{#ʠ<#\V0gI|VJ=ivl\0ٰmx#sEzĐr#Ȗ4Q:Rz|Q*{Sّj%TA.m[yK){Qq_Qw\J :5&A&3#a'ey3"?6"/) š.#ʗAԺѦl:iZ?=ccA,&cN>uE~6覨-gND5\=ˬIhAC(v'הh2w]B̒C&qM].H>FuI!G[ڴ%$Ϛ"")la'ŒAG \ cf"Ct^2a4b YHyO z+/Ԁg pJW䜍}l/N~Uf9X~S<&զL/E[cKc3)0o[D 73`9c9~)蝺T)!V|'ă9?9᭑3Xjl B>d emp=wQ)F5VU Cyhrwd{z'aїG`O3lך9"m6{#,W- kBe 0(Hd.}VdizbKG|Is13&̤ 6Nbr}/;T9JX b1հ/dnwJAEQ :Yߧ?2Z al`lgjd#*cRBu,dtyht MٓBIDc.sPH_ҌBRR TG' %TQw}s :W=/(`9mqN*~O}*hwk1%fqҩ7HζXcg1&;o<N6F̖yjM ~A\h?/Qp"1wNJ'i^z&|DdHaέf1qj5x!>3tmcy\6<=yCsKl_< 'G5lHcSeGegLhrG_t,f*_;Ė?hPŴ`ێ1x_ BkiL}$F8Ԓ$%x8i#~8ds_ דju4>gCkٱ-jG.rAHڝgW\=-cf+=1ӆ fS#pSðo5 -.+3f(4^8p'n'TM̼䃺JaGqd"~O8M/׭Fg%sϾԝrX<12a;Y7P~u{ɏ 4uŹ(ER$\Heߠ5кm_?q|P\Jdr3ڌI8?׋`F~4 ML2i&V}RwpF1n 8kbi`fY}6:A-Wrw"B-*;&9_ N/Rv: LhSG.VC)ryO~%=.Yܤ"RƐ)w◗R0Xf՘e=ƂdR&kݻ$*]5?)uS48a``[W4caNcK|:&mbFlׯZBH6)d64o jTë{2nFwu kGޤ3`JQyU0,b`  ڝ20㼩ׯȱÄ] F+6X&S]) 췦8=ƿ9^B-QM%HK R™:7}\ko_P|m: E9B~⒲]6Sd;K#k\ }#d\mxxC@مjk&0W|8p\S|){xyluD+`mm~7!Bl3 >DjRq&g^H N>@*)$y }\Q{LβyZTt? o"u&&r)lvS.Jm惖&$:(Ն[/%.  ?*[i:{& "G0hk+KKƁJ,`qhJ;gAS[ 2"AbVh*Ո> M?)#_]G=^A5CBkb̓\+Apqs:>28ouM :8k#۩Etɟθ[w/Pe5ֿRWϊfWyq"X%l֨VGi)SfYV.5ntM?: @!d~{n㞖/ 0J9*Mݛg_n7:ݠ/I14JkME__$S{QtWJ&4ͩddܬa1$j FW-^333+Gw$%֧|vzYH)S/^|Q-O[_?~~ib/[:]||ceC|e KLjurrk8?B|`^aAtճ!!MS˺H IaC@M*ayEJ Atx*j3Ka fD+1yRJ76}Y'NhY"SaSmth[~QW}[ c#;ɏsƍ<&k5Q^'0\%R0]Y^[vw7hű4(tWA$r.q,,8ۙݩ)l,%q@0._wOkϺǕRU \?, bb%zjЁ`͢bRWl}|)*G&e La55;m AbE4 ,$PSzMD?Gu!1eu1ڗj^3pG8b[lN̞]i^:Aֻ&A(H $_cb.>H6{" @`aYvˊ 焢@kcXWGg$ }U;)Mޑhj߁) ?`~ߧ(f+i9JEz%g4P䱏>( ^ ‚8Aej%>ڷLv% =o 4Y|2S}K·=o+ C*CJ.7xL1e+$z|=Tum(-%<|tVԎDQJs'}P#M~JzLP&7᦬k獵P,$ҧ!a@Bߖm-m)g\zeu9piːtɉﰵn0F~fPGi]y?uc#tv m+l\VIls|;R.Db˺f:vjHOdq >_Ɍf]n ނ״FfK1DK"s|02guI U_"'b0OCՑXPza uwNcRNV=쳫QZ/>gb>?y63t(xheBk#){ƿfuvx}Dew3΁LJFr<"~-:sd"B* j8;pQiXnݔ4 ;+H{?c``z %G$yG7B_Hr^2d5No}gBݪ>;uD2o>'ҷl*}Ct_m*m)1>%~,,ωa9宵GWb1j@n;F.CVg/LDw_0Oly,Sw4h@ 7=wկQX}vX9ZKŪ㥩RCX5|iEj`G@Zyv64A1JvDk4(mۑGdĈM1Zq㩕GQ׫ ;:lR(rMr^Mc]ֽnnD!ˤjϠ#m b\9 v?}{ UHs<7u|jݘXp*Ķĩ5Zkl}tcm R]z&茿ؔnNkpF~,+Ih2bf{?R]v8|RB=I窝;]a@!ǙC[L0Uv.:XG T> 2%`" b Du}\IfPU" W kafHjWhB6GaDg]ʯҬ91\C[/@.mFIM\|a:cѯf%O"RGvj5a:)?J{;腃X%}r]eQ_c]ڨxVAJ#nu k(D^&qֈ<R.=^}Mog[ʀ?l%O_O2&f}@y ׌woUxHjou5V/8wqXOY+c1+.;2$%bD \:XaZ fS*9^IB=c ֺU-vg)M | ӂN֎)|aCL<ݫ+k ~@zKU mPK+kPْvpLHߑ%U:?4wmZt <r7˳,[)/f2: +3(X)i pN޶fpiVZW;ɮiJ8!P,YF1\6RB:,yȋf@zF &Xw9DS0s8vb)`a1YL lכ`LYbSӗ{T`J+]0a#$dU^ EO`>,@g2/loҋUKsX6Уj )o_.,5&'..m<1jb@0^'Lډ$WzVWgq`u-C"ϖp-8Lݮޮt0ku+ۿ,ڌ*z Be8c {y$w;dp~CӀ3x˓Fa?+{5_`>=:e$4J -}„_{1wA3Vũ5 HnFⳞ#*OYղG(&!#`)[Y}3ƃ8=I!8d6>=;|#LL=>Vsib_iT<I lw#?1obdl96j=s,ګ|89$X?|jr_w"]8z11dS%^pdxwrsvWsC'+7^2?|@ʑPInsLnճft{<Xu5#x*jk1BQAUǻ,`ibJc"-d=[RlI-;N\,j Yn|leHYح:iGOe]_C#P̶1 Rk=l9y {Kߢ_VnV Ud= oқQڑF3"%D)oUĀ- ~ M |nAܐH\l&H&(`6wWn%j :|jU0dBOgv_C4#K?CتH7LCzE qߔhw|d6j T%+HCo=q_q[FX߂vy\~ q+"i #ڣ.X EP<108bL7D0c#rʙ6ˏi ,՜oZT;n> s ɣ牯Rű3S\vv0ӓ>Sg =J*:VUL:z?)YaXWL>V3/ Qˮb.d2ާ= #S vReoյ6X 5}o(Uƅ7Q[6FDD3̓oim94x"!Gܜ݈iM(B9WgA:w W\95e|WaRً8$3q7 !3!sMy6wnG`vnpH~MnSZ͗l OƩd&SDs_u1pf4CBNLLx4EyDjFeֺH׏aM;.XR˛v<Ä\ߦErA怴aQ[i̿0M^Zny[Q4n>z1+Zn>]{߅Cx= rFe]vgG2VAH) y1@c- ˔=΂-tn, @8?Q&z\2qO$J%+-|HY(;߶Lka ^Q7mZgb:Yty>=1=PtJ \Zh&CaJ Qh9Q/+`0OAE> \^6~'lŝo \g,t!i̚Xc=ATڒaW$Wqme#3f_bFM~:H M\p& WVlX꣎JOK%umCnb~.v8Nu`at=)U0@' ) fRB3c IxHZ(=3RD{1 CFj -6]f'N2K4yv*WS4-.!LVg", 950L<@;hUNU?Zm+!wy`D`b1ٮe[H9I<8O"eo *9聁D &A - ,~m7̄x˥/kMˈ!u˜#ˍ&f_eA>({#$Χ.|%@IfTlA*)g@.Ҥ>QKOTYh\qI g~裨c؈oo-lm, ,?ź-b&w9HrQa[Ue"&=:H)9%POTu^'*-⠊p[:wt̓ ܎ݡ4i`?x/p V1)vHנy71RE5U,#Sxg-/tZtGF[opgJ.S#>ha#+3S9˭.^GF|tWlHnfm>mu81#N7LCfAv =5@cF = +?ΨV|`<3;M )a@s0oa2)?;^i9.)b SX> ˀ"K#'kH.߀ gh=#R&n*Q HD#qd0/zcQUq 3߉T,*c,c̡{wl"s.B9-_· u(ف-7O '@18[{7kOm ^lj\+aJdC` jcnAG"}^tJztU$=;QXDA_CZ𢔎cG [_G;FB3aQS@='O_ADȃJ#<L uwu?vn찱L|!ٖg5YXvQܒ= ׿<7ˮ{=E.+,&wE1,CTEh=u.jk\5\zE#`_nǿ 9~2*M ln_L>"OߢlD ]je31E*EBGQ[etPnCWu範Ul[fvQI k̀~M>/Hـ=!SS̬;ʾD0Yp[ݯ%RÏ.th~YAu(#7盝a#3 X\nWhI/%$>ÔcmTy iєYW`_ьG >NzFge^L=)8b̆x 8{t(8]$$~t ohݮ_Ye #as?ЖC-Idj`Q<6C_kkt,ש4}d5=3XJb/lͺõ(4l]p]'ǚesV%JC1Na[9 d͙N2iwwKQǑC&l^ӝ0Xs2=7CgPz-~\;+(5.aLstsa[Z{7 y֞;gl$ L6츿ۃ1ҕJɪeg'>{fu;;?$_928+JڄfAJq@7iD)360KfQɽ;Et?BZ$x/<$s EpI LcPaan(y&Cx!0 M Nl:lp"3YL%U<2ι .[*qbLf[ 5!P9btS,`BB 4[ost(;HPtt~1A9 wU8 lDq,ѡ·78!GÊ )Ag2;x'8q}[p*H P^ȕuzt~/$eZ|( O+aygn(Tفߛ1߄NC \ 1"K&ܰݒbrV&81k z^phxWSO)u>.ΐ'+XQEO.t(ݠ\%(sr~()4*;! s}6^fgnB$&L1{^ɷ\ӢT^v:}lwD"H}7=0Yy ~ȼtgo}j\vN $2Ujo1b  ևFH(5]Y=0z>ˀ/_<% +pŀd)hGv^> Tyg/FCv^7#}iɥq˿FLҌ`充tا=^ۯכ03>gv%Yn"ipϣt7XR2JF d58&yĭs.Xq~H2]gq8 rWmX OlP vjQ%e `% tVE̅+;$lq-®/f"'seR>y2PvA|%/շS anzs3$ʭI[g^v3"j?M=mUxr@:(mގ%. LCH$O&[a ck^aLF\`3!nʊz53kZ@=t((\2,Hsc1 CoeDװiʻ_{7 J[}~H  #@S5Yx&] &ypW IM kVkw* _QƱ ^^a[!aTC3kuzX9샥;p vɎHZyӏoDM(NajGDSw=n쐽CM4'*$ΦW ?dȻ"0g|i޼k g_W[k>MCne lT}~z'qRq%ܫVCV]ƮhAwMۑObXKeTòHz WFSOkQRQ=Ofb5r 56zDwxRqY `y']¦b u鳒= 8 uq~xTwP ;|?,Ls w#z}E`vPbr4ھŃ?igj^[5sҜO£>OrRf^]ufY̱ d?GVY -?Ch7<PDI(4H[)i4ա~tɰT_ W%E5 Z79Z<`?ŘR+gԦ:?^zFYǥ,Zs7Z1eOMW[AVe&9/o%N h/e. 䜓Vc7Ȭ(9wE!*i4+F_$%+c@}Ռ54۸z~[[`t|4oJl,b)w=F٨!ς߫uH\y-@hkk>_$џ]LJf3G]z)7vn U'#Y"+ N :%Rt[!8U],_ JA&ܒ`~G;M!:~<& : -$kr^^-'}䉿7*0ܓ;~Iג>!2mkuE7#B\WyU C nۈs3&K ~}ܝbvb(D`,tjPZPEfo!}Ϝ;fefy>}=mc Fe&_&{r2j[vlb~9e%)aBQWlصmqϬ% !x9_sS=d]] )4!9?$u{LWxF.ʣ`ٍD+TY=ׂpkƯrbryƃb6Hv@ܦw>+=7tO2JkCep ff3ޗP<gxuB^YID-ANĆ:arx~@'(5¼soIi&(6r~<^k*/;R># ORQ+@ g7شcԲˠ6>'~Ï2r>n1vp$00 p}A#'C c19?kC r!1 D ġofR^+FPF(CYwc,re<`@BAGqvtI P*hh>׷bfnڅ9KHe1~ϞfuBVF#s.6+.M!._P"Q N>YJ8FgSVWȤe>Zrw_y޿+7oQ eяľc#XAQ8C84;8xO >WѕӸ'Jz881~\_6?K9ӊ=5. bQ{O.qTi] /r#9en| XDG3S/h{㔂K=7,_:~O=c{Tl=Uj*#WN=b@:O]Y/hB2D8oע}i&~~֐XpZHk9#J=m kNo~lyrxfӆf;nS~G̤͛ǚQ0bXtMqB!{F!z\t%-$Bo06jW:k=6;^A%g˵}Htl|j'0W}eQ1!sb_m@I;}8zs5vPbWJ66 _~Ǿ0>;uV>:A!@(+rHwZҭ0cxfCŅuy >;5煼{n `Msop6iS^f{NM%T,b Bk2u/G;@3Ph01BǼ$7Bo 3t$28vc%!ٿ!1ȶϘ MX<nG%x׀xZi6`" ntJy^88guLG]р&[ T'x I07 U5JPq8^&sUT1_"ۘ,tEe"XC Pfr`Io}qz} {K_L$Jɰq9?}*ICWZ$o5(GZa\Pz0T>%X`D@Rm&'Zw{qr)%}87e -am }\5%σ|4$Gl@*Br.Y*yF'Y>A'Q*ExAVzP{K??NH5U4|bΆJoUdC7#sWsmVSKmK dF2%J{XݏBKh̾l:,gI2 ?')=I^z?b7hݳgGH`y[E. )PK5 r z6ͥu?Hkef[=ri,kƥKʏY2{ܨUDZNZbB- x,>r~0X0l9ĪA~,&T;ǡ˭Úd/r彭F>kQsfdt7yzm Dʮs]7}k'(V8X2d{O)Aɱqb-E_rxUț1-a$8]+x>d5kcD]~Aw#`vN ~AqR@]x qx/N׺ĭiydQ>0.>yǝYKjMBhhi{@%HSOm7>b *rfucߓZn*fgѸ"T\{M?ԞK)`sSy=3dg.bƸ^W`\HX5h6iXjĵYan+^kPvGglxDiҮFqd?ިu&+a^(2pz4̅BoA`^tzܢTzMVc0(ʬ "iՃ",/DKgh1Ӏ(zIgkG!DݵZG^۟r*X;ѩ{5E ~8ɧ3oeiתX .ЎQ+ ~n[[8а5|C[D(PTX?T 4扪\1:e%`%}dcd71\O>*Ŗݜ+"4^ c *GU3'SB>%pfY:ۘgpcK-RIg4 IAG㩎rcIeW:[!gRB^-9Ɠ]ٙJS  BۏdV)*ꌥd.4- "}{Q?F+$=ߴ$Y*<*VH;Zi;fŖxd(OlW t,O$t6N B 1aY$P]{ کUOJ~]=_^݋([! N3PLe/v$Qo<pךvqS&aJZvP|9.I1 ]iJnY;,* 낔Y-dMeF= 3k>F-Tf'?8$`B4m002Ӡ+}=#PuTH$?hɦDoOW/"G$ip¤ z ,<Ǯ eHpX Do@ 8kS<.3{ d mV;1(~&SY 7}NK]6D5"jϜD}xkSd+_h|W ,DfyHI=PzFb pcdU89I9CҸߡv8Sb1L [Hj腌ʸF׍I?`m[.-` rb;ebj /qESƟ>BR[$a3X9KЏ=U LNUSoPQG31K 2\XADDꕚDE11t)?w?51Y0>GVBYQ\{gp2f=;xaVwS^5땣 %(̊:`~}`ye .y 4 {-JF' PZؗUIzQCbb:ٱzCXfy:?у{2@k^Kc U9/%izwT v-b"ePID=BOع OHz,KU ωIM `m4GX{zy` GOihv5Y1QQ7s"ˊhy'ЦlG{]pڸթHl .ˇPW!9* K 8R?+ڲUja %i`e-رDWJfJ`Ĝl4p/Unl~w^$g؟}03.M+P@Hυ$B{`)'';ACͅR+H- €$N "# 9{A#G^^Hn)SI}LB |Ph[Mr$;@j=T YdKO|gFz~NuLߜv]?FXA>aԝӁۑryKRQ G/ƜL}pm[В9p:YpCD]Q,h?0hՏ> }uvj$t pZP9Fd9c6ǯƀdSO穲 /iz8i0[CiPԴ&m;DoXQAP$qz4Ty{h8DU2eTLU3H P 3ETө(9"ϫQ4/>Uճx O18z,XiJJo A8.Y8\v{J"wS`l'M]'\WX0S-\c߼HlwDLxJ:2ĔJ'N@UFs`dƩYEJD欕gsƁd@7.Q?ȁvTKPhdDIQvZلGe7 {?XXƹQM0O$o`ܔ.4l79a+ mlkwPDaMgȏ3VͥfF$ۮGk.ΉyǹBզ(  !ZЗ;S[%YT?XbڛhvZ8Aʐw5ct5BɆFy,}[+|ˉ1©L ,+,-'ϓUαڬ RLUXDbXa hXSP̑M&OT| FL*c!-Z U.r8aJ~`~4=[絃ՅQAlMSc7.*G2>CxKBY {҃' C~xB LͲUN;g,tr {%xҎ@ HgR4̙Y_)q|1,:LXbqL3hJܩ$υ\u EN34h kI)^I)^#ۨ0jM-1Uu/aMn%8SST`by߶U}eZ?ﭘa&OVV OpFhuhG[ Ujp ]a'"t(I vec"vHci e<=Ip*a;s<}57" .ɁA.H@J0\|FR6vhELv1TVw9lbȤ 4CKg2M|~+Q7 菠.iM${뮽J-UO#)C=o)5г\-X oXL_ړ.3רpӪi ʂTex&t w+S| U\Տx6{߿<=K iHQv"(CŽq9A.˃:NṘ KyFգcų Mntz&x^%(7,PjQ dUGj5_)y%MjAϒT҄@@!`ъQizL5 ؂ՆM_ئW LM IPPmF]6LTKUeQ~}~1WEf-\SM̯Ц̃9(SSqI()FtyE.Pt'ruG hRdw~NGWx~1)'-ѓo5Qdj}^E&fPNB, iOLw*/ŝ=ƬILelZoyOށ!HScԷbM# oU6X1jԅ+ogb%[v6.}B4g  %86ďiϔ zV\?[{E#H;Um ȾV58 zm/cwkl`{}#(&mG:(0BZdl{G6m'%$³"kp&iRd V /ط$reU-?z6@ƕbgx}|3D>7SoE\󶅤 $,aL_kQ` Ȩ#y|<^1Q9RYa"](ȁ؛8ebH ӚXtu"ELN7%Pq~w`P],Z~tiv,w6ݪ7d J9`Q,s+beYקd0x"_\zt?A{)sR&F5ɺ$ 4OSkk c9 #~Rƈ6岫];4*).R5֎Jf2b0lXۊrrzJ+j!9F^^_@*=#R~\%~#eYڹĮ|JEʶY4mQ 0nf&v#=]Q eSR``Ou$ծv@_EsbPyvs4D)}Ҽ0҇C ["( `V ƈgRYj1t6+Gd>xft>¡t_佪B*R23xlGw" |7ҥُ+F}@^2""8I+ {~,[>_b/JzǺ=] 6Tۮ.3䲇yI\(až)8=󽦾C Qz?U{ ۟K84ñ[b5 `&ZYB~{ڤ >tfJs9ɖX1؆G4!,JU2Bf(iv0HŖy" ~ED"2Cd 1=`uPnЍiLoh>V;x,C1!vM9,M)KI%!!>i9ȳw&zBD;\SgO2i /rY$;}4G{Sc쨤)uE_hBIq]pm뵮a1$";iN )ě&0h 5}26l^O \mmhc[Ē9<֩#!Å!ཷ+NTp| _k& }Sb[u39UsYҚ9WX6<@衒 SހǤv֪Va}jy1YTHZx[8O9 ayGw YgM1T2 周De V P $te$Au HYRk}p>7* 7YO@1^ >or# FWk~u9#9d紾W(_AW>TQI=68b*v^\ޯI'hW렖'N4M?tYu?ݝthn|z/`Tۜk87{{)eWXjɬH0JQ|ylİ?J8av&z:uL<%6}xJE2FT U 0 |a5S:V wS b#V.sQqP{Ԃ/! ,Zs% Npnp!c;_ Q .,PFR$u9կD֐XpF ~bpn ӳNlp\+l9!7jw^!^fU+sL7LiF(*5R8̉d`t1"#5 ]UiEfwB\-G7s\p&U@XlYAn"r g$ 0WNsHɶ~՛PE"%ˮD9)"h}WJ `Oa$NT(Iꗨ1DT#UT ȁYѴNrA֗"yc % 3E+Sk4n=v9L~r$FU":UUSf^}dBr$&Yꄊsx*>d0jJx$k iJ[DĞݑ0Oc|5}cdLYDcKPVݧG'8I臡"r|յ!lWx˧LX0˷_4ۣqɩǂR&a]` }? Ut6f=,]^ dO%;aBA`ȄA0z;ۣT?37/6{;lrz^\9j«lT)A`7ġ2Pֹ^9j6#𘿵LpٽZ%p1juz:]' [-5jԺ90 1H= tfni4aRujxx~O þm@&HC DKa>Ga]kZeNRV x FPh?IXɮ"e!9=!ReCB-˷ u F $9h~(BŜxK]gs:ؼb)D k\da+/5SjwߪN;QdW>S-͆uMm0ϗ%mgjP˺PĮ|] ߫ [.Vl]MX5Q?&lA{ HX=^遻:kGNy5tw`b癪-6m"T dvfuKEjv1QdrxLCkԤT܇i+|ϊwWKW73>y$^N[Ư&]7#V擄/6FzguꂰjD7n4|6L'".N ϸ[ާqDR]ls̷ؠϡ|Џ)4&ԣ tK5Pn%}AJR3}9uSonӿc>rw>\fY&$ =[8m!&\UۿALDĴ=f7wl^BaCVx,쯞;$wS'Ѡ\f @aAy=i-]?5 CZ-Џ@ o$Bt9v/kg)Žnk O[FjM^HF&nhgPTOs1l)_鿱tS2G!q\|2 0qaPzp@PTWԂ 2AU\(Hm'Oy}C2o xi'>K0MxޔbߦkQ/6,$8|*bv>Sopu|0 B{5  ڻ+27is:K ^|@grgZq4dUP8nXT͆Y9 `k gXzۂ>˗c\Θy)cR2C* jy=kIqJ1 XJɌ)=n>/r9|rn \!Ÿem̧4-rd\O蝕=Vzvy_iWZ$I*5ZdRRHȥZ}kq}.—QD)0ఽ.Qjհu-Ω۽hNJl^=*OC0t%kȐVY8lxWdu횘,K?q3u-K_;2vG 68Ʋ :6ߡ$l8ODN0^bG󽟞gtZgEe޼# < I_ @ιlSn+fG+1}r{Kq OvBéi[dl [R; zT^}*6働MZ ࠴l!јe[Vt&ңiI" i܆ jkCy|y (CD*Bo,{濓1]<42ߋ[o&#R\Y p2kFZϔ%zkrlBA}^k2cKa $^SFZ P3h>ux>Or?rAµQ?By?%kY_,DғTc8A8{*s@zz}+p-FzEzo'JWI&AՊ\a RGh٩HB;Z!%@-E#OJU_ TpKWtʠUHQxՑOzn]j&rF ` M \j[xeVB>"ܵ;-Q*/#ll]' ~YdM*qH5:DZ.+$='*tQ֣u| :%(7Ǒ/I:  ׀ס>~\vE"*eLFzU)&5*osnJlSFO~/A*?ΈM" 1缩)ߚ{$8WH9e-zRhŞߒCUE[w;OĦ-%cw$ASiȷ\(A}^nbUrW-)9.`L{ :s,cFs]e͓ {\F˝טh[^6/[XI_7$oi eN`80xx0{r Q]f0nj·KE)Ȓ j\CzZL܈7j41w['2x@uƇn\~wZ֜YXO V |\`넪j` &nu<Y$ܞݹڢ&>Q9H}ɋ SV5JQ(e=} CjH&iy츳Y Q2A83sz_#Bo@[t 5Z#lgo<,)6UKx6-Yh}8b&bO7Ǐ4T X\OZfs͹_-e!W88c9Bê̜=N$efE0h9Qίn pqZVb)Ծf8-]:.|~#[HM|!Q)+'a_~/*HDšVQ5hb]R/$wVaNGT{7գ? nr cwrC&Vc:Ma' 傴#Xڲ66IKI?u\zjS90lts.Ñ= vjIX"в%v +9Pƽz(#r۰qz(|h4WJ]ЈI:@lUі ;'ڎ 6kxqQƔWn[Guި]d&dz 4mI%SijxeM#9FNā ᪥4PN颧ttemv61WnLͷ鹳CT޼`Uu . ɩ{"+} +<Q]FY-#"j@uH|2ڑ3HNZ;p#R}cytw#xizpZЕ%-\L!@ўT;M8>a*ύLXA$FҧɢO>)ũ'tXT~&wHdoTFޘ/"E.iNz#܈ew.*?E;(0{8z"MLQܧ b:Cdf AWݶy6~'~ϥ90 ڀM^38\D08 x70eF-XT9ŀT,k3d-is@`#<^`HI^|`۴w tb~1X\uWGw쑶cD ~) 9'.4ݛp{9cKҭ1 %Tm dn HR~,ъ\L:++٩ o0KNG}&]^A (گ𕬢hO -BeTTeUڴoȗ.}mF~!غ15@*#ɯ)uȃ n}s/[BiNDa\et06CC` `7ky+j CKHO.($ON[Υ$Z|,p!dl1|>bLHpVJ,1ItC8Ѫw` ¸(ҠWMN޳K"c8Җ Fqa iT[+cGz%L}(Kdg3+:2<^0R~b=BM<s ÂoC!S52Ͳ.] |Z)jb %睔 ݋tMT"9@[ J-Pse mo'[rj喆Zţ2BUCln=B*N-BcT] 0Jʼb`bLCOZ$yLgaǫ*|*H~y =|%xM aҼCy帒b"3Q'F贑#cȬǐPR}߰/%o609A(? rSCDNJ8B,}~ $T˄%Q'Ja)!KmķtwGgCA-YIac,]UbuiJul<)J~, Fx{ѳVhDѢM6a<My܈`B4d>9_!G`cԓNM,t\C6tU7 }GgG'`H>7@Q֧vDaZ*? dj5Z8H @eP GgIDa4թyi&2r=OR4CoI](? ՊZ006N0'@ e$q'"E87s7Ux 5G -1 {r'xUE $ 0@M @p8eO f}͢뉒UD*Xg(Y:cl/=1'~Np P|],'Y gP l=-xuwX9c\1ʴ[SƫD7+s..~hG>[m7rW}!ht7KP ot6%XO.>3鈿Sd9xwԍT.ov'M6L΋᝗3P7u%pIzv/Cx:/41`QHqab4 =8gcM50Mr{3_Pnly: Ei^;Vh6 h6v=5-s>?9V8hs-d5&71yo؅Tu9oE/Ҷ /1t_w9˶_(}U.#E7lv", r%'<^$m*~I)?o/`kcqԯ10NEoha%+|\+؀O&x ]*Pvjk饺m uҪ>6EL7]9bQV] uncp}4Y<go^Umƻ sџLZ^S$0TC%Z-9+w<ƣGOG*t^`AD*] nV-O4"Sn(PT ;}IoS{\DGGӴt{щ#I-mF7tl*ԖShiPGֱȫ#S{՗C|λ2O4rTO/RlD=SM(ZpH^>*|D"ozo#A3 %/D{2;468%# ~2t{kNӂ~Paf̀ CG;{eu6h"HrO6;jĄDԸ!V i$0:eJ]]NCG.YbVTDyg"f^&q<҂3Cٴmr~$155muT?JKD\RJ+¢ۿw6y84p |M;fā w f}.W0W˄ZL:՘:^"}( )T_JӛmԪmnMqr#l &_X4F'-!O:#gnL (MٹM VKE613g,ǜm|SVZd(ʓ !`RD {v)3d%bySQn꽭)@ =":93s0 N>B JZ[ )_MS񔵯SL]bKJ#xLL<=>5n~AJVa*Q0+qkugjAlhbl;dxJ1r0^x\ Bّ"cw ?Y"w $]-x4 a[!=NI: 69x:'P̹B!D[GFELO @ŲL*<չDfeqplo'g:wdkz  fmeI!CEcQ d%8wLw_6{!+|d'.vpg%rD?\U}H-Fw%>/-xCߜhzN^ &%#!j-%dSCba]!E&0ҞJ]S'RM nL>3ZN6mF:TNl+@"ʃv>rHA=7TPɡ=.U껛zq03 ^V u1$!VU`^DBXc Y:4 63S_)Tpe$S(_TK@_b e~qRv̓_A~P6ivp Z,%:fs~CL={Սr[Qjj "sr~qk3L,r6R)ŸZKQ8]$yH6(!ԍ߶SvAGu_Id C.fMdCAc =Wkc.kEw7 KY ;w*P/$t/;k"=+RW-V§ÖrL$ݤ!w|)a;ƅ,ZW7s*A-~{gHCeRtJh#J[TY=ۓg1+ֽMps$&ba\8V2 !4{o/(\XGXas@IdؐlVo9€|k`Toh\kDM۵5j%,+░¢oeJ>0g>TB{E :vq1XkCduQ4d! ԯhukЬR*Pn'wU@z?gRt 7 v7U }:O'ϸV<߷^Ql*,޻cLi5‡^Xx?PKW\/hWmň)7=$}3?E#2ì!xO196\Ǚ9S>\$zi ;t~_[Ә ~ E\Im9oml0U#| Dhv[Ե]U>qAECz MY$x |"^x|E7VP89 YddDL5X*eښ[C@`),CEZs@365J 1gA$ۉ`4T-DPHQ^ӄ|-ha:B%MJ YhC.›Ɵe@T7as4l!mb4||0:߲ #$sj6ZN:'f'Ԍs*=Gw?ª'm&&pElH,RҌsowl}|}yu@Hl R?v$P0|N9gaCf͹b W9ջX)⟅Ւ\nBG΀g7^ Z\idgL8xAkꐘ,9xfRNfQ+G ૶e-ÊE|:m  AgH?'1>p|}4 RR3DmKZ5$#M+Xߔr-q6U}BQ-T;59aoX5tB-jc^h&!?#9P/mE hF%21pS{y#-YhA /NNy`=?5i@_GdXG=c.[TauPfh&qE?0JqFӧt^#0եѸWuYC9#*?@>qlޫ'{3Ww)Iy T_4h {{{~0Ro_GQŹc{aCtv83~#n5z*Vw1M`zQs]l'>S1M f[@)ܦg#Q\= %҂mhto jmKR09^ 6HHH١ݸS+s^-O&(YW-mҁ`HS&pm6wT@w1(`T~xdqo4V(,>+"-ql pQ;}= \Y{/$DE+TzZM_bZQBL8pG3ﵑ=KF^rנ6Ȟ]c%D`-XQ/w`\'P)PyD,E)ܬo{i_f-A(>O[djkᙜsʆUz k\ +B_ȃ/ 2֗kvO9}3w#%0~gc|9_Td@ޱٰҖZ5AQf_xk/3(F*1=)Oܶ.z8C;v\3ѩ`X5 s@KZ `bN+%9 3J|9+Fa!eeyUl^NoyIg$ 3\({6< $0$,Imt&'>ThGg3tZ櫨[馉%TQLrl ^Է@";lSu(I7{`y #9"$vj]u"۬tVT#{g7C̷HH+R<#$Pt9fn?]s</"bûv^,@ xZ62/} EB{90@Əg -dV7~-'nSJ~0@ޭ^(-E^SZ,$ jYKucRutЁ0rX *f"u]Wkq[p?._m.k|A/AhÍGL2~2b=#m=AϦN C{ [C@/[.Y3 C,}.] !&Gxl΅I; ^ >Lt"_+(WsfmaUa:+ZԧPIh]DY4~?^Rٖa=gfgY( .jK(tΎ>ӭ7S䜵񿊝ؚ rIy6螗7=z&D62'ޔlڂEUK?J;0Aŭx_zJ!h+)tP՘A!v''4 #z;9YةѺl#,’-TSIw1ldh J`ץƜj"bB]5f7jhNS:]`$VAȔ grlEX% `hGsS^{2WtboeMܤ!}H3h9(qjcMk9)`R@YաYXwQ Ҳ?~?3!;@Z)([H;TxRu?x}kK -& )Wd{T,yem% s꣓LiT]:v# gB#Cr~UҩMT* Kzvu6f!Beq)o$'a6]Y`d6`{:g.C׆*ى39fxOb)P z mAIt+Fbxj"֔tR) p+ Om}mgE_/2HKOb%9li£JQ0ɼEs8(_%%cF-oF CQ:Q}~WC[PO8+`8~16=F5M&tnjf| 9+q]Tp3e3R@B=RsHf{94z/mZN{bNe~u_@8h Ϸغ {@`O$W϶V 14FttܒؼLmxh$U=Kh@ Ar˰y:U=%ssRBe19_a4hh$ޱtbn?N8| ƖΙGIobK nBHovs"uݟoR-4B,k}hP`"Q'3.-ESYgy+fA=:7 &}wzcL D`ޮ揽P5`U#v-߮Vi і Z(Z@ u6*"wlX8Annn*eDc\ܡ)eh<mT!Ĩ_ܡtpF=YҩTb% ӕ ĵ5=>f# _6[J82jC&}δl#8iW`vigl'02i([',E`csL;}}Ӹ M6G%Fa atvށ&W&1FZ1lϮZx%2\M?šA1v6 My41YFAYttPQy>ъ|.R19J~ټ?(7)^7Y 0"o4Ru)k_u:[:˴A~Dmf]CI.LFA4i$j2p!}gaNDQ!$TԃF!٣ ˂ⴸ_ `M0Ev* W98m/ 0,/rq*_,A|ZA(Vmȴ;ޭ?q0? sISp-Ʒ)իMyZOtQ΢tb.F ro%>]LvrD iq-D8V*jj&wyCI-H_i F>V;7/΁׊&& U aFU}O7WfX{]pHEDti&rU [iJS*LxTsNeJNJn\cJyTǧB&Y la@ eWg'GżP%o\qOs{BFy X(ʩ+#g {?(U3 6=ϑ k{8AM8Yj3S֍-ʙJ`2.dY,`Mm!!At#n4i?^Ϲ`ؼYe*9C-f{Div5\.r[IPP|…AGq-iWsRo/*8u+#Yxc7服5G 2Z~Vy9&WR9 ?5\0RAS(0ZYe;e>,G@9Edy&b˕7Z:(x2B z/Rؘ71;{,Lym4ID,Ep}͗mĤhy}rt0&63OBn B7),'TAc F4z޶"6:Om(PjLl q9)R{kf>PQrTw'KUtLW -4"A9G}j3*N*6g4\Rl,CǻlHXE3%ua3ˎu\ԪsO[x^V-۔{:5O^+m[\aSRvoP'KHW(\^gΠ*%^,x^fp?"~+aUMutGVO*:3yAzv]y\$ԠB޲A M{ro<u·ฃUrV²aV\7J`L<3jjN[ br0˯ }Hr+s#waR⻢FMcpXRE}㌽N.:9yUvٻ]z? ESH󽡾rC[%ZBDsTw3Pu.Nw[N4R-vE*Mܿ%!g[|f߼_# * )#zU7^h1vyX®lcoo^s<~r4Q0/We8%TŚvb{W4iW/QAύ5_#mgxwlp䊮J8fu wz4\9qHXBUA̚qvԍA{ЯJ-@?$#ܸriyuRvΫhVtG- p Xkx?}Bb@ ڶ_*b&z.e٢l„hkFn`BrN`9u"}TgL ġYYWoT^ ?9r!o"g5 2 /-gd&!}x1l%VٕO+v gXEZC.?X6صݔu Cyy4T/cd AkJ!̹,FpVVrfZSf"> t8 ǏfYy5pQ!( ̂?L1=%FRpA`K-P)YwWf/ R'6H2dI2Z\/{7yޖm6:ApCdUh"}`J:Mx.a M#Hm(dKL0-%_r(KITtg8XWrR Q6q/9[8Xd6T_2V2+>{"Psdihǯf(Xh^o^ƥ)<#]JZæ=q=c[%7- I|M?U- il&,-x䬏 %+7.Ik~_]ͽ3Πst RC-R=x4p )O/'*F5u,w5?3*fΰ\NHδHg cӜ!YŮC ]F+{3dh|U*dd0s>D}I8|Gb_R*VO V͹sUO؈}[j]ZeU;\0G䭵YjIs)9-W[>1ٍɓ؍o蠶nn\u9Nt[̃ d1" #qGں1-9RN9SB86sƻS a ;ث(G\_g{ΠSX3D ń*=,ÐQ -RB l!X7[__ D[[EwtFyș^jbo nB459=Um[GmWQe{6HM\ٸ6` K7oOd_yN:KtOg l4#5"2{mH~6)/`[AaXD@!V=G,{͙DNx9e}DO֑{c_W@RzYRYTO/ˤ"jw:EYSiq|g\L7yS{E|>m#_u8p?4(XQq"U 50Bh?-wzjye8pSO{q`7 ^$$A[q!6*YzL)E%~ C))T5BXyxȸڳ|E+KNyW>z֫/j:DmvlB~,$0k&C\+StKsv3,|l9e!<I{nR-p:,X7jұ2, ڑf,э(=Ҋ:3 V@gUũ9l]Ρ(4T䠸kV\`sk>jr*,w֢+,WRL{ފM?",!+WUVSUxIJh~A/ȼ$G םdb~֫d0fP9fä q}Mm|rI3`^GD:q=81Y%/=sa(,ZPp|/<;Ռ_x:f a h.Jt=&fM$},xΚ"LLxbi6 Å>iwPD0 tKҟx<]5RusRpV _yoe$;g!턎S dΐ*dlj*gƽ'ڤ樁 #\?7:No~xmK$ s\{iYu B0»oRޜ{bGlqי,9a+h5OJ%:xuc4*KtI$HMnLσ*{OZ;6lk?&A'nP*LgbGӦ~49mDxVqT/o(5ʧ~Qq9Zhcݨ))eQ ߗ/lkD;aL|v.WP׼;YeK B8Ĝ2MjD$aò. U&q`vyCL]re(Sg$˅pƟeYM42o/AUX9VSMt*.&QKJz6QV OT8w*R DMx4T5 k5?__qJc#&њɂvjوW~|gm>~$\1<aD\9KZlvhk:kC'P]bjZ _u7!!KC Yk!@n_0)[kdBKN-  ރHEsxn#n%x)? 1BC#9q7nwu8[/FFx0cTv0rmL!.!;Ψ/U[b0Il@v=+qW&,30n#E3A YzTŭVF ?f+Hi[~8&Dx2w#jt["AgLLHg+6,\%]۾t _+Λ 6ҠZkÆһB&D${3QĘj&)~9}'4E?J;?ǽϓTF8Nv7&HIYR{ YL.fzdwCR=x`]V3uЪ꯯{oSCClz=&Y7NA7SPViZVR-"ЌƍvO6 -YЗ-MNkbr0mhˀ4-$I8|߃~$> i'WP }4[.p)Xb6&^=&1äFI9T, 1; ͣ>Gx@LNa:X lR<6()8pׂ=%VTѩlzdw_|'6L0P6( PsowI^|z楦Z{OެB4֝ KL:FzNfU˰m5.n/Џ@k ^ؓK,VæTyqd PXeu?.l1ХBv4>ёP!bv֨ @{UXNS]}f,0ɛ ␍3rPc$~ܯnŰZ RWj53$p᪞וmĬ%h6?hCfc2+IFċ^^OMOj&Ve x `ٙ2LEijFj1g`HTrx>L,hx(!9/~! k.)^w uj9=f>7]be4Ypa9Y0CI+wS.r|P$0X6!d61Vse7l+gKErngvZV?Ff-F ;fkF=# nS0D  q]H*L e6j_5 W {JIJ*d49XGFO 86yiy/;>*^R `HlrV3p{w>Ȕ4` ϸL2Zg(MY u,7b˼RRWck1j#BB̲6^pla6攖͕,?Pkߙqā3#Y."x loXdu -%;8=>-=˖̸V8R1ǁ=|W3!1"v#ɬ1qh|RqQ퇩"zFGA3~TŘ3b'˪|A; 7J+o16 QpE|u(4dm! .$< 儈t9,/[ ɉަ*RS[TwGpyU;Y~aUFPa0~3衸>v̦m'ZTXrUl\L,ڑC7O o39FB Y.Aj_3F0% jV +)g(l=hIୣhAvjoqsyq; f!2 PC]!yw0cf_^K=fɭd/ySG0t6: Am^s$K3y={(Ci aAVDiKyMU6hfxhCӬ {PϑZGRoAS%l,23C$0_Λ E11s6)kSuazY}NJMh)qNL CҞ ԩuh +1Ej]7\|s X2Yz=,Ă(acgꃅ0m4yVNJ7OL^5mC!gP|ܵkɨ$ie#A,O4mYYt߇ckL5FR(ǖnRΛE87ڎ;܏P} ubW^bIƶ64Be.|Z[tNQ֏4)oQmo`=3,P j.k bKLbT[v N W0<C͌[ѺyzoͩG\nK$%\ogN@ySZdڷ +㩥ϧ\v|Dl U/o&˞/Ib b=? _LճoWĨ6!U԰p2՝~̇ D[&A;zx[`8e5o{ݪ1~l/ZDgͱ%[r^U4 gnK//fhc1^48%> 1Hd Œa2{{p@QxjረfQP!rG9n#ι=.`D|b[ef' Gh0PL,R]G?#"BԦ9o{ۯ˫r)Έa qiO ZB oH7{_ /%B+mI`}E1`#Z){;61 l_o~VG~)8G1[tr#ӄKVHܤi'ʚEkCV?`66#EkO [[,6xxO8(, Ut,C "XkN1|.+`K\#\ ]T+0oڂq[]w[w<ǐUw8W-Z# ϸ9;QA2!m<ىYnSTcu #D7e-H#o椄Vl&K]vs7mUݷߘ$HWL֫]#2X5GquM!agS9ۻ۩Nu s_]yB8h$Q=5JX$RȽ([v9'uLZjJօw; b E_ngGH| >gfz.4:W# ZZi랋} c1 }@dd7f-jEv;@6 f4BSV罰nRZ*9ue2Oi@-}Lф ?Hy8|^DBpkUɊn,=4G0w= zhgA 5 * 875)kG#QC,6Ǝ+{(-5iڈĿ㤅&OmO׻HdvyTHytI^ż6:wzB =qo@& 9vJ}JL=?d6QlU)"Jr9 zxI)|9wԪGr?R<}x "}Q3+'@}M~/&cy $bEqJuh<||Lϋz~4K>=KҰ;w]3 _>@FڸT@[dn@V0 6ǣJ'm-~QtΡqAWs}goc#WꊛgT"(Б 0fW5QB1\&]e[:ԧ1f09&|u˔g{9sTM%Wzuln:{TIgc^9h,,Αxt8Hjq{H?o$f3x cJ ,$ӊvds=QTt=S$(:;& s(ʼ,ĬSNsU,*`_=#WOYP@ƕt`yB㓞@묖 S;t NiIdfJD@6Lg].he FU@Gnt)(9 $k?c;EH CdS9-eѵM`ȣ(☰.3˝8yX$E^KKK nQFy{jGQv%sElmF+mΎg''^69..^ ؚYg_߲EV#%A^!D{oj=زz)%*'wm#evfτݹ 2!xr;8Mx=$ID|xy!}H3,YЂkXQOÂO|1]𜐊$;q \s,Xe]J6/qt a{=ATnwg UuOmֲ+hQcV6{~@P7iz>@\h\e\ m )BƯBz&Y[*.&~Y / 8-PУ &=s$C{R2\1zj|i1:S(@!`8řcV|;y0BR[- x/M٤QU6dF #&_6ڋw󰊿+䄉{VST{'Eu5sVb+!E^-yMyq蚫=DI" ' + Ĉ?%SxٗʌjYKfd3CM>A^hDS?FU0XBKnIMn=n\tL4쓁{!G'e7ө8ʶUMX% #|KX'Mv^\ӪUUG-ݬ kv~-AkysԬ/1@pʙixP傿ۜٞ·D#u%0~-qQD7ac&1}p5ƨY}Dy*\x3O!PlMi2r ƖK!C[3lq,@#yɐ 2iy~@US[XT3n©ʄq,7Of}AqQcH{ k-u./]Ro7)O@Nڔ "R3eJc4,\m]8|G Wy kE*؟O`ÞwZyG@0:ɵ#ř:^|{MGJisyA/b5GwŘ,${۷Vyu]Emh7P4Ekǩ`y89q(jN1ܿZٽBg ,#P9P*̛`X_ YAj%Sք`p'dEerJ}Rצ`$ѤO82"f@CIe17Cb npH^apqsYw-URl!S"qoMϨ&CY;JJzN_FR/wihR`r\'ޓR^>/,[s\>g8_|o@Zk`ٵyGU0>\Ijͷ*E{vEӬ&ڂJܚl &$N>{Qѫ\6q*+AXxC=f4g !vY͚[%:ȰEIϮl6.ɀ[?Rzs6$7sVx -UAg^.]u] x(6LF0}ƹh-uE Fa~@yGCx)D%(`%^Z&ΰokr a™+1kZWR!!HP6EBq W|r[I_J|Uzdqj L#J eA wрF$#2qg4rY(bm@kc;;{VygaOb*Ew^4G`?I2hWAă'!LlJVĄ.vB5~) Ŭ +nōd]3nE[ey˿[v6~>*P@yTcGs[c1`THON-Obrvev_JATGxi۫s,$g &TWSO?(G{zqrᬫ;S<Nȉ$vάoqQSHYVmҙoS^ W|]qDaz vCURb4Olylu  -i-0Ǧa+K 8]Di5B]BK\oC܋%JɔA#\/LaBr)?ι\g<7&{{`ҳ e$m/ Vm?dZҝ- )ܹ؜?2U0aڤϦ0ۉ#{CL!OYyU/K 9PZ"zÍ"l7cxN3[^0Iw[O'ʁٱM\A4<7Q}> {()\_6ߕOhyN~o:!gFd@n'>u|My@{)x(~}ٚ7vR zO!ХxVdƚtakP׺=ػv9\:˼Vk>5.;eZW?r@ڢZ^-F+u ")9/Na1np1.͛@CG^%w:)К0}HC_?E,OJIt٘/o|.EJ O4e28Y?KvPq;%Vq%%]7vZ>%r3$R2UdR@2 H7:,t₊[qA~^hޥm6 rASSAA5΀Z~=g(ra(F+(mUk[݊jP/}w|L"0,Į2{z#%rv0)TLbW!H\BwDY/%DmiVR*zB8D 哇e$8jm%W{7*+kb,,T gτc_|],uzV`4g7`cw^vGg <6,g0g Skp&1ΏQȣ[R:J N5  i긨 %̾-r0P̏0}m O)ł{DHU=sRJyVVE8&aݙ~S!uS;b hov~P(Q3wg7P:<}={;5.ΰ|Hq-nG {rEKt"t0t% b*/-Ywf{R/kK^/yı=#}QJ8~iVB_ |{@SiǺZ:sVxcC >=7ER57;^:Gy?K73`PD @%Zleb'ǬvΞ - ,.v nQ]b)АwUceG;yh9WYΆaMԃӎ@7/0vT^*@J @r/P}w`kƳ[Tڠnp.bVgor%6‘~[gf PUef;;HJ9@tk$;aHFpT0Z/'h:|@tv<#=#9!Vrf.jE%U\Hj@פў:A q{nrQYzsJ!pإy38ȥ@YJ2ZQK=!]E000}%u I~b=74Mf9sAt*C[wэB=v.R&:, We$1a\|=3YƜQ8[o̔%o7zŜ7k!҅+q 'UaS $)|ĖB$W| r^ _[m#ƻby,JftD|%4^0 Wg]âNEkOcCH ÀIڨm5fPu|s Ny3izRIhإ mLp`\ow㒥@\?E%A5BX7f Txb56Cٕz+]BR,/tg腗Tj-HJ}=iZ8KpY V]d *OkTVؓ0=w~:v66tE&Ao*"v}ԗZ|'${QrINgccǹǃMk@VuմnU4"8)X`]Lx;9aѧIP5ۭmqJ&؅bϣ7,qfgLڴ)BdKz\R17+Y﬿nHJѥtɟsnUi0W+z`dkxmJ;b`BQȤ_ ПC\2NgW0R8ymdi<uGY)7梛]h]$1WJ;2O@ 轐{YrBL[פa R[P 5hIjr\0 yiQi?/dlyPP57'y"P }/ϥ-٢Ls˫YyI@S1z*ׂP>`C*@?>á@5MP&+vJa #{uwWS$hèM8Y15z;$q7֚fM-6]py |Hߖ|\LW~#@i ;iHȣ1W( N2)F̯<']Z\?}(s2Q87[Kb؇5aAabeaW"CQ0~g?@<1qfOSzњ=׭HuN tF m<ͽeN`܍@S51TI8m{< 3Cw|4H'\ve_x X? 2<Ɉ'6Y<6|r W[ŗ0p|62b" ӂa"ܥ80Ioi0^%C> zm ЫL*Jaҧ /r}_5щL^6+ъ̿ %<{74ձ^Y܅Dy`YN:< q}3𯅩(Eᢱ<'*;M'FA!1]Ae8*9 (4R6\:.MLPkcO~@W>gK>u k Նj9;0_̗Z9uޭrϛ(S8b;.6l%Bhe~Dul.o`fYpJ@Ou}o~ GuN]}{ ML eܝ b(1?Iĺʧ;nQ9<сQF?kϲf@KֳWQ ͷ '"BTwV(5Yޟ,wT骚?T|;{{ mPrmNs P2 8d5W6٧=NnNQ? nPOA!9(oF[Sv6vKzzPBn\]fmt4AxAvOKt,#Hv :hc]?q1̊TXE Թn$lg%$]d+xĉf#"$?Ú \nw)+TB1f9G2zxcbm J"\"l{Hnl\=] 9TA'7]L'Ge>/}&U67t)?a,?qFn_b" z1{3to7~aЃw>XSiCq4mUԮ]C8=Dp*?kϬ,adoԭp ;V`$1R9p u2Kriy2y7pn?vw$7$X Q,/WW+]e, ؽXIlV8Es!2`I(G:LNʾ3"!FY Ş Om b~|ҢD{Vd#8D &ce(;~}M&Ē t=o4(ȚJw]9avdrfNLA{9EE0>4r};-|` *Ȯ"|Q%[ eU7 w{SB{d3ۅQ}O>^Ľ_ *(%WDnn)s~512.q0̉?GVG.k荧u5YKp + eFKEDQܔnɤțuoZaa9泐M5OZmX dxcƈ}ҭ M/jLcGCrڼ y,ǥD `t L14{N3iV~ mڴΘ_YTJ Cfq1uQ\9U^0` $ W`28jb!sr 77!/ b ms=bE*:qh̉ 0QqꝳʓgfO(N/=`Sf]OW9ۊL#ѴБt 8bݴd-ɏ7aw04c6y0NplviIYs#U>|V>jSmL 㴝(ӔPQ=qoHL- fܼ>QTGuT;gIW% `0R($EioܡV[RQZt?ܷ;`zFpҶEkzMka[5L:o%*}ٳl k@m+!Uobnj n[!a Nc0m*A_ C;ֈS88(RIwϗ8kT*z͚ IԆYF`aI`4[4ҸҌj^-I\Rƨi^qlW!UpjZ1m@r WأJSW }p1b;\K,k y&պպԈI>a20w1{z/9o{RvǼS0\2pG9_GHB^).W5A[E#m)eδoRNrf݃h4>un+[!"(7vq7G y9CbU#bǣ=;zOvɯƗo?›b7'"'U@l0KDMnK@ϻͦ'hUqe;6^1fb!-QMG6r'e uvNy(sS⎯PdcRa2UjTn) }OF?>UO]TuuTE cxl"V%|:69ycE=U@t=Rk6%9@-H@` 1zȻ$4a) xmIT;"DE'$*i*)Xuil)tށ8a|ːp:hVXm+ ,]v7cVSfk= aa }}-4Z$3;0񼌇1Km2.o4BC2BVh$Sp;Wvһ+9ʂz&ga %H<L4vL*M}]ͯǗܼZL^PW74Rb ,ˇ3VEm=] c`=+Sls=Z>`n<Ԕ}3'5㞗a*xYK<gGWC&XVaN%æ!JģXþ!Z0n$&j@aOAW\<]MȮ /6oh I^h3WM|Wb1ƄVun6 YÉKݓlX>n/clkB!'߀^,zٝbZ wJ;h1@A^ehkTt tgdoKN^`fu'.CO!ql4 UMpuZحo~2NGK*"ƪ.7I׺NjWz\q~ol:WWy>1$N-rS{b<)GnW*5 {a&@%&G:) L;ɑ-Ь [oȠ*"slͅ6]5PFw) cesU۬)WxHe_(©Kzy\Icw}X_j4zǡJz`OJmEڡJpzuJ$JSA|HQOeNFN-V[;VQA)lא=iODAޔB.x0{n+rlݞC{:{C8.ѷ~aie# OV .z76ObM&Qh<C%}(tkaT)+r}MoC ͳRCTzpa h !dۙt}mggIp{a p66#׫Dз,P_*K 7^WK, [,w`Y*78#S 1oM~ Bp9W>l0- @O `j{4R9_h"p^\$'7ļlNf۴ ٯ0>t3ޤ%Ix3~O g~ e%q |UH$ƬW7Sr 6{8pKŷƅrdFQvF ktKbu\}D*ޣyv+s˪P%8&`™|a. Sec^ͫ7a`|$uEIZvIq7:~Yg^c@eQZ/?v7l&_xA|\\̊Ċ(׮*XPAٻ ^ LVg?HFtl-Uԟ1tҕ㗠rX] x :ז\"?1B+Zy> ST {0zFfɅJC?!QMɉ#ং&2>3/(ނd5+83.u3q.~cw,=v9o'8>ye+n6C~@+5Eͣ<p-#iNZŎa#׻1APbG9p2*xCS[g%Ek]Ǥ;V" U\pVysA6=GO}q r6Ə?( :SײczDiIP9KMq:'ʚ W:xp61r" ޛT*!;ϻΗ *3Mt.jeHM[y2!CSN{ K^FQ5 h\.?YNS{{Ez5w?^9 TFwL}RRf0z/=$kI'f]{%B C ~J"Fwn&]LͪT{Y [}okU~̈ײ~{'(q#B󻺻,;PMF=V)vpK*Ϝ`ĠL b,J"Yeb ) WuG"'=Bb6HoD{U?+JhdzY^tFg{GEb#]6X G݌%^p׃KKx}q i_8(K7j4(8ۄv??ɂcKwɼ:w \p-nRBb3fylbk=eFݏ} `*S]HҬ{Mj)<6'0)vhK&e 2!o~P&A1Ɲm/t#Ps6 Q^X7/k.ibʘ6!tc]Z_2( U%H9"L +z@_3 ߭׫\/֠[js];zBӫ>MqDc'%O⭁{J%g"=, A;+s*UsfF02}٫zOZ[Fh5lHFht`Z^=if!KH o,eڧURao~I&0 @5x=1̟ ӻ\\ؾ׫ q5m:l`0;JLYN`Y-Ds1ߵg%݃ hE#7X'Q05?95T-lLQ)͏ڟ/2TJlOo^}@4q$駊^\s]\L9Lيuq[^%!Ҷifj57a.kvm/dUȬ)wu31)lɷI/!D><]Z.M.s?1o@d5,/\ooxCq*sSY;"h2bێmK`ھ1!Jﰔ+EÜA(q㋙1^AZ9/W|Ci!#GCjahp z-?SWs7omvXqg=z K:yN/ Kj`?4xt+w./hż^RJzRdIs:,7JLzuS3em/ϳ8i g]T_!f:n>7ajK ShPr&ߦ?R :%:Y S%6 8q"g#f-&POQC q5p[P&0ھ !Jn4z{v: 5aS2q"l /[&eDˣNp7Kf‰ (oRs50i *pmc>1(B!'$ʇG5ml OvE-"dHq|Xk!  r+ė}9@n@duDbp`y}tC3ke<([o'  T'j7ĩ*; 51YlIXy^4x2F~^:&%<S_k(ZxCDm%iY0J*Bc=2m!G.%oN7_no&Hm!lQIX_V}#x6F޷atxջI&ŹI=*[anȎNؤ4^6&ւڱ%Pv:!4ZKX(πދl5[~VK u 9!P.J]8:8b\O.3 Q_6ѣݢ5%LrО^Wȓ| © b_%B:u <@b_@ZY3u'53F򒥆ݻk`@Шh[dfDѼWE,@rO-v^g- wsE?ώyjWyW`ьLB%}+C*\}ķFحLq.ز&p˹Qz?Hj1e8 p `Rxj^&*W U[\1e2g2ޏ&7צwl[,]ޛ -U:@T50flʟO6loiVJA)-' aH\V&&|)rOF.^ު&bTaz45 SrcR@")_ +k0Qԋ Pگ_R^.f5HQ Qf:kv\15Dm̛ϟqeqf+ϔ8񱡂#3 qO0_ƫf H>1~ϒަ.y6,5xEZaKnCX`^8A'ye3>oJ \F{⹉]|FW ޖpӓX y[~EEp{t64'eM{Sꠧ-sh`m" Jm7ؠ\$|X$l߫סݏ6Wr;0C(#/&()|XħhHT,{$",ߎ *h\(O'3xsٸZ`igFl P"(3BbPy7fYaR)e  ٹ^ :N %9 ץͽɛ>#9{GXmy]"Gq[,B2LJZ.W;AfWMʟũU#va..!ibBHm8ވ+32X~ 4$''UI6k'ixKN5" :%٪#W bPᓊUVBDmGLWdd4{w*gkk4*ȆOnrVq8vjG+ǃ58P)K34ۏkIۮ抽6&?cTjWh>y^H7ViZi0[ JVwVM3ha*?"/, ]%"r|~e (oNNô;uȷ6ZZ!E琑IW|­bhЯ|mL W{``Uï)nɔ;zo#= z|!y?S_WCE~+n76lDۖ ޒ" DZy |߼ĞȖF-J~`߆D?3Vec-B[1„[ngY@oZz{Y7+A^//c#cT-FK8\ NrBg vbRW6;Pdk%"AA(UB =ڹ9[OQBB2@Xo@t@v j描Z)jHTB:~7⢱T;>Tw^vK4y tʶzo@nb~B:ap\Z)ϟd쌸6Ti\|bP!AdXA[@N8v~q{ V۪h ַx#R*\`.崪Q`1(̻\t)Cvin"=¸IRɕWtZ/ҦaS#815䘠cbθ>j6{/FQCY> t'xݯjϠ6qۛtFdIBi*.Y|o!TVcHC&33kڞ8[}^#6vg ?X@5c@=u[:c;$48{N[(;t4rN}浠6+~Ye@XzJVvw$:+t:fڤyE+vu^}o;* + \.}e-Ї⋥ -T5JgTF _cT (+Wa!n " 7^+F+U;73hЋX&826Tk mX';?[2(q_LX@ηTu4U%_Uo3 oUR& 4XJ4e?e=T\$jbP$üdzMr :lʼncp+xiGPj빒,i3ma^h \"q9|~Wg C>gҨy16%{/AF<Ғ,YC$4BSr"hlۣEZ?1F=rY^r*#fYmsq!RJRrqGz'T;cη#Q*9(tj ;hLEpp΢NExsPF[_܀8$<Ϸ8'=wD_p.nݠ'liq}92'5ժ-dwx)HB UXi4-]QSy4thZFlp}3;3JL ߾|wrgtOeh[&?o3]E-UI2/b1֋ex;'tKħ̴9i<2%%9ܵ&`jQ{ !f3$`k{qR<^ɴvM$e1h8&J vlrm*ԢA2m4~B[ۍ dέ!(>ݕ os 86l+%&d+ܺ %v^2ܳҙKv dj>;C&d N}窒a{͠bOjcC|΂Xxўֺqf \e>Lsw*bNޜH/Ypٟ!b epϫ=<R<+DޙT Y ;.j4u 5P!CqN 9k/J`n(dq8Xqs :SVo~{  ޳k7i`֒d~ț1U*lG;Sy.*P\3-৅zV>q/&Cg|1Ɓ>GH,;W;b{ːpU+PN25~k5J;f_YNpIsN|dK8:C5Oj;ZO:"RΩN> #|Yx4;m2mlx:}Ń\2O N ej~ 9T|c_`{ypɛkD _Yb6ъJR+cqfzKex^fF 3>}tKTkн Ԍ.I[q=w ]Dsz*I9IGP(QJ9=E2݃TS^b1bY=gᒿG;!({'B\d7sbrx8]Ej騦csJNRci8)VKPf_8_ Kb)Kf3QsC"EFxA8e`ްR;n2,\yCLejS+aSHwdJ).)<@? ,+FQ]|P:!r kXzyc.#^&)GhsߎQK`HDF~O:q_a!Au;},=iy\rSwBu{KB{A 8)/G(H%"leV4J 78n0W/t^yݣesvc1C 2u)P`=P*Ch`\B?Y p<$$V !ƃ%)-+X,6b<(dܡy%x>:Y,Gn Xޙ>5ݛ⋲=^ЮxNқo]Be}V[߸%B/Ϥ/Miֲ;y1XNKQ*΁]|tI#MEB3ߪqu.h-7}GW2Sr }B œ21CuŊNJHzw rU|,\RMN{x"uޝ@|L)5_J+-rda)51ֈGXPn {I[sD lo[K9(Ϫ6S˲spj2ߑ\; haܰrff}ň"JO/ 7j+5..g֊xN;AlbKGes[u  BΡ)AϷu ֕UvJ/@SN\eڃk2F DD_QJCvZ,˗4{'[_-v 2xmfҿTY.Q$8lb#@k{յcű&_~>~ v=x !_O0@( "᧣ ;kð!LžqYuH䨮5.v=ǶLAvRX졀X)olfXf!kLZlMI/v ,\J|V 6_p78Sb: q+kTxJ+4>ӋOˢDjy޽&WR\7E3!CpP}5&`ju@А֕Mx.Vf&*;0޺ ?TroOB+Ajz:*g"BRBd= YZ:uϛ&rWɓK=w`lNGPJltfn gP 8npɖ> ;:W@!dj-V0G"9X?D~Ydjmr7#t&/U֍fp^L8<_Lod[1"N!v%07uV␬z?KXܧ2+1~zʨs_yrojbȷ@xFׁĨEy F`V=-rȼ+7_%';#8~49t:cF-$y,;p[εzmHTX"@#,YĎ[b6ʍ}~涠l` Ȣ2SWPaM 05p܉VlN %ϴ5 je4{lLbS9O*_L}w|J! o=,lOIpkаshaN)>B$Wp;E*zשȱ}[=]!E )@줒, b=1 Bou\N>V [ԟB tb:JV1ݦy AtWAzKPnm4TF*x"mEb"> mG'î,P* I!fV& 국yZ8>9`[?gف m*(vClRVoʣЉlQM9ŁlLvy?##hՉIb?j= dxR鏱_2u L6$ATa9;αX ;3JIj=Ź9ʟL5C$/Sdoe-Ѱ?:&B-#/HkAuQ+Wg0CK69 x&HeboR{XR7r6Q 6 ÊQVu6Ym"Nq#]_2 \Fqm`A 1^AWvDA9 /9:=|+X~d&A5~םěԀ161[{w]ihWJUDVR?A+djȋ}'`%KѸQhK&G;yb"Al#slFsۡ^ow8A l7-&\4W56t:<pFDx&Q'HCر&>g-l}Ww޶w>%k=/4'vYVFI$0)g.YnKj!"ֳThrD '.axm΃:nP/UêacW"߰dalrE9 RCҟ3b<3K'Cw *t͍I![(y<~vWeAXƋPص:GY: gT1Y0rŭH$ +\ntO[.|{لcx EL\ez`XTr]+< !q] WC0݉jW{CMUw}J'تcRǬVrg\wX'F v+0.bk5Xx1gL~Y']K ; km(3$ pg%;xpo;|(F _Kndpk6е: ̇5+@Gܧ=$, tgbJ0y[i1´ gC]2y?BZa}G֨!ˤa~YI_kޠrnW^93|9@DZø8ڛd+=O4ly{o}RFOk3pJP[~w[Mg<}KPCl!p2>3>\:z #JDZj)r)sU6EȤCS@8!)rx'" UL+/ȅ㝞ϒEzhmn4a95Ja~Q\ϓ8 0}ZABL\dM -`q˹pTXz6wvIe(T?C:'X 6|T#׶3g>'Sm y:NKCp^ͧy DNUQk+!(J\ Չ0(R~yL?UZZaGfqVx\*0 zj֑:EISnQQ!ʟ\Bq|ƆG0LO6J~)l2{iϻ#m\zIn=vy%z/W?fLb}\JW){} % ,=Ps@g W܂. :VI[l^/s lT-s,\`A㡗Nۥ3uNoc oqݬ6SBcvU\>Ov#CY ^͠|m{\SW-p6ޛa}8PCIBg-Ӱ͙ΔL2o+YHQc,#Uu\N^`б?XPz0urxX\Htt?.XaAAj^%.Ufϲid#10EΑv&Tr}jy2>e`,AwG9ߝm@][[5f?}*$dl-wH/p)S^]L-xϯ[Nϟ'&ȿ.>Rbm1FnI gqSkjZuVs@7)FAd/yCKMHOYg3VI(Ĵ tFM'GV}b®@b܂#r'A:m1q. eߤlG-wl=~bz8"Gʎ'LLJ(OK;G t!,|)T[sa [~!mXPS'~/[Una)dTKWR<6 |wbV+\ &9MqˡsDfcfOg^&GR3| .4*XڿEݘ_ɏceɉvKX*ڿBCtٖa5.=[9 *pe  17]vk 4g!%wYr"@ [$?jaࢥWW >`h9 ;*Q)X8k%ˍ EYf%G'C9x:I; N†]aA-ok1&Ya9\V &a9^yRjϯ*Nԋ0l4b T,ٍ-荙FͲ΍/ަ7FKW%(Z%qteg@A)w| 7-0?+ =oYz\aFv]Ş;聞r,OPFaRo71~s˜?M)o5>' 4/,o^y3[kEylԑb4uoF-/|Si>Mj y!#MF,!q$jy'2+dO{~RJMUyቜkzIc0ӗ*|yE%g|M0lv̎1A7O,۲vIԀR6ښٜ3[I)Jbx['N ,ܷ82 S6CڷIXM*ek 4a(M?'aYAg(_ 0-|iIm.ޕ,E>u !y# ,̫&`9D&m ecs3f <&mYro&K&]`8Up)_HW6ϐ".硷F(Pόrȱv .U&GmYStx*IK+aQ 2\;4Ld,*sREJ '}?,>owZi`oMl)HB_'l8!Z{K1.Gƀ֩⪮ߧV{pJ,d;+=m7wM`4?['yc֓2t ay *raᖱ.YMD̓NԲnTUqX>GN[6!/"-DӚr{8D (!#J* M$#?:olHКƅ;tCдF! |H ӄbRGDGQ2 O+r#->tz-RC,*br3?"KQK2 UbF!aMׂ L5ŭ+Tb)vm/ɐFDgj}A6Q:#|=5rIBgeȌ^ݪekP>T*ek[Y+7ͪÍV'H=d}$*UMvmp$~Uu;Q ٶbJ6ι%R8 =p#dIMJg⍝uww5',v9! CT/!VbC7 0k7`C@lI$NWjk%|{Og2ڑ@y(lH!M O}؎ZKhٛYiD6;|ثEӭ'hRDmkms,ع~" ^vjS0L@ ~gJ8qw8 e e$X88JOKrMӏܛ_9;P$\\&OY:TT6N X+[4ɰ1TDxă 6&񕚙(w!%F< Dz[4M|gKEȔs# JtVW1>$Sompw~e|];ޯ|ZNdl;m' (7Zۿ tx /u\YU.\{ gE2GaY6{-4R%b,UQd"مo;! WaKI^1r\؃w1zC #43ŌYqu ۻSv`պniєf3oS'V!;ptуt=5ey7 U3M;f|>-mgSqWLU n s+6^N&`Qvn 7X.%>eHF{{dMyZ,5c̺- $Oһ:7F: &rk-:(w 2);8 d"e˂pyxʧΛ e 0U45??]z@4(Lk l6)ɬQ  =!(4{anXd8v!|)HZ!~׍'`$KZANc<2 Xfc2'R\t?\?RY M2Y@,w&mYڵk{vIm$>g#O E֐W?TC/Q㚙~mPdU'QA뜧a?R<wz7@#vr@C_-6nmFk?ݗ8~b+z(ߝ[il_МESF T3; c|3. ]eC0ٮ┹7֑E"`=E=:Sdq1ِ[aG-xGOiCWpV|[C7\\}Mķ[rs?iTȀpɸ*Pφ_vbnx 'KrļAS&?$+YRDR4 {xy׵!O$Ruk %ױLti[`OQe9GkOKن )K4َK_&!Lɥ=9{d@BvY)PzOz4#tS[=?XK+>8(YJnxnHSJlĥ9 }ג/ (,&Gb"҆3pl +J3TW kBAz7FMic^CL9eX4e» 켡\LRqrBhؕ'd~"qkt%OYCւ:ip}6ȃ'SGeMXe44PzKlH&d/Z=nh yp<~* &?/ ;nZ̉tE(˼XAT l μeb8 8}69CtεV_J”f4M};gcA}m $`A#z.bB~5<7{g\]&B[z$*L*<I:.h8wIǤqV4D#sS}N-uY yk\;4\fecyN~OF8{8;$[mj.%׹MW>(mXDXR73S"%HFy#1 4O׻eɀnSMpW)NX@ :Ӫe;ŶU+%19d}^o ߆MOv]Z|mgY_ xe%F%is .M3~FiІwnC˭&[ЄN7@6ªe6j*g*&T5`!\|R.V)OkAN +տS܂!V ~ĶKDZ$ylCui-'JhPCÁ*RثfI[Lũno:GOa/x$crVSѢxo YJ,gwQծ?n\F~k6is4/ CtX Y{bzfu_ QsgQ*v0U$9bsO+4b% ᮈg5u[\l\n[zBtDyn!vA ipNTb-F.[>}qiVSKR+i I ia fP"KqTR&#Z`yَnd.?AymDWBȾM T+X%0|k{Y5 W$.AG 8~#kU](w~\9|, #jƔꅥH^f- .[XPU}1  y&.%XCŇ<$qୄ[E3grL2f-B&%LohE/5 yCO67 f=e !ޕ,DCY"P>c:2ɶ~DF a⟉@{.X/,']L(b@ Z}$9Пs*TC$ulRU*WN}T16mK%+?֪b09ezk;ŤC:)mܵQgbz*?jJNEKz$X7_F K=C] Fd-j,PbY)7Nq8jJ0-=0d__)CSW!汑5Q%mc?qk,T2xEzf^0u=Lڜ}i? JZ Oj5 ,!P`skxK iD-QD(V=mEVnOW|* NJӃ:]΍ҪIV$*d=a:]!Š%z\5hA ^`ƥ8B@w4{bWZD'dTF{=GRVR_SGZ0ںAW%(WF>Ipncf{K[*!,c'|9&؝"MP)@4Sk] U͢ l4ٻg]y[T?M$#E+W xZqap®NX:c|\U#1:nC&D3#Ȗ!X%1m}s8 &]S؊".E _>zd\j -@_z ֪h>1u׀Lq((i4gpp\2-<<8]aRK96r_f36vUT*;Wg+3ބ1ZpL/|AXOdBuk%QFq $ʲ [I>_wMq駍/ P:ޮQhL8+7aQHNğh ְX fߏԺ9PKC/drkCfs,O{(sb~:vp>tO{ֳ6hMM=w&\NC32jD]}AN'o:3*a&kӸ#k)C9:.oc1Tq`@mṶ.9o%EМ4؃ԭ&6!\ zFwhG<,:`#2c-+^&*qVkw[ Vw_v&!qcd XY?UAfR}I6Z "SŜ[9);_+!eG~]~7*L}`)7$PVuysk7 A4HX2K|d5'Wx R|Txֆaoj$y{EˮW@ZA=6AŘ,".X-ޖ׉MIC5QT4m}3ß oF J8'ցi_BxT޾ b@]—#ntWKW =n' t6GoKf>1؏^Yl|Z87^d xejY5X>^B60 ;RZK/gəCD>Ɇy B ك`xcO1L?x|ECAa zi<$9?B@umx=ӵYmq+⍶p! nعMP#U붱'\At@ @wc4{$@,mI0bcXEv`j_W*0K<>Pc|`wC4Օ](PoYh1:G[\+vgZ云$3:78!2 Yfl0Z(W8U$Zp;Kf,1 }7wZ澍Cwh3LrH1Ξcܱ&8iǪd翪<Uwv`6 GKZMy%}vX/hm_BV7E)sFDe_ E$S}{zh诇xLc7*D.\]xxct^]/nwP("1C@a=?@F7o.`3(6=@G%T !!Hw,QWWpj4k֨6ykFhBrI9 .{̭Uvy%sֶD:p`(*hq(]R:KT \M ]Cyx&= hi;sz5Bќ1Sd ne`rJ|8zWޖb`KW E57 (FT@7JG4˄.n+KDmXtIGJfΑY5Ļٞv)yh%|| &x=\(]ZAz!Fm l:` XECnš5CPؚkc8^u`UQo…٤:}FR9-r=/4GNn p]z^ ?zxw-. 4}W7H_%,4ܯAkDJx\{ѡxHF454y<E{ 5^@׷7١{l >*zz hXFk_ii# z CvmcȬJ` rQI(); U7RL ȩX'/wt4sBTA~pk^\Dd]hn5agk#BM1[\L|cn؂-}}SϓX9zٖ(A"&[9/*kZkV(L> _<|,73'9tm󤆴|Sb@DN|/ "jRŨdI[?ĦFGp>1E(S7JkqME^%\6 ~}j DŖu@]`N٩BN57)d !@{N^b|SXvXYet'3F,O8ַRGl!z9PYyy)bue4,\6v6L߀wKѿ.)Q-VQ" Y@z!2t=Ay# *fJdNAc-3+b8e1 r5JAGBKoޒGAi0'|.q ţea$HĘxC @:͇-yN]%{?h^9 MS 6-+!t=JrFi!D¾-$I@7'4\LF:4nN -HQ¢vݙ!QZE (A+FZt܋'UVc @fl80dEE|5YV r#VbZfZ6S]X_iS-.qp2T@bKOs]h>5cHUS/cBMg:g,ʪ)(d,j|@dSEEV/LAVI {c/2ARkahQb:aIq^ ˛eH9-Mq_iNWh s\"?2@;̣$lIؙ}7F&vDF|=h `ϊ7g0h8Q.S=/W!Ea@OJp$ݢп+$Cs|չ@:pHjo =zrņQQB Klx91BG'E1/t\E:Z9iyڙ؂gWWsv(`*dyYRoVBa^l 74yy!SXxj:\}KmB7e](^pǪϮt/M_FT+2T` M,{DҠ,|2 zWd4 Ɓ43ccynb0Ѭ^RcqIȗվ5tf8mpyPr "gu2*5VZ~CEiYsVQ cc,I_`B2L>?$#CWKNa!!1¬\U#GޛnʪH/_ԏ ҈+M? }62 'CU>4@Ո^^#3T ӠcZΗ,.c,Ķ̿:DZwZBVLz~'[mI`b)rU [Ǥ.n#4zFdpfdm^=\*@j䒑f!u?mcy >UVyG^lȣ 8K|X!؅p&L^|шQ9ޟ/fȼ&Dn!F 3Qwz_\U 0mb=lk2:[U1 @[g=dOgPAiKyH[AL!i{ XTQ=׉}}핣I`u83^- /s.i(rs Yql-UuvOL?&Fc\m&58V 1 :@@ST/ߏfd*'} ||㐀'̼ h+OStrW”e}p'TBĞ 0ԙ(T^U" ӗ,/\[MIņMI@ZX\]ZRn Y~+ލ~b~,#`8tK.l XDV2lR\'3i+ap~f9Ig2MFBy'u#԰yr%߾Ց_F;73>Upi5È`Wo cP6vzla3ܱ s_ڌES)?e~MWu#V"(XK累P]oFuje\ȃ*OQx/?jگftM1Ygマ ~^=_.L݇5o=Cz<,G)"N=F旇z(ޕ3Бz1,잭z#g#3$ 2y gi*KJ2_lw8j=W~JLH#JSyxRUdn(p#mc)ګ^a\ Y[x(ĸ>c>fEٺ074e9y,I䂯Ϣ}G@be& ֡0*Iw*]W_8m!h/SX5}q)TH$6v1Z$3t]!"7 " Ytxٜ'uި9͖mmOR1 _Bę,x!>fqkkJ+nq̨,3qf `urXU3(Q-ڂ-^;`箯rHx/. keO/yv!32%((9׊0$$AblKʺBz#?p\x;N[/ʫ[tmpeO yVh wd yNqz;Ҩ`1)>l=Ejc+bEԟU/ќrmyܢ9q˭՘Q^Ok|B<"yUvζjG;hcy0fW:&Q*I;x!Q4[2U)PQ׹nc\!Pq`^[88_9 dsE+دXzgD{W7Hseov[\,AGu&rz^Z[&N-GrbeGQcoj|##2,o԰:#acط(P߭:q{/XkmT͎F΋AT\I(LuG$3)MϭRjrPq{, Hsyk*Xqot)$cUSax6v[ȨH,.'՟=5Ĕi5{SWݬġкl:Q4tC&䶫yz飏L\1 OHкBcտes3dQ,.V$ꕽg`v],6%חdiڋdN T)4x!tݣg/ &_=b_g@&qfőa#h9Ia9n9?Rue|'L{ꛉ3 wKrZ^cMb)aKǂ餵@`H!a;zS` h1O=m2C(SBK6`t/S* jQc;RKf-ʧg*NI8^H X5Ժ4i<{7Z^"Nlŋeg ~V0ٞ1*E1(`Q:$mpKӪݾkͤtP ~vmPwT{s07!u<2C4-IaŹlt50uUoc0udʨg]EJ" uV;GGH\b~(00ҬQZrTemcq%^QsP8<5 JľNVLr9^UF0/Zo}T?Xlǚ!+n-UJs~crʆi&ČeO"}ee&;:rmQkB &+Y{e"C?0C+n!^60I(wEƯ-^sh&tI$z.CO"<̜F(IsN6?(7%~ۜx 6O|%ԌcBbH[̶6\jt]v!Ot(V?& %groGFo ɸVp/q,bM,%hUpVo7\պN;)u tv'MCg [cU5Y5\7n ,*$Z*aDfiNpxc,e!W*K I8C~D&DCr,BhCO}FGq*k!pqWrk5"ݵ)"DS@J3v7B䠦eDAF:N@a\HG:t07PAevR츼wo3\:*PsV{CP?s{ꜷ?!aاU}y3 uZjNAi摆i83 /"VcDlw|lE>ƁW␣t;4?&&ùPiӋ '3DLJr7{ɯ l}k{0e=xn'-7I,D6p3wӦ#A|,&:K =PN^U4w+6UHg䮕O!7XѳD(`뚱aڊ'97ĕB˖]Ryñlg6U9y @h$M mơ+k3DN%cHzk g 0*o</v&A=J`}k Tdȕyju~0D{߃֩ud(.p <=rR?.NnD ͨRb͈ж2bqRn8ZS[l@tSC@8pr^V} :M~-LKr|W<Ρ+Wu$LP3#%^ګ7Q'3uL1 )s?rL~%ʹҌZ< e߶c+sME|#V{ШcQܷnl:ͽ<2;=kKz'0dTDBkt<ܛqS W!AǛAbu+_jVb;&F| Ы&) # wH[jҮXn:bSz|nf F{FrjL t˘zЩjIZD!s `hAήy1%]9ܭ*%=F."nxȦx_܁vnyA TIZBadUJ;nWf8mYuO;G/K22 57O%2zHPCI ;|M!pa)`&+=pƸHHN^A( PRar@~A,@= 5aS9PpQGKLȑ)s㝕qgo0i?ܲqTYEf9V+b9RZ 81>.۰ܹƽ{6RmR'nH)0XՅBnye֍ݤU 3\'`:]+JK${ͨF 9NH!+le^}7+rU -p"xA 9!miEeL<6#ΧQ\K0cCĻF0lz#@UMCbꐮ'+iY(lZlAu`17\kR׏*fOM).օOQdŵOI?zQLR3ˬ+j%bZ9y'OeWg-`xe<O;u_Yf0HyTyܻBMVlLR,i\[f-"E ~ >XIr(Im[}@z*hü~˽YV<]d &px C-ɑ73CX8v ߋm5A?!6?h=TCdg^N~|8}P͵mwYtmj ~ &czgA lSwB:γ8~`)ZŜX=&ok}S/Uv `j"`|2O2_eh%‹PlތKK{ $6I$x ~]1m'~xFn8lRBFU\ @k2ѵ0@8Bw"O>//"݉NKܺxTc:Rr#{5|o5C>$aKw\;-w{>ƙC}WO l)47֘W_>G󱸪8&0Mpp*c#siZPONR |tFꗫ/M:ؽj;$cKெZ|XtVYS 0og=y5=/6ZQQETC_K?02X&z~y?2;i@"! <?l>f&/K.xd|$y,,@tIRͩ`wߦDh0<+T3w}ּuȞN޺S{=pD$"'6)Waݧwa/^D hX5a%z(-ae7uNΞ~/Tc*4.!C$Ɨ}n:`!;Fdsez# %uI(ypڊNqp%y!Q]RnQ_zwΗr3N˞nrlK$X#[]n2^>Yt(TdHǐs&/bmfaU^g1˸}R9 $&G\dJ#'f~jlvӬs}HWOw䲟F Y9kB: esP p ky^Z8bSQ (DK :vέRp(eŽ!h"ISwrɿI9W~{F8гe@2u9?iGˬY &Re @.3AU:ÁLeTܾ} Kڏv+/;0ufhn;5Rm>0tZZsƏ*U{! k)#x>?Ξ- ^j]p޼+3v:mv ٱo^B툳IVf(o1Jڣ:9KQ-O*@·`P\p!0mRrK^2с}/:CtTg!\9e;U_fEqsuuM_"6ɞCҼ"nfM:y?-wʦjf1䱰ΚE;~i.?ӛX + שg/L P${f(|@">.^߭yAhZBwGT:6 gjc`.05mR/8%V&G'9uo>ÖC.,!ar1T]lh)J#BUzm?190@a\=oxNgQX/l(q}?'|H[_mL&8jwnPV壩oɴȾ3g&@|lQMz_AsEo}FGg"L}DNKmɏ .Sp6(G!.7 +0SM rM']bṋz FD Lyg74pKǐvxm}z(,c:iUYp kF4HV!,b04JO8-t,a0ێu t)LP& ]? Vڛn\0HgF}:W$hTEL!UJ.h|ٮFМ/^cq N+Hh]kϦhtkua>+_-4,Dy @r)BxJG=u,dNm5Ȱ^#.Ι)5_lDODʢ,3hUĖ(IGޤ]`fڼ2`Qo *PF-aԩ J<ThA .e )E7&ǘŏ^[H]qG*}TХA/YL3K;< >F4^cZj(r6Ӄ司x0H;ׅs+Al}+SA),0ƿDlOHz5S!5_` p{) H9T+>n& +jD hHz^Z㋧3pǸB tR՞.Z`i5{zھPÈ|ld\0P"wL/>X!p:-$IWż㝓O)kvHǮ9Ę]=Z 9"@-ABMgtE3VI3L2ma`Bxf;jNvK /տSEӁg:5J@C,٫]77I"ՔE3iIq,Ec4)Z\B~z(UӥOT h©S6nSg}'Q+o_. 9eV--*owGq[Xm*$l ZՔoܦ\"o%]$HVUR[I*83@m>g/٭=}S~G/'B`\h"``Ȏ;xI!zߪ`3Ǒ wApsig㬌t[w-S5-q/ZYcC+gdW 4I2y`Lc )J%8縆R4Ry8aY' ӾX6[Qu^Һ ofH :NRds+ؚv)o'6uHQ;ԷF63}da|@E clH:;yMR39mǁ/ḥ ) oX"ؗ=8}oU ʈƆ`"{iA;4o=4s("xkEm); .v(@6+jVk";,cLЈbDLL/AkS(W+O2(T+<.>.t6 &^k"0o`3ۓɳ5Ad~\wHg a0Ow/DnBU->-D9uM)9 *gEEBֹT5/WE+Ymmd'6t, pQ#W#4 ӻ} (++eVܼXl- QEٮ)W$~BwBBё:̿kokܸ>ҋ(IL, Hr4bereG]to̅W̼ 8+r[\}+ΖKGO9]0GHvo"y0܅vX,\q͢l+;E%bʟ;1</-ҝ,E1-5_̀D "AM*\RfUKG? <~ФK{ yϷTJÚG@- ISX`_ 1ѩhp}y!KZZMoXq%F-8n֢oJXkXk'h\zdsWť{i% +VL +sATGO8.%iIi%U`\uMD(P7+*Ƃp)e RYD;qRK! S0:i! "\uSuF9ԍg{2rmlM6USzo:UJO?3&4PP +ٞ9nae9I;~$O,k\ІAx>#מ#dGk9ק&tT1aJF4 \']7 6CꝅBEíЏ'}.6 ~3-c^qX7k~_?85 G[Ammy&B1fqfƊ0N2'3ЍjUtUTPu5`֬K*GJVOT }|`|BܺK8yrY^6B}V{~"fc]^EjJfE0j=Hb#>Q)"Ibtp 4G hKE0ʱlC:JEP>`Ϝ=R.^"_Ε[=.BLrād5я s9jARɿ3"XRC!݇O%l4,2T%9\f+&&uVyQF2pV pagB$G66rL撝hsZ\,4aV/m"+^j.245tLuODHAR]nڡ5A[XX]Nn饹VbWTx z#Zjs홛ex>;0Mؘ>X6'd81ӐhQ?jE- tI?J=1BbzrT>ެBeXRa1-;j.'2Ui%Hyb<"Z5:aDis5a k%'-۝-ng73Y/Ҏjl {#ʭ!!V"}[LE-0R>╱Y1B:Q'I!|Ř"7ň@ꢥ߯#~ XP1v[WȊSv&K ^sOd6K}Ԉ)gJ^G#q yfW%1t֦:"ch6/BNnMye8Z6+(W2v@FHĽX?A'U[޿[#tG͑h' GǍJiED*?D Cf$X Cvxy"81\_%οW8l_lMj6ARnc[b!x]TK5u#(D&8MԚtHy=_q?Q_\)nE)G]m:s-Xw&$xE,,6Ƒ t6H@9>ZU\uT@#.B5$Ѝ  iVe̴#5蜠O;EfV߷zű~FeT(( >;Ѐ)9~C뷔#@ &TvCYw]C]IUv{̗(`1#Ip uu_vWG[z%3~o3J>?Lv4̫޻\VV)͈uzgە.W8Hz3MKV4h7i/:՝dYðTK'Vn=Tz<=6* $//RwNzPNpZTOXmg'rDZB%+$ >%BoV.'I"&7$[v֡NPbvvt05 ɅxHh:iq5,rofBttRْw%vSzSi7Qڇ\EU@hk҆10{?[P ҙcAE gn񾆮pIT$-O&qzGB.VpOզ 7_8yͷyx*#ay[ :scQN*($tc|}ٳڭL a,.Tɡ~*2sJ0B՝^(\bz(yFeAK_BpvCPo 5c&a\UqLl! EDй(Y0U4k]MGGG\.Gve$N/ uBL5D!?A4 ~:p.#g vVuc ܱѩYBZSDCC'd'".'="mqf̅'gi /h|T%%"rFT;j (2ȼB:b:<xմ+&bUzXߘNZk jNO%bR~O/Q9)כY}޿?5/]@Tɀ^yÚJ(Cv1'.V-)ut Od0dyb!M7s6B5z4{*eϔ>hl̼ExlĔpI\5 .A!)Xڬ}lPLI4댓-Yum@r*R̄h^rv`{S(˯\p!~==ug1ʎCA^ > lKVA]纮:PvB61(!>vu;%\1HSvݠ fC嬛{v3fT+5V{ Ѥ1ҀQQQs | JCdi\<>N8I6L.~ ߷Wfp3^%=qSl5(i^ijt)l\,;v`DiP0Mcn "Yw ~15BJjֹj  @*% *m],~ g U(14 C7/#)9C^=$&]mTcԑ%/XZ6&8Yţ/vа|Ghs1uɱog#JUI3p&Jr{xO~ao6TPcPy6'-Äu_tUwI/Xmj+tG>W&ȩ[b?ŝx +XuL,@$L5kRPGW <_쀞Nq'Df e,ɊtZ{o*3-Ǽ5N3_] /0ju>As-2?GJ  a1—),uNqpB,ZJe5qАuc]H}\aGWvFX{ gLB0  *ovrhOaVgjH'L. 2[?t/Nbq2_rҭS/}`|CuCU̦ ?F<%5$ W Q!xLQҽSXu$uM΅z կB? 'ZcJG:i>S][̑ O[ ?㗳 Gָ-_b&:VE/I߿LqIyfbc7/Hn­۶S꧖DZ @r2ssXLs: uƳIp55Jj=+懘gX}#^-g0F'5Yjg?g:M*mT#V3U;ۀy@ V>"Yyd )hw y: !_8R># 'eXc*8If_D smZ`";J4a10=pdQՅ.6V5D9SƍTx .#+&ps^y׸ʅ[ O N2 s]7)E"CUo][?Gж#s > Ɍwx)_ЄZW8:E Ep^UlY׿ؘ.LMstIIJEvŴN^Eu1!߷57P#!&?SOnV%97!LS9̳fq[,oŨ6ޡc2N .yW42>sZdP N!'W?t fyKG0CxAl$mpQCdbR<,׿P;_D9@0I.D bGPr,u2+㉾0flt.- eDbXHV=cfڳO u)޵Q.C+qE~ƴ"M_ܽK.6)Rڿ$?UHf7LS l٣1Y*%|[Uh]9O2&!u?0m_)I"כ9wB7eL&;SV6Wtn$"7<[Zq_1zx uCܚe{}wɐbԺvu6p rpx+DA> F(a {AG mVPza<{Fb;EC]ۥ#B_pS6VN)Nl1gxxh !]Ҝ=,N@D )NE`>vΠn$<ZU)ӑ:UUj_Ɇ/.5qdȇ4(XaZKAVk8ݕt \I{AG< 7/4Rۓo~:aW>x_)bT_1 H5pn6*p0߀{iJR~~HޯzS< URXd[L/3Zhݵ_Ea[IrzнDL'C[ D@njKr!Q`z/˔;9.4+O*_Fb|9)eɍ쌿Okq;*@"VޢS9J@ {(qXxô'lԔI\rQ#$ \cvGmq|/'Fkyh Ѫ]n), P59|OΙ /2Ʋ/GQpNmbc1NB[.vG@d/h4[3GEmhnS}u9tRQյ`j^*7g{Ob}~rb`v^:&&v}6(l/OTǵer29,?tU#5~~ DbJ'\ M0N~PpٺǪ|U nuS;KeHG,J۳E[a5^)>KG!bdpj:ܸ T_≅ɰ/.ڬT>TO Wܥ軽nM:㕜<*v͉,cw2{nGbhz܏t2^g NTGXow(*Bc>qbE6 AϸMpQڇz.ZƸ5䔄z&g 3U|$ʳs*xz$V-v2Ȗ]2{|FJ`͆ NJūޒN8 #Q^&DD f)ִsʈ1RXؘ 1Ež{Ic.>˜E\o?^;LvnfLM w;$<ܒC#)p8矆ۖbԵm31@ylV!?v R34VcQykt"k02Qȶϑ!@Ba:s5RLO!.(JH!iŻU\wFpH;Gihe!+9r%_<{}Fo.;3jtL{O̤+ć{S \jYL lP!Wu)sR$;/GҎÄ<^:bBF)9+TX>QfAEg)56ֵ9.(/+O@ke:ʾ)NtuALTIL?,*i*7B伳ZhZ(Ry';-?>\ck8fKԈ?Jʾz6r/U$ 1\\jqʡLfj#k)誸!I.:B4}+E@Gw,fZ /IDDQoyeU% /5~Bطu|&σ{E(T6<ߐ^r ^i7\僘ғaW,\MD?. 7եX4{:.X5dk0tոMqfgȱƟ5ÒeH%cLquz/)mdf㈛/.Sפٓn:Yڮ}jgs'"c^v n|-9*#e÷jx]}!z% w@R/ 5'E춤/i Y6*z$&:T\# ˞%" ,%OWtQ3 П HNƒKŊuч-FE6ylR J Un}r^KgD^V3~V̼ȧ Qg bXHچvqAdE~6ŏ5';08!*X_vX(HtO f0vN: 70$|=XTAUwFЯ; ǽ>.Lue\?Kd-=h5!ڱ:=)RO\31QR$(![ 4Qy nPM*gO) .9jI;:߉A SN=IjhO22 @ 3 DүC8tg>vc8k&`W嫢ב4Wɉ($#>(*|OaIF3;O5ؼϢo4J v/?lcm|~f5 m'_Z3!5f~{d}RFEF2{YOM{h Af9>bS%Or6!p5.fH9Nr¶3m.SpU+NyH0јtFN@1=عY'߇gz Dmmz@n)Lwc鋗OA>u(ٓ9 a22ҫ^HGyb>M<>y hY`Qu`D?䭊rRQc)&X@zT &cpIeni\}].B6HнT,iM|d[_w'i<Ј )|''OML8I'pcEP#M=izaX_/j +` e_Rf`h0;#>~KVs#sXVoth$(-5cD`zLG@ Q+jQ{u=}!Z&^+Kkr"[~ 8&:(E^a$S%zwn5Z3Q1\l奋 4R\B=4ՠ:\z0 z{A$Af,ZZ]IJpFzkH0x &?_!iw&'5Oj$Tf+›xT7F P8yu &@HÑ? ZjWZ R>y3x+*$ U/xFfpE"|_glDZgXlzU8絞T`I| YA_n /)Y'L5frB7aCHIF"Y9%fUr l'rHKvw}"zqĀ{BlɹPp ``RP{WVJ0[D0f:+t: <}A/C\Y-앱݉Ծ,&6Bszً/kرdZoY7 k~ikC'${ǘ~"H{aE'l!_2,#>_W~/Jl PiKƝ6*nA3嬸 bԧ1¢ÓfjNDɤ}[h8k"{9C0$_mv#P1m+qre7Ĺiwg]{QCYCD3Y9@=5zf]"n*:NJmmSA8y!On/+\XIh*:0NJ{7D' Q"  |N'ZXFvmNO8"둛u*Iq[)3J\0 ȶ3-Czj_Ĥ"uV2CtI(4 IaaEpfhwflmxQ9j~hSU :#<~cT4 A0ddakWd] gCZ`b yo%a3jR+!UF@sY_&- *{ Sypno-\MoCb[700GeNmD 5sjG׫Xue31 Am=C7:awV9PP$x9x30Q^-9~J Yz@(6$*y'DOf 2DxFM fwpȆanp85C_UH67с+|;"e8uĆvb[ dW@Nr⟔}Q5VTZD _?=E=ߪcօڋj BPA? |idqU]WB[gT!\-ZBkpr &q2v/ps {\#{1k!'Hu:Gc_֖+܈gx2rj"::+wD'L cVp}mUB87[Uժ&|ׯ1 %tW>^D܄L XXrE{u]_I k/#FƑǯv*Pl_k< G𬶇C3T)'ʫ2銡e5IؑOOx]P ]_NhA;&WXbosevBZ|S. :"R}@FAS,-0' 68n 1;a%v~\H;ϴvx&{\PGo#ϻ4'Lokg Wj bկ@QBODCrɤj#/BJ72XNPs$ײ&iAko<ߟT_3m=Kujl#J4n_\[x;"Xd3OQs\QwvzŊkCqtea Ip5Èm*5 a4˱`"|O~K^)sv[@$aXBuRz:\qtK:aqp7d11@8vix̳ml-?ԗh\cs35ZŬ&fcp h;A76bi)K~d}̸2\WZjT־xi7I$} EtE?:i)3tJIzAFMU7udQfEc B{ΦJwѫj 'k[YP!X~Qج(  eii1P(w -q*-ix*\?S:v7,\_eLSW:NPX$0\X;x;?ȿ9(榦{kNIZM @ Rog ANpH9u펾(2FżKjETGcXj@C`, S\ak>L!9|[gol0k̼A7MTc]co K&HT|jq^5 b;֯lZ >^6܄7#{B z%LotUS~6K>}$VA"[+,F&e:kO1Z݁)3mϥ_/ɑ~'&4.8c?WsUP><ǵ8M!?NAxIKjUi5?q*0C+sTS$PD^#k1+TV]pbhqRZ NV53])v#4Š}nV6ϿYI%9;)lمaXH߈EaX2EۦaB(aL~L7C9 P 0ߙ,={ \n{[X:PI3sӗ PՓ/ҵ`ODv+k "`j<-䮔d$hC3&[eN.v 1F!_K e|,ɍj;߯f>Kd-i9G'H0Gx8#ZK:2y* /ـ(vʇ}fgN{qї7PŪ#Cu6D[4ާм*WnkeIhº}xD9~d3*ᨤ2N /zoflq+hMRWA]obČyJ zءDl'v2_B)gCUE*+ـChs| |m"7MJiah=dL{Bpn7G$%Tg?ò'ybZ2a&lML_iK5mؑ/)m z "H #;%q3cKjf2D3Bzl(bw=݌#dk `-KÿvoL'tZMO ysNô"2~5:$"5lEHaP)4RW e%8 Vޟ ^ɵ4+ՏNR07 so.!*sǧ"?/EU}Xn! SWZ$F"0%ջ(:'(TK-D஺,߲)Fn\E~HKDH|Z7 rC6mc'&h*n/ Y'9=k1lJOOD]7 3 N?)å"BM hSh9@{7`TPs4Ȫ- ;9SfB͓0ƞWXf ~^KƀUko7-ѐ~FfxqѨwZ"/#uae(G iLQjzy*i$EK$_d$HDNLIyznEw:OAAqXR3 $}g{8szg`;AvS/PPy0kެ-:O^)ed]AeZ~sT cG0qmc:s.?6,p8^ hPˠQY@=EaM˪ïSlxkz \~nU~RJ&޳[/y+-"/U<7.杩Ų#Cڈ&϶8NbWs,RWct%RlIL8zfP~Bܰ6q'K-+ UEP]9 Z$L_0 BRp`X AJo7/|P^.=ԋ4a/)[> &l91SĖkEhx:y*2PlOO[EVw2@R:dq~Un8WYխ6إYNy7@3ӏH,tI-[\63,n2q>CR]9XJt @\ؙ| `2K(כ=ψ􂖧@0sl/{Lyh Э`\æ9C42WN&Y6A7/R̻ BGFh'|kJ lJ8 >67۾[>h@lpϖ Pbaps"EEHQ%yva,xֲFHyJ_'ֺ55RAHwuAP:*YJ{Yq-{L`5hs\.ڬIZq\֌auCMNjtU >нQQ-"[`G/zPP Ϯ_?W_^}e7tvnsQ#Jr̨W{}I9Mcл0ь;nGО S7-1YRC~[)վUA".a uMYؾDK/V~YT{ҜЕv, V~ \$ mp"S[\30[~%p_PϦ3@%S<=w䩍aH]>wJL}$Iyv'odVxm砈oH㇐QrIªOZ|( ;p/l-5Ĉ ;(3e)e_"ϜҙUvNs5q1sÕ] {ͤpZViT1m ԂMdi7k=-@wf)tʿ9i >L;ǑWOrR4 ׆JL},Y <{'xrRV?!_OZ@Z AEaCVI.\kOn'-ϗ1ڛ86n5}3Td >d j\Z9'F,=?w6` Ŵ,ۼmVo}J$HhjjMd=vsܾ ^`  ]AaIX^/jSΣOxOcWHi% Iwa|$#йeE9y9z*GN& ?g͍BH /暁>`VXXe~=&DŽ1HAsa ɡޖ|eXM=9T dJ~֕lVcHʽ.`?K``vQë\k0 H oPSLy+ Za<@K2(_VDR h5R6yg%̙}w <73}$Qc6LO[]E ÂI1ep!Z4(uN.AV>3[< 74)iЮ[!#t-j+&!驺YTeh\`T5!fCׁܢ'),1"huݐÌv l%No!_V;C L>NL17CozS ̎v~ڈMD>෦yUlmal삳,C*S3!ŊV&?YA>AJSZCU9r?Qw'-7s4KުfnlI"::i/ ì 9C"D˻s?5MܵMh0Sל?*xK x/-mo׵[*,2hfKa}nl5 3q ck7A}."h7.cfK?u"E%,g+49#RǕ/ jIyle:4NO,f&O p D&er{;6S| 2\#y0Rh)4K¡[ƽ:?kz;0 >fJt%n1pD]]0 nK6͠h84O#?-0I(,C?+Hy },[ ?_g,E 9ΛZ@"Q U]?bFSUIfY6؄0n"{Z0k~0 |طN=^Im+xKX"0͕yuO;"[%;b ̏vDJ$&'*nΞu,'. آ;fóJ#r&2)/{[N& Iv_8ݼԥ.FȑBnmB 15$Lu=j{vǞi9ZXA"5Sdi]2R+627֗8-PT|g+N)X>o,N:7fbD0Iu68qxεq?"ޟ%,Lx c ʖ*]ā}3C j.WmpzuvM~̃wW0q\6WVӝf\~#'ˏ9WOHf^k6jWIVp"fdDg4FŁ۠fDs*1kTvè˧ySj5i}@@)2 :W[S [Rlinz+A Rֵw2#{Z j0$Q*׀ҡX3ֺpwY!̠>kϧ eA5"8xG<W7s_Ϯr\jqP (ɒDF-r LQߎ݅X؂O"0Oy~$ cvQNK<;T-VO.NX QS@4̰(ѝ×UѰOK'_t"|n3te8P&3*he?E iA w|(efT; ^乸YnWM@9d'|*^Tܓ{SI4BbiW6 9?@A_lPnk f(gf'Ԩ;Ah˭Z7ZrJ-E@/n=#9{Al88sksyd #fΪ"3[2E"_Zo}^A? "YT@Fsʥ m6M5ɏ.сȌu*a$xƅv-4dzc9R:l@3B=F8jS0\Aa@мE1?ҿg#zxm_iON." +5Mo1~.*M3Z=1g5;CnaFTAY:z[lB3qDX(bsJp_4ߤ^.t?N^F^R q9;ALG_#>` -|4_شdAb|/L?TfUsrQ]a,F/s\NHxE73-,間K2/nɜx:tkfڦbg Cp2⹱\Z?kmOщj@Z~@[J=,<,2P3_ET"/nNp@HS 5qj f"Ee5WAWc|ry?[ˢyfns'g0]YqQY OA\,Ld/6 "~he[B3 k'˵w5})fZvG0\+ӆ @Hp8 < ӣ𼊀a4v.6(Lv SbPpm\*RnÌ X90S[®XO?j3T$5>G3HmZ#,s7~s%ce|`kv>:n$:['FN'v2_2bǵ3ɕ><KjG?qL˜ S?DnOFrڷʕ}ag5Jz J4<'+o$I5K jLa3]A=_^DcP+Y-?tlN*Q .-Hp8 ;<Q=2.4*#t2 !?012XdnnCXH~thWV>+Rip6?V!nwJlzKHNlcG5v>喡ļhH3s"ͫBcI-IIn&x;}- YkwbY} a[]Y*#)BMyf˻eooPŌ ٻmf2aVYR,<ƝqFyW~X[ 3 (&'5*6y+1R|aeC"NUHؘW5*TC7^`W+ZI^n~I~qAAo8Ǟ:=Sy _vߕv9 *ȇNZtH )f`ߋ eʙtqSOBLݻ;% ~Nȡko"RfHY45$XfbGU& a_PBbLEb21m3$T-SFl1<cv)d0VCpZh*+#Y,`+<XoKnmYɿ`\{l cT6  LH5?ҽ('CJ!a~NTQ# 1ID(8\F#@_-Cky Jʜ ؃$ZV "͖좮\c|`ZA@m#j.2-\?҅Xu?0;ӆ[gTٍ3q :_w~9?S8n{*OOWccWZ uQ)F503VGhv(a󰐹I5RfzVaK!Gϐv,+)=14:| >,C="ן X"Ei~!wO&'OyH%m8)ȇgQq ƟSesmT=.|TI &Fw4`C(!VLbvFMN)J&k9+dJK•ʧ㼤j@ b#X9\1ۊYuF4'=HT 4a@n0oӪ_zGqĨL|=d1 ɲDQ˫J:`@KaYÚ=S.ۗZ؇j28ܱ h @*"o˵JH1JxFN@9* f[ɏrezlx;zj~m*/N4y;œ'GAhouyi%s@b̤448))#b&zD>ՊZ= Dʎ3 k^Ė:h' R=[BMY WZqOD~观p1zM0Տ8Zۚj섫8.<+)Lu)߇ %^3(dm,rz!Kw:ݐ*~5=`thn8tPR-AY{{h\L3=1l*ڳ5!cY(ߞ!C-Ebzϫ/)1N7XD\{-*+ NsMXz17q*\ApF&ahLG9Q8'njP_ TE>Ot5LB-OOS51_5=~-*xF_}t:5>[e5C=O?*u]WRh7$qI_"V8"9~djx6f,ߡG1A6Z8aDi) +"F Hlh=L=GN0.e4^GέI]b+L&zd7nq;pZfpSlޝD]đ42Z(HBdx¦!ӖiD_i+zr }[) h$"y\yRjj䃐+Ib"|n?DdtPkÙHToB|퐼 ..@ HC,(y? rATaN ($ZT4Ҷ~ƵEqB}` ! YB-!M@٩ 2:0 -ƸK5$Hr3h +"A!mCS'L{~*~vk,s1GL6UoVsBo?D*/ +A%ujQ{t^.ZXS$b.翞uSh9C] 7rMI#!oHZL25=-:TN7j@p6%P*2t (ECn]),FF-wKlVֈg?%H*;XSd 6£pkBf$Z׵ GMl$vm}N)ދfUg{hJyʌ1  ˧];Q1 $"y h2Z,n,kn7Jg'k=cmm$Pߨ㘬l6Sw%15]ȟԴ#'ŲiP!_ bn=eu91R>pһk_|? >(Á[bGj>OJoY1@W?[TTɧs2kfXT%#ͪs3A^9T=jfhnvS!JbBSTwcK`UWΛ@_Ψ~)XRw Bh30I곧L]P_.UqbTtTe0g-YzݕؤSOF縚ҵ1 \Y|$'6?8.=Ðv %zF&y1eb&dAbiF'Z^$85r:hkMvrf07WFr_p+-<f0^u"GRBNio6b(!`!462ԏO[+4(_Mj514*)2wdnHgv8Tj/*42Z܏ʮhp@P6JkbgɤF-H5};gd3t~5Q_,QԲ= 8~,FːM$*uz w?9Ż]{lӳ42|%`D^R~R#ݮD'\b-/q2d=s4ژZ"ïﵤ`"%9y'L1 {=I(MW$\*>痸 -l2\d%{`9i-(W2YJmm~V\fAl+nur NbRs鵫vIyItubpo>Mwt4;}BqI:BSjKpz@gD)%Uz[:<a%ȹw:d,%S2rzj7Y$/iU5"0wH=^M1q¡lGu,[[ ջ5eJaB.ěUf,NMPmD-m /buK_)Z am!1ǀf$oif$I< %CT@ tsJq~hR5Ufi0pRD?DL5]^jF]7,VaFhç"^$B$%sxKMkBrTUkMIPW7`xk1@8n8iQ4b0thsITG.)#vS,;Qdl\R}a23qf~P4G9 /y %t( w$~`Abw~l]̀Mg 춿߻F|_Q6uv%Zd1Z5P}  x'?QK L&y*j/ka Ϩ0вk-tTw "j^i7h#V:lO#qkJS>-S1ُO!I/j=Fksώ^bӽ׺^6f!j@Z0˃§ʺgݾ8kf;t5Q eħdGـ uOo2ǝ,a7Oϛ rb -DhU~vvgm Ć+vJI}&Q|o2mv#t5Q9&IF |%B!t`w v*F8J8_0VzgP"NeqR"mȴ`~@agQ4eťm%&&V׿sMIYJv@O7ujU xjN;&WP :)7<O@]q&ӀKWd+͟]/KNʊM3xr7<ރCZ uN\?q؄4@ܨe2GN7q,EIz]Vd|:.w1D)xʁyo.v+G:+؁})B]nE"x*\vbi$r6Z8fF7<_NkEۗ:[Q=hE،< ϼq柞IuovΧ:RfAiM4j1-=ei1.>PjZq}t[1KӔo?## bG5įWv ]-Ef lѯ;vKͭ`4$̟]όRo?θKO'9WrԺWA؁ܮŊq/ӣ"^QQQ;Ѹ95BlW {/EvgD۱ُ #fF'O/hft- wn* CT /Thړs@B:tf[HR'Z[=ࡤ4G\"Ϫ9DВm\'40 x&q%mfݮzq9RvMzTˬ(rT{jWc)FU&⥪ppE}Vka& 5`O+u*F*n`Ɇ G|EH NNd t}\Oh9u0rߕ'Y'\](~7/Ksp5<6v2jsX#V7 Q5i)Ǚ.☼WLhzҾ0g%_[acu* uLB$QmG 4<[tJt`rsXN01Vi[/ĉ΁J@r&Aҗ63pi|3 @tu=ْ'@@߻> Eʂf̉h1{Γh}3I.snvlu`]^fPyztq=ׂ$EH,O2|f8># ʚM2 LJBmt'kb+ϓ N{"»HE>ڥ:Je=̺߮L XT9R%oB0~"qFߏaJ=Eo,;9):DŽrԀ>Q.#O*o! L{Ewմ5S-rkw䒐krDIle@ID>]rv+6g/%> UB`Gu)dH5zv^vUz m+P.ۂ|*Hi:_t Lw!+Ut@h0#NLtz g# zRxH-P:0ߛ!6&Pu^nq xӼN(}* ?X̠R2#Щ*Tc_TdH*OqaD<٤و`wuZH3Ֆ,Lؑ`PzaG!PE:t7_WM+H0-`c?p/>H>[@0UQ>}~* o ylF%=bv󄶼ԫp!Ǯlꏮ#;j7l} Ϭ%ڃR3F'*؃&= aTDq({ v6:DWǝ PIYɠlOڸ{xĒ ' aHbyrrvfz>:meA1V F+H<1)+0yQq:(efWB_k<+J1F :#s<dƴXKpp0!#tlI:ݐBS>F,Z'{ޯ1Qg/o*;Q.0]\u9%Sj}iR5 YsU,S`0Jl1elS)z3"')KKuAi}u0Y!Ɏkbn8Ō3\wVڕX 4VZj뎁`2p2}M7wގl1,CC *@ |MDdK-ΝN&QFr[$Ƞ oUR'>eo+[:= ٬}eB;' %30uFaRMw"N-]O*b.߲7Fr:9@u:^J }N!7⸸OPI)iAgalCan)%:ײdk jcm%\̞̑v"|i"M^chon4L+@~*#e{Ftj*$rl7r*ybgOk\DR}y|oIs1VDk8ɕȇcJtDL{ <+pqpN_"\*dCd'r|>!v0XC6MUJߺO_K!mCĂwU]B:S  P +ſ jE6yTP -.PX5E r7ΐ.m#U̗Fa">H{;_T]h"XOB׺Ն/kyFlu%tf!BzIw4"P^ׇo="19`IwX0])BȚgxBhlSk7I;d[AvGx'ţW쎎3"Y Ƚ!i8ć_*6Nx"B>T# wх@5\z^l=i>qTn^* ('S8e\豨aH,iQK} R#vMh(Ğ*3#DYwEs? Tj w߆4$/YyO-yJѕ6fV:c.;2sjl"4|i->yk#L:n=ڗz )P|B%2h_&{AWΤ =7MCC8XoޣQFk'c!M[}kv:/+:}eU s>B}m7CIGs Bf6 MѪwp)dRZkkw6HΪbH[alzAE,]8KYAYyO#”w|b+. Α-O R"ţ75 \#hrRf\amYJ)-ӂzNkQiM6TCل q{ E@9}WE*lY$w5ye^gJr)Qfּ⿨?egCѣp[B sX5%C6B;;4n>bDXަ4_3K1[kTkM |5ls&y[C3T[B4`eh6u=MR)x:#y]"7MvLi/e;'X#߾{>~xۙxEM?}+0"=T9Jvnac R]g>j,4 TxU JC1&4qAޏM楉!^g;弮)'1EhXIuWϥնn,8>ˆa 7h)x*hE BS; d V>T r"m{KD ~6p)^ˍϭ@19ɲ[~e\;Y=*4B/ՒIvS„_.c{ MB:@U86èKUYKP aXKi Pډ,qJҎ Y0WqW|N ~y">'' W6N^:{VrP7[F'ꃼE+Q̔Æ`?> ҡ'>kaQ*&0zΒӡd® S/k?5Œ; +!>Jf!4W*!3Ij&d /$zw;.И9qVa>D@gE%.rs$}q4 2VLMcK(}_z|F˙NAS~&;^4!"n7D{# ™yX9*kIYs / wn3ܷ:KEOCyߚ,w+]虌Qvoq@)gO,:b ;a$f]K-S+zO=Pgt*pN0%TDZyg?ϒm&u99n?eN㫎6K^긕1$ a=mƁ}EK}f( f}R)ƣ6n"lb+/Oo*Fg1o-dq~_hv{C0Jt+%^aK2fc1rIieܤӕ!n375z nE ={wYVFz; !*1:NTk?/?]\{Xl@{o *R dg/ĝ|)DxIw[XiZv&IUw$k:֤lKMWT4AYI' ɬn8%?Hz.k|2d\˨hWN~pK`_crqgq&zC4Y<4suw5Ϊbʈy2)q=@# vOוƞSE/қg|df13PۂKhs'{[% <Ҍ$Zn`_Wa9HQx.~fW?NJkpI0Q +z6'iɵK.ۖt.Ah]I5wh<4yHKd_oRw6[`tnN_qhF +,dm,́!ǓȐp}ůCQJ ^t+ ֍tH ֋7RBy΃(Gz0X":#WƔ{0`XܟvúA)>یHE6=p$pnQk2%vEtc"_hZx1z$ojl!9oOh:ȏ;1 ?iWqt6ezW .[EN:ӰUO<fL -X';왖p74qrRږVڝ00C n1s.GkIP(m L( |)4A}?KCm(05^0z:IG-`]6NHt*wUZͮBޘDd C8H|l3'ʞcTف4{HyƁǸRd ,6e`i\ڀ{.' FeJ䨔vnEC.PbعsI֬YЙVń%mN2"lhI1:z/bW3tb矐Xz.W^4(q)~$]iLgۄ;0i6` d0h9 hL3×8 R]c^yt@VT╦?,F"aUY!8X$iPֻِ'-SZ(p&T[W1*\x1ꎾ0ɵ;v7|dmժ`_é &Ö3CZ]ͅ7`ih-*/q9qАH;!hVڣoukOXhvW7XR ^P!ČCl^t]Zr@0w[f0l\t~};ju_%v7/' U4LX 4fb2ΐX6&g9 mx@E,>>X h~>M?A7P_ 3N3ߐhs c٢3%B3\ C؁p^yޅk3YNmCK︒FTϏ5OK'|x 95'7u|ʶ_ZYg2ރnaZU\&~JA\HD :1^x$)څ3qxY hUU,8ɂϬW%"%?l:~3ŋ/ZΙVLqrP~bs*.dc۵5C <xUk{g,=莙ej9hcVܢK_(OCE^Aғ]agĖa n:܈> t.Il'ax gV ӂ`WD;f lMgf7IUӄVkF*+7WEq4ށIq^*|3M2Ɠ$M`kA v@N_ ޤd.tqX&ِn<;>Ar~ײ; Cx]Tkږ9wӌ-w[2Ze ҄=]p&"V[RN2 Q#jm>fJ$(V_-^Yv}7r`@=#Eq7/-|:*lBMF*rkZaKSzk=_& Fo̽k\׈OnÐs]I$0(p E")\N%=9 %Iy9sb%Q"vpD;STs?[-#g*{ 青qOvĊZEط*NMzQ&`-}K⩪/ -Ridw AԞ{%NT75u`q9Q_a8EJ#e4PW@0Ӈ8+UP>N{}PpNT8<*t=fƇ t5닼#忶T~zM6TK OD'7R'6o+K;–,O]n0B;1B^0SƧ\VI5/#' )-(_7N4LbJVf]%ƂʾTF[C޲6٬e _6r+,w;@5X꣉<J<}c;e.4_ }+ VVM61\4)5澴,I-lx:\,NJЛ88T"!Vc<4+&4>oUp',_1rݕ7?uXFO* GQO|j\D*(xK(}"ޮd݊]=Kv藟+ޫRv  x0CQ Lvr6O߆?NGPz.?1]`;mrsā7(wgK*Q M-- 62[ ,^.hͭ:X 5~E6DŽ*U/M#2*7Gk)H%]%Cm5C"iO(3RzZd܊,rѸ(|ג([[g]4JS ¸ E<5Kb-]^| `s&,sT%*"$CʪO Mwozh'FM捝^ґcf?uk#"qYX1V9_g7Uj{{8px=qk:>46IWG8BrT܁j /7>/h A!Xvm# EI, LZ٘71#jC13@'֍? 6,NCA%W%AU6'U־tΉ'&l4@ݸ=B02]LZ}N6C`w-4[fE؂.RY!N~̞RԇLD4vLrvuv²1@!/勐7CXC6U,h}+uWdUHF '#{S,(ڭII̽ahvM!؀x1d+eXmCB)wڴsdσ$:Kh#)P;\1T?TF#^vEWI u y85 L?ȹ(b$5qyQ<cO$̐l[$qc$}aTr[0U]QrѨ_† lD:)b{ݞAY(trK&Q`::MгƪL]W{ylҫΞчVzH\MܙxZ,2a<2 ڮ'{'`}UcO} rgXfѫa%Wঢ y֌.P`u{q턖:B5ѪD̔[Xr/$F;A;uwo{K;4@!Cy}k7x?/%2K b{ ?,w5{頷N$S}=ݯ׸^s D$Eco(o'f‘e9C&Om.fI# 0 bY.y1&1$~^. f/Yr'(ɖ!)0ZD 2,Arc'@aSwtO[f >Wnjij5X])H̭UWQok- g{a3}~) zgs=[ CxEtjЂ AԟD$*m =ŰOrͰh;P+N%ưEcR -˞L)x1e: ,Qj"v:mEL85.oHl*m.\1ocXU)4ӯeۓ:CNnNW0Qcp;}HK9`l|h‡y=e_3L7`k,]']Έ1v;QE}=ڀOwoWɲhfߡgDď8t \ܡe\LnGB˥UOM rVI'k_;|mpR:UZ/ ]mڟ{KWu$F0]%pz6i+~5* v[.i|øZS[ȉ"#^.ZkE*S70 +ggǽB&׺] ʳ˘۶4og ^ny| q?hnNԙзszޔ֠G٧]Zg/(rmAn">blouTYs}An++7±kmᯧ8R~Yn@]Tq`@EYd^x~O,+Հ.#.R\g@.וxܳhcR֜RiU3:M-5fcE<0$RDŴ. <TA_L!vWt].A8fb=*%hl+nF(gWToq8}W{..{BF Ju:fS ߒjÀ]Ds!(^H%P"~I]CRU8cvF y ׾LB&7rd3~-= )/RUMǝ/I^tLĦlXR(b˘Pi5YƃdsZ6z%ǪoE^`gl1[oOx]!鈩|np$5[hV'fm~6*@ZqkSyqd{\`(TN<¼ϼ=+-w_[._WCkma}Zqmը iYltվp^ʆ+] /m' v[acQ9C$WN9vb[T޼qYhgub猪kY bp]bR{e+/s90^@]9>hkWȔb:EF =IF$2S"^I']PQ8#<[-o`JF[^!]L*X+ehWV@m f5]`[f&&43JLj-:gSLF!\ح +L1`F,AA? k=mDWҵ ?ԔXyWV<̧8S:Z@|15 N~]P,{,\LHΧ] jf(Lir]]4g;A (?%YѸuݯw_DkעX$x+{ƐEm7wo IӫkDG\/\yC 3*dFm1{rکJk>KGrsհ>,` 4TInO傪J & 59;[}^;eOo D)pM? ¨/T #?vv awyɚzjTOT8 =S@H*9o)awyAHMqYP27u:NJʭg㸙6%1}ױe5yX6sje/&IS3j}!|4xy %_yߚ+>/ҳ&\\Rʤk*'{d"dJ{Ykݞ85Ϯ~7Rt*E\=\Ay+ <㯁ۑ 9FT*z;Xr &9h۞M'ԴʔTI?bW~o2՟y|<MJ+J耂2("jT܇ rsabKTNTz.LJ+6k5 'dKJJxڻ'љ,H$4*zn/0{nЏwނϜ~|H7b]E.{dY:̓qirlPP¶8LğW2OS*7X?8v>MjMdKw'/N3{ꬵ.?gtgn'a;и &q ^!(N{IcY ڃ[xNWt rnP.Bɗ< #Gtb+{v86lEqz#1B d'ߑ-zMM *1?:{v7J$XKɍg[-nY݋aCTHvzHvDqy}<5ބ(oOW 䏈n~)?pXaP9V"d y@r!hQSy8lyS(Ō1T)>ɳh_(#\rHHڔ嶡^lW((o~ߩO޵/&}2D mk7jQvfbh'r[ʲ?o n|{>l*e)n>r3nH`uKF. q~22d2\Q'/ /.66Lye-WҰYEܽR>V9sɸͩI|:WzSYey䫶o),K+OP eUįr)(|vT3M+~>0EVcSbrX;"G ̺4-V%$W,3asOIS 版aa sb+ޑ"˙W[dfz .kmzvnRP8EY$̱B7`Ҭ?ܚNX{﯈WnCL1 <&ũ\r.uŤX8$RʎL/0Z@<ֿ'kwFO!¦Up+#ɝz#F|$*/ G|CLdx/Ou`/Xŧ U [ZH#Q Hk Ů2[4 Ő mNyҽr>DN`& .a]1ېxg1~TT&pwT[U[׶२>AKAU`" 7l,9isAoekͶu+֗fVݟ <7W<ȱ~qSq8f|V(-_ V+ІX |rj!|yK#՛$+=`bFO7uZDx +,Me O„s>> W,=Ag/d*|$L0gUx?\ʉ)gr"?Y+LXwF9@9/wUg_ko섎݋=!d5QJra++PHid}YDvE;Hʙ\PzVѥ%M`Kn2RR=á28n.ʺꐗ[ޯOpR4\ Gԛ7AO'\?}p1-ݼt ֹ&pR ƍ'Yp-rݷ{ؓH? B8Yed  <7D*8Bd7m*XbdB(HH'䁯r *{fem(X]{˕zؠ%Ipd`42"q_s .Ϣ)zw=Y~&۷nc}+#s(˨]sc"9We|A,nrEjUpz##nV`(kʤ ^5tMĬL\kY9gKtA&4⢃g"8:riկ'gdκvmUh.'yG n~]HWJp հ[cS);9R`/m+SX.Qho8j@+T.EЦՑ4pTԑm:TWjV̨kn kےCJe$uAjy kl%1?ہD~:n0oGg0ZQy vŮ 3.;lOG|(iCUC0F hY.{]y(y#7׌ pVA˺0//2 ON9ChxȒ.G+ER_r ;4dr]v;cLgH¢@^KiTvh6 =q6 X:"e*zG `SFJSR }Qv6s]PZ c^c03 },jrs4h6X@;~;#al!cckoU &9}(È**CQ1;hC X~V´:e`d*zW̹Xg f+GMy8=X.[ׂ!J=MB٠Nc =+%xdsl'+SQ BnǙOqꄞ{="O?j2;_1`}v֫/oP*Kj5RӰhSKZKm9&Nk!ita f>8фx jawS6{_-:w1ۗ~Rue??ĐְR1Ş;iwTHȆfj;F1Y%~.5ٯ8j%D0=< IUŒ`:[ /w@F77QX3wL~\@lm$ (Sk1ou]qO 1/1ы̴jLsl4~ ]6\$XyׇX Nv0q6 ?|n|lz`?nBis$klw6H`K7 ~Iż ҂|}2k}4w12JnNj(h@URڳ %#TEdx7_*O'1oNmʻ.KS9BFkcY$ 3ـ?zX%urwC \/J ͫGb-T@/# !n* F)Ch=qwe龧RwN_,LYW&鮮Fpr? =p)m $Eב J'帮{'>KH@]I.P#2s(x 85CfG t Xbذ67}XҪoWms.\CjM>$>޴gsh t #r: =wJFD#\n)I䳐̹vxw+G~XIط=G M/0 qfu ӻ08QXkzj^sɩ)̀ -쑺}lT+⪻^+(-s} W4- j1 Z $qgS`K~EQ)b@ ]n'&}:U_Y VhNf]u/)]OY\^+3D?aMJu "N~TωzBƌ "D;Źc kmsnomIZmٻO@IRd3j8*D 0xEvtu|k!FxtӴ P7[˧Fdn`(-}+<_ݬv}$=AUQl6@ITz]_=!3ˣ{.*.\4~c0GĴ_(XJN}$/OE& t-}ۂIUlP1CG1ֹi`g܉i"MYq+Y+@J%rg(E+I5-1|_&^ h7fkR˲)*Il^Cn\TFRp-^Zia t@`vfh∆3}`…vXYάVT}~K!՛T5suLW/{,[]P|< ܛK|VWڢMy–_ԽIcjaJC1c=rGjη@312qa;ҷ,̊Bupy[u "SF,*T-$,vqbt'E…n#H G(Kn0@{/a(/ps{by9iHЀmsCf%׽ A r4dN>R*jM?!{LRHf,NY T2 s{Cnkd3./$[^ob|ZfCCŽ;Z{RFA?fu3TMV0wM准ib*cbhuE~`S{n:SRpe~(?Y,RԐ}7t&UWQhb@Or2poc1TV+*MjH: j, Qɿ\z|6޷ׂT*޳JRO(O>t;!O4aaw'Y\/K cĞƤuvCрaPjI$o.'M d\Z k1V+ҲbtNu#oRNɇU]l2b1Y$ SnO4QO.'6W5j܈TAMʉu+)Z)v1/3 ;?"E$=(ڛEݑ9i҇4_(411V9z0̏?táx/I*eJQS.t*+]w R:ܑ1ˎ `Q/(_ѳ}MT0|ךڡXAM)5B^tôMOT9 I\f?=ɠ7*HHxzQG<-;ORgg~P[uQlT&.CJ:dj 2$5!QԑCp.4_NkD$SmZt!G~FpzYc4xBq1^a"OMׅu5 pɋ.GG3䴢;w2iIb֩sY = b8UQYYbayNUaU~ѿsfuCڶL*eNGzhb$h)nh cTiD fOU;U.?x?ȢvRT&Nl_r c-FB ŗP=iVȃ]d7в嵸(h WK6 G)f]bGZ0E) mrԗПO;-yXwӮIqҪ>47t|i(Ý."2H8eez[Ch:ٙB%62#..e,5zV ;Q}5.U^'3L Cݛ1G NaOx*t=kҲ}& ,$Xս *5@Fh-5;+eqю]ȩoyBLZ2?*{Uဃ4@A Ș ui=hoOB3+BmOxJ;J^ wz(a%(1՚,4B]_=~sf|wG"d M[7ԁ-a*ZfkU$ghMnH?NFq9O2w~ԧV]4AO*/$[Xm)mͣ;'*ZIp*u㮋26)[g}KK\-#?_㺍AɸqWnR /챙aŃ=L!suJ SY-}wt7/!0~*m\$2" ]8Q_l+g gó%!g?-Skz_UE̠s/]\CvϠλ owʿ6Ү1C_be34=[!_zp' vҕ8C]&*%.!Up")Y1}5R3%+6#m!aAhnPO3Om5WL,=S; 2WziA2 [1}v J9qhUUVL}TJoob)dA;oQL R\!=5dWݤ jܩٗa,V<_|l~ 'mp.th3k5̀.qQU:~kgK ɓl?dT5|(s% xSE \=KjQ(ep^B@Az*RP΋62jϰ{Vӎk9 5$xmF r X]M!k}gt\Ԝ ڇ¶dj͘gpٺ[lN'Zӽn< 3^H\l('ƔbٱF̺C3w>Խk^IxV$._#s*]"/(x &@,}aq\G:nɐx}~6YKjtĚkH:(<蛵_l # 59նFҼ]\rڊ8[ehJM2ANYaOM<:r(^%XU:8aOTWг1!S~kI3/|F'(/vsnLࢗ}/x@/A+ V$}YbOA"T;r+fݑHs" MsJ#_޶ " T#DD%$xT5)n{yT*\Lu5m3Ɩ^UH~VY盙YqzԟX}VD86> ]@,r?#rH_ggtmj9+|̪XTW5{- NT\1vx("oи8⏛C!Tz ﷚t]O/{7-׍DL@jW341(S`?i7}\o ߛ lFXb.Pl_b L_}]K+Rإ!8 $?W#D!߽> B|/Xfx`߿!a7SՂ 򪟊 \G,R~ hk4S87x;FF<;s=:Z7 J<\R"TH1EP[+b,{E·ԁzr{w֛+@IrlE}]ޖ&:-E*wCTOlaGhT%,q1W:` #4p:WRg8;Op،"##xNzw->YӶ<;Cvv}ŹQM9D,G|"ΰ.TczL&E?Z@p0F @%5=v7 /mTtM'Bz2yW&O&+%g] ]ͺxblSXΌ3.k=aG:VOgZz?NANUs-U䐸Ii)ljAPbNLޛWSNȻZ q*J;z B]f7kŶBz\{*5hiߠ*ڥf"n[¥\h2K;_Cׂ EadLy#vG%`9?u>"GBQ3EIPHł:1Ͷgjh3Rlh!-@zsTuZY5$~.f% અG՛/_.=E=ݦO&kܟ#[ c4DX}Q"I4%n8֮"A3A.5[i%iK=1ʅ4(kߢ$d(kOTCwq@G;;^0uk>Jm!k,Ɂ qI<[[sw.Ki\dWY:0?~zП} sf4YH{Kvv"XgbT.GŔ4![`pD.G![7_tޡY J9يWf.6lf$G匐hk ײ1Ĝyo _m/R# "[i&̉ -~}L]nڐ.Β_d,?q6oli$u/ik \I4`qz;$iK07ʷ!ew@̰R01mouQ=9?Ѵ_7CWk 9w3`īzQ9ѥ.M*i(GG//|(9[l\bw{ZN$[:?gEI˦A)w+\*떇kUż"| qfs1:<\`D- ĺXpjmtd:6ͮ25'DOw47nyjؤ;P$Vfǣf7/֦ёhb[=qfo~Uf;']x|t+TO|A{ ՌV䝒"#$δzɞ1vEv%wf$Ay & xH-60JZLjڎBM:VGwvK|yǢ^GjrG3X~"qaZ_3 Ob>`Y4fWȖu,˴$d$?7}3HW~BEBƻN$REr7/˞+ L2x؆r{nM#K`ƝJޡCAG=5+) T&ճt셛M{(NdE|zW{YfD<:^;܄ et" jt'TR~;1_EVY?{B[@9pn2=lD3)h)p}X'<ׯdT'ɺV)SXumy&=+9-A"=c1LVf4M(=܈ ٦ JHsO7_Ya%&FBG@{yumă6CM4vN|$o$#sc˯sRDOѲrѿD<7_%r7,<yn9/̦>GU g-4آӼ8 zoJ2wܠBx8N, & ҚpFF" ,zkU|$S+ uZX"o\Vq d%.I 8/ 8:;,dz+&*X1:ѱ9W'VEZ5 0_D:tS xA3Q"%^x43e4h]i^ [G#<%;!R}@5 f&'OԐ-&:m3cv'mA ;x퐼"v.-5v D jy猩t䣒Q'(3XjƛJ/%Mў=* C Aݞ@RiЮY{X , B-Egy6 ~8 #-gZ{oú>Y*.J w䆗D=xcg*a)BB2Jù{0px x ꔛM Hw4(Lyk +dA pW&,}qf/D"tM-^.7Gº2]RA0Zia-M4k?̏ TS $K;M"wAUsnDXR Of7gHu (?Lm( ڳ?ޛ&a^=ZJyxH|]D)QjIֲ^ͺGeT!sauC &@S43#SI]"f2Rl+I%ӊ118 anz} ,]H!B-!sdS ]u-y:?`_?+4*?ƥ_ƈy~!_fh20c~Cy:c]5aɃ\YiN ~8J]D2\CjtY#f31Tb+ܪ< K0 9Z rzs..Q`N UY8I=wr.KE74ǻ7>~C#QvXA#᪁<jEbiЬ</Gzeo@*n#"up~xz'|| h)&~@X$:z|I1X)86$Γ *wR v7BMIl"тT5f}oVn`+*tK8|w5;mC/s$ɧߊ9ÅR~Q RLV t֯mG'/];ozn$m}6I%8+涘kWb/(+ M?QA Ő4wI"n钱Do|D8N 40oQP}Qy.&іoUpNj.^2C1]cqB3R)9 3} [un"J8ǜ4 DB ef(1 u-qjc|¨F]TAEC?;Zm[f{ .4WQE-_}J/ 8'ZĢI1Ҏbke˶-u`e[[&Z'_bzQ'"^WOyN_)]7ξ/8Q]zM&FHyiC)Dac1sCSРbT<(}v4[1c8Ro\kcjZ,s{,1T*\ADGcub;d=%m=Ք+c[L =_#g}9Prq[eBz^o: -\`Vr52AuIRaNGOLN7U$m\$E [9u1#^g DZݱRӖyVggO6go֋ivƞm?x]Xo+Db_f"ri J ;P{){Đa6}i',z1̉31#cY&S(gj֙<"o.M78}.磯g<$ O$Kf-=iEq{)] DˏkZlLk/Rl`FE\'ɐը25_d+j.%@n_ts2'HCJsqUU)55|~8ޝVs>4aW>3+sd߻E|lh@@EzJ7CKI-˪רD mB#mZ ݧr;]u-|;=ɃaA}΃C5>/GZmeOkXWg$MYuhE jJGZL?^1KݧOdb9ȁ\pEy7RtzEwZ7* dZ|3S>gڞ 2$E@sb]Fuf.U[>1; )4+LOVmeۊ XclHYbKD碑_ k?`PRWsRq%>*H3t*zbr@Y״z*zD5~ֳ}7Og%D,uYěsd;DFˢ &hC{p!ȼSw-eNā꩜TG0.A+Xt?fNb(Yکnv<'l>Tyfo9_G%^\1]WĦbp/^tGo1كk_Ch^fj]GWۛ)P{8c셿8dj8| 1/DU;xQN.Z.srazWm oEۥ"WhyZ Œ:OGDMb΀1&OJN3&\TiNUD")tR^?:(Z}#˵Đ^VKyGJ@(u0>LqQQo f吡 DXZψHU\ o..!3'xWDG,X7ՒZ)psڇs`iE\eǎxY4;zC  k p Svp]X^TqrȸND"Ĵ/r J}٭ʟUmdR$M$M#ܮ% {μ9 hܕWgq|lXw ǒdQ--p#D-j)'3 p4Ao\Wo>s- t$lKp x f8eՐ_m"aX>晌-,V=(^O Lđs=~pnCa!tk, Qo,D/7X8J@鑯IA$I 8 ¹u%,n:4 0%O`E.TV Z$6U.z ]DZtDۍ@bXWDѤ5"AaMB›f䁃(5ʮiǣ )y KlsP'WV=݊EJ;"@`kmh`'vI*%\Le_uPl_^sZA.n~cdQ'/ߞeYg1v˨CS/񀏅<i962\MSYvQl1(QzCT%k̾f` CkAϮ*%͟X=5q˜X#cŵ Lؐt\^<4.s%SDzgV]waq]{]Bzr|15dr[DGⲺx՗]bo,<7aͶvT*6Le2Ni)CzCa}۲ Nŀ4@SP,`: G4e:.FR=Fto?1cc1z^x#eQ8Ay qdmQ8Ks+|t{w"rSKlOj'}4Eh(UJ [DG3nLE'E+ݞe$*cB΄gs_Yڵ( tQ$1,SƩ߶˗4Sˠ@Y@$5\^wp`Qc#}ˍ(XMqqiW3 r?M!W}Ev 6f&91$u2(,/[\R"w[DnjA˝!ql$#[9DHz<+)n?E 48,&Sɘs2&~K0#O> ݋5o#'umEx^&j9o ǒmF]wZEx 9IO6yl`:i q:Ű=Lh eǃ[ ww~~ߘMKt68$eaY)<^J-`\QL^; }.l(=C^5رChx;[rx/:qr7JWz]v~̝Pӽ.Nja؄n}[z.B}l/ y8֨k3xUYl>@ 7].݄pisiw@C>9#%pT! a'<*tX$^~x'+v)l4I#QlK.8d +1C{z:mdхnJ\А$9 2d#ݽqm=$6ࢽb2~ŰJF/14l[p0*=̬կ$wӲQ )Fa ˞ Y|?>naqh -ꨠsF$چFY9zV5-=|EǕלqř)&) l,b;uh<^ge 6^ wJ@x`6 y2\, QjI7n݄LA/$]""k N9R5Hx.^+w涩M;WHRZ/.HSnJ@#4B?`)0+Nã0KpUX:I_-MRn\CjytI&YA=+r `Y쁎vvG4ywuc 3gYneTZehM=yQO (FJgg녧!޻lQ;yf28\Ո.t)1.^)e?n{q3ҡJr`҉0TKMP'$Ti/X؀Y2`(9F$\4ٍoBP]K@I(-`Eˎ~#KSZX^7c9 hX&>]\hSOː[t/a)΃ȻjR<)*>0D{-{yz,ZWJYx:VkJAcPn]H> 5LR-'W-7Iz*"jRsRj1eq.ڡk\U/wE m]Wd#1y[o{tšb-N$N0р]yhmR~= r DBϖ?+VCg@I^s,R齇S` N vX7l+?8G^L.,eO}dM>&AHwաCF Wb;VV63YZߖS>nEף'{6+KBDΣ1z@,e; mNd<2I1ѐJW=Lߗ 5壺COBb[F|)>Na]y* 5]Y(ZƂH'V[2֛Co45?L14נv3r6-|>3Z@%'s&uw]0O}db^RV$eRjhRI1TQ`k6J)!.="wWG5uiS䲫^"_fszqۏbHO$LhDI'P)棃bh 7#T һuYGK GH`[K$7A #CS,soaǎ?0kNl6Af|~v~C.DTBlx`U3ǖg`1wRdx\6 h{3jUK]S(yaho*|u:Fm-_џ\ԧFҒd/0ڈa'Wi`&$Ynvz?\2䊜ˇkGMOK M 3._aT Hgw\!WQKfU9:̔k}"_laQH5F}YSٶ+e2b=cbil #N(m=!^"JͨQobKcmsЋVxmA3#O0W̃Xvm2#r{)|ow~I Zȷ~7p#hekg}ֽ ]vq6v7LZ<ɉfېo|&Y0Zz=Q'c= @޺B'yaH]h=_0N,8x跿PݳVo'qI"@:l)ay2VOI Yk<&BJY7]&fF]jB F^KVd]\_ȉ򆁌d+L'~rYg)ڸxbQߡc&gm6s 7=BPZFCNchڬ*'Y<4 y]^e0K l* Wb)QN"cn4FtפrYzR wc¤ß3H7m-du!uy ӉϨ&B S V6$Ǝ(<2h;DnX&_ALE* A`L`hגQK~xvVDyi|ÿӍ>zcPߋ֖x.I$_b[ tF{EGh^em"@~0' L1C-y3iɓ &Ӷ-]UF&WWC"!s =^чRWOQwd"E$t_ c#g7hp\&mݿv˃+WX5ΌkV]P}5Ə 7-SKcl&5dtZZ#<3U= EKy7 TZ6۩YCX+c &Va^ (ͽ*j.L>5/q 8q|fQ~/)/Þ j7|u/2\@',#gdBrC*'6L'w}Vf.I1 LΒ{ԣVU]ԡ+^,wߤ"4ܔR1 Ġw4fK?-iWwq&8$s&Kb/gͭgM5u#W> GZFr["{~J:`*CG,reSh=ތ[؜$Xz[ʥb9.nw;:ɨLf PyR:82R,F-0v,GEȀ]Z5k^Y >aCXZVGW">sP&5|j3t0?V 3lTe[978 Xhc/&`e  X$p2dy<|#bh`繧-J /LČe9l!rxRZ|xM,' I#! Fm)9b E dC;Y`Xi`OP!"OQ hU9p@u27TRaªFolA)L$M02 3Ϝ<d[RI˲}Pa_q Y8"٬ͮM?b#4_ Ίm1?\DH\y`4ѠB9[08 DPUS w[v]wЅ{(4UvgDFO:ÁĽ6@ev=;rU\ڍ5nAz&kjtp<;1$+zZ;B'!,1P߷t{G'8vk@332v@z$=T =HYQQ|KǡRd$4T.j):}?Qj]30B,ҾL?""YȮ;Ɣ Qt=qC09PrO>ߥ}GcD:)V.#,C(K.V+qaJЦE- ga]([C bz^.9tN[%ŲO{X^=Mx_&½y1WU/s# 5Rs`lz,=(_ [z[mcTX4mELWmd)9Q7!/A@sexd:9yM?4!)7VGra?ϤlTc s|ÍmM 5syS#u{=u[԰ t85DaipKb{?IS]aa Adttk_xlfGn:p0@ۊ=!{OxS!#؎eZ?Q Wh.}c|?o ] t3^6r4qZdb*i6hRv6FF-X5uLs).L_ Ͽqq,v+wtqd=/.Xzjd=zf :˧]EabB1{$j6yylco6GUwd^[#ܚ<`Ќ'BoK0 ʆKy*TkeJ J Ew[ Cb)^QgZRd6;t@zɭC_XU aZ$UPub'a>Ρj0ҮSz+ /cJNy O5'敝]p!ޓ5Tir6|٥MHTJ&W V*9z3Yv(C.)D>|_j% 0%0-c֣n/-l">j4_d24-I>9ZpPRg4qp$AR 4N;:JR.Hzyv5`jsZ Xޕ ` dU9Ix82/Kt !瑰xPnHLVXp~˱3s[y|V9+APjE!peWӵB> 89#bڣ~ON$XEWoyN Դ$ZENĤuw≲u1 Ք,~J˗ݔ}LxcQ W"L~|l!2} 7K n[=qJqÖ 8d,.adƼQHKVu<SEr36j}[,bNhI2`aO;՘zkitw_uk8-@ ˼A@-3#8{B ه6r鍕Q*/UQ[Wc$"rB5"?UbYppK3sNl,;jX{!8F7J7z+z3iƮL3.x)];>_ǯ`'Bwu\ y%9:=śDpڂ!"4qz(pn[OP [&DMs?4"8,#iT9Wn%t|gէmzu5!M\l< zN*m67%o:|$RcE\ Ry G2_j+ӚH_2A`?X^-QP},T]G?/x~&/ш:D8"u{k`d92uX߲>dkyLO"LEpY@hoaů5]n2=D#=Zع-KrE}n@4MQHz)}#%*,wԅRuBKo&i@YE D;3G9f[$ڡ&TF 5lQQ1weYjpW laVwj0R@N{A1Ӕ&r-~=J|V\POq fh]&F4@L~s3$djw'[Na TDN:^ A]rW&~:b-ȥ#aJd|M|RdMKɠH¢+u6I(17c>Fc!W7ʥ]qNCOBዒ R!w&}u%"e!mTv-(~*LHXu8"b"^ (($&J! U0֏xd.ZB@OCa2 ^^B+#.jt/HGV#w~ђ\N5{J#XG؋r%ۊ^ 25 a'_4E:i1 Q9e#`d D):v8iiaD7b< >oUFv.l:\z*vSa:dCю| UC֢Ә\-P[,gKTtr7ş7,˱x+MЂl-`GI18؆lհ\ݔ1L6e0uU;Zm smNF!hMyKF@OBeO[XY9"?Bk,\QWt2)d5 KN!ԕN6 ֡\`#&%S^$qTz6Q66gIr5'6#1bKum8!,bQzD&*4wn2ij%50=!uo1XxHY 2bFr/Eʱ6n!7>`^٧;P{Eoe;m[鏞Uq2|kAɋ)߹4o*k`\v <{6QhG(Al"p:c `(6ޗxoQ&Wb_}GՂ1;}:W?jkcCRW=6\4Mnsi" < EC[tjppYxђrf;^[ʾRl6雥+_1DPB$PУO4uKu0ds) ^8h]in^HM(Ϋfr!BrIԴ;ZV'(աP>w5z|@֑@@x‚YFzx3̸j0v~t ̘nݒHt\)%D ?V/`XeN4fLs4G~dO,@|/ l, [I4GTE)U,6[oT+MpmIN̞%R`Z? qݑQ͚4 끕%.ݾgSі`ebMgfF|!2kR^ɖ}%)qgH#b /6xFrGPv^v!n#89{ۂŻ*{UQɖ>z\}y=רMS>odF-=IT Ԁ :%C;xF,lZJEBlZjTkNݘ|,T5Wv׈ ^{?z3'=qJ& T Q<3oBQ O)hzO^GAa:>lNZKTLz"aGw(?B۪vk_6=jB!' +n(ˡ5ӑo>ȭ׸BAEzrβ6$3|RuJ!464cۂaxT;s`8k9">7J,zRۀ 7g$2dv% Y4١`?a1;8VʴC s * ȓy9#):p֛ I21D˜ǕV^ t72}Bt-vxgTXg.r_:\援!;9IPv3e =]PIԐ;.٢eI{B2a{@RN1q4\)3*ۙ"jk\P?=BZniPv]=x/bf,7gF= <*\:b Sh?+LFB Ԅ(Wk<) DD|z'_ԓdYbAL /90_aiH&HkK𔭻X|7A0fwCBj b;dHoz.A6M @bnGۓ&lmb!#,܉FCLvB}_x '}ip +W2W$5Kgr\%>S82)^kJ)G<8 >TSaK㠥&YHoAaj:da1 (~Tzi1zGu ^.t({JșB%"Du_IFKfDTH. A ! _ū0L#8+)J4#JcZTWVgꢰNn7h=pP"1  )% Er0eM"$ٝ\0s/S'{woN(k\Ax^~Ȃ%9d]b #.!􅒙</ή~=heǭiilI^qJz;03jM*_2b|pҨ&Bx#yZ|" ;ہd!ww# -s*JY#nmF.VkpZxa;P'k}jU~"ۇD('Wcf%y7rXaAs +KbTh'5ȷ.劏XD2*1sɪu_i[ /Ɍ0f}נX| qn [ߗ.پg絪%GتnmfRv_W 4rp̻)J<#Vw԰y-75~X|UQ5NZC?^QY1 ˬc`l8j%q^(슣^:xxJl?=B׳7sBa-4GH1PBaUX']kN|M@z%3Uą\,A-p'$ūhGr?a}NARo5}s @;*)Ge*G *FbQ*Bq燵HL]هjPhO4Ʊ7 ܫ(yշhS"r>g yZADb`kwQku.:rw /]!y ũ MqMC[7=q)o``ɚeF1j8xZHtS۲|vJXx EfC@\z|+u}WZF@)rk7h?Om &-UE8DGG==ʹ&Yz_JZbpO_eIt׉3RtOOi"oM8(l/k?4Dry0Dra!#I@vYGT,/⡽&ϓ9@aJBȔt?$^( %XIddC*[cD?L1J"jnH+>n+Y'w8=CyrZuSw:1ͼؾ+. ݦ8xBǵC8YѯkG#HT@ԝ dx̥hϿ23&MK&_=ppJ1dV!\s)?h5VBTlH AGmPDlPznxI ت$t<6; y)ژE Ui]]wRaGITkåB[lƧsx= v࡭\SjB/öAKu S/֑w!n*@8F֛sSZHW %P՟e ]J O]!_Y+c=iYQ&B$wzR^lw$#ç8|cz |6|y=dBcl l>@Ų̑Mţ&nvNͤ7 3}Ww^m]\xj§zMKin |r o~KUb֓c I-O{L|sZj>b8Unfb@\etPlZ=%Zv͡r-l*Wy)‹G9l4mS ftQܩWOx٣E'ZXY :%_ ~#u8-OQv-Vwn)b8b-*:ù)Ø>BFEF wڵXDژ}kD8XNJS6ٌ BB׻٧v!F58BFFݦSZN82/B>+,f88BdY9h$ .!xr]3[==4[s)z$G;̝n,U)G)=^2֘8<wsh~Hw"F`Ϳ9V-T )'|[|19zh.$/moɇ9 hͲf ҹJ) NjT?HˡOm8;v-a4+*<@;$5TD3g2'=0doF @KoxKsȯ X2l"7%^ZZ$%z3웊4$I{ėBWpv,o _j ^hѶ GEŌ\L9u޿ >εZ*HO:V+փPRwyU1:o,Ua3¾yIӞdu"QR[ᏺGWt/i[TF[b(BSB́[ueWu7슑MиF)eh.Hvs׵oqVҊaX<[V6-{g>*t9g(GyPՄrn7Qe$Xf$5o+`tuP6(IɡavR.xw$&ex1ͣVBىdpm mBb(]6v|!; 3.+ _ ɱ}w޷U= OXZxIlJ `jsd qh: ǧB[:r)d=ܠ-%5\AԄz8 hI|\կG"F+o˸uq:揉W>s]-AK㷙a]Xkޗ -PK SH]씈߂'iKG<|ilĉ&><ھJk[9XJ'0!ŋKK(E}هq ~輚 w:Au}٭#$YB(lH]T4R5!iY_}4\ׂq'?(\':gk~Hi9ܬKn~}0yTy>B 3*:|YM//X[Ci 4D#t).3 qVgY9UF!]᧯;\r&%YOKd@n5=:b?^` ͓qgxmPFp\uhLz2r=dZ~xoܦR@\k Km7KDz:HЙP;-I"#)<5N-])e3{Jm?@ݤg.Xm㌩{<=WI9|L7~.[j3! %Sx{X}`2Mͽϴw>fD@WX 8E˃zߖƩ`Q V ؁(ૹ->& C] zܭjVhw޳bkIǭ.V{8W@ Tl9m0ݯf/f*w䴽u$́|ڽ=+@#mr\\(@jWӍNw&:Ra;KUr܁1,vL52׍AbU3Vی D(.`'n90D䔆Iz>B{ 8Ne +vCءٔqX3sˌ  Cqr`l7r ,m]N#jS◙*m5w'EoQ6;iO9pʓacEƬ`_'#w*bvܾCex`1^dk 9\A%}PvSRI|lĭA`[J?**=us()ѣXa'(r%bVD3w2͝$ǖ<5L_+YL[#C1uRlT=nF{Q |麱Anc3TJM9$Å}H娭;^T=b-e'Vmהx.:F"TB]/L.~S5ba2& Y(NGUhl}X6\,h^ {tF2e&Kyх^.8ށLEq`5YoipN]|3!@$3[Ѐ ']4/00$wd,Ccǚy8hjkv0I"%[w{mbr֋u>:D m6{Je[8=౶9l8@d;ha?_ږ 3<|mXhi;qBvV'%Je[Ae(Ibw eTXsqpjsc)72kc(NNh u\?aH@ܨk|> y xmqjȃ!@;KI1k ۨ` 2r=}8zPuTr|ghG.6z˱4- {=Vm6\QMOwXI@(6[;!{TcorIkWΙ@VU4j5&T:Վ/Գ:|{S$ Uo w2|*/-y R̤z/+ gj>+m`:حSIYj!  ن> E;sB5v5nųXo93&5M))J(͗REbXЕ'ӞE鶛n..pn?A33+{fh$Ї&)6)6#~a뚒D0"_㦌2Z{ l?,z Zb>rw#5н@4v^(j[g劁zƾIz'oU2ʮZד#w\>1~sS?0n;ѹ@5y\l dqX?h\Y$jf FX5e+SI",Y?g EJ-=CZZ1 ]i{( :b2x@u_{y EWSnA=ČJCb||F[#Z-VVNus dży{9JL`AgZ U6F: 3Ks6;[MKaz^KWm [ w\m_a/<9n8Nߑq7|ҁ}ˀ}-LN0֕->hNiP8a!5n}1Wð*AK?  U+I]2 La[}LgA0 ~*(qMF7hN}S"3)pR.W[/X-ea!>Ad), KaddbgD wGñWF]͵Mv ZxB,[Q>D!fkXc0}\Wmx-tT+{&@SBUHV.-PKQ i w@2aT xikʋ_a\6w#z53]OcV OzKi[WUT2 L?[ \27AØ`:|p ^iJ{[,limoT%]0I>>-192mBv!X"W߉aID yo!%ChGIu&cM)=!} A3[S0ڥ; wЌd@ Y׉`^#C'WԢGTU1t~)ԅ7jBnnۮ I]iNp|3[. 3I9Y8LSe7C_{#-=<$ǽ iSk$Xܪu'in%%ȫ}@`YgF< rP Ya=B`oɛt?Ljv'G}?r]\XLL 2;jD9{tqۖG<nPLqC'7ho؏t;Sk?76,%Y"xDFrmN_1bc%c;{V3`T'pEXzs*-Pbٜqc0*23p? ʤtIbN`C$'<-+rOxE.U`a. Ϝ X$ WåK_2as`t.N@;>D'Jd-ro#cf"`OƖ},b~ |r~:BjP̓Q<;QH[uV0 V{Ed H̓?<ī&Q{5œ`=SpA::P6q4̊KIƸ22`G 2su&ޑs#NtH]ՒTW7aa< SRN|Qm8د }bj9F!e=g4Jp> uG~I:Li2f(-jNK4m ޾%(oXer;89 rkęa4hty݀5f}T rvM)ΜFtOpUmC3V+*Xm_!Na~o{-ӵaE[:Ez%1WHR FwY-*IzSl}^9DF\>@6*@iI=KNeVYKEGu=Pˡfi;#OyoO.8U7YdM0g(" GB` I?*^(M:Uŋ&*j_u 5BB"FE25E1Q5l -w"FA4Qf)$,GPPA: ѝ,u*uEz^NFo"Щ_90M9p+3slj;k «S3f6ߔ.vf-w(BZ HLjWw$@"ϸ0g6}QOr >æ̫_Zs<)r=]exgOw&K9ԑwA&tT!Ȇۨ3^(@}vp#/<'^e(;#JǨ_ [ Q3Iv&>rKҺ9ZQD.kf'3xYew*S#PgUvHUoOֶk#AO}eG: j53$lHv1DXwДpjԂfg|phRrMoibϋJZv"1 _SUmઘ\qQlX =58ABc''+E1OXrLXyHz=m cF{r=#μc?$$OԘD2Rԑ);uU/`WIxl6nd)'k")f9P!Ii \\d+9R&ۂB {aڤ=ДrP NZsooӭ$Qd|BJ)rXYZW"I{5ZݽH Xs'e:]eԲ)IքS~?~pDiC%@ZAQA/ʕuC a! RhW5n&/ $ Е?׺m7'a)Ӟ(rpq_[/XsqO@^1+GMD:=Wjy_ND2C=jQ;?vțZJpp}#_g9d<ʾf-9F_A^YW2-wɐ5&Jz͕ޞm(+sr +aW:;޳㸾'/T`"g: _'Ʊ}.EEaDIj{cf!XkPXHx'mռ R4HtI6xIfx*S<6rdhr^ӧj!R= ;IBT׋\2'w* (S\/gl=4twYuc<ۿ8D?OND#)YuDL-ljB*dj`"- P㮶ّNR JvzKz`+#e]BqMT@:qp#XVZگ{Ad {x n{՞`CTKyU׵}O8*Yx~5 /7+)*Dͩ>Z 4{LI٧l"Vbd;l?#=EOkFUSLoUN8a̩KնQ8=ILZjO&(`1QW--CRH6ݴ$U>Eļtrsg`zC[{n; ؚ,szX_TtΧ~U~EӸ 0?yýA{^eԱm0)ԱTnJfNm"s'A|m5U\k*˅a置o): .$~Í3 M쉢. W.D_ِ /pB13ֽfn@+ +|Ws8ȿ9lx 84I dfB~^r io2 •yy"u,( )V>g=,'C;Ax sG5INe5a"POyꏓCky ' h02qLZ)K;}!÷R h*6זL`1 G8/ٮO 5N@!c;Pvu48_Bh(ǗK[v4 ؚvےnKȂz\>|_YP9LHtɻ#i t#QOZ LSR 0F*i-&j(!;N0i͈Z;v%K^Y}'":?PTSsjrLKBt˚Ù+p(:z0Cи1sJ$ÙsxUG -z\(4% k @iF.eP"a>u\*gq O]G8UF2=w1œ,,sG?<dZқLv&#Dfv%)ԗcB[*~w/H5YT$X'i1; :#S$#|ORqEV oLZ]|( nsߧ|Цݖ}(J6z1AGPEv;|HagB15*4)X `3̖ٿԃN;W$.ks2MZ0cEB)pũtpg.볋vxhcjYNć:']QbbgPVyjBmy'-\| 62|7=`/ ٝXD؁nv7XihdMcD\ΊM  ǥ) eKC* WOs*%ϲrvu~RJ8A5=js)ުE)9S'[U޼F:y^8Dd{r6{J.$RґuCU-AY:5 ?`LJaE\'`FqLj G@#'-sBKa9aSkaoi`? `fd՗&zuif#_!Њ#^p撍=\BԻn0K8?7yRI9PJ/+]d4MJ u 'wŗAe6F'k)Vp. Z ZmÕ脨 KPOfMB9h۾P;jj:0:9 k2eU|ǧe)mV{/roZ/wb oN|m龺h( 08<ܪؼJ5 JqpV `{|{;XouK hϨX/dL bJ2̊UWj&k9@ YEwMU2nb o, $yз[Z0cS)-Tqr`_0"5FI|1 'fW.c$[cuGvDZ3H6卛!1^n_*-^M<Ċhp;IxrΆFy1U-  ;jc{e}i"NNX0O)\ɡPGj68͹36E!2EOdA0)J9=ޢhQKE{n ɟ(h$t\|ċ_Ii<@@c>Л`]"{hڝ]X5bH,5fvGh=9Tl⓾{_0SO(!$VsfbØi>9n1AJA2Ufn=n3 {aWrAzj]9h3g/=Ge]u VDH9cO ã bøɌJܬc7Z5cZ?* U־X¥!$ %BХA$hH< PTݡW +?71bs H2o0Bmն(EF >šqn3ؼvV"[,`dp_Ѽp3JS|>joȍ7-f[:m9]KѭD=F՛a6ft5f&_ X&᲏gl> a~mQ놇d_P-#arBD@CJa-S{3'') 4 " #y 3> ? ܨN M |g$wɆ* f pMۙ}M6T.]a=u9t::h/`9);gseOzx‰ڪ|mDk0@{`e6H |oqb<`Zm]5W]ݧ ?AE_=8>O=aȵ|G >JfOLzFf< I;H>ho8ԉ^@ɰZHbR& p3)or+İ] Yk*GG$  ãY“vi!Fdm+ėaH~Zr+x/`yF]S IuܽzarH [N*2֒ORH 7O6mM K^%Gv$- xʹ>LtԗRj9`wEIs[w8$dhGӇ8|vL@筷gq !Y8ݿGtا7C,WXګcNtu7zʜb8.U(ĚxodtYtl=L DRF ;veoZMm[S=E>JrP2(D;,(}5_p!78&(b43)Ps]c؛G|6N]Ή-D`P+֯OW:Yœ!7N%X3nFN/C,dCi y7$x41X]2]1' r ,O ˛:lO I (~IR9x_tr*eM:'Osew^}〟qQ($NDh&?GDejөS(pR <Πmv Xq!O)(u+"c.Arcw)I-֌\~ͼ,a鶩 ,4m)R27v8 r@; jĩFiMǓ1CǓ88"C) XQLN2 D~b9 qp\{63P,8g1@[w>9ʈR/U٭]ZD[?V=,ۑ1=l+K̒b$HspȄ +sP77mpT Sx"0#HMqoYkuKG5 X"@ޣh8wArE|5~LR`a3uz^P/"t7sd/JI䖚U˲yL:f g Ŏ4CN|ԧۄ 7f$pLŇQ8a'%#R2UO_@H(#嚮4Y/9B(zP dyOsOA3]Zj90kIt g:f.:T7wO1F)HRٿ$@qLWhnybXܔw5u|5$uEo4d%[AD[GqF*֕)SG.UUֻ< ݦ>4maO}2Qcf]_Iqjc)|zyPkgRBl].X}RxL䏁ԅ -ѱ1'zh][=GrdmA^^aL@ ~]D˥Lơ&Di?#%?/C6cv8>L~- :b`lZᘱ|,\sD5np8s̶wC.ev#$3ebK Horsʽ}X!o9wᦅVpvD v\tQ Xϲ`XVI8bc'LSzlG5 ZL a9CcL6Jb77'n> 1Q GP t," 7#x$W2gZ3с59?bG+Xa2ZZ<4([ABv%FܾY1&qTU3tr"G:Ykou䝹ϔAO7 vF_PєZq%Ww*AY?JmT"#$ν#3S =*E: %V#</Ũ&qG ZN#,Imy%ofnb? J8f@Cs#e}4ɒ?͙/B8٪[QbFNr$ĤIï~~>U˄Qٞb'Kr.1e9Sb +q"{(*<@x`xҿL䈅7- t"Jb IHtMrn eykuf<2LA"gpbUsO-֌OڨP&%&&߉}gZ¦u-"vzI 1T۶NjU40x%0ЬÛS[㪎5۝x*nk웿ɝz|#0.uHaI -W)9[PHAPdvW)vR|.*-{7p*ʹ*د9]NNuR+j]g0$g}P:[#]a6ԝ( c2#dbՕ{GK׵ss5ޅsI ӘSvy z*Hq[ǍAb6zAl U骑?"N in6FkBnvATKe ýh9+fJZ^GPQK#r㐬<[V7L|j9a&"KҺcI2[Oju՟6/K'\Z-#e"k7> EXClDejC/cֱ 5#HvuE^s[MjʫxNL-S@5x~o.\WO,̈́t@xoJ-o(:'!9j #|[ cvzJ8rxٌ*W6^U6a& ILK~C u).6~~UӅ~uk&/P /AO>SJ28g'mq&5.o.)"d?ջ; B˩Eoq6nVn?kL)\?$uwOl 팼E𻇦$ lH&g솓YwkqOi]XM, Cz 8Z>oF5.^ fue̲6Tv\~[v8O5mub4u"wt4rR<¼3))W;ֆ`1=t8PL7?_ft0}={eL>)ya&7}w7O#!ȵL;1 ;ة#}@[gnןV 'L,m]T'٠=~LOp9aSIªv* ȊHT\Ar3r r"F7':/mצޟ?{1:H]/`=:`VQ{[ặ~(檥%aD!#@:we 꾃GtR*֤aќ9P$hƿ|G_+пe>`W;m.ܛ 0t*>K~nU+˷47r֓IoQX ֬]> ˓m){+߈4?.c 7tN=!6<W w(?j--q֫ ,èϑF{_{0g8tͺOߩqbh^LcKο`Xsπg !>.P)`:MRz~;Lq9}9p+0t׍.$P}ƙF;fyoN) 3Zpx "!-R,{Uw%zy߫WexLx_sa%2zZ@Wff7ȈUy!Q_xыdHB1K ,>QQ x-}!gJ -+Ս얄S~g"DϟUa8Rƅ ;m<؉bZ63eZˁ*gow%!;\-dWAyR@LsyMbcRϴVVVxA$ HrV H&neQA&=*=8C3]@;u +f &pnMrm=2Ub^/2tksp:2 vxv=oJ3N[Ю*ʏ'W.ppVhV#{7i9χ%@^õ`kJs%int >ĤыVG&HVDb?=ujWV.X7ݟN0/Do)6OLZ w4ǫ~=_5FwZel҉Y3PH\_zQ{ JK\hLw%ETg{c{ZHi=R* ?M3pȽOO᭓#yu"$V5 2RGjǪgSda)i,qŪ튢PVCw,RNxG>vlij$NM[KȈoQSgx'W癳{k˜84_)ReKe!J1"m: ~[yG/%Ϛt"MFNgcu8\Txx>GڌIb*CA [J6<> vI-ԯX/>%=-Ήfu,[LrdNCy`;oGMnCzkz$s_Iy]U|xbOo{RqqrVkv<]!I ]Ȫnڳӯ*R(:^l D1e!FҥNQExC.^"\q-i4k2>sG&'';.rrİ{cj8GAm{~J ̽W R~+z<`wjQ&ǖ<.uys wg2ҭ ߌzmxR9#Й|ߥK<|xL0m$koI(LhE?*ǭ)<$T:1R&tgs- 38Xԣa>fbH?#`gCt-JQ\~mI0p25%T|Xy{Ό; E*qwyu[#c5&2(Piչ6)K_G,Y #M%R|ڪY;aƉ, Pb}aD27#_CP(˺i#TK=Z25 K dnoa%MzA]7p%[$6*h1c;nYc8"@4y"# *o)ra.0an)4mhPeb Չ},MV!_v' ^t I_8_A};W/7&~_; ׉PuIdIVi$Db͢x8 a4ai,7d J~G'f^d@hT,qX?i7qul~[ANeB.C}`LU-ƈMH 3fsDD2IܑxBfSѳqLUaWiGyi.j}`b'US,4y`-)6j TC{, 7ML,nڵ >jnSbΤX|^q[seśl!oZ|j<*ҶәeFOV|TS*na\n1e %$L3G lrg# 13vՊq7.۬LYAa1Ok_cV>}*ט2Nlaz!؁s_{i:Ó~sCgŸ!bP bϺ!7?Cx^8[߉`t.hpgr|>g=W+&='>_B,:jII [oۭ*}AN|VN.~H=  )ˈw/VW+\8dKEa-P8~늶85*1' MoPpl=IhyWM'XM N_߿.Ï8wN]XWz2B‹}OV:[(' +bAOXuJxָw'Q]-m]xٳ V@Ipx=Gi ٞ0۱'@Xo XWϰҌ /!Dn ! Q3s~qƨ֯oD݌@即ֆ(|p5=L )V4oH֢d[3B O"}V}4 1u綊'!}#;Ig% !?z}ߧeNv?-]޾<j\('+ Admݬ^HܽĽ1^p+JM#đ@ͷ+sn+B.KcQ,2n @(ڣOI7Et]Qw|t!T"QjD%p84ESivG[*w=_kɠAQԁt "$RX%%+a-:%ئֵB5bni,2B%GXqa h4PvTm6v{Uvs0qQHO{rOS&Z3ڳm ,B2x(!Ӂ \s'g3PsU;Y: "wwp*> zhP{fvjv'xrkd*wmk_'`wʌyo;sjju${(v9zv(ڼ87 ^8&}ox>CsB٨o7+.W7ٞ{r<1EukБ3 jTOiSIHuAyqti`EهF\TU%'/V%Z'$G6@kp50V(-8_..AM$Oe C&~Rq7?2+z=82Tg} H`IJgA:H<:/i} ߮Y@bԹBnZS!n" kJp}\Q7i%(psǑ755d/2h~[WpẂPVA*"f>yմR9Δ)ங"gwåJ Xz TB*u &3aWk +MuSoa:L4uK$PeCh[dAk ?e뉃8$N<0n{ F- 6ZYd<0|k$FulSVYs{IA'7k8МpLKWt`֞O<@=Cs)w~(BY '|ְ P C|yKiG,\*:7`JDV ` g+,`nO;#Jر)(qF%9ZyN(F3p*ݪHm:݂!ϫ˭02]^"ӰG ^h6L-qFe$J [F[-αXhV9 ||ܧj{W*e7dg?1G5@k?an6 XzȻ}M ѫ-\bM؋z﨎7cXU'S= ʊ"m;jÝ{_n9fhDŽ< pު3656%A77>,Ҝ{2Qy}i*"b0]BY>4ˍ ~>G=)a[; tZC$:N(XٕVy\~Dm6K^Xnwmʫ16,E:v !5Zb@>FlYa}[% H5y"Lȳ +iebbppՆ&f`2m &4ʎ_ N-6|OC+R슮՞`m> ~bl (3^uLG*]T ػxơ+¥8y n&\Ick^V|[+͙-7-АK5IINaWejÐxܳ+׸i\! ^Uaab0yFUu6֯huau~2r*/A1+c{pv v̙ %;9EbU- CX[/qEbx0~Ģ]FRx[^ dϼŠBaiY5 -wMA>kj7_a`?٥[MLo(<<8$eP[`?73p#,s9EG0k m}HS-zVL4nA!2<@rT1S][h(1NBч{M:bK-{ǦK&.v$vs( Ýmz\ rNҺ^ήh;PZIE{ȓUlcz.< yiyULa ?iR9Ԥ1a=UY ˼K?ģ 9\T['^6c5O*s$2IU'29AvXܰ!uhNfo{긁ݍv.FAT+e-T i8xV%q=M.E>kzV۰/br Qݜ%m+ sayCD+"b;o{p=32~.$jƜj!:n4yQmSd MLvG{ut)oZn0_}/֜uEQvԽ|mU9zi g O |"H~GD45ȵIw6H9<aD&] 5pjè3 H8%d٭!jEϏ6|G9ߓzb.-۞ yϊ9.We*K~U8i ~Sy90㱫n"AyGAQ%=`wr^aXϕ{G/ (8XڃBWsXBJX39nRhjY'+ꜗA^>M2MA~kZHK^pp@_1?YON= o)á)7nrkH=<O}jE*NaIpQX8ͣɖ]DǰjMhj2 Eͻ};a>e'BǛI30tF>LQTu]q2P/ eqOhYC/ )ݸW@P>5JŪ*QDE/d"w<gs:aBkb^8l&\#$&WrWs[XQ->FzGu]MIL&$ EdE=T^AѶmD>QI~t(GHn+4|=I}q( AE˱sJOϞ,GiO8'Wy;ij9~PO d)h95%K ^-X\u|u" 9Jvz3@| jpvZ#`M'4{f3GpAW8,^9[aI™ݒ @>E6IC 8pҋ5jt-dk%#6xe)I󡟮'[f7#rcCY_N I =Tkұq>Ff˽LyjQW_G|\/qm^ΓO7#@nRI'K.ҝnm1#\%ƙG]P]d{ 1ar7 tT'Ť4r#ze]h?9pi8%/@~TE],B$K&$ʑ~I8j؂!Tߕ\T6S_'r1KAYvg/.4q Iyj>ƴzWA3Luf/(\u[B2}Jn-tZn~!VNL]hXɮq$qf g B"-EyFVV 8QX%` Wg A䘰n<ކ&A~yME;41uӔ,3$77s?u=C 4TT)a7Lϥ c-Nx>,,u$b"es( E>Y@΋.>ZQy #6 t.oRu-=H6nAsNg!TDg\܅>{ "-8q'+>y5iɗ7M큎چtiHDM<* Ty0sW墚(T䵬 !+Mu,PFJx|*իLmm ӋMZ"@θkJ]Ocñda\wrpG6>W9E栄ׁ+L8QՍc7ս2(ͥ7Y"Uz 0 *`$'5 Mk8C&s H.^eM7'Of$-桵zqۢ]lInfmpSH3Fd8˺IX.;,C_gYVgx3oQɭFqvɨODݯB(vMM)`֥^qd=2lֲ?}D䍩==4BºĘPPk5Y1VF:0M M<&}G4 sIrJ]I|;_ɀGH鱵t,59p2t;Clh[qDj˔WKs: 1Q2'V#2R/[*ba| Z?-u0 ԝ*eCom0Ԇ W<0a,T[IyGP-nOY薑>|Xh.9v;#+^Z-OaJK|8Ag1Fcej/O&\;l"ym͟aj 5f2ƠW]'[q? +* G3S"eIƆn@ۜkI Z,W 왖9!-WK?#3Ѡ!\W`K#@S;7_x =3-R%.蠪I2v@]?HA-ދv$h~4VZ8H"7z<$7o͸Ou:=$sGTGئfYJ7"6UCLyb(u8\vBK$kufBVgNP~N>?+|HWNGT%>"ZbJM(MUJF^', 22=̏G i,nf$:? 8k<p"$Oь7>&smX+죘r2$˵ELD?'a0qJ->J@ӿg}C[UP.[%/_B6u`DkJ9: t9zX*B񦙕ٞg3ɫN]_ic]N-jKGyp5 v:xۀcp 3IFܖ~dMij5EZyѲV ~=C{yfG-o8SrMs9 ś&pG!R%MUn#?Fv>-eGb=L}-FEO3z/ eBIݱh.(S]1VM&4hY6#p \Z^ CҽQ: 1d͙l*k*{61qy"ݿ\NI=,[lOꋵUH_/е^{H р^dze^f|6|SFGF~2[r߅|_EZr7H?Uv oDW:nh]8I§Y|mZjTՋ񨈮mnrWY H`sU{@%D=k|Jy `EEmXsLm{ (:h;V3<N,G1 C/^m)lpɔoy$<݉$ɉM?'$+5!]æj|oiEUoI %-^{bc]V2Jh˽n2S;PvS냋zE6Q"x Q8&(bamX < Σd3'+unw7f_Bd/ώ! |}DQNgpWZd J+7OcBb+#N1ـ29aq & "q1V)~6{$DD66Ec3q5(LxmIMINyJbU.R{|ZQQeꓛF솇 fi ωt;KN<_Բbγ {ݜ1rU{haa&U,n ;SVB?-q9rK6(t23ʲUqw6Q_! ~dMB/rP] 7O*%VNFHw7+v(:IӵW el gM >Pڪw7#VkItKZ7o#_#YTЂeƟ_rQFݶ\iE눳_@=frKK| 6묰w( Ow`%S%Vɘ5Oq ocn{MXOBJ~,U mm|wU4XYO%NaF l#gt[Uguڃ?6h"1{?;Vy4|w#=hڠ^d:C83&Cyvp|,9lp$},x㮍gT0Qn_7 7j(:ߋMie}nx)nO"ͼNg*TM@"6tV*Q5~QJdCvݤ};eDp2qƷ&|`iūۮ\!A+Jz\YLto&.u uʴQ*dn&W=P߼uX߲{%\ۗM$%C$Ndf16M5BRz;OT-CPƯ?\;I0{Ͼ7"avLmK/6Hs}Q}}+qrY ~%WJ}:ǘcx.<nوWl3A7lNzu6Ub1i2<0Vьr0ɗ,r/rRY/1ZQ]߬JJiyrz_&u? T[XKLQQ<h,NOrO D67nAn%(N?v$9ÞZkHУT' ۠Q!>[W;ѻ,6& Ix}#6leNT8&*68> me5O8+et&k&7C1zV)^PN>l eI#UZB- J@IiΩLnf]>&+ۨ'Vت@EeXˑ d/sPRF {O.dv4#iibJ*eUfX6 nOD dizI{T$EQSWώwʾ 0FX蟿\!KV?vRHҷ){:x/_čnHt% uR8wCWUOS./-m2XUPPŵ?ve @ʈmsڕ(]Yf&$bGn+8ؓ HTw(`sW6gEif/0PY>f1ye(s>oK +/r |GVv/T0:_sA9F26;Uԙ_ړU[qZQ U*YB4$xeI"b)3w_/h'ч^"y$YLr$I*>k Q3dܮ!zG% ksj\:8HLx<ʻeҒ:8ʣy 5Qnt9E]-?juSoL",%ᴛѕ'l/w6i1u%Ѧ3ّܝa(kl@hV2CpZ > ʸS5/)t ʼny1TD:(V9^Ǩx4qu qQ ߁"dDTTM­`4" ؚyj%Z<o)7l EuMX!@dtӔ9]HE FliBXoƣ.٪,CmT,;Q=##aZv|uֺ8e(^1tFjނ1Έ Rm%*D:B}1+Ke,Br1Kwް h9%W;ڵ~D]U{hILޒ̀LE‰,89i%1lCȄS"hFn#4 g2G)TNvfne> Y*’i8[j$*QbЈ3ȈLp ֈvp4F((x}77T݅,4Ji)IWc/4;\.u{쭉=Lq:U)E8q~IC`SufXo89&WusPĥ+`(e75 PtVj'WoQ(KUp KOq?\T,Mc}V\D!;)0Y %L,ht<Ą饟tKC#<#.=cIwgůBo=p,uKw\Cqcpb;ZEOsc*cgMl64KdH}4%f{ SC\eN4Gٴ AB (S=ԀN.{c `-}Yvzi2fHiKMJv/7j4ӿz>>"$J㝷Ϫl3%1wQ';$u>.;s [I95T~黎'ʀN p|^Ӟ-FNE ^ J_@*#"-`Uw7敭{6bPE}TF9P{!_4qZu&7ָse(ԣ @-ZMtclTxOgMRBmZ }7_N3$Wp>PeMu7+ow~BuJs]~CεV>ģ$&rׂVdl$#ipυ]#|80a"wd]Th!hH ?Xᅬʣ<\8MNַO46줭+ERQ ro`Un=a:PnS#3!~= 7pJO\MgL=!E)qz(Y%V /+0GkJĝQBls|UЍK4|jLl]\N-e볳uՓv isc SXQpf/aU mBE΁XCn ~d/2@r))`^uw ш4gJwSEx9.ͥAW$0?x:!2ϦN=n߅w#jX%RGcl/wuئ!$0 xźˁxCcي :o1N+pu7cVSa0yBUw3s#9Q!0[GJ3V`LIa_Ckx$A/_8 "H* ]jI^dZu։.Wy!9m.>ez eC-3w&pph,?Wd8ޫ<^gvZV3w:m_ݨIPntE¼,B3n(ALT[ V>s\~qCBR-Y _zfEUPp4Ӿ-3m0nd>=;%dPEMvN+'aCKt.U}l3*<& x*+N8$DKa H)߱\%Z  Y7pp$WiFEf40ZA֜ۂ=]bYBtZ+ >qx5{-+!^Bx? trE!Qf!gZ=Kjh:Aft vDF_}=j(o#jT°$XꝝfW$MיAf]f*=~{pLjVs2ʩz{k `wsd_/&5KuJq?䫨6.9[3|S+ A3;ʰC|.uF#OC m4kW ՙGAA7:c6`E0&سy]ɉN(gt>3C"yÛQ= OGHdؔΧ{A鱵=LCI+ aQAi^j~: xH9WEΨt ^*`}0'/e8 3rFw[g&!"HF<"<*g-7B\ (^rwPڇvY!fd x./xFbDti=ZLCY TXhE$.y}^s2\] 3J.[&Y]Z0Ҡކ*ߝu>( @-AKv)KGu+Y`'7—i"r:Փ1xT̏vgv*?ÊK{q'zϬKYlct̏aqV`NWQa%&1ڸZlЍ\|_; @?ض˸hYb2jo5~'' r|p"tCA\Å+?%?=Z%kz>=Whbsx ;DZmQԙ"ʠn#Xlftv(90b'Fm8X WݬDUAN !Ksn _R 47_OZOTKNhfݏNeHTP~uJ[Y -5-3u&{vRJJu8T:OوD;ZlLy(gã.C-o<3YF,IL+4 S!c}wִ^o‰~-!gx`Pɦ_Ǻ򉻐Z QgS`$k\v>q˻:@)ӯ r$MIڪj ._Z{)oݖ{JRTvQ$T2S'a'2OU7t- +2Bz>5ʲ+}042LȪPYqpMIry\Z%x\+}q ɪ6#3&a"nmHďBQ8~a9d 5fb|ߎ'`*6D2P4j= &\s T?w(tBj9WۺnXb,L4lx^?em>4V}L Lį蚦Z=".:s;2=nmnnKB/I\dGIW-MkT0Ir Fb+nL‡vqS6#nιص;wt"z$>B[5YzMiutIIS,iGw0qvAX&'dag7ۧ4PT]H_"R'.s\=O'1s-N!%u W`!ss8wjGһ=f8ӈf.#]fӷӺj[~ h$.>SeNu)qruZw/MĮAKS*'8_@U-G~]Sp (J 3(3,H47GUSѿ(Cb֊_3Ա<\E6})vx=J`+bNob_j6+ʼYB[CZ>1-wdSKW|كHYR2Sؤ8|W|4ng9$vx={bI'md4*1X.r벪KJas`?HǼ) $bke93kʱ\a'"(VḏO7FkS/#-"p"\M-eaFfz ҋJ1c]o}}mDуL*Q@S͊eGZۢğMܧ\" 6,i1By8K¶d]LUvx]l mnm ZiXYbL'*}:YTC2*Ik*[1:%e1Ԃu \gz^Eҽe~/vT ^--ڰb qŲ^ڷ l,A3A Bil 9F ,&_2 Ÿt?}ԏo? i >1|*9x`2Q l8;2 z!x0+\$""<`L{cƏE&xҴл[ f=?\XB0(g^(OkTn-<܄z_O!FBCf\YBXOGj>?+u Fw,u>vHu/[#,yݘ n_rV>:z[<;< n_ .1C'cEipģ`H*TPΛ(^v܄;MɕEijk ۉ- CG O~B ivł8V`ԜsdSn*v Jg 4?I_v&;ʫw[f\Tw,-?4S/._p6\_&?ܞ)d>3l$-lŘVLth{Al܍hQ} 9M?,Xgz?qOyTF{HLƮaCtFxNx5XΑ7\m`5w5 eKڈKPOU0%Bu>DfLS{!&`WO2&8'!Ls 9Xɯ9pF?vX /䊷A!:7%h{;;fnǣ1ZMmOC!} '^wc7/,) ީd2"S`皜8(:YY׿hڈg'0 db7r[%TL%"*DjrQ-x }>s)ykt8ڄf 5̍_߾!yaМ:ůߏGsڱ,*juHųՑ _;[a=YAf9MyUԁt<'%*zaxTTF -$j/mQn5KWL2=h]_J#ix̌K{DhOi6>m!`0,ු8*銭?J6 A#R:h mAn.=`iBg"zr ~GX Lڞ%z\u!']zP٬Gbq~ Ud3P?3 p2Ah Spe50Š< ei1Dq A \VbYDdҒ \t.n#5\x1ޥm (H=uF(+qBn76V!W5J;¼A"ݙ+E(a~-VZ|j$'=yX+]^PDbeUoz |K`vZ 07PiPMo: Jf<>[([Nsl^7 @ f: 7 [O ׳m"X/A}IVSKTHj'itpTrdxof $ż挤VeyZII1CvdN8Ҥl<= d|[Ƥ7k[lpN/,*]v]¨nI/+ٟKB2+e*B_$^.{ؐ%*r8PC=aϴ JBb*){ڽY,.rnNFM{ۃ[GjœX>)uϿ!UZcPm8dAmtyRM~SwCTH*+'q:jw/V!?0!lLy??CDk}&;ʣ%6>_RЭ_2E?E)i1>/7i '\x6 Wb\8w/!xD障Ox9Y嚚Mh>1.jl:=[R4$aA5 AX!eI&o1*Q2`~_#Y@TG >qO$썕C*NbWm+B4_݂=QG#H/o%4?wFwɩ=˖%M _"YJ ئqI߹Jz0ԭE %)Yu=\|vO5<0mCRL F:6cx㾕{ ?l5-[aKkᓤ,?^_~ngA<[ Oĝ'q[IY3lSpnR9曩OZ\-eY6\*`AJ"dZ?F(dcj2neMkѴ9ٻxAxM BeY1&NX@2'9>dM@8 g]":XJ~pT``HGUOS,V[z6FcVP0pFWl_tPieS Vi-}8 ?38M>{R̻\!a V{PiS3ǡs~;CY^D ߾:JC: yT$/,N"֝xKcWG3?$xJ~>mҬT3).Y͎,gx ½ >T^¶b=BFr4y n=>-E\Sk`]#V vqÖi`dVh!F bKtv'`D5Y6[tAz0u7ߪ^6&ݴ6c=`옡|# A۱̑"nlOϰHOX7a~a+pmǐ }% Z#Dw!o丮Ӹ)@@QL}"SF@MU!H*Y} z[*X&3)&uW9sN21&Nca?nI#qEup([FbhO;Z֫'ʀ٧gEɦ`_CnBT&~EXdOty`(Ύ \5ŢZ7c8ٙKDFF-\qYnʨg"8 5˶pFS1&ސ]R`l .XDI?œkCC˪xsMk< &{LO?]*O *1_F Dr 4G"H a beheb<;X Ci {";R\h{>[[F$[ߕ p5!!9 UTtRxvL!o{/~ۖHNݯp.Mڪ.|U-j=Z Ǹ25BC3-KESMۄE0(g&utr,b~rC*;M<:i&X_OO?waQ;V#4Ana++Sp$.n!* &8bGuCjQ ͉}"*ݱ^! ^ulI*y{*v^L0{'G:L0pP@]L؀|XBAjd0uqO4! Q(9\z"#_]!H=&I)KaHN6~YI T&_ .M˝uiNx,Ooº Wf؊3u%IiL |1=2SmCsLh?SR.Ȉ<؀><*Q4Ӟ3vv2ȟ җ- gO&j0d}_1XۓOŗ5)4VsT(V$'0On0;]Mp.!&tSZ;^~1?O>6R&]|W} Uԍ$e#Ҟö!ZjRܑ􄔱@Lyaf;t@3$wT6"2{ۗqK^sA9zd`]x !oHj |,lNS;|6(abY W!Um|8ugmI8V"n˝b;Zm0[ܟ;8RbP\Y|[f34G'R6e:\lx +n8xoKCE=bGpv,|n,awj#`2 {KKS=;6y (@֦,!}dT FUߊ*@ss]}$"Żo\zl%-}s_D `w񍪕 :/SDr+yr)qaM|G..yOٽ26$; qa~(])X*,}\~@s,iWX㈐nG *ͬ+>d;q/$:uMP3,̌ wIJ( q}CA*K#jTk$Țb}:6̛5Km(?6|?tmMWt,U?r( -kH BQ'Xe7c:j"7AzqleG82gQ0LMQlx욯F"^>?hI5=lUE8ڨ5{Z');_M h&ĸZAzN^m׾|l5RyW XXÕbr95Ek*T}wu._ s܃N˙yqt?6KQ<YZ }~ϗɪ'#?N8|oͽ+a$9gWD> nr/ic:1$7]>7YH.{YkwM!fjn7 [PP8 [w#G.U,Hj@@-]Y]\jC?HR W(.yfkDL} <'^d 2 w8bîH>)Ou{Z5f3IxQ7=&C;+^o H(P_vj[ sr  ,|Fr&4M+;Loxj[gaz`+v̹v0<"Qr0t&(3 6f.A"w$Oq#[Z*s9JeU֮-V$M8s J71D?gFw%6J?=# [ZMm2[(H`@D, }{H yM _49Y"{# Er &(MS:5HbJio4g86X4mY$u7# UK^S@Cɤ-=AqƄ:wr` ^ٲ{%˔aHl9K=!?B? ;%TIIo%2dD5 ,1ˏZrꀡ[;w!)@8m,F1 pm,zEQv9L}/>-R V;}obxuHd4~޿6P3v?+ ){@]2u|TrcwNC "8NsmAC;^^l^2oLT `IVmw4CHRrC+fOpZČYoKabXbvqh=CϢ*yRU?/7& W/GUqr.s #h*9>+8eEJF,ytu>z\I\_r&\3#Ct=?>mxbS墪:V%_ ΓxFO-۷W݊xuHrҚ 'm KV̈́O+P}A.F>Okyjwe/O1>poar*'Tb8eZ] Vs^Jwf]'eȾ@lQL1IFik&#nJ<`&B|AU|lc9dp#˻!&-cyMgO1ejSجes#k±M-cb K`uJz# Hc'aT}(SͥJBL;]1AGlsT,U`'?d>}NC3YƼ舓==B&J(_V:dWE-⿖*=A8.#˞ 9v5v<{ZjCc,_zK6ԽVqb/!OڮBުZa;12F HWwG t?B% ɼ@/cU)?EWrx[!uTa;]jfL*@EcހYswfT_"O+t*6 6cQv^g |Bd" -Z,R[5n2(P9w[/(ʳ}DLECAPu/xe,70oDB-6QtH7|op4 |KG݀Fбe0c1gKh.rL_ ʁiiV33YzU дZZgmGN̳*^WVAi}V:@b\4.z+`Q#)5T'=7E#Od$[u 2.E^l՚wg1Hע#%yべ7iu H RƲ/h;)"Nuqv6Qֹg+]M/xty}(+1K^##ҩE}dbj}|ez5<-w\Vŧ7_#]D _ ںYAE';H̵`)WxV#|&8+{\r l%W@QvT˛n!c8ŗ DNJmPu NNg^XbFu6u qDE]71>APH\-lӳT8+{-[.I씾>cl!ūoaO)-r]Uz6T!pG[;y"TC( :ϼշ?B_vĭnmSVMqښ woRȳ5/:JTFv~fL`=۽=*c ) VtoʀbnlPdIcv6R&?U"%h{jzmR+ |d$r^Tx{=as4f3]&~FV ! ^xGvU_ NQG?oPR;٘Yu<:NI\) dV~ɍ!nc0.SܜƵ<Q+*ݡ'+A)%`ԭ,sQ|:bd%Ԝ|,G|)p|l6>+0TRxeN0ܺrڂ>55BL\%92|I[$g'>J>[EgJxMUhAMzz*x:LbYl B,؋Lh/w76(8j>!/$}%e/#K2K^^f:=alq7 P!ZM=-i FW}j 6 ͊h(K|Zlr1RZ}@a"qx/)A=R<*9"Z%pv !5*s[B%\#x7 (|֨zo::"2 wߟ.1Lc& 1/i P>u4 XPU`5P Z*MG& |D* 'rnх)d)dEP-hVotͼÙ9:WPehťH.K kfJrNϥ7n+/Oi)o+ŭnfmY0s:MM׉Tv4su )1S x݀j%g>ӊZ8-rhg?,*Q>vk"~*g}ts9 $E:_@ڽ;'-ڦ63ձIh⣪SGbpͦQ'n.kBXnG>! Fi 46 {~o(u鹏EɻOfhW-DS9 V]NcyYg|DoK8P=g٧5ՅR>>wip:pg'0YMx@Q7H]M8QaժAmH mZ;tºqsH( j5<3ô?ɑq2l_6Rz( %g/ hO&drgtќ |!%Q 2g.P SFQD: P-ru&h Yjl3q"NՓG3bnJ_[d@BFgDĩR.K&t k~] ^0ǀMFnxYȵǝ$7;::LPB0ԡzi * OxX%رc ET"/oc,a>ƶ]gB.'NGb-cJv>f2\)S2lEzp0Zev+y#{~U0d 4)ԩ,ACo02Ւ-Y½!yo 8GY0c8%C85+oy`Gk{ `#9ydQseSYk蠍(Tmsjpj+s8~P^t09,kQsv>V4 ҧ:+^~ bb!c~$#UWo\+XhnA9k>r{gW{6m 7>ኔnPGɅJS4ZǴv.Ns֘PTsu땄Ȑ׿Ӓ"ϕhн-f, KpOtcÑOP1rCy&ѓ,IW^x=fpq#vSڋ^*hqf.^95ۗnv ԏAUmt~Qs~v"I[atY]+f 3\xE-X}4edDO@C< -~{Oy=rI8%0cOz'R1~gbK=%FxZ2)5L&SĹo<&l*2P0WVRl)(;2iB(*J8?iﰧ;oHv{,2!u5r謷 os } * v*|LNLf-ƅs]1!Hm~g8GԢ{x: |Q{">^pߌYG1~S@j̋iobY:i+[(&>PERJjQV#~(1"40Zj5^JUl,$Xkht~نSW{4F;\&C$d>MFUqV`D3apm-aD}4ֲb >PNBد.Wo6 /'IF0&~uʲ񋂆r HQ<Lxʡb3&8S7z2 r嶆wQW[Fi6ƑA謇s(?K. ktT*s}1FV<]inemA [+/Pfj,{m*MkeW[UO7G%g%Cx`357pzWan-M~J|:}*WEjw;s'ka8]gl>~UfJ`ġrxƝإiI$C:;t)4pɢEyxܖ6a|{۲iu ZD'4LQSAS!HYJi = <]_^lؐ%` S19A c̢iN\}f}5\L3-zfR(L@ӥ%Z G Dq 麽 @Ŝ*@!x.X <nX#\T51o5n@+wApH ygZ sYKv lYOtV /nrڍa fW=eRwu[KeΔ3'wg gH-u?Sc$o$ 9HHκ<_# 'XP23(oE 3 zt!4\|6R 1|}+@f8ЊTn&uJ!S/)$U·)u" HDU~ HpiEtX ~Hʷ ߇k{ߠcsNG9puMWrbI{b, 7Yֳ;;.X> )gr0,,8ht#!P5xVu︿z)wQQ 4ecy17\k*bF$H|$$AYI$C̜!%I474~avFp?،9qt{IJgR֗!GB#u3O6z;Zc*n+`ߔ_Vj@k69fX7Yvͯk Lr_ɇg{ }y9,V: =NSIѼUǣ<6j٥pΒHMokq)|v ֕tr/7+վ;7"' Z`ͣ nu()rrX[Bq)!7d;ܹ0WhFUMD;CluR]Z';NBo^IaBDdBh }5"%R/DP4 U6J &.ߩV-L h@`xgn i]hK}YxfLe's5B͹QOO9hO-?2O5x_$7А&5/ۥW 4[I%^D1N!UF*g6&sX)"~N} E&)ZZ#&6qLǙfjoSBqتϨbu˴vK]U5Ki] r\X܀@:b8Ei*%gn2N"401#j)ӵ$ ̃,:@kL.>\C.xՉȉF,mҍQ+zg R=~_RE[Z@7gsA7F%2OZ_:!m oೌćG5{hz[Y 1Or4aڟݥ[R9O~ySVjViϨ)RtrbkahmJgZ9B=̞7Z4kc6k{?bcdT 6RJD]QёPb,Mz.eA!kzm|& J_aJ]$JQ1ܧ;"}%+DDeޱ@BȒuMsE .ilh% 27ViR{sKnSoD"gx4pIO9J5^`n3-h*nP:9 tqj3<35ºrP1z֮A$tw_N1fNy V=`_~}q̚oa˙C#H%GTI^:}WV[2;6ik<(p۵5ZZ}^L_ I %7w#>lA| Ws*d-=ϢΧA [)X߬iPjt$rs"$)C#s]gO?zʒCWJ|S3ܒ ߛ`rx8k&ȯ/Ψ\@u3i wbE _d]噢#Lc)6ʷɆҹHXo>l>ЂzY[A &VfX}gq/[rJZ>) q g֦&{l7=Fs5o\-zs#hL!F͕!g @qP'X5`c(6;T"( hH1N7J'A+5랉B t$Y~KBZ5Q_oZAs1`㵘ۆNc<7Yz1{Aj\i؎z}壷G޽?tJu E)XH1踻1=G鳥5$RXS.O\xAt*9|@'p9d{c>"簯i]C#'e]}f! jFҧ;koYq$.6AHfu3kzAj.S3zZ/{ȑ -<ѺDGmwAU[hr~#s26J1!-wx([~-+s OYIт98(0w!N[cH>WYl9 a{'jlt!Q?aa7eݣXJ ,{'aJ28#SnX"?7,R|V nOM(%"s$HK _Ld~44t& mͯ[՝Í p݁C5?ūbo~lkELR3z(Ϩ` != M ;boAqރ15`5.W*p:.ЦQ)uŤb=&T/ǗCu1\ qX-_7/9}yHpYr{ewҒVk*;l1ȒȬ^ݷ%v!d͓+Oz>\3LbsR hon) \O{>M婢hDi<țG{~A.2,o %:?('M5`G j2뭥$_F ,fOŕԸd '3XutCoHh_ fmnX5_ͪ1?\[4! h<#Ywg-UǿW ~*s~SZV_3{U&A4(8 2 x;o ' ;&ɕٰbLx;XJ4~ŎL)x&8#Zz}Unb 6TpkImCN)#M%.]R޲UlCNj1?Oyk1oQ -kbN#VYp76~k/cAi dirPUQrp"\"n7yUvH>y0 z5Og4'n/ TrMFwMa{v-??: li¶#oa3ܫ`8)4|Uq`r{0%iz(?|z2V"A ZfjVmM8vB`NX2c8J}8UrTպ J fl{K[y"*3$Xd7{1)|bhv.Z=q:bzohʌDt0Z&tc̈l? T%4m_,Hh}kQb|xoJd%˂%^egart?N{}G/ QX1SmZn9r5]"Z:_vp3xgks#e"ꏗm3pݾ-zՠAd-PÕ4Arh9P W#8Js N!E?g)$+6kRe#eߔP| 茽/1)NlIj\Jm CpL@mYl6P?d2i &"@X=?t:T7$(nu< |(ܢ3EkW,̵0O>HzH``{ۇLA HPn ZD-B}o׀&RXb0At~4_W˱CtMƛqNEi8ǚz^ b|e8s6hؠA_>iKEip?F0p'!4.KYR31uǔ<(jp0(1-xC _P?X h>" -[VrG7WtM#%fq3w_pZ5;B*3ýxٟg~Vy;ML![揌A 0?XN[N5Q) 6 g@] qm !!:]~FŠ>py{E`u P}{Lioxx-C3۔R6>(f> EVqIO5{DB9xFBF\wtO{Lf_~GuݠOEgd==-tQ.9-)JI,@՗8nu_KGh x`:w |Fu$*R2Ew͢ .)DA8ӟN><:;=XvX1+O,zRˌe v'_1bY&%#D4_QB0*Ûd_S<"M_{~^Ʊ#AQJwBw6_:F¿FFmNoj-!:pbkgʔ41?z#x?\g;N; _%"ߟ,JE1փd1ZsXOW*FʜrwlUi[U`I9;j! ZN%Ri0xsPFRr01YqW_>ieXF d`|? p? B-uĵ͑J 0 ދ:*y?BSBI_1W\fWj^K 3ҫCYrZm͗E b5NS Ty6rrN0ƒ v~I!3cE^VU`TG:ecCOI&$J9=]V P&ZÝN U5Tx: iS}Σf2o4ʔt@߳lWE,sN431s+)dGJtH:>>-ϖmƖ2{Nջ(}p9: wd5~\Љwik?x lFbM[Uf X/X֥BqqEh)mVЉ':.VK'Q-KsųVn`4LpB4ajG;-1O5}PaS>7fM4W22<a%"&͜|aO4RoCEBUJqwgB:~{S.?T'|X7y#oo0 ꑬI;̣2ߚ uZn(۬wSD8MOBb*חe'%i(;,P[Y16cU5S8LSAs]&""W``K(d?P/~?{RhKFÆq(1E>˖ &\1e]SV;gAg?,kCU 6'3[Zi5HA2G5ssh_fs+Xl˦K2\1 Z\[[R%YB2y. 5@pM=bwMFث-d7l &ĿCO_loUNF O/ϥ@A w ۸Ld90e`9Nep+ˇs ` ^7g/ntgΏMrUzHma+Ax"Z*\rΪ6e=9QD +~׫ 찼GfHzw 3l RvԈH%蕛J_oQ6eS}7r 6N9r˹{k_T[T`uR8wIv#jo-a9-'|t4۳;`,t߲n!c$ hϺ@\h"mwӕ4-;Tɖ_V SV:>rH <)o~$n3 mwy}%dCͼ (![ىLH{YOR'҉ pn+1 ajLrϭlڏJb;ZiV?W]#QI۾a`Făwlyby};>뱬䪱':\!Ó>m]hFɜ]9su5T\H/V}I}HhRiT8LTyj}qM;0 D m}G͇OT-R۟u$e3<ȸ#j6T`?Leެ쬴K%t`?BC#v sbk"x"Ꭰzhx>mPyY@"JԦACe}MDq)>z,o_ݴb^<#KetbIćr*홈n ]]}R&-d8ZO:'Ҡh@Qa3URh<Z_֘mol,Q0y{ B$ ;E8rH:՝[Y^\)Oexr,q!)Ee 2fj}']p3:0et 7M %(%%QkVOwnp|,]hy޷ѕCdn!$ rn9nJ5Pτ""uG "gsS +&I)Rf߉%Wn{-;?hͦ¦˅#V*-C.wC~"?ׅWzQkL< ˣM#E$%=\^̧N*JwgybІho+rQN2+-O 5*4KfC%yolDP0≟Askވku P ^z*P89EG0S,e͘cB8g=VL&+ l*ieP4(gX"Ru`-(;"`zO{9M4*W`m-EIi}>V ..hN5ŒniS{wpBB'1y|K^%;< Yj# c* 'eW.eNke==:듬A_7ȡ=?²sm<~3"wvyZeKU C*" I;;iwe,Þ+'Cֽ*WkcۃΞaTՏ34)K8):HJV7J{>&ʼ)N;z >Gd[$jC5MCc2y鳼u5 2rfG{Nna51r׶%0M*]VkΞqQ {(J\ uZOq/Bz<$leF>-|-壂}I "gPq~ ^ߟGvAUN/9'PQxJ;(@ӠbBN]΄/3g"i|>BIJVъ0\&RF;{6G%3v*2>/fjD]F~8|.IoNY'pڎ7P̏I8]7[92?6 Ror:nmvMgԮ΃-ӻT-DQ4Ub x9'l̩ # is).HpK&"x ޫĜ8k_-' A/镂kshY)aiT]EL+eΪ3ڴ.Ĵnr*e;CKLG 4K j~u`. 8υZKU%'*-qr>e"8ö0 f58k`.Y"۴&B3< TYɲ fD;qD J"8( )+U{|Ȫ[~*"؜VAp߼atk!Dg5ѳn"t4[1@!ޡ1k6fft?HE+}QѣCׂ?Yvr:W n)XSHᖷaPI1CD vHT#ܠTgˢ47X C/-/P2h𶬝hW?k5cy7L*%8,}cj:wjAl%ـRJp5FZ-h2 YNvrOj{m-w#lej*46M?=TxT,&qe w_W?!;P+Pszvgfr٘we81&<ЭKmCtup)J cw2bԗbo~[gDf9sdAo /A@#kkLіfF(&>oB?nN@+!g 쌧* E'oNO\ȠWez/n+W&=Tp!!`"Oi~FU+S%amVJ: Ayw١2EGk}{:>7,n>{τlE\3CaPYbuncyK\ȈO(@5% Zk]X{H@т%g9n jI9&4 =?KsG-qi/3Qa_" Gaąr@Jo] st!d6@Pڳ@_U\YkqOP}CI8rEC bi^] @喩N =0;.GlwZ)y\ aƿJ2'3Y/=hڃƮ_ӽ+k,87]a%FkLzDg}jR(YIN`Z^K'*Fv lAbt̜2ԏsMH2i И!U$GK~֍tT`;s{DڬI!(¤<2X*mъsa.J:$БzM,FrK-:,CSZ 6];@BplUTd,J^G2S6DIz#2e?68Γ?f.slv,q*έ|jYI^ogqp>\~~IK^%P]+Qo9ӸD8pb Nu0Z}_ĶFQNȞR+f lbӶ{F (Er~ofAb9/D| $W`IM[F|iMa?JCq\spnfʻhfo+5ynȸ(lۅb#:〉(}HZD8x̎0`ӆv1I&o61$޽W&&iD#OFNt; #m`FjI;D\xrCi}*5QPvTH2P)dkwOL0OhҟэORV!#Lݒ|9VJ%։=ոgl<}PJ8˞ek$#)G7e:-.} 2 Su~pkIfdWd̮KvS|}YI]w哪zePT=8*I;8#D0dTAUz"&7Sowz眶mu-gr Dr c WWnRË@դpigı]qGRt{5i  ,X;VRJk,!X!0+]):]*&jޏV6䟛Ő3ڧF Ɉ г~ t qY+NYjG&`*Iݿza1|{k!@x3y V~h0>00L7Őydӷۖ _c\4T,71 C];B0X JںF_hR\|4|o3zji3AC@V@F:L4A`auLOC~Qg ,dքc!K' >msӰ\D}2: }RH>.z @ݧF&D `g qpߩfȪ,c/[eTC} 4ޡ@5ypY%]Aǿ3קrSh `j6KJަ_ڋ1 30;9eK_i_tSfĊvYh aWCT#cI>gvxg+*Ia b :Cv~? jBJ1Z oϫm7}N[#j>  ZYJt:l/ 2-*N溄Z+t^xVH]}xK:OB[)  ͬI:bpL^[#s4帿c E:`#أNkK\ M.wCVgN#85luQ? $B*D67`aw",ANmrKG\*׮G8n JB?Ym{hwr.}glx?8?H23 "TOtj4EM]r&a41$!V \Y,ޞĝ gJ;F6NОF$Ґ&/j'*$|aEŝŇm,S|L c Jh2MTvʺ-* +k}: JJrKC3$Wy}S N ;6Kz=l_gl5!`x2%z.V+SKB@HQnZN. sY(W|ĕӣ8ZFڊ86 ZGM^^7oUɉ&a[ǹvubMϡ,Q(}8),飖ƏU>ASMt)Z ȀpB7w8~Cx]UWo4 dQ2=Uf_/QwaxZG̾Y-%r=ׯCCpmNPSWb4דnI [`&KW/80 ^=;7.hx -d"BL2}x)fZ@~OF^Zaj} VKJŭ/naQy(hѡ8GZ%9`10Ը,j0 D"Y:9YFr,fwi+ UԐ/1xm06axj{rmT%YI /~Cb5,-ڻ}P]-CNiGbp> #V d8JUU[@Bs6lF+V<>xZBq&_8ە?4ć P ؜N5p0id5I2 !BD(ԭ'Ez`\bfL[h<>6dΟ˭N/9FBHWzK*7J IRjU,YQHy~N(@Jxd ';|.1%0.ȵU{P[ cGJJ]=M\ݶͧ]5  8UL3lq#0˳ٽncvnx]?y=Z͍hQ2jyX)' kԚ"&%(\Ӊrµsq>2R4pe|vߖ!6IDnI$:Hd ,*r(~g"XԼf o\ z5?vlI["NgںpߞRB\VX0e~yEGݜ SLC;.5Tк͗ w4 \X ~& ~ws<7a5/<꒮ #@a{c)r3ĉփV{Bw\]ϸXMW&le[5bY'͚[ WݗXo?cU#z2UIv'D!KSG$ebg z^a2b* UA\7:0ʓfJ]'_Ϭ#;IByzz@t;kW? g져ӀX0׉7 y^q]s*814=65uCWxdTII?%SF o7rBv|RS{8mWP||b <Ư~Ft.%ĬyIN@{]fPiёXWqYUܨz% B Rv\a*7Y7yk`u(g)$$&3$QW(CҢa5p0pT䳀.YΪa9Wrܼ bOiI^z-\71d1ăs'W0<)BqLZD<14sO;M4@L,q$Vkʇlп$ͱ!uz:zJq;}U+ glI|^wȋ]A޳xRke>5kHw'CMvd*w{/sD 4һJWy:9.{u6 h 75PknC}IbEog^ m:|mw3OL'W#2Qunk8{9M!pn@y߽\kDJL=(['G87G7`--N,mFfRArˆ'YQ& r`/%rۛ&qb `V ;&7zGvyO]"& J _>xnDԸ} (cF3|c',W  |nփU!@5j5#y8FVJƢUʬZcdAo{ [Uafhn9]ŀol'`*M+AQSD &E M.RDG3YJPZz#/0Lm`7Z2L"W>E<\_L?BӄRkyR9q-?k$E/\NCgJ=YC)\3Aa5)?¼|3>ڏk1d^&\IJz)"*sx PMj>Xf;J~b|f2fz.NSEQݖX;R'MyUyȿVmJor3SzYIXa[)qtLAʨ;J)_K_ >y-A`KS "_I g^ZmSOzk(48+ X'mpKъ4cCOm$D_)zQ\a3$Mh i=; [8 ?%:Fl>|.W>ah6bc"r؃zđ󄭗?pZ'e tOS$uȁOdУրSTE'2zjјZ_u-n\d!q)6iȭ[ttJ,`&WT@A9 tg, Ht{ݗVİ阢LⷖhUt$VqFP{KלJTJawi(_6{T=]CaKEƞ~%; a":,V "ܸjE傁 ,^C@C)fvN#aWpVFtK:ZeI\^Xc({nG<~$0aY;孝L؈+x*ܤs~ޫrB-P^`I-r,+@8N`pQX;ɌN*Sz PGyԧM|Ll1fPJ"DW:aVG2v̌@Wyt#r݅XHfNj(3QE@&%;&Ui M C\L`m]x1ddp4v4߰8ZIs`'qʤjY 2}mJ)ĆZ~ sN9 8[>~!4W[WEd?  "[*3↘NV"jg6EA [kOtMhazSZ"@:IpԘ2l˽ՠ0\!|<0RŪ 8R1H5{p"@st,-٘X8tB l*}:S Vx9IjvJ >-q2|X5CAցW/yК;+GP%!}M-2`hPDVȔs$mq<uEOj/h CZ=<#JV'N=R+ե9cVi {^aDTa*NF]̿`1 _FMjR??u(V}S|˸f`=,}i /ZàPh4L|}nlF e*`'o/ ,먶{/X%NCLs3Gy+ *jb$pR7J/fe 7i+D8x';kPet?`(`Vf%.ˇSXٖ<g)e0vCX *0ە}lBĀ5$nz8meҥ0sM7C& T^aF_c=`|v+blf8C͐珺qȁ$rg,x,_zY3vL/3HFx^#4ÓnXZS$~bm>&]j^49'SCNHCG_>~8 5j)i2/᪢Kv_V^A5w>ZfYU6FܸYݙߙ2\#lq_]PI@n@CYFIwM%a{ƪ rY(lħ!=bli{@FBp[7v@Dў;*)oҴL0q2L7ᕖ@lgQhrRX@[T }2Ӕk./m j^7Rֲ&V&7iJ/r?1*I> G1̪7 PuXYKdUZk4.]a8" e>.aHX>(2V#yɒd`E_,r}EOrDx)*`cUaxpZrK֬[*K," P@pmr\K(E)w0P[s:L@(Q K#[l-÷5KƔ BK6, oi|3@wHr&M$#B :۰ml Fx{@<2p0x7ʺ1*1^۵UI 1u|&@D_Z=Hh L mQC3Md޶ƩE\:gʊy*>VrbthAHq\u\&+i(E\ Oٕ=(\8Mww+θD^iaEb?B,qϝ'2SOE9%JXtwzD}N[) Aq iVFwE0582UC4Dk/d// R`RauZA;0VC}(fs#^ڇAFo}J5iaÿqlV"69 n O 3?IHFCVe C,3Ml)r?+i̾l(?TZ"2ēP\U0.>v)R =(%piwq,]oΌTY]Nh{I3Z=HσsTYەvT0O鵬`3?7w||ƫ)~)qA}|dp"PvJB=>lZYҼtrz+t]yMh=|guc8eGA^|vMcio\o$m|.V~ vmAȔeJHAV )@Ȓ4jRn=+kM΢1/t00 @~ LxN1·UÈ ³^`W U I2Q/>Y4I>a~a:Ek)6gP0Μ8e$*wgBl$G#^lC?^E`#l}79?|>U;;c>^>zkv0p^rNZӋUw] PFLW䲙%gWmYjs`.5SeuqwҬRGW@xQTGV!? h{7 |.7Kko"kUUe;|}n CR^ eO/^ tHCϨAscgg4$59}K󕄌N},N-K.XE7rYi۟rB>m:FVy\Q^-t*Wayiy@+fۛFl og+u9zkN:%5aWNPp1V:Q}Lj2M`h*B&:gͧ{JO؎`wzE'?DY+Lx'X(ֺk=#_g<ySCx':Ƽ4$dHojݹ/}EU^.1@ibIq3"0mL6UUg)цQ"X6k<s&8J-o !F+5/a(p)EcO$}kvpRqfDݙ)עq-mL}x>Tox"Ljnҵ/CͶ f|ýsԫ ΂-22se@6{+f*9e.nw`~mt{o]IʱBB8bͽR!hrlPj_"h߅ v5haFl(_X&y=чr(6&P񝼬ql ) ρFeeXe@ituc/}]څ7) kPgI$}F Ypa`}Hj>!?u)U=o ({B/t53#!Y+{1z$$@;"$,ўabwU4+0ꕏRUfU3nT! w_D{k6e .)Kl?=/+OK "UR%69 GnPZ)炛;8-Vj܌ wKgyzZ  HCUs|4u K(L =jz:th+1K"tXnakwu D`22%ab !jf;n,G~_q" ;>tN~y9ƒS= vu#%SJKNIHPlc^A6$5=vkI~ ,iGY?&`ٗzu<2: 5Fl,?z1Hjv2g}2?xn7Ot~[69``G8 Kxjִ]b/;uZ+g*2dsfC4,vh)6rˀ[DJRFBu3aJ'eiR|7!WhtMkv]z8OizX /\& Pn9Gx@~"OiVKk$?M#@>e;0CHV=l{~Py"N%(ϜbaӞ=fGX~!J"6ikDxUzM1CkX0fbpсgۧM8'wiZQ9*QFq) -,K?]DI|dJ{/`c *];';4Ckᯰ;_{ߎ*tPq|Vm,s ė./QԎA,B~LBvݯҠ26ޗ %Og2BڠJyIk+ηܢgqHfi 7Is<.L bB-(52ud᳛ݶˆ@g0GANCp$yb3?I@?)!'jrW]) ϭzd~6iDh+Ǝy&j?7BE 8w]"> <tx*m}|@|$Vob3Gn>6yH'&ckSqlu/b&nGQ#sUUkt|{!-6坒ޟS- Vj<"d tѾ=ꈩ0کHae9dE@dB5Yo}sKqԕf5QVTx,hipS]/E-aߕ.$0_$UwqT ZlDf.xviW.~CX=S/$^v9{x6Ķ7V´v;4ɴ LV"*T8zX\/|$vͣ껏ėj(lX3O idL}òeI"-SZTո!R]KIloxA]mfk|0=EH %vrw-CqZZB=PhDHϮ\Kmslk:xFH_ͽsKّrꁵGD>32!וعj΀.)$ou= JKXbӎd 72 2['MV, Ke8fr5ڑgD5huRJQ+:nј_ōz LY-7tAv'FW"~RjnrӉBy_cSRCW,,էeB3Wu5:nPOj8VQIyYú/]crp~'EI-R/s7լL n\־1(ePXܤ65UZr ?XclΓ(?N;(ɽ3 @B 8.fxwp7-{Y3{S4pk?ˋIg8"Q8Nt>JkNWJg}pmvy˓5xȽ:S}ݘ7$Xܺh$t4+Mnj(DЅ0C|qZ0k4lK.-)!NW~IHdbXMJp'b@wǟ\vHr|6AQdDq[2is-aV3>Xt`EvOa'È^f Aq7 0߇Аdgg|ոϲԨۜղŀ 3 d,L.384 8r.ϩQbR nA[#0O In-ՁkoاG͞7jP9ERGgbYXr+Ly5/$CɨKip_O۠;!ur6s?r7THφhz+fA%r=7 g77xh*KYO^;̜[7ޢ~ld a(r<\V2<A3-( ;n2bZV LN囫pCYv#|Sڪh*@}ԭa lW-V{/wxF蛿bHŵ2*8| ؄0FH+S|Xݘ'{Ƕ(d I JP[.7CU F_/:vt!PFAfOW%kw{F8=<0gGƳ@ \Z]*ay o{eO 5d?qC||ܔ('(/-<$a |lMVQogj4m $~3oNKJ-ZtBp}cj~W:*mS/s%:6usE(N%40\o ̜بِbauG.3kWׄcI:N=B.`v>JZR3pt @$hQQ>$wb),(o2§ KluZzW?3iӊ`B Cw<2ND7zRk~o4i/jg _lQs{(q̅dnt-/zDdbd ]l|'1J +6ޅMyF5@6$]o~̷3nU< \=ߨh`[4iv;;㡕94EMQ{hDTTLny6gW%]L^zY8&VC;Rl^lFlpT/J}UëC'G s >+ j-o곌8Khh@G4N:C/ x Dn#VdFpyoˆQ ;rjġ >J`raKxfYM5 _BiD9FtrJ?6wiHj 5J *Gom^| w~~G,vE %%*x\ֈ9-flᧀX 0z]0 к%M  ɗ˩2R1);|@"EAZϖ<,w\6>%`mIğƑARa\ &H;!rr3;xuq' \,YF%޼y뚂o:vnʖ^&%v^?s;C%Y(8i`UaG#k0խ;mћk*-x?=C*eGwҼ[Er%ӎ̈U~rrJ6 5j9w ߤU8S +|z#ih+)#Crlɝ)pTog7)M\a)/7(_WGLMfZ)7P$IF*vú2W}_2F2=yը*>Y bXHä9o*5$"nL[/E^q}/f nE';̋`9ay S̰z'IC'/>¤E`]*eLLq<[%M١h|sĥy%7g@ŐŐޞC:n%v%XԚ}ſav&{uc` =O#ek; _tO='S 6Icrkv5ưYiC؞wqB=y~;Jg.?`\:"Cq/+9])~xI A ngyw@cKeTwpo Dhg޻YuHdc^oh.,Nڠ2V,jL+GqrFU=n-5e`XUgkRb5@it@vAU:Ø( F&s9盶E-$) ?̉Č%ZK0?RROtwIPiQ'd!\?bĩvg?:a8^.kQꛗsxiٮTcs?6RHǶCG>L¯Asn"ث??t(*v9N7զEnFĈ޻`V,D67!l[m- AwOhw,2$9Ln 얄C - UW\8GuhX< BHtN?`qfbZf 07VZ>W׵:ɱV.oB6"赣wٟ%9t[d0%TEVI#akzSU<5=P_BNzj%U+7:P?cZWmn P$5Hb=}鸥 <TXcXd-'$ uy:XY(CIjүs>!x;{N-deʲ _udd=J6/RA/a Y%]jRq)5/D%k Dںr>] 7;otDm/uْq*/vf \ԫ$hdnYC *=.0(4 {/P5cڧ_/U[rУ323]j@zD^&@N-'͊JFr\7!L2a2EYeSO\5rO Ⲗ,?̨gך^Rvp'BbyAg V͉ :(T]+rL7 ܣRRcbVmDAmFJc\b]nxeb,m=V uE=YxYBt5;v~>&(i@>NwŢCe;#RqqcYa~׻̔"b ҼPSNp*?iJ˂S(9Q“()<6$X1[RR>5uiG4<9y W7{+U+B;EZP$z[4Zirp3E?cfv駟rp5s3cKĐض1:}8_Lg/3o4}ΖoARo-N$ؼf=sTk йE" |~uuY;O(H͑1? l6X^}=kgq5/Ъ>S0D x*%s ސ:r!02IA[D.[/ =maZ vsfase J}E&Ab[tLZ0A&m {3n &Pɧ eC~,'Bus?_.nx1Vח['O4|cSN4 W/6V"KB~ tΒlhP.|ʥlЏy* ِ:MG1p,xr~f|n#˦?ʆ- kfkыpj2muP2jmR==Z؏αЧuK"W6KWh41?7a_968R1a78BXFX'nX[lXYA䂿λx``!r R6douP) 3r'OL:`iiXO-Y ݟh Tt芧N\E{l7ڏSw:/)o%?Ȁ[xТry^ RLDm]J|cDf  %QZs01mLe [1Sdqɐgj Ba:&},"M[m6J>NS^H`{`@F1ppd),=Lx0'3] n(Gn{ߓ@5CB9MØ3x`gS1rN JΨ'WZ8APg}!ZmG|41N$eQ߃:JӼ2·f40g !$'յԷbYK.~9BmJr~L*֌.ݗ7?=wi  nR'`hV,?bdaDw`@MH+8v'!K,xj]զ!w9=jfUa 6@w&S{8o:[A]qMy[Qvrq.1ν1`4<=& JZ# tiJaUc<c1K :-"O vhC@T6c40!^߳ FT榎Cj7Ǝa]rxKBHͥtodreS*g%ɔZ_SZe:>mS8{9 }tqNt+(|)g>囪Z{Bhlڅ,%ᩪ|N t*mTcWo)`ʑ/ ]^Rbyז[s"SZn/TI$F%Qadf*pMg< ͳ})+c+f9]㿇 4#e|w%C1 m#;1ycF9~ghʅ8o)|/9{O]~s;PnX|WE2 Pp8i ZDjvι~j?_-9-<L4!jHIo[/4ؕu?"*G'Բ|;?Fee£td@V:By39d,J]b_|6wD|s)_ v,4iF7o;(z)SE@+U:3i"Y!Q{YVl>GJ?Яa<\ݔ#J@{j-_ n Mig1⹗&+f_Dб`/)l q_i&* {w.otk8ɰw2TVAfJ)O.#)TwkrcllcM d.y6>N ēTM6-;.h"rPZ7"|N侹[#:ojcg3AXEݹ ~8 vҧtF1׈ʋp\Bh;sɕVǘcD 6xJ@B\kSXn ]ݜ+wN"EV+"cL龭/?uM1ywji:sr jta޽KTnJUskK0<&ɾhp+%Jvq-nD(q `lS%׷FS5_pBlnevEkσصrJ9Lf>wت۪='fP$^a~?eByp 'F'%{k3EB", jDY9(ؐavҊX)R%(KB꭬O4gB^TK.\R7(`4/vZ~/er))ˉ ,kpt?Ǜ_!kvf eYX7c`*T(Gu祒yXr"i=S:p fMGV ?H4¢ZK0:tnrשs{E$J E@"ktkkGva©YZI46p*+ӯsJW qZx긱'=`5h9'< R0<04ט+ySv2̒,jUפ: dUL:\b+kS(uREE+f7D?igCȾUJrc|c 礝}gfWuT$H9/P XMՔ=z 8.rh{=Ӥ3FUEB0Bb`k#O4,C2s1DZ2+q!9E'Iȕ_$}7d7iu;V&)y?3<=#El"=wqKeNxPɁS_Nnl}}7N\=.g0 <4w4"rb$HE6I &(*G m1zj)M?[֚}h:4y ) ۇQ.>mWl}|hN XfoK>Eg}ǣ3d- [gPg)}%O%$xqLi8zkrZjІ?wıtQ!q]}͵wu )yFrvrKYtгFƙj˳F$I;mSs%6'LZĦ_&Y@^+1VNXQh5 xPQwϨ`ycդM=Ig , *s\ T8Ao5"Uk}/%Rɇh++L]MZ>m^co^2]w'}[%k=" (ýTEN( 2tEUP:jjY"=SGzR4 "raά?4}溮Xn+.q* Tes3ҵufD FLC5ulPj$o,j|;~`W_[5xxU .Sj [n6M5䢟O'1G]VFITK*hj(~oHNWf\=-WY'H@OL1sX zԜLU؏v.ch%57"Q'l9?},p*gF5wA{i*KϾQCQY01QXt0 }71fAM뼹 \ĉ]ſ&4>,6]թjHǷ7z/򫐿!0{dJׄXD LsxCyϝMϭuۺXdK8QC2\8!.ѐ#d9/@&Yp4T@v m/J#`aʋtNBJ˖>oPHhUgA /!'Jgtv{ i4Qnu#2*#n:fY7i)lGFvWw$(Am"b99FJ}nĖ\V ? do 3nq.Zr|L U ?stЏYWGںJNڈ jL|eM,IUfIr=E(iٕ#Lc]54KW*΃ 󄖏 &7 /]AspxV8/Q U h{#4FՓݍE|8=Dj/A͈$w5H@FSו'ZdVciT]g6`@%S"L俤ܰ>?3)ΰm{=lb 'ʛԟ_!v lAy?ؤ9b"$%/^JEPCU ,쪐s q,t &GrHZh?!$aĉ ;sB`6N{`^/A,νT*}o5 aJ&hlǜe,WP>iAޕE q'-ױ'd >/:<n%^uNlwpF³TSm}mN6\EsD׵Whm>ݘ5a}Ϛ2kK$]߹f  * QulWK__[^hySkS$chx+ҶpTD_*\okisܵYpliHwU uΰJ;֏Y*r|zd )tzc(*-D3'Rꗁ_g4Ddh7N_iCnԃgE6CE;Xo{!mN{>Qۈgt!|z̫WU!kz>@ͽS:.p&WU;f;Vz+DHA7$C=Cq;RƮe@\Is\ѯ/懡kuρ_J >*g޶|mX,>`~37>V4_7/wQ\=+p}D ?|&-r[4a5Rm q*Es?n[GnNj?5jpm wvhA~<N2}7ÞN AߥfH`@J82 y7sSz{Ԯ!T+4vRH wŠI'u~H:K6,[q M0odz;~''暏-0VF}L|a)],|ԯ_/MN˸cRpKCGcy }ȨzLղ> LHpbn|ǫӑ9rRIܗJ ;C>AJnw S w' 87C_E]]BkL\o^W)EOdo+L0Id kgGШ 4.`|?Cw:3}썖[+례MtwA;P:+S$\yBT{Bs:l6F|F5ijku#җk crQ+WRq +$]}Jhab&oHͬ4pI#I';AekbI0Z>Z4Տ4 C772yk_ADn5"ei3c`+2 ЕI%-TS8EN_P/m`bG'ygpB_|Ueq&I'QN宸0ѫ[LTH4F>dP̹k5(# X֓΁R96AduȀvNIn @lGle+[W}:62 wNpvj7%QoPFr#0$YҾY4٭J!FGX1|WDor8[;qAhzb nwa!.ѪRG2ԅ[㬉~MCY*݂}ņnHN<2>p^fթ4،mv9<[MLw8*y-82ws+2AYF=D_8#J;bwA4 bphۻ$g7{Hn6?>mJz\]s,%>Y/ZbYbkCbDy]|k\.YT(0āAY%-}j ow'Dgt|$+=GSifTjP~yEew0ODDcU ?[s|U؝UF2O3R3p(F>'%|"Ta_rV&_ uJ+A'V> $EWVn,g7\oJMr-;Mu$w? h̕a@@Ǝu#떒$ȼKԡ=$`lJ yJV ߏg>uQQ^& Q/ Byeс2MReyHjj ;ILgX+$nwVғ!b7uCxⵀ%I\?x{SApTJrOn:#]K*퓣t I 4.th%ݸkV/H3kII;*P^ؑ ֩"D;.; 7޺p5yO%C🲺' P:ͅzI0z퇵p"Xd77QFNȝ7۫_5l=M-{9~5f\PW >~/'o|xe8GM5;lb_zUktml|U ?_]?ә&ct$U׳1RQkȗD>!2b $d$H4}fGI{G1קkI;fHOɿ>>J>v3e56Ź6 8Ӻh2X=^ iFg"E ʨwxGl!bP#i;bS,gU#10;&!VO]8AA-45E3[oH *X2?chKZ?oRRq% "{϶[b\[=+m.A}c}1M9ZC6wՀ {U@3G8<7zL(riހf ;" e4d7D7=6?QF'dʸwR(_ں@>UA\ 8)Ϧxh/'#ag0!tWE@YR[,/>3.T>EbgWٌJA|e\ܰ?ySSc`uqItO0tFVXP)\p'\ ,gnk皅p?ZoP I8]2zО_bY#Q%qs\ Τ cts!zZVW0^/04=ACަAmLੌ-{&򍷞g`֝Y<(7R7 ;qUf(u^\}v,2]UV JmN;'f8iGWZL񈀊zO}"^O5u ֵ\)e!t>mO?RsE]*f`dN ɥW XJ ;k_e}ΤXÊTc.gf@ϣN0>ԌezLO/Z7aۘtl yg,ul|KN樲] -QGTj+ˋeZߙmPUC?N)%ϫEq(,O^^NO;Zy1c:=mub&vmq>ŅHA{zrj ee>tx:3,Q@JK*գ m/頇A2Ea#jx H]+\/uDr-Kl埾" Jh'&v[rGrτe11D"C;i.jccreC?c&1M#kHQyws5HXxcs{ڻ;kE~qv-ul2ߗͼ=>"iz3JY%S߁m'ܝ&@~޷$6./>Z0Ou+j]vg`C.&;8% ᭱ɅpV!Jv.9dp|bj E4{!_lԳ![d#"]Qo 2p"v62vM/h}WVqؖ"FTd|`[kGjC%Rm+!Y: TtJsAfЕX.]FoQU%,P6$y=ʧ({Q;އjlΗ" ]aOPsA4QH~siT}#=B@GULyk?-f7q;Ev%i 7;+5@߰2 VY\{硜d =TEu'lX wBLHHP]g X%/ZraE,ѿZqt:gDȃ{Ƹl1'FD3sD-p"&4%t ^5(qUHmݜ>6u\+fo4~NOFS0"` >M4)4Re4KvߜZ+?0k~eiR )ˌOcbʧyÞ5=`(C0wo/LS}D Y$4dd[Evx:t>X۹;M\zȌBED81O:bֻuZظ9bw ECy27A`D*y"bM>1!HsaבNFL9`^̦ ɏQuC.2]z_EKюR3=>u wj0Wgy, ڶWle݃k4@mOfNmv(h*ϼ֞,kPE˽dMj,9THTy,r9oXB`/(cޅo/;O8\QмRlel)Dy}Jtr~*(P%7` F5q'ˊ3}Lj~xaVQ6Gd건ah? 4VAȞ(EbS+ɺTR;6Oצx1〡MڠU#ŷWC~[ :"q_]cE?O&^jӮCG'AWmYox~`cv^:rZMSe~5K$! ݣT"7V) rǑ@D ŵ^HvU46y[{LWa ;j=*ߑQ&0z~Ye\֞=f20_BW*M<*78=hv$:]N]hfuribВVŁP t; (nX`Rw;x~1 Vmtlz’o8 [ǘ;,X$A㌯~|&Nԥcg ynritd6Qi3(bRtj.ng-=1EGK_mO:őQT,KrUPA6`13=D1w;I`u6PR#QJ+:NWW?^zSaprɫāNUey;824T|tٓy'64rYa%C"0[q!̵QWC;!T,Ue}?/P}[V~GԔ 3'M Qas˔ dy3?FIQ1Z嬡;X=Xv(Io$k{2;PLJMyj *6W?U\][mRID>knE~l}7lz'ti-CK`` `J ?ǕWا5ykòeEDfݣ /#Pn&8dJON FWUCZn #"8S[ҪNΏ:SL]Klw!jҵ?xT EsNt*E.PW3Q}$^pe۴|rPP@qJfDwtNlxSc8[W'"`Uq+/5}@84يr?x9Wؾ(1שB7~z eo]`yM5ٔw?ӡ je$ vFcSLc I_cqstWD&wG``'f[\0*RƑ{t`J  |(m!4Ř]6pH5ChMEDFV|v.)ouGkMNyy=!@drJuYqh-@ 0FMUഹR2ocȧ Ε,'9R\_L3LPe_tgO=-nޤȴ)-}~Un jGNԇMCEҬ$wwP LV ^ÓIZO㿞EθAMNDe"R>?!O2*C(.* 7c|%.w9.F|2yǡw*1/g|v @oM-nΚnyP跼k0UVƮTU.M<MVێ$N*J`s6Cts-=qmH={ME{PVt^Q PH71C1žZ @9$ȷ)*QÜݨ_?8az3LGAy_h{LvEG|X@ %inKqc!$C[bJ\?Ζ/ʈFnl~,4$\O@Cz8]Ze]zaS@ kQ1Mk E,g vUW}CVK6vcBw1Z=U(sf]5xY^^EԦ {nz^ OCG\o/#^PNPWX^A`NZ^\>9*vqh5Qi>1J!)|+M1ZeT4B-gW&Eql:7}exުE<ȍ;iPrwGJ* /O}YuRږT*mм]0sIa^`WFlN[4v/d*v;^w%S}Bkl\nHjg56[63(/댪0iRȉb!w|;r3Lx"‚k9ij@SwW@ތ33h0CIyIHJGE_.xp]P_^آH b̟I"-PW{ q,jZ51>iαCmu;B#(ʆOG0 G92 + F_|TLI:(fe} (d"b gk.K FaEYz=*^R9zLxu!D>0Y/zޯyvjX . 6WI0`[w劉0i߭ qxA;tݩ܊$9(fp@R.yòJEIV*"u(o;RnK*UAB-!ix~jcnNJhOӖXoUN6Kky1$s1= /9BFUy(8[($,ͭ/ف4n]p9ۑR}R;5]G߯Qc0O.4$0"?+o G OoCY`o&b|eLzlǰ9 fJcӃBaYO%S}-I9$]yV4Ln]bײdg7ˑ#sU6`K^k)'A}w mI{Rt Rbyy!Ty`}Twn\.3kH(W\EVݓ0|Xj N96?A.C:/(*S^Qkt_EQ2mA_: :$'.ܶז##Y\7nBBY[.Q˼t+º$V^ \?˵z}۟1Cj[]qu̔W$,EC<{Z,ϼ^G_\N:gjv%]}HdI:8k ֺ]IG+L_H=Q7An]HZC^O N$bWKlk-VIP 6Vqf'Ibw"РZhUBa :d|XHr9LapB1Q(WdhQ^(PhA:b5K"{Qʷts9±toxY?l{ifW׵9MGdmDeY9j+%2cU3Ņw^2ik>C|u!"#ūu#Z5J&j^w=]✆-ug>6r0$ُT%ZO`R3iKOZؽCb&L  A;+ʂwg.cO{rs_  EhPl=nּJ\ #H|밪z7=m&v|XILȧҺ(Hs= X%a;2iLߞYy*`Z 82 x Eyߣ{5-mt&;#14 BDl(C)4kܰ& E-7 ѡwDp)_uA.aUYzRqK׹Sz𜢢s@Bcb }5}g~ h5 )[S%*=+2E䇏XHcO$ ђviƒxPg R@W;7z1)Ku.9AahOvQC呏؉ CQhZ"@Zp@~7$EԑK5@۷s!0,tOw𲒀R/+&MtA[܅*J#9 ❲bz$2Y 6Ͻ {=+ r[GA㧕ïAn*tj~`q L c/r6"23h3RzX~/Ih8'$nY;;fVgw 3$X\n.ZtzAad9ٿ%ݐ4 dFma6&t$1#cMQV~JEV4@IwE>.هۃ%9Tbh[GD[B_R+\Ief ώȌѵ;'7$WC$o ሑS+Tyc֑LUaS-&4vCJm|KH) I^ 㘯p8Ƭkeq.*PzQ-tx(Y,l Kk7~ӳUSC[O[f-5DeVNB Auliii;jt6KA=-_׿ |oVQҊo@Tt$ ƿZ᧶ ]tq ^RTC~n}\eƿ^ͨ_#|ZqIδ'AX8-It][V4`,&þ?"0[ vZӥ7;@.Z*҈n!ZRqTϷ 6[C?0BJw__٠ȧo.D2 VuYps`>\z 6l1v~jGӓa7mcv4:n!gŹ/q滨t*')ye6 WyH4`$f&(prARq2q,Eeec x%y:?|%H6jFn֐t4ksz>?dԺu ^& Q3NFVm~f?GW9_q ^oa,Ib=9 FUI~2]O[mQ% $Zxng;k7H &QnKXO* mѢ>|vaX:S zX%e3k<Ω Ssaijc@gچLƤӹ* gָÁUfQ |>%OLIZ$>c%YM+xe` (-V5WTH'xjTs܇"~E{o#~{EY x{QSYC0oKA[X˺KwAA' Li7f'եc*zOhocTRu4meMtG'M/+;HqλLGCUBA(σ6~1'>[iQ)0Q*LNv-BH6+-^ɟ2ƤME,-mBĠ6 !v@fěX=q^+A#N(j+R1*IN\ @mm:f7'_(` eA!RDhPr~ Z!،@`D2fɂnq*%fGN\]Edy?C֝0!5$/ *S^`.6|2IDzsāoY}@ƾL e. V94}H\B2qFk!WJz?!$kwA΅nxyi&Ntθ*!-ReY0M K˨ӚEK nTԏ]^_hmW ٽXmev4[ak|5QWC_E>u~@˜2#7]I`34:ۦtS" uqt һ(/o1?@ \ B}LK!F/ny|E,1%|< ޏ-af.i+(g}$R6@+Lr# uXgm"FL{[lr(2CPG:aT.X i?${eN$2(4#u﮼fzHBo(s¢7qQ.˙LAȆ[)lף Μ}鱺 e~ŞyblAo9 jLAfEPT7I~D6.6p|% ^Cr*q eg8/Yi5VW,P=ds#e.zB-cp0h+l>i'E]z\ћU16KQ}I:ӿC=HS޳ބg&*PNBEMO وe7M"@4li^k!ʹNl/P` t)Z9#ȝ^egl`^9k]P J)+XMU!jlp%[clԑ>W^ Bsm^wr DA:dOjoWpKj)eLwT>xO"Hiܯ!?D:% cpCve]ɂ)v+p^&j̡2?EڙjxM r=d^B0D AbBoeө(C$TRd_Og؏RNYslp:P&GSlr³ݦʧ?KW<*z<+Рd)?ٝC4Z|/qsZ%!zf|gdӕxЮ8[8O$m{Ŭ)L~uXh#[Sۋ3ڱS,jc~ *] ?״]{%~iPP4t&4_٤w4W_`Ɵ:x ue|ku9]gdғY B)gY3>?~B!T惾Õᢱ&O d@Of߹T%Y'YʛX-gQ6Rϑ Hd{>",J:u/:/wljU v5{R(3̞06OWs@Lwe| 6\IhQr~5m5A ,~K98+BuL'J*E]-67+%Z.Cܿ1Ty5O\ )O9x/"i.϶]KCF,ֿ`ۂuFʽEk4(nm,:BC_`Y;<sں .Lxj/̬zՖ8 Fk+CgR'k6g3Ig@pG*w"l]I[ XAϚ¯ 3)%Ľ7s75uJhO^5iT {7q\A2d5@LGt" / \='hcL5m(};]`~ލ `*Eьž OTT G-l9j/ q }ߤTshx_8F3Q&khɼ+߼5pwTR$‡gκD v)$8b)?Űy'e^Rif.#42ll^lL.u{Yh>Jnd~R+tTN?j诂`LܢıUmIH5\-"J |6Zv nAϨ5/c1t[aAy ލ@l7+O¹e #pfb<*HXx 1$n@VD|?WC$)ŲLښZ*> Z L$Y-LsDW?﬐wd!\@ mÃ$PDNFVDM!Gz5C O}?ʱupb5%5FHC$J"ږe?Sv AqoX=Dm|̵9hQn#?5SfIu.8d#p V;~ܢ=K|<íBq._LCvazqx: JXƶP %L9 |D˜s* irZ(pPF/ ȱG{\'XkJun221rb=ljõJPnƴ&  4G{3}7MeCZh5(ƴ8^`#+̸BBԵPFg7 h" ``Ə={=_TtڣprKX;8toۈqA,-TuV:s-p~ dQ0),eֲyOٔ s z6ܭNQUtaCDó<9=sb }vHcaĹa2H҆B̲[SY=ٔX9 j]½~GLi˕1f_zr!h%Ш1J^9ѽo `X_` fIj0"a ˫!P[,M麍װ:zz'lH4QTUc:p".6$GoKqQ{e FF;9I%%(8 |fZc`Ax؆*P!<7EI TB r ۥUL ##v*LW9L(0^|?VͰv)rLLO JCP}!Go3{"OF$(<η%RjRm(sq` &be$㌬XZ5&fab3)p0+[! g Wz7Iz0t?T:FOk5^=y.%k>z7*%ga30tW~MXeU[MW;+P2]ٛѩ{M淉[%B0I ́+2/3pNI]` NKq}`FaSW)(lRԄ7k$7T-$n-~vr8\HA%$j9H@9<j dLP_*/ ޴B7m"fNZXD%|gƏ2nA 4tSmr3`(ל#%[jFV) NHs\, Fƴ~QxB h!J܃r+Ŷ텨D*V5F(kLFr'==zAg[Z9Pg&gɢ-Phn#a^8$gy>"E2.2^!01hY2PGC.X;?rCM[yX | &6t{pz\}q]|[ w{ :CE@qv {"!En#Zh9YC<=VKρ+O |Spa]q0"F&ٹV(&uocu3|'AZ۷v)r ~ :ﺗ77"LI$ynBC1Zd>uvk8ˉ44kjrdn"vu*% ݄>r`Pe`ķBzI.-Z)ŭ."IUGdS*R; w&D'nn}Wcc0=3x{F S'`]wXFK5 V <5Mv>%nYأj7zi"_0%,i`XK]¾Ey=Q\TF)+T]sIcr2VH"Qt]*!8C8IRCk6Z\VTlp3u{*2p׊躉2F |+VH={Oց8XsQ8 `Q[uRz4VQ(^/PQI~0 ȞU5vw)ns$Wx[;־bZLm٥%, ΀wB #]/.lzT7?G%(laHfdPŷ[`%2u]H:F J\bj+gLrksʿu-erũ?(0M)Y<*-F¶ G7ǴלaӍjКuGh"ۀj]ޕ:W} r@p3a@duR[MԄܐxEߍcPa./"%G-ɣI"^G|+E{t"0jj`7Zg2Xz?_zЮu,1taPDq0d,v/(}"E!޴@ϓIk "Q#FHz{av(/W-TW3:ɼ=(T/>萮ՕTxV?9Q'ܜ@Jf@Zd\PJDnQUS]c33)cDq. ܚ_Y'%/pWOw`5Cf}S>i?}Sj߽>t,C3ъ}[a&Z#s&4hE|8QOKwZ2}I;צ8x dhrogie'EW.VAEYszX+]hCp+k\F[6F9nww*Pli D؃7Bz!hl8[33.(?;Y|ivGa>DaT;j"I^(#|TAlnH~SdSKIөEۄ}s ~b`%Ve BT0g#6AăT|Hu'39Y#=APF3Lr/zNY5Cxӵ@?D!BG?lPOmU~.@!=%+u(AF`Ήk !VǫU:_҈حQ7|ٷFKkAFDIKFMqDaB!QU]c +/{Z 5wVWɷ@Y j3R]K΄=;23E>Fp'\}^<&]s)EzѼFyGuZEhz+9:SYً>"?y(5k!*t3=aQOUəsՂ]c,..ñO>:uᩛz qL׬s6}₻52s_D~P #]"}䐎 jކY{3aۃ $5 PEVeExj.èE l6b Ȼ<dRcжz|h"7@A2 lY Q}۵k#yW*&NAy~Lp>Wղb0\i m&^m\EXw}n&+>.#h*D9Q!Xo4Yv{( 5j@ŏbGEݹ3@B[,|q Aƈ·}%Ta=%8H7^s5diؒ*[1Jk^2޺uɗ&z*Փp7+iْc è)1L).,`)_jl 7"9L"5,Z.biZeJUڞ.:} TFmVlQX&Ҹ~XhcP ? myovAGگt"m4-K/C@mZBw2ԏ{N62^XZvD Qg!-V sU)TOy4 dw>{o}ϊk(pC Y-4.cgoycvᔻqgW4Zv&fGm֐gOV)KQ _k`Px] @e3RiCTO*$p鞖=FYcF%Nr! 5l~]Nv WT5)% *BkS.m˼ZMdH1~6k`[-EPIpRϱAKSj #䖍ٴ súIvZ!$էw:3lWpоJj /F E.oCuQ5\j\SJDl*$S}Α Zʗ#DR%;vE-j bAp@R 2舨_V5<>{aQ!PULϙ恢fcvf<Ӆ(??sQTQ2c2s$b{to2͌j 94<4,]K0ټrw_X\T3en6+UX*W S9_6ݱP".ϲbP .BZ5_̿k[~Β3wm9B`M`3["DTy' n%ɽQJzl3)1\ GϥaX:f5N1iŷ]r2ffW/ d"sCȬ f}cvKj'Vj̟iVX͗7逸ISqO Tb%*t > 82tpjw0vHVpLkl^@Pm̬7bz(w9$ ]ϕHA6,+4 F 67q3m-W. nU@)tV؃|FV>$OIF$3>#Qrx,>6?2;zdFLh [NI]abU&pqvx6 a9rzZ 3M8|[e3Q &KYMO?9Xߎ7ixj,LiGRwKY3p.gg]O-<y-ss؄<حk 3\5YuWKϲW7b$1шG \G.GӋɚ@ſ4n ="Rc $ {2C޺OF|J∤b z쯽[9TeL$ 7hoǝ6A3\>ٮdNf ԰R蛽16kݚ=$^P6L>81/Bh˾p}L$>=.i'MOo#z'wlN|fa>@dHNg@+A4:m* BXJ2aAhj2ӫLꁅ*Jڞ:Aظ`(0"Xu#jiPlepcD4G+Lށbu_L͢ @?tݸEnυƢ'sY|ҕ"˰[IuQӰ`GڬXTŁ5OVLcj)jS7h9+RAڠ,uN zCWhۋJOtA?G@#`=BD_Ϙ[v(6m1egĶ#ґuvDU=cf"4RݥhZ ( xxVp0 &,;A`>Vp d%hZnVŠ%n#]M4w)yw'_A,ѩKcc.VC,x[mMJ1rjV,O$ @}BK Cb+wRxeeZmЈCD뺟ޔ" yu0M8Pr* 3U(j^%.~6L3f#7п2pE]m\n~|w{3]\q YS^@Dt~[3-11#-ݸH-Z! p/5҇'zjLpU۟KdzFYUewtؾO\PA%s\ XZ2b hzO +TܢLP8;잟*hCT s˓Bv8re`J",^kU}fW`A O^ki~ t&];&J9;\D!Ν o4BN[4YF`kɭ;:r×%Fܻ٨z+N2A1>2c b<-㨉s-hReI$ިlh`?~l=sJU+&)!IU)MƁ 2J-pU x >%`lN?5Z!VmzNseºD25+T0%LQ@-pq1»JAH,nP){}1{KVw9T < A!FS2ׅ@/ BLI yU<[T1Ε4!F@#m=m?qogaQ@KW}u-]ez=8չbߺ#[H@l@-`,kojtsvi$M{x{׸:LKk 9'hiNm^ NGh* tlXy-^RS\4&Iݘ_{ RG蜰@`VVOd bE4OZV1mZQpo|Po0&!H)zHOcdyd0=-" &=/Vj_,њMH[S](b ,2-GV~/z^-ʷ fm`aY@mqS&ՁJ߭98D#K#[j=N~v4_D#5v~b$8(XSLis}Al,^)9dNdwW`I~RM dfo6V, (^K|(VYCt>UlFoc}k{>xwN1Nb Гy)mBӖu [zQ:ޯtF4y5O|t7Pw9Eucord~`Tt P$q(4샍.5Կ᧫"_քz{sYlqaSD{3`vdBH<\npPc<(CmPh羓=ͨ>gjhdxfpo(INA'K܋&#_a;:LU{XB2Vg aN3ዓ<mv@~tvݓI䵾gkKE#SI߄ m4x`&sZVr.vǨMr X;@yI^ʹH0(w;豫 Zm"f+=#l;%rS\0E$tŧ| Jwp:aSlNq(,BloUMئ@vJildj=u@ R˾ ~z'xo=ϼ$}II%3`C9ynz/,*,^-K+г? DleU[p% ;*D=PUaVEKSs >P낵͗_{gKKm¡.D 4TX7]>$Z,tSUpsr>cYmfl4jCJ͊f/go(AwL (z^V$N$*͋LwhJ0am;I䛕;%(5(4E]~&IT,'zu/h6kʼn3?ytAbhc` /%2G zrŸ+xMի֗$!B|h*CQ} TtEk-VgZcתȨ.bp66Iiu[gO,PdOJጯxO OlI@VojtD}e> K/$CrD".)l qWg5t>R"Dua"{쥈T:ճLҠuI~)*y΋i$APSv3j|8!`‰^^@WYb찬ǹ!Xdsu PNcDءf$7s;tE >Ob29d c(g|6t~=US3P Ov+#ڮLI~mD%R`.e[̫¥=K,$ {#Nn*zhSfci/4QM3؞ANj? ۬y1W6~L5 BFރ*|L^O~rybnar,Gq&׵-G zҲ UIjA_4;~'咠g˿jgHrwzsE@֬?;vpB*>׎o ?b@Com^Q Nv錺9ޕ@*o1.UM&%eIb^C_XH3zAOFMqk^ F2v*ٷXhuw> +J{MOpHP!Қ;)N+A}uz]֛Xi۹&{:Nw9r\a)oDIJvqCF‰ DW{tg1|{*/4q!d@faGKX> G1*IlH<œc.9!$G$Xj]c%L6e0tS6tS IPun?;V_1GDFMd^)L7ݷLbh0t+-!璴Xi=1Jay0CyQA%L.rr1 N1V^W!kߩ!@QvߍΩ{Nw=LL1]K/Qr[?% RqIq`r%KJP,*kFjs@?2:[(@3>5f ;&i3 ?$߾J[:4dy13[sEJ;~F]Π "brkE eT`( 1hS\J'A^@7#UE`S"ClpгUtg R>dO'lgQF{1aC6\k*B0! _h'1-B42i[NQ߫>NҌGYl't-@x} x$}1GO\'BDl.7  ] EmS9BhYUʉ{5[!OloB5˶ǓG+!Iw )q՟]$WtW~/a׎D v7 I=U !-'A`{O5m9M %IZnDL3-P%GrFғ1=]W|܀d~oOTP bʯd{Tc=M6'?V[+ϼ@Oi^銹 .I? \AUL0;@Md~pSChYrSS"3lDoX }D\a9vw<c$^MM;Pb!DH"F/#OkHڐSW@>I-pƴæJNy!ɾQW{^4u$"TF<>ˆt./xz=J*W۠S|7m!lp{t[Ö́uM ~%cY\v<}m5k~XMgNs)uDŽG/S>H$˴`9`nn҈rpBuB` C+kȗXSQK0Nj1"XᇷVEGu* \W,Cۿ^ }KωF[$)@x%ʠ+>/*U{ {Xz}+Z zGဥ/W7G0GW.}xZ=4CaI ߰ur?=Lި.HzcʹJ ^7Dn=fQÕAؔN կ0eՙqDy̫:g u%̇5|Ky!Inwᛁ,&:xRsI^ZEm)̓&^^gJ-x,K^j7n bi73VOZ, UÒœeü8dŢ-e$Ҟ+b*>y3􌹯r5E 8_@p3zc$Th_ R1w& w0H e(6H'X-\ *P]?} [g$95mKc|¨]eYI~x)|0{x2tﮁ5aiU&7KF"5-ڍno",س&(jQSeXS"P;Ò$X,\;]s#\)Aeݿ&FU.qIp* i]RwA<8y֥]^1@PՕl-fj==xG{e4$DCUDS%e]IXJU |}t:Mvb}em_R ]"xcdn Mȃ3LP+)y} rpF^y>d*-yu6B^ MLnX lqDO&/%QDtѥ!_@BmJ/3mĬ[!Qmg\H#ӃV_ 1NP\w2g)G@Fpe"{a->Gq C:A&p3}n`֘j.OcիhC|ed6=Y*"w^^RA3ݥ('r8]`]rWr`*<O&-]U~Ƚ=@{Ey9OA9(VVs}PR⬇#4O{  2~ Fȃּ(>SPbdbk/Uٳ$lT"2;b<23`x y=fLHsU\ .q,xN&0߻_p_S\fm dLT JҌ~u\ q`b.\nD4RJt(Q]t6pGpυD7@ *ԟxrxNq9"I\@mu 7?~S&tj"ĴLAl믈@b%j嗪QZL<>3O^|َt0%JlX=a;.Bވ2ƖT=&ͮz?%mm8]:^~tb5 .ێ)غr?/:u0|1m 5ip _#".L۸ӂDEaxM ny[vfY!VkbBx0~XRR2ɦaFϋ ;O N\1Xd/u>;XE+GmU^QmNKh*87HHؼLӼ0X9|aW͐EYY]G-D*R/nI#Mxg/iĎ/S {DUI2`S|@TĎ2#D o7bJVZlYP2;2g:ټȸOzHu#j=QTRR*_cG+Exw}&({$w5,s{_I}qDPQ{hS}+۴s3Bp9-rYF$A\0 X7ev=BdwzjwOSHSFD/9'ߤ ;)T qGSB_!'웻  L@LGБ44Gt=csdI Z4}t:nD0-Q9 ­h-I [PPҬhb*P5,P&GN˷j%gB1):LͯR=TfpWqQWVPb\8  v(0 GI/YPmh5.cC-lꓝQCxz Oqo2>:ƊXכ99O:1E ~bR4^ز" 9KJeIS, gŋ&ѠU@g0C?5zrCT&C JFJYlq1kU)+> r҄8m[M)`-0#}iR]7s!;O.8mqduX KT ?D޸|c4λ~sLxzq7oQk4~Q3!YV> Kt3׭@hϟG( <@-dSQqfk-ɦm}{\ECTUPTRJR w0߬jXn<ʼ<yzbm88;Z?*G ̴!lG&Z@5g4>K,&S #UƋlC5&7E$3x Q@6wJy`IS9umLj~WsOXjzy9o$$%kLbcm>?vȈT^s@Hq[rU՚-[ Gvҝd_ERwPpk+t]nKP ^6*Cw^DC2:/f"Hu(#[ 4ޮȧ9VEϬ)Lfuxi0$N t)Zr'+5Arm d9>G % h:PUu@4CfCzZoeKV4y;?Iς"XFـ2[}" ,7wsO )(KrenG;',#C|dW&8ͮ9ÄF$>Oq"l0;tEH<5tQ?9rCP 8ZWT4^ms_/ T,Pznpnw'u8pΕAP"ꏼtDeI\%}vBZm{J JIk4aZ`wo1PxBY* ()kW dU(T^&AZړFa:*$B2ɁhF/4y*f_G+}Aٸa{:q]u啖'ϝjGKa3g:IA\CՎo8?4( lF'l Q}U- 'C$2i QVeLCngEZm40!Va2a;P!oad藱(Pה3wӦ+gOwQ= B_/Uخ1!?m@ -1F>U6 LTѪVx*pK(‹R5_4{4tNo' ʰCs-4C⣀c$>fЯA{e/2C)?@i%/ۑQs~x gObcx{Dq`7>z 3o7{BGBqʕMw@$\UFŸJ=(*Sߛ 6W_ޮҪVw#{si)_&|#NVs,cѻ0ۨS%ъ7+O"U[};H&e Z^'`)ajnReϚܟM F pF®D[' 0&$](CyoXzo-YkB^;bꦡY*?֠[fQW ؖ_X7ybrvQLe K6Vhu`ŭ/xlͿ ,~bC+iA+XMq*PܒwUزR!<:1Kvml4NNZGr,>s܄wp| &q~! 2ѫs =X{ڙMENXz3NɍS7nPry}^$MMj5X OMQhy8>U_0L`"]; o#ϲs&MQ$.9㯩A@~;?֌N7;;oM\Γۓ{ ׷4M^f ~<A_7 ӆ%ȼ>A^Dp:;S"HToHO.x2Dc,C,J@eEW$$*^E&$:<>GXtȍ(2z<;`2'˷(YcvFVMzE U'*(cDo >=HGB`;,Oz azʑo\*;Fǚo9Gu5&@19 k91Ja%3uZo&?NC+/"DׂBY>{Di˶ǖKr8+"]T-m-Vz{} ޿у5l-l6SJބ QJ}?fCV65![H-lI8ɈK9J}ŜˠFJLq@L7^dLo0r=9ۋÙ)?\GKe*ס}j΂Hi3 1e&2.Ά笙/ʼNo.fp#8h^|?м/t-v);K057$yp#Y%|耪ei?éful&Z++GoqcZJV.x#8Y`ZQAbSiYVfr3uҟ5'(g"*[win\c-śef=J g&(nV[~@щI;de2WqYw8 ;ms )duD)Z z(\ l,Q$ًǰ>Drݳ|6M6!E,KXFQPU | hfpu2[)dN-kXTMz!ag} xJbҌѪVT2z}¤VPc鑉kR N1WjCYyyច_ sCH^fJҒmb0uzrNU j>[Oyޝ4 yld(G`9g ,*gcؾWؒ/>>9k^b >=CʂY XUHSou$H28_!3Y=?'.~lAbvhĐVN]fd8 .4Gp/X&eEV-BOZt2s r* |,3^eip hf[H}4xBki*p|B~"_/3v@h4@c=1alt>k,*ܴ>U__=) hQ_it DAA(w* _!5Kr s&KBq 7A}gqoq<\^I귪-VZj 5pF߼zM%p#=mޫȨ:-ҕc]qrdK&fx]bˆSF{Xz@`4$niKmX=yAZQS`33KU%ZΪd2N?&AJhöԢmEgm'K^;'{Ky򱷅rGGnhDUF}ՇdWh>4C^{?IlhA*KHhtCؖ͟X0ܗN AQiO W~4Ych;M0x c0̂fB ;foHQJ0wG&{=sc~{قCr!x}hCm?J" b̧$$hiR30ܷei!{9acijM8[Ʋ@ y!#%:L߈^ m1f]վ[t( 83Ma6 U?BA*EcC$r2 COo+uXbNG's:2)HH=ٌv1sI:jN(z(Ɉ.p+n\a7bY I -Z4}8[b%xeoaR5V\3-Vowta:u~:I:F0X8k5 IؓaV-lp7.\b8&fhf 8]⎟T/˭kzCL?`-LFİЙb'2y%gD[*A\ `z@@@m@dUw;E2$mdЄXԹ7"%Uͷ^5;._ /RvKca'q~1hUQ,w[q˿? 5ZKxPz2д]׾ar@%(!wlEqTfj/ ] 4,s+d8׼`{ctd@i{8\xv:V-0WVek7PC$]0؃)wardnHvb@8βޚƈjE{n^SŸk\ Z]˜OB+R!kS)8oy'͂3u ] [-e3ͧ/od1vcp;G]tCm%vWպ%eTY1Kd[} /Ԫ]AaLȺp]0JTͤNW6@ϮK2XK[$ѴkmLc(w\jd)ǖo3ԙvԷC4| ,vAHj0!Vnan;"䰑GRbY6IMIb)"ZsPd"p:>}",, k Nvc)d2[ I {H?ZF . w0/%a1{kSDzE_3ټID/̎Bɞjȟp-)pV [Oω[*ھS]ҟ*@~$?%ep OCݺ[XR%R< &%*&1dz7Y[w]x&9Ud&)+rd?!vdkciP<}  UE a MRߩNvZ^gt$અ}H8)/4 :cT)xu]u#CL̔)q וdt7`-ZZI.*{X*-.!1/o U^Ǵ M'G !Q-itԄݜb:7> UTՆ)X6Yy҅S Q7w{d z)R Z[?T=5WG ΀\^*U\OhsHі@} |_1d&`."8"ʽoU'~SCwk6rMO|pkÖUڤ+B39zjX65+(R j7!Rrs T*[U̮~O0e6qαɐSRSFDߐZ__,du7QgFuXн@`/6~@c['rjQs I*m7? sU9.h1+c͆K,] "~7 hӱyEsW#~&t9x` >B-3\L@S$eW6“5M nSH+3/rSB䁠RfRyܞli۲#Uf߷;pʴMHi]V.dؘ,f&@͘Hf5pL]رh{Gq;B&j!TKeF'{Q?WZc 0J̩)6,SM:w dp{/(2hjSRCnS0 VX܀d~N833{('8 n*%3V`!=W6RH8Rsr?q9ʘgUZg"EPxE- Uټ #K@.Ed>fw=.K@3# _{(Nx` 1|u`ZF  -o$F|y.(Pp~>mLۙ`vȷ?3% pG]٦YAb0PqFr=tPn0x9\;g.;qLGL-ccrcS߿mkyzIz.{Km66FUiG/bR:o(h?s+Z߾=\c+ɉ9P$A@J5vZpǝ.3 ijzs+\AI9Ff.\ |ӦOc̆BF97zpN]&,!ךgtr(™Üib@<_qbUѯS˳>шhӆ,?TFTK1?y IPznڪGH)Ubme%^MDmh+/v <\ 5PJq|KiZh9|:jJH\Sj~8)H3!1ꭈ9n6{HŤ/l9HW9;u|q hv# 5|EyA{ӇdR" dgFlI0Q@ǚǙ8ǔz&6I:Ksb\@,ʊiۧo!WЋȇ*lVgely66xΟ Ts;&*TzR?wL,]Xũ#,5Vş*._=uV~ffd[}$,2%҂֟k R ./l­;*s?fpᯠj AVA{,Z@QQ!cjy r؛T[ #Q+}N`ی5Od2k1@\i :٠"^Ky?.>K`څtw`IbơĭC*>t1X̩n4cEW/t8ǁ0`D{kT(V7'`H(DI;toTzɜ|!ɳ1CԴgǐOk>ǯ[u qψ|O8JWX{ݟӖNAp1Ÿa*YߌDx(dV |]jJɷ/wWeczv- n^ \9l;2Kk ;&#M*߂IZ jQ‡Tꪲ6y-Y%‚lP%#3GLxGfŌܑp\4g4:_XlZc#Nvʵ;2Y@5Zcwqd!_X qV"{[ؑ/lAv^Յ\DUZ0|xԼn,Vw_"w*VSI9w0/:!ITou2O;cIYVU4n&?R_ X0&A ^#P5PѮW}#"ˢ|{I:w{nq AL y!ͳ_nLgeF3(cnWh_ Ǖ"x.AS 6ضґy7^jY0䃂]d>14 H "d"m+Lo[~2^X7߿XKQ%ʧ:OAx1Fw#YgIVBv]"[3i5͸[bP{zX5,Zh& =Q/\ !8*S|n7*V y Lq$P~D#L&-6pڪ~ rö5&EQ{foTM@^s8O5GY>nЯR_;q7+T-ⴤ}r.a9ɽV\8N/p52=Ώ x"d s,ζ-%$=)3m-gtƇt'17#vYiрx-r zg:uO_`ޭ/KH*!3"8ӑ V qׯ/?F쭳ik)L"?J^-ezV FzV?!$WƔuV:u@?jL (L!0Ppc$8"ڢh/,6@R֕i}&zAϤgQҜX^S)xTi xύA#*:-S;Q9r~7/Pх5ZżAY:: XB'D_*Yq2`Ҫ / bSxv+5@jثimyH\hQ"*jK2q ?Jp{:>dRs 0`:>0nK^)VMD0 E_R(Oʫ"E",8[E?3aa >Ҝ5`cehK0ȗkpTR{c$8?C")FzݓNh޴wwKe,DžS>h3.dڦv-u^/oX#Nq9^8 jU)5jD(PǤaֺf6\.'Mb/:\5DJEPLꢎ@ea Ntd`zYG؊ w,u>K>_U_nA="Sfur:(UI{躂5 +8ʑ(G*洺u">Q=#8)L8$ jgB 7^V]˖컁 L2KM8GMsic7 \k.B ;:Qq&;x9Q6}9N]DT]s>v;!-:`nhF!IqG|@V@g^DXz|l+ -3[:ccn9t9p%_-]!PV-# *)JUAͪ$$GbR_npg }2ߟ2Hx+VKE7hdLy%Y Ux-}2Tk1DJxEӾV} }x;c 4pvV:Z k(Lq=Y]ЙE'Nc~9Eh}^CymNK;0HaX L@Rުv6ii%UJ`0zcXzMsě*t e,9#h1ÅxBٜި]T(C;(-+Sx(U~)L4c9d|#P:8pf}>NcOlkS T| 󥯓i7>Lt=9f)0:Q݉K90thRe",^xINg  M?V,'<Ũ]zr8Zl9͏;lMɰ]жi(nËL lQt+&zzmx?h41NR&Hw2xd9&J;aZ'ܫq @ (b=(y&j흭 0wKmD+RMVh͞Lb\1y;n hmsJCƨ, @"xFbٵߢy)GBk*xvo1vxc{$diE'Fjovث:x sQFև+MpNm$SR~r ?&q~Av{ P. h-t|CM>XK`F_X #2W$w-II  WU†/ghY!٧}6H\elH:=ݒ|g( ͯzIaa҉uxs}2 y/3g݊R8fs~117l;:` 3=yτVMZJeV'Ry:]PEb+\} ?{fh;QV+?rJ2olF-Ď>˖rE1E蒢؍lI}hCR9d6 MR]CLBWCNۘ{W3|vvh'z#ۜ1* z>OeWvLk\3@Mo̟qV~HKmxݥukIX_WZ56ׂЩd]K_rn=џ!wJyv݆f}E>]{^V-lq74R2xJGU~O%4NSΠ[vyKaŐI~ae$P=4ì^C憼A _"}[+ob&=)19LJAvRdrrx2#e ARu=cmX{!~\+Py-cn cwtD'!n茑F#%KFzP?V3S2yw_OtkAOIt|zq-e((XhDi m]w>vnkz|A߽ʰ GNpI}4 *h%ҧƑWr2]_@ i>t$Y|H/y^My6xa. &yD,-0"˧ai>XܲʥVRkp_/ NS[SmSƮ;K>țn^G"T%/)m'gM>g1{1""N_D},;>F 7m2&#\YC&T?!AlkT?OPx 7βhm}nj DJ?ZfvzÉR 땉S} Vx)NgEl$ۗDGl!̿P#Ԡ[%mrTZÀ;Wvsu: ]-5-"ջ9GHp/}LH Js(mJɮb3`MJ" D |sy {)e/9r,#G %9?BC Jҍ~+(DU@0ff(ï, Rq@@=@q$W=Ǐ PWgī\Pzـ8ln%ddB !AF;C_R>E5g1I0ţ? sK$Y1^k]6R =U##V8'@B+/2+jT* :#5먌$F.: n)U"*L(bӗM}[ ps@\B1^6؊z fE/bڇ;iGbv1(`bQU 3-،U$J|)[֣tUUTAg;{qc#Z8-jz5-s;5CܲzE[!i˜e򧽰Ƹ+Țfk{bgn\?JEZb?LX[2 L /9Bx{gmz\:Bt6& x/qwØ?3#*[|%;6U2OR&2]s+Kڹ"z{gPDTO.rMK21ݥ)od%޳3#3x_'mN(;i F߶RKQK&voїȬ(XG(G*H}&,S ׽:r %KkGynL Q E@e4J$+\10h*ߖضCV-V᥿4)ol_4DriyjNT3S[X%oN`nwiM$5Mft&n6ba._VY޶KjUo|k%Ud@T 6:G_gQ9z8 4#ƒ 95v`97^gDk'NR iG{,V?o_cIYf\}7F77WM)5٫TzMmH2‚gC(euu{їrVf1kRD/!'8~(fŋyj/ۘC ;TGj<s㌿E['!><12Y߯BEyVw,F\AYg${6qB4VY%{ޱzXc%Ȫj_ lDOq9!P՘IQ][=2& w(A3 5=$/5vaz. /o\``RWM70,'(uɏӈ&btqnd<*Q( ṝ ,] VQڃ2n/\& OۆM_ٙ)0mw+ X[&urqT8;9$rd2&zL#?Ѕf\kٙ,ڥ8Hv\vi6/-`$\_@@(o?%b :(O/TlB!nrDfȳ6o:oUm ߂Uc9#i {v%63`n-Cۑ{r/T XኾR'iZ( ~A7'tYNKͱrS)b*|yN繬n ss8j[f_Խ[u1! QI^HdҸx(q9I@$J:pBSS3^Zu#.:W`kވɢk 2=&-;,U=,,p?uiwV0h0:L[xS6 @_*G"aSῪv#16eG4?{ٻ9CXp^&C7z1z9Wϻ3S=EΝ`3ݞPkO;ub]6xfk/89xnnjMl:1K:iP>^aKԕ_wbr`kb-N45)+:q*Gk6 :T¯G]RqX b>N%Vzļ:1LcFFPS'~ 15oBYF:ȱ?Y/T_a=?*PK5s@`S@7 7۷4&b.'kfo$LWM7ʪԌ[p>k  ԫ *ʹ<u5&wK'rhYBQà\˼}n:'/yw#W BBmJQfQV#l9Ւo>)]!^ksE0EA`̅feL' ~6_nЇcW&Vת1"|i%"Xfw fġX{{Z{B)/;}S"t9pm{J2a1RPr$tѮ NZG$ KRh(l8Nr*B=XhϏO~(z/א-sݨ-bz?o!ve:I(sWv>5O&cJ 6YJ͈:15p3ҁ{[@ ෨]#}WniMt$a3+7~h *-8bZF#Jj#EպSk|.3I^L֪x(ෘd|~ ,ogf#nbmwY|+}: tر!EvKA`sw6Cܛ3g惘x \OzpjiIᩢ5p4k~!B?%+F&I_,f."${Πv(!y5x(K jK0`yxpތbswd>ԃ̶3s?3^82-Zqᾃ$NCZ?<`Uut1GKCgvve=DK!\*lzV)7HF0q-X0(/fZC=RQ}߮%z̃h UAV<:7ы{5hɛGHP>󡝉ӛ}SzYfT*Xc#AY;;@xۊG̔d|umtEAH{>tpiy U{.\=%l?/VgXV_)w`vJklhHHfd&^(&yH;/cfd}.ZČUӌ`M/оzݲCTWg2N 2'(Q(Y{ޣ'㨩IZM Qo@>bᬗ58-C}Tqw;դ(KæmSoəUژaS}-SO@{}5oFuI{yL Hd)bS'8;< bZ7?9.Y8R b+Q|J5Bav냉?w=ӊ9 D"QM3m֪Wƒbikq"z55v J`5;6}2@,|!4HETnzFb8O Fp G٫kfwwq7E!J }^||^b8c_Be3Mce;x0Q #37)E=}ˉ7(^#0ES֌h]k~"<+#+w3V3[ď<ѪJ# $\Z ~r%\DkwN1nKVbXYKn{5ua{2ro*=lj2 zb$,0My{5x3:'aq)}*Fޚ\Egbڂ>,a`ZpV5zG2S lٰM }]hU+ESA]` "> 'It9Bl&!ns:ۏЫ@]%m-\֧IFH`om8YD(h<#'V`02 QK<Q]%&D=q!=:DI!JuV{iO㐷<$o*E~F?`I\x&nlʹҽu/^P=ޤ%#o"—~{M(jH"bO`Wm97|,TN8g.6]G~t>i!pd w&GiQ, ^t& &hB?$)Oqĕ R#Ʃ ؂P堦]؇Y?ty'&i eՠ^f;5țʏwDpN)jZ|L'0R5AR_DYyLCyN⯆y7HX9RѻV 9i*U_l9QWFLzxa( 3o҆>#a/Fi~%˪sH] eSKgV3jh(ϵ-d<زdG܆xۻЎ<;[gA{WޗwSL| b;e-/?R%J2(v =՜nˆZ M12uǐ# үS5勧2/*OUX%1C!D;*fk 1lM|cWtw=Sj[G!]z+gR ޕ6J͐ A5GD(z}* =!YyO)% LT4!7GqTZ~4D[& ͆L( )ikB^szt=t [/|{>6 Kj)2-/)M8_tɓ?(S:Ghoou#mA"F8%G3;yq**/yE(Uʓk\pbO-r+5䙻Y1Dh+zdٴRSB^G`(|kA˾z T}v VELp)X1=?eG^ s]<][<~aHAȳP;S=%vIFNᵊojx13[.eENs,Gu_~"<5d"3P R'Ԇ/}3v!6h\HE ,8T7p)Z TbMu;:r |D Nu涤ZJyt_W^D#a>s'Dp]CJwBJl"t\u~wA%3_lWKH<%2acЙs%iPzfR/ \(4C4aJRy#2R{/dąq@cxSgET޷qvhN,[Mj\ICRPBx hєtgycVGK?6vvA`O6^b3 ؔ1"ݖ3XGspӔ`g-)_DnyzoQp?8P: 3Ȧ.ߙb/gF%1K%M*:J&,̶oB!d[KoSjr㢑X& PEN`~Kn9=w6!Vs,4TZySO1KLP` cͧӑFB]jk`Ybv#oqRUi \co6>dDsE7;^Ed5^*['kIN+2 FzC0sHή)mȖO(?CZ@{nociqg oE[';ҟ/ (pfTݻy)/C yVE*V60#8TEi9rƧ$um wnHޣ}97C:qjI(ɳȀF֢M 4.0; qv '?ĵèA.qiɲy,]zj$XOȈanim9s29e닢VZ3AeX.9(:}7;<-s_;1F2(.Үؚ8YF^Wp2{O2T=ܪZ>w<&pǭ:*#UpuRM*wQ>пWG|C/^@0C6JK+;c?18VKÇzQ&zfoWg#dYT'h8]K]o!#kjd!= ܊)9ȯ}Y7g Lp^`6c^>Ē2To' ĥW^@L߱|J|#v0=jVasq PYٻ"F$f`l%ŧSB^Jφs w "xʕ{^ٷӓhQkޅDɕdtGQrR`Rm H͂m |pE-L_ʝ" CӅ;UH\_-L riէ^msS ȲA44ps>UcDU#! U{uʋ.xv'7!1#{KjaU1_brw&ɐ3 3]!4M,6;6o*V0UБ}"T{phx*_'xqA2{+c J60[2咍~ 9wc#7^bh8mͩWrAM!3WeRר<)^@?|Bmuk6(Ot걼kp|tWl`bg0oꮁA ~|O߾S0fD yu-]_y:V3{b 9{䘱Z)VfdB~ΨC{ Γiʼkoz+xE>akf.qJ"}XNN K0-P4֙ 5AJIqW #n6"]ssᡦ[F49 N "/>YP9nU?6G떏^{/4@_mf |D$``]Bhz<س&WQ3K-3|wI_:l굆wңM 63~=s ҁүRd2˱_CtM{ ~F陒uJǣHOqdͭZuH)^2D(hқ(9 Mf I\lw# sjl:jk4KW܏o(DA !IKV6,)-43ETH9%60I~oȲߪdz2Jj[":61CvǜI}j ^X`m_۾7: fAVAn7T83A⿓a`߅uuhH>:uWΏٯr gp//o|el-Q(Wv5B@bͪp~K2ª_vT)t4[~iի~IJ2>ΦZdmGI Y9SY|" 9aS82d.OM״aI=$j>40#\}yqM:7Kʾ㩵e<o1!0N/:)]L7E RF;1h9Bh.2TX>H.!(rL֫םoQ{dAЫwz%nu55^[H#nB|6X!_>{e\ql:KkIs=ށI+nZĞge F݅cv ]I|, Ro]L2Rw\-ڕq8,VD`מ[}!^.dhk% #?ous5FѬ8ӐH\iOvBitԱqӺy{!8  1ןJjY>kj/q:#PV]lů%SgaʂcT1儦]? &@s^4p%^TQqM*%! RܴOjv IjIׅbN4qo2oO((o8tNI-N4'=3`ӖsO10Ŏ9ny7Ƨq c 0FZ۶UL#A),:9>Cs٨_MPm= ~, %G\T 7:٭MYsdrj3ڟUPtU@ppF> O1Otom JT6e Pڱ4:lVx7&kTt@yi.AM.nK$CiLfn.7NfUT"*BR+G_zP+굏 ^ާvMk3;xk ]R ej6=Nl|If^|>rj̻+[S(\"dͯuo[ȵ8: Ȁ. Z BJi5XzyGGL3C ` ~50מ䮉 ηf {OE7ǐTpSJ -Ys! r?.3M/Ɓ'3'S}]iu[gC@X!>_gKprb!TyDI_W R{X7pw3`35db퍅TK;lgE@Џտ"OK.VޯT ғoTr%rK^S*-OȾϮPghtkNq? uI- >e@#٭1[\UƸx9B 3$9?*lۿqINK3Z5WBN{)Q)&f7?B ۨfrygnSxLeO=`S* ]%?ͦ5b d>8`VlaM vAy6ZiHZ]O4I6Q;nydGQߪJS/ްG5e=?Gys >0%p9!;w{s}#/@-!,g/n:T'i*򃘡$ޣKGkLyk$͗ k~s7&l`޶~^j 8(OZzƐIguDoPvsu)g;[FznJpބCFy:l@o~.Vv,8Y!,В"]1Sv͵,'*da  RXErGn1ҲkQIs sW,TdNB2S5* fwk^aA#Hf v_DlC ([R9$mK;?Hlꈄ+%@jFSp4ͤj&tNXV 4b:דT e\fXL-:v<}y zdC%r&?'=B81i |SOEmKruo yHо.{rΞii.YƑSmElyh*dtOS˿%` A#h }~zUT`|]$[GxyaY!V֗[LB۝ A5ߑWw`kF3=kf5̉p_lo,Њ@J~̱xô>d$pcX] Lj{.W.QF $#qɾBĽVW*.EW| braק3`S\gbkU#ρϗBK&M}/كf22K-Xpg0ta N-iT{#ST96Rb ;+ zI+IG~l#T}b:Cf5?o黂PŬLэBHZu&w)ah 'Qa&L9zgHžuE^ ]3AN0o?1KiۆBq)mGPu/P|wa zGN3?YX!8)1PGvBEEe:[ k[#BXoԠMUhޫ,tAdSCq__xX8DVHEт;A~=&N9$Cٲ潖@Z(jFoOU|uʅ,bjL:ti\l^4 Yr'sd>P@2aJhV* Ӧ+}cAoGK>d$fE?]/_ϵwK+ob~86e\3@L9!IH!A+!:z<7Jl$İXMS&powB2z# ~AOϝoW#yoM1+̹ )V,q);T[ DUmB*|juzr:Gd"gz_?g!LJkK&9_z/(CZ/)lgciSXj'Laj*rԑxAV9Cv ;3EO.%KS;ůXDJÇnMɥAywP2esQ3<~ǃ(PI5 WFj܍X@O>ynTEi6.I~U5FO|fa&0ƝkDě0N.mW;Gd6„"2nJe(l'O׈KPUS/m^)3SrfEG%kB1ѹR#,l{<_}(C,Xp>@:rQivWT[pG5&s( |ՙ\ % .~Q+[{=c#h~R`ӑ4dJrƵNvtT0j&sq4;ev g0&oQv6,KŁZr㭦3tpKtGSɕZ qjab-j#N9 B9$co#m>|uso!gۢ˴YF#XI.1u6,5웈Yn7CSP-ߠ*HAE7 /vʤNsxatH -:PÏnhAQ ?q6<3-nUxC71=q'HEMrIP삼+l!M7 ƸK3= {$coنrjz@[e=8\U=9&22U9mz&I`lFtd -x 5A*)?,߆}$2EXlj{!v%bD}O+rLKr`}ǤrIR,wfУrl)?0 h0>ԇc<O?ŋJ*&6Uu %ޚ : E2? 1bS%Z~QYJ 3 caVn\="u<'Êiqau+ p)/-5*hw釬xqcOSf'.'Z>BmX(-E8wOah AiɠXb9_|WٸH݄OCygqH#p, L}4B%Dֻ/'ˡeGRKnn+ƒϺּۭ4ד(p/z391 u J]\P+!H90k &m2!kƑVV>.up]d.NƏܑ +%^n2W; ~`2F#Xvzh!zEh |mv PǕڹ +;K05\o5a GWhtCjd\Wf8Y0'D:0]Sl]>uLR1PT7DK"FC =D}Y ÷ ƣlǷ-16(>C}1 4OvQWf:Xށ{P;lɵ=@E> -C8;z|zQ,x፼P-ϓ4 (D{ 9bIĂg3Kb/鄹p3`%R Uo5aT&PflFR~8V;eJx|^qJ߫w['p13h#.&>`8C Oc>Yzo53~%fp'K`Qk吱^q7|uГߙ$-g^CxYR vYa |ߞ,I kLc0z R[hjkL/ىqV2'X?7GJ|o1?p*U־޼Q C j3 ^VQ+ޥ!JaHc(9{hҼ~2>$eK/ܮIxҍX_i IYUm9+# 1S&c{"APL:BDǖ(.ϾE.{Ob c+iu˩Co*G%l?KgwN5ѡpQ [ L+i$%4Wۘ{ *y!`p s^F_)2&_$S=XE&/R x܋-x7ΔigAHZ\~2kmK/'>_ڼQc­/kbϽ :vk"?]]ֵ$hTo,Y좊 ;ۅFrT8PU8Nuqo˄^&&-'~Ɯ~gl߄u 2\/ҭ_P&%f!`> )*Zww"zAKA X5M;Q-UhJśAB\knQPȁN5!e4{bv:OE}<'VWg[Gi捤VH| ܗ mgOm3+mW Hj AսXژ&;7콒z_") " 2_|z;ogA5T]q,\{W8F`տdZژj@ 0n KX9/ihcz1Q.kwcl'`U\$z\oG*<i"6^M=+y/dk}|p>鮃4X!lz75r&aG|D;ґϴJu1m ;-<b0^oc3q5fWwRZY6ژ8ɝ(?旺(I%LA VFzMNuqws-̈Qs/Ӹ8`: 7?,~guK!rol3Q0Q:,?Y@emB4GS{З\x)d'b_zGxT2[ &4uyjo+o)Oel *U3,Ä椓+J}c_VڹݳXfqKl:izfBڽ:~LᶫvdEqh ,v2?dX'\~]^#sJ4gVRmZJYHI,ĒK @|Da sj9toe@aX׆O-[zbs .W˝~j4ef.d'YX\UzQβң<ȹݭS+p.@ qs+0e7A쟚#) Xg HS ?sqG[9;co=y. A|\~@i-F J| t})=+|nm2 ҃<zP/USwv6J87KA-K͕.t4\S qr^hveߝv{WiOH~ߘ V d?m5k7 J8`dNUez9!@g.KgdrR:ϝoKR p @R#a@j]Y=H<ފ̷Hצ4hPe充;[ Y[?U}?[ąp- c]31<'̀=]_Cv CBX jz5y,~]Xtz=4&j1"[,S;[xnt:cڞ4Cԧ t9b(kJެ5O y:ZJK}32GGԬ|h{s(3g݀,.;{:.4u/$tA5 d0MQ)۾@gѱ h>BdX'uI<8 I1 zHi°QB}VASEScc@Q_9`vhSa U\uH5FrUK/yw 3ms}V1oiue PWlVtf=UԂMC=\L.)tLw̓+=Hz{/gh-`Us>#ȟcpjm1]@ՉBCVέn049I 蕢{7t leƅMu,E׿"c愙[+Q>RT>g%UNA o# 8#2FcB$vWd8Qvd֯|a7E׎  0KkO@uE Y/{s&UZe=B&(!P'3R*A[ aQ#Zf 2hj r9T-a&_5%#i<n'1;G;#(sn 'J~]jaӁr92\@tƣ hCj[?46Ņ{>~ƕs3'FFH 伉gCf3.^sf" 79D8tzx-OhpUsտ!r4My + R /. i{e11=U`.&obǚ+Lo}Wcb'}7\~QeU80M%`U1";A]=醚 8*w9Q^Rax~׭>KEReu+t &hO-%  pȻ#{1}R4,Testɸrq@݄yOJse@דYDu{kl0i@υ?Vcd9 Qvlei77aO5i{7uJ H=P2c?I>%,.UKkGlV\eb:|ikVCq)OnC @]t7u~*Xda?|idgo̮XbH3Ae_"*){+LltB(Sx [jyB!Aɘ8hWy/ةwyecE #Z͓F+73Hd2`񲈋&- 蘕("[5t".:BBRX@* Y32Ѣ^1UǷxhk[k' ;=(ML-k0Q~AzPv[3r=: <5xM(ez=PM3Ũ&\,*|ImCG 5$$8d_;3KtR~MH)^aGv6J[ ˁb]wkIA!+;s%wl*㚃[#PZ:=˲®9TX4t w -^Ng؍sc2e@gY,r0 4RfAʴc%X#H3!b(RPl?,POtb{%fb60t1h5С˥=}'?DqKH >TEsK9r77ʕ[fz}%K/y'ʾ{f@7$FhYI^̢C ZC @vMJdCbnVԖxoGM!Y Dq?KGJ?a>7۳FTÎ !f&wPBa?q eyM\\(Y{ؗs2&90cE#@Z!>};ScxY6F/7"?Z|ITѩOoSvKtą%gS縜dˌQS|Җ$BPc?(i]XH؋+/@=weftOL-}`2S4:~vK F,Oՠ &'&kGLFbER~i&ZͿvWPU甼v\hTq{U^!yn{!\1z._M4۠E}a%uh,N)%$j۰l#*\+yKLbTjuHԶ|ʯ:yt`@ \}V#Tݔ0ew^*/0!f@K%v^|,[u 0:av?M6aw"{gVl5]?)M}rCE8MhPej;< &Rød{%36d EF>OFpu"[YUV{sov9:4o|+4\B_~-!lnx̛㧱o pv9 5 5%yvA ^%,*甸wV)F8]VS9[И/4-<)4萖gU2$BP!<ר#9d>@ڀQbk?kM$f)tVlF=HzdKw ^=TNhҸMQBDJT8;(6MݘD0"~- `U UŐzgMs瀸-7i_  o< cUH#eZwMZ :<_b%'I9pqRŖfVf%? XQe_{ wYt j΁m/)F%==]ey^^bg T"B v &% & g?|M.Ų/wpZqr9i.3?y|?K a€E%vx.蔜Aswr O6^A4U !~A1]ݝ6g5P(s[J6iWӣJf dIɯ`Q_R?)1k$u[%NJVx?Xs(yA>I9%7hv7̖»)# /!1ԷW0m&+ű*&º'S+ёX&_V&ЏB*Rϐo81N޴BzI鵽#"I&MLF&PXLIXf`DIz0u82$mWOv*Yq~usd`J3 dSO d@'ٖ"y@}%oҔx,X"eNrpZjYpb,ԖCC2ޮZyII+,ȓ꿚<2i)o>X\!{(Yw/@7WbZQS%ne}K;.tKClmxO\uH~GzB q\s!qNe"!r9%Jn1s eKT9'\軾`@qqXꡈZaa* X%g;c-!/r*0sl?DݛS ƨJ".REІiʳxavۺ x4Cue&<9E-*>-sk&j6h/^>:b2YiƫD/,T$_J; Aj98FuҁI4;7! 5d^֣v?}{a:0fh ) Wq~AsP$v(sn8d(x)uNҊdI|oo<9,+vqtbVE`$e)BߥX`S !A {2Q@Rb.%B|AhUS?`0L5ۉ=.)3D-xIP75~jňtD4fY?!upw"$7 }.e\@mxRFBbᩴ eEWi]> {@]_VQEIާšj[=i/= xC_(4 ^Ϲ @9yh[<})~ d8v8ڵynw&S Vg9 ;gV# ϭH!@t!S"b(~ԹpH'њQt%ͨ('񑨫4?g'iw$֓̚1PRzwaԘCR8UT-X%د8hr[ FoojN#39~*dM)ⵞ>;RbK%K]=2ZC (=&ԦQAbAw87讁Kр4N~#{5[Զn'\_z⎜(8|$QSLb?2uc-Y Z0vBuخ4ƊTzn_ʐ@5gVg XC)W&uQ;cu] gG^F{ru)7:峐d}:xFP޼Y/NGH^f;l۵b1'A j<'[*wm$\o\>c2ۦҍ2quvLʙp,M^&SxL ӃvQC*L -&G7F/ hM-u99&0bAz~MqMX,6 5U&mZktġ\+v> dI/ 7k#"ۭ:i*-ތ?D֘s܇wFk9est#f " T$n d%h:9}pA\)6??} 3PIMh* aclhdL}uAZM"]ĤNxP[)Yo\ j?cf՝n܅o|&i 4PQoYIت&˥sNK,GpG~E ۸QKƖZ_}c<~RZm1[u8aDq,am(EkKV 1}ZѵB3RwV*nFzF(ܠyNLYV\0/y»j5aSTih.dly{5%&E}Ղ0% i# Un"olRyـML'jv }ʃH/gb0AGD)gk;XG hoXb@dnFjj3dGkhܷ_/@!'-isdbJƩI+CNr샏wڎB 8uOU)%\>طcḦʠܫ[^( t:ah(CJ医:dҺ0N mϠ٣=Ue6RIq,HPzhl`/~c=3 'JR ]E\&U 6SI*ӀyePTLswY{W"^~4Jjꇮ5uy}TbL|uԌBh3/w%+abIh|Tco?:Hp[fnusWI.$:E  $DݹY8zZiV`mU3t/lE J; U2 Nˢ(ʍz[<қ <)0ۻO&Z15(vp0QZxWtIϐ.ne[e`Vc6Կr],q?$f,-mn_`r 5WP|̧9"Xǡu% tVWo\ c>H^u=561tMmS"\͂`V6z<{8eMقJe]wd9yWk~#L O-o},.>f!pNE<1Q'-KrSuDs0jTyDNo-TJXܖ#+Z[m~}s섣2VӢWD kĥe\MdjXx+mw% B-ݼrڣIA}zm I!d|~ 4:`-TgnS\#(/Լ̈YϠ{4~r[;{* ܬ7cvq"T}:-"ɝ-XSF҈j,ocF!H7ߏgAdVƈQo j)2N}8J:Mj.V r Xf&l_!,.\t6lDL?k[t*x@Pr4]n&pp+Y /Eqkb/wDTm6Kh2p-j9?J`b%fIi /?'W0|9YO W65pMw9ȶEX?ũ\eI^=bsu]4 l9YYe2\8]$Q6=fQxGxeĤ u6AC\.*{.k_9c4'vv> |ov@Ůp$L(DOir=IS&Rv{G [P'~ӞvGL p'U83f)E>WJ R1VW))g:>K->{D`/>l8uPjZzXzl/Ϯ '2< ,y f VЧ[weiN# Vf3nH}um trG;"D)4ʠ4u/R2> c\8np{섟!R*iS4xFeY~l*wL%:<)ET+nky̌H6RsM9}y. LhZ `1g}DPEu-sWGaoՍLt* Θ?.-+x)'$$[`toW\Yx=~ ./$&DbQGcjnř'S*}_JJ Oc'3cO>faiṇ9~tr`{?V9-94le&U-Y&Qd4$pPh(>A`>I ԰Ab%NE :Nm($ZL˯<'b}p҈)`.2tp͵ӎDBS$^_yP)H_^vp ۽*cN]>)XS*b?d ^CZd?**}quz漢N#-C[Eup.Go?)H)8t[ݚ y|* wߕWUS>IFo1C@1t_b+ <80:8(1zrE7irOwmcR? |ozC4pb8+Su#PE2@>],Q9r_z'L#0 +w GRɦ2[t@p+ A C]IkxdC Ȇ|! H?v`XH;ʓ5j2\V3%۶m%C_aSX@  NR7%SN N |DKK,ŷ >]}|4EŔ-aTSݯ T-qsR[( $Uqéʺz')vkn$Ճ4%,NBZ )tAmKdu^n l<: ˗1xi2狽J= bZf=> p0Ze &ŝʐ=fRC="d>W⬵p|}HQ.鼋w>^IJ.6ߪݳb1j y7O?8 }]U qT]{*5F v˯;z~Ѵ-YBZz|3uD 8Ms}JԁqG J,o#g"sU!f'9n~7!Np3e 41)+cipTm\ &;P80iEN#hy U/ 09iCݸ)T\SNm=PϸuS/6/JPGh(B{DJ$4/W6͏UCɞ|q ݥ7)1sp. }zXa4 1BYқkju@JV˾ik1R?~+AݑĿ6|#AkƜOƉ =s'ɡ!Wݹq UAC֨+bq),g.ŏXÐ""l?/2#8< -Λ_PWKeFD)X R%AqVŃNX>I'[/j,54rA{df_sIcX W[$hVN :!\/fW)~sW%gC7pBL>Gq_c̅24c aD~$HOf! AEJgiLA!TkkM ?s1bv5_kt>|?B]jrV>Mc#)sF]{"}߁DiRE~"tfx biZ<֌UM gxYSΪ(1:c!G9xJ+L̀b?EmHIGW ms >OƯߜZ I3PN*m \(xθ) C[hONTճUR |ou02xG;NG'ev 2r1uN@@[uq3䥷l++B~>xx6F,O+>G*EG͇X/d6s؏ܫ x|'BܲpRY{H$gZO9hGt.+o"T*Bxo39X^,h#`}4?#b]iL[0g?YK ^[hZ*kvAʹL1yz 0 2lgbɢUu|XD p4oRZMj[ ׵NZ&5P_á& o-J- ̯Kڋw `O λ۠A Lߖs/ܳ["^ ќcs*;Y|3hEߣoG۝aUG!ZQ8BmjY7 9PaVPknF{V~l%gzjK75y>m$ϵZi<\K4IcPB)Xt$soYdO/}Q珟Hz72ѷ+t$00<5}.`Yd_Y 5C*ngA%J//0~{YE L 2s*mΪ@,g1ip<]Q ޙ"%ӱpٺ#k>##6M:1VXj֋?n(gPceZ'x+p!^E"I]l k\KlSlUY*YMevi6 cgx_8L8(1FA;OFnrҧi5DU'~!^!BLP]}M<)vdhVUfPcNTR$rL2{1+L/(\O\ VXM\_]@2̃55 |YDXLBF]\p7`<q_/nmb. @1LrnR'j{سˆ$sÒ_gtUrq[Bi_z8 ⓜ<_Wt O>IBYP?ް w8wl Xt+V&>:: T ؒg O ~?L`VюWpBv%LɓX}#&}Kџ \t#F^ ƙAޅTDηS3ߤ#%},dP >~ͲŽ5t'J'mT,n솘}6}y.r/yh)T\X0zޯs;QsN G,56jzFku ?Q`jBmдν-]ٌ*/^0˻ VWIJSk(3}`n1c!.w0A37}8ٿHn.َL9i8xAx"g/ }B!|Ƌje? Y>c@6L:f (cAQ{1W*l'C G7˟նCݧ@ix3˾vci,7ϹtDl!s2"x ~<&4rwy$@8M($moL+_CJX.p%<{}[DʇdѷX! lɤ st:>}fI(Cދ E i:cW i&?yOPQr84+ I9hOD)IR*CV~V1 |V3tQtސR]bu0<1' m6>U},GǻEBv|o %j0n̗酉 >.SI < CGZ}ٽW%qߖ:okAe㣋(.ú.r/^k{9zG1U(Q75gDgH~z3+u<.ʖǵ"A5hr|r..| -ٯajP3HG-zhLPfLH/'c(+&sƄ[/upAWJV'FFO+9c 9x?C,6Ӗc{xJm J1\b.nR)|މ'$7FrA3T~mc6WS-xW>;$4 9:b!cD:$3]+޳)kC@6|0Py\/EʻePwJcRw<gh!I(ܑU8\f4WO[ѡjYBxOk@w )K.bᵢIfep%p?>N.-D׎W-/,F(Dv4i5 A/V*ʦl0Cz=wl hB_/ c#ٱQ|-,PCiqwzS!|7'q| K0vD؉o~8)Beh9Ȃ~N7k  o©n֮z'eCA[<-ή" jgO=F+~VQ#IQ堃:Y|Zz[m_O݋.ntt}E'X6 ߤeNw}҉^M6In.B{.nx9L* AqX/D2wB CуSpd+ v:$.tA'l=&RWC ]ǾEf vg_.l1OkGW*F-L֤e Uά@\I)0*g:$ h'l ӝCĘ Fbn zƚl_!74=>yzk1@Z̔#!|UrveCnVt٠[ɪm9IihT$|qK~o\na Fs )u$cJ'V.8%:P= Jƚo/@f_^wu#KVmG5[cކk@<IjNoX{-VHO00w0c,']Dhkvn+<ւ^F\Qm = &my7PFޑѩYfll FG_9̧ .[Rhi-hP ":&hfd~э'B(wOr )}3+)>!5=P6)4$GP1. s:faV/A -W{K.Y>|Q"0 BbH0ksll5FE3R!2 ݭ <ί&MI_bbtM=(+t{uKgs<"(8ߺ6~1#,ҷh)c8#-f u3QPLhܺ{Lpv#"^! o`9`MQ;iu>Qakx\pRb ' !1Op+bث,FvrmP+2Cq~uڲ&3_HVV]OdAbs5ss@@9y୕U>(Qh-mz os٣<ųJE 2WQ1&`6$ulV;zoE'einQbh l9Б}W)ar ~Vp g J Ol|! 3' 5r9:Ȍ0q@2ctŕ,♸=)+ IAŬ=OSeuqe(EDނ$2Wji},S W~SQ.DЫy_AUEǏD\sZ nrʍQ$l/t 8;e:3x^D]H8r~*6@ߘhɢ0Fݻ O^ks*]<v2? `jֻOZz5LvōG*+'<7iH7@^z0Յ~mFS~9LS"~ (9a9by@?JA~/1|֘UčdA[#R#r);\N)ZP#ޟk g+| L|cvKs[*+^.<zpjL^ݿue"(bXI^^lw!R~%<)޻2*qnnǤdR2xH{n\T pɿhy)e=A"Cb<M1I.4G/ {K peXg#ͅnyCyg9Ž 7xM:^wr{[9%׺{iHZ:-\J]1`^@Δ'ei@Nfgn-ڃGl1]3ǵNJ[ ׬?3vY*,]y+]`d|.Vy jqҝOGLjmeĸn%Bm%&xWS<8p{j!\?Yo ͣW q -Zo>cQ$?I/t)qό.ٲo+F 65]a ;A8UK`0."!d׿ ꎯiF q"~gg!ua cD J nC%[؋Sё@#@i#dd>+Lh3 %ֿ߲~Z pQ > zԀ.kҗqO86o1i2~ŃKSlgGY}+Kq[R,H?bh'Js!c&a[<&ZT-~-esB;c^^A@6agEa祶xqA'Q:WD1M7:^=3tud2;EKD;Pg KU|lQ5%=Af,L1m⌑M!A|=NF%Xtқ@1C,*cW-5_~QWm5LI8˳M򬛌;nOQCctwnhH`zrdJA<$g|C1sٓ%,.]XèOWexj#4fJ*\hY8QS(xZZ@hɼru 9l蝹UUQ[b0X9Y\ӈqkhLZ;vi?6 zV-+NP![74 e,yV'B.֟1G*p g<ϲOQrnKiAjj `ߛțm J[EW/*@rKa ߪ!\ x~Х;V'lVcv7> B,%SVَN!]{ =yT/m C(uKݕ~{~ ^53sA ^bxٞ{"lk0 }FI۷V`]\Ľa1r|.QiQ& Uֽhjr vHXB[gW\v/Q)?[;W=StO|6]=)uUuAhqˑ%'Me"FJQnmf_t?PY^km=4Ik&3bILF;/549cQ%t͸Ȣ?[E#k#@oH"~uY؜Y8 {ކxj_m+MXÇ<,qdK`Bw:I6>c!s a;pIPpL~0m9 _tuVx|% Dd袤QG|1PD9/s"G>q_q\>};29 yfʵi9޲hVYfƻt#"03YCY#Z;T+2:ȾPµ(r`U_Y᳕ cv@܈#x<ׅfYeşg=ynx J/e_PbpK(tly_~/1B=f߄sa|*>E zx_>qnPiTXG0܍0z˜- {~cBv>s塻J0qItLS5=zqkw!asn78~7ik-*a*/OqD҇L!JZYQ4Ү=)OmA'qYt$\t$o=$y!27W&mC\(eצm̛CaTl$ Y07|kRnm M,4YuPugWh+Ҕ  @a۾')O`Qм϶)xj)*33wT`%dX& ,5@cMƀHy;ȄA.Imxot]n# g2v8uζn8ݥw\k뉑׽ʥ.Wā b|m2$>qfٶ}*'#)qnlLD-oliB`0Ϟ:+ 957irӮm̝뻆hzu2b܋ 5w2Y7fp@;~޸qHAKC X=dLpɝ3~2`XIq!fJ)[/պz" 7u/?n0K/Cnȁx.XﲖKf,9cnI4;`JeW2S$OݖtE3WC/e3I6LqKv=71,p U"{8 %9}XThs%ρ2wf~ᲂO۞yEw+A9<_B=[ |HhSGQљ4 eN@R@D~u d~W3 |myWQnj i36 G_S_y8ۣGDF>WM hslt>g¨hRjQjmǶ}{O"]vi_lw(GhM|EnH/'"t|xTBBY))" 5p9"J昛9ns5*/ц[f8@aH.e{O]/At_Fs=8w?3xx ]+ij>_?K^|  24Xj|i5NcDK#BxzаyLAP~ٯ?#( 7;'"ܘ)JgTM*#KbSXaImcZ䀰@q;. ǛEC, M~q+0M.C\iitnWPkh.ͭ;c,[$$ "@9'k{7΃֞8)ZUaR" .E)#D,Z?NxYYv};NK=\Ks9Ag gAOV"cj -i5h]g%j#b+vrֵzW̓eF) :sf#ܵ-3MY]_x,I$h-ҡ7iۈb{1hiá͢M8}ko+ ⳋ6-{HRä, @Q \/'DFN0OI&!^`Uie{K>Ɇ-|]@Wf r/>.߯'\y2Јfn Gx!h`Sv;aq_?Nxί-H7:W dfj2싛K>yГh32`P`sǬ,*r[1"={!7)YY.4jB>0 EC!,DSx҆bjH^ x416v bB?r [v3]}_&)Zk5M<q4@s>;4wrb̬KTMUb Xݒb祒?Qn4XX]fwE]2r*a}2NMƓ2qC- 'Cg!9kXUELj I#&Pt@Ԥ/Xa]f(@iWAwP%5 kmCԥF>?m.w5xiK ;eBIGmhl3ᦓ=/~Gɧ;+6 KmU-F౰2_2;tg o'R4^Bj' Klp?y^OJ'm$B/).Vvf%X76Q?Α>15=Y+Ald_,SyDm39_R5 $ ]W~Qz۩!(rz(#:Dp:K{3Fr>7Nc/lE}N[`\;q[X40uH \@dea"rINae|8A~`aؕ?·8-՘[Mȅ2'S[8ئ'. tE\|"X"VQ"J ɞi#z4p3\GIs]%Ԡ68{}teZwŒUFOoncXQQi'V?*֏9Tif-qs޼d^GT!-_'sJ<uiTQT:*Mf fYZ5yO(eP,a>o6FNZtE4MI\q%HA7' ԟy&Tz;7xyLCa'L9`tF f3>zWH"'yXqTelݬ6hn%3xw>=6v5*K5>K`m$aͷbESQFNI}kY[ zFCw-{j &On"{g{[;4YOD.ns6I@-)&"[<)=S̀/ :z!E40tgO2Fiv_U_mYNT3kB!6w22]Ǎm'+ƓO$& Uũ%u8G厌ܺڏ?xC*$ u)]aN_$ȚyJVٮIrUI;zRU9.@13`sxBfhwl[-^*HBUE'6͡]T"j * B2wb̴.NfA[Fi c2؂D,V1 "{#Q>U&&z `PFXi/Dh&T5JJ/qݳ/Z`$G@(*XS J֩$Bۇq_ūWtŤ,TD` !蹳81$Sj0OaU4Yhp)ǨE &Ӄ]%OA$\CxO6ͫ1*NQI$;*;Ï@=QՁ*I~hxy̸ls^?{e;m'5xmM.M= }Ɔ&S;>ָY F | Px[ӷaCVuy!JѳeC)I pdgi4t: IHmlABLpNW`{>U^&(O [tQ6E:]6QNj~Vz!xoy`A_S9JA[wXA[x!xt\oM Z%IM{: }ѝHRS"W ⶕDDU.!d#OMF~mc3+Z(ezL& 9A?!eeD)1p ­tH,DVedt{](.=4ew d?vWWм=vNNa ys%-X߉uZMela9ǰ³HL"״p0k̺^^:}| DŠ}-d#S[Cb#]{IoSiy"%FMen:Q6U-+s1Sڛ?Qg8Os>,mXnqimD&e'_WQz"ǃNHI4Ps|H]0S>; l4YO`8N_lbu]S_܄YG ֣pdT!c(Va@NsM=C9\5DnonP BTtF5TV f-8⬕~S|M`K,}QiRI ˏ>.H ӟEZ)0`j^#v}8f2׉fN^gvTj_L~ērIM:ōnP -UV캃Ais?7b(k\۾J.4񐯁iznNᒻGUv%6i8M+*sG:3KA7݂q^T;xD"B((N!$+*l^yYui/yƐ2_ :g@-%߰!fb畫3>jEty==uzg޸)[rUo}{Wr(m&57sԋQ5m4V-*R q np B !e9}+eSr 5 Ĭ#vaFD]IN$8%cʱzC"; !Q !zʟoSrOX,~!/O,5>.: FFvc[q/)#4-*[D&Â8v ! ᇼ\PRP2xVlwO֎upT@d`P [ )GXxĝ^[̇RKlkK+!W7?hg\jv5|c@E͕jCCuxa'%QMm7]`e5F&Z[bL޻&cu)6T".mOk JbeZ IZAHiR#}~zBA̰%Kl팊z\U t'jQT? o{KFQ3XR&ƙKKjEQM4cd+.`~BMkv=E~cfeĄlcfz)(47- _/k%ACvc<ǒqh;;ڄe&1ь qG 5< >zq@5u.Y EebJ{Bԉ%a5 *\`xmg[VooZX-sCaq bЌ8'ٚ1aMQ ihsjU@m!*( 0]|_Ցz&P]s WC/~Ny iK'is2R )5&gY 4`#nك4d|r֭j$ݷЅS혮`Jxrʣ"0y0 3K g*u[11^V Ʃ씶I舰LesHTAO^qK$T<¢F=x~_|7|a{Qʍf:# _bi`_Zd {UW-7Zp/3=/zަnF搮kFw=z/%b*+AdD2qQj(`E%/\cZ'mTߞ$y]>~iEp;&ҩ=F ;T0 uѠCnHUljD=7B؇Z :iVQ0R͚̃$6^?N\Tj`T56 O~G-a@m \+6 1h d?Pip!ӛ8f;{U,<>T>򧌳oLUԦ 3E6aJBv_RT.:s񌆟 ":s%A+ųI>5; |bv6ĐT 3GԱ?ca_xwfBY {ק-C$ϰk:DdOquwC9V::F#Tx rzݍNʞYJ~~OOѿK7:Fߵ#L^[r%lɥp+Gbt*eH8. .v_NP'7kc{]y1r%%] |K@ՠbND> 2KYPق/b%7peFyqQWi:8e&U:*nM:ĊF ]XkY&4d"aĉ%%4~ Q5*sEUE f6ОE;b;!G':l:{c^M)47;GFUNzD,ztK̋M9Ӡ#9lF $bO1}HOE@Hq`£J_-"~r~nAF*%!^Up޾gDQ'+.YӔK VFK5]5{j\^( _.%M{neK/>N j@Pgik"^@@r؈ uI|T6/ZDù':mEa\\l(!wGiKIXnhL 8;5X&r`)7ڊ:\N1J7^iߊ#{% 'ۣD5e} /fN +ubz"8Z1$ݽH䣵 z+26]l&SH}EF|Jyeh7"yg>_}g$!7q|,y|θ=gj̩ʔLᙯ_,撣BJ7FJ t@D-3|=dk gi  eq,' жzjKmL)Bk #iw-}! fۂᮃfisȫ0&5inaY2:Β4'Ѧ]פDaue;>$}wh#a^+'\V4.ŶU.[i`*]qf_tHXW\C`h **4,sϔݩW-p~1lAm (\.sC}W K3 9n[H$/r~zy[ ?;Z9_]ҤW1uS D\/c'Bq԰/ gP?eQ^p2c_t}Ym&Il6h*z5@TFL^u=U.^p$F lr_v+úZsETd'r*F^IXd.F7CO&]S{T+.<->\gP4:f[v3,&ޮ:"G`fI,ZCkd̢I&񚿖16` VwjJG{[V˒FmqFHycŒq ?" .A~;@CQvv~p f4UuѹLxP G ]09⹡_vU}|3P5<Si3w~ts[tQ}Eu QC,@u3QbiLInNVeꆥz*Y|sL]a\r3\LYS66Gn^#erB8kU$Y$J4V= E&4d"Q :?ʥ9Tx}D.yW{fR6*.˘o{%gʢ+k.sKL3]tVK 3'fZjIDh!lQ?]%MQQ#mglR?311e6Aǔd\~-OFʹLSH? Yu&ݬÌYzƳvwۺ<:6fk&ʵDaزX ">ª$1 m,0SNRr. O JX)~aɘN4drkԞ#[fOfs[4pF*nV7&ar[x9 ur߷lC u26M!n|CTDM1À+a(<3nv+orU0N"Eu -n69/EMۨx 0>Ę+Npa Mق}Q3`Rj8/FJ@t8\+IY`=rpYgt eK&L{Q=m[^4]50>7^TÞzL<9"Yf:ӨdY,xiC)ʓ6p-J+5)D?6ESG<3I>l /ura`yB$>Fy9۫O N4lm" P \¾pFP:()MW>(ȧxfp7mQoJ%t= ÿHfD~[/Kˉ"&C'(qě; Շ[skWwto tRYi8nͶ.D-|E]t-Oj6Ed!\\}|fYw9{;YVb!0'tc_UP$pL-9Ki݂5WeUނ~c?h<'l^\]sVPLKw\,ܴ%Zawy(KoP"JfdB9^QoE$ ^.T~;N#4ͤ;O5W~)@ o)"T )s[!_laPRlGΚ?;w[U۲FT}jG$8v߰-wji<*Ou*;I |r|%oH,,[I_?%4eGL/}dI(>ZU䔨g 33fE(n.*#DJoͷcX'l4@JTӅ] ĦP"3[R*/G>a\OZ+Ix#ĬnbR013\ϭ,m.wwbSf!Q/rDT)NQEby!it[hgUK:sd*Es' *f9F@@nU"eY`mw,C"5~*ZQ|~xb،Ch $j6SοR]Ӏ>qiߌoWӬ2i:6 ]VX06h@W]~{} )ya> B}riȤ!lFvqQwE>ߤ=NN@ ({KHb[–pBSW)x!MҖޙN-_WmYp'qL.5tM}+@UՋsֈU@w`bﹴ'('IH}EMM&uMe%uO}okOE<8 /#{|f4yB}fym….nG5٤ۮRv&qeni@+䘽L4gw3$6O͹u'@լs^-Mj:LroA}V x .l ;Ŀm;M!)Dsmv`٣r*;"+z, b4.;)V)szz!jc·69zNHsŹO>ӚrL qoڠl7 @Q7꟱b 7yw|З,&!Jc~o GјnRF !X Ӕ}(3wEڑ D'تCꥣ*'N0ʾ{^猕4&ҥU EPLzB%%ВI/ eHIҊI|Am숇Dz/ޠ·F@:M9h=<~5V94]m\Ⱥ*v_ 7x'7-\AC81qgZƛBh74 >݅`OW||>xDf|MpXgk梢;YGN5l%5JxҟubAf &^mQ?Yo4;,oq( _pϲ1@Vό5c=q OCja\.aW!1u&'WYd:W~}ZH5Uu=7xnا[pW?rQ/O#+ {h3 )~Vԑ7AIyX蛃=J,Ծ܎p=G&,N0PZ>?-i8\oJU<9EP>-'!~\5ϝˉ3ts{- Q0| p*g*G>1߱' صSU7Ĩ} ԡL"| ;N /3]'O xAvĖF8n?T\ vlсTuy$ &q_$~=.vOYyTwUQ&"q!AUH74">@ ;&9q&(/.)jj:G_70V>^Vf`|~/`:MpȱėR^l]^HUx?! "HvzUIܻr4>|4ζ?7 fݷcy,f/*ae[OΧ ?J{g(Ύ'$E;j#쩷8lf~f@! Ң" Ψ>R[CCs{ ,.5dă#*גr-g=ZR7 H;X6U@|?^uCd<rvI9_PHh~ӣ#t"[N㱂y ix4-Ngj+0ܝ@"yJ/ FEAgWn7OrcU4yD"p@0*p[QNR2jт9DR|p7wz8|;.6B%z/'>͕$ d( ;_h~Ы*n#4yHW<'G1t`0e+[P'h|MI0`;: אU`osxep_ zrk ^9֔L>]v @/ퟌ!MYYu0&`|=mꂁT4"J:$ck_gƔ-闫IG hM @ EIc  hh $o }CU JIO|Irt݌>F[M<(hבlPxPr '^ A*.À4)aEZSkt] h2$@0J uue({3h[U]9zEe-.} Ab hY&Į0=iF4lC4`?VxK@4 AGI}#')1{T@^ǷnXOXtO,=Ly@(-iu"0q".fKxMK#:D E7)i6 ?I4tOM7^麮ΛY?1sl/_4-Jj*+Yj[yCL$03U "*줺=WW@AJ0~H±"aPΛ)P'tvhMEq faySj_}"u D (ۦ) uudX2?J3[Φq]dlA{cPf2$Q>"V':G\ 5:{ݰνEzjrMk*ʽY\g4Yw;^a[Sf '_LMw>=0}2up6F ^—wdaG\se\[G̡co&*1f3c7&qh2 9Ŵm'I4gFC ͖ eʄI67d,(1d{hƱqm lB ,-j> 6x4 vdFleA-jQW$ţBçoFb1'!2w9+Y&jwc:PἥNYUAUfʂhH#(h"X1up0^Oks+ID5́J;_K_fٹ"Ii9F/}|}rY veyQ'Q[./UNn?-"[A~W㈋a%h?`vOsx *JbOɛP)%|$idJn%Xǫ' ?-7l)'ǀE= V.L |uWZnAvjT(YS~Yphdl[7 {sJҝ,:^$^ƺS.DjBnsk56bÔu1oN*#*c؟% *ΑCRSlrfM{BrOqD̪]( S(d?g)J."p !O*ga*ÂM:9ٚ6LQZa@'8 wi̦tڪĞw9ufJ"ߞ#l!-FGRRQ=/HRDݹB֡xeD2$40f*\le0rokgX?} GwY}pK&bb~(DK6mhLޱB/ =[svr.HvXbi{J11)hS1x%0WJ;Ҫo˄9EZ3H4fѓfU){x^!d @t< Eҟc7['$\uKXI"(!`bw+=&ר0rdnFMZ8]P9LکCހaޟpT@j14 'u9E1%`ڬU05rNya8O;ʜi]1W{H;\um8{h*cc[k^f4+uZ|yC,gB 6;ʟ]n1@']P$0WA9,G1Ͱ]/ᅊh+B%T Tr\Z g!p`{ǡ G eQFq\IxYvVQ . UVM&@WQׂ|gTm4BTDʊ-ryu8P쇜Sln!Z1RPU84ؽ#*9N+WMOzD]|ĺʔόޙ`H3 ' m Ɇ#fRٟ߷~w1 mv`G3@cF%N+ʕa^F&"Y5Qa!uٶ+IAJ|MqZyBgd(_B%_7d]fG3iaVF)gF\.R 6w\[.6#P>oO,gx;H$Z{ϼԞ1H\J9KV!2"_dߕ93%9Bo;%IW&c`o,o;eЇкƌ+u au kB2{b@Ժ׋iz:{uM:YiO~&S-|.uF u8 a_҃A+ήqk:DTCҶI:m ,Ht,9$2dø}wUcQ7 qAt]8!zy"Ju~XEl^f\DWkTVfp6z_`YS (H307y5*pX{'x`/'06l 6pqf&[ dq47~*@zB+sbW5x]/珔͕2[qNyeJ eM(7]zM3iC [[5Scߨ6I C6ဢY+e%A<$sDyr&ZͶ.U@'5J>i+HPG3=S2_y] v ǽn}1x!˒տxD}˫7NmWWԗØrhhî+\dM֚pSnKB_́3v dW D͆ZJ G;\"HW%e-K=vi4x<$|Phta첖0;3IY8í=Ulkki@AoJLy~خM0Kٰsy:G 'c5`^9Bb {"\f傩 ߭g-.!QXpw4̌ش!-Di򰥂A_y]j3Sﯽ^ Z71 =2ly6y22~&DE&%P.D~`[ޭpyNmA(/B".|1/s4}\]o_ff0ˬQ:*֟cCpeQj |DUODRKcBt$eLhMo"^ DfE*^Ub6-{7X,p?@ψbrVs%#A D~~3^vʆ{鴜p^3T r+C L?s+ Z|̿v#:-4%'cMis~3(FnOg5Gi{ĎuՔKGonzQ.bL ńv<;QV]|mꠗzٺľO:Io"r/rC_\&{M,(]نDJ#ZD"hW?Ȏ+ny1΂ajs]]35pa|Va4Amf k -w(41lu3S9檺5Cn[LcT×7"K ΄%z)qYUd;2695i" Jh*ץ0N uA2բsZ<`j̶dzj'Sc m>פ΃?й|~l+$T ZH{:w(vLd8rFޭ\㰶]:Ve$,Ns@YxF?: xgu5"@p)pԃA6us\8Ե/Պ)(D -uj5`nDC- e\&~A FBڬ_H?߾껲n x5w$qŵ1= g9xt9ip#;n{C4d<}>}v~)ޱk&,LY)~m[n:syu1T#[C;O5_dm u_/Bt CSž@-`fPI@?ɼTH],\MQ$$vbɻ^( \˝ǰ2@EV.4~2Rud㳻rŹ\,=*Y#%WÊfG^4ɩi>/4:3$^le=kɘ+dWm?0ښ:V1a`}/Ñ%*PJ;o{>܎!F@r}PXk-JM)"/8ϙQd+*!*U"R<">P 7 }Y[P=ӠOȗ]+g S)2 J@ ' pP/^m[NǞ&}EK!`BV.VL?JmPCŖnH :rƍB*JdXE5%u4[%LƽAohz¹<7u10S@h~t6E*iPPTLtrMҽ2]έ0/#ar_4uhV}HPF^6iEӺn1#w~{xAJ=E&"b1b9qnu,(o`WdctSLUd^_?vw~f8:'dh ^ hC,3IW'g`U @ґī5n$%UJX_VT܃CG$s79jH,FC%1(l&O$yt '?w J~8۪vԆۓ۬$TצC 4V_XZdU>%9PC{ Ln B:҅=,+hF%p|2 R@x W>ZGCp"ƧG1>16dYVƹ&k~T:O |rt}%ϼu_= IZ+O`45]:'{! U7Q,IY52NsQp%IldN/4^9FE)SlT8$jQ̌ɥZȣ]puDIFUW%BzԿs)qOl;mʹ~\gP9AO-mUfj=5KƔvx ~.n_[8(FkJ^dN,o=GgXwMH T5qtŬ8uA%DuQ@Wa\ni:$c aoS,Djk]=0[~81Ya ³yv³OL"-4aYt͓IGjJުsOZ1.(⋷Evࣔ>B<ݣ[#wg{'EW3U;X#sʜ| Wa ./կrWߑXTCEĞ5+-,DҎs2yZu߄#ŷKD<"uXYmG,+; F/0"6ce9 C-,kLy188`ψupraW=TŽЧQ`~&~aOӭ"R璶dא!X9ճWxEOrMJ=pIg$Eռ3y]uIĀ:9k1:`9J*zWu=Nn$U9t^ȹa(ٝv 3 ⅐a5,n-IϢ9N *Nce Yӌd.RPQaazQoA!n,r8yDS2κ~{jp7n*cGC㠓mʏ3zo*++'<ɱ&L{EjTNM8ׅ+wqcZ|md=_*{RΫ 7P| #^ooNUY3p֊7a^kp.h/瞿F3Ɓ lN,?FÕ^k9CZR]]f2ִB-a#Rh VeOb4X= RM\8@}!?a>s&r8|s9{퐁m/j99M\ ל"N6%c1ۛיff(v\~ZHkfZ<^֍"})xt%G3Ŵq_oރ5GKrg!tGP,'#)7U7it95m(WHvaWFJq0'K=+X;]WoT;)wtKb|MxuywP*)j΄zZGV325:ӵon9QQKt\"6‡郿Ɂ- ;i Dl.{ZL*^LRH8ҝr9)AɱF2 !Qr̜)CS{1a~[6%3[ŴѡCҷUab?zJ ^$^da}HVvwU f2y'`iH( q%P2d˨Ĵ{u ܷ|C\&BĺKrݸTo%ƫ&=*4{|KB82OE%0@YZs; b<#k+QrڰOvh۶7OA{KԅX[z ]D3Ebv=pTAP#Q@81ܔ޾~wG67;Ç%ny^䭟^WR6\ܢ7wFF}J~{>JMReTg~IN?M*&c7{C#gc"-nkJ4XY)aLΞ/qP;o]VlLv9h%=+P>/WMjȍ߯x,'IH+}G8 -Hd\/g !2g @,!lGtX7>8zx`[FR%+V2_(I7,p-v\1Ĥ HEh;Z&j+*)M8F6Ή<c&v'αTti%Bz|*>1D]|p[tWac>}f.!mw53J;cTmaPӟ$S]%:^h$#Qvn5vȰ9qF ;79teanrQz31b1| #@<`mbϓ|PYc=55ph`!$ّI:cV[Qiv"* 4]˞DńK9Dwc U ~7&XQφgցʍiW&؆K/89Q p;{V`f}gϩEj(okc7Hd+!~hn<ՌSqk:7ū$<7<`\'_"6\z_[pkn3:V%u7C->a?XSy_I@dIݢ-}QJb"d[H: ]VAVo<\F ~M]~!ǏO&qK2קfo:'DCMY3O.AH:l`F{B.☨9Y,36I39a}u]*|])?|3aȋȹv-U#Z0cfʒ)GGOwZ㶶Қܒ0N%][ M_x+JyUS 2_d^! 8%x2n9(_`w|zn*Ya\*~$؄'JA)|=4v W:-i΃OjJ{EYDth[:6}ov\΁d~XB0ZhC}E}u<3[<B^ѨmoVkW!DsvM0G=B&g(nDVLQ }DMW995MU%hS D*LS}HU@rRf䯮e$cyOA2w{OhTt@ HN\4:;֦,)NC3(V"ОD~:6֞ h- ޔFZ-\|j 7&t.txePVQ/X{ȏ\ڽF\)'`xUF{?RI R7t2]ΉٿA jm "e(iԒpϚ!7̾2R<ؘ͞?PX3/'-ؠY=5u Z%^YWU& N `FwxzԃJ!-RY؟d俎ms*}vr{*f '+H>u21,(t\4,Xi L"5W KE; rW ?JzuF*l^ZF3N*& _=ԟYb0,S:R)AC݁+waDEeqNqYBNRq7.F! \/~q*Ŭ)^g&?k Ϝ HPgh~L5AGgja dd?;78i UW&*L{qÓ[װ>кhYmXydh85~cʔٮ%fpªp'GƬ?z u!P+f&6:C% Zޗ 4ѐK?׺")! j ڢ&B12\ QGeA17d'6n*}.ۏ29xYX\>҅Nnj{^fd9*;vVS@w"SG w`F$- d >wN-͇% aZd ʼn-mx凉#w0?*j 17&cA6ZSʀcS{PZp4N1p^'eK~CR#z}Bת ԵSTn>ˀh 3"tntuq{XEV=~`6qf,׆* č?>M~zG,k~UUP3 }mcE-< "rZ hFe@[9%sڞJb{aI9ZQcƯHil3u}9*+{t³U`/d-HdFtDHmrރt%Net B'MKXN}J/B3 zg;OB8aH%)܅>bX\Ef֞nzgxXxO*#*PN(X܁4gԢGgk>Wm%M؄>um|xuW@(c3g2p\~x9T؈8.Ad6fĎs©]O$`I@W @!J"U$Kyi}}\#!a^[aጎ*2!˭O|)Q1ܻ]߂N1kkT+cdi1trj |$xX -R+  YKwݮ0fGY9mU4)?|};6'!K4mJqKgzfpa™3&S$ *O"7oK^:p5tH@&a4_uAm]ʣ"$dkp%'gnѵV9D\s]Ѷg1EE:d(t%낝譭wTGmW"L%CJ:+3AUxhwpDNGBJ,ӂ‚y=_r!$`!n# Hy|X@5<Õc:`n1R1bT$K,SY}#{MZN¬>I TwD٪Ι+ŻRG$xuχH( C+n|fUUUl{WjE|) A $ni\}9byqEDE& ʷOZNj*IR0fx\c*m܌D9J[ 2lOx>i]J8vL{.Ŀ~Ƴdeּu_▙\|B^4Wb)756NlFwo>X~@+m|ǭ^s(F:maɉ-pbծ%;xkkL1hcO.ncjI/,R|JZB=!`}x\S6 w*m+YUNь׃8^jtСU%65%5@Ih'9q1\NWzw׺y_ޞ[̽$yfs)E7iKjoF$k^A9AO4مeޖ;จuĶT)u(ϓ&.{E5#((u8 h3 KиQ\irN57d<+ڲ.K|=dT'BR͝N76x x];^yxRh.ä́mXQq!)*.,', aR^(q`,>ըnr?5ޤs(hت p 9aMȱUi0Wi,Aw;R랕p6A fT[zK`i̝Anzl/~^Ot3P27BBP$H*3H ',iu Ŏ汶2Ĭ>@n"W[H$ZN9OIɺΙmqv7V )LhL~#˰ v;:ȩr%>Bĵ !&\":]]$Bd/5%x-?Q9,>*A&KE tP}Cq,A%j,L<1~Ed0tZX-2u8'swk ENCF@IθJ+py @cQw&.kN.1L>}r)JsT#ķjDVseB?F>jn+h_ULq4x`(q˩Nt1=AGpf;:-sHӖФCVzkW4]ٮC/ Ŭt,Ϭ!:BLy+jߍ 1R K9~CYWUJ%c;$iF҅ W.Op$-xG0,n}Ԋ=nEH(gX? KhX]2{& #\o \F{ݏS)p}( X X1sצ/r0eT] *2b z69:utsd@ZM{}l̐6\ 7T1 aND_1d/M{%?̷4,,N>vulO9B~SGw'8 -R \ < KLVQz (Fy'cZ罉welDa΁gqP":g<ȏOh[ۑD1z#ZxX{%3m5$z܄FK??x2Zml>=P,GK''& ]Iz5m$wVEM e0D!3-|cX1?v?=6I`L=J}n `۽wt|;)8yUiOwj?-\a5z@1\>N:%$9NmLNn?ҟpJhQCpyĖUҊqnens|\'a$iy![4Yܳ mK8BMyq'V>]ƈɑ'z0q_Cb9-/`IkKUJº2C0($mT2 XD 8˃1X8N:IՓ3ֱp"]~p,<<*xׁrYSrh_ff8ʱNՋyÓNq>˭<>"D='',q]x  06]b.RJ,3ilmqHeHb@?cgzdaӘ T]`eci:{g RVǂG`e8xOO.A0Ș}boλ(Q `Q&T=< X~!A_yVkЎT1_"%~ӲH>!,spK^,Ô%*=Rk_txC\6j͑UAh45c}N^QcJ /U?[k<GvWr?J(ua!{yYsHWZ}u0HCwhZRwKhFm k'[  hb@xG℆1Jg KA Å? rcs)hjHBPY%ɾ'J*sVC%:?7V~'\oTdАT[}ɨ4NpE'Px|J ՋޅW԰“B{HGG,MpK(;ϗYMa|p2reh%Sm]aԚta[|ix\@У̣@2 q]PkPaX)= .91ggG+FTLD;&qG=j+<PL*b,櫋Q0AUw᪦L"X0m/\yo^_e8_P8]Rpxa[uyV%k{j/WlhC!TАuI0d>nhlF:1VyS<!nl|C '>?Q1\읫.ۼ|Q;9 |?nn9uGǜיt}Ya])#&ه.@ Sf DTc:7>*@%VC;HW{j˽5."2Nwoz R~a!r4G$Fnp'Cl'珇F9۲=mh2}gyxz1%a@NXIJU,j8hs.uy2Ô^K߶zQD{;͖52" NVJ/s.p$z l½^`>Ke>yls^~+f $9Z1ہ%|YfXT΃_& nQ i]I *XpKv[bZWrNKBx5q#cy=sxPrYu_*m$ ʷ+O+ͫMtEp=Ugޱ[{Q\JŖQ+_p!o/S6>=蕔/& JO5gT;[wNy?MнKπ[:e*n?QENFrAp`pgIiD4~ BّL%n5"ir,o%$, ~l֫9;ob_v~8CIw7't\q"l>Hp,syOF5uݐ?=`2bW,EA©{䯻Rܥ̱v]CP- +&ϻޤ A0dYx_\L=2T{ʳY_GTـ†Rz#Ǡڀl=t-i|@Dks#umdoQЧ n?;1jz7G٠" dT\v.8Mrkև{0Kg q;ܱvՋ 2d@m0Zp1qB_fP8}Bx1MPAû1czִ3Y D} orFgg]V~V0Cba;K$:|H4~[=(`cva7'i#Eg!+]`bdn#LTn=MX; HmWtf]4uNN悶p&59S!.%H{y}rHy!;n2sK}2݆eQV Òwu 1BAթ$7bRDm_ '*h LLe+>b2'o#1WY  kECşQB%!In+y8\1&[U3Sz4Qtw|3)a1@ Vf~2'3VuϳCK꧵ed+͜qU__2>jiI.\]cb%#h1EA"O+w rQ"m>tꨮ{n2 RE~]P9?oYwx%%gpTrh1yk [G?)ܢyX),y)W IzG[sbq7Ywռ(%cˆ4Zã@V̡~;nFIwe ZPm4"0 MplYܼ 24Ѯ"嘲ҩ@W՟֮ 2 0 +|GRyERyvkT!1Z<(%6`7e̅~vأw5 lT[CYw9YܨiPo)Ok_\Bm9$OzF"fp@e ["L_`|8l_]‘nҖ}ֶ˄V&Y/[NܟqNI9v'`<8+SެcKƅsx,bhk\ Qzj:܇LQͮ Ռ!tU9!Dp$Mj#(Zڎ{g7TM;Tsnkdzn|Yk5S2-I}ئX`5rvK(OaNXE^ DQq;0 YG&2%B,8׎sG*CjB;Q8X6BkBۧA&o%ZyL.gd$'@#]@tLR¤\<"Λ='[vG`v>?DNƀ|s.4"l,LH֩X1jTՙ$;΃-&,$䑂-w)RNӵWjڶԼ4e` ;4~ Ѵ~E]8՞cI\JYPIq>EԬHOz"me-80q`fSoh/hmq3zrԞE_i3 t;iՍ'uHz#pEBEim4kAD!t13kRS@Q8֫d?}Eb>}>2+_&`$|3GXtym:;2h"k|7ܬa#/ӆ>b@ 8X)0I_Cj+$`^꿄\p0D2Ep+T^!CuևĉEɉr^juʩ2sLIӶ6h"1CSbo-E|#@:XWR 48 yRh _E'O4q\)am?g `.d>})޹[WI#ieūv"Uc86!siLLf2/a^qZT};i7G^!++šJ2Kg*E^"$KH RT$={[ԶBF*?4 Z:Ω% ѵ=W `xQS`MZ dռkI>Qr͆DS@ny`/`eSZ% !]hV]|V =fe_w2vvk+Q4ujc٫d[.RZG|S-(NQgE|גmFɖ;oAdG};CQ'gْ3亁?sq}Pu֜1>6>r_01pLJo1*cf:Uãap=&|&/8kP:_ uF$Yw(Bq'p>1DMnߨ舥L/hHBAFSow +Dh'9Wg0 q")m1UmB&۠U&\&Vۛ2DbO8\`O nh=IǶƶG \dfʿy>&j`<ڋ x.g|).++Dd"{ՎQK}HSuObڪ ~:S& 6 HNCɔ.F{am%y."͇L;N;v=jeNcfƧ±Parջ;T৚"v; $-">z$o)d+ (>9JlK~=Z~)ύc2135B:j}ܥsM ?Iv!t Rt^*)߂_#mkQ~Oz%o"*=9c;֜X.Czі3J$R+5B5wm w]$yaH&<d@ME!<́:7L5h/=5­x3٭2Ю2@\2w/Tl`A%qi1z_= Ut#i4L ws QơJH1]Xfԛ*{65:;j*mMߛ}tQw@ym){C1_Ǟ'jMsfT\G7< +.=6dxI]uŖ}֬sЭcHJ6ZQ^ۡds̍#Y8#gZjǣkjAyFū*;K{ͅ斐!ȀI1m ct% 5`])|&S`~oMXE/u4e\KO*|O%Z|xbIU5Su1uӟiAi֧$y 2JoIm"Zx /m=@Uc? h g -E.Վ\5 35.xcu,=b+p ;X'D`Z1&kCۭ1%5od])g7A)^ݝrJi= y70`n$M])ݱE ] F笳KI+ٲ'o( *h?qOR/G9L T2NEwHJwG,ȮU7.*lnG{/V5GRXSZ(0 +ndkT>/i5}26GKF9aqYe/u/m0@ﰮdy2 ʇIQ?_`k}#` o)W.V}E#Z"s@9 _,a.tthR"'$]Lux+XWR9,LYNɿ?LN E . 3<z{i+Y\$陃/o􁨿k!7ka|,޾;0{=ak*f}V愬1Bx>z3^o4X٧obP4n-ȿN?MhsHx@$Z!Hu0u$1 _(68SL3*1W@Vb=9 P;#^U3hJ5 4U0;di-_͸YθN&iI/]DU~/x7a&gaxt˸4gѵW& 1#˜[x#n囙 ><]Ϡ:o3/]Ƣ`=0P$Ec0mmDZJ&à|4"bhZݤrOA*TS`|<pw&'8-F >M YQoHIl%2P輺#d&j`ul:ha9EIJFJӡ^{d7<۫FTKglÔNF@%\H99S{s*4pJ P qf~~i;r9 ߵ]ʴWĻ _EڞnO)ac||8 eR\m'q%#ˆ ^02T.p˗rڹÆԱ@1Ka:?쑖aN 1:KMn:7iRO i+U`jX$ eN[ h1esd$OQIf~aUཙY E?ޞhG,J1)|h`XV9Mv)ǖTu9'.tfpE -: :|jHBټ-|Ю(`#E;7F}J4Yg<vնɚ=1LC$mA*|`;+<Fފn=&"chL`K*ME`7>/ZpOg./9b] BpҒ-&}s n}(荿|qn*O{J*JcaPҳJGNc.\np )U0{#LލAߎ-̏&FӑL/z.iϋzɄ qf"s6Ꙟk; R-쓠5_p~P'ԱF-֗a=VS5wgOGu1&F }q\Φwh֬iĭ9cg/~hI5{eH BJ }C媄/Wk{ ;eNXGA&iV!jHCވ O]PH>T꟮XF)4A'e wN}VDx2"ۜ*J^/KxdRsꆚ cb`q̬]HDKA'c~`2ÅON $0e[UYuV&-\CZ}fTR=z33{OY@oUs.Cj0ݤNeaSIާΧޭi歯 Un#{5:fME,4y`@>%e]Roܨ ?6ws8nrs3pؕ`W0I'E562עeL!ĆQ'Rt#_51){=DA= ,F/pւY ;_6V`[B}xo Bҧ!oEٛ^9||My08N&dSc_'SgcSږ МT%&bb@S"ʇ̮-NlV>bfjRin*`tt݆ Tt lןT ㅻ J ma!)k>ܛkC1]5lK{W1VlNxC=> Q{>I֋8(f'B2.Կ9W`4o:'ѿ|{ Er;;h0 r4Ժz&^'󸹤ёը\U#Q<"+w U .4\O#%R\0/L"o󎑧ϰ_tp;^-z9u̅"UG-ti1ӆI@bĜZ$DGY?ZCB#mB Q(F3lWϧÇLxH +־W){"bĜkْPWGJ;?Z5'9BphxB9&!}/e =Z^WZc6%2^jgNCqU3U' E\J" {E p$enAn11cGŞ'q2hDNeJknPzMBK;kХnWƛ(٭дneW]?]Hi!V$%ÇL;$5lk}(oyfHk3Ɗ<%YJ_~Aspaъ9A=$ٖgDLWLK 5+} S$ݒńzKWU L2PkCI-{eB +a)dX/dG1~bdZ`y ^uTI")T@1&֩F֊T~s(q^2'"]) pd:aϲkl ' u7K6k(pp66B |,< 0mw [3 5rjχ6St $YX*pd-=ZFz2Aq }Qx&?bv5 3 ؝õG'ɑ4Bת;RYG U HfhJ߀?E _ZjLTw^448 7:)I5XdG򾼉 ^2Gz/7k+E"ѳs7P!=U3襑LP> _ @Qy 1{wfߐEKsp1x0!`]ᠹ^;+ ҥ߅<֞+u#'c ^2 ڱu)("O/Oh:+;ZjsNloAv[(s{l8[?S2`LTxUky.}GqQkbX~~]Gyf.G myd7{phP7NbNTsfTζRw+I\T/Jr*.;&_LX>uC"a#>A9ݗ'o+9VJs ^>c4R̳Sg54k֏3R$u3z*O@k3MMMIr%bD*#`w!% NPpz%LmKr d {24d[vhekqTfsp+Nbcc^̴73'j,p7Yl*Vg.Kd(K2CcF߼ &VF)t b?n}#C 97Rd}djη쵉{3CEX`9 8+f` S<$ M~R_W]'vF]qx_p64a|g uOPEUOswbSVhx%6\qȗ0Q5)ǹ!u ~tM)3}DkXU;4(HJ̗]^nV/<;b¾5$F@ՋS7%>)3=aع`-7 R1?'WbX좚50"0%{~4Ht|uymF]p-'LlLHRN&:Je]Wʞy7V!g°LDwgdd }B5fU4 -#{|3gbQl碪JÓ򒐊Xm-ɏ w0bq%W ̗ORV-oo6f=UrypE*wtE(㾻?%F&Ā{| VtX YGeXЉK@S>v1Yy6]f`n]O'+9KsdMK{ QIu ~zj+6efa(!A[/ );O wKTQWwV?UԬ(h`ZIdp?ܳU[e!7SpXWfNVygׇ;372\<Ć* jY!zܙ!ΑtR43c4@"'_w.G$[zljzuy$H@ݮK\Qe@:prq >NN]aи.qu,|^?K9@ j5dHN%T{fc`1t'[4GF7~C*elwnW8ICF"0z!{p7u>Q=q*oV-oGyH`X^OU<^t$'q $qUW[Px3豁u]2HD`q6~Q!56IBɗ*AGqnQ9o[)pҐ>[T%~e~J.h_%1f% U_}n%W{ēлɌ fp5JpFi01Z%t*>.F p6D "+̒oѲ8ЭtJ6%.2&a;W:^{'h*ia{FőNTx(ÈvKu;[}2vѤ[A2S#S CMU~5:KߧèyL.zpYeɎ%.d#G쩖 GoE5pW-SkdM}~=eK*Vӂ}bы3T:QM)*!F^cYҊy2OUf{ؿೝ>w_cIsRb L R[]fi >#ƮKUd .`Ѥ)W!}pZ2/,]nZz4iGJZL35t0/=k7MvBtouqѧ; ~xmѥG©fɮ)C$=cv|enzȼ+eet =ACG tQ>&7q޲ĵnot4Qk:;q̨$fyYQf2?e7A/`X-vSlP4|xKg)*o!cQW8k? &/3TU-!Խp2Bm?Ee*rR[a^=Xes>9qqLkDRGqlc. ?L,:¦qJϵIT1 źXh!xU: ς)Jz4f8J>"e!]O.E<>BO$;Tg;ш}Hah'sU?[f8Yq&T.{Vȳop[1 Lb\v@Uj*ӫr*ɔ uUKzZ~I5FS2=Y`i7@K$ܡj13,i}pXmc, JځJ~lLEV!Hmzf.8~Gߨ)L$G 5qcE8$6A՚U;[/o4%iIpӤLFU6¸SkIU[NǼaX,vRȉ!k}uF,Sb/n6W}F)EW_2 faM9`Y\ρoV(d!J5DRo<#DU mJ1^8?&)&Rm E/CaX[A4otħGݗ},QH 8TF#˼*RօgI)ssF7XR z(5 C 6=Aw>8{,(ylɣ܇Ԃ9ن ++*/cW=ljIN%9eJׅŮ=EMf)&Ғy+_-F$fa ema:r=\Os=pn{k?%Eg-q25I0!PFٟCW_▭(̼uwWmU0The甠ߙ(V84 E>ָ§p&XCRe˛W=ы蛬@YRxD) OgG޾ݱ>}eo$yv0-~k$4Ô8W/Q+~Ko9w߯[ J2EVn E%y4:=O ҪD@#lZ 9ΕXAg7ro3LuUo7~{ j0JTP|Jo>K=,^FեԔ+3f2Ur~'Vk1-?2D)ėpHX8jlB8FScLf6p~.@? uĩKHڱ?[B!d;Bީ⽜,Ӝkz:Aݣ@{x(@. QnΘw=:)[RPxPǀE<8Dɠ3%Ѽm} pǚ?ƫX[Q_;0BER{|z%OQj+_;@_ʧ3ab'8#2c!+RX6d̫שc6s3Yk8\mk[(wo"#OPNRDϹIAp,|C[\u,֌FNozKz˭UT= bRϨf!m,Y.yvBVnIc){E ρzO,R6Iz; p>1ZfG&Q<(34W) tK"^F[q#x{ tfvbD:Jk`K"r2ۈI,5-2)V,֐( ]ge>B@a` þ\Ҍ%/̞D+se`э (e$\Uj*ԜW\\|&pB2mR y:4vPYR}6:᳞4L&ı LZ>0}ْtLk9G&ąaw b!p\7d1(9Zw,E (hc%JAeU a^qPԜuSy,' iE6f15HS֜IOpXL6u>.ɢ:"R B(ssfʷf( N=Gp4rDeWr]XA;/;KsBfU.I? }ջ2E+rD (2%P>Y<4s6B(]E,~9NcxR]LxpjHRҠ0q\<@tLT$p h ƣ>muu\Y(QH"ƍr&> \"YlǙeL0N6w1̕ S$Q&5ن/4ox9T6+Vh0Xɘ!ZjYv?GcR *op'"H=|ҕ,,[8 b*ז|ґdU#jl4{OEaAEV8IC~Gp^bL+Qc O"} k䱄ox4ByB}|$,Ϗ1OidwZ yVU ?k~qsUW &VI#UgĞrj6&/~o%u MDh?2⊹uV?_>]F}؅̪l9VշqSͰXᾙ{x$z5⏺Ł@6>B4hqޯ1u + 6Tu# Ae:wXU R'FDD~%]暄r~ͫF%&h:p/6bJ)蕧@\I0]Xc+Nuıo\X!jJU_n=|t* c/]Nf}nykcLKK;V֘)K˂+Ϝj0wnr>bޜƭUo)W(F8~~?S_ij<5#jMKSnXy@}ڠꛣ6~$b\8F`KRmykl7;,(Llʒ+}?s.0.+uhq\ȍtؖ]bfrd9((?C0б矘G"$[NL0uA%~^E$: Is\z:$.bio%r08T翭ZJ !FӦli WCf[^wR^EJ^,ٲX@bDޢX"/1I'YKO~2VS +]% L+ * c~?vjϯDPysK7ebnPK(p'u-+x%eU\Ƥՠ+Ŋٜcl1KF១_´h35&k*?ayvՃE٪ ؂sCB4C= Փ%|_oRWoׇ*O[]7|<Փ`joYHeDB'b.:Ur\S\Z ;ʔFK!D=YQ#,f=,,I,Ә U lX !0omFV#@wa7؎`Zw2w\?^T=ޔI St˚3`̀LVIW.K}cOUNK?uجG\ӂmIH.0q%ʀ 7-j/K~)[. z}9Ҏb٥,VP»^\ˡFŨzV-!!p%C+ J}V S [ϑ9M"阊OWTâ"[$IhЯgO 0f2`_N~*e%%Q3 c0#3#«iP/3zxaĀ-Q$ `͆sVT;d)̏gIi+2 OvuO@? dD6+T9.bv`] ';RC: w %=^/e.p,kq7S/+Nכ;!@ͯpGɧԜ,yb >VT@ ݧWW58d0^J0~}W7H)t}I^bLxq810c܆@3c (qIdd+I1Y@ECxkM b+#(LRu30IßToKCH &pfO|ا:RZX8p2 #u2e-~ ֔|EzbiQG6ؼ$#Ŧ:&,]bVxbpD` ͇gkK@ͤ3H;bH[R٣ YOT`Vt֟t42k{9c&5e|ii8fH ˼BM]ت>؄]PE4bR}A-42l 6̢1NȮ`ExP|`tvT:SLzgu`l$- [AE),\-ΦsWaiTY﫴=Yvl[=3!klj5{G_ 0t^`࿗ ШLcbѝhRgؑ{ 8GAye<ܗ[}2_?/M܍8͟w {M4`d hg.VիzGCAO!r(C&7v"g$$C)ƪ~Kiwc,v!F-=cbR9!ʼnZdG71~"{Gv6関/6D1O=R}W <wݽ 2k :W!OT{gV*0nѲxFB._P2 B;#.~E$Qmh`*jS$b\iB$qW_o ueIr34qanhݺ@ P!nY@-ΨL>N(1>~=߫נAƫ볲_VxMZBkI7c*n DMɳ48 -:فLS CP~0\Ī0PO\RʭVr` X1K+svg/9h*sף%2(#h0*z9H箄#?σTBi"2x[?|o-އ.@[+^uJWdr'9œ u\pjR7Jh"|42^}Y^z]yisfnT м؞,Bg A?,Z'HFթ_kv4zԀW&n%ɘjK!qMFQ1PE/?*$v*.LS.\sF]s MAmt1· |voI\S̗q)m~9V?4ƣ>m+8q;m:k/lߪe7,,Ux";nG}:ם9J̖o@ {HjdWJuπɵv٧GL5<#~0QlDRw~Tg Cf"D|2 *LgOQx?`c `ltcL?i@]@*PĭJrK/,|"QVL f'0ޝi1}H\^ܫ<`HFÇXEE5 `X_zJsILq͑扐 `{sW/e @?]:XK8F:]IT \6rTbuJ t9H_P@!S3l*ol`;Ww:N]b/4^7|P#Ԝ́KS`q*ry):24Gjԓ`Ue11 ``Ae~2ڦBi>[~g Pv;c_ˠv Rw'hyFT|(2A^=__`$RPbƴm*0ixEdܼP ('5xtdM*Yb([ˤ(xծאZkeEHLvOKso YA*ъgu8N5N"q\ynC)RB]Ǥk6[M:fIrɄ*W$ѯh !<ǽ*`U<י?n 2h#xt`4,Fv` C%ގnI/B1]҈ŐH}.soڋa95RLu:V|3 ԥ4U2)Z!X䊊RDNdP֪rrݬʾDacLC8c! <}" F> ܊pӯhu )ќ@V IbiiF3/%<.Lg'N1tu{Vc?ߒ|<"?2K2EtTl1>KBƶ옯@njRZn\ ɑk}T~q;&JKI!UBz XʵMg*S <٤ ߩlvrC{_Eow] H hfah E.; K"<{>U8H˱{D@na[|?Z" `9ipPK7ghlG5u~ޙCt/Uq뉱0cSVYnP:*ƴ8맨 BjHG(ih]v8MPzA?΁@nsF}.LJR\ X2=OK8S.:Տǵ2VKp 5(%G:N 7Vun9sƍnۻ 5Y'6Fxä50 Zj& W-R6xW8@Ly!<\6jal&2>auM~4 5ᵘoQ.4И0( ~C(SKY6ϳT\μ/.'1mīQNq5L=P)F 伆@? ovl2%`8̗RRPD㲾 e\jU"#c pL(vzB'r 8qB6d?šV^+KR⨐='mnQk~bT\+aֵb| 4м`o{YJ"80dt+uo+%5Ip\c%ͮjPÌYnnuF}KU 0мG]`x` u Sz̧!JL?^&&)E߆A`胴lScHŧ&|=蠐+2ޫ~7Egؽn+Ii_8=czi0C ɐB% eWE*bJ1+mK{*kID|L_ .09pWL$X>Ofn{ ^0j3QT *sQygz(X4r90iVM|MfsV ۩>|xIve:F qMU B F' #3Ґ|$~AvINS%z/=cB> w+1eEhBu'ZkI,&sl-A G `+[&)qIڣR &P,}2qa=茌UKEFN>(~00L!Y4Q!-)_F.2=w㚿.;f3স1+8OS3 ^af_lxJ~Mm06ͫ@ixJYH,(swF% PiOZ0^ }%N +eV oBKF9w89~j t0/)G>]o<[z݃z-j{!ɨJzbs2>l,oc YVr}Ik"{V1zeh<%9 =&MN UQ6c"ASRBs" 4'@LJ|w-\yG\S}* &{xwSk}i`LmeN5:OR4;G@a岴հyrR8[^~]l6!RP⽨9Qd4<Ə߰uD=-7^~&4 GǓ^80wju,К`"@ Zu+_9 9ŀޭk$ٖpp"| v J0X< :ԢITVq c!ꏱ$mbJ6&扫?v4ՁeK֤%fu0L\NukWXvkh8e-ڃ}wi,[9 SXk6e0n3xI#rlÙ&gF/VHNJi s02eҪm,h%}3 Q&G+Qil*J):% 0.2Pg[+ AbbP 1˳O5hE?.NAfgMEG:Nñ{Hj Su6kcjޢg 죷)Tg*<:a ZWݟ_.ȹzҳ̝a׍t`xžfqd He$tw}UAe#Ec\a\D2׿4-,zPU%!گ,+9 H,]f c݁iJl< M=춞<ט{dS,V:Q,ꏇ&T:JNcx cwCRU2(њ1= .⯪aD!^tʔoLQsM QufrW3˂$"ޛzH{2 L}iQ+Sδrσ_H3L T~"" TR` *Vk(nRj퀲=Z}<O5#DkSԄdߓPI̸יB|O iM% IAwA2V٦Ф83_˰Mc ,|r9tÎV*2Jlŭ t'X 'p e`=S2bBT7cYOCd@?(O?WjEdi$a W21(U_O!񛏏~5̍}ZȍؽD m26 <0!BUU Ȑys@\*{Mɼա$VL@lp ,; .ZĜeCy-!҃lj@g9ϡ5IJ˛0S^@8shc4A1 ں^;56׮Ak|^ A;\yR?rcgq<+&SAYfA!uJvB]BEszv&5H4yÖ[QnЭv; FXI e] .=Cǡ^<*Cv.yHH=a'H0n=NDiB2AIdI +-I@3dm퉣*xjl"T[!pYH_o{`rr,+Do?L4X B|ވ9ٹLX7E~, -A_q ~CHe/<PTůY+oX2jkd75SP/Xpq҈SʴI)0.KV-s/mTZK~C#y,] ځ6m&8ln_(Rl?&+z*a3# Gn*[A=l`mSDI֯Sa c'0ӎȣ3vz\"7l\OG%5MU~ m,= 3)d Vi9GGGiajL]rr-#O%pԌH:Lh,y?4nٌ HNA/@كx E RwNAig< zbfi -lTvA TON6$Lڒ,9ȓ@&ߓ rq(q-WxnXL:`/3/Δl6hoZ;u?}]_;2aݏF跢d zgi%ҡ7:9&jg1d* .Œ Lگt eu2J4;m+̝0Q9Y\R(2 Az 桙A9UkEJ|Y M~Qpo)|d7l:/l)[3E>/Ni0jlJ7\A|Fy*qMۛd<<&œh!d|\Դ_$S,)='!5m캓Gy&vf?儅"Vm|Jw}mW@Ğ|ȍ ihxqT3 tw/#Lfú4fhJ`0Ls Q3'B<'QPxriJlҎi?zf3=m27}ԻA@ k񽡻0ވlÕ[xAUPEx=41ա|} ;- 6Vkr#c 1ljƞei~f?/$rB"*]msԂjiiN ">Ipxt$S$M ؟jJIݹ>ۓ.{9)P >CɔR3f8\34Lqz 7.N uMEj$= Є*$KE yz8Do$OGeުN7&XR%Cc6cz_/mKMQ'b]GW\b}vqaU5(!՜P*qczvzFB ΍g`tA*!k@O叭|V\CBg?ug9Q!J$٬#r;f>aq.bdf޻ztĤ3S7 +m?IQB2L;J{ӴQ|6$Hj}%Kly;ܳv' ]cg9nyV }z0.zšKzk >R8x \mh |,tQ>Km?)+!`4~C$U)ipPWoh5VDȳQ}*soӬbM5'ݺ-쬎Y t>پ%y Gc}!/ΩxBbdyjc-S#k)%pڟx $]<9Lm* ܘI.v"ռip&pƟ,w0"Nv:qf$"1W;+L'Xm r4\LTl>d\N2oLK;a W%F%"\fP=q;܉(/ \p(dԐ倥~OQ]À^62Qx~4^$hWnu[y1, 4PG% LUgd?lˣ M7'1cټ߅ܗ{ߚqWY9r<:J_:~o/[VRv/TkJJkqn(T$?h_@Wf$Gɴ݆YiMfoGw%)%MDŽ"ͻB R HPƤbZj@zuy[ic}!ƃ1QVJM  0,Jur-}7aY@Xlu=gm]1J{ӹn^,t?:?x7BK/a0#Tz';X`gg]҃e'A,u;Bp&%U[畀0AIƪϘ7!]ڪY, d v=! R֘wcL1bX9vi( P7E@-JcBCҵ"`YZ_ gPUwQ07ʨ =R=;Vj?N\pUc6^Gſl7\ha͡p^yƺY 9 Ęs<2C3z8d+ZSh셙j`ߛ?|-Qv>ϩ831AmJ+)cD rHQ:xT"hg/=6]]D %/VPYpUkcMEox ( -Өlfjnj֌@YE!%=_U>4q4 >)tkduv_8b`^`Qk%̠TMMlaYI33:%F@%TWB+kBw- ?}|W R)+/ϚJ8!vACeϿ97F w#g? 'Yֻ2xR5lA`=X(?^o&$};nwN,Zs7%fk}l^ -#T/k깕P[#36Tf\kZ.C*ʕ>4OY(۪% $aMNqFb9z6%٬3Q98'Ůl^\#)Fʩ瘽q'⭪>8oO,c8y| .Z/c_ui1@WjޅK]r4ϫE L@$kx=m5nfmZr"75Sc富ߜ4_?.W DPi sx/4i]Jz1xe7dl#+z*97r.ki: B긤ĭ]Zh* mh/GtIbI+[uXq5RTZĥM`qaI5b^(+~yq#wo)(o/jS?4e )/<}o0*ϰ]`tv \ܥG@qg)W-]ȁJl̀C:- Ն`noAvHanU3S}Hphu W)6`v'W WImbe4 F(yZ!#G{YTC / {"V  !~5GښWx;U"iJ*Sn<L(h<җ,-FQ{^/F]Ӎ\hm Ep* dgҊ<_ys4glvp96E^Uy,E+ _ß; lb\)QOڤmӝbo|{$1ٴo̤d@Vj_oH4.~,\BT$洌ů1T]>P.@j)y[50ïD`t{[5\|"|6e%;#fFs)UK xqzÌKbqKŠW'!Gi|yHfpO|k ]M6[V)Ԙ2$D-/zBiZ:,vO#?N̦s" hӰNQB6/Lm&+7d/nĴsEڧ7OJnp1U4Ath'Br%0E<ݱ6{ Я>.cw?pmzAú\?mOzEUfrq(KQX 2πcg#<?}Zrl.SҪ IĪv^]Gax̿QX j8}Q7Bjca@ZR2lG ࢠ #=Fw!HI[ eQݫm+LT6H (TjLhj g["r!sl;>xG&sGIgܔ0,r30›"s,ܣבʕˑg_r`yG4~ ™P <:nP? k[ł…">PS:an\ @D= b!kcs+uTVٛ{b>gN\zjS^r6g9LLF7E瞤vvSP Jmʽ9FKxX5jq"AQC#{-U둚M<`Q7Opҙ_|2bG({P!_ 0|<>2QU~ 0ױRL𠚀jQf\5<.HV^ xYFotzAM惗@p6r j@@xC33H`Mߎ0F\"VM=WLŌ׭q*ئ+Z-Bi~!}J-h(걊g\P)xdh@F`өf:w6m }V1 Na0x~\I M/dbH'Q`Dzkw W|V%"UɃZ(hsN,O֭dmPpӋC.d:b`͝Қ'8,"“/z+iP>YF"st1vmA}g u~{Rc(@puʆG_UPF>v!eݡ꽀8`m.8[Ѩx2XRSZ5AE)͆F^yx ns=I_S:SxowVIkk݅1md~\ lKN}'{oQ'k?06zg Y8=M{1ʈ/A  at(֔FGߌ#q?y!@pUg{I^\ej X52*)]Wy)l"픬CnT@Na?N3]blksR @ڏlf|Uj%~eaۭ}ӑK"/.I[sB @FM-UcP\F,êY Hbqb7GΠQG^|~Vtm4ξU 68P%+ W DP2B" p/@]FS1CT/[9M­lnf>Z^3 !g c5rE/̳='shԴj5y ͦUISRoS9=௽[5?<[7Wfb8$Xt‹Es[=\|X|a@by(vPataXb_nYqX- X:VTHF5c$7xPF3dJ# 22 8*Rs(_[ LmC/uh)7Lst).]WII6 ީxi~| .U"̯fW.%ii͌wxTEe)VU4H%nG CiA*lp^"+njj$Qhg^)@"瘼^_R[U-l Oݱn9OޚoS,xyRռ@x?fhq}\S}pPEAHKޙ~LQڐ|lj-@eW2'$8`fhp:mCI7s'aEĴ'VTu@7[2)jPPQvA}Zٚj賂@~t?1BI9.3-]ܞViOIUP8!];̸pR{@ʟd(CBmW]msڋGŲ OXJewCϓ ^8`NUp_Dc\M2"Tc |g ^0I2I9`HvA]stfЍaMfjtl Ժ4nsv(9at/"xAl:O)@J1OD 54L1M-T-IICy蕑#<+9钪).y|W5Hy xY8/3H'0z:gJH>4a&q  ֧͔'-y0N3OrBЗso?G:M6;F\' (`U{/6"^%:n ݞ˔3ZY"4;-ȗYPq4 ,taeu cH`#~v%b_[}H3:F B0 LGzdk C[bTOmHݱCAH}Q5!僖S Wd9% :f>/.Rf$z;x\}Z;/qm^u"!{?8l&x堎*[wczy&M nH뺥n%"O ,ڀxZ% 4fv Z_[WCx2u;~M`jӑtQpOޡ_ei*c-S|XDx>whB&Mvֈ0 s%}N#qQxc#ti\e)jPu#,b9/gj2`(T<،:>VWpǣ1=5GBڑmrsuZ=5;+wqaS5,G G ޫuVTlQ ֎oUבK~ ɉvsP(w.k ٯ孈Efl؅5aN#@JG}Z雳rfF&&H@wa~V螛&.ѩF8P9j.k4mWǘ@X ;a 6D9u4ȽyxapMU/`"A%CH`iHѬ&uHiQij4ɨ@?Df 8ZvM9N `}zs~+Ɍ)>!.5b[P)PzM1q4-T$~Bsr5 6[^م'Jm[ =Uԥf-G:1U\/|ڧ`1 :51LJ:=p~@ Q:Wi겺 xDQSJZ!$g  uJ&0۪<*SC[7|ž̍ɶ G4\Jǣ+22’5Ш9u||:|0o^{בJyצ Vݔ?+(ae: )!}8 ^2n =BS"v<́t $Bs}xBi:<΁+ 0/Sp89ج; 0:p̠!_$Rc e7hUV[ז|t.PFrȚo30@28%Ai5 ޲}_O84950(Ou+=O-bVLv&sWAHxP0D|iL$CjÌ˸#~GnFD =euckq1Mď]Zq6w(S7'$Sɷ]*d2 LJCՆ5\4 A[XՃ8>uFdgmsNkVFe&ӓEQ9:]~V/{`&a\ӹ(73tC R4z ,ȺsU@;8xb1fK?C6A# ̫}:ub>%c8"Bvd K\j%9Q!~$ǿ$7*f%Av`lY4vIwf!"@uªLzxВ=^Wկs;PF=7!8fQd1lz<2<]r+oR{X{]ӎ C6Q=]ۃEl~so.x9&ۗ`KOn,Y$~[YnhM,bb1eUƠ &q 去+dUCQ,t (0078AQ r?{F/^wS 9_ꪁVJOr$Oh)!O[m4C5QTLwDיzѰoo+PwG: +kt4OWvfDI},)F_ׅiȭZ 4@`NJFkDA=OCi 6^>^xIpK$])D5 Zq(9hhuI`}Ks>W]>~gjyF]?ҟBCeQȳdQ"a&p-`:1]_rv3ls{P϶ѺDLoTZgm (D8:≳00hÉN^d/."S{vZ*A)彘l`ԃAa23DQi.^¬kn`NJ! ' oNJ軴 ^q^1Va1ZCmpy}GVI}T-s|F 3^R%οT(βa EonᕁD(C S/LSrl3 y>mAHժ;۱4 3=y${ ~N<p@ JOµ;%WLݴԹgtR['$ X2zj)5N=7SpD.!3*jGZaæ):Zܡf?>S4n0WaU`Mtjg؍I̎C ͗$0x7Jod=~q'<1k(IB5RߩGe?Me0I:ipݣ?v d@G|@,{^g,I_|ZU_ ]X6g)~w_TݞYhv-5IXuC&r_MA4ң/Eڠ3+|ޥ0A)zJDxaϬ@E[Jؾ㱏-yE%К1n)XBAUZC>0DQ`ɸ)R#_:b4`H2{XTUj$tv'/YFpMzssYmh5S @a_ mr,E >1N BQ1}Wp5oA<|u&K8赨yIi `f)&ژmlj͗()Q0SiSc ô)az-ŝ+ˇ%vK'΅glCk#{%TWݭLጓY7T뱼Ucv؉㛨jنcc\r wfZkO38#`9JkqnBtUYR=:-],W /J-ٸ7^sc&5}E͋(v02ok0hL,.} @OڽFR6krD Q=6)YWvi4UT\\q0`K. :BVk75B(yI{ެ 494w5`یeNao6g mr$/'^J|4L%M.R{l[?oCWNS"{kS#bT(޴ZoNWugɒU 4][ ERV,iQ$E HI%}Zk7ӛA^NBYYeH''`}E[gLr3q?3®z@lE[R0:U9|lz_:>%T~̾HD@{ [O=/qm1ˮf@VDȽ̾}ϵytsN3HHoNL}_7ɛmcV=s̲U_A7J{\#%*WU[qTxRum0``mԔcxؿ KoHEL{ؘD.j\vu2]o|f!ȍt @[(Vʺm>JG@4񄜭/(w`;qx+GZ"u>yA.TEVjӅƩO85CtՇk+ 5jt,(E#s|4Z=UĿbϱҌsJlU܋M"xަYE%;@Kp.&ـ<`c.?vRHVr7۸˒pDC]IdMBp y 8+GZ彧Tқ ڪCL&sU< (-N:`nͽ{TtpAӭd~m{B {>ne Ɣ'fN8_0 ێ0]Oj0qҦ ׊CC$mvW͜`9$uу's)6D{OxπA~]]_ ۬KY|1+#92:;E{xF7hm=AbZAvX-m?#t]_~QN5RNW`Q^\T J@P/R{Zfb}\8 Kk*eϞQeC5Z#@BjG "' R9*U31Ӑ&܇n:0ibTs]<Q+Y7zk}Zӱ]NK$#1ua2rfq+&s 97Z$qF3UݯlZ nAۏd28XF٫1OmP:Cſ9f:FEe7{P7`>\;]H󌠸g-YQYVGЇS)]E4$b]:]HiYs]_d٠,v氁A/<$nН%AgW"_Kt-`YZ!ꥇb^Ü^1jΪVAZR0;y(ìkmp^T7אG-i?R%t 9—iy]C*dL.ƁL)1>'uy>WfGLT-Zkas0fK o|=Ӯ̼Id>K3;16=vQmm |2,;k/W?"T<Ϩb69(}lČsZ3x´o9MRܲkD 3`0?+C$kzOZmkC8 ṕX4~],]U j ; } xl'8#O0g~;lv8d\l nA F z~=Q2n$hY-1A#AY$pّϞxh(+0y|٫`͘Lru&wNd{I 7jу5a;_b 2i #0ezٴ7۔FQ_4PF0tĜ?X;2:# Fִ\_'w^fPd=q X2^>wl)[;o25TʣbR~c˅HD ]2)gHXwLaVJ󀷝Z Uk+$z9!M?0s#^]Ň[P6Ebm*(`/LbY|>0?/8.i6Q@B4ݏDO: ,Ҽ3]Ҥ]&6 /̔|y; +/JjaĶKl\4OPw7vǨ6_k9k]g}55<邷 hU< 2 عD.~}jz[gZfWP#'Zz1.68bΤ+f}$)!"):6+Ă* n7u f}X5l{: ӛrN;PT2'F #8Qn#[Kpveeu3k7t3N5ug#fcqN;_eE,1 ErӔ'4uFxWQ7f_U3^I5[e#ˮKj#AS8@<^Y&;ŮQ +BTBk9I,+o'@.βH~tG%vft%ΧH*]Iu:8lԃN+@Z#eqjI$iH.G Q(@[|\s8D\.<'WkÃ@ȟcKgғz 1-SU+N"G ehCm`p)DpF,AГ| ؇p{]V ~=šx¬&-J pҷᘇj43q-`U1A娬Pj>*V>jeG?0IһMƨCÜ*&lTG凓S Xv}74-TŏwgvNMI@L_x+y@@ȠG&HͯHST@DDiE%ޏC'r,EG߃}he= &Nԟw}|TXFvSt.X娑tb(ձ8 oPQVs^.Utl 8iTHC-,"20p`0ㄾi@;,L$ ZD#-ǧDL8]Cs6 SrF`м'&봋Gn?Gki?GSaaG<E 4<6̳d) kO(%0wV'\şΘ /S_-AwHݤ@̉|"nG!0?tK8JW+4HƊ;pmX=9Qdb.cm9B*bT_kج2息X$W+S.Un+X3vݮ!?tAlkw~u11ŇصơUpQS17GÒ;ȟVG*$.>ͬ!)>-/6=Kچ'>`^n ]7zZnZ9?IVxa#4D!&+ݪ@'ARyRp pyBvX|. T+\) Q??^PmJWTq+Q+/%B X#+p1N'\2&L|{g6L%sulNGy`ÿ2)p&HL|z?Ed梵਩Dմ7,C3b֊I3dUJxF#}a d_}ۡ#D*ؽڌߢӌ8l4lNrh-Ɉ¿J-@׽WQf֩#>8Gio:KxNsW+6jx˙ T)$S$ET0ȅFZ剖lVV )3*"a3 }PMj|m'ժsj^nmrJ5xavUSA_&~mY9?4pDǢ&4yK8[WN]'A;Hgp+bHN9b;3L=x3J z?^$A`?O9s[U~U1wΩ oC̈́ݩy;K0I< ێWN8s4sNJTq"*7,t0ڽF&6!Trm}Ҥ .^fL(e$aٷzv6ZTa]sB: ӻ-gw'b]P+^!m@cJ4Pg܁NKNIk)1NӘlcG;եRj4W2K%G i&^AreRԥG1B~$EQOk!9j%ԢTq;!~g!`m!"J^d-i^w7;Y])D/'M%&Z qf+y_t0'^Hfj  3a/[Ƣ5\w?e]7"ݧҜDMkЭ2|fdG&f1Mf{Iy-ϾdըZ^1Otu}yz5-lqmIioΟe5[ˬf|᭹)p+9Z9V6I"{S5\LBdDwֶ.@#PeSGܷ6ą~`-g}p)$7RBߢVc?#٘IhfVR 5Xٶ=X'}L_eT8,DywIL-׹r-~fCBs⻵ jRv̈꽯n3 g!j+"(>Ȼ4,'fVK ..=5IJ[% ==C@_!5Ǿ3xk?^r@tx`u*?ފ[e}(Tw]9Nӌ0GXƜ \U. ޢd*;Fweaq `! zZľ? D`p l"5h K@l^ԡyc,K#rygƁ&[T!9mVxGv*"Ibs_Flj*Ѻ;Q 0pJ|gN\Ԍss!P#Yf|` uc"㳹 mL̈l'L_%SЦl,-00EAѭ]#Q}]CŏbH3+7YHP3?Ǿ{6W (P㰁veSwuї*y WFׁt½'8֜OpzĶC@ ~.g]g\[)Y—BJ D5=)FBaV÷ ;S +\@pPB-!d.aP73%H"5/S,۵mHdz)(Leg#lC)6!S]ꪝ!10B+zH:w^dyrT=@7+,>>kܳ}A_-@=O,eS˷{ EY~"G(Bf2ќhcHMP{˾AuFFlNb~a;Ң(pEȱZa#%1v~M!x IҮ鞑 > δ2zp{|qA;*[=p @?QjO(۲IDuH?ܰ[(@ЎO#~)p<^IC%U[ 41mfg?+ !1Hp (knr~&֗\ m_rfY4OHfv7m)DOG0 £[{fYXǑ;4Ȁf$"[ oTHU 7/v;ZL`Уkk}=j58xvGMtZ+SRk;eם7_qM8"oz|!ͻމ&|dLj~T~՚ƝFz %>{€gC+7eQj h9>_))d!lh`@% Uo;*·{=vvtE3VAZnlMۏ9KF9i`yc/VCr+wWvh}$vN,okq!)g뤷|WV船e.jvO4ʞ1;p_ք\n$ P#ʉ B{m~45'ya$G-.+aƌhkmb5|QY[oFo2YcG%R#ʇj{Jn" 9":%YuΥ0Њ{Jȇ= Qꪚ8Ehݽ m:,YĐwAրf)mx-:^sǚZ0G, .f T]ި͍27I $׏lhyđU.ƩTwE*{U[PgMOEZC3DWJuMםN 3U m}fҼ bI&>pͩv,JOwaCeWJJUlYwJ#93\W3QֲY E ]Jo+C^ P}|7dGq=cQ|?*MB]V@(ZIYv ZR4nkmSYIOu1:G^6Q{ 1_=hGIyl=1/oN 䤽 jPc@3ѫ `x "iAm<ʅcVPWhw(4pҷ,!i5<7DLBrPg?LU=C7AQλ!1wq`-1/0U*Pt F?s iD#GǏ;oЮZZ1uh9*T2DԾM*8*kb7:p_0ÆzJv985[V#ӭ<b.I}Ht JysͫY}1KcB+}-Zg- "k}ӺSHc  @yZfukZCyp(]ZY--S+i˟j*?þY!Ч\l4PѽO:kgd3ٿ4yδj&iqJ`g %|[G ۚwޜŞ)B4U\1[2g14JXf:cU[O.MG(YeZ2/p:xŢ*xD BtBW@@T:Na\CwOcJJ'^5sr$dn]|O+*-&շ{džt0 @o$SGmxpϤT{38p@]]R۶D; ubR%d whNK딜7dÛ.ʥ^ҔJR:'B{"Ee(y|0Ad `^[-ocoTsؑ7`P#Uynr%ьso_Y.Mc_NrH)r@ʁ_me}|gV9\h8Cd+;ĜfQ%5"+ݽ'_Eyb|9GZ :᷎9qܪa j H'/E Y,J[ YSϑXV@^k"NaVzGߙۡwn61Zpcdڏ\duPݲϖ *i`kq|!E}O~4E +bӁ %o\oD >3)$6b/OQʗ?@9go;DߓrQzP>49]9 \+Ai0f4 qu[>z T]CR]@% ` (? 30 ƒFp䒌?v W))K674ZsL#Pm+a؊!(H;_$hUt-)ƗPͫ)hY9i )B!pymYWRz; *ђ]'->~S<ԥUiQx U6 T.S{ ]ݤN,i`72,!_`$꒰V%9n9/r`#I)-}U+#$d0Hb\AڠpGg@ӕ2c! ,-#A3D/^eC2)Hq$=S8Gjw2[BxͩqH87,tb}y|QzU27xGILf+3GE|X$O-.JD} /=m9@Yx.PF%62rE#94L 85)2kB!mtAK15UY{gotzƵ;6\Joyp͡Wl&&+Fb)yl~D^#wMDw:ðzg N$`V!SWa:F>Ƙ<?.e<=|źҩ#3YݷF[BjtCƻ$ nT8ˡ.CÏ~92'yt&8&:ƐS)gf52X PkεȼXj(gF~ĂZB h0G): u#K>b6|rN|qmU5AoN&UoϐXU(tŬ,= ׫#?/ҟ9\lY}&+L t5W8$cahʂ"@+vI0Yq@סfjʎ#O$?0wiDI9eȨH'Oo5O=/lWGyvdcVɃMq~{F{zn~bq 1>J0TRjakRx._ b mR)/>(}m bi 󽷦TR6?a4W"yXP i{#LTXG}QFT,5sř5.┳NDd^b!Vz_A 2萷(8C=֪'#."#ɟuF 0"<^r1E=ཞ3' .4pg'JY3-65@?t1jѴ->}&W̚4IP `4og%,G?~ E^9!J=N>GRhT,뜬1wpRt}ҘGo^7Uɻl6o܌h&дV scIQ{*-LG20'ΙI.P 5.}tUoPQt<C PJSAb^x8B݅۷X*O']B‰؋&bwÝE>8'=oA50`ÑN W"(3y gr.O0쨠[_uˍ+!ZCE<Է0jz*xrZ{YsZϮʺ(ABDG;=)AK{L,X/F~<`_M>;y>`G<5cByTG3>%F rMTsfI2EiALjꃻޓAVJ1,SfWƯ׬©cj$__+_4oF^MTq嵽 AP1cMA+f\t쵡U<$k jrEΜPy !5& $([Å5*ͭS*TOn׊-svs r[X:HzJ 0R3B6`M~< )~B!0og.kN *q/iu7k٩,n5P[dpaaVA~5vda:*ڳxl_HdK ]ד A9^[ > ڥ_Q`5qYSK3ʭWV 932W P>cT2my{HəM]j4 @pR A#r$,1d迟zGVX2#mg=jGxU/wx9Ŝ-nUyo&? U/ '7XOKE4Ł!NT!q !9ͧ8 8d ?jV\ؒIER?a6)2%(?}]+%x%z))1"o\! )_q!t94G"WF#Iq"2%Nh 一d<'e>7뜿%(& Fήd?{Kj~-͜F)G: 4K=]c\ͼQ2#H*bO /׿HS4E p;>_n7Ptlq&;SsFZم}Ux͹^ )h 8ZPDgzVưK昗nn1Έ/ho hG,P$mBpuMeF~iJD I Ԩ~?æO""Kl0 |P? o 9£k(V8D-)r0|4M6I%RȺkWBRh,%_r|VTEvQsKL5q h4haj/gm ,")}|{b3A٪C*S6\cUI+3߃7/;I"¢8kkb膪[;k~=fF*cHN/ Љf:u<.#hx oX`ՎlJ \p$DΘ;+ٺrBCkUEѵBd;j)ϭ(FrkoN #{EǷi?%C6a-/jh<$tN8)XaXs0~ nРr7;ZOᑔ )W U|Rͻ+N]S21[?*>dx G'u7n HA״Ck+ޥrWtNu/ ' 3O/# ';"_ ,fPu K p7zLN+im+ &T }fzta=d4 Nx%*ܢi -z~v\GT۞d-6-Ye:x3);o7ԟ&R==dg`Q X3IßܯIj|{껛*q36 r|^\5Ux zϮ{0XcZ3r/-g6d\YPv̭ ;⤧DY~X9䰲ăal^R1d9c ubjhC~<ºWVgؒsj e8d,"{Lc7֬N$w2eXnYvu]B<}]kftmΥ{T ({|Q@Nr蝙4e t(Vhܵm[6B8w[b ey qܛ$u_2tF&t$s5k5ݺ'q?UCסq-$O#CwNyzSfy(9E: CbOPjȋ Ik9`pap 6U}@uT#T;.AQb #3_RqErxE1'\< > v]GJ~>~,&?0-o25P#]jJtsxR|u!kZ," k^sB\'h[Qocx#cFj> 4U?tQ+殌T$}tCT\t㠊JxX-JMBVu5aí/[Se$xq];Ko:eYdԌIЙ]wlolc9*'|f~n_k_-==3Mڢ{IpZl!P.o$S07+T<[ϫ%U˚(IlUȅtz&Fש\V.ђ(XE wm}σ'+Ϊ*gKf3ulN(]r˓+/N\d,foG;I::u2t, מeA MVk7A(- a,:)ӽ.KnrTωxn1:F*O>.&-אe+7~,}}~W5D87~YTt5ͻz'Adp&qm_e@JL!=Wj+9& Ï}'CQB-pY w[>uFֲl7=ٿHsú.Eԧd0KU/+"_1K^^[yibuBV.U$aHFY5GkЦOk6dCU֕V"eіRPp[mW*7)mǑ@#ȄE¢ qqfVdc xnڼazѡ 'jH)_ -5wMV(;Hf=؇|ufhh4(^Ds!W1U>ϝv8IQ^\eYZL9so Ҥ!J1ǹShC7Aa"m0~Z/qQwsʻwHO2|;fsG͡xѼo qKwRa$k cX[w"\yĜt4 O> Kך#Xf ~&^L@lrh;&h\Ͼa+ |IL⚙nWGTs 96O-Y.AuY:CUӛb6k.χl*KWuw|1G rꕧ1l  n]sp}%j{F攐C#>0*/hZݛqo t-71`݇ULa#*]sТq]i[k2VwX ([^pjm(|U{C?kO12rjZpҼ l^%N H4O1oP:dR}~lyJ V"g46%ԉABcADDI]8љPl& ؋LڗڴiK&G$$)#_za'%CLF>Q%aV$uS>{Ҹ$l%6κ)~jOւV$$QB2y?1^P$V)!$ V$$+C?s$:P|yINͱ{DI;XYuBEJ 7T#3v}vWu뾜xG^Dhpviy2J*nx]{waUZ_g'dLA_+ο-3PدSm&3ߑ̣DfIx^&Ԕp'GӏN\ka%eb xkHO%;(~Gci毐1;n!V^66L7C@FW}hEȣ3݈LL@5}ȧ/8#0ȓonQ!mbB|U$5gdp&. w;1)n_c"޵M@7d1yJ*9w$Sҕ[VTa$zry$s/X Bi'*ctJm6/|3?kso6J7X@s[f3) \B˥?y" %B7mfZX-YwAUx붰1-g4clw4уl}ÉF~ϝp:ybb/jxsfcމ.Cyq/ "$ȀC*[]Ơ4w KnDáҕpdC*=#AnkL1ɰ4|as g|M4_/a(KXg&C/hf0 /πT^IO⥹=Ϊ26i_ GJ'@nt7΢^ m%tg~ך&Plqq,|2gɄ7m#>vrfB xs8C9D"+ӣS4~hNX 7/ȣI| Tfυa~V\m~ 4^U ?ٮ7 *(#-Ѯ0*qhC 鿮4C_Ywl~ wSb4xMzlAqt3[Ia QIDs@ceaǑZtInbu&Müz75{gK&?ܛhSˍ٫nد֞KxeO+\!#AI'җNЁ=2V K6<7a\'sǝ@%:k|ގ:ħaS#sțYur?'4&Nh16혃+}'@ZP &b]|c2nUN ѼʧOo<:G\)dӝm sFG-N%- l0qZa3ƨAՇ-8Fb,ӷ\Hq#5xV̶ПB6+޷zenBKP[\feqa@cY6l_? Pj~f&?~Zn^;̪'#r8x8'gP!JȌs-ѻƴ»O23K(>`v4%9v:YHiO71~_Az# Oɸ4<UF76h @6k1=Myqj%  EMbÒpxE'Y%T7%5+u=ѵs:9!Q}jۍMixw\ G254I÷fz @V3)^gˊ?e;.~;R@x%gJF!+X}cNV]P(]-= 2~I\DivBiݡ]0å N>$m4_Ea9&}\GnoU+"/|ʪYo8IspY#?P,^vŲ6lH iYG yt%/4s#@rfYmWCَ=-qTG3F@N>AC"BʖIAwi_Gl6EɘD]ބѾ,y UyYpq\s9btX?:G08ԓdÓ~2][׋2`3j82Em^Vm,26' MAXĈ!x̢$8:VWeB  :N?gvR }*eK/ۘP8mZ8 в趍ڛiRYAb"Woqjq\Y%3`f{Xa&y|rd{[v$wt]%ߖrmAiI^ehȀ&޾Ⱦ0@:/5VI1Ry71rRQz<Oh3ƒ<>?-t\spHMGinB%^HB0ؔ'u%G2w1\QK~F`뒮 s&X@l-s{{/.;Uj:tH8{g*|ЛY蹟6HVd;j?IueYcDPU>DeQo?vT9+YGٚE 'lq+X!?9)ÌՔm9nƍvY ֿ_f2<ډLj$'$j™M1=f}NsM x*L$BjPpWtJ!^fk1OTB ,qsA%d۩qƄ3`G_n, ՟Fb]f[^ݙ&ϕ/|4pcU./uwRܹCd3w *Y!x8E47xx,=uw.vJ6ʿhI@os;H>DYLb BY嵍"ZM/$bЮYwfFkH3/*79cy&BX7\wiY4fm||oPe1٫ eD<}8Kwz,κO;7fFkL magU{1 )kO P]#$,G+UVlұ˗ w#C߈Jr9(gpAxA.bRصVveש87doZ?/{},B~}ѲaQyƼbjf(p ҂62 QZ6ZeКM&n9}6pG=H^RAVفbd*bForZ5,eX)R{`ꖾ' }ňQ-X@/(dEMjbMX3Ԩ΢RyPЯzr6lE)ȸסa]9d5Hwp|=w#Fij~}k+U6sKTaGK]OE1*tQYFDx9ZqJ8nͻ$i$[Ɯ / ׸%Q۷Y*ֹ MB3zT}yJlBt[4شW!&%H8#f͓̓ MQJEbtXk/KM~'^ BUµ{!h4Q z ^Q>XJ%\&_!WqڅӞ9&,uCRQ=þU9hҊB#@T6CPعQk"0Nj|P_IOl ҁvmx>L'ԩøxeޙ苧pâd3I?/헉EnmՖnPK}#m҂ zK;UQ0"S]ʻǎYM4EP1=5Wj0DC}KTN9﹪TBWݚ'9B Ҥ)_$gYR?Lz&6&{7/n:UMxZ@Cީ;~X;p[Z#5hc`>`GoK1/whHsON57q6&<&S4EKM{AMGydÆ`ߓYoZ2Cs]-N ?B~#ԓ**Kd-J/%Xb+͈N16%:jo m\IeyltK D@Cdfn$"]FX%]mTX|"IyũaKU}~AcP3%KxGE/Ǣ`> Q~V5@T7"Dwp{ naf㱎77K-,eٙ[C{ht!|TC†灬@@R%nɻs{G0#Y:K k^`kb;*1F2]8xUBT)H Q-/Z#veY d!WFIޡv0ǿ %b0kS6鴶!sJb9>BT?jN^OsQOűQFq  Ny:ۧX9{g=W_7zǜBb!WJP&p;pe@BNo]-|?2Kt |lAx׶L`?J✣un>][BzW$^{QR9G͞No'S3_`0cF Ǫ[t$O{Sw] ۈ)Y%Rr+p#wO(u FBxppu+l˝>=S2Aʫ˳J;@!ClhC%|lkEgk2ܤ3k %x譔f R (/D٭x1Vw0-O\qidBG>.T-iE0k^}Mh-.1_͸L2Y=izʎIu"㲡Ԭ1-#9e4s]HT4 {iOS|1*h eYغ1Ha_ MXU&NI6 { I=|/NYuAk|ߔabZZyu5kq4Ln(!A+׌ye'gumtE1F$lU1;YU!| C+>JrYK+|?G f d=O\^ANa{]MwM4)а{_^Fy)ƈzĨCYP1隷)9Aoس}V / &jihaw;%R׿݅  4Xȼ~wBt)~A8q Q]0&l5bbMmky H7w43|PxXhI@%k b6z6 (5)U.(1]}Dq(}aC1w1h圞lTj\uE.F%aT=̣] }Kj0)G[TVOsفPAmSc'ו1SK*fbRUMkj^&k D }CF3jOKtCu'b?[>Cc0LS)ySdv@K15jdy aT DWQcq-1c\ %Fr~a U񌝷+x%J'᠀"p[. Fmaͅg=dB$}Hn^c!^mK:eB0=io&d+y)ID"_VXV5U$*QO=Ed0Itfo,xcXS~VԪsڢЋIV12,﷊)ZJϨ@ wsn~L2/Ҕǒ{1sKĄ uq'<ĔpGm@亭8H.pD;!?JycG<):ELmj"nπvhEEk3P̳*3H;㛌4a֨0{l(ՠ !\e砂uPQ~ `c!S0shgfdjնo5R7o~w pSzΝ>1b] jMB1BcU/߳ZmW]T"Ǚd$ % 3%%) *jsN:8qd*Wu[KhE1WhڮG"]{DLa `B(Lk^ Ϲi/ FrIQ꒺G{εL+Ga6N5(P&us4ɩmiGWvrǴZc#eK_a xbht-_<};28-fQ:El [!̖ㅱ XeA nmnb[jW@"$~;ۨg,^q) NĔmP iC #])"ˎV"U|xYEAH>kuFvX] m˂kS+~Ym﷭z1QB/+]i'B39'#X x+U,73'˓u>)A5>{c LAǝIoc <̚kvpGjEɇ Fd(oWL<"(?*M} CɄd& rBܬ@$V!VYl%Tk]ˏR~h6ig%VB6;QXx$ eq~"#%U*دzp@u^azky^gG m47\-R xFo%;1}fwF[`XSB?7N^on& ȥ9`pjA1WoaUb(yëDN`9h0ڞ ]Y $-?h[ni]+2lO joj-5jK5m4_΅T8M^O-[Ft#avdFU}f:M wixzܼWP@k |BSMgrS7r:4*(laݵY,c~U7ę4B"kGq>E5dǃ &0ss`yMeӣ&0ea)+vrGW$Y'_;ԆڢύExt mHZ6c'^TFi?4egȃ\컫yKGJZ6Od钻U6?( \,]jF"@5l c<,3aOmAMIypS倂ߖxj93n:OZq Ojܦ3GvQW+ CsLcx]4>)VX#UI:=XXU`: keu}`ּs]iT jYȻCjv| d%) @NԿp# 'K'Bt$t^ 'Ӧv,3R=pR4(X6R}{RM $n2-XсwW2g~!/znl/R3ZfJҧzF ɑ؆NVE:'z %_Y&4dPa.%܌ rkq}p3ӝ21b/ΦJ1,"z \bX#C~dNj+pkh$*&(YFNW6&pLO}m8aц9S h잺9 "]X?7f"++UtbDxk"jՊ_h As>]ƁN//>Mb|vy%m|3Cؿ}1#B.o\!>fG!.Dz mمǻ+Tڝ"fޠۇ2w~%ǚcm>6&U 7깏0spv&0@S+r@FFXde]۰W[P^JRDUU`fe<"#gšQYml:gv[ޟ%gC/x@Q1RJj콽TKf kř)$ 8(LX^&eLQtXNɜ(ң~ƖMbH~X9ZJ}Q)yG[:QT"?)bzVRvB_? z &7x=%șڢB;ݹ"=R}S}DA_N%]5orM?|ڭ;eUV;Qy\&њTkF dH{`va~vG*oTʳft.a'|yiVQ:ܵq?[zr לq?JB$y8mVb䑫Y WZ: ]2z4C5 gI=j|ÆiV.<{vk(a> {A G<- [| =8#dgRquW\%W_ |'bQ}-يC~J1?0wae7n*Yp}GA nuiBG#:i) }`icl+ƪ ]<~pE>ۇ(< Ll ~qy/e ך_S uF_$^ҥtU͒ 5ʘ:ꃊpD2ˌ9őI'4yI9 Xh/nɗ٤Y,=Kpo,(g}0pDꭕL~V+ceNB 2(Mt^6}4񈭟9O J"FET0o'uA7fD }T)d2ǩ0Kf47ϦWh2'nx5,, oy JŇp? ?wn t}ӡ&w+V$ߙȲu cod,f!ܦ{o'(w336j&4.uqÉ@qmb<ˉw?l8jTtyCYp^l'}?5&DweJ+U ]Og(B zIqvRW\D/&){p όkP.}u?R>#&h(=Ȧ8HX7!5Xv!(Ym%HOI/SҗZM ω6vpaYJ cl &5uRJ?wkw\ @cvqx UTUm*R%1H4Iq.˶Vǎ4)b6*L % ge "'̶Uh KL> W:  (-DtjY#V~ 7>g+/UN)2$Bkq=oCtR*zhn[cfS{}J90T XDX )֔z 5+cVg t>h~>qǍ~lyHXp6 ^·owK;^6BPg /;"Pˊ26ӆi#`4cfxd!3@umEQ`~e1i!t%5LNur$61+yRwPwϟ 5JjoT71׃@eg'}hRaiۮvtD2=tmĬQQZTH` ۘO4yh4M&_DXЪ k>;ioSa3+Ovqei?͌QYm3m軣u@8sUTߍH|(Y+R,꼀 Fepr3qYt)NK肵ͼ)`d&B!1d:&Xm mi. MTJ۞gfamQ|&)!"-nF@3N;8&`LI xcIg+Kb+"Xl?O\||%G4IB$藲"(0Z{>Bd%,ŚDQ0f|Q8{O6㤯ԫKY8$:~Z;}ҋotHLE|iH% sL1$Ve1q&Y]&ntʶ3;ѥ9bm ʖ .VU /:N:>j"Ft}'|WL۔3QYI"0' Òb ~oVFݙ>x!t(SgKħs0hHQ:V _5dzТj0=3!Uo] |<)6nV~ -5:F@2t/9 ؿ꘸fKHZrӳD‘{6{^s AqW 7fPCCFHiR\6J7:kHsK`X|m2)fRYI)m!0۴OHgZ&aMeVx B`MXW>5-R 0 3T^sab͆X|1;fcvd=?,x1W RlE04cRzB H {90ʏ>]lǺ"{pޤ:= TP6Zz>>D=/x@}H@H'D]k})KhC'D(]o^$⮋'^bP:3>+jϻA|\1`. uKqc'۝xUP-Ȭ[ajO"qQ!8<~sn*$^TitC["'ӫwֲXݦJo %]Ҥx0a&WݣT)K3 mAդx$ IKW hd%qQ1rC?'EFm`&FVEϲe3=Kط)Vo`ҟKpV%4pQfN:{m2;HAxo$eP\YM} vAhlwkA L\%l t\߂_p6o |PW?>:͈\nj+{wdptDޅ?>88&)xL8\ᰖ j֏k:sNm6(u[JUl5].qr;Hr N+0Zv HB߁kn26eZS=ٵ)OY\P"./j'1]'ІOg[JLOĎ~A,ZeA*ԤCuG]#vJNY!P?UcΠ+&p+cŸ5 **B<={q`ց7> 7b9FsWBGaV#~Pg'hp x@(1̹Y#_0dz3 X(Dgl &k DUzǬ7 h K& ߻ `" 6EDga31Uz: T5wtxN=qcjwh! npqMxf7UĖM\C*6PaN8_GJ-pɃnxKG$Mխ~95\Li?AyA=CڅYZ"E=iؚşe3H~3nF{W |9NZ\XI@#~eƂ G<8܎Dkrs|عp rR9lwCp̣ző aߜhp1z4h /HY]g YAۧBu|e /t.d[raY._6GlJBaa Q"@07 }"C=6*^F;RRu hVHD[~d4293ȒCwI%+ nJ,WM* -lᶭ#c Σ,> i4UfI$vrG>Jzr7TV"φF-|~e)/;,7#ydt8u>饖{i=tl)K;_;$1vۀoTd0p *_|4sԿJō,ExBՅ _ xEaU8PDȔ%;ŇJ\x=M9ݛH)4}h.Df@ר WDս>NSzB7ItT ]xg5mMpYb346e*3i2;Zr\mK?cE5$zթj# NȦgǂP|_%6E%O P܇-Dq q'4AȨ>{7k$[IJ4#&s+o7V( _WH կOpbTD5Gٷ$sF!z_taV#FE$~ K^vxN!!yr.D}Qcrv<9Nܫrxt#75zبnD3k JDsQA9f@:Λ^]4Zmi>grY9Cge1E702-!k;d '%ƷbSX𰧲" "ilE (׌wzM: mi0T rU3"Ҫ\!KYu56 cuw K[ԅ@2 ,>{{}.pgIA9Y>#)O"W -b“pp 2/8]MiLd,,skaY FPZ8Of} sy2eC Rm >Jx'{j !8OZi[iAyagM9#|ÀEKkeX+7bGjՓi`D c Zmcƿ#!Bk&J ~xO#ДWm*d4Ֆ&q|?sۿScܻ\U/|-Wkd~ Z1CK3|2bxr-/ޣE?+U:]% ywh:yD_jJgelY٤䈑^M $uMDj$UY1yфb=<.TcVGCwrX$2٥/*]7r31yo0>G[kWlM1^T9[ʔ6g^Q$N ˹~n_tP+l~aA}}{K$lcwpJq(F/a:O%'6hm p_֛@>c45Ix5,n/ )O`m1g{r2IBlRlU?$95Gpn=yi~ @K RK7w 07 .*Kœ3#ߡ&Q_9$61VIf3Qė`Lg ^TꞞGK47},* @c"h2ˍD(@6jna&"XWrcaxaeW?RL$$<ĸ%&po~p=Ca0qbz#^ء Bƥ)F;0Cf\(N8K}y\V`"A !}24iR\/{5=~/.}ue_adnoQ$ÃLj:hIG ۧTMQ]QKS!i2 #h8r~&{T5޷$=)T /0Jr2F"$1а Qy7J7y+ O7dT؀f9JN:1{<3LM"ê[ٮ՚A+k}eW@tS,C|k8Gm%Y( NG9 K l4/iPWKȾ?uv/  s0 N$N6t1d=Ʈ!h3]C`(:QX&5qD{a7q,vuDYùv6aUE,H%M [˫ۙG)zLM'j, Fsטu;QG6j%oBU/ƣμbw;8afٙ*QXU3t) d-ZJ8"i]QC/b=kC@L7@UU,;#m*HiK1=faBcA0M_nI(6G=`,3G+'y`r Pu>tf)'CH(~4ɦ̈"`vQm,jRe/5V 9{YöN\l^1d/#k*'kkC'gJf\^B( Σr2- lK-m?Q l=.#D1M6_0)>b J:`f7F&eIFeHWkxw4҇r[Yk:߽Oa3.bxFUؑ3^Bb5楂4poieO)6ՂF0Z9,W2<ȧTG&UV R$;`f3p V.ҳ`~0vHWXD$۵744c1';fhQ2^i.'1̥FbK^3Iir};W|b3$ˣI&Za(o G'e^  ߵLf=5!אuk[+G#4l"ƴ>i+ ^2QFViN/N,a ")||4_ܖDIdJʡbh[]rC}t#Ask#*&똨[^UfhO&m;l&>FMxlqWc=l5Hf@QdNl8PL>演yI\7*omg@b,2xLo 'rsT>In6ШT4ךqpM 2Iw]T CTMڎr3SEVn,B/2+Bl&’?[P/M`y]vˊ$kt|#ݻ`(ݕ fԽ,NVA KR}891$ 2(F.%ѸNFoZS27]U#>*3]gv$5K K1yCr7/+h1[~8zYBY4 Ts'2a% .@QGD "Kg7DI2-Q\cv4`מ'6:(̌v0X:@X%,G b= HaeE KZχs,տ213Z!k!ؾq^0m]r CRVi8)jC:c٪ 7 ̥YTvNU& b6z<|` |RUpzK[Z蔍߹=-U8#;2OPIKc 7<7q߳3 yN`QfK"$qK/xz\y tnOэux?_a>2YhFKH *Jύ%*g.(}<'8MZ8К`8Lkuv%Cˌ\ vlh@ omF گ&DbF\Fa;?~hOAcφ/?l @Mwқ_ /U`6buhc<,r4Oщ|q@ E\vi-tnesxFUE4Qv5#EeiǤy^7=Z۩N4R^ L X`X.9=9(!eԺ;~3$MZl7շo }$-DQL"[†K)oŠBiv"LQ`Vmqdx,LT*G{MSNjO E/()NHN7И|R["j䖒ROᰤvw$.ޤ} ]zPY@ePzY^q{@t˶`J{Ʌ#{_B+D2+y.o:cƴq%Sq2=g-wO+.$*!q2 ِ+*F%Z~9.\ݨ,Q 1_ d0z=}nq93=;6,JɊOrԠG{D5fՈ(b^1XJYqPاi-h_W"Hg-8(&( T7Y,; 1_ur&ܳtKy©A$0-{?Wa!!۲i(7@#ܲ[JYFy}@m`[y)\~m ENfШE &{N^SRs;נa„l]-[~3.ma_$QD6[`CԝFvU4cК"~yJ奃 *xE\)4'bB.k7lؚ|!i/;tg(ύ#@Sڔ_- )آ^}g, `d<q0}d keU˾ñԃѠu p/jD$n)Vw<熠vܫ \:`N&えʌ~@ ˬ7CtZz @px@=O阦pt؆m%q3󞻻SYW++۹E=!%%d8%=^DʇO%֪Xӽ˶h*K0ش=O94#Te/!OXs$6Ry|0U'9xt5q_[x2:Po&E7vyܴb =H {bωc[|@w A=wϷ"h2e8m:.3Y7|) kNpLi[SUI@f2ʒ 8B5 Vm= UMq~&Z Iu!9-t-1AFfRaGKЯ:U}ߑdPҥ*k۹:Œ휓{#rC옷xz)GvDpbd SJht¼Jg>"M2^_\wϙȚ[]2/A& *׺B0j)ݍ[hi~Ƶ6<3壸Ġ}tĎIn]jDg;%#5{hlJaX75 4D%ݮ.^~t́a\ΜOUoǷZ翍2)#VW͌;#Mcu>2b*7nh˄0 m6ႜ("H0s%CԔ %/h}D!2N^dnϙ5]Z0];:x[ gGʖ &bNLPPcbEnWĤ\ r!|J'ӧe]eg YR}a0Xsuw$?ppq\I*z  ÏB=K)ݣ`1 QxZ")1\a>)cc,}^߭YI1ZWŒvC=tZtw]{G,ZrċpF³<.zG ~'!!(Dhθ$vicuUGd ^QU~!՗:=otS?2k@\lȟGw&NDqe`9Xky#<NM #`z&(LFzv &ҪKO)tNhs]; V 5<и;?s.O3??S_&s6zɯ%PŒ1FTN֤ILՐxWZMcZ`:),7%2Ֆc{U.Qq`1zŪ&q;kOU9%f*r82a˳7˻jHC(eK.B%fJ_s7t8#4gJnYJbB? rj3ӊW~ޥOR\*Dm$[ bo{pXPH' Q)X~ݺRŝts#k4:y  8ׯqa,-ʕy ȰMtءGIk;}wƑ?cHoj(j4s>V[ӅҒ=up}=]Hh# ?D}m""^'a'dj!u]5C #[J?lX׽ jH '>TEOah=vP?rU[2 3 .RXduxjWsª 5їcC1q&x;maKhWr@,j7S.=Mݴ:,9urfrz'YvvNN8&G n~zDXWP,1u=  jѶF|)Fyance8 &9;WC%#=YN,oRbPr@#˗IRB Y5J*e$.OcSK{Џ݊ۯ?ui{Ʌ$֎*W>< p4R>lLb[bģd֠ %*3_?AO;N9;PpR:77۪2lser hciXes;UoN?u<feF㘳ݖMc(1Va7)qYDoo*HS!:'՚h x&"\Z ӝ[򐈏3ɮ87~ݘU?f [kPb`byo+ݤI4'Ep4_20G&ޫ3AQlOnN?{̂jl.>օLxP xɪ dx~5{*~W ad?oPm93Ozjpt1j?Zzp0il6⸴(4~\D/I΢#Ewы?!IKd1 n|OZ@;0M>`{8YN `Xy),ytveLsY~O4b3up 8)cզ&}~Sǡ4_ 0D )lF12|5K+7)/| DJ*RhQlOvT&KHȸW~sN>,GLNT&|M#P* Atc]_K2>b^.uM3䊋_9kGeo77LPvrFd2`{ȩ92LXsU{Nw.6ߎb`)n%@w+|J \H lsd I\'3XɮE%jȾov"md-!N#D=\)IPJ a(,h=Sc+f-~F Šc~οZ9{ZGFͣ4{5XK  qnZh+;o!iP%;\$~B2ndL ugLJf?@1w_fpjlZE3mw=Me"!N'k$2. U >XKgƸr}w@,GдD`l.]y\/Z^oCEf$@0-{ NO[: CY,CBZA:YsJJ@xX[:5N٫oKZҁXfБӖ6gMcci?̃UrGm.Ogs#XI 瀿Ό }$# t'Ǝ 87@(ܩW;O:9_?" /0lb(L)9?_h#eϨ_ ?j.!HNu(FV*伥D|?meW1uDHW0'i<&ǍUh)N Co֍Pa_tBvpd&zl"U-o>9ڍy֣Dd h%[Wy\,Q,#x! e/_$~Hm B`glT&i`! RJxt-flj/ޕ~O.]OcФBڴӿ„J<]kP<Ϝ>YPglP(S!)..YYd.vL, R.~ cS WJj$f |m}g>gv\tUJ,,Ȇ.mQP&-W֭ R2ykհXw%eVVtY^JYQ '7Z W}}ᯖ1sUk.oLMbUzJN0g`@fa* `$E8wpUZHQ6_V䮩o:D]Bjo{%9Uq ;飑0u:KyU|n}6' P~Y惀~/pQ"}adq6VIX bf ®_}{0xrS+lyҒWKv0E) uŪk=78-t ޝ(+%{B|.Tlt ÅwX6528ANA_IJodu;Yh&[d1UxWCe{0{`\cFo 7'QB5`_lGRW}IW XPO8ʾ}%iuf:FRh.B4~$xaӤ)p P0H)xq>ÚΕX,w%* GskP/pBB40^'w[a;Clq8VHeјM 'mT'Eق-:.5JFY1p\*/< /MW@^N^/64@V8Rv.%s N0GG4ێ&=m` BNn˕hL >RH@V`1nC# 2pI&yi)s=ɉ*Kj.b6Ȗ'Y4h/p?KA6?EkAaNA<6z,+yUS^۔9h":i ַ{#&j[AO5x" 0E-MQ;2B&K)Xhppw bJ -ԃ,533\yk<?sXCo2 /zԊ[^gao=1 cΰѕi j$tM7Z@h2@cτ\k%i'!y&^؄5k NqN5=|aD0lZcQ ׍u%{jq@##c?Y,Fg{JFw+<+EO^VzG㵆"ʽJA*@%dQxJ}i6'> k.~]Jس#/D8&?o+ƹ}7yϰH)9b;{T qGѿd1)1r0qΩu_@.[h\`<>$}_uqb0r ! G ^ Ƿn7 MF W1K0JmkWʡu:3 '}>bs*mY)\<O}E4WъvW)f%QvqxD;j?Mi~&jkKY O[ŀBgN%giԇz~ %/BKv a/|FWJ0!Lj;ӄ0?#ά{ak!зԅnxk],cS=EH5PU6aD)|=pG{5˶eFM؋nQ6 oV7Tb[Ub܀"oqp $MӾ=ƄRTC`: ̾녏鰱N~e..& YpQkE*Ε<[$k{upAGyjqf~&grrr[cbmpIm=e F>!%8݂k'ң^*:+D;܁ nsBCpx@y+<|/wM٩ PmUNZM^cov eBT$GQ}]ll(;cz04U#O*^/l O%Co3ACQANKcQ۶R҈)+d;%Iyz_A] 8X=NRU_6gR(chxarDAiǹNbh&޼@w*#u{q@K#D"fRМM_? 砵ZyL _xsZf_OZΆxB+pr;_cZT’bɶ؂DX%|.|XsHE.JWTQWo0!2Ìe̴1 G,uÃ# )cYE%~pdܝmw? NAI[9Y?.iMjp7:QC6qܵt?@YOu$DK É݈j"" a@,_1) $ꚒmJkq6Sݘ@Y󊓓"EߺMa\zR0ţ_!aɭ0束/ A'ZU%?BZcCd`Inn!6G pYyy1{=}T0TdKwzz7R˚a9䬦>~A"~ .T8Fl^PQvǻ9pp&x W71xz-gBIG-`YbHص }5}̡,RxDd ycҎ "go"eRn&ŋ-A|'l9Uӱdb /QЗ-ftReF=u6&{|AgG:h*fsֈ;hަLF"{^|b cA:${zjF{߃$ B Q9CBHMy{EO1 g|h.ȑP +sXЮz`P;Ӂ'ׄJW Z?1x;^|/|Xg~ʹ8bcVW1e8__^8&:8xϊ7 >OȾ kWGE_uqW\ 7*ZjZ%FȪ T+3EzQB͈r^4+i]L)%׍joQ41p*ڳs'aBjZ:a,j] 5aR Wc_ ꋍ:{CN9-dW?A7F:܎ք}g`i&5!Vsi1A,i'܌MipV?0EpCX&f+9>lk(,fK&[#Yn5M^kRCN\TB[fXIe74& O>3qbUb#RF08ej1L2WsGOnr>ng|{ Gby{)Ӣ\E]pqW"Љ:+; &?\V1vmey$VZPtNGK)$X"pí+b##b$ij2iԘoP #RHSZH{i(x A*@д% #=sZα*&ɟle <L`ܾEkvN.wټ*re~ v@͑4AC%YM௙1Aylj4Wqz0.& MelG.iR&SbAⷛhﮖ&2륇%aUgɄ.Vm=N%owz܏eKa2w'0YFYwx(R2zC5DVa.s^$ }*# 7uzI}NJp"J;~h!ĞUީ;uP&֑71?Xп8Qdϰ~L^ja*,{ǡ톷P7q]eT,$A_mAHN]7JMRu˿DRj|sf;:MeQEcًJ Fk{bp *'hٍ)s©1sJ\;KȮ{VB˜ Ѵrz橉TJ*KaE-`#%-20#cNf2X棣ᲅ8X'HI#SxUwnoͻXA(OFr?LP<qj. ,c ;vƞtK9'),!-"e2+Yz Sw^M!槥ܲ̍xH^>! )WeԶ7Hu7 ޭbӷUӾ4wD3R䲎{:MkawFt\@gJٗtUJ[!}<`|& ~UG4oۿyVm&vTDgժԾ)vKM5N:SsZ"QQ]Jz rه5ɺ!#B0ǒEY&rGWBp $ '6΍7*3"a(8_2Dݙ.+S'01iѶ!t0nf9t ׸^l84{0e[yfG)3)\{H /2H6;2EAguՆM@|/m!sL(!,zhxOźbRǁQw06a c6GpyZ-q(KGwC:`Xw(~"#/֠nu34.>sZks B_]vnv+[,[ ps%/vM~KZQƭˁ-QÛ4!-_:%4T\5宊!П3,6@dj(yf?O |\I"٥8nHx?F)H!j=d^\ VN4"zI:Dݟ3KO (Yd([- "Dٚ*kmO8VcC2ז%u$+MdbBm^t!sjYΝxLq`M _ f{=7 /7} Xިym5ٖ3'l*>O$ X"q~BG6IKgsENΝ^:9qEgb%M"P̌ }Tb 7qrKh ,HgNx(X0b"D3MdFl:硩-P2 ^&NdXdƐ+JjfЕ`4:$2aAl,lZP O1𣗑srTM~I$1c^]^Eļ;qқtȶJe #W=951./X>=FΫqwjGKm٤SSuDS^ tī4 h7+qǶ<1ҋ'\m_۳e'y#_h-;Io;u6@\`^h8[$ yXRWdIv?teʫB22Ħɒ J0^  :@ZRZJoRE_(A`)7r,*:y7'djmg M>|&J $ J~Sg.n-h*ۣRX6*}]3ght\S}+,a=6!ә'r9} &EٿBRDL>>)GUO}qL.GL6es]BT]!\UHuY0G lA|+QC"8;@lɑl7 ]Xzͱ%rIWhXs#A˯TM?X!HsU*{Goc0Ǫز^G//=Cvx%հ>B:]h|@oYsGWg"f䘾Ս &#sn.!cHpAHZJݏ{ E$U.7!ׁRQ4):zoyo$xYt@_*#_XyK;=&)yb'x\oo\*+Xg Ïõ-`ۜGkl`[O /ڡ1`[1P+{ q]/MDٗxZvĥq? X'N8](/"q0;G~5<GEcgW<9MTb'cJtv P%4eː10V*:`P-CVfHX>j+z A5h3tsb3u2գΐf6xq{< J'txvnaϿʄ*C=t9ˢ,ņ|"#EsB ^4~>RvgY2)-ĬRbpe_w$2}TC[K_' ^R^Es2G({1$麈\ >aGʤ+% &|FE3kh\hұ, ࠭&p렬1&Y~퐦fl _)wmWhNtqޡN8&3z*~ZАY=1{D:#=ĬJ{E/$ͪ{w30 ABDuŧ(D%\?} f_'L N)RKkxH6IAйIrIVy{xW6ba$J[b؎C/jjW\!\ =%ή[ӻK^ctuWe8[-sЗO%*( >D/Q`w?(KRGq4ThRٽ;/5˩#HTy\^U`Dp]4$ _ħ4Wb3b=9m5N7` 8} 桕_\ +'DAhJ-"f} lNْ4_p9yQbA@)*쳔U]Ec,wasO=y3)H2AJ歖,lyw ɪlߨER@yZ[{vlNjLoiq;Hel8mqG&h#M3xKY>L ;~L1eyYyLj89N4X[e% /Hs)*]*o.PRƝ똹JqðZKm+8!uȈ53ƾg<ÔX ٶ.`N]Nk(MґbSUK^g2v>;R U) ֈBU3t(X4lzF`ZgYXF6ç@=wOՑ䣧ɔ''7%yv>kq4:;5%EKԼW^m7&Wm .<H{Z )>kh޳NwO! IϪ3RզmmoV*K u1*-fۙb/M2DX1HȒ*ĪS=~&bzD+!jO/IYK!1NU Ŭ6)Py*sT%-+*hc %?>.On7RނZL׵&w?ÖbΫZ7}EG<M?Fr%3BT++kk3^VS?&6l|y}uLﱄ7E=Ǥ崢``kۜ5XǷVNLQD8 ΪnUQ#3<(Xb-FkmRZ/ Obǿ#ۋ3gL|.yص0BgŤPZsr^ӐyZm!Ȝohgqu_=Zc|;R7n; ; &u WFgB“ :j^ v ON,C=9mhxiƂ1 OjǚC6{ yU[1vUW7 6ԭQIhJşXjA>ګaV3,XTVɎ]W4tTTv7m FɅݍ;D9)PO7#KxSj>Gt%յ@ */٧[駗۾nOF6(!ffb[Ī >\3JP mOܤ9=cX · s+Hĕmr!_eI3uECsI Dq(fe16ǡiTX1IuFlԍWYU]4>43 E*n n5FW{J#l(oσp*UdOf$| j,ΉE|K^-ɇ(G/>(X11U=HGB5ݔ|AH+Hp ZHE-zNQ~+k\qC+}]]&ִҴo 09ճ+Z<G(tw& 񕀼ˆm# `y&:׺:ŕ9g4*`s!,|;Ӝe]QQkId@#g'+*#(;yu[j 16P\H|Cfk>뱕k<0ϗdRһKCǘd*\ʲQ̎"ﱣY´&ýhoj'JԊ?.uQ&HAMOgC<Xim_i_[05T-[hv)Z,f!0-xXX<_r6!9givQA8Hb.pX&P2`ibauG(r~Qzvy|i5W!]T6X7HZ4 YFYTr@-7Ua x;wDA>HSM6kN`_ GK;,hIjԈLΘ7ߑ|jWo>^T'Zr&yGGub'bOz3p(fVž7B0Z%/n7a;(,RĮz]cOrx SZ0˙m; yگu$ ^aW>B"vG,$7Q ݧk&AycW \җW 鱓hd'V ~2vn[y 4XE%j_ ǣ[uZ!BGW, SqIr@u愲bt@ҝGJ$v2SӰz*4FoA7UA t#CY.ߺa1u heA 2[ |F YqN~ WV]<٣YgeO9}ؒ LfҸXDfOKOicTݓƉS"Q-Qϧ[&@TF-Y-h`iqnT P,[ɉ]H+G:{W"wD'i,VIw /\}ƾnO[+V-Pdp T@ST2f@m$?BvTL9Mp?v][n^F%LeƠ{$z`T7fJC+#2LD!޽y^+AN!O-{KuO'W"14QZ 2m3 sn˪=\kjPұu~&_3q|9^jK75P5`NC`lBŇ6Q&^ZL )2q{ :g%E3nH c,ګ^i]_ϯM7;FϾ;b@D֛2 .mS+,4f1-jF* R*8;0r13@ҍ#Uspc+TI~t Xp@ سYl!s-.Gra#.%$Pob([іfI?̲϶9ڐ'M~G%Ϛ L&tbh=b]Ϻ&Na,`E[(F aV,2+&Ddnt xYNn"U YF'> 8R+SP\G,D5kTԎh6j)buwX"c 9!֣Ѹ!gcX侀Mi5Ɏ ho,e:-‘jq~_;P%z|$L~=;:F3SG58")1fϺ ݲ' H˟WP 8ϟ4niJVe?şq"M;qJ7W|*`屮 <`ܰG 1K Nr.篗yBE. ʿ:H$,drqr]0Ү烨+~[׷ɹ@]dnϽ;k 8kUӬf楟|.h%xE4z^S0-;%8TbzMVmFFx'V,=qOA .p.x}lF!wQmϗVK.H_R _C_P*ŚWk?}lg\1Ұ/ Bs]wG X*mL%ȋ'ᒛhqyQ~F]h,fkH\dseT 7ՊV ׿q'eh=јr:@蜴cV6h;6JM'񪅼ok#2^e}i|Ls0,<HLoyȗ!|@86۴Ӱ'1nk>i'#JW+M%(h5CkSMHD26$tklHN&sXJzr$-/$~{N4ȥ(*_7̓BDC1S:%hȈN9ugfڠ̌D]uыLS2Į&H>ŔKk<vcLCI`Ur[[u1N)."H|]*$N._U 8G`¸XjNNx H5tf|wLԈ av?c\vW??. ~X}~Xoc\(F'r-pQm1:H8_!-d˚=mX]Yn5rxI5lx* #O .B!?a"k+(y {h.';Bp\ nSY}o9@[/ `:\eAy+aq?^6 %"cz9c]Y2>fZUJ; %GR5zERhJX}. y" æ1xkn1_/r?מ?*RRFq1GP+! _Dᷕf ,dž0{Ǧ׾Ps靡4-m|@py5c^p| XXuCRoO&@㏨`)+ljYD c 1o'DddU*t)(M'ϑx'BjjVvqɫ$gSD1="@#]lPo & ^p<ޣ1qfz ayXt6(M\ aOvթnHmjID|gUSB!쑶#~57Va]+gEí-ABz ?jI2Ԋ$tw49E*&}%JJ>uﶏW# $^N_ '6"ʀ &e'r삤EK}xmSqb!eAщF=2lD2fRkv!UJnyhFH12xA'G_ֈ!B$kņ?)MFW6=% B'8ҝdkhy73t6,EM^I :n:_H2YOZeo y6&ֺ! Y'^b__~w$w[ӏېϖpѻxo*NaGn+] ]X%2ctp \ٰ^?uwa-oUL? 8-"|}?~1WR'0_}v:EPlw;(|s""RX7K]~z\"îH@Z4 aVor;ڤe D?0&F˓r-ց"- 7|S(gd }|TFm͒e%pAXtjJ̳X6-Хjݙ\#^.)PDng\/; R hȝؼQa6Rf &Z /Ip Ƌ޾K;fK+v\WKaG9xCUߚtB t&U;/Xb_"KnN{Ȼi--tU(6;xL0l^-M^[wIkΠ\H_8\L]UK&K˚XN ~Y:CՋ^xG[iMz4-wΎiY Ɍ cG62 6byCUJI#{ڃnO‚Fehx?Z +4`SL 6 =o<5kJKq_eJH#-s2;T$E^\ٸh m*1Z%8oxl-RVE|Jg)MAƓiM|^%5eo8`vkr hJ5@#du'M1"*ͩӬJh[eL1ގ=.5튥:`+K[H&{"`g=SX6lׯG`p$jKՊ2+#:J[H)?<4kRjw#mT*Cck_T!<;IJ]W`*}Q4TAOWǂ[@}}JB 'r\W,f؂pY}CUS1wg)k%Z]oAS>O!}?uzI kX-Q?${xs,ɓXnh;jfn|'뢫g H./I:}W:[h;]P]DuUu ʰWb 1ZiJ:^lQ נfR^ A +@{[UZb]>nlIRw ;v{Qd$ govՁ,>iE@Z04y oZO,];oSAi\8?Tb^i8m%?ȡׄ_uJ+[:!yʗn7v?Ic;'yVmm6_r6Us+TGQ3{3P;J1lDBlu,!kcy=s P[eCEטk <$0 Z 'nZy(5cͱN?/~/Sh`im+u9XӭdؘSr~L)Z|ЮXZRU"":fΖ3Կ~mh #.CJH7PE!q;{W>]Z!A'*<+[8~V#!?ĿmlvsIJ4ro4X(:P'0\IÔ=(Ď\(TMdVp ]T'B0 bՃ2.?A]}}u PD+)RjDfߒ/ c6zK8OE4/™CҬ,vWLAG(6>;f$~-_mnIv:W4]Q?01eC`8P6XKaDVA1q7߃v "\"$?'m^>*8-wvt/-If8V``_#!,xD ˽(6PT#?T^]\W@#I4CF At:Z8J*hz%፿Xۢ(p4pZ<3ǟwW0t'LPSb0]σ0PȡëuQe%nUq"PM> /8_S֚NuCe,"8m. EQ(0fvHrU?dxXt8E/\>gԁɘ^p"Gqۭ.n^6D0<:9xTY˻ < h-7զ-KIAxJ`B^{X]gQFWf89 sḁQzؚkFYWoSV(ǝ }^R("{5B|B VϿK8Ʈ@rxjm^ה׫"B4Ӎ{Ԙm 31]W)plW&KpΒϻ_HŒ su[%ZNUt^%*^2YvtC& S5lnł$4-:HvD婐vM=,F8Ҥ6z ,.ʥ[%sQ Y QwLC]؟ԔExlr9va1589[Ғil\!Uc)zsUltNMPaVr3ij"v\vB` T"< IQAּ!1QZ1ʼn)B=BJzԬ0W6 vM^opal J/%K-pپOtEL"a#aXVby_!-R'"f#`Rvc$*;ÓnIJ:AWGAJZewг;nN*^4MSHeDn4Kt7U[H,ZWx!j{5%a-iڡ?`ƌVWhjw8R'K(sH I|Rgi]AFpJJG=L "p+2꾌g !KWE:BaVg&HY֌0tWd7#-~_;&#!tYswd;\)SPtoSc GƇ`D̠yF0ս[, x?~n\ ETIIGKbI&S=?Ao& 6XU٘'?+\ $吇`P;iC!(ql{z Ep  _S|WrN.Z-76s[u:0 p `G`%yRV., Qx~kdV9Bj4έTfܣ%9O?ZHMFQ W #p;MlOe4_ ^~!]LvgHKX!ml"iY33ω`c˯ϐn3k3?]R1#߁Q\>Mb+(q(-#MCY(tlf: Ɛ悌Q u&۽-/uMƆ~hnOl`Xz<][i8=jT'b67us s97k]]+Zib U'4;C/yF4ʩR+Sa4ʈ:w\ԅ`!&]E߿اPJ6s]5Wp6O)+\M^Xn-0RPHR3?b~`v;k8R~@6/%q7Ö,lF\mBD\8w<.ӬB[pcKl߉!)b:SE.Ev`n-F9LTRы.nND葜m׮7ZЬ86}zn[@9]oSui4 -zbg836qfwiWÂb^5y w8/x W˻ R9ζ̔đ(8YԚ;JCfS cJhx D|_|!G.R+! g}Y3Pu=MLUjBE _/QßGP9{Uu ~L}*OXe7<켅$d^Du:bhVD6K;Z#sS9nv@RBfNvd,IȘwzbkFTM< ]->>K<bsK/ d 6Z OZNDg]5n:7WLv ՋMy1%YJOkP-`MՕzHx0 Uvqt4'}xbK&zB;ǭ ,XU|t !L0W uO#%6{JNT&4˻R#KYRF7&x}#a*)7ɗ#CyNY@, '_-eW:/wm8x7:-y/a΁!޹u|)kw⤜IpjnO$TRp99\x/+Br&r]-RX`RJ6(zJc64a)H4Hf]*5PYAJ+u>])ȳA,?,@'ayEB|0ot|q^r Q53g|#} l&( <l *f=&6Kԩ~Z׾.2;QxA,2Jr h8R4 ک$^5MAc#J:G$a]WlaI?g.lI}WR#&e!I, }}l\ؓgY!?ms 9Ir)dṼ Btn?k2X0} zXVN)iM8.gH3]`[*%VBU6X]+w~|_QJY|NS&;)Ɠaio(g6Z$'㽲7lNxjtToBN%y1c>,N{|8_zt)HT8V!ql&RD)k1i^S鈺tb~DoN,behdc)1nBym+JYe~Nb~d8wЙME82|hoڦy] #JaIˁl ǩ8n'1 P?f#Y÷ ]) 8~Uskݔ@ h_ hL>^3[ l>Oղñ\y=O\qb3o]8sW{Z]D;wU2Zx@3lF[NuޣF󹷔Ia?JН1(nif<8[xp+ K-茁I.2Z[f"{8-;bC(>@ oʄRٌ&bq1 5\Y)"d0? ʋ8Mȥ FѳcOl$1WZ-? TCEΒ-Ls2&G<0E{X#fju:JN 5>`yNƼ==6  WL=ܓ4|xcdJ8_eC&o O=HUNRZ3 ^6FPH<7fΣJW:`WF F.|8m ̅ Yjm$̀Ulan8V#w)y905a}#oh:IB8^5/R0;@J/An8' }0F(4T /:fL_;W2$jN)z̊83GmJen Q/hKwզrWWcT5 M"Oe,?9;aԄ?v.WոU6U`XO7:agY U[L_Z j{:E0O5*ӵ|UZAB`t$ifXpZ\pҀ-%V,=]HVop* s/ FͮjׂH}Is:ɏGx'L DfR  PAB~v1e#GoD ѫPjAhG [yd Sq%7x.9;g g'ܺiKq%*_3tNJ3Pѩ+sMDYO9%nPxl8mHǑhp_)l K&i˟㙣|G>hXTE|dޚ=NiѐGw's4HsOǣ/ׄ)YF$%KCQ~7|$mc 75Ѯ.!}*Cs_A6U":H}ҕaǶ7zm]^[5UL^1aV ]""K6ʔnH 'luh&CdafDaFaG' w8t/uIzVE$% z^ߔ2gꡩLaлg&nN2H3Sos8K?*aW<e=6fG7Xt3g p(e9Šw~7jO$Upy&qX@;6BrCkd>MA& zy# ܲR3Z=;c1XFkvq3W x{[ ^$ _^ur"1"#;X-UIp珞:Uz+OVNRq@mJ|?ph$(^z#N'qJۓ^O! .6]ci&Sl8Wmn*yDn/jo ~v',#_] 3wenSPǨ/F_ &i?{ ?Zvǐ %ؿBʕPhN8!׫[۝ˆP pT6U%%urC*x:;ǹd&G135Ƕ\k_kAk>eSf$س[pM5AzT{#$Ѧ T09!l-8i `:vlA3温ic8uaIm{\`PY}{l6Z_L\_!eЛJ>6&0o6>JI?.'HPb ,e A;>wk yy4DBu Wʇ1Q" 'Q5qo2da\2f|X#lzIv)H1h)Zu{q@31bâ*elע`^ 5_fnՑD<mMC9&]664r7 Ϗˡ MO۞?S-v=~+5Kgy&k{0ޘGSWq6V"SGmbinQDMyGOFyv q[[ y&槛h`Eʏ8.'՟Fm $b)TIab:OSH1>3:{nTX ma'gQr;j:ۯiR,i|π h;~҄Qs8"7sVOjtuǽXU"m<֒͠&wX,{5? or>lҊQ2 :US&ShZi2 [%nM^zI?" [Bjzg{Zq u35;M5|d $CGY&*kte J'@ewq 8CǕX= 6Aok=Pe2 h/>ٗ? H׮;؎0B~gUmNE魋(e)7q[E`%W޳Q[hY:`86np[>捔5m)ǍhIܒ$.RM T{i*gqs.kLij^O-J,P3Ȝ -k~1 4|RqQИpRm*̛7M9hͫf%1Ej!:q#2.bc_P :'g|}Gz('*!e(Di8XQC 9\6;qaY@]loT])*3Y1cB9ך ^K_AZ?EM OAwQ%XȥPQaEGtw9hqnF "(u:>nr +v.}!S'^@FodF$-} ɒ: ٪͇đD:S+rTW.c/=z[?Y|^pݳrQ)kPn?dgb<ŀQtqB\y۹-jؚlI?QG8ܔ} 8c1I3pVDw֣I'@}2'Հ5轡ۋac3Jg MN7C!ʄ͸9rMrkeA܏'DQH`֭ps6qލ10[S n8|Ql[G CCC4 ZVp{eڄU11sP*ˠ.O0-yAcN_ _u8^RdTxF6EGdN[+!gG֜H_PG󥠽t/-7wO -^WQV][IZzhLzɱ`ǥ(XVn~V(e{+fc',418*q6KfȬ4qu>QrC]ĒT٤y3(*UwSs` 3/+Ȃ@@ 0aMDCP܌HW5 Q&e/NMU3aw9_xUlYBqQX}NEz{2e]b+%xSUM+Ss*ikӢ[wy9d\PU5N~vOrj!''y!KmL|J\ mkvc`ƽQ&Եam)iR SY/ Eg:o쬮II?/79\1n_z'nF|d#V#Hq9\j~l|38GE$uR-Ga s =H $ V0"?U4 ݽؽͥ@ vՏԸRdo<ȿ]5p5LB!5֙0aOuRfD0zz_`[ N<95t؉Ƕei~-ê58t?QA4Nƨ[2){q*:%$f*؉% 0{%2p7i2-VO_ʨrV ɞ#[l*em 5lb$ŦEbxbzD0bQֻV^AS%!Gғ"P!rַXgȀxGsU)uleލUVNh|6'׊٨$6:7]UH;<~,1\|/9ϫQgcq2i=Hԫ_1 ]4CNB5i \02DEҌkY wD=rwV"ayKSjWDݎ&qџs#̍Pwe}U NEa[9~!SdJnx7-bYF$AqAoTyJ^L?K^AGs`@}-sbãwj02]Ul}V?A8k#ha'|@yk8N *1ul0`8 '?V=x{{W?n;z@Z)lDɔͭ'0H^{{.iD.R+}ۨIC[qtA W? A7zuV BMDD%3J^=.itt:]`ed %PSV_I$(MZ?gD`h shl5rn;`k pz ঢjhُA8>Čg猪eXRj8+kg~ Z#uebϫxF16sxQAq 14槜J…Vq`{h|xo<)whwyJ4]lWtDYK %+%˒:7g-3TlJ9H8Aj;Uj=%+sVgf`֥V?RȖq_RZbuzFe.T[}AE:OS̼rg!Vt=tg!6,2VijǗm=|A"Z*_%.r"t; _Q|>H4%g.Q}_Gox{2_* ?blK:KƑF9'Y[9U+<}NW#g_XU zHa4GEsîũm3#7#z/<zHԝf-nѶOd`݈۪9FIq]:ӆj xV9ژN3n96Yo> T{M@5$=\%Pe؀#5@Hg< {ZSkr|ZQY: %cY*(õx+-Mtޙ f/PS:5QCbH|i V2Y}r&oR&"~(};{JWB.)|So~h=,5AUo@KeνxmS놰XtdoJ`9|~u2 !~qU90dI;Ԩ 2F3-UVPTiw#bQ00Ǘ>p !ɜ}o:*+j3knoЧP÷D& EiݹVv~ *qTC{-`u!jb;XW2'&QKjghlKZYR7.V,]="&j6Q Rb96P)"?"Y`wX^f$>/% pSgv5鹂@: )kr%)6A|c;OTP7`{V\*d5ֽ$mn] q,NC{ihwJO#%*2|dHƃP³& -<3{6&jDOׁ%ΙRrencuK?/eD)!ȧ?O+!$CdO=Y1WLڳKPlxA[H|"/uM-sNU'+w˝$u NAeʙn6B%wn[z $RД+ٔ|{ *DWW~ pW]ĒYBR |OXb>>=9JʭĽce~W~)2IޱD6MZNo[tVH7*jI/݁bZ"; }(m>z@c]e7AUsZ q~YɦH@GX)qO)> ʅj45e"w/R6g Tm>PĎ@qֹ64K4種*HVg1#\ѱH V Z>WuQIfCwh:mGTpRv^c>>ݗ7ks Q2aw_b/D!N3n°&3CT H:;LEI vݸ.JUAEcj^NĭԤܞC@|4^gÎ"Z(k1:p _ʀTSct&hE3ϣ?6`1:0*<}3A%no[!Kb(WCB.ʰ441vTlD't^Ć s{2D)u.qw/k8P}/J t(E{ :Ecӂ(J ŅoVAOy>v)CHaV<ߗnhJRϪQ+>1璄f s$)l} ˷^jN$ z ,5p 5p"QчcLY=Lr8{H"h$BǃeQUE S\HYx ]W~>)BNa ÁuQʯY4'..@^yQpHcQ3X_EkȷOkpWZ! #&5 @SU?2l Ʌp8"~%|qԕk+GQ!H%W=#?4m5Gnb )zPTyOHr CnH#906)"k~ Tx7],iIi qHف;`2AW gSzZ8`ۀ0Gd:/Od4 igd-Po@ (C9FAva]D$dpOD1&sRJQqpdpͥLg 1V3#l{\I3@hWy#,TϬTh<Ӡ h'> k&Ud~RoB3p%dN~gL̙kR24SݷO*SF=|9hTGw $s_א YÄeʾg_aj |Oze%LV`4s*Ԕ2?buZMݳ>=ɡ?=I*~5(}<~F;]݋~#&ѮT{Ey/ͨs8tx57xk$q1c(i1rI/XHu9VPIvy4B#"9r< :!'Đf s T<߶ϮjtAh$🩨>\V($2R{(qф6-fo PKM0䒩W9^~cf"rQ|+Xť:2N᧬ƔVHJ!pA>4ijV|B) ﹻ|tɌ)yADx.^Њ!znHBx&Hk)uiMԼ<=)-QY% 9=SNYWlC pg_JB*#_ fp*C8$HqV)׫2 ]up6cuO]=r-/*<.E]2ةp~/Z.VۧMpmL6{I֓Z%Ƞ*zI[22Ov鼣㝈dU$Fd9K80~5܆tp.U\dB51y*np4# p\Jܟ=rqұhʤH+|vmAq 3mt'`R{I";ɫi"Ѕ;tҒIgrK΢ 35֩kC×\bޗB&JW.}tۊw W*utNqAWxg0!:7|pH(Z@yUQY4_$8qi{q{e"ϳq1D޽!l mprV#`~҇^[Cu)^+lC LCЏ!Cv`fP=Z)!0QV2Uꤥm* vR O(&0bW6Z31WNnC0 "2_)Cwv#ĵյ =:򝥰0G#bıv^c-^h;ɐ)J2AF)mx܀5&.(\ϫG ZHn)\< =(Ej *[eLM*c{3Yը EG3 -V:ksR$VW3=1ó bxXZӫ2{ApUs, 838#46t *,EMϯ̮.tVW8lL̽)#+`\&l0p6U)QVyEOº$? %V`P*`p0\[5C ( 31Ϛ&u.pPa؅ui6GL23 ܈Nh_Ngi)ڥQL-C *ɯ/kRvQO'ӂY~}HYй8hw֥et3g#[&j@0N#/qƥLFԭsDP JiM$L%9*],HX 1lgTڪ75-A466߁$]RD/x8Xvpn HEv q@&bn ?28x+FV!K8'=*pF6m?Zik?*K<ucXZ9_{|']y8ayRu`f~#_ʜ"àJ S尊I'ںݳK! |>޽&̋:!h?Ox^Em57^R, {l#:W-npu9CsJ0x`o۷O)ԌvY"k'۩4ۥ6,,{'T[R÷߿kc(|=qE+|ߠ <ĻL8#XU=ձ`eEz.LI[5TݏeP0iPu;`N|񫲬{(ڸԠ~`ޠ${PL&=yOG{?48獫(|WKH,yWY۶'I'tS rlWE|MVk Q3|1@/7t"VziO Nt(%|$oGm Ȣ!+<4!e{4TӢ0tQiF=<^`Ws"?s]?"`Aq6VKX*V<]*MِގmI=!OF?I2;@u2ga2Qwa@lӨmN2 a2,m>̓ڮZ}dk`Bm)#qB@IS, [& 3,N'RvV8Ío$-|0-}ԅPZ ɀ5ZMM IQ45jVԳi1bܼIvaLTsɑnȗdbjZ[.Hq/k03gS0 jXdV}si97,b Z e7{SNqQDI A,O"R:&=Vo! ͋L Sn8+x/B=K\Uѿ.?§ d$7%z 1ge `dua bQ$tfRiSz>0 kREJBi3_Z$ 9<[;>wW0"kGȭ m)tC# =J׾\%ub,r͏p[=X%}l@0,avPοϯ >dNx}LE]Y?6#ZAU[Na?>>3Poŗ⫹n::1Q/KT<=k&Uh-q)8[3=gWWX| xf _#;L˰xi:`2\`+  ցFF : ~=R+uu)+#FyK.s®0xo0*<#ʰ3奭31ZpEV#=U=gql*QaP/)&lB(j9pV`=N@ gӿdr`m2g |; BO9 djL9Q&FMBa.YˆNNM K,lE',PQkcLI?mxupvo 5E-X5Ɏ[<邾Ն,=܏ zܝD@ϙ xf#״oe|JdqV+`1HFlhO ^>hOVoTE.9 9 Z{$R& -b/v򪟊&1cNnIH\@5Wn@v+<80P-@L`dVTNWE: زdۆ(1.K&H 5(Ίx脲3n1f R7WhWLuݸ=OHk¼a} s_)ϑșKSSsƨ ra!Qec'ɸ}Rύ7%VKb/ٿa3lBt&1Y 2PD[/=l* iFR T^0 pÓ%~?sV}n?7Ec;gN\9:R|xWl'V:5&R ƹݣ#c՜SLo ˩7 گۤ\*j ΍U+ĿWKr1r6a (hN k/Fq'Źo9j\e1991W2&1 ?[Vƈ uc/Dg3砟&c9,U y.-yji =uc`ZrgZ <9(ɕC3ZrH& Iq>+G]F*ᄑӁ w$j 3\H~R8~l?o+binR؁Ctq}̊UT:[Y@-vYSv!L1Њ w;SWlR=g-d+k,\8,(qCLS.e_@BKFt?HWۈ%wX2`vW(r6E'77 h{uOk^7#`t2XTݭIb _U$ F_.THBGH*dRt8G^pRS AWm7]7)Mxt@oimwʍmimyPrXT/c`N H{Hynӓx ]k}̿O  OOGdȭOƇ*ϴڦ}^EbB^Iw^b@냨9O{=! O(;Nսx'> Qr51tL"9]B\{%: T,]CoL4%dmzWL9ʷVS1lƀ -ʮM?oG)|,5ߚ?hw4b%" wITBeB^47!Bq(_,Α@V9;kC¿K#sȷ9C%zG$9o(p쓩1P.&d-]P? _%w;H*І_(;~_hC̸k t$GT_E_cg֕Cdw!鯉7; wyzW2:uǯkI@ <ѭUv,H5 } PO< 1Dڸ"~6\r"u[%G˷Aliz6 y|kE{h\ޱ(XkkNL>+,wX]uLLW:L]{щcUzGb@wIHP^Ūs}PNFq-b6S.;DV|u( H]Dx$8{rsJ1Ƒ0bgXȯ !,rv83Y8!cE7 1EBM 37UO3rCh{l ^_b+|/\o@Nk&8lBB;CUe$pO;֒bKx@oG"BIWFUΔdԈ z| nA"l!CW(og4\/,1R}뺬"5+p&A`3:h76=$8| zV{V^Vo م཭f/X+x}{M7C8[:N%ub2aMamVUk41|a&߃r YNBۺ~Γ~$(6Cr$N1!r}n>^ N0TGNȊބH*hb!W.F← ѹgN*rDEP3+$],-/Vg7ӗ<#p\|!P^E5SZm/4RϳPG+wn OOaі%Th8x$g`//ǂ,lSt" am5hS^͂AbN,G;TtEԵ6}I#X;`OZ_R$r㒥DUDmo܈B[jǝ9'Ѧ,P~̆w*FV:vA<HI[ʆ]y4c>]?&;ļ!E~TA="5h`/\_?! M/^s RшyHȯW`"PȄJ0gUIiwՂ&}a5n<=[K]"M{|e s p&&ۚ IڙlVDULʀ<өqgy.]{Е;aSV58%K&1b/{S85pNTd^_djBr+_|_zVn>%]w\t=f?!w 4%lsٱuQ29OJ#-*ʨ1=@1_ 1YpiV{VЙ9cdc8JS989R.Ydb>.IYíL ,TfѡpjqgǨ"aEk,paVV/4eF$lH dt wVzcu$is lP㞼3kZ.)sL?ˠ͙: 8y–dNcg@1sE¼aӔR,2wV@\i`Ce0(o>DzE/[{DA)D-:N3᧴@J}%b NmNh[9 O{NYJsNKcA >4cZ^ϡ*LOWHQїHgG h:Ă^8 clo$nBVsR(! i~u"lQO 8R#H§v*#Wl:-˜։A}Qu{%%; cL'6_ņ%ct#bs+{~v?оleA_'vb1RWH`"׾\?V(FN"b4J FH;i]CoM,ۜҊ!*g-EdMz?ź{ekn>EDNSӛ$~:XшyɀScE Nqہb^3hg 'i37k]Mt{36+6rLԐu TTG"pu.ZX.ߥ#',1qu=Y牺DIw*M;p:MR_;~}P&w*Z~*E*. (jLp҆)ȧ_gbO ~d"QpAF؇aZeoMc[ٻjUghc6I@*rRbxݸ'O!g߱_A'gw6h{j ^XҪ%$YGWrTu8ފㆴ;[ '(&cһ!Gwe}I]^<e .O 7mpIRU۱ں9'!MAn# e _3NpcxZOumBfT ~'QGc. 1ט`!kشvsKLjLa2]"S9~RahE#ҒwUk}l",uZ7ꞻbɸBG_Y o 9}M`v)wXe|G˶]%hjݓWR =!aI0vpF EB+@HːBӯ,sJVEEwsKiUm\jC-tK/'%"R1׮Vm6ջ1oJ>iPZڻkicIkqG%ujt$YŹzprºi0ƒh霜 r";vsOYАR*.Zr|oFl9sFJ=w^|ef;K9w 80_gAD/'i[:G$]Gg[ űagf6o[ d OXҜ ɔP0FS,Q?bZק9j mlR< si% `[|xl5uH`OӗD(r;-е?HEi9;|[!F8}(X%|u> !2~[k3X H&;Xl6n((RL[z s8 屨b Lyoq2ې0O*ZW0N"}{orK!cgPZV֣׮S8:Uaӭ!m k|jJ*/jc\uz9p4FPyo$ʫ  5L=LD,iPu9 T$ZrٳC%I3%*&.o20q߮z#O Y4Q4mCF"Sv ExSსԯ#e7wsr 1{9=p iHQVQqW\yRX'1thԫo]VT6;#!i?YxށЎê"ޤX;ӥ7A)iQS-Vh&ddۀAD/bXkxc\|$0⊁OCO<5 Nfر!#5Ө<stwZӕhk2搄>>WCpC+#_r9BY&+v/kw5Ď wQG \ ds:S BSK;[n^?fr^;T9_[HP}AϚnh be醦@/4>hAnH{mIϡj_Ҳn./V=8=((!\O"+,PY{C(4jk\ۥ[]Gisxxٿvgi,|}s("\;nYGW`- -38&fYǘ=Gh~dj=( ie44{OU;qu= Ȣ P]kJm?6۠&rub~1\nFI.Rn=ud`䠓<`3eioG?zU!WO{xJDwqCN: #;x쏴"I"gWԾ+܍9؞R`erğ~}iWIOEt3"cG'1$:[LTª~x,ښ4B AD^lg6mBaB gSopˆD{04'&_Gj4,q\>d+vJBA9B}i` ^K*1qHgɮSgK Z6 _ԇ9Z65EIPpH>N x #SsbnSE j"3Pn|˛?^5fpe޷2Q 2*ߌ=zVx鮠ù8RQH.ºQ]u^\' ^yЇuӼ2r n]c?z)/BBJ1:O7 H+z~#%ȃbfa/4Ň녡0買L2 Fǐ 7Jw8_V}ƙ׋ZsI7 Opcw>JM ׷ҶY6QvJ_ÊrEW"ULI)6c/@Q$Yh6!HkMءi0fLOyAJN<Ɩ,He\FG/i> 5&:Ẋ0: PDp;YN-/pYroovEBL:kSh20veKh[+"ĉXZC_^x4k < *?Ib,UPVzyFk^ UߵsqXR${=J˛&#Qy\,:곗J.|ry;Ru>͚*/E%<}(unyyX6L)ɾvX߻\D=^jVKT4 5O.jd67Zˉ/?WzTq 6gmH-<-@TJUsgr;^2gƇg:6?UmebwF~ řIm؉E)E66*r~hD)s 2&ى-d3 $zGZ0B]?((0G(WC[eZ**Q6,oPIl&Wj@> iVkɚj#c''L16ID;CP'5&"OYDm0??!¼b(/xJx䗫N$uf25/Qxj[W#67ù8Y7r0排*F)\8'2@xH׎ۗ?+,4*Ir$>Kit5O4,$~ Z}he^:w WSjy|ɴ[Zq} 1$@w;r7= gcTPI;g(_Xn2Bٍ%Υɼ՗Or:_EZLJY?1( getnT~K(>Bz酥z gS>fMtA 'D> S>jF* yweAk,:B -jٞJҟi.& w"Qt guY+(7#vk^Fx*dL{X=(SyZݍ(p.+SY!EZ^?`_q2'x6P^8ػQrPs)tHz@@`l.bR+53.Э+~BFw9)%qwDqx_1xqX!#O}Z'\V@agmY5TbumA;ZR̵g4Rtpi/=XE'inB>+'z R#.C9!` A bV^f0蕛VYh: +<i$vE(*9ũ81N|Zd"XJU3yX* Ldž慧{2 8y}촬ʾ$h'_䅇Mcań=6X:Riu¥x8f;SXo=ϵRGMC$h**d=w#cl=O.g1ʳx4ʶܫ =Gd,.Xu hkw ![u1&<{\a?ߏoT$c!|OdU%.(r6kP.3ꃪcאcqfjGy).]nViMsjDvѦj׆+Kθ+|JV(~$ǨHP,8ì꒨+^JyP)ouӊvtd҇U:X zf E9ޘ :yc9g84鮙3ӓK,9Jo& &+7V깡fliѵJG/k;i 'Up[_(ؿ)Dp"5LB!wqOߞZǧMXXg%i%p4uGtolGBcLR)W.$udl/KiǼU,[2*B.uTôߔyȩaKNǕ8`(guX>qN_ϯm5H䰇p)2m.K8+LxurQ ͏79(k V(}alXI5ִ G{6?'zRԢbB {'ٽy8&q-jk0vC"F|=55%P̋bi?5@a?~uoeSJ CK) A'7U+ph׽Zظ/#)Y,HjXphuЗܝv^_SN:ԝi'HGڸ -7GyRDP{"47xNb%ortEW>R&| z`0l.H!͙sv5|FA3GY}Ln+sf۳|`ɴ,T9ڛEyGMW!F:jZ7Q5&tsh.{^=ԫ2;z2/N5B77sĢ) Ev(ƬX~^тj5ABØV1n{p䩆N-IOM]j~'~XS0CL4㍠Dڝq]#j}tj* MX~2g <5L0= oTS&"=[6Ԝ8&3rj֩h%/U)iXMF6ZK9b\@Yfh/&u0HњR.J9?{w`YAATn!NH"740tg5jpK;)iDQ]6h׳rZVJ!/*&fhʊN=/| g\o_K?ok`ЁuĖǣQ+֏r6.,eIeν2&` z!X6O!~dU"tVvx?Jhrfhq7KL 5Ј& 8.cZYxٔXɘ 0T]:!V]:4*pOSx.|8,>;=c*.,@)T DxIbwZ%Xo?莃qͭKȘ"Cbkw4 ' j2+ {L/ P\9P~-%2u|$w,sks^C>ά9G3ģ*JZE4^&G$QBL%[er#wڡ0olE!(15CNB43Nګh&(UHa@۫\ ǘi، %@MЧ DR0,}3f՛:S(/Ceyxt$ڤI Gq{;Vߕf%\""}$aCx,+ l3U{(irpF OKnOV=_'` hdXp`Cg7όɤM\i'McY: MEa8el[]SdIoR:*SRks_KK1芍N)\ރm+XwRYuLY`s!TIڤd>2Z$AxJuv39"y\jNp' ܩ ?!X-~Iڛy0!U NaAF"B#K𧒳 9|+[P\ |mh\Hy7XsFר=UF/]zOoX[ N65e(6^,u(΅/*(}' UQ$ +=nLE'cB`'FPwZU0ٙ#(Ij'(S6~"K5鎗ne>iAXaڧb ֺ̙dUhJ)~4Qh'i^h#O:^x97nw w멧1M^ژkM~I¡$Wlh+nɐ%|.@۽tz6S{?ȜfU%-8dCO]aD6k}^WF-D:*^dn :J ?dk 1qE)hDGq3k9P5^diSfm` _J@.t %ҪG7$Ua BTIekdc$X "4;I_d2GAK~}2jTɧ B1eS+:-}p 97Ϩww9d]3]wLՒ wDPl&4qzhZڏNqHL1>}GΆVq-"Gcf/U:ma%XuF=oZȯt.mx5ʽ_f1q3MMii'ގ.10˕=ԖjVm{DҥN%[#[t TŀbO{n"5!{0< ,{V&:_1Kv|NPcj唢AtGWI4#t#jJMTg ;$1TuZP,A֠! ^a_ۢW^?z_}h]Ѝo|qx_|%/=UDvf ֋\I $D L8Wߧ&"yQa Ѵ/Bk̅t+|/y.Nn 6 >c)G$}Q\*mUt|K| T+!!c@6,wL(p*0[]r}w( el\htl%5!"{ TvJ]fh+.%0{OyElӵ Hȥo.2uΥ!0LhNdVD̺\B#emے8Ci/Q3懻wޖN#͙ ӽdE-Gu^",u7 qM  ji9re1PʬYh`AWh%f@(D 1x@7]4ݧ5jn~{/ ܜU$tbsxYthme"4>u\=  @`s .9.D5e=Qk';mד+ rrC7G&̟EVF;KU 4Uſ^ ?Q<Caa0̶AFLU=aL-B=l^@cs}L{ >\zphXY,7-_=rvģ ^ێB,!3ÊG8H6_Rga_M91wBhXYTwUd 9% 9c,pbTd\& S9c}6[]R ^?7 k;[YDEi)+MkP %.!쏲S:Mm>ZJz,]*53YQ*;vc!X 9 pǔ7V~M(<^kgQ~]{& pO e=H?hG،q^7<9#?MI`L_|M]_PJw{x"'劽|v'7f@%WшMzJ҉_WbҔLf;e# x@ܯ͠40j+XIBD廸YVQ@v K|15V*C*xMGܩoPJR5: Nf՗Rf~R-^'(buf\7@l;3rrIA$}du ,W|?0.}^Zog\f2˽k2I8_=O_}Cb] !MT|Mi8M)jߠoWҨ4i +)̽QEۀ1Ȕ*T,L#Z$U1JN3daϹIb@۷5#)kى[Ps;k~AZWޅքF4c8 Eub>Mv!(>܂Q1D( xcOAsbMԮyF`!KCJ6>*XW[sz&;`52CV'#'&P(I|-QbliG^oImp5^\1%uݻ~GN#9r3q5SWe忟sPi((a |`pd%!HA-UCO;_k#?n7 мy~_pӿ|[ Jxun&q+uo&C9v?Rɡ Cd9y/#U|A1mMlBn_~'}"Et yS"1 ͒dZ@Ĝ('Q֌T&DZ*""8KFsU9*׎onJ_dXrrARYĆt(FqDhe= @8PKm$.*1I~O;З@aaӅ #I=0k!5笥 Axe ҉z -"ۜ4\oOvq؏jH*M0Hk1mRG$ojvxSv`,z[s(ɸ `_ٳƴI0}SJu(C:vf4wVK086`"A'N=R[n0bc002[kBjT߇6Z1< Ԋ<\Ccà Ao3~8hU"G"Z|YDۻ0pDX{j'8t @]k0} Xt j ,H:,Y240%S|6^3=+ވ7uXMjYq+)p1:|t34o+h8-UBY QBkVM?ojs13}PiJ{װՃ;OBbÊ{r]!1Q\Ɵo> D*AЩEC_n`X((,ebv>P̺ȇ._Eko,OP Ԯ\nS5$?됖S f84~t/yuIӾ8%IZfef쟑7EqJ;o\a'sF^3ojwOAI-K - ̘sam#tUypUȾ fF`ס [: e܋A& d-Hi2~ "1[Ћt@5a޺55 ,cF}i܅$绁=]K .S>_UqHo( Q|Hgzi=2?]&s֨UZ>tnt[l=h҃6S⍻RmiYͧ54q/ʧA2x:4- 48M*TŸ T6j3f'}ʬSX j ke;dR_!~J3Vc:*켴Ò@ȬJ. lbV@ Κ3c$2߯{ zAWO"ܥ?\10mTatJD{fs>̬fu2(GlYv-rfً[/|eG4PYrJt3r{FZOTvl?gIo'|5_ǧ=Fǫm&aՎ> u:;CYHVN<2MJv5TQA:.' N)JP(lGrp†sW:ڴ3׹R#r}Bj5*`S@#eZۄ.D{@oDʧkuҶ"ӹIA@5,U0_P,#V>vYĝ"ljM+S ZF&y1")u^]PaXjd})刘+ؗ˃Vxm=(d5ܶa lh6T2l{Ԡ"Q ˵j3 ?ϣ^!; mN(u4b5kzpK2?T68f=T$uS%T#C^_1âA{z*pBD3_9o}*Dvro^ J 6EjmC!XP|;r{D/!)0Q)_g/3ņi.czJ][&Mp(ʚ̕,߅ R.?-\ϕSҹq7rҶ7R#dB@!tzn(n*}>'G{eCA1\pcG6#@ڋ7po+ F8Hj?%-$5+JRb/7dtVW :΃;loրpE_K8m0ߌ `smma(yFquMBoύ8*>RvnSU.b$Gr($@C=v}V;\(;5_&烜ϱvj_-{㮹 ߃ž:=">3D᪺JF`kID1E Agn`yC0H  $޲;:|]hnq# \9_iN鲘Rq` shfD ,v +W[9Qn #DʶvG>9j7@d5ٌ @-|< !ɽ-M_'ۮ2qL'uBJ{8Jsu0ސY, ?̱N$4\QScn'W,]t _N0s&ޥx2*_AD.p"&&UrUc8] Btjq v<7T&#ڢ!šph6K{[bux>&}#~1Kޣ╾Ynzoc^OR.r3Xټ}5S  |\6l#b@ǹ*͊|a1:zX[$ocr!r'7S7=ǂ~GJs]ߥljw!5l%`O{H%.ʘ H5QdRfēNR(M#q -`o1|K;IGvxڸ`ܩ|auv!e  aAqlpKv^\NsMDŘ픤BKc2p6?Uˌ"/mE)!neW^@F$DaUnOѫyPc dU©Z۬IcE1 !x?1q9o %a DC]DnznP kfH7}@C 2ZK,ZKlS(nRL_ G}8˕_d]ٿeAyT4εF,d|MKU\6kdz}΁d\DL/F Ĉ,A* nB v4mTA੥ȗ$mڤn45S?uxjֳ"@Sd| `c[|SդQݤd׶z IM +?L1gT& ~*  297>F2mn1Za6AD$$-H*E׏\he KY䋀% f&64@.=@shv`R37iw o:&K2z)4koa#/(X+w'b& "Ic`=y'B ;aXn ~ޏsf\𺧯x`U *RJd5[KKakh )03GH f9iԋܗmI[cHB ؠ&mYrLG9w ~7pfGx9h?^L{Ivm;˟J*z٣ ꇜɷUDفJ^FWtW.2}XZF7áڅ2<88K,\q.Yl a+_fp5zl-1!_[7b"f)k(Es *#<5TYA˜pCĖ#0AUJ`E q(MS;jW;)t4JF+Ԉy4!D/-R*iwuM [;C>۪mJN8|Eub5^۠mTECa(n)%g d`;T3IqRXhfGN\Ur2>`LR烨968iOxx=E"ݣ·f=2Fi `#џұ̮S7I-,"y=b Z ;i`ֱȮeLp#dA `HeK:cmAPpYY)Uz6%|0DHZ\|A:bhmɣ|[r(Nz=yN?d !C_ B Oqj)'*xxwe+/O5X|ob϶ӀԹ"-uͽ{W@JNUvZpLǭuZ%7H_<ݒ4-_0{/8?W%"0}s:\6秳hJz'v_OW`\֧HԀS60YñXũd E g*j% ƌB8B #>{8ISw٩eHIOżx 0͛uA= Fm],ˠs߮ZWsNfwiҨ tT]Z sJN_3E )ƔHjUԩ4` il4)eF2@Tݡ d;Xr @&!{D`DFZZc-PD>0r5!3I nZ>ОB2)/hJd@fVe ,Ğ4aC9{դ*-}Kh]F: gK00+N3T !?:2Z2v{F,M^b/Rr3V>5d[f(EޠҨf^Vq֑o?#}9k-YbRs9HVx;[:;յȧ&+o,̛:3ikgC-z<"`440-NVGO^^` Tq5ـ7%ټWC.`d;ctaelT} 2F:נ¢ $xXQx8rk0}2 ]o I[J~ < V v H#Am{q螽X" !FƎ-"hw1$WwYD;D;ഫm(7&Y}:rEk'(ҡӘ6{)=DOԥ,=JKɶ*Ҙ)󰮱e.xw tUv +xk?5, ua ;P~^R7?^.Ƞ$N~Խ&bI1RVN[", [p<t@6U<ҐvjH h #͋YB2=-2cɾ`VV'`nJQseߟ}^ϙ m=!Uúv;VMFeksCTFGK)0tIG>d k>\l1woR J[o_3AA@Z0${GUsbάYT ˼8 n@b.]Pqʐī+k02:Bc<6VK5xU.^y|0iߌJهPRX:QdZͺn|yk^XaTMU`3͕+wg-E["Z JCdj-E=.DO4ˁ#h `eyn7&􍣥.Z ָ2XuTP831!`R$iVMoU*J;9J݄ǹGt HPW|:AC C@~י4o- 넆Ckr\*م?MN~MҹS r (W{5`݄~I}m)^ӋnRp.NI>E'fbgL.^\\sHl9`-0KlT{x4_-"E1&!;gQ,o/kiRg˧w0o%οa!yߣTVQ߈f̜r `tbxWNu-78/'$co0@H1sa v҃dE.AYÎZْ6 X纪\51'c:ضqOTג=ZP8X` ,'3.-͗x$c7Ǚ~!AF"n"jIB2[M1Fgsʢx1O|X]`l(h&`Aj& J_7]pN;2 V߅u{v-F7:[Zgeόc\%sRk΃@@zYsK.c'9?Y>/Ck] r▊{܆|70=B +-w PP;$haH2f ~XXţ߻+ngj*fi0߁u8VF"XLӉɅ7ۤ"]&4<рU1Uk.F߸X-7K;ַ4EJi`>=1(WϓU-ߵ:k|V<%Ⱥs+? w ɚ-op4@㻯մw(?x6f&J/Doj_֬ vcYnCq*W|4JO`ewph~scųz(>;n6*: @Cj[qE5zl-I}VD1fJ+O~ ]$1Xa]jX߆@KRa&d JW%/=(,doU}&ӕC v;I4l}!ZiP'UM ?ь_kB{Q'v;_ÃkE3C_pa0~M&uT.q\vS/Ø( vbtwZ~B)bT_`VB֘GFR֑@ӊQm,ZI&]{2="ib(4J!K؁:@~>ZPhvA9,0tCBTͽg ^5 >R]kv\KatN^oܶaalzoɧ"Ak?"s"Ppn}8o۬(uq #+){xnP!ԽUf(n*-ן+= Tɗ|l#F RJ϶$?ˣ]YF84R54L]4dMKg QjTȲCOk%zzX q6K32%n}'ViuȚ}oGT[طl, %B~A0sgx^TbzgoIؠ2C[-{Gڮ݋a(?w[Dp7RF-~+ ցlW [G: oF['a1|(Tdn &Jџ؟42ݶ=Β"XQDF Q/ËC{״O_ǣhe-H N|](͹yeݾzAtCJ6U`?4K *8 :!(.>*mgQxsfB2&j t@^b4sZ-h(dqW{^5(pG8UDOH>ۛuo:0ɆLħ!O,Z8ؕ=^0mkp#rE_RUUaPrM5d$!܃B]'q0c P)NSEȯWVxlC3h^cH7O,4.7Ts~be]9Z @cs{3"?¾ kÒ%% @n>f%z5Vo,%j&7 #wiy QboDM1h/>*JoOs=z.E& `@vQ'o 䰁ٳt,1Eu_F" ΰ \e4*o B(v "A\ ̶QscPi7Vq`\kWUs@c~xx'1duNDu,=lc+xuQjov%We._G+8`s{ @CeѸ'SV MFr^avY>Nvb3wkE2k;Ʒk#F>b[S ?&c6_s.jֻ6K5o+Ue2K#ݻA2m̛ebe2ִz-Rms\X`1̹kqwe%a! ": C.N)3 1^k-3Z##8{BtOMLU׍JlV#%KÈm]-#wl-^LB ~NцIy;_t럐C =bgrMlIu= >*G/(n GiUmj%(ÌtHliMb@?G*yn"+L<.hK韁OlS= 9].uo1[$`8F$B ī=2zpX#ƍ*F 1nNM@~׷ɕs;BͽZM`Kmpm HcdE^J٣0ث\QAMªYG:\#Ԑk%_-mZ%7_6 l­'-A fW?>-ga6MF1=3|hvz=߱;a͘2$fNwvHEZלάAxI[ ]\-'vV$-9|{EOX~I[c ̟32Ù4X)9 a,1\I+訯uo+4ǯ5YosBE@Of++{j%;6<٫ډ0&I ُZ\obE'YP4]2ERZJffe>=>P6v% %HJ%j@_/1k8g|m^@zzZ%NٴMdu4ܶ+k$ O!w XZ]ߊ]zQ6G:+^'LhF]ݺW C:^k`SAs.F9LWʷ]lL Bqލ>0'׵„' :&f="{?VxMDp%N2fyߏ/e/slkpgu ix[顐PK}VX ~X-1)RZ,sUs40n/ʑS X{6"Pjd`4~^cPڲ&j)vik>EwҸ9/qAJſ֫z]g|cvJr=`ƂP"plbj]m];^ձH;#c{O0.W'dwҝA^I/cdSˣgS.(~6LA`yG4s9 v߮5d6WeR!᳆3L Prȹ;Nyhwf8;ub9<3=BՓmtWϟ,@&`&`6j$ij= +Rhzh#pҭ?*Up}EiS!> rUH ӗ' HK ɩm(jhI{*UH Ľ\DrCs fz-Sl OL׫~ g Y8 Z1زe li-qꥊHf<[ يGS!rQtu4=p2 .U١8-(:)Z(fY6{*Xi+n`9)(NeC\ p 4awMku0 FP>o(܃F5Ok(X -uB3w2*W[MQdiM5q!j=qrP}Psdp7tON4]0(+ Slx}{ gt R2`C78BݱmT#Q(*-yLXTJf),"\-8XT'G u4*_Dhsf :cFʑd2ӦRS_9MG? kAc篩#J箤[TY6Um̏e4n_E=][ɦri[e/!Ox^WS@` !U@`A]Ā ˚fƢwb/ :nѴeɇB7L(!*67\yZ x7V wo?{L"v/KkijWG"o懴'0n҅}Y/1"t2%7~&U۾7|"BՌŕRgr44 '3^80Wb&SFCƫ±#V׺,F%B*G6yPR6[\i4}qS غ%he/_A_#ڞx..P ҄:h}HO=Aӈ.\粫$hջqw$pD+w(ɒ~G e_&=MTUOQ9H!7ti,Z(o|ٿG59"舐bnYLZm ԍ;;1XI>ޠ Ur! ɺKjƤ ST} _(wo$*:ԒJS\bk$ծFMwk2$*jrqp=-AR^KCi7K@m6"hUϘbFk%Ym#yxĭА㿯7U'h,ۜ_8heV:U9$NdSղ\;/&i-p*t1 ~ݛGg GyPІC^@[+n2:+ 7KgUYB3OvT~@8΍ 8lC;Rke6xVpb)CT?YY%ofW dyWa ^"t-٘Z2߆g\dV(z _ά~`^O\vSe*ó3R6` v;~@1~yg\bE51p,3Z!,ưF\7'ݶ!C 92vŝ^nf1T=!U[ty[zA/=90ܲR/3:=,[7ʹjɦj{ʷ*ǧm Te$OM"~D VĂuRWׄb'D p@Me!m 4fLאJgQ.޿3Q^ȧ|C%9E6RGs~(m۫; U9{x=B/.+FS"~X4oP1LULV8-N_i6cN`&dԅ5-〄 𪓜XlP z!;6\)q&V'A,KnRg \{ywݓܵ Bh10L vse42?d.9kʐ z>/qV8t 8(~x0KH/7 &CRnû|-9/)-V/ TM"V@&*]h1dTt6E1J'\s2kVTCkk㮙pmQd!$+Gfu‡sLܕ|\!5e`#.8%9}禚zȐPm覻\X-cy!1x"aj> ZƎƌJJI c늟;D wnIoT`HFys۴KYkH#ZSB?4/XGj&#=I9'us=3U~RNGS fepQ Zc] H`=<ϲ lΧȒS7/HKt\{h;vDk_e{>=Ux&7&ʹ1}Lze~&z1FUG}ͺv+h eyjVߩG,iʠ[a' !׳z3%񒶕-ĦP^$vi38Vա>;V_l)5gn5 u} 'mMȢ8+ 43[7sVO>C/߶oԨڦ1Zzۂ,GDN]Si=wd^LA8릮?lcm^89d92*1ÆFw1"ǣH}XeO* z>MvSY!zߖ)LX{X[3Lc=U#n^!gw|(zfns膐zJ?;bOd[ۤNr6<"0e%a~Ͽ)kg!=oE>Ln b岾Õ-`b#d~R9&ᚡ@j(!j>) s#uIJpn9do I(Xз0`5#65` g&(F(hlKϪ`HokXmT~S:$ȍ=$*Ezu^orx Ў?ܱ3 c Δ򺲴,p6I;nEk-!'#(>]aVTT9+sB۸NLK|o4ի/ v*;Hrl[bi¬[zr_~$+u7׏섂~tCo.3%.@#՞S:b!5axm.⣺)"Nad*BQdaA؞ h{;;4?^'Xә#DU= Py;0C1'to=]6*4ZС=@b"fIޱ_kKrC:;dYDA6A|8\~= >ܤ̇+[P6lY.}X'#OkUIn -[< cuPXGw|BLnhXdپJDlnw_ pLA 烆=Y )6@Be Va0FgM}pohl|Dv#:_]"6`n/ʂNmIb*L#USs 7,tQA?߿⊻zGPm)NԽ~6T;Nc4ܯ9 Ri@:&WhJg|w+eFD*HLx~ܔMw9d]cr$`\)᳄"WЋBլkwvƣ5&vO~dQɔNm 4T3Ff,O"J6ecLOK}v\-S/`U0ܓ;U9;8uUj[>Il[{I0D!i^KߒɌd !x)_gs̓i8ĀumzqssU̿U%ݟnpba1n!!MoR\k"swj 9VJr^Gd(v{ =wr"ٝڙ/܀ 1O0$llPDig&21t*$oZ'ĸU@DJ* U +_Dƀl֎FqXڔyCCIl/z,5~'߿c kީJ{?u XOYŜ^bH "T]ݕ %Fn h7c e͊SWS3 nGk3)[PrʹV";ۭSt%.vuRZ~r}ߖi],?; j`sMh?RJ~į;8%d0Ÿ ..7$EjLP̉}?IC;"q໥A.? j%Bģwl!WJk} b w:ޗܺWAuTjGC>> Ld!c卾w:^ÊTNH,F'Ŏ?.1ӓ׫v=,7FlQ?r4d/)TA#}Ŀ{{ol>(2l yH6z|XJW+yP`mnb#f jS95<]ߡg۴,O'5_^ baLs >i>.DoKAP=jjjK&2}ۖ[̅0 ,-dLYAjH]{" *u4Ƨ<>]a30_<{j-6܎%~[ѓl_4r$MND+QxsRy}Mt>QJRC5՚o28Cȩ)"qj "c=Rz4# eLOA$b-= dS.Qv}eKCļӾgúu(KY9$]|!V<|rNsUI6_ _SRw#ƉUE 9$cMDE=CxXfӜON]E;۰gP ;Sã&LmGc^۸*VH^ .!`NۅJ JS~@Xh:>{%2>kȠ>uo+wՉ2K/MdrRtry(޿4y9a}qv 8<[|(U!{GkJZ}{<W`,`C^۱5BC FWc_ӹ]$h1 ui;~ nP;mP'J;ڝXOŬcT^&bSx94 {kѦnFoN7Bx774-Q,fIA ()M%f.-@CQ='a`9[D$.rțA/~ؔ\AOw1@(|4\v8g5`X CҋaGZ 978` d蚭 Rmpލ;'_ֹ2*_aC-{7ʎKPm~e6?.E5|錺jnz4;ՆtfU qL#*쇝%gY)51`wB=5:2ƫZi2ז9)kPCGiwS$PƯK=MY(d1nr'[i;h*FhFTǚ#۞c~Xָ۔5a|`H5;8VP#XjD\C֞@Zq{ڦ/gw- n!*=sEusF _w?Qf;ٹa\N!Ww $XB_!-̄sn"kLO43cPӅ0o [gĊ5368EH/`۔wB>PtHGu2Hpa1tMND_U&7m Z#$g|Lp.t$ Q+ŵ s 쟝lp]޴O7$-uiUܾ[Δ'35G΁76 ,`yADeC=:5+ʞ"OͿT^M{J##r=܀7k܂4",g ?vڸ=7Ӄ_>g,ݝѴMI=b\y "EmlÓҫ.)M9@w>y 3c>l}A!@gx$.hn,%XuNCoQe$ vL_TC%aЈQ,{9|8;$IMuCdD` ۋvB4 @xS0^.^=[RU;A>R{a:dr3ZC|B2@ }1aBwh/0yES#b*Ҙa#?X>Z^N%Э9on&tTZ7 H,8iPN99 SyŀW;wPgC&spf}[=`!wb2[ÀI뭔0.M+fjziB==Qvu`|V~+`wNNPVFdX5z٩^z٥lሞ@G/pOMNsV4& ŕ9?c65G0g Gҧ}ԁIc3 ֑ 7]v|Jq7fvLSDc' "#=H٢W>`K$A??UvGz&g<o)<܈c}Ρ t}ޟ3ȴ2_6g dKMF{pQ1`Qw?-  uJHVa/Dl)!ʡ7 #&%:F\.874cfI+IdOam 1 W-P}H:wjەaj摝 ܎R<"ĴHŎ9H,]i <ΈE TcYt6#@\[Z5iG ñ7;Jy8kH"ZcWh9ɼDnd:B@j D<~مm@^qj0%+4vĄ@jxC[6EM5󓘌Mf*u,մQ/D"hq"tWhC补eVSNJ nR0#V9%έ*QTNtJ՜V6qW.)lڌ;&*+䋶dm~ynxS#+!`=YϽ3y-͏[\5c,`8-(jutKRyW$g=u_( ˞=*)&YnJR#swWH"$FwTgעz $a܌d'mX<:'D¨/A'[vnB«E'mr+#d'$}F|Wb.{ 𝯰XP^ó rܠ:\lna.#NiF:2ڼQ:d-h(T8k, VNdfdӟev4$uޅ/x.N,K(Xw; pӥ-iIu15 inpgsYwlEPb4~+f1xZV.2OSSifAhbng~qщ'l:k/n 'tFJD tV{ ϑMIy=F]sF*WRn,vwzT%쏳 Rn|@_el ,nFuL-b;]Y^D$n]e¤s6U*lL+!2{GCO_},74c8II?:^qmC23hl=؍Ke& ]}cː]l KSJXun 9t6l̠_pJ_j55u o`Nbܼ#zõ:Fu&+Pమjc :(y3(pKnD euԛ!N$sseN6:PD#ix;`,di;D0V\ȉH !1",sPah;r@O8<}IO׵ʝ쨼-.Q='WfJ5w$\Aj bGEu1K6.~0z.Y6^׬5˥2ErylH#l5(݆^RrMNqV 9:!BYsX_smQIVs 6̙/ ?G䡢_sH dY㋰@a ]܍ڞKϧ`YfrǏ2!tgS{Ϋ߹=dFl|84Q?󬳕n S ZfH^<=wn|dZlVW)i W^f( yC j `J,bVwntkoxJO};hGR].bDwٮAE0^|OŤ+؆)1ICV:Bq\+AOYg~g1W$ܩ {(Q\񎤉Yn`N)B"Ȕf- W05шсVhnjzkPet$}-'HAAc(oύc(`]ǢPVXX-T7ݕR]lkлAsj؈sl+Ā_n+vK_r%4(  }k²jq%wXtcUiI=F}nRiŽih'X!}qMoCcj>t@AM5oMtW̌NQ菆2E^Ub(hǙzPO5qEe7up=:o]Ti^ i!x})&` nW||t*<Y=1;Cy 1zKan|7Tk߱r'0/-jMkB'\iLSB*"ic浵i&Dw;[gW2ҧEc; \~y0l ާk 8.Ӌ{["qC%L,R!D|)ug6Cj`g"8|!sm4mݥ_$d 駮VI#(`0 nXEsG qA!&s&s`Q0xhG{CMc)k7(>9cpl/p5,0lT5"M^7r/PAT/^ ~Q7T\K2`}Y_tF(c6dR}VR9M͓FQM~SFQYFӋkڭ6i$\=|}>_\#L.y;ɂ.{Q-Y}.ahh7`66I:n,JiIjgޣP\8gk$gFOǪHqc~>+fљ cՉX+0hw(#P(Ӓ'x_Da `.Z{ǴrQ[irۈ 1 [9eMБi$ŋ(|kƩG>r+Uh[mPG1x)R5SAԉkp^@]H|gJĮt'Mˆ] 0 [}D6B͏CR7u*V Qvk]&vzIW:)(dYZCfҮhA`RM*/֙xYJf;IUc)¤2">oIEsf¬D^.a3OdYv=ZI 0/AIq~ԈX.tJ8tdDʄqk^|TSOYKyB?n7nhxHE?2ރXD L-h1.] J/,=o86 GuqWvu dnr?,<{ȱl] "9ʰ%)#0a#s_U4cA0N/o\yq(`݂}lUU_wG)G 4' =q !YD\[,s ilʛ.k^,X{"զFn+&ՏPav1J#fn3s|'$kho?i \iEEmdj4Y39:mFJ_oj7$jW/Zre0h2޳^t_1R8KjTCx;u)cRވVN֗\]~8hpB9Y+5i ZvCo×me@L%ԭMd27YCj6Y^ 3?Aca.ZpxQ*AiNL? SvZcL QݛjeĖUbS`u]ϧjڂ@ʊMQhl\O|I /l훷% D;#^wif<6pڢвBwP{e 0ݓ+S[\ϒ~ {sUpf{A#/~\M Ȍ34 ?c݃ݯUK8Bݑ>7Q/I % Y] &X y/*xi3ܪ KGn6P6=1cN ERs9X !PEfw$(qtHth^l!A6 ~ |M8WPB bh1XD*&قOQ/mٳ %Q<ˮGf:-_RZu#颳6w`*+~y#TOu7nąf=F5.n`Hd5f\!G뼷?]WkՃ(,am!C#NP QSXW|a>uhSoU%'/kr=\&o?qpQQ YV,Jg 6IሐyդSII* 5a}{`Yy^L vvHڴ#_$hP l f?aTYAV=Ơ퉎*x2`,^>PQR}ͅfYR6k8vĹGW;TfޝL-һO'rũxeIZ%ZW+/>\d3poR vւ\bȜ%k>C$Aqrfl+n‰Ŀt=n""B)^RMTqZj6!/GЍJtHO}rju=ӇJ~?׊nQ_-!#TD-7@,ؽg}yHV"k a_Zr.6GWR5'\O`Y:ɞ2L׉J'DԟNh?ޑ??u rÆrjy(o(;/HHV YU0:ʺC]mgfn}DT!2F5"Nc